diff --git a/dist/bookmarklet.js b/dist/bookmarklet.js index b126b73..8665754 100644 --- a/dist/bookmarklet.js +++ b/dist/bookmarklet.js @@ -10,7 +10,7 @@ var r=n(180),i=n(181),o=n(91);function s(){return c.TYPED_ARRAY_SUPPORT?21474836 object-assign (c) Sindre Sorhus @license MIT -*/var r=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable;function s(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,a,c=s(e),f=1;f=this._delta8){var n=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-n,e.length),0===this.pending.length&&(this.pending=null),e=r.join32(e,0,e.length-n,this.endian);for(var i=0;i>>24&255,r[i++]=e>>>16&255,r[i++]=e>>>8&255,r[i++]=255&e}else for(r[i++]=255&e,r[i++]=e>>>8&255,r[i++]=e>>>16&255,r[i++]=e>>>24&255,r[i++]=0,r[i++]=0,r[i++]=0,r[i++]=0,o=8;o{if(!this._indexedDB)return void t(new Error("no indexeddb support available"));i.logger.log(`connecting to indexeddb ${this._dbName}`);const n=this._indexedDB.open(this._dbName,a.VERSION);n.onupgradeneeded=e=>{const t=e.target.result,n=e.oldVersion;a.upgradeDatabase(t,n)},n.onblocked=()=>{i.logger.log("can't yet open IndexedDBCryptoStore because it is open elsewhere")},n.onerror=e=>{i.logger.log("Error connecting to indexeddb",e),t(e.target.error)},n.onsuccess=t=>{const n=t.target.result;i.logger.log(`connected to indexeddb ${this._dbName}`),e(new a.Backend(n))}}).then(e=>e.doTxn("readonly",[l.STORE_INBOUND_GROUP_SESSIONS,l.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],t=>{e.getEndToEndInboundGroupSession("","",t,()=>{})}).then(()=>e)).catch(t=>{if("VersionError"===t.name)throw i.logger.warn("Crypto DB is too new for us to use!",t),new c.InvalidCryptoStoreError(c.InvalidCryptoStoreError.TOO_NEW);i.logger.warn(`unable to connect to indexeddb ${this._dbName}`+`: falling back to localStorage store: ${t}`);try{return new o.LocalStorageCryptoStore(e.localStorage)}catch(t){return i.logger.warn(`unable to open localStorage: falling back to in-memory store: ${t}`),new s.MemoryCryptoStore}}),this._backendPromise)}deleteAllData(){return new Promise((e,t)=>{if(!this._indexedDB)return void t(new Error("no indexeddb support available"));i.logger.log(`Removing indexeddb instance: ${this._dbName}`);const n=this._indexedDB.deleteDatabase(this._dbName);n.onblocked=()=>{i.logger.log("can't yet delete IndexedDBCryptoStore because it is open elsewhere")},n.onerror=e=>{i.logger.log("Error deleting data from indexeddb",e),t(e.target.error)},n.onsuccess=()=>{i.logger.log(`Removed indexeddb instance: ${this._dbName}`),e()}}).catch(e=>{i.logger.warn(`unable to delete IndexedDBCryptoStore: ${e}`)})}getOrAddOutgoingRoomKeyRequest(e){return this._connect().then(t=>t.getOrAddOutgoingRoomKeyRequest(e))}getOutgoingRoomKeyRequest(e){return this._connect().then(t=>t.getOutgoingRoomKeyRequest(e))}getOutgoingRoomKeyRequestByState(e){return this._connect().then(t=>t.getOutgoingRoomKeyRequestByState(e))}getOutgoingRoomKeyRequestsByTarget(e,t,n){return this._connect().then(r=>r.getOutgoingRoomKeyRequestsByTarget(e,t,n))}updateOutgoingRoomKeyRequest(e,t,n){return this._connect().then(r=>r.updateOutgoingRoomKeyRequest(e,t,n))}deleteOutgoingRoomKeyRequest(e,t){return this._connect().then(n=>n.deleteOutgoingRoomKeyRequest(e,t))}getAccount(e,t){this._backendPromise.then(n=>{n.getAccount(e,t)})}storeAccount(e,t){this._backendPromise.then(n=>{n.storeAccount(e,t)})}getCrossSigningKeys(e,t){this._backendPromise.then(n=>{n.getCrossSigningKeys(e,t)})}storeCrossSigningKeys(e,t){this._backendPromise.then(n=>{n.storeCrossSigningKeys(e,t)})}countEndToEndSessions(e,t){this._backendPromise.then(n=>{n.countEndToEndSessions(e,t)})}getEndToEndSession(e,t,n,r){this._backendPromise.then(i=>{i.getEndToEndSession(e,t,n,r)})}getEndToEndSessions(e,t,n){this._backendPromise.then(r=>{r.getEndToEndSessions(e,t,n)})}getAllEndToEndSessions(e,t){this._backendPromise.then(n=>{n.getAllEndToEndSessions(e,t)})}storeEndToEndSession(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndSession(e,t,n,r)})}storeEndToEndSessionProblem(e,t,n){return this._backendPromise.then(async r=>{await r.storeEndToEndSessionProblem(e,t,n)})}getEndToEndSessionProblem(e,t){return this._backendPromise.then(async n=>await n.getEndToEndSessionProblem(e,t))}filterOutNotifiedErrorDevices(e){return this._backendPromise.then(async t=>await t.filterOutNotifiedErrorDevices(e))}getEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.getEndToEndInboundGroupSession(e,t,n,r)})}getAllEndToEndInboundGroupSessions(e,t){this._backendPromise.then(n=>{n.getAllEndToEndInboundGroupSessions(e,t)})}addEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.addEndToEndInboundGroupSession(e,t,n,r)})}storeEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndInboundGroupSession(e,t,n,r)})}storeEndToEndInboundGroupSessionWithheld(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndInboundGroupSessionWithheld(e,t,n,r)})}storeEndToEndDeviceData(e,t){this._backendPromise.then(n=>{n.storeEndToEndDeviceData(e,t)})}getEndToEndDeviceData(e,t){this._backendPromise.then(n=>{n.getEndToEndDeviceData(e,t)})}storeEndToEndRoom(e,t,n){this._backendPromise.then(r=>{r.storeEndToEndRoom(e,t,n)})}getEndToEndRooms(e,t){this._backendPromise.then(n=>{n.getEndToEndRooms(e,t)})}getSessionsNeedingBackup(e){return this._connect().then(t=>t.getSessionsNeedingBackup(e))}countSessionsNeedingBackup(e){return this._connect().then(t=>t.countSessionsNeedingBackup(e))}unmarkSessionsNeedingBackup(e,t){return this._connect().then(n=>n.unmarkSessionsNeedingBackup(e,t))}markSessionsNeedingBackup(e,t){return this._connect().then(n=>n.markSessionsNeedingBackup(e,t))}doTxn(e,t,n){return this._connect().then(r=>r.doTxn(e,t,n))}}t.IndexedDBCryptoStore=l,l.STORE_ACCOUNT="account",l.STORE_SESSIONS="sessions",l.STORE_INBOUND_GROUP_SESSIONS="inbound_group_sessions",l.STORE_INBOUND_GROUP_SESSIONS_WITHHELD="inbound_group_sessions_withheld",l.STORE_DEVICE_DATA="device_data",l.STORE_ROOMS="rooms",l.STORE_BACKUP="sessions_needing_backup"}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newVerificationError=i,t.errorFactory=o,t.errorFromEvent=function(e){const t=e.getContent();if(t){const{code:e,reason:n}=t;return{code:e,reason:n}}return{code:"Unknown error",reason:"m.unknown"}},t.newInvalidMessageError=t.newUserMismatchError=t.newKeyMismatchError=t.newUnexpectedMessageError=t.newUnknownMethodError=t.newUnknownTransactionError=t.newTimeoutError=t.newUserCancelledError=void 0;var r=n(19);function i(e,t,n){return(n=n||{}).code=e,n.reason=t,new r.MatrixEvent({type:"m.key.verification.cancel",content:n})}function o(e,t){return function(n){return i(e,t,n)}}const s=o("m.user","Cancelled by user");t.newUserCancelledError=s;const a=o("m.timeout","Timed out");t.newTimeoutError=a;const c=o("m.unknown_transaction","Unknown transaction");t.newUnknownTransactionError=c;const f=o("m.unknown_method","Unknown method");t.newUnknownMethodError=f;const l=o("m.unexpected_message","Unexpected message");t.newUnexpectedMessageError=l;const u=o("m.key_mismatch","Key mismatch");t.newKeyMismatchError=u;const d=o("m.user_error","User mismatch");t.newUserMismatchError=d;const h=o("m.invalid_message","Invalid message");t.newInvalidMessageError=h},function(e,t,n){(function(e){function n(e,t){for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];"."===i?e.splice(r,1):".."===i?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n--;n)e.unshift("..");return e}function r(e,t){if(e.filter)return e.filter(t);for(var n=[],r=0;r=-1&&!i;o--){var s=o>=0?arguments[o]:e.cwd();if("string"!=typeof s)throw new TypeError("Arguments to path.resolve must be strings");s&&(t=s+"/"+t,i="/"===s.charAt(0))}return(i?"/":"")+(t=n(r(t.split("/"),(function(e){return!!e})),!i).join("/"))||"."},t.normalize=function(e){var o=t.isAbsolute(e),s="/"===i(e,-1);return(e=n(r(e.split("/"),(function(e){return!!e})),!o).join("/"))||o||(e="."),e&&s&&(e+="/"),(o?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(r(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,n){function r(e){for(var t=0;t=0&&""===e[n];n--);return t>n?[]:e.slice(t,n-t+1)}e=t.resolve(e).substr(1),n=t.resolve(n).substr(1);for(var i=r(e.split("/")),o=r(n.split("/")),s=Math.min(i.length,o.length),a=s,c=0;c=1;--o)if(47===(t=e.charCodeAt(o))){if(!i){r=o;break}}else i=!1;return-1===r?n?"/":".":n&&1===r?"/":e.slice(0,r)},t.basename=function(e,t){var n=function(e){"string"!=typeof e&&(e+="");var t,n=0,r=-1,i=!0;for(t=e.length-1;t>=0;--t)if(47===e.charCodeAt(t)){if(!i){n=t+1;break}}else-1===r&&(i=!1,r=t+1);return-1===r?"":e.slice(n,r)}(e);return t&&n.substr(-1*t.length)===t&&(n=n.substr(0,n.length-t.length)),n},t.extname=function(e){"string"!=typeof e&&(e+="");for(var t=-1,n=0,r=-1,i=!0,o=0,s=e.length-1;s>=0;--s){var a=e.charCodeAt(s);if(47!==a)-1===r&&(i=!1,r=s+1),46===a?-1===t?t=s:1!==o&&(o=1):-1!==t&&(o=-1);else if(!i){n=s+1;break}}return-1===t||-1===r||0===o||1===o&&t===r-1&&t===n+1?"":e.slice(t,r)};var i="b"==="ab".substr(-1)?function(e,t,n){return e.substr(t,n)}:function(e,t,n){return t<0&&(t=e.length+t),e.substr(t,n)}}).call(this,n(13))},function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE){0;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}}(),e.exports=n(166)},function(e,t,n){"use strict";(function(e){var r=n(16),i=n(7);Object.defineProperty(t,"__esModule",{value:!0});var o={};t.default=void 0;var s=i(n(130));Object.keys(s).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||Object.defineProperty(t,e,{enumerable:!0,get:function(){return s[e]}}))}));var a=r(n(313)),c=r(n(314));let f;s.request((function(e,t){return e.qs=c.default.stringify(e.qs||{},e.qsStringifyOptions),(0,a.default)(e,t)}));try{f=e.indexedDB}catch(e){}f&&s.setCryptoStoreFactory((function(){return new s.IndexedDBCryptoStore(f,"matrix-js-sdk:crypto")}));var l=s;t.default=l,e.matrixcs=s}).call(this,n(6))},function(e,t,n){(function(e){var r=Object.getOwnPropertyDescriptors||function(e){for(var t=Object.keys(e),n={},r=0;r=o)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),c=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),p(n)?r.showHidden=n:n&&t._extend(r,n),b(r.showHidden)&&(r.showHidden=!1),b(r.depth)&&(r.depth=2),b(r.colors)&&(r.colors=!1),b(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=c),l(r,e,r.depth)}function c(e,t){var n=a.styles[t];return n?"["+a.colors[n][0]+"m"+e+"["+a.colors[n][1]+"m":e}function f(e,t){return e}function l(e,n,r){if(e.customInspect&&n&&E(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var i=n.inspect(r,e);return y(i)||(i=l(e,i,r)),i}var o=function(e,t){if(b(t))return e.stylize("undefined","undefined");if(y(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(g(t))return e.stylize(""+t,"number");if(p(t))return e.stylize(""+t,"boolean");if(m(t))return e.stylize("null","null")}(e,n);if(o)return o;var s=Object.keys(n),a=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(s);if(e.showHidden&&(s=Object.getOwnPropertyNames(n)),A(n)&&(s.indexOf("message")>=0||s.indexOf("description")>=0))return u(n);if(0===s.length){if(E(n)){var c=n.name?": "+n.name:"";return e.stylize("[Function"+c+"]","special")}if(v(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(w(n))return e.stylize(Date.prototype.toString.call(n),"date");if(A(n))return u(n)}var f,_="",k=!1,S=["{","}"];(h(n)&&(k=!0,S=["[","]"]),E(n))&&(_=" [Function"+(n.name?": "+n.name:"")+"]");return v(n)&&(_=" "+RegExp.prototype.toString.call(n)),w(n)&&(_=" "+Date.prototype.toUTCString.call(n)),A(n)&&(_=" "+u(n)),0!==s.length||k&&0!=n.length?r<0?v(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),f=k?function(e,t,n,r,i){for(var o=[],s=0,a=t.length;s=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(f,_,S)):S[0]+_+S[1]}function u(e){return"["+Error.prototype.toString.call(e)+"]"}function d(e,t,n,r,i,o){var s,a,c;if((c=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?a=c.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):c.set&&(a=e.stylize("[Setter]","special")),x(r,i)||(s="["+i+"]"),a||(e.seen.indexOf(c.value)<0?(a=m(n)?l(e,c.value,null):l(e,c.value,n-1)).indexOf("\n")>-1&&(a=o?a.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+a.split("\n").map((function(e){return" "+e})).join("\n")):a=e.stylize("[Circular]","special")),b(s)){if(o&&i.match(/^\d+$/))return a;(s=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+a}function h(e){return Array.isArray(e)}function p(e){return"boolean"==typeof e}function m(e){return null===e}function g(e){return"number"==typeof e}function y(e){return"string"==typeof e}function b(e){return void 0===e}function v(e){return _(e)&&"[object RegExp]"===k(e)}function _(e){return"object"==typeof e&&null!==e}function w(e){return _(e)&&"[object Date]"===k(e)}function A(e){return _(e)&&("[object Error]"===k(e)||e instanceof Error)}function E(e){return"function"==typeof e}function k(e){return Object.prototype.toString.call(e)}function S(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(b(o)&&(o=e.env.NODE_DEBUG||""),n=n.toUpperCase(),!s[n])if(new RegExp("\\b"+n+"\\b","i").test(o)){var r=e.pid;s[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else s[n]=function(){};return s[n]},t.inspect=a,a.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},a.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=h,t.isBoolean=p,t.isNull=m,t.isNullOrUndefined=function(e){return null==e},t.isNumber=g,t.isString=y,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=b,t.isRegExp=v,t.isObject=_,t.isDate=w,t.isError=A,t.isFunction=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=n(177);var T=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function I(){var e=new Date,t=[S(e.getHours()),S(e.getMinutes()),S(e.getSeconds())].join(":");return[e.getDate(),T[e.getMonth()],t].join(" ")}function x(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",I(),t.format.apply(t,arguments))},t.inherits=n(178),t._extend=function(e,t){if(!t||!_(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e};var R="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function C(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(R&&e[R]){var t;if("function"!=typeof(t=e[R]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,R,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),i=[],o=0;o>>24]^l[p>>>16&255]^u[m>>>8&255]^d[255&g]^t[y++],s=f[p>>>24]^l[m>>>16&255]^u[g>>>8&255]^d[255&h]^t[y++],a=f[m>>>24]^l[g>>>16&255]^u[h>>>8&255]^d[255&p]^t[y++],c=f[g>>>24]^l[h>>>16&255]^u[p>>>8&255]^d[255&m]^t[y++],h=o,p=s,m=a,g=c;return o=(r[h>>>24]<<24|r[p>>>16&255]<<16|r[m>>>8&255]<<8|r[255&g])^t[y++],s=(r[p>>>24]<<24|r[m>>>16&255]<<16|r[g>>>8&255]<<8|r[255&h])^t[y++],a=(r[m>>>24]<<24|r[g>>>16&255]<<16|r[h>>>8&255]<<8|r[255&p])^t[y++],c=(r[g>>>24]<<24|r[h>>>16&255]<<16|r[p>>>8&255]<<8|r[255&m])^t[y++],[o>>>=0,s>>>=0,a>>>=0,c>>>=0]}var a=[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 n=[],r=[],i=[[],[],[],[]],o=[[],[],[],[]],s=0,a=0,c=0;c<256;++c){var f=a^a<<1^a<<2^a<<3^a<<4;f=f>>>8^255&f^99,n[s]=f,r[f]=s;var l=e[s],u=e[l],d=e[u],h=257*e[f]^16843008*f;i[0][s]=h<<24|h>>>8,i[1][s]=h<<16|h>>>16,i[2][s]=h<<8|h>>>24,i[3][s]=h,h=16843009*d^65537*u^257*l^16843008*s,o[0][f]=h<<24|h>>>8,o[1][f]=h<<16|h>>>16,o[2][f]=h<<8|h>>>24,o[3][f]=h,0===s?s=a=1:(s=l^e[e[e[d^l]]],a^=e[e[a]])}return{SBOX:n,INV_SBOX:r,SUB_MIX:i,INV_SUB_MIX:o}}();function f(e){this._key=i(e),this._reset()}f.blockSize=16,f.keySize=32,f.prototype.blockSize=f.blockSize,f.prototype.keySize=f.keySize,f.prototype._reset=function(){for(var e=this._key,t=e.length,n=t+6,r=4*(n+1),i=[],o=0;o>>24,s=c.SBOX[s>>>24]<<24|c.SBOX[s>>>16&255]<<16|c.SBOX[s>>>8&255]<<8|c.SBOX[255&s],s^=a[o/t|0]<<24):t>6&&o%t==4&&(s=c.SBOX[s>>>24]<<24|c.SBOX[s>>>16&255]<<16|c.SBOX[s>>>8&255]<<8|c.SBOX[255&s]),i[o]=i[o-t]^s}for(var f=[],l=0;l>>24]]^c.INV_SUB_MIX[1][c.SBOX[d>>>16&255]]^c.INV_SUB_MIX[2][c.SBOX[d>>>8&255]]^c.INV_SUB_MIX[3][c.SBOX[255&d]]}this._nRounds=n,this._keySchedule=i,this._invKeySchedule=f},f.prototype.encryptBlockRaw=function(e){return s(e=i(e),this._keySchedule,c.SUB_MIX,c.SBOX,this._nRounds)},f.prototype.encryptBlock=function(e){var t=this.encryptBlockRaw(e),n=r.allocUnsafe(16);return n.writeUInt32BE(t[0],0),n.writeUInt32BE(t[1],4),n.writeUInt32BE(t[2],8),n.writeUInt32BE(t[3],12),n},f.prototype.decryptBlock=function(e){var t=(e=i(e))[1];e[1]=e[3],e[3]=t;var n=s(e,this._invKeySchedule,c.INV_SUB_MIX,c.INV_SBOX,this._nRounds),o=r.allocUnsafe(16);return o.writeUInt32BE(n[0],0),o.writeUInt32BE(n[3],4),o.writeUInt32BE(n[2],8),o.writeUInt32BE(n[1],12),o},f.prototype.scrub=function(){o(this._keySchedule),o(this._invKeySchedule),o(this._key)},e.exports.AES=f},function(e,t,n){var r=n(3).Buffer,i=n(63);e.exports=function(e,t,n,o){if(r.isBuffer(e)||(e=r.from(e,"binary")),t&&(r.isBuffer(t)||(t=r.from(t,"binary")),8!==t.length))throw new RangeError("salt should be Buffer with 8 byte length");for(var s=n/8,a=r.alloc(s),c=r.alloc(o||0),f=r.alloc(0);s>0||o>0;){var l=new i;l.update(f),l.update(e),t&&l.update(t),f=l.digest();var u=0;if(s>0){var d=a.length-s;u=Math.min(s,f.length),f.copy(a,d,0,u),s-=u}if(u0){var h=c.length-o,p=Math.min(o,f.length-u);f.copy(c,h,u,u+p),o-=p}}return f.fill(0),{key:a,iv:c}}},function(e,t,n){"use strict";var r=n(12),i=n(15),o=i.getNAF,s=i.getJSF,a=i.assert;function c(e,t){this.type=e,this.p=new r(t.p,16),this.red=t.prime?r.red(t.prime):r.mont(this.p),this.zero=new r(0).toRed(this.red),this.one=new r(1).toRed(this.red),this.two=new r(2).toRed(this.red),this.n=t.n&&new r(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var n=this.n&&this.p.div(this.n);!n||n.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function f(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){a(e.precomputed);var n=e._getDoubles(),r=o(t,1,this._bitLength),i=(1<=c;t--)f=(f<<1)+r[t];s.push(f)}for(var l=this.jpoint(null,null,null),u=this.jpoint(null,null,null),d=i;d>0;d--){for(c=0;c=0;f--){for(t=0;f>=0&&0===s[f];f--)t++;if(f>=0&&t++,c=c.dblp(t),f<0)break;var l=s[f];a(0!==l),c="affine"===e.type?l>0?c.mixedAdd(i[l-1>>1]):c.mixedAdd(i[-l-1>>1].neg()):l>0?c.add(i[l-1>>1]):c.add(i[-l-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,n,r,i){for(var a=this._wnafT1,c=this._wnafT2,f=this._wnafT3,l=0,u=0;u=1;u-=2){var h=u-1,p=u;if(1===a[h]&&1===a[p]){var m=[t[h],null,null,t[p]];0===t[h].y.cmp(t[p].y)?(m[1]=t[h].add(t[p]),m[2]=t[h].toJ().mixedAdd(t[p].neg())):0===t[h].y.cmp(t[p].y.redNeg())?(m[1]=t[h].toJ().mixedAdd(t[p]),m[2]=t[h].add(t[p].neg())):(m[1]=t[h].toJ().mixedAdd(t[p]),m[2]=t[h].toJ().mixedAdd(t[p].neg()));var g=[-3,-1,-5,-7,0,7,5,1,3],y=s(n[h],n[p]);l=Math.max(y[0].length,l),f[h]=new Array(l),f[p]=new Array(l);for(var b=0;b=0;u--){for(var E=0;u>=0;){var k=!0;for(b=0;b=0&&E++,w=w.dblp(E),u<0)break;for(b=0;b0?S=c[b][T-1>>1]:T<0&&(S=c[b][-T-1>>1].neg()),w="affine"===S.type?w.mixedAdd(S):w.add(S))}}for(u=0;u=Math.ceil((e.bitLength()+1)/t.step)},f.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,i=0;i0&&(g+="?"+y.join("&")),s.open("POST",g),this.useAuthorizationHeader&&s.setRequestHeader("Authorization","Bearer "+this.opts.accessToken),s.setRequestHeader("Content-Type",i),s.send(l),p=t.promise,p.abort=s.abort.bind(s)}else{const e={};r&&c&&(e.filename=c),p=this.authedRequest(n.callback,"POST","/upload",e,l,{prefix:"/_matrix/media/r0",headers:{"Content-Type":i},json:!1,bodyParser:m})}const g=this,y=p.finally((function(){for(let e=0;e{b&&(m&&a.clearTimeout(m),m=a.setTimeout((function(){y=!0,g&&g.abort&&g.abort(),p.reject(new l({error:"Locally timed out waiting for a response",errcode:"ORG.MATRIX.JSSDK_TIMEOUT",timeout:b}))}),b))};v();const _=p.promise;try{g=this.opts.request({uri:n,method:t,withCredentials:!1,qs:r,qsStringifyOptions:s.qsStringifyOptions,useQuerystring:!0,body:i,json:!1,timeout:b,headers:u||{},_matrix_opts:this.opts},(function(t,n,r){if(b&&(a.clearTimeout(m),y))return;f(p,e,c.opts.onlyData,h)(t,n,r)})),g&&("onprogress"in g&&(g.onprogress=e=>{v()}),g.abort&&(_.abort=g.abort.bind(g)))}catch(t){p.reject(t),e&&e(t)}return _}};const f=function(e,t,n,r){return t=t||function(){},function(o,s,a){if(!o)try{s.statusCode>=400?o=function(e,t){const n=e.statusCode,r=function(e){let t;e.getResponseHeader?t=e.getResponseHeader("Content-Type"):e.headers&&(t=e.headers["content-type"]||null);if(!t)return null;try{return(0,i.parse)(t)}catch(e){throw new Error(`Error parsing Content-Type '${t}': ${e}`)}}(e);let o;if(r)if("application/json"===r.type){const e="object"==typeof t?t:JSON.parse(t);o=new l(e)}else"text/plain"===r.type&&(o=new Error(`Server returned ${n} error: ${t}`));o||(o=new Error(`Server returned ${n} error`));return o.httpStatus=n,o}(s,a):r&&(a=r(a))}catch(e){o=new Error(`Error parsing server response: ${e}`)}if(o)e.reject(o),t(o);else{const r={code:s.statusCode,headers:s.headers,data:a};e.resolve(n?a:r),t(null,n?a:r)}}};function l(e){e=e||{},this.errcode=e.errcode,this.name=e.errcode||"Unknown error code",this.message=e.error||"Unknown message",this.data=e}l.prototype=Object.create(Error.prototype),l.prototype.constructor=l}).call(this,n(6))},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.getHttpUriForMxc=function(e,t,n,r,o,s){if("string"!=typeof t||!t)return"";if(0!==t.indexOf("mxc://"))return s?t:"";let a=t.slice(6),c="/_matrix/media/r0/download/";const f={};n&&(f.width=Math.round(n));r&&(f.height=Math.round(r));o&&(f.method=o);i.keys(f).length>0&&(c="/_matrix/media/r0/thumbnail/");const l=a.indexOf("#");let u="";l>=0&&(u=a.substr(l),a=a.substr(0,l));return e+c+a+(0===i.keys(f).length?"":"?"+i.encodeParams(f))+u},t.getIdenticonUri=function(e,t,n,r){if(!t)return null;n||(n=96);r||(r=96);const o={width:n,height:r},s=i.encodeUri("/_matrix/media/unstable/identicon/$ident",{$ident:t});return e+s+(0===i.keys(o).length?"":"?"+i.encodeParams(o))};var i=r(n(8))},function(e,t,n){"use strict";function r(e){Object.defineProperty(this,"deviceId",{enumerable:!0,value:e}),this.algorithms=[],this.keys={},this.verified=i.UNVERIFIED,this.known=!1,this.unsigned={},this.signatures={}}Object.defineProperty(t,"__esModule",{value:!0}),t.DeviceInfo=r,r.fromStorage=function(e,t){const n=new r(t);for(const t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n},r.prototype.toStorage=function(){return{algorithms:this.algorithms,keys:this.keys,verified:this.verified,known:this.known,unsigned:this.unsigned,signatures:this.signatures}},r.prototype.getFingerprint=function(){return this.keys["ed25519:"+this.deviceId]},r.prototype.getIdentityKey=function(){return this.keys["curve25519:"+this.deviceId]},r.prototype.getDisplayName=function(){return this.unsigned.device_display_name||null},r.prototype.isBlocked=function(){return this.verified==i.BLOCKED},r.prototype.isVerified=function(){return this.verified==i.VERIFIED},r.prototype.isUnverified=function(){return this.verified==i.UNVERIFIED},r.prototype.isKnown=function(){return 1==this.known},r.DeviceVerification={VERIFIED:1,UNVERIFIED:0,BLOCKED:-1};const i=r.DeviceVerification},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomString=function(e){let t="";const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(let r=0;r2&&void 0!==arguments[2]?arguments[2]:{},r=Object.create(e.prototype);for(var i in n)r[i]=n[i];return r.constructor=t,t.prototype=r,t}},function(e,t,n){var r=n(90),i=n(5);e.exports=function(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?i(e):t}},function(e,t){function n(t){return e.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},n(t)}e.exports=n},function(e,t,n){var r=n(174);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&r(e,t)}},function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE){0;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}}(),e.exports=n(329)},function(e,t,n){(t=e.exports=n(92)).Stream=t,t.Readable=t,t.Writable=n(61),t.Duplex=n(21),t.Transform=n(95),t.PassThrough=n(192)},function(e,t,n){var r=n(11),i=r.Buffer;function o(e,t){for(var n in e)t[n]=e[n]}function s(e,t,n){return i(e,t,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=r:(o(r,t),t.Buffer=s),o(i,s),s.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,n)},s.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=i(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},s.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},s.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){"use strict";(function(t,r,i){var o=n(44);function s(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;e.entry=null;for(;r;){var i=r.callback;t.pendingcb--,i(n),r=r.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}(t,e)}}e.exports=b;var a,c=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?r:o.nextTick;b.WritableState=y;var f=Object.create(n(30));f.inherits=n(2);var l={deprecate:n(191)},u=n(93),d=n(60).Buffer,h=i.Uint8Array||function(){};var p,m=n(94);function g(){}function y(e,t){a=a||n(21),e=e||{};var r=t instanceof a;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,f=e.writableHighWaterMark,l=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(f||0===f)?f:l,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var 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 n=e._writableState,r=n.sync,i=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,i){--t.pendingcb,n?(o.nextTick(i,r),o.nextTick(k,e,t),e._writableState.errorEmitted=!0,e.emit("error",r)):(i(r),e._writableState.errorEmitted=!0,e.emit("error",r),k(e,t))}(e,n,r,t,i);else{var s=A(n);s||n.corked||n.bufferProcessing||!n.bufferedRequest||w(e,n),r?c(_,e,n,s,i):_(e,n,s,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 s(this)}function b(e){if(a=a||n(21),!(p.call(b,this)||this instanceof a))return new b(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)),u.call(this)}function v(e,t,n,r,i,o,s){t.writelen=r,t.writecb=s,t.writing=!0,t.sync=!0,n?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function _(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),k(e,t)}function w(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,i=new Array(r),o=t.corkedRequestsFree;o.entry=n;for(var a=0,c=!0;n;)i[a]=n,n.isBuf||(c=!1),n=n.next,a+=1;i.allBuffers=c,v(e,t,!0,t.length,i,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new s(t),t.bufferedRequestCount=0}else{for(;n;){var f=n.chunk,l=n.encoding,u=n.callback;if(v(e,t,!1,t.objectMode?1:f.length,f,l,u),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function A(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function E(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),k(e,t)}))}function k(e,t){var n=A(t);return n&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,o.nextTick(E,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}f.inherits(b,u),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:l.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(b,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===b&&(e&&e._writableState instanceof y)}})):p=function(e){return e instanceof this},b.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},b.prototype.write=function(e,t,n){var r,i=this._writableState,s=!1,a=!i.objectMode&&(r=e,d.isBuffer(r)||r instanceof h);return a&&!d.isBuffer(e)&&(e=function(e){return d.from(e)}(e)),"function"==typeof t&&(n=t,t=null),a?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof n&&(n=g),i.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),o.nextTick(t,n)}(this,n):(a||function(e,t,n,r){var i=!0,s=!1;return null===n?s=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(s=new TypeError("Invalid non-string/buffer chunk")),s&&(e.emit("error",s),o.nextTick(r,s),i=!1),i}(this,i,e,n))&&(i.pendingcb++,s=function(e,t,n,r,i,o){if(!n){var s=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=d.from(t,n));return t}(t,r,i);r!==s&&(n=!0,i="buffer",r=s)}var a=t.objectMode?1:r.length;t.length+=a;var c=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(b.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),b.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},b.prototype._writev=null,b.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,k(e,t),n&&(t.finished?o.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)},Object.defineProperty(b.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),b.prototype.destroy=m.destroy,b.prototype._undestroy=m.undestroy,b.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n(13),n(189).setImmediate,n(6))},function(e,t,n){"use strict";var r=n(3).Buffer,i=r.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 o(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&&(r.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=f,t=4;break;case"utf8":this.fillLast=a,t=4;break;case"base64":this.text=l,this.end=u,t=3;break;default:return this.write=d,void(this.end=h)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function s(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function a(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n: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 n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function f(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function l(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?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-n))}function u(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function h(e){return e&&e.length?this.write(e):""}t.StringDecoder=o,o.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return i>0&&(e.lastNeed=i-1),i;if(--r=0)return i>0&&(e.lastNeed=i-2),i;if(--r=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=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},o.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,n){"use strict";var r=n(2),i=n(97),o=n(3).Buffer,s=new Array(16);function a(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function c(e,t){return e<>>32-t}function f(e,t,n,r,i,o,s){return c(e+(t&n|~t&r)+i+o|0,s)+t|0}function l(e,t,n,r,i,o,s){return c(e+(t&r|n&~r)+i+o|0,s)+t|0}function u(e,t,n,r,i,o,s){return c(e+(t^n^r)+i+o|0,s)+t|0}function d(e,t,n,r,i,o,s){return c(e+(n^(t|~r))+i+o|0,s)+t|0}r(a,i),a.prototype._update=function(){for(var e=s,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var n=this._a,r=this._b,i=this._c,o=this._d;n=f(n,r,i,o,e[0],3614090360,7),o=f(o,n,r,i,e[1],3905402710,12),i=f(i,o,n,r,e[2],606105819,17),r=f(r,i,o,n,e[3],3250441966,22),n=f(n,r,i,o,e[4],4118548399,7),o=f(o,n,r,i,e[5],1200080426,12),i=f(i,o,n,r,e[6],2821735955,17),r=f(r,i,o,n,e[7],4249261313,22),n=f(n,r,i,o,e[8],1770035416,7),o=f(o,n,r,i,e[9],2336552879,12),i=f(i,o,n,r,e[10],4294925233,17),r=f(r,i,o,n,e[11],2304563134,22),n=f(n,r,i,o,e[12],1804603682,7),o=f(o,n,r,i,e[13],4254626195,12),i=f(i,o,n,r,e[14],2792965006,17),n=l(n,r=f(r,i,o,n,e[15],1236535329,22),i,o,e[1],4129170786,5),o=l(o,n,r,i,e[6],3225465664,9),i=l(i,o,n,r,e[11],643717713,14),r=l(r,i,o,n,e[0],3921069994,20),n=l(n,r,i,o,e[5],3593408605,5),o=l(o,n,r,i,e[10],38016083,9),i=l(i,o,n,r,e[15],3634488961,14),r=l(r,i,o,n,e[4],3889429448,20),n=l(n,r,i,o,e[9],568446438,5),o=l(o,n,r,i,e[14],3275163606,9),i=l(i,o,n,r,e[3],4107603335,14),r=l(r,i,o,n,e[8],1163531501,20),n=l(n,r,i,o,e[13],2850285829,5),o=l(o,n,r,i,e[2],4243563512,9),i=l(i,o,n,r,e[7],1735328473,14),n=u(n,r=l(r,i,o,n,e[12],2368359562,20),i,o,e[5],4294588738,4),o=u(o,n,r,i,e[8],2272392833,11),i=u(i,o,n,r,e[11],1839030562,16),r=u(r,i,o,n,e[14],4259657740,23),n=u(n,r,i,o,e[1],2763975236,4),o=u(o,n,r,i,e[4],1272893353,11),i=u(i,o,n,r,e[7],4139469664,16),r=u(r,i,o,n,e[10],3200236656,23),n=u(n,r,i,o,e[13],681279174,4),o=u(o,n,r,i,e[0],3936430074,11),i=u(i,o,n,r,e[3],3572445317,16),r=u(r,i,o,n,e[6],76029189,23),n=u(n,r,i,o,e[9],3654602809,4),o=u(o,n,r,i,e[12],3873151461,11),i=u(i,o,n,r,e[15],530742520,16),n=d(n,r=u(r,i,o,n,e[2],3299628645,23),i,o,e[0],4096336452,6),o=d(o,n,r,i,e[7],1126891415,10),i=d(i,o,n,r,e[14],2878612391,15),r=d(r,i,o,n,e[5],4237533241,21),n=d(n,r,i,o,e[12],1700485571,6),o=d(o,n,r,i,e[3],2399980690,10),i=d(i,o,n,r,e[10],4293915773,15),r=d(r,i,o,n,e[1],2240044497,21),n=d(n,r,i,o,e[8],1873313359,6),o=d(o,n,r,i,e[15],4264355552,10),i=d(i,o,n,r,e[6],2734768916,15),r=d(r,i,o,n,e[13],1309151649,21),n=d(n,r,i,o,e[4],4149444226,6),o=d(o,n,r,i,e[11],3174756917,10),i=d(i,o,n,r,e[2],718787259,15),r=d(r,i,o,n,e[9],3951481745,21),this._a=this._a+n|0,this._b=this._b+r|0,this._c=this._c+i|0,this._d=this._d+o|0},a.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=o.allocUnsafe(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=a},function(e,t,n){"use strict";var r=n(11).Buffer,i=n(2),o=n(97),s=new Array(16),a=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],c=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],f=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],l=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],u=[0,1518500249,1859775393,2400959708,2840853838],d=[1352829926,1548603684,1836072691,2053994217,0];function h(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function p(e,t){return e<>>32-t}function m(e,t,n,r,i,o,s,a){return p(e+(t^n^r)+o+s|0,a)+i|0}function g(e,t,n,r,i,o,s,a){return p(e+(t&n|~t&r)+o+s|0,a)+i|0}function y(e,t,n,r,i,o,s,a){return p(e+((t|~n)^r)+o+s|0,a)+i|0}function b(e,t,n,r,i,o,s,a){return p(e+(t&r|n&~r)+o+s|0,a)+i|0}function v(e,t,n,r,i,o,s,a){return p(e+(t^(n|~r))+o+s|0,a)+i|0}i(h,o),h.prototype._update=function(){for(var e=s,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var n=0|this._a,r=0|this._b,i=0|this._c,o=0|this._d,h=0|this._e,_=0|this._a,w=0|this._b,A=0|this._c,E=0|this._d,k=0|this._e,S=0;S<80;S+=1){var T,I;S<16?(T=m(n,r,i,o,h,e[a[S]],u[0],f[S]),I=v(_,w,A,E,k,e[c[S]],d[0],l[S])):S<32?(T=g(n,r,i,o,h,e[a[S]],u[1],f[S]),I=b(_,w,A,E,k,e[c[S]],d[1],l[S])):S<48?(T=y(n,r,i,o,h,e[a[S]],u[2],f[S]),I=y(_,w,A,E,k,e[c[S]],d[2],l[S])):S<64?(T=b(n,r,i,o,h,e[a[S]],u[3],f[S]),I=g(_,w,A,E,k,e[c[S]],d[3],l[S])):(T=v(n,r,i,o,h,e[a[S]],u[4],f[S]),I=m(_,w,A,E,k,e[c[S]],d[4],l[S])),n=h,h=o,o=p(i,10),i=r,r=T,_=k,k=E,E=p(A,10),A=w,w=I}var x=this._b+i+E|0;this._b=this._c+o+k|0,this._c=this._d+h+_|0,this._d=this._e+n+w|0,this._e=this._a+r+A|0,this._a=x},h.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=r.alloc?r.alloc(20):new r(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=h},function(e,t,n){(t=e.exports=function(e){e=e.toLowerCase();var n=t[e];if(!n)throw new Error(e+" is not supported (we accept pull requests)");return new n}).sha=n(204),t.sha1=n(205),t.sha224=n(206),t.sha256=n(98),t.sha384=n(207),t.sha512=n(99)},function(e,t,n){"use strict";var r=n(14);function i(e){this.options=e,this.type=this.options.type,this.blockSize=8,this._init(),this.buffer=new Array(this.blockSize),this.bufferOff=0}e.exports=i,i.prototype._init=function(){},i.prototype.update=function(e){return 0===e.length?[]:"decrypt"===this.type?this._updateDecrypt(e):this._updateEncrypt(e)},i.prototype._buffer=function(e,t){for(var n=Math.min(this.buffer.length-this.bufferOff,e.length-t),r=0;r0;r--)t+=this._buffer(e,t),n+=this._flushBuffer(i,n);return t+=this._buffer(e,t),i},i.prototype.final=function(e){var t,n;return e&&(t=this.update(e)),n="encrypt"===this.type?this._finalEncrypt():this._finalDecrypt(),t?t.concat(n):n},i.prototype._pad=function(e,t){if(0===t)return!1;for(;t=0||!n.umod(e.prime1)||!n.umod(e.prime2);)n=new r(i(t));return n}e.exports=o,o.getr=s}).call(this,n(11).Buffer)},function(e,t,n){"use strict";var r=t;r.version=n(233).version,r.utils=n(15),r.rand=n(69),r.curve=n(118),r.curves=n(72),r.ec=n(244),r.eddsa=n(248)},function(e,t,n){"use strict";var r,i=t,o=n(73),s=n(118),a=n(15).assert;function c(e){"short"===e.type?this.curve=new s.short(e):"edwards"===e.type?this.curve=new s.edwards(e):this.curve=new s.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,a(this.g.validate(),"Invalid curve"),a(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function f(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var n=new c(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:n}),n}})}i.PresetCurve=c,f("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),f("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),f("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),f("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),f("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),f("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),f("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=n(243)}catch(e){r=void 0}f("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})},function(e,t,n){var r=t;r.utils=n(17),r.common=n(33),r.sha=n(237),r.ripemd=n(241),r.hmac=n(242),r.sha1=r.sha.sha1,r.sha256=r.sha.sha256,r.sha224=r.sha.sha224,r.sha384=r.sha.sha384,r.sha512=r.sha.sha512,r.ripemd160=r.ripemd.ripemd160},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MemoryCryptoStore=void 0;var i=n(4),o=r(n(8));t.MemoryCryptoStore=class{constructor(){this._outgoingRoomKeyRequests=[],this._account=null,this._crossSigningKeys=null,this._sessions={},this._sessionProblems={},this._notifiedErrorDevices={},this._inboundGroupSessions={},this._inboundGroupSessionsWithheld={},this._deviceData=null,this._rooms={},this._sessionsNeedingBackup={}}deleteAllData(){return Promise.resolve()}getOrAddOutgoingRoomKeyRequest(e){const t=e.requestBody;return o.promiseTry(()=>{const n=this._getOutgoingRoomKeyRequest(t);return n?(i.logger.log("already have key request outstanding for "+`${t.room_id} / ${t.session_id}: `+"not sending another"),n):(i.logger.log(`enqueueing key request for ${t.room_id} / `+t.session_id),this._outgoingRoomKeyRequests.push(e),e)})}getOutgoingRoomKeyRequest(e){return Promise.resolve(this._getOutgoingRoomKeyRequest(e))}_getOutgoingRoomKeyRequest(e){for(const t of this._outgoingRoomKeyRequests)if(o.deepCompare(t.requestBody,e))return t;return null}getOutgoingRoomKeyRequestByState(e){for(const t of this._outgoingRoomKeyRequests)for(const n of e)if(t.state===n)return Promise.resolve(t);return Promise.resolve(null)}getOutgoingRoomKeyRequestsByTarget(e,t,n){const r=[];for(const i of this._outgoingRoomKeyRequests)for(const o of n)i.state===o&&i.recipients.includes({userId:e,deviceId:t})&&r.push(i);return Promise.resolve(r)}updateOutgoingRoomKeyRequest(e,t,n){for(const r of this._outgoingRoomKeyRequests)if(r.requestId===e)return r.state!=t?(i.logger.warn(`Cannot update room key request from ${t} `+`as it was already updated to ${r.state}`),Promise.resolve(null)):(Object.assign(r,n),Promise.resolve(r));return Promise.resolve(null)}deleteOutgoingRoomKeyRequest(e,t){for(let n=0;ne.time-t.time)}async getEndToEndSessionProblem(e,t){const n=this._sessionProblems[e]||[];if(!n.length)return null;const r=n[n.length-1];for(const e of n)if(e.time>t)return Object.assign({},e,{fixed:r.fixed});return r.fixed?null:r}async filterOutNotifiedErrorDevices(e){const t=this._notifiedErrorDevices,n=[];for(const r of e){const{userId:e,deviceInfo:i}=r;e in t?i.deviceId in t[e]||(n.push(r),t[e][i.deviceId]=!0):(n.push(r),t[e]={[i.deviceId]:!0})}return n}getEndToEndInboundGroupSession(e,t,n,r){const i=e+"/"+t;r(this._inboundGroupSessions[i]||null,this._inboundGroupSessionsWithheld[i]||null)}getAllEndToEndInboundGroupSessions(e,t){for(const e of Object.keys(this._inboundGroupSessions))t({senderKey:e.substr(0,43),sessionId:e.substr(44),sessionData:this._inboundGroupSessions[e]});t(null)}addEndToEndInboundGroupSession(e,t,n,r){const i=e+"/"+t;void 0===this._inboundGroupSessions[i]&&(this._inboundGroupSessions[i]=n)}storeEndToEndInboundGroupSession(e,t,n,r){this._inboundGroupSessions[e+"/"+t]=n}storeEndToEndInboundGroupSessionWithheld(e,t,n,r){const i=e+"/"+t;this._inboundGroupSessionsWithheld[i]=n}getEndToEndDeviceData(e,t){t(this._deviceData)}storeEndToEndDeviceData(e,t){this._deviceData=e}storeEndToEndRoom(e,t,n){this._rooms[e]=t}getEndToEndRooms(e,t){t(this._rooms)}getSessionsNeedingBackup(e){const t=[];for(const n in this._sessionsNeedingBackup)if(this._inboundGroupSessions[n]&&(t.push({senderKey:n.substr(0,43),sessionId:n.substr(44),sessionData:this._inboundGroupSessions[n]}),e&&n.length>=e))break;return Promise.resolve(t)}countSessionsNeedingBackup(){return Promise.resolve(Object.keys(this._sessionsNeedingBackup).length)}unmarkSessionsNeedingBackup(e){for(const t of e){const e=t.senderKey+"/"+t.sessionId;delete this._sessionsNeedingBackup[e]}return Promise.resolve()}markSessionsNeedingBackup(e){for(const t of e){const e=t.senderKey+"/"+t.sessionId;this._sessionsNeedingBackup[e]=!0}return Promise.resolve()}doTxn(e,t,n){return Promise.resolve(n(null))}}},function(e,t,n){"use strict";var r=n(275),i=n(276);function o(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}t.parse=v,t.resolve=function(e,t){return v(e,!1,!0).resolve(t)},t.resolveObject=function(e,t){return e?v(e,!1,!0).resolveObject(t):t},t.format=function(e){i.isString(e)&&(e=v(e));return e instanceof o?e.format():o.prototype.format.call(e)},t.Url=o;var s=/^([a-z0-9.+-]+:)/i,a=/:[0-9]*$/,c=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,f=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),l=["'"].concat(f),u=["%","/","?",";","#"].concat(l),d=["/","?","#"],h=/^[+a-z0-9A-Z_-]{0,63}$/,p=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,m={javascript:!0,"javascript:":!0},g={javascript:!0,"javascript:":!0},y={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},b=n(277);function v(e,t,n){if(e&&i.isObject(e)&&e instanceof o)return e;var r=new o;return r.parse(e,t,n),r}o.prototype.parse=function(e,t,n){if(!i.isString(e))throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var o=e.indexOf("?"),a=-1!==o&&o127?M+="x":M+=P[D];if(!M.match(h)){var B=C.slice(0,I),j=C.slice(I+1),U=P.match(p);U&&(B.push(U[1]),j.unshift(U[2])),j.length&&(v="/"+j.join(".")+v),this.hostname=B.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),R||(this.hostname=r.toASCII(this.hostname));var L=this.port?":"+this.port:"",F=this.hostname||"";this.host=F+L,this.href+=this.host,R&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==v[0]&&(v="/"+v))}if(!m[A])for(I=0,O=l.length;I0)&&n.host.split("@"))&&(n.auth=R.shift(),n.host=n.hostname=R.shift());return n.search=e.search,n.query=e.query,i.isNull(n.pathname)&&i.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.href=n.format(),n}if(!E.length)return n.pathname=null,n.search?n.path="/"+n.search:n.path=null,n.href=n.format(),n;for(var S=E.slice(-1)[0],T=(n.host||e.host||E.length>1)&&("."===S||".."===S)||""===S,I=0,x=E.length;x>=0;x--)"."===(S=E[x])?E.splice(x,1):".."===S?(E.splice(x,1),I++):I&&(E.splice(x,1),I--);if(!w&&!A)for(;I--;I)E.unshift("..");!w||""===E[0]||E[0]&&"/"===E[0].charAt(0)||E.unshift(""),T&&"/"!==E.join("/").substr(-1)&&E.push("");var R,C=""===E[0]||E[0]&&"/"===E[0].charAt(0);k&&(n.hostname=n.host=C?"":E.length?E.shift():"",(R=!!(n.host&&n.host.indexOf("@")>0)&&n.host.split("@"))&&(n.auth=R.shift(),n.host=n.hostname=R.shift()));return(w=w||n.host&&E.length)&&!C&&E.unshift(""),E.length?n.pathname=E.join("/"):(n.pathname=null,n.path=null),i.isNull(n.pathname)&&i.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.auth=e.auth||n.auth,n.slashes=n.slashes||e.slashes,n.href=n.format(),n},o.prototype.parseHost=function(){var e=this.host,t=a.exec(e);t&&(":"!==(t=t[0])&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PushProcessor=s;var r=n(8);const i=["override","content","room","sender","underride"],o=[{rule_id:".m.rule.tombstone",default:!0,enabled:!0,conditions:[{kind:"event_match",key:"type",pattern:"m.room.tombstone"},{kind:"event_match",key:"state_key",pattern:""}],actions:["notify",{set_tweak:"highlight",value:!0}]},{rule_id:".m.rule.reaction",default:!0,enabled:!0,conditions:[{kind:"event_match",key:"type",pattern:"m.reaction"}],actions:["dont_notify"]}];function s(e){const t={},n=(e,t,n)=>{for(let r=0;r]*)([0-9]*)$/);if(!o)return!1;const s=o[1],a=parseInt(o[2]);if(isNaN(a))return!1;switch(s){case"":case"==":return i==a;case"<":return i":return i>a;case"<=":return i<=a;case">=":return i>=a;default:return!1}},u=function(t,n){let i=n.getContent();if(n.isEncrypted()&&n.getClearContent()&&(i=n.getClearContent()),!i||!i.body||"string"!=typeof i.body)return!1;const o=e.getRoom(n.getRoomId());if(!(o&&o.currentState&&o.currentState.members&&o.currentState.getMember(e.credentials.userId)))return!1;const s=o.currentState.getMember(e.credentials.userId).name,a=new RegExp("(^|\\W)"+(0,r.escapeRegExp)(s)+"(\\W|$)","i");return i.body.search(a)>-1},d=function(e,t){return!1},h=function(e,t){if(!e.key)return!1;const n=m(e.key,t);if("string"!=typeof n)return!1;if(e.value)return e.value===n;let r;return r="content.body"==e.key?p("(^|\\W)",e.pattern,"(\\W|$)"):p("^",e.pattern,"$"),!!n.match(r)},p=function(e,n,i){return t[n]?t[n]:(t[n]=new RegExp(e+(0,r.globToRegexp)(n)+i,"i"),t[n])},m=function(e,t){const n=e.split(".");let i;const o=n[0];for("content"===o?(i=t.getContent(),n.shift()):"type"===o?(i=t.getType(),n.shift()):i=t.event;n.length>0;){const e=n.shift();if((0,r.isNullOrUndefined)(i[e]))return null;i=i[e]}return i},g=function(t,r){const i=function(t,r){if(!r||!r.device)return null;if(t.getSender()==e.credentials.userId)return null;const i=Object.keys(r.device);for(let e=0;et.rule_id===e.rule_id)){const t=e.rule_id;console.warn(`Adding default global override for ${t}`),n.push(e)}}return t}(e.pushRules);return g(t,n)},this.getPushRuleById=function(t){for(const n of["device","global"])if(void 0!==e.pushRules[n])for(const r of i)if(void 0!==e.pushRules[n][r])for(const i of e.pushRules[n][r])if(i.rule_id===t)return i;return null}}s.actionListToActionsObject=function(e){const t={notify:!1,tweaks:{}};for(let n=0;n{const t=o.find(t=>t.rule_id===e.rule_id);return t?(e.default=t.default,e.conditions=t.conditions,e.actions=t.actions,e):e}),t}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Filter=o;var r=n(283);function i(e,t,n){const r=t.split(".");let i=e;for(let e=0;et!==e)}if(r)return t+" ("+e+")";return t}(this.userId,e.getDirectionalContent().displayname,t),this.rawDisplayName=e.getDirectionalContent().displayname||this.userId,n!==this.membership&&(this._updateModifiedTime(),this.emit("RoomMember.membership",e,this,n)),r!==this.name&&(this._updateModifiedTime(),this.emit("RoomMember.name",e,this,r))},a.prototype.setPowerLevelEvent=function(e){if("m.room.power_levels"!==e.getType())return;const t=e.getDirectionalContent();let n=t.users_default||0;s.forEach(s.values(t.users),(function(e){n=Math.max(n,e)}));const r=this.powerLevel,i=this.powerLevelNorm;t.users&&void 0!==t.users[this.userId]?this.powerLevel=t.users[this.userId]:void 0!==t.users_default?this.powerLevel=t.users_default:this.powerLevel=0,this.powerLevelNorm=0,n>0&&(this.powerLevelNorm=100*this.powerLevel/n),r===this.powerLevel&&i===this.powerLevelNorm||(this._updateModifiedTime(),this.emit("RoomMember.powerLevel",e,this))},a.prototype.setTypingEvent=function(e){if("m.typing"!==e.getType())return;const t=this.typing;this.typing=!1;const n=e.getContent().user_ids;s.isArray(n)&&(-1!==n.indexOf(this.userId)&&(this.typing=!0),t!==this.typing&&(this._updateModifiedTime(),this.emit("RoomMember.typing",e,this)))},a.prototype._updateModifiedTime=function(){this._modified=Date.now()},a.prototype.getLastModifiedTime=function(){return this._modified},a.prototype.isKicked=function(){return"leave"===this.membership&&this.events.member.getSender()!==this.events.member.getStateKey()},a.prototype.getDMInviter=function(){if(this.events.member){const e=this.events.member;let t=e.getContent(),n=e.getSender();if("join"===t.membership&&(t=e.getPrevContent(),n=e.getUnsigned().prev_sender),"invite"===t.membership&&t.is_direct)return n}},a.prototype.getAvatarUrl=function(e,t,n,r,i,s){void 0===i&&(i=!0);const a=this.getMxcAvatarUrl();if(!a&&!i)return null;const c=(0,o.getHttpUriForMxc)(e,a,t,n,r,s);return c||(i?(0,o.getIdenticonUri)(e,this.userId,t,n):null)},a.prototype.getMxcAvatarUrl=function(){return this.events.member?this.events.member.getDirectionalContent().avatar_url:this.user?this.user.avatarUrl:null}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ReEmitter=void 0;t.ReEmitter=class{constructor(e){this.target=e,this.boundHandlers={}}_handleEvent(e,...t){this.target.emit(e,...t)}reEmit(e,t){const n=(t,...n)=>{t(...n,e)};for(const r of t){void 0===this.boundHandlers[r]&&(this.boundHandlers[r]=this._handleEvent.bind(this,r));const t=n.bind(this,this.boundHandlers[r]);e.on(r,t)}}}},function(e,t,n){"use strict";function r(e,t){const n=`Store is invalid because ${e}, `+"please stop the client, delete all data and start the client again",r=Reflect.construct(Error,[n]);return Reflect.setPrototypeOf(r,Reflect.getPrototypeOf(this)),r.reason=e,r.value=t,r}function i(e){const t=`Crypto store is invalid because ${e}, `+"please stop the client, delete all data and start the client again",n=Reflect.construct(Error,[t]);return Reflect.setPrototypeOf(n,Reflect.getPrototypeOf(this)),n.reason=e,n.name="InvalidCryptoStoreError",n}Object.defineProperty(t,"__esModule",{value:!0}),t.InvalidStoreError=r,t.InvalidCryptoStoreError=i,r.TOGGLED_LAZY_LOADING="TOGGLED_LAZY_LOADING",r.prototype=Object.create(Error.prototype,{constructor:{value:Error,enumerable:!1,writable:!0,configurable:!0}}),Reflect.setPrototypeOf(r,Error),i.TOO_NEW="TOO_NEW",i.prototype=Object.create(Error.prototype,{constructor:{value:Error,enumerable:!1,writable:!0,configurable:!0}}),Reflect.setPrototypeOf(i,Error)},function(e,t,n){"use strict";for(var r=/[\\\"\x00-\x1F]/g,i={},o=0;o<32;++o)i[String.fromCharCode(o)]="\\U"+("0000"+o.toString(16)).slice(-4).toUpperCase();function s(e){return r.lastIndex=0,e.replace(r,(function(e){return i[e]}))}function a(e){switch(typeof e){case"string":return'"'+s(e)+'"';case"number":return isFinite(e)?e:"null";case"boolean":return e;case"object":return null===e?"null":Array.isArray(e)?function(e){for(var t="[",n="",r=0;re+": "+t[e]).join(", "));return n+="]",n}(this,n)}}t.DecryptionError=o;class s extends Error{constructor(e,t){super(e),this.name="UnknownDeviceError",this.devices=t}}t.UnknownDeviceError=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VerificationRequest=t.PHASE_DONE=t.PHASE_CANCELLED=t.PHASE_STARTED=t.PHASE_REQUESTED=t.PHASE_UNSENT=t.DONE_TYPE=t.CANCEL_TYPE=t.START_TYPE=t.REQUEST_TYPE=t.EVENT_PREFIX=void 0;var r=n(4),i=n(303),o=n(10),s=n(37);const a="m.key.verification.";t.EVENT_PREFIX=a;const c=a+"request";t.REQUEST_TYPE=c;const f=a+"start";t.START_TYPE=f;const l=a+"cancel";t.CANCEL_TYPE=l;t.DONE_TYPE="m.key.verification.done";t.PHASE_UNSENT=1;t.PHASE_REQUESTED=2;t.PHASE_STARTED=4;t.PHASE_CANCELLED=5;t.PHASE_DONE=6;class u extends o.EventEmitter{constructor(e,t,n,r){super(),this.channel=e,this._verificationMethods=t,this._client=r,this._commonMethods=[],this._setPhase(1,!1),this._requestEvent=null,this._otherUserId=n,this._initiatedByMe=null,this._startTimestamp=null}static validateEvent(e,t,n,i){const o=t.getContent();if(!e.startsWith(a))return!1;if(e===c&&!Array.isArray(o.methods))return!1;if(!(e!==c&&e!==f||"string"==typeof o.from_device&&0!==o.from_device.length))return!1;if(Number.isFinite(n)){const e=Date.now()-n;if(e>597e3||e<-3e5)return r.logger.log("received verification that is too old or from the future"),!1}return!0}get methods(){return this._commonMethods}get timeout(){const e=Date.now()-this._startTimestamp;return Math.max(0,6e5-e)}get event(){return this._requestEvent}get phase(){return this._phase}get verifier(){return this._verifier}get pending(){return 1!==this._phase&&6!==this._phase&&5!==this._phase}get initiatedByMe(){return this._initiatedByMe}get requestingUserId(){return this.initiatedByMe?this._client.getUserId():this._otherUserId}get receivingUserId(){return this.initiatedByMe?this._otherUserId:this._client.getUserId()}beginKeyVerification(e,t=null){if(!this._verifier&&this._hasValidPreStartPhase()){if(this._commonMethods.length&&!this._commonMethods.includes(e))throw(0,s.newUnknownMethodError)();if(this._verifier=this._createVerifier(e,null,t),!this._verifier)throw(0,s.newUnknownMethodError)()}return this._verifier}async sendRequest(){if(1===this._phase){this._initiatedByMe=!0,this._setPhase(2,!1);const e=[...this._verificationMethods.keys()];await this.channel.send(c,{methods:e}),this.emit("change")}}async cancel({reason:e="User declined",code:t="m.user"}={}){if(5!==this._phase){if(this._verifier)return this._verifier.cancel((0,s.errorFactory)(t,e));this._setPhase(5,!1),await this.channel.send(l,{code:t,reason:e}),this.emit("change")}}waitForVerifier(){return this.verifier?Promise.resolve(this.verifier):new Promise(e=>{const t=()=>{this.verifier&&(this.off("change",t),e(this.verifier))};this.on("change",t)})}_setPhase(e,t=!0){this._phase=e,t&&this.emit("change")}async handleEvent(e,t,n){const r=t.getContent();e!==c&&e!==f||null===this._startTimestamp&&(this._startTimestamp=n),e===c?await this._handleRequest(r,t):e===f&&await this._handleStart(r,t),this._verifier&&(e===l||this._verifier.events&&this._verifier.events.includes(e))&&this._verifier.handleEvent(t),e===l?this._handleCancel():"m.key.verification.done"===e&&this._handleDone()}async _handleRequest(e,t){if(1===this._phase){const n=e.methods;this._commonMethods=n.filter(e=>this._verificationMethods.has(e)),this._requestEvent=t,this._initiatedByMe=this._wasSentByMe(t),this._setPhase(2)}else 2!==this._phase&&(r.logger.warn("Ignoring flagged verification request from "+t.getSender()),await this.cancel((0,s.errorFromEvent)((0,s.newUnexpectedMessageError)())))}_hasValidPreStartPhase(){return 2===this._phase||this.channel.constructor.canCreateRequest(f)&&1===this._phase}async _handleStart(e,t){if(this._hasValidPreStartPhase()){const{method:n}=e;this._verificationMethods.has(n)?(1===this.phase&&(this._initiatedByMe=this._wasSentByMe(t)),this._verifier=this._createVerifier(n,t),this._setPhase(4)):await this.cancel((0,s.errorFromEvent)((0,s.newUnknownMethodError)()))}}handleVerifierSend(e,t){e===l?this._handleCancel():e===f&&(1!==this._phase&&2!==this._phase||(this._initiatedByMe=1===this.phase,this._setPhase(4)))}_handleCancel(){5!==this._phase&&this._setPhase(5)}_handleDone(){4===this._phase&&this._setPhase(6)}_createVerifier(e,t=null,n=null){const r=t&&this._wasSentByMe(t),{userId:o,deviceId:s}=this._getVerifierTarget(t,n),a=this._verificationMethods.get(e);if(a)return new a(new i.RequestCallbackChannel(this,this.channel),this._client,o,s,r?null:t);console.warn("could not find verifier constructor for method",e)}_getVerifierTarget(e,t){if(t)return t;{let t;if(e&&!this._wasSentByMe(e))t=e;else{if(!this._requestEvent||this._wasSentByMe(this._requestEvent))throw new Error("can't determine who the verifier should be targeted at. No .request or .start event and no targetDevice");t=this._requestEvent}const n=t.getSender(),r=t.getContent();return{userId:n,deviceId:r&&r.from_device}}}_wasSentByMe(e){if(e.getSender()!==this._client.getUserId())return!1;const t=e.getContent();return!(!t||t.from_device!==this._client.getDeviceId())}}t.VerificationRequest=u},function(e,t,n){"use strict";var r=Object.prototype.hasOwnProperty,i=Array.isArray,o=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),s=function(e,t){for(var n=t&&t.plainObjects?Object.create(null):{},r=0;r1;){var t=e.pop(),n=t.obj[t.prop];if(i(n)){for(var r=[],o=0;o=48&&a<=57||a>=65&&a<=90||a>=97&&a<=122?i+=r.charAt(s):a<128?i+=o[a]:a<2048?i+=o[192|a>>6]+o[128|63&a]:a<55296||a>=57344?i+=o[224|a>>12]+o[128|a>>6&63]+o[128|63&a]:(s+=1,a=65536+((1023&a)<<10|1023&r.charCodeAt(s)),i+=o[240|a>>18]+o[128|a>>12&63]+o[128|a>>6&63]+o[128|63&a])}return i},isBuffer:function(e){return!(!e||"object"!=typeof e)&&!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},isRegExp:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},maybeMap:function(e,t){if(i(e)){for(var n=[],r=0;r"),P=s(")"),M=s("&");t.Base=o,t.DOMAIN=a,t.AT=c,t.COLON=f,t.DOT=l,t.PUNCTUATION=u,t.LOCALHOST=d,t.NL=h,t.NUM=p,t.PLUS=m,t.POUND=g,t.QUERY=v,t.PROTOCOL=y,t.MAILTO=b,t.SLASH=_,t.UNDERSCORE=w,t.SYM=A,t.TLD=E,t.WS=k,t.OPENBRACE=S,t.OPENBRACKET=T,t.OPENANGLEBRACKET=I,t.OPENPAREN=x,t.CLOSEBRACE=R,t.CLOSEBRACKET=C,t.CLOSEANGLEBRACKET=O,t.CLOSEPAREN=P,t.AMPERSAND=M},function(e,t,n){var r=n(171),i=n(172),o=n(173);e.exports=function(e){return r(e)||i(e)||o()}},function(e,t,n){"use strict";var r=n(0),i=n.n(r),o=(n(9),n(159)),s=n.n(o);t.a=function(e){var t=e.message,n=e.userId,r=e.botId,o=e.client,a=function(){switch(t.sender){case"from-me":case n:return"from-me";case r:return"from-bot";default:return"from-support"}};if(e.placeholder)return i.a.createElement("div",{className:"message from-me placeholder"},i.a.createElement("div",{className:"text"},t.content.body));if("m.file"===t.content.msgtype){var c=o.mxcUrlToHttp(t.content.url);return(i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text"},i.a.createElement("a",{href:c,target:"_blank",rel:"noopener noreferrer"},t.content.body))))}if(t.content.formatted_body)return i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text",dangerouslySetInnerHTML:{__html:t.content.formatted_body}}));return i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text"},i.a.createElement(s.a,{options:{linkAttributes:{rel:"noreferrer noopener"}}},t.content.body)))}},function(e,t,n){"use strict";var r=n(0),i=n.n(r);n(9);t.a=function(e){var t=e.handleToggleOpen,n=e.handleExitChat,r=e.opened;return(i.a.createElement("div",{className:"widget-header"},i.a.createElement("button",{type:"button",className:"widget-header-minimize",onClick:t,onKeyPress:t,"aria-label":"Minimize the chat window",title:"Minimize the chat window"},i.a.createElement("span",{className:"btn-icon arrow ".concat(r?"opened":"closed")},"⌃"),i.a.createElement("span",null,"".concat(r?"Hide":"Show"," the chat"))),i.a.createElement("button",{type:"button",className:"widget-header-close",onClick:n,onKeyPress:n,"aria-label":"Exit the chat",title:"Exit the chat"},i.a.createElement("span",{className:"btn-icon"},"×"))))}},function(e,t,n){"use strict";e.exports=n(167)},function(e,t){function n(t){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?e.exports=n=function(e){return typeof e}:e.exports=n=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(t)}e.exports=n},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){"use strict";(function(t,r){var i=n(44);e.exports=v;var o,s=n(91);v.ReadableState=b;n(10).EventEmitter;var a=function(e,t){return e.listeners(t).length},c=n(93),f=n(60).Buffer,l=t.Uint8Array||function(){};var u=Object.create(n(30));u.inherits=n(2);var d=n(186),h=void 0;h=d&&d.debuglog?d.debuglog("stream"):function(){};var p,m=n(187),g=n(94);u.inherits(v,c);var y=["error","close","destroy","pause","resume"];function b(e,t){e=e||{};var r=t instanceof(o=o||n(21));this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var i=e.highWaterMark,s=e.readableHighWaterMark,a=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(s||0===s)?s:a,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,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=n(62).StringDecoder),this.decoder=new p(e.encoding),this.encoding=e.encoding)}function v(e){if(o=o||n(21),!(this instanceof v))return new v(e);this._readableState=new b(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 _(e,t,n,r,i){var o,s=e._readableState;null===t?(s.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,E(e)}(e,s)):(i||(o=function(e,t){var n;r=t,f.isBuffer(r)||r instanceof l||"string"==typeof t||void 0===t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk"));var r;return n}(s,t)),o?e.emit("error",o):s.objectMode||t&&t.length>0?("string"==typeof t||s.objectMode||Object.getPrototypeOf(t)===f.prototype||(t=function(e){return f.from(e)}(t)),r?s.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):w(e,s,t,!0):s.ended?e.emit("error",new Error("stream.push() after EOF")):(s.reading=!1,s.decoder&&!n?(t=s.decoder.write(t),s.objectMode||0!==t.length?w(e,s,t,!1):S(e,s)):w(e,s,t,!1))):r||(s.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=8388608?e=8388608:(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 E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(h("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i.nextTick(k,e):k(e))}function k(e){h("emit readable"),e.emit("readable"),R(e)}function S(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(T,e,t))}function T(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;eo.length?o.length:e;if(s===o.length?i+=o:i+=o.slice(0,e),0===(e-=s)){s===o.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=o.slice(s));break}++r}return t.length-=r,i}(e,t):function(e,t){var n=f.allocUnsafe(e),r=t.head,i=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var o=r.data,s=e>o.length?o.length:e;if(o.copy(n,n.length-e,0,s),0===(e-=s)){s===o.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=o.slice(s));break}++i}return t.length-=i,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function O(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i.nextTick(P,t,e))}function P(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function M(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return h("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?O(this):E(this),null;if(0===(e=A(e,t))&&t.ended)return 0===t.length&&O(this),null;var r,i=t.needReadable;return h("need readable",i),(0===t.length||t.length-e0?C(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&O(this)),null!==r&&this.emit("data",r),r},v.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},v.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,h("pipe count=%d opts=%j",o.pipesCount,t);var c=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?l:v;function f(t,r){h("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,h("cleanup"),e.removeListener("close",y),e.removeListener("finish",b),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",f),n.removeListener("end",l),n.removeListener("end",v),n.removeListener("data",m),d=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){h("onend"),e.end()}o.endEmitted?i.nextTick(c):n.once("end",c),e.on("unpipe",f);var u=function(e){return function(){var t=e._readableState;h("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,R(e))}}(n);e.on("drain",u);var d=!1;var p=!1;function m(t){h("ondata"),p=!1,!1!==e.write(t)||p||((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==M(o.pipes,e))&&!d&&(h("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,p=!0),n.pause())}function g(t){h("onerror",t),v(),e.removeListener("error",g),0===a(e,"error")&&e.emit("error",t)}function y(){e.removeListener("finish",b),v()}function b(){h("onfinish"),e.removeListener("close",y),v()}function v(){h("unpipe"),n.unpipe(e)}return n.on("data",m),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?s(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",g),e.once("close",y),e.once("finish",b),e.emit("pipe",n),o.flowing||(h("pipe resume"),n.resume()),e},v.prototype.unpipe=function(e){var t=this._readableState,n={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,n),this);if(!e){var r=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o=this._blockSize;){for(var o=this._blockOffset;o0;++s)this._length[s]+=a,(a=this._length[s]/4294967296|0)>0&&(this._length[s]-=4294967296*a);return this},o.prototype._update=function(){throw new Error("_update is not implemented")},o.prototype.digest=function(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 n=0;n<4;++n)this._length[n]=0;return t},o.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=o},function(e,t,n){var r=n(2),i=n(24),o=n(3).Buffer,s=[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],a=new Array(64);function c(){this.init(),this._w=a,i.call(this,64,56)}function f(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function u(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function d(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function h(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}r(c,i),c.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},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,i=0|this._b,o=0|this._c,a=0|this._d,c=0|this._e,p=0|this._f,m=0|this._g,g=0|this._h,y=0;y<16;++y)n[y]=e.readInt32BE(4*y);for(;y<64;++y)n[y]=0|(((t=n[y-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+n[y-7]+h(n[y-15])+n[y-16];for(var b=0;b<64;++b){var v=g+d(c)+f(c,p,m)+s[b]+n[b]|0,_=u(r)+l(r,i,o)|0;g=m,m=p,p=c,c=a+v|0,a=o,o=i,i=r,r=v+_|0}this._a=r+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=a+this._d|0,this._e=c+this._e|0,this._f=p+this._f|0,this._g=m+this._g|0,this._h=g+this._h|0},c.prototype._hash=function(){var e=o.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=c},function(e,t,n){var r=n(2),i=n(24),o=n(3).Buffer,s=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],a=new Array(160);function c(){this.init(),this._w=a,i.call(this,128,112)}function f(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function u(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function d(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function h(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function m(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function g(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}r(c,i),c.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},c.prototype._update=function(e){for(var t=this._w,n=0|this._ah,r=0|this._bh,i=0|this._ch,o=0|this._dh,a=0|this._eh,c=0|this._fh,b=0|this._gh,v=0|this._hh,_=0|this._al,w=0|this._bl,A=0|this._cl,E=0|this._dl,k=0|this._el,S=0|this._fl,T=0|this._gl,I=0|this._hl,x=0;x<32;x+=2)t[x]=e.readInt32BE(4*x),t[x+1]=e.readInt32BE(4*x+4);for(;x<160;x+=2){var R=t[x-30],C=t[x-30+1],O=h(R,C),P=p(C,R),M=m(R=t[x-4],C=t[x-4+1]),D=g(C,R),N=t[x-14],B=t[x-14+1],j=t[x-32],U=t[x-32+1],L=P+B|0,F=O+N+y(L,P)|0;F=(F=F+M+y(L=L+D|0,D)|0)+j+y(L=L+U|0,U)|0,t[x]=F,t[x+1]=L}for(var q=0;q<160;q+=2){F=t[q],L=t[q+1];var z=l(n,r,i),K=l(_,w,A),G=u(n,_),H=u(_,n),V=d(a,k),Q=d(k,a),W=s[q],Y=s[q+1],X=f(a,c,b),J=f(k,S,T),Z=I+Q|0,$=v+V+y(Z,I)|0;$=($=($=$+X+y(Z=Z+J|0,J)|0)+W+y(Z=Z+Y|0,Y)|0)+F+y(Z=Z+L|0,L)|0;var ee=H+K|0,te=G+z+y(ee,H)|0;v=b,I=T,b=c,T=S,c=a,S=k,a=o+$+y(k=E+Z|0,E)|0,o=i,E=A,i=r,A=w,r=n,w=_,n=$+te+y(_=Z+ee|0,Z)|0}this._al=this._al+_|0,this._bl=this._bl+w|0,this._cl=this._cl+A|0,this._dl=this._dl+E|0,this._el=this._el+k|0,this._fl=this._fl+S|0,this._gl=this._gl+T|0,this._hl=this._hl+I|0,this._ah=this._ah+n+y(this._al,_)|0,this._bh=this._bh+r+y(this._bl,w)|0,this._ch=this._ch+i+y(this._cl,A)|0,this._dh=this._dh+o+y(this._dl,E)|0,this._eh=this._eh+a+y(this._el,k)|0,this._fh=this._fh+c+y(this._fl,S)|0,this._gh=this._gh+b+y(this._gl,T)|0,this._hh=this._hh+v+y(this._hl,I)|0},c.prototype._hash=function(){var e=o.allocUnsafe(64);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=c},function(e,t,n){"use strict";var r=n(2),i=n(208),o=n(18),s=n(3).Buffer,a=n(101),c=n(64),f=n(65),l=s.alloc(128);function u(e,t){o.call(this,"digest"),"string"==typeof t&&(t=s.from(t));var n="sha512"===e||"sha384"===e?128:64;(this._alg=e,this._key=t,t.length>n)?t=("rmd160"===e?new c:f(e)).update(t).digest():t.lengthn||o!=o)throw new TypeError("Bad key length")}}).call(this,n(11).Buffer)},function(e,t,n){(function(t){var n;t.browser?n="utf-8":n=parseInt(t.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary";e.exports=n}).call(this,n(13))},function(e,t,n){var r=n(101),i=n(64),o=n(65),s=n(104),a=n(105),c=n(3).Buffer,f=c.alloc(128),l={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function u(e,t,n){var s=function(e){function t(t){return o(e).update(t).digest()}return"rmd160"===e||"ripemd160"===e?function(e){return(new i).update(e).digest()}:"md5"===e?r:t}(e),a="sha512"===e||"sha384"===e?128:64;t.length>a?t=s(t):t.length>>0},t.writeUInt32BE=function(e,t,n){e[0+n]=t>>>24,e[1+n]=t>>>16&255,e[2+n]=t>>>8&255,e[3+n]=255&t},t.ip=function(e,t,n,r){for(var i=0,o=0,s=6;s>=0;s-=2){for(var a=0;a<=24;a+=8)i<<=1,i|=t>>>a+s&1;for(a=0;a<=24;a+=8)i<<=1,i|=e>>>a+s&1}for(s=6;s>=0;s-=2){for(a=1;a<=25;a+=8)o<<=1,o|=t>>>a+s&1;for(a=1;a<=25;a+=8)o<<=1,o|=e>>>a+s&1}n[r+0]=i>>>0,n[r+1]=o>>>0},t.rip=function(e,t,n,r){for(var i=0,o=0,s=0;s<4;s++)for(var a=24;a>=0;a-=8)i<<=1,i|=t>>>a+s&1,i<<=1,i|=e>>>a+s&1;for(s=4;s<8;s++)for(a=24;a>=0;a-=8)o<<=1,o|=t>>>a+s&1,o<<=1,o|=e>>>a+s&1;n[r+0]=i>>>0,n[r+1]=o>>>0},t.pc1=function(e,t,n,r){for(var i=0,o=0,s=7;s>=5;s--){for(var a=0;a<=24;a+=8)i<<=1,i|=t>>a+s&1;for(a=0;a<=24;a+=8)i<<=1,i|=e>>a+s&1}for(a=0;a<=24;a+=8)i<<=1,i|=t>>a+s&1;for(s=1;s<=3;s++){for(a=0;a<=24;a+=8)o<<=1,o|=t>>a+s&1;for(a=0;a<=24;a+=8)o<<=1,o|=e>>a+s&1}for(a=0;a<=24;a+=8)o<<=1,o|=e>>a+s&1;n[r+0]=i>>>0,n[r+1]=o>>>0},t.r28shl=function(e,t){return e<>>28-t};var r=[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,n,i){for(var o=0,s=0,a=r.length>>>1,c=0;c>>r[c]&1;for(c=a;c>>r[c]&1;n[i+0]=o>>>0,n[i+1]=s>>>0},t.expand=function(e,t,n){var r=0,i=0;r=(1&e)<<5|e>>>27;for(var o=23;o>=15;o-=4)r<<=6,r|=e>>>o&63;for(o=11;o>=3;o-=4)i|=e>>>o&63,i<<=6;i|=(31&e)<<1|e>>>31,t[n+0]=r>>>0,t[n+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 n=0,r=0;r<4;r++){n<<=4,n|=i[64*r+(e>>>18-6*r&63)]}for(r=0;r<4;r++){n<<=4,n|=i[256+64*r+(t>>>18-6*r&63)]}return n>>>0};var o=[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,n=0;n>>o[n]&1;return t>>>0},t.padSplit=function(e,t,n){for(var r=e.toString(2);r.length>>1];n=o.r28shl(n,a),i=o.r28shl(i,a),o.pc2(n,i,e.keys,s)}},c.prototype._update=function(e,t,n,r){var i=this._desState,s=o.readUInt32BE(e,t),a=o.readUInt32BE(e,t+4);o.ip(s,a,i.tmp,0),s=i.tmp[0],a=i.tmp[1],"encrypt"===this.type?this._encrypt(i,s,a,i.tmp,0):this._decrypt(i,s,a,i.tmp,0),s=i.tmp[0],a=i.tmp[1],o.writeUInt32BE(n,s,r),o.writeUInt32BE(n,a,r+4)},c.prototype._pad=function(e,t){for(var n=e.length-t,r=t;r>>0,s=d}o.rip(a,s,r,i)},c.prototype._decrypt=function(e,t,n,r,i){for(var s=n,a=t,c=e.keys.length-2;c>=0;c-=2){var f=e.keys[c],l=e.keys[c+1];o.expand(s,e.tmp,0),f^=e.tmp[0],l^=e.tmp[1];var u=o.substitute(f,l),d=s;s=(a^o.permute(u))>>>0,a=d}o.rip(s,a,r,i)}},function(e,t,n){var r=n(32),i=n(3).Buffer,o=n(110);function s(e){var t=e._cipher.encryptBlockRaw(e._prev);return o(e._prev),t}t.encrypt=function(e,t){var n=Math.ceil(t.length/16),o=e._cache.length;e._cache=i.concat([e._cache,i.allocUnsafe(16*n)]);for(var a=0;ae;)n.ishrn(1);if(n.isEven()&&n.iadd(a),n.testn(1)||n.iadd(c),t.cmp(c)){if(!t.cmp(f))for(;n.mod(l).cmp(u);)n.iadd(h)}else for(;n.mod(o).cmp(d);)n.iadd(h);if(g(p=n.shrn(1))&&g(n)&&y(p)&&y(n)&&s.test(p)&&s.test(n))return n}}},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){var r=n(12),i=n(69);function o(e){this.rand=e||new i.Rand}e.exports=o,o.create=function(e){return new o(e)},o.prototype._randbelow=function(e){var t=e.bitLength(),n=Math.ceil(t/8);do{var i=new r(this.rand.generate(n))}while(i.cmp(e)>=0);return i},o.prototype._randrange=function(e,t){var n=t.sub(e);return e.add(this._randbelow(n))},o.prototype.test=function(e,t,n){var i=e.bitLength(),o=r.mont(e),s=new r(1).toRed(o);t||(t=Math.max(1,i/48|0));for(var a=e.subn(1),c=0;!a.testn(c);c++);for(var f=e.shrn(c),l=a.toRed(o);t>0;t--){var u=this._randrange(new r(2),a);n&&n(u);var d=u.toRed(o).redPow(f);if(0!==d.cmp(s)&&0!==d.cmp(l)){for(var h=1;h0;t--){var l=this._randrange(new r(2),s),u=e.gcd(l);if(0!==u.cmpn(1))return u;var d=l.toRed(i).redPow(c);if(0!==d.cmp(o)&&0!==d.cmp(f)){for(var h=1;h>8,s=255&i;o?n.push(o,s):n.push(s)}return n},r.zero2=i,r.toHex=o,r.encode=function(e,t){return"hex"===t?o(e):e}},function(e,t,n){"use strict";var r=t;r.base=n(47),r.short=n(234),r.mont=n(235),r.edwards=n(236)},function(e,t,n){"use strict";var r=n(17).rotr32;function i(e,t,n){return e&t^~e&n}function o(e,t,n){return e&t^e&n^t&n}function s(e,t,n){return e^t^n}t.ft_1=function(e,t,n,r){return 0===e?i(t,n,r):1===e||3===e?s(t,n,r):2===e?o(t,n,r):void 0},t.ch32=i,t.maj32=o,t.p32=s,t.s0_256=function(e){return r(e,2)^r(e,13)^r(e,22)},t.s1_256=function(e){return r(e,6)^r(e,11)^r(e,25)},t.g0_256=function(e){return r(e,7)^r(e,18)^e>>>3},t.g1_256=function(e){return r(e,17)^r(e,19)^e>>>10}},function(e,t,n){"use strict";var r=n(17),i=n(33),o=n(119),s=n(14),a=r.sum32,c=r.sum32_4,f=r.sum32_5,l=o.ch32,u=o.maj32,d=o.s0_256,h=o.s1_256,p=o.g0_256,m=o.g1_256,g=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 b(){if(!(this instanceof b))return new b;g.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=y,this.W=new Array(64)}r.inherits(b,g),e.exports=b,b.blockSize=512,b.outSize=256,b.hmacStrength=192,b.padLength=64,b.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r>6],i=0==(32&n);if(31==(31&n)){var o=n;for(n=0;128==(128&o);){if(o=e.readUInt8(t),e.isError(o))return o;n<<=7,n|=127&o}}else n&=31;return{cls:r,primitive:i,tag:n,tagStr:a.tag[n]}}function u(e,t,n){var r=e.readUInt8(n);if(e.isError(r))return r;if(!t&&128===r)return null;if(0==(128&r))return r;var i=127&r;if(i>4)return e.error("length octect is too long");r=0;for(var o=0;o=31)return r.error("Multi-octet tag encoding unsupported");t||(i|=32);return i|=a.tagClassByName[n||"universal"]<<6}(e,t,n,this.reporter);if(r.length<128)return(o=new i(2))[0]=s,o[1]=r.length,this._createEncoderBuffer([o,r]);for(var c=1,f=r.length;f>=256;f>>=8)c++;(o=new i(2+c))[0]=s,o[1]=128|c;f=1+c;for(var l=r.length;l>0;f--,l>>=8)o[f]=255&l;return this._createEncoderBuffer([o,r])},f.prototype._encodeStr=function(e,t){if("bitstr"===t)return this._createEncoderBuffer([0|e.unused,e.data]);if("bmpstr"===t){for(var n=new i(2*e.length),r=0;r=40)return this.reporter.error("Second objid identifier OOB");e.splice(0,2,40*e[0]+e[1])}var o=0;for(r=0;r=128;s>>=7)o++}var a=new i(o),c=a.length-1;for(r=e.length-1;r>=0;r--){s=e[r];for(a[c--]=127&s;(s>>=7)>0;)a[c--]=128|127&s}return this._createEncoderBuffer(a)},f.prototype._encodeTime=function(e,t){var n,r=new Date(e);return"gentime"===t?n=[l(r.getFullYear()),l(r.getUTCMonth()+1),l(r.getUTCDate()),l(r.getUTCHours()),l(r.getUTCMinutes()),l(r.getUTCSeconds()),"Z"].join(""):"utctime"===t?n=[l(r.getFullYear()%100),l(r.getUTCMonth()+1),l(r.getUTCDate()),l(r.getUTCHours()),l(r.getUTCMinutes()),l(r.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+t+" time is not supported yet"),this._encodeStr(n,"octstr")},f.prototype._encodeNull=function(){return this._createEncoderBuffer("")},f.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 n=e.toArray();!e.sign&&128&n[0]&&n.unshift(0),e=new i(n)}if(i.isBuffer(e)){var r=e.length;0===e.length&&r++;var o=new i(r);return e.copy(o),0===e.length&&(o[0]=0),this._createEncoderBuffer(o)}if(e<128)return this._createEncoderBuffer(e);if(e<256)return this._createEncoderBuffer([0,e]);r=1;for(var s=e;s>=256;s>>=8)r++;for(s=(o=new Array(r)).length-1;s>=0;s--)o[s]=255&e,e>>=8;return 128&o[0]&&o.unshift(0),this._createEncoderBuffer(new i(o))},f.prototype._encodeBool=function(e){return this._createEncoderBuffer(e?255:0)},f.prototype._use=function(e,t){return"function"==typeof e&&(e=e(t)),e._getEncoder("der").tree},f.prototype._skipDefault=function(e,t,n){var r,i=this._baseState;if(null===i.default)return!1;var o=e.join();if(void 0===i.defaultBuffer&&(i.defaultBuffer=this._encodeValue(i.default,t,n).join()),o.length!==i.defaultBuffer.length)return!1;for(r=0;r(0,o.default)(n(138)));let P;t.ContentHelpers=O;let M=()=>new s.MemoryCryptoStore}).call(this,n(6))},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MemoryStore=s;var i=n(49),o=r(n(8));function s(e){e=e||{},this.rooms={},this.groups={},this.users={},this.syncToken=null,this.filters={},this.accountData={},this.localStorage=e.localStorage,this._oobMembers={},this._clientOptions={}}s.prototype={getSyncToken:function(){return this.syncToken},isNewlyCreated:function(){return Promise.resolve(!0)},setSyncToken:function(e){this.syncToken=e},storeGroup:function(e){this.groups[e.groupId]=e},getGroup:function(e){return this.groups[e]||null},getGroups:function(){return o.values(this.groups)},storeRoom:function(e){this.rooms[e.roomId]=e,e.currentState.on("RoomState.members",this._onRoomMember.bind(this));const t=this;e.currentState.getMembers().forEach((function(n){t._onRoomMember(null,e.currentState,n)}))},_onRoomMember:function(e,t,n){if("invite"===n.membership)return;const r=this.users[n.userId]||new i.User(n.userId);n.name&&(r.setDisplayName(n.name),n.events.member&&r.setRawDisplayName(n.events.member.getDirectionalContent().displayname)),n.events.member&&n.events.member.getContent().avatar_url&&r.setAvatarUrl(n.events.member.getContent().avatar_url),this.users[r.userId]=r},getRoom:function(e){return this.rooms[e]||null},getRooms:function(){return o.values(this.rooms)},removeRoom:function(e){this.rooms[e]&&this.rooms[e].removeListener("RoomState.members",this._onRoomMember),delete this.rooms[e]},getRoomSummaries:function(){return o.map(o.values(this.rooms),(function(e){return e.summary}))},storeUser:function(e){this.users[e.userId]=e},getUser:function(e){return this.users[e]||null},getUsers:function(){return o.values(this.users)},scrollback:function(e,t){return[]},storeEvents:function(e,t,n,r){},storeFilter:function(e){e&&(this.filters[e.userId]||(this.filters[e.userId]={}),this.filters[e.userId][e.filterId]=e)},getFilter:function(e,t){return this.filters[e]&&this.filters[e][t]?this.filters[e][t]:null},getFilterIdByName:function(e){if(!this.localStorage)return null;try{return this.localStorage.getItem("mxjssdk_memory_filter_"+e)}catch(e){}return null},setFilterIdByName:function(e,t){if(this.localStorage)try{this.localStorage.setItem("mxjssdk_memory_filter_"+e,t)}catch(e){}},storeAccountDataEvents:function(e){const t=this;e.forEach((function(e){t.accountData[e.getType()]=e}))},getAccountData:function(e){return this.accountData[e]},setSyncData:function(e){return Promise.resolve()},wantsSave:function(){return!1},save:function(e){},startup:function(){return Promise.resolve()},getSavedSync:function(){return Promise.resolve(null)},getSavedSyncToken:function(){return Promise.resolve(null)},deleteAllData:function(){return this.rooms={},this.users={},this.syncToken=null,this.filters={},this.accountData={},Promise.resolve()},getOutOfBandMembers:function(e){return Promise.resolve(this._oobMembers[e]||null)},setOutOfBandMembers:function(e,t){return this._oobMembers[e]=t,Promise.resolve()},clearOutOfBandMembers:function(){return this._oobMembers={},Promise.resolve()},getClientOptions:function(){return Promise.resolve(this._clientOptions)},storeClientOptions:function(e){return this._clientOptions=Object.assign({},e),Promise.resolve()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SERVICE_TYPES=void 0;const r=Object.freeze({IS:"SERVICE_TYPE_IS",IM:"SERVICE_TYPE_IM"});t.SERVICE_TYPES=r},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.Room=g;var i=n(10),o=n(134),s=n(25),a=n(51),c=r(n(8)),f=n(19),l=n(78),u=n(286),d=n(4),h=n(79);const p=["1","2","3","4","5"];function m(e,t,n){const r={content:{},type:"m.receipt",room_id:t.getRoomId()};return r.content[t.getId()]={},r.content[t.getId()][n]={},r.content[t.getId()][n][e]={ts:t.getTs()},new f.MatrixEvent(r)}function g(e,t,n,r){if((r=r||{}).pendingEventOrdering=r.pendingEventOrdering||"chronological",this.reEmitter=new h.ReEmitter(this),-1===["chronological","detached"].indexOf(r.pendingEventOrdering))throw new Error("opts.pendingEventOrdering MUST be either 'chronological' or 'detached'. Got: '"+r.pendingEventOrdering+"'");this.myUserId=n,this.roomId=e,this.name=e,this.tags={},this.accountData={},this.summary=null,this.storageToken=r.storageToken,this._opts=r,this._txnToEvent={},this._receipts={},this._receiptCacheByEventId={},this._realReceipts={},this._notificationCounts={},this._timelineSets=[new o.EventTimelineSet(this,r)],this.reEmitter.reEmit(this.getUnfilteredTimelineSet(),["Room.timeline","Room.timelineReset"]),this._fixUpLegacyTimelineFields(),this._filteredTimelineSets={},"detached"==this._opts.pendingEventOrdering&&(this._pendingEventList=[]),this._blacklistUnverifiedDevices=null,this._selfMembership=null,this._summaryHeroes=null,this._client=t,this._opts.lazyLoadMembers?this._membersPromise=null:this._membersPromise=Promise.resolve()}c.inherits(g,i.EventEmitter),g.prototype.getVersion=function(){const e=this.currentState.getStateEvents("m.room.create","");if(!e)return d.logger.warn("Room "+this.room_id+" does not have an m.room.create event"),"1";const t=e.getContent().room_version;return void 0===t?"1":t},g.prototype.shouldUpgradeToVersion=function(){return p.includes(this.getVersion())?null:"5"},g.prototype.getRecommendedVersion=async function(){let e=(await this._client.getCapabilities())["m.room_versions"];if(!e){e={default:"5",available:{}};for(const t of p)e.available[t]="stable"}let t=this._checkVersionAgainstCapability(e);if(t.urgent&&t.needsUpgrade){if(d.logger.warn("Refreshing room version capability because the server looks to be supporting a newer room version we don't know about."),e=(await this._client.getCapabilities(!0))["m.room_versions"],!e)return d.logger.warn("No room version capability - assuming upgrade required."),t;t=this._checkVersionAgainstCapability(e)}return t},g.prototype._checkVersionAgainstCapability=function(e){const t=this.getVersion();d.logger.log(`[${this.roomId}] Current version: ${t}`),d.logger.log(`[${this.roomId}] Version capability: `,e);const n={version:t,needsUpgrade:!1,urgent:!1};return t===e.default?n:Object.keys(e.available).filter(t=>"stable"===e.available[t]).includes(t)?n:(n.version=e.default,n.needsUpgrade=!0,n.urgent=!!this.getVersion().match(/^[0-9]+[0-9.]*$/g),n.urgent?d.logger.warn(`URGENT upgrade required on ${this.roomId}`):d.logger.warn(`Non-urgent upgrade required on ${this.roomId}`),n)},g.prototype.userMayUpgradeRoom=function(e){return this.currentState.maySendStateEvent("m.room.tombstone",e)},g.prototype.getPendingEvents=function(){if("detached"!==this._opts.pendingEventOrdering)throw new Error("Cannot call getPendingEvents with pendingEventOrdering == "+this._opts.pendingEventOrdering);return this._pendingEventList},g.prototype.hasPendingEvent=function(e){if("detached"!==this._opts.pendingEventOrdering)throw new Error("Cannot call hasPendingEvent with pendingEventOrdering == "+this._opts.pendingEventOrdering);return this._pendingEventList.some(t=>t.getId()===e)},g.prototype.getLiveTimeline=function(){return this.getUnfilteredTimelineSet().getLiveTimeline()},g.prototype.getLastActiveTimestamp=function(){const e=this.getLiveTimeline().getEvents();if(e.length){return e[e.length-1].getTs()}return Number.MIN_SAFE_INTEGER},g.prototype.getMyMembership=function(){return this._selfMembership},g.prototype.getDMInviter=function(){if(this.myUserId){const e=this.getMember(this.myUserId);if(e)return e.getDMInviter()}if("invite"===this._selfMembership){if(2==this.getInvitedAndJoinedMemberCount()&&this._summaryHeroes.length)return this._summaryHeroes[0]}},g.prototype.guessDMUserId=function(){const e=this.getMember(this.myUserId);if(e){const t=e.getDMInviter();if(t)return t}if(Array.isArray(this._summaryHeroes)&&this._summaryHeroes.length)return this._summaryHeroes[0];const t=this.currentState.getMembers().find(e=>e.userId!==this.myUserId);return t?t.userId:this.myUserId},g.prototype.getAvatarFallbackMember=function(){if(this.getInvitedAndJoinedMemberCount()>2)return;const e=Array.isArray(this._summaryHeroes)&&this._summaryHeroes.length;if(e){const e=this._summaryHeroes.map(e=>this.getMember(e)).find(e=>!!e);if(e)return e}const t=this.currentState.getMembers();if(t.length<=2){const e=t.find(e=>e.userId!==this.myUserId);if(e)return e}if(e){const e=this._summaryHeroes.map(e=>this._client.getUser(e)).find(e=>!!e);if(e){const t=new l.RoomMember(this.roomId,e.userId);return t.user=e,t}}},g.prototype.updateMyMembership=function(e){const t=this._selfMembership;this._selfMembership=e,t!==e&&("leave"===e&&this._cleanupAfterLeaving(),this.emit("Room.myMembership",this,e,t))},g.prototype._loadMembersFromServer=async function(){const e=this._client.store.getSyncToken(),t=c.encodeParams({not_membership:"leave",at:e}),n=c.encodeUri("/rooms/$roomId/members?"+t,{$roomId:this.roomId}),r=this._client._http;return(await r.authedRequest(void 0,"GET",n)).chunk},g.prototype._loadMembers=async function(){let e=!1,t=await this._client.store.getOutOfBandMembers(this.roomId);return null===t&&(e=!0,t=await this._loadMembersFromServer(),d.logger.log(`LL: got ${t.length} `+`members from server for room ${this.roomId}`)),{memberEvents:t.map(this._client.getEventMapper()),fromServer:e}},g.prototype.loadMembersIfNeeded=function(){if(this._membersPromise)return this._membersPromise;this.currentState.markOutOfBandMembersStarted();const e=this._loadMembers().then(e=>(this.currentState.setOutOfBandMembers(e.memberEvents),this._client.isCryptoEnabled()&&this._client.isRoomEncrypted(this.roomId)&&this._client._crypto.trackRoomDevices(this.roomId),e.fromServer)).catch(e=>{throw this._membersPromise=null,this.currentState.markOutOfBandMembersFailed(),e});return e.then(e=>{if(e){const e=this.currentState.getMembers().filter(e=>e.isOutOfBand()).map(e=>e.events.member.event);return d.logger.log(`LL: telling store to write ${e.length}`+` members for room ${this.roomId}`),this._client.store.setOutOfBandMembers(this.roomId,e).catch(e=>{d.logger.log("LL: storing OOB room members failed, oh well",e)})}}).catch(e=>{d.logger.error(e)}),this._membersPromise=e,this._membersPromise},g.prototype.clearLoadedMembersIfNeeded=async function(){this._opts.lazyLoadMembers&&this._membersPromise&&(await this.loadMembersIfNeeded(),await this._client.store.clearOutOfBandMembers(this.roomId),this.currentState.clearOutOfBandMembers(),this._membersPromise=null)},g.prototype._cleanupAfterLeaving=function(){this.clearLoadedMembersIfNeeded().catch(e=>{d.logger.error("error after clearing loaded members from "+`room ${this.roomId} after leaving`),d.logger.log(e)})},g.prototype.resetLiveTimeline=function(e,t){for(let n=0;ne.isUnverified()))return!0}return!1},g.prototype.getTimelineSets=function(){return this._timelineSets},g.prototype.getUnfilteredTimelineSet=function(){return this._timelineSets[0]},g.prototype.getTimelineForEvent=function(e){return this.getUnfilteredTimelineSet().getTimelineForEvent(e)},g.prototype.addTimeline=function(){return this.getUnfilteredTimelineSet().addTimeline()},g.prototype.findEventById=function(e){return this.getUnfilteredTimelineSet().findEventById(e)},g.prototype.getUnreadNotificationCount=function(e){return e=e||"total",this._notificationCounts[e]},g.prototype.setUnreadNotificationCount=function(e,t){this._notificationCounts[e]=t},g.prototype.setSummary=function(e){const t=e["m.heroes"],n=e["m.joined_member_count"],r=e["m.invited_member_count"];Number.isInteger(n)&&this.currentState.setJoinedMemberCount(n),Number.isInteger(r)&&this.currentState.setInvitedMemberCount(r),Array.isArray(t)&&(this._summaryHeroes=t.filter(e=>e!==this.myUserId))},g.prototype.setBlacklistUnverifiedDevices=function(e){this._blacklistUnverifiedDevices=e},g.prototype.getBlacklistUnverifiedDevices=function(){return this._blacklistUnverifiedDevices},g.prototype.getAvatarUrl=function(e,t,n,r,i){const o=this.currentState.getStateEvents("m.room.avatar","");if(void 0===i&&(i=!0),!o&&!i)return null;const s=o?o.getContent().url:null;return s?(0,a.getHttpUriForMxc)(e,s,t,n,r):i?(0,a.getIdenticonUri)(e,this.roomId,t,n):null},g.prototype.getAliases=function(){const e=[],t=this.currentState.getStateEvents("m.room.aliases");if(t)for(let n=0;n"string"==typeof e&&("#"===e[0]&&!!e.endsWith(`:${r.getStateKey()}`)));Array.prototype.push.apply(e,t)}}return e},g.prototype.getCanonicalAlias=function(){const e=this.currentState.getStateEvents("m.room.canonical_alias","");return e?e.getContent().alias:null},g.prototype.addEventsToTimeline=function(e,t,n,r){n.getTimelineSet().addEventsToTimeline(e,t,n,r)},g.prototype.getMember=function(e){return this.currentState.getMember(e)},g.prototype.getJoinedMembers=function(){return this.getMembersWithMembership("join")},g.prototype.getJoinedMemberCount=function(){return this.currentState.getJoinedMemberCount()},g.prototype.getInvitedMemberCount=function(){return this.currentState.getInvitedMemberCount()},g.prototype.getInvitedAndJoinedMemberCount=function(){return this.getInvitedMemberCount()+this.getJoinedMemberCount()},g.prototype.getMembersWithMembership=function(e){return c.filter(this.currentState.getMembers(),(function(t){return t.membership===e}))},g.prototype.getEncryptionTargetMembers=async function(){await this.loadMembersIfNeeded();let e=this.getMembersWithMembership("join");return this.shouldEncryptForInvitedMembers()&&(e=e.concat(this.getMembersWithMembership("invite"))),e},g.prototype.shouldEncryptForInvitedMembers=function(){const e=this.currentState.getStateEvents("m.room.history_visibility","");return e&&e.getContent()&&"joined"!==e.getContent().history_visibility},g.prototype.getDefaultRoomName=function(e){return b(this,e,!0)},g.prototype.hasMembershipState=function(e,t){const n=this.getMember(e);return!!n&&n.membership===t},g.prototype.getOrCreateFilteredTimelineSet=function(e){if(this._filteredTimelineSets[e.filterId])return this._filteredTimelineSets[e.filterId];const t=Object.assign({filter:e},this._opts),n=new o.EventTimelineSet(this,t);this.reEmitter.reEmit(n,["Room.timeline","Room.timelineReset"]),this._filteredTimelineSets[e.filterId]=n,this._timelineSets.push(n);const r=this.getLiveTimeline();r.getEvents().forEach((function(e){n.addLiveEvent(e)}));let i=r;for(;i.getNeighbouringTimeline(s.EventTimeline.BACKWARDS);)i=i.getNeighbouringTimeline(s.EventTimeline.BACKWARDS);return n.getLiveTimeline().setPaginationToken(i.getPaginationToken(s.EventTimeline.BACKWARDS),s.EventTimeline.BACKWARDS),n},g.prototype.removeFilteredTimelineSet=function(e){const t=this._filteredTimelineSets[e.filterId];delete this._filteredTimelineSets[e.filterId];const n=this._timelineSets.indexOf(t);n>-1&&this._timelineSets.splice(n,1)},g.prototype._addLiveEvent=function(e,t){if(e.isRedaction()){const t=e.event.redacts,n=this.getUnfilteredTimelineSet().findEventById(t);if(n){if(n.makeRedacted(e),n.getStateKey()){this.currentState.getStateEvents(n.getType(),n.getStateKey()).getId()===n.getId()&&this.currentState.setStateEvents([n])}this.emit("Room.redaction",e,this)}}if(e.getUnsigned().transaction_id){const t=this._txnToEvent[e.getUnsigned().transaction_id];if(t)return void this._handleRemoteEcho(e,t)}for(let n=0;ne.status===f.EventStatus.NOT_SENT)&&(d.logger.warn("Setting event as NOT_SENT due to messages in the same state"),e.setStatus(f.EventStatus.NOT_SENT)),this._pendingEventList.push(e),e.isRelation()&&this._aggregateNonLiveRelation(e),e.isRedaction()){const t=e.event.redacts;let n=this._pendingEventList&&this._pendingEventList.find(e=>e.getId()===t);n||(n=this.getUnfilteredTimelineSet().findEventById(t)),n&&(n.markLocallyRedacted(e),this.emit("Room.redaction",e,this))}}else for(let t=0;t{const n=e.getMember(t);return n?n.name:t});else{let n=e.currentState.getMembers().filter(e=>e.userId!==t&&("invite"===e.membership||"join"===e.membership));n.sort((e,t)=>e.userId.localeCompare(t.userId)),n=n.slice(0,5),o=n.map(e=>e.name)}if(i)return v(o,i);if("join"==e.getMyMembership()){const t=e.currentState.getStateEvents("m.room.third_party_invite");if(t&&t.length){return`Inviting ${v(t.map(e=>e.getContent().display_name))}`}}let s=o;return s.length||(s=e.currentState.getMembers().filter(e=>e.userId!==t&&"invite"!==e.membership&&"join"!==e.membership).map(e=>e.name)),s.length?`Empty room (was ${v(s)})`:"Empty room"}function v(e,t=e.length+1){const n=t-1;if(e.length){if(1===e.length&&n<=1)return e[0];if(2===e.length&&n<=2)return`${e[0]} and ${e[1]}`;return n>1?`${e[0]} and ${n} others`:`${e[0]} and 1 other`}return"Empty room"}y[f.EventStatus.ENCRYPTING]=[f.EventStatus.SENDING,f.EventStatus.NOT_SENT],y[f.EventStatus.SENDING]=[f.EventStatus.ENCRYPTING,f.EventStatus.QUEUED,f.EventStatus.NOT_SENT,f.EventStatus.SENT],y[f.EventStatus.QUEUED]=[f.EventStatus.SENDING,f.EventStatus.CANCELLED],y[f.EventStatus.SENT]=[],y[f.EventStatus.NOT_SENT]=[f.EventStatus.SENDING,f.EventStatus.QUEUED,f.EventStatus.CANCELLED],y[f.EventStatus.CANCELLED]=[],g.prototype.updatePendingEvent=function(e,t,n){if(d.logger.log(`setting pendingEvent status to ${t} in ${e.getRoomId()}`),t==f.EventStatus.SENT&&!n)throw new Error("updatePendingEvent called with status=SENT, but no new event id");if(t==f.EventStatus.SENT){if(this.getUnfilteredTimelineSet().eventIdToTimeline(n))return}const r=e.status,i=e.getId();if(!r)throw new Error("updatePendingEventStatus called on an event which is not a local echo.");const o=y[r];if(!o||o.indexOf(t)<0)throw new Error("Invalid EventStatus transition "+r+"->"+t);if(e.setStatus(t),t==f.EventStatus.SENT){e.replaceLocalEventId(n);for(let e=0;ee.getId()===i);if(-1!==e){const[t]=this._pendingEventList.splice(e,1);t.isRedaction()&&this._revertRedactionLocalEcho(t)}}this.removeEvent(i)}this.emit("Room.localEchoUpdated",e,this,i,r)},g.prototype._revertRedactionLocalEcho=function(e){const t=e.event.redacts;if(!t)return;const n=this.getUnfilteredTimelineSet().findEventById(t);n&&(n.unmarkLocallyRedacted(),this.emit("Room.redactionCancelled",e,this),n.isRelation()&&this._aggregateNonLiveRelation(n))},g.prototype.addLiveEvents=function(e,t){let n;if(t&&-1===["replace","ignore"].indexOf(t))throw new Error("duplicateStrategy MUST be either 'replace' or 'ignore'");for(n=0;n=0;--e){const r=this.timeline[e];if(r.getId()===t)return!1;if(r.getId()===n)return!0}return!1},g.prototype.getReceiptsForEvent=function(e){return this._receiptCacheByEventId[e.getId()]||[]},g.prototype.addReceipt=function(e,t){void 0===t&&(t=!1),t||this._addReceiptsToStructure(e,this._realReceipts),this._addReceiptsToStructure(e,this._receipts),this._receiptCacheByEventId=this._buildReceiptCache(this._receipts),this.emit("Room.receipt",e,this)},g.prototype._addReceiptsToStructure=function(e,t){const n=this;c.keys(e.getContent()).forEach((function(r){c.keys(e.getContent()[r]).forEach((function(i){c.keys(e.getContent()[r][i]).forEach((function(o){const s=e.getContent()[r][i][o];t[i]||(t[i]={});const a=t[i][o];if(a){const e=n.getUnfilteredTimelineSet().compareEventOrdering(a.eventId,r);if(null!==e&&e>=0)return}else t[i][o]={};t[i][o]={eventId:r,data:s}}))}))}))},g.prototype._buildReceiptCache=function(e){const t={};return c.keys(e).forEach((function(n){c.keys(e[n]).forEach((function(r){const i=e[n][r];t[i.eventId]||(t[i.eventId]=[]),t[i.eventId].push({userId:r,type:n,data:i.data})}))})),t},g.prototype._addLocalEchoReceipt=function(e,t,n){this.addReceipt(m(e,t,n),!0)},g.prototype.addTags=function(e){this.tags=e.getContent().tags||{},this.emit("Room.tags",e,this)},g.prototype.addAccountData=function(e){for(let t=0;t{this.aggregateRelations(e)});const t=e.getRelation();if(!t)return;const n=t.event_id,r=t.rel_type,i=e.getType();let o=this._relations[n];o||(o=this._relations[n]={});let a=o[r];a||(a=o[r]={});let c,l=a[i],u=!1;l||(l=a[i]=new f.Relations(r,i,this.room),u=!0,c=this.findEventById(n),c&&l.setTargetEvent(c)),l.addEvent(e),u&&c&&c.emit("Event.relationsCreated",r,i)}},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.RoomState=c;var i=n(10),o=n(78),s=n(4),a=r(n(8));function c(e,t){this.roomId=e,this.members={},this.events={},this.paginationToken=null,this._sentinels={},this._updateModifiedTime(),this._displayNameToUserIds={},this._userIdsToDisplayNames={},this._tokenToInvite={},this._joinedMemberCount=null,this._summaryJoinedMemberCount=null,this._invitedMemberCount=null,this._summaryInvitedMemberCount=null,t||(t={status:1}),this._oobMemberFlags=t}function f(e,t,n){const r=e._userIdsToDisplayNames[t];if(delete e._userIdsToDisplayNames[t],r){const n=a.removeHiddenChars(r),i=e._displayNameToUserIds[n];if(i){const r=i.filter(e=>e!==t);e._displayNameToUserIds[n]=r}}e._userIdsToDisplayNames[t]=n;const i=n&&a.removeHiddenChars(n);i&&(e._displayNameToUserIds[i]||(e._displayNameToUserIds[i]=[]),e._displayNameToUserIds[i].push(t))}a.inherits(c,i.EventEmitter),c.prototype.getJoinedMemberCount=function(){return null!==this._summaryJoinedMemberCount?this._summaryJoinedMemberCount:(null===this._joinedMemberCount&&(this._joinedMemberCount=this.getMembers().reduce((e,t)=>"join"===t.membership?e+1:e,0)),this._joinedMemberCount)},c.prototype.setJoinedMemberCount=function(e){this._summaryJoinedMemberCount=e},c.prototype.getInvitedMemberCount=function(){return null!==this._summaryInvitedMemberCount?this._summaryInvitedMemberCount:(null===this._invitedMemberCount&&(this._invitedMemberCount=this.getMembers().reduce((e,t)=>"invite"===t.membership?e+1:e,0)),this._invitedMemberCount)},c.prototype.setInvitedMemberCount=function(e){this._summaryInvitedMemberCount=e},c.prototype.getMembers=function(){return a.values(this.members)},c.prototype.getMembersExcept=function(e){return a.values(this.members).filter(t=>!e.includes(t.userId))},c.prototype.getMember=function(e){return this.members[e]||null},c.prototype.getSentinelMember=function(e){if(!e)return null;let t=this._sentinels[e];if(void 0===t){t=new o.RoomMember(this.roomId,e);const n=this.members[e];n&&t.setMembershipEvent(n.events.member,this),this._sentinels[e]=t}return t},c.prototype.getStateEvents=function(e,t){if(!this.events[e])return void 0===t?[]:null;if(void 0===t)return a.values(this.events[e]);const n=this.events[e][t];return n||null},c.prototype.clone=function(){const e=new c(this.roomId,this._oobMemberFlags),t=this._oobMemberFlags.status;return this._oobMemberFlags.status=1,Object.values(this.events).forEach(t=>{const n=Object.values(t);e.setStateEvents(n)}),this._oobMemberFlags.status=t,null!==this._summaryInvitedMemberCount&&e.setInvitedMemberCount(this.getInvitedMemberCount()),null!==this._summaryJoinedMemberCount&&e.setJoinedMemberCount(this.getJoinedMemberCount()),3==this._oobMemberFlags.status&&this.getMembers().forEach(t=>{if(t.isOutOfBand()){e.getMember(t.userId).markOutOfBand()}}),e},c.prototype.setUnknownStateEvents=function(e){const t=e.filter(e=>void 0===this.events[e.getType()]||void 0===this.events[e.getType()][e.getStateKey()]);this.setStateEvents(t)},c.prototype.setStateEvents=function(e){const t=this;this._updateModifiedTime(),a.forEach(e,(function(e){e.getRoomId()===t.roomId&&e.isState()&&(t._setStateEvent(e),"m.room.member"===e.getType()&&(f(t,e.getStateKey(),e.getContent().displayname),function(e,t){if(!t.getContent().third_party_invite)return;const n=(t.getContent().third_party_invite.signed||{}).token;if(!n)return;if(!e.getStateEvents("m.room.third_party_invite",n))return;e._tokenToInvite[n]=t}(t,e)),t.emit("RoomState.events",e,t))})),a.forEach(e,(function(e){if(e.getRoomId()===t.roomId&&e.isState())if("m.room.member"===e.getType()){const n=e.getStateKey();"leave"!==e.getContent().membership&&"ban"!==e.getContent().membership||(e.getContent().avatar_url=e.getContent().avatar_url||e.getPrevContent().avatar_url,e.getContent().displayname=e.getContent().displayname||e.getPrevContent().displayname);const r=t._getOrCreateMember(n,e);r.setMembershipEvent(e,t),t._updateMember(r),t.emit("RoomState.members",e,t,r)}else if("m.room.power_levels"===e.getType()){const n=a.values(t.members);a.forEach(n,(function(n){n.setPowerLevelEvent(e),t.emit("RoomState.members",e,t,n)})),t._sentinels={}}}))},c.prototype._getOrCreateMember=function(e,t){let n=this.members[e];return n||(n=new o.RoomMember(this.roomId,e),this.members[e]=n,this.emit("RoomState.newMember",t,this,n)),n},c.prototype._setStateEvent=function(e){void 0===this.events[e.getType()]&&(this.events[e.getType()]={}),this.events[e.getType()][e.getStateKey()]=e},c.prototype._updateMember=function(e){const t=this.getStateEvents("m.room.power_levels","");t&&e.setPowerLevelEvent(t),delete this._sentinels[e.userId],this.members[e.userId]=e,this._joinedMemberCount=null,this._invitedMemberCount=null},c.prototype.needsOutOfBandMembers=function(){return 1===this._oobMemberFlags.status},c.prototype.markOutOfBandMembersStarted=function(){1===this._oobMemberFlags.status&&(this._oobMemberFlags.status=2)},c.prototype.markOutOfBandMembersFailed=function(){2===this._oobMemberFlags.status&&(this._oobMemberFlags.status=1)},c.prototype.clearOutOfBandMembers=function(){let e=0;Object.keys(this.members).forEach(t=>{this.members[t].isOutOfBand()&&(++e,delete this.members[t])}),s.logger.log(`LL: RoomState removed ${e} members...`),this._oobMemberFlags.status=1},c.prototype.setOutOfBandMembers=function(e){s.logger.log(`LL: RoomState about to set ${e.length} OOB members ...`),2===this._oobMemberFlags.status&&(s.logger.log("LL: RoomState put in OOB_STATUS_FINISHED state ..."),this._oobMemberFlags.status=3,e.forEach(e=>this._setOutOfBandMember(e)))},c.prototype._setOutOfBandMember=function(e){if("m.room.member"!==e.getType())return;const t=e.getStateKey(),n=this.getMember(t);if(n&&!n.isOutOfBand())return;const r=this._getOrCreateMember(t,e);r.setMembershipEvent(e,this),r.markOutOfBand(),f(this,r.userId,r.name),this._setStateEvent(e),this._updateMember(r),this.emit("RoomState.members",e,this,r)},c.prototype.setTypingEvent=function(e){a.forEach(a.values(this.members),(function(t){t.setTypingEvent(e)}))},c.prototype.getInviteForThreePidToken=function(e){return this._tokenToInvite[e]||null},c.prototype._updateModifiedTime=function(){this._modified=Date.now()},c.prototype.getLastModifiedTime=function(){return this._modified},c.prototype.getUserIdsWithDisplayName=function(e){return this._displayNameToUserIds[a.removeHiddenChars(e)]||[]},c.prototype.maySendRedactionForEvent=function(e,t){const n=this.getMember(t);if(!n||"leave"===n.membership)return!1;if(e.status||e.isRedacted())return!1;const r=this.maySendEvent("m.room.redaction",t);return e.getSender()===t?r:this._hasSufficientPowerLevelFor("redact",n.powerLevel)},c.prototype._hasSufficientPowerLevelFor=function(e,t){const n=this.getStateEvents("m.room.power_levels","");let r={};n&&(r=n.getContent());let i=50;return a.isNumber(r[e])&&(i=r[e]),t>=i},c.prototype.maySendMessage=function(e){return this._maySendEventOfType("m.room.message",e,!1)},c.prototype.maySendEvent=function(e,t){return this._maySendEventOfType(e,t,!1)},c.prototype.mayClientSendStateEvent=function(e,t){return!t.isGuest()&&this.maySendStateEvent(e,t.credentials.userId)},c.prototype.maySendStateEvent=function(e,t){return this._maySendEventOfType(e,t,!0)},c.prototype._maySendEventOfType=function(e,t,n){const r=this.getStateEvents("m.room.power_levels","");let i,o={},s=0,a=0,c=0;if(r){i=r.getContent(),o=i.events||{},s=Number.isFinite(i.state_default)?i.state_default:50;const e=i.users&&i.users[t];Number.isFinite(e)?c=e:Number.isFinite(i.users_default)&&(c=i.users_default),Number.isFinite(i.events_default)&&(a=i.events_default)}let f=n?s:a;return Number.isFinite(o[e])&&(f=o[e]),c>=f},c.prototype.mayTriggerNotifOfType=function(e,t){const n=this.getMember(t);if(!n)return!1;const r=this.getStateEvents("m.room.power_levels","");let i=50;return r&&r.getContent()&&r.getContent().notifications&&a.isNumber(r.getContent().notifications[e])&&(i=r.getContent().notifications[e]),n.powerLevel>=i}},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.Group=s;var i=r(n(8)),o=n(10);function s(e){this.groupId=e,this.name=null,this.avatarUrl=null,this.myMembership=null,this.inviter=null}i.inherits(s,o.EventEmitter),s.prototype.setProfile=function(e,t){this.name===e&&this.avatarUrl===t||(this.name=e||this.groupId,this.avatarUrl=t,this.emit("Group.profile",this))},s.prototype.setMyMembership=function(e){this.myMembership!==e&&(this.myMembership=e,this.emit("Group.myMembership",this))},s.prototype.setInviter=function(e){this.inviter=e}},function(e,t,n){"use strict";(function(e){var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MatrixCall=a,t.setAudioOutput=function(e){I=e},t.setAudioInput=function(e){x=e},t.setVideoInput=function(e){R=e},t.createNewMatrixCall=function(t,n,r){const o=e.window,s=e.document;if(!o||!s)return null;const c={};c.isOpenWebRTC=function(){const e=s.getElementById("script");if(!e||!e.length)return!1;for(let t=0;t-1)return!0;return!1};const f=o.navigator.getUserMedia||o.navigator.webkitGetUserMedia||o.navigator.mozGetUserMedia;f&&(c.getUserMedia=function(){return f.apply(o.navigator,arguments)});try{c.RtcPeerConnection=o.RTCPeerConnection||o.webkitRTCPeerConnection||o.mozRTCPeerConnection,c.RtcSessionDescription=o.RTCSessionDescription||o.webkitRTCSessionDescription||o.mozRTCSessionDescription,c.RtcIceCandidate=o.RTCIceCandidate||o.webkitRTCIceCandidate||o.mozRTCIceCandidate,c.vendor=null,o.mozRTCPeerConnection?c.vendor="mozilla":o.webkitRTCPeerConnection?c.vendor="webkit":o.RTCPeerConnection&&(c.vendor="generic")}catch(e){return i.logger.error("Failed to set up WebRTC object: possible browser interference?"),i.logger.error(e),null}if(!(c.RtcIceCandidate&&c.RtcSessionDescription&&c.RtcPeerConnection&&c.getUserMedia))return null;const l=!!r&&r.forceTURN;return new a({webRtc:c,client:t,URL:o.URL,roomId:n,turnServers:t.getTurnServers(),forceTURN:t._forceTURN||l})};var i=n(4),o=n(10),s=r(n(8));function a(e){this.roomId=e.roomId,this.client=e.client,this.webRtc=e.webRtc,this.forceTURN=e.forceTURN,this.URL=e.URL,this.turnServers=e.turnServers||[],0===this.turnServers.length&&this.client.isFallbackICEServerAllowed()&&this.turnServers.push({urls:[a.FALLBACK_ICE_SERVER]}),s.forEach(this.turnServers,(function(e){s.checkObjectHasKeys(e,["urls"])})),this.callId="c"+(new Date).getTime()+Math.random(),this.state="fledgling",this.didConnect=!1,this.candidateSendQueue=[],this.candidateSendTries=0,this.mediaPromises=Object.create(null),this.screenSharingStream=null,this._answerContent=null}a.CALL_TIMEOUT_MS=6e4,a.FALLBACK_ICE_SERVER="stun:turn.matrix.org",a.ERR_LOCAL_OFFER_FAILED="local_offer_failed",a.ERR_NO_USER_MEDIA="no_user_media",a.ERR_UNKNOWN_DEVICES="unknown_devices",a.ERR_SEND_INVITE="send_invite",a.ERR_SEND_ANSWER="send_answer",s.inherits(a,o.EventEmitter),a.prototype.placeVoiceCall=function(){v("placeVoiceCall"),y(this),w(this,k("voice")),this.type="voice"},a.prototype.placeVideoCall=function(e,t){v("placeVideoCall"),y(this),this.localVideoElement=t,this.remoteVideoElement=e,w(this,k("video")),this.type="video",m(this)},a.prototype.placeScreenSharingCall=function(e,t){v("placeScreenSharingCall"),y(this);const n=E(this);if(!n)return;this.localVideoElement=t,this.remoteVideoElement=e;const r=this;this.webRtc.getUserMedia(n,(function(e){r.screenSharingStream=e,v("Got screen stream, requesting audio stream...");const t=k("voice");w(r,t)}),(function(e){r.emit("error",b(a.ERR_NO_USER_MEDIA,"Failed to get screen-sharing stream: "+e))})),this.type="video",m(this)},a.prototype.playElement=function(e,t){i.logger.log("queuing play on "+t+" and element "+e),this.mediaPromises[t]?this.mediaPromises[t]=this.mediaPromises[t].then((function(){return i.logger.log("previous promise completed for "+t),e.play()}),(function(){return i.logger.log("previous promise failed for "+t),e.play()})):this.mediaPromises[t]=e.play()},a.prototype.pauseElement=function(e,t){i.logger.log("queuing pause on "+t+" and element "+e),this.mediaPromises[t]?this.mediaPromises[t]=this.mediaPromises[t].then((function(){return i.logger.log("previous promise completed for "+t),e.pause()}),(function(){return i.logger.log("previous promise failed for "+t),e.pause()})):this.mediaPromises[t]=e.pause()},a.prototype.assignElement=function(e,t,n){i.logger.log("queuing assign on "+n+" element "+e+" for "+t),this.mediaPromises[n]?this.mediaPromises[n]=this.mediaPromises[n].then((function(){i.logger.log("previous promise completed for "+n),e.srcObject=t}),(function(){i.logger.log("previous promise failed for "+n),e.srcObject=t})):e.srcObject=t},a.prototype.getLocalVideoElement=function(){return this.localVideoElement},a.prototype.getRemoteVideoElement=function(){return this.remoteVideoElement},a.prototype.getRemoteAudioElement=function(){return this.remoteAudioElement},a.prototype.setLocalVideoElement=function(e){if(this.localVideoElement=e,e&&this.localAVStream&&"video"===this.type){e.autoplay=!0,this.assignElement(e,this.localAVStream,"localVideo"),e.muted=!0;const t=this;setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)}},a.prototype.setRemoteVideoElement=function(e){this.remoteVideoElement=e,m(this)},a.prototype.setRemoteAudioElement=function(e){this.remoteVideoElement.muted=!0,this.remoteAudioElement=e,this.remoteAudioElement.muted=!1,g(this)},a.prototype._initWithInvite=function(e){this.msg=e.getContent(),this.peerConn=A(this);const t=this;this.peerConn&&this.peerConn.setRemoteDescription(new this.webRtc.RtcSessionDescription(this.msg.offer),S(t,t._onSetRemoteDescriptionSuccess),S(t,t._onSetRemoteDescriptionError)),l(this,"ringing"),this.direction="inbound",this.msg.offer&&this.msg.offer.sdp&&this.msg.offer.sdp.indexOf("m=video")>-1?this.type="video":this.type="voice",e.getAge()&&setTimeout((function(){"ringing"==t.state&&(v("Call invite has expired. Hanging up."),t.hangupParty="remote",l(t,"ended"),p(t),"closed"!=t.peerConn.signalingState&&t.peerConn.close(),t.emit("hangup",t))}),this.msg.lifetime-e.getAge())},a.prototype._initWithHangup=function(e){this.msg=e.getContent(),l(this,"ended")},a.prototype.answer=function(){v("Answering call %s of type %s",this.callId,this.type);const e=this;e._answerContent?e._sendAnswer():this.localAVStream||this.waitForLocalAVStream?this.localAVStream?this._maybeGotUserMediaForAnswer(this.localAVStream):this.waitForLocalAVStream&&l(this,"wait_local_media"):(this.webRtc.getUserMedia(k(this.type),S(e,e._maybeGotUserMediaForAnswer),S(e,e._maybeGotUserMediaForAnswer)),l(this,"wait_local_media"))},a.prototype._replacedBy=function(e){v(this.callId+" being replaced by "+e.callId),"wait_local_media"==this.state?(v("Telling new call to wait for local media"),e.waitForLocalAVStream=!0):"create_offer"==this.state?(v("Handing local stream to new call"),e._maybeGotUserMediaForAnswer(this.localAVStream),delete this.localAVStream):"invite_sent"==this.state&&(v("Handing local stream to new call"),e._maybeGotUserMediaForAnswer(this.localAVStream),delete this.localAVStream),e.localVideoElement=this.localVideoElement,e.remoteVideoElement=this.remoteVideoElement,e.remoteAudioElement=this.remoteAudioElement,this.successor=e,this.emit("replaced",e),this.hangup(!0)},a.prototype.hangup=function(e,t){if("ended"==this.state)return;v("Ending call "+this.callId),h(this,"local",e,!t);const n={version:0,call_id:this.callId,reason:e};u(this,"m.call.hangup",n)},a.prototype.setLocalVideoMuted=function(e){this.localAVStream&&c(this.localAVStream.getVideoTracks(),!e)},a.prototype.isLocalVideoMuted=function(){return!!this.localAVStream&&!f(this.localAVStream.getVideoTracks())},a.prototype.setMicrophoneMuted=function(e){this.localAVStream&&c(this.localAVStream.getAudioTracks(),!e)},a.prototype.isMicrophoneMuted=function(){return!!this.localAVStream&&!f(this.localAVStream.getAudioTracks())},a.prototype._maybeGotUserMediaForInvite=function(e){if(this.successor)return void this.successor._maybeGotUserMediaForAnswer(e);if("ended"==this.state)return;v("_maybeGotUserMediaForInvite -> "+this.type);const t=this,n=e,r={mandatory:{OfferToReceiveAudio:!0,OfferToReceiveVideo:"video"===t.type}};if(e instanceof MediaStream){const n=this.getLocalVideoElement();n&&"video"==this.type&&(n.autoplay=!0,this.screenSharingStream?(v("Setting screen sharing stream to the local video element"),this.assignElement(n,this.screenSharingStream,"localVideo")):this.assignElement(n,e,"localVideo"),n.muted=!0,setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)),this.screenSharingStream&&(this.screenSharingStream.addTrack(e.getAudioTracks()[0]),e=this.screenSharingStream),this.localAVStream=e,c(e.getAudioTracks(),!0),this.peerConn=A(this),this.peerConn.addStream(e)}else{if("PermissionDeniedError"!==n.name)return v("Failed to getUserMedia: "+n.name),void this._getUserMediaFailed(n);v("User denied access to camera/microphone. Or possibly you are using an insecure domain. Receiving only."),this.peerConn=A(this)}this.peerConn.createOffer(S(t,t._gotLocalOffer),S(t,t._getLocalOfferFailed),r),l(t,"create_offer")},a.prototype._sendAnswer=function(e){u(this,"m.call.answer",this._answerContent).then(()=>{l(this,"connecting"),_(this)}).catch(e=>{l(this,"ringing"),this.client.cancelPendingEvent(e.event);let t=a.ERR_SEND_ANSWER,n="Failed to send answer";throw"UnknownDeviceError"==e.name&&(t=a.ERR_UNKNOWN_DEVICES,n="Unknown devices present in the room"),this.emit("error",b(t,n)),e})},a.prototype._maybeGotUserMediaForAnswer=function(e){const t=this;if("ended"==t.state)return;const n=e;if(e instanceof MediaStream){const n=t.getLocalVideoElement();n&&"video"==t.type&&(n.autoplay=!0,this.assignElement(n,e,"localVideo"),n.muted=!0,setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)),t.localAVStream=e,c(e.getAudioTracks(),!0),t.peerConn.addStream(e)}else{if("PermissionDeniedError"!==n.name)return v("Failed to getUserMedia: "+n.name),void this._getUserMediaFailed(n);v("User denied access to camera/microphone. Or possibly you are using an insecure domain. Receiving only.")}const r={mandatory:{OfferToReceiveAudio:!0,OfferToReceiveVideo:"video"===t.type}};t.peerConn.createAnswer((function(e){v("Created answer: ",e),t.peerConn.setLocalDescription(e,(function(){t._answerContent={version:0,call_id:t.callId,answer:{sdp:t.peerConn.localDescription.sdp,type:t.peerConn.localDescription.type}},t._sendAnswer()}),(function(){v("Error setting local description!")}),r)}),(function(e){v("Failed to create answer: "+e)})),l(t,"create_answer")},a.prototype._gotLocalIceCandidate=function(e){if(e.candidate){if(v("Got local ICE "+e.candidate.sdpMid+" candidate: "+e.candidate.candidate),"ended"==this.state)return;const t={candidate:e.candidate.candidate,sdpMid:e.candidate.sdpMid,sdpMLineIndex:e.candidate.sdpMLineIndex};d(this,t)}},a.prototype._gotRemoteIceCandidate=function(e){"ended"!=this.state&&(v("Got remote ICE "+e.sdpMid+" candidate: "+e.candidate),this.peerConn.addIceCandidate(new this.webRtc.RtcIceCandidate(e),(function(){}),(function(e){})))},a.prototype._receivedAnswer=function(e){if("ended"==this.state)return;this.peerConn.setRemoteDescription(new this.webRtc.RtcSessionDescription(e.answer),S(this,this._onSetRemoteDescriptionSuccess),S(this,this._onSetRemoteDescriptionError)),l(this,"connecting")},a.prototype._gotLocalOffer=function(e){const t=this;v("Created offer: ",e),"ended"!=t.state?t.peerConn.setLocalDescription(e,(function(){const e={version:0,call_id:t.callId,offer:{sdp:t.peerConn.localDescription.sdp,type:t.peerConn.localDescription.type},lifetime:a.CALL_TIMEOUT_MS};u(t,"m.call.invite",e).then(()=>{l(t,"invite_sent"),setTimeout((function(){"invite_sent"==t.state&&t.hangup("invite_timeout")}),a.CALL_TIMEOUT_MS)}).catch(e=>{let n=a.ERR_SEND_INVITE,r="Failed to send invite";throw"UnknownDeviceError"==e.name&&(n=a.ERR_UNKNOWN_DEVICES,r="Unknown devices present in the room"),t.client.cancelPendingEvent(e.event),h(t,"local",n,!1),t.emit("error",b(n,r)),e})}),(function(){v("Error setting local description!")})):v("Ignoring newly created offer on call ID "+t.callId+" because the call has ended")},a.prototype._getLocalOfferFailed=function(e){this.emit("error",b(a.ERR_LOCAL_OFFER_FAILED,"Failed to start audio for call!"))},a.prototype._getUserMediaFailed=function(e){h(this,"local","user_media_failed",!1),this.emit("error",b(a.ERR_NO_USER_MEDIA,"Couldn't start capturing media! Is your microphone set up and does this app have permission?"))},a.prototype._onIceConnectionStateChanged=function(){"ended"!=this.state&&(v("Ice connection state changed to: "+this.peerConn.iceConnectionState),"completed"==this.peerConn.iceConnectionState||"connected"==this.peerConn.iceConnectionState?(l(this,"connected"),this.didConnect=!0):"failed"==this.peerConn.iceConnectionState&&this.hangup("ice_failed"))},a.prototype._onSignallingStateChanged=function(){v("call "+this.callId+": Signalling state changed to: "+this.peerConn.signalingState)},a.prototype._onSetRemoteDescriptionSuccess=function(){v("Set remote description")},a.prototype._onSetRemoteDescriptionError=function(e){v("Failed to set remote description"+e)},a.prototype._onAddStream=function(e){v("Stream id "+e.stream.id+" added");const t=e.stream;t.getVideoTracks().length>0?(this.type="video",this.remoteAVStream=t,this.remoteAStream=t):(this.type="voice",this.remoteAStream=t);const n=this;T(t,(function(e){v("Track id "+e.id+" added"),e.onstarted=S(n,n._onRemoteStreamTrackStarted)})),void 0!==e.stream.oninactive?e.stream.oninactive=S(n,n._onRemoteStreamEnded):e.stream.onended=S(n,n._onRemoteStreamEnded),e.stream.onstarted=S(n,n._onRemoteStreamStarted),"video"===this.type?(m(this),g(this)):g(this)},a.prototype._onRemoteStreamStarted=function(e){l(this,"connected")},a.prototype._onRemoteStreamEnded=function(e){v("Remote stream ended"),this.hangupParty="remote",l(this,"ended"),p(this),"closed"!=this.peerConn.signalingState&&this.peerConn.close(),this.emit("hangup",this)},a.prototype._onRemoteStreamTrackStarted=function(e){l(this,"connected")},a.prototype._onHangupReceived=function(e){v("Hangup received"),h(this,"remote",e.reason,!0)},a.prototype._onAnsweredElsewhere=function(e){v("Answered elsewhere"),h(this,"remote","answered_elsewhere",!0)};const c=function(e,t){for(let n=0;n5)return v("Failed to send candidates on attempt %s. Giving up for now.",e.candidateSendTries),void(e.candidateSendTries=0);const r=500*Math.pow(2,e.candidateSendTries);++e.candidateSendTries,v("Failed to send candidates. Retrying in "+r+"ms"),setTimeout((function(){_(e)}),r)}))},w=function(e,t){e.client.callList[e.callId]=e,e.webRtc.getUserMedia(t,S(e,e._maybeGotUserMediaForInvite),S(e,e._maybeGotUserMediaForInvite)),l(e,"wait_local_media"),e.direction="outbound",e.config=t},A=function(e){const t=new e.webRtc.RtcPeerConnection({iceTransportPolicy:e.forceTURN?"relay":void 0,iceServers:e.turnServers});return t.oniceconnectionstatechange=S(e,e._onIceConnectionStateChanged),t.onsignalingstatechange=S(e,e._onSignallingStateChanged),t.onicecandidate=S(e,e._gotLocalIceCandidate),t.onaddstream=S(e,e._onAddStream),t},E=function(t){const n=e.screen;if(n)return{video:{mediaSource:"screen",mandatory:{chromeMediaSource:"screen",chromeMediaSourceId:""+Date.now(),maxWidth:n.width,maxHeight:n.height,minFrameRate:1,maxFrameRate:10}}};t.emit("error",b(a.ERR_NO_USER_MEDIA,"Couldn't determine screen sharing constaints."))},k=function(t){const n=!!e.window.navigator.webkitGetUserMedia;switch(t){case"voice":return{audio:{deviceId:x?{ideal:x}:void 0},video:!1};case"video":return{audio:{deviceId:x?{ideal:x}:void 0},video:{deviceId:R?{ideal:R}:void 0,width:n?{exact:640}:{ideal:640},height:n?{exact:360}:{ideal:360}}}}},S=function(e,t){return function(){return t.apply(e,arguments)}},T=function(e,t){!function(e,t){const n=e.getVideoTracks();for(let e=0;e{let i=!0;const o=e.open(t);o.onupgradeneeded=()=>{i=!1},o.onblocked=()=>r(),o.onsuccess=()=>{o.result.close(),i||e.deleteDatabase(t),n(i)},o.onerror=e=>r(e.target.error)})}},function(e,t,n){"use strict";(function(e){var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.OlmDevice=c,t.WITHHELD_MESSAGES=void 0;var i=n(4),o=n(36),s=r(n(141));function a(e){if(void 0===e)throw new Error("payloadString undefined");if(e.length>49152)throw new Error("Message too long ("+e.length+" bytes). The maximum for an encrypted message is 49152 bytes.")}function c(e){this._cryptoStore=e,this._pickleKey="DEFAULT_KEY",this.deviceCurve25519Key=null,this.deviceEd25519Key=null,this._maxOneTimeKeys=null,this._outboundGroupSessionStore={},this._inboundGroupSessionMessageIndexes={},this._sessionsInProgress={}}c.prototype.init=async function(){let t;const n=new e.Olm.Account;try{await async function(e,t,n){await e.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],r=>{e.getAccount(r,i=>{null!==i?n.unpickle(t,i):(n.create(),i=n.pickle(t),e.storeAccount(r,i))})})}(this._cryptoStore,this._pickleKey,n),t=JSON.parse(n.identity_keys()),this._maxOneTimeKeys=n.max_number_of_one_time_keys()}finally{n.free()}this.deviceCurve25519Key=t.curve25519,this.deviceEd25519Key=t.ed25519},c.getOlmVersion=function(){return e.Olm.get_library_version()},c.prototype._getAccount=function(t,n){this._cryptoStore.getAccount(t,t=>{const r=new e.Olm.Account;try{r.unpickle(this._pickleKey,t),n(r)}finally{r.free()}})},c.prototype._storeAccount=function(e,t){this._cryptoStore.storeAccount(e,t.pickle(this._pickleKey))},c.prototype._getSession=function(e,t,n,r){this._cryptoStore.getEndToEndSession(e,t,n,e=>{this._unpickleSession(e,r)})},c.prototype._unpickleSession=function(t,n){const r=new e.Olm.Session;try{r.unpickle(this._pickleKey,t.session),n(Object.assign({},t,{session:r}))}finally{r.free()}},c.prototype._saveSession=function(e,t,n){const r=t.session.session_id(),i=Object.assign(t,{session:t.session.pickle(this._pickleKey)});this._cryptoStore.storeEndToEndSession(e,r,i,n)},c.prototype._getUtility=function(t){const n=new e.Olm.Utility;try{return t(n)}finally{n.free()}},c.prototype.sign=async function(e){let t;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_ACCOUNT],n=>{this._getAccount(n,n=>{t=n.sign(e)})}),t},c.prototype.getOneTimeKeys=async function(){let e;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_ACCOUNT],t=>{this._getAccount(t,t=>{e=JSON.parse(t.one_time_keys())})}),e},c.prototype.maxNumberOfOneTimeKeys=function(){return this._maxOneTimeKeys},c.prototype.markKeysAsPublished=async function(){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],e=>{this._getAccount(e,t=>{t.mark_keys_as_published(),this._storeAccount(e,t)})})},c.prototype.generateOneTimeKeys=function(e){return this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],t=>{this._getAccount(t,n=>{n.generate_one_time_keys(e),this._storeAccount(t,n)})})},c.prototype.createOutboundSession=async function(t,n){let r;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT,o.IndexedDBCryptoStore.STORE_SESSIONS],i=>{this._getAccount(i,o=>{const s=new e.Olm.Session;try{s.create_outbound(o,t,n),r=s.session_id(),this._storeAccount(i,o);const e={session:s,lastReceivedMessageTs:Date.now()};this._saveSession(t,e,i)}finally{s.free()}})}),r},c.prototype.createInboundSession=async function(t,n,r){if(0!==n)throw new Error("Need messageType == 0 to create inbound session");let i;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT,o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getAccount(o,s=>{const a=new e.Olm.Session;try{a.create_inbound_from(s,t,r),s.remove_one_time_keys(a),this._storeAccount(o,s);const e=a.decrypt(n,r),c={session:a,lastReceivedMessageTs:Date.now()};this._saveSession(t,c,o),i={payload:e,session_id:a.session_id()}}finally{a.free()}})}),i},c.prototype.getSessionIdsForDevice=async function(e){if(this._sessionsInProgress[e]){i.logger.log("waiting for olm session to be created");try{await this._sessionsInProgress[e]}catch(e){}}let t;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_SESSIONS],n=>{this._cryptoStore.getEndToEndSessions(e,n,e=>{t=Object.keys(e)})}),t},c.prototype.getSessionIdForDevice=async function(e,t){const n=await this.getSessionInfoForDevice(e,t);if(0===n.length)return null;let r=0;for(let e=1;es||i===s&&t.sessionId{this._cryptoStore.getEndToEndSessions(e,t,e=>{const t=Object.keys(e).sort();for(const r of t)this._unpickleSession(e[r],e=>{n.push({lastReceivedMessageTs:e.lastReceivedMessageTs,hasReceivedMessage:e.session.has_received_message(),sessionId:r})})})}),n},c.prototype.encryptMessage=async function(e,t,n){let r;return a(n),await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getSession(e,t,o,s=>{const a=s.session.describe();i.logger.log("encryptMessage: Olm Session ID "+t+" to "+e+": "+a),r=s.session.encrypt(n),this._saveSession(e,s,o)})}),r},c.prototype.decryptMessage=async function(e,t,n,r){let s;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getSession(e,t,o,a=>{const c=a.session.describe();i.logger.log("decryptMessage: Olm Session ID "+t+" from "+e+": "+c),s=a.session.decrypt(n,r),a.lastReceivedMessageTs=Date.now(),this._saveSession(e,a,o)})}),s},c.prototype.matchesSession=async function(e,t,n,r){if(0!==n)return!1;let i;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_SESSIONS],n=>{this._getSession(e,t,n,e=>{i=e.session.matches_inbound(r)})}),i},c.prototype.recordSessionProblem=async function(e,t,n){await this._cryptoStore.storeEndToEndSessionProblem(e,t,n)},c.prototype.sessionMayHaveProblems=async function(e,t){return await this._cryptoStore.getEndToEndSessionProblem(e,t)},c.prototype.filterOutNotifiedErrorDevices=async function(e){return await this._cryptoStore.filterOutNotifiedErrorDevices(e)},c.prototype._saveOutboundGroupSession=function(e){const t=e.pickle(this._pickleKey);this._outboundGroupSessionStore[e.session_id()]=t},c.prototype._getOutboundGroupSession=function(t,n){const r=this._outboundGroupSessionStore[t];if(void 0===r)throw new Error("Unknown outbound group session "+t);const i=new e.Olm.OutboundGroupSession;try{return i.unpickle(this._pickleKey,r),n(i)}finally{i.free()}},c.prototype.createOutboundGroupSession=function(){const t=new e.Olm.OutboundGroupSession;try{return t.create(),this._saveOutboundGroupSession(t),t.session_id()}finally{t.free()}},c.prototype.encryptGroupMessage=function(e,t){const n=this;return i.logger.log(`encrypting msg with megolm session ${e}`),a(t),this._getOutboundGroupSession(e,(function(e){const r=e.encrypt(t);return n._saveOutboundGroupSession(e),r}))},c.prototype.getOutboundGroupSessionKey=function(e){return this._getOutboundGroupSession(e,(function(e){return{chain_index:e.message_index(),key:e.session_key()}}))},c.prototype._unpickleInboundGroupSession=function(t,n){const r=new e.Olm.InboundGroupSession;try{return r.unpickle(this._pickleKey,t.session),n(r)}finally{r.free()}},c.prototype._getInboundGroupSession=function(e,t,n,r,i){this._cryptoStore.getEndToEndInboundGroupSession(t,n,r,(t,n)=>{if(null!==t){if(null!==e&&e!==t.room_id)throw new Error("Mismatched room_id for inbound group session (expected "+t.room_id+", was "+e+")");this._unpickleInboundGroupSession(t,e=>{i(e,t,n)})}else i(null,null,n)})},c.prototype.addInboundGroupSession=async function(t,n,r,s,a,c,f){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(t,n,s,o,(l,u)=>{const d=new e.Olm.InboundGroupSession;try{if(f?d.import_session(a):d.create(a),s!=d.session_id())throw new Error("Mismatched group session ID from senderKey: "+n);if(l&&(i.logger.log("Update for megolm session "+n+"/"+s),l.first_known_index()<=d.first_known_index()))return void i.logger.log(`Keeping existing megolm session ${s}`);const e={room_id:t,session:d.pickle(this._pickleKey),keysClaimed:c,forwardingCurve25519KeyChain:r};this._cryptoStore.storeEndToEndInboundGroupSession(n,s,e,o)}finally{d.free()}})})},c.prototype.addInboundGroupSessionWithheld=async function(e,t,n,r,i){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._cryptoStore.storeEndToEndInboundGroupSessionWithheld(t,n,{room_id:e,code:r,reason:i},o)})};const f={"m.unverified":"The sender has disabled encrypting to unverified devices.","m.blacklisted":"The sender has blocked you.","m.unauthorised":"You are not authorised to read the message.","m.no_olm":"Unable to establish a secure channel."};function l(e){return e.code&&e.code in f?f[e.code]:e.reason?e.reason:"decryption key withheld"}t.WITHHELD_MESSAGES=f,c.prototype.decryptGroupMessage=async function(e,t,n,r,i,a){let c,f;if(await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(e,t,n,o,(e,u,d)=>{if(null===e)return d&&(f=new s.DecryptionError("MEGOLM_UNKNOWN_INBOUND_SESSION_ID",l(d),{session:t+"|"+n})),void(c=null);let h;try{h=e.decrypt(r)}catch(e){return void(f=e&&"OLM.UNKNOWN_MESSAGE_INDEX"===e.message&&d?new s.DecryptionError("MEGOLM_UNKNOWN_INBOUND_SESSION_ID",l(d),{session:t+"|"+n}):e)}let p=h.plaintext;if(void 0===p)p=h;else{const e=t+"|"+n+"|"+h.message_index;if(e in this._inboundGroupSessionMessageIndexes){const t=this._inboundGroupSessionMessageIndexes[e];if(t.id!==i||t.timestamp!==a)return void(f=new Error("Duplicate message index, possible replay attack: "+e))}this._inboundGroupSessionMessageIndexes[e]={id:i,timestamp:a}}u.session=e.pickle(this._pickleKey),this._cryptoStore.storeEndToEndInboundGroupSession(t,n,u,o),c={result:p,keysClaimed:u.keysClaimed||{},senderKey:t,forwardingCurve25519KeyChain:u.forwardingCurve25519KeyChain||[]}})}),f)throw f;return c},c.prototype.hasInboundSessionKeys=async function(e,t,n){let r;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._cryptoStore.getEndToEndInboundGroupSession(t,n,o,o=>{null!==o?e!==o.room_id?(i.logger.warn(`requested keys for inbound group session ${t}|`+`${n}, with incorrect room_id `+`(expected ${o.room_id}, `+`was ${e})`),r=!1):r=!0:r=!1})}),r},c.prototype.getInboundGroupSessionKey=async function(e,t,n,r){let i;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(e,t,n,o,(e,t)=>{if(null===e)return void(i=null);void 0===r&&(r=e.first_known_index());const n=e.export_session(r),o=(t.keysClaimed||{}).ed25519||null;i={chain_index:r,key:n,forwarding_curve25519_key_chain:t.forwardingCurve25519KeyChain||[],sender_claimed_ed25519_key:o}})}),i},c.prototype.exportInboundGroupSession=function(e,t,n){return this._unpickleInboundGroupSession(n,r=>{const i=r.first_known_index();return{sender_key:e,sender_claimed_keys:n.keysClaimed,room_id:n.room_id,session_id:t,session_key:r.export_session(i),forwarding_curve25519_key_chain:r.forwardingCurve25519KeyChain||[],first_known_index:r.first_known_index()}})},c.prototype.verifySignature=function(e,t,n){this._getUtility((function(r){r.ed25519_verify(e,t,n)}))}}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(294),n(295);var r=n(82);Object.keys(r).forEach((function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(t,e,{enumerable:!0,get:function(){return r[e]}})}))},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.DeviceTrustLevel=t.UserTrustLevel=t.CrossSigningLevel=t.CrossSigningInfo=void 0;var r=n(22),i=n(10),o=n(4);function s(e){return Object.values(e.keys)[0]}class a extends i.EventEmitter{constructor(e,t){super(),Object.defineProperty(this,"userId",{enumerable:!0,value:e}),this._callbacks=t||{},this.keys={},this.firstUse=!0}async getCrossSigningKey(t,n){if(!this._callbacks.getCrossSigningKey)throw new Error("No getCrossSigningKey callback supplied");void 0===n&&(n=this.getId(t));const r=await this._callbacks.getCrossSigningKey(t,n);if(!r)throw new Error("getCrossSigningKey callback for "+t+" returned falsey");const i=new e.Olm.PkSigning,o=i.init_with_seed(r);if(o!==n)throw i.free(),new Error("Key type "+t+" from getCrossSigningKey callback did not match");return[o,i]}static fromStorage(e,t){const n=new a(t);for(const t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}toStorage(){return{keys:this.keys,firstUse:this.firstUse}}async isStoredInSecretStorage(e){let t=!0;for(const n of["master","self_signing","user_signing"])t&=await e.isStored(`m.cross_signing.${n}`,!1);return t}static async storeInSecretStorage(e,t){for(const n of Object.keys(e)){const i=(0,r.encodeBase64)(e[n]);await t.store(`m.cross_signing.${n}`,i)}}static async getFromSecretStorage(e,t){const n=await t.get(`m.cross_signing.${e}`);return(0,r.decodeBase64)(n)}getId(e){if(e=e||"master",!this.keys[e])return null;return s(this.keys[e])}async resetKeys(t){if(!this._callbacks.saveCrossSigningKeys)throw new Error("No saveCrossSigningKeys callback supplied");if(void 0===t||t&c.MASTER||!this.keys.master)t=c.MASTER|c.USER_SIGNING|c.SELF_SIGNING;else if(0===t)return;const n={},i={};let o,s;try{if(t&c.MASTER?(o=new e.Olm.PkSigning,n.master=o.generate_seed(),s=o.init_with_seed(n.master),i.master={user_id:this.userId,usage:["master"],keys:{["ed25519:"+s]:s}}):[s,o]=await this.getCrossSigningKey("master"),t&c.SELF_SIGNING){const t=new e.Olm.PkSigning;try{n.self_signing=t.generate_seed();const e=t.init_with_seed(n.self_signing);i.self_signing={user_id:this.userId,usage:["self_signing"],keys:{["ed25519:"+e]:e}},(0,r.pkSign)(i.self_signing,o,this.userId,s)}finally{t.free()}}if(t&c.USER_SIGNING){const t=new e.Olm.PkSigning;try{n.user_signing=t.generate_seed();const e=t.init_with_seed(n.user_signing);i.user_signing={user_id:this.userId,usage:["user_signing"],keys:{["ed25519:"+e]:e}},(0,r.pkSign)(i.user_signing,o,this.userId,s)}finally{t.free()}}Object.assign(this.keys,i),this._callbacks.saveCrossSigningKeys(n)}finally{o&&o.free()}}setKeys(e){const t={};if(e.master){if(e.master.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in master key from "+this.userId;throw o.logger.error(t),new Error(t)}this.keys.master?s(e.master)!==this.getId()&&(this.firstUse=!1):this.firstUse=!0,t.master=e.master}else{if(!this.keys.master)throw new Error("Tried to set cross-signing keys without a master key");t.master=this.keys.master}const n=s(t.master);if(e.user_signing){if(e.user_signing.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in user_signing key from "+this.userId;throw o.logger.error(t),new Error(t)}try{(0,r.pkVerify)(e.user_signing,n,this.userId)}catch(e){throw o.logger.error("invalid signature on user-signing key"),e}}if(e.self_signing){if(e.self_signing.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in self_signing key from "+this.userId;throw o.logger.error(t),new Error(t)}try{(0,r.pkVerify)(e.self_signing,n,this.userId)}catch(e){throw o.logger.error("invalid signature on self-signing key"),e}}e.master&&(this.keys.master=e.master,this.keys.self_signing=null,this.keys.user_signing=null),e.self_signing&&(this.keys.self_signing=e.self_signing),e.user_signing&&(this.keys.user_signing=e.user_signing)}async signObject(e,t){if(!this.keys[t])throw new Error("Attempted to sign with "+t+" key but no such key present");const[n,i]=await this.getCrossSigningKey(t);try{return(0,r.pkSign)(e,i,this.userId,n),e}finally{i.free()}}async signUser(e){if(this.keys.user_signing)return this.signObject(e.keys.master,"user_signing")}async signDevice(e,t){if(e!==this.userId)throw new Error(`Trying to sign ${e}'s device; can only sign our own device`);if(this.keys.self_signing)return this.signObject({algorithms:t.algorithms,keys:t.keys,device_id:t.deviceId,user_id:e},"self_signing")}checkUserTrust(e){if(this.userId===e.userId&&this.getId()&&this.getId()===e.getId()&&this.getId("self_signing")&&this.getId("self_signing")===e.getId("self_signing"))return new f(!0,this.firstUse);if(!this.keys.user_signing)return new f(!1,e.firstUse);let t;const n=e.keys.master,i=this.getId("user_signing");try{(0,r.pkVerify)(n,i,this.userId),t=!0}catch(e){t=!1}return new f(t,e.firstUse)}checkDeviceTrust(e,t,n){const i=this.checkUserTrust(e),o=e.keys.self_signing;if(!o)return new l(!1,!1,n);const a=function(e,t){return{algorithms:e.algorithms,keys:e.keys,device_id:e.deviceId,user_id:t,signatures:e.signatures}}(t,e.userId);try{return(0,r.pkVerify)(o,e.getId(),e.userId),(0,r.pkVerify)(a,s(o),e.userId),l.fromUserTrustLevel(i,n)}catch(e){return new l(!1,!1,n)}}}t.CrossSigningInfo=a;const c={MASTER:4,USER_SIGNING:2,SELF_SIGNING:1};t.CrossSigningLevel=c;class f{constructor(e,t){this._crossSigningVerified=e,this._tofu=t}isVerified(){return this.isCrossSigningVerified()}isCrossSigningVerified(){return this._crossSigningVerified}isTofu(){return this._tofu}}t.UserTrustLevel=f;class l{constructor(e,t,n){this._crossSigningVerified=e,this._tofu=t,this._localVerified=n}static fromUserTrustLevel(e,t){return new l(e._crossSigningVerified,e._tofu,t)}isVerified(){return this.isCrossSigningVerified()||this.isLocallyVerified()}isCrossSigningVerified(){return this._crossSigningVerified}isLocallyVerified(){return this._localVerified}isTofu(){return this._tofu}}t.DeviceTrustLevel=l}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VerificationBase=void 0;var r=n(19),i=n(10),o=n(4),s=n(52),a=n(37);const c=new Error("Verification timed out");class f extends i.EventEmitter{constructor(e,t,n,r,i,o){super(),this._channel=e,this._baseApis=t,this.userId=n,this.deviceId=r,this.startEvent=i,this.request=o,this.cancelled=!1,this._done=!1,this._promise=null,this._transactionTimeoutTimer=null,this._resetTimer()}_resetTimer(){o.logger.info("Refreshing/starting the verification transaction timeout timer"),null!==this._transactionTimeoutTimer&&clearTimeout(this._transactionTimeoutTimer),this._transactionTimeoutTimer=setTimeout(()=>{this._done||this.cancelled||(o.logger.info("Triggering verification timeout"),this.cancel(c))},6e5)}_endTimer(){null!==this._transactionTimeoutTimer&&(clearTimeout(this._transactionTimeoutTimer),this._transactionTimeoutTimer=null)}_send(e,t){return this._channel.send(e,t)}_waitForEvent(e){return this._done?Promise.reject(new Error("Verification is already done")):(this._expectedEvent=e,new Promise((e,t)=>{this._resolveEvent=e,this._rejectEvent=t}))}handleEvent(e){if(!this._done)if(e.getType()===this._expectedEvent)"m.key.verification.done"!==this._expectedEvent&&(this._expectedEvent=void 0,this._rejectEvent=void 0,this._resetTimer(),this._resolveEvent(e));else if("m.key.verification.cancel"===e.getType()){const e=this._reject;this._reject=void 0,e(new Error("Other side cancelled verification"))}else{const t=new Error("Unexpected message: expecting "+this._expectedEvent+" but got "+e.getType());if(this._expectedEvent=void 0,this._rejectEvent){const e=this._rejectEvent;this._rejectEvent=void 0,e(t)}this.cancel(t)}}done(){this._endTimer(),this._done||(this._channel.needsDoneMessage&&this._send("m.key.verification.done",{}),this._resolve())}cancel(e){if(this._endTimer(),!this._done){if(this.cancelled=!0,this.userId&&this.deviceId)if(e===c){const e=(0,a.newTimeoutError)();this._send(e.getType(),e.getContent())}else if(e instanceof r.MatrixEvent){if(e.getSender()!==this.userId){const t=e.getContent();"m.key.verification.cancel"===e.getType()?(t.code=t.code||"m.unknown",t.reason=t.reason||t.body||"Unknown reason",this._send("m.key.verification.cancel",t)):this._send("m.key.verification.cancel",{code:"m.unknown",reason:t.body||"Unknown reason"})}}else this._send("m.key.verification.cancel",{code:"m.unknown",reason:e.toString()});null!==this._promise?this._reject&&this._reject(e):this._promise=Promise.reject(e),this.emit("cancel",e)}}verify(){return this._promise?this._promise:(this._promise=new Promise((e,t)=>{this._resolve=(...t)=>{this._done=!0,this._endTimer(),e(...t)},this._reject=(...e)=>{this._done=!0,this._endTimer(),t(...e)}}),this._doVerification&&!this._started&&(this._started=!0,this._resetTimer(),Promise.resolve(this._doVerification()).then(this.done.bind(this),this.cancel.bind(this))),this._promise)}async _verifyKeys(e,t,n){const r=[];for(const[i,a]of Object.entries(t)){const t=i.split(":",2)[1],c=await this._baseApis.getStoredDevice(e,t);if(c)await n(i,c,a),r.push(t);else{const c=this._baseApis._crypto._deviceList.getStoredCrossSigningForUser(e);c&&c.getId()===t?(await n(i,s.DeviceInfo.fromStorage({keys:{[i]:t}},t),a),r.push(t)):o.logger.warn(`verification: Could not find device ${t} to verify`)}}if(!r.length)throw new Error("No devices could be verified");for(const t of r)await this._baseApis.setDeviceVerified(e,t)}}t.VerificationBase=f},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.keyFromAuthData=async function(t,n){if(!e.Olm)throw new Error("Olm is not available");if(!t.private_key_salt||!t.private_key_iterations)throw new Error("Salt and/or iterations not found: this backup cannot be restored with a passphrase");return await i(n,t.private_key_salt,t.private_key_iterations)},t.keyFromPassphrase=async function(t){if(!e.Olm)throw new Error("Olm is not available");const n=(0,r.randomString)(32);return{key:await i(t,n,5e5),salt:n,iterations:5e5}},t.deriveKey=i;var r=n(53);async function i(t,n,r){const i=e.crypto.subtle,o=e.TextEncoder;if(!i||!o)throw new Error("Password-based backup is not avaiable on this platform");const s=await i.importKey("raw",(new o).encode(t),{name:"PBKDF2"},!1,["deriveBits"]),a=await i.deriveBits({name:"PBKDF2",salt:(new o).encode(n),iterations:r,hash:"SHA-512"},s,8*e.Olm.PRIVATE_KEY_LENGTH);return new Uint8Array(a)}}).call(this,n(6))},function(e,t,n){"use strict";(function(e,r){var i=n(16);Object.defineProperty(t,"__esModule",{value:!0}),t.encodeRecoveryKey=function(t){const n=new e(s.length+t.length+1);n.set(s,0),n.set(t,s.length);let r=0;for(let e=0;e{this.accountData[e.type]=e})}_accumulateRooms(e){e.rooms&&(e.rooms.invite&&Object.keys(e.rooms.invite).forEach(t=>{this._accumulateRoom(t,"invite",e.rooms.invite[t])}),e.rooms.join&&Object.keys(e.rooms.join).forEach(t=>{this._accumulateRoom(t,"join",e.rooms.join[t])}),e.rooms.leave&&Object.keys(e.rooms.leave).forEach(t=>{this._accumulateRoom(t,"leave",e.rooms.leave[t])}))}_accumulateRoom(e,t,n){switch(t){case"invite":this._accumulateInviteState(e,n);break;case"join":this.inviteRooms[e]&&delete this.inviteRooms[e],this._accumulateJoinState(e,n);break;case"leave":this.inviteRooms[e]?delete this.inviteRooms[e]:delete this.joinRooms[e];break;default:r.logger.error("Unknown cateogory: ",t)}}_accumulateInviteState(e,t){if(!t.invite_state||!t.invite_state.events)return;if(!this.inviteRooms[e])return void(this.inviteRooms[e]={invite_state:t.invite_state});const n=this.inviteRooms[e];t.invite_state.events.forEach(e=>{let t=!1;for(let r=0;r{n._accountData[e.type]=e}),t.unread_notifications&&(n._unreadNotifications=t.unread_notifications),t.summary){const e="m.heroes",r="m.invited_member_count",i="m.joined_member_count",o=n._summary,s=t.summary;o[e]=s[e]||o[e],o[i]=s[i]||o[i],o[r]=s[r]||o[r]}if(t.ephemeral&&t.ephemeral.events&&t.ephemeral.events.forEach(e=>{"m.receipt"===e.type&&e.content&&Object.keys(e.content).forEach(t=>{e.content[t]["m.read"]&&Object.keys(e.content[t]["m.read"]).forEach(r=>{n._readReceipts[r]={data:e.content[t]["m.read"][r],eventId:t}})})}),t.timeline&&t.timeline.limited&&(n._timeline=[]),t.state&&t.state.events&&t.state.events.forEach(e=>{o(n._currentState,e)}),t.timeline&&t.timeline.events&&t.timeline.events.forEach((e,r)=>{o(n._currentState,e),n._timeline.push({event:e,token:0===r?t.timeline.prev_batch:null})}),n._timeline.length>this.opts.maxTimelineEntries){for(let e=n._timeline.length-this.opts.maxTimelineEntries;e{this._accumulateGroup(t,"invite",e.groups.invite[t])}),e.groups.join&&Object.keys(e.groups.join).forEach(t=>{this._accumulateGroup(t,"join",e.groups.join[t])}),e.groups.leave&&Object.keys(e.groups.leave).forEach(t=>{this._accumulateGroup(t,"leave",e.groups.leave[t])}))}_accumulateGroup(e,t,n){for(const t of["invite","join","leave"])delete this.groups[t][e];this.groups[t][e]=n}getJSON(){const e={join:{},invite:{},leave:{}};Object.keys(this.inviteRooms).forEach(t=>{e.invite[t]=this.inviteRooms[t]}),Object.keys(this.joinRooms).forEach(t=>{const n=this.joinRooms[t],r={ephemeral:{events:[]},account_data:{events:[]},state:{events:[]},timeline:{events:[],prev_batch:null},unread_notifications:n._unreadNotifications,summary:n._summary};Object.keys(n._accountData).forEach(e=>{r.account_data.events.push(n._accountData[e])});const s={type:"m.receipt",room_id:t,content:{}};Object.keys(n._readReceipts).forEach(e=>{const t=n._readReceipts[e];s.content[t.eventId]||(s.content[t.eventId]={"m.read":{}}),s.content[t.eventId]["m.read"][e]=t.data}),Object.keys(s.content).length>0&&r.ephemeral.events.push(s),n._timeline.forEach(e=>{if(!r.timeline.prev_batch){if(!e.token)return;r.timeline.prev_batch=e.token}r.timeline.events.push(e.event)});const a=Object.create(null);for(let e=r.timeline.events.length-1;e>=0;e--){const t=r.timeline.events[e];if(null===t.state_key||void 0===t.state_key)continue;const n=(0,i.deepCopy)(t);n.unsigned&&(n.unsigned.prev_content&&(n.content=n.unsigned.prev_content),n.unsigned.prev_sender&&(n.sender=n.unsigned.prev_sender)),o(a,n)}Object.keys(n._currentState).forEach(e=>{Object.keys(n._currentState[e]).forEach(t=>{let i=n._currentState[e][t];a[e]&&a[e][t]&&(i=a[e][t]),r.state.events.push(i)})}),e.join[t]=r});const t=[];return Object.keys(this.accountData).forEach(e=>{t.push(this.accountData[e])}),{nextBatch:this.nextBatch,roomsData:e,groupsData:this.groups,accountData:t}}getNextBatchToken(){return this.nextBatch}}},function(e,t,n){"use strict";var r=String.prototype.replace,i=/%20/g,o=n(84),s={RFC1738:"RFC1738",RFC3986:"RFC3986"};e.exports=o.assign({default:s.RFC3986,formatters:{RFC1738:function(e){return r.call(e,i,"+")},RFC3986:function(e){return String(e)}}},s)},function(e,t){for(var n=[],r=0;r<256;++r)n[r]=(r+256).toString(16).substr(1);e.exports=function(e,t){var r=t||0,i=n;return[i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]]].join("")}},function(e,t,n){"use strict";t.__esModule=!0,t.stateify=t.TokenState=t.CharacterState=void 0;var r=n(54);var i=function(e){this.j=[],this.T=e||null};i.prototype={defaultTransition:!1,on:function(e,t){if(e instanceof Array){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:null,n=this.next(new e(""));return n===this.defaultTransition?(n=new this.constructor(t),this.on(e,n)):t&&(n.T=t),n},test:function(e,t){return e instanceof t}});t.CharacterState=o,t.TokenState=s,t.stateify=function(e,t,n,r){for(var i=0,s=e.length,a=t,c=[],f=void 0;i=s)return[];for(;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}},function(e,t,n){"use strict";(function(e){var r=n(155),i=n.n(r),o=n(86),s=n.n(o),a=n(26),c=n.n(a),f=n(27),l=n.n(f),u=n(55),d=n.n(u),h=n(56),p=n.n(h),m=n(5),g=n.n(m),y=n(57),b=n.n(y),v=n(1),_=n.n(v),w=n(0),A=n.n(w),E=n(9),k=n.n(E),S=n(335),T=(n(41),n(156)),I=n(38),x=(n(42),n(157)),R=n(158),C=n(40),O=n(28),P=n(87),M=n(160),D=n(88),N=n(162);n(330);function B(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function j(e){for(var t=1;t0&&void 0!==arguments[0])||arguments[0];if(r.state.client){await r.state.client.leave(r.state.roomId);var t={type:"m.login.password",user:r.state.userId,identifier:{type:"m.id.user",user:r.state.userId},password:r.state.password};await r.state.client.deactivateAccount(t,!0),await r.state.client.stopClient(),await r.state.client.clearStores(),r.setState({client:null,ready:!0}),window.clearInterval(r.state.waitIntervalId)}r.state.localStorage&&r.state.localStorage.clear(),e&&r.setState(r.initialState)})),_()(g()(r),"createLocalStorage",(async function(t,n){var r=e.localStorage;if(null==r){var i="matrix-chat-".concat(t,"-").concat(n),o=I.resolve(I.join(T.homedir(),".local-storage",i));r=new x.LocalStorage(o)}return r})),_()(g()(r),"createClientWithAccount",(async function(){var e=C.createClient(r.props.matrixServerUrl);try{await e.registerRequest({})}catch(c){var t=Object(O.uuid)(),n=Object(O.uuid)(),i=c.data.session,o=await e.registerRequest({auth:{session:i,type:"m.login.dummy"},inhibit_login:!1,password:n,username:t,x_show_msisdn:!0}),s=await r.createLocalStorage(o.device_id,i);r.setState({accessToken:o.access_token,userId:o.user_id,username:t,password:n,localStorage:s,sessionId:i,deviceId:o.device_id});var a={baseUrl:r.props.matrixServerUrl,accessToken:o.access_token,userId:o.user_id,deviceId:o.device_id,sessionStore:new C.WebStorageSessionStore(s)};return C.createClient(a)}})),_()(g()(r),"initializeChat",(async function(){r.setState({ready:!1});var e=await r.createClientWithAccount();try{await e.initCrypto()}catch(e){return r.restartWithoutCrypto()}await e.startClient(),e.once("sync",(async function(t,n,i){"PREPARED"===t&&(r.setState({client:e}),e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e))}))})),_()(g()(r),"restartWithoutCrypto",(async function(){r.state.client&&(r.state.client.leave(r.state.roomId),r.state.client.stopClient(),r.state.client.clearStores(),r.state.localStorage.clear()),r.setState({ready:!1,facilitatorInvited:!1,decryptionErrors:{},roomId:null,typingStatus:null,client:null,isCryptoEnabled:!1}),r.displayBotMessage({body:"Restarting chat without encryption."});var e,t={baseUrl:r.props.matrixServerUrl,accessToken:r.state.accessToken,userId:r.state.userId,deviceId:r.state.deviceId};e=C.createClient(t),await e.startClient(),e.once("sync",(async function(t,n,i){if("PREPARED"===t)try{r.setState({client:e}),e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e),r.displayBotMessage({body:"Messages in this chat are not encrypted."})}catch(e){console.log("error",e),r.handleInitError(e)}}))})),_()(g()(r),"initializeUnencryptedChat",(async function(){r.setState({ready:!1});var e=await r.createClientWithAccount();await e.startClient(),e.once("sync",(async function(t,n,i){e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e)}))})),_()(g()(r),"handleInitError",(function(e){console.log("error",e),r.displayBotMessage({body:r.props.chatUnavailableMessage}),r.setState({ready:!0})})),_()(g()(r),"handleDecryptionError",(async function(e,t){var n=e.getId();r.handleMessageEvent(e),r.setState({decryptionErrors:_()({},n,!0)})})),_()(g()(r),"verifyAllRoomDevices",(async function(e,t){if(t&&e&&r.state.isCryptoEnabled){var n=(await t.getEncryptionTargetMembers()).map((function(e){return e.userId})),i=await e.downloadKeys(n);for(var o in i)for(var s in i[o])await e.setDeviceVerified(o,s)}})),_()(g()(r),"createRoom",(async function(e){var t=new Date,n=t.toLocaleDateString(),i=t.toLocaleTimeString(),o={room_alias_name:"private-support-chat-".concat(Object(O.uuid)()),invite:[r.props.botId],visibility:"private",name:"".concat(i,", ").concat(n," - ").concat(r.props.roomName)},s=await e.isCryptoEnabled();s&&(o.initial_state=[{type:"m.room.encryption",state_key:"",content:U}]);var a=(await e.createRoom(o)).room_id;e.setPowerLevel(a,r.props.botId,100),r.setState({roomId:a,isCryptoEnabled:s})})),_()(g()(r),"sendMessage",(async function(e){if(r.state.client&&r.state.roomId)try{await r.state.client.sendTextMessage(r.state.roomId,e)}catch(t){switch(t.name){case"UnknownDeviceError":Object.keys(t.devices).forEach((function(e){Object.keys(t.devices[e]).map((async function(t){await r.state.client.setDeviceKnown(e,t,!0)}))})),r.sendMessage(e);break;default:r.displayBotMessage({body:"Your message was not sent."}),console.log("Error sending message",t)}}})),_()(g()(r),"displayFakeMessage",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Object(O.uuid)(),i={id:n,type:"m.room.message",sender:t,roomId:r.state.roomId,content:e,timestamp:Date.now()};r.setState({messages:j({},r.state.messages,_()({},n,i))})})),_()(g()(r),"displayBotMessage",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Object(O.uuid)(),i={id:n,type:"m.room.message",sender:r.props.botId,roomId:t||r.state.roomId,content:e,timestamp:Date.now()};r.setState({messages:j({},r.state.messages,_()({},n,i))})})),_()(g()(r),"handleMessageEvent",(function(e){var t={id:e.getId(),type:e.getType(),sender:e.getSender(),roomId:e.getRoomId(),content:e.getContent(),timestamp:e.getTs()};if(!(t.content.showToUser&&t.content.showToUser!==r.state.userId||t.content.body.startsWith("!bot")&&t.sender!==r.state.userId)){var n=s()(r.state.messagesInFlight),i=n.findIndex((function(e){return e===t.content.body}));i>-1&&(n.splice(i,1),r.setState({messagesInFlight:n}));var o=j({},r.state.decryptionErrors);delete o[t.id],r.setState({messages:j({},r.state.messages,_()({},t.id,t)),decryptionErrors:o})}})),_()(g()(r),"handleKeyDown",(function(e){switch(e.keyCode){case 27:r.state.emojiSelectorOpen?r.closeEmojiSelector():r.state.opened&&r.handleToggleOpen()}})),_()(g()(r),"setMatrixListeners",(function(e){e.on("sync",(function(t,n,i){switch(t){case"ERROR":case"SYNCING":break;case"PREPARED":r.setState({client:e})}})),e.on("Room.timeline",(function(t,n){var i=t.getType(),o=t.getContent(),s=t.getSender();if("m.room.encryption"===i&&(r.displayBotMessage({body:"Messages in this chat are secured with end-to-end encryption."},n.room_id),r.verifyAllRoomDevices(e,n)),"m.room.message"===i&&!r.state.isCryptoEnabled){if(t.isEncrypted())return;r.handleMessageEvent(t)}"m.room.member"===i&&"invite"===o.membership&&s===r.props.botId&&r.setState({facilitatorInvited:!0}),"m.room.member"===i&&"join"===o.membership&&s!==r.props.botId&&s!==r.state.userId&&(r.verifyAllRoomDevices(e,n),r.setState({facilitatorId:s,ready:!0}),window.clearInterval(r.state.waitIntervalId))})),e.on("Event.decrypted",(function(e,t){if(t)return r.handleDecryptionError(e,t);"m.room.message"===e.getType()&&r.handleMessageEvent(e)})),e.on("RoomMember.typing",(function(e,t){t.typing&&t.roomId===r.state.roomId?r.setState({typingStatus:"".concat(t.name," is typing...")}):r.setState({typingStatus:null})})),e.on("event",(function(e){var t=e.getType(),n=e.getContent();"m.bot.signal"===t&&r.handleBotSignal(n.signal)}))})),_()(g()(r),"handleBotSignal",(function(e){switch(e){case"END_CHAT":return r.displayBotMessage({body:r.props.exitMessage}),r.exitChat(!1);case"CHAT_OFFLINE":return r.displayBotMessage({body:r.props.chatOfflineMessage}),r.exitChat(!1)}})),_()(g()(r),"handleInputChange",(function(e){r.setState({inputValue:e.target.value})})),_()(g()(r),"handleAcceptTerms",(function(){r.setState({awaitingAgreement:!1}),r.startWaitTimeForFacilitator();try{r.props.isEncryptionDisabled?r.initializeUnencryptedChat():r.initializeChat()}catch(e){r.handleInitError(e)}})),_()(g()(r),"startWaitTimeForFacilitator",(function(){var e=window.setInterval((function(){r.state.facilitatorId||r.state.ready||r.displayBotMessage({body:r.props.waitMessage})}),r.props.waitInterval);r.setState({waitIntervalId:e})})),_()(g()(r),"handleRejectTerms",(function(){r.exitChat(),r.displayBotMessage({body:r.props.exitMessage})})),_()(g()(r),"handleSubmit",(function(e){e.preventDefault();var t=r.state.inputValue;if(!Boolean(t))return null;if(r.state.isCryptoEnabled&&r.state.client&&(!r.state.client.isRoomEncrypted(r.state.roomId)||!r.state.client.isCryptoEnabled()))return null;if(r.state.client&&r.state.roomId){var n=s()(r.state.messagesInFlight);n.push(t),r.setState({inputValue:"",messagesInFlight:n},(function(){return r.sendMessage(t)})),r.chatboxInput.current.focus()}})),_()(g()(r),"onEmojiClick",(function(e,t){e.preventDefault();var n=t.emoji;r.setState({inputValue:r.state.inputValue.concat(n),emojiSelectorOpen:!1},r.chatboxInput.current.focus())})),r.initialState={opened:!1,showDock:!0,client:null,ready:!0,accessToken:null,userId:null,password:null,localStorage:null,messages:{},inputValue:"",errors:[],roomId:null,typingStatus:null,awaitingAgreement:!0,emojiSelectorOpen:!1,facilitatorInvited:!1,isMobile:!0,isSlowConnection:!0,decryptionErrors:{},messagesInFlight:[]},r.state=r.initialState,r.chatboxInput=A.a.createRef(),r.messageWindow=A.a.createRef(),r.termsUrl=A.a.createRef(),r}return b()(n,t),l()(n,[{key:"componentDidUpdate",value:function(e,t){t.messages===this.state.messages&&t.messagesInFlight===this.state.messagesInFlight&&t.typingStatus===this.state.typingStatus||this.messageWindow.current.scrollTo&&this.messageWindow.current.scrollTo(0,this.messageWindow.current.scrollHeight),!t.facilitatorInvited&&this.state.facilitatorInvited&&this.displayBotMessage({body:this.props.confirmationMessage}),!t.opened&&this.state.opened&&this.detectMobile()}},{key:"componentDidMount",value:function(){document.addEventListener("keydown",this.handleKeyDown,!1),window.addEventListener("beforeunload",this.exitChat)}},{key:"componentWillUnmount",value:function(){document.removeEventListener("keydown",this.handleKeyDown,!1),window.removeEventListener("beforeunload",this.exitChat),this.exitChat()}},{key:"render",value:function(){var e,t=this,n=this.state,r=n.ready,o=n.messages,s=n.messagesInFlight,a=n.inputValue,c=n.userId,f=n.roomId,l=n.typingStatus,u=n.opened,d=n.showDock,h=n.emojiSelectorOpen,p=n.isMobile,m=n.decryptionErrors,g=Object.values(o).sort((function(e,t){return e.timestamp-t.timestamp})),y=this.props.position.split(" "),b=i()(y,2),v=b[0],w=b[1];return A.a.createElement("div",{id:"safesupport"},A.a.createElement("div",{className:"docked-widget size-".concat(this.props.size),role:"complementary",style:(e={},_()(e,v,"10px"),_()(e,w,"10px"),e)},A.a.createElement(S.a,{in:u,timeout:250,onExited:this.handleWidgetExit,onEntered:this.handleWidgetEnter},(function(e){return A.a.createElement("div",{className:"widget widget-".concat(e," position-").concat(v),"aria-hidden":!u},A.a.createElement("div",{id:"safesupport-chatbox","aria-haspopup":"dialog"},A.a.createElement(D.a,{handleToggleOpen:t.handleToggleOpen,opened:u,handleExitChat:t.handleExitChat}),A.a.createElement("div",{className:"message-window",ref:t.messageWindow},A.a.createElement("div",{className:"messages"},A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text"},t.props.introMessage)),A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text"},"Please read the full ",A.a.createElement("a",{href:t.props.termsUrl,ref:t.termsUrl,target:"_blank",rel:"noopener noreferrer"},"terms and conditions"),". By using this chat, you agree to these terms.")),A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text"},t.props.agreementMessage)),A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text buttons"},"👉",A.a.createElement("button",{className:"btn",id:"accept",onClick:t.handleAcceptTerms},"YES"),A.a.createElement("button",{className:"btn",id:"reject",onClick:t.handleRejectTerms},"NO"))),g.map((function(e,n){return A.a.createElement(P.a,{key:e.id,message:e,userId:c,botId:t.props.botId,client:t.state.client})})),s.map((function(e,t){return A.a.createElement(P.a,{key:"message-inflight-".concat(t),message:{content:{body:e}},placeholder:!0})})),l&&A.a.createElement("div",{className:"notices"},A.a.createElement("div",{role:"status"},l)),Boolean(Object.keys(m).length)&&A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text buttons"},"Restart chat without encryption?",A.a.createElement("button",{className:"btn",id:"accept",onClick:t.restartWithoutCrypto},"RESTART"))),!r&&A.a.createElement("div",{className:"loader"},"loading..."))),A.a.createElement("div",{className:"input-window"},A.a.createElement("form",{onSubmit:t.handleSubmit},A.a.createElement("div",{className:"message-input-container"},A.a.createElement("input",{id:"message-input",type:"text",onChange:t.handleInputChange,value:a,"aria-label":"Send a message...",placeholder:"Send a message...",autoFocus:!0,ref:t.chatboxInput}),"entered"===e&&!p&&A.a.createElement(N.a,{onEmojiClick:t.onEmojiClick,emojiSelectorOpen:h,toggleEmojiSelector:t.toggleEmojiSelector,closeEmojiSelector:t.closeEmojiSelector})),A.a.createElement("input",{type:"submit",value:"Send",id:"submit",onClick:t.handleSubmit})))))})),d&&!f&&A.a.createElement(M.a,{handleToggleOpen:this.handleToggleOpen,size:this.props.size}),d&&f&&A.a.createElement(D.a,{handleToggleOpen:this.handleToggleOpen,opened:u,handleExitChat:this.handleExitChat})))}}]),n}(A.a.Component);L.propTypes={matrixServerUrl:k.a.string.isRequired,botId:k.a.string.isRequired,termsUrl:k.a.string,introMessage:k.a.string,roomName:k.a.string,agreementMessage:k.a.string,confirmationMessage:k.a.string,exitMessage:k.a.string,chatUnavailableMessage:k.a.string,anonymousDisplayName:k.a.string,waitMessage:k.a.string,chatOfflineMessage:k.a.string,isEncryptionDisabled:k.a.bool,position:k.a.oneOf(["top left","top right","bottom left","bottom right"]),size:k.a.oneOf(["small","large"]),maxWaitTime:k.a.number,waitInterval:k.a.number},L.defaultProps={matrixServerUrl:"https://matrix.rhok.space/",botId:"@help-bot:rhok.space",termsUrl:"https://tosdr.org/",roomName:"Support Chat",introMessage:"This chat application does not collect any of your personal data or any data from your use of this service.",agreementMessage:"Do you want to continue?",confirmationMessage:"Waiting for a facilitator to join the chat...",exitMessage:"The chat is closed. You may close this window.",anonymousDisplayName:"Anonymous",chatUnavailableMessage:"The chat service is not available right now. Please try again later.",waitMessage:"Please be patient, our online facilitators are currently responding to other support requests.",chatOfflineMessage:"All of the chat facilitators are currently offline.",isEncryptionDisabled:!1,position:"bottom right",size:"large",maxWaitTime:6e5,waitInterval:12e4},t.a=L}).call(this,n(6))},function(e,t,n){var r=n(168),i=n(169),o=n(170);e.exports=function(e,t){return r(e)||i(e,t)||o()}},function(e,t){t.endianness=function(){return"LE"},t.hostname=function(){return"undefined"!=typeof location?location.hostname:""},t.loadavg=function(){return[]},t.uptime=function(){return 0},t.freemem=function(){return Number.MAX_VALUE},t.totalmem=function(){return Number.MAX_VALUE},t.cpus=function(){return[]},t.type=function(){return"Browser"},t.release=function(){return"undefined"!=typeof navigator?navigator.appVersion:""},t.networkInterfaces=t.getNetworkInterfaces=function(){return{}},t.arch=function(){return"javascript"},t.platform=function(){return"browser"},t.tmpdir=t.tmpDir=function(){return"/tmp"},t.EOL="\n",t.homedir=function(){return"/"}},function(e,t,n){(function(e){(function(){var r,i,o,s,a,c,f,l,u,d,h,p,m,g=function(e,t){for(var n in t)y.call(t,n)&&(e[n]=t[n]);function r(){this.constructor=e}return r.prototype=t.prototype,e.prototype=new r,e.__super__=t.prototype,e},y={}.hasOwnProperty;p=n(38),h=n(42),d=n(10),m=n(179).sync,c=function(e){var t,n,r,i,o;for(o=[],t=0,n=(i=h.readdirSync(e)).length;tthis.quota)throw new s;if(m(c,y,"utf8"),i||((u=new o(n,this._keys.push(e)-1)).size=b,this._metaKeyMap[e]=u,this.length+=1,this._bytesInUse+=b),l)return r=new a(e,g,t,this._eventUrl),this.emit("storage",r)},r.prototype.getItem=function(e){var t,n;return e=f(e),(n=this._metaKeyMap[e])?(t=p.join(this._location,n.key),h.readFileSync(t,"utf8")):null},r.prototype._getStat=function(e){var t;e=f(e),t=p.join(this._location,encodeURIComponent(e));try{return h.statSync(t)}catch(e){return null}},r.prototype.removeItem=function(e){var t,n,r,i,o,s,c,u;if(e=f(e),s=this._metaKeyMap[e]){for(i in c=null,(r=d.EventEmitter.listenerCount(this,"storage"))&&(c=this.getItem(e)),delete this._metaKeyMap[e],this.length-=1,this._bytesInUse-=s.size,n=p.join(this._location,s.key),this._keys.splice(s.index,1),u=this._metaKeyMap)u[i],(o=this._metaKeyMap[i]).index>s.index&&(o.index-=1);if(l(n),r)return t=new a(e,c,null,this._eventUrl),this.emit("storage",t)}},r.prototype.key=function(e){var t;return"---.EMPTY_STRING.---"===(t=this._keys[e])?"":t},r.prototype.clear=function(){var e;if(c(this._location),this._metaKeyMap=u(),this._keys=[],this.length=0,this._bytesInUse=0,d.EventEmitter.listenerCount(this,"storage"))return e=new a(null,null,null,this._eventUrl),this.emit("storage",e)},r.prototype._getBytesInUse=function(){return this._bytesInUse},r.prototype._deleteLocation=function(){return delete n[this._location],l(this._location),this._metaKeyMap={},this._keys=[],this.length=0,this._bytesInUse=0},r}(d.EventEmitter)),t.LocalStorage=i,t.JSONStorage=r,t.QUOTA_EXCEEDED_ERR=s}).call(this)}).call(this,n(13))},function(e,t,n){(function(t,r,i,o){var s,a,c,f,l={},u=(c="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,function(f){var u,d;if(f=f||{},u||(u=void 0!==f?f:{}),"undefined"!=typeof window)d=function(e){window.crypto.getRandomValues(e)};else{if(!e.exports)throw Error("Cannot find global to attach library to");var h=n(203);d=function(e){var t=h.randomBytes(e.length);e.set(t)},r=t.process}if("undefined"!=typeof OLM_OPTIONS)for(var p in OLM_OPTIONS)OLM_OPTIONS.hasOwnProperty(p)&&(u[p]=OLM_OPTIONS[p]);u.onRuntimeInitialized=function(){We=u._olm_error(),l.PRIVATE_KEY_LENGTH=u._olm_pk_private_key_length(),s&&s()},u.onAbort=function(e){a&&a(e)};var m,g={};for(m in u)u.hasOwnProperty(m)&&(g[m]=u[m]);u.arguments=[],u.thisProgram="./this.program",u.quit=function(e,t){throw t},u.preRun=[],u.postRun=[];var y=!1,b=!1,v=!1,_=!1;y="object"==typeof window,b="function"==typeof importScripts,v="object"==typeof r&&!y&&!b,_=!y&&!v&&!b;var w,A,E="";v?(E=i+"/",u.read=function(e,t){var r=Ae(e);return r||(w||(w=n(42)),A||(A=n(38)),e=A.normalize(e),r=w.readFileSync(e)),t?r:r.toString()},u.readBinary=function(e){return(e=u.read(e,!0)).buffer||(e=new Uint8Array(e)),C(e.buffer),e},1>2];return e=t+e+15&-16,U[V>>2]=e,(e=e>=$)&&(J(),e=!0),e?(U[V>>2]=t,0):t}function x(e){var t;return t||(t=16),Math.ceil(e/t)*t}g=void 0;var R=!1;function C(e,t){e||Ne("Assertion failed: "+t)}function O(e){var t="i8";switch("*"===t.charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":N[e>>0]=0;break;case"i16":j[e>>1]=0;break;case"i32":U[e>>2]=0;break;case"i64":tempI64=[0,(tempDouble=0,1<=+ce(tempDouble)?0>>0:~~+fe((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],U[e>>2]=tempI64[0],U[e+4>>2]=tempI64[1];break;case"float":L[e>>2]=0;break;case"double":F[e>>3]=0;break;default:Ne("invalid type for setValue: "+t)}}function P(e,t){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 U[e>>2];case"float":return L[e>>2];case"double":return F[e>>3];default:Ne("invalid type for getValue: "+t)}return null}function M(e){var t,n=u.ALLOC_STACK;if("number"==typeof e)var r=!0,i=e;else r=!1,i=e.length;if(t=4==n?o:["function"==typeof ke?ke:T,Se,T,I][void 0===n?2:n](Math.max(i,1)),r){var o=t;for(C(0==(3&t)),e=t+(-4&i);o>2]=0;for(e=t+i;o>0]=0;return t}return e.subarray||e.slice?B.set(e,t):B.set(new Uint8Array(e),t),t}var D,N,B,j,U,L,F,q,z,K,G,H,V,Q="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function W(e){for(var t=B,n=e;t[n];)++n;if(16r?n+=String.fromCharCode(r):(r-=65536,n+=String.fromCharCode(55296|r>>10,56320|1023&r))}}else n+=String.fromCharCode(r)}}function Y(e,t,n,r){if(!(0=s&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),127>=s){if(n>=r)break;t[n++]=s}else{if(2047>=s){if(n+1>=r)break;t[n++]=192|s>>6}else{if(65535>=s){if(n+2>=r)break;t[n++]=224|s>>12}else{if(2097151>=s){if(n+3>=r)break;t[n++]=240|s>>18}else{if(67108863>=s){if(n+4>=r)break;t[n++]=248|s>>24}else{if(n+5>=r)break;t[n++]=252|s>>30,t[n++]=128|s>>24&63}t[n++]=128|s>>18&63}t[n++]=128|s>>12&63}t[n++]=128|s>>6&63}t[n++]=128|63&s}}return t[n]=0,n-i}function X(e){for(var t=0,n=0;n=r&&(r=65536+((1023&r)<<10)|1023&e.charCodeAt(++n)),127>=r?++t:t=2047>=r?t+2:65535>=r?t+3:2097151>=r?t+4:67108863>=r?t+5:t+6}return t}function J(){Ne("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+$+", (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 ")}"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le"),q=z=K=G=H=V=0;var Z=u.TOTAL_STACK||5242880,$=u.TOTAL_MEMORY||16777216;function ee(e){for(;0>0]=e.charCodeAt(n)}var ce=Math.abs,fe=Math.ceil,le=Math.floor,ue=Math.min,de=0,he=null,pe=null;u.preloadedImages={},u.preloadedAudios={};var me=null,ge="data:application/octet-stream;base64,";q=39112,ne.push(),me="data:application/octet-stream;base64,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dmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAAAAAAAAXZQAAAgAAABmlAAACwAAALiSAABUlAAACAAAALiSAAC0mAAAAAAAAAEAAAABAAAAAQAAAAIAAAACAAAAuJIAANiUAAALAAAAuJIAACKWAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmJgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABPTE1fS0VZUwBPTE1fUk9PVABPTE1fUkFUQ0hFVABzZW5kZXIgY2hhaW4gaW5kZXg6ICVkIAByZWNlaXZlciBjaGFpbiBpbmRpY2VzOgAgc2tpcHBlZCBtZXNzYWdlIGtleXM6ACAlZAABAiJjdXJ2ZTI1NTE5IjoAImVkMjU1MTkiOgBNRUdPTE1fS0VZUwAAAQIDVU5LTk9XTl9FUlJPUgBTVUNDRVNTAE5PVF9FTk9VR0hfUkFORE9NAE9VVFBVVF9CVUZGRVJfVE9PX1NNQUxMAEJBRF9NRVNTQUdFX1ZFUlNJT04AQkFEX01FU1NBR0VfRk9STUFUAEJBRF9NRVNTQUdFX01BQwBCQURfTUVTU0FHRV9LRVlfSUQASU5WQUxJRF9CQVNFNjQAQkFEX0FDQ09VTlRfS0VZAFVOS05PV05fUElDS0xFX1ZFUlNJT04AQ09SUlVQVEVEX1BJQ0tMRQBCQURfU0VTU0lPTl9LRVkAVU5LTk9XTl9NRVNTQUdFX0lOREVYAEJBRF9MRUdBQ1lfQUNDT1VOVF9QSUNLTEUAQkFEX1NJR05BVFVSRQBPTE1fSU5QVVRfQlVGRkVSX1RPT19TTUFMTABQaWNrbGUALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBuYW4ATkFOAC4=";var ye=q;q+=16,V=T(4),z=K=x(q),H=x(G=z+Z),U[V>>2]=H;var be=!1;function ve(e){var t=Array(X(e)+1);return e=Y(e,t,0,t.length),t.length=e,t}function _e(e){for(var t=[],n=0;n>4,i=(15&i)<<4|o>>2;var a=(3&o)<<6|s;t+=String.fromCharCode(r),64!==o&&(t+=String.fromCharCode(i)),64!==s&&(t+=String.fromCharCode(a))}while(n>2]=e),e},_emscripten_memcpy_big:function(e,t,n){return B.set(B.subarray(t,t+n),e),e},DYNAMICTOP_PTR:V,tempDoublePtr:ye,STACKTOP:K,STACK_MAX:G};var Ee=function(e,t,n){"use asm";var r=new e.Int8Array(n);var i=new e.Int16Array(n);var o=new e.Int32Array(n);var s=new e.Uint8Array(n);var a=new e.Uint16Array(n);var c=new e.Uint32Array(n);var f=new e.Float32Array(n);var l=new e.Float64Array(n);var u=t.DYNAMICTOP_PTR|0;var d=t.tempDoublePtr|0;var h=t.STACKTOP|0;var p=t.STACK_MAX|0;var m=0;var g=0;var y=0;var b=0;var v=e.NaN,_=e.Infinity;var w=0,A=0,E=0,k=0,S=0.0;var T=0;var I=e.Math.floor;var x=e.Math.abs;var R=e.Math.sqrt;var C=e.Math.pow;var O=e.Math.cos;var P=e.Math.sin;var M=e.Math.tan;var D=e.Math.acos;var N=e.Math.asin;var B=e.Math.atan;var j=e.Math.atan2;var U=e.Math.exp;var L=e.Math.log;var F=e.Math.ceil;var q=e.Math.imul;var z=e.Math.min;var K=e.Math.max;var G=e.Math.clz32;var H=t.abort;var V=t.assert;var Q=t.enlargeMemory;var W=t.getTotalMemory;var Y=t.abortOnCannotGrowMemory;var X=t.invoke_ii;var J=t.invoke_iii;var Z=t.invoke_iiii;var $=t.invoke_iiiiiiiiii;var ee=t.___setErrNo;var te=t._emscripten_memcpy_big;var ne=0.0;function re(e){e=e|0;var t=0;t=h;h=h+e|0;h=h+15&-16;return t|0}function ie(){return h|0}function oe(e){e=e|0;h=e}function se(e,t){e=e|0;t=t|0;h=e;p=t}function ae(e,t){e=e|0;t=t|0;if(!m){m=e;g=t}}function ce(e){e=e|0;T=e}function fe(){return T|0}function le(e){e=e|0;var t=0;t=e+2|0;e=(t>>>0)/3|0;return(e<<2|t-(e*3|0))+-2|0}function ue(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,c=0,f=0;a=t-((t>>>0)%3|0)|0;o=e+a|0;if(!a){a=n;o=e}else{i=e;do{a=s[i>>0]|0;c=a<<8|(s[i+1>>0]|0);f=s[i+2>>0]|0;i=i+3|0;r[n+3>>0]=r[16+(f&63)>>0]|0;r[n+2>>0]=r[16+((c<<8|f)>>>6&63)>>0]|0;r[n+1>>0]=r[16+(c>>>4&63)>>0]|0;r[n>>0]=r[16+(a>>>2)>>0]|0;n=n+4|0}while((i|0)!=(o|0));a=n}n=e+t-o|0;if(!n){f=a;return f|0}i=s[o>>0]|0;if((n|0)==2){n=s[o+1>>0]|0;r[a+2>>0]=r[16+(n<<2&60)>>0]|0;n=(i<<8|n)>>>4;i=3}else{n=i<<4;i=2}r[a+1>>0]=r[16+(n&63)>>0]|0;r[a>>0]=r[16+(n>>>6)>>0]|0;f=a+i|0;return f|0}function de(e){e=e|0;var t=0;t=e+2|0;return((e&3|0)==1?-1:(t&3)+-2+((t>>>2)*3|0)|0)|0}function he(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,c=0,f=0,l=0,u=0;f=t&-4;a=e+f|0;if(!f)c=e;else{c=(((f+-4|0)>>>2)*3|0)+3|0;i=n;o=e;while(1){l=(s[80+(r[o>>0]&127)>>0]|0)<<6|(s[80+(r[o+1>>0]&127)>>0]|0);u=l<<6|(s[80+(r[o+2>>0]&127)>>0]|0);r[i+2>>0]=u<<6|(s[80+(r[o+3>>0]&127)>>0]|0);o=o+4|0;r[i+1>>0]=u>>>2;r[i>>0]=l>>>4;if((o|0)==(a|0))break;else i=i+3|0}n=n+c|0;c=e+f|0}i=e+t|0;o=i-c|0;if(!o)return i|0;a=(s[80+(r[c>>0]&127)>>0]|0)<<6|(s[80+(r[c+1>>0]&127)>>0]|0);if((o|0)==3)r[n+1>>0]=(a<<6|(s[80+(r[c+2>>0]&127)>>0]|0))>>>2;r[n>>0]=a>>>4;return i|0}function pe(e){e=e|0;var t=0;t=e+2|0;e=(t>>>0)/3|0;return(e<<2|t-(e*3|0))+-2|0}function me(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,c=0,f=0,l=0;c=t-((t>>>0)%3|0)|0;a=e+c|0;if(!c){c=n;a=e}else{i=n;o=e;do{c=s[o>>0]|0;f=c<<8|(s[o+1>>0]|0);l=s[o+2>>0]|0;o=o+3|0;r[i+3>>0]=r[16+(l&63)>>0]|0;r[i+2>>0]=r[16+((f<<8|l)>>>6&63)>>0]|0;r[i+1>>0]=r[16+(f>>>4&63)>>0]|0;r[i>>0]=r[16+(c>>>2)>>0]|0;i=i+4|0}while((o|0)!=(a|0));c=i}i=e+t-a|0;if(!i){f=c;l=n;l=f-l|0;return l|0}o=s[a>>0]|0;if((i|0)==2){i=s[a+1>>0]|0;r[c+2>>0]=r[16+(i<<2&60)>>0]|0;i=(o<<8|i)>>>4;o=3}else{i=o<<4;o=2}r[c+1>>0]=r[16+(i&63)>>0]|0;r[c>>0]=r[16+(i>>>6)>>0]|0;f=c+o|0;l=n;l=f-l|0;return l|0}function ge(e){e=e|0;var t=0;t=e+2|0;return((e&3|0)==1?-1:(t&3)+-2+((t>>>2)*3|0)|0)|0}function ye(e,t,n){e=e|0;t=t|0;n=n|0;he(e,t,n)|0;n=t+2|0;return((t&3|0)==1?-1:(n&3)+-2+((n>>>2)*3|0)|0)|0}function be(e,t){e=e|0;t=t|0;r[e+3>>0]=t;r[e+2>>0]=t>>>8;r[e+1>>0]=t>>>16;r[e>>0]=t>>>24;return e+4|0}function ve(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;o[n>>2]=0;r=e+4|0;if(r>>>0>t>>>0){r=t;return r|0}o[n>>2]=0;t=(s[e>>0]|0)<<8;o[n>>2]=t;t=(t|(s[e+1>>0]|0))<<8;o[n>>2]=t;t=(t|(s[e+2>>0]|0))<<8;o[n>>2]=t;o[n>>2]=t|(s[e+3>>0]|0);return r|0}function _e(e,t){e=e|0;t=t|0;r[e>>0]=t&1;return e+1|0}function we(e,t,n){e=e|0;t=t|0;n=n|0;if((e|0)==(t|0)){n=e;return n|0}r[n>>0]=(r[e>>0]|0)!=0&1;n=e+1|0;return n|0}function Ae(e,t,n){e=e|0;t=t|0;n=n|0;Ms(e|0,t|0,n|0)|0;return e+n|0}function Ee(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=e+r|0;if(i>>>0>t>>>0){i=t;return i|0}Ms(n|0,e|0,r|0)|0;return i|0}function ke(e){e=e|0;return 32}function Se(e,t){e=e|0;t=t|0;var n=0,i=0;i=e;n=i+32|0;do{r[i>>0]=r[t>>0]|0;i=i+1|0;t=t+1|0}while((i|0)<(n|0));return e+32|0}function Te(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;i=e+32|0;if(i>>>0>t>>>0){i=t;return i|0}t=e;e=n+32|0;do{r[n>>0]=r[t>>0]|0;n=n+1|0;t=t+1|0}while((n|0)<(e|0));return i|0}function Ie(e){e=e|0;return 64}function xe(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;n=e;i=t;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));n=e+32|0;i=t+32|0;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));return e+64|0}function Re(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0;i=e+32|0;if(i>>>0>t>>>0)i=t;else{a=n;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0))}o=i+32|0;if(o>>>0>t>>>0){a=t;return a|0}a=n+32|0;e=i;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0));a=o;return a|0}function Ce(e){e=e|0;return 32}function Oe(e,t){e=e|0;t=t|0;var n=0,i=0;i=e;n=i+32|0;do{r[i>>0]=r[t>>0]|0;i=i+1|0;t=t+1|0}while((i|0)<(n|0));return e+32|0}function Pe(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;i=e+32|0;if(i>>>0>t>>>0){i=t;return i|0}t=e;e=n+32|0;do{r[n>>0]=r[t>>0]|0;n=n+1|0;t=t+1|0}while((n|0)<(e|0));return i|0}function Me(e){e=e|0;return 96}function De(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;n=e;i=t;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));n=e+32|0;i=t+32|0;o=n+64|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));return e+96|0}function Ne(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0;i=e+32|0;if(i>>>0>t>>>0)i=t;else{a=n;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0))}o=i+64|0;if(o>>>0>t>>>0){a=t;return a|0}a=n+32|0;e=i;s=a+64|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0));a=o;return a|0}function Be(e,t){e=e|0;t=t|0;r[e+3>>0]=t;r[e+2>>0]=t>>>8;r[e+1>>0]=t>>>16;r[e>>0]=t>>>24;return e+4|0}function je(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;o[n>>2]=0;r=e+4|0;if(r>>>0>t>>>0){r=t;return r|0}o[n>>2]=0;t=(s[e>>0]|0)<<8;o[n>>2]=t;t=(t|(s[e+1>>0]|0))<<8;o[n>>2]=t;t=(t|(s[e+2>>0]|0))<<8;o[n>>2]=t;o[n>>2]=t|(s[e+3>>0]|0);return r|0}function Ue(e,t){e=e|0;t=t|0;r[e>>0]=(t|0)!=0&1;return e+1|0}function Le(e,t,n){e=e|0;t=t|0;n=n|0;if((e|0)==(t|0)){n=e;return n|0}r[n>>0]=(r[e>>0]|0)!=0&1;n=e+1|0;return n|0}function Fe(e,t,n){e=e|0;t=t|0;n=n|0;Ms(e|0,t|0,n|0)|0;return e+n|0}function qe(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=e+r|0;if(i>>>0>t>>>0){i=t;return i|0}Ms(n|0,e|0,r|0)|0;return i|0}function ze(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0,s=0;if(t>>>0>127){o=t;i=1;while(1){i=i+1|0;if(o>>>0>16383)o=o>>>7;else{s=i;break}}}else s=1;if(e>>>0>127){i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else{o=i;break}}}else o=1;if(n>>>0>127){e=n;i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else break}}else i=1;return t+4+n+r+s+o+i|0}function Ke(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;r[a>>0]=t;t=a+2|0;r[a+1>>0]=10;if(i>>>0>127){c=t;f=i;while(1){t=c+1|0;r[c>>0]=f|128;a=f>>>7;if(f>>>0>16383){c=t;f=a}else break}}else a=i;f=t+1|0;r[t>>0]=a;o[e>>2]=f;i=f+i|0;t=i+1|0;r[i>>0]=16;if(n>>>0>127)while(1){a=t+1|0;r[t>>0]=n|128;c=n>>>7;if(n>>>0>16383){t=a;n=c}else{n=c;break}}else a=t;r[a>>0]=n;c=e+4|0;t=a+2|0;r[a+1>>0]=34;if(s>>>0<=127){f=s;i=t;f=f&255;e=i+1|0;r[i>>0]=f;o[c>>2]=e;return}a=t;while(1){t=a+1|0;r[a>>0]=s|128;n=s>>>7;if(s>>>0>16383){a=t;s=n}else break}i=n&255;e=t+1|0;r[t>>0]=i;o[c>>2]=e;return}function Ge(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0;s=n-i|0;f=t+s|0;o[e+8>>2]=t;o[e+12>>2]=n;u=e+1|0;r[u>>0]=0;d=e+16|0;h=e+20|0;p=e+24|0;l=e+28|0;o[d>>2]=0;o[d+4>>2]=0;o[d+8>>2]=0;o[d+12>>2]=0;if(n>>>0>>0|(s|0)==0)return;r[e>>0]=r[t>>0]|0;if((s|0)==1)return;a=e+4|0;c=f;s=t+1|0;e:while(1){if((r[s>>0]|0)==10){t=s+1|0;if((t|0)!=(f|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)!=(t|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0));if(n>>>0>(c-e|0)>>>0){s=58;break}}else{n=0;e=t}}else{n=0;e=f}o[d>>2]=e;o[h>>2]=n;e=e+n|0}else e=s;if((e|0)==(f|0)){s=58;break}if((r[e>>0]|0)==16){t=e+1|0;if((t|0)!=(f|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)==(t|0)){n=0;e=t}else{n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0))}}else{n=0;e=f}o[a>>2]=n;r[u>>0]=1}if((e|0)==(f|0)){s=58;break}if((r[e>>0]|0)==34){t=e+1|0;if((t|0)!=(f|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)!=(t|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0));if(n>>>0>(c-e|0)>>>0){s=58;break}}else{n=0;e=t}}else{n=0;e=f}o[p>>2]=e;o[l>>2]=n;e=e+n|0}t:do{if(!((s|0)!=(e|0)|(e|0)==(f|0))){n=r[s>>0]|0;switch(n&7){case 0:{s=s+1|0;e=(s|0)==(f|0);if(n<<24>>24<=-1)while(1){if(e){s=58;break e}n=s+1|0;e=(n|0)==(f|0);if((r[s>>0]|0)>-1){s=n;break}else s=n}if(e)break t;while(1){t=s;s=s+1|0;if((r[t>>0]|0)>-1)break t;if((s|0)==(f|0)){s=58;break e}}}case 2:break;default:{s=58;break e}}s=s+1|0;e=(s|0)==(f|0);if(n<<24>>24<=-1)while(1){if(e){s=58;break e}n=s+1|0;e=(n|0)==(f|0);if((r[s>>0]|0)>-1){s=n;break}else s=n}if(!e){e=s;while(1){t=e;e=e+1|0;if((r[t>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)!=(s|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(s|0));if(n>>>0>(c-e|0)>>>0){s=58;break e}else s=e+n|0}}}else s=e}while(0);if((s|0)==(f|0)){s=58;break}}if((s|0)==58)return}function He(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0,s=0,a=0,c=0;if(e>>>0>127){o=e;i=1;while(1){i=i+1|0;if(o>>>0>16383)o=o>>>7;else break}}else i=1;if(t>>>0>127){s=t;o=1;while(1){o=o+1|0;if(s>>>0>16383)s=s>>>7;else break}}else o=1;if(n>>>0>127){a=n;s=1;while(1){s=s+1|0;if(a>>>0>16383)a=a>>>7;else{c=s;break}}}else c=1;if(r>>>0>127){a=r;s=1;while(1){s=s+1|0;if(a>>>0>16383)a=a>>>7;else break}}else s=1;return e+5+t+n+r+i+o+c+s|0}function Ve(e,t,n,i,s,a,c){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0;r[c>>0]=t;u=e+8|0;t=c+2|0;r[c+1>>0]=10;if(s>>>0>127){f=t;l=s;while(1){t=f+1|0;r[f>>0]=l|128;c=l>>>7;if(l>>>0>16383){f=t;l=c}else break}}else c=s;l=t+1|0;r[t>>0]=c;o[u>>2]=l;s=l+s|0;u=e+4|0;t=s+1|0;r[s>>0]=18;if(i>>>0>127){f=i;while(1){l=t+1|0;r[t>>0]=f|128;c=f>>>7;if(f>>>0>16383){t=l;f=c}else{t=l;break}}}else c=i;s=t+1|0;r[t>>0]=c;o[u>>2]=s;i=s+i|0;t=i+1|0;r[i>>0]=26;if(n>>>0>127){f=n;while(1){l=t+1|0;r[t>>0]=f|128;c=f>>>7;if(f>>>0>16383){t=l;f=c}else{t=l;break}}}else c=n;l=t+1|0;r[t>>0]=c;o[e>>2]=l;n=l+n|0;l=e+12|0;t=n+1|0;r[n>>0]=34;if(a>>>0<=127){i=a;e=t;i=i&255;n=e+1|0;r[e>>0]=i;o[l>>2]=n;return}f=t;while(1){t=f+1|0;r[f>>0]=a|128;c=a>>>7;if(a>>>0>16383){f=t;a=c}else break}e=c&255;n=t+1|0;r[t>>0]=e;o[l>>2]=n;return}function Qe(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0;l=t+n|0;u=e+20|0;d=e+24|0;h=e+4|0;p=e+8|0;m=e+12|0;g=e+16|0;c=e+28|0;f=e+32|0;o[h>>2]=0;o[h+4>>2]=0;o[h+8>>2]=0;o[h+12>>2]=0;o[h+16>>2]=0;o[h+20>>2]=0;o[h+24>>2]=0;o[h+28>>2]=0;if(!n)return;r[e>>0]=r[t>>0]|0;if((n|0)==1)return;a=l;e=t+1|0;e:while(1){if((r[e>>0]|0)==10){s=e+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[u>>2]=n;o[d>>2]=t;n=n+t|0}else n=e;if((n|0)==(l|0)){e=70;break}if((r[n>>0]|0)==18){s=n+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[m>>2]=n;o[g>>2]=t;n=n+t|0}if((n|0)==(l|0)){e=70;break}if((r[n>>0]|0)==26){s=n+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[h>>2]=n;o[p>>2]=t;n=n+t|0}if((n|0)==(l|0)){e=70;break}if((r[n>>0]|0)==34){s=n+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[c>>2]=n;o[f>>2]=t;n=n+t|0}t:do{if(!((e|0)!=(n|0)|(n|0)==(l|0))){t=r[e>>0]|0;switch(t&7){case 0:{e=e+1|0;n=(e|0)==(l|0);if(t<<24>>24<=-1)while(1){if(n){e=70;break e}t=e+1|0;n=(t|0)==(l|0);if((r[e>>0]|0)>-1){e=t;break}else e=t}if(n)break t;while(1){s=e;e=e+1|0;if((r[s>>0]|0)>-1)break t;if((e|0)==(l|0)){e=70;break e}}}case 2:break;default:{e=70;break e}}e=e+1|0;n=(e|0)==(l|0);if(t<<24>>24<=-1)while(1){if(n){e=70;break e}t=e+1|0;n=(t|0)==(l|0);if((r[e>>0]|0)>-1){e=t;break}else e=t}if(!n){n=e;while(1){s=n;n=n+1|0;if((r[s>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(e|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(e|0));if(t>>>0>(a-n|0)>>>0){e=70;break e}else e=n+t|0}}}else e=n}while(0);if((e|0)==(l|0)){e=70;break}}if((e|0)==70)return}function We(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0;if(e>>>0>127){i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else break}}else i=1;if(t>>>0>127){o=t;e=1;while(1){e=e+1|0;if(o>>>0>16383)o=o>>>7;else break}}else e=1;return t+3+n+r+i+e|0}function Ye(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0;r[i>>0]=e;a=i+2|0;r[i+1>>0]=8;if(t>>>0>127){c=a;while(1){a=c+1|0;r[c>>0]=t|128;e=t>>>7;if(t>>>0>16383){c=a;t=e}else break}}else e=t;r[a>>0]=e;e=a+2|0;r[a+1>>0]=18;if(n>>>0>127){t=n;while(1){c=e+1|0;r[e>>0]=t|128;a=t>>>7;if(t>>>0>16383){e=c;t=a}else{e=c;break}}}else a=n;c=e+1|0;r[e>>0]=a;o[s>>2]=c;return c+n-i|0}function Xe(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,h=0;f=i+n|0;n=t-f|0;l=e+n|0;u=s+4|0;o[u>>2]=0;d=s+12|0;o[d>>2]=0;h=s+16|0;o[h>>2]=0;if(f>>>0>t>>>0|(n|0)==0)return;r[s>>0]=r[e>>0]|0;e:do{if((n|0)==1)n=0;else{f=l;n=0;i=e+1|0;do{if((r[i>>0]|0)==8){a=i+1|0;if((a|0)!=(l|0)){n=a;while(1){c=n;n=n+1|0;if((r[c>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)==(a|0)){t=0;n=a}else{t=0;e=n;do{e=e+-1|0;t=t<<7|r[e>>0]&127}while((e|0)!=(a|0))}}else{t=0;n=l}o[u>>2]=t;t=n;n=1}else t=i;if((t|0)==(l|0))break e;if((r[t>>0]|0)==18){c=t+1|0;if((c|0)!=(l|0)){t=c;while(1){a=t;t=t+1|0;if((r[a>>0]|0)>-1)break;if((t|0)==(l|0)){t=l;break}}if((t|0)!=(c|0)){e=0;a=t;do{a=a+-1|0;e=e<<7|r[a>>0]&127}while((a|0)!=(c|0));if(e>>>0>(f-t|0)>>>0)break e}else{e=0;t=c}}else{e=0;t=l}o[d>>2]=t;o[h>>2]=e;t=t+e|0}t:do{if(!((i|0)!=(t|0)|(t|0)==(l|0))){e=r[i>>0]|0;switch(e&7){case 0:{i=i+1|0;t=(i|0)==(l|0);if(e<<24>>24<=-1)while(1){if(t)break e;e=i+1|0;t=(e|0)==(l|0);if((r[i>>0]|0)>-1){i=e;break}else i=e}if(t)break t;while(1){c=i;i=i+1|0;if((r[c>>0]|0)>-1)break t;if((i|0)==(l|0))break e}}case 2:break;default:break e}i=i+1|0;t=(i|0)==(l|0);if(e<<24>>24<=-1)while(1){if(t)break e;e=i+1|0;t=(e|0)==(l|0);if((r[i>>0]|0)>-1){i=e;break}else i=e}if(!t){t=i;while(1){c=t;t=t+1|0;if((r[c>>0]|0)>-1)break;if((t|0)==(l|0)){t=l;break}}if((t|0)!=(i|0)){e=0;a=t;do{a=a+-1|0;e=e<<7|r[a>>0]&127}while((a|0)!=(i|0));if(e>>>0>(f-t|0)>>>0)break e;else i=t+e|0}}}else i=t}while(0)}while((i|0)!=(l|0))}}while(0);o[s+8>>2]=n&255;return}function Je(e){e=e|0;gn(e,37520,37536);o[e+3216>>2]=0;r[e+3220>>0]=0;return}function Ze(e){e=e|0;return 64}function $e(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0,l=0,u=0,d=0;d=h;h=h+224|0;f=d+160|0;l=d+96|0;u=d;if(a>>>0<64){o[e+3216>>2]=1;u=-1;h=d;return u|0}else{pt(s,f);pt(s+32|0,l);t=t+96|0;r[e+3220>>0]=0;s=e+3221|0;a=t;c=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(c|0));s=e+3253|0;a=f;c=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(c|0));s=e+3285|0;a=i;c=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(c|0));mt(t,i,u);mt(f,n,u+32|0);mt(f,i,u+64|0);bn(e,u,96,l);Hr(f,64);Hr(l,64);Hr(u,96);u=0;h=d;return u|0}return 0}function et(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0;b=h;h=h+208|0;p=b+128|0;m=b+96|0;g=b+168|0;y=b;Qe(p,i,s);c=(n|0)!=0;i=o[p+4>>2]|0;a=(i|0)!=0;s=c|a;if(i)s=s&(o[p+8>>2]|0)==32;u=o[p+28>>2]|0;l=o[p+12>>2]|0;d=o[p+20>>2]|0;if(!(s&(u|0)!=0&(l|0)!=0&(o[p+16>>2]|0)==32&(d|0)!=0&(o[p+24>>2]|0)==32)){o[e+3216>>2]=4;y=-1;h=b;return y|0}if(c&a?qo(n,i,32)|0:0){o[e+3216>>2]=6;y=-1;h=b;return y|0}f=e+3221|0;n=f;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));c=e+3253|0;n=c;i=l;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));s=e+3285|0;n=s;i=d;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));p=o[p+32>>2]|0;i=o[e+4>>2]|0;Ge(m,u,p,Gs[o[o[i>>2]>>2]&1](i)|0);i=o[m+16>>2]|0;if((i|0)!=0?(o[m+20>>2]|0)==32:0){n=g;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));i=Ir(t,s)|0;if(!i){o[e+3216>>2]=6;i=-1}else{i=i+5|0;mt(i,f,y);mt(t+96|0,c,y+32|0);mt(i,c,y+64|0);yn(e,y,96,g);Hr(y,96);i=0}}else{o[e+3216>>2]=4;i=-1}y=i;h=b;return y|0}function tt(e){e=e|0;return 32}function nt(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0;c=h;h=h+96|0;a=c;if(n>>>0<32){o[e+3216>>2]=2;a=-1;h=c;return a|0}else{n=a;i=e+3221|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));n=a+32|0;i=e+3253|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));n=a+64|0;i=e+3285|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));At(a,96,t);a=32;h=c;return a|0}return 0}function rt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0,f=0,l=0;l=h;h=h+48|0;f=l;Qe(f,n,r);c=(t|0)!=0;a=o[f+4>>2]|0;n=c|(a|0)!=0;r=(a|0)==0;if(!r)n=n&(o[f+8>>2]|0)==32;i=o[f+12>>2]|0;s=o[f+20>>2]|0;if(!(n&(o[f+28>>2]|0)!=0&(i|0)!=0&(o[f+16>>2]|0)==32&(s|0)!=0&(o[f+24>>2]|0)==32)){t=0;h=l;return t|0}if(r)n=1;else n=(qo(a,e+3221|0,32)|0)==0;if(c){if(!n){t=0;h=l;return t|0}if(qo(t,e+3221|0,32)|0){t=0;h=l;return t|0}}else if(!n){t=0;h=l;return t|0}if(qo(i,e+3253|0,32)|0){t=0;h=l;return t|0}t=(qo(s,e+3285|0,32)|0)==0;h=l;return t|0}function it(e){e=e|0;return s[e+3220>>0]|0|0}function ot(e,t){e=e|0;t=t|0;t=An(e,t)|0;if(r[e+3220>>0]|0){e=t;return e|0}e=He(32,32,32,t)|0;return e|0}function st(e){e=e|0;return En(e)|0}function at(e,t,n,i,s,a,c){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0,d=0,p=0;p=h;h=h+16|0;d=p;f=An(e,n)|0;l=e+3220|0;if(!(r[l>>0]|0))f=He(32,32,32,f)|0;if(f>>>0>c>>>0){o[e+3216>>2]=2;e=-1;h=p;return e|0}u=An(e,n)|0;if(!(r[l>>0]|0)){Ve(d,3,32,32,32,u,a);a=o[d+8>>2]|0;f=e+3285|0;c=a+32|0;do{r[a>>0]=r[f>>0]|0;a=a+1|0;f=f+1|0}while((a|0)<(c|0));a=o[d>>2]|0;f=e+3221|0;c=a+32|0;do{r[a>>0]=r[f>>0]|0;a=a+1|0;f=f+1|0}while((a|0)<(c|0));a=o[d+4>>2]|0;f=e+3253|0;c=a+32|0;do{r[a>>0]=r[f>>0]|0;a=a+1|0;f=f+1|0}while((a|0)<(c|0));a=o[d+12>>2]|0}a=kn(e,t,n,i,s,a,u)|0;if((a|0)!=-1){e=a;h=p;return e|0}s=e+8|0;o[e+3216>>2]=o[s>>2];o[s>>2]=0;e=-1;h=p;return e|0}function ct(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0;s=h;h=h+48|0;i=s;do{if((t|0)!=1){Qe(i,n,r);n=o[i+28>>2]|0;if(n|0){r=o[i+32>>2]|0;break}o[e+3216>>2]=4;e=-1;h=s;return e|0}}while(0);n=Sn(e,n,r)|0;if((n|0)!=-1){e=n;h=s;return e|0}i=e+8|0;o[e+3216>>2]=o[i>>2];o[i>>2]=0;e=-1;h=s;return e|0}function ft(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+48|0;c=f;do{if((t|0)!=1){Qe(c,n,i);n=o[c+28>>2]|0;if(n|0){i=o[c+32>>2]|0;break}o[e+3216>>2]=4;e=-1;h=f;return e|0}}while(0);n=Tn(e,n,i,s,a)|0;if((n|0)==-1){a=e+8|0;o[e+3216>>2]=o[a>>2];o[a>>2]=0;e=-1;h=f;return e|0}else{r[e+3220>>0]=1;e=n;h=f;return e|0}return 0}function lt(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0;m=h;h=h+48|0;p=m+32|0;l=m+24|0;u=m+16|0;i=m;if(!n){h=m;return}r[t>>0]=0;f=t;o[i>>2]=o[e+112>>2];i=_s(t,n,38002,i)|0;i=(i|0)>0?t+i|0:t;d=f+n|0;a=_s(i,d-i|0,38026,m+8|0)|0;i=(a|0)>0?i+a|0:i;a=e+148|0;c=e+152|0;t=f-i+n|0;if((o[a>>2]|0)!=(c|0)){s=0;do{o[l>>2]=o[e+152+(s*68|0)+32>>2];t=_s(i,t,38073,l)|0;i=(t|0)>0?i+t|0:i;s=s+1|0;t=f-i+n|0}while(s>>>0<(((o[a>>2]|0)-c|0)/68|0)>>>0)}t=_s(i,t,38050,u)|0;a=e+492|0;c=e+496|0;if((o[a>>2]|0)==(c|0)){h=m;return}s=0;t=(t|0)>-1?i+t|0:i;while(1){o[p>>2]=o[e+496+(s*68|0)+32>>2];i=_s(t,d-t|0,38073,p)|0;s=s+1|0;if(s>>>0>=(((o[a>>2]|0)-c|0)/68|0)>>>0)break;else t=(i|0)>0?t+i|0:t}h=m;return}function ut(e){e=e|0;var t=0;t=(ke(e+3221|0)|0)+5|0;t=t+(ke(e+3253|0)|0)|0;t=t+(ke(e+3285|0)|0)|0;return t+(vn(e)|0)|0}function dt(e,t){e=e|0;t=t|0;e=be(e,1)|0;return _n(Se(Se(Se(_e(e,(r[t+3220>>0]|0)!=0)|0,t+3221|0)|0,t+3253|0)|0,t+3285|0)|0,t)|0}function ht(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0;s=h;h=h+16|0;r=s;i=ve(e,t,r)|0;e=o[r>>2]|0;e:do{if((e|0)<1){switch(e|0){case-2147483647:break;default:{r=3;break e}}e=1;r=4}else switch(e|0){case 1:{e=0;r=4;break}default:r=3}}while(0);if((r|0)==3){o[n+3216>>2]=9;n=t;h=s;return n|0}else if((r|0)==4){n=wn(Te(Te(Te(we(i,t,n+3220|0)|0,t,n+3221|0)|0,t,n+3253|0)|0,t,n+3285|0)|0,t,n,e)|0;h=s;return n|0}return 0}function pt(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;i=t+32|0;o=i;n=o+32|0;do{r[o>>0]=r[e>>0]|0;o=o+1|0;e=e+1|0}while((o|0)<(n|0));Po(t,i,208)|0;return}function mt(e,t,n){e=e|0;t=t|0;n=n|0;Po(n,e+32|0,t)|0;return}function gt(e,t){e=e|0;t=t|0;hi(t,t+32|0,e);return}function yt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;bi(r,t,n,e,e+32|0);return}function bt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return(yi(r,t,n,e)|0)!=0|0}function vt(e){e=e|0;return e+16-(e&15)|0}function _t(e,t,n,i,o){e=e|0;t=t|0;n=n|0;i=i|0;o=o|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0;O=h;h=h+256|0;R=O+16|0;C=O;Ro(e,R,256);I=C;k=I+16|0;do{r[I>>0]=r[t>>0]|0;I=I+1|0;t=t+1|0}while((I|0)<(k|0));if(i>>>0>15){w=C+1|0;A=C+2|0;a=C+3|0;c=C+4|0;f=C+5|0;l=C+6|0;u=C+7|0;d=C+8|0;p=C+9|0;m=C+10|0;g=C+11|0;y=C+12|0;b=C+13|0;v=C+14|0;_=C+15|0;S=i+-16|0;T=S&-16;x=T+16|0;E=o+x|0;e=i;i=n;while(1){r[C>>0]=r[C>>0]^r[i>>0];r[w>>0]=r[w>>0]^r[i+1>>0];r[A>>0]=r[A>>0]^r[i+2>>0];r[a>>0]=r[a>>0]^r[i+3>>0];r[c>>0]=r[c>>0]^r[i+4>>0];r[f>>0]=r[f>>0]^r[i+5>>0];r[l>>0]=r[l>>0]^r[i+6>>0];r[u>>0]=r[u>>0]^r[i+7>>0];r[d>>0]=r[d>>0]^r[i+8>>0];r[p>>0]=r[p>>0]^r[i+9>>0];r[m>>0]=r[m>>0]^r[i+10>>0];r[g>>0]=r[g>>0]^r[i+11>>0];r[y>>0]=r[y>>0]^r[i+12>>0];r[b>>0]=r[b>>0]^r[i+13>>0];r[v>>0]=r[v>>0]^r[i+14>>0];r[_>>0]=r[_>>0]^r[i+15>>0];Io(C,o,R,256);I=C;t=o;k=I+16|0;do{r[I>>0]=r[t>>0]|0;I=I+1|0;t=t+1|0}while((I|0)<(k|0));e=e+-16|0;if(e>>>0<=15)break;else{o=o+16|0;i=i+16|0}}o=E;t=S-T|0;n=n+x|0}else t=i;if(t){e=0;do{x=C+e|0;r[x>>0]=r[x>>0]^r[n+e>>0];e=e+1|0}while((e|0)!=(t|0));if(t>>>0<16)n=t;else{Io(C,o,R,256);Hr(R,240);Hr(C,16);h=O;return}}else n=0;e=16-t|0;do{x=C+n|0;r[x>>0]=e^(s[x>>0]|0);n=n+1|0}while((n|0)!=16);Io(C,o,R,256);Hr(R,240);Hr(C,16);h=O;return}function wt(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0;R=h;h=h+272|0;T=R+32|0;I=R+16|0;x=R;Ro(e,T,256);S=I;k=S+16|0;do{r[S>>0]=r[t>>0]|0;S=S+1|0;t=t+1|0}while((S|0)<(k|0));if(!i){Hr(T,240);Hr(I,16);Hr(x,16);x=i+-1|0;x=s+x|0;x=r[x>>0]|0;x=x&255;I=x>>>0>i>>>0;x=i-x|0;x=I?-1:x;h=R;return x|0}E=I+1|0;a=I+2|0;c=I+3|0;f=I+4|0;l=I+5|0;u=I+6|0;d=I+7|0;p=I+8|0;m=I+9|0;g=I+10|0;y=I+11|0;b=I+12|0;v=I+13|0;_=I+14|0;w=I+15|0;e=0;do{A=n+e|0;S=x;t=A;k=S+16|0;do{r[S>>0]=r[t>>0]|0;S=S+1|0;t=t+1|0}while((S|0)<(k|0));S=s+e|0;Oo(A,S,T,256);r[S>>0]=r[S>>0]^r[I>>0];k=S+1|0;r[k>>0]=r[k>>0]^r[E>>0];k=S+2|0;r[k>>0]=r[k>>0]^r[a>>0];k=S+3|0;r[k>>0]=r[k>>0]^r[c>>0];k=S+4|0;r[k>>0]=r[k>>0]^r[f>>0];k=S+5|0;r[k>>0]=r[k>>0]^r[l>>0];k=S+6|0;r[k>>0]=r[k>>0]^r[u>>0];k=S+7|0;r[k>>0]=r[k>>0]^r[d>>0];k=S+8|0;r[k>>0]=r[k>>0]^r[p>>0];k=S+9|0;r[k>>0]=r[k>>0]^r[m>>0];k=S+10|0;r[k>>0]=r[k>>0]^r[g>>0];k=S+11|0;r[k>>0]=r[k>>0]^r[y>>0];k=S+12|0;r[k>>0]=r[k>>0]^r[b>>0];k=S+13|0;r[k>>0]=r[k>>0]^r[v>>0];k=S+14|0;r[k>>0]=r[k>>0]^r[_>>0];S=S+15|0;r[S>>0]=r[S>>0]^r[w>>0];o[I>>2]=o[x>>2];o[I+4>>2]=o[x+4>>2];o[I+8>>2]=o[x+8>>2];o[I+12>>2]=o[x+12>>2];e=e+16|0}while(e>>>0>>0);Hr(T,240);Hr(I,16);Hr(x,16);x=i+-1|0;x=s+x|0;x=r[x>>0]|0;x=x&255;I=x>>>0>i>>>0;x=i-x|0;x=I?-1:x;h=R;return x|0}function At(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+112|0;i=r;ko(i);So(i,e,t);To(i,n);Hr(i,112);h=r;return}function Et(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;l=h;h=h+288|0;s=l+176|0;a=l;c=l+64|0;f=a;u=f+64|0;do{o[f>>2]=0;f=f+4|0}while((f|0)<(u|0));if(t>>>0>64){ko(s);So(s,e,t);To(s,a)}else Ms(a|0,e|0,t|0)|0;kt(c,a);So(c,n,r);St(c,a,i);Hr(a,64);Hr(c,112);h=l;return}function kt(e,t){e=e|0;t=t|0;var n=0,i=0,o=0,s=0;s=h;h=h+64|0;i=s;o=i;n=o+64|0;do{r[o>>0]=r[t>>0]|0;o=o+1|0;t=t+1|0}while((o|0)<(n|0));r[i>>0]=r[i>>0]^54;o=i+1|0;r[o>>0]=r[o>>0]^54;o=i+2|0;r[o>>0]=r[o>>0]^54;o=i+3|0;r[o>>0]=r[o>>0]^54;o=i+4|0;r[o>>0]=r[o>>0]^54;o=i+5|0;r[o>>0]=r[o>>0]^54;o=i+6|0;r[o>>0]=r[o>>0]^54;o=i+7|0;r[o>>0]=r[o>>0]^54;o=i+8|0;r[o>>0]=r[o>>0]^54;o=i+9|0;r[o>>0]=r[o>>0]^54;o=i+10|0;r[o>>0]=r[o>>0]^54;o=i+11|0;r[o>>0]=r[o>>0]^54;o=i+12|0;r[o>>0]=r[o>>0]^54;o=i+13|0;r[o>>0]=r[o>>0]^54;o=i+14|0;r[o>>0]=r[o>>0]^54;o=i+15|0;r[o>>0]=r[o>>0]^54;o=i+16|0;r[o>>0]=r[o>>0]^54;o=i+17|0;r[o>>0]=r[o>>0]^54;o=i+18|0;r[o>>0]=r[o>>0]^54;o=i+19|0;r[o>>0]=r[o>>0]^54;o=i+20|0;r[o>>0]=r[o>>0]^54;o=i+21|0;r[o>>0]=r[o>>0]^54;o=i+22|0;r[o>>0]=r[o>>0]^54;o=i+23|0;r[o>>0]=r[o>>0]^54;o=i+24|0;r[o>>0]=r[o>>0]^54;o=i+25|0;r[o>>0]=r[o>>0]^54;o=i+26|0;r[o>>0]=r[o>>0]^54;o=i+27|0;r[o>>0]=r[o>>0]^54;o=i+28|0;r[o>>0]=r[o>>0]^54;o=i+29|0;r[o>>0]=r[o>>0]^54;o=i+30|0;r[o>>0]=r[o>>0]^54;o=i+31|0;r[o>>0]=r[o>>0]^54;o=i+32|0;r[o>>0]=r[o>>0]^54;o=i+33|0;r[o>>0]=r[o>>0]^54;o=i+34|0;r[o>>0]=r[o>>0]^54;o=i+35|0;r[o>>0]=r[o>>0]^54;o=i+36|0;r[o>>0]=r[o>>0]^54;o=i+37|0;r[o>>0]=r[o>>0]^54;o=i+38|0;r[o>>0]=r[o>>0]^54;o=i+39|0;r[o>>0]=r[o>>0]^54;o=i+40|0;r[o>>0]=r[o>>0]^54;o=i+41|0;r[o>>0]=r[o>>0]^54;o=i+42|0;r[o>>0]=r[o>>0]^54;o=i+43|0;r[o>>0]=r[o>>0]^54;o=i+44|0;r[o>>0]=r[o>>0]^54;o=i+45|0;r[o>>0]=r[o>>0]^54;o=i+46|0;r[o>>0]=r[o>>0]^54;o=i+47|0;r[o>>0]=r[o>>0]^54;o=i+48|0;r[o>>0]=r[o>>0]^54;o=i+49|0;r[o>>0]=r[o>>0]^54;o=i+50|0;r[o>>0]=r[o>>0]^54;o=i+51|0;r[o>>0]=r[o>>0]^54;o=i+52|0;r[o>>0]=r[o>>0]^54;o=i+53|0;r[o>>0]=r[o>>0]^54;o=i+54|0;r[o>>0]=r[o>>0]^54;o=i+55|0;r[o>>0]=r[o>>0]^54;o=i+56|0;r[o>>0]=r[o>>0]^54;o=i+57|0;r[o>>0]=r[o>>0]^54;o=i+58|0;r[o>>0]=r[o>>0]^54;o=i+59|0;r[o>>0]=r[o>>0]^54;o=i+60|0;r[o>>0]=r[o>>0]^54;o=i+61|0;r[o>>0]=r[o>>0]^54;o=i+62|0;r[o>>0]=r[o>>0]^54;o=i+63|0;r[o>>0]=r[o>>0]^54;ko(e);So(e,i,64);Hr(i,64);h=s;return}function St(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0,c=0;c=h;h=h+208|0;o=c;s=c+96|0;a=o;i=a+64|0;do{r[a>>0]=r[t>>0]|0;a=a+1|0;t=t+1|0}while((a|0)<(i|0));r[o>>0]=r[o>>0]^92;a=o+1|0;r[a>>0]=r[a>>0]^92;a=o+2|0;r[a>>0]=r[a>>0]^92;a=o+3|0;r[a>>0]=r[a>>0]^92;a=o+4|0;r[a>>0]=r[a>>0]^92;a=o+5|0;r[a>>0]=r[a>>0]^92;a=o+6|0;r[a>>0]=r[a>>0]^92;a=o+7|0;r[a>>0]=r[a>>0]^92;a=o+8|0;r[a>>0]=r[a>>0]^92;a=o+9|0;r[a>>0]=r[a>>0]^92;a=o+10|0;r[a>>0]=r[a>>0]^92;a=o+11|0;r[a>>0]=r[a>>0]^92;a=o+12|0;r[a>>0]=r[a>>0]^92;a=o+13|0;r[a>>0]=r[a>>0]^92;a=o+14|0;r[a>>0]=r[a>>0]^92;a=o+15|0;r[a>>0]=r[a>>0]^92;a=o+16|0;r[a>>0]=r[a>>0]^92;a=o+17|0;r[a>>0]=r[a>>0]^92;a=o+18|0;r[a>>0]=r[a>>0]^92;a=o+19|0;r[a>>0]=r[a>>0]^92;a=o+20|0;r[a>>0]=r[a>>0]^92;a=o+21|0;r[a>>0]=r[a>>0]^92;a=o+22|0;r[a>>0]=r[a>>0]^92;a=o+23|0;r[a>>0]=r[a>>0]^92;a=o+24|0;r[a>>0]=r[a>>0]^92;a=o+25|0;r[a>>0]=r[a>>0]^92;a=o+26|0;r[a>>0]=r[a>>0]^92;a=o+27|0;r[a>>0]=r[a>>0]^92;a=o+28|0;r[a>>0]=r[a>>0]^92;a=o+29|0;r[a>>0]=r[a>>0]^92;a=o+30|0;r[a>>0]=r[a>>0]^92;a=o+31|0;r[a>>0]=r[a>>0]^92;a=o+32|0;r[a>>0]=r[a>>0]^92;a=o+33|0;r[a>>0]=r[a>>0]^92;a=o+34|0;r[a>>0]=r[a>>0]^92;a=o+35|0;r[a>>0]=r[a>>0]^92;a=o+36|0;r[a>>0]=r[a>>0]^92;a=o+37|0;r[a>>0]=r[a>>0]^92;a=o+38|0;r[a>>0]=r[a>>0]^92;a=o+39|0;r[a>>0]=r[a>>0]^92;a=o+40|0;r[a>>0]=r[a>>0]^92;a=o+41|0;r[a>>0]=r[a>>0]^92;a=o+42|0;r[a>>0]=r[a>>0]^92;a=o+43|0;r[a>>0]=r[a>>0]^92;a=o+44|0;r[a>>0]=r[a>>0]^92;a=o+45|0;r[a>>0]=r[a>>0]^92;a=o+46|0;r[a>>0]=r[a>>0]^92;a=o+47|0;r[a>>0]=r[a>>0]^92;a=o+48|0;r[a>>0]=r[a>>0]^92;a=o+49|0;r[a>>0]=r[a>>0]^92;a=o+50|0;r[a>>0]=r[a>>0]^92;a=o+51|0;r[a>>0]=r[a>>0]^92;a=o+52|0;r[a>>0]=r[a>>0]^92;a=o+53|0;r[a>>0]=r[a>>0]^92;a=o+54|0;r[a>>0]=r[a>>0]^92;a=o+55|0;r[a>>0]=r[a>>0]^92;a=o+56|0;r[a>>0]=r[a>>0]^92;a=o+57|0;r[a>>0]=r[a>>0]^92;a=o+58|0;r[a>>0]=r[a>>0]^92;a=o+59|0;r[a>>0]=r[a>>0]^92;a=o+60|0;r[a>>0]=r[a>>0]^92;a=o+61|0;r[a>>0]=r[a>>0]^92;a=o+62|0;r[a>>0]=r[a>>0]^92;a=o+63|0;r[a>>0]=r[a>>0]^92;To(e,o+64|0);ko(s);So(s,o,96);To(s,n);Hr(s,112);Hr(o,96);h=c;return}function Tt(e,t,n,i,s,a,c,f){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;var l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0;v=h;h=h+336|0;u=v+208|0;b=v+96|0;m=v+32|0;g=v;y=v+320|0;r[y>>0]=1;d=(n|0)==0;l=d?32:i;i=d?38496:n;d=m;p=d+64|0;do{o[d>>2]=0;d=d+4|0}while((d|0)<(p|0));if(l>>>0>64){ko(u);So(u,i,l);To(u,m)}else Ms(m|0,i|0,l|0)|0;kt(b,m);So(b,e,t);St(b,m,g);p=m+32|0;o[p>>2]=0;o[p+4>>2]=0;o[p+8>>2]=0;o[p+12>>2]=0;o[p+16>>2]=0;o[p+20>>2]=0;o[p+24>>2]=0;o[p+28>>2]=0;o[m>>2]=o[g>>2];o[m+4>>2]=o[g+4>>2];o[m+8>>2]=o[g+8>>2];o[m+12>>2]=o[g+12>>2];o[m+16>>2]=o[g+16>>2];o[m+20>>2]=o[g+20>>2];o[m+24>>2]=o[g+24>>2];o[m+28>>2]=o[g+28>>2];kt(b,m);So(b,s,a);So(b,y,1);St(b,m,g);if(f>>>0<=32){a=f;Ms(c|0,g|0,a|0)|0;Hr(b,112);Hr(m,64);Hr(g,32);h=v;return}e=f+-33&-32;t=e+32|0;u=f+-32|0;l=c;i=f;while(1){d=l;n=g;p=d+32|0;do{r[d>>0]=r[n>>0]|0;d=d+1|0;n=n+1|0}while((d|0)<(p|0));i=i+-32|0;r[y>>0]=(r[y>>0]|0)+1<<24>>24;kt(b,m);So(b,g,32);So(b,s,a);So(b,y,1);St(b,m,g);if(i>>>0<=32)break;else l=l+32|0}a=u-e|0;c=c+t|0;Ms(c|0,g|0,a|0)|0;Hr(b,112);Hr(m,64);Hr(g,32);h=v;return}function It(e){e=e|0;return Si(o[e>>2]|0)|0}function xt(){return 36}function Rt(e){e=e|0;Hr(e,36);return e|0}function Ct(e){e=e|0;var t=0;Hr(e,36);t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 36}function Ot(e,t,n){e=e|0;t=t|0;n=n|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=15;n=-1;return n|0}else{he(t,le(32)|0,e+4|0)|0;n=0;return n|0}return 0}function Pt(){return le(32)|0}function Mt(e,t){e=e|0;t=t|0;return le(Hs[o[37564>>2]&3](37548,t)|0)|0}function Dt(e){e=e|0;return le(Gs[o[9390]&1](37548)|0)|0}function Nt(e){e=e|0;return 32}function Bt(e,t,n,r,i,s,a,c,f,l,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;l=l|0;u=u|0;var d=0,p=0,m=0,g=0;g=h;h=h+112|0;d=g+40|0;p=g;m=g+32|0;if(((le(Hs[o[37564>>2]&3](37548,n)|0)|0)>>>0<=i>>>0?(Gs[o[9390]&1](37548)|0)>>>0<=a>>>0:0)?(le(32)|0)>>>0<=f>>>0:0){if(u>>>0<32){o[e>>2]=1;s=-1;h=g;return s|0}pt(l,d);ue(d,32,c)|0;mt(d,e+4|0,p);d=Hs[o[37564>>2]&3](37548,n)|0;u=r+i+(0-d)|0;e=Qs[o[37568>>2]&3](37548,p,32,t,n,u,d,m,8)|0;if((e|0)!=-1){ue(m,8,s)|0;ue(u,d,r)|0}s=e;h=g;return s|0}o[e>>2]=2;s=-1;h=g;return s|0}function jt(e){e=e|0;return Si(o[e>>2]|0)|0}function Ut(){return 68}function Lt(e){e=e|0;Hr(e,68);return e|0}function Ft(e){e=e|0;var t=0;Hr(e,68);t=e+68|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 68}function qt(){return 32}function zt(){return 32}function Kt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;pt(r,i);ue(i,32,t)|0;i=0;return i|0}return 0}function Gt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;pt(r,i);ue(i,32,t)|0;i=0;return i|0}return 0}function Ht(e){e=e|0;return Ti((Ie(e+4|0)|0)+4|0)|0}function Vt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;s=e+4|0;a=(Ie(s)|0)+4|0;if((Ti(a)|0)>>>0>i>>>0){o[e>>2]=2;a=-1;return a|0}else{xe(be(Ii(r,a)|0,1)|0,s)|0;a=xi(t,n,r,a)|0;return a|0}return 0}function Qt(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0,l=0,u=0;u=h;h=h+16|0;f=u;l=(s|0)!=0;if(l?(le(32)|0)>>>0>a>>>0:0){o[e>>2]=2;i=-1}else c=4;do{if((c|0)==4){t=Ri(t,n,r,i,e)|0;if((t|0)!=-1){a=r+t|0;t=a+1|0;n=ve(r,t,f)|0;if((o[f>>2]|0)==1)t=Re(n,t,e+4|0)|0;else o[e>>2]=9;if((a|0)==(t|0)){if(!l)break;ue(e+4|0,32,s)|0;break}else{if(o[e>>2]|0){i=-1;break}o[e>>2]=10;i=-1;break}}else i=-1}}while(0);h=u;return i|0}function Wt(e,t){e=e|0;t=t|0;e=o[9393]|0;t=de(t)|0;return Hs[e&3](37548,t)|0}function Yt(e,t,n,r,i,s,a,c,f){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;var l=0,u=0,d=0,p=0,m=0;d=h;h=h+80|0;u=d+40|0;i=d;l=d+32|0;m=o[9393]|0;p=de(a)|0;if((Hs[m&3](37548,p)|0)>>>0>f>>>0){o[e>>2]=2;m=-1;h=d;return m|0}he(t,n,u)|0;mt(e+4|0,u,i);he(r,le(8)|0,l)|0;m=de(a)|0;he(s,a,s)|0;i=Qs[o[37576>>2]&3](37548,i,32,l,8,s,m,c,f)|0;if((i|0)==-1){o[e>>2]=5;i=-1}m=i;h=d;return m|0}function Xt(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<32){o[e>>2]=2;e=-1;return e|0}else{n=e+36|0;e=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(e|0));e=32;return e|0}return 0}function Jt(){return 100}function Zt(e){e=e|0;Hr(e,100);return e|0}function $t(e){e=e|0;return Si(o[e>>2]|0)|0}function en(e){e=e|0;var t=0;Hr(e,100);t=e+100|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 100}function tn(){return 32}function nn(){return le(32)|0}function rn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;gt(r,i);ue(i,32,t)|0;i=0;return i|0}return 0}function on(){return le(64)|0}function sn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(64)|0)>>>0>i>>>0){o[e>>2]=2;i=-1;return i|0}else{i=r+(le(64)|0)+-64|0;yt(e+4|0,t,n,i);ue(i,64,r)|0;i=le(64)|0;return i|0}return 0}function an(e){e=e|0;return 8}function cn(e,t){e=e|0;t=t|0;return vt(t)|0}function fn(e,t,n,i,s,a,c,f,l){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;l=l|0;var u=0,d=0,p=0,m=0;m=h;h=h+192|0;p=m+32|0;u=m+112|0;d=m;if(l>>>0<8|(vt(s)|0)>>>0>c>>>0){p=-1;h=m;return p|0}Tt(t,n,0,0,o[e+4>>2]|0,o[e+8>>2]|0,p,80);t=u;n=p;c=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(c|0));e=u+32|0;t=e;n=p+32|0;c=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(c|0));t=u+64|0;n=p+64|0;c=t+16|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(c|0));Hr(p,80);_t(u,u+64|0,i,s,a);Et(e,32,f,l+-8|0,d);a=d;s=o[a>>2]|0;a=o[a+4>>2]|0;p=f+l+-8|0;f=p;r[f>>0]=s;r[f+1>>0]=s>>8;r[f+2>>0]=s>>16;r[f+3>>0]=s>>24;p=p+4|0;r[p>>0]=a;r[p+1>>0]=a>>8;r[p+2>>0]=a>>16;r[p+3>>0]=a>>24;Hr(u,80);p=l;h=m;return p|0}function ln(e,t){e=e|0;t=t|0;return t|0}function un(e,t,n,i,s,a,c,f,l){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;l=l|0;var u=0,d=0,p=0,m=0;m=h;h=h+192|0;p=m+32|0;u=m+112|0;d=m;if(s>>>0<8|c>>>0>l>>>0){p=-1;h=m;return p|0}Tt(t,n,0,0,o[e+4>>2]|0,o[e+8>>2]|0,p,80);t=u;n=p;l=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(l|0));e=u+32|0;t=e;n=p+32|0;l=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(l|0));t=u+64|0;n=p+64|0;l=t+16|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(l|0));Hr(p,80);Et(e,32,i,s+-8|0,d);if(Vr(i+s+-8|0,d,8)|0){e=wt(u,u+64|0,a,c,f)|0;Hr(u,80)}else{Hr(u,80);e=-1}p=e;h=m;return p|0}function dn(e){e=e|0;o[e>>2]=0;return}function hn(e){e=e|0;return 32}function pn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if(i>>>0<32){o[e>>2]=2;i=-1;return i|0}else{At(t,n,r);i=32;return i|0}return 0}function mn(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;if(s>>>0>=64?bt(t,n,r,i)|0:0){s=0;return s|0}o[e>>2]=5;s=-1;return s|0}function gn(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;o[e+8>>2]=0;o[e+44>>2]=e+48;o[e+148>>2]=e+152;o[e+492>>2]=e+496;return}function yn(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;u=h;h=h+64|0;l=u;f=o[e>>2]|0;Tt(t,n,0,0,o[f>>2]|0,o[f+4>>2]|0,l,64);f=e+152|0;t=e+148|0;n=o[t>>2]|0;if((n|0)==(e+492|0)){c=(n|0)==(f|0)?e+84|0:f;t=n}else{a=n+68|0;o[t>>2]=a;c=f;t=a}t=t+-68|0;if((t|0)!=(c|0))do{n=t;t=t+-68|0;s=t;a=n+68|0;do{o[n>>2]=o[s>>2];n=n+4|0;s=s+4|0}while((n|0)<(a|0))}while((t|0)!=(c|0));o[e+184>>2]=0;n=e+12|0;s=l;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=e+188|0;s=l+32|0;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=f;s=i;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));Hr(l,64);h=u;return}function bn(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;u=h;h=h+64|0;l=u;f=o[e>>2]|0;Tt(t,n,0,0,o[f>>2]|0,o[f+4>>2]|0,l,64);f=e+48|0;t=e+44|0;n=o[t>>2]|0;if((n|0)==(e+148|0)){c=(n|0)==(f|0)?e+-52|0:f;t=n}else{a=n+100|0;o[t>>2]=a;c=f;t=a}t=t+-100|0;if((t|0)!=(c|0))do{n=t;t=t+-100|0;s=t;a=n+100|0;do{o[n>>2]=o[s>>2];n=n+4|0;s=s+4|0}while((n|0)<(a|0))}while((t|0)!=(c|0));o[e+112>>2]=0;n=e+12|0;s=l;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=e+116|0;s=l+32|0;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=f;s=i;a=n+64|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));Hr(l,64);h=u;return}function vn(e){e=e|0;var t=0,n=0,r=0,i=0;t=e+48|0;r=o[e+44>>2]|0;if((t|0)==(r|0))i=36;else{n=4;do{n=n+36+(Ie(t)|0)|0;t=t+100|0}while((t|0)!=(r|0));i=n+32|0}t=e+152|0;r=o[e+148>>2]|0;if((t|0)==(r|0))t=4;else{n=t;t=4;do{t=t+36+(ke(n)|0)|0;n=n+68|0}while((n|0)!=(r|0))}i=i+t|0;t=e+496|0;r=o[e+492>>2]|0;if((t|0)==(r|0)){e=4;e=i+e|0;return e|0}n=t;t=4;do{t=t+36+(ke(n)|0)|0;n=n+68|0}while((n|0)!=(r|0));e=i+t|0;return e|0}function _n(e,t){e=e|0;t=t|0;var n=0,r=0;e=Ae(e,t+12|0,32)|0;r=t+44|0;n=t+48|0;e=be(e,((o[r>>2]|0)-n|0)/100|0)|0;r=o[r>>2]|0;if((n|0)!=(r|0))do{e=Ae(xe(e,n)|0,n+68|0,32)|0;e=be(e,o[n+64>>2]|0)|0;n=n+100|0}while((n|0)!=(r|0));r=t+148|0;n=t+152|0;e=be(e,((o[r>>2]|0)-n|0)/68|0)|0;r=o[r>>2]|0;if((n|0)!=(r|0))do{e=Ae(Se(e,n)|0,n+36|0,32)|0;e=be(e,o[n+32>>2]|0)|0;n=n+68|0}while((n|0)!=(r|0));r=t+492|0;n=t+496|0;e=be(e,((o[r>>2]|0)-n|0)/68|0)|0;r=o[r>>2]|0;if((n|0)==(r|0)){t=e;return t|0}do{e=Ae(Se(e,n)|0,n+36|0,32)|0;e=be(e,o[n+32>>2]|0)|0;n=n+68|0}while((n|0)!=(r|0));return e|0}function wn(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0,f=0,l=0;l=h;h=h+16|0;f=l;e=ve(Ee(e,t,n+12|0,32)|0,t,f)|0;c=o[f>>2]|0;o[f>>2]=c+-1;if(!((e|0)==(t|0)|(c|0)==0)){s=n+44|0;a=n+148|0;c=n+48|0;do{i=o[s>>2]|0;if((i|0)==(a|0))i=c;else o[s>>2]=i+100;e=ve(Ee(Re(e,t,i)|0,t,i+68|0,32)|0,t,i+64|0)|0;i=o[f>>2]|0;o[f>>2]=i+-1}while(!((e|0)==(t|0)|(i|0)==0))}e=ve(e,t,f)|0;c=o[f>>2]|0;o[f>>2]=c+-1;if(!((e|0)==(t|0)|(c|0)==0)){s=n+148|0;a=n+492|0;c=n+424|0;do{i=o[s>>2]|0;if((i|0)==(a|0))i=c;else o[s>>2]=i+68;e=ve(Ee(Te(e,t,i)|0,t,i+36|0,32)|0,t,i+32|0)|0;i=o[f>>2]|0;o[f>>2]=i+-1}while(!((e|0)==(t|0)|(i|0)==0))}e=ve(e,t,f)|0;c=o[f>>2]|0;o[f>>2]=c+-1;if(!((e|0)==(t|0)|(c|0)==0)){a=n+492|0;c=n+3216|0;s=n+3148|0;do{i=o[a>>2]|0;if((i|0)==(c|0))i=s;else o[a>>2]=i+68;e=ve(Ee(Te(e,t,i)|0,t,i+36|0,32)|0,t,i+32|0)|0;n=o[f>>2]|0;o[f>>2]=n+-1}while(!((e|0)==(t|0)|(n|0)==0))}if(!r){f=e;h=l;return f|0}f=ve(e,t,f)|0;h=l;return f|0}function An(e,t){e=e|0;t=t|0;var n=0,r=0;if((o[e+44>>2]|0)==(e+48|0))n=0;else n=o[e+112>>2]|0;r=e+4|0;e=o[r>>2]|0;e=Hs[o[(o[e>>2]|0)+4>>2]&3](e,t)|0;t=o[r>>2]|0;return ze(n,32,e,Gs[o[o[t>>2]>>2]&1](t)|0)|0}function En(e){e=e|0;return((o[e+44>>2]|0)==(e+48|0)?32:0)|0}function kn(e,t,n,i,s,a,c){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0;y=h;h=h+112|0;m=y+64|0;g=y;l=e+44|0;d=e+48|0;if((o[l>>2]|0)==(d|0))f=0;else f=o[e+112>>2]|0;p=e+4|0;b=o[p>>2]|0;b=Hs[o[(o[b>>2]|0)+4>>2]&3](b,n)|0;u=o[p>>2]|0;u=ze(f,32,b,Gs[o[o[u>>2]>>2]&1](u)|0)|0;f=(o[l>>2]|0)==(d|0);if((f?32:0)>>>0>s>>>0){o[e+8>>2]=1;b=-1;h=y;return b|0}if(u>>>0>c>>>0){o[e+8>>2]=2;b=-1;h=y;return b|0}if(f){o[l>>2]=e+148;pt(i,d);c=o[e>>2]|0;mt(d,e+152|0,m);i=e+12|0;Tt(m,32,i,32,o[c+8>>2]|0,o[c+12>>2]|0,g,64);c=g;l=i+32|0;do{r[i>>0]=r[c>>0]|0;i=i+1|0;c=c+1|0}while((i|0)<(l|0));f=e+116|0;i=f;c=g+32|0;l=i+32|0;do{r[i>>0]=r[c>>0]|0;i=i+1|0;c=c+1|0}while((i|0)<(l|0));i=e+112|0;o[i>>2]=0;Hr(g,64);Hr(m,32)}else{i=e+112|0;f=e+116|0}s=m+4|0;Et(f,32,38077,1,s);o[m>>2]=o[i>>2];Et(f,32,38078,1,f);o[i>>2]=(o[i>>2]|0)+1;f=o[p>>2]|0;f=Hs[o[(o[f>>2]|0)+4>>2]&3](f,n)|0;Ke(g,3,o[m>>2]|0,32,f,a);i=o[g>>2]|0;c=d;l=i+32|0;do{r[i>>0]=r[c>>0]|0;i=i+1|0;c=c+1|0}while((i|0)<(l|0));b=o[p>>2]|0;Qs[o[(o[b>>2]|0)+8>>2]&3](b,s,32,t,n,o[g+4>>2]|0,f,a,u)|0;Hr(m,36);b=u;h=y;return b|0}function Sn(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0;s=h;h=h+32|0;r=s;i=e+4|0;a=o[i>>2]|0;Ge(r,t,n,Gs[o[o[a>>2]>>2]&1](a)|0);if(!(o[r+24>>2]|0)){o[e+8>>2]=4;a=-1;h=s;return a|0}else{a=o[i>>2]|0;a=Hs[o[(o[a>>2]|0)+12>>2]&3](a,o[r+28>>2]|0)|0;h=s;return a|0}return 0}function Tn(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0;I=h;h=h+240|0;E=I+96|0;k=I+32|0;u=I;d=I+160|0;S=I+128|0;g=e+4|0;w=o[g>>2]|0;Ge(S,t,n,Gs[o[o[w>>2]>>2]&1](w)|0);if((r[S>>0]|0)!=3){o[e+8>>2]=3;T=-1;h=I;return T|0}if((r[S+1>>0]|0?(A=S+16|0,o[A>>2]|0):0)?(b=S+24|0,o[b>>2]|0):0){w=o[g>>2]|0;m=S+28|0;if((Hs[o[(o[w>>2]|0)+12>>2]&3](w,o[m>>2]|0)|0)>>>0>s>>>0){o[e+8>>2]=2;T=-1;h=I;return T|0}if((o[S+20>>2]|0)!=32){o[e+8>>2]=4;T=-1;h=I;return T|0}c=e+152|0;w=e+148|0;n=o[w>>2]|0;e:do{if((c|0)!=(n|0)){f=o[A>>2]|0;l=0;t=c;do{p=(qo(t,f,32)|0)==0;l=p?t:l;t=t+68|0}while(!(p|(t|0)==(n|0)));if(l){t=l+32|0;d=S+4|0;n=o[d>>2]|0;if((o[t>>2]|0)>>>0<=n>>>0){_=l;T=In(e,t,S,i,s)|0;y=1;v=31;break}t=e+496|0;p=e+492|0;f=o[p>>2]|0;if((t|0)!=(f|0)){l=S+8|0;u=S+12|0;while(1){if(((n|0)==(o[t+32>>2]|0)?(qo(t,o[A>>2]|0,32)|0)==0:0)?(a=o[g>>2]|0,a=Qs[o[(o[a>>2]|0)+16>>2]&3](a,t+36|0,32,o[l>>2]|0,o[u>>2]|0,o[b>>2]|0,o[m>>2]|0,i,s)|0,(a|0)!=-1):0)break;t=t+68|0;if((t|0)==(f|0))break e;n=o[d>>2]|0}Hr(t,68);T=(o[p>>2]|0)+-68|0;o[p>>2]=T;if((T|0)==(t|0)){T=a;h=I;return T|0}do{g=t;t=t+68|0;y=t;b=g+68|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((t|0)!=(o[p>>2]|0));h=I;return a|0}}else v=15}else v=15}while(0);if((v|0)==15){a=e+48|0;if((o[e+44>>2]|0)!=(a|0)?(o[S+4>>2]|0)>>>0<=2e3:0){g=d;y=o[A>>2]|0;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));_=o[e>>2]|0;T=d+32|0;mt(a,d,E);Tt(E,32,e+12|0,32,o[_+8>>2]|0,o[_+12>>2]|0,k,64);o[u>>2]=o[k>>2];o[u+4>>2]=o[k+4>>2];o[u+8>>2]=o[k+8>>2];o[u+12>>2]=o[k+12>>2];o[u+16>>2]=o[k+16>>2];o[u+20>>2]=o[k+20>>2];o[u+24>>2]=o[k+24>>2];o[u+28>>2]=o[k+28>>2];_=k+32|0;a=d+36|0;o[a>>2]=o[_>>2];o[a+4>>2]=o[_+4>>2];o[a+8>>2]=o[_+8>>2];o[a+12>>2]=o[_+12>>2];o[a+16>>2]=o[_+16>>2];o[a+20>>2]=o[_+20>>2];o[a+24>>2]=o[_+24>>2];o[a+28>>2]=o[_+28>>2];o[T>>2]=0;Hr(k,64);Hr(E,32);a=In(e,T,S,i,s)|0;Hr(u,32);Hr(d,68)}else a=-1;_=0;T=a;y=0;v=31}if((v|0)==31?(T|0)!=-1:0){if(!y){a=o[w>>2]|0;if((a|0)==(e+492|0))c=(a|0)==(c|0)?e+84|0:c;else{a=a+68|0;o[w>>2]=a}a=a+-68|0;if((a|0)!=(c|0))do{g=a;a=a+-68|0;y=a;b=g+68|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((a|0)!=(c|0));g=c;y=o[A>>2]|0;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));a=e+48|0;y=o[e>>2]|0;mt(a,c,E);g=e+12|0;Tt(E,32,g,32,o[y+8>>2]|0,o[y+12>>2]|0,k,64);y=k;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));g=c+36|0;y=k+32|0;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));n=c+32|0;o[n>>2]=0;Hr(k,64);Hr(E,32);Hr(a,100);t=e+44|0;k=(o[t>>2]|0)+-100|0;o[t>>2]=k;if((k|0)==(a|0))m=c;else{do{g=a;a=a+100|0;y=a;b=g+100|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((a|0)!=(o[t>>2]|0));m=c}}else{m=_;n=_+32|0}f=S+4|0;if((o[n>>2]|0)>>>0<(o[f>>2]|0)>>>0){l=e+496|0;u=e+492|0;d=e+3216|0;a=m+36|0;p=e+532|0;c=e+528|0;do{t=o[u>>2]|0;if((t|0)==(d|0))t=d;else{t=t+68|0;o[u>>2]=t}t=t+-68|0;if((t|0)!=(l|0))do{g=t;t=t+-68|0;y=t;b=g+68|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((t|0)!=(l|0));Et(a,32,38077,1,p);o[c>>2]=o[n>>2];g=l;y=m;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));Et(a,32,38078,1,a);e=(o[n>>2]|0)+1|0;o[n>>2]=e}while(e>>>0<(o[f>>2]|0)>>>0)}else a=m+36|0;Et(a,32,38078,1,a);o[n>>2]=(o[n>>2]|0)+1;h=I;return T|0}o[e+8>>2]=5;T=-1;h=I;return T|0}o[e+8>>2]=4;T=-1;h=I;return T|0}function In(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0;d=h;h=h+80|0;c=d+36|0;f=d;l=n+4|0;u=o[l>>2]|0;a=o[t>>2]|0;if(u>>>0>>0|(u-a|0)>>>0>2e3){u=-1;h=d;return u|0}a=c;s=a+36|0;do{o[a>>2]=o[t>>2];a=a+4|0;t=t+4|0}while((a|0)<(s|0));t=c+4|0;if((o[c>>2]|0)>>>0>>0)do{Et(t,32,38078,1,t);u=(o[c>>2]|0)+1|0;o[c>>2]=u}while(u>>>0<(o[l>>2]|0)>>>0);u=f+4|0;Et(t,32,38077,1,u);o[f>>2]=o[c>>2];l=o[e+4>>2]|0;u=Qs[o[(o[l>>2]|0)+16>>2]&3](l,u,32,o[n+8>>2]|0,o[n+12>>2]|0,o[n+24>>2]|0,o[n+28>>2]|0,r,i)|0;Hr(c,36);h=d;return u|0}function xn(e,t,n){e=e|0;t=t|0;n=n|0;if(e|0)r[e>>0]=3;if(t|0)r[t>>0]=1;if(!n)return;r[n>>0]=3;return}function Rn(){return-1}function Cn(e){e=e|0;return Si(o[e+7368>>2]|0)|0}function On(e){e=e|0;return Si(o[e+3216>>2]|0)|0}function Pn(e){e=e|0;return Si(o[e>>2]|0)|0}function Mn(){return 7372}function Dn(){return 3320}function Nn(){return 4}function Bn(e){e=e|0;Hr(e,7372);Tr(e);return e|0}function jn(e){e=e|0;Hr(e,3320);Je(e);return e|0}function Un(e){e=e|0;Hr(e,4);dn(e);return e|0}function Ln(e){e=e|0;Hr(e,7372);Tr(e);return 7372}function Fn(e){e=e|0;Hr(e,3320);Je(e);return 3320}function qn(e){e=e|0;Hr(e,4);dn(e);return 4}function zn(e){e=e|0;return Ti(qr(e)|0)|0}function Kn(e){e=e|0;return Ti(ut(e)|0)|0}function Gn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=qr(e)|0;if((Ti(s)|0)>>>0>i>>>0){o[e+7368>>2]=2;s=-1;return s|0}else{zr(Ii(r,s)|0,e)|0;s=xi(t,n,r,s)|0;return s|0}return 0}function Hn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=ut(e)|0;if((Ti(s)|0)>>>0>i>>>0){o[e+3216>>2]=2;s=-1;return s|0}else{dt(Ii(r,s)|0,e)|0;s=xi(t,n,r,s)|0;return s|0}return 0}function Vn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=e+7368|0;t=Ri(t,n,r,i,s)|0;if((t|0)==-1){s=-1;return s|0}n=r+t|0;if((n|0)==(Kr(r,n+1|0,e)|0)){s=i;return s|0}if(o[s>>2]|0){s=-1;return s|0}o[s>>2]=10;s=-1;return s|0}function Qn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=e+3216|0;t=Ri(t,n,r,i,s)|0;if((t|0)==-1){s=-1;return s|0}n=r+t|0;if((n|0)==(ht(r,n+1|0,e)|0)){s=i;return s|0}if(o[s>>2]|0){s=-1;return s|0}o[s>>2]=10;s=-1;return s|0}function Wn(e){e=e|0;return Rr(e)|0}function Yn(e,t,n){e=e|0;t=t|0;n=n|0;e=Cr(e,t,n)|0;Hr(t,n);return e|0}function Xn(e){e=e|0;return Or(e)|0}function Jn(e,t,n){e=e|0;t=t|0;n=n|0;return Pr(e,t,n)|0}function Zn(e){e=e|0;return le(Mr(e)|0)|0}function $n(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;s=Mr(e)|0;if((le(s)|0)>>>0>i>>>0){o[e+7368>>2]=2;s=-1;return s|0}else{a=0-s|0;Dr(e,t,n,r+(le(s)|0)+a|0,s)|0;i=le(s)|0;ue(r+i+a|0,s,r)|0;s=i;return s|0}return 0}function er(e){e=e|0;return Nr(e)|0}function tr(e,t,n){e=e|0;t=t|0;n=n|0;return Br(e,t,n)|0}function nr(e){e=e|0;return jr(e)|0}function rr(e){e=e|0;return Ur(e)|0}function ir(e,t){e=e|0;t=t|0;return Lr(e,t)|0}function or(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;t=Fr(e,t,n,r)|0;Hr(n,r);return t|0}function sr(e){e=e|0;return Ze(e)|0}function ar(e,t,n,r,i,s,a,c){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0;u=h;h=h+64|0;f=u+32|0;l=u;if((de(r)|0)==32?(de(s)|0)==32:0){he(n,r,f)|0;he(i,s,l)|0;l=$e(e,t,f,l,a,c)|0;Hr(a,c);h=u;return l|0}o[e+3216>>2]=7;l=-1;h=u;return l|0}function cr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=de(r)|0;if((i|0)==-1){o[e+3216>>2]=7;i=-1;return i|0}else{he(n,r,n)|0;i=et(e,t,0,n,i)|0;return i|0}return 0}function fr(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;var a=0,c=0;c=h;h=h+32|0;a=c;if((de(r)|0)!=32){o[e+3216>>2]=7;a=-1;h=c;return a|0}he(n,r,a)|0;n=de(s)|0;if((n|0)==-1){o[e+3216>>2]=7;n=-1}else{he(i,s,i)|0;n=et(e,t,a,i,n)|0}a=n;h=c;return a|0}function lr(e){e=e|0;return le(tt(e)|0)|0}function ur(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=tt(e)|0;if((le(r)|0)>>>0>n>>>0){o[e+3216>>2]=2;r=-1;return r|0}n=0-r|0;if((nt(e,t+(le(r)|0)+n|0,r)|0)==-1){r=-1;return r|0}e=le(r)|0;ue(t+e+n|0,r,t)|0;r=e;return r|0}function dr(e){e=e|0;return s[e+3220>>0]|0|0}function hr(e,t,n){e=e|0;t=t|0;n=n|0;lt(e,t,n);return}function pr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=de(n)|0;if((r|0)==-1){o[e+3216>>2]=7;r=-1;return r|0}else{he(t,n,t)|0;r=(rt(e,0,t,r)|0)&1;return r|0}return 0}function mr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;a=h;h=h+32|0;s=a;if((de(n)|0)!=32){o[e+3216>>2]=7;s=-1;h=a;return s|0}he(t,n,s)|0;t=de(i)|0;if((t|0)==-1){o[e+3216>>2]=7;t=-1}else{he(r,i,r)|0;t=(rt(e,s,r,t)|0)&1}s=t;h=a;return s|0}function gr(e,t){e=e|0;t=t|0;t=xr(e,t+3285|0)|0;if((t|0)!=-1)return t|0;o[e+7368>>2]=6;return t|0}function yr(e){e=e|0;return it(e)|0}function br(e){e=e|0;return st(e)|0}function vr(e,t){e=e|0;t=t|0;return le(ot(e,t)|0)|0}function _r(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0;c=ot(e,n)|0;if((le(c)|0)>>>0>a>>>0){o[e+3216>>2]=2;c=-1;return c|0}a=0-c|0;n=at(e,t,n,r,i,s+(le(c)|0)+a|0,c)|0;Hr(r,i);if((n|0)==-1){c=-1;return c|0}i=le(c)|0;ue(s+i+a|0,c,s)|0;c=i;return c|0}function wr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=de(r)|0;if((i|0)==-1){o[e+3216>>2]=7;i=-1;return i|0}else{he(n,r,n)|0;i=ct(e,t,n,i)|0;return i|0}return 0}function Ar(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;var a=0;a=de(r)|0;if((a|0)==-1){o[e+3216>>2]=7;a=-1;return a|0}else{he(n,r,n)|0;a=ft(e,t,n,a,i,s)|0;return a|0}return 0}function Er(e){e=e|0;return le(hn(e)|0)|0}function kr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=hn(e)|0;if((le(s)|0)>>>0>i>>>0){o[e>>2]=2;s=-1;return s|0}i=0-s|0;if((pn(e,t,n,r+(le(s)|0)+i|0,s)|0)==-1){s=-1;return s|0}n=le(s)|0;ue(r+n+i|0,s,r)|0;s=n;return s|0}function Sr(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+32|0;c=f;if((de(n)|0)!=32){o[e>>2]=7;c=-1;h=f;return c|0}he(t,n,c)|0;t=de(a)|0;if((t|0)==-1){o[e>>2]=7;t=-1}else{he(s,a,s)|0;t=mn(e,c,r,i,s,t)|0}c=t;h=f;return c|0}function Tr(e){e=e|0;o[e+160>>2]=e+164;o[e+7364>>2]=0;o[e+7368>>2]=0;return}function Ir(e,t){e=e|0;t=t|0;var n=0;n=e+164|0;e=o[e+160>>2]|0;if((n|0)==(e|0)){t=0;return t|0}while(1){if(Vr(n+5|0,t,32)|0){e=5;break}n=n+72|0;if((n|0)==(e|0)){n=0;e=5;break}}if((e|0)==5)return n|0;return 0}function xr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0;n=e+164|0;s=e+160|0;if((n|0)==(o[s>>2]|0)){s=-1;return s|0}while(1){if(Vr(n+5|0,t,32)|0)break;e=n+72|0;if((e|0)==(o[s>>2]|0)){e=-1;r=8;break}else n=e}if((r|0)==8)return e|0;e=o[n>>2]|0;i=(o[s>>2]|0)+-72|0;o[s>>2]=i;if((i|0)==(n|0)){s=e;return s|0}do{t=n;n=n+72|0;r=n;i=t+72|0;do{o[t>>2]=o[r>>2];t=t+4|0;r=r+4|0}while((t|0)<(i|0))}while((n|0)!=(o[s>>2]|0));return e|0}function Rr(e){e=e|0;return 64}function Cr(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<64){o[e+7368>>2]=1;n=-1;return n|0}else{gt(t,e);pt(t+32|0,e+96|0);n=0;return n|0}return 0}function Or(e){e=e|0;e=le(32)|0;return e+30+(le(32)|0)|0}function Pr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0;a=le(32)|0;if((a+30+(le(32)|0)|0)>>>0>n>>>0){o[e+7368>>2]=2;t=-1;return t|0}else{r[t>>0]=123;i=t+1|0;s=38079;a=i+13|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));r[t+14>>0]=34;n=ue(e+96|0,32,t+15|0)|0;r[n>>0]=34;r[n+1>>0]=44;i=n+2|0;s=38093;a=i+10|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));r[n+12>>0]=34;e=ue(e,32,n+13|0)|0;r[e>>0]=34;r[e+1>>0]=125;t=e+2-t|0;return t|0}return 0}function Mr(e){e=e|0;return 64}function Dr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if(i>>>0<64){o[e+7368>>2]=2;i=-1;return i|0}else{yt(e,t,n,r);i=64;return i|0}return 0}function Nr(e){e=e|0;var t=0,n=0,i=0;n=e+164|0;i=o[e+160>>2]|0;if((n|0)!=(i|0)){t=1;e=0;do{if(!(r[n+4>>0]|0)){t=le(4)|0;e=e+6+t+(le(32)|0)|0;t=0}n=n+72|0}while((n|0)!=(i|0));if(!t){i=e;n=16;i=n+i|0;return i|0}}else e=0;i=e;n=17;i=n+i|0;return i|0}function Br(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0;p=h;h=h+16|0;u=p;l=e+164|0;f=e+160|0;c=o[f>>2]|0;if((l|0)!=(c|0)){s=1;a=l;i=0;do{if(!(r[a+4>>0]|0)){s=le(4)|0;i=i+6+s+(le(32)|0)|0;s=0}a=a+72|0}while((a|0)!=(c|0));if(s)d=4;else s=16}else{i=0;d=4}if((d|0)==4)s=17;if((s+i|0)>>>0>n>>>0){o[e+7368>>2]=2;d=-1;h=p;return d|0}r[t>>0]=123;i=t+1|0;s=38079;a=i+13|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));i=t+14|0;c=o[f>>2]|0;if((l|0)!=(c|0)){a=l;s=123;do{if(!(r[a+4>>0]|0)){r[i>>0]=s;r[i+1>>0]=34;Be(u,o[a>>2]|0)|0;i=ue(u,4,i+2|0)|0;r[i>>0]=34;r[i+1>>0]=58;r[i+2>>0]=34;i=ue(a+5|0,32,i+3|0)|0;r[i>>0]=34;i=i+1|0;s=44}a=a+72|0}while((a|0)!=(c|0));if(s<<24>>24!=44)d=16}else{s=123;d=16}if((d|0)==16){r[i>>0]=s;i=i+1|0}r[i>>0]=125;r[i+1>>0]=125;d=i+2-t|0;h=p;return d|0}function jr(e){e=e|0;var t=0,n=0,i=0;t=e+164|0;i=o[e+160>>2]|0;if((t|0)==(i|0)){i=0;return i|0}e=0;do{n=t+4|0;if(!(r[n>>0]|0)){r[n>>0]=1;e=e+1|0}t=t+72|0}while((t|0)!=(i|0));return e|0}function Ur(e){e=e|0;return 100}function Lr(e,t){e=e|0;t=t|0;return t<<5|0}function Fr(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0;if(t<<5>>>0>i>>>0){o[e+7368>>2]=1;p=-1;return p|0}if(!t){p=0;return p|0}h=e+164|0;p=e+160|0;l=e+7364|0;u=e+7364|0;d=e+168|0;f=e+169|0;c=0;while(1){i=o[p>>2]|0;if((i|0)==(l|0))i=l;else{i=i+72|0;o[p>>2]=i}i=i+-72|0;if((i|0)!=(h|0))do{e=i;i=i+-72|0;s=i;a=e+72|0;do{o[e>>2]=o[s>>2];e=e+4|0;s=s+4|0}while((e|0)<(a|0))}while((i|0)!=(h|0));a=(o[u>>2]|0)+1|0;o[u>>2]=a;o[h>>2]=a;r[d>>0]=0;pt(n,f);c=c+1|0;if((c|0)==(t|0))break;else n=n+32|0}return t|0}function qr(e){e=e|0;var t=0,n=0,r=0,i=0;r=Me(e)|0;i=Ie(e+96|0)|0;t=e+164|0;n=o[e+160>>2]|0;if((t|0)==(n|0)){n=4;r=r+8|0;i=r+i|0;i=i+n|0;return i|0}e=4;do{e=e+5+(Ie(t+5|0)|0)|0;t=t+72|0}while((t|0)!=(n|0));r=r+8|0;i=r+i|0;i=i+e|0;return i|0}function zr(e,t){e=e|0;t=t|0;var n=0,i=0;e=xe(De(be(e,2)|0,t)|0,t+96|0)|0;i=t+160|0;n=t+164|0;e=be(e,((o[i>>2]|0)-n|0)/72|0)|0;i=o[i>>2]|0;if((n|0)==(i|0)){i=e;t=t+7364|0;t=o[t>>2]|0;t=be(i,t)|0;return t|0}do{e=be(e,o[n>>2]|0)|0;e=xe(_e(e,(r[n+4>>0]|0)!=0)|0,n+5|0)|0;n=n+72|0}while((n|0)!=(i|0));t=t+7364|0;t=o[t>>2]|0;t=be(e,t)|0;return t|0}function Kr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0;f=h;h=h+16|0;c=f+4|0;a=f;e=ve(e,t,a)|0;switch(o[a>>2]|0){case 2:{e=ve(Re(Ne(e,t,n)|0,t,n+96|0)|0,t,c)|0;a=o[c>>2]|0;o[c>>2]=a+-1;if(!((e|0)==(t|0)|(a|0)==0)){i=n+160|0;s=n+7364|0;a=n+7292|0;do{r=o[i>>2]|0;if((r|0)==(s|0))r=a;else o[i>>2]=r+72;e=Re(we(ve(e,t,r)|0,t,r+4|0)|0,t,r+5|0)|0;r=o[c>>2]|0;o[c>>2]=r+-1}while(!((e|0)==(t|0)|(r|0)==0))}n=ve(e,t,n+7364|0)|0;h=f;return n|0}case 1:{o[n+7368>>2]=13;n=t;h=f;return n|0}default:{o[n+7368>>2]=9;n=t;h=f;return n|0}}return 0}function Gr(e,t){e=e|0;t=t|0;var n=0;n=e+t|0;if(!t)return;do{r[e>>0]=0;e=e+1|0}while((e|0)!=(n|0));return}function Hr(e,t){e=e|0;t=t|0;var n=0;n=e+t|0;if(!t)return;do{r[e>>0]=0;e=e+1|0}while((e|0)!=(n|0));return}function Vr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;o=h;h=h+16|0;i=o;r[i>>0]=0;if(n|0)while(1){n=n+-1|0;r[i>>0]=r[i>>0]|r[t>>0]^r[e>>0];if(!n)break;else{t=t+1|0;e=e+1|0}}h=o;return(r[i>>0]|0)==0|0}function Qr(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0;E=s[t>>0]|0;g=Os(s[t+1>>0]|0|0,0,8)|0;I=T;R=Os(s[t+2>>0]|0|0,0,16)|0;I=I|T;u=Os(s[t+3>>0]|0|0,0,24)|0;I=I|T;x=r[t+6>>0]|0;f=s[t+4>>0]|0;k=Os(s[t+5>>0]|0|0,0,8)|0;l=T;x=Os(x&255|0,0,16)|0;l=Os(k|f|x|0,l|T|0,6)|0;x=T;f=r[t+9>>0]|0;k=s[t+7>>0]|0;a=Os(s[t+8>>0]|0|0,0,8)|0;_=T;f=Os(f&255|0,0,16)|0;_=Os(a|k|f|0,_|T|0,5)|0;f=T;k=r[t+12>>0]|0;a=s[t+10>>0]|0;b=Os(s[t+11>>0]|0|0,0,8)|0;S=T;k=Os(k&255|0,0,16)|0;S=Os(b|a|k|0,S|T|0,3)|0;k=T;a=r[t+15>>0]|0;b=s[t+13>>0]|0;p=Os(s[t+14>>0]|0|0,0,8)|0;c=T;a=Os(a&255|0,0,16)|0;c=Os(p|b|a|0,c|T|0,2)|0;a=T;b=s[t+16>>0]|0;p=Os(s[t+17>>0]|0|0,0,8)|0;w=T;n=Os(s[t+18>>0]|0|0,0,16)|0;w=w|T;A=Os(s[t+19>>0]|0|0,0,24)|0;A=p|b|n|A;w=w|T;n=r[t+22>>0]|0;b=s[t+20>>0]|0;p=Os(s[t+21>>0]|0|0,0,8)|0;i=T;n=Os(n&255|0,0,16)|0;i=Os(p|b|n|0,i|T|0,7)|0;n=T;b=r[t+25>>0]|0;p=s[t+23>>0]|0;C=Os(s[t+24>>0]|0|0,0,8)|0;v=T;b=Os(b&255|0,0,16)|0;v=Os(C|p|b|0,v|T|0,5)|0;b=T;p=r[t+28>>0]|0;C=s[t+26>>0]|0;m=Os(s[t+27>>0]|0|0,0,8)|0;h=T;p=Os(p&255|0,0,16)|0;h=Os(m|C|p|0,h|T|0,4)|0;p=T;C=r[t+31>>0]|0;m=s[t+29>>0]|0;d=Os(s[t+30>>0]|0|0,0,8)|0;y=T;t=Os(C&255|0,0,16)|0;y=Os(d|m|t|0,y|T|0,2)|0;y=y&33554428;t=ks(y|0,0,16777216,0)|0;m=Cs(t|0,T|0,25)|0;m=Ss(0,0,m|0,T|0)|0;I=ks(m&19|0,0,g|E|R|u|0,I|0)|0;u=T;R=ks(l|0,x|0,16777216,0)|0;E=Cs(R|0,T|0,25)|0;E=ks(_|0,f|0,E|0,T|0)|0;f=T;R=Ss(l|0,x|0,R&-33554432|0,0)|0;x=T;l=ks(S|0,k|0,16777216,0)|0;_=Cs(l|0,T|0,25)|0;_=ks(c|0,a|0,_|0,T|0)|0;a=T;c=ks(A|0,w|0,16777216,0)|0;g=Cs(c|0,T|0,25)|0;g=ks(i|0,n|0,g|0,T|0)|0;n=T;i=ks(v|0,b|0,16777216,0)|0;m=Cs(i|0,T|0,25)|0;m=ks(h|0,p|0,m|0,T|0)|0;p=T;h=ks(I|0,u|0,33554432,0)|0;d=Cs(h|0,T|0,26)|0;d=ks(R|0,x|0,d|0,T|0)|0;h=Ss(I|0,u|0,h&-67108864|0,0)|0;u=ks(E|0,f|0,33554432,0)|0;I=Cs(u|0,T|0,26)|0;k=ks(I|0,T|0,S|0,k|0)|0;l=Ss(k|0,T|0,l&-33554432|0,0)|0;u=Ss(E|0,f|0,u&-67108864|0,0)|0;f=ks(_|0,a|0,33554432,0)|0;E=Cs(f|0,T|0,26)|0;w=ks(E|0,T|0,A|0,w|0)|0;c=Ss(w|0,T|0,c&-33554432|0,0)|0;f=Ss(_|0,a|0,f&-67108864|0,0)|0;a=ks(g|0,n|0,33554432,0)|0;_=Cs(a|0,T|0,26)|0;b=ks(_|0,T|0,v|0,b|0)|0;i=Ss(b|0,T|0,i&-33554432|0,0)|0;a=Ss(g|0,n|0,a&-67108864|0,0)|0;n=ks(m|0,p|0,33554432,0)|0;g=Cs(n|0,T|0,26)|0;g=ks(y|0,0,g|0,T|0)|0;t=Ss(g|0,T|0,t&33554432|0,0)|0;n=Ss(m|0,p|0,n&-67108864|0,0)|0;o[e>>2]=h;o[e+4>>2]=d;o[e+8>>2]=u;o[e+12>>2]=l;o[e+16>>2]=f;o[e+20>>2]=c;o[e+24>>2]=a;o[e+28>>2]=i;o[e+32>>2]=n;o[e+36>>2]=t;return}function Wr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0,s=0;s=h;h=h+192|0;n=s+144|0;r=s+96|0;i=s+48|0;o=s;Yr(n,t);Yr(r,n);Yr(r,r);Xr(r,t,r);Xr(n,n,r);Yr(i,n);Xr(r,r,i);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);t=1;do{Yr(o,o);t=t+1|0}while((t|0)!=100);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(r,r);Yr(r,r);Yr(r,r);Yr(r,r);Yr(r,r);Xr(e,r,n);h=s;return}function Yr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Ne=0,Be=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;tt=o[t>>2]|0;we=o[t+4>>2]|0;l=o[t+8>>2]|0;de=o[t+12>>2]|0;s=o[t+16>>2]|0;rt=o[t+20>>2]|0;a=o[t+24>>2]|0;p=o[t+28>>2]|0;q=o[t+32>>2]|0;R=o[t+36>>2]|0;y=tt<<1;n=we<<1;Ye=l<<1;c=de<<1;pe=s<<1;i=rt<<1;d=a<<1;r=p<<1;Ue=rt*38|0;be=a*19|0;Ee=p*38|0;ie=q*19|0;st=R*38|0;nt=((tt|0)<0)<<31>>31;nt=Es(tt|0,nt|0,tt|0,nt|0)|0;tt=T;b=((y|0)<0)<<31>>31;_e=((we|0)<0)<<31>>31;Be=Es(y|0,b|0,we|0,_e|0)|0;Ne=T;f=((l|0)<0)<<31>>31;We=Es(l|0,f|0,y|0,b|0)|0;Qe=T;he=((de|0)<0)<<31>>31;Ve=Es(de|0,he|0,y|0,b|0)|0;He=T;J=((s|0)<0)<<31>>31;Fe=Es(s|0,J|0,y|0,b|0)|0;Le=T;it=((rt|0)<0)<<31>>31;Te=Es(rt|0,it|0,y|0,b|0)|0;Se=T;Ae=((a|0)<0)<<31>>31;ae=Es(a|0,Ae|0,y|0,b|0)|0;se=T;x=((p|0)<0)<<31>>31;G=Es(p|0,x|0,y|0,b|0)|0;K=T;z=((q|0)<0)<<31>>31;P=Es(q|0,z|0,y|0,b|0)|0;O=T;C=((R|0)<0)<<31>>31;b=Es(R|0,C|0,y|0,b|0)|0;y=T;u=((n|0)<0)<<31>>31;_e=Es(n|0,u|0,we|0,_e|0)|0;we=T;ne=Es(n|0,u|0,l|0,f|0)|0;re=T;g=((c|0)<0)<<31>>31;Ge=Es(c|0,g|0,n|0,u|0)|0;Ke=T;Ce=Es(s|0,J|0,n|0,u|0)|0;Re=T;m=((i|0)<0)<<31>>31;fe=Es(i|0,m|0,n|0,u|0)|0;ce=T;V=Es(a|0,Ae|0,n|0,u|0)|0;H=T;t=((r|0)<0)<<31>>31;D=Es(r|0,t|0,n|0,u|0)|0;M=T;_=Es(q|0,z|0,n|0,u|0)|0;v=T;ot=((st|0)<0)<<31>>31;u=Es(st|0,ot|0,n|0,u|0)|0;n=T;ze=Es(l|0,f|0,l|0,f|0)|0;qe=T;Xe=((Ye|0)<0)<<31>>31;xe=Es(Ye|0,Xe|0,de|0,he|0)|0;Ie=T;ue=Es(s|0,J|0,Ye|0,Xe|0)|0;le=T;X=Es(rt|0,it|0,Ye|0,Xe|0)|0;Y=T;F=Es(a|0,Ae|0,Ye|0,Xe|0)|0;L=T;A=Es(p|0,x|0,Ye|0,Xe|0)|0;w=T;oe=((ie|0)<0)<<31>>31;Xe=Es(ie|0,oe|0,Ye|0,Xe|0)|0;Ye=T;f=Es(st|0,ot|0,l|0,f|0)|0;l=T;he=Es(c|0,g|0,de|0,he|0)|0;de=T;W=Es(c|0,g|0,s|0,J|0)|0;Q=T;B=Es(i|0,m|0,c|0,g|0)|0;N=T;I=Es(a|0,Ae|0,c|0,g|0)|0;S=T;ke=((Ee|0)<0)<<31>>31;Ze=Es(Ee|0,ke|0,c|0,g|0)|0;Je=T;Pe=Es(ie|0,oe|0,c|0,g|0)|0;Oe=T;g=Es(st|0,ot|0,c|0,g|0)|0;c=T;U=Es(s|0,J|0,s|0,J|0)|0;j=T;me=((pe|0)<0)<<31>>31;k=Es(pe|0,me|0,rt|0,it|0)|0;E=T;ve=((be|0)<0)<<31>>31;et=Es(be|0,ve|0,pe|0,me|0)|0;$e=T;De=Es(Ee|0,ke|0,s|0,J|0)|0;Me=T;me=Es(ie|0,oe|0,pe|0,me|0)|0;pe=T;J=Es(st|0,ot|0,s|0,J|0)|0;s=T;it=Es(Ue|0,((Ue|0)<0)<<31>>31|0,rt|0,it|0)|0;rt=T;Ue=Es(be|0,ve|0,i|0,m|0)|0;je=T;ye=Es(Ee|0,ke|0,i|0,m|0)|0;ge=T;$=Es(ie|0,oe|0,i|0,m|0)|0;Z=T;m=Es(st|0,ot|0,i|0,m|0)|0;i=T;ve=Es(be|0,ve|0,a|0,Ae|0)|0;be=T;te=Es(Ee|0,ke|0,a|0,Ae|0)|0;ee=T;d=Es(ie|0,oe|0,d|0,((d|0)<0)<<31>>31|0)|0;h=T;Ae=Es(st|0,ot|0,a|0,Ae|0)|0;a=T;x=Es(Ee|0,ke|0,p|0,x|0)|0;p=T;ke=Es(ie|0,oe|0,r|0,t|0)|0;Ee=T;t=Es(st|0,ot|0,r|0,t|0)|0;r=T;oe=Es(ie|0,oe|0,q|0,z|0)|0;ie=T;z=Es(st|0,ot|0,q|0,z|0)|0;q=T;C=Es(st|0,ot|0,R|0,C|0)|0;R=T;tt=ks(it|0,rt|0,nt|0,tt|0)|0;$e=ks(tt|0,T|0,et|0,$e|0)|0;Je=ks($e|0,T|0,Ze|0,Je|0)|0;Ye=ks(Je|0,T|0,Xe|0,Ye|0)|0;n=ks(Ye|0,T|0,u|0,n|0)|0;u=T;we=ks(We|0,Qe|0,_e|0,we|0)|0;_e=T;re=ks(Ve|0,He|0,ne|0,re|0)|0;ne=T;qe=ks(Ge|0,Ke|0,ze|0,qe|0)|0;Le=ks(qe|0,T|0,Fe|0,Le|0)|0;p=ks(Le|0,T|0,x|0,p|0)|0;h=ks(p|0,T|0,d|0,h|0)|0;i=ks(h|0,T|0,m|0,i|0)|0;m=T;h=ks(n|0,u|0,33554432,0)|0;d=T;p=Rs(h|0,d|0,26)|0;x=T;Ne=ks(Ue|0,je|0,Be|0,Ne|0)|0;Me=ks(Ne|0,T|0,De|0,Me|0)|0;Oe=ks(Me|0,T|0,Pe|0,Oe|0)|0;l=ks(Oe|0,T|0,f|0,l|0)|0;x=ks(l|0,T|0,p|0,x|0)|0;p=T;d=Ss(n|0,u|0,h&-67108864|0,d|0)|0;h=T;u=ks(i|0,m|0,33554432,0)|0;n=T;l=Rs(u|0,n|0,26)|0;f=T;Ie=ks(Ce|0,Re|0,xe|0,Ie|0)|0;Se=ks(Ie|0,T|0,Te|0,Se|0)|0;Ee=ks(Se|0,T|0,ke|0,Ee|0)|0;a=ks(Ee|0,T|0,Ae|0,a|0)|0;f=ks(a|0,T|0,l|0,f|0)|0;l=T;n=Ss(i|0,m|0,u&-67108864|0,n|0)|0;u=T;m=ks(x|0,p|0,16777216,0)|0;i=Rs(m|0,T|0,25)|0;a=T;be=ks(we|0,_e|0,ve|0,be|0)|0;ge=ks(be|0,T|0,ye|0,ge|0)|0;pe=ks(ge|0,T|0,me|0,pe|0)|0;c=ks(pe|0,T|0,g|0,c|0)|0;a=ks(c|0,T|0,i|0,a|0)|0;i=T;m=Ss(x|0,p|0,m&-33554432|0,0)|0;p=T;x=ks(f|0,l|0,16777216,0)|0;c=Rs(x|0,T|0,25)|0;g=T;le=ks(he|0,de|0,ue|0,le|0)|0;ce=ks(le|0,T|0,fe|0,ce|0)|0;se=ks(ce|0,T|0,ae|0,se|0)|0;ie=ks(se|0,T|0,oe|0,ie|0)|0;r=ks(ie|0,T|0,t|0,r|0)|0;g=ks(r|0,T|0,c|0,g|0)|0;c=T;x=Ss(f|0,l|0,x&-33554432|0,0)|0;l=T;f=ks(a|0,i|0,33554432,0)|0;r=Rs(f|0,T|0,26)|0;t=T;ee=ks(re|0,ne|0,te|0,ee|0)|0;Z=ks(ee|0,T|0,$|0,Z|0)|0;s=ks(Z|0,T|0,J|0,s|0)|0;t=ks(s|0,T|0,r|0,t|0)|0;r=T;f=Ss(a|0,i|0,f&-67108864|0,0)|0;i=ks(g|0,c|0,33554432,0)|0;a=Rs(i|0,T|0,26)|0;s=T;Q=ks(X|0,Y|0,W|0,Q|0)|0;H=ks(Q|0,T|0,V|0,H|0)|0;K=ks(H|0,T|0,G|0,K|0)|0;q=ks(K|0,T|0,z|0,q|0)|0;s=ks(q|0,T|0,a|0,s|0)|0;a=T;i=Ss(g|0,c|0,i&-67108864|0,0)|0;c=ks(t|0,r|0,16777216,0)|0;g=Rs(c|0,T|0,25)|0;u=ks(g|0,T|0,n|0,u|0)|0;n=T;c=Ss(t|0,r|0,c&-33554432|0,0)|0;r=ks(s|0,a|0,16777216,0)|0;t=Rs(r|0,T|0,25)|0;g=T;j=ks(F|0,L|0,U|0,j|0)|0;N=ks(j|0,T|0,B|0,N|0)|0;M=ks(N|0,T|0,D|0,M|0)|0;O=ks(M|0,T|0,P|0,O|0)|0;R=ks(O|0,T|0,C|0,R|0)|0;g=ks(R|0,T|0,t|0,g|0)|0;t=T;r=Ss(s|0,a|0,r&-33554432|0,0)|0;a=ks(u|0,n|0,33554432,0)|0;s=Cs(a|0,T|0,26)|0;s=ks(x|0,l|0,s|0,T|0)|0;a=Ss(u|0,n|0,a&-67108864|0,0)|0;n=ks(g|0,t|0,33554432,0)|0;u=Rs(n|0,T|0,26)|0;l=T;E=ks(I|0,S|0,k|0,E|0)|0;w=ks(E|0,T|0,A|0,w|0)|0;v=ks(w|0,T|0,_|0,v|0)|0;y=ks(v|0,T|0,b|0,y|0)|0;l=ks(y|0,T|0,u|0,l|0)|0;u=T;n=Ss(g|0,t|0,n&-67108864|0,0)|0;t=ks(l|0,u|0,16777216,0)|0;g=Rs(t|0,T|0,25)|0;g=Es(g|0,T|0,19,0)|0;h=ks(g|0,T|0,d|0,h|0)|0;d=T;t=Ss(l|0,u|0,t&-33554432|0,0)|0;u=ks(h|0,d|0,33554432,0)|0;l=Cs(u|0,T|0,26)|0;l=ks(m|0,p|0,l|0,T|0)|0;u=Ss(h|0,d|0,u&-67108864|0,0)|0;o[e>>2]=u;o[e+4>>2]=l;o[e+8>>2]=f;o[e+12>>2]=c;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=n;o[e+36>>2]=t;return}function Xr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Ne=0,Be=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ct=0,ft=0,lt=0,ut=0,dt=0,ht=0,pt=0,mt=0,gt=0,yt=0,bt=0,vt=0,_t=0,wt=0,At=0,Et=0,kt=0,St=0,Tt=0,It=0,xt=0,Rt=0,Ct=0,Ot=0,Pt=0,Mt=0,Dt=0,Nt=0,Bt=0,jt=0,Ut=0,Lt=0,Ft=0,qt=0,zt=0,Kt=0,Gt=0,Ht=0,Vt=0,Qt=0,Wt=0,Yt=0,Xt=0,Jt=0,Zt=0,$t=0,en=0,tn=0,nn=0,rn=0,on=0,sn=0,an=0,cn=0,fn=0,ln=0,un=0,dn=0,hn=0,pn=0,mn=0,gn=0,yn=0,bn=0,vn=0,_n=0,wn=0,An=0,En=0,kn=0,Sn=0,Tn=0,In=0,xn=0,Rn=0,Cn=0,On=0,Pn=0,Mn=0,Dn=0,Nn=0,Bn=0,jn=0,Un=0,Ln=0,Fn=0,qn=0,zn=0,Kn=0,Gn=0,Hn=0;y=o[t>>2]|0;v=o[t+4>>2]|0;l=o[t+8>>2]|0;Ht=o[t+12>>2]|0;s=o[t+16>>2]|0;Te=o[t+20>>2]|0;a=o[t+24>>2]|0;It=o[t+28>>2]|0;oe=o[t+32>>2]|0;ae=o[t+36>>2]|0;D=o[n>>2]|0;B=o[n+4>>2]|0;P=o[n+8>>2]|0;C=o[n+12>>2]|0;x=o[n+16>>2]|0;S=o[n+20>>2]|0;E=o[n+24>>2]|0;w=o[n+28>>2]|0;f=o[n+32>>2]|0;_=o[n+36>>2]|0;qn=B*19|0;rn=P*19|0;bt=C*19|0;De=x*19|0;ln=S*19|0;Ot=E*19|0;Ve=w*19|0;Hn=f*19|0;Kn=_*19|0;t=v<<1;c=Ht<<1;i=Te<<1;r=It<<1;L=ae<<1;b=((y|0)<0)<<31>>31;N=((D|0)<0)<<31>>31;Ln=Es(D|0,N|0,y|0,b|0)|0;Un=T;j=((B|0)<0)<<31>>31;En=Es(B|0,j|0,y|0,b|0)|0;An=T;M=((P|0)<0)<<31>>31;wt=Es(P|0,M|0,y|0,b|0)|0;_t=T;O=((C|0)<0)<<31>>31;je=Es(C|0,O|0,y|0,b|0)|0;Be=T;R=((x|0)<0)<<31>>31;hn=Es(x|0,R|0,y|0,b|0)|0;dn=T;I=((S|0)<0)<<31>>31;Dt=Es(S|0,I|0,y|0,b|0)|0;Mt=T;k=((E|0)<0)<<31>>31;Ye=Es(E|0,k|0,y|0,b|0)|0;We=T;A=((w|0)<0)<<31>>31;le=Es(w|0,A|0,y|0,b|0)|0;fe=T;zn=((f|0)<0)<<31>>31;z=Es(f|0,zn|0,y|0,b|0)|0;q=T;b=Es(_|0,((_|0)<0)<<31>>31|0,y|0,b|0)|0;y=T;_=((v|0)<0)<<31>>31;sn=Es(D|0,N|0,v|0,_|0)|0;an=T;u=((t|0)<0)<<31>>31;St=Es(B|0,j|0,t|0,u|0)|0;kt=T;Le=Es(P|0,M|0,v|0,_|0)|0;Ue=T;mn=Es(C|0,O|0,t|0,u|0)|0;pn=T;Bt=Es(x|0,R|0,v|0,_|0)|0;Nt=T;Je=Es(S|0,I|0,t|0,u|0)|0;Xe=T;de=Es(E|0,k|0,v|0,_|0)|0;ue=T;G=Es(w|0,A|0,t|0,u|0)|0;K=T;_=Es(f|0,zn|0,v|0,_|0)|0;v=T;zn=((Kn|0)<0)<<31>>31;u=Es(Kn|0,zn|0,t|0,u|0)|0;t=T;f=((l|0)<0)<<31>>31;Et=Es(D|0,N|0,l|0,f|0)|0;At=T;Ke=Es(B|0,j|0,l|0,f|0)|0;ze=T;yn=Es(P|0,M|0,l|0,f|0)|0;gn=T;Ut=Es(C|0,O|0,l|0,f|0)|0;jt=T;$e=Es(x|0,R|0,l|0,f|0)|0;Ze=T;pe=Es(S|0,I|0,l|0,f|0)|0;he=T;V=Es(E|0,k|0,l|0,f|0)|0;H=T;A=Es(w|0,A|0,l|0,f|0)|0;w=T;Gn=((Hn|0)<0)<<31>>31;Sn=Es(Hn|0,Gn|0,l|0,f|0)|0;kn=T;f=Es(Kn|0,zn|0,l|0,f|0)|0;l=T;Vt=((Ht|0)<0)<<31>>31;qe=Es(D|0,N|0,Ht|0,Vt|0)|0;Fe=T;g=((c|0)<0)<<31>>31;wn=Es(B|0,j|0,c|0,g|0)|0;_n=T;Ft=Es(P|0,M|0,Ht|0,Vt|0)|0;Lt=T;tt=Es(C|0,O|0,c|0,g|0)|0;et=T;ge=Es(x|0,R|0,Ht|0,Vt|0)|0;me=T;W=Es(S|0,I|0,c|0,g|0)|0;Q=T;k=Es(E|0,k|0,Ht|0,Vt|0)|0;E=T;Qe=((Ve|0)<0)<<31>>31;In=Es(Ve|0,Qe|0,c|0,g|0)|0;Tn=T;Vt=Es(Hn|0,Gn|0,Ht|0,Vt|0)|0;Ht=T;g=Es(Kn|0,zn|0,c|0,g|0)|0;c=T;Se=((s|0)<0)<<31>>31;vn=Es(D|0,N|0,s|0,Se|0)|0;bn=T;Gt=Es(B|0,j|0,s|0,Se|0)|0;Kt=T;rt=Es(P|0,M|0,s|0,Se|0)|0;nt=T;be=Es(C|0,O|0,s|0,Se|0)|0;ye=T;X=Es(x|0,R|0,s|0,Se|0)|0;Y=T;I=Es(S|0,I|0,s|0,Se|0)|0;S=T;Pt=((Ot|0)<0)<<31>>31;Rn=Es(Ot|0,Pt|0,s|0,Se|0)|0;xn=T;Wt=Es(Ve|0,Qe|0,s|0,Se|0)|0;Qt=T;ft=Es(Hn|0,Gn|0,s|0,Se|0)|0;ct=T;Se=Es(Kn|0,zn|0,s|0,Se|0)|0;s=T;Ie=((Te|0)<0)<<31>>31;zt=Es(D|0,N|0,Te|0,Ie|0)|0;qt=T;m=((i|0)<0)<<31>>31;at=Es(B|0,j|0,i|0,m|0)|0;st=T;_e=Es(P|0,M|0,Te|0,Ie|0)|0;ve=T;Z=Es(C|0,O|0,i|0,m|0)|0;J=T;R=Es(x|0,R|0,Te|0,Ie|0)|0;x=T;un=((ln|0)<0)<<31>>31;On=Es(ln|0,un|0,i|0,m|0)|0;Cn=T;Xt=Es(Ot|0,Pt|0,Te|0,Ie|0)|0;Yt=T;ut=Es(Ve|0,Qe|0,i|0,m|0)|0;lt=T;Ie=Es(Hn|0,Gn|0,Te|0,Ie|0)|0;Te=T;m=Es(Kn|0,zn|0,i|0,m|0)|0;i=T;Tt=((a|0)<0)<<31>>31;ot=Es(D|0,N|0,a|0,Tt|0)|0;it=T;ke=Es(B|0,j|0,a|0,Tt|0)|0;Ee=T;ee=Es(P|0,M|0,a|0,Tt|0)|0;$=T;O=Es(C|0,O|0,a|0,Tt|0)|0;C=T;Ne=((De|0)<0)<<31>>31;Mn=Es(De|0,Ne|0,a|0,Tt|0)|0;Pn=T;Zt=Es(ln|0,un|0,a|0,Tt|0)|0;Jt=T;ht=Es(Ot|0,Pt|0,a|0,Tt|0)|0;dt=T;Re=Es(Ve|0,Qe|0,a|0,Tt|0)|0;xe=T;d=Es(Hn|0,Gn|0,a|0,Tt|0)|0;h=T;Tt=Es(Kn|0,zn|0,a|0,Tt|0)|0;a=T;xt=((It|0)<0)<<31>>31;Ae=Es(D|0,N|0,It|0,xt|0)|0;we=T;n=((r|0)<0)<<31>>31;ie=Es(B|0,j|0,r|0,n|0)|0;re=T;M=Es(P|0,M|0,It|0,xt|0)|0;P=T;vt=((bt|0)<0)<<31>>31;Nn=Es(bt|0,vt|0,r|0,n|0)|0;Dn=T;en=Es(De|0,Ne|0,It|0,xt|0)|0;$t=T;mt=Es(ln|0,un|0,r|0,n|0)|0;pt=T;Oe=Es(Ot|0,Pt|0,It|0,xt|0)|0;Ce=T;U=Es(Ve|0,Qe|0,r|0,n|0)|0;p=T;xt=Es(Hn|0,Gn|0,It|0,xt|0)|0;It=T;n=Es(Kn|0,zn|0,r|0,n|0)|0;r=T;se=((oe|0)<0)<<31>>31;ne=Es(D|0,N|0,oe|0,se|0)|0;te=T;j=Es(B|0,j|0,oe|0,se|0)|0;B=T;on=((rn|0)<0)<<31>>31;jn=Es(rn|0,on|0,oe|0,se|0)|0;Bn=T;nn=Es(bt|0,vt|0,oe|0,se|0)|0;tn=T;yt=Es(De|0,Ne|0,oe|0,se|0)|0;gt=T;Me=Es(ln|0,un|0,oe|0,se|0)|0;Pe=T;fn=Es(Ot|0,Pt|0,oe|0,se|0)|0;cn=T;Ct=Es(Ve|0,Qe|0,oe|0,se|0)|0;Rt=T;He=Es(Hn|0,Gn|0,oe|0,se|0)|0;Ge=T;se=Es(Kn|0,zn|0,oe|0,se|0)|0;oe=T;ce=((ae|0)<0)<<31>>31;N=Es(D|0,N|0,ae|0,ce|0)|0;D=T;F=((L|0)<0)<<31>>31;qn=Es(qn|0,((qn|0)<0)<<31>>31|0,L|0,F|0)|0;Fn=T;on=Es(rn|0,on|0,ae|0,ce|0)|0;rn=T;vt=Es(bt|0,vt|0,L|0,F|0)|0;bt=T;Ne=Es(De|0,Ne|0,ae|0,ce|0)|0;De=T;un=Es(ln|0,un|0,L|0,F|0)|0;ln=T;Pt=Es(Ot|0,Pt|0,ae|0,ce|0)|0;Ot=T;Qe=Es(Ve|0,Qe|0,L|0,F|0)|0;Ve=T;ce=Es(Hn|0,Gn|0,ae|0,ce|0)|0;ae=T;F=Es(Kn|0,zn|0,L|0,F|0)|0;L=T;Un=ks(qn|0,Fn|0,Ln|0,Un|0)|0;Bn=ks(Un|0,T|0,jn|0,Bn|0)|0;Dn=ks(Bn|0,T|0,Nn|0,Dn|0)|0;Pn=ks(Dn|0,T|0,Mn|0,Pn|0)|0;Cn=ks(Pn|0,T|0,On|0,Cn|0)|0;xn=ks(Cn|0,T|0,Rn|0,xn|0)|0;Tn=ks(xn|0,T|0,In|0,Tn|0)|0;kn=ks(Tn|0,T|0,Sn|0,kn|0)|0;t=ks(kn|0,T|0,u|0,t|0)|0;u=T;an=ks(En|0,An|0,sn|0,an|0)|0;sn=T;bn=ks(wn|0,_n|0,vn|0,bn|0)|0;gn=ks(bn|0,T|0,yn|0,gn|0)|0;pn=ks(gn|0,T|0,mn|0,pn|0)|0;dn=ks(pn|0,T|0,hn|0,dn|0)|0;ln=ks(dn|0,T|0,un|0,ln|0)|0;cn=ks(ln|0,T|0,fn|0,cn|0)|0;p=ks(cn|0,T|0,U|0,p|0)|0;h=ks(p|0,T|0,d|0,h|0)|0;i=ks(h|0,T|0,m|0,i|0)|0;m=T;h=ks(t|0,u|0,33554432,0)|0;d=T;p=Rs(h|0,d|0,26)|0;U=T;rn=ks(an|0,sn|0,on|0,rn|0)|0;tn=ks(rn|0,T|0,nn|0,tn|0)|0;$t=ks(tn|0,T|0,en|0,$t|0)|0;Jt=ks($t|0,T|0,Zt|0,Jt|0)|0;Yt=ks(Jt|0,T|0,Xt|0,Yt|0)|0;Qt=ks(Yt|0,T|0,Wt|0,Qt|0)|0;Ht=ks(Qt|0,T|0,Vt|0,Ht|0)|0;l=ks(Ht|0,T|0,f|0,l|0)|0;U=ks(l|0,T|0,p|0,U|0)|0;p=T;d=Ss(t|0,u|0,h&-67108864|0,d|0)|0;h=T;u=ks(i|0,m|0,33554432,0)|0;t=T;l=Rs(u|0,t|0,26)|0;f=T;qt=ks(Gt|0,Kt|0,zt|0,qt|0)|0;Lt=ks(qt|0,T|0,Ft|0,Lt|0)|0;jt=ks(Lt|0,T|0,Ut|0,jt|0)|0;Nt=ks(jt|0,T|0,Bt|0,Nt|0)|0;Mt=ks(Nt|0,T|0,Dt|0,Mt|0)|0;Ot=ks(Mt|0,T|0,Pt|0,Ot|0)|0;Rt=ks(Ot|0,T|0,Ct|0,Rt|0)|0;It=ks(Rt|0,T|0,xt|0,It|0)|0;a=ks(It|0,T|0,Tt|0,a|0)|0;f=ks(a|0,T|0,l|0,f|0)|0;l=T;t=Ss(i|0,m|0,u&-67108864|0,t|0)|0;u=T;m=ks(U|0,p|0,16777216,0)|0;i=Rs(m|0,T|0,25)|0;a=T;At=ks(St|0,kt|0,Et|0,At|0)|0;_t=ks(At|0,T|0,wt|0,_t|0)|0;bt=ks(_t|0,T|0,vt|0,bt|0)|0;gt=ks(bt|0,T|0,yt|0,gt|0)|0;pt=ks(gt|0,T|0,mt|0,pt|0)|0;dt=ks(pt|0,T|0,ht|0,dt|0)|0;lt=ks(dt|0,T|0,ut|0,lt|0)|0;ct=ks(lt|0,T|0,ft|0,ct|0)|0;c=ks(ct|0,T|0,g|0,c|0)|0;a=ks(c|0,T|0,i|0,a|0)|0;i=T;m=Ss(U|0,p|0,m&-33554432|0,0)|0;p=T;U=ks(f|0,l|0,16777216,0)|0;c=Rs(U|0,T|0,25)|0;g=T;it=ks(at|0,st|0,ot|0,it|0)|0;nt=ks(it|0,T|0,rt|0,nt|0)|0;et=ks(nt|0,T|0,tt|0,et|0)|0;Ze=ks(et|0,T|0,$e|0,Ze|0)|0;Xe=ks(Ze|0,T|0,Je|0,Xe|0)|0;We=ks(Xe|0,T|0,Ye|0,We|0)|0;Ve=ks(We|0,T|0,Qe|0,Ve|0)|0;Ge=ks(Ve|0,T|0,He|0,Ge|0)|0;r=ks(Ge|0,T|0,n|0,r|0)|0;g=ks(r|0,T|0,c|0,g|0)|0;c=T;U=Ss(f|0,l|0,U&-33554432|0,0)|0;l=T;f=ks(a|0,i|0,33554432,0)|0;r=Rs(f|0,T|0,26)|0;n=T;Fe=ks(Ke|0,ze|0,qe|0,Fe|0)|0;Ue=ks(Fe|0,T|0,Le|0,Ue|0)|0;Be=ks(Ue|0,T|0,je|0,Be|0)|0;De=ks(Be|0,T|0,Ne|0,De|0)|0;Pe=ks(De|0,T|0,Me|0,Pe|0)|0;Ce=ks(Pe|0,T|0,Oe|0,Ce|0)|0;xe=ks(Ce|0,T|0,Re|0,xe|0)|0;Te=ks(xe|0,T|0,Ie|0,Te|0)|0;s=ks(Te|0,T|0,Se|0,s|0)|0;n=ks(s|0,T|0,r|0,n|0)|0;r=T;f=Ss(a|0,i|0,f&-67108864|0,0)|0;i=ks(g|0,c|0,33554432,0)|0;a=Rs(i|0,T|0,26)|0;s=T;we=ks(ke|0,Ee|0,Ae|0,we|0)|0;ve=ks(we|0,T|0,_e|0,ve|0)|0;ye=ks(ve|0,T|0,be|0,ye|0)|0;me=ks(ye|0,T|0,ge|0,me|0)|0;he=ks(me|0,T|0,pe|0,he|0)|0;ue=ks(he|0,T|0,de|0,ue|0)|0;fe=ks(ue|0,T|0,le|0,fe|0)|0;ae=ks(fe|0,T|0,ce|0,ae|0)|0;oe=ks(ae|0,T|0,se|0,oe|0)|0;s=ks(oe|0,T|0,a|0,s|0)|0;a=T;i=Ss(g|0,c|0,i&-67108864|0,0)|0;c=ks(n|0,r|0,16777216,0)|0;g=Rs(c|0,T|0,25)|0;u=ks(g|0,T|0,t|0,u|0)|0;t=T;c=Ss(n|0,r|0,c&-33554432|0,0)|0;r=ks(s|0,a|0,16777216,0)|0;n=Rs(r|0,T|0,25)|0;g=T;te=ks(ie|0,re|0,ne|0,te|0)|0;$=ks(te|0,T|0,ee|0,$|0)|0;J=ks($|0,T|0,Z|0,J|0)|0;Y=ks(J|0,T|0,X|0,Y|0)|0;Q=ks(Y|0,T|0,W|0,Q|0)|0;H=ks(Q|0,T|0,V|0,H|0)|0;K=ks(H|0,T|0,G|0,K|0)|0;q=ks(K|0,T|0,z|0,q|0)|0;L=ks(q|0,T|0,F|0,L|0)|0;g=ks(L|0,T|0,n|0,g|0)|0;n=T;r=Ss(s|0,a|0,r&-33554432|0,0)|0;a=ks(u|0,t|0,33554432,0)|0;s=Cs(a|0,T|0,26)|0;s=ks(U|0,l|0,s|0,T|0)|0;a=Ss(u|0,t|0,a&-67108864|0,0)|0;t=ks(g|0,n|0,33554432,0)|0;u=Rs(t|0,T|0,26)|0;l=T;D=ks(j|0,B|0,N|0,D|0)|0;P=ks(D|0,T|0,M|0,P|0)|0;C=ks(P|0,T|0,O|0,C|0)|0;x=ks(C|0,T|0,R|0,x|0)|0;S=ks(x|0,T|0,I|0,S|0)|0;E=ks(S|0,T|0,k|0,E|0)|0;w=ks(E|0,T|0,A|0,w|0)|0;v=ks(w|0,T|0,_|0,v|0)|0;y=ks(v|0,T|0,b|0,y|0)|0;l=ks(y|0,T|0,u|0,l|0)|0;u=T;t=Ss(g|0,n|0,t&-67108864|0,0)|0;n=ks(l|0,u|0,16777216,0)|0;g=Rs(n|0,T|0,25)|0;g=Es(g|0,T|0,19,0)|0;h=ks(g|0,T|0,d|0,h|0)|0;d=T;n=Ss(l|0,u|0,n&-33554432|0,0)|0;u=ks(h|0,d|0,33554432,0)|0;l=Cs(u|0,T|0,26)|0;l=ks(m|0,p|0,l|0,T|0)|0;u=Ss(h|0,d|0,u&-67108864|0,0)|0;o[e>>2]=u;o[e+4>>2]=l;o[e+8>>2]=f;o[e+12>>2]=c;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=t;o[e+36>>2]=n;return}function Jr(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0;v=o[t>>2]|0;b=o[t+4>>2]|0;g=o[t+8>>2]|0;p=o[t+12>>2]|0;d=o[t+16>>2]|0;u=o[t+20>>2]|0;l=o[t+24>>2]|0;c=o[t+28>>2]|0;s=o[t+32>>2]|0;n=o[t+36>>2]|0;v=(((((((((((((n*19|0)+16777216>>25)+v>>26)+b>>25)+g>>26)+p>>25)+d>>26)+u>>25)+l>>26)+c>>25)+s>>26)+n>>25)*19|0)+v|0;b=(v>>26)+b|0;g=(b>>25)+g|0;y=b&33554431;p=(g>>26)+p|0;m=g&67108863;d=(p>>25)+d|0;h=p&33554431;u=(d>>26)+u|0;l=(u>>25)+l|0;c=(l>>26)+c|0;f=l&67108863;s=(c>>25)+s|0;a=c&33554431;n=(s>>26)+n|0;i=s&67108863;t=n&33554431;r[e>>0]=v;r[e+1>>0]=v>>>8;r[e+2>>0]=v>>>16;r[e+3>>0]=y<<2|v>>>24&3;r[e+4>>0]=b>>>6;r[e+5>>0]=b>>>14;r[e+6>>0]=m<<3|y>>>22;r[e+7>>0]=g>>>5;r[e+8>>0]=g>>>13;r[e+9>>0]=h<<5|m>>>21;r[e+10>>0]=p>>>3;r[e+11>>0]=p>>>11;r[e+12>>0]=d<<6|h>>>19;r[e+13>>0]=d>>>2;r[e+14>>0]=d>>>10;r[e+15>>0]=d>>>18;r[e+16>>0]=u;r[e+17>>0]=u>>>8;r[e+18>>0]=u>>>16;r[e+19>>0]=f<<1|u>>>24&1;r[e+20>>0]=l>>>7;r[e+21>>0]=l>>>15;r[e+22>>0]=a<<3|f>>>23;r[e+23>>0]=c>>>5;r[e+24>>0]=c>>>13;r[e+25>>0]=i<<4|a>>>21;r[e+26>>0]=s>>>4;r[e+27>>0]=s>>>12;r[e+28>>0]=t<<6|i>>>20;r[e+29>>0]=n>>>2;r[e+30>>0]=n>>>10;r[e+31>>0]=t>>>18;return}function Zr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0,s=0;s=h;h=h+144|0;r=s+96|0;i=s+48|0;o=s;Yr(r,t);Yr(i,r);Yr(i,i);Xr(i,t,i);Xr(r,r,i);Yr(r,r);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);n=1;do{Yr(o,o);n=n+1|0}while((n|0)!=100);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(r,r);Yr(r,r);Xr(e,r,t);h=s;return}function $r(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Ne=0,Be=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;tt=o[t>>2]|0;je=o[t+4>>2]|0;v=o[t+8>>2]|0;re=o[t+12>>2]|0;_=o[t+16>>2]|0;rt=o[t+20>>2]|0;f=o[t+24>>2]|0;me=o[t+28>>2]|0;s=o[t+32>>2]|0;g=o[t+36>>2]|0;l=tt<<1;y=je<<1;Ye=v<<1;A=re<<1;Oe=_<<1;m=rt<<1;pe=f<<1;w=me<<1;We=rt*38|0;Ne=f*19|0;oe=me*38|0;Y=s*19|0;st=g*38|0;nt=((tt|0)<0)<<31>>31;nt=Es(tt|0,nt|0,tt|0,nt|0)|0;tt=T;u=((l|0)<0)<<31>>31;Ue=((je|0)<0)<<31>>31;Ve=Es(l|0,u|0,je|0,Ue|0)|0;He=T;p=((v|0)<0)<<31>>31;Fe=Es(v|0,p|0,l|0,u|0)|0;Le=T;ie=((re|0)<0)<<31>>31;Ce=Es(re|0,ie|0,l|0,u|0)|0;Re=T;r=((_|0)<0)<<31>>31;be=Es(_|0,r|0,l|0,u|0)|0;ye=T;it=((rt|0)<0)<<31>>31;ce=Es(rt|0,it|0,l|0,u|0)|0;ae=T;b=((f|0)<0)<<31>>31;Z=Es(f|0,b|0,l|0,u|0)|0;J=T;ge=((me|0)<0)<<31>>31;z=Es(me|0,ge|0,l|0,u|0)|0;q=T;a=((s|0)<0)<<31>>31;P=Es(s|0,a|0,l|0,u|0)|0;O=T;t=((g|0)<0)<<31>>31;u=Es(g|0,t|0,l|0,u|0)|0;l=T;n=((y|0)<0)<<31>>31;Ue=Es(y|0,n|0,je|0,Ue|0)|0;je=T;xe=Es(y|0,n|0,v|0,p|0)|0;Ie=T;i=((A|0)<0)<<31>>31;Ae=Es(A|0,i|0,y|0,n|0)|0;we=T;de=Es(_|0,r|0,y|0,n|0)|0;ue=T;E=((m|0)<0)<<31>>31;ee=Es(m|0,E|0,y|0,n|0)|0;$=T;G=Es(f|0,b|0,y|0,n|0)|0;K=T;c=((w|0)<0)<<31>>31;D=Es(w|0,c|0,y|0,n|0)|0;M=T;d=Es(s|0,a|0,y|0,n|0)|0;h=T;ot=((st|0)<0)<<31>>31;n=Es(st|0,ot|0,y|0,n|0)|0;y=T;_e=Es(v|0,p|0,v|0,p|0)|0;ve=T;Xe=((Ye|0)<0)<<31>>31;le=Es(Ye|0,Xe|0,re|0,ie|0)|0;fe=T;ne=Es(_|0,r|0,Ye|0,Xe|0)|0;te=T;W=Es(rt|0,it|0,Ye|0,Xe|0)|0;Q=T;F=Es(f|0,b|0,Ye|0,Xe|0)|0;L=T;S=Es(me|0,ge|0,Ye|0,Xe|0)|0;k=T;X=((Y|0)<0)<<31>>31;Xe=Es(Y|0,X|0,Ye|0,Xe|0)|0;Ye=T;p=Es(st|0,ot|0,v|0,p|0)|0;v=T;ie=Es(A|0,i|0,re|0,ie|0)|0;re=T;V=Es(A|0,i|0,_|0,r|0)|0;H=T;B=Es(m|0,E|0,A|0,i|0)|0;N=T;C=Es(f|0,b|0,A|0,i|0)|0;R=T;se=((oe|0)<0)<<31>>31;Ze=Es(oe|0,se|0,A|0,i|0)|0;Je=T;ze=Es(Y|0,X|0,A|0,i|0)|0;qe=T;i=Es(st|0,ot|0,A|0,i|0)|0;A=T;U=Es(_|0,r|0,_|0,r|0)|0;j=T;Pe=((Oe|0)<0)<<31>>31;x=Es(Oe|0,Pe|0,rt|0,it|0)|0;I=T;Be=((Ne|0)<0)<<31>>31;et=Es(Ne|0,Be|0,Oe|0,Pe|0)|0;$e=T;Ge=Es(oe|0,se|0,_|0,r|0)|0;Ke=T;Pe=Es(Y|0,X|0,Oe|0,Pe|0)|0;Oe=T;r=Es(st|0,ot|0,_|0,r|0)|0;_=T;it=Es(We|0,((We|0)<0)<<31>>31|0,rt|0,it|0)|0;rt=T;We=Es(Ne|0,Be|0,m|0,E|0)|0;Qe=T;De=Es(oe|0,se|0,m|0,E|0)|0;Me=T;ke=Es(Y|0,X|0,m|0,E|0)|0;Ee=T;E=Es(st|0,ot|0,m|0,E|0)|0;m=T;Be=Es(Ne|0,Be|0,f|0,b|0)|0;Ne=T;Te=Es(oe|0,se|0,f|0,b|0)|0;Se=T;pe=Es(Y|0,X|0,pe|0,((pe|0)<0)<<31>>31|0)|0;he=T;b=Es(st|0,ot|0,f|0,b|0)|0;f=T;ge=Es(oe|0,se|0,me|0,ge|0)|0;me=T;se=Es(Y|0,X|0,w|0,c|0)|0;oe=T;c=Es(st|0,ot|0,w|0,c|0)|0;w=T;X=Es(Y|0,X|0,s|0,a|0)|0;Y=T;a=Es(st|0,ot|0,s|0,a|0)|0;s=T;t=Es(st|0,ot|0,g|0,t|0)|0;g=T;tt=ks(it|0,rt|0,nt|0,tt|0)|0;$e=ks(tt|0,T|0,et|0,$e|0)|0;Je=ks($e|0,T|0,Ze|0,Je|0)|0;Ye=ks(Je|0,T|0,Xe|0,Ye|0)|0;y=ks(Ye|0,T|0,n|0,y|0)|0;n=T;He=ks(We|0,Qe|0,Ve|0,He|0)|0;Ke=ks(He|0,T|0,Ge|0,Ke|0)|0;qe=ks(Ke|0,T|0,ze|0,qe|0)|0;v=ks(qe|0,T|0,p|0,v|0)|0;p=T;je=ks(Fe|0,Le|0,Ue|0,je|0)|0;Ne=ks(je|0,T|0,Be|0,Ne|0)|0;Me=ks(Ne|0,T|0,De|0,Me|0)|0;Oe=ks(Me|0,T|0,Pe|0,Oe|0)|0;A=ks(Oe|0,T|0,i|0,A|0)|0;i=T;Ie=ks(Ce|0,Re|0,xe|0,Ie|0)|0;Se=ks(Ie|0,T|0,Te|0,Se|0)|0;Ee=ks(Se|0,T|0,ke|0,Ee|0)|0;_=ks(Ee|0,T|0,r|0,_|0)|0;r=T;ve=ks(Ae|0,we|0,_e|0,ve|0)|0;ye=ks(ve|0,T|0,be|0,ye|0)|0;me=ks(ye|0,T|0,ge|0,me|0)|0;he=ks(me|0,T|0,pe|0,he|0)|0;m=ks(he|0,T|0,E|0,m|0)|0;E=T;fe=ks(de|0,ue|0,le|0,fe|0)|0;ae=ks(fe|0,T|0,ce|0,ae|0)|0;oe=ks(ae|0,T|0,se|0,oe|0)|0;f=ks(oe|0,T|0,b|0,f|0)|0;b=T;te=ks(ie|0,re|0,ne|0,te|0)|0;$=ks(te|0,T|0,ee|0,$|0)|0;J=ks($|0,T|0,Z|0,J|0)|0;Y=ks(J|0,T|0,X|0,Y|0)|0;w=ks(Y|0,T|0,c|0,w|0)|0;c=T;H=ks(W|0,Q|0,V|0,H|0)|0;K=ks(H|0,T|0,G|0,K|0)|0;q=ks(K|0,T|0,z|0,q|0)|0;s=ks(q|0,T|0,a|0,s|0)|0;a=T;j=ks(F|0,L|0,U|0,j|0)|0;N=ks(j|0,T|0,B|0,N|0)|0;M=ks(N|0,T|0,D|0,M|0)|0;O=ks(M|0,T|0,P|0,O|0)|0;g=ks(O|0,T|0,t|0,g|0)|0;t=T;I=ks(C|0,R|0,x|0,I|0)|0;k=ks(I|0,T|0,S|0,k|0)|0;h=ks(k|0,T|0,d|0,h|0)|0;l=ks(h|0,T|0,u|0,l|0)|0;u=T;n=Os(y|0,n|0,1)|0;y=T;p=Os(v|0,p|0,1)|0;v=T;i=Os(A|0,i|0,1)|0;A=T;r=Os(_|0,r|0,1)|0;_=T;E=Os(m|0,E|0,1)|0;m=T;b=Os(f|0,b|0,1)|0;f=T;c=Os(w|0,c|0,1)|0;w=T;a=Os(s|0,a|0,1)|0;s=T;t=Os(g|0,t|0,1)|0;g=T;u=Os(l|0,u|0,1)|0;l=T;h=ks(n|0,y|0,33554432,0)|0;d=T;k=Rs(h|0,d|0,26)|0;v=ks(k|0,T|0,p|0,v|0)|0;p=T;d=Ss(n|0,y|0,h&-67108864|0,d|0)|0;h=T;y=ks(E|0,m|0,33554432,0)|0;n=T;k=Rs(y|0,n|0,26)|0;f=ks(k|0,T|0,b|0,f|0)|0;b=T;n=Ss(E|0,m|0,y&-67108864|0,n|0)|0;y=T;m=ks(v|0,p|0,16777216,0)|0;E=Rs(m|0,T|0,25)|0;A=ks(E|0,T|0,i|0,A|0)|0;i=T;m=Ss(v|0,p|0,m&-33554432|0,0)|0;p=T;v=ks(f|0,b|0,16777216,0)|0;E=Rs(v|0,T|0,25)|0;w=ks(E|0,T|0,c|0,w|0)|0;c=T;v=Ss(f|0,b|0,v&-33554432|0,0)|0;b=T;f=ks(A|0,i|0,33554432,0)|0;E=Rs(f|0,T|0,26)|0;_=ks(E|0,T|0,r|0,_|0)|0;r=T;f=Ss(A|0,i|0,f&-67108864|0,0)|0;i=ks(w|0,c|0,33554432,0)|0;A=Rs(i|0,T|0,26)|0;s=ks(A|0,T|0,a|0,s|0)|0;a=T;i=Ss(w|0,c|0,i&-67108864|0,0)|0;c=ks(_|0,r|0,16777216,0)|0;w=Rs(c|0,T|0,25)|0;y=ks(w|0,T|0,n|0,y|0)|0;n=T;c=Ss(_|0,r|0,c&-33554432|0,0)|0;r=ks(s|0,a|0,16777216,0)|0;_=Rs(r|0,T|0,25)|0;g=ks(_|0,T|0,t|0,g|0)|0;t=T;r=Ss(s|0,a|0,r&-33554432|0,0)|0;a=ks(y|0,n|0,33554432,0)|0;s=Cs(a|0,T|0,26)|0;s=ks(v|0,b|0,s|0,T|0)|0;a=Ss(y|0,n|0,a&-67108864|0,0)|0;n=ks(g|0,t|0,33554432,0)|0;y=Rs(n|0,T|0,26)|0;l=ks(y|0,T|0,u|0,l|0)|0;u=T;n=Ss(g|0,t|0,n&-67108864|0,0)|0;t=ks(l|0,u|0,16777216,0)|0;g=Rs(t|0,T|0,25)|0;g=Es(g|0,T|0,19,0)|0;h=ks(g|0,T|0,d|0,h|0)|0;d=T;t=Ss(l|0,u|0,t&-33554432|0,0)|0;u=ks(h|0,d|0,33554432,0)|0;l=Cs(u|0,T|0,26)|0;l=ks(m|0,p|0,l|0,T|0)|0;u=Ss(h|0,d|0,u&-67108864|0,0)|0;o[e>>2]=u;o[e+4>>2]=l;o[e+8>>2]=f;o[e+12>>2]=c;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=n;o[e+36>>2]=t;return}function ei(e){e=e|0;var t=0,n=0,i=0,o=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Ne=0,Be=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;de=e+1|0;fe=e+2|0;z=r[fe>>0]|0;Ae=s[e>>0]|0;P=Os(s[de>>0]|0|0,0,8)|0;ve=T;z=z&255;_e=Os(z|0,0,16)|0;ce=e+3|0;w=Os(s[ce>>0]|0|0,0,8)|0;te=T;ie=e+4|0;Z=Os(s[ie>>0]|0|0,0,16)|0;te=te|T;re=e+5|0;q=s[re>>0]|0;$=Os(q|0,0,24)|0;te=Cs(w|z|Z|$|0,te|T|0,5)|0;$=e+6|0;Z=e+7|0;z=r[Z>>0]|0;w=Os(s[$>>0]|0|0,0,8)|0;xe=T;z=z&255;J=Os(z|0,0,16)|0;xe=Cs(w|q|J|0,xe|T|0,2)|0;J=e+8|0;q=Os(s[J>>0]|0|0,0,8)|0;w=T;Q=e+9|0;Ie=Os(s[Q>>0]|0|0,0,16)|0;w=w|T;V=e+10|0;Ve=s[V>>0]|0;H=Os(Ve|0,0,24)|0;w=Cs(q|z|Ie|H|0,w|T|0,7)|0;H=e+11|0;Ie=Os(s[H>>0]|0|0,0,8)|0;z=T;q=e+12|0;N=Os(s[q>>0]|0|0,0,16)|0;z=z|T;F=e+13|0;A=s[F>>0]|0;B=Os(A|0,0,24)|0;z=Cs(Ie|Ve|N|B|0,z|T|0,4)|0;B=e+14|0;N=e+15|0;Ve=r[N>>0]|0;Ie=Os(s[B>>0]|0|0,0,8)|0;ye=T;Ve=Ve&255;D=Os(Ve|0,0,16)|0;ye=Cs(Ie|A|D|0,ye|T|0,1)|0;D=e+16|0;A=Os(s[D>>0]|0|0,0,8)|0;Ie=T;C=e+17|0;k=Os(s[C>>0]|0|0,0,16)|0;Ie=Ie|T;R=e+18|0;E=s[R>>0]|0;x=Os(E|0,0,24)|0;Ie=Cs(A|Ve|k|x|0,Ie|T|0,6)|0;x=e+19|0;k=e+20|0;Ve=r[k>>0]|0;A=Os(s[x>>0]|0|0,0,8)|0;Qe=T;Ve=Os(Ve&255|0,0,16)|0;Qe=Cs(A|E|Ve|0,Qe|T|0,3)|0;Ve=T;E=e+21|0;A=e+22|0;v=e+23|0;n=r[v>>0]|0;et=s[E>>0]|0;tt=Os(s[A>>0]|0|0,0,8)|0;Ze=T;n=n&255;$e=Os(n|0,0,16)|0;b=e+24|0;Ue=Os(s[b>>0]|0|0,0,8)|0;Ke=T;p=e+25|0;c=Os(s[p>>0]|0|0,0,16)|0;Ke=Ke|T;h=e+26|0;pe=s[h>>0]|0;f=Os(pe|0,0,24)|0;Ke=Cs(Ue|n|c|f|0,Ke|T|0,5)|0;f=e+27|0;c=e+28|0;n=r[c>>0]|0;Ue=Os(s[f>>0]|0|0,0,8)|0;Je=T;n=n&255;a=Os(n|0,0,16)|0;Je=Cs(Ue|pe|a|0,Je|T|0,2)|0;a=e+29|0;pe=Os(s[a>>0]|0|0,0,8)|0;Ue=T;o=e+30|0;ot=Os(s[o>>0]|0|0,0,16)|0;Ue=Ue|T;t=e+31|0;ne=s[t>>0]|0;l=Os(ne|0,0,24)|0;Ue=Cs(pe|n|ot|l|0,Ue|T|0,7)|0;l=Os(s[e+32>>0]|0|0,0,8)|0;ot=T;n=Os(s[e+33>>0]|0|0,0,16)|0;ot=ot|T;pe=s[e+34>>0]|0;g=Os(pe|0,0,24)|0;ot=Cs(l|ne|n|g|0,ot|T|0,4)|0;g=r[e+36>>0]|0;n=Os(s[e+35>>0]|0|0,0,8)|0;ne=T;g=g&255;l=Os(g|0,0,16)|0;ne=Cs(n|pe|l|0,ne|T|0,1)|0;l=Os(s[e+37>>0]|0|0,0,8)|0;pe=T;n=Os(s[e+38>>0]|0|0,0,16)|0;pe=pe|T;Fe=s[e+39>>0]|0;ee=Os(Fe|0,0,24)|0;pe=Cs(l|g|n|ee|0,pe|T|0,6)|0;ee=r[e+41>>0]|0;n=Os(s[e+40>>0]|0|0,0,8)|0;g=T;ee=Os(ee&255|0,0,16)|0;g=Cs(n|Fe|ee|0,g|T|0,3)|0;ee=T;Fe=r[e+44>>0]|0;n=s[e+42>>0]|0;l=Os(s[e+43>>0]|0|0,0,8)|0;j=T;Fe=Fe&255;y=Os(Fe|0,0,16)|0;S=Os(s[e+45>>0]|0|0,0,8)|0;oe=T;Oe=Os(s[e+46>>0]|0|0,0,16)|0;oe=oe|T;st=s[e+47>>0]|0;U=Os(st|0,0,24)|0;oe=Cs(S|Fe|Oe|U|0,oe|T|0,5)|0;U=r[e+49>>0]|0;Oe=Os(s[e+48>>0]|0|0,0,8)|0;Fe=T;U=U&255;S=Os(U|0,0,16)|0;Fe=Cs(Oe|st|S|0,Fe|T|0,2)|0;Fe=Fe&2097151;S=Os(s[e+50>>0]|0|0,0,8)|0;st=T;Oe=Os(s[e+51>>0]|0|0,0,16)|0;st=st|T;le=s[e+52>>0]|0;L=Os(le|0,0,24)|0;st=Cs(S|U|Oe|L|0,st|T|0,7)|0;st=st&2097151;L=Os(s[e+53>>0]|0|0,0,8)|0;Oe=T;U=Os(s[e+54>>0]|0|0,0,16)|0;Oe=Oe|T;S=s[e+55>>0]|0;W=Os(S|0,0,24)|0;Oe=Cs(L|le|U|W|0,Oe|T|0,4)|0;Oe=Oe&2097151;W=r[e+57>>0]|0;U=Os(s[e+56>>0]|0|0,0,8)|0;le=T;W=W&255;L=Os(W|0,0,16)|0;le=Cs(U|S|L|0,le|T|0,1)|0;le=le&2097151;L=Os(s[e+58>>0]|0|0,0,8)|0;S=T;U=Os(s[e+59>>0]|0|0,0,16)|0;S=S|T;he=s[e+60>>0]|0;ge=Os(he|0,0,24)|0;S=Cs(L|W|U|ge|0,S|T|0,6)|0;S=S&2097151;ge=Os(s[e+61>>0]|0|0,0,8)|0;U=T;W=Os(s[e+62>>0]|0|0,0,16)|0;U=U|T;L=Os(s[e+63>>0]|0|0,0,24)|0;U=Cs(ge|he|W|L|0,U|T|0,3)|0;L=T;W=Es(U|0,L|0,666643,0)|0;he=T;ge=Es(U|0,L|0,470296,0)|0;ae=T;_=Es(U|0,L|0,654183,0)|0;O=T;we=Es(U|0,L|0,-997805,-1)|0;Te=T;d=Es(U|0,L|0,136657,0)|0;Se=T;L=Es(U|0,L|0,-683901,-1)|0;j=ks(L|0,T|0,l|n|y&2031616|0,j|0)|0;y=T;n=Es(S|0,0,666643,0)|0;l=T;L=Es(S|0,0,470296,0)|0;U=T;Ye=Es(S|0,0,654183,0)|0;M=T;Y=Es(S|0,0,-997805,-1)|0;K=T;ke=Es(S|0,0,136657,0)|0;me=T;S=Es(S|0,0,-683901,-1)|0;G=T;Re=Es(le|0,0,666643,0)|0;Ee=T;se=Es(le|0,0,470296,0)|0;Le=T;Me=Es(le|0,0,654183,0)|0;Pe=T;nt=Es(le|0,0,-997805,-1)|0;We=T;u=Es(le|0,0,136657,0)|0;m=T;le=Es(le|0,0,-683901,-1)|0;pe=ks(le|0,T|0,pe&2097151|0,0)|0;me=ks(pe|0,T|0,ke|0,me|0)|0;Te=ks(me|0,T|0,we|0,Te|0)|0;we=T;me=Es(Oe|0,0,666643,0)|0;ke=T;pe=Es(Oe|0,0,470296,0)|0;le=T;be=Es(Oe|0,0,654183,0)|0;X=T;Ne=Es(Oe|0,0,-997805,-1)|0;De=T;it=Es(Oe|0,0,136657,0)|0;rt=T;Oe=Es(Oe|0,0,-683901,-1)|0;Ce=T;i=Es(st|0,0,666643,0)|0;I=T;Ge=Es(st|0,0,470296,0)|0;He=T;ze=Es(st|0,0,654183,0)|0;qe=T;Xe=Es(st|0,0,-997805,-1)|0;ue=T;je=Es(st|0,0,136657,0)|0;Be=T;st=Es(st|0,0,-683901,-1)|0;ot=ks(st|0,T|0,ot&2097151|0,0)|0;rt=ks(ot|0,T|0,it|0,rt|0)|0;We=ks(rt|0,T|0,nt|0,We|0)|0;M=ks(We|0,T|0,Ye|0,M|0)|0;ae=ks(M|0,T|0,ge|0,ae|0)|0;ge=T;M=Es(Fe|0,0,666643,0)|0;Ie=ks(M|0,T|0,Ie&2097151|0,0)|0;M=T;Ye=Es(Fe|0,0,470296,0)|0;We=T;nt=Es(Fe|0,0,654183,0)|0;Ze=ks(nt|0,T|0,tt|et|$e&2031616|0,Ze|0)|0;He=ks(Ze|0,T|0,Ge|0,He|0)|0;ke=ks(He|0,T|0,me|0,ke|0)|0;me=T;He=Es(Fe|0,0,-997805,-1)|0;Ge=T;Ze=Es(Fe|0,0,136657,0)|0;Je=ks(Ze|0,T|0,Je&2097151|0,0)|0;ue=ks(Je|0,T|0,Xe|0,ue|0)|0;X=ks(ue|0,T|0,be|0,X|0)|0;Le=ks(X|0,T|0,se|0,Le|0)|0;l=ks(Le|0,T|0,n|0,l|0)|0;n=T;Fe=Es(Fe|0,0,-683901,-1)|0;Le=T;se=ks(Ie|0,M|0,1048576,0)|0;X=T;be=Cs(se|0,X|0,21)|0;ue=T;Ve=ks(Ye|0,We|0,Qe|0,Ve|0)|0;ue=ks(Ve|0,T|0,be|0,ue|0)|0;I=ks(ue|0,T|0,i|0,I|0)|0;i=T;X=Ss(Ie|0,M|0,se&-2097152|0,X&2047|0)|0;se=T;M=ks(ke|0,me|0,1048576,0)|0;Ie=T;ue=Cs(M|0,Ie|0,21)|0;be=T;Ke=ks(He|0,Ge|0,Ke&2097151|0,0)|0;qe=ks(Ke|0,T|0,ze|0,qe|0)|0;le=ks(qe|0,T|0,pe|0,le|0)|0;Ee=ks(le|0,T|0,Re|0,Ee|0)|0;be=ks(Ee|0,T|0,ue|0,be|0)|0;ue=T;Ee=ks(l|0,n|0,1048576,0)|0;Re=T;le=Rs(Ee|0,Re|0,21)|0;pe=T;Ue=ks(Fe|0,Le|0,Ue&2097151|0,0)|0;Be=ks(Ue|0,T|0,je|0,Be|0)|0;De=ks(Be|0,T|0,Ne|0,De|0)|0;Pe=ks(De|0,T|0,Me|0,Pe|0)|0;U=ks(Pe|0,T|0,L|0,U|0)|0;he=ks(U|0,T|0,W|0,he|0)|0;pe=ks(he|0,T|0,le|0,pe|0)|0;le=T;he=ks(ae|0,ge|0,1048576,0)|0;W=T;U=Rs(he|0,W|0,21)|0;L=T;ne=ks(Oe|0,Ce|0,ne&2097151|0,0)|0;m=ks(ne|0,T|0,u|0,m|0)|0;K=ks(m|0,T|0,Y|0,K|0)|0;O=ks(K|0,T|0,_|0,O|0)|0;L=ks(O|0,T|0,U|0,L|0)|0;U=T;W=Ss(ae|0,ge|0,he&-2097152|0,W|0)|0;he=T;ge=ks(Te|0,we|0,1048576,0)|0;ae=T;O=Rs(ge|0,ae|0,21)|0;_=T;ee=ks(S|0,G|0,g|0,ee|0)|0;Se=ks(ee|0,T|0,d|0,Se|0)|0;_=ks(Se|0,T|0,O|0,_|0)|0;O=T;ae=Ss(Te|0,we|0,ge&-2097152|0,ae|0)|0;ge=T;we=ks(j|0,y|0,1048576,0)|0;Te=T;Se=Rs(we|0,Te|0,21)|0;oe=ks(Se|0,T|0,oe&2097151|0,0)|0;Se=T;Te=Ss(j|0,y|0,we&-2097152|0,Te|0)|0;we=T;y=ks(I|0,i|0,1048576,0)|0;j=T;d=Cs(y|0,j|0,21)|0;ee=T;j=Ss(I|0,i|0,y&-2097152|0,j|0)|0;y=T;i=ks(be|0,ue|0,1048576,0)|0;I=T;g=Rs(i|0,I|0,21)|0;G=T;I=Ss(be|0,ue|0,i&-2097152|0,I|0)|0;i=T;ue=ks(pe|0,le|0,1048576,0)|0;be=T;S=Rs(ue|0,be|0,21)|0;he=ks(S|0,T|0,W|0,he|0)|0;W=T;be=Ss(pe|0,le|0,ue&-2097152|0,be|0)|0;ue=T;le=ks(L|0,U|0,1048576,0)|0;pe=T;S=Rs(le|0,pe|0,21)|0;ge=ks(S|0,T|0,ae|0,ge|0)|0;ae=T;pe=Ss(L|0,U|0,le&-2097152|0,pe|0)|0;le=T;U=ks(_|0,O|0,1048576,0)|0;L=T;S=Rs(U|0,L|0,21)|0;we=ks(S|0,T|0,Te|0,we|0)|0;Te=T;L=Ss(_|0,O|0,U&-2097152|0,L|0)|0;U=T;O=Es(oe|0,Se|0,666643,0)|0;ye=ks(O|0,T|0,ye&2097151|0,0)|0;O=T;_=Es(oe|0,Se|0,470296,0)|0;_=ks(X|0,se|0,_|0,T|0)|0;se=T;X=Es(oe|0,Se|0,654183,0)|0;X=ks(j|0,y|0,X|0,T|0)|0;y=T;j=Es(oe|0,Se|0,-997805,-1)|0;S=T;K=Es(oe|0,Se|0,136657,0)|0;K=ks(I|0,i|0,K|0,T|0)|0;i=T;Se=Es(oe|0,Se|0,-683901,-1)|0;oe=T;G=ks(l|0,n|0,g|0,G|0)|0;Re=Ss(G|0,T|0,Ee&-2097152|0,Re|0)|0;oe=ks(Re|0,T|0,Se|0,oe|0)|0;Se=T;Re=Es(we|0,Te|0,666643,0)|0;z=ks(Re|0,T|0,z&2097151|0,0)|0;Re=T;Ee=Es(we|0,Te|0,470296,0)|0;Ee=ks(ye|0,O|0,Ee|0,T|0)|0;O=T;ye=Es(we|0,Te|0,654183,0)|0;ye=ks(_|0,se|0,ye|0,T|0)|0;se=T;_=Es(we|0,Te|0,-997805,-1)|0;_=ks(X|0,y|0,_|0,T|0)|0;y=T;X=Es(we|0,Te|0,136657,0)|0;G=T;Te=Es(we|0,Te|0,-683901,-1)|0;Te=ks(K|0,i|0,Te|0,T|0)|0;i=T;K=Es(L|0,U|0,666643,0)|0;w=ks(K|0,T|0,w&2097151|0,0)|0;K=T;we=Es(L|0,U|0,470296,0)|0;we=ks(z|0,Re|0,we|0,T|0)|0;Re=T;z=Es(L|0,U|0,654183,0)|0;z=ks(Ee|0,O|0,z|0,T|0)|0;O=T;Ee=Es(L|0,U|0,-997805,-1)|0;Ee=ks(ye|0,se|0,Ee|0,T|0)|0;se=T;ye=Es(L|0,U|0,136657,0)|0;ye=ks(_|0,y|0,ye|0,T|0)|0;y=T;U=Es(L|0,U|0,-683901,-1)|0;L=T;ee=ks(ke|0,me|0,d|0,ee|0)|0;Ie=Ss(ee|0,T|0,M&-2097152|0,Ie|0)|0;S=ks(Ie|0,T|0,j|0,S|0)|0;G=ks(S|0,T|0,X|0,G|0)|0;L=ks(G|0,T|0,U|0,L|0)|0;U=T;G=Es(ge|0,ae|0,666643,0)|0;X=T;S=Es(ge|0,ae|0,470296,0)|0;j=T;Ie=Es(ge|0,ae|0,654183,0)|0;M=T;ee=Es(ge|0,ae|0,-997805,-1)|0;d=T;me=Es(ge|0,ae|0,136657,0)|0;me=ks(Ee|0,se|0,me|0,T|0)|0;se=T;ae=Es(ge|0,ae|0,-683901,-1)|0;ae=ks(ye|0,y|0,ae|0,T|0)|0;y=T;ye=Es(pe|0,le|0,666643,0)|0;ge=T;Ee=Es(pe|0,le|0,470296,0)|0;ke=T;_=Es(pe|0,le|0,654183,0)|0;g=T;n=Es(pe|0,le|0,-997805,-1)|0;l=T;I=Es(pe|0,le|0,136657,0)|0;Y=T;le=Es(pe|0,le|0,-683901,-1)|0;le=ks(me|0,se|0,le|0,T|0)|0;se=T;me=Es(he|0,W|0,666643,0)|0;ve=ks(me|0,T|0,P|Ae|_e&2031616|0,ve|0)|0;_e=T;Ae=Es(he|0,W|0,470296,0)|0;P=T;me=Es(he|0,W|0,654183,0)|0;xe=ks(me|0,T|0,xe&2097151|0,0)|0;X=ks(xe|0,T|0,G|0,X|0)|0;ke=ks(X|0,T|0,Ee|0,ke|0)|0;Ee=T;X=Es(he|0,W|0,-997805,-1)|0;G=T;xe=Es(he|0,W|0,136657,0)|0;xe=ks(we|0,Re|0,xe|0,T|0)|0;M=ks(xe|0,T|0,Ie|0,M|0)|0;l=ks(M|0,T|0,n|0,l|0)|0;n=T;W=Es(he|0,W|0,-683901,-1)|0;he=T;M=ks(ve|0,_e|0,1048576,0)|0;Ie=T;xe=Rs(M|0,Ie|0,21)|0;Re=T;te=ks(Ae|0,P|0,te&2097151|0,0)|0;ge=ks(te|0,T|0,ye|0,ge|0)|0;Re=ks(ge|0,T|0,xe|0,Re|0)|0;xe=T;Ie=Ss(ve|0,_e|0,M&-2097152|0,Ie|0)|0;M=T;_e=ks(ke|0,Ee|0,1048576,0)|0;ve=T;ge=Rs(_e|0,ve|0,21)|0;ye=T;G=ks(w|0,K|0,X|0,G|0)|0;j=ks(G|0,T|0,S|0,j|0)|0;g=ks(j|0,T|0,_|0,g|0)|0;ye=ks(g|0,T|0,ge|0,ye|0)|0;ge=T;g=ks(l|0,n|0,1048576,0)|0;_=T;j=Rs(g|0,_|0,21)|0;S=T;he=ks(z|0,O|0,W|0,he|0)|0;d=ks(he|0,T|0,ee|0,d|0)|0;Y=ks(d|0,T|0,I|0,Y|0)|0;S=ks(Y|0,T|0,j|0,S|0)|0;j=T;Y=ks(le|0,se|0,1048576,0)|0;I=T;d=Rs(Y|0,I|0,21)|0;d=ks(ae|0,y|0,d|0,T|0)|0;y=T;I=Ss(le|0,se|0,Y&-2097152|0,I|0)|0;Y=T;se=ks(L|0,U|0,1048576,0)|0;le=T;ae=Rs(se|0,le|0,21)|0;ae=ks(Te|0,i|0,ae|0,T|0)|0;i=T;le=Ss(L|0,U|0,se&-2097152|0,le|0)|0;se=T;U=ks(oe|0,Se|0,1048576,0)|0;L=T;Te=Rs(U|0,L|0,21)|0;Te=ks(be|0,ue|0,Te|0,T|0)|0;ue=T;L=Ss(oe|0,Se|0,U&-2097152|0,L|0)|0;U=T;Se=ks(Re|0,xe|0,1048576,0)|0;oe=T;be=Rs(Se|0,oe|0,21)|0;ee=T;he=ks(ye|0,ge|0,1048576,0)|0;W=T;O=Rs(he|0,W|0,21)|0;z=T;G=ks(S|0,j|0,1048576,0)|0;X=T;K=Rs(G|0,X|0,21)|0;K=ks(I|0,Y|0,K|0,T|0)|0;Y=T;I=ks(d|0,y|0,1048576,0)|0;w=T;te=Rs(I|0,w|0,21)|0;te=ks(le|0,se|0,te|0,T|0)|0;se=T;w=Ss(d|0,y|0,I&-2097152|0,w|0)|0;I=T;y=ks(ae|0,i|0,1048576,0)|0;d=T;le=Rs(y|0,d|0,21)|0;le=ks(L|0,U|0,le|0,T|0)|0;U=T;d=Ss(ae|0,i|0,y&-2097152|0,d|0)|0;y=T;i=ks(Te|0,ue|0,1048576,0)|0;ae=T;L=Rs(i|0,ae|0,21)|0;P=T;ae=Ss(Te|0,ue|0,i&-2097152|0,ae|0)|0;i=T;ue=Es(L|0,P|0,666643,0)|0;ue=ks(Ie|0,M|0,ue|0,T|0)|0;M=T;Ie=Es(L|0,P|0,470296,0)|0;Te=T;Ae=Es(L|0,P|0,654183,0)|0;we=T;me=Es(L|0,P|0,-997805,-1)|0;pe=T;m=Es(L|0,P|0,136657,0)|0;u=T;P=Es(L|0,P|0,-683901,-1)|0;L=T;M=Rs(ue|0,M|0,21)|0;ne=T;Te=ks(Re|0,xe|0,Ie|0,Te|0)|0;oe=Ss(Te|0,T|0,Se&-2097152|0,oe|0)|0;ne=ks(oe|0,T|0,M|0,ne|0)|0;M=Rs(ne|0,T|0,21)|0;oe=T;we=ks(ke|0,Ee|0,Ae|0,we|0)|0;ve=Ss(we|0,T|0,_e&-2097152|0,ve|0)|0;ee=ks(ve|0,T|0,be|0,ee|0)|0;oe=ks(ee|0,T|0,M|0,oe|0)|0;M=Rs(oe|0,T|0,21)|0;ee=T;pe=ks(ye|0,ge|0,me|0,pe|0)|0;W=Ss(pe|0,T|0,he&-2097152|0,W|0)|0;ee=ks(W|0,T|0,M|0,ee|0)|0;M=Rs(ee|0,T|0,21)|0;W=T;u=ks(l|0,n|0,m|0,u|0)|0;_=Ss(u|0,T|0,g&-2097152|0,_|0)|0;z=ks(_|0,T|0,O|0,z|0)|0;W=ks(z|0,T|0,M|0,W|0)|0;M=Rs(W|0,T|0,21)|0;z=T;L=ks(S|0,j|0,P|0,L|0)|0;X=Ss(L|0,T|0,G&-2097152|0,X|0)|0;z=ks(X|0,T|0,M|0,z|0)|0;M=Rs(z|0,T|0,21)|0;M=ks(K|0,Y|0,M|0,T|0)|0;Y=Rs(M|0,T|0,21)|0;I=ks(Y|0,T|0,w|0,I|0)|0;w=Rs(I|0,T|0,21)|0;w=ks(te|0,se|0,w|0,T|0)|0;se=Rs(w|0,T|0,21)|0;y=ks(se|0,T|0,d|0,y|0)|0;d=Rs(y|0,T|0,21)|0;d=ks(le|0,U|0,d|0,T|0)|0;U=Rs(d|0,T|0,21)|0;i=ks(U|0,T|0,ae|0,i|0)|0;ae=Rs(i|0,T|0,21)|0;U=T;le=Es(ae|0,U|0,666643,0)|0;ue=ks(le|0,T|0,ue&2097151|0,0)|0;le=T;se=Es(ae|0,U|0,470296,0)|0;ne=ks(se|0,T|0,ne&2097151|0,0)|0;se=T;te=Es(ae|0,U|0,654183,0)|0;oe=ks(te|0,T|0,oe&2097151|0,0)|0;te=T;Y=Es(ae|0,U|0,-997805,-1)|0;ee=ks(Y|0,T|0,ee&2097151|0,0)|0;Y=T;K=Es(ae|0,U|0,136657,0)|0;W=ks(K|0,T|0,W&2097151|0,0)|0;K=T;U=Es(ae|0,U|0,-683901,-1)|0;z=ks(U|0,T|0,z&2097151|0,0)|0;U=T;ae=Rs(ue|0,le|0,21)|0;ae=ks(ne|0,se|0,ae|0,T|0)|0;se=T;ne=Rs(ae|0,se|0,21)|0;ne=ks(oe|0,te|0,ne|0,T|0)|0;te=T;oe=ae&2097151;X=Rs(ne|0,te|0,21)|0;X=ks(ee|0,Y|0,X|0,T|0)|0;Y=T;ee=ne&2097151;G=Rs(X|0,Y|0,21)|0;G=ks(W|0,K|0,G|0,T|0)|0;K=T;W=X&2097151;L=Rs(G|0,K|0,21)|0;L=ks(z|0,U|0,L|0,T|0)|0;U=T;z=G&2097151;P=Rs(L|0,U|0,21)|0;M=ks(P|0,T|0,M&2097151|0,0)|0;P=T;j=L&2097151;S=Rs(M|0,P|0,21)|0;I=ks(S|0,T|0,I&2097151|0,0)|0;S=T;O=M&2097151;_=Rs(I|0,S|0,21)|0;w=ks(_|0,T|0,w&2097151|0,0)|0;_=T;g=Rs(w|0,_|0,21)|0;y=ks(g|0,T|0,y&2097151|0,0)|0;g=T;u=Rs(y|0,g|0,21)|0;d=ks(u|0,T|0,d&2097151|0,0)|0;u=T;m=y&2097151;n=Rs(d|0,u|0,21)|0;i=ks(n|0,T|0,i&2097151|0,0)|0;n=T;l=d&2097151;r[e>>0]=ue;e=Cs(ue|0,le|0,8)|0;r[de>>0]=e;e=Cs(ue|0,le|0,16)|0;le=Os(oe|0,0,5)|0;r[fe>>0]=le|e&31;e=Cs(ae|0,se|0,3)|0;r[ce>>0]=e;e=Cs(ae|0,se|0,11)|0;r[ie>>0]=e;e=Cs(oe|0,0,19)|0;oe=T;ie=Os(ee|0,0,2)|0;r[re>>0]=ie|e;e=Cs(ne|0,te|0,6)|0;r[$>>0]=e;e=Cs(ee|0,0,14)|0;ee=T;$=Os(W|0,0,7)|0;r[Z>>0]=$|e;e=Cs(X|0,Y|0,1)|0;r[J>>0]=e;e=Cs(X|0,Y|0,9)|0;r[Q>>0]=e;e=Cs(W|0,0,17)|0;W=T;Q=Os(z|0,0,4)|0;r[V>>0]=Q|e;e=Cs(G|0,K|0,4)|0;r[H>>0]=e;e=Cs(G|0,K|0,12)|0;r[q>>0]=e;e=Cs(z|0,0,20)|0;z=T;q=Os(j|0,0,1)|0;r[F>>0]=q|e;e=Cs(L|0,U|0,7)|0;r[B>>0]=e;e=Cs(j|0,0,15)|0;j=T;B=Os(O|0,0,6)|0;r[N>>0]=B|e;e=Cs(M|0,P|0,2)|0;r[D>>0]=e;e=Cs(M|0,P|0,10)|0;r[C>>0]=e;e=Cs(O|0,0,18)|0;O=T;C=Os(I|0,S|0,3)|0;r[R>>0]=C|e;e=Cs(I|0,S|0,5)|0;r[x>>0]=e;e=Cs(I|0,S|0,13)|0;r[k>>0]=e;r[E>>0]=w;e=Cs(w|0,_|0,8)|0;r[A>>0]=e;e=Cs(w|0,_|0,16)|0;_=Os(m|0,0,5)|0;r[v>>0]=_|e&31;e=Cs(y|0,g|0,3)|0;r[b>>0]=e;e=Cs(y|0,g|0,11)|0;r[p>>0]=e;e=Cs(m|0,0,19)|0;m=T;p=Os(l|0,0,2)|0;r[h>>0]=p|e;e=Cs(d|0,u|0,6)|0;r[f>>0]=e;e=Cs(l|0,0,14)|0;l=T;f=Os(i|0,n|0,7)|0;r[c>>0]=f|e;e=Cs(i|0,n|0,1)|0;r[a>>0]=e;e=Cs(i|0,n|0,9)|0;r[o>>0]=e;e=Rs(i|0,n|0,17)|0;r[t>>0]=e;return}function ti(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var o=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Ne=0,Be=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ct=0,ft=0,lt=0,ut=0,dt=0,ht=0,pt=0,mt=0,gt=0,yt=0,bt=0,vt=0,_t=0,wt=0,At=0,Et=0,kt=0,St=0,Tt=0,It=0,xt=0,Rt=0,Ct=0,Ot=0,Pt=0,Mt=0,Dt=0,Nt=0,Bt=0,jt=0,Ut=0,Lt=0,Ft=0,qt=0,zt=0,Kt=0,Gt=0,Ht=0,Vt=0,Qt=0,Wt=0,Yt=0,Xt=0,Jt=0,Zt=0,$t=0,en=0,tn=0,nn=0,rn=0,on=0,sn=0,an=0,cn=0,fn=0,ln=0,un=0,dn=0,hn=0,pn=0,mn=0,gn=0,yn=0,bn=0,vn=0,_n=0,wn=0,An=0;ot=r[t+2>>0]|0;pe=s[t>>0]|0;pt=Os(s[t+1>>0]|0|0,0,8)|0;Ue=T;ot=ot&255;Le=Os(ot|0,0,16)|0;Le=pt|pe|Le&2031616;pe=Os(s[t+3>>0]|0|0,0,8)|0;pt=T;$e=Os(s[t+4>>0]|0|0,0,16)|0;pt=pt|T;ht=s[t+5>>0]|0;L=Os(ht|0,0,24)|0;pt=Cs(pe|ot|$e|L|0,pt|T|0,5)|0;pt=pt&2097151;L=r[t+7>>0]|0;$e=Os(s[t+6>>0]|0|0,0,8)|0;ot=T;L=L&255;pe=Os(L|0,0,16)|0;ot=Cs($e|ht|pe|0,ot|T|0,2)|0;ot=ot&2097151;pe=Os(s[t+8>>0]|0|0,0,8)|0;ht=T;$e=Os(s[t+9>>0]|0|0,0,16)|0;ht=ht|T;G=s[t+10>>0]|0;N=Os(G|0,0,24)|0;ht=Cs(pe|L|$e|N|0,ht|T|0,7)|0;ht=ht&2097151;N=Os(s[t+11>>0]|0|0,0,8)|0;$e=T;L=Os(s[t+12>>0]|0|0,0,16)|0;$e=$e|T;pe=s[t+13>>0]|0;m=Os(pe|0,0,24)|0;$e=Cs(N|G|L|m|0,$e|T|0,4)|0;$e=$e&2097151;m=r[t+15>>0]|0;L=Os(s[t+14>>0]|0|0,0,8)|0;G=T;m=m&255;N=Os(m|0,0,16)|0;G=Cs(L|pe|N|0,G|T|0,1)|0;G=G&2097151;N=Os(s[t+16>>0]|0|0,0,8)|0;pe=T;L=Os(s[t+17>>0]|0|0,0,16)|0;pe=pe|T;B=s[t+18>>0]|0;u=Os(B|0,0,24)|0;pe=Cs(N|m|L|u|0,pe|T|0,6)|0;pe=pe&2097151;u=r[t+20>>0]|0;L=Os(s[t+19>>0]|0|0,0,8)|0;m=T;u=Os(u&255|0,0,16)|0;m=Cs(L|B|u|0,m|T|0,3)|0;u=T;B=r[t+23>>0]|0;L=s[t+21>>0]|0;N=Os(s[t+22>>0]|0|0,0,8)|0;K=T;B=B&255;C=Os(B|0,0,16)|0;C=N|L|C&2031616;L=Os(s[t+24>>0]|0|0,0,8)|0;N=T;Je=Os(s[t+25>>0]|0|0,0,16)|0;N=N|T;ge=s[t+26>>0]|0;E=Os(ge|0,0,24)|0;N=Cs(L|B|Je|E|0,N|T|0,5)|0;N=N&2097151;E=r[t+28>>0]|0;Je=Os(s[t+27>>0]|0|0,0,8)|0;B=T;E=E&255;L=Os(E|0,0,16)|0;B=Cs(Je|ge|L|0,B|T|0,2)|0;B=B&2097151;L=Os(s[t+29>>0]|0|0,0,8)|0;ge=T;Je=Os(s[t+30>>0]|0|0,0,16)|0;ge=ge|T;ye=Os(s[t+31>>0]|0|0,0,24)|0;ge=Cs(L|E|Je|ye|0,ge|T|0,7)|0;ye=T;Je=r[n+2>>0]|0;E=s[n>>0]|0;L=Os(s[n+1>>0]|0|0,0,8)|0;Et=T;Je=Je&255;At=Os(Je|0,0,16)|0;At=L|E|At&2031616;E=Os(s[n+3>>0]|0|0,0,8)|0;L=T;l=Os(s[n+4>>0]|0|0,0,16)|0;L=L|T;b=s[n+5>>0]|0;bn=Os(b|0,0,24)|0;L=Cs(E|Je|l|bn|0,L|T|0,5)|0;L=L&2097151;bn=r[n+7>>0]|0;l=Os(s[n+6>>0]|0|0,0,8)|0;Je=T;bn=bn&255;E=Os(bn|0,0,16)|0;Je=Cs(l|b|E|0,Je|T|0,2)|0;Je=Je&2097151;E=Os(s[n+8>>0]|0|0,0,8)|0;b=T;l=Os(s[n+9>>0]|0|0,0,16)|0;b=b|T;d=s[n+10>>0]|0;A=Os(d|0,0,24)|0;b=Cs(E|bn|l|A|0,b|T|0,7)|0;b=b&2097151;A=Os(s[n+11>>0]|0|0,0,8)|0;l=T;bn=Os(s[n+12>>0]|0|0,0,16)|0;l=l|T;E=s[n+13>>0]|0;An=Os(E|0,0,24)|0;l=Cs(A|d|bn|An|0,l|T|0,4)|0;l=l&2097151;An=r[n+15>>0]|0;bn=Os(s[n+14>>0]|0|0,0,8)|0;d=T;An=An&255;A=Os(An|0,0,16)|0;d=Cs(bn|E|A|0,d|T|0,1)|0;d=d&2097151;A=Os(s[n+16>>0]|0|0,0,8)|0;E=T;bn=Os(s[n+17>>0]|0|0,0,16)|0;E=E|T;_t=s[n+18>>0]|0;Z=Os(_t|0,0,24)|0;E=Cs(A|An|bn|Z|0,E|T|0,6)|0;E=E&2097151;Z=r[n+20>>0]|0;bn=Os(s[n+19>>0]|0|0,0,8)|0;An=T;Z=Os(Z&255|0,0,16)|0;An=Cs(bn|_t|Z|0,An|T|0,3)|0;Z=T;_t=r[n+23>>0]|0;bn=s[n+21>>0]|0;A=Os(s[n+22>>0]|0|0,0,8)|0;ke=T;_t=_t&255;Se=Os(_t|0,0,16)|0;Se=A|bn|Se&2031616;bn=Os(s[n+24>>0]|0|0,0,8)|0;A=T;Me=Os(s[n+25>>0]|0|0,0,16)|0;A=A|T;Q=s[n+26>>0]|0;vn=Os(Q|0,0,24)|0;A=Cs(bn|_t|Me|vn|0,A|T|0,5)|0;A=A&2097151;vn=r[n+28>>0]|0;Me=Os(s[n+27>>0]|0|0,0,8)|0;_t=T;vn=vn&255;bn=Os(vn|0,0,16)|0;_t=Cs(Me|Q|bn|0,_t|T|0,2)|0;_t=_t&2097151;bn=Os(s[n+29>>0]|0|0,0,8)|0;Q=T;Me=Os(s[n+30>>0]|0|0,0,16)|0;Q=Q|T;V=Os(s[n+31>>0]|0|0,0,24)|0;Q=Cs(bn|vn|Me|V|0,Q|T|0,7)|0;V=T;Me=r[i+2>>0]|0;vn=s[i>>0]|0;bn=Os(s[i+1>>0]|0|0,0,8)|0;Re=T;Me=Me&255;_n=Os(Me|0,0,16)|0;Ge=Os(s[i+3>>0]|0|0,0,8)|0;ve=T;Ie=Os(s[i+4>>0]|0|0,0,16)|0;ve=ve|T;Ee=s[i+5>>0]|0;g=Os(Ee|0,0,24)|0;ve=Cs(Ge|Me|Ie|g|0,ve|T|0,5)|0;g=r[i+7>>0]|0;Ie=Os(s[i+6>>0]|0|0,0,8)|0;Me=T;g=g&255;Ge=Os(g|0,0,16)|0;Me=Cs(Ie|Ee|Ge|0,Me|T|0,2)|0;Ge=Os(s[i+8>>0]|0|0,0,8)|0;Ee=T;Ie=Os(s[i+9>>0]|0|0,0,16)|0;Ee=Ee|T;De=s[i+10>>0]|0;_e=Os(De|0,0,24)|0;Ee=Cs(Ge|g|Ie|_e|0,Ee|T|0,7)|0;_e=Os(s[i+11>>0]|0|0,0,8)|0;Ie=T;g=Os(s[i+12>>0]|0|0,0,16)|0;Ie=Ie|T;Ge=s[i+13>>0]|0;ue=Os(Ge|0,0,24)|0;Ie=Cs(_e|De|g|ue|0,Ie|T|0,4)|0;ue=r[i+15>>0]|0;g=Os(s[i+14>>0]|0|0,0,8)|0;De=T;ue=ue&255;_e=Os(ue|0,0,16)|0;De=Cs(g|Ge|_e|0,De|T|0,1)|0;_e=Os(s[i+16>>0]|0|0,0,8)|0;Ge=T;g=Os(s[i+17>>0]|0|0,0,16)|0;Ge=Ge|T;te=s[i+18>>0]|0;le=Os(te|0,0,24)|0;Ge=Cs(_e|ue|g|le|0,Ge|T|0,6)|0;le=r[i+20>>0]|0;g=Os(s[i+19>>0]|0|0,0,8)|0;ue=T;le=Os(le&255|0,0,16)|0;ue=Cs(g|te|le|0,ue|T|0,3)|0;le=T;te=r[i+23>>0]|0;g=s[i+21>>0]|0;_e=Os(s[i+22>>0]|0|0,0,8)|0;X=T;te=te&255;J=Os(te|0,0,16)|0;R=Os(s[i+24>>0]|0|0,0,8)|0;we=T;xe=Os(s[i+25>>0]|0|0,0,16)|0;we=we|T;rt=s[i+26>>0]|0;j=Os(rt|0,0,24)|0;we=Cs(R|te|xe|j|0,we|T|0,5)|0;j=r[i+28>>0]|0;xe=Os(s[i+27>>0]|0|0,0,8)|0;te=T;j=j&255;R=Os(j|0,0,16)|0;te=Cs(xe|rt|R|0,te|T|0,2)|0;R=Os(s[i+29>>0]|0|0,0,8)|0;rt=T;xe=Os(s[i+30>>0]|0|0,0,16)|0;rt=rt|T;ft=Os(s[i+31>>0]|0|0,0,24)|0;rt=Cs(R|j|xe|ft|0,rt|T|0,7)|0;ft=T;xe=Es(At|0,Et|0,Le|0,Ue|0)|0;xe=ks(bn|vn|_n&2031616|0,Re|0,xe|0,T|0)|0;Re=T;_n=Es(L|0,0,Le|0,Ue|0)|0;vn=T;bn=Es(At|0,Et|0,pt|0,0)|0;j=T;R=Es(Je|0,0,Le|0,Ue|0)|0;Pe=T;re=Es(L|0,0,pt|0,0)|0;hn=T;Ae=Es(At|0,Et|0,ot|0,0)|0;Ae=ks(re|0,hn|0,Ae|0,T|0)|0;Pe=ks(Ae|0,T|0,R|0,Pe|0)|0;Me=ks(Pe|0,T|0,Me&2097151|0,0)|0;Pe=T;R=Es(b|0,0,Le|0,Ue|0)|0;Ae=T;hn=Es(Je|0,0,pt|0,0)|0;re=T;yn=Es(L|0,0,ot|0,0)|0;gn=T;mn=Es(At|0,Et|0,ht|0,0)|0;pn=T;H=Es(l|0,0,Le|0,Ue|0)|0;Te=T;rn=Es(b|0,0,pt|0,0)|0;Ne=T;sn=Es(Je|0,0,ot|0,0)|0;x=T;an=Es(L|0,0,ht|0,0)|0;cn=T;on=Es(At|0,Et|0,$e|0,0)|0;on=ks(an|0,cn|0,on|0,T|0)|0;x=ks(on|0,T|0,sn|0,x|0)|0;Ne=ks(x|0,T|0,rn|0,Ne|0)|0;Te=ks(Ne|0,T|0,H|0,Te|0)|0;Ie=ks(Te|0,T|0,Ie&2097151|0,0)|0;Te=T;H=Es(d|0,0,Le|0,Ue|0)|0;Ne=T;rn=Es(l|0,0,pt|0,0)|0;x=T;sn=Es(b|0,0,ot|0,0)|0;on=T;cn=Es(Je|0,0,ht|0,0)|0;an=T;dn=Es(L|0,0,$e|0,0)|0;un=T;ln=Es(At|0,Et|0,G|0,0)|0;fn=T;I=Es(E|0,0,Le|0,Ue|0)|0;He=T;Gt=Es(d|0,0,pt|0,0)|0;o=T;Vt=Es(l|0,0,ot|0,0)|0;Kt=T;Wt=Es(b|0,0,ht|0,0)|0;Ht=T;Xt=Es(Je|0,0,$e|0,0)|0;Qt=T;Jt=Es(L|0,0,G|0,0)|0;Zt=T;Yt=Es(At|0,Et|0,pe|0,0)|0;Yt=ks(Jt|0,Zt|0,Yt|0,T|0)|0;Qt=ks(Yt|0,T|0,Xt|0,Qt|0)|0;Ht=ks(Qt|0,T|0,Wt|0,Ht|0)|0;Kt=ks(Ht|0,T|0,Vt|0,Kt|0)|0;o=ks(Kt|0,T|0,Gt|0,o|0)|0;He=ks(o|0,T|0,I|0,He|0)|0;Ge=ks(He|0,T|0,Ge&2097151|0,0)|0;He=T;I=Es(An|0,Z|0,Le|0,Ue|0)|0;o=T;Gt=Es(E|0,0,pt|0,0)|0;Kt=T;Vt=Es(d|0,0,ot|0,0)|0;Ht=T;Wt=Es(l|0,0,ht|0,0)|0;Qt=T;Xt=Es(b|0,0,$e|0,0)|0;Yt=T;Zt=Es(Je|0,0,G|0,0)|0;Jt=T;nn=Es(L|0,0,pe|0,0)|0;tn=T;en=Es(At|0,Et|0,m|0,u|0)|0;$t=T;ee=Es(Se|0,ke|0,Le|0,Ue|0)|0;Tt=T;It=Es(An|0,Z|0,pt|0,0)|0;xt=T;Rt=Es(E|0,0,ot|0,0)|0;Ct=T;Ot=Es(d|0,0,ht|0,0)|0;Pt=T;Mt=Es(l|0,0,$e|0,0)|0;Dt=T;Nt=Es(b|0,0,G|0,0)|0;Bt=T;jt=Es(Je|0,0,pe|0,0)|0;Ut=T;Ft=Es(L|0,0,m|0,u|0)|0;qt=T;zt=Es(At|0,Et|0,C|0,K|0)|0;zt=ks(Ft|0,qt|0,zt|0,T|0)|0;Ut=ks(zt|0,T|0,jt|0,Ut|0)|0;Bt=ks(Ut|0,T|0,Nt|0,Bt|0)|0;Dt=ks(Bt|0,T|0,Mt|0,Dt|0)|0;Pt=ks(Dt|0,T|0,Ot|0,Pt|0)|0;Ct=ks(Pt|0,T|0,Rt|0,Ct|0)|0;xt=ks(Ct|0,T|0,It|0,xt|0)|0;Tt=ks(xt|0,T|0,ee|0,Tt|0)|0;X=ks(Tt|0,T|0,_e|g|J&2031616|0,X|0)|0;J=T;g=Es(A|0,0,Le|0,Ue|0)|0;_e=T;Tt=Es(Se|0,ke|0,pt|0,0)|0;ee=T;xt=Es(An|0,Z|0,ot|0,0)|0;It=T;Ct=Es(E|0,0,ht|0,0)|0;Rt=T;Pt=Es(d|0,0,$e|0,0)|0;Ot=T;Dt=Es(l|0,0,G|0,0)|0;Mt=T;Bt=Es(b|0,0,pe|0,0)|0;Nt=T;Ut=Es(Je|0,0,m|0,u|0)|0;jt=T;zt=Es(L|0,0,C|0,K|0)|0;qt=T;Ft=Es(At|0,Et|0,N|0,0)|0;Lt=T;et=Es(_t|0,0,Le|0,Ue|0)|0;ne=T;je=Es(A|0,0,pt|0,0)|0;tt=T;gt=Es(Se|0,ke|0,ot|0,0)|0;Be=T;f=Es(An|0,Z|0,ht|0,0)|0;yt=T;ze=Es(E|0,0,$e|0,0)|0;_=T;st=Es(d|0,0,G|0,0)|0;Ke=T;i=Es(l|0,0,pe|0,0)|0;at=T;We=Es(b|0,0,m|0,u|0)|0;t=T;he=Es(Je|0,0,C|0,K|0)|0;Ye=T;kt=Es(L|0,0,N|0,0)|0;St=T;be=Es(At|0,Et|0,B|0,0)|0;be=ks(kt|0,St|0,be|0,T|0)|0;Ye=ks(be|0,T|0,he|0,Ye|0)|0;t=ks(Ye|0,T|0,We|0,t|0)|0;at=ks(t|0,T|0,i|0,at|0)|0;Ke=ks(at|0,T|0,st|0,Ke|0)|0;_=ks(Ke|0,T|0,ze|0,_|0)|0;yt=ks(_|0,T|0,f|0,yt|0)|0;Be=ks(yt|0,T|0,gt|0,Be|0)|0;tt=ks(Be|0,T|0,je|0,tt|0)|0;ne=ks(tt|0,T|0,et|0,ne|0)|0;te=ks(ne|0,T|0,te&2097151|0,0)|0;ne=T;Ue=Es(Q|0,V|0,Le|0,Ue|0)|0;Le=T;et=Es(_t|0,0,pt|0,0)|0;tt=T;je=Es(A|0,0,ot|0,0)|0;Be=T;gt=Es(Se|0,ke|0,ht|0,0)|0;yt=T;f=Es(An|0,Z|0,$e|0,0)|0;_=T;ze=Es(E|0,0,G|0,0)|0;Ke=T;st=Es(d|0,0,pe|0,0)|0;at=T;i=Es(l|0,0,m|0,u|0)|0;t=T;We=Es(b|0,0,C|0,K|0)|0;Ye=T;he=Es(Je|0,0,N|0,0)|0;be=T;St=Es(L|0,0,B|0,0)|0;kt=T;Et=Es(At|0,Et|0,ge|0,ye|0)|0;At=T;pt=Es(Q|0,V|0,pt|0,0)|0;mt=T;P=Es(_t|0,0,ot|0,0)|0;it=T;fe=Es(A|0,0,ht|0,0)|0;n=T;bt=Es(Se|0,ke|0,$e|0,0)|0;Fe=T;k=Es(An|0,Z|0,G|0,0)|0;vt=T;ie=Es(E|0,0,pe|0,0)|0;F=T;qe=Es(d|0,0,m|0,u|0)|0;oe=T;W=Es(l|0,0,C|0,K|0)|0;ce=T;U=Es(b|0,0,N|0,0)|0;Y=T;dt=Es(Je|0,0,B|0,0)|0;Xe=T;L=Es(L|0,0,ge|0,ye|0)|0;L=ks(dt|0,Xe|0,L|0,T|0)|0;Y=ks(L|0,T|0,U|0,Y|0)|0;ce=ks(Y|0,T|0,W|0,ce|0)|0;oe=ks(ce|0,T|0,qe|0,oe|0)|0;F=ks(oe|0,T|0,ie|0,F|0)|0;vt=ks(F|0,T|0,k|0,vt|0)|0;Fe=ks(vt|0,T|0,bt|0,Fe|0)|0;n=ks(Fe|0,T|0,fe|0,n|0)|0;it=ks(n|0,T|0,P|0,it|0)|0;mt=ks(it|0,T|0,pt|0,mt|0)|0;pt=T;ot=Es(Q|0,V|0,ot|0,0)|0;it=T;P=Es(_t|0,0,ht|0,0)|0;n=T;fe=Es(A|0,0,$e|0,0)|0;Fe=T;bt=Es(Se|0,ke|0,G|0,0)|0;vt=T;k=Es(An|0,Z|0,pe|0,0)|0;F=T;ie=Es(E|0,0,m|0,u|0)|0;oe=T;qe=Es(d|0,0,C|0,K|0)|0;ce=T;W=Es(l|0,0,N|0,0)|0;Y=T;U=Es(b|0,0,B|0,0)|0;L=T;Je=Es(Je|0,0,ge|0,ye|0)|0;Xe=T;ht=Es(Q|0,V|0,ht|0,0)|0;dt=T;lt=Es(_t|0,0,$e|0,0)|0;Ze=T;z=Es(A|0,0,G|0,0)|0;ut=T;$=Es(Se|0,ke|0,pe|0,0)|0;q=T;ae=Es(An|0,Z|0,m|0,u|0)|0;O=T;w=Es(E|0,0,C|0,K|0)|0;se=T;h=Es(d|0,0,N|0,0)|0;c=T;wt=Es(l|0,0,B|0,0)|0;a=T;b=Es(b|0,0,ge|0,ye|0)|0;b=ks(wt|0,a|0,b|0,T|0)|0;c=ks(b|0,T|0,h|0,c|0)|0;se=ks(c|0,T|0,w|0,se|0)|0;O=ks(se|0,T|0,ae|0,O|0)|0;q=ks(O|0,T|0,$|0,q|0)|0;ut=ks(q|0,T|0,z|0,ut|0)|0;Ze=ks(ut|0,T|0,lt|0,Ze|0)|0;dt=ks(Ze|0,T|0,ht|0,dt|0)|0;ht=T;$e=Es(Q|0,V|0,$e|0,0)|0;Ze=T;lt=Es(_t|0,0,G|0,0)|0;ut=T;z=Es(A|0,0,pe|0,0)|0;q=T;$=Es(Se|0,ke|0,m|0,u|0)|0;O=T;ae=Es(An|0,Z|0,C|0,K|0)|0;se=T;w=Es(E|0,0,N|0,0)|0;c=T;h=Es(d|0,0,B|0,0)|0;b=T;l=Es(l|0,0,ge|0,ye|0)|0;a=T;G=Es(Q|0,V|0,G|0,0)|0;wt=T;v=Es(_t|0,0,pe|0,0)|0;me=T;M=Es(A|0,0,m|0,u|0)|0;p=T;Qe=Es(Se|0,ke|0,C|0,K|0)|0;D=T;y=Es(An|0,Z|0,N|0,0)|0;Ve=T;Oe=Es(E|0,0,B|0,0)|0;S=T;d=Es(d|0,0,ge|0,ye|0)|0;d=ks(Oe|0,S|0,d|0,T|0)|0;Ve=ks(d|0,T|0,y|0,Ve|0)|0;D=ks(Ve|0,T|0,Qe|0,D|0)|0;p=ks(D|0,T|0,M|0,p|0)|0;me=ks(p|0,T|0,v|0,me|0)|0;wt=ks(me|0,T|0,G|0,wt|0)|0;G=T;pe=Es(Q|0,V|0,pe|0,0)|0;me=T;v=Es(_t|0,0,m|0,u|0)|0;p=T;M=Es(A|0,0,C|0,K|0)|0;D=T;Qe=Es(Se|0,ke|0,N|0,0)|0;Ve=T;y=Es(An|0,Z|0,B|0,0)|0;d=T;E=Es(E|0,0,ge|0,ye|0)|0;S=T;u=Es(Q|0,V|0,m|0,u|0)|0;m=T;Oe=Es(_t|0,0,C|0,K|0)|0;Ce=T;ct=Es(A|0,0,N|0,0)|0;nt=T;de=Es(Se|0,ke|0,B|0,0)|0;wn=T;Z=Es(An|0,Z|0,ge|0,ye|0)|0;Z=ks(de|0,wn|0,Z|0,T|0)|0;nt=ks(Z|0,T|0,ct|0,nt|0)|0;Ce=ks(nt|0,T|0,Oe|0,Ce|0)|0;m=ks(Ce|0,T|0,u|0,m|0)|0;u=T;K=Es(Q|0,V|0,C|0,K|0)|0;C=T;Ce=Es(_t|0,0,N|0,0)|0;Oe=T;nt=Es(A|0,0,B|0,0)|0;ct=T;ke=Es(Se|0,ke|0,ge|0,ye|0)|0;Se=T;N=Es(Q|0,V|0,N|0,0)|0;Z=T;wn=Es(_t|0,0,B|0,0)|0;de=T;A=Es(A|0,0,ge|0,ye|0)|0;A=ks(wn|0,de|0,A|0,T|0)|0;Z=ks(A|0,T|0,N|0,Z|0)|0;N=T;B=Es(Q|0,V|0,B|0,0)|0;A=T;_t=Es(_t|0,0,ge|0,ye|0)|0;_t=ks(B|0,A|0,_t|0,T|0)|0;A=T;ye=Es(Q|0,V|0,ge|0,ye|0)|0;ge=T;V=ks(xe|0,Re|0,1048576,0)|0;Q=T;B=Cs(V|0,Q|0,21)|0;de=T;j=ks(_n|0,vn|0,bn|0,j|0)|0;de=ks(j|0,T|0,B|0,de|0)|0;ve=ks(de|0,T|0,ve&2097151|0,0)|0;de=T;Q=Ss(xe|0,Re|0,V&-2097152|0,Q&4095|0)|0;V=T;Re=ks(Me|0,Pe|0,1048576,0)|0;xe=T;B=Cs(Re|0,xe|0,21)|0;j=T;pn=ks(yn|0,gn|0,mn|0,pn|0)|0;re=ks(pn|0,T|0,hn|0,re|0)|0;Ae=ks(re|0,T|0,R|0,Ae|0)|0;Ee=ks(Ae|0,T|0,Ee&2097151|0,0)|0;j=ks(Ee|0,T|0,B|0,j|0)|0;B=T;Ee=ks(Ie|0,Te|0,1048576,0)|0;Ae=T;R=Rs(Ee|0,Ae|0,21)|0;re=T;fn=ks(dn|0,un|0,ln|0,fn|0)|0;an=ks(fn|0,T|0,cn|0,an|0)|0;on=ks(an|0,T|0,sn|0,on|0)|0;x=ks(on|0,T|0,rn|0,x|0)|0;Ne=ks(x|0,T|0,H|0,Ne|0)|0;De=ks(Ne|0,T|0,De&2097151|0,0)|0;re=ks(De|0,T|0,R|0,re|0)|0;R=T;De=ks(Ge|0,He|0,1048576,0)|0;Ne=T;H=Rs(De|0,Ne|0,21)|0;x=T;$t=ks(nn|0,tn|0,en|0,$t|0)|0;Jt=ks($t|0,T|0,Zt|0,Jt|0)|0;Yt=ks(Jt|0,T|0,Xt|0,Yt|0)|0;Qt=ks(Yt|0,T|0,Wt|0,Qt|0)|0;Ht=ks(Qt|0,T|0,Vt|0,Ht|0)|0;Kt=ks(Ht|0,T|0,Gt|0,Kt|0)|0;o=ks(Kt|0,T|0,I|0,o|0)|0;le=ks(o|0,T|0,ue|0,le|0)|0;x=ks(le|0,T|0,H|0,x|0)|0;H=T;le=ks(X|0,J|0,1048576,0)|0;ue=T;o=Rs(le|0,ue|0,21)|0;I=T;Lt=ks(zt|0,qt|0,Ft|0,Lt|0)|0;jt=ks(Lt|0,T|0,Ut|0,jt|0)|0;Nt=ks(jt|0,T|0,Bt|0,Nt|0)|0;Mt=ks(Nt|0,T|0,Dt|0,Mt|0)|0;Ot=ks(Mt|0,T|0,Pt|0,Ot|0)|0;Rt=ks(Ot|0,T|0,Ct|0,Rt|0)|0;It=ks(Rt|0,T|0,xt|0,It|0)|0;ee=ks(It|0,T|0,Tt|0,ee|0)|0;_e=ks(ee|0,T|0,g|0,_e|0)|0;we=ks(_e|0,T|0,we&2097151|0,0)|0;I=ks(we|0,T|0,o|0,I|0)|0;o=T;we=ks(te|0,ne|0,1048576,0)|0;_e=T;g=Rs(we|0,_e|0,21)|0;ee=T;At=ks(St|0,kt|0,Et|0,At|0)|0;be=ks(At|0,T|0,he|0,be|0)|0;Ye=ks(be|0,T|0,We|0,Ye|0)|0;t=ks(Ye|0,T|0,i|0,t|0)|0;at=ks(t|0,T|0,st|0,at|0)|0;Ke=ks(at|0,T|0,ze|0,Ke|0)|0;_=ks(Ke|0,T|0,f|0,_|0)|0;yt=ks(_|0,T|0,gt|0,yt|0)|0;Be=ks(yt|0,T|0,je|0,Be|0)|0;tt=ks(Be|0,T|0,et|0,tt|0)|0;Le=ks(tt|0,T|0,Ue|0,Le|0)|0;ft=ks(Le|0,T|0,rt|0,ft|0)|0;ee=ks(ft|0,T|0,g|0,ee|0)|0;g=T;ft=ks(mt|0,pt|0,1048576,0)|0;rt=T;Le=Rs(ft|0,rt|0,21)|0;Ue=T;Xe=ks(U|0,L|0,Je|0,Xe|0)|0;Y=ks(Xe|0,T|0,W|0,Y|0)|0;ce=ks(Y|0,T|0,qe|0,ce|0)|0;oe=ks(ce|0,T|0,ie|0,oe|0)|0;F=ks(oe|0,T|0,k|0,F|0)|0;vt=ks(F|0,T|0,bt|0,vt|0)|0;Fe=ks(vt|0,T|0,fe|0,Fe|0)|0;n=ks(Fe|0,T|0,P|0,n|0)|0;it=ks(n|0,T|0,ot|0,it|0)|0;Ue=ks(it|0,T|0,Le|0,Ue|0)|0;Le=T;it=ks(dt|0,ht|0,1048576,0)|0;ot=T;n=Rs(it|0,ot|0,21)|0;P=T;a=ks(h|0,b|0,l|0,a|0)|0;c=ks(a|0,T|0,w|0,c|0)|0;se=ks(c|0,T|0,ae|0,se|0)|0;O=ks(se|0,T|0,$|0,O|0)|0;q=ks(O|0,T|0,z|0,q|0)|0;ut=ks(q|0,T|0,lt|0,ut|0)|0;Ze=ks(ut|0,T|0,$e|0,Ze|0)|0;P=ks(Ze|0,T|0,n|0,P|0)|0;n=T;Ze=ks(wt|0,G|0,1048576,0)|0;$e=T;ut=Rs(Ze|0,$e|0,21)|0;lt=T;S=ks(y|0,d|0,E|0,S|0)|0;Ve=ks(S|0,T|0,Qe|0,Ve|0)|0;D=ks(Ve|0,T|0,M|0,D|0)|0;p=ks(D|0,T|0,v|0,p|0)|0;me=ks(p|0,T|0,pe|0,me|0)|0;lt=ks(me|0,T|0,ut|0,lt|0)|0;ut=T;me=ks(m|0,u|0,1048576,0)|0;pe=T;p=Rs(me|0,pe|0,21)|0;v=T;Se=ks(nt|0,ct|0,ke|0,Se|0)|0;Oe=ks(Se|0,T|0,Ce|0,Oe|0)|0;C=ks(Oe|0,T|0,K|0,C|0)|0;v=ks(C|0,T|0,p|0,v|0)|0;p=T;pe=Ss(m|0,u|0,me&-2097152|0,pe|0)|0;me=T;u=ks(Z|0,N|0,1048576,0)|0;m=T;C=Cs(u|0,m|0,21)|0;C=ks(_t|0,A|0,C|0,T|0)|0;A=T;m=Ss(Z|0,N|0,u&-2097152|0,m&2147483647|0)|0;u=T;N=ks(ye|0,ge|0,1048576,0)|0;Z=T;_t=Cs(N|0,Z|0,21)|0;K=T;Z=Ss(ye|0,ge|0,N&-2097152|0,Z&2147483647|0)|0;N=T;ge=ks(ve|0,de|0,1048576,0)|0;ye=T;Oe=Cs(ge|0,ye|0,21)|0;Ce=T;ye=Ss(ve|0,de|0,ge&-2097152|0,ye|0)|0;ge=T;de=ks(j|0,B|0,1048576,0)|0;ve=T;Se=Rs(de|0,ve|0,21)|0;ke=T;ve=Ss(j|0,B|0,de&-2097152|0,ve|0)|0;de=T;B=ks(re|0,R|0,1048576,0)|0;j=T;ct=Rs(B|0,j|0,21)|0;nt=T;D=ks(x|0,H|0,1048576,0)|0;M=T;Ve=Rs(D|0,M|0,21)|0;Qe=T;S=ks(I|0,o|0,1048576,0)|0;E=T;d=Rs(S|0,E|0,21)|0;y=T;q=ks(ee|0,g|0,1048576,0)|0;z=T;O=Rs(q|0,z|0,21)|0;$=T;se=ks(Ue|0,Le|0,1048576,0)|0;ae=T;c=Rs(se|0,ae|0,21)|0;w=T;a=ks(P|0,n|0,1048576,0)|0;l=T;b=Rs(a|0,l|0,21)|0;h=T;Fe=ks(lt|0,ut|0,1048576,0)|0;fe=T;vt=Rs(Fe|0,fe|0,21)|0;me=ks(vt|0,T|0,pe|0,me|0)|0;pe=T;fe=Ss(lt|0,ut|0,Fe&-2097152|0,fe|0)|0;Fe=T;ut=ks(v|0,p|0,1048576,0)|0;lt=T;vt=Rs(ut|0,lt|0,21)|0;u=ks(vt|0,T|0,m|0,u|0)|0;m=T;lt=Ss(v|0,p|0,ut&-2097152|0,lt|0)|0;ut=T;p=ks(C|0,A|0,1048576,0)|0;v=T;vt=Cs(p|0,v|0,21)|0;N=ks(vt|0,T|0,Z|0,N|0)|0;Z=T;v=Ss(C|0,A|0,p&-2097152|0,v&2147483647|0)|0;p=T;A=Es(_t|0,K|0,666643,0)|0;C=T;vt=Es(_t|0,K|0,470296,0)|0;bt=T;F=Es(_t|0,K|0,654183,0)|0;k=T;oe=Es(_t|0,K|0,-997805,-1)|0;ie=T;ce=Es(_t|0,K|0,136657,0)|0;qe=T;K=Es(_t|0,K|0,-683901,-1)|0;K=ks(wt|0,G|0,K|0,T|0)|0;$e=Ss(K|0,T|0,Ze&-2097152|0,$e|0)|0;h=ks($e|0,T|0,b|0,h|0)|0;b=T;$e=Es(N|0,Z|0,666643,0)|0;Ze=T;K=Es(N|0,Z|0,470296,0)|0;G=T;wt=Es(N|0,Z|0,654183,0)|0;_t=T;Y=Es(N|0,Z|0,-997805,-1)|0;W=T;Xe=Es(N|0,Z|0,136657,0)|0;Je=T;Z=Es(N|0,Z|0,-683901,-1)|0;N=T;L=Es(v|0,p|0,666643,0)|0;U=T;tt=Es(v|0,p|0,470296,0)|0;et=T;Be=Es(v|0,p|0,654183,0)|0;je=T;yt=Es(v|0,p|0,-997805,-1)|0;gt=T;_=Es(v|0,p|0,136657,0)|0;f=T;p=Es(v|0,p|0,-683901,-1)|0;v=T;ie=ks(dt|0,ht|0,oe|0,ie|0)|0;Je=ks(ie|0,T|0,Xe|0,Je|0)|0;v=ks(Je|0,T|0,p|0,v|0)|0;ot=Ss(v|0,T|0,it&-2097152|0,ot|0)|0;w=ks(ot|0,T|0,c|0,w|0)|0;c=T;ot=Es(u|0,m|0,666643,0)|0;it=T;v=Es(u|0,m|0,470296,0)|0;p=T;Je=Es(u|0,m|0,654183,0)|0;Xe=T;ie=Es(u|0,m|0,-997805,-1)|0;oe=T;ht=Es(u|0,m|0,136657,0)|0;dt=T;m=Es(u|0,m|0,-683901,-1)|0;u=T;Ke=Es(lt|0,ut|0,666643,0)|0;ze=T;at=Es(lt|0,ut|0,470296,0)|0;st=T;t=Es(lt|0,ut|0,654183,0)|0;i=T;Ye=Es(lt|0,ut|0,-997805,-1)|0;We=T;be=Es(lt|0,ut|0,136657,0)|0;he=T;ut=Es(lt|0,ut|0,-683901,-1)|0;lt=T;bt=ks(wt|0,_t|0,vt|0,bt|0)|0;gt=ks(bt|0,T|0,yt|0,gt|0)|0;pt=ks(gt|0,T|0,mt|0,pt|0)|0;dt=ks(pt|0,T|0,ht|0,dt|0)|0;lt=ks(dt|0,T|0,ut|0,lt|0)|0;rt=Ss(lt|0,T|0,ft&-2097152|0,rt|0)|0;$=ks(rt|0,T|0,O|0,$|0)|0;O=T;rt=Es(me|0,pe|0,666643,0)|0;rt=ks(ct|0,nt|0,rt|0,T|0)|0;He=ks(rt|0,T|0,Ge|0,He|0)|0;Ne=Ss(He|0,T|0,De&-2097152|0,Ne|0)|0;De=T;He=Es(me|0,pe|0,470296,0)|0;Ge=T;rt=Es(me|0,pe|0,654183,0)|0;nt=T;it=ks(at|0,st|0,ot|0,it|0)|0;nt=ks(it|0,T|0,rt|0,nt|0)|0;Qe=ks(nt|0,T|0,Ve|0,Qe|0)|0;J=ks(Qe|0,T|0,X|0,J|0)|0;ue=Ss(J|0,T|0,le&-2097152|0,ue|0)|0;le=T;J=Es(me|0,pe|0,-997805,-1)|0;X=T;Qe=Es(me|0,pe|0,136657,0)|0;Ve=T;Ze=ks(tt|0,et|0,$e|0,Ze|0)|0;Xe=ks(Ze|0,T|0,Je|0,Xe|0)|0;We=ks(Xe|0,T|0,Ye|0,We|0)|0;Ve=ks(We|0,T|0,Qe|0,Ve|0)|0;y=ks(Ve|0,T|0,d|0,y|0)|0;ne=ks(y|0,T|0,te|0,ne|0)|0;_e=Ss(ne|0,T|0,we&-2097152|0,_e|0)|0;we=T;pe=Es(me|0,pe|0,-683901,-1)|0;me=T;ne=ks(Ne|0,De|0,1048576,0)|0;te=T;y=Rs(ne|0,te|0,21)|0;d=T;ze=ks(He|0,Ge|0,Ke|0,ze|0)|0;H=ks(ze|0,T|0,x|0,H|0)|0;M=Ss(H|0,T|0,D&-2097152|0,M|0)|0;d=ks(M|0,T|0,y|0,d|0)|0;y=T;M=ks(ue|0,le|0,1048576,0)|0;D=T;H=Rs(M|0,D|0,21)|0;x=T;U=ks(v|0,p|0,L|0,U|0)|0;i=ks(U|0,T|0,t|0,i|0)|0;X=ks(i|0,T|0,J|0,X|0)|0;o=ks(X|0,T|0,I|0,o|0)|0;E=Ss(o|0,T|0,S&-2097152|0,E|0)|0;x=ks(E|0,T|0,H|0,x|0)|0;H=T;E=ks(_e|0,we|0,1048576,0)|0;S=T;o=Rs(E|0,S|0,21)|0;I=T;C=ks(K|0,G|0,A|0,C|0)|0;je=ks(C|0,T|0,Be|0,je|0)|0;oe=ks(je|0,T|0,ie|0,oe|0)|0;he=ks(oe|0,T|0,be|0,he|0)|0;me=ks(he|0,T|0,pe|0,me|0)|0;g=ks(me|0,T|0,ee|0,g|0)|0;z=Ss(g|0,T|0,q&-2097152|0,z|0)|0;I=ks(z|0,T|0,o|0,I|0)|0;o=T;z=ks($|0,O|0,1048576,0)|0;q=T;g=Rs(z|0,q|0,21)|0;ee=T;k=ks(Y|0,W|0,F|0,k|0)|0;f=ks(k|0,T|0,_|0,f|0)|0;u=ks(f|0,T|0,m|0,u|0)|0;Le=ks(u|0,T|0,Ue|0,Le|0)|0;ae=Ss(Le|0,T|0,se&-2097152|0,ae|0)|0;ee=ks(ae|0,T|0,g|0,ee|0)|0;g=T;q=Ss($|0,O|0,z&-2097152|0,q|0)|0;z=T;O=ks(w|0,c|0,1048576,0)|0;$=T;ae=Rs(O|0,$|0,21)|0;se=T;qe=ks(Z|0,N|0,ce|0,qe|0)|0;n=ks(qe|0,T|0,P|0,n|0)|0;l=Ss(n|0,T|0,a&-2097152|0,l|0)|0;se=ks(l|0,T|0,ae|0,se|0)|0;ae=T;$=Ss(w|0,c|0,O&-2097152|0,$|0)|0;O=T;c=ks(h|0,b|0,1048576,0)|0;w=T;l=Rs(c|0,w|0,21)|0;Fe=ks(l|0,T|0,fe|0,Fe|0)|0;fe=T;w=Ss(h|0,b|0,c&-2097152|0,w|0)|0;c=T;b=ks(d|0,y|0,1048576,0)|0;h=T;l=Rs(b|0,h|0,21)|0;a=T;n=ks(x|0,H|0,1048576,0)|0;P=T;qe=Rs(n|0,P|0,21)|0;ce=T;N=ks(I|0,o|0,1048576,0)|0;Z=T;Le=Rs(N|0,Z|0,21)|0;z=ks(Le|0,T|0,q|0,z|0)|0;q=T;Z=Ss(I|0,o|0,N&-2097152|0,Z|0)|0;N=T;o=ks(ee|0,g|0,1048576,0)|0;I=T;Le=Rs(o|0,I|0,21)|0;O=ks(Le|0,T|0,$|0,O|0)|0;$=T;I=Ss(ee|0,g|0,o&-2097152|0,I|0)|0;o=T;g=ks(se|0,ae|0,1048576,0)|0;ee=T;Le=Rs(g|0,ee|0,21)|0;c=ks(Le|0,T|0,w|0,c|0)|0;w=T;ee=Ss(se|0,ae|0,g&-2097152|0,ee|0)|0;g=T;ae=Es(Fe|0,fe|0,666643,0)|0;se=T;Le=Es(Fe|0,fe|0,470296,0)|0;Ue=T;u=Es(Fe|0,fe|0,654183,0)|0;m=T;f=Es(Fe|0,fe|0,-997805,-1)|0;_=T;k=Es(Fe|0,fe|0,136657,0)|0;F=T;fe=Es(Fe|0,fe|0,-683901,-1)|0;fe=ks(qe|0,ce|0,fe|0,T|0)|0;we=ks(fe|0,T|0,_e|0,we|0)|0;S=Ss(we|0,T|0,E&-2097152|0,S|0)|0;E=T;we=Es(c|0,w|0,666643,0)|0;_e=T;fe=Es(c|0,w|0,470296,0)|0;ce=T;qe=Es(c|0,w|0,654183,0)|0;Fe=T;W=Es(c|0,w|0,-997805,-1)|0;Y=T;me=Es(c|0,w|0,136657,0)|0;pe=T;w=Es(c|0,w|0,-683901,-1)|0;c=T;he=Es(ee|0,g|0,666643,0)|0;he=ks(ve|0,de|0,he|0,T|0)|0;de=T;ve=Es(ee|0,g|0,470296,0)|0;be=T;oe=Es(ee|0,g|0,654183,0)|0;ie=T;je=Es(ee|0,g|0,-997805,-1)|0;Be=T;C=Es(ee|0,g|0,136657,0)|0;A=T;g=Es(ee|0,g|0,-683901,-1)|0;ee=T;_=ks(me|0,pe|0,f|0,_|0)|0;ee=ks(_|0,T|0,g|0,ee|0)|0;a=ks(ee|0,T|0,l|0,a|0)|0;le=ks(a|0,T|0,ue|0,le|0)|0;D=Ss(le|0,T|0,M&-2097152|0,D|0)|0;M=T;le=Es(O|0,$|0,666643,0)|0;ue=T;a=Es(O|0,$|0,470296,0)|0;l=T;ee=Es(O|0,$|0,654183,0)|0;g=T;_=Es(O|0,$|0,-997805,-1)|0;f=T;pe=Es(O|0,$|0,136657,0)|0;me=T;$=Es(O|0,$|0,-683901,-1)|0;O=T;G=Es(I|0,o|0,666643,0)|0;K=T;X=Es(I|0,o|0,470296,0)|0;J=T;i=Es(I|0,o|0,654183,0)|0;t=T;U=Es(I|0,o|0,-997805,-1)|0;L=T;p=Es(I|0,o|0,136657,0)|0;v=T;o=Es(I|0,o|0,-683901,-1)|0;I=T;Ue=ks(qe|0,Fe|0,Le|0,Ue|0)|0;Be=ks(Ue|0,T|0,je|0,Be|0)|0;De=ks(Be|0,T|0,Ne|0,De|0)|0;te=Ss(De|0,T|0,ne&-2097152|0,te|0)|0;me=ks(te|0,T|0,pe|0,me|0)|0;I=ks(me|0,T|0,o|0,I|0)|0;o=T;me=Es(z|0,q|0,666643,0)|0;V=ks(me|0,T|0,Q|0,V|0)|0;Q=T;me=Es(z|0,q|0,470296,0)|0;pe=T;te=Es(z|0,q|0,654183,0)|0;ne=T;Ce=ks(Me|0,Pe|0,Oe|0,Ce|0)|0;xe=Ss(Ce|0,T|0,Re&-2097152|0,xe|0)|0;ne=ks(xe|0,T|0,te|0,ne|0)|0;ue=ks(ne|0,T|0,le|0,ue|0)|0;J=ks(ue|0,T|0,X|0,J|0)|0;X=T;ue=Es(z|0,q|0,-997805,-1)|0;le=T;ne=Es(z|0,q|0,136657,0)|0;te=T;ke=ks(Ie|0,Te|0,Se|0,ke|0)|0;Ae=Ss(ke|0,T|0,Ee&-2097152|0,Ae|0)|0;_e=ks(Ae|0,T|0,we|0,_e|0)|0;be=ks(_e|0,T|0,ve|0,be|0)|0;te=ks(be|0,T|0,ne|0,te|0)|0;g=ks(te|0,T|0,ee|0,g|0)|0;L=ks(g|0,T|0,U|0,L|0)|0;U=T;q=Es(z|0,q|0,-683901,-1)|0;z=T;g=ks(V|0,Q|0,1048576,0)|0;ee=T;te=Rs(g|0,ee|0,21)|0;ne=T;pe=ks(ye|0,ge|0,me|0,pe|0)|0;K=ks(pe|0,T|0,G|0,K|0)|0;ne=ks(K|0,T|0,te|0,ne|0)|0;te=T;ee=Ss(V|0,Q|0,g&-2097152|0,ee|0)|0;g=T;Q=ks(J|0,X|0,1048576,0)|0;V=T;K=Rs(Q|0,V|0,21)|0;G=T;le=ks(he|0,de|0,ue|0,le|0)|0;l=ks(le|0,T|0,a|0,l|0)|0;t=ks(l|0,T|0,i|0,t|0)|0;G=ks(t|0,T|0,K|0,G|0)|0;K=T;t=ks(L|0,U|0,1048576,0)|0;i=T;l=Rs(t|0,i|0,21)|0;a=T;se=ks(fe|0,ce|0,ae|0,se|0)|0;ie=ks(se|0,T|0,oe|0,ie|0)|0;R=ks(ie|0,T|0,re|0,R|0)|0;j=Ss(R|0,T|0,B&-2097152|0,j|0)|0;z=ks(j|0,T|0,q|0,z|0)|0;f=ks(z|0,T|0,_|0,f|0)|0;v=ks(f|0,T|0,p|0,v|0)|0;a=ks(v|0,T|0,l|0,a|0)|0;l=T;v=ks(I|0,o|0,1048576,0)|0;p=T;f=Rs(v|0,p|0,21)|0;_=T;m=ks(W|0,Y|0,u|0,m|0)|0;A=ks(m|0,T|0,C|0,A|0)|0;y=ks(A|0,T|0,d|0,y|0)|0;h=Ss(y|0,T|0,b&-2097152|0,h|0)|0;O=ks(h|0,T|0,$|0,O|0)|0;_=ks(O|0,T|0,f|0,_|0)|0;f=T;p=Ss(I|0,o|0,v&-2097152|0,p|0)|0;v=T;o=ks(D|0,M|0,1048576,0)|0;I=T;O=Rs(o|0,I|0,21)|0;$=T;F=ks(w|0,c|0,k|0,F|0)|0;H=ks(F|0,T|0,x|0,H|0)|0;$=ks(H|0,T|0,O|0,$|0)|0;P=Ss($|0,T|0,n&-2097152|0,P|0)|0;n=T;I=Ss(D|0,M|0,o&-2097152|0,I|0)|0;o=T;M=ks(S|0,E|0,1048576,0)|0;D=T;$=Rs(M|0,D|0,21)|0;$=ks(Z|0,N|0,$|0,T|0)|0;N=T;Z=ks(ne|0,te|0,1048576,0)|0;O=T;H=Rs(Z|0,O|0,21)|0;x=T;F=ks(G|0,K|0,1048576,0)|0;k=T;c=Rs(F|0,k|0,21)|0;w=T;h=ks(a|0,l|0,1048576,0)|0;b=T;y=Rs(h|0,b|0,21)|0;y=ks(p|0,v|0,y|0,T|0)|0;v=T;p=ks(_|0,f|0,1048576,0)|0;d=T;A=Rs(p|0,d|0,21)|0;A=ks(I|0,o|0,A|0,T|0)|0;o=T;d=Ss(_|0,f|0,p&-2097152|0,d|0)|0;p=T;f=ks(P|0,n|0,1048576,0)|0;_=T;I=Rs(f|0,_|0,21)|0;C=T;_=Ss(P|0,n|0,f&-2097152|0,_|0)|0;f=T;n=ks($|0,N|0,1048576,0)|0;P=T;m=Rs(n|0,P|0,21)|0;u=T;P=Ss($|0,N|0,n&-2097152|0,P|0)|0;n=T;N=Es(m|0,u|0,666643,0)|0;N=ks(ee|0,g|0,N|0,T|0)|0;g=T;ee=Es(m|0,u|0,470296,0)|0;$=T;Y=Es(m|0,u|0,654183,0)|0;W=T;z=Es(m|0,u|0,-997805,-1)|0;q=T;j=Es(m|0,u|0,136657,0)|0;B=T;u=Es(m|0,u|0,-683901,-1)|0;m=T;g=Rs(N|0,g|0,21)|0;R=T;$=ks(ne|0,te|0,ee|0,$|0)|0;O=Ss($|0,T|0,Z&-2097152|0,O|0)|0;R=ks(O|0,T|0,g|0,R|0)|0;g=Rs(R|0,T|0,21)|0;O=T;W=ks(J|0,X|0,Y|0,W|0)|0;V=Ss(W|0,T|0,Q&-2097152|0,V|0)|0;x=ks(V|0,T|0,H|0,x|0)|0;O=ks(x|0,T|0,g|0,O|0)|0;g=Rs(O|0,T|0,21)|0;x=T;q=ks(G|0,K|0,z|0,q|0)|0;k=Ss(q|0,T|0,F&-2097152|0,k|0)|0;x=ks(k|0,T|0,g|0,x|0)|0;g=Rs(x|0,T|0,21)|0;k=T;B=ks(L|0,U|0,j|0,B|0)|0;i=Ss(B|0,T|0,t&-2097152|0,i|0)|0;w=ks(i|0,T|0,c|0,w|0)|0;k=ks(w|0,T|0,g|0,k|0)|0;g=Rs(k|0,T|0,21)|0;w=T;m=ks(a|0,l|0,u|0,m|0)|0;b=Ss(m|0,T|0,h&-2097152|0,b|0)|0;w=ks(b|0,T|0,g|0,w|0)|0;g=Rs(w|0,T|0,21)|0;g=ks(y|0,v|0,g|0,T|0)|0;v=Rs(g|0,T|0,21)|0;p=ks(v|0,T|0,d|0,p|0)|0;d=Rs(p|0,T|0,21)|0;d=ks(A|0,o|0,d|0,T|0)|0;o=Rs(d|0,T|0,21)|0;f=ks(o|0,T|0,_|0,f|0)|0;_=Rs(f|0,T|0,21)|0;o=T;C=ks(S|0,E|0,I|0,C|0)|0;D=Ss(C|0,T|0,M&-2097152|0,D|0)|0;o=ks(D|0,T|0,_|0,o|0)|0;_=Rs(o|0,T|0,21)|0;n=ks(_|0,T|0,P|0,n|0)|0;P=Rs(n|0,T|0,21)|0;_=T;D=Es(P|0,_|0,666643,0)|0;N=ks(D|0,T|0,N&2097151|0,0)|0;D=T;M=Es(P|0,_|0,470296,0)|0;R=ks(M|0,T|0,R&2097151|0,0)|0;M=T;C=Es(P|0,_|0,654183,0)|0;O=ks(C|0,T|0,O&2097151|0,0)|0;C=T;I=Es(P|0,_|0,-997805,-1)|0;x=ks(I|0,T|0,x&2097151|0,0)|0;I=T;E=Es(P|0,_|0,136657,0)|0;k=ks(E|0,T|0,k&2097151|0,0)|0;E=T;_=Es(P|0,_|0,-683901,-1)|0;w=ks(_|0,T|0,w&2097151|0,0)|0;_=T;P=Rs(N|0,D|0,21)|0;P=ks(R|0,M|0,P|0,T|0)|0;M=T;R=Rs(P|0,M|0,21)|0;R=ks(O|0,C|0,R|0,T|0)|0;C=T;O=P&2097151;S=Rs(R|0,C|0,21)|0;S=ks(x|0,I|0,S|0,T|0)|0;I=T;x=R&2097151;A=Rs(S|0,I|0,21)|0;A=ks(k|0,E|0,A|0,T|0)|0;E=T;k=S&2097151;v=Rs(A|0,E|0,21)|0;v=ks(w|0,_|0,v|0,T|0)|0;_=T;w=A&2097151;y=Rs(v|0,_|0,21)|0;g=ks(y|0,T|0,g&2097151|0,0)|0;y=T;b=v&2097151;h=Rs(g|0,y|0,21)|0;p=ks(h|0,T|0,p&2097151|0,0)|0;h=T;m=g&2097151;u=Rs(p|0,h|0,21)|0;d=ks(u|0,T|0,d&2097151|0,0)|0;u=T;l=Rs(d|0,u|0,21)|0;f=ks(l|0,T|0,f&2097151|0,0)|0;l=T;a=Rs(f|0,l|0,21)|0;o=ks(a|0,T|0,o&2097151|0,0)|0;a=T;c=f&2097151;i=Rs(o|0,a|0,21)|0;n=ks(i|0,T|0,n&2097151|0,0)|0;i=T;t=o&2097151;r[e>>0]=N;B=Cs(N|0,D|0,8)|0;r[e+1>>0]=B;D=Cs(N|0,D|0,16)|0;N=Os(O|0,0,5)|0;r[e+2>>0]=N|D&31;D=Cs(P|0,M|0,3)|0;r[e+3>>0]=D;M=Cs(P|0,M|0,11)|0;r[e+4>>0]=M;O=Cs(O|0,0,19)|0;M=T;P=Os(x|0,0,2)|0;r[e+5>>0]=P|O;C=Cs(R|0,C|0,6)|0;r[e+6>>0]=C;x=Cs(x|0,0,14)|0;C=T;R=Os(k|0,0,7)|0;r[e+7>>0]=R|x;x=Cs(S|0,I|0,1)|0;r[e+8>>0]=x;I=Cs(S|0,I|0,9)|0;r[e+9>>0]=I;k=Cs(k|0,0,17)|0;I=T;S=Os(w|0,0,4)|0;r[e+10>>0]=S|k;k=Cs(A|0,E|0,4)|0;r[e+11>>0]=k;E=Cs(A|0,E|0,12)|0;r[e+12>>0]=E;w=Cs(w|0,0,20)|0;E=T;A=Os(b|0,0,1)|0;r[e+13>>0]=A|w;_=Cs(v|0,_|0,7)|0;r[e+14>>0]=_;b=Cs(b|0,0,15)|0;_=T;v=Os(m|0,0,6)|0;r[e+15>>0]=v|b;b=Cs(g|0,y|0,2)|0;r[e+16>>0]=b;y=Cs(g|0,y|0,10)|0;r[e+17>>0]=y;m=Cs(m|0,0,18)|0;y=T;g=Os(p|0,h|0,3)|0;r[e+18>>0]=g|m;m=Cs(p|0,h|0,5)|0;r[e+19>>0]=m;h=Cs(p|0,h|0,13)|0;r[e+20>>0]=h;r[e+21>>0]=d;h=Cs(d|0,u|0,8)|0;r[e+22>>0]=h;u=Cs(d|0,u|0,16)|0;d=Os(c|0,0,5)|0;r[e+23>>0]=d|u&31;u=Cs(f|0,l|0,3)|0;r[e+24>>0]=u;l=Cs(f|0,l|0,11)|0;r[e+25>>0]=l;c=Cs(c|0,0,19)|0;l=T;f=Os(t|0,0,2)|0;r[e+26>>0]=f|c;a=Cs(o|0,a|0,6)|0;r[e+27>>0]=a;t=Cs(t|0,0,14)|0;a=T;o=Os(n|0,i|0,7)|0;r[e+28>>0]=o|t;t=Cs(n|0,i|0,1)|0;r[e+29>>0]=t;t=Cs(n|0,i|0,9)|0;r[e+30>>0]=t;i=Rs(n|0,i|0,17)|0;r[e+31>>0]=i;return}function ni(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;l=t+44|0;h=t+48|0;g=t+52|0;v=t+56|0;A=t+60|0;S=t+64|0;x=t+68|0;O=t+72|0;R=t+76|0;G=t+4|0;z=t+8|0;i=t+12|0;d=t+16|0;p=t+20|0;w=t+24|0;E=t+28|0;C=t+32|0;q=t+36|0;se=(o[G>>2]|0)+(o[l>>2]|0)|0;oe=(o[z>>2]|0)+(o[h>>2]|0)|0;ie=(o[i>>2]|0)+(o[g>>2]|0)|0;re=(o[d>>2]|0)+(o[v>>2]|0)|0;ne=(o[p>>2]|0)+(o[A>>2]|0)|0;te=(o[w>>2]|0)+(o[S>>2]|0)|0;ee=(o[E>>2]|0)+(o[x>>2]|0)|0;$=(o[C>>2]|0)+(o[O>>2]|0)|0;X=(o[q>>2]|0)+(o[R>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[l>>2]|0)-(o[G>>2]|0)|0;z=(o[h>>2]|0)-(o[z>>2]|0)|0;i=(o[g>>2]|0)-(o[i>>2]|0)|0;d=(o[v>>2]|0)-(o[d>>2]|0)|0;p=(o[A>>2]|0)-(o[p>>2]|0)|0;w=(o[S>>2]|0)-(o[w>>2]|0)|0;E=(o[x>>2]|0)-(o[E>>2]|0)|0;C=(o[O>>2]|0)-(o[C>>2]|0)|0;q=(o[R>>2]|0)-(o[q>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=z;z=e+52|0;o[z>>2]=i;i=e+56|0;o[i>>2]=d;d=e+60|0;o[d>>2]=p;p=e+64|0;o[p>>2]=w;w=e+68|0;o[w>>2]=E;E=e+72|0;o[E>>2]=C;C=e+76|0;o[C>>2]=q;q=e+80|0;Xr(q,e,n);Xr(X,X,n+40|0);R=e+120|0;Xr(R,n+120|0,t+120|0);Xr(e,t+80|0,n+80|0);O=o[e>>2]<<1;x=o[ae>>2]<<1;S=o[se>>2]<<1;A=o[oe>>2]<<1;v=o[ie>>2]<<1;g=o[re>>2]<<1;h=o[ne>>2]<<1;l=o[te>>2]<<1;a=o[ee>>2]<<1;r=o[$>>2]<<1;J=o[q>>2]|0;F=e+84|0;W=o[F>>2]|0;L=e+88|0;H=o[L>>2]|0;U=e+92|0;t=o[U>>2]|0;j=e+96|0;s=o[j>>2]|0;B=e+100|0;c=o[B>>2]|0;N=e+104|0;m=o[N>>2]|0;D=e+108|0;y=o[D>>2]|0;M=e+112|0;k=o[M>>2]|0;P=e+116|0;T=o[P>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[z>>2]|0;n=o[i>>2]|0;f=o[d>>2]|0;u=o[p>>2]|0;b=o[w>>2]|0;_=o[E>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=t-K;o[ie>>2]=s-n;o[re>>2]=c-f;o[ne>>2]=m-u;o[te>>2]=y-b;o[ee>>2]=k-_;o[$>>2]=T-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[z>>2]=K+t;o[i>>2]=n+s;o[d>>2]=f+c;o[p>>2]=u+m;o[w>>2]=b+y;o[E>>2]=_+k;o[C>>2]=I+T;C=o[R>>2]|0;T=e+124|0;I=o[T>>2]|0;E=e+128|0;k=o[E>>2]|0;_=e+132|0;w=o[_>>2]|0;y=e+136|0;b=o[y>>2]|0;p=e+140|0;m=o[p>>2]|0;u=e+144|0;d=o[u>>2]|0;c=e+148|0;f=o[c>>2]|0;i=e+152|0;s=o[i>>2]|0;n=e+156|0;t=o[n>>2]|0;o[q>>2]=C+O;o[F>>2]=I+x;o[L>>2]=k+S;o[U>>2]=w+A;o[j>>2]=b+v;o[B>>2]=m+g;o[N>>2]=d+h;o[D>>2]=f+l;o[M>>2]=s+a;o[P>>2]=t+r;o[R>>2]=O-C;o[T>>2]=x-I;o[E>>2]=S-k;o[_>>2]=A-w;o[y>>2]=v-b;o[p>>2]=g-m;o[u>>2]=h-d;o[c>>2]=l-f;o[i>>2]=a-s;o[n>>2]=r-t;return}function ri(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0;_=h;h=h+2400|0;d=_+2272|0;m=_+1536|0;g=_+1280|0;y=_;b=_+2112|0;v=_+1952|0;u=_+1792|0;ii(m,t);ii(g,i);oi(y,n);A=o[n+4>>2]|0;w=o[n+8>>2]|0;l=o[n+12>>2]|0;t=o[n+16>>2]|0;f=o[n+20>>2]|0;c=o[n+24>>2]|0;a=o[n+28>>2]|0;s=o[n+32>>2]|0;i=o[n+36>>2]|0;o[d>>2]=o[n>>2];o[d+4>>2]=A;o[d+8>>2]=w;o[d+12>>2]=l;o[d+16>>2]=t;o[d+20>>2]=f;o[d+24>>2]=c;o[d+28>>2]=a;o[d+32>>2]=s;o[d+36>>2]=i;i=o[n+44>>2]|0;s=o[n+48>>2]|0;a=o[n+52>>2]|0;c=o[n+56>>2]|0;f=o[n+60>>2]|0;t=o[n+64>>2]|0;l=o[n+68>>2]|0;w=o[n+72>>2]|0;A=o[n+76>>2]|0;o[d+40>>2]=o[n+40>>2];o[d+44>>2]=i;o[d+48>>2]=s;o[d+52>>2]=a;o[d+56>>2]=c;o[d+60>>2]=f;o[d+64>>2]=t;o[d+68>>2]=l;o[d+72>>2]=w;o[d+76>>2]=A;A=o[n+84>>2]|0;w=o[n+88>>2]|0;l=o[n+92>>2]|0;t=o[n+96>>2]|0;f=o[n+100>>2]|0;c=o[n+104>>2]|0;a=o[n+108>>2]|0;s=o[n+112>>2]|0;i=o[n+116>>2]|0;o[d+80>>2]=o[n+80>>2];o[d+84>>2]=A;o[d+88>>2]=w;o[d+92>>2]=l;o[d+96>>2]=t;o[d+100>>2]=f;o[d+104>>2]=c;o[d+108>>2]=a;o[d+112>>2]=s;o[d+116>>2]=i;si(b,d);d=b+120|0;Xr(u,b,d);i=b+40|0;s=b+80|0;Xr(u+40|0,i,s);Xr(u+80|0,s,d);Xr(u+120|0,b,i);ni(b,u,y);Xr(v,b,d);a=v+40|0;Xr(a,i,s);c=v+80|0;Xr(c,s,d);f=v+120|0;Xr(f,b,i);t=y+160|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+320|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+480|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+640|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+800|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+960|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);oi(y+1120|0,v);t=e;n=t+40|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));l=e+40|0;o[l>>2]=1;t=e+44|0;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));u=e+80|0;o[u>>2]=1;t=e+84|0;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));t=255;while(1){if(r[m+t>>0]|0)break;if(r[g+t>>0]|0)break;if(!t){p=16;break}else t=t+-1|0}if((p|0)==16){h=_;return}if((t|0)<=-1){h=_;return}while(1){si(b,e);n=r[m+t>>0]|0;if(n<<24>>24<=0){if(n<<24>>24<0){Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);ai(b,v,y+((((n<<24>>24)/-2|0)<<24>>24)*160|0)|0)}}else{Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);ni(b,v,y+(((n&255)>>>1&255)*160|0)|0)}n=r[g+t>>0]|0;if(n<<24>>24<=0){if(n<<24>>24<0){Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);fi(b,v,240+((((n<<24>>24)/-2|0)<<24>>24)*120|0)|0)}}else{Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);ci(b,v,240+(((n&255)>>>1&255)*120|0)|0)}Xr(e,b,d);Xr(l,i,s);Xr(u,s,d);if((t|0)>0)t=t+-1|0;else break}h=_;return}function ii(e,t){e=e|0;t=t|0;var n=0,i=0,o=0,a=0,c=0,f=0,l=0,u=0,d=0;n=0;do{r[e+n>>0]=(s[t+(n>>>3)>>0]|0)>>>(n&7)&1;n=n+1|0}while((n|0)!=256);l=0;do{f=e+l|0;n=r[f>>0]|0;c=l;l=l+1|0;e:do{if(n<<24>>24!=0&l>>>0<256){o=e+l|0;t=r[o>>0]|0;t:do{if(t<<24>>24){i=n<<24>>24;n=t<<24>>24<<1;t=n+i|0;if((t|0)<16){r[f>>0]=t;r[o>>0]=0;break}n=i-n|0;if((n|0)<=-16)break e;r[f>>0]=n;n=l;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+2|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<2;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+3|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<3;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+4|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<4;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+5|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<5;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+6|0;if(n>>>0<256?(u=e+n|0,d=r[u>>0]|0,d<<24>>24):0){t=r[f>>0]|0;i=d<<24>>24<<6;o=i+t|0;if((o|0)<16){r[f>>0]=o;r[u>>0]=0;break}t=t-i|0;if((t|0)>-16){r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break e}r[t>>0]=1}}}}}}}}while(0)}while((l|0)!=256);return}function oi(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0;d=t+40|0;w=t+44|0;_=t+48|0;v=t+52|0;b=t+56|0;y=t+60|0;g=t+64|0;m=t+68|0;p=t+72|0;h=t+76|0;n=t+4|0;r=t+8|0;i=t+12|0;s=t+16|0;a=t+20|0;c=t+24|0;f=t+28|0;l=t+32|0;u=t+36|0;C=(o[n>>2]|0)+(o[w>>2]|0)|0;R=(o[r>>2]|0)+(o[_>>2]|0)|0;x=(o[i>>2]|0)+(o[v>>2]|0)|0;I=(o[s>>2]|0)+(o[b>>2]|0)|0;T=(o[a>>2]|0)+(o[y>>2]|0)|0;S=(o[c>>2]|0)+(o[g>>2]|0)|0;k=(o[f>>2]|0)+(o[m>>2]|0)|0;E=(o[l>>2]|0)+(o[p>>2]|0)|0;A=(o[u>>2]|0)+(o[h>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[d>>2]|0);o[e+4>>2]=C;o[e+8>>2]=R;o[e+12>>2]=x;o[e+16>>2]=I;o[e+20>>2]=T;o[e+24>>2]=S;o[e+28>>2]=k;o[e+32>>2]=E;o[e+36>>2]=A;n=(o[w>>2]|0)-(o[n>>2]|0)|0;r=(o[_>>2]|0)-(o[r>>2]|0)|0;i=(o[v>>2]|0)-(o[i>>2]|0)|0;s=(o[b>>2]|0)-(o[s>>2]|0)|0;a=(o[y>>2]|0)-(o[a>>2]|0)|0;c=(o[g>>2]|0)-(o[c>>2]|0)|0;f=(o[m>>2]|0)-(o[f>>2]|0)|0;l=(o[p>>2]|0)-(o[l>>2]|0)|0;u=(o[h>>2]|0)-(o[u>>2]|0)|0;o[e+40>>2]=(o[d>>2]|0)-(o[t>>2]|0);o[e+44>>2]=n;o[e+48>>2]=r;o[e+52>>2]=i;o[e+56>>2]=s;o[e+60>>2]=a;o[e+64>>2]=c;o[e+68>>2]=f;o[e+72>>2]=l;o[e+76>>2]=u;u=o[t+84>>2]|0;l=o[t+88>>2]|0;f=o[t+92>>2]|0;c=o[t+96>>2]|0;a=o[t+100>>2]|0;s=o[t+104>>2]|0;i=o[t+108>>2]|0;r=o[t+112>>2]|0;n=o[t+116>>2]|0;o[e+80>>2]=o[t+80>>2];o[e+84>>2]=u;o[e+88>>2]=l;o[e+92>>2]=f;o[e+96>>2]=c;o[e+100>>2]=a;o[e+104>>2]=s;o[e+108>>2]=i;o[e+112>>2]=r;o[e+116>>2]=n;Xr(e+120|0,t+120|0,1200);return}function si(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0;n=h;h=h+48|0;D=n;Yr(e,t);G=e+80|0;fe=t+40|0;Yr(G,fe);w=e+120|0;$r(w,t+80|0);le=e+40|0;ce=(o[t+44>>2]|0)+(o[t+4>>2]|0)|0;ae=(o[t+48>>2]|0)+(o[t+8>>2]|0)|0;se=(o[t+52>>2]|0)+(o[t+12>>2]|0)|0;oe=(o[t+56>>2]|0)+(o[t+16>>2]|0)|0;ie=(o[t+60>>2]|0)+(o[t+20>>2]|0)|0;re=(o[t+64>>2]|0)+(o[t+24>>2]|0)|0;ne=(o[t+68>>2]|0)+(o[t+28>>2]|0)|0;te=(o[t+72>>2]|0)+(o[t+32>>2]|0)|0;ee=(o[t+76>>2]|0)+(o[t+36>>2]|0)|0;o[le>>2]=(o[fe>>2]|0)+(o[t>>2]|0);fe=e+44|0;o[fe>>2]=ce;ce=e+48|0;o[ce>>2]=ae;ae=e+52|0;o[ae>>2]=se;se=e+56|0;o[se>>2]=oe;oe=e+60|0;o[oe>>2]=ie;ie=e+64|0;o[ie>>2]=re;re=e+68|0;o[re>>2]=ne;ne=e+72|0;o[ne>>2]=te;te=e+76|0;o[te>>2]=ee;Yr(D,le);ee=o[G>>2]|0;K=e+84|0;$=o[K>>2]|0;z=e+88|0;Z=o[z>>2]|0;q=e+92|0;J=o[q>>2]|0;F=e+96|0;X=o[F>>2]|0;L=e+100|0;Y=o[L>>2]|0;U=e+104|0;W=o[U>>2]|0;j=e+108|0;Q=o[j>>2]|0;B=e+112|0;V=o[B>>2]|0;N=e+116|0;H=o[N>>2]|0;A=o[e>>2]|0;O=e+4|0;_=o[O>>2]|0;R=e+8|0;b=o[R>>2]|0;I=e+12|0;g=o[I>>2]|0;S=e+16|0;p=o[S>>2]|0;t=e+20|0;u=o[t>>2]|0;s=e+24|0;f=o[s>>2]|0;l=e+28|0;a=o[l>>2]|0;m=e+32|0;i=o[m>>2]|0;v=e+36|0;E=o[v>>2]|0;M=A+ee|0;P=_+$|0;C=b+Z|0;x=g+J|0;T=p+X|0;k=u+Y|0;r=f+W|0;c=a+Q|0;d=i+V|0;y=E+H|0;o[le>>2]=M;o[fe>>2]=P;o[ce>>2]=C;o[ae>>2]=x;o[se>>2]=T;o[oe>>2]=k;o[ie>>2]=r;o[re>>2]=c;o[ne>>2]=d;o[te>>2]=y;A=ee-A|0;_=$-_|0;b=Z-b|0;g=J-g|0;p=X-p|0;u=Y-u|0;f=W-f|0;a=Q-a|0;i=V-i|0;E=H-E|0;o[G>>2]=A;o[K>>2]=_;o[z>>2]=b;o[q>>2]=g;o[F>>2]=p;o[L>>2]=u;o[U>>2]=f;o[j>>2]=a;o[B>>2]=i;o[N>>2]=E;P=(o[D+4>>2]|0)-P|0;C=(o[D+8>>2]|0)-C|0;x=(o[D+12>>2]|0)-x|0;T=(o[D+16>>2]|0)-T|0;k=(o[D+20>>2]|0)-k|0;r=(o[D+24>>2]|0)-r|0;c=(o[D+28>>2]|0)-c|0;d=(o[D+32>>2]|0)-d|0;y=(o[D+36>>2]|0)-y|0;o[e>>2]=(o[D>>2]|0)-M;o[O>>2]=P;o[R>>2]=C;o[I>>2]=x;o[S>>2]=T;o[t>>2]=k;o[s>>2]=r;o[l>>2]=c;o[m>>2]=d;o[v>>2]=y;v=e+124|0;y=e+128|0;m=e+132|0;d=e+136|0;l=e+140|0;c=e+144|0;s=e+148|0;r=e+152|0;t=e+156|0;_=(o[v>>2]|0)-_|0;b=(o[y>>2]|0)-b|0;g=(o[m>>2]|0)-g|0;p=(o[d>>2]|0)-p|0;u=(o[l>>2]|0)-u|0;f=(o[c>>2]|0)-f|0;a=(o[s>>2]|0)-a|0;i=(o[r>>2]|0)-i|0;e=(o[t>>2]|0)-E|0;o[w>>2]=(o[w>>2]|0)-A;o[v>>2]=_;o[y>>2]=b;o[m>>2]=g;o[d>>2]=p;o[l>>2]=u;o[c>>2]=f;o[s>>2]=a;o[r>>2]=i;o[t>>2]=e;h=n;return}function ai(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;c=t+44|0;u=t+48|0;p=t+52|0;y=t+56|0;_=t+60|0;E=t+64|0;T=t+68|0;R=t+72|0;x=t+76|0;G=t+4|0;q=t+8|0;r=t+12|0;d=t+16|0;h=t+20|0;w=t+24|0;A=t+28|0;C=t+32|0;F=t+36|0;se=(o[G>>2]|0)+(o[c>>2]|0)|0;oe=(o[q>>2]|0)+(o[u>>2]|0)|0;ie=(o[r>>2]|0)+(o[p>>2]|0)|0;re=(o[d>>2]|0)+(o[y>>2]|0)|0;ne=(o[h>>2]|0)+(o[_>>2]|0)|0;te=(o[w>>2]|0)+(o[E>>2]|0)|0;ee=(o[A>>2]|0)+(o[T>>2]|0)|0;$=(o[C>>2]|0)+(o[R>>2]|0)|0;X=(o[F>>2]|0)+(o[x>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[c>>2]|0)-(o[G>>2]|0)|0;q=(o[u>>2]|0)-(o[q>>2]|0)|0;r=(o[p>>2]|0)-(o[r>>2]|0)|0;d=(o[y>>2]|0)-(o[d>>2]|0)|0;h=(o[_>>2]|0)-(o[h>>2]|0)|0;w=(o[E>>2]|0)-(o[w>>2]|0)|0;A=(o[T>>2]|0)-(o[A>>2]|0)|0;C=(o[R>>2]|0)-(o[C>>2]|0)|0;F=(o[x>>2]|0)-(o[F>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=q;q=e+52|0;o[q>>2]=r;r=e+56|0;o[r>>2]=d;d=e+60|0;o[d>>2]=h;h=e+64|0;o[h>>2]=w;w=e+68|0;o[w>>2]=A;A=e+72|0;o[A>>2]=C;C=e+76|0;o[C>>2]=F;F=e+80|0;Xr(F,e,n+40|0);Xr(X,X,n);x=e+120|0;Xr(x,n+120|0,t+120|0);Xr(e,t+80|0,n+80|0);R=o[e>>2]<<1;T=o[ae>>2]<<1;E=o[se>>2]<<1;_=o[oe>>2]<<1;y=o[ie>>2]<<1;p=o[re>>2]<<1;u=o[ne>>2]<<1;c=o[te>>2]<<1;i=o[ee>>2]<<1;t=o[$>>2]<<1;J=o[F>>2]|0;L=e+84|0;W=o[L>>2]|0;U=e+88|0;H=o[U>>2]|0;j=e+92|0;z=o[j>>2]|0;B=e+96|0;s=o[B>>2]|0;N=e+100|0;a=o[N>>2]|0;D=e+104|0;m=o[D>>2]|0;M=e+108|0;g=o[M>>2]|0;P=e+112|0;k=o[P>>2]|0;O=e+116|0;S=o[O>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[q>>2]|0;n=o[r>>2]|0;f=o[d>>2]|0;l=o[h>>2]|0;b=o[w>>2]|0;v=o[A>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=z-K;o[ie>>2]=s-n;o[re>>2]=a-f;o[ne>>2]=m-l;o[te>>2]=g-b;o[ee>>2]=k-v;o[$>>2]=S-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[q>>2]=K+z;o[r>>2]=n+s;o[d>>2]=f+a;o[h>>2]=l+m;o[w>>2]=b+g;o[A>>2]=v+k;o[C>>2]=I+S;C=o[x>>2]|0;S=e+124|0;I=o[S>>2]|0;A=e+128|0;k=o[A>>2]|0;v=e+132|0;w=o[v>>2]|0;g=e+136|0;b=o[g>>2]|0;h=e+140|0;m=o[h>>2]|0;l=e+144|0;d=o[l>>2]|0;a=e+148|0;f=o[a>>2]|0;r=e+152|0;s=o[r>>2]|0;n=e+156|0;e=o[n>>2]|0;o[F>>2]=R-C;o[L>>2]=T-I;o[U>>2]=E-k;o[j>>2]=_-w;o[B>>2]=y-b;o[N>>2]=p-m;o[D>>2]=u-d;o[M>>2]=c-f;o[P>>2]=i-s;o[O>>2]=t-e;o[x>>2]=C+R;o[S>>2]=I+T;o[A>>2]=k+E;o[v>>2]=w+_;o[g>>2]=b+y;o[h>>2]=m+p;o[l>>2]=d+u;o[a>>2]=f+c;o[r>>2]=s+i;o[n>>2]=e+t;return}function ci(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;l=t+44|0;h=t+48|0;g=t+52|0;v=t+56|0;A=t+60|0;S=t+64|0;x=t+68|0;O=t+72|0;R=t+76|0;G=t+4|0;z=t+8|0;i=t+12|0;d=t+16|0;p=t+20|0;w=t+24|0;E=t+28|0;C=t+32|0;q=t+36|0;se=(o[G>>2]|0)+(o[l>>2]|0)|0;oe=(o[z>>2]|0)+(o[h>>2]|0)|0;ie=(o[i>>2]|0)+(o[g>>2]|0)|0;re=(o[d>>2]|0)+(o[v>>2]|0)|0;ne=(o[p>>2]|0)+(o[A>>2]|0)|0;te=(o[w>>2]|0)+(o[S>>2]|0)|0;ee=(o[E>>2]|0)+(o[x>>2]|0)|0;$=(o[C>>2]|0)+(o[O>>2]|0)|0;X=(o[q>>2]|0)+(o[R>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[l>>2]|0)-(o[G>>2]|0)|0;z=(o[h>>2]|0)-(o[z>>2]|0)|0;i=(o[g>>2]|0)-(o[i>>2]|0)|0;d=(o[v>>2]|0)-(o[d>>2]|0)|0;p=(o[A>>2]|0)-(o[p>>2]|0)|0;w=(o[S>>2]|0)-(o[w>>2]|0)|0;E=(o[x>>2]|0)-(o[E>>2]|0)|0;C=(o[O>>2]|0)-(o[C>>2]|0)|0;q=(o[R>>2]|0)-(o[q>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=z;z=e+52|0;o[z>>2]=i;i=e+56|0;o[i>>2]=d;d=e+60|0;o[d>>2]=p;p=e+64|0;o[p>>2]=w;w=e+68|0;o[w>>2]=E;E=e+72|0;o[E>>2]=C;C=e+76|0;o[C>>2]=q;q=e+80|0;Xr(q,e,n);Xr(X,X,n+40|0);R=e+120|0;Xr(R,n+80|0,t+120|0);O=o[t+80>>2]<<1;x=o[t+84>>2]<<1;S=o[t+88>>2]<<1;A=o[t+92>>2]<<1;v=o[t+96>>2]<<1;g=o[t+100>>2]<<1;h=o[t+104>>2]<<1;l=o[t+108>>2]<<1;a=o[t+112>>2]<<1;r=o[t+116>>2]<<1;J=o[q>>2]|0;F=e+84|0;W=o[F>>2]|0;L=e+88|0;H=o[L>>2]|0;U=e+92|0;t=o[U>>2]|0;j=e+96|0;s=o[j>>2]|0;B=e+100|0;c=o[B>>2]|0;N=e+104|0;m=o[N>>2]|0;D=e+108|0;y=o[D>>2]|0;M=e+112|0;k=o[M>>2]|0;P=e+116|0;T=o[P>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[z>>2]|0;n=o[i>>2]|0;f=o[d>>2]|0;u=o[p>>2]|0;b=o[w>>2]|0;_=o[E>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=t-K;o[ie>>2]=s-n;o[re>>2]=c-f;o[ne>>2]=m-u;o[te>>2]=y-b;o[ee>>2]=k-_;o[$>>2]=T-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[z>>2]=K+t;o[i>>2]=n+s;o[d>>2]=f+c;o[p>>2]=u+m;o[w>>2]=b+y;o[E>>2]=_+k;o[C>>2]=I+T;C=o[R>>2]|0;T=e+124|0;I=o[T>>2]|0;E=e+128|0;k=o[E>>2]|0;_=e+132|0;w=o[_>>2]|0;y=e+136|0;b=o[y>>2]|0;p=e+140|0;m=o[p>>2]|0;u=e+144|0;d=o[u>>2]|0;c=e+148|0;f=o[c>>2]|0;i=e+152|0;s=o[i>>2]|0;n=e+156|0;t=o[n>>2]|0;o[q>>2]=C+O;o[F>>2]=I+x;o[L>>2]=k+S;o[U>>2]=w+A;o[j>>2]=b+v;o[B>>2]=m+g;o[N>>2]=d+h;o[D>>2]=f+l;o[M>>2]=s+a;o[P>>2]=t+r;o[R>>2]=O-C;o[T>>2]=x-I;o[E>>2]=S-k;o[_>>2]=A-w;o[y>>2]=v-b;o[p>>2]=g-m;o[u>>2]=h-d;o[c>>2]=l-f;o[i>>2]=a-s;o[n>>2]=r-t;return}function fi(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;c=t+44|0;u=t+48|0;p=t+52|0;y=t+56|0;_=t+60|0;E=t+64|0;T=t+68|0;R=t+72|0;x=t+76|0;G=t+4|0;q=t+8|0;r=t+12|0;d=t+16|0;h=t+20|0;w=t+24|0;A=t+28|0;C=t+32|0;F=t+36|0;se=(o[G>>2]|0)+(o[c>>2]|0)|0;oe=(o[q>>2]|0)+(o[u>>2]|0)|0;ie=(o[r>>2]|0)+(o[p>>2]|0)|0;re=(o[d>>2]|0)+(o[y>>2]|0)|0;ne=(o[h>>2]|0)+(o[_>>2]|0)|0;te=(o[w>>2]|0)+(o[E>>2]|0)|0;ee=(o[A>>2]|0)+(o[T>>2]|0)|0;$=(o[C>>2]|0)+(o[R>>2]|0)|0;X=(o[F>>2]|0)+(o[x>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[c>>2]|0)-(o[G>>2]|0)|0;q=(o[u>>2]|0)-(o[q>>2]|0)|0;r=(o[p>>2]|0)-(o[r>>2]|0)|0;d=(o[y>>2]|0)-(o[d>>2]|0)|0;h=(o[_>>2]|0)-(o[h>>2]|0)|0;w=(o[E>>2]|0)-(o[w>>2]|0)|0;A=(o[T>>2]|0)-(o[A>>2]|0)|0;C=(o[R>>2]|0)-(o[C>>2]|0)|0;F=(o[x>>2]|0)-(o[F>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=q;q=e+52|0;o[q>>2]=r;r=e+56|0;o[r>>2]=d;d=e+60|0;o[d>>2]=h;h=e+64|0;o[h>>2]=w;w=e+68|0;o[w>>2]=A;A=e+72|0;o[A>>2]=C;C=e+76|0;o[C>>2]=F;F=e+80|0;Xr(F,e,n+40|0);Xr(X,X,n);x=e+120|0;Xr(x,n+80|0,t+120|0);R=o[t+80>>2]<<1;T=o[t+84>>2]<<1;E=o[t+88>>2]<<1;_=o[t+92>>2]<<1;y=o[t+96>>2]<<1;p=o[t+100>>2]<<1;u=o[t+104>>2]<<1;c=o[t+108>>2]<<1;i=o[t+112>>2]<<1;t=o[t+116>>2]<<1;J=o[F>>2]|0;L=e+84|0;W=o[L>>2]|0;U=e+88|0;H=o[U>>2]|0;j=e+92|0;z=o[j>>2]|0;B=e+96|0;s=o[B>>2]|0;N=e+100|0;a=o[N>>2]|0;D=e+104|0;m=o[D>>2]|0;M=e+108|0;g=o[M>>2]|0;P=e+112|0;k=o[P>>2]|0;O=e+116|0;S=o[O>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[q>>2]|0;n=o[r>>2]|0;f=o[d>>2]|0;l=o[h>>2]|0;b=o[w>>2]|0;v=o[A>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=z-K;o[ie>>2]=s-n;o[re>>2]=a-f;o[ne>>2]=m-l;o[te>>2]=g-b;o[ee>>2]=k-v;o[$>>2]=S-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[q>>2]=K+z;o[r>>2]=n+s;o[d>>2]=f+a;o[h>>2]=l+m;o[w>>2]=b+g;o[A>>2]=v+k;o[C>>2]=I+S;C=o[x>>2]|0;S=e+124|0;I=o[S>>2]|0;A=e+128|0;k=o[A>>2]|0;v=e+132|0;w=o[v>>2]|0;g=e+136|0;b=o[g>>2]|0;h=e+140|0;m=o[h>>2]|0;l=e+144|0;d=o[l>>2]|0;a=e+148|0;f=o[a>>2]|0;r=e+152|0;s=o[r>>2]|0;n=e+156|0;e=o[n>>2]|0;o[F>>2]=R-C;o[L>>2]=T-I;o[U>>2]=E-k;o[j>>2]=_-w;o[B>>2]=y-b;o[N>>2]=p-m;o[D>>2]=u-d;o[M>>2]=c-f;o[P>>2]=i-s;o[O>>2]=t-e;o[x>>2]=C+R;o[S>>2]=I+T;o[A>>2]=k+E;o[v>>2]=w+_;o[g>>2]=b+y;o[h>>2]=m+p;o[l>>2]=d+u;o[a>>2]=f+c;o[r>>2]=s+i;o[n>>2]=e+t;return}function li(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0;me=h;h=h+272|0;le=me+240|0;ue=me+192|0;c=me+144|0;f=me+96|0;de=me+48|0;he=me;pe=e+40|0;Qr(pe,t);l=e+80|0;o[l>>2]=1;a=e+84|0;n=a;i=n+36|0;do{o[n>>2]=0;n=n+4|0}while((n|0)<(i|0));Yr(ue,pe);Xr(c,ue,1248);te=ue+4|0;ne=ue+8|0;re=ue+12|0;ie=ue+16|0;oe=ue+20|0;se=ue+24|0;ae=ue+28|0;ce=ue+32|0;fe=ue+36|0;C=o[l>>2]|0;R=o[a>>2]|0;I=o[e+88>>2]|0;S=o[e+92>>2]|0;E=o[e+96>>2]|0;w=o[e+100>>2]|0;i=o[e+104>>2]|0;ee=o[e+108>>2]|0;Z=o[e+112>>2]|0;X=o[e+116>>2]|0;v=(o[ue>>2]|0)-C|0;_=(o[te>>2]|0)-R|0;l=(o[ne>>2]|0)-I|0;u=(o[re>>2]|0)-S|0;d=(o[ie>>2]|0)-E|0;p=(o[oe>>2]|0)-w|0;m=(o[se>>2]|0)-i|0;g=(o[ae>>2]|0)-ee|0;y=(o[ce>>2]|0)-Z|0;b=(o[fe>>2]|0)-X|0;o[ue>>2]=v;o[te>>2]=_;o[ne>>2]=l;o[re>>2]=u;o[ie>>2]=d;o[oe>>2]=p;o[se>>2]=m;o[ae>>2]=g;o[ce>>2]=y;o[fe>>2]=b;x=c+4|0;T=c+8|0;k=c+12|0;A=c+16|0;a=c+20|0;n=c+24|0;$=c+28|0;J=c+32|0;Y=c+36|0;R=(o[x>>2]|0)+R|0;I=(o[T>>2]|0)+I|0;S=(o[k>>2]|0)+S|0;E=(o[A>>2]|0)+E|0;w=(o[a>>2]|0)+w|0;i=(o[n>>2]|0)+i|0;ee=(o[$>>2]|0)+ee|0;Z=(o[J>>2]|0)+Z|0;X=(o[Y>>2]|0)+X|0;o[c>>2]=(o[c>>2]|0)+C;o[x>>2]=R;o[T>>2]=I;o[k>>2]=S;o[A>>2]=E;o[a>>2]=w;o[n>>2]=i;o[$>>2]=ee;o[J>>2]=Z;o[Y>>2]=X;Yr(f,c);Xr(f,f,c);Yr(e,f);Xr(e,e,c);Xr(e,e,ue);Zr(e,e);Xr(e,e,f);Xr(e,e,ue);Yr(de,e);Xr(de,de,c);Y=de+4|0;X=de+8|0;J=de+12|0;Z=de+16|0;$=de+20|0;ee=de+24|0;n=de+28|0;i=de+32|0;a=de+36|0;f=(o[Y>>2]|0)-_|0;l=(o[X>>2]|0)-l|0;u=(o[J>>2]|0)-u|0;d=(o[Z>>2]|0)-d|0;p=(o[$>>2]|0)-p|0;m=(o[ee>>2]|0)-m|0;g=(o[n>>2]|0)-g|0;y=(o[i>>2]|0)-y|0;b=(o[a>>2]|0)-b|0;o[he>>2]=(o[de>>2]|0)-v;c=he+4|0;o[c>>2]=f;f=he+8|0;o[f>>2]=l;l=he+12|0;o[l>>2]=u;u=he+16|0;o[u>>2]=d;d=he+20|0;o[d>>2]=p;p=he+24|0;o[p>>2]=m;m=he+28|0;o[m>>2]=g;g=he+32|0;o[g>>2]=y;y=he+36|0;o[y>>2]=b;Jr(le,he);b=le+1|0;v=le+2|0;_=le+3|0;w=le+4|0;A=le+5|0;E=le+6|0;k=le+7|0;S=le+8|0;T=le+9|0;I=le+10|0;x=le+11|0;R=le+12|0;C=le+13|0;O=le+14|0;P=le+15|0;M=le+16|0;D=le+17|0;N=le+18|0;B=le+19|0;j=le+20|0;U=le+21|0;L=le+22|0;F=le+23|0;q=le+24|0;z=le+25|0;K=le+26|0;G=le+27|0;H=le+28|0;V=le+29|0;Q=le+30|0;W=le+31|0;do{if((r[b>>0]|r[le>>0]|r[v>>0]|r[_>>0]|r[w>>0]|r[A>>0]|r[E>>0]|r[k>>0]|r[S>>0]|r[T>>0]|r[I>>0]|r[x>>0]|r[R>>0]|r[C>>0]|r[O>>0]|r[P>>0]|r[M>>0]|r[D>>0]|r[N>>0]|r[B>>0]|r[j>>0]|r[U>>0]|r[L>>0]|r[F>>0]|r[q>>0]|r[z>>0]|r[K>>0]|r[G>>0]|r[H>>0]|r[V>>0]|r[Q>>0]|r[W>>0])<<24>>24){te=(o[te>>2]|0)+(o[Y>>2]|0)|0;ne=(o[ne>>2]|0)+(o[X>>2]|0)|0;re=(o[re>>2]|0)+(o[J>>2]|0)|0;ie=(o[ie>>2]|0)+(o[Z>>2]|0)|0;oe=(o[oe>>2]|0)+(o[$>>2]|0)|0;se=(o[se>>2]|0)+(o[ee>>2]|0)|0;ae=(o[ae>>2]|0)+(o[n>>2]|0)|0;ce=(o[ce>>2]|0)+(o[i>>2]|0)|0;fe=(o[fe>>2]|0)+(o[a>>2]|0)|0;o[he>>2]=(o[ue>>2]|0)+(o[de>>2]|0);o[c>>2]=te;o[f>>2]=ne;o[l>>2]=re;o[u>>2]=ie;o[d>>2]=oe;o[p>>2]=se;o[m>>2]=ae;o[g>>2]=ce;o[y>>2]=fe;Jr(le,he);if(!((r[b>>0]|r[le>>0]|r[v>>0]|r[_>>0]|r[w>>0]|r[A>>0]|r[E>>0]|r[k>>0]|r[S>>0]|r[T>>0]|r[I>>0]|r[x>>0]|r[R>>0]|r[C>>0]|r[O>>0]|r[P>>0]|r[M>>0]|r[D>>0]|r[N>>0]|r[B>>0]|r[j>>0]|r[U>>0]|r[L>>0]|r[F>>0]|r[q>>0]|r[z>>0]|r[K>>0]|r[G>>0]|r[H>>0]|r[V>>0]|r[Q>>0]|r[W>>0])<<24>>24)){Xr(e,e,1296);break}else{pe=-1;h=me;return pe|0}}}while(0);Jr(le,e);if(((s[t+31>>0]|0)>>>7|0)==(r[le>>0]&1|0)){Z=e+4|0;ee=e+8|0;ne=e+12|0;ie=e+16|0;se=e+20|0;ce=e+24|0;t=e+28|0;ue=e+32|0;he=e+36|0;J=0-(o[Z>>2]|0)|0;$=0-(o[ee>>2]|0)|0;te=0-(o[ne>>2]|0)|0;re=0-(o[ie>>2]|0)|0;oe=0-(o[se>>2]|0)|0;ae=0-(o[ce>>2]|0)|0;fe=0-(o[t>>2]|0)|0;le=0-(o[ue>>2]|0)|0;de=0-(o[he>>2]|0)|0;o[e>>2]=0-(o[e>>2]|0);o[Z>>2]=J;o[ee>>2]=$;o[ne>>2]=te;o[ie>>2]=re;o[se>>2]=oe;o[ce>>2]=ae;o[t>>2]=fe;o[ue>>2]=le;o[he>>2]=de}Xr(e+120|0,e,pe);pe=0;h=me;return pe|0}function ui(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0;v=h;h=h+592|0;p=v+464|0;g=v;y=v+304|0;m=v+184|0;b=v+64|0;i=r[t>>0]|0;r[g>>0]=i&15;r[g+1>>0]=(i&255)>>>4;i=r[t+1>>0]|0;r[g+2>>0]=i&15;r[g+3>>0]=(i&255)>>>4;i=r[t+2>>0]|0;r[g+4>>0]=i&15;r[g+5>>0]=(i&255)>>>4;i=r[t+3>>0]|0;r[g+6>>0]=i&15;r[g+7>>0]=(i&255)>>>4;i=r[t+4>>0]|0;r[g+8>>0]=i&15;r[g+9>>0]=(i&255)>>>4;i=r[t+5>>0]|0;r[g+10>>0]=i&15;r[g+11>>0]=(i&255)>>>4;i=r[t+6>>0]|0;r[g+12>>0]=i&15;r[g+13>>0]=(i&255)>>>4;i=r[t+7>>0]|0;r[g+14>>0]=i&15;r[g+15>>0]=(i&255)>>>4;i=r[t+8>>0]|0;r[g+16>>0]=i&15;r[g+17>>0]=(i&255)>>>4;i=r[t+9>>0]|0;r[g+18>>0]=i&15;r[g+19>>0]=(i&255)>>>4;i=r[t+10>>0]|0;r[g+20>>0]=i&15;r[g+21>>0]=(i&255)>>>4;i=r[t+11>>0]|0;r[g+22>>0]=i&15;r[g+23>>0]=(i&255)>>>4;i=r[t+12>>0]|0;r[g+24>>0]=i&15;r[g+25>>0]=(i&255)>>>4;i=r[t+13>>0]|0;r[g+26>>0]=i&15;r[g+27>>0]=(i&255)>>>4;i=r[t+14>>0]|0;r[g+28>>0]=i&15;r[g+29>>0]=(i&255)>>>4;i=r[t+15>>0]|0;r[g+30>>0]=i&15;r[g+31>>0]=(i&255)>>>4;i=r[t+16>>0]|0;r[g+32>>0]=i&15;r[g+33>>0]=(i&255)>>>4;i=r[t+17>>0]|0;r[g+34>>0]=i&15;r[g+35>>0]=(i&255)>>>4;i=r[t+18>>0]|0;r[g+36>>0]=i&15;r[g+37>>0]=(i&255)>>>4;i=r[t+19>>0]|0;r[g+38>>0]=i&15;r[g+39>>0]=(i&255)>>>4;i=r[t+20>>0]|0;r[g+40>>0]=i&15;r[g+41>>0]=(i&255)>>>4;i=r[t+21>>0]|0;r[g+42>>0]=i&15;r[g+43>>0]=(i&255)>>>4;i=r[t+22>>0]|0;r[g+44>>0]=i&15;r[g+45>>0]=(i&255)>>>4;i=r[t+23>>0]|0;r[g+46>>0]=i&15;r[g+47>>0]=(i&255)>>>4;i=r[t+24>>0]|0;r[g+48>>0]=i&15;r[g+49>>0]=(i&255)>>>4;i=r[t+25>>0]|0;r[g+50>>0]=i&15;r[g+51>>0]=(i&255)>>>4;i=r[t+26>>0]|0;r[g+52>>0]=i&15;r[g+53>>0]=(i&255)>>>4;i=r[t+27>>0]|0;r[g+54>>0]=i&15;r[g+55>>0]=(i&255)>>>4;i=r[t+28>>0]|0;r[g+56>>0]=i&15;r[g+57>>0]=(i&255)>>>4;i=r[t+29>>0]|0;r[g+58>>0]=i&15;r[g+59>>0]=(i&255)>>>4;i=r[t+30>>0]|0;r[g+60>>0]=i&15;r[g+61>>0]=(i&255)>>>4;t=r[t+31>>0]|0;r[g+62>>0]=t&15;i=g+63|0;r[i>>0]=(t&255)>>>4;t=0;n=0;do{d=g+n|0;u=t+(s[d>>0]|0)|0;t=(u<<24)+134217728>>28;r[d>>0]=u-(t<<4);n=n+1|0}while((n|0)!=63);r[i>>0]=t+(s[i>>0]|0);t=e;n=t+40|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));u=e+40|0;o[u>>2]=1;f=e+44|0;t=f;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));d=e+80|0;o[d>>2]=1;l=e+84|0;t=l;n=t+76|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));n=y+120|0;i=y+40|0;a=y+80|0;c=e+120|0;t=1;do{di(b,t>>>1,r[g+t>>0]|0);ci(y,e,b);Xr(e,y,n);Xr(u,i,a);Xr(d,a,n);Xr(c,y,i);t=t+2|0}while(t>>>0<64);I=o[e+4>>2]|0;S=o[e+8>>2]|0;k=o[e+12>>2]|0;E=o[e+16>>2]|0;A=o[e+20>>2]|0;w=o[e+24>>2]|0;_=o[e+28>>2]|0;t=o[e+32>>2]|0;T=o[e+36>>2]|0;o[p>>2]=o[e>>2];o[p+4>>2]=I;o[p+8>>2]=S;o[p+12>>2]=k;o[p+16>>2]=E;o[p+20>>2]=A;o[p+24>>2]=w;o[p+28>>2]=_;o[p+32>>2]=t;o[p+36>>2]=T;T=o[f>>2]|0;t=o[e+48>>2]|0;f=o[e+52>>2]|0;_=o[e+56>>2]|0;w=o[e+60>>2]|0;A=o[e+64>>2]|0;E=o[e+68>>2]|0;k=o[e+72>>2]|0;S=o[e+76>>2]|0;o[p+40>>2]=o[u>>2];o[p+44>>2]=T;o[p+48>>2]=t;o[p+52>>2]=f;o[p+56>>2]=_;o[p+60>>2]=w;o[p+64>>2]=A;o[p+68>>2]=E;o[p+72>>2]=k;o[p+76>>2]=S;S=o[l>>2]|0;k=o[e+88>>2]|0;E=o[e+92>>2]|0;A=o[e+96>>2]|0;w=o[e+100>>2]|0;_=o[e+104>>2]|0;f=o[e+108>>2]|0;l=o[e+112>>2]|0;t=o[e+116>>2]|0;o[p+80>>2]=o[d>>2];o[p+84>>2]=S;o[p+88>>2]=k;o[p+92>>2]=E;o[p+96>>2]=A;o[p+100>>2]=w;o[p+104>>2]=_;o[p+108>>2]=f;o[p+112>>2]=l;o[p+116>>2]=t;si(y,p);Xr(m,y,n);p=m+40|0;Xr(p,i,a);t=m+80|0;Xr(t,a,n);si(y,m);Xr(m,y,n);Xr(p,i,a);Xr(t,a,n);si(y,m);Xr(m,y,n);Xr(p,i,a);Xr(t,a,n);si(y,m);Xr(e,y,n);Xr(u,i,a);Xr(d,a,n);Xr(c,y,i);t=0;do{di(b,t>>>1,r[g+t>>0]|0);ci(y,e,b);Xr(e,y,n);Xr(u,i,a);Xr(d,a,n);Xr(c,y,i);t=t+2|0}while(t>>>0<64);h=v;return}function di(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0;r=n<<24>>24;b=0-((n&255)>>>7&255)|0;n=r-((b&r)<<1)&255;o[e>>2]=1;r=e+4|0;v=r;_=v+36|0;do{o[v>>2]=0;v=v+4|0}while((v|0)<(_|0));i=e+40|0;o[i>>2]=1;s=e+44|0;a=e+80|0;c=ks((n^1)&255|0,0,-1,-1)|0;c=Cs(c|0,T|0,63)|0;f=1344+(t*960|0)|0;l=e+8|0;u=e+12|0;d=e+16|0;h=e+20|0;p=e+24|0;m=e+28|0;g=e+32|0;y=e+36|0;v=s;_=v+76|0;do{o[v>>2]=0;v=v+4|0}while((v|0)<(_|0));_e=0-c|0;ye=o[1344+(t*960|0)+4>>2]&_e;ge=o[1344+(t*960|0)+8>>2]&_e;me=o[1344+(t*960|0)+12>>2]&_e;pe=o[1344+(t*960|0)+16>>2]&_e;he=o[1344+(t*960|0)+20>>2]&_e;de=o[1344+(t*960|0)+24>>2]&_e;ue=o[1344+(t*960|0)+28>>2]&_e;le=o[1344+(t*960|0)+32>>2]&_e;fe=o[1344+(t*960|0)+36>>2]&_e;be=(o[f>>2]^1)&_e^1;o[e>>2]=be;o[r>>2]=ye;o[l>>2]=ge;o[u>>2]=me;o[d>>2]=pe;o[h>>2]=he;o[p>>2]=de;o[m>>2]=ue;o[g>>2]=le;o[y>>2]=fe;ne=e+48|0;$=e+52|0;X=e+56|0;Q=e+60|0;G=e+64|0;q=e+68|0;U=e+72|0;N=e+76|0;oe=o[1344+(t*960|0)+44>>2]&_e;re=o[1344+(t*960|0)+48>>2]&_e;ee=o[1344+(t*960|0)+52>>2]&_e;J=o[1344+(t*960|0)+56>>2]&_e;W=o[1344+(t*960|0)+60>>2]&_e;H=o[1344+(t*960|0)+64>>2]&_e;z=o[1344+(t*960|0)+68>>2]&_e;L=o[1344+(t*960|0)+72>>2]&_e;B=o[1344+(t*960|0)+76>>2]&_e;ae=(o[1344+(t*960|0)+40>>2]^1)&_e^1;o[i>>2]=ae;o[s>>2]=oe;o[ne>>2]=re;o[$>>2]=ee;o[X>>2]=J;o[Q>>2]=W;o[G>>2]=H;o[q>>2]=z;o[U>>2]=L;o[N>>2]=B;D=o[a>>2]|0;P=e+84|0;M=o[P>>2]|0;C=e+88|0;O=o[C>>2]|0;x=e+92|0;R=o[x>>2]|0;S=e+96|0;I=o[S>>2]|0;E=e+100|0;k=o[E>>2]|0;w=e+104|0;A=o[w>>2]|0;c=e+108|0;Z=o[c>>2]|0;v=e+112|0;f=o[v>>2]|0;_=e+116|0;se=o[_>>2]|0;ie=(o[1344+(t*960|0)+84>>2]^M)&_e;te=(o[1344+(t*960|0)+88>>2]^O)&_e;Y=(o[1344+(t*960|0)+92>>2]^R)&_e;V=(o[1344+(t*960|0)+96>>2]^I)&_e;K=(o[1344+(t*960|0)+100>>2]^k)&_e;F=(o[1344+(t*960|0)+104>>2]^A)&_e;j=(o[1344+(t*960|0)+108>>2]^Z)&_e;ce=(o[1344+(t*960|0)+112>>2]^f)&_e;ve=(o[1344+(t*960|0)+116>>2]^se)&_e;D=(o[1344+(t*960|0)+80>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^2)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+124>>2]^ye)&ve;j=(o[1344+(t*960|0)+128>>2]^ge)&ve;F=(o[1344+(t*960|0)+132>>2]^me)&ve;K=(o[1344+(t*960|0)+136>>2]^pe)&ve;V=(o[1344+(t*960|0)+140>>2]^he)&ve;Y=(o[1344+(t*960|0)+144>>2]^de)&ve;te=(o[1344+(t*960|0)+148>>2]^ue)&ve;ie=(o[1344+(t*960|0)+152>>2]^le)&ve;_e=(o[1344+(t*960|0)+156>>2]^fe)&ve;be=(o[1344+(t*960|0)+120>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=te^ue;o[m>>2]=ue;le=ie^le;o[g>>2]=le;fe=_e^fe;o[y>>2]=fe;_e=(o[1344+(t*960|0)+164>>2]^oe)&ve;ie=(o[1344+(t*960|0)+168>>2]^re)&ve;te=(o[1344+(t*960|0)+172>>2]^ee)&ve;Y=(o[1344+(t*960|0)+176>>2]^J)&ve;V=(o[1344+(t*960|0)+180>>2]^W)&ve;K=(o[1344+(t*960|0)+184>>2]^H)&ve;F=(o[1344+(t*960|0)+188>>2]^z)&ve;j=(o[1344+(t*960|0)+192>>2]^L)&ve;ce=(o[1344+(t*960|0)+196>>2]^B)&ve;ae=(o[1344+(t*960|0)+160>>2]^ae)&ve^ae;o[i>>2]=ae;oe=_e^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;B=ce^B;o[N>>2]=B;ce=(o[1344+(t*960|0)+204>>2]^M)&ve;j=(o[1344+(t*960|0)+208>>2]^O)&ve;F=(o[1344+(t*960|0)+212>>2]^R)&ve;K=(o[1344+(t*960|0)+216>>2]^I)&ve;V=(o[1344+(t*960|0)+220>>2]^k)&ve;Y=(o[1344+(t*960|0)+224>>2]^A)&ve;te=(o[1344+(t*960|0)+228>>2]^Z)&ve;ie=(o[1344+(t*960|0)+232>>2]^f)&ve;_e=(o[1344+(t*960|0)+236>>2]^se)&ve;D=(o[1344+(t*960|0)+200>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;Z=te^Z;o[c>>2]=Z;f=ie^f;o[v>>2]=f;se=_e^se;o[_>>2]=se;_e=ks((n^3)&255|0,0,-1,-1)|0;_e=Cs(_e|0,T|0,63)|0;_e=0-_e|0;ie=(o[1344+(t*960|0)+244>>2]^ye)&_e;te=(o[1344+(t*960|0)+248>>2]^ge)&_e;Y=(o[1344+(t*960|0)+252>>2]^me)&_e;V=(o[1344+(t*960|0)+256>>2]^pe)&_e;K=(o[1344+(t*960|0)+260>>2]^he)&_e;F=(o[1344+(t*960|0)+264>>2]^de)&_e;j=(o[1344+(t*960|0)+268>>2]^ue)&_e;ce=(o[1344+(t*960|0)+272>>2]^le)&_e;ve=(o[1344+(t*960|0)+276>>2]^fe)&_e;be=(o[1344+(t*960|0)+240>>2]^be)&_e^be;o[e>>2]=be;ye=ie^ye;o[r>>2]=ye;ge=te^ge;o[l>>2]=ge;me=Y^me;o[u>>2]=me;pe=V^pe;o[d>>2]=pe;he=K^he;o[h>>2]=he;de=F^de;o[p>>2]=de;ue=j^ue;o[m>>2]=ue;le=ce^le;o[g>>2]=le;fe=ve^fe;o[y>>2]=fe;ve=(o[1344+(t*960|0)+284>>2]^oe)&_e;ce=(o[1344+(t*960|0)+288>>2]^re)&_e;j=(o[1344+(t*960|0)+292>>2]^ee)&_e;F=(o[1344+(t*960|0)+296>>2]^J)&_e;K=(o[1344+(t*960|0)+300>>2]^W)&_e;V=(o[1344+(t*960|0)+304>>2]^H)&_e;Y=(o[1344+(t*960|0)+308>>2]^z)&_e;te=(o[1344+(t*960|0)+312>>2]^L)&_e;ie=(o[1344+(t*960|0)+316>>2]^B)&_e;ae=(o[1344+(t*960|0)+280>>2]^ae)&_e^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ce^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=F^J;o[X>>2]=J;W=K^W;o[Q>>2]=W;H=V^H;o[G>>2]=H;z=Y^z;o[q>>2]=z;L=te^L;o[U>>2]=L;B=ie^B;o[N>>2]=B;ie=(o[1344+(t*960|0)+324>>2]^M)&_e;te=(o[1344+(t*960|0)+328>>2]^O)&_e;Y=(o[1344+(t*960|0)+332>>2]^R)&_e;V=(o[1344+(t*960|0)+336>>2]^I)&_e;K=(o[1344+(t*960|0)+340>>2]^k)&_e;F=(o[1344+(t*960|0)+344>>2]^A)&_e;j=(o[1344+(t*960|0)+348>>2]^Z)&_e;ce=(o[1344+(t*960|0)+352>>2]^f)&_e;ve=(o[1344+(t*960|0)+356>>2]^se)&_e;D=(o[1344+(t*960|0)+320>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^4)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+364>>2]^ye)&ve;j=(o[1344+(t*960|0)+368>>2]^ge)&ve;F=(o[1344+(t*960|0)+372>>2]^me)&ve;K=(o[1344+(t*960|0)+376>>2]^pe)&ve;V=(o[1344+(t*960|0)+380>>2]^he)&ve;Y=(o[1344+(t*960|0)+384>>2]^de)&ve;te=(o[1344+(t*960|0)+388>>2]^ue)&ve;ie=(o[1344+(t*960|0)+392>>2]^le)&ve;_e=(o[1344+(t*960|0)+396>>2]^fe)&ve;be=(o[1344+(t*960|0)+360>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=te^ue;o[m>>2]=ue;le=ie^le;o[g>>2]=le;fe=_e^fe;o[y>>2]=fe;_e=(o[1344+(t*960|0)+404>>2]^oe)&ve;ie=(o[1344+(t*960|0)+408>>2]^re)&ve;te=(o[1344+(t*960|0)+412>>2]^ee)&ve;Y=(o[1344+(t*960|0)+416>>2]^J)&ve;V=(o[1344+(t*960|0)+420>>2]^W)&ve;K=(o[1344+(t*960|0)+424>>2]^H)&ve;F=(o[1344+(t*960|0)+428>>2]^z)&ve;j=(o[1344+(t*960|0)+432>>2]^L)&ve;ce=(o[1344+(t*960|0)+436>>2]^B)&ve;ae=(o[1344+(t*960|0)+400>>2]^ae)&ve^ae;o[i>>2]=ae;oe=_e^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;B=ce^B;o[N>>2]=B;ce=(o[1344+(t*960|0)+444>>2]^M)&ve;j=(o[1344+(t*960|0)+448>>2]^O)&ve;F=(o[1344+(t*960|0)+452>>2]^R)&ve;K=(o[1344+(t*960|0)+456>>2]^I)&ve;V=(o[1344+(t*960|0)+460>>2]^k)&ve;Y=(o[1344+(t*960|0)+464>>2]^A)&ve;te=(o[1344+(t*960|0)+468>>2]^Z)&ve;ie=(o[1344+(t*960|0)+472>>2]^f)&ve;_e=(o[1344+(t*960|0)+476>>2]^se)&ve;D=(o[1344+(t*960|0)+440>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;Z=te^Z;o[c>>2]=Z;f=ie^f;o[v>>2]=f;se=_e^se;o[_>>2]=se;_e=ks((n^5)&255|0,0,-1,-1)|0;_e=Cs(_e|0,T|0,63)|0;_e=0-_e|0;ie=(o[1344+(t*960|0)+484>>2]^ye)&_e;te=(o[1344+(t*960|0)+488>>2]^ge)&_e;Y=(o[1344+(t*960|0)+492>>2]^me)&_e;V=(o[1344+(t*960|0)+496>>2]^pe)&_e;K=(o[1344+(t*960|0)+500>>2]^he)&_e;F=(o[1344+(t*960|0)+504>>2]^de)&_e;j=(o[1344+(t*960|0)+508>>2]^ue)&_e;ce=(o[1344+(t*960|0)+512>>2]^le)&_e;ve=(o[1344+(t*960|0)+516>>2]^fe)&_e;be=(o[1344+(t*960|0)+480>>2]^be)&_e^be;o[e>>2]=be;ye=ie^ye;o[r>>2]=ye;ge=te^ge;o[l>>2]=ge;me=Y^me;o[u>>2]=me;pe=V^pe;o[d>>2]=pe;he=K^he;o[h>>2]=he;de=F^de;o[p>>2]=de;ue=j^ue;o[m>>2]=ue;le=ce^le;o[g>>2]=le;fe=ve^fe;o[y>>2]=fe;ve=(o[1344+(t*960|0)+524>>2]^oe)&_e;ce=(o[1344+(t*960|0)+528>>2]^re)&_e;j=(o[1344+(t*960|0)+532>>2]^ee)&_e;F=(o[1344+(t*960|0)+536>>2]^J)&_e;K=(o[1344+(t*960|0)+540>>2]^W)&_e;V=(o[1344+(t*960|0)+544>>2]^H)&_e;Y=(o[1344+(t*960|0)+548>>2]^z)&_e;te=(o[1344+(t*960|0)+552>>2]^L)&_e;ie=(o[1344+(t*960|0)+556>>2]^B)&_e;ae=(o[1344+(t*960|0)+520>>2]^ae)&_e^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ce^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=F^J;o[X>>2]=J;W=K^W;o[Q>>2]=W;H=V^H;o[G>>2]=H;z=Y^z;o[q>>2]=z;L=te^L;o[U>>2]=L;B=ie^B;o[N>>2]=B;ie=(o[1344+(t*960|0)+564>>2]^M)&_e;te=(o[1344+(t*960|0)+568>>2]^O)&_e;Y=(o[1344+(t*960|0)+572>>2]^R)&_e;V=(o[1344+(t*960|0)+576>>2]^I)&_e;K=(o[1344+(t*960|0)+580>>2]^k)&_e;F=(o[1344+(t*960|0)+584>>2]^A)&_e;j=(o[1344+(t*960|0)+588>>2]^Z)&_e;ce=(o[1344+(t*960|0)+592>>2]^f)&_e;ve=(o[1344+(t*960|0)+596>>2]^se)&_e;D=(o[1344+(t*960|0)+560>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^6)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+604>>2]^ye)&ve;j=(o[1344+(t*960|0)+608>>2]^ge)&ve;F=(o[1344+(t*960|0)+612>>2]^me)&ve;K=(o[1344+(t*960|0)+616>>2]^pe)&ve;V=(o[1344+(t*960|0)+620>>2]^he)&ve;Y=(o[1344+(t*960|0)+624>>2]^de)&ve;te=(o[1344+(t*960|0)+628>>2]^ue)&ve;ie=(o[1344+(t*960|0)+632>>2]^le)&ve;_e=(o[1344+(t*960|0)+636>>2]^fe)&ve;be=(o[1344+(t*960|0)+600>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=te^ue;o[m>>2]=ue;le=ie^le;o[g>>2]=le;fe=_e^fe;o[y>>2]=fe;_e=(o[1344+(t*960|0)+644>>2]^oe)&ve;ie=(o[1344+(t*960|0)+648>>2]^re)&ve;te=(o[1344+(t*960|0)+652>>2]^ee)&ve;Y=(o[1344+(t*960|0)+656>>2]^J)&ve;V=(o[1344+(t*960|0)+660>>2]^W)&ve;K=(o[1344+(t*960|0)+664>>2]^H)&ve;F=(o[1344+(t*960|0)+668>>2]^z)&ve;j=(o[1344+(t*960|0)+672>>2]^L)&ve;ce=(o[1344+(t*960|0)+676>>2]^B)&ve;ae=(o[1344+(t*960|0)+640>>2]^ae)&ve^ae;o[i>>2]=ae;oe=_e^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;B=ce^B;o[N>>2]=B;ce=(o[1344+(t*960|0)+684>>2]^M)&ve;j=(o[1344+(t*960|0)+688>>2]^O)&ve;F=(o[1344+(t*960|0)+692>>2]^R)&ve;K=(o[1344+(t*960|0)+696>>2]^I)&ve;V=(o[1344+(t*960|0)+700>>2]^k)&ve;Y=(o[1344+(t*960|0)+704>>2]^A)&ve;te=(o[1344+(t*960|0)+708>>2]^Z)&ve;ie=(o[1344+(t*960|0)+712>>2]^f)&ve;_e=(o[1344+(t*960|0)+716>>2]^se)&ve;D=(o[1344+(t*960|0)+680>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;Z=te^Z;o[c>>2]=Z;f=ie^f;o[v>>2]=f;se=_e^se;o[_>>2]=se;_e=ks((n^7)&255|0,0,-1,-1)|0;_e=Cs(_e|0,T|0,63)|0;_e=0-_e|0;ie=(o[1344+(t*960|0)+724>>2]^ye)&_e;te=(o[1344+(t*960|0)+728>>2]^ge)&_e;Y=(o[1344+(t*960|0)+732>>2]^me)&_e;V=(o[1344+(t*960|0)+736>>2]^pe)&_e;K=(o[1344+(t*960|0)+740>>2]^he)&_e;F=(o[1344+(t*960|0)+744>>2]^de)&_e;j=(o[1344+(t*960|0)+748>>2]^ue)&_e;ce=(o[1344+(t*960|0)+752>>2]^le)&_e;ve=(o[1344+(t*960|0)+756>>2]^fe)&_e;be=(o[1344+(t*960|0)+720>>2]^be)&_e^be;o[e>>2]=be;ye=ie^ye;o[r>>2]=ye;ge=te^ge;o[l>>2]=ge;me=Y^me;o[u>>2]=me;pe=V^pe;o[d>>2]=pe;he=K^he;o[h>>2]=he;de=F^de;o[p>>2]=de;ue=j^ue;o[m>>2]=ue;le=ce^le;o[g>>2]=le;fe=ve^fe;o[y>>2]=fe;ve=(o[1344+(t*960|0)+764>>2]^oe)&_e;ce=(o[1344+(t*960|0)+768>>2]^re)&_e;j=(o[1344+(t*960|0)+772>>2]^ee)&_e;F=(o[1344+(t*960|0)+776>>2]^J)&_e;K=(o[1344+(t*960|0)+780>>2]^W)&_e;V=(o[1344+(t*960|0)+784>>2]^H)&_e;Y=(o[1344+(t*960|0)+788>>2]^z)&_e;te=(o[1344+(t*960|0)+792>>2]^L)&_e;ie=(o[1344+(t*960|0)+796>>2]^B)&_e;ae=(o[1344+(t*960|0)+760>>2]^ae)&_e^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ce^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=F^J;o[X>>2]=J;W=K^W;o[Q>>2]=W;H=V^H;o[G>>2]=H;z=Y^z;o[q>>2]=z;L=te^L;o[U>>2]=L;B=ie^B;o[N>>2]=B;ie=(o[1344+(t*960|0)+804>>2]^M)&_e;te=(o[1344+(t*960|0)+808>>2]^O)&_e;Y=(o[1344+(t*960|0)+812>>2]^R)&_e;V=(o[1344+(t*960|0)+816>>2]^I)&_e;K=(o[1344+(t*960|0)+820>>2]^k)&_e;F=(o[1344+(t*960|0)+824>>2]^A)&_e;j=(o[1344+(t*960|0)+828>>2]^Z)&_e;ce=(o[1344+(t*960|0)+832>>2]^f)&_e;ve=(o[1344+(t*960|0)+836>>2]^se)&_e;D=(o[1344+(t*960|0)+800>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^8)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+844>>2]^ye)&ve;j=(o[1344+(t*960|0)+848>>2]^ge)&ve;F=(o[1344+(t*960|0)+852>>2]^me)&ve;K=(o[1344+(t*960|0)+856>>2]^pe)&ve;V=(o[1344+(t*960|0)+860>>2]^he)&ve;Y=(o[1344+(t*960|0)+864>>2]^de)&ve;n=(o[1344+(t*960|0)+868>>2]^ue)&ve;te=(o[1344+(t*960|0)+872>>2]^le)&ve;ie=(o[1344+(t*960|0)+876>>2]^fe)&ve;be=(o[1344+(t*960|0)+840>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=n^ue;o[m>>2]=ue;le=te^le;o[g>>2]=le;fe=ie^fe;o[y>>2]=fe;ie=(o[1344+(t*960|0)+884>>2]^oe)&ve;te=(o[1344+(t*960|0)+888>>2]^re)&ve;n=(o[1344+(t*960|0)+892>>2]^ee)&ve;Y=(o[1344+(t*960|0)+896>>2]^J)&ve;V=(o[1344+(t*960|0)+900>>2]^W)&ve;K=(o[1344+(t*960|0)+904>>2]^H)&ve;F=(o[1344+(t*960|0)+908>>2]^z)&ve;j=(o[1344+(t*960|0)+912>>2]^L)&ve;ce=(o[1344+(t*960|0)+916>>2]^B)&ve;ae=(o[1344+(t*960|0)+880>>2]^ae)&ve^ae;o[i>>2]=ae;oe=ie^oe;o[s>>2]=oe;re=te^re;o[ne>>2]=re;ee=n^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;B=ce^B;o[N>>2]=B;ce=(o[1344+(t*960|0)+924>>2]^M)&ve;j=(o[1344+(t*960|0)+928>>2]^O)&ve;F=(o[1344+(t*960|0)+932>>2]^R)&ve;K=(o[1344+(t*960|0)+936>>2]^I)&ve;V=(o[1344+(t*960|0)+940>>2]^k)&ve;Y=(o[1344+(t*960|0)+944>>2]^A)&ve;n=(o[1344+(t*960|0)+948>>2]^Z)&ve;te=(o[1344+(t*960|0)+952>>2]^f)&ve;ie=(o[1344+(t*960|0)+956>>2]^se)&ve;D=(o[1344+(t*960|0)+920>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;n=n^Z;o[c>>2]=n;f=te^f;o[v>>2]=f;t=ie^se;o[_>>2]=t;se=o[r>>2]|0;ie=o[l>>2]|0;te=o[u>>2]|0;Z=o[d>>2]|0;Y=o[h>>2]|0;V=o[p>>2]|0;K=o[m>>2]|0;F=o[g>>2]|0;j=o[y>>2]|0;ce=(ae^be)&b;o[e>>2]=ce^be;o[r>>2]=(oe^ye)&b^ye;o[l>>2]=(re^ge)&b^ge;o[u>>2]=(ee^me)&b^me;o[d>>2]=(J^pe)&b^pe;o[h>>2]=(W^he)&b^he;o[p>>2]=(H^de)&b^de;o[m>>2]=(z^ue)&b^ue;o[g>>2]=(L^le)&b^le;o[y>>2]=(B^fe)&b^fe;o[i>>2]=ce^ae;o[s>>2]=(se^oe)&b^oe;o[ne>>2]=(ie^re)&b^re;o[$>>2]=(te^ee)&b^ee;o[X>>2]=(Z^J)&b^J;o[Q>>2]=(Y^W)&b^W;o[G>>2]=(V^H)&b^H;o[q>>2]=(K^z)&b^z;o[U>>2]=(F^L)&b^L;o[N>>2]=(j^B)&b^B;o[a>>2]=(D^0-D)&b^D;o[P>>2]=(M^0-M)&b^M;o[C>>2]=(O^0-O)&b^O;o[x>>2]=(R^0-R)&b^R;o[S>>2]=(I^0-I)&b^I;o[E>>2]=(k^0-k)&b^k;o[w>>2]=(A^0-A)&b^A;o[c>>2]=(n^0-n)&b^n;o[v>>2]=(f^0-f)&b^f;o[_>>2]=(t^0-t)&b^t;return}function hi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0,c=0,f=0;i=h;h=h+336|0;o=i+144|0;c=i+96|0;s=i+48|0;a=i;f=i+176|0;pi(n,32,t)|0;r[t>>0]=r[t>>0]&-8;n=t+31|0;r[n>>0]=r[n>>0]&63|64;ui(f,t);Wr(c,f+80|0);Xr(s,f,c);Xr(a,f+40|0,c);Jr(e,a);Jr(o,s);n=e+31|0;r[n>>0]=r[n>>0]^r[o>>0]<<7&255;h=i;return}function pi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0;u=h;h=h+208|0;c=u;f=c+72|0;o[f>>2]=0;l=c;o[l>>2]=0;o[l+4>>2]=0;l=c+8|0;o[l>>2]=-205731576;o[l+4>>2]=1779033703;l=c+16|0;o[l>>2]=-2067093701;o[l+4>>2]=-1150833019;l=c+24|0;o[l>>2]=-23791573;o[l+4>>2]=1013904242;l=c+32|0;o[l>>2]=1595750129;o[l+4>>2]=-1521486534;l=c+40|0;o[l>>2]=-1377402159;o[l+4>>2]=1359893119;l=c+48|0;o[l>>2]=725511199;o[l+4>>2]=-1694144372;l=c+56|0;o[l>>2]=-79577749;o[l+4>>2]=528734635;l=c+64|0;o[l>>2]=327033209;o[l+4>>2]=1541459225;if(!e){l=1;h=u;return l|0}e:do{if(t|0){l=c+76|0;s=0;while(1){if(!((s|0)==0&t>>>0>127)){a=128-s|0;a=t>>>0>>0?t:a;if(a|0){i=0;do{r[i+s+(c+76)>>0]=r[e+i>>0]|0;i=i+1|0}while(i>>>0>>0)}s=s+a|0;o[f>>2]=s;e=e+a|0;t=t-a|0;if((s|0)==128){mi(c,l);s=c;s=ks(o[s>>2]|0,o[s+4>>2]|0,1024,0)|0;a=c;o[a>>2]=s;o[a+4>>2]=T;o[f>>2]=0}}else{mi(c,e);s=c;s=ks(o[s>>2]|0,o[s+4>>2]|0,1024,0)|0;a=c;o[a>>2]=s;o[a+4>>2]=T;t=t+-128|0;e=e+128|0}if(!t)break e;s=o[f>>2]|0}}}while(0);l=gi(c,n)|0;h=u;return l|0}function mi(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0;E=h;h=h+704|0;a=E+640|0;w=E;A=e+8|0;n=a;r=A;i=n+64|0;do{o[n>>2]=o[r>>2];n=n+4|0;r=r+4|0}while((n|0)<(i|0));n=0;do{b=t+(n<<3)|0;d=Os(s[b>>0]|0|0,0,56)|0;v=T;u=Os(s[b+1>>0]|0|0,0,48)|0;v=T|v;p=Os(s[b+2>>0]|0|0,0,40)|0;v=v|T|(s[b+3>>0]|0);m=Os(s[b+4>>0]|0|0,0,24)|0;v=v|T;g=Os(s[b+5>>0]|0|0,0,16)|0;v=v|T;y=Os(s[b+6>>0]|0|0,0,8)|0;_=w+(n<<3)|0;o[_>>2]=u|d|p|m|g|y|(s[b+7>>0]|0);o[_+4>>2]=v|T;n=n+1|0}while((n|0)!=16);i=w;n=16;r=o[i>>2]|0;i=o[i+4>>2]|0;do{l=w+(n+-2<<3)|0;k=o[l>>2]|0;l=o[l+4>>2]|0;u=Cs(k|0,l|0,19)|0;p=T;d=Os(k|0,l|0,45)|0;p=p|T;c=Cs(k|0,l|0,61)|0;t=T;f=Os(k|0,l|0,3)|0;t=t|T;l=Cs(k|0,l|0,6)|0;p=t^T^p;t=w+(n+-7<<3)|0;k=o[t>>2]|0;t=o[t+4>>2]|0;b=w+(n+-15<<3)|0;I=r;r=o[b>>2]|0;S=i;i=o[b+4>>2]|0;b=Cs(r|0,i|0,1)|0;v=T;_=Os(r|0,i|0,63)|0;v=v|T;m=Cs(r|0,i|0,8)|0;x=T;g=Os(r|0,i|0,56)|0;x=x|T;y=Cs(r|0,i|0,7)|0;v=x^T^v;t=ks(I|0,S|0,k|0,t|0)|0;p=ks(t|0,T|0,(c|f)^l^(u|d)|0,p|0)|0;v=ks(p|0,T|0,(m|g)^y^(b|_)|0,v|0)|0;_=w+(n<<3)|0;o[_>>2]=v;o[_+4>>2]=T;n=n+1|0}while((n|0)!=80);u=a+56|0;i=a+32|0;c=a+48|0;f=a+40|0;p=a;g=a+8|0;b=a+16|0;_=a+24|0;n=0;r=o[i>>2]|0;i=o[i+4>>2]|0;t=o[c>>2]|0;a=o[f>>2]|0;c=o[c+4>>2]|0;f=o[f+4>>2]|0;l=o[u>>2]|0;u=o[u+4>>2]|0;d=o[p>>2]|0;p=o[p+4>>2]|0;m=o[g>>2]|0;g=o[g+4>>2]|0;y=o[b>>2]|0;b=o[b+4>>2]|0;v=o[_>>2]|0;_=o[_+4>>2]|0;do{S=Cs(r|0,i|0,14)|0;Q=T;I=Os(r|0,i|0,50)|0;Q=Q|T;Y=Cs(r|0,i|0,18)|0;z=T;L=Os(r|0,i|0,46)|0;z=Q^(z|T);Q=Cs(r|0,i|0,41)|0;V=T;N=Os(r|0,i|0,23)|0;V=z^(V|T);z=32064+(n<<3)|0;O=w+(n<<3)|0;B=o[O>>2]|0;O=o[O+4>>2]|0;z=ks(o[z>>2]|0,o[z+4>>2]|0,l|0,u|0)|0;V=ks(z|0,T|0,(S|I)^(Y|L)^(Q|N)|0,V|0)|0;O=ks(V|0,T|0,B|0,O|0)|0;O=ks(O|0,T|0,(a^t)&r^t|0,(f^c)&i^c|0)|0;B=T;V=Cs(d|0,p|0,28)|0;N=T;Q=Os(d|0,p|0,36)|0;N=N|T;L=Cs(d|0,p|0,34)|0;Y=T;I=Os(d|0,p|0,30)|0;Y=N^(Y|T);N=Cs(d|0,p|0,39)|0;S=T;z=Os(d|0,p|0,25)|0;S=Y^(S|T);Y=ks(v|0,_|0,O|0,B|0)|0;F=T;B=ks((m|d)&y|m&d|0,(g|p)&b|g&p|0,O|0,B|0)|0;S=ks(B|0,T|0,(V|Q)^(L|I)^(N|z)|0,S|0)|0;z=T;N=Cs(Y|0,F|0,14)|0;I=T;L=Os(Y|0,F|0,50)|0;I=I|T;Q=Cs(Y|0,F|0,18)|0;V=T;B=Os(Y|0,F|0,46)|0;V=I^(V|T);I=Cs(Y|0,F|0,41)|0;O=T;x=Os(Y|0,F|0,23)|0;O=V^(O|T);V=n|1;H=32064+(V<<3)|0;M=o[H>>2]|0;H=o[H+4>>2]|0;V=w+(V<<3)|0;j=o[V>>2]|0;V=o[V+4>>2]|0;P=ks(Y&(a^r)^a|0,F&(f^i)^f|0,t|0,c|0)|0;H=ks(P|0,T|0,M|0,H|0)|0;V=ks(H|0,T|0,j|0,V|0)|0;O=ks(V|0,T|0,(N|L)^(Q|B)^(I|x)|0,O|0)|0;x=T;I=Cs(S|0,z|0,28)|0;B=T;Q=Os(S|0,z|0,36)|0;B=B|T;L=Cs(S|0,z|0,34)|0;N=T;V=Os(S|0,z|0,30)|0;N=B^(N|T);B=Cs(S|0,z|0,39)|0;j=T;H=Os(S|0,z|0,25)|0;j=ks((I|Q)^(L|V)^(B|H)|0,N^(j|T)|0,(S|d)&m|S&d|0,(z|p)&g|z&p|0)|0;N=T;H=ks(O|0,x|0,y|0,b|0)|0;B=T;x=ks(j|0,N|0,O|0,x|0)|0;O=T;N=Cs(H|0,B|0,14)|0;j=T;V=Os(H|0,B|0,50)|0;j=j|T;L=Cs(H|0,B|0,18)|0;Q=T;I=Os(H|0,B|0,46)|0;Q=j^(Q|T);j=Cs(H|0,B|0,41)|0;M=T;P=Os(H|0,B|0,23)|0;M=Q^(M|T);Q=n|2;q=32064+(Q<<3)|0;Q=w+(Q<<3)|0;D=o[Q>>2]|0;Q=o[Q+4>>2]|0;q=ks(o[q>>2]|0,o[q+4>>2]|0,a|0,f|0)|0;Q=ks(q|0,T|0,D|0,Q|0)|0;Q=ks(Q|0,T|0,H&(Y^r)^r|0,B&(F^i)^i|0)|0;M=ks(Q|0,T|0,(N|V)^(L|I)^(j|P)|0,M|0)|0;P=T;j=Cs(x|0,O|0,28)|0;I=T;L=Os(x|0,O|0,36)|0;I=I|T;V=Cs(x|0,O|0,34)|0;N=T;Q=Os(x|0,O|0,30)|0;N=I^(N|T);I=Cs(x|0,O|0,39)|0;D=T;q=Os(x|0,O|0,25)|0;D=ks((j|L)^(V|Q)^(I|q)|0,N^(D|T)|0,(x|S)&d|x&S|0,(O|z)&p|O&z|0)|0;N=T;q=ks(M|0,P|0,m|0,g|0)|0;I=T;P=ks(D|0,N|0,M|0,P|0)|0;M=T;N=Cs(q|0,I|0,14)|0;D=T;Q=Os(q|0,I|0,50)|0;D=D|T;V=Cs(q|0,I|0,18)|0;L=T;j=Os(q|0,I|0,46)|0;L=D^(L|T);D=Cs(q|0,I|0,41)|0;R=T;C=Os(q|0,I|0,23)|0;R=L^(R|T);L=n|3;U=32064+(L<<3)|0;L=w+(L<<3)|0;W=o[L>>2]|0;L=o[L+4>>2]|0;U=ks(o[U>>2]|0,o[U+4>>2]|0,r|0,i|0)|0;L=ks(U|0,T|0,W|0,L|0)|0;L=ks(L|0,T|0,q&(H^Y)^Y|0,I&(B^F)^F|0)|0;R=ks(L|0,T|0,(N|Q)^(V|j)^(D|C)|0,R|0)|0;C=T;D=Cs(P|0,M|0,28)|0;j=T;V=Os(P|0,M|0,36)|0;j=j|T;Q=Cs(P|0,M|0,34)|0;N=T;L=Os(P|0,M|0,30)|0;N=j^(N|T);j=Cs(P|0,M|0,39)|0;W=T;U=Os(P|0,M|0,25)|0;W=ks((D|V)^(Q|L)^(j|U)|0,N^(W|T)|0,(P|x)&S|P&x|0,(M|O)&z|M&O|0)|0;N=T;U=ks(R|0,C|0,d|0,p|0)|0;j=T;C=ks(W|0,N|0,R|0,C|0)|0;R=T;N=Cs(U|0,j|0,14)|0;W=T;L=Os(U|0,j|0,50)|0;W=W|T;Q=Cs(U|0,j|0,18)|0;V=T;D=Os(U|0,j|0,46)|0;V=W^(V|T);W=Cs(U|0,j|0,41)|0;G=T;k=Os(U|0,j|0,23)|0;G=V^(G|T);V=n|4;X=32064+(V<<3)|0;V=w+(V<<3)|0;K=o[V>>2]|0;V=o[V+4>>2]|0;F=ks(o[X>>2]|0,o[X+4>>2]|0,Y|0,F|0)|0;V=ks(F|0,T|0,K|0,V|0)|0;V=ks(V|0,T|0,U&(q^H)^H|0,j&(I^B)^B|0)|0;G=ks(V|0,T|0,(N|L)^(Q|D)^(W|k)|0,G|0)|0;k=T;W=Cs(C|0,R|0,28)|0;D=T;Q=Os(C|0,R|0,36)|0;D=D|T;L=Cs(C|0,R|0,34)|0;N=T;V=Os(C|0,R|0,30)|0;N=D^(N|T);D=Cs(C|0,R|0,39)|0;K=T;F=Os(C|0,R|0,25)|0;K=ks((W|Q)^(L|V)^(D|F)|0,N^(K|T)|0,(C|P)&x|C&P|0,(R|M)&O|R&M|0)|0;N=T;l=ks(G|0,k|0,S|0,z|0)|0;u=T;v=ks(K|0,N|0,G|0,k|0)|0;_=T;k=Cs(l|0,u|0,14)|0;G=T;N=Os(l|0,u|0,50)|0;G=G|T;K=Cs(l|0,u|0,18)|0;z=T;S=Os(l|0,u|0,46)|0;z=G^(z|T);G=Cs(l|0,u|0,41)|0;F=T;D=Os(l|0,u|0,23)|0;F=z^(F|T);z=n|5;V=32064+(z<<3)|0;z=w+(z<<3)|0;L=o[z>>2]|0;z=o[z+4>>2]|0;B=ks(o[V>>2]|0,o[V+4>>2]|0,H|0,B|0)|0;z=ks(B|0,T|0,L|0,z|0)|0;z=ks(z|0,T|0,l&(U^q)^q|0,u&(j^I)^I|0)|0;F=ks(z|0,T|0,(k|N)^(K|S)^(G|D)|0,F|0)|0;D=T;G=Cs(v|0,_|0,28)|0;S=T;K=Os(v|0,_|0,36)|0;S=S|T;N=Cs(v|0,_|0,34)|0;k=T;z=Os(v|0,_|0,30)|0;k=S^(k|T);S=Cs(v|0,_|0,39)|0;L=T;B=Os(v|0,_|0,25)|0;L=ks((G|K)^(N|z)^(S|B)|0,k^(L|T)|0,(v|C)&P|v&C|0,(_|R)&M|_&R|0)|0;k=T;t=ks(F|0,D|0,x|0,O|0)|0;c=T;y=ks(L|0,k|0,F|0,D|0)|0;b=T;D=Cs(t|0,c|0,14)|0;F=T;k=Os(t|0,c|0,50)|0;F=F|T;L=Cs(t|0,c|0,18)|0;O=T;x=Os(t|0,c|0,46)|0;O=F^(O|T);F=Cs(t|0,c|0,41)|0;B=T;S=Os(t|0,c|0,23)|0;B=O^(B|T);O=n|6;z=32064+(O<<3)|0;O=w+(O<<3)|0;N=o[O>>2]|0;O=o[O+4>>2]|0;I=ks(o[z>>2]|0,o[z+4>>2]|0,q|0,I|0)|0;O=ks(I|0,T|0,N|0,O|0)|0;O=ks(O|0,T|0,t&(l^U)^U|0,c&(u^j)^j|0)|0;B=ks(O|0,T|0,(D|k)^(L|x)^(F|S)|0,B|0)|0;S=T;F=Cs(y|0,b|0,28)|0;x=T;L=Os(y|0,b|0,36)|0;x=x|T;k=Cs(y|0,b|0,34)|0;D=T;O=Os(y|0,b|0,30)|0;D=x^(D|T);x=Cs(y|0,b|0,39)|0;N=T;I=Os(y|0,b|0,25)|0;N=ks((F|L)^(k|O)^(x|I)|0,D^(N|T)|0,(y|v)&C|y&v|0,(b|_)&R|b&_|0)|0;D=T;a=ks(B|0,S|0,P|0,M|0)|0;f=T;m=ks(N|0,D|0,B|0,S|0)|0;g=T;S=Cs(a|0,f|0,14)|0;B=T;D=Os(a|0,f|0,50)|0;B=B|T;N=Cs(a|0,f|0,18)|0;M=T;P=Os(a|0,f|0,46)|0;M=B^(M|T);B=Cs(a|0,f|0,41)|0;I=T;x=Os(a|0,f|0,23)|0;I=M^(I|T);M=n|7;O=32064+(M<<3)|0;M=w+(M<<3)|0;k=o[M>>2]|0;M=o[M+4>>2]|0;O=ks(U|0,j|0,o[O>>2]|0,o[O+4>>2]|0)|0;M=ks(O|0,T|0,k|0,M|0)|0;M=ks(M|0,T|0,a&(t^l)^l|0,f&(c^u)^u|0)|0;I=ks(M|0,T|0,(S|D)^(N|P)^(B|x)|0,I|0)|0;x=T;B=Cs(m|0,g|0,28)|0;P=T;N=Os(m|0,g|0,36)|0;P=P|T;D=Cs(m|0,g|0,34)|0;S=T;M=Os(m|0,g|0,30)|0;S=P^(S|T);P=Cs(m|0,g|0,39)|0;k=T;O=Os(m|0,g|0,25)|0;k=ks((B|N)^(D|M)^(P|O)|0,S^(k|T)|0,(m|y)&v|m&y|0,(g|b)&_|g&b|0)|0;S=T;r=ks(I|0,x|0,C|0,R|0)|0;i=T;d=ks(k|0,S|0,I|0,x|0)|0;p=T;n=n+8|0}while(n>>>0<80);Y=A;Y=ks(d|0,p|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;X=A;o[X>>2]=Y;o[X+4>>2]=T;X=e+16|0;Y=X;Y=ks(m|0,g|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+24|0;Y=X;Y=ks(y|0,b|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+32|0;Y=X;Y=ks(v|0,_|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+40|0;Y=X;Y=ks(r|0,i|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+48|0;Y=X;Y=ks(a|0,f|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+56|0;Y=X;Y=ks(t|0,c|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+64|0;Y=X;Y=ks(l|0,u|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;h=E;return}function gi(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0;if((e|0)==0|(t|0)==0){s=1;return s|0}s=e+72|0;n=o[s>>2]|0;if(n>>>0>127){s=1;return s|0}a=Os(n|0,0,3)|0;i=e;a=ks(o[i>>2]|0,o[i+4>>2]|0,a|0,T|0)|0;i=e;o[i>>2]=a;o[i+4>>2]=T;i=e+76|0;o[s>>2]=n+1;r[e+76+n>>0]=-128;n=o[s>>2]|0;if(n>>>0>112){if(n>>>0<128)do{o[s>>2]=n+1;r[e+76+n>>0]=0;n=o[s>>2]|0}while(n>>>0<128);mi(e,i);o[s>>2]=0;n=0}do{o[s>>2]=n+1;r[e+76+n>>0]=0;n=o[s>>2]|0}while(n>>>0<120);s=e;a=o[s>>2]|0;s=o[s+4>>2]|0;n=Cs(a|0,s|0,56)|0;r[e+196>>0]=n;n=Cs(a|0,s|0,48)|0;r[e+197>>0]=n;n=Cs(a|0,s|0,40)|0;r[e+198>>0]=n;r[e+199>>0]=s;n=Cs(a|0,s|0,24)|0;r[e+200>>0]=n;n=Cs(a|0,s|0,16)|0;r[e+201>>0]=n;s=Cs(a|0,s|0,8)|0;r[e+202>>0]=s;r[e+203>>0]=a;mi(e,i);a=e+8|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+1>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+2>>0]=s;r[t+3>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+4>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+5>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+6>>0]=s;r[t+7>>0]=o[a>>2];a=e+16|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+8>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+9>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+10>>0]=s;r[t+11>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+12>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+13>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+14>>0]=s;r[t+15>>0]=o[a>>2];a=e+24|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+16>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+17>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+18>>0]=s;r[t+19>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+20>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+21>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+22>>0]=s;r[t+23>>0]=o[a>>2];a=e+32|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+24>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+25>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+26>>0]=s;r[t+27>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+28>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+29>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+30>>0]=s;r[t+31>>0]=o[a>>2];a=e+40|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+32>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+33>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+34>>0]=s;r[t+35>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+36>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+37>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+38>>0]=s;r[t+39>>0]=o[a>>2];a=e+48|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+40>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+41>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+42>>0]=s;r[t+43>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+44>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+45>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+46>>0]=s;r[t+47>>0]=o[a>>2];a=e+56|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+48>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+49>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+50>>0]=s;r[t+51>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+52>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+53>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+54>>0]=s;r[t+55>>0]=o[a>>2];a=e+64|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+56>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+57>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+58>>0]=s;r[t+59>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+60>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+61>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+62>>0]=s;r[t+63>>0]=o[a>>2];a=0;return a|0}function yi(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0;k=h;h=h+768|0;y=k+240|0;b=k+192|0;v=k+144|0;w=k+96|0;A=k+32|0;E=k;d=k+272|0;p=k+600|0;m=k+480|0;if((s[e+63>>0]|0)>31){E=0;h=k;return E|0}if(li(p,i)|0){E=0;h=k;return E|0}g=d+72|0;o[g>>2]=0;_=d;o[_>>2]=0;o[_+4>>2]=0;_=d+8|0;o[_>>2]=-205731576;o[_+4>>2]=1779033703;_=d+16|0;o[_>>2]=-2067093701;o[_+4>>2]=-1150833019;_=d+24|0;o[_>>2]=-23791573;o[_+4>>2]=1013904242;_=d+32|0;o[_>>2]=1595750129;o[_+4>>2]=-1521486534;_=d+40|0;o[_>>2]=-1377402159;o[_+4>>2]=1359893119;_=d+48|0;o[_>>2]=725511199;o[_+4>>2]=-1694144372;_=d+56|0;o[_>>2]=-79577749;o[_+4>>2]=528734635;_=d+64|0;o[_>>2]=327033209;o[_+4>>2]=1541459225;_=d+76|0;r[d+76>>0]=r[e>>0]|0;r[d+77>>0]=r[e+1>>0]|0;r[d+78>>0]=r[e+2>>0]|0;r[d+79>>0]=r[e+3>>0]|0;r[d+80>>0]=r[e+4>>0]|0;r[d+81>>0]=r[e+5>>0]|0;r[d+82>>0]=r[e+6>>0]|0;r[d+83>>0]=r[e+7>>0]|0;r[d+84>>0]=r[e+8>>0]|0;r[d+85>>0]=r[e+9>>0]|0;r[d+86>>0]=r[e+10>>0]|0;r[d+87>>0]=r[e+11>>0]|0;r[d+88>>0]=r[e+12>>0]|0;r[d+89>>0]=r[e+13>>0]|0;r[d+90>>0]=r[e+14>>0]|0;r[d+91>>0]=r[e+15>>0]|0;r[d+92>>0]=r[e+16>>0]|0;r[d+93>>0]=r[e+17>>0]|0;r[d+94>>0]=r[e+18>>0]|0;r[d+95>>0]=r[e+19>>0]|0;r[d+96>>0]=r[e+20>>0]|0;r[d+97>>0]=r[e+21>>0]|0;r[d+98>>0]=r[e+22>>0]|0;r[d+99>>0]=r[e+23>>0]|0;r[d+100>>0]=r[e+24>>0]|0;r[d+101>>0]=r[e+25>>0]|0;r[d+102>>0]=r[e+26>>0]|0;r[d+103>>0]=r[e+27>>0]|0;r[d+104>>0]=r[e+28>>0]|0;r[d+105>>0]=r[e+29>>0]|0;r[d+106>>0]=r[e+30>>0]|0;r[d+107>>0]=r[e+31>>0]|0;o[g>>2]=32;e:do{if(i|0?(f=o[g>>2]|0,f>>>0<=128):0){a=32;while(1){if(!((f|0)==0&a>>>0>127)){u=128-f|0;u=a>>>0>>0?a:u;if(u|0){l=0;do{r[l+f+(d+76)>>0]=r[i+l>>0]|0;l=l+1|0}while(l>>>0>>0)}l=f+u|0;o[g>>2]=l;i=i+u|0;a=a-u|0;if((l|0)==128){mi(d,_);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;o[g>>2]=0}}else{mi(d,i);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;a=a+-128|0;i=i+128|0}if(!a)break e;f=o[g>>2]|0}}}while(0);e:do{if(t|0?(c=o[g>>2]|0,!((n|0)==0|c>>>0>128)):0)while(1){if(!((c|0)==0&n>>>0>127)){i=128-c|0;i=n>>>0>>0?n:i;if(i|0){a=0;do{r[a+c+(d+76)>>0]=r[t+a>>0]|0;a=a+1|0}while(a>>>0>>0)}u=c+i|0;o[g>>2]=u;t=t+i|0;n=n-i|0;if((u|0)==128){mi(d,_);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;o[g>>2]=0}}else{mi(d,t);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;n=n+-128|0;t=t+128|0}if(!n)break e;c=o[g>>2]|0}}while(0);gi(d,A)|0;ei(A);ri(m,A,p,e+32|0);Wr(b,m+80|0);Xr(v,m,b);Xr(w,m+40|0,b);Jr(E,w);Jr(y,v);w=E+31|0;A=r[w>>0]^r[y>>0]<<7&255;r[w>>0]=A;E=(r[e+1>>0]^r[E+1>>0]|r[e>>0]^r[E>>0]|r[e+2>>0]^r[E+2>>0]|r[e+3>>0]^r[E+3>>0]|r[e+4>>0]^r[E+4>>0]|r[e+5>>0]^r[E+5>>0]|r[e+6>>0]^r[E+6>>0]|r[e+7>>0]^r[E+7>>0]|r[e+8>>0]^r[E+8>>0]|r[e+9>>0]^r[E+9>>0]|r[e+10>>0]^r[E+10>>0]|r[e+11>>0]^r[E+11>>0]|r[e+12>>0]^r[E+12>>0]|r[e+13>>0]^r[E+13>>0]|r[e+14>>0]^r[E+14>>0]|r[e+15>>0]^r[E+15>>0]|r[e+16>>0]^r[E+16>>0]|r[e+17>>0]^r[E+17>>0]|r[e+18>>0]^r[E+18>>0]|r[e+19>>0]^r[E+19>>0]|r[e+20>>0]^r[E+20>>0]|r[e+21>>0]^r[E+21>>0]|r[e+22>>0]^r[E+22>>0]|r[e+23>>0]^r[E+23>>0]|r[e+24>>0]^r[E+24>>0]|r[e+25>>0]^r[E+25>>0]|r[e+26>>0]^r[E+26>>0]|r[e+27>>0]^r[E+27>>0]|r[e+28>>0]^r[E+28>>0]|r[e+29>>0]^r[E+29>>0]|r[e+30>>0]^r[E+30>>0]|r[e+31>>0]^A)<<24>>24==0&1;h=k;return E|0}function bi(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0;D=h;h=h+672|0;A=D+272|0;k=D+224|0;S=D+176|0;I=D+128|0;M=D+304|0;R=D+64|0;C=D;p=D+512|0;O=M+72|0;o[O>>2]=0;m=M;o[m>>2]=0;o[m+4>>2]=0;m=M+8|0;g=m;o[g>>2]=-205731576;o[g+4>>2]=1779033703;g=M+16|0;y=g;o[y>>2]=-2067093701;o[y+4>>2]=-1150833019;y=M+24|0;b=y;o[b>>2]=-23791573;o[b+4>>2]=1013904242;b=M+32|0;v=b;o[v>>2]=1595750129;o[v+4>>2]=-1521486534;v=M+40|0;_=v;o[_>>2]=-1377402159;o[_+4>>2]=1359893119;_=M+48|0;w=_;o[w>>2]=725511199;o[w+4>>2]=-1694144372;w=M+56|0;E=w;o[E>>2]=-79577749;o[E+4>>2]=528734635;E=M+64|0;P=E;o[P>>2]=327033209;o[P+4>>2]=1541459225;P=M+76|0;r[M+76>>0]=r[s+32>>0]|0;r[M+77>>0]=r[s+33>>0]|0;r[M+78>>0]=r[s+34>>0]|0;r[M+79>>0]=r[s+35>>0]|0;r[M+80>>0]=r[s+36>>0]|0;r[M+81>>0]=r[s+37>>0]|0;r[M+82>>0]=r[s+38>>0]|0;r[M+83>>0]=r[s+39>>0]|0;r[M+84>>0]=r[s+40>>0]|0;r[M+85>>0]=r[s+41>>0]|0;r[M+86>>0]=r[s+42>>0]|0;r[M+87>>0]=r[s+43>>0]|0;r[M+88>>0]=r[s+44>>0]|0;r[M+89>>0]=r[s+45>>0]|0;r[M+90>>0]=r[s+46>>0]|0;r[M+91>>0]=r[s+47>>0]|0;r[M+92>>0]=r[s+48>>0]|0;r[M+93>>0]=r[s+49>>0]|0;r[M+94>>0]=r[s+50>>0]|0;r[M+95>>0]=r[s+51>>0]|0;r[M+96>>0]=r[s+52>>0]|0;r[M+97>>0]=r[s+53>>0]|0;r[M+98>>0]=r[s+54>>0]|0;r[M+99>>0]=r[s+55>>0]|0;r[M+100>>0]=r[s+56>>0]|0;r[M+101>>0]=r[s+57>>0]|0;r[M+102>>0]=r[s+58>>0]|0;r[M+103>>0]=r[s+59>>0]|0;r[M+104>>0]=r[s+60>>0]|0;r[M+105>>0]=r[s+61>>0]|0;r[M+106>>0]=r[s+62>>0]|0;r[M+107>>0]=r[s+63>>0]|0;o[O>>2]=32;x=(t|0)==0;e:do{if(!x?(l=o[O>>2]|0,!((n|0)==0|l>>>0>128)):0){a=n;c=t;while(1){if(!((l|0)==0&a>>>0>127)){d=128-l|0;d=a>>>0>>0?a:d;if(d|0){u=0;do{r[u+l+(M+76)>>0]=r[c+u>>0]|0;u=u+1|0}while(u>>>0>>0)}u=l+d|0;o[O>>2]=u;c=c+d|0;a=a-d|0;if((u|0)==128){mi(M,P);u=M;u=ks(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;d=M;o[d>>2]=u;o[d+4>>2]=T;o[O>>2]=0}}else{mi(M,c);u=M;u=ks(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;d=M;o[d>>2]=u;o[d+4>>2]=T;a=a+-128|0;c=c+128|0}if(!a)break e;l=o[O>>2]|0}}}while(0);gi(M,C)|0;ei(C);ui(p,C);Wr(k,p+80|0);Xr(S,p,k);Xr(I,p+40|0,k);Jr(e,I);Jr(A,S);I=e+31|0;r[I>>0]=r[I>>0]^r[A>>0]<<7&255;o[O>>2]=0;I=M;o[I>>2]=0;o[I+4>>2]=0;I=m;o[I>>2]=-205731576;o[I+4>>2]=1779033703;I=g;o[I>>2]=-2067093701;o[I+4>>2]=-1150833019;I=y;o[I>>2]=-23791573;o[I+4>>2]=1013904242;I=b;o[I>>2]=1595750129;o[I+4>>2]=-1521486534;I=v;o[I>>2]=-1377402159;o[I+4>>2]=1359893119;I=_;o[I>>2]=725511199;o[I+4>>2]=-1694144372;I=w;o[I>>2]=-79577749;o[I+4>>2]=528734635;I=E;o[I>>2]=327033209;o[I+4>>2]=1541459225;if(e|0){r[M+76>>0]=r[e>>0]|0;r[M+77>>0]=r[e+1>>0]|0;r[M+78>>0]=r[e+2>>0]|0;r[M+79>>0]=r[e+3>>0]|0;r[M+80>>0]=r[e+4>>0]|0;r[M+81>>0]=r[e+5>>0]|0;r[M+82>>0]=r[e+6>>0]|0;r[M+83>>0]=r[e+7>>0]|0;r[M+84>>0]=r[e+8>>0]|0;r[M+85>>0]=r[e+9>>0]|0;r[M+86>>0]=r[e+10>>0]|0;r[M+87>>0]=r[e+11>>0]|0;r[M+88>>0]=r[e+12>>0]|0;r[M+89>>0]=r[e+13>>0]|0;r[M+90>>0]=r[e+14>>0]|0;r[M+91>>0]=r[e+15>>0]|0;r[M+92>>0]=r[e+16>>0]|0;r[M+93>>0]=r[e+17>>0]|0;r[M+94>>0]=r[e+18>>0]|0;r[M+95>>0]=r[e+19>>0]|0;r[M+96>>0]=r[e+20>>0]|0;r[M+97>>0]=r[e+21>>0]|0;r[M+98>>0]=r[e+22>>0]|0;r[M+99>>0]=r[e+23>>0]|0;r[M+100>>0]=r[e+24>>0]|0;r[M+101>>0]=r[e+25>>0]|0;r[M+102>>0]=r[e+26>>0]|0;r[M+103>>0]=r[e+27>>0]|0;r[M+104>>0]=r[e+28>>0]|0;r[M+105>>0]=r[e+29>>0]|0;r[M+106>>0]=r[e+30>>0]|0;r[M+107>>0]=r[e+31>>0]|0;o[O>>2]=32}e:do{if(i|0?(f=o[O>>2]|0,f>>>0<=128):0){a=32;while(1){if(!((f|0)==0&a>>>0>127)){l=128-f|0;l=a>>>0>>0?a:l;if(l|0){c=0;do{r[c+f+(M+76)>>0]=r[i+c>>0]|0;c=c+1|0}while(c>>>0>>0)}I=f+l|0;o[O>>2]=I;i=i+l|0;a=a-l|0;if((I|0)==128){mi(M,P);S=M;S=ks(o[S>>2]|0,o[S+4>>2]|0,1024,0)|0;I=M;o[I>>2]=S;o[I+4>>2]=T;o[O>>2]=0}}else{mi(M,i);S=M;S=ks(o[S>>2]|0,o[S+4>>2]|0,1024,0)|0;I=M;o[I>>2]=S;o[I+4>>2]=T;a=a+-128|0;i=i+128|0}if(!a)break e;f=o[O>>2]|0}}}while(0);if(x){gi(M,R)|0;ei(R);M=e+32|0;ti(M,R,s,C);h=D;return}a=o[O>>2]|0;if((n|0)==0|a>>>0>128){gi(M,R)|0;ei(R);M=e+32|0;ti(M,R,s,C);h=D;return}i=a;while(1){if(!((i|0)==0&n>>>0>127)){c=128-i|0;c=n>>>0>>0?n:c;if(c|0){a=0;do{r[a+i+(M+76)>>0]=r[t+a>>0]|0;a=a+1|0}while(a>>>0>>0)}x=i+c|0;o[O>>2]=x;t=t+c|0;n=n-c|0;if((x|0)==128){mi(M,P);I=M;I=ks(o[I>>2]|0,o[I+4>>2]|0,1024,0)|0;x=M;o[x>>2]=I;o[x+4>>2]=T;o[O>>2]=0}}else{mi(M,t);I=M;I=ks(o[I>>2]|0,o[I+4>>2]|0,1024,0)|0;x=M;o[x>>2]=I;o[x+4>>2]=T;n=n+-128|0;t=t+128|0}if(!n)break;i=o[O>>2]|0}gi(M,R)|0;ei(R);M=e+32|0;ti(M,R,s,C);h=D;return}function vi(e,t,n){e=e|0;t=t|0;n=n|0;o[e+128>>2]=n;n=t;t=e+128|0;do{r[e>>0]=r[n>>0]|0;e=e+1|0;n=n+1|0}while((e|0)<(t|0));return}function _i(e){e=e|0;return 132}function wi(e,t){e=e|0;t=t|0;t=Fe(t,e,128)|0;return Be(t,o[e+128>>2]|0)|0}function Ai(e,t,n){e=e|0;t=t|0;n=n|0;return je(qe(t,n,e,128)|0,n,e+128|0)|0}function Ei(e){e=e|0;var t=0,n=0,r=0,i=0;r=e+128|0;i=(o[r>>2]|0)+1|0;o[r>>2]=i;if(i&16777215){n=0;r=16777215;while(1){t=n+1|0;r=r>>>8;if(n>>>0>2|(r&i|0)==0)break;else n=t}if(n>>>0>2)return}else t=0;r=e+(t<<5)|0;n=3;while(1){Et(r,32,38116+n|0,1,e+(n<<5)|0);if((n|0)>(t|0))n=n+-1|0;else break}return}function ki(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0;s=e+128|0;n=o[s>>2]|0;r=(t>>>24)-(n>>>24)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=3}break}case 1:{i=5;break}default:{n=r&255;i=3}}if((i|0)==3){do{Et(e,32,38116,1,e);n=n+-1|0}while(n>>>0>1);i=5}if((i|0)==5){Et(e,32,38119,1,e+96|0);Et(e,32,38118,1,e+64|0);Et(e,32,38117,1,e+32|0);Et(e,32,38116,1,e);n=t&-16777216;o[s>>2]=n}r=(t>>>16)-(n>>>16)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=8}break}case 1:{i=10;break}default:{n=r&255;i=8}}if((i|0)==8){r=e+32|0;do{Et(r,32,38117,1,r);n=n+-1|0}while(n>>>0>1);i=10}if((i|0)==10){n=e+32|0;Et(n,32,38119,1,e+96|0);Et(n,32,38118,1,e+64|0);Et(n,32,38117,1,e+32|0);n=t&-65536;o[s>>2]=n}r=(t>>>8)-(n>>>8)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=13}break}case 1:{i=15;break}default:{n=r&255;i=13}}if((i|0)==13){r=e+64|0;do{Et(r,32,38118,1,r);n=n+-1|0}while(n>>>0>1);i=15}if((i|0)==15){n=e+64|0;Et(n,32,38119,1,e+96|0);Et(n,32,38118,1,e+64|0);n=t&-256;o[s>>2]=n}r=t-n|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=18}else return;break}case 1:break;default:{n=r&255;i=18}}if((i|0)==18){r=e+96|0;do{Et(r,32,38119,1,r);n=n+-1|0}while(n>>>0>1)}Et(e+96|0,32,38119,1,e+96|0);o[s>>2]=t;return}function Si(e){e=e|0;if(e>>>0>=16){e=38120;return e|0}e=o[32704+(e<<2)>>2]|0;return e|0}function Ti(e){e=e|0;e=Hs[o[37564>>2]&3](37592,e)|0;return pe((Gs[o[9390]&1](37592)|0)+e|0)|0}function Ii(e,t){e=e|0;t=t|0;t=Hs[o[37564>>2]&3](37592,t)|0;t=(Gs[o[9390]&1](37592)|0)+t|0;return e+(pe(t)|0)+(0-t)|0}function xi(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0;c=Hs[o[37564>>2]&3](37592,r)|0;s=(Gs[o[9390]&1](37592)|0)+c|0;i=pe(s)|0;a=n+i+(0-s)|0;Qs[o[37568>>2]&3](37592,e,t,a,r,a,c,a,s)|0;me(a,s,n)|0;return i|0}function Ri(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=ge(r)|0;if((s|0)==-1){if(!i){i=-1;return i|0}o[i>>2]=7;i=-1;return i|0}else{ye(n,r,n)|0;r=s-(Gs[o[9390]&1](37592)|0)|0;e=Qs[o[37576>>2]&3](37592,e,t,n,s,n,r,n,r)|0;if(!((i|0)!=0&(e|0)==-1)){i=e;return i|0}o[i>>2]=8;i=-1;return i|0}return 0}function Ci(){return 304}function Oi(e){e=e|0;Gr(e,304);return e|0}function Pi(e){e=e|0;Gr(e,304);return 304}function Mi(e){e=e|0;return Si(o[e+300>>2]|0)|0}function Di(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0,c=0,f=0;f=h;h=h+240|0;c=f;switch(ge(n)|0){case-1:{o[e+300>>2]=7;c=-1;h=f;return c|0}case 229:{ye(t,n,c)|0;do{if((r[c>>0]|0)==2){t=((s[c+1>>0]<<8|s[c+2>>0])<<8|s[c+3>>0])<<8|s[c+4>>0];n=c+5|0;vi(e,n,t);vi(e+132|0,n,t);t=e+264|0;n=t;i=c+133|0;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));if(!(bt(t,c,165,c+165|0)|0)){o[e+300>>2]=14;t=-1;break}else{o[e+296>>2]=1;t=0;break}}else{o[e+300>>2]=11;t=-1}}while(0);Gr(c,229);c=t;h=f;return c|0}default:{o[e+300>>2]=11;c=-1;h=f;return c|0}}return 0}function Ni(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0;a=h;h=h+176|0;i=a;switch(ge(n)|0){case-1:{o[e+300>>2]=7;i=-1;h=a;return i|0}case 165:{ye(t,n,i)|0;if((r[i>>0]|0)==1){t=((s[i+1>>0]<<8|s[i+2>>0])<<8|s[i+3>>0])<<8|s[i+4>>0];n=i+5|0;vi(e,n,t);vi(e+132|0,n,t);e=e+264|0;t=i+133|0;n=e+32|0;do{r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0}while((e|0)<(n|0));e=0}else{o[e+300>>2]=11;e=-1}Gr(i,165);i=e;h=a;return i|0}default:{o[e+300>>2]=11;i=-1;h=a;return i|0}}return 0}function Bi(e){e=e|0;var t=0,n=0;n=_i(e)|0;t=_i(e+132|0)|0;return Ti(n+5+t+(Ce(e+264|0)|0)|0)|0}function ji(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0;f=_i(e)|0;a=e+132|0;s=_i(a)|0;c=e+264|0;s=f+5+s+(Ce(c)|0)|0;if((Ti(s)|0)>>>0>i>>>0){o[e+300>>2]=2;f=-1;return f|0}else{f=Oe(wi(a,wi(e,Be(Ii(r,s)|0,2)|0)|0)|0,c)|0;Ue(f,o[e+296>>2]|0)|0;f=xi(t,n,r,s)|0;return f|0}return 0}function Ui(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0;f=h;h=h+16|0;a=f;c=e+300|0;t=Ri(t,n,r,i,c)|0;if((t|0)==-1){c=-1;h=f;return c|0}s=r+t|0;t=je(r,s,a)|0;if(((o[a>>2]|0)+-1|0)>>>0>1){o[c>>2]=9;c=-1;h=f;return c|0}t=Pe(Ai(e+132|0,Ai(e,t,s)|0,s)|0,s,e+264|0)|0;n=e+296|0;if((o[a>>2]|0)==1)o[n>>2]=1;else t=Le(t,s,n)|0;if((s|0)==(t|0)){c=i;h=f;return c|0}o[c>>2]=10;c=-1;h=f;return c|0}function Li(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0;s=h;h=h+32|0;i=s;n=ye(t,n,t)|0;if((n|0)==-1){o[e+300>>2]=7;i=-1;h=s;return i|0}Xe(t,n,Gs[o[o[9395]>>2]&1](37580)|0,64,i);do{if((r[i>>0]|0)==3)if(!(o[i+12>>2]|0)){o[e+300>>2]=4;n=-1;break}else{n=Hs[o[(o[9395]|0)+12>>2]&3](37580,o[i+16>>2]|0)|0;break}else{o[e+300>>2]=3;n=-1}}while(0);i=n;h=s;return i|0}function Fi(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0,l=0,u=0,d=0,p=0;p=h;h=h+160|0;l=p+132|0;d=p;n=ye(t,n,t)|0;if((n|0)==-1){o[e+300>>2]=7;d=-1;h=p;return d|0}Xe(t,n,Gs[o[o[9395]>>2]&1](37580)|0,64,l);e:do{if((r[l>>0]|0)==3){if(o[l+8>>2]|0?(u=l+12|0,o[u>>2]|0):0){if(a|0)o[a>>2]=o[l+4>>2];c=n+-64|0;if(!(bt(e+264|0,t,c,t+c|0)|0)){o[e+300>>2]=14;n=-1;break}f=l+16|0;if((Hs[o[(o[9395]|0)+12>>2]&3](37580,o[f>>2]|0)|0)>>>0>s>>>0){o[e+300>>2]=2;n=-1;break}n=o[l+4>>2]|0;a=e+132|0;do{if((n-(o[e+260>>2]|0)|0)<=-1)if((n-(o[e+128>>2]|0)|0)<0){o[e+300>>2]=12;n=-1;break e}else{Ms(d|0,e|0,132)|0;ki(d,n);break}else{ki(a,n);Ms(d|0,a|0,132)|0}}while(0);n=Qs[o[(o[9395]|0)+16>>2]&3](37580,d,128,t,c,o[u>>2]|0,o[f>>2]|0,i,s)|0;Gr(d,132);if((n|0)==-1){o[e+300>>2]=5;n=-1;break}else{o[e+296>>2]=1;break}}o[e+300>>2]=4;n=-1}else{o[e+300>>2]=3;n=-1}}while(0);d=n;h=p;return d|0}function qi(e){e=e|0;return pe(32)|0}function zi(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e+300>>2]=2;n=-1;return n|0}else{n=me(e+264|0,32,t)|0;return n|0}return 0}function Ki(e){e=e|0;return o[e+128>>2]|0}function Gi(e){e=e|0;return o[e+296>>2]|0}function Hi(e){e=e|0;return pe(165)|0}function Vi(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0;l=h;h=h+144|0;f=l;s=pe(165)|0;if(s>>>0>n>>>0){o[e+300>>2]=2;t=-1;h=l;return t|0}n=e+132|0;do{if((i-(o[e+260>>2]|0)|0)>-1){ki(n,i);Ms(f|0,n|0,132)|0}else{if((i-(o[e+128>>2]|0)|0)>=0){Ms(f|0,e|0,132)|0;ki(f,i);break}o[e+300>>2]=12;t=-1;h=l;return t|0}}while(0);c=t+s+-165|0;r[c>>0]=1;a=c+1|0;r[a>>0]=i>>>24;a=a+1|0;r[a>>0]=i>>>16;a=a+1|0;r[a>>0]=i>>>8;r[a+1>>0]=i;a=t+(s+-161)|0;s=t+(s+-160)|0;n=f;i=s+128|0;do{r[s>>0]=r[n>>0]|0;s=s+1|0;n=n+1|0}while((s|0)<(i|0));s=a+129|0;n=e+264|0;i=s+32|0;do{r[s>>0]=r[n>>0]|0;s=s+1|0;n=n+1|0}while((s|0)<(i|0));t=me(c,165,t)|0;h=l;return t|0}function Qi(e){e=e|0;return Si(o[e>>2]|0)|0}function Wi(){return 100}function Yi(e){e=e|0;Gr(e,100);return e|0}function Xi(e){e=e|0;Gr(e,100);return 100}function Ji(e){e=e|0;return 32}function Zi(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<32){o[e>>2]=1;n=-1;return n|0}else{pt(t,e+4|0);n=0;return n|0}return 0}function $i(e){e=e|0;return pe(32)|0}function eo(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e>>2]=2;n=-1;return n|0}else{me(e+4|0,32,t)|0;n=0;return n|0}return 0}function to(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e>>2]=15;n=-1;return n|0}else{ye(t,n,t)|0;mt(e+4|0,t,e+68|0);n=0;return n|0}return 0}function no(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;Tt(e+68|0,32,0,0,t,n,r,i);return 0}function ro(e){e=e|0;return pe(32)|0}function io(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+32|0;c=f;if((pe(32)|0)>>>0>a>>>0){o[e>>2]=2;c=-1;h=f;return c|0}else{Tt(e+68|0,32,0,0,r,i,c,32);Et(c,32,t,n,s);me(s,32,s)|0;c=0;h=f;return c|0}return 0}function oo(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+256|0;c=f;if((pe(32)|0)>>>0>a>>>0){o[e>>2]=2;c=-1;h=f;return c|0}else{Tt(e+68|0,32,0,0,r,i,c,256);Et(c,256,t,n,s);me(s,32,s)|0;c=0;h=f;return c|0}return 0}function so(){return 232}function ao(e){e=e|0;Gr(e,232);return e|0}function co(e){e=e|0;Gr(e,232);return 232}function fo(e){e=e|0;return Si(o[e+228>>2]|0)|0}function lo(e){e=e|0;var t=0;t=(_i(e)|0)+4|0;return Ti(t+(Me(e+132|0)|0)|0)|0}function uo(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;a=(_i(e)|0)+4|0;s=e+132|0;a=a+(Me(s)|0)|0;if((Ti(a)|0)>>>0>i>>>0){o[e+228>>2]=2;a=-1;return a|0}else{De(wi(e,Be(Ii(r,a)|0,1)|0)|0,s)|0;a=xi(t,n,r,a)|0;return a|0}return 0}function ho(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0;c=h;h=h+16|0;s=c;a=e+228|0;t=Ri(t,n,r,i,a)|0;do{if((t|0)!=-1){n=r+t|0;t=je(r,n,s)|0;if((o[s>>2]|0)!=1){o[a>>2]=9;i=-1;break}if((n|0)!=(Ne(Ai(e,t,n)|0,n,e+132|0)|0)){o[a>>2]=10;i=-1}}else i=-1}while(0);h=c;return i|0}function po(e){e=e|0;return 160}function mo(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<160){o[e+228>>2]=1;n=-1;return n|0}else{vi(e,t,0);gt(t+128|0,e+132|0);Gr(t,n);n=0;return n|0}return 0}function go(e,t){e=e|0;t=t|0;var n=0;n=Hs[o[(o[9395]|0)+4>>2]&3](37580,t)|0;t=Gs[o[o[9395]>>2]&1](37580)|0;return pe(We(o[e+128>>2]|0,n,t,64)|0)|0}function yo(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;l=h;h=h+16|0;f=l;a=Hs[o[(o[9395]|0)+4>>2]&3](37580,n)|0;c=Gs[o[o[9395]>>2]&1](37580)|0;s=e+128|0;c=We(o[s>>2]|0,a,c,64)|0;if((pe(c)|0)>>>0>i>>>0){o[e+228>>2]=2;f=-1;h=l;return f|0}a=r+(pe(c)|0)+(0-c)|0;u=Hs[o[(o[9395]|0)+4>>2]&3](37580,n)|0;i=Gs[o[o[9395]>>2]&1](37580)|0;i=(Ye(3,o[s>>2]|0,u,a,f)|0)+i|0;if((Qs[o[(o[9395]|0)+8>>2]&3](37580,e,128,t,n,o[f>>2]|0,u,a,i)|0)==-1){u=-1;h=l;return u|0}else{Ei(e);yt(e+132|0,a,i,a+i|0);u=me(a,c,r)|0;h=l;return u|0}return 0}function bo(e){e=e|0;return pe(32)|0}function vo(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e+228>>2]=2;n=-1;return n|0}else{n=me(e+132|0,32,t)|0;return n|0}return 0}function _o(e){e=e|0;return o[e+128>>2]|0}function wo(e){e=e|0;return pe(229)|0}function Ao(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0;i=pe(229)|0;if(i>>>0>n>>>0){o[e+228>>2]=2;t=-1;return t|0}else{c=t+i+-229|0;r[c>>0]=2;s=o[e+128>>2]|0;f=c+1|0;r[f>>0]=s>>>24;f=f+1|0;r[f>>0]=s>>>16;f=f+1|0;r[f>>0]=s>>>8;r[f+1>>0]=s;f=t+(i+-225)|0;i=t+(i+-224)|0;s=e;a=i+128|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));n=e+132|0;i=f+129|0;s=n;a=i+32|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));f=f+161|0;yt(n,c,f-c|0,f);t=me(c,229,t)|0;return t|0}return 0}function Eo(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0;R=h;h=h+256|0;x=R;o[x>>2]=(s[t+1>>0]|0)<<16|(s[t>>0]|0)<<24|(s[t+2>>0]|0)<<8|(s[t+3>>0]|0);o[x+4>>2]=(s[t+5>>0]|0)<<16|(s[t+4>>0]|0)<<24|(s[t+6>>0]|0)<<8|(s[t+7>>0]|0);o[x+8>>2]=(s[t+9>>0]|0)<<16|(s[t+8>>0]|0)<<24|(s[t+10>>0]|0)<<8|(s[t+11>>0]|0);o[x+12>>2]=(s[t+13>>0]|0)<<16|(s[t+12>>0]|0)<<24|(s[t+14>>0]|0)<<8|(s[t+15>>0]|0);o[x+16>>2]=(s[t+17>>0]|0)<<16|(s[t+16>>0]|0)<<24|(s[t+18>>0]|0)<<8|(s[t+19>>0]|0);o[x+20>>2]=(s[t+21>>0]|0)<<16|(s[t+20>>0]|0)<<24|(s[t+22>>0]|0)<<8|(s[t+23>>0]|0);o[x+24>>2]=(s[t+25>>0]|0)<<16|(s[t+24>>0]|0)<<24|(s[t+26>>0]|0)<<8|(s[t+27>>0]|0);o[x+28>>2]=(s[t+29>>0]|0)<<16|(s[t+28>>0]|0)<<24|(s[t+30>>0]|0)<<8|(s[t+31>>0]|0);o[x+32>>2]=(s[t+33>>0]|0)<<16|(s[t+32>>0]|0)<<24|(s[t+34>>0]|0)<<8|(s[t+35>>0]|0);o[x+36>>2]=(s[t+37>>0]|0)<<16|(s[t+36>>0]|0)<<24|(s[t+38>>0]|0)<<8|(s[t+39>>0]|0);o[x+40>>2]=(s[t+41>>0]|0)<<16|(s[t+40>>0]|0)<<24|(s[t+42>>0]|0)<<8|(s[t+43>>0]|0);o[x+44>>2]=(s[t+45>>0]|0)<<16|(s[t+44>>0]|0)<<24|(s[t+46>>0]|0)<<8|(s[t+47>>0]|0);o[x+48>>2]=(s[t+49>>0]|0)<<16|(s[t+48>>0]|0)<<24|(s[t+50>>0]|0)<<8|(s[t+51>>0]|0);o[x+52>>2]=(s[t+53>>0]|0)<<16|(s[t+52>>0]|0)<<24|(s[t+54>>0]|0)<<8|(s[t+55>>0]|0);o[x+56>>2]=(s[t+57>>0]|0)<<16|(s[t+56>>0]|0)<<24|(s[t+58>>0]|0)<<8|(s[t+59>>0]|0);o[x+60>>2]=(s[t+61>>0]|0)<<16|(s[t+60>>0]|0)<<24|(s[t+62>>0]|0)<<8|(s[t+63>>0]|0);t=16;n=o[x>>2]|0;do{I=o[x+(t+-2<<2)>>2]|0;T=n;n=o[x+(t+-15<<2)>>2]|0;o[x+(t<<2)>>2]=T+(o[x+(t+-7<<2)>>2]|0)+((I>>>19|I<<13)^I>>>10^(I>>>17|I<<15))+((n>>>18|n<<14)^n>>>3^(n>>>7|n<<25));t=t+1|0}while((t|0)!=64);p=e+80|0;m=o[p>>2]|0;g=e+84|0;y=o[g>>2]|0;b=e+88|0;v=o[b>>2]|0;_=e+92|0;w=o[_>>2]|0;A=e+96|0;E=o[A>>2]|0;k=e+100|0;S=o[k>>2]|0;T=e+104|0;I=o[T>>2]|0;u=e+108|0;d=o[u>>2]|0;e=y;t=d;r=I;i=S;a=E;n=w;c=v;f=m;l=0;while(1){C=((a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7))+t+(r&~a^i&a)+(o[32768+(l<<2)>>2]|0)+(o[x+(l<<2)>>2]|0)|0;t=C+n|0;n=((f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10))+(f&(e^c)^e&c)+C|0;l=l+1|0;if((l|0)==64)break;else{D=c;M=a;P=i;O=r;C=f;a=t;f=n;c=e;n=D;i=M;r=P;t=O;e=C}}o[p>>2]=n+m;o[g>>2]=f+y;o[b>>2]=e+v;o[_>>2]=c+w;o[A>>2]=t+E;o[k>>2]=a+S;o[T>>2]=i+I;o[u>>2]=r+d;h=R;return}function ko(e){e=e|0;var t=0;o[e+64>>2]=0;t=e+72|0;o[t>>2]=0;o[t+4>>2]=0;o[e+80>>2]=1779033703;o[e+84>>2]=-1150833019;o[e+88>>2]=1013904242;o[e+92>>2]=-1521486534;o[e+96>>2]=1359893119;o[e+100>>2]=-1694144372;o[e+104>>2]=528734635;o[e+108>>2]=1541459225;return}function So(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0;if(!n)return;a=e+64|0;c=e+72|0;s=0;i=o[a>>2]|0;do{r[e+i>>0]=r[t+s>>0]|0;i=(o[a>>2]|0)+1|0;o[a>>2]=i;if((i|0)==64){Eo(e,e);f=c;f=ks(o[f>>2]|0,o[f+4>>2]|0,512,0)|0;i=c;o[i>>2]=f;o[i+4>>2]=T;o[a>>2]=0;i=0}s=s+1|0}while((s|0)!=(n|0));return}function To(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0;s=e+64|0;n=o[s>>2]|0;i=n+1|0;r[e+n>>0]=-128;if(n>>>0<56){if(i>>>0<56)Ds(e+i|0,0,55-n|0)|0}else{if(i>>>0<64)Ds(e+i|0,0,63-n|0)|0;Eo(e,e);n=e;i=n+56|0;do{o[n>>2]=0;n=n+4|0}while((n|0)<(i|0))}f=e+72|0;l=f;l=ks(o[l>>2]|0,o[l+4>>2]|0,o[s>>2]<<3|0,0)|0;u=T;o[f>>2]=l;o[f+4>>2]=u;r[e+63>>0]=l;f=Cs(l|0,u|0,8)|0;r[e+62>>0]=f;f=Cs(l|0,u|0,16)|0;r[e+61>>0]=f;f=Cs(l|0,u|0,24)|0;r[e+60>>0]=f;r[e+59>>0]=u;f=Cs(l|0,u|0,40)|0;r[e+58>>0]=f;f=Cs(l|0,u|0,48)|0;r[e+57>>0]=f;u=Cs(l|0,u|0,56)|0;r[e+56>>0]=u;Eo(e,e);u=e+80|0;l=e+84|0;f=e+88|0;c=e+92|0;a=e+96|0;n=e+100|0;i=e+104|0;s=e+108|0;r[t>>0]=(o[u>>2]|0)>>>24;r[t+4>>0]=(o[l>>2]|0)>>>24;r[t+8>>0]=(o[f>>2]|0)>>>24;r[t+12>>0]=(o[c>>2]|0)>>>24;r[t+16>>0]=(o[a>>2]|0)>>>24;r[t+20>>0]=(o[n>>2]|0)>>>24;r[t+24>>0]=(o[i>>2]|0)>>>24;r[t+28>>0]=(o[s>>2]|0)>>>24;r[t+1>>0]=(o[u>>2]|0)>>>16;r[t+5>>0]=(o[l>>2]|0)>>>16;r[t+9>>0]=(o[f>>2]|0)>>>16;r[t+13>>0]=(o[c>>2]|0)>>>16;r[t+17>>0]=(o[a>>2]|0)>>>16;r[t+21>>0]=(o[n>>2]|0)>>>16;r[t+25>>0]=(o[i>>2]|0)>>>16;r[t+29>>0]=(o[s>>2]|0)>>>16;r[t+2>>0]=(o[u>>2]|0)>>>8;r[t+6>>0]=(o[l>>2]|0)>>>8;r[t+10>>0]=(o[f>>2]|0)>>>8;r[t+14>>0]=(o[c>>2]|0)>>>8;r[t+18>>0]=(o[a>>2]|0)>>>8;r[t+22>>0]=(o[n>>2]|0)>>>8;r[t+26>>0]=(o[i>>2]|0)>>>8;r[t+30>>0]=(o[s>>2]|0)>>>8;r[t+3>>0]=o[u>>2];r[t+7>>0]=o[l>>2];r[t+11>>0]=o[f>>2];r[t+15>>0]=o[c>>2];r[t+19>>0]=o[a>>2];r[t+23>>0]=o[n>>2];r[t+27>>0]=o[i>>2];r[t+31>>0]=o[s>>2];return}function Io(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0;L=h;h=h+16|0;M=L;U=M+4|0;E=M+8|0;k=M+12|0;_=r[e+4>>0]|0;S=M+1|0;f=r[e+5>>0]|0;T=M+5|0;m=r[e+6>>0]|0;I=M+9|0;u=r[e+7>>0]|0;x=M+13|0;b=r[e+8>>0]|0;R=M+2|0;d=r[e+9>>0]|0;C=M+6|0;A=r[e+10>>0]|0;O=M+10|0;l=r[e+11>>0]|0;P=M+14|0;a=r[e+12>>0]|0;D=M+3|0;q=r[e+13>>0]|0;N=M+7|0;g=r[e+14>>0]|0;B=M+11|0;p=r[e+15>>0]|0;j=M+15|0;v=o[n>>2]|0;y=v>>>24^(s[e>>0]|0);w=v>>>16^(s[e+1>>0]|0);c=v>>>8^(s[e+2>>0]|0);v=v^(s[e+3>>0]|0);r[k>>0]=v;F=o[n+4>>2]|0;_=F>>>24^_&255;f=F>>>16^f&255;m=F>>>8^m&255;u=F^u&255;F=o[n+8>>2]|0;b=F>>>24^b&255;d=F>>>16^d&255;A=F>>>8^A&255;l=F^l&255;F=o[n+12>>2]|0;a=F>>>24^a&255;e=F>>>16^q&255;g=F>>>8^g&255;p=F^p&255;r[M>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[S>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[R>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;r[D>>0]=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;r[U>>0]=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=e;r[N>>0]=w;r[E>>0]=A;r[O>>0]=c;r[I>>0]=g;r[B>>0]=m;r[k>>0]=p;r[j>>0]=l;r[P>>0]=u;r[x>>0]=v;xo(M);v=o[n+16>>2]|0;u=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);p=v>>>8^(s[E>>0]|0);r[E>>0]=p;v=v^(s[k>>0]|0);r[k>>0]=v;m=o[n+20>>2]|0;g=m>>>24^(s[S>>0]|0);c=m>>>16^(s[T>>0]|0);A=m>>>8^(s[I>>0]|0);m=m^(s[x>>0]|0);r[x>>0]=m;w=o[n+24>>2]|0;e=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);f=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);a=o[n+28>>2]|0;b=a>>>24^(s[D>>0]|0);_=a>>>16^(s[N>>0]|0);y=a>>>8^(s[B>>0]|0);a=a^(s[j>>0]|0);r[M>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;r[S>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;r[R>>0]=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[D>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;r[U>>0]=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=_;r[N>>0]=l;r[E>>0]=f;r[O>>0]=p;r[I>>0]=y;r[B>>0]=A;r[k>>0]=a;r[j>>0]=w;r[P>>0]=m;r[x>>0]=v;xo(M);v=o[n+32>>2]|0;m=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);a=v>>>8^(s[E>>0]|0);r[E>>0]=a;v=v^(s[k>>0]|0);r[k>>0]=v;A=o[n+36>>2]|0;y=A>>>24^(s[S>>0]|0);p=A>>>16^(s[T>>0]|0);f=A>>>8^(s[I>>0]|0);A=A^(s[x>>0]|0);r[x>>0]=A;l=o[n+40>>2]|0;_=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);c=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);b=o[n+44>>2]|0;e=b>>>24^(s[D>>0]|0);g=b>>>16^(s[N>>0]|0);u=b>>>8^(s[B>>0]|0);b=b^(s[j>>0]|0);r[M>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[S>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[R>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[D>>0]=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;r[U>>0]=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=g;r[N>>0]=w;r[E>>0]=c;r[O>>0]=a;r[I>>0]=u;r[B>>0]=f;r[k>>0]=b;r[j>>0]=l;r[P>>0]=A;r[x>>0]=v;xo(M);v=o[n+48>>2]|0;A=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);b=v>>>8^(s[E>>0]|0);r[E>>0]=b;v=v^(s[k>>0]|0);r[k>>0]=v;f=o[n+52>>2]|0;u=f>>>24^(s[S>>0]|0);a=f>>>16^(s[T>>0]|0);c=f>>>8^(s[I>>0]|0);f=f^(s[x>>0]|0);r[x>>0]=f;w=o[n+56>>2]|0;g=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);p=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);e=o[n+60>>2]|0;_=e>>>24^(s[D>>0]|0);y=e>>>16^(s[N>>0]|0);m=e>>>8^(s[B>>0]|0);e=e^(s[j>>0]|0);r[M>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;r[S>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;r[R>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;r[D>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;r[U>>0]=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=y;r[N>>0]=l;r[E>>0]=p;r[O>>0]=b;r[I>>0]=m;r[B>>0]=c;r[k>>0]=e;r[j>>0]=w;r[P>>0]=f;r[x>>0]=v;xo(M);v=o[n+64>>2]|0;f=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);e=v>>>8^(s[E>>0]|0);r[E>>0]=e;v=v^(s[k>>0]|0);r[k>>0]=v;c=o[n+68>>2]|0;m=c>>>24^(s[S>>0]|0);b=c>>>16^(s[T>>0]|0);p=c>>>8^(s[I>>0]|0);c=c^(s[x>>0]|0);r[x>>0]=c;l=o[n+72>>2]|0;y=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);a=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);_=o[n+76>>2]|0;g=_>>>24^(s[D>>0]|0);u=_>>>16^(s[N>>0]|0);A=_>>>8^(s[B>>0]|0);_=_^(s[j>>0]|0);r[M>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[S>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[R>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[D>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;r[U>>0]=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=u;r[N>>0]=w;r[E>>0]=a;r[O>>0]=e;r[I>>0]=A;r[B>>0]=p;r[k>>0]=_;r[j>>0]=l;r[P>>0]=c;r[x>>0]=v;xo(M);v=o[n+80>>2]|0;c=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);_=v>>>8^(s[E>>0]|0);r[E>>0]=_;v=v^(s[k>>0]|0);r[k>>0]=v;p=o[n+84>>2]|0;A=p>>>24^(s[S>>0]|0);e=p>>>16^(s[T>>0]|0);a=p>>>8^(s[I>>0]|0);p=p^(s[x>>0]|0);r[x>>0]=p;w=o[n+88>>2]|0;u=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);b=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);g=o[n+92>>2]|0;y=g>>>24^(s[D>>0]|0);m=g>>>16^(s[N>>0]|0);f=g>>>8^(s[B>>0]|0);g=g^(s[j>>0]|0);r[M>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[S>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;r[R>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;r[D>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;r[U>>0]=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=m;r[N>>0]=l;r[E>>0]=b;r[O>>0]=_;r[I>>0]=f;r[B>>0]=a;r[k>>0]=g;r[j>>0]=w;r[P>>0]=p;r[x>>0]=v;xo(M);v=o[n+96>>2]|0;p=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);g=v>>>8^(s[E>>0]|0);r[E>>0]=g;v=v^(s[k>>0]|0);r[k>>0]=v;a=o[n+100>>2]|0;f=a>>>24^(s[S>>0]|0);_=a>>>16^(s[T>>0]|0);b=a>>>8^(s[I>>0]|0);a=a^(s[x>>0]|0);r[x>>0]=a;l=o[n+104>>2]|0;m=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);e=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);y=o[n+108>>2]|0;u=y>>>24^(s[D>>0]|0);A=y>>>16^(s[N>>0]|0);c=y>>>8^(s[B>>0]|0);y=y^(s[j>>0]|0);r[M>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[S>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[R>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[D>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[U>>0]=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=A;r[N>>0]=w;r[E>>0]=e;r[O>>0]=g;r[I>>0]=c;r[B>>0]=b;r[k>>0]=y;r[j>>0]=l;r[P>>0]=a;r[x>>0]=v;xo(M);v=o[n+112>>2]|0;a=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);y=v>>>8^(s[E>>0]|0);r[E>>0]=y;v=v^(s[k>>0]|0);r[k>>0]=v;b=o[n+116>>2]|0;c=b>>>24^(s[S>>0]|0);g=b>>>16^(s[T>>0]|0);e=b>>>8^(s[I>>0]|0);b=b^(s[x>>0]|0);r[x>>0]=b;w=o[n+120>>2]|0;A=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);_=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);u=o[n+124>>2]|0;m=u>>>24^(s[D>>0]|0);f=u>>>16^(s[N>>0]|0);p=u>>>8^(s[B>>0]|0);u=u^(s[j>>0]|0);r[M>>0]=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[S>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[R>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;r[D>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;r[U>>0]=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=f;r[N>>0]=l;r[E>>0]=_;r[O>>0]=y;r[I>>0]=p;r[B>>0]=e;r[k>>0]=u;r[j>>0]=w;r[P>>0]=b;r[x>>0]=v;xo(M);v=o[n+128>>2]|0;b=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);u=v>>>8^(s[E>>0]|0);r[E>>0]=u;v=v^(s[k>>0]|0);r[k>>0]=v;e=o[n+132>>2]|0;p=e>>>24^(s[S>>0]|0);y=e>>>16^(s[T>>0]|0);_=e>>>8^(s[I>>0]|0);e=e^(s[x>>0]|0);r[x>>0]=e;l=o[n+136>>2]|0;f=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);g=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);m=o[n+140>>2]|0;A=m>>>24^(s[D>>0]|0);c=m>>>16^(s[N>>0]|0);a=m>>>8^(s[B>>0]|0);m=m^(s[j>>0]|0);r[M>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;r[S>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[R>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;r[U>>0]=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=c;r[N>>0]=w;r[E>>0]=g;r[O>>0]=u;r[I>>0]=a;r[B>>0]=_;r[k>>0]=m;r[j>>0]=l;r[P>>0]=e;r[x>>0]=v;xo(M);v=o[n+144>>2]|0;e=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);m=v>>>8^(s[E>>0]|0);r[E>>0]=m;v=v^(s[k>>0]|0);r[k>>0]=v;_=o[n+148>>2]|0;a=_>>>24^(s[S>>0]|0);u=_>>>16^(s[T>>0]|0);g=_>>>8^(s[I>>0]|0);_=_^(s[x>>0]|0);r[x>>0]=_;w=o[n+152>>2]|0;c=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);y=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);A=o[n+156>>2]|0;f=A>>>24^(s[D>>0]|0);p=A>>>16^(s[N>>0]|0);b=A>>>8^(s[B>>0]|0);A=A^(s[j>>0]|0);e=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[M>>0]=e;a=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[S>>0]=a;c=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[R>>0]=c;f=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=f;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;r[U>>0]=u;r[T>>0]=d;r[C>>0]=p;r[N>>0]=l;r[E>>0]=y;r[O>>0]=m;r[I>>0]=b;r[B>>0]=g;r[k>>0]=A;r[j>>0]=w;r[P>>0]=_;r[x>>0]=v;if((i|0)==128){z=b;K=d;G=41;H=A;A=y;V=u;q=e;e=40;F=w;b=g;y=l;g=f;d=43;i=p;u=c;p=42;f=n+(e<<2)|0;f=o[f>>2]|0;w=f>>>24;c=f>>>16;l=f>>>8;q=q&255;q=w^q;q=q&255;r[M>>0]=q;w=V&255;w=c^w;w=w&255;r[U>>0]=w;A=A&255;A=l^A;A=A&255;r[E>>0]=A;E=H&255;E=f^E;E=E&255;r[k>>0]=E;U=n+(G<<2)|0;U=o[U>>2]|0;f=U>>>24;l=U>>>16;M=U>>>8;k=a&255;k=f^k;k=k&255;r[S>>0]=k;S=K&255;S=l^S;S=S&255;r[T>>0]=S;T=z&255;T=M^T;T=T&255;r[I>>0]=T;I=v&255;I=U^I;I=I&255;r[x>>0]=I;U=n+(p<<2)|0;U=o[U>>2]|0;p=U>>>24;v=U>>>16;M=U>>>8;x=u&255;x=p^x;x=x&255;r[R>>0]=x;i=i&255;i=v^i;i=i&255;r[C>>0]=i;C=m&255;C=M^C;C=C&255;r[O>>0]=C;O=_&255;O=U^O;O=O&255;r[P>>0]=O;P=n+(d<<2)|0;P=o[P>>2]|0;n=P>>>24;U=P>>>16;R=P>>>8;M=g&255;M=n^M;M=M&255;r[D>>0]=M;D=y&255;D=U^D;D=D&255;r[N>>0]=D;U=b&255;U=R^U;U=U&255;r[B>>0]=U;F=F&255;F=P^F;F=F&255;r[j>>0]=F;r[t>>0]=q;q=t+1|0;r[q>>0]=w;q=t+2|0;r[q>>0]=A;q=t+3|0;r[q>>0]=E;q=t+4|0;r[q>>0]=k;q=t+5|0;r[q>>0]=S;q=t+6|0;r[q>>0]=T;q=t+7|0;r[q>>0]=I;q=t+8|0;r[q>>0]=x;q=t+9|0;r[q>>0]=i;q=t+10|0;r[q>>0]=C;q=t+11|0;r[q>>0]=O;q=t+12|0;r[q>>0]=M;q=t+13|0;r[q>>0]=D;q=t+14|0;r[q>>0]=U;q=t+15|0;r[q>>0]=F;h=L;return}xo(M);v=o[n+160>>2]|0;b=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);u=v>>>8^(s[E>>0]|0);r[E>>0]=u;v=v^(s[k>>0]|0);r[k>>0]=v;e=o[n+164>>2]|0;p=e>>>24^(s[S>>0]|0);y=e>>>16^(s[T>>0]|0);_=e>>>8^(s[I>>0]|0);e=e^(s[x>>0]|0);r[x>>0]=e;l=o[n+168>>2]|0;f=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);g=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);m=o[n+172>>2]|0;A=m>>>24^(s[D>>0]|0);c=m>>>16^(s[N>>0]|0);a=m>>>8^(s[B>>0]|0);m=m^(s[j>>0]|0);r[M>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;r[S>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[R>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;r[U>>0]=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=c;r[N>>0]=w;r[E>>0]=g;r[O>>0]=u;r[I>>0]=a;r[B>>0]=_;r[k>>0]=m;r[j>>0]=l;r[P>>0]=e;r[x>>0]=v;xo(M);v=o[n+176>>2]|0;e=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);m=v>>>8^(s[E>>0]|0);r[E>>0]=m;v=v^(s[k>>0]|0);r[k>>0]=v;_=o[n+180>>2]|0;a=_>>>24^(s[S>>0]|0);u=_>>>16^(s[T>>0]|0);g=_>>>8^(s[I>>0]|0);_=_^(s[x>>0]|0);r[x>>0]=_;w=o[n+184>>2]|0;c=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);y=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);A=o[n+188>>2]|0;f=A>>>24^(s[D>>0]|0);p=A>>>16^(s[N>>0]|0);b=A>>>8^(s[B>>0]|0);A=A^(s[j>>0]|0);e=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[M>>0]=e;a=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[S>>0]=a;c=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[R>>0]=c;f=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=f;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;r[U>>0]=u;r[T>>0]=d;r[C>>0]=p;r[N>>0]=l;r[E>>0]=y;r[O>>0]=m;r[I>>0]=b;r[B>>0]=g;r[k>>0]=A;r[j>>0]=w;r[P>>0]=_;r[x>>0]=v;if((i|0)==192){Q=b;W=49;Y=A;A=y;V=e;e=48;H=w;G=g;K=l;z=f;b=51;q=_;F=m;y=p;g=c;_=50;i=v;m=n+(e<<2)|0;m=o[m>>2]|0;w=m>>>24;p=m>>>16;v=m>>>8;V=V&255;V=w^V;V=V&255;r[M>>0]=V;w=u&255;w=p^w;w=w&255;r[U>>0]=w;A=A&255;A=v^A;A=A&255;r[E>>0]=A;E=Y&255;E=m^E;E=E&255;r[k>>0]=E;U=n+(W<<2)|0;U=o[U>>2]|0;m=U>>>24;v=U>>>16;M=U>>>8;k=a&255;k=m^k;k=k&255;r[S>>0]=k;S=d&255;S=v^S;S=S&255;r[T>>0]=S;T=Q&255;T=M^T;T=T&255;r[I>>0]=T;i=i&255;i=U^i;i=i&255;r[x>>0]=i;x=n+(_<<2)|0;x=o[x>>2]|0;U=x>>>24;_=x>>>16;I=x>>>8;M=g&255;M=U^M;M=M&255;r[R>>0]=M;U=y&255;U=_^U;U=U&255;r[C>>0]=U;F=F&255;F=I^F;F=F&255;r[O>>0]=F;q=q&255;q=x^q;q=q&255;r[P>>0]=q;P=n+(b<<2)|0;P=o[P>>2]|0;R=P>>>24;C=P>>>16;O=P>>>8;z=z&255;z=R^z;z=z&255;r[D>>0]=z;K=K&255;K=C^K;K=K&255;r[N>>0]=K;G=G&255;G=O^G;G=G&255;r[B>>0]=G;H=H&255;H=P^H;H=H&255;r[j>>0]=H;r[t>>0]=V;V=t+1|0;r[V>>0]=w;V=t+2|0;r[V>>0]=A;V=t+3|0;r[V>>0]=E;V=t+4|0;r[V>>0]=k;V=t+5|0;r[V>>0]=S;V=t+6|0;r[V>>0]=T;V=t+7|0;r[V>>0]=i;V=t+8|0;r[V>>0]=M;V=t+9|0;r[V>>0]=U;V=t+10|0;r[V>>0]=F;V=t+11|0;r[V>>0]=q;V=t+12|0;r[V>>0]=z;V=t+13|0;r[V>>0]=K;V=t+14|0;r[V>>0]=G;V=t+15|0;r[V>>0]=H;h=L;return}xo(M);F=o[n+192>>2]|0;y=F>>>24^(s[M>>0]|0);W=F>>>16^(s[U>>0]|0);w=F>>>8^(s[E>>0]|0);r[E>>0]=w;F=F^(s[k>>0]|0);r[k>>0]=F;Y=o[n+196>>2]|0;z=Y>>>24^(s[S>>0]|0);A=Y>>>16^(s[T>>0]|0);G=Y>>>8^(s[I>>0]|0);Y=Y^(s[x>>0]|0);r[x>>0]=Y;V=o[n+200>>2]|0;H=V>>>24^(s[R>>0]|0);g=V>>>16^(s[C>>0]|0);Q=V>>>8^(s[O>>0]|0);V=V^(s[P>>0]|0);K=o[n+204>>2]|0;p=K>>>24^(s[D>>0]|0);q=K>>>16^(s[N>>0]|0);i=K>>>8^(s[B>>0]|0);K=K^(s[j>>0]|0);r[M>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[S>>0]=r[(z&15)+(33024+(z>>>4<<4))>>0]|0;r[R>>0]=r[(H&15)+(33024+(H>>>4<<4))>>0]|0;r[D>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;W=r[(W&15)+(33024+((W>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;q=r[(q&15)+(33024+((q>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;G=r[(G&15)+(33024+((G>>>4&15)<<4))>>0]|0;Q=r[(Q&15)+(33024+((Q>>>4&15)<<4))>>0]|0;i=r[(i&15)+(33024+((i>>>4&15)<<4))>>0]|0;F=r[(F&15)+(33024+((F>>>4&15)<<4))>>0]|0;Y=r[(Y&15)+(33024+((Y>>>4&15)<<4))>>0]|0;V=r[(V&15)+(33024+((V>>>4&15)<<4))>>0]|0;K=r[(K&15)+(33024+((K>>>4&15)<<4))>>0]|0;r[U>>0]=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;r[T>>0]=g;r[C>>0]=q;r[N>>0]=W;r[E>>0]=Q;r[O>>0]=w;r[I>>0]=i;r[B>>0]=G;r[k>>0]=K;r[j>>0]=V;r[P>>0]=Y;r[x>>0]=F;xo(M);F=o[n+208>>2]|0;Y=F>>>24^(s[M>>0]|0);V=F>>>16^(s[U>>0]|0);K=F>>>8^(s[E>>0]|0);r[E>>0]=K;F=F^(s[k>>0]|0);r[k>>0]=F;G=o[n+212>>2]|0;i=G>>>24^(s[S>>0]|0);w=G>>>16^(s[T>>0]|0);Q=G>>>8^(s[I>>0]|0);G=G^(s[x>>0]|0);r[x>>0]=G;W=o[n+216>>2]|0;q=W>>>24^(s[R>>0]|0);g=W>>>16^(s[C>>0]|0);A=W>>>8^(s[O>>0]|0);W=W^(s[P>>0]|0);p=o[n+220>>2]|0;H=p>>>24^(s[D>>0]|0);z=p>>>16^(s[N>>0]|0);y=p>>>8^(s[B>>0]|0);p=p^(s[j>>0]|0);Y=r[(Y&15)+(33024+(Y>>>4<<4))>>0]|0;i=r[(i&15)+(33024+(i>>>4<<4))>>0]|0;r[S>>0]=i;q=r[(q&15)+(33024+(q>>>4<<4))>>0]|0;r[R>>0]=q;H=r[(H&15)+(33024+(H>>>4<<4))>>0]|0;r[D>>0]=H;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;b=57;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;m=56;W=r[(W&15)+(33024+((W>>>4&15)<<4))>>0]|0;Q=r[(Q&15)+(33024+((Q>>>4&15)<<4))>>0]|0;V=r[(V&15)+(33024+((V>>>4&15)<<4))>>0]|0;_=59;G=r[(G&15)+(33024+((G>>>4&15)<<4))>>0]|0;K=r[(K&15)+(33024+((K>>>4&15)<<4))>>0]|0;z=r[(z&15)+(33024+((z>>>4&15)<<4))>>0]|0;v=58;F=r[(F&15)+(33024+((F>>>4&15)<<4))>>0]|0;m=n+(m<<2)|0;m=o[m>>2]|0;l=m>>>24;u=m>>>16;d=m>>>8;Y=Y&255;Y=l^Y;Y=Y&255;r[M>>0]=Y;w=w&255;w=u^w;w=w&255;r[U>>0]=w;A=A&255;A=d^A;A=A&255;r[E>>0]=A;E=p&255;E=m^E;E=E&255;r[k>>0]=E;k=n+(b<<2)|0;k=o[k>>2]|0;M=k>>>24;U=k>>>16;b=k>>>8;i=i&255;i=M^i;i=i&255;r[S>>0]=i;M=g&255;M=U^M;M=M&255;r[T>>0]=M;U=y&255;U=b^U;U=U&255;r[I>>0]=U;F=F&255;F=k^F;F=F&255;r[x>>0]=F;x=n+(v<<2)|0;x=o[x>>2]|0;S=x>>>24;T=x>>>16;I=x>>>8;q=q&255;q=S^q;q=q&255;r[R>>0]=q;z=z&255;z=T^z;z=z&255;r[C>>0]=z;K=K&255;K=I^K;K=K&255;r[O>>0]=K;G=G&255;G=x^G;G=G&255;r[P>>0]=G;P=n+(_<<2)|0;P=o[P>>2]|0;R=P>>>24;C=P>>>16;O=P>>>8;H=H&255;H=R^H;H=H&255;r[D>>0]=H;V=V&255;V=C^V;V=V&255;r[N>>0]=V;Q=Q&255;Q=O^Q;Q=Q&255;r[B>>0]=Q;W=W&255;W=P^W;W=W&255;r[j>>0]=W;r[t>>0]=Y;Y=t+1|0;r[Y>>0]=w;Y=t+2|0;r[Y>>0]=A;Y=t+3|0;r[Y>>0]=E;Y=t+4|0;r[Y>>0]=i;Y=t+5|0;r[Y>>0]=M;Y=t+6|0;r[Y>>0]=U;Y=t+7|0;r[Y>>0]=F;Y=t+8|0;r[Y>>0]=q;Y=t+9|0;r[Y>>0]=z;Y=t+10|0;r[Y>>0]=K;Y=t+11|0;r[Y>>0]=G;Y=t+12|0;r[Y>>0]=H;Y=t+13|0;r[Y>>0]=V;Y=t+14|0;r[Y>>0]=Q;Y=t+15|0;r[Y>>0]=W;h=L;return}function xo(e){e=e|0;var t=0,n=0,i=0,o=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0;h=r[e>>0]|0;u=e+4|0;i=r[u>>0]|0;o=e+8|0;s=r[o>>0]|0;a=e+12|0;n=r[a>>0]|0;f=h&255;c=i&255;t=s&255;d=n&255;r[e>>0]=n^s^r[33280+(f*6|0)>>0]^r[33280+(c*6|0)+1>>0];r[u>>0]=r[33280+(c*6|0)>>0]^h^n^r[33280+(t*6|0)+1>>0];r[o>>0]=r[33280+(d*6|0)+1>>0]^(r[33280+(t*6|0)>>0]^(i^h));r[a>>0]=s^i^r[33280+(f*6|0)+1>>0]^r[33280+(d*6|0)>>0];a=e+1|0;d=r[a>>0]|0;f=e+5|0;i=r[f>>0]|0;s=e+9|0;o=r[s>>0]|0;h=e+13|0;t=r[h>>0]|0;u=d&255;n=i&255;c=o&255;l=t&255;r[a>>0]=t^o^r[33280+(u*6|0)>>0]^r[33280+(n*6|0)+1>>0];r[f>>0]=r[33280+(n*6|0)>>0]^d^t^r[33280+(c*6|0)+1>>0];r[s>>0]=r[33280+(l*6|0)+1>>0]^(r[33280+(c*6|0)>>0]^(i^d));r[h>>0]=o^i^r[33280+(u*6|0)+1>>0]^r[33280+(l*6|0)>>0];h=e+2|0;l=r[h>>0]|0;u=e+6|0;i=r[u>>0]|0;o=e+10|0;s=r[o>>0]|0;d=e+14|0;c=r[d>>0]|0;f=l&255;t=i&255;n=s&255;a=c&255;r[h>>0]=c^s^r[33280+(f*6|0)>>0]^r[33280+(t*6|0)+1>>0];r[u>>0]=r[33280+(t*6|0)>>0]^l^c^r[33280+(n*6|0)+1>>0];r[o>>0]=r[33280+(a*6|0)+1>>0]^(r[33280+(n*6|0)>>0]^(i^l));r[d>>0]=s^i^r[33280+(f*6|0)+1>>0]^r[33280+(a*6|0)>>0];d=e+3|0;a=r[d>>0]|0;f=e+7|0;i=r[f>>0]|0;s=e+11|0;o=r[s>>0]|0;e=e+15|0;l=r[e>>0]|0;n=a&255;u=i&255;c=o&255;t=l&255;r[d>>0]=l^o^r[33280+(n*6|0)>>0]^r[33280+(u*6|0)+1>>0];r[f>>0]=r[33280+(u*6|0)>>0]^a^l^r[33280+(c*6|0)+1>>0];r[s>>0]=r[33280+(t*6|0)+1>>0]^(r[33280+(c*6|0)>>0]^(i^a));r[e>>0]=o^i^r[33280+(n*6|0)+1>>0]^r[33280+(t*6|0)>>0];return}function Ro(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,a=0;switch(n|0){case 128:{i=4;a=44;break}case 192:{i=6;a=52;break}case 256:{i=8;a=60;break}default:return}n=0;do{r=n<<2;o[t+(n<<2)>>2]=(s[e+(r|1)>>0]|0)<<16|(s[e+r>>0]|0)<<24|(s[e+(r|2)>>0]|0)<<8|(s[e+(r|3)>>0]|0);n=n+1|0}while(n>>>0>>0);if(i>>>0<=6){r=i;do{e=r+-1|0;n=o[t+(e<<2)>>2]|0;if(!((r>>>0)%(i>>>0)|0))n=((s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)<<8|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)|(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<16|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<24)^o[34816+(((e|0)/(i|0)|0)<<2)>>2];o[t+(r<<2)>>2]=o[t+(r-i<<2)>>2]^n;r=r+1|0}while((r|0)!=(a|0));return}r=i;do{e=r+-1|0;n=o[t+(e<<2)>>2]|0;switch(((r>>>0)%(i>>>0)|0)&15){case 0:{n=((s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)<<8|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)|(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<16|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<24)^o[34816+(((e|0)/(i|0)|0)<<2)>>2];break}case 4:{n=(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<8|(s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<16|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)<<24;break}default:{}}o[t+(r<<2)>>2]=o[t+(r-i<<2)>>2]^n;r=r+1|0}while((r|0)!=(a|0));return}function Co(e){e=e|0;var t=0,n=0,i=0,o=0,a=0,c=0,f=0,l=0;f=e+4|0;i=e+8|0;n=e+12|0;t=s[e>>0]|0;a=s[f>>0]|0;l=s[i>>0]|0;o=s[n>>0]|0;r[e>>0]=r[33280+(o*6|0)+2>>0]^(r[33280+(l*6|0)+4>>0]^(r[33280+(a*6|0)+3>>0]^r[33280+(t*6|0)+5>>0]));r[f>>0]=r[33280+(o*6|0)+4>>0]^(r[33280+(l*6|0)+3>>0]^(r[33280+(a*6|0)+5>>0]^r[33280+(t*6|0)+2>>0]));r[i>>0]=r[33280+(o*6|0)+3>>0]^(r[33280+(l*6|0)+5>>0]^(r[33280+(a*6|0)+2>>0]^r[33280+(t*6|0)+4>>0]));r[n>>0]=r[33280+(o*6|0)+5>>0]^(r[33280+(l*6|0)+2>>0]^(r[33280+(a*6|0)+4>>0]^r[33280+(t*6|0)+3>>0]));n=e+1|0;t=e+5|0;a=e+9|0;l=e+13|0;o=s[n>>0]|0;i=s[t>>0]|0;f=s[a>>0]|0;c=s[l>>0]|0;r[n>>0]=r[33280+(c*6|0)+2>>0]^(r[33280+(f*6|0)+4>>0]^(r[33280+(i*6|0)+3>>0]^r[33280+(o*6|0)+5>>0]));r[t>>0]=r[33280+(c*6|0)+4>>0]^(r[33280+(f*6|0)+3>>0]^(r[33280+(i*6|0)+5>>0]^r[33280+(o*6|0)+2>>0]));r[a>>0]=r[33280+(c*6|0)+3>>0]^(r[33280+(f*6|0)+5>>0]^(r[33280+(i*6|0)+2>>0]^r[33280+(o*6|0)+4>>0]));r[l>>0]=r[33280+(c*6|0)+5>>0]^(r[33280+(f*6|0)+2>>0]^(r[33280+(i*6|0)+4>>0]^r[33280+(o*6|0)+3>>0]));l=e+2|0;o=e+6|0;i=e+10|0;f=e+14|0;c=s[l>>0]|0;a=s[o>>0]|0;t=s[i>>0]|0;n=s[f>>0]|0;r[l>>0]=r[33280+(n*6|0)+2>>0]^(r[33280+(t*6|0)+4>>0]^(r[33280+(a*6|0)+3>>0]^r[33280+(c*6|0)+5>>0]));r[o>>0]=r[33280+(n*6|0)+4>>0]^(r[33280+(t*6|0)+3>>0]^(r[33280+(a*6|0)+5>>0]^r[33280+(c*6|0)+2>>0]));r[i>>0]=r[33280+(n*6|0)+3>>0]^(r[33280+(t*6|0)+5>>0]^(r[33280+(a*6|0)+2>>0]^r[33280+(c*6|0)+4>>0]));r[f>>0]=r[33280+(n*6|0)+5>>0]^(r[33280+(t*6|0)+2>>0]^(r[33280+(a*6|0)+4>>0]^r[33280+(c*6|0)+3>>0]));f=e+3|0;c=e+7|0;a=e+11|0;e=e+15|0;t=s[f>>0]|0;n=s[c>>0]|0;i=s[a>>0]|0;o=s[e>>0]|0;r[f>>0]=r[33280+(o*6|0)+2>>0]^(r[33280+(i*6|0)+4>>0]^(r[33280+(n*6|0)+3>>0]^r[33280+(t*6|0)+5>>0]));r[c>>0]=r[33280+(o*6|0)+4>>0]^(r[33280+(i*6|0)+3>>0]^(r[33280+(n*6|0)+5>>0]^r[33280+(t*6|0)+2>>0]));r[a>>0]=r[33280+(o*6|0)+3>>0]^(r[33280+(i*6|0)+5>>0]^(r[33280+(n*6|0)+2>>0]^r[33280+(t*6|0)+4>>0]));r[e>>0]=r[33280+(o*6|0)+5>>0]^(r[33280+(i*6|0)+2>>0]^(r[33280+(n*6|0)+4>>0]^r[33280+(t*6|0)+3>>0]));return}function Oo(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0;L=h;h=h+16|0;D=L;w=r[e>>0]|0;r[D>>0]=w;A=r[e+1>>0]|0;U=D+4|0;r[U>>0]=A;a=r[e+2>>0]|0;k=D+8|0;r[k>>0]=a;c=r[e+3>>0]|0;S=D+12|0;r[S>>0]=c;f=r[e+4>>0]|0;T=D+1|0;r[T>>0]=f;l=r[e+5>>0]|0;I=D+5|0;r[I>>0]=l;u=r[e+6>>0]|0;x=D+9|0;r[x>>0]=u;d=r[e+7>>0]|0;R=D+13|0;r[R>>0]=d;p=r[e+8>>0]|0;C=D+2|0;r[C>>0]=p;m=r[e+9>>0]|0;O=D+6|0;r[O>>0]=m;g=r[e+10>>0]|0;P=D+10|0;r[P>>0]=g;y=r[e+11>>0]|0;M=D+14|0;r[M>>0]=y;b=r[e+12>>0]|0;N=D+3|0;r[N>>0]=b;v=r[e+13>>0]|0;B=D+7|0;r[B>>0]=v;_=r[e+14>>0]|0;j=D+11|0;r[j>>0]=_;e=r[e+15>>0]|0;E=D+15|0;r[E>>0]=e;if((i|0)>128){if((i|0)>192){F=o[n+224>>2]|0;H=F>>>24^w&255;G=F>>>16^A&255;z=F>>>8^a&255;w=F^c&255;F=o[n+228>>2]|0;A=F>>>24^f&255;K=F>>>16^l&255;q=F>>>8^u&255;F=F^d&255;c=o[n+232>>2]|0;a=c>>>24^p&255;p=c>>>16^m&255;i=c>>>8^g&255;c=c^y&255;f=o[n+236>>2]|0;g=f>>>24^b&255;l=f>>>16^v&255;m=f>>>8^_&255;f=f^e&255;v=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[T>>0]=A;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[C>>0]=a;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[N>>0]=g;l=r[(l&15)+(34880+((l>>>4&15)<<4))>>0]|0;u=r[(G&15)+(34880+((G>>>4&15)<<4))>>0]|0;d=r[(K&15)+(34880+((K>>>4&15)<<4))>>0]|0;r[O>>0]=d;y=r[(p&15)+(34880+((p>>>4&15)<<4))>>0]|0;r[B>>0]=y;i=r[(i&15)+(34880+((i>>>4&15)<<4))>>0]|0;m=r[(m&15)+(34880+((m>>>4&15)<<4))>>0]|0;_=r[(z&15)+(34880+((z>>>4&15)<<4))>>0]|0;p=r[(q&15)+(34880+((q>>>4&15)<<4))>>0]|0;r[j>>0]=p;e=r[(F&15)+(34880+((F>>>4&15)<<4))>>0]|0;c=r[(c&15)+(34880+((c>>>4&15)<<4))>>0]|0;f=r[(f&15)+(34880+((f>>>4&15)<<4))>>0]|0;w=r[(w&15)+(34880+((w>>>4&15)<<4))>>0]|0;b=o[n+208>>2]|0;r[D>>0]=b>>>24^v&255;r[U>>0]=b>>>16^l&255;r[k>>0]=b>>>8^i&255;r[S>>0]=b^e&255;e=o[n+212>>2]|0;r[T>>0]=e>>>24^A&255;r[I>>0]=e>>>16^u&255;r[x>>0]=e>>>8^m&255;r[R>>0]=e^c&255;c=o[n+216>>2]|0;r[C>>0]=c>>>24^a&255;r[O>>0]=c>>>16^d&255;r[P>>0]=c>>>8^_&255;r[M>>0]=c^f&255;f=o[n+220>>2]|0;r[N>>0]=f>>>24^g&255;r[B>>0]=f>>>16^y&255;r[j>>0]=f>>>8^p&255;r[E>>0]=f^w&255;Co(D);w=r[B>>0]|0;f=r[O>>0]|0;p=r[I>>0]|0;y=r[U>>0]|0;g=r[j>>0]|0;c=r[x>>0]|0;_=r[P>>0]|0;d=r[k>>0]|0;a=r[E>>0]|0;e=r[S>>0]|0;m=r[R>>0]|0;u=r[M>>0]|0;A=s[D>>0]|0;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[D>>0]=A;b=s[T>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[T>>0]=b;i=s[C>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[C>>0]=i;l=s[N>>0]|0;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;r[N>>0]=l;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;p=p&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[O>>0]=p;f=f&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;r[B>>0]=f;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;c=c&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[j>>0]=c;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;v=o[n+192>>2]|0;r[D>>0]=v>>>24^A&255;r[U>>0]=v>>>16^w&255;r[k>>0]=v>>>8^_&255;r[S>>0]=v^m&255;m=o[n+196>>2]|0;r[T>>0]=m>>>24^b&255;r[I>>0]=m>>>16^y&255;r[x>>0]=m>>>8^g&255;r[R>>0]=m^u&255;u=o[n+200>>2]|0;r[C>>0]=u>>>24^i&255;r[O>>0]=u>>>16^p&255;r[P>>0]=u>>>8^d&255;r[M>>0]=u^a&255;a=o[n+204>>2]|0;r[N>>0]=a>>>24^l&255;r[B>>0]=a>>>16^f&255;r[j>>0]=a>>>8^c&255;r[E>>0]=a^e&255;Co(D);e=r[D>>0]|0;a=r[T>>0]|0;c=r[C>>0]|0;f=r[N>>0]|0;l=r[B>>0]|0;u=r[U>>0]|0;d=r[I>>0]|0;p=r[O>>0]|0;i=r[P>>0]|0;m=r[j>>0]|0;g=r[k>>0]|0;y=r[x>>0]|0;b=r[R>>0]|0;v=r[M>>0]|0;_=r[E>>0]|0;w=r[S>>0]|0}else{G=o[n+192>>2]|0;V=(G>>>24^w&255)&255;r[D>>0]=V;F=(G>>>16^A&255)&255;r[U>>0]=F;z=(G>>>8^a&255)&255;r[k>>0]=z;w=(G^c&255)&255;r[S>>0]=w;G=o[n+196>>2]|0;a=(G>>>24^f&255)&255;r[T>>0]=a;q=(G>>>16^l&255)&255;r[I>>0]=q;K=(G>>>8^u&255)&255;r[x>>0]=K;G=(G^d&255)&255;r[R>>0]=G;H=o[n+200>>2]|0;c=(H>>>24^p&255)&255;r[C>>0]=c;p=(H>>>16^m&255)&255;r[O>>0]=p;i=(H>>>8^g&255)&255;r[P>>0]=i;H=(H^y&255)&255;r[M>>0]=H;u=o[n+204>>2]|0;f=(u>>>24^b&255)&255;r[N>>0]=f;l=(u>>>16^v&255)&255;r[B>>0]=l;m=(u>>>8^_&255)&255;r[j>>0]=m;_=(u^e&255)&255;r[E>>0]=_;e=V;u=F;d=q;g=z;y=K;b=G;v=H}H=e&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;V=a&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[T>>0]=V;e=c&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;r[C>>0]=e;a=f&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[N>>0]=a;l=l&255;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;r[O>>0]=d;c=p&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[B>>0]=c;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;p=y&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[j>>0]=p;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;y=v&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;f=_&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;_=o[n+176>>2]|0;r[D>>0]=_>>>24^H&255;r[U>>0]=_>>>16^l&255;r[k>>0]=_>>>8^i&255;r[S>>0]=_^b&255;_=o[n+180>>2]|0;r[T>>0]=_>>>24^V&255;r[I>>0]=_>>>16^u&255;r[x>>0]=_>>>8^m&255;r[R>>0]=_^y&255;y=o[n+184>>2]|0;r[C>>0]=y>>>24^e&255;r[O>>0]=y>>>16^d&255;r[P>>0]=y>>>8^g&255;r[M>>0]=y^f&255;f=o[n+188>>2]|0;r[N>>0]=f>>>24^a&255;r[B>>0]=f>>>16^c&255;r[j>>0]=f>>>8^p&255;r[E>>0]=f^w&255;Co(D);w=r[B>>0]|0;f=r[O>>0]|0;p=r[I>>0]|0;y=r[U>>0]|0;g=r[j>>0]|0;c=r[x>>0]|0;_=r[P>>0]|0;d=r[k>>0]|0;a=r[E>>0]|0;e=r[S>>0]|0;m=r[R>>0]|0;u=r[M>>0]|0;V=s[D>>0]|0;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[D>>0]=V;b=s[T>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[T>>0]=b;i=s[C>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[C>>0]=i;l=s[N>>0]|0;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;r[N>>0]=l;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;p=p&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[O>>0]=p;f=f&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;r[B>>0]=f;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;c=c&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[j>>0]=c;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;v=o[n+160>>2]|0;r[D>>0]=v>>>24^V&255;r[U>>0]=v>>>16^w&255;r[k>>0]=v>>>8^_&255;r[S>>0]=v^m&255;m=o[n+164>>2]|0;r[T>>0]=m>>>24^b&255;r[I>>0]=m>>>16^y&255;r[x>>0]=m>>>8^g&255;r[R>>0]=m^u&255;u=o[n+168>>2]|0;r[C>>0]=u>>>24^i&255;r[O>>0]=u>>>16^p&255;r[P>>0]=u>>>8^d&255;r[M>>0]=u^a&255;a=o[n+172>>2]|0;r[N>>0]=a>>>24^l&255;r[B>>0]=a>>>16^f&255;r[j>>0]=a>>>8^c&255;r[E>>0]=a^e&255;Co(D);e=r[D>>0]|0;a=r[T>>0]|0;c=r[C>>0]|0;f=r[N>>0]|0;l=r[B>>0]|0;u=r[U>>0]|0;d=r[I>>0]|0;p=r[O>>0]|0;i=r[P>>0]|0;m=r[j>>0]|0;g=r[k>>0]|0;y=r[x>>0]|0;b=r[R>>0]|0;v=r[M>>0]|0;_=r[E>>0]|0;w=r[S>>0]|0}else{H=o[n+160>>2]|0;F=(H>>>24^w&255)&255;r[D>>0]=F;q=(H>>>16^A&255)&255;r[U>>0]=q;K=(H>>>8^a&255)&255;r[k>>0]=K;w=(H^c&255)&255;r[S>>0]=w;H=o[n+164>>2]|0;a=(H>>>24^f&255)&255;r[T>>0]=a;z=(H>>>16^l&255)&255;r[I>>0]=z;G=(H>>>8^u&255)&255;r[x>>0]=G;H=(H^d&255)&255;r[R>>0]=H;V=o[n+168>>2]|0;c=(V>>>24^p&255)&255;r[C>>0]=c;p=(V>>>16^m&255)&255;r[O>>0]=p;i=(V>>>8^g&255)&255;r[P>>0]=i;V=(V^y&255)&255;r[M>>0]=V;u=o[n+172>>2]|0;f=(u>>>24^b&255)&255;r[N>>0]=f;l=(u>>>16^v&255)&255;r[B>>0]=l;m=(u>>>8^_&255)&255;r[j>>0]=m;_=(u^e&255)&255;r[E>>0]=_;e=F;u=q;d=z;g=K;y=G;b=H;v=V}e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[T>>0]=a;A=c&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[C>>0]=A;V=f&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[N>>0]=V;l=l&255;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;z=u&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;H=d&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[O>>0]=H;G=p&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[B>>0]=G;p=i&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;F=g&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;q=y&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[j>>0]=q;i=b&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;b=v&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;K=_&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;v=w&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;w=o[n+144>>2]|0;r[D>>0]=w>>>24^e&255;r[U>>0]=w>>>16^l&255;r[k>>0]=w>>>8^p&255;r[S>>0]=w^i&255;w=o[n+148>>2]|0;r[T>>0]=w>>>24^a&255;r[I>>0]=w>>>16^z&255;r[x>>0]=w>>>8^m&255;r[R>>0]=w^b&255;w=o[n+152>>2]|0;r[C>>0]=w>>>24^A&255;r[O>>0]=w>>>16^H&255;r[P>>0]=w>>>8^F&255;r[M>>0]=w^K&255;K=o[n+156>>2]|0;r[N>>0]=K>>>24^V&255;r[B>>0]=K>>>16^G&255;r[j>>0]=K>>>8^q&255;r[E>>0]=K^v&255;Co(D);v=r[B>>0]|0;K=r[O>>0]|0;q=r[I>>0]|0;G=r[U>>0]|0;w=r[j>>0]|0;b=r[x>>0]|0;V=r[P>>0]|0;F=r[k>>0]|0;m=r[E>>0]|0;H=r[S>>0]|0;i=r[R>>0]|0;A=r[M>>0]|0;g=s[D>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[D>>0]=g;p=s[T>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[T>>0]=p;z=s[C>>0]|0;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[C>>0]=z;_=s[N>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[N>>0]=_;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[O>>0]=q;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[B>>0]=K;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[j>>0]=b;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;y=o[n+128>>2]|0;r[D>>0]=y>>>24^g&255;r[U>>0]=y>>>16^v&255;r[k>>0]=y>>>8^V&255;r[S>>0]=y^i&255;i=o[n+132>>2]|0;r[T>>0]=i>>>24^p&255;r[I>>0]=i>>>16^G&255;r[x>>0]=i>>>8^w&255;r[R>>0]=i^A&255;A=o[n+136>>2]|0;r[C>>0]=A>>>24^z&255;r[O>>0]=A>>>16^q&255;r[P>>0]=A>>>8^F&255;r[M>>0]=A^m&255;m=o[n+140>>2]|0;r[N>>0]=m>>>24^_&255;r[B>>0]=m>>>16^K&255;r[j>>0]=m>>>8^b&255;r[E>>0]=m^H&255;Co(D);H=r[B>>0]|0;m=r[O>>0]|0;b=r[I>>0]|0;K=r[U>>0]|0;_=r[j>>0]|0;A=r[x>>0]|0;F=r[P>>0]|0;q=r[k>>0]|0;z=r[E>>0]|0;i=r[S>>0]|0;w=r[R>>0]|0;G=r[M>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;y=s[T>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[T>>0]=y;V=s[C>>0]|0;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[C>>0]=V;v=s[N>>0]|0;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;r[N>>0]=v;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[O>>0]=b;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[B>>0]=m;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[j>>0]=A;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;g=o[n+112>>2]|0;r[D>>0]=g>>>24^p&255;r[U>>0]=g>>>16^H&255;r[k>>0]=g>>>8^F&255;r[S>>0]=g^w&255;w=o[n+116>>2]|0;r[T>>0]=w>>>24^y&255;r[I>>0]=w>>>16^K&255;r[x>>0]=w>>>8^_&255;r[R>>0]=w^G&255;G=o[n+120>>2]|0;r[C>>0]=G>>>24^V&255;r[O>>0]=G>>>16^b&255;r[P>>0]=G>>>8^q&255;r[M>>0]=G^z&255;z=o[n+124>>2]|0;r[N>>0]=z>>>24^v&255;r[B>>0]=z>>>16^m&255;r[j>>0]=z>>>8^A&255;r[E>>0]=z^i&255;Co(D);i=r[B>>0]|0;z=r[O>>0]|0;A=r[I>>0]|0;m=r[U>>0]|0;v=r[j>>0]|0;G=r[x>>0]|0;q=r[P>>0]|0;b=r[k>>0]|0;V=r[E>>0]|0;w=r[S>>0]|0;_=r[R>>0]|0;K=r[M>>0]|0;y=s[D>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[D>>0]=y;g=s[T>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[T>>0]=g;F=s[C>>0]|0;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[C>>0]=F;H=s[N>>0]|0;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[N>>0]=H;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[O>>0]=A;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[B>>0]=z;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[j>>0]=G;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;p=o[n+96>>2]|0;r[D>>0]=p>>>24^y&255;r[U>>0]=p>>>16^i&255;r[k>>0]=p>>>8^q&255;r[S>>0]=p^_&255;_=o[n+100>>2]|0;r[T>>0]=_>>>24^g&255;r[I>>0]=_>>>16^m&255;r[x>>0]=_>>>8^v&255;r[R>>0]=_^K&255;K=o[n+104>>2]|0;r[C>>0]=K>>>24^F&255;r[O>>0]=K>>>16^A&255;r[P>>0]=K>>>8^b&255;r[M>>0]=K^V&255;V=o[n+108>>2]|0;r[N>>0]=V>>>24^H&255;r[B>>0]=V>>>16^z&255;r[j>>0]=V>>>8^G&255;r[E>>0]=V^w&255;Co(D);w=r[B>>0]|0;V=r[O>>0]|0;G=r[I>>0]|0;z=r[U>>0]|0;H=r[j>>0]|0;K=r[x>>0]|0;b=r[P>>0]|0;A=r[k>>0]|0;F=r[E>>0]|0;_=r[S>>0]|0;v=r[R>>0]|0;m=r[M>>0]|0;g=s[D>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[D>>0]=g;p=s[T>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[T>>0]=p;q=s[C>>0]|0;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[C>>0]=q;i=s[N>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[N>>0]=i;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[O>>0]=G;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[B>>0]=V;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[j>>0]=K;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;y=o[n+80>>2]|0;r[D>>0]=y>>>24^g&255;r[U>>0]=y>>>16^w&255;r[k>>0]=y>>>8^b&255;r[S>>0]=y^v&255;v=o[n+84>>2]|0;r[T>>0]=v>>>24^p&255;r[I>>0]=v>>>16^z&255;r[x>>0]=v>>>8^H&255;r[R>>0]=v^m&255;m=o[n+88>>2]|0;r[C>>0]=m>>>24^q&255;r[O>>0]=m>>>16^G&255;r[P>>0]=m>>>8^A&255;r[M>>0]=m^F&255;F=o[n+92>>2]|0;r[N>>0]=F>>>24^i&255;r[B>>0]=F>>>16^V&255;r[j>>0]=F>>>8^K&255;r[E>>0]=F^_&255;Co(D);_=r[B>>0]|0;F=r[O>>0]|0;K=r[I>>0]|0;V=r[U>>0]|0;i=r[j>>0]|0;m=r[x>>0]|0;A=r[P>>0]|0;G=r[k>>0]|0;q=r[E>>0]|0;v=r[S>>0]|0;H=r[R>>0]|0;z=r[M>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;y=s[T>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[T>>0]=y;b=s[C>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[C>>0]=b;w=s[N>>0]|0;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[N>>0]=w;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[O>>0]=K;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[B>>0]=F;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[j>>0]=m;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;g=o[n+64>>2]|0;r[D>>0]=g>>>24^p&255;r[U>>0]=g>>>16^_&255;r[k>>0]=g>>>8^A&255;r[S>>0]=g^H&255;H=o[n+68>>2]|0;r[T>>0]=H>>>24^y&255;r[I>>0]=H>>>16^V&255;r[x>>0]=H>>>8^i&255;r[R>>0]=H^z&255;z=o[n+72>>2]|0;r[C>>0]=z>>>24^b&255;r[O>>0]=z>>>16^K&255;r[P>>0]=z>>>8^G&255;r[M>>0]=z^q&255;q=o[n+76>>2]|0;r[N>>0]=q>>>24^w&255;r[B>>0]=q>>>16^F&255;r[j>>0]=q>>>8^m&255;r[E>>0]=q^v&255;Co(D);v=r[B>>0]|0;q=r[O>>0]|0;m=r[I>>0]|0;F=r[U>>0]|0;w=r[j>>0]|0;z=r[x>>0]|0;G=r[P>>0]|0;K=r[k>>0]|0;b=r[E>>0]|0;H=r[S>>0]|0;i=r[R>>0]|0;V=r[M>>0]|0;y=s[D>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[D>>0]=y;g=s[T>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[T>>0]=g;A=s[C>>0]|0;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[C>>0]=A;_=s[N>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[N>>0]=_;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[O>>0]=m;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[B>>0]=q;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[j>>0]=z;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;p=o[n+48>>2]|0;r[D>>0]=p>>>24^y&255;r[U>>0]=p>>>16^v&255;r[k>>0]=p>>>8^G&255;r[S>>0]=p^i&255;i=o[n+52>>2]|0;r[T>>0]=i>>>24^g&255;r[I>>0]=i>>>16^F&255;r[x>>0]=i>>>8^w&255;r[R>>0]=i^V&255;V=o[n+56>>2]|0;r[C>>0]=V>>>24^A&255;r[O>>0]=V>>>16^m&255;r[P>>0]=V>>>8^K&255;r[M>>0]=V^b&255;b=o[n+60>>2]|0;r[N>>0]=b>>>24^_&255;r[B>>0]=b>>>16^q&255;r[j>>0]=b>>>8^z&255;r[E>>0]=b^H&255;Co(D);H=r[B>>0]|0;b=r[O>>0]|0;z=r[I>>0]|0;q=r[U>>0]|0;_=r[j>>0]|0;V=r[x>>0]|0;K=r[P>>0]|0;m=r[k>>0]|0;A=r[E>>0]|0;i=r[S>>0]|0;w=r[R>>0]|0;F=r[M>>0]|0;g=s[D>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[D>>0]=g;p=s[T>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[T>>0]=p;G=s[C>>0]|0;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[C>>0]=G;v=s[N>>0]|0;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;r[N>>0]=v;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[O>>0]=z;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[B>>0]=b;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[j>>0]=V;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;y=o[n+32>>2]|0;r[D>>0]=y>>>24^g&255;r[U>>0]=y>>>16^H&255;r[k>>0]=y>>>8^K&255;r[S>>0]=y^w&255;w=o[n+36>>2]|0;r[T>>0]=w>>>24^p&255;r[I>>0]=w>>>16^q&255;r[x>>0]=w>>>8^_&255;r[R>>0]=w^F&255;F=o[n+40>>2]|0;r[C>>0]=F>>>24^G&255;r[O>>0]=F>>>16^z&255;r[P>>0]=F>>>8^m&255;r[M>>0]=F^A&255;A=o[n+44>>2]|0;r[N>>0]=A>>>24^v&255;r[B>>0]=A>>>16^b&255;r[j>>0]=A>>>8^V&255;r[E>>0]=A^i&255;Co(D);i=r[B>>0]|0;A=r[O>>0]|0;V=r[I>>0]|0;b=r[U>>0]|0;v=r[j>>0]|0;F=r[x>>0]|0;m=r[P>>0]|0;z=r[k>>0]|0;G=r[E>>0]|0;w=r[S>>0]|0;_=r[R>>0]|0;q=r[M>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;y=s[T>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[T>>0]=y;K=s[C>>0]|0;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[C>>0]=K;H=s[N>>0]|0;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[N>>0]=H;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[O>>0]=V;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[B>>0]=A;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[j>>0]=F;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;g=o[n+16>>2]|0;r[D>>0]=g>>>24^p&255;r[U>>0]=g>>>16^i&255;r[k>>0]=g>>>8^m&255;r[S>>0]=g^_&255;_=o[n+20>>2]|0;r[T>>0]=_>>>24^y&255;r[I>>0]=_>>>16^b&255;r[x>>0]=_>>>8^v&255;r[R>>0]=_^q&255;q=o[n+24>>2]|0;r[C>>0]=q>>>24^K&255;r[O>>0]=q>>>16^V&255;r[P>>0]=q>>>8^z&255;r[M>>0]=q^G&255;G=o[n+28>>2]|0;r[N>>0]=G>>>24^H&255;r[B>>0]=G>>>16^A&255;r[j>>0]=G>>>8^F&255;r[E>>0]=G^w&255;Co(D);w=r[B>>0]|0;G=r[O>>0]|0;F=r[I>>0]|0;A=r[U>>0]|0;I=r[j>>0]|0;H=r[x>>0]|0;P=r[P>>0]|0;q=r[k>>0]|0;z=r[E>>0]|0;V=r[S>>0]|0;O=r[R>>0]|0;B=r[M>>0]|0;x=s[D>>0]|0;x=r[(x&15)+(34880+(x>>>4<<4))>>0]|0;r[D>>0]=x;M=s[T>>0]|0;M=r[(M&15)+(34880+(M>>>4<<4))>>0]|0;r[T>>0]=M;U=s[C>>0]|0;U=r[(U&15)+(34880+(U>>>4<<4))>>0]|0;r[C>>0]=U;K=s[N>>0]|0;R=w&255;D=A&255;F=F&255;G=G&255;C=P&255;N=I&255;q=q&255;H=H&255;O=O&255;B=B&255;z=z&255;V=V&255;I=o[n>>2]|0;R=(I>>>16^(s[(R&15)+(34880+(R>>>4<<4))>>0]|0))&255;C=(I>>>8^(s[(C&15)+(34880+(C>>>4<<4))>>0]|0))&255;O=(I^(s[(O&15)+(34880+(O>>>4<<4))>>0]|0))&255;P=o[n+4>>2]|0;D=(P>>>16^(s[(D&15)+(34880+(D>>>4<<4))>>0]|0))&255;N=(P>>>8^(s[(N&15)+(34880+(N>>>4<<4))>>0]|0))&255;B=(P^(s[(B&15)+(34880+(B>>>4<<4))>>0]|0))&255;j=o[n+8>>2]|0;F=(j>>>16^(s[(F&15)+(34880+(F>>>4<<4))>>0]|0))&255;q=(j>>>8^(s[(q&15)+(34880+(q>>>4<<4))>>0]|0))&255;z=(j^(s[(z&15)+(34880+(z>>>4<<4))>>0]|0))&255;n=o[n+12>>2]|0;K=(n>>>24^(s[(K&15)+(34880+(K>>>4<<4))>>0]|0))&255;G=(n>>>16^(s[(G&15)+(34880+(G>>>4<<4))>>0]|0))&255;H=(n>>>8^(s[(H&15)+(34880+(H>>>4<<4))>>0]|0))&255;V=(n^(s[(V&15)+(34880+(V>>>4<<4))>>0]|0))&255;r[t>>0]=I>>>24^x&255;r[t+1>>0]=R;r[t+2>>0]=C;r[t+3>>0]=O;r[t+4>>0]=P>>>24^M&255;r[t+5>>0]=D;r[t+6>>0]=N;r[t+7>>0]=B;r[t+8>>0]=j>>>24^U&255;r[t+9>>0]=F;r[t+10>>0]=q;r[t+11>>0]=z;r[t+12>>0]=K;r[t+13>>0]=G;r[t+14>>0]=H;r[t+15>>0]=V;h=L;return}function Po(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Ne=0,Be=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ct=0,ft=0,lt=0,ut=0,dt=0,ht=0,pt=0,mt=0,gt=0,yt=0,bt=0,vt=0,_t=0,wt=0,At=0,Et=0,kt=0,St=0,Tt=0,It=0,xt=0,Rt=0,Ct=0,Ot=0,Pt=0,Mt=0,Dt=0,Nt=0,Bt=0,jt=0,Ut=0,Lt=0,Ft=0,qt=0;Pt=h;h=h+2768|0;bt=Pt+2608|0;vt=Pt+2448|0;Ct=Pt+2288|0;_t=Pt+2128|0;wt=Pt+1968|0;At=Pt+1808|0;Ot=Pt+1648|0;Et=Pt+1488|0;kt=Pt+1328|0;St=Pt+1168|0;f=Pt+1008|0;c=Pt+848|0;a=Pt+688|0;i=Pt+528|0;Tt=Pt+368|0;at=Pt+288|0;It=Pt+208|0;xt=Pt+112|0;Rt=Pt+32|0;ct=Pt;st=ct;ot=st+32|0;do{r[st>>0]=r[t>>0]|0;st=st+1|0;t=t+1|0}while((st|0)<(ot|0));r[ct>>0]=r[ct>>0]&-8;st=ct+31|0;r[st>>0]=r[st>>0]&63|64;st=s[n>>0]|0;pt=Os(s[n+1>>0]|0|0,0,8)|0;ht=T;gt=Os(s[n+2>>0]|0|0,0,16)|0;ht=ht|T;mt=s[n+3>>0]|0;ot=Os(mt|0,0,24)|0;yt=at;o[yt>>2]=pt|st|gt|ot&50331648;o[yt+4>>2]=ht;yt=Os(s[n+4>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+5>>0]|0|0,0,16)|0;ht=ht|T;gt=s[n+6>>0]|0;st=Os(gt|0,0,24)|0;ht=Cs(yt|mt|ot|st|0,ht|T|0,2)|0;st=at+8|0;o[st>>2]=ht&33554431;o[st+4>>2]=0;st=Os(s[n+7>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+8>>0]|0|0,0,16)|0;ht=ht|T;mt=s[n+9>>0]|0;yt=Os(mt|0,0,24)|0;ht=Cs(st|gt|ot|yt|0,ht|T|0,3)|0;yt=at+16|0;o[yt>>2]=ht&67108863;o[yt+4>>2]=0;yt=Os(s[n+10>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+11>>0]|0|0,0,16)|0;ht=ht|T;gt=s[n+12>>0]|0;st=Os(gt|0,0,24)|0;ht=Cs(yt|mt|ot|st|0,ht|T|0,5)|0;st=at+24|0;o[st>>2]=ht&33554431;o[st+4>>2]=0;st=Os(s[n+13>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+14>>0]|0|0,0,16)|0;ht=ht|T;mt=Os(s[n+15>>0]|0|0,0,24)|0;ht=Cs(st|gt|ot|mt|0,ht|T|0,6)|0;mt=at+32|0;o[mt>>2]=ht&67108863;o[mt+4>>2]=0;mt=s[n+16>>0]|0;ht=Os(s[n+17>>0]|0|0,0,8)|0;ot=T;gt=Os(s[n+18>>0]|0|0,0,16)|0;ot=ot|T;st=s[n+19>>0]|0;yt=Os(st|0,0,24)|0;pt=at+40|0;o[pt>>2]=ht|mt|gt|yt&16777216;o[pt+4>>2]=ot;pt=Os(s[n+20>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+21>>0]|0|0,0,16)|0;ot=ot|T;gt=s[n+22>>0]|0;mt=Os(gt|0,0,24)|0;ot=Cs(pt|st|yt|mt|0,ot|T|0,1)|0;mt=at+48|0;o[mt>>2]=ot&67108863;o[mt+4>>2]=0;mt=Os(s[n+23>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+24>>0]|0|0,0,16)|0;ot=ot|T;st=s[n+25>>0]|0;pt=Os(st|0,0,24)|0;ot=Cs(mt|gt|yt|pt|0,ot|T|0,3)|0;pt=at+56|0;o[pt>>2]=ot&33554431;o[pt+4>>2]=0;pt=Os(s[n+26>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+27>>0]|0|0,0,16)|0;ot=ot|T;gt=s[n+28>>0]|0;mt=Os(gt|0,0,24)|0;ot=Cs(pt|st|yt|mt|0,ot|T|0,4)|0;mt=at+64|0;o[mt>>2]=ot&67108863;o[mt+4>>2]=0;mt=Os(s[n+29>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+30>>0]|0|0,0,16)|0;ot=ot|T;st=Os(s[n+31>>0]|0|0,0,24)|0;ot=Cs(mt|gt|yt|st|0,ot|T|0,6)|0;st=at+72|0;o[st>>2]=ot&33554431;o[st+4>>2]=0;Ds(Et|0,0,152)|0;st=Et;o[st>>2]=1;o[st+4>>2]=0;Ds(kt|0,0,152)|0;st=kt;o[st>>2]=1;o[st+4>>2]=0;Ds(St|0,0,152)|0;Ds(f|0,0,152)|0;Ds(c|0,0,152)|0;st=c;o[st>>2]=1;o[st+4>>2]=0;Ds(a|0,0,152)|0;Ds(i|0,0,152)|0;st=i;o[st>>2]=1;o[st+4>>2]=0;st=Ot+80|0;ot=st+72|0;do{o[st>>2]=0;st=st+4|0}while((st|0)<(ot|0));st=Ot;t=at;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));oe=Ct+144|0;se=Ct+64|0;ae=Ct+136|0;ce=Ct+56|0;fe=Ct+128|0;le=Ct+48|0;ue=Ct+120|0;de=Ct+40|0;he=Ct+112|0;pe=Ct+32|0;me=Ct+104|0;ge=Ct+24|0;ye=Ct+96|0;be=Ct+16|0;ve=Ct+88|0;_e=Ct+8|0;we=Ct+80|0;Ae=_t+144|0;Ee=_t+64|0;ke=_t+136|0;Se=_t+56|0;Te=_t+128|0;Ie=_t+48|0;xe=_t+120|0;Re=_t+40|0;Ce=_t+112|0;Oe=_t+32|0;Pe=_t+104|0;Me=_t+24|0;De=_t+96|0;Ne=_t+16|0;Be=_t+88|0;je=_t+8|0;Ue=_t+80|0;ie=Ct+72|0;Le=_t+72|0;Fe=bt+8|0;qe=vt+8|0;ze=bt+16|0;Ke=vt+16|0;Ge=bt+24|0;He=vt+24|0;Ve=bt+32|0;Qe=vt+32|0;We=bt+40|0;Ye=vt+40|0;Xe=bt+48|0;Je=vt+48|0;Ze=bt+56|0;$e=vt+56|0;et=bt+64|0;tt=vt+64|0;nt=bt+72|0;rt=vt+72|0;ft=Tt+80|0;lt=Tt+8|0;ut=Tt+16|0;dt=Tt+24|0;ht=Tt+32|0;pt=Tt+40|0;mt=Tt+48|0;gt=Tt+56|0;yt=Tt+64|0;it=Tt+72|0;d=Ot;re=0;t=f;n=Et;f=St;l=kt;while(1){u=r[ct+(31-re)>>0]|0;$=0;ee=i;te=a;ne=c;J=t;c=n;i=f;a=l;Z=d;while(1){Y=u&255;X=Y>>>7;Mo(a,Z,X,0);Mo(i,c,X,0);E=a;l=o[E>>2]|0;E=o[E+4>>2]|0;V=a+8|0;G=V;P=o[G>>2]|0;G=o[G+4>>2]|0;Bt=a+16|0;I=Bt;S=o[I>>2]|0;I=o[I+4>>2]|0;x=a+24|0;Mt=x;Q=o[Mt>>2]|0;Mt=o[Mt+4>>2]|0;v=a+32|0;_=v;jt=o[_>>2]|0;_=o[_+4>>2]|0;y=a+40|0;u=y;R=o[u>>2]|0;u=o[u+4>>2]|0;K=a+48|0;ot=K;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;N=a+56|0;C=N;F=o[C>>2]|0;C=o[C+4>>2]|0;Ut=a+64|0;w=Ut;U=o[w>>2]|0;w=o[w+4>>2]|0;g=a+72|0;Dt=g;Nt=o[Dt>>2]|0;Dt=o[Dt+4>>2]|0;k=i;j=o[k>>2]|0;k=o[k+4>>2]|0;b=ks(j|0,k|0,l|0,E|0)|0;p=a;o[p>>2]=b;o[p+4>>2]=T;p=i+8|0;b=p;H=o[b>>2]|0;b=o[b+4>>2]|0;D=ks(H|0,b|0,P|0,G|0)|0;o[V>>2]=D;o[V+4>>2]=T;V=i+16|0;D=V;L=o[D>>2]|0;D=o[D+4>>2]|0;f=ks(L|0,D|0,S|0,I|0)|0;o[Bt>>2]=f;o[Bt+4>>2]=T;Bt=i+24|0;f=Bt;n=o[f>>2]|0;f=o[f+4>>2]|0;Ft=ks(n|0,f|0,Q|0,Mt|0)|0;o[x>>2]=Ft;o[x+4>>2]=T;x=i+32|0;Ft=x;m=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;B=ks(m|0,Ft|0,jt|0,_|0)|0;o[v>>2]=B;o[v+4>>2]=T;v=i+40|0;B=v;q=o[B>>2]|0;B=o[B+4>>2]|0;A=ks(q|0,B|0,R|0,u|0)|0;o[y>>2]=A;o[y+4>>2]=T;y=i+48|0;A=y;M=o[A>>2]|0;A=o[A+4>>2]|0;d=ks(M|0,A|0,W|0,ot|0)|0;o[K>>2]=d;o[K+4>>2]=T;K=i+56|0;d=K;O=o[d>>2]|0;d=o[d+4>>2]|0;st=ks(O|0,d|0,F|0,C|0)|0;o[N>>2]=st;o[N+4>>2]=T;N=i+64|0;st=N;t=o[st>>2]|0;st=o[st+4>>2]|0;Lt=ks(t|0,st|0,U|0,w|0)|0;o[Ut>>2]=Lt;o[Ut+4>>2]=T;Ut=i+72|0;Lt=Ut;z=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;qt=ks(z|0,Lt|0,Nt|0,Dt|0)|0;o[g>>2]=qt;o[g+4>>2]=T;k=Ss(l|0,E|0,j|0,k|0)|0;j=i;o[j>>2]=k;o[j+4>>2]=T;b=Ss(P|0,G|0,H|0,b|0)|0;o[p>>2]=b;o[p+4>>2]=T;D=Ss(S|0,I|0,L|0,D|0)|0;o[V>>2]=D;o[V+4>>2]=T;f=Ss(Q|0,Mt|0,n|0,f|0)|0;o[Bt>>2]=f;o[Bt+4>>2]=T;Ft=Ss(jt|0,_|0,m|0,Ft|0)|0;o[x>>2]=Ft;o[x+4>>2]=T;B=Ss(R|0,u|0,q|0,B|0)|0;o[v>>2]=B;o[v+4>>2]=T;A=Ss(W|0,ot|0,M|0,A|0)|0;o[y>>2]=A;o[y+4>>2]=T;d=Ss(F|0,C|0,O|0,d|0)|0;o[K>>2]=d;o[K+4>>2]=T;st=Ss(U|0,w|0,t|0,st|0)|0;o[N>>2]=st;o[N+4>>2]=T;Lt=Ss(Nt|0,Dt|0,z|0,Lt|0)|0;o[Ut>>2]=Lt;o[Ut+4>>2]=T;Ut=Z;Lt=o[Ut>>2]|0;Ut=o[Ut+4>>2]|0;z=Z+8|0;Dt=z;Nt=o[Dt>>2]|0;Dt=o[Dt+4>>2]|0;N=Z+16|0;st=N;t=o[st>>2]|0;st=o[st+4>>2]|0;w=Z+24|0;U=w;K=o[U>>2]|0;U=o[U+4>>2]|0;d=Z+32|0;O=d;C=o[O>>2]|0;O=o[O+4>>2]|0;F=Z+40|0;y=F;A=o[y>>2]|0;y=o[y+4>>2]|0;M=Z+48|0;ot=M;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;v=Z+56|0;B=v;q=o[B>>2]|0;B=o[B+4>>2]|0;u=Z+64|0;R=u;x=o[R>>2]|0;R=o[R+4>>2]|0;Ft=Z+72|0;m=Ft;_=o[m>>2]|0;m=o[m+4>>2]|0;jt=c;Bt=o[jt>>2]|0;jt=o[jt+4>>2]|0;f=ks(Bt|0,jt|0,Lt|0,Ut|0)|0;n=Z;o[n>>2]=f;o[n+4>>2]=T;n=c+8|0;f=n;Mt=o[f>>2]|0;f=o[f+4>>2]|0;Q=ks(Mt|0,f|0,Nt|0,Dt|0)|0;o[z>>2]=Q;o[z+4>>2]=T;z=c+16|0;Q=z;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;D=ks(V|0,Q|0,t|0,st|0)|0;o[N>>2]=D;o[N+4>>2]=T;N=c+24|0;D=N;L=o[D>>2]|0;D=o[D+4>>2]|0;I=ks(L|0,D|0,K|0,U|0)|0;o[w>>2]=I;o[w+4>>2]=T;w=c+32|0;I=w;S=o[I>>2]|0;I=o[I+4>>2]|0;p=ks(S|0,I|0,C|0,O|0)|0;o[d>>2]=p;o[d+4>>2]=T;d=c+40|0;p=d;b=o[p>>2]|0;p=o[p+4>>2]|0;H=ks(b|0,p|0,A|0,y|0)|0;o[F>>2]=H;o[F+4>>2]=T;F=c+48|0;H=F;G=o[H>>2]|0;H=o[H+4>>2]|0;P=ks(G|0,H|0,W|0,ot|0)|0;o[M>>2]=P;o[M+4>>2]=T;M=c+56|0;P=M;j=o[P>>2]|0;P=o[P+4>>2]|0;k=ks(j|0,P|0,q|0,B|0)|0;o[v>>2]=k;o[v+4>>2]=T;v=c+64|0;k=v;E=o[k>>2]|0;k=o[k+4>>2]|0;l=ks(E|0,k|0,x|0,R|0)|0;o[u>>2]=l;o[u+4>>2]=T;u=c+72|0;l=u;g=o[l>>2]|0;l=o[l+4>>2]|0;qt=ks(g|0,l|0,_|0,m|0)|0;o[Ft>>2]=qt;o[Ft+4>>2]=T;jt=Ss(Lt|0,Ut|0,Bt|0,jt|0)|0;Bt=c;o[Bt>>2]=jt;o[Bt+4>>2]=T;f=Ss(Nt|0,Dt|0,Mt|0,f|0)|0;o[n>>2]=f;o[n+4>>2]=T;Q=Ss(t|0,st|0,V|0,Q|0)|0;o[z>>2]=Q;o[z+4>>2]=T;D=Ss(K|0,U|0,L|0,D|0)|0;o[N>>2]=D;o[N+4>>2]=T;I=Ss(C|0,O|0,S|0,I|0)|0;o[w>>2]=I;o[w+4>>2]=T;p=Ss(A|0,y|0,b|0,p|0)|0;o[d>>2]=p;o[d+4>>2]=T;H=Ss(W|0,ot|0,G|0,H|0)|0;o[F>>2]=H;o[F+4>>2]=T;P=Ss(q|0,B|0,j|0,P|0)|0;o[M>>2]=P;o[M+4>>2]=T;k=Ss(x|0,R|0,E|0,k|0)|0;o[v>>2]=k;o[v+4>>2]=T;l=Ss(_|0,m|0,g|0,l|0)|0;o[u>>2]=l;o[u+4>>2]=T;Do(Ct,Z,i);Do(_t,a,c);u=oe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=se;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=se;o[_>>2]=v;o[_+4>>2]=T;_=ae;v=o[_>>2]|0;_=o[_+4>>2]|0;u=ce;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=ce;o[g>>2]=m;o[g+4>>2]=T;g=fe;m=o[g>>2]|0;g=o[g+4>>2]|0;_=le;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=le;o[u>>2]=l;o[u+4>>2]=T;u=ue;l=o[u>>2]|0;u=o[u+4>>2]|0;g=de;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=de;o[_>>2]=v;o[_+4>>2]=T;_=he;v=o[_>>2]|0;_=o[_+4>>2]|0;u=pe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=pe;o[g>>2]=m;o[g+4>>2]=T;g=me;m=o[g>>2]|0;g=o[g+4>>2]|0;_=ge;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=ge;o[u>>2]=l;o[u+4>>2]=T;u=ye;l=o[u>>2]|0;u=o[u+4>>2]|0;g=be;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=be;o[_>>2]=v;o[_+4>>2]=T;_=ve;v=o[_>>2]|0;_=o[_+4>>2]|0;u=_e;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=_e;o[g>>2]=m;o[g+4>>2]=T;g=we;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Ct;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=Ct;o[u>>2]=l;o[u+4>>2]=T;No(Ct);u=Ae;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Ee;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=Ee;o[_>>2]=v;o[_+4>>2]=T;_=ke;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Se;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=Se;o[g>>2]=m;o[g+4>>2]=T;g=Te;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Ie;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=Ie;o[u>>2]=l;o[u+4>>2]=T;u=xe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Re;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=Re;o[_>>2]=v;o[_+4>>2]=T;_=Ce;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Oe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=Oe;o[g>>2]=m;o[g+4>>2]=T;g=Pe;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Me;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=Me;o[u>>2]=l;o[u+4>>2]=T;u=De;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Ne;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=Ne;o[_>>2]=v;o[_+4>>2]=T;_=Be;v=o[_>>2]|0;_=o[_+4>>2]|0;u=je;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=je;o[g>>2]=m;o[g+4>>2]=T;g=Ue;m=o[g>>2]|0;g=o[g+4>>2]|0;_=_t;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=_t;o[u>>2]=l;o[u+4>>2]=T;No(_t);u=Ct;l=o[u>>2]|0;u=o[u+4>>2]|0;g=_e;m=o[g>>2]|0;g=o[g+4>>2]|0;_=be;v=o[_>>2]|0;_=o[_+4>>2]|0;k=ge;E=o[k>>2]|0;k=o[k+4>>2]|0;R=pe;x=o[R>>2]|0;R=o[R+4>>2]|0;M=de;P=o[M>>2]|0;M=o[M+4>>2]|0;j=le;B=o[j>>2]|0;j=o[j+4>>2]|0;q=ce;F=o[q>>2]|0;q=o[q+4>>2]|0;H=se;G=o[H>>2]|0;H=o[H+4>>2]|0;ot=ie;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;d=_t;p=o[d>>2]|0;d=o[d+4>>2]|0;b=ks(p|0,d|0,l|0,u|0)|0;y=Ct;o[y>>2]=b;o[y+4>>2]=T;y=je;b=o[y>>2]|0;y=o[y+4>>2]|0;A=ks(b|0,y|0,m|0,g|0)|0;w=_e;o[w>>2]=A;o[w+4>>2]=T;w=Ne;A=o[w>>2]|0;w=o[w+4>>2]|0;I=ks(A|0,w|0,v|0,_|0)|0;S=be;o[S>>2]=I;o[S+4>>2]=T;S=Me;I=o[S>>2]|0;S=o[S+4>>2]|0;O=ks(I|0,S|0,E|0,k|0)|0;C=ge;o[C>>2]=O;o[C+4>>2]=T;C=Oe;O=o[C>>2]|0;C=o[C+4>>2]|0;N=ks(O|0,C|0,x|0,R|0)|0;D=pe;o[D>>2]=N;o[D+4>>2]=T;D=Re;N=o[D>>2]|0;D=o[D+4>>2]|0;L=ks(N|0,D|0,P|0,M|0)|0;U=de;o[U>>2]=L;o[U+4>>2]=T;U=Ie;L=o[U>>2]|0;U=o[U+4>>2]|0;K=ks(L|0,U|0,B|0,j|0)|0;z=le;o[z>>2]=K;o[z+4>>2]=T;z=Se;K=o[z>>2]|0;z=o[z+4>>2]|0;Q=ks(K|0,z|0,F|0,q|0)|0;V=ce;o[V>>2]=Q;o[V+4>>2]=T;V=Ee;Q=o[V>>2]|0;V=o[V+4>>2]|0;st=ks(Q|0,V|0,G|0,H|0)|0;t=se;o[t>>2]=st;o[t+4>>2]=T;t=Le;st=o[t>>2]|0;t=o[t+4>>2]|0;n=ks(st|0,t|0,W|0,ot|0)|0;f=ie;o[f>>2]=n;o[f+4>>2]=T;d=Ss(l|0,u|0,p|0,d|0)|0;p=_t;o[p>>2]=d;o[p+4>>2]=T;y=Ss(m|0,g|0,b|0,y|0)|0;b=je;o[b>>2]=y;o[b+4>>2]=T;w=Ss(v|0,_|0,A|0,w|0)|0;A=Ne;o[A>>2]=w;o[A+4>>2]=T;S=Ss(E|0,k|0,I|0,S|0)|0;I=Me;o[I>>2]=S;o[I+4>>2]=T;C=Ss(x|0,R|0,O|0,C|0)|0;O=Oe;o[O>>2]=C;o[O+4>>2]=T;D=Ss(P|0,M|0,N|0,D|0)|0;N=Re;o[N>>2]=D;o[N+4>>2]=T;U=Ss(B|0,j|0,L|0,U|0)|0;L=Ie;o[L>>2]=U;o[L+4>>2]=T;z=Ss(F|0,q|0,K|0,z|0)|0;K=Se;o[K>>2]=z;o[K+4>>2]=T;V=Ss(G|0,H|0,Q|0,V|0)|0;Q=Ee;o[Q>>2]=V;o[Q+4>>2]=T;t=Ss(W|0,ot|0,st|0,t|0)|0;st=Le;o[st>>2]=t;o[st+4>>2]=T;Bo(At,Ct);Bo(wt,_t);Do(_t,wt,at);st=Ae;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Ee;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=T;st=ks(W|0,ot|0,t|0,st|0)|0;V=ks(st|0,T|0,Q|0,V|0)|0;Q=Ee;o[Q>>2]=V;o[Q+4>>2]=T;Q=ke;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Se;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=T;Q=ks(t|0,st|0,V|0,Q|0)|0;W=ks(Q|0,T|0,ot|0,W|0)|0;ot=Se;o[ot>>2]=W;o[ot+4>>2]=T;ot=Te;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Ie;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=T;ot=ks(V|0,Q|0,W|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Ie;o[st>>2]=t;o[st+4>>2]=T;st=xe;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Re;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=T;st=ks(W|0,ot|0,t|0,st|0)|0;V=ks(st|0,T|0,Q|0,V|0)|0;Q=Re;o[Q>>2]=V;o[Q+4>>2]=T;Q=Ce;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Oe;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=T;Q=ks(t|0,st|0,V|0,Q|0)|0;W=ks(Q|0,T|0,ot|0,W|0)|0;ot=Oe;o[ot>>2]=W;o[ot+4>>2]=T;ot=Pe;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Me;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=T;ot=ks(V|0,Q|0,W|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Me;o[st>>2]=t;o[st+4>>2]=T;st=De;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Ne;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=T;st=ks(W|0,ot|0,t|0,st|0)|0;V=ks(st|0,T|0,Q|0,V|0)|0;Q=Ne;o[Q>>2]=V;o[Q+4>>2]=T;Q=Be;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=je;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=T;Q=ks(t|0,st|0,V|0,Q|0)|0;W=ks(Q|0,T|0,ot|0,W|0)|0;ot=je;o[ot>>2]=W;o[ot+4>>2]=T;ot=Ue;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=_t;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=T;ot=ks(V|0,Q|0,W|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=_t;o[st>>2]=t;o[st+4>>2]=T;No(_t);st=J;t=At;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));st=ne;t=_t;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(bt,a);Bo(vt,i);Do(te,bt,vt);f=te+144|0;p=o[f>>2]|0;f=o[f+4>>2]|0;d=te+64|0;u=d;l=o[u>>2]|0;u=o[u+4>>2]|0;t=Es(p|0,f|0,18,0)|0;n=T;f=ks(l|0,u|0,p|0,f|0)|0;n=ks(f|0,T|0,t|0,n|0)|0;o[d>>2]=n;o[d+4>>2]=T;d=te+136|0;n=o[d>>2]|0;d=o[d+4>>2]|0;t=te+56|0;f=t;p=o[f>>2]|0;f=o[f+4>>2]|0;u=Es(n|0,d|0,18,0)|0;l=T;d=ks(p|0,f|0,n|0,d|0)|0;l=ks(d|0,T|0,u|0,l|0)|0;o[t>>2]=l;o[t+4>>2]=T;t=te+128|0;l=o[t>>2]|0;t=o[t+4>>2]|0;u=te+48|0;d=u;n=o[d>>2]|0;d=o[d+4>>2]|0;f=Es(l|0,t|0,18,0)|0;p=T;t=ks(n|0,d|0,l|0,t|0)|0;p=ks(t|0,T|0,f|0,p|0)|0;o[u>>2]=p;o[u+4>>2]=T;u=te+120|0;p=o[u>>2]|0;u=o[u+4>>2]|0;f=te+40|0;t=f;l=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(p|0,u|0,18,0)|0;n=T;u=ks(l|0,t|0,p|0,u|0)|0;n=ks(u|0,T|0,d|0,n|0)|0;o[f>>2]=n;o[f+4>>2]=T;f=te+112|0;n=o[f>>2]|0;f=o[f+4>>2]|0;d=te+32|0;u=d;p=o[u>>2]|0;u=o[u+4>>2]|0;t=Es(n|0,f|0,18,0)|0;l=T;f=ks(p|0,u|0,n|0,f|0)|0;l=ks(f|0,T|0,t|0,l|0)|0;o[d>>2]=l;o[d+4>>2]=T;d=te+104|0;l=o[d>>2]|0;d=o[d+4>>2]|0;t=te+24|0;f=t;n=o[f>>2]|0;f=o[f+4>>2]|0;u=Es(l|0,d|0,18,0)|0;p=T;d=ks(n|0,f|0,l|0,d|0)|0;p=ks(d|0,T|0,u|0,p|0)|0;o[t>>2]=p;o[t+4>>2]=T;t=te+96|0;p=o[t>>2]|0;t=o[t+4>>2]|0;u=te+16|0;d=u;l=o[d>>2]|0;d=o[d+4>>2]|0;f=Es(p|0,t|0,18,0)|0;n=T;t=ks(l|0,d|0,p|0,t|0)|0;n=ks(t|0,T|0,f|0,n|0)|0;o[u>>2]=n;o[u+4>>2]=T;u=te+88|0;n=o[u>>2]|0;u=o[u+4>>2]|0;f=te+8|0;t=f;p=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(n|0,u|0,18,0)|0;l=T;u=ks(p|0,t|0,n|0,u|0)|0;l=ks(u|0,T|0,d|0,l|0)|0;o[f>>2]=l;o[f+4>>2]=T;f=te+80|0;l=o[f>>2]|0;f=o[f+4>>2]|0;d=te;u=o[d>>2]|0;d=o[d+4>>2]|0;n=Es(l|0,f|0,18,0)|0;t=T;f=ks(u|0,d|0,l|0,f|0)|0;t=ks(f|0,T|0,n|0,t|0)|0;n=te;o[n>>2]=t;o[n+4>>2]=T;No(te);n=bt;t=o[n>>2]|0;n=o[n+4>>2]|0;f=vt;f=Ss(t|0,n|0,o[f>>2]|0,o[f+4>>2]|0)|0;l=T;d=vt;o[d>>2]=f;o[d+4>>2]=l;d=Fe;u=o[d>>2]|0;d=o[d+4>>2]|0;p=qe;p=Ss(u|0,d|0,o[p>>2]|0,o[p+4>>2]|0)|0;m=T;y=qe;o[y>>2]=p;o[y+4>>2]=m;y=ze;g=o[y>>2]|0;y=o[y+4>>2]|0;b=Ke;b=Ss(g|0,y|0,o[b>>2]|0,o[b+4>>2]|0)|0;v=T;w=Ke;o[w>>2]=b;o[w+4>>2]=v;w=Ge;_=o[w>>2]|0;w=o[w+4>>2]|0;A=He;A=Ss(_|0,w|0,o[A>>2]|0,o[A+4>>2]|0)|0;E=T;S=He;o[S>>2]=A;o[S+4>>2]=E;S=Ve;k=o[S>>2]|0;S=o[S+4>>2]|0;I=Qe;I=Ss(k|0,S|0,o[I>>2]|0,o[I+4>>2]|0)|0;x=T;C=Qe;o[C>>2]=I;o[C+4>>2]=x;C=We;R=o[C>>2]|0;C=o[C+4>>2]|0;O=Ye;O=Ss(R|0,C|0,o[O>>2]|0,o[O+4>>2]|0)|0;P=T;D=Ye;o[D>>2]=O;o[D+4>>2]=P;D=Xe;M=o[D>>2]|0;D=o[D+4>>2]|0;N=Je;N=Ss(M|0,D|0,o[N>>2]|0,o[N+4>>2]|0)|0;B=T;U=Je;o[U>>2]=N;o[U+4>>2]=B;U=Ze;j=o[U>>2]|0;U=o[U+4>>2]|0;L=$e;L=Ss(j|0,U|0,o[L>>2]|0,o[L+4>>2]|0)|0;F=T;z=$e;o[z>>2]=L;o[z+4>>2]=F;z=et;q=o[z>>2]|0;z=o[z+4>>2]|0;K=tt;K=Ss(q|0,z|0,o[K>>2]|0,o[K+4>>2]|0)|0;G=T;V=tt;o[V>>2]=K;o[V+4>>2]=G;V=nt;H=o[V>>2]|0;V=o[V+4>>2]|0;Q=rt;Q=Ss(H|0,V|0,o[Q>>2]|0,o[Q+4>>2]|0)|0;W=T;st=rt;o[st>>2]=Q;o[st+4>>2]=W;st=ft;ot=st+72|0;do{o[st>>2]=0;st=st+4|0}while((st|0)<(ot|0));Lt=Es(f|0,l|0,121665,0)|0;Nt=Tt;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=Es(p|0,m|0,121665,0)|0;Lt=lt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=Es(b|0,v|0,121665,0)|0;Nt=ut;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=Es(A|0,E|0,121665,0)|0;Lt=dt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=Es(I|0,x|0,121665,0)|0;Nt=ht;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=Es(O|0,P|0,121665,0)|0;Lt=pt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=Es(N|0,B|0,121665,0)|0;Nt=mt;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=Es(L|0,F|0,121665,0)|0;Lt=gt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=Es(K|0,G|0,121665,0)|0;Nt=yt;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=Es(Q|0,W|0,121665,0)|0;Lt=it;o[Lt>>2]=Nt;o[Lt+4>>2]=T;No(Tt);Lt=Tt;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,t|0,n|0)|0;Nt=Tt;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=lt;Nt=ks(o[Nt>>2]|0,o[Nt+4>>2]|0,u|0,d|0)|0;Lt=lt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=ut;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,g|0,y|0)|0;Nt=ut;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=dt;Nt=ks(o[Nt>>2]|0,o[Nt+4>>2]|0,_|0,w|0)|0;Lt=dt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=ht;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,k|0,S|0)|0;Nt=ht;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=pt;Nt=ks(o[Nt>>2]|0,o[Nt+4>>2]|0,R|0,C|0)|0;Lt=pt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=mt;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,M|0,D|0)|0;Nt=mt;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=gt;Nt=ks(o[Nt>>2]|0,o[Nt+4>>2]|0,j|0,U|0)|0;Lt=gt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=yt;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,q|0,z|0)|0;Nt=yt;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=it;Nt=ks(o[Nt>>2]|0,o[Nt+4>>2]|0,H|0,V|0)|0;Lt=it;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Do(ee,vt,Tt);Lt=ee+144|0;Nt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee+64|0;Bt=jt;Ut=o[Bt>>2]|0;Bt=o[Bt+4>>2]|0;Ft=Es(Nt|0,Lt|0,18,0)|0;qt=T;Lt=ks(Ut|0,Bt|0,Nt|0,Lt|0)|0;qt=ks(Lt|0,T|0,Ft|0,qt|0)|0;o[jt>>2]=qt;o[jt+4>>2]=T;jt=ee+136|0;qt=o[jt>>2]|0;jt=o[jt+4>>2]|0;Ft=ee+56|0;Lt=Ft;Nt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;Bt=Es(qt|0,jt|0,18,0)|0;Ut=T;jt=ks(Nt|0,Lt|0,qt|0,jt|0)|0;Ut=ks(jt|0,T|0,Bt|0,Ut|0)|0;o[Ft>>2]=Ut;o[Ft+4>>2]=T;Ft=ee+128|0;Ut=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;Bt=ee+48|0;jt=Bt;qt=o[jt>>2]|0;jt=o[jt+4>>2]|0;Lt=Es(Ut|0,Ft|0,18,0)|0;Nt=T;Ft=ks(qt|0,jt|0,Ut|0,Ft|0)|0;Nt=ks(Ft|0,T|0,Lt|0,Nt|0)|0;o[Bt>>2]=Nt;o[Bt+4>>2]=T;Bt=ee+120|0;Nt=o[Bt>>2]|0;Bt=o[Bt+4>>2]|0;Lt=ee+40|0;Ft=Lt;Ut=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;jt=Es(Nt|0,Bt|0,18,0)|0;qt=T;Bt=ks(Ut|0,Ft|0,Nt|0,Bt|0)|0;qt=ks(Bt|0,T|0,jt|0,qt|0)|0;o[Lt>>2]=qt;o[Lt+4>>2]=T;Lt=ee+112|0;qt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee+32|0;Bt=jt;Nt=o[Bt>>2]|0;Bt=o[Bt+4>>2]|0;Ft=Es(qt|0,Lt|0,18,0)|0;Ut=T;Lt=ks(Nt|0,Bt|0,qt|0,Lt|0)|0;Ut=ks(Lt|0,T|0,Ft|0,Ut|0)|0;o[jt>>2]=Ut;o[jt+4>>2]=T;jt=ee+104|0;Ut=o[jt>>2]|0;jt=o[jt+4>>2]|0;Ft=ee+24|0;Lt=Ft;qt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;Bt=Es(Ut|0,jt|0,18,0)|0;Nt=T;jt=ks(qt|0,Lt|0,Ut|0,jt|0)|0;Nt=ks(jt|0,T|0,Bt|0,Nt|0)|0;o[Ft>>2]=Nt;o[Ft+4>>2]=T;Ft=ee+96|0;Nt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;Bt=ee+16|0;jt=Bt;Ut=o[jt>>2]|0;jt=o[jt+4>>2]|0;Lt=Es(Nt|0,Ft|0,18,0)|0;qt=T;Ft=ks(Ut|0,jt|0,Nt|0,Ft|0)|0;qt=ks(Ft|0,T|0,Lt|0,qt|0)|0;o[Bt>>2]=qt;o[Bt+4>>2]=T;Bt=ee+88|0;qt=o[Bt>>2]|0;Bt=o[Bt+4>>2]|0;Lt=ee+8|0;Ft=Lt;Nt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;jt=Es(qt|0,Bt|0,18,0)|0;Ut=T;Bt=ks(Nt|0,Ft|0,qt|0,Bt|0)|0;Ut=ks(Bt|0,T|0,jt|0,Ut|0)|0;o[Lt>>2]=Ut;o[Lt+4>>2]=T;Lt=ee+80|0;Ut=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee;Bt=o[jt>>2]|0;jt=o[jt+4>>2]|0;qt=Es(Ut|0,Lt|0,18,0)|0;Ft=T;Lt=ks(Bt|0,jt|0,Ut|0,Lt|0)|0;Ft=ks(Lt|0,T|0,qt|0,Ft|0)|0;qt=ee;o[qt>>2]=Ft;o[qt+4>>2]=T;No(ee);Mo(te,J,X,0);Mo(ee,ne,X,0);$=$+1|0;if(($|0)==8)break;else{Ut=Z;Lt=c;Ft=a;qt=i;u=Y<<1&255;Z=J;a=te;i=ee;c=ne;J=Ut;ne=Lt;te=Ft;ee=qt}}re=re+1|0;if((re|0)==32)break;else{d=J;t=Z;n=ne;f=ee;l=te}}st=It;t=te;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));st=xt;t=ee;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(bt,xt);Bo(St,bt);Bo(kt,St);Do(Tt,kt,xt);n=Tt+144|0;l=n;f=o[l>>2]|0;l=o[l+4>>2]|0;c=yt;a=o[c>>2]|0;c=o[c+4>>2]|0;i=Es(f|0,l|0,18,0)|0;u=T;l=ks(a|0,c|0,f|0,l|0)|0;u=ks(l|0,T|0,i|0,u|0)|0;i=yt;o[i>>2]=u;o[i+4>>2]=T;i=Tt+136|0;u=i;l=o[u>>2]|0;u=o[u+4>>2]|0;f=gt;c=o[f>>2]|0;f=o[f+4>>2]|0;a=Es(l|0,u|0,18,0)|0;d=T;u=ks(c|0,f|0,l|0,u|0)|0;d=ks(u|0,T|0,a|0,d|0)|0;a=gt;o[a>>2]=d;o[a+4>>2]=T;a=Tt+128|0;d=a;u=o[d>>2]|0;d=o[d+4>>2]|0;l=mt;f=o[l>>2]|0;l=o[l+4>>2]|0;c=Es(u|0,d|0,18,0)|0;ot=T;d=ks(f|0,l|0,u|0,d|0)|0;ot=ks(d|0,T|0,c|0,ot|0)|0;c=mt;o[c>>2]=ot;o[c+4>>2]=T;c=Tt+120|0;ot=c;d=o[ot>>2]|0;ot=o[ot+4>>2]|0;u=pt;l=o[u>>2]|0;u=o[u+4>>2]|0;f=Es(d|0,ot|0,18,0)|0;t=T;ot=ks(l|0,u|0,d|0,ot|0)|0;t=ks(ot|0,T|0,f|0,t|0)|0;f=pt;o[f>>2]=t;o[f+4>>2]=T;f=Tt+112|0;t=f;ot=o[t>>2]|0;t=o[t+4>>2]|0;d=ht;u=o[d>>2]|0;d=o[d+4>>2]|0;l=Es(ot|0,t|0,18,0)|0;st=T;t=ks(u|0,d|0,ot|0,t|0)|0;st=ks(t|0,T|0,l|0,st|0)|0;l=ht;o[l>>2]=st;o[l+4>>2]=T;l=Tt+104|0;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=dt;d=o[ot>>2]|0;ot=o[ot+4>>2]|0;u=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(d|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,u|0,Lt|0)|0;u=dt;o[u>>2]=Lt;o[u+4>>2]=T;u=Tt+96|0;Lt=u;st=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;t=ut;ot=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(st|0,Lt|0,18,0)|0;Ft=T;Lt=ks(ot|0,t|0,st|0,Lt|0)|0;Ft=ks(Lt|0,T|0,d|0,Ft|0)|0;d=ut;o[d>>2]=Ft;o[d+4>>2]=T;d=Tt+88|0;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=vt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Do(Tt,vt,bt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=Ct;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(kt,Ct);Do(Tt,kt,vt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=_t;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(kt,_t);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Do(Tt,kt,_t);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=wt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(kt,wt);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Do(Tt,St,wt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=At;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(kt,At);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Do(Tt,St,At);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=kt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Do(Tt,kt,wt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=Ot;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(kt,Ot);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Do(Tt,St,Ot);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=Et;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(St,Et);Bo(kt,St);t=2;do{Bo(St,kt);Bo(kt,St);t=t+2|0}while(t>>>0<100);Do(Tt,kt,Et);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=St;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Do(Tt,St,Ot);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=kt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Do(Tt,St,Ct);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=Rt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Do(Tt,It,Rt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=xt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Ot=o[xt>>2]|0;wt=Ot>>31&Ot;Mt=(wt>>26)+(o[xt+8>>2]|0)|0;qt=Mt>>31&Mt;Dt=(qt>>25)+(o[xt+16>>2]|0)|0;Ft=Dt>>31&Dt;_t=(Ft>>26)+(o[xt+24>>2]|0)|0;Nt=_t>>31&_t;Bt=(Nt>>25)+(o[xt+32>>2]|0)|0;It=Bt>>31&Bt;jt=(It>>26)+(o[xt+40>>2]|0)|0;Tt=jt>>31&jt;Ut=(Tt>>25)+(o[xt+48>>2]|0)|0;St=Ut>>31&Ut;Lt=(St>>26)+(o[xt+56>>2]|0)|0;kt=Lt>>31≪Rt=(kt>>25)+(o[xt+64>>2]|0)|0;At=Rt>>31&Rt;Ct=(At>>26)+(o[xt+72>>2]|0)|0;Et=Ct>>31&Ct;wt=((Et>>25)*19|0)+(Ot-(wt&-67108864))|0;Ot=wt>>31&wt;qt=(Ot>>26)+(Mt-(qt&-33554432))|0;Mt=qt>>31&qt;Ft=(Mt>>25)+(Dt-(Ft&-67108864))|0;Dt=Ft>>31&Ft;xt=(Dt>>26)+(_t-(Nt&-33554432))|0;Nt=xt>>31&xt;It=(Nt>>25)+(Bt-(It&-67108864))|0;Bt=It>>31&It;Tt=(Bt>>26)+(jt-(Tt&-33554432))|0;jt=Tt>>31&Tt;St=(jt>>25)+(Ut-(St&-67108864))|0;Ut=St>>31&St;kt=(Ut>>26)+(Lt-(kt&-33554432))|0;Lt=kt>>31&kt;At=(Lt>>25)+(Rt-(At&-67108864))|0;Rt=At>>31&At;Et=(Rt>>26)+(Ct-(Et&-33554432))|0;Ct=Et>>31&Et;Ot=((Ct>>25)*19|0)+(wt-(Ot&-67108864))|0;wt=Ot>>31&Ot;Ot=Ot-(wt&-67108864)|0;Mt=(Ot>>26)+((wt>>26)+(qt-(Mt&-33554432)))|0;Dt=(Mt>>25)+(Ft-(Dt&-67108864))|0;Nt=(Dt>>26)+(xt-(Nt&-33554432))|0;Bt=(Nt>>25)+(It-(Bt&-67108864))|0;jt=(Bt>>26)+(Tt-(jt&-33554432))|0;Ut=(jt>>25)+(St-(Ut&-67108864))|0;Lt=(Ut>>26)+(kt-(Lt&-33554432))|0;Rt=(Lt>>25)+(At-(Rt&-67108864))|0;Ct=(Rt>>26)+(Et-(Ct&-33554432))|0;Ot=((Ct>>25)*19|0)+(Ot&67108863)|0;Mt=(Ot>>26)+(Mt&33554431)|0;Dt=(Mt>>25)+(Dt&67108863)|0;Nt=(Dt>>26)+(Nt&33554431)|0;Bt=(Nt>>25)+(Bt&67108863)|0;jt=(Bt>>26)+(jt&33554431)|0;Ut=(jt>>25)+(Ut&67108863)|0;Lt=(Ut>>26)+(Lt&33554431)|0;Rt=(Lt>>25)+(Rt&67108863)|0;Ct=(Rt>>26)+(Ct&33554431)|0;Ot=((Ct>>25)*19|0)+(Ot&67108863)|0;Et=Mt<<16&(Mt|-33554432);Et=Et<<8&Et;Et=Et<<4&Et;Et=Et<<2&Et;At=Dt<<16&(Dt|-67108864);At=At<<8&At;At=At<<4&At;At=At<<2&At;kt=Nt<<16&(Nt|-33554432);kt=kt<<8&kt;kt=kt<<4&kt;kt=kt<<2&kt;St=Bt<<16&(Bt|-67108864);St=St<<8&St;St=St<<4&St;St=St<<2&St;Tt=jt<<16&(jt|-33554432);Tt=Tt<<8&Tt;Tt=Tt<<4&Tt;Tt=Tt<<2&Tt;It=Ut<<16&(Ut|-67108864);It=It<<8&It;It=It<<4&It;It=It<<2&It;xt=Lt<<16&(Lt|-33554432);xt=xt<<8&xt;xt=xt<<4&xt;xt=xt<<2&xt;Ft=Rt<<16&(Rt|-67108864);Ft=Ft<<8&Ft;Ft=Ft<<4&Ft;Ft=Ft<<2&Ft;qt=Ct<<16&(Ct|-33554432);qt=qt<<8&qt;qt=qt<<4&qt;qt=qt<<2&qt;qt=(At<<1&At&(Et<<1&Et)&(kt<<1&kt)&(St<<1&St)&(Tt<<1&Tt))>>31&~(Ot+-67108845>>31)&(It<<1&It)>>31&(xt<<1&xt)>>31&(Ft<<1&Ft)>>31&(qt<<1&qt)>>31;Ot=Ot-(qt&67108845)|0;Ft=qt&67108863;qt=qt&33554431;Mt=(Mt&33554431)-qt|0;Dt=(Dt&67108863)-Ft|0;Nt=(Nt&33554431)-qt|0;Bt=(Bt&67108863)-Ft|0;jt=(jt&33554431)-qt|0;Ut=(Ut&67108863)-Ft|0;Lt=(Lt&33554431)-qt|0;Ft=(Rt&67108863)-Ft|0;qt=(Ct&33554431)-qt|0;r[e>>0]=Ot;r[e+1>>0]=Ot>>>8;r[e+2>>0]=Ot>>>16;r[e+3>>0]=Ot>>>24|Mt<<2;r[e+4>>0]=Mt>>>6;r[e+5>>0]=Mt>>>14;r[e+6>>0]=Dt<<3|Mt>>>22;r[e+7>>0]=Dt>>>5;r[e+8>>0]=Dt>>>13;r[e+9>>0]=Nt<<5|Dt>>>21;r[e+10>>0]=Nt>>>3;r[e+11>>0]=Nt>>>11;r[e+12>>0]=Bt<<6|Nt>>>19;r[e+13>>0]=Bt>>>2;r[e+14>>0]=Bt>>>10;r[e+15>>0]=Bt>>>18;r[e+16>>0]=jt;r[e+17>>0]=jt>>>8;r[e+18>>0]=jt>>>16;r[e+19>>0]=jt>>>24|Ut<<1;r[e+20>>0]=Ut>>>7;r[e+21>>0]=Ut>>>15;r[e+22>>0]=Lt<<3|Ut>>>23;r[e+23>>0]=Lt>>>5;r[e+24>>0]=Lt>>>13;r[e+25>>0]=Ft<<4|Lt>>>21;r[e+26>>0]=Ft>>>4;r[e+27>>0]=Ft>>>12;r[e+28>>0]=qt<<6|Ft>>>20;r[e+29>>0]=qt>>>2;r[e+30>>0]=qt>>>10;r[e+31>>0]=qt>>>18;h=Pt;return 0}function Mo(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0;n=0-n|0;a=e;i=o[a>>2]|0;s=t;s=(o[s>>2]^i)&n;i=s^i;a=e;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;s=s^o[t>>2];a=t;o[a>>2]=s;o[a+4>>2]=((s|0)<0)<<31>>31;a=e+8|0;s=a;i=o[s>>2]|0;r=t+8|0;c=r;c=(o[c>>2]^i)&n;i=c^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;c=c^o[r>>2];o[r>>2]=c;o[r+4>>2]=((c|0)<0)<<31>>31;r=e+16|0;c=r;a=o[c>>2]|0;i=t+16|0;s=i;s=(o[s>>2]^a)&n;a=s^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;s=s^o[i>>2];o[i>>2]=s;o[i+4>>2]=((s|0)<0)<<31>>31;i=e+24|0;s=i;r=o[s>>2]|0;a=t+24|0;c=a;c=(o[c>>2]^r)&n;r=c^r;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;c=c^o[a>>2];o[a>>2]=c;o[a+4>>2]=((c|0)<0)<<31>>31;a=e+32|0;c=a;i=o[c>>2]|0;r=t+32|0;s=r;s=(o[s>>2]^i)&n;i=s^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;s=s^o[r>>2];o[r>>2]=s;o[r+4>>2]=((s|0)<0)<<31>>31;r=e+40|0;s=r;a=o[s>>2]|0;i=t+40|0;c=i;c=(o[c>>2]^a)&n;a=c^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;c=c^o[i>>2];o[i>>2]=c;o[i+4>>2]=((c|0)<0)<<31>>31;i=e+48|0;c=i;r=o[c>>2]|0;a=t+48|0;s=a;s=(o[s>>2]^r)&n;r=s^r;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;s=s^o[a>>2];o[a>>2]=s;o[a+4>>2]=((s|0)<0)<<31>>31;a=e+56|0;s=a;i=o[s>>2]|0;r=t+56|0;c=r;c=(o[c>>2]^i)&n;i=c^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;c=c^o[r>>2];o[r>>2]=c;o[r+4>>2]=((c|0)<0)<<31>>31;r=e+64|0;c=r;a=o[c>>2]|0;i=t+64|0;s=i;s=(o[s>>2]^a)&n;a=s^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;s=s^o[i>>2];o[i>>2]=s;o[i+4>>2]=((s|0)<0)<<31>>31;i=e+72|0;s=i;e=o[s>>2]|0;r=t+72|0;t=r;n=(o[t>>2]^e)&n;e=n^e;t=i;o[t>>2]=e;o[t+4>>2]=((e|0)<0)<<31>>31;n=n^o[r>>2];o[r>>2]=n;o[r+4>>2]=((n|0)<0)<<31>>31;return}function Do(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0;a=Rs(0,o[t>>2]|0,32)|0;h=T;A=Rs(0,o[n>>2]|0,32)|0;h=Es(A|0,T|0,a|0,h|0)|0;a=e;o[a>>2]=h;o[a+4>>2]=T;a=Rs(0,o[t>>2]|0,32)|0;h=T;A=n+8|0;b=Rs(0,o[A>>2]|0,32)|0;h=Es(b|0,T|0,a|0,h|0)|0;a=T;b=t+8|0;y=Rs(0,o[b>>2]|0,32)|0;m=T;w=Rs(0,o[n>>2]|0,32)|0;m=Es(w|0,T|0,y|0,m|0)|0;a=ks(m|0,T|0,h|0,a|0)|0;h=e+8|0;o[h>>2]=a;o[h+4>>2]=T;h=Rs(0,o[b>>2]|0,31)|0;a=T;m=Rs(0,o[A>>2]|0,32)|0;a=Es(m|0,T|0,h|0,a|0)|0;h=T;m=Rs(0,o[t>>2]|0,32)|0;y=T;w=n+16|0;u=Rs(0,o[w>>2]|0,32)|0;y=Es(u|0,T|0,m|0,y|0)|0;h=ks(y|0,T|0,a|0,h|0)|0;a=T;y=t+16|0;m=Rs(0,o[y>>2]|0,32)|0;u=T;_=Rs(0,o[n>>2]|0,32)|0;u=Es(_|0,T|0,m|0,u|0)|0;u=ks(h|0,a|0,u|0,T|0)|0;a=e+16|0;o[a>>2]=u;o[a+4>>2]=T;a=Rs(0,o[b>>2]|0,32)|0;u=T;h=Rs(0,o[w>>2]|0,32)|0;u=Es(h|0,T|0,a|0,u|0)|0;a=T;h=Rs(0,o[y>>2]|0,32)|0;m=T;_=Rs(0,o[A>>2]|0,32)|0;m=Es(_|0,T|0,h|0,m|0)|0;a=ks(m|0,T|0,u|0,a|0)|0;u=T;m=Rs(0,o[t>>2]|0,32)|0;h=T;_=n+24|0;s=Rs(0,o[_>>2]|0,32)|0;h=Es(s|0,T|0,m|0,h|0)|0;h=ks(a|0,u|0,h|0,T|0)|0;u=T;a=t+24|0;m=Rs(0,o[a>>2]|0,32)|0;s=T;f=Rs(0,o[n>>2]|0,32)|0;s=Es(f|0,T|0,m|0,s|0)|0;s=ks(h|0,u|0,s|0,T|0)|0;u=e+24|0;o[u>>2]=s;o[u+4>>2]=T;u=Rs(0,o[y>>2]|0,32)|0;s=T;h=Rs(0,o[w>>2]|0,32)|0;s=Es(h|0,T|0,u|0,s|0)|0;u=T;h=Rs(0,o[b>>2]|0,32)|0;m=T;f=Rs(0,o[_>>2]|0,32)|0;m=Es(f|0,T|0,h|0,m|0)|0;h=T;f=Rs(0,o[a>>2]|0,32)|0;g=T;p=Rs(0,o[A>>2]|0,32)|0;g=Es(p|0,T|0,f|0,g|0)|0;h=ks(g|0,T|0,m|0,h|0)|0;h=Os(h|0,T|0,1)|0;u=ks(h|0,T|0,s|0,u|0)|0;s=T;h=Rs(0,o[t>>2]|0,32)|0;m=T;g=n+32|0;f=Rs(0,o[g>>2]|0,32)|0;m=Es(f|0,T|0,h|0,m|0)|0;m=ks(u|0,s|0,m|0,T|0)|0;s=T;u=t+32|0;h=Rs(0,o[u>>2]|0,32)|0;f=T;p=Rs(0,o[n>>2]|0,32)|0;f=Es(p|0,T|0,h|0,f|0)|0;f=ks(m|0,s|0,f|0,T|0)|0;s=e+32|0;o[s>>2]=f;o[s+4>>2]=T;s=Rs(0,o[y>>2]|0,32)|0;f=T;m=Rs(0,o[_>>2]|0,32)|0;f=Es(m|0,T|0,s|0,f|0)|0;s=T;m=Rs(0,o[a>>2]|0,32)|0;h=T;p=Rs(0,o[w>>2]|0,32)|0;h=Es(p|0,T|0,m|0,h|0)|0;s=ks(h|0,T|0,f|0,s|0)|0;f=T;h=Rs(0,o[b>>2]|0,32)|0;m=T;p=Rs(0,o[g>>2]|0,32)|0;m=Es(p|0,T|0,h|0,m|0)|0;m=ks(s|0,f|0,m|0,T|0)|0;f=T;s=Rs(0,o[u>>2]|0,32)|0;h=T;p=Rs(0,o[A>>2]|0,32)|0;h=Es(p|0,T|0,s|0,h|0)|0;h=ks(m|0,f|0,h|0,T|0)|0;f=T;m=Rs(0,o[t>>2]|0,32)|0;s=T;p=n+40|0;v=Rs(0,o[p>>2]|0,32)|0;s=Es(v|0,T|0,m|0,s|0)|0;s=ks(h|0,f|0,s|0,T|0)|0;f=T;h=t+40|0;m=Rs(0,o[h>>2]|0,32)|0;v=T;l=Rs(0,o[n>>2]|0,32)|0;v=Es(l|0,T|0,m|0,v|0)|0;v=ks(s|0,f|0,v|0,T|0)|0;f=e+40|0;o[f>>2]=v;o[f+4>>2]=T;f=Rs(0,o[a>>2]|0,32)|0;v=T;s=Rs(0,o[_>>2]|0,32)|0;v=Es(s|0,T|0,f|0,v|0)|0;f=T;s=Rs(0,o[b>>2]|0,32)|0;m=T;l=Rs(0,o[p>>2]|0,32)|0;m=Es(l|0,T|0,s|0,m|0)|0;f=ks(m|0,T|0,v|0,f|0)|0;v=T;m=Rs(0,o[h>>2]|0,32)|0;s=T;l=Rs(0,o[A>>2]|0,32)|0;s=Es(l|0,T|0,m|0,s|0)|0;s=ks(f|0,v|0,s|0,T|0)|0;s=Os(s|0,T|0,1)|0;v=T;f=Rs(0,o[y>>2]|0,32)|0;m=T;l=Rs(0,o[g>>2]|0,32)|0;m=Es(l|0,T|0,f|0,m|0)|0;m=ks(s|0,v|0,m|0,T|0)|0;v=T;s=Rs(0,o[u>>2]|0,32)|0;f=T;l=Rs(0,o[w>>2]|0,32)|0;f=Es(l|0,T|0,s|0,f|0)|0;f=ks(m|0,v|0,f|0,T|0)|0;v=T;m=Rs(0,o[t>>2]|0,32)|0;s=T;l=n+48|0;E=Rs(0,o[l>>2]|0,32)|0;s=Es(E|0,T|0,m|0,s|0)|0;s=ks(f|0,v|0,s|0,T|0)|0;v=T;f=t+48|0;m=Rs(0,o[f>>2]|0,32)|0;E=T;d=Rs(0,o[n>>2]|0,32)|0;E=Es(d|0,T|0,m|0,E|0)|0;E=ks(s|0,v|0,E|0,T|0)|0;v=e+48|0;o[v>>2]=E;o[v+4>>2]=T;v=Rs(0,o[a>>2]|0,32)|0;E=T;s=Rs(0,o[g>>2]|0,32)|0;E=Es(s|0,T|0,v|0,E|0)|0;v=T;s=Rs(0,o[u>>2]|0,32)|0;m=T;d=Rs(0,o[_>>2]|0,32)|0;m=Es(d|0,T|0,s|0,m|0)|0;v=ks(m|0,T|0,E|0,v|0)|0;E=T;m=Rs(0,o[y>>2]|0,32)|0;s=T;d=Rs(0,o[p>>2]|0,32)|0;s=Es(d|0,T|0,m|0,s|0)|0;s=ks(v|0,E|0,s|0,T|0)|0;E=T;v=Rs(0,o[h>>2]|0,32)|0;m=T;d=Rs(0,o[w>>2]|0,32)|0;m=Es(d|0,T|0,v|0,m|0)|0;m=ks(s|0,E|0,m|0,T|0)|0;E=T;s=Rs(0,o[b>>2]|0,32)|0;v=T;d=Rs(0,o[l>>2]|0,32)|0;v=Es(d|0,T|0,s|0,v|0)|0;v=ks(m|0,E|0,v|0,T|0)|0;E=T;m=Rs(0,o[f>>2]|0,32)|0;s=T;d=Rs(0,o[A>>2]|0,32)|0;s=Es(d|0,T|0,m|0,s|0)|0;s=ks(v|0,E|0,s|0,T|0)|0;E=T;v=Rs(0,o[t>>2]|0,32)|0;m=T;d=n+56|0;k=Rs(0,o[d>>2]|0,32)|0;m=Es(k|0,T|0,v|0,m|0)|0;m=ks(s|0,E|0,m|0,T|0)|0;E=T;s=t+56|0;v=Rs(0,o[s>>2]|0,32)|0;k=T;c=Rs(0,o[n>>2]|0,32)|0;k=Es(c|0,T|0,v|0,k|0)|0;k=ks(m|0,E|0,k|0,T|0)|0;E=e+56|0;o[E>>2]=k;o[E+4>>2]=T;E=Rs(0,o[u>>2]|0,32)|0;k=T;m=Rs(0,o[g>>2]|0,32)|0;k=Es(m|0,T|0,E|0,k|0)|0;E=T;m=Rs(0,o[a>>2]|0,32)|0;v=T;c=Rs(0,o[p>>2]|0,32)|0;v=Es(c|0,T|0,m|0,v|0)|0;m=T;c=Rs(0,o[h>>2]|0,32)|0;i=T;r=Rs(0,o[_>>2]|0,32)|0;i=Es(r|0,T|0,c|0,i|0)|0;m=ks(i|0,T|0,v|0,m|0)|0;v=T;i=Rs(0,o[b>>2]|0,32)|0;c=T;r=Rs(0,o[d>>2]|0,32)|0;c=Es(r|0,T|0,i|0,c|0)|0;c=ks(m|0,v|0,c|0,T|0)|0;v=T;m=Rs(0,o[s>>2]|0,32)|0;i=T;r=Rs(0,o[A>>2]|0,32)|0;i=Es(r|0,T|0,m|0,i|0)|0;i=ks(c|0,v|0,i|0,T|0)|0;i=Os(i|0,T|0,1)|0;E=ks(i|0,T|0,k|0,E|0)|0;k=T;i=Rs(0,o[y>>2]|0,32)|0;v=T;c=Rs(0,o[l>>2]|0,32)|0;v=Es(c|0,T|0,i|0,v|0)|0;v=ks(E|0,k|0,v|0,T|0)|0;k=T;E=Rs(0,o[f>>2]|0,32)|0;i=T;c=Rs(0,o[w>>2]|0,32)|0;i=Es(c|0,T|0,E|0,i|0)|0;i=ks(v|0,k|0,i|0,T|0)|0;k=T;v=Rs(0,o[t>>2]|0,32)|0;E=T;c=n+64|0;m=Rs(0,o[c>>2]|0,32)|0;E=Es(m|0,T|0,v|0,E|0)|0;E=ks(i|0,k|0,E|0,T|0)|0;k=T;i=t+64|0;v=Rs(0,o[i>>2]|0,32)|0;m=T;r=Rs(0,o[n>>2]|0,32)|0;m=Es(r|0,T|0,v|0,m|0)|0;m=ks(E|0,k|0,m|0,T|0)|0;k=e+64|0;o[k>>2]=m;o[k+4>>2]=T;k=Rs(0,o[u>>2]|0,32)|0;m=T;E=Rs(0,o[p>>2]|0,32)|0;m=Es(E|0,T|0,k|0,m|0)|0;k=T;E=Rs(0,o[h>>2]|0,32)|0;v=T;r=Rs(0,o[g>>2]|0,32)|0;v=Es(r|0,T|0,E|0,v|0)|0;k=ks(v|0,T|0,m|0,k|0)|0;m=T;v=Rs(0,o[a>>2]|0,32)|0;E=T;r=Rs(0,o[l>>2]|0,32)|0;E=Es(r|0,T|0,v|0,E|0)|0;E=ks(k|0,m|0,E|0,T|0)|0;m=T;k=Rs(0,o[f>>2]|0,32)|0;v=T;r=Rs(0,o[_>>2]|0,32)|0;v=Es(r|0,T|0,k|0,v|0)|0;v=ks(E|0,m|0,v|0,T|0)|0;m=T;E=Rs(0,o[y>>2]|0,32)|0;k=T;r=Rs(0,o[d>>2]|0,32)|0;k=Es(r|0,T|0,E|0,k|0)|0;k=ks(v|0,m|0,k|0,T|0)|0;m=T;v=Rs(0,o[s>>2]|0,32)|0;E=T;r=Rs(0,o[w>>2]|0,32)|0;E=Es(r|0,T|0,v|0,E|0)|0;E=ks(k|0,m|0,E|0,T|0)|0;m=T;k=Rs(0,o[b>>2]|0,32)|0;v=T;r=Rs(0,o[c>>2]|0,32)|0;v=Es(r|0,T|0,k|0,v|0)|0;v=ks(E|0,m|0,v|0,T|0)|0;m=T;E=Rs(0,o[i>>2]|0,32)|0;k=T;r=Rs(0,o[A>>2]|0,32)|0;k=Es(r|0,T|0,E|0,k|0)|0;k=ks(v|0,m|0,k|0,T|0)|0;m=T;v=Rs(0,o[t>>2]|0,32)|0;E=T;r=n+72|0;S=Rs(0,o[r>>2]|0,32)|0;E=Es(S|0,T|0,v|0,E|0)|0;E=ks(k|0,m|0,E|0,T|0)|0;m=T;t=t+72|0;k=Rs(0,o[t>>2]|0,32)|0;v=T;n=Rs(0,o[n>>2]|0,32)|0;v=Es(n|0,T|0,k|0,v|0)|0;v=ks(E|0,m|0,v|0,T|0)|0;n=e+72|0;o[n>>2]=v;o[n+4>>2]=T;n=Rs(0,o[h>>2]|0,32)|0;v=T;m=Rs(0,o[p>>2]|0,32)|0;v=Es(m|0,T|0,n|0,v|0)|0;n=T;m=Rs(0,o[a>>2]|0,32)|0;E=T;k=Rs(0,o[d>>2]|0,32)|0;E=Es(k|0,T|0,m|0,E|0)|0;n=ks(E|0,T|0,v|0,n|0)|0;v=T;E=Rs(0,o[s>>2]|0,32)|0;m=T;k=Rs(0,o[_>>2]|0,32)|0;m=Es(k|0,T|0,E|0,m|0)|0;m=ks(n|0,v|0,m|0,T|0)|0;v=T;n=Rs(0,o[b>>2]|0,32)|0;b=T;E=Rs(0,o[r>>2]|0,32)|0;b=Es(E|0,T|0,n|0,b|0)|0;b=ks(m|0,v|0,b|0,T|0)|0;v=T;m=Rs(0,o[t>>2]|0,32)|0;n=T;A=Rs(0,o[A>>2]|0,32)|0;n=Es(A|0,T|0,m|0,n|0)|0;n=ks(b|0,v|0,n|0,T|0)|0;n=Os(n|0,T|0,1)|0;v=T;b=Rs(0,o[u>>2]|0,32)|0;m=T;A=Rs(0,o[l>>2]|0,32)|0;m=Es(A|0,T|0,b|0,m|0)|0;m=ks(n|0,v|0,m|0,T|0)|0;v=T;n=Rs(0,o[f>>2]|0,32)|0;b=T;A=Rs(0,o[g>>2]|0,32)|0;b=Es(A|0,T|0,n|0,b|0)|0;b=ks(m|0,v|0,b|0,T|0)|0;v=T;m=Rs(0,o[y>>2]|0,32)|0;n=T;A=Rs(0,o[c>>2]|0,32)|0;n=Es(A|0,T|0,m|0,n|0)|0;n=ks(b|0,v|0,n|0,T|0)|0;v=T;b=Rs(0,o[i>>2]|0,32)|0;m=T;A=Rs(0,o[w>>2]|0,32)|0;m=Es(A|0,T|0,b|0,m|0)|0;m=ks(n|0,v|0,m|0,T|0)|0;v=e+80|0;o[v>>2]=m;o[v+4>>2]=T;v=Rs(0,o[h>>2]|0,32)|0;m=T;n=Rs(0,o[l>>2]|0,32)|0;m=Es(n|0,T|0,v|0,m|0)|0;v=T;n=Rs(0,o[f>>2]|0,32)|0;b=T;A=Rs(0,o[p>>2]|0,32)|0;b=Es(A|0,T|0,n|0,b|0)|0;v=ks(b|0,T|0,m|0,v|0)|0;m=T;b=Rs(0,o[u>>2]|0,32)|0;n=T;A=Rs(0,o[d>>2]|0,32)|0;n=Es(A|0,T|0,b|0,n|0)|0;n=ks(v|0,m|0,n|0,T|0)|0;m=T;v=Rs(0,o[s>>2]|0,32)|0;b=T;A=Rs(0,o[g>>2]|0,32)|0;b=Es(A|0,T|0,v|0,b|0)|0;b=ks(n|0,m|0,b|0,T|0)|0;m=T;n=Rs(0,o[a>>2]|0,32)|0;v=T;A=Rs(0,o[c>>2]|0,32)|0;v=Es(A|0,T|0,n|0,v|0)|0;v=ks(b|0,m|0,v|0,T|0)|0;m=T;b=Rs(0,o[i>>2]|0,32)|0;n=T;A=Rs(0,o[_>>2]|0,32)|0;n=Es(A|0,T|0,b|0,n|0)|0;n=ks(v|0,m|0,n|0,T|0)|0;m=T;y=Rs(0,o[y>>2]|0,32)|0;v=T;b=Rs(0,o[r>>2]|0,32)|0;v=Es(b|0,T|0,y|0,v|0)|0;v=ks(n|0,m|0,v|0,T|0)|0;m=T;n=Rs(0,o[t>>2]|0,32)|0;y=T;w=Rs(0,o[w>>2]|0,32)|0;y=Es(w|0,T|0,n|0,y|0)|0;y=ks(v|0,m|0,y|0,T|0)|0;m=e+88|0;o[m>>2]=y;o[m+4>>2]=T;m=Rs(0,o[f>>2]|0,32)|0;y=T;v=Rs(0,o[l>>2]|0,32)|0;y=Es(v|0,T|0,m|0,y|0)|0;m=T;v=Rs(0,o[h>>2]|0,32)|0;n=T;w=Rs(0,o[d>>2]|0,32)|0;n=Es(w|0,T|0,v|0,n|0)|0;v=T;w=Rs(0,o[s>>2]|0,32)|0;b=T;A=Rs(0,o[p>>2]|0,32)|0;b=Es(A|0,T|0,w|0,b|0)|0;v=ks(b|0,T|0,n|0,v|0)|0;n=T;a=Rs(0,o[a>>2]|0,32)|0;b=T;w=Rs(0,o[r>>2]|0,32)|0;b=Es(w|0,T|0,a|0,b|0)|0;b=ks(v|0,n|0,b|0,T|0)|0;n=T;v=Rs(0,o[t>>2]|0,32)|0;a=T;_=Rs(0,o[_>>2]|0,32)|0;a=Es(_|0,T|0,v|0,a|0)|0;a=ks(b|0,n|0,a|0,T|0)|0;a=Os(a|0,T|0,1)|0;m=ks(a|0,T|0,y|0,m|0)|0;y=T;a=Rs(0,o[u>>2]|0,32)|0;n=T;b=Rs(0,o[c>>2]|0,32)|0;n=Es(b|0,T|0,a|0,n|0)|0;n=ks(m|0,y|0,n|0,T|0)|0;y=T;m=Rs(0,o[i>>2]|0,32)|0;a=T;b=Rs(0,o[g>>2]|0,32)|0;a=Es(b|0,T|0,m|0,a|0)|0;a=ks(n|0,y|0,a|0,T|0)|0;y=e+96|0;o[y>>2]=a;o[y+4>>2]=T;y=Rs(0,o[f>>2]|0,32)|0;a=T;n=Rs(0,o[d>>2]|0,32)|0;a=Es(n|0,T|0,y|0,a|0)|0;y=T;n=Rs(0,o[s>>2]|0,32)|0;m=T;b=Rs(0,o[l>>2]|0,32)|0;m=Es(b|0,T|0,n|0,m|0)|0;y=ks(m|0,T|0,a|0,y|0)|0;a=T;m=Rs(0,o[h>>2]|0,32)|0;n=T;b=Rs(0,o[c>>2]|0,32)|0;n=Es(b|0,T|0,m|0,n|0)|0;n=ks(y|0,a|0,n|0,T|0)|0;a=T;y=Rs(0,o[i>>2]|0,32)|0;m=T;b=Rs(0,o[p>>2]|0,32)|0;m=Es(b|0,T|0,y|0,m|0)|0;m=ks(n|0,a|0,m|0,T|0)|0;a=T;u=Rs(0,o[u>>2]|0,32)|0;n=T;y=Rs(0,o[r>>2]|0,32)|0;n=Es(y|0,T|0,u|0,n|0)|0;n=ks(m|0,a|0,n|0,T|0)|0;a=T;m=Rs(0,o[t>>2]|0,32)|0;u=T;g=Rs(0,o[g>>2]|0,32)|0;u=Es(g|0,T|0,m|0,u|0)|0;u=ks(n|0,a|0,u|0,T|0)|0;a=e+104|0;o[a>>2]=u;o[a+4>>2]=T;a=Rs(0,o[s>>2]|0,32)|0;u=T;n=Rs(0,o[d>>2]|0,32)|0;u=Es(n|0,T|0,a|0,u|0)|0;a=T;n=Rs(0,o[h>>2]|0,32)|0;h=T;m=Rs(0,o[r>>2]|0,32)|0;h=Es(m|0,T|0,n|0,h|0)|0;a=ks(h|0,T|0,u|0,a|0)|0;u=T;h=Rs(0,o[t>>2]|0,32)|0;n=T;p=Rs(0,o[p>>2]|0,32)|0;n=Es(p|0,T|0,h|0,n|0)|0;n=ks(a|0,u|0,n|0,T|0)|0;n=Os(n|0,T|0,1)|0;u=T;a=Rs(0,o[f>>2]|0,32)|0;h=T;p=Rs(0,o[c>>2]|0,32)|0;h=Es(p|0,T|0,a|0,h|0)|0;h=ks(n|0,u|0,h|0,T|0)|0;u=T;n=Rs(0,o[i>>2]|0,32)|0;a=T;p=Rs(0,o[l>>2]|0,32)|0;a=Es(p|0,T|0,n|0,a|0)|0;a=ks(h|0,u|0,a|0,T|0)|0;u=e+112|0;o[u>>2]=a;o[u+4>>2]=T;u=Rs(0,o[s>>2]|0,32)|0;a=T;h=Rs(0,o[c>>2]|0,32)|0;a=Es(h|0,T|0,u|0,a|0)|0;u=T;h=Rs(0,o[i>>2]|0,32)|0;n=T;p=Rs(0,o[d>>2]|0,32)|0;n=Es(p|0,T|0,h|0,n|0)|0;u=ks(n|0,T|0,a|0,u|0)|0;a=T;n=Rs(0,o[f>>2]|0,32)|0;f=T;h=Rs(0,o[r>>2]|0,32)|0;f=Es(h|0,T|0,n|0,f|0)|0;f=ks(u|0,a|0,f|0,T|0)|0;a=T;u=Rs(0,o[t>>2]|0,32)|0;n=T;l=Rs(0,o[l>>2]|0,32)|0;n=Es(l|0,T|0,u|0,n|0)|0;n=ks(f|0,a|0,n|0,T|0)|0;a=e+120|0;o[a>>2]=n;o[a+4>>2]=T;a=Rs(0,o[i>>2]|0,32)|0;n=T;f=Rs(0,o[c>>2]|0,32)|0;n=Es(f|0,T|0,a|0,n|0)|0;a=T;s=Rs(0,o[s>>2]|0,32)|0;f=T;u=Rs(0,o[r>>2]|0,32)|0;f=Es(u|0,T|0,s|0,f|0)|0;s=T;u=Rs(0,o[t>>2]|0,32)|0;l=T;d=Rs(0,o[d>>2]|0,32)|0;l=Es(d|0,T|0,u|0,l|0)|0;s=ks(l|0,T|0,f|0,s|0)|0;s=Os(s|0,T|0,1)|0;a=ks(s|0,T|0,n|0,a|0)|0;n=e+128|0;o[n>>2]=a;o[n+4>>2]=T;i=Rs(0,o[i>>2]|0,32)|0;n=T;a=Rs(0,o[r>>2]|0,32)|0;n=Es(a|0,T|0,i|0,n|0)|0;i=T;a=Rs(0,o[t>>2]|0,32)|0;s=T;c=Rs(0,o[c>>2]|0,32)|0;s=Es(c|0,T|0,a|0,s|0)|0;i=ks(s|0,T|0,n|0,i|0)|0;n=e+136|0;o[n>>2]=i;o[n+4>>2]=T;n=Rs(0,o[t>>2]|0,31)|0;t=T;r=Rs(0,o[r>>2]|0,32)|0;t=Es(r|0,T|0,n|0,t|0)|0;n=e+144|0;o[n>>2]=t;o[n+4>>2]=T;return}function No(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0;t=e+80|0;s=t;o[s>>2]=0;o[s+4>>2]=0;s=e;f=o[s>>2]|0;s=o[s+4>>2]|0;n=ks(f|0,s|0,s>>31>>>6|0,0)|0;a=T;i=Rs(n|0,a|0,26)|0;l=T;a=Ss(f|0,s|0,n&-67108864|0,a|0)|0;n=e;o[n>>2]=a;o[n+4>>2]=T;n=e+8|0;a=n;a=ks(i|0,l|0,o[a>>2]|0,o[a+4>>2]|0)|0;l=T;i=ks(a|0,l|0,l>>31>>>7|0,0)|0;s=T;f=Rs(i|0,s|0,25)|0;r=T;s=Ss(a|0,l|0,i&-33554432|0,s|0)|0;i=n;o[i>>2]=s;o[i+4>>2]=T;i=e+16|0;s=i;s=ks(f|0,r|0,o[s>>2]|0,o[s+4>>2]|0)|0;r=T;f=ks(s|0,r|0,r>>31>>>6|0,0)|0;l=T;a=Rs(f|0,l|0,26)|0;c=T;l=Ss(s|0,r|0,f&-67108864|0,l|0)|0;o[i>>2]=l;o[i+4>>2]=T;i=e+24|0;l=i;l=ks(a|0,c|0,o[l>>2]|0,o[l+4>>2]|0)|0;c=T;a=ks(l|0,c|0,c>>31>>>7|0,0)|0;f=T;r=Rs(a|0,f|0,25)|0;s=T;f=Ss(l|0,c|0,a&-33554432|0,f|0)|0;o[i>>2]=f;o[i+4>>2]=T;i=e+32|0;f=i;f=ks(r|0,s|0,o[f>>2]|0,o[f+4>>2]|0)|0;s=T;r=ks(f|0,s|0,s>>31>>>6|0,0)|0;a=T;c=Rs(r|0,a|0,26)|0;l=T;a=Ss(f|0,s|0,r&-67108864|0,a|0)|0;o[i>>2]=a;o[i+4>>2]=T;i=e+40|0;a=i;a=ks(c|0,l|0,o[a>>2]|0,o[a+4>>2]|0)|0;l=T;c=ks(a|0,l|0,l>>31>>>7|0,0)|0;r=T;s=Rs(c|0,r|0,25)|0;f=T;r=Ss(a|0,l|0,c&-33554432|0,r|0)|0;o[i>>2]=r;o[i+4>>2]=T;i=e+48|0;r=i;r=ks(s|0,f|0,o[r>>2]|0,o[r+4>>2]|0)|0;f=T;s=ks(r|0,f|0,f>>31>>>6|0,0)|0;c=T;l=Rs(s|0,c|0,26)|0;a=T;c=Ss(r|0,f|0,s&-67108864|0,c|0)|0;o[i>>2]=c;o[i+4>>2]=T;i=e+56|0;c=i;c=ks(l|0,a|0,o[c>>2]|0,o[c+4>>2]|0)|0;a=T;l=ks(c|0,a|0,a>>31>>>7|0,0)|0;s=T;f=Rs(l|0,s|0,25)|0;r=T;s=Ss(c|0,a|0,l&-33554432|0,s|0)|0;o[i>>2]=s;o[i+4>>2]=T;i=e+64|0;s=i;s=ks(f|0,r|0,o[s>>2]|0,o[s+4>>2]|0)|0;r=T;f=ks(s|0,r|0,r>>31>>>6|0,0)|0;l=T;a=Rs(f|0,l|0,26)|0;c=T;l=Ss(s|0,r|0,f&-67108864|0,l|0)|0;o[i>>2]=l;o[i+4>>2]=T;i=e+72|0;l=i;l=ks(a|0,c|0,o[l>>2]|0,o[l+4>>2]|0)|0;c=T;a=ks(l|0,c|0,c>>31>>>7|0,0)|0;f=T;r=Rs(a|0,f|0,25)|0;s=T;f=Ss(l|0,c|0,a&-33554432|0,f|0)|0;o[i>>2]=f;o[i+4>>2]=T;i=t;i=ks(r|0,s|0,o[i>>2]|0,o[i+4>>2]|0)|0;s=T;r=e;f=o[r>>2]|0;r=o[r+4>>2]|0;a=Es(i|0,s|0,18,0)|0;c=T;s=ks(f|0,r|0,i|0,s|0)|0;c=ks(s|0,T|0,a|0,c|0)|0;a=T;o[t>>2]=0;o[t+4>>2]=0;t=ks(c|0,a|0,a>>31>>>6|0,0)|0;s=T;i=Rs(t|0,s|0,26)|0;r=T;s=Ss(c|0,a|0,t&-67108864|0,s|0)|0;t=e;o[t>>2]=s;o[t+4>>2]=T;t=n;t=ks(i|0,r|0,o[t>>2]|0,o[t+4>>2]|0)|0;e=n;o[e>>2]=t;o[e+4>>2]=T;return}function Bo(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0;r=h;h=h+160|0;n=r;q=o[t>>2]|0;y=Rs(0,q|0,32)|0;c=T;a=Es(y|0,c|0,y|0,c|0)|0;s=T;N=n;o[N>>2]=a;o[N+4>>2]=s;q=Rs(0,q|0,31)|0;N=T;H=o[t+8>>2]|0;E=Rs(0,H|0,32)|0;d=T;m=Es(E|0,d|0,q|0,N|0)|0;p=T;l=n+8|0;w=l;o[w>>2]=m;o[w+4>>2]=p;w=Es(E|0,d|0,E|0,d|0)|0;A=T;g=Rs(0,o[t+16>>2]|0,32)|0;u=T;b=Es(g|0,u|0,y|0,c|0)|0;A=ks(b|0,T|0,w|0,A|0)|0;A=Os(A|0,T|0,1)|0;w=T;b=n+16|0;I=b;o[I>>2]=A;o[I+4>>2]=w;I=Es(g|0,u|0,E|0,d|0)|0;x=T;ce=Rs(0,o[t+24>>2]|0,32)|0;ae=T;_=Es(ce|0,ae|0,y|0,c|0)|0;x=ks(_|0,T|0,I|0,x|0)|0;x=Os(x|0,T|0,1)|0;I=T;_=n+24|0;D=_;o[D>>2]=x;o[D+4>>2]=I;D=Es(g|0,u|0,g|0,u|0)|0;O=T;R=Rs(0,H|0,30)|0;R=Es(ce|0,ae|0,R|0,T|0)|0;O=ks(R|0,T|0,D|0,O|0)|0;D=T;R=Rs(0,o[t+32>>2]|0,32)|0;v=T;N=Es(R|0,v|0,q|0,N|0)|0;N=ks(O|0,D|0,N|0,T|0)|0;D=T;O=n+32|0;q=O;o[q>>2]=N;o[q+4>>2]=D;q=Es(ce|0,ae|0,g|0,u|0)|0;U=T;P=Es(R|0,v|0,E|0,d|0)|0;U=ks(P|0,T|0,q|0,U|0)|0;q=T;P=o[t+40>>2]|0;j=Rs(0,P|0,32)|0;M=T;z=Es(j|0,M|0,y|0,c|0)|0;z=ks(U|0,q|0,z|0,T|0)|0;z=Os(z|0,T|0,1)|0;q=T;U=n+40|0;$=U;o[$>>2]=z;o[$+4>>2]=q;$=Es(ce|0,ae|0,ce|0,ae|0)|0;te=T;K=Es(R|0,v|0,g|0,u|0)|0;te=ks(K|0,T|0,$|0,te|0)|0;$=T;K=Rs(0,o[t+48>>2]|0,32)|0;G=T;W=Es(K|0,G|0,y|0,c|0)|0;Y=T;H=Rs(0,H|0,31)|0;H=Es(j|0,M|0,H|0,T|0)|0;H=ks(te|0,$|0,H|0,T|0)|0;Y=ks(H|0,T|0,W|0,Y|0)|0;Y=Os(Y|0,T|0,1)|0;W=T;H=n+48|0;$=H;o[$>>2]=Y;o[$+4>>2]=W;$=Es(R|0,v|0,ce|0,ae|0)|0;te=T;Q=Es(j|0,M|0,g|0,u|0)|0;te=ks(Q|0,T|0,$|0,te|0)|0;$=T;Q=Es(K|0,G|0,E|0,d|0)|0;Q=ks(te|0,$|0,Q|0,T|0)|0;$=T;te=o[t+56>>2]|0;L=Rs(0,te|0,32)|0;F=T;ee=Es(L|0,F|0,y|0,c|0)|0;ee=ks(Q|0,$|0,ee|0,T|0)|0;ee=Os(ee|0,T|0,1)|0;$=T;Q=n+56|0;V=Q;o[V>>2]=ee;o[V+4>>2]=$;V=Es(R|0,v|0,R|0,v|0)|0;Z=T;i=Es(K|0,G|0,g|0,u|0)|0;oe=T;ne=o[t+64>>2]|0;J=Rs(0,ne|0,32)|0;X=T;ie=Es(J|0,X|0,y|0,c|0)|0;oe=ks(ie|0,T|0,i|0,oe|0)|0;i=T;ie=Es(L|0,F|0,E|0,d|0)|0;re=T;f=Es(j|0,M|0,ce|0,ae|0)|0;f=ks(ie|0,re|0,f|0,T|0)|0;f=Os(f|0,T|0,1)|0;f=ks(oe|0,i|0,f|0,T|0)|0;f=Os(f|0,T|0,1)|0;Z=ks(f|0,T|0,V|0,Z|0)|0;V=T;f=Es(j|0,M|0,R|0,v|0)|0;i=T;oe=Es(K|0,G|0,ce|0,ae|0)|0;i=ks(oe|0,T|0,f|0,i|0)|0;f=T;oe=Es(L|0,F|0,g|0,u|0)|0;oe=ks(i|0,f|0,oe|0,T|0)|0;f=T;i=Es(J|0,X|0,E|0,d|0)|0;i=ks(oe|0,f|0,i|0,T|0)|0;f=T;oe=o[t+72>>2]|0;re=Rs(0,oe|0,32)|0;ie=T;c=Es(re|0,ie|0,y|0,c|0)|0;c=ks(i|0,f|0,c|0,T|0)|0;c=Os(c|0,T|0,1)|0;t=n+72|0;o[t>>2]=c;o[t+4>>2]=T;t=Es(j|0,M|0,j|0,M|0)|0;c=T;f=Es(K|0,G|0,R|0,v|0)|0;c=ks(f|0,T|0,t|0,c|0)|0;t=T;f=Es(J|0,X|0,g|0,u|0)|0;f=ks(c|0,t|0,f|0,T|0)|0;t=T;c=Es(L|0,F|0,ce|0,ae|0)|0;i=T;d=Es(re|0,ie|0,E|0,d|0)|0;i=ks(d|0,T|0,c|0,i|0)|0;i=Os(i|0,T|0,1)|0;i=ks(f|0,t|0,i|0,T|0)|0;t=T;f=Os(i|0,t|0,1)|0;c=T;d=n+80|0;o[d>>2]=f;o[d+4>>2]=c;d=Es(K|0,G|0,j|0,M|0)|0;E=T;y=Es(L|0,F|0,R|0,v|0)|0;E=ks(y|0,T|0,d|0,E|0)|0;d=T;y=Es(J|0,X|0,ce|0,ae|0)|0;y=ks(E|0,d|0,y|0,T|0)|0;d=T;u=Es(re|0,ie|0,g|0,u|0)|0;u=ks(y|0,d|0,u|0,T|0)|0;d=T;y=Os(u|0,d|0,1)|0;g=T;E=n+88|0;o[E>>2]=y;o[E+4>>2]=g;E=Es(K|0,G|0,K|0,G|0)|0;k=T;C=Es(J|0,X|0,R|0,v|0)|0;S=T;se=Es(L|0,F|0,j|0,M|0)|0;B=T;ae=Es(re|0,ie|0,ce|0,ae|0)|0;B=ks(ae|0,T|0,se|0,B|0)|0;B=Os(B|0,T|0,1)|0;S=ks(B|0,T|0,C|0,S|0)|0;S=Os(S|0,T|0,1)|0;k=ks(S|0,T|0,E|0,k|0)|0;E=T;S=n+96|0;o[S>>2]=k;o[S+4>>2]=E;S=Es(L|0,F|0,K|0,G|0)|0;C=T;M=Es(J|0,X|0,j|0,M|0)|0;C=ks(M|0,T|0,S|0,C|0)|0;S=T;v=Es(re|0,ie|0,R|0,v|0)|0;v=ks(C|0,S|0,v|0,T|0)|0;S=T;C=Os(v|0,S|0,1)|0;R=T;M=n+104|0;o[M>>2]=C;o[M+4>>2]=R;M=Es(L|0,F|0,L|0,F|0)|0;j=T;B=Es(J|0,X|0,K|0,G|0)|0;j=ks(B|0,T|0,M|0,j|0)|0;M=T;P=Rs(0,P|0,31)|0;P=Es(re|0,ie|0,P|0,T|0)|0;P=ks(j|0,M|0,P|0,T|0)|0;M=T;j=Os(P|0,M|0,1)|0;B=T;se=n+112|0;o[se>>2]=j;o[se+4>>2]=B;F=Es(J|0,X|0,L|0,F|0)|0;L=T;G=Es(re|0,ie|0,K|0,G|0)|0;L=ks(G|0,T|0,F|0,L|0)|0;F=T;G=Os(L|0,F|0,1)|0;K=T;se=n+120|0;o[se>>2]=G;o[se+4>>2]=K;X=Es(J|0,X|0,J|0,X|0)|0;J=T;te=Rs(0,te|0,30)|0;te=Es(re|0,ie|0,te|0,T|0)|0;J=ks(te|0,T|0,X|0,J|0)|0;X=T;te=n+128|0;o[te>>2]=J;o[te+4>>2]=X;ne=Rs(0,ne|0,31)|0;ne=Es(re|0,ie|0,ne|0,T|0)|0;te=T;se=n+136|0;o[se>>2]=ne;o[se+4>>2]=te;oe=Rs(0,oe|0,31)|0;ie=Es(oe|0,T|0,re|0,ie|0)|0;re=T;oe=n+144|0;o[oe>>2]=ie;o[oe+4>>2]=re;re=Es(ie|0,re|0,19,0)|0;V=ks(re|0,T|0,Z|0,V|0)|0;Z=n+64|0;o[Z>>2]=V;o[Z+4>>2]=T;Z=Es(ne|0,te|0,18,0)|0;V=T;$=ks(ne|0,te|0,ee|0,$|0)|0;V=ks($|0,T|0,Z|0,V|0)|0;o[Q>>2]=V;o[Q+4>>2]=T;Q=Es(J|0,X|0,18,0)|0;V=T;W=ks(J|0,X|0,Y|0,W|0)|0;V=ks(W|0,T|0,Q|0,V|0)|0;o[H>>2]=V;o[H+4>>2]=T;F=Es(L|0,F|0,36,0)|0;L=T;q=ks(G|0,K|0,z|0,q|0)|0;L=ks(q|0,T|0,F|0,L|0)|0;o[U>>2]=L;o[U+4>>2]=T;M=Es(P|0,M|0,36,0)|0;P=T;D=ks(j|0,B|0,N|0,D|0)|0;P=ks(D|0,T|0,M|0,P|0)|0;o[O>>2]=P;o[O+4>>2]=T;S=Es(v|0,S|0,36,0)|0;v=T;I=ks(C|0,R|0,x|0,I|0)|0;v=ks(I|0,T|0,S|0,v|0)|0;o[_>>2]=v;o[_+4>>2]=T;_=Es(k|0,E|0,18,0)|0;v=T;w=ks(k|0,E|0,A|0,w|0)|0;v=ks(w|0,T|0,_|0,v|0)|0;o[b>>2]=v;o[b+4>>2]=T;d=Es(u|0,d|0,36,0)|0;u=T;p=ks(y|0,g|0,m|0,p|0)|0;u=ks(p|0,T|0,d|0,u|0)|0;o[l>>2]=u;o[l+4>>2]=T;t=Es(i|0,t|0,36,0)|0;i=T;s=ks(f|0,c|0,a|0,s|0)|0;i=ks(s|0,T|0,t|0,i|0)|0;t=n;o[t>>2]=i;o[t+4>>2]=T;No(n);t=n;n=e+80|0;do{o[e>>2]=o[t>>2];e=e+4|0;t=t+4|0}while((e|0)<(n|0));h=r;return}function jo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0;E=h;h=h+16|0;p=E;do{if(e>>>0<245){l=e>>>0<11?16:e+11&-8;e=l>>>3;d=o[9632]|0;n=d>>>e;if(n&3|0){t=(n&1^1)+e|0;e=38568+(t<<1<<2)|0;n=e+8|0;r=o[n>>2]|0;i=r+8|0;s=o[i>>2]|0;if((s|0)==(e|0))o[9632]=d&~(1<>2]=e;o[n>>2]=s}A=t<<3;o[r+4>>2]=A|3;A=r+A+4|0;o[A>>2]=o[A>>2]|1;A=i;h=E;return A|0}u=o[9634]|0;if(l>>>0>u>>>0){if(n|0){t=2<>>12&16;t=t>>>c;n=t>>>5&8;t=t>>>n;s=t>>>2&4;t=t>>>s;e=t>>>1&2;t=t>>>e;r=t>>>1&1;r=(n|c|s|e|r)+(t>>>r)|0;t=38568+(r<<1<<2)|0;e=t+8|0;s=o[e>>2]|0;c=s+8|0;n=o[c>>2]|0;if((n|0)==(t|0)){e=d&~(1<>2]=t;o[e>>2]=n;e=d}A=r<<3;a=A-l|0;o[s+4>>2]=l|3;i=s+l|0;o[i+4>>2]=a|1;o[s+A>>2]=a;if(u|0){r=o[9637]|0;t=u>>>3;n=38568+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=r;o[t+12>>2]=r;o[r+8>>2]=t;o[r+12>>2]=n}o[9634]=a;o[9637]=i;A=c;h=E;return A|0}s=o[9633]|0;if(s){n=(s&0-s)+-1|0;i=n>>>12&16;n=n>>>i;r=n>>>5&8;n=n>>>r;a=n>>>2&4;n=n>>>a;c=n>>>1&2;n=n>>>c;f=n>>>1&1;f=o[38832+((r|i|a|c|f)+(n>>>f)<<2)>>2]|0;n=f;c=f;f=(o[f+4>>2]&-8)-l|0;while(1){e=o[n+16>>2]|0;if(!e){e=o[n+20>>2]|0;if(!e)break}a=(o[e+4>>2]&-8)-l|0;i=a>>>0>>0;n=e;c=i?e:c;f=i?a:f}a=c+l|0;if(a>>>0>c>>>0){i=o[c+24>>2]|0;t=o[c+12>>2]|0;do{if((t|0)==(c|0)){e=c+20|0;t=o[e>>2]|0;if(!t){e=c+16|0;t=o[e>>2]|0;if(!t){n=0;break}}while(1){r=t+20|0;n=o[r>>2]|0;if(!n){r=t+16|0;n=o[r>>2]|0;if(!n)break;else{t=n;e=r}}else{t=n;e=r}}o[e>>2]=0;n=t}else{n=o[c+8>>2]|0;o[n+12>>2]=t;o[t+8>>2]=n;n=t}}while(0);do{if(i|0){t=o[c+28>>2]|0;e=38832+(t<<2)|0;if((c|0)==(o[e>>2]|0)){o[e>>2]=n;if(!n){o[9633]=s&~(1<>2]|0)==(c|0)?A:i+20|0)>>2]=n;if(!n)break}o[n+24>>2]=i;t=o[c+16>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}t=o[c+20>>2]|0;if(t|0){o[n+20>>2]=t;o[t+24>>2]=n}}}while(0);if(f>>>0<16){A=f+l|0;o[c+4>>2]=A|3;A=c+A+4|0;o[A>>2]=o[A>>2]|1}else{o[c+4>>2]=l|3;o[a+4>>2]=f|1;o[a+f>>2]=f;if(u|0){r=o[9637]|0;t=u>>>3;n=38568+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=r;o[t+12>>2]=r;o[r+8>>2]=t;o[r+12>>2]=n}o[9634]=f;o[9637]=a}A=c+8|0;h=E;return A|0}else d=l}else d=l}else d=l}else if(e>>>0<=4294967231){e=e+11|0;l=e&-8;r=o[9633]|0;if(r){i=0-l|0;e=e>>>8;if(e)if(l>>>0>16777215)f=31;else{d=(e+1048320|0)>>>16&8;y=e<>>16&4;y=y<>>16&2;f=14-(c|d|f)+(y<>>15)|0;f=l>>>(f+7|0)&1|f<<1}else f=0;n=o[38832+(f<<2)>>2]|0;e:do{if(!n){n=0;e=0;y=61}else{e=0;c=l<<((f|0)==31?0:25-(f>>>1)|0);s=0;while(1){a=(o[n+4>>2]&-8)-l|0;if(a>>>0>>0)if(!a){e=n;i=0;y=65;break e}else{e=n;i=a}y=o[n+20>>2]|0;n=o[n+16+(c>>>31<<2)>>2]|0;s=(y|0)==0|(y|0)==(n|0)?s:y;if(!n){n=s;y=61;break}else c=c<<1}}}while(0);if((y|0)==61){if((n|0)==0&(e|0)==0){e=2<>>12&16;d=d>>>a;s=d>>>5&8;d=d>>>s;c=d>>>2&4;d=d>>>c;f=d>>>1&2;d=d>>>f;n=d>>>1&1;e=0;n=o[38832+((s|a|c|f|n)+(d>>>n)<<2)>>2]|0}if(!n){c=e;a=i}else y=65}if((y|0)==65){s=n;while(1){d=(o[s+4>>2]&-8)-l|0;n=d>>>0>>0;i=n?d:i;e=n?s:e;n=o[s+16>>2]|0;if(!n)n=o[s+20>>2]|0;if(!n){c=e;a=i;break}else s=n}}if(((c|0)!=0?a>>>0<((o[9634]|0)-l|0)>>>0:0)?(u=c+l|0,u>>>0>c>>>0):0){s=o[c+24>>2]|0;t=o[c+12>>2]|0;do{if((t|0)==(c|0)){e=c+20|0;t=o[e>>2]|0;if(!t){e=c+16|0;t=o[e>>2]|0;if(!t){t=0;break}}while(1){i=t+20|0;n=o[i>>2]|0;if(!n){i=t+16|0;n=o[i>>2]|0;if(!n)break;else{t=n;e=i}}else{t=n;e=i}}o[e>>2]=0}else{A=o[c+8>>2]|0;o[A+12>>2]=t;o[t+8>>2]=A}}while(0);do{if(s){e=o[c+28>>2]|0;n=38832+(e<<2)|0;if((c|0)==(o[n>>2]|0)){o[n>>2]=t;if(!t){r=r&~(1<>2]|0)==(c|0)?A:s+20|0)>>2]=t;if(!t)break}o[t+24>>2]=s;e=o[c+16>>2]|0;if(e|0){o[t+16>>2]=e;o[e+24>>2]=t}e=o[c+20>>2]|0;if(e){o[t+20>>2]=e;o[e+24>>2]=t}}}while(0);e:do{if(a>>>0<16){A=a+l|0;o[c+4>>2]=A|3;A=c+A+4|0;o[A>>2]=o[A>>2]|1}else{o[c+4>>2]=l|3;o[u+4>>2]=a|1;o[u+a>>2]=a;t=a>>>3;if(a>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=u;o[t+12>>2]=u;o[u+8>>2]=t;o[u+12>>2]=n;break}t=a>>>8;if(t)if(a>>>0>16777215)n=31;else{w=(t+1048320|0)>>>16&8;A=t<>>16&4;A=A<<_;n=(A+245760|0)>>>16&2;n=14-(_|w|n)+(A<>>15)|0;n=a>>>(n+7|0)&1|n<<1}else n=0;t=38832+(n<<2)|0;o[u+28>>2]=n;e=u+16|0;o[e+4>>2]=0;o[e>>2]=0;e=1<>2]=u;o[u+24>>2]=t;o[u+12>>2]=u;o[u+8>>2]=u;break}t=o[t>>2]|0;t:do{if((o[t+4>>2]&-8|0)!=(a|0)){r=a<<((n|0)==31?0:25-(n>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(a|0)){t=e;break t}else{r=r<<1;t=e}}o[n>>2]=u;o[u+24>>2]=t;o[u+12>>2]=u;o[u+8>>2]=u;break e}}while(0);w=t+8|0;A=o[w>>2]|0;o[A+12>>2]=u;o[w>>2]=u;o[u+8>>2]=A;o[u+12>>2]=t;o[u+24>>2]=0}}while(0);A=c+8|0;h=E;return A|0}else d=l}else d=l}else d=-1}while(0);n=o[9634]|0;if(n>>>0>=d>>>0){t=n-d|0;e=o[9637]|0;if(t>>>0>15){A=e+d|0;o[9637]=A;o[9634]=t;o[A+4>>2]=t|1;o[e+n>>2]=t;o[e+4>>2]=d|3}else{o[9634]=0;o[9637]=0;o[e+4>>2]=n|3;A=e+n+4|0;o[A>>2]=o[A>>2]|1}A=e+8|0;h=E;return A|0}a=o[9635]|0;if(a>>>0>d>>>0){_=a-d|0;o[9635]=_;A=o[9638]|0;w=A+d|0;o[9638]=w;o[w+4>>2]=_|1;o[A+4>>2]=d|3;A=A+8|0;h=E;return A|0}if(!(o[9750]|0)){o[9752]=4096;o[9751]=4096;o[9753]=-1;o[9754]=-1;o[9755]=0;o[9743]=0;o[9750]=p&-16^1431655768;e=4096}else e=o[9752]|0;c=d+48|0;f=d+47|0;s=e+f|0;i=0-e|0;l=s&i;if(l>>>0<=d>>>0){A=0;h=E;return A|0}e=o[9742]|0;if(e|0?(u=o[9740]|0,p=u+l|0,p>>>0<=u>>>0|p>>>0>e>>>0):0){A=0;h=E;return A|0}e:do{if(!(o[9743]&4)){n=o[9638]|0;t:do{if(n){r=38976;while(1){p=o[r>>2]|0;if(p>>>0<=n>>>0?(p+(o[r+4>>2]|0)|0)>>>0>n>>>0:0)break;e=o[r+8>>2]|0;if(!e){y=128;break t}else r=e}t=s-a&i;if(t>>>0<2147483647){e=Ns(t|0)|0;if((e|0)==((o[r>>2]|0)+(o[r+4>>2]|0)|0)){if((e|0)!=(-1|0)){a=t;s=e;y=145;break e}}else{r=e;y=136}}else t=0}else y=128}while(0);do{if((y|0)==128){n=Ns(0)|0;if((n|0)!=(-1|0)?(t=n,m=o[9751]|0,g=m+-1|0,t=((g&t|0)==0?0:(g+t&0-m)-t|0)+l|0,m=o[9740]|0,g=t+m|0,t>>>0>d>>>0&t>>>0<2147483647):0){p=o[9742]|0;if(p|0?g>>>0<=m>>>0|g>>>0>p>>>0:0){t=0;break}e=Ns(t|0)|0;if((e|0)==(n|0)){a=t;s=n;y=145;break e}else{r=e;y=136}}else t=0}}while(0);do{if((y|0)==136){n=0-t|0;if(!(c>>>0>t>>>0&(t>>>0<2147483647&(r|0)!=(-1|0))))if((r|0)==(-1|0)){t=0;break}else{a=t;s=r;y=145;break e}e=o[9752]|0;e=f-t+e&0-e;if(e>>>0>=2147483647){a=t;s=r;y=145;break e}if((Ns(e|0)|0)==(-1|0)){Ns(n|0)|0;t=0;break}else{a=e+t|0;s=r;y=145;break e}}}while(0);o[9743]=o[9743]|4;y=143}else{t=0;y=143}}while(0);if(((y|0)==143?l>>>0<2147483647:0)?(_=Ns(l|0)|0,g=Ns(0)|0,b=g-_|0,v=b>>>0>(d+40|0)>>>0,!((_|0)==(-1|0)|v^1|_>>>0>>0&((_|0)!=(-1|0)&(g|0)!=(-1|0))^1)):0){a=v?b:t;s=_;y=145}if((y|0)==145){t=(o[9740]|0)+a|0;o[9740]=t;if(t>>>0>(o[9741]|0)>>>0)o[9741]=t;f=o[9638]|0;e:do{if(f){t=38976;while(1){e=o[t>>2]|0;n=o[t+4>>2]|0;if((s|0)==(e+n|0)){y=154;break}r=o[t+8>>2]|0;if(!r)break;else t=r}if(((y|0)==154?(w=t+4|0,(o[t+12>>2]&8|0)==0):0)?s>>>0>f>>>0&e>>>0<=f>>>0:0){o[w>>2]=n+a;A=(o[9635]|0)+a|0;_=f+8|0;_=(_&7|0)==0?0:0-_&7;w=f+_|0;_=A-_|0;o[9638]=w;o[9635]=_;o[w+4>>2]=_|1;o[f+A+4>>2]=40;o[9639]=o[9754];break}if(s>>>0<(o[9636]|0)>>>0)o[9636]=s;n=s+a|0;t=38976;while(1){if((o[t>>2]|0)==(n|0)){y=162;break}e=o[t+8>>2]|0;if(!e)break;else t=e}if((y|0)==162?(o[t+12>>2]&8|0)==0:0){o[t>>2]=s;u=t+4|0;o[u>>2]=(o[u>>2]|0)+a;u=s+8|0;u=s+((u&7|0)==0?0:0-u&7)|0;t=n+8|0;t=n+((t&7|0)==0?0:0-t&7)|0;l=u+d|0;c=t-u-d|0;o[u+4>>2]=d|3;t:do{if((f|0)==(t|0)){A=(o[9635]|0)+c|0;o[9635]=A;o[9638]=l;o[l+4>>2]=A|1}else{if((o[9637]|0)==(t|0)){A=(o[9634]|0)+c|0;o[9634]=A;o[9637]=l;o[l+4>>2]=A|1;o[l+A>>2]=A;break}e=o[t+4>>2]|0;if((e&3|0)==1){a=e&-8;r=e>>>3;n:do{if(e>>>0<256){e=o[t+8>>2]|0;n=o[t+12>>2]|0;if((n|0)==(e|0)){o[9632]=o[9632]&~(1<>2]=n;o[n+8>>2]=e;break}}else{s=o[t+24>>2]|0;e=o[t+12>>2]|0;do{if((e|0)==(t|0)){n=t+16|0;r=n+4|0;e=o[r>>2]|0;if(!e){e=o[n>>2]|0;if(!e){e=0;break}}else n=r;while(1){i=e+20|0;r=o[i>>2]|0;if(!r){i=e+16|0;r=o[i>>2]|0;if(!r)break;else{e=r;n=i}}else{e=r;n=i}}o[n>>2]=0}else{A=o[t+8>>2]|0;o[A+12>>2]=e;o[e+8>>2]=A}}while(0);if(!s)break;n=o[t+28>>2]|0;r=38832+(n<<2)|0;do{if((o[r>>2]|0)!=(t|0)){A=s+16|0;o[((o[A>>2]|0)==(t|0)?A:s+20|0)>>2]=e;if(!e)break n}else{o[r>>2]=e;if(e|0)break;o[9633]=o[9633]&~(1<>2]=s;n=t+16|0;r=o[n>>2]|0;if(r|0){o[e+16>>2]=r;o[r+24>>2]=e}n=o[n+4>>2]|0;if(!n)break;o[e+20>>2]=n;o[n+24>>2]=e}}while(0);t=t+a|0;i=a+c|0}else i=c;t=t+4|0;o[t>>2]=o[t>>2]&-2;o[l+4>>2]=i|1;o[l+i>>2]=i;t=i>>>3;if(i>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=l;o[t+12>>2]=l;o[l+8>>2]=t;o[l+12>>2]=n;break}t=i>>>8;do{if(!t)r=0;else{if(i>>>0>16777215){r=31;break}w=(t+1048320|0)>>>16&8;A=t<>>16&4;A=A<<_;r=(A+245760|0)>>>16&2;r=14-(_|w|r)+(A<>>15)|0;r=i>>>(r+7|0)&1|r<<1}}while(0);t=38832+(r<<2)|0;o[l+28>>2]=r;e=l+16|0;o[e+4>>2]=0;o[e>>2]=0;e=o[9633]|0;n=1<>2]=l;o[l+24>>2]=t;o[l+12>>2]=l;o[l+8>>2]=l;break}t=o[t>>2]|0;n:do{if((o[t+4>>2]&-8|0)!=(i|0)){r=i<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(i|0)){t=e;break n}else{r=r<<1;t=e}}o[n>>2]=l;o[l+24>>2]=t;o[l+12>>2]=l;o[l+8>>2]=l;break t}}while(0);w=t+8|0;A=o[w>>2]|0;o[A+12>>2]=l;o[w>>2]=l;o[l+8>>2]=A;o[l+12>>2]=t;o[l+24>>2]=0}}while(0);A=u+8|0;h=E;return A|0}t=38976;while(1){e=o[t>>2]|0;if(e>>>0<=f>>>0?(A=e+(o[t+4>>2]|0)|0,A>>>0>f>>>0):0)break;t=o[t+8>>2]|0}i=A+-47|0;e=i+8|0;e=i+((e&7|0)==0?0:0-e&7)|0;i=f+16|0;e=e>>>0>>0?f:e;t=e+8|0;n=a+-40|0;_=s+8|0;_=(_&7|0)==0?0:0-_&7;w=s+_|0;_=n-_|0;o[9638]=w;o[9635]=_;o[w+4>>2]=_|1;o[s+n+4>>2]=40;o[9639]=o[9754];n=e+4|0;o[n>>2]=27;o[t>>2]=o[9744];o[t+4>>2]=o[9745];o[t+8>>2]=o[9746];o[t+12>>2]=o[9747];o[9744]=s;o[9745]=a;o[9747]=0;o[9746]=t;t=e+24|0;do{w=t;t=t+4|0;o[t>>2]=7}while((w+8|0)>>>0>>0);if((e|0)!=(f|0)){s=e-f|0;o[n>>2]=o[n>>2]&-2;o[f+4>>2]=s|1;o[e>>2]=s;t=s>>>3;if(s>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=f;o[t+12>>2]=f;o[f+8>>2]=t;o[f+12>>2]=n;break}t=s>>>8;if(t)if(s>>>0>16777215)r=31;else{w=(t+1048320|0)>>>16&8;A=t<>>16&4;A=A<<_;r=(A+245760|0)>>>16&2;r=14-(_|w|r)+(A<>>15)|0;r=s>>>(r+7|0)&1|r<<1}else r=0;n=38832+(r<<2)|0;o[f+28>>2]=r;o[f+20>>2]=0;o[i>>2]=0;t=o[9633]|0;e=1<>2]=f;o[f+24>>2]=n;o[f+12>>2]=f;o[f+8>>2]=f;break}t=o[n>>2]|0;t:do{if((o[t+4>>2]&-8|0)!=(s|0)){r=s<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(s|0)){t=e;break t}else{r=r<<1;t=e}}o[n>>2]=f;o[f+24>>2]=t;o[f+12>>2]=f;o[f+8>>2]=f;break e}}while(0);w=t+8|0;A=o[w>>2]|0;o[A+12>>2]=f;o[w>>2]=f;o[f+8>>2]=A;o[f+12>>2]=t;o[f+24>>2]=0}}else{A=o[9636]|0;if((A|0)==0|s>>>0>>0)o[9636]=s;o[9744]=s;o[9745]=a;o[9747]=0;o[9641]=o[9750];o[9640]=-1;o[9645]=38568;o[9644]=38568;o[9647]=38576;o[9646]=38576;o[9649]=38584;o[9648]=38584;o[9651]=38592;o[9650]=38592;o[9653]=38600;o[9652]=38600;o[9655]=38608;o[9654]=38608;o[9657]=38616;o[9656]=38616;o[9659]=38624;o[9658]=38624;o[9661]=38632;o[9660]=38632;o[9663]=38640;o[9662]=38640;o[9665]=38648;o[9664]=38648;o[9667]=38656;o[9666]=38656;o[9669]=38664;o[9668]=38664;o[9671]=38672;o[9670]=38672;o[9673]=38680;o[9672]=38680;o[9675]=38688;o[9674]=38688;o[9677]=38696;o[9676]=38696;o[9679]=38704;o[9678]=38704;o[9681]=38712;o[9680]=38712;o[9683]=38720;o[9682]=38720;o[9685]=38728;o[9684]=38728;o[9687]=38736;o[9686]=38736;o[9689]=38744;o[9688]=38744;o[9691]=38752;o[9690]=38752;o[9693]=38760;o[9692]=38760;o[9695]=38768;o[9694]=38768;o[9697]=38776;o[9696]=38776;o[9699]=38784;o[9698]=38784;o[9701]=38792;o[9700]=38792;o[9703]=38800;o[9702]=38800;o[9705]=38808;o[9704]=38808;o[9707]=38816;o[9706]=38816;A=a+-40|0;_=s+8|0;_=(_&7|0)==0?0:0-_&7;w=s+_|0;_=A-_|0;o[9638]=w;o[9635]=_;o[w+4>>2]=_|1;o[s+A+4>>2]=40;o[9639]=o[9754]}}while(0);t=o[9635]|0;if(t>>>0>d>>>0){_=t-d|0;o[9635]=_;A=o[9638]|0;w=A+d|0;o[9638]=w;o[w+4>>2]=_|1;o[A+4>>2]=d|3;A=A+8|0;h=E;return A|0}}o[(Lo()|0)>>2]=12;A=0;h=E;return A|0}function Uo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,c=0,f=0;if(!e)return;n=e+-8|0;i=o[9636]|0;e=o[e+-4>>2]|0;t=e&-8;f=n+t|0;do{if(!(e&1)){r=o[n>>2]|0;if(!(e&3))return;a=n+(0-r)|0;s=r+t|0;if(a>>>0>>0)return;if((o[9637]|0)==(a|0)){e=f+4|0;t=o[e>>2]|0;if((t&3|0)!=3){c=a;t=s;break}o[9634]=s;o[e>>2]=t&-2;o[a+4>>2]=s|1;o[a+s>>2]=s;return}n=r>>>3;if(r>>>0<256){e=o[a+8>>2]|0;t=o[a+12>>2]|0;if((t|0)==(e|0)){o[9632]=o[9632]&~(1<>2]=t;o[t+8>>2]=e;c=a;t=s;break}}i=o[a+24>>2]|0;e=o[a+12>>2]|0;do{if((e|0)==(a|0)){t=a+16|0;n=t+4|0;e=o[n>>2]|0;if(!e){e=o[t>>2]|0;if(!e){e=0;break}}else t=n;while(1){r=e+20|0;n=o[r>>2]|0;if(!n){r=e+16|0;n=o[r>>2]|0;if(!n)break;else{e=n;t=r}}else{e=n;t=r}}o[t>>2]=0}else{c=o[a+8>>2]|0;o[c+12>>2]=e;o[e+8>>2]=c}}while(0);if(i){t=o[a+28>>2]|0;n=38832+(t<<2)|0;if((o[n>>2]|0)==(a|0)){o[n>>2]=e;if(!e){o[9633]=o[9633]&~(1<>2]|0)==(a|0)?c:i+20|0)>>2]=e;if(!e){c=a;t=s;break}}o[e+24>>2]=i;t=a+16|0;n=o[t>>2]|0;if(n|0){o[e+16>>2]=n;o[n+24>>2]=e}t=o[t+4>>2]|0;if(t){o[e+20>>2]=t;o[t+24>>2]=e;c=a;t=s}else{c=a;t=s}}else{c=a;t=s}}else{c=n;a=n}}while(0);if(a>>>0>=f>>>0)return;e=f+4|0;r=o[e>>2]|0;if(!(r&1))return;if(!(r&2)){if((o[9638]|0)==(f|0)){f=(o[9635]|0)+t|0;o[9635]=f;o[9638]=c;o[c+4>>2]=f|1;if((c|0)!=(o[9637]|0))return;o[9637]=0;o[9634]=0;return}if((o[9637]|0)==(f|0)){f=(o[9634]|0)+t|0;o[9634]=f;o[9637]=a;o[c+4>>2]=f|1;o[a+f>>2]=f;return}i=(r&-8)+t|0;n=r>>>3;do{if(r>>>0<256){t=o[f+8>>2]|0;e=o[f+12>>2]|0;if((e|0)==(t|0)){o[9632]=o[9632]&~(1<>2]=e;o[e+8>>2]=t;break}}else{s=o[f+24>>2]|0;e=o[f+12>>2]|0;do{if((e|0)==(f|0)){t=f+16|0;n=t+4|0;e=o[n>>2]|0;if(!e){e=o[t>>2]|0;if(!e){n=0;break}}else t=n;while(1){r=e+20|0;n=o[r>>2]|0;if(!n){r=e+16|0;n=o[r>>2]|0;if(!n)break;else{e=n;t=r}}else{e=n;t=r}}o[t>>2]=0;n=e}else{n=o[f+8>>2]|0;o[n+12>>2]=e;o[e+8>>2]=n;n=e}}while(0);if(s|0){e=o[f+28>>2]|0;t=38832+(e<<2)|0;if((o[t>>2]|0)==(f|0)){o[t>>2]=n;if(!n){o[9633]=o[9633]&~(1<>2]|0)==(f|0)?r:s+20|0)>>2]=n;if(!n)break}o[n+24>>2]=s;e=f+16|0;t=o[e>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}e=o[e+4>>2]|0;if(e|0){o[n+20>>2]=e;o[e+24>>2]=n}}}}while(0);o[c+4>>2]=i|1;o[a+i>>2]=i;if((c|0)==(o[9637]|0)){o[9634]=i;return}}else{o[e>>2]=r&-2;o[c+4>>2]=t|1;o[a+t>>2]=t;i=t}e=i>>>3;if(i>>>0<256){n=38568+(e<<1<<2)|0;t=o[9632]|0;e=1<>2]|0}o[t>>2]=c;o[e+12>>2]=c;o[c+8>>2]=e;o[c+12>>2]=n;return}e=i>>>8;if(e)if(i>>>0>16777215)r=31;else{a=(e+1048320|0)>>>16&8;f=e<>>16&4;f=f<>>16&2;r=14-(s|a|r)+(f<>>15)|0;r=i>>>(r+7|0)&1|r<<1}else r=0;e=38832+(r<<2)|0;o[c+28>>2]=r;o[c+20>>2]=0;o[c+16>>2]=0;t=o[9633]|0;n=1<>2]=c;o[c+24>>2]=e;o[c+12>>2]=c;o[c+8>>2]=c}else{e=o[e>>2]|0;t:do{if((o[e+4>>2]&-8|0)!=(i|0)){r=i<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=e+16+(r>>>31<<2)|0;t=o[n>>2]|0;if(!t)break;if((o[t+4>>2]&-8|0)==(i|0)){e=t;break t}else{r=r<<1;e=t}}o[n>>2]=c;o[c+24>>2]=e;o[c+12>>2]=c;o[c+8>>2]=c;break e}}while(0);a=e+8|0;f=o[a>>2]|0;o[f+12>>2]=c;o[a>>2]=c;o[c+8>>2]=f;o[c+12>>2]=e;o[c+24>>2]=0}}while(0);f=(o[9640]|0)+-1|0;o[9640]=f;if(f|0)return;e=38984;while(1){e=o[e>>2]|0;if(!e)break;else e=e+8|0}o[9640]=-1;return}function Lo(){return 39088}function Fo(e,t){e=e|0;t=t|0;var n=0,i=0;n=r[e>>0]|0;i=r[t>>0]|0;if(n<<24>>24==0?1:n<<24>>24!=i<<24>>24)e=i;else{do{e=e+1|0;t=t+1|0;n=r[e>>0]|0;i=r[t>>0]|0}while(!(n<<24>>24==0?1:n<<24>>24!=i<<24>>24));e=i}return(n&255)-(e&255)|0}function qo(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;e:do{if(!n)e=0;else{while(1){i=r[e>>0]|0;o=r[t>>0]|0;if(i<<24>>24!=o<<24>>24)break;n=n+-1|0;if(!n){e=0;break e}else{e=e+1|0;t=t+1|0}}e=(i&255)-(o&255)|0}}while(0);return e|0}function zo(e){e=e|0;return(e+-48|0)>>>0<10|0}function Ko(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0;d=h;h=h+128|0;s=d+124|0;u=d;a=u;c=37604;f=a+124|0;do{o[a>>2]=o[c>>2];a=a+4|0;c=c+4|0}while((a|0)<(f|0));if((t+-1|0)>>>0>2147483646)if(!t){e=s;t=1;l=4}else{o[(Lo()|0)>>2]=75;t=-1}else l=4;if((l|0)==4){l=-2-e|0;l=t>>>0>l>>>0?l:t;o[u+48>>2]=l;s=u+20|0;o[s>>2]=e;o[u+44>>2]=e;t=e+l|0;e=u+16|0;o[e>>2]=t;o[u+28>>2]=t;t=Go(u,n,i)|0;if(l){u=o[s>>2]|0;r[u+(((u|0)==(o[e>>2]|0))<<31>>31)>>0]=0}}h=d;return t|0}function Go(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0;b=h;h=h+224|0;d=b+208|0;m=b+160|0;g=b+80|0;y=b;i=m;s=i+40|0;do{o[i>>2]=0;i=i+4|0}while((i|0)<(s|0));o[d>>2]=o[n>>2];if((Ho(0,t,d,g,m)|0)<0)n=-1;else{if((o[e+76>>2]|0)>-1)p=Vo(e)|0;else p=0;n=o[e>>2]|0;u=n&32;if((r[e+74>>0]|0)<1)o[e>>2]=n&-33;i=e+48|0;if(!(o[i>>2]|0)){s=e+44|0;a=o[s>>2]|0;o[s>>2]=y;c=e+28|0;o[c>>2]=y;f=e+20|0;o[f>>2]=y;o[i>>2]=80;l=e+16|0;o[l>>2]=y+80;n=Ho(e,t,d,g,m)|0;if(a){Vs[o[e+36>>2]&1](e,0,0)|0;n=(o[f>>2]|0)==0?-1:n;o[s>>2]=a;o[i>>2]=0;o[l>>2]=0;o[c>>2]=0;o[f>>2]=0}}else n=Ho(e,t,d,g,m)|0;i=o[e>>2]|0;o[e>>2]=i|u;if(p|0)Qo(e);n=(i&32|0)==0?n:-1}h=b;return n|0}function Ho(e,t,n,s,a){e=e|0;t=t|0;n=n|0;s=s|0;a=a|0;var c=0,f=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0;D=h;h=h+64|0;R=D+56|0;C=D+40|0;S=D;P=D+48|0;M=D+60|0;o[R>>2]=t;A=(e|0)!=0;E=S+40|0;k=E;S=S+39|0;I=P+4|0;c=0;t=0;u=0;e:while(1){do{do{if((t|0)>-1)if((c|0)>(2147483647-t|0)){o[(Lo()|0)>>2]=75;t=-1;break}else{t=c+t|0;break}}while(0);b=o[R>>2]|0;c=r[b>>0]|0;if(!(c<<24>>24)){w=94;break e}f=b;t:while(1){switch(c<<24>>24){case 37:{w=10;break t}case 0:{c=f;break t}default:{}}_=f+1|0;o[R>>2]=_;c=r[_>>0]|0;f=_}t:do{if((w|0)==10){w=0;c=f;do{if((r[f+1>>0]|0)!=37)break t;c=c+1|0;f=f+2|0;o[R>>2]=f}while((r[f>>0]|0)==37)}}while(0);c=c-b|0;if(A)Wo(e,b,c)}while((c|0)!=0);_=(zo(r[(o[R>>2]|0)+1>>0]|0)|0)==0;f=o[R>>2]|0;if(!_?(r[f+2>>0]|0)==36:0){g=(r[f+1>>0]|0)+-48|0;p=1;c=3}else{g=-1;p=u;c=1}c=f+c|0;o[R>>2]=c;f=r[c>>0]|0;u=(f<<24>>24)+-32|0;if(u>>>0>31|(1<>2]=c;f=r[c>>0]|0;u=(f<<24>>24)+-32|0}while(!(u>>>0>31|(1<>24==42){if((zo(r[c+1>>0]|0)|0)!=0?(O=o[R>>2]|0,(r[O+2>>0]|0)==36):0){c=O+1|0;o[a+((r[c>>0]|0)+-48<<2)>>2]=10;c=o[s+((r[c>>0]|0)+-48<<3)>>2]|0;u=1;f=O+3|0}else{if(p|0){t=-1;break}if(A){_=(o[n>>2]|0)+(4-1)&~(4-1);c=o[_>>2]|0;o[n>>2]=_+4}else c=0;u=0;f=(o[R>>2]|0)+1|0}o[R>>2]=f;_=(c|0)<0;v=_?0-c|0:c;d=_?d|8192:d;_=u}else{c=Yo(R)|0;if((c|0)<0){t=-1;break}v=c;_=p;f=o[R>>2]|0}do{if((r[f>>0]|0)==46){c=f+1|0;if((r[c>>0]|0)!=42){o[R>>2]=c;c=Yo(R)|0;f=o[R>>2]|0;break}if(zo(r[f+2>>0]|0)|0?(x=o[R>>2]|0,(r[x+3>>0]|0)==36):0){c=x+2|0;o[a+((r[c>>0]|0)+-48<<2)>>2]=10;c=o[s+((r[c>>0]|0)+-48<<3)>>2]|0;f=x+4|0;o[R>>2]=f;break}if(_|0){t=-1;break e}if(A){y=(o[n>>2]|0)+(4-1)&~(4-1);c=o[y>>2]|0;o[n>>2]=y+4}else c=0;f=(o[R>>2]|0)+2|0;o[R>>2]=f}else c=-1}while(0);y=0;while(1){if(((r[f>>0]|0)+-65|0)>>>0>57){t=-1;break e}u=f;f=f+1|0;o[R>>2]=f;u=r[(r[u>>0]|0)+-65+(35136+(y*58|0))>>0]|0;p=u&255;if((p+-1|0)>>>0>=8)break;else y=p}if(!(u<<24>>24)){t=-1;break}m=(g|0)>-1;do{if(u<<24>>24==19)if(m){t=-1;break e}else w=54;else{if(m){o[a+(g<<2)>>2]=p;m=s+(g<<3)|0;g=o[m+4>>2]|0;w=C;o[w>>2]=o[m>>2];o[w+4>>2]=g;w=54;break}if(!A){t=0;break e}Xo(C,p,n);f=o[R>>2]|0;w=55}}while(0);if((w|0)==54){w=0;if(A)w=55;else c=0}t:do{if((w|0)==55){w=0;f=r[f+-1>>0]|0;f=(y|0)!=0&(f&15|0)==3?f&-33:f;u=d&-65537;g=(d&8192|0)==0?d:u;n:do{switch(f|0){case 110:switch((y&255)<<24>>24){case 0:{o[o[C>>2]>>2]=t;c=0;break t}case 1:{o[o[C>>2]>>2]=t;c=0;break t}case 2:{c=o[C>>2]|0;o[c>>2]=t;o[c+4>>2]=((t|0)<0)<<31>>31;c=0;break t}case 3:{i[o[C>>2]>>1]=t;c=0;break t}case 4:{r[o[C>>2]>>0]=t;c=0;break t}case 6:{o[o[C>>2]>>2]=t;c=0;break t}case 7:{c=o[C>>2]|0;o[c>>2]=t;o[c+4>>2]=((t|0)<0)<<31>>31;c=0;break t}default:{c=0;break t}}case 112:{f=120;c=c>>>0>8?c:8;u=g|8;w=67;break}case 88:case 120:{u=g;w=67;break}case 111:{u=C;f=o[u>>2]|0;u=o[u+4>>2]|0;m=Zo(f,u,E)|0;w=k-m|0;d=0;p=38441;c=(g&8|0)==0|(c|0)>(w|0)?c:w+1|0;w=73;break}case 105:case 100:{u=C;f=o[u>>2]|0;u=o[u+4>>2]|0;if((u|0)<0){f=Ss(0,0,f|0,u|0)|0;u=T;d=C;o[d>>2]=f;o[d+4>>2]=u;d=1;p=38441;w=72;break n}else{d=(g&2049|0)!=0&1;p=(g&2048|0)==0?(g&1|0)==0?38441:38443:38442;w=72;break n}}case 117:{u=C;d=0;p=38441;f=o[u>>2]|0;u=o[u+4>>2]|0;w=72;break}case 99:{r[S>>0]=o[C>>2];y=S;d=0;p=38441;m=1;c=k;break}case 109:{f=es(o[(Lo()|0)>>2]|0)|0;w=77;break}case 115:{f=o[C>>2]|0;f=(f|0)==0?38451:f;w=77;break}case 67:{o[P>>2]=o[C>>2];o[I>>2]=0;o[C>>2]=P;p=-1;w=81;break}case 83:{if(!c){ns(e,32,v,0,g);c=0;w=91}else{p=c;w=81}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{c=is(e,+l[C>>3],v,c,g,f)|0;break t}default:{y=b;d=0;p=38441;m=c;u=g;c=k}}}while(0);n:do{if((w|0)==67){b=C;y=o[b>>2]|0;b=o[b+4>>2]|0;m=Jo(y,b,E,f&32)|0;p=(u&8|0)==0|(y|0)==0&(b|0)==0;d=p?0:2;p=p?38441:38441+(f>>>4)|0;g=u;f=y;u=b;w=73}else if((w|0)==72){m=$o(f,u,E)|0;w=73}else if((w|0)==77){w=0;b=ts(f,0,c)|0;g=(b|0)==0;y=f;d=0;p=38441;m=g?c:b-f|0;c=g?f+c|0:b}else if((w|0)==81){w=0;d=o[C>>2]|0;c=0;while(1){f=o[d>>2]|0;if(!f)break;f=rs(M,f)|0;u=(f|0)<0;if(u|f>>>0>(p-c|0)>>>0){w=85;break}c=f+c|0;if(p>>>0>c>>>0)d=d+4|0;else break}if((w|0)==85){w=0;if(u){t=-1;break e}}ns(e,32,v,c,g);if(!c){c=0;w=91}else{u=o[C>>2]|0;d=0;while(1){f=o[u>>2]|0;if(!f){w=91;break n}f=rs(M,f)|0;d=f+d|0;if((d|0)>(c|0)){w=91;break n}Wo(e,M,f);if(d>>>0>=c>>>0){w=91;break}else u=u+4|0}}}}while(0);if((w|0)==73){w=0;u=(f|0)!=0|(u|0)!=0;b=(c|0)!=0|u;u=k-m+((u^1)&1)|0;y=b?m:E;m=b?(c|0)>(u|0)?c:u:0;u=(c|0)>-1?g&-65537:g;c=k}else if((w|0)==91){w=0;ns(e,32,v,c,g^8192);c=(v|0)>(c|0)?v:c;break}g=c-y|0;m=(m|0)<(g|0)?g:m;b=m+d|0;c=(v|0)<(b|0)?b:v;ns(e,32,c,b,u);Wo(e,p,d);ns(e,48,c,b,u^65536);ns(e,48,m,g,0);Wo(e,y,g);ns(e,32,c,b,u^8192)}}while(0);u=_}e:do{if((w|0)==94)if(!e)if(!u)t=0;else{t=1;while(1){c=o[a+(t<<2)>>2]|0;if(!c)break;Xo(s+(t<<3)|0,c,n);t=t+1|0;if(t>>>0>=10){t=1;break e}}while(1){if(o[a+(t<<2)>>2]|0){t=-1;break e}t=t+1|0;if(t>>>0>=10){t=1;break}}}}while(0);h=D;return t|0}function Vo(e){e=e|0;return 0}function Qo(e){e=e|0;return}function Wo(e,t,n){e=e|0;t=t|0;n=n|0;if(!(o[e>>2]&32))ys(t,n,e)|0;return}function Yo(e){e=e|0;var t=0,n=0;if(!(zo(r[o[e>>2]>>0]|0)|0))t=0;else{t=0;do{n=o[e>>2]|0;t=(t*10|0)+-48+(r[n>>0]|0)|0;n=n+1|0;o[e>>2]=n}while((zo(r[n>>0]|0)|0)!=0)}return t|0}function Xo(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0.0;e:do{if(t>>>0<=20)do{switch(t|0){case 9:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;o[e>>2]=t;break e}case 10:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=((t|0)<0)<<31>>31;break e}case 11:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=0;break e}case 12:{r=(o[n>>2]|0)+(8-1)&~(8-1);t=r;i=o[t>>2]|0;t=o[t+4>>2]|0;o[n>>2]=r+8;r=e;o[r>>2]=i;o[r+4>>2]=t;break e}case 13:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&65535)<<16>>16;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 14:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&65535;o[i+4>>2]=0;break e}case 15:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&255)<<24>>24;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 16:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&255;o[i+4>>2]=0;break e}case 17:{i=(o[n>>2]|0)+(8-1)&~(8-1);s=+l[i>>3];o[n>>2]=i+8;l[e>>3]=s;break e}case 18:{i=(o[n>>2]|0)+(8-1)&~(8-1);s=+l[i>>3];o[n>>2]=i+8;l[e>>3]=s;break e}default:break e}}while(0)}while(0);return}function Jo(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=s[35600+(e&15)>>0]|0|i;e=Cs(e|0,t|0,4)|0;t=T}while(!((e|0)==0&(t|0)==0));return n|0}function Zo(e,t,n){e=e|0;t=t|0;n=n|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=e&7|48;e=Cs(e|0,t|0,3)|0;t=T}while(!((e|0)==0&(t|0)==0));return n|0}function $o(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0;if(t>>>0>0|(t|0)==0&e>>>0>4294967295){do{i=e;e=xs(e|0,t|0,10,0)|0;o=t;t=T;s=Es(e|0,t|0,10,0)|0;s=Ss(i|0,o|0,s|0,T|0)|0;n=n+-1|0;r[n>>0]=s&255|48}while(o>>>0>9|(o|0)==9&i>>>0>4294967295);t=e}else t=e;if(t)do{s=t;t=(t>>>0)/10|0;n=n+-1|0;r[n>>0]=s-(t*10|0)|48}while(s>>>0>=10);return n|0}function es(e){e=e|0;return ds(e,o[(us()|0)+188>>2]|0)|0}function ts(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0;a=t&255;i=(n|0)!=0;e:do{if(i&(e&3|0)!=0){s=t&255;while(1){if((r[e>>0]|0)==s<<24>>24){c=6;break e}e=e+1|0;n=n+-1|0;i=(n|0)!=0;if(!(i&(e&3|0)!=0)){c=5;break}}}else c=5}while(0);if((c|0)==5)if(i)c=6;else c=16;e:do{if((c|0)==6){s=t&255;if((r[e>>0]|0)==s<<24>>24)if(!n){c=16;break}else break;i=q(a,16843009)|0;t:do{if(n>>>0>3)while(1){a=o[e>>2]^i;if((a&-2139062144^-2139062144)&a+-16843009|0)break t;e=e+4|0;n=n+-4|0;if(n>>>0<=3){c=11;break}}else c=11}while(0);if((c|0)==11)if(!n){c=16;break}while(1){if((r[e>>0]|0)==s<<24>>24)break e;n=n+-1|0;if(!n){c=16;break}else e=e+1|0}}}while(0);if((c|0)==16)e=0;return e|0}function ns(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var o=0,s=0;s=h;h=h+256|0;o=s;if((n|0)>(r|0)&(i&73728|0)==0){i=n-r|0;Ds(o|0,t<<24>>24|0,(i>>>0<256?i:256)|0)|0;if(i>>>0>255){t=n-r|0;do{Wo(e,o,256);i=i+-256|0}while(i>>>0>255);i=t&255}Wo(e,o,i)}h=s;return}function rs(e,t){e=e|0;t=t|0;if(!e)e=0;else e=cs(e,t,0)|0;return e|0}function is(e,t,n,i,a,c){e=e|0;t=+t;n=n|0;i=i|0;a=a|0;c=c|0;var f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0.0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0;M=h;h=h+560|0;u=M+32|0;w=M+536|0;P=M;O=P;d=M+540|0;o[w>>2]=0;C=d+12|0;os(t)|0;f=T;if((f|0)<0){t=-t;os(t)|0;R=1;x=38458;f=T}else{R=(a&2049|0)!=0&1;x=(a&2048|0)==0?(a&1|0)==0?38459:38464:38461}do{if(0==0&(f&2146435072|0)==2146435072){P=(c&32|0)!=0;f=R+3|0;ns(e,32,n,f,a&-65537);Wo(e,x,R);Wo(e,t!=t|0.0!=0.0?P?38485:38489:P?38477:38481,3);ns(e,32,n,f,a^8192)}else{y=+ss(t,w)*2.0;f=y!=0.0;if(f)o[w>>2]=(o[w>>2]|0)+-1;_=c|32;if((_|0)==97){m=c&32;b=(m|0)==0?x:x+9|0;g=R|2;f=12-i|0;do{if(!(i>>>0>11|(f|0)==0)){t=8.0;do{f=f+-1|0;t=t*16.0}while((f|0)!=0);if((r[b>>0]|0)==45){t=-(t+(-y-t));break}else{t=y+t-t;break}}else t=y}while(0);l=o[w>>2]|0;f=(l|0)<0?0-l|0:l;f=$o(f,((f|0)<0)<<31>>31,C)|0;if((f|0)==(C|0)){f=d+11|0;r[f>>0]=48}r[f+-1>>0]=(l>>31&2)+43;p=f+-2|0;r[p>>0]=c+15;l=(i|0)<1;u=(a&8|0)==0;d=P;do{R=~~t;f=d+1|0;r[d>>0]=m|s[35600+R>>0];t=(t-+(R|0))*16.0;if((f-O|0)==1?!(u&(l&t==0.0)):0){r[f>>0]=46;d=d+2|0}else d=f}while(t!=0.0);if((i|0)!=0?(-2-O+d|0)<(i|0):0){l=C;u=p;f=i+2+l-u|0}else{l=C;u=p;f=l-O-u+d|0}C=f+g|0;ns(e,32,n,C,a);Wo(e,b,g);ns(e,48,n,C,a^65536);O=d-O|0;Wo(e,P,O);P=l-u|0;ns(e,48,f-(O+P)|0,0,0);Wo(e,p,P);ns(e,32,n,C,a^8192);f=C;break}l=(i|0)<0?6:i;if(f){f=(o[w>>2]|0)+-28|0;o[w>>2]=f;t=y*268435456.0}else{t=y;f=o[w>>2]|0}I=(f|0)<0?u:u+288|0;u=I;do{k=~~t>>>0;o[u>>2]=k;u=u+4|0;t=(t-+(k>>>0))*1.0e9}while(t!=0.0);k=I;if((f|0)>0){m=I;while(1){p=(f|0)<29?f:29;f=u+-4|0;if(f>>>0>=m>>>0){d=0;do{v=Os(o[f>>2]|0,0,p|0)|0;v=ks(v|0,T|0,d|0,0)|0;A=T;d=xs(v|0,A|0,1e9,0)|0;E=Es(d|0,T|0,1e9,0)|0;E=Ss(v|0,A|0,E|0,T|0)|0;o[f>>2]=E;f=f+-4|0}while(f>>>0>=m>>>0);if(d){E=m+-4|0;o[E>>2]=d;d=E}else d=m}else d=m;e:do{if(u>>>0>d>>>0){f=u;while(1){u=f+-4|0;if(o[u>>2]|0){u=f;break e}if(u>>>0>d>>>0)f=u;else break}}}while(0);f=(o[w>>2]|0)-p|0;o[w>>2]=f;if((f|0)>0)m=d;else break}}else d=I;if((f|0)<0){i=((l+25|0)/9|0)+1|0;v=(_|0)==102;do{b=0-f|0;b=(b|0)<9?b:9;if(d>>>0>>0){p=(1<>>b;g=0;f=d;do{E=o[f>>2]|0;o[f>>2]=(E>>>b)+g;g=q(E&p,m)|0;f=f+4|0}while(f>>>0>>0);d=(o[d>>2]|0)==0?d+4|0:d;if(g){o[u>>2]=g;u=u+4|0}}else d=(o[d>>2]|0)==0?d+4|0:d;f=v?I:d;u=(u-f>>2|0)>(i|0)?f+(i<<2)|0:u;f=(o[w>>2]|0)+b|0;o[w>>2]=f}while((f|0)<0);v=d}else v=d;if(v>>>0>>0){f=(k-v>>2)*9|0;p=o[v>>2]|0;if(p>>>0>=10){d=10;do{d=d*10|0;f=f+1|0}while(p>>>0>=d>>>0)}}else f=0;A=(_|0)==103;E=(l|0)!=0;d=l-((_|0)==102?0:f)+((E&A)<<31>>31)|0;if((d|0)<(((u-k>>2)*9|0)+-9|0)){w=d+9216|0;d=(w|0)/9|0;i=I+4+(d+-1024<<2)|0;d=w-(d*9|0)|0;if((d|0)<8){p=10;while(1){p=p*10|0;if((d|0)<7)d=d+1|0;else break}}else p=10;g=o[i>>2]|0;d=(g>>>0)/(p>>>0)|0;b=g-(q(d,p)|0)|0;m=(i+4|0)==(u|0);if(!(m&(b|0)==0)){y=(d&1|0)==0?9007199254740992.0:9007199254740994.0;w=p>>>1;t=b>>>0>>0?.5:m&(b|0)==(w|0)?1.0:1.5;if(R){w=(r[x>>0]|0)==45;t=w?-t:t;y=w?-y:y}d=g-b|0;o[i>>2]=d;if(y+t!=y){w=d+p|0;o[i>>2]=w;if(w>>>0>999999999){p=i;f=v;while(1){d=p+-4|0;o[p>>2]=0;if(d>>>0>>0){f=f+-4|0;o[f>>2]=0}w=(o[d>>2]|0)+1|0;o[d>>2]=w;if(w>>>0>999999999)p=d;else{p=f;break}}}else{d=i;p=v}f=(k-p>>2)*9|0;g=o[p>>2]|0;if(g>>>0>=10){m=10;do{m=m*10|0;f=f+1|0}while(g>>>0>=m>>>0)}}else{d=i;p=v}}else{d=i;p=v}w=d+4|0;u=u>>>0>w>>>0?w:u}else p=v;i=0-f|0;e:do{if(u>>>0>p>>>0)while(1){d=u+-4|0;if(o[d>>2]|0){w=u;_=1;break e}if(d>>>0>p>>>0)u=d;else{w=d;_=0;break}}else{w=u;_=0}}while(0);do{if(A){l=l+((E^1)&1)|0;if((l|0)>(f|0)&(f|0)>-5){m=c+-1|0;l=l+-1-f|0}else{m=c+-2|0;l=l+-1|0}if(!(a&8)){if(_?(S=o[w+-4>>2]|0,(S|0)!=0):0)if(!((S>>>0)%10|0)){d=0;u=10;do{u=u*10|0;d=d+1|0}while(!((S>>>0)%(u>>>0)|0|0))}else d=0;else d=9;u=((w-k>>2)*9|0)+-9|0;if((m|32|0)==102){c=u-d|0;c=(c|0)>0?c:0;l=(l|0)<(c|0)?l:c;break}else{c=u+f-d|0;c=(c|0)>0?c:0;l=(l|0)<(c|0)?l:c;break}}}else m=c}while(0);v=(l|0)!=0;g=v?1:a>>>3&1;b=(m|32|0)==102;if(b){A=0;f=(f|0)>0?f:0}else{u=(f|0)<0?i:f;u=$o(u,((u|0)<0)<<31>>31,C)|0;d=C;if((d-u|0)<2)do{u=u+-1|0;r[u>>0]=48}while((d-u|0)<2);r[u+-1>>0]=(f>>31&2)+43;f=u+-2|0;r[f>>0]=m;A=f;f=d-f|0}f=R+1+l+g+f|0;ns(e,32,n,f,a);Wo(e,x,R);ns(e,48,n,f,a^65536);if(b){g=p>>>0>I>>>0?I:p;b=P+9|0;p=b;m=P+8|0;d=g;do{u=$o(o[d>>2]|0,0,b)|0;if((d|0)==(g|0)){if((u|0)==(b|0)){r[m>>0]=48;u=m}}else if(u>>>0>P>>>0){Ds(P|0,48,u-O|0)|0;do{u=u+-1|0}while(u>>>0>P>>>0)}Wo(e,u,p-u|0);d=d+4|0}while(d>>>0<=I>>>0);if(!((a&8|0)==0&(v^1)))Wo(e,38493,1);if(d>>>0>>0&(l|0)>0)while(1){u=$o(o[d>>2]|0,0,b)|0;if(u>>>0>P>>>0){Ds(P|0,48,u-O|0)|0;do{u=u+-1|0}while(u>>>0>P>>>0)}Wo(e,u,(l|0)<9?l:9);d=d+4|0;u=l+-9|0;if(!(d>>>0>>0&(l|0)>9)){l=u;break}else l=u}ns(e,48,l+9|0,9,0)}else{w=_?w:p+4|0;if(p>>>0>>0&(l|0)>-1){i=P+9|0;v=(a&8|0)==0;_=i;g=0-O|0;b=P+8|0;m=p;do{u=$o(o[m>>2]|0,0,i)|0;if((u|0)==(i|0)){r[b>>0]=48;u=b}do{if((m|0)==(p|0)){d=u+1|0;Wo(e,u,1);if(v&(l|0)<1){u=d;break}Wo(e,38493,1);u=d}else{if(u>>>0<=P>>>0)break;Ds(P|0,48,u+g|0)|0;do{u=u+-1|0}while(u>>>0>P>>>0)}}while(0);O=_-u|0;Wo(e,u,(l|0)>(O|0)?O:l);l=l-O|0;m=m+4|0}while(m>>>0>>0&(l|0)>-1)}ns(e,48,l+18|0,18,0);Wo(e,A,C-A|0)}ns(e,32,n,f,a^8192)}}while(0);h=M;return((f|0)<(n|0)?n:f)|0}function os(e){e=+e;var t=0;l[d>>3]=e;t=o[d>>2]|0;T=o[d+4>>2]|0;return t|0}function ss(e,t){e=+e;t=t|0;return+ +as(e,t)}function as(e,t){e=+e;t=t|0;var n=0,r=0,i=0;l[d>>3]=e;n=o[d>>2]|0;r=o[d+4>>2]|0;i=Cs(n|0,r|0,52)|0;switch(i&2047){case 0:{if(e!=0.0){e=+as(e*18446744073709551616.0,t);n=(o[t>>2]|0)+-64|0}else n=0;o[t>>2]=n;break}case 2047:break;default:{o[t>>2]=(i&2047)+-1022;o[d>>2]=n;o[d+4>>2]=r&-2146435073|1071644672;e=+l[d>>3]}}return+e}function cs(e,t,n){e=e|0;t=t|0;n=n|0;do{if(e){if(t>>>0<128){r[e>>0]=t;e=1;break}if(!(o[o[(fs()|0)+188>>2]>>2]|0))if((t&-128|0)==57216){r[e>>0]=t;e=1;break}else{o[(Lo()|0)>>2]=84;e=-1;break}if(t>>>0<2048){r[e>>0]=t>>>6|192;r[e+1>>0]=t&63|128;e=2;break}if(t>>>0<55296|(t&-8192|0)==57344){r[e>>0]=t>>>12|224;r[e+1>>0]=t>>>6&63|128;r[e+2>>0]=t&63|128;e=3;break}if((t+-65536|0)>>>0<1048576){r[e>>0]=t>>>18|240;r[e+1>>0]=t>>>12&63|128;r[e+2>>0]=t>>>6&63|128;r[e+3>>0]=t&63|128;e=4;break}else{o[(Lo()|0)>>2]=84;e=-1;break}}else e=1}while(0);return e|0}function fs(){return ls()|0}function ls(){return 37728}function us(){return ls()|0}function ds(e,t){e=e|0;t=t|0;var n=0,i=0;n=0;while(1){if((s[35616+n>>0]|0)==(e|0)){i=4;break}n=n+1|0;if((n|0)==87){e=87;i=5;break}}if((i|0)==4)if(!n)n=35712;else{e=n;i=5}if((i|0)==5){n=35712;do{do{i=n;n=n+1|0}while((r[i>>0]|0)!=0);e=e+-1|0}while((e|0)!=0)}return hs(n,o[t+20>>2]|0)|0}function hs(e,t){e=e|0;t=t|0;return ps(e,t)|0}function ps(e,t){e=e|0;t=t|0;if(!t)t=0;else t=ms(o[t>>2]|0,o[t+4>>2]|0,e)|0;return((t|0)==0?e:t)|0}function ms(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0;p=(o[e>>2]|0)+1794895138|0;a=gs(o[e+8>>2]|0,p)|0;i=gs(o[e+12>>2]|0,p)|0;s=gs(o[e+16>>2]|0,p)|0;e:do{if((a>>>0>>2>>>0?(h=t-(a<<2)|0,i>>>0>>0&s>>>0>>0):0)?((s|i)&3|0)==0:0){h=i>>>2;d=s>>>2;u=0;while(1){f=a>>>1;l=u+f|0;c=l<<1;s=c+h|0;i=gs(o[e+(s<<2)>>2]|0,p)|0;s=gs(o[e+(s+1<<2)>>2]|0,p)|0;if(!(s>>>0>>0&i>>>0<(t-s|0)>>>0)){i=0;break e}if(r[e+(s+i)>>0]|0){i=0;break e}i=Fo(n,e+s|0)|0;if(!i)break;i=(i|0)<0;if((a|0)==1){i=0;break e}u=i?u:l;a=i?f:a-f|0}i=c+d|0;s=gs(o[e+(i<<2)>>2]|0,p)|0;i=gs(o[e+(i+1<<2)>>2]|0,p)|0;if(i>>>0>>0&s>>>0<(t-i|0)>>>0)i=(r[e+(i+s)>>0]|0)==0?e+i|0:0;else i=0}else i=0}while(0);return i|0}function gs(e,t){e=e|0;t=t|0;var n=0;n=Ps(e|0)|0;return((t|0)==0?e:n)|0}function ys(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0;i=n+16|0;s=o[i>>2]|0;if(!s)if(!(bs(n)|0)){s=o[i>>2]|0;a=5}else i=0;else a=5;e:do{if((a|0)==5){f=n+20|0;c=o[f>>2]|0;i=c;if((s-c|0)>>>0>>0){i=Vs[o[n+36>>2]&1](n,e,t)|0;break}t:do{if((r[n+75>>0]|0)<0|(t|0)==0){a=0;s=e}else{c=t;while(1){s=c+-1|0;if((r[e+s>>0]|0)==10)break;if(!s){a=0;s=e;break t}else c=s}i=Vs[o[n+36>>2]&1](n,e,c)|0;if(i>>>0>>0)break e;a=c;s=e+c|0;t=t-c|0;i=o[f>>2]|0}}while(0);Ms(i|0,s|0,t|0)|0;o[f>>2]=(o[f>>2]|0)+t;i=a+t|0}}while(0);return i|0}function bs(e){e=e|0;var t=0,n=0;t=e+74|0;n=r[t>>0]|0;r[t>>0]=n+255|n;t=o[e>>2]|0;if(!(t&8)){o[e+8>>2]=0;o[e+4>>2]=0;n=o[e+44>>2]|0;o[e+28>>2]=n;o[e+20>>2]=n;o[e+16>>2]=n+(o[e+48>>2]|0);e=0}else{o[e>>2]=t|32;e=-1}return e|0}function vs(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=e+20|0;i=o[r>>2]|0;e=(o[e+16>>2]|0)-i|0;e=e>>>0>n>>>0?n:e;Ms(i|0,t|0,e|0)|0;o[r>>2]=(o[r>>2]|0)+e;return n|0}function _s(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0;i=h;h=h+16|0;s=i;o[s>>2]=r;r=Ko(e,t,n,s)|0;h=i;return r|0}function ws(){}function As(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0;o=e&65535;i=t&65535;n=q(i,o)|0;r=e>>>16;e=(n>>>16)+(q(i,r)|0)|0;i=t>>>16;t=q(i,o)|0;return(T=(e>>>16)+(q(i,r)|0)+(((e&65535)+t|0)>>>16)|0,e+t<<16|n&65535|0)|0}function Es(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0;i=e;o=n;n=As(i,o)|0;e=T;return(T=(q(t,o)|0)+(q(r,i)|0)+e|e&0,n|0|0)|0}function ks(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;n=e+n>>>0;return(T=t+r+(n>>>0>>0|0)>>>0,n|0)|0}function Ss(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;r=t-r-(n>>>0>e>>>0|0)>>>0;return(T=r,e-n>>>0|0)|0}function Ts(e){e=e|0;return(e?31-(G(e^e-1)|0)|0:32)|0}function Is(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0;u=e;f=t;l=f;a=n;h=r;c=h;if(!l){s=(i|0)!=0;if(!c){if(s){o[i>>2]=(u>>>0)%(a>>>0);o[i+4>>2]=0}h=0;i=(u>>>0)/(a>>>0)>>>0;return(T=h,i)|0}else{if(!s){h=0;i=0;return(T=h,i)|0}o[i>>2]=e|0;o[i+4>>2]=t&0;h=0;i=0;return(T=h,i)|0}}s=(c|0)==0;do{if(a){if(!s){s=(G(c|0)|0)-(G(l|0)|0)|0;if(s>>>0<=31){d=s+1|0;c=31-s|0;t=s-31>>31;a=d;e=u>>>(d>>>0)&t|l<>>(d>>>0)&t;s=0;c=u<>2]=e|0;o[i+4>>2]=f|t&0;h=0;i=0;return(T=h,i)|0}s=a-1|0;if(s&a|0){c=(G(a|0)|0)+33-(G(l|0)|0)|0;m=64-c|0;d=32-c|0;f=d>>31;p=c-32|0;t=p>>31;a=c;e=d-1>>31&l>>>(p>>>0)|(l<>>(c>>>0))&t;t=t&l>>>(c>>>0);s=u<>>(p>>>0))&f|u<>31;break}if(i|0){o[i>>2]=s&u;o[i+4>>2]=0}if((a|0)==1){p=f|t&0;m=e|0|0;return(T=p,m)|0}else{m=Ts(a|0)|0;p=l>>>(m>>>0)|0;m=l<<32-m|u>>>(m>>>0)|0;return(T=p,m)|0}}else{if(s){if(i|0){o[i>>2]=(l>>>0)%(a>>>0);o[i+4>>2]=0}p=0;m=(l>>>0)/(a>>>0)>>>0;return(T=p,m)|0}if(!u){if(i|0){o[i>>2]=0;o[i+4>>2]=(l>>>0)%(c>>>0)}p=0;m=(l>>>0)/(c>>>0)>>>0;return(T=p,m)|0}s=c-1|0;if(!(s&c)){if(i|0){o[i>>2]=e|0;o[i+4>>2]=s&l|t&0}p=0;m=l>>>((Ts(c|0)|0)>>>0);return(T=p,m)|0}s=(G(c|0)|0)-(G(l|0)|0)|0;if(s>>>0<=30){t=s+1|0;c=31-s|0;a=t;e=l<>>(t>>>0);t=l>>>(t>>>0);s=0;c=u<>2]=e|0;o[i+4>>2]=f|t&0;p=0;m=0;return(T=p,m)|0}}while(0);if(!a){l=c;f=0;c=0}else{d=n|0|0;u=h|r&0;l=ks(d|0,u|0,-1,-1)|0;n=T;f=c;c=0;do{r=f;f=s>>>31|f<<1;s=c|s<<1;r=e<<1|r>>>31|0;h=e>>>31|t<<1|0;Ss(l|0,n|0,r|0,h|0)|0;m=T;p=m>>31|((m|0)<0?-1:0)<<1;c=p&1;e=Ss(r|0,h|0,p&d|0,(((m|0)<0?-1:0)>>31|((m|0)<0?-1:0)<<1)&u|0)|0;t=T;a=a-1|0}while((a|0)!=0);l=f;f=0}a=0;if(i|0){o[i>>2]=e;o[i+4>>2]=t}p=(s|0)>>>31|(l|a)<<1|(a<<1|s>>>31)&0|f;m=(s<<1|0>>>31)&-2|c;return(T=p,m)|0}function xs(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return Is(e,t,n,r,0)|0}function Rs(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){T=t>>n;return e>>>n|(t&(1<>n-32|0}function Cs(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){T=t>>>n;return e>>>n|(t&(1<>>n-32|0}function Os(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){T=t<>>32-n;return e<>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function Ms(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0;if((n|0)>=8192)return te(e|0,t|0,n|0)|0;a=e|0;s=e+n|0;if((e&3)==(t&3)){while(e&3){if(!n)return a|0;r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0;n=n-1|0}n=s&-4|0;i=n-64|0;while((e|0)<=(i|0)){o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=o[t+8>>2];o[e+12>>2]=o[t+12>>2];o[e+16>>2]=o[t+16>>2];o[e+20>>2]=o[t+20>>2];o[e+24>>2]=o[t+24>>2];o[e+28>>2]=o[t+28>>2];o[e+32>>2]=o[t+32>>2];o[e+36>>2]=o[t+36>>2];o[e+40>>2]=o[t+40>>2];o[e+44>>2]=o[t+44>>2];o[e+48>>2]=o[t+48>>2];o[e+52>>2]=o[t+52>>2];o[e+56>>2]=o[t+56>>2];o[e+60>>2]=o[t+60>>2];e=e+64|0;t=t+64|0}while((e|0)<(n|0)){o[e>>2]=o[t>>2];e=e+4|0;t=t+4|0}}else{n=s-4|0;while((e|0)<(n|0)){r[e>>0]=r[t>>0]|0;r[e+1>>0]=r[t+1>>0]|0;r[e+2>>0]=r[t+2>>0]|0;r[e+3>>0]=r[t+3>>0]|0;e=e+4|0;t=t+4|0}}while((e|0)<(s|0)){r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0}return a|0}function Ds(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0;a=e+n|0;t=t&255;if((n|0)>=67){while(e&3){r[e>>0]=t;e=e+1|0}i=a&-4|0;s=i-64|0;c=t|t<<8|t<<16|t<<24;while((e|0)<=(s|0)){o[e>>2]=c;o[e+4>>2]=c;o[e+8>>2]=c;o[e+12>>2]=c;o[e+16>>2]=c;o[e+20>>2]=c;o[e+24>>2]=c;o[e+28>>2]=c;o[e+32>>2]=c;o[e+36>>2]=c;o[e+40>>2]=c;o[e+44>>2]=c;o[e+48>>2]=c;o[e+52>>2]=c;o[e+56>>2]=c;o[e+60>>2]=c;e=e+64|0}while((e|0)<(i|0)){o[e>>2]=c;e=e+4|0}}while((e|0)<(a|0)){r[e>>0]=t;e=e+1|0}return a-n|0}function Ns(e){e=e|0;var t=0,n=0;n=o[u>>2]|0;t=n+e|0;if((e|0)>0&(t|0)<(n|0)|(t|0)<0){Y()|0;ee(12);return-1}o[u>>2]=t;if((t|0)>(W()|0)?(Q()|0)==0:0){o[u>>2]=n;ee(12);return-1}return n|0}function Bs(e,t){e=e|0;t=t|0;return Gs[e&1](t|0)|0}function js(e,t,n){e=e|0;t=t|0;n=n|0;return Hs[e&3](t|0,n|0)|0}function Us(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return Vs[e&1](t|0,n|0,r|0)|0}function Ls(e,t,n,r,i,o,s,a,c,f){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;s=s|0;a=a|0;c=c|0;f=f|0;return Qs[e&3](t|0,n|0,r|0,i|0,o|0,s|0,a|0,c|0,f|0)|0}function Fs(e){e=e|0;H(0);return 0}function qs(e,t){e=e|0;t=t|0;H(1);return 0}function zs(e,t,n){e=e|0;t=t|0;n=n|0;H(2);return 0}function Ks(e,t,n,r,i,o,s,a,c){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;s=s|0;a=a|0;c=c|0;H(3);return 0}var Gs=[Fs,an];var Hs=[qs,cn,ln,qs];var Vs=[zs,vs];var Qs=[Ks,fn,un,Ks];return{___muldi3:Es,___udivdi3:xs,_bitshift64Ashr:Rs,_bitshift64Lshr:Cs,_bitshift64Shl:Os,_free:Uo,_i64Add:ks,_i64Subtract:Ss,_llvm_bswap_i32:Ps,_malloc:jo,_memcpy:Ms,_memset:Ds,_olm_account:Bn,_olm_account_generate_one_time_keys:or,_olm_account_generate_one_time_keys_random_length:ir,_olm_account_identity_keys:Jn,_olm_account_identity_keys_length:Xn,_olm_account_last_error:Cn,_olm_account_mark_keys_as_published:nr,_olm_account_max_number_of_one_time_keys:rr,_olm_account_one_time_keys:tr,_olm_account_one_time_keys_length:er,_olm_account_sign:$n,_olm_account_signature_length:Zn,_olm_account_size:Mn,_olm_clear_account:Ln,_olm_clear_inbound_group_session:Pi,_olm_clear_outbound_group_session:co,_olm_clear_pk_decryption:Ft,_olm_clear_pk_encryption:Ct,_olm_clear_pk_signing:en,_olm_clear_sas:Xi,_olm_clear_session:Fn,_olm_clear_utility:qn,_olm_create_account:Yn,_olm_create_account_random_length:Wn,_olm_create_inbound_session:cr,_olm_create_inbound_session_from:fr,_olm_create_outbound_session:ar,_olm_create_outbound_session_random_length:sr,_olm_create_sas:Zi,_olm_create_sas_random_length:Ji,_olm_decrypt:Ar,_olm_decrypt_max_plaintext_length:wr,_olm_ed25519_verify:Sr,_olm_encrypt:_r,_olm_encrypt_message_length:vr,_olm_encrypt_message_type:yr,_olm_encrypt_random_length:br,_olm_error:Rn,_olm_export_inbound_group_session:Vi,_olm_export_inbound_group_session_length:Hi,_olm_get_library_version:xn,_olm_group_decrypt:Fi,_olm_group_decrypt_max_plaintext_length:Li,_olm_group_encrypt:yo,_olm_group_encrypt_message_length:go,_olm_import_inbound_group_session:Ni,_olm_inbound_group_session:Oi,_olm_inbound_group_session_first_known_index:Ki,_olm_inbound_group_session_id:zi,_olm_inbound_group_session_id_length:qi,_olm_inbound_group_session_is_verified:Gi,_olm_inbound_group_session_last_error:Mi,_olm_inbound_group_session_size:Ci,_olm_init_inbound_group_session:Di,_olm_init_outbound_group_session:mo,_olm_init_outbound_group_session_random_length:po,_olm_matches_inbound_session:pr,_olm_matches_inbound_session_from:mr,_olm_outbound_group_session:ao,_olm_outbound_group_session_id:vo,_olm_outbound_group_session_id_length:bo,_olm_outbound_group_session_key:Ao,_olm_outbound_group_session_key_length:wo,_olm_outbound_group_session_last_error:fo,_olm_outbound_group_session_message_index:_o,_olm_outbound_group_session_size:so,_olm_pickle_account:Gn,_olm_pickle_account_length:zn,_olm_pickle_inbound_group_session:ji,_olm_pickle_inbound_group_session_length:Bi,_olm_pickle_outbound_group_session:uo,_olm_pickle_outbound_group_session_length:lo,_olm_pickle_pk_decryption:Vt,_olm_pickle_pk_decryption_length:Ht,_olm_pickle_session:Hn,_olm_pickle_session_length:Kn,_olm_pk_ciphertext_length:Mt,_olm_pk_decrypt:Yt,_olm_pk_decryption:Lt,_olm_pk_decryption_last_error:jt,_olm_pk_decryption_size:Ut,_olm_pk_encrypt:Bt,_olm_pk_encrypt_random_length:Nt,_olm_pk_encryption:Rt,_olm_pk_encryption_last_error:It,_olm_pk_encryption_set_recipient_key:Ot,_olm_pk_encryption_size:xt,_olm_pk_generate_key:Gt,_olm_pk_generate_key_random_length:zt,_olm_pk_get_private_key:Xt,_olm_pk_key_from_private:Kt,_olm_pk_key_length:Pt,_olm_pk_mac_length:Dt,_olm_pk_max_plaintext_length:Wt,_olm_pk_private_key_length:qt,_olm_pk_sign:sn,_olm_pk_signature_length:on,_olm_pk_signing:Zt,_olm_pk_signing_key_from_seed:rn,_olm_pk_signing_last_error:$t,_olm_pk_signing_public_key_length:nn,_olm_pk_signing_seed_length:tn,_olm_pk_signing_size:Jt,_olm_remove_one_time_keys:gr,_olm_sas:Yi,_olm_sas_calculate_mac:io,_olm_sas_calculate_mac_long_kdf:oo,_olm_sas_generate_bytes:no,_olm_sas_get_pubkey:eo,_olm_sas_last_error:Qi,_olm_sas_mac_length:ro,_olm_sas_pubkey_length:$i,_olm_sas_set_their_key:to,_olm_sas_size:Wi,_olm_session:jn,_olm_session_describe:hr,_olm_session_has_received_message:dr,_olm_session_id:ur,_olm_session_id_length:lr,_olm_session_last_error:On,_olm_session_size:Dn,_olm_sha256:kr,_olm_sha256_length:Er,_olm_unpickle_account:Vn,_olm_unpickle_inbound_group_session:Ui,_olm_unpickle_outbound_group_session:ho,_olm_unpickle_pk_decryption:Qt,_olm_unpickle_session:Qn,_olm_utility:Un,_olm_utility_last_error:Pn,_olm_utility_size:Nn,_sbrk:Ns,dynCall_ii:Bs,dynCall_iii:js,dynCall_iiii:Us,dynCall_iiiiiiiiii:Ls,establishStackSpace:se,getTempRet0:fe,runPostSets:ws,setTempRet0:ce,setThrew:ae,stackAlloc:re,stackRestore:oe,stackSave:ie}}(u.f,u.g,D);u.___muldi3=Ee.___muldi3,u.___udivdi3=Ee.___udivdi3,u._bitshift64Ashr=Ee._bitshift64Ashr,u._bitshift64Lshr=Ee._bitshift64Lshr,u._bitshift64Shl=Ee._bitshift64Shl,u._free=Ee._free,u._i64Add=Ee._i64Add,u._i64Subtract=Ee._i64Subtract,u._llvm_bswap_i32=Ee._llvm_bswap_i32;var ke=u._malloc=Ee._malloc;u._memcpy=Ee._memcpy,u._memset=Ee._memset,u._olm_account=Ee._olm_account,u._olm_account_generate_one_time_keys=Ee._olm_account_generate_one_time_keys,u._olm_account_generate_one_time_keys_random_length=Ee._olm_account_generate_one_time_keys_random_length,u._olm_account_identity_keys=Ee._olm_account_identity_keys,u._olm_account_identity_keys_length=Ee._olm_account_identity_keys_length,u._olm_account_last_error=Ee._olm_account_last_error,u._olm_account_mark_keys_as_published=Ee._olm_account_mark_keys_as_published,u._olm_account_max_number_of_one_time_keys=Ee._olm_account_max_number_of_one_time_keys,u._olm_account_one_time_keys=Ee._olm_account_one_time_keys,u._olm_account_one_time_keys_length=Ee._olm_account_one_time_keys_length,u._olm_account_sign=Ee._olm_account_sign,u._olm_account_signature_length=Ee._olm_account_signature_length,u._olm_account_size=Ee._olm_account_size,u._olm_clear_account=Ee._olm_clear_account,u._olm_clear_inbound_group_session=Ee._olm_clear_inbound_group_session,u._olm_clear_outbound_group_session=Ee._olm_clear_outbound_group_session,u._olm_clear_pk_decryption=Ee._olm_clear_pk_decryption,u._olm_clear_pk_encryption=Ee._olm_clear_pk_encryption,u._olm_clear_pk_signing=Ee._olm_clear_pk_signing,u._olm_clear_sas=Ee._olm_clear_sas,u._olm_clear_session=Ee._olm_clear_session,u._olm_clear_utility=Ee._olm_clear_utility,u._olm_create_account=Ee._olm_create_account,u._olm_create_account_random_length=Ee._olm_create_account_random_length,u._olm_create_inbound_session=Ee._olm_create_inbound_session,u._olm_create_inbound_session_from=Ee._olm_create_inbound_session_from,u._olm_create_outbound_session=Ee._olm_create_outbound_session,u._olm_create_outbound_session_random_length=Ee._olm_create_outbound_session_random_length,u._olm_create_sas=Ee._olm_create_sas,u._olm_create_sas_random_length=Ee._olm_create_sas_random_length,u._olm_decrypt=Ee._olm_decrypt,u._olm_decrypt_max_plaintext_length=Ee._olm_decrypt_max_plaintext_length,u._olm_ed25519_verify=Ee._olm_ed25519_verify,u._olm_encrypt=Ee._olm_encrypt,u._olm_encrypt_message_length=Ee._olm_encrypt_message_length,u._olm_encrypt_message_type=Ee._olm_encrypt_message_type,u._olm_encrypt_random_length=Ee._olm_encrypt_random_length,u._olm_error=Ee._olm_error,u._olm_export_inbound_group_session=Ee._olm_export_inbound_group_session,u._olm_export_inbound_group_session_length=Ee._olm_export_inbound_group_session_length,u._olm_get_library_version=Ee._olm_get_library_version,u._olm_group_decrypt=Ee._olm_group_decrypt,u._olm_group_decrypt_max_plaintext_length=Ee._olm_group_decrypt_max_plaintext_length,u._olm_group_encrypt=Ee._olm_group_encrypt,u._olm_group_encrypt_message_length=Ee._olm_group_encrypt_message_length,u._olm_import_inbound_group_session=Ee._olm_import_inbound_group_session,u._olm_inbound_group_session=Ee._olm_inbound_group_session,u._olm_inbound_group_session_first_known_index=Ee._olm_inbound_group_session_first_known_index,u._olm_inbound_group_session_id=Ee._olm_inbound_group_session_id,u._olm_inbound_group_session_id_length=Ee._olm_inbound_group_session_id_length,u._olm_inbound_group_session_is_verified=Ee._olm_inbound_group_session_is_verified,u._olm_inbound_group_session_last_error=Ee._olm_inbound_group_session_last_error,u._olm_inbound_group_session_size=Ee._olm_inbound_group_session_size,u._olm_init_inbound_group_session=Ee._olm_init_inbound_group_session,u._olm_init_outbound_group_session=Ee._olm_init_outbound_group_session,u._olm_init_outbound_group_session_random_length=Ee._olm_init_outbound_group_session_random_length,u._olm_matches_inbound_session=Ee._olm_matches_inbound_session,u._olm_matches_inbound_session_from=Ee._olm_matches_inbound_session_from,u._olm_outbound_group_session=Ee._olm_outbound_group_session,u._olm_outbound_group_session_id=Ee._olm_outbound_group_session_id,u._olm_outbound_group_session_id_length=Ee._olm_outbound_group_session_id_length,u._olm_outbound_group_session_key=Ee._olm_outbound_group_session_key,u._olm_outbound_group_session_key_length=Ee._olm_outbound_group_session_key_length,u._olm_outbound_group_session_last_error=Ee._olm_outbound_group_session_last_error,u._olm_outbound_group_session_message_index=Ee._olm_outbound_group_session_message_index,u._olm_outbound_group_session_size=Ee._olm_outbound_group_session_size,u._olm_pickle_account=Ee._olm_pickle_account,u._olm_pickle_account_length=Ee._olm_pickle_account_length,u._olm_pickle_inbound_group_session=Ee._olm_pickle_inbound_group_session,u._olm_pickle_inbound_group_session_length=Ee._olm_pickle_inbound_group_session_length,u._olm_pickle_outbound_group_session=Ee._olm_pickle_outbound_group_session,u._olm_pickle_outbound_group_session_length=Ee._olm_pickle_outbound_group_session_length,u._olm_pickle_pk_decryption=Ee._olm_pickle_pk_decryption,u._olm_pickle_pk_decryption_length=Ee._olm_pickle_pk_decryption_length,u._olm_pickle_session=Ee._olm_pickle_session,u._olm_pickle_session_length=Ee._olm_pickle_session_length,u._olm_pk_ciphertext_length=Ee._olm_pk_ciphertext_length,u._olm_pk_decrypt=Ee._olm_pk_decrypt,u._olm_pk_decryption=Ee._olm_pk_decryption,u._olm_pk_decryption_last_error=Ee._olm_pk_decryption_last_error,u._olm_pk_decryption_size=Ee._olm_pk_decryption_size,u._olm_pk_encrypt=Ee._olm_pk_encrypt,u._olm_pk_encrypt_random_length=Ee._olm_pk_encrypt_random_length,u._olm_pk_encryption=Ee._olm_pk_encryption,u._olm_pk_encryption_last_error=Ee._olm_pk_encryption_last_error,u._olm_pk_encryption_set_recipient_key=Ee._olm_pk_encryption_set_recipient_key,u._olm_pk_encryption_size=Ee._olm_pk_encryption_size,u._olm_pk_generate_key=Ee._olm_pk_generate_key,u._olm_pk_generate_key_random_length=Ee._olm_pk_generate_key_random_length,u._olm_pk_get_private_key=Ee._olm_pk_get_private_key,u._olm_pk_key_from_private=Ee._olm_pk_key_from_private,u._olm_pk_key_length=Ee._olm_pk_key_length,u._olm_pk_mac_length=Ee._olm_pk_mac_length,u._olm_pk_max_plaintext_length=Ee._olm_pk_max_plaintext_length,u._olm_pk_private_key_length=Ee._olm_pk_private_key_length,u._olm_pk_sign=Ee._olm_pk_sign,u._olm_pk_signature_length=Ee._olm_pk_signature_length,u._olm_pk_signing=Ee._olm_pk_signing,u._olm_pk_signing_key_from_seed=Ee._olm_pk_signing_key_from_seed,u._olm_pk_signing_last_error=Ee._olm_pk_signing_last_error,u._olm_pk_signing_public_key_length=Ee._olm_pk_signing_public_key_length,u._olm_pk_signing_seed_length=Ee._olm_pk_signing_seed_length,u._olm_pk_signing_size=Ee._olm_pk_signing_size,u._olm_remove_one_time_keys=Ee._olm_remove_one_time_keys,u._olm_sas=Ee._olm_sas,u._olm_sas_calculate_mac=Ee._olm_sas_calculate_mac,u._olm_sas_calculate_mac_long_kdf=Ee._olm_sas_calculate_mac_long_kdf,u._olm_sas_generate_bytes=Ee._olm_sas_generate_bytes,u._olm_sas_get_pubkey=Ee._olm_sas_get_pubkey,u._olm_sas_last_error=Ee._olm_sas_last_error,u._olm_sas_mac_length=Ee._olm_sas_mac_length,u._olm_sas_pubkey_length=Ee._olm_sas_pubkey_length,u._olm_sas_set_their_key=Ee._olm_sas_set_their_key,u._olm_sas_size=Ee._olm_sas_size,u._olm_session=Ee._olm_session,u._olm_session_describe=Ee._olm_session_describe,u._olm_session_has_received_message=Ee._olm_session_has_received_message,u._olm_session_id=Ee._olm_session_id,u._olm_session_id_length=Ee._olm_session_id_length,u._olm_session_last_error=Ee._olm_session_last_error,u._olm_session_size=Ee._olm_session_size,u._olm_sha256=Ee._olm_sha256,u._olm_sha256_length=Ee._olm_sha256_length,u._olm_unpickle_account=Ee._olm_unpickle_account,u._olm_unpickle_inbound_group_session=Ee._olm_unpickle_inbound_group_session,u._olm_unpickle_outbound_group_session=Ee._olm_unpickle_outbound_group_session,u._olm_unpickle_pk_decryption=Ee._olm_unpickle_pk_decryption,u._olm_unpickle_session=Ee._olm_unpickle_session,u._olm_utility=Ee._olm_utility,u._olm_utility_last_error=Ee._olm_utility_last_error,u._olm_utility_size=Ee._olm_utility_size,u._sbrk=Ee._sbrk,u.establishStackSpace=Ee.establishStackSpace,u.getTempRet0=Ee.getTempRet0,u.runPostSets=Ee.runPostSets,u.setTempRet0=Ee.setTempRet0,u.setThrew=Ee.setThrew;var Se=u.stackAlloc=Ee.stackAlloc,Te=u.stackRestore=Ee.stackRestore,Ie=u.stackSave=Ee.stackSave;if(u.dynCall_ii=Ee.dynCall_ii,u.dynCall_iii=Ee.dynCall_iii,u.dynCall_iiii=Ee.dynCall_iiii,u.dynCall_iiiiiiiiii=Ee.dynCall_iiiiiiiiii,u.asm=Ee,u.ALLOC_STACK=1,me){if(String.prototype.startsWith?!me.startsWith(ge):0!==me.indexOf(ge)){var xe=me;me=u.locateFile?u.locateFile(xe,E):E+xe}if(v||_){var Re=u.readBinary(me);B.set(Re,8)}else{var Ce=function(){u.readAsync(me,Oe,(function(){throw"could not load memory initializer "+me}))};de++,u.monitorRunDependencies&&u.monitorRunDependencies(de);var Oe=function(e){e.byteLength&&(e=new Uint8Array(e)),B.set(e,8),u.memoryInitializerRequest&&delete u.memoryInitializerRequest.response,de--,u.monitorRunDependencies&&u.monitorRunDependencies(de),0==de&&(null!==he&&(clearInterval(he),he=null),pe&&(e=pe,pe=null,e()))},Pe=Ae(me);if(Pe)Oe(Pe.buffer);else if(u.memoryInitializerRequest){var Me=function(){var e=u.memoryInitializerRequest,t=e.response;if(200!==e.status&&0!==e.status){if(!(t=Ae(u.memoryInitializerRequestURL)))return console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+e.status+", retrying "+me),void Ce();t=t.buffer}Oe(t)};u.memoryInitializerRequest.response?setTimeout(Me,0):u.memoryInitializerRequest.addEventListener("load",Me)}else Ce()}}function De(){function e(){if(!u.calledRun&&(u.calledRun=!0,!R)){if(oe||(oe=!0,ee(ne)),ee(re),u.onRuntimeInitialized&&u.onRuntimeInitialized(),u.postRun)for("function"==typeof u.postRun&&(u.postRun=[u.postRun]);u.postRun.length;){var e=u.postRun.shift();ie.unshift(e)}ee(ie)}}if(!(0=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,i=!1,o=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==a.return||a.return()}finally{if(i)throw o}}return n}}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}},function(e,t,n){"use strict";var r=n(18);function i(){}function o(){}o.resetWarningCache=i,e.exports=function(){function e(e,t,n,i,o,s){if(s!==r){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:i};return n.PropTypes=n,n}},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}},function(e,t){e.exports=function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t3&&void 0!==arguments[3]?arguments[3]:{};return Object.assign({unified:e,emoji:e.split("-").map((function(e){return parseInt(e,16)})).map((function(e){return String.fromCodePoint(e)})).join(""),originalUnified:t[u.EMOJI_PROPERTY_UNIFIED],names:t[u.EMOJI_PROPERTY_NAME],activeSkinTone:n},r)},D=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Function.prototype;return function(t,n,r,i){var o=M(n,r,i);return P(o),e(t,o)}},N=n(8),B=(n(23),function(){var e=Object(a.useContext)(g),t=e.state,n=t.skinTonesSpread,r=t.activeSkinTone,i=e.dispatch,o=function(){i({type:v,spread:!n})},s=function(e){var t=e.target.value;i({type:_,skinTone:t})};return c.a.createElement("ul",{className:"skin-tones-list"},N.map((function(e,t){var i=e===r;return c.a.createElement("li",{key:e,className:"t".concat(e),style:{transform:"translateX(-".concat(n?20*t:0,"px) scale(").concat(i?"1.5":1,")"),zIndex:i?2:1}},c.a.createElement("input",{type:"radio",onChange:s,name:"skin-tone",value:e,id:"tone_".concat(e)}),c.a.createElement("label",{htmlFor:"tone_".concat(e),"data-name":"tones",onClick:o}))})))}),j=n(9),U=n.n(j),L=function(e){var t=Object(a.useContext)(g).state.emojiUrl;return e?"".concat(t,"/").concat(e,".png"):t},F=(n(25),function(e){var t=e.unified,n=e.dispatch,r=e.shouldLoad,i=void 0===r||r;return c.a.createElement("img",U()({className:"emoji-img",onError:function(){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Function.prototype;t({type:A,unified:e})}(t,n)}},i&&function(e){return{src:L(e)}}(t)))}),q=F;F.propTypes={unified:l.a.string,shouldLoad:l.a.bool,dispatch:l.a.func},n(27);var z=function(e){var t=e.closeVariations,n=Object(a.useContext)(g).state,r=n.variationMenu,i=n.activeSkinTone,o=n.onEmojiClick;return r?c.a.createElement("div",{className:"variations-wrapper"},c.a.createElement("ul",{className:"variation-list"},N.map((function(e){var n=r[u.EMOJI_PROPERTY_SKIN_VARIATIONS].find((function(t){return t.includes(e)}))||r[u.EMOJI_PROPERTY_UNIFIED];return c.a.createElement("li",{key:n},c.a.createElement("button",{onClick:function(e){return t(e),o(e,n,r,i)},onMouseDown:function(e){return e.stopPropagation()}},c.a.createElement(q,{unified:n})))})))):null},K=z;z.propTypes={closeVariations:l.a.func};var G=n(7),H=n.n(G),V=n(10),Q=(n(29),function(e){var t=e.emojiListRef,n=Object(a.useContext)(g),r=n.state,i=r.activeCategory,o=r.filter,s=n.dispatch,f=!1;return o&&o.length&&(f=!0),c.a.createElement("nav",{onClick:function(e){var n=e.target;if(!f){var r=n.getAttribute("data-name");if(t&&t.current&&r){s({type:y,activeCategory:r}),s({type:w,group:r});var i=t.current,o=i.querySelector("[".concat("data-name",'="').concat(r,'"]'));i.scrollTop=o.offsetTop}}},className:H()("emoji-categories",{inactive:f})},V.map((function(e){return c.a.createElement("button",{key:e,className:H()("icn-".concat(e.replace(" & ","_")),{active:i===e}),"data-name":e})})))}),W=Q;Q.propTypes={emojiListRef:l.a.shape({current:l.a.instanceOf(Element)})};var Y,X,J=n(11),Z=function(e){var t={groups:{},emojis:{}},n=function(n){e[n].reduce((function(e,t){var r=t[u.EMOJI_PROPERTY_UNIFIED];return t[u.EMOJI_PROPERTY_GROUP]=n,e.emojis[r]=t,e.groups[n]=e.groups[n]||[],e.groups[n].push(r),e}),t)};for(var r in e)n(r);return t}(J),$=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0,n=".content-wrapper",r=t&&t.current?t.current.closest("".concat(n)):document.querySelector(".emoji-picker-react ".concat(n));r.setAttribute("data-name",e)},ee=l.a.shape((X={},i()(X,u.EMOJI_PROPERTY_NAME,l.a.arrayOf(l.a.string)),i()(X,u.EMOJI_PROPERTY_UNIFIED,l.a.string),i()(X,u.EMOJI_PROPERTY_SKIN_VARIATIONS,l.a.arrayOf(l.a.string)),i()(X,u.EMOJI_PROPERTY_GROUP,l.a.string),X));function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}n(40);var ne=["#aeeff0","#ffe0e0","#d6f8b8","#c6cfff","#f1f0d1"],re=null,ie=function(){return clearTimeout(re)},oe=function(e){var t,n,r=e.emoji,o=e.shouldLoad,s=e.hidden,a=e.activeSkinTone,f=e.openVariationMenu,l=e.variationMenuOpen,d=e.handleMouseEnter,h=e.handleMouseLeave,p=e.onEmojiClick,m=e.index,g=e.dispatch,y=r[u.EMOJI_PROPERTY_SKIN_VARIATIONS],b=function(e){for(var t=1;t=0}))),t||(t=r[u.EMOJI_PROPERTY_UNIFIED]),c.a.createElement("li",{style:b,className:H()("emoji",{"has-skin-variation":y&&f})},c.a.createElement("button",{onMouseDown:function(){y&&f&&(re=setTimeout((function(){f(r)}),500))},onMouseEnter:d,onMouseLeave:h,onMouseUp:ie,onClick:function(e){l||p(e,t,r,a)}},c.a.createElement(q,{unified:t,shouldLoad:o,dispatch:g})))},se=oe;oe.propTypes={emoji:ee,shouldLoad:l.a.bool,hidden:l.a.bool,activeSkinTone:l.a.string,openVariationMenu:l.a.func,variationMenuOpen:l.a.bool,handleMouseEnter:l.a.func,handleMouseLeave:l.a.func,onEmojiClick:l.a.func,index:l.a.number,dispatch:l.a.func};var ae=function(e){var t=e.unsetEmojiName,n=e.emojiListRef,r=Object(a.useContext)(g),i=r.state,o=i.recentlyUsed,s=i.onEmojiClick,f=i.filterResult,l=i.failedToLoad,d=void 0===l?{}:l,h=r.dispatch;return!o.length||f?null:c.a.createElement("ul",{className:"emoji-group","data-name":u.GROUP_NAME_RECENTLY_USED},o.map((function(e,r){var i=e[u.EMOJI_PROPERTY_UNIFIED],o=Z.emojis[i];return d[i]||!o?null:c.a.createElement(se,U()({key:r,emoji:o},e[u.EMOJI_PROPERTY_SKIN_VARIATIONS]&&{activeSkinTone:e[u.EMOJI_PROPERTY_SKIN_VARIATIONS]},{index:r,handleMouseLeave:t,onEmojiClick:s,handleMouseEnter:function(){return $(o[u.EMOJI_PROPERTY_NAME][0],n)},dispatch:h,shouldLoad:!0}))})))},ce=ae;function fe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}ae.propTypes={unsetEmojiName:l.a.func,emojiListRef:l.a.shape({current:l.a.instanceOf(Element)})},n(42);var le=function(e){var t=e.emojiListRef,n=Object(a.useContext)(g).state.filterResult;(function(e){var t=Object(a.useContext)(g),n=t.state,r=n.filterResult,i=n.activeCategory,o=t.dispatch;Object(a.useEffect)((function(){void 0!==I.IntersectionObserver&&!Y&&e.current&&(Y=new IntersectionObserver((function(e){e.forEach((function(e){var t=e.target,n=t.getAttribute("data-name");if(0===e.intersectionRatio){if(n===i)o({type:y,activeCategory:null});else if(n===u.GROUP_NAME_RECENTLY_USED){var r=t.nextSibling;if(r){var s=r.getAttribute("data-name");o({type:y,activeCategory:s})}}}else i||(o({type:w,group:n}),o({type:y,activeCategory:n}))}))}),{root:e.current.parentElement})),Y.disconnect(),e&&e.current&&T()(e.current.querySelectorAll(".emoji-group")).forEach((function(e){Y.observe(e)}))}),[e.current,r])})(t),function(e,t){var n=Object(a.useRef)();Object(a.useEffect)((function(){t&&t.current&&(t.current.scrollTop=0),n.current=e}),[e]),n.current}(n,t);var r=function(){return $("",t)};return c.a.createElement("section",{className:"emoji-scroll-wrapper",ref:t},c.a.createElement(ce,{unsetEmojiName:r,emojiListRef:t}),V.map((function(e){var n=function(e,t){var n=t.unsetEmojiName,r=t.emojiListRef,i=Object(a.useContext)(g),o=i.state,s=o.activeSkinTone,f=o.filterResult,l=o.seenGroups,d=void 0===l?{}:l,h=o.onEmojiClick,p=o.variationMenu,m=o.failedToLoad,y=void 0===m?null:m,v=o.preload,_=i.dispatch,w=v||!(!d[e]&&!f&&"function"==typeof I.IntersectionObserver),A=!!p,E=function(e){return _({type:b,emoji:e})};return Object(a.useMemo)((function(){var t=f?Object.keys(f[e]||{}):Z.groups[e];return t.reduce((function(e,i,o){if(y&&y[i])return e;var a=Z.emojis[i],f=!t.length;return e.shown||f||(e.shown=!0),e.list.push(c.a.createElement(se,{emoji:a,dispatch:_,openVariationMenu:E,activeSkinTone:s,handleMouseLeave:n,variationMenuOpen:A,handleMouseEnter:function(){return $(a[u.EMOJI_PROPERTY_NAME][0],r)},hidden:f,shouldLoad:w,onEmojiClick:h,index:o,key:a[u.EMOJI_PROPERTY_UNIFIED]})),e}),{list:[],shown:!1})}),[s,f,e,w,A,y])}(e,{unsetEmojiName:r,emojiListRef:t}),o=n.list,s=function(e){for(var t=1;t3&&void 0!==arguments[3]?arguments[3]:100,i=n;return new Promise((function(n){var o=0;!function s(){for(var a=o;ao.value.length&&i.includes(o.value))t=[].concat(T()(n),[{value:i,terms:o.terms.filter((function(e){return e.includes(i)}))}]);else if(o&&i.length0;a--)if(i.includes(n[a-1].value)){s=a;break}n.length=s,t=T()(n)}else 0!==n.length&&i.includes(o.value)||(t=[{value:i,terms:he[i[0]].filter((function(e){return e.includes(i)}))}]);var c=t[t.length-1];c&&c.value?pe(c&&c.terms||[],(function(e,t){return de[t]?(de[t]||[]).reduce((function(e,t){var n=Z.emojis[t][u.EMOJI_PROPERTY_GROUP];return e[n]=e[n]||{},e[n][t]=!0,e}),e):e}),{}).then((function(e){r({type:E,filter:t,filterResult:e})})):r({type:E,filter:t,filterResult:null})}},ye=(n(44),function(){return c.a.createElement("input",{className:"emoji-search",onChange:ge(),autoFocus:!0})});n(46),n.d(t,"SKIN_TONE_NEUTRAL",(function(){return"neutral"})),n.d(t,"SKIN_TONE_LIGHT",(function(){return"1f3fb"})),n.d(t,"SKIN_TONE_MEDIUM_LIGHT",(function(){return"1f3fc"})),n.d(t,"SKIN_TONE_MEDIUM",(function(){return"1f3fe"})),n.d(t,"SKIN_TONE_MEDIUM_DARK",(function(){return"1f3ff"})),n.d(t,"SKIN_TONE_DARK",(function(){return"1f3fd"}));var be=function(e){var t=e.emojiUrl,n=void 0===t?"https://cdn.jsdelivr.net/gh/iamcal/emoji-data@master/img-apple-160":t,r=e.onEmojiClick,o=e.preload,f=void 0!==o&&o,l=e.skinTone,d=void 0===l?"neutral":l,h=Object(a.useRef)(null),p=Object(a.useReducer)(k,{activeSkinTone:d,emojiUrl:n,onEmojiClick:D(r),seenGroups:i()({},u.GROUP_NAME_PEOPLE,!0),recentlyUsed:O(),preload:f}),m=s()(p,2),y=m[0],_=m[1],w=function(e){var t=e.target;y.variationMenu&&_({type:b}),y.skinTonesSpread&&"tones"!==t.getAttribute("data-name")&&_({type:v})};return c.a.createElement(g.Provider,{value:{state:y,dispatch:_}},c.a.createElement("aside",{className:"emoji-picker-react",onScroll:w,onMouseDown:w},c.a.createElement(W,{emojiListRef:h}),c.a.createElement("div",{style:{position:"relative"}},c.a.createElement(ye,null),c.a.createElement(B,null)),c.a.createElement("div",{className:"content-wrapper","data-name":y.emojiName},c.a.createElement(K,{closeVariations:w}),c.a.createElement(ue,{emojiListRef:h}))))};t.default=be,be.propTypes={emojiUrl:l.a.string,onEmojiClick:l.a.func,preload:l.a.bool,skinTone:l.a.string}}]))}).call(this,n(6))},function(e,t,n){"use strict";var r=n(26),i=n.n(r),o=n(27),s=n.n(o),a=n(55),c=n.n(a),f=n(56),l=n.n(f),u=n(5),d=n.n(u),h=n(57),p=n.n(h),m=n(1),g=n.n(m),y=n(0),b=n.n(y),v=(n(9),n(335)),_=n(161),w=n.n(_),A=n(39);function E(e,t,n){return e===t||(e.correspondingElement?e.correspondingElement.classList.contains(n):e.classList.contains(n))}var k,S,T=(void 0===k&&(k=0),function(){return++k}),I={},x={},R=["touchstart","touchmove"];function C(e,t){var n=null;return-1!==R.indexOf(t)&&S&&(n={passive:!e.props.preventDefault}),n}var O=function(e,t){var n,r,i=e.displayName||e.name||"Component";return r=n=function(n){var r,o;function s(e){var r;return(r=n.call(this,e)||this).__outsideClickHandler=function(e){if("function"!=typeof r.__clickOutsideHandlerProp){var t=r.getInstance();if("function"!=typeof t.props.handleClickOutside){if("function"!=typeof t.handleClickOutside)throw new Error("WrappedComponent: "+i+" lacks a handleClickOutside(event) function for processing outside click events.");t.handleClickOutside(e)}else t.props.handleClickOutside(e)}else r.__clickOutsideHandlerProp(e)},r.__getComponentNode=function(){var e=r.getInstance();return t&&"function"==typeof t.setClickOutsideRef?t.setClickOutsideRef()(e):"function"==typeof e.setClickOutsideRef?e.setClickOutsideRef():Object(A.findDOMNode)(e)},r.enableOnClickOutside=function(){if("undefined"!=typeof document&&!x[r._uid]){void 0===S&&(S=function(){if("undefined"!=typeof window&&"function"==typeof window.addEventListener){var e=!1,t=Object.defineProperty({},"passive",{get:function(){e=!0}}),n=function(){};return window.addEventListener("testPassiveEventSupport",n,t),window.removeEventListener("testPassiveEventSupport",n,t),e}}()),x[r._uid]=!0;var e=r.props.eventTypes;e.forEach||(e=[e]),I[r._uid]=function(e){var t;null!==r.componentNode&&(r.props.preventDefault&&e.preventDefault(),r.props.stopPropagation&&e.stopPropagation(),r.props.excludeScrollbar&&(t=e,document.documentElement.clientWidth<=t.clientX||document.documentElement.clientHeight<=t.clientY)||function(e,t,n){if(e===t)return!0;for(;e.parentNode;){if(E(e,t,n))return!0;e=e.parentNode}return e}(e.target,r.componentNode,r.props.outsideClickIgnoreClass)===document&&r.__outsideClickHandler(e))},e.forEach((function(e){document.addEventListener(e,I[r._uid],C(r,e))}))}},r.disableOnClickOutside=function(){delete x[r._uid];var e=I[r._uid];if(e&&"undefined"!=typeof document){var t=r.props.eventTypes;t.forEach||(t=[t]),t.forEach((function(t){return document.removeEventListener(t,e,C(r,t))})),delete I[r._uid]}},r.getRef=function(e){return r.instanceRef=e},r._uid=T(),r}o=n,(r=s).prototype=Object.create(o.prototype),r.prototype.constructor=r,r.__proto__=o;var a=s.prototype;return a.getInstance=function(){if(!e.prototype.isReactComponent)return this;var t=this.instanceRef;return t.getInstance?t.getInstance():t},a.componentDidMount=function(){if("undefined"!=typeof document&&document.createElement){var e=this.getInstance();if(t&&"function"==typeof t.handleClickOutside&&(this.__clickOutsideHandlerProp=t.handleClickOutside(e),"function"!=typeof this.__clickOutsideHandlerProp))throw new Error("WrappedComponent: "+i+" lacks a function for processing outside click events specified by the handleClickOutside config option.");this.componentNode=this.__getComponentNode(),this.props.disableOnClickOutside||this.enableOnClickOutside()}},a.componentDidUpdate=function(){this.componentNode=this.__getComponentNode()},a.componentWillUnmount=function(){this.disableOnClickOutside()},a.render=function(){var t=this.props,n=(t.excludeScrollbar,function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}(t,["excludeScrollbar"]));return e.prototype.isReactComponent?n.ref=this.getRef:n.wrappedRef=this.getRef,n.disableOnClickOutside=this.disableOnClickOutside,n.enableOnClickOutside=this.enableOnClickOutside,Object(y.createElement)(e,n)},s}(y.Component),n.displayName="OnClickOutside("+i+")",n.defaultProps={eventTypes:["mousedown","touchstart"],excludeScrollbar:t&&t.excludeScrollbar||!1,outsideClickIgnoreClass:"ignore-react-onclickoutside",preventDefault:!1,stopPropagation:!1},n.getClass=function(){return e.getClass?e.getClass():e},r},P=function(){return b.a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24",viewBox:"0 0 24 24",width:"24"},b.a.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),b.a.createElement("path",{id:"icon",fill:"#828282",d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm3.5-9c.83 0 1.5-.67 1.5-1.5S16.33 8 15.5 8 14 8.67 14 9.5s.67 1.5 1.5 1.5zm-7 0c.83 0 1.5-.67 1.5-1.5S9.33 8 8.5 8 7 8.67 7 9.5 7.67 11 8.5 11zm3.5 6.5c2.33 0 4.31-1.46 5.11-3.5H6.89c.8 2.04 2.78 3.5 5.11 3.5z"}))},M=function(e){function t(e){var n;return i()(this,t),n=c()(this,l()(t).call(this,e)),g()(d()(n),"handleClickOutside",(function(e){n.props.closeEmojiSelector()})),n}return p()(t,e),s()(t,[{key:"render",value:function(){var e=this.props,t=e.onEmojiClick,n=e.emojiSelectorOpen,r=e.toggleEmojiSelector;return(b.a.createElement("div",{className:"emoji-button-container"},b.a.createElement("div",{className:"pos-relative"},b.a.createElement(v.a,{in:n,timeout:250},(function(e){return b.a.createElement("div",{className:"emoji-picker emoji-picker-".concat(e),"aria-hidden":!n},b.a.createElement(w.a,{onEmojiClick:t,emojiUrl:"https://cdn.jsdelivr.net/gh/iamcal/emoji-data@master/img-apple-64"}))})),b.a.createElement("button",{type:"button",id:"emoji-button",onClick:r,"aria-label":"Emoji picker"},b.a.createElement(P,null)))))}}]),t}(b.a.Component);t.a=O(M)},,function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}},function(e,t,n){"use strict"; +*/var r=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable;function s(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,a,c=s(e),f=1;f=this._delta8){var n=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-n,e.length),0===this.pending.length&&(this.pending=null),e=r.join32(e,0,e.length-n,this.endian);for(var i=0;i>>24&255,r[i++]=e>>>16&255,r[i++]=e>>>8&255,r[i++]=255&e}else for(r[i++]=255&e,r[i++]=e>>>8&255,r[i++]=e>>>16&255,r[i++]=e>>>24&255,r[i++]=0,r[i++]=0,r[i++]=0,r[i++]=0,o=8;o{if(!this._indexedDB)return void t(new Error("no indexeddb support available"));i.logger.log(`connecting to indexeddb ${this._dbName}`);const n=this._indexedDB.open(this._dbName,a.VERSION);n.onupgradeneeded=e=>{const t=e.target.result,n=e.oldVersion;a.upgradeDatabase(t,n)},n.onblocked=()=>{i.logger.log("can't yet open IndexedDBCryptoStore because it is open elsewhere")},n.onerror=e=>{i.logger.log("Error connecting to indexeddb",e),t(e.target.error)},n.onsuccess=t=>{const n=t.target.result;i.logger.log(`connected to indexeddb ${this._dbName}`),e(new a.Backend(n))}}).then(e=>e.doTxn("readonly",[l.STORE_INBOUND_GROUP_SESSIONS,l.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],t=>{e.getEndToEndInboundGroupSession("","",t,()=>{})}).then(()=>e)).catch(t=>{if("VersionError"===t.name)throw i.logger.warn("Crypto DB is too new for us to use!",t),new c.InvalidCryptoStoreError(c.InvalidCryptoStoreError.TOO_NEW);i.logger.warn(`unable to connect to indexeddb ${this._dbName}`+`: falling back to localStorage store: ${t}`);try{return new o.LocalStorageCryptoStore(e.localStorage)}catch(t){return i.logger.warn(`unable to open localStorage: falling back to in-memory store: ${t}`),new s.MemoryCryptoStore}}),this._backendPromise)}deleteAllData(){return new Promise((e,t)=>{if(!this._indexedDB)return void t(new Error("no indexeddb support available"));i.logger.log(`Removing indexeddb instance: ${this._dbName}`);const n=this._indexedDB.deleteDatabase(this._dbName);n.onblocked=()=>{i.logger.log("can't yet delete IndexedDBCryptoStore because it is open elsewhere")},n.onerror=e=>{i.logger.log("Error deleting data from indexeddb",e),t(e.target.error)},n.onsuccess=()=>{i.logger.log(`Removed indexeddb instance: ${this._dbName}`),e()}}).catch(e=>{i.logger.warn(`unable to delete IndexedDBCryptoStore: ${e}`)})}getOrAddOutgoingRoomKeyRequest(e){return this._connect().then(t=>t.getOrAddOutgoingRoomKeyRequest(e))}getOutgoingRoomKeyRequest(e){return this._connect().then(t=>t.getOutgoingRoomKeyRequest(e))}getOutgoingRoomKeyRequestByState(e){return this._connect().then(t=>t.getOutgoingRoomKeyRequestByState(e))}getOutgoingRoomKeyRequestsByTarget(e,t,n){return this._connect().then(r=>r.getOutgoingRoomKeyRequestsByTarget(e,t,n))}updateOutgoingRoomKeyRequest(e,t,n){return this._connect().then(r=>r.updateOutgoingRoomKeyRequest(e,t,n))}deleteOutgoingRoomKeyRequest(e,t){return this._connect().then(n=>n.deleteOutgoingRoomKeyRequest(e,t))}getAccount(e,t){this._backendPromise.then(n=>{n.getAccount(e,t)})}storeAccount(e,t){this._backendPromise.then(n=>{n.storeAccount(e,t)})}getCrossSigningKeys(e,t){this._backendPromise.then(n=>{n.getCrossSigningKeys(e,t)})}storeCrossSigningKeys(e,t){this._backendPromise.then(n=>{n.storeCrossSigningKeys(e,t)})}countEndToEndSessions(e,t){this._backendPromise.then(n=>{n.countEndToEndSessions(e,t)})}getEndToEndSession(e,t,n,r){this._backendPromise.then(i=>{i.getEndToEndSession(e,t,n,r)})}getEndToEndSessions(e,t,n){this._backendPromise.then(r=>{r.getEndToEndSessions(e,t,n)})}getAllEndToEndSessions(e,t){this._backendPromise.then(n=>{n.getAllEndToEndSessions(e,t)})}storeEndToEndSession(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndSession(e,t,n,r)})}storeEndToEndSessionProblem(e,t,n){return this._backendPromise.then(async r=>{await r.storeEndToEndSessionProblem(e,t,n)})}getEndToEndSessionProblem(e,t){return this._backendPromise.then(async n=>await n.getEndToEndSessionProblem(e,t))}filterOutNotifiedErrorDevices(e){return this._backendPromise.then(async t=>await t.filterOutNotifiedErrorDevices(e))}getEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.getEndToEndInboundGroupSession(e,t,n,r)})}getAllEndToEndInboundGroupSessions(e,t){this._backendPromise.then(n=>{n.getAllEndToEndInboundGroupSessions(e,t)})}addEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.addEndToEndInboundGroupSession(e,t,n,r)})}storeEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndInboundGroupSession(e,t,n,r)})}storeEndToEndInboundGroupSessionWithheld(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndInboundGroupSessionWithheld(e,t,n,r)})}storeEndToEndDeviceData(e,t){this._backendPromise.then(n=>{n.storeEndToEndDeviceData(e,t)})}getEndToEndDeviceData(e,t){this._backendPromise.then(n=>{n.getEndToEndDeviceData(e,t)})}storeEndToEndRoom(e,t,n){this._backendPromise.then(r=>{r.storeEndToEndRoom(e,t,n)})}getEndToEndRooms(e,t){this._backendPromise.then(n=>{n.getEndToEndRooms(e,t)})}getSessionsNeedingBackup(e){return this._connect().then(t=>t.getSessionsNeedingBackup(e))}countSessionsNeedingBackup(e){return this._connect().then(t=>t.countSessionsNeedingBackup(e))}unmarkSessionsNeedingBackup(e,t){return this._connect().then(n=>n.unmarkSessionsNeedingBackup(e,t))}markSessionsNeedingBackup(e,t){return this._connect().then(n=>n.markSessionsNeedingBackup(e,t))}doTxn(e,t,n){return this._connect().then(r=>r.doTxn(e,t,n))}}t.IndexedDBCryptoStore=l,l.STORE_ACCOUNT="account",l.STORE_SESSIONS="sessions",l.STORE_INBOUND_GROUP_SESSIONS="inbound_group_sessions",l.STORE_INBOUND_GROUP_SESSIONS_WITHHELD="inbound_group_sessions_withheld",l.STORE_DEVICE_DATA="device_data",l.STORE_ROOMS="rooms",l.STORE_BACKUP="sessions_needing_backup"}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newVerificationError=i,t.errorFactory=o,t.errorFromEvent=function(e){const t=e.getContent();if(t){const{code:e,reason:n}=t;return{code:e,reason:n}}return{code:"Unknown error",reason:"m.unknown"}},t.newInvalidMessageError=t.newUserMismatchError=t.newKeyMismatchError=t.newUnexpectedMessageError=t.newUnknownMethodError=t.newUnknownTransactionError=t.newTimeoutError=t.newUserCancelledError=void 0;var r=n(19);function i(e,t,n){return(n=n||{}).code=e,n.reason=t,new r.MatrixEvent({type:"m.key.verification.cancel",content:n})}function o(e,t){return function(n){return i(e,t,n)}}const s=o("m.user","Cancelled by user");t.newUserCancelledError=s;const a=o("m.timeout","Timed out");t.newTimeoutError=a;const c=o("m.unknown_transaction","Unknown transaction");t.newUnknownTransactionError=c;const f=o("m.unknown_method","Unknown method");t.newUnknownMethodError=f;const l=o("m.unexpected_message","Unexpected message");t.newUnexpectedMessageError=l;const u=o("m.key_mismatch","Key mismatch");t.newKeyMismatchError=u;const d=o("m.user_error","User mismatch");t.newUserMismatchError=d;const h=o("m.invalid_message","Invalid message");t.newInvalidMessageError=h},function(e,t,n){(function(e){function n(e,t){for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];"."===i?e.splice(r,1):".."===i?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n--;n)e.unshift("..");return e}function r(e,t){if(e.filter)return e.filter(t);for(var n=[],r=0;r=-1&&!i;o--){var s=o>=0?arguments[o]:e.cwd();if("string"!=typeof s)throw new TypeError("Arguments to path.resolve must be strings");s&&(t=s+"/"+t,i="/"===s.charAt(0))}return(i?"/":"")+(t=n(r(t.split("/"),(function(e){return!!e})),!i).join("/"))||"."},t.normalize=function(e){var o=t.isAbsolute(e),s="/"===i(e,-1);return(e=n(r(e.split("/"),(function(e){return!!e})),!o).join("/"))||o||(e="."),e&&s&&(e+="/"),(o?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(r(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,n){function r(e){for(var t=0;t=0&&""===e[n];n--);return t>n?[]:e.slice(t,n-t+1)}e=t.resolve(e).substr(1),n=t.resolve(n).substr(1);for(var i=r(e.split("/")),o=r(n.split("/")),s=Math.min(i.length,o.length),a=s,c=0;c=1;--o)if(47===(t=e.charCodeAt(o))){if(!i){r=o;break}}else i=!1;return-1===r?n?"/":".":n&&1===r?"/":e.slice(0,r)},t.basename=function(e,t){var n=function(e){"string"!=typeof e&&(e+="");var t,n=0,r=-1,i=!0;for(t=e.length-1;t>=0;--t)if(47===e.charCodeAt(t)){if(!i){n=t+1;break}}else-1===r&&(i=!1,r=t+1);return-1===r?"":e.slice(n,r)}(e);return t&&n.substr(-1*t.length)===t&&(n=n.substr(0,n.length-t.length)),n},t.extname=function(e){"string"!=typeof e&&(e+="");for(var t=-1,n=0,r=-1,i=!0,o=0,s=e.length-1;s>=0;--s){var a=e.charCodeAt(s);if(47!==a)-1===r&&(i=!1,r=s+1),46===a?-1===t?t=s:1!==o&&(o=1):-1!==t&&(o=-1);else if(!i){n=s+1;break}}return-1===t||-1===r||0===o||1===o&&t===r-1&&t===n+1?"":e.slice(t,r)};var i="b"==="ab".substr(-1)?function(e,t,n){return e.substr(t,n)}:function(e,t,n){return t<0&&(t=e.length+t),e.substr(t,n)}}).call(this,n(13))},function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE){0;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}}(),e.exports=n(166)},function(e,t,n){"use strict";(function(e){var r=n(16),i=n(7);Object.defineProperty(t,"__esModule",{value:!0});var o={};t.default=void 0;var s=i(n(130));Object.keys(s).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||Object.defineProperty(t,e,{enumerable:!0,get:function(){return s[e]}}))}));var a=r(n(313)),c=r(n(314));let f;s.request((function(e,t){return e.qs=c.default.stringify(e.qs||{},e.qsStringifyOptions),(0,a.default)(e,t)}));try{f=e.indexedDB}catch(e){}f&&s.setCryptoStoreFactory((function(){return new s.IndexedDBCryptoStore(f,"matrix-js-sdk:crypto")}));var l=s;t.default=l,e.matrixcs=s}).call(this,n(6))},function(e,t,n){(function(e){var r=Object.getOwnPropertyDescriptors||function(e){for(var t=Object.keys(e),n={},r=0;r=o)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),c=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),p(n)?r.showHidden=n:n&&t._extend(r,n),b(r.showHidden)&&(r.showHidden=!1),b(r.depth)&&(r.depth=2),b(r.colors)&&(r.colors=!1),b(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=c),l(r,e,r.depth)}function c(e,t){var n=a.styles[t];return n?"["+a.colors[n][0]+"m"+e+"["+a.colors[n][1]+"m":e}function f(e,t){return e}function l(e,n,r){if(e.customInspect&&n&&E(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var i=n.inspect(r,e);return y(i)||(i=l(e,i,r)),i}var o=function(e,t){if(b(t))return e.stylize("undefined","undefined");if(y(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(g(t))return e.stylize(""+t,"number");if(p(t))return e.stylize(""+t,"boolean");if(m(t))return e.stylize("null","null")}(e,n);if(o)return o;var s=Object.keys(n),a=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(s);if(e.showHidden&&(s=Object.getOwnPropertyNames(n)),A(n)&&(s.indexOf("message")>=0||s.indexOf("description")>=0))return u(n);if(0===s.length){if(E(n)){var c=n.name?": "+n.name:"";return e.stylize("[Function"+c+"]","special")}if(v(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(w(n))return e.stylize(Date.prototype.toString.call(n),"date");if(A(n))return u(n)}var f,_="",k=!1,S=["{","}"];(h(n)&&(k=!0,S=["[","]"]),E(n))&&(_=" [Function"+(n.name?": "+n.name:"")+"]");return v(n)&&(_=" "+RegExp.prototype.toString.call(n)),w(n)&&(_=" "+Date.prototype.toUTCString.call(n)),A(n)&&(_=" "+u(n)),0!==s.length||k&&0!=n.length?r<0?v(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),f=k?function(e,t,n,r,i){for(var o=[],s=0,a=t.length;s=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(f,_,S)):S[0]+_+S[1]}function u(e){return"["+Error.prototype.toString.call(e)+"]"}function d(e,t,n,r,i,o){var s,a,c;if((c=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?a=c.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):c.set&&(a=e.stylize("[Setter]","special")),x(r,i)||(s="["+i+"]"),a||(e.seen.indexOf(c.value)<0?(a=m(n)?l(e,c.value,null):l(e,c.value,n-1)).indexOf("\n")>-1&&(a=o?a.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+a.split("\n").map((function(e){return" "+e})).join("\n")):a=e.stylize("[Circular]","special")),b(s)){if(o&&i.match(/^\d+$/))return a;(s=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+a}function h(e){return Array.isArray(e)}function p(e){return"boolean"==typeof e}function m(e){return null===e}function g(e){return"number"==typeof e}function y(e){return"string"==typeof e}function b(e){return void 0===e}function v(e){return _(e)&&"[object RegExp]"===k(e)}function _(e){return"object"==typeof e&&null!==e}function w(e){return _(e)&&"[object Date]"===k(e)}function A(e){return _(e)&&("[object Error]"===k(e)||e instanceof Error)}function E(e){return"function"==typeof e}function k(e){return Object.prototype.toString.call(e)}function S(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(b(o)&&(o=e.env.NODE_DEBUG||""),n=n.toUpperCase(),!s[n])if(new RegExp("\\b"+n+"\\b","i").test(o)){var r=e.pid;s[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else s[n]=function(){};return s[n]},t.inspect=a,a.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},a.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=h,t.isBoolean=p,t.isNull=m,t.isNullOrUndefined=function(e){return null==e},t.isNumber=g,t.isString=y,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=b,t.isRegExp=v,t.isObject=_,t.isDate=w,t.isError=A,t.isFunction=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=n(177);var T=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function I(){var e=new Date,t=[S(e.getHours()),S(e.getMinutes()),S(e.getSeconds())].join(":");return[e.getDate(),T[e.getMonth()],t].join(" ")}function x(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",I(),t.format.apply(t,arguments))},t.inherits=n(178),t._extend=function(e,t){if(!t||!_(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e};var R="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function C(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(R&&e[R]){var t;if("function"!=typeof(t=e[R]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,R,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),i=[],o=0;o>>24]^l[p>>>16&255]^u[m>>>8&255]^d[255&g]^t[y++],s=f[p>>>24]^l[m>>>16&255]^u[g>>>8&255]^d[255&h]^t[y++],a=f[m>>>24]^l[g>>>16&255]^u[h>>>8&255]^d[255&p]^t[y++],c=f[g>>>24]^l[h>>>16&255]^u[p>>>8&255]^d[255&m]^t[y++],h=o,p=s,m=a,g=c;return o=(r[h>>>24]<<24|r[p>>>16&255]<<16|r[m>>>8&255]<<8|r[255&g])^t[y++],s=(r[p>>>24]<<24|r[m>>>16&255]<<16|r[g>>>8&255]<<8|r[255&h])^t[y++],a=(r[m>>>24]<<24|r[g>>>16&255]<<16|r[h>>>8&255]<<8|r[255&p])^t[y++],c=(r[g>>>24]<<24|r[h>>>16&255]<<16|r[p>>>8&255]<<8|r[255&m])^t[y++],[o>>>=0,s>>>=0,a>>>=0,c>>>=0]}var a=[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 n=[],r=[],i=[[],[],[],[]],o=[[],[],[],[]],s=0,a=0,c=0;c<256;++c){var f=a^a<<1^a<<2^a<<3^a<<4;f=f>>>8^255&f^99,n[s]=f,r[f]=s;var l=e[s],u=e[l],d=e[u],h=257*e[f]^16843008*f;i[0][s]=h<<24|h>>>8,i[1][s]=h<<16|h>>>16,i[2][s]=h<<8|h>>>24,i[3][s]=h,h=16843009*d^65537*u^257*l^16843008*s,o[0][f]=h<<24|h>>>8,o[1][f]=h<<16|h>>>16,o[2][f]=h<<8|h>>>24,o[3][f]=h,0===s?s=a=1:(s=l^e[e[e[d^l]]],a^=e[e[a]])}return{SBOX:n,INV_SBOX:r,SUB_MIX:i,INV_SUB_MIX:o}}();function f(e){this._key=i(e),this._reset()}f.blockSize=16,f.keySize=32,f.prototype.blockSize=f.blockSize,f.prototype.keySize=f.keySize,f.prototype._reset=function(){for(var e=this._key,t=e.length,n=t+6,r=4*(n+1),i=[],o=0;o>>24,s=c.SBOX[s>>>24]<<24|c.SBOX[s>>>16&255]<<16|c.SBOX[s>>>8&255]<<8|c.SBOX[255&s],s^=a[o/t|0]<<24):t>6&&o%t==4&&(s=c.SBOX[s>>>24]<<24|c.SBOX[s>>>16&255]<<16|c.SBOX[s>>>8&255]<<8|c.SBOX[255&s]),i[o]=i[o-t]^s}for(var f=[],l=0;l>>24]]^c.INV_SUB_MIX[1][c.SBOX[d>>>16&255]]^c.INV_SUB_MIX[2][c.SBOX[d>>>8&255]]^c.INV_SUB_MIX[3][c.SBOX[255&d]]}this._nRounds=n,this._keySchedule=i,this._invKeySchedule=f},f.prototype.encryptBlockRaw=function(e){return s(e=i(e),this._keySchedule,c.SUB_MIX,c.SBOX,this._nRounds)},f.prototype.encryptBlock=function(e){var t=this.encryptBlockRaw(e),n=r.allocUnsafe(16);return n.writeUInt32BE(t[0],0),n.writeUInt32BE(t[1],4),n.writeUInt32BE(t[2],8),n.writeUInt32BE(t[3],12),n},f.prototype.decryptBlock=function(e){var t=(e=i(e))[1];e[1]=e[3],e[3]=t;var n=s(e,this._invKeySchedule,c.INV_SUB_MIX,c.INV_SBOX,this._nRounds),o=r.allocUnsafe(16);return o.writeUInt32BE(n[0],0),o.writeUInt32BE(n[3],4),o.writeUInt32BE(n[2],8),o.writeUInt32BE(n[1],12),o},f.prototype.scrub=function(){o(this._keySchedule),o(this._invKeySchedule),o(this._key)},e.exports.AES=f},function(e,t,n){var r=n(3).Buffer,i=n(63);e.exports=function(e,t,n,o){if(r.isBuffer(e)||(e=r.from(e,"binary")),t&&(r.isBuffer(t)||(t=r.from(t,"binary")),8!==t.length))throw new RangeError("salt should be Buffer with 8 byte length");for(var s=n/8,a=r.alloc(s),c=r.alloc(o||0),f=r.alloc(0);s>0||o>0;){var l=new i;l.update(f),l.update(e),t&&l.update(t),f=l.digest();var u=0;if(s>0){var d=a.length-s;u=Math.min(s,f.length),f.copy(a,d,0,u),s-=u}if(u0){var h=c.length-o,p=Math.min(o,f.length-u);f.copy(c,h,u,u+p),o-=p}}return f.fill(0),{key:a,iv:c}}},function(e,t,n){"use strict";var r=n(12),i=n(15),o=i.getNAF,s=i.getJSF,a=i.assert;function c(e,t){this.type=e,this.p=new r(t.p,16),this.red=t.prime?r.red(t.prime):r.mont(this.p),this.zero=new r(0).toRed(this.red),this.one=new r(1).toRed(this.red),this.two=new r(2).toRed(this.red),this.n=t.n&&new r(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var n=this.n&&this.p.div(this.n);!n||n.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function f(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){a(e.precomputed);var n=e._getDoubles(),r=o(t,1,this._bitLength),i=(1<=c;t--)f=(f<<1)+r[t];s.push(f)}for(var l=this.jpoint(null,null,null),u=this.jpoint(null,null,null),d=i;d>0;d--){for(c=0;c=0;f--){for(t=0;f>=0&&0===s[f];f--)t++;if(f>=0&&t++,c=c.dblp(t),f<0)break;var l=s[f];a(0!==l),c="affine"===e.type?l>0?c.mixedAdd(i[l-1>>1]):c.mixedAdd(i[-l-1>>1].neg()):l>0?c.add(i[l-1>>1]):c.add(i[-l-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,n,r,i){for(var a=this._wnafT1,c=this._wnafT2,f=this._wnafT3,l=0,u=0;u=1;u-=2){var h=u-1,p=u;if(1===a[h]&&1===a[p]){var m=[t[h],null,null,t[p]];0===t[h].y.cmp(t[p].y)?(m[1]=t[h].add(t[p]),m[2]=t[h].toJ().mixedAdd(t[p].neg())):0===t[h].y.cmp(t[p].y.redNeg())?(m[1]=t[h].toJ().mixedAdd(t[p]),m[2]=t[h].add(t[p].neg())):(m[1]=t[h].toJ().mixedAdd(t[p]),m[2]=t[h].toJ().mixedAdd(t[p].neg()));var g=[-3,-1,-5,-7,0,7,5,1,3],y=s(n[h],n[p]);l=Math.max(y[0].length,l),f[h]=new Array(l),f[p]=new Array(l);for(var b=0;b=0;u--){for(var E=0;u>=0;){var k=!0;for(b=0;b=0&&E++,w=w.dblp(E),u<0)break;for(b=0;b0?S=c[b][T-1>>1]:T<0&&(S=c[b][-T-1>>1].neg()),w="affine"===S.type?w.mixedAdd(S):w.add(S))}}for(u=0;u=Math.ceil((e.bitLength()+1)/t.step)},f.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,i=0;i0&&(g+="?"+y.join("&")),s.open("POST",g),this.useAuthorizationHeader&&s.setRequestHeader("Authorization","Bearer "+this.opts.accessToken),s.setRequestHeader("Content-Type",i),s.send(l),p=t.promise,p.abort=s.abort.bind(s)}else{const e={};r&&c&&(e.filename=c),p=this.authedRequest(n.callback,"POST","/upload",e,l,{prefix:"/_matrix/media/r0",headers:{"Content-Type":i},json:!1,bodyParser:m})}const g=this,y=p.finally((function(){for(let e=0;e{b&&(m&&a.clearTimeout(m),m=a.setTimeout((function(){y=!0,g&&g.abort&&g.abort(),p.reject(new l({error:"Locally timed out waiting for a response",errcode:"ORG.MATRIX.JSSDK_TIMEOUT",timeout:b}))}),b))};v();const _=p.promise;try{g=this.opts.request({uri:n,method:t,withCredentials:!1,qs:r,qsStringifyOptions:s.qsStringifyOptions,useQuerystring:!0,body:i,json:!1,timeout:b,headers:u||{},_matrix_opts:this.opts},(function(t,n,r){if(b&&(a.clearTimeout(m),y))return;f(p,e,c.opts.onlyData,h)(t,n,r)})),g&&("onprogress"in g&&(g.onprogress=e=>{v()}),g.abort&&(_.abort=g.abort.bind(g)))}catch(t){p.reject(t),e&&e(t)}return _}};const f=function(e,t,n,r){return t=t||function(){},function(o,s,a){if(!o)try{s.statusCode>=400?o=function(e,t){const n=e.statusCode,r=function(e){let t;e.getResponseHeader?t=e.getResponseHeader("Content-Type"):e.headers&&(t=e.headers["content-type"]||null);if(!t)return null;try{return(0,i.parse)(t)}catch(e){throw new Error(`Error parsing Content-Type '${t}': ${e}`)}}(e);let o;if(r)if("application/json"===r.type){const e="object"==typeof t?t:JSON.parse(t);o=new l(e)}else"text/plain"===r.type&&(o=new Error(`Server returned ${n} error: ${t}`));o||(o=new Error(`Server returned ${n} error`));return o.httpStatus=n,o}(s,a):r&&(a=r(a))}catch(e){o=new Error(`Error parsing server response: ${e}`)}if(o)e.reject(o),t(o);else{const r={code:s.statusCode,headers:s.headers,data:a};e.resolve(n?a:r),t(null,n?a:r)}}};function l(e){e=e||{},this.errcode=e.errcode,this.name=e.errcode||"Unknown error code",this.message=e.error||"Unknown message",this.data=e}l.prototype=Object.create(Error.prototype),l.prototype.constructor=l}).call(this,n(6))},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.getHttpUriForMxc=function(e,t,n,r,o,s){if("string"!=typeof t||!t)return"";if(0!==t.indexOf("mxc://"))return s?t:"";let a=t.slice(6),c="/_matrix/media/r0/download/";const f={};n&&(f.width=Math.round(n));r&&(f.height=Math.round(r));o&&(f.method=o);i.keys(f).length>0&&(c="/_matrix/media/r0/thumbnail/");const l=a.indexOf("#");let u="";l>=0&&(u=a.substr(l),a=a.substr(0,l));return e+c+a+(0===i.keys(f).length?"":"?"+i.encodeParams(f))+u},t.getIdenticonUri=function(e,t,n,r){if(!t)return null;n||(n=96);r||(r=96);const o={width:n,height:r},s=i.encodeUri("/_matrix/media/unstable/identicon/$ident",{$ident:t});return e+s+(0===i.keys(o).length?"":"?"+i.encodeParams(o))};var i=r(n(8))},function(e,t,n){"use strict";function r(e){Object.defineProperty(this,"deviceId",{enumerable:!0,value:e}),this.algorithms=[],this.keys={},this.verified=i.UNVERIFIED,this.known=!1,this.unsigned={},this.signatures={}}Object.defineProperty(t,"__esModule",{value:!0}),t.DeviceInfo=r,r.fromStorage=function(e,t){const n=new r(t);for(const t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n},r.prototype.toStorage=function(){return{algorithms:this.algorithms,keys:this.keys,verified:this.verified,known:this.known,unsigned:this.unsigned,signatures:this.signatures}},r.prototype.getFingerprint=function(){return this.keys["ed25519:"+this.deviceId]},r.prototype.getIdentityKey=function(){return this.keys["curve25519:"+this.deviceId]},r.prototype.getDisplayName=function(){return this.unsigned.device_display_name||null},r.prototype.isBlocked=function(){return this.verified==i.BLOCKED},r.prototype.isVerified=function(){return this.verified==i.VERIFIED},r.prototype.isUnverified=function(){return this.verified==i.UNVERIFIED},r.prototype.isKnown=function(){return 1==this.known},r.DeviceVerification={VERIFIED:1,UNVERIFIED:0,BLOCKED:-1};const i=r.DeviceVerification},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomString=function(e){let t="";const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(let r=0;r2&&void 0!==arguments[2]?arguments[2]:{},r=Object.create(e.prototype);for(var i in n)r[i]=n[i];return r.constructor=t,t.prototype=r,t}},function(e,t,n){var r=n(90),i=n(5);e.exports=function(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?i(e):t}},function(e,t){function n(t){return e.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},n(t)}e.exports=n},function(e,t,n){var r=n(174);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&r(e,t)}},function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE){0;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}}(),e.exports=n(329)},function(e,t,n){(t=e.exports=n(92)).Stream=t,t.Readable=t,t.Writable=n(61),t.Duplex=n(21),t.Transform=n(95),t.PassThrough=n(192)},function(e,t,n){var r=n(11),i=r.Buffer;function o(e,t){for(var n in e)t[n]=e[n]}function s(e,t,n){return i(e,t,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=r:(o(r,t),t.Buffer=s),o(i,s),s.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,n)},s.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=i(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},s.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},s.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){"use strict";(function(t,r,i){var o=n(44);function s(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;e.entry=null;for(;r;){var i=r.callback;t.pendingcb--,i(n),r=r.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}(t,e)}}e.exports=b;var a,c=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?r:o.nextTick;b.WritableState=y;var f=Object.create(n(30));f.inherits=n(2);var l={deprecate:n(191)},u=n(93),d=n(60).Buffer,h=i.Uint8Array||function(){};var p,m=n(94);function g(){}function y(e,t){a=a||n(21),e=e||{};var r=t instanceof a;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,f=e.writableHighWaterMark,l=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(f||0===f)?f:l,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var 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 n=e._writableState,r=n.sync,i=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,i){--t.pendingcb,n?(o.nextTick(i,r),o.nextTick(k,e,t),e._writableState.errorEmitted=!0,e.emit("error",r)):(i(r),e._writableState.errorEmitted=!0,e.emit("error",r),k(e,t))}(e,n,r,t,i);else{var s=A(n);s||n.corked||n.bufferProcessing||!n.bufferedRequest||w(e,n),r?c(_,e,n,s,i):_(e,n,s,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 s(this)}function b(e){if(a=a||n(21),!(p.call(b,this)||this instanceof a))return new b(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)),u.call(this)}function v(e,t,n,r,i,o,s){t.writelen=r,t.writecb=s,t.writing=!0,t.sync=!0,n?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function _(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),k(e,t)}function w(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,i=new Array(r),o=t.corkedRequestsFree;o.entry=n;for(var a=0,c=!0;n;)i[a]=n,n.isBuf||(c=!1),n=n.next,a+=1;i.allBuffers=c,v(e,t,!0,t.length,i,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new s(t),t.bufferedRequestCount=0}else{for(;n;){var f=n.chunk,l=n.encoding,u=n.callback;if(v(e,t,!1,t.objectMode?1:f.length,f,l,u),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function A(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function E(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),k(e,t)}))}function k(e,t){var n=A(t);return n&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,o.nextTick(E,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}f.inherits(b,u),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:l.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(b,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===b&&(e&&e._writableState instanceof y)}})):p=function(e){return e instanceof this},b.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},b.prototype.write=function(e,t,n){var r,i=this._writableState,s=!1,a=!i.objectMode&&(r=e,d.isBuffer(r)||r instanceof h);return a&&!d.isBuffer(e)&&(e=function(e){return d.from(e)}(e)),"function"==typeof t&&(n=t,t=null),a?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof n&&(n=g),i.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),o.nextTick(t,n)}(this,n):(a||function(e,t,n,r){var i=!0,s=!1;return null===n?s=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(s=new TypeError("Invalid non-string/buffer chunk")),s&&(e.emit("error",s),o.nextTick(r,s),i=!1),i}(this,i,e,n))&&(i.pendingcb++,s=function(e,t,n,r,i,o){if(!n){var s=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=d.from(t,n));return t}(t,r,i);r!==s&&(n=!0,i="buffer",r=s)}var a=t.objectMode?1:r.length;t.length+=a;var c=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(b.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),b.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},b.prototype._writev=null,b.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,k(e,t),n&&(t.finished?o.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)},Object.defineProperty(b.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),b.prototype.destroy=m.destroy,b.prototype._undestroy=m.undestroy,b.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n(13),n(189).setImmediate,n(6))},function(e,t,n){"use strict";var r=n(3).Buffer,i=r.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 o(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&&(r.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=f,t=4;break;case"utf8":this.fillLast=a,t=4;break;case"base64":this.text=l,this.end=u,t=3;break;default:return this.write=d,void(this.end=h)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function s(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function a(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n: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 n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function f(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function l(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?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-n))}function u(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function h(e){return e&&e.length?this.write(e):""}t.StringDecoder=o,o.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return i>0&&(e.lastNeed=i-1),i;if(--r=0)return i>0&&(e.lastNeed=i-2),i;if(--r=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=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},o.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,n){"use strict";var r=n(2),i=n(97),o=n(3).Buffer,s=new Array(16);function a(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function c(e,t){return e<>>32-t}function f(e,t,n,r,i,o,s){return c(e+(t&n|~t&r)+i+o|0,s)+t|0}function l(e,t,n,r,i,o,s){return c(e+(t&r|n&~r)+i+o|0,s)+t|0}function u(e,t,n,r,i,o,s){return c(e+(t^n^r)+i+o|0,s)+t|0}function d(e,t,n,r,i,o,s){return c(e+(n^(t|~r))+i+o|0,s)+t|0}r(a,i),a.prototype._update=function(){for(var e=s,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var n=this._a,r=this._b,i=this._c,o=this._d;n=f(n,r,i,o,e[0],3614090360,7),o=f(o,n,r,i,e[1],3905402710,12),i=f(i,o,n,r,e[2],606105819,17),r=f(r,i,o,n,e[3],3250441966,22),n=f(n,r,i,o,e[4],4118548399,7),o=f(o,n,r,i,e[5],1200080426,12),i=f(i,o,n,r,e[6],2821735955,17),r=f(r,i,o,n,e[7],4249261313,22),n=f(n,r,i,o,e[8],1770035416,7),o=f(o,n,r,i,e[9],2336552879,12),i=f(i,o,n,r,e[10],4294925233,17),r=f(r,i,o,n,e[11],2304563134,22),n=f(n,r,i,o,e[12],1804603682,7),o=f(o,n,r,i,e[13],4254626195,12),i=f(i,o,n,r,e[14],2792965006,17),n=l(n,r=f(r,i,o,n,e[15],1236535329,22),i,o,e[1],4129170786,5),o=l(o,n,r,i,e[6],3225465664,9),i=l(i,o,n,r,e[11],643717713,14),r=l(r,i,o,n,e[0],3921069994,20),n=l(n,r,i,o,e[5],3593408605,5),o=l(o,n,r,i,e[10],38016083,9),i=l(i,o,n,r,e[15],3634488961,14),r=l(r,i,o,n,e[4],3889429448,20),n=l(n,r,i,o,e[9],568446438,5),o=l(o,n,r,i,e[14],3275163606,9),i=l(i,o,n,r,e[3],4107603335,14),r=l(r,i,o,n,e[8],1163531501,20),n=l(n,r,i,o,e[13],2850285829,5),o=l(o,n,r,i,e[2],4243563512,9),i=l(i,o,n,r,e[7],1735328473,14),n=u(n,r=l(r,i,o,n,e[12],2368359562,20),i,o,e[5],4294588738,4),o=u(o,n,r,i,e[8],2272392833,11),i=u(i,o,n,r,e[11],1839030562,16),r=u(r,i,o,n,e[14],4259657740,23),n=u(n,r,i,o,e[1],2763975236,4),o=u(o,n,r,i,e[4],1272893353,11),i=u(i,o,n,r,e[7],4139469664,16),r=u(r,i,o,n,e[10],3200236656,23),n=u(n,r,i,o,e[13],681279174,4),o=u(o,n,r,i,e[0],3936430074,11),i=u(i,o,n,r,e[3],3572445317,16),r=u(r,i,o,n,e[6],76029189,23),n=u(n,r,i,o,e[9],3654602809,4),o=u(o,n,r,i,e[12],3873151461,11),i=u(i,o,n,r,e[15],530742520,16),n=d(n,r=u(r,i,o,n,e[2],3299628645,23),i,o,e[0],4096336452,6),o=d(o,n,r,i,e[7],1126891415,10),i=d(i,o,n,r,e[14],2878612391,15),r=d(r,i,o,n,e[5],4237533241,21),n=d(n,r,i,o,e[12],1700485571,6),o=d(o,n,r,i,e[3],2399980690,10),i=d(i,o,n,r,e[10],4293915773,15),r=d(r,i,o,n,e[1],2240044497,21),n=d(n,r,i,o,e[8],1873313359,6),o=d(o,n,r,i,e[15],4264355552,10),i=d(i,o,n,r,e[6],2734768916,15),r=d(r,i,o,n,e[13],1309151649,21),n=d(n,r,i,o,e[4],4149444226,6),o=d(o,n,r,i,e[11],3174756917,10),i=d(i,o,n,r,e[2],718787259,15),r=d(r,i,o,n,e[9],3951481745,21),this._a=this._a+n|0,this._b=this._b+r|0,this._c=this._c+i|0,this._d=this._d+o|0},a.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=o.allocUnsafe(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=a},function(e,t,n){"use strict";var r=n(11).Buffer,i=n(2),o=n(97),s=new Array(16),a=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],c=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],f=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],l=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],u=[0,1518500249,1859775393,2400959708,2840853838],d=[1352829926,1548603684,1836072691,2053994217,0];function h(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function p(e,t){return e<>>32-t}function m(e,t,n,r,i,o,s,a){return p(e+(t^n^r)+o+s|0,a)+i|0}function g(e,t,n,r,i,o,s,a){return p(e+(t&n|~t&r)+o+s|0,a)+i|0}function y(e,t,n,r,i,o,s,a){return p(e+((t|~n)^r)+o+s|0,a)+i|0}function b(e,t,n,r,i,o,s,a){return p(e+(t&r|n&~r)+o+s|0,a)+i|0}function v(e,t,n,r,i,o,s,a){return p(e+(t^(n|~r))+o+s|0,a)+i|0}i(h,o),h.prototype._update=function(){for(var e=s,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var n=0|this._a,r=0|this._b,i=0|this._c,o=0|this._d,h=0|this._e,_=0|this._a,w=0|this._b,A=0|this._c,E=0|this._d,k=0|this._e,S=0;S<80;S+=1){var T,I;S<16?(T=m(n,r,i,o,h,e[a[S]],u[0],f[S]),I=v(_,w,A,E,k,e[c[S]],d[0],l[S])):S<32?(T=g(n,r,i,o,h,e[a[S]],u[1],f[S]),I=b(_,w,A,E,k,e[c[S]],d[1],l[S])):S<48?(T=y(n,r,i,o,h,e[a[S]],u[2],f[S]),I=y(_,w,A,E,k,e[c[S]],d[2],l[S])):S<64?(T=b(n,r,i,o,h,e[a[S]],u[3],f[S]),I=g(_,w,A,E,k,e[c[S]],d[3],l[S])):(T=v(n,r,i,o,h,e[a[S]],u[4],f[S]),I=m(_,w,A,E,k,e[c[S]],d[4],l[S])),n=h,h=o,o=p(i,10),i=r,r=T,_=k,k=E,E=p(A,10),A=w,w=I}var x=this._b+i+E|0;this._b=this._c+o+k|0,this._c=this._d+h+_|0,this._d=this._e+n+w|0,this._e=this._a+r+A|0,this._a=x},h.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=r.alloc?r.alloc(20):new r(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=h},function(e,t,n){(t=e.exports=function(e){e=e.toLowerCase();var n=t[e];if(!n)throw new Error(e+" is not supported (we accept pull requests)");return new n}).sha=n(204),t.sha1=n(205),t.sha224=n(206),t.sha256=n(98),t.sha384=n(207),t.sha512=n(99)},function(e,t,n){"use strict";var r=n(14);function i(e){this.options=e,this.type=this.options.type,this.blockSize=8,this._init(),this.buffer=new Array(this.blockSize),this.bufferOff=0}e.exports=i,i.prototype._init=function(){},i.prototype.update=function(e){return 0===e.length?[]:"decrypt"===this.type?this._updateDecrypt(e):this._updateEncrypt(e)},i.prototype._buffer=function(e,t){for(var n=Math.min(this.buffer.length-this.bufferOff,e.length-t),r=0;r0;r--)t+=this._buffer(e,t),n+=this._flushBuffer(i,n);return t+=this._buffer(e,t),i},i.prototype.final=function(e){var t,n;return e&&(t=this.update(e)),n="encrypt"===this.type?this._finalEncrypt():this._finalDecrypt(),t?t.concat(n):n},i.prototype._pad=function(e,t){if(0===t)return!1;for(;t=0||!n.umod(e.prime1)||!n.umod(e.prime2);)n=new r(i(t));return n}e.exports=o,o.getr=s}).call(this,n(11).Buffer)},function(e,t,n){"use strict";var r=t;r.version=n(233).version,r.utils=n(15),r.rand=n(69),r.curve=n(118),r.curves=n(72),r.ec=n(244),r.eddsa=n(248)},function(e,t,n){"use strict";var r,i=t,o=n(73),s=n(118),a=n(15).assert;function c(e){"short"===e.type?this.curve=new s.short(e):"edwards"===e.type?this.curve=new s.edwards(e):this.curve=new s.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,a(this.g.validate(),"Invalid curve"),a(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function f(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var n=new c(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:n}),n}})}i.PresetCurve=c,f("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),f("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),f("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),f("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),f("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),f("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),f("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=n(243)}catch(e){r=void 0}f("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})},function(e,t,n){var r=t;r.utils=n(17),r.common=n(33),r.sha=n(237),r.ripemd=n(241),r.hmac=n(242),r.sha1=r.sha.sha1,r.sha256=r.sha.sha256,r.sha224=r.sha.sha224,r.sha384=r.sha.sha384,r.sha512=r.sha.sha512,r.ripemd160=r.ripemd.ripemd160},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MemoryCryptoStore=void 0;var i=n(4),o=r(n(8));t.MemoryCryptoStore=class{constructor(){this._outgoingRoomKeyRequests=[],this._account=null,this._crossSigningKeys=null,this._sessions={},this._sessionProblems={},this._notifiedErrorDevices={},this._inboundGroupSessions={},this._inboundGroupSessionsWithheld={},this._deviceData=null,this._rooms={},this._sessionsNeedingBackup={}}deleteAllData(){return Promise.resolve()}getOrAddOutgoingRoomKeyRequest(e){const t=e.requestBody;return o.promiseTry(()=>{const n=this._getOutgoingRoomKeyRequest(t);return n?(i.logger.log("already have key request outstanding for "+`${t.room_id} / ${t.session_id}: `+"not sending another"),n):(i.logger.log(`enqueueing key request for ${t.room_id} / `+t.session_id),this._outgoingRoomKeyRequests.push(e),e)})}getOutgoingRoomKeyRequest(e){return Promise.resolve(this._getOutgoingRoomKeyRequest(e))}_getOutgoingRoomKeyRequest(e){for(const t of this._outgoingRoomKeyRequests)if(o.deepCompare(t.requestBody,e))return t;return null}getOutgoingRoomKeyRequestByState(e){for(const t of this._outgoingRoomKeyRequests)for(const n of e)if(t.state===n)return Promise.resolve(t);return Promise.resolve(null)}getOutgoingRoomKeyRequestsByTarget(e,t,n){const r=[];for(const i of this._outgoingRoomKeyRequests)for(const o of n)i.state===o&&i.recipients.includes({userId:e,deviceId:t})&&r.push(i);return Promise.resolve(r)}updateOutgoingRoomKeyRequest(e,t,n){for(const r of this._outgoingRoomKeyRequests)if(r.requestId===e)return r.state!=t?(i.logger.warn(`Cannot update room key request from ${t} `+`as it was already updated to ${r.state}`),Promise.resolve(null)):(Object.assign(r,n),Promise.resolve(r));return Promise.resolve(null)}deleteOutgoingRoomKeyRequest(e,t){for(let n=0;ne.time-t.time)}async getEndToEndSessionProblem(e,t){const n=this._sessionProblems[e]||[];if(!n.length)return null;const r=n[n.length-1];for(const e of n)if(e.time>t)return Object.assign({},e,{fixed:r.fixed});return r.fixed?null:r}async filterOutNotifiedErrorDevices(e){const t=this._notifiedErrorDevices,n=[];for(const r of e){const{userId:e,deviceInfo:i}=r;e in t?i.deviceId in t[e]||(n.push(r),t[e][i.deviceId]=!0):(n.push(r),t[e]={[i.deviceId]:!0})}return n}getEndToEndInboundGroupSession(e,t,n,r){const i=e+"/"+t;r(this._inboundGroupSessions[i]||null,this._inboundGroupSessionsWithheld[i]||null)}getAllEndToEndInboundGroupSessions(e,t){for(const e of Object.keys(this._inboundGroupSessions))t({senderKey:e.substr(0,43),sessionId:e.substr(44),sessionData:this._inboundGroupSessions[e]});t(null)}addEndToEndInboundGroupSession(e,t,n,r){const i=e+"/"+t;void 0===this._inboundGroupSessions[i]&&(this._inboundGroupSessions[i]=n)}storeEndToEndInboundGroupSession(e,t,n,r){this._inboundGroupSessions[e+"/"+t]=n}storeEndToEndInboundGroupSessionWithheld(e,t,n,r){const i=e+"/"+t;this._inboundGroupSessionsWithheld[i]=n}getEndToEndDeviceData(e,t){t(this._deviceData)}storeEndToEndDeviceData(e,t){this._deviceData=e}storeEndToEndRoom(e,t,n){this._rooms[e]=t}getEndToEndRooms(e,t){t(this._rooms)}getSessionsNeedingBackup(e){const t=[];for(const n in this._sessionsNeedingBackup)if(this._inboundGroupSessions[n]&&(t.push({senderKey:n.substr(0,43),sessionId:n.substr(44),sessionData:this._inboundGroupSessions[n]}),e&&n.length>=e))break;return Promise.resolve(t)}countSessionsNeedingBackup(){return Promise.resolve(Object.keys(this._sessionsNeedingBackup).length)}unmarkSessionsNeedingBackup(e){for(const t of e){const e=t.senderKey+"/"+t.sessionId;delete this._sessionsNeedingBackup[e]}return Promise.resolve()}markSessionsNeedingBackup(e){for(const t of e){const e=t.senderKey+"/"+t.sessionId;this._sessionsNeedingBackup[e]=!0}return Promise.resolve()}doTxn(e,t,n){return Promise.resolve(n(null))}}},function(e,t,n){"use strict";var r=n(275),i=n(276);function o(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}t.parse=v,t.resolve=function(e,t){return v(e,!1,!0).resolve(t)},t.resolveObject=function(e,t){return e?v(e,!1,!0).resolveObject(t):t},t.format=function(e){i.isString(e)&&(e=v(e));return e instanceof o?e.format():o.prototype.format.call(e)},t.Url=o;var s=/^([a-z0-9.+-]+:)/i,a=/:[0-9]*$/,c=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,f=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),l=["'"].concat(f),u=["%","/","?",";","#"].concat(l),d=["/","?","#"],h=/^[+a-z0-9A-Z_-]{0,63}$/,p=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,m={javascript:!0,"javascript:":!0},g={javascript:!0,"javascript:":!0},y={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},b=n(277);function v(e,t,n){if(e&&i.isObject(e)&&e instanceof o)return e;var r=new o;return r.parse(e,t,n),r}o.prototype.parse=function(e,t,n){if(!i.isString(e))throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var o=e.indexOf("?"),a=-1!==o&&o127?M+="x":M+=P[D];if(!M.match(h)){var B=C.slice(0,I),j=C.slice(I+1),U=P.match(p);U&&(B.push(U[1]),j.unshift(U[2])),j.length&&(v="/"+j.join(".")+v),this.hostname=B.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),R||(this.hostname=r.toASCII(this.hostname));var L=this.port?":"+this.port:"",F=this.hostname||"";this.host=F+L,this.href+=this.host,R&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==v[0]&&(v="/"+v))}if(!m[A])for(I=0,O=l.length;I0)&&n.host.split("@"))&&(n.auth=R.shift(),n.host=n.hostname=R.shift());return n.search=e.search,n.query=e.query,i.isNull(n.pathname)&&i.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.href=n.format(),n}if(!E.length)return n.pathname=null,n.search?n.path="/"+n.search:n.path=null,n.href=n.format(),n;for(var S=E.slice(-1)[0],T=(n.host||e.host||E.length>1)&&("."===S||".."===S)||""===S,I=0,x=E.length;x>=0;x--)"."===(S=E[x])?E.splice(x,1):".."===S?(E.splice(x,1),I++):I&&(E.splice(x,1),I--);if(!w&&!A)for(;I--;I)E.unshift("..");!w||""===E[0]||E[0]&&"/"===E[0].charAt(0)||E.unshift(""),T&&"/"!==E.join("/").substr(-1)&&E.push("");var R,C=""===E[0]||E[0]&&"/"===E[0].charAt(0);k&&(n.hostname=n.host=C?"":E.length?E.shift():"",(R=!!(n.host&&n.host.indexOf("@")>0)&&n.host.split("@"))&&(n.auth=R.shift(),n.host=n.hostname=R.shift()));return(w=w||n.host&&E.length)&&!C&&E.unshift(""),E.length?n.pathname=E.join("/"):(n.pathname=null,n.path=null),i.isNull(n.pathname)&&i.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.auth=e.auth||n.auth,n.slashes=n.slashes||e.slashes,n.href=n.format(),n},o.prototype.parseHost=function(){var e=this.host,t=a.exec(e);t&&(":"!==(t=t[0])&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PushProcessor=s;var r=n(8);const i=["override","content","room","sender","underride"],o=[{rule_id:".m.rule.tombstone",default:!0,enabled:!0,conditions:[{kind:"event_match",key:"type",pattern:"m.room.tombstone"},{kind:"event_match",key:"state_key",pattern:""}],actions:["notify",{set_tweak:"highlight",value:!0}]},{rule_id:".m.rule.reaction",default:!0,enabled:!0,conditions:[{kind:"event_match",key:"type",pattern:"m.reaction"}],actions:["dont_notify"]}];function s(e){const t={},n=(e,t,n)=>{for(let r=0;r]*)([0-9]*)$/);if(!o)return!1;const s=o[1],a=parseInt(o[2]);if(isNaN(a))return!1;switch(s){case"":case"==":return i==a;case"<":return i":return i>a;case"<=":return i<=a;case">=":return i>=a;default:return!1}},u=function(t,n){let i=n.getContent();if(n.isEncrypted()&&n.getClearContent()&&(i=n.getClearContent()),!i||!i.body||"string"!=typeof i.body)return!1;const o=e.getRoom(n.getRoomId());if(!(o&&o.currentState&&o.currentState.members&&o.currentState.getMember(e.credentials.userId)))return!1;const s=o.currentState.getMember(e.credentials.userId).name,a=new RegExp("(^|\\W)"+(0,r.escapeRegExp)(s)+"(\\W|$)","i");return i.body.search(a)>-1},d=function(e,t){return!1},h=function(e,t){if(!e.key)return!1;const n=m(e.key,t);if("string"!=typeof n)return!1;if(e.value)return e.value===n;let r;return r="content.body"==e.key?p("(^|\\W)",e.pattern,"(\\W|$)"):p("^",e.pattern,"$"),!!n.match(r)},p=function(e,n,i){return t[n]?t[n]:(t[n]=new RegExp(e+(0,r.globToRegexp)(n)+i,"i"),t[n])},m=function(e,t){const n=e.split(".");let i;const o=n[0];for("content"===o?(i=t.getContent(),n.shift()):"type"===o?(i=t.getType(),n.shift()):i=t.event;n.length>0;){const e=n.shift();if((0,r.isNullOrUndefined)(i[e]))return null;i=i[e]}return i},g=function(t,r){const i=function(t,r){if(!r||!r.device)return null;if(t.getSender()==e.credentials.userId)return null;const i=Object.keys(r.device);for(let e=0;et.rule_id===e.rule_id)){const t=e.rule_id;console.warn(`Adding default global override for ${t}`),n.push(e)}}return t}(e.pushRules);return g(t,n)},this.getPushRuleById=function(t){for(const n of["device","global"])if(void 0!==e.pushRules[n])for(const r of i)if(void 0!==e.pushRules[n][r])for(const i of e.pushRules[n][r])if(i.rule_id===t)return i;return null}}s.actionListToActionsObject=function(e){const t={notify:!1,tweaks:{}};for(let n=0;n{const t=o.find(t=>t.rule_id===e.rule_id);return t?(e.default=t.default,e.conditions=t.conditions,e.actions=t.actions,e):e}),t}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Filter=o;var r=n(283);function i(e,t,n){const r=t.split(".");let i=e;for(let e=0;et!==e)}if(r)return t+" ("+e+")";return t}(this.userId,e.getDirectionalContent().displayname,t),this.rawDisplayName=e.getDirectionalContent().displayname||this.userId,n!==this.membership&&(this._updateModifiedTime(),this.emit("RoomMember.membership",e,this,n)),r!==this.name&&(this._updateModifiedTime(),this.emit("RoomMember.name",e,this,r))},a.prototype.setPowerLevelEvent=function(e){if("m.room.power_levels"!==e.getType())return;const t=e.getDirectionalContent();let n=t.users_default||0;s.forEach(s.values(t.users),(function(e){n=Math.max(n,e)}));const r=this.powerLevel,i=this.powerLevelNorm;t.users&&void 0!==t.users[this.userId]?this.powerLevel=t.users[this.userId]:void 0!==t.users_default?this.powerLevel=t.users_default:this.powerLevel=0,this.powerLevelNorm=0,n>0&&(this.powerLevelNorm=100*this.powerLevel/n),r===this.powerLevel&&i===this.powerLevelNorm||(this._updateModifiedTime(),this.emit("RoomMember.powerLevel",e,this))},a.prototype.setTypingEvent=function(e){if("m.typing"!==e.getType())return;const t=this.typing;this.typing=!1;const n=e.getContent().user_ids;s.isArray(n)&&(-1!==n.indexOf(this.userId)&&(this.typing=!0),t!==this.typing&&(this._updateModifiedTime(),this.emit("RoomMember.typing",e,this)))},a.prototype._updateModifiedTime=function(){this._modified=Date.now()},a.prototype.getLastModifiedTime=function(){return this._modified},a.prototype.isKicked=function(){return"leave"===this.membership&&this.events.member.getSender()!==this.events.member.getStateKey()},a.prototype.getDMInviter=function(){if(this.events.member){const e=this.events.member;let t=e.getContent(),n=e.getSender();if("join"===t.membership&&(t=e.getPrevContent(),n=e.getUnsigned().prev_sender),"invite"===t.membership&&t.is_direct)return n}},a.prototype.getAvatarUrl=function(e,t,n,r,i,s){void 0===i&&(i=!0);const a=this.getMxcAvatarUrl();if(!a&&!i)return null;const c=(0,o.getHttpUriForMxc)(e,a,t,n,r,s);return c||(i?(0,o.getIdenticonUri)(e,this.userId,t,n):null)},a.prototype.getMxcAvatarUrl=function(){return this.events.member?this.events.member.getDirectionalContent().avatar_url:this.user?this.user.avatarUrl:null}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ReEmitter=void 0;t.ReEmitter=class{constructor(e){this.target=e,this.boundHandlers={}}_handleEvent(e,...t){this.target.emit(e,...t)}reEmit(e,t){const n=(t,...n)=>{t(...n,e)};for(const r of t){void 0===this.boundHandlers[r]&&(this.boundHandlers[r]=this._handleEvent.bind(this,r));const t=n.bind(this,this.boundHandlers[r]);e.on(r,t)}}}},function(e,t,n){"use strict";function r(e,t){const n=`Store is invalid because ${e}, `+"please stop the client, delete all data and start the client again",r=Reflect.construct(Error,[n]);return Reflect.setPrototypeOf(r,Reflect.getPrototypeOf(this)),r.reason=e,r.value=t,r}function i(e){const t=`Crypto store is invalid because ${e}, `+"please stop the client, delete all data and start the client again",n=Reflect.construct(Error,[t]);return Reflect.setPrototypeOf(n,Reflect.getPrototypeOf(this)),n.reason=e,n.name="InvalidCryptoStoreError",n}Object.defineProperty(t,"__esModule",{value:!0}),t.InvalidStoreError=r,t.InvalidCryptoStoreError=i,r.TOGGLED_LAZY_LOADING="TOGGLED_LAZY_LOADING",r.prototype=Object.create(Error.prototype,{constructor:{value:Error,enumerable:!1,writable:!0,configurable:!0}}),Reflect.setPrototypeOf(r,Error),i.TOO_NEW="TOO_NEW",i.prototype=Object.create(Error.prototype,{constructor:{value:Error,enumerable:!1,writable:!0,configurable:!0}}),Reflect.setPrototypeOf(i,Error)},function(e,t,n){"use strict";for(var r=/[\\\"\x00-\x1F]/g,i={},o=0;o<32;++o)i[String.fromCharCode(o)]="\\U"+("0000"+o.toString(16)).slice(-4).toUpperCase();function s(e){return r.lastIndex=0,e.replace(r,(function(e){return i[e]}))}function a(e){switch(typeof e){case"string":return'"'+s(e)+'"';case"number":return isFinite(e)?e:"null";case"boolean":return e;case"object":return null===e?"null":Array.isArray(e)?function(e){for(var t="[",n="",r=0;re+": "+t[e]).join(", "));return n+="]",n}(this,n)}}t.DecryptionError=o;class s extends Error{constructor(e,t){super(e),this.name="UnknownDeviceError",this.devices=t}}t.UnknownDeviceError=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VerificationRequest=t.PHASE_DONE=t.PHASE_CANCELLED=t.PHASE_STARTED=t.PHASE_REQUESTED=t.PHASE_UNSENT=t.DONE_TYPE=t.CANCEL_TYPE=t.START_TYPE=t.REQUEST_TYPE=t.EVENT_PREFIX=void 0;var r=n(4),i=n(303),o=n(10),s=n(37);const a="m.key.verification.";t.EVENT_PREFIX=a;const c=a+"request";t.REQUEST_TYPE=c;const f=a+"start";t.START_TYPE=f;const l=a+"cancel";t.CANCEL_TYPE=l;t.DONE_TYPE="m.key.verification.done";t.PHASE_UNSENT=1;t.PHASE_REQUESTED=2;t.PHASE_STARTED=4;t.PHASE_CANCELLED=5;t.PHASE_DONE=6;class u extends o.EventEmitter{constructor(e,t,n,r){super(),this.channel=e,this._verificationMethods=t,this._client=r,this._commonMethods=[],this._setPhase(1,!1),this._requestEvent=null,this._otherUserId=n,this._initiatedByMe=null,this._startTimestamp=null}static validateEvent(e,t,n,i){const o=t.getContent();if(!e.startsWith(a))return!1;if(e===c&&!Array.isArray(o.methods))return!1;if(!(e!==c&&e!==f||"string"==typeof o.from_device&&0!==o.from_device.length))return!1;if(Number.isFinite(n)){const e=Date.now()-n;if(e>597e3||e<-3e5)return r.logger.log("received verification that is too old or from the future"),!1}return!0}get methods(){return this._commonMethods}get timeout(){const e=Date.now()-this._startTimestamp;return Math.max(0,6e5-e)}get event(){return this._requestEvent}get phase(){return this._phase}get verifier(){return this._verifier}get pending(){return 1!==this._phase&&6!==this._phase&&5!==this._phase}get initiatedByMe(){return this._initiatedByMe}get requestingUserId(){return this.initiatedByMe?this._client.getUserId():this._otherUserId}get receivingUserId(){return this.initiatedByMe?this._otherUserId:this._client.getUserId()}beginKeyVerification(e,t=null){if(!this._verifier&&this._hasValidPreStartPhase()){if(this._commonMethods.length&&!this._commonMethods.includes(e))throw(0,s.newUnknownMethodError)();if(this._verifier=this._createVerifier(e,null,t),!this._verifier)throw(0,s.newUnknownMethodError)()}return this._verifier}async sendRequest(){if(1===this._phase){this._initiatedByMe=!0,this._setPhase(2,!1);const e=[...this._verificationMethods.keys()];await this.channel.send(c,{methods:e}),this.emit("change")}}async cancel({reason:e="User declined",code:t="m.user"}={}){if(5!==this._phase){if(this._verifier)return this._verifier.cancel((0,s.errorFactory)(t,e));this._setPhase(5,!1),await this.channel.send(l,{code:t,reason:e}),this.emit("change")}}waitForVerifier(){return this.verifier?Promise.resolve(this.verifier):new Promise(e=>{const t=()=>{this.verifier&&(this.off("change",t),e(this.verifier))};this.on("change",t)})}_setPhase(e,t=!0){this._phase=e,t&&this.emit("change")}async handleEvent(e,t,n){const r=t.getContent();e!==c&&e!==f||null===this._startTimestamp&&(this._startTimestamp=n),e===c?await this._handleRequest(r,t):e===f&&await this._handleStart(r,t),this._verifier&&(e===l||this._verifier.events&&this._verifier.events.includes(e))&&this._verifier.handleEvent(t),e===l?this._handleCancel():"m.key.verification.done"===e&&this._handleDone()}async _handleRequest(e,t){if(1===this._phase){const n=e.methods;this._commonMethods=n.filter(e=>this._verificationMethods.has(e)),this._requestEvent=t,this._initiatedByMe=this._wasSentByMe(t),this._setPhase(2)}else 2!==this._phase&&(r.logger.warn("Ignoring flagged verification request from "+t.getSender()),await this.cancel((0,s.errorFromEvent)((0,s.newUnexpectedMessageError)())))}_hasValidPreStartPhase(){return 2===this._phase||this.channel.constructor.canCreateRequest(f)&&1===this._phase}async _handleStart(e,t){if(this._hasValidPreStartPhase()){const{method:n}=e;this._verificationMethods.has(n)?(1===this.phase&&(this._initiatedByMe=this._wasSentByMe(t)),this._verifier=this._createVerifier(n,t),this._setPhase(4)):await this.cancel((0,s.errorFromEvent)((0,s.newUnknownMethodError)()))}}handleVerifierSend(e,t){e===l?this._handleCancel():e===f&&(1!==this._phase&&2!==this._phase||(this._initiatedByMe=1===this.phase,this._setPhase(4)))}_handleCancel(){5!==this._phase&&this._setPhase(5)}_handleDone(){4===this._phase&&this._setPhase(6)}_createVerifier(e,t=null,n=null){const r=t&&this._wasSentByMe(t),{userId:o,deviceId:s}=this._getVerifierTarget(t,n),a=this._verificationMethods.get(e);if(a)return new a(new i.RequestCallbackChannel(this,this.channel),this._client,o,s,r?null:t);console.warn("could not find verifier constructor for method",e)}_getVerifierTarget(e,t){if(t)return t;{let t;if(e&&!this._wasSentByMe(e))t=e;else{if(!this._requestEvent||this._wasSentByMe(this._requestEvent))throw new Error("can't determine who the verifier should be targeted at. No .request or .start event and no targetDevice");t=this._requestEvent}const n=t.getSender(),r=t.getContent();return{userId:n,deviceId:r&&r.from_device}}}_wasSentByMe(e){if(e.getSender()!==this._client.getUserId())return!1;const t=e.getContent();return!(!t||t.from_device!==this._client.getDeviceId())}}t.VerificationRequest=u},function(e,t,n){"use strict";var r=Object.prototype.hasOwnProperty,i=Array.isArray,o=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),s=function(e,t){for(var n=t&&t.plainObjects?Object.create(null):{},r=0;r1;){var t=e.pop(),n=t.obj[t.prop];if(i(n)){for(var r=[],o=0;o=48&&a<=57||a>=65&&a<=90||a>=97&&a<=122?i+=r.charAt(s):a<128?i+=o[a]:a<2048?i+=o[192|a>>6]+o[128|63&a]:a<55296||a>=57344?i+=o[224|a>>12]+o[128|a>>6&63]+o[128|63&a]:(s+=1,a=65536+((1023&a)<<10|1023&r.charCodeAt(s)),i+=o[240|a>>18]+o[128|a>>12&63]+o[128|a>>6&63]+o[128|63&a])}return i},isBuffer:function(e){return!(!e||"object"!=typeof e)&&!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},isRegExp:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},maybeMap:function(e,t){if(i(e)){for(var n=[],r=0;r"),P=s(")"),M=s("&");t.Base=o,t.DOMAIN=a,t.AT=c,t.COLON=f,t.DOT=l,t.PUNCTUATION=u,t.LOCALHOST=d,t.NL=h,t.NUM=p,t.PLUS=m,t.POUND=g,t.QUERY=v,t.PROTOCOL=y,t.MAILTO=b,t.SLASH=_,t.UNDERSCORE=w,t.SYM=A,t.TLD=E,t.WS=k,t.OPENBRACE=S,t.OPENBRACKET=T,t.OPENANGLEBRACKET=I,t.OPENPAREN=x,t.CLOSEBRACE=R,t.CLOSEBRACKET=C,t.CLOSEANGLEBRACKET=O,t.CLOSEPAREN=P,t.AMPERSAND=M},function(e,t,n){var r=n(171),i=n(172),o=n(173);e.exports=function(e){return r(e)||i(e)||o()}},function(e,t,n){"use strict";var r=n(0),i=n.n(r),o=(n(9),n(159)),s=n.n(o);t.a=function(e){var t=e.message,n=e.userId,r=e.botId,o=e.client,a=function(){switch(t.sender){case"from-me":case n:return"from-me";case r:return"from-bot";default:return"from-support"}};if(e.placeholder)return i.a.createElement("div",{className:"message from-me placeholder"},i.a.createElement("div",{className:"text"},t.content.body));if("m.file"===t.content.msgtype){var c=o.mxcUrlToHttp(t.content.url);return(i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text"},i.a.createElement("a",{href:c,target:"_blank",rel:"noopener noreferrer"},t.content.body))))}if(t.content.formatted_body)return i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text",dangerouslySetInnerHTML:{__html:t.content.formatted_body}}));return i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text"},i.a.createElement(s.a,{options:{linkAttributes:{rel:"noreferrer noopener"}}},t.content.body)))}},function(e,t,n){"use strict";var r=n(0),i=n.n(r);n(9);t.a=function(e){var t=e.handleToggleOpen,n=e.handleExitChat,r=e.opened;return(i.a.createElement("div",{className:"widget-header"},i.a.createElement("button",{type:"button",className:"widget-header-minimize",onClick:t,onKeyPress:t,"aria-label":"Minimize the chat window",title:"Minimize the chat window"},i.a.createElement("span",{className:"btn-icon arrow ".concat(r?"opened":"closed")},"⌃"),i.a.createElement("span",null,"".concat(r?"Hide":"Show"," the chat"))),i.a.createElement("button",{type:"button",className:"widget-header-close",onClick:n,onKeyPress:n,"aria-label":"Exit the chat",title:"Exit the chat"},i.a.createElement("span",{className:"btn-icon"},"×"))))}},function(e,t,n){"use strict";e.exports=n(167)},function(e,t){function n(t){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?e.exports=n=function(e){return typeof e}:e.exports=n=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(t)}e.exports=n},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){"use strict";(function(t,r){var i=n(44);e.exports=v;var o,s=n(91);v.ReadableState=b;n(10).EventEmitter;var a=function(e,t){return e.listeners(t).length},c=n(93),f=n(60).Buffer,l=t.Uint8Array||function(){};var u=Object.create(n(30));u.inherits=n(2);var d=n(186),h=void 0;h=d&&d.debuglog?d.debuglog("stream"):function(){};var p,m=n(187),g=n(94);u.inherits(v,c);var y=["error","close","destroy","pause","resume"];function b(e,t){e=e||{};var r=t instanceof(o=o||n(21));this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var i=e.highWaterMark,s=e.readableHighWaterMark,a=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(s||0===s)?s:a,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,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=n(62).StringDecoder),this.decoder=new p(e.encoding),this.encoding=e.encoding)}function v(e){if(o=o||n(21),!(this instanceof v))return new v(e);this._readableState=new b(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 _(e,t,n,r,i){var o,s=e._readableState;null===t?(s.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,E(e)}(e,s)):(i||(o=function(e,t){var n;r=t,f.isBuffer(r)||r instanceof l||"string"==typeof t||void 0===t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk"));var r;return n}(s,t)),o?e.emit("error",o):s.objectMode||t&&t.length>0?("string"==typeof t||s.objectMode||Object.getPrototypeOf(t)===f.prototype||(t=function(e){return f.from(e)}(t)),r?s.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):w(e,s,t,!0):s.ended?e.emit("error",new Error("stream.push() after EOF")):(s.reading=!1,s.decoder&&!n?(t=s.decoder.write(t),s.objectMode||0!==t.length?w(e,s,t,!1):S(e,s)):w(e,s,t,!1))):r||(s.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=8388608?e=8388608:(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 E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(h("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i.nextTick(k,e):k(e))}function k(e){h("emit readable"),e.emit("readable"),R(e)}function S(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(T,e,t))}function T(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;eo.length?o.length:e;if(s===o.length?i+=o:i+=o.slice(0,e),0===(e-=s)){s===o.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=o.slice(s));break}++r}return t.length-=r,i}(e,t):function(e,t){var n=f.allocUnsafe(e),r=t.head,i=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var o=r.data,s=e>o.length?o.length:e;if(o.copy(n,n.length-e,0,s),0===(e-=s)){s===o.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=o.slice(s));break}++i}return t.length-=i,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function O(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i.nextTick(P,t,e))}function P(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function M(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return h("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?O(this):E(this),null;if(0===(e=A(e,t))&&t.ended)return 0===t.length&&O(this),null;var r,i=t.needReadable;return h("need readable",i),(0===t.length||t.length-e0?C(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&O(this)),null!==r&&this.emit("data",r),r},v.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},v.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,h("pipe count=%d opts=%j",o.pipesCount,t);var c=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?l:v;function f(t,r){h("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,h("cleanup"),e.removeListener("close",y),e.removeListener("finish",b),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",f),n.removeListener("end",l),n.removeListener("end",v),n.removeListener("data",m),d=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){h("onend"),e.end()}o.endEmitted?i.nextTick(c):n.once("end",c),e.on("unpipe",f);var u=function(e){return function(){var t=e._readableState;h("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,R(e))}}(n);e.on("drain",u);var d=!1;var p=!1;function m(t){h("ondata"),p=!1,!1!==e.write(t)||p||((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==M(o.pipes,e))&&!d&&(h("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,p=!0),n.pause())}function g(t){h("onerror",t),v(),e.removeListener("error",g),0===a(e,"error")&&e.emit("error",t)}function y(){e.removeListener("finish",b),v()}function b(){h("onfinish"),e.removeListener("close",y),v()}function v(){h("unpipe"),n.unpipe(e)}return n.on("data",m),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?s(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",g),e.once("close",y),e.once("finish",b),e.emit("pipe",n),o.flowing||(h("pipe resume"),n.resume()),e},v.prototype.unpipe=function(e){var t=this._readableState,n={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,n),this);if(!e){var r=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o=this._blockSize;){for(var o=this._blockOffset;o0;++s)this._length[s]+=a,(a=this._length[s]/4294967296|0)>0&&(this._length[s]-=4294967296*a);return this},o.prototype._update=function(){throw new Error("_update is not implemented")},o.prototype.digest=function(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 n=0;n<4;++n)this._length[n]=0;return t},o.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=o},function(e,t,n){var r=n(2),i=n(24),o=n(3).Buffer,s=[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],a=new Array(64);function c(){this.init(),this._w=a,i.call(this,64,56)}function f(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function u(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function d(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function h(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}r(c,i),c.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},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,i=0|this._b,o=0|this._c,a=0|this._d,c=0|this._e,p=0|this._f,m=0|this._g,g=0|this._h,y=0;y<16;++y)n[y]=e.readInt32BE(4*y);for(;y<64;++y)n[y]=0|(((t=n[y-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+n[y-7]+h(n[y-15])+n[y-16];for(var b=0;b<64;++b){var v=g+d(c)+f(c,p,m)+s[b]+n[b]|0,_=u(r)+l(r,i,o)|0;g=m,m=p,p=c,c=a+v|0,a=o,o=i,i=r,r=v+_|0}this._a=r+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=a+this._d|0,this._e=c+this._e|0,this._f=p+this._f|0,this._g=m+this._g|0,this._h=g+this._h|0},c.prototype._hash=function(){var e=o.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=c},function(e,t,n){var r=n(2),i=n(24),o=n(3).Buffer,s=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],a=new Array(160);function c(){this.init(),this._w=a,i.call(this,128,112)}function f(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function u(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function d(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function h(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function m(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function g(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}r(c,i),c.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},c.prototype._update=function(e){for(var t=this._w,n=0|this._ah,r=0|this._bh,i=0|this._ch,o=0|this._dh,a=0|this._eh,c=0|this._fh,b=0|this._gh,v=0|this._hh,_=0|this._al,w=0|this._bl,A=0|this._cl,E=0|this._dl,k=0|this._el,S=0|this._fl,T=0|this._gl,I=0|this._hl,x=0;x<32;x+=2)t[x]=e.readInt32BE(4*x),t[x+1]=e.readInt32BE(4*x+4);for(;x<160;x+=2){var R=t[x-30],C=t[x-30+1],O=h(R,C),P=p(C,R),M=m(R=t[x-4],C=t[x-4+1]),D=g(C,R),N=t[x-14],B=t[x-14+1],j=t[x-32],U=t[x-32+1],L=P+B|0,F=O+N+y(L,P)|0;F=(F=F+M+y(L=L+D|0,D)|0)+j+y(L=L+U|0,U)|0,t[x]=F,t[x+1]=L}for(var q=0;q<160;q+=2){F=t[q],L=t[q+1];var z=l(n,r,i),K=l(_,w,A),G=u(n,_),H=u(_,n),V=d(a,k),Q=d(k,a),W=s[q],Y=s[q+1],X=f(a,c,b),J=f(k,S,T),Z=I+Q|0,$=v+V+y(Z,I)|0;$=($=($=$+X+y(Z=Z+J|0,J)|0)+W+y(Z=Z+Y|0,Y)|0)+F+y(Z=Z+L|0,L)|0;var ee=H+K|0,te=G+z+y(ee,H)|0;v=b,I=T,b=c,T=S,c=a,S=k,a=o+$+y(k=E+Z|0,E)|0,o=i,E=A,i=r,A=w,r=n,w=_,n=$+te+y(_=Z+ee|0,Z)|0}this._al=this._al+_|0,this._bl=this._bl+w|0,this._cl=this._cl+A|0,this._dl=this._dl+E|0,this._el=this._el+k|0,this._fl=this._fl+S|0,this._gl=this._gl+T|0,this._hl=this._hl+I|0,this._ah=this._ah+n+y(this._al,_)|0,this._bh=this._bh+r+y(this._bl,w)|0,this._ch=this._ch+i+y(this._cl,A)|0,this._dh=this._dh+o+y(this._dl,E)|0,this._eh=this._eh+a+y(this._el,k)|0,this._fh=this._fh+c+y(this._fl,S)|0,this._gh=this._gh+b+y(this._gl,T)|0,this._hh=this._hh+v+y(this._hl,I)|0},c.prototype._hash=function(){var e=o.allocUnsafe(64);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=c},function(e,t,n){"use strict";var r=n(2),i=n(208),o=n(18),s=n(3).Buffer,a=n(101),c=n(64),f=n(65),l=s.alloc(128);function u(e,t){o.call(this,"digest"),"string"==typeof t&&(t=s.from(t));var n="sha512"===e||"sha384"===e?128:64;(this._alg=e,this._key=t,t.length>n)?t=("rmd160"===e?new c:f(e)).update(t).digest():t.lengthn||o!=o)throw new TypeError("Bad key length")}}).call(this,n(11).Buffer)},function(e,t,n){(function(t){var n;t.browser?n="utf-8":n=parseInt(t.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary";e.exports=n}).call(this,n(13))},function(e,t,n){var r=n(101),i=n(64),o=n(65),s=n(104),a=n(105),c=n(3).Buffer,f=c.alloc(128),l={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function u(e,t,n){var s=function(e){function t(t){return o(e).update(t).digest()}return"rmd160"===e||"ripemd160"===e?function(e){return(new i).update(e).digest()}:"md5"===e?r:t}(e),a="sha512"===e||"sha384"===e?128:64;t.length>a?t=s(t):t.length>>0},t.writeUInt32BE=function(e,t,n){e[0+n]=t>>>24,e[1+n]=t>>>16&255,e[2+n]=t>>>8&255,e[3+n]=255&t},t.ip=function(e,t,n,r){for(var i=0,o=0,s=6;s>=0;s-=2){for(var a=0;a<=24;a+=8)i<<=1,i|=t>>>a+s&1;for(a=0;a<=24;a+=8)i<<=1,i|=e>>>a+s&1}for(s=6;s>=0;s-=2){for(a=1;a<=25;a+=8)o<<=1,o|=t>>>a+s&1;for(a=1;a<=25;a+=8)o<<=1,o|=e>>>a+s&1}n[r+0]=i>>>0,n[r+1]=o>>>0},t.rip=function(e,t,n,r){for(var i=0,o=0,s=0;s<4;s++)for(var a=24;a>=0;a-=8)i<<=1,i|=t>>>a+s&1,i<<=1,i|=e>>>a+s&1;for(s=4;s<8;s++)for(a=24;a>=0;a-=8)o<<=1,o|=t>>>a+s&1,o<<=1,o|=e>>>a+s&1;n[r+0]=i>>>0,n[r+1]=o>>>0},t.pc1=function(e,t,n,r){for(var i=0,o=0,s=7;s>=5;s--){for(var a=0;a<=24;a+=8)i<<=1,i|=t>>a+s&1;for(a=0;a<=24;a+=8)i<<=1,i|=e>>a+s&1}for(a=0;a<=24;a+=8)i<<=1,i|=t>>a+s&1;for(s=1;s<=3;s++){for(a=0;a<=24;a+=8)o<<=1,o|=t>>a+s&1;for(a=0;a<=24;a+=8)o<<=1,o|=e>>a+s&1}for(a=0;a<=24;a+=8)o<<=1,o|=e>>a+s&1;n[r+0]=i>>>0,n[r+1]=o>>>0},t.r28shl=function(e,t){return e<>>28-t};var r=[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,n,i){for(var o=0,s=0,a=r.length>>>1,c=0;c>>r[c]&1;for(c=a;c>>r[c]&1;n[i+0]=o>>>0,n[i+1]=s>>>0},t.expand=function(e,t,n){var r=0,i=0;r=(1&e)<<5|e>>>27;for(var o=23;o>=15;o-=4)r<<=6,r|=e>>>o&63;for(o=11;o>=3;o-=4)i|=e>>>o&63,i<<=6;i|=(31&e)<<1|e>>>31,t[n+0]=r>>>0,t[n+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 n=0,r=0;r<4;r++){n<<=4,n|=i[64*r+(e>>>18-6*r&63)]}for(r=0;r<4;r++){n<<=4,n|=i[256+64*r+(t>>>18-6*r&63)]}return n>>>0};var o=[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,n=0;n>>o[n]&1;return t>>>0},t.padSplit=function(e,t,n){for(var r=e.toString(2);r.length>>1];n=o.r28shl(n,a),i=o.r28shl(i,a),o.pc2(n,i,e.keys,s)}},c.prototype._update=function(e,t,n,r){var i=this._desState,s=o.readUInt32BE(e,t),a=o.readUInt32BE(e,t+4);o.ip(s,a,i.tmp,0),s=i.tmp[0],a=i.tmp[1],"encrypt"===this.type?this._encrypt(i,s,a,i.tmp,0):this._decrypt(i,s,a,i.tmp,0),s=i.tmp[0],a=i.tmp[1],o.writeUInt32BE(n,s,r),o.writeUInt32BE(n,a,r+4)},c.prototype._pad=function(e,t){for(var n=e.length-t,r=t;r>>0,s=d}o.rip(a,s,r,i)},c.prototype._decrypt=function(e,t,n,r,i){for(var s=n,a=t,c=e.keys.length-2;c>=0;c-=2){var f=e.keys[c],l=e.keys[c+1];o.expand(s,e.tmp,0),f^=e.tmp[0],l^=e.tmp[1];var u=o.substitute(f,l),d=s;s=(a^o.permute(u))>>>0,a=d}o.rip(s,a,r,i)}},function(e,t,n){var r=n(32),i=n(3).Buffer,o=n(110);function s(e){var t=e._cipher.encryptBlockRaw(e._prev);return o(e._prev),t}t.encrypt=function(e,t){var n=Math.ceil(t.length/16),o=e._cache.length;e._cache=i.concat([e._cache,i.allocUnsafe(16*n)]);for(var a=0;ae;)n.ishrn(1);if(n.isEven()&&n.iadd(a),n.testn(1)||n.iadd(c),t.cmp(c)){if(!t.cmp(f))for(;n.mod(l).cmp(u);)n.iadd(h)}else for(;n.mod(o).cmp(d);)n.iadd(h);if(g(p=n.shrn(1))&&g(n)&&y(p)&&y(n)&&s.test(p)&&s.test(n))return n}}},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){var r=n(12),i=n(69);function o(e){this.rand=e||new i.Rand}e.exports=o,o.create=function(e){return new o(e)},o.prototype._randbelow=function(e){var t=e.bitLength(),n=Math.ceil(t/8);do{var i=new r(this.rand.generate(n))}while(i.cmp(e)>=0);return i},o.prototype._randrange=function(e,t){var n=t.sub(e);return e.add(this._randbelow(n))},o.prototype.test=function(e,t,n){var i=e.bitLength(),o=r.mont(e),s=new r(1).toRed(o);t||(t=Math.max(1,i/48|0));for(var a=e.subn(1),c=0;!a.testn(c);c++);for(var f=e.shrn(c),l=a.toRed(o);t>0;t--){var u=this._randrange(new r(2),a);n&&n(u);var d=u.toRed(o).redPow(f);if(0!==d.cmp(s)&&0!==d.cmp(l)){for(var h=1;h0;t--){var l=this._randrange(new r(2),s),u=e.gcd(l);if(0!==u.cmpn(1))return u;var d=l.toRed(i).redPow(c);if(0!==d.cmp(o)&&0!==d.cmp(f)){for(var h=1;h>8,s=255&i;o?n.push(o,s):n.push(s)}return n},r.zero2=i,r.toHex=o,r.encode=function(e,t){return"hex"===t?o(e):e}},function(e,t,n){"use strict";var r=t;r.base=n(47),r.short=n(234),r.mont=n(235),r.edwards=n(236)},function(e,t,n){"use strict";var r=n(17).rotr32;function i(e,t,n){return e&t^~e&n}function o(e,t,n){return e&t^e&n^t&n}function s(e,t,n){return e^t^n}t.ft_1=function(e,t,n,r){return 0===e?i(t,n,r):1===e||3===e?s(t,n,r):2===e?o(t,n,r):void 0},t.ch32=i,t.maj32=o,t.p32=s,t.s0_256=function(e){return r(e,2)^r(e,13)^r(e,22)},t.s1_256=function(e){return r(e,6)^r(e,11)^r(e,25)},t.g0_256=function(e){return r(e,7)^r(e,18)^e>>>3},t.g1_256=function(e){return r(e,17)^r(e,19)^e>>>10}},function(e,t,n){"use strict";var r=n(17),i=n(33),o=n(119),s=n(14),a=r.sum32,c=r.sum32_4,f=r.sum32_5,l=o.ch32,u=o.maj32,d=o.s0_256,h=o.s1_256,p=o.g0_256,m=o.g1_256,g=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 b(){if(!(this instanceof b))return new b;g.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=y,this.W=new Array(64)}r.inherits(b,g),e.exports=b,b.blockSize=512,b.outSize=256,b.hmacStrength=192,b.padLength=64,b.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r>6],i=0==(32&n);if(31==(31&n)){var o=n;for(n=0;128==(128&o);){if(o=e.readUInt8(t),e.isError(o))return o;n<<=7,n|=127&o}}else n&=31;return{cls:r,primitive:i,tag:n,tagStr:a.tag[n]}}function u(e,t,n){var r=e.readUInt8(n);if(e.isError(r))return r;if(!t&&128===r)return null;if(0==(128&r))return r;var i=127&r;if(i>4)return e.error("length octect is too long");r=0;for(var o=0;o=31)return r.error("Multi-octet tag encoding unsupported");t||(i|=32);return i|=a.tagClassByName[n||"universal"]<<6}(e,t,n,this.reporter);if(r.length<128)return(o=new i(2))[0]=s,o[1]=r.length,this._createEncoderBuffer([o,r]);for(var c=1,f=r.length;f>=256;f>>=8)c++;(o=new i(2+c))[0]=s,o[1]=128|c;f=1+c;for(var l=r.length;l>0;f--,l>>=8)o[f]=255&l;return this._createEncoderBuffer([o,r])},f.prototype._encodeStr=function(e,t){if("bitstr"===t)return this._createEncoderBuffer([0|e.unused,e.data]);if("bmpstr"===t){for(var n=new i(2*e.length),r=0;r=40)return this.reporter.error("Second objid identifier OOB");e.splice(0,2,40*e[0]+e[1])}var o=0;for(r=0;r=128;s>>=7)o++}var a=new i(o),c=a.length-1;for(r=e.length-1;r>=0;r--){s=e[r];for(a[c--]=127&s;(s>>=7)>0;)a[c--]=128|127&s}return this._createEncoderBuffer(a)},f.prototype._encodeTime=function(e,t){var n,r=new Date(e);return"gentime"===t?n=[l(r.getFullYear()),l(r.getUTCMonth()+1),l(r.getUTCDate()),l(r.getUTCHours()),l(r.getUTCMinutes()),l(r.getUTCSeconds()),"Z"].join(""):"utctime"===t?n=[l(r.getFullYear()%100),l(r.getUTCMonth()+1),l(r.getUTCDate()),l(r.getUTCHours()),l(r.getUTCMinutes()),l(r.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+t+" time is not supported yet"),this._encodeStr(n,"octstr")},f.prototype._encodeNull=function(){return this._createEncoderBuffer("")},f.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 n=e.toArray();!e.sign&&128&n[0]&&n.unshift(0),e=new i(n)}if(i.isBuffer(e)){var r=e.length;0===e.length&&r++;var o=new i(r);return e.copy(o),0===e.length&&(o[0]=0),this._createEncoderBuffer(o)}if(e<128)return this._createEncoderBuffer(e);if(e<256)return this._createEncoderBuffer([0,e]);r=1;for(var s=e;s>=256;s>>=8)r++;for(s=(o=new Array(r)).length-1;s>=0;s--)o[s]=255&e,e>>=8;return 128&o[0]&&o.unshift(0),this._createEncoderBuffer(new i(o))},f.prototype._encodeBool=function(e){return this._createEncoderBuffer(e?255:0)},f.prototype._use=function(e,t){return"function"==typeof e&&(e=e(t)),e._getEncoder("der").tree},f.prototype._skipDefault=function(e,t,n){var r,i=this._baseState;if(null===i.default)return!1;var o=e.join();if(void 0===i.defaultBuffer&&(i.defaultBuffer=this._encodeValue(i.default,t,n).join()),o.length!==i.defaultBuffer.length)return!1;for(r=0;r(0,o.default)(n(138)));let P;t.ContentHelpers=O;let M=()=>new s.MemoryCryptoStore}).call(this,n(6))},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MemoryStore=s;var i=n(49),o=r(n(8));function s(e){e=e||{},this.rooms={},this.groups={},this.users={},this.syncToken=null,this.filters={},this.accountData={},this.localStorage=e.localStorage,this._oobMembers={},this._clientOptions={}}s.prototype={getSyncToken:function(){return this.syncToken},isNewlyCreated:function(){return Promise.resolve(!0)},setSyncToken:function(e){this.syncToken=e},storeGroup:function(e){this.groups[e.groupId]=e},getGroup:function(e){return this.groups[e]||null},getGroups:function(){return o.values(this.groups)},storeRoom:function(e){this.rooms[e.roomId]=e,e.currentState.on("RoomState.members",this._onRoomMember.bind(this));const t=this;e.currentState.getMembers().forEach((function(n){t._onRoomMember(null,e.currentState,n)}))},_onRoomMember:function(e,t,n){if("invite"===n.membership)return;const r=this.users[n.userId]||new i.User(n.userId);n.name&&(r.setDisplayName(n.name),n.events.member&&r.setRawDisplayName(n.events.member.getDirectionalContent().displayname)),n.events.member&&n.events.member.getContent().avatar_url&&r.setAvatarUrl(n.events.member.getContent().avatar_url),this.users[r.userId]=r},getRoom:function(e){return this.rooms[e]||null},getRooms:function(){return o.values(this.rooms)},removeRoom:function(e){this.rooms[e]&&this.rooms[e].removeListener("RoomState.members",this._onRoomMember),delete this.rooms[e]},getRoomSummaries:function(){return o.map(o.values(this.rooms),(function(e){return e.summary}))},storeUser:function(e){this.users[e.userId]=e},getUser:function(e){return this.users[e]||null},getUsers:function(){return o.values(this.users)},scrollback:function(e,t){return[]},storeEvents:function(e,t,n,r){},storeFilter:function(e){e&&(this.filters[e.userId]||(this.filters[e.userId]={}),this.filters[e.userId][e.filterId]=e)},getFilter:function(e,t){return this.filters[e]&&this.filters[e][t]?this.filters[e][t]:null},getFilterIdByName:function(e){if(!this.localStorage)return null;try{return this.localStorage.getItem("mxjssdk_memory_filter_"+e)}catch(e){}return null},setFilterIdByName:function(e,t){if(this.localStorage)try{this.localStorage.setItem("mxjssdk_memory_filter_"+e,t)}catch(e){}},storeAccountDataEvents:function(e){const t=this;e.forEach((function(e){t.accountData[e.getType()]=e}))},getAccountData:function(e){return this.accountData[e]},setSyncData:function(e){return Promise.resolve()},wantsSave:function(){return!1},save:function(e){},startup:function(){return Promise.resolve()},getSavedSync:function(){return Promise.resolve(null)},getSavedSyncToken:function(){return Promise.resolve(null)},deleteAllData:function(){return this.rooms={},this.users={},this.syncToken=null,this.filters={},this.accountData={},Promise.resolve()},getOutOfBandMembers:function(e){return Promise.resolve(this._oobMembers[e]||null)},setOutOfBandMembers:function(e,t){return this._oobMembers[e]=t,Promise.resolve()},clearOutOfBandMembers:function(){return this._oobMembers={},Promise.resolve()},getClientOptions:function(){return Promise.resolve(this._clientOptions)},storeClientOptions:function(e){return this._clientOptions=Object.assign({},e),Promise.resolve()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SERVICE_TYPES=void 0;const r=Object.freeze({IS:"SERVICE_TYPE_IS",IM:"SERVICE_TYPE_IM"});t.SERVICE_TYPES=r},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.Room=g;var i=n(10),o=n(134),s=n(25),a=n(51),c=r(n(8)),f=n(19),l=n(78),u=n(286),d=n(4),h=n(79);const p=["1","2","3","4","5"];function m(e,t,n){const r={content:{},type:"m.receipt",room_id:t.getRoomId()};return r.content[t.getId()]={},r.content[t.getId()][n]={},r.content[t.getId()][n][e]={ts:t.getTs()},new f.MatrixEvent(r)}function g(e,t,n,r){if((r=r||{}).pendingEventOrdering=r.pendingEventOrdering||"chronological",this.reEmitter=new h.ReEmitter(this),-1===["chronological","detached"].indexOf(r.pendingEventOrdering))throw new Error("opts.pendingEventOrdering MUST be either 'chronological' or 'detached'. Got: '"+r.pendingEventOrdering+"'");this.myUserId=n,this.roomId=e,this.name=e,this.tags={},this.accountData={},this.summary=null,this.storageToken=r.storageToken,this._opts=r,this._txnToEvent={},this._receipts={},this._receiptCacheByEventId={},this._realReceipts={},this._notificationCounts={},this._timelineSets=[new o.EventTimelineSet(this,r)],this.reEmitter.reEmit(this.getUnfilteredTimelineSet(),["Room.timeline","Room.timelineReset"]),this._fixUpLegacyTimelineFields(),this._filteredTimelineSets={},"detached"==this._opts.pendingEventOrdering&&(this._pendingEventList=[]),this._blacklistUnverifiedDevices=null,this._selfMembership=null,this._summaryHeroes=null,this._client=t,this._opts.lazyLoadMembers?this._membersPromise=null:this._membersPromise=Promise.resolve()}c.inherits(g,i.EventEmitter),g.prototype.getVersion=function(){const e=this.currentState.getStateEvents("m.room.create","");if(!e)return d.logger.warn("Room "+this.room_id+" does not have an m.room.create event"),"1";const t=e.getContent().room_version;return void 0===t?"1":t},g.prototype.shouldUpgradeToVersion=function(){return p.includes(this.getVersion())?null:"5"},g.prototype.getRecommendedVersion=async function(){let e=(await this._client.getCapabilities())["m.room_versions"];if(!e){e={default:"5",available:{}};for(const t of p)e.available[t]="stable"}let t=this._checkVersionAgainstCapability(e);if(t.urgent&&t.needsUpgrade){if(d.logger.warn("Refreshing room version capability because the server looks to be supporting a newer room version we don't know about."),e=(await this._client.getCapabilities(!0))["m.room_versions"],!e)return d.logger.warn("No room version capability - assuming upgrade required."),t;t=this._checkVersionAgainstCapability(e)}return t},g.prototype._checkVersionAgainstCapability=function(e){const t=this.getVersion();d.logger.log(`[${this.roomId}] Current version: ${t}`),d.logger.log(`[${this.roomId}] Version capability: `,e);const n={version:t,needsUpgrade:!1,urgent:!1};return t===e.default?n:Object.keys(e.available).filter(t=>"stable"===e.available[t]).includes(t)?n:(n.version=e.default,n.needsUpgrade=!0,n.urgent=!!this.getVersion().match(/^[0-9]+[0-9.]*$/g),n.urgent?d.logger.warn(`URGENT upgrade required on ${this.roomId}`):d.logger.warn(`Non-urgent upgrade required on ${this.roomId}`),n)},g.prototype.userMayUpgradeRoom=function(e){return this.currentState.maySendStateEvent("m.room.tombstone",e)},g.prototype.getPendingEvents=function(){if("detached"!==this._opts.pendingEventOrdering)throw new Error("Cannot call getPendingEvents with pendingEventOrdering == "+this._opts.pendingEventOrdering);return this._pendingEventList},g.prototype.hasPendingEvent=function(e){if("detached"!==this._opts.pendingEventOrdering)throw new Error("Cannot call hasPendingEvent with pendingEventOrdering == "+this._opts.pendingEventOrdering);return this._pendingEventList.some(t=>t.getId()===e)},g.prototype.getLiveTimeline=function(){return this.getUnfilteredTimelineSet().getLiveTimeline()},g.prototype.getLastActiveTimestamp=function(){const e=this.getLiveTimeline().getEvents();if(e.length){return e[e.length-1].getTs()}return Number.MIN_SAFE_INTEGER},g.prototype.getMyMembership=function(){return this._selfMembership},g.prototype.getDMInviter=function(){if(this.myUserId){const e=this.getMember(this.myUserId);if(e)return e.getDMInviter()}if("invite"===this._selfMembership){if(2==this.getInvitedAndJoinedMemberCount()&&this._summaryHeroes.length)return this._summaryHeroes[0]}},g.prototype.guessDMUserId=function(){const e=this.getMember(this.myUserId);if(e){const t=e.getDMInviter();if(t)return t}if(Array.isArray(this._summaryHeroes)&&this._summaryHeroes.length)return this._summaryHeroes[0];const t=this.currentState.getMembers().find(e=>e.userId!==this.myUserId);return t?t.userId:this.myUserId},g.prototype.getAvatarFallbackMember=function(){if(this.getInvitedAndJoinedMemberCount()>2)return;const e=Array.isArray(this._summaryHeroes)&&this._summaryHeroes.length;if(e){const e=this._summaryHeroes.map(e=>this.getMember(e)).find(e=>!!e);if(e)return e}const t=this.currentState.getMembers();if(t.length<=2){const e=t.find(e=>e.userId!==this.myUserId);if(e)return e}if(e){const e=this._summaryHeroes.map(e=>this._client.getUser(e)).find(e=>!!e);if(e){const t=new l.RoomMember(this.roomId,e.userId);return t.user=e,t}}},g.prototype.updateMyMembership=function(e){const t=this._selfMembership;this._selfMembership=e,t!==e&&("leave"===e&&this._cleanupAfterLeaving(),this.emit("Room.myMembership",this,e,t))},g.prototype._loadMembersFromServer=async function(){const e=this._client.store.getSyncToken(),t=c.encodeParams({not_membership:"leave",at:e}),n=c.encodeUri("/rooms/$roomId/members?"+t,{$roomId:this.roomId}),r=this._client._http;return(await r.authedRequest(void 0,"GET",n)).chunk},g.prototype._loadMembers=async function(){let e=!1,t=await this._client.store.getOutOfBandMembers(this.roomId);return null===t&&(e=!0,t=await this._loadMembersFromServer(),d.logger.log(`LL: got ${t.length} `+`members from server for room ${this.roomId}`)),{memberEvents:t.map(this._client.getEventMapper()),fromServer:e}},g.prototype.loadMembersIfNeeded=function(){if(this._membersPromise)return this._membersPromise;this.currentState.markOutOfBandMembersStarted();const e=this._loadMembers().then(e=>(this.currentState.setOutOfBandMembers(e.memberEvents),this._client.isCryptoEnabled()&&this._client.isRoomEncrypted(this.roomId)&&this._client._crypto.trackRoomDevices(this.roomId),e.fromServer)).catch(e=>{throw this._membersPromise=null,this.currentState.markOutOfBandMembersFailed(),e});return e.then(e=>{if(e){const e=this.currentState.getMembers().filter(e=>e.isOutOfBand()).map(e=>e.events.member.event);return d.logger.log(`LL: telling store to write ${e.length}`+` members for room ${this.roomId}`),this._client.store.setOutOfBandMembers(this.roomId,e).catch(e=>{d.logger.log("LL: storing OOB room members failed, oh well",e)})}}).catch(e=>{d.logger.error(e)}),this._membersPromise=e,this._membersPromise},g.prototype.clearLoadedMembersIfNeeded=async function(){this._opts.lazyLoadMembers&&this._membersPromise&&(await this.loadMembersIfNeeded(),await this._client.store.clearOutOfBandMembers(this.roomId),this.currentState.clearOutOfBandMembers(),this._membersPromise=null)},g.prototype._cleanupAfterLeaving=function(){this.clearLoadedMembersIfNeeded().catch(e=>{d.logger.error("error after clearing loaded members from "+`room ${this.roomId} after leaving`),d.logger.log(e)})},g.prototype.resetLiveTimeline=function(e,t){for(let n=0;ne.isUnverified()))return!0}return!1},g.prototype.getTimelineSets=function(){return this._timelineSets},g.prototype.getUnfilteredTimelineSet=function(){return this._timelineSets[0]},g.prototype.getTimelineForEvent=function(e){return this.getUnfilteredTimelineSet().getTimelineForEvent(e)},g.prototype.addTimeline=function(){return this.getUnfilteredTimelineSet().addTimeline()},g.prototype.findEventById=function(e){return this.getUnfilteredTimelineSet().findEventById(e)},g.prototype.getUnreadNotificationCount=function(e){return e=e||"total",this._notificationCounts[e]},g.prototype.setUnreadNotificationCount=function(e,t){this._notificationCounts[e]=t},g.prototype.setSummary=function(e){const t=e["m.heroes"],n=e["m.joined_member_count"],r=e["m.invited_member_count"];Number.isInteger(n)&&this.currentState.setJoinedMemberCount(n),Number.isInteger(r)&&this.currentState.setInvitedMemberCount(r),Array.isArray(t)&&(this._summaryHeroes=t.filter(e=>e!==this.myUserId))},g.prototype.setBlacklistUnverifiedDevices=function(e){this._blacklistUnverifiedDevices=e},g.prototype.getBlacklistUnverifiedDevices=function(){return this._blacklistUnverifiedDevices},g.prototype.getAvatarUrl=function(e,t,n,r,i){const o=this.currentState.getStateEvents("m.room.avatar","");if(void 0===i&&(i=!0),!o&&!i)return null;const s=o?o.getContent().url:null;return s?(0,a.getHttpUriForMxc)(e,s,t,n,r):i?(0,a.getIdenticonUri)(e,this.roomId,t,n):null},g.prototype.getAliases=function(){const e=[],t=this.currentState.getStateEvents("m.room.aliases");if(t)for(let n=0;n"string"==typeof e&&("#"===e[0]&&!!e.endsWith(`:${r.getStateKey()}`)));Array.prototype.push.apply(e,t)}}return e},g.prototype.getCanonicalAlias=function(){const e=this.currentState.getStateEvents("m.room.canonical_alias","");return e?e.getContent().alias:null},g.prototype.addEventsToTimeline=function(e,t,n,r){n.getTimelineSet().addEventsToTimeline(e,t,n,r)},g.prototype.getMember=function(e){return this.currentState.getMember(e)},g.prototype.getJoinedMembers=function(){return this.getMembersWithMembership("join")},g.prototype.getJoinedMemberCount=function(){return this.currentState.getJoinedMemberCount()},g.prototype.getInvitedMemberCount=function(){return this.currentState.getInvitedMemberCount()},g.prototype.getInvitedAndJoinedMemberCount=function(){return this.getInvitedMemberCount()+this.getJoinedMemberCount()},g.prototype.getMembersWithMembership=function(e){return c.filter(this.currentState.getMembers(),(function(t){return t.membership===e}))},g.prototype.getEncryptionTargetMembers=async function(){await this.loadMembersIfNeeded();let e=this.getMembersWithMembership("join");return this.shouldEncryptForInvitedMembers()&&(e=e.concat(this.getMembersWithMembership("invite"))),e},g.prototype.shouldEncryptForInvitedMembers=function(){const e=this.currentState.getStateEvents("m.room.history_visibility","");return e&&e.getContent()&&"joined"!==e.getContent().history_visibility},g.prototype.getDefaultRoomName=function(e){return b(this,e,!0)},g.prototype.hasMembershipState=function(e,t){const n=this.getMember(e);return!!n&&n.membership===t},g.prototype.getOrCreateFilteredTimelineSet=function(e){if(this._filteredTimelineSets[e.filterId])return this._filteredTimelineSets[e.filterId];const t=Object.assign({filter:e},this._opts),n=new o.EventTimelineSet(this,t);this.reEmitter.reEmit(n,["Room.timeline","Room.timelineReset"]),this._filteredTimelineSets[e.filterId]=n,this._timelineSets.push(n);const r=this.getLiveTimeline();r.getEvents().forEach((function(e){n.addLiveEvent(e)}));let i=r;for(;i.getNeighbouringTimeline(s.EventTimeline.BACKWARDS);)i=i.getNeighbouringTimeline(s.EventTimeline.BACKWARDS);return n.getLiveTimeline().setPaginationToken(i.getPaginationToken(s.EventTimeline.BACKWARDS),s.EventTimeline.BACKWARDS),n},g.prototype.removeFilteredTimelineSet=function(e){const t=this._filteredTimelineSets[e.filterId];delete this._filteredTimelineSets[e.filterId];const n=this._timelineSets.indexOf(t);n>-1&&this._timelineSets.splice(n,1)},g.prototype._addLiveEvent=function(e,t){if(e.isRedaction()){const t=e.event.redacts,n=this.getUnfilteredTimelineSet().findEventById(t);if(n){if(n.makeRedacted(e),n.getStateKey()){this.currentState.getStateEvents(n.getType(),n.getStateKey()).getId()===n.getId()&&this.currentState.setStateEvents([n])}this.emit("Room.redaction",e,this)}}if(e.getUnsigned().transaction_id){const t=this._txnToEvent[e.getUnsigned().transaction_id];if(t)return void this._handleRemoteEcho(e,t)}for(let n=0;ne.status===f.EventStatus.NOT_SENT)&&(d.logger.warn("Setting event as NOT_SENT due to messages in the same state"),e.setStatus(f.EventStatus.NOT_SENT)),this._pendingEventList.push(e),e.isRelation()&&this._aggregateNonLiveRelation(e),e.isRedaction()){const t=e.event.redacts;let n=this._pendingEventList&&this._pendingEventList.find(e=>e.getId()===t);n||(n=this.getUnfilteredTimelineSet().findEventById(t)),n&&(n.markLocallyRedacted(e),this.emit("Room.redaction",e,this))}}else for(let t=0;t{const n=e.getMember(t);return n?n.name:t});else{let n=e.currentState.getMembers().filter(e=>e.userId!==t&&("invite"===e.membership||"join"===e.membership));n.sort((e,t)=>e.userId.localeCompare(t.userId)),n=n.slice(0,5),o=n.map(e=>e.name)}if(i)return v(o,i);if("join"==e.getMyMembership()){const t=e.currentState.getStateEvents("m.room.third_party_invite");if(t&&t.length){return`Inviting ${v(t.map(e=>e.getContent().display_name))}`}}let s=o;return s.length||(s=e.currentState.getMembers().filter(e=>e.userId!==t&&"invite"!==e.membership&&"join"!==e.membership).map(e=>e.name)),s.length?`Empty room (was ${v(s)})`:"Empty room"}function v(e,t=e.length+1){const n=t-1;if(e.length){if(1===e.length&&n<=1)return e[0];if(2===e.length&&n<=2)return`${e[0]} and ${e[1]}`;return n>1?`${e[0]} and ${n} others`:`${e[0]} and 1 other`}return"Empty room"}y[f.EventStatus.ENCRYPTING]=[f.EventStatus.SENDING,f.EventStatus.NOT_SENT],y[f.EventStatus.SENDING]=[f.EventStatus.ENCRYPTING,f.EventStatus.QUEUED,f.EventStatus.NOT_SENT,f.EventStatus.SENT],y[f.EventStatus.QUEUED]=[f.EventStatus.SENDING,f.EventStatus.CANCELLED],y[f.EventStatus.SENT]=[],y[f.EventStatus.NOT_SENT]=[f.EventStatus.SENDING,f.EventStatus.QUEUED,f.EventStatus.CANCELLED],y[f.EventStatus.CANCELLED]=[],g.prototype.updatePendingEvent=function(e,t,n){if(d.logger.log(`setting pendingEvent status to ${t} in ${e.getRoomId()}`),t==f.EventStatus.SENT&&!n)throw new Error("updatePendingEvent called with status=SENT, but no new event id");if(t==f.EventStatus.SENT){if(this.getUnfilteredTimelineSet().eventIdToTimeline(n))return}const r=e.status,i=e.getId();if(!r)throw new Error("updatePendingEventStatus called on an event which is not a local echo.");const o=y[r];if(!o||o.indexOf(t)<0)throw new Error("Invalid EventStatus transition "+r+"->"+t);if(e.setStatus(t),t==f.EventStatus.SENT){e.replaceLocalEventId(n);for(let e=0;ee.getId()===i);if(-1!==e){const[t]=this._pendingEventList.splice(e,1);t.isRedaction()&&this._revertRedactionLocalEcho(t)}}this.removeEvent(i)}this.emit("Room.localEchoUpdated",e,this,i,r)},g.prototype._revertRedactionLocalEcho=function(e){const t=e.event.redacts;if(!t)return;const n=this.getUnfilteredTimelineSet().findEventById(t);n&&(n.unmarkLocallyRedacted(),this.emit("Room.redactionCancelled",e,this),n.isRelation()&&this._aggregateNonLiveRelation(n))},g.prototype.addLiveEvents=function(e,t){let n;if(t&&-1===["replace","ignore"].indexOf(t))throw new Error("duplicateStrategy MUST be either 'replace' or 'ignore'");for(n=0;n=0;--e){const r=this.timeline[e];if(r.getId()===t)return!1;if(r.getId()===n)return!0}return!1},g.prototype.getReceiptsForEvent=function(e){return this._receiptCacheByEventId[e.getId()]||[]},g.prototype.addReceipt=function(e,t){void 0===t&&(t=!1),t||this._addReceiptsToStructure(e,this._realReceipts),this._addReceiptsToStructure(e,this._receipts),this._receiptCacheByEventId=this._buildReceiptCache(this._receipts),this.emit("Room.receipt",e,this)},g.prototype._addReceiptsToStructure=function(e,t){const n=this;c.keys(e.getContent()).forEach((function(r){c.keys(e.getContent()[r]).forEach((function(i){c.keys(e.getContent()[r][i]).forEach((function(o){const s=e.getContent()[r][i][o];t[i]||(t[i]={});const a=t[i][o];if(a){const e=n.getUnfilteredTimelineSet().compareEventOrdering(a.eventId,r);if(null!==e&&e>=0)return}else t[i][o]={};t[i][o]={eventId:r,data:s}}))}))}))},g.prototype._buildReceiptCache=function(e){const t={};return c.keys(e).forEach((function(n){c.keys(e[n]).forEach((function(r){const i=e[n][r];t[i.eventId]||(t[i.eventId]=[]),t[i.eventId].push({userId:r,type:n,data:i.data})}))})),t},g.prototype._addLocalEchoReceipt=function(e,t,n){this.addReceipt(m(e,t,n),!0)},g.prototype.addTags=function(e){this.tags=e.getContent().tags||{},this.emit("Room.tags",e,this)},g.prototype.addAccountData=function(e){for(let t=0;t{this.aggregateRelations(e)});const t=e.getRelation();if(!t)return;const n=t.event_id,r=t.rel_type,i=e.getType();let o=this._relations[n];o||(o=this._relations[n]={});let a=o[r];a||(a=o[r]={});let c,l=a[i],u=!1;l||(l=a[i]=new f.Relations(r,i,this.room),u=!0,c=this.findEventById(n),c&&l.setTargetEvent(c)),l.addEvent(e),u&&c&&c.emit("Event.relationsCreated",r,i)}},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.RoomState=c;var i=n(10),o=n(78),s=n(4),a=r(n(8));function c(e,t){this.roomId=e,this.members={},this.events={},this.paginationToken=null,this._sentinels={},this._updateModifiedTime(),this._displayNameToUserIds={},this._userIdsToDisplayNames={},this._tokenToInvite={},this._joinedMemberCount=null,this._summaryJoinedMemberCount=null,this._invitedMemberCount=null,this._summaryInvitedMemberCount=null,t||(t={status:1}),this._oobMemberFlags=t}function f(e,t,n){const r=e._userIdsToDisplayNames[t];if(delete e._userIdsToDisplayNames[t],r){const n=a.removeHiddenChars(r),i=e._displayNameToUserIds[n];if(i){const r=i.filter(e=>e!==t);e._displayNameToUserIds[n]=r}}e._userIdsToDisplayNames[t]=n;const i=n&&a.removeHiddenChars(n);i&&(e._displayNameToUserIds[i]||(e._displayNameToUserIds[i]=[]),e._displayNameToUserIds[i].push(t))}a.inherits(c,i.EventEmitter),c.prototype.getJoinedMemberCount=function(){return null!==this._summaryJoinedMemberCount?this._summaryJoinedMemberCount:(null===this._joinedMemberCount&&(this._joinedMemberCount=this.getMembers().reduce((e,t)=>"join"===t.membership?e+1:e,0)),this._joinedMemberCount)},c.prototype.setJoinedMemberCount=function(e){this._summaryJoinedMemberCount=e},c.prototype.getInvitedMemberCount=function(){return null!==this._summaryInvitedMemberCount?this._summaryInvitedMemberCount:(null===this._invitedMemberCount&&(this._invitedMemberCount=this.getMembers().reduce((e,t)=>"invite"===t.membership?e+1:e,0)),this._invitedMemberCount)},c.prototype.setInvitedMemberCount=function(e){this._summaryInvitedMemberCount=e},c.prototype.getMembers=function(){return a.values(this.members)},c.prototype.getMembersExcept=function(e){return a.values(this.members).filter(t=>!e.includes(t.userId))},c.prototype.getMember=function(e){return this.members[e]||null},c.prototype.getSentinelMember=function(e){if(!e)return null;let t=this._sentinels[e];if(void 0===t){t=new o.RoomMember(this.roomId,e);const n=this.members[e];n&&t.setMembershipEvent(n.events.member,this),this._sentinels[e]=t}return t},c.prototype.getStateEvents=function(e,t){if(!this.events[e])return void 0===t?[]:null;if(void 0===t)return a.values(this.events[e]);const n=this.events[e][t];return n||null},c.prototype.clone=function(){const e=new c(this.roomId,this._oobMemberFlags),t=this._oobMemberFlags.status;return this._oobMemberFlags.status=1,Object.values(this.events).forEach(t=>{const n=Object.values(t);e.setStateEvents(n)}),this._oobMemberFlags.status=t,null!==this._summaryInvitedMemberCount&&e.setInvitedMemberCount(this.getInvitedMemberCount()),null!==this._summaryJoinedMemberCount&&e.setJoinedMemberCount(this.getJoinedMemberCount()),3==this._oobMemberFlags.status&&this.getMembers().forEach(t=>{if(t.isOutOfBand()){e.getMember(t.userId).markOutOfBand()}}),e},c.prototype.setUnknownStateEvents=function(e){const t=e.filter(e=>void 0===this.events[e.getType()]||void 0===this.events[e.getType()][e.getStateKey()]);this.setStateEvents(t)},c.prototype.setStateEvents=function(e){const t=this;this._updateModifiedTime(),a.forEach(e,(function(e){e.getRoomId()===t.roomId&&e.isState()&&(t._setStateEvent(e),"m.room.member"===e.getType()&&(f(t,e.getStateKey(),e.getContent().displayname),function(e,t){if(!t.getContent().third_party_invite)return;const n=(t.getContent().third_party_invite.signed||{}).token;if(!n)return;if(!e.getStateEvents("m.room.third_party_invite",n))return;e._tokenToInvite[n]=t}(t,e)),t.emit("RoomState.events",e,t))})),a.forEach(e,(function(e){if(e.getRoomId()===t.roomId&&e.isState())if("m.room.member"===e.getType()){const n=e.getStateKey();"leave"!==e.getContent().membership&&"ban"!==e.getContent().membership||(e.getContent().avatar_url=e.getContent().avatar_url||e.getPrevContent().avatar_url,e.getContent().displayname=e.getContent().displayname||e.getPrevContent().displayname);const r=t._getOrCreateMember(n,e);r.setMembershipEvent(e,t),t._updateMember(r),t.emit("RoomState.members",e,t,r)}else if("m.room.power_levels"===e.getType()){const n=a.values(t.members);a.forEach(n,(function(n){n.setPowerLevelEvent(e),t.emit("RoomState.members",e,t,n)})),t._sentinels={}}}))},c.prototype._getOrCreateMember=function(e,t){let n=this.members[e];return n||(n=new o.RoomMember(this.roomId,e),this.members[e]=n,this.emit("RoomState.newMember",t,this,n)),n},c.prototype._setStateEvent=function(e){void 0===this.events[e.getType()]&&(this.events[e.getType()]={}),this.events[e.getType()][e.getStateKey()]=e},c.prototype._updateMember=function(e){const t=this.getStateEvents("m.room.power_levels","");t&&e.setPowerLevelEvent(t),delete this._sentinels[e.userId],this.members[e.userId]=e,this._joinedMemberCount=null,this._invitedMemberCount=null},c.prototype.needsOutOfBandMembers=function(){return 1===this._oobMemberFlags.status},c.prototype.markOutOfBandMembersStarted=function(){1===this._oobMemberFlags.status&&(this._oobMemberFlags.status=2)},c.prototype.markOutOfBandMembersFailed=function(){2===this._oobMemberFlags.status&&(this._oobMemberFlags.status=1)},c.prototype.clearOutOfBandMembers=function(){let e=0;Object.keys(this.members).forEach(t=>{this.members[t].isOutOfBand()&&(++e,delete this.members[t])}),s.logger.log(`LL: RoomState removed ${e} members...`),this._oobMemberFlags.status=1},c.prototype.setOutOfBandMembers=function(e){s.logger.log(`LL: RoomState about to set ${e.length} OOB members ...`),2===this._oobMemberFlags.status&&(s.logger.log("LL: RoomState put in OOB_STATUS_FINISHED state ..."),this._oobMemberFlags.status=3,e.forEach(e=>this._setOutOfBandMember(e)))},c.prototype._setOutOfBandMember=function(e){if("m.room.member"!==e.getType())return;const t=e.getStateKey(),n=this.getMember(t);if(n&&!n.isOutOfBand())return;const r=this._getOrCreateMember(t,e);r.setMembershipEvent(e,this),r.markOutOfBand(),f(this,r.userId,r.name),this._setStateEvent(e),this._updateMember(r),this.emit("RoomState.members",e,this,r)},c.prototype.setTypingEvent=function(e){a.forEach(a.values(this.members),(function(t){t.setTypingEvent(e)}))},c.prototype.getInviteForThreePidToken=function(e){return this._tokenToInvite[e]||null},c.prototype._updateModifiedTime=function(){this._modified=Date.now()},c.prototype.getLastModifiedTime=function(){return this._modified},c.prototype.getUserIdsWithDisplayName=function(e){return this._displayNameToUserIds[a.removeHiddenChars(e)]||[]},c.prototype.maySendRedactionForEvent=function(e,t){const n=this.getMember(t);if(!n||"leave"===n.membership)return!1;if(e.status||e.isRedacted())return!1;const r=this.maySendEvent("m.room.redaction",t);return e.getSender()===t?r:this._hasSufficientPowerLevelFor("redact",n.powerLevel)},c.prototype._hasSufficientPowerLevelFor=function(e,t){const n=this.getStateEvents("m.room.power_levels","");let r={};n&&(r=n.getContent());let i=50;return a.isNumber(r[e])&&(i=r[e]),t>=i},c.prototype.maySendMessage=function(e){return this._maySendEventOfType("m.room.message",e,!1)},c.prototype.maySendEvent=function(e,t){return this._maySendEventOfType(e,t,!1)},c.prototype.mayClientSendStateEvent=function(e,t){return!t.isGuest()&&this.maySendStateEvent(e,t.credentials.userId)},c.prototype.maySendStateEvent=function(e,t){return this._maySendEventOfType(e,t,!0)},c.prototype._maySendEventOfType=function(e,t,n){const r=this.getStateEvents("m.room.power_levels","");let i,o={},s=0,a=0,c=0;if(r){i=r.getContent(),o=i.events||{},s=Number.isFinite(i.state_default)?i.state_default:50;const e=i.users&&i.users[t];Number.isFinite(e)?c=e:Number.isFinite(i.users_default)&&(c=i.users_default),Number.isFinite(i.events_default)&&(a=i.events_default)}let f=n?s:a;return Number.isFinite(o[e])&&(f=o[e]),c>=f},c.prototype.mayTriggerNotifOfType=function(e,t){const n=this.getMember(t);if(!n)return!1;const r=this.getStateEvents("m.room.power_levels","");let i=50;return r&&r.getContent()&&r.getContent().notifications&&a.isNumber(r.getContent().notifications[e])&&(i=r.getContent().notifications[e]),n.powerLevel>=i}},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.Group=s;var i=r(n(8)),o=n(10);function s(e){this.groupId=e,this.name=null,this.avatarUrl=null,this.myMembership=null,this.inviter=null}i.inherits(s,o.EventEmitter),s.prototype.setProfile=function(e,t){this.name===e&&this.avatarUrl===t||(this.name=e||this.groupId,this.avatarUrl=t,this.emit("Group.profile",this))},s.prototype.setMyMembership=function(e){this.myMembership!==e&&(this.myMembership=e,this.emit("Group.myMembership",this))},s.prototype.setInviter=function(e){this.inviter=e}},function(e,t,n){"use strict";(function(e){var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MatrixCall=a,t.setAudioOutput=function(e){I=e},t.setAudioInput=function(e){x=e},t.setVideoInput=function(e){R=e},t.createNewMatrixCall=function(t,n,r){const o=e.window,s=e.document;if(!o||!s)return null;const c={};c.isOpenWebRTC=function(){const e=s.getElementById("script");if(!e||!e.length)return!1;for(let t=0;t-1)return!0;return!1};const f=o.navigator.getUserMedia||o.navigator.webkitGetUserMedia||o.navigator.mozGetUserMedia;f&&(c.getUserMedia=function(){return f.apply(o.navigator,arguments)});try{c.RtcPeerConnection=o.RTCPeerConnection||o.webkitRTCPeerConnection||o.mozRTCPeerConnection,c.RtcSessionDescription=o.RTCSessionDescription||o.webkitRTCSessionDescription||o.mozRTCSessionDescription,c.RtcIceCandidate=o.RTCIceCandidate||o.webkitRTCIceCandidate||o.mozRTCIceCandidate,c.vendor=null,o.mozRTCPeerConnection?c.vendor="mozilla":o.webkitRTCPeerConnection?c.vendor="webkit":o.RTCPeerConnection&&(c.vendor="generic")}catch(e){return i.logger.error("Failed to set up WebRTC object: possible browser interference?"),i.logger.error(e),null}if(!(c.RtcIceCandidate&&c.RtcSessionDescription&&c.RtcPeerConnection&&c.getUserMedia))return null;const l=!!r&&r.forceTURN;return new a({webRtc:c,client:t,URL:o.URL,roomId:n,turnServers:t.getTurnServers(),forceTURN:t._forceTURN||l})};var i=n(4),o=n(10),s=r(n(8));function a(e){this.roomId=e.roomId,this.client=e.client,this.webRtc=e.webRtc,this.forceTURN=e.forceTURN,this.URL=e.URL,this.turnServers=e.turnServers||[],0===this.turnServers.length&&this.client.isFallbackICEServerAllowed()&&this.turnServers.push({urls:[a.FALLBACK_ICE_SERVER]}),s.forEach(this.turnServers,(function(e){s.checkObjectHasKeys(e,["urls"])})),this.callId="c"+(new Date).getTime()+Math.random(),this.state="fledgling",this.didConnect=!1,this.candidateSendQueue=[],this.candidateSendTries=0,this.mediaPromises=Object.create(null),this.screenSharingStream=null,this._answerContent=null}a.CALL_TIMEOUT_MS=6e4,a.FALLBACK_ICE_SERVER="stun:turn.matrix.org",a.ERR_LOCAL_OFFER_FAILED="local_offer_failed",a.ERR_NO_USER_MEDIA="no_user_media",a.ERR_UNKNOWN_DEVICES="unknown_devices",a.ERR_SEND_INVITE="send_invite",a.ERR_SEND_ANSWER="send_answer",s.inherits(a,o.EventEmitter),a.prototype.placeVoiceCall=function(){v("placeVoiceCall"),y(this),w(this,k("voice")),this.type="voice"},a.prototype.placeVideoCall=function(e,t){v("placeVideoCall"),y(this),this.localVideoElement=t,this.remoteVideoElement=e,w(this,k("video")),this.type="video",m(this)},a.prototype.placeScreenSharingCall=function(e,t){v("placeScreenSharingCall"),y(this);const n=E(this);if(!n)return;this.localVideoElement=t,this.remoteVideoElement=e;const r=this;this.webRtc.getUserMedia(n,(function(e){r.screenSharingStream=e,v("Got screen stream, requesting audio stream...");const t=k("voice");w(r,t)}),(function(e){r.emit("error",b(a.ERR_NO_USER_MEDIA,"Failed to get screen-sharing stream: "+e))})),this.type="video",m(this)},a.prototype.playElement=function(e,t){i.logger.log("queuing play on "+t+" and element "+e),this.mediaPromises[t]?this.mediaPromises[t]=this.mediaPromises[t].then((function(){return i.logger.log("previous promise completed for "+t),e.play()}),(function(){return i.logger.log("previous promise failed for "+t),e.play()})):this.mediaPromises[t]=e.play()},a.prototype.pauseElement=function(e,t){i.logger.log("queuing pause on "+t+" and element "+e),this.mediaPromises[t]?this.mediaPromises[t]=this.mediaPromises[t].then((function(){return i.logger.log("previous promise completed for "+t),e.pause()}),(function(){return i.logger.log("previous promise failed for "+t),e.pause()})):this.mediaPromises[t]=e.pause()},a.prototype.assignElement=function(e,t,n){i.logger.log("queuing assign on "+n+" element "+e+" for "+t),this.mediaPromises[n]?this.mediaPromises[n]=this.mediaPromises[n].then((function(){i.logger.log("previous promise completed for "+n),e.srcObject=t}),(function(){i.logger.log("previous promise failed for "+n),e.srcObject=t})):e.srcObject=t},a.prototype.getLocalVideoElement=function(){return this.localVideoElement},a.prototype.getRemoteVideoElement=function(){return this.remoteVideoElement},a.prototype.getRemoteAudioElement=function(){return this.remoteAudioElement},a.prototype.setLocalVideoElement=function(e){if(this.localVideoElement=e,e&&this.localAVStream&&"video"===this.type){e.autoplay=!0,this.assignElement(e,this.localAVStream,"localVideo"),e.muted=!0;const t=this;setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)}},a.prototype.setRemoteVideoElement=function(e){this.remoteVideoElement=e,m(this)},a.prototype.setRemoteAudioElement=function(e){this.remoteVideoElement.muted=!0,this.remoteAudioElement=e,this.remoteAudioElement.muted=!1,g(this)},a.prototype._initWithInvite=function(e){this.msg=e.getContent(),this.peerConn=A(this);const t=this;this.peerConn&&this.peerConn.setRemoteDescription(new this.webRtc.RtcSessionDescription(this.msg.offer),S(t,t._onSetRemoteDescriptionSuccess),S(t,t._onSetRemoteDescriptionError)),l(this,"ringing"),this.direction="inbound",this.msg.offer&&this.msg.offer.sdp&&this.msg.offer.sdp.indexOf("m=video")>-1?this.type="video":this.type="voice",e.getAge()&&setTimeout((function(){"ringing"==t.state&&(v("Call invite has expired. Hanging up."),t.hangupParty="remote",l(t,"ended"),p(t),"closed"!=t.peerConn.signalingState&&t.peerConn.close(),t.emit("hangup",t))}),this.msg.lifetime-e.getAge())},a.prototype._initWithHangup=function(e){this.msg=e.getContent(),l(this,"ended")},a.prototype.answer=function(){v("Answering call %s of type %s",this.callId,this.type);const e=this;e._answerContent?e._sendAnswer():this.localAVStream||this.waitForLocalAVStream?this.localAVStream?this._maybeGotUserMediaForAnswer(this.localAVStream):this.waitForLocalAVStream&&l(this,"wait_local_media"):(this.webRtc.getUserMedia(k(this.type),S(e,e._maybeGotUserMediaForAnswer),S(e,e._maybeGotUserMediaForAnswer)),l(this,"wait_local_media"))},a.prototype._replacedBy=function(e){v(this.callId+" being replaced by "+e.callId),"wait_local_media"==this.state?(v("Telling new call to wait for local media"),e.waitForLocalAVStream=!0):"create_offer"==this.state?(v("Handing local stream to new call"),e._maybeGotUserMediaForAnswer(this.localAVStream),delete this.localAVStream):"invite_sent"==this.state&&(v("Handing local stream to new call"),e._maybeGotUserMediaForAnswer(this.localAVStream),delete this.localAVStream),e.localVideoElement=this.localVideoElement,e.remoteVideoElement=this.remoteVideoElement,e.remoteAudioElement=this.remoteAudioElement,this.successor=e,this.emit("replaced",e),this.hangup(!0)},a.prototype.hangup=function(e,t){if("ended"==this.state)return;v("Ending call "+this.callId),h(this,"local",e,!t);const n={version:0,call_id:this.callId,reason:e};u(this,"m.call.hangup",n)},a.prototype.setLocalVideoMuted=function(e){this.localAVStream&&c(this.localAVStream.getVideoTracks(),!e)},a.prototype.isLocalVideoMuted=function(){return!!this.localAVStream&&!f(this.localAVStream.getVideoTracks())},a.prototype.setMicrophoneMuted=function(e){this.localAVStream&&c(this.localAVStream.getAudioTracks(),!e)},a.prototype.isMicrophoneMuted=function(){return!!this.localAVStream&&!f(this.localAVStream.getAudioTracks())},a.prototype._maybeGotUserMediaForInvite=function(e){if(this.successor)return void this.successor._maybeGotUserMediaForAnswer(e);if("ended"==this.state)return;v("_maybeGotUserMediaForInvite -> "+this.type);const t=this,n=e,r={mandatory:{OfferToReceiveAudio:!0,OfferToReceiveVideo:"video"===t.type}};if(e instanceof MediaStream){const n=this.getLocalVideoElement();n&&"video"==this.type&&(n.autoplay=!0,this.screenSharingStream?(v("Setting screen sharing stream to the local video element"),this.assignElement(n,this.screenSharingStream,"localVideo")):this.assignElement(n,e,"localVideo"),n.muted=!0,setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)),this.screenSharingStream&&(this.screenSharingStream.addTrack(e.getAudioTracks()[0]),e=this.screenSharingStream),this.localAVStream=e,c(e.getAudioTracks(),!0),this.peerConn=A(this),this.peerConn.addStream(e)}else{if("PermissionDeniedError"!==n.name)return v("Failed to getUserMedia: "+n.name),void this._getUserMediaFailed(n);v("User denied access to camera/microphone. Or possibly you are using an insecure domain. Receiving only."),this.peerConn=A(this)}this.peerConn.createOffer(S(t,t._gotLocalOffer),S(t,t._getLocalOfferFailed),r),l(t,"create_offer")},a.prototype._sendAnswer=function(e){u(this,"m.call.answer",this._answerContent).then(()=>{l(this,"connecting"),_(this)}).catch(e=>{l(this,"ringing"),this.client.cancelPendingEvent(e.event);let t=a.ERR_SEND_ANSWER,n="Failed to send answer";throw"UnknownDeviceError"==e.name&&(t=a.ERR_UNKNOWN_DEVICES,n="Unknown devices present in the room"),this.emit("error",b(t,n)),e})},a.prototype._maybeGotUserMediaForAnswer=function(e){const t=this;if("ended"==t.state)return;const n=e;if(e instanceof MediaStream){const n=t.getLocalVideoElement();n&&"video"==t.type&&(n.autoplay=!0,this.assignElement(n,e,"localVideo"),n.muted=!0,setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)),t.localAVStream=e,c(e.getAudioTracks(),!0),t.peerConn.addStream(e)}else{if("PermissionDeniedError"!==n.name)return v("Failed to getUserMedia: "+n.name),void this._getUserMediaFailed(n);v("User denied access to camera/microphone. Or possibly you are using an insecure domain. Receiving only.")}const r={mandatory:{OfferToReceiveAudio:!0,OfferToReceiveVideo:"video"===t.type}};t.peerConn.createAnswer((function(e){v("Created answer: ",e),t.peerConn.setLocalDescription(e,(function(){t._answerContent={version:0,call_id:t.callId,answer:{sdp:t.peerConn.localDescription.sdp,type:t.peerConn.localDescription.type}},t._sendAnswer()}),(function(){v("Error setting local description!")}),r)}),(function(e){v("Failed to create answer: "+e)})),l(t,"create_answer")},a.prototype._gotLocalIceCandidate=function(e){if(e.candidate){if(v("Got local ICE "+e.candidate.sdpMid+" candidate: "+e.candidate.candidate),"ended"==this.state)return;const t={candidate:e.candidate.candidate,sdpMid:e.candidate.sdpMid,sdpMLineIndex:e.candidate.sdpMLineIndex};d(this,t)}},a.prototype._gotRemoteIceCandidate=function(e){"ended"!=this.state&&(v("Got remote ICE "+e.sdpMid+" candidate: "+e.candidate),this.peerConn.addIceCandidate(new this.webRtc.RtcIceCandidate(e),(function(){}),(function(e){})))},a.prototype._receivedAnswer=function(e){if("ended"==this.state)return;this.peerConn.setRemoteDescription(new this.webRtc.RtcSessionDescription(e.answer),S(this,this._onSetRemoteDescriptionSuccess),S(this,this._onSetRemoteDescriptionError)),l(this,"connecting")},a.prototype._gotLocalOffer=function(e){const t=this;v("Created offer: ",e),"ended"!=t.state?t.peerConn.setLocalDescription(e,(function(){const e={version:0,call_id:t.callId,offer:{sdp:t.peerConn.localDescription.sdp,type:t.peerConn.localDescription.type},lifetime:a.CALL_TIMEOUT_MS};u(t,"m.call.invite",e).then(()=>{l(t,"invite_sent"),setTimeout((function(){"invite_sent"==t.state&&t.hangup("invite_timeout")}),a.CALL_TIMEOUT_MS)}).catch(e=>{let n=a.ERR_SEND_INVITE,r="Failed to send invite";throw"UnknownDeviceError"==e.name&&(n=a.ERR_UNKNOWN_DEVICES,r="Unknown devices present in the room"),t.client.cancelPendingEvent(e.event),h(t,"local",n,!1),t.emit("error",b(n,r)),e})}),(function(){v("Error setting local description!")})):v("Ignoring newly created offer on call ID "+t.callId+" because the call has ended")},a.prototype._getLocalOfferFailed=function(e){this.emit("error",b(a.ERR_LOCAL_OFFER_FAILED,"Failed to start audio for call!"))},a.prototype._getUserMediaFailed=function(e){h(this,"local","user_media_failed",!1),this.emit("error",b(a.ERR_NO_USER_MEDIA,"Couldn't start capturing media! Is your microphone set up and does this app have permission?"))},a.prototype._onIceConnectionStateChanged=function(){"ended"!=this.state&&(v("Ice connection state changed to: "+this.peerConn.iceConnectionState),"completed"==this.peerConn.iceConnectionState||"connected"==this.peerConn.iceConnectionState?(l(this,"connected"),this.didConnect=!0):"failed"==this.peerConn.iceConnectionState&&this.hangup("ice_failed"))},a.prototype._onSignallingStateChanged=function(){v("call "+this.callId+": Signalling state changed to: "+this.peerConn.signalingState)},a.prototype._onSetRemoteDescriptionSuccess=function(){v("Set remote description")},a.prototype._onSetRemoteDescriptionError=function(e){v("Failed to set remote description"+e)},a.prototype._onAddStream=function(e){v("Stream id "+e.stream.id+" added");const t=e.stream;t.getVideoTracks().length>0?(this.type="video",this.remoteAVStream=t,this.remoteAStream=t):(this.type="voice",this.remoteAStream=t);const n=this;T(t,(function(e){v("Track id "+e.id+" added"),e.onstarted=S(n,n._onRemoteStreamTrackStarted)})),void 0!==e.stream.oninactive?e.stream.oninactive=S(n,n._onRemoteStreamEnded):e.stream.onended=S(n,n._onRemoteStreamEnded),e.stream.onstarted=S(n,n._onRemoteStreamStarted),"video"===this.type?(m(this),g(this)):g(this)},a.prototype._onRemoteStreamStarted=function(e){l(this,"connected")},a.prototype._onRemoteStreamEnded=function(e){v("Remote stream ended"),this.hangupParty="remote",l(this,"ended"),p(this),"closed"!=this.peerConn.signalingState&&this.peerConn.close(),this.emit("hangup",this)},a.prototype._onRemoteStreamTrackStarted=function(e){l(this,"connected")},a.prototype._onHangupReceived=function(e){v("Hangup received"),h(this,"remote",e.reason,!0)},a.prototype._onAnsweredElsewhere=function(e){v("Answered elsewhere"),h(this,"remote","answered_elsewhere",!0)};const c=function(e,t){for(let n=0;n5)return v("Failed to send candidates on attempt %s. Giving up for now.",e.candidateSendTries),void(e.candidateSendTries=0);const r=500*Math.pow(2,e.candidateSendTries);++e.candidateSendTries,v("Failed to send candidates. Retrying in "+r+"ms"),setTimeout((function(){_(e)}),r)}))},w=function(e,t){e.client.callList[e.callId]=e,e.webRtc.getUserMedia(t,S(e,e._maybeGotUserMediaForInvite),S(e,e._maybeGotUserMediaForInvite)),l(e,"wait_local_media"),e.direction="outbound",e.config=t},A=function(e){const t=new e.webRtc.RtcPeerConnection({iceTransportPolicy:e.forceTURN?"relay":void 0,iceServers:e.turnServers});return t.oniceconnectionstatechange=S(e,e._onIceConnectionStateChanged),t.onsignalingstatechange=S(e,e._onSignallingStateChanged),t.onicecandidate=S(e,e._gotLocalIceCandidate),t.onaddstream=S(e,e._onAddStream),t},E=function(t){const n=e.screen;if(n)return{video:{mediaSource:"screen",mandatory:{chromeMediaSource:"screen",chromeMediaSourceId:""+Date.now(),maxWidth:n.width,maxHeight:n.height,minFrameRate:1,maxFrameRate:10}}};t.emit("error",b(a.ERR_NO_USER_MEDIA,"Couldn't determine screen sharing constaints."))},k=function(t){const n=!!e.window.navigator.webkitGetUserMedia;switch(t){case"voice":return{audio:{deviceId:x?{ideal:x}:void 0},video:!1};case"video":return{audio:{deviceId:x?{ideal:x}:void 0},video:{deviceId:R?{ideal:R}:void 0,width:n?{exact:640}:{ideal:640},height:n?{exact:360}:{ideal:360}}}}},S=function(e,t){return function(){return t.apply(e,arguments)}},T=function(e,t){!function(e,t){const n=e.getVideoTracks();for(let e=0;e{let i=!0;const o=e.open(t);o.onupgradeneeded=()=>{i=!1},o.onblocked=()=>r(),o.onsuccess=()=>{o.result.close(),i||e.deleteDatabase(t),n(i)},o.onerror=e=>r(e.target.error)})}},function(e,t,n){"use strict";(function(e){var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.OlmDevice=c,t.WITHHELD_MESSAGES=void 0;var i=n(4),o=n(36),s=r(n(141));function a(e){if(void 0===e)throw new Error("payloadString undefined");if(e.length>49152)throw new Error("Message too long ("+e.length+" bytes). The maximum for an encrypted message is 49152 bytes.")}function c(e){this._cryptoStore=e,this._pickleKey="DEFAULT_KEY",this.deviceCurve25519Key=null,this.deviceEd25519Key=null,this._maxOneTimeKeys=null,this._outboundGroupSessionStore={},this._inboundGroupSessionMessageIndexes={},this._sessionsInProgress={}}c.prototype.init=async function(){let t;const n=new e.Olm.Account;try{await async function(e,t,n){await e.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],r=>{e.getAccount(r,i=>{null!==i?n.unpickle(t,i):(n.create(),i=n.pickle(t),e.storeAccount(r,i))})})}(this._cryptoStore,this._pickleKey,n),t=JSON.parse(n.identity_keys()),this._maxOneTimeKeys=n.max_number_of_one_time_keys()}finally{n.free()}this.deviceCurve25519Key=t.curve25519,this.deviceEd25519Key=t.ed25519},c.getOlmVersion=function(){return e.Olm.get_library_version()},c.prototype._getAccount=function(t,n){this._cryptoStore.getAccount(t,t=>{const r=new e.Olm.Account;try{r.unpickle(this._pickleKey,t),n(r)}finally{r.free()}})},c.prototype._storeAccount=function(e,t){this._cryptoStore.storeAccount(e,t.pickle(this._pickleKey))},c.prototype._getSession=function(e,t,n,r){this._cryptoStore.getEndToEndSession(e,t,n,e=>{this._unpickleSession(e,r)})},c.prototype._unpickleSession=function(t,n){const r=new e.Olm.Session;try{r.unpickle(this._pickleKey,t.session),n(Object.assign({},t,{session:r}))}finally{r.free()}},c.prototype._saveSession=function(e,t,n){const r=t.session.session_id(),i=Object.assign(t,{session:t.session.pickle(this._pickleKey)});this._cryptoStore.storeEndToEndSession(e,r,i,n)},c.prototype._getUtility=function(t){const n=new e.Olm.Utility;try{return t(n)}finally{n.free()}},c.prototype.sign=async function(e){let t;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_ACCOUNT],n=>{this._getAccount(n,n=>{t=n.sign(e)})}),t},c.prototype.getOneTimeKeys=async function(){let e;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_ACCOUNT],t=>{this._getAccount(t,t=>{e=JSON.parse(t.one_time_keys())})}),e},c.prototype.maxNumberOfOneTimeKeys=function(){return this._maxOneTimeKeys},c.prototype.markKeysAsPublished=async function(){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],e=>{this._getAccount(e,t=>{t.mark_keys_as_published(),this._storeAccount(e,t)})})},c.prototype.generateOneTimeKeys=function(e){return this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],t=>{this._getAccount(t,n=>{n.generate_one_time_keys(e),this._storeAccount(t,n)})})},c.prototype.createOutboundSession=async function(t,n){let r;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT,o.IndexedDBCryptoStore.STORE_SESSIONS],i=>{this._getAccount(i,o=>{const s=new e.Olm.Session;try{s.create_outbound(o,t,n),r=s.session_id(),this._storeAccount(i,o);const e={session:s,lastReceivedMessageTs:Date.now()};this._saveSession(t,e,i)}finally{s.free()}})}),r},c.prototype.createInboundSession=async function(t,n,r){if(0!==n)throw new Error("Need messageType == 0 to create inbound session");let i;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT,o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getAccount(o,s=>{const a=new e.Olm.Session;try{a.create_inbound_from(s,t,r),s.remove_one_time_keys(a),this._storeAccount(o,s);const e=a.decrypt(n,r),c={session:a,lastReceivedMessageTs:Date.now()};this._saveSession(t,c,o),i={payload:e,session_id:a.session_id()}}finally{a.free()}})}),i},c.prototype.getSessionIdsForDevice=async function(e){if(this._sessionsInProgress[e]){i.logger.log("waiting for olm session to be created");try{await this._sessionsInProgress[e]}catch(e){}}let t;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_SESSIONS],n=>{this._cryptoStore.getEndToEndSessions(e,n,e=>{t=Object.keys(e)})}),t},c.prototype.getSessionIdForDevice=async function(e,t){const n=await this.getSessionInfoForDevice(e,t);if(0===n.length)return null;let r=0;for(let e=1;es||i===s&&t.sessionId{this._cryptoStore.getEndToEndSessions(e,t,e=>{const t=Object.keys(e).sort();for(const r of t)this._unpickleSession(e[r],e=>{n.push({lastReceivedMessageTs:e.lastReceivedMessageTs,hasReceivedMessage:e.session.has_received_message(),sessionId:r})})})}),n},c.prototype.encryptMessage=async function(e,t,n){let r;return a(n),await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getSession(e,t,o,s=>{const a=s.session.describe();i.logger.log("encryptMessage: Olm Session ID "+t+" to "+e+": "+a),r=s.session.encrypt(n),this._saveSession(e,s,o)})}),r},c.prototype.decryptMessage=async function(e,t,n,r){let s;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getSession(e,t,o,a=>{const c=a.session.describe();i.logger.log("decryptMessage: Olm Session ID "+t+" from "+e+": "+c),s=a.session.decrypt(n,r),a.lastReceivedMessageTs=Date.now(),this._saveSession(e,a,o)})}),s},c.prototype.matchesSession=async function(e,t,n,r){if(0!==n)return!1;let i;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_SESSIONS],n=>{this._getSession(e,t,n,e=>{i=e.session.matches_inbound(r)})}),i},c.prototype.recordSessionProblem=async function(e,t,n){await this._cryptoStore.storeEndToEndSessionProblem(e,t,n)},c.prototype.sessionMayHaveProblems=async function(e,t){return await this._cryptoStore.getEndToEndSessionProblem(e,t)},c.prototype.filterOutNotifiedErrorDevices=async function(e){return await this._cryptoStore.filterOutNotifiedErrorDevices(e)},c.prototype._saveOutboundGroupSession=function(e){const t=e.pickle(this._pickleKey);this._outboundGroupSessionStore[e.session_id()]=t},c.prototype._getOutboundGroupSession=function(t,n){const r=this._outboundGroupSessionStore[t];if(void 0===r)throw new Error("Unknown outbound group session "+t);const i=new e.Olm.OutboundGroupSession;try{return i.unpickle(this._pickleKey,r),n(i)}finally{i.free()}},c.prototype.createOutboundGroupSession=function(){const t=new e.Olm.OutboundGroupSession;try{return t.create(),this._saveOutboundGroupSession(t),t.session_id()}finally{t.free()}},c.prototype.encryptGroupMessage=function(e,t){const n=this;return i.logger.log(`encrypting msg with megolm session ${e}`),a(t),this._getOutboundGroupSession(e,(function(e){const r=e.encrypt(t);return n._saveOutboundGroupSession(e),r}))},c.prototype.getOutboundGroupSessionKey=function(e){return this._getOutboundGroupSession(e,(function(e){return{chain_index:e.message_index(),key:e.session_key()}}))},c.prototype._unpickleInboundGroupSession=function(t,n){const r=new e.Olm.InboundGroupSession;try{return r.unpickle(this._pickleKey,t.session),n(r)}finally{r.free()}},c.prototype._getInboundGroupSession=function(e,t,n,r,i){this._cryptoStore.getEndToEndInboundGroupSession(t,n,r,(t,n)=>{if(null!==t){if(null!==e&&e!==t.room_id)throw new Error("Mismatched room_id for inbound group session (expected "+t.room_id+", was "+e+")");this._unpickleInboundGroupSession(t,e=>{i(e,t,n)})}else i(null,null,n)})},c.prototype.addInboundGroupSession=async function(t,n,r,s,a,c,f){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(t,n,s,o,(l,u)=>{const d=new e.Olm.InboundGroupSession;try{if(f?d.import_session(a):d.create(a),s!=d.session_id())throw new Error("Mismatched group session ID from senderKey: "+n);if(l&&(i.logger.log("Update for megolm session "+n+"/"+s),l.first_known_index()<=d.first_known_index()))return void i.logger.log(`Keeping existing megolm session ${s}`);const e={room_id:t,session:d.pickle(this._pickleKey),keysClaimed:c,forwardingCurve25519KeyChain:r};this._cryptoStore.storeEndToEndInboundGroupSession(n,s,e,o)}finally{d.free()}})})},c.prototype.addInboundGroupSessionWithheld=async function(e,t,n,r,i){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._cryptoStore.storeEndToEndInboundGroupSessionWithheld(t,n,{room_id:e,code:r,reason:i},o)})};const f={"m.unverified":"The sender has disabled encrypting to unverified devices.","m.blacklisted":"The sender has blocked you.","m.unauthorised":"You are not authorised to read the message.","m.no_olm":"Unable to establish a secure channel."};function l(e){return e.code&&e.code in f?f[e.code]:e.reason?e.reason:"decryption key withheld"}t.WITHHELD_MESSAGES=f,c.prototype.decryptGroupMessage=async function(e,t,n,r,i,a){let c,f;if(await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(e,t,n,o,(e,u,d)=>{if(null===e)return d&&(f=new s.DecryptionError("MEGOLM_UNKNOWN_INBOUND_SESSION_ID",l(d),{session:t+"|"+n})),void(c=null);let h;try{h=e.decrypt(r)}catch(e){return void(f=e&&"OLM.UNKNOWN_MESSAGE_INDEX"===e.message&&d?new s.DecryptionError("MEGOLM_UNKNOWN_INBOUND_SESSION_ID",l(d),{session:t+"|"+n}):e)}let p=h.plaintext;if(void 0===p)p=h;else{const e=t+"|"+n+"|"+h.message_index;if(e in this._inboundGroupSessionMessageIndexes){const t=this._inboundGroupSessionMessageIndexes[e];if(t.id!==i||t.timestamp!==a)return void(f=new Error("Duplicate message index, possible replay attack: "+e))}this._inboundGroupSessionMessageIndexes[e]={id:i,timestamp:a}}u.session=e.pickle(this._pickleKey),this._cryptoStore.storeEndToEndInboundGroupSession(t,n,u,o),c={result:p,keysClaimed:u.keysClaimed||{},senderKey:t,forwardingCurve25519KeyChain:u.forwardingCurve25519KeyChain||[]}})}),f)throw f;return c},c.prototype.hasInboundSessionKeys=async function(e,t,n){let r;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._cryptoStore.getEndToEndInboundGroupSession(t,n,o,o=>{null!==o?e!==o.room_id?(i.logger.warn(`requested keys for inbound group session ${t}|`+`${n}, with incorrect room_id `+`(expected ${o.room_id}, `+`was ${e})`),r=!1):r=!0:r=!1})}),r},c.prototype.getInboundGroupSessionKey=async function(e,t,n,r){let i;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(e,t,n,o,(e,t)=>{if(null===e)return void(i=null);void 0===r&&(r=e.first_known_index());const n=e.export_session(r),o=(t.keysClaimed||{}).ed25519||null;i={chain_index:r,key:n,forwarding_curve25519_key_chain:t.forwardingCurve25519KeyChain||[],sender_claimed_ed25519_key:o}})}),i},c.prototype.exportInboundGroupSession=function(e,t,n){return this._unpickleInboundGroupSession(n,r=>{const i=r.first_known_index();return{sender_key:e,sender_claimed_keys:n.keysClaimed,room_id:n.room_id,session_id:t,session_key:r.export_session(i),forwarding_curve25519_key_chain:r.forwardingCurve25519KeyChain||[],first_known_index:r.first_known_index()}})},c.prototype.verifySignature=function(e,t,n){this._getUtility((function(r){r.ed25519_verify(e,t,n)}))}}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(294),n(295);var r=n(82);Object.keys(r).forEach((function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(t,e,{enumerable:!0,get:function(){return r[e]}})}))},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.DeviceTrustLevel=t.UserTrustLevel=t.CrossSigningLevel=t.CrossSigningInfo=void 0;var r=n(22),i=n(10),o=n(4);function s(e){return Object.values(e.keys)[0]}class a extends i.EventEmitter{constructor(e,t){super(),Object.defineProperty(this,"userId",{enumerable:!0,value:e}),this._callbacks=t||{},this.keys={},this.firstUse=!0}async getCrossSigningKey(t,n){if(!this._callbacks.getCrossSigningKey)throw new Error("No getCrossSigningKey callback supplied");void 0===n&&(n=this.getId(t));const r=await this._callbacks.getCrossSigningKey(t,n);if(!r)throw new Error("getCrossSigningKey callback for "+t+" returned falsey");const i=new e.Olm.PkSigning,o=i.init_with_seed(r);if(o!==n)throw i.free(),new Error("Key type "+t+" from getCrossSigningKey callback did not match");return[o,i]}static fromStorage(e,t){const n=new a(t);for(const t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}toStorage(){return{keys:this.keys,firstUse:this.firstUse}}async isStoredInSecretStorage(e){let t=!0;for(const n of["master","self_signing","user_signing"])t&=await e.isStored(`m.cross_signing.${n}`,!1);return t}static async storeInSecretStorage(e,t){for(const n of Object.keys(e)){const i=(0,r.encodeBase64)(e[n]);await t.store(`m.cross_signing.${n}`,i)}}static async getFromSecretStorage(e,t){const n=await t.get(`m.cross_signing.${e}`);return(0,r.decodeBase64)(n)}getId(e){if(e=e||"master",!this.keys[e])return null;return s(this.keys[e])}async resetKeys(t){if(!this._callbacks.saveCrossSigningKeys)throw new Error("No saveCrossSigningKeys callback supplied");if(void 0===t||t&c.MASTER||!this.keys.master)t=c.MASTER|c.USER_SIGNING|c.SELF_SIGNING;else if(0===t)return;const n={},i={};let o,s;try{if(t&c.MASTER?(o=new e.Olm.PkSigning,n.master=o.generate_seed(),s=o.init_with_seed(n.master),i.master={user_id:this.userId,usage:["master"],keys:{["ed25519:"+s]:s}}):[s,o]=await this.getCrossSigningKey("master"),t&c.SELF_SIGNING){const t=new e.Olm.PkSigning;try{n.self_signing=t.generate_seed();const e=t.init_with_seed(n.self_signing);i.self_signing={user_id:this.userId,usage:["self_signing"],keys:{["ed25519:"+e]:e}},(0,r.pkSign)(i.self_signing,o,this.userId,s)}finally{t.free()}}if(t&c.USER_SIGNING){const t=new e.Olm.PkSigning;try{n.user_signing=t.generate_seed();const e=t.init_with_seed(n.user_signing);i.user_signing={user_id:this.userId,usage:["user_signing"],keys:{["ed25519:"+e]:e}},(0,r.pkSign)(i.user_signing,o,this.userId,s)}finally{t.free()}}Object.assign(this.keys,i),this._callbacks.saveCrossSigningKeys(n)}finally{o&&o.free()}}setKeys(e){const t={};if(e.master){if(e.master.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in master key from "+this.userId;throw o.logger.error(t),new Error(t)}this.keys.master?s(e.master)!==this.getId()&&(this.firstUse=!1):this.firstUse=!0,t.master=e.master}else{if(!this.keys.master)throw new Error("Tried to set cross-signing keys without a master key");t.master=this.keys.master}const n=s(t.master);if(e.user_signing){if(e.user_signing.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in user_signing key from "+this.userId;throw o.logger.error(t),new Error(t)}try{(0,r.pkVerify)(e.user_signing,n,this.userId)}catch(e){throw o.logger.error("invalid signature on user-signing key"),e}}if(e.self_signing){if(e.self_signing.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in self_signing key from "+this.userId;throw o.logger.error(t),new Error(t)}try{(0,r.pkVerify)(e.self_signing,n,this.userId)}catch(e){throw o.logger.error("invalid signature on self-signing key"),e}}e.master&&(this.keys.master=e.master,this.keys.self_signing=null,this.keys.user_signing=null),e.self_signing&&(this.keys.self_signing=e.self_signing),e.user_signing&&(this.keys.user_signing=e.user_signing)}async signObject(e,t){if(!this.keys[t])throw new Error("Attempted to sign with "+t+" key but no such key present");const[n,i]=await this.getCrossSigningKey(t);try{return(0,r.pkSign)(e,i,this.userId,n),e}finally{i.free()}}async signUser(e){if(this.keys.user_signing)return this.signObject(e.keys.master,"user_signing")}async signDevice(e,t){if(e!==this.userId)throw new Error(`Trying to sign ${e}'s device; can only sign our own device`);if(this.keys.self_signing)return this.signObject({algorithms:t.algorithms,keys:t.keys,device_id:t.deviceId,user_id:e},"self_signing")}checkUserTrust(e){if(this.userId===e.userId&&this.getId()&&this.getId()===e.getId()&&this.getId("self_signing")&&this.getId("self_signing")===e.getId("self_signing"))return new f(!0,this.firstUse);if(!this.keys.user_signing)return new f(!1,e.firstUse);let t;const n=e.keys.master,i=this.getId("user_signing");try{(0,r.pkVerify)(n,i,this.userId),t=!0}catch(e){t=!1}return new f(t,e.firstUse)}checkDeviceTrust(e,t,n){const i=this.checkUserTrust(e),o=e.keys.self_signing;if(!o)return new l(!1,!1,n);const a=function(e,t){return{algorithms:e.algorithms,keys:e.keys,device_id:e.deviceId,user_id:t,signatures:e.signatures}}(t,e.userId);try{return(0,r.pkVerify)(o,e.getId(),e.userId),(0,r.pkVerify)(a,s(o),e.userId),l.fromUserTrustLevel(i,n)}catch(e){return new l(!1,!1,n)}}}t.CrossSigningInfo=a;const c={MASTER:4,USER_SIGNING:2,SELF_SIGNING:1};t.CrossSigningLevel=c;class f{constructor(e,t){this._crossSigningVerified=e,this._tofu=t}isVerified(){return this.isCrossSigningVerified()}isCrossSigningVerified(){return this._crossSigningVerified}isTofu(){return this._tofu}}t.UserTrustLevel=f;class l{constructor(e,t,n){this._crossSigningVerified=e,this._tofu=t,this._localVerified=n}static fromUserTrustLevel(e,t){return new l(e._crossSigningVerified,e._tofu,t)}isVerified(){return this.isCrossSigningVerified()||this.isLocallyVerified()}isCrossSigningVerified(){return this._crossSigningVerified}isLocallyVerified(){return this._localVerified}isTofu(){return this._tofu}}t.DeviceTrustLevel=l}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VerificationBase=void 0;var r=n(19),i=n(10),o=n(4),s=n(52),a=n(37);const c=new Error("Verification timed out");class f extends i.EventEmitter{constructor(e,t,n,r,i,o){super(),this._channel=e,this._baseApis=t,this.userId=n,this.deviceId=r,this.startEvent=i,this.request=o,this.cancelled=!1,this._done=!1,this._promise=null,this._transactionTimeoutTimer=null,this._resetTimer()}_resetTimer(){o.logger.info("Refreshing/starting the verification transaction timeout timer"),null!==this._transactionTimeoutTimer&&clearTimeout(this._transactionTimeoutTimer),this._transactionTimeoutTimer=setTimeout(()=>{this._done||this.cancelled||(o.logger.info("Triggering verification timeout"),this.cancel(c))},6e5)}_endTimer(){null!==this._transactionTimeoutTimer&&(clearTimeout(this._transactionTimeoutTimer),this._transactionTimeoutTimer=null)}_send(e,t){return this._channel.send(e,t)}_waitForEvent(e){return this._done?Promise.reject(new Error("Verification is already done")):(this._expectedEvent=e,new Promise((e,t)=>{this._resolveEvent=e,this._rejectEvent=t}))}handleEvent(e){if(!this._done)if(e.getType()===this._expectedEvent)"m.key.verification.done"!==this._expectedEvent&&(this._expectedEvent=void 0,this._rejectEvent=void 0,this._resetTimer(),this._resolveEvent(e));else if("m.key.verification.cancel"===e.getType()){const e=this._reject;this._reject=void 0,e(new Error("Other side cancelled verification"))}else{const t=new Error("Unexpected message: expecting "+this._expectedEvent+" but got "+e.getType());if(this._expectedEvent=void 0,this._rejectEvent){const e=this._rejectEvent;this._rejectEvent=void 0,e(t)}this.cancel(t)}}done(){this._endTimer(),this._done||(this._channel.needsDoneMessage&&this._send("m.key.verification.done",{}),this._resolve())}cancel(e){if(this._endTimer(),!this._done){if(this.cancelled=!0,this.userId&&this.deviceId)if(e===c){const e=(0,a.newTimeoutError)();this._send(e.getType(),e.getContent())}else if(e instanceof r.MatrixEvent){if(e.getSender()!==this.userId){const t=e.getContent();"m.key.verification.cancel"===e.getType()?(t.code=t.code||"m.unknown",t.reason=t.reason||t.body||"Unknown reason",this._send("m.key.verification.cancel",t)):this._send("m.key.verification.cancel",{code:"m.unknown",reason:t.body||"Unknown reason"})}}else this._send("m.key.verification.cancel",{code:"m.unknown",reason:e.toString()});null!==this._promise?this._reject&&this._reject(e):this._promise=Promise.reject(e),this.emit("cancel",e)}}verify(){return this._promise?this._promise:(this._promise=new Promise((e,t)=>{this._resolve=(...t)=>{this._done=!0,this._endTimer(),e(...t)},this._reject=(...e)=>{this._done=!0,this._endTimer(),t(...e)}}),this._doVerification&&!this._started&&(this._started=!0,this._resetTimer(),Promise.resolve(this._doVerification()).then(this.done.bind(this),this.cancel.bind(this))),this._promise)}async _verifyKeys(e,t,n){const r=[];for(const[i,a]of Object.entries(t)){const t=i.split(":",2)[1],c=await this._baseApis.getStoredDevice(e,t);if(c)await n(i,c,a),r.push(t);else{const c=this._baseApis._crypto._deviceList.getStoredCrossSigningForUser(e);c&&c.getId()===t?(await n(i,s.DeviceInfo.fromStorage({keys:{[i]:t}},t),a),r.push(t)):o.logger.warn(`verification: Could not find device ${t} to verify`)}}if(!r.length)throw new Error("No devices could be verified");for(const t of r)await this._baseApis.setDeviceVerified(e,t)}}t.VerificationBase=f},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.keyFromAuthData=async function(t,n){if(!e.Olm)throw new Error("Olm is not available");if(!t.private_key_salt||!t.private_key_iterations)throw new Error("Salt and/or iterations not found: this backup cannot be restored with a passphrase");return await i(n,t.private_key_salt,t.private_key_iterations)},t.keyFromPassphrase=async function(t){if(!e.Olm)throw new Error("Olm is not available");const n=(0,r.randomString)(32);return{key:await i(t,n,5e5),salt:n,iterations:5e5}},t.deriveKey=i;var r=n(53);async function i(t,n,r){const i=e.crypto.subtle,o=e.TextEncoder;if(!i||!o)throw new Error("Password-based backup is not avaiable on this platform");const s=await i.importKey("raw",(new o).encode(t),{name:"PBKDF2"},!1,["deriveBits"]),a=await i.deriveBits({name:"PBKDF2",salt:(new o).encode(n),iterations:r,hash:"SHA-512"},s,8*e.Olm.PRIVATE_KEY_LENGTH);return new Uint8Array(a)}}).call(this,n(6))},function(e,t,n){"use strict";(function(e,r){var i=n(16);Object.defineProperty(t,"__esModule",{value:!0}),t.encodeRecoveryKey=function(t){const n=new e(s.length+t.length+1);n.set(s,0),n.set(t,s.length);let r=0;for(let e=0;e{this.accountData[e.type]=e})}_accumulateRooms(e){e.rooms&&(e.rooms.invite&&Object.keys(e.rooms.invite).forEach(t=>{this._accumulateRoom(t,"invite",e.rooms.invite[t])}),e.rooms.join&&Object.keys(e.rooms.join).forEach(t=>{this._accumulateRoom(t,"join",e.rooms.join[t])}),e.rooms.leave&&Object.keys(e.rooms.leave).forEach(t=>{this._accumulateRoom(t,"leave",e.rooms.leave[t])}))}_accumulateRoom(e,t,n){switch(t){case"invite":this._accumulateInviteState(e,n);break;case"join":this.inviteRooms[e]&&delete this.inviteRooms[e],this._accumulateJoinState(e,n);break;case"leave":this.inviteRooms[e]?delete this.inviteRooms[e]:delete this.joinRooms[e];break;default:r.logger.error("Unknown cateogory: ",t)}}_accumulateInviteState(e,t){if(!t.invite_state||!t.invite_state.events)return;if(!this.inviteRooms[e])return void(this.inviteRooms[e]={invite_state:t.invite_state});const n=this.inviteRooms[e];t.invite_state.events.forEach(e=>{let t=!1;for(let r=0;r{n._accountData[e.type]=e}),t.unread_notifications&&(n._unreadNotifications=t.unread_notifications),t.summary){const e="m.heroes",r="m.invited_member_count",i="m.joined_member_count",o=n._summary,s=t.summary;o[e]=s[e]||o[e],o[i]=s[i]||o[i],o[r]=s[r]||o[r]}if(t.ephemeral&&t.ephemeral.events&&t.ephemeral.events.forEach(e=>{"m.receipt"===e.type&&e.content&&Object.keys(e.content).forEach(t=>{e.content[t]["m.read"]&&Object.keys(e.content[t]["m.read"]).forEach(r=>{n._readReceipts[r]={data:e.content[t]["m.read"][r],eventId:t}})})}),t.timeline&&t.timeline.limited&&(n._timeline=[]),t.state&&t.state.events&&t.state.events.forEach(e=>{o(n._currentState,e)}),t.timeline&&t.timeline.events&&t.timeline.events.forEach((e,r)=>{o(n._currentState,e),n._timeline.push({event:e,token:0===r?t.timeline.prev_batch:null})}),n._timeline.length>this.opts.maxTimelineEntries){for(let e=n._timeline.length-this.opts.maxTimelineEntries;e{this._accumulateGroup(t,"invite",e.groups.invite[t])}),e.groups.join&&Object.keys(e.groups.join).forEach(t=>{this._accumulateGroup(t,"join",e.groups.join[t])}),e.groups.leave&&Object.keys(e.groups.leave).forEach(t=>{this._accumulateGroup(t,"leave",e.groups.leave[t])}))}_accumulateGroup(e,t,n){for(const t of["invite","join","leave"])delete this.groups[t][e];this.groups[t][e]=n}getJSON(){const e={join:{},invite:{},leave:{}};Object.keys(this.inviteRooms).forEach(t=>{e.invite[t]=this.inviteRooms[t]}),Object.keys(this.joinRooms).forEach(t=>{const n=this.joinRooms[t],r={ephemeral:{events:[]},account_data:{events:[]},state:{events:[]},timeline:{events:[],prev_batch:null},unread_notifications:n._unreadNotifications,summary:n._summary};Object.keys(n._accountData).forEach(e=>{r.account_data.events.push(n._accountData[e])});const s={type:"m.receipt",room_id:t,content:{}};Object.keys(n._readReceipts).forEach(e=>{const t=n._readReceipts[e];s.content[t.eventId]||(s.content[t.eventId]={"m.read":{}}),s.content[t.eventId]["m.read"][e]=t.data}),Object.keys(s.content).length>0&&r.ephemeral.events.push(s),n._timeline.forEach(e=>{if(!r.timeline.prev_batch){if(!e.token)return;r.timeline.prev_batch=e.token}r.timeline.events.push(e.event)});const a=Object.create(null);for(let e=r.timeline.events.length-1;e>=0;e--){const t=r.timeline.events[e];if(null===t.state_key||void 0===t.state_key)continue;const n=(0,i.deepCopy)(t);n.unsigned&&(n.unsigned.prev_content&&(n.content=n.unsigned.prev_content),n.unsigned.prev_sender&&(n.sender=n.unsigned.prev_sender)),o(a,n)}Object.keys(n._currentState).forEach(e=>{Object.keys(n._currentState[e]).forEach(t=>{let i=n._currentState[e][t];a[e]&&a[e][t]&&(i=a[e][t]),r.state.events.push(i)})}),e.join[t]=r});const t=[];return Object.keys(this.accountData).forEach(e=>{t.push(this.accountData[e])}),{nextBatch:this.nextBatch,roomsData:e,groupsData:this.groups,accountData:t}}getNextBatchToken(){return this.nextBatch}}},function(e,t,n){"use strict";var r=String.prototype.replace,i=/%20/g,o=n(84),s={RFC1738:"RFC1738",RFC3986:"RFC3986"};e.exports=o.assign({default:s.RFC3986,formatters:{RFC1738:function(e){return r.call(e,i,"+")},RFC3986:function(e){return String(e)}}},s)},function(e,t){for(var n=[],r=0;r<256;++r)n[r]=(r+256).toString(16).substr(1);e.exports=function(e,t){var r=t||0,i=n;return[i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]]].join("")}},function(e,t,n){"use strict";t.__esModule=!0,t.stateify=t.TokenState=t.CharacterState=void 0;var r=n(54);var i=function(e){this.j=[],this.T=e||null};i.prototype={defaultTransition:!1,on:function(e,t){if(e instanceof Array){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:null,n=this.next(new e(""));return n===this.defaultTransition?(n=new this.constructor(t),this.on(e,n)):t&&(n.T=t),n},test:function(e,t){return e instanceof t}});t.CharacterState=o,t.TokenState=s,t.stateify=function(e,t,n,r){for(var i=0,s=e.length,a=t,c=[],f=void 0;i=s)return[];for(;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}},function(e,t,n){"use strict";(function(e){var r=n(155),i=n.n(r),o=n(86),s=n.n(o),a=n(26),c=n.n(a),f=n(27),l=n.n(f),u=n(55),d=n.n(u),h=n(56),p=n.n(h),m=n(5),g=n.n(m),y=n(57),b=n.n(y),v=n(1),_=n.n(v),w=n(0),A=n.n(w),E=n(9),k=n.n(E),S=n(335),T=(n(41),n(156)),I=n(38),x=(n(42),n(157)),R=n(158),C=n(40),O=n(28),P=n(87),M=n(160),D=n(88),N=n(162);n(330);function B(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function j(e){for(var t=1;t0&&void 0!==arguments[0])||arguments[0];if(r.state.client){await r.state.client.leave(r.state.roomId);var t={type:"m.login.password",user:r.state.userId,identifier:{type:"m.id.user",user:r.state.userId},password:r.state.password};await r.state.client.deactivateAccount(t,!0),await r.state.client.stopClient(),await r.state.client.clearStores(),r.setState({client:null,ready:!0}),window.clearInterval(r.state.waitIntervalId)}r.state.localStorage&&r.state.localStorage.clear(),e&&r.setState(r.initialState)})),_()(g()(r),"createLocalStorage",(async function(t,n){var r=e.localStorage;if(null==r){var i="matrix-chat-".concat(t,"-").concat(n),o=I.resolve(I.join(T.homedir(),".local-storage",i));r=new x.LocalStorage(o)}return r})),_()(g()(r),"createClientWithAccount",(async function(){var e=C.createClient(r.props.matrixServerUrl);try{await e.registerRequest({})}catch(c){var t=Object(O.uuid)(),n=Object(O.uuid)(),i=c.data.session,o=await e.registerRequest({auth:{session:i,type:"m.login.dummy"},inhibit_login:!1,password:n,username:t,x_show_msisdn:!0}),s=await r.createLocalStorage(o.device_id,i);r.setState({accessToken:o.access_token,userId:o.user_id,username:t,password:n,localStorage:s,sessionId:i,deviceId:o.device_id});var a={baseUrl:r.props.matrixServerUrl,accessToken:o.access_token,userId:o.user_id,deviceId:o.device_id,sessionStore:new C.WebStorageSessionStore(s)};return C.createClient(a)}})),_()(g()(r),"initializeChat",(async function(){r.setState({ready:!1});var e=await r.createClientWithAccount();try{await e.initCrypto()}catch(e){return r.restartWithoutCrypto()}await e.startClient(),e.once("sync",(async function(t,n,i){"PREPARED"===t&&(r.setState({client:e}),e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e))}))})),_()(g()(r),"restartWithoutCrypto",(async function(){r.state.client&&(r.state.client.leave(r.state.roomId),r.state.client.stopClient(),r.state.client.clearStores(),r.state.localStorage.clear()),r.setState({ready:!1,facilitatorInvited:!1,decryptionErrors:{},roomId:null,typingStatus:null,client:null,isCryptoEnabled:!1}),r.displayBotMessage({body:"Restarting chat without encryption."});var e,t={baseUrl:r.props.matrixServerUrl,accessToken:r.state.accessToken,userId:r.state.userId,deviceId:r.state.deviceId};e=C.createClient(t),await e.startClient(),e.once("sync",(async function(t,n,i){if("PREPARED"===t)try{r.setState({client:e}),e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e),r.displayBotMessage({body:"Messages in this chat are not encrypted."})}catch(e){console.log("error",e),r.handleInitError(e)}}))})),_()(g()(r),"initializeUnencryptedChat",(async function(){r.setState({ready:!1});var e=await r.createClientWithAccount();await e.startClient(),e.once("sync",(async function(t,n,i){e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e)}))})),_()(g()(r),"handleInitError",(function(e){console.log("error",e),r.displayBotMessage({body:r.props.chatUnavailableMessage}),r.setState({ready:!0})})),_()(g()(r),"handleDecryptionError",(async function(e,t){var n=e.getId();r.handleMessageEvent(e),r.setState({decryptionErrors:_()({},n,!0)})})),_()(g()(r),"verifyAllRoomDevices",(async function(e,t){if(t&&e&&r.state.isCryptoEnabled){var n=(await t.getEncryptionTargetMembers()).map((function(e){return e.userId})),i=await e.downloadKeys(n);for(var o in i)for(var s in i[o])await e.setDeviceVerified(o,s)}})),_()(g()(r),"createRoom",(async function(e){var t=new Date,n=t.toLocaleDateString(),i=t.toLocaleTimeString(),o={room_alias_name:"private-support-chat-".concat(Object(O.uuid)()),invite:[r.props.botId],visibility:"private",name:"".concat(i,", ").concat(n," - ").concat(r.props.roomName)},s=await e.isCryptoEnabled();s&&(o.initial_state=[{type:"m.room.encryption",state_key:"",content:U}]);var a=(await e.createRoom(o)).room_id;e.setPowerLevel(a,r.props.botId,100),r.setState({roomId:a,isCryptoEnabled:s})})),_()(g()(r),"sendMessage",(async function(e){if(r.state.client&&r.state.roomId)try{await r.state.client.sendTextMessage(r.state.roomId,e)}catch(t){switch(t.name){case"UnknownDeviceError":Object.keys(t.devices).forEach((function(e){Object.keys(t.devices[e]).map((async function(t){await r.state.client.setDeviceKnown(e,t,!0)}))})),r.sendMessage(e);break;default:r.displayBotMessage({body:"Your message was not sent."}),console.log("Error sending message",t)}}})),_()(g()(r),"displayFakeMessage",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Object(O.uuid)(),i={id:n,type:"m.room.message",sender:t,roomId:r.state.roomId,content:e,timestamp:Date.now()};r.setState({messages:j({},r.state.messages,_()({},n,i))})})),_()(g()(r),"displayBotMessage",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Object(O.uuid)(),i={id:n,type:"m.room.message",sender:r.props.botId,roomId:t||r.state.roomId,content:e,timestamp:Date.now()};r.setState({messages:j({},r.state.messages,_()({},n,i))})})),_()(g()(r),"handleMessageEvent",(function(e){var t={id:e.getId(),type:e.getType(),sender:e.getSender(),roomId:e.getRoomId(),content:e.getContent(),timestamp:e.getTs()};if(!(t.content.showToUser&&t.content.showToUser!==r.state.userId||t.content.body.startsWith("!bot")&&t.sender!==r.state.userId)){var n=s()(r.state.messagesInFlight),i=n.findIndex((function(e){return e===t.content.body}));i>-1&&(n.splice(i,1),r.setState({messagesInFlight:n}));var o=j({},r.state.decryptionErrors);delete o[t.id],r.setState({messages:j({},r.state.messages,_()({},t.id,t)),decryptionErrors:o})}})),_()(g()(r),"handleKeyDown",(function(e){switch(e.keyCode){case 27:r.state.emojiSelectorOpen?r.closeEmojiSelector():r.state.opened&&r.handleToggleOpen()}})),_()(g()(r),"setMatrixListeners",(function(e){e.on("sync",(function(t,n,i){switch(t){case"ERROR":case"SYNCING":break;case"PREPARED":r.setState({client:e})}})),e.on("Room.timeline",(function(t,n){var i=t.getType(),o=t.getContent(),s=t.getSender();if("m.room.encryption"===i&&(r.displayBotMessage({body:"Messages in this chat are secured with end-to-end encryption."},n.room_id),r.verifyAllRoomDevices(e,n)),"m.room.message"===i&&!r.state.isCryptoEnabled){if(t.isEncrypted())return;r.handleMessageEvent(t)}"m.room.member"===i&&"invite"===o.membership&&s===r.props.botId&&r.setState({facilitatorInvited:!0}),"m.room.member"===i&&"join"===o.membership&&s!==r.props.botId&&s!==r.state.userId&&(r.verifyAllRoomDevices(e,n),r.setState({facilitatorId:s,ready:!0}),window.clearInterval(r.state.waitIntervalId))})),e.on("Event.decrypted",(function(e,t){if(t)return r.handleDecryptionError(e,t);"m.room.message"===e.getType()&&r.handleMessageEvent(e)})),e.on("RoomMember.typing",(function(e,t){t.typing&&t.roomId===r.state.roomId?r.setState({typingStatus:"".concat(t.name," is typing...")}):r.setState({typingStatus:null})})),e.on("event",(function(e){var t=e.getType(),n=e.getContent();"m.bot.signal"===t&&r.handleBotSignal(n.signal)}))})),_()(g()(r),"handleBotSignal",(function(e){switch(e){case"END_CHAT":return r.displayBotMessage({body:r.props.exitMessage}),r.exitChat(!1);case"CHAT_OFFLINE":return r.displayBotMessage({body:r.props.chatOfflineMessage}),r.exitChat(!1)}})),_()(g()(r),"handleInputChange",(function(e){r.setState({inputValue:e.target.value})})),_()(g()(r),"handleAcceptTerms",(function(){r.setState({awaitingAgreement:!1}),r.startWaitTimeForFacilitator();try{r.props.isEncryptionDisabled?r.initializeUnencryptedChat():r.initializeChat()}catch(e){r.handleInitError(e)}})),_()(g()(r),"startWaitTimeForFacilitator",(function(){var e=window.setInterval((function(){r.state.facilitatorId||r.state.ready||r.displayBotMessage({body:r.props.waitMessage})}),r.props.waitInterval);r.setState({waitIntervalId:e})})),_()(g()(r),"handleRejectTerms",(function(){r.exitChat(),r.displayBotMessage({body:r.props.exitMessage})})),_()(g()(r),"handleSubmit",(function(e){e.preventDefault();var t=r.state.inputValue;if(!Boolean(t))return null;if(r.state.isCryptoEnabled&&r.state.client&&(!r.state.client.isRoomEncrypted(r.state.roomId)||!r.state.client.isCryptoEnabled()))return null;if(r.state.client&&r.state.roomId){var n=s()(r.state.messagesInFlight);n.push(t),r.setState({inputValue:"",messagesInFlight:n},(function(){return r.sendMessage(t)})),r.chatboxInput.current.focus()}})),_()(g()(r),"onEmojiClick",(function(e,t){e.preventDefault();var n=t.emoji;r.setState({inputValue:r.state.inputValue.concat(n),emojiSelectorOpen:!1},r.chatboxInput.current.focus())})),r.initialState={opened:!1,showDock:!0,client:null,ready:!0,accessToken:null,userId:null,password:null,localStorage:null,messages:{},inputValue:"",errors:[],roomId:null,typingStatus:null,awaitingAgreement:!0,emojiSelectorOpen:!1,facilitatorInvited:!1,isMobile:!0,isSlowConnection:!0,decryptionErrors:{},messagesInFlight:[]},r.state=r.initialState,r.chatboxInput=A.a.createRef(),r.messageWindow=A.a.createRef(),r.termsUrl=A.a.createRef(),r}return b()(n,t),l()(n,[{key:"componentDidUpdate",value:function(e,t){t.messages===this.state.messages&&t.messagesInFlight===this.state.messagesInFlight&&t.typingStatus===this.state.typingStatus||this.messageWindow.current.scrollTo&&this.messageWindow.current.scrollTo(0,this.messageWindow.current.scrollHeight),!t.facilitatorInvited&&this.state.facilitatorInvited&&this.displayBotMessage({body:this.props.confirmationMessage}),!t.opened&&this.state.opened&&this.detectMobile()}},{key:"componentDidMount",value:function(){document.addEventListener("keydown",this.handleKeyDown,!1),window.addEventListener("beforeunload",this.exitChat)}},{key:"componentWillUnmount",value:function(){document.removeEventListener("keydown",this.handleKeyDown,!1),window.removeEventListener("beforeunload",this.exitChat),this.exitChat()}},{key:"render",value:function(){var e,t=this,n=this.state,r=n.ready,o=n.messages,s=n.messagesInFlight,a=n.inputValue,c=n.userId,f=n.roomId,l=n.typingStatus,u=n.opened,d=n.showDock,h=n.emojiSelectorOpen,p=n.isMobile,m=n.decryptionErrors,g=Object.values(o).sort((function(e,t){return e.timestamp-t.timestamp})),y=this.props.position.split(" "),b=i()(y,2),v=b[0],w=b[1];return A.a.createElement("div",{id:"safesupport"},A.a.createElement("div",{className:"docked-widget size-".concat(this.props.size),role:"complementary",style:(e={},_()(e,v,"10px"),_()(e,w,"10px"),e)},A.a.createElement(S.a,{in:u,timeout:250,onExited:this.handleWidgetExit,onEntered:this.handleWidgetEnter},(function(e){return A.a.createElement("div",{className:"widget widget-".concat(e," position-").concat(v),"aria-hidden":!u},A.a.createElement("div",{id:"safesupport-chatbox","aria-haspopup":"dialog"},A.a.createElement(D.a,{handleToggleOpen:t.handleToggleOpen,opened:u,handleExitChat:t.handleExitChat}),A.a.createElement("div",{className:"message-window",ref:t.messageWindow},A.a.createElement("div",{className:"messages"},A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text"},t.props.introMessage)),A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text"},"Please read the full ",A.a.createElement("a",{href:t.props.termsUrl,ref:t.termsUrl,target:"_blank",rel:"noopener noreferrer"},"terms and conditions"),". By using this chat, you agree to these terms.")),A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text"},t.props.agreementMessage)),A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text buttons"},"👉",A.a.createElement("button",{className:"btn",id:"accept",onClick:t.handleAcceptTerms},"YES"),A.a.createElement("button",{className:"btn",id:"reject",onClick:t.handleRejectTerms},"NO"))),g.map((function(e,n){return A.a.createElement(P.a,{key:e.id,message:e,userId:c,botId:t.props.botId,client:t.state.client})})),s.map((function(e,t){return A.a.createElement(P.a,{key:"message-inflight-".concat(t),message:{content:{body:e}},placeholder:!0})})),l&&A.a.createElement("div",{className:"notices"},A.a.createElement("div",{role:"status"},l)),Boolean(Object.keys(m).length)&&A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text buttons"},"Restart chat without encryption?",A.a.createElement("button",{className:"btn",id:"accept",onClick:t.restartWithoutCrypto},"RESTART"))),!r&&A.a.createElement("div",{className:"loader"},"loading..."))),A.a.createElement("div",{className:"input-window"},A.a.createElement("form",{onSubmit:t.handleSubmit},A.a.createElement("div",{className:"message-input-container"},A.a.createElement("input",{id:"message-input",type:"text",onChange:t.handleInputChange,value:a,"aria-label":"Send a message...",placeholder:"Send a message...",autoFocus:!0,ref:t.chatboxInput}),"entered"===e&&!p&&A.a.createElement(N.a,{onEmojiClick:t.onEmojiClick,emojiSelectorOpen:h,toggleEmojiSelector:t.toggleEmojiSelector,closeEmojiSelector:t.closeEmojiSelector})),A.a.createElement("input",{type:"submit",value:"Send",id:"submit",onClick:t.handleSubmit})))))})),d&&!f&&A.a.createElement(M.a,{handleToggleOpen:this.handleToggleOpen,size:this.props.size,label:this.props.dockLabel}),d&&f&&A.a.createElement(D.a,{handleToggleOpen:this.handleToggleOpen,opened:u,handleExitChat:this.handleExitChat})))}}]),n}(A.a.Component);L.propTypes={matrixServerUrl:k.a.string.isRequired,botId:k.a.string.isRequired,termsUrl:k.a.string,introMessage:k.a.string,roomName:k.a.string,agreementMessage:k.a.string,confirmationMessage:k.a.string,exitMessage:k.a.string,chatUnavailableMessage:k.a.string,anonymousDisplayName:k.a.string,waitMessage:k.a.string,chatOfflineMessage:k.a.string,isEncryptionDisabled:k.a.bool,position:k.a.oneOf(["top left","top right","bottom left","bottom right"]),size:k.a.oneOf(["small","large"]),maxWaitTime:k.a.number,waitInterval:k.a.number,dockLabel:k.a.string},L.defaultProps={matrixServerUrl:"https://matrix.rhok.space/",botId:"@help-bot:rhok.space",termsUrl:"https://tosdr.org/",roomName:"Support Chat",introMessage:"This chat application does not collect any of your personal data or any data from your use of this service.",agreementMessage:"Do you want to continue?",confirmationMessage:"Waiting for a facilitator to join the chat...",exitMessage:"The chat is closed. You may close this window.",anonymousDisplayName:"Anonymous",chatUnavailableMessage:"The chat service is not available right now. Please try again later.",waitMessage:"Please be patient, our online facilitators are currently responding to other support requests.",chatOfflineMessage:"All of the chat facilitators are currently offline.",isEncryptionDisabled:!1,position:"bottom right",size:"large",maxWaitTime:6e5,waitInterval:12e4,dockLabel:"Start a new chat"},t.a=L}).call(this,n(6))},function(e,t,n){var r=n(168),i=n(169),o=n(170);e.exports=function(e,t){return r(e)||i(e,t)||o()}},function(e,t){t.endianness=function(){return"LE"},t.hostname=function(){return"undefined"!=typeof location?location.hostname:""},t.loadavg=function(){return[]},t.uptime=function(){return 0},t.freemem=function(){return Number.MAX_VALUE},t.totalmem=function(){return Number.MAX_VALUE},t.cpus=function(){return[]},t.type=function(){return"Browser"},t.release=function(){return"undefined"!=typeof navigator?navigator.appVersion:""},t.networkInterfaces=t.getNetworkInterfaces=function(){return{}},t.arch=function(){return"javascript"},t.platform=function(){return"browser"},t.tmpdir=t.tmpDir=function(){return"/tmp"},t.EOL="\n",t.homedir=function(){return"/"}},function(e,t,n){(function(e){(function(){var r,i,o,s,a,c,f,l,u,d,h,p,m,g=function(e,t){for(var n in t)y.call(t,n)&&(e[n]=t[n]);function r(){this.constructor=e}return r.prototype=t.prototype,e.prototype=new r,e.__super__=t.prototype,e},y={}.hasOwnProperty;p=n(38),h=n(42),d=n(10),m=n(179).sync,c=function(e){var t,n,r,i,o;for(o=[],t=0,n=(i=h.readdirSync(e)).length;tthis.quota)throw new s;if(m(c,y,"utf8"),i||((u=new o(n,this._keys.push(e)-1)).size=b,this._metaKeyMap[e]=u,this.length+=1,this._bytesInUse+=b),l)return r=new a(e,g,t,this._eventUrl),this.emit("storage",r)},r.prototype.getItem=function(e){var t,n;return e=f(e),(n=this._metaKeyMap[e])?(t=p.join(this._location,n.key),h.readFileSync(t,"utf8")):null},r.prototype._getStat=function(e){var t;e=f(e),t=p.join(this._location,encodeURIComponent(e));try{return h.statSync(t)}catch(e){return null}},r.prototype.removeItem=function(e){var t,n,r,i,o,s,c,u;if(e=f(e),s=this._metaKeyMap[e]){for(i in c=null,(r=d.EventEmitter.listenerCount(this,"storage"))&&(c=this.getItem(e)),delete this._metaKeyMap[e],this.length-=1,this._bytesInUse-=s.size,n=p.join(this._location,s.key),this._keys.splice(s.index,1),u=this._metaKeyMap)u[i],(o=this._metaKeyMap[i]).index>s.index&&(o.index-=1);if(l(n),r)return t=new a(e,c,null,this._eventUrl),this.emit("storage",t)}},r.prototype.key=function(e){var t;return"---.EMPTY_STRING.---"===(t=this._keys[e])?"":t},r.prototype.clear=function(){var e;if(c(this._location),this._metaKeyMap=u(),this._keys=[],this.length=0,this._bytesInUse=0,d.EventEmitter.listenerCount(this,"storage"))return e=new a(null,null,null,this._eventUrl),this.emit("storage",e)},r.prototype._getBytesInUse=function(){return this._bytesInUse},r.prototype._deleteLocation=function(){return delete n[this._location],l(this._location),this._metaKeyMap={},this._keys=[],this.length=0,this._bytesInUse=0},r}(d.EventEmitter)),t.LocalStorage=i,t.JSONStorage=r,t.QUOTA_EXCEEDED_ERR=s}).call(this)}).call(this,n(13))},function(e,t,n){(function(t,r,i,o){var s,a,c,f,l={},u=(c="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,function(f){var u,d;if(f=f||{},u||(u=void 0!==f?f:{}),"undefined"!=typeof window)d=function(e){window.crypto.getRandomValues(e)};else{if(!e.exports)throw Error("Cannot find global to attach library to");var h=n(203);d=function(e){var t=h.randomBytes(e.length);e.set(t)},r=t.process}if("undefined"!=typeof OLM_OPTIONS)for(var p in OLM_OPTIONS)OLM_OPTIONS.hasOwnProperty(p)&&(u[p]=OLM_OPTIONS[p]);u.onRuntimeInitialized=function(){We=u._olm_error(),l.PRIVATE_KEY_LENGTH=u._olm_pk_private_key_length(),s&&s()},u.onAbort=function(e){a&&a(e)};var m,g={};for(m in u)u.hasOwnProperty(m)&&(g[m]=u[m]);u.arguments=[],u.thisProgram="./this.program",u.quit=function(e,t){throw t},u.preRun=[],u.postRun=[];var y=!1,b=!1,v=!1,_=!1;y="object"==typeof window,b="function"==typeof importScripts,v="object"==typeof r&&!y&&!b,_=!y&&!v&&!b;var w,A,E="";v?(E=i+"/",u.read=function(e,t){var r=Ae(e);return r||(w||(w=n(42)),A||(A=n(38)),e=A.normalize(e),r=w.readFileSync(e)),t?r:r.toString()},u.readBinary=function(e){return(e=u.read(e,!0)).buffer||(e=new Uint8Array(e)),C(e.buffer),e},1>2];return e=t+e+15&-16,U[V>>2]=e,(e=e>=$)&&(J(),e=!0),e?(U[V>>2]=t,0):t}function x(e){var t;return t||(t=16),Math.ceil(e/t)*t}g=void 0;var R=!1;function C(e,t){e||Ne("Assertion failed: "+t)}function O(e){var t="i8";switch("*"===t.charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":N[e>>0]=0;break;case"i16":j[e>>1]=0;break;case"i32":U[e>>2]=0;break;case"i64":tempI64=[0,(tempDouble=0,1<=+ce(tempDouble)?0>>0:~~+fe((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],U[e>>2]=tempI64[0],U[e+4>>2]=tempI64[1];break;case"float":L[e>>2]=0;break;case"double":F[e>>3]=0;break;default:Ne("invalid type for setValue: "+t)}}function P(e,t){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 U[e>>2];case"float":return L[e>>2];case"double":return F[e>>3];default:Ne("invalid type for getValue: "+t)}return null}function M(e){var t,n=u.ALLOC_STACK;if("number"==typeof e)var r=!0,i=e;else r=!1,i=e.length;if(t=4==n?o:["function"==typeof ke?ke:T,Se,T,I][void 0===n?2:n](Math.max(i,1)),r){var o=t;for(C(0==(3&t)),e=t+(-4&i);o>2]=0;for(e=t+i;o>0]=0;return t}return e.subarray||e.slice?B.set(e,t):B.set(new Uint8Array(e),t),t}var D,N,B,j,U,L,F,q,z,K,G,H,V,Q="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function W(e){for(var t=B,n=e;t[n];)++n;if(16r?n+=String.fromCharCode(r):(r-=65536,n+=String.fromCharCode(55296|r>>10,56320|1023&r))}}else n+=String.fromCharCode(r)}}function Y(e,t,n,r){if(!(0=s&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),127>=s){if(n>=r)break;t[n++]=s}else{if(2047>=s){if(n+1>=r)break;t[n++]=192|s>>6}else{if(65535>=s){if(n+2>=r)break;t[n++]=224|s>>12}else{if(2097151>=s){if(n+3>=r)break;t[n++]=240|s>>18}else{if(67108863>=s){if(n+4>=r)break;t[n++]=248|s>>24}else{if(n+5>=r)break;t[n++]=252|s>>30,t[n++]=128|s>>24&63}t[n++]=128|s>>18&63}t[n++]=128|s>>12&63}t[n++]=128|s>>6&63}t[n++]=128|63&s}}return t[n]=0,n-i}function X(e){for(var t=0,n=0;n=r&&(r=65536+((1023&r)<<10)|1023&e.charCodeAt(++n)),127>=r?++t:t=2047>=r?t+2:65535>=r?t+3:2097151>=r?t+4:67108863>=r?t+5:t+6}return t}function J(){Ne("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+$+", (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 ")}"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le"),q=z=K=G=H=V=0;var Z=u.TOTAL_STACK||5242880,$=u.TOTAL_MEMORY||16777216;function ee(e){for(;0>0]=e.charCodeAt(n)}var ce=Math.abs,fe=Math.ceil,le=Math.floor,ue=Math.min,de=0,he=null,pe=null;u.preloadedImages={},u.preloadedAudios={};var me=null,ge="data:application/octet-stream;base64,";q=39112,ne.push(),me="data:application/octet-stream;base64,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dmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAAAAAAAAXZQAAAgAAABmlAAACwAAALiSAABUlAAACAAAALiSAAC0mAAAAAAAAAEAAAABAAAAAQAAAAIAAAACAAAAuJIAANiUAAALAAAAuJIAACKWAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmJgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABPTE1fS0VZUwBPTE1fUk9PVABPTE1fUkFUQ0hFVABzZW5kZXIgY2hhaW4gaW5kZXg6ICVkIAByZWNlaXZlciBjaGFpbiBpbmRpY2VzOgAgc2tpcHBlZCBtZXNzYWdlIGtleXM6ACAlZAABAiJjdXJ2ZTI1NTE5IjoAImVkMjU1MTkiOgBNRUdPTE1fS0VZUwAAAQIDVU5LTk9XTl9FUlJPUgBTVUNDRVNTAE5PVF9FTk9VR0hfUkFORE9NAE9VVFBVVF9CVUZGRVJfVE9PX1NNQUxMAEJBRF9NRVNTQUdFX1ZFUlNJT04AQkFEX01FU1NBR0VfRk9STUFUAEJBRF9NRVNTQUdFX01BQwBCQURfTUVTU0FHRV9LRVlfSUQASU5WQUxJRF9CQVNFNjQAQkFEX0FDQ09VTlRfS0VZAFVOS05PV05fUElDS0xFX1ZFUlNJT04AQ09SUlVQVEVEX1BJQ0tMRQBCQURfU0VTU0lPTl9LRVkAVU5LTk9XTl9NRVNTQUdFX0lOREVYAEJBRF9MRUdBQ1lfQUNDT1VOVF9QSUNLTEUAQkFEX1NJR05BVFVSRQBPTE1fSU5QVVRfQlVGRkVSX1RPT19TTUFMTABQaWNrbGUALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBuYW4ATkFOAC4=";var ye=q;q+=16,V=T(4),z=K=x(q),H=x(G=z+Z),U[V>>2]=H;var be=!1;function ve(e){var t=Array(X(e)+1);return e=Y(e,t,0,t.length),t.length=e,t}function _e(e){for(var t=[],n=0;n>4,i=(15&i)<<4|o>>2;var a=(3&o)<<6|s;t+=String.fromCharCode(r),64!==o&&(t+=String.fromCharCode(i)),64!==s&&(t+=String.fromCharCode(a))}while(n>2]=e),e},_emscripten_memcpy_big:function(e,t,n){return B.set(B.subarray(t,t+n),e),e},DYNAMICTOP_PTR:V,tempDoublePtr:ye,STACKTOP:K,STACK_MAX:G};var Ee=function(e,t,n){"use asm";var r=new e.Int8Array(n);var i=new e.Int16Array(n);var o=new e.Int32Array(n);var s=new e.Uint8Array(n);var a=new e.Uint16Array(n);var c=new e.Uint32Array(n);var f=new e.Float32Array(n);var l=new e.Float64Array(n);var u=t.DYNAMICTOP_PTR|0;var d=t.tempDoublePtr|0;var h=t.STACKTOP|0;var p=t.STACK_MAX|0;var m=0;var g=0;var y=0;var b=0;var v=e.NaN,_=e.Infinity;var w=0,A=0,E=0,k=0,S=0.0;var T=0;var I=e.Math.floor;var x=e.Math.abs;var R=e.Math.sqrt;var C=e.Math.pow;var O=e.Math.cos;var P=e.Math.sin;var M=e.Math.tan;var D=e.Math.acos;var N=e.Math.asin;var B=e.Math.atan;var j=e.Math.atan2;var U=e.Math.exp;var L=e.Math.log;var F=e.Math.ceil;var q=e.Math.imul;var z=e.Math.min;var K=e.Math.max;var G=e.Math.clz32;var H=t.abort;var V=t.assert;var Q=t.enlargeMemory;var W=t.getTotalMemory;var Y=t.abortOnCannotGrowMemory;var X=t.invoke_ii;var J=t.invoke_iii;var Z=t.invoke_iiii;var $=t.invoke_iiiiiiiiii;var ee=t.___setErrNo;var te=t._emscripten_memcpy_big;var ne=0.0;function re(e){e=e|0;var t=0;t=h;h=h+e|0;h=h+15&-16;return t|0}function ie(){return h|0}function oe(e){e=e|0;h=e}function se(e,t){e=e|0;t=t|0;h=e;p=t}function ae(e,t){e=e|0;t=t|0;if(!m){m=e;g=t}}function ce(e){e=e|0;T=e}function fe(){return T|0}function le(e){e=e|0;var t=0;t=e+2|0;e=(t>>>0)/3|0;return(e<<2|t-(e*3|0))+-2|0}function ue(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,c=0,f=0;a=t-((t>>>0)%3|0)|0;o=e+a|0;if(!a){a=n;o=e}else{i=e;do{a=s[i>>0]|0;c=a<<8|(s[i+1>>0]|0);f=s[i+2>>0]|0;i=i+3|0;r[n+3>>0]=r[16+(f&63)>>0]|0;r[n+2>>0]=r[16+((c<<8|f)>>>6&63)>>0]|0;r[n+1>>0]=r[16+(c>>>4&63)>>0]|0;r[n>>0]=r[16+(a>>>2)>>0]|0;n=n+4|0}while((i|0)!=(o|0));a=n}n=e+t-o|0;if(!n){f=a;return f|0}i=s[o>>0]|0;if((n|0)==2){n=s[o+1>>0]|0;r[a+2>>0]=r[16+(n<<2&60)>>0]|0;n=(i<<8|n)>>>4;i=3}else{n=i<<4;i=2}r[a+1>>0]=r[16+(n&63)>>0]|0;r[a>>0]=r[16+(n>>>6)>>0]|0;f=a+i|0;return f|0}function de(e){e=e|0;var t=0;t=e+2|0;return((e&3|0)==1?-1:(t&3)+-2+((t>>>2)*3|0)|0)|0}function he(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,c=0,f=0,l=0,u=0;f=t&-4;a=e+f|0;if(!f)c=e;else{c=(((f+-4|0)>>>2)*3|0)+3|0;i=n;o=e;while(1){l=(s[80+(r[o>>0]&127)>>0]|0)<<6|(s[80+(r[o+1>>0]&127)>>0]|0);u=l<<6|(s[80+(r[o+2>>0]&127)>>0]|0);r[i+2>>0]=u<<6|(s[80+(r[o+3>>0]&127)>>0]|0);o=o+4|0;r[i+1>>0]=u>>>2;r[i>>0]=l>>>4;if((o|0)==(a|0))break;else i=i+3|0}n=n+c|0;c=e+f|0}i=e+t|0;o=i-c|0;if(!o)return i|0;a=(s[80+(r[c>>0]&127)>>0]|0)<<6|(s[80+(r[c+1>>0]&127)>>0]|0);if((o|0)==3)r[n+1>>0]=(a<<6|(s[80+(r[c+2>>0]&127)>>0]|0))>>>2;r[n>>0]=a>>>4;return i|0}function pe(e){e=e|0;var t=0;t=e+2|0;e=(t>>>0)/3|0;return(e<<2|t-(e*3|0))+-2|0}function me(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,c=0,f=0,l=0;c=t-((t>>>0)%3|0)|0;a=e+c|0;if(!c){c=n;a=e}else{i=n;o=e;do{c=s[o>>0]|0;f=c<<8|(s[o+1>>0]|0);l=s[o+2>>0]|0;o=o+3|0;r[i+3>>0]=r[16+(l&63)>>0]|0;r[i+2>>0]=r[16+((f<<8|l)>>>6&63)>>0]|0;r[i+1>>0]=r[16+(f>>>4&63)>>0]|0;r[i>>0]=r[16+(c>>>2)>>0]|0;i=i+4|0}while((o|0)!=(a|0));c=i}i=e+t-a|0;if(!i){f=c;l=n;l=f-l|0;return l|0}o=s[a>>0]|0;if((i|0)==2){i=s[a+1>>0]|0;r[c+2>>0]=r[16+(i<<2&60)>>0]|0;i=(o<<8|i)>>>4;o=3}else{i=o<<4;o=2}r[c+1>>0]=r[16+(i&63)>>0]|0;r[c>>0]=r[16+(i>>>6)>>0]|0;f=c+o|0;l=n;l=f-l|0;return l|0}function ge(e){e=e|0;var t=0;t=e+2|0;return((e&3|0)==1?-1:(t&3)+-2+((t>>>2)*3|0)|0)|0}function ye(e,t,n){e=e|0;t=t|0;n=n|0;he(e,t,n)|0;n=t+2|0;return((t&3|0)==1?-1:(n&3)+-2+((n>>>2)*3|0)|0)|0}function be(e,t){e=e|0;t=t|0;r[e+3>>0]=t;r[e+2>>0]=t>>>8;r[e+1>>0]=t>>>16;r[e>>0]=t>>>24;return e+4|0}function ve(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;o[n>>2]=0;r=e+4|0;if(r>>>0>t>>>0){r=t;return r|0}o[n>>2]=0;t=(s[e>>0]|0)<<8;o[n>>2]=t;t=(t|(s[e+1>>0]|0))<<8;o[n>>2]=t;t=(t|(s[e+2>>0]|0))<<8;o[n>>2]=t;o[n>>2]=t|(s[e+3>>0]|0);return r|0}function _e(e,t){e=e|0;t=t|0;r[e>>0]=t&1;return e+1|0}function we(e,t,n){e=e|0;t=t|0;n=n|0;if((e|0)==(t|0)){n=e;return n|0}r[n>>0]=(r[e>>0]|0)!=0&1;n=e+1|0;return n|0}function Ae(e,t,n){e=e|0;t=t|0;n=n|0;Ms(e|0,t|0,n|0)|0;return e+n|0}function Ee(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=e+r|0;if(i>>>0>t>>>0){i=t;return i|0}Ms(n|0,e|0,r|0)|0;return i|0}function ke(e){e=e|0;return 32}function Se(e,t){e=e|0;t=t|0;var n=0,i=0;i=e;n=i+32|0;do{r[i>>0]=r[t>>0]|0;i=i+1|0;t=t+1|0}while((i|0)<(n|0));return e+32|0}function Te(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;i=e+32|0;if(i>>>0>t>>>0){i=t;return i|0}t=e;e=n+32|0;do{r[n>>0]=r[t>>0]|0;n=n+1|0;t=t+1|0}while((n|0)<(e|0));return i|0}function Ie(e){e=e|0;return 64}function xe(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;n=e;i=t;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));n=e+32|0;i=t+32|0;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));return e+64|0}function Re(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0;i=e+32|0;if(i>>>0>t>>>0)i=t;else{a=n;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0))}o=i+32|0;if(o>>>0>t>>>0){a=t;return a|0}a=n+32|0;e=i;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0));a=o;return a|0}function Ce(e){e=e|0;return 32}function Oe(e,t){e=e|0;t=t|0;var n=0,i=0;i=e;n=i+32|0;do{r[i>>0]=r[t>>0]|0;i=i+1|0;t=t+1|0}while((i|0)<(n|0));return e+32|0}function Pe(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;i=e+32|0;if(i>>>0>t>>>0){i=t;return i|0}t=e;e=n+32|0;do{r[n>>0]=r[t>>0]|0;n=n+1|0;t=t+1|0}while((n|0)<(e|0));return i|0}function Me(e){e=e|0;return 96}function De(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;n=e;i=t;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));n=e+32|0;i=t+32|0;o=n+64|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));return e+96|0}function Ne(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0;i=e+32|0;if(i>>>0>t>>>0)i=t;else{a=n;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0))}o=i+64|0;if(o>>>0>t>>>0){a=t;return a|0}a=n+32|0;e=i;s=a+64|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0));a=o;return a|0}function Be(e,t){e=e|0;t=t|0;r[e+3>>0]=t;r[e+2>>0]=t>>>8;r[e+1>>0]=t>>>16;r[e>>0]=t>>>24;return e+4|0}function je(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;o[n>>2]=0;r=e+4|0;if(r>>>0>t>>>0){r=t;return r|0}o[n>>2]=0;t=(s[e>>0]|0)<<8;o[n>>2]=t;t=(t|(s[e+1>>0]|0))<<8;o[n>>2]=t;t=(t|(s[e+2>>0]|0))<<8;o[n>>2]=t;o[n>>2]=t|(s[e+3>>0]|0);return r|0}function Ue(e,t){e=e|0;t=t|0;r[e>>0]=(t|0)!=0&1;return e+1|0}function Le(e,t,n){e=e|0;t=t|0;n=n|0;if((e|0)==(t|0)){n=e;return n|0}r[n>>0]=(r[e>>0]|0)!=0&1;n=e+1|0;return n|0}function Fe(e,t,n){e=e|0;t=t|0;n=n|0;Ms(e|0,t|0,n|0)|0;return e+n|0}function qe(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=e+r|0;if(i>>>0>t>>>0){i=t;return i|0}Ms(n|0,e|0,r|0)|0;return i|0}function ze(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0,s=0;if(t>>>0>127){o=t;i=1;while(1){i=i+1|0;if(o>>>0>16383)o=o>>>7;else{s=i;break}}}else s=1;if(e>>>0>127){i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else{o=i;break}}}else o=1;if(n>>>0>127){e=n;i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else break}}else i=1;return t+4+n+r+s+o+i|0}function Ke(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;r[a>>0]=t;t=a+2|0;r[a+1>>0]=10;if(i>>>0>127){c=t;f=i;while(1){t=c+1|0;r[c>>0]=f|128;a=f>>>7;if(f>>>0>16383){c=t;f=a}else break}}else a=i;f=t+1|0;r[t>>0]=a;o[e>>2]=f;i=f+i|0;t=i+1|0;r[i>>0]=16;if(n>>>0>127)while(1){a=t+1|0;r[t>>0]=n|128;c=n>>>7;if(n>>>0>16383){t=a;n=c}else{n=c;break}}else a=t;r[a>>0]=n;c=e+4|0;t=a+2|0;r[a+1>>0]=34;if(s>>>0<=127){f=s;i=t;f=f&255;e=i+1|0;r[i>>0]=f;o[c>>2]=e;return}a=t;while(1){t=a+1|0;r[a>>0]=s|128;n=s>>>7;if(s>>>0>16383){a=t;s=n}else break}i=n&255;e=t+1|0;r[t>>0]=i;o[c>>2]=e;return}function Ge(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0;s=n-i|0;f=t+s|0;o[e+8>>2]=t;o[e+12>>2]=n;u=e+1|0;r[u>>0]=0;d=e+16|0;h=e+20|0;p=e+24|0;l=e+28|0;o[d>>2]=0;o[d+4>>2]=0;o[d+8>>2]=0;o[d+12>>2]=0;if(n>>>0>>0|(s|0)==0)return;r[e>>0]=r[t>>0]|0;if((s|0)==1)return;a=e+4|0;c=f;s=t+1|0;e:while(1){if((r[s>>0]|0)==10){t=s+1|0;if((t|0)!=(f|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)!=(t|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0));if(n>>>0>(c-e|0)>>>0){s=58;break}}else{n=0;e=t}}else{n=0;e=f}o[d>>2]=e;o[h>>2]=n;e=e+n|0}else e=s;if((e|0)==(f|0)){s=58;break}if((r[e>>0]|0)==16){t=e+1|0;if((t|0)!=(f|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)==(t|0)){n=0;e=t}else{n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0))}}else{n=0;e=f}o[a>>2]=n;r[u>>0]=1}if((e|0)==(f|0)){s=58;break}if((r[e>>0]|0)==34){t=e+1|0;if((t|0)!=(f|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)!=(t|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0));if(n>>>0>(c-e|0)>>>0){s=58;break}}else{n=0;e=t}}else{n=0;e=f}o[p>>2]=e;o[l>>2]=n;e=e+n|0}t:do{if(!((s|0)!=(e|0)|(e|0)==(f|0))){n=r[s>>0]|0;switch(n&7){case 0:{s=s+1|0;e=(s|0)==(f|0);if(n<<24>>24<=-1)while(1){if(e){s=58;break e}n=s+1|0;e=(n|0)==(f|0);if((r[s>>0]|0)>-1){s=n;break}else s=n}if(e)break t;while(1){t=s;s=s+1|0;if((r[t>>0]|0)>-1)break t;if((s|0)==(f|0)){s=58;break e}}}case 2:break;default:{s=58;break e}}s=s+1|0;e=(s|0)==(f|0);if(n<<24>>24<=-1)while(1){if(e){s=58;break e}n=s+1|0;e=(n|0)==(f|0);if((r[s>>0]|0)>-1){s=n;break}else s=n}if(!e){e=s;while(1){t=e;e=e+1|0;if((r[t>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)!=(s|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(s|0));if(n>>>0>(c-e|0)>>>0){s=58;break e}else s=e+n|0}}}else s=e}while(0);if((s|0)==(f|0)){s=58;break}}if((s|0)==58)return}function He(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0,s=0,a=0,c=0;if(e>>>0>127){o=e;i=1;while(1){i=i+1|0;if(o>>>0>16383)o=o>>>7;else break}}else i=1;if(t>>>0>127){s=t;o=1;while(1){o=o+1|0;if(s>>>0>16383)s=s>>>7;else break}}else o=1;if(n>>>0>127){a=n;s=1;while(1){s=s+1|0;if(a>>>0>16383)a=a>>>7;else{c=s;break}}}else c=1;if(r>>>0>127){a=r;s=1;while(1){s=s+1|0;if(a>>>0>16383)a=a>>>7;else break}}else s=1;return e+5+t+n+r+i+o+c+s|0}function Ve(e,t,n,i,s,a,c){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0;r[c>>0]=t;u=e+8|0;t=c+2|0;r[c+1>>0]=10;if(s>>>0>127){f=t;l=s;while(1){t=f+1|0;r[f>>0]=l|128;c=l>>>7;if(l>>>0>16383){f=t;l=c}else break}}else c=s;l=t+1|0;r[t>>0]=c;o[u>>2]=l;s=l+s|0;u=e+4|0;t=s+1|0;r[s>>0]=18;if(i>>>0>127){f=i;while(1){l=t+1|0;r[t>>0]=f|128;c=f>>>7;if(f>>>0>16383){t=l;f=c}else{t=l;break}}}else c=i;s=t+1|0;r[t>>0]=c;o[u>>2]=s;i=s+i|0;t=i+1|0;r[i>>0]=26;if(n>>>0>127){f=n;while(1){l=t+1|0;r[t>>0]=f|128;c=f>>>7;if(f>>>0>16383){t=l;f=c}else{t=l;break}}}else c=n;l=t+1|0;r[t>>0]=c;o[e>>2]=l;n=l+n|0;l=e+12|0;t=n+1|0;r[n>>0]=34;if(a>>>0<=127){i=a;e=t;i=i&255;n=e+1|0;r[e>>0]=i;o[l>>2]=n;return}f=t;while(1){t=f+1|0;r[f>>0]=a|128;c=a>>>7;if(a>>>0>16383){f=t;a=c}else break}e=c&255;n=t+1|0;r[t>>0]=e;o[l>>2]=n;return}function Qe(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0;l=t+n|0;u=e+20|0;d=e+24|0;h=e+4|0;p=e+8|0;m=e+12|0;g=e+16|0;c=e+28|0;f=e+32|0;o[h>>2]=0;o[h+4>>2]=0;o[h+8>>2]=0;o[h+12>>2]=0;o[h+16>>2]=0;o[h+20>>2]=0;o[h+24>>2]=0;o[h+28>>2]=0;if(!n)return;r[e>>0]=r[t>>0]|0;if((n|0)==1)return;a=l;e=t+1|0;e:while(1){if((r[e>>0]|0)==10){s=e+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[u>>2]=n;o[d>>2]=t;n=n+t|0}else n=e;if((n|0)==(l|0)){e=70;break}if((r[n>>0]|0)==18){s=n+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[m>>2]=n;o[g>>2]=t;n=n+t|0}if((n|0)==(l|0)){e=70;break}if((r[n>>0]|0)==26){s=n+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[h>>2]=n;o[p>>2]=t;n=n+t|0}if((n|0)==(l|0)){e=70;break}if((r[n>>0]|0)==34){s=n+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[c>>2]=n;o[f>>2]=t;n=n+t|0}t:do{if(!((e|0)!=(n|0)|(n|0)==(l|0))){t=r[e>>0]|0;switch(t&7){case 0:{e=e+1|0;n=(e|0)==(l|0);if(t<<24>>24<=-1)while(1){if(n){e=70;break e}t=e+1|0;n=(t|0)==(l|0);if((r[e>>0]|0)>-1){e=t;break}else e=t}if(n)break t;while(1){s=e;e=e+1|0;if((r[s>>0]|0)>-1)break t;if((e|0)==(l|0)){e=70;break e}}}case 2:break;default:{e=70;break e}}e=e+1|0;n=(e|0)==(l|0);if(t<<24>>24<=-1)while(1){if(n){e=70;break e}t=e+1|0;n=(t|0)==(l|0);if((r[e>>0]|0)>-1){e=t;break}else e=t}if(!n){n=e;while(1){s=n;n=n+1|0;if((r[s>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(e|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(e|0));if(t>>>0>(a-n|0)>>>0){e=70;break e}else e=n+t|0}}}else e=n}while(0);if((e|0)==(l|0)){e=70;break}}if((e|0)==70)return}function We(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0;if(e>>>0>127){i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else break}}else i=1;if(t>>>0>127){o=t;e=1;while(1){e=e+1|0;if(o>>>0>16383)o=o>>>7;else break}}else e=1;return t+3+n+r+i+e|0}function Ye(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0;r[i>>0]=e;a=i+2|0;r[i+1>>0]=8;if(t>>>0>127){c=a;while(1){a=c+1|0;r[c>>0]=t|128;e=t>>>7;if(t>>>0>16383){c=a;t=e}else break}}else e=t;r[a>>0]=e;e=a+2|0;r[a+1>>0]=18;if(n>>>0>127){t=n;while(1){c=e+1|0;r[e>>0]=t|128;a=t>>>7;if(t>>>0>16383){e=c;t=a}else{e=c;break}}}else a=n;c=e+1|0;r[e>>0]=a;o[s>>2]=c;return c+n-i|0}function Xe(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,h=0;f=i+n|0;n=t-f|0;l=e+n|0;u=s+4|0;o[u>>2]=0;d=s+12|0;o[d>>2]=0;h=s+16|0;o[h>>2]=0;if(f>>>0>t>>>0|(n|0)==0)return;r[s>>0]=r[e>>0]|0;e:do{if((n|0)==1)n=0;else{f=l;n=0;i=e+1|0;do{if((r[i>>0]|0)==8){a=i+1|0;if((a|0)!=(l|0)){n=a;while(1){c=n;n=n+1|0;if((r[c>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)==(a|0)){t=0;n=a}else{t=0;e=n;do{e=e+-1|0;t=t<<7|r[e>>0]&127}while((e|0)!=(a|0))}}else{t=0;n=l}o[u>>2]=t;t=n;n=1}else t=i;if((t|0)==(l|0))break e;if((r[t>>0]|0)==18){c=t+1|0;if((c|0)!=(l|0)){t=c;while(1){a=t;t=t+1|0;if((r[a>>0]|0)>-1)break;if((t|0)==(l|0)){t=l;break}}if((t|0)!=(c|0)){e=0;a=t;do{a=a+-1|0;e=e<<7|r[a>>0]&127}while((a|0)!=(c|0));if(e>>>0>(f-t|0)>>>0)break e}else{e=0;t=c}}else{e=0;t=l}o[d>>2]=t;o[h>>2]=e;t=t+e|0}t:do{if(!((i|0)!=(t|0)|(t|0)==(l|0))){e=r[i>>0]|0;switch(e&7){case 0:{i=i+1|0;t=(i|0)==(l|0);if(e<<24>>24<=-1)while(1){if(t)break e;e=i+1|0;t=(e|0)==(l|0);if((r[i>>0]|0)>-1){i=e;break}else i=e}if(t)break t;while(1){c=i;i=i+1|0;if((r[c>>0]|0)>-1)break t;if((i|0)==(l|0))break e}}case 2:break;default:break e}i=i+1|0;t=(i|0)==(l|0);if(e<<24>>24<=-1)while(1){if(t)break e;e=i+1|0;t=(e|0)==(l|0);if((r[i>>0]|0)>-1){i=e;break}else i=e}if(!t){t=i;while(1){c=t;t=t+1|0;if((r[c>>0]|0)>-1)break;if((t|0)==(l|0)){t=l;break}}if((t|0)!=(i|0)){e=0;a=t;do{a=a+-1|0;e=e<<7|r[a>>0]&127}while((a|0)!=(i|0));if(e>>>0>(f-t|0)>>>0)break e;else i=t+e|0}}}else i=t}while(0)}while((i|0)!=(l|0))}}while(0);o[s+8>>2]=n&255;return}function Je(e){e=e|0;gn(e,37520,37536);o[e+3216>>2]=0;r[e+3220>>0]=0;return}function Ze(e){e=e|0;return 64}function $e(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0,l=0,u=0,d=0;d=h;h=h+224|0;f=d+160|0;l=d+96|0;u=d;if(a>>>0<64){o[e+3216>>2]=1;u=-1;h=d;return u|0}else{pt(s,f);pt(s+32|0,l);t=t+96|0;r[e+3220>>0]=0;s=e+3221|0;a=t;c=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(c|0));s=e+3253|0;a=f;c=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(c|0));s=e+3285|0;a=i;c=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(c|0));mt(t,i,u);mt(f,n,u+32|0);mt(f,i,u+64|0);bn(e,u,96,l);Hr(f,64);Hr(l,64);Hr(u,96);u=0;h=d;return u|0}return 0}function et(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0;b=h;h=h+208|0;p=b+128|0;m=b+96|0;g=b+168|0;y=b;Qe(p,i,s);c=(n|0)!=0;i=o[p+4>>2]|0;a=(i|0)!=0;s=c|a;if(i)s=s&(o[p+8>>2]|0)==32;u=o[p+28>>2]|0;l=o[p+12>>2]|0;d=o[p+20>>2]|0;if(!(s&(u|0)!=0&(l|0)!=0&(o[p+16>>2]|0)==32&(d|0)!=0&(o[p+24>>2]|0)==32)){o[e+3216>>2]=4;y=-1;h=b;return y|0}if(c&a?qo(n,i,32)|0:0){o[e+3216>>2]=6;y=-1;h=b;return y|0}f=e+3221|0;n=f;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));c=e+3253|0;n=c;i=l;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));s=e+3285|0;n=s;i=d;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));p=o[p+32>>2]|0;i=o[e+4>>2]|0;Ge(m,u,p,Gs[o[o[i>>2]>>2]&1](i)|0);i=o[m+16>>2]|0;if((i|0)!=0?(o[m+20>>2]|0)==32:0){n=g;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));i=Ir(t,s)|0;if(!i){o[e+3216>>2]=6;i=-1}else{i=i+5|0;mt(i,f,y);mt(t+96|0,c,y+32|0);mt(i,c,y+64|0);yn(e,y,96,g);Hr(y,96);i=0}}else{o[e+3216>>2]=4;i=-1}y=i;h=b;return y|0}function tt(e){e=e|0;return 32}function nt(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0;c=h;h=h+96|0;a=c;if(n>>>0<32){o[e+3216>>2]=2;a=-1;h=c;return a|0}else{n=a;i=e+3221|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));n=a+32|0;i=e+3253|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));n=a+64|0;i=e+3285|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));At(a,96,t);a=32;h=c;return a|0}return 0}function rt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0,f=0,l=0;l=h;h=h+48|0;f=l;Qe(f,n,r);c=(t|0)!=0;a=o[f+4>>2]|0;n=c|(a|0)!=0;r=(a|0)==0;if(!r)n=n&(o[f+8>>2]|0)==32;i=o[f+12>>2]|0;s=o[f+20>>2]|0;if(!(n&(o[f+28>>2]|0)!=0&(i|0)!=0&(o[f+16>>2]|0)==32&(s|0)!=0&(o[f+24>>2]|0)==32)){t=0;h=l;return t|0}if(r)n=1;else n=(qo(a,e+3221|0,32)|0)==0;if(c){if(!n){t=0;h=l;return t|0}if(qo(t,e+3221|0,32)|0){t=0;h=l;return t|0}}else if(!n){t=0;h=l;return t|0}if(qo(i,e+3253|0,32)|0){t=0;h=l;return t|0}t=(qo(s,e+3285|0,32)|0)==0;h=l;return t|0}function it(e){e=e|0;return s[e+3220>>0]|0|0}function ot(e,t){e=e|0;t=t|0;t=An(e,t)|0;if(r[e+3220>>0]|0){e=t;return e|0}e=He(32,32,32,t)|0;return e|0}function st(e){e=e|0;return En(e)|0}function at(e,t,n,i,s,a,c){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0,d=0,p=0;p=h;h=h+16|0;d=p;f=An(e,n)|0;l=e+3220|0;if(!(r[l>>0]|0))f=He(32,32,32,f)|0;if(f>>>0>c>>>0){o[e+3216>>2]=2;e=-1;h=p;return e|0}u=An(e,n)|0;if(!(r[l>>0]|0)){Ve(d,3,32,32,32,u,a);a=o[d+8>>2]|0;f=e+3285|0;c=a+32|0;do{r[a>>0]=r[f>>0]|0;a=a+1|0;f=f+1|0}while((a|0)<(c|0));a=o[d>>2]|0;f=e+3221|0;c=a+32|0;do{r[a>>0]=r[f>>0]|0;a=a+1|0;f=f+1|0}while((a|0)<(c|0));a=o[d+4>>2]|0;f=e+3253|0;c=a+32|0;do{r[a>>0]=r[f>>0]|0;a=a+1|0;f=f+1|0}while((a|0)<(c|0));a=o[d+12>>2]|0}a=kn(e,t,n,i,s,a,u)|0;if((a|0)!=-1){e=a;h=p;return e|0}s=e+8|0;o[e+3216>>2]=o[s>>2];o[s>>2]=0;e=-1;h=p;return e|0}function ct(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0;s=h;h=h+48|0;i=s;do{if((t|0)!=1){Qe(i,n,r);n=o[i+28>>2]|0;if(n|0){r=o[i+32>>2]|0;break}o[e+3216>>2]=4;e=-1;h=s;return e|0}}while(0);n=Sn(e,n,r)|0;if((n|0)!=-1){e=n;h=s;return e|0}i=e+8|0;o[e+3216>>2]=o[i>>2];o[i>>2]=0;e=-1;h=s;return e|0}function ft(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+48|0;c=f;do{if((t|0)!=1){Qe(c,n,i);n=o[c+28>>2]|0;if(n|0){i=o[c+32>>2]|0;break}o[e+3216>>2]=4;e=-1;h=f;return e|0}}while(0);n=Tn(e,n,i,s,a)|0;if((n|0)==-1){a=e+8|0;o[e+3216>>2]=o[a>>2];o[a>>2]=0;e=-1;h=f;return e|0}else{r[e+3220>>0]=1;e=n;h=f;return e|0}return 0}function lt(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0;m=h;h=h+48|0;p=m+32|0;l=m+24|0;u=m+16|0;i=m;if(!n){h=m;return}r[t>>0]=0;f=t;o[i>>2]=o[e+112>>2];i=_s(t,n,38002,i)|0;i=(i|0)>0?t+i|0:t;d=f+n|0;a=_s(i,d-i|0,38026,m+8|0)|0;i=(a|0)>0?i+a|0:i;a=e+148|0;c=e+152|0;t=f-i+n|0;if((o[a>>2]|0)!=(c|0)){s=0;do{o[l>>2]=o[e+152+(s*68|0)+32>>2];t=_s(i,t,38073,l)|0;i=(t|0)>0?i+t|0:i;s=s+1|0;t=f-i+n|0}while(s>>>0<(((o[a>>2]|0)-c|0)/68|0)>>>0)}t=_s(i,t,38050,u)|0;a=e+492|0;c=e+496|0;if((o[a>>2]|0)==(c|0)){h=m;return}s=0;t=(t|0)>-1?i+t|0:i;while(1){o[p>>2]=o[e+496+(s*68|0)+32>>2];i=_s(t,d-t|0,38073,p)|0;s=s+1|0;if(s>>>0>=(((o[a>>2]|0)-c|0)/68|0)>>>0)break;else t=(i|0)>0?t+i|0:t}h=m;return}function ut(e){e=e|0;var t=0;t=(ke(e+3221|0)|0)+5|0;t=t+(ke(e+3253|0)|0)|0;t=t+(ke(e+3285|0)|0)|0;return t+(vn(e)|0)|0}function dt(e,t){e=e|0;t=t|0;e=be(e,1)|0;return _n(Se(Se(Se(_e(e,(r[t+3220>>0]|0)!=0)|0,t+3221|0)|0,t+3253|0)|0,t+3285|0)|0,t)|0}function ht(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0;s=h;h=h+16|0;r=s;i=ve(e,t,r)|0;e=o[r>>2]|0;e:do{if((e|0)<1){switch(e|0){case-2147483647:break;default:{r=3;break e}}e=1;r=4}else switch(e|0){case 1:{e=0;r=4;break}default:r=3}}while(0);if((r|0)==3){o[n+3216>>2]=9;n=t;h=s;return n|0}else if((r|0)==4){n=wn(Te(Te(Te(we(i,t,n+3220|0)|0,t,n+3221|0)|0,t,n+3253|0)|0,t,n+3285|0)|0,t,n,e)|0;h=s;return n|0}return 0}function pt(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;i=t+32|0;o=i;n=o+32|0;do{r[o>>0]=r[e>>0]|0;o=o+1|0;e=e+1|0}while((o|0)<(n|0));Po(t,i,208)|0;return}function mt(e,t,n){e=e|0;t=t|0;n=n|0;Po(n,e+32|0,t)|0;return}function gt(e,t){e=e|0;t=t|0;hi(t,t+32|0,e);return}function yt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;bi(r,t,n,e,e+32|0);return}function bt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return(yi(r,t,n,e)|0)!=0|0}function vt(e){e=e|0;return e+16-(e&15)|0}function _t(e,t,n,i,o){e=e|0;t=t|0;n=n|0;i=i|0;o=o|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0;O=h;h=h+256|0;R=O+16|0;C=O;Ro(e,R,256);I=C;k=I+16|0;do{r[I>>0]=r[t>>0]|0;I=I+1|0;t=t+1|0}while((I|0)<(k|0));if(i>>>0>15){w=C+1|0;A=C+2|0;a=C+3|0;c=C+4|0;f=C+5|0;l=C+6|0;u=C+7|0;d=C+8|0;p=C+9|0;m=C+10|0;g=C+11|0;y=C+12|0;b=C+13|0;v=C+14|0;_=C+15|0;S=i+-16|0;T=S&-16;x=T+16|0;E=o+x|0;e=i;i=n;while(1){r[C>>0]=r[C>>0]^r[i>>0];r[w>>0]=r[w>>0]^r[i+1>>0];r[A>>0]=r[A>>0]^r[i+2>>0];r[a>>0]=r[a>>0]^r[i+3>>0];r[c>>0]=r[c>>0]^r[i+4>>0];r[f>>0]=r[f>>0]^r[i+5>>0];r[l>>0]=r[l>>0]^r[i+6>>0];r[u>>0]=r[u>>0]^r[i+7>>0];r[d>>0]=r[d>>0]^r[i+8>>0];r[p>>0]=r[p>>0]^r[i+9>>0];r[m>>0]=r[m>>0]^r[i+10>>0];r[g>>0]=r[g>>0]^r[i+11>>0];r[y>>0]=r[y>>0]^r[i+12>>0];r[b>>0]=r[b>>0]^r[i+13>>0];r[v>>0]=r[v>>0]^r[i+14>>0];r[_>>0]=r[_>>0]^r[i+15>>0];Io(C,o,R,256);I=C;t=o;k=I+16|0;do{r[I>>0]=r[t>>0]|0;I=I+1|0;t=t+1|0}while((I|0)<(k|0));e=e+-16|0;if(e>>>0<=15)break;else{o=o+16|0;i=i+16|0}}o=E;t=S-T|0;n=n+x|0}else t=i;if(t){e=0;do{x=C+e|0;r[x>>0]=r[x>>0]^r[n+e>>0];e=e+1|0}while((e|0)!=(t|0));if(t>>>0<16)n=t;else{Io(C,o,R,256);Hr(R,240);Hr(C,16);h=O;return}}else n=0;e=16-t|0;do{x=C+n|0;r[x>>0]=e^(s[x>>0]|0);n=n+1|0}while((n|0)!=16);Io(C,o,R,256);Hr(R,240);Hr(C,16);h=O;return}function wt(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0;R=h;h=h+272|0;T=R+32|0;I=R+16|0;x=R;Ro(e,T,256);S=I;k=S+16|0;do{r[S>>0]=r[t>>0]|0;S=S+1|0;t=t+1|0}while((S|0)<(k|0));if(!i){Hr(T,240);Hr(I,16);Hr(x,16);x=i+-1|0;x=s+x|0;x=r[x>>0]|0;x=x&255;I=x>>>0>i>>>0;x=i-x|0;x=I?-1:x;h=R;return x|0}E=I+1|0;a=I+2|0;c=I+3|0;f=I+4|0;l=I+5|0;u=I+6|0;d=I+7|0;p=I+8|0;m=I+9|0;g=I+10|0;y=I+11|0;b=I+12|0;v=I+13|0;_=I+14|0;w=I+15|0;e=0;do{A=n+e|0;S=x;t=A;k=S+16|0;do{r[S>>0]=r[t>>0]|0;S=S+1|0;t=t+1|0}while((S|0)<(k|0));S=s+e|0;Oo(A,S,T,256);r[S>>0]=r[S>>0]^r[I>>0];k=S+1|0;r[k>>0]=r[k>>0]^r[E>>0];k=S+2|0;r[k>>0]=r[k>>0]^r[a>>0];k=S+3|0;r[k>>0]=r[k>>0]^r[c>>0];k=S+4|0;r[k>>0]=r[k>>0]^r[f>>0];k=S+5|0;r[k>>0]=r[k>>0]^r[l>>0];k=S+6|0;r[k>>0]=r[k>>0]^r[u>>0];k=S+7|0;r[k>>0]=r[k>>0]^r[d>>0];k=S+8|0;r[k>>0]=r[k>>0]^r[p>>0];k=S+9|0;r[k>>0]=r[k>>0]^r[m>>0];k=S+10|0;r[k>>0]=r[k>>0]^r[g>>0];k=S+11|0;r[k>>0]=r[k>>0]^r[y>>0];k=S+12|0;r[k>>0]=r[k>>0]^r[b>>0];k=S+13|0;r[k>>0]=r[k>>0]^r[v>>0];k=S+14|0;r[k>>0]=r[k>>0]^r[_>>0];S=S+15|0;r[S>>0]=r[S>>0]^r[w>>0];o[I>>2]=o[x>>2];o[I+4>>2]=o[x+4>>2];o[I+8>>2]=o[x+8>>2];o[I+12>>2]=o[x+12>>2];e=e+16|0}while(e>>>0>>0);Hr(T,240);Hr(I,16);Hr(x,16);x=i+-1|0;x=s+x|0;x=r[x>>0]|0;x=x&255;I=x>>>0>i>>>0;x=i-x|0;x=I?-1:x;h=R;return x|0}function At(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+112|0;i=r;ko(i);So(i,e,t);To(i,n);Hr(i,112);h=r;return}function Et(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;l=h;h=h+288|0;s=l+176|0;a=l;c=l+64|0;f=a;u=f+64|0;do{o[f>>2]=0;f=f+4|0}while((f|0)<(u|0));if(t>>>0>64){ko(s);So(s,e,t);To(s,a)}else Ms(a|0,e|0,t|0)|0;kt(c,a);So(c,n,r);St(c,a,i);Hr(a,64);Hr(c,112);h=l;return}function kt(e,t){e=e|0;t=t|0;var n=0,i=0,o=0,s=0;s=h;h=h+64|0;i=s;o=i;n=o+64|0;do{r[o>>0]=r[t>>0]|0;o=o+1|0;t=t+1|0}while((o|0)<(n|0));r[i>>0]=r[i>>0]^54;o=i+1|0;r[o>>0]=r[o>>0]^54;o=i+2|0;r[o>>0]=r[o>>0]^54;o=i+3|0;r[o>>0]=r[o>>0]^54;o=i+4|0;r[o>>0]=r[o>>0]^54;o=i+5|0;r[o>>0]=r[o>>0]^54;o=i+6|0;r[o>>0]=r[o>>0]^54;o=i+7|0;r[o>>0]=r[o>>0]^54;o=i+8|0;r[o>>0]=r[o>>0]^54;o=i+9|0;r[o>>0]=r[o>>0]^54;o=i+10|0;r[o>>0]=r[o>>0]^54;o=i+11|0;r[o>>0]=r[o>>0]^54;o=i+12|0;r[o>>0]=r[o>>0]^54;o=i+13|0;r[o>>0]=r[o>>0]^54;o=i+14|0;r[o>>0]=r[o>>0]^54;o=i+15|0;r[o>>0]=r[o>>0]^54;o=i+16|0;r[o>>0]=r[o>>0]^54;o=i+17|0;r[o>>0]=r[o>>0]^54;o=i+18|0;r[o>>0]=r[o>>0]^54;o=i+19|0;r[o>>0]=r[o>>0]^54;o=i+20|0;r[o>>0]=r[o>>0]^54;o=i+21|0;r[o>>0]=r[o>>0]^54;o=i+22|0;r[o>>0]=r[o>>0]^54;o=i+23|0;r[o>>0]=r[o>>0]^54;o=i+24|0;r[o>>0]=r[o>>0]^54;o=i+25|0;r[o>>0]=r[o>>0]^54;o=i+26|0;r[o>>0]=r[o>>0]^54;o=i+27|0;r[o>>0]=r[o>>0]^54;o=i+28|0;r[o>>0]=r[o>>0]^54;o=i+29|0;r[o>>0]=r[o>>0]^54;o=i+30|0;r[o>>0]=r[o>>0]^54;o=i+31|0;r[o>>0]=r[o>>0]^54;o=i+32|0;r[o>>0]=r[o>>0]^54;o=i+33|0;r[o>>0]=r[o>>0]^54;o=i+34|0;r[o>>0]=r[o>>0]^54;o=i+35|0;r[o>>0]=r[o>>0]^54;o=i+36|0;r[o>>0]=r[o>>0]^54;o=i+37|0;r[o>>0]=r[o>>0]^54;o=i+38|0;r[o>>0]=r[o>>0]^54;o=i+39|0;r[o>>0]=r[o>>0]^54;o=i+40|0;r[o>>0]=r[o>>0]^54;o=i+41|0;r[o>>0]=r[o>>0]^54;o=i+42|0;r[o>>0]=r[o>>0]^54;o=i+43|0;r[o>>0]=r[o>>0]^54;o=i+44|0;r[o>>0]=r[o>>0]^54;o=i+45|0;r[o>>0]=r[o>>0]^54;o=i+46|0;r[o>>0]=r[o>>0]^54;o=i+47|0;r[o>>0]=r[o>>0]^54;o=i+48|0;r[o>>0]=r[o>>0]^54;o=i+49|0;r[o>>0]=r[o>>0]^54;o=i+50|0;r[o>>0]=r[o>>0]^54;o=i+51|0;r[o>>0]=r[o>>0]^54;o=i+52|0;r[o>>0]=r[o>>0]^54;o=i+53|0;r[o>>0]=r[o>>0]^54;o=i+54|0;r[o>>0]=r[o>>0]^54;o=i+55|0;r[o>>0]=r[o>>0]^54;o=i+56|0;r[o>>0]=r[o>>0]^54;o=i+57|0;r[o>>0]=r[o>>0]^54;o=i+58|0;r[o>>0]=r[o>>0]^54;o=i+59|0;r[o>>0]=r[o>>0]^54;o=i+60|0;r[o>>0]=r[o>>0]^54;o=i+61|0;r[o>>0]=r[o>>0]^54;o=i+62|0;r[o>>0]=r[o>>0]^54;o=i+63|0;r[o>>0]=r[o>>0]^54;ko(e);So(e,i,64);Hr(i,64);h=s;return}function St(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0,c=0;c=h;h=h+208|0;o=c;s=c+96|0;a=o;i=a+64|0;do{r[a>>0]=r[t>>0]|0;a=a+1|0;t=t+1|0}while((a|0)<(i|0));r[o>>0]=r[o>>0]^92;a=o+1|0;r[a>>0]=r[a>>0]^92;a=o+2|0;r[a>>0]=r[a>>0]^92;a=o+3|0;r[a>>0]=r[a>>0]^92;a=o+4|0;r[a>>0]=r[a>>0]^92;a=o+5|0;r[a>>0]=r[a>>0]^92;a=o+6|0;r[a>>0]=r[a>>0]^92;a=o+7|0;r[a>>0]=r[a>>0]^92;a=o+8|0;r[a>>0]=r[a>>0]^92;a=o+9|0;r[a>>0]=r[a>>0]^92;a=o+10|0;r[a>>0]=r[a>>0]^92;a=o+11|0;r[a>>0]=r[a>>0]^92;a=o+12|0;r[a>>0]=r[a>>0]^92;a=o+13|0;r[a>>0]=r[a>>0]^92;a=o+14|0;r[a>>0]=r[a>>0]^92;a=o+15|0;r[a>>0]=r[a>>0]^92;a=o+16|0;r[a>>0]=r[a>>0]^92;a=o+17|0;r[a>>0]=r[a>>0]^92;a=o+18|0;r[a>>0]=r[a>>0]^92;a=o+19|0;r[a>>0]=r[a>>0]^92;a=o+20|0;r[a>>0]=r[a>>0]^92;a=o+21|0;r[a>>0]=r[a>>0]^92;a=o+22|0;r[a>>0]=r[a>>0]^92;a=o+23|0;r[a>>0]=r[a>>0]^92;a=o+24|0;r[a>>0]=r[a>>0]^92;a=o+25|0;r[a>>0]=r[a>>0]^92;a=o+26|0;r[a>>0]=r[a>>0]^92;a=o+27|0;r[a>>0]=r[a>>0]^92;a=o+28|0;r[a>>0]=r[a>>0]^92;a=o+29|0;r[a>>0]=r[a>>0]^92;a=o+30|0;r[a>>0]=r[a>>0]^92;a=o+31|0;r[a>>0]=r[a>>0]^92;a=o+32|0;r[a>>0]=r[a>>0]^92;a=o+33|0;r[a>>0]=r[a>>0]^92;a=o+34|0;r[a>>0]=r[a>>0]^92;a=o+35|0;r[a>>0]=r[a>>0]^92;a=o+36|0;r[a>>0]=r[a>>0]^92;a=o+37|0;r[a>>0]=r[a>>0]^92;a=o+38|0;r[a>>0]=r[a>>0]^92;a=o+39|0;r[a>>0]=r[a>>0]^92;a=o+40|0;r[a>>0]=r[a>>0]^92;a=o+41|0;r[a>>0]=r[a>>0]^92;a=o+42|0;r[a>>0]=r[a>>0]^92;a=o+43|0;r[a>>0]=r[a>>0]^92;a=o+44|0;r[a>>0]=r[a>>0]^92;a=o+45|0;r[a>>0]=r[a>>0]^92;a=o+46|0;r[a>>0]=r[a>>0]^92;a=o+47|0;r[a>>0]=r[a>>0]^92;a=o+48|0;r[a>>0]=r[a>>0]^92;a=o+49|0;r[a>>0]=r[a>>0]^92;a=o+50|0;r[a>>0]=r[a>>0]^92;a=o+51|0;r[a>>0]=r[a>>0]^92;a=o+52|0;r[a>>0]=r[a>>0]^92;a=o+53|0;r[a>>0]=r[a>>0]^92;a=o+54|0;r[a>>0]=r[a>>0]^92;a=o+55|0;r[a>>0]=r[a>>0]^92;a=o+56|0;r[a>>0]=r[a>>0]^92;a=o+57|0;r[a>>0]=r[a>>0]^92;a=o+58|0;r[a>>0]=r[a>>0]^92;a=o+59|0;r[a>>0]=r[a>>0]^92;a=o+60|0;r[a>>0]=r[a>>0]^92;a=o+61|0;r[a>>0]=r[a>>0]^92;a=o+62|0;r[a>>0]=r[a>>0]^92;a=o+63|0;r[a>>0]=r[a>>0]^92;To(e,o+64|0);ko(s);So(s,o,96);To(s,n);Hr(s,112);Hr(o,96);h=c;return}function Tt(e,t,n,i,s,a,c,f){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;var l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0;v=h;h=h+336|0;u=v+208|0;b=v+96|0;m=v+32|0;g=v;y=v+320|0;r[y>>0]=1;d=(n|0)==0;l=d?32:i;i=d?38496:n;d=m;p=d+64|0;do{o[d>>2]=0;d=d+4|0}while((d|0)<(p|0));if(l>>>0>64){ko(u);So(u,i,l);To(u,m)}else Ms(m|0,i|0,l|0)|0;kt(b,m);So(b,e,t);St(b,m,g);p=m+32|0;o[p>>2]=0;o[p+4>>2]=0;o[p+8>>2]=0;o[p+12>>2]=0;o[p+16>>2]=0;o[p+20>>2]=0;o[p+24>>2]=0;o[p+28>>2]=0;o[m>>2]=o[g>>2];o[m+4>>2]=o[g+4>>2];o[m+8>>2]=o[g+8>>2];o[m+12>>2]=o[g+12>>2];o[m+16>>2]=o[g+16>>2];o[m+20>>2]=o[g+20>>2];o[m+24>>2]=o[g+24>>2];o[m+28>>2]=o[g+28>>2];kt(b,m);So(b,s,a);So(b,y,1);St(b,m,g);if(f>>>0<=32){a=f;Ms(c|0,g|0,a|0)|0;Hr(b,112);Hr(m,64);Hr(g,32);h=v;return}e=f+-33&-32;t=e+32|0;u=f+-32|0;l=c;i=f;while(1){d=l;n=g;p=d+32|0;do{r[d>>0]=r[n>>0]|0;d=d+1|0;n=n+1|0}while((d|0)<(p|0));i=i+-32|0;r[y>>0]=(r[y>>0]|0)+1<<24>>24;kt(b,m);So(b,g,32);So(b,s,a);So(b,y,1);St(b,m,g);if(i>>>0<=32)break;else l=l+32|0}a=u-e|0;c=c+t|0;Ms(c|0,g|0,a|0)|0;Hr(b,112);Hr(m,64);Hr(g,32);h=v;return}function It(e){e=e|0;return Si(o[e>>2]|0)|0}function xt(){return 36}function Rt(e){e=e|0;Hr(e,36);return e|0}function Ct(e){e=e|0;var t=0;Hr(e,36);t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 36}function Ot(e,t,n){e=e|0;t=t|0;n=n|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=15;n=-1;return n|0}else{he(t,le(32)|0,e+4|0)|0;n=0;return n|0}return 0}function Pt(){return le(32)|0}function Mt(e,t){e=e|0;t=t|0;return le(Hs[o[37564>>2]&3](37548,t)|0)|0}function Dt(e){e=e|0;return le(Gs[o[9390]&1](37548)|0)|0}function Nt(e){e=e|0;return 32}function Bt(e,t,n,r,i,s,a,c,f,l,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;l=l|0;u=u|0;var d=0,p=0,m=0,g=0;g=h;h=h+112|0;d=g+40|0;p=g;m=g+32|0;if(((le(Hs[o[37564>>2]&3](37548,n)|0)|0)>>>0<=i>>>0?(Gs[o[9390]&1](37548)|0)>>>0<=a>>>0:0)?(le(32)|0)>>>0<=f>>>0:0){if(u>>>0<32){o[e>>2]=1;s=-1;h=g;return s|0}pt(l,d);ue(d,32,c)|0;mt(d,e+4|0,p);d=Hs[o[37564>>2]&3](37548,n)|0;u=r+i+(0-d)|0;e=Qs[o[37568>>2]&3](37548,p,32,t,n,u,d,m,8)|0;if((e|0)!=-1){ue(m,8,s)|0;ue(u,d,r)|0}s=e;h=g;return s|0}o[e>>2]=2;s=-1;h=g;return s|0}function jt(e){e=e|0;return Si(o[e>>2]|0)|0}function Ut(){return 68}function Lt(e){e=e|0;Hr(e,68);return e|0}function Ft(e){e=e|0;var t=0;Hr(e,68);t=e+68|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 68}function qt(){return 32}function zt(){return 32}function Kt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;pt(r,i);ue(i,32,t)|0;i=0;return i|0}return 0}function Gt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;pt(r,i);ue(i,32,t)|0;i=0;return i|0}return 0}function Ht(e){e=e|0;return Ti((Ie(e+4|0)|0)+4|0)|0}function Vt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;s=e+4|0;a=(Ie(s)|0)+4|0;if((Ti(a)|0)>>>0>i>>>0){o[e>>2]=2;a=-1;return a|0}else{xe(be(Ii(r,a)|0,1)|0,s)|0;a=xi(t,n,r,a)|0;return a|0}return 0}function Qt(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0,l=0,u=0;u=h;h=h+16|0;f=u;l=(s|0)!=0;if(l?(le(32)|0)>>>0>a>>>0:0){o[e>>2]=2;i=-1}else c=4;do{if((c|0)==4){t=Ri(t,n,r,i,e)|0;if((t|0)!=-1){a=r+t|0;t=a+1|0;n=ve(r,t,f)|0;if((o[f>>2]|0)==1)t=Re(n,t,e+4|0)|0;else o[e>>2]=9;if((a|0)==(t|0)){if(!l)break;ue(e+4|0,32,s)|0;break}else{if(o[e>>2]|0){i=-1;break}o[e>>2]=10;i=-1;break}}else i=-1}}while(0);h=u;return i|0}function Wt(e,t){e=e|0;t=t|0;e=o[9393]|0;t=de(t)|0;return Hs[e&3](37548,t)|0}function Yt(e,t,n,r,i,s,a,c,f){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;var l=0,u=0,d=0,p=0,m=0;d=h;h=h+80|0;u=d+40|0;i=d;l=d+32|0;m=o[9393]|0;p=de(a)|0;if((Hs[m&3](37548,p)|0)>>>0>f>>>0){o[e>>2]=2;m=-1;h=d;return m|0}he(t,n,u)|0;mt(e+4|0,u,i);he(r,le(8)|0,l)|0;m=de(a)|0;he(s,a,s)|0;i=Qs[o[37576>>2]&3](37548,i,32,l,8,s,m,c,f)|0;if((i|0)==-1){o[e>>2]=5;i=-1}m=i;h=d;return m|0}function Xt(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<32){o[e>>2]=2;e=-1;return e|0}else{n=e+36|0;e=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(e|0));e=32;return e|0}return 0}function Jt(){return 100}function Zt(e){e=e|0;Hr(e,100);return e|0}function $t(e){e=e|0;return Si(o[e>>2]|0)|0}function en(e){e=e|0;var t=0;Hr(e,100);t=e+100|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 100}function tn(){return 32}function nn(){return le(32)|0}function rn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;gt(r,i);ue(i,32,t)|0;i=0;return i|0}return 0}function on(){return le(64)|0}function sn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(64)|0)>>>0>i>>>0){o[e>>2]=2;i=-1;return i|0}else{i=r+(le(64)|0)+-64|0;yt(e+4|0,t,n,i);ue(i,64,r)|0;i=le(64)|0;return i|0}return 0}function an(e){e=e|0;return 8}function cn(e,t){e=e|0;t=t|0;return vt(t)|0}function fn(e,t,n,i,s,a,c,f,l){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;l=l|0;var u=0,d=0,p=0,m=0;m=h;h=h+192|0;p=m+32|0;u=m+112|0;d=m;if(l>>>0<8|(vt(s)|0)>>>0>c>>>0){p=-1;h=m;return p|0}Tt(t,n,0,0,o[e+4>>2]|0,o[e+8>>2]|0,p,80);t=u;n=p;c=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(c|0));e=u+32|0;t=e;n=p+32|0;c=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(c|0));t=u+64|0;n=p+64|0;c=t+16|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(c|0));Hr(p,80);_t(u,u+64|0,i,s,a);Et(e,32,f,l+-8|0,d);a=d;s=o[a>>2]|0;a=o[a+4>>2]|0;p=f+l+-8|0;f=p;r[f>>0]=s;r[f+1>>0]=s>>8;r[f+2>>0]=s>>16;r[f+3>>0]=s>>24;p=p+4|0;r[p>>0]=a;r[p+1>>0]=a>>8;r[p+2>>0]=a>>16;r[p+3>>0]=a>>24;Hr(u,80);p=l;h=m;return p|0}function ln(e,t){e=e|0;t=t|0;return t|0}function un(e,t,n,i,s,a,c,f,l){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;l=l|0;var u=0,d=0,p=0,m=0;m=h;h=h+192|0;p=m+32|0;u=m+112|0;d=m;if(s>>>0<8|c>>>0>l>>>0){p=-1;h=m;return p|0}Tt(t,n,0,0,o[e+4>>2]|0,o[e+8>>2]|0,p,80);t=u;n=p;l=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(l|0));e=u+32|0;t=e;n=p+32|0;l=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(l|0));t=u+64|0;n=p+64|0;l=t+16|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(l|0));Hr(p,80);Et(e,32,i,s+-8|0,d);if(Vr(i+s+-8|0,d,8)|0){e=wt(u,u+64|0,a,c,f)|0;Hr(u,80)}else{Hr(u,80);e=-1}p=e;h=m;return p|0}function dn(e){e=e|0;o[e>>2]=0;return}function hn(e){e=e|0;return 32}function pn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if(i>>>0<32){o[e>>2]=2;i=-1;return i|0}else{At(t,n,r);i=32;return i|0}return 0}function mn(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;if(s>>>0>=64?bt(t,n,r,i)|0:0){s=0;return s|0}o[e>>2]=5;s=-1;return s|0}function gn(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;o[e+8>>2]=0;o[e+44>>2]=e+48;o[e+148>>2]=e+152;o[e+492>>2]=e+496;return}function yn(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;u=h;h=h+64|0;l=u;f=o[e>>2]|0;Tt(t,n,0,0,o[f>>2]|0,o[f+4>>2]|0,l,64);f=e+152|0;t=e+148|0;n=o[t>>2]|0;if((n|0)==(e+492|0)){c=(n|0)==(f|0)?e+84|0:f;t=n}else{a=n+68|0;o[t>>2]=a;c=f;t=a}t=t+-68|0;if((t|0)!=(c|0))do{n=t;t=t+-68|0;s=t;a=n+68|0;do{o[n>>2]=o[s>>2];n=n+4|0;s=s+4|0}while((n|0)<(a|0))}while((t|0)!=(c|0));o[e+184>>2]=0;n=e+12|0;s=l;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=e+188|0;s=l+32|0;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=f;s=i;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));Hr(l,64);h=u;return}function bn(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;u=h;h=h+64|0;l=u;f=o[e>>2]|0;Tt(t,n,0,0,o[f>>2]|0,o[f+4>>2]|0,l,64);f=e+48|0;t=e+44|0;n=o[t>>2]|0;if((n|0)==(e+148|0)){c=(n|0)==(f|0)?e+-52|0:f;t=n}else{a=n+100|0;o[t>>2]=a;c=f;t=a}t=t+-100|0;if((t|0)!=(c|0))do{n=t;t=t+-100|0;s=t;a=n+100|0;do{o[n>>2]=o[s>>2];n=n+4|0;s=s+4|0}while((n|0)<(a|0))}while((t|0)!=(c|0));o[e+112>>2]=0;n=e+12|0;s=l;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=e+116|0;s=l+32|0;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=f;s=i;a=n+64|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));Hr(l,64);h=u;return}function vn(e){e=e|0;var t=0,n=0,r=0,i=0;t=e+48|0;r=o[e+44>>2]|0;if((t|0)==(r|0))i=36;else{n=4;do{n=n+36+(Ie(t)|0)|0;t=t+100|0}while((t|0)!=(r|0));i=n+32|0}t=e+152|0;r=o[e+148>>2]|0;if((t|0)==(r|0))t=4;else{n=t;t=4;do{t=t+36+(ke(n)|0)|0;n=n+68|0}while((n|0)!=(r|0))}i=i+t|0;t=e+496|0;r=o[e+492>>2]|0;if((t|0)==(r|0)){e=4;e=i+e|0;return e|0}n=t;t=4;do{t=t+36+(ke(n)|0)|0;n=n+68|0}while((n|0)!=(r|0));e=i+t|0;return e|0}function _n(e,t){e=e|0;t=t|0;var n=0,r=0;e=Ae(e,t+12|0,32)|0;r=t+44|0;n=t+48|0;e=be(e,((o[r>>2]|0)-n|0)/100|0)|0;r=o[r>>2]|0;if((n|0)!=(r|0))do{e=Ae(xe(e,n)|0,n+68|0,32)|0;e=be(e,o[n+64>>2]|0)|0;n=n+100|0}while((n|0)!=(r|0));r=t+148|0;n=t+152|0;e=be(e,((o[r>>2]|0)-n|0)/68|0)|0;r=o[r>>2]|0;if((n|0)!=(r|0))do{e=Ae(Se(e,n)|0,n+36|0,32)|0;e=be(e,o[n+32>>2]|0)|0;n=n+68|0}while((n|0)!=(r|0));r=t+492|0;n=t+496|0;e=be(e,((o[r>>2]|0)-n|0)/68|0)|0;r=o[r>>2]|0;if((n|0)==(r|0)){t=e;return t|0}do{e=Ae(Se(e,n)|0,n+36|0,32)|0;e=be(e,o[n+32>>2]|0)|0;n=n+68|0}while((n|0)!=(r|0));return e|0}function wn(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0,f=0,l=0;l=h;h=h+16|0;f=l;e=ve(Ee(e,t,n+12|0,32)|0,t,f)|0;c=o[f>>2]|0;o[f>>2]=c+-1;if(!((e|0)==(t|0)|(c|0)==0)){s=n+44|0;a=n+148|0;c=n+48|0;do{i=o[s>>2]|0;if((i|0)==(a|0))i=c;else o[s>>2]=i+100;e=ve(Ee(Re(e,t,i)|0,t,i+68|0,32)|0,t,i+64|0)|0;i=o[f>>2]|0;o[f>>2]=i+-1}while(!((e|0)==(t|0)|(i|0)==0))}e=ve(e,t,f)|0;c=o[f>>2]|0;o[f>>2]=c+-1;if(!((e|0)==(t|0)|(c|0)==0)){s=n+148|0;a=n+492|0;c=n+424|0;do{i=o[s>>2]|0;if((i|0)==(a|0))i=c;else o[s>>2]=i+68;e=ve(Ee(Te(e,t,i)|0,t,i+36|0,32)|0,t,i+32|0)|0;i=o[f>>2]|0;o[f>>2]=i+-1}while(!((e|0)==(t|0)|(i|0)==0))}e=ve(e,t,f)|0;c=o[f>>2]|0;o[f>>2]=c+-1;if(!((e|0)==(t|0)|(c|0)==0)){a=n+492|0;c=n+3216|0;s=n+3148|0;do{i=o[a>>2]|0;if((i|0)==(c|0))i=s;else o[a>>2]=i+68;e=ve(Ee(Te(e,t,i)|0,t,i+36|0,32)|0,t,i+32|0)|0;n=o[f>>2]|0;o[f>>2]=n+-1}while(!((e|0)==(t|0)|(n|0)==0))}if(!r){f=e;h=l;return f|0}f=ve(e,t,f)|0;h=l;return f|0}function An(e,t){e=e|0;t=t|0;var n=0,r=0;if((o[e+44>>2]|0)==(e+48|0))n=0;else n=o[e+112>>2]|0;r=e+4|0;e=o[r>>2]|0;e=Hs[o[(o[e>>2]|0)+4>>2]&3](e,t)|0;t=o[r>>2]|0;return ze(n,32,e,Gs[o[o[t>>2]>>2]&1](t)|0)|0}function En(e){e=e|0;return((o[e+44>>2]|0)==(e+48|0)?32:0)|0}function kn(e,t,n,i,s,a,c){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0;y=h;h=h+112|0;m=y+64|0;g=y;l=e+44|0;d=e+48|0;if((o[l>>2]|0)==(d|0))f=0;else f=o[e+112>>2]|0;p=e+4|0;b=o[p>>2]|0;b=Hs[o[(o[b>>2]|0)+4>>2]&3](b,n)|0;u=o[p>>2]|0;u=ze(f,32,b,Gs[o[o[u>>2]>>2]&1](u)|0)|0;f=(o[l>>2]|0)==(d|0);if((f?32:0)>>>0>s>>>0){o[e+8>>2]=1;b=-1;h=y;return b|0}if(u>>>0>c>>>0){o[e+8>>2]=2;b=-1;h=y;return b|0}if(f){o[l>>2]=e+148;pt(i,d);c=o[e>>2]|0;mt(d,e+152|0,m);i=e+12|0;Tt(m,32,i,32,o[c+8>>2]|0,o[c+12>>2]|0,g,64);c=g;l=i+32|0;do{r[i>>0]=r[c>>0]|0;i=i+1|0;c=c+1|0}while((i|0)<(l|0));f=e+116|0;i=f;c=g+32|0;l=i+32|0;do{r[i>>0]=r[c>>0]|0;i=i+1|0;c=c+1|0}while((i|0)<(l|0));i=e+112|0;o[i>>2]=0;Hr(g,64);Hr(m,32)}else{i=e+112|0;f=e+116|0}s=m+4|0;Et(f,32,38077,1,s);o[m>>2]=o[i>>2];Et(f,32,38078,1,f);o[i>>2]=(o[i>>2]|0)+1;f=o[p>>2]|0;f=Hs[o[(o[f>>2]|0)+4>>2]&3](f,n)|0;Ke(g,3,o[m>>2]|0,32,f,a);i=o[g>>2]|0;c=d;l=i+32|0;do{r[i>>0]=r[c>>0]|0;i=i+1|0;c=c+1|0}while((i|0)<(l|0));b=o[p>>2]|0;Qs[o[(o[b>>2]|0)+8>>2]&3](b,s,32,t,n,o[g+4>>2]|0,f,a,u)|0;Hr(m,36);b=u;h=y;return b|0}function Sn(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0;s=h;h=h+32|0;r=s;i=e+4|0;a=o[i>>2]|0;Ge(r,t,n,Gs[o[o[a>>2]>>2]&1](a)|0);if(!(o[r+24>>2]|0)){o[e+8>>2]=4;a=-1;h=s;return a|0}else{a=o[i>>2]|0;a=Hs[o[(o[a>>2]|0)+12>>2]&3](a,o[r+28>>2]|0)|0;h=s;return a|0}return 0}function Tn(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0;I=h;h=h+240|0;E=I+96|0;k=I+32|0;u=I;d=I+160|0;S=I+128|0;g=e+4|0;w=o[g>>2]|0;Ge(S,t,n,Gs[o[o[w>>2]>>2]&1](w)|0);if((r[S>>0]|0)!=3){o[e+8>>2]=3;T=-1;h=I;return T|0}if((r[S+1>>0]|0?(A=S+16|0,o[A>>2]|0):0)?(b=S+24|0,o[b>>2]|0):0){w=o[g>>2]|0;m=S+28|0;if((Hs[o[(o[w>>2]|0)+12>>2]&3](w,o[m>>2]|0)|0)>>>0>s>>>0){o[e+8>>2]=2;T=-1;h=I;return T|0}if((o[S+20>>2]|0)!=32){o[e+8>>2]=4;T=-1;h=I;return T|0}c=e+152|0;w=e+148|0;n=o[w>>2]|0;e:do{if((c|0)!=(n|0)){f=o[A>>2]|0;l=0;t=c;do{p=(qo(t,f,32)|0)==0;l=p?t:l;t=t+68|0}while(!(p|(t|0)==(n|0)));if(l){t=l+32|0;d=S+4|0;n=o[d>>2]|0;if((o[t>>2]|0)>>>0<=n>>>0){_=l;T=In(e,t,S,i,s)|0;y=1;v=31;break}t=e+496|0;p=e+492|0;f=o[p>>2]|0;if((t|0)!=(f|0)){l=S+8|0;u=S+12|0;while(1){if(((n|0)==(o[t+32>>2]|0)?(qo(t,o[A>>2]|0,32)|0)==0:0)?(a=o[g>>2]|0,a=Qs[o[(o[a>>2]|0)+16>>2]&3](a,t+36|0,32,o[l>>2]|0,o[u>>2]|0,o[b>>2]|0,o[m>>2]|0,i,s)|0,(a|0)!=-1):0)break;t=t+68|0;if((t|0)==(f|0))break e;n=o[d>>2]|0}Hr(t,68);T=(o[p>>2]|0)+-68|0;o[p>>2]=T;if((T|0)==(t|0)){T=a;h=I;return T|0}do{g=t;t=t+68|0;y=t;b=g+68|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((t|0)!=(o[p>>2]|0));h=I;return a|0}}else v=15}else v=15}while(0);if((v|0)==15){a=e+48|0;if((o[e+44>>2]|0)!=(a|0)?(o[S+4>>2]|0)>>>0<=2e3:0){g=d;y=o[A>>2]|0;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));_=o[e>>2]|0;T=d+32|0;mt(a,d,E);Tt(E,32,e+12|0,32,o[_+8>>2]|0,o[_+12>>2]|0,k,64);o[u>>2]=o[k>>2];o[u+4>>2]=o[k+4>>2];o[u+8>>2]=o[k+8>>2];o[u+12>>2]=o[k+12>>2];o[u+16>>2]=o[k+16>>2];o[u+20>>2]=o[k+20>>2];o[u+24>>2]=o[k+24>>2];o[u+28>>2]=o[k+28>>2];_=k+32|0;a=d+36|0;o[a>>2]=o[_>>2];o[a+4>>2]=o[_+4>>2];o[a+8>>2]=o[_+8>>2];o[a+12>>2]=o[_+12>>2];o[a+16>>2]=o[_+16>>2];o[a+20>>2]=o[_+20>>2];o[a+24>>2]=o[_+24>>2];o[a+28>>2]=o[_+28>>2];o[T>>2]=0;Hr(k,64);Hr(E,32);a=In(e,T,S,i,s)|0;Hr(u,32);Hr(d,68)}else a=-1;_=0;T=a;y=0;v=31}if((v|0)==31?(T|0)!=-1:0){if(!y){a=o[w>>2]|0;if((a|0)==(e+492|0))c=(a|0)==(c|0)?e+84|0:c;else{a=a+68|0;o[w>>2]=a}a=a+-68|0;if((a|0)!=(c|0))do{g=a;a=a+-68|0;y=a;b=g+68|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((a|0)!=(c|0));g=c;y=o[A>>2]|0;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));a=e+48|0;y=o[e>>2]|0;mt(a,c,E);g=e+12|0;Tt(E,32,g,32,o[y+8>>2]|0,o[y+12>>2]|0,k,64);y=k;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));g=c+36|0;y=k+32|0;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));n=c+32|0;o[n>>2]=0;Hr(k,64);Hr(E,32);Hr(a,100);t=e+44|0;k=(o[t>>2]|0)+-100|0;o[t>>2]=k;if((k|0)==(a|0))m=c;else{do{g=a;a=a+100|0;y=a;b=g+100|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((a|0)!=(o[t>>2]|0));m=c}}else{m=_;n=_+32|0}f=S+4|0;if((o[n>>2]|0)>>>0<(o[f>>2]|0)>>>0){l=e+496|0;u=e+492|0;d=e+3216|0;a=m+36|0;p=e+532|0;c=e+528|0;do{t=o[u>>2]|0;if((t|0)==(d|0))t=d;else{t=t+68|0;o[u>>2]=t}t=t+-68|0;if((t|0)!=(l|0))do{g=t;t=t+-68|0;y=t;b=g+68|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((t|0)!=(l|0));Et(a,32,38077,1,p);o[c>>2]=o[n>>2];g=l;y=m;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));Et(a,32,38078,1,a);e=(o[n>>2]|0)+1|0;o[n>>2]=e}while(e>>>0<(o[f>>2]|0)>>>0)}else a=m+36|0;Et(a,32,38078,1,a);o[n>>2]=(o[n>>2]|0)+1;h=I;return T|0}o[e+8>>2]=5;T=-1;h=I;return T|0}o[e+8>>2]=4;T=-1;h=I;return T|0}function In(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0;d=h;h=h+80|0;c=d+36|0;f=d;l=n+4|0;u=o[l>>2]|0;a=o[t>>2]|0;if(u>>>0>>0|(u-a|0)>>>0>2e3){u=-1;h=d;return u|0}a=c;s=a+36|0;do{o[a>>2]=o[t>>2];a=a+4|0;t=t+4|0}while((a|0)<(s|0));t=c+4|0;if((o[c>>2]|0)>>>0>>0)do{Et(t,32,38078,1,t);u=(o[c>>2]|0)+1|0;o[c>>2]=u}while(u>>>0<(o[l>>2]|0)>>>0);u=f+4|0;Et(t,32,38077,1,u);o[f>>2]=o[c>>2];l=o[e+4>>2]|0;u=Qs[o[(o[l>>2]|0)+16>>2]&3](l,u,32,o[n+8>>2]|0,o[n+12>>2]|0,o[n+24>>2]|0,o[n+28>>2]|0,r,i)|0;Hr(c,36);h=d;return u|0}function xn(e,t,n){e=e|0;t=t|0;n=n|0;if(e|0)r[e>>0]=3;if(t|0)r[t>>0]=1;if(!n)return;r[n>>0]=3;return}function Rn(){return-1}function Cn(e){e=e|0;return Si(o[e+7368>>2]|0)|0}function On(e){e=e|0;return Si(o[e+3216>>2]|0)|0}function Pn(e){e=e|0;return Si(o[e>>2]|0)|0}function Mn(){return 7372}function Dn(){return 3320}function Nn(){return 4}function Bn(e){e=e|0;Hr(e,7372);Tr(e);return e|0}function jn(e){e=e|0;Hr(e,3320);Je(e);return e|0}function Un(e){e=e|0;Hr(e,4);dn(e);return e|0}function Ln(e){e=e|0;Hr(e,7372);Tr(e);return 7372}function Fn(e){e=e|0;Hr(e,3320);Je(e);return 3320}function qn(e){e=e|0;Hr(e,4);dn(e);return 4}function zn(e){e=e|0;return Ti(qr(e)|0)|0}function Kn(e){e=e|0;return Ti(ut(e)|0)|0}function Gn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=qr(e)|0;if((Ti(s)|0)>>>0>i>>>0){o[e+7368>>2]=2;s=-1;return s|0}else{zr(Ii(r,s)|0,e)|0;s=xi(t,n,r,s)|0;return s|0}return 0}function Hn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=ut(e)|0;if((Ti(s)|0)>>>0>i>>>0){o[e+3216>>2]=2;s=-1;return s|0}else{dt(Ii(r,s)|0,e)|0;s=xi(t,n,r,s)|0;return s|0}return 0}function Vn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=e+7368|0;t=Ri(t,n,r,i,s)|0;if((t|0)==-1){s=-1;return s|0}n=r+t|0;if((n|0)==(Kr(r,n+1|0,e)|0)){s=i;return s|0}if(o[s>>2]|0){s=-1;return s|0}o[s>>2]=10;s=-1;return s|0}function Qn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=e+3216|0;t=Ri(t,n,r,i,s)|0;if((t|0)==-1){s=-1;return s|0}n=r+t|0;if((n|0)==(ht(r,n+1|0,e)|0)){s=i;return s|0}if(o[s>>2]|0){s=-1;return s|0}o[s>>2]=10;s=-1;return s|0}function Wn(e){e=e|0;return Rr(e)|0}function Yn(e,t,n){e=e|0;t=t|0;n=n|0;e=Cr(e,t,n)|0;Hr(t,n);return e|0}function Xn(e){e=e|0;return Or(e)|0}function Jn(e,t,n){e=e|0;t=t|0;n=n|0;return Pr(e,t,n)|0}function Zn(e){e=e|0;return le(Mr(e)|0)|0}function $n(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;s=Mr(e)|0;if((le(s)|0)>>>0>i>>>0){o[e+7368>>2]=2;s=-1;return s|0}else{a=0-s|0;Dr(e,t,n,r+(le(s)|0)+a|0,s)|0;i=le(s)|0;ue(r+i+a|0,s,r)|0;s=i;return s|0}return 0}function er(e){e=e|0;return Nr(e)|0}function tr(e,t,n){e=e|0;t=t|0;n=n|0;return Br(e,t,n)|0}function nr(e){e=e|0;return jr(e)|0}function rr(e){e=e|0;return Ur(e)|0}function ir(e,t){e=e|0;t=t|0;return Lr(e,t)|0}function or(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;t=Fr(e,t,n,r)|0;Hr(n,r);return t|0}function sr(e){e=e|0;return Ze(e)|0}function ar(e,t,n,r,i,s,a,c){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0;u=h;h=h+64|0;f=u+32|0;l=u;if((de(r)|0)==32?(de(s)|0)==32:0){he(n,r,f)|0;he(i,s,l)|0;l=$e(e,t,f,l,a,c)|0;Hr(a,c);h=u;return l|0}o[e+3216>>2]=7;l=-1;h=u;return l|0}function cr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=de(r)|0;if((i|0)==-1){o[e+3216>>2]=7;i=-1;return i|0}else{he(n,r,n)|0;i=et(e,t,0,n,i)|0;return i|0}return 0}function fr(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;var a=0,c=0;c=h;h=h+32|0;a=c;if((de(r)|0)!=32){o[e+3216>>2]=7;a=-1;h=c;return a|0}he(n,r,a)|0;n=de(s)|0;if((n|0)==-1){o[e+3216>>2]=7;n=-1}else{he(i,s,i)|0;n=et(e,t,a,i,n)|0}a=n;h=c;return a|0}function lr(e){e=e|0;return le(tt(e)|0)|0}function ur(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=tt(e)|0;if((le(r)|0)>>>0>n>>>0){o[e+3216>>2]=2;r=-1;return r|0}n=0-r|0;if((nt(e,t+(le(r)|0)+n|0,r)|0)==-1){r=-1;return r|0}e=le(r)|0;ue(t+e+n|0,r,t)|0;r=e;return r|0}function dr(e){e=e|0;return s[e+3220>>0]|0|0}function hr(e,t,n){e=e|0;t=t|0;n=n|0;lt(e,t,n);return}function pr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=de(n)|0;if((r|0)==-1){o[e+3216>>2]=7;r=-1;return r|0}else{he(t,n,t)|0;r=(rt(e,0,t,r)|0)&1;return r|0}return 0}function mr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;a=h;h=h+32|0;s=a;if((de(n)|0)!=32){o[e+3216>>2]=7;s=-1;h=a;return s|0}he(t,n,s)|0;t=de(i)|0;if((t|0)==-1){o[e+3216>>2]=7;t=-1}else{he(r,i,r)|0;t=(rt(e,s,r,t)|0)&1}s=t;h=a;return s|0}function gr(e,t){e=e|0;t=t|0;t=xr(e,t+3285|0)|0;if((t|0)!=-1)return t|0;o[e+7368>>2]=6;return t|0}function yr(e){e=e|0;return it(e)|0}function br(e){e=e|0;return st(e)|0}function vr(e,t){e=e|0;t=t|0;return le(ot(e,t)|0)|0}function _r(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0;c=ot(e,n)|0;if((le(c)|0)>>>0>a>>>0){o[e+3216>>2]=2;c=-1;return c|0}a=0-c|0;n=at(e,t,n,r,i,s+(le(c)|0)+a|0,c)|0;Hr(r,i);if((n|0)==-1){c=-1;return c|0}i=le(c)|0;ue(s+i+a|0,c,s)|0;c=i;return c|0}function wr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=de(r)|0;if((i|0)==-1){o[e+3216>>2]=7;i=-1;return i|0}else{he(n,r,n)|0;i=ct(e,t,n,i)|0;return i|0}return 0}function Ar(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;var a=0;a=de(r)|0;if((a|0)==-1){o[e+3216>>2]=7;a=-1;return a|0}else{he(n,r,n)|0;a=ft(e,t,n,a,i,s)|0;return a|0}return 0}function Er(e){e=e|0;return le(hn(e)|0)|0}function kr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=hn(e)|0;if((le(s)|0)>>>0>i>>>0){o[e>>2]=2;s=-1;return s|0}i=0-s|0;if((pn(e,t,n,r+(le(s)|0)+i|0,s)|0)==-1){s=-1;return s|0}n=le(s)|0;ue(r+n+i|0,s,r)|0;s=n;return s|0}function Sr(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+32|0;c=f;if((de(n)|0)!=32){o[e>>2]=7;c=-1;h=f;return c|0}he(t,n,c)|0;t=de(a)|0;if((t|0)==-1){o[e>>2]=7;t=-1}else{he(s,a,s)|0;t=mn(e,c,r,i,s,t)|0}c=t;h=f;return c|0}function Tr(e){e=e|0;o[e+160>>2]=e+164;o[e+7364>>2]=0;o[e+7368>>2]=0;return}function Ir(e,t){e=e|0;t=t|0;var n=0;n=e+164|0;e=o[e+160>>2]|0;if((n|0)==(e|0)){t=0;return t|0}while(1){if(Vr(n+5|0,t,32)|0){e=5;break}n=n+72|0;if((n|0)==(e|0)){n=0;e=5;break}}if((e|0)==5)return n|0;return 0}function xr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0;n=e+164|0;s=e+160|0;if((n|0)==(o[s>>2]|0)){s=-1;return s|0}while(1){if(Vr(n+5|0,t,32)|0)break;e=n+72|0;if((e|0)==(o[s>>2]|0)){e=-1;r=8;break}else n=e}if((r|0)==8)return e|0;e=o[n>>2]|0;i=(o[s>>2]|0)+-72|0;o[s>>2]=i;if((i|0)==(n|0)){s=e;return s|0}do{t=n;n=n+72|0;r=n;i=t+72|0;do{o[t>>2]=o[r>>2];t=t+4|0;r=r+4|0}while((t|0)<(i|0))}while((n|0)!=(o[s>>2]|0));return e|0}function Rr(e){e=e|0;return 64}function Cr(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<64){o[e+7368>>2]=1;n=-1;return n|0}else{gt(t,e);pt(t+32|0,e+96|0);n=0;return n|0}return 0}function Or(e){e=e|0;e=le(32)|0;return e+30+(le(32)|0)|0}function Pr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0;a=le(32)|0;if((a+30+(le(32)|0)|0)>>>0>n>>>0){o[e+7368>>2]=2;t=-1;return t|0}else{r[t>>0]=123;i=t+1|0;s=38079;a=i+13|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));r[t+14>>0]=34;n=ue(e+96|0,32,t+15|0)|0;r[n>>0]=34;r[n+1>>0]=44;i=n+2|0;s=38093;a=i+10|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));r[n+12>>0]=34;e=ue(e,32,n+13|0)|0;r[e>>0]=34;r[e+1>>0]=125;t=e+2-t|0;return t|0}return 0}function Mr(e){e=e|0;return 64}function Dr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if(i>>>0<64){o[e+7368>>2]=2;i=-1;return i|0}else{yt(e,t,n,r);i=64;return i|0}return 0}function Nr(e){e=e|0;var t=0,n=0,i=0;n=e+164|0;i=o[e+160>>2]|0;if((n|0)!=(i|0)){t=1;e=0;do{if(!(r[n+4>>0]|0)){t=le(4)|0;e=e+6+t+(le(32)|0)|0;t=0}n=n+72|0}while((n|0)!=(i|0));if(!t){i=e;n=16;i=n+i|0;return i|0}}else e=0;i=e;n=17;i=n+i|0;return i|0}function Br(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0;p=h;h=h+16|0;u=p;l=e+164|0;f=e+160|0;c=o[f>>2]|0;if((l|0)!=(c|0)){s=1;a=l;i=0;do{if(!(r[a+4>>0]|0)){s=le(4)|0;i=i+6+s+(le(32)|0)|0;s=0}a=a+72|0}while((a|0)!=(c|0));if(s)d=4;else s=16}else{i=0;d=4}if((d|0)==4)s=17;if((s+i|0)>>>0>n>>>0){o[e+7368>>2]=2;d=-1;h=p;return d|0}r[t>>0]=123;i=t+1|0;s=38079;a=i+13|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));i=t+14|0;c=o[f>>2]|0;if((l|0)!=(c|0)){a=l;s=123;do{if(!(r[a+4>>0]|0)){r[i>>0]=s;r[i+1>>0]=34;Be(u,o[a>>2]|0)|0;i=ue(u,4,i+2|0)|0;r[i>>0]=34;r[i+1>>0]=58;r[i+2>>0]=34;i=ue(a+5|0,32,i+3|0)|0;r[i>>0]=34;i=i+1|0;s=44}a=a+72|0}while((a|0)!=(c|0));if(s<<24>>24!=44)d=16}else{s=123;d=16}if((d|0)==16){r[i>>0]=s;i=i+1|0}r[i>>0]=125;r[i+1>>0]=125;d=i+2-t|0;h=p;return d|0}function jr(e){e=e|0;var t=0,n=0,i=0;t=e+164|0;i=o[e+160>>2]|0;if((t|0)==(i|0)){i=0;return i|0}e=0;do{n=t+4|0;if(!(r[n>>0]|0)){r[n>>0]=1;e=e+1|0}t=t+72|0}while((t|0)!=(i|0));return e|0}function Ur(e){e=e|0;return 100}function Lr(e,t){e=e|0;t=t|0;return t<<5|0}function Fr(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0;if(t<<5>>>0>i>>>0){o[e+7368>>2]=1;p=-1;return p|0}if(!t){p=0;return p|0}h=e+164|0;p=e+160|0;l=e+7364|0;u=e+7364|0;d=e+168|0;f=e+169|0;c=0;while(1){i=o[p>>2]|0;if((i|0)==(l|0))i=l;else{i=i+72|0;o[p>>2]=i}i=i+-72|0;if((i|0)!=(h|0))do{e=i;i=i+-72|0;s=i;a=e+72|0;do{o[e>>2]=o[s>>2];e=e+4|0;s=s+4|0}while((e|0)<(a|0))}while((i|0)!=(h|0));a=(o[u>>2]|0)+1|0;o[u>>2]=a;o[h>>2]=a;r[d>>0]=0;pt(n,f);c=c+1|0;if((c|0)==(t|0))break;else n=n+32|0}return t|0}function qr(e){e=e|0;var t=0,n=0,r=0,i=0;r=Me(e)|0;i=Ie(e+96|0)|0;t=e+164|0;n=o[e+160>>2]|0;if((t|0)==(n|0)){n=4;r=r+8|0;i=r+i|0;i=i+n|0;return i|0}e=4;do{e=e+5+(Ie(t+5|0)|0)|0;t=t+72|0}while((t|0)!=(n|0));r=r+8|0;i=r+i|0;i=i+e|0;return i|0}function zr(e,t){e=e|0;t=t|0;var n=0,i=0;e=xe(De(be(e,2)|0,t)|0,t+96|0)|0;i=t+160|0;n=t+164|0;e=be(e,((o[i>>2]|0)-n|0)/72|0)|0;i=o[i>>2]|0;if((n|0)==(i|0)){i=e;t=t+7364|0;t=o[t>>2]|0;t=be(i,t)|0;return t|0}do{e=be(e,o[n>>2]|0)|0;e=xe(_e(e,(r[n+4>>0]|0)!=0)|0,n+5|0)|0;n=n+72|0}while((n|0)!=(i|0));t=t+7364|0;t=o[t>>2]|0;t=be(e,t)|0;return t|0}function Kr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0;f=h;h=h+16|0;c=f+4|0;a=f;e=ve(e,t,a)|0;switch(o[a>>2]|0){case 2:{e=ve(Re(Ne(e,t,n)|0,t,n+96|0)|0,t,c)|0;a=o[c>>2]|0;o[c>>2]=a+-1;if(!((e|0)==(t|0)|(a|0)==0)){i=n+160|0;s=n+7364|0;a=n+7292|0;do{r=o[i>>2]|0;if((r|0)==(s|0))r=a;else o[i>>2]=r+72;e=Re(we(ve(e,t,r)|0,t,r+4|0)|0,t,r+5|0)|0;r=o[c>>2]|0;o[c>>2]=r+-1}while(!((e|0)==(t|0)|(r|0)==0))}n=ve(e,t,n+7364|0)|0;h=f;return n|0}case 1:{o[n+7368>>2]=13;n=t;h=f;return n|0}default:{o[n+7368>>2]=9;n=t;h=f;return n|0}}return 0}function Gr(e,t){e=e|0;t=t|0;var n=0;n=e+t|0;if(!t)return;do{r[e>>0]=0;e=e+1|0}while((e|0)!=(n|0));return}function Hr(e,t){e=e|0;t=t|0;var n=0;n=e+t|0;if(!t)return;do{r[e>>0]=0;e=e+1|0}while((e|0)!=(n|0));return}function Vr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;o=h;h=h+16|0;i=o;r[i>>0]=0;if(n|0)while(1){n=n+-1|0;r[i>>0]=r[i>>0]|r[t>>0]^r[e>>0];if(!n)break;else{t=t+1|0;e=e+1|0}}h=o;return(r[i>>0]|0)==0|0}function Qr(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0;E=s[t>>0]|0;g=Os(s[t+1>>0]|0|0,0,8)|0;I=T;R=Os(s[t+2>>0]|0|0,0,16)|0;I=I|T;u=Os(s[t+3>>0]|0|0,0,24)|0;I=I|T;x=r[t+6>>0]|0;f=s[t+4>>0]|0;k=Os(s[t+5>>0]|0|0,0,8)|0;l=T;x=Os(x&255|0,0,16)|0;l=Os(k|f|x|0,l|T|0,6)|0;x=T;f=r[t+9>>0]|0;k=s[t+7>>0]|0;a=Os(s[t+8>>0]|0|0,0,8)|0;_=T;f=Os(f&255|0,0,16)|0;_=Os(a|k|f|0,_|T|0,5)|0;f=T;k=r[t+12>>0]|0;a=s[t+10>>0]|0;b=Os(s[t+11>>0]|0|0,0,8)|0;S=T;k=Os(k&255|0,0,16)|0;S=Os(b|a|k|0,S|T|0,3)|0;k=T;a=r[t+15>>0]|0;b=s[t+13>>0]|0;p=Os(s[t+14>>0]|0|0,0,8)|0;c=T;a=Os(a&255|0,0,16)|0;c=Os(p|b|a|0,c|T|0,2)|0;a=T;b=s[t+16>>0]|0;p=Os(s[t+17>>0]|0|0,0,8)|0;w=T;n=Os(s[t+18>>0]|0|0,0,16)|0;w=w|T;A=Os(s[t+19>>0]|0|0,0,24)|0;A=p|b|n|A;w=w|T;n=r[t+22>>0]|0;b=s[t+20>>0]|0;p=Os(s[t+21>>0]|0|0,0,8)|0;i=T;n=Os(n&255|0,0,16)|0;i=Os(p|b|n|0,i|T|0,7)|0;n=T;b=r[t+25>>0]|0;p=s[t+23>>0]|0;C=Os(s[t+24>>0]|0|0,0,8)|0;v=T;b=Os(b&255|0,0,16)|0;v=Os(C|p|b|0,v|T|0,5)|0;b=T;p=r[t+28>>0]|0;C=s[t+26>>0]|0;m=Os(s[t+27>>0]|0|0,0,8)|0;h=T;p=Os(p&255|0,0,16)|0;h=Os(m|C|p|0,h|T|0,4)|0;p=T;C=r[t+31>>0]|0;m=s[t+29>>0]|0;d=Os(s[t+30>>0]|0|0,0,8)|0;y=T;t=Os(C&255|0,0,16)|0;y=Os(d|m|t|0,y|T|0,2)|0;y=y&33554428;t=ks(y|0,0,16777216,0)|0;m=Cs(t|0,T|0,25)|0;m=Ss(0,0,m|0,T|0)|0;I=ks(m&19|0,0,g|E|R|u|0,I|0)|0;u=T;R=ks(l|0,x|0,16777216,0)|0;E=Cs(R|0,T|0,25)|0;E=ks(_|0,f|0,E|0,T|0)|0;f=T;R=Ss(l|0,x|0,R&-33554432|0,0)|0;x=T;l=ks(S|0,k|0,16777216,0)|0;_=Cs(l|0,T|0,25)|0;_=ks(c|0,a|0,_|0,T|0)|0;a=T;c=ks(A|0,w|0,16777216,0)|0;g=Cs(c|0,T|0,25)|0;g=ks(i|0,n|0,g|0,T|0)|0;n=T;i=ks(v|0,b|0,16777216,0)|0;m=Cs(i|0,T|0,25)|0;m=ks(h|0,p|0,m|0,T|0)|0;p=T;h=ks(I|0,u|0,33554432,0)|0;d=Cs(h|0,T|0,26)|0;d=ks(R|0,x|0,d|0,T|0)|0;h=Ss(I|0,u|0,h&-67108864|0,0)|0;u=ks(E|0,f|0,33554432,0)|0;I=Cs(u|0,T|0,26)|0;k=ks(I|0,T|0,S|0,k|0)|0;l=Ss(k|0,T|0,l&-33554432|0,0)|0;u=Ss(E|0,f|0,u&-67108864|0,0)|0;f=ks(_|0,a|0,33554432,0)|0;E=Cs(f|0,T|0,26)|0;w=ks(E|0,T|0,A|0,w|0)|0;c=Ss(w|0,T|0,c&-33554432|0,0)|0;f=Ss(_|0,a|0,f&-67108864|0,0)|0;a=ks(g|0,n|0,33554432,0)|0;_=Cs(a|0,T|0,26)|0;b=ks(_|0,T|0,v|0,b|0)|0;i=Ss(b|0,T|0,i&-33554432|0,0)|0;a=Ss(g|0,n|0,a&-67108864|0,0)|0;n=ks(m|0,p|0,33554432,0)|0;g=Cs(n|0,T|0,26)|0;g=ks(y|0,0,g|0,T|0)|0;t=Ss(g|0,T|0,t&33554432|0,0)|0;n=Ss(m|0,p|0,n&-67108864|0,0)|0;o[e>>2]=h;o[e+4>>2]=d;o[e+8>>2]=u;o[e+12>>2]=l;o[e+16>>2]=f;o[e+20>>2]=c;o[e+24>>2]=a;o[e+28>>2]=i;o[e+32>>2]=n;o[e+36>>2]=t;return}function Wr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0,s=0;s=h;h=h+192|0;n=s+144|0;r=s+96|0;i=s+48|0;o=s;Yr(n,t);Yr(r,n);Yr(r,r);Xr(r,t,r);Xr(n,n,r);Yr(i,n);Xr(r,r,i);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);t=1;do{Yr(o,o);t=t+1|0}while((t|0)!=100);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(r,r);Yr(r,r);Yr(r,r);Yr(r,r);Yr(r,r);Xr(e,r,n);h=s;return}function Yr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Ne=0,Be=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;tt=o[t>>2]|0;we=o[t+4>>2]|0;l=o[t+8>>2]|0;de=o[t+12>>2]|0;s=o[t+16>>2]|0;rt=o[t+20>>2]|0;a=o[t+24>>2]|0;p=o[t+28>>2]|0;q=o[t+32>>2]|0;R=o[t+36>>2]|0;y=tt<<1;n=we<<1;Ye=l<<1;c=de<<1;pe=s<<1;i=rt<<1;d=a<<1;r=p<<1;Ue=rt*38|0;be=a*19|0;Ee=p*38|0;ie=q*19|0;st=R*38|0;nt=((tt|0)<0)<<31>>31;nt=Es(tt|0,nt|0,tt|0,nt|0)|0;tt=T;b=((y|0)<0)<<31>>31;_e=((we|0)<0)<<31>>31;Be=Es(y|0,b|0,we|0,_e|0)|0;Ne=T;f=((l|0)<0)<<31>>31;We=Es(l|0,f|0,y|0,b|0)|0;Qe=T;he=((de|0)<0)<<31>>31;Ve=Es(de|0,he|0,y|0,b|0)|0;He=T;J=((s|0)<0)<<31>>31;Fe=Es(s|0,J|0,y|0,b|0)|0;Le=T;it=((rt|0)<0)<<31>>31;Te=Es(rt|0,it|0,y|0,b|0)|0;Se=T;Ae=((a|0)<0)<<31>>31;ae=Es(a|0,Ae|0,y|0,b|0)|0;se=T;x=((p|0)<0)<<31>>31;G=Es(p|0,x|0,y|0,b|0)|0;K=T;z=((q|0)<0)<<31>>31;P=Es(q|0,z|0,y|0,b|0)|0;O=T;C=((R|0)<0)<<31>>31;b=Es(R|0,C|0,y|0,b|0)|0;y=T;u=((n|0)<0)<<31>>31;_e=Es(n|0,u|0,we|0,_e|0)|0;we=T;ne=Es(n|0,u|0,l|0,f|0)|0;re=T;g=((c|0)<0)<<31>>31;Ge=Es(c|0,g|0,n|0,u|0)|0;Ke=T;Ce=Es(s|0,J|0,n|0,u|0)|0;Re=T;m=((i|0)<0)<<31>>31;fe=Es(i|0,m|0,n|0,u|0)|0;ce=T;V=Es(a|0,Ae|0,n|0,u|0)|0;H=T;t=((r|0)<0)<<31>>31;D=Es(r|0,t|0,n|0,u|0)|0;M=T;_=Es(q|0,z|0,n|0,u|0)|0;v=T;ot=((st|0)<0)<<31>>31;u=Es(st|0,ot|0,n|0,u|0)|0;n=T;ze=Es(l|0,f|0,l|0,f|0)|0;qe=T;Xe=((Ye|0)<0)<<31>>31;xe=Es(Ye|0,Xe|0,de|0,he|0)|0;Ie=T;ue=Es(s|0,J|0,Ye|0,Xe|0)|0;le=T;X=Es(rt|0,it|0,Ye|0,Xe|0)|0;Y=T;F=Es(a|0,Ae|0,Ye|0,Xe|0)|0;L=T;A=Es(p|0,x|0,Ye|0,Xe|0)|0;w=T;oe=((ie|0)<0)<<31>>31;Xe=Es(ie|0,oe|0,Ye|0,Xe|0)|0;Ye=T;f=Es(st|0,ot|0,l|0,f|0)|0;l=T;he=Es(c|0,g|0,de|0,he|0)|0;de=T;W=Es(c|0,g|0,s|0,J|0)|0;Q=T;B=Es(i|0,m|0,c|0,g|0)|0;N=T;I=Es(a|0,Ae|0,c|0,g|0)|0;S=T;ke=((Ee|0)<0)<<31>>31;Ze=Es(Ee|0,ke|0,c|0,g|0)|0;Je=T;Pe=Es(ie|0,oe|0,c|0,g|0)|0;Oe=T;g=Es(st|0,ot|0,c|0,g|0)|0;c=T;U=Es(s|0,J|0,s|0,J|0)|0;j=T;me=((pe|0)<0)<<31>>31;k=Es(pe|0,me|0,rt|0,it|0)|0;E=T;ve=((be|0)<0)<<31>>31;et=Es(be|0,ve|0,pe|0,me|0)|0;$e=T;De=Es(Ee|0,ke|0,s|0,J|0)|0;Me=T;me=Es(ie|0,oe|0,pe|0,me|0)|0;pe=T;J=Es(st|0,ot|0,s|0,J|0)|0;s=T;it=Es(Ue|0,((Ue|0)<0)<<31>>31|0,rt|0,it|0)|0;rt=T;Ue=Es(be|0,ve|0,i|0,m|0)|0;je=T;ye=Es(Ee|0,ke|0,i|0,m|0)|0;ge=T;$=Es(ie|0,oe|0,i|0,m|0)|0;Z=T;m=Es(st|0,ot|0,i|0,m|0)|0;i=T;ve=Es(be|0,ve|0,a|0,Ae|0)|0;be=T;te=Es(Ee|0,ke|0,a|0,Ae|0)|0;ee=T;d=Es(ie|0,oe|0,d|0,((d|0)<0)<<31>>31|0)|0;h=T;Ae=Es(st|0,ot|0,a|0,Ae|0)|0;a=T;x=Es(Ee|0,ke|0,p|0,x|0)|0;p=T;ke=Es(ie|0,oe|0,r|0,t|0)|0;Ee=T;t=Es(st|0,ot|0,r|0,t|0)|0;r=T;oe=Es(ie|0,oe|0,q|0,z|0)|0;ie=T;z=Es(st|0,ot|0,q|0,z|0)|0;q=T;C=Es(st|0,ot|0,R|0,C|0)|0;R=T;tt=ks(it|0,rt|0,nt|0,tt|0)|0;$e=ks(tt|0,T|0,et|0,$e|0)|0;Je=ks($e|0,T|0,Ze|0,Je|0)|0;Ye=ks(Je|0,T|0,Xe|0,Ye|0)|0;n=ks(Ye|0,T|0,u|0,n|0)|0;u=T;we=ks(We|0,Qe|0,_e|0,we|0)|0;_e=T;re=ks(Ve|0,He|0,ne|0,re|0)|0;ne=T;qe=ks(Ge|0,Ke|0,ze|0,qe|0)|0;Le=ks(qe|0,T|0,Fe|0,Le|0)|0;p=ks(Le|0,T|0,x|0,p|0)|0;h=ks(p|0,T|0,d|0,h|0)|0;i=ks(h|0,T|0,m|0,i|0)|0;m=T;h=ks(n|0,u|0,33554432,0)|0;d=T;p=Rs(h|0,d|0,26)|0;x=T;Ne=ks(Ue|0,je|0,Be|0,Ne|0)|0;Me=ks(Ne|0,T|0,De|0,Me|0)|0;Oe=ks(Me|0,T|0,Pe|0,Oe|0)|0;l=ks(Oe|0,T|0,f|0,l|0)|0;x=ks(l|0,T|0,p|0,x|0)|0;p=T;d=Ss(n|0,u|0,h&-67108864|0,d|0)|0;h=T;u=ks(i|0,m|0,33554432,0)|0;n=T;l=Rs(u|0,n|0,26)|0;f=T;Ie=ks(Ce|0,Re|0,xe|0,Ie|0)|0;Se=ks(Ie|0,T|0,Te|0,Se|0)|0;Ee=ks(Se|0,T|0,ke|0,Ee|0)|0;a=ks(Ee|0,T|0,Ae|0,a|0)|0;f=ks(a|0,T|0,l|0,f|0)|0;l=T;n=Ss(i|0,m|0,u&-67108864|0,n|0)|0;u=T;m=ks(x|0,p|0,16777216,0)|0;i=Rs(m|0,T|0,25)|0;a=T;be=ks(we|0,_e|0,ve|0,be|0)|0;ge=ks(be|0,T|0,ye|0,ge|0)|0;pe=ks(ge|0,T|0,me|0,pe|0)|0;c=ks(pe|0,T|0,g|0,c|0)|0;a=ks(c|0,T|0,i|0,a|0)|0;i=T;m=Ss(x|0,p|0,m&-33554432|0,0)|0;p=T;x=ks(f|0,l|0,16777216,0)|0;c=Rs(x|0,T|0,25)|0;g=T;le=ks(he|0,de|0,ue|0,le|0)|0;ce=ks(le|0,T|0,fe|0,ce|0)|0;se=ks(ce|0,T|0,ae|0,se|0)|0;ie=ks(se|0,T|0,oe|0,ie|0)|0;r=ks(ie|0,T|0,t|0,r|0)|0;g=ks(r|0,T|0,c|0,g|0)|0;c=T;x=Ss(f|0,l|0,x&-33554432|0,0)|0;l=T;f=ks(a|0,i|0,33554432,0)|0;r=Rs(f|0,T|0,26)|0;t=T;ee=ks(re|0,ne|0,te|0,ee|0)|0;Z=ks(ee|0,T|0,$|0,Z|0)|0;s=ks(Z|0,T|0,J|0,s|0)|0;t=ks(s|0,T|0,r|0,t|0)|0;r=T;f=Ss(a|0,i|0,f&-67108864|0,0)|0;i=ks(g|0,c|0,33554432,0)|0;a=Rs(i|0,T|0,26)|0;s=T;Q=ks(X|0,Y|0,W|0,Q|0)|0;H=ks(Q|0,T|0,V|0,H|0)|0;K=ks(H|0,T|0,G|0,K|0)|0;q=ks(K|0,T|0,z|0,q|0)|0;s=ks(q|0,T|0,a|0,s|0)|0;a=T;i=Ss(g|0,c|0,i&-67108864|0,0)|0;c=ks(t|0,r|0,16777216,0)|0;g=Rs(c|0,T|0,25)|0;u=ks(g|0,T|0,n|0,u|0)|0;n=T;c=Ss(t|0,r|0,c&-33554432|0,0)|0;r=ks(s|0,a|0,16777216,0)|0;t=Rs(r|0,T|0,25)|0;g=T;j=ks(F|0,L|0,U|0,j|0)|0;N=ks(j|0,T|0,B|0,N|0)|0;M=ks(N|0,T|0,D|0,M|0)|0;O=ks(M|0,T|0,P|0,O|0)|0;R=ks(O|0,T|0,C|0,R|0)|0;g=ks(R|0,T|0,t|0,g|0)|0;t=T;r=Ss(s|0,a|0,r&-33554432|0,0)|0;a=ks(u|0,n|0,33554432,0)|0;s=Cs(a|0,T|0,26)|0;s=ks(x|0,l|0,s|0,T|0)|0;a=Ss(u|0,n|0,a&-67108864|0,0)|0;n=ks(g|0,t|0,33554432,0)|0;u=Rs(n|0,T|0,26)|0;l=T;E=ks(I|0,S|0,k|0,E|0)|0;w=ks(E|0,T|0,A|0,w|0)|0;v=ks(w|0,T|0,_|0,v|0)|0;y=ks(v|0,T|0,b|0,y|0)|0;l=ks(y|0,T|0,u|0,l|0)|0;u=T;n=Ss(g|0,t|0,n&-67108864|0,0)|0;t=ks(l|0,u|0,16777216,0)|0;g=Rs(t|0,T|0,25)|0;g=Es(g|0,T|0,19,0)|0;h=ks(g|0,T|0,d|0,h|0)|0;d=T;t=Ss(l|0,u|0,t&-33554432|0,0)|0;u=ks(h|0,d|0,33554432,0)|0;l=Cs(u|0,T|0,26)|0;l=ks(m|0,p|0,l|0,T|0)|0;u=Ss(h|0,d|0,u&-67108864|0,0)|0;o[e>>2]=u;o[e+4>>2]=l;o[e+8>>2]=f;o[e+12>>2]=c;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=n;o[e+36>>2]=t;return}function Xr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Ne=0,Be=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ct=0,ft=0,lt=0,ut=0,dt=0,ht=0,pt=0,mt=0,gt=0,yt=0,bt=0,vt=0,_t=0,wt=0,At=0,Et=0,kt=0,St=0,Tt=0,It=0,xt=0,Rt=0,Ct=0,Ot=0,Pt=0,Mt=0,Dt=0,Nt=0,Bt=0,jt=0,Ut=0,Lt=0,Ft=0,qt=0,zt=0,Kt=0,Gt=0,Ht=0,Vt=0,Qt=0,Wt=0,Yt=0,Xt=0,Jt=0,Zt=0,$t=0,en=0,tn=0,nn=0,rn=0,on=0,sn=0,an=0,cn=0,fn=0,ln=0,un=0,dn=0,hn=0,pn=0,mn=0,gn=0,yn=0,bn=0,vn=0,_n=0,wn=0,An=0,En=0,kn=0,Sn=0,Tn=0,In=0,xn=0,Rn=0,Cn=0,On=0,Pn=0,Mn=0,Dn=0,Nn=0,Bn=0,jn=0,Un=0,Ln=0,Fn=0,qn=0,zn=0,Kn=0,Gn=0,Hn=0;y=o[t>>2]|0;v=o[t+4>>2]|0;l=o[t+8>>2]|0;Ht=o[t+12>>2]|0;s=o[t+16>>2]|0;Te=o[t+20>>2]|0;a=o[t+24>>2]|0;It=o[t+28>>2]|0;oe=o[t+32>>2]|0;ae=o[t+36>>2]|0;D=o[n>>2]|0;B=o[n+4>>2]|0;P=o[n+8>>2]|0;C=o[n+12>>2]|0;x=o[n+16>>2]|0;S=o[n+20>>2]|0;E=o[n+24>>2]|0;w=o[n+28>>2]|0;f=o[n+32>>2]|0;_=o[n+36>>2]|0;qn=B*19|0;rn=P*19|0;bt=C*19|0;De=x*19|0;ln=S*19|0;Ot=E*19|0;Ve=w*19|0;Hn=f*19|0;Kn=_*19|0;t=v<<1;c=Ht<<1;i=Te<<1;r=It<<1;L=ae<<1;b=((y|0)<0)<<31>>31;N=((D|0)<0)<<31>>31;Ln=Es(D|0,N|0,y|0,b|0)|0;Un=T;j=((B|0)<0)<<31>>31;En=Es(B|0,j|0,y|0,b|0)|0;An=T;M=((P|0)<0)<<31>>31;wt=Es(P|0,M|0,y|0,b|0)|0;_t=T;O=((C|0)<0)<<31>>31;je=Es(C|0,O|0,y|0,b|0)|0;Be=T;R=((x|0)<0)<<31>>31;hn=Es(x|0,R|0,y|0,b|0)|0;dn=T;I=((S|0)<0)<<31>>31;Dt=Es(S|0,I|0,y|0,b|0)|0;Mt=T;k=((E|0)<0)<<31>>31;Ye=Es(E|0,k|0,y|0,b|0)|0;We=T;A=((w|0)<0)<<31>>31;le=Es(w|0,A|0,y|0,b|0)|0;fe=T;zn=((f|0)<0)<<31>>31;z=Es(f|0,zn|0,y|0,b|0)|0;q=T;b=Es(_|0,((_|0)<0)<<31>>31|0,y|0,b|0)|0;y=T;_=((v|0)<0)<<31>>31;sn=Es(D|0,N|0,v|0,_|0)|0;an=T;u=((t|0)<0)<<31>>31;St=Es(B|0,j|0,t|0,u|0)|0;kt=T;Le=Es(P|0,M|0,v|0,_|0)|0;Ue=T;mn=Es(C|0,O|0,t|0,u|0)|0;pn=T;Bt=Es(x|0,R|0,v|0,_|0)|0;Nt=T;Je=Es(S|0,I|0,t|0,u|0)|0;Xe=T;de=Es(E|0,k|0,v|0,_|0)|0;ue=T;G=Es(w|0,A|0,t|0,u|0)|0;K=T;_=Es(f|0,zn|0,v|0,_|0)|0;v=T;zn=((Kn|0)<0)<<31>>31;u=Es(Kn|0,zn|0,t|0,u|0)|0;t=T;f=((l|0)<0)<<31>>31;Et=Es(D|0,N|0,l|0,f|0)|0;At=T;Ke=Es(B|0,j|0,l|0,f|0)|0;ze=T;yn=Es(P|0,M|0,l|0,f|0)|0;gn=T;Ut=Es(C|0,O|0,l|0,f|0)|0;jt=T;$e=Es(x|0,R|0,l|0,f|0)|0;Ze=T;pe=Es(S|0,I|0,l|0,f|0)|0;he=T;V=Es(E|0,k|0,l|0,f|0)|0;H=T;A=Es(w|0,A|0,l|0,f|0)|0;w=T;Gn=((Hn|0)<0)<<31>>31;Sn=Es(Hn|0,Gn|0,l|0,f|0)|0;kn=T;f=Es(Kn|0,zn|0,l|0,f|0)|0;l=T;Vt=((Ht|0)<0)<<31>>31;qe=Es(D|0,N|0,Ht|0,Vt|0)|0;Fe=T;g=((c|0)<0)<<31>>31;wn=Es(B|0,j|0,c|0,g|0)|0;_n=T;Ft=Es(P|0,M|0,Ht|0,Vt|0)|0;Lt=T;tt=Es(C|0,O|0,c|0,g|0)|0;et=T;ge=Es(x|0,R|0,Ht|0,Vt|0)|0;me=T;W=Es(S|0,I|0,c|0,g|0)|0;Q=T;k=Es(E|0,k|0,Ht|0,Vt|0)|0;E=T;Qe=((Ve|0)<0)<<31>>31;In=Es(Ve|0,Qe|0,c|0,g|0)|0;Tn=T;Vt=Es(Hn|0,Gn|0,Ht|0,Vt|0)|0;Ht=T;g=Es(Kn|0,zn|0,c|0,g|0)|0;c=T;Se=((s|0)<0)<<31>>31;vn=Es(D|0,N|0,s|0,Se|0)|0;bn=T;Gt=Es(B|0,j|0,s|0,Se|0)|0;Kt=T;rt=Es(P|0,M|0,s|0,Se|0)|0;nt=T;be=Es(C|0,O|0,s|0,Se|0)|0;ye=T;X=Es(x|0,R|0,s|0,Se|0)|0;Y=T;I=Es(S|0,I|0,s|0,Se|0)|0;S=T;Pt=((Ot|0)<0)<<31>>31;Rn=Es(Ot|0,Pt|0,s|0,Se|0)|0;xn=T;Wt=Es(Ve|0,Qe|0,s|0,Se|0)|0;Qt=T;ft=Es(Hn|0,Gn|0,s|0,Se|0)|0;ct=T;Se=Es(Kn|0,zn|0,s|0,Se|0)|0;s=T;Ie=((Te|0)<0)<<31>>31;zt=Es(D|0,N|0,Te|0,Ie|0)|0;qt=T;m=((i|0)<0)<<31>>31;at=Es(B|0,j|0,i|0,m|0)|0;st=T;_e=Es(P|0,M|0,Te|0,Ie|0)|0;ve=T;Z=Es(C|0,O|0,i|0,m|0)|0;J=T;R=Es(x|0,R|0,Te|0,Ie|0)|0;x=T;un=((ln|0)<0)<<31>>31;On=Es(ln|0,un|0,i|0,m|0)|0;Cn=T;Xt=Es(Ot|0,Pt|0,Te|0,Ie|0)|0;Yt=T;ut=Es(Ve|0,Qe|0,i|0,m|0)|0;lt=T;Ie=Es(Hn|0,Gn|0,Te|0,Ie|0)|0;Te=T;m=Es(Kn|0,zn|0,i|0,m|0)|0;i=T;Tt=((a|0)<0)<<31>>31;ot=Es(D|0,N|0,a|0,Tt|0)|0;it=T;ke=Es(B|0,j|0,a|0,Tt|0)|0;Ee=T;ee=Es(P|0,M|0,a|0,Tt|0)|0;$=T;O=Es(C|0,O|0,a|0,Tt|0)|0;C=T;Ne=((De|0)<0)<<31>>31;Mn=Es(De|0,Ne|0,a|0,Tt|0)|0;Pn=T;Zt=Es(ln|0,un|0,a|0,Tt|0)|0;Jt=T;ht=Es(Ot|0,Pt|0,a|0,Tt|0)|0;dt=T;Re=Es(Ve|0,Qe|0,a|0,Tt|0)|0;xe=T;d=Es(Hn|0,Gn|0,a|0,Tt|0)|0;h=T;Tt=Es(Kn|0,zn|0,a|0,Tt|0)|0;a=T;xt=((It|0)<0)<<31>>31;Ae=Es(D|0,N|0,It|0,xt|0)|0;we=T;n=((r|0)<0)<<31>>31;ie=Es(B|0,j|0,r|0,n|0)|0;re=T;M=Es(P|0,M|0,It|0,xt|0)|0;P=T;vt=((bt|0)<0)<<31>>31;Nn=Es(bt|0,vt|0,r|0,n|0)|0;Dn=T;en=Es(De|0,Ne|0,It|0,xt|0)|0;$t=T;mt=Es(ln|0,un|0,r|0,n|0)|0;pt=T;Oe=Es(Ot|0,Pt|0,It|0,xt|0)|0;Ce=T;U=Es(Ve|0,Qe|0,r|0,n|0)|0;p=T;xt=Es(Hn|0,Gn|0,It|0,xt|0)|0;It=T;n=Es(Kn|0,zn|0,r|0,n|0)|0;r=T;se=((oe|0)<0)<<31>>31;ne=Es(D|0,N|0,oe|0,se|0)|0;te=T;j=Es(B|0,j|0,oe|0,se|0)|0;B=T;on=((rn|0)<0)<<31>>31;jn=Es(rn|0,on|0,oe|0,se|0)|0;Bn=T;nn=Es(bt|0,vt|0,oe|0,se|0)|0;tn=T;yt=Es(De|0,Ne|0,oe|0,se|0)|0;gt=T;Me=Es(ln|0,un|0,oe|0,se|0)|0;Pe=T;fn=Es(Ot|0,Pt|0,oe|0,se|0)|0;cn=T;Ct=Es(Ve|0,Qe|0,oe|0,se|0)|0;Rt=T;He=Es(Hn|0,Gn|0,oe|0,se|0)|0;Ge=T;se=Es(Kn|0,zn|0,oe|0,se|0)|0;oe=T;ce=((ae|0)<0)<<31>>31;N=Es(D|0,N|0,ae|0,ce|0)|0;D=T;F=((L|0)<0)<<31>>31;qn=Es(qn|0,((qn|0)<0)<<31>>31|0,L|0,F|0)|0;Fn=T;on=Es(rn|0,on|0,ae|0,ce|0)|0;rn=T;vt=Es(bt|0,vt|0,L|0,F|0)|0;bt=T;Ne=Es(De|0,Ne|0,ae|0,ce|0)|0;De=T;un=Es(ln|0,un|0,L|0,F|0)|0;ln=T;Pt=Es(Ot|0,Pt|0,ae|0,ce|0)|0;Ot=T;Qe=Es(Ve|0,Qe|0,L|0,F|0)|0;Ve=T;ce=Es(Hn|0,Gn|0,ae|0,ce|0)|0;ae=T;F=Es(Kn|0,zn|0,L|0,F|0)|0;L=T;Un=ks(qn|0,Fn|0,Ln|0,Un|0)|0;Bn=ks(Un|0,T|0,jn|0,Bn|0)|0;Dn=ks(Bn|0,T|0,Nn|0,Dn|0)|0;Pn=ks(Dn|0,T|0,Mn|0,Pn|0)|0;Cn=ks(Pn|0,T|0,On|0,Cn|0)|0;xn=ks(Cn|0,T|0,Rn|0,xn|0)|0;Tn=ks(xn|0,T|0,In|0,Tn|0)|0;kn=ks(Tn|0,T|0,Sn|0,kn|0)|0;t=ks(kn|0,T|0,u|0,t|0)|0;u=T;an=ks(En|0,An|0,sn|0,an|0)|0;sn=T;bn=ks(wn|0,_n|0,vn|0,bn|0)|0;gn=ks(bn|0,T|0,yn|0,gn|0)|0;pn=ks(gn|0,T|0,mn|0,pn|0)|0;dn=ks(pn|0,T|0,hn|0,dn|0)|0;ln=ks(dn|0,T|0,un|0,ln|0)|0;cn=ks(ln|0,T|0,fn|0,cn|0)|0;p=ks(cn|0,T|0,U|0,p|0)|0;h=ks(p|0,T|0,d|0,h|0)|0;i=ks(h|0,T|0,m|0,i|0)|0;m=T;h=ks(t|0,u|0,33554432,0)|0;d=T;p=Rs(h|0,d|0,26)|0;U=T;rn=ks(an|0,sn|0,on|0,rn|0)|0;tn=ks(rn|0,T|0,nn|0,tn|0)|0;$t=ks(tn|0,T|0,en|0,$t|0)|0;Jt=ks($t|0,T|0,Zt|0,Jt|0)|0;Yt=ks(Jt|0,T|0,Xt|0,Yt|0)|0;Qt=ks(Yt|0,T|0,Wt|0,Qt|0)|0;Ht=ks(Qt|0,T|0,Vt|0,Ht|0)|0;l=ks(Ht|0,T|0,f|0,l|0)|0;U=ks(l|0,T|0,p|0,U|0)|0;p=T;d=Ss(t|0,u|0,h&-67108864|0,d|0)|0;h=T;u=ks(i|0,m|0,33554432,0)|0;t=T;l=Rs(u|0,t|0,26)|0;f=T;qt=ks(Gt|0,Kt|0,zt|0,qt|0)|0;Lt=ks(qt|0,T|0,Ft|0,Lt|0)|0;jt=ks(Lt|0,T|0,Ut|0,jt|0)|0;Nt=ks(jt|0,T|0,Bt|0,Nt|0)|0;Mt=ks(Nt|0,T|0,Dt|0,Mt|0)|0;Ot=ks(Mt|0,T|0,Pt|0,Ot|0)|0;Rt=ks(Ot|0,T|0,Ct|0,Rt|0)|0;It=ks(Rt|0,T|0,xt|0,It|0)|0;a=ks(It|0,T|0,Tt|0,a|0)|0;f=ks(a|0,T|0,l|0,f|0)|0;l=T;t=Ss(i|0,m|0,u&-67108864|0,t|0)|0;u=T;m=ks(U|0,p|0,16777216,0)|0;i=Rs(m|0,T|0,25)|0;a=T;At=ks(St|0,kt|0,Et|0,At|0)|0;_t=ks(At|0,T|0,wt|0,_t|0)|0;bt=ks(_t|0,T|0,vt|0,bt|0)|0;gt=ks(bt|0,T|0,yt|0,gt|0)|0;pt=ks(gt|0,T|0,mt|0,pt|0)|0;dt=ks(pt|0,T|0,ht|0,dt|0)|0;lt=ks(dt|0,T|0,ut|0,lt|0)|0;ct=ks(lt|0,T|0,ft|0,ct|0)|0;c=ks(ct|0,T|0,g|0,c|0)|0;a=ks(c|0,T|0,i|0,a|0)|0;i=T;m=Ss(U|0,p|0,m&-33554432|0,0)|0;p=T;U=ks(f|0,l|0,16777216,0)|0;c=Rs(U|0,T|0,25)|0;g=T;it=ks(at|0,st|0,ot|0,it|0)|0;nt=ks(it|0,T|0,rt|0,nt|0)|0;et=ks(nt|0,T|0,tt|0,et|0)|0;Ze=ks(et|0,T|0,$e|0,Ze|0)|0;Xe=ks(Ze|0,T|0,Je|0,Xe|0)|0;We=ks(Xe|0,T|0,Ye|0,We|0)|0;Ve=ks(We|0,T|0,Qe|0,Ve|0)|0;Ge=ks(Ve|0,T|0,He|0,Ge|0)|0;r=ks(Ge|0,T|0,n|0,r|0)|0;g=ks(r|0,T|0,c|0,g|0)|0;c=T;U=Ss(f|0,l|0,U&-33554432|0,0)|0;l=T;f=ks(a|0,i|0,33554432,0)|0;r=Rs(f|0,T|0,26)|0;n=T;Fe=ks(Ke|0,ze|0,qe|0,Fe|0)|0;Ue=ks(Fe|0,T|0,Le|0,Ue|0)|0;Be=ks(Ue|0,T|0,je|0,Be|0)|0;De=ks(Be|0,T|0,Ne|0,De|0)|0;Pe=ks(De|0,T|0,Me|0,Pe|0)|0;Ce=ks(Pe|0,T|0,Oe|0,Ce|0)|0;xe=ks(Ce|0,T|0,Re|0,xe|0)|0;Te=ks(xe|0,T|0,Ie|0,Te|0)|0;s=ks(Te|0,T|0,Se|0,s|0)|0;n=ks(s|0,T|0,r|0,n|0)|0;r=T;f=Ss(a|0,i|0,f&-67108864|0,0)|0;i=ks(g|0,c|0,33554432,0)|0;a=Rs(i|0,T|0,26)|0;s=T;we=ks(ke|0,Ee|0,Ae|0,we|0)|0;ve=ks(we|0,T|0,_e|0,ve|0)|0;ye=ks(ve|0,T|0,be|0,ye|0)|0;me=ks(ye|0,T|0,ge|0,me|0)|0;he=ks(me|0,T|0,pe|0,he|0)|0;ue=ks(he|0,T|0,de|0,ue|0)|0;fe=ks(ue|0,T|0,le|0,fe|0)|0;ae=ks(fe|0,T|0,ce|0,ae|0)|0;oe=ks(ae|0,T|0,se|0,oe|0)|0;s=ks(oe|0,T|0,a|0,s|0)|0;a=T;i=Ss(g|0,c|0,i&-67108864|0,0)|0;c=ks(n|0,r|0,16777216,0)|0;g=Rs(c|0,T|0,25)|0;u=ks(g|0,T|0,t|0,u|0)|0;t=T;c=Ss(n|0,r|0,c&-33554432|0,0)|0;r=ks(s|0,a|0,16777216,0)|0;n=Rs(r|0,T|0,25)|0;g=T;te=ks(ie|0,re|0,ne|0,te|0)|0;$=ks(te|0,T|0,ee|0,$|0)|0;J=ks($|0,T|0,Z|0,J|0)|0;Y=ks(J|0,T|0,X|0,Y|0)|0;Q=ks(Y|0,T|0,W|0,Q|0)|0;H=ks(Q|0,T|0,V|0,H|0)|0;K=ks(H|0,T|0,G|0,K|0)|0;q=ks(K|0,T|0,z|0,q|0)|0;L=ks(q|0,T|0,F|0,L|0)|0;g=ks(L|0,T|0,n|0,g|0)|0;n=T;r=Ss(s|0,a|0,r&-33554432|0,0)|0;a=ks(u|0,t|0,33554432,0)|0;s=Cs(a|0,T|0,26)|0;s=ks(U|0,l|0,s|0,T|0)|0;a=Ss(u|0,t|0,a&-67108864|0,0)|0;t=ks(g|0,n|0,33554432,0)|0;u=Rs(t|0,T|0,26)|0;l=T;D=ks(j|0,B|0,N|0,D|0)|0;P=ks(D|0,T|0,M|0,P|0)|0;C=ks(P|0,T|0,O|0,C|0)|0;x=ks(C|0,T|0,R|0,x|0)|0;S=ks(x|0,T|0,I|0,S|0)|0;E=ks(S|0,T|0,k|0,E|0)|0;w=ks(E|0,T|0,A|0,w|0)|0;v=ks(w|0,T|0,_|0,v|0)|0;y=ks(v|0,T|0,b|0,y|0)|0;l=ks(y|0,T|0,u|0,l|0)|0;u=T;t=Ss(g|0,n|0,t&-67108864|0,0)|0;n=ks(l|0,u|0,16777216,0)|0;g=Rs(n|0,T|0,25)|0;g=Es(g|0,T|0,19,0)|0;h=ks(g|0,T|0,d|0,h|0)|0;d=T;n=Ss(l|0,u|0,n&-33554432|0,0)|0;u=ks(h|0,d|0,33554432,0)|0;l=Cs(u|0,T|0,26)|0;l=ks(m|0,p|0,l|0,T|0)|0;u=Ss(h|0,d|0,u&-67108864|0,0)|0;o[e>>2]=u;o[e+4>>2]=l;o[e+8>>2]=f;o[e+12>>2]=c;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=t;o[e+36>>2]=n;return}function Jr(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0;v=o[t>>2]|0;b=o[t+4>>2]|0;g=o[t+8>>2]|0;p=o[t+12>>2]|0;d=o[t+16>>2]|0;u=o[t+20>>2]|0;l=o[t+24>>2]|0;c=o[t+28>>2]|0;s=o[t+32>>2]|0;n=o[t+36>>2]|0;v=(((((((((((((n*19|0)+16777216>>25)+v>>26)+b>>25)+g>>26)+p>>25)+d>>26)+u>>25)+l>>26)+c>>25)+s>>26)+n>>25)*19|0)+v|0;b=(v>>26)+b|0;g=(b>>25)+g|0;y=b&33554431;p=(g>>26)+p|0;m=g&67108863;d=(p>>25)+d|0;h=p&33554431;u=(d>>26)+u|0;l=(u>>25)+l|0;c=(l>>26)+c|0;f=l&67108863;s=(c>>25)+s|0;a=c&33554431;n=(s>>26)+n|0;i=s&67108863;t=n&33554431;r[e>>0]=v;r[e+1>>0]=v>>>8;r[e+2>>0]=v>>>16;r[e+3>>0]=y<<2|v>>>24&3;r[e+4>>0]=b>>>6;r[e+5>>0]=b>>>14;r[e+6>>0]=m<<3|y>>>22;r[e+7>>0]=g>>>5;r[e+8>>0]=g>>>13;r[e+9>>0]=h<<5|m>>>21;r[e+10>>0]=p>>>3;r[e+11>>0]=p>>>11;r[e+12>>0]=d<<6|h>>>19;r[e+13>>0]=d>>>2;r[e+14>>0]=d>>>10;r[e+15>>0]=d>>>18;r[e+16>>0]=u;r[e+17>>0]=u>>>8;r[e+18>>0]=u>>>16;r[e+19>>0]=f<<1|u>>>24&1;r[e+20>>0]=l>>>7;r[e+21>>0]=l>>>15;r[e+22>>0]=a<<3|f>>>23;r[e+23>>0]=c>>>5;r[e+24>>0]=c>>>13;r[e+25>>0]=i<<4|a>>>21;r[e+26>>0]=s>>>4;r[e+27>>0]=s>>>12;r[e+28>>0]=t<<6|i>>>20;r[e+29>>0]=n>>>2;r[e+30>>0]=n>>>10;r[e+31>>0]=t>>>18;return}function Zr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0,s=0;s=h;h=h+144|0;r=s+96|0;i=s+48|0;o=s;Yr(r,t);Yr(i,r);Yr(i,i);Xr(i,t,i);Xr(r,r,i);Yr(r,r);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);n=1;do{Yr(o,o);n=n+1|0}while((n|0)!=100);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(r,r);Yr(r,r);Xr(e,r,t);h=s;return}function $r(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Ne=0,Be=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;tt=o[t>>2]|0;je=o[t+4>>2]|0;v=o[t+8>>2]|0;re=o[t+12>>2]|0;_=o[t+16>>2]|0;rt=o[t+20>>2]|0;f=o[t+24>>2]|0;me=o[t+28>>2]|0;s=o[t+32>>2]|0;g=o[t+36>>2]|0;l=tt<<1;y=je<<1;Ye=v<<1;A=re<<1;Oe=_<<1;m=rt<<1;pe=f<<1;w=me<<1;We=rt*38|0;Ne=f*19|0;oe=me*38|0;Y=s*19|0;st=g*38|0;nt=((tt|0)<0)<<31>>31;nt=Es(tt|0,nt|0,tt|0,nt|0)|0;tt=T;u=((l|0)<0)<<31>>31;Ue=((je|0)<0)<<31>>31;Ve=Es(l|0,u|0,je|0,Ue|0)|0;He=T;p=((v|0)<0)<<31>>31;Fe=Es(v|0,p|0,l|0,u|0)|0;Le=T;ie=((re|0)<0)<<31>>31;Ce=Es(re|0,ie|0,l|0,u|0)|0;Re=T;r=((_|0)<0)<<31>>31;be=Es(_|0,r|0,l|0,u|0)|0;ye=T;it=((rt|0)<0)<<31>>31;ce=Es(rt|0,it|0,l|0,u|0)|0;ae=T;b=((f|0)<0)<<31>>31;Z=Es(f|0,b|0,l|0,u|0)|0;J=T;ge=((me|0)<0)<<31>>31;z=Es(me|0,ge|0,l|0,u|0)|0;q=T;a=((s|0)<0)<<31>>31;P=Es(s|0,a|0,l|0,u|0)|0;O=T;t=((g|0)<0)<<31>>31;u=Es(g|0,t|0,l|0,u|0)|0;l=T;n=((y|0)<0)<<31>>31;Ue=Es(y|0,n|0,je|0,Ue|0)|0;je=T;xe=Es(y|0,n|0,v|0,p|0)|0;Ie=T;i=((A|0)<0)<<31>>31;Ae=Es(A|0,i|0,y|0,n|0)|0;we=T;de=Es(_|0,r|0,y|0,n|0)|0;ue=T;E=((m|0)<0)<<31>>31;ee=Es(m|0,E|0,y|0,n|0)|0;$=T;G=Es(f|0,b|0,y|0,n|0)|0;K=T;c=((w|0)<0)<<31>>31;D=Es(w|0,c|0,y|0,n|0)|0;M=T;d=Es(s|0,a|0,y|0,n|0)|0;h=T;ot=((st|0)<0)<<31>>31;n=Es(st|0,ot|0,y|0,n|0)|0;y=T;_e=Es(v|0,p|0,v|0,p|0)|0;ve=T;Xe=((Ye|0)<0)<<31>>31;le=Es(Ye|0,Xe|0,re|0,ie|0)|0;fe=T;ne=Es(_|0,r|0,Ye|0,Xe|0)|0;te=T;W=Es(rt|0,it|0,Ye|0,Xe|0)|0;Q=T;F=Es(f|0,b|0,Ye|0,Xe|0)|0;L=T;S=Es(me|0,ge|0,Ye|0,Xe|0)|0;k=T;X=((Y|0)<0)<<31>>31;Xe=Es(Y|0,X|0,Ye|0,Xe|0)|0;Ye=T;p=Es(st|0,ot|0,v|0,p|0)|0;v=T;ie=Es(A|0,i|0,re|0,ie|0)|0;re=T;V=Es(A|0,i|0,_|0,r|0)|0;H=T;B=Es(m|0,E|0,A|0,i|0)|0;N=T;C=Es(f|0,b|0,A|0,i|0)|0;R=T;se=((oe|0)<0)<<31>>31;Ze=Es(oe|0,se|0,A|0,i|0)|0;Je=T;ze=Es(Y|0,X|0,A|0,i|0)|0;qe=T;i=Es(st|0,ot|0,A|0,i|0)|0;A=T;U=Es(_|0,r|0,_|0,r|0)|0;j=T;Pe=((Oe|0)<0)<<31>>31;x=Es(Oe|0,Pe|0,rt|0,it|0)|0;I=T;Be=((Ne|0)<0)<<31>>31;et=Es(Ne|0,Be|0,Oe|0,Pe|0)|0;$e=T;Ge=Es(oe|0,se|0,_|0,r|0)|0;Ke=T;Pe=Es(Y|0,X|0,Oe|0,Pe|0)|0;Oe=T;r=Es(st|0,ot|0,_|0,r|0)|0;_=T;it=Es(We|0,((We|0)<0)<<31>>31|0,rt|0,it|0)|0;rt=T;We=Es(Ne|0,Be|0,m|0,E|0)|0;Qe=T;De=Es(oe|0,se|0,m|0,E|0)|0;Me=T;ke=Es(Y|0,X|0,m|0,E|0)|0;Ee=T;E=Es(st|0,ot|0,m|0,E|0)|0;m=T;Be=Es(Ne|0,Be|0,f|0,b|0)|0;Ne=T;Te=Es(oe|0,se|0,f|0,b|0)|0;Se=T;pe=Es(Y|0,X|0,pe|0,((pe|0)<0)<<31>>31|0)|0;he=T;b=Es(st|0,ot|0,f|0,b|0)|0;f=T;ge=Es(oe|0,se|0,me|0,ge|0)|0;me=T;se=Es(Y|0,X|0,w|0,c|0)|0;oe=T;c=Es(st|0,ot|0,w|0,c|0)|0;w=T;X=Es(Y|0,X|0,s|0,a|0)|0;Y=T;a=Es(st|0,ot|0,s|0,a|0)|0;s=T;t=Es(st|0,ot|0,g|0,t|0)|0;g=T;tt=ks(it|0,rt|0,nt|0,tt|0)|0;$e=ks(tt|0,T|0,et|0,$e|0)|0;Je=ks($e|0,T|0,Ze|0,Je|0)|0;Ye=ks(Je|0,T|0,Xe|0,Ye|0)|0;y=ks(Ye|0,T|0,n|0,y|0)|0;n=T;He=ks(We|0,Qe|0,Ve|0,He|0)|0;Ke=ks(He|0,T|0,Ge|0,Ke|0)|0;qe=ks(Ke|0,T|0,ze|0,qe|0)|0;v=ks(qe|0,T|0,p|0,v|0)|0;p=T;je=ks(Fe|0,Le|0,Ue|0,je|0)|0;Ne=ks(je|0,T|0,Be|0,Ne|0)|0;Me=ks(Ne|0,T|0,De|0,Me|0)|0;Oe=ks(Me|0,T|0,Pe|0,Oe|0)|0;A=ks(Oe|0,T|0,i|0,A|0)|0;i=T;Ie=ks(Ce|0,Re|0,xe|0,Ie|0)|0;Se=ks(Ie|0,T|0,Te|0,Se|0)|0;Ee=ks(Se|0,T|0,ke|0,Ee|0)|0;_=ks(Ee|0,T|0,r|0,_|0)|0;r=T;ve=ks(Ae|0,we|0,_e|0,ve|0)|0;ye=ks(ve|0,T|0,be|0,ye|0)|0;me=ks(ye|0,T|0,ge|0,me|0)|0;he=ks(me|0,T|0,pe|0,he|0)|0;m=ks(he|0,T|0,E|0,m|0)|0;E=T;fe=ks(de|0,ue|0,le|0,fe|0)|0;ae=ks(fe|0,T|0,ce|0,ae|0)|0;oe=ks(ae|0,T|0,se|0,oe|0)|0;f=ks(oe|0,T|0,b|0,f|0)|0;b=T;te=ks(ie|0,re|0,ne|0,te|0)|0;$=ks(te|0,T|0,ee|0,$|0)|0;J=ks($|0,T|0,Z|0,J|0)|0;Y=ks(J|0,T|0,X|0,Y|0)|0;w=ks(Y|0,T|0,c|0,w|0)|0;c=T;H=ks(W|0,Q|0,V|0,H|0)|0;K=ks(H|0,T|0,G|0,K|0)|0;q=ks(K|0,T|0,z|0,q|0)|0;s=ks(q|0,T|0,a|0,s|0)|0;a=T;j=ks(F|0,L|0,U|0,j|0)|0;N=ks(j|0,T|0,B|0,N|0)|0;M=ks(N|0,T|0,D|0,M|0)|0;O=ks(M|0,T|0,P|0,O|0)|0;g=ks(O|0,T|0,t|0,g|0)|0;t=T;I=ks(C|0,R|0,x|0,I|0)|0;k=ks(I|0,T|0,S|0,k|0)|0;h=ks(k|0,T|0,d|0,h|0)|0;l=ks(h|0,T|0,u|0,l|0)|0;u=T;n=Os(y|0,n|0,1)|0;y=T;p=Os(v|0,p|0,1)|0;v=T;i=Os(A|0,i|0,1)|0;A=T;r=Os(_|0,r|0,1)|0;_=T;E=Os(m|0,E|0,1)|0;m=T;b=Os(f|0,b|0,1)|0;f=T;c=Os(w|0,c|0,1)|0;w=T;a=Os(s|0,a|0,1)|0;s=T;t=Os(g|0,t|0,1)|0;g=T;u=Os(l|0,u|0,1)|0;l=T;h=ks(n|0,y|0,33554432,0)|0;d=T;k=Rs(h|0,d|0,26)|0;v=ks(k|0,T|0,p|0,v|0)|0;p=T;d=Ss(n|0,y|0,h&-67108864|0,d|0)|0;h=T;y=ks(E|0,m|0,33554432,0)|0;n=T;k=Rs(y|0,n|0,26)|0;f=ks(k|0,T|0,b|0,f|0)|0;b=T;n=Ss(E|0,m|0,y&-67108864|0,n|0)|0;y=T;m=ks(v|0,p|0,16777216,0)|0;E=Rs(m|0,T|0,25)|0;A=ks(E|0,T|0,i|0,A|0)|0;i=T;m=Ss(v|0,p|0,m&-33554432|0,0)|0;p=T;v=ks(f|0,b|0,16777216,0)|0;E=Rs(v|0,T|0,25)|0;w=ks(E|0,T|0,c|0,w|0)|0;c=T;v=Ss(f|0,b|0,v&-33554432|0,0)|0;b=T;f=ks(A|0,i|0,33554432,0)|0;E=Rs(f|0,T|0,26)|0;_=ks(E|0,T|0,r|0,_|0)|0;r=T;f=Ss(A|0,i|0,f&-67108864|0,0)|0;i=ks(w|0,c|0,33554432,0)|0;A=Rs(i|0,T|0,26)|0;s=ks(A|0,T|0,a|0,s|0)|0;a=T;i=Ss(w|0,c|0,i&-67108864|0,0)|0;c=ks(_|0,r|0,16777216,0)|0;w=Rs(c|0,T|0,25)|0;y=ks(w|0,T|0,n|0,y|0)|0;n=T;c=Ss(_|0,r|0,c&-33554432|0,0)|0;r=ks(s|0,a|0,16777216,0)|0;_=Rs(r|0,T|0,25)|0;g=ks(_|0,T|0,t|0,g|0)|0;t=T;r=Ss(s|0,a|0,r&-33554432|0,0)|0;a=ks(y|0,n|0,33554432,0)|0;s=Cs(a|0,T|0,26)|0;s=ks(v|0,b|0,s|0,T|0)|0;a=Ss(y|0,n|0,a&-67108864|0,0)|0;n=ks(g|0,t|0,33554432,0)|0;y=Rs(n|0,T|0,26)|0;l=ks(y|0,T|0,u|0,l|0)|0;u=T;n=Ss(g|0,t|0,n&-67108864|0,0)|0;t=ks(l|0,u|0,16777216,0)|0;g=Rs(t|0,T|0,25)|0;g=Es(g|0,T|0,19,0)|0;h=ks(g|0,T|0,d|0,h|0)|0;d=T;t=Ss(l|0,u|0,t&-33554432|0,0)|0;u=ks(h|0,d|0,33554432,0)|0;l=Cs(u|0,T|0,26)|0;l=ks(m|0,p|0,l|0,T|0)|0;u=Ss(h|0,d|0,u&-67108864|0,0)|0;o[e>>2]=u;o[e+4>>2]=l;o[e+8>>2]=f;o[e+12>>2]=c;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=n;o[e+36>>2]=t;return}function ei(e){e=e|0;var t=0,n=0,i=0,o=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Ne=0,Be=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;de=e+1|0;fe=e+2|0;z=r[fe>>0]|0;Ae=s[e>>0]|0;P=Os(s[de>>0]|0|0,0,8)|0;ve=T;z=z&255;_e=Os(z|0,0,16)|0;ce=e+3|0;w=Os(s[ce>>0]|0|0,0,8)|0;te=T;ie=e+4|0;Z=Os(s[ie>>0]|0|0,0,16)|0;te=te|T;re=e+5|0;q=s[re>>0]|0;$=Os(q|0,0,24)|0;te=Cs(w|z|Z|$|0,te|T|0,5)|0;$=e+6|0;Z=e+7|0;z=r[Z>>0]|0;w=Os(s[$>>0]|0|0,0,8)|0;xe=T;z=z&255;J=Os(z|0,0,16)|0;xe=Cs(w|q|J|0,xe|T|0,2)|0;J=e+8|0;q=Os(s[J>>0]|0|0,0,8)|0;w=T;Q=e+9|0;Ie=Os(s[Q>>0]|0|0,0,16)|0;w=w|T;V=e+10|0;Ve=s[V>>0]|0;H=Os(Ve|0,0,24)|0;w=Cs(q|z|Ie|H|0,w|T|0,7)|0;H=e+11|0;Ie=Os(s[H>>0]|0|0,0,8)|0;z=T;q=e+12|0;N=Os(s[q>>0]|0|0,0,16)|0;z=z|T;F=e+13|0;A=s[F>>0]|0;B=Os(A|0,0,24)|0;z=Cs(Ie|Ve|N|B|0,z|T|0,4)|0;B=e+14|0;N=e+15|0;Ve=r[N>>0]|0;Ie=Os(s[B>>0]|0|0,0,8)|0;ye=T;Ve=Ve&255;D=Os(Ve|0,0,16)|0;ye=Cs(Ie|A|D|0,ye|T|0,1)|0;D=e+16|0;A=Os(s[D>>0]|0|0,0,8)|0;Ie=T;C=e+17|0;k=Os(s[C>>0]|0|0,0,16)|0;Ie=Ie|T;R=e+18|0;E=s[R>>0]|0;x=Os(E|0,0,24)|0;Ie=Cs(A|Ve|k|x|0,Ie|T|0,6)|0;x=e+19|0;k=e+20|0;Ve=r[k>>0]|0;A=Os(s[x>>0]|0|0,0,8)|0;Qe=T;Ve=Os(Ve&255|0,0,16)|0;Qe=Cs(A|E|Ve|0,Qe|T|0,3)|0;Ve=T;E=e+21|0;A=e+22|0;v=e+23|0;n=r[v>>0]|0;et=s[E>>0]|0;tt=Os(s[A>>0]|0|0,0,8)|0;Ze=T;n=n&255;$e=Os(n|0,0,16)|0;b=e+24|0;Ue=Os(s[b>>0]|0|0,0,8)|0;Ke=T;p=e+25|0;c=Os(s[p>>0]|0|0,0,16)|0;Ke=Ke|T;h=e+26|0;pe=s[h>>0]|0;f=Os(pe|0,0,24)|0;Ke=Cs(Ue|n|c|f|0,Ke|T|0,5)|0;f=e+27|0;c=e+28|0;n=r[c>>0]|0;Ue=Os(s[f>>0]|0|0,0,8)|0;Je=T;n=n&255;a=Os(n|0,0,16)|0;Je=Cs(Ue|pe|a|0,Je|T|0,2)|0;a=e+29|0;pe=Os(s[a>>0]|0|0,0,8)|0;Ue=T;o=e+30|0;ot=Os(s[o>>0]|0|0,0,16)|0;Ue=Ue|T;t=e+31|0;ne=s[t>>0]|0;l=Os(ne|0,0,24)|0;Ue=Cs(pe|n|ot|l|0,Ue|T|0,7)|0;l=Os(s[e+32>>0]|0|0,0,8)|0;ot=T;n=Os(s[e+33>>0]|0|0,0,16)|0;ot=ot|T;pe=s[e+34>>0]|0;g=Os(pe|0,0,24)|0;ot=Cs(l|ne|n|g|0,ot|T|0,4)|0;g=r[e+36>>0]|0;n=Os(s[e+35>>0]|0|0,0,8)|0;ne=T;g=g&255;l=Os(g|0,0,16)|0;ne=Cs(n|pe|l|0,ne|T|0,1)|0;l=Os(s[e+37>>0]|0|0,0,8)|0;pe=T;n=Os(s[e+38>>0]|0|0,0,16)|0;pe=pe|T;Fe=s[e+39>>0]|0;ee=Os(Fe|0,0,24)|0;pe=Cs(l|g|n|ee|0,pe|T|0,6)|0;ee=r[e+41>>0]|0;n=Os(s[e+40>>0]|0|0,0,8)|0;g=T;ee=Os(ee&255|0,0,16)|0;g=Cs(n|Fe|ee|0,g|T|0,3)|0;ee=T;Fe=r[e+44>>0]|0;n=s[e+42>>0]|0;l=Os(s[e+43>>0]|0|0,0,8)|0;j=T;Fe=Fe&255;y=Os(Fe|0,0,16)|0;S=Os(s[e+45>>0]|0|0,0,8)|0;oe=T;Oe=Os(s[e+46>>0]|0|0,0,16)|0;oe=oe|T;st=s[e+47>>0]|0;U=Os(st|0,0,24)|0;oe=Cs(S|Fe|Oe|U|0,oe|T|0,5)|0;U=r[e+49>>0]|0;Oe=Os(s[e+48>>0]|0|0,0,8)|0;Fe=T;U=U&255;S=Os(U|0,0,16)|0;Fe=Cs(Oe|st|S|0,Fe|T|0,2)|0;Fe=Fe&2097151;S=Os(s[e+50>>0]|0|0,0,8)|0;st=T;Oe=Os(s[e+51>>0]|0|0,0,16)|0;st=st|T;le=s[e+52>>0]|0;L=Os(le|0,0,24)|0;st=Cs(S|U|Oe|L|0,st|T|0,7)|0;st=st&2097151;L=Os(s[e+53>>0]|0|0,0,8)|0;Oe=T;U=Os(s[e+54>>0]|0|0,0,16)|0;Oe=Oe|T;S=s[e+55>>0]|0;W=Os(S|0,0,24)|0;Oe=Cs(L|le|U|W|0,Oe|T|0,4)|0;Oe=Oe&2097151;W=r[e+57>>0]|0;U=Os(s[e+56>>0]|0|0,0,8)|0;le=T;W=W&255;L=Os(W|0,0,16)|0;le=Cs(U|S|L|0,le|T|0,1)|0;le=le&2097151;L=Os(s[e+58>>0]|0|0,0,8)|0;S=T;U=Os(s[e+59>>0]|0|0,0,16)|0;S=S|T;he=s[e+60>>0]|0;ge=Os(he|0,0,24)|0;S=Cs(L|W|U|ge|0,S|T|0,6)|0;S=S&2097151;ge=Os(s[e+61>>0]|0|0,0,8)|0;U=T;W=Os(s[e+62>>0]|0|0,0,16)|0;U=U|T;L=Os(s[e+63>>0]|0|0,0,24)|0;U=Cs(ge|he|W|L|0,U|T|0,3)|0;L=T;W=Es(U|0,L|0,666643,0)|0;he=T;ge=Es(U|0,L|0,470296,0)|0;ae=T;_=Es(U|0,L|0,654183,0)|0;O=T;we=Es(U|0,L|0,-997805,-1)|0;Te=T;d=Es(U|0,L|0,136657,0)|0;Se=T;L=Es(U|0,L|0,-683901,-1)|0;j=ks(L|0,T|0,l|n|y&2031616|0,j|0)|0;y=T;n=Es(S|0,0,666643,0)|0;l=T;L=Es(S|0,0,470296,0)|0;U=T;Ye=Es(S|0,0,654183,0)|0;M=T;Y=Es(S|0,0,-997805,-1)|0;K=T;ke=Es(S|0,0,136657,0)|0;me=T;S=Es(S|0,0,-683901,-1)|0;G=T;Re=Es(le|0,0,666643,0)|0;Ee=T;se=Es(le|0,0,470296,0)|0;Le=T;Me=Es(le|0,0,654183,0)|0;Pe=T;nt=Es(le|0,0,-997805,-1)|0;We=T;u=Es(le|0,0,136657,0)|0;m=T;le=Es(le|0,0,-683901,-1)|0;pe=ks(le|0,T|0,pe&2097151|0,0)|0;me=ks(pe|0,T|0,ke|0,me|0)|0;Te=ks(me|0,T|0,we|0,Te|0)|0;we=T;me=Es(Oe|0,0,666643,0)|0;ke=T;pe=Es(Oe|0,0,470296,0)|0;le=T;be=Es(Oe|0,0,654183,0)|0;X=T;Ne=Es(Oe|0,0,-997805,-1)|0;De=T;it=Es(Oe|0,0,136657,0)|0;rt=T;Oe=Es(Oe|0,0,-683901,-1)|0;Ce=T;i=Es(st|0,0,666643,0)|0;I=T;Ge=Es(st|0,0,470296,0)|0;He=T;ze=Es(st|0,0,654183,0)|0;qe=T;Xe=Es(st|0,0,-997805,-1)|0;ue=T;je=Es(st|0,0,136657,0)|0;Be=T;st=Es(st|0,0,-683901,-1)|0;ot=ks(st|0,T|0,ot&2097151|0,0)|0;rt=ks(ot|0,T|0,it|0,rt|0)|0;We=ks(rt|0,T|0,nt|0,We|0)|0;M=ks(We|0,T|0,Ye|0,M|0)|0;ae=ks(M|0,T|0,ge|0,ae|0)|0;ge=T;M=Es(Fe|0,0,666643,0)|0;Ie=ks(M|0,T|0,Ie&2097151|0,0)|0;M=T;Ye=Es(Fe|0,0,470296,0)|0;We=T;nt=Es(Fe|0,0,654183,0)|0;Ze=ks(nt|0,T|0,tt|et|$e&2031616|0,Ze|0)|0;He=ks(Ze|0,T|0,Ge|0,He|0)|0;ke=ks(He|0,T|0,me|0,ke|0)|0;me=T;He=Es(Fe|0,0,-997805,-1)|0;Ge=T;Ze=Es(Fe|0,0,136657,0)|0;Je=ks(Ze|0,T|0,Je&2097151|0,0)|0;ue=ks(Je|0,T|0,Xe|0,ue|0)|0;X=ks(ue|0,T|0,be|0,X|0)|0;Le=ks(X|0,T|0,se|0,Le|0)|0;l=ks(Le|0,T|0,n|0,l|0)|0;n=T;Fe=Es(Fe|0,0,-683901,-1)|0;Le=T;se=ks(Ie|0,M|0,1048576,0)|0;X=T;be=Cs(se|0,X|0,21)|0;ue=T;Ve=ks(Ye|0,We|0,Qe|0,Ve|0)|0;ue=ks(Ve|0,T|0,be|0,ue|0)|0;I=ks(ue|0,T|0,i|0,I|0)|0;i=T;X=Ss(Ie|0,M|0,se&-2097152|0,X&2047|0)|0;se=T;M=ks(ke|0,me|0,1048576,0)|0;Ie=T;ue=Cs(M|0,Ie|0,21)|0;be=T;Ke=ks(He|0,Ge|0,Ke&2097151|0,0)|0;qe=ks(Ke|0,T|0,ze|0,qe|0)|0;le=ks(qe|0,T|0,pe|0,le|0)|0;Ee=ks(le|0,T|0,Re|0,Ee|0)|0;be=ks(Ee|0,T|0,ue|0,be|0)|0;ue=T;Ee=ks(l|0,n|0,1048576,0)|0;Re=T;le=Rs(Ee|0,Re|0,21)|0;pe=T;Ue=ks(Fe|0,Le|0,Ue&2097151|0,0)|0;Be=ks(Ue|0,T|0,je|0,Be|0)|0;De=ks(Be|0,T|0,Ne|0,De|0)|0;Pe=ks(De|0,T|0,Me|0,Pe|0)|0;U=ks(Pe|0,T|0,L|0,U|0)|0;he=ks(U|0,T|0,W|0,he|0)|0;pe=ks(he|0,T|0,le|0,pe|0)|0;le=T;he=ks(ae|0,ge|0,1048576,0)|0;W=T;U=Rs(he|0,W|0,21)|0;L=T;ne=ks(Oe|0,Ce|0,ne&2097151|0,0)|0;m=ks(ne|0,T|0,u|0,m|0)|0;K=ks(m|0,T|0,Y|0,K|0)|0;O=ks(K|0,T|0,_|0,O|0)|0;L=ks(O|0,T|0,U|0,L|0)|0;U=T;W=Ss(ae|0,ge|0,he&-2097152|0,W|0)|0;he=T;ge=ks(Te|0,we|0,1048576,0)|0;ae=T;O=Rs(ge|0,ae|0,21)|0;_=T;ee=ks(S|0,G|0,g|0,ee|0)|0;Se=ks(ee|0,T|0,d|0,Se|0)|0;_=ks(Se|0,T|0,O|0,_|0)|0;O=T;ae=Ss(Te|0,we|0,ge&-2097152|0,ae|0)|0;ge=T;we=ks(j|0,y|0,1048576,0)|0;Te=T;Se=Rs(we|0,Te|0,21)|0;oe=ks(Se|0,T|0,oe&2097151|0,0)|0;Se=T;Te=Ss(j|0,y|0,we&-2097152|0,Te|0)|0;we=T;y=ks(I|0,i|0,1048576,0)|0;j=T;d=Cs(y|0,j|0,21)|0;ee=T;j=Ss(I|0,i|0,y&-2097152|0,j|0)|0;y=T;i=ks(be|0,ue|0,1048576,0)|0;I=T;g=Rs(i|0,I|0,21)|0;G=T;I=Ss(be|0,ue|0,i&-2097152|0,I|0)|0;i=T;ue=ks(pe|0,le|0,1048576,0)|0;be=T;S=Rs(ue|0,be|0,21)|0;he=ks(S|0,T|0,W|0,he|0)|0;W=T;be=Ss(pe|0,le|0,ue&-2097152|0,be|0)|0;ue=T;le=ks(L|0,U|0,1048576,0)|0;pe=T;S=Rs(le|0,pe|0,21)|0;ge=ks(S|0,T|0,ae|0,ge|0)|0;ae=T;pe=Ss(L|0,U|0,le&-2097152|0,pe|0)|0;le=T;U=ks(_|0,O|0,1048576,0)|0;L=T;S=Rs(U|0,L|0,21)|0;we=ks(S|0,T|0,Te|0,we|0)|0;Te=T;L=Ss(_|0,O|0,U&-2097152|0,L|0)|0;U=T;O=Es(oe|0,Se|0,666643,0)|0;ye=ks(O|0,T|0,ye&2097151|0,0)|0;O=T;_=Es(oe|0,Se|0,470296,0)|0;_=ks(X|0,se|0,_|0,T|0)|0;se=T;X=Es(oe|0,Se|0,654183,0)|0;X=ks(j|0,y|0,X|0,T|0)|0;y=T;j=Es(oe|0,Se|0,-997805,-1)|0;S=T;K=Es(oe|0,Se|0,136657,0)|0;K=ks(I|0,i|0,K|0,T|0)|0;i=T;Se=Es(oe|0,Se|0,-683901,-1)|0;oe=T;G=ks(l|0,n|0,g|0,G|0)|0;Re=Ss(G|0,T|0,Ee&-2097152|0,Re|0)|0;oe=ks(Re|0,T|0,Se|0,oe|0)|0;Se=T;Re=Es(we|0,Te|0,666643,0)|0;z=ks(Re|0,T|0,z&2097151|0,0)|0;Re=T;Ee=Es(we|0,Te|0,470296,0)|0;Ee=ks(ye|0,O|0,Ee|0,T|0)|0;O=T;ye=Es(we|0,Te|0,654183,0)|0;ye=ks(_|0,se|0,ye|0,T|0)|0;se=T;_=Es(we|0,Te|0,-997805,-1)|0;_=ks(X|0,y|0,_|0,T|0)|0;y=T;X=Es(we|0,Te|0,136657,0)|0;G=T;Te=Es(we|0,Te|0,-683901,-1)|0;Te=ks(K|0,i|0,Te|0,T|0)|0;i=T;K=Es(L|0,U|0,666643,0)|0;w=ks(K|0,T|0,w&2097151|0,0)|0;K=T;we=Es(L|0,U|0,470296,0)|0;we=ks(z|0,Re|0,we|0,T|0)|0;Re=T;z=Es(L|0,U|0,654183,0)|0;z=ks(Ee|0,O|0,z|0,T|0)|0;O=T;Ee=Es(L|0,U|0,-997805,-1)|0;Ee=ks(ye|0,se|0,Ee|0,T|0)|0;se=T;ye=Es(L|0,U|0,136657,0)|0;ye=ks(_|0,y|0,ye|0,T|0)|0;y=T;U=Es(L|0,U|0,-683901,-1)|0;L=T;ee=ks(ke|0,me|0,d|0,ee|0)|0;Ie=Ss(ee|0,T|0,M&-2097152|0,Ie|0)|0;S=ks(Ie|0,T|0,j|0,S|0)|0;G=ks(S|0,T|0,X|0,G|0)|0;L=ks(G|0,T|0,U|0,L|0)|0;U=T;G=Es(ge|0,ae|0,666643,0)|0;X=T;S=Es(ge|0,ae|0,470296,0)|0;j=T;Ie=Es(ge|0,ae|0,654183,0)|0;M=T;ee=Es(ge|0,ae|0,-997805,-1)|0;d=T;me=Es(ge|0,ae|0,136657,0)|0;me=ks(Ee|0,se|0,me|0,T|0)|0;se=T;ae=Es(ge|0,ae|0,-683901,-1)|0;ae=ks(ye|0,y|0,ae|0,T|0)|0;y=T;ye=Es(pe|0,le|0,666643,0)|0;ge=T;Ee=Es(pe|0,le|0,470296,0)|0;ke=T;_=Es(pe|0,le|0,654183,0)|0;g=T;n=Es(pe|0,le|0,-997805,-1)|0;l=T;I=Es(pe|0,le|0,136657,0)|0;Y=T;le=Es(pe|0,le|0,-683901,-1)|0;le=ks(me|0,se|0,le|0,T|0)|0;se=T;me=Es(he|0,W|0,666643,0)|0;ve=ks(me|0,T|0,P|Ae|_e&2031616|0,ve|0)|0;_e=T;Ae=Es(he|0,W|0,470296,0)|0;P=T;me=Es(he|0,W|0,654183,0)|0;xe=ks(me|0,T|0,xe&2097151|0,0)|0;X=ks(xe|0,T|0,G|0,X|0)|0;ke=ks(X|0,T|0,Ee|0,ke|0)|0;Ee=T;X=Es(he|0,W|0,-997805,-1)|0;G=T;xe=Es(he|0,W|0,136657,0)|0;xe=ks(we|0,Re|0,xe|0,T|0)|0;M=ks(xe|0,T|0,Ie|0,M|0)|0;l=ks(M|0,T|0,n|0,l|0)|0;n=T;W=Es(he|0,W|0,-683901,-1)|0;he=T;M=ks(ve|0,_e|0,1048576,0)|0;Ie=T;xe=Rs(M|0,Ie|0,21)|0;Re=T;te=ks(Ae|0,P|0,te&2097151|0,0)|0;ge=ks(te|0,T|0,ye|0,ge|0)|0;Re=ks(ge|0,T|0,xe|0,Re|0)|0;xe=T;Ie=Ss(ve|0,_e|0,M&-2097152|0,Ie|0)|0;M=T;_e=ks(ke|0,Ee|0,1048576,0)|0;ve=T;ge=Rs(_e|0,ve|0,21)|0;ye=T;G=ks(w|0,K|0,X|0,G|0)|0;j=ks(G|0,T|0,S|0,j|0)|0;g=ks(j|0,T|0,_|0,g|0)|0;ye=ks(g|0,T|0,ge|0,ye|0)|0;ge=T;g=ks(l|0,n|0,1048576,0)|0;_=T;j=Rs(g|0,_|0,21)|0;S=T;he=ks(z|0,O|0,W|0,he|0)|0;d=ks(he|0,T|0,ee|0,d|0)|0;Y=ks(d|0,T|0,I|0,Y|0)|0;S=ks(Y|0,T|0,j|0,S|0)|0;j=T;Y=ks(le|0,se|0,1048576,0)|0;I=T;d=Rs(Y|0,I|0,21)|0;d=ks(ae|0,y|0,d|0,T|0)|0;y=T;I=Ss(le|0,se|0,Y&-2097152|0,I|0)|0;Y=T;se=ks(L|0,U|0,1048576,0)|0;le=T;ae=Rs(se|0,le|0,21)|0;ae=ks(Te|0,i|0,ae|0,T|0)|0;i=T;le=Ss(L|0,U|0,se&-2097152|0,le|0)|0;se=T;U=ks(oe|0,Se|0,1048576,0)|0;L=T;Te=Rs(U|0,L|0,21)|0;Te=ks(be|0,ue|0,Te|0,T|0)|0;ue=T;L=Ss(oe|0,Se|0,U&-2097152|0,L|0)|0;U=T;Se=ks(Re|0,xe|0,1048576,0)|0;oe=T;be=Rs(Se|0,oe|0,21)|0;ee=T;he=ks(ye|0,ge|0,1048576,0)|0;W=T;O=Rs(he|0,W|0,21)|0;z=T;G=ks(S|0,j|0,1048576,0)|0;X=T;K=Rs(G|0,X|0,21)|0;K=ks(I|0,Y|0,K|0,T|0)|0;Y=T;I=ks(d|0,y|0,1048576,0)|0;w=T;te=Rs(I|0,w|0,21)|0;te=ks(le|0,se|0,te|0,T|0)|0;se=T;w=Ss(d|0,y|0,I&-2097152|0,w|0)|0;I=T;y=ks(ae|0,i|0,1048576,0)|0;d=T;le=Rs(y|0,d|0,21)|0;le=ks(L|0,U|0,le|0,T|0)|0;U=T;d=Ss(ae|0,i|0,y&-2097152|0,d|0)|0;y=T;i=ks(Te|0,ue|0,1048576,0)|0;ae=T;L=Rs(i|0,ae|0,21)|0;P=T;ae=Ss(Te|0,ue|0,i&-2097152|0,ae|0)|0;i=T;ue=Es(L|0,P|0,666643,0)|0;ue=ks(Ie|0,M|0,ue|0,T|0)|0;M=T;Ie=Es(L|0,P|0,470296,0)|0;Te=T;Ae=Es(L|0,P|0,654183,0)|0;we=T;me=Es(L|0,P|0,-997805,-1)|0;pe=T;m=Es(L|0,P|0,136657,0)|0;u=T;P=Es(L|0,P|0,-683901,-1)|0;L=T;M=Rs(ue|0,M|0,21)|0;ne=T;Te=ks(Re|0,xe|0,Ie|0,Te|0)|0;oe=Ss(Te|0,T|0,Se&-2097152|0,oe|0)|0;ne=ks(oe|0,T|0,M|0,ne|0)|0;M=Rs(ne|0,T|0,21)|0;oe=T;we=ks(ke|0,Ee|0,Ae|0,we|0)|0;ve=Ss(we|0,T|0,_e&-2097152|0,ve|0)|0;ee=ks(ve|0,T|0,be|0,ee|0)|0;oe=ks(ee|0,T|0,M|0,oe|0)|0;M=Rs(oe|0,T|0,21)|0;ee=T;pe=ks(ye|0,ge|0,me|0,pe|0)|0;W=Ss(pe|0,T|0,he&-2097152|0,W|0)|0;ee=ks(W|0,T|0,M|0,ee|0)|0;M=Rs(ee|0,T|0,21)|0;W=T;u=ks(l|0,n|0,m|0,u|0)|0;_=Ss(u|0,T|0,g&-2097152|0,_|0)|0;z=ks(_|0,T|0,O|0,z|0)|0;W=ks(z|0,T|0,M|0,W|0)|0;M=Rs(W|0,T|0,21)|0;z=T;L=ks(S|0,j|0,P|0,L|0)|0;X=Ss(L|0,T|0,G&-2097152|0,X|0)|0;z=ks(X|0,T|0,M|0,z|0)|0;M=Rs(z|0,T|0,21)|0;M=ks(K|0,Y|0,M|0,T|0)|0;Y=Rs(M|0,T|0,21)|0;I=ks(Y|0,T|0,w|0,I|0)|0;w=Rs(I|0,T|0,21)|0;w=ks(te|0,se|0,w|0,T|0)|0;se=Rs(w|0,T|0,21)|0;y=ks(se|0,T|0,d|0,y|0)|0;d=Rs(y|0,T|0,21)|0;d=ks(le|0,U|0,d|0,T|0)|0;U=Rs(d|0,T|0,21)|0;i=ks(U|0,T|0,ae|0,i|0)|0;ae=Rs(i|0,T|0,21)|0;U=T;le=Es(ae|0,U|0,666643,0)|0;ue=ks(le|0,T|0,ue&2097151|0,0)|0;le=T;se=Es(ae|0,U|0,470296,0)|0;ne=ks(se|0,T|0,ne&2097151|0,0)|0;se=T;te=Es(ae|0,U|0,654183,0)|0;oe=ks(te|0,T|0,oe&2097151|0,0)|0;te=T;Y=Es(ae|0,U|0,-997805,-1)|0;ee=ks(Y|0,T|0,ee&2097151|0,0)|0;Y=T;K=Es(ae|0,U|0,136657,0)|0;W=ks(K|0,T|0,W&2097151|0,0)|0;K=T;U=Es(ae|0,U|0,-683901,-1)|0;z=ks(U|0,T|0,z&2097151|0,0)|0;U=T;ae=Rs(ue|0,le|0,21)|0;ae=ks(ne|0,se|0,ae|0,T|0)|0;se=T;ne=Rs(ae|0,se|0,21)|0;ne=ks(oe|0,te|0,ne|0,T|0)|0;te=T;oe=ae&2097151;X=Rs(ne|0,te|0,21)|0;X=ks(ee|0,Y|0,X|0,T|0)|0;Y=T;ee=ne&2097151;G=Rs(X|0,Y|0,21)|0;G=ks(W|0,K|0,G|0,T|0)|0;K=T;W=X&2097151;L=Rs(G|0,K|0,21)|0;L=ks(z|0,U|0,L|0,T|0)|0;U=T;z=G&2097151;P=Rs(L|0,U|0,21)|0;M=ks(P|0,T|0,M&2097151|0,0)|0;P=T;j=L&2097151;S=Rs(M|0,P|0,21)|0;I=ks(S|0,T|0,I&2097151|0,0)|0;S=T;O=M&2097151;_=Rs(I|0,S|0,21)|0;w=ks(_|0,T|0,w&2097151|0,0)|0;_=T;g=Rs(w|0,_|0,21)|0;y=ks(g|0,T|0,y&2097151|0,0)|0;g=T;u=Rs(y|0,g|0,21)|0;d=ks(u|0,T|0,d&2097151|0,0)|0;u=T;m=y&2097151;n=Rs(d|0,u|0,21)|0;i=ks(n|0,T|0,i&2097151|0,0)|0;n=T;l=d&2097151;r[e>>0]=ue;e=Cs(ue|0,le|0,8)|0;r[de>>0]=e;e=Cs(ue|0,le|0,16)|0;le=Os(oe|0,0,5)|0;r[fe>>0]=le|e&31;e=Cs(ae|0,se|0,3)|0;r[ce>>0]=e;e=Cs(ae|0,se|0,11)|0;r[ie>>0]=e;e=Cs(oe|0,0,19)|0;oe=T;ie=Os(ee|0,0,2)|0;r[re>>0]=ie|e;e=Cs(ne|0,te|0,6)|0;r[$>>0]=e;e=Cs(ee|0,0,14)|0;ee=T;$=Os(W|0,0,7)|0;r[Z>>0]=$|e;e=Cs(X|0,Y|0,1)|0;r[J>>0]=e;e=Cs(X|0,Y|0,9)|0;r[Q>>0]=e;e=Cs(W|0,0,17)|0;W=T;Q=Os(z|0,0,4)|0;r[V>>0]=Q|e;e=Cs(G|0,K|0,4)|0;r[H>>0]=e;e=Cs(G|0,K|0,12)|0;r[q>>0]=e;e=Cs(z|0,0,20)|0;z=T;q=Os(j|0,0,1)|0;r[F>>0]=q|e;e=Cs(L|0,U|0,7)|0;r[B>>0]=e;e=Cs(j|0,0,15)|0;j=T;B=Os(O|0,0,6)|0;r[N>>0]=B|e;e=Cs(M|0,P|0,2)|0;r[D>>0]=e;e=Cs(M|0,P|0,10)|0;r[C>>0]=e;e=Cs(O|0,0,18)|0;O=T;C=Os(I|0,S|0,3)|0;r[R>>0]=C|e;e=Cs(I|0,S|0,5)|0;r[x>>0]=e;e=Cs(I|0,S|0,13)|0;r[k>>0]=e;r[E>>0]=w;e=Cs(w|0,_|0,8)|0;r[A>>0]=e;e=Cs(w|0,_|0,16)|0;_=Os(m|0,0,5)|0;r[v>>0]=_|e&31;e=Cs(y|0,g|0,3)|0;r[b>>0]=e;e=Cs(y|0,g|0,11)|0;r[p>>0]=e;e=Cs(m|0,0,19)|0;m=T;p=Os(l|0,0,2)|0;r[h>>0]=p|e;e=Cs(d|0,u|0,6)|0;r[f>>0]=e;e=Cs(l|0,0,14)|0;l=T;f=Os(i|0,n|0,7)|0;r[c>>0]=f|e;e=Cs(i|0,n|0,1)|0;r[a>>0]=e;e=Cs(i|0,n|0,9)|0;r[o>>0]=e;e=Rs(i|0,n|0,17)|0;r[t>>0]=e;return}function ti(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var o=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Ne=0,Be=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ct=0,ft=0,lt=0,ut=0,dt=0,ht=0,pt=0,mt=0,gt=0,yt=0,bt=0,vt=0,_t=0,wt=0,At=0,Et=0,kt=0,St=0,Tt=0,It=0,xt=0,Rt=0,Ct=0,Ot=0,Pt=0,Mt=0,Dt=0,Nt=0,Bt=0,jt=0,Ut=0,Lt=0,Ft=0,qt=0,zt=0,Kt=0,Gt=0,Ht=0,Vt=0,Qt=0,Wt=0,Yt=0,Xt=0,Jt=0,Zt=0,$t=0,en=0,tn=0,nn=0,rn=0,on=0,sn=0,an=0,cn=0,fn=0,ln=0,un=0,dn=0,hn=0,pn=0,mn=0,gn=0,yn=0,bn=0,vn=0,_n=0,wn=0,An=0;ot=r[t+2>>0]|0;pe=s[t>>0]|0;pt=Os(s[t+1>>0]|0|0,0,8)|0;Ue=T;ot=ot&255;Le=Os(ot|0,0,16)|0;Le=pt|pe|Le&2031616;pe=Os(s[t+3>>0]|0|0,0,8)|0;pt=T;$e=Os(s[t+4>>0]|0|0,0,16)|0;pt=pt|T;ht=s[t+5>>0]|0;L=Os(ht|0,0,24)|0;pt=Cs(pe|ot|$e|L|0,pt|T|0,5)|0;pt=pt&2097151;L=r[t+7>>0]|0;$e=Os(s[t+6>>0]|0|0,0,8)|0;ot=T;L=L&255;pe=Os(L|0,0,16)|0;ot=Cs($e|ht|pe|0,ot|T|0,2)|0;ot=ot&2097151;pe=Os(s[t+8>>0]|0|0,0,8)|0;ht=T;$e=Os(s[t+9>>0]|0|0,0,16)|0;ht=ht|T;G=s[t+10>>0]|0;N=Os(G|0,0,24)|0;ht=Cs(pe|L|$e|N|0,ht|T|0,7)|0;ht=ht&2097151;N=Os(s[t+11>>0]|0|0,0,8)|0;$e=T;L=Os(s[t+12>>0]|0|0,0,16)|0;$e=$e|T;pe=s[t+13>>0]|0;m=Os(pe|0,0,24)|0;$e=Cs(N|G|L|m|0,$e|T|0,4)|0;$e=$e&2097151;m=r[t+15>>0]|0;L=Os(s[t+14>>0]|0|0,0,8)|0;G=T;m=m&255;N=Os(m|0,0,16)|0;G=Cs(L|pe|N|0,G|T|0,1)|0;G=G&2097151;N=Os(s[t+16>>0]|0|0,0,8)|0;pe=T;L=Os(s[t+17>>0]|0|0,0,16)|0;pe=pe|T;B=s[t+18>>0]|0;u=Os(B|0,0,24)|0;pe=Cs(N|m|L|u|0,pe|T|0,6)|0;pe=pe&2097151;u=r[t+20>>0]|0;L=Os(s[t+19>>0]|0|0,0,8)|0;m=T;u=Os(u&255|0,0,16)|0;m=Cs(L|B|u|0,m|T|0,3)|0;u=T;B=r[t+23>>0]|0;L=s[t+21>>0]|0;N=Os(s[t+22>>0]|0|0,0,8)|0;K=T;B=B&255;C=Os(B|0,0,16)|0;C=N|L|C&2031616;L=Os(s[t+24>>0]|0|0,0,8)|0;N=T;Je=Os(s[t+25>>0]|0|0,0,16)|0;N=N|T;ge=s[t+26>>0]|0;E=Os(ge|0,0,24)|0;N=Cs(L|B|Je|E|0,N|T|0,5)|0;N=N&2097151;E=r[t+28>>0]|0;Je=Os(s[t+27>>0]|0|0,0,8)|0;B=T;E=E&255;L=Os(E|0,0,16)|0;B=Cs(Je|ge|L|0,B|T|0,2)|0;B=B&2097151;L=Os(s[t+29>>0]|0|0,0,8)|0;ge=T;Je=Os(s[t+30>>0]|0|0,0,16)|0;ge=ge|T;ye=Os(s[t+31>>0]|0|0,0,24)|0;ge=Cs(L|E|Je|ye|0,ge|T|0,7)|0;ye=T;Je=r[n+2>>0]|0;E=s[n>>0]|0;L=Os(s[n+1>>0]|0|0,0,8)|0;Et=T;Je=Je&255;At=Os(Je|0,0,16)|0;At=L|E|At&2031616;E=Os(s[n+3>>0]|0|0,0,8)|0;L=T;l=Os(s[n+4>>0]|0|0,0,16)|0;L=L|T;b=s[n+5>>0]|0;bn=Os(b|0,0,24)|0;L=Cs(E|Je|l|bn|0,L|T|0,5)|0;L=L&2097151;bn=r[n+7>>0]|0;l=Os(s[n+6>>0]|0|0,0,8)|0;Je=T;bn=bn&255;E=Os(bn|0,0,16)|0;Je=Cs(l|b|E|0,Je|T|0,2)|0;Je=Je&2097151;E=Os(s[n+8>>0]|0|0,0,8)|0;b=T;l=Os(s[n+9>>0]|0|0,0,16)|0;b=b|T;d=s[n+10>>0]|0;A=Os(d|0,0,24)|0;b=Cs(E|bn|l|A|0,b|T|0,7)|0;b=b&2097151;A=Os(s[n+11>>0]|0|0,0,8)|0;l=T;bn=Os(s[n+12>>0]|0|0,0,16)|0;l=l|T;E=s[n+13>>0]|0;An=Os(E|0,0,24)|0;l=Cs(A|d|bn|An|0,l|T|0,4)|0;l=l&2097151;An=r[n+15>>0]|0;bn=Os(s[n+14>>0]|0|0,0,8)|0;d=T;An=An&255;A=Os(An|0,0,16)|0;d=Cs(bn|E|A|0,d|T|0,1)|0;d=d&2097151;A=Os(s[n+16>>0]|0|0,0,8)|0;E=T;bn=Os(s[n+17>>0]|0|0,0,16)|0;E=E|T;_t=s[n+18>>0]|0;Z=Os(_t|0,0,24)|0;E=Cs(A|An|bn|Z|0,E|T|0,6)|0;E=E&2097151;Z=r[n+20>>0]|0;bn=Os(s[n+19>>0]|0|0,0,8)|0;An=T;Z=Os(Z&255|0,0,16)|0;An=Cs(bn|_t|Z|0,An|T|0,3)|0;Z=T;_t=r[n+23>>0]|0;bn=s[n+21>>0]|0;A=Os(s[n+22>>0]|0|0,0,8)|0;ke=T;_t=_t&255;Se=Os(_t|0,0,16)|0;Se=A|bn|Se&2031616;bn=Os(s[n+24>>0]|0|0,0,8)|0;A=T;Me=Os(s[n+25>>0]|0|0,0,16)|0;A=A|T;Q=s[n+26>>0]|0;vn=Os(Q|0,0,24)|0;A=Cs(bn|_t|Me|vn|0,A|T|0,5)|0;A=A&2097151;vn=r[n+28>>0]|0;Me=Os(s[n+27>>0]|0|0,0,8)|0;_t=T;vn=vn&255;bn=Os(vn|0,0,16)|0;_t=Cs(Me|Q|bn|0,_t|T|0,2)|0;_t=_t&2097151;bn=Os(s[n+29>>0]|0|0,0,8)|0;Q=T;Me=Os(s[n+30>>0]|0|0,0,16)|0;Q=Q|T;V=Os(s[n+31>>0]|0|0,0,24)|0;Q=Cs(bn|vn|Me|V|0,Q|T|0,7)|0;V=T;Me=r[i+2>>0]|0;vn=s[i>>0]|0;bn=Os(s[i+1>>0]|0|0,0,8)|0;Re=T;Me=Me&255;_n=Os(Me|0,0,16)|0;Ge=Os(s[i+3>>0]|0|0,0,8)|0;ve=T;Ie=Os(s[i+4>>0]|0|0,0,16)|0;ve=ve|T;Ee=s[i+5>>0]|0;g=Os(Ee|0,0,24)|0;ve=Cs(Ge|Me|Ie|g|0,ve|T|0,5)|0;g=r[i+7>>0]|0;Ie=Os(s[i+6>>0]|0|0,0,8)|0;Me=T;g=g&255;Ge=Os(g|0,0,16)|0;Me=Cs(Ie|Ee|Ge|0,Me|T|0,2)|0;Ge=Os(s[i+8>>0]|0|0,0,8)|0;Ee=T;Ie=Os(s[i+9>>0]|0|0,0,16)|0;Ee=Ee|T;De=s[i+10>>0]|0;_e=Os(De|0,0,24)|0;Ee=Cs(Ge|g|Ie|_e|0,Ee|T|0,7)|0;_e=Os(s[i+11>>0]|0|0,0,8)|0;Ie=T;g=Os(s[i+12>>0]|0|0,0,16)|0;Ie=Ie|T;Ge=s[i+13>>0]|0;ue=Os(Ge|0,0,24)|0;Ie=Cs(_e|De|g|ue|0,Ie|T|0,4)|0;ue=r[i+15>>0]|0;g=Os(s[i+14>>0]|0|0,0,8)|0;De=T;ue=ue&255;_e=Os(ue|0,0,16)|0;De=Cs(g|Ge|_e|0,De|T|0,1)|0;_e=Os(s[i+16>>0]|0|0,0,8)|0;Ge=T;g=Os(s[i+17>>0]|0|0,0,16)|0;Ge=Ge|T;te=s[i+18>>0]|0;le=Os(te|0,0,24)|0;Ge=Cs(_e|ue|g|le|0,Ge|T|0,6)|0;le=r[i+20>>0]|0;g=Os(s[i+19>>0]|0|0,0,8)|0;ue=T;le=Os(le&255|0,0,16)|0;ue=Cs(g|te|le|0,ue|T|0,3)|0;le=T;te=r[i+23>>0]|0;g=s[i+21>>0]|0;_e=Os(s[i+22>>0]|0|0,0,8)|0;X=T;te=te&255;J=Os(te|0,0,16)|0;R=Os(s[i+24>>0]|0|0,0,8)|0;we=T;xe=Os(s[i+25>>0]|0|0,0,16)|0;we=we|T;rt=s[i+26>>0]|0;j=Os(rt|0,0,24)|0;we=Cs(R|te|xe|j|0,we|T|0,5)|0;j=r[i+28>>0]|0;xe=Os(s[i+27>>0]|0|0,0,8)|0;te=T;j=j&255;R=Os(j|0,0,16)|0;te=Cs(xe|rt|R|0,te|T|0,2)|0;R=Os(s[i+29>>0]|0|0,0,8)|0;rt=T;xe=Os(s[i+30>>0]|0|0,0,16)|0;rt=rt|T;ft=Os(s[i+31>>0]|0|0,0,24)|0;rt=Cs(R|j|xe|ft|0,rt|T|0,7)|0;ft=T;xe=Es(At|0,Et|0,Le|0,Ue|0)|0;xe=ks(bn|vn|_n&2031616|0,Re|0,xe|0,T|0)|0;Re=T;_n=Es(L|0,0,Le|0,Ue|0)|0;vn=T;bn=Es(At|0,Et|0,pt|0,0)|0;j=T;R=Es(Je|0,0,Le|0,Ue|0)|0;Pe=T;re=Es(L|0,0,pt|0,0)|0;hn=T;Ae=Es(At|0,Et|0,ot|0,0)|0;Ae=ks(re|0,hn|0,Ae|0,T|0)|0;Pe=ks(Ae|0,T|0,R|0,Pe|0)|0;Me=ks(Pe|0,T|0,Me&2097151|0,0)|0;Pe=T;R=Es(b|0,0,Le|0,Ue|0)|0;Ae=T;hn=Es(Je|0,0,pt|0,0)|0;re=T;yn=Es(L|0,0,ot|0,0)|0;gn=T;mn=Es(At|0,Et|0,ht|0,0)|0;pn=T;H=Es(l|0,0,Le|0,Ue|0)|0;Te=T;rn=Es(b|0,0,pt|0,0)|0;Ne=T;sn=Es(Je|0,0,ot|0,0)|0;x=T;an=Es(L|0,0,ht|0,0)|0;cn=T;on=Es(At|0,Et|0,$e|0,0)|0;on=ks(an|0,cn|0,on|0,T|0)|0;x=ks(on|0,T|0,sn|0,x|0)|0;Ne=ks(x|0,T|0,rn|0,Ne|0)|0;Te=ks(Ne|0,T|0,H|0,Te|0)|0;Ie=ks(Te|0,T|0,Ie&2097151|0,0)|0;Te=T;H=Es(d|0,0,Le|0,Ue|0)|0;Ne=T;rn=Es(l|0,0,pt|0,0)|0;x=T;sn=Es(b|0,0,ot|0,0)|0;on=T;cn=Es(Je|0,0,ht|0,0)|0;an=T;dn=Es(L|0,0,$e|0,0)|0;un=T;ln=Es(At|0,Et|0,G|0,0)|0;fn=T;I=Es(E|0,0,Le|0,Ue|0)|0;He=T;Gt=Es(d|0,0,pt|0,0)|0;o=T;Vt=Es(l|0,0,ot|0,0)|0;Kt=T;Wt=Es(b|0,0,ht|0,0)|0;Ht=T;Xt=Es(Je|0,0,$e|0,0)|0;Qt=T;Jt=Es(L|0,0,G|0,0)|0;Zt=T;Yt=Es(At|0,Et|0,pe|0,0)|0;Yt=ks(Jt|0,Zt|0,Yt|0,T|0)|0;Qt=ks(Yt|0,T|0,Xt|0,Qt|0)|0;Ht=ks(Qt|0,T|0,Wt|0,Ht|0)|0;Kt=ks(Ht|0,T|0,Vt|0,Kt|0)|0;o=ks(Kt|0,T|0,Gt|0,o|0)|0;He=ks(o|0,T|0,I|0,He|0)|0;Ge=ks(He|0,T|0,Ge&2097151|0,0)|0;He=T;I=Es(An|0,Z|0,Le|0,Ue|0)|0;o=T;Gt=Es(E|0,0,pt|0,0)|0;Kt=T;Vt=Es(d|0,0,ot|0,0)|0;Ht=T;Wt=Es(l|0,0,ht|0,0)|0;Qt=T;Xt=Es(b|0,0,$e|0,0)|0;Yt=T;Zt=Es(Je|0,0,G|0,0)|0;Jt=T;nn=Es(L|0,0,pe|0,0)|0;tn=T;en=Es(At|0,Et|0,m|0,u|0)|0;$t=T;ee=Es(Se|0,ke|0,Le|0,Ue|0)|0;Tt=T;It=Es(An|0,Z|0,pt|0,0)|0;xt=T;Rt=Es(E|0,0,ot|0,0)|0;Ct=T;Ot=Es(d|0,0,ht|0,0)|0;Pt=T;Mt=Es(l|0,0,$e|0,0)|0;Dt=T;Nt=Es(b|0,0,G|0,0)|0;Bt=T;jt=Es(Je|0,0,pe|0,0)|0;Ut=T;Ft=Es(L|0,0,m|0,u|0)|0;qt=T;zt=Es(At|0,Et|0,C|0,K|0)|0;zt=ks(Ft|0,qt|0,zt|0,T|0)|0;Ut=ks(zt|0,T|0,jt|0,Ut|0)|0;Bt=ks(Ut|0,T|0,Nt|0,Bt|0)|0;Dt=ks(Bt|0,T|0,Mt|0,Dt|0)|0;Pt=ks(Dt|0,T|0,Ot|0,Pt|0)|0;Ct=ks(Pt|0,T|0,Rt|0,Ct|0)|0;xt=ks(Ct|0,T|0,It|0,xt|0)|0;Tt=ks(xt|0,T|0,ee|0,Tt|0)|0;X=ks(Tt|0,T|0,_e|g|J&2031616|0,X|0)|0;J=T;g=Es(A|0,0,Le|0,Ue|0)|0;_e=T;Tt=Es(Se|0,ke|0,pt|0,0)|0;ee=T;xt=Es(An|0,Z|0,ot|0,0)|0;It=T;Ct=Es(E|0,0,ht|0,0)|0;Rt=T;Pt=Es(d|0,0,$e|0,0)|0;Ot=T;Dt=Es(l|0,0,G|0,0)|0;Mt=T;Bt=Es(b|0,0,pe|0,0)|0;Nt=T;Ut=Es(Je|0,0,m|0,u|0)|0;jt=T;zt=Es(L|0,0,C|0,K|0)|0;qt=T;Ft=Es(At|0,Et|0,N|0,0)|0;Lt=T;et=Es(_t|0,0,Le|0,Ue|0)|0;ne=T;je=Es(A|0,0,pt|0,0)|0;tt=T;gt=Es(Se|0,ke|0,ot|0,0)|0;Be=T;f=Es(An|0,Z|0,ht|0,0)|0;yt=T;ze=Es(E|0,0,$e|0,0)|0;_=T;st=Es(d|0,0,G|0,0)|0;Ke=T;i=Es(l|0,0,pe|0,0)|0;at=T;We=Es(b|0,0,m|0,u|0)|0;t=T;he=Es(Je|0,0,C|0,K|0)|0;Ye=T;kt=Es(L|0,0,N|0,0)|0;St=T;be=Es(At|0,Et|0,B|0,0)|0;be=ks(kt|0,St|0,be|0,T|0)|0;Ye=ks(be|0,T|0,he|0,Ye|0)|0;t=ks(Ye|0,T|0,We|0,t|0)|0;at=ks(t|0,T|0,i|0,at|0)|0;Ke=ks(at|0,T|0,st|0,Ke|0)|0;_=ks(Ke|0,T|0,ze|0,_|0)|0;yt=ks(_|0,T|0,f|0,yt|0)|0;Be=ks(yt|0,T|0,gt|0,Be|0)|0;tt=ks(Be|0,T|0,je|0,tt|0)|0;ne=ks(tt|0,T|0,et|0,ne|0)|0;te=ks(ne|0,T|0,te&2097151|0,0)|0;ne=T;Ue=Es(Q|0,V|0,Le|0,Ue|0)|0;Le=T;et=Es(_t|0,0,pt|0,0)|0;tt=T;je=Es(A|0,0,ot|0,0)|0;Be=T;gt=Es(Se|0,ke|0,ht|0,0)|0;yt=T;f=Es(An|0,Z|0,$e|0,0)|0;_=T;ze=Es(E|0,0,G|0,0)|0;Ke=T;st=Es(d|0,0,pe|0,0)|0;at=T;i=Es(l|0,0,m|0,u|0)|0;t=T;We=Es(b|0,0,C|0,K|0)|0;Ye=T;he=Es(Je|0,0,N|0,0)|0;be=T;St=Es(L|0,0,B|0,0)|0;kt=T;Et=Es(At|0,Et|0,ge|0,ye|0)|0;At=T;pt=Es(Q|0,V|0,pt|0,0)|0;mt=T;P=Es(_t|0,0,ot|0,0)|0;it=T;fe=Es(A|0,0,ht|0,0)|0;n=T;bt=Es(Se|0,ke|0,$e|0,0)|0;Fe=T;k=Es(An|0,Z|0,G|0,0)|0;vt=T;ie=Es(E|0,0,pe|0,0)|0;F=T;qe=Es(d|0,0,m|0,u|0)|0;oe=T;W=Es(l|0,0,C|0,K|0)|0;ce=T;U=Es(b|0,0,N|0,0)|0;Y=T;dt=Es(Je|0,0,B|0,0)|0;Xe=T;L=Es(L|0,0,ge|0,ye|0)|0;L=ks(dt|0,Xe|0,L|0,T|0)|0;Y=ks(L|0,T|0,U|0,Y|0)|0;ce=ks(Y|0,T|0,W|0,ce|0)|0;oe=ks(ce|0,T|0,qe|0,oe|0)|0;F=ks(oe|0,T|0,ie|0,F|0)|0;vt=ks(F|0,T|0,k|0,vt|0)|0;Fe=ks(vt|0,T|0,bt|0,Fe|0)|0;n=ks(Fe|0,T|0,fe|0,n|0)|0;it=ks(n|0,T|0,P|0,it|0)|0;mt=ks(it|0,T|0,pt|0,mt|0)|0;pt=T;ot=Es(Q|0,V|0,ot|0,0)|0;it=T;P=Es(_t|0,0,ht|0,0)|0;n=T;fe=Es(A|0,0,$e|0,0)|0;Fe=T;bt=Es(Se|0,ke|0,G|0,0)|0;vt=T;k=Es(An|0,Z|0,pe|0,0)|0;F=T;ie=Es(E|0,0,m|0,u|0)|0;oe=T;qe=Es(d|0,0,C|0,K|0)|0;ce=T;W=Es(l|0,0,N|0,0)|0;Y=T;U=Es(b|0,0,B|0,0)|0;L=T;Je=Es(Je|0,0,ge|0,ye|0)|0;Xe=T;ht=Es(Q|0,V|0,ht|0,0)|0;dt=T;lt=Es(_t|0,0,$e|0,0)|0;Ze=T;z=Es(A|0,0,G|0,0)|0;ut=T;$=Es(Se|0,ke|0,pe|0,0)|0;q=T;ae=Es(An|0,Z|0,m|0,u|0)|0;O=T;w=Es(E|0,0,C|0,K|0)|0;se=T;h=Es(d|0,0,N|0,0)|0;c=T;wt=Es(l|0,0,B|0,0)|0;a=T;b=Es(b|0,0,ge|0,ye|0)|0;b=ks(wt|0,a|0,b|0,T|0)|0;c=ks(b|0,T|0,h|0,c|0)|0;se=ks(c|0,T|0,w|0,se|0)|0;O=ks(se|0,T|0,ae|0,O|0)|0;q=ks(O|0,T|0,$|0,q|0)|0;ut=ks(q|0,T|0,z|0,ut|0)|0;Ze=ks(ut|0,T|0,lt|0,Ze|0)|0;dt=ks(Ze|0,T|0,ht|0,dt|0)|0;ht=T;$e=Es(Q|0,V|0,$e|0,0)|0;Ze=T;lt=Es(_t|0,0,G|0,0)|0;ut=T;z=Es(A|0,0,pe|0,0)|0;q=T;$=Es(Se|0,ke|0,m|0,u|0)|0;O=T;ae=Es(An|0,Z|0,C|0,K|0)|0;se=T;w=Es(E|0,0,N|0,0)|0;c=T;h=Es(d|0,0,B|0,0)|0;b=T;l=Es(l|0,0,ge|0,ye|0)|0;a=T;G=Es(Q|0,V|0,G|0,0)|0;wt=T;v=Es(_t|0,0,pe|0,0)|0;me=T;M=Es(A|0,0,m|0,u|0)|0;p=T;Qe=Es(Se|0,ke|0,C|0,K|0)|0;D=T;y=Es(An|0,Z|0,N|0,0)|0;Ve=T;Oe=Es(E|0,0,B|0,0)|0;S=T;d=Es(d|0,0,ge|0,ye|0)|0;d=ks(Oe|0,S|0,d|0,T|0)|0;Ve=ks(d|0,T|0,y|0,Ve|0)|0;D=ks(Ve|0,T|0,Qe|0,D|0)|0;p=ks(D|0,T|0,M|0,p|0)|0;me=ks(p|0,T|0,v|0,me|0)|0;wt=ks(me|0,T|0,G|0,wt|0)|0;G=T;pe=Es(Q|0,V|0,pe|0,0)|0;me=T;v=Es(_t|0,0,m|0,u|0)|0;p=T;M=Es(A|0,0,C|0,K|0)|0;D=T;Qe=Es(Se|0,ke|0,N|0,0)|0;Ve=T;y=Es(An|0,Z|0,B|0,0)|0;d=T;E=Es(E|0,0,ge|0,ye|0)|0;S=T;u=Es(Q|0,V|0,m|0,u|0)|0;m=T;Oe=Es(_t|0,0,C|0,K|0)|0;Ce=T;ct=Es(A|0,0,N|0,0)|0;nt=T;de=Es(Se|0,ke|0,B|0,0)|0;wn=T;Z=Es(An|0,Z|0,ge|0,ye|0)|0;Z=ks(de|0,wn|0,Z|0,T|0)|0;nt=ks(Z|0,T|0,ct|0,nt|0)|0;Ce=ks(nt|0,T|0,Oe|0,Ce|0)|0;m=ks(Ce|0,T|0,u|0,m|0)|0;u=T;K=Es(Q|0,V|0,C|0,K|0)|0;C=T;Ce=Es(_t|0,0,N|0,0)|0;Oe=T;nt=Es(A|0,0,B|0,0)|0;ct=T;ke=Es(Se|0,ke|0,ge|0,ye|0)|0;Se=T;N=Es(Q|0,V|0,N|0,0)|0;Z=T;wn=Es(_t|0,0,B|0,0)|0;de=T;A=Es(A|0,0,ge|0,ye|0)|0;A=ks(wn|0,de|0,A|0,T|0)|0;Z=ks(A|0,T|0,N|0,Z|0)|0;N=T;B=Es(Q|0,V|0,B|0,0)|0;A=T;_t=Es(_t|0,0,ge|0,ye|0)|0;_t=ks(B|0,A|0,_t|0,T|0)|0;A=T;ye=Es(Q|0,V|0,ge|0,ye|0)|0;ge=T;V=ks(xe|0,Re|0,1048576,0)|0;Q=T;B=Cs(V|0,Q|0,21)|0;de=T;j=ks(_n|0,vn|0,bn|0,j|0)|0;de=ks(j|0,T|0,B|0,de|0)|0;ve=ks(de|0,T|0,ve&2097151|0,0)|0;de=T;Q=Ss(xe|0,Re|0,V&-2097152|0,Q&4095|0)|0;V=T;Re=ks(Me|0,Pe|0,1048576,0)|0;xe=T;B=Cs(Re|0,xe|0,21)|0;j=T;pn=ks(yn|0,gn|0,mn|0,pn|0)|0;re=ks(pn|0,T|0,hn|0,re|0)|0;Ae=ks(re|0,T|0,R|0,Ae|0)|0;Ee=ks(Ae|0,T|0,Ee&2097151|0,0)|0;j=ks(Ee|0,T|0,B|0,j|0)|0;B=T;Ee=ks(Ie|0,Te|0,1048576,0)|0;Ae=T;R=Rs(Ee|0,Ae|0,21)|0;re=T;fn=ks(dn|0,un|0,ln|0,fn|0)|0;an=ks(fn|0,T|0,cn|0,an|0)|0;on=ks(an|0,T|0,sn|0,on|0)|0;x=ks(on|0,T|0,rn|0,x|0)|0;Ne=ks(x|0,T|0,H|0,Ne|0)|0;De=ks(Ne|0,T|0,De&2097151|0,0)|0;re=ks(De|0,T|0,R|0,re|0)|0;R=T;De=ks(Ge|0,He|0,1048576,0)|0;Ne=T;H=Rs(De|0,Ne|0,21)|0;x=T;$t=ks(nn|0,tn|0,en|0,$t|0)|0;Jt=ks($t|0,T|0,Zt|0,Jt|0)|0;Yt=ks(Jt|0,T|0,Xt|0,Yt|0)|0;Qt=ks(Yt|0,T|0,Wt|0,Qt|0)|0;Ht=ks(Qt|0,T|0,Vt|0,Ht|0)|0;Kt=ks(Ht|0,T|0,Gt|0,Kt|0)|0;o=ks(Kt|0,T|0,I|0,o|0)|0;le=ks(o|0,T|0,ue|0,le|0)|0;x=ks(le|0,T|0,H|0,x|0)|0;H=T;le=ks(X|0,J|0,1048576,0)|0;ue=T;o=Rs(le|0,ue|0,21)|0;I=T;Lt=ks(zt|0,qt|0,Ft|0,Lt|0)|0;jt=ks(Lt|0,T|0,Ut|0,jt|0)|0;Nt=ks(jt|0,T|0,Bt|0,Nt|0)|0;Mt=ks(Nt|0,T|0,Dt|0,Mt|0)|0;Ot=ks(Mt|0,T|0,Pt|0,Ot|0)|0;Rt=ks(Ot|0,T|0,Ct|0,Rt|0)|0;It=ks(Rt|0,T|0,xt|0,It|0)|0;ee=ks(It|0,T|0,Tt|0,ee|0)|0;_e=ks(ee|0,T|0,g|0,_e|0)|0;we=ks(_e|0,T|0,we&2097151|0,0)|0;I=ks(we|0,T|0,o|0,I|0)|0;o=T;we=ks(te|0,ne|0,1048576,0)|0;_e=T;g=Rs(we|0,_e|0,21)|0;ee=T;At=ks(St|0,kt|0,Et|0,At|0)|0;be=ks(At|0,T|0,he|0,be|0)|0;Ye=ks(be|0,T|0,We|0,Ye|0)|0;t=ks(Ye|0,T|0,i|0,t|0)|0;at=ks(t|0,T|0,st|0,at|0)|0;Ke=ks(at|0,T|0,ze|0,Ke|0)|0;_=ks(Ke|0,T|0,f|0,_|0)|0;yt=ks(_|0,T|0,gt|0,yt|0)|0;Be=ks(yt|0,T|0,je|0,Be|0)|0;tt=ks(Be|0,T|0,et|0,tt|0)|0;Le=ks(tt|0,T|0,Ue|0,Le|0)|0;ft=ks(Le|0,T|0,rt|0,ft|0)|0;ee=ks(ft|0,T|0,g|0,ee|0)|0;g=T;ft=ks(mt|0,pt|0,1048576,0)|0;rt=T;Le=Rs(ft|0,rt|0,21)|0;Ue=T;Xe=ks(U|0,L|0,Je|0,Xe|0)|0;Y=ks(Xe|0,T|0,W|0,Y|0)|0;ce=ks(Y|0,T|0,qe|0,ce|0)|0;oe=ks(ce|0,T|0,ie|0,oe|0)|0;F=ks(oe|0,T|0,k|0,F|0)|0;vt=ks(F|0,T|0,bt|0,vt|0)|0;Fe=ks(vt|0,T|0,fe|0,Fe|0)|0;n=ks(Fe|0,T|0,P|0,n|0)|0;it=ks(n|0,T|0,ot|0,it|0)|0;Ue=ks(it|0,T|0,Le|0,Ue|0)|0;Le=T;it=ks(dt|0,ht|0,1048576,0)|0;ot=T;n=Rs(it|0,ot|0,21)|0;P=T;a=ks(h|0,b|0,l|0,a|0)|0;c=ks(a|0,T|0,w|0,c|0)|0;se=ks(c|0,T|0,ae|0,se|0)|0;O=ks(se|0,T|0,$|0,O|0)|0;q=ks(O|0,T|0,z|0,q|0)|0;ut=ks(q|0,T|0,lt|0,ut|0)|0;Ze=ks(ut|0,T|0,$e|0,Ze|0)|0;P=ks(Ze|0,T|0,n|0,P|0)|0;n=T;Ze=ks(wt|0,G|0,1048576,0)|0;$e=T;ut=Rs(Ze|0,$e|0,21)|0;lt=T;S=ks(y|0,d|0,E|0,S|0)|0;Ve=ks(S|0,T|0,Qe|0,Ve|0)|0;D=ks(Ve|0,T|0,M|0,D|0)|0;p=ks(D|0,T|0,v|0,p|0)|0;me=ks(p|0,T|0,pe|0,me|0)|0;lt=ks(me|0,T|0,ut|0,lt|0)|0;ut=T;me=ks(m|0,u|0,1048576,0)|0;pe=T;p=Rs(me|0,pe|0,21)|0;v=T;Se=ks(nt|0,ct|0,ke|0,Se|0)|0;Oe=ks(Se|0,T|0,Ce|0,Oe|0)|0;C=ks(Oe|0,T|0,K|0,C|0)|0;v=ks(C|0,T|0,p|0,v|0)|0;p=T;pe=Ss(m|0,u|0,me&-2097152|0,pe|0)|0;me=T;u=ks(Z|0,N|0,1048576,0)|0;m=T;C=Cs(u|0,m|0,21)|0;C=ks(_t|0,A|0,C|0,T|0)|0;A=T;m=Ss(Z|0,N|0,u&-2097152|0,m&2147483647|0)|0;u=T;N=ks(ye|0,ge|0,1048576,0)|0;Z=T;_t=Cs(N|0,Z|0,21)|0;K=T;Z=Ss(ye|0,ge|0,N&-2097152|0,Z&2147483647|0)|0;N=T;ge=ks(ve|0,de|0,1048576,0)|0;ye=T;Oe=Cs(ge|0,ye|0,21)|0;Ce=T;ye=Ss(ve|0,de|0,ge&-2097152|0,ye|0)|0;ge=T;de=ks(j|0,B|0,1048576,0)|0;ve=T;Se=Rs(de|0,ve|0,21)|0;ke=T;ve=Ss(j|0,B|0,de&-2097152|0,ve|0)|0;de=T;B=ks(re|0,R|0,1048576,0)|0;j=T;ct=Rs(B|0,j|0,21)|0;nt=T;D=ks(x|0,H|0,1048576,0)|0;M=T;Ve=Rs(D|0,M|0,21)|0;Qe=T;S=ks(I|0,o|0,1048576,0)|0;E=T;d=Rs(S|0,E|0,21)|0;y=T;q=ks(ee|0,g|0,1048576,0)|0;z=T;O=Rs(q|0,z|0,21)|0;$=T;se=ks(Ue|0,Le|0,1048576,0)|0;ae=T;c=Rs(se|0,ae|0,21)|0;w=T;a=ks(P|0,n|0,1048576,0)|0;l=T;b=Rs(a|0,l|0,21)|0;h=T;Fe=ks(lt|0,ut|0,1048576,0)|0;fe=T;vt=Rs(Fe|0,fe|0,21)|0;me=ks(vt|0,T|0,pe|0,me|0)|0;pe=T;fe=Ss(lt|0,ut|0,Fe&-2097152|0,fe|0)|0;Fe=T;ut=ks(v|0,p|0,1048576,0)|0;lt=T;vt=Rs(ut|0,lt|0,21)|0;u=ks(vt|0,T|0,m|0,u|0)|0;m=T;lt=Ss(v|0,p|0,ut&-2097152|0,lt|0)|0;ut=T;p=ks(C|0,A|0,1048576,0)|0;v=T;vt=Cs(p|0,v|0,21)|0;N=ks(vt|0,T|0,Z|0,N|0)|0;Z=T;v=Ss(C|0,A|0,p&-2097152|0,v&2147483647|0)|0;p=T;A=Es(_t|0,K|0,666643,0)|0;C=T;vt=Es(_t|0,K|0,470296,0)|0;bt=T;F=Es(_t|0,K|0,654183,0)|0;k=T;oe=Es(_t|0,K|0,-997805,-1)|0;ie=T;ce=Es(_t|0,K|0,136657,0)|0;qe=T;K=Es(_t|0,K|0,-683901,-1)|0;K=ks(wt|0,G|0,K|0,T|0)|0;$e=Ss(K|0,T|0,Ze&-2097152|0,$e|0)|0;h=ks($e|0,T|0,b|0,h|0)|0;b=T;$e=Es(N|0,Z|0,666643,0)|0;Ze=T;K=Es(N|0,Z|0,470296,0)|0;G=T;wt=Es(N|0,Z|0,654183,0)|0;_t=T;Y=Es(N|0,Z|0,-997805,-1)|0;W=T;Xe=Es(N|0,Z|0,136657,0)|0;Je=T;Z=Es(N|0,Z|0,-683901,-1)|0;N=T;L=Es(v|0,p|0,666643,0)|0;U=T;tt=Es(v|0,p|0,470296,0)|0;et=T;Be=Es(v|0,p|0,654183,0)|0;je=T;yt=Es(v|0,p|0,-997805,-1)|0;gt=T;_=Es(v|0,p|0,136657,0)|0;f=T;p=Es(v|0,p|0,-683901,-1)|0;v=T;ie=ks(dt|0,ht|0,oe|0,ie|0)|0;Je=ks(ie|0,T|0,Xe|0,Je|0)|0;v=ks(Je|0,T|0,p|0,v|0)|0;ot=Ss(v|0,T|0,it&-2097152|0,ot|0)|0;w=ks(ot|0,T|0,c|0,w|0)|0;c=T;ot=Es(u|0,m|0,666643,0)|0;it=T;v=Es(u|0,m|0,470296,0)|0;p=T;Je=Es(u|0,m|0,654183,0)|0;Xe=T;ie=Es(u|0,m|0,-997805,-1)|0;oe=T;ht=Es(u|0,m|0,136657,0)|0;dt=T;m=Es(u|0,m|0,-683901,-1)|0;u=T;Ke=Es(lt|0,ut|0,666643,0)|0;ze=T;at=Es(lt|0,ut|0,470296,0)|0;st=T;t=Es(lt|0,ut|0,654183,0)|0;i=T;Ye=Es(lt|0,ut|0,-997805,-1)|0;We=T;be=Es(lt|0,ut|0,136657,0)|0;he=T;ut=Es(lt|0,ut|0,-683901,-1)|0;lt=T;bt=ks(wt|0,_t|0,vt|0,bt|0)|0;gt=ks(bt|0,T|0,yt|0,gt|0)|0;pt=ks(gt|0,T|0,mt|0,pt|0)|0;dt=ks(pt|0,T|0,ht|0,dt|0)|0;lt=ks(dt|0,T|0,ut|0,lt|0)|0;rt=Ss(lt|0,T|0,ft&-2097152|0,rt|0)|0;$=ks(rt|0,T|0,O|0,$|0)|0;O=T;rt=Es(me|0,pe|0,666643,0)|0;rt=ks(ct|0,nt|0,rt|0,T|0)|0;He=ks(rt|0,T|0,Ge|0,He|0)|0;Ne=Ss(He|0,T|0,De&-2097152|0,Ne|0)|0;De=T;He=Es(me|0,pe|0,470296,0)|0;Ge=T;rt=Es(me|0,pe|0,654183,0)|0;nt=T;it=ks(at|0,st|0,ot|0,it|0)|0;nt=ks(it|0,T|0,rt|0,nt|0)|0;Qe=ks(nt|0,T|0,Ve|0,Qe|0)|0;J=ks(Qe|0,T|0,X|0,J|0)|0;ue=Ss(J|0,T|0,le&-2097152|0,ue|0)|0;le=T;J=Es(me|0,pe|0,-997805,-1)|0;X=T;Qe=Es(me|0,pe|0,136657,0)|0;Ve=T;Ze=ks(tt|0,et|0,$e|0,Ze|0)|0;Xe=ks(Ze|0,T|0,Je|0,Xe|0)|0;We=ks(Xe|0,T|0,Ye|0,We|0)|0;Ve=ks(We|0,T|0,Qe|0,Ve|0)|0;y=ks(Ve|0,T|0,d|0,y|0)|0;ne=ks(y|0,T|0,te|0,ne|0)|0;_e=Ss(ne|0,T|0,we&-2097152|0,_e|0)|0;we=T;pe=Es(me|0,pe|0,-683901,-1)|0;me=T;ne=ks(Ne|0,De|0,1048576,0)|0;te=T;y=Rs(ne|0,te|0,21)|0;d=T;ze=ks(He|0,Ge|0,Ke|0,ze|0)|0;H=ks(ze|0,T|0,x|0,H|0)|0;M=Ss(H|0,T|0,D&-2097152|0,M|0)|0;d=ks(M|0,T|0,y|0,d|0)|0;y=T;M=ks(ue|0,le|0,1048576,0)|0;D=T;H=Rs(M|0,D|0,21)|0;x=T;U=ks(v|0,p|0,L|0,U|0)|0;i=ks(U|0,T|0,t|0,i|0)|0;X=ks(i|0,T|0,J|0,X|0)|0;o=ks(X|0,T|0,I|0,o|0)|0;E=Ss(o|0,T|0,S&-2097152|0,E|0)|0;x=ks(E|0,T|0,H|0,x|0)|0;H=T;E=ks(_e|0,we|0,1048576,0)|0;S=T;o=Rs(E|0,S|0,21)|0;I=T;C=ks(K|0,G|0,A|0,C|0)|0;je=ks(C|0,T|0,Be|0,je|0)|0;oe=ks(je|0,T|0,ie|0,oe|0)|0;he=ks(oe|0,T|0,be|0,he|0)|0;me=ks(he|0,T|0,pe|0,me|0)|0;g=ks(me|0,T|0,ee|0,g|0)|0;z=Ss(g|0,T|0,q&-2097152|0,z|0)|0;I=ks(z|0,T|0,o|0,I|0)|0;o=T;z=ks($|0,O|0,1048576,0)|0;q=T;g=Rs(z|0,q|0,21)|0;ee=T;k=ks(Y|0,W|0,F|0,k|0)|0;f=ks(k|0,T|0,_|0,f|0)|0;u=ks(f|0,T|0,m|0,u|0)|0;Le=ks(u|0,T|0,Ue|0,Le|0)|0;ae=Ss(Le|0,T|0,se&-2097152|0,ae|0)|0;ee=ks(ae|0,T|0,g|0,ee|0)|0;g=T;q=Ss($|0,O|0,z&-2097152|0,q|0)|0;z=T;O=ks(w|0,c|0,1048576,0)|0;$=T;ae=Rs(O|0,$|0,21)|0;se=T;qe=ks(Z|0,N|0,ce|0,qe|0)|0;n=ks(qe|0,T|0,P|0,n|0)|0;l=Ss(n|0,T|0,a&-2097152|0,l|0)|0;se=ks(l|0,T|0,ae|0,se|0)|0;ae=T;$=Ss(w|0,c|0,O&-2097152|0,$|0)|0;O=T;c=ks(h|0,b|0,1048576,0)|0;w=T;l=Rs(c|0,w|0,21)|0;Fe=ks(l|0,T|0,fe|0,Fe|0)|0;fe=T;w=Ss(h|0,b|0,c&-2097152|0,w|0)|0;c=T;b=ks(d|0,y|0,1048576,0)|0;h=T;l=Rs(b|0,h|0,21)|0;a=T;n=ks(x|0,H|0,1048576,0)|0;P=T;qe=Rs(n|0,P|0,21)|0;ce=T;N=ks(I|0,o|0,1048576,0)|0;Z=T;Le=Rs(N|0,Z|0,21)|0;z=ks(Le|0,T|0,q|0,z|0)|0;q=T;Z=Ss(I|0,o|0,N&-2097152|0,Z|0)|0;N=T;o=ks(ee|0,g|0,1048576,0)|0;I=T;Le=Rs(o|0,I|0,21)|0;O=ks(Le|0,T|0,$|0,O|0)|0;$=T;I=Ss(ee|0,g|0,o&-2097152|0,I|0)|0;o=T;g=ks(se|0,ae|0,1048576,0)|0;ee=T;Le=Rs(g|0,ee|0,21)|0;c=ks(Le|0,T|0,w|0,c|0)|0;w=T;ee=Ss(se|0,ae|0,g&-2097152|0,ee|0)|0;g=T;ae=Es(Fe|0,fe|0,666643,0)|0;se=T;Le=Es(Fe|0,fe|0,470296,0)|0;Ue=T;u=Es(Fe|0,fe|0,654183,0)|0;m=T;f=Es(Fe|0,fe|0,-997805,-1)|0;_=T;k=Es(Fe|0,fe|0,136657,0)|0;F=T;fe=Es(Fe|0,fe|0,-683901,-1)|0;fe=ks(qe|0,ce|0,fe|0,T|0)|0;we=ks(fe|0,T|0,_e|0,we|0)|0;S=Ss(we|0,T|0,E&-2097152|0,S|0)|0;E=T;we=Es(c|0,w|0,666643,0)|0;_e=T;fe=Es(c|0,w|0,470296,0)|0;ce=T;qe=Es(c|0,w|0,654183,0)|0;Fe=T;W=Es(c|0,w|0,-997805,-1)|0;Y=T;me=Es(c|0,w|0,136657,0)|0;pe=T;w=Es(c|0,w|0,-683901,-1)|0;c=T;he=Es(ee|0,g|0,666643,0)|0;he=ks(ve|0,de|0,he|0,T|0)|0;de=T;ve=Es(ee|0,g|0,470296,0)|0;be=T;oe=Es(ee|0,g|0,654183,0)|0;ie=T;je=Es(ee|0,g|0,-997805,-1)|0;Be=T;C=Es(ee|0,g|0,136657,0)|0;A=T;g=Es(ee|0,g|0,-683901,-1)|0;ee=T;_=ks(me|0,pe|0,f|0,_|0)|0;ee=ks(_|0,T|0,g|0,ee|0)|0;a=ks(ee|0,T|0,l|0,a|0)|0;le=ks(a|0,T|0,ue|0,le|0)|0;D=Ss(le|0,T|0,M&-2097152|0,D|0)|0;M=T;le=Es(O|0,$|0,666643,0)|0;ue=T;a=Es(O|0,$|0,470296,0)|0;l=T;ee=Es(O|0,$|0,654183,0)|0;g=T;_=Es(O|0,$|0,-997805,-1)|0;f=T;pe=Es(O|0,$|0,136657,0)|0;me=T;$=Es(O|0,$|0,-683901,-1)|0;O=T;G=Es(I|0,o|0,666643,0)|0;K=T;X=Es(I|0,o|0,470296,0)|0;J=T;i=Es(I|0,o|0,654183,0)|0;t=T;U=Es(I|0,o|0,-997805,-1)|0;L=T;p=Es(I|0,o|0,136657,0)|0;v=T;o=Es(I|0,o|0,-683901,-1)|0;I=T;Ue=ks(qe|0,Fe|0,Le|0,Ue|0)|0;Be=ks(Ue|0,T|0,je|0,Be|0)|0;De=ks(Be|0,T|0,Ne|0,De|0)|0;te=Ss(De|0,T|0,ne&-2097152|0,te|0)|0;me=ks(te|0,T|0,pe|0,me|0)|0;I=ks(me|0,T|0,o|0,I|0)|0;o=T;me=Es(z|0,q|0,666643,0)|0;V=ks(me|0,T|0,Q|0,V|0)|0;Q=T;me=Es(z|0,q|0,470296,0)|0;pe=T;te=Es(z|0,q|0,654183,0)|0;ne=T;Ce=ks(Me|0,Pe|0,Oe|0,Ce|0)|0;xe=Ss(Ce|0,T|0,Re&-2097152|0,xe|0)|0;ne=ks(xe|0,T|0,te|0,ne|0)|0;ue=ks(ne|0,T|0,le|0,ue|0)|0;J=ks(ue|0,T|0,X|0,J|0)|0;X=T;ue=Es(z|0,q|0,-997805,-1)|0;le=T;ne=Es(z|0,q|0,136657,0)|0;te=T;ke=ks(Ie|0,Te|0,Se|0,ke|0)|0;Ae=Ss(ke|0,T|0,Ee&-2097152|0,Ae|0)|0;_e=ks(Ae|0,T|0,we|0,_e|0)|0;be=ks(_e|0,T|0,ve|0,be|0)|0;te=ks(be|0,T|0,ne|0,te|0)|0;g=ks(te|0,T|0,ee|0,g|0)|0;L=ks(g|0,T|0,U|0,L|0)|0;U=T;q=Es(z|0,q|0,-683901,-1)|0;z=T;g=ks(V|0,Q|0,1048576,0)|0;ee=T;te=Rs(g|0,ee|0,21)|0;ne=T;pe=ks(ye|0,ge|0,me|0,pe|0)|0;K=ks(pe|0,T|0,G|0,K|0)|0;ne=ks(K|0,T|0,te|0,ne|0)|0;te=T;ee=Ss(V|0,Q|0,g&-2097152|0,ee|0)|0;g=T;Q=ks(J|0,X|0,1048576,0)|0;V=T;K=Rs(Q|0,V|0,21)|0;G=T;le=ks(he|0,de|0,ue|0,le|0)|0;l=ks(le|0,T|0,a|0,l|0)|0;t=ks(l|0,T|0,i|0,t|0)|0;G=ks(t|0,T|0,K|0,G|0)|0;K=T;t=ks(L|0,U|0,1048576,0)|0;i=T;l=Rs(t|0,i|0,21)|0;a=T;se=ks(fe|0,ce|0,ae|0,se|0)|0;ie=ks(se|0,T|0,oe|0,ie|0)|0;R=ks(ie|0,T|0,re|0,R|0)|0;j=Ss(R|0,T|0,B&-2097152|0,j|0)|0;z=ks(j|0,T|0,q|0,z|0)|0;f=ks(z|0,T|0,_|0,f|0)|0;v=ks(f|0,T|0,p|0,v|0)|0;a=ks(v|0,T|0,l|0,a|0)|0;l=T;v=ks(I|0,o|0,1048576,0)|0;p=T;f=Rs(v|0,p|0,21)|0;_=T;m=ks(W|0,Y|0,u|0,m|0)|0;A=ks(m|0,T|0,C|0,A|0)|0;y=ks(A|0,T|0,d|0,y|0)|0;h=Ss(y|0,T|0,b&-2097152|0,h|0)|0;O=ks(h|0,T|0,$|0,O|0)|0;_=ks(O|0,T|0,f|0,_|0)|0;f=T;p=Ss(I|0,o|0,v&-2097152|0,p|0)|0;v=T;o=ks(D|0,M|0,1048576,0)|0;I=T;O=Rs(o|0,I|0,21)|0;$=T;F=ks(w|0,c|0,k|0,F|0)|0;H=ks(F|0,T|0,x|0,H|0)|0;$=ks(H|0,T|0,O|0,$|0)|0;P=Ss($|0,T|0,n&-2097152|0,P|0)|0;n=T;I=Ss(D|0,M|0,o&-2097152|0,I|0)|0;o=T;M=ks(S|0,E|0,1048576,0)|0;D=T;$=Rs(M|0,D|0,21)|0;$=ks(Z|0,N|0,$|0,T|0)|0;N=T;Z=ks(ne|0,te|0,1048576,0)|0;O=T;H=Rs(Z|0,O|0,21)|0;x=T;F=ks(G|0,K|0,1048576,0)|0;k=T;c=Rs(F|0,k|0,21)|0;w=T;h=ks(a|0,l|0,1048576,0)|0;b=T;y=Rs(h|0,b|0,21)|0;y=ks(p|0,v|0,y|0,T|0)|0;v=T;p=ks(_|0,f|0,1048576,0)|0;d=T;A=Rs(p|0,d|0,21)|0;A=ks(I|0,o|0,A|0,T|0)|0;o=T;d=Ss(_|0,f|0,p&-2097152|0,d|0)|0;p=T;f=ks(P|0,n|0,1048576,0)|0;_=T;I=Rs(f|0,_|0,21)|0;C=T;_=Ss(P|0,n|0,f&-2097152|0,_|0)|0;f=T;n=ks($|0,N|0,1048576,0)|0;P=T;m=Rs(n|0,P|0,21)|0;u=T;P=Ss($|0,N|0,n&-2097152|0,P|0)|0;n=T;N=Es(m|0,u|0,666643,0)|0;N=ks(ee|0,g|0,N|0,T|0)|0;g=T;ee=Es(m|0,u|0,470296,0)|0;$=T;Y=Es(m|0,u|0,654183,0)|0;W=T;z=Es(m|0,u|0,-997805,-1)|0;q=T;j=Es(m|0,u|0,136657,0)|0;B=T;u=Es(m|0,u|0,-683901,-1)|0;m=T;g=Rs(N|0,g|0,21)|0;R=T;$=ks(ne|0,te|0,ee|0,$|0)|0;O=Ss($|0,T|0,Z&-2097152|0,O|0)|0;R=ks(O|0,T|0,g|0,R|0)|0;g=Rs(R|0,T|0,21)|0;O=T;W=ks(J|0,X|0,Y|0,W|0)|0;V=Ss(W|0,T|0,Q&-2097152|0,V|0)|0;x=ks(V|0,T|0,H|0,x|0)|0;O=ks(x|0,T|0,g|0,O|0)|0;g=Rs(O|0,T|0,21)|0;x=T;q=ks(G|0,K|0,z|0,q|0)|0;k=Ss(q|0,T|0,F&-2097152|0,k|0)|0;x=ks(k|0,T|0,g|0,x|0)|0;g=Rs(x|0,T|0,21)|0;k=T;B=ks(L|0,U|0,j|0,B|0)|0;i=Ss(B|0,T|0,t&-2097152|0,i|0)|0;w=ks(i|0,T|0,c|0,w|0)|0;k=ks(w|0,T|0,g|0,k|0)|0;g=Rs(k|0,T|0,21)|0;w=T;m=ks(a|0,l|0,u|0,m|0)|0;b=Ss(m|0,T|0,h&-2097152|0,b|0)|0;w=ks(b|0,T|0,g|0,w|0)|0;g=Rs(w|0,T|0,21)|0;g=ks(y|0,v|0,g|0,T|0)|0;v=Rs(g|0,T|0,21)|0;p=ks(v|0,T|0,d|0,p|0)|0;d=Rs(p|0,T|0,21)|0;d=ks(A|0,o|0,d|0,T|0)|0;o=Rs(d|0,T|0,21)|0;f=ks(o|0,T|0,_|0,f|0)|0;_=Rs(f|0,T|0,21)|0;o=T;C=ks(S|0,E|0,I|0,C|0)|0;D=Ss(C|0,T|0,M&-2097152|0,D|0)|0;o=ks(D|0,T|0,_|0,o|0)|0;_=Rs(o|0,T|0,21)|0;n=ks(_|0,T|0,P|0,n|0)|0;P=Rs(n|0,T|0,21)|0;_=T;D=Es(P|0,_|0,666643,0)|0;N=ks(D|0,T|0,N&2097151|0,0)|0;D=T;M=Es(P|0,_|0,470296,0)|0;R=ks(M|0,T|0,R&2097151|0,0)|0;M=T;C=Es(P|0,_|0,654183,0)|0;O=ks(C|0,T|0,O&2097151|0,0)|0;C=T;I=Es(P|0,_|0,-997805,-1)|0;x=ks(I|0,T|0,x&2097151|0,0)|0;I=T;E=Es(P|0,_|0,136657,0)|0;k=ks(E|0,T|0,k&2097151|0,0)|0;E=T;_=Es(P|0,_|0,-683901,-1)|0;w=ks(_|0,T|0,w&2097151|0,0)|0;_=T;P=Rs(N|0,D|0,21)|0;P=ks(R|0,M|0,P|0,T|0)|0;M=T;R=Rs(P|0,M|0,21)|0;R=ks(O|0,C|0,R|0,T|0)|0;C=T;O=P&2097151;S=Rs(R|0,C|0,21)|0;S=ks(x|0,I|0,S|0,T|0)|0;I=T;x=R&2097151;A=Rs(S|0,I|0,21)|0;A=ks(k|0,E|0,A|0,T|0)|0;E=T;k=S&2097151;v=Rs(A|0,E|0,21)|0;v=ks(w|0,_|0,v|0,T|0)|0;_=T;w=A&2097151;y=Rs(v|0,_|0,21)|0;g=ks(y|0,T|0,g&2097151|0,0)|0;y=T;b=v&2097151;h=Rs(g|0,y|0,21)|0;p=ks(h|0,T|0,p&2097151|0,0)|0;h=T;m=g&2097151;u=Rs(p|0,h|0,21)|0;d=ks(u|0,T|0,d&2097151|0,0)|0;u=T;l=Rs(d|0,u|0,21)|0;f=ks(l|0,T|0,f&2097151|0,0)|0;l=T;a=Rs(f|0,l|0,21)|0;o=ks(a|0,T|0,o&2097151|0,0)|0;a=T;c=f&2097151;i=Rs(o|0,a|0,21)|0;n=ks(i|0,T|0,n&2097151|0,0)|0;i=T;t=o&2097151;r[e>>0]=N;B=Cs(N|0,D|0,8)|0;r[e+1>>0]=B;D=Cs(N|0,D|0,16)|0;N=Os(O|0,0,5)|0;r[e+2>>0]=N|D&31;D=Cs(P|0,M|0,3)|0;r[e+3>>0]=D;M=Cs(P|0,M|0,11)|0;r[e+4>>0]=M;O=Cs(O|0,0,19)|0;M=T;P=Os(x|0,0,2)|0;r[e+5>>0]=P|O;C=Cs(R|0,C|0,6)|0;r[e+6>>0]=C;x=Cs(x|0,0,14)|0;C=T;R=Os(k|0,0,7)|0;r[e+7>>0]=R|x;x=Cs(S|0,I|0,1)|0;r[e+8>>0]=x;I=Cs(S|0,I|0,9)|0;r[e+9>>0]=I;k=Cs(k|0,0,17)|0;I=T;S=Os(w|0,0,4)|0;r[e+10>>0]=S|k;k=Cs(A|0,E|0,4)|0;r[e+11>>0]=k;E=Cs(A|0,E|0,12)|0;r[e+12>>0]=E;w=Cs(w|0,0,20)|0;E=T;A=Os(b|0,0,1)|0;r[e+13>>0]=A|w;_=Cs(v|0,_|0,7)|0;r[e+14>>0]=_;b=Cs(b|0,0,15)|0;_=T;v=Os(m|0,0,6)|0;r[e+15>>0]=v|b;b=Cs(g|0,y|0,2)|0;r[e+16>>0]=b;y=Cs(g|0,y|0,10)|0;r[e+17>>0]=y;m=Cs(m|0,0,18)|0;y=T;g=Os(p|0,h|0,3)|0;r[e+18>>0]=g|m;m=Cs(p|0,h|0,5)|0;r[e+19>>0]=m;h=Cs(p|0,h|0,13)|0;r[e+20>>0]=h;r[e+21>>0]=d;h=Cs(d|0,u|0,8)|0;r[e+22>>0]=h;u=Cs(d|0,u|0,16)|0;d=Os(c|0,0,5)|0;r[e+23>>0]=d|u&31;u=Cs(f|0,l|0,3)|0;r[e+24>>0]=u;l=Cs(f|0,l|0,11)|0;r[e+25>>0]=l;c=Cs(c|0,0,19)|0;l=T;f=Os(t|0,0,2)|0;r[e+26>>0]=f|c;a=Cs(o|0,a|0,6)|0;r[e+27>>0]=a;t=Cs(t|0,0,14)|0;a=T;o=Os(n|0,i|0,7)|0;r[e+28>>0]=o|t;t=Cs(n|0,i|0,1)|0;r[e+29>>0]=t;t=Cs(n|0,i|0,9)|0;r[e+30>>0]=t;i=Rs(n|0,i|0,17)|0;r[e+31>>0]=i;return}function ni(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;l=t+44|0;h=t+48|0;g=t+52|0;v=t+56|0;A=t+60|0;S=t+64|0;x=t+68|0;O=t+72|0;R=t+76|0;G=t+4|0;z=t+8|0;i=t+12|0;d=t+16|0;p=t+20|0;w=t+24|0;E=t+28|0;C=t+32|0;q=t+36|0;se=(o[G>>2]|0)+(o[l>>2]|0)|0;oe=(o[z>>2]|0)+(o[h>>2]|0)|0;ie=(o[i>>2]|0)+(o[g>>2]|0)|0;re=(o[d>>2]|0)+(o[v>>2]|0)|0;ne=(o[p>>2]|0)+(o[A>>2]|0)|0;te=(o[w>>2]|0)+(o[S>>2]|0)|0;ee=(o[E>>2]|0)+(o[x>>2]|0)|0;$=(o[C>>2]|0)+(o[O>>2]|0)|0;X=(o[q>>2]|0)+(o[R>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[l>>2]|0)-(o[G>>2]|0)|0;z=(o[h>>2]|0)-(o[z>>2]|0)|0;i=(o[g>>2]|0)-(o[i>>2]|0)|0;d=(o[v>>2]|0)-(o[d>>2]|0)|0;p=(o[A>>2]|0)-(o[p>>2]|0)|0;w=(o[S>>2]|0)-(o[w>>2]|0)|0;E=(o[x>>2]|0)-(o[E>>2]|0)|0;C=(o[O>>2]|0)-(o[C>>2]|0)|0;q=(o[R>>2]|0)-(o[q>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=z;z=e+52|0;o[z>>2]=i;i=e+56|0;o[i>>2]=d;d=e+60|0;o[d>>2]=p;p=e+64|0;o[p>>2]=w;w=e+68|0;o[w>>2]=E;E=e+72|0;o[E>>2]=C;C=e+76|0;o[C>>2]=q;q=e+80|0;Xr(q,e,n);Xr(X,X,n+40|0);R=e+120|0;Xr(R,n+120|0,t+120|0);Xr(e,t+80|0,n+80|0);O=o[e>>2]<<1;x=o[ae>>2]<<1;S=o[se>>2]<<1;A=o[oe>>2]<<1;v=o[ie>>2]<<1;g=o[re>>2]<<1;h=o[ne>>2]<<1;l=o[te>>2]<<1;a=o[ee>>2]<<1;r=o[$>>2]<<1;J=o[q>>2]|0;F=e+84|0;W=o[F>>2]|0;L=e+88|0;H=o[L>>2]|0;U=e+92|0;t=o[U>>2]|0;j=e+96|0;s=o[j>>2]|0;B=e+100|0;c=o[B>>2]|0;N=e+104|0;m=o[N>>2]|0;D=e+108|0;y=o[D>>2]|0;M=e+112|0;k=o[M>>2]|0;P=e+116|0;T=o[P>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[z>>2]|0;n=o[i>>2]|0;f=o[d>>2]|0;u=o[p>>2]|0;b=o[w>>2]|0;_=o[E>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=t-K;o[ie>>2]=s-n;o[re>>2]=c-f;o[ne>>2]=m-u;o[te>>2]=y-b;o[ee>>2]=k-_;o[$>>2]=T-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[z>>2]=K+t;o[i>>2]=n+s;o[d>>2]=f+c;o[p>>2]=u+m;o[w>>2]=b+y;o[E>>2]=_+k;o[C>>2]=I+T;C=o[R>>2]|0;T=e+124|0;I=o[T>>2]|0;E=e+128|0;k=o[E>>2]|0;_=e+132|0;w=o[_>>2]|0;y=e+136|0;b=o[y>>2]|0;p=e+140|0;m=o[p>>2]|0;u=e+144|0;d=o[u>>2]|0;c=e+148|0;f=o[c>>2]|0;i=e+152|0;s=o[i>>2]|0;n=e+156|0;t=o[n>>2]|0;o[q>>2]=C+O;o[F>>2]=I+x;o[L>>2]=k+S;o[U>>2]=w+A;o[j>>2]=b+v;o[B>>2]=m+g;o[N>>2]=d+h;o[D>>2]=f+l;o[M>>2]=s+a;o[P>>2]=t+r;o[R>>2]=O-C;o[T>>2]=x-I;o[E>>2]=S-k;o[_>>2]=A-w;o[y>>2]=v-b;o[p>>2]=g-m;o[u>>2]=h-d;o[c>>2]=l-f;o[i>>2]=a-s;o[n>>2]=r-t;return}function ri(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0;_=h;h=h+2400|0;d=_+2272|0;m=_+1536|0;g=_+1280|0;y=_;b=_+2112|0;v=_+1952|0;u=_+1792|0;ii(m,t);ii(g,i);oi(y,n);A=o[n+4>>2]|0;w=o[n+8>>2]|0;l=o[n+12>>2]|0;t=o[n+16>>2]|0;f=o[n+20>>2]|0;c=o[n+24>>2]|0;a=o[n+28>>2]|0;s=o[n+32>>2]|0;i=o[n+36>>2]|0;o[d>>2]=o[n>>2];o[d+4>>2]=A;o[d+8>>2]=w;o[d+12>>2]=l;o[d+16>>2]=t;o[d+20>>2]=f;o[d+24>>2]=c;o[d+28>>2]=a;o[d+32>>2]=s;o[d+36>>2]=i;i=o[n+44>>2]|0;s=o[n+48>>2]|0;a=o[n+52>>2]|0;c=o[n+56>>2]|0;f=o[n+60>>2]|0;t=o[n+64>>2]|0;l=o[n+68>>2]|0;w=o[n+72>>2]|0;A=o[n+76>>2]|0;o[d+40>>2]=o[n+40>>2];o[d+44>>2]=i;o[d+48>>2]=s;o[d+52>>2]=a;o[d+56>>2]=c;o[d+60>>2]=f;o[d+64>>2]=t;o[d+68>>2]=l;o[d+72>>2]=w;o[d+76>>2]=A;A=o[n+84>>2]|0;w=o[n+88>>2]|0;l=o[n+92>>2]|0;t=o[n+96>>2]|0;f=o[n+100>>2]|0;c=o[n+104>>2]|0;a=o[n+108>>2]|0;s=o[n+112>>2]|0;i=o[n+116>>2]|0;o[d+80>>2]=o[n+80>>2];o[d+84>>2]=A;o[d+88>>2]=w;o[d+92>>2]=l;o[d+96>>2]=t;o[d+100>>2]=f;o[d+104>>2]=c;o[d+108>>2]=a;o[d+112>>2]=s;o[d+116>>2]=i;si(b,d);d=b+120|0;Xr(u,b,d);i=b+40|0;s=b+80|0;Xr(u+40|0,i,s);Xr(u+80|0,s,d);Xr(u+120|0,b,i);ni(b,u,y);Xr(v,b,d);a=v+40|0;Xr(a,i,s);c=v+80|0;Xr(c,s,d);f=v+120|0;Xr(f,b,i);t=y+160|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+320|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+480|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+640|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+800|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+960|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);oi(y+1120|0,v);t=e;n=t+40|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));l=e+40|0;o[l>>2]=1;t=e+44|0;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));u=e+80|0;o[u>>2]=1;t=e+84|0;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));t=255;while(1){if(r[m+t>>0]|0)break;if(r[g+t>>0]|0)break;if(!t){p=16;break}else t=t+-1|0}if((p|0)==16){h=_;return}if((t|0)<=-1){h=_;return}while(1){si(b,e);n=r[m+t>>0]|0;if(n<<24>>24<=0){if(n<<24>>24<0){Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);ai(b,v,y+((((n<<24>>24)/-2|0)<<24>>24)*160|0)|0)}}else{Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);ni(b,v,y+(((n&255)>>>1&255)*160|0)|0)}n=r[g+t>>0]|0;if(n<<24>>24<=0){if(n<<24>>24<0){Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);fi(b,v,240+((((n<<24>>24)/-2|0)<<24>>24)*120|0)|0)}}else{Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);ci(b,v,240+(((n&255)>>>1&255)*120|0)|0)}Xr(e,b,d);Xr(l,i,s);Xr(u,s,d);if((t|0)>0)t=t+-1|0;else break}h=_;return}function ii(e,t){e=e|0;t=t|0;var n=0,i=0,o=0,a=0,c=0,f=0,l=0,u=0,d=0;n=0;do{r[e+n>>0]=(s[t+(n>>>3)>>0]|0)>>>(n&7)&1;n=n+1|0}while((n|0)!=256);l=0;do{f=e+l|0;n=r[f>>0]|0;c=l;l=l+1|0;e:do{if(n<<24>>24!=0&l>>>0<256){o=e+l|0;t=r[o>>0]|0;t:do{if(t<<24>>24){i=n<<24>>24;n=t<<24>>24<<1;t=n+i|0;if((t|0)<16){r[f>>0]=t;r[o>>0]=0;break}n=i-n|0;if((n|0)<=-16)break e;r[f>>0]=n;n=l;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+2|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<2;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+3|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<3;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+4|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<4;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+5|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<5;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+6|0;if(n>>>0<256?(u=e+n|0,d=r[u>>0]|0,d<<24>>24):0){t=r[f>>0]|0;i=d<<24>>24<<6;o=i+t|0;if((o|0)<16){r[f>>0]=o;r[u>>0]=0;break}t=t-i|0;if((t|0)>-16){r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break e}r[t>>0]=1}}}}}}}}while(0)}while((l|0)!=256);return}function oi(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0;d=t+40|0;w=t+44|0;_=t+48|0;v=t+52|0;b=t+56|0;y=t+60|0;g=t+64|0;m=t+68|0;p=t+72|0;h=t+76|0;n=t+4|0;r=t+8|0;i=t+12|0;s=t+16|0;a=t+20|0;c=t+24|0;f=t+28|0;l=t+32|0;u=t+36|0;C=(o[n>>2]|0)+(o[w>>2]|0)|0;R=(o[r>>2]|0)+(o[_>>2]|0)|0;x=(o[i>>2]|0)+(o[v>>2]|0)|0;I=(o[s>>2]|0)+(o[b>>2]|0)|0;T=(o[a>>2]|0)+(o[y>>2]|0)|0;S=(o[c>>2]|0)+(o[g>>2]|0)|0;k=(o[f>>2]|0)+(o[m>>2]|0)|0;E=(o[l>>2]|0)+(o[p>>2]|0)|0;A=(o[u>>2]|0)+(o[h>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[d>>2]|0);o[e+4>>2]=C;o[e+8>>2]=R;o[e+12>>2]=x;o[e+16>>2]=I;o[e+20>>2]=T;o[e+24>>2]=S;o[e+28>>2]=k;o[e+32>>2]=E;o[e+36>>2]=A;n=(o[w>>2]|0)-(o[n>>2]|0)|0;r=(o[_>>2]|0)-(o[r>>2]|0)|0;i=(o[v>>2]|0)-(o[i>>2]|0)|0;s=(o[b>>2]|0)-(o[s>>2]|0)|0;a=(o[y>>2]|0)-(o[a>>2]|0)|0;c=(o[g>>2]|0)-(o[c>>2]|0)|0;f=(o[m>>2]|0)-(o[f>>2]|0)|0;l=(o[p>>2]|0)-(o[l>>2]|0)|0;u=(o[h>>2]|0)-(o[u>>2]|0)|0;o[e+40>>2]=(o[d>>2]|0)-(o[t>>2]|0);o[e+44>>2]=n;o[e+48>>2]=r;o[e+52>>2]=i;o[e+56>>2]=s;o[e+60>>2]=a;o[e+64>>2]=c;o[e+68>>2]=f;o[e+72>>2]=l;o[e+76>>2]=u;u=o[t+84>>2]|0;l=o[t+88>>2]|0;f=o[t+92>>2]|0;c=o[t+96>>2]|0;a=o[t+100>>2]|0;s=o[t+104>>2]|0;i=o[t+108>>2]|0;r=o[t+112>>2]|0;n=o[t+116>>2]|0;o[e+80>>2]=o[t+80>>2];o[e+84>>2]=u;o[e+88>>2]=l;o[e+92>>2]=f;o[e+96>>2]=c;o[e+100>>2]=a;o[e+104>>2]=s;o[e+108>>2]=i;o[e+112>>2]=r;o[e+116>>2]=n;Xr(e+120|0,t+120|0,1200);return}function si(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0;n=h;h=h+48|0;D=n;Yr(e,t);G=e+80|0;fe=t+40|0;Yr(G,fe);w=e+120|0;$r(w,t+80|0);le=e+40|0;ce=(o[t+44>>2]|0)+(o[t+4>>2]|0)|0;ae=(o[t+48>>2]|0)+(o[t+8>>2]|0)|0;se=(o[t+52>>2]|0)+(o[t+12>>2]|0)|0;oe=(o[t+56>>2]|0)+(o[t+16>>2]|0)|0;ie=(o[t+60>>2]|0)+(o[t+20>>2]|0)|0;re=(o[t+64>>2]|0)+(o[t+24>>2]|0)|0;ne=(o[t+68>>2]|0)+(o[t+28>>2]|0)|0;te=(o[t+72>>2]|0)+(o[t+32>>2]|0)|0;ee=(o[t+76>>2]|0)+(o[t+36>>2]|0)|0;o[le>>2]=(o[fe>>2]|0)+(o[t>>2]|0);fe=e+44|0;o[fe>>2]=ce;ce=e+48|0;o[ce>>2]=ae;ae=e+52|0;o[ae>>2]=se;se=e+56|0;o[se>>2]=oe;oe=e+60|0;o[oe>>2]=ie;ie=e+64|0;o[ie>>2]=re;re=e+68|0;o[re>>2]=ne;ne=e+72|0;o[ne>>2]=te;te=e+76|0;o[te>>2]=ee;Yr(D,le);ee=o[G>>2]|0;K=e+84|0;$=o[K>>2]|0;z=e+88|0;Z=o[z>>2]|0;q=e+92|0;J=o[q>>2]|0;F=e+96|0;X=o[F>>2]|0;L=e+100|0;Y=o[L>>2]|0;U=e+104|0;W=o[U>>2]|0;j=e+108|0;Q=o[j>>2]|0;B=e+112|0;V=o[B>>2]|0;N=e+116|0;H=o[N>>2]|0;A=o[e>>2]|0;O=e+4|0;_=o[O>>2]|0;R=e+8|0;b=o[R>>2]|0;I=e+12|0;g=o[I>>2]|0;S=e+16|0;p=o[S>>2]|0;t=e+20|0;u=o[t>>2]|0;s=e+24|0;f=o[s>>2]|0;l=e+28|0;a=o[l>>2]|0;m=e+32|0;i=o[m>>2]|0;v=e+36|0;E=o[v>>2]|0;M=A+ee|0;P=_+$|0;C=b+Z|0;x=g+J|0;T=p+X|0;k=u+Y|0;r=f+W|0;c=a+Q|0;d=i+V|0;y=E+H|0;o[le>>2]=M;o[fe>>2]=P;o[ce>>2]=C;o[ae>>2]=x;o[se>>2]=T;o[oe>>2]=k;o[ie>>2]=r;o[re>>2]=c;o[ne>>2]=d;o[te>>2]=y;A=ee-A|0;_=$-_|0;b=Z-b|0;g=J-g|0;p=X-p|0;u=Y-u|0;f=W-f|0;a=Q-a|0;i=V-i|0;E=H-E|0;o[G>>2]=A;o[K>>2]=_;o[z>>2]=b;o[q>>2]=g;o[F>>2]=p;o[L>>2]=u;o[U>>2]=f;o[j>>2]=a;o[B>>2]=i;o[N>>2]=E;P=(o[D+4>>2]|0)-P|0;C=(o[D+8>>2]|0)-C|0;x=(o[D+12>>2]|0)-x|0;T=(o[D+16>>2]|0)-T|0;k=(o[D+20>>2]|0)-k|0;r=(o[D+24>>2]|0)-r|0;c=(o[D+28>>2]|0)-c|0;d=(o[D+32>>2]|0)-d|0;y=(o[D+36>>2]|0)-y|0;o[e>>2]=(o[D>>2]|0)-M;o[O>>2]=P;o[R>>2]=C;o[I>>2]=x;o[S>>2]=T;o[t>>2]=k;o[s>>2]=r;o[l>>2]=c;o[m>>2]=d;o[v>>2]=y;v=e+124|0;y=e+128|0;m=e+132|0;d=e+136|0;l=e+140|0;c=e+144|0;s=e+148|0;r=e+152|0;t=e+156|0;_=(o[v>>2]|0)-_|0;b=(o[y>>2]|0)-b|0;g=(o[m>>2]|0)-g|0;p=(o[d>>2]|0)-p|0;u=(o[l>>2]|0)-u|0;f=(o[c>>2]|0)-f|0;a=(o[s>>2]|0)-a|0;i=(o[r>>2]|0)-i|0;e=(o[t>>2]|0)-E|0;o[w>>2]=(o[w>>2]|0)-A;o[v>>2]=_;o[y>>2]=b;o[m>>2]=g;o[d>>2]=p;o[l>>2]=u;o[c>>2]=f;o[s>>2]=a;o[r>>2]=i;o[t>>2]=e;h=n;return}function ai(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;c=t+44|0;u=t+48|0;p=t+52|0;y=t+56|0;_=t+60|0;E=t+64|0;T=t+68|0;R=t+72|0;x=t+76|0;G=t+4|0;q=t+8|0;r=t+12|0;d=t+16|0;h=t+20|0;w=t+24|0;A=t+28|0;C=t+32|0;F=t+36|0;se=(o[G>>2]|0)+(o[c>>2]|0)|0;oe=(o[q>>2]|0)+(o[u>>2]|0)|0;ie=(o[r>>2]|0)+(o[p>>2]|0)|0;re=(o[d>>2]|0)+(o[y>>2]|0)|0;ne=(o[h>>2]|0)+(o[_>>2]|0)|0;te=(o[w>>2]|0)+(o[E>>2]|0)|0;ee=(o[A>>2]|0)+(o[T>>2]|0)|0;$=(o[C>>2]|0)+(o[R>>2]|0)|0;X=(o[F>>2]|0)+(o[x>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[c>>2]|0)-(o[G>>2]|0)|0;q=(o[u>>2]|0)-(o[q>>2]|0)|0;r=(o[p>>2]|0)-(o[r>>2]|0)|0;d=(o[y>>2]|0)-(o[d>>2]|0)|0;h=(o[_>>2]|0)-(o[h>>2]|0)|0;w=(o[E>>2]|0)-(o[w>>2]|0)|0;A=(o[T>>2]|0)-(o[A>>2]|0)|0;C=(o[R>>2]|0)-(o[C>>2]|0)|0;F=(o[x>>2]|0)-(o[F>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=q;q=e+52|0;o[q>>2]=r;r=e+56|0;o[r>>2]=d;d=e+60|0;o[d>>2]=h;h=e+64|0;o[h>>2]=w;w=e+68|0;o[w>>2]=A;A=e+72|0;o[A>>2]=C;C=e+76|0;o[C>>2]=F;F=e+80|0;Xr(F,e,n+40|0);Xr(X,X,n);x=e+120|0;Xr(x,n+120|0,t+120|0);Xr(e,t+80|0,n+80|0);R=o[e>>2]<<1;T=o[ae>>2]<<1;E=o[se>>2]<<1;_=o[oe>>2]<<1;y=o[ie>>2]<<1;p=o[re>>2]<<1;u=o[ne>>2]<<1;c=o[te>>2]<<1;i=o[ee>>2]<<1;t=o[$>>2]<<1;J=o[F>>2]|0;L=e+84|0;W=o[L>>2]|0;U=e+88|0;H=o[U>>2]|0;j=e+92|0;z=o[j>>2]|0;B=e+96|0;s=o[B>>2]|0;N=e+100|0;a=o[N>>2]|0;D=e+104|0;m=o[D>>2]|0;M=e+108|0;g=o[M>>2]|0;P=e+112|0;k=o[P>>2]|0;O=e+116|0;S=o[O>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[q>>2]|0;n=o[r>>2]|0;f=o[d>>2]|0;l=o[h>>2]|0;b=o[w>>2]|0;v=o[A>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=z-K;o[ie>>2]=s-n;o[re>>2]=a-f;o[ne>>2]=m-l;o[te>>2]=g-b;o[ee>>2]=k-v;o[$>>2]=S-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[q>>2]=K+z;o[r>>2]=n+s;o[d>>2]=f+a;o[h>>2]=l+m;o[w>>2]=b+g;o[A>>2]=v+k;o[C>>2]=I+S;C=o[x>>2]|0;S=e+124|0;I=o[S>>2]|0;A=e+128|0;k=o[A>>2]|0;v=e+132|0;w=o[v>>2]|0;g=e+136|0;b=o[g>>2]|0;h=e+140|0;m=o[h>>2]|0;l=e+144|0;d=o[l>>2]|0;a=e+148|0;f=o[a>>2]|0;r=e+152|0;s=o[r>>2]|0;n=e+156|0;e=o[n>>2]|0;o[F>>2]=R-C;o[L>>2]=T-I;o[U>>2]=E-k;o[j>>2]=_-w;o[B>>2]=y-b;o[N>>2]=p-m;o[D>>2]=u-d;o[M>>2]=c-f;o[P>>2]=i-s;o[O>>2]=t-e;o[x>>2]=C+R;o[S>>2]=I+T;o[A>>2]=k+E;o[v>>2]=w+_;o[g>>2]=b+y;o[h>>2]=m+p;o[l>>2]=d+u;o[a>>2]=f+c;o[r>>2]=s+i;o[n>>2]=e+t;return}function ci(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;l=t+44|0;h=t+48|0;g=t+52|0;v=t+56|0;A=t+60|0;S=t+64|0;x=t+68|0;O=t+72|0;R=t+76|0;G=t+4|0;z=t+8|0;i=t+12|0;d=t+16|0;p=t+20|0;w=t+24|0;E=t+28|0;C=t+32|0;q=t+36|0;se=(o[G>>2]|0)+(o[l>>2]|0)|0;oe=(o[z>>2]|0)+(o[h>>2]|0)|0;ie=(o[i>>2]|0)+(o[g>>2]|0)|0;re=(o[d>>2]|0)+(o[v>>2]|0)|0;ne=(o[p>>2]|0)+(o[A>>2]|0)|0;te=(o[w>>2]|0)+(o[S>>2]|0)|0;ee=(o[E>>2]|0)+(o[x>>2]|0)|0;$=(o[C>>2]|0)+(o[O>>2]|0)|0;X=(o[q>>2]|0)+(o[R>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[l>>2]|0)-(o[G>>2]|0)|0;z=(o[h>>2]|0)-(o[z>>2]|0)|0;i=(o[g>>2]|0)-(o[i>>2]|0)|0;d=(o[v>>2]|0)-(o[d>>2]|0)|0;p=(o[A>>2]|0)-(o[p>>2]|0)|0;w=(o[S>>2]|0)-(o[w>>2]|0)|0;E=(o[x>>2]|0)-(o[E>>2]|0)|0;C=(o[O>>2]|0)-(o[C>>2]|0)|0;q=(o[R>>2]|0)-(o[q>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=z;z=e+52|0;o[z>>2]=i;i=e+56|0;o[i>>2]=d;d=e+60|0;o[d>>2]=p;p=e+64|0;o[p>>2]=w;w=e+68|0;o[w>>2]=E;E=e+72|0;o[E>>2]=C;C=e+76|0;o[C>>2]=q;q=e+80|0;Xr(q,e,n);Xr(X,X,n+40|0);R=e+120|0;Xr(R,n+80|0,t+120|0);O=o[t+80>>2]<<1;x=o[t+84>>2]<<1;S=o[t+88>>2]<<1;A=o[t+92>>2]<<1;v=o[t+96>>2]<<1;g=o[t+100>>2]<<1;h=o[t+104>>2]<<1;l=o[t+108>>2]<<1;a=o[t+112>>2]<<1;r=o[t+116>>2]<<1;J=o[q>>2]|0;F=e+84|0;W=o[F>>2]|0;L=e+88|0;H=o[L>>2]|0;U=e+92|0;t=o[U>>2]|0;j=e+96|0;s=o[j>>2]|0;B=e+100|0;c=o[B>>2]|0;N=e+104|0;m=o[N>>2]|0;D=e+108|0;y=o[D>>2]|0;M=e+112|0;k=o[M>>2]|0;P=e+116|0;T=o[P>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[z>>2]|0;n=o[i>>2]|0;f=o[d>>2]|0;u=o[p>>2]|0;b=o[w>>2]|0;_=o[E>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=t-K;o[ie>>2]=s-n;o[re>>2]=c-f;o[ne>>2]=m-u;o[te>>2]=y-b;o[ee>>2]=k-_;o[$>>2]=T-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[z>>2]=K+t;o[i>>2]=n+s;o[d>>2]=f+c;o[p>>2]=u+m;o[w>>2]=b+y;o[E>>2]=_+k;o[C>>2]=I+T;C=o[R>>2]|0;T=e+124|0;I=o[T>>2]|0;E=e+128|0;k=o[E>>2]|0;_=e+132|0;w=o[_>>2]|0;y=e+136|0;b=o[y>>2]|0;p=e+140|0;m=o[p>>2]|0;u=e+144|0;d=o[u>>2]|0;c=e+148|0;f=o[c>>2]|0;i=e+152|0;s=o[i>>2]|0;n=e+156|0;t=o[n>>2]|0;o[q>>2]=C+O;o[F>>2]=I+x;o[L>>2]=k+S;o[U>>2]=w+A;o[j>>2]=b+v;o[B>>2]=m+g;o[N>>2]=d+h;o[D>>2]=f+l;o[M>>2]=s+a;o[P>>2]=t+r;o[R>>2]=O-C;o[T>>2]=x-I;o[E>>2]=S-k;o[_>>2]=A-w;o[y>>2]=v-b;o[p>>2]=g-m;o[u>>2]=h-d;o[c>>2]=l-f;o[i>>2]=a-s;o[n>>2]=r-t;return}function fi(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;c=t+44|0;u=t+48|0;p=t+52|0;y=t+56|0;_=t+60|0;E=t+64|0;T=t+68|0;R=t+72|0;x=t+76|0;G=t+4|0;q=t+8|0;r=t+12|0;d=t+16|0;h=t+20|0;w=t+24|0;A=t+28|0;C=t+32|0;F=t+36|0;se=(o[G>>2]|0)+(o[c>>2]|0)|0;oe=(o[q>>2]|0)+(o[u>>2]|0)|0;ie=(o[r>>2]|0)+(o[p>>2]|0)|0;re=(o[d>>2]|0)+(o[y>>2]|0)|0;ne=(o[h>>2]|0)+(o[_>>2]|0)|0;te=(o[w>>2]|0)+(o[E>>2]|0)|0;ee=(o[A>>2]|0)+(o[T>>2]|0)|0;$=(o[C>>2]|0)+(o[R>>2]|0)|0;X=(o[F>>2]|0)+(o[x>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[c>>2]|0)-(o[G>>2]|0)|0;q=(o[u>>2]|0)-(o[q>>2]|0)|0;r=(o[p>>2]|0)-(o[r>>2]|0)|0;d=(o[y>>2]|0)-(o[d>>2]|0)|0;h=(o[_>>2]|0)-(o[h>>2]|0)|0;w=(o[E>>2]|0)-(o[w>>2]|0)|0;A=(o[T>>2]|0)-(o[A>>2]|0)|0;C=(o[R>>2]|0)-(o[C>>2]|0)|0;F=(o[x>>2]|0)-(o[F>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=q;q=e+52|0;o[q>>2]=r;r=e+56|0;o[r>>2]=d;d=e+60|0;o[d>>2]=h;h=e+64|0;o[h>>2]=w;w=e+68|0;o[w>>2]=A;A=e+72|0;o[A>>2]=C;C=e+76|0;o[C>>2]=F;F=e+80|0;Xr(F,e,n+40|0);Xr(X,X,n);x=e+120|0;Xr(x,n+80|0,t+120|0);R=o[t+80>>2]<<1;T=o[t+84>>2]<<1;E=o[t+88>>2]<<1;_=o[t+92>>2]<<1;y=o[t+96>>2]<<1;p=o[t+100>>2]<<1;u=o[t+104>>2]<<1;c=o[t+108>>2]<<1;i=o[t+112>>2]<<1;t=o[t+116>>2]<<1;J=o[F>>2]|0;L=e+84|0;W=o[L>>2]|0;U=e+88|0;H=o[U>>2]|0;j=e+92|0;z=o[j>>2]|0;B=e+96|0;s=o[B>>2]|0;N=e+100|0;a=o[N>>2]|0;D=e+104|0;m=o[D>>2]|0;M=e+108|0;g=o[M>>2]|0;P=e+112|0;k=o[P>>2]|0;O=e+116|0;S=o[O>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[q>>2]|0;n=o[r>>2]|0;f=o[d>>2]|0;l=o[h>>2]|0;b=o[w>>2]|0;v=o[A>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=z-K;o[ie>>2]=s-n;o[re>>2]=a-f;o[ne>>2]=m-l;o[te>>2]=g-b;o[ee>>2]=k-v;o[$>>2]=S-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[q>>2]=K+z;o[r>>2]=n+s;o[d>>2]=f+a;o[h>>2]=l+m;o[w>>2]=b+g;o[A>>2]=v+k;o[C>>2]=I+S;C=o[x>>2]|0;S=e+124|0;I=o[S>>2]|0;A=e+128|0;k=o[A>>2]|0;v=e+132|0;w=o[v>>2]|0;g=e+136|0;b=o[g>>2]|0;h=e+140|0;m=o[h>>2]|0;l=e+144|0;d=o[l>>2]|0;a=e+148|0;f=o[a>>2]|0;r=e+152|0;s=o[r>>2]|0;n=e+156|0;e=o[n>>2]|0;o[F>>2]=R-C;o[L>>2]=T-I;o[U>>2]=E-k;o[j>>2]=_-w;o[B>>2]=y-b;o[N>>2]=p-m;o[D>>2]=u-d;o[M>>2]=c-f;o[P>>2]=i-s;o[O>>2]=t-e;o[x>>2]=C+R;o[S>>2]=I+T;o[A>>2]=k+E;o[v>>2]=w+_;o[g>>2]=b+y;o[h>>2]=m+p;o[l>>2]=d+u;o[a>>2]=f+c;o[r>>2]=s+i;o[n>>2]=e+t;return}function li(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0;me=h;h=h+272|0;le=me+240|0;ue=me+192|0;c=me+144|0;f=me+96|0;de=me+48|0;he=me;pe=e+40|0;Qr(pe,t);l=e+80|0;o[l>>2]=1;a=e+84|0;n=a;i=n+36|0;do{o[n>>2]=0;n=n+4|0}while((n|0)<(i|0));Yr(ue,pe);Xr(c,ue,1248);te=ue+4|0;ne=ue+8|0;re=ue+12|0;ie=ue+16|0;oe=ue+20|0;se=ue+24|0;ae=ue+28|0;ce=ue+32|0;fe=ue+36|0;C=o[l>>2]|0;R=o[a>>2]|0;I=o[e+88>>2]|0;S=o[e+92>>2]|0;E=o[e+96>>2]|0;w=o[e+100>>2]|0;i=o[e+104>>2]|0;ee=o[e+108>>2]|0;Z=o[e+112>>2]|0;X=o[e+116>>2]|0;v=(o[ue>>2]|0)-C|0;_=(o[te>>2]|0)-R|0;l=(o[ne>>2]|0)-I|0;u=(o[re>>2]|0)-S|0;d=(o[ie>>2]|0)-E|0;p=(o[oe>>2]|0)-w|0;m=(o[se>>2]|0)-i|0;g=(o[ae>>2]|0)-ee|0;y=(o[ce>>2]|0)-Z|0;b=(o[fe>>2]|0)-X|0;o[ue>>2]=v;o[te>>2]=_;o[ne>>2]=l;o[re>>2]=u;o[ie>>2]=d;o[oe>>2]=p;o[se>>2]=m;o[ae>>2]=g;o[ce>>2]=y;o[fe>>2]=b;x=c+4|0;T=c+8|0;k=c+12|0;A=c+16|0;a=c+20|0;n=c+24|0;$=c+28|0;J=c+32|0;Y=c+36|0;R=(o[x>>2]|0)+R|0;I=(o[T>>2]|0)+I|0;S=(o[k>>2]|0)+S|0;E=(o[A>>2]|0)+E|0;w=(o[a>>2]|0)+w|0;i=(o[n>>2]|0)+i|0;ee=(o[$>>2]|0)+ee|0;Z=(o[J>>2]|0)+Z|0;X=(o[Y>>2]|0)+X|0;o[c>>2]=(o[c>>2]|0)+C;o[x>>2]=R;o[T>>2]=I;o[k>>2]=S;o[A>>2]=E;o[a>>2]=w;o[n>>2]=i;o[$>>2]=ee;o[J>>2]=Z;o[Y>>2]=X;Yr(f,c);Xr(f,f,c);Yr(e,f);Xr(e,e,c);Xr(e,e,ue);Zr(e,e);Xr(e,e,f);Xr(e,e,ue);Yr(de,e);Xr(de,de,c);Y=de+4|0;X=de+8|0;J=de+12|0;Z=de+16|0;$=de+20|0;ee=de+24|0;n=de+28|0;i=de+32|0;a=de+36|0;f=(o[Y>>2]|0)-_|0;l=(o[X>>2]|0)-l|0;u=(o[J>>2]|0)-u|0;d=(o[Z>>2]|0)-d|0;p=(o[$>>2]|0)-p|0;m=(o[ee>>2]|0)-m|0;g=(o[n>>2]|0)-g|0;y=(o[i>>2]|0)-y|0;b=(o[a>>2]|0)-b|0;o[he>>2]=(o[de>>2]|0)-v;c=he+4|0;o[c>>2]=f;f=he+8|0;o[f>>2]=l;l=he+12|0;o[l>>2]=u;u=he+16|0;o[u>>2]=d;d=he+20|0;o[d>>2]=p;p=he+24|0;o[p>>2]=m;m=he+28|0;o[m>>2]=g;g=he+32|0;o[g>>2]=y;y=he+36|0;o[y>>2]=b;Jr(le,he);b=le+1|0;v=le+2|0;_=le+3|0;w=le+4|0;A=le+5|0;E=le+6|0;k=le+7|0;S=le+8|0;T=le+9|0;I=le+10|0;x=le+11|0;R=le+12|0;C=le+13|0;O=le+14|0;P=le+15|0;M=le+16|0;D=le+17|0;N=le+18|0;B=le+19|0;j=le+20|0;U=le+21|0;L=le+22|0;F=le+23|0;q=le+24|0;z=le+25|0;K=le+26|0;G=le+27|0;H=le+28|0;V=le+29|0;Q=le+30|0;W=le+31|0;do{if((r[b>>0]|r[le>>0]|r[v>>0]|r[_>>0]|r[w>>0]|r[A>>0]|r[E>>0]|r[k>>0]|r[S>>0]|r[T>>0]|r[I>>0]|r[x>>0]|r[R>>0]|r[C>>0]|r[O>>0]|r[P>>0]|r[M>>0]|r[D>>0]|r[N>>0]|r[B>>0]|r[j>>0]|r[U>>0]|r[L>>0]|r[F>>0]|r[q>>0]|r[z>>0]|r[K>>0]|r[G>>0]|r[H>>0]|r[V>>0]|r[Q>>0]|r[W>>0])<<24>>24){te=(o[te>>2]|0)+(o[Y>>2]|0)|0;ne=(o[ne>>2]|0)+(o[X>>2]|0)|0;re=(o[re>>2]|0)+(o[J>>2]|0)|0;ie=(o[ie>>2]|0)+(o[Z>>2]|0)|0;oe=(o[oe>>2]|0)+(o[$>>2]|0)|0;se=(o[se>>2]|0)+(o[ee>>2]|0)|0;ae=(o[ae>>2]|0)+(o[n>>2]|0)|0;ce=(o[ce>>2]|0)+(o[i>>2]|0)|0;fe=(o[fe>>2]|0)+(o[a>>2]|0)|0;o[he>>2]=(o[ue>>2]|0)+(o[de>>2]|0);o[c>>2]=te;o[f>>2]=ne;o[l>>2]=re;o[u>>2]=ie;o[d>>2]=oe;o[p>>2]=se;o[m>>2]=ae;o[g>>2]=ce;o[y>>2]=fe;Jr(le,he);if(!((r[b>>0]|r[le>>0]|r[v>>0]|r[_>>0]|r[w>>0]|r[A>>0]|r[E>>0]|r[k>>0]|r[S>>0]|r[T>>0]|r[I>>0]|r[x>>0]|r[R>>0]|r[C>>0]|r[O>>0]|r[P>>0]|r[M>>0]|r[D>>0]|r[N>>0]|r[B>>0]|r[j>>0]|r[U>>0]|r[L>>0]|r[F>>0]|r[q>>0]|r[z>>0]|r[K>>0]|r[G>>0]|r[H>>0]|r[V>>0]|r[Q>>0]|r[W>>0])<<24>>24)){Xr(e,e,1296);break}else{pe=-1;h=me;return pe|0}}}while(0);Jr(le,e);if(((s[t+31>>0]|0)>>>7|0)==(r[le>>0]&1|0)){Z=e+4|0;ee=e+8|0;ne=e+12|0;ie=e+16|0;se=e+20|0;ce=e+24|0;t=e+28|0;ue=e+32|0;he=e+36|0;J=0-(o[Z>>2]|0)|0;$=0-(o[ee>>2]|0)|0;te=0-(o[ne>>2]|0)|0;re=0-(o[ie>>2]|0)|0;oe=0-(o[se>>2]|0)|0;ae=0-(o[ce>>2]|0)|0;fe=0-(o[t>>2]|0)|0;le=0-(o[ue>>2]|0)|0;de=0-(o[he>>2]|0)|0;o[e>>2]=0-(o[e>>2]|0);o[Z>>2]=J;o[ee>>2]=$;o[ne>>2]=te;o[ie>>2]=re;o[se>>2]=oe;o[ce>>2]=ae;o[t>>2]=fe;o[ue>>2]=le;o[he>>2]=de}Xr(e+120|0,e,pe);pe=0;h=me;return pe|0}function ui(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0;v=h;h=h+592|0;p=v+464|0;g=v;y=v+304|0;m=v+184|0;b=v+64|0;i=r[t>>0]|0;r[g>>0]=i&15;r[g+1>>0]=(i&255)>>>4;i=r[t+1>>0]|0;r[g+2>>0]=i&15;r[g+3>>0]=(i&255)>>>4;i=r[t+2>>0]|0;r[g+4>>0]=i&15;r[g+5>>0]=(i&255)>>>4;i=r[t+3>>0]|0;r[g+6>>0]=i&15;r[g+7>>0]=(i&255)>>>4;i=r[t+4>>0]|0;r[g+8>>0]=i&15;r[g+9>>0]=(i&255)>>>4;i=r[t+5>>0]|0;r[g+10>>0]=i&15;r[g+11>>0]=(i&255)>>>4;i=r[t+6>>0]|0;r[g+12>>0]=i&15;r[g+13>>0]=(i&255)>>>4;i=r[t+7>>0]|0;r[g+14>>0]=i&15;r[g+15>>0]=(i&255)>>>4;i=r[t+8>>0]|0;r[g+16>>0]=i&15;r[g+17>>0]=(i&255)>>>4;i=r[t+9>>0]|0;r[g+18>>0]=i&15;r[g+19>>0]=(i&255)>>>4;i=r[t+10>>0]|0;r[g+20>>0]=i&15;r[g+21>>0]=(i&255)>>>4;i=r[t+11>>0]|0;r[g+22>>0]=i&15;r[g+23>>0]=(i&255)>>>4;i=r[t+12>>0]|0;r[g+24>>0]=i&15;r[g+25>>0]=(i&255)>>>4;i=r[t+13>>0]|0;r[g+26>>0]=i&15;r[g+27>>0]=(i&255)>>>4;i=r[t+14>>0]|0;r[g+28>>0]=i&15;r[g+29>>0]=(i&255)>>>4;i=r[t+15>>0]|0;r[g+30>>0]=i&15;r[g+31>>0]=(i&255)>>>4;i=r[t+16>>0]|0;r[g+32>>0]=i&15;r[g+33>>0]=(i&255)>>>4;i=r[t+17>>0]|0;r[g+34>>0]=i&15;r[g+35>>0]=(i&255)>>>4;i=r[t+18>>0]|0;r[g+36>>0]=i&15;r[g+37>>0]=(i&255)>>>4;i=r[t+19>>0]|0;r[g+38>>0]=i&15;r[g+39>>0]=(i&255)>>>4;i=r[t+20>>0]|0;r[g+40>>0]=i&15;r[g+41>>0]=(i&255)>>>4;i=r[t+21>>0]|0;r[g+42>>0]=i&15;r[g+43>>0]=(i&255)>>>4;i=r[t+22>>0]|0;r[g+44>>0]=i&15;r[g+45>>0]=(i&255)>>>4;i=r[t+23>>0]|0;r[g+46>>0]=i&15;r[g+47>>0]=(i&255)>>>4;i=r[t+24>>0]|0;r[g+48>>0]=i&15;r[g+49>>0]=(i&255)>>>4;i=r[t+25>>0]|0;r[g+50>>0]=i&15;r[g+51>>0]=(i&255)>>>4;i=r[t+26>>0]|0;r[g+52>>0]=i&15;r[g+53>>0]=(i&255)>>>4;i=r[t+27>>0]|0;r[g+54>>0]=i&15;r[g+55>>0]=(i&255)>>>4;i=r[t+28>>0]|0;r[g+56>>0]=i&15;r[g+57>>0]=(i&255)>>>4;i=r[t+29>>0]|0;r[g+58>>0]=i&15;r[g+59>>0]=(i&255)>>>4;i=r[t+30>>0]|0;r[g+60>>0]=i&15;r[g+61>>0]=(i&255)>>>4;t=r[t+31>>0]|0;r[g+62>>0]=t&15;i=g+63|0;r[i>>0]=(t&255)>>>4;t=0;n=0;do{d=g+n|0;u=t+(s[d>>0]|0)|0;t=(u<<24)+134217728>>28;r[d>>0]=u-(t<<4);n=n+1|0}while((n|0)!=63);r[i>>0]=t+(s[i>>0]|0);t=e;n=t+40|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));u=e+40|0;o[u>>2]=1;f=e+44|0;t=f;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));d=e+80|0;o[d>>2]=1;l=e+84|0;t=l;n=t+76|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));n=y+120|0;i=y+40|0;a=y+80|0;c=e+120|0;t=1;do{di(b,t>>>1,r[g+t>>0]|0);ci(y,e,b);Xr(e,y,n);Xr(u,i,a);Xr(d,a,n);Xr(c,y,i);t=t+2|0}while(t>>>0<64);I=o[e+4>>2]|0;S=o[e+8>>2]|0;k=o[e+12>>2]|0;E=o[e+16>>2]|0;A=o[e+20>>2]|0;w=o[e+24>>2]|0;_=o[e+28>>2]|0;t=o[e+32>>2]|0;T=o[e+36>>2]|0;o[p>>2]=o[e>>2];o[p+4>>2]=I;o[p+8>>2]=S;o[p+12>>2]=k;o[p+16>>2]=E;o[p+20>>2]=A;o[p+24>>2]=w;o[p+28>>2]=_;o[p+32>>2]=t;o[p+36>>2]=T;T=o[f>>2]|0;t=o[e+48>>2]|0;f=o[e+52>>2]|0;_=o[e+56>>2]|0;w=o[e+60>>2]|0;A=o[e+64>>2]|0;E=o[e+68>>2]|0;k=o[e+72>>2]|0;S=o[e+76>>2]|0;o[p+40>>2]=o[u>>2];o[p+44>>2]=T;o[p+48>>2]=t;o[p+52>>2]=f;o[p+56>>2]=_;o[p+60>>2]=w;o[p+64>>2]=A;o[p+68>>2]=E;o[p+72>>2]=k;o[p+76>>2]=S;S=o[l>>2]|0;k=o[e+88>>2]|0;E=o[e+92>>2]|0;A=o[e+96>>2]|0;w=o[e+100>>2]|0;_=o[e+104>>2]|0;f=o[e+108>>2]|0;l=o[e+112>>2]|0;t=o[e+116>>2]|0;o[p+80>>2]=o[d>>2];o[p+84>>2]=S;o[p+88>>2]=k;o[p+92>>2]=E;o[p+96>>2]=A;o[p+100>>2]=w;o[p+104>>2]=_;o[p+108>>2]=f;o[p+112>>2]=l;o[p+116>>2]=t;si(y,p);Xr(m,y,n);p=m+40|0;Xr(p,i,a);t=m+80|0;Xr(t,a,n);si(y,m);Xr(m,y,n);Xr(p,i,a);Xr(t,a,n);si(y,m);Xr(m,y,n);Xr(p,i,a);Xr(t,a,n);si(y,m);Xr(e,y,n);Xr(u,i,a);Xr(d,a,n);Xr(c,y,i);t=0;do{di(b,t>>>1,r[g+t>>0]|0);ci(y,e,b);Xr(e,y,n);Xr(u,i,a);Xr(d,a,n);Xr(c,y,i);t=t+2|0}while(t>>>0<64);h=v;return}function di(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0;r=n<<24>>24;b=0-((n&255)>>>7&255)|0;n=r-((b&r)<<1)&255;o[e>>2]=1;r=e+4|0;v=r;_=v+36|0;do{o[v>>2]=0;v=v+4|0}while((v|0)<(_|0));i=e+40|0;o[i>>2]=1;s=e+44|0;a=e+80|0;c=ks((n^1)&255|0,0,-1,-1)|0;c=Cs(c|0,T|0,63)|0;f=1344+(t*960|0)|0;l=e+8|0;u=e+12|0;d=e+16|0;h=e+20|0;p=e+24|0;m=e+28|0;g=e+32|0;y=e+36|0;v=s;_=v+76|0;do{o[v>>2]=0;v=v+4|0}while((v|0)<(_|0));_e=0-c|0;ye=o[1344+(t*960|0)+4>>2]&_e;ge=o[1344+(t*960|0)+8>>2]&_e;me=o[1344+(t*960|0)+12>>2]&_e;pe=o[1344+(t*960|0)+16>>2]&_e;he=o[1344+(t*960|0)+20>>2]&_e;de=o[1344+(t*960|0)+24>>2]&_e;ue=o[1344+(t*960|0)+28>>2]&_e;le=o[1344+(t*960|0)+32>>2]&_e;fe=o[1344+(t*960|0)+36>>2]&_e;be=(o[f>>2]^1)&_e^1;o[e>>2]=be;o[r>>2]=ye;o[l>>2]=ge;o[u>>2]=me;o[d>>2]=pe;o[h>>2]=he;o[p>>2]=de;o[m>>2]=ue;o[g>>2]=le;o[y>>2]=fe;ne=e+48|0;$=e+52|0;X=e+56|0;Q=e+60|0;G=e+64|0;q=e+68|0;U=e+72|0;N=e+76|0;oe=o[1344+(t*960|0)+44>>2]&_e;re=o[1344+(t*960|0)+48>>2]&_e;ee=o[1344+(t*960|0)+52>>2]&_e;J=o[1344+(t*960|0)+56>>2]&_e;W=o[1344+(t*960|0)+60>>2]&_e;H=o[1344+(t*960|0)+64>>2]&_e;z=o[1344+(t*960|0)+68>>2]&_e;L=o[1344+(t*960|0)+72>>2]&_e;B=o[1344+(t*960|0)+76>>2]&_e;ae=(o[1344+(t*960|0)+40>>2]^1)&_e^1;o[i>>2]=ae;o[s>>2]=oe;o[ne>>2]=re;o[$>>2]=ee;o[X>>2]=J;o[Q>>2]=W;o[G>>2]=H;o[q>>2]=z;o[U>>2]=L;o[N>>2]=B;D=o[a>>2]|0;P=e+84|0;M=o[P>>2]|0;C=e+88|0;O=o[C>>2]|0;x=e+92|0;R=o[x>>2]|0;S=e+96|0;I=o[S>>2]|0;E=e+100|0;k=o[E>>2]|0;w=e+104|0;A=o[w>>2]|0;c=e+108|0;Z=o[c>>2]|0;v=e+112|0;f=o[v>>2]|0;_=e+116|0;se=o[_>>2]|0;ie=(o[1344+(t*960|0)+84>>2]^M)&_e;te=(o[1344+(t*960|0)+88>>2]^O)&_e;Y=(o[1344+(t*960|0)+92>>2]^R)&_e;V=(o[1344+(t*960|0)+96>>2]^I)&_e;K=(o[1344+(t*960|0)+100>>2]^k)&_e;F=(o[1344+(t*960|0)+104>>2]^A)&_e;j=(o[1344+(t*960|0)+108>>2]^Z)&_e;ce=(o[1344+(t*960|0)+112>>2]^f)&_e;ve=(o[1344+(t*960|0)+116>>2]^se)&_e;D=(o[1344+(t*960|0)+80>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^2)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+124>>2]^ye)&ve;j=(o[1344+(t*960|0)+128>>2]^ge)&ve;F=(o[1344+(t*960|0)+132>>2]^me)&ve;K=(o[1344+(t*960|0)+136>>2]^pe)&ve;V=(o[1344+(t*960|0)+140>>2]^he)&ve;Y=(o[1344+(t*960|0)+144>>2]^de)&ve;te=(o[1344+(t*960|0)+148>>2]^ue)&ve;ie=(o[1344+(t*960|0)+152>>2]^le)&ve;_e=(o[1344+(t*960|0)+156>>2]^fe)&ve;be=(o[1344+(t*960|0)+120>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=te^ue;o[m>>2]=ue;le=ie^le;o[g>>2]=le;fe=_e^fe;o[y>>2]=fe;_e=(o[1344+(t*960|0)+164>>2]^oe)&ve;ie=(o[1344+(t*960|0)+168>>2]^re)&ve;te=(o[1344+(t*960|0)+172>>2]^ee)&ve;Y=(o[1344+(t*960|0)+176>>2]^J)&ve;V=(o[1344+(t*960|0)+180>>2]^W)&ve;K=(o[1344+(t*960|0)+184>>2]^H)&ve;F=(o[1344+(t*960|0)+188>>2]^z)&ve;j=(o[1344+(t*960|0)+192>>2]^L)&ve;ce=(o[1344+(t*960|0)+196>>2]^B)&ve;ae=(o[1344+(t*960|0)+160>>2]^ae)&ve^ae;o[i>>2]=ae;oe=_e^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;B=ce^B;o[N>>2]=B;ce=(o[1344+(t*960|0)+204>>2]^M)&ve;j=(o[1344+(t*960|0)+208>>2]^O)&ve;F=(o[1344+(t*960|0)+212>>2]^R)&ve;K=(o[1344+(t*960|0)+216>>2]^I)&ve;V=(o[1344+(t*960|0)+220>>2]^k)&ve;Y=(o[1344+(t*960|0)+224>>2]^A)&ve;te=(o[1344+(t*960|0)+228>>2]^Z)&ve;ie=(o[1344+(t*960|0)+232>>2]^f)&ve;_e=(o[1344+(t*960|0)+236>>2]^se)&ve;D=(o[1344+(t*960|0)+200>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;Z=te^Z;o[c>>2]=Z;f=ie^f;o[v>>2]=f;se=_e^se;o[_>>2]=se;_e=ks((n^3)&255|0,0,-1,-1)|0;_e=Cs(_e|0,T|0,63)|0;_e=0-_e|0;ie=(o[1344+(t*960|0)+244>>2]^ye)&_e;te=(o[1344+(t*960|0)+248>>2]^ge)&_e;Y=(o[1344+(t*960|0)+252>>2]^me)&_e;V=(o[1344+(t*960|0)+256>>2]^pe)&_e;K=(o[1344+(t*960|0)+260>>2]^he)&_e;F=(o[1344+(t*960|0)+264>>2]^de)&_e;j=(o[1344+(t*960|0)+268>>2]^ue)&_e;ce=(o[1344+(t*960|0)+272>>2]^le)&_e;ve=(o[1344+(t*960|0)+276>>2]^fe)&_e;be=(o[1344+(t*960|0)+240>>2]^be)&_e^be;o[e>>2]=be;ye=ie^ye;o[r>>2]=ye;ge=te^ge;o[l>>2]=ge;me=Y^me;o[u>>2]=me;pe=V^pe;o[d>>2]=pe;he=K^he;o[h>>2]=he;de=F^de;o[p>>2]=de;ue=j^ue;o[m>>2]=ue;le=ce^le;o[g>>2]=le;fe=ve^fe;o[y>>2]=fe;ve=(o[1344+(t*960|0)+284>>2]^oe)&_e;ce=(o[1344+(t*960|0)+288>>2]^re)&_e;j=(o[1344+(t*960|0)+292>>2]^ee)&_e;F=(o[1344+(t*960|0)+296>>2]^J)&_e;K=(o[1344+(t*960|0)+300>>2]^W)&_e;V=(o[1344+(t*960|0)+304>>2]^H)&_e;Y=(o[1344+(t*960|0)+308>>2]^z)&_e;te=(o[1344+(t*960|0)+312>>2]^L)&_e;ie=(o[1344+(t*960|0)+316>>2]^B)&_e;ae=(o[1344+(t*960|0)+280>>2]^ae)&_e^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ce^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=F^J;o[X>>2]=J;W=K^W;o[Q>>2]=W;H=V^H;o[G>>2]=H;z=Y^z;o[q>>2]=z;L=te^L;o[U>>2]=L;B=ie^B;o[N>>2]=B;ie=(o[1344+(t*960|0)+324>>2]^M)&_e;te=(o[1344+(t*960|0)+328>>2]^O)&_e;Y=(o[1344+(t*960|0)+332>>2]^R)&_e;V=(o[1344+(t*960|0)+336>>2]^I)&_e;K=(o[1344+(t*960|0)+340>>2]^k)&_e;F=(o[1344+(t*960|0)+344>>2]^A)&_e;j=(o[1344+(t*960|0)+348>>2]^Z)&_e;ce=(o[1344+(t*960|0)+352>>2]^f)&_e;ve=(o[1344+(t*960|0)+356>>2]^se)&_e;D=(o[1344+(t*960|0)+320>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^4)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+364>>2]^ye)&ve;j=(o[1344+(t*960|0)+368>>2]^ge)&ve;F=(o[1344+(t*960|0)+372>>2]^me)&ve;K=(o[1344+(t*960|0)+376>>2]^pe)&ve;V=(o[1344+(t*960|0)+380>>2]^he)&ve;Y=(o[1344+(t*960|0)+384>>2]^de)&ve;te=(o[1344+(t*960|0)+388>>2]^ue)&ve;ie=(o[1344+(t*960|0)+392>>2]^le)&ve;_e=(o[1344+(t*960|0)+396>>2]^fe)&ve;be=(o[1344+(t*960|0)+360>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=te^ue;o[m>>2]=ue;le=ie^le;o[g>>2]=le;fe=_e^fe;o[y>>2]=fe;_e=(o[1344+(t*960|0)+404>>2]^oe)&ve;ie=(o[1344+(t*960|0)+408>>2]^re)&ve;te=(o[1344+(t*960|0)+412>>2]^ee)&ve;Y=(o[1344+(t*960|0)+416>>2]^J)&ve;V=(o[1344+(t*960|0)+420>>2]^W)&ve;K=(o[1344+(t*960|0)+424>>2]^H)&ve;F=(o[1344+(t*960|0)+428>>2]^z)&ve;j=(o[1344+(t*960|0)+432>>2]^L)&ve;ce=(o[1344+(t*960|0)+436>>2]^B)&ve;ae=(o[1344+(t*960|0)+400>>2]^ae)&ve^ae;o[i>>2]=ae;oe=_e^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;B=ce^B;o[N>>2]=B;ce=(o[1344+(t*960|0)+444>>2]^M)&ve;j=(o[1344+(t*960|0)+448>>2]^O)&ve;F=(o[1344+(t*960|0)+452>>2]^R)&ve;K=(o[1344+(t*960|0)+456>>2]^I)&ve;V=(o[1344+(t*960|0)+460>>2]^k)&ve;Y=(o[1344+(t*960|0)+464>>2]^A)&ve;te=(o[1344+(t*960|0)+468>>2]^Z)&ve;ie=(o[1344+(t*960|0)+472>>2]^f)&ve;_e=(o[1344+(t*960|0)+476>>2]^se)&ve;D=(o[1344+(t*960|0)+440>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;Z=te^Z;o[c>>2]=Z;f=ie^f;o[v>>2]=f;se=_e^se;o[_>>2]=se;_e=ks((n^5)&255|0,0,-1,-1)|0;_e=Cs(_e|0,T|0,63)|0;_e=0-_e|0;ie=(o[1344+(t*960|0)+484>>2]^ye)&_e;te=(o[1344+(t*960|0)+488>>2]^ge)&_e;Y=(o[1344+(t*960|0)+492>>2]^me)&_e;V=(o[1344+(t*960|0)+496>>2]^pe)&_e;K=(o[1344+(t*960|0)+500>>2]^he)&_e;F=(o[1344+(t*960|0)+504>>2]^de)&_e;j=(o[1344+(t*960|0)+508>>2]^ue)&_e;ce=(o[1344+(t*960|0)+512>>2]^le)&_e;ve=(o[1344+(t*960|0)+516>>2]^fe)&_e;be=(o[1344+(t*960|0)+480>>2]^be)&_e^be;o[e>>2]=be;ye=ie^ye;o[r>>2]=ye;ge=te^ge;o[l>>2]=ge;me=Y^me;o[u>>2]=me;pe=V^pe;o[d>>2]=pe;he=K^he;o[h>>2]=he;de=F^de;o[p>>2]=de;ue=j^ue;o[m>>2]=ue;le=ce^le;o[g>>2]=le;fe=ve^fe;o[y>>2]=fe;ve=(o[1344+(t*960|0)+524>>2]^oe)&_e;ce=(o[1344+(t*960|0)+528>>2]^re)&_e;j=(o[1344+(t*960|0)+532>>2]^ee)&_e;F=(o[1344+(t*960|0)+536>>2]^J)&_e;K=(o[1344+(t*960|0)+540>>2]^W)&_e;V=(o[1344+(t*960|0)+544>>2]^H)&_e;Y=(o[1344+(t*960|0)+548>>2]^z)&_e;te=(o[1344+(t*960|0)+552>>2]^L)&_e;ie=(o[1344+(t*960|0)+556>>2]^B)&_e;ae=(o[1344+(t*960|0)+520>>2]^ae)&_e^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ce^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=F^J;o[X>>2]=J;W=K^W;o[Q>>2]=W;H=V^H;o[G>>2]=H;z=Y^z;o[q>>2]=z;L=te^L;o[U>>2]=L;B=ie^B;o[N>>2]=B;ie=(o[1344+(t*960|0)+564>>2]^M)&_e;te=(o[1344+(t*960|0)+568>>2]^O)&_e;Y=(o[1344+(t*960|0)+572>>2]^R)&_e;V=(o[1344+(t*960|0)+576>>2]^I)&_e;K=(o[1344+(t*960|0)+580>>2]^k)&_e;F=(o[1344+(t*960|0)+584>>2]^A)&_e;j=(o[1344+(t*960|0)+588>>2]^Z)&_e;ce=(o[1344+(t*960|0)+592>>2]^f)&_e;ve=(o[1344+(t*960|0)+596>>2]^se)&_e;D=(o[1344+(t*960|0)+560>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^6)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+604>>2]^ye)&ve;j=(o[1344+(t*960|0)+608>>2]^ge)&ve;F=(o[1344+(t*960|0)+612>>2]^me)&ve;K=(o[1344+(t*960|0)+616>>2]^pe)&ve;V=(o[1344+(t*960|0)+620>>2]^he)&ve;Y=(o[1344+(t*960|0)+624>>2]^de)&ve;te=(o[1344+(t*960|0)+628>>2]^ue)&ve;ie=(o[1344+(t*960|0)+632>>2]^le)&ve;_e=(o[1344+(t*960|0)+636>>2]^fe)&ve;be=(o[1344+(t*960|0)+600>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=te^ue;o[m>>2]=ue;le=ie^le;o[g>>2]=le;fe=_e^fe;o[y>>2]=fe;_e=(o[1344+(t*960|0)+644>>2]^oe)&ve;ie=(o[1344+(t*960|0)+648>>2]^re)&ve;te=(o[1344+(t*960|0)+652>>2]^ee)&ve;Y=(o[1344+(t*960|0)+656>>2]^J)&ve;V=(o[1344+(t*960|0)+660>>2]^W)&ve;K=(o[1344+(t*960|0)+664>>2]^H)&ve;F=(o[1344+(t*960|0)+668>>2]^z)&ve;j=(o[1344+(t*960|0)+672>>2]^L)&ve;ce=(o[1344+(t*960|0)+676>>2]^B)&ve;ae=(o[1344+(t*960|0)+640>>2]^ae)&ve^ae;o[i>>2]=ae;oe=_e^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;B=ce^B;o[N>>2]=B;ce=(o[1344+(t*960|0)+684>>2]^M)&ve;j=(o[1344+(t*960|0)+688>>2]^O)&ve;F=(o[1344+(t*960|0)+692>>2]^R)&ve;K=(o[1344+(t*960|0)+696>>2]^I)&ve;V=(o[1344+(t*960|0)+700>>2]^k)&ve;Y=(o[1344+(t*960|0)+704>>2]^A)&ve;te=(o[1344+(t*960|0)+708>>2]^Z)&ve;ie=(o[1344+(t*960|0)+712>>2]^f)&ve;_e=(o[1344+(t*960|0)+716>>2]^se)&ve;D=(o[1344+(t*960|0)+680>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;Z=te^Z;o[c>>2]=Z;f=ie^f;o[v>>2]=f;se=_e^se;o[_>>2]=se;_e=ks((n^7)&255|0,0,-1,-1)|0;_e=Cs(_e|0,T|0,63)|0;_e=0-_e|0;ie=(o[1344+(t*960|0)+724>>2]^ye)&_e;te=(o[1344+(t*960|0)+728>>2]^ge)&_e;Y=(o[1344+(t*960|0)+732>>2]^me)&_e;V=(o[1344+(t*960|0)+736>>2]^pe)&_e;K=(o[1344+(t*960|0)+740>>2]^he)&_e;F=(o[1344+(t*960|0)+744>>2]^de)&_e;j=(o[1344+(t*960|0)+748>>2]^ue)&_e;ce=(o[1344+(t*960|0)+752>>2]^le)&_e;ve=(o[1344+(t*960|0)+756>>2]^fe)&_e;be=(o[1344+(t*960|0)+720>>2]^be)&_e^be;o[e>>2]=be;ye=ie^ye;o[r>>2]=ye;ge=te^ge;o[l>>2]=ge;me=Y^me;o[u>>2]=me;pe=V^pe;o[d>>2]=pe;he=K^he;o[h>>2]=he;de=F^de;o[p>>2]=de;ue=j^ue;o[m>>2]=ue;le=ce^le;o[g>>2]=le;fe=ve^fe;o[y>>2]=fe;ve=(o[1344+(t*960|0)+764>>2]^oe)&_e;ce=(o[1344+(t*960|0)+768>>2]^re)&_e;j=(o[1344+(t*960|0)+772>>2]^ee)&_e;F=(o[1344+(t*960|0)+776>>2]^J)&_e;K=(o[1344+(t*960|0)+780>>2]^W)&_e;V=(o[1344+(t*960|0)+784>>2]^H)&_e;Y=(o[1344+(t*960|0)+788>>2]^z)&_e;te=(o[1344+(t*960|0)+792>>2]^L)&_e;ie=(o[1344+(t*960|0)+796>>2]^B)&_e;ae=(o[1344+(t*960|0)+760>>2]^ae)&_e^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ce^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=F^J;o[X>>2]=J;W=K^W;o[Q>>2]=W;H=V^H;o[G>>2]=H;z=Y^z;o[q>>2]=z;L=te^L;o[U>>2]=L;B=ie^B;o[N>>2]=B;ie=(o[1344+(t*960|0)+804>>2]^M)&_e;te=(o[1344+(t*960|0)+808>>2]^O)&_e;Y=(o[1344+(t*960|0)+812>>2]^R)&_e;V=(o[1344+(t*960|0)+816>>2]^I)&_e;K=(o[1344+(t*960|0)+820>>2]^k)&_e;F=(o[1344+(t*960|0)+824>>2]^A)&_e;j=(o[1344+(t*960|0)+828>>2]^Z)&_e;ce=(o[1344+(t*960|0)+832>>2]^f)&_e;ve=(o[1344+(t*960|0)+836>>2]^se)&_e;D=(o[1344+(t*960|0)+800>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^8)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+844>>2]^ye)&ve;j=(o[1344+(t*960|0)+848>>2]^ge)&ve;F=(o[1344+(t*960|0)+852>>2]^me)&ve;K=(o[1344+(t*960|0)+856>>2]^pe)&ve;V=(o[1344+(t*960|0)+860>>2]^he)&ve;Y=(o[1344+(t*960|0)+864>>2]^de)&ve;n=(o[1344+(t*960|0)+868>>2]^ue)&ve;te=(o[1344+(t*960|0)+872>>2]^le)&ve;ie=(o[1344+(t*960|0)+876>>2]^fe)&ve;be=(o[1344+(t*960|0)+840>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=n^ue;o[m>>2]=ue;le=te^le;o[g>>2]=le;fe=ie^fe;o[y>>2]=fe;ie=(o[1344+(t*960|0)+884>>2]^oe)&ve;te=(o[1344+(t*960|0)+888>>2]^re)&ve;n=(o[1344+(t*960|0)+892>>2]^ee)&ve;Y=(o[1344+(t*960|0)+896>>2]^J)&ve;V=(o[1344+(t*960|0)+900>>2]^W)&ve;K=(o[1344+(t*960|0)+904>>2]^H)&ve;F=(o[1344+(t*960|0)+908>>2]^z)&ve;j=(o[1344+(t*960|0)+912>>2]^L)&ve;ce=(o[1344+(t*960|0)+916>>2]^B)&ve;ae=(o[1344+(t*960|0)+880>>2]^ae)&ve^ae;o[i>>2]=ae;oe=ie^oe;o[s>>2]=oe;re=te^re;o[ne>>2]=re;ee=n^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;B=ce^B;o[N>>2]=B;ce=(o[1344+(t*960|0)+924>>2]^M)&ve;j=(o[1344+(t*960|0)+928>>2]^O)&ve;F=(o[1344+(t*960|0)+932>>2]^R)&ve;K=(o[1344+(t*960|0)+936>>2]^I)&ve;V=(o[1344+(t*960|0)+940>>2]^k)&ve;Y=(o[1344+(t*960|0)+944>>2]^A)&ve;n=(o[1344+(t*960|0)+948>>2]^Z)&ve;te=(o[1344+(t*960|0)+952>>2]^f)&ve;ie=(o[1344+(t*960|0)+956>>2]^se)&ve;D=(o[1344+(t*960|0)+920>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;n=n^Z;o[c>>2]=n;f=te^f;o[v>>2]=f;t=ie^se;o[_>>2]=t;se=o[r>>2]|0;ie=o[l>>2]|0;te=o[u>>2]|0;Z=o[d>>2]|0;Y=o[h>>2]|0;V=o[p>>2]|0;K=o[m>>2]|0;F=o[g>>2]|0;j=o[y>>2]|0;ce=(ae^be)&b;o[e>>2]=ce^be;o[r>>2]=(oe^ye)&b^ye;o[l>>2]=(re^ge)&b^ge;o[u>>2]=(ee^me)&b^me;o[d>>2]=(J^pe)&b^pe;o[h>>2]=(W^he)&b^he;o[p>>2]=(H^de)&b^de;o[m>>2]=(z^ue)&b^ue;o[g>>2]=(L^le)&b^le;o[y>>2]=(B^fe)&b^fe;o[i>>2]=ce^ae;o[s>>2]=(se^oe)&b^oe;o[ne>>2]=(ie^re)&b^re;o[$>>2]=(te^ee)&b^ee;o[X>>2]=(Z^J)&b^J;o[Q>>2]=(Y^W)&b^W;o[G>>2]=(V^H)&b^H;o[q>>2]=(K^z)&b^z;o[U>>2]=(F^L)&b^L;o[N>>2]=(j^B)&b^B;o[a>>2]=(D^0-D)&b^D;o[P>>2]=(M^0-M)&b^M;o[C>>2]=(O^0-O)&b^O;o[x>>2]=(R^0-R)&b^R;o[S>>2]=(I^0-I)&b^I;o[E>>2]=(k^0-k)&b^k;o[w>>2]=(A^0-A)&b^A;o[c>>2]=(n^0-n)&b^n;o[v>>2]=(f^0-f)&b^f;o[_>>2]=(t^0-t)&b^t;return}function hi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0,c=0,f=0;i=h;h=h+336|0;o=i+144|0;c=i+96|0;s=i+48|0;a=i;f=i+176|0;pi(n,32,t)|0;r[t>>0]=r[t>>0]&-8;n=t+31|0;r[n>>0]=r[n>>0]&63|64;ui(f,t);Wr(c,f+80|0);Xr(s,f,c);Xr(a,f+40|0,c);Jr(e,a);Jr(o,s);n=e+31|0;r[n>>0]=r[n>>0]^r[o>>0]<<7&255;h=i;return}function pi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0;u=h;h=h+208|0;c=u;f=c+72|0;o[f>>2]=0;l=c;o[l>>2]=0;o[l+4>>2]=0;l=c+8|0;o[l>>2]=-205731576;o[l+4>>2]=1779033703;l=c+16|0;o[l>>2]=-2067093701;o[l+4>>2]=-1150833019;l=c+24|0;o[l>>2]=-23791573;o[l+4>>2]=1013904242;l=c+32|0;o[l>>2]=1595750129;o[l+4>>2]=-1521486534;l=c+40|0;o[l>>2]=-1377402159;o[l+4>>2]=1359893119;l=c+48|0;o[l>>2]=725511199;o[l+4>>2]=-1694144372;l=c+56|0;o[l>>2]=-79577749;o[l+4>>2]=528734635;l=c+64|0;o[l>>2]=327033209;o[l+4>>2]=1541459225;if(!e){l=1;h=u;return l|0}e:do{if(t|0){l=c+76|0;s=0;while(1){if(!((s|0)==0&t>>>0>127)){a=128-s|0;a=t>>>0>>0?t:a;if(a|0){i=0;do{r[i+s+(c+76)>>0]=r[e+i>>0]|0;i=i+1|0}while(i>>>0>>0)}s=s+a|0;o[f>>2]=s;e=e+a|0;t=t-a|0;if((s|0)==128){mi(c,l);s=c;s=ks(o[s>>2]|0,o[s+4>>2]|0,1024,0)|0;a=c;o[a>>2]=s;o[a+4>>2]=T;o[f>>2]=0}}else{mi(c,e);s=c;s=ks(o[s>>2]|0,o[s+4>>2]|0,1024,0)|0;a=c;o[a>>2]=s;o[a+4>>2]=T;t=t+-128|0;e=e+128|0}if(!t)break e;s=o[f>>2]|0}}}while(0);l=gi(c,n)|0;h=u;return l|0}function mi(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0;E=h;h=h+704|0;a=E+640|0;w=E;A=e+8|0;n=a;r=A;i=n+64|0;do{o[n>>2]=o[r>>2];n=n+4|0;r=r+4|0}while((n|0)<(i|0));n=0;do{b=t+(n<<3)|0;d=Os(s[b>>0]|0|0,0,56)|0;v=T;u=Os(s[b+1>>0]|0|0,0,48)|0;v=T|v;p=Os(s[b+2>>0]|0|0,0,40)|0;v=v|T|(s[b+3>>0]|0);m=Os(s[b+4>>0]|0|0,0,24)|0;v=v|T;g=Os(s[b+5>>0]|0|0,0,16)|0;v=v|T;y=Os(s[b+6>>0]|0|0,0,8)|0;_=w+(n<<3)|0;o[_>>2]=u|d|p|m|g|y|(s[b+7>>0]|0);o[_+4>>2]=v|T;n=n+1|0}while((n|0)!=16);i=w;n=16;r=o[i>>2]|0;i=o[i+4>>2]|0;do{l=w+(n+-2<<3)|0;k=o[l>>2]|0;l=o[l+4>>2]|0;u=Cs(k|0,l|0,19)|0;p=T;d=Os(k|0,l|0,45)|0;p=p|T;c=Cs(k|0,l|0,61)|0;t=T;f=Os(k|0,l|0,3)|0;t=t|T;l=Cs(k|0,l|0,6)|0;p=t^T^p;t=w+(n+-7<<3)|0;k=o[t>>2]|0;t=o[t+4>>2]|0;b=w+(n+-15<<3)|0;I=r;r=o[b>>2]|0;S=i;i=o[b+4>>2]|0;b=Cs(r|0,i|0,1)|0;v=T;_=Os(r|0,i|0,63)|0;v=v|T;m=Cs(r|0,i|0,8)|0;x=T;g=Os(r|0,i|0,56)|0;x=x|T;y=Cs(r|0,i|0,7)|0;v=x^T^v;t=ks(I|0,S|0,k|0,t|0)|0;p=ks(t|0,T|0,(c|f)^l^(u|d)|0,p|0)|0;v=ks(p|0,T|0,(m|g)^y^(b|_)|0,v|0)|0;_=w+(n<<3)|0;o[_>>2]=v;o[_+4>>2]=T;n=n+1|0}while((n|0)!=80);u=a+56|0;i=a+32|0;c=a+48|0;f=a+40|0;p=a;g=a+8|0;b=a+16|0;_=a+24|0;n=0;r=o[i>>2]|0;i=o[i+4>>2]|0;t=o[c>>2]|0;a=o[f>>2]|0;c=o[c+4>>2]|0;f=o[f+4>>2]|0;l=o[u>>2]|0;u=o[u+4>>2]|0;d=o[p>>2]|0;p=o[p+4>>2]|0;m=o[g>>2]|0;g=o[g+4>>2]|0;y=o[b>>2]|0;b=o[b+4>>2]|0;v=o[_>>2]|0;_=o[_+4>>2]|0;do{S=Cs(r|0,i|0,14)|0;Q=T;I=Os(r|0,i|0,50)|0;Q=Q|T;Y=Cs(r|0,i|0,18)|0;z=T;L=Os(r|0,i|0,46)|0;z=Q^(z|T);Q=Cs(r|0,i|0,41)|0;V=T;N=Os(r|0,i|0,23)|0;V=z^(V|T);z=32064+(n<<3)|0;O=w+(n<<3)|0;B=o[O>>2]|0;O=o[O+4>>2]|0;z=ks(o[z>>2]|0,o[z+4>>2]|0,l|0,u|0)|0;V=ks(z|0,T|0,(S|I)^(Y|L)^(Q|N)|0,V|0)|0;O=ks(V|0,T|0,B|0,O|0)|0;O=ks(O|0,T|0,(a^t)&r^t|0,(f^c)&i^c|0)|0;B=T;V=Cs(d|0,p|0,28)|0;N=T;Q=Os(d|0,p|0,36)|0;N=N|T;L=Cs(d|0,p|0,34)|0;Y=T;I=Os(d|0,p|0,30)|0;Y=N^(Y|T);N=Cs(d|0,p|0,39)|0;S=T;z=Os(d|0,p|0,25)|0;S=Y^(S|T);Y=ks(v|0,_|0,O|0,B|0)|0;F=T;B=ks((m|d)&y|m&d|0,(g|p)&b|g&p|0,O|0,B|0)|0;S=ks(B|0,T|0,(V|Q)^(L|I)^(N|z)|0,S|0)|0;z=T;N=Cs(Y|0,F|0,14)|0;I=T;L=Os(Y|0,F|0,50)|0;I=I|T;Q=Cs(Y|0,F|0,18)|0;V=T;B=Os(Y|0,F|0,46)|0;V=I^(V|T);I=Cs(Y|0,F|0,41)|0;O=T;x=Os(Y|0,F|0,23)|0;O=V^(O|T);V=n|1;H=32064+(V<<3)|0;M=o[H>>2]|0;H=o[H+4>>2]|0;V=w+(V<<3)|0;j=o[V>>2]|0;V=o[V+4>>2]|0;P=ks(Y&(a^r)^a|0,F&(f^i)^f|0,t|0,c|0)|0;H=ks(P|0,T|0,M|0,H|0)|0;V=ks(H|0,T|0,j|0,V|0)|0;O=ks(V|0,T|0,(N|L)^(Q|B)^(I|x)|0,O|0)|0;x=T;I=Cs(S|0,z|0,28)|0;B=T;Q=Os(S|0,z|0,36)|0;B=B|T;L=Cs(S|0,z|0,34)|0;N=T;V=Os(S|0,z|0,30)|0;N=B^(N|T);B=Cs(S|0,z|0,39)|0;j=T;H=Os(S|0,z|0,25)|0;j=ks((I|Q)^(L|V)^(B|H)|0,N^(j|T)|0,(S|d)&m|S&d|0,(z|p)&g|z&p|0)|0;N=T;H=ks(O|0,x|0,y|0,b|0)|0;B=T;x=ks(j|0,N|0,O|0,x|0)|0;O=T;N=Cs(H|0,B|0,14)|0;j=T;V=Os(H|0,B|0,50)|0;j=j|T;L=Cs(H|0,B|0,18)|0;Q=T;I=Os(H|0,B|0,46)|0;Q=j^(Q|T);j=Cs(H|0,B|0,41)|0;M=T;P=Os(H|0,B|0,23)|0;M=Q^(M|T);Q=n|2;q=32064+(Q<<3)|0;Q=w+(Q<<3)|0;D=o[Q>>2]|0;Q=o[Q+4>>2]|0;q=ks(o[q>>2]|0,o[q+4>>2]|0,a|0,f|0)|0;Q=ks(q|0,T|0,D|0,Q|0)|0;Q=ks(Q|0,T|0,H&(Y^r)^r|0,B&(F^i)^i|0)|0;M=ks(Q|0,T|0,(N|V)^(L|I)^(j|P)|0,M|0)|0;P=T;j=Cs(x|0,O|0,28)|0;I=T;L=Os(x|0,O|0,36)|0;I=I|T;V=Cs(x|0,O|0,34)|0;N=T;Q=Os(x|0,O|0,30)|0;N=I^(N|T);I=Cs(x|0,O|0,39)|0;D=T;q=Os(x|0,O|0,25)|0;D=ks((j|L)^(V|Q)^(I|q)|0,N^(D|T)|0,(x|S)&d|x&S|0,(O|z)&p|O&z|0)|0;N=T;q=ks(M|0,P|0,m|0,g|0)|0;I=T;P=ks(D|0,N|0,M|0,P|0)|0;M=T;N=Cs(q|0,I|0,14)|0;D=T;Q=Os(q|0,I|0,50)|0;D=D|T;V=Cs(q|0,I|0,18)|0;L=T;j=Os(q|0,I|0,46)|0;L=D^(L|T);D=Cs(q|0,I|0,41)|0;R=T;C=Os(q|0,I|0,23)|0;R=L^(R|T);L=n|3;U=32064+(L<<3)|0;L=w+(L<<3)|0;W=o[L>>2]|0;L=o[L+4>>2]|0;U=ks(o[U>>2]|0,o[U+4>>2]|0,r|0,i|0)|0;L=ks(U|0,T|0,W|0,L|0)|0;L=ks(L|0,T|0,q&(H^Y)^Y|0,I&(B^F)^F|0)|0;R=ks(L|0,T|0,(N|Q)^(V|j)^(D|C)|0,R|0)|0;C=T;D=Cs(P|0,M|0,28)|0;j=T;V=Os(P|0,M|0,36)|0;j=j|T;Q=Cs(P|0,M|0,34)|0;N=T;L=Os(P|0,M|0,30)|0;N=j^(N|T);j=Cs(P|0,M|0,39)|0;W=T;U=Os(P|0,M|0,25)|0;W=ks((D|V)^(Q|L)^(j|U)|0,N^(W|T)|0,(P|x)&S|P&x|0,(M|O)&z|M&O|0)|0;N=T;U=ks(R|0,C|0,d|0,p|0)|0;j=T;C=ks(W|0,N|0,R|0,C|0)|0;R=T;N=Cs(U|0,j|0,14)|0;W=T;L=Os(U|0,j|0,50)|0;W=W|T;Q=Cs(U|0,j|0,18)|0;V=T;D=Os(U|0,j|0,46)|0;V=W^(V|T);W=Cs(U|0,j|0,41)|0;G=T;k=Os(U|0,j|0,23)|0;G=V^(G|T);V=n|4;X=32064+(V<<3)|0;V=w+(V<<3)|0;K=o[V>>2]|0;V=o[V+4>>2]|0;F=ks(o[X>>2]|0,o[X+4>>2]|0,Y|0,F|0)|0;V=ks(F|0,T|0,K|0,V|0)|0;V=ks(V|0,T|0,U&(q^H)^H|0,j&(I^B)^B|0)|0;G=ks(V|0,T|0,(N|L)^(Q|D)^(W|k)|0,G|0)|0;k=T;W=Cs(C|0,R|0,28)|0;D=T;Q=Os(C|0,R|0,36)|0;D=D|T;L=Cs(C|0,R|0,34)|0;N=T;V=Os(C|0,R|0,30)|0;N=D^(N|T);D=Cs(C|0,R|0,39)|0;K=T;F=Os(C|0,R|0,25)|0;K=ks((W|Q)^(L|V)^(D|F)|0,N^(K|T)|0,(C|P)&x|C&P|0,(R|M)&O|R&M|0)|0;N=T;l=ks(G|0,k|0,S|0,z|0)|0;u=T;v=ks(K|0,N|0,G|0,k|0)|0;_=T;k=Cs(l|0,u|0,14)|0;G=T;N=Os(l|0,u|0,50)|0;G=G|T;K=Cs(l|0,u|0,18)|0;z=T;S=Os(l|0,u|0,46)|0;z=G^(z|T);G=Cs(l|0,u|0,41)|0;F=T;D=Os(l|0,u|0,23)|0;F=z^(F|T);z=n|5;V=32064+(z<<3)|0;z=w+(z<<3)|0;L=o[z>>2]|0;z=o[z+4>>2]|0;B=ks(o[V>>2]|0,o[V+4>>2]|0,H|0,B|0)|0;z=ks(B|0,T|0,L|0,z|0)|0;z=ks(z|0,T|0,l&(U^q)^q|0,u&(j^I)^I|0)|0;F=ks(z|0,T|0,(k|N)^(K|S)^(G|D)|0,F|0)|0;D=T;G=Cs(v|0,_|0,28)|0;S=T;K=Os(v|0,_|0,36)|0;S=S|T;N=Cs(v|0,_|0,34)|0;k=T;z=Os(v|0,_|0,30)|0;k=S^(k|T);S=Cs(v|0,_|0,39)|0;L=T;B=Os(v|0,_|0,25)|0;L=ks((G|K)^(N|z)^(S|B)|0,k^(L|T)|0,(v|C)&P|v&C|0,(_|R)&M|_&R|0)|0;k=T;t=ks(F|0,D|0,x|0,O|0)|0;c=T;y=ks(L|0,k|0,F|0,D|0)|0;b=T;D=Cs(t|0,c|0,14)|0;F=T;k=Os(t|0,c|0,50)|0;F=F|T;L=Cs(t|0,c|0,18)|0;O=T;x=Os(t|0,c|0,46)|0;O=F^(O|T);F=Cs(t|0,c|0,41)|0;B=T;S=Os(t|0,c|0,23)|0;B=O^(B|T);O=n|6;z=32064+(O<<3)|0;O=w+(O<<3)|0;N=o[O>>2]|0;O=o[O+4>>2]|0;I=ks(o[z>>2]|0,o[z+4>>2]|0,q|0,I|0)|0;O=ks(I|0,T|0,N|0,O|0)|0;O=ks(O|0,T|0,t&(l^U)^U|0,c&(u^j)^j|0)|0;B=ks(O|0,T|0,(D|k)^(L|x)^(F|S)|0,B|0)|0;S=T;F=Cs(y|0,b|0,28)|0;x=T;L=Os(y|0,b|0,36)|0;x=x|T;k=Cs(y|0,b|0,34)|0;D=T;O=Os(y|0,b|0,30)|0;D=x^(D|T);x=Cs(y|0,b|0,39)|0;N=T;I=Os(y|0,b|0,25)|0;N=ks((F|L)^(k|O)^(x|I)|0,D^(N|T)|0,(y|v)&C|y&v|0,(b|_)&R|b&_|0)|0;D=T;a=ks(B|0,S|0,P|0,M|0)|0;f=T;m=ks(N|0,D|0,B|0,S|0)|0;g=T;S=Cs(a|0,f|0,14)|0;B=T;D=Os(a|0,f|0,50)|0;B=B|T;N=Cs(a|0,f|0,18)|0;M=T;P=Os(a|0,f|0,46)|0;M=B^(M|T);B=Cs(a|0,f|0,41)|0;I=T;x=Os(a|0,f|0,23)|0;I=M^(I|T);M=n|7;O=32064+(M<<3)|0;M=w+(M<<3)|0;k=o[M>>2]|0;M=o[M+4>>2]|0;O=ks(U|0,j|0,o[O>>2]|0,o[O+4>>2]|0)|0;M=ks(O|0,T|0,k|0,M|0)|0;M=ks(M|0,T|0,a&(t^l)^l|0,f&(c^u)^u|0)|0;I=ks(M|0,T|0,(S|D)^(N|P)^(B|x)|0,I|0)|0;x=T;B=Cs(m|0,g|0,28)|0;P=T;N=Os(m|0,g|0,36)|0;P=P|T;D=Cs(m|0,g|0,34)|0;S=T;M=Os(m|0,g|0,30)|0;S=P^(S|T);P=Cs(m|0,g|0,39)|0;k=T;O=Os(m|0,g|0,25)|0;k=ks((B|N)^(D|M)^(P|O)|0,S^(k|T)|0,(m|y)&v|m&y|0,(g|b)&_|g&b|0)|0;S=T;r=ks(I|0,x|0,C|0,R|0)|0;i=T;d=ks(k|0,S|0,I|0,x|0)|0;p=T;n=n+8|0}while(n>>>0<80);Y=A;Y=ks(d|0,p|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;X=A;o[X>>2]=Y;o[X+4>>2]=T;X=e+16|0;Y=X;Y=ks(m|0,g|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+24|0;Y=X;Y=ks(y|0,b|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+32|0;Y=X;Y=ks(v|0,_|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+40|0;Y=X;Y=ks(r|0,i|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+48|0;Y=X;Y=ks(a|0,f|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+56|0;Y=X;Y=ks(t|0,c|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+64|0;Y=X;Y=ks(l|0,u|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;h=E;return}function gi(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0;if((e|0)==0|(t|0)==0){s=1;return s|0}s=e+72|0;n=o[s>>2]|0;if(n>>>0>127){s=1;return s|0}a=Os(n|0,0,3)|0;i=e;a=ks(o[i>>2]|0,o[i+4>>2]|0,a|0,T|0)|0;i=e;o[i>>2]=a;o[i+4>>2]=T;i=e+76|0;o[s>>2]=n+1;r[e+76+n>>0]=-128;n=o[s>>2]|0;if(n>>>0>112){if(n>>>0<128)do{o[s>>2]=n+1;r[e+76+n>>0]=0;n=o[s>>2]|0}while(n>>>0<128);mi(e,i);o[s>>2]=0;n=0}do{o[s>>2]=n+1;r[e+76+n>>0]=0;n=o[s>>2]|0}while(n>>>0<120);s=e;a=o[s>>2]|0;s=o[s+4>>2]|0;n=Cs(a|0,s|0,56)|0;r[e+196>>0]=n;n=Cs(a|0,s|0,48)|0;r[e+197>>0]=n;n=Cs(a|0,s|0,40)|0;r[e+198>>0]=n;r[e+199>>0]=s;n=Cs(a|0,s|0,24)|0;r[e+200>>0]=n;n=Cs(a|0,s|0,16)|0;r[e+201>>0]=n;s=Cs(a|0,s|0,8)|0;r[e+202>>0]=s;r[e+203>>0]=a;mi(e,i);a=e+8|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+1>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+2>>0]=s;r[t+3>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+4>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+5>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+6>>0]=s;r[t+7>>0]=o[a>>2];a=e+16|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+8>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+9>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+10>>0]=s;r[t+11>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+12>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+13>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+14>>0]=s;r[t+15>>0]=o[a>>2];a=e+24|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+16>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+17>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+18>>0]=s;r[t+19>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+20>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+21>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+22>>0]=s;r[t+23>>0]=o[a>>2];a=e+32|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+24>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+25>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+26>>0]=s;r[t+27>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+28>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+29>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+30>>0]=s;r[t+31>>0]=o[a>>2];a=e+40|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+32>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+33>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+34>>0]=s;r[t+35>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+36>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+37>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+38>>0]=s;r[t+39>>0]=o[a>>2];a=e+48|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+40>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+41>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+42>>0]=s;r[t+43>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+44>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+45>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+46>>0]=s;r[t+47>>0]=o[a>>2];a=e+56|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+48>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+49>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+50>>0]=s;r[t+51>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+52>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+53>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+54>>0]=s;r[t+55>>0]=o[a>>2];a=e+64|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+56>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+57>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+58>>0]=s;r[t+59>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+60>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+61>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+62>>0]=s;r[t+63>>0]=o[a>>2];a=0;return a|0}function yi(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0;k=h;h=h+768|0;y=k+240|0;b=k+192|0;v=k+144|0;w=k+96|0;A=k+32|0;E=k;d=k+272|0;p=k+600|0;m=k+480|0;if((s[e+63>>0]|0)>31){E=0;h=k;return E|0}if(li(p,i)|0){E=0;h=k;return E|0}g=d+72|0;o[g>>2]=0;_=d;o[_>>2]=0;o[_+4>>2]=0;_=d+8|0;o[_>>2]=-205731576;o[_+4>>2]=1779033703;_=d+16|0;o[_>>2]=-2067093701;o[_+4>>2]=-1150833019;_=d+24|0;o[_>>2]=-23791573;o[_+4>>2]=1013904242;_=d+32|0;o[_>>2]=1595750129;o[_+4>>2]=-1521486534;_=d+40|0;o[_>>2]=-1377402159;o[_+4>>2]=1359893119;_=d+48|0;o[_>>2]=725511199;o[_+4>>2]=-1694144372;_=d+56|0;o[_>>2]=-79577749;o[_+4>>2]=528734635;_=d+64|0;o[_>>2]=327033209;o[_+4>>2]=1541459225;_=d+76|0;r[d+76>>0]=r[e>>0]|0;r[d+77>>0]=r[e+1>>0]|0;r[d+78>>0]=r[e+2>>0]|0;r[d+79>>0]=r[e+3>>0]|0;r[d+80>>0]=r[e+4>>0]|0;r[d+81>>0]=r[e+5>>0]|0;r[d+82>>0]=r[e+6>>0]|0;r[d+83>>0]=r[e+7>>0]|0;r[d+84>>0]=r[e+8>>0]|0;r[d+85>>0]=r[e+9>>0]|0;r[d+86>>0]=r[e+10>>0]|0;r[d+87>>0]=r[e+11>>0]|0;r[d+88>>0]=r[e+12>>0]|0;r[d+89>>0]=r[e+13>>0]|0;r[d+90>>0]=r[e+14>>0]|0;r[d+91>>0]=r[e+15>>0]|0;r[d+92>>0]=r[e+16>>0]|0;r[d+93>>0]=r[e+17>>0]|0;r[d+94>>0]=r[e+18>>0]|0;r[d+95>>0]=r[e+19>>0]|0;r[d+96>>0]=r[e+20>>0]|0;r[d+97>>0]=r[e+21>>0]|0;r[d+98>>0]=r[e+22>>0]|0;r[d+99>>0]=r[e+23>>0]|0;r[d+100>>0]=r[e+24>>0]|0;r[d+101>>0]=r[e+25>>0]|0;r[d+102>>0]=r[e+26>>0]|0;r[d+103>>0]=r[e+27>>0]|0;r[d+104>>0]=r[e+28>>0]|0;r[d+105>>0]=r[e+29>>0]|0;r[d+106>>0]=r[e+30>>0]|0;r[d+107>>0]=r[e+31>>0]|0;o[g>>2]=32;e:do{if(i|0?(f=o[g>>2]|0,f>>>0<=128):0){a=32;while(1){if(!((f|0)==0&a>>>0>127)){u=128-f|0;u=a>>>0>>0?a:u;if(u|0){l=0;do{r[l+f+(d+76)>>0]=r[i+l>>0]|0;l=l+1|0}while(l>>>0>>0)}l=f+u|0;o[g>>2]=l;i=i+u|0;a=a-u|0;if((l|0)==128){mi(d,_);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;o[g>>2]=0}}else{mi(d,i);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;a=a+-128|0;i=i+128|0}if(!a)break e;f=o[g>>2]|0}}}while(0);e:do{if(t|0?(c=o[g>>2]|0,!((n|0)==0|c>>>0>128)):0)while(1){if(!((c|0)==0&n>>>0>127)){i=128-c|0;i=n>>>0>>0?n:i;if(i|0){a=0;do{r[a+c+(d+76)>>0]=r[t+a>>0]|0;a=a+1|0}while(a>>>0>>0)}u=c+i|0;o[g>>2]=u;t=t+i|0;n=n-i|0;if((u|0)==128){mi(d,_);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;o[g>>2]=0}}else{mi(d,t);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;n=n+-128|0;t=t+128|0}if(!n)break e;c=o[g>>2]|0}}while(0);gi(d,A)|0;ei(A);ri(m,A,p,e+32|0);Wr(b,m+80|0);Xr(v,m,b);Xr(w,m+40|0,b);Jr(E,w);Jr(y,v);w=E+31|0;A=r[w>>0]^r[y>>0]<<7&255;r[w>>0]=A;E=(r[e+1>>0]^r[E+1>>0]|r[e>>0]^r[E>>0]|r[e+2>>0]^r[E+2>>0]|r[e+3>>0]^r[E+3>>0]|r[e+4>>0]^r[E+4>>0]|r[e+5>>0]^r[E+5>>0]|r[e+6>>0]^r[E+6>>0]|r[e+7>>0]^r[E+7>>0]|r[e+8>>0]^r[E+8>>0]|r[e+9>>0]^r[E+9>>0]|r[e+10>>0]^r[E+10>>0]|r[e+11>>0]^r[E+11>>0]|r[e+12>>0]^r[E+12>>0]|r[e+13>>0]^r[E+13>>0]|r[e+14>>0]^r[E+14>>0]|r[e+15>>0]^r[E+15>>0]|r[e+16>>0]^r[E+16>>0]|r[e+17>>0]^r[E+17>>0]|r[e+18>>0]^r[E+18>>0]|r[e+19>>0]^r[E+19>>0]|r[e+20>>0]^r[E+20>>0]|r[e+21>>0]^r[E+21>>0]|r[e+22>>0]^r[E+22>>0]|r[e+23>>0]^r[E+23>>0]|r[e+24>>0]^r[E+24>>0]|r[e+25>>0]^r[E+25>>0]|r[e+26>>0]^r[E+26>>0]|r[e+27>>0]^r[E+27>>0]|r[e+28>>0]^r[E+28>>0]|r[e+29>>0]^r[E+29>>0]|r[e+30>>0]^r[E+30>>0]|r[e+31>>0]^A)<<24>>24==0&1;h=k;return E|0}function bi(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0;D=h;h=h+672|0;A=D+272|0;k=D+224|0;S=D+176|0;I=D+128|0;M=D+304|0;R=D+64|0;C=D;p=D+512|0;O=M+72|0;o[O>>2]=0;m=M;o[m>>2]=0;o[m+4>>2]=0;m=M+8|0;g=m;o[g>>2]=-205731576;o[g+4>>2]=1779033703;g=M+16|0;y=g;o[y>>2]=-2067093701;o[y+4>>2]=-1150833019;y=M+24|0;b=y;o[b>>2]=-23791573;o[b+4>>2]=1013904242;b=M+32|0;v=b;o[v>>2]=1595750129;o[v+4>>2]=-1521486534;v=M+40|0;_=v;o[_>>2]=-1377402159;o[_+4>>2]=1359893119;_=M+48|0;w=_;o[w>>2]=725511199;o[w+4>>2]=-1694144372;w=M+56|0;E=w;o[E>>2]=-79577749;o[E+4>>2]=528734635;E=M+64|0;P=E;o[P>>2]=327033209;o[P+4>>2]=1541459225;P=M+76|0;r[M+76>>0]=r[s+32>>0]|0;r[M+77>>0]=r[s+33>>0]|0;r[M+78>>0]=r[s+34>>0]|0;r[M+79>>0]=r[s+35>>0]|0;r[M+80>>0]=r[s+36>>0]|0;r[M+81>>0]=r[s+37>>0]|0;r[M+82>>0]=r[s+38>>0]|0;r[M+83>>0]=r[s+39>>0]|0;r[M+84>>0]=r[s+40>>0]|0;r[M+85>>0]=r[s+41>>0]|0;r[M+86>>0]=r[s+42>>0]|0;r[M+87>>0]=r[s+43>>0]|0;r[M+88>>0]=r[s+44>>0]|0;r[M+89>>0]=r[s+45>>0]|0;r[M+90>>0]=r[s+46>>0]|0;r[M+91>>0]=r[s+47>>0]|0;r[M+92>>0]=r[s+48>>0]|0;r[M+93>>0]=r[s+49>>0]|0;r[M+94>>0]=r[s+50>>0]|0;r[M+95>>0]=r[s+51>>0]|0;r[M+96>>0]=r[s+52>>0]|0;r[M+97>>0]=r[s+53>>0]|0;r[M+98>>0]=r[s+54>>0]|0;r[M+99>>0]=r[s+55>>0]|0;r[M+100>>0]=r[s+56>>0]|0;r[M+101>>0]=r[s+57>>0]|0;r[M+102>>0]=r[s+58>>0]|0;r[M+103>>0]=r[s+59>>0]|0;r[M+104>>0]=r[s+60>>0]|0;r[M+105>>0]=r[s+61>>0]|0;r[M+106>>0]=r[s+62>>0]|0;r[M+107>>0]=r[s+63>>0]|0;o[O>>2]=32;x=(t|0)==0;e:do{if(!x?(l=o[O>>2]|0,!((n|0)==0|l>>>0>128)):0){a=n;c=t;while(1){if(!((l|0)==0&a>>>0>127)){d=128-l|0;d=a>>>0>>0?a:d;if(d|0){u=0;do{r[u+l+(M+76)>>0]=r[c+u>>0]|0;u=u+1|0}while(u>>>0>>0)}u=l+d|0;o[O>>2]=u;c=c+d|0;a=a-d|0;if((u|0)==128){mi(M,P);u=M;u=ks(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;d=M;o[d>>2]=u;o[d+4>>2]=T;o[O>>2]=0}}else{mi(M,c);u=M;u=ks(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;d=M;o[d>>2]=u;o[d+4>>2]=T;a=a+-128|0;c=c+128|0}if(!a)break e;l=o[O>>2]|0}}}while(0);gi(M,C)|0;ei(C);ui(p,C);Wr(k,p+80|0);Xr(S,p,k);Xr(I,p+40|0,k);Jr(e,I);Jr(A,S);I=e+31|0;r[I>>0]=r[I>>0]^r[A>>0]<<7&255;o[O>>2]=0;I=M;o[I>>2]=0;o[I+4>>2]=0;I=m;o[I>>2]=-205731576;o[I+4>>2]=1779033703;I=g;o[I>>2]=-2067093701;o[I+4>>2]=-1150833019;I=y;o[I>>2]=-23791573;o[I+4>>2]=1013904242;I=b;o[I>>2]=1595750129;o[I+4>>2]=-1521486534;I=v;o[I>>2]=-1377402159;o[I+4>>2]=1359893119;I=_;o[I>>2]=725511199;o[I+4>>2]=-1694144372;I=w;o[I>>2]=-79577749;o[I+4>>2]=528734635;I=E;o[I>>2]=327033209;o[I+4>>2]=1541459225;if(e|0){r[M+76>>0]=r[e>>0]|0;r[M+77>>0]=r[e+1>>0]|0;r[M+78>>0]=r[e+2>>0]|0;r[M+79>>0]=r[e+3>>0]|0;r[M+80>>0]=r[e+4>>0]|0;r[M+81>>0]=r[e+5>>0]|0;r[M+82>>0]=r[e+6>>0]|0;r[M+83>>0]=r[e+7>>0]|0;r[M+84>>0]=r[e+8>>0]|0;r[M+85>>0]=r[e+9>>0]|0;r[M+86>>0]=r[e+10>>0]|0;r[M+87>>0]=r[e+11>>0]|0;r[M+88>>0]=r[e+12>>0]|0;r[M+89>>0]=r[e+13>>0]|0;r[M+90>>0]=r[e+14>>0]|0;r[M+91>>0]=r[e+15>>0]|0;r[M+92>>0]=r[e+16>>0]|0;r[M+93>>0]=r[e+17>>0]|0;r[M+94>>0]=r[e+18>>0]|0;r[M+95>>0]=r[e+19>>0]|0;r[M+96>>0]=r[e+20>>0]|0;r[M+97>>0]=r[e+21>>0]|0;r[M+98>>0]=r[e+22>>0]|0;r[M+99>>0]=r[e+23>>0]|0;r[M+100>>0]=r[e+24>>0]|0;r[M+101>>0]=r[e+25>>0]|0;r[M+102>>0]=r[e+26>>0]|0;r[M+103>>0]=r[e+27>>0]|0;r[M+104>>0]=r[e+28>>0]|0;r[M+105>>0]=r[e+29>>0]|0;r[M+106>>0]=r[e+30>>0]|0;r[M+107>>0]=r[e+31>>0]|0;o[O>>2]=32}e:do{if(i|0?(f=o[O>>2]|0,f>>>0<=128):0){a=32;while(1){if(!((f|0)==0&a>>>0>127)){l=128-f|0;l=a>>>0>>0?a:l;if(l|0){c=0;do{r[c+f+(M+76)>>0]=r[i+c>>0]|0;c=c+1|0}while(c>>>0>>0)}I=f+l|0;o[O>>2]=I;i=i+l|0;a=a-l|0;if((I|0)==128){mi(M,P);S=M;S=ks(o[S>>2]|0,o[S+4>>2]|0,1024,0)|0;I=M;o[I>>2]=S;o[I+4>>2]=T;o[O>>2]=0}}else{mi(M,i);S=M;S=ks(o[S>>2]|0,o[S+4>>2]|0,1024,0)|0;I=M;o[I>>2]=S;o[I+4>>2]=T;a=a+-128|0;i=i+128|0}if(!a)break e;f=o[O>>2]|0}}}while(0);if(x){gi(M,R)|0;ei(R);M=e+32|0;ti(M,R,s,C);h=D;return}a=o[O>>2]|0;if((n|0)==0|a>>>0>128){gi(M,R)|0;ei(R);M=e+32|0;ti(M,R,s,C);h=D;return}i=a;while(1){if(!((i|0)==0&n>>>0>127)){c=128-i|0;c=n>>>0>>0?n:c;if(c|0){a=0;do{r[a+i+(M+76)>>0]=r[t+a>>0]|0;a=a+1|0}while(a>>>0>>0)}x=i+c|0;o[O>>2]=x;t=t+c|0;n=n-c|0;if((x|0)==128){mi(M,P);I=M;I=ks(o[I>>2]|0,o[I+4>>2]|0,1024,0)|0;x=M;o[x>>2]=I;o[x+4>>2]=T;o[O>>2]=0}}else{mi(M,t);I=M;I=ks(o[I>>2]|0,o[I+4>>2]|0,1024,0)|0;x=M;o[x>>2]=I;o[x+4>>2]=T;n=n+-128|0;t=t+128|0}if(!n)break;i=o[O>>2]|0}gi(M,R)|0;ei(R);M=e+32|0;ti(M,R,s,C);h=D;return}function vi(e,t,n){e=e|0;t=t|0;n=n|0;o[e+128>>2]=n;n=t;t=e+128|0;do{r[e>>0]=r[n>>0]|0;e=e+1|0;n=n+1|0}while((e|0)<(t|0));return}function _i(e){e=e|0;return 132}function wi(e,t){e=e|0;t=t|0;t=Fe(t,e,128)|0;return Be(t,o[e+128>>2]|0)|0}function Ai(e,t,n){e=e|0;t=t|0;n=n|0;return je(qe(t,n,e,128)|0,n,e+128|0)|0}function Ei(e){e=e|0;var t=0,n=0,r=0,i=0;r=e+128|0;i=(o[r>>2]|0)+1|0;o[r>>2]=i;if(i&16777215){n=0;r=16777215;while(1){t=n+1|0;r=r>>>8;if(n>>>0>2|(r&i|0)==0)break;else n=t}if(n>>>0>2)return}else t=0;r=e+(t<<5)|0;n=3;while(1){Et(r,32,38116+n|0,1,e+(n<<5)|0);if((n|0)>(t|0))n=n+-1|0;else break}return}function ki(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0;s=e+128|0;n=o[s>>2]|0;r=(t>>>24)-(n>>>24)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=3}break}case 1:{i=5;break}default:{n=r&255;i=3}}if((i|0)==3){do{Et(e,32,38116,1,e);n=n+-1|0}while(n>>>0>1);i=5}if((i|0)==5){Et(e,32,38119,1,e+96|0);Et(e,32,38118,1,e+64|0);Et(e,32,38117,1,e+32|0);Et(e,32,38116,1,e);n=t&-16777216;o[s>>2]=n}r=(t>>>16)-(n>>>16)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=8}break}case 1:{i=10;break}default:{n=r&255;i=8}}if((i|0)==8){r=e+32|0;do{Et(r,32,38117,1,r);n=n+-1|0}while(n>>>0>1);i=10}if((i|0)==10){n=e+32|0;Et(n,32,38119,1,e+96|0);Et(n,32,38118,1,e+64|0);Et(n,32,38117,1,e+32|0);n=t&-65536;o[s>>2]=n}r=(t>>>8)-(n>>>8)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=13}break}case 1:{i=15;break}default:{n=r&255;i=13}}if((i|0)==13){r=e+64|0;do{Et(r,32,38118,1,r);n=n+-1|0}while(n>>>0>1);i=15}if((i|0)==15){n=e+64|0;Et(n,32,38119,1,e+96|0);Et(n,32,38118,1,e+64|0);n=t&-256;o[s>>2]=n}r=t-n|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=18}else return;break}case 1:break;default:{n=r&255;i=18}}if((i|0)==18){r=e+96|0;do{Et(r,32,38119,1,r);n=n+-1|0}while(n>>>0>1)}Et(e+96|0,32,38119,1,e+96|0);o[s>>2]=t;return}function Si(e){e=e|0;if(e>>>0>=16){e=38120;return e|0}e=o[32704+(e<<2)>>2]|0;return e|0}function Ti(e){e=e|0;e=Hs[o[37564>>2]&3](37592,e)|0;return pe((Gs[o[9390]&1](37592)|0)+e|0)|0}function Ii(e,t){e=e|0;t=t|0;t=Hs[o[37564>>2]&3](37592,t)|0;t=(Gs[o[9390]&1](37592)|0)+t|0;return e+(pe(t)|0)+(0-t)|0}function xi(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0;c=Hs[o[37564>>2]&3](37592,r)|0;s=(Gs[o[9390]&1](37592)|0)+c|0;i=pe(s)|0;a=n+i+(0-s)|0;Qs[o[37568>>2]&3](37592,e,t,a,r,a,c,a,s)|0;me(a,s,n)|0;return i|0}function Ri(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=ge(r)|0;if((s|0)==-1){if(!i){i=-1;return i|0}o[i>>2]=7;i=-1;return i|0}else{ye(n,r,n)|0;r=s-(Gs[o[9390]&1](37592)|0)|0;e=Qs[o[37576>>2]&3](37592,e,t,n,s,n,r,n,r)|0;if(!((i|0)!=0&(e|0)==-1)){i=e;return i|0}o[i>>2]=8;i=-1;return i|0}return 0}function Ci(){return 304}function Oi(e){e=e|0;Gr(e,304);return e|0}function Pi(e){e=e|0;Gr(e,304);return 304}function Mi(e){e=e|0;return Si(o[e+300>>2]|0)|0}function Di(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0,c=0,f=0;f=h;h=h+240|0;c=f;switch(ge(n)|0){case-1:{o[e+300>>2]=7;c=-1;h=f;return c|0}case 229:{ye(t,n,c)|0;do{if((r[c>>0]|0)==2){t=((s[c+1>>0]<<8|s[c+2>>0])<<8|s[c+3>>0])<<8|s[c+4>>0];n=c+5|0;vi(e,n,t);vi(e+132|0,n,t);t=e+264|0;n=t;i=c+133|0;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));if(!(bt(t,c,165,c+165|0)|0)){o[e+300>>2]=14;t=-1;break}else{o[e+296>>2]=1;t=0;break}}else{o[e+300>>2]=11;t=-1}}while(0);Gr(c,229);c=t;h=f;return c|0}default:{o[e+300>>2]=11;c=-1;h=f;return c|0}}return 0}function Ni(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0;a=h;h=h+176|0;i=a;switch(ge(n)|0){case-1:{o[e+300>>2]=7;i=-1;h=a;return i|0}case 165:{ye(t,n,i)|0;if((r[i>>0]|0)==1){t=((s[i+1>>0]<<8|s[i+2>>0])<<8|s[i+3>>0])<<8|s[i+4>>0];n=i+5|0;vi(e,n,t);vi(e+132|0,n,t);e=e+264|0;t=i+133|0;n=e+32|0;do{r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0}while((e|0)<(n|0));e=0}else{o[e+300>>2]=11;e=-1}Gr(i,165);i=e;h=a;return i|0}default:{o[e+300>>2]=11;i=-1;h=a;return i|0}}return 0}function Bi(e){e=e|0;var t=0,n=0;n=_i(e)|0;t=_i(e+132|0)|0;return Ti(n+5+t+(Ce(e+264|0)|0)|0)|0}function ji(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0;f=_i(e)|0;a=e+132|0;s=_i(a)|0;c=e+264|0;s=f+5+s+(Ce(c)|0)|0;if((Ti(s)|0)>>>0>i>>>0){o[e+300>>2]=2;f=-1;return f|0}else{f=Oe(wi(a,wi(e,Be(Ii(r,s)|0,2)|0)|0)|0,c)|0;Ue(f,o[e+296>>2]|0)|0;f=xi(t,n,r,s)|0;return f|0}return 0}function Ui(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0;f=h;h=h+16|0;a=f;c=e+300|0;t=Ri(t,n,r,i,c)|0;if((t|0)==-1){c=-1;h=f;return c|0}s=r+t|0;t=je(r,s,a)|0;if(((o[a>>2]|0)+-1|0)>>>0>1){o[c>>2]=9;c=-1;h=f;return c|0}t=Pe(Ai(e+132|0,Ai(e,t,s)|0,s)|0,s,e+264|0)|0;n=e+296|0;if((o[a>>2]|0)==1)o[n>>2]=1;else t=Le(t,s,n)|0;if((s|0)==(t|0)){c=i;h=f;return c|0}o[c>>2]=10;c=-1;h=f;return c|0}function Li(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0;s=h;h=h+32|0;i=s;n=ye(t,n,t)|0;if((n|0)==-1){o[e+300>>2]=7;i=-1;h=s;return i|0}Xe(t,n,Gs[o[o[9395]>>2]&1](37580)|0,64,i);do{if((r[i>>0]|0)==3)if(!(o[i+12>>2]|0)){o[e+300>>2]=4;n=-1;break}else{n=Hs[o[(o[9395]|0)+12>>2]&3](37580,o[i+16>>2]|0)|0;break}else{o[e+300>>2]=3;n=-1}}while(0);i=n;h=s;return i|0}function Fi(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0,l=0,u=0,d=0,p=0;p=h;h=h+160|0;l=p+132|0;d=p;n=ye(t,n,t)|0;if((n|0)==-1){o[e+300>>2]=7;d=-1;h=p;return d|0}Xe(t,n,Gs[o[o[9395]>>2]&1](37580)|0,64,l);e:do{if((r[l>>0]|0)==3){if(o[l+8>>2]|0?(u=l+12|0,o[u>>2]|0):0){if(a|0)o[a>>2]=o[l+4>>2];c=n+-64|0;if(!(bt(e+264|0,t,c,t+c|0)|0)){o[e+300>>2]=14;n=-1;break}f=l+16|0;if((Hs[o[(o[9395]|0)+12>>2]&3](37580,o[f>>2]|0)|0)>>>0>s>>>0){o[e+300>>2]=2;n=-1;break}n=o[l+4>>2]|0;a=e+132|0;do{if((n-(o[e+260>>2]|0)|0)<=-1)if((n-(o[e+128>>2]|0)|0)<0){o[e+300>>2]=12;n=-1;break e}else{Ms(d|0,e|0,132)|0;ki(d,n);break}else{ki(a,n);Ms(d|0,a|0,132)|0}}while(0);n=Qs[o[(o[9395]|0)+16>>2]&3](37580,d,128,t,c,o[u>>2]|0,o[f>>2]|0,i,s)|0;Gr(d,132);if((n|0)==-1){o[e+300>>2]=5;n=-1;break}else{o[e+296>>2]=1;break}}o[e+300>>2]=4;n=-1}else{o[e+300>>2]=3;n=-1}}while(0);d=n;h=p;return d|0}function qi(e){e=e|0;return pe(32)|0}function zi(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e+300>>2]=2;n=-1;return n|0}else{n=me(e+264|0,32,t)|0;return n|0}return 0}function Ki(e){e=e|0;return o[e+128>>2]|0}function Gi(e){e=e|0;return o[e+296>>2]|0}function Hi(e){e=e|0;return pe(165)|0}function Vi(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0;l=h;h=h+144|0;f=l;s=pe(165)|0;if(s>>>0>n>>>0){o[e+300>>2]=2;t=-1;h=l;return t|0}n=e+132|0;do{if((i-(o[e+260>>2]|0)|0)>-1){ki(n,i);Ms(f|0,n|0,132)|0}else{if((i-(o[e+128>>2]|0)|0)>=0){Ms(f|0,e|0,132)|0;ki(f,i);break}o[e+300>>2]=12;t=-1;h=l;return t|0}}while(0);c=t+s+-165|0;r[c>>0]=1;a=c+1|0;r[a>>0]=i>>>24;a=a+1|0;r[a>>0]=i>>>16;a=a+1|0;r[a>>0]=i>>>8;r[a+1>>0]=i;a=t+(s+-161)|0;s=t+(s+-160)|0;n=f;i=s+128|0;do{r[s>>0]=r[n>>0]|0;s=s+1|0;n=n+1|0}while((s|0)<(i|0));s=a+129|0;n=e+264|0;i=s+32|0;do{r[s>>0]=r[n>>0]|0;s=s+1|0;n=n+1|0}while((s|0)<(i|0));t=me(c,165,t)|0;h=l;return t|0}function Qi(e){e=e|0;return Si(o[e>>2]|0)|0}function Wi(){return 100}function Yi(e){e=e|0;Gr(e,100);return e|0}function Xi(e){e=e|0;Gr(e,100);return 100}function Ji(e){e=e|0;return 32}function Zi(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<32){o[e>>2]=1;n=-1;return n|0}else{pt(t,e+4|0);n=0;return n|0}return 0}function $i(e){e=e|0;return pe(32)|0}function eo(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e>>2]=2;n=-1;return n|0}else{me(e+4|0,32,t)|0;n=0;return n|0}return 0}function to(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e>>2]=15;n=-1;return n|0}else{ye(t,n,t)|0;mt(e+4|0,t,e+68|0);n=0;return n|0}return 0}function no(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;Tt(e+68|0,32,0,0,t,n,r,i);return 0}function ro(e){e=e|0;return pe(32)|0}function io(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+32|0;c=f;if((pe(32)|0)>>>0>a>>>0){o[e>>2]=2;c=-1;h=f;return c|0}else{Tt(e+68|0,32,0,0,r,i,c,32);Et(c,32,t,n,s);me(s,32,s)|0;c=0;h=f;return c|0}return 0}function oo(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+256|0;c=f;if((pe(32)|0)>>>0>a>>>0){o[e>>2]=2;c=-1;h=f;return c|0}else{Tt(e+68|0,32,0,0,r,i,c,256);Et(c,256,t,n,s);me(s,32,s)|0;c=0;h=f;return c|0}return 0}function so(){return 232}function ao(e){e=e|0;Gr(e,232);return e|0}function co(e){e=e|0;Gr(e,232);return 232}function fo(e){e=e|0;return Si(o[e+228>>2]|0)|0}function lo(e){e=e|0;var t=0;t=(_i(e)|0)+4|0;return Ti(t+(Me(e+132|0)|0)|0)|0}function uo(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;a=(_i(e)|0)+4|0;s=e+132|0;a=a+(Me(s)|0)|0;if((Ti(a)|0)>>>0>i>>>0){o[e+228>>2]=2;a=-1;return a|0}else{De(wi(e,Be(Ii(r,a)|0,1)|0)|0,s)|0;a=xi(t,n,r,a)|0;return a|0}return 0}function ho(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0;c=h;h=h+16|0;s=c;a=e+228|0;t=Ri(t,n,r,i,a)|0;do{if((t|0)!=-1){n=r+t|0;t=je(r,n,s)|0;if((o[s>>2]|0)!=1){o[a>>2]=9;i=-1;break}if((n|0)!=(Ne(Ai(e,t,n)|0,n,e+132|0)|0)){o[a>>2]=10;i=-1}}else i=-1}while(0);h=c;return i|0}function po(e){e=e|0;return 160}function mo(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<160){o[e+228>>2]=1;n=-1;return n|0}else{vi(e,t,0);gt(t+128|0,e+132|0);Gr(t,n);n=0;return n|0}return 0}function go(e,t){e=e|0;t=t|0;var n=0;n=Hs[o[(o[9395]|0)+4>>2]&3](37580,t)|0;t=Gs[o[o[9395]>>2]&1](37580)|0;return pe(We(o[e+128>>2]|0,n,t,64)|0)|0}function yo(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;l=h;h=h+16|0;f=l;a=Hs[o[(o[9395]|0)+4>>2]&3](37580,n)|0;c=Gs[o[o[9395]>>2]&1](37580)|0;s=e+128|0;c=We(o[s>>2]|0,a,c,64)|0;if((pe(c)|0)>>>0>i>>>0){o[e+228>>2]=2;f=-1;h=l;return f|0}a=r+(pe(c)|0)+(0-c)|0;u=Hs[o[(o[9395]|0)+4>>2]&3](37580,n)|0;i=Gs[o[o[9395]>>2]&1](37580)|0;i=(Ye(3,o[s>>2]|0,u,a,f)|0)+i|0;if((Qs[o[(o[9395]|0)+8>>2]&3](37580,e,128,t,n,o[f>>2]|0,u,a,i)|0)==-1){u=-1;h=l;return u|0}else{Ei(e);yt(e+132|0,a,i,a+i|0);u=me(a,c,r)|0;h=l;return u|0}return 0}function bo(e){e=e|0;return pe(32)|0}function vo(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e+228>>2]=2;n=-1;return n|0}else{n=me(e+132|0,32,t)|0;return n|0}return 0}function _o(e){e=e|0;return o[e+128>>2]|0}function wo(e){e=e|0;return pe(229)|0}function Ao(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0;i=pe(229)|0;if(i>>>0>n>>>0){o[e+228>>2]=2;t=-1;return t|0}else{c=t+i+-229|0;r[c>>0]=2;s=o[e+128>>2]|0;f=c+1|0;r[f>>0]=s>>>24;f=f+1|0;r[f>>0]=s>>>16;f=f+1|0;r[f>>0]=s>>>8;r[f+1>>0]=s;f=t+(i+-225)|0;i=t+(i+-224)|0;s=e;a=i+128|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));n=e+132|0;i=f+129|0;s=n;a=i+32|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));f=f+161|0;yt(n,c,f-c|0,f);t=me(c,229,t)|0;return t|0}return 0}function Eo(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0;R=h;h=h+256|0;x=R;o[x>>2]=(s[t+1>>0]|0)<<16|(s[t>>0]|0)<<24|(s[t+2>>0]|0)<<8|(s[t+3>>0]|0);o[x+4>>2]=(s[t+5>>0]|0)<<16|(s[t+4>>0]|0)<<24|(s[t+6>>0]|0)<<8|(s[t+7>>0]|0);o[x+8>>2]=(s[t+9>>0]|0)<<16|(s[t+8>>0]|0)<<24|(s[t+10>>0]|0)<<8|(s[t+11>>0]|0);o[x+12>>2]=(s[t+13>>0]|0)<<16|(s[t+12>>0]|0)<<24|(s[t+14>>0]|0)<<8|(s[t+15>>0]|0);o[x+16>>2]=(s[t+17>>0]|0)<<16|(s[t+16>>0]|0)<<24|(s[t+18>>0]|0)<<8|(s[t+19>>0]|0);o[x+20>>2]=(s[t+21>>0]|0)<<16|(s[t+20>>0]|0)<<24|(s[t+22>>0]|0)<<8|(s[t+23>>0]|0);o[x+24>>2]=(s[t+25>>0]|0)<<16|(s[t+24>>0]|0)<<24|(s[t+26>>0]|0)<<8|(s[t+27>>0]|0);o[x+28>>2]=(s[t+29>>0]|0)<<16|(s[t+28>>0]|0)<<24|(s[t+30>>0]|0)<<8|(s[t+31>>0]|0);o[x+32>>2]=(s[t+33>>0]|0)<<16|(s[t+32>>0]|0)<<24|(s[t+34>>0]|0)<<8|(s[t+35>>0]|0);o[x+36>>2]=(s[t+37>>0]|0)<<16|(s[t+36>>0]|0)<<24|(s[t+38>>0]|0)<<8|(s[t+39>>0]|0);o[x+40>>2]=(s[t+41>>0]|0)<<16|(s[t+40>>0]|0)<<24|(s[t+42>>0]|0)<<8|(s[t+43>>0]|0);o[x+44>>2]=(s[t+45>>0]|0)<<16|(s[t+44>>0]|0)<<24|(s[t+46>>0]|0)<<8|(s[t+47>>0]|0);o[x+48>>2]=(s[t+49>>0]|0)<<16|(s[t+48>>0]|0)<<24|(s[t+50>>0]|0)<<8|(s[t+51>>0]|0);o[x+52>>2]=(s[t+53>>0]|0)<<16|(s[t+52>>0]|0)<<24|(s[t+54>>0]|0)<<8|(s[t+55>>0]|0);o[x+56>>2]=(s[t+57>>0]|0)<<16|(s[t+56>>0]|0)<<24|(s[t+58>>0]|0)<<8|(s[t+59>>0]|0);o[x+60>>2]=(s[t+61>>0]|0)<<16|(s[t+60>>0]|0)<<24|(s[t+62>>0]|0)<<8|(s[t+63>>0]|0);t=16;n=o[x>>2]|0;do{I=o[x+(t+-2<<2)>>2]|0;T=n;n=o[x+(t+-15<<2)>>2]|0;o[x+(t<<2)>>2]=T+(o[x+(t+-7<<2)>>2]|0)+((I>>>19|I<<13)^I>>>10^(I>>>17|I<<15))+((n>>>18|n<<14)^n>>>3^(n>>>7|n<<25));t=t+1|0}while((t|0)!=64);p=e+80|0;m=o[p>>2]|0;g=e+84|0;y=o[g>>2]|0;b=e+88|0;v=o[b>>2]|0;_=e+92|0;w=o[_>>2]|0;A=e+96|0;E=o[A>>2]|0;k=e+100|0;S=o[k>>2]|0;T=e+104|0;I=o[T>>2]|0;u=e+108|0;d=o[u>>2]|0;e=y;t=d;r=I;i=S;a=E;n=w;c=v;f=m;l=0;while(1){C=((a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7))+t+(r&~a^i&a)+(o[32768+(l<<2)>>2]|0)+(o[x+(l<<2)>>2]|0)|0;t=C+n|0;n=((f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10))+(f&(e^c)^e&c)+C|0;l=l+1|0;if((l|0)==64)break;else{D=c;M=a;P=i;O=r;C=f;a=t;f=n;c=e;n=D;i=M;r=P;t=O;e=C}}o[p>>2]=n+m;o[g>>2]=f+y;o[b>>2]=e+v;o[_>>2]=c+w;o[A>>2]=t+E;o[k>>2]=a+S;o[T>>2]=i+I;o[u>>2]=r+d;h=R;return}function ko(e){e=e|0;var t=0;o[e+64>>2]=0;t=e+72|0;o[t>>2]=0;o[t+4>>2]=0;o[e+80>>2]=1779033703;o[e+84>>2]=-1150833019;o[e+88>>2]=1013904242;o[e+92>>2]=-1521486534;o[e+96>>2]=1359893119;o[e+100>>2]=-1694144372;o[e+104>>2]=528734635;o[e+108>>2]=1541459225;return}function So(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0;if(!n)return;a=e+64|0;c=e+72|0;s=0;i=o[a>>2]|0;do{r[e+i>>0]=r[t+s>>0]|0;i=(o[a>>2]|0)+1|0;o[a>>2]=i;if((i|0)==64){Eo(e,e);f=c;f=ks(o[f>>2]|0,o[f+4>>2]|0,512,0)|0;i=c;o[i>>2]=f;o[i+4>>2]=T;o[a>>2]=0;i=0}s=s+1|0}while((s|0)!=(n|0));return}function To(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0;s=e+64|0;n=o[s>>2]|0;i=n+1|0;r[e+n>>0]=-128;if(n>>>0<56){if(i>>>0<56)Ds(e+i|0,0,55-n|0)|0}else{if(i>>>0<64)Ds(e+i|0,0,63-n|0)|0;Eo(e,e);n=e;i=n+56|0;do{o[n>>2]=0;n=n+4|0}while((n|0)<(i|0))}f=e+72|0;l=f;l=ks(o[l>>2]|0,o[l+4>>2]|0,o[s>>2]<<3|0,0)|0;u=T;o[f>>2]=l;o[f+4>>2]=u;r[e+63>>0]=l;f=Cs(l|0,u|0,8)|0;r[e+62>>0]=f;f=Cs(l|0,u|0,16)|0;r[e+61>>0]=f;f=Cs(l|0,u|0,24)|0;r[e+60>>0]=f;r[e+59>>0]=u;f=Cs(l|0,u|0,40)|0;r[e+58>>0]=f;f=Cs(l|0,u|0,48)|0;r[e+57>>0]=f;u=Cs(l|0,u|0,56)|0;r[e+56>>0]=u;Eo(e,e);u=e+80|0;l=e+84|0;f=e+88|0;c=e+92|0;a=e+96|0;n=e+100|0;i=e+104|0;s=e+108|0;r[t>>0]=(o[u>>2]|0)>>>24;r[t+4>>0]=(o[l>>2]|0)>>>24;r[t+8>>0]=(o[f>>2]|0)>>>24;r[t+12>>0]=(o[c>>2]|0)>>>24;r[t+16>>0]=(o[a>>2]|0)>>>24;r[t+20>>0]=(o[n>>2]|0)>>>24;r[t+24>>0]=(o[i>>2]|0)>>>24;r[t+28>>0]=(o[s>>2]|0)>>>24;r[t+1>>0]=(o[u>>2]|0)>>>16;r[t+5>>0]=(o[l>>2]|0)>>>16;r[t+9>>0]=(o[f>>2]|0)>>>16;r[t+13>>0]=(o[c>>2]|0)>>>16;r[t+17>>0]=(o[a>>2]|0)>>>16;r[t+21>>0]=(o[n>>2]|0)>>>16;r[t+25>>0]=(o[i>>2]|0)>>>16;r[t+29>>0]=(o[s>>2]|0)>>>16;r[t+2>>0]=(o[u>>2]|0)>>>8;r[t+6>>0]=(o[l>>2]|0)>>>8;r[t+10>>0]=(o[f>>2]|0)>>>8;r[t+14>>0]=(o[c>>2]|0)>>>8;r[t+18>>0]=(o[a>>2]|0)>>>8;r[t+22>>0]=(o[n>>2]|0)>>>8;r[t+26>>0]=(o[i>>2]|0)>>>8;r[t+30>>0]=(o[s>>2]|0)>>>8;r[t+3>>0]=o[u>>2];r[t+7>>0]=o[l>>2];r[t+11>>0]=o[f>>2];r[t+15>>0]=o[c>>2];r[t+19>>0]=o[a>>2];r[t+23>>0]=o[n>>2];r[t+27>>0]=o[i>>2];r[t+31>>0]=o[s>>2];return}function Io(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0;L=h;h=h+16|0;M=L;U=M+4|0;E=M+8|0;k=M+12|0;_=r[e+4>>0]|0;S=M+1|0;f=r[e+5>>0]|0;T=M+5|0;m=r[e+6>>0]|0;I=M+9|0;u=r[e+7>>0]|0;x=M+13|0;b=r[e+8>>0]|0;R=M+2|0;d=r[e+9>>0]|0;C=M+6|0;A=r[e+10>>0]|0;O=M+10|0;l=r[e+11>>0]|0;P=M+14|0;a=r[e+12>>0]|0;D=M+3|0;q=r[e+13>>0]|0;N=M+7|0;g=r[e+14>>0]|0;B=M+11|0;p=r[e+15>>0]|0;j=M+15|0;v=o[n>>2]|0;y=v>>>24^(s[e>>0]|0);w=v>>>16^(s[e+1>>0]|0);c=v>>>8^(s[e+2>>0]|0);v=v^(s[e+3>>0]|0);r[k>>0]=v;F=o[n+4>>2]|0;_=F>>>24^_&255;f=F>>>16^f&255;m=F>>>8^m&255;u=F^u&255;F=o[n+8>>2]|0;b=F>>>24^b&255;d=F>>>16^d&255;A=F>>>8^A&255;l=F^l&255;F=o[n+12>>2]|0;a=F>>>24^a&255;e=F>>>16^q&255;g=F>>>8^g&255;p=F^p&255;r[M>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[S>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[R>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;r[D>>0]=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;r[U>>0]=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=e;r[N>>0]=w;r[E>>0]=A;r[O>>0]=c;r[I>>0]=g;r[B>>0]=m;r[k>>0]=p;r[j>>0]=l;r[P>>0]=u;r[x>>0]=v;xo(M);v=o[n+16>>2]|0;u=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);p=v>>>8^(s[E>>0]|0);r[E>>0]=p;v=v^(s[k>>0]|0);r[k>>0]=v;m=o[n+20>>2]|0;g=m>>>24^(s[S>>0]|0);c=m>>>16^(s[T>>0]|0);A=m>>>8^(s[I>>0]|0);m=m^(s[x>>0]|0);r[x>>0]=m;w=o[n+24>>2]|0;e=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);f=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);a=o[n+28>>2]|0;b=a>>>24^(s[D>>0]|0);_=a>>>16^(s[N>>0]|0);y=a>>>8^(s[B>>0]|0);a=a^(s[j>>0]|0);r[M>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;r[S>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;r[R>>0]=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[D>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;r[U>>0]=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=_;r[N>>0]=l;r[E>>0]=f;r[O>>0]=p;r[I>>0]=y;r[B>>0]=A;r[k>>0]=a;r[j>>0]=w;r[P>>0]=m;r[x>>0]=v;xo(M);v=o[n+32>>2]|0;m=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);a=v>>>8^(s[E>>0]|0);r[E>>0]=a;v=v^(s[k>>0]|0);r[k>>0]=v;A=o[n+36>>2]|0;y=A>>>24^(s[S>>0]|0);p=A>>>16^(s[T>>0]|0);f=A>>>8^(s[I>>0]|0);A=A^(s[x>>0]|0);r[x>>0]=A;l=o[n+40>>2]|0;_=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);c=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);b=o[n+44>>2]|0;e=b>>>24^(s[D>>0]|0);g=b>>>16^(s[N>>0]|0);u=b>>>8^(s[B>>0]|0);b=b^(s[j>>0]|0);r[M>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[S>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[R>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[D>>0]=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;r[U>>0]=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=g;r[N>>0]=w;r[E>>0]=c;r[O>>0]=a;r[I>>0]=u;r[B>>0]=f;r[k>>0]=b;r[j>>0]=l;r[P>>0]=A;r[x>>0]=v;xo(M);v=o[n+48>>2]|0;A=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);b=v>>>8^(s[E>>0]|0);r[E>>0]=b;v=v^(s[k>>0]|0);r[k>>0]=v;f=o[n+52>>2]|0;u=f>>>24^(s[S>>0]|0);a=f>>>16^(s[T>>0]|0);c=f>>>8^(s[I>>0]|0);f=f^(s[x>>0]|0);r[x>>0]=f;w=o[n+56>>2]|0;g=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);p=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);e=o[n+60>>2]|0;_=e>>>24^(s[D>>0]|0);y=e>>>16^(s[N>>0]|0);m=e>>>8^(s[B>>0]|0);e=e^(s[j>>0]|0);r[M>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;r[S>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;r[R>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;r[D>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;r[U>>0]=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=y;r[N>>0]=l;r[E>>0]=p;r[O>>0]=b;r[I>>0]=m;r[B>>0]=c;r[k>>0]=e;r[j>>0]=w;r[P>>0]=f;r[x>>0]=v;xo(M);v=o[n+64>>2]|0;f=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);e=v>>>8^(s[E>>0]|0);r[E>>0]=e;v=v^(s[k>>0]|0);r[k>>0]=v;c=o[n+68>>2]|0;m=c>>>24^(s[S>>0]|0);b=c>>>16^(s[T>>0]|0);p=c>>>8^(s[I>>0]|0);c=c^(s[x>>0]|0);r[x>>0]=c;l=o[n+72>>2]|0;y=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);a=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);_=o[n+76>>2]|0;g=_>>>24^(s[D>>0]|0);u=_>>>16^(s[N>>0]|0);A=_>>>8^(s[B>>0]|0);_=_^(s[j>>0]|0);r[M>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[S>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[R>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[D>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;r[U>>0]=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=u;r[N>>0]=w;r[E>>0]=a;r[O>>0]=e;r[I>>0]=A;r[B>>0]=p;r[k>>0]=_;r[j>>0]=l;r[P>>0]=c;r[x>>0]=v;xo(M);v=o[n+80>>2]|0;c=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);_=v>>>8^(s[E>>0]|0);r[E>>0]=_;v=v^(s[k>>0]|0);r[k>>0]=v;p=o[n+84>>2]|0;A=p>>>24^(s[S>>0]|0);e=p>>>16^(s[T>>0]|0);a=p>>>8^(s[I>>0]|0);p=p^(s[x>>0]|0);r[x>>0]=p;w=o[n+88>>2]|0;u=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);b=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);g=o[n+92>>2]|0;y=g>>>24^(s[D>>0]|0);m=g>>>16^(s[N>>0]|0);f=g>>>8^(s[B>>0]|0);g=g^(s[j>>0]|0);r[M>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[S>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;r[R>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;r[D>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;r[U>>0]=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=m;r[N>>0]=l;r[E>>0]=b;r[O>>0]=_;r[I>>0]=f;r[B>>0]=a;r[k>>0]=g;r[j>>0]=w;r[P>>0]=p;r[x>>0]=v;xo(M);v=o[n+96>>2]|0;p=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);g=v>>>8^(s[E>>0]|0);r[E>>0]=g;v=v^(s[k>>0]|0);r[k>>0]=v;a=o[n+100>>2]|0;f=a>>>24^(s[S>>0]|0);_=a>>>16^(s[T>>0]|0);b=a>>>8^(s[I>>0]|0);a=a^(s[x>>0]|0);r[x>>0]=a;l=o[n+104>>2]|0;m=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);e=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);y=o[n+108>>2]|0;u=y>>>24^(s[D>>0]|0);A=y>>>16^(s[N>>0]|0);c=y>>>8^(s[B>>0]|0);y=y^(s[j>>0]|0);r[M>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[S>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[R>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[D>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[U>>0]=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=A;r[N>>0]=w;r[E>>0]=e;r[O>>0]=g;r[I>>0]=c;r[B>>0]=b;r[k>>0]=y;r[j>>0]=l;r[P>>0]=a;r[x>>0]=v;xo(M);v=o[n+112>>2]|0;a=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);y=v>>>8^(s[E>>0]|0);r[E>>0]=y;v=v^(s[k>>0]|0);r[k>>0]=v;b=o[n+116>>2]|0;c=b>>>24^(s[S>>0]|0);g=b>>>16^(s[T>>0]|0);e=b>>>8^(s[I>>0]|0);b=b^(s[x>>0]|0);r[x>>0]=b;w=o[n+120>>2]|0;A=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);_=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);u=o[n+124>>2]|0;m=u>>>24^(s[D>>0]|0);f=u>>>16^(s[N>>0]|0);p=u>>>8^(s[B>>0]|0);u=u^(s[j>>0]|0);r[M>>0]=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[S>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[R>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;r[D>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;r[U>>0]=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=f;r[N>>0]=l;r[E>>0]=_;r[O>>0]=y;r[I>>0]=p;r[B>>0]=e;r[k>>0]=u;r[j>>0]=w;r[P>>0]=b;r[x>>0]=v;xo(M);v=o[n+128>>2]|0;b=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);u=v>>>8^(s[E>>0]|0);r[E>>0]=u;v=v^(s[k>>0]|0);r[k>>0]=v;e=o[n+132>>2]|0;p=e>>>24^(s[S>>0]|0);y=e>>>16^(s[T>>0]|0);_=e>>>8^(s[I>>0]|0);e=e^(s[x>>0]|0);r[x>>0]=e;l=o[n+136>>2]|0;f=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);g=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);m=o[n+140>>2]|0;A=m>>>24^(s[D>>0]|0);c=m>>>16^(s[N>>0]|0);a=m>>>8^(s[B>>0]|0);m=m^(s[j>>0]|0);r[M>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;r[S>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[R>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;r[U>>0]=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=c;r[N>>0]=w;r[E>>0]=g;r[O>>0]=u;r[I>>0]=a;r[B>>0]=_;r[k>>0]=m;r[j>>0]=l;r[P>>0]=e;r[x>>0]=v;xo(M);v=o[n+144>>2]|0;e=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);m=v>>>8^(s[E>>0]|0);r[E>>0]=m;v=v^(s[k>>0]|0);r[k>>0]=v;_=o[n+148>>2]|0;a=_>>>24^(s[S>>0]|0);u=_>>>16^(s[T>>0]|0);g=_>>>8^(s[I>>0]|0);_=_^(s[x>>0]|0);r[x>>0]=_;w=o[n+152>>2]|0;c=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);y=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);A=o[n+156>>2]|0;f=A>>>24^(s[D>>0]|0);p=A>>>16^(s[N>>0]|0);b=A>>>8^(s[B>>0]|0);A=A^(s[j>>0]|0);e=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[M>>0]=e;a=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[S>>0]=a;c=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[R>>0]=c;f=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=f;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;r[U>>0]=u;r[T>>0]=d;r[C>>0]=p;r[N>>0]=l;r[E>>0]=y;r[O>>0]=m;r[I>>0]=b;r[B>>0]=g;r[k>>0]=A;r[j>>0]=w;r[P>>0]=_;r[x>>0]=v;if((i|0)==128){z=b;K=d;G=41;H=A;A=y;V=u;q=e;e=40;F=w;b=g;y=l;g=f;d=43;i=p;u=c;p=42;f=n+(e<<2)|0;f=o[f>>2]|0;w=f>>>24;c=f>>>16;l=f>>>8;q=q&255;q=w^q;q=q&255;r[M>>0]=q;w=V&255;w=c^w;w=w&255;r[U>>0]=w;A=A&255;A=l^A;A=A&255;r[E>>0]=A;E=H&255;E=f^E;E=E&255;r[k>>0]=E;U=n+(G<<2)|0;U=o[U>>2]|0;f=U>>>24;l=U>>>16;M=U>>>8;k=a&255;k=f^k;k=k&255;r[S>>0]=k;S=K&255;S=l^S;S=S&255;r[T>>0]=S;T=z&255;T=M^T;T=T&255;r[I>>0]=T;I=v&255;I=U^I;I=I&255;r[x>>0]=I;U=n+(p<<2)|0;U=o[U>>2]|0;p=U>>>24;v=U>>>16;M=U>>>8;x=u&255;x=p^x;x=x&255;r[R>>0]=x;i=i&255;i=v^i;i=i&255;r[C>>0]=i;C=m&255;C=M^C;C=C&255;r[O>>0]=C;O=_&255;O=U^O;O=O&255;r[P>>0]=O;P=n+(d<<2)|0;P=o[P>>2]|0;n=P>>>24;U=P>>>16;R=P>>>8;M=g&255;M=n^M;M=M&255;r[D>>0]=M;D=y&255;D=U^D;D=D&255;r[N>>0]=D;U=b&255;U=R^U;U=U&255;r[B>>0]=U;F=F&255;F=P^F;F=F&255;r[j>>0]=F;r[t>>0]=q;q=t+1|0;r[q>>0]=w;q=t+2|0;r[q>>0]=A;q=t+3|0;r[q>>0]=E;q=t+4|0;r[q>>0]=k;q=t+5|0;r[q>>0]=S;q=t+6|0;r[q>>0]=T;q=t+7|0;r[q>>0]=I;q=t+8|0;r[q>>0]=x;q=t+9|0;r[q>>0]=i;q=t+10|0;r[q>>0]=C;q=t+11|0;r[q>>0]=O;q=t+12|0;r[q>>0]=M;q=t+13|0;r[q>>0]=D;q=t+14|0;r[q>>0]=U;q=t+15|0;r[q>>0]=F;h=L;return}xo(M);v=o[n+160>>2]|0;b=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);u=v>>>8^(s[E>>0]|0);r[E>>0]=u;v=v^(s[k>>0]|0);r[k>>0]=v;e=o[n+164>>2]|0;p=e>>>24^(s[S>>0]|0);y=e>>>16^(s[T>>0]|0);_=e>>>8^(s[I>>0]|0);e=e^(s[x>>0]|0);r[x>>0]=e;l=o[n+168>>2]|0;f=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);g=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);m=o[n+172>>2]|0;A=m>>>24^(s[D>>0]|0);c=m>>>16^(s[N>>0]|0);a=m>>>8^(s[B>>0]|0);m=m^(s[j>>0]|0);r[M>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;r[S>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[R>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;r[U>>0]=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=c;r[N>>0]=w;r[E>>0]=g;r[O>>0]=u;r[I>>0]=a;r[B>>0]=_;r[k>>0]=m;r[j>>0]=l;r[P>>0]=e;r[x>>0]=v;xo(M);v=o[n+176>>2]|0;e=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);m=v>>>8^(s[E>>0]|0);r[E>>0]=m;v=v^(s[k>>0]|0);r[k>>0]=v;_=o[n+180>>2]|0;a=_>>>24^(s[S>>0]|0);u=_>>>16^(s[T>>0]|0);g=_>>>8^(s[I>>0]|0);_=_^(s[x>>0]|0);r[x>>0]=_;w=o[n+184>>2]|0;c=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);y=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);A=o[n+188>>2]|0;f=A>>>24^(s[D>>0]|0);p=A>>>16^(s[N>>0]|0);b=A>>>8^(s[B>>0]|0);A=A^(s[j>>0]|0);e=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[M>>0]=e;a=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[S>>0]=a;c=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[R>>0]=c;f=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=f;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;r[U>>0]=u;r[T>>0]=d;r[C>>0]=p;r[N>>0]=l;r[E>>0]=y;r[O>>0]=m;r[I>>0]=b;r[B>>0]=g;r[k>>0]=A;r[j>>0]=w;r[P>>0]=_;r[x>>0]=v;if((i|0)==192){Q=b;W=49;Y=A;A=y;V=e;e=48;H=w;G=g;K=l;z=f;b=51;q=_;F=m;y=p;g=c;_=50;i=v;m=n+(e<<2)|0;m=o[m>>2]|0;w=m>>>24;p=m>>>16;v=m>>>8;V=V&255;V=w^V;V=V&255;r[M>>0]=V;w=u&255;w=p^w;w=w&255;r[U>>0]=w;A=A&255;A=v^A;A=A&255;r[E>>0]=A;E=Y&255;E=m^E;E=E&255;r[k>>0]=E;U=n+(W<<2)|0;U=o[U>>2]|0;m=U>>>24;v=U>>>16;M=U>>>8;k=a&255;k=m^k;k=k&255;r[S>>0]=k;S=d&255;S=v^S;S=S&255;r[T>>0]=S;T=Q&255;T=M^T;T=T&255;r[I>>0]=T;i=i&255;i=U^i;i=i&255;r[x>>0]=i;x=n+(_<<2)|0;x=o[x>>2]|0;U=x>>>24;_=x>>>16;I=x>>>8;M=g&255;M=U^M;M=M&255;r[R>>0]=M;U=y&255;U=_^U;U=U&255;r[C>>0]=U;F=F&255;F=I^F;F=F&255;r[O>>0]=F;q=q&255;q=x^q;q=q&255;r[P>>0]=q;P=n+(b<<2)|0;P=o[P>>2]|0;R=P>>>24;C=P>>>16;O=P>>>8;z=z&255;z=R^z;z=z&255;r[D>>0]=z;K=K&255;K=C^K;K=K&255;r[N>>0]=K;G=G&255;G=O^G;G=G&255;r[B>>0]=G;H=H&255;H=P^H;H=H&255;r[j>>0]=H;r[t>>0]=V;V=t+1|0;r[V>>0]=w;V=t+2|0;r[V>>0]=A;V=t+3|0;r[V>>0]=E;V=t+4|0;r[V>>0]=k;V=t+5|0;r[V>>0]=S;V=t+6|0;r[V>>0]=T;V=t+7|0;r[V>>0]=i;V=t+8|0;r[V>>0]=M;V=t+9|0;r[V>>0]=U;V=t+10|0;r[V>>0]=F;V=t+11|0;r[V>>0]=q;V=t+12|0;r[V>>0]=z;V=t+13|0;r[V>>0]=K;V=t+14|0;r[V>>0]=G;V=t+15|0;r[V>>0]=H;h=L;return}xo(M);F=o[n+192>>2]|0;y=F>>>24^(s[M>>0]|0);W=F>>>16^(s[U>>0]|0);w=F>>>8^(s[E>>0]|0);r[E>>0]=w;F=F^(s[k>>0]|0);r[k>>0]=F;Y=o[n+196>>2]|0;z=Y>>>24^(s[S>>0]|0);A=Y>>>16^(s[T>>0]|0);G=Y>>>8^(s[I>>0]|0);Y=Y^(s[x>>0]|0);r[x>>0]=Y;V=o[n+200>>2]|0;H=V>>>24^(s[R>>0]|0);g=V>>>16^(s[C>>0]|0);Q=V>>>8^(s[O>>0]|0);V=V^(s[P>>0]|0);K=o[n+204>>2]|0;p=K>>>24^(s[D>>0]|0);q=K>>>16^(s[N>>0]|0);i=K>>>8^(s[B>>0]|0);K=K^(s[j>>0]|0);r[M>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[S>>0]=r[(z&15)+(33024+(z>>>4<<4))>>0]|0;r[R>>0]=r[(H&15)+(33024+(H>>>4<<4))>>0]|0;r[D>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;W=r[(W&15)+(33024+((W>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;q=r[(q&15)+(33024+((q>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;G=r[(G&15)+(33024+((G>>>4&15)<<4))>>0]|0;Q=r[(Q&15)+(33024+((Q>>>4&15)<<4))>>0]|0;i=r[(i&15)+(33024+((i>>>4&15)<<4))>>0]|0;F=r[(F&15)+(33024+((F>>>4&15)<<4))>>0]|0;Y=r[(Y&15)+(33024+((Y>>>4&15)<<4))>>0]|0;V=r[(V&15)+(33024+((V>>>4&15)<<4))>>0]|0;K=r[(K&15)+(33024+((K>>>4&15)<<4))>>0]|0;r[U>>0]=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;r[T>>0]=g;r[C>>0]=q;r[N>>0]=W;r[E>>0]=Q;r[O>>0]=w;r[I>>0]=i;r[B>>0]=G;r[k>>0]=K;r[j>>0]=V;r[P>>0]=Y;r[x>>0]=F;xo(M);F=o[n+208>>2]|0;Y=F>>>24^(s[M>>0]|0);V=F>>>16^(s[U>>0]|0);K=F>>>8^(s[E>>0]|0);r[E>>0]=K;F=F^(s[k>>0]|0);r[k>>0]=F;G=o[n+212>>2]|0;i=G>>>24^(s[S>>0]|0);w=G>>>16^(s[T>>0]|0);Q=G>>>8^(s[I>>0]|0);G=G^(s[x>>0]|0);r[x>>0]=G;W=o[n+216>>2]|0;q=W>>>24^(s[R>>0]|0);g=W>>>16^(s[C>>0]|0);A=W>>>8^(s[O>>0]|0);W=W^(s[P>>0]|0);p=o[n+220>>2]|0;H=p>>>24^(s[D>>0]|0);z=p>>>16^(s[N>>0]|0);y=p>>>8^(s[B>>0]|0);p=p^(s[j>>0]|0);Y=r[(Y&15)+(33024+(Y>>>4<<4))>>0]|0;i=r[(i&15)+(33024+(i>>>4<<4))>>0]|0;r[S>>0]=i;q=r[(q&15)+(33024+(q>>>4<<4))>>0]|0;r[R>>0]=q;H=r[(H&15)+(33024+(H>>>4<<4))>>0]|0;r[D>>0]=H;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;b=57;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;m=56;W=r[(W&15)+(33024+((W>>>4&15)<<4))>>0]|0;Q=r[(Q&15)+(33024+((Q>>>4&15)<<4))>>0]|0;V=r[(V&15)+(33024+((V>>>4&15)<<4))>>0]|0;_=59;G=r[(G&15)+(33024+((G>>>4&15)<<4))>>0]|0;K=r[(K&15)+(33024+((K>>>4&15)<<4))>>0]|0;z=r[(z&15)+(33024+((z>>>4&15)<<4))>>0]|0;v=58;F=r[(F&15)+(33024+((F>>>4&15)<<4))>>0]|0;m=n+(m<<2)|0;m=o[m>>2]|0;l=m>>>24;u=m>>>16;d=m>>>8;Y=Y&255;Y=l^Y;Y=Y&255;r[M>>0]=Y;w=w&255;w=u^w;w=w&255;r[U>>0]=w;A=A&255;A=d^A;A=A&255;r[E>>0]=A;E=p&255;E=m^E;E=E&255;r[k>>0]=E;k=n+(b<<2)|0;k=o[k>>2]|0;M=k>>>24;U=k>>>16;b=k>>>8;i=i&255;i=M^i;i=i&255;r[S>>0]=i;M=g&255;M=U^M;M=M&255;r[T>>0]=M;U=y&255;U=b^U;U=U&255;r[I>>0]=U;F=F&255;F=k^F;F=F&255;r[x>>0]=F;x=n+(v<<2)|0;x=o[x>>2]|0;S=x>>>24;T=x>>>16;I=x>>>8;q=q&255;q=S^q;q=q&255;r[R>>0]=q;z=z&255;z=T^z;z=z&255;r[C>>0]=z;K=K&255;K=I^K;K=K&255;r[O>>0]=K;G=G&255;G=x^G;G=G&255;r[P>>0]=G;P=n+(_<<2)|0;P=o[P>>2]|0;R=P>>>24;C=P>>>16;O=P>>>8;H=H&255;H=R^H;H=H&255;r[D>>0]=H;V=V&255;V=C^V;V=V&255;r[N>>0]=V;Q=Q&255;Q=O^Q;Q=Q&255;r[B>>0]=Q;W=W&255;W=P^W;W=W&255;r[j>>0]=W;r[t>>0]=Y;Y=t+1|0;r[Y>>0]=w;Y=t+2|0;r[Y>>0]=A;Y=t+3|0;r[Y>>0]=E;Y=t+4|0;r[Y>>0]=i;Y=t+5|0;r[Y>>0]=M;Y=t+6|0;r[Y>>0]=U;Y=t+7|0;r[Y>>0]=F;Y=t+8|0;r[Y>>0]=q;Y=t+9|0;r[Y>>0]=z;Y=t+10|0;r[Y>>0]=K;Y=t+11|0;r[Y>>0]=G;Y=t+12|0;r[Y>>0]=H;Y=t+13|0;r[Y>>0]=V;Y=t+14|0;r[Y>>0]=Q;Y=t+15|0;r[Y>>0]=W;h=L;return}function xo(e){e=e|0;var t=0,n=0,i=0,o=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0;h=r[e>>0]|0;u=e+4|0;i=r[u>>0]|0;o=e+8|0;s=r[o>>0]|0;a=e+12|0;n=r[a>>0]|0;f=h&255;c=i&255;t=s&255;d=n&255;r[e>>0]=n^s^r[33280+(f*6|0)>>0]^r[33280+(c*6|0)+1>>0];r[u>>0]=r[33280+(c*6|0)>>0]^h^n^r[33280+(t*6|0)+1>>0];r[o>>0]=r[33280+(d*6|0)+1>>0]^(r[33280+(t*6|0)>>0]^(i^h));r[a>>0]=s^i^r[33280+(f*6|0)+1>>0]^r[33280+(d*6|0)>>0];a=e+1|0;d=r[a>>0]|0;f=e+5|0;i=r[f>>0]|0;s=e+9|0;o=r[s>>0]|0;h=e+13|0;t=r[h>>0]|0;u=d&255;n=i&255;c=o&255;l=t&255;r[a>>0]=t^o^r[33280+(u*6|0)>>0]^r[33280+(n*6|0)+1>>0];r[f>>0]=r[33280+(n*6|0)>>0]^d^t^r[33280+(c*6|0)+1>>0];r[s>>0]=r[33280+(l*6|0)+1>>0]^(r[33280+(c*6|0)>>0]^(i^d));r[h>>0]=o^i^r[33280+(u*6|0)+1>>0]^r[33280+(l*6|0)>>0];h=e+2|0;l=r[h>>0]|0;u=e+6|0;i=r[u>>0]|0;o=e+10|0;s=r[o>>0]|0;d=e+14|0;c=r[d>>0]|0;f=l&255;t=i&255;n=s&255;a=c&255;r[h>>0]=c^s^r[33280+(f*6|0)>>0]^r[33280+(t*6|0)+1>>0];r[u>>0]=r[33280+(t*6|0)>>0]^l^c^r[33280+(n*6|0)+1>>0];r[o>>0]=r[33280+(a*6|0)+1>>0]^(r[33280+(n*6|0)>>0]^(i^l));r[d>>0]=s^i^r[33280+(f*6|0)+1>>0]^r[33280+(a*6|0)>>0];d=e+3|0;a=r[d>>0]|0;f=e+7|0;i=r[f>>0]|0;s=e+11|0;o=r[s>>0]|0;e=e+15|0;l=r[e>>0]|0;n=a&255;u=i&255;c=o&255;t=l&255;r[d>>0]=l^o^r[33280+(n*6|0)>>0]^r[33280+(u*6|0)+1>>0];r[f>>0]=r[33280+(u*6|0)>>0]^a^l^r[33280+(c*6|0)+1>>0];r[s>>0]=r[33280+(t*6|0)+1>>0]^(r[33280+(c*6|0)>>0]^(i^a));r[e>>0]=o^i^r[33280+(n*6|0)+1>>0]^r[33280+(t*6|0)>>0];return}function Ro(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,a=0;switch(n|0){case 128:{i=4;a=44;break}case 192:{i=6;a=52;break}case 256:{i=8;a=60;break}default:return}n=0;do{r=n<<2;o[t+(n<<2)>>2]=(s[e+(r|1)>>0]|0)<<16|(s[e+r>>0]|0)<<24|(s[e+(r|2)>>0]|0)<<8|(s[e+(r|3)>>0]|0);n=n+1|0}while(n>>>0>>0);if(i>>>0<=6){r=i;do{e=r+-1|0;n=o[t+(e<<2)>>2]|0;if(!((r>>>0)%(i>>>0)|0))n=((s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)<<8|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)|(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<16|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<24)^o[34816+(((e|0)/(i|0)|0)<<2)>>2];o[t+(r<<2)>>2]=o[t+(r-i<<2)>>2]^n;r=r+1|0}while((r|0)!=(a|0));return}r=i;do{e=r+-1|0;n=o[t+(e<<2)>>2]|0;switch(((r>>>0)%(i>>>0)|0)&15){case 0:{n=((s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)<<8|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)|(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<16|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<24)^o[34816+(((e|0)/(i|0)|0)<<2)>>2];break}case 4:{n=(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<8|(s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<16|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)<<24;break}default:{}}o[t+(r<<2)>>2]=o[t+(r-i<<2)>>2]^n;r=r+1|0}while((r|0)!=(a|0));return}function Co(e){e=e|0;var t=0,n=0,i=0,o=0,a=0,c=0,f=0,l=0;f=e+4|0;i=e+8|0;n=e+12|0;t=s[e>>0]|0;a=s[f>>0]|0;l=s[i>>0]|0;o=s[n>>0]|0;r[e>>0]=r[33280+(o*6|0)+2>>0]^(r[33280+(l*6|0)+4>>0]^(r[33280+(a*6|0)+3>>0]^r[33280+(t*6|0)+5>>0]));r[f>>0]=r[33280+(o*6|0)+4>>0]^(r[33280+(l*6|0)+3>>0]^(r[33280+(a*6|0)+5>>0]^r[33280+(t*6|0)+2>>0]));r[i>>0]=r[33280+(o*6|0)+3>>0]^(r[33280+(l*6|0)+5>>0]^(r[33280+(a*6|0)+2>>0]^r[33280+(t*6|0)+4>>0]));r[n>>0]=r[33280+(o*6|0)+5>>0]^(r[33280+(l*6|0)+2>>0]^(r[33280+(a*6|0)+4>>0]^r[33280+(t*6|0)+3>>0]));n=e+1|0;t=e+5|0;a=e+9|0;l=e+13|0;o=s[n>>0]|0;i=s[t>>0]|0;f=s[a>>0]|0;c=s[l>>0]|0;r[n>>0]=r[33280+(c*6|0)+2>>0]^(r[33280+(f*6|0)+4>>0]^(r[33280+(i*6|0)+3>>0]^r[33280+(o*6|0)+5>>0]));r[t>>0]=r[33280+(c*6|0)+4>>0]^(r[33280+(f*6|0)+3>>0]^(r[33280+(i*6|0)+5>>0]^r[33280+(o*6|0)+2>>0]));r[a>>0]=r[33280+(c*6|0)+3>>0]^(r[33280+(f*6|0)+5>>0]^(r[33280+(i*6|0)+2>>0]^r[33280+(o*6|0)+4>>0]));r[l>>0]=r[33280+(c*6|0)+5>>0]^(r[33280+(f*6|0)+2>>0]^(r[33280+(i*6|0)+4>>0]^r[33280+(o*6|0)+3>>0]));l=e+2|0;o=e+6|0;i=e+10|0;f=e+14|0;c=s[l>>0]|0;a=s[o>>0]|0;t=s[i>>0]|0;n=s[f>>0]|0;r[l>>0]=r[33280+(n*6|0)+2>>0]^(r[33280+(t*6|0)+4>>0]^(r[33280+(a*6|0)+3>>0]^r[33280+(c*6|0)+5>>0]));r[o>>0]=r[33280+(n*6|0)+4>>0]^(r[33280+(t*6|0)+3>>0]^(r[33280+(a*6|0)+5>>0]^r[33280+(c*6|0)+2>>0]));r[i>>0]=r[33280+(n*6|0)+3>>0]^(r[33280+(t*6|0)+5>>0]^(r[33280+(a*6|0)+2>>0]^r[33280+(c*6|0)+4>>0]));r[f>>0]=r[33280+(n*6|0)+5>>0]^(r[33280+(t*6|0)+2>>0]^(r[33280+(a*6|0)+4>>0]^r[33280+(c*6|0)+3>>0]));f=e+3|0;c=e+7|0;a=e+11|0;e=e+15|0;t=s[f>>0]|0;n=s[c>>0]|0;i=s[a>>0]|0;o=s[e>>0]|0;r[f>>0]=r[33280+(o*6|0)+2>>0]^(r[33280+(i*6|0)+4>>0]^(r[33280+(n*6|0)+3>>0]^r[33280+(t*6|0)+5>>0]));r[c>>0]=r[33280+(o*6|0)+4>>0]^(r[33280+(i*6|0)+3>>0]^(r[33280+(n*6|0)+5>>0]^r[33280+(t*6|0)+2>>0]));r[a>>0]=r[33280+(o*6|0)+3>>0]^(r[33280+(i*6|0)+5>>0]^(r[33280+(n*6|0)+2>>0]^r[33280+(t*6|0)+4>>0]));r[e>>0]=r[33280+(o*6|0)+5>>0]^(r[33280+(i*6|0)+2>>0]^(r[33280+(n*6|0)+4>>0]^r[33280+(t*6|0)+3>>0]));return}function Oo(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0;L=h;h=h+16|0;D=L;w=r[e>>0]|0;r[D>>0]=w;A=r[e+1>>0]|0;U=D+4|0;r[U>>0]=A;a=r[e+2>>0]|0;k=D+8|0;r[k>>0]=a;c=r[e+3>>0]|0;S=D+12|0;r[S>>0]=c;f=r[e+4>>0]|0;T=D+1|0;r[T>>0]=f;l=r[e+5>>0]|0;I=D+5|0;r[I>>0]=l;u=r[e+6>>0]|0;x=D+9|0;r[x>>0]=u;d=r[e+7>>0]|0;R=D+13|0;r[R>>0]=d;p=r[e+8>>0]|0;C=D+2|0;r[C>>0]=p;m=r[e+9>>0]|0;O=D+6|0;r[O>>0]=m;g=r[e+10>>0]|0;P=D+10|0;r[P>>0]=g;y=r[e+11>>0]|0;M=D+14|0;r[M>>0]=y;b=r[e+12>>0]|0;N=D+3|0;r[N>>0]=b;v=r[e+13>>0]|0;B=D+7|0;r[B>>0]=v;_=r[e+14>>0]|0;j=D+11|0;r[j>>0]=_;e=r[e+15>>0]|0;E=D+15|0;r[E>>0]=e;if((i|0)>128){if((i|0)>192){F=o[n+224>>2]|0;H=F>>>24^w&255;G=F>>>16^A&255;z=F>>>8^a&255;w=F^c&255;F=o[n+228>>2]|0;A=F>>>24^f&255;K=F>>>16^l&255;q=F>>>8^u&255;F=F^d&255;c=o[n+232>>2]|0;a=c>>>24^p&255;p=c>>>16^m&255;i=c>>>8^g&255;c=c^y&255;f=o[n+236>>2]|0;g=f>>>24^b&255;l=f>>>16^v&255;m=f>>>8^_&255;f=f^e&255;v=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[T>>0]=A;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[C>>0]=a;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[N>>0]=g;l=r[(l&15)+(34880+((l>>>4&15)<<4))>>0]|0;u=r[(G&15)+(34880+((G>>>4&15)<<4))>>0]|0;d=r[(K&15)+(34880+((K>>>4&15)<<4))>>0]|0;r[O>>0]=d;y=r[(p&15)+(34880+((p>>>4&15)<<4))>>0]|0;r[B>>0]=y;i=r[(i&15)+(34880+((i>>>4&15)<<4))>>0]|0;m=r[(m&15)+(34880+((m>>>4&15)<<4))>>0]|0;_=r[(z&15)+(34880+((z>>>4&15)<<4))>>0]|0;p=r[(q&15)+(34880+((q>>>4&15)<<4))>>0]|0;r[j>>0]=p;e=r[(F&15)+(34880+((F>>>4&15)<<4))>>0]|0;c=r[(c&15)+(34880+((c>>>4&15)<<4))>>0]|0;f=r[(f&15)+(34880+((f>>>4&15)<<4))>>0]|0;w=r[(w&15)+(34880+((w>>>4&15)<<4))>>0]|0;b=o[n+208>>2]|0;r[D>>0]=b>>>24^v&255;r[U>>0]=b>>>16^l&255;r[k>>0]=b>>>8^i&255;r[S>>0]=b^e&255;e=o[n+212>>2]|0;r[T>>0]=e>>>24^A&255;r[I>>0]=e>>>16^u&255;r[x>>0]=e>>>8^m&255;r[R>>0]=e^c&255;c=o[n+216>>2]|0;r[C>>0]=c>>>24^a&255;r[O>>0]=c>>>16^d&255;r[P>>0]=c>>>8^_&255;r[M>>0]=c^f&255;f=o[n+220>>2]|0;r[N>>0]=f>>>24^g&255;r[B>>0]=f>>>16^y&255;r[j>>0]=f>>>8^p&255;r[E>>0]=f^w&255;Co(D);w=r[B>>0]|0;f=r[O>>0]|0;p=r[I>>0]|0;y=r[U>>0]|0;g=r[j>>0]|0;c=r[x>>0]|0;_=r[P>>0]|0;d=r[k>>0]|0;a=r[E>>0]|0;e=r[S>>0]|0;m=r[R>>0]|0;u=r[M>>0]|0;A=s[D>>0]|0;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[D>>0]=A;b=s[T>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[T>>0]=b;i=s[C>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[C>>0]=i;l=s[N>>0]|0;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;r[N>>0]=l;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;p=p&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[O>>0]=p;f=f&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;r[B>>0]=f;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;c=c&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[j>>0]=c;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;v=o[n+192>>2]|0;r[D>>0]=v>>>24^A&255;r[U>>0]=v>>>16^w&255;r[k>>0]=v>>>8^_&255;r[S>>0]=v^m&255;m=o[n+196>>2]|0;r[T>>0]=m>>>24^b&255;r[I>>0]=m>>>16^y&255;r[x>>0]=m>>>8^g&255;r[R>>0]=m^u&255;u=o[n+200>>2]|0;r[C>>0]=u>>>24^i&255;r[O>>0]=u>>>16^p&255;r[P>>0]=u>>>8^d&255;r[M>>0]=u^a&255;a=o[n+204>>2]|0;r[N>>0]=a>>>24^l&255;r[B>>0]=a>>>16^f&255;r[j>>0]=a>>>8^c&255;r[E>>0]=a^e&255;Co(D);e=r[D>>0]|0;a=r[T>>0]|0;c=r[C>>0]|0;f=r[N>>0]|0;l=r[B>>0]|0;u=r[U>>0]|0;d=r[I>>0]|0;p=r[O>>0]|0;i=r[P>>0]|0;m=r[j>>0]|0;g=r[k>>0]|0;y=r[x>>0]|0;b=r[R>>0]|0;v=r[M>>0]|0;_=r[E>>0]|0;w=r[S>>0]|0}else{G=o[n+192>>2]|0;V=(G>>>24^w&255)&255;r[D>>0]=V;F=(G>>>16^A&255)&255;r[U>>0]=F;z=(G>>>8^a&255)&255;r[k>>0]=z;w=(G^c&255)&255;r[S>>0]=w;G=o[n+196>>2]|0;a=(G>>>24^f&255)&255;r[T>>0]=a;q=(G>>>16^l&255)&255;r[I>>0]=q;K=(G>>>8^u&255)&255;r[x>>0]=K;G=(G^d&255)&255;r[R>>0]=G;H=o[n+200>>2]|0;c=(H>>>24^p&255)&255;r[C>>0]=c;p=(H>>>16^m&255)&255;r[O>>0]=p;i=(H>>>8^g&255)&255;r[P>>0]=i;H=(H^y&255)&255;r[M>>0]=H;u=o[n+204>>2]|0;f=(u>>>24^b&255)&255;r[N>>0]=f;l=(u>>>16^v&255)&255;r[B>>0]=l;m=(u>>>8^_&255)&255;r[j>>0]=m;_=(u^e&255)&255;r[E>>0]=_;e=V;u=F;d=q;g=z;y=K;b=G;v=H}H=e&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;V=a&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[T>>0]=V;e=c&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;r[C>>0]=e;a=f&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[N>>0]=a;l=l&255;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;r[O>>0]=d;c=p&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[B>>0]=c;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;p=y&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[j>>0]=p;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;y=v&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;f=_&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;_=o[n+176>>2]|0;r[D>>0]=_>>>24^H&255;r[U>>0]=_>>>16^l&255;r[k>>0]=_>>>8^i&255;r[S>>0]=_^b&255;_=o[n+180>>2]|0;r[T>>0]=_>>>24^V&255;r[I>>0]=_>>>16^u&255;r[x>>0]=_>>>8^m&255;r[R>>0]=_^y&255;y=o[n+184>>2]|0;r[C>>0]=y>>>24^e&255;r[O>>0]=y>>>16^d&255;r[P>>0]=y>>>8^g&255;r[M>>0]=y^f&255;f=o[n+188>>2]|0;r[N>>0]=f>>>24^a&255;r[B>>0]=f>>>16^c&255;r[j>>0]=f>>>8^p&255;r[E>>0]=f^w&255;Co(D);w=r[B>>0]|0;f=r[O>>0]|0;p=r[I>>0]|0;y=r[U>>0]|0;g=r[j>>0]|0;c=r[x>>0]|0;_=r[P>>0]|0;d=r[k>>0]|0;a=r[E>>0]|0;e=r[S>>0]|0;m=r[R>>0]|0;u=r[M>>0]|0;V=s[D>>0]|0;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[D>>0]=V;b=s[T>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[T>>0]=b;i=s[C>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[C>>0]=i;l=s[N>>0]|0;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;r[N>>0]=l;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;p=p&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[O>>0]=p;f=f&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;r[B>>0]=f;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;c=c&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[j>>0]=c;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;v=o[n+160>>2]|0;r[D>>0]=v>>>24^V&255;r[U>>0]=v>>>16^w&255;r[k>>0]=v>>>8^_&255;r[S>>0]=v^m&255;m=o[n+164>>2]|0;r[T>>0]=m>>>24^b&255;r[I>>0]=m>>>16^y&255;r[x>>0]=m>>>8^g&255;r[R>>0]=m^u&255;u=o[n+168>>2]|0;r[C>>0]=u>>>24^i&255;r[O>>0]=u>>>16^p&255;r[P>>0]=u>>>8^d&255;r[M>>0]=u^a&255;a=o[n+172>>2]|0;r[N>>0]=a>>>24^l&255;r[B>>0]=a>>>16^f&255;r[j>>0]=a>>>8^c&255;r[E>>0]=a^e&255;Co(D);e=r[D>>0]|0;a=r[T>>0]|0;c=r[C>>0]|0;f=r[N>>0]|0;l=r[B>>0]|0;u=r[U>>0]|0;d=r[I>>0]|0;p=r[O>>0]|0;i=r[P>>0]|0;m=r[j>>0]|0;g=r[k>>0]|0;y=r[x>>0]|0;b=r[R>>0]|0;v=r[M>>0]|0;_=r[E>>0]|0;w=r[S>>0]|0}else{H=o[n+160>>2]|0;F=(H>>>24^w&255)&255;r[D>>0]=F;q=(H>>>16^A&255)&255;r[U>>0]=q;K=(H>>>8^a&255)&255;r[k>>0]=K;w=(H^c&255)&255;r[S>>0]=w;H=o[n+164>>2]|0;a=(H>>>24^f&255)&255;r[T>>0]=a;z=(H>>>16^l&255)&255;r[I>>0]=z;G=(H>>>8^u&255)&255;r[x>>0]=G;H=(H^d&255)&255;r[R>>0]=H;V=o[n+168>>2]|0;c=(V>>>24^p&255)&255;r[C>>0]=c;p=(V>>>16^m&255)&255;r[O>>0]=p;i=(V>>>8^g&255)&255;r[P>>0]=i;V=(V^y&255)&255;r[M>>0]=V;u=o[n+172>>2]|0;f=(u>>>24^b&255)&255;r[N>>0]=f;l=(u>>>16^v&255)&255;r[B>>0]=l;m=(u>>>8^_&255)&255;r[j>>0]=m;_=(u^e&255)&255;r[E>>0]=_;e=F;u=q;d=z;g=K;y=G;b=H;v=V}e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[T>>0]=a;A=c&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[C>>0]=A;V=f&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[N>>0]=V;l=l&255;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;z=u&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;H=d&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[O>>0]=H;G=p&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[B>>0]=G;p=i&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;F=g&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;q=y&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[j>>0]=q;i=b&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;b=v&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;K=_&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;v=w&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;w=o[n+144>>2]|0;r[D>>0]=w>>>24^e&255;r[U>>0]=w>>>16^l&255;r[k>>0]=w>>>8^p&255;r[S>>0]=w^i&255;w=o[n+148>>2]|0;r[T>>0]=w>>>24^a&255;r[I>>0]=w>>>16^z&255;r[x>>0]=w>>>8^m&255;r[R>>0]=w^b&255;w=o[n+152>>2]|0;r[C>>0]=w>>>24^A&255;r[O>>0]=w>>>16^H&255;r[P>>0]=w>>>8^F&255;r[M>>0]=w^K&255;K=o[n+156>>2]|0;r[N>>0]=K>>>24^V&255;r[B>>0]=K>>>16^G&255;r[j>>0]=K>>>8^q&255;r[E>>0]=K^v&255;Co(D);v=r[B>>0]|0;K=r[O>>0]|0;q=r[I>>0]|0;G=r[U>>0]|0;w=r[j>>0]|0;b=r[x>>0]|0;V=r[P>>0]|0;F=r[k>>0]|0;m=r[E>>0]|0;H=r[S>>0]|0;i=r[R>>0]|0;A=r[M>>0]|0;g=s[D>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[D>>0]=g;p=s[T>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[T>>0]=p;z=s[C>>0]|0;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[C>>0]=z;_=s[N>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[N>>0]=_;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[O>>0]=q;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[B>>0]=K;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[j>>0]=b;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;y=o[n+128>>2]|0;r[D>>0]=y>>>24^g&255;r[U>>0]=y>>>16^v&255;r[k>>0]=y>>>8^V&255;r[S>>0]=y^i&255;i=o[n+132>>2]|0;r[T>>0]=i>>>24^p&255;r[I>>0]=i>>>16^G&255;r[x>>0]=i>>>8^w&255;r[R>>0]=i^A&255;A=o[n+136>>2]|0;r[C>>0]=A>>>24^z&255;r[O>>0]=A>>>16^q&255;r[P>>0]=A>>>8^F&255;r[M>>0]=A^m&255;m=o[n+140>>2]|0;r[N>>0]=m>>>24^_&255;r[B>>0]=m>>>16^K&255;r[j>>0]=m>>>8^b&255;r[E>>0]=m^H&255;Co(D);H=r[B>>0]|0;m=r[O>>0]|0;b=r[I>>0]|0;K=r[U>>0]|0;_=r[j>>0]|0;A=r[x>>0]|0;F=r[P>>0]|0;q=r[k>>0]|0;z=r[E>>0]|0;i=r[S>>0]|0;w=r[R>>0]|0;G=r[M>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;y=s[T>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[T>>0]=y;V=s[C>>0]|0;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[C>>0]=V;v=s[N>>0]|0;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;r[N>>0]=v;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[O>>0]=b;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[B>>0]=m;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[j>>0]=A;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;g=o[n+112>>2]|0;r[D>>0]=g>>>24^p&255;r[U>>0]=g>>>16^H&255;r[k>>0]=g>>>8^F&255;r[S>>0]=g^w&255;w=o[n+116>>2]|0;r[T>>0]=w>>>24^y&255;r[I>>0]=w>>>16^K&255;r[x>>0]=w>>>8^_&255;r[R>>0]=w^G&255;G=o[n+120>>2]|0;r[C>>0]=G>>>24^V&255;r[O>>0]=G>>>16^b&255;r[P>>0]=G>>>8^q&255;r[M>>0]=G^z&255;z=o[n+124>>2]|0;r[N>>0]=z>>>24^v&255;r[B>>0]=z>>>16^m&255;r[j>>0]=z>>>8^A&255;r[E>>0]=z^i&255;Co(D);i=r[B>>0]|0;z=r[O>>0]|0;A=r[I>>0]|0;m=r[U>>0]|0;v=r[j>>0]|0;G=r[x>>0]|0;q=r[P>>0]|0;b=r[k>>0]|0;V=r[E>>0]|0;w=r[S>>0]|0;_=r[R>>0]|0;K=r[M>>0]|0;y=s[D>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[D>>0]=y;g=s[T>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[T>>0]=g;F=s[C>>0]|0;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[C>>0]=F;H=s[N>>0]|0;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[N>>0]=H;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[O>>0]=A;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[B>>0]=z;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[j>>0]=G;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;p=o[n+96>>2]|0;r[D>>0]=p>>>24^y&255;r[U>>0]=p>>>16^i&255;r[k>>0]=p>>>8^q&255;r[S>>0]=p^_&255;_=o[n+100>>2]|0;r[T>>0]=_>>>24^g&255;r[I>>0]=_>>>16^m&255;r[x>>0]=_>>>8^v&255;r[R>>0]=_^K&255;K=o[n+104>>2]|0;r[C>>0]=K>>>24^F&255;r[O>>0]=K>>>16^A&255;r[P>>0]=K>>>8^b&255;r[M>>0]=K^V&255;V=o[n+108>>2]|0;r[N>>0]=V>>>24^H&255;r[B>>0]=V>>>16^z&255;r[j>>0]=V>>>8^G&255;r[E>>0]=V^w&255;Co(D);w=r[B>>0]|0;V=r[O>>0]|0;G=r[I>>0]|0;z=r[U>>0]|0;H=r[j>>0]|0;K=r[x>>0]|0;b=r[P>>0]|0;A=r[k>>0]|0;F=r[E>>0]|0;_=r[S>>0]|0;v=r[R>>0]|0;m=r[M>>0]|0;g=s[D>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[D>>0]=g;p=s[T>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[T>>0]=p;q=s[C>>0]|0;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[C>>0]=q;i=s[N>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[N>>0]=i;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[O>>0]=G;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[B>>0]=V;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[j>>0]=K;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;y=o[n+80>>2]|0;r[D>>0]=y>>>24^g&255;r[U>>0]=y>>>16^w&255;r[k>>0]=y>>>8^b&255;r[S>>0]=y^v&255;v=o[n+84>>2]|0;r[T>>0]=v>>>24^p&255;r[I>>0]=v>>>16^z&255;r[x>>0]=v>>>8^H&255;r[R>>0]=v^m&255;m=o[n+88>>2]|0;r[C>>0]=m>>>24^q&255;r[O>>0]=m>>>16^G&255;r[P>>0]=m>>>8^A&255;r[M>>0]=m^F&255;F=o[n+92>>2]|0;r[N>>0]=F>>>24^i&255;r[B>>0]=F>>>16^V&255;r[j>>0]=F>>>8^K&255;r[E>>0]=F^_&255;Co(D);_=r[B>>0]|0;F=r[O>>0]|0;K=r[I>>0]|0;V=r[U>>0]|0;i=r[j>>0]|0;m=r[x>>0]|0;A=r[P>>0]|0;G=r[k>>0]|0;q=r[E>>0]|0;v=r[S>>0]|0;H=r[R>>0]|0;z=r[M>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;y=s[T>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[T>>0]=y;b=s[C>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[C>>0]=b;w=s[N>>0]|0;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[N>>0]=w;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[O>>0]=K;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[B>>0]=F;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[j>>0]=m;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;g=o[n+64>>2]|0;r[D>>0]=g>>>24^p&255;r[U>>0]=g>>>16^_&255;r[k>>0]=g>>>8^A&255;r[S>>0]=g^H&255;H=o[n+68>>2]|0;r[T>>0]=H>>>24^y&255;r[I>>0]=H>>>16^V&255;r[x>>0]=H>>>8^i&255;r[R>>0]=H^z&255;z=o[n+72>>2]|0;r[C>>0]=z>>>24^b&255;r[O>>0]=z>>>16^K&255;r[P>>0]=z>>>8^G&255;r[M>>0]=z^q&255;q=o[n+76>>2]|0;r[N>>0]=q>>>24^w&255;r[B>>0]=q>>>16^F&255;r[j>>0]=q>>>8^m&255;r[E>>0]=q^v&255;Co(D);v=r[B>>0]|0;q=r[O>>0]|0;m=r[I>>0]|0;F=r[U>>0]|0;w=r[j>>0]|0;z=r[x>>0]|0;G=r[P>>0]|0;K=r[k>>0]|0;b=r[E>>0]|0;H=r[S>>0]|0;i=r[R>>0]|0;V=r[M>>0]|0;y=s[D>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[D>>0]=y;g=s[T>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[T>>0]=g;A=s[C>>0]|0;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[C>>0]=A;_=s[N>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[N>>0]=_;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[O>>0]=m;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[B>>0]=q;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[j>>0]=z;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;p=o[n+48>>2]|0;r[D>>0]=p>>>24^y&255;r[U>>0]=p>>>16^v&255;r[k>>0]=p>>>8^G&255;r[S>>0]=p^i&255;i=o[n+52>>2]|0;r[T>>0]=i>>>24^g&255;r[I>>0]=i>>>16^F&255;r[x>>0]=i>>>8^w&255;r[R>>0]=i^V&255;V=o[n+56>>2]|0;r[C>>0]=V>>>24^A&255;r[O>>0]=V>>>16^m&255;r[P>>0]=V>>>8^K&255;r[M>>0]=V^b&255;b=o[n+60>>2]|0;r[N>>0]=b>>>24^_&255;r[B>>0]=b>>>16^q&255;r[j>>0]=b>>>8^z&255;r[E>>0]=b^H&255;Co(D);H=r[B>>0]|0;b=r[O>>0]|0;z=r[I>>0]|0;q=r[U>>0]|0;_=r[j>>0]|0;V=r[x>>0]|0;K=r[P>>0]|0;m=r[k>>0]|0;A=r[E>>0]|0;i=r[S>>0]|0;w=r[R>>0]|0;F=r[M>>0]|0;g=s[D>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[D>>0]=g;p=s[T>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[T>>0]=p;G=s[C>>0]|0;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[C>>0]=G;v=s[N>>0]|0;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;r[N>>0]=v;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[O>>0]=z;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[B>>0]=b;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[j>>0]=V;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;y=o[n+32>>2]|0;r[D>>0]=y>>>24^g&255;r[U>>0]=y>>>16^H&255;r[k>>0]=y>>>8^K&255;r[S>>0]=y^w&255;w=o[n+36>>2]|0;r[T>>0]=w>>>24^p&255;r[I>>0]=w>>>16^q&255;r[x>>0]=w>>>8^_&255;r[R>>0]=w^F&255;F=o[n+40>>2]|0;r[C>>0]=F>>>24^G&255;r[O>>0]=F>>>16^z&255;r[P>>0]=F>>>8^m&255;r[M>>0]=F^A&255;A=o[n+44>>2]|0;r[N>>0]=A>>>24^v&255;r[B>>0]=A>>>16^b&255;r[j>>0]=A>>>8^V&255;r[E>>0]=A^i&255;Co(D);i=r[B>>0]|0;A=r[O>>0]|0;V=r[I>>0]|0;b=r[U>>0]|0;v=r[j>>0]|0;F=r[x>>0]|0;m=r[P>>0]|0;z=r[k>>0]|0;G=r[E>>0]|0;w=r[S>>0]|0;_=r[R>>0]|0;q=r[M>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;y=s[T>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[T>>0]=y;K=s[C>>0]|0;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[C>>0]=K;H=s[N>>0]|0;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[N>>0]=H;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[O>>0]=V;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[B>>0]=A;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[j>>0]=F;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;g=o[n+16>>2]|0;r[D>>0]=g>>>24^p&255;r[U>>0]=g>>>16^i&255;r[k>>0]=g>>>8^m&255;r[S>>0]=g^_&255;_=o[n+20>>2]|0;r[T>>0]=_>>>24^y&255;r[I>>0]=_>>>16^b&255;r[x>>0]=_>>>8^v&255;r[R>>0]=_^q&255;q=o[n+24>>2]|0;r[C>>0]=q>>>24^K&255;r[O>>0]=q>>>16^V&255;r[P>>0]=q>>>8^z&255;r[M>>0]=q^G&255;G=o[n+28>>2]|0;r[N>>0]=G>>>24^H&255;r[B>>0]=G>>>16^A&255;r[j>>0]=G>>>8^F&255;r[E>>0]=G^w&255;Co(D);w=r[B>>0]|0;G=r[O>>0]|0;F=r[I>>0]|0;A=r[U>>0]|0;I=r[j>>0]|0;H=r[x>>0]|0;P=r[P>>0]|0;q=r[k>>0]|0;z=r[E>>0]|0;V=r[S>>0]|0;O=r[R>>0]|0;B=r[M>>0]|0;x=s[D>>0]|0;x=r[(x&15)+(34880+(x>>>4<<4))>>0]|0;r[D>>0]=x;M=s[T>>0]|0;M=r[(M&15)+(34880+(M>>>4<<4))>>0]|0;r[T>>0]=M;U=s[C>>0]|0;U=r[(U&15)+(34880+(U>>>4<<4))>>0]|0;r[C>>0]=U;K=s[N>>0]|0;R=w&255;D=A&255;F=F&255;G=G&255;C=P&255;N=I&255;q=q&255;H=H&255;O=O&255;B=B&255;z=z&255;V=V&255;I=o[n>>2]|0;R=(I>>>16^(s[(R&15)+(34880+(R>>>4<<4))>>0]|0))&255;C=(I>>>8^(s[(C&15)+(34880+(C>>>4<<4))>>0]|0))&255;O=(I^(s[(O&15)+(34880+(O>>>4<<4))>>0]|0))&255;P=o[n+4>>2]|0;D=(P>>>16^(s[(D&15)+(34880+(D>>>4<<4))>>0]|0))&255;N=(P>>>8^(s[(N&15)+(34880+(N>>>4<<4))>>0]|0))&255;B=(P^(s[(B&15)+(34880+(B>>>4<<4))>>0]|0))&255;j=o[n+8>>2]|0;F=(j>>>16^(s[(F&15)+(34880+(F>>>4<<4))>>0]|0))&255;q=(j>>>8^(s[(q&15)+(34880+(q>>>4<<4))>>0]|0))&255;z=(j^(s[(z&15)+(34880+(z>>>4<<4))>>0]|0))&255;n=o[n+12>>2]|0;K=(n>>>24^(s[(K&15)+(34880+(K>>>4<<4))>>0]|0))&255;G=(n>>>16^(s[(G&15)+(34880+(G>>>4<<4))>>0]|0))&255;H=(n>>>8^(s[(H&15)+(34880+(H>>>4<<4))>>0]|0))&255;V=(n^(s[(V&15)+(34880+(V>>>4<<4))>>0]|0))&255;r[t>>0]=I>>>24^x&255;r[t+1>>0]=R;r[t+2>>0]=C;r[t+3>>0]=O;r[t+4>>0]=P>>>24^M&255;r[t+5>>0]=D;r[t+6>>0]=N;r[t+7>>0]=B;r[t+8>>0]=j>>>24^U&255;r[t+9>>0]=F;r[t+10>>0]=q;r[t+11>>0]=z;r[t+12>>0]=K;r[t+13>>0]=G;r[t+14>>0]=H;r[t+15>>0]=V;h=L;return}function Po(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Ne=0,Be=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ct=0,ft=0,lt=0,ut=0,dt=0,ht=0,pt=0,mt=0,gt=0,yt=0,bt=0,vt=0,_t=0,wt=0,At=0,Et=0,kt=0,St=0,Tt=0,It=0,xt=0,Rt=0,Ct=0,Ot=0,Pt=0,Mt=0,Dt=0,Nt=0,Bt=0,jt=0,Ut=0,Lt=0,Ft=0,qt=0;Pt=h;h=h+2768|0;bt=Pt+2608|0;vt=Pt+2448|0;Ct=Pt+2288|0;_t=Pt+2128|0;wt=Pt+1968|0;At=Pt+1808|0;Ot=Pt+1648|0;Et=Pt+1488|0;kt=Pt+1328|0;St=Pt+1168|0;f=Pt+1008|0;c=Pt+848|0;a=Pt+688|0;i=Pt+528|0;Tt=Pt+368|0;at=Pt+288|0;It=Pt+208|0;xt=Pt+112|0;Rt=Pt+32|0;ct=Pt;st=ct;ot=st+32|0;do{r[st>>0]=r[t>>0]|0;st=st+1|0;t=t+1|0}while((st|0)<(ot|0));r[ct>>0]=r[ct>>0]&-8;st=ct+31|0;r[st>>0]=r[st>>0]&63|64;st=s[n>>0]|0;pt=Os(s[n+1>>0]|0|0,0,8)|0;ht=T;gt=Os(s[n+2>>0]|0|0,0,16)|0;ht=ht|T;mt=s[n+3>>0]|0;ot=Os(mt|0,0,24)|0;yt=at;o[yt>>2]=pt|st|gt|ot&50331648;o[yt+4>>2]=ht;yt=Os(s[n+4>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+5>>0]|0|0,0,16)|0;ht=ht|T;gt=s[n+6>>0]|0;st=Os(gt|0,0,24)|0;ht=Cs(yt|mt|ot|st|0,ht|T|0,2)|0;st=at+8|0;o[st>>2]=ht&33554431;o[st+4>>2]=0;st=Os(s[n+7>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+8>>0]|0|0,0,16)|0;ht=ht|T;mt=s[n+9>>0]|0;yt=Os(mt|0,0,24)|0;ht=Cs(st|gt|ot|yt|0,ht|T|0,3)|0;yt=at+16|0;o[yt>>2]=ht&67108863;o[yt+4>>2]=0;yt=Os(s[n+10>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+11>>0]|0|0,0,16)|0;ht=ht|T;gt=s[n+12>>0]|0;st=Os(gt|0,0,24)|0;ht=Cs(yt|mt|ot|st|0,ht|T|0,5)|0;st=at+24|0;o[st>>2]=ht&33554431;o[st+4>>2]=0;st=Os(s[n+13>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+14>>0]|0|0,0,16)|0;ht=ht|T;mt=Os(s[n+15>>0]|0|0,0,24)|0;ht=Cs(st|gt|ot|mt|0,ht|T|0,6)|0;mt=at+32|0;o[mt>>2]=ht&67108863;o[mt+4>>2]=0;mt=s[n+16>>0]|0;ht=Os(s[n+17>>0]|0|0,0,8)|0;ot=T;gt=Os(s[n+18>>0]|0|0,0,16)|0;ot=ot|T;st=s[n+19>>0]|0;yt=Os(st|0,0,24)|0;pt=at+40|0;o[pt>>2]=ht|mt|gt|yt&16777216;o[pt+4>>2]=ot;pt=Os(s[n+20>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+21>>0]|0|0,0,16)|0;ot=ot|T;gt=s[n+22>>0]|0;mt=Os(gt|0,0,24)|0;ot=Cs(pt|st|yt|mt|0,ot|T|0,1)|0;mt=at+48|0;o[mt>>2]=ot&67108863;o[mt+4>>2]=0;mt=Os(s[n+23>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+24>>0]|0|0,0,16)|0;ot=ot|T;st=s[n+25>>0]|0;pt=Os(st|0,0,24)|0;ot=Cs(mt|gt|yt|pt|0,ot|T|0,3)|0;pt=at+56|0;o[pt>>2]=ot&33554431;o[pt+4>>2]=0;pt=Os(s[n+26>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+27>>0]|0|0,0,16)|0;ot=ot|T;gt=s[n+28>>0]|0;mt=Os(gt|0,0,24)|0;ot=Cs(pt|st|yt|mt|0,ot|T|0,4)|0;mt=at+64|0;o[mt>>2]=ot&67108863;o[mt+4>>2]=0;mt=Os(s[n+29>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+30>>0]|0|0,0,16)|0;ot=ot|T;st=Os(s[n+31>>0]|0|0,0,24)|0;ot=Cs(mt|gt|yt|st|0,ot|T|0,6)|0;st=at+72|0;o[st>>2]=ot&33554431;o[st+4>>2]=0;Ds(Et|0,0,152)|0;st=Et;o[st>>2]=1;o[st+4>>2]=0;Ds(kt|0,0,152)|0;st=kt;o[st>>2]=1;o[st+4>>2]=0;Ds(St|0,0,152)|0;Ds(f|0,0,152)|0;Ds(c|0,0,152)|0;st=c;o[st>>2]=1;o[st+4>>2]=0;Ds(a|0,0,152)|0;Ds(i|0,0,152)|0;st=i;o[st>>2]=1;o[st+4>>2]=0;st=Ot+80|0;ot=st+72|0;do{o[st>>2]=0;st=st+4|0}while((st|0)<(ot|0));st=Ot;t=at;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));oe=Ct+144|0;se=Ct+64|0;ae=Ct+136|0;ce=Ct+56|0;fe=Ct+128|0;le=Ct+48|0;ue=Ct+120|0;de=Ct+40|0;he=Ct+112|0;pe=Ct+32|0;me=Ct+104|0;ge=Ct+24|0;ye=Ct+96|0;be=Ct+16|0;ve=Ct+88|0;_e=Ct+8|0;we=Ct+80|0;Ae=_t+144|0;Ee=_t+64|0;ke=_t+136|0;Se=_t+56|0;Te=_t+128|0;Ie=_t+48|0;xe=_t+120|0;Re=_t+40|0;Ce=_t+112|0;Oe=_t+32|0;Pe=_t+104|0;Me=_t+24|0;De=_t+96|0;Ne=_t+16|0;Be=_t+88|0;je=_t+8|0;Ue=_t+80|0;ie=Ct+72|0;Le=_t+72|0;Fe=bt+8|0;qe=vt+8|0;ze=bt+16|0;Ke=vt+16|0;Ge=bt+24|0;He=vt+24|0;Ve=bt+32|0;Qe=vt+32|0;We=bt+40|0;Ye=vt+40|0;Xe=bt+48|0;Je=vt+48|0;Ze=bt+56|0;$e=vt+56|0;et=bt+64|0;tt=vt+64|0;nt=bt+72|0;rt=vt+72|0;ft=Tt+80|0;lt=Tt+8|0;ut=Tt+16|0;dt=Tt+24|0;ht=Tt+32|0;pt=Tt+40|0;mt=Tt+48|0;gt=Tt+56|0;yt=Tt+64|0;it=Tt+72|0;d=Ot;re=0;t=f;n=Et;f=St;l=kt;while(1){u=r[ct+(31-re)>>0]|0;$=0;ee=i;te=a;ne=c;J=t;c=n;i=f;a=l;Z=d;while(1){Y=u&255;X=Y>>>7;Mo(a,Z,X,0);Mo(i,c,X,0);E=a;l=o[E>>2]|0;E=o[E+4>>2]|0;V=a+8|0;G=V;P=o[G>>2]|0;G=o[G+4>>2]|0;Bt=a+16|0;I=Bt;S=o[I>>2]|0;I=o[I+4>>2]|0;x=a+24|0;Mt=x;Q=o[Mt>>2]|0;Mt=o[Mt+4>>2]|0;v=a+32|0;_=v;jt=o[_>>2]|0;_=o[_+4>>2]|0;y=a+40|0;u=y;R=o[u>>2]|0;u=o[u+4>>2]|0;K=a+48|0;ot=K;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;N=a+56|0;C=N;F=o[C>>2]|0;C=o[C+4>>2]|0;Ut=a+64|0;w=Ut;U=o[w>>2]|0;w=o[w+4>>2]|0;g=a+72|0;Dt=g;Nt=o[Dt>>2]|0;Dt=o[Dt+4>>2]|0;k=i;j=o[k>>2]|0;k=o[k+4>>2]|0;b=ks(j|0,k|0,l|0,E|0)|0;p=a;o[p>>2]=b;o[p+4>>2]=T;p=i+8|0;b=p;H=o[b>>2]|0;b=o[b+4>>2]|0;D=ks(H|0,b|0,P|0,G|0)|0;o[V>>2]=D;o[V+4>>2]=T;V=i+16|0;D=V;L=o[D>>2]|0;D=o[D+4>>2]|0;f=ks(L|0,D|0,S|0,I|0)|0;o[Bt>>2]=f;o[Bt+4>>2]=T;Bt=i+24|0;f=Bt;n=o[f>>2]|0;f=o[f+4>>2]|0;Ft=ks(n|0,f|0,Q|0,Mt|0)|0;o[x>>2]=Ft;o[x+4>>2]=T;x=i+32|0;Ft=x;m=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;B=ks(m|0,Ft|0,jt|0,_|0)|0;o[v>>2]=B;o[v+4>>2]=T;v=i+40|0;B=v;q=o[B>>2]|0;B=o[B+4>>2]|0;A=ks(q|0,B|0,R|0,u|0)|0;o[y>>2]=A;o[y+4>>2]=T;y=i+48|0;A=y;M=o[A>>2]|0;A=o[A+4>>2]|0;d=ks(M|0,A|0,W|0,ot|0)|0;o[K>>2]=d;o[K+4>>2]=T;K=i+56|0;d=K;O=o[d>>2]|0;d=o[d+4>>2]|0;st=ks(O|0,d|0,F|0,C|0)|0;o[N>>2]=st;o[N+4>>2]=T;N=i+64|0;st=N;t=o[st>>2]|0;st=o[st+4>>2]|0;Lt=ks(t|0,st|0,U|0,w|0)|0;o[Ut>>2]=Lt;o[Ut+4>>2]=T;Ut=i+72|0;Lt=Ut;z=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;qt=ks(z|0,Lt|0,Nt|0,Dt|0)|0;o[g>>2]=qt;o[g+4>>2]=T;k=Ss(l|0,E|0,j|0,k|0)|0;j=i;o[j>>2]=k;o[j+4>>2]=T;b=Ss(P|0,G|0,H|0,b|0)|0;o[p>>2]=b;o[p+4>>2]=T;D=Ss(S|0,I|0,L|0,D|0)|0;o[V>>2]=D;o[V+4>>2]=T;f=Ss(Q|0,Mt|0,n|0,f|0)|0;o[Bt>>2]=f;o[Bt+4>>2]=T;Ft=Ss(jt|0,_|0,m|0,Ft|0)|0;o[x>>2]=Ft;o[x+4>>2]=T;B=Ss(R|0,u|0,q|0,B|0)|0;o[v>>2]=B;o[v+4>>2]=T;A=Ss(W|0,ot|0,M|0,A|0)|0;o[y>>2]=A;o[y+4>>2]=T;d=Ss(F|0,C|0,O|0,d|0)|0;o[K>>2]=d;o[K+4>>2]=T;st=Ss(U|0,w|0,t|0,st|0)|0;o[N>>2]=st;o[N+4>>2]=T;Lt=Ss(Nt|0,Dt|0,z|0,Lt|0)|0;o[Ut>>2]=Lt;o[Ut+4>>2]=T;Ut=Z;Lt=o[Ut>>2]|0;Ut=o[Ut+4>>2]|0;z=Z+8|0;Dt=z;Nt=o[Dt>>2]|0;Dt=o[Dt+4>>2]|0;N=Z+16|0;st=N;t=o[st>>2]|0;st=o[st+4>>2]|0;w=Z+24|0;U=w;K=o[U>>2]|0;U=o[U+4>>2]|0;d=Z+32|0;O=d;C=o[O>>2]|0;O=o[O+4>>2]|0;F=Z+40|0;y=F;A=o[y>>2]|0;y=o[y+4>>2]|0;M=Z+48|0;ot=M;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;v=Z+56|0;B=v;q=o[B>>2]|0;B=o[B+4>>2]|0;u=Z+64|0;R=u;x=o[R>>2]|0;R=o[R+4>>2]|0;Ft=Z+72|0;m=Ft;_=o[m>>2]|0;m=o[m+4>>2]|0;jt=c;Bt=o[jt>>2]|0;jt=o[jt+4>>2]|0;f=ks(Bt|0,jt|0,Lt|0,Ut|0)|0;n=Z;o[n>>2]=f;o[n+4>>2]=T;n=c+8|0;f=n;Mt=o[f>>2]|0;f=o[f+4>>2]|0;Q=ks(Mt|0,f|0,Nt|0,Dt|0)|0;o[z>>2]=Q;o[z+4>>2]=T;z=c+16|0;Q=z;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;D=ks(V|0,Q|0,t|0,st|0)|0;o[N>>2]=D;o[N+4>>2]=T;N=c+24|0;D=N;L=o[D>>2]|0;D=o[D+4>>2]|0;I=ks(L|0,D|0,K|0,U|0)|0;o[w>>2]=I;o[w+4>>2]=T;w=c+32|0;I=w;S=o[I>>2]|0;I=o[I+4>>2]|0;p=ks(S|0,I|0,C|0,O|0)|0;o[d>>2]=p;o[d+4>>2]=T;d=c+40|0;p=d;b=o[p>>2]|0;p=o[p+4>>2]|0;H=ks(b|0,p|0,A|0,y|0)|0;o[F>>2]=H;o[F+4>>2]=T;F=c+48|0;H=F;G=o[H>>2]|0;H=o[H+4>>2]|0;P=ks(G|0,H|0,W|0,ot|0)|0;o[M>>2]=P;o[M+4>>2]=T;M=c+56|0;P=M;j=o[P>>2]|0;P=o[P+4>>2]|0;k=ks(j|0,P|0,q|0,B|0)|0;o[v>>2]=k;o[v+4>>2]=T;v=c+64|0;k=v;E=o[k>>2]|0;k=o[k+4>>2]|0;l=ks(E|0,k|0,x|0,R|0)|0;o[u>>2]=l;o[u+4>>2]=T;u=c+72|0;l=u;g=o[l>>2]|0;l=o[l+4>>2]|0;qt=ks(g|0,l|0,_|0,m|0)|0;o[Ft>>2]=qt;o[Ft+4>>2]=T;jt=Ss(Lt|0,Ut|0,Bt|0,jt|0)|0;Bt=c;o[Bt>>2]=jt;o[Bt+4>>2]=T;f=Ss(Nt|0,Dt|0,Mt|0,f|0)|0;o[n>>2]=f;o[n+4>>2]=T;Q=Ss(t|0,st|0,V|0,Q|0)|0;o[z>>2]=Q;o[z+4>>2]=T;D=Ss(K|0,U|0,L|0,D|0)|0;o[N>>2]=D;o[N+4>>2]=T;I=Ss(C|0,O|0,S|0,I|0)|0;o[w>>2]=I;o[w+4>>2]=T;p=Ss(A|0,y|0,b|0,p|0)|0;o[d>>2]=p;o[d+4>>2]=T;H=Ss(W|0,ot|0,G|0,H|0)|0;o[F>>2]=H;o[F+4>>2]=T;P=Ss(q|0,B|0,j|0,P|0)|0;o[M>>2]=P;o[M+4>>2]=T;k=Ss(x|0,R|0,E|0,k|0)|0;o[v>>2]=k;o[v+4>>2]=T;l=Ss(_|0,m|0,g|0,l|0)|0;o[u>>2]=l;o[u+4>>2]=T;Do(Ct,Z,i);Do(_t,a,c);u=oe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=se;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=se;o[_>>2]=v;o[_+4>>2]=T;_=ae;v=o[_>>2]|0;_=o[_+4>>2]|0;u=ce;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=ce;o[g>>2]=m;o[g+4>>2]=T;g=fe;m=o[g>>2]|0;g=o[g+4>>2]|0;_=le;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=le;o[u>>2]=l;o[u+4>>2]=T;u=ue;l=o[u>>2]|0;u=o[u+4>>2]|0;g=de;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=de;o[_>>2]=v;o[_+4>>2]=T;_=he;v=o[_>>2]|0;_=o[_+4>>2]|0;u=pe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=pe;o[g>>2]=m;o[g+4>>2]=T;g=me;m=o[g>>2]|0;g=o[g+4>>2]|0;_=ge;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=ge;o[u>>2]=l;o[u+4>>2]=T;u=ye;l=o[u>>2]|0;u=o[u+4>>2]|0;g=be;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=be;o[_>>2]=v;o[_+4>>2]=T;_=ve;v=o[_>>2]|0;_=o[_+4>>2]|0;u=_e;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=_e;o[g>>2]=m;o[g+4>>2]=T;g=we;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Ct;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=Ct;o[u>>2]=l;o[u+4>>2]=T;No(Ct);u=Ae;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Ee;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=Ee;o[_>>2]=v;o[_+4>>2]=T;_=ke;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Se;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=Se;o[g>>2]=m;o[g+4>>2]=T;g=Te;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Ie;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=Ie;o[u>>2]=l;o[u+4>>2]=T;u=xe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Re;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=Re;o[_>>2]=v;o[_+4>>2]=T;_=Ce;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Oe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=Oe;o[g>>2]=m;o[g+4>>2]=T;g=Pe;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Me;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=Me;o[u>>2]=l;o[u+4>>2]=T;u=De;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Ne;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=Ne;o[_>>2]=v;o[_+4>>2]=T;_=Be;v=o[_>>2]|0;_=o[_+4>>2]|0;u=je;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=je;o[g>>2]=m;o[g+4>>2]=T;g=Ue;m=o[g>>2]|0;g=o[g+4>>2]|0;_=_t;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=_t;o[u>>2]=l;o[u+4>>2]=T;No(_t);u=Ct;l=o[u>>2]|0;u=o[u+4>>2]|0;g=_e;m=o[g>>2]|0;g=o[g+4>>2]|0;_=be;v=o[_>>2]|0;_=o[_+4>>2]|0;k=ge;E=o[k>>2]|0;k=o[k+4>>2]|0;R=pe;x=o[R>>2]|0;R=o[R+4>>2]|0;M=de;P=o[M>>2]|0;M=o[M+4>>2]|0;j=le;B=o[j>>2]|0;j=o[j+4>>2]|0;q=ce;F=o[q>>2]|0;q=o[q+4>>2]|0;H=se;G=o[H>>2]|0;H=o[H+4>>2]|0;ot=ie;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;d=_t;p=o[d>>2]|0;d=o[d+4>>2]|0;b=ks(p|0,d|0,l|0,u|0)|0;y=Ct;o[y>>2]=b;o[y+4>>2]=T;y=je;b=o[y>>2]|0;y=o[y+4>>2]|0;A=ks(b|0,y|0,m|0,g|0)|0;w=_e;o[w>>2]=A;o[w+4>>2]=T;w=Ne;A=o[w>>2]|0;w=o[w+4>>2]|0;I=ks(A|0,w|0,v|0,_|0)|0;S=be;o[S>>2]=I;o[S+4>>2]=T;S=Me;I=o[S>>2]|0;S=o[S+4>>2]|0;O=ks(I|0,S|0,E|0,k|0)|0;C=ge;o[C>>2]=O;o[C+4>>2]=T;C=Oe;O=o[C>>2]|0;C=o[C+4>>2]|0;N=ks(O|0,C|0,x|0,R|0)|0;D=pe;o[D>>2]=N;o[D+4>>2]=T;D=Re;N=o[D>>2]|0;D=o[D+4>>2]|0;L=ks(N|0,D|0,P|0,M|0)|0;U=de;o[U>>2]=L;o[U+4>>2]=T;U=Ie;L=o[U>>2]|0;U=o[U+4>>2]|0;K=ks(L|0,U|0,B|0,j|0)|0;z=le;o[z>>2]=K;o[z+4>>2]=T;z=Se;K=o[z>>2]|0;z=o[z+4>>2]|0;Q=ks(K|0,z|0,F|0,q|0)|0;V=ce;o[V>>2]=Q;o[V+4>>2]=T;V=Ee;Q=o[V>>2]|0;V=o[V+4>>2]|0;st=ks(Q|0,V|0,G|0,H|0)|0;t=se;o[t>>2]=st;o[t+4>>2]=T;t=Le;st=o[t>>2]|0;t=o[t+4>>2]|0;n=ks(st|0,t|0,W|0,ot|0)|0;f=ie;o[f>>2]=n;o[f+4>>2]=T;d=Ss(l|0,u|0,p|0,d|0)|0;p=_t;o[p>>2]=d;o[p+4>>2]=T;y=Ss(m|0,g|0,b|0,y|0)|0;b=je;o[b>>2]=y;o[b+4>>2]=T;w=Ss(v|0,_|0,A|0,w|0)|0;A=Ne;o[A>>2]=w;o[A+4>>2]=T;S=Ss(E|0,k|0,I|0,S|0)|0;I=Me;o[I>>2]=S;o[I+4>>2]=T;C=Ss(x|0,R|0,O|0,C|0)|0;O=Oe;o[O>>2]=C;o[O+4>>2]=T;D=Ss(P|0,M|0,N|0,D|0)|0;N=Re;o[N>>2]=D;o[N+4>>2]=T;U=Ss(B|0,j|0,L|0,U|0)|0;L=Ie;o[L>>2]=U;o[L+4>>2]=T;z=Ss(F|0,q|0,K|0,z|0)|0;K=Se;o[K>>2]=z;o[K+4>>2]=T;V=Ss(G|0,H|0,Q|0,V|0)|0;Q=Ee;o[Q>>2]=V;o[Q+4>>2]=T;t=Ss(W|0,ot|0,st|0,t|0)|0;st=Le;o[st>>2]=t;o[st+4>>2]=T;Bo(At,Ct);Bo(wt,_t);Do(_t,wt,at);st=Ae;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Ee;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=T;st=ks(W|0,ot|0,t|0,st|0)|0;V=ks(st|0,T|0,Q|0,V|0)|0;Q=Ee;o[Q>>2]=V;o[Q+4>>2]=T;Q=ke;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Se;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=T;Q=ks(t|0,st|0,V|0,Q|0)|0;W=ks(Q|0,T|0,ot|0,W|0)|0;ot=Se;o[ot>>2]=W;o[ot+4>>2]=T;ot=Te;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Ie;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=T;ot=ks(V|0,Q|0,W|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Ie;o[st>>2]=t;o[st+4>>2]=T;st=xe;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Re;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=T;st=ks(W|0,ot|0,t|0,st|0)|0;V=ks(st|0,T|0,Q|0,V|0)|0;Q=Re;o[Q>>2]=V;o[Q+4>>2]=T;Q=Ce;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Oe;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=T;Q=ks(t|0,st|0,V|0,Q|0)|0;W=ks(Q|0,T|0,ot|0,W|0)|0;ot=Oe;o[ot>>2]=W;o[ot+4>>2]=T;ot=Pe;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Me;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=T;ot=ks(V|0,Q|0,W|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Me;o[st>>2]=t;o[st+4>>2]=T;st=De;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Ne;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=T;st=ks(W|0,ot|0,t|0,st|0)|0;V=ks(st|0,T|0,Q|0,V|0)|0;Q=Ne;o[Q>>2]=V;o[Q+4>>2]=T;Q=Be;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=je;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=T;Q=ks(t|0,st|0,V|0,Q|0)|0;W=ks(Q|0,T|0,ot|0,W|0)|0;ot=je;o[ot>>2]=W;o[ot+4>>2]=T;ot=Ue;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=_t;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=T;ot=ks(V|0,Q|0,W|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=_t;o[st>>2]=t;o[st+4>>2]=T;No(_t);st=J;t=At;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));st=ne;t=_t;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(bt,a);Bo(vt,i);Do(te,bt,vt);f=te+144|0;p=o[f>>2]|0;f=o[f+4>>2]|0;d=te+64|0;u=d;l=o[u>>2]|0;u=o[u+4>>2]|0;t=Es(p|0,f|0,18,0)|0;n=T;f=ks(l|0,u|0,p|0,f|0)|0;n=ks(f|0,T|0,t|0,n|0)|0;o[d>>2]=n;o[d+4>>2]=T;d=te+136|0;n=o[d>>2]|0;d=o[d+4>>2]|0;t=te+56|0;f=t;p=o[f>>2]|0;f=o[f+4>>2]|0;u=Es(n|0,d|0,18,0)|0;l=T;d=ks(p|0,f|0,n|0,d|0)|0;l=ks(d|0,T|0,u|0,l|0)|0;o[t>>2]=l;o[t+4>>2]=T;t=te+128|0;l=o[t>>2]|0;t=o[t+4>>2]|0;u=te+48|0;d=u;n=o[d>>2]|0;d=o[d+4>>2]|0;f=Es(l|0,t|0,18,0)|0;p=T;t=ks(n|0,d|0,l|0,t|0)|0;p=ks(t|0,T|0,f|0,p|0)|0;o[u>>2]=p;o[u+4>>2]=T;u=te+120|0;p=o[u>>2]|0;u=o[u+4>>2]|0;f=te+40|0;t=f;l=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(p|0,u|0,18,0)|0;n=T;u=ks(l|0,t|0,p|0,u|0)|0;n=ks(u|0,T|0,d|0,n|0)|0;o[f>>2]=n;o[f+4>>2]=T;f=te+112|0;n=o[f>>2]|0;f=o[f+4>>2]|0;d=te+32|0;u=d;p=o[u>>2]|0;u=o[u+4>>2]|0;t=Es(n|0,f|0,18,0)|0;l=T;f=ks(p|0,u|0,n|0,f|0)|0;l=ks(f|0,T|0,t|0,l|0)|0;o[d>>2]=l;o[d+4>>2]=T;d=te+104|0;l=o[d>>2]|0;d=o[d+4>>2]|0;t=te+24|0;f=t;n=o[f>>2]|0;f=o[f+4>>2]|0;u=Es(l|0,d|0,18,0)|0;p=T;d=ks(n|0,f|0,l|0,d|0)|0;p=ks(d|0,T|0,u|0,p|0)|0;o[t>>2]=p;o[t+4>>2]=T;t=te+96|0;p=o[t>>2]|0;t=o[t+4>>2]|0;u=te+16|0;d=u;l=o[d>>2]|0;d=o[d+4>>2]|0;f=Es(p|0,t|0,18,0)|0;n=T;t=ks(l|0,d|0,p|0,t|0)|0;n=ks(t|0,T|0,f|0,n|0)|0;o[u>>2]=n;o[u+4>>2]=T;u=te+88|0;n=o[u>>2]|0;u=o[u+4>>2]|0;f=te+8|0;t=f;p=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(n|0,u|0,18,0)|0;l=T;u=ks(p|0,t|0,n|0,u|0)|0;l=ks(u|0,T|0,d|0,l|0)|0;o[f>>2]=l;o[f+4>>2]=T;f=te+80|0;l=o[f>>2]|0;f=o[f+4>>2]|0;d=te;u=o[d>>2]|0;d=o[d+4>>2]|0;n=Es(l|0,f|0,18,0)|0;t=T;f=ks(u|0,d|0,l|0,f|0)|0;t=ks(f|0,T|0,n|0,t|0)|0;n=te;o[n>>2]=t;o[n+4>>2]=T;No(te);n=bt;t=o[n>>2]|0;n=o[n+4>>2]|0;f=vt;f=Ss(t|0,n|0,o[f>>2]|0,o[f+4>>2]|0)|0;l=T;d=vt;o[d>>2]=f;o[d+4>>2]=l;d=Fe;u=o[d>>2]|0;d=o[d+4>>2]|0;p=qe;p=Ss(u|0,d|0,o[p>>2]|0,o[p+4>>2]|0)|0;m=T;y=qe;o[y>>2]=p;o[y+4>>2]=m;y=ze;g=o[y>>2]|0;y=o[y+4>>2]|0;b=Ke;b=Ss(g|0,y|0,o[b>>2]|0,o[b+4>>2]|0)|0;v=T;w=Ke;o[w>>2]=b;o[w+4>>2]=v;w=Ge;_=o[w>>2]|0;w=o[w+4>>2]|0;A=He;A=Ss(_|0,w|0,o[A>>2]|0,o[A+4>>2]|0)|0;E=T;S=He;o[S>>2]=A;o[S+4>>2]=E;S=Ve;k=o[S>>2]|0;S=o[S+4>>2]|0;I=Qe;I=Ss(k|0,S|0,o[I>>2]|0,o[I+4>>2]|0)|0;x=T;C=Qe;o[C>>2]=I;o[C+4>>2]=x;C=We;R=o[C>>2]|0;C=o[C+4>>2]|0;O=Ye;O=Ss(R|0,C|0,o[O>>2]|0,o[O+4>>2]|0)|0;P=T;D=Ye;o[D>>2]=O;o[D+4>>2]=P;D=Xe;M=o[D>>2]|0;D=o[D+4>>2]|0;N=Je;N=Ss(M|0,D|0,o[N>>2]|0,o[N+4>>2]|0)|0;B=T;U=Je;o[U>>2]=N;o[U+4>>2]=B;U=Ze;j=o[U>>2]|0;U=o[U+4>>2]|0;L=$e;L=Ss(j|0,U|0,o[L>>2]|0,o[L+4>>2]|0)|0;F=T;z=$e;o[z>>2]=L;o[z+4>>2]=F;z=et;q=o[z>>2]|0;z=o[z+4>>2]|0;K=tt;K=Ss(q|0,z|0,o[K>>2]|0,o[K+4>>2]|0)|0;G=T;V=tt;o[V>>2]=K;o[V+4>>2]=G;V=nt;H=o[V>>2]|0;V=o[V+4>>2]|0;Q=rt;Q=Ss(H|0,V|0,o[Q>>2]|0,o[Q+4>>2]|0)|0;W=T;st=rt;o[st>>2]=Q;o[st+4>>2]=W;st=ft;ot=st+72|0;do{o[st>>2]=0;st=st+4|0}while((st|0)<(ot|0));Lt=Es(f|0,l|0,121665,0)|0;Nt=Tt;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=Es(p|0,m|0,121665,0)|0;Lt=lt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=Es(b|0,v|0,121665,0)|0;Nt=ut;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=Es(A|0,E|0,121665,0)|0;Lt=dt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=Es(I|0,x|0,121665,0)|0;Nt=ht;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=Es(O|0,P|0,121665,0)|0;Lt=pt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=Es(N|0,B|0,121665,0)|0;Nt=mt;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=Es(L|0,F|0,121665,0)|0;Lt=gt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=Es(K|0,G|0,121665,0)|0;Nt=yt;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=Es(Q|0,W|0,121665,0)|0;Lt=it;o[Lt>>2]=Nt;o[Lt+4>>2]=T;No(Tt);Lt=Tt;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,t|0,n|0)|0;Nt=Tt;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=lt;Nt=ks(o[Nt>>2]|0,o[Nt+4>>2]|0,u|0,d|0)|0;Lt=lt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=ut;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,g|0,y|0)|0;Nt=ut;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=dt;Nt=ks(o[Nt>>2]|0,o[Nt+4>>2]|0,_|0,w|0)|0;Lt=dt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=ht;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,k|0,S|0)|0;Nt=ht;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=pt;Nt=ks(o[Nt>>2]|0,o[Nt+4>>2]|0,R|0,C|0)|0;Lt=pt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=mt;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,M|0,D|0)|0;Nt=mt;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=gt;Nt=ks(o[Nt>>2]|0,o[Nt+4>>2]|0,j|0,U|0)|0;Lt=gt;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Lt=yt;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,q|0,z|0)|0;Nt=yt;o[Nt>>2]=Lt;o[Nt+4>>2]=T;Nt=it;Nt=ks(o[Nt>>2]|0,o[Nt+4>>2]|0,H|0,V|0)|0;Lt=it;o[Lt>>2]=Nt;o[Lt+4>>2]=T;Do(ee,vt,Tt);Lt=ee+144|0;Nt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee+64|0;Bt=jt;Ut=o[Bt>>2]|0;Bt=o[Bt+4>>2]|0;Ft=Es(Nt|0,Lt|0,18,0)|0;qt=T;Lt=ks(Ut|0,Bt|0,Nt|0,Lt|0)|0;qt=ks(Lt|0,T|0,Ft|0,qt|0)|0;o[jt>>2]=qt;o[jt+4>>2]=T;jt=ee+136|0;qt=o[jt>>2]|0;jt=o[jt+4>>2]|0;Ft=ee+56|0;Lt=Ft;Nt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;Bt=Es(qt|0,jt|0,18,0)|0;Ut=T;jt=ks(Nt|0,Lt|0,qt|0,jt|0)|0;Ut=ks(jt|0,T|0,Bt|0,Ut|0)|0;o[Ft>>2]=Ut;o[Ft+4>>2]=T;Ft=ee+128|0;Ut=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;Bt=ee+48|0;jt=Bt;qt=o[jt>>2]|0;jt=o[jt+4>>2]|0;Lt=Es(Ut|0,Ft|0,18,0)|0;Nt=T;Ft=ks(qt|0,jt|0,Ut|0,Ft|0)|0;Nt=ks(Ft|0,T|0,Lt|0,Nt|0)|0;o[Bt>>2]=Nt;o[Bt+4>>2]=T;Bt=ee+120|0;Nt=o[Bt>>2]|0;Bt=o[Bt+4>>2]|0;Lt=ee+40|0;Ft=Lt;Ut=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;jt=Es(Nt|0,Bt|0,18,0)|0;qt=T;Bt=ks(Ut|0,Ft|0,Nt|0,Bt|0)|0;qt=ks(Bt|0,T|0,jt|0,qt|0)|0;o[Lt>>2]=qt;o[Lt+4>>2]=T;Lt=ee+112|0;qt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee+32|0;Bt=jt;Nt=o[Bt>>2]|0;Bt=o[Bt+4>>2]|0;Ft=Es(qt|0,Lt|0,18,0)|0;Ut=T;Lt=ks(Nt|0,Bt|0,qt|0,Lt|0)|0;Ut=ks(Lt|0,T|0,Ft|0,Ut|0)|0;o[jt>>2]=Ut;o[jt+4>>2]=T;jt=ee+104|0;Ut=o[jt>>2]|0;jt=o[jt+4>>2]|0;Ft=ee+24|0;Lt=Ft;qt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;Bt=Es(Ut|0,jt|0,18,0)|0;Nt=T;jt=ks(qt|0,Lt|0,Ut|0,jt|0)|0;Nt=ks(jt|0,T|0,Bt|0,Nt|0)|0;o[Ft>>2]=Nt;o[Ft+4>>2]=T;Ft=ee+96|0;Nt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;Bt=ee+16|0;jt=Bt;Ut=o[jt>>2]|0;jt=o[jt+4>>2]|0;Lt=Es(Nt|0,Ft|0,18,0)|0;qt=T;Ft=ks(Ut|0,jt|0,Nt|0,Ft|0)|0;qt=ks(Ft|0,T|0,Lt|0,qt|0)|0;o[Bt>>2]=qt;o[Bt+4>>2]=T;Bt=ee+88|0;qt=o[Bt>>2]|0;Bt=o[Bt+4>>2]|0;Lt=ee+8|0;Ft=Lt;Nt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;jt=Es(qt|0,Bt|0,18,0)|0;Ut=T;Bt=ks(Nt|0,Ft|0,qt|0,Bt|0)|0;Ut=ks(Bt|0,T|0,jt|0,Ut|0)|0;o[Lt>>2]=Ut;o[Lt+4>>2]=T;Lt=ee+80|0;Ut=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee;Bt=o[jt>>2]|0;jt=o[jt+4>>2]|0;qt=Es(Ut|0,Lt|0,18,0)|0;Ft=T;Lt=ks(Bt|0,jt|0,Ut|0,Lt|0)|0;Ft=ks(Lt|0,T|0,qt|0,Ft|0)|0;qt=ee;o[qt>>2]=Ft;o[qt+4>>2]=T;No(ee);Mo(te,J,X,0);Mo(ee,ne,X,0);$=$+1|0;if(($|0)==8)break;else{Ut=Z;Lt=c;Ft=a;qt=i;u=Y<<1&255;Z=J;a=te;i=ee;c=ne;J=Ut;ne=Lt;te=Ft;ee=qt}}re=re+1|0;if((re|0)==32)break;else{d=J;t=Z;n=ne;f=ee;l=te}}st=It;t=te;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));st=xt;t=ee;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(bt,xt);Bo(St,bt);Bo(kt,St);Do(Tt,kt,xt);n=Tt+144|0;l=n;f=o[l>>2]|0;l=o[l+4>>2]|0;c=yt;a=o[c>>2]|0;c=o[c+4>>2]|0;i=Es(f|0,l|0,18,0)|0;u=T;l=ks(a|0,c|0,f|0,l|0)|0;u=ks(l|0,T|0,i|0,u|0)|0;i=yt;o[i>>2]=u;o[i+4>>2]=T;i=Tt+136|0;u=i;l=o[u>>2]|0;u=o[u+4>>2]|0;f=gt;c=o[f>>2]|0;f=o[f+4>>2]|0;a=Es(l|0,u|0,18,0)|0;d=T;u=ks(c|0,f|0,l|0,u|0)|0;d=ks(u|0,T|0,a|0,d|0)|0;a=gt;o[a>>2]=d;o[a+4>>2]=T;a=Tt+128|0;d=a;u=o[d>>2]|0;d=o[d+4>>2]|0;l=mt;f=o[l>>2]|0;l=o[l+4>>2]|0;c=Es(u|0,d|0,18,0)|0;ot=T;d=ks(f|0,l|0,u|0,d|0)|0;ot=ks(d|0,T|0,c|0,ot|0)|0;c=mt;o[c>>2]=ot;o[c+4>>2]=T;c=Tt+120|0;ot=c;d=o[ot>>2]|0;ot=o[ot+4>>2]|0;u=pt;l=o[u>>2]|0;u=o[u+4>>2]|0;f=Es(d|0,ot|0,18,0)|0;t=T;ot=ks(l|0,u|0,d|0,ot|0)|0;t=ks(ot|0,T|0,f|0,t|0)|0;f=pt;o[f>>2]=t;o[f+4>>2]=T;f=Tt+112|0;t=f;ot=o[t>>2]|0;t=o[t+4>>2]|0;d=ht;u=o[d>>2]|0;d=o[d+4>>2]|0;l=Es(ot|0,t|0,18,0)|0;st=T;t=ks(u|0,d|0,ot|0,t|0)|0;st=ks(t|0,T|0,l|0,st|0)|0;l=ht;o[l>>2]=st;o[l+4>>2]=T;l=Tt+104|0;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=dt;d=o[ot>>2]|0;ot=o[ot+4>>2]|0;u=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(d|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,u|0,Lt|0)|0;u=dt;o[u>>2]=Lt;o[u+4>>2]=T;u=Tt+96|0;Lt=u;st=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;t=ut;ot=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(st|0,Lt|0,18,0)|0;Ft=T;Lt=ks(ot|0,t|0,st|0,Lt|0)|0;Ft=ks(Lt|0,T|0,d|0,Ft|0)|0;d=ut;o[d>>2]=Ft;o[d+4>>2]=T;d=Tt+88|0;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=vt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Do(Tt,vt,bt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=Ct;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(kt,Ct);Do(Tt,kt,vt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=_t;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(kt,_t);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Do(Tt,kt,_t);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=wt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(kt,wt);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Do(Tt,St,wt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=At;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(kt,At);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Do(Tt,St,At);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=kt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Do(Tt,kt,wt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=Ot;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(kt,Ot);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Do(Tt,St,Ot);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=Et;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(St,Et);Bo(kt,St);t=2;do{Bo(St,kt);Bo(kt,St);t=t+2|0}while(t>>>0<100);Do(Tt,kt,Et);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=St;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Do(Tt,St,Ot);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=kt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Bo(St,kt);Bo(kt,St);Bo(St,kt);Bo(kt,St);Bo(St,kt);Do(Tt,St,Ct);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=Rt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Do(Tt,It,Rt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;No(Tt);st=xt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Ot=o[xt>>2]|0;wt=Ot>>31&Ot;Mt=(wt>>26)+(o[xt+8>>2]|0)|0;qt=Mt>>31&Mt;Dt=(qt>>25)+(o[xt+16>>2]|0)|0;Ft=Dt>>31&Dt;_t=(Ft>>26)+(o[xt+24>>2]|0)|0;Nt=_t>>31&_t;Bt=(Nt>>25)+(o[xt+32>>2]|0)|0;It=Bt>>31&Bt;jt=(It>>26)+(o[xt+40>>2]|0)|0;Tt=jt>>31&jt;Ut=(Tt>>25)+(o[xt+48>>2]|0)|0;St=Ut>>31&Ut;Lt=(St>>26)+(o[xt+56>>2]|0)|0;kt=Lt>>31≪Rt=(kt>>25)+(o[xt+64>>2]|0)|0;At=Rt>>31&Rt;Ct=(At>>26)+(o[xt+72>>2]|0)|0;Et=Ct>>31&Ct;wt=((Et>>25)*19|0)+(Ot-(wt&-67108864))|0;Ot=wt>>31&wt;qt=(Ot>>26)+(Mt-(qt&-33554432))|0;Mt=qt>>31&qt;Ft=(Mt>>25)+(Dt-(Ft&-67108864))|0;Dt=Ft>>31&Ft;xt=(Dt>>26)+(_t-(Nt&-33554432))|0;Nt=xt>>31&xt;It=(Nt>>25)+(Bt-(It&-67108864))|0;Bt=It>>31&It;Tt=(Bt>>26)+(jt-(Tt&-33554432))|0;jt=Tt>>31&Tt;St=(jt>>25)+(Ut-(St&-67108864))|0;Ut=St>>31&St;kt=(Ut>>26)+(Lt-(kt&-33554432))|0;Lt=kt>>31&kt;At=(Lt>>25)+(Rt-(At&-67108864))|0;Rt=At>>31&At;Et=(Rt>>26)+(Ct-(Et&-33554432))|0;Ct=Et>>31&Et;Ot=((Ct>>25)*19|0)+(wt-(Ot&-67108864))|0;wt=Ot>>31&Ot;Ot=Ot-(wt&-67108864)|0;Mt=(Ot>>26)+((wt>>26)+(qt-(Mt&-33554432)))|0;Dt=(Mt>>25)+(Ft-(Dt&-67108864))|0;Nt=(Dt>>26)+(xt-(Nt&-33554432))|0;Bt=(Nt>>25)+(It-(Bt&-67108864))|0;jt=(Bt>>26)+(Tt-(jt&-33554432))|0;Ut=(jt>>25)+(St-(Ut&-67108864))|0;Lt=(Ut>>26)+(kt-(Lt&-33554432))|0;Rt=(Lt>>25)+(At-(Rt&-67108864))|0;Ct=(Rt>>26)+(Et-(Ct&-33554432))|0;Ot=((Ct>>25)*19|0)+(Ot&67108863)|0;Mt=(Ot>>26)+(Mt&33554431)|0;Dt=(Mt>>25)+(Dt&67108863)|0;Nt=(Dt>>26)+(Nt&33554431)|0;Bt=(Nt>>25)+(Bt&67108863)|0;jt=(Bt>>26)+(jt&33554431)|0;Ut=(jt>>25)+(Ut&67108863)|0;Lt=(Ut>>26)+(Lt&33554431)|0;Rt=(Lt>>25)+(Rt&67108863)|0;Ct=(Rt>>26)+(Ct&33554431)|0;Ot=((Ct>>25)*19|0)+(Ot&67108863)|0;Et=Mt<<16&(Mt|-33554432);Et=Et<<8&Et;Et=Et<<4&Et;Et=Et<<2&Et;At=Dt<<16&(Dt|-67108864);At=At<<8&At;At=At<<4&At;At=At<<2&At;kt=Nt<<16&(Nt|-33554432);kt=kt<<8&kt;kt=kt<<4&kt;kt=kt<<2&kt;St=Bt<<16&(Bt|-67108864);St=St<<8&St;St=St<<4&St;St=St<<2&St;Tt=jt<<16&(jt|-33554432);Tt=Tt<<8&Tt;Tt=Tt<<4&Tt;Tt=Tt<<2&Tt;It=Ut<<16&(Ut|-67108864);It=It<<8&It;It=It<<4&It;It=It<<2&It;xt=Lt<<16&(Lt|-33554432);xt=xt<<8&xt;xt=xt<<4&xt;xt=xt<<2&xt;Ft=Rt<<16&(Rt|-67108864);Ft=Ft<<8&Ft;Ft=Ft<<4&Ft;Ft=Ft<<2&Ft;qt=Ct<<16&(Ct|-33554432);qt=qt<<8&qt;qt=qt<<4&qt;qt=qt<<2&qt;qt=(At<<1&At&(Et<<1&Et)&(kt<<1&kt)&(St<<1&St)&(Tt<<1&Tt))>>31&~(Ot+-67108845>>31)&(It<<1&It)>>31&(xt<<1&xt)>>31&(Ft<<1&Ft)>>31&(qt<<1&qt)>>31;Ot=Ot-(qt&67108845)|0;Ft=qt&67108863;qt=qt&33554431;Mt=(Mt&33554431)-qt|0;Dt=(Dt&67108863)-Ft|0;Nt=(Nt&33554431)-qt|0;Bt=(Bt&67108863)-Ft|0;jt=(jt&33554431)-qt|0;Ut=(Ut&67108863)-Ft|0;Lt=(Lt&33554431)-qt|0;Ft=(Rt&67108863)-Ft|0;qt=(Ct&33554431)-qt|0;r[e>>0]=Ot;r[e+1>>0]=Ot>>>8;r[e+2>>0]=Ot>>>16;r[e+3>>0]=Ot>>>24|Mt<<2;r[e+4>>0]=Mt>>>6;r[e+5>>0]=Mt>>>14;r[e+6>>0]=Dt<<3|Mt>>>22;r[e+7>>0]=Dt>>>5;r[e+8>>0]=Dt>>>13;r[e+9>>0]=Nt<<5|Dt>>>21;r[e+10>>0]=Nt>>>3;r[e+11>>0]=Nt>>>11;r[e+12>>0]=Bt<<6|Nt>>>19;r[e+13>>0]=Bt>>>2;r[e+14>>0]=Bt>>>10;r[e+15>>0]=Bt>>>18;r[e+16>>0]=jt;r[e+17>>0]=jt>>>8;r[e+18>>0]=jt>>>16;r[e+19>>0]=jt>>>24|Ut<<1;r[e+20>>0]=Ut>>>7;r[e+21>>0]=Ut>>>15;r[e+22>>0]=Lt<<3|Ut>>>23;r[e+23>>0]=Lt>>>5;r[e+24>>0]=Lt>>>13;r[e+25>>0]=Ft<<4|Lt>>>21;r[e+26>>0]=Ft>>>4;r[e+27>>0]=Ft>>>12;r[e+28>>0]=qt<<6|Ft>>>20;r[e+29>>0]=qt>>>2;r[e+30>>0]=qt>>>10;r[e+31>>0]=qt>>>18;h=Pt;return 0}function Mo(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0;n=0-n|0;a=e;i=o[a>>2]|0;s=t;s=(o[s>>2]^i)&n;i=s^i;a=e;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;s=s^o[t>>2];a=t;o[a>>2]=s;o[a+4>>2]=((s|0)<0)<<31>>31;a=e+8|0;s=a;i=o[s>>2]|0;r=t+8|0;c=r;c=(o[c>>2]^i)&n;i=c^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;c=c^o[r>>2];o[r>>2]=c;o[r+4>>2]=((c|0)<0)<<31>>31;r=e+16|0;c=r;a=o[c>>2]|0;i=t+16|0;s=i;s=(o[s>>2]^a)&n;a=s^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;s=s^o[i>>2];o[i>>2]=s;o[i+4>>2]=((s|0)<0)<<31>>31;i=e+24|0;s=i;r=o[s>>2]|0;a=t+24|0;c=a;c=(o[c>>2]^r)&n;r=c^r;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;c=c^o[a>>2];o[a>>2]=c;o[a+4>>2]=((c|0)<0)<<31>>31;a=e+32|0;c=a;i=o[c>>2]|0;r=t+32|0;s=r;s=(o[s>>2]^i)&n;i=s^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;s=s^o[r>>2];o[r>>2]=s;o[r+4>>2]=((s|0)<0)<<31>>31;r=e+40|0;s=r;a=o[s>>2]|0;i=t+40|0;c=i;c=(o[c>>2]^a)&n;a=c^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;c=c^o[i>>2];o[i>>2]=c;o[i+4>>2]=((c|0)<0)<<31>>31;i=e+48|0;c=i;r=o[c>>2]|0;a=t+48|0;s=a;s=(o[s>>2]^r)&n;r=s^r;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;s=s^o[a>>2];o[a>>2]=s;o[a+4>>2]=((s|0)<0)<<31>>31;a=e+56|0;s=a;i=o[s>>2]|0;r=t+56|0;c=r;c=(o[c>>2]^i)&n;i=c^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;c=c^o[r>>2];o[r>>2]=c;o[r+4>>2]=((c|0)<0)<<31>>31;r=e+64|0;c=r;a=o[c>>2]|0;i=t+64|0;s=i;s=(o[s>>2]^a)&n;a=s^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;s=s^o[i>>2];o[i>>2]=s;o[i+4>>2]=((s|0)<0)<<31>>31;i=e+72|0;s=i;e=o[s>>2]|0;r=t+72|0;t=r;n=(o[t>>2]^e)&n;e=n^e;t=i;o[t>>2]=e;o[t+4>>2]=((e|0)<0)<<31>>31;n=n^o[r>>2];o[r>>2]=n;o[r+4>>2]=((n|0)<0)<<31>>31;return}function Do(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0;a=Rs(0,o[t>>2]|0,32)|0;h=T;A=Rs(0,o[n>>2]|0,32)|0;h=Es(A|0,T|0,a|0,h|0)|0;a=e;o[a>>2]=h;o[a+4>>2]=T;a=Rs(0,o[t>>2]|0,32)|0;h=T;A=n+8|0;b=Rs(0,o[A>>2]|0,32)|0;h=Es(b|0,T|0,a|0,h|0)|0;a=T;b=t+8|0;y=Rs(0,o[b>>2]|0,32)|0;m=T;w=Rs(0,o[n>>2]|0,32)|0;m=Es(w|0,T|0,y|0,m|0)|0;a=ks(m|0,T|0,h|0,a|0)|0;h=e+8|0;o[h>>2]=a;o[h+4>>2]=T;h=Rs(0,o[b>>2]|0,31)|0;a=T;m=Rs(0,o[A>>2]|0,32)|0;a=Es(m|0,T|0,h|0,a|0)|0;h=T;m=Rs(0,o[t>>2]|0,32)|0;y=T;w=n+16|0;u=Rs(0,o[w>>2]|0,32)|0;y=Es(u|0,T|0,m|0,y|0)|0;h=ks(y|0,T|0,a|0,h|0)|0;a=T;y=t+16|0;m=Rs(0,o[y>>2]|0,32)|0;u=T;_=Rs(0,o[n>>2]|0,32)|0;u=Es(_|0,T|0,m|0,u|0)|0;u=ks(h|0,a|0,u|0,T|0)|0;a=e+16|0;o[a>>2]=u;o[a+4>>2]=T;a=Rs(0,o[b>>2]|0,32)|0;u=T;h=Rs(0,o[w>>2]|0,32)|0;u=Es(h|0,T|0,a|0,u|0)|0;a=T;h=Rs(0,o[y>>2]|0,32)|0;m=T;_=Rs(0,o[A>>2]|0,32)|0;m=Es(_|0,T|0,h|0,m|0)|0;a=ks(m|0,T|0,u|0,a|0)|0;u=T;m=Rs(0,o[t>>2]|0,32)|0;h=T;_=n+24|0;s=Rs(0,o[_>>2]|0,32)|0;h=Es(s|0,T|0,m|0,h|0)|0;h=ks(a|0,u|0,h|0,T|0)|0;u=T;a=t+24|0;m=Rs(0,o[a>>2]|0,32)|0;s=T;f=Rs(0,o[n>>2]|0,32)|0;s=Es(f|0,T|0,m|0,s|0)|0;s=ks(h|0,u|0,s|0,T|0)|0;u=e+24|0;o[u>>2]=s;o[u+4>>2]=T;u=Rs(0,o[y>>2]|0,32)|0;s=T;h=Rs(0,o[w>>2]|0,32)|0;s=Es(h|0,T|0,u|0,s|0)|0;u=T;h=Rs(0,o[b>>2]|0,32)|0;m=T;f=Rs(0,o[_>>2]|0,32)|0;m=Es(f|0,T|0,h|0,m|0)|0;h=T;f=Rs(0,o[a>>2]|0,32)|0;g=T;p=Rs(0,o[A>>2]|0,32)|0;g=Es(p|0,T|0,f|0,g|0)|0;h=ks(g|0,T|0,m|0,h|0)|0;h=Os(h|0,T|0,1)|0;u=ks(h|0,T|0,s|0,u|0)|0;s=T;h=Rs(0,o[t>>2]|0,32)|0;m=T;g=n+32|0;f=Rs(0,o[g>>2]|0,32)|0;m=Es(f|0,T|0,h|0,m|0)|0;m=ks(u|0,s|0,m|0,T|0)|0;s=T;u=t+32|0;h=Rs(0,o[u>>2]|0,32)|0;f=T;p=Rs(0,o[n>>2]|0,32)|0;f=Es(p|0,T|0,h|0,f|0)|0;f=ks(m|0,s|0,f|0,T|0)|0;s=e+32|0;o[s>>2]=f;o[s+4>>2]=T;s=Rs(0,o[y>>2]|0,32)|0;f=T;m=Rs(0,o[_>>2]|0,32)|0;f=Es(m|0,T|0,s|0,f|0)|0;s=T;m=Rs(0,o[a>>2]|0,32)|0;h=T;p=Rs(0,o[w>>2]|0,32)|0;h=Es(p|0,T|0,m|0,h|0)|0;s=ks(h|0,T|0,f|0,s|0)|0;f=T;h=Rs(0,o[b>>2]|0,32)|0;m=T;p=Rs(0,o[g>>2]|0,32)|0;m=Es(p|0,T|0,h|0,m|0)|0;m=ks(s|0,f|0,m|0,T|0)|0;f=T;s=Rs(0,o[u>>2]|0,32)|0;h=T;p=Rs(0,o[A>>2]|0,32)|0;h=Es(p|0,T|0,s|0,h|0)|0;h=ks(m|0,f|0,h|0,T|0)|0;f=T;m=Rs(0,o[t>>2]|0,32)|0;s=T;p=n+40|0;v=Rs(0,o[p>>2]|0,32)|0;s=Es(v|0,T|0,m|0,s|0)|0;s=ks(h|0,f|0,s|0,T|0)|0;f=T;h=t+40|0;m=Rs(0,o[h>>2]|0,32)|0;v=T;l=Rs(0,o[n>>2]|0,32)|0;v=Es(l|0,T|0,m|0,v|0)|0;v=ks(s|0,f|0,v|0,T|0)|0;f=e+40|0;o[f>>2]=v;o[f+4>>2]=T;f=Rs(0,o[a>>2]|0,32)|0;v=T;s=Rs(0,o[_>>2]|0,32)|0;v=Es(s|0,T|0,f|0,v|0)|0;f=T;s=Rs(0,o[b>>2]|0,32)|0;m=T;l=Rs(0,o[p>>2]|0,32)|0;m=Es(l|0,T|0,s|0,m|0)|0;f=ks(m|0,T|0,v|0,f|0)|0;v=T;m=Rs(0,o[h>>2]|0,32)|0;s=T;l=Rs(0,o[A>>2]|0,32)|0;s=Es(l|0,T|0,m|0,s|0)|0;s=ks(f|0,v|0,s|0,T|0)|0;s=Os(s|0,T|0,1)|0;v=T;f=Rs(0,o[y>>2]|0,32)|0;m=T;l=Rs(0,o[g>>2]|0,32)|0;m=Es(l|0,T|0,f|0,m|0)|0;m=ks(s|0,v|0,m|0,T|0)|0;v=T;s=Rs(0,o[u>>2]|0,32)|0;f=T;l=Rs(0,o[w>>2]|0,32)|0;f=Es(l|0,T|0,s|0,f|0)|0;f=ks(m|0,v|0,f|0,T|0)|0;v=T;m=Rs(0,o[t>>2]|0,32)|0;s=T;l=n+48|0;E=Rs(0,o[l>>2]|0,32)|0;s=Es(E|0,T|0,m|0,s|0)|0;s=ks(f|0,v|0,s|0,T|0)|0;v=T;f=t+48|0;m=Rs(0,o[f>>2]|0,32)|0;E=T;d=Rs(0,o[n>>2]|0,32)|0;E=Es(d|0,T|0,m|0,E|0)|0;E=ks(s|0,v|0,E|0,T|0)|0;v=e+48|0;o[v>>2]=E;o[v+4>>2]=T;v=Rs(0,o[a>>2]|0,32)|0;E=T;s=Rs(0,o[g>>2]|0,32)|0;E=Es(s|0,T|0,v|0,E|0)|0;v=T;s=Rs(0,o[u>>2]|0,32)|0;m=T;d=Rs(0,o[_>>2]|0,32)|0;m=Es(d|0,T|0,s|0,m|0)|0;v=ks(m|0,T|0,E|0,v|0)|0;E=T;m=Rs(0,o[y>>2]|0,32)|0;s=T;d=Rs(0,o[p>>2]|0,32)|0;s=Es(d|0,T|0,m|0,s|0)|0;s=ks(v|0,E|0,s|0,T|0)|0;E=T;v=Rs(0,o[h>>2]|0,32)|0;m=T;d=Rs(0,o[w>>2]|0,32)|0;m=Es(d|0,T|0,v|0,m|0)|0;m=ks(s|0,E|0,m|0,T|0)|0;E=T;s=Rs(0,o[b>>2]|0,32)|0;v=T;d=Rs(0,o[l>>2]|0,32)|0;v=Es(d|0,T|0,s|0,v|0)|0;v=ks(m|0,E|0,v|0,T|0)|0;E=T;m=Rs(0,o[f>>2]|0,32)|0;s=T;d=Rs(0,o[A>>2]|0,32)|0;s=Es(d|0,T|0,m|0,s|0)|0;s=ks(v|0,E|0,s|0,T|0)|0;E=T;v=Rs(0,o[t>>2]|0,32)|0;m=T;d=n+56|0;k=Rs(0,o[d>>2]|0,32)|0;m=Es(k|0,T|0,v|0,m|0)|0;m=ks(s|0,E|0,m|0,T|0)|0;E=T;s=t+56|0;v=Rs(0,o[s>>2]|0,32)|0;k=T;c=Rs(0,o[n>>2]|0,32)|0;k=Es(c|0,T|0,v|0,k|0)|0;k=ks(m|0,E|0,k|0,T|0)|0;E=e+56|0;o[E>>2]=k;o[E+4>>2]=T;E=Rs(0,o[u>>2]|0,32)|0;k=T;m=Rs(0,o[g>>2]|0,32)|0;k=Es(m|0,T|0,E|0,k|0)|0;E=T;m=Rs(0,o[a>>2]|0,32)|0;v=T;c=Rs(0,o[p>>2]|0,32)|0;v=Es(c|0,T|0,m|0,v|0)|0;m=T;c=Rs(0,o[h>>2]|0,32)|0;i=T;r=Rs(0,o[_>>2]|0,32)|0;i=Es(r|0,T|0,c|0,i|0)|0;m=ks(i|0,T|0,v|0,m|0)|0;v=T;i=Rs(0,o[b>>2]|0,32)|0;c=T;r=Rs(0,o[d>>2]|0,32)|0;c=Es(r|0,T|0,i|0,c|0)|0;c=ks(m|0,v|0,c|0,T|0)|0;v=T;m=Rs(0,o[s>>2]|0,32)|0;i=T;r=Rs(0,o[A>>2]|0,32)|0;i=Es(r|0,T|0,m|0,i|0)|0;i=ks(c|0,v|0,i|0,T|0)|0;i=Os(i|0,T|0,1)|0;E=ks(i|0,T|0,k|0,E|0)|0;k=T;i=Rs(0,o[y>>2]|0,32)|0;v=T;c=Rs(0,o[l>>2]|0,32)|0;v=Es(c|0,T|0,i|0,v|0)|0;v=ks(E|0,k|0,v|0,T|0)|0;k=T;E=Rs(0,o[f>>2]|0,32)|0;i=T;c=Rs(0,o[w>>2]|0,32)|0;i=Es(c|0,T|0,E|0,i|0)|0;i=ks(v|0,k|0,i|0,T|0)|0;k=T;v=Rs(0,o[t>>2]|0,32)|0;E=T;c=n+64|0;m=Rs(0,o[c>>2]|0,32)|0;E=Es(m|0,T|0,v|0,E|0)|0;E=ks(i|0,k|0,E|0,T|0)|0;k=T;i=t+64|0;v=Rs(0,o[i>>2]|0,32)|0;m=T;r=Rs(0,o[n>>2]|0,32)|0;m=Es(r|0,T|0,v|0,m|0)|0;m=ks(E|0,k|0,m|0,T|0)|0;k=e+64|0;o[k>>2]=m;o[k+4>>2]=T;k=Rs(0,o[u>>2]|0,32)|0;m=T;E=Rs(0,o[p>>2]|0,32)|0;m=Es(E|0,T|0,k|0,m|0)|0;k=T;E=Rs(0,o[h>>2]|0,32)|0;v=T;r=Rs(0,o[g>>2]|0,32)|0;v=Es(r|0,T|0,E|0,v|0)|0;k=ks(v|0,T|0,m|0,k|0)|0;m=T;v=Rs(0,o[a>>2]|0,32)|0;E=T;r=Rs(0,o[l>>2]|0,32)|0;E=Es(r|0,T|0,v|0,E|0)|0;E=ks(k|0,m|0,E|0,T|0)|0;m=T;k=Rs(0,o[f>>2]|0,32)|0;v=T;r=Rs(0,o[_>>2]|0,32)|0;v=Es(r|0,T|0,k|0,v|0)|0;v=ks(E|0,m|0,v|0,T|0)|0;m=T;E=Rs(0,o[y>>2]|0,32)|0;k=T;r=Rs(0,o[d>>2]|0,32)|0;k=Es(r|0,T|0,E|0,k|0)|0;k=ks(v|0,m|0,k|0,T|0)|0;m=T;v=Rs(0,o[s>>2]|0,32)|0;E=T;r=Rs(0,o[w>>2]|0,32)|0;E=Es(r|0,T|0,v|0,E|0)|0;E=ks(k|0,m|0,E|0,T|0)|0;m=T;k=Rs(0,o[b>>2]|0,32)|0;v=T;r=Rs(0,o[c>>2]|0,32)|0;v=Es(r|0,T|0,k|0,v|0)|0;v=ks(E|0,m|0,v|0,T|0)|0;m=T;E=Rs(0,o[i>>2]|0,32)|0;k=T;r=Rs(0,o[A>>2]|0,32)|0;k=Es(r|0,T|0,E|0,k|0)|0;k=ks(v|0,m|0,k|0,T|0)|0;m=T;v=Rs(0,o[t>>2]|0,32)|0;E=T;r=n+72|0;S=Rs(0,o[r>>2]|0,32)|0;E=Es(S|0,T|0,v|0,E|0)|0;E=ks(k|0,m|0,E|0,T|0)|0;m=T;t=t+72|0;k=Rs(0,o[t>>2]|0,32)|0;v=T;n=Rs(0,o[n>>2]|0,32)|0;v=Es(n|0,T|0,k|0,v|0)|0;v=ks(E|0,m|0,v|0,T|0)|0;n=e+72|0;o[n>>2]=v;o[n+4>>2]=T;n=Rs(0,o[h>>2]|0,32)|0;v=T;m=Rs(0,o[p>>2]|0,32)|0;v=Es(m|0,T|0,n|0,v|0)|0;n=T;m=Rs(0,o[a>>2]|0,32)|0;E=T;k=Rs(0,o[d>>2]|0,32)|0;E=Es(k|0,T|0,m|0,E|0)|0;n=ks(E|0,T|0,v|0,n|0)|0;v=T;E=Rs(0,o[s>>2]|0,32)|0;m=T;k=Rs(0,o[_>>2]|0,32)|0;m=Es(k|0,T|0,E|0,m|0)|0;m=ks(n|0,v|0,m|0,T|0)|0;v=T;n=Rs(0,o[b>>2]|0,32)|0;b=T;E=Rs(0,o[r>>2]|0,32)|0;b=Es(E|0,T|0,n|0,b|0)|0;b=ks(m|0,v|0,b|0,T|0)|0;v=T;m=Rs(0,o[t>>2]|0,32)|0;n=T;A=Rs(0,o[A>>2]|0,32)|0;n=Es(A|0,T|0,m|0,n|0)|0;n=ks(b|0,v|0,n|0,T|0)|0;n=Os(n|0,T|0,1)|0;v=T;b=Rs(0,o[u>>2]|0,32)|0;m=T;A=Rs(0,o[l>>2]|0,32)|0;m=Es(A|0,T|0,b|0,m|0)|0;m=ks(n|0,v|0,m|0,T|0)|0;v=T;n=Rs(0,o[f>>2]|0,32)|0;b=T;A=Rs(0,o[g>>2]|0,32)|0;b=Es(A|0,T|0,n|0,b|0)|0;b=ks(m|0,v|0,b|0,T|0)|0;v=T;m=Rs(0,o[y>>2]|0,32)|0;n=T;A=Rs(0,o[c>>2]|0,32)|0;n=Es(A|0,T|0,m|0,n|0)|0;n=ks(b|0,v|0,n|0,T|0)|0;v=T;b=Rs(0,o[i>>2]|0,32)|0;m=T;A=Rs(0,o[w>>2]|0,32)|0;m=Es(A|0,T|0,b|0,m|0)|0;m=ks(n|0,v|0,m|0,T|0)|0;v=e+80|0;o[v>>2]=m;o[v+4>>2]=T;v=Rs(0,o[h>>2]|0,32)|0;m=T;n=Rs(0,o[l>>2]|0,32)|0;m=Es(n|0,T|0,v|0,m|0)|0;v=T;n=Rs(0,o[f>>2]|0,32)|0;b=T;A=Rs(0,o[p>>2]|0,32)|0;b=Es(A|0,T|0,n|0,b|0)|0;v=ks(b|0,T|0,m|0,v|0)|0;m=T;b=Rs(0,o[u>>2]|0,32)|0;n=T;A=Rs(0,o[d>>2]|0,32)|0;n=Es(A|0,T|0,b|0,n|0)|0;n=ks(v|0,m|0,n|0,T|0)|0;m=T;v=Rs(0,o[s>>2]|0,32)|0;b=T;A=Rs(0,o[g>>2]|0,32)|0;b=Es(A|0,T|0,v|0,b|0)|0;b=ks(n|0,m|0,b|0,T|0)|0;m=T;n=Rs(0,o[a>>2]|0,32)|0;v=T;A=Rs(0,o[c>>2]|0,32)|0;v=Es(A|0,T|0,n|0,v|0)|0;v=ks(b|0,m|0,v|0,T|0)|0;m=T;b=Rs(0,o[i>>2]|0,32)|0;n=T;A=Rs(0,o[_>>2]|0,32)|0;n=Es(A|0,T|0,b|0,n|0)|0;n=ks(v|0,m|0,n|0,T|0)|0;m=T;y=Rs(0,o[y>>2]|0,32)|0;v=T;b=Rs(0,o[r>>2]|0,32)|0;v=Es(b|0,T|0,y|0,v|0)|0;v=ks(n|0,m|0,v|0,T|0)|0;m=T;n=Rs(0,o[t>>2]|0,32)|0;y=T;w=Rs(0,o[w>>2]|0,32)|0;y=Es(w|0,T|0,n|0,y|0)|0;y=ks(v|0,m|0,y|0,T|0)|0;m=e+88|0;o[m>>2]=y;o[m+4>>2]=T;m=Rs(0,o[f>>2]|0,32)|0;y=T;v=Rs(0,o[l>>2]|0,32)|0;y=Es(v|0,T|0,m|0,y|0)|0;m=T;v=Rs(0,o[h>>2]|0,32)|0;n=T;w=Rs(0,o[d>>2]|0,32)|0;n=Es(w|0,T|0,v|0,n|0)|0;v=T;w=Rs(0,o[s>>2]|0,32)|0;b=T;A=Rs(0,o[p>>2]|0,32)|0;b=Es(A|0,T|0,w|0,b|0)|0;v=ks(b|0,T|0,n|0,v|0)|0;n=T;a=Rs(0,o[a>>2]|0,32)|0;b=T;w=Rs(0,o[r>>2]|0,32)|0;b=Es(w|0,T|0,a|0,b|0)|0;b=ks(v|0,n|0,b|0,T|0)|0;n=T;v=Rs(0,o[t>>2]|0,32)|0;a=T;_=Rs(0,o[_>>2]|0,32)|0;a=Es(_|0,T|0,v|0,a|0)|0;a=ks(b|0,n|0,a|0,T|0)|0;a=Os(a|0,T|0,1)|0;m=ks(a|0,T|0,y|0,m|0)|0;y=T;a=Rs(0,o[u>>2]|0,32)|0;n=T;b=Rs(0,o[c>>2]|0,32)|0;n=Es(b|0,T|0,a|0,n|0)|0;n=ks(m|0,y|0,n|0,T|0)|0;y=T;m=Rs(0,o[i>>2]|0,32)|0;a=T;b=Rs(0,o[g>>2]|0,32)|0;a=Es(b|0,T|0,m|0,a|0)|0;a=ks(n|0,y|0,a|0,T|0)|0;y=e+96|0;o[y>>2]=a;o[y+4>>2]=T;y=Rs(0,o[f>>2]|0,32)|0;a=T;n=Rs(0,o[d>>2]|0,32)|0;a=Es(n|0,T|0,y|0,a|0)|0;y=T;n=Rs(0,o[s>>2]|0,32)|0;m=T;b=Rs(0,o[l>>2]|0,32)|0;m=Es(b|0,T|0,n|0,m|0)|0;y=ks(m|0,T|0,a|0,y|0)|0;a=T;m=Rs(0,o[h>>2]|0,32)|0;n=T;b=Rs(0,o[c>>2]|0,32)|0;n=Es(b|0,T|0,m|0,n|0)|0;n=ks(y|0,a|0,n|0,T|0)|0;a=T;y=Rs(0,o[i>>2]|0,32)|0;m=T;b=Rs(0,o[p>>2]|0,32)|0;m=Es(b|0,T|0,y|0,m|0)|0;m=ks(n|0,a|0,m|0,T|0)|0;a=T;u=Rs(0,o[u>>2]|0,32)|0;n=T;y=Rs(0,o[r>>2]|0,32)|0;n=Es(y|0,T|0,u|0,n|0)|0;n=ks(m|0,a|0,n|0,T|0)|0;a=T;m=Rs(0,o[t>>2]|0,32)|0;u=T;g=Rs(0,o[g>>2]|0,32)|0;u=Es(g|0,T|0,m|0,u|0)|0;u=ks(n|0,a|0,u|0,T|0)|0;a=e+104|0;o[a>>2]=u;o[a+4>>2]=T;a=Rs(0,o[s>>2]|0,32)|0;u=T;n=Rs(0,o[d>>2]|0,32)|0;u=Es(n|0,T|0,a|0,u|0)|0;a=T;n=Rs(0,o[h>>2]|0,32)|0;h=T;m=Rs(0,o[r>>2]|0,32)|0;h=Es(m|0,T|0,n|0,h|0)|0;a=ks(h|0,T|0,u|0,a|0)|0;u=T;h=Rs(0,o[t>>2]|0,32)|0;n=T;p=Rs(0,o[p>>2]|0,32)|0;n=Es(p|0,T|0,h|0,n|0)|0;n=ks(a|0,u|0,n|0,T|0)|0;n=Os(n|0,T|0,1)|0;u=T;a=Rs(0,o[f>>2]|0,32)|0;h=T;p=Rs(0,o[c>>2]|0,32)|0;h=Es(p|0,T|0,a|0,h|0)|0;h=ks(n|0,u|0,h|0,T|0)|0;u=T;n=Rs(0,o[i>>2]|0,32)|0;a=T;p=Rs(0,o[l>>2]|0,32)|0;a=Es(p|0,T|0,n|0,a|0)|0;a=ks(h|0,u|0,a|0,T|0)|0;u=e+112|0;o[u>>2]=a;o[u+4>>2]=T;u=Rs(0,o[s>>2]|0,32)|0;a=T;h=Rs(0,o[c>>2]|0,32)|0;a=Es(h|0,T|0,u|0,a|0)|0;u=T;h=Rs(0,o[i>>2]|0,32)|0;n=T;p=Rs(0,o[d>>2]|0,32)|0;n=Es(p|0,T|0,h|0,n|0)|0;u=ks(n|0,T|0,a|0,u|0)|0;a=T;n=Rs(0,o[f>>2]|0,32)|0;f=T;h=Rs(0,o[r>>2]|0,32)|0;f=Es(h|0,T|0,n|0,f|0)|0;f=ks(u|0,a|0,f|0,T|0)|0;a=T;u=Rs(0,o[t>>2]|0,32)|0;n=T;l=Rs(0,o[l>>2]|0,32)|0;n=Es(l|0,T|0,u|0,n|0)|0;n=ks(f|0,a|0,n|0,T|0)|0;a=e+120|0;o[a>>2]=n;o[a+4>>2]=T;a=Rs(0,o[i>>2]|0,32)|0;n=T;f=Rs(0,o[c>>2]|0,32)|0;n=Es(f|0,T|0,a|0,n|0)|0;a=T;s=Rs(0,o[s>>2]|0,32)|0;f=T;u=Rs(0,o[r>>2]|0,32)|0;f=Es(u|0,T|0,s|0,f|0)|0;s=T;u=Rs(0,o[t>>2]|0,32)|0;l=T;d=Rs(0,o[d>>2]|0,32)|0;l=Es(d|0,T|0,u|0,l|0)|0;s=ks(l|0,T|0,f|0,s|0)|0;s=Os(s|0,T|0,1)|0;a=ks(s|0,T|0,n|0,a|0)|0;n=e+128|0;o[n>>2]=a;o[n+4>>2]=T;i=Rs(0,o[i>>2]|0,32)|0;n=T;a=Rs(0,o[r>>2]|0,32)|0;n=Es(a|0,T|0,i|0,n|0)|0;i=T;a=Rs(0,o[t>>2]|0,32)|0;s=T;c=Rs(0,o[c>>2]|0,32)|0;s=Es(c|0,T|0,a|0,s|0)|0;i=ks(s|0,T|0,n|0,i|0)|0;n=e+136|0;o[n>>2]=i;o[n+4>>2]=T;n=Rs(0,o[t>>2]|0,31)|0;t=T;r=Rs(0,o[r>>2]|0,32)|0;t=Es(r|0,T|0,n|0,t|0)|0;n=e+144|0;o[n>>2]=t;o[n+4>>2]=T;return}function No(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0;t=e+80|0;s=t;o[s>>2]=0;o[s+4>>2]=0;s=e;f=o[s>>2]|0;s=o[s+4>>2]|0;n=ks(f|0,s|0,s>>31>>>6|0,0)|0;a=T;i=Rs(n|0,a|0,26)|0;l=T;a=Ss(f|0,s|0,n&-67108864|0,a|0)|0;n=e;o[n>>2]=a;o[n+4>>2]=T;n=e+8|0;a=n;a=ks(i|0,l|0,o[a>>2]|0,o[a+4>>2]|0)|0;l=T;i=ks(a|0,l|0,l>>31>>>7|0,0)|0;s=T;f=Rs(i|0,s|0,25)|0;r=T;s=Ss(a|0,l|0,i&-33554432|0,s|0)|0;i=n;o[i>>2]=s;o[i+4>>2]=T;i=e+16|0;s=i;s=ks(f|0,r|0,o[s>>2]|0,o[s+4>>2]|0)|0;r=T;f=ks(s|0,r|0,r>>31>>>6|0,0)|0;l=T;a=Rs(f|0,l|0,26)|0;c=T;l=Ss(s|0,r|0,f&-67108864|0,l|0)|0;o[i>>2]=l;o[i+4>>2]=T;i=e+24|0;l=i;l=ks(a|0,c|0,o[l>>2]|0,o[l+4>>2]|0)|0;c=T;a=ks(l|0,c|0,c>>31>>>7|0,0)|0;f=T;r=Rs(a|0,f|0,25)|0;s=T;f=Ss(l|0,c|0,a&-33554432|0,f|0)|0;o[i>>2]=f;o[i+4>>2]=T;i=e+32|0;f=i;f=ks(r|0,s|0,o[f>>2]|0,o[f+4>>2]|0)|0;s=T;r=ks(f|0,s|0,s>>31>>>6|0,0)|0;a=T;c=Rs(r|0,a|0,26)|0;l=T;a=Ss(f|0,s|0,r&-67108864|0,a|0)|0;o[i>>2]=a;o[i+4>>2]=T;i=e+40|0;a=i;a=ks(c|0,l|0,o[a>>2]|0,o[a+4>>2]|0)|0;l=T;c=ks(a|0,l|0,l>>31>>>7|0,0)|0;r=T;s=Rs(c|0,r|0,25)|0;f=T;r=Ss(a|0,l|0,c&-33554432|0,r|0)|0;o[i>>2]=r;o[i+4>>2]=T;i=e+48|0;r=i;r=ks(s|0,f|0,o[r>>2]|0,o[r+4>>2]|0)|0;f=T;s=ks(r|0,f|0,f>>31>>>6|0,0)|0;c=T;l=Rs(s|0,c|0,26)|0;a=T;c=Ss(r|0,f|0,s&-67108864|0,c|0)|0;o[i>>2]=c;o[i+4>>2]=T;i=e+56|0;c=i;c=ks(l|0,a|0,o[c>>2]|0,o[c+4>>2]|0)|0;a=T;l=ks(c|0,a|0,a>>31>>>7|0,0)|0;s=T;f=Rs(l|0,s|0,25)|0;r=T;s=Ss(c|0,a|0,l&-33554432|0,s|0)|0;o[i>>2]=s;o[i+4>>2]=T;i=e+64|0;s=i;s=ks(f|0,r|0,o[s>>2]|0,o[s+4>>2]|0)|0;r=T;f=ks(s|0,r|0,r>>31>>>6|0,0)|0;l=T;a=Rs(f|0,l|0,26)|0;c=T;l=Ss(s|0,r|0,f&-67108864|0,l|0)|0;o[i>>2]=l;o[i+4>>2]=T;i=e+72|0;l=i;l=ks(a|0,c|0,o[l>>2]|0,o[l+4>>2]|0)|0;c=T;a=ks(l|0,c|0,c>>31>>>7|0,0)|0;f=T;r=Rs(a|0,f|0,25)|0;s=T;f=Ss(l|0,c|0,a&-33554432|0,f|0)|0;o[i>>2]=f;o[i+4>>2]=T;i=t;i=ks(r|0,s|0,o[i>>2]|0,o[i+4>>2]|0)|0;s=T;r=e;f=o[r>>2]|0;r=o[r+4>>2]|0;a=Es(i|0,s|0,18,0)|0;c=T;s=ks(f|0,r|0,i|0,s|0)|0;c=ks(s|0,T|0,a|0,c|0)|0;a=T;o[t>>2]=0;o[t+4>>2]=0;t=ks(c|0,a|0,a>>31>>>6|0,0)|0;s=T;i=Rs(t|0,s|0,26)|0;r=T;s=Ss(c|0,a|0,t&-67108864|0,s|0)|0;t=e;o[t>>2]=s;o[t+4>>2]=T;t=n;t=ks(i|0,r|0,o[t>>2]|0,o[t+4>>2]|0)|0;e=n;o[e>>2]=t;o[e+4>>2]=T;return}function Bo(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,N=0,B=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0;r=h;h=h+160|0;n=r;q=o[t>>2]|0;y=Rs(0,q|0,32)|0;c=T;a=Es(y|0,c|0,y|0,c|0)|0;s=T;N=n;o[N>>2]=a;o[N+4>>2]=s;q=Rs(0,q|0,31)|0;N=T;H=o[t+8>>2]|0;E=Rs(0,H|0,32)|0;d=T;m=Es(E|0,d|0,q|0,N|0)|0;p=T;l=n+8|0;w=l;o[w>>2]=m;o[w+4>>2]=p;w=Es(E|0,d|0,E|0,d|0)|0;A=T;g=Rs(0,o[t+16>>2]|0,32)|0;u=T;b=Es(g|0,u|0,y|0,c|0)|0;A=ks(b|0,T|0,w|0,A|0)|0;A=Os(A|0,T|0,1)|0;w=T;b=n+16|0;I=b;o[I>>2]=A;o[I+4>>2]=w;I=Es(g|0,u|0,E|0,d|0)|0;x=T;ce=Rs(0,o[t+24>>2]|0,32)|0;ae=T;_=Es(ce|0,ae|0,y|0,c|0)|0;x=ks(_|0,T|0,I|0,x|0)|0;x=Os(x|0,T|0,1)|0;I=T;_=n+24|0;D=_;o[D>>2]=x;o[D+4>>2]=I;D=Es(g|0,u|0,g|0,u|0)|0;O=T;R=Rs(0,H|0,30)|0;R=Es(ce|0,ae|0,R|0,T|0)|0;O=ks(R|0,T|0,D|0,O|0)|0;D=T;R=Rs(0,o[t+32>>2]|0,32)|0;v=T;N=Es(R|0,v|0,q|0,N|0)|0;N=ks(O|0,D|0,N|0,T|0)|0;D=T;O=n+32|0;q=O;o[q>>2]=N;o[q+4>>2]=D;q=Es(ce|0,ae|0,g|0,u|0)|0;U=T;P=Es(R|0,v|0,E|0,d|0)|0;U=ks(P|0,T|0,q|0,U|0)|0;q=T;P=o[t+40>>2]|0;j=Rs(0,P|0,32)|0;M=T;z=Es(j|0,M|0,y|0,c|0)|0;z=ks(U|0,q|0,z|0,T|0)|0;z=Os(z|0,T|0,1)|0;q=T;U=n+40|0;$=U;o[$>>2]=z;o[$+4>>2]=q;$=Es(ce|0,ae|0,ce|0,ae|0)|0;te=T;K=Es(R|0,v|0,g|0,u|0)|0;te=ks(K|0,T|0,$|0,te|0)|0;$=T;K=Rs(0,o[t+48>>2]|0,32)|0;G=T;W=Es(K|0,G|0,y|0,c|0)|0;Y=T;H=Rs(0,H|0,31)|0;H=Es(j|0,M|0,H|0,T|0)|0;H=ks(te|0,$|0,H|0,T|0)|0;Y=ks(H|0,T|0,W|0,Y|0)|0;Y=Os(Y|0,T|0,1)|0;W=T;H=n+48|0;$=H;o[$>>2]=Y;o[$+4>>2]=W;$=Es(R|0,v|0,ce|0,ae|0)|0;te=T;Q=Es(j|0,M|0,g|0,u|0)|0;te=ks(Q|0,T|0,$|0,te|0)|0;$=T;Q=Es(K|0,G|0,E|0,d|0)|0;Q=ks(te|0,$|0,Q|0,T|0)|0;$=T;te=o[t+56>>2]|0;L=Rs(0,te|0,32)|0;F=T;ee=Es(L|0,F|0,y|0,c|0)|0;ee=ks(Q|0,$|0,ee|0,T|0)|0;ee=Os(ee|0,T|0,1)|0;$=T;Q=n+56|0;V=Q;o[V>>2]=ee;o[V+4>>2]=$;V=Es(R|0,v|0,R|0,v|0)|0;Z=T;i=Es(K|0,G|0,g|0,u|0)|0;oe=T;ne=o[t+64>>2]|0;J=Rs(0,ne|0,32)|0;X=T;ie=Es(J|0,X|0,y|0,c|0)|0;oe=ks(ie|0,T|0,i|0,oe|0)|0;i=T;ie=Es(L|0,F|0,E|0,d|0)|0;re=T;f=Es(j|0,M|0,ce|0,ae|0)|0;f=ks(ie|0,re|0,f|0,T|0)|0;f=Os(f|0,T|0,1)|0;f=ks(oe|0,i|0,f|0,T|0)|0;f=Os(f|0,T|0,1)|0;Z=ks(f|0,T|0,V|0,Z|0)|0;V=T;f=Es(j|0,M|0,R|0,v|0)|0;i=T;oe=Es(K|0,G|0,ce|0,ae|0)|0;i=ks(oe|0,T|0,f|0,i|0)|0;f=T;oe=Es(L|0,F|0,g|0,u|0)|0;oe=ks(i|0,f|0,oe|0,T|0)|0;f=T;i=Es(J|0,X|0,E|0,d|0)|0;i=ks(oe|0,f|0,i|0,T|0)|0;f=T;oe=o[t+72>>2]|0;re=Rs(0,oe|0,32)|0;ie=T;c=Es(re|0,ie|0,y|0,c|0)|0;c=ks(i|0,f|0,c|0,T|0)|0;c=Os(c|0,T|0,1)|0;t=n+72|0;o[t>>2]=c;o[t+4>>2]=T;t=Es(j|0,M|0,j|0,M|0)|0;c=T;f=Es(K|0,G|0,R|0,v|0)|0;c=ks(f|0,T|0,t|0,c|0)|0;t=T;f=Es(J|0,X|0,g|0,u|0)|0;f=ks(c|0,t|0,f|0,T|0)|0;t=T;c=Es(L|0,F|0,ce|0,ae|0)|0;i=T;d=Es(re|0,ie|0,E|0,d|0)|0;i=ks(d|0,T|0,c|0,i|0)|0;i=Os(i|0,T|0,1)|0;i=ks(f|0,t|0,i|0,T|0)|0;t=T;f=Os(i|0,t|0,1)|0;c=T;d=n+80|0;o[d>>2]=f;o[d+4>>2]=c;d=Es(K|0,G|0,j|0,M|0)|0;E=T;y=Es(L|0,F|0,R|0,v|0)|0;E=ks(y|0,T|0,d|0,E|0)|0;d=T;y=Es(J|0,X|0,ce|0,ae|0)|0;y=ks(E|0,d|0,y|0,T|0)|0;d=T;u=Es(re|0,ie|0,g|0,u|0)|0;u=ks(y|0,d|0,u|0,T|0)|0;d=T;y=Os(u|0,d|0,1)|0;g=T;E=n+88|0;o[E>>2]=y;o[E+4>>2]=g;E=Es(K|0,G|0,K|0,G|0)|0;k=T;C=Es(J|0,X|0,R|0,v|0)|0;S=T;se=Es(L|0,F|0,j|0,M|0)|0;B=T;ae=Es(re|0,ie|0,ce|0,ae|0)|0;B=ks(ae|0,T|0,se|0,B|0)|0;B=Os(B|0,T|0,1)|0;S=ks(B|0,T|0,C|0,S|0)|0;S=Os(S|0,T|0,1)|0;k=ks(S|0,T|0,E|0,k|0)|0;E=T;S=n+96|0;o[S>>2]=k;o[S+4>>2]=E;S=Es(L|0,F|0,K|0,G|0)|0;C=T;M=Es(J|0,X|0,j|0,M|0)|0;C=ks(M|0,T|0,S|0,C|0)|0;S=T;v=Es(re|0,ie|0,R|0,v|0)|0;v=ks(C|0,S|0,v|0,T|0)|0;S=T;C=Os(v|0,S|0,1)|0;R=T;M=n+104|0;o[M>>2]=C;o[M+4>>2]=R;M=Es(L|0,F|0,L|0,F|0)|0;j=T;B=Es(J|0,X|0,K|0,G|0)|0;j=ks(B|0,T|0,M|0,j|0)|0;M=T;P=Rs(0,P|0,31)|0;P=Es(re|0,ie|0,P|0,T|0)|0;P=ks(j|0,M|0,P|0,T|0)|0;M=T;j=Os(P|0,M|0,1)|0;B=T;se=n+112|0;o[se>>2]=j;o[se+4>>2]=B;F=Es(J|0,X|0,L|0,F|0)|0;L=T;G=Es(re|0,ie|0,K|0,G|0)|0;L=ks(G|0,T|0,F|0,L|0)|0;F=T;G=Os(L|0,F|0,1)|0;K=T;se=n+120|0;o[se>>2]=G;o[se+4>>2]=K;X=Es(J|0,X|0,J|0,X|0)|0;J=T;te=Rs(0,te|0,30)|0;te=Es(re|0,ie|0,te|0,T|0)|0;J=ks(te|0,T|0,X|0,J|0)|0;X=T;te=n+128|0;o[te>>2]=J;o[te+4>>2]=X;ne=Rs(0,ne|0,31)|0;ne=Es(re|0,ie|0,ne|0,T|0)|0;te=T;se=n+136|0;o[se>>2]=ne;o[se+4>>2]=te;oe=Rs(0,oe|0,31)|0;ie=Es(oe|0,T|0,re|0,ie|0)|0;re=T;oe=n+144|0;o[oe>>2]=ie;o[oe+4>>2]=re;re=Es(ie|0,re|0,19,0)|0;V=ks(re|0,T|0,Z|0,V|0)|0;Z=n+64|0;o[Z>>2]=V;o[Z+4>>2]=T;Z=Es(ne|0,te|0,18,0)|0;V=T;$=ks(ne|0,te|0,ee|0,$|0)|0;V=ks($|0,T|0,Z|0,V|0)|0;o[Q>>2]=V;o[Q+4>>2]=T;Q=Es(J|0,X|0,18,0)|0;V=T;W=ks(J|0,X|0,Y|0,W|0)|0;V=ks(W|0,T|0,Q|0,V|0)|0;o[H>>2]=V;o[H+4>>2]=T;F=Es(L|0,F|0,36,0)|0;L=T;q=ks(G|0,K|0,z|0,q|0)|0;L=ks(q|0,T|0,F|0,L|0)|0;o[U>>2]=L;o[U+4>>2]=T;M=Es(P|0,M|0,36,0)|0;P=T;D=ks(j|0,B|0,N|0,D|0)|0;P=ks(D|0,T|0,M|0,P|0)|0;o[O>>2]=P;o[O+4>>2]=T;S=Es(v|0,S|0,36,0)|0;v=T;I=ks(C|0,R|0,x|0,I|0)|0;v=ks(I|0,T|0,S|0,v|0)|0;o[_>>2]=v;o[_+4>>2]=T;_=Es(k|0,E|0,18,0)|0;v=T;w=ks(k|0,E|0,A|0,w|0)|0;v=ks(w|0,T|0,_|0,v|0)|0;o[b>>2]=v;o[b+4>>2]=T;d=Es(u|0,d|0,36,0)|0;u=T;p=ks(y|0,g|0,m|0,p|0)|0;u=ks(p|0,T|0,d|0,u|0)|0;o[l>>2]=u;o[l+4>>2]=T;t=Es(i|0,t|0,36,0)|0;i=T;s=ks(f|0,c|0,a|0,s|0)|0;i=ks(s|0,T|0,t|0,i|0)|0;t=n;o[t>>2]=i;o[t+4>>2]=T;No(n);t=n;n=e+80|0;do{o[e>>2]=o[t>>2];e=e+4|0;t=t+4|0}while((e|0)<(n|0));h=r;return}function jo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0;E=h;h=h+16|0;p=E;do{if(e>>>0<245){l=e>>>0<11?16:e+11&-8;e=l>>>3;d=o[9632]|0;n=d>>>e;if(n&3|0){t=(n&1^1)+e|0;e=38568+(t<<1<<2)|0;n=e+8|0;r=o[n>>2]|0;i=r+8|0;s=o[i>>2]|0;if((s|0)==(e|0))o[9632]=d&~(1<>2]=e;o[n>>2]=s}A=t<<3;o[r+4>>2]=A|3;A=r+A+4|0;o[A>>2]=o[A>>2]|1;A=i;h=E;return A|0}u=o[9634]|0;if(l>>>0>u>>>0){if(n|0){t=2<>>12&16;t=t>>>c;n=t>>>5&8;t=t>>>n;s=t>>>2&4;t=t>>>s;e=t>>>1&2;t=t>>>e;r=t>>>1&1;r=(n|c|s|e|r)+(t>>>r)|0;t=38568+(r<<1<<2)|0;e=t+8|0;s=o[e>>2]|0;c=s+8|0;n=o[c>>2]|0;if((n|0)==(t|0)){e=d&~(1<>2]=t;o[e>>2]=n;e=d}A=r<<3;a=A-l|0;o[s+4>>2]=l|3;i=s+l|0;o[i+4>>2]=a|1;o[s+A>>2]=a;if(u|0){r=o[9637]|0;t=u>>>3;n=38568+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=r;o[t+12>>2]=r;o[r+8>>2]=t;o[r+12>>2]=n}o[9634]=a;o[9637]=i;A=c;h=E;return A|0}s=o[9633]|0;if(s){n=(s&0-s)+-1|0;i=n>>>12&16;n=n>>>i;r=n>>>5&8;n=n>>>r;a=n>>>2&4;n=n>>>a;c=n>>>1&2;n=n>>>c;f=n>>>1&1;f=o[38832+((r|i|a|c|f)+(n>>>f)<<2)>>2]|0;n=f;c=f;f=(o[f+4>>2]&-8)-l|0;while(1){e=o[n+16>>2]|0;if(!e){e=o[n+20>>2]|0;if(!e)break}a=(o[e+4>>2]&-8)-l|0;i=a>>>0>>0;n=e;c=i?e:c;f=i?a:f}a=c+l|0;if(a>>>0>c>>>0){i=o[c+24>>2]|0;t=o[c+12>>2]|0;do{if((t|0)==(c|0)){e=c+20|0;t=o[e>>2]|0;if(!t){e=c+16|0;t=o[e>>2]|0;if(!t){n=0;break}}while(1){r=t+20|0;n=o[r>>2]|0;if(!n){r=t+16|0;n=o[r>>2]|0;if(!n)break;else{t=n;e=r}}else{t=n;e=r}}o[e>>2]=0;n=t}else{n=o[c+8>>2]|0;o[n+12>>2]=t;o[t+8>>2]=n;n=t}}while(0);do{if(i|0){t=o[c+28>>2]|0;e=38832+(t<<2)|0;if((c|0)==(o[e>>2]|0)){o[e>>2]=n;if(!n){o[9633]=s&~(1<>2]|0)==(c|0)?A:i+20|0)>>2]=n;if(!n)break}o[n+24>>2]=i;t=o[c+16>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}t=o[c+20>>2]|0;if(t|0){o[n+20>>2]=t;o[t+24>>2]=n}}}while(0);if(f>>>0<16){A=f+l|0;o[c+4>>2]=A|3;A=c+A+4|0;o[A>>2]=o[A>>2]|1}else{o[c+4>>2]=l|3;o[a+4>>2]=f|1;o[a+f>>2]=f;if(u|0){r=o[9637]|0;t=u>>>3;n=38568+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=r;o[t+12>>2]=r;o[r+8>>2]=t;o[r+12>>2]=n}o[9634]=f;o[9637]=a}A=c+8|0;h=E;return A|0}else d=l}else d=l}else d=l}else if(e>>>0<=4294967231){e=e+11|0;l=e&-8;r=o[9633]|0;if(r){i=0-l|0;e=e>>>8;if(e)if(l>>>0>16777215)f=31;else{d=(e+1048320|0)>>>16&8;y=e<>>16&4;y=y<>>16&2;f=14-(c|d|f)+(y<>>15)|0;f=l>>>(f+7|0)&1|f<<1}else f=0;n=o[38832+(f<<2)>>2]|0;e:do{if(!n){n=0;e=0;y=61}else{e=0;c=l<<((f|0)==31?0:25-(f>>>1)|0);s=0;while(1){a=(o[n+4>>2]&-8)-l|0;if(a>>>0>>0)if(!a){e=n;i=0;y=65;break e}else{e=n;i=a}y=o[n+20>>2]|0;n=o[n+16+(c>>>31<<2)>>2]|0;s=(y|0)==0|(y|0)==(n|0)?s:y;if(!n){n=s;y=61;break}else c=c<<1}}}while(0);if((y|0)==61){if((n|0)==0&(e|0)==0){e=2<>>12&16;d=d>>>a;s=d>>>5&8;d=d>>>s;c=d>>>2&4;d=d>>>c;f=d>>>1&2;d=d>>>f;n=d>>>1&1;e=0;n=o[38832+((s|a|c|f|n)+(d>>>n)<<2)>>2]|0}if(!n){c=e;a=i}else y=65}if((y|0)==65){s=n;while(1){d=(o[s+4>>2]&-8)-l|0;n=d>>>0>>0;i=n?d:i;e=n?s:e;n=o[s+16>>2]|0;if(!n)n=o[s+20>>2]|0;if(!n){c=e;a=i;break}else s=n}}if(((c|0)!=0?a>>>0<((o[9634]|0)-l|0)>>>0:0)?(u=c+l|0,u>>>0>c>>>0):0){s=o[c+24>>2]|0;t=o[c+12>>2]|0;do{if((t|0)==(c|0)){e=c+20|0;t=o[e>>2]|0;if(!t){e=c+16|0;t=o[e>>2]|0;if(!t){t=0;break}}while(1){i=t+20|0;n=o[i>>2]|0;if(!n){i=t+16|0;n=o[i>>2]|0;if(!n)break;else{t=n;e=i}}else{t=n;e=i}}o[e>>2]=0}else{A=o[c+8>>2]|0;o[A+12>>2]=t;o[t+8>>2]=A}}while(0);do{if(s){e=o[c+28>>2]|0;n=38832+(e<<2)|0;if((c|0)==(o[n>>2]|0)){o[n>>2]=t;if(!t){r=r&~(1<>2]|0)==(c|0)?A:s+20|0)>>2]=t;if(!t)break}o[t+24>>2]=s;e=o[c+16>>2]|0;if(e|0){o[t+16>>2]=e;o[e+24>>2]=t}e=o[c+20>>2]|0;if(e){o[t+20>>2]=e;o[e+24>>2]=t}}}while(0);e:do{if(a>>>0<16){A=a+l|0;o[c+4>>2]=A|3;A=c+A+4|0;o[A>>2]=o[A>>2]|1}else{o[c+4>>2]=l|3;o[u+4>>2]=a|1;o[u+a>>2]=a;t=a>>>3;if(a>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=u;o[t+12>>2]=u;o[u+8>>2]=t;o[u+12>>2]=n;break}t=a>>>8;if(t)if(a>>>0>16777215)n=31;else{w=(t+1048320|0)>>>16&8;A=t<>>16&4;A=A<<_;n=(A+245760|0)>>>16&2;n=14-(_|w|n)+(A<>>15)|0;n=a>>>(n+7|0)&1|n<<1}else n=0;t=38832+(n<<2)|0;o[u+28>>2]=n;e=u+16|0;o[e+4>>2]=0;o[e>>2]=0;e=1<>2]=u;o[u+24>>2]=t;o[u+12>>2]=u;o[u+8>>2]=u;break}t=o[t>>2]|0;t:do{if((o[t+4>>2]&-8|0)!=(a|0)){r=a<<((n|0)==31?0:25-(n>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(a|0)){t=e;break t}else{r=r<<1;t=e}}o[n>>2]=u;o[u+24>>2]=t;o[u+12>>2]=u;o[u+8>>2]=u;break e}}while(0);w=t+8|0;A=o[w>>2]|0;o[A+12>>2]=u;o[w>>2]=u;o[u+8>>2]=A;o[u+12>>2]=t;o[u+24>>2]=0}}while(0);A=c+8|0;h=E;return A|0}else d=l}else d=l}else d=-1}while(0);n=o[9634]|0;if(n>>>0>=d>>>0){t=n-d|0;e=o[9637]|0;if(t>>>0>15){A=e+d|0;o[9637]=A;o[9634]=t;o[A+4>>2]=t|1;o[e+n>>2]=t;o[e+4>>2]=d|3}else{o[9634]=0;o[9637]=0;o[e+4>>2]=n|3;A=e+n+4|0;o[A>>2]=o[A>>2]|1}A=e+8|0;h=E;return A|0}a=o[9635]|0;if(a>>>0>d>>>0){_=a-d|0;o[9635]=_;A=o[9638]|0;w=A+d|0;o[9638]=w;o[w+4>>2]=_|1;o[A+4>>2]=d|3;A=A+8|0;h=E;return A|0}if(!(o[9750]|0)){o[9752]=4096;o[9751]=4096;o[9753]=-1;o[9754]=-1;o[9755]=0;o[9743]=0;o[9750]=p&-16^1431655768;e=4096}else e=o[9752]|0;c=d+48|0;f=d+47|0;s=e+f|0;i=0-e|0;l=s&i;if(l>>>0<=d>>>0){A=0;h=E;return A|0}e=o[9742]|0;if(e|0?(u=o[9740]|0,p=u+l|0,p>>>0<=u>>>0|p>>>0>e>>>0):0){A=0;h=E;return A|0}e:do{if(!(o[9743]&4)){n=o[9638]|0;t:do{if(n){r=38976;while(1){p=o[r>>2]|0;if(p>>>0<=n>>>0?(p+(o[r+4>>2]|0)|0)>>>0>n>>>0:0)break;e=o[r+8>>2]|0;if(!e){y=128;break t}else r=e}t=s-a&i;if(t>>>0<2147483647){e=Ns(t|0)|0;if((e|0)==((o[r>>2]|0)+(o[r+4>>2]|0)|0)){if((e|0)!=(-1|0)){a=t;s=e;y=145;break e}}else{r=e;y=136}}else t=0}else y=128}while(0);do{if((y|0)==128){n=Ns(0)|0;if((n|0)!=(-1|0)?(t=n,m=o[9751]|0,g=m+-1|0,t=((g&t|0)==0?0:(g+t&0-m)-t|0)+l|0,m=o[9740]|0,g=t+m|0,t>>>0>d>>>0&t>>>0<2147483647):0){p=o[9742]|0;if(p|0?g>>>0<=m>>>0|g>>>0>p>>>0:0){t=0;break}e=Ns(t|0)|0;if((e|0)==(n|0)){a=t;s=n;y=145;break e}else{r=e;y=136}}else t=0}}while(0);do{if((y|0)==136){n=0-t|0;if(!(c>>>0>t>>>0&(t>>>0<2147483647&(r|0)!=(-1|0))))if((r|0)==(-1|0)){t=0;break}else{a=t;s=r;y=145;break e}e=o[9752]|0;e=f-t+e&0-e;if(e>>>0>=2147483647){a=t;s=r;y=145;break e}if((Ns(e|0)|0)==(-1|0)){Ns(n|0)|0;t=0;break}else{a=e+t|0;s=r;y=145;break e}}}while(0);o[9743]=o[9743]|4;y=143}else{t=0;y=143}}while(0);if(((y|0)==143?l>>>0<2147483647:0)?(_=Ns(l|0)|0,g=Ns(0)|0,b=g-_|0,v=b>>>0>(d+40|0)>>>0,!((_|0)==(-1|0)|v^1|_>>>0>>0&((_|0)!=(-1|0)&(g|0)!=(-1|0))^1)):0){a=v?b:t;s=_;y=145}if((y|0)==145){t=(o[9740]|0)+a|0;o[9740]=t;if(t>>>0>(o[9741]|0)>>>0)o[9741]=t;f=o[9638]|0;e:do{if(f){t=38976;while(1){e=o[t>>2]|0;n=o[t+4>>2]|0;if((s|0)==(e+n|0)){y=154;break}r=o[t+8>>2]|0;if(!r)break;else t=r}if(((y|0)==154?(w=t+4|0,(o[t+12>>2]&8|0)==0):0)?s>>>0>f>>>0&e>>>0<=f>>>0:0){o[w>>2]=n+a;A=(o[9635]|0)+a|0;_=f+8|0;_=(_&7|0)==0?0:0-_&7;w=f+_|0;_=A-_|0;o[9638]=w;o[9635]=_;o[w+4>>2]=_|1;o[f+A+4>>2]=40;o[9639]=o[9754];break}if(s>>>0<(o[9636]|0)>>>0)o[9636]=s;n=s+a|0;t=38976;while(1){if((o[t>>2]|0)==(n|0)){y=162;break}e=o[t+8>>2]|0;if(!e)break;else t=e}if((y|0)==162?(o[t+12>>2]&8|0)==0:0){o[t>>2]=s;u=t+4|0;o[u>>2]=(o[u>>2]|0)+a;u=s+8|0;u=s+((u&7|0)==0?0:0-u&7)|0;t=n+8|0;t=n+((t&7|0)==0?0:0-t&7)|0;l=u+d|0;c=t-u-d|0;o[u+4>>2]=d|3;t:do{if((f|0)==(t|0)){A=(o[9635]|0)+c|0;o[9635]=A;o[9638]=l;o[l+4>>2]=A|1}else{if((o[9637]|0)==(t|0)){A=(o[9634]|0)+c|0;o[9634]=A;o[9637]=l;o[l+4>>2]=A|1;o[l+A>>2]=A;break}e=o[t+4>>2]|0;if((e&3|0)==1){a=e&-8;r=e>>>3;n:do{if(e>>>0<256){e=o[t+8>>2]|0;n=o[t+12>>2]|0;if((n|0)==(e|0)){o[9632]=o[9632]&~(1<>2]=n;o[n+8>>2]=e;break}}else{s=o[t+24>>2]|0;e=o[t+12>>2]|0;do{if((e|0)==(t|0)){n=t+16|0;r=n+4|0;e=o[r>>2]|0;if(!e){e=o[n>>2]|0;if(!e){e=0;break}}else n=r;while(1){i=e+20|0;r=o[i>>2]|0;if(!r){i=e+16|0;r=o[i>>2]|0;if(!r)break;else{e=r;n=i}}else{e=r;n=i}}o[n>>2]=0}else{A=o[t+8>>2]|0;o[A+12>>2]=e;o[e+8>>2]=A}}while(0);if(!s)break;n=o[t+28>>2]|0;r=38832+(n<<2)|0;do{if((o[r>>2]|0)!=(t|0)){A=s+16|0;o[((o[A>>2]|0)==(t|0)?A:s+20|0)>>2]=e;if(!e)break n}else{o[r>>2]=e;if(e|0)break;o[9633]=o[9633]&~(1<>2]=s;n=t+16|0;r=o[n>>2]|0;if(r|0){o[e+16>>2]=r;o[r+24>>2]=e}n=o[n+4>>2]|0;if(!n)break;o[e+20>>2]=n;o[n+24>>2]=e}}while(0);t=t+a|0;i=a+c|0}else i=c;t=t+4|0;o[t>>2]=o[t>>2]&-2;o[l+4>>2]=i|1;o[l+i>>2]=i;t=i>>>3;if(i>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=l;o[t+12>>2]=l;o[l+8>>2]=t;o[l+12>>2]=n;break}t=i>>>8;do{if(!t)r=0;else{if(i>>>0>16777215){r=31;break}w=(t+1048320|0)>>>16&8;A=t<>>16&4;A=A<<_;r=(A+245760|0)>>>16&2;r=14-(_|w|r)+(A<>>15)|0;r=i>>>(r+7|0)&1|r<<1}}while(0);t=38832+(r<<2)|0;o[l+28>>2]=r;e=l+16|0;o[e+4>>2]=0;o[e>>2]=0;e=o[9633]|0;n=1<>2]=l;o[l+24>>2]=t;o[l+12>>2]=l;o[l+8>>2]=l;break}t=o[t>>2]|0;n:do{if((o[t+4>>2]&-8|0)!=(i|0)){r=i<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(i|0)){t=e;break n}else{r=r<<1;t=e}}o[n>>2]=l;o[l+24>>2]=t;o[l+12>>2]=l;o[l+8>>2]=l;break t}}while(0);w=t+8|0;A=o[w>>2]|0;o[A+12>>2]=l;o[w>>2]=l;o[l+8>>2]=A;o[l+12>>2]=t;o[l+24>>2]=0}}while(0);A=u+8|0;h=E;return A|0}t=38976;while(1){e=o[t>>2]|0;if(e>>>0<=f>>>0?(A=e+(o[t+4>>2]|0)|0,A>>>0>f>>>0):0)break;t=o[t+8>>2]|0}i=A+-47|0;e=i+8|0;e=i+((e&7|0)==0?0:0-e&7)|0;i=f+16|0;e=e>>>0>>0?f:e;t=e+8|0;n=a+-40|0;_=s+8|0;_=(_&7|0)==0?0:0-_&7;w=s+_|0;_=n-_|0;o[9638]=w;o[9635]=_;o[w+4>>2]=_|1;o[s+n+4>>2]=40;o[9639]=o[9754];n=e+4|0;o[n>>2]=27;o[t>>2]=o[9744];o[t+4>>2]=o[9745];o[t+8>>2]=o[9746];o[t+12>>2]=o[9747];o[9744]=s;o[9745]=a;o[9747]=0;o[9746]=t;t=e+24|0;do{w=t;t=t+4|0;o[t>>2]=7}while((w+8|0)>>>0>>0);if((e|0)!=(f|0)){s=e-f|0;o[n>>2]=o[n>>2]&-2;o[f+4>>2]=s|1;o[e>>2]=s;t=s>>>3;if(s>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=f;o[t+12>>2]=f;o[f+8>>2]=t;o[f+12>>2]=n;break}t=s>>>8;if(t)if(s>>>0>16777215)r=31;else{w=(t+1048320|0)>>>16&8;A=t<>>16&4;A=A<<_;r=(A+245760|0)>>>16&2;r=14-(_|w|r)+(A<>>15)|0;r=s>>>(r+7|0)&1|r<<1}else r=0;n=38832+(r<<2)|0;o[f+28>>2]=r;o[f+20>>2]=0;o[i>>2]=0;t=o[9633]|0;e=1<>2]=f;o[f+24>>2]=n;o[f+12>>2]=f;o[f+8>>2]=f;break}t=o[n>>2]|0;t:do{if((o[t+4>>2]&-8|0)!=(s|0)){r=s<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(s|0)){t=e;break t}else{r=r<<1;t=e}}o[n>>2]=f;o[f+24>>2]=t;o[f+12>>2]=f;o[f+8>>2]=f;break e}}while(0);w=t+8|0;A=o[w>>2]|0;o[A+12>>2]=f;o[w>>2]=f;o[f+8>>2]=A;o[f+12>>2]=t;o[f+24>>2]=0}}else{A=o[9636]|0;if((A|0)==0|s>>>0>>0)o[9636]=s;o[9744]=s;o[9745]=a;o[9747]=0;o[9641]=o[9750];o[9640]=-1;o[9645]=38568;o[9644]=38568;o[9647]=38576;o[9646]=38576;o[9649]=38584;o[9648]=38584;o[9651]=38592;o[9650]=38592;o[9653]=38600;o[9652]=38600;o[9655]=38608;o[9654]=38608;o[9657]=38616;o[9656]=38616;o[9659]=38624;o[9658]=38624;o[9661]=38632;o[9660]=38632;o[9663]=38640;o[9662]=38640;o[9665]=38648;o[9664]=38648;o[9667]=38656;o[9666]=38656;o[9669]=38664;o[9668]=38664;o[9671]=38672;o[9670]=38672;o[9673]=38680;o[9672]=38680;o[9675]=38688;o[9674]=38688;o[9677]=38696;o[9676]=38696;o[9679]=38704;o[9678]=38704;o[9681]=38712;o[9680]=38712;o[9683]=38720;o[9682]=38720;o[9685]=38728;o[9684]=38728;o[9687]=38736;o[9686]=38736;o[9689]=38744;o[9688]=38744;o[9691]=38752;o[9690]=38752;o[9693]=38760;o[9692]=38760;o[9695]=38768;o[9694]=38768;o[9697]=38776;o[9696]=38776;o[9699]=38784;o[9698]=38784;o[9701]=38792;o[9700]=38792;o[9703]=38800;o[9702]=38800;o[9705]=38808;o[9704]=38808;o[9707]=38816;o[9706]=38816;A=a+-40|0;_=s+8|0;_=(_&7|0)==0?0:0-_&7;w=s+_|0;_=A-_|0;o[9638]=w;o[9635]=_;o[w+4>>2]=_|1;o[s+A+4>>2]=40;o[9639]=o[9754]}}while(0);t=o[9635]|0;if(t>>>0>d>>>0){_=t-d|0;o[9635]=_;A=o[9638]|0;w=A+d|0;o[9638]=w;o[w+4>>2]=_|1;o[A+4>>2]=d|3;A=A+8|0;h=E;return A|0}}o[(Lo()|0)>>2]=12;A=0;h=E;return A|0}function Uo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,c=0,f=0;if(!e)return;n=e+-8|0;i=o[9636]|0;e=o[e+-4>>2]|0;t=e&-8;f=n+t|0;do{if(!(e&1)){r=o[n>>2]|0;if(!(e&3))return;a=n+(0-r)|0;s=r+t|0;if(a>>>0>>0)return;if((o[9637]|0)==(a|0)){e=f+4|0;t=o[e>>2]|0;if((t&3|0)!=3){c=a;t=s;break}o[9634]=s;o[e>>2]=t&-2;o[a+4>>2]=s|1;o[a+s>>2]=s;return}n=r>>>3;if(r>>>0<256){e=o[a+8>>2]|0;t=o[a+12>>2]|0;if((t|0)==(e|0)){o[9632]=o[9632]&~(1<>2]=t;o[t+8>>2]=e;c=a;t=s;break}}i=o[a+24>>2]|0;e=o[a+12>>2]|0;do{if((e|0)==(a|0)){t=a+16|0;n=t+4|0;e=o[n>>2]|0;if(!e){e=o[t>>2]|0;if(!e){e=0;break}}else t=n;while(1){r=e+20|0;n=o[r>>2]|0;if(!n){r=e+16|0;n=o[r>>2]|0;if(!n)break;else{e=n;t=r}}else{e=n;t=r}}o[t>>2]=0}else{c=o[a+8>>2]|0;o[c+12>>2]=e;o[e+8>>2]=c}}while(0);if(i){t=o[a+28>>2]|0;n=38832+(t<<2)|0;if((o[n>>2]|0)==(a|0)){o[n>>2]=e;if(!e){o[9633]=o[9633]&~(1<>2]|0)==(a|0)?c:i+20|0)>>2]=e;if(!e){c=a;t=s;break}}o[e+24>>2]=i;t=a+16|0;n=o[t>>2]|0;if(n|0){o[e+16>>2]=n;o[n+24>>2]=e}t=o[t+4>>2]|0;if(t){o[e+20>>2]=t;o[t+24>>2]=e;c=a;t=s}else{c=a;t=s}}else{c=a;t=s}}else{c=n;a=n}}while(0);if(a>>>0>=f>>>0)return;e=f+4|0;r=o[e>>2]|0;if(!(r&1))return;if(!(r&2)){if((o[9638]|0)==(f|0)){f=(o[9635]|0)+t|0;o[9635]=f;o[9638]=c;o[c+4>>2]=f|1;if((c|0)!=(o[9637]|0))return;o[9637]=0;o[9634]=0;return}if((o[9637]|0)==(f|0)){f=(o[9634]|0)+t|0;o[9634]=f;o[9637]=a;o[c+4>>2]=f|1;o[a+f>>2]=f;return}i=(r&-8)+t|0;n=r>>>3;do{if(r>>>0<256){t=o[f+8>>2]|0;e=o[f+12>>2]|0;if((e|0)==(t|0)){o[9632]=o[9632]&~(1<>2]=e;o[e+8>>2]=t;break}}else{s=o[f+24>>2]|0;e=o[f+12>>2]|0;do{if((e|0)==(f|0)){t=f+16|0;n=t+4|0;e=o[n>>2]|0;if(!e){e=o[t>>2]|0;if(!e){n=0;break}}else t=n;while(1){r=e+20|0;n=o[r>>2]|0;if(!n){r=e+16|0;n=o[r>>2]|0;if(!n)break;else{e=n;t=r}}else{e=n;t=r}}o[t>>2]=0;n=e}else{n=o[f+8>>2]|0;o[n+12>>2]=e;o[e+8>>2]=n;n=e}}while(0);if(s|0){e=o[f+28>>2]|0;t=38832+(e<<2)|0;if((o[t>>2]|0)==(f|0)){o[t>>2]=n;if(!n){o[9633]=o[9633]&~(1<>2]|0)==(f|0)?r:s+20|0)>>2]=n;if(!n)break}o[n+24>>2]=s;e=f+16|0;t=o[e>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}e=o[e+4>>2]|0;if(e|0){o[n+20>>2]=e;o[e+24>>2]=n}}}}while(0);o[c+4>>2]=i|1;o[a+i>>2]=i;if((c|0)==(o[9637]|0)){o[9634]=i;return}}else{o[e>>2]=r&-2;o[c+4>>2]=t|1;o[a+t>>2]=t;i=t}e=i>>>3;if(i>>>0<256){n=38568+(e<<1<<2)|0;t=o[9632]|0;e=1<>2]|0}o[t>>2]=c;o[e+12>>2]=c;o[c+8>>2]=e;o[c+12>>2]=n;return}e=i>>>8;if(e)if(i>>>0>16777215)r=31;else{a=(e+1048320|0)>>>16&8;f=e<>>16&4;f=f<>>16&2;r=14-(s|a|r)+(f<>>15)|0;r=i>>>(r+7|0)&1|r<<1}else r=0;e=38832+(r<<2)|0;o[c+28>>2]=r;o[c+20>>2]=0;o[c+16>>2]=0;t=o[9633]|0;n=1<>2]=c;o[c+24>>2]=e;o[c+12>>2]=c;o[c+8>>2]=c}else{e=o[e>>2]|0;t:do{if((o[e+4>>2]&-8|0)!=(i|0)){r=i<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=e+16+(r>>>31<<2)|0;t=o[n>>2]|0;if(!t)break;if((o[t+4>>2]&-8|0)==(i|0)){e=t;break t}else{r=r<<1;e=t}}o[n>>2]=c;o[c+24>>2]=e;o[c+12>>2]=c;o[c+8>>2]=c;break e}}while(0);a=e+8|0;f=o[a>>2]|0;o[f+12>>2]=c;o[a>>2]=c;o[c+8>>2]=f;o[c+12>>2]=e;o[c+24>>2]=0}}while(0);f=(o[9640]|0)+-1|0;o[9640]=f;if(f|0)return;e=38984;while(1){e=o[e>>2]|0;if(!e)break;else e=e+8|0}o[9640]=-1;return}function Lo(){return 39088}function Fo(e,t){e=e|0;t=t|0;var n=0,i=0;n=r[e>>0]|0;i=r[t>>0]|0;if(n<<24>>24==0?1:n<<24>>24!=i<<24>>24)e=i;else{do{e=e+1|0;t=t+1|0;n=r[e>>0]|0;i=r[t>>0]|0}while(!(n<<24>>24==0?1:n<<24>>24!=i<<24>>24));e=i}return(n&255)-(e&255)|0}function qo(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;e:do{if(!n)e=0;else{while(1){i=r[e>>0]|0;o=r[t>>0]|0;if(i<<24>>24!=o<<24>>24)break;n=n+-1|0;if(!n){e=0;break e}else{e=e+1|0;t=t+1|0}}e=(i&255)-(o&255)|0}}while(0);return e|0}function zo(e){e=e|0;return(e+-48|0)>>>0<10|0}function Ko(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0;d=h;h=h+128|0;s=d+124|0;u=d;a=u;c=37604;f=a+124|0;do{o[a>>2]=o[c>>2];a=a+4|0;c=c+4|0}while((a|0)<(f|0));if((t+-1|0)>>>0>2147483646)if(!t){e=s;t=1;l=4}else{o[(Lo()|0)>>2]=75;t=-1}else l=4;if((l|0)==4){l=-2-e|0;l=t>>>0>l>>>0?l:t;o[u+48>>2]=l;s=u+20|0;o[s>>2]=e;o[u+44>>2]=e;t=e+l|0;e=u+16|0;o[e>>2]=t;o[u+28>>2]=t;t=Go(u,n,i)|0;if(l){u=o[s>>2]|0;r[u+(((u|0)==(o[e>>2]|0))<<31>>31)>>0]=0}}h=d;return t|0}function Go(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0;b=h;h=h+224|0;d=b+208|0;m=b+160|0;g=b+80|0;y=b;i=m;s=i+40|0;do{o[i>>2]=0;i=i+4|0}while((i|0)<(s|0));o[d>>2]=o[n>>2];if((Ho(0,t,d,g,m)|0)<0)n=-1;else{if((o[e+76>>2]|0)>-1)p=Vo(e)|0;else p=0;n=o[e>>2]|0;u=n&32;if((r[e+74>>0]|0)<1)o[e>>2]=n&-33;i=e+48|0;if(!(o[i>>2]|0)){s=e+44|0;a=o[s>>2]|0;o[s>>2]=y;c=e+28|0;o[c>>2]=y;f=e+20|0;o[f>>2]=y;o[i>>2]=80;l=e+16|0;o[l>>2]=y+80;n=Ho(e,t,d,g,m)|0;if(a){Vs[o[e+36>>2]&1](e,0,0)|0;n=(o[f>>2]|0)==0?-1:n;o[s>>2]=a;o[i>>2]=0;o[l>>2]=0;o[c>>2]=0;o[f>>2]=0}}else n=Ho(e,t,d,g,m)|0;i=o[e>>2]|0;o[e>>2]=i|u;if(p|0)Qo(e);n=(i&32|0)==0?n:-1}h=b;return n|0}function Ho(e,t,n,s,a){e=e|0;t=t|0;n=n|0;s=s|0;a=a|0;var c=0,f=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0;D=h;h=h+64|0;R=D+56|0;C=D+40|0;S=D;P=D+48|0;M=D+60|0;o[R>>2]=t;A=(e|0)!=0;E=S+40|0;k=E;S=S+39|0;I=P+4|0;c=0;t=0;u=0;e:while(1){do{do{if((t|0)>-1)if((c|0)>(2147483647-t|0)){o[(Lo()|0)>>2]=75;t=-1;break}else{t=c+t|0;break}}while(0);b=o[R>>2]|0;c=r[b>>0]|0;if(!(c<<24>>24)){w=94;break e}f=b;t:while(1){switch(c<<24>>24){case 37:{w=10;break t}case 0:{c=f;break t}default:{}}_=f+1|0;o[R>>2]=_;c=r[_>>0]|0;f=_}t:do{if((w|0)==10){w=0;c=f;do{if((r[f+1>>0]|0)!=37)break t;c=c+1|0;f=f+2|0;o[R>>2]=f}while((r[f>>0]|0)==37)}}while(0);c=c-b|0;if(A)Wo(e,b,c)}while((c|0)!=0);_=(zo(r[(o[R>>2]|0)+1>>0]|0)|0)==0;f=o[R>>2]|0;if(!_?(r[f+2>>0]|0)==36:0){g=(r[f+1>>0]|0)+-48|0;p=1;c=3}else{g=-1;p=u;c=1}c=f+c|0;o[R>>2]=c;f=r[c>>0]|0;u=(f<<24>>24)+-32|0;if(u>>>0>31|(1<>2]=c;f=r[c>>0]|0;u=(f<<24>>24)+-32|0}while(!(u>>>0>31|(1<>24==42){if((zo(r[c+1>>0]|0)|0)!=0?(O=o[R>>2]|0,(r[O+2>>0]|0)==36):0){c=O+1|0;o[a+((r[c>>0]|0)+-48<<2)>>2]=10;c=o[s+((r[c>>0]|0)+-48<<3)>>2]|0;u=1;f=O+3|0}else{if(p|0){t=-1;break}if(A){_=(o[n>>2]|0)+(4-1)&~(4-1);c=o[_>>2]|0;o[n>>2]=_+4}else c=0;u=0;f=(o[R>>2]|0)+1|0}o[R>>2]=f;_=(c|0)<0;v=_?0-c|0:c;d=_?d|8192:d;_=u}else{c=Yo(R)|0;if((c|0)<0){t=-1;break}v=c;_=p;f=o[R>>2]|0}do{if((r[f>>0]|0)==46){c=f+1|0;if((r[c>>0]|0)!=42){o[R>>2]=c;c=Yo(R)|0;f=o[R>>2]|0;break}if(zo(r[f+2>>0]|0)|0?(x=o[R>>2]|0,(r[x+3>>0]|0)==36):0){c=x+2|0;o[a+((r[c>>0]|0)+-48<<2)>>2]=10;c=o[s+((r[c>>0]|0)+-48<<3)>>2]|0;f=x+4|0;o[R>>2]=f;break}if(_|0){t=-1;break e}if(A){y=(o[n>>2]|0)+(4-1)&~(4-1);c=o[y>>2]|0;o[n>>2]=y+4}else c=0;f=(o[R>>2]|0)+2|0;o[R>>2]=f}else c=-1}while(0);y=0;while(1){if(((r[f>>0]|0)+-65|0)>>>0>57){t=-1;break e}u=f;f=f+1|0;o[R>>2]=f;u=r[(r[u>>0]|0)+-65+(35136+(y*58|0))>>0]|0;p=u&255;if((p+-1|0)>>>0>=8)break;else y=p}if(!(u<<24>>24)){t=-1;break}m=(g|0)>-1;do{if(u<<24>>24==19)if(m){t=-1;break e}else w=54;else{if(m){o[a+(g<<2)>>2]=p;m=s+(g<<3)|0;g=o[m+4>>2]|0;w=C;o[w>>2]=o[m>>2];o[w+4>>2]=g;w=54;break}if(!A){t=0;break e}Xo(C,p,n);f=o[R>>2]|0;w=55}}while(0);if((w|0)==54){w=0;if(A)w=55;else c=0}t:do{if((w|0)==55){w=0;f=r[f+-1>>0]|0;f=(y|0)!=0&(f&15|0)==3?f&-33:f;u=d&-65537;g=(d&8192|0)==0?d:u;n:do{switch(f|0){case 110:switch((y&255)<<24>>24){case 0:{o[o[C>>2]>>2]=t;c=0;break t}case 1:{o[o[C>>2]>>2]=t;c=0;break t}case 2:{c=o[C>>2]|0;o[c>>2]=t;o[c+4>>2]=((t|0)<0)<<31>>31;c=0;break t}case 3:{i[o[C>>2]>>1]=t;c=0;break t}case 4:{r[o[C>>2]>>0]=t;c=0;break t}case 6:{o[o[C>>2]>>2]=t;c=0;break t}case 7:{c=o[C>>2]|0;o[c>>2]=t;o[c+4>>2]=((t|0)<0)<<31>>31;c=0;break t}default:{c=0;break t}}case 112:{f=120;c=c>>>0>8?c:8;u=g|8;w=67;break}case 88:case 120:{u=g;w=67;break}case 111:{u=C;f=o[u>>2]|0;u=o[u+4>>2]|0;m=Zo(f,u,E)|0;w=k-m|0;d=0;p=38441;c=(g&8|0)==0|(c|0)>(w|0)?c:w+1|0;w=73;break}case 105:case 100:{u=C;f=o[u>>2]|0;u=o[u+4>>2]|0;if((u|0)<0){f=Ss(0,0,f|0,u|0)|0;u=T;d=C;o[d>>2]=f;o[d+4>>2]=u;d=1;p=38441;w=72;break n}else{d=(g&2049|0)!=0&1;p=(g&2048|0)==0?(g&1|0)==0?38441:38443:38442;w=72;break n}}case 117:{u=C;d=0;p=38441;f=o[u>>2]|0;u=o[u+4>>2]|0;w=72;break}case 99:{r[S>>0]=o[C>>2];y=S;d=0;p=38441;m=1;c=k;break}case 109:{f=es(o[(Lo()|0)>>2]|0)|0;w=77;break}case 115:{f=o[C>>2]|0;f=(f|0)==0?38451:f;w=77;break}case 67:{o[P>>2]=o[C>>2];o[I>>2]=0;o[C>>2]=P;p=-1;w=81;break}case 83:{if(!c){ns(e,32,v,0,g);c=0;w=91}else{p=c;w=81}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{c=is(e,+l[C>>3],v,c,g,f)|0;break t}default:{y=b;d=0;p=38441;m=c;u=g;c=k}}}while(0);n:do{if((w|0)==67){b=C;y=o[b>>2]|0;b=o[b+4>>2]|0;m=Jo(y,b,E,f&32)|0;p=(u&8|0)==0|(y|0)==0&(b|0)==0;d=p?0:2;p=p?38441:38441+(f>>>4)|0;g=u;f=y;u=b;w=73}else if((w|0)==72){m=$o(f,u,E)|0;w=73}else if((w|0)==77){w=0;b=ts(f,0,c)|0;g=(b|0)==0;y=f;d=0;p=38441;m=g?c:b-f|0;c=g?f+c|0:b}else if((w|0)==81){w=0;d=o[C>>2]|0;c=0;while(1){f=o[d>>2]|0;if(!f)break;f=rs(M,f)|0;u=(f|0)<0;if(u|f>>>0>(p-c|0)>>>0){w=85;break}c=f+c|0;if(p>>>0>c>>>0)d=d+4|0;else break}if((w|0)==85){w=0;if(u){t=-1;break e}}ns(e,32,v,c,g);if(!c){c=0;w=91}else{u=o[C>>2]|0;d=0;while(1){f=o[u>>2]|0;if(!f){w=91;break n}f=rs(M,f)|0;d=f+d|0;if((d|0)>(c|0)){w=91;break n}Wo(e,M,f);if(d>>>0>=c>>>0){w=91;break}else u=u+4|0}}}}while(0);if((w|0)==73){w=0;u=(f|0)!=0|(u|0)!=0;b=(c|0)!=0|u;u=k-m+((u^1)&1)|0;y=b?m:E;m=b?(c|0)>(u|0)?c:u:0;u=(c|0)>-1?g&-65537:g;c=k}else if((w|0)==91){w=0;ns(e,32,v,c,g^8192);c=(v|0)>(c|0)?v:c;break}g=c-y|0;m=(m|0)<(g|0)?g:m;b=m+d|0;c=(v|0)<(b|0)?b:v;ns(e,32,c,b,u);Wo(e,p,d);ns(e,48,c,b,u^65536);ns(e,48,m,g,0);Wo(e,y,g);ns(e,32,c,b,u^8192)}}while(0);u=_}e:do{if((w|0)==94)if(!e)if(!u)t=0;else{t=1;while(1){c=o[a+(t<<2)>>2]|0;if(!c)break;Xo(s+(t<<3)|0,c,n);t=t+1|0;if(t>>>0>=10){t=1;break e}}while(1){if(o[a+(t<<2)>>2]|0){t=-1;break e}t=t+1|0;if(t>>>0>=10){t=1;break}}}}while(0);h=D;return t|0}function Vo(e){e=e|0;return 0}function Qo(e){e=e|0;return}function Wo(e,t,n){e=e|0;t=t|0;n=n|0;if(!(o[e>>2]&32))ys(t,n,e)|0;return}function Yo(e){e=e|0;var t=0,n=0;if(!(zo(r[o[e>>2]>>0]|0)|0))t=0;else{t=0;do{n=o[e>>2]|0;t=(t*10|0)+-48+(r[n>>0]|0)|0;n=n+1|0;o[e>>2]=n}while((zo(r[n>>0]|0)|0)!=0)}return t|0}function Xo(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0.0;e:do{if(t>>>0<=20)do{switch(t|0){case 9:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;o[e>>2]=t;break e}case 10:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=((t|0)<0)<<31>>31;break e}case 11:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=0;break e}case 12:{r=(o[n>>2]|0)+(8-1)&~(8-1);t=r;i=o[t>>2]|0;t=o[t+4>>2]|0;o[n>>2]=r+8;r=e;o[r>>2]=i;o[r+4>>2]=t;break e}case 13:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&65535)<<16>>16;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 14:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&65535;o[i+4>>2]=0;break e}case 15:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&255)<<24>>24;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 16:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&255;o[i+4>>2]=0;break e}case 17:{i=(o[n>>2]|0)+(8-1)&~(8-1);s=+l[i>>3];o[n>>2]=i+8;l[e>>3]=s;break e}case 18:{i=(o[n>>2]|0)+(8-1)&~(8-1);s=+l[i>>3];o[n>>2]=i+8;l[e>>3]=s;break e}default:break e}}while(0)}while(0);return}function Jo(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=s[35600+(e&15)>>0]|0|i;e=Cs(e|0,t|0,4)|0;t=T}while(!((e|0)==0&(t|0)==0));return n|0}function Zo(e,t,n){e=e|0;t=t|0;n=n|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=e&7|48;e=Cs(e|0,t|0,3)|0;t=T}while(!((e|0)==0&(t|0)==0));return n|0}function $o(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0;if(t>>>0>0|(t|0)==0&e>>>0>4294967295){do{i=e;e=xs(e|0,t|0,10,0)|0;o=t;t=T;s=Es(e|0,t|0,10,0)|0;s=Ss(i|0,o|0,s|0,T|0)|0;n=n+-1|0;r[n>>0]=s&255|48}while(o>>>0>9|(o|0)==9&i>>>0>4294967295);t=e}else t=e;if(t)do{s=t;t=(t>>>0)/10|0;n=n+-1|0;r[n>>0]=s-(t*10|0)|48}while(s>>>0>=10);return n|0}function es(e){e=e|0;return ds(e,o[(us()|0)+188>>2]|0)|0}function ts(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0;a=t&255;i=(n|0)!=0;e:do{if(i&(e&3|0)!=0){s=t&255;while(1){if((r[e>>0]|0)==s<<24>>24){c=6;break e}e=e+1|0;n=n+-1|0;i=(n|0)!=0;if(!(i&(e&3|0)!=0)){c=5;break}}}else c=5}while(0);if((c|0)==5)if(i)c=6;else c=16;e:do{if((c|0)==6){s=t&255;if((r[e>>0]|0)==s<<24>>24)if(!n){c=16;break}else break;i=q(a,16843009)|0;t:do{if(n>>>0>3)while(1){a=o[e>>2]^i;if((a&-2139062144^-2139062144)&a+-16843009|0)break t;e=e+4|0;n=n+-4|0;if(n>>>0<=3){c=11;break}}else c=11}while(0);if((c|0)==11)if(!n){c=16;break}while(1){if((r[e>>0]|0)==s<<24>>24)break e;n=n+-1|0;if(!n){c=16;break}else e=e+1|0}}}while(0);if((c|0)==16)e=0;return e|0}function ns(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var o=0,s=0;s=h;h=h+256|0;o=s;if((n|0)>(r|0)&(i&73728|0)==0){i=n-r|0;Ds(o|0,t<<24>>24|0,(i>>>0<256?i:256)|0)|0;if(i>>>0>255){t=n-r|0;do{Wo(e,o,256);i=i+-256|0}while(i>>>0>255);i=t&255}Wo(e,o,i)}h=s;return}function rs(e,t){e=e|0;t=t|0;if(!e)e=0;else e=cs(e,t,0)|0;return e|0}function is(e,t,n,i,a,c){e=e|0;t=+t;n=n|0;i=i|0;a=a|0;c=c|0;var f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0.0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0;M=h;h=h+560|0;u=M+32|0;w=M+536|0;P=M;O=P;d=M+540|0;o[w>>2]=0;C=d+12|0;os(t)|0;f=T;if((f|0)<0){t=-t;os(t)|0;R=1;x=38458;f=T}else{R=(a&2049|0)!=0&1;x=(a&2048|0)==0?(a&1|0)==0?38459:38464:38461}do{if(0==0&(f&2146435072|0)==2146435072){P=(c&32|0)!=0;f=R+3|0;ns(e,32,n,f,a&-65537);Wo(e,x,R);Wo(e,t!=t|0.0!=0.0?P?38485:38489:P?38477:38481,3);ns(e,32,n,f,a^8192)}else{y=+ss(t,w)*2.0;f=y!=0.0;if(f)o[w>>2]=(o[w>>2]|0)+-1;_=c|32;if((_|0)==97){m=c&32;b=(m|0)==0?x:x+9|0;g=R|2;f=12-i|0;do{if(!(i>>>0>11|(f|0)==0)){t=8.0;do{f=f+-1|0;t=t*16.0}while((f|0)!=0);if((r[b>>0]|0)==45){t=-(t+(-y-t));break}else{t=y+t-t;break}}else t=y}while(0);l=o[w>>2]|0;f=(l|0)<0?0-l|0:l;f=$o(f,((f|0)<0)<<31>>31,C)|0;if((f|0)==(C|0)){f=d+11|0;r[f>>0]=48}r[f+-1>>0]=(l>>31&2)+43;p=f+-2|0;r[p>>0]=c+15;l=(i|0)<1;u=(a&8|0)==0;d=P;do{R=~~t;f=d+1|0;r[d>>0]=m|s[35600+R>>0];t=(t-+(R|0))*16.0;if((f-O|0)==1?!(u&(l&t==0.0)):0){r[f>>0]=46;d=d+2|0}else d=f}while(t!=0.0);if((i|0)!=0?(-2-O+d|0)<(i|0):0){l=C;u=p;f=i+2+l-u|0}else{l=C;u=p;f=l-O-u+d|0}C=f+g|0;ns(e,32,n,C,a);Wo(e,b,g);ns(e,48,n,C,a^65536);O=d-O|0;Wo(e,P,O);P=l-u|0;ns(e,48,f-(O+P)|0,0,0);Wo(e,p,P);ns(e,32,n,C,a^8192);f=C;break}l=(i|0)<0?6:i;if(f){f=(o[w>>2]|0)+-28|0;o[w>>2]=f;t=y*268435456.0}else{t=y;f=o[w>>2]|0}I=(f|0)<0?u:u+288|0;u=I;do{k=~~t>>>0;o[u>>2]=k;u=u+4|0;t=(t-+(k>>>0))*1.0e9}while(t!=0.0);k=I;if((f|0)>0){m=I;while(1){p=(f|0)<29?f:29;f=u+-4|0;if(f>>>0>=m>>>0){d=0;do{v=Os(o[f>>2]|0,0,p|0)|0;v=ks(v|0,T|0,d|0,0)|0;A=T;d=xs(v|0,A|0,1e9,0)|0;E=Es(d|0,T|0,1e9,0)|0;E=Ss(v|0,A|0,E|0,T|0)|0;o[f>>2]=E;f=f+-4|0}while(f>>>0>=m>>>0);if(d){E=m+-4|0;o[E>>2]=d;d=E}else d=m}else d=m;e:do{if(u>>>0>d>>>0){f=u;while(1){u=f+-4|0;if(o[u>>2]|0){u=f;break e}if(u>>>0>d>>>0)f=u;else break}}}while(0);f=(o[w>>2]|0)-p|0;o[w>>2]=f;if((f|0)>0)m=d;else break}}else d=I;if((f|0)<0){i=((l+25|0)/9|0)+1|0;v=(_|0)==102;do{b=0-f|0;b=(b|0)<9?b:9;if(d>>>0>>0){p=(1<>>b;g=0;f=d;do{E=o[f>>2]|0;o[f>>2]=(E>>>b)+g;g=q(E&p,m)|0;f=f+4|0}while(f>>>0>>0);d=(o[d>>2]|0)==0?d+4|0:d;if(g){o[u>>2]=g;u=u+4|0}}else d=(o[d>>2]|0)==0?d+4|0:d;f=v?I:d;u=(u-f>>2|0)>(i|0)?f+(i<<2)|0:u;f=(o[w>>2]|0)+b|0;o[w>>2]=f}while((f|0)<0);v=d}else v=d;if(v>>>0>>0){f=(k-v>>2)*9|0;p=o[v>>2]|0;if(p>>>0>=10){d=10;do{d=d*10|0;f=f+1|0}while(p>>>0>=d>>>0)}}else f=0;A=(_|0)==103;E=(l|0)!=0;d=l-((_|0)==102?0:f)+((E&A)<<31>>31)|0;if((d|0)<(((u-k>>2)*9|0)+-9|0)){w=d+9216|0;d=(w|0)/9|0;i=I+4+(d+-1024<<2)|0;d=w-(d*9|0)|0;if((d|0)<8){p=10;while(1){p=p*10|0;if((d|0)<7)d=d+1|0;else break}}else p=10;g=o[i>>2]|0;d=(g>>>0)/(p>>>0)|0;b=g-(q(d,p)|0)|0;m=(i+4|0)==(u|0);if(!(m&(b|0)==0)){y=(d&1|0)==0?9007199254740992.0:9007199254740994.0;w=p>>>1;t=b>>>0>>0?.5:m&(b|0)==(w|0)?1.0:1.5;if(R){w=(r[x>>0]|0)==45;t=w?-t:t;y=w?-y:y}d=g-b|0;o[i>>2]=d;if(y+t!=y){w=d+p|0;o[i>>2]=w;if(w>>>0>999999999){p=i;f=v;while(1){d=p+-4|0;o[p>>2]=0;if(d>>>0>>0){f=f+-4|0;o[f>>2]=0}w=(o[d>>2]|0)+1|0;o[d>>2]=w;if(w>>>0>999999999)p=d;else{p=f;break}}}else{d=i;p=v}f=(k-p>>2)*9|0;g=o[p>>2]|0;if(g>>>0>=10){m=10;do{m=m*10|0;f=f+1|0}while(g>>>0>=m>>>0)}}else{d=i;p=v}}else{d=i;p=v}w=d+4|0;u=u>>>0>w>>>0?w:u}else p=v;i=0-f|0;e:do{if(u>>>0>p>>>0)while(1){d=u+-4|0;if(o[d>>2]|0){w=u;_=1;break e}if(d>>>0>p>>>0)u=d;else{w=d;_=0;break}}else{w=u;_=0}}while(0);do{if(A){l=l+((E^1)&1)|0;if((l|0)>(f|0)&(f|0)>-5){m=c+-1|0;l=l+-1-f|0}else{m=c+-2|0;l=l+-1|0}if(!(a&8)){if(_?(S=o[w+-4>>2]|0,(S|0)!=0):0)if(!((S>>>0)%10|0)){d=0;u=10;do{u=u*10|0;d=d+1|0}while(!((S>>>0)%(u>>>0)|0|0))}else d=0;else d=9;u=((w-k>>2)*9|0)+-9|0;if((m|32|0)==102){c=u-d|0;c=(c|0)>0?c:0;l=(l|0)<(c|0)?l:c;break}else{c=u+f-d|0;c=(c|0)>0?c:0;l=(l|0)<(c|0)?l:c;break}}}else m=c}while(0);v=(l|0)!=0;g=v?1:a>>>3&1;b=(m|32|0)==102;if(b){A=0;f=(f|0)>0?f:0}else{u=(f|0)<0?i:f;u=$o(u,((u|0)<0)<<31>>31,C)|0;d=C;if((d-u|0)<2)do{u=u+-1|0;r[u>>0]=48}while((d-u|0)<2);r[u+-1>>0]=(f>>31&2)+43;f=u+-2|0;r[f>>0]=m;A=f;f=d-f|0}f=R+1+l+g+f|0;ns(e,32,n,f,a);Wo(e,x,R);ns(e,48,n,f,a^65536);if(b){g=p>>>0>I>>>0?I:p;b=P+9|0;p=b;m=P+8|0;d=g;do{u=$o(o[d>>2]|0,0,b)|0;if((d|0)==(g|0)){if((u|0)==(b|0)){r[m>>0]=48;u=m}}else if(u>>>0>P>>>0){Ds(P|0,48,u-O|0)|0;do{u=u+-1|0}while(u>>>0>P>>>0)}Wo(e,u,p-u|0);d=d+4|0}while(d>>>0<=I>>>0);if(!((a&8|0)==0&(v^1)))Wo(e,38493,1);if(d>>>0>>0&(l|0)>0)while(1){u=$o(o[d>>2]|0,0,b)|0;if(u>>>0>P>>>0){Ds(P|0,48,u-O|0)|0;do{u=u+-1|0}while(u>>>0>P>>>0)}Wo(e,u,(l|0)<9?l:9);d=d+4|0;u=l+-9|0;if(!(d>>>0>>0&(l|0)>9)){l=u;break}else l=u}ns(e,48,l+9|0,9,0)}else{w=_?w:p+4|0;if(p>>>0>>0&(l|0)>-1){i=P+9|0;v=(a&8|0)==0;_=i;g=0-O|0;b=P+8|0;m=p;do{u=$o(o[m>>2]|0,0,i)|0;if((u|0)==(i|0)){r[b>>0]=48;u=b}do{if((m|0)==(p|0)){d=u+1|0;Wo(e,u,1);if(v&(l|0)<1){u=d;break}Wo(e,38493,1);u=d}else{if(u>>>0<=P>>>0)break;Ds(P|0,48,u+g|0)|0;do{u=u+-1|0}while(u>>>0>P>>>0)}}while(0);O=_-u|0;Wo(e,u,(l|0)>(O|0)?O:l);l=l-O|0;m=m+4|0}while(m>>>0>>0&(l|0)>-1)}ns(e,48,l+18|0,18,0);Wo(e,A,C-A|0)}ns(e,32,n,f,a^8192)}}while(0);h=M;return((f|0)<(n|0)?n:f)|0}function os(e){e=+e;var t=0;l[d>>3]=e;t=o[d>>2]|0;T=o[d+4>>2]|0;return t|0}function ss(e,t){e=+e;t=t|0;return+ +as(e,t)}function as(e,t){e=+e;t=t|0;var n=0,r=0,i=0;l[d>>3]=e;n=o[d>>2]|0;r=o[d+4>>2]|0;i=Cs(n|0,r|0,52)|0;switch(i&2047){case 0:{if(e!=0.0){e=+as(e*18446744073709551616.0,t);n=(o[t>>2]|0)+-64|0}else n=0;o[t>>2]=n;break}case 2047:break;default:{o[t>>2]=(i&2047)+-1022;o[d>>2]=n;o[d+4>>2]=r&-2146435073|1071644672;e=+l[d>>3]}}return+e}function cs(e,t,n){e=e|0;t=t|0;n=n|0;do{if(e){if(t>>>0<128){r[e>>0]=t;e=1;break}if(!(o[o[(fs()|0)+188>>2]>>2]|0))if((t&-128|0)==57216){r[e>>0]=t;e=1;break}else{o[(Lo()|0)>>2]=84;e=-1;break}if(t>>>0<2048){r[e>>0]=t>>>6|192;r[e+1>>0]=t&63|128;e=2;break}if(t>>>0<55296|(t&-8192|0)==57344){r[e>>0]=t>>>12|224;r[e+1>>0]=t>>>6&63|128;r[e+2>>0]=t&63|128;e=3;break}if((t+-65536|0)>>>0<1048576){r[e>>0]=t>>>18|240;r[e+1>>0]=t>>>12&63|128;r[e+2>>0]=t>>>6&63|128;r[e+3>>0]=t&63|128;e=4;break}else{o[(Lo()|0)>>2]=84;e=-1;break}}else e=1}while(0);return e|0}function fs(){return ls()|0}function ls(){return 37728}function us(){return ls()|0}function ds(e,t){e=e|0;t=t|0;var n=0,i=0;n=0;while(1){if((s[35616+n>>0]|0)==(e|0)){i=4;break}n=n+1|0;if((n|0)==87){e=87;i=5;break}}if((i|0)==4)if(!n)n=35712;else{e=n;i=5}if((i|0)==5){n=35712;do{do{i=n;n=n+1|0}while((r[i>>0]|0)!=0);e=e+-1|0}while((e|0)!=0)}return hs(n,o[t+20>>2]|0)|0}function hs(e,t){e=e|0;t=t|0;return ps(e,t)|0}function ps(e,t){e=e|0;t=t|0;if(!t)t=0;else t=ms(o[t>>2]|0,o[t+4>>2]|0,e)|0;return((t|0)==0?e:t)|0}function ms(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0;p=(o[e>>2]|0)+1794895138|0;a=gs(o[e+8>>2]|0,p)|0;i=gs(o[e+12>>2]|0,p)|0;s=gs(o[e+16>>2]|0,p)|0;e:do{if((a>>>0>>2>>>0?(h=t-(a<<2)|0,i>>>0>>0&s>>>0>>0):0)?((s|i)&3|0)==0:0){h=i>>>2;d=s>>>2;u=0;while(1){f=a>>>1;l=u+f|0;c=l<<1;s=c+h|0;i=gs(o[e+(s<<2)>>2]|0,p)|0;s=gs(o[e+(s+1<<2)>>2]|0,p)|0;if(!(s>>>0>>0&i>>>0<(t-s|0)>>>0)){i=0;break e}if(r[e+(s+i)>>0]|0){i=0;break e}i=Fo(n,e+s|0)|0;if(!i)break;i=(i|0)<0;if((a|0)==1){i=0;break e}u=i?u:l;a=i?f:a-f|0}i=c+d|0;s=gs(o[e+(i<<2)>>2]|0,p)|0;i=gs(o[e+(i+1<<2)>>2]|0,p)|0;if(i>>>0>>0&s>>>0<(t-i|0)>>>0)i=(r[e+(i+s)>>0]|0)==0?e+i|0:0;else i=0}else i=0}while(0);return i|0}function gs(e,t){e=e|0;t=t|0;var n=0;n=Ps(e|0)|0;return((t|0)==0?e:n)|0}function ys(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0;i=n+16|0;s=o[i>>2]|0;if(!s)if(!(bs(n)|0)){s=o[i>>2]|0;a=5}else i=0;else a=5;e:do{if((a|0)==5){f=n+20|0;c=o[f>>2]|0;i=c;if((s-c|0)>>>0>>0){i=Vs[o[n+36>>2]&1](n,e,t)|0;break}t:do{if((r[n+75>>0]|0)<0|(t|0)==0){a=0;s=e}else{c=t;while(1){s=c+-1|0;if((r[e+s>>0]|0)==10)break;if(!s){a=0;s=e;break t}else c=s}i=Vs[o[n+36>>2]&1](n,e,c)|0;if(i>>>0>>0)break e;a=c;s=e+c|0;t=t-c|0;i=o[f>>2]|0}}while(0);Ms(i|0,s|0,t|0)|0;o[f>>2]=(o[f>>2]|0)+t;i=a+t|0}}while(0);return i|0}function bs(e){e=e|0;var t=0,n=0;t=e+74|0;n=r[t>>0]|0;r[t>>0]=n+255|n;t=o[e>>2]|0;if(!(t&8)){o[e+8>>2]=0;o[e+4>>2]=0;n=o[e+44>>2]|0;o[e+28>>2]=n;o[e+20>>2]=n;o[e+16>>2]=n+(o[e+48>>2]|0);e=0}else{o[e>>2]=t|32;e=-1}return e|0}function vs(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=e+20|0;i=o[r>>2]|0;e=(o[e+16>>2]|0)-i|0;e=e>>>0>n>>>0?n:e;Ms(i|0,t|0,e|0)|0;o[r>>2]=(o[r>>2]|0)+e;return n|0}function _s(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0;i=h;h=h+16|0;s=i;o[s>>2]=r;r=Ko(e,t,n,s)|0;h=i;return r|0}function ws(){}function As(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0;o=e&65535;i=t&65535;n=q(i,o)|0;r=e>>>16;e=(n>>>16)+(q(i,r)|0)|0;i=t>>>16;t=q(i,o)|0;return(T=(e>>>16)+(q(i,r)|0)+(((e&65535)+t|0)>>>16)|0,e+t<<16|n&65535|0)|0}function Es(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0;i=e;o=n;n=As(i,o)|0;e=T;return(T=(q(t,o)|0)+(q(r,i)|0)+e|e&0,n|0|0)|0}function ks(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;n=e+n>>>0;return(T=t+r+(n>>>0>>0|0)>>>0,n|0)|0}function Ss(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;r=t-r-(n>>>0>e>>>0|0)>>>0;return(T=r,e-n>>>0|0)|0}function Ts(e){e=e|0;return(e?31-(G(e^e-1)|0)|0:32)|0}function Is(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0;u=e;f=t;l=f;a=n;h=r;c=h;if(!l){s=(i|0)!=0;if(!c){if(s){o[i>>2]=(u>>>0)%(a>>>0);o[i+4>>2]=0}h=0;i=(u>>>0)/(a>>>0)>>>0;return(T=h,i)|0}else{if(!s){h=0;i=0;return(T=h,i)|0}o[i>>2]=e|0;o[i+4>>2]=t&0;h=0;i=0;return(T=h,i)|0}}s=(c|0)==0;do{if(a){if(!s){s=(G(c|0)|0)-(G(l|0)|0)|0;if(s>>>0<=31){d=s+1|0;c=31-s|0;t=s-31>>31;a=d;e=u>>>(d>>>0)&t|l<>>(d>>>0)&t;s=0;c=u<>2]=e|0;o[i+4>>2]=f|t&0;h=0;i=0;return(T=h,i)|0}s=a-1|0;if(s&a|0){c=(G(a|0)|0)+33-(G(l|0)|0)|0;m=64-c|0;d=32-c|0;f=d>>31;p=c-32|0;t=p>>31;a=c;e=d-1>>31&l>>>(p>>>0)|(l<>>(c>>>0))&t;t=t&l>>>(c>>>0);s=u<>>(p>>>0))&f|u<>31;break}if(i|0){o[i>>2]=s&u;o[i+4>>2]=0}if((a|0)==1){p=f|t&0;m=e|0|0;return(T=p,m)|0}else{m=Ts(a|0)|0;p=l>>>(m>>>0)|0;m=l<<32-m|u>>>(m>>>0)|0;return(T=p,m)|0}}else{if(s){if(i|0){o[i>>2]=(l>>>0)%(a>>>0);o[i+4>>2]=0}p=0;m=(l>>>0)/(a>>>0)>>>0;return(T=p,m)|0}if(!u){if(i|0){o[i>>2]=0;o[i+4>>2]=(l>>>0)%(c>>>0)}p=0;m=(l>>>0)/(c>>>0)>>>0;return(T=p,m)|0}s=c-1|0;if(!(s&c)){if(i|0){o[i>>2]=e|0;o[i+4>>2]=s&l|t&0}p=0;m=l>>>((Ts(c|0)|0)>>>0);return(T=p,m)|0}s=(G(c|0)|0)-(G(l|0)|0)|0;if(s>>>0<=30){t=s+1|0;c=31-s|0;a=t;e=l<>>(t>>>0);t=l>>>(t>>>0);s=0;c=u<>2]=e|0;o[i+4>>2]=f|t&0;p=0;m=0;return(T=p,m)|0}}while(0);if(!a){l=c;f=0;c=0}else{d=n|0|0;u=h|r&0;l=ks(d|0,u|0,-1,-1)|0;n=T;f=c;c=0;do{r=f;f=s>>>31|f<<1;s=c|s<<1;r=e<<1|r>>>31|0;h=e>>>31|t<<1|0;Ss(l|0,n|0,r|0,h|0)|0;m=T;p=m>>31|((m|0)<0?-1:0)<<1;c=p&1;e=Ss(r|0,h|0,p&d|0,(((m|0)<0?-1:0)>>31|((m|0)<0?-1:0)<<1)&u|0)|0;t=T;a=a-1|0}while((a|0)!=0);l=f;f=0}a=0;if(i|0){o[i>>2]=e;o[i+4>>2]=t}p=(s|0)>>>31|(l|a)<<1|(a<<1|s>>>31)&0|f;m=(s<<1|0>>>31)&-2|c;return(T=p,m)|0}function xs(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return Is(e,t,n,r,0)|0}function Rs(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){T=t>>n;return e>>>n|(t&(1<>n-32|0}function Cs(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){T=t>>>n;return e>>>n|(t&(1<>>n-32|0}function Os(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){T=t<>>32-n;return e<>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function Ms(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0;if((n|0)>=8192)return te(e|0,t|0,n|0)|0;a=e|0;s=e+n|0;if((e&3)==(t&3)){while(e&3){if(!n)return a|0;r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0;n=n-1|0}n=s&-4|0;i=n-64|0;while((e|0)<=(i|0)){o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=o[t+8>>2];o[e+12>>2]=o[t+12>>2];o[e+16>>2]=o[t+16>>2];o[e+20>>2]=o[t+20>>2];o[e+24>>2]=o[t+24>>2];o[e+28>>2]=o[t+28>>2];o[e+32>>2]=o[t+32>>2];o[e+36>>2]=o[t+36>>2];o[e+40>>2]=o[t+40>>2];o[e+44>>2]=o[t+44>>2];o[e+48>>2]=o[t+48>>2];o[e+52>>2]=o[t+52>>2];o[e+56>>2]=o[t+56>>2];o[e+60>>2]=o[t+60>>2];e=e+64|0;t=t+64|0}while((e|0)<(n|0)){o[e>>2]=o[t>>2];e=e+4|0;t=t+4|0}}else{n=s-4|0;while((e|0)<(n|0)){r[e>>0]=r[t>>0]|0;r[e+1>>0]=r[t+1>>0]|0;r[e+2>>0]=r[t+2>>0]|0;r[e+3>>0]=r[t+3>>0]|0;e=e+4|0;t=t+4|0}}while((e|0)<(s|0)){r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0}return a|0}function Ds(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0;a=e+n|0;t=t&255;if((n|0)>=67){while(e&3){r[e>>0]=t;e=e+1|0}i=a&-4|0;s=i-64|0;c=t|t<<8|t<<16|t<<24;while((e|0)<=(s|0)){o[e>>2]=c;o[e+4>>2]=c;o[e+8>>2]=c;o[e+12>>2]=c;o[e+16>>2]=c;o[e+20>>2]=c;o[e+24>>2]=c;o[e+28>>2]=c;o[e+32>>2]=c;o[e+36>>2]=c;o[e+40>>2]=c;o[e+44>>2]=c;o[e+48>>2]=c;o[e+52>>2]=c;o[e+56>>2]=c;o[e+60>>2]=c;e=e+64|0}while((e|0)<(i|0)){o[e>>2]=c;e=e+4|0}}while((e|0)<(a|0)){r[e>>0]=t;e=e+1|0}return a-n|0}function Ns(e){e=e|0;var t=0,n=0;n=o[u>>2]|0;t=n+e|0;if((e|0)>0&(t|0)<(n|0)|(t|0)<0){Y()|0;ee(12);return-1}o[u>>2]=t;if((t|0)>(W()|0)?(Q()|0)==0:0){o[u>>2]=n;ee(12);return-1}return n|0}function Bs(e,t){e=e|0;t=t|0;return Gs[e&1](t|0)|0}function js(e,t,n){e=e|0;t=t|0;n=n|0;return Hs[e&3](t|0,n|0)|0}function Us(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return Vs[e&1](t|0,n|0,r|0)|0}function Ls(e,t,n,r,i,o,s,a,c,f){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;s=s|0;a=a|0;c=c|0;f=f|0;return Qs[e&3](t|0,n|0,r|0,i|0,o|0,s|0,a|0,c|0,f|0)|0}function Fs(e){e=e|0;H(0);return 0}function qs(e,t){e=e|0;t=t|0;H(1);return 0}function zs(e,t,n){e=e|0;t=t|0;n=n|0;H(2);return 0}function Ks(e,t,n,r,i,o,s,a,c){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;s=s|0;a=a|0;c=c|0;H(3);return 0}var Gs=[Fs,an];var Hs=[qs,cn,ln,qs];var Vs=[zs,vs];var Qs=[Ks,fn,un,Ks];return{___muldi3:Es,___udivdi3:xs,_bitshift64Ashr:Rs,_bitshift64Lshr:Cs,_bitshift64Shl:Os,_free:Uo,_i64Add:ks,_i64Subtract:Ss,_llvm_bswap_i32:Ps,_malloc:jo,_memcpy:Ms,_memset:Ds,_olm_account:Bn,_olm_account_generate_one_time_keys:or,_olm_account_generate_one_time_keys_random_length:ir,_olm_account_identity_keys:Jn,_olm_account_identity_keys_length:Xn,_olm_account_last_error:Cn,_olm_account_mark_keys_as_published:nr,_olm_account_max_number_of_one_time_keys:rr,_olm_account_one_time_keys:tr,_olm_account_one_time_keys_length:er,_olm_account_sign:$n,_olm_account_signature_length:Zn,_olm_account_size:Mn,_olm_clear_account:Ln,_olm_clear_inbound_group_session:Pi,_olm_clear_outbound_group_session:co,_olm_clear_pk_decryption:Ft,_olm_clear_pk_encryption:Ct,_olm_clear_pk_signing:en,_olm_clear_sas:Xi,_olm_clear_session:Fn,_olm_clear_utility:qn,_olm_create_account:Yn,_olm_create_account_random_length:Wn,_olm_create_inbound_session:cr,_olm_create_inbound_session_from:fr,_olm_create_outbound_session:ar,_olm_create_outbound_session_random_length:sr,_olm_create_sas:Zi,_olm_create_sas_random_length:Ji,_olm_decrypt:Ar,_olm_decrypt_max_plaintext_length:wr,_olm_ed25519_verify:Sr,_olm_encrypt:_r,_olm_encrypt_message_length:vr,_olm_encrypt_message_type:yr,_olm_encrypt_random_length:br,_olm_error:Rn,_olm_export_inbound_group_session:Vi,_olm_export_inbound_group_session_length:Hi,_olm_get_library_version:xn,_olm_group_decrypt:Fi,_olm_group_decrypt_max_plaintext_length:Li,_olm_group_encrypt:yo,_olm_group_encrypt_message_length:go,_olm_import_inbound_group_session:Ni,_olm_inbound_group_session:Oi,_olm_inbound_group_session_first_known_index:Ki,_olm_inbound_group_session_id:zi,_olm_inbound_group_session_id_length:qi,_olm_inbound_group_session_is_verified:Gi,_olm_inbound_group_session_last_error:Mi,_olm_inbound_group_session_size:Ci,_olm_init_inbound_group_session:Di,_olm_init_outbound_group_session:mo,_olm_init_outbound_group_session_random_length:po,_olm_matches_inbound_session:pr,_olm_matches_inbound_session_from:mr,_olm_outbound_group_session:ao,_olm_outbound_group_session_id:vo,_olm_outbound_group_session_id_length:bo,_olm_outbound_group_session_key:Ao,_olm_outbound_group_session_key_length:wo,_olm_outbound_group_session_last_error:fo,_olm_outbound_group_session_message_index:_o,_olm_outbound_group_session_size:so,_olm_pickle_account:Gn,_olm_pickle_account_length:zn,_olm_pickle_inbound_group_session:ji,_olm_pickle_inbound_group_session_length:Bi,_olm_pickle_outbound_group_session:uo,_olm_pickle_outbound_group_session_length:lo,_olm_pickle_pk_decryption:Vt,_olm_pickle_pk_decryption_length:Ht,_olm_pickle_session:Hn,_olm_pickle_session_length:Kn,_olm_pk_ciphertext_length:Mt,_olm_pk_decrypt:Yt,_olm_pk_decryption:Lt,_olm_pk_decryption_last_error:jt,_olm_pk_decryption_size:Ut,_olm_pk_encrypt:Bt,_olm_pk_encrypt_random_length:Nt,_olm_pk_encryption:Rt,_olm_pk_encryption_last_error:It,_olm_pk_encryption_set_recipient_key:Ot,_olm_pk_encryption_size:xt,_olm_pk_generate_key:Gt,_olm_pk_generate_key_random_length:zt,_olm_pk_get_private_key:Xt,_olm_pk_key_from_private:Kt,_olm_pk_key_length:Pt,_olm_pk_mac_length:Dt,_olm_pk_max_plaintext_length:Wt,_olm_pk_private_key_length:qt,_olm_pk_sign:sn,_olm_pk_signature_length:on,_olm_pk_signing:Zt,_olm_pk_signing_key_from_seed:rn,_olm_pk_signing_last_error:$t,_olm_pk_signing_public_key_length:nn,_olm_pk_signing_seed_length:tn,_olm_pk_signing_size:Jt,_olm_remove_one_time_keys:gr,_olm_sas:Yi,_olm_sas_calculate_mac:io,_olm_sas_calculate_mac_long_kdf:oo,_olm_sas_generate_bytes:no,_olm_sas_get_pubkey:eo,_olm_sas_last_error:Qi,_olm_sas_mac_length:ro,_olm_sas_pubkey_length:$i,_olm_sas_set_their_key:to,_olm_sas_size:Wi,_olm_session:jn,_olm_session_describe:hr,_olm_session_has_received_message:dr,_olm_session_id:ur,_olm_session_id_length:lr,_olm_session_last_error:On,_olm_session_size:Dn,_olm_sha256:kr,_olm_sha256_length:Er,_olm_unpickle_account:Vn,_olm_unpickle_inbound_group_session:Ui,_olm_unpickle_outbound_group_session:ho,_olm_unpickle_pk_decryption:Qt,_olm_unpickle_session:Qn,_olm_utility:Un,_olm_utility_last_error:Pn,_olm_utility_size:Nn,_sbrk:Ns,dynCall_ii:Bs,dynCall_iii:js,dynCall_iiii:Us,dynCall_iiiiiiiiii:Ls,establishStackSpace:se,getTempRet0:fe,runPostSets:ws,setTempRet0:ce,setThrew:ae,stackAlloc:re,stackRestore:oe,stackSave:ie}}(u.f,u.g,D);u.___muldi3=Ee.___muldi3,u.___udivdi3=Ee.___udivdi3,u._bitshift64Ashr=Ee._bitshift64Ashr,u._bitshift64Lshr=Ee._bitshift64Lshr,u._bitshift64Shl=Ee._bitshift64Shl,u._free=Ee._free,u._i64Add=Ee._i64Add,u._i64Subtract=Ee._i64Subtract,u._llvm_bswap_i32=Ee._llvm_bswap_i32;var ke=u._malloc=Ee._malloc;u._memcpy=Ee._memcpy,u._memset=Ee._memset,u._olm_account=Ee._olm_account,u._olm_account_generate_one_time_keys=Ee._olm_account_generate_one_time_keys,u._olm_account_generate_one_time_keys_random_length=Ee._olm_account_generate_one_time_keys_random_length,u._olm_account_identity_keys=Ee._olm_account_identity_keys,u._olm_account_identity_keys_length=Ee._olm_account_identity_keys_length,u._olm_account_last_error=Ee._olm_account_last_error,u._olm_account_mark_keys_as_published=Ee._olm_account_mark_keys_as_published,u._olm_account_max_number_of_one_time_keys=Ee._olm_account_max_number_of_one_time_keys,u._olm_account_one_time_keys=Ee._olm_account_one_time_keys,u._olm_account_one_time_keys_length=Ee._olm_account_one_time_keys_length,u._olm_account_sign=Ee._olm_account_sign,u._olm_account_signature_length=Ee._olm_account_signature_length,u._olm_account_size=Ee._olm_account_size,u._olm_clear_account=Ee._olm_clear_account,u._olm_clear_inbound_group_session=Ee._olm_clear_inbound_group_session,u._olm_clear_outbound_group_session=Ee._olm_clear_outbound_group_session,u._olm_clear_pk_decryption=Ee._olm_clear_pk_decryption,u._olm_clear_pk_encryption=Ee._olm_clear_pk_encryption,u._olm_clear_pk_signing=Ee._olm_clear_pk_signing,u._olm_clear_sas=Ee._olm_clear_sas,u._olm_clear_session=Ee._olm_clear_session,u._olm_clear_utility=Ee._olm_clear_utility,u._olm_create_account=Ee._olm_create_account,u._olm_create_account_random_length=Ee._olm_create_account_random_length,u._olm_create_inbound_session=Ee._olm_create_inbound_session,u._olm_create_inbound_session_from=Ee._olm_create_inbound_session_from,u._olm_create_outbound_session=Ee._olm_create_outbound_session,u._olm_create_outbound_session_random_length=Ee._olm_create_outbound_session_random_length,u._olm_create_sas=Ee._olm_create_sas,u._olm_create_sas_random_length=Ee._olm_create_sas_random_length,u._olm_decrypt=Ee._olm_decrypt,u._olm_decrypt_max_plaintext_length=Ee._olm_decrypt_max_plaintext_length,u._olm_ed25519_verify=Ee._olm_ed25519_verify,u._olm_encrypt=Ee._olm_encrypt,u._olm_encrypt_message_length=Ee._olm_encrypt_message_length,u._olm_encrypt_message_type=Ee._olm_encrypt_message_type,u._olm_encrypt_random_length=Ee._olm_encrypt_random_length,u._olm_error=Ee._olm_error,u._olm_export_inbound_group_session=Ee._olm_export_inbound_group_session,u._olm_export_inbound_group_session_length=Ee._olm_export_inbound_group_session_length,u._olm_get_library_version=Ee._olm_get_library_version,u._olm_group_decrypt=Ee._olm_group_decrypt,u._olm_group_decrypt_max_plaintext_length=Ee._olm_group_decrypt_max_plaintext_length,u._olm_group_encrypt=Ee._olm_group_encrypt,u._olm_group_encrypt_message_length=Ee._olm_group_encrypt_message_length,u._olm_import_inbound_group_session=Ee._olm_import_inbound_group_session,u._olm_inbound_group_session=Ee._olm_inbound_group_session,u._olm_inbound_group_session_first_known_index=Ee._olm_inbound_group_session_first_known_index,u._olm_inbound_group_session_id=Ee._olm_inbound_group_session_id,u._olm_inbound_group_session_id_length=Ee._olm_inbound_group_session_id_length,u._olm_inbound_group_session_is_verified=Ee._olm_inbound_group_session_is_verified,u._olm_inbound_group_session_last_error=Ee._olm_inbound_group_session_last_error,u._olm_inbound_group_session_size=Ee._olm_inbound_group_session_size,u._olm_init_inbound_group_session=Ee._olm_init_inbound_group_session,u._olm_init_outbound_group_session=Ee._olm_init_outbound_group_session,u._olm_init_outbound_group_session_random_length=Ee._olm_init_outbound_group_session_random_length,u._olm_matches_inbound_session=Ee._olm_matches_inbound_session,u._olm_matches_inbound_session_from=Ee._olm_matches_inbound_session_from,u._olm_outbound_group_session=Ee._olm_outbound_group_session,u._olm_outbound_group_session_id=Ee._olm_outbound_group_session_id,u._olm_outbound_group_session_id_length=Ee._olm_outbound_group_session_id_length,u._olm_outbound_group_session_key=Ee._olm_outbound_group_session_key,u._olm_outbound_group_session_key_length=Ee._olm_outbound_group_session_key_length,u._olm_outbound_group_session_last_error=Ee._olm_outbound_group_session_last_error,u._olm_outbound_group_session_message_index=Ee._olm_outbound_group_session_message_index,u._olm_outbound_group_session_size=Ee._olm_outbound_group_session_size,u._olm_pickle_account=Ee._olm_pickle_account,u._olm_pickle_account_length=Ee._olm_pickle_account_length,u._olm_pickle_inbound_group_session=Ee._olm_pickle_inbound_group_session,u._olm_pickle_inbound_group_session_length=Ee._olm_pickle_inbound_group_session_length,u._olm_pickle_outbound_group_session=Ee._olm_pickle_outbound_group_session,u._olm_pickle_outbound_group_session_length=Ee._olm_pickle_outbound_group_session_length,u._olm_pickle_pk_decryption=Ee._olm_pickle_pk_decryption,u._olm_pickle_pk_decryption_length=Ee._olm_pickle_pk_decryption_length,u._olm_pickle_session=Ee._olm_pickle_session,u._olm_pickle_session_length=Ee._olm_pickle_session_length,u._olm_pk_ciphertext_length=Ee._olm_pk_ciphertext_length,u._olm_pk_decrypt=Ee._olm_pk_decrypt,u._olm_pk_decryption=Ee._olm_pk_decryption,u._olm_pk_decryption_last_error=Ee._olm_pk_decryption_last_error,u._olm_pk_decryption_size=Ee._olm_pk_decryption_size,u._olm_pk_encrypt=Ee._olm_pk_encrypt,u._olm_pk_encrypt_random_length=Ee._olm_pk_encrypt_random_length,u._olm_pk_encryption=Ee._olm_pk_encryption,u._olm_pk_encryption_last_error=Ee._olm_pk_encryption_last_error,u._olm_pk_encryption_set_recipient_key=Ee._olm_pk_encryption_set_recipient_key,u._olm_pk_encryption_size=Ee._olm_pk_encryption_size,u._olm_pk_generate_key=Ee._olm_pk_generate_key,u._olm_pk_generate_key_random_length=Ee._olm_pk_generate_key_random_length,u._olm_pk_get_private_key=Ee._olm_pk_get_private_key,u._olm_pk_key_from_private=Ee._olm_pk_key_from_private,u._olm_pk_key_length=Ee._olm_pk_key_length,u._olm_pk_mac_length=Ee._olm_pk_mac_length,u._olm_pk_max_plaintext_length=Ee._olm_pk_max_plaintext_length,u._olm_pk_private_key_length=Ee._olm_pk_private_key_length,u._olm_pk_sign=Ee._olm_pk_sign,u._olm_pk_signature_length=Ee._olm_pk_signature_length,u._olm_pk_signing=Ee._olm_pk_signing,u._olm_pk_signing_key_from_seed=Ee._olm_pk_signing_key_from_seed,u._olm_pk_signing_last_error=Ee._olm_pk_signing_last_error,u._olm_pk_signing_public_key_length=Ee._olm_pk_signing_public_key_length,u._olm_pk_signing_seed_length=Ee._olm_pk_signing_seed_length,u._olm_pk_signing_size=Ee._olm_pk_signing_size,u._olm_remove_one_time_keys=Ee._olm_remove_one_time_keys,u._olm_sas=Ee._olm_sas,u._olm_sas_calculate_mac=Ee._olm_sas_calculate_mac,u._olm_sas_calculate_mac_long_kdf=Ee._olm_sas_calculate_mac_long_kdf,u._olm_sas_generate_bytes=Ee._olm_sas_generate_bytes,u._olm_sas_get_pubkey=Ee._olm_sas_get_pubkey,u._olm_sas_last_error=Ee._olm_sas_last_error,u._olm_sas_mac_length=Ee._olm_sas_mac_length,u._olm_sas_pubkey_length=Ee._olm_sas_pubkey_length,u._olm_sas_set_their_key=Ee._olm_sas_set_their_key,u._olm_sas_size=Ee._olm_sas_size,u._olm_session=Ee._olm_session,u._olm_session_describe=Ee._olm_session_describe,u._olm_session_has_received_message=Ee._olm_session_has_received_message,u._olm_session_id=Ee._olm_session_id,u._olm_session_id_length=Ee._olm_session_id_length,u._olm_session_last_error=Ee._olm_session_last_error,u._olm_session_size=Ee._olm_session_size,u._olm_sha256=Ee._olm_sha256,u._olm_sha256_length=Ee._olm_sha256_length,u._olm_unpickle_account=Ee._olm_unpickle_account,u._olm_unpickle_inbound_group_session=Ee._olm_unpickle_inbound_group_session,u._olm_unpickle_outbound_group_session=Ee._olm_unpickle_outbound_group_session,u._olm_unpickle_pk_decryption=Ee._olm_unpickle_pk_decryption,u._olm_unpickle_session=Ee._olm_unpickle_session,u._olm_utility=Ee._olm_utility,u._olm_utility_last_error=Ee._olm_utility_last_error,u._olm_utility_size=Ee._olm_utility_size,u._sbrk=Ee._sbrk,u.establishStackSpace=Ee.establishStackSpace,u.getTempRet0=Ee.getTempRet0,u.runPostSets=Ee.runPostSets,u.setTempRet0=Ee.setTempRet0,u.setThrew=Ee.setThrew;var Se=u.stackAlloc=Ee.stackAlloc,Te=u.stackRestore=Ee.stackRestore,Ie=u.stackSave=Ee.stackSave;if(u.dynCall_ii=Ee.dynCall_ii,u.dynCall_iii=Ee.dynCall_iii,u.dynCall_iiii=Ee.dynCall_iiii,u.dynCall_iiiiiiiiii=Ee.dynCall_iiiiiiiiii,u.asm=Ee,u.ALLOC_STACK=1,me){if(String.prototype.startsWith?!me.startsWith(ge):0!==me.indexOf(ge)){var xe=me;me=u.locateFile?u.locateFile(xe,E):E+xe}if(v||_){var Re=u.readBinary(me);B.set(Re,8)}else{var Ce=function(){u.readAsync(me,Oe,(function(){throw"could not load memory initializer "+me}))};de++,u.monitorRunDependencies&&u.monitorRunDependencies(de);var Oe=function(e){e.byteLength&&(e=new Uint8Array(e)),B.set(e,8),u.memoryInitializerRequest&&delete u.memoryInitializerRequest.response,de--,u.monitorRunDependencies&&u.monitorRunDependencies(de),0==de&&(null!==he&&(clearInterval(he),he=null),pe&&(e=pe,pe=null,e()))},Pe=Ae(me);if(Pe)Oe(Pe.buffer);else if(u.memoryInitializerRequest){var Me=function(){var e=u.memoryInitializerRequest,t=e.response;if(200!==e.status&&0!==e.status){if(!(t=Ae(u.memoryInitializerRequestURL)))return console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+e.status+", retrying "+me),void Ce();t=t.buffer}Oe(t)};u.memoryInitializerRequest.response?setTimeout(Me,0):u.memoryInitializerRequest.addEventListener("load",Me)}else Ce()}}function De(){function e(){if(!u.calledRun&&(u.calledRun=!0,!R)){if(oe||(oe=!0,ee(ne)),ee(re),u.onRuntimeInitialized&&u.onRuntimeInitialized(),u.postRun)for("function"==typeof u.postRun&&(u.postRun=[u.postRun]);u.postRun.length;){var e=u.postRun.shift();ie.unshift(e)}ee(ie)}}if(!(0=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,i=!1,o=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==a.return||a.return()}finally{if(i)throw o}}return n}}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}},function(e,t,n){"use strict";var r=n(18);function i(){}function o(){}o.resetWarningCache=i,e.exports=function(){function e(e,t,n,i,o,s){if(s!==r){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:i};return n.PropTypes=n,n}},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}},function(e,t){e.exports=function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t3&&void 0!==arguments[3]?arguments[3]:{};return Object.assign({unified:e,emoji:e.split("-").map((function(e){return parseInt(e,16)})).map((function(e){return String.fromCodePoint(e)})).join(""),originalUnified:t[u.EMOJI_PROPERTY_UNIFIED],names:t[u.EMOJI_PROPERTY_NAME],activeSkinTone:n},r)},D=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Function.prototype;return function(t,n,r,i){var o=M(n,r,i);return P(o),e(t,o)}},N=n(8),B=(n(23),function(){var e=Object(a.useContext)(g),t=e.state,n=t.skinTonesSpread,r=t.activeSkinTone,i=e.dispatch,o=function(){i({type:v,spread:!n})},s=function(e){var t=e.target.value;i({type:_,skinTone:t})};return c.a.createElement("ul",{className:"skin-tones-list"},N.map((function(e,t){var i=e===r;return c.a.createElement("li",{key:e,className:"t".concat(e),style:{transform:"translateX(-".concat(n?20*t:0,"px) scale(").concat(i?"1.5":1,")"),zIndex:i?2:1}},c.a.createElement("input",{type:"radio",onChange:s,name:"skin-tone",value:e,id:"tone_".concat(e)}),c.a.createElement("label",{htmlFor:"tone_".concat(e),"data-name":"tones",onClick:o}))})))}),j=n(9),U=n.n(j),L=function(e){var t=Object(a.useContext)(g).state.emojiUrl;return e?"".concat(t,"/").concat(e,".png"):t},F=(n(25),function(e){var t=e.unified,n=e.dispatch,r=e.shouldLoad,i=void 0===r||r;return c.a.createElement("img",U()({className:"emoji-img",onError:function(){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Function.prototype;t({type:A,unified:e})}(t,n)}},i&&function(e){return{src:L(e)}}(t)))}),q=F;F.propTypes={unified:l.a.string,shouldLoad:l.a.bool,dispatch:l.a.func},n(27);var z=function(e){var t=e.closeVariations,n=Object(a.useContext)(g).state,r=n.variationMenu,i=n.activeSkinTone,o=n.onEmojiClick;return r?c.a.createElement("div",{className:"variations-wrapper"},c.a.createElement("ul",{className:"variation-list"},N.map((function(e){var n=r[u.EMOJI_PROPERTY_SKIN_VARIATIONS].find((function(t){return t.includes(e)}))||r[u.EMOJI_PROPERTY_UNIFIED];return c.a.createElement("li",{key:n},c.a.createElement("button",{onClick:function(e){return t(e),o(e,n,r,i)},onMouseDown:function(e){return e.stopPropagation()}},c.a.createElement(q,{unified:n})))})))):null},K=z;z.propTypes={closeVariations:l.a.func};var G=n(7),H=n.n(G),V=n(10),Q=(n(29),function(e){var t=e.emojiListRef,n=Object(a.useContext)(g),r=n.state,i=r.activeCategory,o=r.filter,s=n.dispatch,f=!1;return o&&o.length&&(f=!0),c.a.createElement("nav",{onClick:function(e){var n=e.target;if(!f){var r=n.getAttribute("data-name");if(t&&t.current&&r){s({type:y,activeCategory:r}),s({type:w,group:r});var i=t.current,o=i.querySelector("[".concat("data-name",'="').concat(r,'"]'));i.scrollTop=o.offsetTop}}},className:H()("emoji-categories",{inactive:f})},V.map((function(e){return c.a.createElement("button",{key:e,className:H()("icn-".concat(e.replace(" & ","_")),{active:i===e}),"data-name":e})})))}),W=Q;Q.propTypes={emojiListRef:l.a.shape({current:l.a.instanceOf(Element)})};var Y,X,J=n(11),Z=function(e){var t={groups:{},emojis:{}},n=function(n){e[n].reduce((function(e,t){var r=t[u.EMOJI_PROPERTY_UNIFIED];return t[u.EMOJI_PROPERTY_GROUP]=n,e.emojis[r]=t,e.groups[n]=e.groups[n]||[],e.groups[n].push(r),e}),t)};for(var r in e)n(r);return t}(J),$=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0,n=".content-wrapper",r=t&&t.current?t.current.closest("".concat(n)):document.querySelector(".emoji-picker-react ".concat(n));r.setAttribute("data-name",e)},ee=l.a.shape((X={},i()(X,u.EMOJI_PROPERTY_NAME,l.a.arrayOf(l.a.string)),i()(X,u.EMOJI_PROPERTY_UNIFIED,l.a.string),i()(X,u.EMOJI_PROPERTY_SKIN_VARIATIONS,l.a.arrayOf(l.a.string)),i()(X,u.EMOJI_PROPERTY_GROUP,l.a.string),X));function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}n(40);var ne=["#aeeff0","#ffe0e0","#d6f8b8","#c6cfff","#f1f0d1"],re=null,ie=function(){return clearTimeout(re)},oe=function(e){var t,n,r=e.emoji,o=e.shouldLoad,s=e.hidden,a=e.activeSkinTone,f=e.openVariationMenu,l=e.variationMenuOpen,d=e.handleMouseEnter,h=e.handleMouseLeave,p=e.onEmojiClick,m=e.index,g=e.dispatch,y=r[u.EMOJI_PROPERTY_SKIN_VARIATIONS],b=function(e){for(var t=1;t=0}))),t||(t=r[u.EMOJI_PROPERTY_UNIFIED]),c.a.createElement("li",{style:b,className:H()("emoji",{"has-skin-variation":y&&f})},c.a.createElement("button",{onMouseDown:function(){y&&f&&(re=setTimeout((function(){f(r)}),500))},onMouseEnter:d,onMouseLeave:h,onMouseUp:ie,onClick:function(e){l||p(e,t,r,a)}},c.a.createElement(q,{unified:t,shouldLoad:o,dispatch:g})))},se=oe;oe.propTypes={emoji:ee,shouldLoad:l.a.bool,hidden:l.a.bool,activeSkinTone:l.a.string,openVariationMenu:l.a.func,variationMenuOpen:l.a.bool,handleMouseEnter:l.a.func,handleMouseLeave:l.a.func,onEmojiClick:l.a.func,index:l.a.number,dispatch:l.a.func};var ae=function(e){var t=e.unsetEmojiName,n=e.emojiListRef,r=Object(a.useContext)(g),i=r.state,o=i.recentlyUsed,s=i.onEmojiClick,f=i.filterResult,l=i.failedToLoad,d=void 0===l?{}:l,h=r.dispatch;return!o.length||f?null:c.a.createElement("ul",{className:"emoji-group","data-name":u.GROUP_NAME_RECENTLY_USED},o.map((function(e,r){var i=e[u.EMOJI_PROPERTY_UNIFIED],o=Z.emojis[i];return d[i]||!o?null:c.a.createElement(se,U()({key:r,emoji:o},e[u.EMOJI_PROPERTY_SKIN_VARIATIONS]&&{activeSkinTone:e[u.EMOJI_PROPERTY_SKIN_VARIATIONS]},{index:r,handleMouseLeave:t,onEmojiClick:s,handleMouseEnter:function(){return $(o[u.EMOJI_PROPERTY_NAME][0],n)},dispatch:h,shouldLoad:!0}))})))},ce=ae;function fe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}ae.propTypes={unsetEmojiName:l.a.func,emojiListRef:l.a.shape({current:l.a.instanceOf(Element)})},n(42);var le=function(e){var t=e.emojiListRef,n=Object(a.useContext)(g).state.filterResult;(function(e){var t=Object(a.useContext)(g),n=t.state,r=n.filterResult,i=n.activeCategory,o=t.dispatch;Object(a.useEffect)((function(){void 0!==I.IntersectionObserver&&!Y&&e.current&&(Y=new IntersectionObserver((function(e){e.forEach((function(e){var t=e.target,n=t.getAttribute("data-name");if(0===e.intersectionRatio){if(n===i)o({type:y,activeCategory:null});else if(n===u.GROUP_NAME_RECENTLY_USED){var r=t.nextSibling;if(r){var s=r.getAttribute("data-name");o({type:y,activeCategory:s})}}}else i||(o({type:w,group:n}),o({type:y,activeCategory:n}))}))}),{root:e.current.parentElement})),Y.disconnect(),e&&e.current&&T()(e.current.querySelectorAll(".emoji-group")).forEach((function(e){Y.observe(e)}))}),[e.current,r])})(t),function(e,t){var n=Object(a.useRef)();Object(a.useEffect)((function(){t&&t.current&&(t.current.scrollTop=0),n.current=e}),[e]),n.current}(n,t);var r=function(){return $("",t)};return c.a.createElement("section",{className:"emoji-scroll-wrapper",ref:t},c.a.createElement(ce,{unsetEmojiName:r,emojiListRef:t}),V.map((function(e){var n=function(e,t){var n=t.unsetEmojiName,r=t.emojiListRef,i=Object(a.useContext)(g),o=i.state,s=o.activeSkinTone,f=o.filterResult,l=o.seenGroups,d=void 0===l?{}:l,h=o.onEmojiClick,p=o.variationMenu,m=o.failedToLoad,y=void 0===m?null:m,v=o.preload,_=i.dispatch,w=v||!(!d[e]&&!f&&"function"==typeof I.IntersectionObserver),A=!!p,E=function(e){return _({type:b,emoji:e})};return Object(a.useMemo)((function(){var t=f?Object.keys(f[e]||{}):Z.groups[e];return t.reduce((function(e,i,o){if(y&&y[i])return e;var a=Z.emojis[i],f=!t.length;return e.shown||f||(e.shown=!0),e.list.push(c.a.createElement(se,{emoji:a,dispatch:_,openVariationMenu:E,activeSkinTone:s,handleMouseLeave:n,variationMenuOpen:A,handleMouseEnter:function(){return $(a[u.EMOJI_PROPERTY_NAME][0],r)},hidden:f,shouldLoad:w,onEmojiClick:h,index:o,key:a[u.EMOJI_PROPERTY_UNIFIED]})),e}),{list:[],shown:!1})}),[s,f,e,w,A,y])}(e,{unsetEmojiName:r,emojiListRef:t}),o=n.list,s=function(e){for(var t=1;t3&&void 0!==arguments[3]?arguments[3]:100,i=n;return new Promise((function(n){var o=0;!function s(){for(var a=o;ao.value.length&&i.includes(o.value))t=[].concat(T()(n),[{value:i,terms:o.terms.filter((function(e){return e.includes(i)}))}]);else if(o&&i.length0;a--)if(i.includes(n[a-1].value)){s=a;break}n.length=s,t=T()(n)}else 0!==n.length&&i.includes(o.value)||(t=[{value:i,terms:he[i[0]].filter((function(e){return e.includes(i)}))}]);var c=t[t.length-1];c&&c.value?pe(c&&c.terms||[],(function(e,t){return de[t]?(de[t]||[]).reduce((function(e,t){var n=Z.emojis[t][u.EMOJI_PROPERTY_GROUP];return e[n]=e[n]||{},e[n][t]=!0,e}),e):e}),{}).then((function(e){r({type:E,filter:t,filterResult:e})})):r({type:E,filter:t,filterResult:null})}},ye=(n(44),function(){return c.a.createElement("input",{className:"emoji-search",onChange:ge(),autoFocus:!0})});n(46),n.d(t,"SKIN_TONE_NEUTRAL",(function(){return"neutral"})),n.d(t,"SKIN_TONE_LIGHT",(function(){return"1f3fb"})),n.d(t,"SKIN_TONE_MEDIUM_LIGHT",(function(){return"1f3fc"})),n.d(t,"SKIN_TONE_MEDIUM",(function(){return"1f3fe"})),n.d(t,"SKIN_TONE_MEDIUM_DARK",(function(){return"1f3ff"})),n.d(t,"SKIN_TONE_DARK",(function(){return"1f3fd"}));var be=function(e){var t=e.emojiUrl,n=void 0===t?"https://cdn.jsdelivr.net/gh/iamcal/emoji-data@master/img-apple-160":t,r=e.onEmojiClick,o=e.preload,f=void 0!==o&&o,l=e.skinTone,d=void 0===l?"neutral":l,h=Object(a.useRef)(null),p=Object(a.useReducer)(k,{activeSkinTone:d,emojiUrl:n,onEmojiClick:D(r),seenGroups:i()({},u.GROUP_NAME_PEOPLE,!0),recentlyUsed:O(),preload:f}),m=s()(p,2),y=m[0],_=m[1],w=function(e){var t=e.target;y.variationMenu&&_({type:b}),y.skinTonesSpread&&"tones"!==t.getAttribute("data-name")&&_({type:v})};return c.a.createElement(g.Provider,{value:{state:y,dispatch:_}},c.a.createElement("aside",{className:"emoji-picker-react",onScroll:w,onMouseDown:w},c.a.createElement(W,{emojiListRef:h}),c.a.createElement("div",{style:{position:"relative"}},c.a.createElement(ye,null),c.a.createElement(B,null)),c.a.createElement("div",{className:"content-wrapper","data-name":y.emojiName},c.a.createElement(K,{closeVariations:w}),c.a.createElement(ue,{emojiListRef:h}))))};t.default=be,be.propTypes={emojiUrl:l.a.string,onEmojiClick:l.a.func,preload:l.a.bool,skinTone:l.a.string}}]))}).call(this,n(6))},function(e,t,n){"use strict";var r=n(26),i=n.n(r),o=n(27),s=n.n(o),a=n(55),c=n.n(a),f=n(56),l=n.n(f),u=n(5),d=n.n(u),h=n(57),p=n.n(h),m=n(1),g=n.n(m),y=n(0),b=n.n(y),v=(n(9),n(335)),_=n(161),w=n.n(_),A=n(39);function E(e,t,n){return e===t||(e.correspondingElement?e.correspondingElement.classList.contains(n):e.classList.contains(n))}var k,S,T=(void 0===k&&(k=0),function(){return++k}),I={},x={},R=["touchstart","touchmove"];function C(e,t){var n=null;return-1!==R.indexOf(t)&&S&&(n={passive:!e.props.preventDefault}),n}var O=function(e,t){var n,r,i=e.displayName||e.name||"Component";return r=n=function(n){var r,o;function s(e){var r;return(r=n.call(this,e)||this).__outsideClickHandler=function(e){if("function"!=typeof r.__clickOutsideHandlerProp){var t=r.getInstance();if("function"!=typeof t.props.handleClickOutside){if("function"!=typeof t.handleClickOutside)throw new Error("WrappedComponent: "+i+" lacks a handleClickOutside(event) function for processing outside click events.");t.handleClickOutside(e)}else t.props.handleClickOutside(e)}else r.__clickOutsideHandlerProp(e)},r.__getComponentNode=function(){var e=r.getInstance();return t&&"function"==typeof t.setClickOutsideRef?t.setClickOutsideRef()(e):"function"==typeof e.setClickOutsideRef?e.setClickOutsideRef():Object(A.findDOMNode)(e)},r.enableOnClickOutside=function(){if("undefined"!=typeof document&&!x[r._uid]){void 0===S&&(S=function(){if("undefined"!=typeof window&&"function"==typeof window.addEventListener){var e=!1,t=Object.defineProperty({},"passive",{get:function(){e=!0}}),n=function(){};return window.addEventListener("testPassiveEventSupport",n,t),window.removeEventListener("testPassiveEventSupport",n,t),e}}()),x[r._uid]=!0;var e=r.props.eventTypes;e.forEach||(e=[e]),I[r._uid]=function(e){var t;null!==r.componentNode&&(r.props.preventDefault&&e.preventDefault(),r.props.stopPropagation&&e.stopPropagation(),r.props.excludeScrollbar&&(t=e,document.documentElement.clientWidth<=t.clientX||document.documentElement.clientHeight<=t.clientY)||function(e,t,n){if(e===t)return!0;for(;e.parentNode;){if(E(e,t,n))return!0;e=e.parentNode}return e}(e.target,r.componentNode,r.props.outsideClickIgnoreClass)===document&&r.__outsideClickHandler(e))},e.forEach((function(e){document.addEventListener(e,I[r._uid],C(r,e))}))}},r.disableOnClickOutside=function(){delete x[r._uid];var e=I[r._uid];if(e&&"undefined"!=typeof document){var t=r.props.eventTypes;t.forEach||(t=[t]),t.forEach((function(t){return document.removeEventListener(t,e,C(r,t))})),delete I[r._uid]}},r.getRef=function(e){return r.instanceRef=e},r._uid=T(),r}o=n,(r=s).prototype=Object.create(o.prototype),r.prototype.constructor=r,r.__proto__=o;var a=s.prototype;return a.getInstance=function(){if(!e.prototype.isReactComponent)return this;var t=this.instanceRef;return t.getInstance?t.getInstance():t},a.componentDidMount=function(){if("undefined"!=typeof document&&document.createElement){var e=this.getInstance();if(t&&"function"==typeof t.handleClickOutside&&(this.__clickOutsideHandlerProp=t.handleClickOutside(e),"function"!=typeof this.__clickOutsideHandlerProp))throw new Error("WrappedComponent: "+i+" lacks a function for processing outside click events specified by the handleClickOutside config option.");this.componentNode=this.__getComponentNode(),this.props.disableOnClickOutside||this.enableOnClickOutside()}},a.componentDidUpdate=function(){this.componentNode=this.__getComponentNode()},a.componentWillUnmount=function(){this.disableOnClickOutside()},a.render=function(){var t=this.props,n=(t.excludeScrollbar,function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}(t,["excludeScrollbar"]));return e.prototype.isReactComponent?n.ref=this.getRef:n.wrappedRef=this.getRef,n.disableOnClickOutside=this.disableOnClickOutside,n.enableOnClickOutside=this.enableOnClickOutside,Object(y.createElement)(e,n)},s}(y.Component),n.displayName="OnClickOutside("+i+")",n.defaultProps={eventTypes:["mousedown","touchstart"],excludeScrollbar:t&&t.excludeScrollbar||!1,outsideClickIgnoreClass:"ignore-react-onclickoutside",preventDefault:!1,stopPropagation:!1},n.getClass=function(){return e.getClass?e.getClass():e},r},P=function(){return b.a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24",viewBox:"0 0 24 24",width:"24"},b.a.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),b.a.createElement("path",{id:"icon",fill:"#828282",d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm3.5-9c.83 0 1.5-.67 1.5-1.5S16.33 8 15.5 8 14 8.67 14 9.5s.67 1.5 1.5 1.5zm-7 0c.83 0 1.5-.67 1.5-1.5S9.33 8 8.5 8 7 8.67 7 9.5 7.67 11 8.5 11zm3.5 6.5c2.33 0 4.31-1.46 5.11-3.5H6.89c.8 2.04 2.78 3.5 5.11 3.5z"}))},M=function(e){function t(e){var n;return i()(this,t),n=c()(this,l()(t).call(this,e)),g()(d()(n),"handleClickOutside",(function(e){n.props.closeEmojiSelector()})),n}return p()(t,e),s()(t,[{key:"render",value:function(){var e=this.props,t=e.onEmojiClick,n=e.emojiSelectorOpen,r=e.toggleEmojiSelector;return(b.a.createElement("div",{className:"emoji-button-container"},b.a.createElement("div",{className:"pos-relative"},b.a.createElement(v.a,{in:n,timeout:250},(function(e){return b.a.createElement("div",{className:"emoji-picker emoji-picker-".concat(e),"aria-hidden":!n},b.a.createElement(w.a,{onEmojiClick:t,emojiUrl:"https://cdn.jsdelivr.net/gh/iamcal/emoji-data@master/img-apple-64"}))})),b.a.createElement("button",{type:"button",id:"emoji-button",onClick:r,"aria-label":"Emoji picker"},b.a.createElement(P,null)))))}}]),t}(b.a.Component);t.a=O(M)},,function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}},function(e,t,n){"use strict"; /** @license React v16.14.0 * react.production.min.js * diff --git a/dist/chatbox.js b/dist/chatbox.js index 4e46557..55884ab 100644 --- a/dist/chatbox.js +++ b/dist/chatbox.js @@ -10,7 +10,7 @@ var r=n(181),i=n(182),o=n(91);function s(){return c.TYPED_ARRAY_SUPPORT?21474836 object-assign (c) Sindre Sorhus @license MIT -*/var r=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable;function s(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,a,c=s(e),f=1;f=this._delta8){var n=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-n,e.length),0===this.pending.length&&(this.pending=null),e=r.join32(e,0,e.length-n,this.endian);for(var i=0;i>>24&255,r[i++]=e>>>16&255,r[i++]=e>>>8&255,r[i++]=255&e}else for(r[i++]=255&e,r[i++]=e>>>8&255,r[i++]=e>>>16&255,r[i++]=e>>>24&255,r[i++]=0,r[i++]=0,r[i++]=0,r[i++]=0,o=8;o{if(!this._indexedDB)return void t(new Error("no indexeddb support available"));i.logger.log(`connecting to indexeddb ${this._dbName}`);const n=this._indexedDB.open(this._dbName,a.VERSION);n.onupgradeneeded=e=>{const t=e.target.result,n=e.oldVersion;a.upgradeDatabase(t,n)},n.onblocked=()=>{i.logger.log("can't yet open IndexedDBCryptoStore because it is open elsewhere")},n.onerror=e=>{i.logger.log("Error connecting to indexeddb",e),t(e.target.error)},n.onsuccess=t=>{const n=t.target.result;i.logger.log(`connected to indexeddb ${this._dbName}`),e(new a.Backend(n))}}).then(e=>e.doTxn("readonly",[l.STORE_INBOUND_GROUP_SESSIONS,l.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],t=>{e.getEndToEndInboundGroupSession("","",t,()=>{})}).then(()=>e)).catch(t=>{if("VersionError"===t.name)throw i.logger.warn("Crypto DB is too new for us to use!",t),new c.InvalidCryptoStoreError(c.InvalidCryptoStoreError.TOO_NEW);i.logger.warn(`unable to connect to indexeddb ${this._dbName}`+`: falling back to localStorage store: ${t}`);try{return new o.LocalStorageCryptoStore(e.localStorage)}catch(t){return i.logger.warn(`unable to open localStorage: falling back to in-memory store: ${t}`),new s.MemoryCryptoStore}}),this._backendPromise)}deleteAllData(){return new Promise((e,t)=>{if(!this._indexedDB)return void t(new Error("no indexeddb support available"));i.logger.log(`Removing indexeddb instance: ${this._dbName}`);const n=this._indexedDB.deleteDatabase(this._dbName);n.onblocked=()=>{i.logger.log("can't yet delete IndexedDBCryptoStore because it is open elsewhere")},n.onerror=e=>{i.logger.log("Error deleting data from indexeddb",e),t(e.target.error)},n.onsuccess=()=>{i.logger.log(`Removed indexeddb instance: ${this._dbName}`),e()}}).catch(e=>{i.logger.warn(`unable to delete IndexedDBCryptoStore: ${e}`)})}getOrAddOutgoingRoomKeyRequest(e){return this._connect().then(t=>t.getOrAddOutgoingRoomKeyRequest(e))}getOutgoingRoomKeyRequest(e){return this._connect().then(t=>t.getOutgoingRoomKeyRequest(e))}getOutgoingRoomKeyRequestByState(e){return this._connect().then(t=>t.getOutgoingRoomKeyRequestByState(e))}getOutgoingRoomKeyRequestsByTarget(e,t,n){return this._connect().then(r=>r.getOutgoingRoomKeyRequestsByTarget(e,t,n))}updateOutgoingRoomKeyRequest(e,t,n){return this._connect().then(r=>r.updateOutgoingRoomKeyRequest(e,t,n))}deleteOutgoingRoomKeyRequest(e,t){return this._connect().then(n=>n.deleteOutgoingRoomKeyRequest(e,t))}getAccount(e,t){this._backendPromise.then(n=>{n.getAccount(e,t)})}storeAccount(e,t){this._backendPromise.then(n=>{n.storeAccount(e,t)})}getCrossSigningKeys(e,t){this._backendPromise.then(n=>{n.getCrossSigningKeys(e,t)})}storeCrossSigningKeys(e,t){this._backendPromise.then(n=>{n.storeCrossSigningKeys(e,t)})}countEndToEndSessions(e,t){this._backendPromise.then(n=>{n.countEndToEndSessions(e,t)})}getEndToEndSession(e,t,n,r){this._backendPromise.then(i=>{i.getEndToEndSession(e,t,n,r)})}getEndToEndSessions(e,t,n){this._backendPromise.then(r=>{r.getEndToEndSessions(e,t,n)})}getAllEndToEndSessions(e,t){this._backendPromise.then(n=>{n.getAllEndToEndSessions(e,t)})}storeEndToEndSession(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndSession(e,t,n,r)})}storeEndToEndSessionProblem(e,t,n){return this._backendPromise.then(async r=>{await r.storeEndToEndSessionProblem(e,t,n)})}getEndToEndSessionProblem(e,t){return this._backendPromise.then(async n=>await n.getEndToEndSessionProblem(e,t))}filterOutNotifiedErrorDevices(e){return this._backendPromise.then(async t=>await t.filterOutNotifiedErrorDevices(e))}getEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.getEndToEndInboundGroupSession(e,t,n,r)})}getAllEndToEndInboundGroupSessions(e,t){this._backendPromise.then(n=>{n.getAllEndToEndInboundGroupSessions(e,t)})}addEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.addEndToEndInboundGroupSession(e,t,n,r)})}storeEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndInboundGroupSession(e,t,n,r)})}storeEndToEndInboundGroupSessionWithheld(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndInboundGroupSessionWithheld(e,t,n,r)})}storeEndToEndDeviceData(e,t){this._backendPromise.then(n=>{n.storeEndToEndDeviceData(e,t)})}getEndToEndDeviceData(e,t){this._backendPromise.then(n=>{n.getEndToEndDeviceData(e,t)})}storeEndToEndRoom(e,t,n){this._backendPromise.then(r=>{r.storeEndToEndRoom(e,t,n)})}getEndToEndRooms(e,t){this._backendPromise.then(n=>{n.getEndToEndRooms(e,t)})}getSessionsNeedingBackup(e){return this._connect().then(t=>t.getSessionsNeedingBackup(e))}countSessionsNeedingBackup(e){return this._connect().then(t=>t.countSessionsNeedingBackup(e))}unmarkSessionsNeedingBackup(e,t){return this._connect().then(n=>n.unmarkSessionsNeedingBackup(e,t))}markSessionsNeedingBackup(e,t){return this._connect().then(n=>n.markSessionsNeedingBackup(e,t))}doTxn(e,t,n){return this._connect().then(r=>r.doTxn(e,t,n))}}t.IndexedDBCryptoStore=l,l.STORE_ACCOUNT="account",l.STORE_SESSIONS="sessions",l.STORE_INBOUND_GROUP_SESSIONS="inbound_group_sessions",l.STORE_INBOUND_GROUP_SESSIONS_WITHHELD="inbound_group_sessions_withheld",l.STORE_DEVICE_DATA="device_data",l.STORE_ROOMS="rooms",l.STORE_BACKUP="sessions_needing_backup"}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newVerificationError=i,t.errorFactory=o,t.errorFromEvent=function(e){const t=e.getContent();if(t){const{code:e,reason:n}=t;return{code:e,reason:n}}return{code:"Unknown error",reason:"m.unknown"}},t.newInvalidMessageError=t.newUserMismatchError=t.newKeyMismatchError=t.newUnexpectedMessageError=t.newUnknownMethodError=t.newUnknownTransactionError=t.newTimeoutError=t.newUserCancelledError=void 0;var r=n(19);function i(e,t,n){return(n=n||{}).code=e,n.reason=t,new r.MatrixEvent({type:"m.key.verification.cancel",content:n})}function o(e,t){return function(n){return i(e,t,n)}}const s=o("m.user","Cancelled by user");t.newUserCancelledError=s;const a=o("m.timeout","Timed out");t.newTimeoutError=a;const c=o("m.unknown_transaction","Unknown transaction");t.newUnknownTransactionError=c;const f=o("m.unknown_method","Unknown method");t.newUnknownMethodError=f;const l=o("m.unexpected_message","Unexpected message");t.newUnexpectedMessageError=l;const u=o("m.key_mismatch","Key mismatch");t.newKeyMismatchError=u;const d=o("m.user_error","User mismatch");t.newUserMismatchError=d;const h=o("m.invalid_message","Invalid message");t.newInvalidMessageError=h},function(e,t,n){(function(e){function n(e,t){for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];"."===i?e.splice(r,1):".."===i?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n--;n)e.unshift("..");return e}function r(e,t){if(e.filter)return e.filter(t);for(var n=[],r=0;r=-1&&!i;o--){var s=o>=0?arguments[o]:e.cwd();if("string"!=typeof s)throw new TypeError("Arguments to path.resolve must be strings");s&&(t=s+"/"+t,i="/"===s.charAt(0))}return(i?"/":"")+(t=n(r(t.split("/"),(function(e){return!!e})),!i).join("/"))||"."},t.normalize=function(e){var o=t.isAbsolute(e),s="/"===i(e,-1);return(e=n(r(e.split("/"),(function(e){return!!e})),!o).join("/"))||o||(e="."),e&&s&&(e+="/"),(o?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(r(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,n){function r(e){for(var t=0;t=0&&""===e[n];n--);return t>n?[]:e.slice(t,n-t+1)}e=t.resolve(e).substr(1),n=t.resolve(n).substr(1);for(var i=r(e.split("/")),o=r(n.split("/")),s=Math.min(i.length,o.length),a=s,c=0;c=1;--o)if(47===(t=e.charCodeAt(o))){if(!i){r=o;break}}else i=!1;return-1===r?n?"/":".":n&&1===r?"/":e.slice(0,r)},t.basename=function(e,t){var n=function(e){"string"!=typeof e&&(e+="");var t,n=0,r=-1,i=!0;for(t=e.length-1;t>=0;--t)if(47===e.charCodeAt(t)){if(!i){n=t+1;break}}else-1===r&&(i=!1,r=t+1);return-1===r?"":e.slice(n,r)}(e);return t&&n.substr(-1*t.length)===t&&(n=n.substr(0,n.length-t.length)),n},t.extname=function(e){"string"!=typeof e&&(e+="");for(var t=-1,n=0,r=-1,i=!0,o=0,s=e.length-1;s>=0;--s){var a=e.charCodeAt(s);if(47!==a)-1===r&&(i=!1,r=s+1),46===a?-1===t?t=s:1!==o&&(o=1):-1!==t&&(o=-1);else if(!i){n=s+1;break}}return-1===t||-1===r||0===o||1===o&&t===r-1&&t===n+1?"":e.slice(t,r)};var i="b"==="ab".substr(-1)?function(e,t,n){return e.substr(t,n)}:function(e,t,n){return t<0&&(t=e.length+t),e.substr(t,n)}}).call(this,n(13))},function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE){0;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}}(),e.exports=n(167)},function(e,t,n){"use strict";(function(e){var r=n(16),i=n(7);Object.defineProperty(t,"__esModule",{value:!0});var o={};t.default=void 0;var s=i(n(130));Object.keys(s).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||Object.defineProperty(t,e,{enumerable:!0,get:function(){return s[e]}}))}));var a=r(n(314)),c=r(n(315));let f;s.request((function(e,t){return e.qs=c.default.stringify(e.qs||{},e.qsStringifyOptions),(0,a.default)(e,t)}));try{f=e.indexedDB}catch(e){}f&&s.setCryptoStoreFactory((function(){return new s.IndexedDBCryptoStore(f,"matrix-js-sdk:crypto")}));var l=s;t.default=l,e.matrixcs=s}).call(this,n(6))},function(e,t,n){(function(e){var r=Object.getOwnPropertyDescriptors||function(e){for(var t=Object.keys(e),n={},r=0;r=o)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),c=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),p(n)?r.showHidden=n:n&&t._extend(r,n),b(r.showHidden)&&(r.showHidden=!1),b(r.depth)&&(r.depth=2),b(r.colors)&&(r.colors=!1),b(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=c),l(r,e,r.depth)}function c(e,t){var n=a.styles[t];return n?"["+a.colors[n][0]+"m"+e+"["+a.colors[n][1]+"m":e}function f(e,t){return e}function l(e,n,r){if(e.customInspect&&n&&E(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var i=n.inspect(r,e);return y(i)||(i=l(e,i,r)),i}var o=function(e,t){if(b(t))return e.stylize("undefined","undefined");if(y(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(g(t))return e.stylize(""+t,"number");if(p(t))return e.stylize(""+t,"boolean");if(m(t))return e.stylize("null","null")}(e,n);if(o)return o;var s=Object.keys(n),a=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(s);if(e.showHidden&&(s=Object.getOwnPropertyNames(n)),A(n)&&(s.indexOf("message")>=0||s.indexOf("description")>=0))return u(n);if(0===s.length){if(E(n)){var c=n.name?": "+n.name:"";return e.stylize("[Function"+c+"]","special")}if(v(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(w(n))return e.stylize(Date.prototype.toString.call(n),"date");if(A(n))return u(n)}var f,_="",k=!1,S=["{","}"];(h(n)&&(k=!0,S=["[","]"]),E(n))&&(_=" [Function"+(n.name?": "+n.name:"")+"]");return v(n)&&(_=" "+RegExp.prototype.toString.call(n)),w(n)&&(_=" "+Date.prototype.toUTCString.call(n)),A(n)&&(_=" "+u(n)),0!==s.length||k&&0!=n.length?r<0?v(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),f=k?function(e,t,n,r,i){for(var o=[],s=0,a=t.length;s=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(f,_,S)):S[0]+_+S[1]}function u(e){return"["+Error.prototype.toString.call(e)+"]"}function d(e,t,n,r,i,o){var s,a,c;if((c=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?a=c.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):c.set&&(a=e.stylize("[Setter]","special")),x(r,i)||(s="["+i+"]"),a||(e.seen.indexOf(c.value)<0?(a=m(n)?l(e,c.value,null):l(e,c.value,n-1)).indexOf("\n")>-1&&(a=o?a.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+a.split("\n").map((function(e){return" "+e})).join("\n")):a=e.stylize("[Circular]","special")),b(s)){if(o&&i.match(/^\d+$/))return a;(s=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+a}function h(e){return Array.isArray(e)}function p(e){return"boolean"==typeof e}function m(e){return null===e}function g(e){return"number"==typeof e}function y(e){return"string"==typeof e}function b(e){return void 0===e}function v(e){return _(e)&&"[object RegExp]"===k(e)}function _(e){return"object"==typeof e&&null!==e}function w(e){return _(e)&&"[object Date]"===k(e)}function A(e){return _(e)&&("[object Error]"===k(e)||e instanceof Error)}function E(e){return"function"==typeof e}function k(e){return Object.prototype.toString.call(e)}function S(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(b(o)&&(o=e.env.NODE_DEBUG||""),n=n.toUpperCase(),!s[n])if(new RegExp("\\b"+n+"\\b","i").test(o)){var r=e.pid;s[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else s[n]=function(){};return s[n]},t.inspect=a,a.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},a.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=h,t.isBoolean=p,t.isNull=m,t.isNullOrUndefined=function(e){return null==e},t.isNumber=g,t.isString=y,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=b,t.isRegExp=v,t.isObject=_,t.isDate=w,t.isError=A,t.isFunction=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=n(178);var T=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function I(){var e=new Date,t=[S(e.getHours()),S(e.getMinutes()),S(e.getSeconds())].join(":");return[e.getDate(),T[e.getMonth()],t].join(" ")}function x(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",I(),t.format.apply(t,arguments))},t.inherits=n(179),t._extend=function(e,t){if(!t||!_(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e};var R="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function C(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(R&&e[R]){var t;if("function"!=typeof(t=e[R]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,R,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),i=[],o=0;o>>24]^l[p>>>16&255]^u[m>>>8&255]^d[255&g]^t[y++],s=f[p>>>24]^l[m>>>16&255]^u[g>>>8&255]^d[255&h]^t[y++],a=f[m>>>24]^l[g>>>16&255]^u[h>>>8&255]^d[255&p]^t[y++],c=f[g>>>24]^l[h>>>16&255]^u[p>>>8&255]^d[255&m]^t[y++],h=o,p=s,m=a,g=c;return o=(r[h>>>24]<<24|r[p>>>16&255]<<16|r[m>>>8&255]<<8|r[255&g])^t[y++],s=(r[p>>>24]<<24|r[m>>>16&255]<<16|r[g>>>8&255]<<8|r[255&h])^t[y++],a=(r[m>>>24]<<24|r[g>>>16&255]<<16|r[h>>>8&255]<<8|r[255&p])^t[y++],c=(r[g>>>24]<<24|r[h>>>16&255]<<16|r[p>>>8&255]<<8|r[255&m])^t[y++],[o>>>=0,s>>>=0,a>>>=0,c>>>=0]}var a=[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 n=[],r=[],i=[[],[],[],[]],o=[[],[],[],[]],s=0,a=0,c=0;c<256;++c){var f=a^a<<1^a<<2^a<<3^a<<4;f=f>>>8^255&f^99,n[s]=f,r[f]=s;var l=e[s],u=e[l],d=e[u],h=257*e[f]^16843008*f;i[0][s]=h<<24|h>>>8,i[1][s]=h<<16|h>>>16,i[2][s]=h<<8|h>>>24,i[3][s]=h,h=16843009*d^65537*u^257*l^16843008*s,o[0][f]=h<<24|h>>>8,o[1][f]=h<<16|h>>>16,o[2][f]=h<<8|h>>>24,o[3][f]=h,0===s?s=a=1:(s=l^e[e[e[d^l]]],a^=e[e[a]])}return{SBOX:n,INV_SBOX:r,SUB_MIX:i,INV_SUB_MIX:o}}();function f(e){this._key=i(e),this._reset()}f.blockSize=16,f.keySize=32,f.prototype.blockSize=f.blockSize,f.prototype.keySize=f.keySize,f.prototype._reset=function(){for(var e=this._key,t=e.length,n=t+6,r=4*(n+1),i=[],o=0;o>>24,s=c.SBOX[s>>>24]<<24|c.SBOX[s>>>16&255]<<16|c.SBOX[s>>>8&255]<<8|c.SBOX[255&s],s^=a[o/t|0]<<24):t>6&&o%t==4&&(s=c.SBOX[s>>>24]<<24|c.SBOX[s>>>16&255]<<16|c.SBOX[s>>>8&255]<<8|c.SBOX[255&s]),i[o]=i[o-t]^s}for(var f=[],l=0;l>>24]]^c.INV_SUB_MIX[1][c.SBOX[d>>>16&255]]^c.INV_SUB_MIX[2][c.SBOX[d>>>8&255]]^c.INV_SUB_MIX[3][c.SBOX[255&d]]}this._nRounds=n,this._keySchedule=i,this._invKeySchedule=f},f.prototype.encryptBlockRaw=function(e){return s(e=i(e),this._keySchedule,c.SUB_MIX,c.SBOX,this._nRounds)},f.prototype.encryptBlock=function(e){var t=this.encryptBlockRaw(e),n=r.allocUnsafe(16);return n.writeUInt32BE(t[0],0),n.writeUInt32BE(t[1],4),n.writeUInt32BE(t[2],8),n.writeUInt32BE(t[3],12),n},f.prototype.decryptBlock=function(e){var t=(e=i(e))[1];e[1]=e[3],e[3]=t;var n=s(e,this._invKeySchedule,c.INV_SUB_MIX,c.INV_SBOX,this._nRounds),o=r.allocUnsafe(16);return o.writeUInt32BE(n[0],0),o.writeUInt32BE(n[3],4),o.writeUInt32BE(n[2],8),o.writeUInt32BE(n[1],12),o},f.prototype.scrub=function(){o(this._keySchedule),o(this._invKeySchedule),o(this._key)},e.exports.AES=f},function(e,t,n){var r=n(3).Buffer,i=n(63);e.exports=function(e,t,n,o){if(r.isBuffer(e)||(e=r.from(e,"binary")),t&&(r.isBuffer(t)||(t=r.from(t,"binary")),8!==t.length))throw new RangeError("salt should be Buffer with 8 byte length");for(var s=n/8,a=r.alloc(s),c=r.alloc(o||0),f=r.alloc(0);s>0||o>0;){var l=new i;l.update(f),l.update(e),t&&l.update(t),f=l.digest();var u=0;if(s>0){var d=a.length-s;u=Math.min(s,f.length),f.copy(a,d,0,u),s-=u}if(u0){var h=c.length-o,p=Math.min(o,f.length-u);f.copy(c,h,u,u+p),o-=p}}return f.fill(0),{key:a,iv:c}}},function(e,t,n){"use strict";var r=n(12),i=n(15),o=i.getNAF,s=i.getJSF,a=i.assert;function c(e,t){this.type=e,this.p=new r(t.p,16),this.red=t.prime?r.red(t.prime):r.mont(this.p),this.zero=new r(0).toRed(this.red),this.one=new r(1).toRed(this.red),this.two=new r(2).toRed(this.red),this.n=t.n&&new r(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var n=this.n&&this.p.div(this.n);!n||n.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function f(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){a(e.precomputed);var n=e._getDoubles(),r=o(t,1,this._bitLength),i=(1<=c;t--)f=(f<<1)+r[t];s.push(f)}for(var l=this.jpoint(null,null,null),u=this.jpoint(null,null,null),d=i;d>0;d--){for(c=0;c=0;f--){for(t=0;f>=0&&0===s[f];f--)t++;if(f>=0&&t++,c=c.dblp(t),f<0)break;var l=s[f];a(0!==l),c="affine"===e.type?l>0?c.mixedAdd(i[l-1>>1]):c.mixedAdd(i[-l-1>>1].neg()):l>0?c.add(i[l-1>>1]):c.add(i[-l-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,n,r,i){for(var a=this._wnafT1,c=this._wnafT2,f=this._wnafT3,l=0,u=0;u=1;u-=2){var h=u-1,p=u;if(1===a[h]&&1===a[p]){var m=[t[h],null,null,t[p]];0===t[h].y.cmp(t[p].y)?(m[1]=t[h].add(t[p]),m[2]=t[h].toJ().mixedAdd(t[p].neg())):0===t[h].y.cmp(t[p].y.redNeg())?(m[1]=t[h].toJ().mixedAdd(t[p]),m[2]=t[h].add(t[p].neg())):(m[1]=t[h].toJ().mixedAdd(t[p]),m[2]=t[h].toJ().mixedAdd(t[p].neg()));var g=[-3,-1,-5,-7,0,7,5,1,3],y=s(n[h],n[p]);l=Math.max(y[0].length,l),f[h]=new Array(l),f[p]=new Array(l);for(var b=0;b=0;u--){for(var E=0;u>=0;){var k=!0;for(b=0;b=0&&E++,w=w.dblp(E),u<0)break;for(b=0;b0?S=c[b][T-1>>1]:T<0&&(S=c[b][-T-1>>1].neg()),w="affine"===S.type?w.mixedAdd(S):w.add(S))}}for(u=0;u=Math.ceil((e.bitLength()+1)/t.step)},f.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,i=0;i0&&(g+="?"+y.join("&")),s.open("POST",g),this.useAuthorizationHeader&&s.setRequestHeader("Authorization","Bearer "+this.opts.accessToken),s.setRequestHeader("Content-Type",i),s.send(l),p=t.promise,p.abort=s.abort.bind(s)}else{const e={};r&&c&&(e.filename=c),p=this.authedRequest(n.callback,"POST","/upload",e,l,{prefix:"/_matrix/media/r0",headers:{"Content-Type":i},json:!1,bodyParser:m})}const g=this,y=p.finally((function(){for(let e=0;e{b&&(m&&a.clearTimeout(m),m=a.setTimeout((function(){y=!0,g&&g.abort&&g.abort(),p.reject(new l({error:"Locally timed out waiting for a response",errcode:"ORG.MATRIX.JSSDK_TIMEOUT",timeout:b}))}),b))};v();const _=p.promise;try{g=this.opts.request({uri:n,method:t,withCredentials:!1,qs:r,qsStringifyOptions:s.qsStringifyOptions,useQuerystring:!0,body:i,json:!1,timeout:b,headers:u||{},_matrix_opts:this.opts},(function(t,n,r){if(b&&(a.clearTimeout(m),y))return;f(p,e,c.opts.onlyData,h)(t,n,r)})),g&&("onprogress"in g&&(g.onprogress=e=>{v()}),g.abort&&(_.abort=g.abort.bind(g)))}catch(t){p.reject(t),e&&e(t)}return _}};const f=function(e,t,n,r){return t=t||function(){},function(o,s,a){if(!o)try{s.statusCode>=400?o=function(e,t){const n=e.statusCode,r=function(e){let t;e.getResponseHeader?t=e.getResponseHeader("Content-Type"):e.headers&&(t=e.headers["content-type"]||null);if(!t)return null;try{return(0,i.parse)(t)}catch(e){throw new Error(`Error parsing Content-Type '${t}': ${e}`)}}(e);let o;if(r)if("application/json"===r.type){const e="object"==typeof t?t:JSON.parse(t);o=new l(e)}else"text/plain"===r.type&&(o=new Error(`Server returned ${n} error: ${t}`));o||(o=new Error(`Server returned ${n} error`));return o.httpStatus=n,o}(s,a):r&&(a=r(a))}catch(e){o=new Error(`Error parsing server response: ${e}`)}if(o)e.reject(o),t(o);else{const r={code:s.statusCode,headers:s.headers,data:a};e.resolve(n?a:r),t(null,n?a:r)}}};function l(e){e=e||{},this.errcode=e.errcode,this.name=e.errcode||"Unknown error code",this.message=e.error||"Unknown message",this.data=e}l.prototype=Object.create(Error.prototype),l.prototype.constructor=l}).call(this,n(6))},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.getHttpUriForMxc=function(e,t,n,r,o,s){if("string"!=typeof t||!t)return"";if(0!==t.indexOf("mxc://"))return s?t:"";let a=t.slice(6),c="/_matrix/media/r0/download/";const f={};n&&(f.width=Math.round(n));r&&(f.height=Math.round(r));o&&(f.method=o);i.keys(f).length>0&&(c="/_matrix/media/r0/thumbnail/");const l=a.indexOf("#");let u="";l>=0&&(u=a.substr(l),a=a.substr(0,l));return e+c+a+(0===i.keys(f).length?"":"?"+i.encodeParams(f))+u},t.getIdenticonUri=function(e,t,n,r){if(!t)return null;n||(n=96);r||(r=96);const o={width:n,height:r},s=i.encodeUri("/_matrix/media/unstable/identicon/$ident",{$ident:t});return e+s+(0===i.keys(o).length?"":"?"+i.encodeParams(o))};var i=r(n(8))},function(e,t,n){"use strict";function r(e){Object.defineProperty(this,"deviceId",{enumerable:!0,value:e}),this.algorithms=[],this.keys={},this.verified=i.UNVERIFIED,this.known=!1,this.unsigned={},this.signatures={}}Object.defineProperty(t,"__esModule",{value:!0}),t.DeviceInfo=r,r.fromStorage=function(e,t){const n=new r(t);for(const t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n},r.prototype.toStorage=function(){return{algorithms:this.algorithms,keys:this.keys,verified:this.verified,known:this.known,unsigned:this.unsigned,signatures:this.signatures}},r.prototype.getFingerprint=function(){return this.keys["ed25519:"+this.deviceId]},r.prototype.getIdentityKey=function(){return this.keys["curve25519:"+this.deviceId]},r.prototype.getDisplayName=function(){return this.unsigned.device_display_name||null},r.prototype.isBlocked=function(){return this.verified==i.BLOCKED},r.prototype.isVerified=function(){return this.verified==i.VERIFIED},r.prototype.isUnverified=function(){return this.verified==i.UNVERIFIED},r.prototype.isKnown=function(){return 1==this.known},r.DeviceVerification={VERIFIED:1,UNVERIFIED:0,BLOCKED:-1};const i=r.DeviceVerification},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomString=function(e){let t="";const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(let r=0;r2&&void 0!==arguments[2]?arguments[2]:{},r=Object.create(e.prototype);for(var i in n)r[i]=n[i];return r.constructor=t,t.prototype=r,t}},function(e,t,n){var r=n(90),i=n(5);e.exports=function(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?i(e):t}},function(e,t){function n(t){return e.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},n(t)}e.exports=n},function(e,t,n){var r=n(175);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&r(e,t)}},function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE){0;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}}(),e.exports=n(330)},function(e,t,n){(t=e.exports=n(92)).Stream=t,t.Readable=t,t.Writable=n(61),t.Duplex=n(21),t.Transform=n(95),t.PassThrough=n(193)},function(e,t,n){var r=n(11),i=r.Buffer;function o(e,t){for(var n in e)t[n]=e[n]}function s(e,t,n){return i(e,t,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=r:(o(r,t),t.Buffer=s),o(i,s),s.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,n)},s.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=i(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},s.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},s.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){"use strict";(function(t,r,i){var o=n(44);function s(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;e.entry=null;for(;r;){var i=r.callback;t.pendingcb--,i(n),r=r.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}(t,e)}}e.exports=b;var a,c=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?r:o.nextTick;b.WritableState=y;var f=Object.create(n(30));f.inherits=n(2);var l={deprecate:n(192)},u=n(93),d=n(60).Buffer,h=i.Uint8Array||function(){};var p,m=n(94);function g(){}function y(e,t){a=a||n(21),e=e||{};var r=t instanceof a;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,f=e.writableHighWaterMark,l=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(f||0===f)?f:l,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var 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 n=e._writableState,r=n.sync,i=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,i){--t.pendingcb,n?(o.nextTick(i,r),o.nextTick(k,e,t),e._writableState.errorEmitted=!0,e.emit("error",r)):(i(r),e._writableState.errorEmitted=!0,e.emit("error",r),k(e,t))}(e,n,r,t,i);else{var s=A(n);s||n.corked||n.bufferProcessing||!n.bufferedRequest||w(e,n),r?c(_,e,n,s,i):_(e,n,s,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 s(this)}function b(e){if(a=a||n(21),!(p.call(b,this)||this instanceof a))return new b(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)),u.call(this)}function v(e,t,n,r,i,o,s){t.writelen=r,t.writecb=s,t.writing=!0,t.sync=!0,n?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function _(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),k(e,t)}function w(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,i=new Array(r),o=t.corkedRequestsFree;o.entry=n;for(var a=0,c=!0;n;)i[a]=n,n.isBuf||(c=!1),n=n.next,a+=1;i.allBuffers=c,v(e,t,!0,t.length,i,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new s(t),t.bufferedRequestCount=0}else{for(;n;){var f=n.chunk,l=n.encoding,u=n.callback;if(v(e,t,!1,t.objectMode?1:f.length,f,l,u),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function A(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function E(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),k(e,t)}))}function k(e,t){var n=A(t);return n&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,o.nextTick(E,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}f.inherits(b,u),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:l.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(b,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===b&&(e&&e._writableState instanceof y)}})):p=function(e){return e instanceof this},b.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},b.prototype.write=function(e,t,n){var r,i=this._writableState,s=!1,a=!i.objectMode&&(r=e,d.isBuffer(r)||r instanceof h);return a&&!d.isBuffer(e)&&(e=function(e){return d.from(e)}(e)),"function"==typeof t&&(n=t,t=null),a?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof n&&(n=g),i.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),o.nextTick(t,n)}(this,n):(a||function(e,t,n,r){var i=!0,s=!1;return null===n?s=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(s=new TypeError("Invalid non-string/buffer chunk")),s&&(e.emit("error",s),o.nextTick(r,s),i=!1),i}(this,i,e,n))&&(i.pendingcb++,s=function(e,t,n,r,i,o){if(!n){var s=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=d.from(t,n));return t}(t,r,i);r!==s&&(n=!0,i="buffer",r=s)}var a=t.objectMode?1:r.length;t.length+=a;var c=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(b.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),b.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},b.prototype._writev=null,b.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,k(e,t),n&&(t.finished?o.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)},Object.defineProperty(b.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),b.prototype.destroy=m.destroy,b.prototype._undestroy=m.undestroy,b.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n(13),n(190).setImmediate,n(6))},function(e,t,n){"use strict";var r=n(3).Buffer,i=r.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 o(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&&(r.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=f,t=4;break;case"utf8":this.fillLast=a,t=4;break;case"base64":this.text=l,this.end=u,t=3;break;default:return this.write=d,void(this.end=h)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function s(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function a(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n: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 n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function f(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function l(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?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-n))}function u(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function h(e){return e&&e.length?this.write(e):""}t.StringDecoder=o,o.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return i>0&&(e.lastNeed=i-1),i;if(--r=0)return i>0&&(e.lastNeed=i-2),i;if(--r=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=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},o.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,n){"use strict";var r=n(2),i=n(97),o=n(3).Buffer,s=new Array(16);function a(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function c(e,t){return e<>>32-t}function f(e,t,n,r,i,o,s){return c(e+(t&n|~t&r)+i+o|0,s)+t|0}function l(e,t,n,r,i,o,s){return c(e+(t&r|n&~r)+i+o|0,s)+t|0}function u(e,t,n,r,i,o,s){return c(e+(t^n^r)+i+o|0,s)+t|0}function d(e,t,n,r,i,o,s){return c(e+(n^(t|~r))+i+o|0,s)+t|0}r(a,i),a.prototype._update=function(){for(var e=s,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var n=this._a,r=this._b,i=this._c,o=this._d;n=f(n,r,i,o,e[0],3614090360,7),o=f(o,n,r,i,e[1],3905402710,12),i=f(i,o,n,r,e[2],606105819,17),r=f(r,i,o,n,e[3],3250441966,22),n=f(n,r,i,o,e[4],4118548399,7),o=f(o,n,r,i,e[5],1200080426,12),i=f(i,o,n,r,e[6],2821735955,17),r=f(r,i,o,n,e[7],4249261313,22),n=f(n,r,i,o,e[8],1770035416,7),o=f(o,n,r,i,e[9],2336552879,12),i=f(i,o,n,r,e[10],4294925233,17),r=f(r,i,o,n,e[11],2304563134,22),n=f(n,r,i,o,e[12],1804603682,7),o=f(o,n,r,i,e[13],4254626195,12),i=f(i,o,n,r,e[14],2792965006,17),n=l(n,r=f(r,i,o,n,e[15],1236535329,22),i,o,e[1],4129170786,5),o=l(o,n,r,i,e[6],3225465664,9),i=l(i,o,n,r,e[11],643717713,14),r=l(r,i,o,n,e[0],3921069994,20),n=l(n,r,i,o,e[5],3593408605,5),o=l(o,n,r,i,e[10],38016083,9),i=l(i,o,n,r,e[15],3634488961,14),r=l(r,i,o,n,e[4],3889429448,20),n=l(n,r,i,o,e[9],568446438,5),o=l(o,n,r,i,e[14],3275163606,9),i=l(i,o,n,r,e[3],4107603335,14),r=l(r,i,o,n,e[8],1163531501,20),n=l(n,r,i,o,e[13],2850285829,5),o=l(o,n,r,i,e[2],4243563512,9),i=l(i,o,n,r,e[7],1735328473,14),n=u(n,r=l(r,i,o,n,e[12],2368359562,20),i,o,e[5],4294588738,4),o=u(o,n,r,i,e[8],2272392833,11),i=u(i,o,n,r,e[11],1839030562,16),r=u(r,i,o,n,e[14],4259657740,23),n=u(n,r,i,o,e[1],2763975236,4),o=u(o,n,r,i,e[4],1272893353,11),i=u(i,o,n,r,e[7],4139469664,16),r=u(r,i,o,n,e[10],3200236656,23),n=u(n,r,i,o,e[13],681279174,4),o=u(o,n,r,i,e[0],3936430074,11),i=u(i,o,n,r,e[3],3572445317,16),r=u(r,i,o,n,e[6],76029189,23),n=u(n,r,i,o,e[9],3654602809,4),o=u(o,n,r,i,e[12],3873151461,11),i=u(i,o,n,r,e[15],530742520,16),n=d(n,r=u(r,i,o,n,e[2],3299628645,23),i,o,e[0],4096336452,6),o=d(o,n,r,i,e[7],1126891415,10),i=d(i,o,n,r,e[14],2878612391,15),r=d(r,i,o,n,e[5],4237533241,21),n=d(n,r,i,o,e[12],1700485571,6),o=d(o,n,r,i,e[3],2399980690,10),i=d(i,o,n,r,e[10],4293915773,15),r=d(r,i,o,n,e[1],2240044497,21),n=d(n,r,i,o,e[8],1873313359,6),o=d(o,n,r,i,e[15],4264355552,10),i=d(i,o,n,r,e[6],2734768916,15),r=d(r,i,o,n,e[13],1309151649,21),n=d(n,r,i,o,e[4],4149444226,6),o=d(o,n,r,i,e[11],3174756917,10),i=d(i,o,n,r,e[2],718787259,15),r=d(r,i,o,n,e[9],3951481745,21),this._a=this._a+n|0,this._b=this._b+r|0,this._c=this._c+i|0,this._d=this._d+o|0},a.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=o.allocUnsafe(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=a},function(e,t,n){"use strict";var r=n(11).Buffer,i=n(2),o=n(97),s=new Array(16),a=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],c=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],f=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],l=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],u=[0,1518500249,1859775393,2400959708,2840853838],d=[1352829926,1548603684,1836072691,2053994217,0];function h(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function p(e,t){return e<>>32-t}function m(e,t,n,r,i,o,s,a){return p(e+(t^n^r)+o+s|0,a)+i|0}function g(e,t,n,r,i,o,s,a){return p(e+(t&n|~t&r)+o+s|0,a)+i|0}function y(e,t,n,r,i,o,s,a){return p(e+((t|~n)^r)+o+s|0,a)+i|0}function b(e,t,n,r,i,o,s,a){return p(e+(t&r|n&~r)+o+s|0,a)+i|0}function v(e,t,n,r,i,o,s,a){return p(e+(t^(n|~r))+o+s|0,a)+i|0}i(h,o),h.prototype._update=function(){for(var e=s,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var n=0|this._a,r=0|this._b,i=0|this._c,o=0|this._d,h=0|this._e,_=0|this._a,w=0|this._b,A=0|this._c,E=0|this._d,k=0|this._e,S=0;S<80;S+=1){var T,I;S<16?(T=m(n,r,i,o,h,e[a[S]],u[0],f[S]),I=v(_,w,A,E,k,e[c[S]],d[0],l[S])):S<32?(T=g(n,r,i,o,h,e[a[S]],u[1],f[S]),I=b(_,w,A,E,k,e[c[S]],d[1],l[S])):S<48?(T=y(n,r,i,o,h,e[a[S]],u[2],f[S]),I=y(_,w,A,E,k,e[c[S]],d[2],l[S])):S<64?(T=b(n,r,i,o,h,e[a[S]],u[3],f[S]),I=g(_,w,A,E,k,e[c[S]],d[3],l[S])):(T=v(n,r,i,o,h,e[a[S]],u[4],f[S]),I=m(_,w,A,E,k,e[c[S]],d[4],l[S])),n=h,h=o,o=p(i,10),i=r,r=T,_=k,k=E,E=p(A,10),A=w,w=I}var x=this._b+i+E|0;this._b=this._c+o+k|0,this._c=this._d+h+_|0,this._d=this._e+n+w|0,this._e=this._a+r+A|0,this._a=x},h.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=r.alloc?r.alloc(20):new r(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=h},function(e,t,n){(t=e.exports=function(e){e=e.toLowerCase();var n=t[e];if(!n)throw new Error(e+" is not supported (we accept pull requests)");return new n}).sha=n(205),t.sha1=n(206),t.sha224=n(207),t.sha256=n(98),t.sha384=n(208),t.sha512=n(99)},function(e,t,n){"use strict";var r=n(14);function i(e){this.options=e,this.type=this.options.type,this.blockSize=8,this._init(),this.buffer=new Array(this.blockSize),this.bufferOff=0}e.exports=i,i.prototype._init=function(){},i.prototype.update=function(e){return 0===e.length?[]:"decrypt"===this.type?this._updateDecrypt(e):this._updateEncrypt(e)},i.prototype._buffer=function(e,t){for(var n=Math.min(this.buffer.length-this.bufferOff,e.length-t),r=0;r0;r--)t+=this._buffer(e,t),n+=this._flushBuffer(i,n);return t+=this._buffer(e,t),i},i.prototype.final=function(e){var t,n;return e&&(t=this.update(e)),n="encrypt"===this.type?this._finalEncrypt():this._finalDecrypt(),t?t.concat(n):n},i.prototype._pad=function(e,t){if(0===t)return!1;for(;t=0||!n.umod(e.prime1)||!n.umod(e.prime2);)n=new r(i(t));return n}e.exports=o,o.getr=s}).call(this,n(11).Buffer)},function(e,t,n){"use strict";var r=t;r.version=n(234).version,r.utils=n(15),r.rand=n(69),r.curve=n(118),r.curves=n(72),r.ec=n(245),r.eddsa=n(249)},function(e,t,n){"use strict";var r,i=t,o=n(73),s=n(118),a=n(15).assert;function c(e){"short"===e.type?this.curve=new s.short(e):"edwards"===e.type?this.curve=new s.edwards(e):this.curve=new s.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,a(this.g.validate(),"Invalid curve"),a(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function f(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var n=new c(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:n}),n}})}i.PresetCurve=c,f("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),f("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),f("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),f("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),f("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),f("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),f("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=n(244)}catch(e){r=void 0}f("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})},function(e,t,n){var r=t;r.utils=n(17),r.common=n(33),r.sha=n(238),r.ripemd=n(242),r.hmac=n(243),r.sha1=r.sha.sha1,r.sha256=r.sha.sha256,r.sha224=r.sha.sha224,r.sha384=r.sha.sha384,r.sha512=r.sha.sha512,r.ripemd160=r.ripemd.ripemd160},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MemoryCryptoStore=void 0;var i=n(4),o=r(n(8));t.MemoryCryptoStore=class{constructor(){this._outgoingRoomKeyRequests=[],this._account=null,this._crossSigningKeys=null,this._sessions={},this._sessionProblems={},this._notifiedErrorDevices={},this._inboundGroupSessions={},this._inboundGroupSessionsWithheld={},this._deviceData=null,this._rooms={},this._sessionsNeedingBackup={}}deleteAllData(){return Promise.resolve()}getOrAddOutgoingRoomKeyRequest(e){const t=e.requestBody;return o.promiseTry(()=>{const n=this._getOutgoingRoomKeyRequest(t);return n?(i.logger.log("already have key request outstanding for "+`${t.room_id} / ${t.session_id}: `+"not sending another"),n):(i.logger.log(`enqueueing key request for ${t.room_id} / `+t.session_id),this._outgoingRoomKeyRequests.push(e),e)})}getOutgoingRoomKeyRequest(e){return Promise.resolve(this._getOutgoingRoomKeyRequest(e))}_getOutgoingRoomKeyRequest(e){for(const t of this._outgoingRoomKeyRequests)if(o.deepCompare(t.requestBody,e))return t;return null}getOutgoingRoomKeyRequestByState(e){for(const t of this._outgoingRoomKeyRequests)for(const n of e)if(t.state===n)return Promise.resolve(t);return Promise.resolve(null)}getOutgoingRoomKeyRequestsByTarget(e,t,n){const r=[];for(const i of this._outgoingRoomKeyRequests)for(const o of n)i.state===o&&i.recipients.includes({userId:e,deviceId:t})&&r.push(i);return Promise.resolve(r)}updateOutgoingRoomKeyRequest(e,t,n){for(const r of this._outgoingRoomKeyRequests)if(r.requestId===e)return r.state!=t?(i.logger.warn(`Cannot update room key request from ${t} `+`as it was already updated to ${r.state}`),Promise.resolve(null)):(Object.assign(r,n),Promise.resolve(r));return Promise.resolve(null)}deleteOutgoingRoomKeyRequest(e,t){for(let n=0;ne.time-t.time)}async getEndToEndSessionProblem(e,t){const n=this._sessionProblems[e]||[];if(!n.length)return null;const r=n[n.length-1];for(const e of n)if(e.time>t)return Object.assign({},e,{fixed:r.fixed});return r.fixed?null:r}async filterOutNotifiedErrorDevices(e){const t=this._notifiedErrorDevices,n=[];for(const r of e){const{userId:e,deviceInfo:i}=r;e in t?i.deviceId in t[e]||(n.push(r),t[e][i.deviceId]=!0):(n.push(r),t[e]={[i.deviceId]:!0})}return n}getEndToEndInboundGroupSession(e,t,n,r){const i=e+"/"+t;r(this._inboundGroupSessions[i]||null,this._inboundGroupSessionsWithheld[i]||null)}getAllEndToEndInboundGroupSessions(e,t){for(const e of Object.keys(this._inboundGroupSessions))t({senderKey:e.substr(0,43),sessionId:e.substr(44),sessionData:this._inboundGroupSessions[e]});t(null)}addEndToEndInboundGroupSession(e,t,n,r){const i=e+"/"+t;void 0===this._inboundGroupSessions[i]&&(this._inboundGroupSessions[i]=n)}storeEndToEndInboundGroupSession(e,t,n,r){this._inboundGroupSessions[e+"/"+t]=n}storeEndToEndInboundGroupSessionWithheld(e,t,n,r){const i=e+"/"+t;this._inboundGroupSessionsWithheld[i]=n}getEndToEndDeviceData(e,t){t(this._deviceData)}storeEndToEndDeviceData(e,t){this._deviceData=e}storeEndToEndRoom(e,t,n){this._rooms[e]=t}getEndToEndRooms(e,t){t(this._rooms)}getSessionsNeedingBackup(e){const t=[];for(const n in this._sessionsNeedingBackup)if(this._inboundGroupSessions[n]&&(t.push({senderKey:n.substr(0,43),sessionId:n.substr(44),sessionData:this._inboundGroupSessions[n]}),e&&n.length>=e))break;return Promise.resolve(t)}countSessionsNeedingBackup(){return Promise.resolve(Object.keys(this._sessionsNeedingBackup).length)}unmarkSessionsNeedingBackup(e){for(const t of e){const e=t.senderKey+"/"+t.sessionId;delete this._sessionsNeedingBackup[e]}return Promise.resolve()}markSessionsNeedingBackup(e){for(const t of e){const e=t.senderKey+"/"+t.sessionId;this._sessionsNeedingBackup[e]=!0}return Promise.resolve()}doTxn(e,t,n){return Promise.resolve(n(null))}}},function(e,t,n){"use strict";var r=n(276),i=n(277);function o(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}t.parse=v,t.resolve=function(e,t){return v(e,!1,!0).resolve(t)},t.resolveObject=function(e,t){return e?v(e,!1,!0).resolveObject(t):t},t.format=function(e){i.isString(e)&&(e=v(e));return e instanceof o?e.format():o.prototype.format.call(e)},t.Url=o;var s=/^([a-z0-9.+-]+:)/i,a=/:[0-9]*$/,c=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,f=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),l=["'"].concat(f),u=["%","/","?",";","#"].concat(l),d=["/","?","#"],h=/^[+a-z0-9A-Z_-]{0,63}$/,p=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,m={javascript:!0,"javascript:":!0},g={javascript:!0,"javascript:":!0},y={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},b=n(278);function v(e,t,n){if(e&&i.isObject(e)&&e instanceof o)return e;var r=new o;return r.parse(e,t,n),r}o.prototype.parse=function(e,t,n){if(!i.isString(e))throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var o=e.indexOf("?"),a=-1!==o&&o127?M+="x":M+=P[D];if(!M.match(h)){var N=C.slice(0,I),j=C.slice(I+1),U=P.match(p);U&&(N.push(U[1]),j.unshift(U[2])),j.length&&(v="/"+j.join(".")+v),this.hostname=N.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),R||(this.hostname=r.toASCII(this.hostname));var L=this.port?":"+this.port:"",F=this.hostname||"";this.host=F+L,this.href+=this.host,R&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==v[0]&&(v="/"+v))}if(!m[A])for(I=0,O=l.length;I0)&&n.host.split("@"))&&(n.auth=R.shift(),n.host=n.hostname=R.shift());return n.search=e.search,n.query=e.query,i.isNull(n.pathname)&&i.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.href=n.format(),n}if(!E.length)return n.pathname=null,n.search?n.path="/"+n.search:n.path=null,n.href=n.format(),n;for(var S=E.slice(-1)[0],T=(n.host||e.host||E.length>1)&&("."===S||".."===S)||""===S,I=0,x=E.length;x>=0;x--)"."===(S=E[x])?E.splice(x,1):".."===S?(E.splice(x,1),I++):I&&(E.splice(x,1),I--);if(!w&&!A)for(;I--;I)E.unshift("..");!w||""===E[0]||E[0]&&"/"===E[0].charAt(0)||E.unshift(""),T&&"/"!==E.join("/").substr(-1)&&E.push("");var R,C=""===E[0]||E[0]&&"/"===E[0].charAt(0);k&&(n.hostname=n.host=C?"":E.length?E.shift():"",(R=!!(n.host&&n.host.indexOf("@")>0)&&n.host.split("@"))&&(n.auth=R.shift(),n.host=n.hostname=R.shift()));return(w=w||n.host&&E.length)&&!C&&E.unshift(""),E.length?n.pathname=E.join("/"):(n.pathname=null,n.path=null),i.isNull(n.pathname)&&i.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.auth=e.auth||n.auth,n.slashes=n.slashes||e.slashes,n.href=n.format(),n},o.prototype.parseHost=function(){var e=this.host,t=a.exec(e);t&&(":"!==(t=t[0])&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PushProcessor=s;var r=n(8);const i=["override","content","room","sender","underride"],o=[{rule_id:".m.rule.tombstone",default:!0,enabled:!0,conditions:[{kind:"event_match",key:"type",pattern:"m.room.tombstone"},{kind:"event_match",key:"state_key",pattern:""}],actions:["notify",{set_tweak:"highlight",value:!0}]},{rule_id:".m.rule.reaction",default:!0,enabled:!0,conditions:[{kind:"event_match",key:"type",pattern:"m.reaction"}],actions:["dont_notify"]}];function s(e){const t={},n=(e,t,n)=>{for(let r=0;r]*)([0-9]*)$/);if(!o)return!1;const s=o[1],a=parseInt(o[2]);if(isNaN(a))return!1;switch(s){case"":case"==":return i==a;case"<":return i":return i>a;case"<=":return i<=a;case">=":return i>=a;default:return!1}},u=function(t,n){let i=n.getContent();if(n.isEncrypted()&&n.getClearContent()&&(i=n.getClearContent()),!i||!i.body||"string"!=typeof i.body)return!1;const o=e.getRoom(n.getRoomId());if(!(o&&o.currentState&&o.currentState.members&&o.currentState.getMember(e.credentials.userId)))return!1;const s=o.currentState.getMember(e.credentials.userId).name,a=new RegExp("(^|\\W)"+(0,r.escapeRegExp)(s)+"(\\W|$)","i");return i.body.search(a)>-1},d=function(e,t){return!1},h=function(e,t){if(!e.key)return!1;const n=m(e.key,t);if("string"!=typeof n)return!1;if(e.value)return e.value===n;let r;return r="content.body"==e.key?p("(^|\\W)",e.pattern,"(\\W|$)"):p("^",e.pattern,"$"),!!n.match(r)},p=function(e,n,i){return t[n]?t[n]:(t[n]=new RegExp(e+(0,r.globToRegexp)(n)+i,"i"),t[n])},m=function(e,t){const n=e.split(".");let i;const o=n[0];for("content"===o?(i=t.getContent(),n.shift()):"type"===o?(i=t.getType(),n.shift()):i=t.event;n.length>0;){const e=n.shift();if((0,r.isNullOrUndefined)(i[e]))return null;i=i[e]}return i},g=function(t,r){const i=function(t,r){if(!r||!r.device)return null;if(t.getSender()==e.credentials.userId)return null;const i=Object.keys(r.device);for(let e=0;et.rule_id===e.rule_id)){const t=e.rule_id;console.warn(`Adding default global override for ${t}`),n.push(e)}}return t}(e.pushRules);return g(t,n)},this.getPushRuleById=function(t){for(const n of["device","global"])if(void 0!==e.pushRules[n])for(const r of i)if(void 0!==e.pushRules[n][r])for(const i of e.pushRules[n][r])if(i.rule_id===t)return i;return null}}s.actionListToActionsObject=function(e){const t={notify:!1,tweaks:{}};for(let n=0;n{const t=o.find(t=>t.rule_id===e.rule_id);return t?(e.default=t.default,e.conditions=t.conditions,e.actions=t.actions,e):e}),t}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Filter=o;var r=n(284);function i(e,t,n){const r=t.split(".");let i=e;for(let e=0;et!==e)}if(r)return t+" ("+e+")";return t}(this.userId,e.getDirectionalContent().displayname,t),this.rawDisplayName=e.getDirectionalContent().displayname||this.userId,n!==this.membership&&(this._updateModifiedTime(),this.emit("RoomMember.membership",e,this,n)),r!==this.name&&(this._updateModifiedTime(),this.emit("RoomMember.name",e,this,r))},a.prototype.setPowerLevelEvent=function(e){if("m.room.power_levels"!==e.getType())return;const t=e.getDirectionalContent();let n=t.users_default||0;s.forEach(s.values(t.users),(function(e){n=Math.max(n,e)}));const r=this.powerLevel,i=this.powerLevelNorm;t.users&&void 0!==t.users[this.userId]?this.powerLevel=t.users[this.userId]:void 0!==t.users_default?this.powerLevel=t.users_default:this.powerLevel=0,this.powerLevelNorm=0,n>0&&(this.powerLevelNorm=100*this.powerLevel/n),r===this.powerLevel&&i===this.powerLevelNorm||(this._updateModifiedTime(),this.emit("RoomMember.powerLevel",e,this))},a.prototype.setTypingEvent=function(e){if("m.typing"!==e.getType())return;const t=this.typing;this.typing=!1;const n=e.getContent().user_ids;s.isArray(n)&&(-1!==n.indexOf(this.userId)&&(this.typing=!0),t!==this.typing&&(this._updateModifiedTime(),this.emit("RoomMember.typing",e,this)))},a.prototype._updateModifiedTime=function(){this._modified=Date.now()},a.prototype.getLastModifiedTime=function(){return this._modified},a.prototype.isKicked=function(){return"leave"===this.membership&&this.events.member.getSender()!==this.events.member.getStateKey()},a.prototype.getDMInviter=function(){if(this.events.member){const e=this.events.member;let t=e.getContent(),n=e.getSender();if("join"===t.membership&&(t=e.getPrevContent(),n=e.getUnsigned().prev_sender),"invite"===t.membership&&t.is_direct)return n}},a.prototype.getAvatarUrl=function(e,t,n,r,i,s){void 0===i&&(i=!0);const a=this.getMxcAvatarUrl();if(!a&&!i)return null;const c=(0,o.getHttpUriForMxc)(e,a,t,n,r,s);return c||(i?(0,o.getIdenticonUri)(e,this.userId,t,n):null)},a.prototype.getMxcAvatarUrl=function(){return this.events.member?this.events.member.getDirectionalContent().avatar_url:this.user?this.user.avatarUrl:null}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ReEmitter=void 0;t.ReEmitter=class{constructor(e){this.target=e,this.boundHandlers={}}_handleEvent(e,...t){this.target.emit(e,...t)}reEmit(e,t){const n=(t,...n)=>{t(...n,e)};for(const r of t){void 0===this.boundHandlers[r]&&(this.boundHandlers[r]=this._handleEvent.bind(this,r));const t=n.bind(this,this.boundHandlers[r]);e.on(r,t)}}}},function(e,t,n){"use strict";function r(e,t){const n=`Store is invalid because ${e}, `+"please stop the client, delete all data and start the client again",r=Reflect.construct(Error,[n]);return Reflect.setPrototypeOf(r,Reflect.getPrototypeOf(this)),r.reason=e,r.value=t,r}function i(e){const t=`Crypto store is invalid because ${e}, `+"please stop the client, delete all data and start the client again",n=Reflect.construct(Error,[t]);return Reflect.setPrototypeOf(n,Reflect.getPrototypeOf(this)),n.reason=e,n.name="InvalidCryptoStoreError",n}Object.defineProperty(t,"__esModule",{value:!0}),t.InvalidStoreError=r,t.InvalidCryptoStoreError=i,r.TOGGLED_LAZY_LOADING="TOGGLED_LAZY_LOADING",r.prototype=Object.create(Error.prototype,{constructor:{value:Error,enumerable:!1,writable:!0,configurable:!0}}),Reflect.setPrototypeOf(r,Error),i.TOO_NEW="TOO_NEW",i.prototype=Object.create(Error.prototype,{constructor:{value:Error,enumerable:!1,writable:!0,configurable:!0}}),Reflect.setPrototypeOf(i,Error)},function(e,t,n){"use strict";for(var r=/[\\\"\x00-\x1F]/g,i={},o=0;o<32;++o)i[String.fromCharCode(o)]="\\U"+("0000"+o.toString(16)).slice(-4).toUpperCase();function s(e){return r.lastIndex=0,e.replace(r,(function(e){return i[e]}))}function a(e){switch(typeof e){case"string":return'"'+s(e)+'"';case"number":return isFinite(e)?e:"null";case"boolean":return e;case"object":return null===e?"null":Array.isArray(e)?function(e){for(var t="[",n="",r=0;re+": "+t[e]).join(", "));return n+="]",n}(this,n)}}t.DecryptionError=o;class s extends Error{constructor(e,t){super(e),this.name="UnknownDeviceError",this.devices=t}}t.UnknownDeviceError=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VerificationRequest=t.PHASE_DONE=t.PHASE_CANCELLED=t.PHASE_STARTED=t.PHASE_REQUESTED=t.PHASE_UNSENT=t.DONE_TYPE=t.CANCEL_TYPE=t.START_TYPE=t.REQUEST_TYPE=t.EVENT_PREFIX=void 0;var r=n(4),i=n(304),o=n(10),s=n(37);const a="m.key.verification.";t.EVENT_PREFIX=a;const c=a+"request";t.REQUEST_TYPE=c;const f=a+"start";t.START_TYPE=f;const l=a+"cancel";t.CANCEL_TYPE=l;t.DONE_TYPE="m.key.verification.done";t.PHASE_UNSENT=1;t.PHASE_REQUESTED=2;t.PHASE_STARTED=4;t.PHASE_CANCELLED=5;t.PHASE_DONE=6;class u extends o.EventEmitter{constructor(e,t,n,r){super(),this.channel=e,this._verificationMethods=t,this._client=r,this._commonMethods=[],this._setPhase(1,!1),this._requestEvent=null,this._otherUserId=n,this._initiatedByMe=null,this._startTimestamp=null}static validateEvent(e,t,n,i){const o=t.getContent();if(!e.startsWith(a))return!1;if(e===c&&!Array.isArray(o.methods))return!1;if(!(e!==c&&e!==f||"string"==typeof o.from_device&&0!==o.from_device.length))return!1;if(Number.isFinite(n)){const e=Date.now()-n;if(e>597e3||e<-3e5)return r.logger.log("received verification that is too old or from the future"),!1}return!0}get methods(){return this._commonMethods}get timeout(){const e=Date.now()-this._startTimestamp;return Math.max(0,6e5-e)}get event(){return this._requestEvent}get phase(){return this._phase}get verifier(){return this._verifier}get pending(){return 1!==this._phase&&6!==this._phase&&5!==this._phase}get initiatedByMe(){return this._initiatedByMe}get requestingUserId(){return this.initiatedByMe?this._client.getUserId():this._otherUserId}get receivingUserId(){return this.initiatedByMe?this._otherUserId:this._client.getUserId()}beginKeyVerification(e,t=null){if(!this._verifier&&this._hasValidPreStartPhase()){if(this._commonMethods.length&&!this._commonMethods.includes(e))throw(0,s.newUnknownMethodError)();if(this._verifier=this._createVerifier(e,null,t),!this._verifier)throw(0,s.newUnknownMethodError)()}return this._verifier}async sendRequest(){if(1===this._phase){this._initiatedByMe=!0,this._setPhase(2,!1);const e=[...this._verificationMethods.keys()];await this.channel.send(c,{methods:e}),this.emit("change")}}async cancel({reason:e="User declined",code:t="m.user"}={}){if(5!==this._phase){if(this._verifier)return this._verifier.cancel((0,s.errorFactory)(t,e));this._setPhase(5,!1),await this.channel.send(l,{code:t,reason:e}),this.emit("change")}}waitForVerifier(){return this.verifier?Promise.resolve(this.verifier):new Promise(e=>{const t=()=>{this.verifier&&(this.off("change",t),e(this.verifier))};this.on("change",t)})}_setPhase(e,t=!0){this._phase=e,t&&this.emit("change")}async handleEvent(e,t,n){const r=t.getContent();e!==c&&e!==f||null===this._startTimestamp&&(this._startTimestamp=n),e===c?await this._handleRequest(r,t):e===f&&await this._handleStart(r,t),this._verifier&&(e===l||this._verifier.events&&this._verifier.events.includes(e))&&this._verifier.handleEvent(t),e===l?this._handleCancel():"m.key.verification.done"===e&&this._handleDone()}async _handleRequest(e,t){if(1===this._phase){const n=e.methods;this._commonMethods=n.filter(e=>this._verificationMethods.has(e)),this._requestEvent=t,this._initiatedByMe=this._wasSentByMe(t),this._setPhase(2)}else 2!==this._phase&&(r.logger.warn("Ignoring flagged verification request from "+t.getSender()),await this.cancel((0,s.errorFromEvent)((0,s.newUnexpectedMessageError)())))}_hasValidPreStartPhase(){return 2===this._phase||this.channel.constructor.canCreateRequest(f)&&1===this._phase}async _handleStart(e,t){if(this._hasValidPreStartPhase()){const{method:n}=e;this._verificationMethods.has(n)?(1===this.phase&&(this._initiatedByMe=this._wasSentByMe(t)),this._verifier=this._createVerifier(n,t),this._setPhase(4)):await this.cancel((0,s.errorFromEvent)((0,s.newUnknownMethodError)()))}}handleVerifierSend(e,t){e===l?this._handleCancel():e===f&&(1!==this._phase&&2!==this._phase||(this._initiatedByMe=1===this.phase,this._setPhase(4)))}_handleCancel(){5!==this._phase&&this._setPhase(5)}_handleDone(){4===this._phase&&this._setPhase(6)}_createVerifier(e,t=null,n=null){const r=t&&this._wasSentByMe(t),{userId:o,deviceId:s}=this._getVerifierTarget(t,n),a=this._verificationMethods.get(e);if(a)return new a(new i.RequestCallbackChannel(this,this.channel),this._client,o,s,r?null:t);console.warn("could not find verifier constructor for method",e)}_getVerifierTarget(e,t){if(t)return t;{let t;if(e&&!this._wasSentByMe(e))t=e;else{if(!this._requestEvent||this._wasSentByMe(this._requestEvent))throw new Error("can't determine who the verifier should be targeted at. No .request or .start event and no targetDevice");t=this._requestEvent}const n=t.getSender(),r=t.getContent();return{userId:n,deviceId:r&&r.from_device}}}_wasSentByMe(e){if(e.getSender()!==this._client.getUserId())return!1;const t=e.getContent();return!(!t||t.from_device!==this._client.getDeviceId())}}t.VerificationRequest=u},function(e,t,n){"use strict";var r=Object.prototype.hasOwnProperty,i=Array.isArray,o=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),s=function(e,t){for(var n=t&&t.plainObjects?Object.create(null):{},r=0;r1;){var t=e.pop(),n=t.obj[t.prop];if(i(n)){for(var r=[],o=0;o=48&&a<=57||a>=65&&a<=90||a>=97&&a<=122?i+=r.charAt(s):a<128?i+=o[a]:a<2048?i+=o[192|a>>6]+o[128|63&a]:a<55296||a>=57344?i+=o[224|a>>12]+o[128|a>>6&63]+o[128|63&a]:(s+=1,a=65536+((1023&a)<<10|1023&r.charCodeAt(s)),i+=o[240|a>>18]+o[128|a>>12&63]+o[128|a>>6&63]+o[128|63&a])}return i},isBuffer:function(e){return!(!e||"object"!=typeof e)&&!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},isRegExp:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},maybeMap:function(e,t){if(i(e)){for(var n=[],r=0;r"),P=s(")"),M=s("&");t.Base=o,t.DOMAIN=a,t.AT=c,t.COLON=f,t.DOT=l,t.PUNCTUATION=u,t.LOCALHOST=d,t.NL=h,t.NUM=p,t.PLUS=m,t.POUND=g,t.QUERY=v,t.PROTOCOL=y,t.MAILTO=b,t.SLASH=_,t.UNDERSCORE=w,t.SYM=A,t.TLD=E,t.WS=k,t.OPENBRACE=S,t.OPENBRACKET=T,t.OPENANGLEBRACKET=I,t.OPENPAREN=x,t.CLOSEBRACE=R,t.CLOSEBRACKET=C,t.CLOSEANGLEBRACKET=O,t.CLOSEPAREN=P,t.AMPERSAND=M},function(e,t,n){var r=n(172),i=n(173),o=n(174);e.exports=function(e){return r(e)||i(e)||o()}},function(e,t,n){"use strict";var r=n(0),i=n.n(r),o=(n(9),n(159)),s=n.n(o);t.a=function(e){var t=e.message,n=e.userId,r=e.botId,o=e.client,a=function(){switch(t.sender){case"from-me":case n:return"from-me";case r:return"from-bot";default:return"from-support"}};if(e.placeholder)return i.a.createElement("div",{className:"message from-me placeholder"},i.a.createElement("div",{className:"text"},t.content.body));if("m.file"===t.content.msgtype){var c=o.mxcUrlToHttp(t.content.url);return(i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text"},i.a.createElement("a",{href:c,target:"_blank",rel:"noopener noreferrer"},t.content.body))))}if(t.content.formatted_body)return i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text",dangerouslySetInnerHTML:{__html:t.content.formatted_body}}));return i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text"},i.a.createElement(s.a,{options:{linkAttributes:{rel:"noreferrer noopener"}}},t.content.body)))}},function(e,t,n){"use strict";var r=n(0),i=n.n(r);n(9);t.a=function(e){var t=e.handleToggleOpen,n=e.handleExitChat,r=e.opened;return(i.a.createElement("div",{className:"widget-header"},i.a.createElement("button",{type:"button",className:"widget-header-minimize",onClick:t,onKeyPress:t,"aria-label":"Minimize the chat window",title:"Minimize the chat window"},i.a.createElement("span",{className:"btn-icon arrow ".concat(r?"opened":"closed")},"⌃"),i.a.createElement("span",null,"".concat(r?"Hide":"Show"," the chat"))),i.a.createElement("button",{type:"button",className:"widget-header-close",onClick:n,onKeyPress:n,"aria-label":"Exit the chat",title:"Exit the chat"},i.a.createElement("span",{className:"btn-icon"},"×"))))}},function(e,t,n){"use strict";e.exports=n(168)},function(e,t){function n(t){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?e.exports=n=function(e){return typeof e}:e.exports=n=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(t)}e.exports=n},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){"use strict";(function(t,r){var i=n(44);e.exports=v;var o,s=n(91);v.ReadableState=b;n(10).EventEmitter;var a=function(e,t){return e.listeners(t).length},c=n(93),f=n(60).Buffer,l=t.Uint8Array||function(){};var u=Object.create(n(30));u.inherits=n(2);var d=n(187),h=void 0;h=d&&d.debuglog?d.debuglog("stream"):function(){};var p,m=n(188),g=n(94);u.inherits(v,c);var y=["error","close","destroy","pause","resume"];function b(e,t){e=e||{};var r=t instanceof(o=o||n(21));this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var i=e.highWaterMark,s=e.readableHighWaterMark,a=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(s||0===s)?s:a,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,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=n(62).StringDecoder),this.decoder=new p(e.encoding),this.encoding=e.encoding)}function v(e){if(o=o||n(21),!(this instanceof v))return new v(e);this._readableState=new b(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 _(e,t,n,r,i){var o,s=e._readableState;null===t?(s.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,E(e)}(e,s)):(i||(o=function(e,t){var n;r=t,f.isBuffer(r)||r instanceof l||"string"==typeof t||void 0===t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk"));var r;return n}(s,t)),o?e.emit("error",o):s.objectMode||t&&t.length>0?("string"==typeof t||s.objectMode||Object.getPrototypeOf(t)===f.prototype||(t=function(e){return f.from(e)}(t)),r?s.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):w(e,s,t,!0):s.ended?e.emit("error",new Error("stream.push() after EOF")):(s.reading=!1,s.decoder&&!n?(t=s.decoder.write(t),s.objectMode||0!==t.length?w(e,s,t,!1):S(e,s)):w(e,s,t,!1))):r||(s.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=8388608?e=8388608:(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 E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(h("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i.nextTick(k,e):k(e))}function k(e){h("emit readable"),e.emit("readable"),R(e)}function S(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(T,e,t))}function T(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;eo.length?o.length:e;if(s===o.length?i+=o:i+=o.slice(0,e),0===(e-=s)){s===o.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=o.slice(s));break}++r}return t.length-=r,i}(e,t):function(e,t){var n=f.allocUnsafe(e),r=t.head,i=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var o=r.data,s=e>o.length?o.length:e;if(o.copy(n,n.length-e,0,s),0===(e-=s)){s===o.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=o.slice(s));break}++i}return t.length-=i,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function O(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i.nextTick(P,t,e))}function P(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function M(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return h("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?O(this):E(this),null;if(0===(e=A(e,t))&&t.ended)return 0===t.length&&O(this),null;var r,i=t.needReadable;return h("need readable",i),(0===t.length||t.length-e0?C(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&O(this)),null!==r&&this.emit("data",r),r},v.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},v.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,h("pipe count=%d opts=%j",o.pipesCount,t);var c=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?l:v;function f(t,r){h("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,h("cleanup"),e.removeListener("close",y),e.removeListener("finish",b),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",f),n.removeListener("end",l),n.removeListener("end",v),n.removeListener("data",m),d=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){h("onend"),e.end()}o.endEmitted?i.nextTick(c):n.once("end",c),e.on("unpipe",f);var u=function(e){return function(){var t=e._readableState;h("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,R(e))}}(n);e.on("drain",u);var d=!1;var p=!1;function m(t){h("ondata"),p=!1,!1!==e.write(t)||p||((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==M(o.pipes,e))&&!d&&(h("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,p=!0),n.pause())}function g(t){h("onerror",t),v(),e.removeListener("error",g),0===a(e,"error")&&e.emit("error",t)}function y(){e.removeListener("finish",b),v()}function b(){h("onfinish"),e.removeListener("close",y),v()}function v(){h("unpipe"),n.unpipe(e)}return n.on("data",m),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?s(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",g),e.once("close",y),e.once("finish",b),e.emit("pipe",n),o.flowing||(h("pipe resume"),n.resume()),e},v.prototype.unpipe=function(e){var t=this._readableState,n={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,n),this);if(!e){var r=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o=this._blockSize;){for(var o=this._blockOffset;o0;++s)this._length[s]+=a,(a=this._length[s]/4294967296|0)>0&&(this._length[s]-=4294967296*a);return this},o.prototype._update=function(){throw new Error("_update is not implemented")},o.prototype.digest=function(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 n=0;n<4;++n)this._length[n]=0;return t},o.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=o},function(e,t,n){var r=n(2),i=n(24),o=n(3).Buffer,s=[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],a=new Array(64);function c(){this.init(),this._w=a,i.call(this,64,56)}function f(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function u(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function d(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function h(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}r(c,i),c.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},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,i=0|this._b,o=0|this._c,a=0|this._d,c=0|this._e,p=0|this._f,m=0|this._g,g=0|this._h,y=0;y<16;++y)n[y]=e.readInt32BE(4*y);for(;y<64;++y)n[y]=0|(((t=n[y-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+n[y-7]+h(n[y-15])+n[y-16];for(var b=0;b<64;++b){var v=g+d(c)+f(c,p,m)+s[b]+n[b]|0,_=u(r)+l(r,i,o)|0;g=m,m=p,p=c,c=a+v|0,a=o,o=i,i=r,r=v+_|0}this._a=r+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=a+this._d|0,this._e=c+this._e|0,this._f=p+this._f|0,this._g=m+this._g|0,this._h=g+this._h|0},c.prototype._hash=function(){var e=o.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=c},function(e,t,n){var r=n(2),i=n(24),o=n(3).Buffer,s=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],a=new Array(160);function c(){this.init(),this._w=a,i.call(this,128,112)}function f(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function u(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function d(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function h(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function m(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function g(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}r(c,i),c.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},c.prototype._update=function(e){for(var t=this._w,n=0|this._ah,r=0|this._bh,i=0|this._ch,o=0|this._dh,a=0|this._eh,c=0|this._fh,b=0|this._gh,v=0|this._hh,_=0|this._al,w=0|this._bl,A=0|this._cl,E=0|this._dl,k=0|this._el,S=0|this._fl,T=0|this._gl,I=0|this._hl,x=0;x<32;x+=2)t[x]=e.readInt32BE(4*x),t[x+1]=e.readInt32BE(4*x+4);for(;x<160;x+=2){var R=t[x-30],C=t[x-30+1],O=h(R,C),P=p(C,R),M=m(R=t[x-4],C=t[x-4+1]),D=g(C,R),B=t[x-14],N=t[x-14+1],j=t[x-32],U=t[x-32+1],L=P+N|0,F=O+B+y(L,P)|0;F=(F=F+M+y(L=L+D|0,D)|0)+j+y(L=L+U|0,U)|0,t[x]=F,t[x+1]=L}for(var q=0;q<160;q+=2){F=t[q],L=t[q+1];var z=l(n,r,i),K=l(_,w,A),G=u(n,_),H=u(_,n),V=d(a,k),Q=d(k,a),W=s[q],Y=s[q+1],X=f(a,c,b),J=f(k,S,T),Z=I+Q|0,$=v+V+y(Z,I)|0;$=($=($=$+X+y(Z=Z+J|0,J)|0)+W+y(Z=Z+Y|0,Y)|0)+F+y(Z=Z+L|0,L)|0;var ee=H+K|0,te=G+z+y(ee,H)|0;v=b,I=T,b=c,T=S,c=a,S=k,a=o+$+y(k=E+Z|0,E)|0,o=i,E=A,i=r,A=w,r=n,w=_,n=$+te+y(_=Z+ee|0,Z)|0}this._al=this._al+_|0,this._bl=this._bl+w|0,this._cl=this._cl+A|0,this._dl=this._dl+E|0,this._el=this._el+k|0,this._fl=this._fl+S|0,this._gl=this._gl+T|0,this._hl=this._hl+I|0,this._ah=this._ah+n+y(this._al,_)|0,this._bh=this._bh+r+y(this._bl,w)|0,this._ch=this._ch+i+y(this._cl,A)|0,this._dh=this._dh+o+y(this._dl,E)|0,this._eh=this._eh+a+y(this._el,k)|0,this._fh=this._fh+c+y(this._fl,S)|0,this._gh=this._gh+b+y(this._gl,T)|0,this._hh=this._hh+v+y(this._hl,I)|0},c.prototype._hash=function(){var e=o.allocUnsafe(64);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=c},function(e,t,n){"use strict";var r=n(2),i=n(209),o=n(18),s=n(3).Buffer,a=n(101),c=n(64),f=n(65),l=s.alloc(128);function u(e,t){o.call(this,"digest"),"string"==typeof t&&(t=s.from(t));var n="sha512"===e||"sha384"===e?128:64;(this._alg=e,this._key=t,t.length>n)?t=("rmd160"===e?new c:f(e)).update(t).digest():t.lengthn||o!=o)throw new TypeError("Bad key length")}}).call(this,n(11).Buffer)},function(e,t,n){(function(t){var n;t.browser?n="utf-8":n=parseInt(t.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary";e.exports=n}).call(this,n(13))},function(e,t,n){var r=n(101),i=n(64),o=n(65),s=n(104),a=n(105),c=n(3).Buffer,f=c.alloc(128),l={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function u(e,t,n){var s=function(e){function t(t){return o(e).update(t).digest()}return"rmd160"===e||"ripemd160"===e?function(e){return(new i).update(e).digest()}:"md5"===e?r:t}(e),a="sha512"===e||"sha384"===e?128:64;t.length>a?t=s(t):t.length>>0},t.writeUInt32BE=function(e,t,n){e[0+n]=t>>>24,e[1+n]=t>>>16&255,e[2+n]=t>>>8&255,e[3+n]=255&t},t.ip=function(e,t,n,r){for(var i=0,o=0,s=6;s>=0;s-=2){for(var a=0;a<=24;a+=8)i<<=1,i|=t>>>a+s&1;for(a=0;a<=24;a+=8)i<<=1,i|=e>>>a+s&1}for(s=6;s>=0;s-=2){for(a=1;a<=25;a+=8)o<<=1,o|=t>>>a+s&1;for(a=1;a<=25;a+=8)o<<=1,o|=e>>>a+s&1}n[r+0]=i>>>0,n[r+1]=o>>>0},t.rip=function(e,t,n,r){for(var i=0,o=0,s=0;s<4;s++)for(var a=24;a>=0;a-=8)i<<=1,i|=t>>>a+s&1,i<<=1,i|=e>>>a+s&1;for(s=4;s<8;s++)for(a=24;a>=0;a-=8)o<<=1,o|=t>>>a+s&1,o<<=1,o|=e>>>a+s&1;n[r+0]=i>>>0,n[r+1]=o>>>0},t.pc1=function(e,t,n,r){for(var i=0,o=0,s=7;s>=5;s--){for(var a=0;a<=24;a+=8)i<<=1,i|=t>>a+s&1;for(a=0;a<=24;a+=8)i<<=1,i|=e>>a+s&1}for(a=0;a<=24;a+=8)i<<=1,i|=t>>a+s&1;for(s=1;s<=3;s++){for(a=0;a<=24;a+=8)o<<=1,o|=t>>a+s&1;for(a=0;a<=24;a+=8)o<<=1,o|=e>>a+s&1}for(a=0;a<=24;a+=8)o<<=1,o|=e>>a+s&1;n[r+0]=i>>>0,n[r+1]=o>>>0},t.r28shl=function(e,t){return e<>>28-t};var r=[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,n,i){for(var o=0,s=0,a=r.length>>>1,c=0;c>>r[c]&1;for(c=a;c>>r[c]&1;n[i+0]=o>>>0,n[i+1]=s>>>0},t.expand=function(e,t,n){var r=0,i=0;r=(1&e)<<5|e>>>27;for(var o=23;o>=15;o-=4)r<<=6,r|=e>>>o&63;for(o=11;o>=3;o-=4)i|=e>>>o&63,i<<=6;i|=(31&e)<<1|e>>>31,t[n+0]=r>>>0,t[n+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 n=0,r=0;r<4;r++){n<<=4,n|=i[64*r+(e>>>18-6*r&63)]}for(r=0;r<4;r++){n<<=4,n|=i[256+64*r+(t>>>18-6*r&63)]}return n>>>0};var o=[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,n=0;n>>o[n]&1;return t>>>0},t.padSplit=function(e,t,n){for(var r=e.toString(2);r.length>>1];n=o.r28shl(n,a),i=o.r28shl(i,a),o.pc2(n,i,e.keys,s)}},c.prototype._update=function(e,t,n,r){var i=this._desState,s=o.readUInt32BE(e,t),a=o.readUInt32BE(e,t+4);o.ip(s,a,i.tmp,0),s=i.tmp[0],a=i.tmp[1],"encrypt"===this.type?this._encrypt(i,s,a,i.tmp,0):this._decrypt(i,s,a,i.tmp,0),s=i.tmp[0],a=i.tmp[1],o.writeUInt32BE(n,s,r),o.writeUInt32BE(n,a,r+4)},c.prototype._pad=function(e,t){for(var n=e.length-t,r=t;r>>0,s=d}o.rip(a,s,r,i)},c.prototype._decrypt=function(e,t,n,r,i){for(var s=n,a=t,c=e.keys.length-2;c>=0;c-=2){var f=e.keys[c],l=e.keys[c+1];o.expand(s,e.tmp,0),f^=e.tmp[0],l^=e.tmp[1];var u=o.substitute(f,l),d=s;s=(a^o.permute(u))>>>0,a=d}o.rip(s,a,r,i)}},function(e,t,n){var r=n(32),i=n(3).Buffer,o=n(110);function s(e){var t=e._cipher.encryptBlockRaw(e._prev);return o(e._prev),t}t.encrypt=function(e,t){var n=Math.ceil(t.length/16),o=e._cache.length;e._cache=i.concat([e._cache,i.allocUnsafe(16*n)]);for(var a=0;ae;)n.ishrn(1);if(n.isEven()&&n.iadd(a),n.testn(1)||n.iadd(c),t.cmp(c)){if(!t.cmp(f))for(;n.mod(l).cmp(u);)n.iadd(h)}else for(;n.mod(o).cmp(d);)n.iadd(h);if(g(p=n.shrn(1))&&g(n)&&y(p)&&y(n)&&s.test(p)&&s.test(n))return n}}},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){var r=n(12),i=n(69);function o(e){this.rand=e||new i.Rand}e.exports=o,o.create=function(e){return new o(e)},o.prototype._randbelow=function(e){var t=e.bitLength(),n=Math.ceil(t/8);do{var i=new r(this.rand.generate(n))}while(i.cmp(e)>=0);return i},o.prototype._randrange=function(e,t){var n=t.sub(e);return e.add(this._randbelow(n))},o.prototype.test=function(e,t,n){var i=e.bitLength(),o=r.mont(e),s=new r(1).toRed(o);t||(t=Math.max(1,i/48|0));for(var a=e.subn(1),c=0;!a.testn(c);c++);for(var f=e.shrn(c),l=a.toRed(o);t>0;t--){var u=this._randrange(new r(2),a);n&&n(u);var d=u.toRed(o).redPow(f);if(0!==d.cmp(s)&&0!==d.cmp(l)){for(var h=1;h0;t--){var l=this._randrange(new r(2),s),u=e.gcd(l);if(0!==u.cmpn(1))return u;var d=l.toRed(i).redPow(c);if(0!==d.cmp(o)&&0!==d.cmp(f)){for(var h=1;h>8,s=255&i;o?n.push(o,s):n.push(s)}return n},r.zero2=i,r.toHex=o,r.encode=function(e,t){return"hex"===t?o(e):e}},function(e,t,n){"use strict";var r=t;r.base=n(47),r.short=n(235),r.mont=n(236),r.edwards=n(237)},function(e,t,n){"use strict";var r=n(17).rotr32;function i(e,t,n){return e&t^~e&n}function o(e,t,n){return e&t^e&n^t&n}function s(e,t,n){return e^t^n}t.ft_1=function(e,t,n,r){return 0===e?i(t,n,r):1===e||3===e?s(t,n,r):2===e?o(t,n,r):void 0},t.ch32=i,t.maj32=o,t.p32=s,t.s0_256=function(e){return r(e,2)^r(e,13)^r(e,22)},t.s1_256=function(e){return r(e,6)^r(e,11)^r(e,25)},t.g0_256=function(e){return r(e,7)^r(e,18)^e>>>3},t.g1_256=function(e){return r(e,17)^r(e,19)^e>>>10}},function(e,t,n){"use strict";var r=n(17),i=n(33),o=n(119),s=n(14),a=r.sum32,c=r.sum32_4,f=r.sum32_5,l=o.ch32,u=o.maj32,d=o.s0_256,h=o.s1_256,p=o.g0_256,m=o.g1_256,g=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 b(){if(!(this instanceof b))return new b;g.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=y,this.W=new Array(64)}r.inherits(b,g),e.exports=b,b.blockSize=512,b.outSize=256,b.hmacStrength=192,b.padLength=64,b.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r>6],i=0==(32&n);if(31==(31&n)){var o=n;for(n=0;128==(128&o);){if(o=e.readUInt8(t),e.isError(o))return o;n<<=7,n|=127&o}}else n&=31;return{cls:r,primitive:i,tag:n,tagStr:a.tag[n]}}function u(e,t,n){var r=e.readUInt8(n);if(e.isError(r))return r;if(!t&&128===r)return null;if(0==(128&r))return r;var i=127&r;if(i>4)return e.error("length octect is too long");r=0;for(var o=0;o=31)return r.error("Multi-octet tag encoding unsupported");t||(i|=32);return i|=a.tagClassByName[n||"universal"]<<6}(e,t,n,this.reporter);if(r.length<128)return(o=new i(2))[0]=s,o[1]=r.length,this._createEncoderBuffer([o,r]);for(var c=1,f=r.length;f>=256;f>>=8)c++;(o=new i(2+c))[0]=s,o[1]=128|c;f=1+c;for(var l=r.length;l>0;f--,l>>=8)o[f]=255&l;return this._createEncoderBuffer([o,r])},f.prototype._encodeStr=function(e,t){if("bitstr"===t)return this._createEncoderBuffer([0|e.unused,e.data]);if("bmpstr"===t){for(var n=new i(2*e.length),r=0;r=40)return this.reporter.error("Second objid identifier OOB");e.splice(0,2,40*e[0]+e[1])}var o=0;for(r=0;r=128;s>>=7)o++}var a=new i(o),c=a.length-1;for(r=e.length-1;r>=0;r--){s=e[r];for(a[c--]=127&s;(s>>=7)>0;)a[c--]=128|127&s}return this._createEncoderBuffer(a)},f.prototype._encodeTime=function(e,t){var n,r=new Date(e);return"gentime"===t?n=[l(r.getFullYear()),l(r.getUTCMonth()+1),l(r.getUTCDate()),l(r.getUTCHours()),l(r.getUTCMinutes()),l(r.getUTCSeconds()),"Z"].join(""):"utctime"===t?n=[l(r.getFullYear()%100),l(r.getUTCMonth()+1),l(r.getUTCDate()),l(r.getUTCHours()),l(r.getUTCMinutes()),l(r.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+t+" time is not supported yet"),this._encodeStr(n,"octstr")},f.prototype._encodeNull=function(){return this._createEncoderBuffer("")},f.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 n=e.toArray();!e.sign&&128&n[0]&&n.unshift(0),e=new i(n)}if(i.isBuffer(e)){var r=e.length;0===e.length&&r++;var o=new i(r);return e.copy(o),0===e.length&&(o[0]=0),this._createEncoderBuffer(o)}if(e<128)return this._createEncoderBuffer(e);if(e<256)return this._createEncoderBuffer([0,e]);r=1;for(var s=e;s>=256;s>>=8)r++;for(s=(o=new Array(r)).length-1;s>=0;s--)o[s]=255&e,e>>=8;return 128&o[0]&&o.unshift(0),this._createEncoderBuffer(new i(o))},f.prototype._encodeBool=function(e){return this._createEncoderBuffer(e?255:0)},f.prototype._use=function(e,t){return"function"==typeof e&&(e=e(t)),e._getEncoder("der").tree},f.prototype._skipDefault=function(e,t,n){var r,i=this._baseState;if(null===i.default)return!1;var o=e.join();if(void 0===i.defaultBuffer&&(i.defaultBuffer=this._encodeValue(i.default,t,n).join()),o.length!==i.defaultBuffer.length)return!1;for(r=0;r(0,o.default)(n(138)));let P;t.ContentHelpers=O;let M=()=>new s.MemoryCryptoStore}).call(this,n(6))},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MemoryStore=s;var i=n(49),o=r(n(8));function s(e){e=e||{},this.rooms={},this.groups={},this.users={},this.syncToken=null,this.filters={},this.accountData={},this.localStorage=e.localStorage,this._oobMembers={},this._clientOptions={}}s.prototype={getSyncToken:function(){return this.syncToken},isNewlyCreated:function(){return Promise.resolve(!0)},setSyncToken:function(e){this.syncToken=e},storeGroup:function(e){this.groups[e.groupId]=e},getGroup:function(e){return this.groups[e]||null},getGroups:function(){return o.values(this.groups)},storeRoom:function(e){this.rooms[e.roomId]=e,e.currentState.on("RoomState.members",this._onRoomMember.bind(this));const t=this;e.currentState.getMembers().forEach((function(n){t._onRoomMember(null,e.currentState,n)}))},_onRoomMember:function(e,t,n){if("invite"===n.membership)return;const r=this.users[n.userId]||new i.User(n.userId);n.name&&(r.setDisplayName(n.name),n.events.member&&r.setRawDisplayName(n.events.member.getDirectionalContent().displayname)),n.events.member&&n.events.member.getContent().avatar_url&&r.setAvatarUrl(n.events.member.getContent().avatar_url),this.users[r.userId]=r},getRoom:function(e){return this.rooms[e]||null},getRooms:function(){return o.values(this.rooms)},removeRoom:function(e){this.rooms[e]&&this.rooms[e].removeListener("RoomState.members",this._onRoomMember),delete this.rooms[e]},getRoomSummaries:function(){return o.map(o.values(this.rooms),(function(e){return e.summary}))},storeUser:function(e){this.users[e.userId]=e},getUser:function(e){return this.users[e]||null},getUsers:function(){return o.values(this.users)},scrollback:function(e,t){return[]},storeEvents:function(e,t,n,r){},storeFilter:function(e){e&&(this.filters[e.userId]||(this.filters[e.userId]={}),this.filters[e.userId][e.filterId]=e)},getFilter:function(e,t){return this.filters[e]&&this.filters[e][t]?this.filters[e][t]:null},getFilterIdByName:function(e){if(!this.localStorage)return null;try{return this.localStorage.getItem("mxjssdk_memory_filter_"+e)}catch(e){}return null},setFilterIdByName:function(e,t){if(this.localStorage)try{this.localStorage.setItem("mxjssdk_memory_filter_"+e,t)}catch(e){}},storeAccountDataEvents:function(e){const t=this;e.forEach((function(e){t.accountData[e.getType()]=e}))},getAccountData:function(e){return this.accountData[e]},setSyncData:function(e){return Promise.resolve()},wantsSave:function(){return!1},save:function(e){},startup:function(){return Promise.resolve()},getSavedSync:function(){return Promise.resolve(null)},getSavedSyncToken:function(){return Promise.resolve(null)},deleteAllData:function(){return this.rooms={},this.users={},this.syncToken=null,this.filters={},this.accountData={},Promise.resolve()},getOutOfBandMembers:function(e){return Promise.resolve(this._oobMembers[e]||null)},setOutOfBandMembers:function(e,t){return this._oobMembers[e]=t,Promise.resolve()},clearOutOfBandMembers:function(){return this._oobMembers={},Promise.resolve()},getClientOptions:function(){return Promise.resolve(this._clientOptions)},storeClientOptions:function(e){return this._clientOptions=Object.assign({},e),Promise.resolve()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SERVICE_TYPES=void 0;const r=Object.freeze({IS:"SERVICE_TYPE_IS",IM:"SERVICE_TYPE_IM"});t.SERVICE_TYPES=r},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.Room=g;var i=n(10),o=n(134),s=n(25),a=n(51),c=r(n(8)),f=n(19),l=n(78),u=n(287),d=n(4),h=n(79);const p=["1","2","3","4","5"];function m(e,t,n){const r={content:{},type:"m.receipt",room_id:t.getRoomId()};return r.content[t.getId()]={},r.content[t.getId()][n]={},r.content[t.getId()][n][e]={ts:t.getTs()},new f.MatrixEvent(r)}function g(e,t,n,r){if((r=r||{}).pendingEventOrdering=r.pendingEventOrdering||"chronological",this.reEmitter=new h.ReEmitter(this),-1===["chronological","detached"].indexOf(r.pendingEventOrdering))throw new Error("opts.pendingEventOrdering MUST be either 'chronological' or 'detached'. Got: '"+r.pendingEventOrdering+"'");this.myUserId=n,this.roomId=e,this.name=e,this.tags={},this.accountData={},this.summary=null,this.storageToken=r.storageToken,this._opts=r,this._txnToEvent={},this._receipts={},this._receiptCacheByEventId={},this._realReceipts={},this._notificationCounts={},this._timelineSets=[new o.EventTimelineSet(this,r)],this.reEmitter.reEmit(this.getUnfilteredTimelineSet(),["Room.timeline","Room.timelineReset"]),this._fixUpLegacyTimelineFields(),this._filteredTimelineSets={},"detached"==this._opts.pendingEventOrdering&&(this._pendingEventList=[]),this._blacklistUnverifiedDevices=null,this._selfMembership=null,this._summaryHeroes=null,this._client=t,this._opts.lazyLoadMembers?this._membersPromise=null:this._membersPromise=Promise.resolve()}c.inherits(g,i.EventEmitter),g.prototype.getVersion=function(){const e=this.currentState.getStateEvents("m.room.create","");if(!e)return d.logger.warn("Room "+this.room_id+" does not have an m.room.create event"),"1";const t=e.getContent().room_version;return void 0===t?"1":t},g.prototype.shouldUpgradeToVersion=function(){return p.includes(this.getVersion())?null:"5"},g.prototype.getRecommendedVersion=async function(){let e=(await this._client.getCapabilities())["m.room_versions"];if(!e){e={default:"5",available:{}};for(const t of p)e.available[t]="stable"}let t=this._checkVersionAgainstCapability(e);if(t.urgent&&t.needsUpgrade){if(d.logger.warn("Refreshing room version capability because the server looks to be supporting a newer room version we don't know about."),e=(await this._client.getCapabilities(!0))["m.room_versions"],!e)return d.logger.warn("No room version capability - assuming upgrade required."),t;t=this._checkVersionAgainstCapability(e)}return t},g.prototype._checkVersionAgainstCapability=function(e){const t=this.getVersion();d.logger.log(`[${this.roomId}] Current version: ${t}`),d.logger.log(`[${this.roomId}] Version capability: `,e);const n={version:t,needsUpgrade:!1,urgent:!1};return t===e.default?n:Object.keys(e.available).filter(t=>"stable"===e.available[t]).includes(t)?n:(n.version=e.default,n.needsUpgrade=!0,n.urgent=!!this.getVersion().match(/^[0-9]+[0-9.]*$/g),n.urgent?d.logger.warn(`URGENT upgrade required on ${this.roomId}`):d.logger.warn(`Non-urgent upgrade required on ${this.roomId}`),n)},g.prototype.userMayUpgradeRoom=function(e){return this.currentState.maySendStateEvent("m.room.tombstone",e)},g.prototype.getPendingEvents=function(){if("detached"!==this._opts.pendingEventOrdering)throw new Error("Cannot call getPendingEvents with pendingEventOrdering == "+this._opts.pendingEventOrdering);return this._pendingEventList},g.prototype.hasPendingEvent=function(e){if("detached"!==this._opts.pendingEventOrdering)throw new Error("Cannot call hasPendingEvent with pendingEventOrdering == "+this._opts.pendingEventOrdering);return this._pendingEventList.some(t=>t.getId()===e)},g.prototype.getLiveTimeline=function(){return this.getUnfilteredTimelineSet().getLiveTimeline()},g.prototype.getLastActiveTimestamp=function(){const e=this.getLiveTimeline().getEvents();if(e.length){return e[e.length-1].getTs()}return Number.MIN_SAFE_INTEGER},g.prototype.getMyMembership=function(){return this._selfMembership},g.prototype.getDMInviter=function(){if(this.myUserId){const e=this.getMember(this.myUserId);if(e)return e.getDMInviter()}if("invite"===this._selfMembership){if(2==this.getInvitedAndJoinedMemberCount()&&this._summaryHeroes.length)return this._summaryHeroes[0]}},g.prototype.guessDMUserId=function(){const e=this.getMember(this.myUserId);if(e){const t=e.getDMInviter();if(t)return t}if(Array.isArray(this._summaryHeroes)&&this._summaryHeroes.length)return this._summaryHeroes[0];const t=this.currentState.getMembers().find(e=>e.userId!==this.myUserId);return t?t.userId:this.myUserId},g.prototype.getAvatarFallbackMember=function(){if(this.getInvitedAndJoinedMemberCount()>2)return;const e=Array.isArray(this._summaryHeroes)&&this._summaryHeroes.length;if(e){const e=this._summaryHeroes.map(e=>this.getMember(e)).find(e=>!!e);if(e)return e}const t=this.currentState.getMembers();if(t.length<=2){const e=t.find(e=>e.userId!==this.myUserId);if(e)return e}if(e){const e=this._summaryHeroes.map(e=>this._client.getUser(e)).find(e=>!!e);if(e){const t=new l.RoomMember(this.roomId,e.userId);return t.user=e,t}}},g.prototype.updateMyMembership=function(e){const t=this._selfMembership;this._selfMembership=e,t!==e&&("leave"===e&&this._cleanupAfterLeaving(),this.emit("Room.myMembership",this,e,t))},g.prototype._loadMembersFromServer=async function(){const e=this._client.store.getSyncToken(),t=c.encodeParams({not_membership:"leave",at:e}),n=c.encodeUri("/rooms/$roomId/members?"+t,{$roomId:this.roomId}),r=this._client._http;return(await r.authedRequest(void 0,"GET",n)).chunk},g.prototype._loadMembers=async function(){let e=!1,t=await this._client.store.getOutOfBandMembers(this.roomId);return null===t&&(e=!0,t=await this._loadMembersFromServer(),d.logger.log(`LL: got ${t.length} `+`members from server for room ${this.roomId}`)),{memberEvents:t.map(this._client.getEventMapper()),fromServer:e}},g.prototype.loadMembersIfNeeded=function(){if(this._membersPromise)return this._membersPromise;this.currentState.markOutOfBandMembersStarted();const e=this._loadMembers().then(e=>(this.currentState.setOutOfBandMembers(e.memberEvents),this._client.isCryptoEnabled()&&this._client.isRoomEncrypted(this.roomId)&&this._client._crypto.trackRoomDevices(this.roomId),e.fromServer)).catch(e=>{throw this._membersPromise=null,this.currentState.markOutOfBandMembersFailed(),e});return e.then(e=>{if(e){const e=this.currentState.getMembers().filter(e=>e.isOutOfBand()).map(e=>e.events.member.event);return d.logger.log(`LL: telling store to write ${e.length}`+` members for room ${this.roomId}`),this._client.store.setOutOfBandMembers(this.roomId,e).catch(e=>{d.logger.log("LL: storing OOB room members failed, oh well",e)})}}).catch(e=>{d.logger.error(e)}),this._membersPromise=e,this._membersPromise},g.prototype.clearLoadedMembersIfNeeded=async function(){this._opts.lazyLoadMembers&&this._membersPromise&&(await this.loadMembersIfNeeded(),await this._client.store.clearOutOfBandMembers(this.roomId),this.currentState.clearOutOfBandMembers(),this._membersPromise=null)},g.prototype._cleanupAfterLeaving=function(){this.clearLoadedMembersIfNeeded().catch(e=>{d.logger.error("error after clearing loaded members from "+`room ${this.roomId} after leaving`),d.logger.log(e)})},g.prototype.resetLiveTimeline=function(e,t){for(let n=0;ne.isUnverified()))return!0}return!1},g.prototype.getTimelineSets=function(){return this._timelineSets},g.prototype.getUnfilteredTimelineSet=function(){return this._timelineSets[0]},g.prototype.getTimelineForEvent=function(e){return this.getUnfilteredTimelineSet().getTimelineForEvent(e)},g.prototype.addTimeline=function(){return this.getUnfilteredTimelineSet().addTimeline()},g.prototype.findEventById=function(e){return this.getUnfilteredTimelineSet().findEventById(e)},g.prototype.getUnreadNotificationCount=function(e){return e=e||"total",this._notificationCounts[e]},g.prototype.setUnreadNotificationCount=function(e,t){this._notificationCounts[e]=t},g.prototype.setSummary=function(e){const t=e["m.heroes"],n=e["m.joined_member_count"],r=e["m.invited_member_count"];Number.isInteger(n)&&this.currentState.setJoinedMemberCount(n),Number.isInteger(r)&&this.currentState.setInvitedMemberCount(r),Array.isArray(t)&&(this._summaryHeroes=t.filter(e=>e!==this.myUserId))},g.prototype.setBlacklistUnverifiedDevices=function(e){this._blacklistUnverifiedDevices=e},g.prototype.getBlacklistUnverifiedDevices=function(){return this._blacklistUnverifiedDevices},g.prototype.getAvatarUrl=function(e,t,n,r,i){const o=this.currentState.getStateEvents("m.room.avatar","");if(void 0===i&&(i=!0),!o&&!i)return null;const s=o?o.getContent().url:null;return s?(0,a.getHttpUriForMxc)(e,s,t,n,r):i?(0,a.getIdenticonUri)(e,this.roomId,t,n):null},g.prototype.getAliases=function(){const e=[],t=this.currentState.getStateEvents("m.room.aliases");if(t)for(let n=0;n"string"==typeof e&&("#"===e[0]&&!!e.endsWith(`:${r.getStateKey()}`)));Array.prototype.push.apply(e,t)}}return e},g.prototype.getCanonicalAlias=function(){const e=this.currentState.getStateEvents("m.room.canonical_alias","");return e?e.getContent().alias:null},g.prototype.addEventsToTimeline=function(e,t,n,r){n.getTimelineSet().addEventsToTimeline(e,t,n,r)},g.prototype.getMember=function(e){return this.currentState.getMember(e)},g.prototype.getJoinedMembers=function(){return this.getMembersWithMembership("join")},g.prototype.getJoinedMemberCount=function(){return this.currentState.getJoinedMemberCount()},g.prototype.getInvitedMemberCount=function(){return this.currentState.getInvitedMemberCount()},g.prototype.getInvitedAndJoinedMemberCount=function(){return this.getInvitedMemberCount()+this.getJoinedMemberCount()},g.prototype.getMembersWithMembership=function(e){return c.filter(this.currentState.getMembers(),(function(t){return t.membership===e}))},g.prototype.getEncryptionTargetMembers=async function(){await this.loadMembersIfNeeded();let e=this.getMembersWithMembership("join");return this.shouldEncryptForInvitedMembers()&&(e=e.concat(this.getMembersWithMembership("invite"))),e},g.prototype.shouldEncryptForInvitedMembers=function(){const e=this.currentState.getStateEvents("m.room.history_visibility","");return e&&e.getContent()&&"joined"!==e.getContent().history_visibility},g.prototype.getDefaultRoomName=function(e){return b(this,e,!0)},g.prototype.hasMembershipState=function(e,t){const n=this.getMember(e);return!!n&&n.membership===t},g.prototype.getOrCreateFilteredTimelineSet=function(e){if(this._filteredTimelineSets[e.filterId])return this._filteredTimelineSets[e.filterId];const t=Object.assign({filter:e},this._opts),n=new o.EventTimelineSet(this,t);this.reEmitter.reEmit(n,["Room.timeline","Room.timelineReset"]),this._filteredTimelineSets[e.filterId]=n,this._timelineSets.push(n);const r=this.getLiveTimeline();r.getEvents().forEach((function(e){n.addLiveEvent(e)}));let i=r;for(;i.getNeighbouringTimeline(s.EventTimeline.BACKWARDS);)i=i.getNeighbouringTimeline(s.EventTimeline.BACKWARDS);return n.getLiveTimeline().setPaginationToken(i.getPaginationToken(s.EventTimeline.BACKWARDS),s.EventTimeline.BACKWARDS),n},g.prototype.removeFilteredTimelineSet=function(e){const t=this._filteredTimelineSets[e.filterId];delete this._filteredTimelineSets[e.filterId];const n=this._timelineSets.indexOf(t);n>-1&&this._timelineSets.splice(n,1)},g.prototype._addLiveEvent=function(e,t){if(e.isRedaction()){const t=e.event.redacts,n=this.getUnfilteredTimelineSet().findEventById(t);if(n){if(n.makeRedacted(e),n.getStateKey()){this.currentState.getStateEvents(n.getType(),n.getStateKey()).getId()===n.getId()&&this.currentState.setStateEvents([n])}this.emit("Room.redaction",e,this)}}if(e.getUnsigned().transaction_id){const t=this._txnToEvent[e.getUnsigned().transaction_id];if(t)return void this._handleRemoteEcho(e,t)}for(let n=0;ne.status===f.EventStatus.NOT_SENT)&&(d.logger.warn("Setting event as NOT_SENT due to messages in the same state"),e.setStatus(f.EventStatus.NOT_SENT)),this._pendingEventList.push(e),e.isRelation()&&this._aggregateNonLiveRelation(e),e.isRedaction()){const t=e.event.redacts;let n=this._pendingEventList&&this._pendingEventList.find(e=>e.getId()===t);n||(n=this.getUnfilteredTimelineSet().findEventById(t)),n&&(n.markLocallyRedacted(e),this.emit("Room.redaction",e,this))}}else for(let t=0;t{const n=e.getMember(t);return n?n.name:t});else{let n=e.currentState.getMembers().filter(e=>e.userId!==t&&("invite"===e.membership||"join"===e.membership));n.sort((e,t)=>e.userId.localeCompare(t.userId)),n=n.slice(0,5),o=n.map(e=>e.name)}if(i)return v(o,i);if("join"==e.getMyMembership()){const t=e.currentState.getStateEvents("m.room.third_party_invite");if(t&&t.length){return`Inviting ${v(t.map(e=>e.getContent().display_name))}`}}let s=o;return s.length||(s=e.currentState.getMembers().filter(e=>e.userId!==t&&"invite"!==e.membership&&"join"!==e.membership).map(e=>e.name)),s.length?`Empty room (was ${v(s)})`:"Empty room"}function v(e,t=e.length+1){const n=t-1;if(e.length){if(1===e.length&&n<=1)return e[0];if(2===e.length&&n<=2)return`${e[0]} and ${e[1]}`;return n>1?`${e[0]} and ${n} others`:`${e[0]} and 1 other`}return"Empty room"}y[f.EventStatus.ENCRYPTING]=[f.EventStatus.SENDING,f.EventStatus.NOT_SENT],y[f.EventStatus.SENDING]=[f.EventStatus.ENCRYPTING,f.EventStatus.QUEUED,f.EventStatus.NOT_SENT,f.EventStatus.SENT],y[f.EventStatus.QUEUED]=[f.EventStatus.SENDING,f.EventStatus.CANCELLED],y[f.EventStatus.SENT]=[],y[f.EventStatus.NOT_SENT]=[f.EventStatus.SENDING,f.EventStatus.QUEUED,f.EventStatus.CANCELLED],y[f.EventStatus.CANCELLED]=[],g.prototype.updatePendingEvent=function(e,t,n){if(d.logger.log(`setting pendingEvent status to ${t} in ${e.getRoomId()}`),t==f.EventStatus.SENT&&!n)throw new Error("updatePendingEvent called with status=SENT, but no new event id");if(t==f.EventStatus.SENT){if(this.getUnfilteredTimelineSet().eventIdToTimeline(n))return}const r=e.status,i=e.getId();if(!r)throw new Error("updatePendingEventStatus called on an event which is not a local echo.");const o=y[r];if(!o||o.indexOf(t)<0)throw new Error("Invalid EventStatus transition "+r+"->"+t);if(e.setStatus(t),t==f.EventStatus.SENT){e.replaceLocalEventId(n);for(let e=0;ee.getId()===i);if(-1!==e){const[t]=this._pendingEventList.splice(e,1);t.isRedaction()&&this._revertRedactionLocalEcho(t)}}this.removeEvent(i)}this.emit("Room.localEchoUpdated",e,this,i,r)},g.prototype._revertRedactionLocalEcho=function(e){const t=e.event.redacts;if(!t)return;const n=this.getUnfilteredTimelineSet().findEventById(t);n&&(n.unmarkLocallyRedacted(),this.emit("Room.redactionCancelled",e,this),n.isRelation()&&this._aggregateNonLiveRelation(n))},g.prototype.addLiveEvents=function(e,t){let n;if(t&&-1===["replace","ignore"].indexOf(t))throw new Error("duplicateStrategy MUST be either 'replace' or 'ignore'");for(n=0;n=0;--e){const r=this.timeline[e];if(r.getId()===t)return!1;if(r.getId()===n)return!0}return!1},g.prototype.getReceiptsForEvent=function(e){return this._receiptCacheByEventId[e.getId()]||[]},g.prototype.addReceipt=function(e,t){void 0===t&&(t=!1),t||this._addReceiptsToStructure(e,this._realReceipts),this._addReceiptsToStructure(e,this._receipts),this._receiptCacheByEventId=this._buildReceiptCache(this._receipts),this.emit("Room.receipt",e,this)},g.prototype._addReceiptsToStructure=function(e,t){const n=this;c.keys(e.getContent()).forEach((function(r){c.keys(e.getContent()[r]).forEach((function(i){c.keys(e.getContent()[r][i]).forEach((function(o){const s=e.getContent()[r][i][o];t[i]||(t[i]={});const a=t[i][o];if(a){const e=n.getUnfilteredTimelineSet().compareEventOrdering(a.eventId,r);if(null!==e&&e>=0)return}else t[i][o]={};t[i][o]={eventId:r,data:s}}))}))}))},g.prototype._buildReceiptCache=function(e){const t={};return c.keys(e).forEach((function(n){c.keys(e[n]).forEach((function(r){const i=e[n][r];t[i.eventId]||(t[i.eventId]=[]),t[i.eventId].push({userId:r,type:n,data:i.data})}))})),t},g.prototype._addLocalEchoReceipt=function(e,t,n){this.addReceipt(m(e,t,n),!0)},g.prototype.addTags=function(e){this.tags=e.getContent().tags||{},this.emit("Room.tags",e,this)},g.prototype.addAccountData=function(e){for(let t=0;t{this.aggregateRelations(e)});const t=e.getRelation();if(!t)return;const n=t.event_id,r=t.rel_type,i=e.getType();let o=this._relations[n];o||(o=this._relations[n]={});let a=o[r];a||(a=o[r]={});let c,l=a[i],u=!1;l||(l=a[i]=new f.Relations(r,i,this.room),u=!0,c=this.findEventById(n),c&&l.setTargetEvent(c)),l.addEvent(e),u&&c&&c.emit("Event.relationsCreated",r,i)}},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.RoomState=c;var i=n(10),o=n(78),s=n(4),a=r(n(8));function c(e,t){this.roomId=e,this.members={},this.events={},this.paginationToken=null,this._sentinels={},this._updateModifiedTime(),this._displayNameToUserIds={},this._userIdsToDisplayNames={},this._tokenToInvite={},this._joinedMemberCount=null,this._summaryJoinedMemberCount=null,this._invitedMemberCount=null,this._summaryInvitedMemberCount=null,t||(t={status:1}),this._oobMemberFlags=t}function f(e,t,n){const r=e._userIdsToDisplayNames[t];if(delete e._userIdsToDisplayNames[t],r){const n=a.removeHiddenChars(r),i=e._displayNameToUserIds[n];if(i){const r=i.filter(e=>e!==t);e._displayNameToUserIds[n]=r}}e._userIdsToDisplayNames[t]=n;const i=n&&a.removeHiddenChars(n);i&&(e._displayNameToUserIds[i]||(e._displayNameToUserIds[i]=[]),e._displayNameToUserIds[i].push(t))}a.inherits(c,i.EventEmitter),c.prototype.getJoinedMemberCount=function(){return null!==this._summaryJoinedMemberCount?this._summaryJoinedMemberCount:(null===this._joinedMemberCount&&(this._joinedMemberCount=this.getMembers().reduce((e,t)=>"join"===t.membership?e+1:e,0)),this._joinedMemberCount)},c.prototype.setJoinedMemberCount=function(e){this._summaryJoinedMemberCount=e},c.prototype.getInvitedMemberCount=function(){return null!==this._summaryInvitedMemberCount?this._summaryInvitedMemberCount:(null===this._invitedMemberCount&&(this._invitedMemberCount=this.getMembers().reduce((e,t)=>"invite"===t.membership?e+1:e,0)),this._invitedMemberCount)},c.prototype.setInvitedMemberCount=function(e){this._summaryInvitedMemberCount=e},c.prototype.getMembers=function(){return a.values(this.members)},c.prototype.getMembersExcept=function(e){return a.values(this.members).filter(t=>!e.includes(t.userId))},c.prototype.getMember=function(e){return this.members[e]||null},c.prototype.getSentinelMember=function(e){if(!e)return null;let t=this._sentinels[e];if(void 0===t){t=new o.RoomMember(this.roomId,e);const n=this.members[e];n&&t.setMembershipEvent(n.events.member,this),this._sentinels[e]=t}return t},c.prototype.getStateEvents=function(e,t){if(!this.events[e])return void 0===t?[]:null;if(void 0===t)return a.values(this.events[e]);const n=this.events[e][t];return n||null},c.prototype.clone=function(){const e=new c(this.roomId,this._oobMemberFlags),t=this._oobMemberFlags.status;return this._oobMemberFlags.status=1,Object.values(this.events).forEach(t=>{const n=Object.values(t);e.setStateEvents(n)}),this._oobMemberFlags.status=t,null!==this._summaryInvitedMemberCount&&e.setInvitedMemberCount(this.getInvitedMemberCount()),null!==this._summaryJoinedMemberCount&&e.setJoinedMemberCount(this.getJoinedMemberCount()),3==this._oobMemberFlags.status&&this.getMembers().forEach(t=>{if(t.isOutOfBand()){e.getMember(t.userId).markOutOfBand()}}),e},c.prototype.setUnknownStateEvents=function(e){const t=e.filter(e=>void 0===this.events[e.getType()]||void 0===this.events[e.getType()][e.getStateKey()]);this.setStateEvents(t)},c.prototype.setStateEvents=function(e){const t=this;this._updateModifiedTime(),a.forEach(e,(function(e){e.getRoomId()===t.roomId&&e.isState()&&(t._setStateEvent(e),"m.room.member"===e.getType()&&(f(t,e.getStateKey(),e.getContent().displayname),function(e,t){if(!t.getContent().third_party_invite)return;const n=(t.getContent().third_party_invite.signed||{}).token;if(!n)return;if(!e.getStateEvents("m.room.third_party_invite",n))return;e._tokenToInvite[n]=t}(t,e)),t.emit("RoomState.events",e,t))})),a.forEach(e,(function(e){if(e.getRoomId()===t.roomId&&e.isState())if("m.room.member"===e.getType()){const n=e.getStateKey();"leave"!==e.getContent().membership&&"ban"!==e.getContent().membership||(e.getContent().avatar_url=e.getContent().avatar_url||e.getPrevContent().avatar_url,e.getContent().displayname=e.getContent().displayname||e.getPrevContent().displayname);const r=t._getOrCreateMember(n,e);r.setMembershipEvent(e,t),t._updateMember(r),t.emit("RoomState.members",e,t,r)}else if("m.room.power_levels"===e.getType()){const n=a.values(t.members);a.forEach(n,(function(n){n.setPowerLevelEvent(e),t.emit("RoomState.members",e,t,n)})),t._sentinels={}}}))},c.prototype._getOrCreateMember=function(e,t){let n=this.members[e];return n||(n=new o.RoomMember(this.roomId,e),this.members[e]=n,this.emit("RoomState.newMember",t,this,n)),n},c.prototype._setStateEvent=function(e){void 0===this.events[e.getType()]&&(this.events[e.getType()]={}),this.events[e.getType()][e.getStateKey()]=e},c.prototype._updateMember=function(e){const t=this.getStateEvents("m.room.power_levels","");t&&e.setPowerLevelEvent(t),delete this._sentinels[e.userId],this.members[e.userId]=e,this._joinedMemberCount=null,this._invitedMemberCount=null},c.prototype.needsOutOfBandMembers=function(){return 1===this._oobMemberFlags.status},c.prototype.markOutOfBandMembersStarted=function(){1===this._oobMemberFlags.status&&(this._oobMemberFlags.status=2)},c.prototype.markOutOfBandMembersFailed=function(){2===this._oobMemberFlags.status&&(this._oobMemberFlags.status=1)},c.prototype.clearOutOfBandMembers=function(){let e=0;Object.keys(this.members).forEach(t=>{this.members[t].isOutOfBand()&&(++e,delete this.members[t])}),s.logger.log(`LL: RoomState removed ${e} members...`),this._oobMemberFlags.status=1},c.prototype.setOutOfBandMembers=function(e){s.logger.log(`LL: RoomState about to set ${e.length} OOB members ...`),2===this._oobMemberFlags.status&&(s.logger.log("LL: RoomState put in OOB_STATUS_FINISHED state ..."),this._oobMemberFlags.status=3,e.forEach(e=>this._setOutOfBandMember(e)))},c.prototype._setOutOfBandMember=function(e){if("m.room.member"!==e.getType())return;const t=e.getStateKey(),n=this.getMember(t);if(n&&!n.isOutOfBand())return;const r=this._getOrCreateMember(t,e);r.setMembershipEvent(e,this),r.markOutOfBand(),f(this,r.userId,r.name),this._setStateEvent(e),this._updateMember(r),this.emit("RoomState.members",e,this,r)},c.prototype.setTypingEvent=function(e){a.forEach(a.values(this.members),(function(t){t.setTypingEvent(e)}))},c.prototype.getInviteForThreePidToken=function(e){return this._tokenToInvite[e]||null},c.prototype._updateModifiedTime=function(){this._modified=Date.now()},c.prototype.getLastModifiedTime=function(){return this._modified},c.prototype.getUserIdsWithDisplayName=function(e){return this._displayNameToUserIds[a.removeHiddenChars(e)]||[]},c.prototype.maySendRedactionForEvent=function(e,t){const n=this.getMember(t);if(!n||"leave"===n.membership)return!1;if(e.status||e.isRedacted())return!1;const r=this.maySendEvent("m.room.redaction",t);return e.getSender()===t?r:this._hasSufficientPowerLevelFor("redact",n.powerLevel)},c.prototype._hasSufficientPowerLevelFor=function(e,t){const n=this.getStateEvents("m.room.power_levels","");let r={};n&&(r=n.getContent());let i=50;return a.isNumber(r[e])&&(i=r[e]),t>=i},c.prototype.maySendMessage=function(e){return this._maySendEventOfType("m.room.message",e,!1)},c.prototype.maySendEvent=function(e,t){return this._maySendEventOfType(e,t,!1)},c.prototype.mayClientSendStateEvent=function(e,t){return!t.isGuest()&&this.maySendStateEvent(e,t.credentials.userId)},c.prototype.maySendStateEvent=function(e,t){return this._maySendEventOfType(e,t,!0)},c.prototype._maySendEventOfType=function(e,t,n){const r=this.getStateEvents("m.room.power_levels","");let i,o={},s=0,a=0,c=0;if(r){i=r.getContent(),o=i.events||{},s=Number.isFinite(i.state_default)?i.state_default:50;const e=i.users&&i.users[t];Number.isFinite(e)?c=e:Number.isFinite(i.users_default)&&(c=i.users_default),Number.isFinite(i.events_default)&&(a=i.events_default)}let f=n?s:a;return Number.isFinite(o[e])&&(f=o[e]),c>=f},c.prototype.mayTriggerNotifOfType=function(e,t){const n=this.getMember(t);if(!n)return!1;const r=this.getStateEvents("m.room.power_levels","");let i=50;return r&&r.getContent()&&r.getContent().notifications&&a.isNumber(r.getContent().notifications[e])&&(i=r.getContent().notifications[e]),n.powerLevel>=i}},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.Group=s;var i=r(n(8)),o=n(10);function s(e){this.groupId=e,this.name=null,this.avatarUrl=null,this.myMembership=null,this.inviter=null}i.inherits(s,o.EventEmitter),s.prototype.setProfile=function(e,t){this.name===e&&this.avatarUrl===t||(this.name=e||this.groupId,this.avatarUrl=t,this.emit("Group.profile",this))},s.prototype.setMyMembership=function(e){this.myMembership!==e&&(this.myMembership=e,this.emit("Group.myMembership",this))},s.prototype.setInviter=function(e){this.inviter=e}},function(e,t,n){"use strict";(function(e){var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MatrixCall=a,t.setAudioOutput=function(e){I=e},t.setAudioInput=function(e){x=e},t.setVideoInput=function(e){R=e},t.createNewMatrixCall=function(t,n,r){const o=e.window,s=e.document;if(!o||!s)return null;const c={};c.isOpenWebRTC=function(){const e=s.getElementById("script");if(!e||!e.length)return!1;for(let t=0;t-1)return!0;return!1};const f=o.navigator.getUserMedia||o.navigator.webkitGetUserMedia||o.navigator.mozGetUserMedia;f&&(c.getUserMedia=function(){return f.apply(o.navigator,arguments)});try{c.RtcPeerConnection=o.RTCPeerConnection||o.webkitRTCPeerConnection||o.mozRTCPeerConnection,c.RtcSessionDescription=o.RTCSessionDescription||o.webkitRTCSessionDescription||o.mozRTCSessionDescription,c.RtcIceCandidate=o.RTCIceCandidate||o.webkitRTCIceCandidate||o.mozRTCIceCandidate,c.vendor=null,o.mozRTCPeerConnection?c.vendor="mozilla":o.webkitRTCPeerConnection?c.vendor="webkit":o.RTCPeerConnection&&(c.vendor="generic")}catch(e){return i.logger.error("Failed to set up WebRTC object: possible browser interference?"),i.logger.error(e),null}if(!(c.RtcIceCandidate&&c.RtcSessionDescription&&c.RtcPeerConnection&&c.getUserMedia))return null;const l=!!r&&r.forceTURN;return new a({webRtc:c,client:t,URL:o.URL,roomId:n,turnServers:t.getTurnServers(),forceTURN:t._forceTURN||l})};var i=n(4),o=n(10),s=r(n(8));function a(e){this.roomId=e.roomId,this.client=e.client,this.webRtc=e.webRtc,this.forceTURN=e.forceTURN,this.URL=e.URL,this.turnServers=e.turnServers||[],0===this.turnServers.length&&this.client.isFallbackICEServerAllowed()&&this.turnServers.push({urls:[a.FALLBACK_ICE_SERVER]}),s.forEach(this.turnServers,(function(e){s.checkObjectHasKeys(e,["urls"])})),this.callId="c"+(new Date).getTime()+Math.random(),this.state="fledgling",this.didConnect=!1,this.candidateSendQueue=[],this.candidateSendTries=0,this.mediaPromises=Object.create(null),this.screenSharingStream=null,this._answerContent=null}a.CALL_TIMEOUT_MS=6e4,a.FALLBACK_ICE_SERVER="stun:turn.matrix.org",a.ERR_LOCAL_OFFER_FAILED="local_offer_failed",a.ERR_NO_USER_MEDIA="no_user_media",a.ERR_UNKNOWN_DEVICES="unknown_devices",a.ERR_SEND_INVITE="send_invite",a.ERR_SEND_ANSWER="send_answer",s.inherits(a,o.EventEmitter),a.prototype.placeVoiceCall=function(){v("placeVoiceCall"),y(this),w(this,k("voice")),this.type="voice"},a.prototype.placeVideoCall=function(e,t){v("placeVideoCall"),y(this),this.localVideoElement=t,this.remoteVideoElement=e,w(this,k("video")),this.type="video",m(this)},a.prototype.placeScreenSharingCall=function(e,t){v("placeScreenSharingCall"),y(this);const n=E(this);if(!n)return;this.localVideoElement=t,this.remoteVideoElement=e;const r=this;this.webRtc.getUserMedia(n,(function(e){r.screenSharingStream=e,v("Got screen stream, requesting audio stream...");const t=k("voice");w(r,t)}),(function(e){r.emit("error",b(a.ERR_NO_USER_MEDIA,"Failed to get screen-sharing stream: "+e))})),this.type="video",m(this)},a.prototype.playElement=function(e,t){i.logger.log("queuing play on "+t+" and element "+e),this.mediaPromises[t]?this.mediaPromises[t]=this.mediaPromises[t].then((function(){return i.logger.log("previous promise completed for "+t),e.play()}),(function(){return i.logger.log("previous promise failed for "+t),e.play()})):this.mediaPromises[t]=e.play()},a.prototype.pauseElement=function(e,t){i.logger.log("queuing pause on "+t+" and element "+e),this.mediaPromises[t]?this.mediaPromises[t]=this.mediaPromises[t].then((function(){return i.logger.log("previous promise completed for "+t),e.pause()}),(function(){return i.logger.log("previous promise failed for "+t),e.pause()})):this.mediaPromises[t]=e.pause()},a.prototype.assignElement=function(e,t,n){i.logger.log("queuing assign on "+n+" element "+e+" for "+t),this.mediaPromises[n]?this.mediaPromises[n]=this.mediaPromises[n].then((function(){i.logger.log("previous promise completed for "+n),e.srcObject=t}),(function(){i.logger.log("previous promise failed for "+n),e.srcObject=t})):e.srcObject=t},a.prototype.getLocalVideoElement=function(){return this.localVideoElement},a.prototype.getRemoteVideoElement=function(){return this.remoteVideoElement},a.prototype.getRemoteAudioElement=function(){return this.remoteAudioElement},a.prototype.setLocalVideoElement=function(e){if(this.localVideoElement=e,e&&this.localAVStream&&"video"===this.type){e.autoplay=!0,this.assignElement(e,this.localAVStream,"localVideo"),e.muted=!0;const t=this;setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)}},a.prototype.setRemoteVideoElement=function(e){this.remoteVideoElement=e,m(this)},a.prototype.setRemoteAudioElement=function(e){this.remoteVideoElement.muted=!0,this.remoteAudioElement=e,this.remoteAudioElement.muted=!1,g(this)},a.prototype._initWithInvite=function(e){this.msg=e.getContent(),this.peerConn=A(this);const t=this;this.peerConn&&this.peerConn.setRemoteDescription(new this.webRtc.RtcSessionDescription(this.msg.offer),S(t,t._onSetRemoteDescriptionSuccess),S(t,t._onSetRemoteDescriptionError)),l(this,"ringing"),this.direction="inbound",this.msg.offer&&this.msg.offer.sdp&&this.msg.offer.sdp.indexOf("m=video")>-1?this.type="video":this.type="voice",e.getAge()&&setTimeout((function(){"ringing"==t.state&&(v("Call invite has expired. Hanging up."),t.hangupParty="remote",l(t,"ended"),p(t),"closed"!=t.peerConn.signalingState&&t.peerConn.close(),t.emit("hangup",t))}),this.msg.lifetime-e.getAge())},a.prototype._initWithHangup=function(e){this.msg=e.getContent(),l(this,"ended")},a.prototype.answer=function(){v("Answering call %s of type %s",this.callId,this.type);const e=this;e._answerContent?e._sendAnswer():this.localAVStream||this.waitForLocalAVStream?this.localAVStream?this._maybeGotUserMediaForAnswer(this.localAVStream):this.waitForLocalAVStream&&l(this,"wait_local_media"):(this.webRtc.getUserMedia(k(this.type),S(e,e._maybeGotUserMediaForAnswer),S(e,e._maybeGotUserMediaForAnswer)),l(this,"wait_local_media"))},a.prototype._replacedBy=function(e){v(this.callId+" being replaced by "+e.callId),"wait_local_media"==this.state?(v("Telling new call to wait for local media"),e.waitForLocalAVStream=!0):"create_offer"==this.state?(v("Handing local stream to new call"),e._maybeGotUserMediaForAnswer(this.localAVStream),delete this.localAVStream):"invite_sent"==this.state&&(v("Handing local stream to new call"),e._maybeGotUserMediaForAnswer(this.localAVStream),delete this.localAVStream),e.localVideoElement=this.localVideoElement,e.remoteVideoElement=this.remoteVideoElement,e.remoteAudioElement=this.remoteAudioElement,this.successor=e,this.emit("replaced",e),this.hangup(!0)},a.prototype.hangup=function(e,t){if("ended"==this.state)return;v("Ending call "+this.callId),h(this,"local",e,!t);const n={version:0,call_id:this.callId,reason:e};u(this,"m.call.hangup",n)},a.prototype.setLocalVideoMuted=function(e){this.localAVStream&&c(this.localAVStream.getVideoTracks(),!e)},a.prototype.isLocalVideoMuted=function(){return!!this.localAVStream&&!f(this.localAVStream.getVideoTracks())},a.prototype.setMicrophoneMuted=function(e){this.localAVStream&&c(this.localAVStream.getAudioTracks(),!e)},a.prototype.isMicrophoneMuted=function(){return!!this.localAVStream&&!f(this.localAVStream.getAudioTracks())},a.prototype._maybeGotUserMediaForInvite=function(e){if(this.successor)return void this.successor._maybeGotUserMediaForAnswer(e);if("ended"==this.state)return;v("_maybeGotUserMediaForInvite -> "+this.type);const t=this,n=e,r={mandatory:{OfferToReceiveAudio:!0,OfferToReceiveVideo:"video"===t.type}};if(e instanceof MediaStream){const n=this.getLocalVideoElement();n&&"video"==this.type&&(n.autoplay=!0,this.screenSharingStream?(v("Setting screen sharing stream to the local video element"),this.assignElement(n,this.screenSharingStream,"localVideo")):this.assignElement(n,e,"localVideo"),n.muted=!0,setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)),this.screenSharingStream&&(this.screenSharingStream.addTrack(e.getAudioTracks()[0]),e=this.screenSharingStream),this.localAVStream=e,c(e.getAudioTracks(),!0),this.peerConn=A(this),this.peerConn.addStream(e)}else{if("PermissionDeniedError"!==n.name)return v("Failed to getUserMedia: "+n.name),void this._getUserMediaFailed(n);v("User denied access to camera/microphone. Or possibly you are using an insecure domain. Receiving only."),this.peerConn=A(this)}this.peerConn.createOffer(S(t,t._gotLocalOffer),S(t,t._getLocalOfferFailed),r),l(t,"create_offer")},a.prototype._sendAnswer=function(e){u(this,"m.call.answer",this._answerContent).then(()=>{l(this,"connecting"),_(this)}).catch(e=>{l(this,"ringing"),this.client.cancelPendingEvent(e.event);let t=a.ERR_SEND_ANSWER,n="Failed to send answer";throw"UnknownDeviceError"==e.name&&(t=a.ERR_UNKNOWN_DEVICES,n="Unknown devices present in the room"),this.emit("error",b(t,n)),e})},a.prototype._maybeGotUserMediaForAnswer=function(e){const t=this;if("ended"==t.state)return;const n=e;if(e instanceof MediaStream){const n=t.getLocalVideoElement();n&&"video"==t.type&&(n.autoplay=!0,this.assignElement(n,e,"localVideo"),n.muted=!0,setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)),t.localAVStream=e,c(e.getAudioTracks(),!0),t.peerConn.addStream(e)}else{if("PermissionDeniedError"!==n.name)return v("Failed to getUserMedia: "+n.name),void this._getUserMediaFailed(n);v("User denied access to camera/microphone. Or possibly you are using an insecure domain. Receiving only.")}const r={mandatory:{OfferToReceiveAudio:!0,OfferToReceiveVideo:"video"===t.type}};t.peerConn.createAnswer((function(e){v("Created answer: ",e),t.peerConn.setLocalDescription(e,(function(){t._answerContent={version:0,call_id:t.callId,answer:{sdp:t.peerConn.localDescription.sdp,type:t.peerConn.localDescription.type}},t._sendAnswer()}),(function(){v("Error setting local description!")}),r)}),(function(e){v("Failed to create answer: "+e)})),l(t,"create_answer")},a.prototype._gotLocalIceCandidate=function(e){if(e.candidate){if(v("Got local ICE "+e.candidate.sdpMid+" candidate: "+e.candidate.candidate),"ended"==this.state)return;const t={candidate:e.candidate.candidate,sdpMid:e.candidate.sdpMid,sdpMLineIndex:e.candidate.sdpMLineIndex};d(this,t)}},a.prototype._gotRemoteIceCandidate=function(e){"ended"!=this.state&&(v("Got remote ICE "+e.sdpMid+" candidate: "+e.candidate),this.peerConn.addIceCandidate(new this.webRtc.RtcIceCandidate(e),(function(){}),(function(e){})))},a.prototype._receivedAnswer=function(e){if("ended"==this.state)return;this.peerConn.setRemoteDescription(new this.webRtc.RtcSessionDescription(e.answer),S(this,this._onSetRemoteDescriptionSuccess),S(this,this._onSetRemoteDescriptionError)),l(this,"connecting")},a.prototype._gotLocalOffer=function(e){const t=this;v("Created offer: ",e),"ended"!=t.state?t.peerConn.setLocalDescription(e,(function(){const e={version:0,call_id:t.callId,offer:{sdp:t.peerConn.localDescription.sdp,type:t.peerConn.localDescription.type},lifetime:a.CALL_TIMEOUT_MS};u(t,"m.call.invite",e).then(()=>{l(t,"invite_sent"),setTimeout((function(){"invite_sent"==t.state&&t.hangup("invite_timeout")}),a.CALL_TIMEOUT_MS)}).catch(e=>{let n=a.ERR_SEND_INVITE,r="Failed to send invite";throw"UnknownDeviceError"==e.name&&(n=a.ERR_UNKNOWN_DEVICES,r="Unknown devices present in the room"),t.client.cancelPendingEvent(e.event),h(t,"local",n,!1),t.emit("error",b(n,r)),e})}),(function(){v("Error setting local description!")})):v("Ignoring newly created offer on call ID "+t.callId+" because the call has ended")},a.prototype._getLocalOfferFailed=function(e){this.emit("error",b(a.ERR_LOCAL_OFFER_FAILED,"Failed to start audio for call!"))},a.prototype._getUserMediaFailed=function(e){h(this,"local","user_media_failed",!1),this.emit("error",b(a.ERR_NO_USER_MEDIA,"Couldn't start capturing media! Is your microphone set up and does this app have permission?"))},a.prototype._onIceConnectionStateChanged=function(){"ended"!=this.state&&(v("Ice connection state changed to: "+this.peerConn.iceConnectionState),"completed"==this.peerConn.iceConnectionState||"connected"==this.peerConn.iceConnectionState?(l(this,"connected"),this.didConnect=!0):"failed"==this.peerConn.iceConnectionState&&this.hangup("ice_failed"))},a.prototype._onSignallingStateChanged=function(){v("call "+this.callId+": Signalling state changed to: "+this.peerConn.signalingState)},a.prototype._onSetRemoteDescriptionSuccess=function(){v("Set remote description")},a.prototype._onSetRemoteDescriptionError=function(e){v("Failed to set remote description"+e)},a.prototype._onAddStream=function(e){v("Stream id "+e.stream.id+" added");const t=e.stream;t.getVideoTracks().length>0?(this.type="video",this.remoteAVStream=t,this.remoteAStream=t):(this.type="voice",this.remoteAStream=t);const n=this;T(t,(function(e){v("Track id "+e.id+" added"),e.onstarted=S(n,n._onRemoteStreamTrackStarted)})),void 0!==e.stream.oninactive?e.stream.oninactive=S(n,n._onRemoteStreamEnded):e.stream.onended=S(n,n._onRemoteStreamEnded),e.stream.onstarted=S(n,n._onRemoteStreamStarted),"video"===this.type?(m(this),g(this)):g(this)},a.prototype._onRemoteStreamStarted=function(e){l(this,"connected")},a.prototype._onRemoteStreamEnded=function(e){v("Remote stream ended"),this.hangupParty="remote",l(this,"ended"),p(this),"closed"!=this.peerConn.signalingState&&this.peerConn.close(),this.emit("hangup",this)},a.prototype._onRemoteStreamTrackStarted=function(e){l(this,"connected")},a.prototype._onHangupReceived=function(e){v("Hangup received"),h(this,"remote",e.reason,!0)},a.prototype._onAnsweredElsewhere=function(e){v("Answered elsewhere"),h(this,"remote","answered_elsewhere",!0)};const c=function(e,t){for(let n=0;n5)return v("Failed to send candidates on attempt %s. Giving up for now.",e.candidateSendTries),void(e.candidateSendTries=0);const r=500*Math.pow(2,e.candidateSendTries);++e.candidateSendTries,v("Failed to send candidates. Retrying in "+r+"ms"),setTimeout((function(){_(e)}),r)}))},w=function(e,t){e.client.callList[e.callId]=e,e.webRtc.getUserMedia(t,S(e,e._maybeGotUserMediaForInvite),S(e,e._maybeGotUserMediaForInvite)),l(e,"wait_local_media"),e.direction="outbound",e.config=t},A=function(e){const t=new e.webRtc.RtcPeerConnection({iceTransportPolicy:e.forceTURN?"relay":void 0,iceServers:e.turnServers});return t.oniceconnectionstatechange=S(e,e._onIceConnectionStateChanged),t.onsignalingstatechange=S(e,e._onSignallingStateChanged),t.onicecandidate=S(e,e._gotLocalIceCandidate),t.onaddstream=S(e,e._onAddStream),t},E=function(t){const n=e.screen;if(n)return{video:{mediaSource:"screen",mandatory:{chromeMediaSource:"screen",chromeMediaSourceId:""+Date.now(),maxWidth:n.width,maxHeight:n.height,minFrameRate:1,maxFrameRate:10}}};t.emit("error",b(a.ERR_NO_USER_MEDIA,"Couldn't determine screen sharing constaints."))},k=function(t){const n=!!e.window.navigator.webkitGetUserMedia;switch(t){case"voice":return{audio:{deviceId:x?{ideal:x}:void 0},video:!1};case"video":return{audio:{deviceId:x?{ideal:x}:void 0},video:{deviceId:R?{ideal:R}:void 0,width:n?{exact:640}:{ideal:640},height:n?{exact:360}:{ideal:360}}}}},S=function(e,t){return function(){return t.apply(e,arguments)}},T=function(e,t){!function(e,t){const n=e.getVideoTracks();for(let e=0;e{let i=!0;const o=e.open(t);o.onupgradeneeded=()=>{i=!1},o.onblocked=()=>r(),o.onsuccess=()=>{o.result.close(),i||e.deleteDatabase(t),n(i)},o.onerror=e=>r(e.target.error)})}},function(e,t,n){"use strict";(function(e){var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.OlmDevice=c,t.WITHHELD_MESSAGES=void 0;var i=n(4),o=n(36),s=r(n(141));function a(e){if(void 0===e)throw new Error("payloadString undefined");if(e.length>49152)throw new Error("Message too long ("+e.length+" bytes). The maximum for an encrypted message is 49152 bytes.")}function c(e){this._cryptoStore=e,this._pickleKey="DEFAULT_KEY",this.deviceCurve25519Key=null,this.deviceEd25519Key=null,this._maxOneTimeKeys=null,this._outboundGroupSessionStore={},this._inboundGroupSessionMessageIndexes={},this._sessionsInProgress={}}c.prototype.init=async function(){let t;const n=new e.Olm.Account;try{await async function(e,t,n){await e.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],r=>{e.getAccount(r,i=>{null!==i?n.unpickle(t,i):(n.create(),i=n.pickle(t),e.storeAccount(r,i))})})}(this._cryptoStore,this._pickleKey,n),t=JSON.parse(n.identity_keys()),this._maxOneTimeKeys=n.max_number_of_one_time_keys()}finally{n.free()}this.deviceCurve25519Key=t.curve25519,this.deviceEd25519Key=t.ed25519},c.getOlmVersion=function(){return e.Olm.get_library_version()},c.prototype._getAccount=function(t,n){this._cryptoStore.getAccount(t,t=>{const r=new e.Olm.Account;try{r.unpickle(this._pickleKey,t),n(r)}finally{r.free()}})},c.prototype._storeAccount=function(e,t){this._cryptoStore.storeAccount(e,t.pickle(this._pickleKey))},c.prototype._getSession=function(e,t,n,r){this._cryptoStore.getEndToEndSession(e,t,n,e=>{this._unpickleSession(e,r)})},c.prototype._unpickleSession=function(t,n){const r=new e.Olm.Session;try{r.unpickle(this._pickleKey,t.session),n(Object.assign({},t,{session:r}))}finally{r.free()}},c.prototype._saveSession=function(e,t,n){const r=t.session.session_id(),i=Object.assign(t,{session:t.session.pickle(this._pickleKey)});this._cryptoStore.storeEndToEndSession(e,r,i,n)},c.prototype._getUtility=function(t){const n=new e.Olm.Utility;try{return t(n)}finally{n.free()}},c.prototype.sign=async function(e){let t;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_ACCOUNT],n=>{this._getAccount(n,n=>{t=n.sign(e)})}),t},c.prototype.getOneTimeKeys=async function(){let e;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_ACCOUNT],t=>{this._getAccount(t,t=>{e=JSON.parse(t.one_time_keys())})}),e},c.prototype.maxNumberOfOneTimeKeys=function(){return this._maxOneTimeKeys},c.prototype.markKeysAsPublished=async function(){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],e=>{this._getAccount(e,t=>{t.mark_keys_as_published(),this._storeAccount(e,t)})})},c.prototype.generateOneTimeKeys=function(e){return this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],t=>{this._getAccount(t,n=>{n.generate_one_time_keys(e),this._storeAccount(t,n)})})},c.prototype.createOutboundSession=async function(t,n){let r;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT,o.IndexedDBCryptoStore.STORE_SESSIONS],i=>{this._getAccount(i,o=>{const s=new e.Olm.Session;try{s.create_outbound(o,t,n),r=s.session_id(),this._storeAccount(i,o);const e={session:s,lastReceivedMessageTs:Date.now()};this._saveSession(t,e,i)}finally{s.free()}})}),r},c.prototype.createInboundSession=async function(t,n,r){if(0!==n)throw new Error("Need messageType == 0 to create inbound session");let i;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT,o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getAccount(o,s=>{const a=new e.Olm.Session;try{a.create_inbound_from(s,t,r),s.remove_one_time_keys(a),this._storeAccount(o,s);const e=a.decrypt(n,r),c={session:a,lastReceivedMessageTs:Date.now()};this._saveSession(t,c,o),i={payload:e,session_id:a.session_id()}}finally{a.free()}})}),i},c.prototype.getSessionIdsForDevice=async function(e){if(this._sessionsInProgress[e]){i.logger.log("waiting for olm session to be created");try{await this._sessionsInProgress[e]}catch(e){}}let t;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_SESSIONS],n=>{this._cryptoStore.getEndToEndSessions(e,n,e=>{t=Object.keys(e)})}),t},c.prototype.getSessionIdForDevice=async function(e,t){const n=await this.getSessionInfoForDevice(e,t);if(0===n.length)return null;let r=0;for(let e=1;es||i===s&&t.sessionId{this._cryptoStore.getEndToEndSessions(e,t,e=>{const t=Object.keys(e).sort();for(const r of t)this._unpickleSession(e[r],e=>{n.push({lastReceivedMessageTs:e.lastReceivedMessageTs,hasReceivedMessage:e.session.has_received_message(),sessionId:r})})})}),n},c.prototype.encryptMessage=async function(e,t,n){let r;return a(n),await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getSession(e,t,o,s=>{const a=s.session.describe();i.logger.log("encryptMessage: Olm Session ID "+t+" to "+e+": "+a),r=s.session.encrypt(n),this._saveSession(e,s,o)})}),r},c.prototype.decryptMessage=async function(e,t,n,r){let s;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getSession(e,t,o,a=>{const c=a.session.describe();i.logger.log("decryptMessage: Olm Session ID "+t+" from "+e+": "+c),s=a.session.decrypt(n,r),a.lastReceivedMessageTs=Date.now(),this._saveSession(e,a,o)})}),s},c.prototype.matchesSession=async function(e,t,n,r){if(0!==n)return!1;let i;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_SESSIONS],n=>{this._getSession(e,t,n,e=>{i=e.session.matches_inbound(r)})}),i},c.prototype.recordSessionProblem=async function(e,t,n){await this._cryptoStore.storeEndToEndSessionProblem(e,t,n)},c.prototype.sessionMayHaveProblems=async function(e,t){return await this._cryptoStore.getEndToEndSessionProblem(e,t)},c.prototype.filterOutNotifiedErrorDevices=async function(e){return await this._cryptoStore.filterOutNotifiedErrorDevices(e)},c.prototype._saveOutboundGroupSession=function(e){const t=e.pickle(this._pickleKey);this._outboundGroupSessionStore[e.session_id()]=t},c.prototype._getOutboundGroupSession=function(t,n){const r=this._outboundGroupSessionStore[t];if(void 0===r)throw new Error("Unknown outbound group session "+t);const i=new e.Olm.OutboundGroupSession;try{return i.unpickle(this._pickleKey,r),n(i)}finally{i.free()}},c.prototype.createOutboundGroupSession=function(){const t=new e.Olm.OutboundGroupSession;try{return t.create(),this._saveOutboundGroupSession(t),t.session_id()}finally{t.free()}},c.prototype.encryptGroupMessage=function(e,t){const n=this;return i.logger.log(`encrypting msg with megolm session ${e}`),a(t),this._getOutboundGroupSession(e,(function(e){const r=e.encrypt(t);return n._saveOutboundGroupSession(e),r}))},c.prototype.getOutboundGroupSessionKey=function(e){return this._getOutboundGroupSession(e,(function(e){return{chain_index:e.message_index(),key:e.session_key()}}))},c.prototype._unpickleInboundGroupSession=function(t,n){const r=new e.Olm.InboundGroupSession;try{return r.unpickle(this._pickleKey,t.session),n(r)}finally{r.free()}},c.prototype._getInboundGroupSession=function(e,t,n,r,i){this._cryptoStore.getEndToEndInboundGroupSession(t,n,r,(t,n)=>{if(null!==t){if(null!==e&&e!==t.room_id)throw new Error("Mismatched room_id for inbound group session (expected "+t.room_id+", was "+e+")");this._unpickleInboundGroupSession(t,e=>{i(e,t,n)})}else i(null,null,n)})},c.prototype.addInboundGroupSession=async function(t,n,r,s,a,c,f){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(t,n,s,o,(l,u)=>{const d=new e.Olm.InboundGroupSession;try{if(f?d.import_session(a):d.create(a),s!=d.session_id())throw new Error("Mismatched group session ID from senderKey: "+n);if(l&&(i.logger.log("Update for megolm session "+n+"/"+s),l.first_known_index()<=d.first_known_index()))return void i.logger.log(`Keeping existing megolm session ${s}`);const e={room_id:t,session:d.pickle(this._pickleKey),keysClaimed:c,forwardingCurve25519KeyChain:r};this._cryptoStore.storeEndToEndInboundGroupSession(n,s,e,o)}finally{d.free()}})})},c.prototype.addInboundGroupSessionWithheld=async function(e,t,n,r,i){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._cryptoStore.storeEndToEndInboundGroupSessionWithheld(t,n,{room_id:e,code:r,reason:i},o)})};const f={"m.unverified":"The sender has disabled encrypting to unverified devices.","m.blacklisted":"The sender has blocked you.","m.unauthorised":"You are not authorised to read the message.","m.no_olm":"Unable to establish a secure channel."};function l(e){return e.code&&e.code in f?f[e.code]:e.reason?e.reason:"decryption key withheld"}t.WITHHELD_MESSAGES=f,c.prototype.decryptGroupMessage=async function(e,t,n,r,i,a){let c,f;if(await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(e,t,n,o,(e,u,d)=>{if(null===e)return d&&(f=new s.DecryptionError("MEGOLM_UNKNOWN_INBOUND_SESSION_ID",l(d),{session:t+"|"+n})),void(c=null);let h;try{h=e.decrypt(r)}catch(e){return void(f=e&&"OLM.UNKNOWN_MESSAGE_INDEX"===e.message&&d?new s.DecryptionError("MEGOLM_UNKNOWN_INBOUND_SESSION_ID",l(d),{session:t+"|"+n}):e)}let p=h.plaintext;if(void 0===p)p=h;else{const e=t+"|"+n+"|"+h.message_index;if(e in this._inboundGroupSessionMessageIndexes){const t=this._inboundGroupSessionMessageIndexes[e];if(t.id!==i||t.timestamp!==a)return void(f=new Error("Duplicate message index, possible replay attack: "+e))}this._inboundGroupSessionMessageIndexes[e]={id:i,timestamp:a}}u.session=e.pickle(this._pickleKey),this._cryptoStore.storeEndToEndInboundGroupSession(t,n,u,o),c={result:p,keysClaimed:u.keysClaimed||{},senderKey:t,forwardingCurve25519KeyChain:u.forwardingCurve25519KeyChain||[]}})}),f)throw f;return c},c.prototype.hasInboundSessionKeys=async function(e,t,n){let r;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._cryptoStore.getEndToEndInboundGroupSession(t,n,o,o=>{null!==o?e!==o.room_id?(i.logger.warn(`requested keys for inbound group session ${t}|`+`${n}, with incorrect room_id `+`(expected ${o.room_id}, `+`was ${e})`),r=!1):r=!0:r=!1})}),r},c.prototype.getInboundGroupSessionKey=async function(e,t,n,r){let i;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(e,t,n,o,(e,t)=>{if(null===e)return void(i=null);void 0===r&&(r=e.first_known_index());const n=e.export_session(r),o=(t.keysClaimed||{}).ed25519||null;i={chain_index:r,key:n,forwarding_curve25519_key_chain:t.forwardingCurve25519KeyChain||[],sender_claimed_ed25519_key:o}})}),i},c.prototype.exportInboundGroupSession=function(e,t,n){return this._unpickleInboundGroupSession(n,r=>{const i=r.first_known_index();return{sender_key:e,sender_claimed_keys:n.keysClaimed,room_id:n.room_id,session_id:t,session_key:r.export_session(i),forwarding_curve25519_key_chain:r.forwardingCurve25519KeyChain||[],first_known_index:r.first_known_index()}})},c.prototype.verifySignature=function(e,t,n){this._getUtility((function(r){r.ed25519_verify(e,t,n)}))}}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(295),n(296);var r=n(82);Object.keys(r).forEach((function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(t,e,{enumerable:!0,get:function(){return r[e]}})}))},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.DeviceTrustLevel=t.UserTrustLevel=t.CrossSigningLevel=t.CrossSigningInfo=void 0;var r=n(22),i=n(10),o=n(4);function s(e){return Object.values(e.keys)[0]}class a extends i.EventEmitter{constructor(e,t){super(),Object.defineProperty(this,"userId",{enumerable:!0,value:e}),this._callbacks=t||{},this.keys={},this.firstUse=!0}async getCrossSigningKey(t,n){if(!this._callbacks.getCrossSigningKey)throw new Error("No getCrossSigningKey callback supplied");void 0===n&&(n=this.getId(t));const r=await this._callbacks.getCrossSigningKey(t,n);if(!r)throw new Error("getCrossSigningKey callback for "+t+" returned falsey");const i=new e.Olm.PkSigning,o=i.init_with_seed(r);if(o!==n)throw i.free(),new Error("Key type "+t+" from getCrossSigningKey callback did not match");return[o,i]}static fromStorage(e,t){const n=new a(t);for(const t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}toStorage(){return{keys:this.keys,firstUse:this.firstUse}}async isStoredInSecretStorage(e){let t=!0;for(const n of["master","self_signing","user_signing"])t&=await e.isStored(`m.cross_signing.${n}`,!1);return t}static async storeInSecretStorage(e,t){for(const n of Object.keys(e)){const i=(0,r.encodeBase64)(e[n]);await t.store(`m.cross_signing.${n}`,i)}}static async getFromSecretStorage(e,t){const n=await t.get(`m.cross_signing.${e}`);return(0,r.decodeBase64)(n)}getId(e){if(e=e||"master",!this.keys[e])return null;return s(this.keys[e])}async resetKeys(t){if(!this._callbacks.saveCrossSigningKeys)throw new Error("No saveCrossSigningKeys callback supplied");if(void 0===t||t&c.MASTER||!this.keys.master)t=c.MASTER|c.USER_SIGNING|c.SELF_SIGNING;else if(0===t)return;const n={},i={};let o,s;try{if(t&c.MASTER?(o=new e.Olm.PkSigning,n.master=o.generate_seed(),s=o.init_with_seed(n.master),i.master={user_id:this.userId,usage:["master"],keys:{["ed25519:"+s]:s}}):[s,o]=await this.getCrossSigningKey("master"),t&c.SELF_SIGNING){const t=new e.Olm.PkSigning;try{n.self_signing=t.generate_seed();const e=t.init_with_seed(n.self_signing);i.self_signing={user_id:this.userId,usage:["self_signing"],keys:{["ed25519:"+e]:e}},(0,r.pkSign)(i.self_signing,o,this.userId,s)}finally{t.free()}}if(t&c.USER_SIGNING){const t=new e.Olm.PkSigning;try{n.user_signing=t.generate_seed();const e=t.init_with_seed(n.user_signing);i.user_signing={user_id:this.userId,usage:["user_signing"],keys:{["ed25519:"+e]:e}},(0,r.pkSign)(i.user_signing,o,this.userId,s)}finally{t.free()}}Object.assign(this.keys,i),this._callbacks.saveCrossSigningKeys(n)}finally{o&&o.free()}}setKeys(e){const t={};if(e.master){if(e.master.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in master key from "+this.userId;throw o.logger.error(t),new Error(t)}this.keys.master?s(e.master)!==this.getId()&&(this.firstUse=!1):this.firstUse=!0,t.master=e.master}else{if(!this.keys.master)throw new Error("Tried to set cross-signing keys without a master key");t.master=this.keys.master}const n=s(t.master);if(e.user_signing){if(e.user_signing.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in user_signing key from "+this.userId;throw o.logger.error(t),new Error(t)}try{(0,r.pkVerify)(e.user_signing,n,this.userId)}catch(e){throw o.logger.error("invalid signature on user-signing key"),e}}if(e.self_signing){if(e.self_signing.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in self_signing key from "+this.userId;throw o.logger.error(t),new Error(t)}try{(0,r.pkVerify)(e.self_signing,n,this.userId)}catch(e){throw o.logger.error("invalid signature on self-signing key"),e}}e.master&&(this.keys.master=e.master,this.keys.self_signing=null,this.keys.user_signing=null),e.self_signing&&(this.keys.self_signing=e.self_signing),e.user_signing&&(this.keys.user_signing=e.user_signing)}async signObject(e,t){if(!this.keys[t])throw new Error("Attempted to sign with "+t+" key but no such key present");const[n,i]=await this.getCrossSigningKey(t);try{return(0,r.pkSign)(e,i,this.userId,n),e}finally{i.free()}}async signUser(e){if(this.keys.user_signing)return this.signObject(e.keys.master,"user_signing")}async signDevice(e,t){if(e!==this.userId)throw new Error(`Trying to sign ${e}'s device; can only sign our own device`);if(this.keys.self_signing)return this.signObject({algorithms:t.algorithms,keys:t.keys,device_id:t.deviceId,user_id:e},"self_signing")}checkUserTrust(e){if(this.userId===e.userId&&this.getId()&&this.getId()===e.getId()&&this.getId("self_signing")&&this.getId("self_signing")===e.getId("self_signing"))return new f(!0,this.firstUse);if(!this.keys.user_signing)return new f(!1,e.firstUse);let t;const n=e.keys.master,i=this.getId("user_signing");try{(0,r.pkVerify)(n,i,this.userId),t=!0}catch(e){t=!1}return new f(t,e.firstUse)}checkDeviceTrust(e,t,n){const i=this.checkUserTrust(e),o=e.keys.self_signing;if(!o)return new l(!1,!1,n);const a=function(e,t){return{algorithms:e.algorithms,keys:e.keys,device_id:e.deviceId,user_id:t,signatures:e.signatures}}(t,e.userId);try{return(0,r.pkVerify)(o,e.getId(),e.userId),(0,r.pkVerify)(a,s(o),e.userId),l.fromUserTrustLevel(i,n)}catch(e){return new l(!1,!1,n)}}}t.CrossSigningInfo=a;const c={MASTER:4,USER_SIGNING:2,SELF_SIGNING:1};t.CrossSigningLevel=c;class f{constructor(e,t){this._crossSigningVerified=e,this._tofu=t}isVerified(){return this.isCrossSigningVerified()}isCrossSigningVerified(){return this._crossSigningVerified}isTofu(){return this._tofu}}t.UserTrustLevel=f;class l{constructor(e,t,n){this._crossSigningVerified=e,this._tofu=t,this._localVerified=n}static fromUserTrustLevel(e,t){return new l(e._crossSigningVerified,e._tofu,t)}isVerified(){return this.isCrossSigningVerified()||this.isLocallyVerified()}isCrossSigningVerified(){return this._crossSigningVerified}isLocallyVerified(){return this._localVerified}isTofu(){return this._tofu}}t.DeviceTrustLevel=l}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VerificationBase=void 0;var r=n(19),i=n(10),o=n(4),s=n(52),a=n(37);const c=new Error("Verification timed out");class f extends i.EventEmitter{constructor(e,t,n,r,i,o){super(),this._channel=e,this._baseApis=t,this.userId=n,this.deviceId=r,this.startEvent=i,this.request=o,this.cancelled=!1,this._done=!1,this._promise=null,this._transactionTimeoutTimer=null,this._resetTimer()}_resetTimer(){o.logger.info("Refreshing/starting the verification transaction timeout timer"),null!==this._transactionTimeoutTimer&&clearTimeout(this._transactionTimeoutTimer),this._transactionTimeoutTimer=setTimeout(()=>{this._done||this.cancelled||(o.logger.info("Triggering verification timeout"),this.cancel(c))},6e5)}_endTimer(){null!==this._transactionTimeoutTimer&&(clearTimeout(this._transactionTimeoutTimer),this._transactionTimeoutTimer=null)}_send(e,t){return this._channel.send(e,t)}_waitForEvent(e){return this._done?Promise.reject(new Error("Verification is already done")):(this._expectedEvent=e,new Promise((e,t)=>{this._resolveEvent=e,this._rejectEvent=t}))}handleEvent(e){if(!this._done)if(e.getType()===this._expectedEvent)"m.key.verification.done"!==this._expectedEvent&&(this._expectedEvent=void 0,this._rejectEvent=void 0,this._resetTimer(),this._resolveEvent(e));else if("m.key.verification.cancel"===e.getType()){const e=this._reject;this._reject=void 0,e(new Error("Other side cancelled verification"))}else{const t=new Error("Unexpected message: expecting "+this._expectedEvent+" but got "+e.getType());if(this._expectedEvent=void 0,this._rejectEvent){const e=this._rejectEvent;this._rejectEvent=void 0,e(t)}this.cancel(t)}}done(){this._endTimer(),this._done||(this._channel.needsDoneMessage&&this._send("m.key.verification.done",{}),this._resolve())}cancel(e){if(this._endTimer(),!this._done){if(this.cancelled=!0,this.userId&&this.deviceId)if(e===c){const e=(0,a.newTimeoutError)();this._send(e.getType(),e.getContent())}else if(e instanceof r.MatrixEvent){if(e.getSender()!==this.userId){const t=e.getContent();"m.key.verification.cancel"===e.getType()?(t.code=t.code||"m.unknown",t.reason=t.reason||t.body||"Unknown reason",this._send("m.key.verification.cancel",t)):this._send("m.key.verification.cancel",{code:"m.unknown",reason:t.body||"Unknown reason"})}}else this._send("m.key.verification.cancel",{code:"m.unknown",reason:e.toString()});null!==this._promise?this._reject&&this._reject(e):this._promise=Promise.reject(e),this.emit("cancel",e)}}verify(){return this._promise?this._promise:(this._promise=new Promise((e,t)=>{this._resolve=(...t)=>{this._done=!0,this._endTimer(),e(...t)},this._reject=(...e)=>{this._done=!0,this._endTimer(),t(...e)}}),this._doVerification&&!this._started&&(this._started=!0,this._resetTimer(),Promise.resolve(this._doVerification()).then(this.done.bind(this),this.cancel.bind(this))),this._promise)}async _verifyKeys(e,t,n){const r=[];for(const[i,a]of Object.entries(t)){const t=i.split(":",2)[1],c=await this._baseApis.getStoredDevice(e,t);if(c)await n(i,c,a),r.push(t);else{const c=this._baseApis._crypto._deviceList.getStoredCrossSigningForUser(e);c&&c.getId()===t?(await n(i,s.DeviceInfo.fromStorage({keys:{[i]:t}},t),a),r.push(t)):o.logger.warn(`verification: Could not find device ${t} to verify`)}}if(!r.length)throw new Error("No devices could be verified");for(const t of r)await this._baseApis.setDeviceVerified(e,t)}}t.VerificationBase=f},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.keyFromAuthData=async function(t,n){if(!e.Olm)throw new Error("Olm is not available");if(!t.private_key_salt||!t.private_key_iterations)throw new Error("Salt and/or iterations not found: this backup cannot be restored with a passphrase");return await i(n,t.private_key_salt,t.private_key_iterations)},t.keyFromPassphrase=async function(t){if(!e.Olm)throw new Error("Olm is not available");const n=(0,r.randomString)(32);return{key:await i(t,n,5e5),salt:n,iterations:5e5}},t.deriveKey=i;var r=n(53);async function i(t,n,r){const i=e.crypto.subtle,o=e.TextEncoder;if(!i||!o)throw new Error("Password-based backup is not avaiable on this platform");const s=await i.importKey("raw",(new o).encode(t),{name:"PBKDF2"},!1,["deriveBits"]),a=await i.deriveBits({name:"PBKDF2",salt:(new o).encode(n),iterations:r,hash:"SHA-512"},s,8*e.Olm.PRIVATE_KEY_LENGTH);return new Uint8Array(a)}}).call(this,n(6))},function(e,t,n){"use strict";(function(e,r){var i=n(16);Object.defineProperty(t,"__esModule",{value:!0}),t.encodeRecoveryKey=function(t){const n=new e(s.length+t.length+1);n.set(s,0),n.set(t,s.length);let r=0;for(let e=0;e{this.accountData[e.type]=e})}_accumulateRooms(e){e.rooms&&(e.rooms.invite&&Object.keys(e.rooms.invite).forEach(t=>{this._accumulateRoom(t,"invite",e.rooms.invite[t])}),e.rooms.join&&Object.keys(e.rooms.join).forEach(t=>{this._accumulateRoom(t,"join",e.rooms.join[t])}),e.rooms.leave&&Object.keys(e.rooms.leave).forEach(t=>{this._accumulateRoom(t,"leave",e.rooms.leave[t])}))}_accumulateRoom(e,t,n){switch(t){case"invite":this._accumulateInviteState(e,n);break;case"join":this.inviteRooms[e]&&delete this.inviteRooms[e],this._accumulateJoinState(e,n);break;case"leave":this.inviteRooms[e]?delete this.inviteRooms[e]:delete this.joinRooms[e];break;default:r.logger.error("Unknown cateogory: ",t)}}_accumulateInviteState(e,t){if(!t.invite_state||!t.invite_state.events)return;if(!this.inviteRooms[e])return void(this.inviteRooms[e]={invite_state:t.invite_state});const n=this.inviteRooms[e];t.invite_state.events.forEach(e=>{let t=!1;for(let r=0;r{n._accountData[e.type]=e}),t.unread_notifications&&(n._unreadNotifications=t.unread_notifications),t.summary){const e="m.heroes",r="m.invited_member_count",i="m.joined_member_count",o=n._summary,s=t.summary;o[e]=s[e]||o[e],o[i]=s[i]||o[i],o[r]=s[r]||o[r]}if(t.ephemeral&&t.ephemeral.events&&t.ephemeral.events.forEach(e=>{"m.receipt"===e.type&&e.content&&Object.keys(e.content).forEach(t=>{e.content[t]["m.read"]&&Object.keys(e.content[t]["m.read"]).forEach(r=>{n._readReceipts[r]={data:e.content[t]["m.read"][r],eventId:t}})})}),t.timeline&&t.timeline.limited&&(n._timeline=[]),t.state&&t.state.events&&t.state.events.forEach(e=>{o(n._currentState,e)}),t.timeline&&t.timeline.events&&t.timeline.events.forEach((e,r)=>{o(n._currentState,e),n._timeline.push({event:e,token:0===r?t.timeline.prev_batch:null})}),n._timeline.length>this.opts.maxTimelineEntries){for(let e=n._timeline.length-this.opts.maxTimelineEntries;e{this._accumulateGroup(t,"invite",e.groups.invite[t])}),e.groups.join&&Object.keys(e.groups.join).forEach(t=>{this._accumulateGroup(t,"join",e.groups.join[t])}),e.groups.leave&&Object.keys(e.groups.leave).forEach(t=>{this._accumulateGroup(t,"leave",e.groups.leave[t])}))}_accumulateGroup(e,t,n){for(const t of["invite","join","leave"])delete this.groups[t][e];this.groups[t][e]=n}getJSON(){const e={join:{},invite:{},leave:{}};Object.keys(this.inviteRooms).forEach(t=>{e.invite[t]=this.inviteRooms[t]}),Object.keys(this.joinRooms).forEach(t=>{const n=this.joinRooms[t],r={ephemeral:{events:[]},account_data:{events:[]},state:{events:[]},timeline:{events:[],prev_batch:null},unread_notifications:n._unreadNotifications,summary:n._summary};Object.keys(n._accountData).forEach(e=>{r.account_data.events.push(n._accountData[e])});const s={type:"m.receipt",room_id:t,content:{}};Object.keys(n._readReceipts).forEach(e=>{const t=n._readReceipts[e];s.content[t.eventId]||(s.content[t.eventId]={"m.read":{}}),s.content[t.eventId]["m.read"][e]=t.data}),Object.keys(s.content).length>0&&r.ephemeral.events.push(s),n._timeline.forEach(e=>{if(!r.timeline.prev_batch){if(!e.token)return;r.timeline.prev_batch=e.token}r.timeline.events.push(e.event)});const a=Object.create(null);for(let e=r.timeline.events.length-1;e>=0;e--){const t=r.timeline.events[e];if(null===t.state_key||void 0===t.state_key)continue;const n=(0,i.deepCopy)(t);n.unsigned&&(n.unsigned.prev_content&&(n.content=n.unsigned.prev_content),n.unsigned.prev_sender&&(n.sender=n.unsigned.prev_sender)),o(a,n)}Object.keys(n._currentState).forEach(e=>{Object.keys(n._currentState[e]).forEach(t=>{let i=n._currentState[e][t];a[e]&&a[e][t]&&(i=a[e][t]),r.state.events.push(i)})}),e.join[t]=r});const t=[];return Object.keys(this.accountData).forEach(e=>{t.push(this.accountData[e])}),{nextBatch:this.nextBatch,roomsData:e,groupsData:this.groups,accountData:t}}getNextBatchToken(){return this.nextBatch}}},function(e,t,n){"use strict";var r=String.prototype.replace,i=/%20/g,o=n(84),s={RFC1738:"RFC1738",RFC3986:"RFC3986"};e.exports=o.assign({default:s.RFC3986,formatters:{RFC1738:function(e){return r.call(e,i,"+")},RFC3986:function(e){return String(e)}}},s)},function(e,t){for(var n=[],r=0;r<256;++r)n[r]=(r+256).toString(16).substr(1);e.exports=function(e,t){var r=t||0,i=n;return[i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]]].join("")}},function(e,t,n){"use strict";t.__esModule=!0,t.stateify=t.TokenState=t.CharacterState=void 0;var r=n(54);var i=function(e){this.j=[],this.T=e||null};i.prototype={defaultTransition:!1,on:function(e,t){if(e instanceof Array){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:null,n=this.next(new e(""));return n===this.defaultTransition?(n=new this.constructor(t),this.on(e,n)):t&&(n.T=t),n},test:function(e,t){return e instanceof t}});t.CharacterState=o,t.TokenState=s,t.stateify=function(e,t,n,r){for(var i=0,s=e.length,a=t,c=[],f=void 0;i=s)return[];for(;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}},function(e,t,n){"use strict";(function(e){var r=n(155),i=n.n(r),o=n(86),s=n.n(o),a=n(26),c=n.n(a),f=n(27),l=n.n(f),u=n(55),d=n.n(u),h=n(56),p=n.n(h),m=n(5),g=n.n(m),y=n(57),b=n.n(y),v=n(1),_=n.n(v),w=n(0),A=n.n(w),E=n(9),k=n.n(E),S=n(335),T=(n(41),n(156)),I=n(38),x=(n(42),n(157)),R=n(158),C=n(40),O=n(28),P=n(87),M=n(160),D=n(88),B=n(162);n(331);function N(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function j(e){for(var t=1;t0&&void 0!==arguments[0])||arguments[0];if(r.state.client){await r.state.client.leave(r.state.roomId);var t={type:"m.login.password",user:r.state.userId,identifier:{type:"m.id.user",user:r.state.userId},password:r.state.password};await r.state.client.deactivateAccount(t,!0),await r.state.client.stopClient(),await r.state.client.clearStores(),r.setState({client:null,ready:!0}),window.clearInterval(r.state.waitIntervalId)}r.state.localStorage&&r.state.localStorage.clear(),e&&r.setState(r.initialState)})),_()(g()(r),"createLocalStorage",(async function(t,n){var r=e.localStorage;if(null==r){var i="matrix-chat-".concat(t,"-").concat(n),o=I.resolve(I.join(T.homedir(),".local-storage",i));r=new x.LocalStorage(o)}return r})),_()(g()(r),"createClientWithAccount",(async function(){var e=C.createClient(r.props.matrixServerUrl);try{await e.registerRequest({})}catch(c){var t=Object(O.uuid)(),n=Object(O.uuid)(),i=c.data.session,o=await e.registerRequest({auth:{session:i,type:"m.login.dummy"},inhibit_login:!1,password:n,username:t,x_show_msisdn:!0}),s=await r.createLocalStorage(o.device_id,i);r.setState({accessToken:o.access_token,userId:o.user_id,username:t,password:n,localStorage:s,sessionId:i,deviceId:o.device_id});var a={baseUrl:r.props.matrixServerUrl,accessToken:o.access_token,userId:o.user_id,deviceId:o.device_id,sessionStore:new C.WebStorageSessionStore(s)};return C.createClient(a)}})),_()(g()(r),"initializeChat",(async function(){r.setState({ready:!1});var e=await r.createClientWithAccount();try{await e.initCrypto()}catch(e){return r.restartWithoutCrypto()}await e.startClient(),e.once("sync",(async function(t,n,i){"PREPARED"===t&&(r.setState({client:e}),e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e))}))})),_()(g()(r),"restartWithoutCrypto",(async function(){r.state.client&&(r.state.client.leave(r.state.roomId),r.state.client.stopClient(),r.state.client.clearStores(),r.state.localStorage.clear()),r.setState({ready:!1,facilitatorInvited:!1,decryptionErrors:{},roomId:null,typingStatus:null,client:null,isCryptoEnabled:!1}),r.displayBotMessage({body:"Restarting chat without encryption."});var e,t={baseUrl:r.props.matrixServerUrl,accessToken:r.state.accessToken,userId:r.state.userId,deviceId:r.state.deviceId};e=C.createClient(t),await e.startClient(),e.once("sync",(async function(t,n,i){if("PREPARED"===t)try{r.setState({client:e}),e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e),r.displayBotMessage({body:"Messages in this chat are not encrypted."})}catch(e){console.log("error",e),r.handleInitError(e)}}))})),_()(g()(r),"initializeUnencryptedChat",(async function(){r.setState({ready:!1});var e=await r.createClientWithAccount();await e.startClient(),e.once("sync",(async function(t,n,i){e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e)}))})),_()(g()(r),"handleInitError",(function(e){console.log("error",e),r.displayBotMessage({body:r.props.chatUnavailableMessage}),r.setState({ready:!0})})),_()(g()(r),"handleDecryptionError",(async function(e,t){var n=e.getId();r.handleMessageEvent(e),r.setState({decryptionErrors:_()({},n,!0)})})),_()(g()(r),"verifyAllRoomDevices",(async function(e,t){if(t&&e&&r.state.isCryptoEnabled){var n=(await t.getEncryptionTargetMembers()).map((function(e){return e.userId})),i=await e.downloadKeys(n);for(var o in i)for(var s in i[o])await e.setDeviceVerified(o,s)}})),_()(g()(r),"createRoom",(async function(e){var t=new Date,n=t.toLocaleDateString(),i=t.toLocaleTimeString(),o={room_alias_name:"private-support-chat-".concat(Object(O.uuid)()),invite:[r.props.botId],visibility:"private",name:"".concat(i,", ").concat(n," - ").concat(r.props.roomName)},s=await e.isCryptoEnabled();s&&(o.initial_state=[{type:"m.room.encryption",state_key:"",content:U}]);var a=(await e.createRoom(o)).room_id;e.setPowerLevel(a,r.props.botId,100),r.setState({roomId:a,isCryptoEnabled:s})})),_()(g()(r),"sendMessage",(async function(e){if(r.state.client&&r.state.roomId)try{await r.state.client.sendTextMessage(r.state.roomId,e)}catch(t){switch(t.name){case"UnknownDeviceError":Object.keys(t.devices).forEach((function(e){Object.keys(t.devices[e]).map((async function(t){await r.state.client.setDeviceKnown(e,t,!0)}))})),r.sendMessage(e);break;default:r.displayBotMessage({body:"Your message was not sent."}),console.log("Error sending message",t)}}})),_()(g()(r),"displayFakeMessage",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Object(O.uuid)(),i={id:n,type:"m.room.message",sender:t,roomId:r.state.roomId,content:e,timestamp:Date.now()};r.setState({messages:j({},r.state.messages,_()({},n,i))})})),_()(g()(r),"displayBotMessage",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Object(O.uuid)(),i={id:n,type:"m.room.message",sender:r.props.botId,roomId:t||r.state.roomId,content:e,timestamp:Date.now()};r.setState({messages:j({},r.state.messages,_()({},n,i))})})),_()(g()(r),"handleMessageEvent",(function(e){var t={id:e.getId(),type:e.getType(),sender:e.getSender(),roomId:e.getRoomId(),content:e.getContent(),timestamp:e.getTs()};if(!(t.content.showToUser&&t.content.showToUser!==r.state.userId||t.content.body.startsWith("!bot")&&t.sender!==r.state.userId)){var n=s()(r.state.messagesInFlight),i=n.findIndex((function(e){return e===t.content.body}));i>-1&&(n.splice(i,1),r.setState({messagesInFlight:n}));var o=j({},r.state.decryptionErrors);delete o[t.id],r.setState({messages:j({},r.state.messages,_()({},t.id,t)),decryptionErrors:o})}})),_()(g()(r),"handleKeyDown",(function(e){switch(e.keyCode){case 27:r.state.emojiSelectorOpen?r.closeEmojiSelector():r.state.opened&&r.handleToggleOpen()}})),_()(g()(r),"setMatrixListeners",(function(e){e.on("sync",(function(t,n,i){switch(t){case"ERROR":case"SYNCING":break;case"PREPARED":r.setState({client:e})}})),e.on("Room.timeline",(function(t,n){var i=t.getType(),o=t.getContent(),s=t.getSender();if("m.room.encryption"===i&&(r.displayBotMessage({body:"Messages in this chat are secured with end-to-end encryption."},n.room_id),r.verifyAllRoomDevices(e,n)),"m.room.message"===i&&!r.state.isCryptoEnabled){if(t.isEncrypted())return;r.handleMessageEvent(t)}"m.room.member"===i&&"invite"===o.membership&&s===r.props.botId&&r.setState({facilitatorInvited:!0}),"m.room.member"===i&&"join"===o.membership&&s!==r.props.botId&&s!==r.state.userId&&(r.verifyAllRoomDevices(e,n),r.setState({facilitatorId:s,ready:!0}),window.clearInterval(r.state.waitIntervalId))})),e.on("Event.decrypted",(function(e,t){if(t)return r.handleDecryptionError(e,t);"m.room.message"===e.getType()&&r.handleMessageEvent(e)})),e.on("RoomMember.typing",(function(e,t){t.typing&&t.roomId===r.state.roomId?r.setState({typingStatus:"".concat(t.name," is typing...")}):r.setState({typingStatus:null})})),e.on("event",(function(e){var t=e.getType(),n=e.getContent();"m.bot.signal"===t&&r.handleBotSignal(n.signal)}))})),_()(g()(r),"handleBotSignal",(function(e){switch(e){case"END_CHAT":return r.displayBotMessage({body:r.props.exitMessage}),r.exitChat(!1);case"CHAT_OFFLINE":return r.displayBotMessage({body:r.props.chatOfflineMessage}),r.exitChat(!1)}})),_()(g()(r),"handleInputChange",(function(e){r.setState({inputValue:e.target.value})})),_()(g()(r),"handleAcceptTerms",(function(){r.setState({awaitingAgreement:!1}),r.startWaitTimeForFacilitator();try{r.props.isEncryptionDisabled?r.initializeUnencryptedChat():r.initializeChat()}catch(e){r.handleInitError(e)}})),_()(g()(r),"startWaitTimeForFacilitator",(function(){var e=window.setInterval((function(){r.state.facilitatorId||r.state.ready||r.displayBotMessage({body:r.props.waitMessage})}),r.props.waitInterval);r.setState({waitIntervalId:e})})),_()(g()(r),"handleRejectTerms",(function(){r.exitChat(),r.displayBotMessage({body:r.props.exitMessage})})),_()(g()(r),"handleSubmit",(function(e){e.preventDefault();var t=r.state.inputValue;if(!Boolean(t))return null;if(r.state.isCryptoEnabled&&r.state.client&&(!r.state.client.isRoomEncrypted(r.state.roomId)||!r.state.client.isCryptoEnabled()))return null;if(r.state.client&&r.state.roomId){var n=s()(r.state.messagesInFlight);n.push(t),r.setState({inputValue:"",messagesInFlight:n},(function(){return r.sendMessage(t)})),r.chatboxInput.current.focus()}})),_()(g()(r),"onEmojiClick",(function(e,t){e.preventDefault();var n=t.emoji;r.setState({inputValue:r.state.inputValue.concat(n),emojiSelectorOpen:!1},r.chatboxInput.current.focus())})),r.initialState={opened:!1,showDock:!0,client:null,ready:!0,accessToken:null,userId:null,password:null,localStorage:null,messages:{},inputValue:"",errors:[],roomId:null,typingStatus:null,awaitingAgreement:!0,emojiSelectorOpen:!1,facilitatorInvited:!1,isMobile:!0,isSlowConnection:!0,decryptionErrors:{},messagesInFlight:[]},r.state=r.initialState,r.chatboxInput=A.a.createRef(),r.messageWindow=A.a.createRef(),r.termsUrl=A.a.createRef(),r}return b()(n,t),l()(n,[{key:"componentDidUpdate",value:function(e,t){t.messages===this.state.messages&&t.messagesInFlight===this.state.messagesInFlight&&t.typingStatus===this.state.typingStatus||this.messageWindow.current.scrollTo&&this.messageWindow.current.scrollTo(0,this.messageWindow.current.scrollHeight),!t.facilitatorInvited&&this.state.facilitatorInvited&&this.displayBotMessage({body:this.props.confirmationMessage}),!t.opened&&this.state.opened&&this.detectMobile()}},{key:"componentDidMount",value:function(){document.addEventListener("keydown",this.handleKeyDown,!1),window.addEventListener("beforeunload",this.exitChat)}},{key:"componentWillUnmount",value:function(){document.removeEventListener("keydown",this.handleKeyDown,!1),window.removeEventListener("beforeunload",this.exitChat),this.exitChat()}},{key:"render",value:function(){var e,t=this,n=this.state,r=n.ready,o=n.messages,s=n.messagesInFlight,a=n.inputValue,c=n.userId,f=n.roomId,l=n.typingStatus,u=n.opened,d=n.showDock,h=n.emojiSelectorOpen,p=n.isMobile,m=n.decryptionErrors,g=Object.values(o).sort((function(e,t){return e.timestamp-t.timestamp})),y=this.props.position.split(" "),b=i()(y,2),v=b[0],w=b[1];return A.a.createElement("div",{id:"safesupport"},A.a.createElement("div",{className:"docked-widget size-".concat(this.props.size),role:"complementary",style:(e={},_()(e,v,"10px"),_()(e,w,"10px"),e)},A.a.createElement(S.a,{in:u,timeout:250,onExited:this.handleWidgetExit,onEntered:this.handleWidgetEnter},(function(e){return A.a.createElement("div",{className:"widget widget-".concat(e," position-").concat(v),"aria-hidden":!u},A.a.createElement("div",{id:"safesupport-chatbox","aria-haspopup":"dialog"},A.a.createElement(D.a,{handleToggleOpen:t.handleToggleOpen,opened:u,handleExitChat:t.handleExitChat}),A.a.createElement("div",{className:"message-window",ref:t.messageWindow},A.a.createElement("div",{className:"messages"},A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text"},t.props.introMessage)),A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text"},"Please read the full ",A.a.createElement("a",{href:t.props.termsUrl,ref:t.termsUrl,target:"_blank",rel:"noopener noreferrer"},"terms and conditions"),". By using this chat, you agree to these terms.")),A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text"},t.props.agreementMessage)),A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text buttons"},"👉",A.a.createElement("button",{className:"btn",id:"accept",onClick:t.handleAcceptTerms},"YES"),A.a.createElement("button",{className:"btn",id:"reject",onClick:t.handleRejectTerms},"NO"))),g.map((function(e,n){return A.a.createElement(P.a,{key:e.id,message:e,userId:c,botId:t.props.botId,client:t.state.client})})),s.map((function(e,t){return A.a.createElement(P.a,{key:"message-inflight-".concat(t),message:{content:{body:e}},placeholder:!0})})),l&&A.a.createElement("div",{className:"notices"},A.a.createElement("div",{role:"status"},l)),Boolean(Object.keys(m).length)&&A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text buttons"},"Restart chat without encryption?",A.a.createElement("button",{className:"btn",id:"accept",onClick:t.restartWithoutCrypto},"RESTART"))),!r&&A.a.createElement("div",{className:"loader"},"loading..."))),A.a.createElement("div",{className:"input-window"},A.a.createElement("form",{onSubmit:t.handleSubmit},A.a.createElement("div",{className:"message-input-container"},A.a.createElement("input",{id:"message-input",type:"text",onChange:t.handleInputChange,value:a,"aria-label":"Send a message...",placeholder:"Send a message...",autoFocus:!0,ref:t.chatboxInput}),"entered"===e&&!p&&A.a.createElement(B.a,{onEmojiClick:t.onEmojiClick,emojiSelectorOpen:h,toggleEmojiSelector:t.toggleEmojiSelector,closeEmojiSelector:t.closeEmojiSelector})),A.a.createElement("input",{type:"submit",value:"Send",id:"submit",onClick:t.handleSubmit})))))})),d&&!f&&A.a.createElement(M.a,{handleToggleOpen:this.handleToggleOpen,size:this.props.size}),d&&f&&A.a.createElement(D.a,{handleToggleOpen:this.handleToggleOpen,opened:u,handleExitChat:this.handleExitChat})))}}]),n}(A.a.Component);L.propTypes={matrixServerUrl:k.a.string.isRequired,botId:k.a.string.isRequired,termsUrl:k.a.string,introMessage:k.a.string,roomName:k.a.string,agreementMessage:k.a.string,confirmationMessage:k.a.string,exitMessage:k.a.string,chatUnavailableMessage:k.a.string,anonymousDisplayName:k.a.string,waitMessage:k.a.string,chatOfflineMessage:k.a.string,isEncryptionDisabled:k.a.bool,position:k.a.oneOf(["top left","top right","bottom left","bottom right"]),size:k.a.oneOf(["small","large"]),maxWaitTime:k.a.number,waitInterval:k.a.number},L.defaultProps={matrixServerUrl:"https://matrix.rhok.space/",botId:"@help-bot:rhok.space",termsUrl:"https://tosdr.org/",roomName:"Support Chat",introMessage:"This chat application does not collect any of your personal data or any data from your use of this service.",agreementMessage:"Do you want to continue?",confirmationMessage:"Waiting for a facilitator to join the chat...",exitMessage:"The chat is closed. You may close this window.",anonymousDisplayName:"Anonymous",chatUnavailableMessage:"The chat service is not available right now. Please try again later.",waitMessage:"Please be patient, our online facilitators are currently responding to other support requests.",chatOfflineMessage:"All of the chat facilitators are currently offline.",isEncryptionDisabled:!1,position:"bottom right",size:"large",maxWaitTime:6e5,waitInterval:12e4},t.a=L}).call(this,n(6))},function(e,t,n){var r=n(169),i=n(170),o=n(171);e.exports=function(e,t){return r(e)||i(e,t)||o()}},function(e,t){t.endianness=function(){return"LE"},t.hostname=function(){return"undefined"!=typeof location?location.hostname:""},t.loadavg=function(){return[]},t.uptime=function(){return 0},t.freemem=function(){return Number.MAX_VALUE},t.totalmem=function(){return Number.MAX_VALUE},t.cpus=function(){return[]},t.type=function(){return"Browser"},t.release=function(){return"undefined"!=typeof navigator?navigator.appVersion:""},t.networkInterfaces=t.getNetworkInterfaces=function(){return{}},t.arch=function(){return"javascript"},t.platform=function(){return"browser"},t.tmpdir=t.tmpDir=function(){return"/tmp"},t.EOL="\n",t.homedir=function(){return"/"}},function(e,t,n){(function(e){(function(){var r,i,o,s,a,c,f,l,u,d,h,p,m,g=function(e,t){for(var n in t)y.call(t,n)&&(e[n]=t[n]);function r(){this.constructor=e}return r.prototype=t.prototype,e.prototype=new r,e.__super__=t.prototype,e},y={}.hasOwnProperty;p=n(38),h=n(42),d=n(10),m=n(180).sync,c=function(e){var t,n,r,i,o;for(o=[],t=0,n=(i=h.readdirSync(e)).length;tthis.quota)throw new s;if(m(c,y,"utf8"),i||((u=new o(n,this._keys.push(e)-1)).size=b,this._metaKeyMap[e]=u,this.length+=1,this._bytesInUse+=b),l)return r=new a(e,g,t,this._eventUrl),this.emit("storage",r)},r.prototype.getItem=function(e){var t,n;return e=f(e),(n=this._metaKeyMap[e])?(t=p.join(this._location,n.key),h.readFileSync(t,"utf8")):null},r.prototype._getStat=function(e){var t;e=f(e),t=p.join(this._location,encodeURIComponent(e));try{return h.statSync(t)}catch(e){return null}},r.prototype.removeItem=function(e){var t,n,r,i,o,s,c,u;if(e=f(e),s=this._metaKeyMap[e]){for(i in c=null,(r=d.EventEmitter.listenerCount(this,"storage"))&&(c=this.getItem(e)),delete this._metaKeyMap[e],this.length-=1,this._bytesInUse-=s.size,n=p.join(this._location,s.key),this._keys.splice(s.index,1),u=this._metaKeyMap)u[i],(o=this._metaKeyMap[i]).index>s.index&&(o.index-=1);if(l(n),r)return t=new a(e,c,null,this._eventUrl),this.emit("storage",t)}},r.prototype.key=function(e){var t;return"---.EMPTY_STRING.---"===(t=this._keys[e])?"":t},r.prototype.clear=function(){var e;if(c(this._location),this._metaKeyMap=u(),this._keys=[],this.length=0,this._bytesInUse=0,d.EventEmitter.listenerCount(this,"storage"))return e=new a(null,null,null,this._eventUrl),this.emit("storage",e)},r.prototype._getBytesInUse=function(){return this._bytesInUse},r.prototype._deleteLocation=function(){return delete n[this._location],l(this._location),this._metaKeyMap={},this._keys=[],this.length=0,this._bytesInUse=0},r}(d.EventEmitter)),t.LocalStorage=i,t.JSONStorage=r,t.QUOTA_EXCEEDED_ERR=s}).call(this)}).call(this,n(13))},function(e,t,n){(function(t,r,i,o){var s,a,c,f,l={},u=(c="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,function(f){var u,d;if(f=f||{},u||(u=void 0!==f?f:{}),"undefined"!=typeof window)d=function(e){window.crypto.getRandomValues(e)};else{if(!e.exports)throw Error("Cannot find global to attach library to");var h=n(204);d=function(e){var t=h.randomBytes(e.length);e.set(t)},r=t.process}if("undefined"!=typeof OLM_OPTIONS)for(var p in OLM_OPTIONS)OLM_OPTIONS.hasOwnProperty(p)&&(u[p]=OLM_OPTIONS[p]);u.onRuntimeInitialized=function(){We=u._olm_error(),l.PRIVATE_KEY_LENGTH=u._olm_pk_private_key_length(),s&&s()},u.onAbort=function(e){a&&a(e)};var m,g={};for(m in u)u.hasOwnProperty(m)&&(g[m]=u[m]);u.arguments=[],u.thisProgram="./this.program",u.quit=function(e,t){throw t},u.preRun=[],u.postRun=[];var y=!1,b=!1,v=!1,_=!1;y="object"==typeof window,b="function"==typeof importScripts,v="object"==typeof r&&!y&&!b,_=!y&&!v&&!b;var w,A,E="";v?(E=i+"/",u.read=function(e,t){var r=Ae(e);return r||(w||(w=n(42)),A||(A=n(38)),e=A.normalize(e),r=w.readFileSync(e)),t?r:r.toString()},u.readBinary=function(e){return(e=u.read(e,!0)).buffer||(e=new Uint8Array(e)),C(e.buffer),e},1>2];return e=t+e+15&-16,U[V>>2]=e,(e=e>=$)&&(J(),e=!0),e?(U[V>>2]=t,0):t}function x(e){var t;return t||(t=16),Math.ceil(e/t)*t}g=void 0;var R=!1;function C(e,t){e||Be("Assertion failed: "+t)}function O(e){var t="i8";switch("*"===t.charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":B[e>>0]=0;break;case"i16":j[e>>1]=0;break;case"i32":U[e>>2]=0;break;case"i64":tempI64=[0,(tempDouble=0,1<=+ce(tempDouble)?0>>0:~~+fe((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],U[e>>2]=tempI64[0],U[e+4>>2]=tempI64[1];break;case"float":L[e>>2]=0;break;case"double":F[e>>3]=0;break;default:Be("invalid type for setValue: "+t)}}function P(e,t){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return B[e>>0];case"i16":return j[e>>1];case"i32":case"i64":return U[e>>2];case"float":return L[e>>2];case"double":return F[e>>3];default:Be("invalid type for getValue: "+t)}return null}function M(e){var t,n=u.ALLOC_STACK;if("number"==typeof e)var r=!0,i=e;else r=!1,i=e.length;if(t=4==n?o:["function"==typeof ke?ke:T,Se,T,I][void 0===n?2:n](Math.max(i,1)),r){var o=t;for(C(0==(3&t)),e=t+(-4&i);o>2]=0;for(e=t+i;o>0]=0;return t}return e.subarray||e.slice?N.set(e,t):N.set(new Uint8Array(e),t),t}var D,B,N,j,U,L,F,q,z,K,G,H,V,Q="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function W(e){for(var t=N,n=e;t[n];)++n;if(16r?n+=String.fromCharCode(r):(r-=65536,n+=String.fromCharCode(55296|r>>10,56320|1023&r))}}else n+=String.fromCharCode(r)}}function Y(e,t,n,r){if(!(0=s&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),127>=s){if(n>=r)break;t[n++]=s}else{if(2047>=s){if(n+1>=r)break;t[n++]=192|s>>6}else{if(65535>=s){if(n+2>=r)break;t[n++]=224|s>>12}else{if(2097151>=s){if(n+3>=r)break;t[n++]=240|s>>18}else{if(67108863>=s){if(n+4>=r)break;t[n++]=248|s>>24}else{if(n+5>=r)break;t[n++]=252|s>>30,t[n++]=128|s>>24&63}t[n++]=128|s>>18&63}t[n++]=128|s>>12&63}t[n++]=128|s>>6&63}t[n++]=128|63&s}}return t[n]=0,n-i}function X(e){for(var t=0,n=0;n=r&&(r=65536+((1023&r)<<10)|1023&e.charCodeAt(++n)),127>=r?++t:t=2047>=r?t+2:65535>=r?t+3:2097151>=r?t+4:67108863>=r?t+5:t+6}return t}function J(){Be("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+$+", (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 ")}"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le"),q=z=K=G=H=V=0;var Z=u.TOTAL_STACK||5242880,$=u.TOTAL_MEMORY||16777216;function ee(e){for(;0>0]=e.charCodeAt(n)}var ce=Math.abs,fe=Math.ceil,le=Math.floor,ue=Math.min,de=0,he=null,pe=null;u.preloadedImages={},u.preloadedAudios={};var me=null,ge="data:application/octet-stream;base64,";q=39112,ne.push(),me="data:application/octet-stream;base64,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dmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAAAAAAAAXZQAAAgAAABmlAAACwAAALiSAABUlAAACAAAALiSAAC0mAAAAAAAAAEAAAABAAAAAQAAAAIAAAACAAAAuJIAANiUAAALAAAAuJIAACKWAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmJgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABPTE1fS0VZUwBPTE1fUk9PVABPTE1fUkFUQ0hFVABzZW5kZXIgY2hhaW4gaW5kZXg6ICVkIAByZWNlaXZlciBjaGFpbiBpbmRpY2VzOgAgc2tpcHBlZCBtZXNzYWdlIGtleXM6ACAlZAABAiJjdXJ2ZTI1NTE5IjoAImVkMjU1MTkiOgBNRUdPTE1fS0VZUwAAAQIDVU5LTk9XTl9FUlJPUgBTVUNDRVNTAE5PVF9FTk9VR0hfUkFORE9NAE9VVFBVVF9CVUZGRVJfVE9PX1NNQUxMAEJBRF9NRVNTQUdFX1ZFUlNJT04AQkFEX01FU1NBR0VfRk9STUFUAEJBRF9NRVNTQUdFX01BQwBCQURfTUVTU0FHRV9LRVlfSUQASU5WQUxJRF9CQVNFNjQAQkFEX0FDQ09VTlRfS0VZAFVOS05PV05fUElDS0xFX1ZFUlNJT04AQ09SUlVQVEVEX1BJQ0tMRQBCQURfU0VTU0lPTl9LRVkAVU5LTk9XTl9NRVNTQUdFX0lOREVYAEJBRF9MRUdBQ1lfQUNDT1VOVF9QSUNLTEUAQkFEX1NJR05BVFVSRQBPTE1fSU5QVVRfQlVGRkVSX1RPT19TTUFMTABQaWNrbGUALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBuYW4ATkFOAC4=";var ye=q;q+=16,V=T(4),z=K=x(q),H=x(G=z+Z),U[V>>2]=H;var be=!1;function ve(e){var t=Array(X(e)+1);return e=Y(e,t,0,t.length),t.length=e,t}function _e(e){for(var t=[],n=0;n>4,i=(15&i)<<4|o>>2;var a=(3&o)<<6|s;t+=String.fromCharCode(r),64!==o&&(t+=String.fromCharCode(i)),64!==s&&(t+=String.fromCharCode(a))}while(n>2]=e),e},_emscripten_memcpy_big:function(e,t,n){return N.set(N.subarray(t,t+n),e),e},DYNAMICTOP_PTR:V,tempDoublePtr:ye,STACKTOP:K,STACK_MAX:G};var Ee=function(e,t,n){"use asm";var r=new e.Int8Array(n);var i=new e.Int16Array(n);var o=new e.Int32Array(n);var s=new e.Uint8Array(n);var a=new e.Uint16Array(n);var c=new e.Uint32Array(n);var f=new e.Float32Array(n);var l=new e.Float64Array(n);var u=t.DYNAMICTOP_PTR|0;var d=t.tempDoublePtr|0;var h=t.STACKTOP|0;var p=t.STACK_MAX|0;var m=0;var g=0;var y=0;var b=0;var v=e.NaN,_=e.Infinity;var w=0,A=0,E=0,k=0,S=0.0;var T=0;var I=e.Math.floor;var x=e.Math.abs;var R=e.Math.sqrt;var C=e.Math.pow;var O=e.Math.cos;var P=e.Math.sin;var M=e.Math.tan;var D=e.Math.acos;var B=e.Math.asin;var N=e.Math.atan;var j=e.Math.atan2;var U=e.Math.exp;var L=e.Math.log;var F=e.Math.ceil;var q=e.Math.imul;var z=e.Math.min;var K=e.Math.max;var G=e.Math.clz32;var H=t.abort;var V=t.assert;var Q=t.enlargeMemory;var W=t.getTotalMemory;var Y=t.abortOnCannotGrowMemory;var X=t.invoke_ii;var J=t.invoke_iii;var Z=t.invoke_iiii;var $=t.invoke_iiiiiiiiii;var ee=t.___setErrNo;var te=t._emscripten_memcpy_big;var ne=0.0;function re(e){e=e|0;var t=0;t=h;h=h+e|0;h=h+15&-16;return t|0}function ie(){return h|0}function oe(e){e=e|0;h=e}function se(e,t){e=e|0;t=t|0;h=e;p=t}function ae(e,t){e=e|0;t=t|0;if(!m){m=e;g=t}}function ce(e){e=e|0;T=e}function fe(){return T|0}function le(e){e=e|0;var t=0;t=e+2|0;e=(t>>>0)/3|0;return(e<<2|t-(e*3|0))+-2|0}function ue(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,c=0,f=0;a=t-((t>>>0)%3|0)|0;o=e+a|0;if(!a){a=n;o=e}else{i=e;do{a=s[i>>0]|0;c=a<<8|(s[i+1>>0]|0);f=s[i+2>>0]|0;i=i+3|0;r[n+3>>0]=r[16+(f&63)>>0]|0;r[n+2>>0]=r[16+((c<<8|f)>>>6&63)>>0]|0;r[n+1>>0]=r[16+(c>>>4&63)>>0]|0;r[n>>0]=r[16+(a>>>2)>>0]|0;n=n+4|0}while((i|0)!=(o|0));a=n}n=e+t-o|0;if(!n){f=a;return f|0}i=s[o>>0]|0;if((n|0)==2){n=s[o+1>>0]|0;r[a+2>>0]=r[16+(n<<2&60)>>0]|0;n=(i<<8|n)>>>4;i=3}else{n=i<<4;i=2}r[a+1>>0]=r[16+(n&63)>>0]|0;r[a>>0]=r[16+(n>>>6)>>0]|0;f=a+i|0;return f|0}function de(e){e=e|0;var t=0;t=e+2|0;return((e&3|0)==1?-1:(t&3)+-2+((t>>>2)*3|0)|0)|0}function he(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,c=0,f=0,l=0,u=0;f=t&-4;a=e+f|0;if(!f)c=e;else{c=(((f+-4|0)>>>2)*3|0)+3|0;i=n;o=e;while(1){l=(s[80+(r[o>>0]&127)>>0]|0)<<6|(s[80+(r[o+1>>0]&127)>>0]|0);u=l<<6|(s[80+(r[o+2>>0]&127)>>0]|0);r[i+2>>0]=u<<6|(s[80+(r[o+3>>0]&127)>>0]|0);o=o+4|0;r[i+1>>0]=u>>>2;r[i>>0]=l>>>4;if((o|0)==(a|0))break;else i=i+3|0}n=n+c|0;c=e+f|0}i=e+t|0;o=i-c|0;if(!o)return i|0;a=(s[80+(r[c>>0]&127)>>0]|0)<<6|(s[80+(r[c+1>>0]&127)>>0]|0);if((o|0)==3)r[n+1>>0]=(a<<6|(s[80+(r[c+2>>0]&127)>>0]|0))>>>2;r[n>>0]=a>>>4;return i|0}function pe(e){e=e|0;var t=0;t=e+2|0;e=(t>>>0)/3|0;return(e<<2|t-(e*3|0))+-2|0}function me(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,c=0,f=0,l=0;c=t-((t>>>0)%3|0)|0;a=e+c|0;if(!c){c=n;a=e}else{i=n;o=e;do{c=s[o>>0]|0;f=c<<8|(s[o+1>>0]|0);l=s[o+2>>0]|0;o=o+3|0;r[i+3>>0]=r[16+(l&63)>>0]|0;r[i+2>>0]=r[16+((f<<8|l)>>>6&63)>>0]|0;r[i+1>>0]=r[16+(f>>>4&63)>>0]|0;r[i>>0]=r[16+(c>>>2)>>0]|0;i=i+4|0}while((o|0)!=(a|0));c=i}i=e+t-a|0;if(!i){f=c;l=n;l=f-l|0;return l|0}o=s[a>>0]|0;if((i|0)==2){i=s[a+1>>0]|0;r[c+2>>0]=r[16+(i<<2&60)>>0]|0;i=(o<<8|i)>>>4;o=3}else{i=o<<4;o=2}r[c+1>>0]=r[16+(i&63)>>0]|0;r[c>>0]=r[16+(i>>>6)>>0]|0;f=c+o|0;l=n;l=f-l|0;return l|0}function ge(e){e=e|0;var t=0;t=e+2|0;return((e&3|0)==1?-1:(t&3)+-2+((t>>>2)*3|0)|0)|0}function ye(e,t,n){e=e|0;t=t|0;n=n|0;he(e,t,n)|0;n=t+2|0;return((t&3|0)==1?-1:(n&3)+-2+((n>>>2)*3|0)|0)|0}function be(e,t){e=e|0;t=t|0;r[e+3>>0]=t;r[e+2>>0]=t>>>8;r[e+1>>0]=t>>>16;r[e>>0]=t>>>24;return e+4|0}function ve(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;o[n>>2]=0;r=e+4|0;if(r>>>0>t>>>0){r=t;return r|0}o[n>>2]=0;t=(s[e>>0]|0)<<8;o[n>>2]=t;t=(t|(s[e+1>>0]|0))<<8;o[n>>2]=t;t=(t|(s[e+2>>0]|0))<<8;o[n>>2]=t;o[n>>2]=t|(s[e+3>>0]|0);return r|0}function _e(e,t){e=e|0;t=t|0;r[e>>0]=t&1;return e+1|0}function we(e,t,n){e=e|0;t=t|0;n=n|0;if((e|0)==(t|0)){n=e;return n|0}r[n>>0]=(r[e>>0]|0)!=0&1;n=e+1|0;return n|0}function Ae(e,t,n){e=e|0;t=t|0;n=n|0;Ms(e|0,t|0,n|0)|0;return e+n|0}function Ee(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=e+r|0;if(i>>>0>t>>>0){i=t;return i|0}Ms(n|0,e|0,r|0)|0;return i|0}function ke(e){e=e|0;return 32}function Se(e,t){e=e|0;t=t|0;var n=0,i=0;i=e;n=i+32|0;do{r[i>>0]=r[t>>0]|0;i=i+1|0;t=t+1|0}while((i|0)<(n|0));return e+32|0}function Te(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;i=e+32|0;if(i>>>0>t>>>0){i=t;return i|0}t=e;e=n+32|0;do{r[n>>0]=r[t>>0]|0;n=n+1|0;t=t+1|0}while((n|0)<(e|0));return i|0}function Ie(e){e=e|0;return 64}function xe(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;n=e;i=t;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));n=e+32|0;i=t+32|0;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));return e+64|0}function Re(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0;i=e+32|0;if(i>>>0>t>>>0)i=t;else{a=n;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0))}o=i+32|0;if(o>>>0>t>>>0){a=t;return a|0}a=n+32|0;e=i;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0));a=o;return a|0}function Ce(e){e=e|0;return 32}function Oe(e,t){e=e|0;t=t|0;var n=0,i=0;i=e;n=i+32|0;do{r[i>>0]=r[t>>0]|0;i=i+1|0;t=t+1|0}while((i|0)<(n|0));return e+32|0}function Pe(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;i=e+32|0;if(i>>>0>t>>>0){i=t;return i|0}t=e;e=n+32|0;do{r[n>>0]=r[t>>0]|0;n=n+1|0;t=t+1|0}while((n|0)<(e|0));return i|0}function Me(e){e=e|0;return 96}function De(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;n=e;i=t;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));n=e+32|0;i=t+32|0;o=n+64|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));return e+96|0}function Be(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0;i=e+32|0;if(i>>>0>t>>>0)i=t;else{a=n;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0))}o=i+64|0;if(o>>>0>t>>>0){a=t;return a|0}a=n+32|0;e=i;s=a+64|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0));a=o;return a|0}function Ne(e,t){e=e|0;t=t|0;r[e+3>>0]=t;r[e+2>>0]=t>>>8;r[e+1>>0]=t>>>16;r[e>>0]=t>>>24;return e+4|0}function je(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;o[n>>2]=0;r=e+4|0;if(r>>>0>t>>>0){r=t;return r|0}o[n>>2]=0;t=(s[e>>0]|0)<<8;o[n>>2]=t;t=(t|(s[e+1>>0]|0))<<8;o[n>>2]=t;t=(t|(s[e+2>>0]|0))<<8;o[n>>2]=t;o[n>>2]=t|(s[e+3>>0]|0);return r|0}function Ue(e,t){e=e|0;t=t|0;r[e>>0]=(t|0)!=0&1;return e+1|0}function Le(e,t,n){e=e|0;t=t|0;n=n|0;if((e|0)==(t|0)){n=e;return n|0}r[n>>0]=(r[e>>0]|0)!=0&1;n=e+1|0;return n|0}function Fe(e,t,n){e=e|0;t=t|0;n=n|0;Ms(e|0,t|0,n|0)|0;return e+n|0}function qe(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=e+r|0;if(i>>>0>t>>>0){i=t;return i|0}Ms(n|0,e|0,r|0)|0;return i|0}function ze(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0,s=0;if(t>>>0>127){o=t;i=1;while(1){i=i+1|0;if(o>>>0>16383)o=o>>>7;else{s=i;break}}}else s=1;if(e>>>0>127){i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else{o=i;break}}}else o=1;if(n>>>0>127){e=n;i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else break}}else i=1;return t+4+n+r+s+o+i|0}function Ke(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;r[a>>0]=t;t=a+2|0;r[a+1>>0]=10;if(i>>>0>127){c=t;f=i;while(1){t=c+1|0;r[c>>0]=f|128;a=f>>>7;if(f>>>0>16383){c=t;f=a}else break}}else a=i;f=t+1|0;r[t>>0]=a;o[e>>2]=f;i=f+i|0;t=i+1|0;r[i>>0]=16;if(n>>>0>127)while(1){a=t+1|0;r[t>>0]=n|128;c=n>>>7;if(n>>>0>16383){t=a;n=c}else{n=c;break}}else a=t;r[a>>0]=n;c=e+4|0;t=a+2|0;r[a+1>>0]=34;if(s>>>0<=127){f=s;i=t;f=f&255;e=i+1|0;r[i>>0]=f;o[c>>2]=e;return}a=t;while(1){t=a+1|0;r[a>>0]=s|128;n=s>>>7;if(s>>>0>16383){a=t;s=n}else break}i=n&255;e=t+1|0;r[t>>0]=i;o[c>>2]=e;return}function Ge(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0;s=n-i|0;f=t+s|0;o[e+8>>2]=t;o[e+12>>2]=n;u=e+1|0;r[u>>0]=0;d=e+16|0;h=e+20|0;p=e+24|0;l=e+28|0;o[d>>2]=0;o[d+4>>2]=0;o[d+8>>2]=0;o[d+12>>2]=0;if(n>>>0>>0|(s|0)==0)return;r[e>>0]=r[t>>0]|0;if((s|0)==1)return;a=e+4|0;c=f;s=t+1|0;e:while(1){if((r[s>>0]|0)==10){t=s+1|0;if((t|0)!=(f|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)!=(t|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0));if(n>>>0>(c-e|0)>>>0){s=58;break}}else{n=0;e=t}}else{n=0;e=f}o[d>>2]=e;o[h>>2]=n;e=e+n|0}else e=s;if((e|0)==(f|0)){s=58;break}if((r[e>>0]|0)==16){t=e+1|0;if((t|0)!=(f|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)==(t|0)){n=0;e=t}else{n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0))}}else{n=0;e=f}o[a>>2]=n;r[u>>0]=1}if((e|0)==(f|0)){s=58;break}if((r[e>>0]|0)==34){t=e+1|0;if((t|0)!=(f|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)!=(t|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0));if(n>>>0>(c-e|0)>>>0){s=58;break}}else{n=0;e=t}}else{n=0;e=f}o[p>>2]=e;o[l>>2]=n;e=e+n|0}t:do{if(!((s|0)!=(e|0)|(e|0)==(f|0))){n=r[s>>0]|0;switch(n&7){case 0:{s=s+1|0;e=(s|0)==(f|0);if(n<<24>>24<=-1)while(1){if(e){s=58;break e}n=s+1|0;e=(n|0)==(f|0);if((r[s>>0]|0)>-1){s=n;break}else s=n}if(e)break t;while(1){t=s;s=s+1|0;if((r[t>>0]|0)>-1)break t;if((s|0)==(f|0)){s=58;break e}}}case 2:break;default:{s=58;break e}}s=s+1|0;e=(s|0)==(f|0);if(n<<24>>24<=-1)while(1){if(e){s=58;break e}n=s+1|0;e=(n|0)==(f|0);if((r[s>>0]|0)>-1){s=n;break}else s=n}if(!e){e=s;while(1){t=e;e=e+1|0;if((r[t>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)!=(s|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(s|0));if(n>>>0>(c-e|0)>>>0){s=58;break e}else s=e+n|0}}}else s=e}while(0);if((s|0)==(f|0)){s=58;break}}if((s|0)==58)return}function He(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0,s=0,a=0,c=0;if(e>>>0>127){o=e;i=1;while(1){i=i+1|0;if(o>>>0>16383)o=o>>>7;else break}}else i=1;if(t>>>0>127){s=t;o=1;while(1){o=o+1|0;if(s>>>0>16383)s=s>>>7;else break}}else o=1;if(n>>>0>127){a=n;s=1;while(1){s=s+1|0;if(a>>>0>16383)a=a>>>7;else{c=s;break}}}else c=1;if(r>>>0>127){a=r;s=1;while(1){s=s+1|0;if(a>>>0>16383)a=a>>>7;else break}}else s=1;return e+5+t+n+r+i+o+c+s|0}function Ve(e,t,n,i,s,a,c){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0;r[c>>0]=t;u=e+8|0;t=c+2|0;r[c+1>>0]=10;if(s>>>0>127){f=t;l=s;while(1){t=f+1|0;r[f>>0]=l|128;c=l>>>7;if(l>>>0>16383){f=t;l=c}else break}}else c=s;l=t+1|0;r[t>>0]=c;o[u>>2]=l;s=l+s|0;u=e+4|0;t=s+1|0;r[s>>0]=18;if(i>>>0>127){f=i;while(1){l=t+1|0;r[t>>0]=f|128;c=f>>>7;if(f>>>0>16383){t=l;f=c}else{t=l;break}}}else c=i;s=t+1|0;r[t>>0]=c;o[u>>2]=s;i=s+i|0;t=i+1|0;r[i>>0]=26;if(n>>>0>127){f=n;while(1){l=t+1|0;r[t>>0]=f|128;c=f>>>7;if(f>>>0>16383){t=l;f=c}else{t=l;break}}}else c=n;l=t+1|0;r[t>>0]=c;o[e>>2]=l;n=l+n|0;l=e+12|0;t=n+1|0;r[n>>0]=34;if(a>>>0<=127){i=a;e=t;i=i&255;n=e+1|0;r[e>>0]=i;o[l>>2]=n;return}f=t;while(1){t=f+1|0;r[f>>0]=a|128;c=a>>>7;if(a>>>0>16383){f=t;a=c}else break}e=c&255;n=t+1|0;r[t>>0]=e;o[l>>2]=n;return}function Qe(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0;l=t+n|0;u=e+20|0;d=e+24|0;h=e+4|0;p=e+8|0;m=e+12|0;g=e+16|0;c=e+28|0;f=e+32|0;o[h>>2]=0;o[h+4>>2]=0;o[h+8>>2]=0;o[h+12>>2]=0;o[h+16>>2]=0;o[h+20>>2]=0;o[h+24>>2]=0;o[h+28>>2]=0;if(!n)return;r[e>>0]=r[t>>0]|0;if((n|0)==1)return;a=l;e=t+1|0;e:while(1){if((r[e>>0]|0)==10){s=e+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[u>>2]=n;o[d>>2]=t;n=n+t|0}else n=e;if((n|0)==(l|0)){e=70;break}if((r[n>>0]|0)==18){s=n+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[m>>2]=n;o[g>>2]=t;n=n+t|0}if((n|0)==(l|0)){e=70;break}if((r[n>>0]|0)==26){s=n+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[h>>2]=n;o[p>>2]=t;n=n+t|0}if((n|0)==(l|0)){e=70;break}if((r[n>>0]|0)==34){s=n+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[c>>2]=n;o[f>>2]=t;n=n+t|0}t:do{if(!((e|0)!=(n|0)|(n|0)==(l|0))){t=r[e>>0]|0;switch(t&7){case 0:{e=e+1|0;n=(e|0)==(l|0);if(t<<24>>24<=-1)while(1){if(n){e=70;break e}t=e+1|0;n=(t|0)==(l|0);if((r[e>>0]|0)>-1){e=t;break}else e=t}if(n)break t;while(1){s=e;e=e+1|0;if((r[s>>0]|0)>-1)break t;if((e|0)==(l|0)){e=70;break e}}}case 2:break;default:{e=70;break e}}e=e+1|0;n=(e|0)==(l|0);if(t<<24>>24<=-1)while(1){if(n){e=70;break e}t=e+1|0;n=(t|0)==(l|0);if((r[e>>0]|0)>-1){e=t;break}else e=t}if(!n){n=e;while(1){s=n;n=n+1|0;if((r[s>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(e|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(e|0));if(t>>>0>(a-n|0)>>>0){e=70;break e}else e=n+t|0}}}else e=n}while(0);if((e|0)==(l|0)){e=70;break}}if((e|0)==70)return}function We(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0;if(e>>>0>127){i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else break}}else i=1;if(t>>>0>127){o=t;e=1;while(1){e=e+1|0;if(o>>>0>16383)o=o>>>7;else break}}else e=1;return t+3+n+r+i+e|0}function Ye(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0;r[i>>0]=e;a=i+2|0;r[i+1>>0]=8;if(t>>>0>127){c=a;while(1){a=c+1|0;r[c>>0]=t|128;e=t>>>7;if(t>>>0>16383){c=a;t=e}else break}}else e=t;r[a>>0]=e;e=a+2|0;r[a+1>>0]=18;if(n>>>0>127){t=n;while(1){c=e+1|0;r[e>>0]=t|128;a=t>>>7;if(t>>>0>16383){e=c;t=a}else{e=c;break}}}else a=n;c=e+1|0;r[e>>0]=a;o[s>>2]=c;return c+n-i|0}function Xe(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,h=0;f=i+n|0;n=t-f|0;l=e+n|0;u=s+4|0;o[u>>2]=0;d=s+12|0;o[d>>2]=0;h=s+16|0;o[h>>2]=0;if(f>>>0>t>>>0|(n|0)==0)return;r[s>>0]=r[e>>0]|0;e:do{if((n|0)==1)n=0;else{f=l;n=0;i=e+1|0;do{if((r[i>>0]|0)==8){a=i+1|0;if((a|0)!=(l|0)){n=a;while(1){c=n;n=n+1|0;if((r[c>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)==(a|0)){t=0;n=a}else{t=0;e=n;do{e=e+-1|0;t=t<<7|r[e>>0]&127}while((e|0)!=(a|0))}}else{t=0;n=l}o[u>>2]=t;t=n;n=1}else t=i;if((t|0)==(l|0))break e;if((r[t>>0]|0)==18){c=t+1|0;if((c|0)!=(l|0)){t=c;while(1){a=t;t=t+1|0;if((r[a>>0]|0)>-1)break;if((t|0)==(l|0)){t=l;break}}if((t|0)!=(c|0)){e=0;a=t;do{a=a+-1|0;e=e<<7|r[a>>0]&127}while((a|0)!=(c|0));if(e>>>0>(f-t|0)>>>0)break e}else{e=0;t=c}}else{e=0;t=l}o[d>>2]=t;o[h>>2]=e;t=t+e|0}t:do{if(!((i|0)!=(t|0)|(t|0)==(l|0))){e=r[i>>0]|0;switch(e&7){case 0:{i=i+1|0;t=(i|0)==(l|0);if(e<<24>>24<=-1)while(1){if(t)break e;e=i+1|0;t=(e|0)==(l|0);if((r[i>>0]|0)>-1){i=e;break}else i=e}if(t)break t;while(1){c=i;i=i+1|0;if((r[c>>0]|0)>-1)break t;if((i|0)==(l|0))break e}}case 2:break;default:break e}i=i+1|0;t=(i|0)==(l|0);if(e<<24>>24<=-1)while(1){if(t)break e;e=i+1|0;t=(e|0)==(l|0);if((r[i>>0]|0)>-1){i=e;break}else i=e}if(!t){t=i;while(1){c=t;t=t+1|0;if((r[c>>0]|0)>-1)break;if((t|0)==(l|0)){t=l;break}}if((t|0)!=(i|0)){e=0;a=t;do{a=a+-1|0;e=e<<7|r[a>>0]&127}while((a|0)!=(i|0));if(e>>>0>(f-t|0)>>>0)break e;else i=t+e|0}}}else i=t}while(0)}while((i|0)!=(l|0))}}while(0);o[s+8>>2]=n&255;return}function Je(e){e=e|0;gn(e,37520,37536);o[e+3216>>2]=0;r[e+3220>>0]=0;return}function Ze(e){e=e|0;return 64}function $e(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0,l=0,u=0,d=0;d=h;h=h+224|0;f=d+160|0;l=d+96|0;u=d;if(a>>>0<64){o[e+3216>>2]=1;u=-1;h=d;return u|0}else{pt(s,f);pt(s+32|0,l);t=t+96|0;r[e+3220>>0]=0;s=e+3221|0;a=t;c=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(c|0));s=e+3253|0;a=f;c=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(c|0));s=e+3285|0;a=i;c=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(c|0));mt(t,i,u);mt(f,n,u+32|0);mt(f,i,u+64|0);bn(e,u,96,l);Hr(f,64);Hr(l,64);Hr(u,96);u=0;h=d;return u|0}return 0}function et(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0;b=h;h=h+208|0;p=b+128|0;m=b+96|0;g=b+168|0;y=b;Qe(p,i,s);c=(n|0)!=0;i=o[p+4>>2]|0;a=(i|0)!=0;s=c|a;if(i)s=s&(o[p+8>>2]|0)==32;u=o[p+28>>2]|0;l=o[p+12>>2]|0;d=o[p+20>>2]|0;if(!(s&(u|0)!=0&(l|0)!=0&(o[p+16>>2]|0)==32&(d|0)!=0&(o[p+24>>2]|0)==32)){o[e+3216>>2]=4;y=-1;h=b;return y|0}if(c&a?qo(n,i,32)|0:0){o[e+3216>>2]=6;y=-1;h=b;return y|0}f=e+3221|0;n=f;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));c=e+3253|0;n=c;i=l;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));s=e+3285|0;n=s;i=d;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));p=o[p+32>>2]|0;i=o[e+4>>2]|0;Ge(m,u,p,Gs[o[o[i>>2]>>2]&1](i)|0);i=o[m+16>>2]|0;if((i|0)!=0?(o[m+20>>2]|0)==32:0){n=g;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));i=Ir(t,s)|0;if(!i){o[e+3216>>2]=6;i=-1}else{i=i+5|0;mt(i,f,y);mt(t+96|0,c,y+32|0);mt(i,c,y+64|0);yn(e,y,96,g);Hr(y,96);i=0}}else{o[e+3216>>2]=4;i=-1}y=i;h=b;return y|0}function tt(e){e=e|0;return 32}function nt(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0;c=h;h=h+96|0;a=c;if(n>>>0<32){o[e+3216>>2]=2;a=-1;h=c;return a|0}else{n=a;i=e+3221|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));n=a+32|0;i=e+3253|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));n=a+64|0;i=e+3285|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));At(a,96,t);a=32;h=c;return a|0}return 0}function rt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0,f=0,l=0;l=h;h=h+48|0;f=l;Qe(f,n,r);c=(t|0)!=0;a=o[f+4>>2]|0;n=c|(a|0)!=0;r=(a|0)==0;if(!r)n=n&(o[f+8>>2]|0)==32;i=o[f+12>>2]|0;s=o[f+20>>2]|0;if(!(n&(o[f+28>>2]|0)!=0&(i|0)!=0&(o[f+16>>2]|0)==32&(s|0)!=0&(o[f+24>>2]|0)==32)){t=0;h=l;return t|0}if(r)n=1;else n=(qo(a,e+3221|0,32)|0)==0;if(c){if(!n){t=0;h=l;return t|0}if(qo(t,e+3221|0,32)|0){t=0;h=l;return t|0}}else if(!n){t=0;h=l;return t|0}if(qo(i,e+3253|0,32)|0){t=0;h=l;return t|0}t=(qo(s,e+3285|0,32)|0)==0;h=l;return t|0}function it(e){e=e|0;return s[e+3220>>0]|0|0}function ot(e,t){e=e|0;t=t|0;t=An(e,t)|0;if(r[e+3220>>0]|0){e=t;return e|0}e=He(32,32,32,t)|0;return e|0}function st(e){e=e|0;return En(e)|0}function at(e,t,n,i,s,a,c){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0,d=0,p=0;p=h;h=h+16|0;d=p;f=An(e,n)|0;l=e+3220|0;if(!(r[l>>0]|0))f=He(32,32,32,f)|0;if(f>>>0>c>>>0){o[e+3216>>2]=2;e=-1;h=p;return e|0}u=An(e,n)|0;if(!(r[l>>0]|0)){Ve(d,3,32,32,32,u,a);a=o[d+8>>2]|0;f=e+3285|0;c=a+32|0;do{r[a>>0]=r[f>>0]|0;a=a+1|0;f=f+1|0}while((a|0)<(c|0));a=o[d>>2]|0;f=e+3221|0;c=a+32|0;do{r[a>>0]=r[f>>0]|0;a=a+1|0;f=f+1|0}while((a|0)<(c|0));a=o[d+4>>2]|0;f=e+3253|0;c=a+32|0;do{r[a>>0]=r[f>>0]|0;a=a+1|0;f=f+1|0}while((a|0)<(c|0));a=o[d+12>>2]|0}a=kn(e,t,n,i,s,a,u)|0;if((a|0)!=-1){e=a;h=p;return e|0}s=e+8|0;o[e+3216>>2]=o[s>>2];o[s>>2]=0;e=-1;h=p;return e|0}function ct(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0;s=h;h=h+48|0;i=s;do{if((t|0)!=1){Qe(i,n,r);n=o[i+28>>2]|0;if(n|0){r=o[i+32>>2]|0;break}o[e+3216>>2]=4;e=-1;h=s;return e|0}}while(0);n=Sn(e,n,r)|0;if((n|0)!=-1){e=n;h=s;return e|0}i=e+8|0;o[e+3216>>2]=o[i>>2];o[i>>2]=0;e=-1;h=s;return e|0}function ft(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+48|0;c=f;do{if((t|0)!=1){Qe(c,n,i);n=o[c+28>>2]|0;if(n|0){i=o[c+32>>2]|0;break}o[e+3216>>2]=4;e=-1;h=f;return e|0}}while(0);n=Tn(e,n,i,s,a)|0;if((n|0)==-1){a=e+8|0;o[e+3216>>2]=o[a>>2];o[a>>2]=0;e=-1;h=f;return e|0}else{r[e+3220>>0]=1;e=n;h=f;return e|0}return 0}function lt(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0;m=h;h=h+48|0;p=m+32|0;l=m+24|0;u=m+16|0;i=m;if(!n){h=m;return}r[t>>0]=0;f=t;o[i>>2]=o[e+112>>2];i=_s(t,n,38002,i)|0;i=(i|0)>0?t+i|0:t;d=f+n|0;a=_s(i,d-i|0,38026,m+8|0)|0;i=(a|0)>0?i+a|0:i;a=e+148|0;c=e+152|0;t=f-i+n|0;if((o[a>>2]|0)!=(c|0)){s=0;do{o[l>>2]=o[e+152+(s*68|0)+32>>2];t=_s(i,t,38073,l)|0;i=(t|0)>0?i+t|0:i;s=s+1|0;t=f-i+n|0}while(s>>>0<(((o[a>>2]|0)-c|0)/68|0)>>>0)}t=_s(i,t,38050,u)|0;a=e+492|0;c=e+496|0;if((o[a>>2]|0)==(c|0)){h=m;return}s=0;t=(t|0)>-1?i+t|0:i;while(1){o[p>>2]=o[e+496+(s*68|0)+32>>2];i=_s(t,d-t|0,38073,p)|0;s=s+1|0;if(s>>>0>=(((o[a>>2]|0)-c|0)/68|0)>>>0)break;else t=(i|0)>0?t+i|0:t}h=m;return}function ut(e){e=e|0;var t=0;t=(ke(e+3221|0)|0)+5|0;t=t+(ke(e+3253|0)|0)|0;t=t+(ke(e+3285|0)|0)|0;return t+(vn(e)|0)|0}function dt(e,t){e=e|0;t=t|0;e=be(e,1)|0;return _n(Se(Se(Se(_e(e,(r[t+3220>>0]|0)!=0)|0,t+3221|0)|0,t+3253|0)|0,t+3285|0)|0,t)|0}function ht(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0;s=h;h=h+16|0;r=s;i=ve(e,t,r)|0;e=o[r>>2]|0;e:do{if((e|0)<1){switch(e|0){case-2147483647:break;default:{r=3;break e}}e=1;r=4}else switch(e|0){case 1:{e=0;r=4;break}default:r=3}}while(0);if((r|0)==3){o[n+3216>>2]=9;n=t;h=s;return n|0}else if((r|0)==4){n=wn(Te(Te(Te(we(i,t,n+3220|0)|0,t,n+3221|0)|0,t,n+3253|0)|0,t,n+3285|0)|0,t,n,e)|0;h=s;return n|0}return 0}function pt(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;i=t+32|0;o=i;n=o+32|0;do{r[o>>0]=r[e>>0]|0;o=o+1|0;e=e+1|0}while((o|0)<(n|0));Po(t,i,208)|0;return}function mt(e,t,n){e=e|0;t=t|0;n=n|0;Po(n,e+32|0,t)|0;return}function gt(e,t){e=e|0;t=t|0;hi(t,t+32|0,e);return}function yt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;bi(r,t,n,e,e+32|0);return}function bt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return(yi(r,t,n,e)|0)!=0|0}function vt(e){e=e|0;return e+16-(e&15)|0}function _t(e,t,n,i,o){e=e|0;t=t|0;n=n|0;i=i|0;o=o|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0;O=h;h=h+256|0;R=O+16|0;C=O;Ro(e,R,256);I=C;k=I+16|0;do{r[I>>0]=r[t>>0]|0;I=I+1|0;t=t+1|0}while((I|0)<(k|0));if(i>>>0>15){w=C+1|0;A=C+2|0;a=C+3|0;c=C+4|0;f=C+5|0;l=C+6|0;u=C+7|0;d=C+8|0;p=C+9|0;m=C+10|0;g=C+11|0;y=C+12|0;b=C+13|0;v=C+14|0;_=C+15|0;S=i+-16|0;T=S&-16;x=T+16|0;E=o+x|0;e=i;i=n;while(1){r[C>>0]=r[C>>0]^r[i>>0];r[w>>0]=r[w>>0]^r[i+1>>0];r[A>>0]=r[A>>0]^r[i+2>>0];r[a>>0]=r[a>>0]^r[i+3>>0];r[c>>0]=r[c>>0]^r[i+4>>0];r[f>>0]=r[f>>0]^r[i+5>>0];r[l>>0]=r[l>>0]^r[i+6>>0];r[u>>0]=r[u>>0]^r[i+7>>0];r[d>>0]=r[d>>0]^r[i+8>>0];r[p>>0]=r[p>>0]^r[i+9>>0];r[m>>0]=r[m>>0]^r[i+10>>0];r[g>>0]=r[g>>0]^r[i+11>>0];r[y>>0]=r[y>>0]^r[i+12>>0];r[b>>0]=r[b>>0]^r[i+13>>0];r[v>>0]=r[v>>0]^r[i+14>>0];r[_>>0]=r[_>>0]^r[i+15>>0];Io(C,o,R,256);I=C;t=o;k=I+16|0;do{r[I>>0]=r[t>>0]|0;I=I+1|0;t=t+1|0}while((I|0)<(k|0));e=e+-16|0;if(e>>>0<=15)break;else{o=o+16|0;i=i+16|0}}o=E;t=S-T|0;n=n+x|0}else t=i;if(t){e=0;do{x=C+e|0;r[x>>0]=r[x>>0]^r[n+e>>0];e=e+1|0}while((e|0)!=(t|0));if(t>>>0<16)n=t;else{Io(C,o,R,256);Hr(R,240);Hr(C,16);h=O;return}}else n=0;e=16-t|0;do{x=C+n|0;r[x>>0]=e^(s[x>>0]|0);n=n+1|0}while((n|0)!=16);Io(C,o,R,256);Hr(R,240);Hr(C,16);h=O;return}function wt(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0;R=h;h=h+272|0;T=R+32|0;I=R+16|0;x=R;Ro(e,T,256);S=I;k=S+16|0;do{r[S>>0]=r[t>>0]|0;S=S+1|0;t=t+1|0}while((S|0)<(k|0));if(!i){Hr(T,240);Hr(I,16);Hr(x,16);x=i+-1|0;x=s+x|0;x=r[x>>0]|0;x=x&255;I=x>>>0>i>>>0;x=i-x|0;x=I?-1:x;h=R;return x|0}E=I+1|0;a=I+2|0;c=I+3|0;f=I+4|0;l=I+5|0;u=I+6|0;d=I+7|0;p=I+8|0;m=I+9|0;g=I+10|0;y=I+11|0;b=I+12|0;v=I+13|0;_=I+14|0;w=I+15|0;e=0;do{A=n+e|0;S=x;t=A;k=S+16|0;do{r[S>>0]=r[t>>0]|0;S=S+1|0;t=t+1|0}while((S|0)<(k|0));S=s+e|0;Oo(A,S,T,256);r[S>>0]=r[S>>0]^r[I>>0];k=S+1|0;r[k>>0]=r[k>>0]^r[E>>0];k=S+2|0;r[k>>0]=r[k>>0]^r[a>>0];k=S+3|0;r[k>>0]=r[k>>0]^r[c>>0];k=S+4|0;r[k>>0]=r[k>>0]^r[f>>0];k=S+5|0;r[k>>0]=r[k>>0]^r[l>>0];k=S+6|0;r[k>>0]=r[k>>0]^r[u>>0];k=S+7|0;r[k>>0]=r[k>>0]^r[d>>0];k=S+8|0;r[k>>0]=r[k>>0]^r[p>>0];k=S+9|0;r[k>>0]=r[k>>0]^r[m>>0];k=S+10|0;r[k>>0]=r[k>>0]^r[g>>0];k=S+11|0;r[k>>0]=r[k>>0]^r[y>>0];k=S+12|0;r[k>>0]=r[k>>0]^r[b>>0];k=S+13|0;r[k>>0]=r[k>>0]^r[v>>0];k=S+14|0;r[k>>0]=r[k>>0]^r[_>>0];S=S+15|0;r[S>>0]=r[S>>0]^r[w>>0];o[I>>2]=o[x>>2];o[I+4>>2]=o[x+4>>2];o[I+8>>2]=o[x+8>>2];o[I+12>>2]=o[x+12>>2];e=e+16|0}while(e>>>0>>0);Hr(T,240);Hr(I,16);Hr(x,16);x=i+-1|0;x=s+x|0;x=r[x>>0]|0;x=x&255;I=x>>>0>i>>>0;x=i-x|0;x=I?-1:x;h=R;return x|0}function At(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+112|0;i=r;ko(i);So(i,e,t);To(i,n);Hr(i,112);h=r;return}function Et(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;l=h;h=h+288|0;s=l+176|0;a=l;c=l+64|0;f=a;u=f+64|0;do{o[f>>2]=0;f=f+4|0}while((f|0)<(u|0));if(t>>>0>64){ko(s);So(s,e,t);To(s,a)}else Ms(a|0,e|0,t|0)|0;kt(c,a);So(c,n,r);St(c,a,i);Hr(a,64);Hr(c,112);h=l;return}function kt(e,t){e=e|0;t=t|0;var n=0,i=0,o=0,s=0;s=h;h=h+64|0;i=s;o=i;n=o+64|0;do{r[o>>0]=r[t>>0]|0;o=o+1|0;t=t+1|0}while((o|0)<(n|0));r[i>>0]=r[i>>0]^54;o=i+1|0;r[o>>0]=r[o>>0]^54;o=i+2|0;r[o>>0]=r[o>>0]^54;o=i+3|0;r[o>>0]=r[o>>0]^54;o=i+4|0;r[o>>0]=r[o>>0]^54;o=i+5|0;r[o>>0]=r[o>>0]^54;o=i+6|0;r[o>>0]=r[o>>0]^54;o=i+7|0;r[o>>0]=r[o>>0]^54;o=i+8|0;r[o>>0]=r[o>>0]^54;o=i+9|0;r[o>>0]=r[o>>0]^54;o=i+10|0;r[o>>0]=r[o>>0]^54;o=i+11|0;r[o>>0]=r[o>>0]^54;o=i+12|0;r[o>>0]=r[o>>0]^54;o=i+13|0;r[o>>0]=r[o>>0]^54;o=i+14|0;r[o>>0]=r[o>>0]^54;o=i+15|0;r[o>>0]=r[o>>0]^54;o=i+16|0;r[o>>0]=r[o>>0]^54;o=i+17|0;r[o>>0]=r[o>>0]^54;o=i+18|0;r[o>>0]=r[o>>0]^54;o=i+19|0;r[o>>0]=r[o>>0]^54;o=i+20|0;r[o>>0]=r[o>>0]^54;o=i+21|0;r[o>>0]=r[o>>0]^54;o=i+22|0;r[o>>0]=r[o>>0]^54;o=i+23|0;r[o>>0]=r[o>>0]^54;o=i+24|0;r[o>>0]=r[o>>0]^54;o=i+25|0;r[o>>0]=r[o>>0]^54;o=i+26|0;r[o>>0]=r[o>>0]^54;o=i+27|0;r[o>>0]=r[o>>0]^54;o=i+28|0;r[o>>0]=r[o>>0]^54;o=i+29|0;r[o>>0]=r[o>>0]^54;o=i+30|0;r[o>>0]=r[o>>0]^54;o=i+31|0;r[o>>0]=r[o>>0]^54;o=i+32|0;r[o>>0]=r[o>>0]^54;o=i+33|0;r[o>>0]=r[o>>0]^54;o=i+34|0;r[o>>0]=r[o>>0]^54;o=i+35|0;r[o>>0]=r[o>>0]^54;o=i+36|0;r[o>>0]=r[o>>0]^54;o=i+37|0;r[o>>0]=r[o>>0]^54;o=i+38|0;r[o>>0]=r[o>>0]^54;o=i+39|0;r[o>>0]=r[o>>0]^54;o=i+40|0;r[o>>0]=r[o>>0]^54;o=i+41|0;r[o>>0]=r[o>>0]^54;o=i+42|0;r[o>>0]=r[o>>0]^54;o=i+43|0;r[o>>0]=r[o>>0]^54;o=i+44|0;r[o>>0]=r[o>>0]^54;o=i+45|0;r[o>>0]=r[o>>0]^54;o=i+46|0;r[o>>0]=r[o>>0]^54;o=i+47|0;r[o>>0]=r[o>>0]^54;o=i+48|0;r[o>>0]=r[o>>0]^54;o=i+49|0;r[o>>0]=r[o>>0]^54;o=i+50|0;r[o>>0]=r[o>>0]^54;o=i+51|0;r[o>>0]=r[o>>0]^54;o=i+52|0;r[o>>0]=r[o>>0]^54;o=i+53|0;r[o>>0]=r[o>>0]^54;o=i+54|0;r[o>>0]=r[o>>0]^54;o=i+55|0;r[o>>0]=r[o>>0]^54;o=i+56|0;r[o>>0]=r[o>>0]^54;o=i+57|0;r[o>>0]=r[o>>0]^54;o=i+58|0;r[o>>0]=r[o>>0]^54;o=i+59|0;r[o>>0]=r[o>>0]^54;o=i+60|0;r[o>>0]=r[o>>0]^54;o=i+61|0;r[o>>0]=r[o>>0]^54;o=i+62|0;r[o>>0]=r[o>>0]^54;o=i+63|0;r[o>>0]=r[o>>0]^54;ko(e);So(e,i,64);Hr(i,64);h=s;return}function St(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0,c=0;c=h;h=h+208|0;o=c;s=c+96|0;a=o;i=a+64|0;do{r[a>>0]=r[t>>0]|0;a=a+1|0;t=t+1|0}while((a|0)<(i|0));r[o>>0]=r[o>>0]^92;a=o+1|0;r[a>>0]=r[a>>0]^92;a=o+2|0;r[a>>0]=r[a>>0]^92;a=o+3|0;r[a>>0]=r[a>>0]^92;a=o+4|0;r[a>>0]=r[a>>0]^92;a=o+5|0;r[a>>0]=r[a>>0]^92;a=o+6|0;r[a>>0]=r[a>>0]^92;a=o+7|0;r[a>>0]=r[a>>0]^92;a=o+8|0;r[a>>0]=r[a>>0]^92;a=o+9|0;r[a>>0]=r[a>>0]^92;a=o+10|0;r[a>>0]=r[a>>0]^92;a=o+11|0;r[a>>0]=r[a>>0]^92;a=o+12|0;r[a>>0]=r[a>>0]^92;a=o+13|0;r[a>>0]=r[a>>0]^92;a=o+14|0;r[a>>0]=r[a>>0]^92;a=o+15|0;r[a>>0]=r[a>>0]^92;a=o+16|0;r[a>>0]=r[a>>0]^92;a=o+17|0;r[a>>0]=r[a>>0]^92;a=o+18|0;r[a>>0]=r[a>>0]^92;a=o+19|0;r[a>>0]=r[a>>0]^92;a=o+20|0;r[a>>0]=r[a>>0]^92;a=o+21|0;r[a>>0]=r[a>>0]^92;a=o+22|0;r[a>>0]=r[a>>0]^92;a=o+23|0;r[a>>0]=r[a>>0]^92;a=o+24|0;r[a>>0]=r[a>>0]^92;a=o+25|0;r[a>>0]=r[a>>0]^92;a=o+26|0;r[a>>0]=r[a>>0]^92;a=o+27|0;r[a>>0]=r[a>>0]^92;a=o+28|0;r[a>>0]=r[a>>0]^92;a=o+29|0;r[a>>0]=r[a>>0]^92;a=o+30|0;r[a>>0]=r[a>>0]^92;a=o+31|0;r[a>>0]=r[a>>0]^92;a=o+32|0;r[a>>0]=r[a>>0]^92;a=o+33|0;r[a>>0]=r[a>>0]^92;a=o+34|0;r[a>>0]=r[a>>0]^92;a=o+35|0;r[a>>0]=r[a>>0]^92;a=o+36|0;r[a>>0]=r[a>>0]^92;a=o+37|0;r[a>>0]=r[a>>0]^92;a=o+38|0;r[a>>0]=r[a>>0]^92;a=o+39|0;r[a>>0]=r[a>>0]^92;a=o+40|0;r[a>>0]=r[a>>0]^92;a=o+41|0;r[a>>0]=r[a>>0]^92;a=o+42|0;r[a>>0]=r[a>>0]^92;a=o+43|0;r[a>>0]=r[a>>0]^92;a=o+44|0;r[a>>0]=r[a>>0]^92;a=o+45|0;r[a>>0]=r[a>>0]^92;a=o+46|0;r[a>>0]=r[a>>0]^92;a=o+47|0;r[a>>0]=r[a>>0]^92;a=o+48|0;r[a>>0]=r[a>>0]^92;a=o+49|0;r[a>>0]=r[a>>0]^92;a=o+50|0;r[a>>0]=r[a>>0]^92;a=o+51|0;r[a>>0]=r[a>>0]^92;a=o+52|0;r[a>>0]=r[a>>0]^92;a=o+53|0;r[a>>0]=r[a>>0]^92;a=o+54|0;r[a>>0]=r[a>>0]^92;a=o+55|0;r[a>>0]=r[a>>0]^92;a=o+56|0;r[a>>0]=r[a>>0]^92;a=o+57|0;r[a>>0]=r[a>>0]^92;a=o+58|0;r[a>>0]=r[a>>0]^92;a=o+59|0;r[a>>0]=r[a>>0]^92;a=o+60|0;r[a>>0]=r[a>>0]^92;a=o+61|0;r[a>>0]=r[a>>0]^92;a=o+62|0;r[a>>0]=r[a>>0]^92;a=o+63|0;r[a>>0]=r[a>>0]^92;To(e,o+64|0);ko(s);So(s,o,96);To(s,n);Hr(s,112);Hr(o,96);h=c;return}function Tt(e,t,n,i,s,a,c,f){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;var l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0;v=h;h=h+336|0;u=v+208|0;b=v+96|0;m=v+32|0;g=v;y=v+320|0;r[y>>0]=1;d=(n|0)==0;l=d?32:i;i=d?38496:n;d=m;p=d+64|0;do{o[d>>2]=0;d=d+4|0}while((d|0)<(p|0));if(l>>>0>64){ko(u);So(u,i,l);To(u,m)}else Ms(m|0,i|0,l|0)|0;kt(b,m);So(b,e,t);St(b,m,g);p=m+32|0;o[p>>2]=0;o[p+4>>2]=0;o[p+8>>2]=0;o[p+12>>2]=0;o[p+16>>2]=0;o[p+20>>2]=0;o[p+24>>2]=0;o[p+28>>2]=0;o[m>>2]=o[g>>2];o[m+4>>2]=o[g+4>>2];o[m+8>>2]=o[g+8>>2];o[m+12>>2]=o[g+12>>2];o[m+16>>2]=o[g+16>>2];o[m+20>>2]=o[g+20>>2];o[m+24>>2]=o[g+24>>2];o[m+28>>2]=o[g+28>>2];kt(b,m);So(b,s,a);So(b,y,1);St(b,m,g);if(f>>>0<=32){a=f;Ms(c|0,g|0,a|0)|0;Hr(b,112);Hr(m,64);Hr(g,32);h=v;return}e=f+-33&-32;t=e+32|0;u=f+-32|0;l=c;i=f;while(1){d=l;n=g;p=d+32|0;do{r[d>>0]=r[n>>0]|0;d=d+1|0;n=n+1|0}while((d|0)<(p|0));i=i+-32|0;r[y>>0]=(r[y>>0]|0)+1<<24>>24;kt(b,m);So(b,g,32);So(b,s,a);So(b,y,1);St(b,m,g);if(i>>>0<=32)break;else l=l+32|0}a=u-e|0;c=c+t|0;Ms(c|0,g|0,a|0)|0;Hr(b,112);Hr(m,64);Hr(g,32);h=v;return}function It(e){e=e|0;return Si(o[e>>2]|0)|0}function xt(){return 36}function Rt(e){e=e|0;Hr(e,36);return e|0}function Ct(e){e=e|0;var t=0;Hr(e,36);t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 36}function Ot(e,t,n){e=e|0;t=t|0;n=n|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=15;n=-1;return n|0}else{he(t,le(32)|0,e+4|0)|0;n=0;return n|0}return 0}function Pt(){return le(32)|0}function Mt(e,t){e=e|0;t=t|0;return le(Hs[o[37564>>2]&3](37548,t)|0)|0}function Dt(e){e=e|0;return le(Gs[o[9390]&1](37548)|0)|0}function Bt(e){e=e|0;return 32}function Nt(e,t,n,r,i,s,a,c,f,l,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;l=l|0;u=u|0;var d=0,p=0,m=0,g=0;g=h;h=h+112|0;d=g+40|0;p=g;m=g+32|0;if(((le(Hs[o[37564>>2]&3](37548,n)|0)|0)>>>0<=i>>>0?(Gs[o[9390]&1](37548)|0)>>>0<=a>>>0:0)?(le(32)|0)>>>0<=f>>>0:0){if(u>>>0<32){o[e>>2]=1;s=-1;h=g;return s|0}pt(l,d);ue(d,32,c)|0;mt(d,e+4|0,p);d=Hs[o[37564>>2]&3](37548,n)|0;u=r+i+(0-d)|0;e=Qs[o[37568>>2]&3](37548,p,32,t,n,u,d,m,8)|0;if((e|0)!=-1){ue(m,8,s)|0;ue(u,d,r)|0}s=e;h=g;return s|0}o[e>>2]=2;s=-1;h=g;return s|0}function jt(e){e=e|0;return Si(o[e>>2]|0)|0}function Ut(){return 68}function Lt(e){e=e|0;Hr(e,68);return e|0}function Ft(e){e=e|0;var t=0;Hr(e,68);t=e+68|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 68}function qt(){return 32}function zt(){return 32}function Kt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;pt(r,i);ue(i,32,t)|0;i=0;return i|0}return 0}function Gt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;pt(r,i);ue(i,32,t)|0;i=0;return i|0}return 0}function Ht(e){e=e|0;return Ti((Ie(e+4|0)|0)+4|0)|0}function Vt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;s=e+4|0;a=(Ie(s)|0)+4|0;if((Ti(a)|0)>>>0>i>>>0){o[e>>2]=2;a=-1;return a|0}else{xe(be(Ii(r,a)|0,1)|0,s)|0;a=xi(t,n,r,a)|0;return a|0}return 0}function Qt(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0,l=0,u=0;u=h;h=h+16|0;f=u;l=(s|0)!=0;if(l?(le(32)|0)>>>0>a>>>0:0){o[e>>2]=2;i=-1}else c=4;do{if((c|0)==4){t=Ri(t,n,r,i,e)|0;if((t|0)!=-1){a=r+t|0;t=a+1|0;n=ve(r,t,f)|0;if((o[f>>2]|0)==1)t=Re(n,t,e+4|0)|0;else o[e>>2]=9;if((a|0)==(t|0)){if(!l)break;ue(e+4|0,32,s)|0;break}else{if(o[e>>2]|0){i=-1;break}o[e>>2]=10;i=-1;break}}else i=-1}}while(0);h=u;return i|0}function Wt(e,t){e=e|0;t=t|0;e=o[9393]|0;t=de(t)|0;return Hs[e&3](37548,t)|0}function Yt(e,t,n,r,i,s,a,c,f){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;var l=0,u=0,d=0,p=0,m=0;d=h;h=h+80|0;u=d+40|0;i=d;l=d+32|0;m=o[9393]|0;p=de(a)|0;if((Hs[m&3](37548,p)|0)>>>0>f>>>0){o[e>>2]=2;m=-1;h=d;return m|0}he(t,n,u)|0;mt(e+4|0,u,i);he(r,le(8)|0,l)|0;m=de(a)|0;he(s,a,s)|0;i=Qs[o[37576>>2]&3](37548,i,32,l,8,s,m,c,f)|0;if((i|0)==-1){o[e>>2]=5;i=-1}m=i;h=d;return m|0}function Xt(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<32){o[e>>2]=2;e=-1;return e|0}else{n=e+36|0;e=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(e|0));e=32;return e|0}return 0}function Jt(){return 100}function Zt(e){e=e|0;Hr(e,100);return e|0}function $t(e){e=e|0;return Si(o[e>>2]|0)|0}function en(e){e=e|0;var t=0;Hr(e,100);t=e+100|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 100}function tn(){return 32}function nn(){return le(32)|0}function rn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;gt(r,i);ue(i,32,t)|0;i=0;return i|0}return 0}function on(){return le(64)|0}function sn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(64)|0)>>>0>i>>>0){o[e>>2]=2;i=-1;return i|0}else{i=r+(le(64)|0)+-64|0;yt(e+4|0,t,n,i);ue(i,64,r)|0;i=le(64)|0;return i|0}return 0}function an(e){e=e|0;return 8}function cn(e,t){e=e|0;t=t|0;return vt(t)|0}function fn(e,t,n,i,s,a,c,f,l){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;l=l|0;var u=0,d=0,p=0,m=0;m=h;h=h+192|0;p=m+32|0;u=m+112|0;d=m;if(l>>>0<8|(vt(s)|0)>>>0>c>>>0){p=-1;h=m;return p|0}Tt(t,n,0,0,o[e+4>>2]|0,o[e+8>>2]|0,p,80);t=u;n=p;c=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(c|0));e=u+32|0;t=e;n=p+32|0;c=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(c|0));t=u+64|0;n=p+64|0;c=t+16|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(c|0));Hr(p,80);_t(u,u+64|0,i,s,a);Et(e,32,f,l+-8|0,d);a=d;s=o[a>>2]|0;a=o[a+4>>2]|0;p=f+l+-8|0;f=p;r[f>>0]=s;r[f+1>>0]=s>>8;r[f+2>>0]=s>>16;r[f+3>>0]=s>>24;p=p+4|0;r[p>>0]=a;r[p+1>>0]=a>>8;r[p+2>>0]=a>>16;r[p+3>>0]=a>>24;Hr(u,80);p=l;h=m;return p|0}function ln(e,t){e=e|0;t=t|0;return t|0}function un(e,t,n,i,s,a,c,f,l){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;l=l|0;var u=0,d=0,p=0,m=0;m=h;h=h+192|0;p=m+32|0;u=m+112|0;d=m;if(s>>>0<8|c>>>0>l>>>0){p=-1;h=m;return p|0}Tt(t,n,0,0,o[e+4>>2]|0,o[e+8>>2]|0,p,80);t=u;n=p;l=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(l|0));e=u+32|0;t=e;n=p+32|0;l=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(l|0));t=u+64|0;n=p+64|0;l=t+16|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(l|0));Hr(p,80);Et(e,32,i,s+-8|0,d);if(Vr(i+s+-8|0,d,8)|0){e=wt(u,u+64|0,a,c,f)|0;Hr(u,80)}else{Hr(u,80);e=-1}p=e;h=m;return p|0}function dn(e){e=e|0;o[e>>2]=0;return}function hn(e){e=e|0;return 32}function pn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if(i>>>0<32){o[e>>2]=2;i=-1;return i|0}else{At(t,n,r);i=32;return i|0}return 0}function mn(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;if(s>>>0>=64?bt(t,n,r,i)|0:0){s=0;return s|0}o[e>>2]=5;s=-1;return s|0}function gn(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;o[e+8>>2]=0;o[e+44>>2]=e+48;o[e+148>>2]=e+152;o[e+492>>2]=e+496;return}function yn(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;u=h;h=h+64|0;l=u;f=o[e>>2]|0;Tt(t,n,0,0,o[f>>2]|0,o[f+4>>2]|0,l,64);f=e+152|0;t=e+148|0;n=o[t>>2]|0;if((n|0)==(e+492|0)){c=(n|0)==(f|0)?e+84|0:f;t=n}else{a=n+68|0;o[t>>2]=a;c=f;t=a}t=t+-68|0;if((t|0)!=(c|0))do{n=t;t=t+-68|0;s=t;a=n+68|0;do{o[n>>2]=o[s>>2];n=n+4|0;s=s+4|0}while((n|0)<(a|0))}while((t|0)!=(c|0));o[e+184>>2]=0;n=e+12|0;s=l;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=e+188|0;s=l+32|0;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=f;s=i;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));Hr(l,64);h=u;return}function bn(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;u=h;h=h+64|0;l=u;f=o[e>>2]|0;Tt(t,n,0,0,o[f>>2]|0,o[f+4>>2]|0,l,64);f=e+48|0;t=e+44|0;n=o[t>>2]|0;if((n|0)==(e+148|0)){c=(n|0)==(f|0)?e+-52|0:f;t=n}else{a=n+100|0;o[t>>2]=a;c=f;t=a}t=t+-100|0;if((t|0)!=(c|0))do{n=t;t=t+-100|0;s=t;a=n+100|0;do{o[n>>2]=o[s>>2];n=n+4|0;s=s+4|0}while((n|0)<(a|0))}while((t|0)!=(c|0));o[e+112>>2]=0;n=e+12|0;s=l;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=e+116|0;s=l+32|0;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=f;s=i;a=n+64|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));Hr(l,64);h=u;return}function vn(e){e=e|0;var t=0,n=0,r=0,i=0;t=e+48|0;r=o[e+44>>2]|0;if((t|0)==(r|0))i=36;else{n=4;do{n=n+36+(Ie(t)|0)|0;t=t+100|0}while((t|0)!=(r|0));i=n+32|0}t=e+152|0;r=o[e+148>>2]|0;if((t|0)==(r|0))t=4;else{n=t;t=4;do{t=t+36+(ke(n)|0)|0;n=n+68|0}while((n|0)!=(r|0))}i=i+t|0;t=e+496|0;r=o[e+492>>2]|0;if((t|0)==(r|0)){e=4;e=i+e|0;return e|0}n=t;t=4;do{t=t+36+(ke(n)|0)|0;n=n+68|0}while((n|0)!=(r|0));e=i+t|0;return e|0}function _n(e,t){e=e|0;t=t|0;var n=0,r=0;e=Ae(e,t+12|0,32)|0;r=t+44|0;n=t+48|0;e=be(e,((o[r>>2]|0)-n|0)/100|0)|0;r=o[r>>2]|0;if((n|0)!=(r|0))do{e=Ae(xe(e,n)|0,n+68|0,32)|0;e=be(e,o[n+64>>2]|0)|0;n=n+100|0}while((n|0)!=(r|0));r=t+148|0;n=t+152|0;e=be(e,((o[r>>2]|0)-n|0)/68|0)|0;r=o[r>>2]|0;if((n|0)!=(r|0))do{e=Ae(Se(e,n)|0,n+36|0,32)|0;e=be(e,o[n+32>>2]|0)|0;n=n+68|0}while((n|0)!=(r|0));r=t+492|0;n=t+496|0;e=be(e,((o[r>>2]|0)-n|0)/68|0)|0;r=o[r>>2]|0;if((n|0)==(r|0)){t=e;return t|0}do{e=Ae(Se(e,n)|0,n+36|0,32)|0;e=be(e,o[n+32>>2]|0)|0;n=n+68|0}while((n|0)!=(r|0));return e|0}function wn(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0,f=0,l=0;l=h;h=h+16|0;f=l;e=ve(Ee(e,t,n+12|0,32)|0,t,f)|0;c=o[f>>2]|0;o[f>>2]=c+-1;if(!((e|0)==(t|0)|(c|0)==0)){s=n+44|0;a=n+148|0;c=n+48|0;do{i=o[s>>2]|0;if((i|0)==(a|0))i=c;else o[s>>2]=i+100;e=ve(Ee(Re(e,t,i)|0,t,i+68|0,32)|0,t,i+64|0)|0;i=o[f>>2]|0;o[f>>2]=i+-1}while(!((e|0)==(t|0)|(i|0)==0))}e=ve(e,t,f)|0;c=o[f>>2]|0;o[f>>2]=c+-1;if(!((e|0)==(t|0)|(c|0)==0)){s=n+148|0;a=n+492|0;c=n+424|0;do{i=o[s>>2]|0;if((i|0)==(a|0))i=c;else o[s>>2]=i+68;e=ve(Ee(Te(e,t,i)|0,t,i+36|0,32)|0,t,i+32|0)|0;i=o[f>>2]|0;o[f>>2]=i+-1}while(!((e|0)==(t|0)|(i|0)==0))}e=ve(e,t,f)|0;c=o[f>>2]|0;o[f>>2]=c+-1;if(!((e|0)==(t|0)|(c|0)==0)){a=n+492|0;c=n+3216|0;s=n+3148|0;do{i=o[a>>2]|0;if((i|0)==(c|0))i=s;else o[a>>2]=i+68;e=ve(Ee(Te(e,t,i)|0,t,i+36|0,32)|0,t,i+32|0)|0;n=o[f>>2]|0;o[f>>2]=n+-1}while(!((e|0)==(t|0)|(n|0)==0))}if(!r){f=e;h=l;return f|0}f=ve(e,t,f)|0;h=l;return f|0}function An(e,t){e=e|0;t=t|0;var n=0,r=0;if((o[e+44>>2]|0)==(e+48|0))n=0;else n=o[e+112>>2]|0;r=e+4|0;e=o[r>>2]|0;e=Hs[o[(o[e>>2]|0)+4>>2]&3](e,t)|0;t=o[r>>2]|0;return ze(n,32,e,Gs[o[o[t>>2]>>2]&1](t)|0)|0}function En(e){e=e|0;return((o[e+44>>2]|0)==(e+48|0)?32:0)|0}function kn(e,t,n,i,s,a,c){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0;y=h;h=h+112|0;m=y+64|0;g=y;l=e+44|0;d=e+48|0;if((o[l>>2]|0)==(d|0))f=0;else f=o[e+112>>2]|0;p=e+4|0;b=o[p>>2]|0;b=Hs[o[(o[b>>2]|0)+4>>2]&3](b,n)|0;u=o[p>>2]|0;u=ze(f,32,b,Gs[o[o[u>>2]>>2]&1](u)|0)|0;f=(o[l>>2]|0)==(d|0);if((f?32:0)>>>0>s>>>0){o[e+8>>2]=1;b=-1;h=y;return b|0}if(u>>>0>c>>>0){o[e+8>>2]=2;b=-1;h=y;return b|0}if(f){o[l>>2]=e+148;pt(i,d);c=o[e>>2]|0;mt(d,e+152|0,m);i=e+12|0;Tt(m,32,i,32,o[c+8>>2]|0,o[c+12>>2]|0,g,64);c=g;l=i+32|0;do{r[i>>0]=r[c>>0]|0;i=i+1|0;c=c+1|0}while((i|0)<(l|0));f=e+116|0;i=f;c=g+32|0;l=i+32|0;do{r[i>>0]=r[c>>0]|0;i=i+1|0;c=c+1|0}while((i|0)<(l|0));i=e+112|0;o[i>>2]=0;Hr(g,64);Hr(m,32)}else{i=e+112|0;f=e+116|0}s=m+4|0;Et(f,32,38077,1,s);o[m>>2]=o[i>>2];Et(f,32,38078,1,f);o[i>>2]=(o[i>>2]|0)+1;f=o[p>>2]|0;f=Hs[o[(o[f>>2]|0)+4>>2]&3](f,n)|0;Ke(g,3,o[m>>2]|0,32,f,a);i=o[g>>2]|0;c=d;l=i+32|0;do{r[i>>0]=r[c>>0]|0;i=i+1|0;c=c+1|0}while((i|0)<(l|0));b=o[p>>2]|0;Qs[o[(o[b>>2]|0)+8>>2]&3](b,s,32,t,n,o[g+4>>2]|0,f,a,u)|0;Hr(m,36);b=u;h=y;return b|0}function Sn(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0;s=h;h=h+32|0;r=s;i=e+4|0;a=o[i>>2]|0;Ge(r,t,n,Gs[o[o[a>>2]>>2]&1](a)|0);if(!(o[r+24>>2]|0)){o[e+8>>2]=4;a=-1;h=s;return a|0}else{a=o[i>>2]|0;a=Hs[o[(o[a>>2]|0)+12>>2]&3](a,o[r+28>>2]|0)|0;h=s;return a|0}return 0}function Tn(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0;I=h;h=h+240|0;E=I+96|0;k=I+32|0;u=I;d=I+160|0;S=I+128|0;g=e+4|0;w=o[g>>2]|0;Ge(S,t,n,Gs[o[o[w>>2]>>2]&1](w)|0);if((r[S>>0]|0)!=3){o[e+8>>2]=3;T=-1;h=I;return T|0}if((r[S+1>>0]|0?(A=S+16|0,o[A>>2]|0):0)?(b=S+24|0,o[b>>2]|0):0){w=o[g>>2]|0;m=S+28|0;if((Hs[o[(o[w>>2]|0)+12>>2]&3](w,o[m>>2]|0)|0)>>>0>s>>>0){o[e+8>>2]=2;T=-1;h=I;return T|0}if((o[S+20>>2]|0)!=32){o[e+8>>2]=4;T=-1;h=I;return T|0}c=e+152|0;w=e+148|0;n=o[w>>2]|0;e:do{if((c|0)!=(n|0)){f=o[A>>2]|0;l=0;t=c;do{p=(qo(t,f,32)|0)==0;l=p?t:l;t=t+68|0}while(!(p|(t|0)==(n|0)));if(l){t=l+32|0;d=S+4|0;n=o[d>>2]|0;if((o[t>>2]|0)>>>0<=n>>>0){_=l;T=In(e,t,S,i,s)|0;y=1;v=31;break}t=e+496|0;p=e+492|0;f=o[p>>2]|0;if((t|0)!=(f|0)){l=S+8|0;u=S+12|0;while(1){if(((n|0)==(o[t+32>>2]|0)?(qo(t,o[A>>2]|0,32)|0)==0:0)?(a=o[g>>2]|0,a=Qs[o[(o[a>>2]|0)+16>>2]&3](a,t+36|0,32,o[l>>2]|0,o[u>>2]|0,o[b>>2]|0,o[m>>2]|0,i,s)|0,(a|0)!=-1):0)break;t=t+68|0;if((t|0)==(f|0))break e;n=o[d>>2]|0}Hr(t,68);T=(o[p>>2]|0)+-68|0;o[p>>2]=T;if((T|0)==(t|0)){T=a;h=I;return T|0}do{g=t;t=t+68|0;y=t;b=g+68|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((t|0)!=(o[p>>2]|0));h=I;return a|0}}else v=15}else v=15}while(0);if((v|0)==15){a=e+48|0;if((o[e+44>>2]|0)!=(a|0)?(o[S+4>>2]|0)>>>0<=2e3:0){g=d;y=o[A>>2]|0;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));_=o[e>>2]|0;T=d+32|0;mt(a,d,E);Tt(E,32,e+12|0,32,o[_+8>>2]|0,o[_+12>>2]|0,k,64);o[u>>2]=o[k>>2];o[u+4>>2]=o[k+4>>2];o[u+8>>2]=o[k+8>>2];o[u+12>>2]=o[k+12>>2];o[u+16>>2]=o[k+16>>2];o[u+20>>2]=o[k+20>>2];o[u+24>>2]=o[k+24>>2];o[u+28>>2]=o[k+28>>2];_=k+32|0;a=d+36|0;o[a>>2]=o[_>>2];o[a+4>>2]=o[_+4>>2];o[a+8>>2]=o[_+8>>2];o[a+12>>2]=o[_+12>>2];o[a+16>>2]=o[_+16>>2];o[a+20>>2]=o[_+20>>2];o[a+24>>2]=o[_+24>>2];o[a+28>>2]=o[_+28>>2];o[T>>2]=0;Hr(k,64);Hr(E,32);a=In(e,T,S,i,s)|0;Hr(u,32);Hr(d,68)}else a=-1;_=0;T=a;y=0;v=31}if((v|0)==31?(T|0)!=-1:0){if(!y){a=o[w>>2]|0;if((a|0)==(e+492|0))c=(a|0)==(c|0)?e+84|0:c;else{a=a+68|0;o[w>>2]=a}a=a+-68|0;if((a|0)!=(c|0))do{g=a;a=a+-68|0;y=a;b=g+68|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((a|0)!=(c|0));g=c;y=o[A>>2]|0;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));a=e+48|0;y=o[e>>2]|0;mt(a,c,E);g=e+12|0;Tt(E,32,g,32,o[y+8>>2]|0,o[y+12>>2]|0,k,64);y=k;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));g=c+36|0;y=k+32|0;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));n=c+32|0;o[n>>2]=0;Hr(k,64);Hr(E,32);Hr(a,100);t=e+44|0;k=(o[t>>2]|0)+-100|0;o[t>>2]=k;if((k|0)==(a|0))m=c;else{do{g=a;a=a+100|0;y=a;b=g+100|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((a|0)!=(o[t>>2]|0));m=c}}else{m=_;n=_+32|0}f=S+4|0;if((o[n>>2]|0)>>>0<(o[f>>2]|0)>>>0){l=e+496|0;u=e+492|0;d=e+3216|0;a=m+36|0;p=e+532|0;c=e+528|0;do{t=o[u>>2]|0;if((t|0)==(d|0))t=d;else{t=t+68|0;o[u>>2]=t}t=t+-68|0;if((t|0)!=(l|0))do{g=t;t=t+-68|0;y=t;b=g+68|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((t|0)!=(l|0));Et(a,32,38077,1,p);o[c>>2]=o[n>>2];g=l;y=m;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));Et(a,32,38078,1,a);e=(o[n>>2]|0)+1|0;o[n>>2]=e}while(e>>>0<(o[f>>2]|0)>>>0)}else a=m+36|0;Et(a,32,38078,1,a);o[n>>2]=(o[n>>2]|0)+1;h=I;return T|0}o[e+8>>2]=5;T=-1;h=I;return T|0}o[e+8>>2]=4;T=-1;h=I;return T|0}function In(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0;d=h;h=h+80|0;c=d+36|0;f=d;l=n+4|0;u=o[l>>2]|0;a=o[t>>2]|0;if(u>>>0>>0|(u-a|0)>>>0>2e3){u=-1;h=d;return u|0}a=c;s=a+36|0;do{o[a>>2]=o[t>>2];a=a+4|0;t=t+4|0}while((a|0)<(s|0));t=c+4|0;if((o[c>>2]|0)>>>0>>0)do{Et(t,32,38078,1,t);u=(o[c>>2]|0)+1|0;o[c>>2]=u}while(u>>>0<(o[l>>2]|0)>>>0);u=f+4|0;Et(t,32,38077,1,u);o[f>>2]=o[c>>2];l=o[e+4>>2]|0;u=Qs[o[(o[l>>2]|0)+16>>2]&3](l,u,32,o[n+8>>2]|0,o[n+12>>2]|0,o[n+24>>2]|0,o[n+28>>2]|0,r,i)|0;Hr(c,36);h=d;return u|0}function xn(e,t,n){e=e|0;t=t|0;n=n|0;if(e|0)r[e>>0]=3;if(t|0)r[t>>0]=1;if(!n)return;r[n>>0]=3;return}function Rn(){return-1}function Cn(e){e=e|0;return Si(o[e+7368>>2]|0)|0}function On(e){e=e|0;return Si(o[e+3216>>2]|0)|0}function Pn(e){e=e|0;return Si(o[e>>2]|0)|0}function Mn(){return 7372}function Dn(){return 3320}function Bn(){return 4}function Nn(e){e=e|0;Hr(e,7372);Tr(e);return e|0}function jn(e){e=e|0;Hr(e,3320);Je(e);return e|0}function Un(e){e=e|0;Hr(e,4);dn(e);return e|0}function Ln(e){e=e|0;Hr(e,7372);Tr(e);return 7372}function Fn(e){e=e|0;Hr(e,3320);Je(e);return 3320}function qn(e){e=e|0;Hr(e,4);dn(e);return 4}function zn(e){e=e|0;return Ti(qr(e)|0)|0}function Kn(e){e=e|0;return Ti(ut(e)|0)|0}function Gn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=qr(e)|0;if((Ti(s)|0)>>>0>i>>>0){o[e+7368>>2]=2;s=-1;return s|0}else{zr(Ii(r,s)|0,e)|0;s=xi(t,n,r,s)|0;return s|0}return 0}function Hn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=ut(e)|0;if((Ti(s)|0)>>>0>i>>>0){o[e+3216>>2]=2;s=-1;return s|0}else{dt(Ii(r,s)|0,e)|0;s=xi(t,n,r,s)|0;return s|0}return 0}function Vn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=e+7368|0;t=Ri(t,n,r,i,s)|0;if((t|0)==-1){s=-1;return s|0}n=r+t|0;if((n|0)==(Kr(r,n+1|0,e)|0)){s=i;return s|0}if(o[s>>2]|0){s=-1;return s|0}o[s>>2]=10;s=-1;return s|0}function Qn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=e+3216|0;t=Ri(t,n,r,i,s)|0;if((t|0)==-1){s=-1;return s|0}n=r+t|0;if((n|0)==(ht(r,n+1|0,e)|0)){s=i;return s|0}if(o[s>>2]|0){s=-1;return s|0}o[s>>2]=10;s=-1;return s|0}function Wn(e){e=e|0;return Rr(e)|0}function Yn(e,t,n){e=e|0;t=t|0;n=n|0;e=Cr(e,t,n)|0;Hr(t,n);return e|0}function Xn(e){e=e|0;return Or(e)|0}function Jn(e,t,n){e=e|0;t=t|0;n=n|0;return Pr(e,t,n)|0}function Zn(e){e=e|0;return le(Mr(e)|0)|0}function $n(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;s=Mr(e)|0;if((le(s)|0)>>>0>i>>>0){o[e+7368>>2]=2;s=-1;return s|0}else{a=0-s|0;Dr(e,t,n,r+(le(s)|0)+a|0,s)|0;i=le(s)|0;ue(r+i+a|0,s,r)|0;s=i;return s|0}return 0}function er(e){e=e|0;return Br(e)|0}function tr(e,t,n){e=e|0;t=t|0;n=n|0;return Nr(e,t,n)|0}function nr(e){e=e|0;return jr(e)|0}function rr(e){e=e|0;return Ur(e)|0}function ir(e,t){e=e|0;t=t|0;return Lr(e,t)|0}function or(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;t=Fr(e,t,n,r)|0;Hr(n,r);return t|0}function sr(e){e=e|0;return Ze(e)|0}function ar(e,t,n,r,i,s,a,c){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0;u=h;h=h+64|0;f=u+32|0;l=u;if((de(r)|0)==32?(de(s)|0)==32:0){he(n,r,f)|0;he(i,s,l)|0;l=$e(e,t,f,l,a,c)|0;Hr(a,c);h=u;return l|0}o[e+3216>>2]=7;l=-1;h=u;return l|0}function cr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=de(r)|0;if((i|0)==-1){o[e+3216>>2]=7;i=-1;return i|0}else{he(n,r,n)|0;i=et(e,t,0,n,i)|0;return i|0}return 0}function fr(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;var a=0,c=0;c=h;h=h+32|0;a=c;if((de(r)|0)!=32){o[e+3216>>2]=7;a=-1;h=c;return a|0}he(n,r,a)|0;n=de(s)|0;if((n|0)==-1){o[e+3216>>2]=7;n=-1}else{he(i,s,i)|0;n=et(e,t,a,i,n)|0}a=n;h=c;return a|0}function lr(e){e=e|0;return le(tt(e)|0)|0}function ur(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=tt(e)|0;if((le(r)|0)>>>0>n>>>0){o[e+3216>>2]=2;r=-1;return r|0}n=0-r|0;if((nt(e,t+(le(r)|0)+n|0,r)|0)==-1){r=-1;return r|0}e=le(r)|0;ue(t+e+n|0,r,t)|0;r=e;return r|0}function dr(e){e=e|0;return s[e+3220>>0]|0|0}function hr(e,t,n){e=e|0;t=t|0;n=n|0;lt(e,t,n);return}function pr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=de(n)|0;if((r|0)==-1){o[e+3216>>2]=7;r=-1;return r|0}else{he(t,n,t)|0;r=(rt(e,0,t,r)|0)&1;return r|0}return 0}function mr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;a=h;h=h+32|0;s=a;if((de(n)|0)!=32){o[e+3216>>2]=7;s=-1;h=a;return s|0}he(t,n,s)|0;t=de(i)|0;if((t|0)==-1){o[e+3216>>2]=7;t=-1}else{he(r,i,r)|0;t=(rt(e,s,r,t)|0)&1}s=t;h=a;return s|0}function gr(e,t){e=e|0;t=t|0;t=xr(e,t+3285|0)|0;if((t|0)!=-1)return t|0;o[e+7368>>2]=6;return t|0}function yr(e){e=e|0;return it(e)|0}function br(e){e=e|0;return st(e)|0}function vr(e,t){e=e|0;t=t|0;return le(ot(e,t)|0)|0}function _r(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0;c=ot(e,n)|0;if((le(c)|0)>>>0>a>>>0){o[e+3216>>2]=2;c=-1;return c|0}a=0-c|0;n=at(e,t,n,r,i,s+(le(c)|0)+a|0,c)|0;Hr(r,i);if((n|0)==-1){c=-1;return c|0}i=le(c)|0;ue(s+i+a|0,c,s)|0;c=i;return c|0}function wr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=de(r)|0;if((i|0)==-1){o[e+3216>>2]=7;i=-1;return i|0}else{he(n,r,n)|0;i=ct(e,t,n,i)|0;return i|0}return 0}function Ar(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;var a=0;a=de(r)|0;if((a|0)==-1){o[e+3216>>2]=7;a=-1;return a|0}else{he(n,r,n)|0;a=ft(e,t,n,a,i,s)|0;return a|0}return 0}function Er(e){e=e|0;return le(hn(e)|0)|0}function kr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=hn(e)|0;if((le(s)|0)>>>0>i>>>0){o[e>>2]=2;s=-1;return s|0}i=0-s|0;if((pn(e,t,n,r+(le(s)|0)+i|0,s)|0)==-1){s=-1;return s|0}n=le(s)|0;ue(r+n+i|0,s,r)|0;s=n;return s|0}function Sr(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+32|0;c=f;if((de(n)|0)!=32){o[e>>2]=7;c=-1;h=f;return c|0}he(t,n,c)|0;t=de(a)|0;if((t|0)==-1){o[e>>2]=7;t=-1}else{he(s,a,s)|0;t=mn(e,c,r,i,s,t)|0}c=t;h=f;return c|0}function Tr(e){e=e|0;o[e+160>>2]=e+164;o[e+7364>>2]=0;o[e+7368>>2]=0;return}function Ir(e,t){e=e|0;t=t|0;var n=0;n=e+164|0;e=o[e+160>>2]|0;if((n|0)==(e|0)){t=0;return t|0}while(1){if(Vr(n+5|0,t,32)|0){e=5;break}n=n+72|0;if((n|0)==(e|0)){n=0;e=5;break}}if((e|0)==5)return n|0;return 0}function xr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0;n=e+164|0;s=e+160|0;if((n|0)==(o[s>>2]|0)){s=-1;return s|0}while(1){if(Vr(n+5|0,t,32)|0)break;e=n+72|0;if((e|0)==(o[s>>2]|0)){e=-1;r=8;break}else n=e}if((r|0)==8)return e|0;e=o[n>>2]|0;i=(o[s>>2]|0)+-72|0;o[s>>2]=i;if((i|0)==(n|0)){s=e;return s|0}do{t=n;n=n+72|0;r=n;i=t+72|0;do{o[t>>2]=o[r>>2];t=t+4|0;r=r+4|0}while((t|0)<(i|0))}while((n|0)!=(o[s>>2]|0));return e|0}function Rr(e){e=e|0;return 64}function Cr(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<64){o[e+7368>>2]=1;n=-1;return n|0}else{gt(t,e);pt(t+32|0,e+96|0);n=0;return n|0}return 0}function Or(e){e=e|0;e=le(32)|0;return e+30+(le(32)|0)|0}function Pr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0;a=le(32)|0;if((a+30+(le(32)|0)|0)>>>0>n>>>0){o[e+7368>>2]=2;t=-1;return t|0}else{r[t>>0]=123;i=t+1|0;s=38079;a=i+13|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));r[t+14>>0]=34;n=ue(e+96|0,32,t+15|0)|0;r[n>>0]=34;r[n+1>>0]=44;i=n+2|0;s=38093;a=i+10|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));r[n+12>>0]=34;e=ue(e,32,n+13|0)|0;r[e>>0]=34;r[e+1>>0]=125;t=e+2-t|0;return t|0}return 0}function Mr(e){e=e|0;return 64}function Dr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if(i>>>0<64){o[e+7368>>2]=2;i=-1;return i|0}else{yt(e,t,n,r);i=64;return i|0}return 0}function Br(e){e=e|0;var t=0,n=0,i=0;n=e+164|0;i=o[e+160>>2]|0;if((n|0)!=(i|0)){t=1;e=0;do{if(!(r[n+4>>0]|0)){t=le(4)|0;e=e+6+t+(le(32)|0)|0;t=0}n=n+72|0}while((n|0)!=(i|0));if(!t){i=e;n=16;i=n+i|0;return i|0}}else e=0;i=e;n=17;i=n+i|0;return i|0}function Nr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0;p=h;h=h+16|0;u=p;l=e+164|0;f=e+160|0;c=o[f>>2]|0;if((l|0)!=(c|0)){s=1;a=l;i=0;do{if(!(r[a+4>>0]|0)){s=le(4)|0;i=i+6+s+(le(32)|0)|0;s=0}a=a+72|0}while((a|0)!=(c|0));if(s)d=4;else s=16}else{i=0;d=4}if((d|0)==4)s=17;if((s+i|0)>>>0>n>>>0){o[e+7368>>2]=2;d=-1;h=p;return d|0}r[t>>0]=123;i=t+1|0;s=38079;a=i+13|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));i=t+14|0;c=o[f>>2]|0;if((l|0)!=(c|0)){a=l;s=123;do{if(!(r[a+4>>0]|0)){r[i>>0]=s;r[i+1>>0]=34;Ne(u,o[a>>2]|0)|0;i=ue(u,4,i+2|0)|0;r[i>>0]=34;r[i+1>>0]=58;r[i+2>>0]=34;i=ue(a+5|0,32,i+3|0)|0;r[i>>0]=34;i=i+1|0;s=44}a=a+72|0}while((a|0)!=(c|0));if(s<<24>>24!=44)d=16}else{s=123;d=16}if((d|0)==16){r[i>>0]=s;i=i+1|0}r[i>>0]=125;r[i+1>>0]=125;d=i+2-t|0;h=p;return d|0}function jr(e){e=e|0;var t=0,n=0,i=0;t=e+164|0;i=o[e+160>>2]|0;if((t|0)==(i|0)){i=0;return i|0}e=0;do{n=t+4|0;if(!(r[n>>0]|0)){r[n>>0]=1;e=e+1|0}t=t+72|0}while((t|0)!=(i|0));return e|0}function Ur(e){e=e|0;return 100}function Lr(e,t){e=e|0;t=t|0;return t<<5|0}function Fr(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0;if(t<<5>>>0>i>>>0){o[e+7368>>2]=1;p=-1;return p|0}if(!t){p=0;return p|0}h=e+164|0;p=e+160|0;l=e+7364|0;u=e+7364|0;d=e+168|0;f=e+169|0;c=0;while(1){i=o[p>>2]|0;if((i|0)==(l|0))i=l;else{i=i+72|0;o[p>>2]=i}i=i+-72|0;if((i|0)!=(h|0))do{e=i;i=i+-72|0;s=i;a=e+72|0;do{o[e>>2]=o[s>>2];e=e+4|0;s=s+4|0}while((e|0)<(a|0))}while((i|0)!=(h|0));a=(o[u>>2]|0)+1|0;o[u>>2]=a;o[h>>2]=a;r[d>>0]=0;pt(n,f);c=c+1|0;if((c|0)==(t|0))break;else n=n+32|0}return t|0}function qr(e){e=e|0;var t=0,n=0,r=0,i=0;r=Me(e)|0;i=Ie(e+96|0)|0;t=e+164|0;n=o[e+160>>2]|0;if((t|0)==(n|0)){n=4;r=r+8|0;i=r+i|0;i=i+n|0;return i|0}e=4;do{e=e+5+(Ie(t+5|0)|0)|0;t=t+72|0}while((t|0)!=(n|0));r=r+8|0;i=r+i|0;i=i+e|0;return i|0}function zr(e,t){e=e|0;t=t|0;var n=0,i=0;e=xe(De(be(e,2)|0,t)|0,t+96|0)|0;i=t+160|0;n=t+164|0;e=be(e,((o[i>>2]|0)-n|0)/72|0)|0;i=o[i>>2]|0;if((n|0)==(i|0)){i=e;t=t+7364|0;t=o[t>>2]|0;t=be(i,t)|0;return t|0}do{e=be(e,o[n>>2]|0)|0;e=xe(_e(e,(r[n+4>>0]|0)!=0)|0,n+5|0)|0;n=n+72|0}while((n|0)!=(i|0));t=t+7364|0;t=o[t>>2]|0;t=be(e,t)|0;return t|0}function Kr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0;f=h;h=h+16|0;c=f+4|0;a=f;e=ve(e,t,a)|0;switch(o[a>>2]|0){case 2:{e=ve(Re(Be(e,t,n)|0,t,n+96|0)|0,t,c)|0;a=o[c>>2]|0;o[c>>2]=a+-1;if(!((e|0)==(t|0)|(a|0)==0)){i=n+160|0;s=n+7364|0;a=n+7292|0;do{r=o[i>>2]|0;if((r|0)==(s|0))r=a;else o[i>>2]=r+72;e=Re(we(ve(e,t,r)|0,t,r+4|0)|0,t,r+5|0)|0;r=o[c>>2]|0;o[c>>2]=r+-1}while(!((e|0)==(t|0)|(r|0)==0))}n=ve(e,t,n+7364|0)|0;h=f;return n|0}case 1:{o[n+7368>>2]=13;n=t;h=f;return n|0}default:{o[n+7368>>2]=9;n=t;h=f;return n|0}}return 0}function Gr(e,t){e=e|0;t=t|0;var n=0;n=e+t|0;if(!t)return;do{r[e>>0]=0;e=e+1|0}while((e|0)!=(n|0));return}function Hr(e,t){e=e|0;t=t|0;var n=0;n=e+t|0;if(!t)return;do{r[e>>0]=0;e=e+1|0}while((e|0)!=(n|0));return}function Vr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;o=h;h=h+16|0;i=o;r[i>>0]=0;if(n|0)while(1){n=n+-1|0;r[i>>0]=r[i>>0]|r[t>>0]^r[e>>0];if(!n)break;else{t=t+1|0;e=e+1|0}}h=o;return(r[i>>0]|0)==0|0}function Qr(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0;E=s[t>>0]|0;g=Os(s[t+1>>0]|0|0,0,8)|0;I=T;R=Os(s[t+2>>0]|0|0,0,16)|0;I=I|T;u=Os(s[t+3>>0]|0|0,0,24)|0;I=I|T;x=r[t+6>>0]|0;f=s[t+4>>0]|0;k=Os(s[t+5>>0]|0|0,0,8)|0;l=T;x=Os(x&255|0,0,16)|0;l=Os(k|f|x|0,l|T|0,6)|0;x=T;f=r[t+9>>0]|0;k=s[t+7>>0]|0;a=Os(s[t+8>>0]|0|0,0,8)|0;_=T;f=Os(f&255|0,0,16)|0;_=Os(a|k|f|0,_|T|0,5)|0;f=T;k=r[t+12>>0]|0;a=s[t+10>>0]|0;b=Os(s[t+11>>0]|0|0,0,8)|0;S=T;k=Os(k&255|0,0,16)|0;S=Os(b|a|k|0,S|T|0,3)|0;k=T;a=r[t+15>>0]|0;b=s[t+13>>0]|0;p=Os(s[t+14>>0]|0|0,0,8)|0;c=T;a=Os(a&255|0,0,16)|0;c=Os(p|b|a|0,c|T|0,2)|0;a=T;b=s[t+16>>0]|0;p=Os(s[t+17>>0]|0|0,0,8)|0;w=T;n=Os(s[t+18>>0]|0|0,0,16)|0;w=w|T;A=Os(s[t+19>>0]|0|0,0,24)|0;A=p|b|n|A;w=w|T;n=r[t+22>>0]|0;b=s[t+20>>0]|0;p=Os(s[t+21>>0]|0|0,0,8)|0;i=T;n=Os(n&255|0,0,16)|0;i=Os(p|b|n|0,i|T|0,7)|0;n=T;b=r[t+25>>0]|0;p=s[t+23>>0]|0;C=Os(s[t+24>>0]|0|0,0,8)|0;v=T;b=Os(b&255|0,0,16)|0;v=Os(C|p|b|0,v|T|0,5)|0;b=T;p=r[t+28>>0]|0;C=s[t+26>>0]|0;m=Os(s[t+27>>0]|0|0,0,8)|0;h=T;p=Os(p&255|0,0,16)|0;h=Os(m|C|p|0,h|T|0,4)|0;p=T;C=r[t+31>>0]|0;m=s[t+29>>0]|0;d=Os(s[t+30>>0]|0|0,0,8)|0;y=T;t=Os(C&255|0,0,16)|0;y=Os(d|m|t|0,y|T|0,2)|0;y=y&33554428;t=ks(y|0,0,16777216,0)|0;m=Cs(t|0,T|0,25)|0;m=Ss(0,0,m|0,T|0)|0;I=ks(m&19|0,0,g|E|R|u|0,I|0)|0;u=T;R=ks(l|0,x|0,16777216,0)|0;E=Cs(R|0,T|0,25)|0;E=ks(_|0,f|0,E|0,T|0)|0;f=T;R=Ss(l|0,x|0,R&-33554432|0,0)|0;x=T;l=ks(S|0,k|0,16777216,0)|0;_=Cs(l|0,T|0,25)|0;_=ks(c|0,a|0,_|0,T|0)|0;a=T;c=ks(A|0,w|0,16777216,0)|0;g=Cs(c|0,T|0,25)|0;g=ks(i|0,n|0,g|0,T|0)|0;n=T;i=ks(v|0,b|0,16777216,0)|0;m=Cs(i|0,T|0,25)|0;m=ks(h|0,p|0,m|0,T|0)|0;p=T;h=ks(I|0,u|0,33554432,0)|0;d=Cs(h|0,T|0,26)|0;d=ks(R|0,x|0,d|0,T|0)|0;h=Ss(I|0,u|0,h&-67108864|0,0)|0;u=ks(E|0,f|0,33554432,0)|0;I=Cs(u|0,T|0,26)|0;k=ks(I|0,T|0,S|0,k|0)|0;l=Ss(k|0,T|0,l&-33554432|0,0)|0;u=Ss(E|0,f|0,u&-67108864|0,0)|0;f=ks(_|0,a|0,33554432,0)|0;E=Cs(f|0,T|0,26)|0;w=ks(E|0,T|0,A|0,w|0)|0;c=Ss(w|0,T|0,c&-33554432|0,0)|0;f=Ss(_|0,a|0,f&-67108864|0,0)|0;a=ks(g|0,n|0,33554432,0)|0;_=Cs(a|0,T|0,26)|0;b=ks(_|0,T|0,v|0,b|0)|0;i=Ss(b|0,T|0,i&-33554432|0,0)|0;a=Ss(g|0,n|0,a&-67108864|0,0)|0;n=ks(m|0,p|0,33554432,0)|0;g=Cs(n|0,T|0,26)|0;g=ks(y|0,0,g|0,T|0)|0;t=Ss(g|0,T|0,t&33554432|0,0)|0;n=Ss(m|0,p|0,n&-67108864|0,0)|0;o[e>>2]=h;o[e+4>>2]=d;o[e+8>>2]=u;o[e+12>>2]=l;o[e+16>>2]=f;o[e+20>>2]=c;o[e+24>>2]=a;o[e+28>>2]=i;o[e+32>>2]=n;o[e+36>>2]=t;return}function Wr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0,s=0;s=h;h=h+192|0;n=s+144|0;r=s+96|0;i=s+48|0;o=s;Yr(n,t);Yr(r,n);Yr(r,r);Xr(r,t,r);Xr(n,n,r);Yr(i,n);Xr(r,r,i);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);t=1;do{Yr(o,o);t=t+1|0}while((t|0)!=100);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(r,r);Yr(r,r);Yr(r,r);Yr(r,r);Yr(r,r);Xr(e,r,n);h=s;return}function Yr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;tt=o[t>>2]|0;we=o[t+4>>2]|0;l=o[t+8>>2]|0;de=o[t+12>>2]|0;s=o[t+16>>2]|0;rt=o[t+20>>2]|0;a=o[t+24>>2]|0;p=o[t+28>>2]|0;q=o[t+32>>2]|0;R=o[t+36>>2]|0;y=tt<<1;n=we<<1;Ye=l<<1;c=de<<1;pe=s<<1;i=rt<<1;d=a<<1;r=p<<1;Ue=rt*38|0;be=a*19|0;Ee=p*38|0;ie=q*19|0;st=R*38|0;nt=((tt|0)<0)<<31>>31;nt=Es(tt|0,nt|0,tt|0,nt|0)|0;tt=T;b=((y|0)<0)<<31>>31;_e=((we|0)<0)<<31>>31;Ne=Es(y|0,b|0,we|0,_e|0)|0;Be=T;f=((l|0)<0)<<31>>31;We=Es(l|0,f|0,y|0,b|0)|0;Qe=T;he=((de|0)<0)<<31>>31;Ve=Es(de|0,he|0,y|0,b|0)|0;He=T;J=((s|0)<0)<<31>>31;Fe=Es(s|0,J|0,y|0,b|0)|0;Le=T;it=((rt|0)<0)<<31>>31;Te=Es(rt|0,it|0,y|0,b|0)|0;Se=T;Ae=((a|0)<0)<<31>>31;ae=Es(a|0,Ae|0,y|0,b|0)|0;se=T;x=((p|0)<0)<<31>>31;G=Es(p|0,x|0,y|0,b|0)|0;K=T;z=((q|0)<0)<<31>>31;P=Es(q|0,z|0,y|0,b|0)|0;O=T;C=((R|0)<0)<<31>>31;b=Es(R|0,C|0,y|0,b|0)|0;y=T;u=((n|0)<0)<<31>>31;_e=Es(n|0,u|0,we|0,_e|0)|0;we=T;ne=Es(n|0,u|0,l|0,f|0)|0;re=T;g=((c|0)<0)<<31>>31;Ge=Es(c|0,g|0,n|0,u|0)|0;Ke=T;Ce=Es(s|0,J|0,n|0,u|0)|0;Re=T;m=((i|0)<0)<<31>>31;fe=Es(i|0,m|0,n|0,u|0)|0;ce=T;V=Es(a|0,Ae|0,n|0,u|0)|0;H=T;t=((r|0)<0)<<31>>31;D=Es(r|0,t|0,n|0,u|0)|0;M=T;_=Es(q|0,z|0,n|0,u|0)|0;v=T;ot=((st|0)<0)<<31>>31;u=Es(st|0,ot|0,n|0,u|0)|0;n=T;ze=Es(l|0,f|0,l|0,f|0)|0;qe=T;Xe=((Ye|0)<0)<<31>>31;xe=Es(Ye|0,Xe|0,de|0,he|0)|0;Ie=T;ue=Es(s|0,J|0,Ye|0,Xe|0)|0;le=T;X=Es(rt|0,it|0,Ye|0,Xe|0)|0;Y=T;F=Es(a|0,Ae|0,Ye|0,Xe|0)|0;L=T;A=Es(p|0,x|0,Ye|0,Xe|0)|0;w=T;oe=((ie|0)<0)<<31>>31;Xe=Es(ie|0,oe|0,Ye|0,Xe|0)|0;Ye=T;f=Es(st|0,ot|0,l|0,f|0)|0;l=T;he=Es(c|0,g|0,de|0,he|0)|0;de=T;W=Es(c|0,g|0,s|0,J|0)|0;Q=T;N=Es(i|0,m|0,c|0,g|0)|0;B=T;I=Es(a|0,Ae|0,c|0,g|0)|0;S=T;ke=((Ee|0)<0)<<31>>31;Ze=Es(Ee|0,ke|0,c|0,g|0)|0;Je=T;Pe=Es(ie|0,oe|0,c|0,g|0)|0;Oe=T;g=Es(st|0,ot|0,c|0,g|0)|0;c=T;U=Es(s|0,J|0,s|0,J|0)|0;j=T;me=((pe|0)<0)<<31>>31;k=Es(pe|0,me|0,rt|0,it|0)|0;E=T;ve=((be|0)<0)<<31>>31;et=Es(be|0,ve|0,pe|0,me|0)|0;$e=T;De=Es(Ee|0,ke|0,s|0,J|0)|0;Me=T;me=Es(ie|0,oe|0,pe|0,me|0)|0;pe=T;J=Es(st|0,ot|0,s|0,J|0)|0;s=T;it=Es(Ue|0,((Ue|0)<0)<<31>>31|0,rt|0,it|0)|0;rt=T;Ue=Es(be|0,ve|0,i|0,m|0)|0;je=T;ye=Es(Ee|0,ke|0,i|0,m|0)|0;ge=T;$=Es(ie|0,oe|0,i|0,m|0)|0;Z=T;m=Es(st|0,ot|0,i|0,m|0)|0;i=T;ve=Es(be|0,ve|0,a|0,Ae|0)|0;be=T;te=Es(Ee|0,ke|0,a|0,Ae|0)|0;ee=T;d=Es(ie|0,oe|0,d|0,((d|0)<0)<<31>>31|0)|0;h=T;Ae=Es(st|0,ot|0,a|0,Ae|0)|0;a=T;x=Es(Ee|0,ke|0,p|0,x|0)|0;p=T;ke=Es(ie|0,oe|0,r|0,t|0)|0;Ee=T;t=Es(st|0,ot|0,r|0,t|0)|0;r=T;oe=Es(ie|0,oe|0,q|0,z|0)|0;ie=T;z=Es(st|0,ot|0,q|0,z|0)|0;q=T;C=Es(st|0,ot|0,R|0,C|0)|0;R=T;tt=ks(it|0,rt|0,nt|0,tt|0)|0;$e=ks(tt|0,T|0,et|0,$e|0)|0;Je=ks($e|0,T|0,Ze|0,Je|0)|0;Ye=ks(Je|0,T|0,Xe|0,Ye|0)|0;n=ks(Ye|0,T|0,u|0,n|0)|0;u=T;we=ks(We|0,Qe|0,_e|0,we|0)|0;_e=T;re=ks(Ve|0,He|0,ne|0,re|0)|0;ne=T;qe=ks(Ge|0,Ke|0,ze|0,qe|0)|0;Le=ks(qe|0,T|0,Fe|0,Le|0)|0;p=ks(Le|0,T|0,x|0,p|0)|0;h=ks(p|0,T|0,d|0,h|0)|0;i=ks(h|0,T|0,m|0,i|0)|0;m=T;h=ks(n|0,u|0,33554432,0)|0;d=T;p=Rs(h|0,d|0,26)|0;x=T;Be=ks(Ue|0,je|0,Ne|0,Be|0)|0;Me=ks(Be|0,T|0,De|0,Me|0)|0;Oe=ks(Me|0,T|0,Pe|0,Oe|0)|0;l=ks(Oe|0,T|0,f|0,l|0)|0;x=ks(l|0,T|0,p|0,x|0)|0;p=T;d=Ss(n|0,u|0,h&-67108864|0,d|0)|0;h=T;u=ks(i|0,m|0,33554432,0)|0;n=T;l=Rs(u|0,n|0,26)|0;f=T;Ie=ks(Ce|0,Re|0,xe|0,Ie|0)|0;Se=ks(Ie|0,T|0,Te|0,Se|0)|0;Ee=ks(Se|0,T|0,ke|0,Ee|0)|0;a=ks(Ee|0,T|0,Ae|0,a|0)|0;f=ks(a|0,T|0,l|0,f|0)|0;l=T;n=Ss(i|0,m|0,u&-67108864|0,n|0)|0;u=T;m=ks(x|0,p|0,16777216,0)|0;i=Rs(m|0,T|0,25)|0;a=T;be=ks(we|0,_e|0,ve|0,be|0)|0;ge=ks(be|0,T|0,ye|0,ge|0)|0;pe=ks(ge|0,T|0,me|0,pe|0)|0;c=ks(pe|0,T|0,g|0,c|0)|0;a=ks(c|0,T|0,i|0,a|0)|0;i=T;m=Ss(x|0,p|0,m&-33554432|0,0)|0;p=T;x=ks(f|0,l|0,16777216,0)|0;c=Rs(x|0,T|0,25)|0;g=T;le=ks(he|0,de|0,ue|0,le|0)|0;ce=ks(le|0,T|0,fe|0,ce|0)|0;se=ks(ce|0,T|0,ae|0,se|0)|0;ie=ks(se|0,T|0,oe|0,ie|0)|0;r=ks(ie|0,T|0,t|0,r|0)|0;g=ks(r|0,T|0,c|0,g|0)|0;c=T;x=Ss(f|0,l|0,x&-33554432|0,0)|0;l=T;f=ks(a|0,i|0,33554432,0)|0;r=Rs(f|0,T|0,26)|0;t=T;ee=ks(re|0,ne|0,te|0,ee|0)|0;Z=ks(ee|0,T|0,$|0,Z|0)|0;s=ks(Z|0,T|0,J|0,s|0)|0;t=ks(s|0,T|0,r|0,t|0)|0;r=T;f=Ss(a|0,i|0,f&-67108864|0,0)|0;i=ks(g|0,c|0,33554432,0)|0;a=Rs(i|0,T|0,26)|0;s=T;Q=ks(X|0,Y|0,W|0,Q|0)|0;H=ks(Q|0,T|0,V|0,H|0)|0;K=ks(H|0,T|0,G|0,K|0)|0;q=ks(K|0,T|0,z|0,q|0)|0;s=ks(q|0,T|0,a|0,s|0)|0;a=T;i=Ss(g|0,c|0,i&-67108864|0,0)|0;c=ks(t|0,r|0,16777216,0)|0;g=Rs(c|0,T|0,25)|0;u=ks(g|0,T|0,n|0,u|0)|0;n=T;c=Ss(t|0,r|0,c&-33554432|0,0)|0;r=ks(s|0,a|0,16777216,0)|0;t=Rs(r|0,T|0,25)|0;g=T;j=ks(F|0,L|0,U|0,j|0)|0;B=ks(j|0,T|0,N|0,B|0)|0;M=ks(B|0,T|0,D|0,M|0)|0;O=ks(M|0,T|0,P|0,O|0)|0;R=ks(O|0,T|0,C|0,R|0)|0;g=ks(R|0,T|0,t|0,g|0)|0;t=T;r=Ss(s|0,a|0,r&-33554432|0,0)|0;a=ks(u|0,n|0,33554432,0)|0;s=Cs(a|0,T|0,26)|0;s=ks(x|0,l|0,s|0,T|0)|0;a=Ss(u|0,n|0,a&-67108864|0,0)|0;n=ks(g|0,t|0,33554432,0)|0;u=Rs(n|0,T|0,26)|0;l=T;E=ks(I|0,S|0,k|0,E|0)|0;w=ks(E|0,T|0,A|0,w|0)|0;v=ks(w|0,T|0,_|0,v|0)|0;y=ks(v|0,T|0,b|0,y|0)|0;l=ks(y|0,T|0,u|0,l|0)|0;u=T;n=Ss(g|0,t|0,n&-67108864|0,0)|0;t=ks(l|0,u|0,16777216,0)|0;g=Rs(t|0,T|0,25)|0;g=Es(g|0,T|0,19,0)|0;h=ks(g|0,T|0,d|0,h|0)|0;d=T;t=Ss(l|0,u|0,t&-33554432|0,0)|0;u=ks(h|0,d|0,33554432,0)|0;l=Cs(u|0,T|0,26)|0;l=ks(m|0,p|0,l|0,T|0)|0;u=Ss(h|0,d|0,u&-67108864|0,0)|0;o[e>>2]=u;o[e+4>>2]=l;o[e+8>>2]=f;o[e+12>>2]=c;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=n;o[e+36>>2]=t;return}function Xr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ct=0,ft=0,lt=0,ut=0,dt=0,ht=0,pt=0,mt=0,gt=0,yt=0,bt=0,vt=0,_t=0,wt=0,At=0,Et=0,kt=0,St=0,Tt=0,It=0,xt=0,Rt=0,Ct=0,Ot=0,Pt=0,Mt=0,Dt=0,Bt=0,Nt=0,jt=0,Ut=0,Lt=0,Ft=0,qt=0,zt=0,Kt=0,Gt=0,Ht=0,Vt=0,Qt=0,Wt=0,Yt=0,Xt=0,Jt=0,Zt=0,$t=0,en=0,tn=0,nn=0,rn=0,on=0,sn=0,an=0,cn=0,fn=0,ln=0,un=0,dn=0,hn=0,pn=0,mn=0,gn=0,yn=0,bn=0,vn=0,_n=0,wn=0,An=0,En=0,kn=0,Sn=0,Tn=0,In=0,xn=0,Rn=0,Cn=0,On=0,Pn=0,Mn=0,Dn=0,Bn=0,Nn=0,jn=0,Un=0,Ln=0,Fn=0,qn=0,zn=0,Kn=0,Gn=0,Hn=0;y=o[t>>2]|0;v=o[t+4>>2]|0;l=o[t+8>>2]|0;Ht=o[t+12>>2]|0;s=o[t+16>>2]|0;Te=o[t+20>>2]|0;a=o[t+24>>2]|0;It=o[t+28>>2]|0;oe=o[t+32>>2]|0;ae=o[t+36>>2]|0;D=o[n>>2]|0;N=o[n+4>>2]|0;P=o[n+8>>2]|0;C=o[n+12>>2]|0;x=o[n+16>>2]|0;S=o[n+20>>2]|0;E=o[n+24>>2]|0;w=o[n+28>>2]|0;f=o[n+32>>2]|0;_=o[n+36>>2]|0;qn=N*19|0;rn=P*19|0;bt=C*19|0;De=x*19|0;ln=S*19|0;Ot=E*19|0;Ve=w*19|0;Hn=f*19|0;Kn=_*19|0;t=v<<1;c=Ht<<1;i=Te<<1;r=It<<1;L=ae<<1;b=((y|0)<0)<<31>>31;B=((D|0)<0)<<31>>31;Ln=Es(D|0,B|0,y|0,b|0)|0;Un=T;j=((N|0)<0)<<31>>31;En=Es(N|0,j|0,y|0,b|0)|0;An=T;M=((P|0)<0)<<31>>31;wt=Es(P|0,M|0,y|0,b|0)|0;_t=T;O=((C|0)<0)<<31>>31;je=Es(C|0,O|0,y|0,b|0)|0;Ne=T;R=((x|0)<0)<<31>>31;hn=Es(x|0,R|0,y|0,b|0)|0;dn=T;I=((S|0)<0)<<31>>31;Dt=Es(S|0,I|0,y|0,b|0)|0;Mt=T;k=((E|0)<0)<<31>>31;Ye=Es(E|0,k|0,y|0,b|0)|0;We=T;A=((w|0)<0)<<31>>31;le=Es(w|0,A|0,y|0,b|0)|0;fe=T;zn=((f|0)<0)<<31>>31;z=Es(f|0,zn|0,y|0,b|0)|0;q=T;b=Es(_|0,((_|0)<0)<<31>>31|0,y|0,b|0)|0;y=T;_=((v|0)<0)<<31>>31;sn=Es(D|0,B|0,v|0,_|0)|0;an=T;u=((t|0)<0)<<31>>31;St=Es(N|0,j|0,t|0,u|0)|0;kt=T;Le=Es(P|0,M|0,v|0,_|0)|0;Ue=T;mn=Es(C|0,O|0,t|0,u|0)|0;pn=T;Nt=Es(x|0,R|0,v|0,_|0)|0;Bt=T;Je=Es(S|0,I|0,t|0,u|0)|0;Xe=T;de=Es(E|0,k|0,v|0,_|0)|0;ue=T;G=Es(w|0,A|0,t|0,u|0)|0;K=T;_=Es(f|0,zn|0,v|0,_|0)|0;v=T;zn=((Kn|0)<0)<<31>>31;u=Es(Kn|0,zn|0,t|0,u|0)|0;t=T;f=((l|0)<0)<<31>>31;Et=Es(D|0,B|0,l|0,f|0)|0;At=T;Ke=Es(N|0,j|0,l|0,f|0)|0;ze=T;yn=Es(P|0,M|0,l|0,f|0)|0;gn=T;Ut=Es(C|0,O|0,l|0,f|0)|0;jt=T;$e=Es(x|0,R|0,l|0,f|0)|0;Ze=T;pe=Es(S|0,I|0,l|0,f|0)|0;he=T;V=Es(E|0,k|0,l|0,f|0)|0;H=T;A=Es(w|0,A|0,l|0,f|0)|0;w=T;Gn=((Hn|0)<0)<<31>>31;Sn=Es(Hn|0,Gn|0,l|0,f|0)|0;kn=T;f=Es(Kn|0,zn|0,l|0,f|0)|0;l=T;Vt=((Ht|0)<0)<<31>>31;qe=Es(D|0,B|0,Ht|0,Vt|0)|0;Fe=T;g=((c|0)<0)<<31>>31;wn=Es(N|0,j|0,c|0,g|0)|0;_n=T;Ft=Es(P|0,M|0,Ht|0,Vt|0)|0;Lt=T;tt=Es(C|0,O|0,c|0,g|0)|0;et=T;ge=Es(x|0,R|0,Ht|0,Vt|0)|0;me=T;W=Es(S|0,I|0,c|0,g|0)|0;Q=T;k=Es(E|0,k|0,Ht|0,Vt|0)|0;E=T;Qe=((Ve|0)<0)<<31>>31;In=Es(Ve|0,Qe|0,c|0,g|0)|0;Tn=T;Vt=Es(Hn|0,Gn|0,Ht|0,Vt|0)|0;Ht=T;g=Es(Kn|0,zn|0,c|0,g|0)|0;c=T;Se=((s|0)<0)<<31>>31;vn=Es(D|0,B|0,s|0,Se|0)|0;bn=T;Gt=Es(N|0,j|0,s|0,Se|0)|0;Kt=T;rt=Es(P|0,M|0,s|0,Se|0)|0;nt=T;be=Es(C|0,O|0,s|0,Se|0)|0;ye=T;X=Es(x|0,R|0,s|0,Se|0)|0;Y=T;I=Es(S|0,I|0,s|0,Se|0)|0;S=T;Pt=((Ot|0)<0)<<31>>31;Rn=Es(Ot|0,Pt|0,s|0,Se|0)|0;xn=T;Wt=Es(Ve|0,Qe|0,s|0,Se|0)|0;Qt=T;ft=Es(Hn|0,Gn|0,s|0,Se|0)|0;ct=T;Se=Es(Kn|0,zn|0,s|0,Se|0)|0;s=T;Ie=((Te|0)<0)<<31>>31;zt=Es(D|0,B|0,Te|0,Ie|0)|0;qt=T;m=((i|0)<0)<<31>>31;at=Es(N|0,j|0,i|0,m|0)|0;st=T;_e=Es(P|0,M|0,Te|0,Ie|0)|0;ve=T;Z=Es(C|0,O|0,i|0,m|0)|0;J=T;R=Es(x|0,R|0,Te|0,Ie|0)|0;x=T;un=((ln|0)<0)<<31>>31;On=Es(ln|0,un|0,i|0,m|0)|0;Cn=T;Xt=Es(Ot|0,Pt|0,Te|0,Ie|0)|0;Yt=T;ut=Es(Ve|0,Qe|0,i|0,m|0)|0;lt=T;Ie=Es(Hn|0,Gn|0,Te|0,Ie|0)|0;Te=T;m=Es(Kn|0,zn|0,i|0,m|0)|0;i=T;Tt=((a|0)<0)<<31>>31;ot=Es(D|0,B|0,a|0,Tt|0)|0;it=T;ke=Es(N|0,j|0,a|0,Tt|0)|0;Ee=T;ee=Es(P|0,M|0,a|0,Tt|0)|0;$=T;O=Es(C|0,O|0,a|0,Tt|0)|0;C=T;Be=((De|0)<0)<<31>>31;Mn=Es(De|0,Be|0,a|0,Tt|0)|0;Pn=T;Zt=Es(ln|0,un|0,a|0,Tt|0)|0;Jt=T;ht=Es(Ot|0,Pt|0,a|0,Tt|0)|0;dt=T;Re=Es(Ve|0,Qe|0,a|0,Tt|0)|0;xe=T;d=Es(Hn|0,Gn|0,a|0,Tt|0)|0;h=T;Tt=Es(Kn|0,zn|0,a|0,Tt|0)|0;a=T;xt=((It|0)<0)<<31>>31;Ae=Es(D|0,B|0,It|0,xt|0)|0;we=T;n=((r|0)<0)<<31>>31;ie=Es(N|0,j|0,r|0,n|0)|0;re=T;M=Es(P|0,M|0,It|0,xt|0)|0;P=T;vt=((bt|0)<0)<<31>>31;Bn=Es(bt|0,vt|0,r|0,n|0)|0;Dn=T;en=Es(De|0,Be|0,It|0,xt|0)|0;$t=T;mt=Es(ln|0,un|0,r|0,n|0)|0;pt=T;Oe=Es(Ot|0,Pt|0,It|0,xt|0)|0;Ce=T;U=Es(Ve|0,Qe|0,r|0,n|0)|0;p=T;xt=Es(Hn|0,Gn|0,It|0,xt|0)|0;It=T;n=Es(Kn|0,zn|0,r|0,n|0)|0;r=T;se=((oe|0)<0)<<31>>31;ne=Es(D|0,B|0,oe|0,se|0)|0;te=T;j=Es(N|0,j|0,oe|0,se|0)|0;N=T;on=((rn|0)<0)<<31>>31;jn=Es(rn|0,on|0,oe|0,se|0)|0;Nn=T;nn=Es(bt|0,vt|0,oe|0,se|0)|0;tn=T;yt=Es(De|0,Be|0,oe|0,se|0)|0;gt=T;Me=Es(ln|0,un|0,oe|0,se|0)|0;Pe=T;fn=Es(Ot|0,Pt|0,oe|0,se|0)|0;cn=T;Ct=Es(Ve|0,Qe|0,oe|0,se|0)|0;Rt=T;He=Es(Hn|0,Gn|0,oe|0,se|0)|0;Ge=T;se=Es(Kn|0,zn|0,oe|0,se|0)|0;oe=T;ce=((ae|0)<0)<<31>>31;B=Es(D|0,B|0,ae|0,ce|0)|0;D=T;F=((L|0)<0)<<31>>31;qn=Es(qn|0,((qn|0)<0)<<31>>31|0,L|0,F|0)|0;Fn=T;on=Es(rn|0,on|0,ae|0,ce|0)|0;rn=T;vt=Es(bt|0,vt|0,L|0,F|0)|0;bt=T;Be=Es(De|0,Be|0,ae|0,ce|0)|0;De=T;un=Es(ln|0,un|0,L|0,F|0)|0;ln=T;Pt=Es(Ot|0,Pt|0,ae|0,ce|0)|0;Ot=T;Qe=Es(Ve|0,Qe|0,L|0,F|0)|0;Ve=T;ce=Es(Hn|0,Gn|0,ae|0,ce|0)|0;ae=T;F=Es(Kn|0,zn|0,L|0,F|0)|0;L=T;Un=ks(qn|0,Fn|0,Ln|0,Un|0)|0;Nn=ks(Un|0,T|0,jn|0,Nn|0)|0;Dn=ks(Nn|0,T|0,Bn|0,Dn|0)|0;Pn=ks(Dn|0,T|0,Mn|0,Pn|0)|0;Cn=ks(Pn|0,T|0,On|0,Cn|0)|0;xn=ks(Cn|0,T|0,Rn|0,xn|0)|0;Tn=ks(xn|0,T|0,In|0,Tn|0)|0;kn=ks(Tn|0,T|0,Sn|0,kn|0)|0;t=ks(kn|0,T|0,u|0,t|0)|0;u=T;an=ks(En|0,An|0,sn|0,an|0)|0;sn=T;bn=ks(wn|0,_n|0,vn|0,bn|0)|0;gn=ks(bn|0,T|0,yn|0,gn|0)|0;pn=ks(gn|0,T|0,mn|0,pn|0)|0;dn=ks(pn|0,T|0,hn|0,dn|0)|0;ln=ks(dn|0,T|0,un|0,ln|0)|0;cn=ks(ln|0,T|0,fn|0,cn|0)|0;p=ks(cn|0,T|0,U|0,p|0)|0;h=ks(p|0,T|0,d|0,h|0)|0;i=ks(h|0,T|0,m|0,i|0)|0;m=T;h=ks(t|0,u|0,33554432,0)|0;d=T;p=Rs(h|0,d|0,26)|0;U=T;rn=ks(an|0,sn|0,on|0,rn|0)|0;tn=ks(rn|0,T|0,nn|0,tn|0)|0;$t=ks(tn|0,T|0,en|0,$t|0)|0;Jt=ks($t|0,T|0,Zt|0,Jt|0)|0;Yt=ks(Jt|0,T|0,Xt|0,Yt|0)|0;Qt=ks(Yt|0,T|0,Wt|0,Qt|0)|0;Ht=ks(Qt|0,T|0,Vt|0,Ht|0)|0;l=ks(Ht|0,T|0,f|0,l|0)|0;U=ks(l|0,T|0,p|0,U|0)|0;p=T;d=Ss(t|0,u|0,h&-67108864|0,d|0)|0;h=T;u=ks(i|0,m|0,33554432,0)|0;t=T;l=Rs(u|0,t|0,26)|0;f=T;qt=ks(Gt|0,Kt|0,zt|0,qt|0)|0;Lt=ks(qt|0,T|0,Ft|0,Lt|0)|0;jt=ks(Lt|0,T|0,Ut|0,jt|0)|0;Bt=ks(jt|0,T|0,Nt|0,Bt|0)|0;Mt=ks(Bt|0,T|0,Dt|0,Mt|0)|0;Ot=ks(Mt|0,T|0,Pt|0,Ot|0)|0;Rt=ks(Ot|0,T|0,Ct|0,Rt|0)|0;It=ks(Rt|0,T|0,xt|0,It|0)|0;a=ks(It|0,T|0,Tt|0,a|0)|0;f=ks(a|0,T|0,l|0,f|0)|0;l=T;t=Ss(i|0,m|0,u&-67108864|0,t|0)|0;u=T;m=ks(U|0,p|0,16777216,0)|0;i=Rs(m|0,T|0,25)|0;a=T;At=ks(St|0,kt|0,Et|0,At|0)|0;_t=ks(At|0,T|0,wt|0,_t|0)|0;bt=ks(_t|0,T|0,vt|0,bt|0)|0;gt=ks(bt|0,T|0,yt|0,gt|0)|0;pt=ks(gt|0,T|0,mt|0,pt|0)|0;dt=ks(pt|0,T|0,ht|0,dt|0)|0;lt=ks(dt|0,T|0,ut|0,lt|0)|0;ct=ks(lt|0,T|0,ft|0,ct|0)|0;c=ks(ct|0,T|0,g|0,c|0)|0;a=ks(c|0,T|0,i|0,a|0)|0;i=T;m=Ss(U|0,p|0,m&-33554432|0,0)|0;p=T;U=ks(f|0,l|0,16777216,0)|0;c=Rs(U|0,T|0,25)|0;g=T;it=ks(at|0,st|0,ot|0,it|0)|0;nt=ks(it|0,T|0,rt|0,nt|0)|0;et=ks(nt|0,T|0,tt|0,et|0)|0;Ze=ks(et|0,T|0,$e|0,Ze|0)|0;Xe=ks(Ze|0,T|0,Je|0,Xe|0)|0;We=ks(Xe|0,T|0,Ye|0,We|0)|0;Ve=ks(We|0,T|0,Qe|0,Ve|0)|0;Ge=ks(Ve|0,T|0,He|0,Ge|0)|0;r=ks(Ge|0,T|0,n|0,r|0)|0;g=ks(r|0,T|0,c|0,g|0)|0;c=T;U=Ss(f|0,l|0,U&-33554432|0,0)|0;l=T;f=ks(a|0,i|0,33554432,0)|0;r=Rs(f|0,T|0,26)|0;n=T;Fe=ks(Ke|0,ze|0,qe|0,Fe|0)|0;Ue=ks(Fe|0,T|0,Le|0,Ue|0)|0;Ne=ks(Ue|0,T|0,je|0,Ne|0)|0;De=ks(Ne|0,T|0,Be|0,De|0)|0;Pe=ks(De|0,T|0,Me|0,Pe|0)|0;Ce=ks(Pe|0,T|0,Oe|0,Ce|0)|0;xe=ks(Ce|0,T|0,Re|0,xe|0)|0;Te=ks(xe|0,T|0,Ie|0,Te|0)|0;s=ks(Te|0,T|0,Se|0,s|0)|0;n=ks(s|0,T|0,r|0,n|0)|0;r=T;f=Ss(a|0,i|0,f&-67108864|0,0)|0;i=ks(g|0,c|0,33554432,0)|0;a=Rs(i|0,T|0,26)|0;s=T;we=ks(ke|0,Ee|0,Ae|0,we|0)|0;ve=ks(we|0,T|0,_e|0,ve|0)|0;ye=ks(ve|0,T|0,be|0,ye|0)|0;me=ks(ye|0,T|0,ge|0,me|0)|0;he=ks(me|0,T|0,pe|0,he|0)|0;ue=ks(he|0,T|0,de|0,ue|0)|0;fe=ks(ue|0,T|0,le|0,fe|0)|0;ae=ks(fe|0,T|0,ce|0,ae|0)|0;oe=ks(ae|0,T|0,se|0,oe|0)|0;s=ks(oe|0,T|0,a|0,s|0)|0;a=T;i=Ss(g|0,c|0,i&-67108864|0,0)|0;c=ks(n|0,r|0,16777216,0)|0;g=Rs(c|0,T|0,25)|0;u=ks(g|0,T|0,t|0,u|0)|0;t=T;c=Ss(n|0,r|0,c&-33554432|0,0)|0;r=ks(s|0,a|0,16777216,0)|0;n=Rs(r|0,T|0,25)|0;g=T;te=ks(ie|0,re|0,ne|0,te|0)|0;$=ks(te|0,T|0,ee|0,$|0)|0;J=ks($|0,T|0,Z|0,J|0)|0;Y=ks(J|0,T|0,X|0,Y|0)|0;Q=ks(Y|0,T|0,W|0,Q|0)|0;H=ks(Q|0,T|0,V|0,H|0)|0;K=ks(H|0,T|0,G|0,K|0)|0;q=ks(K|0,T|0,z|0,q|0)|0;L=ks(q|0,T|0,F|0,L|0)|0;g=ks(L|0,T|0,n|0,g|0)|0;n=T;r=Ss(s|0,a|0,r&-33554432|0,0)|0;a=ks(u|0,t|0,33554432,0)|0;s=Cs(a|0,T|0,26)|0;s=ks(U|0,l|0,s|0,T|0)|0;a=Ss(u|0,t|0,a&-67108864|0,0)|0;t=ks(g|0,n|0,33554432,0)|0;u=Rs(t|0,T|0,26)|0;l=T;D=ks(j|0,N|0,B|0,D|0)|0;P=ks(D|0,T|0,M|0,P|0)|0;C=ks(P|0,T|0,O|0,C|0)|0;x=ks(C|0,T|0,R|0,x|0)|0;S=ks(x|0,T|0,I|0,S|0)|0;E=ks(S|0,T|0,k|0,E|0)|0;w=ks(E|0,T|0,A|0,w|0)|0;v=ks(w|0,T|0,_|0,v|0)|0;y=ks(v|0,T|0,b|0,y|0)|0;l=ks(y|0,T|0,u|0,l|0)|0;u=T;t=Ss(g|0,n|0,t&-67108864|0,0)|0;n=ks(l|0,u|0,16777216,0)|0;g=Rs(n|0,T|0,25)|0;g=Es(g|0,T|0,19,0)|0;h=ks(g|0,T|0,d|0,h|0)|0;d=T;n=Ss(l|0,u|0,n&-33554432|0,0)|0;u=ks(h|0,d|0,33554432,0)|0;l=Cs(u|0,T|0,26)|0;l=ks(m|0,p|0,l|0,T|0)|0;u=Ss(h|0,d|0,u&-67108864|0,0)|0;o[e>>2]=u;o[e+4>>2]=l;o[e+8>>2]=f;o[e+12>>2]=c;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=t;o[e+36>>2]=n;return}function Jr(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0;v=o[t>>2]|0;b=o[t+4>>2]|0;g=o[t+8>>2]|0;p=o[t+12>>2]|0;d=o[t+16>>2]|0;u=o[t+20>>2]|0;l=o[t+24>>2]|0;c=o[t+28>>2]|0;s=o[t+32>>2]|0;n=o[t+36>>2]|0;v=(((((((((((((n*19|0)+16777216>>25)+v>>26)+b>>25)+g>>26)+p>>25)+d>>26)+u>>25)+l>>26)+c>>25)+s>>26)+n>>25)*19|0)+v|0;b=(v>>26)+b|0;g=(b>>25)+g|0;y=b&33554431;p=(g>>26)+p|0;m=g&67108863;d=(p>>25)+d|0;h=p&33554431;u=(d>>26)+u|0;l=(u>>25)+l|0;c=(l>>26)+c|0;f=l&67108863;s=(c>>25)+s|0;a=c&33554431;n=(s>>26)+n|0;i=s&67108863;t=n&33554431;r[e>>0]=v;r[e+1>>0]=v>>>8;r[e+2>>0]=v>>>16;r[e+3>>0]=y<<2|v>>>24&3;r[e+4>>0]=b>>>6;r[e+5>>0]=b>>>14;r[e+6>>0]=m<<3|y>>>22;r[e+7>>0]=g>>>5;r[e+8>>0]=g>>>13;r[e+9>>0]=h<<5|m>>>21;r[e+10>>0]=p>>>3;r[e+11>>0]=p>>>11;r[e+12>>0]=d<<6|h>>>19;r[e+13>>0]=d>>>2;r[e+14>>0]=d>>>10;r[e+15>>0]=d>>>18;r[e+16>>0]=u;r[e+17>>0]=u>>>8;r[e+18>>0]=u>>>16;r[e+19>>0]=f<<1|u>>>24&1;r[e+20>>0]=l>>>7;r[e+21>>0]=l>>>15;r[e+22>>0]=a<<3|f>>>23;r[e+23>>0]=c>>>5;r[e+24>>0]=c>>>13;r[e+25>>0]=i<<4|a>>>21;r[e+26>>0]=s>>>4;r[e+27>>0]=s>>>12;r[e+28>>0]=t<<6|i>>>20;r[e+29>>0]=n>>>2;r[e+30>>0]=n>>>10;r[e+31>>0]=t>>>18;return}function Zr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0,s=0;s=h;h=h+144|0;r=s+96|0;i=s+48|0;o=s;Yr(r,t);Yr(i,r);Yr(i,i);Xr(i,t,i);Xr(r,r,i);Yr(r,r);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);n=1;do{Yr(o,o);n=n+1|0}while((n|0)!=100);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(r,r);Yr(r,r);Xr(e,r,t);h=s;return}function $r(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;tt=o[t>>2]|0;je=o[t+4>>2]|0;v=o[t+8>>2]|0;re=o[t+12>>2]|0;_=o[t+16>>2]|0;rt=o[t+20>>2]|0;f=o[t+24>>2]|0;me=o[t+28>>2]|0;s=o[t+32>>2]|0;g=o[t+36>>2]|0;l=tt<<1;y=je<<1;Ye=v<<1;A=re<<1;Oe=_<<1;m=rt<<1;pe=f<<1;w=me<<1;We=rt*38|0;Be=f*19|0;oe=me*38|0;Y=s*19|0;st=g*38|0;nt=((tt|0)<0)<<31>>31;nt=Es(tt|0,nt|0,tt|0,nt|0)|0;tt=T;u=((l|0)<0)<<31>>31;Ue=((je|0)<0)<<31>>31;Ve=Es(l|0,u|0,je|0,Ue|0)|0;He=T;p=((v|0)<0)<<31>>31;Fe=Es(v|0,p|0,l|0,u|0)|0;Le=T;ie=((re|0)<0)<<31>>31;Ce=Es(re|0,ie|0,l|0,u|0)|0;Re=T;r=((_|0)<0)<<31>>31;be=Es(_|0,r|0,l|0,u|0)|0;ye=T;it=((rt|0)<0)<<31>>31;ce=Es(rt|0,it|0,l|0,u|0)|0;ae=T;b=((f|0)<0)<<31>>31;Z=Es(f|0,b|0,l|0,u|0)|0;J=T;ge=((me|0)<0)<<31>>31;z=Es(me|0,ge|0,l|0,u|0)|0;q=T;a=((s|0)<0)<<31>>31;P=Es(s|0,a|0,l|0,u|0)|0;O=T;t=((g|0)<0)<<31>>31;u=Es(g|0,t|0,l|0,u|0)|0;l=T;n=((y|0)<0)<<31>>31;Ue=Es(y|0,n|0,je|0,Ue|0)|0;je=T;xe=Es(y|0,n|0,v|0,p|0)|0;Ie=T;i=((A|0)<0)<<31>>31;Ae=Es(A|0,i|0,y|0,n|0)|0;we=T;de=Es(_|0,r|0,y|0,n|0)|0;ue=T;E=((m|0)<0)<<31>>31;ee=Es(m|0,E|0,y|0,n|0)|0;$=T;G=Es(f|0,b|0,y|0,n|0)|0;K=T;c=((w|0)<0)<<31>>31;D=Es(w|0,c|0,y|0,n|0)|0;M=T;d=Es(s|0,a|0,y|0,n|0)|0;h=T;ot=((st|0)<0)<<31>>31;n=Es(st|0,ot|0,y|0,n|0)|0;y=T;_e=Es(v|0,p|0,v|0,p|0)|0;ve=T;Xe=((Ye|0)<0)<<31>>31;le=Es(Ye|0,Xe|0,re|0,ie|0)|0;fe=T;ne=Es(_|0,r|0,Ye|0,Xe|0)|0;te=T;W=Es(rt|0,it|0,Ye|0,Xe|0)|0;Q=T;F=Es(f|0,b|0,Ye|0,Xe|0)|0;L=T;S=Es(me|0,ge|0,Ye|0,Xe|0)|0;k=T;X=((Y|0)<0)<<31>>31;Xe=Es(Y|0,X|0,Ye|0,Xe|0)|0;Ye=T;p=Es(st|0,ot|0,v|0,p|0)|0;v=T;ie=Es(A|0,i|0,re|0,ie|0)|0;re=T;V=Es(A|0,i|0,_|0,r|0)|0;H=T;N=Es(m|0,E|0,A|0,i|0)|0;B=T;C=Es(f|0,b|0,A|0,i|0)|0;R=T;se=((oe|0)<0)<<31>>31;Ze=Es(oe|0,se|0,A|0,i|0)|0;Je=T;ze=Es(Y|0,X|0,A|0,i|0)|0;qe=T;i=Es(st|0,ot|0,A|0,i|0)|0;A=T;U=Es(_|0,r|0,_|0,r|0)|0;j=T;Pe=((Oe|0)<0)<<31>>31;x=Es(Oe|0,Pe|0,rt|0,it|0)|0;I=T;Ne=((Be|0)<0)<<31>>31;et=Es(Be|0,Ne|0,Oe|0,Pe|0)|0;$e=T;Ge=Es(oe|0,se|0,_|0,r|0)|0;Ke=T;Pe=Es(Y|0,X|0,Oe|0,Pe|0)|0;Oe=T;r=Es(st|0,ot|0,_|0,r|0)|0;_=T;it=Es(We|0,((We|0)<0)<<31>>31|0,rt|0,it|0)|0;rt=T;We=Es(Be|0,Ne|0,m|0,E|0)|0;Qe=T;De=Es(oe|0,se|0,m|0,E|0)|0;Me=T;ke=Es(Y|0,X|0,m|0,E|0)|0;Ee=T;E=Es(st|0,ot|0,m|0,E|0)|0;m=T;Ne=Es(Be|0,Ne|0,f|0,b|0)|0;Be=T;Te=Es(oe|0,se|0,f|0,b|0)|0;Se=T;pe=Es(Y|0,X|0,pe|0,((pe|0)<0)<<31>>31|0)|0;he=T;b=Es(st|0,ot|0,f|0,b|0)|0;f=T;ge=Es(oe|0,se|0,me|0,ge|0)|0;me=T;se=Es(Y|0,X|0,w|0,c|0)|0;oe=T;c=Es(st|0,ot|0,w|0,c|0)|0;w=T;X=Es(Y|0,X|0,s|0,a|0)|0;Y=T;a=Es(st|0,ot|0,s|0,a|0)|0;s=T;t=Es(st|0,ot|0,g|0,t|0)|0;g=T;tt=ks(it|0,rt|0,nt|0,tt|0)|0;$e=ks(tt|0,T|0,et|0,$e|0)|0;Je=ks($e|0,T|0,Ze|0,Je|0)|0;Ye=ks(Je|0,T|0,Xe|0,Ye|0)|0;y=ks(Ye|0,T|0,n|0,y|0)|0;n=T;He=ks(We|0,Qe|0,Ve|0,He|0)|0;Ke=ks(He|0,T|0,Ge|0,Ke|0)|0;qe=ks(Ke|0,T|0,ze|0,qe|0)|0;v=ks(qe|0,T|0,p|0,v|0)|0;p=T;je=ks(Fe|0,Le|0,Ue|0,je|0)|0;Be=ks(je|0,T|0,Ne|0,Be|0)|0;Me=ks(Be|0,T|0,De|0,Me|0)|0;Oe=ks(Me|0,T|0,Pe|0,Oe|0)|0;A=ks(Oe|0,T|0,i|0,A|0)|0;i=T;Ie=ks(Ce|0,Re|0,xe|0,Ie|0)|0;Se=ks(Ie|0,T|0,Te|0,Se|0)|0;Ee=ks(Se|0,T|0,ke|0,Ee|0)|0;_=ks(Ee|0,T|0,r|0,_|0)|0;r=T;ve=ks(Ae|0,we|0,_e|0,ve|0)|0;ye=ks(ve|0,T|0,be|0,ye|0)|0;me=ks(ye|0,T|0,ge|0,me|0)|0;he=ks(me|0,T|0,pe|0,he|0)|0;m=ks(he|0,T|0,E|0,m|0)|0;E=T;fe=ks(de|0,ue|0,le|0,fe|0)|0;ae=ks(fe|0,T|0,ce|0,ae|0)|0;oe=ks(ae|0,T|0,se|0,oe|0)|0;f=ks(oe|0,T|0,b|0,f|0)|0;b=T;te=ks(ie|0,re|0,ne|0,te|0)|0;$=ks(te|0,T|0,ee|0,$|0)|0;J=ks($|0,T|0,Z|0,J|0)|0;Y=ks(J|0,T|0,X|0,Y|0)|0;w=ks(Y|0,T|0,c|0,w|0)|0;c=T;H=ks(W|0,Q|0,V|0,H|0)|0;K=ks(H|0,T|0,G|0,K|0)|0;q=ks(K|0,T|0,z|0,q|0)|0;s=ks(q|0,T|0,a|0,s|0)|0;a=T;j=ks(F|0,L|0,U|0,j|0)|0;B=ks(j|0,T|0,N|0,B|0)|0;M=ks(B|0,T|0,D|0,M|0)|0;O=ks(M|0,T|0,P|0,O|0)|0;g=ks(O|0,T|0,t|0,g|0)|0;t=T;I=ks(C|0,R|0,x|0,I|0)|0;k=ks(I|0,T|0,S|0,k|0)|0;h=ks(k|0,T|0,d|0,h|0)|0;l=ks(h|0,T|0,u|0,l|0)|0;u=T;n=Os(y|0,n|0,1)|0;y=T;p=Os(v|0,p|0,1)|0;v=T;i=Os(A|0,i|0,1)|0;A=T;r=Os(_|0,r|0,1)|0;_=T;E=Os(m|0,E|0,1)|0;m=T;b=Os(f|0,b|0,1)|0;f=T;c=Os(w|0,c|0,1)|0;w=T;a=Os(s|0,a|0,1)|0;s=T;t=Os(g|0,t|0,1)|0;g=T;u=Os(l|0,u|0,1)|0;l=T;h=ks(n|0,y|0,33554432,0)|0;d=T;k=Rs(h|0,d|0,26)|0;v=ks(k|0,T|0,p|0,v|0)|0;p=T;d=Ss(n|0,y|0,h&-67108864|0,d|0)|0;h=T;y=ks(E|0,m|0,33554432,0)|0;n=T;k=Rs(y|0,n|0,26)|0;f=ks(k|0,T|0,b|0,f|0)|0;b=T;n=Ss(E|0,m|0,y&-67108864|0,n|0)|0;y=T;m=ks(v|0,p|0,16777216,0)|0;E=Rs(m|0,T|0,25)|0;A=ks(E|0,T|0,i|0,A|0)|0;i=T;m=Ss(v|0,p|0,m&-33554432|0,0)|0;p=T;v=ks(f|0,b|0,16777216,0)|0;E=Rs(v|0,T|0,25)|0;w=ks(E|0,T|0,c|0,w|0)|0;c=T;v=Ss(f|0,b|0,v&-33554432|0,0)|0;b=T;f=ks(A|0,i|0,33554432,0)|0;E=Rs(f|0,T|0,26)|0;_=ks(E|0,T|0,r|0,_|0)|0;r=T;f=Ss(A|0,i|0,f&-67108864|0,0)|0;i=ks(w|0,c|0,33554432,0)|0;A=Rs(i|0,T|0,26)|0;s=ks(A|0,T|0,a|0,s|0)|0;a=T;i=Ss(w|0,c|0,i&-67108864|0,0)|0;c=ks(_|0,r|0,16777216,0)|0;w=Rs(c|0,T|0,25)|0;y=ks(w|0,T|0,n|0,y|0)|0;n=T;c=Ss(_|0,r|0,c&-33554432|0,0)|0;r=ks(s|0,a|0,16777216,0)|0;_=Rs(r|0,T|0,25)|0;g=ks(_|0,T|0,t|0,g|0)|0;t=T;r=Ss(s|0,a|0,r&-33554432|0,0)|0;a=ks(y|0,n|0,33554432,0)|0;s=Cs(a|0,T|0,26)|0;s=ks(v|0,b|0,s|0,T|0)|0;a=Ss(y|0,n|0,a&-67108864|0,0)|0;n=ks(g|0,t|0,33554432,0)|0;y=Rs(n|0,T|0,26)|0;l=ks(y|0,T|0,u|0,l|0)|0;u=T;n=Ss(g|0,t|0,n&-67108864|0,0)|0;t=ks(l|0,u|0,16777216,0)|0;g=Rs(t|0,T|0,25)|0;g=Es(g|0,T|0,19,0)|0;h=ks(g|0,T|0,d|0,h|0)|0;d=T;t=Ss(l|0,u|0,t&-33554432|0,0)|0;u=ks(h|0,d|0,33554432,0)|0;l=Cs(u|0,T|0,26)|0;l=ks(m|0,p|0,l|0,T|0)|0;u=Ss(h|0,d|0,u&-67108864|0,0)|0;o[e>>2]=u;o[e+4>>2]=l;o[e+8>>2]=f;o[e+12>>2]=c;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=n;o[e+36>>2]=t;return}function ei(e){e=e|0;var t=0,n=0,i=0,o=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;de=e+1|0;fe=e+2|0;z=r[fe>>0]|0;Ae=s[e>>0]|0;P=Os(s[de>>0]|0|0,0,8)|0;ve=T;z=z&255;_e=Os(z|0,0,16)|0;ce=e+3|0;w=Os(s[ce>>0]|0|0,0,8)|0;te=T;ie=e+4|0;Z=Os(s[ie>>0]|0|0,0,16)|0;te=te|T;re=e+5|0;q=s[re>>0]|0;$=Os(q|0,0,24)|0;te=Cs(w|z|Z|$|0,te|T|0,5)|0;$=e+6|0;Z=e+7|0;z=r[Z>>0]|0;w=Os(s[$>>0]|0|0,0,8)|0;xe=T;z=z&255;J=Os(z|0,0,16)|0;xe=Cs(w|q|J|0,xe|T|0,2)|0;J=e+8|0;q=Os(s[J>>0]|0|0,0,8)|0;w=T;Q=e+9|0;Ie=Os(s[Q>>0]|0|0,0,16)|0;w=w|T;V=e+10|0;Ve=s[V>>0]|0;H=Os(Ve|0,0,24)|0;w=Cs(q|z|Ie|H|0,w|T|0,7)|0;H=e+11|0;Ie=Os(s[H>>0]|0|0,0,8)|0;z=T;q=e+12|0;B=Os(s[q>>0]|0|0,0,16)|0;z=z|T;F=e+13|0;A=s[F>>0]|0;N=Os(A|0,0,24)|0;z=Cs(Ie|Ve|B|N|0,z|T|0,4)|0;N=e+14|0;B=e+15|0;Ve=r[B>>0]|0;Ie=Os(s[N>>0]|0|0,0,8)|0;ye=T;Ve=Ve&255;D=Os(Ve|0,0,16)|0;ye=Cs(Ie|A|D|0,ye|T|0,1)|0;D=e+16|0;A=Os(s[D>>0]|0|0,0,8)|0;Ie=T;C=e+17|0;k=Os(s[C>>0]|0|0,0,16)|0;Ie=Ie|T;R=e+18|0;E=s[R>>0]|0;x=Os(E|0,0,24)|0;Ie=Cs(A|Ve|k|x|0,Ie|T|0,6)|0;x=e+19|0;k=e+20|0;Ve=r[k>>0]|0;A=Os(s[x>>0]|0|0,0,8)|0;Qe=T;Ve=Os(Ve&255|0,0,16)|0;Qe=Cs(A|E|Ve|0,Qe|T|0,3)|0;Ve=T;E=e+21|0;A=e+22|0;v=e+23|0;n=r[v>>0]|0;et=s[E>>0]|0;tt=Os(s[A>>0]|0|0,0,8)|0;Ze=T;n=n&255;$e=Os(n|0,0,16)|0;b=e+24|0;Ue=Os(s[b>>0]|0|0,0,8)|0;Ke=T;p=e+25|0;c=Os(s[p>>0]|0|0,0,16)|0;Ke=Ke|T;h=e+26|0;pe=s[h>>0]|0;f=Os(pe|0,0,24)|0;Ke=Cs(Ue|n|c|f|0,Ke|T|0,5)|0;f=e+27|0;c=e+28|0;n=r[c>>0]|0;Ue=Os(s[f>>0]|0|0,0,8)|0;Je=T;n=n&255;a=Os(n|0,0,16)|0;Je=Cs(Ue|pe|a|0,Je|T|0,2)|0;a=e+29|0;pe=Os(s[a>>0]|0|0,0,8)|0;Ue=T;o=e+30|0;ot=Os(s[o>>0]|0|0,0,16)|0;Ue=Ue|T;t=e+31|0;ne=s[t>>0]|0;l=Os(ne|0,0,24)|0;Ue=Cs(pe|n|ot|l|0,Ue|T|0,7)|0;l=Os(s[e+32>>0]|0|0,0,8)|0;ot=T;n=Os(s[e+33>>0]|0|0,0,16)|0;ot=ot|T;pe=s[e+34>>0]|0;g=Os(pe|0,0,24)|0;ot=Cs(l|ne|n|g|0,ot|T|0,4)|0;g=r[e+36>>0]|0;n=Os(s[e+35>>0]|0|0,0,8)|0;ne=T;g=g&255;l=Os(g|0,0,16)|0;ne=Cs(n|pe|l|0,ne|T|0,1)|0;l=Os(s[e+37>>0]|0|0,0,8)|0;pe=T;n=Os(s[e+38>>0]|0|0,0,16)|0;pe=pe|T;Fe=s[e+39>>0]|0;ee=Os(Fe|0,0,24)|0;pe=Cs(l|g|n|ee|0,pe|T|0,6)|0;ee=r[e+41>>0]|0;n=Os(s[e+40>>0]|0|0,0,8)|0;g=T;ee=Os(ee&255|0,0,16)|0;g=Cs(n|Fe|ee|0,g|T|0,3)|0;ee=T;Fe=r[e+44>>0]|0;n=s[e+42>>0]|0;l=Os(s[e+43>>0]|0|0,0,8)|0;j=T;Fe=Fe&255;y=Os(Fe|0,0,16)|0;S=Os(s[e+45>>0]|0|0,0,8)|0;oe=T;Oe=Os(s[e+46>>0]|0|0,0,16)|0;oe=oe|T;st=s[e+47>>0]|0;U=Os(st|0,0,24)|0;oe=Cs(S|Fe|Oe|U|0,oe|T|0,5)|0;U=r[e+49>>0]|0;Oe=Os(s[e+48>>0]|0|0,0,8)|0;Fe=T;U=U&255;S=Os(U|0,0,16)|0;Fe=Cs(Oe|st|S|0,Fe|T|0,2)|0;Fe=Fe&2097151;S=Os(s[e+50>>0]|0|0,0,8)|0;st=T;Oe=Os(s[e+51>>0]|0|0,0,16)|0;st=st|T;le=s[e+52>>0]|0;L=Os(le|0,0,24)|0;st=Cs(S|U|Oe|L|0,st|T|0,7)|0;st=st&2097151;L=Os(s[e+53>>0]|0|0,0,8)|0;Oe=T;U=Os(s[e+54>>0]|0|0,0,16)|0;Oe=Oe|T;S=s[e+55>>0]|0;W=Os(S|0,0,24)|0;Oe=Cs(L|le|U|W|0,Oe|T|0,4)|0;Oe=Oe&2097151;W=r[e+57>>0]|0;U=Os(s[e+56>>0]|0|0,0,8)|0;le=T;W=W&255;L=Os(W|0,0,16)|0;le=Cs(U|S|L|0,le|T|0,1)|0;le=le&2097151;L=Os(s[e+58>>0]|0|0,0,8)|0;S=T;U=Os(s[e+59>>0]|0|0,0,16)|0;S=S|T;he=s[e+60>>0]|0;ge=Os(he|0,0,24)|0;S=Cs(L|W|U|ge|0,S|T|0,6)|0;S=S&2097151;ge=Os(s[e+61>>0]|0|0,0,8)|0;U=T;W=Os(s[e+62>>0]|0|0,0,16)|0;U=U|T;L=Os(s[e+63>>0]|0|0,0,24)|0;U=Cs(ge|he|W|L|0,U|T|0,3)|0;L=T;W=Es(U|0,L|0,666643,0)|0;he=T;ge=Es(U|0,L|0,470296,0)|0;ae=T;_=Es(U|0,L|0,654183,0)|0;O=T;we=Es(U|0,L|0,-997805,-1)|0;Te=T;d=Es(U|0,L|0,136657,0)|0;Se=T;L=Es(U|0,L|0,-683901,-1)|0;j=ks(L|0,T|0,l|n|y&2031616|0,j|0)|0;y=T;n=Es(S|0,0,666643,0)|0;l=T;L=Es(S|0,0,470296,0)|0;U=T;Ye=Es(S|0,0,654183,0)|0;M=T;Y=Es(S|0,0,-997805,-1)|0;K=T;ke=Es(S|0,0,136657,0)|0;me=T;S=Es(S|0,0,-683901,-1)|0;G=T;Re=Es(le|0,0,666643,0)|0;Ee=T;se=Es(le|0,0,470296,0)|0;Le=T;Me=Es(le|0,0,654183,0)|0;Pe=T;nt=Es(le|0,0,-997805,-1)|0;We=T;u=Es(le|0,0,136657,0)|0;m=T;le=Es(le|0,0,-683901,-1)|0;pe=ks(le|0,T|0,pe&2097151|0,0)|0;me=ks(pe|0,T|0,ke|0,me|0)|0;Te=ks(me|0,T|0,we|0,Te|0)|0;we=T;me=Es(Oe|0,0,666643,0)|0;ke=T;pe=Es(Oe|0,0,470296,0)|0;le=T;be=Es(Oe|0,0,654183,0)|0;X=T;Be=Es(Oe|0,0,-997805,-1)|0;De=T;it=Es(Oe|0,0,136657,0)|0;rt=T;Oe=Es(Oe|0,0,-683901,-1)|0;Ce=T;i=Es(st|0,0,666643,0)|0;I=T;Ge=Es(st|0,0,470296,0)|0;He=T;ze=Es(st|0,0,654183,0)|0;qe=T;Xe=Es(st|0,0,-997805,-1)|0;ue=T;je=Es(st|0,0,136657,0)|0;Ne=T;st=Es(st|0,0,-683901,-1)|0;ot=ks(st|0,T|0,ot&2097151|0,0)|0;rt=ks(ot|0,T|0,it|0,rt|0)|0;We=ks(rt|0,T|0,nt|0,We|0)|0;M=ks(We|0,T|0,Ye|0,M|0)|0;ae=ks(M|0,T|0,ge|0,ae|0)|0;ge=T;M=Es(Fe|0,0,666643,0)|0;Ie=ks(M|0,T|0,Ie&2097151|0,0)|0;M=T;Ye=Es(Fe|0,0,470296,0)|0;We=T;nt=Es(Fe|0,0,654183,0)|0;Ze=ks(nt|0,T|0,tt|et|$e&2031616|0,Ze|0)|0;He=ks(Ze|0,T|0,Ge|0,He|0)|0;ke=ks(He|0,T|0,me|0,ke|0)|0;me=T;He=Es(Fe|0,0,-997805,-1)|0;Ge=T;Ze=Es(Fe|0,0,136657,0)|0;Je=ks(Ze|0,T|0,Je&2097151|0,0)|0;ue=ks(Je|0,T|0,Xe|0,ue|0)|0;X=ks(ue|0,T|0,be|0,X|0)|0;Le=ks(X|0,T|0,se|0,Le|0)|0;l=ks(Le|0,T|0,n|0,l|0)|0;n=T;Fe=Es(Fe|0,0,-683901,-1)|0;Le=T;se=ks(Ie|0,M|0,1048576,0)|0;X=T;be=Cs(se|0,X|0,21)|0;ue=T;Ve=ks(Ye|0,We|0,Qe|0,Ve|0)|0;ue=ks(Ve|0,T|0,be|0,ue|0)|0;I=ks(ue|0,T|0,i|0,I|0)|0;i=T;X=Ss(Ie|0,M|0,se&-2097152|0,X&2047|0)|0;se=T;M=ks(ke|0,me|0,1048576,0)|0;Ie=T;ue=Cs(M|0,Ie|0,21)|0;be=T;Ke=ks(He|0,Ge|0,Ke&2097151|0,0)|0;qe=ks(Ke|0,T|0,ze|0,qe|0)|0;le=ks(qe|0,T|0,pe|0,le|0)|0;Ee=ks(le|0,T|0,Re|0,Ee|0)|0;be=ks(Ee|0,T|0,ue|0,be|0)|0;ue=T;Ee=ks(l|0,n|0,1048576,0)|0;Re=T;le=Rs(Ee|0,Re|0,21)|0;pe=T;Ue=ks(Fe|0,Le|0,Ue&2097151|0,0)|0;Ne=ks(Ue|0,T|0,je|0,Ne|0)|0;De=ks(Ne|0,T|0,Be|0,De|0)|0;Pe=ks(De|0,T|0,Me|0,Pe|0)|0;U=ks(Pe|0,T|0,L|0,U|0)|0;he=ks(U|0,T|0,W|0,he|0)|0;pe=ks(he|0,T|0,le|0,pe|0)|0;le=T;he=ks(ae|0,ge|0,1048576,0)|0;W=T;U=Rs(he|0,W|0,21)|0;L=T;ne=ks(Oe|0,Ce|0,ne&2097151|0,0)|0;m=ks(ne|0,T|0,u|0,m|0)|0;K=ks(m|0,T|0,Y|0,K|0)|0;O=ks(K|0,T|0,_|0,O|0)|0;L=ks(O|0,T|0,U|0,L|0)|0;U=T;W=Ss(ae|0,ge|0,he&-2097152|0,W|0)|0;he=T;ge=ks(Te|0,we|0,1048576,0)|0;ae=T;O=Rs(ge|0,ae|0,21)|0;_=T;ee=ks(S|0,G|0,g|0,ee|0)|0;Se=ks(ee|0,T|0,d|0,Se|0)|0;_=ks(Se|0,T|0,O|0,_|0)|0;O=T;ae=Ss(Te|0,we|0,ge&-2097152|0,ae|0)|0;ge=T;we=ks(j|0,y|0,1048576,0)|0;Te=T;Se=Rs(we|0,Te|0,21)|0;oe=ks(Se|0,T|0,oe&2097151|0,0)|0;Se=T;Te=Ss(j|0,y|0,we&-2097152|0,Te|0)|0;we=T;y=ks(I|0,i|0,1048576,0)|0;j=T;d=Cs(y|0,j|0,21)|0;ee=T;j=Ss(I|0,i|0,y&-2097152|0,j|0)|0;y=T;i=ks(be|0,ue|0,1048576,0)|0;I=T;g=Rs(i|0,I|0,21)|0;G=T;I=Ss(be|0,ue|0,i&-2097152|0,I|0)|0;i=T;ue=ks(pe|0,le|0,1048576,0)|0;be=T;S=Rs(ue|0,be|0,21)|0;he=ks(S|0,T|0,W|0,he|0)|0;W=T;be=Ss(pe|0,le|0,ue&-2097152|0,be|0)|0;ue=T;le=ks(L|0,U|0,1048576,0)|0;pe=T;S=Rs(le|0,pe|0,21)|0;ge=ks(S|0,T|0,ae|0,ge|0)|0;ae=T;pe=Ss(L|0,U|0,le&-2097152|0,pe|0)|0;le=T;U=ks(_|0,O|0,1048576,0)|0;L=T;S=Rs(U|0,L|0,21)|0;we=ks(S|0,T|0,Te|0,we|0)|0;Te=T;L=Ss(_|0,O|0,U&-2097152|0,L|0)|0;U=T;O=Es(oe|0,Se|0,666643,0)|0;ye=ks(O|0,T|0,ye&2097151|0,0)|0;O=T;_=Es(oe|0,Se|0,470296,0)|0;_=ks(X|0,se|0,_|0,T|0)|0;se=T;X=Es(oe|0,Se|0,654183,0)|0;X=ks(j|0,y|0,X|0,T|0)|0;y=T;j=Es(oe|0,Se|0,-997805,-1)|0;S=T;K=Es(oe|0,Se|0,136657,0)|0;K=ks(I|0,i|0,K|0,T|0)|0;i=T;Se=Es(oe|0,Se|0,-683901,-1)|0;oe=T;G=ks(l|0,n|0,g|0,G|0)|0;Re=Ss(G|0,T|0,Ee&-2097152|0,Re|0)|0;oe=ks(Re|0,T|0,Se|0,oe|0)|0;Se=T;Re=Es(we|0,Te|0,666643,0)|0;z=ks(Re|0,T|0,z&2097151|0,0)|0;Re=T;Ee=Es(we|0,Te|0,470296,0)|0;Ee=ks(ye|0,O|0,Ee|0,T|0)|0;O=T;ye=Es(we|0,Te|0,654183,0)|0;ye=ks(_|0,se|0,ye|0,T|0)|0;se=T;_=Es(we|0,Te|0,-997805,-1)|0;_=ks(X|0,y|0,_|0,T|0)|0;y=T;X=Es(we|0,Te|0,136657,0)|0;G=T;Te=Es(we|0,Te|0,-683901,-1)|0;Te=ks(K|0,i|0,Te|0,T|0)|0;i=T;K=Es(L|0,U|0,666643,0)|0;w=ks(K|0,T|0,w&2097151|0,0)|0;K=T;we=Es(L|0,U|0,470296,0)|0;we=ks(z|0,Re|0,we|0,T|0)|0;Re=T;z=Es(L|0,U|0,654183,0)|0;z=ks(Ee|0,O|0,z|0,T|0)|0;O=T;Ee=Es(L|0,U|0,-997805,-1)|0;Ee=ks(ye|0,se|0,Ee|0,T|0)|0;se=T;ye=Es(L|0,U|0,136657,0)|0;ye=ks(_|0,y|0,ye|0,T|0)|0;y=T;U=Es(L|0,U|0,-683901,-1)|0;L=T;ee=ks(ke|0,me|0,d|0,ee|0)|0;Ie=Ss(ee|0,T|0,M&-2097152|0,Ie|0)|0;S=ks(Ie|0,T|0,j|0,S|0)|0;G=ks(S|0,T|0,X|0,G|0)|0;L=ks(G|0,T|0,U|0,L|0)|0;U=T;G=Es(ge|0,ae|0,666643,0)|0;X=T;S=Es(ge|0,ae|0,470296,0)|0;j=T;Ie=Es(ge|0,ae|0,654183,0)|0;M=T;ee=Es(ge|0,ae|0,-997805,-1)|0;d=T;me=Es(ge|0,ae|0,136657,0)|0;me=ks(Ee|0,se|0,me|0,T|0)|0;se=T;ae=Es(ge|0,ae|0,-683901,-1)|0;ae=ks(ye|0,y|0,ae|0,T|0)|0;y=T;ye=Es(pe|0,le|0,666643,0)|0;ge=T;Ee=Es(pe|0,le|0,470296,0)|0;ke=T;_=Es(pe|0,le|0,654183,0)|0;g=T;n=Es(pe|0,le|0,-997805,-1)|0;l=T;I=Es(pe|0,le|0,136657,0)|0;Y=T;le=Es(pe|0,le|0,-683901,-1)|0;le=ks(me|0,se|0,le|0,T|0)|0;se=T;me=Es(he|0,W|0,666643,0)|0;ve=ks(me|0,T|0,P|Ae|_e&2031616|0,ve|0)|0;_e=T;Ae=Es(he|0,W|0,470296,0)|0;P=T;me=Es(he|0,W|0,654183,0)|0;xe=ks(me|0,T|0,xe&2097151|0,0)|0;X=ks(xe|0,T|0,G|0,X|0)|0;ke=ks(X|0,T|0,Ee|0,ke|0)|0;Ee=T;X=Es(he|0,W|0,-997805,-1)|0;G=T;xe=Es(he|0,W|0,136657,0)|0;xe=ks(we|0,Re|0,xe|0,T|0)|0;M=ks(xe|0,T|0,Ie|0,M|0)|0;l=ks(M|0,T|0,n|0,l|0)|0;n=T;W=Es(he|0,W|0,-683901,-1)|0;he=T;M=ks(ve|0,_e|0,1048576,0)|0;Ie=T;xe=Rs(M|0,Ie|0,21)|0;Re=T;te=ks(Ae|0,P|0,te&2097151|0,0)|0;ge=ks(te|0,T|0,ye|0,ge|0)|0;Re=ks(ge|0,T|0,xe|0,Re|0)|0;xe=T;Ie=Ss(ve|0,_e|0,M&-2097152|0,Ie|0)|0;M=T;_e=ks(ke|0,Ee|0,1048576,0)|0;ve=T;ge=Rs(_e|0,ve|0,21)|0;ye=T;G=ks(w|0,K|0,X|0,G|0)|0;j=ks(G|0,T|0,S|0,j|0)|0;g=ks(j|0,T|0,_|0,g|0)|0;ye=ks(g|0,T|0,ge|0,ye|0)|0;ge=T;g=ks(l|0,n|0,1048576,0)|0;_=T;j=Rs(g|0,_|0,21)|0;S=T;he=ks(z|0,O|0,W|0,he|0)|0;d=ks(he|0,T|0,ee|0,d|0)|0;Y=ks(d|0,T|0,I|0,Y|0)|0;S=ks(Y|0,T|0,j|0,S|0)|0;j=T;Y=ks(le|0,se|0,1048576,0)|0;I=T;d=Rs(Y|0,I|0,21)|0;d=ks(ae|0,y|0,d|0,T|0)|0;y=T;I=Ss(le|0,se|0,Y&-2097152|0,I|0)|0;Y=T;se=ks(L|0,U|0,1048576,0)|0;le=T;ae=Rs(se|0,le|0,21)|0;ae=ks(Te|0,i|0,ae|0,T|0)|0;i=T;le=Ss(L|0,U|0,se&-2097152|0,le|0)|0;se=T;U=ks(oe|0,Se|0,1048576,0)|0;L=T;Te=Rs(U|0,L|0,21)|0;Te=ks(be|0,ue|0,Te|0,T|0)|0;ue=T;L=Ss(oe|0,Se|0,U&-2097152|0,L|0)|0;U=T;Se=ks(Re|0,xe|0,1048576,0)|0;oe=T;be=Rs(Se|0,oe|0,21)|0;ee=T;he=ks(ye|0,ge|0,1048576,0)|0;W=T;O=Rs(he|0,W|0,21)|0;z=T;G=ks(S|0,j|0,1048576,0)|0;X=T;K=Rs(G|0,X|0,21)|0;K=ks(I|0,Y|0,K|0,T|0)|0;Y=T;I=ks(d|0,y|0,1048576,0)|0;w=T;te=Rs(I|0,w|0,21)|0;te=ks(le|0,se|0,te|0,T|0)|0;se=T;w=Ss(d|0,y|0,I&-2097152|0,w|0)|0;I=T;y=ks(ae|0,i|0,1048576,0)|0;d=T;le=Rs(y|0,d|0,21)|0;le=ks(L|0,U|0,le|0,T|0)|0;U=T;d=Ss(ae|0,i|0,y&-2097152|0,d|0)|0;y=T;i=ks(Te|0,ue|0,1048576,0)|0;ae=T;L=Rs(i|0,ae|0,21)|0;P=T;ae=Ss(Te|0,ue|0,i&-2097152|0,ae|0)|0;i=T;ue=Es(L|0,P|0,666643,0)|0;ue=ks(Ie|0,M|0,ue|0,T|0)|0;M=T;Ie=Es(L|0,P|0,470296,0)|0;Te=T;Ae=Es(L|0,P|0,654183,0)|0;we=T;me=Es(L|0,P|0,-997805,-1)|0;pe=T;m=Es(L|0,P|0,136657,0)|0;u=T;P=Es(L|0,P|0,-683901,-1)|0;L=T;M=Rs(ue|0,M|0,21)|0;ne=T;Te=ks(Re|0,xe|0,Ie|0,Te|0)|0;oe=Ss(Te|0,T|0,Se&-2097152|0,oe|0)|0;ne=ks(oe|0,T|0,M|0,ne|0)|0;M=Rs(ne|0,T|0,21)|0;oe=T;we=ks(ke|0,Ee|0,Ae|0,we|0)|0;ve=Ss(we|0,T|0,_e&-2097152|0,ve|0)|0;ee=ks(ve|0,T|0,be|0,ee|0)|0;oe=ks(ee|0,T|0,M|0,oe|0)|0;M=Rs(oe|0,T|0,21)|0;ee=T;pe=ks(ye|0,ge|0,me|0,pe|0)|0;W=Ss(pe|0,T|0,he&-2097152|0,W|0)|0;ee=ks(W|0,T|0,M|0,ee|0)|0;M=Rs(ee|0,T|0,21)|0;W=T;u=ks(l|0,n|0,m|0,u|0)|0;_=Ss(u|0,T|0,g&-2097152|0,_|0)|0;z=ks(_|0,T|0,O|0,z|0)|0;W=ks(z|0,T|0,M|0,W|0)|0;M=Rs(W|0,T|0,21)|0;z=T;L=ks(S|0,j|0,P|0,L|0)|0;X=Ss(L|0,T|0,G&-2097152|0,X|0)|0;z=ks(X|0,T|0,M|0,z|0)|0;M=Rs(z|0,T|0,21)|0;M=ks(K|0,Y|0,M|0,T|0)|0;Y=Rs(M|0,T|0,21)|0;I=ks(Y|0,T|0,w|0,I|0)|0;w=Rs(I|0,T|0,21)|0;w=ks(te|0,se|0,w|0,T|0)|0;se=Rs(w|0,T|0,21)|0;y=ks(se|0,T|0,d|0,y|0)|0;d=Rs(y|0,T|0,21)|0;d=ks(le|0,U|0,d|0,T|0)|0;U=Rs(d|0,T|0,21)|0;i=ks(U|0,T|0,ae|0,i|0)|0;ae=Rs(i|0,T|0,21)|0;U=T;le=Es(ae|0,U|0,666643,0)|0;ue=ks(le|0,T|0,ue&2097151|0,0)|0;le=T;se=Es(ae|0,U|0,470296,0)|0;ne=ks(se|0,T|0,ne&2097151|0,0)|0;se=T;te=Es(ae|0,U|0,654183,0)|0;oe=ks(te|0,T|0,oe&2097151|0,0)|0;te=T;Y=Es(ae|0,U|0,-997805,-1)|0;ee=ks(Y|0,T|0,ee&2097151|0,0)|0;Y=T;K=Es(ae|0,U|0,136657,0)|0;W=ks(K|0,T|0,W&2097151|0,0)|0;K=T;U=Es(ae|0,U|0,-683901,-1)|0;z=ks(U|0,T|0,z&2097151|0,0)|0;U=T;ae=Rs(ue|0,le|0,21)|0;ae=ks(ne|0,se|0,ae|0,T|0)|0;se=T;ne=Rs(ae|0,se|0,21)|0;ne=ks(oe|0,te|0,ne|0,T|0)|0;te=T;oe=ae&2097151;X=Rs(ne|0,te|0,21)|0;X=ks(ee|0,Y|0,X|0,T|0)|0;Y=T;ee=ne&2097151;G=Rs(X|0,Y|0,21)|0;G=ks(W|0,K|0,G|0,T|0)|0;K=T;W=X&2097151;L=Rs(G|0,K|0,21)|0;L=ks(z|0,U|0,L|0,T|0)|0;U=T;z=G&2097151;P=Rs(L|0,U|0,21)|0;M=ks(P|0,T|0,M&2097151|0,0)|0;P=T;j=L&2097151;S=Rs(M|0,P|0,21)|0;I=ks(S|0,T|0,I&2097151|0,0)|0;S=T;O=M&2097151;_=Rs(I|0,S|0,21)|0;w=ks(_|0,T|0,w&2097151|0,0)|0;_=T;g=Rs(w|0,_|0,21)|0;y=ks(g|0,T|0,y&2097151|0,0)|0;g=T;u=Rs(y|0,g|0,21)|0;d=ks(u|0,T|0,d&2097151|0,0)|0;u=T;m=y&2097151;n=Rs(d|0,u|0,21)|0;i=ks(n|0,T|0,i&2097151|0,0)|0;n=T;l=d&2097151;r[e>>0]=ue;e=Cs(ue|0,le|0,8)|0;r[de>>0]=e;e=Cs(ue|0,le|0,16)|0;le=Os(oe|0,0,5)|0;r[fe>>0]=le|e&31;e=Cs(ae|0,se|0,3)|0;r[ce>>0]=e;e=Cs(ae|0,se|0,11)|0;r[ie>>0]=e;e=Cs(oe|0,0,19)|0;oe=T;ie=Os(ee|0,0,2)|0;r[re>>0]=ie|e;e=Cs(ne|0,te|0,6)|0;r[$>>0]=e;e=Cs(ee|0,0,14)|0;ee=T;$=Os(W|0,0,7)|0;r[Z>>0]=$|e;e=Cs(X|0,Y|0,1)|0;r[J>>0]=e;e=Cs(X|0,Y|0,9)|0;r[Q>>0]=e;e=Cs(W|0,0,17)|0;W=T;Q=Os(z|0,0,4)|0;r[V>>0]=Q|e;e=Cs(G|0,K|0,4)|0;r[H>>0]=e;e=Cs(G|0,K|0,12)|0;r[q>>0]=e;e=Cs(z|0,0,20)|0;z=T;q=Os(j|0,0,1)|0;r[F>>0]=q|e;e=Cs(L|0,U|0,7)|0;r[N>>0]=e;e=Cs(j|0,0,15)|0;j=T;N=Os(O|0,0,6)|0;r[B>>0]=N|e;e=Cs(M|0,P|0,2)|0;r[D>>0]=e;e=Cs(M|0,P|0,10)|0;r[C>>0]=e;e=Cs(O|0,0,18)|0;O=T;C=Os(I|0,S|0,3)|0;r[R>>0]=C|e;e=Cs(I|0,S|0,5)|0;r[x>>0]=e;e=Cs(I|0,S|0,13)|0;r[k>>0]=e;r[E>>0]=w;e=Cs(w|0,_|0,8)|0;r[A>>0]=e;e=Cs(w|0,_|0,16)|0;_=Os(m|0,0,5)|0;r[v>>0]=_|e&31;e=Cs(y|0,g|0,3)|0;r[b>>0]=e;e=Cs(y|0,g|0,11)|0;r[p>>0]=e;e=Cs(m|0,0,19)|0;m=T;p=Os(l|0,0,2)|0;r[h>>0]=p|e;e=Cs(d|0,u|0,6)|0;r[f>>0]=e;e=Cs(l|0,0,14)|0;l=T;f=Os(i|0,n|0,7)|0;r[c>>0]=f|e;e=Cs(i|0,n|0,1)|0;r[a>>0]=e;e=Cs(i|0,n|0,9)|0;r[o>>0]=e;e=Rs(i|0,n|0,17)|0;r[t>>0]=e;return}function ti(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var o=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ct=0,ft=0,lt=0,ut=0,dt=0,ht=0,pt=0,mt=0,gt=0,yt=0,bt=0,vt=0,_t=0,wt=0,At=0,Et=0,kt=0,St=0,Tt=0,It=0,xt=0,Rt=0,Ct=0,Ot=0,Pt=0,Mt=0,Dt=0,Bt=0,Nt=0,jt=0,Ut=0,Lt=0,Ft=0,qt=0,zt=0,Kt=0,Gt=0,Ht=0,Vt=0,Qt=0,Wt=0,Yt=0,Xt=0,Jt=0,Zt=0,$t=0,en=0,tn=0,nn=0,rn=0,on=0,sn=0,an=0,cn=0,fn=0,ln=0,un=0,dn=0,hn=0,pn=0,mn=0,gn=0,yn=0,bn=0,vn=0,_n=0,wn=0,An=0;ot=r[t+2>>0]|0;pe=s[t>>0]|0;pt=Os(s[t+1>>0]|0|0,0,8)|0;Ue=T;ot=ot&255;Le=Os(ot|0,0,16)|0;Le=pt|pe|Le&2031616;pe=Os(s[t+3>>0]|0|0,0,8)|0;pt=T;$e=Os(s[t+4>>0]|0|0,0,16)|0;pt=pt|T;ht=s[t+5>>0]|0;L=Os(ht|0,0,24)|0;pt=Cs(pe|ot|$e|L|0,pt|T|0,5)|0;pt=pt&2097151;L=r[t+7>>0]|0;$e=Os(s[t+6>>0]|0|0,0,8)|0;ot=T;L=L&255;pe=Os(L|0,0,16)|0;ot=Cs($e|ht|pe|0,ot|T|0,2)|0;ot=ot&2097151;pe=Os(s[t+8>>0]|0|0,0,8)|0;ht=T;$e=Os(s[t+9>>0]|0|0,0,16)|0;ht=ht|T;G=s[t+10>>0]|0;B=Os(G|0,0,24)|0;ht=Cs(pe|L|$e|B|0,ht|T|0,7)|0;ht=ht&2097151;B=Os(s[t+11>>0]|0|0,0,8)|0;$e=T;L=Os(s[t+12>>0]|0|0,0,16)|0;$e=$e|T;pe=s[t+13>>0]|0;m=Os(pe|0,0,24)|0;$e=Cs(B|G|L|m|0,$e|T|0,4)|0;$e=$e&2097151;m=r[t+15>>0]|0;L=Os(s[t+14>>0]|0|0,0,8)|0;G=T;m=m&255;B=Os(m|0,0,16)|0;G=Cs(L|pe|B|0,G|T|0,1)|0;G=G&2097151;B=Os(s[t+16>>0]|0|0,0,8)|0;pe=T;L=Os(s[t+17>>0]|0|0,0,16)|0;pe=pe|T;N=s[t+18>>0]|0;u=Os(N|0,0,24)|0;pe=Cs(B|m|L|u|0,pe|T|0,6)|0;pe=pe&2097151;u=r[t+20>>0]|0;L=Os(s[t+19>>0]|0|0,0,8)|0;m=T;u=Os(u&255|0,0,16)|0;m=Cs(L|N|u|0,m|T|0,3)|0;u=T;N=r[t+23>>0]|0;L=s[t+21>>0]|0;B=Os(s[t+22>>0]|0|0,0,8)|0;K=T;N=N&255;C=Os(N|0,0,16)|0;C=B|L|C&2031616;L=Os(s[t+24>>0]|0|0,0,8)|0;B=T;Je=Os(s[t+25>>0]|0|0,0,16)|0;B=B|T;ge=s[t+26>>0]|0;E=Os(ge|0,0,24)|0;B=Cs(L|N|Je|E|0,B|T|0,5)|0;B=B&2097151;E=r[t+28>>0]|0;Je=Os(s[t+27>>0]|0|0,0,8)|0;N=T;E=E&255;L=Os(E|0,0,16)|0;N=Cs(Je|ge|L|0,N|T|0,2)|0;N=N&2097151;L=Os(s[t+29>>0]|0|0,0,8)|0;ge=T;Je=Os(s[t+30>>0]|0|0,0,16)|0;ge=ge|T;ye=Os(s[t+31>>0]|0|0,0,24)|0;ge=Cs(L|E|Je|ye|0,ge|T|0,7)|0;ye=T;Je=r[n+2>>0]|0;E=s[n>>0]|0;L=Os(s[n+1>>0]|0|0,0,8)|0;Et=T;Je=Je&255;At=Os(Je|0,0,16)|0;At=L|E|At&2031616;E=Os(s[n+3>>0]|0|0,0,8)|0;L=T;l=Os(s[n+4>>0]|0|0,0,16)|0;L=L|T;b=s[n+5>>0]|0;bn=Os(b|0,0,24)|0;L=Cs(E|Je|l|bn|0,L|T|0,5)|0;L=L&2097151;bn=r[n+7>>0]|0;l=Os(s[n+6>>0]|0|0,0,8)|0;Je=T;bn=bn&255;E=Os(bn|0,0,16)|0;Je=Cs(l|b|E|0,Je|T|0,2)|0;Je=Je&2097151;E=Os(s[n+8>>0]|0|0,0,8)|0;b=T;l=Os(s[n+9>>0]|0|0,0,16)|0;b=b|T;d=s[n+10>>0]|0;A=Os(d|0,0,24)|0;b=Cs(E|bn|l|A|0,b|T|0,7)|0;b=b&2097151;A=Os(s[n+11>>0]|0|0,0,8)|0;l=T;bn=Os(s[n+12>>0]|0|0,0,16)|0;l=l|T;E=s[n+13>>0]|0;An=Os(E|0,0,24)|0;l=Cs(A|d|bn|An|0,l|T|0,4)|0;l=l&2097151;An=r[n+15>>0]|0;bn=Os(s[n+14>>0]|0|0,0,8)|0;d=T;An=An&255;A=Os(An|0,0,16)|0;d=Cs(bn|E|A|0,d|T|0,1)|0;d=d&2097151;A=Os(s[n+16>>0]|0|0,0,8)|0;E=T;bn=Os(s[n+17>>0]|0|0,0,16)|0;E=E|T;_t=s[n+18>>0]|0;Z=Os(_t|0,0,24)|0;E=Cs(A|An|bn|Z|0,E|T|0,6)|0;E=E&2097151;Z=r[n+20>>0]|0;bn=Os(s[n+19>>0]|0|0,0,8)|0;An=T;Z=Os(Z&255|0,0,16)|0;An=Cs(bn|_t|Z|0,An|T|0,3)|0;Z=T;_t=r[n+23>>0]|0;bn=s[n+21>>0]|0;A=Os(s[n+22>>0]|0|0,0,8)|0;ke=T;_t=_t&255;Se=Os(_t|0,0,16)|0;Se=A|bn|Se&2031616;bn=Os(s[n+24>>0]|0|0,0,8)|0;A=T;Me=Os(s[n+25>>0]|0|0,0,16)|0;A=A|T;Q=s[n+26>>0]|0;vn=Os(Q|0,0,24)|0;A=Cs(bn|_t|Me|vn|0,A|T|0,5)|0;A=A&2097151;vn=r[n+28>>0]|0;Me=Os(s[n+27>>0]|0|0,0,8)|0;_t=T;vn=vn&255;bn=Os(vn|0,0,16)|0;_t=Cs(Me|Q|bn|0,_t|T|0,2)|0;_t=_t&2097151;bn=Os(s[n+29>>0]|0|0,0,8)|0;Q=T;Me=Os(s[n+30>>0]|0|0,0,16)|0;Q=Q|T;V=Os(s[n+31>>0]|0|0,0,24)|0;Q=Cs(bn|vn|Me|V|0,Q|T|0,7)|0;V=T;Me=r[i+2>>0]|0;vn=s[i>>0]|0;bn=Os(s[i+1>>0]|0|0,0,8)|0;Re=T;Me=Me&255;_n=Os(Me|0,0,16)|0;Ge=Os(s[i+3>>0]|0|0,0,8)|0;ve=T;Ie=Os(s[i+4>>0]|0|0,0,16)|0;ve=ve|T;Ee=s[i+5>>0]|0;g=Os(Ee|0,0,24)|0;ve=Cs(Ge|Me|Ie|g|0,ve|T|0,5)|0;g=r[i+7>>0]|0;Ie=Os(s[i+6>>0]|0|0,0,8)|0;Me=T;g=g&255;Ge=Os(g|0,0,16)|0;Me=Cs(Ie|Ee|Ge|0,Me|T|0,2)|0;Ge=Os(s[i+8>>0]|0|0,0,8)|0;Ee=T;Ie=Os(s[i+9>>0]|0|0,0,16)|0;Ee=Ee|T;De=s[i+10>>0]|0;_e=Os(De|0,0,24)|0;Ee=Cs(Ge|g|Ie|_e|0,Ee|T|0,7)|0;_e=Os(s[i+11>>0]|0|0,0,8)|0;Ie=T;g=Os(s[i+12>>0]|0|0,0,16)|0;Ie=Ie|T;Ge=s[i+13>>0]|0;ue=Os(Ge|0,0,24)|0;Ie=Cs(_e|De|g|ue|0,Ie|T|0,4)|0;ue=r[i+15>>0]|0;g=Os(s[i+14>>0]|0|0,0,8)|0;De=T;ue=ue&255;_e=Os(ue|0,0,16)|0;De=Cs(g|Ge|_e|0,De|T|0,1)|0;_e=Os(s[i+16>>0]|0|0,0,8)|0;Ge=T;g=Os(s[i+17>>0]|0|0,0,16)|0;Ge=Ge|T;te=s[i+18>>0]|0;le=Os(te|0,0,24)|0;Ge=Cs(_e|ue|g|le|0,Ge|T|0,6)|0;le=r[i+20>>0]|0;g=Os(s[i+19>>0]|0|0,0,8)|0;ue=T;le=Os(le&255|0,0,16)|0;ue=Cs(g|te|le|0,ue|T|0,3)|0;le=T;te=r[i+23>>0]|0;g=s[i+21>>0]|0;_e=Os(s[i+22>>0]|0|0,0,8)|0;X=T;te=te&255;J=Os(te|0,0,16)|0;R=Os(s[i+24>>0]|0|0,0,8)|0;we=T;xe=Os(s[i+25>>0]|0|0,0,16)|0;we=we|T;rt=s[i+26>>0]|0;j=Os(rt|0,0,24)|0;we=Cs(R|te|xe|j|0,we|T|0,5)|0;j=r[i+28>>0]|0;xe=Os(s[i+27>>0]|0|0,0,8)|0;te=T;j=j&255;R=Os(j|0,0,16)|0;te=Cs(xe|rt|R|0,te|T|0,2)|0;R=Os(s[i+29>>0]|0|0,0,8)|0;rt=T;xe=Os(s[i+30>>0]|0|0,0,16)|0;rt=rt|T;ft=Os(s[i+31>>0]|0|0,0,24)|0;rt=Cs(R|j|xe|ft|0,rt|T|0,7)|0;ft=T;xe=Es(At|0,Et|0,Le|0,Ue|0)|0;xe=ks(bn|vn|_n&2031616|0,Re|0,xe|0,T|0)|0;Re=T;_n=Es(L|0,0,Le|0,Ue|0)|0;vn=T;bn=Es(At|0,Et|0,pt|0,0)|0;j=T;R=Es(Je|0,0,Le|0,Ue|0)|0;Pe=T;re=Es(L|0,0,pt|0,0)|0;hn=T;Ae=Es(At|0,Et|0,ot|0,0)|0;Ae=ks(re|0,hn|0,Ae|0,T|0)|0;Pe=ks(Ae|0,T|0,R|0,Pe|0)|0;Me=ks(Pe|0,T|0,Me&2097151|0,0)|0;Pe=T;R=Es(b|0,0,Le|0,Ue|0)|0;Ae=T;hn=Es(Je|0,0,pt|0,0)|0;re=T;yn=Es(L|0,0,ot|0,0)|0;gn=T;mn=Es(At|0,Et|0,ht|0,0)|0;pn=T;H=Es(l|0,0,Le|0,Ue|0)|0;Te=T;rn=Es(b|0,0,pt|0,0)|0;Be=T;sn=Es(Je|0,0,ot|0,0)|0;x=T;an=Es(L|0,0,ht|0,0)|0;cn=T;on=Es(At|0,Et|0,$e|0,0)|0;on=ks(an|0,cn|0,on|0,T|0)|0;x=ks(on|0,T|0,sn|0,x|0)|0;Be=ks(x|0,T|0,rn|0,Be|0)|0;Te=ks(Be|0,T|0,H|0,Te|0)|0;Ie=ks(Te|0,T|0,Ie&2097151|0,0)|0;Te=T;H=Es(d|0,0,Le|0,Ue|0)|0;Be=T;rn=Es(l|0,0,pt|0,0)|0;x=T;sn=Es(b|0,0,ot|0,0)|0;on=T;cn=Es(Je|0,0,ht|0,0)|0;an=T;dn=Es(L|0,0,$e|0,0)|0;un=T;ln=Es(At|0,Et|0,G|0,0)|0;fn=T;I=Es(E|0,0,Le|0,Ue|0)|0;He=T;Gt=Es(d|0,0,pt|0,0)|0;o=T;Vt=Es(l|0,0,ot|0,0)|0;Kt=T;Wt=Es(b|0,0,ht|0,0)|0;Ht=T;Xt=Es(Je|0,0,$e|0,0)|0;Qt=T;Jt=Es(L|0,0,G|0,0)|0;Zt=T;Yt=Es(At|0,Et|0,pe|0,0)|0;Yt=ks(Jt|0,Zt|0,Yt|0,T|0)|0;Qt=ks(Yt|0,T|0,Xt|0,Qt|0)|0;Ht=ks(Qt|0,T|0,Wt|0,Ht|0)|0;Kt=ks(Ht|0,T|0,Vt|0,Kt|0)|0;o=ks(Kt|0,T|0,Gt|0,o|0)|0;He=ks(o|0,T|0,I|0,He|0)|0;Ge=ks(He|0,T|0,Ge&2097151|0,0)|0;He=T;I=Es(An|0,Z|0,Le|0,Ue|0)|0;o=T;Gt=Es(E|0,0,pt|0,0)|0;Kt=T;Vt=Es(d|0,0,ot|0,0)|0;Ht=T;Wt=Es(l|0,0,ht|0,0)|0;Qt=T;Xt=Es(b|0,0,$e|0,0)|0;Yt=T;Zt=Es(Je|0,0,G|0,0)|0;Jt=T;nn=Es(L|0,0,pe|0,0)|0;tn=T;en=Es(At|0,Et|0,m|0,u|0)|0;$t=T;ee=Es(Se|0,ke|0,Le|0,Ue|0)|0;Tt=T;It=Es(An|0,Z|0,pt|0,0)|0;xt=T;Rt=Es(E|0,0,ot|0,0)|0;Ct=T;Ot=Es(d|0,0,ht|0,0)|0;Pt=T;Mt=Es(l|0,0,$e|0,0)|0;Dt=T;Bt=Es(b|0,0,G|0,0)|0;Nt=T;jt=Es(Je|0,0,pe|0,0)|0;Ut=T;Ft=Es(L|0,0,m|0,u|0)|0;qt=T;zt=Es(At|0,Et|0,C|0,K|0)|0;zt=ks(Ft|0,qt|0,zt|0,T|0)|0;Ut=ks(zt|0,T|0,jt|0,Ut|0)|0;Nt=ks(Ut|0,T|0,Bt|0,Nt|0)|0;Dt=ks(Nt|0,T|0,Mt|0,Dt|0)|0;Pt=ks(Dt|0,T|0,Ot|0,Pt|0)|0;Ct=ks(Pt|0,T|0,Rt|0,Ct|0)|0;xt=ks(Ct|0,T|0,It|0,xt|0)|0;Tt=ks(xt|0,T|0,ee|0,Tt|0)|0;X=ks(Tt|0,T|0,_e|g|J&2031616|0,X|0)|0;J=T;g=Es(A|0,0,Le|0,Ue|0)|0;_e=T;Tt=Es(Se|0,ke|0,pt|0,0)|0;ee=T;xt=Es(An|0,Z|0,ot|0,0)|0;It=T;Ct=Es(E|0,0,ht|0,0)|0;Rt=T;Pt=Es(d|0,0,$e|0,0)|0;Ot=T;Dt=Es(l|0,0,G|0,0)|0;Mt=T;Nt=Es(b|0,0,pe|0,0)|0;Bt=T;Ut=Es(Je|0,0,m|0,u|0)|0;jt=T;zt=Es(L|0,0,C|0,K|0)|0;qt=T;Ft=Es(At|0,Et|0,B|0,0)|0;Lt=T;et=Es(_t|0,0,Le|0,Ue|0)|0;ne=T;je=Es(A|0,0,pt|0,0)|0;tt=T;gt=Es(Se|0,ke|0,ot|0,0)|0;Ne=T;f=Es(An|0,Z|0,ht|0,0)|0;yt=T;ze=Es(E|0,0,$e|0,0)|0;_=T;st=Es(d|0,0,G|0,0)|0;Ke=T;i=Es(l|0,0,pe|0,0)|0;at=T;We=Es(b|0,0,m|0,u|0)|0;t=T;he=Es(Je|0,0,C|0,K|0)|0;Ye=T;kt=Es(L|0,0,B|0,0)|0;St=T;be=Es(At|0,Et|0,N|0,0)|0;be=ks(kt|0,St|0,be|0,T|0)|0;Ye=ks(be|0,T|0,he|0,Ye|0)|0;t=ks(Ye|0,T|0,We|0,t|0)|0;at=ks(t|0,T|0,i|0,at|0)|0;Ke=ks(at|0,T|0,st|0,Ke|0)|0;_=ks(Ke|0,T|0,ze|0,_|0)|0;yt=ks(_|0,T|0,f|0,yt|0)|0;Ne=ks(yt|0,T|0,gt|0,Ne|0)|0;tt=ks(Ne|0,T|0,je|0,tt|0)|0;ne=ks(tt|0,T|0,et|0,ne|0)|0;te=ks(ne|0,T|0,te&2097151|0,0)|0;ne=T;Ue=Es(Q|0,V|0,Le|0,Ue|0)|0;Le=T;et=Es(_t|0,0,pt|0,0)|0;tt=T;je=Es(A|0,0,ot|0,0)|0;Ne=T;gt=Es(Se|0,ke|0,ht|0,0)|0;yt=T;f=Es(An|0,Z|0,$e|0,0)|0;_=T;ze=Es(E|0,0,G|0,0)|0;Ke=T;st=Es(d|0,0,pe|0,0)|0;at=T;i=Es(l|0,0,m|0,u|0)|0;t=T;We=Es(b|0,0,C|0,K|0)|0;Ye=T;he=Es(Je|0,0,B|0,0)|0;be=T;St=Es(L|0,0,N|0,0)|0;kt=T;Et=Es(At|0,Et|0,ge|0,ye|0)|0;At=T;pt=Es(Q|0,V|0,pt|0,0)|0;mt=T;P=Es(_t|0,0,ot|0,0)|0;it=T;fe=Es(A|0,0,ht|0,0)|0;n=T;bt=Es(Se|0,ke|0,$e|0,0)|0;Fe=T;k=Es(An|0,Z|0,G|0,0)|0;vt=T;ie=Es(E|0,0,pe|0,0)|0;F=T;qe=Es(d|0,0,m|0,u|0)|0;oe=T;W=Es(l|0,0,C|0,K|0)|0;ce=T;U=Es(b|0,0,B|0,0)|0;Y=T;dt=Es(Je|0,0,N|0,0)|0;Xe=T;L=Es(L|0,0,ge|0,ye|0)|0;L=ks(dt|0,Xe|0,L|0,T|0)|0;Y=ks(L|0,T|0,U|0,Y|0)|0;ce=ks(Y|0,T|0,W|0,ce|0)|0;oe=ks(ce|0,T|0,qe|0,oe|0)|0;F=ks(oe|0,T|0,ie|0,F|0)|0;vt=ks(F|0,T|0,k|0,vt|0)|0;Fe=ks(vt|0,T|0,bt|0,Fe|0)|0;n=ks(Fe|0,T|0,fe|0,n|0)|0;it=ks(n|0,T|0,P|0,it|0)|0;mt=ks(it|0,T|0,pt|0,mt|0)|0;pt=T;ot=Es(Q|0,V|0,ot|0,0)|0;it=T;P=Es(_t|0,0,ht|0,0)|0;n=T;fe=Es(A|0,0,$e|0,0)|0;Fe=T;bt=Es(Se|0,ke|0,G|0,0)|0;vt=T;k=Es(An|0,Z|0,pe|0,0)|0;F=T;ie=Es(E|0,0,m|0,u|0)|0;oe=T;qe=Es(d|0,0,C|0,K|0)|0;ce=T;W=Es(l|0,0,B|0,0)|0;Y=T;U=Es(b|0,0,N|0,0)|0;L=T;Je=Es(Je|0,0,ge|0,ye|0)|0;Xe=T;ht=Es(Q|0,V|0,ht|0,0)|0;dt=T;lt=Es(_t|0,0,$e|0,0)|0;Ze=T;z=Es(A|0,0,G|0,0)|0;ut=T;$=Es(Se|0,ke|0,pe|0,0)|0;q=T;ae=Es(An|0,Z|0,m|0,u|0)|0;O=T;w=Es(E|0,0,C|0,K|0)|0;se=T;h=Es(d|0,0,B|0,0)|0;c=T;wt=Es(l|0,0,N|0,0)|0;a=T;b=Es(b|0,0,ge|0,ye|0)|0;b=ks(wt|0,a|0,b|0,T|0)|0;c=ks(b|0,T|0,h|0,c|0)|0;se=ks(c|0,T|0,w|0,se|0)|0;O=ks(se|0,T|0,ae|0,O|0)|0;q=ks(O|0,T|0,$|0,q|0)|0;ut=ks(q|0,T|0,z|0,ut|0)|0;Ze=ks(ut|0,T|0,lt|0,Ze|0)|0;dt=ks(Ze|0,T|0,ht|0,dt|0)|0;ht=T;$e=Es(Q|0,V|0,$e|0,0)|0;Ze=T;lt=Es(_t|0,0,G|0,0)|0;ut=T;z=Es(A|0,0,pe|0,0)|0;q=T;$=Es(Se|0,ke|0,m|0,u|0)|0;O=T;ae=Es(An|0,Z|0,C|0,K|0)|0;se=T;w=Es(E|0,0,B|0,0)|0;c=T;h=Es(d|0,0,N|0,0)|0;b=T;l=Es(l|0,0,ge|0,ye|0)|0;a=T;G=Es(Q|0,V|0,G|0,0)|0;wt=T;v=Es(_t|0,0,pe|0,0)|0;me=T;M=Es(A|0,0,m|0,u|0)|0;p=T;Qe=Es(Se|0,ke|0,C|0,K|0)|0;D=T;y=Es(An|0,Z|0,B|0,0)|0;Ve=T;Oe=Es(E|0,0,N|0,0)|0;S=T;d=Es(d|0,0,ge|0,ye|0)|0;d=ks(Oe|0,S|0,d|0,T|0)|0;Ve=ks(d|0,T|0,y|0,Ve|0)|0;D=ks(Ve|0,T|0,Qe|0,D|0)|0;p=ks(D|0,T|0,M|0,p|0)|0;me=ks(p|0,T|0,v|0,me|0)|0;wt=ks(me|0,T|0,G|0,wt|0)|0;G=T;pe=Es(Q|0,V|0,pe|0,0)|0;me=T;v=Es(_t|0,0,m|0,u|0)|0;p=T;M=Es(A|0,0,C|0,K|0)|0;D=T;Qe=Es(Se|0,ke|0,B|0,0)|0;Ve=T;y=Es(An|0,Z|0,N|0,0)|0;d=T;E=Es(E|0,0,ge|0,ye|0)|0;S=T;u=Es(Q|0,V|0,m|0,u|0)|0;m=T;Oe=Es(_t|0,0,C|0,K|0)|0;Ce=T;ct=Es(A|0,0,B|0,0)|0;nt=T;de=Es(Se|0,ke|0,N|0,0)|0;wn=T;Z=Es(An|0,Z|0,ge|0,ye|0)|0;Z=ks(de|0,wn|0,Z|0,T|0)|0;nt=ks(Z|0,T|0,ct|0,nt|0)|0;Ce=ks(nt|0,T|0,Oe|0,Ce|0)|0;m=ks(Ce|0,T|0,u|0,m|0)|0;u=T;K=Es(Q|0,V|0,C|0,K|0)|0;C=T;Ce=Es(_t|0,0,B|0,0)|0;Oe=T;nt=Es(A|0,0,N|0,0)|0;ct=T;ke=Es(Se|0,ke|0,ge|0,ye|0)|0;Se=T;B=Es(Q|0,V|0,B|0,0)|0;Z=T;wn=Es(_t|0,0,N|0,0)|0;de=T;A=Es(A|0,0,ge|0,ye|0)|0;A=ks(wn|0,de|0,A|0,T|0)|0;Z=ks(A|0,T|0,B|0,Z|0)|0;B=T;N=Es(Q|0,V|0,N|0,0)|0;A=T;_t=Es(_t|0,0,ge|0,ye|0)|0;_t=ks(N|0,A|0,_t|0,T|0)|0;A=T;ye=Es(Q|0,V|0,ge|0,ye|0)|0;ge=T;V=ks(xe|0,Re|0,1048576,0)|0;Q=T;N=Cs(V|0,Q|0,21)|0;de=T;j=ks(_n|0,vn|0,bn|0,j|0)|0;de=ks(j|0,T|0,N|0,de|0)|0;ve=ks(de|0,T|0,ve&2097151|0,0)|0;de=T;Q=Ss(xe|0,Re|0,V&-2097152|0,Q&4095|0)|0;V=T;Re=ks(Me|0,Pe|0,1048576,0)|0;xe=T;N=Cs(Re|0,xe|0,21)|0;j=T;pn=ks(yn|0,gn|0,mn|0,pn|0)|0;re=ks(pn|0,T|0,hn|0,re|0)|0;Ae=ks(re|0,T|0,R|0,Ae|0)|0;Ee=ks(Ae|0,T|0,Ee&2097151|0,0)|0;j=ks(Ee|0,T|0,N|0,j|0)|0;N=T;Ee=ks(Ie|0,Te|0,1048576,0)|0;Ae=T;R=Rs(Ee|0,Ae|0,21)|0;re=T;fn=ks(dn|0,un|0,ln|0,fn|0)|0;an=ks(fn|0,T|0,cn|0,an|0)|0;on=ks(an|0,T|0,sn|0,on|0)|0;x=ks(on|0,T|0,rn|0,x|0)|0;Be=ks(x|0,T|0,H|0,Be|0)|0;De=ks(Be|0,T|0,De&2097151|0,0)|0;re=ks(De|0,T|0,R|0,re|0)|0;R=T;De=ks(Ge|0,He|0,1048576,0)|0;Be=T;H=Rs(De|0,Be|0,21)|0;x=T;$t=ks(nn|0,tn|0,en|0,$t|0)|0;Jt=ks($t|0,T|0,Zt|0,Jt|0)|0;Yt=ks(Jt|0,T|0,Xt|0,Yt|0)|0;Qt=ks(Yt|0,T|0,Wt|0,Qt|0)|0;Ht=ks(Qt|0,T|0,Vt|0,Ht|0)|0;Kt=ks(Ht|0,T|0,Gt|0,Kt|0)|0;o=ks(Kt|0,T|0,I|0,o|0)|0;le=ks(o|0,T|0,ue|0,le|0)|0;x=ks(le|0,T|0,H|0,x|0)|0;H=T;le=ks(X|0,J|0,1048576,0)|0;ue=T;o=Rs(le|0,ue|0,21)|0;I=T;Lt=ks(zt|0,qt|0,Ft|0,Lt|0)|0;jt=ks(Lt|0,T|0,Ut|0,jt|0)|0;Bt=ks(jt|0,T|0,Nt|0,Bt|0)|0;Mt=ks(Bt|0,T|0,Dt|0,Mt|0)|0;Ot=ks(Mt|0,T|0,Pt|0,Ot|0)|0;Rt=ks(Ot|0,T|0,Ct|0,Rt|0)|0;It=ks(Rt|0,T|0,xt|0,It|0)|0;ee=ks(It|0,T|0,Tt|0,ee|0)|0;_e=ks(ee|0,T|0,g|0,_e|0)|0;we=ks(_e|0,T|0,we&2097151|0,0)|0;I=ks(we|0,T|0,o|0,I|0)|0;o=T;we=ks(te|0,ne|0,1048576,0)|0;_e=T;g=Rs(we|0,_e|0,21)|0;ee=T;At=ks(St|0,kt|0,Et|0,At|0)|0;be=ks(At|0,T|0,he|0,be|0)|0;Ye=ks(be|0,T|0,We|0,Ye|0)|0;t=ks(Ye|0,T|0,i|0,t|0)|0;at=ks(t|0,T|0,st|0,at|0)|0;Ke=ks(at|0,T|0,ze|0,Ke|0)|0;_=ks(Ke|0,T|0,f|0,_|0)|0;yt=ks(_|0,T|0,gt|0,yt|0)|0;Ne=ks(yt|0,T|0,je|0,Ne|0)|0;tt=ks(Ne|0,T|0,et|0,tt|0)|0;Le=ks(tt|0,T|0,Ue|0,Le|0)|0;ft=ks(Le|0,T|0,rt|0,ft|0)|0;ee=ks(ft|0,T|0,g|0,ee|0)|0;g=T;ft=ks(mt|0,pt|0,1048576,0)|0;rt=T;Le=Rs(ft|0,rt|0,21)|0;Ue=T;Xe=ks(U|0,L|0,Je|0,Xe|0)|0;Y=ks(Xe|0,T|0,W|0,Y|0)|0;ce=ks(Y|0,T|0,qe|0,ce|0)|0;oe=ks(ce|0,T|0,ie|0,oe|0)|0;F=ks(oe|0,T|0,k|0,F|0)|0;vt=ks(F|0,T|0,bt|0,vt|0)|0;Fe=ks(vt|0,T|0,fe|0,Fe|0)|0;n=ks(Fe|0,T|0,P|0,n|0)|0;it=ks(n|0,T|0,ot|0,it|0)|0;Ue=ks(it|0,T|0,Le|0,Ue|0)|0;Le=T;it=ks(dt|0,ht|0,1048576,0)|0;ot=T;n=Rs(it|0,ot|0,21)|0;P=T;a=ks(h|0,b|0,l|0,a|0)|0;c=ks(a|0,T|0,w|0,c|0)|0;se=ks(c|0,T|0,ae|0,se|0)|0;O=ks(se|0,T|0,$|0,O|0)|0;q=ks(O|0,T|0,z|0,q|0)|0;ut=ks(q|0,T|0,lt|0,ut|0)|0;Ze=ks(ut|0,T|0,$e|0,Ze|0)|0;P=ks(Ze|0,T|0,n|0,P|0)|0;n=T;Ze=ks(wt|0,G|0,1048576,0)|0;$e=T;ut=Rs(Ze|0,$e|0,21)|0;lt=T;S=ks(y|0,d|0,E|0,S|0)|0;Ve=ks(S|0,T|0,Qe|0,Ve|0)|0;D=ks(Ve|0,T|0,M|0,D|0)|0;p=ks(D|0,T|0,v|0,p|0)|0;me=ks(p|0,T|0,pe|0,me|0)|0;lt=ks(me|0,T|0,ut|0,lt|0)|0;ut=T;me=ks(m|0,u|0,1048576,0)|0;pe=T;p=Rs(me|0,pe|0,21)|0;v=T;Se=ks(nt|0,ct|0,ke|0,Se|0)|0;Oe=ks(Se|0,T|0,Ce|0,Oe|0)|0;C=ks(Oe|0,T|0,K|0,C|0)|0;v=ks(C|0,T|0,p|0,v|0)|0;p=T;pe=Ss(m|0,u|0,me&-2097152|0,pe|0)|0;me=T;u=ks(Z|0,B|0,1048576,0)|0;m=T;C=Cs(u|0,m|0,21)|0;C=ks(_t|0,A|0,C|0,T|0)|0;A=T;m=Ss(Z|0,B|0,u&-2097152|0,m&2147483647|0)|0;u=T;B=ks(ye|0,ge|0,1048576,0)|0;Z=T;_t=Cs(B|0,Z|0,21)|0;K=T;Z=Ss(ye|0,ge|0,B&-2097152|0,Z&2147483647|0)|0;B=T;ge=ks(ve|0,de|0,1048576,0)|0;ye=T;Oe=Cs(ge|0,ye|0,21)|0;Ce=T;ye=Ss(ve|0,de|0,ge&-2097152|0,ye|0)|0;ge=T;de=ks(j|0,N|0,1048576,0)|0;ve=T;Se=Rs(de|0,ve|0,21)|0;ke=T;ve=Ss(j|0,N|0,de&-2097152|0,ve|0)|0;de=T;N=ks(re|0,R|0,1048576,0)|0;j=T;ct=Rs(N|0,j|0,21)|0;nt=T;D=ks(x|0,H|0,1048576,0)|0;M=T;Ve=Rs(D|0,M|0,21)|0;Qe=T;S=ks(I|0,o|0,1048576,0)|0;E=T;d=Rs(S|0,E|0,21)|0;y=T;q=ks(ee|0,g|0,1048576,0)|0;z=T;O=Rs(q|0,z|0,21)|0;$=T;se=ks(Ue|0,Le|0,1048576,0)|0;ae=T;c=Rs(se|0,ae|0,21)|0;w=T;a=ks(P|0,n|0,1048576,0)|0;l=T;b=Rs(a|0,l|0,21)|0;h=T;Fe=ks(lt|0,ut|0,1048576,0)|0;fe=T;vt=Rs(Fe|0,fe|0,21)|0;me=ks(vt|0,T|0,pe|0,me|0)|0;pe=T;fe=Ss(lt|0,ut|0,Fe&-2097152|0,fe|0)|0;Fe=T;ut=ks(v|0,p|0,1048576,0)|0;lt=T;vt=Rs(ut|0,lt|0,21)|0;u=ks(vt|0,T|0,m|0,u|0)|0;m=T;lt=Ss(v|0,p|0,ut&-2097152|0,lt|0)|0;ut=T;p=ks(C|0,A|0,1048576,0)|0;v=T;vt=Cs(p|0,v|0,21)|0;B=ks(vt|0,T|0,Z|0,B|0)|0;Z=T;v=Ss(C|0,A|0,p&-2097152|0,v&2147483647|0)|0;p=T;A=Es(_t|0,K|0,666643,0)|0;C=T;vt=Es(_t|0,K|0,470296,0)|0;bt=T;F=Es(_t|0,K|0,654183,0)|0;k=T;oe=Es(_t|0,K|0,-997805,-1)|0;ie=T;ce=Es(_t|0,K|0,136657,0)|0;qe=T;K=Es(_t|0,K|0,-683901,-1)|0;K=ks(wt|0,G|0,K|0,T|0)|0;$e=Ss(K|0,T|0,Ze&-2097152|0,$e|0)|0;h=ks($e|0,T|0,b|0,h|0)|0;b=T;$e=Es(B|0,Z|0,666643,0)|0;Ze=T;K=Es(B|0,Z|0,470296,0)|0;G=T;wt=Es(B|0,Z|0,654183,0)|0;_t=T;Y=Es(B|0,Z|0,-997805,-1)|0;W=T;Xe=Es(B|0,Z|0,136657,0)|0;Je=T;Z=Es(B|0,Z|0,-683901,-1)|0;B=T;L=Es(v|0,p|0,666643,0)|0;U=T;tt=Es(v|0,p|0,470296,0)|0;et=T;Ne=Es(v|0,p|0,654183,0)|0;je=T;yt=Es(v|0,p|0,-997805,-1)|0;gt=T;_=Es(v|0,p|0,136657,0)|0;f=T;p=Es(v|0,p|0,-683901,-1)|0;v=T;ie=ks(dt|0,ht|0,oe|0,ie|0)|0;Je=ks(ie|0,T|0,Xe|0,Je|0)|0;v=ks(Je|0,T|0,p|0,v|0)|0;ot=Ss(v|0,T|0,it&-2097152|0,ot|0)|0;w=ks(ot|0,T|0,c|0,w|0)|0;c=T;ot=Es(u|0,m|0,666643,0)|0;it=T;v=Es(u|0,m|0,470296,0)|0;p=T;Je=Es(u|0,m|0,654183,0)|0;Xe=T;ie=Es(u|0,m|0,-997805,-1)|0;oe=T;ht=Es(u|0,m|0,136657,0)|0;dt=T;m=Es(u|0,m|0,-683901,-1)|0;u=T;Ke=Es(lt|0,ut|0,666643,0)|0;ze=T;at=Es(lt|0,ut|0,470296,0)|0;st=T;t=Es(lt|0,ut|0,654183,0)|0;i=T;Ye=Es(lt|0,ut|0,-997805,-1)|0;We=T;be=Es(lt|0,ut|0,136657,0)|0;he=T;ut=Es(lt|0,ut|0,-683901,-1)|0;lt=T;bt=ks(wt|0,_t|0,vt|0,bt|0)|0;gt=ks(bt|0,T|0,yt|0,gt|0)|0;pt=ks(gt|0,T|0,mt|0,pt|0)|0;dt=ks(pt|0,T|0,ht|0,dt|0)|0;lt=ks(dt|0,T|0,ut|0,lt|0)|0;rt=Ss(lt|0,T|0,ft&-2097152|0,rt|0)|0;$=ks(rt|0,T|0,O|0,$|0)|0;O=T;rt=Es(me|0,pe|0,666643,0)|0;rt=ks(ct|0,nt|0,rt|0,T|0)|0;He=ks(rt|0,T|0,Ge|0,He|0)|0;Be=Ss(He|0,T|0,De&-2097152|0,Be|0)|0;De=T;He=Es(me|0,pe|0,470296,0)|0;Ge=T;rt=Es(me|0,pe|0,654183,0)|0;nt=T;it=ks(at|0,st|0,ot|0,it|0)|0;nt=ks(it|0,T|0,rt|0,nt|0)|0;Qe=ks(nt|0,T|0,Ve|0,Qe|0)|0;J=ks(Qe|0,T|0,X|0,J|0)|0;ue=Ss(J|0,T|0,le&-2097152|0,ue|0)|0;le=T;J=Es(me|0,pe|0,-997805,-1)|0;X=T;Qe=Es(me|0,pe|0,136657,0)|0;Ve=T;Ze=ks(tt|0,et|0,$e|0,Ze|0)|0;Xe=ks(Ze|0,T|0,Je|0,Xe|0)|0;We=ks(Xe|0,T|0,Ye|0,We|0)|0;Ve=ks(We|0,T|0,Qe|0,Ve|0)|0;y=ks(Ve|0,T|0,d|0,y|0)|0;ne=ks(y|0,T|0,te|0,ne|0)|0;_e=Ss(ne|0,T|0,we&-2097152|0,_e|0)|0;we=T;pe=Es(me|0,pe|0,-683901,-1)|0;me=T;ne=ks(Be|0,De|0,1048576,0)|0;te=T;y=Rs(ne|0,te|0,21)|0;d=T;ze=ks(He|0,Ge|0,Ke|0,ze|0)|0;H=ks(ze|0,T|0,x|0,H|0)|0;M=Ss(H|0,T|0,D&-2097152|0,M|0)|0;d=ks(M|0,T|0,y|0,d|0)|0;y=T;M=ks(ue|0,le|0,1048576,0)|0;D=T;H=Rs(M|0,D|0,21)|0;x=T;U=ks(v|0,p|0,L|0,U|0)|0;i=ks(U|0,T|0,t|0,i|0)|0;X=ks(i|0,T|0,J|0,X|0)|0;o=ks(X|0,T|0,I|0,o|0)|0;E=Ss(o|0,T|0,S&-2097152|0,E|0)|0;x=ks(E|0,T|0,H|0,x|0)|0;H=T;E=ks(_e|0,we|0,1048576,0)|0;S=T;o=Rs(E|0,S|0,21)|0;I=T;C=ks(K|0,G|0,A|0,C|0)|0;je=ks(C|0,T|0,Ne|0,je|0)|0;oe=ks(je|0,T|0,ie|0,oe|0)|0;he=ks(oe|0,T|0,be|0,he|0)|0;me=ks(he|0,T|0,pe|0,me|0)|0;g=ks(me|0,T|0,ee|0,g|0)|0;z=Ss(g|0,T|0,q&-2097152|0,z|0)|0;I=ks(z|0,T|0,o|0,I|0)|0;o=T;z=ks($|0,O|0,1048576,0)|0;q=T;g=Rs(z|0,q|0,21)|0;ee=T;k=ks(Y|0,W|0,F|0,k|0)|0;f=ks(k|0,T|0,_|0,f|0)|0;u=ks(f|0,T|0,m|0,u|0)|0;Le=ks(u|0,T|0,Ue|0,Le|0)|0;ae=Ss(Le|0,T|0,se&-2097152|0,ae|0)|0;ee=ks(ae|0,T|0,g|0,ee|0)|0;g=T;q=Ss($|0,O|0,z&-2097152|0,q|0)|0;z=T;O=ks(w|0,c|0,1048576,0)|0;$=T;ae=Rs(O|0,$|0,21)|0;se=T;qe=ks(Z|0,B|0,ce|0,qe|0)|0;n=ks(qe|0,T|0,P|0,n|0)|0;l=Ss(n|0,T|0,a&-2097152|0,l|0)|0;se=ks(l|0,T|0,ae|0,se|0)|0;ae=T;$=Ss(w|0,c|0,O&-2097152|0,$|0)|0;O=T;c=ks(h|0,b|0,1048576,0)|0;w=T;l=Rs(c|0,w|0,21)|0;Fe=ks(l|0,T|0,fe|0,Fe|0)|0;fe=T;w=Ss(h|0,b|0,c&-2097152|0,w|0)|0;c=T;b=ks(d|0,y|0,1048576,0)|0;h=T;l=Rs(b|0,h|0,21)|0;a=T;n=ks(x|0,H|0,1048576,0)|0;P=T;qe=Rs(n|0,P|0,21)|0;ce=T;B=ks(I|0,o|0,1048576,0)|0;Z=T;Le=Rs(B|0,Z|0,21)|0;z=ks(Le|0,T|0,q|0,z|0)|0;q=T;Z=Ss(I|0,o|0,B&-2097152|0,Z|0)|0;B=T;o=ks(ee|0,g|0,1048576,0)|0;I=T;Le=Rs(o|0,I|0,21)|0;O=ks(Le|0,T|0,$|0,O|0)|0;$=T;I=Ss(ee|0,g|0,o&-2097152|0,I|0)|0;o=T;g=ks(se|0,ae|0,1048576,0)|0;ee=T;Le=Rs(g|0,ee|0,21)|0;c=ks(Le|0,T|0,w|0,c|0)|0;w=T;ee=Ss(se|0,ae|0,g&-2097152|0,ee|0)|0;g=T;ae=Es(Fe|0,fe|0,666643,0)|0;se=T;Le=Es(Fe|0,fe|0,470296,0)|0;Ue=T;u=Es(Fe|0,fe|0,654183,0)|0;m=T;f=Es(Fe|0,fe|0,-997805,-1)|0;_=T;k=Es(Fe|0,fe|0,136657,0)|0;F=T;fe=Es(Fe|0,fe|0,-683901,-1)|0;fe=ks(qe|0,ce|0,fe|0,T|0)|0;we=ks(fe|0,T|0,_e|0,we|0)|0;S=Ss(we|0,T|0,E&-2097152|0,S|0)|0;E=T;we=Es(c|0,w|0,666643,0)|0;_e=T;fe=Es(c|0,w|0,470296,0)|0;ce=T;qe=Es(c|0,w|0,654183,0)|0;Fe=T;W=Es(c|0,w|0,-997805,-1)|0;Y=T;me=Es(c|0,w|0,136657,0)|0;pe=T;w=Es(c|0,w|0,-683901,-1)|0;c=T;he=Es(ee|0,g|0,666643,0)|0;he=ks(ve|0,de|0,he|0,T|0)|0;de=T;ve=Es(ee|0,g|0,470296,0)|0;be=T;oe=Es(ee|0,g|0,654183,0)|0;ie=T;je=Es(ee|0,g|0,-997805,-1)|0;Ne=T;C=Es(ee|0,g|0,136657,0)|0;A=T;g=Es(ee|0,g|0,-683901,-1)|0;ee=T;_=ks(me|0,pe|0,f|0,_|0)|0;ee=ks(_|0,T|0,g|0,ee|0)|0;a=ks(ee|0,T|0,l|0,a|0)|0;le=ks(a|0,T|0,ue|0,le|0)|0;D=Ss(le|0,T|0,M&-2097152|0,D|0)|0;M=T;le=Es(O|0,$|0,666643,0)|0;ue=T;a=Es(O|0,$|0,470296,0)|0;l=T;ee=Es(O|0,$|0,654183,0)|0;g=T;_=Es(O|0,$|0,-997805,-1)|0;f=T;pe=Es(O|0,$|0,136657,0)|0;me=T;$=Es(O|0,$|0,-683901,-1)|0;O=T;G=Es(I|0,o|0,666643,0)|0;K=T;X=Es(I|0,o|0,470296,0)|0;J=T;i=Es(I|0,o|0,654183,0)|0;t=T;U=Es(I|0,o|0,-997805,-1)|0;L=T;p=Es(I|0,o|0,136657,0)|0;v=T;o=Es(I|0,o|0,-683901,-1)|0;I=T;Ue=ks(qe|0,Fe|0,Le|0,Ue|0)|0;Ne=ks(Ue|0,T|0,je|0,Ne|0)|0;De=ks(Ne|0,T|0,Be|0,De|0)|0;te=Ss(De|0,T|0,ne&-2097152|0,te|0)|0;me=ks(te|0,T|0,pe|0,me|0)|0;I=ks(me|0,T|0,o|0,I|0)|0;o=T;me=Es(z|0,q|0,666643,0)|0;V=ks(me|0,T|0,Q|0,V|0)|0;Q=T;me=Es(z|0,q|0,470296,0)|0;pe=T;te=Es(z|0,q|0,654183,0)|0;ne=T;Ce=ks(Me|0,Pe|0,Oe|0,Ce|0)|0;xe=Ss(Ce|0,T|0,Re&-2097152|0,xe|0)|0;ne=ks(xe|0,T|0,te|0,ne|0)|0;ue=ks(ne|0,T|0,le|0,ue|0)|0;J=ks(ue|0,T|0,X|0,J|0)|0;X=T;ue=Es(z|0,q|0,-997805,-1)|0;le=T;ne=Es(z|0,q|0,136657,0)|0;te=T;ke=ks(Ie|0,Te|0,Se|0,ke|0)|0;Ae=Ss(ke|0,T|0,Ee&-2097152|0,Ae|0)|0;_e=ks(Ae|0,T|0,we|0,_e|0)|0;be=ks(_e|0,T|0,ve|0,be|0)|0;te=ks(be|0,T|0,ne|0,te|0)|0;g=ks(te|0,T|0,ee|0,g|0)|0;L=ks(g|0,T|0,U|0,L|0)|0;U=T;q=Es(z|0,q|0,-683901,-1)|0;z=T;g=ks(V|0,Q|0,1048576,0)|0;ee=T;te=Rs(g|0,ee|0,21)|0;ne=T;pe=ks(ye|0,ge|0,me|0,pe|0)|0;K=ks(pe|0,T|0,G|0,K|0)|0;ne=ks(K|0,T|0,te|0,ne|0)|0;te=T;ee=Ss(V|0,Q|0,g&-2097152|0,ee|0)|0;g=T;Q=ks(J|0,X|0,1048576,0)|0;V=T;K=Rs(Q|0,V|0,21)|0;G=T;le=ks(he|0,de|0,ue|0,le|0)|0;l=ks(le|0,T|0,a|0,l|0)|0;t=ks(l|0,T|0,i|0,t|0)|0;G=ks(t|0,T|0,K|0,G|0)|0;K=T;t=ks(L|0,U|0,1048576,0)|0;i=T;l=Rs(t|0,i|0,21)|0;a=T;se=ks(fe|0,ce|0,ae|0,se|0)|0;ie=ks(se|0,T|0,oe|0,ie|0)|0;R=ks(ie|0,T|0,re|0,R|0)|0;j=Ss(R|0,T|0,N&-2097152|0,j|0)|0;z=ks(j|0,T|0,q|0,z|0)|0;f=ks(z|0,T|0,_|0,f|0)|0;v=ks(f|0,T|0,p|0,v|0)|0;a=ks(v|0,T|0,l|0,a|0)|0;l=T;v=ks(I|0,o|0,1048576,0)|0;p=T;f=Rs(v|0,p|0,21)|0;_=T;m=ks(W|0,Y|0,u|0,m|0)|0;A=ks(m|0,T|0,C|0,A|0)|0;y=ks(A|0,T|0,d|0,y|0)|0;h=Ss(y|0,T|0,b&-2097152|0,h|0)|0;O=ks(h|0,T|0,$|0,O|0)|0;_=ks(O|0,T|0,f|0,_|0)|0;f=T;p=Ss(I|0,o|0,v&-2097152|0,p|0)|0;v=T;o=ks(D|0,M|0,1048576,0)|0;I=T;O=Rs(o|0,I|0,21)|0;$=T;F=ks(w|0,c|0,k|0,F|0)|0;H=ks(F|0,T|0,x|0,H|0)|0;$=ks(H|0,T|0,O|0,$|0)|0;P=Ss($|0,T|0,n&-2097152|0,P|0)|0;n=T;I=Ss(D|0,M|0,o&-2097152|0,I|0)|0;o=T;M=ks(S|0,E|0,1048576,0)|0;D=T;$=Rs(M|0,D|0,21)|0;$=ks(Z|0,B|0,$|0,T|0)|0;B=T;Z=ks(ne|0,te|0,1048576,0)|0;O=T;H=Rs(Z|0,O|0,21)|0;x=T;F=ks(G|0,K|0,1048576,0)|0;k=T;c=Rs(F|0,k|0,21)|0;w=T;h=ks(a|0,l|0,1048576,0)|0;b=T;y=Rs(h|0,b|0,21)|0;y=ks(p|0,v|0,y|0,T|0)|0;v=T;p=ks(_|0,f|0,1048576,0)|0;d=T;A=Rs(p|0,d|0,21)|0;A=ks(I|0,o|0,A|0,T|0)|0;o=T;d=Ss(_|0,f|0,p&-2097152|0,d|0)|0;p=T;f=ks(P|0,n|0,1048576,0)|0;_=T;I=Rs(f|0,_|0,21)|0;C=T;_=Ss(P|0,n|0,f&-2097152|0,_|0)|0;f=T;n=ks($|0,B|0,1048576,0)|0;P=T;m=Rs(n|0,P|0,21)|0;u=T;P=Ss($|0,B|0,n&-2097152|0,P|0)|0;n=T;B=Es(m|0,u|0,666643,0)|0;B=ks(ee|0,g|0,B|0,T|0)|0;g=T;ee=Es(m|0,u|0,470296,0)|0;$=T;Y=Es(m|0,u|0,654183,0)|0;W=T;z=Es(m|0,u|0,-997805,-1)|0;q=T;j=Es(m|0,u|0,136657,0)|0;N=T;u=Es(m|0,u|0,-683901,-1)|0;m=T;g=Rs(B|0,g|0,21)|0;R=T;$=ks(ne|0,te|0,ee|0,$|0)|0;O=Ss($|0,T|0,Z&-2097152|0,O|0)|0;R=ks(O|0,T|0,g|0,R|0)|0;g=Rs(R|0,T|0,21)|0;O=T;W=ks(J|0,X|0,Y|0,W|0)|0;V=Ss(W|0,T|0,Q&-2097152|0,V|0)|0;x=ks(V|0,T|0,H|0,x|0)|0;O=ks(x|0,T|0,g|0,O|0)|0;g=Rs(O|0,T|0,21)|0;x=T;q=ks(G|0,K|0,z|0,q|0)|0;k=Ss(q|0,T|0,F&-2097152|0,k|0)|0;x=ks(k|0,T|0,g|0,x|0)|0;g=Rs(x|0,T|0,21)|0;k=T;N=ks(L|0,U|0,j|0,N|0)|0;i=Ss(N|0,T|0,t&-2097152|0,i|0)|0;w=ks(i|0,T|0,c|0,w|0)|0;k=ks(w|0,T|0,g|0,k|0)|0;g=Rs(k|0,T|0,21)|0;w=T;m=ks(a|0,l|0,u|0,m|0)|0;b=Ss(m|0,T|0,h&-2097152|0,b|0)|0;w=ks(b|0,T|0,g|0,w|0)|0;g=Rs(w|0,T|0,21)|0;g=ks(y|0,v|0,g|0,T|0)|0;v=Rs(g|0,T|0,21)|0;p=ks(v|0,T|0,d|0,p|0)|0;d=Rs(p|0,T|0,21)|0;d=ks(A|0,o|0,d|0,T|0)|0;o=Rs(d|0,T|0,21)|0;f=ks(o|0,T|0,_|0,f|0)|0;_=Rs(f|0,T|0,21)|0;o=T;C=ks(S|0,E|0,I|0,C|0)|0;D=Ss(C|0,T|0,M&-2097152|0,D|0)|0;o=ks(D|0,T|0,_|0,o|0)|0;_=Rs(o|0,T|0,21)|0;n=ks(_|0,T|0,P|0,n|0)|0;P=Rs(n|0,T|0,21)|0;_=T;D=Es(P|0,_|0,666643,0)|0;B=ks(D|0,T|0,B&2097151|0,0)|0;D=T;M=Es(P|0,_|0,470296,0)|0;R=ks(M|0,T|0,R&2097151|0,0)|0;M=T;C=Es(P|0,_|0,654183,0)|0;O=ks(C|0,T|0,O&2097151|0,0)|0;C=T;I=Es(P|0,_|0,-997805,-1)|0;x=ks(I|0,T|0,x&2097151|0,0)|0;I=T;E=Es(P|0,_|0,136657,0)|0;k=ks(E|0,T|0,k&2097151|0,0)|0;E=T;_=Es(P|0,_|0,-683901,-1)|0;w=ks(_|0,T|0,w&2097151|0,0)|0;_=T;P=Rs(B|0,D|0,21)|0;P=ks(R|0,M|0,P|0,T|0)|0;M=T;R=Rs(P|0,M|0,21)|0;R=ks(O|0,C|0,R|0,T|0)|0;C=T;O=P&2097151;S=Rs(R|0,C|0,21)|0;S=ks(x|0,I|0,S|0,T|0)|0;I=T;x=R&2097151;A=Rs(S|0,I|0,21)|0;A=ks(k|0,E|0,A|0,T|0)|0;E=T;k=S&2097151;v=Rs(A|0,E|0,21)|0;v=ks(w|0,_|0,v|0,T|0)|0;_=T;w=A&2097151;y=Rs(v|0,_|0,21)|0;g=ks(y|0,T|0,g&2097151|0,0)|0;y=T;b=v&2097151;h=Rs(g|0,y|0,21)|0;p=ks(h|0,T|0,p&2097151|0,0)|0;h=T;m=g&2097151;u=Rs(p|0,h|0,21)|0;d=ks(u|0,T|0,d&2097151|0,0)|0;u=T;l=Rs(d|0,u|0,21)|0;f=ks(l|0,T|0,f&2097151|0,0)|0;l=T;a=Rs(f|0,l|0,21)|0;o=ks(a|0,T|0,o&2097151|0,0)|0;a=T;c=f&2097151;i=Rs(o|0,a|0,21)|0;n=ks(i|0,T|0,n&2097151|0,0)|0;i=T;t=o&2097151;r[e>>0]=B;N=Cs(B|0,D|0,8)|0;r[e+1>>0]=N;D=Cs(B|0,D|0,16)|0;B=Os(O|0,0,5)|0;r[e+2>>0]=B|D&31;D=Cs(P|0,M|0,3)|0;r[e+3>>0]=D;M=Cs(P|0,M|0,11)|0;r[e+4>>0]=M;O=Cs(O|0,0,19)|0;M=T;P=Os(x|0,0,2)|0;r[e+5>>0]=P|O;C=Cs(R|0,C|0,6)|0;r[e+6>>0]=C;x=Cs(x|0,0,14)|0;C=T;R=Os(k|0,0,7)|0;r[e+7>>0]=R|x;x=Cs(S|0,I|0,1)|0;r[e+8>>0]=x;I=Cs(S|0,I|0,9)|0;r[e+9>>0]=I;k=Cs(k|0,0,17)|0;I=T;S=Os(w|0,0,4)|0;r[e+10>>0]=S|k;k=Cs(A|0,E|0,4)|0;r[e+11>>0]=k;E=Cs(A|0,E|0,12)|0;r[e+12>>0]=E;w=Cs(w|0,0,20)|0;E=T;A=Os(b|0,0,1)|0;r[e+13>>0]=A|w;_=Cs(v|0,_|0,7)|0;r[e+14>>0]=_;b=Cs(b|0,0,15)|0;_=T;v=Os(m|0,0,6)|0;r[e+15>>0]=v|b;b=Cs(g|0,y|0,2)|0;r[e+16>>0]=b;y=Cs(g|0,y|0,10)|0;r[e+17>>0]=y;m=Cs(m|0,0,18)|0;y=T;g=Os(p|0,h|0,3)|0;r[e+18>>0]=g|m;m=Cs(p|0,h|0,5)|0;r[e+19>>0]=m;h=Cs(p|0,h|0,13)|0;r[e+20>>0]=h;r[e+21>>0]=d;h=Cs(d|0,u|0,8)|0;r[e+22>>0]=h;u=Cs(d|0,u|0,16)|0;d=Os(c|0,0,5)|0;r[e+23>>0]=d|u&31;u=Cs(f|0,l|0,3)|0;r[e+24>>0]=u;l=Cs(f|0,l|0,11)|0;r[e+25>>0]=l;c=Cs(c|0,0,19)|0;l=T;f=Os(t|0,0,2)|0;r[e+26>>0]=f|c;a=Cs(o|0,a|0,6)|0;r[e+27>>0]=a;t=Cs(t|0,0,14)|0;a=T;o=Os(n|0,i|0,7)|0;r[e+28>>0]=o|t;t=Cs(n|0,i|0,1)|0;r[e+29>>0]=t;t=Cs(n|0,i|0,9)|0;r[e+30>>0]=t;i=Rs(n|0,i|0,17)|0;r[e+31>>0]=i;return}function ni(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;l=t+44|0;h=t+48|0;g=t+52|0;v=t+56|0;A=t+60|0;S=t+64|0;x=t+68|0;O=t+72|0;R=t+76|0;G=t+4|0;z=t+8|0;i=t+12|0;d=t+16|0;p=t+20|0;w=t+24|0;E=t+28|0;C=t+32|0;q=t+36|0;se=(o[G>>2]|0)+(o[l>>2]|0)|0;oe=(o[z>>2]|0)+(o[h>>2]|0)|0;ie=(o[i>>2]|0)+(o[g>>2]|0)|0;re=(o[d>>2]|0)+(o[v>>2]|0)|0;ne=(o[p>>2]|0)+(o[A>>2]|0)|0;te=(o[w>>2]|0)+(o[S>>2]|0)|0;ee=(o[E>>2]|0)+(o[x>>2]|0)|0;$=(o[C>>2]|0)+(o[O>>2]|0)|0;X=(o[q>>2]|0)+(o[R>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[l>>2]|0)-(o[G>>2]|0)|0;z=(o[h>>2]|0)-(o[z>>2]|0)|0;i=(o[g>>2]|0)-(o[i>>2]|0)|0;d=(o[v>>2]|0)-(o[d>>2]|0)|0;p=(o[A>>2]|0)-(o[p>>2]|0)|0;w=(o[S>>2]|0)-(o[w>>2]|0)|0;E=(o[x>>2]|0)-(o[E>>2]|0)|0;C=(o[O>>2]|0)-(o[C>>2]|0)|0;q=(o[R>>2]|0)-(o[q>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=z;z=e+52|0;o[z>>2]=i;i=e+56|0;o[i>>2]=d;d=e+60|0;o[d>>2]=p;p=e+64|0;o[p>>2]=w;w=e+68|0;o[w>>2]=E;E=e+72|0;o[E>>2]=C;C=e+76|0;o[C>>2]=q;q=e+80|0;Xr(q,e,n);Xr(X,X,n+40|0);R=e+120|0;Xr(R,n+120|0,t+120|0);Xr(e,t+80|0,n+80|0);O=o[e>>2]<<1;x=o[ae>>2]<<1;S=o[se>>2]<<1;A=o[oe>>2]<<1;v=o[ie>>2]<<1;g=o[re>>2]<<1;h=o[ne>>2]<<1;l=o[te>>2]<<1;a=o[ee>>2]<<1;r=o[$>>2]<<1;J=o[q>>2]|0;F=e+84|0;W=o[F>>2]|0;L=e+88|0;H=o[L>>2]|0;U=e+92|0;t=o[U>>2]|0;j=e+96|0;s=o[j>>2]|0;N=e+100|0;c=o[N>>2]|0;B=e+104|0;m=o[B>>2]|0;D=e+108|0;y=o[D>>2]|0;M=e+112|0;k=o[M>>2]|0;P=e+116|0;T=o[P>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[z>>2]|0;n=o[i>>2]|0;f=o[d>>2]|0;u=o[p>>2]|0;b=o[w>>2]|0;_=o[E>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=t-K;o[ie>>2]=s-n;o[re>>2]=c-f;o[ne>>2]=m-u;o[te>>2]=y-b;o[ee>>2]=k-_;o[$>>2]=T-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[z>>2]=K+t;o[i>>2]=n+s;o[d>>2]=f+c;o[p>>2]=u+m;o[w>>2]=b+y;o[E>>2]=_+k;o[C>>2]=I+T;C=o[R>>2]|0;T=e+124|0;I=o[T>>2]|0;E=e+128|0;k=o[E>>2]|0;_=e+132|0;w=o[_>>2]|0;y=e+136|0;b=o[y>>2]|0;p=e+140|0;m=o[p>>2]|0;u=e+144|0;d=o[u>>2]|0;c=e+148|0;f=o[c>>2]|0;i=e+152|0;s=o[i>>2]|0;n=e+156|0;t=o[n>>2]|0;o[q>>2]=C+O;o[F>>2]=I+x;o[L>>2]=k+S;o[U>>2]=w+A;o[j>>2]=b+v;o[N>>2]=m+g;o[B>>2]=d+h;o[D>>2]=f+l;o[M>>2]=s+a;o[P>>2]=t+r;o[R>>2]=O-C;o[T>>2]=x-I;o[E>>2]=S-k;o[_>>2]=A-w;o[y>>2]=v-b;o[p>>2]=g-m;o[u>>2]=h-d;o[c>>2]=l-f;o[i>>2]=a-s;o[n>>2]=r-t;return}function ri(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0;_=h;h=h+2400|0;d=_+2272|0;m=_+1536|0;g=_+1280|0;y=_;b=_+2112|0;v=_+1952|0;u=_+1792|0;ii(m,t);ii(g,i);oi(y,n);A=o[n+4>>2]|0;w=o[n+8>>2]|0;l=o[n+12>>2]|0;t=o[n+16>>2]|0;f=o[n+20>>2]|0;c=o[n+24>>2]|0;a=o[n+28>>2]|0;s=o[n+32>>2]|0;i=o[n+36>>2]|0;o[d>>2]=o[n>>2];o[d+4>>2]=A;o[d+8>>2]=w;o[d+12>>2]=l;o[d+16>>2]=t;o[d+20>>2]=f;o[d+24>>2]=c;o[d+28>>2]=a;o[d+32>>2]=s;o[d+36>>2]=i;i=o[n+44>>2]|0;s=o[n+48>>2]|0;a=o[n+52>>2]|0;c=o[n+56>>2]|0;f=o[n+60>>2]|0;t=o[n+64>>2]|0;l=o[n+68>>2]|0;w=o[n+72>>2]|0;A=o[n+76>>2]|0;o[d+40>>2]=o[n+40>>2];o[d+44>>2]=i;o[d+48>>2]=s;o[d+52>>2]=a;o[d+56>>2]=c;o[d+60>>2]=f;o[d+64>>2]=t;o[d+68>>2]=l;o[d+72>>2]=w;o[d+76>>2]=A;A=o[n+84>>2]|0;w=o[n+88>>2]|0;l=o[n+92>>2]|0;t=o[n+96>>2]|0;f=o[n+100>>2]|0;c=o[n+104>>2]|0;a=o[n+108>>2]|0;s=o[n+112>>2]|0;i=o[n+116>>2]|0;o[d+80>>2]=o[n+80>>2];o[d+84>>2]=A;o[d+88>>2]=w;o[d+92>>2]=l;o[d+96>>2]=t;o[d+100>>2]=f;o[d+104>>2]=c;o[d+108>>2]=a;o[d+112>>2]=s;o[d+116>>2]=i;si(b,d);d=b+120|0;Xr(u,b,d);i=b+40|0;s=b+80|0;Xr(u+40|0,i,s);Xr(u+80|0,s,d);Xr(u+120|0,b,i);ni(b,u,y);Xr(v,b,d);a=v+40|0;Xr(a,i,s);c=v+80|0;Xr(c,s,d);f=v+120|0;Xr(f,b,i);t=y+160|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+320|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+480|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+640|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+800|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+960|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);oi(y+1120|0,v);t=e;n=t+40|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));l=e+40|0;o[l>>2]=1;t=e+44|0;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));u=e+80|0;o[u>>2]=1;t=e+84|0;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));t=255;while(1){if(r[m+t>>0]|0)break;if(r[g+t>>0]|0)break;if(!t){p=16;break}else t=t+-1|0}if((p|0)==16){h=_;return}if((t|0)<=-1){h=_;return}while(1){si(b,e);n=r[m+t>>0]|0;if(n<<24>>24<=0){if(n<<24>>24<0){Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);ai(b,v,y+((((n<<24>>24)/-2|0)<<24>>24)*160|0)|0)}}else{Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);ni(b,v,y+(((n&255)>>>1&255)*160|0)|0)}n=r[g+t>>0]|0;if(n<<24>>24<=0){if(n<<24>>24<0){Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);fi(b,v,240+((((n<<24>>24)/-2|0)<<24>>24)*120|0)|0)}}else{Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);ci(b,v,240+(((n&255)>>>1&255)*120|0)|0)}Xr(e,b,d);Xr(l,i,s);Xr(u,s,d);if((t|0)>0)t=t+-1|0;else break}h=_;return}function ii(e,t){e=e|0;t=t|0;var n=0,i=0,o=0,a=0,c=0,f=0,l=0,u=0,d=0;n=0;do{r[e+n>>0]=(s[t+(n>>>3)>>0]|0)>>>(n&7)&1;n=n+1|0}while((n|0)!=256);l=0;do{f=e+l|0;n=r[f>>0]|0;c=l;l=l+1|0;e:do{if(n<<24>>24!=0&l>>>0<256){o=e+l|0;t=r[o>>0]|0;t:do{if(t<<24>>24){i=n<<24>>24;n=t<<24>>24<<1;t=n+i|0;if((t|0)<16){r[f>>0]=t;r[o>>0]=0;break}n=i-n|0;if((n|0)<=-16)break e;r[f>>0]=n;n=l;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+2|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<2;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+3|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<3;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+4|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<4;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+5|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<5;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+6|0;if(n>>>0<256?(u=e+n|0,d=r[u>>0]|0,d<<24>>24):0){t=r[f>>0]|0;i=d<<24>>24<<6;o=i+t|0;if((o|0)<16){r[f>>0]=o;r[u>>0]=0;break}t=t-i|0;if((t|0)>-16){r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break e}r[t>>0]=1}}}}}}}}while(0)}while((l|0)!=256);return}function oi(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0;d=t+40|0;w=t+44|0;_=t+48|0;v=t+52|0;b=t+56|0;y=t+60|0;g=t+64|0;m=t+68|0;p=t+72|0;h=t+76|0;n=t+4|0;r=t+8|0;i=t+12|0;s=t+16|0;a=t+20|0;c=t+24|0;f=t+28|0;l=t+32|0;u=t+36|0;C=(o[n>>2]|0)+(o[w>>2]|0)|0;R=(o[r>>2]|0)+(o[_>>2]|0)|0;x=(o[i>>2]|0)+(o[v>>2]|0)|0;I=(o[s>>2]|0)+(o[b>>2]|0)|0;T=(o[a>>2]|0)+(o[y>>2]|0)|0;S=(o[c>>2]|0)+(o[g>>2]|0)|0;k=(o[f>>2]|0)+(o[m>>2]|0)|0;E=(o[l>>2]|0)+(o[p>>2]|0)|0;A=(o[u>>2]|0)+(o[h>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[d>>2]|0);o[e+4>>2]=C;o[e+8>>2]=R;o[e+12>>2]=x;o[e+16>>2]=I;o[e+20>>2]=T;o[e+24>>2]=S;o[e+28>>2]=k;o[e+32>>2]=E;o[e+36>>2]=A;n=(o[w>>2]|0)-(o[n>>2]|0)|0;r=(o[_>>2]|0)-(o[r>>2]|0)|0;i=(o[v>>2]|0)-(o[i>>2]|0)|0;s=(o[b>>2]|0)-(o[s>>2]|0)|0;a=(o[y>>2]|0)-(o[a>>2]|0)|0;c=(o[g>>2]|0)-(o[c>>2]|0)|0;f=(o[m>>2]|0)-(o[f>>2]|0)|0;l=(o[p>>2]|0)-(o[l>>2]|0)|0;u=(o[h>>2]|0)-(o[u>>2]|0)|0;o[e+40>>2]=(o[d>>2]|0)-(o[t>>2]|0);o[e+44>>2]=n;o[e+48>>2]=r;o[e+52>>2]=i;o[e+56>>2]=s;o[e+60>>2]=a;o[e+64>>2]=c;o[e+68>>2]=f;o[e+72>>2]=l;o[e+76>>2]=u;u=o[t+84>>2]|0;l=o[t+88>>2]|0;f=o[t+92>>2]|0;c=o[t+96>>2]|0;a=o[t+100>>2]|0;s=o[t+104>>2]|0;i=o[t+108>>2]|0;r=o[t+112>>2]|0;n=o[t+116>>2]|0;o[e+80>>2]=o[t+80>>2];o[e+84>>2]=u;o[e+88>>2]=l;o[e+92>>2]=f;o[e+96>>2]=c;o[e+100>>2]=a;o[e+104>>2]=s;o[e+108>>2]=i;o[e+112>>2]=r;o[e+116>>2]=n;Xr(e+120|0,t+120|0,1200);return}function si(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0;n=h;h=h+48|0;D=n;Yr(e,t);G=e+80|0;fe=t+40|0;Yr(G,fe);w=e+120|0;$r(w,t+80|0);le=e+40|0;ce=(o[t+44>>2]|0)+(o[t+4>>2]|0)|0;ae=(o[t+48>>2]|0)+(o[t+8>>2]|0)|0;se=(o[t+52>>2]|0)+(o[t+12>>2]|0)|0;oe=(o[t+56>>2]|0)+(o[t+16>>2]|0)|0;ie=(o[t+60>>2]|0)+(o[t+20>>2]|0)|0;re=(o[t+64>>2]|0)+(o[t+24>>2]|0)|0;ne=(o[t+68>>2]|0)+(o[t+28>>2]|0)|0;te=(o[t+72>>2]|0)+(o[t+32>>2]|0)|0;ee=(o[t+76>>2]|0)+(o[t+36>>2]|0)|0;o[le>>2]=(o[fe>>2]|0)+(o[t>>2]|0);fe=e+44|0;o[fe>>2]=ce;ce=e+48|0;o[ce>>2]=ae;ae=e+52|0;o[ae>>2]=se;se=e+56|0;o[se>>2]=oe;oe=e+60|0;o[oe>>2]=ie;ie=e+64|0;o[ie>>2]=re;re=e+68|0;o[re>>2]=ne;ne=e+72|0;o[ne>>2]=te;te=e+76|0;o[te>>2]=ee;Yr(D,le);ee=o[G>>2]|0;K=e+84|0;$=o[K>>2]|0;z=e+88|0;Z=o[z>>2]|0;q=e+92|0;J=o[q>>2]|0;F=e+96|0;X=o[F>>2]|0;L=e+100|0;Y=o[L>>2]|0;U=e+104|0;W=o[U>>2]|0;j=e+108|0;Q=o[j>>2]|0;N=e+112|0;V=o[N>>2]|0;B=e+116|0;H=o[B>>2]|0;A=o[e>>2]|0;O=e+4|0;_=o[O>>2]|0;R=e+8|0;b=o[R>>2]|0;I=e+12|0;g=o[I>>2]|0;S=e+16|0;p=o[S>>2]|0;t=e+20|0;u=o[t>>2]|0;s=e+24|0;f=o[s>>2]|0;l=e+28|0;a=o[l>>2]|0;m=e+32|0;i=o[m>>2]|0;v=e+36|0;E=o[v>>2]|0;M=A+ee|0;P=_+$|0;C=b+Z|0;x=g+J|0;T=p+X|0;k=u+Y|0;r=f+W|0;c=a+Q|0;d=i+V|0;y=E+H|0;o[le>>2]=M;o[fe>>2]=P;o[ce>>2]=C;o[ae>>2]=x;o[se>>2]=T;o[oe>>2]=k;o[ie>>2]=r;o[re>>2]=c;o[ne>>2]=d;o[te>>2]=y;A=ee-A|0;_=$-_|0;b=Z-b|0;g=J-g|0;p=X-p|0;u=Y-u|0;f=W-f|0;a=Q-a|0;i=V-i|0;E=H-E|0;o[G>>2]=A;o[K>>2]=_;o[z>>2]=b;o[q>>2]=g;o[F>>2]=p;o[L>>2]=u;o[U>>2]=f;o[j>>2]=a;o[N>>2]=i;o[B>>2]=E;P=(o[D+4>>2]|0)-P|0;C=(o[D+8>>2]|0)-C|0;x=(o[D+12>>2]|0)-x|0;T=(o[D+16>>2]|0)-T|0;k=(o[D+20>>2]|0)-k|0;r=(o[D+24>>2]|0)-r|0;c=(o[D+28>>2]|0)-c|0;d=(o[D+32>>2]|0)-d|0;y=(o[D+36>>2]|0)-y|0;o[e>>2]=(o[D>>2]|0)-M;o[O>>2]=P;o[R>>2]=C;o[I>>2]=x;o[S>>2]=T;o[t>>2]=k;o[s>>2]=r;o[l>>2]=c;o[m>>2]=d;o[v>>2]=y;v=e+124|0;y=e+128|0;m=e+132|0;d=e+136|0;l=e+140|0;c=e+144|0;s=e+148|0;r=e+152|0;t=e+156|0;_=(o[v>>2]|0)-_|0;b=(o[y>>2]|0)-b|0;g=(o[m>>2]|0)-g|0;p=(o[d>>2]|0)-p|0;u=(o[l>>2]|0)-u|0;f=(o[c>>2]|0)-f|0;a=(o[s>>2]|0)-a|0;i=(o[r>>2]|0)-i|0;e=(o[t>>2]|0)-E|0;o[w>>2]=(o[w>>2]|0)-A;o[v>>2]=_;o[y>>2]=b;o[m>>2]=g;o[d>>2]=p;o[l>>2]=u;o[c>>2]=f;o[s>>2]=a;o[r>>2]=i;o[t>>2]=e;h=n;return}function ai(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;c=t+44|0;u=t+48|0;p=t+52|0;y=t+56|0;_=t+60|0;E=t+64|0;T=t+68|0;R=t+72|0;x=t+76|0;G=t+4|0;q=t+8|0;r=t+12|0;d=t+16|0;h=t+20|0;w=t+24|0;A=t+28|0;C=t+32|0;F=t+36|0;se=(o[G>>2]|0)+(o[c>>2]|0)|0;oe=(o[q>>2]|0)+(o[u>>2]|0)|0;ie=(o[r>>2]|0)+(o[p>>2]|0)|0;re=(o[d>>2]|0)+(o[y>>2]|0)|0;ne=(o[h>>2]|0)+(o[_>>2]|0)|0;te=(o[w>>2]|0)+(o[E>>2]|0)|0;ee=(o[A>>2]|0)+(o[T>>2]|0)|0;$=(o[C>>2]|0)+(o[R>>2]|0)|0;X=(o[F>>2]|0)+(o[x>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[c>>2]|0)-(o[G>>2]|0)|0;q=(o[u>>2]|0)-(o[q>>2]|0)|0;r=(o[p>>2]|0)-(o[r>>2]|0)|0;d=(o[y>>2]|0)-(o[d>>2]|0)|0;h=(o[_>>2]|0)-(o[h>>2]|0)|0;w=(o[E>>2]|0)-(o[w>>2]|0)|0;A=(o[T>>2]|0)-(o[A>>2]|0)|0;C=(o[R>>2]|0)-(o[C>>2]|0)|0;F=(o[x>>2]|0)-(o[F>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=q;q=e+52|0;o[q>>2]=r;r=e+56|0;o[r>>2]=d;d=e+60|0;o[d>>2]=h;h=e+64|0;o[h>>2]=w;w=e+68|0;o[w>>2]=A;A=e+72|0;o[A>>2]=C;C=e+76|0;o[C>>2]=F;F=e+80|0;Xr(F,e,n+40|0);Xr(X,X,n);x=e+120|0;Xr(x,n+120|0,t+120|0);Xr(e,t+80|0,n+80|0);R=o[e>>2]<<1;T=o[ae>>2]<<1;E=o[se>>2]<<1;_=o[oe>>2]<<1;y=o[ie>>2]<<1;p=o[re>>2]<<1;u=o[ne>>2]<<1;c=o[te>>2]<<1;i=o[ee>>2]<<1;t=o[$>>2]<<1;J=o[F>>2]|0;L=e+84|0;W=o[L>>2]|0;U=e+88|0;H=o[U>>2]|0;j=e+92|0;z=o[j>>2]|0;N=e+96|0;s=o[N>>2]|0;B=e+100|0;a=o[B>>2]|0;D=e+104|0;m=o[D>>2]|0;M=e+108|0;g=o[M>>2]|0;P=e+112|0;k=o[P>>2]|0;O=e+116|0;S=o[O>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[q>>2]|0;n=o[r>>2]|0;f=o[d>>2]|0;l=o[h>>2]|0;b=o[w>>2]|0;v=o[A>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=z-K;o[ie>>2]=s-n;o[re>>2]=a-f;o[ne>>2]=m-l;o[te>>2]=g-b;o[ee>>2]=k-v;o[$>>2]=S-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[q>>2]=K+z;o[r>>2]=n+s;o[d>>2]=f+a;o[h>>2]=l+m;o[w>>2]=b+g;o[A>>2]=v+k;o[C>>2]=I+S;C=o[x>>2]|0;S=e+124|0;I=o[S>>2]|0;A=e+128|0;k=o[A>>2]|0;v=e+132|0;w=o[v>>2]|0;g=e+136|0;b=o[g>>2]|0;h=e+140|0;m=o[h>>2]|0;l=e+144|0;d=o[l>>2]|0;a=e+148|0;f=o[a>>2]|0;r=e+152|0;s=o[r>>2]|0;n=e+156|0;e=o[n>>2]|0;o[F>>2]=R-C;o[L>>2]=T-I;o[U>>2]=E-k;o[j>>2]=_-w;o[N>>2]=y-b;o[B>>2]=p-m;o[D>>2]=u-d;o[M>>2]=c-f;o[P>>2]=i-s;o[O>>2]=t-e;o[x>>2]=C+R;o[S>>2]=I+T;o[A>>2]=k+E;o[v>>2]=w+_;o[g>>2]=b+y;o[h>>2]=m+p;o[l>>2]=d+u;o[a>>2]=f+c;o[r>>2]=s+i;o[n>>2]=e+t;return}function ci(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;l=t+44|0;h=t+48|0;g=t+52|0;v=t+56|0;A=t+60|0;S=t+64|0;x=t+68|0;O=t+72|0;R=t+76|0;G=t+4|0;z=t+8|0;i=t+12|0;d=t+16|0;p=t+20|0;w=t+24|0;E=t+28|0;C=t+32|0;q=t+36|0;se=(o[G>>2]|0)+(o[l>>2]|0)|0;oe=(o[z>>2]|0)+(o[h>>2]|0)|0;ie=(o[i>>2]|0)+(o[g>>2]|0)|0;re=(o[d>>2]|0)+(o[v>>2]|0)|0;ne=(o[p>>2]|0)+(o[A>>2]|0)|0;te=(o[w>>2]|0)+(o[S>>2]|0)|0;ee=(o[E>>2]|0)+(o[x>>2]|0)|0;$=(o[C>>2]|0)+(o[O>>2]|0)|0;X=(o[q>>2]|0)+(o[R>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[l>>2]|0)-(o[G>>2]|0)|0;z=(o[h>>2]|0)-(o[z>>2]|0)|0;i=(o[g>>2]|0)-(o[i>>2]|0)|0;d=(o[v>>2]|0)-(o[d>>2]|0)|0;p=(o[A>>2]|0)-(o[p>>2]|0)|0;w=(o[S>>2]|0)-(o[w>>2]|0)|0;E=(o[x>>2]|0)-(o[E>>2]|0)|0;C=(o[O>>2]|0)-(o[C>>2]|0)|0;q=(o[R>>2]|0)-(o[q>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=z;z=e+52|0;o[z>>2]=i;i=e+56|0;o[i>>2]=d;d=e+60|0;o[d>>2]=p;p=e+64|0;o[p>>2]=w;w=e+68|0;o[w>>2]=E;E=e+72|0;o[E>>2]=C;C=e+76|0;o[C>>2]=q;q=e+80|0;Xr(q,e,n);Xr(X,X,n+40|0);R=e+120|0;Xr(R,n+80|0,t+120|0);O=o[t+80>>2]<<1;x=o[t+84>>2]<<1;S=o[t+88>>2]<<1;A=o[t+92>>2]<<1;v=o[t+96>>2]<<1;g=o[t+100>>2]<<1;h=o[t+104>>2]<<1;l=o[t+108>>2]<<1;a=o[t+112>>2]<<1;r=o[t+116>>2]<<1;J=o[q>>2]|0;F=e+84|0;W=o[F>>2]|0;L=e+88|0;H=o[L>>2]|0;U=e+92|0;t=o[U>>2]|0;j=e+96|0;s=o[j>>2]|0;N=e+100|0;c=o[N>>2]|0;B=e+104|0;m=o[B>>2]|0;D=e+108|0;y=o[D>>2]|0;M=e+112|0;k=o[M>>2]|0;P=e+116|0;T=o[P>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[z>>2]|0;n=o[i>>2]|0;f=o[d>>2]|0;u=o[p>>2]|0;b=o[w>>2]|0;_=o[E>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=t-K;o[ie>>2]=s-n;o[re>>2]=c-f;o[ne>>2]=m-u;o[te>>2]=y-b;o[ee>>2]=k-_;o[$>>2]=T-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[z>>2]=K+t;o[i>>2]=n+s;o[d>>2]=f+c;o[p>>2]=u+m;o[w>>2]=b+y;o[E>>2]=_+k;o[C>>2]=I+T;C=o[R>>2]|0;T=e+124|0;I=o[T>>2]|0;E=e+128|0;k=o[E>>2]|0;_=e+132|0;w=o[_>>2]|0;y=e+136|0;b=o[y>>2]|0;p=e+140|0;m=o[p>>2]|0;u=e+144|0;d=o[u>>2]|0;c=e+148|0;f=o[c>>2]|0;i=e+152|0;s=o[i>>2]|0;n=e+156|0;t=o[n>>2]|0;o[q>>2]=C+O;o[F>>2]=I+x;o[L>>2]=k+S;o[U>>2]=w+A;o[j>>2]=b+v;o[N>>2]=m+g;o[B>>2]=d+h;o[D>>2]=f+l;o[M>>2]=s+a;o[P>>2]=t+r;o[R>>2]=O-C;o[T>>2]=x-I;o[E>>2]=S-k;o[_>>2]=A-w;o[y>>2]=v-b;o[p>>2]=g-m;o[u>>2]=h-d;o[c>>2]=l-f;o[i>>2]=a-s;o[n>>2]=r-t;return}function fi(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;c=t+44|0;u=t+48|0;p=t+52|0;y=t+56|0;_=t+60|0;E=t+64|0;T=t+68|0;R=t+72|0;x=t+76|0;G=t+4|0;q=t+8|0;r=t+12|0;d=t+16|0;h=t+20|0;w=t+24|0;A=t+28|0;C=t+32|0;F=t+36|0;se=(o[G>>2]|0)+(o[c>>2]|0)|0;oe=(o[q>>2]|0)+(o[u>>2]|0)|0;ie=(o[r>>2]|0)+(o[p>>2]|0)|0;re=(o[d>>2]|0)+(o[y>>2]|0)|0;ne=(o[h>>2]|0)+(o[_>>2]|0)|0;te=(o[w>>2]|0)+(o[E>>2]|0)|0;ee=(o[A>>2]|0)+(o[T>>2]|0)|0;$=(o[C>>2]|0)+(o[R>>2]|0)|0;X=(o[F>>2]|0)+(o[x>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[c>>2]|0)-(o[G>>2]|0)|0;q=(o[u>>2]|0)-(o[q>>2]|0)|0;r=(o[p>>2]|0)-(o[r>>2]|0)|0;d=(o[y>>2]|0)-(o[d>>2]|0)|0;h=(o[_>>2]|0)-(o[h>>2]|0)|0;w=(o[E>>2]|0)-(o[w>>2]|0)|0;A=(o[T>>2]|0)-(o[A>>2]|0)|0;C=(o[R>>2]|0)-(o[C>>2]|0)|0;F=(o[x>>2]|0)-(o[F>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=q;q=e+52|0;o[q>>2]=r;r=e+56|0;o[r>>2]=d;d=e+60|0;o[d>>2]=h;h=e+64|0;o[h>>2]=w;w=e+68|0;o[w>>2]=A;A=e+72|0;o[A>>2]=C;C=e+76|0;o[C>>2]=F;F=e+80|0;Xr(F,e,n+40|0);Xr(X,X,n);x=e+120|0;Xr(x,n+80|0,t+120|0);R=o[t+80>>2]<<1;T=o[t+84>>2]<<1;E=o[t+88>>2]<<1;_=o[t+92>>2]<<1;y=o[t+96>>2]<<1;p=o[t+100>>2]<<1;u=o[t+104>>2]<<1;c=o[t+108>>2]<<1;i=o[t+112>>2]<<1;t=o[t+116>>2]<<1;J=o[F>>2]|0;L=e+84|0;W=o[L>>2]|0;U=e+88|0;H=o[U>>2]|0;j=e+92|0;z=o[j>>2]|0;N=e+96|0;s=o[N>>2]|0;B=e+100|0;a=o[B>>2]|0;D=e+104|0;m=o[D>>2]|0;M=e+108|0;g=o[M>>2]|0;P=e+112|0;k=o[P>>2]|0;O=e+116|0;S=o[O>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[q>>2]|0;n=o[r>>2]|0;f=o[d>>2]|0;l=o[h>>2]|0;b=o[w>>2]|0;v=o[A>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=z-K;o[ie>>2]=s-n;o[re>>2]=a-f;o[ne>>2]=m-l;o[te>>2]=g-b;o[ee>>2]=k-v;o[$>>2]=S-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[q>>2]=K+z;o[r>>2]=n+s;o[d>>2]=f+a;o[h>>2]=l+m;o[w>>2]=b+g;o[A>>2]=v+k;o[C>>2]=I+S;C=o[x>>2]|0;S=e+124|0;I=o[S>>2]|0;A=e+128|0;k=o[A>>2]|0;v=e+132|0;w=o[v>>2]|0;g=e+136|0;b=o[g>>2]|0;h=e+140|0;m=o[h>>2]|0;l=e+144|0;d=o[l>>2]|0;a=e+148|0;f=o[a>>2]|0;r=e+152|0;s=o[r>>2]|0;n=e+156|0;e=o[n>>2]|0;o[F>>2]=R-C;o[L>>2]=T-I;o[U>>2]=E-k;o[j>>2]=_-w;o[N>>2]=y-b;o[B>>2]=p-m;o[D>>2]=u-d;o[M>>2]=c-f;o[P>>2]=i-s;o[O>>2]=t-e;o[x>>2]=C+R;o[S>>2]=I+T;o[A>>2]=k+E;o[v>>2]=w+_;o[g>>2]=b+y;o[h>>2]=m+p;o[l>>2]=d+u;o[a>>2]=f+c;o[r>>2]=s+i;o[n>>2]=e+t;return}function li(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0;me=h;h=h+272|0;le=me+240|0;ue=me+192|0;c=me+144|0;f=me+96|0;de=me+48|0;he=me;pe=e+40|0;Qr(pe,t);l=e+80|0;o[l>>2]=1;a=e+84|0;n=a;i=n+36|0;do{o[n>>2]=0;n=n+4|0}while((n|0)<(i|0));Yr(ue,pe);Xr(c,ue,1248);te=ue+4|0;ne=ue+8|0;re=ue+12|0;ie=ue+16|0;oe=ue+20|0;se=ue+24|0;ae=ue+28|0;ce=ue+32|0;fe=ue+36|0;C=o[l>>2]|0;R=o[a>>2]|0;I=o[e+88>>2]|0;S=o[e+92>>2]|0;E=o[e+96>>2]|0;w=o[e+100>>2]|0;i=o[e+104>>2]|0;ee=o[e+108>>2]|0;Z=o[e+112>>2]|0;X=o[e+116>>2]|0;v=(o[ue>>2]|0)-C|0;_=(o[te>>2]|0)-R|0;l=(o[ne>>2]|0)-I|0;u=(o[re>>2]|0)-S|0;d=(o[ie>>2]|0)-E|0;p=(o[oe>>2]|0)-w|0;m=(o[se>>2]|0)-i|0;g=(o[ae>>2]|0)-ee|0;y=(o[ce>>2]|0)-Z|0;b=(o[fe>>2]|0)-X|0;o[ue>>2]=v;o[te>>2]=_;o[ne>>2]=l;o[re>>2]=u;o[ie>>2]=d;o[oe>>2]=p;o[se>>2]=m;o[ae>>2]=g;o[ce>>2]=y;o[fe>>2]=b;x=c+4|0;T=c+8|0;k=c+12|0;A=c+16|0;a=c+20|0;n=c+24|0;$=c+28|0;J=c+32|0;Y=c+36|0;R=(o[x>>2]|0)+R|0;I=(o[T>>2]|0)+I|0;S=(o[k>>2]|0)+S|0;E=(o[A>>2]|0)+E|0;w=(o[a>>2]|0)+w|0;i=(o[n>>2]|0)+i|0;ee=(o[$>>2]|0)+ee|0;Z=(o[J>>2]|0)+Z|0;X=(o[Y>>2]|0)+X|0;o[c>>2]=(o[c>>2]|0)+C;o[x>>2]=R;o[T>>2]=I;o[k>>2]=S;o[A>>2]=E;o[a>>2]=w;o[n>>2]=i;o[$>>2]=ee;o[J>>2]=Z;o[Y>>2]=X;Yr(f,c);Xr(f,f,c);Yr(e,f);Xr(e,e,c);Xr(e,e,ue);Zr(e,e);Xr(e,e,f);Xr(e,e,ue);Yr(de,e);Xr(de,de,c);Y=de+4|0;X=de+8|0;J=de+12|0;Z=de+16|0;$=de+20|0;ee=de+24|0;n=de+28|0;i=de+32|0;a=de+36|0;f=(o[Y>>2]|0)-_|0;l=(o[X>>2]|0)-l|0;u=(o[J>>2]|0)-u|0;d=(o[Z>>2]|0)-d|0;p=(o[$>>2]|0)-p|0;m=(o[ee>>2]|0)-m|0;g=(o[n>>2]|0)-g|0;y=(o[i>>2]|0)-y|0;b=(o[a>>2]|0)-b|0;o[he>>2]=(o[de>>2]|0)-v;c=he+4|0;o[c>>2]=f;f=he+8|0;o[f>>2]=l;l=he+12|0;o[l>>2]=u;u=he+16|0;o[u>>2]=d;d=he+20|0;o[d>>2]=p;p=he+24|0;o[p>>2]=m;m=he+28|0;o[m>>2]=g;g=he+32|0;o[g>>2]=y;y=he+36|0;o[y>>2]=b;Jr(le,he);b=le+1|0;v=le+2|0;_=le+3|0;w=le+4|0;A=le+5|0;E=le+6|0;k=le+7|0;S=le+8|0;T=le+9|0;I=le+10|0;x=le+11|0;R=le+12|0;C=le+13|0;O=le+14|0;P=le+15|0;M=le+16|0;D=le+17|0;B=le+18|0;N=le+19|0;j=le+20|0;U=le+21|0;L=le+22|0;F=le+23|0;q=le+24|0;z=le+25|0;K=le+26|0;G=le+27|0;H=le+28|0;V=le+29|0;Q=le+30|0;W=le+31|0;do{if((r[b>>0]|r[le>>0]|r[v>>0]|r[_>>0]|r[w>>0]|r[A>>0]|r[E>>0]|r[k>>0]|r[S>>0]|r[T>>0]|r[I>>0]|r[x>>0]|r[R>>0]|r[C>>0]|r[O>>0]|r[P>>0]|r[M>>0]|r[D>>0]|r[B>>0]|r[N>>0]|r[j>>0]|r[U>>0]|r[L>>0]|r[F>>0]|r[q>>0]|r[z>>0]|r[K>>0]|r[G>>0]|r[H>>0]|r[V>>0]|r[Q>>0]|r[W>>0])<<24>>24){te=(o[te>>2]|0)+(o[Y>>2]|0)|0;ne=(o[ne>>2]|0)+(o[X>>2]|0)|0;re=(o[re>>2]|0)+(o[J>>2]|0)|0;ie=(o[ie>>2]|0)+(o[Z>>2]|0)|0;oe=(o[oe>>2]|0)+(o[$>>2]|0)|0;se=(o[se>>2]|0)+(o[ee>>2]|0)|0;ae=(o[ae>>2]|0)+(o[n>>2]|0)|0;ce=(o[ce>>2]|0)+(o[i>>2]|0)|0;fe=(o[fe>>2]|0)+(o[a>>2]|0)|0;o[he>>2]=(o[ue>>2]|0)+(o[de>>2]|0);o[c>>2]=te;o[f>>2]=ne;o[l>>2]=re;o[u>>2]=ie;o[d>>2]=oe;o[p>>2]=se;o[m>>2]=ae;o[g>>2]=ce;o[y>>2]=fe;Jr(le,he);if(!((r[b>>0]|r[le>>0]|r[v>>0]|r[_>>0]|r[w>>0]|r[A>>0]|r[E>>0]|r[k>>0]|r[S>>0]|r[T>>0]|r[I>>0]|r[x>>0]|r[R>>0]|r[C>>0]|r[O>>0]|r[P>>0]|r[M>>0]|r[D>>0]|r[B>>0]|r[N>>0]|r[j>>0]|r[U>>0]|r[L>>0]|r[F>>0]|r[q>>0]|r[z>>0]|r[K>>0]|r[G>>0]|r[H>>0]|r[V>>0]|r[Q>>0]|r[W>>0])<<24>>24)){Xr(e,e,1296);break}else{pe=-1;h=me;return pe|0}}}while(0);Jr(le,e);if(((s[t+31>>0]|0)>>>7|0)==(r[le>>0]&1|0)){Z=e+4|0;ee=e+8|0;ne=e+12|0;ie=e+16|0;se=e+20|0;ce=e+24|0;t=e+28|0;ue=e+32|0;he=e+36|0;J=0-(o[Z>>2]|0)|0;$=0-(o[ee>>2]|0)|0;te=0-(o[ne>>2]|0)|0;re=0-(o[ie>>2]|0)|0;oe=0-(o[se>>2]|0)|0;ae=0-(o[ce>>2]|0)|0;fe=0-(o[t>>2]|0)|0;le=0-(o[ue>>2]|0)|0;de=0-(o[he>>2]|0)|0;o[e>>2]=0-(o[e>>2]|0);o[Z>>2]=J;o[ee>>2]=$;o[ne>>2]=te;o[ie>>2]=re;o[se>>2]=oe;o[ce>>2]=ae;o[t>>2]=fe;o[ue>>2]=le;o[he>>2]=de}Xr(e+120|0,e,pe);pe=0;h=me;return pe|0}function ui(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0;v=h;h=h+592|0;p=v+464|0;g=v;y=v+304|0;m=v+184|0;b=v+64|0;i=r[t>>0]|0;r[g>>0]=i&15;r[g+1>>0]=(i&255)>>>4;i=r[t+1>>0]|0;r[g+2>>0]=i&15;r[g+3>>0]=(i&255)>>>4;i=r[t+2>>0]|0;r[g+4>>0]=i&15;r[g+5>>0]=(i&255)>>>4;i=r[t+3>>0]|0;r[g+6>>0]=i&15;r[g+7>>0]=(i&255)>>>4;i=r[t+4>>0]|0;r[g+8>>0]=i&15;r[g+9>>0]=(i&255)>>>4;i=r[t+5>>0]|0;r[g+10>>0]=i&15;r[g+11>>0]=(i&255)>>>4;i=r[t+6>>0]|0;r[g+12>>0]=i&15;r[g+13>>0]=(i&255)>>>4;i=r[t+7>>0]|0;r[g+14>>0]=i&15;r[g+15>>0]=(i&255)>>>4;i=r[t+8>>0]|0;r[g+16>>0]=i&15;r[g+17>>0]=(i&255)>>>4;i=r[t+9>>0]|0;r[g+18>>0]=i&15;r[g+19>>0]=(i&255)>>>4;i=r[t+10>>0]|0;r[g+20>>0]=i&15;r[g+21>>0]=(i&255)>>>4;i=r[t+11>>0]|0;r[g+22>>0]=i&15;r[g+23>>0]=(i&255)>>>4;i=r[t+12>>0]|0;r[g+24>>0]=i&15;r[g+25>>0]=(i&255)>>>4;i=r[t+13>>0]|0;r[g+26>>0]=i&15;r[g+27>>0]=(i&255)>>>4;i=r[t+14>>0]|0;r[g+28>>0]=i&15;r[g+29>>0]=(i&255)>>>4;i=r[t+15>>0]|0;r[g+30>>0]=i&15;r[g+31>>0]=(i&255)>>>4;i=r[t+16>>0]|0;r[g+32>>0]=i&15;r[g+33>>0]=(i&255)>>>4;i=r[t+17>>0]|0;r[g+34>>0]=i&15;r[g+35>>0]=(i&255)>>>4;i=r[t+18>>0]|0;r[g+36>>0]=i&15;r[g+37>>0]=(i&255)>>>4;i=r[t+19>>0]|0;r[g+38>>0]=i&15;r[g+39>>0]=(i&255)>>>4;i=r[t+20>>0]|0;r[g+40>>0]=i&15;r[g+41>>0]=(i&255)>>>4;i=r[t+21>>0]|0;r[g+42>>0]=i&15;r[g+43>>0]=(i&255)>>>4;i=r[t+22>>0]|0;r[g+44>>0]=i&15;r[g+45>>0]=(i&255)>>>4;i=r[t+23>>0]|0;r[g+46>>0]=i&15;r[g+47>>0]=(i&255)>>>4;i=r[t+24>>0]|0;r[g+48>>0]=i&15;r[g+49>>0]=(i&255)>>>4;i=r[t+25>>0]|0;r[g+50>>0]=i&15;r[g+51>>0]=(i&255)>>>4;i=r[t+26>>0]|0;r[g+52>>0]=i&15;r[g+53>>0]=(i&255)>>>4;i=r[t+27>>0]|0;r[g+54>>0]=i&15;r[g+55>>0]=(i&255)>>>4;i=r[t+28>>0]|0;r[g+56>>0]=i&15;r[g+57>>0]=(i&255)>>>4;i=r[t+29>>0]|0;r[g+58>>0]=i&15;r[g+59>>0]=(i&255)>>>4;i=r[t+30>>0]|0;r[g+60>>0]=i&15;r[g+61>>0]=(i&255)>>>4;t=r[t+31>>0]|0;r[g+62>>0]=t&15;i=g+63|0;r[i>>0]=(t&255)>>>4;t=0;n=0;do{d=g+n|0;u=t+(s[d>>0]|0)|0;t=(u<<24)+134217728>>28;r[d>>0]=u-(t<<4);n=n+1|0}while((n|0)!=63);r[i>>0]=t+(s[i>>0]|0);t=e;n=t+40|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));u=e+40|0;o[u>>2]=1;f=e+44|0;t=f;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));d=e+80|0;o[d>>2]=1;l=e+84|0;t=l;n=t+76|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));n=y+120|0;i=y+40|0;a=y+80|0;c=e+120|0;t=1;do{di(b,t>>>1,r[g+t>>0]|0);ci(y,e,b);Xr(e,y,n);Xr(u,i,a);Xr(d,a,n);Xr(c,y,i);t=t+2|0}while(t>>>0<64);I=o[e+4>>2]|0;S=o[e+8>>2]|0;k=o[e+12>>2]|0;E=o[e+16>>2]|0;A=o[e+20>>2]|0;w=o[e+24>>2]|0;_=o[e+28>>2]|0;t=o[e+32>>2]|0;T=o[e+36>>2]|0;o[p>>2]=o[e>>2];o[p+4>>2]=I;o[p+8>>2]=S;o[p+12>>2]=k;o[p+16>>2]=E;o[p+20>>2]=A;o[p+24>>2]=w;o[p+28>>2]=_;o[p+32>>2]=t;o[p+36>>2]=T;T=o[f>>2]|0;t=o[e+48>>2]|0;f=o[e+52>>2]|0;_=o[e+56>>2]|0;w=o[e+60>>2]|0;A=o[e+64>>2]|0;E=o[e+68>>2]|0;k=o[e+72>>2]|0;S=o[e+76>>2]|0;o[p+40>>2]=o[u>>2];o[p+44>>2]=T;o[p+48>>2]=t;o[p+52>>2]=f;o[p+56>>2]=_;o[p+60>>2]=w;o[p+64>>2]=A;o[p+68>>2]=E;o[p+72>>2]=k;o[p+76>>2]=S;S=o[l>>2]|0;k=o[e+88>>2]|0;E=o[e+92>>2]|0;A=o[e+96>>2]|0;w=o[e+100>>2]|0;_=o[e+104>>2]|0;f=o[e+108>>2]|0;l=o[e+112>>2]|0;t=o[e+116>>2]|0;o[p+80>>2]=o[d>>2];o[p+84>>2]=S;o[p+88>>2]=k;o[p+92>>2]=E;o[p+96>>2]=A;o[p+100>>2]=w;o[p+104>>2]=_;o[p+108>>2]=f;o[p+112>>2]=l;o[p+116>>2]=t;si(y,p);Xr(m,y,n);p=m+40|0;Xr(p,i,a);t=m+80|0;Xr(t,a,n);si(y,m);Xr(m,y,n);Xr(p,i,a);Xr(t,a,n);si(y,m);Xr(m,y,n);Xr(p,i,a);Xr(t,a,n);si(y,m);Xr(e,y,n);Xr(u,i,a);Xr(d,a,n);Xr(c,y,i);t=0;do{di(b,t>>>1,r[g+t>>0]|0);ci(y,e,b);Xr(e,y,n);Xr(u,i,a);Xr(d,a,n);Xr(c,y,i);t=t+2|0}while(t>>>0<64);h=v;return}function di(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0;r=n<<24>>24;b=0-((n&255)>>>7&255)|0;n=r-((b&r)<<1)&255;o[e>>2]=1;r=e+4|0;v=r;_=v+36|0;do{o[v>>2]=0;v=v+4|0}while((v|0)<(_|0));i=e+40|0;o[i>>2]=1;s=e+44|0;a=e+80|0;c=ks((n^1)&255|0,0,-1,-1)|0;c=Cs(c|0,T|0,63)|0;f=1344+(t*960|0)|0;l=e+8|0;u=e+12|0;d=e+16|0;h=e+20|0;p=e+24|0;m=e+28|0;g=e+32|0;y=e+36|0;v=s;_=v+76|0;do{o[v>>2]=0;v=v+4|0}while((v|0)<(_|0));_e=0-c|0;ye=o[1344+(t*960|0)+4>>2]&_e;ge=o[1344+(t*960|0)+8>>2]&_e;me=o[1344+(t*960|0)+12>>2]&_e;pe=o[1344+(t*960|0)+16>>2]&_e;he=o[1344+(t*960|0)+20>>2]&_e;de=o[1344+(t*960|0)+24>>2]&_e;ue=o[1344+(t*960|0)+28>>2]&_e;le=o[1344+(t*960|0)+32>>2]&_e;fe=o[1344+(t*960|0)+36>>2]&_e;be=(o[f>>2]^1)&_e^1;o[e>>2]=be;o[r>>2]=ye;o[l>>2]=ge;o[u>>2]=me;o[d>>2]=pe;o[h>>2]=he;o[p>>2]=de;o[m>>2]=ue;o[g>>2]=le;o[y>>2]=fe;ne=e+48|0;$=e+52|0;X=e+56|0;Q=e+60|0;G=e+64|0;q=e+68|0;U=e+72|0;B=e+76|0;oe=o[1344+(t*960|0)+44>>2]&_e;re=o[1344+(t*960|0)+48>>2]&_e;ee=o[1344+(t*960|0)+52>>2]&_e;J=o[1344+(t*960|0)+56>>2]&_e;W=o[1344+(t*960|0)+60>>2]&_e;H=o[1344+(t*960|0)+64>>2]&_e;z=o[1344+(t*960|0)+68>>2]&_e;L=o[1344+(t*960|0)+72>>2]&_e;N=o[1344+(t*960|0)+76>>2]&_e;ae=(o[1344+(t*960|0)+40>>2]^1)&_e^1;o[i>>2]=ae;o[s>>2]=oe;o[ne>>2]=re;o[$>>2]=ee;o[X>>2]=J;o[Q>>2]=W;o[G>>2]=H;o[q>>2]=z;o[U>>2]=L;o[B>>2]=N;D=o[a>>2]|0;P=e+84|0;M=o[P>>2]|0;C=e+88|0;O=o[C>>2]|0;x=e+92|0;R=o[x>>2]|0;S=e+96|0;I=o[S>>2]|0;E=e+100|0;k=o[E>>2]|0;w=e+104|0;A=o[w>>2]|0;c=e+108|0;Z=o[c>>2]|0;v=e+112|0;f=o[v>>2]|0;_=e+116|0;se=o[_>>2]|0;ie=(o[1344+(t*960|0)+84>>2]^M)&_e;te=(o[1344+(t*960|0)+88>>2]^O)&_e;Y=(o[1344+(t*960|0)+92>>2]^R)&_e;V=(o[1344+(t*960|0)+96>>2]^I)&_e;K=(o[1344+(t*960|0)+100>>2]^k)&_e;F=(o[1344+(t*960|0)+104>>2]^A)&_e;j=(o[1344+(t*960|0)+108>>2]^Z)&_e;ce=(o[1344+(t*960|0)+112>>2]^f)&_e;ve=(o[1344+(t*960|0)+116>>2]^se)&_e;D=(o[1344+(t*960|0)+80>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^2)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+124>>2]^ye)&ve;j=(o[1344+(t*960|0)+128>>2]^ge)&ve;F=(o[1344+(t*960|0)+132>>2]^me)&ve;K=(o[1344+(t*960|0)+136>>2]^pe)&ve;V=(o[1344+(t*960|0)+140>>2]^he)&ve;Y=(o[1344+(t*960|0)+144>>2]^de)&ve;te=(o[1344+(t*960|0)+148>>2]^ue)&ve;ie=(o[1344+(t*960|0)+152>>2]^le)&ve;_e=(o[1344+(t*960|0)+156>>2]^fe)&ve;be=(o[1344+(t*960|0)+120>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=te^ue;o[m>>2]=ue;le=ie^le;o[g>>2]=le;fe=_e^fe;o[y>>2]=fe;_e=(o[1344+(t*960|0)+164>>2]^oe)&ve;ie=(o[1344+(t*960|0)+168>>2]^re)&ve;te=(o[1344+(t*960|0)+172>>2]^ee)&ve;Y=(o[1344+(t*960|0)+176>>2]^J)&ve;V=(o[1344+(t*960|0)+180>>2]^W)&ve;K=(o[1344+(t*960|0)+184>>2]^H)&ve;F=(o[1344+(t*960|0)+188>>2]^z)&ve;j=(o[1344+(t*960|0)+192>>2]^L)&ve;ce=(o[1344+(t*960|0)+196>>2]^N)&ve;ae=(o[1344+(t*960|0)+160>>2]^ae)&ve^ae;o[i>>2]=ae;oe=_e^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;N=ce^N;o[B>>2]=N;ce=(o[1344+(t*960|0)+204>>2]^M)&ve;j=(o[1344+(t*960|0)+208>>2]^O)&ve;F=(o[1344+(t*960|0)+212>>2]^R)&ve;K=(o[1344+(t*960|0)+216>>2]^I)&ve;V=(o[1344+(t*960|0)+220>>2]^k)&ve;Y=(o[1344+(t*960|0)+224>>2]^A)&ve;te=(o[1344+(t*960|0)+228>>2]^Z)&ve;ie=(o[1344+(t*960|0)+232>>2]^f)&ve;_e=(o[1344+(t*960|0)+236>>2]^se)&ve;D=(o[1344+(t*960|0)+200>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;Z=te^Z;o[c>>2]=Z;f=ie^f;o[v>>2]=f;se=_e^se;o[_>>2]=se;_e=ks((n^3)&255|0,0,-1,-1)|0;_e=Cs(_e|0,T|0,63)|0;_e=0-_e|0;ie=(o[1344+(t*960|0)+244>>2]^ye)&_e;te=(o[1344+(t*960|0)+248>>2]^ge)&_e;Y=(o[1344+(t*960|0)+252>>2]^me)&_e;V=(o[1344+(t*960|0)+256>>2]^pe)&_e;K=(o[1344+(t*960|0)+260>>2]^he)&_e;F=(o[1344+(t*960|0)+264>>2]^de)&_e;j=(o[1344+(t*960|0)+268>>2]^ue)&_e;ce=(o[1344+(t*960|0)+272>>2]^le)&_e;ve=(o[1344+(t*960|0)+276>>2]^fe)&_e;be=(o[1344+(t*960|0)+240>>2]^be)&_e^be;o[e>>2]=be;ye=ie^ye;o[r>>2]=ye;ge=te^ge;o[l>>2]=ge;me=Y^me;o[u>>2]=me;pe=V^pe;o[d>>2]=pe;he=K^he;o[h>>2]=he;de=F^de;o[p>>2]=de;ue=j^ue;o[m>>2]=ue;le=ce^le;o[g>>2]=le;fe=ve^fe;o[y>>2]=fe;ve=(o[1344+(t*960|0)+284>>2]^oe)&_e;ce=(o[1344+(t*960|0)+288>>2]^re)&_e;j=(o[1344+(t*960|0)+292>>2]^ee)&_e;F=(o[1344+(t*960|0)+296>>2]^J)&_e;K=(o[1344+(t*960|0)+300>>2]^W)&_e;V=(o[1344+(t*960|0)+304>>2]^H)&_e;Y=(o[1344+(t*960|0)+308>>2]^z)&_e;te=(o[1344+(t*960|0)+312>>2]^L)&_e;ie=(o[1344+(t*960|0)+316>>2]^N)&_e;ae=(o[1344+(t*960|0)+280>>2]^ae)&_e^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ce^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=F^J;o[X>>2]=J;W=K^W;o[Q>>2]=W;H=V^H;o[G>>2]=H;z=Y^z;o[q>>2]=z;L=te^L;o[U>>2]=L;N=ie^N;o[B>>2]=N;ie=(o[1344+(t*960|0)+324>>2]^M)&_e;te=(o[1344+(t*960|0)+328>>2]^O)&_e;Y=(o[1344+(t*960|0)+332>>2]^R)&_e;V=(o[1344+(t*960|0)+336>>2]^I)&_e;K=(o[1344+(t*960|0)+340>>2]^k)&_e;F=(o[1344+(t*960|0)+344>>2]^A)&_e;j=(o[1344+(t*960|0)+348>>2]^Z)&_e;ce=(o[1344+(t*960|0)+352>>2]^f)&_e;ve=(o[1344+(t*960|0)+356>>2]^se)&_e;D=(o[1344+(t*960|0)+320>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^4)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+364>>2]^ye)&ve;j=(o[1344+(t*960|0)+368>>2]^ge)&ve;F=(o[1344+(t*960|0)+372>>2]^me)&ve;K=(o[1344+(t*960|0)+376>>2]^pe)&ve;V=(o[1344+(t*960|0)+380>>2]^he)&ve;Y=(o[1344+(t*960|0)+384>>2]^de)&ve;te=(o[1344+(t*960|0)+388>>2]^ue)&ve;ie=(o[1344+(t*960|0)+392>>2]^le)&ve;_e=(o[1344+(t*960|0)+396>>2]^fe)&ve;be=(o[1344+(t*960|0)+360>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=te^ue;o[m>>2]=ue;le=ie^le;o[g>>2]=le;fe=_e^fe;o[y>>2]=fe;_e=(o[1344+(t*960|0)+404>>2]^oe)&ve;ie=(o[1344+(t*960|0)+408>>2]^re)&ve;te=(o[1344+(t*960|0)+412>>2]^ee)&ve;Y=(o[1344+(t*960|0)+416>>2]^J)&ve;V=(o[1344+(t*960|0)+420>>2]^W)&ve;K=(o[1344+(t*960|0)+424>>2]^H)&ve;F=(o[1344+(t*960|0)+428>>2]^z)&ve;j=(o[1344+(t*960|0)+432>>2]^L)&ve;ce=(o[1344+(t*960|0)+436>>2]^N)&ve;ae=(o[1344+(t*960|0)+400>>2]^ae)&ve^ae;o[i>>2]=ae;oe=_e^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;N=ce^N;o[B>>2]=N;ce=(o[1344+(t*960|0)+444>>2]^M)&ve;j=(o[1344+(t*960|0)+448>>2]^O)&ve;F=(o[1344+(t*960|0)+452>>2]^R)&ve;K=(o[1344+(t*960|0)+456>>2]^I)&ve;V=(o[1344+(t*960|0)+460>>2]^k)&ve;Y=(o[1344+(t*960|0)+464>>2]^A)&ve;te=(o[1344+(t*960|0)+468>>2]^Z)&ve;ie=(o[1344+(t*960|0)+472>>2]^f)&ve;_e=(o[1344+(t*960|0)+476>>2]^se)&ve;D=(o[1344+(t*960|0)+440>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;Z=te^Z;o[c>>2]=Z;f=ie^f;o[v>>2]=f;se=_e^se;o[_>>2]=se;_e=ks((n^5)&255|0,0,-1,-1)|0;_e=Cs(_e|0,T|0,63)|0;_e=0-_e|0;ie=(o[1344+(t*960|0)+484>>2]^ye)&_e;te=(o[1344+(t*960|0)+488>>2]^ge)&_e;Y=(o[1344+(t*960|0)+492>>2]^me)&_e;V=(o[1344+(t*960|0)+496>>2]^pe)&_e;K=(o[1344+(t*960|0)+500>>2]^he)&_e;F=(o[1344+(t*960|0)+504>>2]^de)&_e;j=(o[1344+(t*960|0)+508>>2]^ue)&_e;ce=(o[1344+(t*960|0)+512>>2]^le)&_e;ve=(o[1344+(t*960|0)+516>>2]^fe)&_e;be=(o[1344+(t*960|0)+480>>2]^be)&_e^be;o[e>>2]=be;ye=ie^ye;o[r>>2]=ye;ge=te^ge;o[l>>2]=ge;me=Y^me;o[u>>2]=me;pe=V^pe;o[d>>2]=pe;he=K^he;o[h>>2]=he;de=F^de;o[p>>2]=de;ue=j^ue;o[m>>2]=ue;le=ce^le;o[g>>2]=le;fe=ve^fe;o[y>>2]=fe;ve=(o[1344+(t*960|0)+524>>2]^oe)&_e;ce=(o[1344+(t*960|0)+528>>2]^re)&_e;j=(o[1344+(t*960|0)+532>>2]^ee)&_e;F=(o[1344+(t*960|0)+536>>2]^J)&_e;K=(o[1344+(t*960|0)+540>>2]^W)&_e;V=(o[1344+(t*960|0)+544>>2]^H)&_e;Y=(o[1344+(t*960|0)+548>>2]^z)&_e;te=(o[1344+(t*960|0)+552>>2]^L)&_e;ie=(o[1344+(t*960|0)+556>>2]^N)&_e;ae=(o[1344+(t*960|0)+520>>2]^ae)&_e^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ce^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=F^J;o[X>>2]=J;W=K^W;o[Q>>2]=W;H=V^H;o[G>>2]=H;z=Y^z;o[q>>2]=z;L=te^L;o[U>>2]=L;N=ie^N;o[B>>2]=N;ie=(o[1344+(t*960|0)+564>>2]^M)&_e;te=(o[1344+(t*960|0)+568>>2]^O)&_e;Y=(o[1344+(t*960|0)+572>>2]^R)&_e;V=(o[1344+(t*960|0)+576>>2]^I)&_e;K=(o[1344+(t*960|0)+580>>2]^k)&_e;F=(o[1344+(t*960|0)+584>>2]^A)&_e;j=(o[1344+(t*960|0)+588>>2]^Z)&_e;ce=(o[1344+(t*960|0)+592>>2]^f)&_e;ve=(o[1344+(t*960|0)+596>>2]^se)&_e;D=(o[1344+(t*960|0)+560>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^6)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+604>>2]^ye)&ve;j=(o[1344+(t*960|0)+608>>2]^ge)&ve;F=(o[1344+(t*960|0)+612>>2]^me)&ve;K=(o[1344+(t*960|0)+616>>2]^pe)&ve;V=(o[1344+(t*960|0)+620>>2]^he)&ve;Y=(o[1344+(t*960|0)+624>>2]^de)&ve;te=(o[1344+(t*960|0)+628>>2]^ue)&ve;ie=(o[1344+(t*960|0)+632>>2]^le)&ve;_e=(o[1344+(t*960|0)+636>>2]^fe)&ve;be=(o[1344+(t*960|0)+600>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=te^ue;o[m>>2]=ue;le=ie^le;o[g>>2]=le;fe=_e^fe;o[y>>2]=fe;_e=(o[1344+(t*960|0)+644>>2]^oe)&ve;ie=(o[1344+(t*960|0)+648>>2]^re)&ve;te=(o[1344+(t*960|0)+652>>2]^ee)&ve;Y=(o[1344+(t*960|0)+656>>2]^J)&ve;V=(o[1344+(t*960|0)+660>>2]^W)&ve;K=(o[1344+(t*960|0)+664>>2]^H)&ve;F=(o[1344+(t*960|0)+668>>2]^z)&ve;j=(o[1344+(t*960|0)+672>>2]^L)&ve;ce=(o[1344+(t*960|0)+676>>2]^N)&ve;ae=(o[1344+(t*960|0)+640>>2]^ae)&ve^ae;o[i>>2]=ae;oe=_e^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;N=ce^N;o[B>>2]=N;ce=(o[1344+(t*960|0)+684>>2]^M)&ve;j=(o[1344+(t*960|0)+688>>2]^O)&ve;F=(o[1344+(t*960|0)+692>>2]^R)&ve;K=(o[1344+(t*960|0)+696>>2]^I)&ve;V=(o[1344+(t*960|0)+700>>2]^k)&ve;Y=(o[1344+(t*960|0)+704>>2]^A)&ve;te=(o[1344+(t*960|0)+708>>2]^Z)&ve;ie=(o[1344+(t*960|0)+712>>2]^f)&ve;_e=(o[1344+(t*960|0)+716>>2]^se)&ve;D=(o[1344+(t*960|0)+680>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;Z=te^Z;o[c>>2]=Z;f=ie^f;o[v>>2]=f;se=_e^se;o[_>>2]=se;_e=ks((n^7)&255|0,0,-1,-1)|0;_e=Cs(_e|0,T|0,63)|0;_e=0-_e|0;ie=(o[1344+(t*960|0)+724>>2]^ye)&_e;te=(o[1344+(t*960|0)+728>>2]^ge)&_e;Y=(o[1344+(t*960|0)+732>>2]^me)&_e;V=(o[1344+(t*960|0)+736>>2]^pe)&_e;K=(o[1344+(t*960|0)+740>>2]^he)&_e;F=(o[1344+(t*960|0)+744>>2]^de)&_e;j=(o[1344+(t*960|0)+748>>2]^ue)&_e;ce=(o[1344+(t*960|0)+752>>2]^le)&_e;ve=(o[1344+(t*960|0)+756>>2]^fe)&_e;be=(o[1344+(t*960|0)+720>>2]^be)&_e^be;o[e>>2]=be;ye=ie^ye;o[r>>2]=ye;ge=te^ge;o[l>>2]=ge;me=Y^me;o[u>>2]=me;pe=V^pe;o[d>>2]=pe;he=K^he;o[h>>2]=he;de=F^de;o[p>>2]=de;ue=j^ue;o[m>>2]=ue;le=ce^le;o[g>>2]=le;fe=ve^fe;o[y>>2]=fe;ve=(o[1344+(t*960|0)+764>>2]^oe)&_e;ce=(o[1344+(t*960|0)+768>>2]^re)&_e;j=(o[1344+(t*960|0)+772>>2]^ee)&_e;F=(o[1344+(t*960|0)+776>>2]^J)&_e;K=(o[1344+(t*960|0)+780>>2]^W)&_e;V=(o[1344+(t*960|0)+784>>2]^H)&_e;Y=(o[1344+(t*960|0)+788>>2]^z)&_e;te=(o[1344+(t*960|0)+792>>2]^L)&_e;ie=(o[1344+(t*960|0)+796>>2]^N)&_e;ae=(o[1344+(t*960|0)+760>>2]^ae)&_e^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ce^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=F^J;o[X>>2]=J;W=K^W;o[Q>>2]=W;H=V^H;o[G>>2]=H;z=Y^z;o[q>>2]=z;L=te^L;o[U>>2]=L;N=ie^N;o[B>>2]=N;ie=(o[1344+(t*960|0)+804>>2]^M)&_e;te=(o[1344+(t*960|0)+808>>2]^O)&_e;Y=(o[1344+(t*960|0)+812>>2]^R)&_e;V=(o[1344+(t*960|0)+816>>2]^I)&_e;K=(o[1344+(t*960|0)+820>>2]^k)&_e;F=(o[1344+(t*960|0)+824>>2]^A)&_e;j=(o[1344+(t*960|0)+828>>2]^Z)&_e;ce=(o[1344+(t*960|0)+832>>2]^f)&_e;ve=(o[1344+(t*960|0)+836>>2]^se)&_e;D=(o[1344+(t*960|0)+800>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^8)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+844>>2]^ye)&ve;j=(o[1344+(t*960|0)+848>>2]^ge)&ve;F=(o[1344+(t*960|0)+852>>2]^me)&ve;K=(o[1344+(t*960|0)+856>>2]^pe)&ve;V=(o[1344+(t*960|0)+860>>2]^he)&ve;Y=(o[1344+(t*960|0)+864>>2]^de)&ve;n=(o[1344+(t*960|0)+868>>2]^ue)&ve;te=(o[1344+(t*960|0)+872>>2]^le)&ve;ie=(o[1344+(t*960|0)+876>>2]^fe)&ve;be=(o[1344+(t*960|0)+840>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=n^ue;o[m>>2]=ue;le=te^le;o[g>>2]=le;fe=ie^fe;o[y>>2]=fe;ie=(o[1344+(t*960|0)+884>>2]^oe)&ve;te=(o[1344+(t*960|0)+888>>2]^re)&ve;n=(o[1344+(t*960|0)+892>>2]^ee)&ve;Y=(o[1344+(t*960|0)+896>>2]^J)&ve;V=(o[1344+(t*960|0)+900>>2]^W)&ve;K=(o[1344+(t*960|0)+904>>2]^H)&ve;F=(o[1344+(t*960|0)+908>>2]^z)&ve;j=(o[1344+(t*960|0)+912>>2]^L)&ve;ce=(o[1344+(t*960|0)+916>>2]^N)&ve;ae=(o[1344+(t*960|0)+880>>2]^ae)&ve^ae;o[i>>2]=ae;oe=ie^oe;o[s>>2]=oe;re=te^re;o[ne>>2]=re;ee=n^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;N=ce^N;o[B>>2]=N;ce=(o[1344+(t*960|0)+924>>2]^M)&ve;j=(o[1344+(t*960|0)+928>>2]^O)&ve;F=(o[1344+(t*960|0)+932>>2]^R)&ve;K=(o[1344+(t*960|0)+936>>2]^I)&ve;V=(o[1344+(t*960|0)+940>>2]^k)&ve;Y=(o[1344+(t*960|0)+944>>2]^A)&ve;n=(o[1344+(t*960|0)+948>>2]^Z)&ve;te=(o[1344+(t*960|0)+952>>2]^f)&ve;ie=(o[1344+(t*960|0)+956>>2]^se)&ve;D=(o[1344+(t*960|0)+920>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;n=n^Z;o[c>>2]=n;f=te^f;o[v>>2]=f;t=ie^se;o[_>>2]=t;se=o[r>>2]|0;ie=o[l>>2]|0;te=o[u>>2]|0;Z=o[d>>2]|0;Y=o[h>>2]|0;V=o[p>>2]|0;K=o[m>>2]|0;F=o[g>>2]|0;j=o[y>>2]|0;ce=(ae^be)&b;o[e>>2]=ce^be;o[r>>2]=(oe^ye)&b^ye;o[l>>2]=(re^ge)&b^ge;o[u>>2]=(ee^me)&b^me;o[d>>2]=(J^pe)&b^pe;o[h>>2]=(W^he)&b^he;o[p>>2]=(H^de)&b^de;o[m>>2]=(z^ue)&b^ue;o[g>>2]=(L^le)&b^le;o[y>>2]=(N^fe)&b^fe;o[i>>2]=ce^ae;o[s>>2]=(se^oe)&b^oe;o[ne>>2]=(ie^re)&b^re;o[$>>2]=(te^ee)&b^ee;o[X>>2]=(Z^J)&b^J;o[Q>>2]=(Y^W)&b^W;o[G>>2]=(V^H)&b^H;o[q>>2]=(K^z)&b^z;o[U>>2]=(F^L)&b^L;o[B>>2]=(j^N)&b^N;o[a>>2]=(D^0-D)&b^D;o[P>>2]=(M^0-M)&b^M;o[C>>2]=(O^0-O)&b^O;o[x>>2]=(R^0-R)&b^R;o[S>>2]=(I^0-I)&b^I;o[E>>2]=(k^0-k)&b^k;o[w>>2]=(A^0-A)&b^A;o[c>>2]=(n^0-n)&b^n;o[v>>2]=(f^0-f)&b^f;o[_>>2]=(t^0-t)&b^t;return}function hi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0,c=0,f=0;i=h;h=h+336|0;o=i+144|0;c=i+96|0;s=i+48|0;a=i;f=i+176|0;pi(n,32,t)|0;r[t>>0]=r[t>>0]&-8;n=t+31|0;r[n>>0]=r[n>>0]&63|64;ui(f,t);Wr(c,f+80|0);Xr(s,f,c);Xr(a,f+40|0,c);Jr(e,a);Jr(o,s);n=e+31|0;r[n>>0]=r[n>>0]^r[o>>0]<<7&255;h=i;return}function pi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0;u=h;h=h+208|0;c=u;f=c+72|0;o[f>>2]=0;l=c;o[l>>2]=0;o[l+4>>2]=0;l=c+8|0;o[l>>2]=-205731576;o[l+4>>2]=1779033703;l=c+16|0;o[l>>2]=-2067093701;o[l+4>>2]=-1150833019;l=c+24|0;o[l>>2]=-23791573;o[l+4>>2]=1013904242;l=c+32|0;o[l>>2]=1595750129;o[l+4>>2]=-1521486534;l=c+40|0;o[l>>2]=-1377402159;o[l+4>>2]=1359893119;l=c+48|0;o[l>>2]=725511199;o[l+4>>2]=-1694144372;l=c+56|0;o[l>>2]=-79577749;o[l+4>>2]=528734635;l=c+64|0;o[l>>2]=327033209;o[l+4>>2]=1541459225;if(!e){l=1;h=u;return l|0}e:do{if(t|0){l=c+76|0;s=0;while(1){if(!((s|0)==0&t>>>0>127)){a=128-s|0;a=t>>>0>>0?t:a;if(a|0){i=0;do{r[i+s+(c+76)>>0]=r[e+i>>0]|0;i=i+1|0}while(i>>>0>>0)}s=s+a|0;o[f>>2]=s;e=e+a|0;t=t-a|0;if((s|0)==128){mi(c,l);s=c;s=ks(o[s>>2]|0,o[s+4>>2]|0,1024,0)|0;a=c;o[a>>2]=s;o[a+4>>2]=T;o[f>>2]=0}}else{mi(c,e);s=c;s=ks(o[s>>2]|0,o[s+4>>2]|0,1024,0)|0;a=c;o[a>>2]=s;o[a+4>>2]=T;t=t+-128|0;e=e+128|0}if(!t)break e;s=o[f>>2]|0}}}while(0);l=gi(c,n)|0;h=u;return l|0}function mi(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0;E=h;h=h+704|0;a=E+640|0;w=E;A=e+8|0;n=a;r=A;i=n+64|0;do{o[n>>2]=o[r>>2];n=n+4|0;r=r+4|0}while((n|0)<(i|0));n=0;do{b=t+(n<<3)|0;d=Os(s[b>>0]|0|0,0,56)|0;v=T;u=Os(s[b+1>>0]|0|0,0,48)|0;v=T|v;p=Os(s[b+2>>0]|0|0,0,40)|0;v=v|T|(s[b+3>>0]|0);m=Os(s[b+4>>0]|0|0,0,24)|0;v=v|T;g=Os(s[b+5>>0]|0|0,0,16)|0;v=v|T;y=Os(s[b+6>>0]|0|0,0,8)|0;_=w+(n<<3)|0;o[_>>2]=u|d|p|m|g|y|(s[b+7>>0]|0);o[_+4>>2]=v|T;n=n+1|0}while((n|0)!=16);i=w;n=16;r=o[i>>2]|0;i=o[i+4>>2]|0;do{l=w+(n+-2<<3)|0;k=o[l>>2]|0;l=o[l+4>>2]|0;u=Cs(k|0,l|0,19)|0;p=T;d=Os(k|0,l|0,45)|0;p=p|T;c=Cs(k|0,l|0,61)|0;t=T;f=Os(k|0,l|0,3)|0;t=t|T;l=Cs(k|0,l|0,6)|0;p=t^T^p;t=w+(n+-7<<3)|0;k=o[t>>2]|0;t=o[t+4>>2]|0;b=w+(n+-15<<3)|0;I=r;r=o[b>>2]|0;S=i;i=o[b+4>>2]|0;b=Cs(r|0,i|0,1)|0;v=T;_=Os(r|0,i|0,63)|0;v=v|T;m=Cs(r|0,i|0,8)|0;x=T;g=Os(r|0,i|0,56)|0;x=x|T;y=Cs(r|0,i|0,7)|0;v=x^T^v;t=ks(I|0,S|0,k|0,t|0)|0;p=ks(t|0,T|0,(c|f)^l^(u|d)|0,p|0)|0;v=ks(p|0,T|0,(m|g)^y^(b|_)|0,v|0)|0;_=w+(n<<3)|0;o[_>>2]=v;o[_+4>>2]=T;n=n+1|0}while((n|0)!=80);u=a+56|0;i=a+32|0;c=a+48|0;f=a+40|0;p=a;g=a+8|0;b=a+16|0;_=a+24|0;n=0;r=o[i>>2]|0;i=o[i+4>>2]|0;t=o[c>>2]|0;a=o[f>>2]|0;c=o[c+4>>2]|0;f=o[f+4>>2]|0;l=o[u>>2]|0;u=o[u+4>>2]|0;d=o[p>>2]|0;p=o[p+4>>2]|0;m=o[g>>2]|0;g=o[g+4>>2]|0;y=o[b>>2]|0;b=o[b+4>>2]|0;v=o[_>>2]|0;_=o[_+4>>2]|0;do{S=Cs(r|0,i|0,14)|0;Q=T;I=Os(r|0,i|0,50)|0;Q=Q|T;Y=Cs(r|0,i|0,18)|0;z=T;L=Os(r|0,i|0,46)|0;z=Q^(z|T);Q=Cs(r|0,i|0,41)|0;V=T;B=Os(r|0,i|0,23)|0;V=z^(V|T);z=32064+(n<<3)|0;O=w+(n<<3)|0;N=o[O>>2]|0;O=o[O+4>>2]|0;z=ks(o[z>>2]|0,o[z+4>>2]|0,l|0,u|0)|0;V=ks(z|0,T|0,(S|I)^(Y|L)^(Q|B)|0,V|0)|0;O=ks(V|0,T|0,N|0,O|0)|0;O=ks(O|0,T|0,(a^t)&r^t|0,(f^c)&i^c|0)|0;N=T;V=Cs(d|0,p|0,28)|0;B=T;Q=Os(d|0,p|0,36)|0;B=B|T;L=Cs(d|0,p|0,34)|0;Y=T;I=Os(d|0,p|0,30)|0;Y=B^(Y|T);B=Cs(d|0,p|0,39)|0;S=T;z=Os(d|0,p|0,25)|0;S=Y^(S|T);Y=ks(v|0,_|0,O|0,N|0)|0;F=T;N=ks((m|d)&y|m&d|0,(g|p)&b|g&p|0,O|0,N|0)|0;S=ks(N|0,T|0,(V|Q)^(L|I)^(B|z)|0,S|0)|0;z=T;B=Cs(Y|0,F|0,14)|0;I=T;L=Os(Y|0,F|0,50)|0;I=I|T;Q=Cs(Y|0,F|0,18)|0;V=T;N=Os(Y|0,F|0,46)|0;V=I^(V|T);I=Cs(Y|0,F|0,41)|0;O=T;x=Os(Y|0,F|0,23)|0;O=V^(O|T);V=n|1;H=32064+(V<<3)|0;M=o[H>>2]|0;H=o[H+4>>2]|0;V=w+(V<<3)|0;j=o[V>>2]|0;V=o[V+4>>2]|0;P=ks(Y&(a^r)^a|0,F&(f^i)^f|0,t|0,c|0)|0;H=ks(P|0,T|0,M|0,H|0)|0;V=ks(H|0,T|0,j|0,V|0)|0;O=ks(V|0,T|0,(B|L)^(Q|N)^(I|x)|0,O|0)|0;x=T;I=Cs(S|0,z|0,28)|0;N=T;Q=Os(S|0,z|0,36)|0;N=N|T;L=Cs(S|0,z|0,34)|0;B=T;V=Os(S|0,z|0,30)|0;B=N^(B|T);N=Cs(S|0,z|0,39)|0;j=T;H=Os(S|0,z|0,25)|0;j=ks((I|Q)^(L|V)^(N|H)|0,B^(j|T)|0,(S|d)&m|S&d|0,(z|p)&g|z&p|0)|0;B=T;H=ks(O|0,x|0,y|0,b|0)|0;N=T;x=ks(j|0,B|0,O|0,x|0)|0;O=T;B=Cs(H|0,N|0,14)|0;j=T;V=Os(H|0,N|0,50)|0;j=j|T;L=Cs(H|0,N|0,18)|0;Q=T;I=Os(H|0,N|0,46)|0;Q=j^(Q|T);j=Cs(H|0,N|0,41)|0;M=T;P=Os(H|0,N|0,23)|0;M=Q^(M|T);Q=n|2;q=32064+(Q<<3)|0;Q=w+(Q<<3)|0;D=o[Q>>2]|0;Q=o[Q+4>>2]|0;q=ks(o[q>>2]|0,o[q+4>>2]|0,a|0,f|0)|0;Q=ks(q|0,T|0,D|0,Q|0)|0;Q=ks(Q|0,T|0,H&(Y^r)^r|0,N&(F^i)^i|0)|0;M=ks(Q|0,T|0,(B|V)^(L|I)^(j|P)|0,M|0)|0;P=T;j=Cs(x|0,O|0,28)|0;I=T;L=Os(x|0,O|0,36)|0;I=I|T;V=Cs(x|0,O|0,34)|0;B=T;Q=Os(x|0,O|0,30)|0;B=I^(B|T);I=Cs(x|0,O|0,39)|0;D=T;q=Os(x|0,O|0,25)|0;D=ks((j|L)^(V|Q)^(I|q)|0,B^(D|T)|0,(x|S)&d|x&S|0,(O|z)&p|O&z|0)|0;B=T;q=ks(M|0,P|0,m|0,g|0)|0;I=T;P=ks(D|0,B|0,M|0,P|0)|0;M=T;B=Cs(q|0,I|0,14)|0;D=T;Q=Os(q|0,I|0,50)|0;D=D|T;V=Cs(q|0,I|0,18)|0;L=T;j=Os(q|0,I|0,46)|0;L=D^(L|T);D=Cs(q|0,I|0,41)|0;R=T;C=Os(q|0,I|0,23)|0;R=L^(R|T);L=n|3;U=32064+(L<<3)|0;L=w+(L<<3)|0;W=o[L>>2]|0;L=o[L+4>>2]|0;U=ks(o[U>>2]|0,o[U+4>>2]|0,r|0,i|0)|0;L=ks(U|0,T|0,W|0,L|0)|0;L=ks(L|0,T|0,q&(H^Y)^Y|0,I&(N^F)^F|0)|0;R=ks(L|0,T|0,(B|Q)^(V|j)^(D|C)|0,R|0)|0;C=T;D=Cs(P|0,M|0,28)|0;j=T;V=Os(P|0,M|0,36)|0;j=j|T;Q=Cs(P|0,M|0,34)|0;B=T;L=Os(P|0,M|0,30)|0;B=j^(B|T);j=Cs(P|0,M|0,39)|0;W=T;U=Os(P|0,M|0,25)|0;W=ks((D|V)^(Q|L)^(j|U)|0,B^(W|T)|0,(P|x)&S|P&x|0,(M|O)&z|M&O|0)|0;B=T;U=ks(R|0,C|0,d|0,p|0)|0;j=T;C=ks(W|0,B|0,R|0,C|0)|0;R=T;B=Cs(U|0,j|0,14)|0;W=T;L=Os(U|0,j|0,50)|0;W=W|T;Q=Cs(U|0,j|0,18)|0;V=T;D=Os(U|0,j|0,46)|0;V=W^(V|T);W=Cs(U|0,j|0,41)|0;G=T;k=Os(U|0,j|0,23)|0;G=V^(G|T);V=n|4;X=32064+(V<<3)|0;V=w+(V<<3)|0;K=o[V>>2]|0;V=o[V+4>>2]|0;F=ks(o[X>>2]|0,o[X+4>>2]|0,Y|0,F|0)|0;V=ks(F|0,T|0,K|0,V|0)|0;V=ks(V|0,T|0,U&(q^H)^H|0,j&(I^N)^N|0)|0;G=ks(V|0,T|0,(B|L)^(Q|D)^(W|k)|0,G|0)|0;k=T;W=Cs(C|0,R|0,28)|0;D=T;Q=Os(C|0,R|0,36)|0;D=D|T;L=Cs(C|0,R|0,34)|0;B=T;V=Os(C|0,R|0,30)|0;B=D^(B|T);D=Cs(C|0,R|0,39)|0;K=T;F=Os(C|0,R|0,25)|0;K=ks((W|Q)^(L|V)^(D|F)|0,B^(K|T)|0,(C|P)&x|C&P|0,(R|M)&O|R&M|0)|0;B=T;l=ks(G|0,k|0,S|0,z|0)|0;u=T;v=ks(K|0,B|0,G|0,k|0)|0;_=T;k=Cs(l|0,u|0,14)|0;G=T;B=Os(l|0,u|0,50)|0;G=G|T;K=Cs(l|0,u|0,18)|0;z=T;S=Os(l|0,u|0,46)|0;z=G^(z|T);G=Cs(l|0,u|0,41)|0;F=T;D=Os(l|0,u|0,23)|0;F=z^(F|T);z=n|5;V=32064+(z<<3)|0;z=w+(z<<3)|0;L=o[z>>2]|0;z=o[z+4>>2]|0;N=ks(o[V>>2]|0,o[V+4>>2]|0,H|0,N|0)|0;z=ks(N|0,T|0,L|0,z|0)|0;z=ks(z|0,T|0,l&(U^q)^q|0,u&(j^I)^I|0)|0;F=ks(z|0,T|0,(k|B)^(K|S)^(G|D)|0,F|0)|0;D=T;G=Cs(v|0,_|0,28)|0;S=T;K=Os(v|0,_|0,36)|0;S=S|T;B=Cs(v|0,_|0,34)|0;k=T;z=Os(v|0,_|0,30)|0;k=S^(k|T);S=Cs(v|0,_|0,39)|0;L=T;N=Os(v|0,_|0,25)|0;L=ks((G|K)^(B|z)^(S|N)|0,k^(L|T)|0,(v|C)&P|v&C|0,(_|R)&M|_&R|0)|0;k=T;t=ks(F|0,D|0,x|0,O|0)|0;c=T;y=ks(L|0,k|0,F|0,D|0)|0;b=T;D=Cs(t|0,c|0,14)|0;F=T;k=Os(t|0,c|0,50)|0;F=F|T;L=Cs(t|0,c|0,18)|0;O=T;x=Os(t|0,c|0,46)|0;O=F^(O|T);F=Cs(t|0,c|0,41)|0;N=T;S=Os(t|0,c|0,23)|0;N=O^(N|T);O=n|6;z=32064+(O<<3)|0;O=w+(O<<3)|0;B=o[O>>2]|0;O=o[O+4>>2]|0;I=ks(o[z>>2]|0,o[z+4>>2]|0,q|0,I|0)|0;O=ks(I|0,T|0,B|0,O|0)|0;O=ks(O|0,T|0,t&(l^U)^U|0,c&(u^j)^j|0)|0;N=ks(O|0,T|0,(D|k)^(L|x)^(F|S)|0,N|0)|0;S=T;F=Cs(y|0,b|0,28)|0;x=T;L=Os(y|0,b|0,36)|0;x=x|T;k=Cs(y|0,b|0,34)|0;D=T;O=Os(y|0,b|0,30)|0;D=x^(D|T);x=Cs(y|0,b|0,39)|0;B=T;I=Os(y|0,b|0,25)|0;B=ks((F|L)^(k|O)^(x|I)|0,D^(B|T)|0,(y|v)&C|y&v|0,(b|_)&R|b&_|0)|0;D=T;a=ks(N|0,S|0,P|0,M|0)|0;f=T;m=ks(B|0,D|0,N|0,S|0)|0;g=T;S=Cs(a|0,f|0,14)|0;N=T;D=Os(a|0,f|0,50)|0;N=N|T;B=Cs(a|0,f|0,18)|0;M=T;P=Os(a|0,f|0,46)|0;M=N^(M|T);N=Cs(a|0,f|0,41)|0;I=T;x=Os(a|0,f|0,23)|0;I=M^(I|T);M=n|7;O=32064+(M<<3)|0;M=w+(M<<3)|0;k=o[M>>2]|0;M=o[M+4>>2]|0;O=ks(U|0,j|0,o[O>>2]|0,o[O+4>>2]|0)|0;M=ks(O|0,T|0,k|0,M|0)|0;M=ks(M|0,T|0,a&(t^l)^l|0,f&(c^u)^u|0)|0;I=ks(M|0,T|0,(S|D)^(B|P)^(N|x)|0,I|0)|0;x=T;N=Cs(m|0,g|0,28)|0;P=T;B=Os(m|0,g|0,36)|0;P=P|T;D=Cs(m|0,g|0,34)|0;S=T;M=Os(m|0,g|0,30)|0;S=P^(S|T);P=Cs(m|0,g|0,39)|0;k=T;O=Os(m|0,g|0,25)|0;k=ks((N|B)^(D|M)^(P|O)|0,S^(k|T)|0,(m|y)&v|m&y|0,(g|b)&_|g&b|0)|0;S=T;r=ks(I|0,x|0,C|0,R|0)|0;i=T;d=ks(k|0,S|0,I|0,x|0)|0;p=T;n=n+8|0}while(n>>>0<80);Y=A;Y=ks(d|0,p|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;X=A;o[X>>2]=Y;o[X+4>>2]=T;X=e+16|0;Y=X;Y=ks(m|0,g|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+24|0;Y=X;Y=ks(y|0,b|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+32|0;Y=X;Y=ks(v|0,_|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+40|0;Y=X;Y=ks(r|0,i|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+48|0;Y=X;Y=ks(a|0,f|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+56|0;Y=X;Y=ks(t|0,c|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+64|0;Y=X;Y=ks(l|0,u|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;h=E;return}function gi(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0;if((e|0)==0|(t|0)==0){s=1;return s|0}s=e+72|0;n=o[s>>2]|0;if(n>>>0>127){s=1;return s|0}a=Os(n|0,0,3)|0;i=e;a=ks(o[i>>2]|0,o[i+4>>2]|0,a|0,T|0)|0;i=e;o[i>>2]=a;o[i+4>>2]=T;i=e+76|0;o[s>>2]=n+1;r[e+76+n>>0]=-128;n=o[s>>2]|0;if(n>>>0>112){if(n>>>0<128)do{o[s>>2]=n+1;r[e+76+n>>0]=0;n=o[s>>2]|0}while(n>>>0<128);mi(e,i);o[s>>2]=0;n=0}do{o[s>>2]=n+1;r[e+76+n>>0]=0;n=o[s>>2]|0}while(n>>>0<120);s=e;a=o[s>>2]|0;s=o[s+4>>2]|0;n=Cs(a|0,s|0,56)|0;r[e+196>>0]=n;n=Cs(a|0,s|0,48)|0;r[e+197>>0]=n;n=Cs(a|0,s|0,40)|0;r[e+198>>0]=n;r[e+199>>0]=s;n=Cs(a|0,s|0,24)|0;r[e+200>>0]=n;n=Cs(a|0,s|0,16)|0;r[e+201>>0]=n;s=Cs(a|0,s|0,8)|0;r[e+202>>0]=s;r[e+203>>0]=a;mi(e,i);a=e+8|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+1>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+2>>0]=s;r[t+3>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+4>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+5>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+6>>0]=s;r[t+7>>0]=o[a>>2];a=e+16|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+8>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+9>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+10>>0]=s;r[t+11>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+12>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+13>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+14>>0]=s;r[t+15>>0]=o[a>>2];a=e+24|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+16>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+17>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+18>>0]=s;r[t+19>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+20>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+21>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+22>>0]=s;r[t+23>>0]=o[a>>2];a=e+32|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+24>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+25>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+26>>0]=s;r[t+27>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+28>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+29>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+30>>0]=s;r[t+31>>0]=o[a>>2];a=e+40|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+32>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+33>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+34>>0]=s;r[t+35>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+36>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+37>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+38>>0]=s;r[t+39>>0]=o[a>>2];a=e+48|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+40>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+41>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+42>>0]=s;r[t+43>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+44>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+45>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+46>>0]=s;r[t+47>>0]=o[a>>2];a=e+56|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+48>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+49>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+50>>0]=s;r[t+51>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+52>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+53>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+54>>0]=s;r[t+55>>0]=o[a>>2];a=e+64|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+56>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+57>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+58>>0]=s;r[t+59>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+60>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+61>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+62>>0]=s;r[t+63>>0]=o[a>>2];a=0;return a|0}function yi(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0;k=h;h=h+768|0;y=k+240|0;b=k+192|0;v=k+144|0;w=k+96|0;A=k+32|0;E=k;d=k+272|0;p=k+600|0;m=k+480|0;if((s[e+63>>0]|0)>31){E=0;h=k;return E|0}if(li(p,i)|0){E=0;h=k;return E|0}g=d+72|0;o[g>>2]=0;_=d;o[_>>2]=0;o[_+4>>2]=0;_=d+8|0;o[_>>2]=-205731576;o[_+4>>2]=1779033703;_=d+16|0;o[_>>2]=-2067093701;o[_+4>>2]=-1150833019;_=d+24|0;o[_>>2]=-23791573;o[_+4>>2]=1013904242;_=d+32|0;o[_>>2]=1595750129;o[_+4>>2]=-1521486534;_=d+40|0;o[_>>2]=-1377402159;o[_+4>>2]=1359893119;_=d+48|0;o[_>>2]=725511199;o[_+4>>2]=-1694144372;_=d+56|0;o[_>>2]=-79577749;o[_+4>>2]=528734635;_=d+64|0;o[_>>2]=327033209;o[_+4>>2]=1541459225;_=d+76|0;r[d+76>>0]=r[e>>0]|0;r[d+77>>0]=r[e+1>>0]|0;r[d+78>>0]=r[e+2>>0]|0;r[d+79>>0]=r[e+3>>0]|0;r[d+80>>0]=r[e+4>>0]|0;r[d+81>>0]=r[e+5>>0]|0;r[d+82>>0]=r[e+6>>0]|0;r[d+83>>0]=r[e+7>>0]|0;r[d+84>>0]=r[e+8>>0]|0;r[d+85>>0]=r[e+9>>0]|0;r[d+86>>0]=r[e+10>>0]|0;r[d+87>>0]=r[e+11>>0]|0;r[d+88>>0]=r[e+12>>0]|0;r[d+89>>0]=r[e+13>>0]|0;r[d+90>>0]=r[e+14>>0]|0;r[d+91>>0]=r[e+15>>0]|0;r[d+92>>0]=r[e+16>>0]|0;r[d+93>>0]=r[e+17>>0]|0;r[d+94>>0]=r[e+18>>0]|0;r[d+95>>0]=r[e+19>>0]|0;r[d+96>>0]=r[e+20>>0]|0;r[d+97>>0]=r[e+21>>0]|0;r[d+98>>0]=r[e+22>>0]|0;r[d+99>>0]=r[e+23>>0]|0;r[d+100>>0]=r[e+24>>0]|0;r[d+101>>0]=r[e+25>>0]|0;r[d+102>>0]=r[e+26>>0]|0;r[d+103>>0]=r[e+27>>0]|0;r[d+104>>0]=r[e+28>>0]|0;r[d+105>>0]=r[e+29>>0]|0;r[d+106>>0]=r[e+30>>0]|0;r[d+107>>0]=r[e+31>>0]|0;o[g>>2]=32;e:do{if(i|0?(f=o[g>>2]|0,f>>>0<=128):0){a=32;while(1){if(!((f|0)==0&a>>>0>127)){u=128-f|0;u=a>>>0>>0?a:u;if(u|0){l=0;do{r[l+f+(d+76)>>0]=r[i+l>>0]|0;l=l+1|0}while(l>>>0>>0)}l=f+u|0;o[g>>2]=l;i=i+u|0;a=a-u|0;if((l|0)==128){mi(d,_);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;o[g>>2]=0}}else{mi(d,i);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;a=a+-128|0;i=i+128|0}if(!a)break e;f=o[g>>2]|0}}}while(0);e:do{if(t|0?(c=o[g>>2]|0,!((n|0)==0|c>>>0>128)):0)while(1){if(!((c|0)==0&n>>>0>127)){i=128-c|0;i=n>>>0>>0?n:i;if(i|0){a=0;do{r[a+c+(d+76)>>0]=r[t+a>>0]|0;a=a+1|0}while(a>>>0>>0)}u=c+i|0;o[g>>2]=u;t=t+i|0;n=n-i|0;if((u|0)==128){mi(d,_);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;o[g>>2]=0}}else{mi(d,t);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;n=n+-128|0;t=t+128|0}if(!n)break e;c=o[g>>2]|0}}while(0);gi(d,A)|0;ei(A);ri(m,A,p,e+32|0);Wr(b,m+80|0);Xr(v,m,b);Xr(w,m+40|0,b);Jr(E,w);Jr(y,v);w=E+31|0;A=r[w>>0]^r[y>>0]<<7&255;r[w>>0]=A;E=(r[e+1>>0]^r[E+1>>0]|r[e>>0]^r[E>>0]|r[e+2>>0]^r[E+2>>0]|r[e+3>>0]^r[E+3>>0]|r[e+4>>0]^r[E+4>>0]|r[e+5>>0]^r[E+5>>0]|r[e+6>>0]^r[E+6>>0]|r[e+7>>0]^r[E+7>>0]|r[e+8>>0]^r[E+8>>0]|r[e+9>>0]^r[E+9>>0]|r[e+10>>0]^r[E+10>>0]|r[e+11>>0]^r[E+11>>0]|r[e+12>>0]^r[E+12>>0]|r[e+13>>0]^r[E+13>>0]|r[e+14>>0]^r[E+14>>0]|r[e+15>>0]^r[E+15>>0]|r[e+16>>0]^r[E+16>>0]|r[e+17>>0]^r[E+17>>0]|r[e+18>>0]^r[E+18>>0]|r[e+19>>0]^r[E+19>>0]|r[e+20>>0]^r[E+20>>0]|r[e+21>>0]^r[E+21>>0]|r[e+22>>0]^r[E+22>>0]|r[e+23>>0]^r[E+23>>0]|r[e+24>>0]^r[E+24>>0]|r[e+25>>0]^r[E+25>>0]|r[e+26>>0]^r[E+26>>0]|r[e+27>>0]^r[E+27>>0]|r[e+28>>0]^r[E+28>>0]|r[e+29>>0]^r[E+29>>0]|r[e+30>>0]^r[E+30>>0]|r[e+31>>0]^A)<<24>>24==0&1;h=k;return E|0}function bi(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0;D=h;h=h+672|0;A=D+272|0;k=D+224|0;S=D+176|0;I=D+128|0;M=D+304|0;R=D+64|0;C=D;p=D+512|0;O=M+72|0;o[O>>2]=0;m=M;o[m>>2]=0;o[m+4>>2]=0;m=M+8|0;g=m;o[g>>2]=-205731576;o[g+4>>2]=1779033703;g=M+16|0;y=g;o[y>>2]=-2067093701;o[y+4>>2]=-1150833019;y=M+24|0;b=y;o[b>>2]=-23791573;o[b+4>>2]=1013904242;b=M+32|0;v=b;o[v>>2]=1595750129;o[v+4>>2]=-1521486534;v=M+40|0;_=v;o[_>>2]=-1377402159;o[_+4>>2]=1359893119;_=M+48|0;w=_;o[w>>2]=725511199;o[w+4>>2]=-1694144372;w=M+56|0;E=w;o[E>>2]=-79577749;o[E+4>>2]=528734635;E=M+64|0;P=E;o[P>>2]=327033209;o[P+4>>2]=1541459225;P=M+76|0;r[M+76>>0]=r[s+32>>0]|0;r[M+77>>0]=r[s+33>>0]|0;r[M+78>>0]=r[s+34>>0]|0;r[M+79>>0]=r[s+35>>0]|0;r[M+80>>0]=r[s+36>>0]|0;r[M+81>>0]=r[s+37>>0]|0;r[M+82>>0]=r[s+38>>0]|0;r[M+83>>0]=r[s+39>>0]|0;r[M+84>>0]=r[s+40>>0]|0;r[M+85>>0]=r[s+41>>0]|0;r[M+86>>0]=r[s+42>>0]|0;r[M+87>>0]=r[s+43>>0]|0;r[M+88>>0]=r[s+44>>0]|0;r[M+89>>0]=r[s+45>>0]|0;r[M+90>>0]=r[s+46>>0]|0;r[M+91>>0]=r[s+47>>0]|0;r[M+92>>0]=r[s+48>>0]|0;r[M+93>>0]=r[s+49>>0]|0;r[M+94>>0]=r[s+50>>0]|0;r[M+95>>0]=r[s+51>>0]|0;r[M+96>>0]=r[s+52>>0]|0;r[M+97>>0]=r[s+53>>0]|0;r[M+98>>0]=r[s+54>>0]|0;r[M+99>>0]=r[s+55>>0]|0;r[M+100>>0]=r[s+56>>0]|0;r[M+101>>0]=r[s+57>>0]|0;r[M+102>>0]=r[s+58>>0]|0;r[M+103>>0]=r[s+59>>0]|0;r[M+104>>0]=r[s+60>>0]|0;r[M+105>>0]=r[s+61>>0]|0;r[M+106>>0]=r[s+62>>0]|0;r[M+107>>0]=r[s+63>>0]|0;o[O>>2]=32;x=(t|0)==0;e:do{if(!x?(l=o[O>>2]|0,!((n|0)==0|l>>>0>128)):0){a=n;c=t;while(1){if(!((l|0)==0&a>>>0>127)){d=128-l|0;d=a>>>0>>0?a:d;if(d|0){u=0;do{r[u+l+(M+76)>>0]=r[c+u>>0]|0;u=u+1|0}while(u>>>0>>0)}u=l+d|0;o[O>>2]=u;c=c+d|0;a=a-d|0;if((u|0)==128){mi(M,P);u=M;u=ks(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;d=M;o[d>>2]=u;o[d+4>>2]=T;o[O>>2]=0}}else{mi(M,c);u=M;u=ks(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;d=M;o[d>>2]=u;o[d+4>>2]=T;a=a+-128|0;c=c+128|0}if(!a)break e;l=o[O>>2]|0}}}while(0);gi(M,C)|0;ei(C);ui(p,C);Wr(k,p+80|0);Xr(S,p,k);Xr(I,p+40|0,k);Jr(e,I);Jr(A,S);I=e+31|0;r[I>>0]=r[I>>0]^r[A>>0]<<7&255;o[O>>2]=0;I=M;o[I>>2]=0;o[I+4>>2]=0;I=m;o[I>>2]=-205731576;o[I+4>>2]=1779033703;I=g;o[I>>2]=-2067093701;o[I+4>>2]=-1150833019;I=y;o[I>>2]=-23791573;o[I+4>>2]=1013904242;I=b;o[I>>2]=1595750129;o[I+4>>2]=-1521486534;I=v;o[I>>2]=-1377402159;o[I+4>>2]=1359893119;I=_;o[I>>2]=725511199;o[I+4>>2]=-1694144372;I=w;o[I>>2]=-79577749;o[I+4>>2]=528734635;I=E;o[I>>2]=327033209;o[I+4>>2]=1541459225;if(e|0){r[M+76>>0]=r[e>>0]|0;r[M+77>>0]=r[e+1>>0]|0;r[M+78>>0]=r[e+2>>0]|0;r[M+79>>0]=r[e+3>>0]|0;r[M+80>>0]=r[e+4>>0]|0;r[M+81>>0]=r[e+5>>0]|0;r[M+82>>0]=r[e+6>>0]|0;r[M+83>>0]=r[e+7>>0]|0;r[M+84>>0]=r[e+8>>0]|0;r[M+85>>0]=r[e+9>>0]|0;r[M+86>>0]=r[e+10>>0]|0;r[M+87>>0]=r[e+11>>0]|0;r[M+88>>0]=r[e+12>>0]|0;r[M+89>>0]=r[e+13>>0]|0;r[M+90>>0]=r[e+14>>0]|0;r[M+91>>0]=r[e+15>>0]|0;r[M+92>>0]=r[e+16>>0]|0;r[M+93>>0]=r[e+17>>0]|0;r[M+94>>0]=r[e+18>>0]|0;r[M+95>>0]=r[e+19>>0]|0;r[M+96>>0]=r[e+20>>0]|0;r[M+97>>0]=r[e+21>>0]|0;r[M+98>>0]=r[e+22>>0]|0;r[M+99>>0]=r[e+23>>0]|0;r[M+100>>0]=r[e+24>>0]|0;r[M+101>>0]=r[e+25>>0]|0;r[M+102>>0]=r[e+26>>0]|0;r[M+103>>0]=r[e+27>>0]|0;r[M+104>>0]=r[e+28>>0]|0;r[M+105>>0]=r[e+29>>0]|0;r[M+106>>0]=r[e+30>>0]|0;r[M+107>>0]=r[e+31>>0]|0;o[O>>2]=32}e:do{if(i|0?(f=o[O>>2]|0,f>>>0<=128):0){a=32;while(1){if(!((f|0)==0&a>>>0>127)){l=128-f|0;l=a>>>0>>0?a:l;if(l|0){c=0;do{r[c+f+(M+76)>>0]=r[i+c>>0]|0;c=c+1|0}while(c>>>0>>0)}I=f+l|0;o[O>>2]=I;i=i+l|0;a=a-l|0;if((I|0)==128){mi(M,P);S=M;S=ks(o[S>>2]|0,o[S+4>>2]|0,1024,0)|0;I=M;o[I>>2]=S;o[I+4>>2]=T;o[O>>2]=0}}else{mi(M,i);S=M;S=ks(o[S>>2]|0,o[S+4>>2]|0,1024,0)|0;I=M;o[I>>2]=S;o[I+4>>2]=T;a=a+-128|0;i=i+128|0}if(!a)break e;f=o[O>>2]|0}}}while(0);if(x){gi(M,R)|0;ei(R);M=e+32|0;ti(M,R,s,C);h=D;return}a=o[O>>2]|0;if((n|0)==0|a>>>0>128){gi(M,R)|0;ei(R);M=e+32|0;ti(M,R,s,C);h=D;return}i=a;while(1){if(!((i|0)==0&n>>>0>127)){c=128-i|0;c=n>>>0>>0?n:c;if(c|0){a=0;do{r[a+i+(M+76)>>0]=r[t+a>>0]|0;a=a+1|0}while(a>>>0>>0)}x=i+c|0;o[O>>2]=x;t=t+c|0;n=n-c|0;if((x|0)==128){mi(M,P);I=M;I=ks(o[I>>2]|0,o[I+4>>2]|0,1024,0)|0;x=M;o[x>>2]=I;o[x+4>>2]=T;o[O>>2]=0}}else{mi(M,t);I=M;I=ks(o[I>>2]|0,o[I+4>>2]|0,1024,0)|0;x=M;o[x>>2]=I;o[x+4>>2]=T;n=n+-128|0;t=t+128|0}if(!n)break;i=o[O>>2]|0}gi(M,R)|0;ei(R);M=e+32|0;ti(M,R,s,C);h=D;return}function vi(e,t,n){e=e|0;t=t|0;n=n|0;o[e+128>>2]=n;n=t;t=e+128|0;do{r[e>>0]=r[n>>0]|0;e=e+1|0;n=n+1|0}while((e|0)<(t|0));return}function _i(e){e=e|0;return 132}function wi(e,t){e=e|0;t=t|0;t=Fe(t,e,128)|0;return Ne(t,o[e+128>>2]|0)|0}function Ai(e,t,n){e=e|0;t=t|0;n=n|0;return je(qe(t,n,e,128)|0,n,e+128|0)|0}function Ei(e){e=e|0;var t=0,n=0,r=0,i=0;r=e+128|0;i=(o[r>>2]|0)+1|0;o[r>>2]=i;if(i&16777215){n=0;r=16777215;while(1){t=n+1|0;r=r>>>8;if(n>>>0>2|(r&i|0)==0)break;else n=t}if(n>>>0>2)return}else t=0;r=e+(t<<5)|0;n=3;while(1){Et(r,32,38116+n|0,1,e+(n<<5)|0);if((n|0)>(t|0))n=n+-1|0;else break}return}function ki(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0;s=e+128|0;n=o[s>>2]|0;r=(t>>>24)-(n>>>24)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=3}break}case 1:{i=5;break}default:{n=r&255;i=3}}if((i|0)==3){do{Et(e,32,38116,1,e);n=n+-1|0}while(n>>>0>1);i=5}if((i|0)==5){Et(e,32,38119,1,e+96|0);Et(e,32,38118,1,e+64|0);Et(e,32,38117,1,e+32|0);Et(e,32,38116,1,e);n=t&-16777216;o[s>>2]=n}r=(t>>>16)-(n>>>16)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=8}break}case 1:{i=10;break}default:{n=r&255;i=8}}if((i|0)==8){r=e+32|0;do{Et(r,32,38117,1,r);n=n+-1|0}while(n>>>0>1);i=10}if((i|0)==10){n=e+32|0;Et(n,32,38119,1,e+96|0);Et(n,32,38118,1,e+64|0);Et(n,32,38117,1,e+32|0);n=t&-65536;o[s>>2]=n}r=(t>>>8)-(n>>>8)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=13}break}case 1:{i=15;break}default:{n=r&255;i=13}}if((i|0)==13){r=e+64|0;do{Et(r,32,38118,1,r);n=n+-1|0}while(n>>>0>1);i=15}if((i|0)==15){n=e+64|0;Et(n,32,38119,1,e+96|0);Et(n,32,38118,1,e+64|0);n=t&-256;o[s>>2]=n}r=t-n|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=18}else return;break}case 1:break;default:{n=r&255;i=18}}if((i|0)==18){r=e+96|0;do{Et(r,32,38119,1,r);n=n+-1|0}while(n>>>0>1)}Et(e+96|0,32,38119,1,e+96|0);o[s>>2]=t;return}function Si(e){e=e|0;if(e>>>0>=16){e=38120;return e|0}e=o[32704+(e<<2)>>2]|0;return e|0}function Ti(e){e=e|0;e=Hs[o[37564>>2]&3](37592,e)|0;return pe((Gs[o[9390]&1](37592)|0)+e|0)|0}function Ii(e,t){e=e|0;t=t|0;t=Hs[o[37564>>2]&3](37592,t)|0;t=(Gs[o[9390]&1](37592)|0)+t|0;return e+(pe(t)|0)+(0-t)|0}function xi(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0;c=Hs[o[37564>>2]&3](37592,r)|0;s=(Gs[o[9390]&1](37592)|0)+c|0;i=pe(s)|0;a=n+i+(0-s)|0;Qs[o[37568>>2]&3](37592,e,t,a,r,a,c,a,s)|0;me(a,s,n)|0;return i|0}function Ri(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=ge(r)|0;if((s|0)==-1){if(!i){i=-1;return i|0}o[i>>2]=7;i=-1;return i|0}else{ye(n,r,n)|0;r=s-(Gs[o[9390]&1](37592)|0)|0;e=Qs[o[37576>>2]&3](37592,e,t,n,s,n,r,n,r)|0;if(!((i|0)!=0&(e|0)==-1)){i=e;return i|0}o[i>>2]=8;i=-1;return i|0}return 0}function Ci(){return 304}function Oi(e){e=e|0;Gr(e,304);return e|0}function Pi(e){e=e|0;Gr(e,304);return 304}function Mi(e){e=e|0;return Si(o[e+300>>2]|0)|0}function Di(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0,c=0,f=0;f=h;h=h+240|0;c=f;switch(ge(n)|0){case-1:{o[e+300>>2]=7;c=-1;h=f;return c|0}case 229:{ye(t,n,c)|0;do{if((r[c>>0]|0)==2){t=((s[c+1>>0]<<8|s[c+2>>0])<<8|s[c+3>>0])<<8|s[c+4>>0];n=c+5|0;vi(e,n,t);vi(e+132|0,n,t);t=e+264|0;n=t;i=c+133|0;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));if(!(bt(t,c,165,c+165|0)|0)){o[e+300>>2]=14;t=-1;break}else{o[e+296>>2]=1;t=0;break}}else{o[e+300>>2]=11;t=-1}}while(0);Gr(c,229);c=t;h=f;return c|0}default:{o[e+300>>2]=11;c=-1;h=f;return c|0}}return 0}function Bi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0;a=h;h=h+176|0;i=a;switch(ge(n)|0){case-1:{o[e+300>>2]=7;i=-1;h=a;return i|0}case 165:{ye(t,n,i)|0;if((r[i>>0]|0)==1){t=((s[i+1>>0]<<8|s[i+2>>0])<<8|s[i+3>>0])<<8|s[i+4>>0];n=i+5|0;vi(e,n,t);vi(e+132|0,n,t);e=e+264|0;t=i+133|0;n=e+32|0;do{r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0}while((e|0)<(n|0));e=0}else{o[e+300>>2]=11;e=-1}Gr(i,165);i=e;h=a;return i|0}default:{o[e+300>>2]=11;i=-1;h=a;return i|0}}return 0}function Ni(e){e=e|0;var t=0,n=0;n=_i(e)|0;t=_i(e+132|0)|0;return Ti(n+5+t+(Ce(e+264|0)|0)|0)|0}function ji(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0;f=_i(e)|0;a=e+132|0;s=_i(a)|0;c=e+264|0;s=f+5+s+(Ce(c)|0)|0;if((Ti(s)|0)>>>0>i>>>0){o[e+300>>2]=2;f=-1;return f|0}else{f=Oe(wi(a,wi(e,Ne(Ii(r,s)|0,2)|0)|0)|0,c)|0;Ue(f,o[e+296>>2]|0)|0;f=xi(t,n,r,s)|0;return f|0}return 0}function Ui(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0;f=h;h=h+16|0;a=f;c=e+300|0;t=Ri(t,n,r,i,c)|0;if((t|0)==-1){c=-1;h=f;return c|0}s=r+t|0;t=je(r,s,a)|0;if(((o[a>>2]|0)+-1|0)>>>0>1){o[c>>2]=9;c=-1;h=f;return c|0}t=Pe(Ai(e+132|0,Ai(e,t,s)|0,s)|0,s,e+264|0)|0;n=e+296|0;if((o[a>>2]|0)==1)o[n>>2]=1;else t=Le(t,s,n)|0;if((s|0)==(t|0)){c=i;h=f;return c|0}o[c>>2]=10;c=-1;h=f;return c|0}function Li(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0;s=h;h=h+32|0;i=s;n=ye(t,n,t)|0;if((n|0)==-1){o[e+300>>2]=7;i=-1;h=s;return i|0}Xe(t,n,Gs[o[o[9395]>>2]&1](37580)|0,64,i);do{if((r[i>>0]|0)==3)if(!(o[i+12>>2]|0)){o[e+300>>2]=4;n=-1;break}else{n=Hs[o[(o[9395]|0)+12>>2]&3](37580,o[i+16>>2]|0)|0;break}else{o[e+300>>2]=3;n=-1}}while(0);i=n;h=s;return i|0}function Fi(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0,l=0,u=0,d=0,p=0;p=h;h=h+160|0;l=p+132|0;d=p;n=ye(t,n,t)|0;if((n|0)==-1){o[e+300>>2]=7;d=-1;h=p;return d|0}Xe(t,n,Gs[o[o[9395]>>2]&1](37580)|0,64,l);e:do{if((r[l>>0]|0)==3){if(o[l+8>>2]|0?(u=l+12|0,o[u>>2]|0):0){if(a|0)o[a>>2]=o[l+4>>2];c=n+-64|0;if(!(bt(e+264|0,t,c,t+c|0)|0)){o[e+300>>2]=14;n=-1;break}f=l+16|0;if((Hs[o[(o[9395]|0)+12>>2]&3](37580,o[f>>2]|0)|0)>>>0>s>>>0){o[e+300>>2]=2;n=-1;break}n=o[l+4>>2]|0;a=e+132|0;do{if((n-(o[e+260>>2]|0)|0)<=-1)if((n-(o[e+128>>2]|0)|0)<0){o[e+300>>2]=12;n=-1;break e}else{Ms(d|0,e|0,132)|0;ki(d,n);break}else{ki(a,n);Ms(d|0,a|0,132)|0}}while(0);n=Qs[o[(o[9395]|0)+16>>2]&3](37580,d,128,t,c,o[u>>2]|0,o[f>>2]|0,i,s)|0;Gr(d,132);if((n|0)==-1){o[e+300>>2]=5;n=-1;break}else{o[e+296>>2]=1;break}}o[e+300>>2]=4;n=-1}else{o[e+300>>2]=3;n=-1}}while(0);d=n;h=p;return d|0}function qi(e){e=e|0;return pe(32)|0}function zi(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e+300>>2]=2;n=-1;return n|0}else{n=me(e+264|0,32,t)|0;return n|0}return 0}function Ki(e){e=e|0;return o[e+128>>2]|0}function Gi(e){e=e|0;return o[e+296>>2]|0}function Hi(e){e=e|0;return pe(165)|0}function Vi(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0;l=h;h=h+144|0;f=l;s=pe(165)|0;if(s>>>0>n>>>0){o[e+300>>2]=2;t=-1;h=l;return t|0}n=e+132|0;do{if((i-(o[e+260>>2]|0)|0)>-1){ki(n,i);Ms(f|0,n|0,132)|0}else{if((i-(o[e+128>>2]|0)|0)>=0){Ms(f|0,e|0,132)|0;ki(f,i);break}o[e+300>>2]=12;t=-1;h=l;return t|0}}while(0);c=t+s+-165|0;r[c>>0]=1;a=c+1|0;r[a>>0]=i>>>24;a=a+1|0;r[a>>0]=i>>>16;a=a+1|0;r[a>>0]=i>>>8;r[a+1>>0]=i;a=t+(s+-161)|0;s=t+(s+-160)|0;n=f;i=s+128|0;do{r[s>>0]=r[n>>0]|0;s=s+1|0;n=n+1|0}while((s|0)<(i|0));s=a+129|0;n=e+264|0;i=s+32|0;do{r[s>>0]=r[n>>0]|0;s=s+1|0;n=n+1|0}while((s|0)<(i|0));t=me(c,165,t)|0;h=l;return t|0}function Qi(e){e=e|0;return Si(o[e>>2]|0)|0}function Wi(){return 100}function Yi(e){e=e|0;Gr(e,100);return e|0}function Xi(e){e=e|0;Gr(e,100);return 100}function Ji(e){e=e|0;return 32}function Zi(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<32){o[e>>2]=1;n=-1;return n|0}else{pt(t,e+4|0);n=0;return n|0}return 0}function $i(e){e=e|0;return pe(32)|0}function eo(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e>>2]=2;n=-1;return n|0}else{me(e+4|0,32,t)|0;n=0;return n|0}return 0}function to(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e>>2]=15;n=-1;return n|0}else{ye(t,n,t)|0;mt(e+4|0,t,e+68|0);n=0;return n|0}return 0}function no(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;Tt(e+68|0,32,0,0,t,n,r,i);return 0}function ro(e){e=e|0;return pe(32)|0}function io(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+32|0;c=f;if((pe(32)|0)>>>0>a>>>0){o[e>>2]=2;c=-1;h=f;return c|0}else{Tt(e+68|0,32,0,0,r,i,c,32);Et(c,32,t,n,s);me(s,32,s)|0;c=0;h=f;return c|0}return 0}function oo(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+256|0;c=f;if((pe(32)|0)>>>0>a>>>0){o[e>>2]=2;c=-1;h=f;return c|0}else{Tt(e+68|0,32,0,0,r,i,c,256);Et(c,256,t,n,s);me(s,32,s)|0;c=0;h=f;return c|0}return 0}function so(){return 232}function ao(e){e=e|0;Gr(e,232);return e|0}function co(e){e=e|0;Gr(e,232);return 232}function fo(e){e=e|0;return Si(o[e+228>>2]|0)|0}function lo(e){e=e|0;var t=0;t=(_i(e)|0)+4|0;return Ti(t+(Me(e+132|0)|0)|0)|0}function uo(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;a=(_i(e)|0)+4|0;s=e+132|0;a=a+(Me(s)|0)|0;if((Ti(a)|0)>>>0>i>>>0){o[e+228>>2]=2;a=-1;return a|0}else{De(wi(e,Ne(Ii(r,a)|0,1)|0)|0,s)|0;a=xi(t,n,r,a)|0;return a|0}return 0}function ho(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0;c=h;h=h+16|0;s=c;a=e+228|0;t=Ri(t,n,r,i,a)|0;do{if((t|0)!=-1){n=r+t|0;t=je(r,n,s)|0;if((o[s>>2]|0)!=1){o[a>>2]=9;i=-1;break}if((n|0)!=(Be(Ai(e,t,n)|0,n,e+132|0)|0)){o[a>>2]=10;i=-1}}else i=-1}while(0);h=c;return i|0}function po(e){e=e|0;return 160}function mo(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<160){o[e+228>>2]=1;n=-1;return n|0}else{vi(e,t,0);gt(t+128|0,e+132|0);Gr(t,n);n=0;return n|0}return 0}function go(e,t){e=e|0;t=t|0;var n=0;n=Hs[o[(o[9395]|0)+4>>2]&3](37580,t)|0;t=Gs[o[o[9395]>>2]&1](37580)|0;return pe(We(o[e+128>>2]|0,n,t,64)|0)|0}function yo(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;l=h;h=h+16|0;f=l;a=Hs[o[(o[9395]|0)+4>>2]&3](37580,n)|0;c=Gs[o[o[9395]>>2]&1](37580)|0;s=e+128|0;c=We(o[s>>2]|0,a,c,64)|0;if((pe(c)|0)>>>0>i>>>0){o[e+228>>2]=2;f=-1;h=l;return f|0}a=r+(pe(c)|0)+(0-c)|0;u=Hs[o[(o[9395]|0)+4>>2]&3](37580,n)|0;i=Gs[o[o[9395]>>2]&1](37580)|0;i=(Ye(3,o[s>>2]|0,u,a,f)|0)+i|0;if((Qs[o[(o[9395]|0)+8>>2]&3](37580,e,128,t,n,o[f>>2]|0,u,a,i)|0)==-1){u=-1;h=l;return u|0}else{Ei(e);yt(e+132|0,a,i,a+i|0);u=me(a,c,r)|0;h=l;return u|0}return 0}function bo(e){e=e|0;return pe(32)|0}function vo(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e+228>>2]=2;n=-1;return n|0}else{n=me(e+132|0,32,t)|0;return n|0}return 0}function _o(e){e=e|0;return o[e+128>>2]|0}function wo(e){e=e|0;return pe(229)|0}function Ao(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0;i=pe(229)|0;if(i>>>0>n>>>0){o[e+228>>2]=2;t=-1;return t|0}else{c=t+i+-229|0;r[c>>0]=2;s=o[e+128>>2]|0;f=c+1|0;r[f>>0]=s>>>24;f=f+1|0;r[f>>0]=s>>>16;f=f+1|0;r[f>>0]=s>>>8;r[f+1>>0]=s;f=t+(i+-225)|0;i=t+(i+-224)|0;s=e;a=i+128|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));n=e+132|0;i=f+129|0;s=n;a=i+32|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));f=f+161|0;yt(n,c,f-c|0,f);t=me(c,229,t)|0;return t|0}return 0}function Eo(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0;R=h;h=h+256|0;x=R;o[x>>2]=(s[t+1>>0]|0)<<16|(s[t>>0]|0)<<24|(s[t+2>>0]|0)<<8|(s[t+3>>0]|0);o[x+4>>2]=(s[t+5>>0]|0)<<16|(s[t+4>>0]|0)<<24|(s[t+6>>0]|0)<<8|(s[t+7>>0]|0);o[x+8>>2]=(s[t+9>>0]|0)<<16|(s[t+8>>0]|0)<<24|(s[t+10>>0]|0)<<8|(s[t+11>>0]|0);o[x+12>>2]=(s[t+13>>0]|0)<<16|(s[t+12>>0]|0)<<24|(s[t+14>>0]|0)<<8|(s[t+15>>0]|0);o[x+16>>2]=(s[t+17>>0]|0)<<16|(s[t+16>>0]|0)<<24|(s[t+18>>0]|0)<<8|(s[t+19>>0]|0);o[x+20>>2]=(s[t+21>>0]|0)<<16|(s[t+20>>0]|0)<<24|(s[t+22>>0]|0)<<8|(s[t+23>>0]|0);o[x+24>>2]=(s[t+25>>0]|0)<<16|(s[t+24>>0]|0)<<24|(s[t+26>>0]|0)<<8|(s[t+27>>0]|0);o[x+28>>2]=(s[t+29>>0]|0)<<16|(s[t+28>>0]|0)<<24|(s[t+30>>0]|0)<<8|(s[t+31>>0]|0);o[x+32>>2]=(s[t+33>>0]|0)<<16|(s[t+32>>0]|0)<<24|(s[t+34>>0]|0)<<8|(s[t+35>>0]|0);o[x+36>>2]=(s[t+37>>0]|0)<<16|(s[t+36>>0]|0)<<24|(s[t+38>>0]|0)<<8|(s[t+39>>0]|0);o[x+40>>2]=(s[t+41>>0]|0)<<16|(s[t+40>>0]|0)<<24|(s[t+42>>0]|0)<<8|(s[t+43>>0]|0);o[x+44>>2]=(s[t+45>>0]|0)<<16|(s[t+44>>0]|0)<<24|(s[t+46>>0]|0)<<8|(s[t+47>>0]|0);o[x+48>>2]=(s[t+49>>0]|0)<<16|(s[t+48>>0]|0)<<24|(s[t+50>>0]|0)<<8|(s[t+51>>0]|0);o[x+52>>2]=(s[t+53>>0]|0)<<16|(s[t+52>>0]|0)<<24|(s[t+54>>0]|0)<<8|(s[t+55>>0]|0);o[x+56>>2]=(s[t+57>>0]|0)<<16|(s[t+56>>0]|0)<<24|(s[t+58>>0]|0)<<8|(s[t+59>>0]|0);o[x+60>>2]=(s[t+61>>0]|0)<<16|(s[t+60>>0]|0)<<24|(s[t+62>>0]|0)<<8|(s[t+63>>0]|0);t=16;n=o[x>>2]|0;do{I=o[x+(t+-2<<2)>>2]|0;T=n;n=o[x+(t+-15<<2)>>2]|0;o[x+(t<<2)>>2]=T+(o[x+(t+-7<<2)>>2]|0)+((I>>>19|I<<13)^I>>>10^(I>>>17|I<<15))+((n>>>18|n<<14)^n>>>3^(n>>>7|n<<25));t=t+1|0}while((t|0)!=64);p=e+80|0;m=o[p>>2]|0;g=e+84|0;y=o[g>>2]|0;b=e+88|0;v=o[b>>2]|0;_=e+92|0;w=o[_>>2]|0;A=e+96|0;E=o[A>>2]|0;k=e+100|0;S=o[k>>2]|0;T=e+104|0;I=o[T>>2]|0;u=e+108|0;d=o[u>>2]|0;e=y;t=d;r=I;i=S;a=E;n=w;c=v;f=m;l=0;while(1){C=((a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7))+t+(r&~a^i&a)+(o[32768+(l<<2)>>2]|0)+(o[x+(l<<2)>>2]|0)|0;t=C+n|0;n=((f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10))+(f&(e^c)^e&c)+C|0;l=l+1|0;if((l|0)==64)break;else{D=c;M=a;P=i;O=r;C=f;a=t;f=n;c=e;n=D;i=M;r=P;t=O;e=C}}o[p>>2]=n+m;o[g>>2]=f+y;o[b>>2]=e+v;o[_>>2]=c+w;o[A>>2]=t+E;o[k>>2]=a+S;o[T>>2]=i+I;o[u>>2]=r+d;h=R;return}function ko(e){e=e|0;var t=0;o[e+64>>2]=0;t=e+72|0;o[t>>2]=0;o[t+4>>2]=0;o[e+80>>2]=1779033703;o[e+84>>2]=-1150833019;o[e+88>>2]=1013904242;o[e+92>>2]=-1521486534;o[e+96>>2]=1359893119;o[e+100>>2]=-1694144372;o[e+104>>2]=528734635;o[e+108>>2]=1541459225;return}function So(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0;if(!n)return;a=e+64|0;c=e+72|0;s=0;i=o[a>>2]|0;do{r[e+i>>0]=r[t+s>>0]|0;i=(o[a>>2]|0)+1|0;o[a>>2]=i;if((i|0)==64){Eo(e,e);f=c;f=ks(o[f>>2]|0,o[f+4>>2]|0,512,0)|0;i=c;o[i>>2]=f;o[i+4>>2]=T;o[a>>2]=0;i=0}s=s+1|0}while((s|0)!=(n|0));return}function To(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0;s=e+64|0;n=o[s>>2]|0;i=n+1|0;r[e+n>>0]=-128;if(n>>>0<56){if(i>>>0<56)Ds(e+i|0,0,55-n|0)|0}else{if(i>>>0<64)Ds(e+i|0,0,63-n|0)|0;Eo(e,e);n=e;i=n+56|0;do{o[n>>2]=0;n=n+4|0}while((n|0)<(i|0))}f=e+72|0;l=f;l=ks(o[l>>2]|0,o[l+4>>2]|0,o[s>>2]<<3|0,0)|0;u=T;o[f>>2]=l;o[f+4>>2]=u;r[e+63>>0]=l;f=Cs(l|0,u|0,8)|0;r[e+62>>0]=f;f=Cs(l|0,u|0,16)|0;r[e+61>>0]=f;f=Cs(l|0,u|0,24)|0;r[e+60>>0]=f;r[e+59>>0]=u;f=Cs(l|0,u|0,40)|0;r[e+58>>0]=f;f=Cs(l|0,u|0,48)|0;r[e+57>>0]=f;u=Cs(l|0,u|0,56)|0;r[e+56>>0]=u;Eo(e,e);u=e+80|0;l=e+84|0;f=e+88|0;c=e+92|0;a=e+96|0;n=e+100|0;i=e+104|0;s=e+108|0;r[t>>0]=(o[u>>2]|0)>>>24;r[t+4>>0]=(o[l>>2]|0)>>>24;r[t+8>>0]=(o[f>>2]|0)>>>24;r[t+12>>0]=(o[c>>2]|0)>>>24;r[t+16>>0]=(o[a>>2]|0)>>>24;r[t+20>>0]=(o[n>>2]|0)>>>24;r[t+24>>0]=(o[i>>2]|0)>>>24;r[t+28>>0]=(o[s>>2]|0)>>>24;r[t+1>>0]=(o[u>>2]|0)>>>16;r[t+5>>0]=(o[l>>2]|0)>>>16;r[t+9>>0]=(o[f>>2]|0)>>>16;r[t+13>>0]=(o[c>>2]|0)>>>16;r[t+17>>0]=(o[a>>2]|0)>>>16;r[t+21>>0]=(o[n>>2]|0)>>>16;r[t+25>>0]=(o[i>>2]|0)>>>16;r[t+29>>0]=(o[s>>2]|0)>>>16;r[t+2>>0]=(o[u>>2]|0)>>>8;r[t+6>>0]=(o[l>>2]|0)>>>8;r[t+10>>0]=(o[f>>2]|0)>>>8;r[t+14>>0]=(o[c>>2]|0)>>>8;r[t+18>>0]=(o[a>>2]|0)>>>8;r[t+22>>0]=(o[n>>2]|0)>>>8;r[t+26>>0]=(o[i>>2]|0)>>>8;r[t+30>>0]=(o[s>>2]|0)>>>8;r[t+3>>0]=o[u>>2];r[t+7>>0]=o[l>>2];r[t+11>>0]=o[f>>2];r[t+15>>0]=o[c>>2];r[t+19>>0]=o[a>>2];r[t+23>>0]=o[n>>2];r[t+27>>0]=o[i>>2];r[t+31>>0]=o[s>>2];return}function Io(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0;L=h;h=h+16|0;M=L;U=M+4|0;E=M+8|0;k=M+12|0;_=r[e+4>>0]|0;S=M+1|0;f=r[e+5>>0]|0;T=M+5|0;m=r[e+6>>0]|0;I=M+9|0;u=r[e+7>>0]|0;x=M+13|0;b=r[e+8>>0]|0;R=M+2|0;d=r[e+9>>0]|0;C=M+6|0;A=r[e+10>>0]|0;O=M+10|0;l=r[e+11>>0]|0;P=M+14|0;a=r[e+12>>0]|0;D=M+3|0;q=r[e+13>>0]|0;B=M+7|0;g=r[e+14>>0]|0;N=M+11|0;p=r[e+15>>0]|0;j=M+15|0;v=o[n>>2]|0;y=v>>>24^(s[e>>0]|0);w=v>>>16^(s[e+1>>0]|0);c=v>>>8^(s[e+2>>0]|0);v=v^(s[e+3>>0]|0);r[k>>0]=v;F=o[n+4>>2]|0;_=F>>>24^_&255;f=F>>>16^f&255;m=F>>>8^m&255;u=F^u&255;F=o[n+8>>2]|0;b=F>>>24^b&255;d=F>>>16^d&255;A=F>>>8^A&255;l=F^l&255;F=o[n+12>>2]|0;a=F>>>24^a&255;e=F>>>16^q&255;g=F>>>8^g&255;p=F^p&255;r[M>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[S>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[R>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;r[D>>0]=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;r[U>>0]=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=e;r[B>>0]=w;r[E>>0]=A;r[O>>0]=c;r[I>>0]=g;r[N>>0]=m;r[k>>0]=p;r[j>>0]=l;r[P>>0]=u;r[x>>0]=v;xo(M);v=o[n+16>>2]|0;u=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);p=v>>>8^(s[E>>0]|0);r[E>>0]=p;v=v^(s[k>>0]|0);r[k>>0]=v;m=o[n+20>>2]|0;g=m>>>24^(s[S>>0]|0);c=m>>>16^(s[T>>0]|0);A=m>>>8^(s[I>>0]|0);m=m^(s[x>>0]|0);r[x>>0]=m;w=o[n+24>>2]|0;e=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);f=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);a=o[n+28>>2]|0;b=a>>>24^(s[D>>0]|0);_=a>>>16^(s[B>>0]|0);y=a>>>8^(s[N>>0]|0);a=a^(s[j>>0]|0);r[M>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;r[S>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;r[R>>0]=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[D>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;r[U>>0]=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=_;r[B>>0]=l;r[E>>0]=f;r[O>>0]=p;r[I>>0]=y;r[N>>0]=A;r[k>>0]=a;r[j>>0]=w;r[P>>0]=m;r[x>>0]=v;xo(M);v=o[n+32>>2]|0;m=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);a=v>>>8^(s[E>>0]|0);r[E>>0]=a;v=v^(s[k>>0]|0);r[k>>0]=v;A=o[n+36>>2]|0;y=A>>>24^(s[S>>0]|0);p=A>>>16^(s[T>>0]|0);f=A>>>8^(s[I>>0]|0);A=A^(s[x>>0]|0);r[x>>0]=A;l=o[n+40>>2]|0;_=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);c=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);b=o[n+44>>2]|0;e=b>>>24^(s[D>>0]|0);g=b>>>16^(s[B>>0]|0);u=b>>>8^(s[N>>0]|0);b=b^(s[j>>0]|0);r[M>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[S>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[R>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[D>>0]=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;r[U>>0]=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=g;r[B>>0]=w;r[E>>0]=c;r[O>>0]=a;r[I>>0]=u;r[N>>0]=f;r[k>>0]=b;r[j>>0]=l;r[P>>0]=A;r[x>>0]=v;xo(M);v=o[n+48>>2]|0;A=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);b=v>>>8^(s[E>>0]|0);r[E>>0]=b;v=v^(s[k>>0]|0);r[k>>0]=v;f=o[n+52>>2]|0;u=f>>>24^(s[S>>0]|0);a=f>>>16^(s[T>>0]|0);c=f>>>8^(s[I>>0]|0);f=f^(s[x>>0]|0);r[x>>0]=f;w=o[n+56>>2]|0;g=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);p=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);e=o[n+60>>2]|0;_=e>>>24^(s[D>>0]|0);y=e>>>16^(s[B>>0]|0);m=e>>>8^(s[N>>0]|0);e=e^(s[j>>0]|0);r[M>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;r[S>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;r[R>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;r[D>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;r[U>>0]=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=y;r[B>>0]=l;r[E>>0]=p;r[O>>0]=b;r[I>>0]=m;r[N>>0]=c;r[k>>0]=e;r[j>>0]=w;r[P>>0]=f;r[x>>0]=v;xo(M);v=o[n+64>>2]|0;f=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);e=v>>>8^(s[E>>0]|0);r[E>>0]=e;v=v^(s[k>>0]|0);r[k>>0]=v;c=o[n+68>>2]|0;m=c>>>24^(s[S>>0]|0);b=c>>>16^(s[T>>0]|0);p=c>>>8^(s[I>>0]|0);c=c^(s[x>>0]|0);r[x>>0]=c;l=o[n+72>>2]|0;y=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);a=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);_=o[n+76>>2]|0;g=_>>>24^(s[D>>0]|0);u=_>>>16^(s[B>>0]|0);A=_>>>8^(s[N>>0]|0);_=_^(s[j>>0]|0);r[M>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[S>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[R>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[D>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;r[U>>0]=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=u;r[B>>0]=w;r[E>>0]=a;r[O>>0]=e;r[I>>0]=A;r[N>>0]=p;r[k>>0]=_;r[j>>0]=l;r[P>>0]=c;r[x>>0]=v;xo(M);v=o[n+80>>2]|0;c=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);_=v>>>8^(s[E>>0]|0);r[E>>0]=_;v=v^(s[k>>0]|0);r[k>>0]=v;p=o[n+84>>2]|0;A=p>>>24^(s[S>>0]|0);e=p>>>16^(s[T>>0]|0);a=p>>>8^(s[I>>0]|0);p=p^(s[x>>0]|0);r[x>>0]=p;w=o[n+88>>2]|0;u=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);b=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);g=o[n+92>>2]|0;y=g>>>24^(s[D>>0]|0);m=g>>>16^(s[B>>0]|0);f=g>>>8^(s[N>>0]|0);g=g^(s[j>>0]|0);r[M>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[S>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;r[R>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;r[D>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;r[U>>0]=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=m;r[B>>0]=l;r[E>>0]=b;r[O>>0]=_;r[I>>0]=f;r[N>>0]=a;r[k>>0]=g;r[j>>0]=w;r[P>>0]=p;r[x>>0]=v;xo(M);v=o[n+96>>2]|0;p=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);g=v>>>8^(s[E>>0]|0);r[E>>0]=g;v=v^(s[k>>0]|0);r[k>>0]=v;a=o[n+100>>2]|0;f=a>>>24^(s[S>>0]|0);_=a>>>16^(s[T>>0]|0);b=a>>>8^(s[I>>0]|0);a=a^(s[x>>0]|0);r[x>>0]=a;l=o[n+104>>2]|0;m=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);e=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);y=o[n+108>>2]|0;u=y>>>24^(s[D>>0]|0);A=y>>>16^(s[B>>0]|0);c=y>>>8^(s[N>>0]|0);y=y^(s[j>>0]|0);r[M>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[S>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[R>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[D>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[U>>0]=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=A;r[B>>0]=w;r[E>>0]=e;r[O>>0]=g;r[I>>0]=c;r[N>>0]=b;r[k>>0]=y;r[j>>0]=l;r[P>>0]=a;r[x>>0]=v;xo(M);v=o[n+112>>2]|0;a=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);y=v>>>8^(s[E>>0]|0);r[E>>0]=y;v=v^(s[k>>0]|0);r[k>>0]=v;b=o[n+116>>2]|0;c=b>>>24^(s[S>>0]|0);g=b>>>16^(s[T>>0]|0);e=b>>>8^(s[I>>0]|0);b=b^(s[x>>0]|0);r[x>>0]=b;w=o[n+120>>2]|0;A=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);_=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);u=o[n+124>>2]|0;m=u>>>24^(s[D>>0]|0);f=u>>>16^(s[B>>0]|0);p=u>>>8^(s[N>>0]|0);u=u^(s[j>>0]|0);r[M>>0]=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[S>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[R>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;r[D>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;r[U>>0]=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=f;r[B>>0]=l;r[E>>0]=_;r[O>>0]=y;r[I>>0]=p;r[N>>0]=e;r[k>>0]=u;r[j>>0]=w;r[P>>0]=b;r[x>>0]=v;xo(M);v=o[n+128>>2]|0;b=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);u=v>>>8^(s[E>>0]|0);r[E>>0]=u;v=v^(s[k>>0]|0);r[k>>0]=v;e=o[n+132>>2]|0;p=e>>>24^(s[S>>0]|0);y=e>>>16^(s[T>>0]|0);_=e>>>8^(s[I>>0]|0);e=e^(s[x>>0]|0);r[x>>0]=e;l=o[n+136>>2]|0;f=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);g=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);m=o[n+140>>2]|0;A=m>>>24^(s[D>>0]|0);c=m>>>16^(s[B>>0]|0);a=m>>>8^(s[N>>0]|0);m=m^(s[j>>0]|0);r[M>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;r[S>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[R>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;r[U>>0]=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=c;r[B>>0]=w;r[E>>0]=g;r[O>>0]=u;r[I>>0]=a;r[N>>0]=_;r[k>>0]=m;r[j>>0]=l;r[P>>0]=e;r[x>>0]=v;xo(M);v=o[n+144>>2]|0;e=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);m=v>>>8^(s[E>>0]|0);r[E>>0]=m;v=v^(s[k>>0]|0);r[k>>0]=v;_=o[n+148>>2]|0;a=_>>>24^(s[S>>0]|0);u=_>>>16^(s[T>>0]|0);g=_>>>8^(s[I>>0]|0);_=_^(s[x>>0]|0);r[x>>0]=_;w=o[n+152>>2]|0;c=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);y=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);A=o[n+156>>2]|0;f=A>>>24^(s[D>>0]|0);p=A>>>16^(s[B>>0]|0);b=A>>>8^(s[N>>0]|0);A=A^(s[j>>0]|0);e=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[M>>0]=e;a=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[S>>0]=a;c=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[R>>0]=c;f=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=f;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;r[U>>0]=u;r[T>>0]=d;r[C>>0]=p;r[B>>0]=l;r[E>>0]=y;r[O>>0]=m;r[I>>0]=b;r[N>>0]=g;r[k>>0]=A;r[j>>0]=w;r[P>>0]=_;r[x>>0]=v;if((i|0)==128){z=b;K=d;G=41;H=A;A=y;V=u;q=e;e=40;F=w;b=g;y=l;g=f;d=43;i=p;u=c;p=42;f=n+(e<<2)|0;f=o[f>>2]|0;w=f>>>24;c=f>>>16;l=f>>>8;q=q&255;q=w^q;q=q&255;r[M>>0]=q;w=V&255;w=c^w;w=w&255;r[U>>0]=w;A=A&255;A=l^A;A=A&255;r[E>>0]=A;E=H&255;E=f^E;E=E&255;r[k>>0]=E;U=n+(G<<2)|0;U=o[U>>2]|0;f=U>>>24;l=U>>>16;M=U>>>8;k=a&255;k=f^k;k=k&255;r[S>>0]=k;S=K&255;S=l^S;S=S&255;r[T>>0]=S;T=z&255;T=M^T;T=T&255;r[I>>0]=T;I=v&255;I=U^I;I=I&255;r[x>>0]=I;U=n+(p<<2)|0;U=o[U>>2]|0;p=U>>>24;v=U>>>16;M=U>>>8;x=u&255;x=p^x;x=x&255;r[R>>0]=x;i=i&255;i=v^i;i=i&255;r[C>>0]=i;C=m&255;C=M^C;C=C&255;r[O>>0]=C;O=_&255;O=U^O;O=O&255;r[P>>0]=O;P=n+(d<<2)|0;P=o[P>>2]|0;n=P>>>24;U=P>>>16;R=P>>>8;M=g&255;M=n^M;M=M&255;r[D>>0]=M;D=y&255;D=U^D;D=D&255;r[B>>0]=D;U=b&255;U=R^U;U=U&255;r[N>>0]=U;F=F&255;F=P^F;F=F&255;r[j>>0]=F;r[t>>0]=q;q=t+1|0;r[q>>0]=w;q=t+2|0;r[q>>0]=A;q=t+3|0;r[q>>0]=E;q=t+4|0;r[q>>0]=k;q=t+5|0;r[q>>0]=S;q=t+6|0;r[q>>0]=T;q=t+7|0;r[q>>0]=I;q=t+8|0;r[q>>0]=x;q=t+9|0;r[q>>0]=i;q=t+10|0;r[q>>0]=C;q=t+11|0;r[q>>0]=O;q=t+12|0;r[q>>0]=M;q=t+13|0;r[q>>0]=D;q=t+14|0;r[q>>0]=U;q=t+15|0;r[q>>0]=F;h=L;return}xo(M);v=o[n+160>>2]|0;b=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);u=v>>>8^(s[E>>0]|0);r[E>>0]=u;v=v^(s[k>>0]|0);r[k>>0]=v;e=o[n+164>>2]|0;p=e>>>24^(s[S>>0]|0);y=e>>>16^(s[T>>0]|0);_=e>>>8^(s[I>>0]|0);e=e^(s[x>>0]|0);r[x>>0]=e;l=o[n+168>>2]|0;f=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);g=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);m=o[n+172>>2]|0;A=m>>>24^(s[D>>0]|0);c=m>>>16^(s[B>>0]|0);a=m>>>8^(s[N>>0]|0);m=m^(s[j>>0]|0);r[M>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;r[S>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[R>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;r[U>>0]=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=c;r[B>>0]=w;r[E>>0]=g;r[O>>0]=u;r[I>>0]=a;r[N>>0]=_;r[k>>0]=m;r[j>>0]=l;r[P>>0]=e;r[x>>0]=v;xo(M);v=o[n+176>>2]|0;e=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);m=v>>>8^(s[E>>0]|0);r[E>>0]=m;v=v^(s[k>>0]|0);r[k>>0]=v;_=o[n+180>>2]|0;a=_>>>24^(s[S>>0]|0);u=_>>>16^(s[T>>0]|0);g=_>>>8^(s[I>>0]|0);_=_^(s[x>>0]|0);r[x>>0]=_;w=o[n+184>>2]|0;c=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);y=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);A=o[n+188>>2]|0;f=A>>>24^(s[D>>0]|0);p=A>>>16^(s[B>>0]|0);b=A>>>8^(s[N>>0]|0);A=A^(s[j>>0]|0);e=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[M>>0]=e;a=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[S>>0]=a;c=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[R>>0]=c;f=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=f;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;r[U>>0]=u;r[T>>0]=d;r[C>>0]=p;r[B>>0]=l;r[E>>0]=y;r[O>>0]=m;r[I>>0]=b;r[N>>0]=g;r[k>>0]=A;r[j>>0]=w;r[P>>0]=_;r[x>>0]=v;if((i|0)==192){Q=b;W=49;Y=A;A=y;V=e;e=48;H=w;G=g;K=l;z=f;b=51;q=_;F=m;y=p;g=c;_=50;i=v;m=n+(e<<2)|0;m=o[m>>2]|0;w=m>>>24;p=m>>>16;v=m>>>8;V=V&255;V=w^V;V=V&255;r[M>>0]=V;w=u&255;w=p^w;w=w&255;r[U>>0]=w;A=A&255;A=v^A;A=A&255;r[E>>0]=A;E=Y&255;E=m^E;E=E&255;r[k>>0]=E;U=n+(W<<2)|0;U=o[U>>2]|0;m=U>>>24;v=U>>>16;M=U>>>8;k=a&255;k=m^k;k=k&255;r[S>>0]=k;S=d&255;S=v^S;S=S&255;r[T>>0]=S;T=Q&255;T=M^T;T=T&255;r[I>>0]=T;i=i&255;i=U^i;i=i&255;r[x>>0]=i;x=n+(_<<2)|0;x=o[x>>2]|0;U=x>>>24;_=x>>>16;I=x>>>8;M=g&255;M=U^M;M=M&255;r[R>>0]=M;U=y&255;U=_^U;U=U&255;r[C>>0]=U;F=F&255;F=I^F;F=F&255;r[O>>0]=F;q=q&255;q=x^q;q=q&255;r[P>>0]=q;P=n+(b<<2)|0;P=o[P>>2]|0;R=P>>>24;C=P>>>16;O=P>>>8;z=z&255;z=R^z;z=z&255;r[D>>0]=z;K=K&255;K=C^K;K=K&255;r[B>>0]=K;G=G&255;G=O^G;G=G&255;r[N>>0]=G;H=H&255;H=P^H;H=H&255;r[j>>0]=H;r[t>>0]=V;V=t+1|0;r[V>>0]=w;V=t+2|0;r[V>>0]=A;V=t+3|0;r[V>>0]=E;V=t+4|0;r[V>>0]=k;V=t+5|0;r[V>>0]=S;V=t+6|0;r[V>>0]=T;V=t+7|0;r[V>>0]=i;V=t+8|0;r[V>>0]=M;V=t+9|0;r[V>>0]=U;V=t+10|0;r[V>>0]=F;V=t+11|0;r[V>>0]=q;V=t+12|0;r[V>>0]=z;V=t+13|0;r[V>>0]=K;V=t+14|0;r[V>>0]=G;V=t+15|0;r[V>>0]=H;h=L;return}xo(M);F=o[n+192>>2]|0;y=F>>>24^(s[M>>0]|0);W=F>>>16^(s[U>>0]|0);w=F>>>8^(s[E>>0]|0);r[E>>0]=w;F=F^(s[k>>0]|0);r[k>>0]=F;Y=o[n+196>>2]|0;z=Y>>>24^(s[S>>0]|0);A=Y>>>16^(s[T>>0]|0);G=Y>>>8^(s[I>>0]|0);Y=Y^(s[x>>0]|0);r[x>>0]=Y;V=o[n+200>>2]|0;H=V>>>24^(s[R>>0]|0);g=V>>>16^(s[C>>0]|0);Q=V>>>8^(s[O>>0]|0);V=V^(s[P>>0]|0);K=o[n+204>>2]|0;p=K>>>24^(s[D>>0]|0);q=K>>>16^(s[B>>0]|0);i=K>>>8^(s[N>>0]|0);K=K^(s[j>>0]|0);r[M>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[S>>0]=r[(z&15)+(33024+(z>>>4<<4))>>0]|0;r[R>>0]=r[(H&15)+(33024+(H>>>4<<4))>>0]|0;r[D>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;W=r[(W&15)+(33024+((W>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;q=r[(q&15)+(33024+((q>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;G=r[(G&15)+(33024+((G>>>4&15)<<4))>>0]|0;Q=r[(Q&15)+(33024+((Q>>>4&15)<<4))>>0]|0;i=r[(i&15)+(33024+((i>>>4&15)<<4))>>0]|0;F=r[(F&15)+(33024+((F>>>4&15)<<4))>>0]|0;Y=r[(Y&15)+(33024+((Y>>>4&15)<<4))>>0]|0;V=r[(V&15)+(33024+((V>>>4&15)<<4))>>0]|0;K=r[(K&15)+(33024+((K>>>4&15)<<4))>>0]|0;r[U>>0]=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;r[T>>0]=g;r[C>>0]=q;r[B>>0]=W;r[E>>0]=Q;r[O>>0]=w;r[I>>0]=i;r[N>>0]=G;r[k>>0]=K;r[j>>0]=V;r[P>>0]=Y;r[x>>0]=F;xo(M);F=o[n+208>>2]|0;Y=F>>>24^(s[M>>0]|0);V=F>>>16^(s[U>>0]|0);K=F>>>8^(s[E>>0]|0);r[E>>0]=K;F=F^(s[k>>0]|0);r[k>>0]=F;G=o[n+212>>2]|0;i=G>>>24^(s[S>>0]|0);w=G>>>16^(s[T>>0]|0);Q=G>>>8^(s[I>>0]|0);G=G^(s[x>>0]|0);r[x>>0]=G;W=o[n+216>>2]|0;q=W>>>24^(s[R>>0]|0);g=W>>>16^(s[C>>0]|0);A=W>>>8^(s[O>>0]|0);W=W^(s[P>>0]|0);p=o[n+220>>2]|0;H=p>>>24^(s[D>>0]|0);z=p>>>16^(s[B>>0]|0);y=p>>>8^(s[N>>0]|0);p=p^(s[j>>0]|0);Y=r[(Y&15)+(33024+(Y>>>4<<4))>>0]|0;i=r[(i&15)+(33024+(i>>>4<<4))>>0]|0;r[S>>0]=i;q=r[(q&15)+(33024+(q>>>4<<4))>>0]|0;r[R>>0]=q;H=r[(H&15)+(33024+(H>>>4<<4))>>0]|0;r[D>>0]=H;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;b=57;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;m=56;W=r[(W&15)+(33024+((W>>>4&15)<<4))>>0]|0;Q=r[(Q&15)+(33024+((Q>>>4&15)<<4))>>0]|0;V=r[(V&15)+(33024+((V>>>4&15)<<4))>>0]|0;_=59;G=r[(G&15)+(33024+((G>>>4&15)<<4))>>0]|0;K=r[(K&15)+(33024+((K>>>4&15)<<4))>>0]|0;z=r[(z&15)+(33024+((z>>>4&15)<<4))>>0]|0;v=58;F=r[(F&15)+(33024+((F>>>4&15)<<4))>>0]|0;m=n+(m<<2)|0;m=o[m>>2]|0;l=m>>>24;u=m>>>16;d=m>>>8;Y=Y&255;Y=l^Y;Y=Y&255;r[M>>0]=Y;w=w&255;w=u^w;w=w&255;r[U>>0]=w;A=A&255;A=d^A;A=A&255;r[E>>0]=A;E=p&255;E=m^E;E=E&255;r[k>>0]=E;k=n+(b<<2)|0;k=o[k>>2]|0;M=k>>>24;U=k>>>16;b=k>>>8;i=i&255;i=M^i;i=i&255;r[S>>0]=i;M=g&255;M=U^M;M=M&255;r[T>>0]=M;U=y&255;U=b^U;U=U&255;r[I>>0]=U;F=F&255;F=k^F;F=F&255;r[x>>0]=F;x=n+(v<<2)|0;x=o[x>>2]|0;S=x>>>24;T=x>>>16;I=x>>>8;q=q&255;q=S^q;q=q&255;r[R>>0]=q;z=z&255;z=T^z;z=z&255;r[C>>0]=z;K=K&255;K=I^K;K=K&255;r[O>>0]=K;G=G&255;G=x^G;G=G&255;r[P>>0]=G;P=n+(_<<2)|0;P=o[P>>2]|0;R=P>>>24;C=P>>>16;O=P>>>8;H=H&255;H=R^H;H=H&255;r[D>>0]=H;V=V&255;V=C^V;V=V&255;r[B>>0]=V;Q=Q&255;Q=O^Q;Q=Q&255;r[N>>0]=Q;W=W&255;W=P^W;W=W&255;r[j>>0]=W;r[t>>0]=Y;Y=t+1|0;r[Y>>0]=w;Y=t+2|0;r[Y>>0]=A;Y=t+3|0;r[Y>>0]=E;Y=t+4|0;r[Y>>0]=i;Y=t+5|0;r[Y>>0]=M;Y=t+6|0;r[Y>>0]=U;Y=t+7|0;r[Y>>0]=F;Y=t+8|0;r[Y>>0]=q;Y=t+9|0;r[Y>>0]=z;Y=t+10|0;r[Y>>0]=K;Y=t+11|0;r[Y>>0]=G;Y=t+12|0;r[Y>>0]=H;Y=t+13|0;r[Y>>0]=V;Y=t+14|0;r[Y>>0]=Q;Y=t+15|0;r[Y>>0]=W;h=L;return}function xo(e){e=e|0;var t=0,n=0,i=0,o=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0;h=r[e>>0]|0;u=e+4|0;i=r[u>>0]|0;o=e+8|0;s=r[o>>0]|0;a=e+12|0;n=r[a>>0]|0;f=h&255;c=i&255;t=s&255;d=n&255;r[e>>0]=n^s^r[33280+(f*6|0)>>0]^r[33280+(c*6|0)+1>>0];r[u>>0]=r[33280+(c*6|0)>>0]^h^n^r[33280+(t*6|0)+1>>0];r[o>>0]=r[33280+(d*6|0)+1>>0]^(r[33280+(t*6|0)>>0]^(i^h));r[a>>0]=s^i^r[33280+(f*6|0)+1>>0]^r[33280+(d*6|0)>>0];a=e+1|0;d=r[a>>0]|0;f=e+5|0;i=r[f>>0]|0;s=e+9|0;o=r[s>>0]|0;h=e+13|0;t=r[h>>0]|0;u=d&255;n=i&255;c=o&255;l=t&255;r[a>>0]=t^o^r[33280+(u*6|0)>>0]^r[33280+(n*6|0)+1>>0];r[f>>0]=r[33280+(n*6|0)>>0]^d^t^r[33280+(c*6|0)+1>>0];r[s>>0]=r[33280+(l*6|0)+1>>0]^(r[33280+(c*6|0)>>0]^(i^d));r[h>>0]=o^i^r[33280+(u*6|0)+1>>0]^r[33280+(l*6|0)>>0];h=e+2|0;l=r[h>>0]|0;u=e+6|0;i=r[u>>0]|0;o=e+10|0;s=r[o>>0]|0;d=e+14|0;c=r[d>>0]|0;f=l&255;t=i&255;n=s&255;a=c&255;r[h>>0]=c^s^r[33280+(f*6|0)>>0]^r[33280+(t*6|0)+1>>0];r[u>>0]=r[33280+(t*6|0)>>0]^l^c^r[33280+(n*6|0)+1>>0];r[o>>0]=r[33280+(a*6|0)+1>>0]^(r[33280+(n*6|0)>>0]^(i^l));r[d>>0]=s^i^r[33280+(f*6|0)+1>>0]^r[33280+(a*6|0)>>0];d=e+3|0;a=r[d>>0]|0;f=e+7|0;i=r[f>>0]|0;s=e+11|0;o=r[s>>0]|0;e=e+15|0;l=r[e>>0]|0;n=a&255;u=i&255;c=o&255;t=l&255;r[d>>0]=l^o^r[33280+(n*6|0)>>0]^r[33280+(u*6|0)+1>>0];r[f>>0]=r[33280+(u*6|0)>>0]^a^l^r[33280+(c*6|0)+1>>0];r[s>>0]=r[33280+(t*6|0)+1>>0]^(r[33280+(c*6|0)>>0]^(i^a));r[e>>0]=o^i^r[33280+(n*6|0)+1>>0]^r[33280+(t*6|0)>>0];return}function Ro(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,a=0;switch(n|0){case 128:{i=4;a=44;break}case 192:{i=6;a=52;break}case 256:{i=8;a=60;break}default:return}n=0;do{r=n<<2;o[t+(n<<2)>>2]=(s[e+(r|1)>>0]|0)<<16|(s[e+r>>0]|0)<<24|(s[e+(r|2)>>0]|0)<<8|(s[e+(r|3)>>0]|0);n=n+1|0}while(n>>>0>>0);if(i>>>0<=6){r=i;do{e=r+-1|0;n=o[t+(e<<2)>>2]|0;if(!((r>>>0)%(i>>>0)|0))n=((s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)<<8|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)|(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<16|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<24)^o[34816+(((e|0)/(i|0)|0)<<2)>>2];o[t+(r<<2)>>2]=o[t+(r-i<<2)>>2]^n;r=r+1|0}while((r|0)!=(a|0));return}r=i;do{e=r+-1|0;n=o[t+(e<<2)>>2]|0;switch(((r>>>0)%(i>>>0)|0)&15){case 0:{n=((s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)<<8|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)|(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<16|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<24)^o[34816+(((e|0)/(i|0)|0)<<2)>>2];break}case 4:{n=(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<8|(s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<16|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)<<24;break}default:{}}o[t+(r<<2)>>2]=o[t+(r-i<<2)>>2]^n;r=r+1|0}while((r|0)!=(a|0));return}function Co(e){e=e|0;var t=0,n=0,i=0,o=0,a=0,c=0,f=0,l=0;f=e+4|0;i=e+8|0;n=e+12|0;t=s[e>>0]|0;a=s[f>>0]|0;l=s[i>>0]|0;o=s[n>>0]|0;r[e>>0]=r[33280+(o*6|0)+2>>0]^(r[33280+(l*6|0)+4>>0]^(r[33280+(a*6|0)+3>>0]^r[33280+(t*6|0)+5>>0]));r[f>>0]=r[33280+(o*6|0)+4>>0]^(r[33280+(l*6|0)+3>>0]^(r[33280+(a*6|0)+5>>0]^r[33280+(t*6|0)+2>>0]));r[i>>0]=r[33280+(o*6|0)+3>>0]^(r[33280+(l*6|0)+5>>0]^(r[33280+(a*6|0)+2>>0]^r[33280+(t*6|0)+4>>0]));r[n>>0]=r[33280+(o*6|0)+5>>0]^(r[33280+(l*6|0)+2>>0]^(r[33280+(a*6|0)+4>>0]^r[33280+(t*6|0)+3>>0]));n=e+1|0;t=e+5|0;a=e+9|0;l=e+13|0;o=s[n>>0]|0;i=s[t>>0]|0;f=s[a>>0]|0;c=s[l>>0]|0;r[n>>0]=r[33280+(c*6|0)+2>>0]^(r[33280+(f*6|0)+4>>0]^(r[33280+(i*6|0)+3>>0]^r[33280+(o*6|0)+5>>0]));r[t>>0]=r[33280+(c*6|0)+4>>0]^(r[33280+(f*6|0)+3>>0]^(r[33280+(i*6|0)+5>>0]^r[33280+(o*6|0)+2>>0]));r[a>>0]=r[33280+(c*6|0)+3>>0]^(r[33280+(f*6|0)+5>>0]^(r[33280+(i*6|0)+2>>0]^r[33280+(o*6|0)+4>>0]));r[l>>0]=r[33280+(c*6|0)+5>>0]^(r[33280+(f*6|0)+2>>0]^(r[33280+(i*6|0)+4>>0]^r[33280+(o*6|0)+3>>0]));l=e+2|0;o=e+6|0;i=e+10|0;f=e+14|0;c=s[l>>0]|0;a=s[o>>0]|0;t=s[i>>0]|0;n=s[f>>0]|0;r[l>>0]=r[33280+(n*6|0)+2>>0]^(r[33280+(t*6|0)+4>>0]^(r[33280+(a*6|0)+3>>0]^r[33280+(c*6|0)+5>>0]));r[o>>0]=r[33280+(n*6|0)+4>>0]^(r[33280+(t*6|0)+3>>0]^(r[33280+(a*6|0)+5>>0]^r[33280+(c*6|0)+2>>0]));r[i>>0]=r[33280+(n*6|0)+3>>0]^(r[33280+(t*6|0)+5>>0]^(r[33280+(a*6|0)+2>>0]^r[33280+(c*6|0)+4>>0]));r[f>>0]=r[33280+(n*6|0)+5>>0]^(r[33280+(t*6|0)+2>>0]^(r[33280+(a*6|0)+4>>0]^r[33280+(c*6|0)+3>>0]));f=e+3|0;c=e+7|0;a=e+11|0;e=e+15|0;t=s[f>>0]|0;n=s[c>>0]|0;i=s[a>>0]|0;o=s[e>>0]|0;r[f>>0]=r[33280+(o*6|0)+2>>0]^(r[33280+(i*6|0)+4>>0]^(r[33280+(n*6|0)+3>>0]^r[33280+(t*6|0)+5>>0]));r[c>>0]=r[33280+(o*6|0)+4>>0]^(r[33280+(i*6|0)+3>>0]^(r[33280+(n*6|0)+5>>0]^r[33280+(t*6|0)+2>>0]));r[a>>0]=r[33280+(o*6|0)+3>>0]^(r[33280+(i*6|0)+5>>0]^(r[33280+(n*6|0)+2>>0]^r[33280+(t*6|0)+4>>0]));r[e>>0]=r[33280+(o*6|0)+5>>0]^(r[33280+(i*6|0)+2>>0]^(r[33280+(n*6|0)+4>>0]^r[33280+(t*6|0)+3>>0]));return}function Oo(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0;L=h;h=h+16|0;D=L;w=r[e>>0]|0;r[D>>0]=w;A=r[e+1>>0]|0;U=D+4|0;r[U>>0]=A;a=r[e+2>>0]|0;k=D+8|0;r[k>>0]=a;c=r[e+3>>0]|0;S=D+12|0;r[S>>0]=c;f=r[e+4>>0]|0;T=D+1|0;r[T>>0]=f;l=r[e+5>>0]|0;I=D+5|0;r[I>>0]=l;u=r[e+6>>0]|0;x=D+9|0;r[x>>0]=u;d=r[e+7>>0]|0;R=D+13|0;r[R>>0]=d;p=r[e+8>>0]|0;C=D+2|0;r[C>>0]=p;m=r[e+9>>0]|0;O=D+6|0;r[O>>0]=m;g=r[e+10>>0]|0;P=D+10|0;r[P>>0]=g;y=r[e+11>>0]|0;M=D+14|0;r[M>>0]=y;b=r[e+12>>0]|0;B=D+3|0;r[B>>0]=b;v=r[e+13>>0]|0;N=D+7|0;r[N>>0]=v;_=r[e+14>>0]|0;j=D+11|0;r[j>>0]=_;e=r[e+15>>0]|0;E=D+15|0;r[E>>0]=e;if((i|0)>128){if((i|0)>192){F=o[n+224>>2]|0;H=F>>>24^w&255;G=F>>>16^A&255;z=F>>>8^a&255;w=F^c&255;F=o[n+228>>2]|0;A=F>>>24^f&255;K=F>>>16^l&255;q=F>>>8^u&255;F=F^d&255;c=o[n+232>>2]|0;a=c>>>24^p&255;p=c>>>16^m&255;i=c>>>8^g&255;c=c^y&255;f=o[n+236>>2]|0;g=f>>>24^b&255;l=f>>>16^v&255;m=f>>>8^_&255;f=f^e&255;v=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[T>>0]=A;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[C>>0]=a;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[B>>0]=g;l=r[(l&15)+(34880+((l>>>4&15)<<4))>>0]|0;u=r[(G&15)+(34880+((G>>>4&15)<<4))>>0]|0;d=r[(K&15)+(34880+((K>>>4&15)<<4))>>0]|0;r[O>>0]=d;y=r[(p&15)+(34880+((p>>>4&15)<<4))>>0]|0;r[N>>0]=y;i=r[(i&15)+(34880+((i>>>4&15)<<4))>>0]|0;m=r[(m&15)+(34880+((m>>>4&15)<<4))>>0]|0;_=r[(z&15)+(34880+((z>>>4&15)<<4))>>0]|0;p=r[(q&15)+(34880+((q>>>4&15)<<4))>>0]|0;r[j>>0]=p;e=r[(F&15)+(34880+((F>>>4&15)<<4))>>0]|0;c=r[(c&15)+(34880+((c>>>4&15)<<4))>>0]|0;f=r[(f&15)+(34880+((f>>>4&15)<<4))>>0]|0;w=r[(w&15)+(34880+((w>>>4&15)<<4))>>0]|0;b=o[n+208>>2]|0;r[D>>0]=b>>>24^v&255;r[U>>0]=b>>>16^l&255;r[k>>0]=b>>>8^i&255;r[S>>0]=b^e&255;e=o[n+212>>2]|0;r[T>>0]=e>>>24^A&255;r[I>>0]=e>>>16^u&255;r[x>>0]=e>>>8^m&255;r[R>>0]=e^c&255;c=o[n+216>>2]|0;r[C>>0]=c>>>24^a&255;r[O>>0]=c>>>16^d&255;r[P>>0]=c>>>8^_&255;r[M>>0]=c^f&255;f=o[n+220>>2]|0;r[B>>0]=f>>>24^g&255;r[N>>0]=f>>>16^y&255;r[j>>0]=f>>>8^p&255;r[E>>0]=f^w&255;Co(D);w=r[N>>0]|0;f=r[O>>0]|0;p=r[I>>0]|0;y=r[U>>0]|0;g=r[j>>0]|0;c=r[x>>0]|0;_=r[P>>0]|0;d=r[k>>0]|0;a=r[E>>0]|0;e=r[S>>0]|0;m=r[R>>0]|0;u=r[M>>0]|0;A=s[D>>0]|0;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[D>>0]=A;b=s[T>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[T>>0]=b;i=s[C>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[C>>0]=i;l=s[B>>0]|0;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;r[B>>0]=l;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;p=p&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[O>>0]=p;f=f&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;r[N>>0]=f;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;c=c&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[j>>0]=c;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;v=o[n+192>>2]|0;r[D>>0]=v>>>24^A&255;r[U>>0]=v>>>16^w&255;r[k>>0]=v>>>8^_&255;r[S>>0]=v^m&255;m=o[n+196>>2]|0;r[T>>0]=m>>>24^b&255;r[I>>0]=m>>>16^y&255;r[x>>0]=m>>>8^g&255;r[R>>0]=m^u&255;u=o[n+200>>2]|0;r[C>>0]=u>>>24^i&255;r[O>>0]=u>>>16^p&255;r[P>>0]=u>>>8^d&255;r[M>>0]=u^a&255;a=o[n+204>>2]|0;r[B>>0]=a>>>24^l&255;r[N>>0]=a>>>16^f&255;r[j>>0]=a>>>8^c&255;r[E>>0]=a^e&255;Co(D);e=r[D>>0]|0;a=r[T>>0]|0;c=r[C>>0]|0;f=r[B>>0]|0;l=r[N>>0]|0;u=r[U>>0]|0;d=r[I>>0]|0;p=r[O>>0]|0;i=r[P>>0]|0;m=r[j>>0]|0;g=r[k>>0]|0;y=r[x>>0]|0;b=r[R>>0]|0;v=r[M>>0]|0;_=r[E>>0]|0;w=r[S>>0]|0}else{G=o[n+192>>2]|0;V=(G>>>24^w&255)&255;r[D>>0]=V;F=(G>>>16^A&255)&255;r[U>>0]=F;z=(G>>>8^a&255)&255;r[k>>0]=z;w=(G^c&255)&255;r[S>>0]=w;G=o[n+196>>2]|0;a=(G>>>24^f&255)&255;r[T>>0]=a;q=(G>>>16^l&255)&255;r[I>>0]=q;K=(G>>>8^u&255)&255;r[x>>0]=K;G=(G^d&255)&255;r[R>>0]=G;H=o[n+200>>2]|0;c=(H>>>24^p&255)&255;r[C>>0]=c;p=(H>>>16^m&255)&255;r[O>>0]=p;i=(H>>>8^g&255)&255;r[P>>0]=i;H=(H^y&255)&255;r[M>>0]=H;u=o[n+204>>2]|0;f=(u>>>24^b&255)&255;r[B>>0]=f;l=(u>>>16^v&255)&255;r[N>>0]=l;m=(u>>>8^_&255)&255;r[j>>0]=m;_=(u^e&255)&255;r[E>>0]=_;e=V;u=F;d=q;g=z;y=K;b=G;v=H}H=e&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;V=a&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[T>>0]=V;e=c&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;r[C>>0]=e;a=f&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[B>>0]=a;l=l&255;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;r[O>>0]=d;c=p&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[N>>0]=c;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;p=y&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[j>>0]=p;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;y=v&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;f=_&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;_=o[n+176>>2]|0;r[D>>0]=_>>>24^H&255;r[U>>0]=_>>>16^l&255;r[k>>0]=_>>>8^i&255;r[S>>0]=_^b&255;_=o[n+180>>2]|0;r[T>>0]=_>>>24^V&255;r[I>>0]=_>>>16^u&255;r[x>>0]=_>>>8^m&255;r[R>>0]=_^y&255;y=o[n+184>>2]|0;r[C>>0]=y>>>24^e&255;r[O>>0]=y>>>16^d&255;r[P>>0]=y>>>8^g&255;r[M>>0]=y^f&255;f=o[n+188>>2]|0;r[B>>0]=f>>>24^a&255;r[N>>0]=f>>>16^c&255;r[j>>0]=f>>>8^p&255;r[E>>0]=f^w&255;Co(D);w=r[N>>0]|0;f=r[O>>0]|0;p=r[I>>0]|0;y=r[U>>0]|0;g=r[j>>0]|0;c=r[x>>0]|0;_=r[P>>0]|0;d=r[k>>0]|0;a=r[E>>0]|0;e=r[S>>0]|0;m=r[R>>0]|0;u=r[M>>0]|0;V=s[D>>0]|0;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[D>>0]=V;b=s[T>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[T>>0]=b;i=s[C>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[C>>0]=i;l=s[B>>0]|0;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;r[B>>0]=l;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;p=p&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[O>>0]=p;f=f&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;r[N>>0]=f;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;c=c&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[j>>0]=c;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;v=o[n+160>>2]|0;r[D>>0]=v>>>24^V&255;r[U>>0]=v>>>16^w&255;r[k>>0]=v>>>8^_&255;r[S>>0]=v^m&255;m=o[n+164>>2]|0;r[T>>0]=m>>>24^b&255;r[I>>0]=m>>>16^y&255;r[x>>0]=m>>>8^g&255;r[R>>0]=m^u&255;u=o[n+168>>2]|0;r[C>>0]=u>>>24^i&255;r[O>>0]=u>>>16^p&255;r[P>>0]=u>>>8^d&255;r[M>>0]=u^a&255;a=o[n+172>>2]|0;r[B>>0]=a>>>24^l&255;r[N>>0]=a>>>16^f&255;r[j>>0]=a>>>8^c&255;r[E>>0]=a^e&255;Co(D);e=r[D>>0]|0;a=r[T>>0]|0;c=r[C>>0]|0;f=r[B>>0]|0;l=r[N>>0]|0;u=r[U>>0]|0;d=r[I>>0]|0;p=r[O>>0]|0;i=r[P>>0]|0;m=r[j>>0]|0;g=r[k>>0]|0;y=r[x>>0]|0;b=r[R>>0]|0;v=r[M>>0]|0;_=r[E>>0]|0;w=r[S>>0]|0}else{H=o[n+160>>2]|0;F=(H>>>24^w&255)&255;r[D>>0]=F;q=(H>>>16^A&255)&255;r[U>>0]=q;K=(H>>>8^a&255)&255;r[k>>0]=K;w=(H^c&255)&255;r[S>>0]=w;H=o[n+164>>2]|0;a=(H>>>24^f&255)&255;r[T>>0]=a;z=(H>>>16^l&255)&255;r[I>>0]=z;G=(H>>>8^u&255)&255;r[x>>0]=G;H=(H^d&255)&255;r[R>>0]=H;V=o[n+168>>2]|0;c=(V>>>24^p&255)&255;r[C>>0]=c;p=(V>>>16^m&255)&255;r[O>>0]=p;i=(V>>>8^g&255)&255;r[P>>0]=i;V=(V^y&255)&255;r[M>>0]=V;u=o[n+172>>2]|0;f=(u>>>24^b&255)&255;r[B>>0]=f;l=(u>>>16^v&255)&255;r[N>>0]=l;m=(u>>>8^_&255)&255;r[j>>0]=m;_=(u^e&255)&255;r[E>>0]=_;e=F;u=q;d=z;g=K;y=G;b=H;v=V}e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[T>>0]=a;A=c&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[C>>0]=A;V=f&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[B>>0]=V;l=l&255;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;z=u&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;H=d&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[O>>0]=H;G=p&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[N>>0]=G;p=i&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;F=g&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;q=y&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[j>>0]=q;i=b&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;b=v&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;K=_&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;v=w&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;w=o[n+144>>2]|0;r[D>>0]=w>>>24^e&255;r[U>>0]=w>>>16^l&255;r[k>>0]=w>>>8^p&255;r[S>>0]=w^i&255;w=o[n+148>>2]|0;r[T>>0]=w>>>24^a&255;r[I>>0]=w>>>16^z&255;r[x>>0]=w>>>8^m&255;r[R>>0]=w^b&255;w=o[n+152>>2]|0;r[C>>0]=w>>>24^A&255;r[O>>0]=w>>>16^H&255;r[P>>0]=w>>>8^F&255;r[M>>0]=w^K&255;K=o[n+156>>2]|0;r[B>>0]=K>>>24^V&255;r[N>>0]=K>>>16^G&255;r[j>>0]=K>>>8^q&255;r[E>>0]=K^v&255;Co(D);v=r[N>>0]|0;K=r[O>>0]|0;q=r[I>>0]|0;G=r[U>>0]|0;w=r[j>>0]|0;b=r[x>>0]|0;V=r[P>>0]|0;F=r[k>>0]|0;m=r[E>>0]|0;H=r[S>>0]|0;i=r[R>>0]|0;A=r[M>>0]|0;g=s[D>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[D>>0]=g;p=s[T>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[T>>0]=p;z=s[C>>0]|0;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[C>>0]=z;_=s[B>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[B>>0]=_;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[O>>0]=q;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[N>>0]=K;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[j>>0]=b;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;y=o[n+128>>2]|0;r[D>>0]=y>>>24^g&255;r[U>>0]=y>>>16^v&255;r[k>>0]=y>>>8^V&255;r[S>>0]=y^i&255;i=o[n+132>>2]|0;r[T>>0]=i>>>24^p&255;r[I>>0]=i>>>16^G&255;r[x>>0]=i>>>8^w&255;r[R>>0]=i^A&255;A=o[n+136>>2]|0;r[C>>0]=A>>>24^z&255;r[O>>0]=A>>>16^q&255;r[P>>0]=A>>>8^F&255;r[M>>0]=A^m&255;m=o[n+140>>2]|0;r[B>>0]=m>>>24^_&255;r[N>>0]=m>>>16^K&255;r[j>>0]=m>>>8^b&255;r[E>>0]=m^H&255;Co(D);H=r[N>>0]|0;m=r[O>>0]|0;b=r[I>>0]|0;K=r[U>>0]|0;_=r[j>>0]|0;A=r[x>>0]|0;F=r[P>>0]|0;q=r[k>>0]|0;z=r[E>>0]|0;i=r[S>>0]|0;w=r[R>>0]|0;G=r[M>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;y=s[T>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[T>>0]=y;V=s[C>>0]|0;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[C>>0]=V;v=s[B>>0]|0;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;r[B>>0]=v;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[O>>0]=b;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[N>>0]=m;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[j>>0]=A;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;g=o[n+112>>2]|0;r[D>>0]=g>>>24^p&255;r[U>>0]=g>>>16^H&255;r[k>>0]=g>>>8^F&255;r[S>>0]=g^w&255;w=o[n+116>>2]|0;r[T>>0]=w>>>24^y&255;r[I>>0]=w>>>16^K&255;r[x>>0]=w>>>8^_&255;r[R>>0]=w^G&255;G=o[n+120>>2]|0;r[C>>0]=G>>>24^V&255;r[O>>0]=G>>>16^b&255;r[P>>0]=G>>>8^q&255;r[M>>0]=G^z&255;z=o[n+124>>2]|0;r[B>>0]=z>>>24^v&255;r[N>>0]=z>>>16^m&255;r[j>>0]=z>>>8^A&255;r[E>>0]=z^i&255;Co(D);i=r[N>>0]|0;z=r[O>>0]|0;A=r[I>>0]|0;m=r[U>>0]|0;v=r[j>>0]|0;G=r[x>>0]|0;q=r[P>>0]|0;b=r[k>>0]|0;V=r[E>>0]|0;w=r[S>>0]|0;_=r[R>>0]|0;K=r[M>>0]|0;y=s[D>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[D>>0]=y;g=s[T>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[T>>0]=g;F=s[C>>0]|0;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[C>>0]=F;H=s[B>>0]|0;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[B>>0]=H;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[O>>0]=A;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[N>>0]=z;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[j>>0]=G;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;p=o[n+96>>2]|0;r[D>>0]=p>>>24^y&255;r[U>>0]=p>>>16^i&255;r[k>>0]=p>>>8^q&255;r[S>>0]=p^_&255;_=o[n+100>>2]|0;r[T>>0]=_>>>24^g&255;r[I>>0]=_>>>16^m&255;r[x>>0]=_>>>8^v&255;r[R>>0]=_^K&255;K=o[n+104>>2]|0;r[C>>0]=K>>>24^F&255;r[O>>0]=K>>>16^A&255;r[P>>0]=K>>>8^b&255;r[M>>0]=K^V&255;V=o[n+108>>2]|0;r[B>>0]=V>>>24^H&255;r[N>>0]=V>>>16^z&255;r[j>>0]=V>>>8^G&255;r[E>>0]=V^w&255;Co(D);w=r[N>>0]|0;V=r[O>>0]|0;G=r[I>>0]|0;z=r[U>>0]|0;H=r[j>>0]|0;K=r[x>>0]|0;b=r[P>>0]|0;A=r[k>>0]|0;F=r[E>>0]|0;_=r[S>>0]|0;v=r[R>>0]|0;m=r[M>>0]|0;g=s[D>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[D>>0]=g;p=s[T>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[T>>0]=p;q=s[C>>0]|0;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[C>>0]=q;i=s[B>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[B>>0]=i;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[O>>0]=G;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[N>>0]=V;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[j>>0]=K;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;y=o[n+80>>2]|0;r[D>>0]=y>>>24^g&255;r[U>>0]=y>>>16^w&255;r[k>>0]=y>>>8^b&255;r[S>>0]=y^v&255;v=o[n+84>>2]|0;r[T>>0]=v>>>24^p&255;r[I>>0]=v>>>16^z&255;r[x>>0]=v>>>8^H&255;r[R>>0]=v^m&255;m=o[n+88>>2]|0;r[C>>0]=m>>>24^q&255;r[O>>0]=m>>>16^G&255;r[P>>0]=m>>>8^A&255;r[M>>0]=m^F&255;F=o[n+92>>2]|0;r[B>>0]=F>>>24^i&255;r[N>>0]=F>>>16^V&255;r[j>>0]=F>>>8^K&255;r[E>>0]=F^_&255;Co(D);_=r[N>>0]|0;F=r[O>>0]|0;K=r[I>>0]|0;V=r[U>>0]|0;i=r[j>>0]|0;m=r[x>>0]|0;A=r[P>>0]|0;G=r[k>>0]|0;q=r[E>>0]|0;v=r[S>>0]|0;H=r[R>>0]|0;z=r[M>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;y=s[T>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[T>>0]=y;b=s[C>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[C>>0]=b;w=s[B>>0]|0;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[B>>0]=w;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[O>>0]=K;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[N>>0]=F;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[j>>0]=m;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;g=o[n+64>>2]|0;r[D>>0]=g>>>24^p&255;r[U>>0]=g>>>16^_&255;r[k>>0]=g>>>8^A&255;r[S>>0]=g^H&255;H=o[n+68>>2]|0;r[T>>0]=H>>>24^y&255;r[I>>0]=H>>>16^V&255;r[x>>0]=H>>>8^i&255;r[R>>0]=H^z&255;z=o[n+72>>2]|0;r[C>>0]=z>>>24^b&255;r[O>>0]=z>>>16^K&255;r[P>>0]=z>>>8^G&255;r[M>>0]=z^q&255;q=o[n+76>>2]|0;r[B>>0]=q>>>24^w&255;r[N>>0]=q>>>16^F&255;r[j>>0]=q>>>8^m&255;r[E>>0]=q^v&255;Co(D);v=r[N>>0]|0;q=r[O>>0]|0;m=r[I>>0]|0;F=r[U>>0]|0;w=r[j>>0]|0;z=r[x>>0]|0;G=r[P>>0]|0;K=r[k>>0]|0;b=r[E>>0]|0;H=r[S>>0]|0;i=r[R>>0]|0;V=r[M>>0]|0;y=s[D>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[D>>0]=y;g=s[T>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[T>>0]=g;A=s[C>>0]|0;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[C>>0]=A;_=s[B>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[B>>0]=_;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[O>>0]=m;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[N>>0]=q;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[j>>0]=z;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;p=o[n+48>>2]|0;r[D>>0]=p>>>24^y&255;r[U>>0]=p>>>16^v&255;r[k>>0]=p>>>8^G&255;r[S>>0]=p^i&255;i=o[n+52>>2]|0;r[T>>0]=i>>>24^g&255;r[I>>0]=i>>>16^F&255;r[x>>0]=i>>>8^w&255;r[R>>0]=i^V&255;V=o[n+56>>2]|0;r[C>>0]=V>>>24^A&255;r[O>>0]=V>>>16^m&255;r[P>>0]=V>>>8^K&255;r[M>>0]=V^b&255;b=o[n+60>>2]|0;r[B>>0]=b>>>24^_&255;r[N>>0]=b>>>16^q&255;r[j>>0]=b>>>8^z&255;r[E>>0]=b^H&255;Co(D);H=r[N>>0]|0;b=r[O>>0]|0;z=r[I>>0]|0;q=r[U>>0]|0;_=r[j>>0]|0;V=r[x>>0]|0;K=r[P>>0]|0;m=r[k>>0]|0;A=r[E>>0]|0;i=r[S>>0]|0;w=r[R>>0]|0;F=r[M>>0]|0;g=s[D>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[D>>0]=g;p=s[T>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[T>>0]=p;G=s[C>>0]|0;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[C>>0]=G;v=s[B>>0]|0;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;r[B>>0]=v;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[O>>0]=z;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[N>>0]=b;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[j>>0]=V;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;y=o[n+32>>2]|0;r[D>>0]=y>>>24^g&255;r[U>>0]=y>>>16^H&255;r[k>>0]=y>>>8^K&255;r[S>>0]=y^w&255;w=o[n+36>>2]|0;r[T>>0]=w>>>24^p&255;r[I>>0]=w>>>16^q&255;r[x>>0]=w>>>8^_&255;r[R>>0]=w^F&255;F=o[n+40>>2]|0;r[C>>0]=F>>>24^G&255;r[O>>0]=F>>>16^z&255;r[P>>0]=F>>>8^m&255;r[M>>0]=F^A&255;A=o[n+44>>2]|0;r[B>>0]=A>>>24^v&255;r[N>>0]=A>>>16^b&255;r[j>>0]=A>>>8^V&255;r[E>>0]=A^i&255;Co(D);i=r[N>>0]|0;A=r[O>>0]|0;V=r[I>>0]|0;b=r[U>>0]|0;v=r[j>>0]|0;F=r[x>>0]|0;m=r[P>>0]|0;z=r[k>>0]|0;G=r[E>>0]|0;w=r[S>>0]|0;_=r[R>>0]|0;q=r[M>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;y=s[T>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[T>>0]=y;K=s[C>>0]|0;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[C>>0]=K;H=s[B>>0]|0;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[B>>0]=H;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[O>>0]=V;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[N>>0]=A;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[j>>0]=F;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;g=o[n+16>>2]|0;r[D>>0]=g>>>24^p&255;r[U>>0]=g>>>16^i&255;r[k>>0]=g>>>8^m&255;r[S>>0]=g^_&255;_=o[n+20>>2]|0;r[T>>0]=_>>>24^y&255;r[I>>0]=_>>>16^b&255;r[x>>0]=_>>>8^v&255;r[R>>0]=_^q&255;q=o[n+24>>2]|0;r[C>>0]=q>>>24^K&255;r[O>>0]=q>>>16^V&255;r[P>>0]=q>>>8^z&255;r[M>>0]=q^G&255;G=o[n+28>>2]|0;r[B>>0]=G>>>24^H&255;r[N>>0]=G>>>16^A&255;r[j>>0]=G>>>8^F&255;r[E>>0]=G^w&255;Co(D);w=r[N>>0]|0;G=r[O>>0]|0;F=r[I>>0]|0;A=r[U>>0]|0;I=r[j>>0]|0;H=r[x>>0]|0;P=r[P>>0]|0;q=r[k>>0]|0;z=r[E>>0]|0;V=r[S>>0]|0;O=r[R>>0]|0;N=r[M>>0]|0;x=s[D>>0]|0;x=r[(x&15)+(34880+(x>>>4<<4))>>0]|0;r[D>>0]=x;M=s[T>>0]|0;M=r[(M&15)+(34880+(M>>>4<<4))>>0]|0;r[T>>0]=M;U=s[C>>0]|0;U=r[(U&15)+(34880+(U>>>4<<4))>>0]|0;r[C>>0]=U;K=s[B>>0]|0;R=w&255;D=A&255;F=F&255;G=G&255;C=P&255;B=I&255;q=q&255;H=H&255;O=O&255;N=N&255;z=z&255;V=V&255;I=o[n>>2]|0;R=(I>>>16^(s[(R&15)+(34880+(R>>>4<<4))>>0]|0))&255;C=(I>>>8^(s[(C&15)+(34880+(C>>>4<<4))>>0]|0))&255;O=(I^(s[(O&15)+(34880+(O>>>4<<4))>>0]|0))&255;P=o[n+4>>2]|0;D=(P>>>16^(s[(D&15)+(34880+(D>>>4<<4))>>0]|0))&255;B=(P>>>8^(s[(B&15)+(34880+(B>>>4<<4))>>0]|0))&255;N=(P^(s[(N&15)+(34880+(N>>>4<<4))>>0]|0))&255;j=o[n+8>>2]|0;F=(j>>>16^(s[(F&15)+(34880+(F>>>4<<4))>>0]|0))&255;q=(j>>>8^(s[(q&15)+(34880+(q>>>4<<4))>>0]|0))&255;z=(j^(s[(z&15)+(34880+(z>>>4<<4))>>0]|0))&255;n=o[n+12>>2]|0;K=(n>>>24^(s[(K&15)+(34880+(K>>>4<<4))>>0]|0))&255;G=(n>>>16^(s[(G&15)+(34880+(G>>>4<<4))>>0]|0))&255;H=(n>>>8^(s[(H&15)+(34880+(H>>>4<<4))>>0]|0))&255;V=(n^(s[(V&15)+(34880+(V>>>4<<4))>>0]|0))&255;r[t>>0]=I>>>24^x&255;r[t+1>>0]=R;r[t+2>>0]=C;r[t+3>>0]=O;r[t+4>>0]=P>>>24^M&255;r[t+5>>0]=D;r[t+6>>0]=B;r[t+7>>0]=N;r[t+8>>0]=j>>>24^U&255;r[t+9>>0]=F;r[t+10>>0]=q;r[t+11>>0]=z;r[t+12>>0]=K;r[t+13>>0]=G;r[t+14>>0]=H;r[t+15>>0]=V;h=L;return}function Po(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ct=0,ft=0,lt=0,ut=0,dt=0,ht=0,pt=0,mt=0,gt=0,yt=0,bt=0,vt=0,_t=0,wt=0,At=0,Et=0,kt=0,St=0,Tt=0,It=0,xt=0,Rt=0,Ct=0,Ot=0,Pt=0,Mt=0,Dt=0,Bt=0,Nt=0,jt=0,Ut=0,Lt=0,Ft=0,qt=0;Pt=h;h=h+2768|0;bt=Pt+2608|0;vt=Pt+2448|0;Ct=Pt+2288|0;_t=Pt+2128|0;wt=Pt+1968|0;At=Pt+1808|0;Ot=Pt+1648|0;Et=Pt+1488|0;kt=Pt+1328|0;St=Pt+1168|0;f=Pt+1008|0;c=Pt+848|0;a=Pt+688|0;i=Pt+528|0;Tt=Pt+368|0;at=Pt+288|0;It=Pt+208|0;xt=Pt+112|0;Rt=Pt+32|0;ct=Pt;st=ct;ot=st+32|0;do{r[st>>0]=r[t>>0]|0;st=st+1|0;t=t+1|0}while((st|0)<(ot|0));r[ct>>0]=r[ct>>0]&-8;st=ct+31|0;r[st>>0]=r[st>>0]&63|64;st=s[n>>0]|0;pt=Os(s[n+1>>0]|0|0,0,8)|0;ht=T;gt=Os(s[n+2>>0]|0|0,0,16)|0;ht=ht|T;mt=s[n+3>>0]|0;ot=Os(mt|0,0,24)|0;yt=at;o[yt>>2]=pt|st|gt|ot&50331648;o[yt+4>>2]=ht;yt=Os(s[n+4>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+5>>0]|0|0,0,16)|0;ht=ht|T;gt=s[n+6>>0]|0;st=Os(gt|0,0,24)|0;ht=Cs(yt|mt|ot|st|0,ht|T|0,2)|0;st=at+8|0;o[st>>2]=ht&33554431;o[st+4>>2]=0;st=Os(s[n+7>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+8>>0]|0|0,0,16)|0;ht=ht|T;mt=s[n+9>>0]|0;yt=Os(mt|0,0,24)|0;ht=Cs(st|gt|ot|yt|0,ht|T|0,3)|0;yt=at+16|0;o[yt>>2]=ht&67108863;o[yt+4>>2]=0;yt=Os(s[n+10>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+11>>0]|0|0,0,16)|0;ht=ht|T;gt=s[n+12>>0]|0;st=Os(gt|0,0,24)|0;ht=Cs(yt|mt|ot|st|0,ht|T|0,5)|0;st=at+24|0;o[st>>2]=ht&33554431;o[st+4>>2]=0;st=Os(s[n+13>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+14>>0]|0|0,0,16)|0;ht=ht|T;mt=Os(s[n+15>>0]|0|0,0,24)|0;ht=Cs(st|gt|ot|mt|0,ht|T|0,6)|0;mt=at+32|0;o[mt>>2]=ht&67108863;o[mt+4>>2]=0;mt=s[n+16>>0]|0;ht=Os(s[n+17>>0]|0|0,0,8)|0;ot=T;gt=Os(s[n+18>>0]|0|0,0,16)|0;ot=ot|T;st=s[n+19>>0]|0;yt=Os(st|0,0,24)|0;pt=at+40|0;o[pt>>2]=ht|mt|gt|yt&16777216;o[pt+4>>2]=ot;pt=Os(s[n+20>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+21>>0]|0|0,0,16)|0;ot=ot|T;gt=s[n+22>>0]|0;mt=Os(gt|0,0,24)|0;ot=Cs(pt|st|yt|mt|0,ot|T|0,1)|0;mt=at+48|0;o[mt>>2]=ot&67108863;o[mt+4>>2]=0;mt=Os(s[n+23>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+24>>0]|0|0,0,16)|0;ot=ot|T;st=s[n+25>>0]|0;pt=Os(st|0,0,24)|0;ot=Cs(mt|gt|yt|pt|0,ot|T|0,3)|0;pt=at+56|0;o[pt>>2]=ot&33554431;o[pt+4>>2]=0;pt=Os(s[n+26>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+27>>0]|0|0,0,16)|0;ot=ot|T;gt=s[n+28>>0]|0;mt=Os(gt|0,0,24)|0;ot=Cs(pt|st|yt|mt|0,ot|T|0,4)|0;mt=at+64|0;o[mt>>2]=ot&67108863;o[mt+4>>2]=0;mt=Os(s[n+29>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+30>>0]|0|0,0,16)|0;ot=ot|T;st=Os(s[n+31>>0]|0|0,0,24)|0;ot=Cs(mt|gt|yt|st|0,ot|T|0,6)|0;st=at+72|0;o[st>>2]=ot&33554431;o[st+4>>2]=0;Ds(Et|0,0,152)|0;st=Et;o[st>>2]=1;o[st+4>>2]=0;Ds(kt|0,0,152)|0;st=kt;o[st>>2]=1;o[st+4>>2]=0;Ds(St|0,0,152)|0;Ds(f|0,0,152)|0;Ds(c|0,0,152)|0;st=c;o[st>>2]=1;o[st+4>>2]=0;Ds(a|0,0,152)|0;Ds(i|0,0,152)|0;st=i;o[st>>2]=1;o[st+4>>2]=0;st=Ot+80|0;ot=st+72|0;do{o[st>>2]=0;st=st+4|0}while((st|0)<(ot|0));st=Ot;t=at;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));oe=Ct+144|0;se=Ct+64|0;ae=Ct+136|0;ce=Ct+56|0;fe=Ct+128|0;le=Ct+48|0;ue=Ct+120|0;de=Ct+40|0;he=Ct+112|0;pe=Ct+32|0;me=Ct+104|0;ge=Ct+24|0;ye=Ct+96|0;be=Ct+16|0;ve=Ct+88|0;_e=Ct+8|0;we=Ct+80|0;Ae=_t+144|0;Ee=_t+64|0;ke=_t+136|0;Se=_t+56|0;Te=_t+128|0;Ie=_t+48|0;xe=_t+120|0;Re=_t+40|0;Ce=_t+112|0;Oe=_t+32|0;Pe=_t+104|0;Me=_t+24|0;De=_t+96|0;Be=_t+16|0;Ne=_t+88|0;je=_t+8|0;Ue=_t+80|0;ie=Ct+72|0;Le=_t+72|0;Fe=bt+8|0;qe=vt+8|0;ze=bt+16|0;Ke=vt+16|0;Ge=bt+24|0;He=vt+24|0;Ve=bt+32|0;Qe=vt+32|0;We=bt+40|0;Ye=vt+40|0;Xe=bt+48|0;Je=vt+48|0;Ze=bt+56|0;$e=vt+56|0;et=bt+64|0;tt=vt+64|0;nt=bt+72|0;rt=vt+72|0;ft=Tt+80|0;lt=Tt+8|0;ut=Tt+16|0;dt=Tt+24|0;ht=Tt+32|0;pt=Tt+40|0;mt=Tt+48|0;gt=Tt+56|0;yt=Tt+64|0;it=Tt+72|0;d=Ot;re=0;t=f;n=Et;f=St;l=kt;while(1){u=r[ct+(31-re)>>0]|0;$=0;ee=i;te=a;ne=c;J=t;c=n;i=f;a=l;Z=d;while(1){Y=u&255;X=Y>>>7;Mo(a,Z,X,0);Mo(i,c,X,0);E=a;l=o[E>>2]|0;E=o[E+4>>2]|0;V=a+8|0;G=V;P=o[G>>2]|0;G=o[G+4>>2]|0;Nt=a+16|0;I=Nt;S=o[I>>2]|0;I=o[I+4>>2]|0;x=a+24|0;Mt=x;Q=o[Mt>>2]|0;Mt=o[Mt+4>>2]|0;v=a+32|0;_=v;jt=o[_>>2]|0;_=o[_+4>>2]|0;y=a+40|0;u=y;R=o[u>>2]|0;u=o[u+4>>2]|0;K=a+48|0;ot=K;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;B=a+56|0;C=B;F=o[C>>2]|0;C=o[C+4>>2]|0;Ut=a+64|0;w=Ut;U=o[w>>2]|0;w=o[w+4>>2]|0;g=a+72|0;Dt=g;Bt=o[Dt>>2]|0;Dt=o[Dt+4>>2]|0;k=i;j=o[k>>2]|0;k=o[k+4>>2]|0;b=ks(j|0,k|0,l|0,E|0)|0;p=a;o[p>>2]=b;o[p+4>>2]=T;p=i+8|0;b=p;H=o[b>>2]|0;b=o[b+4>>2]|0;D=ks(H|0,b|0,P|0,G|0)|0;o[V>>2]=D;o[V+4>>2]=T;V=i+16|0;D=V;L=o[D>>2]|0;D=o[D+4>>2]|0;f=ks(L|0,D|0,S|0,I|0)|0;o[Nt>>2]=f;o[Nt+4>>2]=T;Nt=i+24|0;f=Nt;n=o[f>>2]|0;f=o[f+4>>2]|0;Ft=ks(n|0,f|0,Q|0,Mt|0)|0;o[x>>2]=Ft;o[x+4>>2]=T;x=i+32|0;Ft=x;m=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;N=ks(m|0,Ft|0,jt|0,_|0)|0;o[v>>2]=N;o[v+4>>2]=T;v=i+40|0;N=v;q=o[N>>2]|0;N=o[N+4>>2]|0;A=ks(q|0,N|0,R|0,u|0)|0;o[y>>2]=A;o[y+4>>2]=T;y=i+48|0;A=y;M=o[A>>2]|0;A=o[A+4>>2]|0;d=ks(M|0,A|0,W|0,ot|0)|0;o[K>>2]=d;o[K+4>>2]=T;K=i+56|0;d=K;O=o[d>>2]|0;d=o[d+4>>2]|0;st=ks(O|0,d|0,F|0,C|0)|0;o[B>>2]=st;o[B+4>>2]=T;B=i+64|0;st=B;t=o[st>>2]|0;st=o[st+4>>2]|0;Lt=ks(t|0,st|0,U|0,w|0)|0;o[Ut>>2]=Lt;o[Ut+4>>2]=T;Ut=i+72|0;Lt=Ut;z=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;qt=ks(z|0,Lt|0,Bt|0,Dt|0)|0;o[g>>2]=qt;o[g+4>>2]=T;k=Ss(l|0,E|0,j|0,k|0)|0;j=i;o[j>>2]=k;o[j+4>>2]=T;b=Ss(P|0,G|0,H|0,b|0)|0;o[p>>2]=b;o[p+4>>2]=T;D=Ss(S|0,I|0,L|0,D|0)|0;o[V>>2]=D;o[V+4>>2]=T;f=Ss(Q|0,Mt|0,n|0,f|0)|0;o[Nt>>2]=f;o[Nt+4>>2]=T;Ft=Ss(jt|0,_|0,m|0,Ft|0)|0;o[x>>2]=Ft;o[x+4>>2]=T;N=Ss(R|0,u|0,q|0,N|0)|0;o[v>>2]=N;o[v+4>>2]=T;A=Ss(W|0,ot|0,M|0,A|0)|0;o[y>>2]=A;o[y+4>>2]=T;d=Ss(F|0,C|0,O|0,d|0)|0;o[K>>2]=d;o[K+4>>2]=T;st=Ss(U|0,w|0,t|0,st|0)|0;o[B>>2]=st;o[B+4>>2]=T;Lt=Ss(Bt|0,Dt|0,z|0,Lt|0)|0;o[Ut>>2]=Lt;o[Ut+4>>2]=T;Ut=Z;Lt=o[Ut>>2]|0;Ut=o[Ut+4>>2]|0;z=Z+8|0;Dt=z;Bt=o[Dt>>2]|0;Dt=o[Dt+4>>2]|0;B=Z+16|0;st=B;t=o[st>>2]|0;st=o[st+4>>2]|0;w=Z+24|0;U=w;K=o[U>>2]|0;U=o[U+4>>2]|0;d=Z+32|0;O=d;C=o[O>>2]|0;O=o[O+4>>2]|0;F=Z+40|0;y=F;A=o[y>>2]|0;y=o[y+4>>2]|0;M=Z+48|0;ot=M;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;v=Z+56|0;N=v;q=o[N>>2]|0;N=o[N+4>>2]|0;u=Z+64|0;R=u;x=o[R>>2]|0;R=o[R+4>>2]|0;Ft=Z+72|0;m=Ft;_=o[m>>2]|0;m=o[m+4>>2]|0;jt=c;Nt=o[jt>>2]|0;jt=o[jt+4>>2]|0;f=ks(Nt|0,jt|0,Lt|0,Ut|0)|0;n=Z;o[n>>2]=f;o[n+4>>2]=T;n=c+8|0;f=n;Mt=o[f>>2]|0;f=o[f+4>>2]|0;Q=ks(Mt|0,f|0,Bt|0,Dt|0)|0;o[z>>2]=Q;o[z+4>>2]=T;z=c+16|0;Q=z;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;D=ks(V|0,Q|0,t|0,st|0)|0;o[B>>2]=D;o[B+4>>2]=T;B=c+24|0;D=B;L=o[D>>2]|0;D=o[D+4>>2]|0;I=ks(L|0,D|0,K|0,U|0)|0;o[w>>2]=I;o[w+4>>2]=T;w=c+32|0;I=w;S=o[I>>2]|0;I=o[I+4>>2]|0;p=ks(S|0,I|0,C|0,O|0)|0;o[d>>2]=p;o[d+4>>2]=T;d=c+40|0;p=d;b=o[p>>2]|0;p=o[p+4>>2]|0;H=ks(b|0,p|0,A|0,y|0)|0;o[F>>2]=H;o[F+4>>2]=T;F=c+48|0;H=F;G=o[H>>2]|0;H=o[H+4>>2]|0;P=ks(G|0,H|0,W|0,ot|0)|0;o[M>>2]=P;o[M+4>>2]=T;M=c+56|0;P=M;j=o[P>>2]|0;P=o[P+4>>2]|0;k=ks(j|0,P|0,q|0,N|0)|0;o[v>>2]=k;o[v+4>>2]=T;v=c+64|0;k=v;E=o[k>>2]|0;k=o[k+4>>2]|0;l=ks(E|0,k|0,x|0,R|0)|0;o[u>>2]=l;o[u+4>>2]=T;u=c+72|0;l=u;g=o[l>>2]|0;l=o[l+4>>2]|0;qt=ks(g|0,l|0,_|0,m|0)|0;o[Ft>>2]=qt;o[Ft+4>>2]=T;jt=Ss(Lt|0,Ut|0,Nt|0,jt|0)|0;Nt=c;o[Nt>>2]=jt;o[Nt+4>>2]=T;f=Ss(Bt|0,Dt|0,Mt|0,f|0)|0;o[n>>2]=f;o[n+4>>2]=T;Q=Ss(t|0,st|0,V|0,Q|0)|0;o[z>>2]=Q;o[z+4>>2]=T;D=Ss(K|0,U|0,L|0,D|0)|0;o[B>>2]=D;o[B+4>>2]=T;I=Ss(C|0,O|0,S|0,I|0)|0;o[w>>2]=I;o[w+4>>2]=T;p=Ss(A|0,y|0,b|0,p|0)|0;o[d>>2]=p;o[d+4>>2]=T;H=Ss(W|0,ot|0,G|0,H|0)|0;o[F>>2]=H;o[F+4>>2]=T;P=Ss(q|0,N|0,j|0,P|0)|0;o[M>>2]=P;o[M+4>>2]=T;k=Ss(x|0,R|0,E|0,k|0)|0;o[v>>2]=k;o[v+4>>2]=T;l=Ss(_|0,m|0,g|0,l|0)|0;o[u>>2]=l;o[u+4>>2]=T;Do(Ct,Z,i);Do(_t,a,c);u=oe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=se;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=se;o[_>>2]=v;o[_+4>>2]=T;_=ae;v=o[_>>2]|0;_=o[_+4>>2]|0;u=ce;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=ce;o[g>>2]=m;o[g+4>>2]=T;g=fe;m=o[g>>2]|0;g=o[g+4>>2]|0;_=le;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=le;o[u>>2]=l;o[u+4>>2]=T;u=ue;l=o[u>>2]|0;u=o[u+4>>2]|0;g=de;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=de;o[_>>2]=v;o[_+4>>2]=T;_=he;v=o[_>>2]|0;_=o[_+4>>2]|0;u=pe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=pe;o[g>>2]=m;o[g+4>>2]=T;g=me;m=o[g>>2]|0;g=o[g+4>>2]|0;_=ge;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=ge;o[u>>2]=l;o[u+4>>2]=T;u=ye;l=o[u>>2]|0;u=o[u+4>>2]|0;g=be;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=be;o[_>>2]=v;o[_+4>>2]=T;_=ve;v=o[_>>2]|0;_=o[_+4>>2]|0;u=_e;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=_e;o[g>>2]=m;o[g+4>>2]=T;g=we;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Ct;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=Ct;o[u>>2]=l;o[u+4>>2]=T;Bo(Ct);u=Ae;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Ee;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=Ee;o[_>>2]=v;o[_+4>>2]=T;_=ke;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Se;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=Se;o[g>>2]=m;o[g+4>>2]=T;g=Te;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Ie;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=Ie;o[u>>2]=l;o[u+4>>2]=T;u=xe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Re;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=Re;o[_>>2]=v;o[_+4>>2]=T;_=Ce;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Oe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=Oe;o[g>>2]=m;o[g+4>>2]=T;g=Pe;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Me;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=Me;o[u>>2]=l;o[u+4>>2]=T;u=De;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Be;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=Be;o[_>>2]=v;o[_+4>>2]=T;_=Ne;v=o[_>>2]|0;_=o[_+4>>2]|0;u=je;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=je;o[g>>2]=m;o[g+4>>2]=T;g=Ue;m=o[g>>2]|0;g=o[g+4>>2]|0;_=_t;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=_t;o[u>>2]=l;o[u+4>>2]=T;Bo(_t);u=Ct;l=o[u>>2]|0;u=o[u+4>>2]|0;g=_e;m=o[g>>2]|0;g=o[g+4>>2]|0;_=be;v=o[_>>2]|0;_=o[_+4>>2]|0;k=ge;E=o[k>>2]|0;k=o[k+4>>2]|0;R=pe;x=o[R>>2]|0;R=o[R+4>>2]|0;M=de;P=o[M>>2]|0;M=o[M+4>>2]|0;j=le;N=o[j>>2]|0;j=o[j+4>>2]|0;q=ce;F=o[q>>2]|0;q=o[q+4>>2]|0;H=se;G=o[H>>2]|0;H=o[H+4>>2]|0;ot=ie;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;d=_t;p=o[d>>2]|0;d=o[d+4>>2]|0;b=ks(p|0,d|0,l|0,u|0)|0;y=Ct;o[y>>2]=b;o[y+4>>2]=T;y=je;b=o[y>>2]|0;y=o[y+4>>2]|0;A=ks(b|0,y|0,m|0,g|0)|0;w=_e;o[w>>2]=A;o[w+4>>2]=T;w=Be;A=o[w>>2]|0;w=o[w+4>>2]|0;I=ks(A|0,w|0,v|0,_|0)|0;S=be;o[S>>2]=I;o[S+4>>2]=T;S=Me;I=o[S>>2]|0;S=o[S+4>>2]|0;O=ks(I|0,S|0,E|0,k|0)|0;C=ge;o[C>>2]=O;o[C+4>>2]=T;C=Oe;O=o[C>>2]|0;C=o[C+4>>2]|0;B=ks(O|0,C|0,x|0,R|0)|0;D=pe;o[D>>2]=B;o[D+4>>2]=T;D=Re;B=o[D>>2]|0;D=o[D+4>>2]|0;L=ks(B|0,D|0,P|0,M|0)|0;U=de;o[U>>2]=L;o[U+4>>2]=T;U=Ie;L=o[U>>2]|0;U=o[U+4>>2]|0;K=ks(L|0,U|0,N|0,j|0)|0;z=le;o[z>>2]=K;o[z+4>>2]=T;z=Se;K=o[z>>2]|0;z=o[z+4>>2]|0;Q=ks(K|0,z|0,F|0,q|0)|0;V=ce;o[V>>2]=Q;o[V+4>>2]=T;V=Ee;Q=o[V>>2]|0;V=o[V+4>>2]|0;st=ks(Q|0,V|0,G|0,H|0)|0;t=se;o[t>>2]=st;o[t+4>>2]=T;t=Le;st=o[t>>2]|0;t=o[t+4>>2]|0;n=ks(st|0,t|0,W|0,ot|0)|0;f=ie;o[f>>2]=n;o[f+4>>2]=T;d=Ss(l|0,u|0,p|0,d|0)|0;p=_t;o[p>>2]=d;o[p+4>>2]=T;y=Ss(m|0,g|0,b|0,y|0)|0;b=je;o[b>>2]=y;o[b+4>>2]=T;w=Ss(v|0,_|0,A|0,w|0)|0;A=Be;o[A>>2]=w;o[A+4>>2]=T;S=Ss(E|0,k|0,I|0,S|0)|0;I=Me;o[I>>2]=S;o[I+4>>2]=T;C=Ss(x|0,R|0,O|0,C|0)|0;O=Oe;o[O>>2]=C;o[O+4>>2]=T;D=Ss(P|0,M|0,B|0,D|0)|0;B=Re;o[B>>2]=D;o[B+4>>2]=T;U=Ss(N|0,j|0,L|0,U|0)|0;L=Ie;o[L>>2]=U;o[L+4>>2]=T;z=Ss(F|0,q|0,K|0,z|0)|0;K=Se;o[K>>2]=z;o[K+4>>2]=T;V=Ss(G|0,H|0,Q|0,V|0)|0;Q=Ee;o[Q>>2]=V;o[Q+4>>2]=T;t=Ss(W|0,ot|0,st|0,t|0)|0;st=Le;o[st>>2]=t;o[st+4>>2]=T;No(At,Ct);No(wt,_t);Do(_t,wt,at);st=Ae;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Ee;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=T;st=ks(W|0,ot|0,t|0,st|0)|0;V=ks(st|0,T|0,Q|0,V|0)|0;Q=Ee;o[Q>>2]=V;o[Q+4>>2]=T;Q=ke;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Se;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=T;Q=ks(t|0,st|0,V|0,Q|0)|0;W=ks(Q|0,T|0,ot|0,W|0)|0;ot=Se;o[ot>>2]=W;o[ot+4>>2]=T;ot=Te;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Ie;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=T;ot=ks(V|0,Q|0,W|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Ie;o[st>>2]=t;o[st+4>>2]=T;st=xe;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Re;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=T;st=ks(W|0,ot|0,t|0,st|0)|0;V=ks(st|0,T|0,Q|0,V|0)|0;Q=Re;o[Q>>2]=V;o[Q+4>>2]=T;Q=Ce;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Oe;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=T;Q=ks(t|0,st|0,V|0,Q|0)|0;W=ks(Q|0,T|0,ot|0,W|0)|0;ot=Oe;o[ot>>2]=W;o[ot+4>>2]=T;ot=Pe;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Me;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=T;ot=ks(V|0,Q|0,W|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Me;o[st>>2]=t;o[st+4>>2]=T;st=De;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Be;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=T;st=ks(W|0,ot|0,t|0,st|0)|0;V=ks(st|0,T|0,Q|0,V|0)|0;Q=Be;o[Q>>2]=V;o[Q+4>>2]=T;Q=Ne;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=je;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=T;Q=ks(t|0,st|0,V|0,Q|0)|0;W=ks(Q|0,T|0,ot|0,W|0)|0;ot=je;o[ot>>2]=W;o[ot+4>>2]=T;ot=Ue;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=_t;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=T;ot=ks(V|0,Q|0,W|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=_t;o[st>>2]=t;o[st+4>>2]=T;Bo(_t);st=J;t=At;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));st=ne;t=_t;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(bt,a);No(vt,i);Do(te,bt,vt);f=te+144|0;p=o[f>>2]|0;f=o[f+4>>2]|0;d=te+64|0;u=d;l=o[u>>2]|0;u=o[u+4>>2]|0;t=Es(p|0,f|0,18,0)|0;n=T;f=ks(l|0,u|0,p|0,f|0)|0;n=ks(f|0,T|0,t|0,n|0)|0;o[d>>2]=n;o[d+4>>2]=T;d=te+136|0;n=o[d>>2]|0;d=o[d+4>>2]|0;t=te+56|0;f=t;p=o[f>>2]|0;f=o[f+4>>2]|0;u=Es(n|0,d|0,18,0)|0;l=T;d=ks(p|0,f|0,n|0,d|0)|0;l=ks(d|0,T|0,u|0,l|0)|0;o[t>>2]=l;o[t+4>>2]=T;t=te+128|0;l=o[t>>2]|0;t=o[t+4>>2]|0;u=te+48|0;d=u;n=o[d>>2]|0;d=o[d+4>>2]|0;f=Es(l|0,t|0,18,0)|0;p=T;t=ks(n|0,d|0,l|0,t|0)|0;p=ks(t|0,T|0,f|0,p|0)|0;o[u>>2]=p;o[u+4>>2]=T;u=te+120|0;p=o[u>>2]|0;u=o[u+4>>2]|0;f=te+40|0;t=f;l=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(p|0,u|0,18,0)|0;n=T;u=ks(l|0,t|0,p|0,u|0)|0;n=ks(u|0,T|0,d|0,n|0)|0;o[f>>2]=n;o[f+4>>2]=T;f=te+112|0;n=o[f>>2]|0;f=o[f+4>>2]|0;d=te+32|0;u=d;p=o[u>>2]|0;u=o[u+4>>2]|0;t=Es(n|0,f|0,18,0)|0;l=T;f=ks(p|0,u|0,n|0,f|0)|0;l=ks(f|0,T|0,t|0,l|0)|0;o[d>>2]=l;o[d+4>>2]=T;d=te+104|0;l=o[d>>2]|0;d=o[d+4>>2]|0;t=te+24|0;f=t;n=o[f>>2]|0;f=o[f+4>>2]|0;u=Es(l|0,d|0,18,0)|0;p=T;d=ks(n|0,f|0,l|0,d|0)|0;p=ks(d|0,T|0,u|0,p|0)|0;o[t>>2]=p;o[t+4>>2]=T;t=te+96|0;p=o[t>>2]|0;t=o[t+4>>2]|0;u=te+16|0;d=u;l=o[d>>2]|0;d=o[d+4>>2]|0;f=Es(p|0,t|0,18,0)|0;n=T;t=ks(l|0,d|0,p|0,t|0)|0;n=ks(t|0,T|0,f|0,n|0)|0;o[u>>2]=n;o[u+4>>2]=T;u=te+88|0;n=o[u>>2]|0;u=o[u+4>>2]|0;f=te+8|0;t=f;p=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(n|0,u|0,18,0)|0;l=T;u=ks(p|0,t|0,n|0,u|0)|0;l=ks(u|0,T|0,d|0,l|0)|0;o[f>>2]=l;o[f+4>>2]=T;f=te+80|0;l=o[f>>2]|0;f=o[f+4>>2]|0;d=te;u=o[d>>2]|0;d=o[d+4>>2]|0;n=Es(l|0,f|0,18,0)|0;t=T;f=ks(u|0,d|0,l|0,f|0)|0;t=ks(f|0,T|0,n|0,t|0)|0;n=te;o[n>>2]=t;o[n+4>>2]=T;Bo(te);n=bt;t=o[n>>2]|0;n=o[n+4>>2]|0;f=vt;f=Ss(t|0,n|0,o[f>>2]|0,o[f+4>>2]|0)|0;l=T;d=vt;o[d>>2]=f;o[d+4>>2]=l;d=Fe;u=o[d>>2]|0;d=o[d+4>>2]|0;p=qe;p=Ss(u|0,d|0,o[p>>2]|0,o[p+4>>2]|0)|0;m=T;y=qe;o[y>>2]=p;o[y+4>>2]=m;y=ze;g=o[y>>2]|0;y=o[y+4>>2]|0;b=Ke;b=Ss(g|0,y|0,o[b>>2]|0,o[b+4>>2]|0)|0;v=T;w=Ke;o[w>>2]=b;o[w+4>>2]=v;w=Ge;_=o[w>>2]|0;w=o[w+4>>2]|0;A=He;A=Ss(_|0,w|0,o[A>>2]|0,o[A+4>>2]|0)|0;E=T;S=He;o[S>>2]=A;o[S+4>>2]=E;S=Ve;k=o[S>>2]|0;S=o[S+4>>2]|0;I=Qe;I=Ss(k|0,S|0,o[I>>2]|0,o[I+4>>2]|0)|0;x=T;C=Qe;o[C>>2]=I;o[C+4>>2]=x;C=We;R=o[C>>2]|0;C=o[C+4>>2]|0;O=Ye;O=Ss(R|0,C|0,o[O>>2]|0,o[O+4>>2]|0)|0;P=T;D=Ye;o[D>>2]=O;o[D+4>>2]=P;D=Xe;M=o[D>>2]|0;D=o[D+4>>2]|0;B=Je;B=Ss(M|0,D|0,o[B>>2]|0,o[B+4>>2]|0)|0;N=T;U=Je;o[U>>2]=B;o[U+4>>2]=N;U=Ze;j=o[U>>2]|0;U=o[U+4>>2]|0;L=$e;L=Ss(j|0,U|0,o[L>>2]|0,o[L+4>>2]|0)|0;F=T;z=$e;o[z>>2]=L;o[z+4>>2]=F;z=et;q=o[z>>2]|0;z=o[z+4>>2]|0;K=tt;K=Ss(q|0,z|0,o[K>>2]|0,o[K+4>>2]|0)|0;G=T;V=tt;o[V>>2]=K;o[V+4>>2]=G;V=nt;H=o[V>>2]|0;V=o[V+4>>2]|0;Q=rt;Q=Ss(H|0,V|0,o[Q>>2]|0,o[Q+4>>2]|0)|0;W=T;st=rt;o[st>>2]=Q;o[st+4>>2]=W;st=ft;ot=st+72|0;do{o[st>>2]=0;st=st+4|0}while((st|0)<(ot|0));Lt=Es(f|0,l|0,121665,0)|0;Bt=Tt;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=Es(p|0,m|0,121665,0)|0;Lt=lt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=Es(b|0,v|0,121665,0)|0;Bt=ut;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=Es(A|0,E|0,121665,0)|0;Lt=dt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=Es(I|0,x|0,121665,0)|0;Bt=ht;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=Es(O|0,P|0,121665,0)|0;Lt=pt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=Es(B|0,N|0,121665,0)|0;Bt=mt;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=Es(L|0,F|0,121665,0)|0;Lt=gt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=Es(K|0,G|0,121665,0)|0;Bt=yt;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=Es(Q|0,W|0,121665,0)|0;Lt=it;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Bo(Tt);Lt=Tt;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,t|0,n|0)|0;Bt=Tt;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=lt;Bt=ks(o[Bt>>2]|0,o[Bt+4>>2]|0,u|0,d|0)|0;Lt=lt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=ut;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,g|0,y|0)|0;Bt=ut;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=dt;Bt=ks(o[Bt>>2]|0,o[Bt+4>>2]|0,_|0,w|0)|0;Lt=dt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=ht;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,k|0,S|0)|0;Bt=ht;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=pt;Bt=ks(o[Bt>>2]|0,o[Bt+4>>2]|0,R|0,C|0)|0;Lt=pt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=mt;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,M|0,D|0)|0;Bt=mt;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=gt;Bt=ks(o[Bt>>2]|0,o[Bt+4>>2]|0,j|0,U|0)|0;Lt=gt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=yt;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,q|0,z|0)|0;Bt=yt;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=it;Bt=ks(o[Bt>>2]|0,o[Bt+4>>2]|0,H|0,V|0)|0;Lt=it;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Do(ee,vt,Tt);Lt=ee+144|0;Bt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee+64|0;Nt=jt;Ut=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;Ft=Es(Bt|0,Lt|0,18,0)|0;qt=T;Lt=ks(Ut|0,Nt|0,Bt|0,Lt|0)|0;qt=ks(Lt|0,T|0,Ft|0,qt|0)|0;o[jt>>2]=qt;o[jt+4>>2]=T;jt=ee+136|0;qt=o[jt>>2]|0;jt=o[jt+4>>2]|0;Ft=ee+56|0;Lt=Ft;Bt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;Nt=Es(qt|0,jt|0,18,0)|0;Ut=T;jt=ks(Bt|0,Lt|0,qt|0,jt|0)|0;Ut=ks(jt|0,T|0,Nt|0,Ut|0)|0;o[Ft>>2]=Ut;o[Ft+4>>2]=T;Ft=ee+128|0;Ut=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;Nt=ee+48|0;jt=Nt;qt=o[jt>>2]|0;jt=o[jt+4>>2]|0;Lt=Es(Ut|0,Ft|0,18,0)|0;Bt=T;Ft=ks(qt|0,jt|0,Ut|0,Ft|0)|0;Bt=ks(Ft|0,T|0,Lt|0,Bt|0)|0;o[Nt>>2]=Bt;o[Nt+4>>2]=T;Nt=ee+120|0;Bt=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;Lt=ee+40|0;Ft=Lt;Ut=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;jt=Es(Bt|0,Nt|0,18,0)|0;qt=T;Nt=ks(Ut|0,Ft|0,Bt|0,Nt|0)|0;qt=ks(Nt|0,T|0,jt|0,qt|0)|0;o[Lt>>2]=qt;o[Lt+4>>2]=T;Lt=ee+112|0;qt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee+32|0;Nt=jt;Bt=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;Ft=Es(qt|0,Lt|0,18,0)|0;Ut=T;Lt=ks(Bt|0,Nt|0,qt|0,Lt|0)|0;Ut=ks(Lt|0,T|0,Ft|0,Ut|0)|0;o[jt>>2]=Ut;o[jt+4>>2]=T;jt=ee+104|0;Ut=o[jt>>2]|0;jt=o[jt+4>>2]|0;Ft=ee+24|0;Lt=Ft;qt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;Nt=Es(Ut|0,jt|0,18,0)|0;Bt=T;jt=ks(qt|0,Lt|0,Ut|0,jt|0)|0;Bt=ks(jt|0,T|0,Nt|0,Bt|0)|0;o[Ft>>2]=Bt;o[Ft+4>>2]=T;Ft=ee+96|0;Bt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;Nt=ee+16|0;jt=Nt;Ut=o[jt>>2]|0;jt=o[jt+4>>2]|0;Lt=Es(Bt|0,Ft|0,18,0)|0;qt=T;Ft=ks(Ut|0,jt|0,Bt|0,Ft|0)|0;qt=ks(Ft|0,T|0,Lt|0,qt|0)|0;o[Nt>>2]=qt;o[Nt+4>>2]=T;Nt=ee+88|0;qt=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;Lt=ee+8|0;Ft=Lt;Bt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;jt=Es(qt|0,Nt|0,18,0)|0;Ut=T;Nt=ks(Bt|0,Ft|0,qt|0,Nt|0)|0;Ut=ks(Nt|0,T|0,jt|0,Ut|0)|0;o[Lt>>2]=Ut;o[Lt+4>>2]=T;Lt=ee+80|0;Ut=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee;Nt=o[jt>>2]|0;jt=o[jt+4>>2]|0;qt=Es(Ut|0,Lt|0,18,0)|0;Ft=T;Lt=ks(Nt|0,jt|0,Ut|0,Lt|0)|0;Ft=ks(Lt|0,T|0,qt|0,Ft|0)|0;qt=ee;o[qt>>2]=Ft;o[qt+4>>2]=T;Bo(ee);Mo(te,J,X,0);Mo(ee,ne,X,0);$=$+1|0;if(($|0)==8)break;else{Ut=Z;Lt=c;Ft=a;qt=i;u=Y<<1&255;Z=J;a=te;i=ee;c=ne;J=Ut;ne=Lt;te=Ft;ee=qt}}re=re+1|0;if((re|0)==32)break;else{d=J;t=Z;n=ne;f=ee;l=te}}st=It;t=te;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));st=xt;t=ee;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(bt,xt);No(St,bt);No(kt,St);Do(Tt,kt,xt);n=Tt+144|0;l=n;f=o[l>>2]|0;l=o[l+4>>2]|0;c=yt;a=o[c>>2]|0;c=o[c+4>>2]|0;i=Es(f|0,l|0,18,0)|0;u=T;l=ks(a|0,c|0,f|0,l|0)|0;u=ks(l|0,T|0,i|0,u|0)|0;i=yt;o[i>>2]=u;o[i+4>>2]=T;i=Tt+136|0;u=i;l=o[u>>2]|0;u=o[u+4>>2]|0;f=gt;c=o[f>>2]|0;f=o[f+4>>2]|0;a=Es(l|0,u|0,18,0)|0;d=T;u=ks(c|0,f|0,l|0,u|0)|0;d=ks(u|0,T|0,a|0,d|0)|0;a=gt;o[a>>2]=d;o[a+4>>2]=T;a=Tt+128|0;d=a;u=o[d>>2]|0;d=o[d+4>>2]|0;l=mt;f=o[l>>2]|0;l=o[l+4>>2]|0;c=Es(u|0,d|0,18,0)|0;ot=T;d=ks(f|0,l|0,u|0,d|0)|0;ot=ks(d|0,T|0,c|0,ot|0)|0;c=mt;o[c>>2]=ot;o[c+4>>2]=T;c=Tt+120|0;ot=c;d=o[ot>>2]|0;ot=o[ot+4>>2]|0;u=pt;l=o[u>>2]|0;u=o[u+4>>2]|0;f=Es(d|0,ot|0,18,0)|0;t=T;ot=ks(l|0,u|0,d|0,ot|0)|0;t=ks(ot|0,T|0,f|0,t|0)|0;f=pt;o[f>>2]=t;o[f+4>>2]=T;f=Tt+112|0;t=f;ot=o[t>>2]|0;t=o[t+4>>2]|0;d=ht;u=o[d>>2]|0;d=o[d+4>>2]|0;l=Es(ot|0,t|0,18,0)|0;st=T;t=ks(u|0,d|0,ot|0,t|0)|0;st=ks(t|0,T|0,l|0,st|0)|0;l=ht;o[l>>2]=st;o[l+4>>2]=T;l=Tt+104|0;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=dt;d=o[ot>>2]|0;ot=o[ot+4>>2]|0;u=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(d|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,u|0,Lt|0)|0;u=dt;o[u>>2]=Lt;o[u+4>>2]=T;u=Tt+96|0;Lt=u;st=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;t=ut;ot=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(st|0,Lt|0,18,0)|0;Ft=T;Lt=ks(ot|0,t|0,st|0,Lt|0)|0;Ft=ks(Lt|0,T|0,d|0,Ft|0)|0;d=ut;o[d>>2]=Ft;o[d+4>>2]=T;d=Tt+88|0;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=vt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Do(Tt,vt,bt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=Ct;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,Ct);Do(Tt,kt,vt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=_t;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,_t);No(St,kt);No(kt,St);No(St,kt);No(kt,St);Do(Tt,kt,_t);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=wt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,wt);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);Do(Tt,St,wt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=At;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,At);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);Do(Tt,St,At);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=kt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);Do(Tt,kt,wt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=Ot;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,Ot);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);Do(Tt,St,Ot);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=Et;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,Et);No(kt,St);t=2;do{No(St,kt);No(kt,St);t=t+2|0}while(t>>>0<100);Do(Tt,kt,Et);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=St;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);Do(Tt,St,Ot);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=kt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);Do(Tt,St,Ct);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=Rt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Do(Tt,It,Rt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=xt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Ot=o[xt>>2]|0;wt=Ot>>31&Ot;Mt=(wt>>26)+(o[xt+8>>2]|0)|0;qt=Mt>>31&Mt;Dt=(qt>>25)+(o[xt+16>>2]|0)|0;Ft=Dt>>31&Dt;_t=(Ft>>26)+(o[xt+24>>2]|0)|0;Bt=_t>>31&_t;Nt=(Bt>>25)+(o[xt+32>>2]|0)|0;It=Nt>>31&Nt;jt=(It>>26)+(o[xt+40>>2]|0)|0;Tt=jt>>31&jt;Ut=(Tt>>25)+(o[xt+48>>2]|0)|0;St=Ut>>31&Ut;Lt=(St>>26)+(o[xt+56>>2]|0)|0;kt=Lt>>31≪Rt=(kt>>25)+(o[xt+64>>2]|0)|0;At=Rt>>31&Rt;Ct=(At>>26)+(o[xt+72>>2]|0)|0;Et=Ct>>31&Ct;wt=((Et>>25)*19|0)+(Ot-(wt&-67108864))|0;Ot=wt>>31&wt;qt=(Ot>>26)+(Mt-(qt&-33554432))|0;Mt=qt>>31&qt;Ft=(Mt>>25)+(Dt-(Ft&-67108864))|0;Dt=Ft>>31&Ft;xt=(Dt>>26)+(_t-(Bt&-33554432))|0;Bt=xt>>31&xt;It=(Bt>>25)+(Nt-(It&-67108864))|0;Nt=It>>31&It;Tt=(Nt>>26)+(jt-(Tt&-33554432))|0;jt=Tt>>31&Tt;St=(jt>>25)+(Ut-(St&-67108864))|0;Ut=St>>31&St;kt=(Ut>>26)+(Lt-(kt&-33554432))|0;Lt=kt>>31&kt;At=(Lt>>25)+(Rt-(At&-67108864))|0;Rt=At>>31&At;Et=(Rt>>26)+(Ct-(Et&-33554432))|0;Ct=Et>>31&Et;Ot=((Ct>>25)*19|0)+(wt-(Ot&-67108864))|0;wt=Ot>>31&Ot;Ot=Ot-(wt&-67108864)|0;Mt=(Ot>>26)+((wt>>26)+(qt-(Mt&-33554432)))|0;Dt=(Mt>>25)+(Ft-(Dt&-67108864))|0;Bt=(Dt>>26)+(xt-(Bt&-33554432))|0;Nt=(Bt>>25)+(It-(Nt&-67108864))|0;jt=(Nt>>26)+(Tt-(jt&-33554432))|0;Ut=(jt>>25)+(St-(Ut&-67108864))|0;Lt=(Ut>>26)+(kt-(Lt&-33554432))|0;Rt=(Lt>>25)+(At-(Rt&-67108864))|0;Ct=(Rt>>26)+(Et-(Ct&-33554432))|0;Ot=((Ct>>25)*19|0)+(Ot&67108863)|0;Mt=(Ot>>26)+(Mt&33554431)|0;Dt=(Mt>>25)+(Dt&67108863)|0;Bt=(Dt>>26)+(Bt&33554431)|0;Nt=(Bt>>25)+(Nt&67108863)|0;jt=(Nt>>26)+(jt&33554431)|0;Ut=(jt>>25)+(Ut&67108863)|0;Lt=(Ut>>26)+(Lt&33554431)|0;Rt=(Lt>>25)+(Rt&67108863)|0;Ct=(Rt>>26)+(Ct&33554431)|0;Ot=((Ct>>25)*19|0)+(Ot&67108863)|0;Et=Mt<<16&(Mt|-33554432);Et=Et<<8&Et;Et=Et<<4&Et;Et=Et<<2&Et;At=Dt<<16&(Dt|-67108864);At=At<<8&At;At=At<<4&At;At=At<<2&At;kt=Bt<<16&(Bt|-33554432);kt=kt<<8&kt;kt=kt<<4&kt;kt=kt<<2&kt;St=Nt<<16&(Nt|-67108864);St=St<<8&St;St=St<<4&St;St=St<<2&St;Tt=jt<<16&(jt|-33554432);Tt=Tt<<8&Tt;Tt=Tt<<4&Tt;Tt=Tt<<2&Tt;It=Ut<<16&(Ut|-67108864);It=It<<8&It;It=It<<4&It;It=It<<2&It;xt=Lt<<16&(Lt|-33554432);xt=xt<<8&xt;xt=xt<<4&xt;xt=xt<<2&xt;Ft=Rt<<16&(Rt|-67108864);Ft=Ft<<8&Ft;Ft=Ft<<4&Ft;Ft=Ft<<2&Ft;qt=Ct<<16&(Ct|-33554432);qt=qt<<8&qt;qt=qt<<4&qt;qt=qt<<2&qt;qt=(At<<1&At&(Et<<1&Et)&(kt<<1&kt)&(St<<1&St)&(Tt<<1&Tt))>>31&~(Ot+-67108845>>31)&(It<<1&It)>>31&(xt<<1&xt)>>31&(Ft<<1&Ft)>>31&(qt<<1&qt)>>31;Ot=Ot-(qt&67108845)|0;Ft=qt&67108863;qt=qt&33554431;Mt=(Mt&33554431)-qt|0;Dt=(Dt&67108863)-Ft|0;Bt=(Bt&33554431)-qt|0;Nt=(Nt&67108863)-Ft|0;jt=(jt&33554431)-qt|0;Ut=(Ut&67108863)-Ft|0;Lt=(Lt&33554431)-qt|0;Ft=(Rt&67108863)-Ft|0;qt=(Ct&33554431)-qt|0;r[e>>0]=Ot;r[e+1>>0]=Ot>>>8;r[e+2>>0]=Ot>>>16;r[e+3>>0]=Ot>>>24|Mt<<2;r[e+4>>0]=Mt>>>6;r[e+5>>0]=Mt>>>14;r[e+6>>0]=Dt<<3|Mt>>>22;r[e+7>>0]=Dt>>>5;r[e+8>>0]=Dt>>>13;r[e+9>>0]=Bt<<5|Dt>>>21;r[e+10>>0]=Bt>>>3;r[e+11>>0]=Bt>>>11;r[e+12>>0]=Nt<<6|Bt>>>19;r[e+13>>0]=Nt>>>2;r[e+14>>0]=Nt>>>10;r[e+15>>0]=Nt>>>18;r[e+16>>0]=jt;r[e+17>>0]=jt>>>8;r[e+18>>0]=jt>>>16;r[e+19>>0]=jt>>>24|Ut<<1;r[e+20>>0]=Ut>>>7;r[e+21>>0]=Ut>>>15;r[e+22>>0]=Lt<<3|Ut>>>23;r[e+23>>0]=Lt>>>5;r[e+24>>0]=Lt>>>13;r[e+25>>0]=Ft<<4|Lt>>>21;r[e+26>>0]=Ft>>>4;r[e+27>>0]=Ft>>>12;r[e+28>>0]=qt<<6|Ft>>>20;r[e+29>>0]=qt>>>2;r[e+30>>0]=qt>>>10;r[e+31>>0]=qt>>>18;h=Pt;return 0}function Mo(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0;n=0-n|0;a=e;i=o[a>>2]|0;s=t;s=(o[s>>2]^i)&n;i=s^i;a=e;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;s=s^o[t>>2];a=t;o[a>>2]=s;o[a+4>>2]=((s|0)<0)<<31>>31;a=e+8|0;s=a;i=o[s>>2]|0;r=t+8|0;c=r;c=(o[c>>2]^i)&n;i=c^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;c=c^o[r>>2];o[r>>2]=c;o[r+4>>2]=((c|0)<0)<<31>>31;r=e+16|0;c=r;a=o[c>>2]|0;i=t+16|0;s=i;s=(o[s>>2]^a)&n;a=s^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;s=s^o[i>>2];o[i>>2]=s;o[i+4>>2]=((s|0)<0)<<31>>31;i=e+24|0;s=i;r=o[s>>2]|0;a=t+24|0;c=a;c=(o[c>>2]^r)&n;r=c^r;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;c=c^o[a>>2];o[a>>2]=c;o[a+4>>2]=((c|0)<0)<<31>>31;a=e+32|0;c=a;i=o[c>>2]|0;r=t+32|0;s=r;s=(o[s>>2]^i)&n;i=s^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;s=s^o[r>>2];o[r>>2]=s;o[r+4>>2]=((s|0)<0)<<31>>31;r=e+40|0;s=r;a=o[s>>2]|0;i=t+40|0;c=i;c=(o[c>>2]^a)&n;a=c^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;c=c^o[i>>2];o[i>>2]=c;o[i+4>>2]=((c|0)<0)<<31>>31;i=e+48|0;c=i;r=o[c>>2]|0;a=t+48|0;s=a;s=(o[s>>2]^r)&n;r=s^r;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;s=s^o[a>>2];o[a>>2]=s;o[a+4>>2]=((s|0)<0)<<31>>31;a=e+56|0;s=a;i=o[s>>2]|0;r=t+56|0;c=r;c=(o[c>>2]^i)&n;i=c^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;c=c^o[r>>2];o[r>>2]=c;o[r+4>>2]=((c|0)<0)<<31>>31;r=e+64|0;c=r;a=o[c>>2]|0;i=t+64|0;s=i;s=(o[s>>2]^a)&n;a=s^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;s=s^o[i>>2];o[i>>2]=s;o[i+4>>2]=((s|0)<0)<<31>>31;i=e+72|0;s=i;e=o[s>>2]|0;r=t+72|0;t=r;n=(o[t>>2]^e)&n;e=n^e;t=i;o[t>>2]=e;o[t+4>>2]=((e|0)<0)<<31>>31;n=n^o[r>>2];o[r>>2]=n;o[r+4>>2]=((n|0)<0)<<31>>31;return}function Do(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0;a=Rs(0,o[t>>2]|0,32)|0;h=T;A=Rs(0,o[n>>2]|0,32)|0;h=Es(A|0,T|0,a|0,h|0)|0;a=e;o[a>>2]=h;o[a+4>>2]=T;a=Rs(0,o[t>>2]|0,32)|0;h=T;A=n+8|0;b=Rs(0,o[A>>2]|0,32)|0;h=Es(b|0,T|0,a|0,h|0)|0;a=T;b=t+8|0;y=Rs(0,o[b>>2]|0,32)|0;m=T;w=Rs(0,o[n>>2]|0,32)|0;m=Es(w|0,T|0,y|0,m|0)|0;a=ks(m|0,T|0,h|0,a|0)|0;h=e+8|0;o[h>>2]=a;o[h+4>>2]=T;h=Rs(0,o[b>>2]|0,31)|0;a=T;m=Rs(0,o[A>>2]|0,32)|0;a=Es(m|0,T|0,h|0,a|0)|0;h=T;m=Rs(0,o[t>>2]|0,32)|0;y=T;w=n+16|0;u=Rs(0,o[w>>2]|0,32)|0;y=Es(u|0,T|0,m|0,y|0)|0;h=ks(y|0,T|0,a|0,h|0)|0;a=T;y=t+16|0;m=Rs(0,o[y>>2]|0,32)|0;u=T;_=Rs(0,o[n>>2]|0,32)|0;u=Es(_|0,T|0,m|0,u|0)|0;u=ks(h|0,a|0,u|0,T|0)|0;a=e+16|0;o[a>>2]=u;o[a+4>>2]=T;a=Rs(0,o[b>>2]|0,32)|0;u=T;h=Rs(0,o[w>>2]|0,32)|0;u=Es(h|0,T|0,a|0,u|0)|0;a=T;h=Rs(0,o[y>>2]|0,32)|0;m=T;_=Rs(0,o[A>>2]|0,32)|0;m=Es(_|0,T|0,h|0,m|0)|0;a=ks(m|0,T|0,u|0,a|0)|0;u=T;m=Rs(0,o[t>>2]|0,32)|0;h=T;_=n+24|0;s=Rs(0,o[_>>2]|0,32)|0;h=Es(s|0,T|0,m|0,h|0)|0;h=ks(a|0,u|0,h|0,T|0)|0;u=T;a=t+24|0;m=Rs(0,o[a>>2]|0,32)|0;s=T;f=Rs(0,o[n>>2]|0,32)|0;s=Es(f|0,T|0,m|0,s|0)|0;s=ks(h|0,u|0,s|0,T|0)|0;u=e+24|0;o[u>>2]=s;o[u+4>>2]=T;u=Rs(0,o[y>>2]|0,32)|0;s=T;h=Rs(0,o[w>>2]|0,32)|0;s=Es(h|0,T|0,u|0,s|0)|0;u=T;h=Rs(0,o[b>>2]|0,32)|0;m=T;f=Rs(0,o[_>>2]|0,32)|0;m=Es(f|0,T|0,h|0,m|0)|0;h=T;f=Rs(0,o[a>>2]|0,32)|0;g=T;p=Rs(0,o[A>>2]|0,32)|0;g=Es(p|0,T|0,f|0,g|0)|0;h=ks(g|0,T|0,m|0,h|0)|0;h=Os(h|0,T|0,1)|0;u=ks(h|0,T|0,s|0,u|0)|0;s=T;h=Rs(0,o[t>>2]|0,32)|0;m=T;g=n+32|0;f=Rs(0,o[g>>2]|0,32)|0;m=Es(f|0,T|0,h|0,m|0)|0;m=ks(u|0,s|0,m|0,T|0)|0;s=T;u=t+32|0;h=Rs(0,o[u>>2]|0,32)|0;f=T;p=Rs(0,o[n>>2]|0,32)|0;f=Es(p|0,T|0,h|0,f|0)|0;f=ks(m|0,s|0,f|0,T|0)|0;s=e+32|0;o[s>>2]=f;o[s+4>>2]=T;s=Rs(0,o[y>>2]|0,32)|0;f=T;m=Rs(0,o[_>>2]|0,32)|0;f=Es(m|0,T|0,s|0,f|0)|0;s=T;m=Rs(0,o[a>>2]|0,32)|0;h=T;p=Rs(0,o[w>>2]|0,32)|0;h=Es(p|0,T|0,m|0,h|0)|0;s=ks(h|0,T|0,f|0,s|0)|0;f=T;h=Rs(0,o[b>>2]|0,32)|0;m=T;p=Rs(0,o[g>>2]|0,32)|0;m=Es(p|0,T|0,h|0,m|0)|0;m=ks(s|0,f|0,m|0,T|0)|0;f=T;s=Rs(0,o[u>>2]|0,32)|0;h=T;p=Rs(0,o[A>>2]|0,32)|0;h=Es(p|0,T|0,s|0,h|0)|0;h=ks(m|0,f|0,h|0,T|0)|0;f=T;m=Rs(0,o[t>>2]|0,32)|0;s=T;p=n+40|0;v=Rs(0,o[p>>2]|0,32)|0;s=Es(v|0,T|0,m|0,s|0)|0;s=ks(h|0,f|0,s|0,T|0)|0;f=T;h=t+40|0;m=Rs(0,o[h>>2]|0,32)|0;v=T;l=Rs(0,o[n>>2]|0,32)|0;v=Es(l|0,T|0,m|0,v|0)|0;v=ks(s|0,f|0,v|0,T|0)|0;f=e+40|0;o[f>>2]=v;o[f+4>>2]=T;f=Rs(0,o[a>>2]|0,32)|0;v=T;s=Rs(0,o[_>>2]|0,32)|0;v=Es(s|0,T|0,f|0,v|0)|0;f=T;s=Rs(0,o[b>>2]|0,32)|0;m=T;l=Rs(0,o[p>>2]|0,32)|0;m=Es(l|0,T|0,s|0,m|0)|0;f=ks(m|0,T|0,v|0,f|0)|0;v=T;m=Rs(0,o[h>>2]|0,32)|0;s=T;l=Rs(0,o[A>>2]|0,32)|0;s=Es(l|0,T|0,m|0,s|0)|0;s=ks(f|0,v|0,s|0,T|0)|0;s=Os(s|0,T|0,1)|0;v=T;f=Rs(0,o[y>>2]|0,32)|0;m=T;l=Rs(0,o[g>>2]|0,32)|0;m=Es(l|0,T|0,f|0,m|0)|0;m=ks(s|0,v|0,m|0,T|0)|0;v=T;s=Rs(0,o[u>>2]|0,32)|0;f=T;l=Rs(0,o[w>>2]|0,32)|0;f=Es(l|0,T|0,s|0,f|0)|0;f=ks(m|0,v|0,f|0,T|0)|0;v=T;m=Rs(0,o[t>>2]|0,32)|0;s=T;l=n+48|0;E=Rs(0,o[l>>2]|0,32)|0;s=Es(E|0,T|0,m|0,s|0)|0;s=ks(f|0,v|0,s|0,T|0)|0;v=T;f=t+48|0;m=Rs(0,o[f>>2]|0,32)|0;E=T;d=Rs(0,o[n>>2]|0,32)|0;E=Es(d|0,T|0,m|0,E|0)|0;E=ks(s|0,v|0,E|0,T|0)|0;v=e+48|0;o[v>>2]=E;o[v+4>>2]=T;v=Rs(0,o[a>>2]|0,32)|0;E=T;s=Rs(0,o[g>>2]|0,32)|0;E=Es(s|0,T|0,v|0,E|0)|0;v=T;s=Rs(0,o[u>>2]|0,32)|0;m=T;d=Rs(0,o[_>>2]|0,32)|0;m=Es(d|0,T|0,s|0,m|0)|0;v=ks(m|0,T|0,E|0,v|0)|0;E=T;m=Rs(0,o[y>>2]|0,32)|0;s=T;d=Rs(0,o[p>>2]|0,32)|0;s=Es(d|0,T|0,m|0,s|0)|0;s=ks(v|0,E|0,s|0,T|0)|0;E=T;v=Rs(0,o[h>>2]|0,32)|0;m=T;d=Rs(0,o[w>>2]|0,32)|0;m=Es(d|0,T|0,v|0,m|0)|0;m=ks(s|0,E|0,m|0,T|0)|0;E=T;s=Rs(0,o[b>>2]|0,32)|0;v=T;d=Rs(0,o[l>>2]|0,32)|0;v=Es(d|0,T|0,s|0,v|0)|0;v=ks(m|0,E|0,v|0,T|0)|0;E=T;m=Rs(0,o[f>>2]|0,32)|0;s=T;d=Rs(0,o[A>>2]|0,32)|0;s=Es(d|0,T|0,m|0,s|0)|0;s=ks(v|0,E|0,s|0,T|0)|0;E=T;v=Rs(0,o[t>>2]|0,32)|0;m=T;d=n+56|0;k=Rs(0,o[d>>2]|0,32)|0;m=Es(k|0,T|0,v|0,m|0)|0;m=ks(s|0,E|0,m|0,T|0)|0;E=T;s=t+56|0;v=Rs(0,o[s>>2]|0,32)|0;k=T;c=Rs(0,o[n>>2]|0,32)|0;k=Es(c|0,T|0,v|0,k|0)|0;k=ks(m|0,E|0,k|0,T|0)|0;E=e+56|0;o[E>>2]=k;o[E+4>>2]=T;E=Rs(0,o[u>>2]|0,32)|0;k=T;m=Rs(0,o[g>>2]|0,32)|0;k=Es(m|0,T|0,E|0,k|0)|0;E=T;m=Rs(0,o[a>>2]|0,32)|0;v=T;c=Rs(0,o[p>>2]|0,32)|0;v=Es(c|0,T|0,m|0,v|0)|0;m=T;c=Rs(0,o[h>>2]|0,32)|0;i=T;r=Rs(0,o[_>>2]|0,32)|0;i=Es(r|0,T|0,c|0,i|0)|0;m=ks(i|0,T|0,v|0,m|0)|0;v=T;i=Rs(0,o[b>>2]|0,32)|0;c=T;r=Rs(0,o[d>>2]|0,32)|0;c=Es(r|0,T|0,i|0,c|0)|0;c=ks(m|0,v|0,c|0,T|0)|0;v=T;m=Rs(0,o[s>>2]|0,32)|0;i=T;r=Rs(0,o[A>>2]|0,32)|0;i=Es(r|0,T|0,m|0,i|0)|0;i=ks(c|0,v|0,i|0,T|0)|0;i=Os(i|0,T|0,1)|0;E=ks(i|0,T|0,k|0,E|0)|0;k=T;i=Rs(0,o[y>>2]|0,32)|0;v=T;c=Rs(0,o[l>>2]|0,32)|0;v=Es(c|0,T|0,i|0,v|0)|0;v=ks(E|0,k|0,v|0,T|0)|0;k=T;E=Rs(0,o[f>>2]|0,32)|0;i=T;c=Rs(0,o[w>>2]|0,32)|0;i=Es(c|0,T|0,E|0,i|0)|0;i=ks(v|0,k|0,i|0,T|0)|0;k=T;v=Rs(0,o[t>>2]|0,32)|0;E=T;c=n+64|0;m=Rs(0,o[c>>2]|0,32)|0;E=Es(m|0,T|0,v|0,E|0)|0;E=ks(i|0,k|0,E|0,T|0)|0;k=T;i=t+64|0;v=Rs(0,o[i>>2]|0,32)|0;m=T;r=Rs(0,o[n>>2]|0,32)|0;m=Es(r|0,T|0,v|0,m|0)|0;m=ks(E|0,k|0,m|0,T|0)|0;k=e+64|0;o[k>>2]=m;o[k+4>>2]=T;k=Rs(0,o[u>>2]|0,32)|0;m=T;E=Rs(0,o[p>>2]|0,32)|0;m=Es(E|0,T|0,k|0,m|0)|0;k=T;E=Rs(0,o[h>>2]|0,32)|0;v=T;r=Rs(0,o[g>>2]|0,32)|0;v=Es(r|0,T|0,E|0,v|0)|0;k=ks(v|0,T|0,m|0,k|0)|0;m=T;v=Rs(0,o[a>>2]|0,32)|0;E=T;r=Rs(0,o[l>>2]|0,32)|0;E=Es(r|0,T|0,v|0,E|0)|0;E=ks(k|0,m|0,E|0,T|0)|0;m=T;k=Rs(0,o[f>>2]|0,32)|0;v=T;r=Rs(0,o[_>>2]|0,32)|0;v=Es(r|0,T|0,k|0,v|0)|0;v=ks(E|0,m|0,v|0,T|0)|0;m=T;E=Rs(0,o[y>>2]|0,32)|0;k=T;r=Rs(0,o[d>>2]|0,32)|0;k=Es(r|0,T|0,E|0,k|0)|0;k=ks(v|0,m|0,k|0,T|0)|0;m=T;v=Rs(0,o[s>>2]|0,32)|0;E=T;r=Rs(0,o[w>>2]|0,32)|0;E=Es(r|0,T|0,v|0,E|0)|0;E=ks(k|0,m|0,E|0,T|0)|0;m=T;k=Rs(0,o[b>>2]|0,32)|0;v=T;r=Rs(0,o[c>>2]|0,32)|0;v=Es(r|0,T|0,k|0,v|0)|0;v=ks(E|0,m|0,v|0,T|0)|0;m=T;E=Rs(0,o[i>>2]|0,32)|0;k=T;r=Rs(0,o[A>>2]|0,32)|0;k=Es(r|0,T|0,E|0,k|0)|0;k=ks(v|0,m|0,k|0,T|0)|0;m=T;v=Rs(0,o[t>>2]|0,32)|0;E=T;r=n+72|0;S=Rs(0,o[r>>2]|0,32)|0;E=Es(S|0,T|0,v|0,E|0)|0;E=ks(k|0,m|0,E|0,T|0)|0;m=T;t=t+72|0;k=Rs(0,o[t>>2]|0,32)|0;v=T;n=Rs(0,o[n>>2]|0,32)|0;v=Es(n|0,T|0,k|0,v|0)|0;v=ks(E|0,m|0,v|0,T|0)|0;n=e+72|0;o[n>>2]=v;o[n+4>>2]=T;n=Rs(0,o[h>>2]|0,32)|0;v=T;m=Rs(0,o[p>>2]|0,32)|0;v=Es(m|0,T|0,n|0,v|0)|0;n=T;m=Rs(0,o[a>>2]|0,32)|0;E=T;k=Rs(0,o[d>>2]|0,32)|0;E=Es(k|0,T|0,m|0,E|0)|0;n=ks(E|0,T|0,v|0,n|0)|0;v=T;E=Rs(0,o[s>>2]|0,32)|0;m=T;k=Rs(0,o[_>>2]|0,32)|0;m=Es(k|0,T|0,E|0,m|0)|0;m=ks(n|0,v|0,m|0,T|0)|0;v=T;n=Rs(0,o[b>>2]|0,32)|0;b=T;E=Rs(0,o[r>>2]|0,32)|0;b=Es(E|0,T|0,n|0,b|0)|0;b=ks(m|0,v|0,b|0,T|0)|0;v=T;m=Rs(0,o[t>>2]|0,32)|0;n=T;A=Rs(0,o[A>>2]|0,32)|0;n=Es(A|0,T|0,m|0,n|0)|0;n=ks(b|0,v|0,n|0,T|0)|0;n=Os(n|0,T|0,1)|0;v=T;b=Rs(0,o[u>>2]|0,32)|0;m=T;A=Rs(0,o[l>>2]|0,32)|0;m=Es(A|0,T|0,b|0,m|0)|0;m=ks(n|0,v|0,m|0,T|0)|0;v=T;n=Rs(0,o[f>>2]|0,32)|0;b=T;A=Rs(0,o[g>>2]|0,32)|0;b=Es(A|0,T|0,n|0,b|0)|0;b=ks(m|0,v|0,b|0,T|0)|0;v=T;m=Rs(0,o[y>>2]|0,32)|0;n=T;A=Rs(0,o[c>>2]|0,32)|0;n=Es(A|0,T|0,m|0,n|0)|0;n=ks(b|0,v|0,n|0,T|0)|0;v=T;b=Rs(0,o[i>>2]|0,32)|0;m=T;A=Rs(0,o[w>>2]|0,32)|0;m=Es(A|0,T|0,b|0,m|0)|0;m=ks(n|0,v|0,m|0,T|0)|0;v=e+80|0;o[v>>2]=m;o[v+4>>2]=T;v=Rs(0,o[h>>2]|0,32)|0;m=T;n=Rs(0,o[l>>2]|0,32)|0;m=Es(n|0,T|0,v|0,m|0)|0;v=T;n=Rs(0,o[f>>2]|0,32)|0;b=T;A=Rs(0,o[p>>2]|0,32)|0;b=Es(A|0,T|0,n|0,b|0)|0;v=ks(b|0,T|0,m|0,v|0)|0;m=T;b=Rs(0,o[u>>2]|0,32)|0;n=T;A=Rs(0,o[d>>2]|0,32)|0;n=Es(A|0,T|0,b|0,n|0)|0;n=ks(v|0,m|0,n|0,T|0)|0;m=T;v=Rs(0,o[s>>2]|0,32)|0;b=T;A=Rs(0,o[g>>2]|0,32)|0;b=Es(A|0,T|0,v|0,b|0)|0;b=ks(n|0,m|0,b|0,T|0)|0;m=T;n=Rs(0,o[a>>2]|0,32)|0;v=T;A=Rs(0,o[c>>2]|0,32)|0;v=Es(A|0,T|0,n|0,v|0)|0;v=ks(b|0,m|0,v|0,T|0)|0;m=T;b=Rs(0,o[i>>2]|0,32)|0;n=T;A=Rs(0,o[_>>2]|0,32)|0;n=Es(A|0,T|0,b|0,n|0)|0;n=ks(v|0,m|0,n|0,T|0)|0;m=T;y=Rs(0,o[y>>2]|0,32)|0;v=T;b=Rs(0,o[r>>2]|0,32)|0;v=Es(b|0,T|0,y|0,v|0)|0;v=ks(n|0,m|0,v|0,T|0)|0;m=T;n=Rs(0,o[t>>2]|0,32)|0;y=T;w=Rs(0,o[w>>2]|0,32)|0;y=Es(w|0,T|0,n|0,y|0)|0;y=ks(v|0,m|0,y|0,T|0)|0;m=e+88|0;o[m>>2]=y;o[m+4>>2]=T;m=Rs(0,o[f>>2]|0,32)|0;y=T;v=Rs(0,o[l>>2]|0,32)|0;y=Es(v|0,T|0,m|0,y|0)|0;m=T;v=Rs(0,o[h>>2]|0,32)|0;n=T;w=Rs(0,o[d>>2]|0,32)|0;n=Es(w|0,T|0,v|0,n|0)|0;v=T;w=Rs(0,o[s>>2]|0,32)|0;b=T;A=Rs(0,o[p>>2]|0,32)|0;b=Es(A|0,T|0,w|0,b|0)|0;v=ks(b|0,T|0,n|0,v|0)|0;n=T;a=Rs(0,o[a>>2]|0,32)|0;b=T;w=Rs(0,o[r>>2]|0,32)|0;b=Es(w|0,T|0,a|0,b|0)|0;b=ks(v|0,n|0,b|0,T|0)|0;n=T;v=Rs(0,o[t>>2]|0,32)|0;a=T;_=Rs(0,o[_>>2]|0,32)|0;a=Es(_|0,T|0,v|0,a|0)|0;a=ks(b|0,n|0,a|0,T|0)|0;a=Os(a|0,T|0,1)|0;m=ks(a|0,T|0,y|0,m|0)|0;y=T;a=Rs(0,o[u>>2]|0,32)|0;n=T;b=Rs(0,o[c>>2]|0,32)|0;n=Es(b|0,T|0,a|0,n|0)|0;n=ks(m|0,y|0,n|0,T|0)|0;y=T;m=Rs(0,o[i>>2]|0,32)|0;a=T;b=Rs(0,o[g>>2]|0,32)|0;a=Es(b|0,T|0,m|0,a|0)|0;a=ks(n|0,y|0,a|0,T|0)|0;y=e+96|0;o[y>>2]=a;o[y+4>>2]=T;y=Rs(0,o[f>>2]|0,32)|0;a=T;n=Rs(0,o[d>>2]|0,32)|0;a=Es(n|0,T|0,y|0,a|0)|0;y=T;n=Rs(0,o[s>>2]|0,32)|0;m=T;b=Rs(0,o[l>>2]|0,32)|0;m=Es(b|0,T|0,n|0,m|0)|0;y=ks(m|0,T|0,a|0,y|0)|0;a=T;m=Rs(0,o[h>>2]|0,32)|0;n=T;b=Rs(0,o[c>>2]|0,32)|0;n=Es(b|0,T|0,m|0,n|0)|0;n=ks(y|0,a|0,n|0,T|0)|0;a=T;y=Rs(0,o[i>>2]|0,32)|0;m=T;b=Rs(0,o[p>>2]|0,32)|0;m=Es(b|0,T|0,y|0,m|0)|0;m=ks(n|0,a|0,m|0,T|0)|0;a=T;u=Rs(0,o[u>>2]|0,32)|0;n=T;y=Rs(0,o[r>>2]|0,32)|0;n=Es(y|0,T|0,u|0,n|0)|0;n=ks(m|0,a|0,n|0,T|0)|0;a=T;m=Rs(0,o[t>>2]|0,32)|0;u=T;g=Rs(0,o[g>>2]|0,32)|0;u=Es(g|0,T|0,m|0,u|0)|0;u=ks(n|0,a|0,u|0,T|0)|0;a=e+104|0;o[a>>2]=u;o[a+4>>2]=T;a=Rs(0,o[s>>2]|0,32)|0;u=T;n=Rs(0,o[d>>2]|0,32)|0;u=Es(n|0,T|0,a|0,u|0)|0;a=T;n=Rs(0,o[h>>2]|0,32)|0;h=T;m=Rs(0,o[r>>2]|0,32)|0;h=Es(m|0,T|0,n|0,h|0)|0;a=ks(h|0,T|0,u|0,a|0)|0;u=T;h=Rs(0,o[t>>2]|0,32)|0;n=T;p=Rs(0,o[p>>2]|0,32)|0;n=Es(p|0,T|0,h|0,n|0)|0;n=ks(a|0,u|0,n|0,T|0)|0;n=Os(n|0,T|0,1)|0;u=T;a=Rs(0,o[f>>2]|0,32)|0;h=T;p=Rs(0,o[c>>2]|0,32)|0;h=Es(p|0,T|0,a|0,h|0)|0;h=ks(n|0,u|0,h|0,T|0)|0;u=T;n=Rs(0,o[i>>2]|0,32)|0;a=T;p=Rs(0,o[l>>2]|0,32)|0;a=Es(p|0,T|0,n|0,a|0)|0;a=ks(h|0,u|0,a|0,T|0)|0;u=e+112|0;o[u>>2]=a;o[u+4>>2]=T;u=Rs(0,o[s>>2]|0,32)|0;a=T;h=Rs(0,o[c>>2]|0,32)|0;a=Es(h|0,T|0,u|0,a|0)|0;u=T;h=Rs(0,o[i>>2]|0,32)|0;n=T;p=Rs(0,o[d>>2]|0,32)|0;n=Es(p|0,T|0,h|0,n|0)|0;u=ks(n|0,T|0,a|0,u|0)|0;a=T;n=Rs(0,o[f>>2]|0,32)|0;f=T;h=Rs(0,o[r>>2]|0,32)|0;f=Es(h|0,T|0,n|0,f|0)|0;f=ks(u|0,a|0,f|0,T|0)|0;a=T;u=Rs(0,o[t>>2]|0,32)|0;n=T;l=Rs(0,o[l>>2]|0,32)|0;n=Es(l|0,T|0,u|0,n|0)|0;n=ks(f|0,a|0,n|0,T|0)|0;a=e+120|0;o[a>>2]=n;o[a+4>>2]=T;a=Rs(0,o[i>>2]|0,32)|0;n=T;f=Rs(0,o[c>>2]|0,32)|0;n=Es(f|0,T|0,a|0,n|0)|0;a=T;s=Rs(0,o[s>>2]|0,32)|0;f=T;u=Rs(0,o[r>>2]|0,32)|0;f=Es(u|0,T|0,s|0,f|0)|0;s=T;u=Rs(0,o[t>>2]|0,32)|0;l=T;d=Rs(0,o[d>>2]|0,32)|0;l=Es(d|0,T|0,u|0,l|0)|0;s=ks(l|0,T|0,f|0,s|0)|0;s=Os(s|0,T|0,1)|0;a=ks(s|0,T|0,n|0,a|0)|0;n=e+128|0;o[n>>2]=a;o[n+4>>2]=T;i=Rs(0,o[i>>2]|0,32)|0;n=T;a=Rs(0,o[r>>2]|0,32)|0;n=Es(a|0,T|0,i|0,n|0)|0;i=T;a=Rs(0,o[t>>2]|0,32)|0;s=T;c=Rs(0,o[c>>2]|0,32)|0;s=Es(c|0,T|0,a|0,s|0)|0;i=ks(s|0,T|0,n|0,i|0)|0;n=e+136|0;o[n>>2]=i;o[n+4>>2]=T;n=Rs(0,o[t>>2]|0,31)|0;t=T;r=Rs(0,o[r>>2]|0,32)|0;t=Es(r|0,T|0,n|0,t|0)|0;n=e+144|0;o[n>>2]=t;o[n+4>>2]=T;return}function Bo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0;t=e+80|0;s=t;o[s>>2]=0;o[s+4>>2]=0;s=e;f=o[s>>2]|0;s=o[s+4>>2]|0;n=ks(f|0,s|0,s>>31>>>6|0,0)|0;a=T;i=Rs(n|0,a|0,26)|0;l=T;a=Ss(f|0,s|0,n&-67108864|0,a|0)|0;n=e;o[n>>2]=a;o[n+4>>2]=T;n=e+8|0;a=n;a=ks(i|0,l|0,o[a>>2]|0,o[a+4>>2]|0)|0;l=T;i=ks(a|0,l|0,l>>31>>>7|0,0)|0;s=T;f=Rs(i|0,s|0,25)|0;r=T;s=Ss(a|0,l|0,i&-33554432|0,s|0)|0;i=n;o[i>>2]=s;o[i+4>>2]=T;i=e+16|0;s=i;s=ks(f|0,r|0,o[s>>2]|0,o[s+4>>2]|0)|0;r=T;f=ks(s|0,r|0,r>>31>>>6|0,0)|0;l=T;a=Rs(f|0,l|0,26)|0;c=T;l=Ss(s|0,r|0,f&-67108864|0,l|0)|0;o[i>>2]=l;o[i+4>>2]=T;i=e+24|0;l=i;l=ks(a|0,c|0,o[l>>2]|0,o[l+4>>2]|0)|0;c=T;a=ks(l|0,c|0,c>>31>>>7|0,0)|0;f=T;r=Rs(a|0,f|0,25)|0;s=T;f=Ss(l|0,c|0,a&-33554432|0,f|0)|0;o[i>>2]=f;o[i+4>>2]=T;i=e+32|0;f=i;f=ks(r|0,s|0,o[f>>2]|0,o[f+4>>2]|0)|0;s=T;r=ks(f|0,s|0,s>>31>>>6|0,0)|0;a=T;c=Rs(r|0,a|0,26)|0;l=T;a=Ss(f|0,s|0,r&-67108864|0,a|0)|0;o[i>>2]=a;o[i+4>>2]=T;i=e+40|0;a=i;a=ks(c|0,l|0,o[a>>2]|0,o[a+4>>2]|0)|0;l=T;c=ks(a|0,l|0,l>>31>>>7|0,0)|0;r=T;s=Rs(c|0,r|0,25)|0;f=T;r=Ss(a|0,l|0,c&-33554432|0,r|0)|0;o[i>>2]=r;o[i+4>>2]=T;i=e+48|0;r=i;r=ks(s|0,f|0,o[r>>2]|0,o[r+4>>2]|0)|0;f=T;s=ks(r|0,f|0,f>>31>>>6|0,0)|0;c=T;l=Rs(s|0,c|0,26)|0;a=T;c=Ss(r|0,f|0,s&-67108864|0,c|0)|0;o[i>>2]=c;o[i+4>>2]=T;i=e+56|0;c=i;c=ks(l|0,a|0,o[c>>2]|0,o[c+4>>2]|0)|0;a=T;l=ks(c|0,a|0,a>>31>>>7|0,0)|0;s=T;f=Rs(l|0,s|0,25)|0;r=T;s=Ss(c|0,a|0,l&-33554432|0,s|0)|0;o[i>>2]=s;o[i+4>>2]=T;i=e+64|0;s=i;s=ks(f|0,r|0,o[s>>2]|0,o[s+4>>2]|0)|0;r=T;f=ks(s|0,r|0,r>>31>>>6|0,0)|0;l=T;a=Rs(f|0,l|0,26)|0;c=T;l=Ss(s|0,r|0,f&-67108864|0,l|0)|0;o[i>>2]=l;o[i+4>>2]=T;i=e+72|0;l=i;l=ks(a|0,c|0,o[l>>2]|0,o[l+4>>2]|0)|0;c=T;a=ks(l|0,c|0,c>>31>>>7|0,0)|0;f=T;r=Rs(a|0,f|0,25)|0;s=T;f=Ss(l|0,c|0,a&-33554432|0,f|0)|0;o[i>>2]=f;o[i+4>>2]=T;i=t;i=ks(r|0,s|0,o[i>>2]|0,o[i+4>>2]|0)|0;s=T;r=e;f=o[r>>2]|0;r=o[r+4>>2]|0;a=Es(i|0,s|0,18,0)|0;c=T;s=ks(f|0,r|0,i|0,s|0)|0;c=ks(s|0,T|0,a|0,c|0)|0;a=T;o[t>>2]=0;o[t+4>>2]=0;t=ks(c|0,a|0,a>>31>>>6|0,0)|0;s=T;i=Rs(t|0,s|0,26)|0;r=T;s=Ss(c|0,a|0,t&-67108864|0,s|0)|0;t=e;o[t>>2]=s;o[t+4>>2]=T;t=n;t=ks(i|0,r|0,o[t>>2]|0,o[t+4>>2]|0)|0;e=n;o[e>>2]=t;o[e+4>>2]=T;return}function No(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0;r=h;h=h+160|0;n=r;q=o[t>>2]|0;y=Rs(0,q|0,32)|0;c=T;a=Es(y|0,c|0,y|0,c|0)|0;s=T;B=n;o[B>>2]=a;o[B+4>>2]=s;q=Rs(0,q|0,31)|0;B=T;H=o[t+8>>2]|0;E=Rs(0,H|0,32)|0;d=T;m=Es(E|0,d|0,q|0,B|0)|0;p=T;l=n+8|0;w=l;o[w>>2]=m;o[w+4>>2]=p;w=Es(E|0,d|0,E|0,d|0)|0;A=T;g=Rs(0,o[t+16>>2]|0,32)|0;u=T;b=Es(g|0,u|0,y|0,c|0)|0;A=ks(b|0,T|0,w|0,A|0)|0;A=Os(A|0,T|0,1)|0;w=T;b=n+16|0;I=b;o[I>>2]=A;o[I+4>>2]=w;I=Es(g|0,u|0,E|0,d|0)|0;x=T;ce=Rs(0,o[t+24>>2]|0,32)|0;ae=T;_=Es(ce|0,ae|0,y|0,c|0)|0;x=ks(_|0,T|0,I|0,x|0)|0;x=Os(x|0,T|0,1)|0;I=T;_=n+24|0;D=_;o[D>>2]=x;o[D+4>>2]=I;D=Es(g|0,u|0,g|0,u|0)|0;O=T;R=Rs(0,H|0,30)|0;R=Es(ce|0,ae|0,R|0,T|0)|0;O=ks(R|0,T|0,D|0,O|0)|0;D=T;R=Rs(0,o[t+32>>2]|0,32)|0;v=T;B=Es(R|0,v|0,q|0,B|0)|0;B=ks(O|0,D|0,B|0,T|0)|0;D=T;O=n+32|0;q=O;o[q>>2]=B;o[q+4>>2]=D;q=Es(ce|0,ae|0,g|0,u|0)|0;U=T;P=Es(R|0,v|0,E|0,d|0)|0;U=ks(P|0,T|0,q|0,U|0)|0;q=T;P=o[t+40>>2]|0;j=Rs(0,P|0,32)|0;M=T;z=Es(j|0,M|0,y|0,c|0)|0;z=ks(U|0,q|0,z|0,T|0)|0;z=Os(z|0,T|0,1)|0;q=T;U=n+40|0;$=U;o[$>>2]=z;o[$+4>>2]=q;$=Es(ce|0,ae|0,ce|0,ae|0)|0;te=T;K=Es(R|0,v|0,g|0,u|0)|0;te=ks(K|0,T|0,$|0,te|0)|0;$=T;K=Rs(0,o[t+48>>2]|0,32)|0;G=T;W=Es(K|0,G|0,y|0,c|0)|0;Y=T;H=Rs(0,H|0,31)|0;H=Es(j|0,M|0,H|0,T|0)|0;H=ks(te|0,$|0,H|0,T|0)|0;Y=ks(H|0,T|0,W|0,Y|0)|0;Y=Os(Y|0,T|0,1)|0;W=T;H=n+48|0;$=H;o[$>>2]=Y;o[$+4>>2]=W;$=Es(R|0,v|0,ce|0,ae|0)|0;te=T;Q=Es(j|0,M|0,g|0,u|0)|0;te=ks(Q|0,T|0,$|0,te|0)|0;$=T;Q=Es(K|0,G|0,E|0,d|0)|0;Q=ks(te|0,$|0,Q|0,T|0)|0;$=T;te=o[t+56>>2]|0;L=Rs(0,te|0,32)|0;F=T;ee=Es(L|0,F|0,y|0,c|0)|0;ee=ks(Q|0,$|0,ee|0,T|0)|0;ee=Os(ee|0,T|0,1)|0;$=T;Q=n+56|0;V=Q;o[V>>2]=ee;o[V+4>>2]=$;V=Es(R|0,v|0,R|0,v|0)|0;Z=T;i=Es(K|0,G|0,g|0,u|0)|0;oe=T;ne=o[t+64>>2]|0;J=Rs(0,ne|0,32)|0;X=T;ie=Es(J|0,X|0,y|0,c|0)|0;oe=ks(ie|0,T|0,i|0,oe|0)|0;i=T;ie=Es(L|0,F|0,E|0,d|0)|0;re=T;f=Es(j|0,M|0,ce|0,ae|0)|0;f=ks(ie|0,re|0,f|0,T|0)|0;f=Os(f|0,T|0,1)|0;f=ks(oe|0,i|0,f|0,T|0)|0;f=Os(f|0,T|0,1)|0;Z=ks(f|0,T|0,V|0,Z|0)|0;V=T;f=Es(j|0,M|0,R|0,v|0)|0;i=T;oe=Es(K|0,G|0,ce|0,ae|0)|0;i=ks(oe|0,T|0,f|0,i|0)|0;f=T;oe=Es(L|0,F|0,g|0,u|0)|0;oe=ks(i|0,f|0,oe|0,T|0)|0;f=T;i=Es(J|0,X|0,E|0,d|0)|0;i=ks(oe|0,f|0,i|0,T|0)|0;f=T;oe=o[t+72>>2]|0;re=Rs(0,oe|0,32)|0;ie=T;c=Es(re|0,ie|0,y|0,c|0)|0;c=ks(i|0,f|0,c|0,T|0)|0;c=Os(c|0,T|0,1)|0;t=n+72|0;o[t>>2]=c;o[t+4>>2]=T;t=Es(j|0,M|0,j|0,M|0)|0;c=T;f=Es(K|0,G|0,R|0,v|0)|0;c=ks(f|0,T|0,t|0,c|0)|0;t=T;f=Es(J|0,X|0,g|0,u|0)|0;f=ks(c|0,t|0,f|0,T|0)|0;t=T;c=Es(L|0,F|0,ce|0,ae|0)|0;i=T;d=Es(re|0,ie|0,E|0,d|0)|0;i=ks(d|0,T|0,c|0,i|0)|0;i=Os(i|0,T|0,1)|0;i=ks(f|0,t|0,i|0,T|0)|0;t=T;f=Os(i|0,t|0,1)|0;c=T;d=n+80|0;o[d>>2]=f;o[d+4>>2]=c;d=Es(K|0,G|0,j|0,M|0)|0;E=T;y=Es(L|0,F|0,R|0,v|0)|0;E=ks(y|0,T|0,d|0,E|0)|0;d=T;y=Es(J|0,X|0,ce|0,ae|0)|0;y=ks(E|0,d|0,y|0,T|0)|0;d=T;u=Es(re|0,ie|0,g|0,u|0)|0;u=ks(y|0,d|0,u|0,T|0)|0;d=T;y=Os(u|0,d|0,1)|0;g=T;E=n+88|0;o[E>>2]=y;o[E+4>>2]=g;E=Es(K|0,G|0,K|0,G|0)|0;k=T;C=Es(J|0,X|0,R|0,v|0)|0;S=T;se=Es(L|0,F|0,j|0,M|0)|0;N=T;ae=Es(re|0,ie|0,ce|0,ae|0)|0;N=ks(ae|0,T|0,se|0,N|0)|0;N=Os(N|0,T|0,1)|0;S=ks(N|0,T|0,C|0,S|0)|0;S=Os(S|0,T|0,1)|0;k=ks(S|0,T|0,E|0,k|0)|0;E=T;S=n+96|0;o[S>>2]=k;o[S+4>>2]=E;S=Es(L|0,F|0,K|0,G|0)|0;C=T;M=Es(J|0,X|0,j|0,M|0)|0;C=ks(M|0,T|0,S|0,C|0)|0;S=T;v=Es(re|0,ie|0,R|0,v|0)|0;v=ks(C|0,S|0,v|0,T|0)|0;S=T;C=Os(v|0,S|0,1)|0;R=T;M=n+104|0;o[M>>2]=C;o[M+4>>2]=R;M=Es(L|0,F|0,L|0,F|0)|0;j=T;N=Es(J|0,X|0,K|0,G|0)|0;j=ks(N|0,T|0,M|0,j|0)|0;M=T;P=Rs(0,P|0,31)|0;P=Es(re|0,ie|0,P|0,T|0)|0;P=ks(j|0,M|0,P|0,T|0)|0;M=T;j=Os(P|0,M|0,1)|0;N=T;se=n+112|0;o[se>>2]=j;o[se+4>>2]=N;F=Es(J|0,X|0,L|0,F|0)|0;L=T;G=Es(re|0,ie|0,K|0,G|0)|0;L=ks(G|0,T|0,F|0,L|0)|0;F=T;G=Os(L|0,F|0,1)|0;K=T;se=n+120|0;o[se>>2]=G;o[se+4>>2]=K;X=Es(J|0,X|0,J|0,X|0)|0;J=T;te=Rs(0,te|0,30)|0;te=Es(re|0,ie|0,te|0,T|0)|0;J=ks(te|0,T|0,X|0,J|0)|0;X=T;te=n+128|0;o[te>>2]=J;o[te+4>>2]=X;ne=Rs(0,ne|0,31)|0;ne=Es(re|0,ie|0,ne|0,T|0)|0;te=T;se=n+136|0;o[se>>2]=ne;o[se+4>>2]=te;oe=Rs(0,oe|0,31)|0;ie=Es(oe|0,T|0,re|0,ie|0)|0;re=T;oe=n+144|0;o[oe>>2]=ie;o[oe+4>>2]=re;re=Es(ie|0,re|0,19,0)|0;V=ks(re|0,T|0,Z|0,V|0)|0;Z=n+64|0;o[Z>>2]=V;o[Z+4>>2]=T;Z=Es(ne|0,te|0,18,0)|0;V=T;$=ks(ne|0,te|0,ee|0,$|0)|0;V=ks($|0,T|0,Z|0,V|0)|0;o[Q>>2]=V;o[Q+4>>2]=T;Q=Es(J|0,X|0,18,0)|0;V=T;W=ks(J|0,X|0,Y|0,W|0)|0;V=ks(W|0,T|0,Q|0,V|0)|0;o[H>>2]=V;o[H+4>>2]=T;F=Es(L|0,F|0,36,0)|0;L=T;q=ks(G|0,K|0,z|0,q|0)|0;L=ks(q|0,T|0,F|0,L|0)|0;o[U>>2]=L;o[U+4>>2]=T;M=Es(P|0,M|0,36,0)|0;P=T;D=ks(j|0,N|0,B|0,D|0)|0;P=ks(D|0,T|0,M|0,P|0)|0;o[O>>2]=P;o[O+4>>2]=T;S=Es(v|0,S|0,36,0)|0;v=T;I=ks(C|0,R|0,x|0,I|0)|0;v=ks(I|0,T|0,S|0,v|0)|0;o[_>>2]=v;o[_+4>>2]=T;_=Es(k|0,E|0,18,0)|0;v=T;w=ks(k|0,E|0,A|0,w|0)|0;v=ks(w|0,T|0,_|0,v|0)|0;o[b>>2]=v;o[b+4>>2]=T;d=Es(u|0,d|0,36,0)|0;u=T;p=ks(y|0,g|0,m|0,p|0)|0;u=ks(p|0,T|0,d|0,u|0)|0;o[l>>2]=u;o[l+4>>2]=T;t=Es(i|0,t|0,36,0)|0;i=T;s=ks(f|0,c|0,a|0,s|0)|0;i=ks(s|0,T|0,t|0,i|0)|0;t=n;o[t>>2]=i;o[t+4>>2]=T;Bo(n);t=n;n=e+80|0;do{o[e>>2]=o[t>>2];e=e+4|0;t=t+4|0}while((e|0)<(n|0));h=r;return}function jo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0;E=h;h=h+16|0;p=E;do{if(e>>>0<245){l=e>>>0<11?16:e+11&-8;e=l>>>3;d=o[9632]|0;n=d>>>e;if(n&3|0){t=(n&1^1)+e|0;e=38568+(t<<1<<2)|0;n=e+8|0;r=o[n>>2]|0;i=r+8|0;s=o[i>>2]|0;if((s|0)==(e|0))o[9632]=d&~(1<>2]=e;o[n>>2]=s}A=t<<3;o[r+4>>2]=A|3;A=r+A+4|0;o[A>>2]=o[A>>2]|1;A=i;h=E;return A|0}u=o[9634]|0;if(l>>>0>u>>>0){if(n|0){t=2<>>12&16;t=t>>>c;n=t>>>5&8;t=t>>>n;s=t>>>2&4;t=t>>>s;e=t>>>1&2;t=t>>>e;r=t>>>1&1;r=(n|c|s|e|r)+(t>>>r)|0;t=38568+(r<<1<<2)|0;e=t+8|0;s=o[e>>2]|0;c=s+8|0;n=o[c>>2]|0;if((n|0)==(t|0)){e=d&~(1<>2]=t;o[e>>2]=n;e=d}A=r<<3;a=A-l|0;o[s+4>>2]=l|3;i=s+l|0;o[i+4>>2]=a|1;o[s+A>>2]=a;if(u|0){r=o[9637]|0;t=u>>>3;n=38568+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=r;o[t+12>>2]=r;o[r+8>>2]=t;o[r+12>>2]=n}o[9634]=a;o[9637]=i;A=c;h=E;return A|0}s=o[9633]|0;if(s){n=(s&0-s)+-1|0;i=n>>>12&16;n=n>>>i;r=n>>>5&8;n=n>>>r;a=n>>>2&4;n=n>>>a;c=n>>>1&2;n=n>>>c;f=n>>>1&1;f=o[38832+((r|i|a|c|f)+(n>>>f)<<2)>>2]|0;n=f;c=f;f=(o[f+4>>2]&-8)-l|0;while(1){e=o[n+16>>2]|0;if(!e){e=o[n+20>>2]|0;if(!e)break}a=(o[e+4>>2]&-8)-l|0;i=a>>>0>>0;n=e;c=i?e:c;f=i?a:f}a=c+l|0;if(a>>>0>c>>>0){i=o[c+24>>2]|0;t=o[c+12>>2]|0;do{if((t|0)==(c|0)){e=c+20|0;t=o[e>>2]|0;if(!t){e=c+16|0;t=o[e>>2]|0;if(!t){n=0;break}}while(1){r=t+20|0;n=o[r>>2]|0;if(!n){r=t+16|0;n=o[r>>2]|0;if(!n)break;else{t=n;e=r}}else{t=n;e=r}}o[e>>2]=0;n=t}else{n=o[c+8>>2]|0;o[n+12>>2]=t;o[t+8>>2]=n;n=t}}while(0);do{if(i|0){t=o[c+28>>2]|0;e=38832+(t<<2)|0;if((c|0)==(o[e>>2]|0)){o[e>>2]=n;if(!n){o[9633]=s&~(1<>2]|0)==(c|0)?A:i+20|0)>>2]=n;if(!n)break}o[n+24>>2]=i;t=o[c+16>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}t=o[c+20>>2]|0;if(t|0){o[n+20>>2]=t;o[t+24>>2]=n}}}while(0);if(f>>>0<16){A=f+l|0;o[c+4>>2]=A|3;A=c+A+4|0;o[A>>2]=o[A>>2]|1}else{o[c+4>>2]=l|3;o[a+4>>2]=f|1;o[a+f>>2]=f;if(u|0){r=o[9637]|0;t=u>>>3;n=38568+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=r;o[t+12>>2]=r;o[r+8>>2]=t;o[r+12>>2]=n}o[9634]=f;o[9637]=a}A=c+8|0;h=E;return A|0}else d=l}else d=l}else d=l}else if(e>>>0<=4294967231){e=e+11|0;l=e&-8;r=o[9633]|0;if(r){i=0-l|0;e=e>>>8;if(e)if(l>>>0>16777215)f=31;else{d=(e+1048320|0)>>>16&8;y=e<>>16&4;y=y<>>16&2;f=14-(c|d|f)+(y<>>15)|0;f=l>>>(f+7|0)&1|f<<1}else f=0;n=o[38832+(f<<2)>>2]|0;e:do{if(!n){n=0;e=0;y=61}else{e=0;c=l<<((f|0)==31?0:25-(f>>>1)|0);s=0;while(1){a=(o[n+4>>2]&-8)-l|0;if(a>>>0>>0)if(!a){e=n;i=0;y=65;break e}else{e=n;i=a}y=o[n+20>>2]|0;n=o[n+16+(c>>>31<<2)>>2]|0;s=(y|0)==0|(y|0)==(n|0)?s:y;if(!n){n=s;y=61;break}else c=c<<1}}}while(0);if((y|0)==61){if((n|0)==0&(e|0)==0){e=2<>>12&16;d=d>>>a;s=d>>>5&8;d=d>>>s;c=d>>>2&4;d=d>>>c;f=d>>>1&2;d=d>>>f;n=d>>>1&1;e=0;n=o[38832+((s|a|c|f|n)+(d>>>n)<<2)>>2]|0}if(!n){c=e;a=i}else y=65}if((y|0)==65){s=n;while(1){d=(o[s+4>>2]&-8)-l|0;n=d>>>0>>0;i=n?d:i;e=n?s:e;n=o[s+16>>2]|0;if(!n)n=o[s+20>>2]|0;if(!n){c=e;a=i;break}else s=n}}if(((c|0)!=0?a>>>0<((o[9634]|0)-l|0)>>>0:0)?(u=c+l|0,u>>>0>c>>>0):0){s=o[c+24>>2]|0;t=o[c+12>>2]|0;do{if((t|0)==(c|0)){e=c+20|0;t=o[e>>2]|0;if(!t){e=c+16|0;t=o[e>>2]|0;if(!t){t=0;break}}while(1){i=t+20|0;n=o[i>>2]|0;if(!n){i=t+16|0;n=o[i>>2]|0;if(!n)break;else{t=n;e=i}}else{t=n;e=i}}o[e>>2]=0}else{A=o[c+8>>2]|0;o[A+12>>2]=t;o[t+8>>2]=A}}while(0);do{if(s){e=o[c+28>>2]|0;n=38832+(e<<2)|0;if((c|0)==(o[n>>2]|0)){o[n>>2]=t;if(!t){r=r&~(1<>2]|0)==(c|0)?A:s+20|0)>>2]=t;if(!t)break}o[t+24>>2]=s;e=o[c+16>>2]|0;if(e|0){o[t+16>>2]=e;o[e+24>>2]=t}e=o[c+20>>2]|0;if(e){o[t+20>>2]=e;o[e+24>>2]=t}}}while(0);e:do{if(a>>>0<16){A=a+l|0;o[c+4>>2]=A|3;A=c+A+4|0;o[A>>2]=o[A>>2]|1}else{o[c+4>>2]=l|3;o[u+4>>2]=a|1;o[u+a>>2]=a;t=a>>>3;if(a>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=u;o[t+12>>2]=u;o[u+8>>2]=t;o[u+12>>2]=n;break}t=a>>>8;if(t)if(a>>>0>16777215)n=31;else{w=(t+1048320|0)>>>16&8;A=t<>>16&4;A=A<<_;n=(A+245760|0)>>>16&2;n=14-(_|w|n)+(A<>>15)|0;n=a>>>(n+7|0)&1|n<<1}else n=0;t=38832+(n<<2)|0;o[u+28>>2]=n;e=u+16|0;o[e+4>>2]=0;o[e>>2]=0;e=1<>2]=u;o[u+24>>2]=t;o[u+12>>2]=u;o[u+8>>2]=u;break}t=o[t>>2]|0;t:do{if((o[t+4>>2]&-8|0)!=(a|0)){r=a<<((n|0)==31?0:25-(n>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(a|0)){t=e;break t}else{r=r<<1;t=e}}o[n>>2]=u;o[u+24>>2]=t;o[u+12>>2]=u;o[u+8>>2]=u;break e}}while(0);w=t+8|0;A=o[w>>2]|0;o[A+12>>2]=u;o[w>>2]=u;o[u+8>>2]=A;o[u+12>>2]=t;o[u+24>>2]=0}}while(0);A=c+8|0;h=E;return A|0}else d=l}else d=l}else d=-1}while(0);n=o[9634]|0;if(n>>>0>=d>>>0){t=n-d|0;e=o[9637]|0;if(t>>>0>15){A=e+d|0;o[9637]=A;o[9634]=t;o[A+4>>2]=t|1;o[e+n>>2]=t;o[e+4>>2]=d|3}else{o[9634]=0;o[9637]=0;o[e+4>>2]=n|3;A=e+n+4|0;o[A>>2]=o[A>>2]|1}A=e+8|0;h=E;return A|0}a=o[9635]|0;if(a>>>0>d>>>0){_=a-d|0;o[9635]=_;A=o[9638]|0;w=A+d|0;o[9638]=w;o[w+4>>2]=_|1;o[A+4>>2]=d|3;A=A+8|0;h=E;return A|0}if(!(o[9750]|0)){o[9752]=4096;o[9751]=4096;o[9753]=-1;o[9754]=-1;o[9755]=0;o[9743]=0;o[9750]=p&-16^1431655768;e=4096}else e=o[9752]|0;c=d+48|0;f=d+47|0;s=e+f|0;i=0-e|0;l=s&i;if(l>>>0<=d>>>0){A=0;h=E;return A|0}e=o[9742]|0;if(e|0?(u=o[9740]|0,p=u+l|0,p>>>0<=u>>>0|p>>>0>e>>>0):0){A=0;h=E;return A|0}e:do{if(!(o[9743]&4)){n=o[9638]|0;t:do{if(n){r=38976;while(1){p=o[r>>2]|0;if(p>>>0<=n>>>0?(p+(o[r+4>>2]|0)|0)>>>0>n>>>0:0)break;e=o[r+8>>2]|0;if(!e){y=128;break t}else r=e}t=s-a&i;if(t>>>0<2147483647){e=Bs(t|0)|0;if((e|0)==((o[r>>2]|0)+(o[r+4>>2]|0)|0)){if((e|0)!=(-1|0)){a=t;s=e;y=145;break e}}else{r=e;y=136}}else t=0}else y=128}while(0);do{if((y|0)==128){n=Bs(0)|0;if((n|0)!=(-1|0)?(t=n,m=o[9751]|0,g=m+-1|0,t=((g&t|0)==0?0:(g+t&0-m)-t|0)+l|0,m=o[9740]|0,g=t+m|0,t>>>0>d>>>0&t>>>0<2147483647):0){p=o[9742]|0;if(p|0?g>>>0<=m>>>0|g>>>0>p>>>0:0){t=0;break}e=Bs(t|0)|0;if((e|0)==(n|0)){a=t;s=n;y=145;break e}else{r=e;y=136}}else t=0}}while(0);do{if((y|0)==136){n=0-t|0;if(!(c>>>0>t>>>0&(t>>>0<2147483647&(r|0)!=(-1|0))))if((r|0)==(-1|0)){t=0;break}else{a=t;s=r;y=145;break e}e=o[9752]|0;e=f-t+e&0-e;if(e>>>0>=2147483647){a=t;s=r;y=145;break e}if((Bs(e|0)|0)==(-1|0)){Bs(n|0)|0;t=0;break}else{a=e+t|0;s=r;y=145;break e}}}while(0);o[9743]=o[9743]|4;y=143}else{t=0;y=143}}while(0);if(((y|0)==143?l>>>0<2147483647:0)?(_=Bs(l|0)|0,g=Bs(0)|0,b=g-_|0,v=b>>>0>(d+40|0)>>>0,!((_|0)==(-1|0)|v^1|_>>>0>>0&((_|0)!=(-1|0)&(g|0)!=(-1|0))^1)):0){a=v?b:t;s=_;y=145}if((y|0)==145){t=(o[9740]|0)+a|0;o[9740]=t;if(t>>>0>(o[9741]|0)>>>0)o[9741]=t;f=o[9638]|0;e:do{if(f){t=38976;while(1){e=o[t>>2]|0;n=o[t+4>>2]|0;if((s|0)==(e+n|0)){y=154;break}r=o[t+8>>2]|0;if(!r)break;else t=r}if(((y|0)==154?(w=t+4|0,(o[t+12>>2]&8|0)==0):0)?s>>>0>f>>>0&e>>>0<=f>>>0:0){o[w>>2]=n+a;A=(o[9635]|0)+a|0;_=f+8|0;_=(_&7|0)==0?0:0-_&7;w=f+_|0;_=A-_|0;o[9638]=w;o[9635]=_;o[w+4>>2]=_|1;o[f+A+4>>2]=40;o[9639]=o[9754];break}if(s>>>0<(o[9636]|0)>>>0)o[9636]=s;n=s+a|0;t=38976;while(1){if((o[t>>2]|0)==(n|0)){y=162;break}e=o[t+8>>2]|0;if(!e)break;else t=e}if((y|0)==162?(o[t+12>>2]&8|0)==0:0){o[t>>2]=s;u=t+4|0;o[u>>2]=(o[u>>2]|0)+a;u=s+8|0;u=s+((u&7|0)==0?0:0-u&7)|0;t=n+8|0;t=n+((t&7|0)==0?0:0-t&7)|0;l=u+d|0;c=t-u-d|0;o[u+4>>2]=d|3;t:do{if((f|0)==(t|0)){A=(o[9635]|0)+c|0;o[9635]=A;o[9638]=l;o[l+4>>2]=A|1}else{if((o[9637]|0)==(t|0)){A=(o[9634]|0)+c|0;o[9634]=A;o[9637]=l;o[l+4>>2]=A|1;o[l+A>>2]=A;break}e=o[t+4>>2]|0;if((e&3|0)==1){a=e&-8;r=e>>>3;n:do{if(e>>>0<256){e=o[t+8>>2]|0;n=o[t+12>>2]|0;if((n|0)==(e|0)){o[9632]=o[9632]&~(1<>2]=n;o[n+8>>2]=e;break}}else{s=o[t+24>>2]|0;e=o[t+12>>2]|0;do{if((e|0)==(t|0)){n=t+16|0;r=n+4|0;e=o[r>>2]|0;if(!e){e=o[n>>2]|0;if(!e){e=0;break}}else n=r;while(1){i=e+20|0;r=o[i>>2]|0;if(!r){i=e+16|0;r=o[i>>2]|0;if(!r)break;else{e=r;n=i}}else{e=r;n=i}}o[n>>2]=0}else{A=o[t+8>>2]|0;o[A+12>>2]=e;o[e+8>>2]=A}}while(0);if(!s)break;n=o[t+28>>2]|0;r=38832+(n<<2)|0;do{if((o[r>>2]|0)!=(t|0)){A=s+16|0;o[((o[A>>2]|0)==(t|0)?A:s+20|0)>>2]=e;if(!e)break n}else{o[r>>2]=e;if(e|0)break;o[9633]=o[9633]&~(1<>2]=s;n=t+16|0;r=o[n>>2]|0;if(r|0){o[e+16>>2]=r;o[r+24>>2]=e}n=o[n+4>>2]|0;if(!n)break;o[e+20>>2]=n;o[n+24>>2]=e}}while(0);t=t+a|0;i=a+c|0}else i=c;t=t+4|0;o[t>>2]=o[t>>2]&-2;o[l+4>>2]=i|1;o[l+i>>2]=i;t=i>>>3;if(i>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=l;o[t+12>>2]=l;o[l+8>>2]=t;o[l+12>>2]=n;break}t=i>>>8;do{if(!t)r=0;else{if(i>>>0>16777215){r=31;break}w=(t+1048320|0)>>>16&8;A=t<>>16&4;A=A<<_;r=(A+245760|0)>>>16&2;r=14-(_|w|r)+(A<>>15)|0;r=i>>>(r+7|0)&1|r<<1}}while(0);t=38832+(r<<2)|0;o[l+28>>2]=r;e=l+16|0;o[e+4>>2]=0;o[e>>2]=0;e=o[9633]|0;n=1<>2]=l;o[l+24>>2]=t;o[l+12>>2]=l;o[l+8>>2]=l;break}t=o[t>>2]|0;n:do{if((o[t+4>>2]&-8|0)!=(i|0)){r=i<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(i|0)){t=e;break n}else{r=r<<1;t=e}}o[n>>2]=l;o[l+24>>2]=t;o[l+12>>2]=l;o[l+8>>2]=l;break t}}while(0);w=t+8|0;A=o[w>>2]|0;o[A+12>>2]=l;o[w>>2]=l;o[l+8>>2]=A;o[l+12>>2]=t;o[l+24>>2]=0}}while(0);A=u+8|0;h=E;return A|0}t=38976;while(1){e=o[t>>2]|0;if(e>>>0<=f>>>0?(A=e+(o[t+4>>2]|0)|0,A>>>0>f>>>0):0)break;t=o[t+8>>2]|0}i=A+-47|0;e=i+8|0;e=i+((e&7|0)==0?0:0-e&7)|0;i=f+16|0;e=e>>>0>>0?f:e;t=e+8|0;n=a+-40|0;_=s+8|0;_=(_&7|0)==0?0:0-_&7;w=s+_|0;_=n-_|0;o[9638]=w;o[9635]=_;o[w+4>>2]=_|1;o[s+n+4>>2]=40;o[9639]=o[9754];n=e+4|0;o[n>>2]=27;o[t>>2]=o[9744];o[t+4>>2]=o[9745];o[t+8>>2]=o[9746];o[t+12>>2]=o[9747];o[9744]=s;o[9745]=a;o[9747]=0;o[9746]=t;t=e+24|0;do{w=t;t=t+4|0;o[t>>2]=7}while((w+8|0)>>>0>>0);if((e|0)!=(f|0)){s=e-f|0;o[n>>2]=o[n>>2]&-2;o[f+4>>2]=s|1;o[e>>2]=s;t=s>>>3;if(s>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=f;o[t+12>>2]=f;o[f+8>>2]=t;o[f+12>>2]=n;break}t=s>>>8;if(t)if(s>>>0>16777215)r=31;else{w=(t+1048320|0)>>>16&8;A=t<>>16&4;A=A<<_;r=(A+245760|0)>>>16&2;r=14-(_|w|r)+(A<>>15)|0;r=s>>>(r+7|0)&1|r<<1}else r=0;n=38832+(r<<2)|0;o[f+28>>2]=r;o[f+20>>2]=0;o[i>>2]=0;t=o[9633]|0;e=1<>2]=f;o[f+24>>2]=n;o[f+12>>2]=f;o[f+8>>2]=f;break}t=o[n>>2]|0;t:do{if((o[t+4>>2]&-8|0)!=(s|0)){r=s<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(s|0)){t=e;break t}else{r=r<<1;t=e}}o[n>>2]=f;o[f+24>>2]=t;o[f+12>>2]=f;o[f+8>>2]=f;break e}}while(0);w=t+8|0;A=o[w>>2]|0;o[A+12>>2]=f;o[w>>2]=f;o[f+8>>2]=A;o[f+12>>2]=t;o[f+24>>2]=0}}else{A=o[9636]|0;if((A|0)==0|s>>>0>>0)o[9636]=s;o[9744]=s;o[9745]=a;o[9747]=0;o[9641]=o[9750];o[9640]=-1;o[9645]=38568;o[9644]=38568;o[9647]=38576;o[9646]=38576;o[9649]=38584;o[9648]=38584;o[9651]=38592;o[9650]=38592;o[9653]=38600;o[9652]=38600;o[9655]=38608;o[9654]=38608;o[9657]=38616;o[9656]=38616;o[9659]=38624;o[9658]=38624;o[9661]=38632;o[9660]=38632;o[9663]=38640;o[9662]=38640;o[9665]=38648;o[9664]=38648;o[9667]=38656;o[9666]=38656;o[9669]=38664;o[9668]=38664;o[9671]=38672;o[9670]=38672;o[9673]=38680;o[9672]=38680;o[9675]=38688;o[9674]=38688;o[9677]=38696;o[9676]=38696;o[9679]=38704;o[9678]=38704;o[9681]=38712;o[9680]=38712;o[9683]=38720;o[9682]=38720;o[9685]=38728;o[9684]=38728;o[9687]=38736;o[9686]=38736;o[9689]=38744;o[9688]=38744;o[9691]=38752;o[9690]=38752;o[9693]=38760;o[9692]=38760;o[9695]=38768;o[9694]=38768;o[9697]=38776;o[9696]=38776;o[9699]=38784;o[9698]=38784;o[9701]=38792;o[9700]=38792;o[9703]=38800;o[9702]=38800;o[9705]=38808;o[9704]=38808;o[9707]=38816;o[9706]=38816;A=a+-40|0;_=s+8|0;_=(_&7|0)==0?0:0-_&7;w=s+_|0;_=A-_|0;o[9638]=w;o[9635]=_;o[w+4>>2]=_|1;o[s+A+4>>2]=40;o[9639]=o[9754]}}while(0);t=o[9635]|0;if(t>>>0>d>>>0){_=t-d|0;o[9635]=_;A=o[9638]|0;w=A+d|0;o[9638]=w;o[w+4>>2]=_|1;o[A+4>>2]=d|3;A=A+8|0;h=E;return A|0}}o[(Lo()|0)>>2]=12;A=0;h=E;return A|0}function Uo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,c=0,f=0;if(!e)return;n=e+-8|0;i=o[9636]|0;e=o[e+-4>>2]|0;t=e&-8;f=n+t|0;do{if(!(e&1)){r=o[n>>2]|0;if(!(e&3))return;a=n+(0-r)|0;s=r+t|0;if(a>>>0>>0)return;if((o[9637]|0)==(a|0)){e=f+4|0;t=o[e>>2]|0;if((t&3|0)!=3){c=a;t=s;break}o[9634]=s;o[e>>2]=t&-2;o[a+4>>2]=s|1;o[a+s>>2]=s;return}n=r>>>3;if(r>>>0<256){e=o[a+8>>2]|0;t=o[a+12>>2]|0;if((t|0)==(e|0)){o[9632]=o[9632]&~(1<>2]=t;o[t+8>>2]=e;c=a;t=s;break}}i=o[a+24>>2]|0;e=o[a+12>>2]|0;do{if((e|0)==(a|0)){t=a+16|0;n=t+4|0;e=o[n>>2]|0;if(!e){e=o[t>>2]|0;if(!e){e=0;break}}else t=n;while(1){r=e+20|0;n=o[r>>2]|0;if(!n){r=e+16|0;n=o[r>>2]|0;if(!n)break;else{e=n;t=r}}else{e=n;t=r}}o[t>>2]=0}else{c=o[a+8>>2]|0;o[c+12>>2]=e;o[e+8>>2]=c}}while(0);if(i){t=o[a+28>>2]|0;n=38832+(t<<2)|0;if((o[n>>2]|0)==(a|0)){o[n>>2]=e;if(!e){o[9633]=o[9633]&~(1<>2]|0)==(a|0)?c:i+20|0)>>2]=e;if(!e){c=a;t=s;break}}o[e+24>>2]=i;t=a+16|0;n=o[t>>2]|0;if(n|0){o[e+16>>2]=n;o[n+24>>2]=e}t=o[t+4>>2]|0;if(t){o[e+20>>2]=t;o[t+24>>2]=e;c=a;t=s}else{c=a;t=s}}else{c=a;t=s}}else{c=n;a=n}}while(0);if(a>>>0>=f>>>0)return;e=f+4|0;r=o[e>>2]|0;if(!(r&1))return;if(!(r&2)){if((o[9638]|0)==(f|0)){f=(o[9635]|0)+t|0;o[9635]=f;o[9638]=c;o[c+4>>2]=f|1;if((c|0)!=(o[9637]|0))return;o[9637]=0;o[9634]=0;return}if((o[9637]|0)==(f|0)){f=(o[9634]|0)+t|0;o[9634]=f;o[9637]=a;o[c+4>>2]=f|1;o[a+f>>2]=f;return}i=(r&-8)+t|0;n=r>>>3;do{if(r>>>0<256){t=o[f+8>>2]|0;e=o[f+12>>2]|0;if((e|0)==(t|0)){o[9632]=o[9632]&~(1<>2]=e;o[e+8>>2]=t;break}}else{s=o[f+24>>2]|0;e=o[f+12>>2]|0;do{if((e|0)==(f|0)){t=f+16|0;n=t+4|0;e=o[n>>2]|0;if(!e){e=o[t>>2]|0;if(!e){n=0;break}}else t=n;while(1){r=e+20|0;n=o[r>>2]|0;if(!n){r=e+16|0;n=o[r>>2]|0;if(!n)break;else{e=n;t=r}}else{e=n;t=r}}o[t>>2]=0;n=e}else{n=o[f+8>>2]|0;o[n+12>>2]=e;o[e+8>>2]=n;n=e}}while(0);if(s|0){e=o[f+28>>2]|0;t=38832+(e<<2)|0;if((o[t>>2]|0)==(f|0)){o[t>>2]=n;if(!n){o[9633]=o[9633]&~(1<>2]|0)==(f|0)?r:s+20|0)>>2]=n;if(!n)break}o[n+24>>2]=s;e=f+16|0;t=o[e>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}e=o[e+4>>2]|0;if(e|0){o[n+20>>2]=e;o[e+24>>2]=n}}}}while(0);o[c+4>>2]=i|1;o[a+i>>2]=i;if((c|0)==(o[9637]|0)){o[9634]=i;return}}else{o[e>>2]=r&-2;o[c+4>>2]=t|1;o[a+t>>2]=t;i=t}e=i>>>3;if(i>>>0<256){n=38568+(e<<1<<2)|0;t=o[9632]|0;e=1<>2]|0}o[t>>2]=c;o[e+12>>2]=c;o[c+8>>2]=e;o[c+12>>2]=n;return}e=i>>>8;if(e)if(i>>>0>16777215)r=31;else{a=(e+1048320|0)>>>16&8;f=e<>>16&4;f=f<>>16&2;r=14-(s|a|r)+(f<>>15)|0;r=i>>>(r+7|0)&1|r<<1}else r=0;e=38832+(r<<2)|0;o[c+28>>2]=r;o[c+20>>2]=0;o[c+16>>2]=0;t=o[9633]|0;n=1<>2]=c;o[c+24>>2]=e;o[c+12>>2]=c;o[c+8>>2]=c}else{e=o[e>>2]|0;t:do{if((o[e+4>>2]&-8|0)!=(i|0)){r=i<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=e+16+(r>>>31<<2)|0;t=o[n>>2]|0;if(!t)break;if((o[t+4>>2]&-8|0)==(i|0)){e=t;break t}else{r=r<<1;e=t}}o[n>>2]=c;o[c+24>>2]=e;o[c+12>>2]=c;o[c+8>>2]=c;break e}}while(0);a=e+8|0;f=o[a>>2]|0;o[f+12>>2]=c;o[a>>2]=c;o[c+8>>2]=f;o[c+12>>2]=e;o[c+24>>2]=0}}while(0);f=(o[9640]|0)+-1|0;o[9640]=f;if(f|0)return;e=38984;while(1){e=o[e>>2]|0;if(!e)break;else e=e+8|0}o[9640]=-1;return}function Lo(){return 39088}function Fo(e,t){e=e|0;t=t|0;var n=0,i=0;n=r[e>>0]|0;i=r[t>>0]|0;if(n<<24>>24==0?1:n<<24>>24!=i<<24>>24)e=i;else{do{e=e+1|0;t=t+1|0;n=r[e>>0]|0;i=r[t>>0]|0}while(!(n<<24>>24==0?1:n<<24>>24!=i<<24>>24));e=i}return(n&255)-(e&255)|0}function qo(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;e:do{if(!n)e=0;else{while(1){i=r[e>>0]|0;o=r[t>>0]|0;if(i<<24>>24!=o<<24>>24)break;n=n+-1|0;if(!n){e=0;break e}else{e=e+1|0;t=t+1|0}}e=(i&255)-(o&255)|0}}while(0);return e|0}function zo(e){e=e|0;return(e+-48|0)>>>0<10|0}function Ko(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0;d=h;h=h+128|0;s=d+124|0;u=d;a=u;c=37604;f=a+124|0;do{o[a>>2]=o[c>>2];a=a+4|0;c=c+4|0}while((a|0)<(f|0));if((t+-1|0)>>>0>2147483646)if(!t){e=s;t=1;l=4}else{o[(Lo()|0)>>2]=75;t=-1}else l=4;if((l|0)==4){l=-2-e|0;l=t>>>0>l>>>0?l:t;o[u+48>>2]=l;s=u+20|0;o[s>>2]=e;o[u+44>>2]=e;t=e+l|0;e=u+16|0;o[e>>2]=t;o[u+28>>2]=t;t=Go(u,n,i)|0;if(l){u=o[s>>2]|0;r[u+(((u|0)==(o[e>>2]|0))<<31>>31)>>0]=0}}h=d;return t|0}function Go(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0;b=h;h=h+224|0;d=b+208|0;m=b+160|0;g=b+80|0;y=b;i=m;s=i+40|0;do{o[i>>2]=0;i=i+4|0}while((i|0)<(s|0));o[d>>2]=o[n>>2];if((Ho(0,t,d,g,m)|0)<0)n=-1;else{if((o[e+76>>2]|0)>-1)p=Vo(e)|0;else p=0;n=o[e>>2]|0;u=n&32;if((r[e+74>>0]|0)<1)o[e>>2]=n&-33;i=e+48|0;if(!(o[i>>2]|0)){s=e+44|0;a=o[s>>2]|0;o[s>>2]=y;c=e+28|0;o[c>>2]=y;f=e+20|0;o[f>>2]=y;o[i>>2]=80;l=e+16|0;o[l>>2]=y+80;n=Ho(e,t,d,g,m)|0;if(a){Vs[o[e+36>>2]&1](e,0,0)|0;n=(o[f>>2]|0)==0?-1:n;o[s>>2]=a;o[i>>2]=0;o[l>>2]=0;o[c>>2]=0;o[f>>2]=0}}else n=Ho(e,t,d,g,m)|0;i=o[e>>2]|0;o[e>>2]=i|u;if(p|0)Qo(e);n=(i&32|0)==0?n:-1}h=b;return n|0}function Ho(e,t,n,s,a){e=e|0;t=t|0;n=n|0;s=s|0;a=a|0;var c=0,f=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0;D=h;h=h+64|0;R=D+56|0;C=D+40|0;S=D;P=D+48|0;M=D+60|0;o[R>>2]=t;A=(e|0)!=0;E=S+40|0;k=E;S=S+39|0;I=P+4|0;c=0;t=0;u=0;e:while(1){do{do{if((t|0)>-1)if((c|0)>(2147483647-t|0)){o[(Lo()|0)>>2]=75;t=-1;break}else{t=c+t|0;break}}while(0);b=o[R>>2]|0;c=r[b>>0]|0;if(!(c<<24>>24)){w=94;break e}f=b;t:while(1){switch(c<<24>>24){case 37:{w=10;break t}case 0:{c=f;break t}default:{}}_=f+1|0;o[R>>2]=_;c=r[_>>0]|0;f=_}t:do{if((w|0)==10){w=0;c=f;do{if((r[f+1>>0]|0)!=37)break t;c=c+1|0;f=f+2|0;o[R>>2]=f}while((r[f>>0]|0)==37)}}while(0);c=c-b|0;if(A)Wo(e,b,c)}while((c|0)!=0);_=(zo(r[(o[R>>2]|0)+1>>0]|0)|0)==0;f=o[R>>2]|0;if(!_?(r[f+2>>0]|0)==36:0){g=(r[f+1>>0]|0)+-48|0;p=1;c=3}else{g=-1;p=u;c=1}c=f+c|0;o[R>>2]=c;f=r[c>>0]|0;u=(f<<24>>24)+-32|0;if(u>>>0>31|(1<>2]=c;f=r[c>>0]|0;u=(f<<24>>24)+-32|0}while(!(u>>>0>31|(1<>24==42){if((zo(r[c+1>>0]|0)|0)!=0?(O=o[R>>2]|0,(r[O+2>>0]|0)==36):0){c=O+1|0;o[a+((r[c>>0]|0)+-48<<2)>>2]=10;c=o[s+((r[c>>0]|0)+-48<<3)>>2]|0;u=1;f=O+3|0}else{if(p|0){t=-1;break}if(A){_=(o[n>>2]|0)+(4-1)&~(4-1);c=o[_>>2]|0;o[n>>2]=_+4}else c=0;u=0;f=(o[R>>2]|0)+1|0}o[R>>2]=f;_=(c|0)<0;v=_?0-c|0:c;d=_?d|8192:d;_=u}else{c=Yo(R)|0;if((c|0)<0){t=-1;break}v=c;_=p;f=o[R>>2]|0}do{if((r[f>>0]|0)==46){c=f+1|0;if((r[c>>0]|0)!=42){o[R>>2]=c;c=Yo(R)|0;f=o[R>>2]|0;break}if(zo(r[f+2>>0]|0)|0?(x=o[R>>2]|0,(r[x+3>>0]|0)==36):0){c=x+2|0;o[a+((r[c>>0]|0)+-48<<2)>>2]=10;c=o[s+((r[c>>0]|0)+-48<<3)>>2]|0;f=x+4|0;o[R>>2]=f;break}if(_|0){t=-1;break e}if(A){y=(o[n>>2]|0)+(4-1)&~(4-1);c=o[y>>2]|0;o[n>>2]=y+4}else c=0;f=(o[R>>2]|0)+2|0;o[R>>2]=f}else c=-1}while(0);y=0;while(1){if(((r[f>>0]|0)+-65|0)>>>0>57){t=-1;break e}u=f;f=f+1|0;o[R>>2]=f;u=r[(r[u>>0]|0)+-65+(35136+(y*58|0))>>0]|0;p=u&255;if((p+-1|0)>>>0>=8)break;else y=p}if(!(u<<24>>24)){t=-1;break}m=(g|0)>-1;do{if(u<<24>>24==19)if(m){t=-1;break e}else w=54;else{if(m){o[a+(g<<2)>>2]=p;m=s+(g<<3)|0;g=o[m+4>>2]|0;w=C;o[w>>2]=o[m>>2];o[w+4>>2]=g;w=54;break}if(!A){t=0;break e}Xo(C,p,n);f=o[R>>2]|0;w=55}}while(0);if((w|0)==54){w=0;if(A)w=55;else c=0}t:do{if((w|0)==55){w=0;f=r[f+-1>>0]|0;f=(y|0)!=0&(f&15|0)==3?f&-33:f;u=d&-65537;g=(d&8192|0)==0?d:u;n:do{switch(f|0){case 110:switch((y&255)<<24>>24){case 0:{o[o[C>>2]>>2]=t;c=0;break t}case 1:{o[o[C>>2]>>2]=t;c=0;break t}case 2:{c=o[C>>2]|0;o[c>>2]=t;o[c+4>>2]=((t|0)<0)<<31>>31;c=0;break t}case 3:{i[o[C>>2]>>1]=t;c=0;break t}case 4:{r[o[C>>2]>>0]=t;c=0;break t}case 6:{o[o[C>>2]>>2]=t;c=0;break t}case 7:{c=o[C>>2]|0;o[c>>2]=t;o[c+4>>2]=((t|0)<0)<<31>>31;c=0;break t}default:{c=0;break t}}case 112:{f=120;c=c>>>0>8?c:8;u=g|8;w=67;break}case 88:case 120:{u=g;w=67;break}case 111:{u=C;f=o[u>>2]|0;u=o[u+4>>2]|0;m=Zo(f,u,E)|0;w=k-m|0;d=0;p=38441;c=(g&8|0)==0|(c|0)>(w|0)?c:w+1|0;w=73;break}case 105:case 100:{u=C;f=o[u>>2]|0;u=o[u+4>>2]|0;if((u|0)<0){f=Ss(0,0,f|0,u|0)|0;u=T;d=C;o[d>>2]=f;o[d+4>>2]=u;d=1;p=38441;w=72;break n}else{d=(g&2049|0)!=0&1;p=(g&2048|0)==0?(g&1|0)==0?38441:38443:38442;w=72;break n}}case 117:{u=C;d=0;p=38441;f=o[u>>2]|0;u=o[u+4>>2]|0;w=72;break}case 99:{r[S>>0]=o[C>>2];y=S;d=0;p=38441;m=1;c=k;break}case 109:{f=es(o[(Lo()|0)>>2]|0)|0;w=77;break}case 115:{f=o[C>>2]|0;f=(f|0)==0?38451:f;w=77;break}case 67:{o[P>>2]=o[C>>2];o[I>>2]=0;o[C>>2]=P;p=-1;w=81;break}case 83:{if(!c){ns(e,32,v,0,g);c=0;w=91}else{p=c;w=81}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{c=is(e,+l[C>>3],v,c,g,f)|0;break t}default:{y=b;d=0;p=38441;m=c;u=g;c=k}}}while(0);n:do{if((w|0)==67){b=C;y=o[b>>2]|0;b=o[b+4>>2]|0;m=Jo(y,b,E,f&32)|0;p=(u&8|0)==0|(y|0)==0&(b|0)==0;d=p?0:2;p=p?38441:38441+(f>>>4)|0;g=u;f=y;u=b;w=73}else if((w|0)==72){m=$o(f,u,E)|0;w=73}else if((w|0)==77){w=0;b=ts(f,0,c)|0;g=(b|0)==0;y=f;d=0;p=38441;m=g?c:b-f|0;c=g?f+c|0:b}else if((w|0)==81){w=0;d=o[C>>2]|0;c=0;while(1){f=o[d>>2]|0;if(!f)break;f=rs(M,f)|0;u=(f|0)<0;if(u|f>>>0>(p-c|0)>>>0){w=85;break}c=f+c|0;if(p>>>0>c>>>0)d=d+4|0;else break}if((w|0)==85){w=0;if(u){t=-1;break e}}ns(e,32,v,c,g);if(!c){c=0;w=91}else{u=o[C>>2]|0;d=0;while(1){f=o[u>>2]|0;if(!f){w=91;break n}f=rs(M,f)|0;d=f+d|0;if((d|0)>(c|0)){w=91;break n}Wo(e,M,f);if(d>>>0>=c>>>0){w=91;break}else u=u+4|0}}}}while(0);if((w|0)==73){w=0;u=(f|0)!=0|(u|0)!=0;b=(c|0)!=0|u;u=k-m+((u^1)&1)|0;y=b?m:E;m=b?(c|0)>(u|0)?c:u:0;u=(c|0)>-1?g&-65537:g;c=k}else if((w|0)==91){w=0;ns(e,32,v,c,g^8192);c=(v|0)>(c|0)?v:c;break}g=c-y|0;m=(m|0)<(g|0)?g:m;b=m+d|0;c=(v|0)<(b|0)?b:v;ns(e,32,c,b,u);Wo(e,p,d);ns(e,48,c,b,u^65536);ns(e,48,m,g,0);Wo(e,y,g);ns(e,32,c,b,u^8192)}}while(0);u=_}e:do{if((w|0)==94)if(!e)if(!u)t=0;else{t=1;while(1){c=o[a+(t<<2)>>2]|0;if(!c)break;Xo(s+(t<<3)|0,c,n);t=t+1|0;if(t>>>0>=10){t=1;break e}}while(1){if(o[a+(t<<2)>>2]|0){t=-1;break e}t=t+1|0;if(t>>>0>=10){t=1;break}}}}while(0);h=D;return t|0}function Vo(e){e=e|0;return 0}function Qo(e){e=e|0;return}function Wo(e,t,n){e=e|0;t=t|0;n=n|0;if(!(o[e>>2]&32))ys(t,n,e)|0;return}function Yo(e){e=e|0;var t=0,n=0;if(!(zo(r[o[e>>2]>>0]|0)|0))t=0;else{t=0;do{n=o[e>>2]|0;t=(t*10|0)+-48+(r[n>>0]|0)|0;n=n+1|0;o[e>>2]=n}while((zo(r[n>>0]|0)|0)!=0)}return t|0}function Xo(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0.0;e:do{if(t>>>0<=20)do{switch(t|0){case 9:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;o[e>>2]=t;break e}case 10:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=((t|0)<0)<<31>>31;break e}case 11:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=0;break e}case 12:{r=(o[n>>2]|0)+(8-1)&~(8-1);t=r;i=o[t>>2]|0;t=o[t+4>>2]|0;o[n>>2]=r+8;r=e;o[r>>2]=i;o[r+4>>2]=t;break e}case 13:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&65535)<<16>>16;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 14:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&65535;o[i+4>>2]=0;break e}case 15:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&255)<<24>>24;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 16:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&255;o[i+4>>2]=0;break e}case 17:{i=(o[n>>2]|0)+(8-1)&~(8-1);s=+l[i>>3];o[n>>2]=i+8;l[e>>3]=s;break e}case 18:{i=(o[n>>2]|0)+(8-1)&~(8-1);s=+l[i>>3];o[n>>2]=i+8;l[e>>3]=s;break e}default:break e}}while(0)}while(0);return}function Jo(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=s[35600+(e&15)>>0]|0|i;e=Cs(e|0,t|0,4)|0;t=T}while(!((e|0)==0&(t|0)==0));return n|0}function Zo(e,t,n){e=e|0;t=t|0;n=n|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=e&7|48;e=Cs(e|0,t|0,3)|0;t=T}while(!((e|0)==0&(t|0)==0));return n|0}function $o(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0;if(t>>>0>0|(t|0)==0&e>>>0>4294967295){do{i=e;e=xs(e|0,t|0,10,0)|0;o=t;t=T;s=Es(e|0,t|0,10,0)|0;s=Ss(i|0,o|0,s|0,T|0)|0;n=n+-1|0;r[n>>0]=s&255|48}while(o>>>0>9|(o|0)==9&i>>>0>4294967295);t=e}else t=e;if(t)do{s=t;t=(t>>>0)/10|0;n=n+-1|0;r[n>>0]=s-(t*10|0)|48}while(s>>>0>=10);return n|0}function es(e){e=e|0;return ds(e,o[(us()|0)+188>>2]|0)|0}function ts(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0;a=t&255;i=(n|0)!=0;e:do{if(i&(e&3|0)!=0){s=t&255;while(1){if((r[e>>0]|0)==s<<24>>24){c=6;break e}e=e+1|0;n=n+-1|0;i=(n|0)!=0;if(!(i&(e&3|0)!=0)){c=5;break}}}else c=5}while(0);if((c|0)==5)if(i)c=6;else c=16;e:do{if((c|0)==6){s=t&255;if((r[e>>0]|0)==s<<24>>24)if(!n){c=16;break}else break;i=q(a,16843009)|0;t:do{if(n>>>0>3)while(1){a=o[e>>2]^i;if((a&-2139062144^-2139062144)&a+-16843009|0)break t;e=e+4|0;n=n+-4|0;if(n>>>0<=3){c=11;break}}else c=11}while(0);if((c|0)==11)if(!n){c=16;break}while(1){if((r[e>>0]|0)==s<<24>>24)break e;n=n+-1|0;if(!n){c=16;break}else e=e+1|0}}}while(0);if((c|0)==16)e=0;return e|0}function ns(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var o=0,s=0;s=h;h=h+256|0;o=s;if((n|0)>(r|0)&(i&73728|0)==0){i=n-r|0;Ds(o|0,t<<24>>24|0,(i>>>0<256?i:256)|0)|0;if(i>>>0>255){t=n-r|0;do{Wo(e,o,256);i=i+-256|0}while(i>>>0>255);i=t&255}Wo(e,o,i)}h=s;return}function rs(e,t){e=e|0;t=t|0;if(!e)e=0;else e=cs(e,t,0)|0;return e|0}function is(e,t,n,i,a,c){e=e|0;t=+t;n=n|0;i=i|0;a=a|0;c=c|0;var f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0.0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0;M=h;h=h+560|0;u=M+32|0;w=M+536|0;P=M;O=P;d=M+540|0;o[w>>2]=0;C=d+12|0;os(t)|0;f=T;if((f|0)<0){t=-t;os(t)|0;R=1;x=38458;f=T}else{R=(a&2049|0)!=0&1;x=(a&2048|0)==0?(a&1|0)==0?38459:38464:38461}do{if(0==0&(f&2146435072|0)==2146435072){P=(c&32|0)!=0;f=R+3|0;ns(e,32,n,f,a&-65537);Wo(e,x,R);Wo(e,t!=t|0.0!=0.0?P?38485:38489:P?38477:38481,3);ns(e,32,n,f,a^8192)}else{y=+ss(t,w)*2.0;f=y!=0.0;if(f)o[w>>2]=(o[w>>2]|0)+-1;_=c|32;if((_|0)==97){m=c&32;b=(m|0)==0?x:x+9|0;g=R|2;f=12-i|0;do{if(!(i>>>0>11|(f|0)==0)){t=8.0;do{f=f+-1|0;t=t*16.0}while((f|0)!=0);if((r[b>>0]|0)==45){t=-(t+(-y-t));break}else{t=y+t-t;break}}else t=y}while(0);l=o[w>>2]|0;f=(l|0)<0?0-l|0:l;f=$o(f,((f|0)<0)<<31>>31,C)|0;if((f|0)==(C|0)){f=d+11|0;r[f>>0]=48}r[f+-1>>0]=(l>>31&2)+43;p=f+-2|0;r[p>>0]=c+15;l=(i|0)<1;u=(a&8|0)==0;d=P;do{R=~~t;f=d+1|0;r[d>>0]=m|s[35600+R>>0];t=(t-+(R|0))*16.0;if((f-O|0)==1?!(u&(l&t==0.0)):0){r[f>>0]=46;d=d+2|0}else d=f}while(t!=0.0);if((i|0)!=0?(-2-O+d|0)<(i|0):0){l=C;u=p;f=i+2+l-u|0}else{l=C;u=p;f=l-O-u+d|0}C=f+g|0;ns(e,32,n,C,a);Wo(e,b,g);ns(e,48,n,C,a^65536);O=d-O|0;Wo(e,P,O);P=l-u|0;ns(e,48,f-(O+P)|0,0,0);Wo(e,p,P);ns(e,32,n,C,a^8192);f=C;break}l=(i|0)<0?6:i;if(f){f=(o[w>>2]|0)+-28|0;o[w>>2]=f;t=y*268435456.0}else{t=y;f=o[w>>2]|0}I=(f|0)<0?u:u+288|0;u=I;do{k=~~t>>>0;o[u>>2]=k;u=u+4|0;t=(t-+(k>>>0))*1.0e9}while(t!=0.0);k=I;if((f|0)>0){m=I;while(1){p=(f|0)<29?f:29;f=u+-4|0;if(f>>>0>=m>>>0){d=0;do{v=Os(o[f>>2]|0,0,p|0)|0;v=ks(v|0,T|0,d|0,0)|0;A=T;d=xs(v|0,A|0,1e9,0)|0;E=Es(d|0,T|0,1e9,0)|0;E=Ss(v|0,A|0,E|0,T|0)|0;o[f>>2]=E;f=f+-4|0}while(f>>>0>=m>>>0);if(d){E=m+-4|0;o[E>>2]=d;d=E}else d=m}else d=m;e:do{if(u>>>0>d>>>0){f=u;while(1){u=f+-4|0;if(o[u>>2]|0){u=f;break e}if(u>>>0>d>>>0)f=u;else break}}}while(0);f=(o[w>>2]|0)-p|0;o[w>>2]=f;if((f|0)>0)m=d;else break}}else d=I;if((f|0)<0){i=((l+25|0)/9|0)+1|0;v=(_|0)==102;do{b=0-f|0;b=(b|0)<9?b:9;if(d>>>0>>0){p=(1<>>b;g=0;f=d;do{E=o[f>>2]|0;o[f>>2]=(E>>>b)+g;g=q(E&p,m)|0;f=f+4|0}while(f>>>0>>0);d=(o[d>>2]|0)==0?d+4|0:d;if(g){o[u>>2]=g;u=u+4|0}}else d=(o[d>>2]|0)==0?d+4|0:d;f=v?I:d;u=(u-f>>2|0)>(i|0)?f+(i<<2)|0:u;f=(o[w>>2]|0)+b|0;o[w>>2]=f}while((f|0)<0);v=d}else v=d;if(v>>>0>>0){f=(k-v>>2)*9|0;p=o[v>>2]|0;if(p>>>0>=10){d=10;do{d=d*10|0;f=f+1|0}while(p>>>0>=d>>>0)}}else f=0;A=(_|0)==103;E=(l|0)!=0;d=l-((_|0)==102?0:f)+((E&A)<<31>>31)|0;if((d|0)<(((u-k>>2)*9|0)+-9|0)){w=d+9216|0;d=(w|0)/9|0;i=I+4+(d+-1024<<2)|0;d=w-(d*9|0)|0;if((d|0)<8){p=10;while(1){p=p*10|0;if((d|0)<7)d=d+1|0;else break}}else p=10;g=o[i>>2]|0;d=(g>>>0)/(p>>>0)|0;b=g-(q(d,p)|0)|0;m=(i+4|0)==(u|0);if(!(m&(b|0)==0)){y=(d&1|0)==0?9007199254740992.0:9007199254740994.0;w=p>>>1;t=b>>>0>>0?.5:m&(b|0)==(w|0)?1.0:1.5;if(R){w=(r[x>>0]|0)==45;t=w?-t:t;y=w?-y:y}d=g-b|0;o[i>>2]=d;if(y+t!=y){w=d+p|0;o[i>>2]=w;if(w>>>0>999999999){p=i;f=v;while(1){d=p+-4|0;o[p>>2]=0;if(d>>>0>>0){f=f+-4|0;o[f>>2]=0}w=(o[d>>2]|0)+1|0;o[d>>2]=w;if(w>>>0>999999999)p=d;else{p=f;break}}}else{d=i;p=v}f=(k-p>>2)*9|0;g=o[p>>2]|0;if(g>>>0>=10){m=10;do{m=m*10|0;f=f+1|0}while(g>>>0>=m>>>0)}}else{d=i;p=v}}else{d=i;p=v}w=d+4|0;u=u>>>0>w>>>0?w:u}else p=v;i=0-f|0;e:do{if(u>>>0>p>>>0)while(1){d=u+-4|0;if(o[d>>2]|0){w=u;_=1;break e}if(d>>>0>p>>>0)u=d;else{w=d;_=0;break}}else{w=u;_=0}}while(0);do{if(A){l=l+((E^1)&1)|0;if((l|0)>(f|0)&(f|0)>-5){m=c+-1|0;l=l+-1-f|0}else{m=c+-2|0;l=l+-1|0}if(!(a&8)){if(_?(S=o[w+-4>>2]|0,(S|0)!=0):0)if(!((S>>>0)%10|0)){d=0;u=10;do{u=u*10|0;d=d+1|0}while(!((S>>>0)%(u>>>0)|0|0))}else d=0;else d=9;u=((w-k>>2)*9|0)+-9|0;if((m|32|0)==102){c=u-d|0;c=(c|0)>0?c:0;l=(l|0)<(c|0)?l:c;break}else{c=u+f-d|0;c=(c|0)>0?c:0;l=(l|0)<(c|0)?l:c;break}}}else m=c}while(0);v=(l|0)!=0;g=v?1:a>>>3&1;b=(m|32|0)==102;if(b){A=0;f=(f|0)>0?f:0}else{u=(f|0)<0?i:f;u=$o(u,((u|0)<0)<<31>>31,C)|0;d=C;if((d-u|0)<2)do{u=u+-1|0;r[u>>0]=48}while((d-u|0)<2);r[u+-1>>0]=(f>>31&2)+43;f=u+-2|0;r[f>>0]=m;A=f;f=d-f|0}f=R+1+l+g+f|0;ns(e,32,n,f,a);Wo(e,x,R);ns(e,48,n,f,a^65536);if(b){g=p>>>0>I>>>0?I:p;b=P+9|0;p=b;m=P+8|0;d=g;do{u=$o(o[d>>2]|0,0,b)|0;if((d|0)==(g|0)){if((u|0)==(b|0)){r[m>>0]=48;u=m}}else if(u>>>0>P>>>0){Ds(P|0,48,u-O|0)|0;do{u=u+-1|0}while(u>>>0>P>>>0)}Wo(e,u,p-u|0);d=d+4|0}while(d>>>0<=I>>>0);if(!((a&8|0)==0&(v^1)))Wo(e,38493,1);if(d>>>0>>0&(l|0)>0)while(1){u=$o(o[d>>2]|0,0,b)|0;if(u>>>0>P>>>0){Ds(P|0,48,u-O|0)|0;do{u=u+-1|0}while(u>>>0>P>>>0)}Wo(e,u,(l|0)<9?l:9);d=d+4|0;u=l+-9|0;if(!(d>>>0>>0&(l|0)>9)){l=u;break}else l=u}ns(e,48,l+9|0,9,0)}else{w=_?w:p+4|0;if(p>>>0>>0&(l|0)>-1){i=P+9|0;v=(a&8|0)==0;_=i;g=0-O|0;b=P+8|0;m=p;do{u=$o(o[m>>2]|0,0,i)|0;if((u|0)==(i|0)){r[b>>0]=48;u=b}do{if((m|0)==(p|0)){d=u+1|0;Wo(e,u,1);if(v&(l|0)<1){u=d;break}Wo(e,38493,1);u=d}else{if(u>>>0<=P>>>0)break;Ds(P|0,48,u+g|0)|0;do{u=u+-1|0}while(u>>>0>P>>>0)}}while(0);O=_-u|0;Wo(e,u,(l|0)>(O|0)?O:l);l=l-O|0;m=m+4|0}while(m>>>0>>0&(l|0)>-1)}ns(e,48,l+18|0,18,0);Wo(e,A,C-A|0)}ns(e,32,n,f,a^8192)}}while(0);h=M;return((f|0)<(n|0)?n:f)|0}function os(e){e=+e;var t=0;l[d>>3]=e;t=o[d>>2]|0;T=o[d+4>>2]|0;return t|0}function ss(e,t){e=+e;t=t|0;return+ +as(e,t)}function as(e,t){e=+e;t=t|0;var n=0,r=0,i=0;l[d>>3]=e;n=o[d>>2]|0;r=o[d+4>>2]|0;i=Cs(n|0,r|0,52)|0;switch(i&2047){case 0:{if(e!=0.0){e=+as(e*18446744073709551616.0,t);n=(o[t>>2]|0)+-64|0}else n=0;o[t>>2]=n;break}case 2047:break;default:{o[t>>2]=(i&2047)+-1022;o[d>>2]=n;o[d+4>>2]=r&-2146435073|1071644672;e=+l[d>>3]}}return+e}function cs(e,t,n){e=e|0;t=t|0;n=n|0;do{if(e){if(t>>>0<128){r[e>>0]=t;e=1;break}if(!(o[o[(fs()|0)+188>>2]>>2]|0))if((t&-128|0)==57216){r[e>>0]=t;e=1;break}else{o[(Lo()|0)>>2]=84;e=-1;break}if(t>>>0<2048){r[e>>0]=t>>>6|192;r[e+1>>0]=t&63|128;e=2;break}if(t>>>0<55296|(t&-8192|0)==57344){r[e>>0]=t>>>12|224;r[e+1>>0]=t>>>6&63|128;r[e+2>>0]=t&63|128;e=3;break}if((t+-65536|0)>>>0<1048576){r[e>>0]=t>>>18|240;r[e+1>>0]=t>>>12&63|128;r[e+2>>0]=t>>>6&63|128;r[e+3>>0]=t&63|128;e=4;break}else{o[(Lo()|0)>>2]=84;e=-1;break}}else e=1}while(0);return e|0}function fs(){return ls()|0}function ls(){return 37728}function us(){return ls()|0}function ds(e,t){e=e|0;t=t|0;var n=0,i=0;n=0;while(1){if((s[35616+n>>0]|0)==(e|0)){i=4;break}n=n+1|0;if((n|0)==87){e=87;i=5;break}}if((i|0)==4)if(!n)n=35712;else{e=n;i=5}if((i|0)==5){n=35712;do{do{i=n;n=n+1|0}while((r[i>>0]|0)!=0);e=e+-1|0}while((e|0)!=0)}return hs(n,o[t+20>>2]|0)|0}function hs(e,t){e=e|0;t=t|0;return ps(e,t)|0}function ps(e,t){e=e|0;t=t|0;if(!t)t=0;else t=ms(o[t>>2]|0,o[t+4>>2]|0,e)|0;return((t|0)==0?e:t)|0}function ms(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0;p=(o[e>>2]|0)+1794895138|0;a=gs(o[e+8>>2]|0,p)|0;i=gs(o[e+12>>2]|0,p)|0;s=gs(o[e+16>>2]|0,p)|0;e:do{if((a>>>0>>2>>>0?(h=t-(a<<2)|0,i>>>0>>0&s>>>0>>0):0)?((s|i)&3|0)==0:0){h=i>>>2;d=s>>>2;u=0;while(1){f=a>>>1;l=u+f|0;c=l<<1;s=c+h|0;i=gs(o[e+(s<<2)>>2]|0,p)|0;s=gs(o[e+(s+1<<2)>>2]|0,p)|0;if(!(s>>>0>>0&i>>>0<(t-s|0)>>>0)){i=0;break e}if(r[e+(s+i)>>0]|0){i=0;break e}i=Fo(n,e+s|0)|0;if(!i)break;i=(i|0)<0;if((a|0)==1){i=0;break e}u=i?u:l;a=i?f:a-f|0}i=c+d|0;s=gs(o[e+(i<<2)>>2]|0,p)|0;i=gs(o[e+(i+1<<2)>>2]|0,p)|0;if(i>>>0>>0&s>>>0<(t-i|0)>>>0)i=(r[e+(i+s)>>0]|0)==0?e+i|0:0;else i=0}else i=0}while(0);return i|0}function gs(e,t){e=e|0;t=t|0;var n=0;n=Ps(e|0)|0;return((t|0)==0?e:n)|0}function ys(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0;i=n+16|0;s=o[i>>2]|0;if(!s)if(!(bs(n)|0)){s=o[i>>2]|0;a=5}else i=0;else a=5;e:do{if((a|0)==5){f=n+20|0;c=o[f>>2]|0;i=c;if((s-c|0)>>>0>>0){i=Vs[o[n+36>>2]&1](n,e,t)|0;break}t:do{if((r[n+75>>0]|0)<0|(t|0)==0){a=0;s=e}else{c=t;while(1){s=c+-1|0;if((r[e+s>>0]|0)==10)break;if(!s){a=0;s=e;break t}else c=s}i=Vs[o[n+36>>2]&1](n,e,c)|0;if(i>>>0>>0)break e;a=c;s=e+c|0;t=t-c|0;i=o[f>>2]|0}}while(0);Ms(i|0,s|0,t|0)|0;o[f>>2]=(o[f>>2]|0)+t;i=a+t|0}}while(0);return i|0}function bs(e){e=e|0;var t=0,n=0;t=e+74|0;n=r[t>>0]|0;r[t>>0]=n+255|n;t=o[e>>2]|0;if(!(t&8)){o[e+8>>2]=0;o[e+4>>2]=0;n=o[e+44>>2]|0;o[e+28>>2]=n;o[e+20>>2]=n;o[e+16>>2]=n+(o[e+48>>2]|0);e=0}else{o[e>>2]=t|32;e=-1}return e|0}function vs(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=e+20|0;i=o[r>>2]|0;e=(o[e+16>>2]|0)-i|0;e=e>>>0>n>>>0?n:e;Ms(i|0,t|0,e|0)|0;o[r>>2]=(o[r>>2]|0)+e;return n|0}function _s(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0;i=h;h=h+16|0;s=i;o[s>>2]=r;r=Ko(e,t,n,s)|0;h=i;return r|0}function ws(){}function As(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0;o=e&65535;i=t&65535;n=q(i,o)|0;r=e>>>16;e=(n>>>16)+(q(i,r)|0)|0;i=t>>>16;t=q(i,o)|0;return(T=(e>>>16)+(q(i,r)|0)+(((e&65535)+t|0)>>>16)|0,e+t<<16|n&65535|0)|0}function Es(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0;i=e;o=n;n=As(i,o)|0;e=T;return(T=(q(t,o)|0)+(q(r,i)|0)+e|e&0,n|0|0)|0}function ks(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;n=e+n>>>0;return(T=t+r+(n>>>0>>0|0)>>>0,n|0)|0}function Ss(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;r=t-r-(n>>>0>e>>>0|0)>>>0;return(T=r,e-n>>>0|0)|0}function Ts(e){e=e|0;return(e?31-(G(e^e-1)|0)|0:32)|0}function Is(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0;u=e;f=t;l=f;a=n;h=r;c=h;if(!l){s=(i|0)!=0;if(!c){if(s){o[i>>2]=(u>>>0)%(a>>>0);o[i+4>>2]=0}h=0;i=(u>>>0)/(a>>>0)>>>0;return(T=h,i)|0}else{if(!s){h=0;i=0;return(T=h,i)|0}o[i>>2]=e|0;o[i+4>>2]=t&0;h=0;i=0;return(T=h,i)|0}}s=(c|0)==0;do{if(a){if(!s){s=(G(c|0)|0)-(G(l|0)|0)|0;if(s>>>0<=31){d=s+1|0;c=31-s|0;t=s-31>>31;a=d;e=u>>>(d>>>0)&t|l<>>(d>>>0)&t;s=0;c=u<>2]=e|0;o[i+4>>2]=f|t&0;h=0;i=0;return(T=h,i)|0}s=a-1|0;if(s&a|0){c=(G(a|0)|0)+33-(G(l|0)|0)|0;m=64-c|0;d=32-c|0;f=d>>31;p=c-32|0;t=p>>31;a=c;e=d-1>>31&l>>>(p>>>0)|(l<>>(c>>>0))&t;t=t&l>>>(c>>>0);s=u<>>(p>>>0))&f|u<>31;break}if(i|0){o[i>>2]=s&u;o[i+4>>2]=0}if((a|0)==1){p=f|t&0;m=e|0|0;return(T=p,m)|0}else{m=Ts(a|0)|0;p=l>>>(m>>>0)|0;m=l<<32-m|u>>>(m>>>0)|0;return(T=p,m)|0}}else{if(s){if(i|0){o[i>>2]=(l>>>0)%(a>>>0);o[i+4>>2]=0}p=0;m=(l>>>0)/(a>>>0)>>>0;return(T=p,m)|0}if(!u){if(i|0){o[i>>2]=0;o[i+4>>2]=(l>>>0)%(c>>>0)}p=0;m=(l>>>0)/(c>>>0)>>>0;return(T=p,m)|0}s=c-1|0;if(!(s&c)){if(i|0){o[i>>2]=e|0;o[i+4>>2]=s&l|t&0}p=0;m=l>>>((Ts(c|0)|0)>>>0);return(T=p,m)|0}s=(G(c|0)|0)-(G(l|0)|0)|0;if(s>>>0<=30){t=s+1|0;c=31-s|0;a=t;e=l<>>(t>>>0);t=l>>>(t>>>0);s=0;c=u<>2]=e|0;o[i+4>>2]=f|t&0;p=0;m=0;return(T=p,m)|0}}while(0);if(!a){l=c;f=0;c=0}else{d=n|0|0;u=h|r&0;l=ks(d|0,u|0,-1,-1)|0;n=T;f=c;c=0;do{r=f;f=s>>>31|f<<1;s=c|s<<1;r=e<<1|r>>>31|0;h=e>>>31|t<<1|0;Ss(l|0,n|0,r|0,h|0)|0;m=T;p=m>>31|((m|0)<0?-1:0)<<1;c=p&1;e=Ss(r|0,h|0,p&d|0,(((m|0)<0?-1:0)>>31|((m|0)<0?-1:0)<<1)&u|0)|0;t=T;a=a-1|0}while((a|0)!=0);l=f;f=0}a=0;if(i|0){o[i>>2]=e;o[i+4>>2]=t}p=(s|0)>>>31|(l|a)<<1|(a<<1|s>>>31)&0|f;m=(s<<1|0>>>31)&-2|c;return(T=p,m)|0}function xs(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return Is(e,t,n,r,0)|0}function Rs(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){T=t>>n;return e>>>n|(t&(1<>n-32|0}function Cs(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){T=t>>>n;return e>>>n|(t&(1<>>n-32|0}function Os(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){T=t<>>32-n;return e<>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function Ms(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0;if((n|0)>=8192)return te(e|0,t|0,n|0)|0;a=e|0;s=e+n|0;if((e&3)==(t&3)){while(e&3){if(!n)return a|0;r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0;n=n-1|0}n=s&-4|0;i=n-64|0;while((e|0)<=(i|0)){o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=o[t+8>>2];o[e+12>>2]=o[t+12>>2];o[e+16>>2]=o[t+16>>2];o[e+20>>2]=o[t+20>>2];o[e+24>>2]=o[t+24>>2];o[e+28>>2]=o[t+28>>2];o[e+32>>2]=o[t+32>>2];o[e+36>>2]=o[t+36>>2];o[e+40>>2]=o[t+40>>2];o[e+44>>2]=o[t+44>>2];o[e+48>>2]=o[t+48>>2];o[e+52>>2]=o[t+52>>2];o[e+56>>2]=o[t+56>>2];o[e+60>>2]=o[t+60>>2];e=e+64|0;t=t+64|0}while((e|0)<(n|0)){o[e>>2]=o[t>>2];e=e+4|0;t=t+4|0}}else{n=s-4|0;while((e|0)<(n|0)){r[e>>0]=r[t>>0]|0;r[e+1>>0]=r[t+1>>0]|0;r[e+2>>0]=r[t+2>>0]|0;r[e+3>>0]=r[t+3>>0]|0;e=e+4|0;t=t+4|0}}while((e|0)<(s|0)){r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0}return a|0}function Ds(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0;a=e+n|0;t=t&255;if((n|0)>=67){while(e&3){r[e>>0]=t;e=e+1|0}i=a&-4|0;s=i-64|0;c=t|t<<8|t<<16|t<<24;while((e|0)<=(s|0)){o[e>>2]=c;o[e+4>>2]=c;o[e+8>>2]=c;o[e+12>>2]=c;o[e+16>>2]=c;o[e+20>>2]=c;o[e+24>>2]=c;o[e+28>>2]=c;o[e+32>>2]=c;o[e+36>>2]=c;o[e+40>>2]=c;o[e+44>>2]=c;o[e+48>>2]=c;o[e+52>>2]=c;o[e+56>>2]=c;o[e+60>>2]=c;e=e+64|0}while((e|0)<(i|0)){o[e>>2]=c;e=e+4|0}}while((e|0)<(a|0)){r[e>>0]=t;e=e+1|0}return a-n|0}function Bs(e){e=e|0;var t=0,n=0;n=o[u>>2]|0;t=n+e|0;if((e|0)>0&(t|0)<(n|0)|(t|0)<0){Y()|0;ee(12);return-1}o[u>>2]=t;if((t|0)>(W()|0)?(Q()|0)==0:0){o[u>>2]=n;ee(12);return-1}return n|0}function Ns(e,t){e=e|0;t=t|0;return Gs[e&1](t|0)|0}function js(e,t,n){e=e|0;t=t|0;n=n|0;return Hs[e&3](t|0,n|0)|0}function Us(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return Vs[e&1](t|0,n|0,r|0)|0}function Ls(e,t,n,r,i,o,s,a,c,f){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;s=s|0;a=a|0;c=c|0;f=f|0;return Qs[e&3](t|0,n|0,r|0,i|0,o|0,s|0,a|0,c|0,f|0)|0}function Fs(e){e=e|0;H(0);return 0}function qs(e,t){e=e|0;t=t|0;H(1);return 0}function zs(e,t,n){e=e|0;t=t|0;n=n|0;H(2);return 0}function Ks(e,t,n,r,i,o,s,a,c){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;s=s|0;a=a|0;c=c|0;H(3);return 0}var Gs=[Fs,an];var Hs=[qs,cn,ln,qs];var Vs=[zs,vs];var Qs=[Ks,fn,un,Ks];return{___muldi3:Es,___udivdi3:xs,_bitshift64Ashr:Rs,_bitshift64Lshr:Cs,_bitshift64Shl:Os,_free:Uo,_i64Add:ks,_i64Subtract:Ss,_llvm_bswap_i32:Ps,_malloc:jo,_memcpy:Ms,_memset:Ds,_olm_account:Nn,_olm_account_generate_one_time_keys:or,_olm_account_generate_one_time_keys_random_length:ir,_olm_account_identity_keys:Jn,_olm_account_identity_keys_length:Xn,_olm_account_last_error:Cn,_olm_account_mark_keys_as_published:nr,_olm_account_max_number_of_one_time_keys:rr,_olm_account_one_time_keys:tr,_olm_account_one_time_keys_length:er,_olm_account_sign:$n,_olm_account_signature_length:Zn,_olm_account_size:Mn,_olm_clear_account:Ln,_olm_clear_inbound_group_session:Pi,_olm_clear_outbound_group_session:co,_olm_clear_pk_decryption:Ft,_olm_clear_pk_encryption:Ct,_olm_clear_pk_signing:en,_olm_clear_sas:Xi,_olm_clear_session:Fn,_olm_clear_utility:qn,_olm_create_account:Yn,_olm_create_account_random_length:Wn,_olm_create_inbound_session:cr,_olm_create_inbound_session_from:fr,_olm_create_outbound_session:ar,_olm_create_outbound_session_random_length:sr,_olm_create_sas:Zi,_olm_create_sas_random_length:Ji,_olm_decrypt:Ar,_olm_decrypt_max_plaintext_length:wr,_olm_ed25519_verify:Sr,_olm_encrypt:_r,_olm_encrypt_message_length:vr,_olm_encrypt_message_type:yr,_olm_encrypt_random_length:br,_olm_error:Rn,_olm_export_inbound_group_session:Vi,_olm_export_inbound_group_session_length:Hi,_olm_get_library_version:xn,_olm_group_decrypt:Fi,_olm_group_decrypt_max_plaintext_length:Li,_olm_group_encrypt:yo,_olm_group_encrypt_message_length:go,_olm_import_inbound_group_session:Bi,_olm_inbound_group_session:Oi,_olm_inbound_group_session_first_known_index:Ki,_olm_inbound_group_session_id:zi,_olm_inbound_group_session_id_length:qi,_olm_inbound_group_session_is_verified:Gi,_olm_inbound_group_session_last_error:Mi,_olm_inbound_group_session_size:Ci,_olm_init_inbound_group_session:Di,_olm_init_outbound_group_session:mo,_olm_init_outbound_group_session_random_length:po,_olm_matches_inbound_session:pr,_olm_matches_inbound_session_from:mr,_olm_outbound_group_session:ao,_olm_outbound_group_session_id:vo,_olm_outbound_group_session_id_length:bo,_olm_outbound_group_session_key:Ao,_olm_outbound_group_session_key_length:wo,_olm_outbound_group_session_last_error:fo,_olm_outbound_group_session_message_index:_o,_olm_outbound_group_session_size:so,_olm_pickle_account:Gn,_olm_pickle_account_length:zn,_olm_pickle_inbound_group_session:ji,_olm_pickle_inbound_group_session_length:Ni,_olm_pickle_outbound_group_session:uo,_olm_pickle_outbound_group_session_length:lo,_olm_pickle_pk_decryption:Vt,_olm_pickle_pk_decryption_length:Ht,_olm_pickle_session:Hn,_olm_pickle_session_length:Kn,_olm_pk_ciphertext_length:Mt,_olm_pk_decrypt:Yt,_olm_pk_decryption:Lt,_olm_pk_decryption_last_error:jt,_olm_pk_decryption_size:Ut,_olm_pk_encrypt:Nt,_olm_pk_encrypt_random_length:Bt,_olm_pk_encryption:Rt,_olm_pk_encryption_last_error:It,_olm_pk_encryption_set_recipient_key:Ot,_olm_pk_encryption_size:xt,_olm_pk_generate_key:Gt,_olm_pk_generate_key_random_length:zt,_olm_pk_get_private_key:Xt,_olm_pk_key_from_private:Kt,_olm_pk_key_length:Pt,_olm_pk_mac_length:Dt,_olm_pk_max_plaintext_length:Wt,_olm_pk_private_key_length:qt,_olm_pk_sign:sn,_olm_pk_signature_length:on,_olm_pk_signing:Zt,_olm_pk_signing_key_from_seed:rn,_olm_pk_signing_last_error:$t,_olm_pk_signing_public_key_length:nn,_olm_pk_signing_seed_length:tn,_olm_pk_signing_size:Jt,_olm_remove_one_time_keys:gr,_olm_sas:Yi,_olm_sas_calculate_mac:io,_olm_sas_calculate_mac_long_kdf:oo,_olm_sas_generate_bytes:no,_olm_sas_get_pubkey:eo,_olm_sas_last_error:Qi,_olm_sas_mac_length:ro,_olm_sas_pubkey_length:$i,_olm_sas_set_their_key:to,_olm_sas_size:Wi,_olm_session:jn,_olm_session_describe:hr,_olm_session_has_received_message:dr,_olm_session_id:ur,_olm_session_id_length:lr,_olm_session_last_error:On,_olm_session_size:Dn,_olm_sha256:kr,_olm_sha256_length:Er,_olm_unpickle_account:Vn,_olm_unpickle_inbound_group_session:Ui,_olm_unpickle_outbound_group_session:ho,_olm_unpickle_pk_decryption:Qt,_olm_unpickle_session:Qn,_olm_utility:Un,_olm_utility_last_error:Pn,_olm_utility_size:Bn,_sbrk:Bs,dynCall_ii:Ns,dynCall_iii:js,dynCall_iiii:Us,dynCall_iiiiiiiiii:Ls,establishStackSpace:se,getTempRet0:fe,runPostSets:ws,setTempRet0:ce,setThrew:ae,stackAlloc:re,stackRestore:oe,stackSave:ie}}(u.f,u.g,D);u.___muldi3=Ee.___muldi3,u.___udivdi3=Ee.___udivdi3,u._bitshift64Ashr=Ee._bitshift64Ashr,u._bitshift64Lshr=Ee._bitshift64Lshr,u._bitshift64Shl=Ee._bitshift64Shl,u._free=Ee._free,u._i64Add=Ee._i64Add,u._i64Subtract=Ee._i64Subtract,u._llvm_bswap_i32=Ee._llvm_bswap_i32;var ke=u._malloc=Ee._malloc;u._memcpy=Ee._memcpy,u._memset=Ee._memset,u._olm_account=Ee._olm_account,u._olm_account_generate_one_time_keys=Ee._olm_account_generate_one_time_keys,u._olm_account_generate_one_time_keys_random_length=Ee._olm_account_generate_one_time_keys_random_length,u._olm_account_identity_keys=Ee._olm_account_identity_keys,u._olm_account_identity_keys_length=Ee._olm_account_identity_keys_length,u._olm_account_last_error=Ee._olm_account_last_error,u._olm_account_mark_keys_as_published=Ee._olm_account_mark_keys_as_published,u._olm_account_max_number_of_one_time_keys=Ee._olm_account_max_number_of_one_time_keys,u._olm_account_one_time_keys=Ee._olm_account_one_time_keys,u._olm_account_one_time_keys_length=Ee._olm_account_one_time_keys_length,u._olm_account_sign=Ee._olm_account_sign,u._olm_account_signature_length=Ee._olm_account_signature_length,u._olm_account_size=Ee._olm_account_size,u._olm_clear_account=Ee._olm_clear_account,u._olm_clear_inbound_group_session=Ee._olm_clear_inbound_group_session,u._olm_clear_outbound_group_session=Ee._olm_clear_outbound_group_session,u._olm_clear_pk_decryption=Ee._olm_clear_pk_decryption,u._olm_clear_pk_encryption=Ee._olm_clear_pk_encryption,u._olm_clear_pk_signing=Ee._olm_clear_pk_signing,u._olm_clear_sas=Ee._olm_clear_sas,u._olm_clear_session=Ee._olm_clear_session,u._olm_clear_utility=Ee._olm_clear_utility,u._olm_create_account=Ee._olm_create_account,u._olm_create_account_random_length=Ee._olm_create_account_random_length,u._olm_create_inbound_session=Ee._olm_create_inbound_session,u._olm_create_inbound_session_from=Ee._olm_create_inbound_session_from,u._olm_create_outbound_session=Ee._olm_create_outbound_session,u._olm_create_outbound_session_random_length=Ee._olm_create_outbound_session_random_length,u._olm_create_sas=Ee._olm_create_sas,u._olm_create_sas_random_length=Ee._olm_create_sas_random_length,u._olm_decrypt=Ee._olm_decrypt,u._olm_decrypt_max_plaintext_length=Ee._olm_decrypt_max_plaintext_length,u._olm_ed25519_verify=Ee._olm_ed25519_verify,u._olm_encrypt=Ee._olm_encrypt,u._olm_encrypt_message_length=Ee._olm_encrypt_message_length,u._olm_encrypt_message_type=Ee._olm_encrypt_message_type,u._olm_encrypt_random_length=Ee._olm_encrypt_random_length,u._olm_error=Ee._olm_error,u._olm_export_inbound_group_session=Ee._olm_export_inbound_group_session,u._olm_export_inbound_group_session_length=Ee._olm_export_inbound_group_session_length,u._olm_get_library_version=Ee._olm_get_library_version,u._olm_group_decrypt=Ee._olm_group_decrypt,u._olm_group_decrypt_max_plaintext_length=Ee._olm_group_decrypt_max_plaintext_length,u._olm_group_encrypt=Ee._olm_group_encrypt,u._olm_group_encrypt_message_length=Ee._olm_group_encrypt_message_length,u._olm_import_inbound_group_session=Ee._olm_import_inbound_group_session,u._olm_inbound_group_session=Ee._olm_inbound_group_session,u._olm_inbound_group_session_first_known_index=Ee._olm_inbound_group_session_first_known_index,u._olm_inbound_group_session_id=Ee._olm_inbound_group_session_id,u._olm_inbound_group_session_id_length=Ee._olm_inbound_group_session_id_length,u._olm_inbound_group_session_is_verified=Ee._olm_inbound_group_session_is_verified,u._olm_inbound_group_session_last_error=Ee._olm_inbound_group_session_last_error,u._olm_inbound_group_session_size=Ee._olm_inbound_group_session_size,u._olm_init_inbound_group_session=Ee._olm_init_inbound_group_session,u._olm_init_outbound_group_session=Ee._olm_init_outbound_group_session,u._olm_init_outbound_group_session_random_length=Ee._olm_init_outbound_group_session_random_length,u._olm_matches_inbound_session=Ee._olm_matches_inbound_session,u._olm_matches_inbound_session_from=Ee._olm_matches_inbound_session_from,u._olm_outbound_group_session=Ee._olm_outbound_group_session,u._olm_outbound_group_session_id=Ee._olm_outbound_group_session_id,u._olm_outbound_group_session_id_length=Ee._olm_outbound_group_session_id_length,u._olm_outbound_group_session_key=Ee._olm_outbound_group_session_key,u._olm_outbound_group_session_key_length=Ee._olm_outbound_group_session_key_length,u._olm_outbound_group_session_last_error=Ee._olm_outbound_group_session_last_error,u._olm_outbound_group_session_message_index=Ee._olm_outbound_group_session_message_index,u._olm_outbound_group_session_size=Ee._olm_outbound_group_session_size,u._olm_pickle_account=Ee._olm_pickle_account,u._olm_pickle_account_length=Ee._olm_pickle_account_length,u._olm_pickle_inbound_group_session=Ee._olm_pickle_inbound_group_session,u._olm_pickle_inbound_group_session_length=Ee._olm_pickle_inbound_group_session_length,u._olm_pickle_outbound_group_session=Ee._olm_pickle_outbound_group_session,u._olm_pickle_outbound_group_session_length=Ee._olm_pickle_outbound_group_session_length,u._olm_pickle_pk_decryption=Ee._olm_pickle_pk_decryption,u._olm_pickle_pk_decryption_length=Ee._olm_pickle_pk_decryption_length,u._olm_pickle_session=Ee._olm_pickle_session,u._olm_pickle_session_length=Ee._olm_pickle_session_length,u._olm_pk_ciphertext_length=Ee._olm_pk_ciphertext_length,u._olm_pk_decrypt=Ee._olm_pk_decrypt,u._olm_pk_decryption=Ee._olm_pk_decryption,u._olm_pk_decryption_last_error=Ee._olm_pk_decryption_last_error,u._olm_pk_decryption_size=Ee._olm_pk_decryption_size,u._olm_pk_encrypt=Ee._olm_pk_encrypt,u._olm_pk_encrypt_random_length=Ee._olm_pk_encrypt_random_length,u._olm_pk_encryption=Ee._olm_pk_encryption,u._olm_pk_encryption_last_error=Ee._olm_pk_encryption_last_error,u._olm_pk_encryption_set_recipient_key=Ee._olm_pk_encryption_set_recipient_key,u._olm_pk_encryption_size=Ee._olm_pk_encryption_size,u._olm_pk_generate_key=Ee._olm_pk_generate_key,u._olm_pk_generate_key_random_length=Ee._olm_pk_generate_key_random_length,u._olm_pk_get_private_key=Ee._olm_pk_get_private_key,u._olm_pk_key_from_private=Ee._olm_pk_key_from_private,u._olm_pk_key_length=Ee._olm_pk_key_length,u._olm_pk_mac_length=Ee._olm_pk_mac_length,u._olm_pk_max_plaintext_length=Ee._olm_pk_max_plaintext_length,u._olm_pk_private_key_length=Ee._olm_pk_private_key_length,u._olm_pk_sign=Ee._olm_pk_sign,u._olm_pk_signature_length=Ee._olm_pk_signature_length,u._olm_pk_signing=Ee._olm_pk_signing,u._olm_pk_signing_key_from_seed=Ee._olm_pk_signing_key_from_seed,u._olm_pk_signing_last_error=Ee._olm_pk_signing_last_error,u._olm_pk_signing_public_key_length=Ee._olm_pk_signing_public_key_length,u._olm_pk_signing_seed_length=Ee._olm_pk_signing_seed_length,u._olm_pk_signing_size=Ee._olm_pk_signing_size,u._olm_remove_one_time_keys=Ee._olm_remove_one_time_keys,u._olm_sas=Ee._olm_sas,u._olm_sas_calculate_mac=Ee._olm_sas_calculate_mac,u._olm_sas_calculate_mac_long_kdf=Ee._olm_sas_calculate_mac_long_kdf,u._olm_sas_generate_bytes=Ee._olm_sas_generate_bytes,u._olm_sas_get_pubkey=Ee._olm_sas_get_pubkey,u._olm_sas_last_error=Ee._olm_sas_last_error,u._olm_sas_mac_length=Ee._olm_sas_mac_length,u._olm_sas_pubkey_length=Ee._olm_sas_pubkey_length,u._olm_sas_set_their_key=Ee._olm_sas_set_their_key,u._olm_sas_size=Ee._olm_sas_size,u._olm_session=Ee._olm_session,u._olm_session_describe=Ee._olm_session_describe,u._olm_session_has_received_message=Ee._olm_session_has_received_message,u._olm_session_id=Ee._olm_session_id,u._olm_session_id_length=Ee._olm_session_id_length,u._olm_session_last_error=Ee._olm_session_last_error,u._olm_session_size=Ee._olm_session_size,u._olm_sha256=Ee._olm_sha256,u._olm_sha256_length=Ee._olm_sha256_length,u._olm_unpickle_account=Ee._olm_unpickle_account,u._olm_unpickle_inbound_group_session=Ee._olm_unpickle_inbound_group_session,u._olm_unpickle_outbound_group_session=Ee._olm_unpickle_outbound_group_session,u._olm_unpickle_pk_decryption=Ee._olm_unpickle_pk_decryption,u._olm_unpickle_session=Ee._olm_unpickle_session,u._olm_utility=Ee._olm_utility,u._olm_utility_last_error=Ee._olm_utility_last_error,u._olm_utility_size=Ee._olm_utility_size,u._sbrk=Ee._sbrk,u.establishStackSpace=Ee.establishStackSpace,u.getTempRet0=Ee.getTempRet0,u.runPostSets=Ee.runPostSets,u.setTempRet0=Ee.setTempRet0,u.setThrew=Ee.setThrew;var Se=u.stackAlloc=Ee.stackAlloc,Te=u.stackRestore=Ee.stackRestore,Ie=u.stackSave=Ee.stackSave;if(u.dynCall_ii=Ee.dynCall_ii,u.dynCall_iii=Ee.dynCall_iii,u.dynCall_iiii=Ee.dynCall_iiii,u.dynCall_iiiiiiiiii=Ee.dynCall_iiiiiiiiii,u.asm=Ee,u.ALLOC_STACK=1,me){if(String.prototype.startsWith?!me.startsWith(ge):0!==me.indexOf(ge)){var xe=me;me=u.locateFile?u.locateFile(xe,E):E+xe}if(v||_){var Re=u.readBinary(me);N.set(Re,8)}else{var Ce=function(){u.readAsync(me,Oe,(function(){throw"could not load memory initializer "+me}))};de++,u.monitorRunDependencies&&u.monitorRunDependencies(de);var Oe=function(e){e.byteLength&&(e=new Uint8Array(e)),N.set(e,8),u.memoryInitializerRequest&&delete u.memoryInitializerRequest.response,de--,u.monitorRunDependencies&&u.monitorRunDependencies(de),0==de&&(null!==he&&(clearInterval(he),he=null),pe&&(e=pe,pe=null,e()))},Pe=Ae(me);if(Pe)Oe(Pe.buffer);else if(u.memoryInitializerRequest){var Me=function(){var e=u.memoryInitializerRequest,t=e.response;if(200!==e.status&&0!==e.status){if(!(t=Ae(u.memoryInitializerRequestURL)))return console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+e.status+", retrying "+me),void Ce();t=t.buffer}Oe(t)};u.memoryInitializerRequest.response?setTimeout(Me,0):u.memoryInitializerRequest.addEventListener("load",Me)}else Ce()}}function De(){function e(){if(!u.calledRun&&(u.calledRun=!0,!R)){if(oe||(oe=!0,ee(ne)),ee(re),u.onRuntimeInitialized&&u.onRuntimeInitialized(),u.postRun)for("function"==typeof u.postRun&&(u.postRun=[u.postRun]);u.postRun.length;){var e=u.postRun.shift();ie.unshift(e)}ee(ie)}}if(!(0=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,i=!1,o=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==a.return||a.return()}finally{if(i)throw o}}return n}}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}},function(e,t,n){"use strict";var r=n(18);function i(){}function o(){}o.resetWarningCache=i,e.exports=function(){function e(e,t,n,i,o,s){if(s!==r){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:i};return n.PropTypes=n,n}},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}},function(e,t){e.exports=function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t3&&void 0!==arguments[3]?arguments[3]:{};return Object.assign({unified:e,emoji:e.split("-").map((function(e){return parseInt(e,16)})).map((function(e){return String.fromCodePoint(e)})).join(""),originalUnified:t[u.EMOJI_PROPERTY_UNIFIED],names:t[u.EMOJI_PROPERTY_NAME],activeSkinTone:n},r)},D=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Function.prototype;return function(t,n,r,i){var o=M(n,r,i);return P(o),e(t,o)}},B=n(8),N=(n(23),function(){var e=Object(a.useContext)(g),t=e.state,n=t.skinTonesSpread,r=t.activeSkinTone,i=e.dispatch,o=function(){i({type:v,spread:!n})},s=function(e){var t=e.target.value;i({type:_,skinTone:t})};return c.a.createElement("ul",{className:"skin-tones-list"},B.map((function(e,t){var i=e===r;return c.a.createElement("li",{key:e,className:"t".concat(e),style:{transform:"translateX(-".concat(n?20*t:0,"px) scale(").concat(i?"1.5":1,")"),zIndex:i?2:1}},c.a.createElement("input",{type:"radio",onChange:s,name:"skin-tone",value:e,id:"tone_".concat(e)}),c.a.createElement("label",{htmlFor:"tone_".concat(e),"data-name":"tones",onClick:o}))})))}),j=n(9),U=n.n(j),L=function(e){var t=Object(a.useContext)(g).state.emojiUrl;return e?"".concat(t,"/").concat(e,".png"):t},F=(n(25),function(e){var t=e.unified,n=e.dispatch,r=e.shouldLoad,i=void 0===r||r;return c.a.createElement("img",U()({className:"emoji-img",onError:function(){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Function.prototype;t({type:A,unified:e})}(t,n)}},i&&function(e){return{src:L(e)}}(t)))}),q=F;F.propTypes={unified:l.a.string,shouldLoad:l.a.bool,dispatch:l.a.func},n(27);var z=function(e){var t=e.closeVariations,n=Object(a.useContext)(g).state,r=n.variationMenu,i=n.activeSkinTone,o=n.onEmojiClick;return r?c.a.createElement("div",{className:"variations-wrapper"},c.a.createElement("ul",{className:"variation-list"},B.map((function(e){var n=r[u.EMOJI_PROPERTY_SKIN_VARIATIONS].find((function(t){return t.includes(e)}))||r[u.EMOJI_PROPERTY_UNIFIED];return c.a.createElement("li",{key:n},c.a.createElement("button",{onClick:function(e){return t(e),o(e,n,r,i)},onMouseDown:function(e){return e.stopPropagation()}},c.a.createElement(q,{unified:n})))})))):null},K=z;z.propTypes={closeVariations:l.a.func};var G=n(7),H=n.n(G),V=n(10),Q=(n(29),function(e){var t=e.emojiListRef,n=Object(a.useContext)(g),r=n.state,i=r.activeCategory,o=r.filter,s=n.dispatch,f=!1;return o&&o.length&&(f=!0),c.a.createElement("nav",{onClick:function(e){var n=e.target;if(!f){var r=n.getAttribute("data-name");if(t&&t.current&&r){s({type:y,activeCategory:r}),s({type:w,group:r});var i=t.current,o=i.querySelector("[".concat("data-name",'="').concat(r,'"]'));i.scrollTop=o.offsetTop}}},className:H()("emoji-categories",{inactive:f})},V.map((function(e){return c.a.createElement("button",{key:e,className:H()("icn-".concat(e.replace(" & ","_")),{active:i===e}),"data-name":e})})))}),W=Q;Q.propTypes={emojiListRef:l.a.shape({current:l.a.instanceOf(Element)})};var Y,X,J=n(11),Z=function(e){var t={groups:{},emojis:{}},n=function(n){e[n].reduce((function(e,t){var r=t[u.EMOJI_PROPERTY_UNIFIED];return t[u.EMOJI_PROPERTY_GROUP]=n,e.emojis[r]=t,e.groups[n]=e.groups[n]||[],e.groups[n].push(r),e}),t)};for(var r in e)n(r);return t}(J),$=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0,n=".content-wrapper",r=t&&t.current?t.current.closest("".concat(n)):document.querySelector(".emoji-picker-react ".concat(n));r.setAttribute("data-name",e)},ee=l.a.shape((X={},i()(X,u.EMOJI_PROPERTY_NAME,l.a.arrayOf(l.a.string)),i()(X,u.EMOJI_PROPERTY_UNIFIED,l.a.string),i()(X,u.EMOJI_PROPERTY_SKIN_VARIATIONS,l.a.arrayOf(l.a.string)),i()(X,u.EMOJI_PROPERTY_GROUP,l.a.string),X));function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}n(40);var ne=["#aeeff0","#ffe0e0","#d6f8b8","#c6cfff","#f1f0d1"],re=null,ie=function(){return clearTimeout(re)},oe=function(e){var t,n,r=e.emoji,o=e.shouldLoad,s=e.hidden,a=e.activeSkinTone,f=e.openVariationMenu,l=e.variationMenuOpen,d=e.handleMouseEnter,h=e.handleMouseLeave,p=e.onEmojiClick,m=e.index,g=e.dispatch,y=r[u.EMOJI_PROPERTY_SKIN_VARIATIONS],b=function(e){for(var t=1;t=0}))),t||(t=r[u.EMOJI_PROPERTY_UNIFIED]),c.a.createElement("li",{style:b,className:H()("emoji",{"has-skin-variation":y&&f})},c.a.createElement("button",{onMouseDown:function(){y&&f&&(re=setTimeout((function(){f(r)}),500))},onMouseEnter:d,onMouseLeave:h,onMouseUp:ie,onClick:function(e){l||p(e,t,r,a)}},c.a.createElement(q,{unified:t,shouldLoad:o,dispatch:g})))},se=oe;oe.propTypes={emoji:ee,shouldLoad:l.a.bool,hidden:l.a.bool,activeSkinTone:l.a.string,openVariationMenu:l.a.func,variationMenuOpen:l.a.bool,handleMouseEnter:l.a.func,handleMouseLeave:l.a.func,onEmojiClick:l.a.func,index:l.a.number,dispatch:l.a.func};var ae=function(e){var t=e.unsetEmojiName,n=e.emojiListRef,r=Object(a.useContext)(g),i=r.state,o=i.recentlyUsed,s=i.onEmojiClick,f=i.filterResult,l=i.failedToLoad,d=void 0===l?{}:l,h=r.dispatch;return!o.length||f?null:c.a.createElement("ul",{className:"emoji-group","data-name":u.GROUP_NAME_RECENTLY_USED},o.map((function(e,r){var i=e[u.EMOJI_PROPERTY_UNIFIED],o=Z.emojis[i];return d[i]||!o?null:c.a.createElement(se,U()({key:r,emoji:o},e[u.EMOJI_PROPERTY_SKIN_VARIATIONS]&&{activeSkinTone:e[u.EMOJI_PROPERTY_SKIN_VARIATIONS]},{index:r,handleMouseLeave:t,onEmojiClick:s,handleMouseEnter:function(){return $(o[u.EMOJI_PROPERTY_NAME][0],n)},dispatch:h,shouldLoad:!0}))})))},ce=ae;function fe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}ae.propTypes={unsetEmojiName:l.a.func,emojiListRef:l.a.shape({current:l.a.instanceOf(Element)})},n(42);var le=function(e){var t=e.emojiListRef,n=Object(a.useContext)(g).state.filterResult;(function(e){var t=Object(a.useContext)(g),n=t.state,r=n.filterResult,i=n.activeCategory,o=t.dispatch;Object(a.useEffect)((function(){void 0!==I.IntersectionObserver&&!Y&&e.current&&(Y=new IntersectionObserver((function(e){e.forEach((function(e){var t=e.target,n=t.getAttribute("data-name");if(0===e.intersectionRatio){if(n===i)o({type:y,activeCategory:null});else if(n===u.GROUP_NAME_RECENTLY_USED){var r=t.nextSibling;if(r){var s=r.getAttribute("data-name");o({type:y,activeCategory:s})}}}else i||(o({type:w,group:n}),o({type:y,activeCategory:n}))}))}),{root:e.current.parentElement})),Y.disconnect(),e&&e.current&&T()(e.current.querySelectorAll(".emoji-group")).forEach((function(e){Y.observe(e)}))}),[e.current,r])})(t),function(e,t){var n=Object(a.useRef)();Object(a.useEffect)((function(){t&&t.current&&(t.current.scrollTop=0),n.current=e}),[e]),n.current}(n,t);var r=function(){return $("",t)};return c.a.createElement("section",{className:"emoji-scroll-wrapper",ref:t},c.a.createElement(ce,{unsetEmojiName:r,emojiListRef:t}),V.map((function(e){var n=function(e,t){var n=t.unsetEmojiName,r=t.emojiListRef,i=Object(a.useContext)(g),o=i.state,s=o.activeSkinTone,f=o.filterResult,l=o.seenGroups,d=void 0===l?{}:l,h=o.onEmojiClick,p=o.variationMenu,m=o.failedToLoad,y=void 0===m?null:m,v=o.preload,_=i.dispatch,w=v||!(!d[e]&&!f&&"function"==typeof I.IntersectionObserver),A=!!p,E=function(e){return _({type:b,emoji:e})};return Object(a.useMemo)((function(){var t=f?Object.keys(f[e]||{}):Z.groups[e];return t.reduce((function(e,i,o){if(y&&y[i])return e;var a=Z.emojis[i],f=!t.length;return e.shown||f||(e.shown=!0),e.list.push(c.a.createElement(se,{emoji:a,dispatch:_,openVariationMenu:E,activeSkinTone:s,handleMouseLeave:n,variationMenuOpen:A,handleMouseEnter:function(){return $(a[u.EMOJI_PROPERTY_NAME][0],r)},hidden:f,shouldLoad:w,onEmojiClick:h,index:o,key:a[u.EMOJI_PROPERTY_UNIFIED]})),e}),{list:[],shown:!1})}),[s,f,e,w,A,y])}(e,{unsetEmojiName:r,emojiListRef:t}),o=n.list,s=function(e){for(var t=1;t3&&void 0!==arguments[3]?arguments[3]:100,i=n;return new Promise((function(n){var o=0;!function s(){for(var a=o;ao.value.length&&i.includes(o.value))t=[].concat(T()(n),[{value:i,terms:o.terms.filter((function(e){return e.includes(i)}))}]);else if(o&&i.length0;a--)if(i.includes(n[a-1].value)){s=a;break}n.length=s,t=T()(n)}else 0!==n.length&&i.includes(o.value)||(t=[{value:i,terms:he[i[0]].filter((function(e){return e.includes(i)}))}]);var c=t[t.length-1];c&&c.value?pe(c&&c.terms||[],(function(e,t){return de[t]?(de[t]||[]).reduce((function(e,t){var n=Z.emojis[t][u.EMOJI_PROPERTY_GROUP];return e[n]=e[n]||{},e[n][t]=!0,e}),e):e}),{}).then((function(e){r({type:E,filter:t,filterResult:e})})):r({type:E,filter:t,filterResult:null})}},ye=(n(44),function(){return c.a.createElement("input",{className:"emoji-search",onChange:ge(),autoFocus:!0})});n(46),n.d(t,"SKIN_TONE_NEUTRAL",(function(){return"neutral"})),n.d(t,"SKIN_TONE_LIGHT",(function(){return"1f3fb"})),n.d(t,"SKIN_TONE_MEDIUM_LIGHT",(function(){return"1f3fc"})),n.d(t,"SKIN_TONE_MEDIUM",(function(){return"1f3fe"})),n.d(t,"SKIN_TONE_MEDIUM_DARK",(function(){return"1f3ff"})),n.d(t,"SKIN_TONE_DARK",(function(){return"1f3fd"}));var be=function(e){var t=e.emojiUrl,n=void 0===t?"https://cdn.jsdelivr.net/gh/iamcal/emoji-data@master/img-apple-160":t,r=e.onEmojiClick,o=e.preload,f=void 0!==o&&o,l=e.skinTone,d=void 0===l?"neutral":l,h=Object(a.useRef)(null),p=Object(a.useReducer)(k,{activeSkinTone:d,emojiUrl:n,onEmojiClick:D(r),seenGroups:i()({},u.GROUP_NAME_PEOPLE,!0),recentlyUsed:O(),preload:f}),m=s()(p,2),y=m[0],_=m[1],w=function(e){var t=e.target;y.variationMenu&&_({type:b}),y.skinTonesSpread&&"tones"!==t.getAttribute("data-name")&&_({type:v})};return c.a.createElement(g.Provider,{value:{state:y,dispatch:_}},c.a.createElement("aside",{className:"emoji-picker-react",onScroll:w,onMouseDown:w},c.a.createElement(W,{emojiListRef:h}),c.a.createElement("div",{style:{position:"relative"}},c.a.createElement(ye,null),c.a.createElement(N,null)),c.a.createElement("div",{className:"content-wrapper","data-name":y.emojiName},c.a.createElement(K,{closeVariations:w}),c.a.createElement(ue,{emojiListRef:h}))))};t.default=be,be.propTypes={emojiUrl:l.a.string,onEmojiClick:l.a.func,preload:l.a.bool,skinTone:l.a.string}}]))}).call(this,n(6))},function(e,t,n){"use strict";var r=n(26),i=n.n(r),o=n(27),s=n.n(o),a=n(55),c=n.n(a),f=n(56),l=n.n(f),u=n(5),d=n.n(u),h=n(57),p=n.n(h),m=n(1),g=n.n(m),y=n(0),b=n.n(y),v=(n(9),n(335)),_=n(161),w=n.n(_),A=n(39);function E(e,t,n){return e===t||(e.correspondingElement?e.correspondingElement.classList.contains(n):e.classList.contains(n))}var k,S,T=(void 0===k&&(k=0),function(){return++k}),I={},x={},R=["touchstart","touchmove"];function C(e,t){var n=null;return-1!==R.indexOf(t)&&S&&(n={passive:!e.props.preventDefault}),n}var O=function(e,t){var n,r,i=e.displayName||e.name||"Component";return r=n=function(n){var r,o;function s(e){var r;return(r=n.call(this,e)||this).__outsideClickHandler=function(e){if("function"!=typeof r.__clickOutsideHandlerProp){var t=r.getInstance();if("function"!=typeof t.props.handleClickOutside){if("function"!=typeof t.handleClickOutside)throw new Error("WrappedComponent: "+i+" lacks a handleClickOutside(event) function for processing outside click events.");t.handleClickOutside(e)}else t.props.handleClickOutside(e)}else r.__clickOutsideHandlerProp(e)},r.__getComponentNode=function(){var e=r.getInstance();return t&&"function"==typeof t.setClickOutsideRef?t.setClickOutsideRef()(e):"function"==typeof e.setClickOutsideRef?e.setClickOutsideRef():Object(A.findDOMNode)(e)},r.enableOnClickOutside=function(){if("undefined"!=typeof document&&!x[r._uid]){void 0===S&&(S=function(){if("undefined"!=typeof window&&"function"==typeof window.addEventListener){var e=!1,t=Object.defineProperty({},"passive",{get:function(){e=!0}}),n=function(){};return window.addEventListener("testPassiveEventSupport",n,t),window.removeEventListener("testPassiveEventSupport",n,t),e}}()),x[r._uid]=!0;var e=r.props.eventTypes;e.forEach||(e=[e]),I[r._uid]=function(e){var t;null!==r.componentNode&&(r.props.preventDefault&&e.preventDefault(),r.props.stopPropagation&&e.stopPropagation(),r.props.excludeScrollbar&&(t=e,document.documentElement.clientWidth<=t.clientX||document.documentElement.clientHeight<=t.clientY)||function(e,t,n){if(e===t)return!0;for(;e.parentNode;){if(E(e,t,n))return!0;e=e.parentNode}return e}(e.target,r.componentNode,r.props.outsideClickIgnoreClass)===document&&r.__outsideClickHandler(e))},e.forEach((function(e){document.addEventListener(e,I[r._uid],C(r,e))}))}},r.disableOnClickOutside=function(){delete x[r._uid];var e=I[r._uid];if(e&&"undefined"!=typeof document){var t=r.props.eventTypes;t.forEach||(t=[t]),t.forEach((function(t){return document.removeEventListener(t,e,C(r,t))})),delete I[r._uid]}},r.getRef=function(e){return r.instanceRef=e},r._uid=T(),r}o=n,(r=s).prototype=Object.create(o.prototype),r.prototype.constructor=r,r.__proto__=o;var a=s.prototype;return a.getInstance=function(){if(!e.prototype.isReactComponent)return this;var t=this.instanceRef;return t.getInstance?t.getInstance():t},a.componentDidMount=function(){if("undefined"!=typeof document&&document.createElement){var e=this.getInstance();if(t&&"function"==typeof t.handleClickOutside&&(this.__clickOutsideHandlerProp=t.handleClickOutside(e),"function"!=typeof this.__clickOutsideHandlerProp))throw new Error("WrappedComponent: "+i+" lacks a function for processing outside click events specified by the handleClickOutside config option.");this.componentNode=this.__getComponentNode(),this.props.disableOnClickOutside||this.enableOnClickOutside()}},a.componentDidUpdate=function(){this.componentNode=this.__getComponentNode()},a.componentWillUnmount=function(){this.disableOnClickOutside()},a.render=function(){var t=this.props,n=(t.excludeScrollbar,function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}(t,["excludeScrollbar"]));return e.prototype.isReactComponent?n.ref=this.getRef:n.wrappedRef=this.getRef,n.disableOnClickOutside=this.disableOnClickOutside,n.enableOnClickOutside=this.enableOnClickOutside,Object(y.createElement)(e,n)},s}(y.Component),n.displayName="OnClickOutside("+i+")",n.defaultProps={eventTypes:["mousedown","touchstart"],excludeScrollbar:t&&t.excludeScrollbar||!1,outsideClickIgnoreClass:"ignore-react-onclickoutside",preventDefault:!1,stopPropagation:!1},n.getClass=function(){return e.getClass?e.getClass():e},r},P=function(){return b.a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24",viewBox:"0 0 24 24",width:"24"},b.a.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),b.a.createElement("path",{id:"icon",fill:"#828282",d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm3.5-9c.83 0 1.5-.67 1.5-1.5S16.33 8 15.5 8 14 8.67 14 9.5s.67 1.5 1.5 1.5zm-7 0c.83 0 1.5-.67 1.5-1.5S9.33 8 8.5 8 7 8.67 7 9.5 7.67 11 8.5 11zm3.5 6.5c2.33 0 4.31-1.46 5.11-3.5H6.89c.8 2.04 2.78 3.5 5.11 3.5z"}))},M=function(e){function t(e){var n;return i()(this,t),n=c()(this,l()(t).call(this,e)),g()(d()(n),"handleClickOutside",(function(e){n.props.closeEmojiSelector()})),n}return p()(t,e),s()(t,[{key:"render",value:function(){var e=this.props,t=e.onEmojiClick,n=e.emojiSelectorOpen,r=e.toggleEmojiSelector;return(b.a.createElement("div",{className:"emoji-button-container"},b.a.createElement("div",{className:"pos-relative"},b.a.createElement(v.a,{in:n,timeout:250},(function(e){return b.a.createElement("div",{className:"emoji-picker emoji-picker-".concat(e),"aria-hidden":!n},b.a.createElement(w.a,{onEmojiClick:t,emojiUrl:"https://cdn.jsdelivr.net/gh/iamcal/emoji-data@master/img-apple-64"}))})),b.a.createElement("button",{type:"button",id:"emoji-button",onClick:r,"aria-label":"Emoji picker"},b.a.createElement(P,null)))))}}]),t}(b.a.Component);t.a=O(M)},function(e,t,n){"use strict";n.r(t),n.d(t,"default",(function(){return g}));var r=n(153),i=n.n(r),o=n(26),s=n.n(o),a=n(27),c=n.n(a),f=n(1),l=n.n(f),u=n(0),d=n.n(u),h=n(39),p=n.n(h),m=n(154),g=(n(333),function(){function e(){s()(this,e)}return c()(e,null,[{key:"mount",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.parentElement,r=void 0===n?null:n,o=i()(t,["parentElement"]),s=d.a.createElement(m.a,o);function a(){if(e.el)throw new Error("EmbeddableChatbox is already mounted, unmount first");var t=document.createElement("div");t.setAttribute("class","cleanslate"),r?document.querySelector(r).appendChild(t):document.body.appendChild(t),p.a.render(s,t),e.el=t}"complete"===document.readyState?a():window.addEventListener("load",(function(){a()}))}},{key:"unmount",value:function(){if(!e.el)throw new Error("EmbeddableChatbox is not mounted, mount first");p.a.unmountComponentAtNode(e.el),e.el.parentNode.removeChild(e.el),e.el=null}}]),e}());l()(g,"el",void 0)},,function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}},function(e,t,n){"use strict"; +*/var r=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable;function s(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,t){for(var n,a,c=s(e),f=1;f=this._delta8){var n=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-n,e.length),0===this.pending.length&&(this.pending=null),e=r.join32(e,0,e.length-n,this.endian);for(var i=0;i>>24&255,r[i++]=e>>>16&255,r[i++]=e>>>8&255,r[i++]=255&e}else for(r[i++]=255&e,r[i++]=e>>>8&255,r[i++]=e>>>16&255,r[i++]=e>>>24&255,r[i++]=0,r[i++]=0,r[i++]=0,r[i++]=0,o=8;o{if(!this._indexedDB)return void t(new Error("no indexeddb support available"));i.logger.log(`connecting to indexeddb ${this._dbName}`);const n=this._indexedDB.open(this._dbName,a.VERSION);n.onupgradeneeded=e=>{const t=e.target.result,n=e.oldVersion;a.upgradeDatabase(t,n)},n.onblocked=()=>{i.logger.log("can't yet open IndexedDBCryptoStore because it is open elsewhere")},n.onerror=e=>{i.logger.log("Error connecting to indexeddb",e),t(e.target.error)},n.onsuccess=t=>{const n=t.target.result;i.logger.log(`connected to indexeddb ${this._dbName}`),e(new a.Backend(n))}}).then(e=>e.doTxn("readonly",[l.STORE_INBOUND_GROUP_SESSIONS,l.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],t=>{e.getEndToEndInboundGroupSession("","",t,()=>{})}).then(()=>e)).catch(t=>{if("VersionError"===t.name)throw i.logger.warn("Crypto DB is too new for us to use!",t),new c.InvalidCryptoStoreError(c.InvalidCryptoStoreError.TOO_NEW);i.logger.warn(`unable to connect to indexeddb ${this._dbName}`+`: falling back to localStorage store: ${t}`);try{return new o.LocalStorageCryptoStore(e.localStorage)}catch(t){return i.logger.warn(`unable to open localStorage: falling back to in-memory store: ${t}`),new s.MemoryCryptoStore}}),this._backendPromise)}deleteAllData(){return new Promise((e,t)=>{if(!this._indexedDB)return void t(new Error("no indexeddb support available"));i.logger.log(`Removing indexeddb instance: ${this._dbName}`);const n=this._indexedDB.deleteDatabase(this._dbName);n.onblocked=()=>{i.logger.log("can't yet delete IndexedDBCryptoStore because it is open elsewhere")},n.onerror=e=>{i.logger.log("Error deleting data from indexeddb",e),t(e.target.error)},n.onsuccess=()=>{i.logger.log(`Removed indexeddb instance: ${this._dbName}`),e()}}).catch(e=>{i.logger.warn(`unable to delete IndexedDBCryptoStore: ${e}`)})}getOrAddOutgoingRoomKeyRequest(e){return this._connect().then(t=>t.getOrAddOutgoingRoomKeyRequest(e))}getOutgoingRoomKeyRequest(e){return this._connect().then(t=>t.getOutgoingRoomKeyRequest(e))}getOutgoingRoomKeyRequestByState(e){return this._connect().then(t=>t.getOutgoingRoomKeyRequestByState(e))}getOutgoingRoomKeyRequestsByTarget(e,t,n){return this._connect().then(r=>r.getOutgoingRoomKeyRequestsByTarget(e,t,n))}updateOutgoingRoomKeyRequest(e,t,n){return this._connect().then(r=>r.updateOutgoingRoomKeyRequest(e,t,n))}deleteOutgoingRoomKeyRequest(e,t){return this._connect().then(n=>n.deleteOutgoingRoomKeyRequest(e,t))}getAccount(e,t){this._backendPromise.then(n=>{n.getAccount(e,t)})}storeAccount(e,t){this._backendPromise.then(n=>{n.storeAccount(e,t)})}getCrossSigningKeys(e,t){this._backendPromise.then(n=>{n.getCrossSigningKeys(e,t)})}storeCrossSigningKeys(e,t){this._backendPromise.then(n=>{n.storeCrossSigningKeys(e,t)})}countEndToEndSessions(e,t){this._backendPromise.then(n=>{n.countEndToEndSessions(e,t)})}getEndToEndSession(e,t,n,r){this._backendPromise.then(i=>{i.getEndToEndSession(e,t,n,r)})}getEndToEndSessions(e,t,n){this._backendPromise.then(r=>{r.getEndToEndSessions(e,t,n)})}getAllEndToEndSessions(e,t){this._backendPromise.then(n=>{n.getAllEndToEndSessions(e,t)})}storeEndToEndSession(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndSession(e,t,n,r)})}storeEndToEndSessionProblem(e,t,n){return this._backendPromise.then(async r=>{await r.storeEndToEndSessionProblem(e,t,n)})}getEndToEndSessionProblem(e,t){return this._backendPromise.then(async n=>await n.getEndToEndSessionProblem(e,t))}filterOutNotifiedErrorDevices(e){return this._backendPromise.then(async t=>await t.filterOutNotifiedErrorDevices(e))}getEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.getEndToEndInboundGroupSession(e,t,n,r)})}getAllEndToEndInboundGroupSessions(e,t){this._backendPromise.then(n=>{n.getAllEndToEndInboundGroupSessions(e,t)})}addEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.addEndToEndInboundGroupSession(e,t,n,r)})}storeEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndInboundGroupSession(e,t,n,r)})}storeEndToEndInboundGroupSessionWithheld(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndInboundGroupSessionWithheld(e,t,n,r)})}storeEndToEndDeviceData(e,t){this._backendPromise.then(n=>{n.storeEndToEndDeviceData(e,t)})}getEndToEndDeviceData(e,t){this._backendPromise.then(n=>{n.getEndToEndDeviceData(e,t)})}storeEndToEndRoom(e,t,n){this._backendPromise.then(r=>{r.storeEndToEndRoom(e,t,n)})}getEndToEndRooms(e,t){this._backendPromise.then(n=>{n.getEndToEndRooms(e,t)})}getSessionsNeedingBackup(e){return this._connect().then(t=>t.getSessionsNeedingBackup(e))}countSessionsNeedingBackup(e){return this._connect().then(t=>t.countSessionsNeedingBackup(e))}unmarkSessionsNeedingBackup(e,t){return this._connect().then(n=>n.unmarkSessionsNeedingBackup(e,t))}markSessionsNeedingBackup(e,t){return this._connect().then(n=>n.markSessionsNeedingBackup(e,t))}doTxn(e,t,n){return this._connect().then(r=>r.doTxn(e,t,n))}}t.IndexedDBCryptoStore=l,l.STORE_ACCOUNT="account",l.STORE_SESSIONS="sessions",l.STORE_INBOUND_GROUP_SESSIONS="inbound_group_sessions",l.STORE_INBOUND_GROUP_SESSIONS_WITHHELD="inbound_group_sessions_withheld",l.STORE_DEVICE_DATA="device_data",l.STORE_ROOMS="rooms",l.STORE_BACKUP="sessions_needing_backup"}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newVerificationError=i,t.errorFactory=o,t.errorFromEvent=function(e){const t=e.getContent();if(t){const{code:e,reason:n}=t;return{code:e,reason:n}}return{code:"Unknown error",reason:"m.unknown"}},t.newInvalidMessageError=t.newUserMismatchError=t.newKeyMismatchError=t.newUnexpectedMessageError=t.newUnknownMethodError=t.newUnknownTransactionError=t.newTimeoutError=t.newUserCancelledError=void 0;var r=n(19);function i(e,t,n){return(n=n||{}).code=e,n.reason=t,new r.MatrixEvent({type:"m.key.verification.cancel",content:n})}function o(e,t){return function(n){return i(e,t,n)}}const s=o("m.user","Cancelled by user");t.newUserCancelledError=s;const a=o("m.timeout","Timed out");t.newTimeoutError=a;const c=o("m.unknown_transaction","Unknown transaction");t.newUnknownTransactionError=c;const f=o("m.unknown_method","Unknown method");t.newUnknownMethodError=f;const l=o("m.unexpected_message","Unexpected message");t.newUnexpectedMessageError=l;const u=o("m.key_mismatch","Key mismatch");t.newKeyMismatchError=u;const d=o("m.user_error","User mismatch");t.newUserMismatchError=d;const h=o("m.invalid_message","Invalid message");t.newInvalidMessageError=h},function(e,t,n){(function(e){function n(e,t){for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];"."===i?e.splice(r,1):".."===i?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n--;n)e.unshift("..");return e}function r(e,t){if(e.filter)return e.filter(t);for(var n=[],r=0;r=-1&&!i;o--){var s=o>=0?arguments[o]:e.cwd();if("string"!=typeof s)throw new TypeError("Arguments to path.resolve must be strings");s&&(t=s+"/"+t,i="/"===s.charAt(0))}return(i?"/":"")+(t=n(r(t.split("/"),(function(e){return!!e})),!i).join("/"))||"."},t.normalize=function(e){var o=t.isAbsolute(e),s="/"===i(e,-1);return(e=n(r(e.split("/"),(function(e){return!!e})),!o).join("/"))||o||(e="."),e&&s&&(e+="/"),(o?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(r(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,n){function r(e){for(var t=0;t=0&&""===e[n];n--);return t>n?[]:e.slice(t,n-t+1)}e=t.resolve(e).substr(1),n=t.resolve(n).substr(1);for(var i=r(e.split("/")),o=r(n.split("/")),s=Math.min(i.length,o.length),a=s,c=0;c=1;--o)if(47===(t=e.charCodeAt(o))){if(!i){r=o;break}}else i=!1;return-1===r?n?"/":".":n&&1===r?"/":e.slice(0,r)},t.basename=function(e,t){var n=function(e){"string"!=typeof e&&(e+="");var t,n=0,r=-1,i=!0;for(t=e.length-1;t>=0;--t)if(47===e.charCodeAt(t)){if(!i){n=t+1;break}}else-1===r&&(i=!1,r=t+1);return-1===r?"":e.slice(n,r)}(e);return t&&n.substr(-1*t.length)===t&&(n=n.substr(0,n.length-t.length)),n},t.extname=function(e){"string"!=typeof e&&(e+="");for(var t=-1,n=0,r=-1,i=!0,o=0,s=e.length-1;s>=0;--s){var a=e.charCodeAt(s);if(47!==a)-1===r&&(i=!1,r=s+1),46===a?-1===t?t=s:1!==o&&(o=1):-1!==t&&(o=-1);else if(!i){n=s+1;break}}return-1===t||-1===r||0===o||1===o&&t===r-1&&t===n+1?"":e.slice(t,r)};var i="b"==="ab".substr(-1)?function(e,t,n){return e.substr(t,n)}:function(e,t,n){return t<0&&(t=e.length+t),e.substr(t,n)}}).call(this,n(13))},function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE){0;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}}(),e.exports=n(167)},function(e,t,n){"use strict";(function(e){var r=n(16),i=n(7);Object.defineProperty(t,"__esModule",{value:!0});var o={};t.default=void 0;var s=i(n(130));Object.keys(s).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||Object.defineProperty(t,e,{enumerable:!0,get:function(){return s[e]}}))}));var a=r(n(314)),c=r(n(315));let f;s.request((function(e,t){return e.qs=c.default.stringify(e.qs||{},e.qsStringifyOptions),(0,a.default)(e,t)}));try{f=e.indexedDB}catch(e){}f&&s.setCryptoStoreFactory((function(){return new s.IndexedDBCryptoStore(f,"matrix-js-sdk:crypto")}));var l=s;t.default=l,e.matrixcs=s}).call(this,n(6))},function(e,t,n){(function(e){var r=Object.getOwnPropertyDescriptors||function(e){for(var t=Object.keys(e),n={},r=0;r=o)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),c=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),p(n)?r.showHidden=n:n&&t._extend(r,n),b(r.showHidden)&&(r.showHidden=!1),b(r.depth)&&(r.depth=2),b(r.colors)&&(r.colors=!1),b(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=c),l(r,e,r.depth)}function c(e,t){var n=a.styles[t];return n?"["+a.colors[n][0]+"m"+e+"["+a.colors[n][1]+"m":e}function f(e,t){return e}function l(e,n,r){if(e.customInspect&&n&&E(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var i=n.inspect(r,e);return y(i)||(i=l(e,i,r)),i}var o=function(e,t){if(b(t))return e.stylize("undefined","undefined");if(y(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(g(t))return e.stylize(""+t,"number");if(p(t))return e.stylize(""+t,"boolean");if(m(t))return e.stylize("null","null")}(e,n);if(o)return o;var s=Object.keys(n),a=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(s);if(e.showHidden&&(s=Object.getOwnPropertyNames(n)),A(n)&&(s.indexOf("message")>=0||s.indexOf("description")>=0))return u(n);if(0===s.length){if(E(n)){var c=n.name?": "+n.name:"";return e.stylize("[Function"+c+"]","special")}if(v(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(w(n))return e.stylize(Date.prototype.toString.call(n),"date");if(A(n))return u(n)}var f,_="",k=!1,S=["{","}"];(h(n)&&(k=!0,S=["[","]"]),E(n))&&(_=" [Function"+(n.name?": "+n.name:"")+"]");return v(n)&&(_=" "+RegExp.prototype.toString.call(n)),w(n)&&(_=" "+Date.prototype.toUTCString.call(n)),A(n)&&(_=" "+u(n)),0!==s.length||k&&0!=n.length?r<0?v(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),f=k?function(e,t,n,r,i){for(var o=[],s=0,a=t.length;s=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(f,_,S)):S[0]+_+S[1]}function u(e){return"["+Error.prototype.toString.call(e)+"]"}function d(e,t,n,r,i,o){var s,a,c;if((c=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?a=c.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):c.set&&(a=e.stylize("[Setter]","special")),x(r,i)||(s="["+i+"]"),a||(e.seen.indexOf(c.value)<0?(a=m(n)?l(e,c.value,null):l(e,c.value,n-1)).indexOf("\n")>-1&&(a=o?a.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+a.split("\n").map((function(e){return" "+e})).join("\n")):a=e.stylize("[Circular]","special")),b(s)){if(o&&i.match(/^\d+$/))return a;(s=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+a}function h(e){return Array.isArray(e)}function p(e){return"boolean"==typeof e}function m(e){return null===e}function g(e){return"number"==typeof e}function y(e){return"string"==typeof e}function b(e){return void 0===e}function v(e){return _(e)&&"[object RegExp]"===k(e)}function _(e){return"object"==typeof e&&null!==e}function w(e){return _(e)&&"[object Date]"===k(e)}function A(e){return _(e)&&("[object Error]"===k(e)||e instanceof Error)}function E(e){return"function"==typeof e}function k(e){return Object.prototype.toString.call(e)}function S(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(b(o)&&(o=e.env.NODE_DEBUG||""),n=n.toUpperCase(),!s[n])if(new RegExp("\\b"+n+"\\b","i").test(o)){var r=e.pid;s[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else s[n]=function(){};return s[n]},t.inspect=a,a.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},a.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=h,t.isBoolean=p,t.isNull=m,t.isNullOrUndefined=function(e){return null==e},t.isNumber=g,t.isString=y,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=b,t.isRegExp=v,t.isObject=_,t.isDate=w,t.isError=A,t.isFunction=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=n(178);var T=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function I(){var e=new Date,t=[S(e.getHours()),S(e.getMinutes()),S(e.getSeconds())].join(":");return[e.getDate(),T[e.getMonth()],t].join(" ")}function x(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",I(),t.format.apply(t,arguments))},t.inherits=n(179),t._extend=function(e,t){if(!t||!_(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e};var R="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function C(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(R&&e[R]){var t;if("function"!=typeof(t=e[R]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,R,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),i=[],o=0;o>>24]^l[p>>>16&255]^u[m>>>8&255]^d[255&g]^t[y++],s=f[p>>>24]^l[m>>>16&255]^u[g>>>8&255]^d[255&h]^t[y++],a=f[m>>>24]^l[g>>>16&255]^u[h>>>8&255]^d[255&p]^t[y++],c=f[g>>>24]^l[h>>>16&255]^u[p>>>8&255]^d[255&m]^t[y++],h=o,p=s,m=a,g=c;return o=(r[h>>>24]<<24|r[p>>>16&255]<<16|r[m>>>8&255]<<8|r[255&g])^t[y++],s=(r[p>>>24]<<24|r[m>>>16&255]<<16|r[g>>>8&255]<<8|r[255&h])^t[y++],a=(r[m>>>24]<<24|r[g>>>16&255]<<16|r[h>>>8&255]<<8|r[255&p])^t[y++],c=(r[g>>>24]<<24|r[h>>>16&255]<<16|r[p>>>8&255]<<8|r[255&m])^t[y++],[o>>>=0,s>>>=0,a>>>=0,c>>>=0]}var a=[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 n=[],r=[],i=[[],[],[],[]],o=[[],[],[],[]],s=0,a=0,c=0;c<256;++c){var f=a^a<<1^a<<2^a<<3^a<<4;f=f>>>8^255&f^99,n[s]=f,r[f]=s;var l=e[s],u=e[l],d=e[u],h=257*e[f]^16843008*f;i[0][s]=h<<24|h>>>8,i[1][s]=h<<16|h>>>16,i[2][s]=h<<8|h>>>24,i[3][s]=h,h=16843009*d^65537*u^257*l^16843008*s,o[0][f]=h<<24|h>>>8,o[1][f]=h<<16|h>>>16,o[2][f]=h<<8|h>>>24,o[3][f]=h,0===s?s=a=1:(s=l^e[e[e[d^l]]],a^=e[e[a]])}return{SBOX:n,INV_SBOX:r,SUB_MIX:i,INV_SUB_MIX:o}}();function f(e){this._key=i(e),this._reset()}f.blockSize=16,f.keySize=32,f.prototype.blockSize=f.blockSize,f.prototype.keySize=f.keySize,f.prototype._reset=function(){for(var e=this._key,t=e.length,n=t+6,r=4*(n+1),i=[],o=0;o>>24,s=c.SBOX[s>>>24]<<24|c.SBOX[s>>>16&255]<<16|c.SBOX[s>>>8&255]<<8|c.SBOX[255&s],s^=a[o/t|0]<<24):t>6&&o%t==4&&(s=c.SBOX[s>>>24]<<24|c.SBOX[s>>>16&255]<<16|c.SBOX[s>>>8&255]<<8|c.SBOX[255&s]),i[o]=i[o-t]^s}for(var f=[],l=0;l>>24]]^c.INV_SUB_MIX[1][c.SBOX[d>>>16&255]]^c.INV_SUB_MIX[2][c.SBOX[d>>>8&255]]^c.INV_SUB_MIX[3][c.SBOX[255&d]]}this._nRounds=n,this._keySchedule=i,this._invKeySchedule=f},f.prototype.encryptBlockRaw=function(e){return s(e=i(e),this._keySchedule,c.SUB_MIX,c.SBOX,this._nRounds)},f.prototype.encryptBlock=function(e){var t=this.encryptBlockRaw(e),n=r.allocUnsafe(16);return n.writeUInt32BE(t[0],0),n.writeUInt32BE(t[1],4),n.writeUInt32BE(t[2],8),n.writeUInt32BE(t[3],12),n},f.prototype.decryptBlock=function(e){var t=(e=i(e))[1];e[1]=e[3],e[3]=t;var n=s(e,this._invKeySchedule,c.INV_SUB_MIX,c.INV_SBOX,this._nRounds),o=r.allocUnsafe(16);return o.writeUInt32BE(n[0],0),o.writeUInt32BE(n[3],4),o.writeUInt32BE(n[2],8),o.writeUInt32BE(n[1],12),o},f.prototype.scrub=function(){o(this._keySchedule),o(this._invKeySchedule),o(this._key)},e.exports.AES=f},function(e,t,n){var r=n(3).Buffer,i=n(63);e.exports=function(e,t,n,o){if(r.isBuffer(e)||(e=r.from(e,"binary")),t&&(r.isBuffer(t)||(t=r.from(t,"binary")),8!==t.length))throw new RangeError("salt should be Buffer with 8 byte length");for(var s=n/8,a=r.alloc(s),c=r.alloc(o||0),f=r.alloc(0);s>0||o>0;){var l=new i;l.update(f),l.update(e),t&&l.update(t),f=l.digest();var u=0;if(s>0){var d=a.length-s;u=Math.min(s,f.length),f.copy(a,d,0,u),s-=u}if(u0){var h=c.length-o,p=Math.min(o,f.length-u);f.copy(c,h,u,u+p),o-=p}}return f.fill(0),{key:a,iv:c}}},function(e,t,n){"use strict";var r=n(12),i=n(15),o=i.getNAF,s=i.getJSF,a=i.assert;function c(e,t){this.type=e,this.p=new r(t.p,16),this.red=t.prime?r.red(t.prime):r.mont(this.p),this.zero=new r(0).toRed(this.red),this.one=new r(1).toRed(this.red),this.two=new r(2).toRed(this.red),this.n=t.n&&new r(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var n=this.n&&this.p.div(this.n);!n||n.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function f(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){a(e.precomputed);var n=e._getDoubles(),r=o(t,1,this._bitLength),i=(1<=c;t--)f=(f<<1)+r[t];s.push(f)}for(var l=this.jpoint(null,null,null),u=this.jpoint(null,null,null),d=i;d>0;d--){for(c=0;c=0;f--){for(t=0;f>=0&&0===s[f];f--)t++;if(f>=0&&t++,c=c.dblp(t),f<0)break;var l=s[f];a(0!==l),c="affine"===e.type?l>0?c.mixedAdd(i[l-1>>1]):c.mixedAdd(i[-l-1>>1].neg()):l>0?c.add(i[l-1>>1]):c.add(i[-l-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,n,r,i){for(var a=this._wnafT1,c=this._wnafT2,f=this._wnafT3,l=0,u=0;u=1;u-=2){var h=u-1,p=u;if(1===a[h]&&1===a[p]){var m=[t[h],null,null,t[p]];0===t[h].y.cmp(t[p].y)?(m[1]=t[h].add(t[p]),m[2]=t[h].toJ().mixedAdd(t[p].neg())):0===t[h].y.cmp(t[p].y.redNeg())?(m[1]=t[h].toJ().mixedAdd(t[p]),m[2]=t[h].add(t[p].neg())):(m[1]=t[h].toJ().mixedAdd(t[p]),m[2]=t[h].toJ().mixedAdd(t[p].neg()));var g=[-3,-1,-5,-7,0,7,5,1,3],y=s(n[h],n[p]);l=Math.max(y[0].length,l),f[h]=new Array(l),f[p]=new Array(l);for(var b=0;b=0;u--){for(var E=0;u>=0;){var k=!0;for(b=0;b=0&&E++,w=w.dblp(E),u<0)break;for(b=0;b0?S=c[b][T-1>>1]:T<0&&(S=c[b][-T-1>>1].neg()),w="affine"===S.type?w.mixedAdd(S):w.add(S))}}for(u=0;u=Math.ceil((e.bitLength()+1)/t.step)},f.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,i=0;i0&&(g+="?"+y.join("&")),s.open("POST",g),this.useAuthorizationHeader&&s.setRequestHeader("Authorization","Bearer "+this.opts.accessToken),s.setRequestHeader("Content-Type",i),s.send(l),p=t.promise,p.abort=s.abort.bind(s)}else{const e={};r&&c&&(e.filename=c),p=this.authedRequest(n.callback,"POST","/upload",e,l,{prefix:"/_matrix/media/r0",headers:{"Content-Type":i},json:!1,bodyParser:m})}const g=this,y=p.finally((function(){for(let e=0;e{b&&(m&&a.clearTimeout(m),m=a.setTimeout((function(){y=!0,g&&g.abort&&g.abort(),p.reject(new l({error:"Locally timed out waiting for a response",errcode:"ORG.MATRIX.JSSDK_TIMEOUT",timeout:b}))}),b))};v();const _=p.promise;try{g=this.opts.request({uri:n,method:t,withCredentials:!1,qs:r,qsStringifyOptions:s.qsStringifyOptions,useQuerystring:!0,body:i,json:!1,timeout:b,headers:u||{},_matrix_opts:this.opts},(function(t,n,r){if(b&&(a.clearTimeout(m),y))return;f(p,e,c.opts.onlyData,h)(t,n,r)})),g&&("onprogress"in g&&(g.onprogress=e=>{v()}),g.abort&&(_.abort=g.abort.bind(g)))}catch(t){p.reject(t),e&&e(t)}return _}};const f=function(e,t,n,r){return t=t||function(){},function(o,s,a){if(!o)try{s.statusCode>=400?o=function(e,t){const n=e.statusCode,r=function(e){let t;e.getResponseHeader?t=e.getResponseHeader("Content-Type"):e.headers&&(t=e.headers["content-type"]||null);if(!t)return null;try{return(0,i.parse)(t)}catch(e){throw new Error(`Error parsing Content-Type '${t}': ${e}`)}}(e);let o;if(r)if("application/json"===r.type){const e="object"==typeof t?t:JSON.parse(t);o=new l(e)}else"text/plain"===r.type&&(o=new Error(`Server returned ${n} error: ${t}`));o||(o=new Error(`Server returned ${n} error`));return o.httpStatus=n,o}(s,a):r&&(a=r(a))}catch(e){o=new Error(`Error parsing server response: ${e}`)}if(o)e.reject(o),t(o);else{const r={code:s.statusCode,headers:s.headers,data:a};e.resolve(n?a:r),t(null,n?a:r)}}};function l(e){e=e||{},this.errcode=e.errcode,this.name=e.errcode||"Unknown error code",this.message=e.error||"Unknown message",this.data=e}l.prototype=Object.create(Error.prototype),l.prototype.constructor=l}).call(this,n(6))},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.getHttpUriForMxc=function(e,t,n,r,o,s){if("string"!=typeof t||!t)return"";if(0!==t.indexOf("mxc://"))return s?t:"";let a=t.slice(6),c="/_matrix/media/r0/download/";const f={};n&&(f.width=Math.round(n));r&&(f.height=Math.round(r));o&&(f.method=o);i.keys(f).length>0&&(c="/_matrix/media/r0/thumbnail/");const l=a.indexOf("#");let u="";l>=0&&(u=a.substr(l),a=a.substr(0,l));return e+c+a+(0===i.keys(f).length?"":"?"+i.encodeParams(f))+u},t.getIdenticonUri=function(e,t,n,r){if(!t)return null;n||(n=96);r||(r=96);const o={width:n,height:r},s=i.encodeUri("/_matrix/media/unstable/identicon/$ident",{$ident:t});return e+s+(0===i.keys(o).length?"":"?"+i.encodeParams(o))};var i=r(n(8))},function(e,t,n){"use strict";function r(e){Object.defineProperty(this,"deviceId",{enumerable:!0,value:e}),this.algorithms=[],this.keys={},this.verified=i.UNVERIFIED,this.known=!1,this.unsigned={},this.signatures={}}Object.defineProperty(t,"__esModule",{value:!0}),t.DeviceInfo=r,r.fromStorage=function(e,t){const n=new r(t);for(const t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n},r.prototype.toStorage=function(){return{algorithms:this.algorithms,keys:this.keys,verified:this.verified,known:this.known,unsigned:this.unsigned,signatures:this.signatures}},r.prototype.getFingerprint=function(){return this.keys["ed25519:"+this.deviceId]},r.prototype.getIdentityKey=function(){return this.keys["curve25519:"+this.deviceId]},r.prototype.getDisplayName=function(){return this.unsigned.device_display_name||null},r.prototype.isBlocked=function(){return this.verified==i.BLOCKED},r.prototype.isVerified=function(){return this.verified==i.VERIFIED},r.prototype.isUnverified=function(){return this.verified==i.UNVERIFIED},r.prototype.isKnown=function(){return 1==this.known},r.DeviceVerification={VERIFIED:1,UNVERIFIED:0,BLOCKED:-1};const i=r.DeviceVerification},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomString=function(e){let t="";const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(let r=0;r2&&void 0!==arguments[2]?arguments[2]:{},r=Object.create(e.prototype);for(var i in n)r[i]=n[i];return r.constructor=t,t.prototype=r,t}},function(e,t,n){var r=n(90),i=n(5);e.exports=function(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?i(e):t}},function(e,t){function n(t){return e.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},n(t)}e.exports=n},function(e,t,n){var r=n(175);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&r(e,t)}},function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE){0;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}}(),e.exports=n(330)},function(e,t,n){(t=e.exports=n(92)).Stream=t,t.Readable=t,t.Writable=n(61),t.Duplex=n(21),t.Transform=n(95),t.PassThrough=n(193)},function(e,t,n){var r=n(11),i=r.Buffer;function o(e,t){for(var n in e)t[n]=e[n]}function s(e,t,n){return i(e,t,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=r:(o(r,t),t.Buffer=s),o(i,s),s.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,n)},s.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=i(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},s.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},s.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){"use strict";(function(t,r,i){var o=n(44);function s(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;e.entry=null;for(;r;){var i=r.callback;t.pendingcb--,i(n),r=r.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}(t,e)}}e.exports=b;var a,c=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?r:o.nextTick;b.WritableState=y;var f=Object.create(n(30));f.inherits=n(2);var l={deprecate:n(192)},u=n(93),d=n(60).Buffer,h=i.Uint8Array||function(){};var p,m=n(94);function g(){}function y(e,t){a=a||n(21),e=e||{};var r=t instanceof a;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,f=e.writableHighWaterMark,l=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(f||0===f)?f:l,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var 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 n=e._writableState,r=n.sync,i=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,i){--t.pendingcb,n?(o.nextTick(i,r),o.nextTick(k,e,t),e._writableState.errorEmitted=!0,e.emit("error",r)):(i(r),e._writableState.errorEmitted=!0,e.emit("error",r),k(e,t))}(e,n,r,t,i);else{var s=A(n);s||n.corked||n.bufferProcessing||!n.bufferedRequest||w(e,n),r?c(_,e,n,s,i):_(e,n,s,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 s(this)}function b(e){if(a=a||n(21),!(p.call(b,this)||this instanceof a))return new b(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)),u.call(this)}function v(e,t,n,r,i,o,s){t.writelen=r,t.writecb=s,t.writing=!0,t.sync=!0,n?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function _(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),k(e,t)}function w(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,i=new Array(r),o=t.corkedRequestsFree;o.entry=n;for(var a=0,c=!0;n;)i[a]=n,n.isBuf||(c=!1),n=n.next,a+=1;i.allBuffers=c,v(e,t,!0,t.length,i,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new s(t),t.bufferedRequestCount=0}else{for(;n;){var f=n.chunk,l=n.encoding,u=n.callback;if(v(e,t,!1,t.objectMode?1:f.length,f,l,u),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function A(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function E(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),k(e,t)}))}function k(e,t){var n=A(t);return n&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,o.nextTick(E,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}f.inherits(b,u),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:l.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(b,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===b&&(e&&e._writableState instanceof y)}})):p=function(e){return e instanceof this},b.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},b.prototype.write=function(e,t,n){var r,i=this._writableState,s=!1,a=!i.objectMode&&(r=e,d.isBuffer(r)||r instanceof h);return a&&!d.isBuffer(e)&&(e=function(e){return d.from(e)}(e)),"function"==typeof t&&(n=t,t=null),a?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof n&&(n=g),i.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),o.nextTick(t,n)}(this,n):(a||function(e,t,n,r){var i=!0,s=!1;return null===n?s=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(s=new TypeError("Invalid non-string/buffer chunk")),s&&(e.emit("error",s),o.nextTick(r,s),i=!1),i}(this,i,e,n))&&(i.pendingcb++,s=function(e,t,n,r,i,o){if(!n){var s=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=d.from(t,n));return t}(t,r,i);r!==s&&(n=!0,i="buffer",r=s)}var a=t.objectMode?1:r.length;t.length+=a;var c=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(b.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),b.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},b.prototype._writev=null,b.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,k(e,t),n&&(t.finished?o.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)},Object.defineProperty(b.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),b.prototype.destroy=m.destroy,b.prototype._undestroy=m.undestroy,b.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n(13),n(190).setImmediate,n(6))},function(e,t,n){"use strict";var r=n(3).Buffer,i=r.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 o(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&&(r.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=f,t=4;break;case"utf8":this.fillLast=a,t=4;break;case"base64":this.text=l,this.end=u,t=3;break;default:return this.write=d,void(this.end=h)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function s(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function a(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n: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 n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function f(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function l(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?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-n))}function u(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function h(e){return e&&e.length?this.write(e):""}t.StringDecoder=o,o.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return i>0&&(e.lastNeed=i-1),i;if(--r=0)return i>0&&(e.lastNeed=i-2),i;if(--r=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=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},o.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,n){"use strict";var r=n(2),i=n(97),o=n(3).Buffer,s=new Array(16);function a(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function c(e,t){return e<>>32-t}function f(e,t,n,r,i,o,s){return c(e+(t&n|~t&r)+i+o|0,s)+t|0}function l(e,t,n,r,i,o,s){return c(e+(t&r|n&~r)+i+o|0,s)+t|0}function u(e,t,n,r,i,o,s){return c(e+(t^n^r)+i+o|0,s)+t|0}function d(e,t,n,r,i,o,s){return c(e+(n^(t|~r))+i+o|0,s)+t|0}r(a,i),a.prototype._update=function(){for(var e=s,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var n=this._a,r=this._b,i=this._c,o=this._d;n=f(n,r,i,o,e[0],3614090360,7),o=f(o,n,r,i,e[1],3905402710,12),i=f(i,o,n,r,e[2],606105819,17),r=f(r,i,o,n,e[3],3250441966,22),n=f(n,r,i,o,e[4],4118548399,7),o=f(o,n,r,i,e[5],1200080426,12),i=f(i,o,n,r,e[6],2821735955,17),r=f(r,i,o,n,e[7],4249261313,22),n=f(n,r,i,o,e[8],1770035416,7),o=f(o,n,r,i,e[9],2336552879,12),i=f(i,o,n,r,e[10],4294925233,17),r=f(r,i,o,n,e[11],2304563134,22),n=f(n,r,i,o,e[12],1804603682,7),o=f(o,n,r,i,e[13],4254626195,12),i=f(i,o,n,r,e[14],2792965006,17),n=l(n,r=f(r,i,o,n,e[15],1236535329,22),i,o,e[1],4129170786,5),o=l(o,n,r,i,e[6],3225465664,9),i=l(i,o,n,r,e[11],643717713,14),r=l(r,i,o,n,e[0],3921069994,20),n=l(n,r,i,o,e[5],3593408605,5),o=l(o,n,r,i,e[10],38016083,9),i=l(i,o,n,r,e[15],3634488961,14),r=l(r,i,o,n,e[4],3889429448,20),n=l(n,r,i,o,e[9],568446438,5),o=l(o,n,r,i,e[14],3275163606,9),i=l(i,o,n,r,e[3],4107603335,14),r=l(r,i,o,n,e[8],1163531501,20),n=l(n,r,i,o,e[13],2850285829,5),o=l(o,n,r,i,e[2],4243563512,9),i=l(i,o,n,r,e[7],1735328473,14),n=u(n,r=l(r,i,o,n,e[12],2368359562,20),i,o,e[5],4294588738,4),o=u(o,n,r,i,e[8],2272392833,11),i=u(i,o,n,r,e[11],1839030562,16),r=u(r,i,o,n,e[14],4259657740,23),n=u(n,r,i,o,e[1],2763975236,4),o=u(o,n,r,i,e[4],1272893353,11),i=u(i,o,n,r,e[7],4139469664,16),r=u(r,i,o,n,e[10],3200236656,23),n=u(n,r,i,o,e[13],681279174,4),o=u(o,n,r,i,e[0],3936430074,11),i=u(i,o,n,r,e[3],3572445317,16),r=u(r,i,o,n,e[6],76029189,23),n=u(n,r,i,o,e[9],3654602809,4),o=u(o,n,r,i,e[12],3873151461,11),i=u(i,o,n,r,e[15],530742520,16),n=d(n,r=u(r,i,o,n,e[2],3299628645,23),i,o,e[0],4096336452,6),o=d(o,n,r,i,e[7],1126891415,10),i=d(i,o,n,r,e[14],2878612391,15),r=d(r,i,o,n,e[5],4237533241,21),n=d(n,r,i,o,e[12],1700485571,6),o=d(o,n,r,i,e[3],2399980690,10),i=d(i,o,n,r,e[10],4293915773,15),r=d(r,i,o,n,e[1],2240044497,21),n=d(n,r,i,o,e[8],1873313359,6),o=d(o,n,r,i,e[15],4264355552,10),i=d(i,o,n,r,e[6],2734768916,15),r=d(r,i,o,n,e[13],1309151649,21),n=d(n,r,i,o,e[4],4149444226,6),o=d(o,n,r,i,e[11],3174756917,10),i=d(i,o,n,r,e[2],718787259,15),r=d(r,i,o,n,e[9],3951481745,21),this._a=this._a+n|0,this._b=this._b+r|0,this._c=this._c+i|0,this._d=this._d+o|0},a.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=o.allocUnsafe(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=a},function(e,t,n){"use strict";var r=n(11).Buffer,i=n(2),o=n(97),s=new Array(16),a=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],c=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],f=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],l=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],u=[0,1518500249,1859775393,2400959708,2840853838],d=[1352829926,1548603684,1836072691,2053994217,0];function h(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function p(e,t){return e<>>32-t}function m(e,t,n,r,i,o,s,a){return p(e+(t^n^r)+o+s|0,a)+i|0}function g(e,t,n,r,i,o,s,a){return p(e+(t&n|~t&r)+o+s|0,a)+i|0}function y(e,t,n,r,i,o,s,a){return p(e+((t|~n)^r)+o+s|0,a)+i|0}function b(e,t,n,r,i,o,s,a){return p(e+(t&r|n&~r)+o+s|0,a)+i|0}function v(e,t,n,r,i,o,s,a){return p(e+(t^(n|~r))+o+s|0,a)+i|0}i(h,o),h.prototype._update=function(){for(var e=s,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var n=0|this._a,r=0|this._b,i=0|this._c,o=0|this._d,h=0|this._e,_=0|this._a,w=0|this._b,A=0|this._c,E=0|this._d,k=0|this._e,S=0;S<80;S+=1){var T,I;S<16?(T=m(n,r,i,o,h,e[a[S]],u[0],f[S]),I=v(_,w,A,E,k,e[c[S]],d[0],l[S])):S<32?(T=g(n,r,i,o,h,e[a[S]],u[1],f[S]),I=b(_,w,A,E,k,e[c[S]],d[1],l[S])):S<48?(T=y(n,r,i,o,h,e[a[S]],u[2],f[S]),I=y(_,w,A,E,k,e[c[S]],d[2],l[S])):S<64?(T=b(n,r,i,o,h,e[a[S]],u[3],f[S]),I=g(_,w,A,E,k,e[c[S]],d[3],l[S])):(T=v(n,r,i,o,h,e[a[S]],u[4],f[S]),I=m(_,w,A,E,k,e[c[S]],d[4],l[S])),n=h,h=o,o=p(i,10),i=r,r=T,_=k,k=E,E=p(A,10),A=w,w=I}var x=this._b+i+E|0;this._b=this._c+o+k|0,this._c=this._d+h+_|0,this._d=this._e+n+w|0,this._e=this._a+r+A|0,this._a=x},h.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=r.alloc?r.alloc(20):new r(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=h},function(e,t,n){(t=e.exports=function(e){e=e.toLowerCase();var n=t[e];if(!n)throw new Error(e+" is not supported (we accept pull requests)");return new n}).sha=n(205),t.sha1=n(206),t.sha224=n(207),t.sha256=n(98),t.sha384=n(208),t.sha512=n(99)},function(e,t,n){"use strict";var r=n(14);function i(e){this.options=e,this.type=this.options.type,this.blockSize=8,this._init(),this.buffer=new Array(this.blockSize),this.bufferOff=0}e.exports=i,i.prototype._init=function(){},i.prototype.update=function(e){return 0===e.length?[]:"decrypt"===this.type?this._updateDecrypt(e):this._updateEncrypt(e)},i.prototype._buffer=function(e,t){for(var n=Math.min(this.buffer.length-this.bufferOff,e.length-t),r=0;r0;r--)t+=this._buffer(e,t),n+=this._flushBuffer(i,n);return t+=this._buffer(e,t),i},i.prototype.final=function(e){var t,n;return e&&(t=this.update(e)),n="encrypt"===this.type?this._finalEncrypt():this._finalDecrypt(),t?t.concat(n):n},i.prototype._pad=function(e,t){if(0===t)return!1;for(;t=0||!n.umod(e.prime1)||!n.umod(e.prime2);)n=new r(i(t));return n}e.exports=o,o.getr=s}).call(this,n(11).Buffer)},function(e,t,n){"use strict";var r=t;r.version=n(234).version,r.utils=n(15),r.rand=n(69),r.curve=n(118),r.curves=n(72),r.ec=n(245),r.eddsa=n(249)},function(e,t,n){"use strict";var r,i=t,o=n(73),s=n(118),a=n(15).assert;function c(e){"short"===e.type?this.curve=new s.short(e):"edwards"===e.type?this.curve=new s.edwards(e):this.curve=new s.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,a(this.g.validate(),"Invalid curve"),a(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function f(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var n=new c(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:n}),n}})}i.PresetCurve=c,f("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),f("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),f("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),f("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),f("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),f("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),f("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=n(244)}catch(e){r=void 0}f("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})},function(e,t,n){var r=t;r.utils=n(17),r.common=n(33),r.sha=n(238),r.ripemd=n(242),r.hmac=n(243),r.sha1=r.sha.sha1,r.sha256=r.sha.sha256,r.sha224=r.sha.sha224,r.sha384=r.sha.sha384,r.sha512=r.sha.sha512,r.ripemd160=r.ripemd.ripemd160},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MemoryCryptoStore=void 0;var i=n(4),o=r(n(8));t.MemoryCryptoStore=class{constructor(){this._outgoingRoomKeyRequests=[],this._account=null,this._crossSigningKeys=null,this._sessions={},this._sessionProblems={},this._notifiedErrorDevices={},this._inboundGroupSessions={},this._inboundGroupSessionsWithheld={},this._deviceData=null,this._rooms={},this._sessionsNeedingBackup={}}deleteAllData(){return Promise.resolve()}getOrAddOutgoingRoomKeyRequest(e){const t=e.requestBody;return o.promiseTry(()=>{const n=this._getOutgoingRoomKeyRequest(t);return n?(i.logger.log("already have key request outstanding for "+`${t.room_id} / ${t.session_id}: `+"not sending another"),n):(i.logger.log(`enqueueing key request for ${t.room_id} / `+t.session_id),this._outgoingRoomKeyRequests.push(e),e)})}getOutgoingRoomKeyRequest(e){return Promise.resolve(this._getOutgoingRoomKeyRequest(e))}_getOutgoingRoomKeyRequest(e){for(const t of this._outgoingRoomKeyRequests)if(o.deepCompare(t.requestBody,e))return t;return null}getOutgoingRoomKeyRequestByState(e){for(const t of this._outgoingRoomKeyRequests)for(const n of e)if(t.state===n)return Promise.resolve(t);return Promise.resolve(null)}getOutgoingRoomKeyRequestsByTarget(e,t,n){const r=[];for(const i of this._outgoingRoomKeyRequests)for(const o of n)i.state===o&&i.recipients.includes({userId:e,deviceId:t})&&r.push(i);return Promise.resolve(r)}updateOutgoingRoomKeyRequest(e,t,n){for(const r of this._outgoingRoomKeyRequests)if(r.requestId===e)return r.state!=t?(i.logger.warn(`Cannot update room key request from ${t} `+`as it was already updated to ${r.state}`),Promise.resolve(null)):(Object.assign(r,n),Promise.resolve(r));return Promise.resolve(null)}deleteOutgoingRoomKeyRequest(e,t){for(let n=0;ne.time-t.time)}async getEndToEndSessionProblem(e,t){const n=this._sessionProblems[e]||[];if(!n.length)return null;const r=n[n.length-1];for(const e of n)if(e.time>t)return Object.assign({},e,{fixed:r.fixed});return r.fixed?null:r}async filterOutNotifiedErrorDevices(e){const t=this._notifiedErrorDevices,n=[];for(const r of e){const{userId:e,deviceInfo:i}=r;e in t?i.deviceId in t[e]||(n.push(r),t[e][i.deviceId]=!0):(n.push(r),t[e]={[i.deviceId]:!0})}return n}getEndToEndInboundGroupSession(e,t,n,r){const i=e+"/"+t;r(this._inboundGroupSessions[i]||null,this._inboundGroupSessionsWithheld[i]||null)}getAllEndToEndInboundGroupSessions(e,t){for(const e of Object.keys(this._inboundGroupSessions))t({senderKey:e.substr(0,43),sessionId:e.substr(44),sessionData:this._inboundGroupSessions[e]});t(null)}addEndToEndInboundGroupSession(e,t,n,r){const i=e+"/"+t;void 0===this._inboundGroupSessions[i]&&(this._inboundGroupSessions[i]=n)}storeEndToEndInboundGroupSession(e,t,n,r){this._inboundGroupSessions[e+"/"+t]=n}storeEndToEndInboundGroupSessionWithheld(e,t,n,r){const i=e+"/"+t;this._inboundGroupSessionsWithheld[i]=n}getEndToEndDeviceData(e,t){t(this._deviceData)}storeEndToEndDeviceData(e,t){this._deviceData=e}storeEndToEndRoom(e,t,n){this._rooms[e]=t}getEndToEndRooms(e,t){t(this._rooms)}getSessionsNeedingBackup(e){const t=[];for(const n in this._sessionsNeedingBackup)if(this._inboundGroupSessions[n]&&(t.push({senderKey:n.substr(0,43),sessionId:n.substr(44),sessionData:this._inboundGroupSessions[n]}),e&&n.length>=e))break;return Promise.resolve(t)}countSessionsNeedingBackup(){return Promise.resolve(Object.keys(this._sessionsNeedingBackup).length)}unmarkSessionsNeedingBackup(e){for(const t of e){const e=t.senderKey+"/"+t.sessionId;delete this._sessionsNeedingBackup[e]}return Promise.resolve()}markSessionsNeedingBackup(e){for(const t of e){const e=t.senderKey+"/"+t.sessionId;this._sessionsNeedingBackup[e]=!0}return Promise.resolve()}doTxn(e,t,n){return Promise.resolve(n(null))}}},function(e,t,n){"use strict";var r=n(276),i=n(277);function o(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}t.parse=v,t.resolve=function(e,t){return v(e,!1,!0).resolve(t)},t.resolveObject=function(e,t){return e?v(e,!1,!0).resolveObject(t):t},t.format=function(e){i.isString(e)&&(e=v(e));return e instanceof o?e.format():o.prototype.format.call(e)},t.Url=o;var s=/^([a-z0-9.+-]+:)/i,a=/:[0-9]*$/,c=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,f=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),l=["'"].concat(f),u=["%","/","?",";","#"].concat(l),d=["/","?","#"],h=/^[+a-z0-9A-Z_-]{0,63}$/,p=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,m={javascript:!0,"javascript:":!0},g={javascript:!0,"javascript:":!0},y={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},b=n(278);function v(e,t,n){if(e&&i.isObject(e)&&e instanceof o)return e;var r=new o;return r.parse(e,t,n),r}o.prototype.parse=function(e,t,n){if(!i.isString(e))throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var o=e.indexOf("?"),a=-1!==o&&o127?M+="x":M+=P[D];if(!M.match(h)){var N=C.slice(0,I),j=C.slice(I+1),U=P.match(p);U&&(N.push(U[1]),j.unshift(U[2])),j.length&&(v="/"+j.join(".")+v),this.hostname=N.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),R||(this.hostname=r.toASCII(this.hostname));var L=this.port?":"+this.port:"",F=this.hostname||"";this.host=F+L,this.href+=this.host,R&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==v[0]&&(v="/"+v))}if(!m[A])for(I=0,O=l.length;I0)&&n.host.split("@"))&&(n.auth=R.shift(),n.host=n.hostname=R.shift());return n.search=e.search,n.query=e.query,i.isNull(n.pathname)&&i.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.href=n.format(),n}if(!E.length)return n.pathname=null,n.search?n.path="/"+n.search:n.path=null,n.href=n.format(),n;for(var S=E.slice(-1)[0],T=(n.host||e.host||E.length>1)&&("."===S||".."===S)||""===S,I=0,x=E.length;x>=0;x--)"."===(S=E[x])?E.splice(x,1):".."===S?(E.splice(x,1),I++):I&&(E.splice(x,1),I--);if(!w&&!A)for(;I--;I)E.unshift("..");!w||""===E[0]||E[0]&&"/"===E[0].charAt(0)||E.unshift(""),T&&"/"!==E.join("/").substr(-1)&&E.push("");var R,C=""===E[0]||E[0]&&"/"===E[0].charAt(0);k&&(n.hostname=n.host=C?"":E.length?E.shift():"",(R=!!(n.host&&n.host.indexOf("@")>0)&&n.host.split("@"))&&(n.auth=R.shift(),n.host=n.hostname=R.shift()));return(w=w||n.host&&E.length)&&!C&&E.unshift(""),E.length?n.pathname=E.join("/"):(n.pathname=null,n.path=null),i.isNull(n.pathname)&&i.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.auth=e.auth||n.auth,n.slashes=n.slashes||e.slashes,n.href=n.format(),n},o.prototype.parseHost=function(){var e=this.host,t=a.exec(e);t&&(":"!==(t=t[0])&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PushProcessor=s;var r=n(8);const i=["override","content","room","sender","underride"],o=[{rule_id:".m.rule.tombstone",default:!0,enabled:!0,conditions:[{kind:"event_match",key:"type",pattern:"m.room.tombstone"},{kind:"event_match",key:"state_key",pattern:""}],actions:["notify",{set_tweak:"highlight",value:!0}]},{rule_id:".m.rule.reaction",default:!0,enabled:!0,conditions:[{kind:"event_match",key:"type",pattern:"m.reaction"}],actions:["dont_notify"]}];function s(e){const t={},n=(e,t,n)=>{for(let r=0;r]*)([0-9]*)$/);if(!o)return!1;const s=o[1],a=parseInt(o[2]);if(isNaN(a))return!1;switch(s){case"":case"==":return i==a;case"<":return i":return i>a;case"<=":return i<=a;case">=":return i>=a;default:return!1}},u=function(t,n){let i=n.getContent();if(n.isEncrypted()&&n.getClearContent()&&(i=n.getClearContent()),!i||!i.body||"string"!=typeof i.body)return!1;const o=e.getRoom(n.getRoomId());if(!(o&&o.currentState&&o.currentState.members&&o.currentState.getMember(e.credentials.userId)))return!1;const s=o.currentState.getMember(e.credentials.userId).name,a=new RegExp("(^|\\W)"+(0,r.escapeRegExp)(s)+"(\\W|$)","i");return i.body.search(a)>-1},d=function(e,t){return!1},h=function(e,t){if(!e.key)return!1;const n=m(e.key,t);if("string"!=typeof n)return!1;if(e.value)return e.value===n;let r;return r="content.body"==e.key?p("(^|\\W)",e.pattern,"(\\W|$)"):p("^",e.pattern,"$"),!!n.match(r)},p=function(e,n,i){return t[n]?t[n]:(t[n]=new RegExp(e+(0,r.globToRegexp)(n)+i,"i"),t[n])},m=function(e,t){const n=e.split(".");let i;const o=n[0];for("content"===o?(i=t.getContent(),n.shift()):"type"===o?(i=t.getType(),n.shift()):i=t.event;n.length>0;){const e=n.shift();if((0,r.isNullOrUndefined)(i[e]))return null;i=i[e]}return i},g=function(t,r){const i=function(t,r){if(!r||!r.device)return null;if(t.getSender()==e.credentials.userId)return null;const i=Object.keys(r.device);for(let e=0;et.rule_id===e.rule_id)){const t=e.rule_id;console.warn(`Adding default global override for ${t}`),n.push(e)}}return t}(e.pushRules);return g(t,n)},this.getPushRuleById=function(t){for(const n of["device","global"])if(void 0!==e.pushRules[n])for(const r of i)if(void 0!==e.pushRules[n][r])for(const i of e.pushRules[n][r])if(i.rule_id===t)return i;return null}}s.actionListToActionsObject=function(e){const t={notify:!1,tweaks:{}};for(let n=0;n{const t=o.find(t=>t.rule_id===e.rule_id);return t?(e.default=t.default,e.conditions=t.conditions,e.actions=t.actions,e):e}),t}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Filter=o;var r=n(284);function i(e,t,n){const r=t.split(".");let i=e;for(let e=0;et!==e)}if(r)return t+" ("+e+")";return t}(this.userId,e.getDirectionalContent().displayname,t),this.rawDisplayName=e.getDirectionalContent().displayname||this.userId,n!==this.membership&&(this._updateModifiedTime(),this.emit("RoomMember.membership",e,this,n)),r!==this.name&&(this._updateModifiedTime(),this.emit("RoomMember.name",e,this,r))},a.prototype.setPowerLevelEvent=function(e){if("m.room.power_levels"!==e.getType())return;const t=e.getDirectionalContent();let n=t.users_default||0;s.forEach(s.values(t.users),(function(e){n=Math.max(n,e)}));const r=this.powerLevel,i=this.powerLevelNorm;t.users&&void 0!==t.users[this.userId]?this.powerLevel=t.users[this.userId]:void 0!==t.users_default?this.powerLevel=t.users_default:this.powerLevel=0,this.powerLevelNorm=0,n>0&&(this.powerLevelNorm=100*this.powerLevel/n),r===this.powerLevel&&i===this.powerLevelNorm||(this._updateModifiedTime(),this.emit("RoomMember.powerLevel",e,this))},a.prototype.setTypingEvent=function(e){if("m.typing"!==e.getType())return;const t=this.typing;this.typing=!1;const n=e.getContent().user_ids;s.isArray(n)&&(-1!==n.indexOf(this.userId)&&(this.typing=!0),t!==this.typing&&(this._updateModifiedTime(),this.emit("RoomMember.typing",e,this)))},a.prototype._updateModifiedTime=function(){this._modified=Date.now()},a.prototype.getLastModifiedTime=function(){return this._modified},a.prototype.isKicked=function(){return"leave"===this.membership&&this.events.member.getSender()!==this.events.member.getStateKey()},a.prototype.getDMInviter=function(){if(this.events.member){const e=this.events.member;let t=e.getContent(),n=e.getSender();if("join"===t.membership&&(t=e.getPrevContent(),n=e.getUnsigned().prev_sender),"invite"===t.membership&&t.is_direct)return n}},a.prototype.getAvatarUrl=function(e,t,n,r,i,s){void 0===i&&(i=!0);const a=this.getMxcAvatarUrl();if(!a&&!i)return null;const c=(0,o.getHttpUriForMxc)(e,a,t,n,r,s);return c||(i?(0,o.getIdenticonUri)(e,this.userId,t,n):null)},a.prototype.getMxcAvatarUrl=function(){return this.events.member?this.events.member.getDirectionalContent().avatar_url:this.user?this.user.avatarUrl:null}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ReEmitter=void 0;t.ReEmitter=class{constructor(e){this.target=e,this.boundHandlers={}}_handleEvent(e,...t){this.target.emit(e,...t)}reEmit(e,t){const n=(t,...n)=>{t(...n,e)};for(const r of t){void 0===this.boundHandlers[r]&&(this.boundHandlers[r]=this._handleEvent.bind(this,r));const t=n.bind(this,this.boundHandlers[r]);e.on(r,t)}}}},function(e,t,n){"use strict";function r(e,t){const n=`Store is invalid because ${e}, `+"please stop the client, delete all data and start the client again",r=Reflect.construct(Error,[n]);return Reflect.setPrototypeOf(r,Reflect.getPrototypeOf(this)),r.reason=e,r.value=t,r}function i(e){const t=`Crypto store is invalid because ${e}, `+"please stop the client, delete all data and start the client again",n=Reflect.construct(Error,[t]);return Reflect.setPrototypeOf(n,Reflect.getPrototypeOf(this)),n.reason=e,n.name="InvalidCryptoStoreError",n}Object.defineProperty(t,"__esModule",{value:!0}),t.InvalidStoreError=r,t.InvalidCryptoStoreError=i,r.TOGGLED_LAZY_LOADING="TOGGLED_LAZY_LOADING",r.prototype=Object.create(Error.prototype,{constructor:{value:Error,enumerable:!1,writable:!0,configurable:!0}}),Reflect.setPrototypeOf(r,Error),i.TOO_NEW="TOO_NEW",i.prototype=Object.create(Error.prototype,{constructor:{value:Error,enumerable:!1,writable:!0,configurable:!0}}),Reflect.setPrototypeOf(i,Error)},function(e,t,n){"use strict";for(var r=/[\\\"\x00-\x1F]/g,i={},o=0;o<32;++o)i[String.fromCharCode(o)]="\\U"+("0000"+o.toString(16)).slice(-4).toUpperCase();function s(e){return r.lastIndex=0,e.replace(r,(function(e){return i[e]}))}function a(e){switch(typeof e){case"string":return'"'+s(e)+'"';case"number":return isFinite(e)?e:"null";case"boolean":return e;case"object":return null===e?"null":Array.isArray(e)?function(e){for(var t="[",n="",r=0;re+": "+t[e]).join(", "));return n+="]",n}(this,n)}}t.DecryptionError=o;class s extends Error{constructor(e,t){super(e),this.name="UnknownDeviceError",this.devices=t}}t.UnknownDeviceError=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VerificationRequest=t.PHASE_DONE=t.PHASE_CANCELLED=t.PHASE_STARTED=t.PHASE_REQUESTED=t.PHASE_UNSENT=t.DONE_TYPE=t.CANCEL_TYPE=t.START_TYPE=t.REQUEST_TYPE=t.EVENT_PREFIX=void 0;var r=n(4),i=n(304),o=n(10),s=n(37);const a="m.key.verification.";t.EVENT_PREFIX=a;const c=a+"request";t.REQUEST_TYPE=c;const f=a+"start";t.START_TYPE=f;const l=a+"cancel";t.CANCEL_TYPE=l;t.DONE_TYPE="m.key.verification.done";t.PHASE_UNSENT=1;t.PHASE_REQUESTED=2;t.PHASE_STARTED=4;t.PHASE_CANCELLED=5;t.PHASE_DONE=6;class u extends o.EventEmitter{constructor(e,t,n,r){super(),this.channel=e,this._verificationMethods=t,this._client=r,this._commonMethods=[],this._setPhase(1,!1),this._requestEvent=null,this._otherUserId=n,this._initiatedByMe=null,this._startTimestamp=null}static validateEvent(e,t,n,i){const o=t.getContent();if(!e.startsWith(a))return!1;if(e===c&&!Array.isArray(o.methods))return!1;if(!(e!==c&&e!==f||"string"==typeof o.from_device&&0!==o.from_device.length))return!1;if(Number.isFinite(n)){const e=Date.now()-n;if(e>597e3||e<-3e5)return r.logger.log("received verification that is too old or from the future"),!1}return!0}get methods(){return this._commonMethods}get timeout(){const e=Date.now()-this._startTimestamp;return Math.max(0,6e5-e)}get event(){return this._requestEvent}get phase(){return this._phase}get verifier(){return this._verifier}get pending(){return 1!==this._phase&&6!==this._phase&&5!==this._phase}get initiatedByMe(){return this._initiatedByMe}get requestingUserId(){return this.initiatedByMe?this._client.getUserId():this._otherUserId}get receivingUserId(){return this.initiatedByMe?this._otherUserId:this._client.getUserId()}beginKeyVerification(e,t=null){if(!this._verifier&&this._hasValidPreStartPhase()){if(this._commonMethods.length&&!this._commonMethods.includes(e))throw(0,s.newUnknownMethodError)();if(this._verifier=this._createVerifier(e,null,t),!this._verifier)throw(0,s.newUnknownMethodError)()}return this._verifier}async sendRequest(){if(1===this._phase){this._initiatedByMe=!0,this._setPhase(2,!1);const e=[...this._verificationMethods.keys()];await this.channel.send(c,{methods:e}),this.emit("change")}}async cancel({reason:e="User declined",code:t="m.user"}={}){if(5!==this._phase){if(this._verifier)return this._verifier.cancel((0,s.errorFactory)(t,e));this._setPhase(5,!1),await this.channel.send(l,{code:t,reason:e}),this.emit("change")}}waitForVerifier(){return this.verifier?Promise.resolve(this.verifier):new Promise(e=>{const t=()=>{this.verifier&&(this.off("change",t),e(this.verifier))};this.on("change",t)})}_setPhase(e,t=!0){this._phase=e,t&&this.emit("change")}async handleEvent(e,t,n){const r=t.getContent();e!==c&&e!==f||null===this._startTimestamp&&(this._startTimestamp=n),e===c?await this._handleRequest(r,t):e===f&&await this._handleStart(r,t),this._verifier&&(e===l||this._verifier.events&&this._verifier.events.includes(e))&&this._verifier.handleEvent(t),e===l?this._handleCancel():"m.key.verification.done"===e&&this._handleDone()}async _handleRequest(e,t){if(1===this._phase){const n=e.methods;this._commonMethods=n.filter(e=>this._verificationMethods.has(e)),this._requestEvent=t,this._initiatedByMe=this._wasSentByMe(t),this._setPhase(2)}else 2!==this._phase&&(r.logger.warn("Ignoring flagged verification request from "+t.getSender()),await this.cancel((0,s.errorFromEvent)((0,s.newUnexpectedMessageError)())))}_hasValidPreStartPhase(){return 2===this._phase||this.channel.constructor.canCreateRequest(f)&&1===this._phase}async _handleStart(e,t){if(this._hasValidPreStartPhase()){const{method:n}=e;this._verificationMethods.has(n)?(1===this.phase&&(this._initiatedByMe=this._wasSentByMe(t)),this._verifier=this._createVerifier(n,t),this._setPhase(4)):await this.cancel((0,s.errorFromEvent)((0,s.newUnknownMethodError)()))}}handleVerifierSend(e,t){e===l?this._handleCancel():e===f&&(1!==this._phase&&2!==this._phase||(this._initiatedByMe=1===this.phase,this._setPhase(4)))}_handleCancel(){5!==this._phase&&this._setPhase(5)}_handleDone(){4===this._phase&&this._setPhase(6)}_createVerifier(e,t=null,n=null){const r=t&&this._wasSentByMe(t),{userId:o,deviceId:s}=this._getVerifierTarget(t,n),a=this._verificationMethods.get(e);if(a)return new a(new i.RequestCallbackChannel(this,this.channel),this._client,o,s,r?null:t);console.warn("could not find verifier constructor for method",e)}_getVerifierTarget(e,t){if(t)return t;{let t;if(e&&!this._wasSentByMe(e))t=e;else{if(!this._requestEvent||this._wasSentByMe(this._requestEvent))throw new Error("can't determine who the verifier should be targeted at. No .request or .start event and no targetDevice");t=this._requestEvent}const n=t.getSender(),r=t.getContent();return{userId:n,deviceId:r&&r.from_device}}}_wasSentByMe(e){if(e.getSender()!==this._client.getUserId())return!1;const t=e.getContent();return!(!t||t.from_device!==this._client.getDeviceId())}}t.VerificationRequest=u},function(e,t,n){"use strict";var r=Object.prototype.hasOwnProperty,i=Array.isArray,o=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),s=function(e,t){for(var n=t&&t.plainObjects?Object.create(null):{},r=0;r1;){var t=e.pop(),n=t.obj[t.prop];if(i(n)){for(var r=[],o=0;o=48&&a<=57||a>=65&&a<=90||a>=97&&a<=122?i+=r.charAt(s):a<128?i+=o[a]:a<2048?i+=o[192|a>>6]+o[128|63&a]:a<55296||a>=57344?i+=o[224|a>>12]+o[128|a>>6&63]+o[128|63&a]:(s+=1,a=65536+((1023&a)<<10|1023&r.charCodeAt(s)),i+=o[240|a>>18]+o[128|a>>12&63]+o[128|a>>6&63]+o[128|63&a])}return i},isBuffer:function(e){return!(!e||"object"!=typeof e)&&!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},isRegExp:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},maybeMap:function(e,t){if(i(e)){for(var n=[],r=0;r"),P=s(")"),M=s("&");t.Base=o,t.DOMAIN=a,t.AT=c,t.COLON=f,t.DOT=l,t.PUNCTUATION=u,t.LOCALHOST=d,t.NL=h,t.NUM=p,t.PLUS=m,t.POUND=g,t.QUERY=v,t.PROTOCOL=y,t.MAILTO=b,t.SLASH=_,t.UNDERSCORE=w,t.SYM=A,t.TLD=E,t.WS=k,t.OPENBRACE=S,t.OPENBRACKET=T,t.OPENANGLEBRACKET=I,t.OPENPAREN=x,t.CLOSEBRACE=R,t.CLOSEBRACKET=C,t.CLOSEANGLEBRACKET=O,t.CLOSEPAREN=P,t.AMPERSAND=M},function(e,t,n){var r=n(172),i=n(173),o=n(174);e.exports=function(e){return r(e)||i(e)||o()}},function(e,t,n){"use strict";var r=n(0),i=n.n(r),o=(n(9),n(159)),s=n.n(o);t.a=function(e){var t=e.message,n=e.userId,r=e.botId,o=e.client,a=function(){switch(t.sender){case"from-me":case n:return"from-me";case r:return"from-bot";default:return"from-support"}};if(e.placeholder)return i.a.createElement("div",{className:"message from-me placeholder"},i.a.createElement("div",{className:"text"},t.content.body));if("m.file"===t.content.msgtype){var c=o.mxcUrlToHttp(t.content.url);return(i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text"},i.a.createElement("a",{href:c,target:"_blank",rel:"noopener noreferrer"},t.content.body))))}if(t.content.formatted_body)return i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text",dangerouslySetInnerHTML:{__html:t.content.formatted_body}}));return i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text"},i.a.createElement(s.a,{options:{linkAttributes:{rel:"noreferrer noopener"}}},t.content.body)))}},function(e,t,n){"use strict";var r=n(0),i=n.n(r);n(9);t.a=function(e){var t=e.handleToggleOpen,n=e.handleExitChat,r=e.opened;return(i.a.createElement("div",{className:"widget-header"},i.a.createElement("button",{type:"button",className:"widget-header-minimize",onClick:t,onKeyPress:t,"aria-label":"Minimize the chat window",title:"Minimize the chat window"},i.a.createElement("span",{className:"btn-icon arrow ".concat(r?"opened":"closed")},"⌃"),i.a.createElement("span",null,"".concat(r?"Hide":"Show"," the chat"))),i.a.createElement("button",{type:"button",className:"widget-header-close",onClick:n,onKeyPress:n,"aria-label":"Exit the chat",title:"Exit the chat"},i.a.createElement("span",{className:"btn-icon"},"×"))))}},function(e,t,n){"use strict";e.exports=n(168)},function(e,t){function n(t){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?e.exports=n=function(e){return typeof e}:e.exports=n=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(t)}e.exports=n},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){"use strict";(function(t,r){var i=n(44);e.exports=v;var o,s=n(91);v.ReadableState=b;n(10).EventEmitter;var a=function(e,t){return e.listeners(t).length},c=n(93),f=n(60).Buffer,l=t.Uint8Array||function(){};var u=Object.create(n(30));u.inherits=n(2);var d=n(187),h=void 0;h=d&&d.debuglog?d.debuglog("stream"):function(){};var p,m=n(188),g=n(94);u.inherits(v,c);var y=["error","close","destroy","pause","resume"];function b(e,t){e=e||{};var r=t instanceof(o=o||n(21));this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var i=e.highWaterMark,s=e.readableHighWaterMark,a=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(s||0===s)?s:a,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,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=n(62).StringDecoder),this.decoder=new p(e.encoding),this.encoding=e.encoding)}function v(e){if(o=o||n(21),!(this instanceof v))return new v(e);this._readableState=new b(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 _(e,t,n,r,i){var o,s=e._readableState;null===t?(s.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,E(e)}(e,s)):(i||(o=function(e,t){var n;r=t,f.isBuffer(r)||r instanceof l||"string"==typeof t||void 0===t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk"));var r;return n}(s,t)),o?e.emit("error",o):s.objectMode||t&&t.length>0?("string"==typeof t||s.objectMode||Object.getPrototypeOf(t)===f.prototype||(t=function(e){return f.from(e)}(t)),r?s.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):w(e,s,t,!0):s.ended?e.emit("error",new Error("stream.push() after EOF")):(s.reading=!1,s.decoder&&!n?(t=s.decoder.write(t),s.objectMode||0!==t.length?w(e,s,t,!1):S(e,s)):w(e,s,t,!1))):r||(s.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=8388608?e=8388608:(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 E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(h("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i.nextTick(k,e):k(e))}function k(e){h("emit readable"),e.emit("readable"),R(e)}function S(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(T,e,t))}function T(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;eo.length?o.length:e;if(s===o.length?i+=o:i+=o.slice(0,e),0===(e-=s)){s===o.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=o.slice(s));break}++r}return t.length-=r,i}(e,t):function(e,t){var n=f.allocUnsafe(e),r=t.head,i=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var o=r.data,s=e>o.length?o.length:e;if(o.copy(n,n.length-e,0,s),0===(e-=s)){s===o.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=o.slice(s));break}++i}return t.length-=i,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function O(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i.nextTick(P,t,e))}function P(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function M(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return h("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?O(this):E(this),null;if(0===(e=A(e,t))&&t.ended)return 0===t.length&&O(this),null;var r,i=t.needReadable;return h("need readable",i),(0===t.length||t.length-e0?C(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&O(this)),null!==r&&this.emit("data",r),r},v.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},v.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,h("pipe count=%d opts=%j",o.pipesCount,t);var c=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?l:v;function f(t,r){h("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,h("cleanup"),e.removeListener("close",y),e.removeListener("finish",b),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",f),n.removeListener("end",l),n.removeListener("end",v),n.removeListener("data",m),d=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){h("onend"),e.end()}o.endEmitted?i.nextTick(c):n.once("end",c),e.on("unpipe",f);var u=function(e){return function(){var t=e._readableState;h("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,R(e))}}(n);e.on("drain",u);var d=!1;var p=!1;function m(t){h("ondata"),p=!1,!1!==e.write(t)||p||((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==M(o.pipes,e))&&!d&&(h("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,p=!0),n.pause())}function g(t){h("onerror",t),v(),e.removeListener("error",g),0===a(e,"error")&&e.emit("error",t)}function y(){e.removeListener("finish",b),v()}function b(){h("onfinish"),e.removeListener("close",y),v()}function v(){h("unpipe"),n.unpipe(e)}return n.on("data",m),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?s(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",g),e.once("close",y),e.once("finish",b),e.emit("pipe",n),o.flowing||(h("pipe resume"),n.resume()),e},v.prototype.unpipe=function(e){var t=this._readableState,n={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,n),this);if(!e){var r=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o=this._blockSize;){for(var o=this._blockOffset;o0;++s)this._length[s]+=a,(a=this._length[s]/4294967296|0)>0&&(this._length[s]-=4294967296*a);return this},o.prototype._update=function(){throw new Error("_update is not implemented")},o.prototype.digest=function(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 n=0;n<4;++n)this._length[n]=0;return t},o.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=o},function(e,t,n){var r=n(2),i=n(24),o=n(3).Buffer,s=[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],a=new Array(64);function c(){this.init(),this._w=a,i.call(this,64,56)}function f(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function u(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function d(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function h(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}r(c,i),c.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},c.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,i=0|this._b,o=0|this._c,a=0|this._d,c=0|this._e,p=0|this._f,m=0|this._g,g=0|this._h,y=0;y<16;++y)n[y]=e.readInt32BE(4*y);for(;y<64;++y)n[y]=0|(((t=n[y-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+n[y-7]+h(n[y-15])+n[y-16];for(var b=0;b<64;++b){var v=g+d(c)+f(c,p,m)+s[b]+n[b]|0,_=u(r)+l(r,i,o)|0;g=m,m=p,p=c,c=a+v|0,a=o,o=i,i=r,r=v+_|0}this._a=r+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=a+this._d|0,this._e=c+this._e|0,this._f=p+this._f|0,this._g=m+this._g|0,this._h=g+this._h|0},c.prototype._hash=function(){var e=o.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=c},function(e,t,n){var r=n(2),i=n(24),o=n(3).Buffer,s=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],a=new Array(160);function c(){this.init(),this._w=a,i.call(this,128,112)}function f(e,t,n){return n^e&(t^n)}function l(e,t,n){return e&t|n&(e|t)}function u(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function d(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function h(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function m(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function g(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}r(c,i),c.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},c.prototype._update=function(e){for(var t=this._w,n=0|this._ah,r=0|this._bh,i=0|this._ch,o=0|this._dh,a=0|this._eh,c=0|this._fh,b=0|this._gh,v=0|this._hh,_=0|this._al,w=0|this._bl,A=0|this._cl,E=0|this._dl,k=0|this._el,S=0|this._fl,T=0|this._gl,I=0|this._hl,x=0;x<32;x+=2)t[x]=e.readInt32BE(4*x),t[x+1]=e.readInt32BE(4*x+4);for(;x<160;x+=2){var R=t[x-30],C=t[x-30+1],O=h(R,C),P=p(C,R),M=m(R=t[x-4],C=t[x-4+1]),D=g(C,R),B=t[x-14],N=t[x-14+1],j=t[x-32],U=t[x-32+1],L=P+N|0,F=O+B+y(L,P)|0;F=(F=F+M+y(L=L+D|0,D)|0)+j+y(L=L+U|0,U)|0,t[x]=F,t[x+1]=L}for(var q=0;q<160;q+=2){F=t[q],L=t[q+1];var z=l(n,r,i),K=l(_,w,A),G=u(n,_),H=u(_,n),V=d(a,k),Q=d(k,a),W=s[q],Y=s[q+1],X=f(a,c,b),J=f(k,S,T),Z=I+Q|0,$=v+V+y(Z,I)|0;$=($=($=$+X+y(Z=Z+J|0,J)|0)+W+y(Z=Z+Y|0,Y)|0)+F+y(Z=Z+L|0,L)|0;var ee=H+K|0,te=G+z+y(ee,H)|0;v=b,I=T,b=c,T=S,c=a,S=k,a=o+$+y(k=E+Z|0,E)|0,o=i,E=A,i=r,A=w,r=n,w=_,n=$+te+y(_=Z+ee|0,Z)|0}this._al=this._al+_|0,this._bl=this._bl+w|0,this._cl=this._cl+A|0,this._dl=this._dl+E|0,this._el=this._el+k|0,this._fl=this._fl+S|0,this._gl=this._gl+T|0,this._hl=this._hl+I|0,this._ah=this._ah+n+y(this._al,_)|0,this._bh=this._bh+r+y(this._bl,w)|0,this._ch=this._ch+i+y(this._cl,A)|0,this._dh=this._dh+o+y(this._dl,E)|0,this._eh=this._eh+a+y(this._el,k)|0,this._fh=this._fh+c+y(this._fl,S)|0,this._gh=this._gh+b+y(this._gl,T)|0,this._hh=this._hh+v+y(this._hl,I)|0},c.prototype._hash=function(){var e=o.allocUnsafe(64);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=c},function(e,t,n){"use strict";var r=n(2),i=n(209),o=n(18),s=n(3).Buffer,a=n(101),c=n(64),f=n(65),l=s.alloc(128);function u(e,t){o.call(this,"digest"),"string"==typeof t&&(t=s.from(t));var n="sha512"===e||"sha384"===e?128:64;(this._alg=e,this._key=t,t.length>n)?t=("rmd160"===e?new c:f(e)).update(t).digest():t.lengthn||o!=o)throw new TypeError("Bad key length")}}).call(this,n(11).Buffer)},function(e,t,n){(function(t){var n;t.browser?n="utf-8":n=parseInt(t.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary";e.exports=n}).call(this,n(13))},function(e,t,n){var r=n(101),i=n(64),o=n(65),s=n(104),a=n(105),c=n(3).Buffer,f=c.alloc(128),l={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function u(e,t,n){var s=function(e){function t(t){return o(e).update(t).digest()}return"rmd160"===e||"ripemd160"===e?function(e){return(new i).update(e).digest()}:"md5"===e?r:t}(e),a="sha512"===e||"sha384"===e?128:64;t.length>a?t=s(t):t.length>>0},t.writeUInt32BE=function(e,t,n){e[0+n]=t>>>24,e[1+n]=t>>>16&255,e[2+n]=t>>>8&255,e[3+n]=255&t},t.ip=function(e,t,n,r){for(var i=0,o=0,s=6;s>=0;s-=2){for(var a=0;a<=24;a+=8)i<<=1,i|=t>>>a+s&1;for(a=0;a<=24;a+=8)i<<=1,i|=e>>>a+s&1}for(s=6;s>=0;s-=2){for(a=1;a<=25;a+=8)o<<=1,o|=t>>>a+s&1;for(a=1;a<=25;a+=8)o<<=1,o|=e>>>a+s&1}n[r+0]=i>>>0,n[r+1]=o>>>0},t.rip=function(e,t,n,r){for(var i=0,o=0,s=0;s<4;s++)for(var a=24;a>=0;a-=8)i<<=1,i|=t>>>a+s&1,i<<=1,i|=e>>>a+s&1;for(s=4;s<8;s++)for(a=24;a>=0;a-=8)o<<=1,o|=t>>>a+s&1,o<<=1,o|=e>>>a+s&1;n[r+0]=i>>>0,n[r+1]=o>>>0},t.pc1=function(e,t,n,r){for(var i=0,o=0,s=7;s>=5;s--){for(var a=0;a<=24;a+=8)i<<=1,i|=t>>a+s&1;for(a=0;a<=24;a+=8)i<<=1,i|=e>>a+s&1}for(a=0;a<=24;a+=8)i<<=1,i|=t>>a+s&1;for(s=1;s<=3;s++){for(a=0;a<=24;a+=8)o<<=1,o|=t>>a+s&1;for(a=0;a<=24;a+=8)o<<=1,o|=e>>a+s&1}for(a=0;a<=24;a+=8)o<<=1,o|=e>>a+s&1;n[r+0]=i>>>0,n[r+1]=o>>>0},t.r28shl=function(e,t){return e<>>28-t};var r=[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,n,i){for(var o=0,s=0,a=r.length>>>1,c=0;c>>r[c]&1;for(c=a;c>>r[c]&1;n[i+0]=o>>>0,n[i+1]=s>>>0},t.expand=function(e,t,n){var r=0,i=0;r=(1&e)<<5|e>>>27;for(var o=23;o>=15;o-=4)r<<=6,r|=e>>>o&63;for(o=11;o>=3;o-=4)i|=e>>>o&63,i<<=6;i|=(31&e)<<1|e>>>31,t[n+0]=r>>>0,t[n+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 n=0,r=0;r<4;r++){n<<=4,n|=i[64*r+(e>>>18-6*r&63)]}for(r=0;r<4;r++){n<<=4,n|=i[256+64*r+(t>>>18-6*r&63)]}return n>>>0};var o=[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,n=0;n>>o[n]&1;return t>>>0},t.padSplit=function(e,t,n){for(var r=e.toString(2);r.length>>1];n=o.r28shl(n,a),i=o.r28shl(i,a),o.pc2(n,i,e.keys,s)}},c.prototype._update=function(e,t,n,r){var i=this._desState,s=o.readUInt32BE(e,t),a=o.readUInt32BE(e,t+4);o.ip(s,a,i.tmp,0),s=i.tmp[0],a=i.tmp[1],"encrypt"===this.type?this._encrypt(i,s,a,i.tmp,0):this._decrypt(i,s,a,i.tmp,0),s=i.tmp[0],a=i.tmp[1],o.writeUInt32BE(n,s,r),o.writeUInt32BE(n,a,r+4)},c.prototype._pad=function(e,t){for(var n=e.length-t,r=t;r>>0,s=d}o.rip(a,s,r,i)},c.prototype._decrypt=function(e,t,n,r,i){for(var s=n,a=t,c=e.keys.length-2;c>=0;c-=2){var f=e.keys[c],l=e.keys[c+1];o.expand(s,e.tmp,0),f^=e.tmp[0],l^=e.tmp[1];var u=o.substitute(f,l),d=s;s=(a^o.permute(u))>>>0,a=d}o.rip(s,a,r,i)}},function(e,t,n){var r=n(32),i=n(3).Buffer,o=n(110);function s(e){var t=e._cipher.encryptBlockRaw(e._prev);return o(e._prev),t}t.encrypt=function(e,t){var n=Math.ceil(t.length/16),o=e._cache.length;e._cache=i.concat([e._cache,i.allocUnsafe(16*n)]);for(var a=0;ae;)n.ishrn(1);if(n.isEven()&&n.iadd(a),n.testn(1)||n.iadd(c),t.cmp(c)){if(!t.cmp(f))for(;n.mod(l).cmp(u);)n.iadd(h)}else for(;n.mod(o).cmp(d);)n.iadd(h);if(g(p=n.shrn(1))&&g(n)&&y(p)&&y(n)&&s.test(p)&&s.test(n))return n}}},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){var r=n(12),i=n(69);function o(e){this.rand=e||new i.Rand}e.exports=o,o.create=function(e){return new o(e)},o.prototype._randbelow=function(e){var t=e.bitLength(),n=Math.ceil(t/8);do{var i=new r(this.rand.generate(n))}while(i.cmp(e)>=0);return i},o.prototype._randrange=function(e,t){var n=t.sub(e);return e.add(this._randbelow(n))},o.prototype.test=function(e,t,n){var i=e.bitLength(),o=r.mont(e),s=new r(1).toRed(o);t||(t=Math.max(1,i/48|0));for(var a=e.subn(1),c=0;!a.testn(c);c++);for(var f=e.shrn(c),l=a.toRed(o);t>0;t--){var u=this._randrange(new r(2),a);n&&n(u);var d=u.toRed(o).redPow(f);if(0!==d.cmp(s)&&0!==d.cmp(l)){for(var h=1;h0;t--){var l=this._randrange(new r(2),s),u=e.gcd(l);if(0!==u.cmpn(1))return u;var d=l.toRed(i).redPow(c);if(0!==d.cmp(o)&&0!==d.cmp(f)){for(var h=1;h>8,s=255&i;o?n.push(o,s):n.push(s)}return n},r.zero2=i,r.toHex=o,r.encode=function(e,t){return"hex"===t?o(e):e}},function(e,t,n){"use strict";var r=t;r.base=n(47),r.short=n(235),r.mont=n(236),r.edwards=n(237)},function(e,t,n){"use strict";var r=n(17).rotr32;function i(e,t,n){return e&t^~e&n}function o(e,t,n){return e&t^e&n^t&n}function s(e,t,n){return e^t^n}t.ft_1=function(e,t,n,r){return 0===e?i(t,n,r):1===e||3===e?s(t,n,r):2===e?o(t,n,r):void 0},t.ch32=i,t.maj32=o,t.p32=s,t.s0_256=function(e){return r(e,2)^r(e,13)^r(e,22)},t.s1_256=function(e){return r(e,6)^r(e,11)^r(e,25)},t.g0_256=function(e){return r(e,7)^r(e,18)^e>>>3},t.g1_256=function(e){return r(e,17)^r(e,19)^e>>>10}},function(e,t,n){"use strict";var r=n(17),i=n(33),o=n(119),s=n(14),a=r.sum32,c=r.sum32_4,f=r.sum32_5,l=o.ch32,u=o.maj32,d=o.s0_256,h=o.s1_256,p=o.g0_256,m=o.g1_256,g=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 b(){if(!(this instanceof b))return new b;g.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=y,this.W=new Array(64)}r.inherits(b,g),e.exports=b,b.blockSize=512,b.outSize=256,b.hmacStrength=192,b.padLength=64,b.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r>6],i=0==(32&n);if(31==(31&n)){var o=n;for(n=0;128==(128&o);){if(o=e.readUInt8(t),e.isError(o))return o;n<<=7,n|=127&o}}else n&=31;return{cls:r,primitive:i,tag:n,tagStr:a.tag[n]}}function u(e,t,n){var r=e.readUInt8(n);if(e.isError(r))return r;if(!t&&128===r)return null;if(0==(128&r))return r;var i=127&r;if(i>4)return e.error("length octect is too long");r=0;for(var o=0;o=31)return r.error("Multi-octet tag encoding unsupported");t||(i|=32);return i|=a.tagClassByName[n||"universal"]<<6}(e,t,n,this.reporter);if(r.length<128)return(o=new i(2))[0]=s,o[1]=r.length,this._createEncoderBuffer([o,r]);for(var c=1,f=r.length;f>=256;f>>=8)c++;(o=new i(2+c))[0]=s,o[1]=128|c;f=1+c;for(var l=r.length;l>0;f--,l>>=8)o[f]=255&l;return this._createEncoderBuffer([o,r])},f.prototype._encodeStr=function(e,t){if("bitstr"===t)return this._createEncoderBuffer([0|e.unused,e.data]);if("bmpstr"===t){for(var n=new i(2*e.length),r=0;r=40)return this.reporter.error("Second objid identifier OOB");e.splice(0,2,40*e[0]+e[1])}var o=0;for(r=0;r=128;s>>=7)o++}var a=new i(o),c=a.length-1;for(r=e.length-1;r>=0;r--){s=e[r];for(a[c--]=127&s;(s>>=7)>0;)a[c--]=128|127&s}return this._createEncoderBuffer(a)},f.prototype._encodeTime=function(e,t){var n,r=new Date(e);return"gentime"===t?n=[l(r.getFullYear()),l(r.getUTCMonth()+1),l(r.getUTCDate()),l(r.getUTCHours()),l(r.getUTCMinutes()),l(r.getUTCSeconds()),"Z"].join(""):"utctime"===t?n=[l(r.getFullYear()%100),l(r.getUTCMonth()+1),l(r.getUTCDate()),l(r.getUTCHours()),l(r.getUTCMinutes()),l(r.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+t+" time is not supported yet"),this._encodeStr(n,"octstr")},f.prototype._encodeNull=function(){return this._createEncoderBuffer("")},f.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 n=e.toArray();!e.sign&&128&n[0]&&n.unshift(0),e=new i(n)}if(i.isBuffer(e)){var r=e.length;0===e.length&&r++;var o=new i(r);return e.copy(o),0===e.length&&(o[0]=0),this._createEncoderBuffer(o)}if(e<128)return this._createEncoderBuffer(e);if(e<256)return this._createEncoderBuffer([0,e]);r=1;for(var s=e;s>=256;s>>=8)r++;for(s=(o=new Array(r)).length-1;s>=0;s--)o[s]=255&e,e>>=8;return 128&o[0]&&o.unshift(0),this._createEncoderBuffer(new i(o))},f.prototype._encodeBool=function(e){return this._createEncoderBuffer(e?255:0)},f.prototype._use=function(e,t){return"function"==typeof e&&(e=e(t)),e._getEncoder("der").tree},f.prototype._skipDefault=function(e,t,n){var r,i=this._baseState;if(null===i.default)return!1;var o=e.join();if(void 0===i.defaultBuffer&&(i.defaultBuffer=this._encodeValue(i.default,t,n).join()),o.length!==i.defaultBuffer.length)return!1;for(r=0;r(0,o.default)(n(138)));let P;t.ContentHelpers=O;let M=()=>new s.MemoryCryptoStore}).call(this,n(6))},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MemoryStore=s;var i=n(49),o=r(n(8));function s(e){e=e||{},this.rooms={},this.groups={},this.users={},this.syncToken=null,this.filters={},this.accountData={},this.localStorage=e.localStorage,this._oobMembers={},this._clientOptions={}}s.prototype={getSyncToken:function(){return this.syncToken},isNewlyCreated:function(){return Promise.resolve(!0)},setSyncToken:function(e){this.syncToken=e},storeGroup:function(e){this.groups[e.groupId]=e},getGroup:function(e){return this.groups[e]||null},getGroups:function(){return o.values(this.groups)},storeRoom:function(e){this.rooms[e.roomId]=e,e.currentState.on("RoomState.members",this._onRoomMember.bind(this));const t=this;e.currentState.getMembers().forEach((function(n){t._onRoomMember(null,e.currentState,n)}))},_onRoomMember:function(e,t,n){if("invite"===n.membership)return;const r=this.users[n.userId]||new i.User(n.userId);n.name&&(r.setDisplayName(n.name),n.events.member&&r.setRawDisplayName(n.events.member.getDirectionalContent().displayname)),n.events.member&&n.events.member.getContent().avatar_url&&r.setAvatarUrl(n.events.member.getContent().avatar_url),this.users[r.userId]=r},getRoom:function(e){return this.rooms[e]||null},getRooms:function(){return o.values(this.rooms)},removeRoom:function(e){this.rooms[e]&&this.rooms[e].removeListener("RoomState.members",this._onRoomMember),delete this.rooms[e]},getRoomSummaries:function(){return o.map(o.values(this.rooms),(function(e){return e.summary}))},storeUser:function(e){this.users[e.userId]=e},getUser:function(e){return this.users[e]||null},getUsers:function(){return o.values(this.users)},scrollback:function(e,t){return[]},storeEvents:function(e,t,n,r){},storeFilter:function(e){e&&(this.filters[e.userId]||(this.filters[e.userId]={}),this.filters[e.userId][e.filterId]=e)},getFilter:function(e,t){return this.filters[e]&&this.filters[e][t]?this.filters[e][t]:null},getFilterIdByName:function(e){if(!this.localStorage)return null;try{return this.localStorage.getItem("mxjssdk_memory_filter_"+e)}catch(e){}return null},setFilterIdByName:function(e,t){if(this.localStorage)try{this.localStorage.setItem("mxjssdk_memory_filter_"+e,t)}catch(e){}},storeAccountDataEvents:function(e){const t=this;e.forEach((function(e){t.accountData[e.getType()]=e}))},getAccountData:function(e){return this.accountData[e]},setSyncData:function(e){return Promise.resolve()},wantsSave:function(){return!1},save:function(e){},startup:function(){return Promise.resolve()},getSavedSync:function(){return Promise.resolve(null)},getSavedSyncToken:function(){return Promise.resolve(null)},deleteAllData:function(){return this.rooms={},this.users={},this.syncToken=null,this.filters={},this.accountData={},Promise.resolve()},getOutOfBandMembers:function(e){return Promise.resolve(this._oobMembers[e]||null)},setOutOfBandMembers:function(e,t){return this._oobMembers[e]=t,Promise.resolve()},clearOutOfBandMembers:function(){return this._oobMembers={},Promise.resolve()},getClientOptions:function(){return Promise.resolve(this._clientOptions)},storeClientOptions:function(e){return this._clientOptions=Object.assign({},e),Promise.resolve()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SERVICE_TYPES=void 0;const r=Object.freeze({IS:"SERVICE_TYPE_IS",IM:"SERVICE_TYPE_IM"});t.SERVICE_TYPES=r},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.Room=g;var i=n(10),o=n(134),s=n(25),a=n(51),c=r(n(8)),f=n(19),l=n(78),u=n(287),d=n(4),h=n(79);const p=["1","2","3","4","5"];function m(e,t,n){const r={content:{},type:"m.receipt",room_id:t.getRoomId()};return r.content[t.getId()]={},r.content[t.getId()][n]={},r.content[t.getId()][n][e]={ts:t.getTs()},new f.MatrixEvent(r)}function g(e,t,n,r){if((r=r||{}).pendingEventOrdering=r.pendingEventOrdering||"chronological",this.reEmitter=new h.ReEmitter(this),-1===["chronological","detached"].indexOf(r.pendingEventOrdering))throw new Error("opts.pendingEventOrdering MUST be either 'chronological' or 'detached'. Got: '"+r.pendingEventOrdering+"'");this.myUserId=n,this.roomId=e,this.name=e,this.tags={},this.accountData={},this.summary=null,this.storageToken=r.storageToken,this._opts=r,this._txnToEvent={},this._receipts={},this._receiptCacheByEventId={},this._realReceipts={},this._notificationCounts={},this._timelineSets=[new o.EventTimelineSet(this,r)],this.reEmitter.reEmit(this.getUnfilteredTimelineSet(),["Room.timeline","Room.timelineReset"]),this._fixUpLegacyTimelineFields(),this._filteredTimelineSets={},"detached"==this._opts.pendingEventOrdering&&(this._pendingEventList=[]),this._blacklistUnverifiedDevices=null,this._selfMembership=null,this._summaryHeroes=null,this._client=t,this._opts.lazyLoadMembers?this._membersPromise=null:this._membersPromise=Promise.resolve()}c.inherits(g,i.EventEmitter),g.prototype.getVersion=function(){const e=this.currentState.getStateEvents("m.room.create","");if(!e)return d.logger.warn("Room "+this.room_id+" does not have an m.room.create event"),"1";const t=e.getContent().room_version;return void 0===t?"1":t},g.prototype.shouldUpgradeToVersion=function(){return p.includes(this.getVersion())?null:"5"},g.prototype.getRecommendedVersion=async function(){let e=(await this._client.getCapabilities())["m.room_versions"];if(!e){e={default:"5",available:{}};for(const t of p)e.available[t]="stable"}let t=this._checkVersionAgainstCapability(e);if(t.urgent&&t.needsUpgrade){if(d.logger.warn("Refreshing room version capability because the server looks to be supporting a newer room version we don't know about."),e=(await this._client.getCapabilities(!0))["m.room_versions"],!e)return d.logger.warn("No room version capability - assuming upgrade required."),t;t=this._checkVersionAgainstCapability(e)}return t},g.prototype._checkVersionAgainstCapability=function(e){const t=this.getVersion();d.logger.log(`[${this.roomId}] Current version: ${t}`),d.logger.log(`[${this.roomId}] Version capability: `,e);const n={version:t,needsUpgrade:!1,urgent:!1};return t===e.default?n:Object.keys(e.available).filter(t=>"stable"===e.available[t]).includes(t)?n:(n.version=e.default,n.needsUpgrade=!0,n.urgent=!!this.getVersion().match(/^[0-9]+[0-9.]*$/g),n.urgent?d.logger.warn(`URGENT upgrade required on ${this.roomId}`):d.logger.warn(`Non-urgent upgrade required on ${this.roomId}`),n)},g.prototype.userMayUpgradeRoom=function(e){return this.currentState.maySendStateEvent("m.room.tombstone",e)},g.prototype.getPendingEvents=function(){if("detached"!==this._opts.pendingEventOrdering)throw new Error("Cannot call getPendingEvents with pendingEventOrdering == "+this._opts.pendingEventOrdering);return this._pendingEventList},g.prototype.hasPendingEvent=function(e){if("detached"!==this._opts.pendingEventOrdering)throw new Error("Cannot call hasPendingEvent with pendingEventOrdering == "+this._opts.pendingEventOrdering);return this._pendingEventList.some(t=>t.getId()===e)},g.prototype.getLiveTimeline=function(){return this.getUnfilteredTimelineSet().getLiveTimeline()},g.prototype.getLastActiveTimestamp=function(){const e=this.getLiveTimeline().getEvents();if(e.length){return e[e.length-1].getTs()}return Number.MIN_SAFE_INTEGER},g.prototype.getMyMembership=function(){return this._selfMembership},g.prototype.getDMInviter=function(){if(this.myUserId){const e=this.getMember(this.myUserId);if(e)return e.getDMInviter()}if("invite"===this._selfMembership){if(2==this.getInvitedAndJoinedMemberCount()&&this._summaryHeroes.length)return this._summaryHeroes[0]}},g.prototype.guessDMUserId=function(){const e=this.getMember(this.myUserId);if(e){const t=e.getDMInviter();if(t)return t}if(Array.isArray(this._summaryHeroes)&&this._summaryHeroes.length)return this._summaryHeroes[0];const t=this.currentState.getMembers().find(e=>e.userId!==this.myUserId);return t?t.userId:this.myUserId},g.prototype.getAvatarFallbackMember=function(){if(this.getInvitedAndJoinedMemberCount()>2)return;const e=Array.isArray(this._summaryHeroes)&&this._summaryHeroes.length;if(e){const e=this._summaryHeroes.map(e=>this.getMember(e)).find(e=>!!e);if(e)return e}const t=this.currentState.getMembers();if(t.length<=2){const e=t.find(e=>e.userId!==this.myUserId);if(e)return e}if(e){const e=this._summaryHeroes.map(e=>this._client.getUser(e)).find(e=>!!e);if(e){const t=new l.RoomMember(this.roomId,e.userId);return t.user=e,t}}},g.prototype.updateMyMembership=function(e){const t=this._selfMembership;this._selfMembership=e,t!==e&&("leave"===e&&this._cleanupAfterLeaving(),this.emit("Room.myMembership",this,e,t))},g.prototype._loadMembersFromServer=async function(){const e=this._client.store.getSyncToken(),t=c.encodeParams({not_membership:"leave",at:e}),n=c.encodeUri("/rooms/$roomId/members?"+t,{$roomId:this.roomId}),r=this._client._http;return(await r.authedRequest(void 0,"GET",n)).chunk},g.prototype._loadMembers=async function(){let e=!1,t=await this._client.store.getOutOfBandMembers(this.roomId);return null===t&&(e=!0,t=await this._loadMembersFromServer(),d.logger.log(`LL: got ${t.length} `+`members from server for room ${this.roomId}`)),{memberEvents:t.map(this._client.getEventMapper()),fromServer:e}},g.prototype.loadMembersIfNeeded=function(){if(this._membersPromise)return this._membersPromise;this.currentState.markOutOfBandMembersStarted();const e=this._loadMembers().then(e=>(this.currentState.setOutOfBandMembers(e.memberEvents),this._client.isCryptoEnabled()&&this._client.isRoomEncrypted(this.roomId)&&this._client._crypto.trackRoomDevices(this.roomId),e.fromServer)).catch(e=>{throw this._membersPromise=null,this.currentState.markOutOfBandMembersFailed(),e});return e.then(e=>{if(e){const e=this.currentState.getMembers().filter(e=>e.isOutOfBand()).map(e=>e.events.member.event);return d.logger.log(`LL: telling store to write ${e.length}`+` members for room ${this.roomId}`),this._client.store.setOutOfBandMembers(this.roomId,e).catch(e=>{d.logger.log("LL: storing OOB room members failed, oh well",e)})}}).catch(e=>{d.logger.error(e)}),this._membersPromise=e,this._membersPromise},g.prototype.clearLoadedMembersIfNeeded=async function(){this._opts.lazyLoadMembers&&this._membersPromise&&(await this.loadMembersIfNeeded(),await this._client.store.clearOutOfBandMembers(this.roomId),this.currentState.clearOutOfBandMembers(),this._membersPromise=null)},g.prototype._cleanupAfterLeaving=function(){this.clearLoadedMembersIfNeeded().catch(e=>{d.logger.error("error after clearing loaded members from "+`room ${this.roomId} after leaving`),d.logger.log(e)})},g.prototype.resetLiveTimeline=function(e,t){for(let n=0;ne.isUnverified()))return!0}return!1},g.prototype.getTimelineSets=function(){return this._timelineSets},g.prototype.getUnfilteredTimelineSet=function(){return this._timelineSets[0]},g.prototype.getTimelineForEvent=function(e){return this.getUnfilteredTimelineSet().getTimelineForEvent(e)},g.prototype.addTimeline=function(){return this.getUnfilteredTimelineSet().addTimeline()},g.prototype.findEventById=function(e){return this.getUnfilteredTimelineSet().findEventById(e)},g.prototype.getUnreadNotificationCount=function(e){return e=e||"total",this._notificationCounts[e]},g.prototype.setUnreadNotificationCount=function(e,t){this._notificationCounts[e]=t},g.prototype.setSummary=function(e){const t=e["m.heroes"],n=e["m.joined_member_count"],r=e["m.invited_member_count"];Number.isInteger(n)&&this.currentState.setJoinedMemberCount(n),Number.isInteger(r)&&this.currentState.setInvitedMemberCount(r),Array.isArray(t)&&(this._summaryHeroes=t.filter(e=>e!==this.myUserId))},g.prototype.setBlacklistUnverifiedDevices=function(e){this._blacklistUnverifiedDevices=e},g.prototype.getBlacklistUnverifiedDevices=function(){return this._blacklistUnverifiedDevices},g.prototype.getAvatarUrl=function(e,t,n,r,i){const o=this.currentState.getStateEvents("m.room.avatar","");if(void 0===i&&(i=!0),!o&&!i)return null;const s=o?o.getContent().url:null;return s?(0,a.getHttpUriForMxc)(e,s,t,n,r):i?(0,a.getIdenticonUri)(e,this.roomId,t,n):null},g.prototype.getAliases=function(){const e=[],t=this.currentState.getStateEvents("m.room.aliases");if(t)for(let n=0;n"string"==typeof e&&("#"===e[0]&&!!e.endsWith(`:${r.getStateKey()}`)));Array.prototype.push.apply(e,t)}}return e},g.prototype.getCanonicalAlias=function(){const e=this.currentState.getStateEvents("m.room.canonical_alias","");return e?e.getContent().alias:null},g.prototype.addEventsToTimeline=function(e,t,n,r){n.getTimelineSet().addEventsToTimeline(e,t,n,r)},g.prototype.getMember=function(e){return this.currentState.getMember(e)},g.prototype.getJoinedMembers=function(){return this.getMembersWithMembership("join")},g.prototype.getJoinedMemberCount=function(){return this.currentState.getJoinedMemberCount()},g.prototype.getInvitedMemberCount=function(){return this.currentState.getInvitedMemberCount()},g.prototype.getInvitedAndJoinedMemberCount=function(){return this.getInvitedMemberCount()+this.getJoinedMemberCount()},g.prototype.getMembersWithMembership=function(e){return c.filter(this.currentState.getMembers(),(function(t){return t.membership===e}))},g.prototype.getEncryptionTargetMembers=async function(){await this.loadMembersIfNeeded();let e=this.getMembersWithMembership("join");return this.shouldEncryptForInvitedMembers()&&(e=e.concat(this.getMembersWithMembership("invite"))),e},g.prototype.shouldEncryptForInvitedMembers=function(){const e=this.currentState.getStateEvents("m.room.history_visibility","");return e&&e.getContent()&&"joined"!==e.getContent().history_visibility},g.prototype.getDefaultRoomName=function(e){return b(this,e,!0)},g.prototype.hasMembershipState=function(e,t){const n=this.getMember(e);return!!n&&n.membership===t},g.prototype.getOrCreateFilteredTimelineSet=function(e){if(this._filteredTimelineSets[e.filterId])return this._filteredTimelineSets[e.filterId];const t=Object.assign({filter:e},this._opts),n=new o.EventTimelineSet(this,t);this.reEmitter.reEmit(n,["Room.timeline","Room.timelineReset"]),this._filteredTimelineSets[e.filterId]=n,this._timelineSets.push(n);const r=this.getLiveTimeline();r.getEvents().forEach((function(e){n.addLiveEvent(e)}));let i=r;for(;i.getNeighbouringTimeline(s.EventTimeline.BACKWARDS);)i=i.getNeighbouringTimeline(s.EventTimeline.BACKWARDS);return n.getLiveTimeline().setPaginationToken(i.getPaginationToken(s.EventTimeline.BACKWARDS),s.EventTimeline.BACKWARDS),n},g.prototype.removeFilteredTimelineSet=function(e){const t=this._filteredTimelineSets[e.filterId];delete this._filteredTimelineSets[e.filterId];const n=this._timelineSets.indexOf(t);n>-1&&this._timelineSets.splice(n,1)},g.prototype._addLiveEvent=function(e,t){if(e.isRedaction()){const t=e.event.redacts,n=this.getUnfilteredTimelineSet().findEventById(t);if(n){if(n.makeRedacted(e),n.getStateKey()){this.currentState.getStateEvents(n.getType(),n.getStateKey()).getId()===n.getId()&&this.currentState.setStateEvents([n])}this.emit("Room.redaction",e,this)}}if(e.getUnsigned().transaction_id){const t=this._txnToEvent[e.getUnsigned().transaction_id];if(t)return void this._handleRemoteEcho(e,t)}for(let n=0;ne.status===f.EventStatus.NOT_SENT)&&(d.logger.warn("Setting event as NOT_SENT due to messages in the same state"),e.setStatus(f.EventStatus.NOT_SENT)),this._pendingEventList.push(e),e.isRelation()&&this._aggregateNonLiveRelation(e),e.isRedaction()){const t=e.event.redacts;let n=this._pendingEventList&&this._pendingEventList.find(e=>e.getId()===t);n||(n=this.getUnfilteredTimelineSet().findEventById(t)),n&&(n.markLocallyRedacted(e),this.emit("Room.redaction",e,this))}}else for(let t=0;t{const n=e.getMember(t);return n?n.name:t});else{let n=e.currentState.getMembers().filter(e=>e.userId!==t&&("invite"===e.membership||"join"===e.membership));n.sort((e,t)=>e.userId.localeCompare(t.userId)),n=n.slice(0,5),o=n.map(e=>e.name)}if(i)return v(o,i);if("join"==e.getMyMembership()){const t=e.currentState.getStateEvents("m.room.third_party_invite");if(t&&t.length){return`Inviting ${v(t.map(e=>e.getContent().display_name))}`}}let s=o;return s.length||(s=e.currentState.getMembers().filter(e=>e.userId!==t&&"invite"!==e.membership&&"join"!==e.membership).map(e=>e.name)),s.length?`Empty room (was ${v(s)})`:"Empty room"}function v(e,t=e.length+1){const n=t-1;if(e.length){if(1===e.length&&n<=1)return e[0];if(2===e.length&&n<=2)return`${e[0]} and ${e[1]}`;return n>1?`${e[0]} and ${n} others`:`${e[0]} and 1 other`}return"Empty room"}y[f.EventStatus.ENCRYPTING]=[f.EventStatus.SENDING,f.EventStatus.NOT_SENT],y[f.EventStatus.SENDING]=[f.EventStatus.ENCRYPTING,f.EventStatus.QUEUED,f.EventStatus.NOT_SENT,f.EventStatus.SENT],y[f.EventStatus.QUEUED]=[f.EventStatus.SENDING,f.EventStatus.CANCELLED],y[f.EventStatus.SENT]=[],y[f.EventStatus.NOT_SENT]=[f.EventStatus.SENDING,f.EventStatus.QUEUED,f.EventStatus.CANCELLED],y[f.EventStatus.CANCELLED]=[],g.prototype.updatePendingEvent=function(e,t,n){if(d.logger.log(`setting pendingEvent status to ${t} in ${e.getRoomId()}`),t==f.EventStatus.SENT&&!n)throw new Error("updatePendingEvent called with status=SENT, but no new event id");if(t==f.EventStatus.SENT){if(this.getUnfilteredTimelineSet().eventIdToTimeline(n))return}const r=e.status,i=e.getId();if(!r)throw new Error("updatePendingEventStatus called on an event which is not a local echo.");const o=y[r];if(!o||o.indexOf(t)<0)throw new Error("Invalid EventStatus transition "+r+"->"+t);if(e.setStatus(t),t==f.EventStatus.SENT){e.replaceLocalEventId(n);for(let e=0;ee.getId()===i);if(-1!==e){const[t]=this._pendingEventList.splice(e,1);t.isRedaction()&&this._revertRedactionLocalEcho(t)}}this.removeEvent(i)}this.emit("Room.localEchoUpdated",e,this,i,r)},g.prototype._revertRedactionLocalEcho=function(e){const t=e.event.redacts;if(!t)return;const n=this.getUnfilteredTimelineSet().findEventById(t);n&&(n.unmarkLocallyRedacted(),this.emit("Room.redactionCancelled",e,this),n.isRelation()&&this._aggregateNonLiveRelation(n))},g.prototype.addLiveEvents=function(e,t){let n;if(t&&-1===["replace","ignore"].indexOf(t))throw new Error("duplicateStrategy MUST be either 'replace' or 'ignore'");for(n=0;n=0;--e){const r=this.timeline[e];if(r.getId()===t)return!1;if(r.getId()===n)return!0}return!1},g.prototype.getReceiptsForEvent=function(e){return this._receiptCacheByEventId[e.getId()]||[]},g.prototype.addReceipt=function(e,t){void 0===t&&(t=!1),t||this._addReceiptsToStructure(e,this._realReceipts),this._addReceiptsToStructure(e,this._receipts),this._receiptCacheByEventId=this._buildReceiptCache(this._receipts),this.emit("Room.receipt",e,this)},g.prototype._addReceiptsToStructure=function(e,t){const n=this;c.keys(e.getContent()).forEach((function(r){c.keys(e.getContent()[r]).forEach((function(i){c.keys(e.getContent()[r][i]).forEach((function(o){const s=e.getContent()[r][i][o];t[i]||(t[i]={});const a=t[i][o];if(a){const e=n.getUnfilteredTimelineSet().compareEventOrdering(a.eventId,r);if(null!==e&&e>=0)return}else t[i][o]={};t[i][o]={eventId:r,data:s}}))}))}))},g.prototype._buildReceiptCache=function(e){const t={};return c.keys(e).forEach((function(n){c.keys(e[n]).forEach((function(r){const i=e[n][r];t[i.eventId]||(t[i.eventId]=[]),t[i.eventId].push({userId:r,type:n,data:i.data})}))})),t},g.prototype._addLocalEchoReceipt=function(e,t,n){this.addReceipt(m(e,t,n),!0)},g.prototype.addTags=function(e){this.tags=e.getContent().tags||{},this.emit("Room.tags",e,this)},g.prototype.addAccountData=function(e){for(let t=0;t{this.aggregateRelations(e)});const t=e.getRelation();if(!t)return;const n=t.event_id,r=t.rel_type,i=e.getType();let o=this._relations[n];o||(o=this._relations[n]={});let a=o[r];a||(a=o[r]={});let c,l=a[i],u=!1;l||(l=a[i]=new f.Relations(r,i,this.room),u=!0,c=this.findEventById(n),c&&l.setTargetEvent(c)),l.addEvent(e),u&&c&&c.emit("Event.relationsCreated",r,i)}},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.RoomState=c;var i=n(10),o=n(78),s=n(4),a=r(n(8));function c(e,t){this.roomId=e,this.members={},this.events={},this.paginationToken=null,this._sentinels={},this._updateModifiedTime(),this._displayNameToUserIds={},this._userIdsToDisplayNames={},this._tokenToInvite={},this._joinedMemberCount=null,this._summaryJoinedMemberCount=null,this._invitedMemberCount=null,this._summaryInvitedMemberCount=null,t||(t={status:1}),this._oobMemberFlags=t}function f(e,t,n){const r=e._userIdsToDisplayNames[t];if(delete e._userIdsToDisplayNames[t],r){const n=a.removeHiddenChars(r),i=e._displayNameToUserIds[n];if(i){const r=i.filter(e=>e!==t);e._displayNameToUserIds[n]=r}}e._userIdsToDisplayNames[t]=n;const i=n&&a.removeHiddenChars(n);i&&(e._displayNameToUserIds[i]||(e._displayNameToUserIds[i]=[]),e._displayNameToUserIds[i].push(t))}a.inherits(c,i.EventEmitter),c.prototype.getJoinedMemberCount=function(){return null!==this._summaryJoinedMemberCount?this._summaryJoinedMemberCount:(null===this._joinedMemberCount&&(this._joinedMemberCount=this.getMembers().reduce((e,t)=>"join"===t.membership?e+1:e,0)),this._joinedMemberCount)},c.prototype.setJoinedMemberCount=function(e){this._summaryJoinedMemberCount=e},c.prototype.getInvitedMemberCount=function(){return null!==this._summaryInvitedMemberCount?this._summaryInvitedMemberCount:(null===this._invitedMemberCount&&(this._invitedMemberCount=this.getMembers().reduce((e,t)=>"invite"===t.membership?e+1:e,0)),this._invitedMemberCount)},c.prototype.setInvitedMemberCount=function(e){this._summaryInvitedMemberCount=e},c.prototype.getMembers=function(){return a.values(this.members)},c.prototype.getMembersExcept=function(e){return a.values(this.members).filter(t=>!e.includes(t.userId))},c.prototype.getMember=function(e){return this.members[e]||null},c.prototype.getSentinelMember=function(e){if(!e)return null;let t=this._sentinels[e];if(void 0===t){t=new o.RoomMember(this.roomId,e);const n=this.members[e];n&&t.setMembershipEvent(n.events.member,this),this._sentinels[e]=t}return t},c.prototype.getStateEvents=function(e,t){if(!this.events[e])return void 0===t?[]:null;if(void 0===t)return a.values(this.events[e]);const n=this.events[e][t];return n||null},c.prototype.clone=function(){const e=new c(this.roomId,this._oobMemberFlags),t=this._oobMemberFlags.status;return this._oobMemberFlags.status=1,Object.values(this.events).forEach(t=>{const n=Object.values(t);e.setStateEvents(n)}),this._oobMemberFlags.status=t,null!==this._summaryInvitedMemberCount&&e.setInvitedMemberCount(this.getInvitedMemberCount()),null!==this._summaryJoinedMemberCount&&e.setJoinedMemberCount(this.getJoinedMemberCount()),3==this._oobMemberFlags.status&&this.getMembers().forEach(t=>{if(t.isOutOfBand()){e.getMember(t.userId).markOutOfBand()}}),e},c.prototype.setUnknownStateEvents=function(e){const t=e.filter(e=>void 0===this.events[e.getType()]||void 0===this.events[e.getType()][e.getStateKey()]);this.setStateEvents(t)},c.prototype.setStateEvents=function(e){const t=this;this._updateModifiedTime(),a.forEach(e,(function(e){e.getRoomId()===t.roomId&&e.isState()&&(t._setStateEvent(e),"m.room.member"===e.getType()&&(f(t,e.getStateKey(),e.getContent().displayname),function(e,t){if(!t.getContent().third_party_invite)return;const n=(t.getContent().third_party_invite.signed||{}).token;if(!n)return;if(!e.getStateEvents("m.room.third_party_invite",n))return;e._tokenToInvite[n]=t}(t,e)),t.emit("RoomState.events",e,t))})),a.forEach(e,(function(e){if(e.getRoomId()===t.roomId&&e.isState())if("m.room.member"===e.getType()){const n=e.getStateKey();"leave"!==e.getContent().membership&&"ban"!==e.getContent().membership||(e.getContent().avatar_url=e.getContent().avatar_url||e.getPrevContent().avatar_url,e.getContent().displayname=e.getContent().displayname||e.getPrevContent().displayname);const r=t._getOrCreateMember(n,e);r.setMembershipEvent(e,t),t._updateMember(r),t.emit("RoomState.members",e,t,r)}else if("m.room.power_levels"===e.getType()){const n=a.values(t.members);a.forEach(n,(function(n){n.setPowerLevelEvent(e),t.emit("RoomState.members",e,t,n)})),t._sentinels={}}}))},c.prototype._getOrCreateMember=function(e,t){let n=this.members[e];return n||(n=new o.RoomMember(this.roomId,e),this.members[e]=n,this.emit("RoomState.newMember",t,this,n)),n},c.prototype._setStateEvent=function(e){void 0===this.events[e.getType()]&&(this.events[e.getType()]={}),this.events[e.getType()][e.getStateKey()]=e},c.prototype._updateMember=function(e){const t=this.getStateEvents("m.room.power_levels","");t&&e.setPowerLevelEvent(t),delete this._sentinels[e.userId],this.members[e.userId]=e,this._joinedMemberCount=null,this._invitedMemberCount=null},c.prototype.needsOutOfBandMembers=function(){return 1===this._oobMemberFlags.status},c.prototype.markOutOfBandMembersStarted=function(){1===this._oobMemberFlags.status&&(this._oobMemberFlags.status=2)},c.prototype.markOutOfBandMembersFailed=function(){2===this._oobMemberFlags.status&&(this._oobMemberFlags.status=1)},c.prototype.clearOutOfBandMembers=function(){let e=0;Object.keys(this.members).forEach(t=>{this.members[t].isOutOfBand()&&(++e,delete this.members[t])}),s.logger.log(`LL: RoomState removed ${e} members...`),this._oobMemberFlags.status=1},c.prototype.setOutOfBandMembers=function(e){s.logger.log(`LL: RoomState about to set ${e.length} OOB members ...`),2===this._oobMemberFlags.status&&(s.logger.log("LL: RoomState put in OOB_STATUS_FINISHED state ..."),this._oobMemberFlags.status=3,e.forEach(e=>this._setOutOfBandMember(e)))},c.prototype._setOutOfBandMember=function(e){if("m.room.member"!==e.getType())return;const t=e.getStateKey(),n=this.getMember(t);if(n&&!n.isOutOfBand())return;const r=this._getOrCreateMember(t,e);r.setMembershipEvent(e,this),r.markOutOfBand(),f(this,r.userId,r.name),this._setStateEvent(e),this._updateMember(r),this.emit("RoomState.members",e,this,r)},c.prototype.setTypingEvent=function(e){a.forEach(a.values(this.members),(function(t){t.setTypingEvent(e)}))},c.prototype.getInviteForThreePidToken=function(e){return this._tokenToInvite[e]||null},c.prototype._updateModifiedTime=function(){this._modified=Date.now()},c.prototype.getLastModifiedTime=function(){return this._modified},c.prototype.getUserIdsWithDisplayName=function(e){return this._displayNameToUserIds[a.removeHiddenChars(e)]||[]},c.prototype.maySendRedactionForEvent=function(e,t){const n=this.getMember(t);if(!n||"leave"===n.membership)return!1;if(e.status||e.isRedacted())return!1;const r=this.maySendEvent("m.room.redaction",t);return e.getSender()===t?r:this._hasSufficientPowerLevelFor("redact",n.powerLevel)},c.prototype._hasSufficientPowerLevelFor=function(e,t){const n=this.getStateEvents("m.room.power_levels","");let r={};n&&(r=n.getContent());let i=50;return a.isNumber(r[e])&&(i=r[e]),t>=i},c.prototype.maySendMessage=function(e){return this._maySendEventOfType("m.room.message",e,!1)},c.prototype.maySendEvent=function(e,t){return this._maySendEventOfType(e,t,!1)},c.prototype.mayClientSendStateEvent=function(e,t){return!t.isGuest()&&this.maySendStateEvent(e,t.credentials.userId)},c.prototype.maySendStateEvent=function(e,t){return this._maySendEventOfType(e,t,!0)},c.prototype._maySendEventOfType=function(e,t,n){const r=this.getStateEvents("m.room.power_levels","");let i,o={},s=0,a=0,c=0;if(r){i=r.getContent(),o=i.events||{},s=Number.isFinite(i.state_default)?i.state_default:50;const e=i.users&&i.users[t];Number.isFinite(e)?c=e:Number.isFinite(i.users_default)&&(c=i.users_default),Number.isFinite(i.events_default)&&(a=i.events_default)}let f=n?s:a;return Number.isFinite(o[e])&&(f=o[e]),c>=f},c.prototype.mayTriggerNotifOfType=function(e,t){const n=this.getMember(t);if(!n)return!1;const r=this.getStateEvents("m.room.power_levels","");let i=50;return r&&r.getContent()&&r.getContent().notifications&&a.isNumber(r.getContent().notifications[e])&&(i=r.getContent().notifications[e]),n.powerLevel>=i}},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.Group=s;var i=r(n(8)),o=n(10);function s(e){this.groupId=e,this.name=null,this.avatarUrl=null,this.myMembership=null,this.inviter=null}i.inherits(s,o.EventEmitter),s.prototype.setProfile=function(e,t){this.name===e&&this.avatarUrl===t||(this.name=e||this.groupId,this.avatarUrl=t,this.emit("Group.profile",this))},s.prototype.setMyMembership=function(e){this.myMembership!==e&&(this.myMembership=e,this.emit("Group.myMembership",this))},s.prototype.setInviter=function(e){this.inviter=e}},function(e,t,n){"use strict";(function(e){var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MatrixCall=a,t.setAudioOutput=function(e){I=e},t.setAudioInput=function(e){x=e},t.setVideoInput=function(e){R=e},t.createNewMatrixCall=function(t,n,r){const o=e.window,s=e.document;if(!o||!s)return null;const c={};c.isOpenWebRTC=function(){const e=s.getElementById("script");if(!e||!e.length)return!1;for(let t=0;t-1)return!0;return!1};const f=o.navigator.getUserMedia||o.navigator.webkitGetUserMedia||o.navigator.mozGetUserMedia;f&&(c.getUserMedia=function(){return f.apply(o.navigator,arguments)});try{c.RtcPeerConnection=o.RTCPeerConnection||o.webkitRTCPeerConnection||o.mozRTCPeerConnection,c.RtcSessionDescription=o.RTCSessionDescription||o.webkitRTCSessionDescription||o.mozRTCSessionDescription,c.RtcIceCandidate=o.RTCIceCandidate||o.webkitRTCIceCandidate||o.mozRTCIceCandidate,c.vendor=null,o.mozRTCPeerConnection?c.vendor="mozilla":o.webkitRTCPeerConnection?c.vendor="webkit":o.RTCPeerConnection&&(c.vendor="generic")}catch(e){return i.logger.error("Failed to set up WebRTC object: possible browser interference?"),i.logger.error(e),null}if(!(c.RtcIceCandidate&&c.RtcSessionDescription&&c.RtcPeerConnection&&c.getUserMedia))return null;const l=!!r&&r.forceTURN;return new a({webRtc:c,client:t,URL:o.URL,roomId:n,turnServers:t.getTurnServers(),forceTURN:t._forceTURN||l})};var i=n(4),o=n(10),s=r(n(8));function a(e){this.roomId=e.roomId,this.client=e.client,this.webRtc=e.webRtc,this.forceTURN=e.forceTURN,this.URL=e.URL,this.turnServers=e.turnServers||[],0===this.turnServers.length&&this.client.isFallbackICEServerAllowed()&&this.turnServers.push({urls:[a.FALLBACK_ICE_SERVER]}),s.forEach(this.turnServers,(function(e){s.checkObjectHasKeys(e,["urls"])})),this.callId="c"+(new Date).getTime()+Math.random(),this.state="fledgling",this.didConnect=!1,this.candidateSendQueue=[],this.candidateSendTries=0,this.mediaPromises=Object.create(null),this.screenSharingStream=null,this._answerContent=null}a.CALL_TIMEOUT_MS=6e4,a.FALLBACK_ICE_SERVER="stun:turn.matrix.org",a.ERR_LOCAL_OFFER_FAILED="local_offer_failed",a.ERR_NO_USER_MEDIA="no_user_media",a.ERR_UNKNOWN_DEVICES="unknown_devices",a.ERR_SEND_INVITE="send_invite",a.ERR_SEND_ANSWER="send_answer",s.inherits(a,o.EventEmitter),a.prototype.placeVoiceCall=function(){v("placeVoiceCall"),y(this),w(this,k("voice")),this.type="voice"},a.prototype.placeVideoCall=function(e,t){v("placeVideoCall"),y(this),this.localVideoElement=t,this.remoteVideoElement=e,w(this,k("video")),this.type="video",m(this)},a.prototype.placeScreenSharingCall=function(e,t){v("placeScreenSharingCall"),y(this);const n=E(this);if(!n)return;this.localVideoElement=t,this.remoteVideoElement=e;const r=this;this.webRtc.getUserMedia(n,(function(e){r.screenSharingStream=e,v("Got screen stream, requesting audio stream...");const t=k("voice");w(r,t)}),(function(e){r.emit("error",b(a.ERR_NO_USER_MEDIA,"Failed to get screen-sharing stream: "+e))})),this.type="video",m(this)},a.prototype.playElement=function(e,t){i.logger.log("queuing play on "+t+" and element "+e),this.mediaPromises[t]?this.mediaPromises[t]=this.mediaPromises[t].then((function(){return i.logger.log("previous promise completed for "+t),e.play()}),(function(){return i.logger.log("previous promise failed for "+t),e.play()})):this.mediaPromises[t]=e.play()},a.prototype.pauseElement=function(e,t){i.logger.log("queuing pause on "+t+" and element "+e),this.mediaPromises[t]?this.mediaPromises[t]=this.mediaPromises[t].then((function(){return i.logger.log("previous promise completed for "+t),e.pause()}),(function(){return i.logger.log("previous promise failed for "+t),e.pause()})):this.mediaPromises[t]=e.pause()},a.prototype.assignElement=function(e,t,n){i.logger.log("queuing assign on "+n+" element "+e+" for "+t),this.mediaPromises[n]?this.mediaPromises[n]=this.mediaPromises[n].then((function(){i.logger.log("previous promise completed for "+n),e.srcObject=t}),(function(){i.logger.log("previous promise failed for "+n),e.srcObject=t})):e.srcObject=t},a.prototype.getLocalVideoElement=function(){return this.localVideoElement},a.prototype.getRemoteVideoElement=function(){return this.remoteVideoElement},a.prototype.getRemoteAudioElement=function(){return this.remoteAudioElement},a.prototype.setLocalVideoElement=function(e){if(this.localVideoElement=e,e&&this.localAVStream&&"video"===this.type){e.autoplay=!0,this.assignElement(e,this.localAVStream,"localVideo"),e.muted=!0;const t=this;setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)}},a.prototype.setRemoteVideoElement=function(e){this.remoteVideoElement=e,m(this)},a.prototype.setRemoteAudioElement=function(e){this.remoteVideoElement.muted=!0,this.remoteAudioElement=e,this.remoteAudioElement.muted=!1,g(this)},a.prototype._initWithInvite=function(e){this.msg=e.getContent(),this.peerConn=A(this);const t=this;this.peerConn&&this.peerConn.setRemoteDescription(new this.webRtc.RtcSessionDescription(this.msg.offer),S(t,t._onSetRemoteDescriptionSuccess),S(t,t._onSetRemoteDescriptionError)),l(this,"ringing"),this.direction="inbound",this.msg.offer&&this.msg.offer.sdp&&this.msg.offer.sdp.indexOf("m=video")>-1?this.type="video":this.type="voice",e.getAge()&&setTimeout((function(){"ringing"==t.state&&(v("Call invite has expired. Hanging up."),t.hangupParty="remote",l(t,"ended"),p(t),"closed"!=t.peerConn.signalingState&&t.peerConn.close(),t.emit("hangup",t))}),this.msg.lifetime-e.getAge())},a.prototype._initWithHangup=function(e){this.msg=e.getContent(),l(this,"ended")},a.prototype.answer=function(){v("Answering call %s of type %s",this.callId,this.type);const e=this;e._answerContent?e._sendAnswer():this.localAVStream||this.waitForLocalAVStream?this.localAVStream?this._maybeGotUserMediaForAnswer(this.localAVStream):this.waitForLocalAVStream&&l(this,"wait_local_media"):(this.webRtc.getUserMedia(k(this.type),S(e,e._maybeGotUserMediaForAnswer),S(e,e._maybeGotUserMediaForAnswer)),l(this,"wait_local_media"))},a.prototype._replacedBy=function(e){v(this.callId+" being replaced by "+e.callId),"wait_local_media"==this.state?(v("Telling new call to wait for local media"),e.waitForLocalAVStream=!0):"create_offer"==this.state?(v("Handing local stream to new call"),e._maybeGotUserMediaForAnswer(this.localAVStream),delete this.localAVStream):"invite_sent"==this.state&&(v("Handing local stream to new call"),e._maybeGotUserMediaForAnswer(this.localAVStream),delete this.localAVStream),e.localVideoElement=this.localVideoElement,e.remoteVideoElement=this.remoteVideoElement,e.remoteAudioElement=this.remoteAudioElement,this.successor=e,this.emit("replaced",e),this.hangup(!0)},a.prototype.hangup=function(e,t){if("ended"==this.state)return;v("Ending call "+this.callId),h(this,"local",e,!t);const n={version:0,call_id:this.callId,reason:e};u(this,"m.call.hangup",n)},a.prototype.setLocalVideoMuted=function(e){this.localAVStream&&c(this.localAVStream.getVideoTracks(),!e)},a.prototype.isLocalVideoMuted=function(){return!!this.localAVStream&&!f(this.localAVStream.getVideoTracks())},a.prototype.setMicrophoneMuted=function(e){this.localAVStream&&c(this.localAVStream.getAudioTracks(),!e)},a.prototype.isMicrophoneMuted=function(){return!!this.localAVStream&&!f(this.localAVStream.getAudioTracks())},a.prototype._maybeGotUserMediaForInvite=function(e){if(this.successor)return void this.successor._maybeGotUserMediaForAnswer(e);if("ended"==this.state)return;v("_maybeGotUserMediaForInvite -> "+this.type);const t=this,n=e,r={mandatory:{OfferToReceiveAudio:!0,OfferToReceiveVideo:"video"===t.type}};if(e instanceof MediaStream){const n=this.getLocalVideoElement();n&&"video"==this.type&&(n.autoplay=!0,this.screenSharingStream?(v("Setting screen sharing stream to the local video element"),this.assignElement(n,this.screenSharingStream,"localVideo")):this.assignElement(n,e,"localVideo"),n.muted=!0,setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)),this.screenSharingStream&&(this.screenSharingStream.addTrack(e.getAudioTracks()[0]),e=this.screenSharingStream),this.localAVStream=e,c(e.getAudioTracks(),!0),this.peerConn=A(this),this.peerConn.addStream(e)}else{if("PermissionDeniedError"!==n.name)return v("Failed to getUserMedia: "+n.name),void this._getUserMediaFailed(n);v("User denied access to camera/microphone. Or possibly you are using an insecure domain. Receiving only."),this.peerConn=A(this)}this.peerConn.createOffer(S(t,t._gotLocalOffer),S(t,t._getLocalOfferFailed),r),l(t,"create_offer")},a.prototype._sendAnswer=function(e){u(this,"m.call.answer",this._answerContent).then(()=>{l(this,"connecting"),_(this)}).catch(e=>{l(this,"ringing"),this.client.cancelPendingEvent(e.event);let t=a.ERR_SEND_ANSWER,n="Failed to send answer";throw"UnknownDeviceError"==e.name&&(t=a.ERR_UNKNOWN_DEVICES,n="Unknown devices present in the room"),this.emit("error",b(t,n)),e})},a.prototype._maybeGotUserMediaForAnswer=function(e){const t=this;if("ended"==t.state)return;const n=e;if(e instanceof MediaStream){const n=t.getLocalVideoElement();n&&"video"==t.type&&(n.autoplay=!0,this.assignElement(n,e,"localVideo"),n.muted=!0,setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)),t.localAVStream=e,c(e.getAudioTracks(),!0),t.peerConn.addStream(e)}else{if("PermissionDeniedError"!==n.name)return v("Failed to getUserMedia: "+n.name),void this._getUserMediaFailed(n);v("User denied access to camera/microphone. Or possibly you are using an insecure domain. Receiving only.")}const r={mandatory:{OfferToReceiveAudio:!0,OfferToReceiveVideo:"video"===t.type}};t.peerConn.createAnswer((function(e){v("Created answer: ",e),t.peerConn.setLocalDescription(e,(function(){t._answerContent={version:0,call_id:t.callId,answer:{sdp:t.peerConn.localDescription.sdp,type:t.peerConn.localDescription.type}},t._sendAnswer()}),(function(){v("Error setting local description!")}),r)}),(function(e){v("Failed to create answer: "+e)})),l(t,"create_answer")},a.prototype._gotLocalIceCandidate=function(e){if(e.candidate){if(v("Got local ICE "+e.candidate.sdpMid+" candidate: "+e.candidate.candidate),"ended"==this.state)return;const t={candidate:e.candidate.candidate,sdpMid:e.candidate.sdpMid,sdpMLineIndex:e.candidate.sdpMLineIndex};d(this,t)}},a.prototype._gotRemoteIceCandidate=function(e){"ended"!=this.state&&(v("Got remote ICE "+e.sdpMid+" candidate: "+e.candidate),this.peerConn.addIceCandidate(new this.webRtc.RtcIceCandidate(e),(function(){}),(function(e){})))},a.prototype._receivedAnswer=function(e){if("ended"==this.state)return;this.peerConn.setRemoteDescription(new this.webRtc.RtcSessionDescription(e.answer),S(this,this._onSetRemoteDescriptionSuccess),S(this,this._onSetRemoteDescriptionError)),l(this,"connecting")},a.prototype._gotLocalOffer=function(e){const t=this;v("Created offer: ",e),"ended"!=t.state?t.peerConn.setLocalDescription(e,(function(){const e={version:0,call_id:t.callId,offer:{sdp:t.peerConn.localDescription.sdp,type:t.peerConn.localDescription.type},lifetime:a.CALL_TIMEOUT_MS};u(t,"m.call.invite",e).then(()=>{l(t,"invite_sent"),setTimeout((function(){"invite_sent"==t.state&&t.hangup("invite_timeout")}),a.CALL_TIMEOUT_MS)}).catch(e=>{let n=a.ERR_SEND_INVITE,r="Failed to send invite";throw"UnknownDeviceError"==e.name&&(n=a.ERR_UNKNOWN_DEVICES,r="Unknown devices present in the room"),t.client.cancelPendingEvent(e.event),h(t,"local",n,!1),t.emit("error",b(n,r)),e})}),(function(){v("Error setting local description!")})):v("Ignoring newly created offer on call ID "+t.callId+" because the call has ended")},a.prototype._getLocalOfferFailed=function(e){this.emit("error",b(a.ERR_LOCAL_OFFER_FAILED,"Failed to start audio for call!"))},a.prototype._getUserMediaFailed=function(e){h(this,"local","user_media_failed",!1),this.emit("error",b(a.ERR_NO_USER_MEDIA,"Couldn't start capturing media! Is your microphone set up and does this app have permission?"))},a.prototype._onIceConnectionStateChanged=function(){"ended"!=this.state&&(v("Ice connection state changed to: "+this.peerConn.iceConnectionState),"completed"==this.peerConn.iceConnectionState||"connected"==this.peerConn.iceConnectionState?(l(this,"connected"),this.didConnect=!0):"failed"==this.peerConn.iceConnectionState&&this.hangup("ice_failed"))},a.prototype._onSignallingStateChanged=function(){v("call "+this.callId+": Signalling state changed to: "+this.peerConn.signalingState)},a.prototype._onSetRemoteDescriptionSuccess=function(){v("Set remote description")},a.prototype._onSetRemoteDescriptionError=function(e){v("Failed to set remote description"+e)},a.prototype._onAddStream=function(e){v("Stream id "+e.stream.id+" added");const t=e.stream;t.getVideoTracks().length>0?(this.type="video",this.remoteAVStream=t,this.remoteAStream=t):(this.type="voice",this.remoteAStream=t);const n=this;T(t,(function(e){v("Track id "+e.id+" added"),e.onstarted=S(n,n._onRemoteStreamTrackStarted)})),void 0!==e.stream.oninactive?e.stream.oninactive=S(n,n._onRemoteStreamEnded):e.stream.onended=S(n,n._onRemoteStreamEnded),e.stream.onstarted=S(n,n._onRemoteStreamStarted),"video"===this.type?(m(this),g(this)):g(this)},a.prototype._onRemoteStreamStarted=function(e){l(this,"connected")},a.prototype._onRemoteStreamEnded=function(e){v("Remote stream ended"),this.hangupParty="remote",l(this,"ended"),p(this),"closed"!=this.peerConn.signalingState&&this.peerConn.close(),this.emit("hangup",this)},a.prototype._onRemoteStreamTrackStarted=function(e){l(this,"connected")},a.prototype._onHangupReceived=function(e){v("Hangup received"),h(this,"remote",e.reason,!0)},a.prototype._onAnsweredElsewhere=function(e){v("Answered elsewhere"),h(this,"remote","answered_elsewhere",!0)};const c=function(e,t){for(let n=0;n5)return v("Failed to send candidates on attempt %s. Giving up for now.",e.candidateSendTries),void(e.candidateSendTries=0);const r=500*Math.pow(2,e.candidateSendTries);++e.candidateSendTries,v("Failed to send candidates. Retrying in "+r+"ms"),setTimeout((function(){_(e)}),r)}))},w=function(e,t){e.client.callList[e.callId]=e,e.webRtc.getUserMedia(t,S(e,e._maybeGotUserMediaForInvite),S(e,e._maybeGotUserMediaForInvite)),l(e,"wait_local_media"),e.direction="outbound",e.config=t},A=function(e){const t=new e.webRtc.RtcPeerConnection({iceTransportPolicy:e.forceTURN?"relay":void 0,iceServers:e.turnServers});return t.oniceconnectionstatechange=S(e,e._onIceConnectionStateChanged),t.onsignalingstatechange=S(e,e._onSignallingStateChanged),t.onicecandidate=S(e,e._gotLocalIceCandidate),t.onaddstream=S(e,e._onAddStream),t},E=function(t){const n=e.screen;if(n)return{video:{mediaSource:"screen",mandatory:{chromeMediaSource:"screen",chromeMediaSourceId:""+Date.now(),maxWidth:n.width,maxHeight:n.height,minFrameRate:1,maxFrameRate:10}}};t.emit("error",b(a.ERR_NO_USER_MEDIA,"Couldn't determine screen sharing constaints."))},k=function(t){const n=!!e.window.navigator.webkitGetUserMedia;switch(t){case"voice":return{audio:{deviceId:x?{ideal:x}:void 0},video:!1};case"video":return{audio:{deviceId:x?{ideal:x}:void 0},video:{deviceId:R?{ideal:R}:void 0,width:n?{exact:640}:{ideal:640},height:n?{exact:360}:{ideal:360}}}}},S=function(e,t){return function(){return t.apply(e,arguments)}},T=function(e,t){!function(e,t){const n=e.getVideoTracks();for(let e=0;e{let i=!0;const o=e.open(t);o.onupgradeneeded=()=>{i=!1},o.onblocked=()=>r(),o.onsuccess=()=>{o.result.close(),i||e.deleteDatabase(t),n(i)},o.onerror=e=>r(e.target.error)})}},function(e,t,n){"use strict";(function(e){var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.OlmDevice=c,t.WITHHELD_MESSAGES=void 0;var i=n(4),o=n(36),s=r(n(141));function a(e){if(void 0===e)throw new Error("payloadString undefined");if(e.length>49152)throw new Error("Message too long ("+e.length+" bytes). The maximum for an encrypted message is 49152 bytes.")}function c(e){this._cryptoStore=e,this._pickleKey="DEFAULT_KEY",this.deviceCurve25519Key=null,this.deviceEd25519Key=null,this._maxOneTimeKeys=null,this._outboundGroupSessionStore={},this._inboundGroupSessionMessageIndexes={},this._sessionsInProgress={}}c.prototype.init=async function(){let t;const n=new e.Olm.Account;try{await async function(e,t,n){await e.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],r=>{e.getAccount(r,i=>{null!==i?n.unpickle(t,i):(n.create(),i=n.pickle(t),e.storeAccount(r,i))})})}(this._cryptoStore,this._pickleKey,n),t=JSON.parse(n.identity_keys()),this._maxOneTimeKeys=n.max_number_of_one_time_keys()}finally{n.free()}this.deviceCurve25519Key=t.curve25519,this.deviceEd25519Key=t.ed25519},c.getOlmVersion=function(){return e.Olm.get_library_version()},c.prototype._getAccount=function(t,n){this._cryptoStore.getAccount(t,t=>{const r=new e.Olm.Account;try{r.unpickle(this._pickleKey,t),n(r)}finally{r.free()}})},c.prototype._storeAccount=function(e,t){this._cryptoStore.storeAccount(e,t.pickle(this._pickleKey))},c.prototype._getSession=function(e,t,n,r){this._cryptoStore.getEndToEndSession(e,t,n,e=>{this._unpickleSession(e,r)})},c.prototype._unpickleSession=function(t,n){const r=new e.Olm.Session;try{r.unpickle(this._pickleKey,t.session),n(Object.assign({},t,{session:r}))}finally{r.free()}},c.prototype._saveSession=function(e,t,n){const r=t.session.session_id(),i=Object.assign(t,{session:t.session.pickle(this._pickleKey)});this._cryptoStore.storeEndToEndSession(e,r,i,n)},c.prototype._getUtility=function(t){const n=new e.Olm.Utility;try{return t(n)}finally{n.free()}},c.prototype.sign=async function(e){let t;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_ACCOUNT],n=>{this._getAccount(n,n=>{t=n.sign(e)})}),t},c.prototype.getOneTimeKeys=async function(){let e;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_ACCOUNT],t=>{this._getAccount(t,t=>{e=JSON.parse(t.one_time_keys())})}),e},c.prototype.maxNumberOfOneTimeKeys=function(){return this._maxOneTimeKeys},c.prototype.markKeysAsPublished=async function(){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],e=>{this._getAccount(e,t=>{t.mark_keys_as_published(),this._storeAccount(e,t)})})},c.prototype.generateOneTimeKeys=function(e){return this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],t=>{this._getAccount(t,n=>{n.generate_one_time_keys(e),this._storeAccount(t,n)})})},c.prototype.createOutboundSession=async function(t,n){let r;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT,o.IndexedDBCryptoStore.STORE_SESSIONS],i=>{this._getAccount(i,o=>{const s=new e.Olm.Session;try{s.create_outbound(o,t,n),r=s.session_id(),this._storeAccount(i,o);const e={session:s,lastReceivedMessageTs:Date.now()};this._saveSession(t,e,i)}finally{s.free()}})}),r},c.prototype.createInboundSession=async function(t,n,r){if(0!==n)throw new Error("Need messageType == 0 to create inbound session");let i;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT,o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getAccount(o,s=>{const a=new e.Olm.Session;try{a.create_inbound_from(s,t,r),s.remove_one_time_keys(a),this._storeAccount(o,s);const e=a.decrypt(n,r),c={session:a,lastReceivedMessageTs:Date.now()};this._saveSession(t,c,o),i={payload:e,session_id:a.session_id()}}finally{a.free()}})}),i},c.prototype.getSessionIdsForDevice=async function(e){if(this._sessionsInProgress[e]){i.logger.log("waiting for olm session to be created");try{await this._sessionsInProgress[e]}catch(e){}}let t;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_SESSIONS],n=>{this._cryptoStore.getEndToEndSessions(e,n,e=>{t=Object.keys(e)})}),t},c.prototype.getSessionIdForDevice=async function(e,t){const n=await this.getSessionInfoForDevice(e,t);if(0===n.length)return null;let r=0;for(let e=1;es||i===s&&t.sessionId{this._cryptoStore.getEndToEndSessions(e,t,e=>{const t=Object.keys(e).sort();for(const r of t)this._unpickleSession(e[r],e=>{n.push({lastReceivedMessageTs:e.lastReceivedMessageTs,hasReceivedMessage:e.session.has_received_message(),sessionId:r})})})}),n},c.prototype.encryptMessage=async function(e,t,n){let r;return a(n),await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getSession(e,t,o,s=>{const a=s.session.describe();i.logger.log("encryptMessage: Olm Session ID "+t+" to "+e+": "+a),r=s.session.encrypt(n),this._saveSession(e,s,o)})}),r},c.prototype.decryptMessage=async function(e,t,n,r){let s;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getSession(e,t,o,a=>{const c=a.session.describe();i.logger.log("decryptMessage: Olm Session ID "+t+" from "+e+": "+c),s=a.session.decrypt(n,r),a.lastReceivedMessageTs=Date.now(),this._saveSession(e,a,o)})}),s},c.prototype.matchesSession=async function(e,t,n,r){if(0!==n)return!1;let i;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_SESSIONS],n=>{this._getSession(e,t,n,e=>{i=e.session.matches_inbound(r)})}),i},c.prototype.recordSessionProblem=async function(e,t,n){await this._cryptoStore.storeEndToEndSessionProblem(e,t,n)},c.prototype.sessionMayHaveProblems=async function(e,t){return await this._cryptoStore.getEndToEndSessionProblem(e,t)},c.prototype.filterOutNotifiedErrorDevices=async function(e){return await this._cryptoStore.filterOutNotifiedErrorDevices(e)},c.prototype._saveOutboundGroupSession=function(e){const t=e.pickle(this._pickleKey);this._outboundGroupSessionStore[e.session_id()]=t},c.prototype._getOutboundGroupSession=function(t,n){const r=this._outboundGroupSessionStore[t];if(void 0===r)throw new Error("Unknown outbound group session "+t);const i=new e.Olm.OutboundGroupSession;try{return i.unpickle(this._pickleKey,r),n(i)}finally{i.free()}},c.prototype.createOutboundGroupSession=function(){const t=new e.Olm.OutboundGroupSession;try{return t.create(),this._saveOutboundGroupSession(t),t.session_id()}finally{t.free()}},c.prototype.encryptGroupMessage=function(e,t){const n=this;return i.logger.log(`encrypting msg with megolm session ${e}`),a(t),this._getOutboundGroupSession(e,(function(e){const r=e.encrypt(t);return n._saveOutboundGroupSession(e),r}))},c.prototype.getOutboundGroupSessionKey=function(e){return this._getOutboundGroupSession(e,(function(e){return{chain_index:e.message_index(),key:e.session_key()}}))},c.prototype._unpickleInboundGroupSession=function(t,n){const r=new e.Olm.InboundGroupSession;try{return r.unpickle(this._pickleKey,t.session),n(r)}finally{r.free()}},c.prototype._getInboundGroupSession=function(e,t,n,r,i){this._cryptoStore.getEndToEndInboundGroupSession(t,n,r,(t,n)=>{if(null!==t){if(null!==e&&e!==t.room_id)throw new Error("Mismatched room_id for inbound group session (expected "+t.room_id+", was "+e+")");this._unpickleInboundGroupSession(t,e=>{i(e,t,n)})}else i(null,null,n)})},c.prototype.addInboundGroupSession=async function(t,n,r,s,a,c,f){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(t,n,s,o,(l,u)=>{const d=new e.Olm.InboundGroupSession;try{if(f?d.import_session(a):d.create(a),s!=d.session_id())throw new Error("Mismatched group session ID from senderKey: "+n);if(l&&(i.logger.log("Update for megolm session "+n+"/"+s),l.first_known_index()<=d.first_known_index()))return void i.logger.log(`Keeping existing megolm session ${s}`);const e={room_id:t,session:d.pickle(this._pickleKey),keysClaimed:c,forwardingCurve25519KeyChain:r};this._cryptoStore.storeEndToEndInboundGroupSession(n,s,e,o)}finally{d.free()}})})},c.prototype.addInboundGroupSessionWithheld=async function(e,t,n,r,i){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._cryptoStore.storeEndToEndInboundGroupSessionWithheld(t,n,{room_id:e,code:r,reason:i},o)})};const f={"m.unverified":"The sender has disabled encrypting to unverified devices.","m.blacklisted":"The sender has blocked you.","m.unauthorised":"You are not authorised to read the message.","m.no_olm":"Unable to establish a secure channel."};function l(e){return e.code&&e.code in f?f[e.code]:e.reason?e.reason:"decryption key withheld"}t.WITHHELD_MESSAGES=f,c.prototype.decryptGroupMessage=async function(e,t,n,r,i,a){let c,f;if(await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(e,t,n,o,(e,u,d)=>{if(null===e)return d&&(f=new s.DecryptionError("MEGOLM_UNKNOWN_INBOUND_SESSION_ID",l(d),{session:t+"|"+n})),void(c=null);let h;try{h=e.decrypt(r)}catch(e){return void(f=e&&"OLM.UNKNOWN_MESSAGE_INDEX"===e.message&&d?new s.DecryptionError("MEGOLM_UNKNOWN_INBOUND_SESSION_ID",l(d),{session:t+"|"+n}):e)}let p=h.plaintext;if(void 0===p)p=h;else{const e=t+"|"+n+"|"+h.message_index;if(e in this._inboundGroupSessionMessageIndexes){const t=this._inboundGroupSessionMessageIndexes[e];if(t.id!==i||t.timestamp!==a)return void(f=new Error("Duplicate message index, possible replay attack: "+e))}this._inboundGroupSessionMessageIndexes[e]={id:i,timestamp:a}}u.session=e.pickle(this._pickleKey),this._cryptoStore.storeEndToEndInboundGroupSession(t,n,u,o),c={result:p,keysClaimed:u.keysClaimed||{},senderKey:t,forwardingCurve25519KeyChain:u.forwardingCurve25519KeyChain||[]}})}),f)throw f;return c},c.prototype.hasInboundSessionKeys=async function(e,t,n){let r;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._cryptoStore.getEndToEndInboundGroupSession(t,n,o,o=>{null!==o?e!==o.room_id?(i.logger.warn(`requested keys for inbound group session ${t}|`+`${n}, with incorrect room_id `+`(expected ${o.room_id}, `+`was ${e})`),r=!1):r=!0:r=!1})}),r},c.prototype.getInboundGroupSessionKey=async function(e,t,n,r){let i;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(e,t,n,o,(e,t)=>{if(null===e)return void(i=null);void 0===r&&(r=e.first_known_index());const n=e.export_session(r),o=(t.keysClaimed||{}).ed25519||null;i={chain_index:r,key:n,forwarding_curve25519_key_chain:t.forwardingCurve25519KeyChain||[],sender_claimed_ed25519_key:o}})}),i},c.prototype.exportInboundGroupSession=function(e,t,n){return this._unpickleInboundGroupSession(n,r=>{const i=r.first_known_index();return{sender_key:e,sender_claimed_keys:n.keysClaimed,room_id:n.room_id,session_id:t,session_key:r.export_session(i),forwarding_curve25519_key_chain:r.forwardingCurve25519KeyChain||[],first_known_index:r.first_known_index()}})},c.prototype.verifySignature=function(e,t,n){this._getUtility((function(r){r.ed25519_verify(e,t,n)}))}}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(295),n(296);var r=n(82);Object.keys(r).forEach((function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(t,e,{enumerable:!0,get:function(){return r[e]}})}))},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.DeviceTrustLevel=t.UserTrustLevel=t.CrossSigningLevel=t.CrossSigningInfo=void 0;var r=n(22),i=n(10),o=n(4);function s(e){return Object.values(e.keys)[0]}class a extends i.EventEmitter{constructor(e,t){super(),Object.defineProperty(this,"userId",{enumerable:!0,value:e}),this._callbacks=t||{},this.keys={},this.firstUse=!0}async getCrossSigningKey(t,n){if(!this._callbacks.getCrossSigningKey)throw new Error("No getCrossSigningKey callback supplied");void 0===n&&(n=this.getId(t));const r=await this._callbacks.getCrossSigningKey(t,n);if(!r)throw new Error("getCrossSigningKey callback for "+t+" returned falsey");const i=new e.Olm.PkSigning,o=i.init_with_seed(r);if(o!==n)throw i.free(),new Error("Key type "+t+" from getCrossSigningKey callback did not match");return[o,i]}static fromStorage(e,t){const n=new a(t);for(const t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}toStorage(){return{keys:this.keys,firstUse:this.firstUse}}async isStoredInSecretStorage(e){let t=!0;for(const n of["master","self_signing","user_signing"])t&=await e.isStored(`m.cross_signing.${n}`,!1);return t}static async storeInSecretStorage(e,t){for(const n of Object.keys(e)){const i=(0,r.encodeBase64)(e[n]);await t.store(`m.cross_signing.${n}`,i)}}static async getFromSecretStorage(e,t){const n=await t.get(`m.cross_signing.${e}`);return(0,r.decodeBase64)(n)}getId(e){if(e=e||"master",!this.keys[e])return null;return s(this.keys[e])}async resetKeys(t){if(!this._callbacks.saveCrossSigningKeys)throw new Error("No saveCrossSigningKeys callback supplied");if(void 0===t||t&c.MASTER||!this.keys.master)t=c.MASTER|c.USER_SIGNING|c.SELF_SIGNING;else if(0===t)return;const n={},i={};let o,s;try{if(t&c.MASTER?(o=new e.Olm.PkSigning,n.master=o.generate_seed(),s=o.init_with_seed(n.master),i.master={user_id:this.userId,usage:["master"],keys:{["ed25519:"+s]:s}}):[s,o]=await this.getCrossSigningKey("master"),t&c.SELF_SIGNING){const t=new e.Olm.PkSigning;try{n.self_signing=t.generate_seed();const e=t.init_with_seed(n.self_signing);i.self_signing={user_id:this.userId,usage:["self_signing"],keys:{["ed25519:"+e]:e}},(0,r.pkSign)(i.self_signing,o,this.userId,s)}finally{t.free()}}if(t&c.USER_SIGNING){const t=new e.Olm.PkSigning;try{n.user_signing=t.generate_seed();const e=t.init_with_seed(n.user_signing);i.user_signing={user_id:this.userId,usage:["user_signing"],keys:{["ed25519:"+e]:e}},(0,r.pkSign)(i.user_signing,o,this.userId,s)}finally{t.free()}}Object.assign(this.keys,i),this._callbacks.saveCrossSigningKeys(n)}finally{o&&o.free()}}setKeys(e){const t={};if(e.master){if(e.master.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in master key from "+this.userId;throw o.logger.error(t),new Error(t)}this.keys.master?s(e.master)!==this.getId()&&(this.firstUse=!1):this.firstUse=!0,t.master=e.master}else{if(!this.keys.master)throw new Error("Tried to set cross-signing keys without a master key");t.master=this.keys.master}const n=s(t.master);if(e.user_signing){if(e.user_signing.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in user_signing key from "+this.userId;throw o.logger.error(t),new Error(t)}try{(0,r.pkVerify)(e.user_signing,n,this.userId)}catch(e){throw o.logger.error("invalid signature on user-signing key"),e}}if(e.self_signing){if(e.self_signing.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in self_signing key from "+this.userId;throw o.logger.error(t),new Error(t)}try{(0,r.pkVerify)(e.self_signing,n,this.userId)}catch(e){throw o.logger.error("invalid signature on self-signing key"),e}}e.master&&(this.keys.master=e.master,this.keys.self_signing=null,this.keys.user_signing=null),e.self_signing&&(this.keys.self_signing=e.self_signing),e.user_signing&&(this.keys.user_signing=e.user_signing)}async signObject(e,t){if(!this.keys[t])throw new Error("Attempted to sign with "+t+" key but no such key present");const[n,i]=await this.getCrossSigningKey(t);try{return(0,r.pkSign)(e,i,this.userId,n),e}finally{i.free()}}async signUser(e){if(this.keys.user_signing)return this.signObject(e.keys.master,"user_signing")}async signDevice(e,t){if(e!==this.userId)throw new Error(`Trying to sign ${e}'s device; can only sign our own device`);if(this.keys.self_signing)return this.signObject({algorithms:t.algorithms,keys:t.keys,device_id:t.deviceId,user_id:e},"self_signing")}checkUserTrust(e){if(this.userId===e.userId&&this.getId()&&this.getId()===e.getId()&&this.getId("self_signing")&&this.getId("self_signing")===e.getId("self_signing"))return new f(!0,this.firstUse);if(!this.keys.user_signing)return new f(!1,e.firstUse);let t;const n=e.keys.master,i=this.getId("user_signing");try{(0,r.pkVerify)(n,i,this.userId),t=!0}catch(e){t=!1}return new f(t,e.firstUse)}checkDeviceTrust(e,t,n){const i=this.checkUserTrust(e),o=e.keys.self_signing;if(!o)return new l(!1,!1,n);const a=function(e,t){return{algorithms:e.algorithms,keys:e.keys,device_id:e.deviceId,user_id:t,signatures:e.signatures}}(t,e.userId);try{return(0,r.pkVerify)(o,e.getId(),e.userId),(0,r.pkVerify)(a,s(o),e.userId),l.fromUserTrustLevel(i,n)}catch(e){return new l(!1,!1,n)}}}t.CrossSigningInfo=a;const c={MASTER:4,USER_SIGNING:2,SELF_SIGNING:1};t.CrossSigningLevel=c;class f{constructor(e,t){this._crossSigningVerified=e,this._tofu=t}isVerified(){return this.isCrossSigningVerified()}isCrossSigningVerified(){return this._crossSigningVerified}isTofu(){return this._tofu}}t.UserTrustLevel=f;class l{constructor(e,t,n){this._crossSigningVerified=e,this._tofu=t,this._localVerified=n}static fromUserTrustLevel(e,t){return new l(e._crossSigningVerified,e._tofu,t)}isVerified(){return this.isCrossSigningVerified()||this.isLocallyVerified()}isCrossSigningVerified(){return this._crossSigningVerified}isLocallyVerified(){return this._localVerified}isTofu(){return this._tofu}}t.DeviceTrustLevel=l}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VerificationBase=void 0;var r=n(19),i=n(10),o=n(4),s=n(52),a=n(37);const c=new Error("Verification timed out");class f extends i.EventEmitter{constructor(e,t,n,r,i,o){super(),this._channel=e,this._baseApis=t,this.userId=n,this.deviceId=r,this.startEvent=i,this.request=o,this.cancelled=!1,this._done=!1,this._promise=null,this._transactionTimeoutTimer=null,this._resetTimer()}_resetTimer(){o.logger.info("Refreshing/starting the verification transaction timeout timer"),null!==this._transactionTimeoutTimer&&clearTimeout(this._transactionTimeoutTimer),this._transactionTimeoutTimer=setTimeout(()=>{this._done||this.cancelled||(o.logger.info("Triggering verification timeout"),this.cancel(c))},6e5)}_endTimer(){null!==this._transactionTimeoutTimer&&(clearTimeout(this._transactionTimeoutTimer),this._transactionTimeoutTimer=null)}_send(e,t){return this._channel.send(e,t)}_waitForEvent(e){return this._done?Promise.reject(new Error("Verification is already done")):(this._expectedEvent=e,new Promise((e,t)=>{this._resolveEvent=e,this._rejectEvent=t}))}handleEvent(e){if(!this._done)if(e.getType()===this._expectedEvent)"m.key.verification.done"!==this._expectedEvent&&(this._expectedEvent=void 0,this._rejectEvent=void 0,this._resetTimer(),this._resolveEvent(e));else if("m.key.verification.cancel"===e.getType()){const e=this._reject;this._reject=void 0,e(new Error("Other side cancelled verification"))}else{const t=new Error("Unexpected message: expecting "+this._expectedEvent+" but got "+e.getType());if(this._expectedEvent=void 0,this._rejectEvent){const e=this._rejectEvent;this._rejectEvent=void 0,e(t)}this.cancel(t)}}done(){this._endTimer(),this._done||(this._channel.needsDoneMessage&&this._send("m.key.verification.done",{}),this._resolve())}cancel(e){if(this._endTimer(),!this._done){if(this.cancelled=!0,this.userId&&this.deviceId)if(e===c){const e=(0,a.newTimeoutError)();this._send(e.getType(),e.getContent())}else if(e instanceof r.MatrixEvent){if(e.getSender()!==this.userId){const t=e.getContent();"m.key.verification.cancel"===e.getType()?(t.code=t.code||"m.unknown",t.reason=t.reason||t.body||"Unknown reason",this._send("m.key.verification.cancel",t)):this._send("m.key.verification.cancel",{code:"m.unknown",reason:t.body||"Unknown reason"})}}else this._send("m.key.verification.cancel",{code:"m.unknown",reason:e.toString()});null!==this._promise?this._reject&&this._reject(e):this._promise=Promise.reject(e),this.emit("cancel",e)}}verify(){return this._promise?this._promise:(this._promise=new Promise((e,t)=>{this._resolve=(...t)=>{this._done=!0,this._endTimer(),e(...t)},this._reject=(...e)=>{this._done=!0,this._endTimer(),t(...e)}}),this._doVerification&&!this._started&&(this._started=!0,this._resetTimer(),Promise.resolve(this._doVerification()).then(this.done.bind(this),this.cancel.bind(this))),this._promise)}async _verifyKeys(e,t,n){const r=[];for(const[i,a]of Object.entries(t)){const t=i.split(":",2)[1],c=await this._baseApis.getStoredDevice(e,t);if(c)await n(i,c,a),r.push(t);else{const c=this._baseApis._crypto._deviceList.getStoredCrossSigningForUser(e);c&&c.getId()===t?(await n(i,s.DeviceInfo.fromStorage({keys:{[i]:t}},t),a),r.push(t)):o.logger.warn(`verification: Could not find device ${t} to verify`)}}if(!r.length)throw new Error("No devices could be verified");for(const t of r)await this._baseApis.setDeviceVerified(e,t)}}t.VerificationBase=f},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.keyFromAuthData=async function(t,n){if(!e.Olm)throw new Error("Olm is not available");if(!t.private_key_salt||!t.private_key_iterations)throw new Error("Salt and/or iterations not found: this backup cannot be restored with a passphrase");return await i(n,t.private_key_salt,t.private_key_iterations)},t.keyFromPassphrase=async function(t){if(!e.Olm)throw new Error("Olm is not available");const n=(0,r.randomString)(32);return{key:await i(t,n,5e5),salt:n,iterations:5e5}},t.deriveKey=i;var r=n(53);async function i(t,n,r){const i=e.crypto.subtle,o=e.TextEncoder;if(!i||!o)throw new Error("Password-based backup is not avaiable on this platform");const s=await i.importKey("raw",(new o).encode(t),{name:"PBKDF2"},!1,["deriveBits"]),a=await i.deriveBits({name:"PBKDF2",salt:(new o).encode(n),iterations:r,hash:"SHA-512"},s,8*e.Olm.PRIVATE_KEY_LENGTH);return new Uint8Array(a)}}).call(this,n(6))},function(e,t,n){"use strict";(function(e,r){var i=n(16);Object.defineProperty(t,"__esModule",{value:!0}),t.encodeRecoveryKey=function(t){const n=new e(s.length+t.length+1);n.set(s,0),n.set(t,s.length);let r=0;for(let e=0;e{this.accountData[e.type]=e})}_accumulateRooms(e){e.rooms&&(e.rooms.invite&&Object.keys(e.rooms.invite).forEach(t=>{this._accumulateRoom(t,"invite",e.rooms.invite[t])}),e.rooms.join&&Object.keys(e.rooms.join).forEach(t=>{this._accumulateRoom(t,"join",e.rooms.join[t])}),e.rooms.leave&&Object.keys(e.rooms.leave).forEach(t=>{this._accumulateRoom(t,"leave",e.rooms.leave[t])}))}_accumulateRoom(e,t,n){switch(t){case"invite":this._accumulateInviteState(e,n);break;case"join":this.inviteRooms[e]&&delete this.inviteRooms[e],this._accumulateJoinState(e,n);break;case"leave":this.inviteRooms[e]?delete this.inviteRooms[e]:delete this.joinRooms[e];break;default:r.logger.error("Unknown cateogory: ",t)}}_accumulateInviteState(e,t){if(!t.invite_state||!t.invite_state.events)return;if(!this.inviteRooms[e])return void(this.inviteRooms[e]={invite_state:t.invite_state});const n=this.inviteRooms[e];t.invite_state.events.forEach(e=>{let t=!1;for(let r=0;r{n._accountData[e.type]=e}),t.unread_notifications&&(n._unreadNotifications=t.unread_notifications),t.summary){const e="m.heroes",r="m.invited_member_count",i="m.joined_member_count",o=n._summary,s=t.summary;o[e]=s[e]||o[e],o[i]=s[i]||o[i],o[r]=s[r]||o[r]}if(t.ephemeral&&t.ephemeral.events&&t.ephemeral.events.forEach(e=>{"m.receipt"===e.type&&e.content&&Object.keys(e.content).forEach(t=>{e.content[t]["m.read"]&&Object.keys(e.content[t]["m.read"]).forEach(r=>{n._readReceipts[r]={data:e.content[t]["m.read"][r],eventId:t}})})}),t.timeline&&t.timeline.limited&&(n._timeline=[]),t.state&&t.state.events&&t.state.events.forEach(e=>{o(n._currentState,e)}),t.timeline&&t.timeline.events&&t.timeline.events.forEach((e,r)=>{o(n._currentState,e),n._timeline.push({event:e,token:0===r?t.timeline.prev_batch:null})}),n._timeline.length>this.opts.maxTimelineEntries){for(let e=n._timeline.length-this.opts.maxTimelineEntries;e{this._accumulateGroup(t,"invite",e.groups.invite[t])}),e.groups.join&&Object.keys(e.groups.join).forEach(t=>{this._accumulateGroup(t,"join",e.groups.join[t])}),e.groups.leave&&Object.keys(e.groups.leave).forEach(t=>{this._accumulateGroup(t,"leave",e.groups.leave[t])}))}_accumulateGroup(e,t,n){for(const t of["invite","join","leave"])delete this.groups[t][e];this.groups[t][e]=n}getJSON(){const e={join:{},invite:{},leave:{}};Object.keys(this.inviteRooms).forEach(t=>{e.invite[t]=this.inviteRooms[t]}),Object.keys(this.joinRooms).forEach(t=>{const n=this.joinRooms[t],r={ephemeral:{events:[]},account_data:{events:[]},state:{events:[]},timeline:{events:[],prev_batch:null},unread_notifications:n._unreadNotifications,summary:n._summary};Object.keys(n._accountData).forEach(e=>{r.account_data.events.push(n._accountData[e])});const s={type:"m.receipt",room_id:t,content:{}};Object.keys(n._readReceipts).forEach(e=>{const t=n._readReceipts[e];s.content[t.eventId]||(s.content[t.eventId]={"m.read":{}}),s.content[t.eventId]["m.read"][e]=t.data}),Object.keys(s.content).length>0&&r.ephemeral.events.push(s),n._timeline.forEach(e=>{if(!r.timeline.prev_batch){if(!e.token)return;r.timeline.prev_batch=e.token}r.timeline.events.push(e.event)});const a=Object.create(null);for(let e=r.timeline.events.length-1;e>=0;e--){const t=r.timeline.events[e];if(null===t.state_key||void 0===t.state_key)continue;const n=(0,i.deepCopy)(t);n.unsigned&&(n.unsigned.prev_content&&(n.content=n.unsigned.prev_content),n.unsigned.prev_sender&&(n.sender=n.unsigned.prev_sender)),o(a,n)}Object.keys(n._currentState).forEach(e=>{Object.keys(n._currentState[e]).forEach(t=>{let i=n._currentState[e][t];a[e]&&a[e][t]&&(i=a[e][t]),r.state.events.push(i)})}),e.join[t]=r});const t=[];return Object.keys(this.accountData).forEach(e=>{t.push(this.accountData[e])}),{nextBatch:this.nextBatch,roomsData:e,groupsData:this.groups,accountData:t}}getNextBatchToken(){return this.nextBatch}}},function(e,t,n){"use strict";var r=String.prototype.replace,i=/%20/g,o=n(84),s={RFC1738:"RFC1738",RFC3986:"RFC3986"};e.exports=o.assign({default:s.RFC3986,formatters:{RFC1738:function(e){return r.call(e,i,"+")},RFC3986:function(e){return String(e)}}},s)},function(e,t){for(var n=[],r=0;r<256;++r)n[r]=(r+256).toString(16).substr(1);e.exports=function(e,t){var r=t||0,i=n;return[i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]]].join("")}},function(e,t,n){"use strict";t.__esModule=!0,t.stateify=t.TokenState=t.CharacterState=void 0;var r=n(54);var i=function(e){this.j=[],this.T=e||null};i.prototype={defaultTransition:!1,on:function(e,t){if(e instanceof Array){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:null,n=this.next(new e(""));return n===this.defaultTransition?(n=new this.constructor(t),this.on(e,n)):t&&(n.T=t),n},test:function(e,t){return e instanceof t}});t.CharacterState=o,t.TokenState=s,t.stateify=function(e,t,n,r){for(var i=0,s=e.length,a=t,c=[],f=void 0;i=s)return[];for(;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}},function(e,t,n){"use strict";(function(e){var r=n(155),i=n.n(r),o=n(86),s=n.n(o),a=n(26),c=n.n(a),f=n(27),l=n.n(f),u=n(55),d=n.n(u),h=n(56),p=n.n(h),m=n(5),g=n.n(m),y=n(57),b=n.n(y),v=n(1),_=n.n(v),w=n(0),A=n.n(w),E=n(9),k=n.n(E),S=n(335),T=(n(41),n(156)),I=n(38),x=(n(42),n(157)),R=n(158),C=n(40),O=n(28),P=n(87),M=n(160),D=n(88),B=n(162);n(331);function N(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function j(e){for(var t=1;t0&&void 0!==arguments[0])||arguments[0];if(r.state.client){await r.state.client.leave(r.state.roomId);var t={type:"m.login.password",user:r.state.userId,identifier:{type:"m.id.user",user:r.state.userId},password:r.state.password};await r.state.client.deactivateAccount(t,!0),await r.state.client.stopClient(),await r.state.client.clearStores(),r.setState({client:null,ready:!0}),window.clearInterval(r.state.waitIntervalId)}r.state.localStorage&&r.state.localStorage.clear(),e&&r.setState(r.initialState)})),_()(g()(r),"createLocalStorage",(async function(t,n){var r=e.localStorage;if(null==r){var i="matrix-chat-".concat(t,"-").concat(n),o=I.resolve(I.join(T.homedir(),".local-storage",i));r=new x.LocalStorage(o)}return r})),_()(g()(r),"createClientWithAccount",(async function(){var e=C.createClient(r.props.matrixServerUrl);try{await e.registerRequest({})}catch(c){var t=Object(O.uuid)(),n=Object(O.uuid)(),i=c.data.session,o=await e.registerRequest({auth:{session:i,type:"m.login.dummy"},inhibit_login:!1,password:n,username:t,x_show_msisdn:!0}),s=await r.createLocalStorage(o.device_id,i);r.setState({accessToken:o.access_token,userId:o.user_id,username:t,password:n,localStorage:s,sessionId:i,deviceId:o.device_id});var a={baseUrl:r.props.matrixServerUrl,accessToken:o.access_token,userId:o.user_id,deviceId:o.device_id,sessionStore:new C.WebStorageSessionStore(s)};return C.createClient(a)}})),_()(g()(r),"initializeChat",(async function(){r.setState({ready:!1});var e=await r.createClientWithAccount();try{await e.initCrypto()}catch(e){return r.restartWithoutCrypto()}await e.startClient(),e.once("sync",(async function(t,n,i){"PREPARED"===t&&(r.setState({client:e}),e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e))}))})),_()(g()(r),"restartWithoutCrypto",(async function(){r.state.client&&(r.state.client.leave(r.state.roomId),r.state.client.stopClient(),r.state.client.clearStores(),r.state.localStorage.clear()),r.setState({ready:!1,facilitatorInvited:!1,decryptionErrors:{},roomId:null,typingStatus:null,client:null,isCryptoEnabled:!1}),r.displayBotMessage({body:"Restarting chat without encryption."});var e,t={baseUrl:r.props.matrixServerUrl,accessToken:r.state.accessToken,userId:r.state.userId,deviceId:r.state.deviceId};e=C.createClient(t),await e.startClient(),e.once("sync",(async function(t,n,i){if("PREPARED"===t)try{r.setState({client:e}),e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e),r.displayBotMessage({body:"Messages in this chat are not encrypted."})}catch(e){console.log("error",e),r.handleInitError(e)}}))})),_()(g()(r),"initializeUnencryptedChat",(async function(){r.setState({ready:!1});var e=await r.createClientWithAccount();await e.startClient(),e.once("sync",(async function(t,n,i){e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e)}))})),_()(g()(r),"handleInitError",(function(e){console.log("error",e),r.displayBotMessage({body:r.props.chatUnavailableMessage}),r.setState({ready:!0})})),_()(g()(r),"handleDecryptionError",(async function(e,t){var n=e.getId();r.handleMessageEvent(e),r.setState({decryptionErrors:_()({},n,!0)})})),_()(g()(r),"verifyAllRoomDevices",(async function(e,t){if(t&&e&&r.state.isCryptoEnabled){var n=(await t.getEncryptionTargetMembers()).map((function(e){return e.userId})),i=await e.downloadKeys(n);for(var o in i)for(var s in i[o])await e.setDeviceVerified(o,s)}})),_()(g()(r),"createRoom",(async function(e){var t=new Date,n=t.toLocaleDateString(),i=t.toLocaleTimeString(),o={room_alias_name:"private-support-chat-".concat(Object(O.uuid)()),invite:[r.props.botId],visibility:"private",name:"".concat(i,", ").concat(n," - ").concat(r.props.roomName)},s=await e.isCryptoEnabled();s&&(o.initial_state=[{type:"m.room.encryption",state_key:"",content:U}]);var a=(await e.createRoom(o)).room_id;e.setPowerLevel(a,r.props.botId,100),r.setState({roomId:a,isCryptoEnabled:s})})),_()(g()(r),"sendMessage",(async function(e){if(r.state.client&&r.state.roomId)try{await r.state.client.sendTextMessage(r.state.roomId,e)}catch(t){switch(t.name){case"UnknownDeviceError":Object.keys(t.devices).forEach((function(e){Object.keys(t.devices[e]).map((async function(t){await r.state.client.setDeviceKnown(e,t,!0)}))})),r.sendMessage(e);break;default:r.displayBotMessage({body:"Your message was not sent."}),console.log("Error sending message",t)}}})),_()(g()(r),"displayFakeMessage",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Object(O.uuid)(),i={id:n,type:"m.room.message",sender:t,roomId:r.state.roomId,content:e,timestamp:Date.now()};r.setState({messages:j({},r.state.messages,_()({},n,i))})})),_()(g()(r),"displayBotMessage",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Object(O.uuid)(),i={id:n,type:"m.room.message",sender:r.props.botId,roomId:t||r.state.roomId,content:e,timestamp:Date.now()};r.setState({messages:j({},r.state.messages,_()({},n,i))})})),_()(g()(r),"handleMessageEvent",(function(e){var t={id:e.getId(),type:e.getType(),sender:e.getSender(),roomId:e.getRoomId(),content:e.getContent(),timestamp:e.getTs()};if(!(t.content.showToUser&&t.content.showToUser!==r.state.userId||t.content.body.startsWith("!bot")&&t.sender!==r.state.userId)){var n=s()(r.state.messagesInFlight),i=n.findIndex((function(e){return e===t.content.body}));i>-1&&(n.splice(i,1),r.setState({messagesInFlight:n}));var o=j({},r.state.decryptionErrors);delete o[t.id],r.setState({messages:j({},r.state.messages,_()({},t.id,t)),decryptionErrors:o})}})),_()(g()(r),"handleKeyDown",(function(e){switch(e.keyCode){case 27:r.state.emojiSelectorOpen?r.closeEmojiSelector():r.state.opened&&r.handleToggleOpen()}})),_()(g()(r),"setMatrixListeners",(function(e){e.on("sync",(function(t,n,i){switch(t){case"ERROR":case"SYNCING":break;case"PREPARED":r.setState({client:e})}})),e.on("Room.timeline",(function(t,n){var i=t.getType(),o=t.getContent(),s=t.getSender();if("m.room.encryption"===i&&(r.displayBotMessage({body:"Messages in this chat are secured with end-to-end encryption."},n.room_id),r.verifyAllRoomDevices(e,n)),"m.room.message"===i&&!r.state.isCryptoEnabled){if(t.isEncrypted())return;r.handleMessageEvent(t)}"m.room.member"===i&&"invite"===o.membership&&s===r.props.botId&&r.setState({facilitatorInvited:!0}),"m.room.member"===i&&"join"===o.membership&&s!==r.props.botId&&s!==r.state.userId&&(r.verifyAllRoomDevices(e,n),r.setState({facilitatorId:s,ready:!0}),window.clearInterval(r.state.waitIntervalId))})),e.on("Event.decrypted",(function(e,t){if(t)return r.handleDecryptionError(e,t);"m.room.message"===e.getType()&&r.handleMessageEvent(e)})),e.on("RoomMember.typing",(function(e,t){t.typing&&t.roomId===r.state.roomId?r.setState({typingStatus:"".concat(t.name," is typing...")}):r.setState({typingStatus:null})})),e.on("event",(function(e){var t=e.getType(),n=e.getContent();"m.bot.signal"===t&&r.handleBotSignal(n.signal)}))})),_()(g()(r),"handleBotSignal",(function(e){switch(e){case"END_CHAT":return r.displayBotMessage({body:r.props.exitMessage}),r.exitChat(!1);case"CHAT_OFFLINE":return r.displayBotMessage({body:r.props.chatOfflineMessage}),r.exitChat(!1)}})),_()(g()(r),"handleInputChange",(function(e){r.setState({inputValue:e.target.value})})),_()(g()(r),"handleAcceptTerms",(function(){r.setState({awaitingAgreement:!1}),r.startWaitTimeForFacilitator();try{r.props.isEncryptionDisabled?r.initializeUnencryptedChat():r.initializeChat()}catch(e){r.handleInitError(e)}})),_()(g()(r),"startWaitTimeForFacilitator",(function(){var e=window.setInterval((function(){r.state.facilitatorId||r.state.ready||r.displayBotMessage({body:r.props.waitMessage})}),r.props.waitInterval);r.setState({waitIntervalId:e})})),_()(g()(r),"handleRejectTerms",(function(){r.exitChat(),r.displayBotMessage({body:r.props.exitMessage})})),_()(g()(r),"handleSubmit",(function(e){e.preventDefault();var t=r.state.inputValue;if(!Boolean(t))return null;if(r.state.isCryptoEnabled&&r.state.client&&(!r.state.client.isRoomEncrypted(r.state.roomId)||!r.state.client.isCryptoEnabled()))return null;if(r.state.client&&r.state.roomId){var n=s()(r.state.messagesInFlight);n.push(t),r.setState({inputValue:"",messagesInFlight:n},(function(){return r.sendMessage(t)})),r.chatboxInput.current.focus()}})),_()(g()(r),"onEmojiClick",(function(e,t){e.preventDefault();var n=t.emoji;r.setState({inputValue:r.state.inputValue.concat(n),emojiSelectorOpen:!1},r.chatboxInput.current.focus())})),r.initialState={opened:!1,showDock:!0,client:null,ready:!0,accessToken:null,userId:null,password:null,localStorage:null,messages:{},inputValue:"",errors:[],roomId:null,typingStatus:null,awaitingAgreement:!0,emojiSelectorOpen:!1,facilitatorInvited:!1,isMobile:!0,isSlowConnection:!0,decryptionErrors:{},messagesInFlight:[]},r.state=r.initialState,r.chatboxInput=A.a.createRef(),r.messageWindow=A.a.createRef(),r.termsUrl=A.a.createRef(),r}return b()(n,t),l()(n,[{key:"componentDidUpdate",value:function(e,t){t.messages===this.state.messages&&t.messagesInFlight===this.state.messagesInFlight&&t.typingStatus===this.state.typingStatus||this.messageWindow.current.scrollTo&&this.messageWindow.current.scrollTo(0,this.messageWindow.current.scrollHeight),!t.facilitatorInvited&&this.state.facilitatorInvited&&this.displayBotMessage({body:this.props.confirmationMessage}),!t.opened&&this.state.opened&&this.detectMobile()}},{key:"componentDidMount",value:function(){document.addEventListener("keydown",this.handleKeyDown,!1),window.addEventListener("beforeunload",this.exitChat)}},{key:"componentWillUnmount",value:function(){document.removeEventListener("keydown",this.handleKeyDown,!1),window.removeEventListener("beforeunload",this.exitChat),this.exitChat()}},{key:"render",value:function(){var e,t=this,n=this.state,r=n.ready,o=n.messages,s=n.messagesInFlight,a=n.inputValue,c=n.userId,f=n.roomId,l=n.typingStatus,u=n.opened,d=n.showDock,h=n.emojiSelectorOpen,p=n.isMobile,m=n.decryptionErrors,g=Object.values(o).sort((function(e,t){return e.timestamp-t.timestamp})),y=this.props.position.split(" "),b=i()(y,2),v=b[0],w=b[1];return A.a.createElement("div",{id:"safesupport"},A.a.createElement("div",{className:"docked-widget size-".concat(this.props.size),role:"complementary",style:(e={},_()(e,v,"10px"),_()(e,w,"10px"),e)},A.a.createElement(S.a,{in:u,timeout:250,onExited:this.handleWidgetExit,onEntered:this.handleWidgetEnter},(function(e){return A.a.createElement("div",{className:"widget widget-".concat(e," position-").concat(v),"aria-hidden":!u},A.a.createElement("div",{id:"safesupport-chatbox","aria-haspopup":"dialog"},A.a.createElement(D.a,{handleToggleOpen:t.handleToggleOpen,opened:u,handleExitChat:t.handleExitChat}),A.a.createElement("div",{className:"message-window",ref:t.messageWindow},A.a.createElement("div",{className:"messages"},A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text"},t.props.introMessage)),A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text"},"Please read the full ",A.a.createElement("a",{href:t.props.termsUrl,ref:t.termsUrl,target:"_blank",rel:"noopener noreferrer"},"terms and conditions"),". By using this chat, you agree to these terms.")),A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text"},t.props.agreementMessage)),A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text buttons"},"👉",A.a.createElement("button",{className:"btn",id:"accept",onClick:t.handleAcceptTerms},"YES"),A.a.createElement("button",{className:"btn",id:"reject",onClick:t.handleRejectTerms},"NO"))),g.map((function(e,n){return A.a.createElement(P.a,{key:e.id,message:e,userId:c,botId:t.props.botId,client:t.state.client})})),s.map((function(e,t){return A.a.createElement(P.a,{key:"message-inflight-".concat(t),message:{content:{body:e}},placeholder:!0})})),l&&A.a.createElement("div",{className:"notices"},A.a.createElement("div",{role:"status"},l)),Boolean(Object.keys(m).length)&&A.a.createElement("div",{className:"message from-bot"},A.a.createElement("div",{className:"text buttons"},"Restart chat without encryption?",A.a.createElement("button",{className:"btn",id:"accept",onClick:t.restartWithoutCrypto},"RESTART"))),!r&&A.a.createElement("div",{className:"loader"},"loading..."))),A.a.createElement("div",{className:"input-window"},A.a.createElement("form",{onSubmit:t.handleSubmit},A.a.createElement("div",{className:"message-input-container"},A.a.createElement("input",{id:"message-input",type:"text",onChange:t.handleInputChange,value:a,"aria-label":"Send a message...",placeholder:"Send a message...",autoFocus:!0,ref:t.chatboxInput}),"entered"===e&&!p&&A.a.createElement(B.a,{onEmojiClick:t.onEmojiClick,emojiSelectorOpen:h,toggleEmojiSelector:t.toggleEmojiSelector,closeEmojiSelector:t.closeEmojiSelector})),A.a.createElement("input",{type:"submit",value:"Send",id:"submit",onClick:t.handleSubmit})))))})),d&&!f&&A.a.createElement(M.a,{handleToggleOpen:this.handleToggleOpen,size:this.props.size,label:this.props.dockLabel}),d&&f&&A.a.createElement(D.a,{handleToggleOpen:this.handleToggleOpen,opened:u,handleExitChat:this.handleExitChat})))}}]),n}(A.a.Component);L.propTypes={matrixServerUrl:k.a.string.isRequired,botId:k.a.string.isRequired,termsUrl:k.a.string,introMessage:k.a.string,roomName:k.a.string,agreementMessage:k.a.string,confirmationMessage:k.a.string,exitMessage:k.a.string,chatUnavailableMessage:k.a.string,anonymousDisplayName:k.a.string,waitMessage:k.a.string,chatOfflineMessage:k.a.string,isEncryptionDisabled:k.a.bool,position:k.a.oneOf(["top left","top right","bottom left","bottom right"]),size:k.a.oneOf(["small","large"]),maxWaitTime:k.a.number,waitInterval:k.a.number,dockLabel:k.a.string},L.defaultProps={matrixServerUrl:"https://matrix.rhok.space/",botId:"@help-bot:rhok.space",termsUrl:"https://tosdr.org/",roomName:"Support Chat",introMessage:"This chat application does not collect any of your personal data or any data from your use of this service.",agreementMessage:"Do you want to continue?",confirmationMessage:"Waiting for a facilitator to join the chat...",exitMessage:"The chat is closed. You may close this window.",anonymousDisplayName:"Anonymous",chatUnavailableMessage:"The chat service is not available right now. Please try again later.",waitMessage:"Please be patient, our online facilitators are currently responding to other support requests.",chatOfflineMessage:"All of the chat facilitators are currently offline.",isEncryptionDisabled:!1,position:"bottom right",size:"large",maxWaitTime:6e5,waitInterval:12e4,dockLabel:"Start a new chat"},t.a=L}).call(this,n(6))},function(e,t,n){var r=n(169),i=n(170),o=n(171);e.exports=function(e,t){return r(e)||i(e,t)||o()}},function(e,t){t.endianness=function(){return"LE"},t.hostname=function(){return"undefined"!=typeof location?location.hostname:""},t.loadavg=function(){return[]},t.uptime=function(){return 0},t.freemem=function(){return Number.MAX_VALUE},t.totalmem=function(){return Number.MAX_VALUE},t.cpus=function(){return[]},t.type=function(){return"Browser"},t.release=function(){return"undefined"!=typeof navigator?navigator.appVersion:""},t.networkInterfaces=t.getNetworkInterfaces=function(){return{}},t.arch=function(){return"javascript"},t.platform=function(){return"browser"},t.tmpdir=t.tmpDir=function(){return"/tmp"},t.EOL="\n",t.homedir=function(){return"/"}},function(e,t,n){(function(e){(function(){var r,i,o,s,a,c,f,l,u,d,h,p,m,g=function(e,t){for(var n in t)y.call(t,n)&&(e[n]=t[n]);function r(){this.constructor=e}return r.prototype=t.prototype,e.prototype=new r,e.__super__=t.prototype,e},y={}.hasOwnProperty;p=n(38),h=n(42),d=n(10),m=n(180).sync,c=function(e){var t,n,r,i,o;for(o=[],t=0,n=(i=h.readdirSync(e)).length;tthis.quota)throw new s;if(m(c,y,"utf8"),i||((u=new o(n,this._keys.push(e)-1)).size=b,this._metaKeyMap[e]=u,this.length+=1,this._bytesInUse+=b),l)return r=new a(e,g,t,this._eventUrl),this.emit("storage",r)},r.prototype.getItem=function(e){var t,n;return e=f(e),(n=this._metaKeyMap[e])?(t=p.join(this._location,n.key),h.readFileSync(t,"utf8")):null},r.prototype._getStat=function(e){var t;e=f(e),t=p.join(this._location,encodeURIComponent(e));try{return h.statSync(t)}catch(e){return null}},r.prototype.removeItem=function(e){var t,n,r,i,o,s,c,u;if(e=f(e),s=this._metaKeyMap[e]){for(i in c=null,(r=d.EventEmitter.listenerCount(this,"storage"))&&(c=this.getItem(e)),delete this._metaKeyMap[e],this.length-=1,this._bytesInUse-=s.size,n=p.join(this._location,s.key),this._keys.splice(s.index,1),u=this._metaKeyMap)u[i],(o=this._metaKeyMap[i]).index>s.index&&(o.index-=1);if(l(n),r)return t=new a(e,c,null,this._eventUrl),this.emit("storage",t)}},r.prototype.key=function(e){var t;return"---.EMPTY_STRING.---"===(t=this._keys[e])?"":t},r.prototype.clear=function(){var e;if(c(this._location),this._metaKeyMap=u(),this._keys=[],this.length=0,this._bytesInUse=0,d.EventEmitter.listenerCount(this,"storage"))return e=new a(null,null,null,this._eventUrl),this.emit("storage",e)},r.prototype._getBytesInUse=function(){return this._bytesInUse},r.prototype._deleteLocation=function(){return delete n[this._location],l(this._location),this._metaKeyMap={},this._keys=[],this.length=0,this._bytesInUse=0},r}(d.EventEmitter)),t.LocalStorage=i,t.JSONStorage=r,t.QUOTA_EXCEEDED_ERR=s}).call(this)}).call(this,n(13))},function(e,t,n){(function(t,r,i,o){var s,a,c,f,l={},u=(c="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,function(f){var u,d;if(f=f||{},u||(u=void 0!==f?f:{}),"undefined"!=typeof window)d=function(e){window.crypto.getRandomValues(e)};else{if(!e.exports)throw Error("Cannot find global to attach library to");var h=n(204);d=function(e){var t=h.randomBytes(e.length);e.set(t)},r=t.process}if("undefined"!=typeof OLM_OPTIONS)for(var p in OLM_OPTIONS)OLM_OPTIONS.hasOwnProperty(p)&&(u[p]=OLM_OPTIONS[p]);u.onRuntimeInitialized=function(){We=u._olm_error(),l.PRIVATE_KEY_LENGTH=u._olm_pk_private_key_length(),s&&s()},u.onAbort=function(e){a&&a(e)};var m,g={};for(m in u)u.hasOwnProperty(m)&&(g[m]=u[m]);u.arguments=[],u.thisProgram="./this.program",u.quit=function(e,t){throw t},u.preRun=[],u.postRun=[];var y=!1,b=!1,v=!1,_=!1;y="object"==typeof window,b="function"==typeof importScripts,v="object"==typeof r&&!y&&!b,_=!y&&!v&&!b;var w,A,E="";v?(E=i+"/",u.read=function(e,t){var r=Ae(e);return r||(w||(w=n(42)),A||(A=n(38)),e=A.normalize(e),r=w.readFileSync(e)),t?r:r.toString()},u.readBinary=function(e){return(e=u.read(e,!0)).buffer||(e=new Uint8Array(e)),C(e.buffer),e},1>2];return e=t+e+15&-16,U[V>>2]=e,(e=e>=$)&&(J(),e=!0),e?(U[V>>2]=t,0):t}function x(e){var t;return t||(t=16),Math.ceil(e/t)*t}g=void 0;var R=!1;function C(e,t){e||Be("Assertion failed: "+t)}function O(e){var t="i8";switch("*"===t.charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":B[e>>0]=0;break;case"i16":j[e>>1]=0;break;case"i32":U[e>>2]=0;break;case"i64":tempI64=[0,(tempDouble=0,1<=+ce(tempDouble)?0>>0:~~+fe((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],U[e>>2]=tempI64[0],U[e+4>>2]=tempI64[1];break;case"float":L[e>>2]=0;break;case"double":F[e>>3]=0;break;default:Be("invalid type for setValue: "+t)}}function P(e,t){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return B[e>>0];case"i16":return j[e>>1];case"i32":case"i64":return U[e>>2];case"float":return L[e>>2];case"double":return F[e>>3];default:Be("invalid type for getValue: "+t)}return null}function M(e){var t,n=u.ALLOC_STACK;if("number"==typeof e)var r=!0,i=e;else r=!1,i=e.length;if(t=4==n?o:["function"==typeof ke?ke:T,Se,T,I][void 0===n?2:n](Math.max(i,1)),r){var o=t;for(C(0==(3&t)),e=t+(-4&i);o>2]=0;for(e=t+i;o>0]=0;return t}return e.subarray||e.slice?N.set(e,t):N.set(new Uint8Array(e),t),t}var D,B,N,j,U,L,F,q,z,K,G,H,V,Q="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function W(e){for(var t=N,n=e;t[n];)++n;if(16r?n+=String.fromCharCode(r):(r-=65536,n+=String.fromCharCode(55296|r>>10,56320|1023&r))}}else n+=String.fromCharCode(r)}}function Y(e,t,n,r){if(!(0=s&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),127>=s){if(n>=r)break;t[n++]=s}else{if(2047>=s){if(n+1>=r)break;t[n++]=192|s>>6}else{if(65535>=s){if(n+2>=r)break;t[n++]=224|s>>12}else{if(2097151>=s){if(n+3>=r)break;t[n++]=240|s>>18}else{if(67108863>=s){if(n+4>=r)break;t[n++]=248|s>>24}else{if(n+5>=r)break;t[n++]=252|s>>30,t[n++]=128|s>>24&63}t[n++]=128|s>>18&63}t[n++]=128|s>>12&63}t[n++]=128|s>>6&63}t[n++]=128|63&s}}return t[n]=0,n-i}function X(e){for(var t=0,n=0;n=r&&(r=65536+((1023&r)<<10)|1023&e.charCodeAt(++n)),127>=r?++t:t=2047>=r?t+2:65535>=r?t+3:2097151>=r?t+4:67108863>=r?t+5:t+6}return t}function J(){Be("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+$+", (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 ")}"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le"),q=z=K=G=H=V=0;var Z=u.TOTAL_STACK||5242880,$=u.TOTAL_MEMORY||16777216;function ee(e){for(;0>0]=e.charCodeAt(n)}var ce=Math.abs,fe=Math.ceil,le=Math.floor,ue=Math.min,de=0,he=null,pe=null;u.preloadedImages={},u.preloadedAudios={};var me=null,ge="data:application/octet-stream;base64,";q=39112,ne.push(),me="data:application/octet-stream;base64,AAAAAAAAAABBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsv/////////////////////////////////////////////////////////z7///8/NDU2Nzg5Ojs8Pf////////8AAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGf///////xobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIz//////8JAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIU7jAG98ST/+CXDAWDcNwC3TD7/w0I9ADJMpAHhpEz/TD2j/3U+HwBRkUD/dkEOAKJz1v8Gii4AfOb0/wqKjwA0GsIAuPRMAIGPKQG+9BP/e6p6/2KBRAB51ZMAVmUe/6FnmwCMWUP/7+W+AUMLtQDG8In+7kW8/0OX7gATKmz/5VVxATJEh/8RagkAMmcB/1ABqAEjmB7/EKi5AThZ6P9l0vwAKfpHAMyqT/8OLu//UE3vAL3WS/8RjfkAJlBM/75VdQBW5KoAnNjQAcPPpP+WQkz/r+EQ/41QYgFM2/IAxqJyAC7amACbK/H+m6Bo/zO7pQACEa8AQlSgAfc6HgAjQTX+Rey/AC2G9QGje90AIG4U/zQXpQC61kcA6bBgAPLvNgE5WYoAUwBU/4igZABcjnj+aHy+ALWxPv/6KVUAmIIqAWD89gCXlz/+74U+ACA4nAAtp73/joWzAYNW0wC7s5b++qoO/9KjTgAlNJcAY00aAO6c1f/VwNEBSS5UABRBKQE2zk8AyYOS/qpvGP+xITL+qybL/073dADR3ZkAhYCyATosGQDJJzsBvRP8ADHl0gF1u3UAtbO4AQBy2wAwXpMA9Sk4AH0NzP70rXcALN0g/lTqFAD5oMYB7H7q/y9jqP6q4pn/ZrPYAOKNev96Qpn+tvWGAOPkGQHWOev/2K04/7Xn0gB3gJ3/gV+I/25+MwACqbf/B4Ji/kWwXv90BOMB2fKR/8qtHwFpASf/Lq9FAOQvOv/X4EX+zzhF/xD+i/8Xz9T/yhR+/1/VYP8JsCEAyAXP//EqgP4jIcD/+OXEAYEReAD7Z5f/BzRw/4w4Qv8o4vX/2UYl/qzWCf9IQ4YBksDW/ywmcABEuEv/zlr7AJXrjQC1qjoAdPTvAFydAgBmrWIA6YlgAX8xywAFm5QAF5QJ/9N6DAAihhr/28yIAIYIKf/gUyv+VRn3AG1/AP6piDAA7nfb/+et1QDOEv7+CLoH/34JBwFvKkgAbzTs/mA/jQCTv3/+zU7A/w5q7QG720wAr/O7/mlZrQBVGVkBovOUAAJ20f4hngkAi6Mu/11GKABsKo7+b/yO/5vfkAAz5af/Sfyb/150DP+YoNr/nO4l/7Pqz//FALP/mqSNAOHEaAAKIxn+0dTy/2H93v64ZeUA3hJ/AaSIh/8ez4z+kmHzAIHAGv7JVCH/bwpO/5NRsv8EBBgAoe7X/waNIQA11w7/KbXQ/+eLnQCzy93//7lxAL3irP9xQtb/yj4t/2ZACP9OrhD+hXVE/1nxsv4K5ab/e90q/h4U1ABSgAMAMNHzAHd5QP8y45z/AG7FAWcbkAAAAAAAAAAAALZ4Wf+FctMAvW4V/w8KagApwAEAmOh5/7w8oP+Zcc7/ALfi/rQNSP8AAAAAAAAAALCgDv7TyYb/nhiPAH9pNQBgDL0Ap9f7/59MgP5qZeH/HvwEAJIMrgAAAAAAAAAAAIU7jAG98ST/+CXDAWDcNwC3TD7/w0I9ADJMpAHhpEz/TD2j/3U+HwBRkUD/dkEOAKJz1v8Gii4AfOb0/wqKjwA0GsIAuPRMAIGPKQG+9BP/e6p6/2KBRAB51ZMAVmUe/6FnmwCMWUP/7+W+AUMLtQDG8In+7kW8/+pxPP8l/zn/RbK2/oDQswB2Gn3+AwfW//EyTf9Vy8X/04f6/xkwZP+71bT+EVhpAFPRngEFc2IABK48/qs3bv/ZtRH/FLyqAJKcZv5X1q7/cnqbAeksqgB/CO8B1uzqAK8F2wAxaj3/BkLQ/wJqbv9R6hP/12vA/0OX7gATKmz/5VVxATJEh/8RagkAMmcB/1ABqAEjmB7/EKi5AThZ6P9l0vwAKfpHAMyqT/8OLu//UE3vAL3WS/8RjfkAJlBM/75VdQBW5KoAnNjQAcPPpP+WQkz/r+EQ/41QYgFM2/IAxqJyAC7amACbK/H+m6Bo/7IJ/P5kbtQADgWnAOnvo/8cl50BZZIK//6eRv5H+eQAWB4yAEQ6oP+/GGgBgUKB/8AyVf8Is4r/JvrJAHNQoACD5nEAfViTAFpExwD9TJ4AHP92AHH6/gBCSy4A5torAOV4ugGURCsAiHzuAbtrxf9UNfb/M3T+/zO7pQACEa8AQlSgAfc6HgAjQTX+Rey/AC2G9QGje90AIG4U/zQXpQC61kcA6bBgAPLvNgE5WYoAUwBU/4igZABcjnj+aHy+ALWxPv/6KVUAmIIqAWD89gCXlz/+74U+ACA4nAAtp73/joWzAYNW0wC7s5b++qoO/0RxFf/eujv/QgfxAUUGSABWnGz+N6dZAG002/4NsBf/xCxq/++VR/+kjH3/n60BADMp5wCRPiEAim9dAblTRQCQcy4AYZcQ/xjkGgAx2eIAcUvq/sGZDP+2MGD/Dg0aAIDD+f5FwTsAhCVR/n1qPADW8KkBpONCANKjTgAlNJcAY00aAO6c1f/VwNEBSS5UABRBKQE2zk8AyYOS/qpvGP+xITL+qybL/073dADR3ZkAhYCyATosGQDJJzsBvRP8ADHl0gF1u3UAtbO4AQBy2wAwXpMA9Sk4AH0NzP70rXcALN0g/lTqFAD5oMYB7H7q/48+3QCBWdb/N4sF/kQUv/8OzLIBI8PZAC8zzgEm9qUAzhsG/p5XJADZNJL/fXvX/1U8H/+rDQcA2vVY/vwjPAA31qD/hWU4AOAgE/6TQOoAGpGiAXJ2fQD4/PoAZV7E/8aN4v4zKrYAhwwJ/m2s0v/F7MIB8UGaADCcL/+ZQzf/2qUi/kq0swDaQkcBWHpjANS12/9cKuf/7wCaAPVNt/9eUaoBEtXYAKtdRwA0XvgAEpeh/sXRQv+u9A/+ojC3ADE98P62XcMAx+QGAcgFEf+JLe3/bJQEAFpP7f8nP03/NVLPAY4Wdv9l6BIBXBpDAAXIWP8hqIr/leFIAALRG/8s9agB3O0R/x7Taf6N7t0AgFD1/m/+DgDeX74B3wnxAJJM1P9szWj/P3WZAJBFMAAj5G8AwCHB/3DWvv5zmJcAF2ZYADNK+ADix4/+zKJl/9BhvQH1aBIA5vYe/xeURQBuWDT+4rVZ/9AvWv5yoVD/IXT4ALOYV/9FkLEBWO4a/zogcQEBTUUAO3k0/5juUwA0CMEA5yfp/8ciigDeRK0AWzny/tzSf//AB/b+lyO7AMPspQBvXc4A1PeFAZqF0f+b5woAQE4mAHr5ZAEeE2H/Plv5AfiFTQDFP6j+dApSALjscf7Uy8L/PWT8/iQFyv93W5n/gU8dAGdnq/7t12//2DVFAO/wFwDCld3/JuHeAOj/tP52UoX/OdGxAYvohQCesC7+wnMuAFj35QEcZ78A3d6v/pXrLACX5Bn+2mlnAI5V0gCVgb7/1UFe/nWG4P9SxnUAnd3cAKNlJADFciUAaKym/gu2AABRSLz/YbwQ/0UGCgDHk5H/CAlzAUHWr//ZrdEAUH+mAPflBP6nt3z/WhzM/q878P8LKfgBbCgz/5Cxw/6W+n4AiltBAXg83v/1we8AHda9/4ACGQBQmqIATdxrAerNSv82pmf/dEgJAOReL/8eyBn/I9ZZ/z2wjP9T4qP/S4KsAIAmEQBfiZj/13yfAU9dAACUUp3+w4L7/yjKTP/7fuAAnWM+/s8H4f9gRMMAjLqd/4MT5/8qgP4ANNs9/mbLSACNBwv/uqTVAB96dwCF8pEA0Pzo/1vVtv+PBPr++ddKAKUebwGrCd8A5XsiAVyCGv9Nmy0Bw4sc/zvgTgCIEfcAbHkgAE/6vf9g4/z+JvE+AD6uff+bb13/CubOAWHFKP8AMTn+QfoNABL7lv/cbdL/Ba6m/iyBvQDrI5P/JfeN/0iNBP9na/8A91oEADUsKgACHvAABDs/AFhOJABxp7QAvkfB/8eepP86CKwATSEMAEE/AwCZTSH/rP5mAeTdBP9XHv4BkilW/4rM7/5sjRH/u/KHANLQfwBELQ7+SWA+AFE8GP+qBiT/A/kaACPVbQAWgTb/FSPh/+o9OP862QYAj3xYAOx+QgDRJrf/Iu4G/66RZgBfFtMAxA+Z/i5U6P91IpIB5/pK/xuGZAFcu8P/qsZwAHgcKgDRRkMAHVEfAB2oZAGpraAAayN1AD5gO/9RDEUBh+++/9z8EgCj3Dr/iYm8/1NmbQBgBkwA6t7S/7muzQE8ntX/DfHWAKyBjABdaPIAwJz7ACt1HgDhUZ4Af+jaAOIcywDpG5f/dSsF//IOL/8hFAYAifss/hsf9f+31n3+KHmVALqe1f9ZCOMARVgA/suH4QDJrssAk0e4ABJ5Kf5eBU4A4Nbw/iQFtAD7h+cBo4rUANL5dP5YgbsAEwgx/j4OkP+fTNMA1jNSAG115P5n38v/S/wPAZpH3P8XDVsBjahg/7W2hQD6MzcA6urU/q8/ngAn8DQBnr0k/9UoVQEgtPf/E2YaAVQYYf9FFd4AlIt6/9zV6wHoy/8AeTmTAOMHmgA1FpMBSAHhAFKGMP5TPJ3/kUipACJn7wDG6S8AdBME/7hqCf+3gVMAJLDmASJnSADbooYA9SqeACCVYP6lLJAAyu9I/teWBQAqQiQBhNevAFauVv8axZz/MeiH/me2UgD9gLABmbJ6APX6CgDsGLIAiWqEACgdKQAyHpj/fGkmAOa/SwCPK6oALIMU/ywNF//t/5sBn21k/3C1GP9o3GwAN9ODAGMM1f+Yl5H/7gWfAGGbCAAhbFEAAQNnAD5tIv/6m7QAIEfD/yZGkQGfX/UAReVlAYgc8ABP4BkATm55//iofAC7gPcAApPr/k8LhABGOgwBtQij/0+Jhf8lqgv/jfNV/7Dn1//MlqT/79cn/y5XnP4Io1j/rCLoAEIsZv8bNin+7GNX/yl7qQE0cisAdYYoAJuGGgDnz1v+I4Qm/xNmff4k44X/dgNx/x0NfACYYEoBWJLO/6e/3P6iElj/tmQXAB91NABRLmoBDAIHAEVQyQHR9qwADDCNAeDTWAB04p8AemKCAEHs6gHh4gn/z+J7AVnWOwBwh1gBWvTL/zELJgGBbLoAWXAPAWUuzP9/zC3+T//d/zNJEv9/KmX/8RXKAKDjBwBpMuwATzTF/2jK0AG0DxAAZcVO/2JNywApufEBI8F8ACObF//PNcAAC32jAfmeuf8EgzAAFV1v/z155wFFyCT/uTC5/2/uFf8nMhn/Y9ej/1fUHv+kkwX/gAYjAWzfbv/CTLIASmW0APMvMACuGSv/Uq39ATZywP8oN1sA12yw/ws4BwDg6UwA0WLK/vIZfQAswV3+ywixAIewEwBwR9X/zjuwAQRDGgAOj9X+KjfQ/zxDeADBFaMAY6RzAAoUdgCc1N7+oAfZ/3L1TAF1O3sAsMJW/tUPsABOzs/+1YE7AOn7FgFgN5j/7P8P/8VZVP9dlYUArqBxAOpjqf+YdFgAkKRT/18dxv8iLw//Y3iG/wXswQD5937/k7seADLmdf9s2dv/o1Gm/0gZqf6beU//HJtZ/gd+EQCTQSEBL+r9ABozEgBpU8f/o8TmAHH4pADi/toAvdHL/6T33v7/I6UABLzzAX+zRwAl7f7/ZLrwAAU5R/5nSEn/9BJR/uXShP/uBrT/C+Wu/+PdwAERMRwAo9fE/gl2BP8z8EcAcYFt/0zw5wC8sX8AfUcsARqv8wBeqRn+G+YdAA+LdwGoqrr/rMVM//xLvACJfMQASBZg/y2X+QHckWQAQMCf/3jv4gCBspIAAMB9AOuK6gC3nZIAU8fA/7isSP9J4YAATQb6/7pBQwBo9s8AvCCK/9oY8gBDilH+7YF5/xTPlgEpxxD/BhSAAJ92BQC1EI//3CYPABdAk/5JGg0AV+Q5Acx8gAArGN8A22PHABZLFP8TG34AnT7XAG4d5gCzp/8BNvy+AN3Mtv6znkH/UZ0DAMLanwCq3wAA4Asg/ybFYgCopCUAF1gHAaS6bgBgJIYA6vLlAPp5EwDy/nD/Ay9eAQnvBv9Rhpn+1v2o/0N84AD1X0oAHB4s/gFt3P+yWVkA/CRMABjGLv9MTW8AhuqI/ydeHQC5SOr/RkSH/+dmB/5N54wApy86AZRhdv8QG+EBps6P/26y1v+0g6IAj43hAQ3aTv9ymSEBYmjMAK9ydQGnzksAysRTATpAQwCKL28BxPeA/4ng4P6ecM8AmmT/AYYlawDGgE//f9Gb/6P+uf48DvMAH9tw/h3ZQQDIDXT+ezzE/+A7uP7yWcQAexBL/pUQzgBF/jAB53Tf/9GgQQHIUGIAJcK4/pQ/IgCL8EH/2ZCE/zgmLf7HeNIAbLGm/6DeBADcfnf+pWug/1Lc+AHxr4gAkI0X/6mKVACgiU7/4nZQ/zQbhP8/YIv/mPonALybDwDoM5b+KA/o//DlCf+Jrxv/S0lhAdrUCwCHBaIBa7nVAAL5a/8o8kYA28gZABmdDQBDUlD/xPkX/5EUlQAySJIAXkyUARj7QQAfwBcAuNTJ/3vpogH3rUgAolfb/n6GWQCfCwz+pmkdAEkb5AFxeLf/QqNtAdSPC/+f56gB/4BaADkOOv5ZNAr//QijAQCR0v8KgVUBLrUbAGeIoP5+vNH/IiNvANfbGP/UC9b+ZQV2AOjFhf/fp23/7VBW/0aLXgCewb8Bmw8z/w++cwBOh8//+QobAbV96QBfrA3+qtWh/yfsiv9fXVf/voBfAH0PzgCmlp8A4w+e/86eeP8qjYAAZbJ4AZxtgwDaDiz+96jO/9RwHABwEeT/WhAlAcXebAD+z1P/CVrz//P0rAAaWHP/zXR6AL/mwQC0ZAsB2SVg/5pOnADr6h//zrKy/5XA+wC2+ocA9hZpAHzBbf8C0pX/qRGqAABgbv91CQgBMnso/8G9YwAi46AAMFBG/tMz7AAtevX+LK4IAK0l6f+eQasAekXX/1pQAv+DamD+43KHAM0xd/6wPkD/UjMR//EU8/+CDQj+gNnz/6IbAf5advEA9sb2/zcQdv/In50AoxEBAIxreQBVoXb/JgCVAJwv7gAJpqYBS2K1/zJKGQBCDy8Ai+GfAEwDjv8O7rgAC881/7fAugGrIK7/v0zdAfeq2wAZrDL+2QnpAMt+RP+3XDAAf6e3AUEx/gAQP38B/hWq/zvgf/4WMD//G06C/ijDHQD6hHD+I8uQAGipqADP/R7/aCgm/l7kWADOEID/1Dd6/98W6gDfxX8A/bW1AZFmdgDsmST/1NlI/xQmGP6KPj4AmIwEAObcY/8BFdT/lMnnAPR7Cf4Aq9IAMzol/wH/Dv/0t5H+APKmABZKhAB52CkAX8Ny/oUYl/+c4uf/9wVN//aUc/7hXFH/3lD2/qp7Wf9Kx40AHRQI/4qIRv9dS1wA3ZMx/jR+4gDlfBcALgm1AM1ANAGD/hwAl57UAINATgDOGasAAOaLAL/9bv5n96cAQCgoASql8f87S+T+fPO9/8Rcsv+CjFb/jVk4AZPGBf/L+J7+kKKNAAus4gCCKhX/AaeP/5AkJP8wWKT+qKrcAGJH1gBb0E8An0zJAaYq1v9F/wD/BoB9/74BjACSU9r/1+5IAXp/NQC9dKX/VAhC/9YD0P/VboUAw6gsAZ7nRQCiQMj+WzpoALY6u/755IgAy4ZM/mPd6QBL/tb+UEWaAECY+P7siMr/nWmZ/pWvFAAWIxP/fHnpALr6xv6E5YsAiVCu/6V9RACQypT+6+/4AIe4dgBlXhH/ekhG/kWCkgB/3vgBRX92/x5S1/68ShP/5afC/nUZQv9B6jj+1RacAJc7Xf4tHBv/un6k/yAG7wB/cmMB2zQC/2Ngpv4+vn7/bN6oAUvirgDm4scAPHXa//z4FAHWvMwAH8KG/ntFwP+prST+N2JbAN8qZv6JAWYAnVoZAO96QP/8BukABzYU/1J0rgCHJTb/D7p9AONwr/9ktOH/Ku30//St4v74EiEAq2OW/0rrMv91UiD+aqjtAM9t0AHkCboAhzyp/rNcjwD0qmj/6y18/0ZjugB1ibcA4B/XACgJZAAaEF8BRNlXAAiXFP8aZDr/sKXLATR2RgAHIP7+9P71/6eQwv99cRf/sHm1AIhU0QCKBh7/WTAcACGbDv8Z8JoAjc1tAUZzPv8UKGv+iprH/17f4v+dqyYAo7EZ/i12A/8O3hcB0b5R/3Z76AEN1WX/ezd7/hv2pQAyY0z/jNYg/2FBQ/8YDBwArlZOAUD3YACgh0MAQjfz/5PMYP8aBiH/YjNTAZnV0P8CuDb/GdoLADFD9v4SlUj/DRlIACpP1gAqBCYBG4uQ/5W7FwASpIQA9VS4/njGaP9+2mAAOHXq/w0d1v5ELwr/p5qE/pgmxgBCsln/yC6r/w1jU//Su/3/qi0qAYrRfADWoo0ADOacAGYkcP4Dk0MANNd7/+mrNv9iiT4A99on/+fa7AD3v38Aw5JUAKWwXP8T1F7/EUrjAFgomQHGkwH/zkP1/vAD2v89jdX/YbdqAMPo6/5fVpoA0TDN/nbR8f/weN8B1R2fAKN/k/8N2l0AVRhE/kYUUP+9BYwBUmH+/2Njv/+EVIX/a9p0/3B6LgBpESAAwqA//0TeJwHY/VwAsWnN/5XJwwAq4Qv/KKJzAAkHUQCl2tsAtBYA/h2S/P+Sz+EBtIdgAB+jcACxC9v/hQzB/itOMgBBcXkBO9kG/25eGAFwrG8ABw9gACRVewBHlhX/0Em8AMALpwHV9SIACeZcAKKOJ//XWhsAYmFZAF5P0wBanfAAX9x+AWaw4gAkHuD+Ix9/AOfocwFVU4IA0kn1/y+Pcv9EQcUAO0g+/7eFrf5deXb/O7FR/+pFrf/NgLEA3PQzABr00QFJ3k3/owhg/paV0wCe/ssBNn+LAKHgOwAEbRb/3iot/9CSZv/sjrsAMs31/wpKWf4wT44A3kyC/x6mPwDsDA3/Mbj0ALtxZgDaZf0AmTm2/iCWKgAZxpIB7fE4AIxEBQBbpKz/TpG6/kM0zQDbz4EBbXMRADaPOgEV+Hj/s/8eAMHsQv8B/wf//cAw/xNF2QED1gD/QGWSAd99I//rSbP/+afiAOGvCgFhojoAanCrAVSsBf+FjLL/hvWOAGFaff+6y7n/300X/8BcagAPxnP/2Zj4AKuyeP/khjUAsDbBAfr7NQDVCmQBIsdqAJcf9P6s4Ff/Du0X//1VGv9/J3T/rGhkAPsORv/U0Ir//dP6ALAxpQAPTHv/Jdqg/1yHEAEKfnL/RgXg//f5jQBEFDwB8dK9/8PZuwGXA3EAl1yuAOc+sv/bt+EAFxch/821UAA5uPj/Q7QB/1p7Xf8nAKL/YPg0/1RCjAAif+T/wooHAaZuvAAVEZsBmr7G/9ZQO/8SB48ASB3iAcfZ+QDooUcBlb7JANmvX/5xk0P/io/H/3/MAQAdtlMBzuab/7rMPAAKfVX/6GAZ//9Z9//V/q8B6MFRABwrnP4MRQgAkxj4ABLGMQCGPCMAdvYS/zFY/v7kFbr/tkFwAdsWAf8WfjT/vTUx/3AZjwAmfzf/4mWj/tCFPf+JRa4BvnaR/zxi2//ZDfX/+ogKAFT+4gDJH30B8DP7/x+Dgv8CijL/19exAd8M7v/8lTj/fFtE/0h+qv53/2QAgofo/w5PsgD6g8UAisbQAHnYi/53EiT/HcF6ABAqLf/V8OsB5r6p/8Yj5P5urUgA1t3x/ziUhwDAdU7+jV3P/49BlQAVEmL/Xyz0AWq/TQD+VQj+1m6w/0mtE/6gxMf/7VqQAMGscf/Im4j+5FrdAIkxSgGk3df/0b0F/2nsN/8qH4EBwf/sAC7ZPACKWLv/4lLs/1FFl/+OvhABDYYIAH96MP9RQJwAq/OLAO0j9gB6j8H+1HqSAF8p/wFXhE0ABNQfABEfTgAnLa3+GI7Z/18JBv/jUwYAYjuC/j4eIQAIc9MBomGA/we4F/50HKj/+IqX/2L08AC6doIAcvjr/2mtyAGgfEf/XiSkAa9Bkv/u8ar+ysbFAORHiv4t9m3/wjSeAIW7sABT/Jr+Wb3d/6pJ/ACUOn0AJEQz/ipFsf+oTFb/JmTM/yY1IwCvE2EA4e79/1FRhwDSG//+60lrAAjPcwBSf4gAVGMV/s8TiABkpGUAUNBN/4TP7f8PAw//IaZuAJxfVf8luW8Blmoj/6aXTAByV4f/n8JAAAx6H//oB2X+rXdiAJpH3P6/OTX/qOig/+AgY//anKUAl5mjANkNlAHFcVkAlRyh/s8XHgBphOP/NuZe/4WtzP9ct53/WJD8/mYhWgCfYQMAtdqb//BydwBq1jX/pb5zAZhb4f9Yaiz/0D1xAJc0fAC/G5z/bjbsAQ4epv8nf88B5cccALzkvP5knesA9tq3AWsWwf/OoF8ATO+TAM+hdQAzpgL/NHUK/kk44/+YweEAhF6I/2W/0QAga+X/xiu0AWTSdgByQ5n/F1ga/1maXAHceIz/kHLP//xz+v8izkgAioV//wiyfAFXS2EAD+Vc/vBDg/92e+P+knho/5HV/wGBu0b/23c2AAETrQAtlpQB+FNIAMvpqQGOazgA9/kmAS3yUP8e6WcAYFJGABfJbwBRJx7/obdO/8LqIf9E44z+2M50AEYb6/9okE8ApOZd/taHnACau/L+vBSD/yRtrgCfcPEABW6VASSl2gCmHRMBsi5JAF0rIP74ve0AZpuNAMldw//xi/3/D29i/2xBo/6bT77/Sa7B/vYoMP9rWAv+ymFV//3MEv9x8kIAbqDC/tASugBRFTwAvGin/3ymYf7ShY4AOPKJ/ilvggBvlzoBb9WN/7es8f8mBsT/uQd7/y4L9gD1aXcBDwKh/wjOLf8Sykr/U3xzAdSNnQBTCNH+iw/o/6w2rf4y94QA1r3VAJC4aQDf/vgA/5Pw/xe8SAAHMzYAvBm0/ty0AP9ToBQAo73z/zrRwv9XSTwAahgxAPX53AAWracAdgvD/xN+7QBunyX/O1IvALS7VgC8lNABZCWF/wdwwQCBvJz/VGqB/4XhygAO7G//KBRlAKysMf4zNkr/+7m4/12b4P+0+eAB5rKSAEg5Nv6yPrgAd81IALnv/f89D9oAxEM4/+ogqwEu2+QA0Gzq/xQ/6P+lNccBheQF/zTNawBK7oz/lpzb/u+ssv/7vd/+II7T/9oPigHxxFAAHCRi/hbqxwA97dz/9jklAI4Rjv+dPhoAK+5f/gPZBv/VGfABJ9yu/5rNMP4TDcD/9CI2/owQmwDwtQX+m8E8AKaABP8kkTj/lvDbAHgzkQBSmSoBjOySAGtc+AG9CgMAP4jyANMnGAATyqEBrRu6/9LM7/4p0aL/tv6f/6x0NADDZ97+zUU7ADUWKQHaMMIAUNLyANK8zwC7oaH+2BEBAIjhcQD6uD8A3x5i/k2oogA7Na8AE8kK/4vgwgCTwZr/1L0M/gHIrv8yhXEBXrNaAK22hwBesXEAK1nX/4j8av97hlP+BfVC/1IxJwHcAuAAYYGxAE07WQA9HZsBy6vc/1xOiwCRIbX/qRiNATeWswCLPFD/2idhAAKTa/88+EgAreYvAQZTtv8QaaL+idRR/7S4hgEn3qT/3Wn7Ae9wfQA/B2EAP2jj/5Q6DABaPOD/VNT8AE/XqAD43ccBc3kBACSseAAgorv/OWsx/5MqFQBqxisBOUpXAH7LUf+Bh8MAjB+xAN2LwgAD3tcAg0TnALFWsv58l7QAuHwmAUajEQD5+7UBKjfjAOKhLAAX7G4AM5WOAV0F7ADat2r+QxhNACj10f/eeZkApTkeAFN9PABGJlIB5Qa8AG3enf83dj//zZe6AOMhlf/+sPYB47HjACJqo/6wK08Aal9OAbnxev+5Dj0AJAHKAA2yov/3C4QAoeZcAUEBuf/UMqUBjZJA/57y2gAVpH0A1Yt6AUNHVwDLnrIBl1wrAJhvBf8nA+//2f/6/7A/R/9K9U0B+q4S/yIx4//2Lvv/miMwAX2dPf9qJE7/YeyZAIi7eP9xhqv/E9XZ/the0f/8BT0AXgPKAAMat/9Avyv/HhcVAIGNTf9meAcBwkyMALyvNP8RUZQA6FY3AeEwrACGKir/7jIvAKkS/gAUk1f/DsPv/0X3FwDu5YD/sTFwAKhi+/95R/gA8wiR/vbjmf/bqbH++4ul/wyjuf+kKKv/mZ8b/vNtW//eGHABEtbnAGudtf7DkwD/wmNo/1mMvv+xQn7+arlCADHaHwD8rp4AvE/mAe4p4ADU6ggBiAu1AKZ1U/9Ew14ALoTJAPCYWACkOUX+oOAq/zvXQ/93w43/JLR5/s8vCP+u0t8AZcVE//9SjQH6iekAYVaFARBQRQCEg58AdF1kAC2NiwCYrJ3/WitbAEeZLgAnEHD/2Yhh/9zGGf6xNTEA3liG/4APPADPwKn/wHTR/2pO0wHI1bf/Bwx6/t7LPP8hbsf++2p1AOThBAF4Ogf/3cFU/nCFGwC9yMn/i4eWAOo3sP89MkEAmGyp/9xVAf9wh+MAohq6AM9guf70iGsAXZkyAcZhlwBuC1b/j3Wu/3PUyAAFyrcA7aQK/rnvPgDseBL+Yntj/6jJwv4u6tYAv4Ux/2OpdwC+uyMBcxUt//mDSABwBnv/1jG1/qbpIgBcxWb+/eTN/wM7yQEqYi4A2yUj/6nDJgBefMEBnCvfAF9Ihf54zr8AesXv/7G7T//+LgIB+qe+AFSBEwDLcab/+R+9/kidyv/QR0n/zxhIAAoQEgHSUUz/WNDA/37za//ujXj/x3nq/4kMO/8k3Hv/lLM8/vAMHQBCAGEBJB4m/3MBXf9gZ+f/xZ47AcCk8ADKyjn/GK4wAFlNmwEqTNcA9JfpABcwUQDvfzT+44Il//h0XQF8hHYArf7AAQbrU/9ur+cB+xy2AIH5Xf5UuIAATLU+AK+AugBkNYj+bR3iAN3pOgEUY0oAABagAIYNFQAJNDf/EVmMAK8iOwBUpXf/4OLq/wdIpv97c/8BEtb2APoHRwHZ3LkA1CNM/yZ9rwC9YdIAcu4s/ym8qf4tupoAUVwWAISgwQB50GL/DVEs/8ucUgBHOhX/0HK//jImkwCa2MMAZRkSADz61//phOv/Z6+OARAOXACNH27+7vEt/5nZ7wFhqC//+VUQARyvPv85/jYA3ud+AKYtdf4SvWD/5EwyAMj0XgDGmHgBRCJF/wxBoP5lE1oAp8V4/0Q2uf8p2rwAcagwAFhpvQEaUiD/uV2kAeTw7f9CtjUAq8Vc/2sJ6QHHeJD/TjEK/22qaf9aBB//HPRx/0o6CwA+3Pb/eZrI/pDSsv9+OYEBK/oO/2VvHAEvVvH/PUaW/zVJBf8eGp4A0RpWAIrtSgCkX7wAjjwd/qJ0+P+7r6AAlxIQANFvQf7Lhif/WGwx/4MaR//dG9f+aGld/x/sH/6HANP/j39uAdRJ5QDpQ6f+wwHQ/4QR3f8z2VoAQ+sy/9/SjwCzNYIB6WrGANmt3P9w5Rj/r5pd/kfL9v8wQoX/A4jm/xfdcf7rb9UAqnhf/vvdAgAtgp7+aV7Z//I0tP7VRC3/aCYcAPSeTAChyGD/zzUN/7tDlACqNvgAd6Ky/1MUCwAqKsABkp+j/7fobwBN5RX/RzWPABtMIgD2iC//2ye2/1zgyQETjg7/Rbbx/6N29QAJbWoBqrX3/04v7v9U0rD/1WuLACcmCwBIFZYASIJFAM1Nm/6OhRUAR2+s/uIqO/+zANcBIYDxAOr8DQG4TwgAbh5J//aNvQCqz9oBSppF/4r2Mf+bIGQAfUpp/1pVPf8j5bH/Pn3B/5lWvAFJeNQA0Xv2/ofRJv+XOiwBXEXW/w4MWP/8mab//c9w/zxOU//jfG4AtGD8/zV1If6k3FL/KQEb/yakpv+kY6n+PZBG/8CmEgBr+kIAxUEyAAGzEv//aAH/K5kj/1BvqABur6gAKWkt/9sOzf+k6Yz+KwF2AOlDwwCyUp//ild6/9TuWv+QI3z+GYykAPvXLP6FRmv/ZeNQ/lypNwDXKjEAcrRV/yHoGwGs1RkAPrB7/iCFGP/hvz4AXUaZALUqaAEWv+D/yMiM//nqJQCVOY0AwzjQ//6CRv8grfD/HdzHAG5kc/+E5fkA5Onf/yXY0f6ysdH/ty2l/uBhcgCJYaj/4d6sAKUNMQHS68z//AQc/kaglwDovjT+U/hd/z7XTQGvr7P/oDJCAHkw0AA/qdH/ANLIAOC7LAFJolIACbCP/xNMwf8dO6cBGCuaABy+vgCNvIEA6OvL/+oAbf82QZ8APFjo/3n9lv786YP/xm4pAVNNR//IFjv+av3y/xUMz//tQr0AWsbKAeGsfwA1FsoAOOaEAAFWtwBtvioA80SuAW3kmgDIsXoBI6C3/7EwVf9a2qn/+JhOAMr+bgAGNCsAjmJB/z+RFgBGal0A6IprAW6zPf/TgdoB8tFcACNa2QG2j2r/dGXZ/3L63f+tzAYAPJajAEmsLP/vblD/7UyZ/qGM+QCV6OUAhR8o/66kdwBxM9YAgeQC/kAi8wBr4/T/rmrI/1SZRgEyIxAA+krY/uy9Qv+Z+Q0A5rIE/90p7gB243n/XleM/v53XABJ7/b+dVeAABPTkf+xLvwA5Vv2AUWA9//KTTYBCAsJ/5lgpgDZ1q3/hsACAQDPAAC9rmsBjIZkAJ7B8wG2ZqsA65ozAI4Fe/88qFkB2Q5c/xPWBQHTp/4ALAbK/ngS7P8Pcbj/uN+LACixd/62e1r/sKWwAPdNwgAb6ngA5wDW/zsnHgB9Y5H/lkREAY3e+ACZe9L/bn+Y/+Uh1gGH3cUAiWECAAyPzP9RKbwAc0+C/14DhACYr7v/fI0K/37As/8LZ8YAlQYtANtVuwHmErL/SLaYAAPGuP+AcOABYaHmAP5jJv86n8UAl0LbADtFj/+5cPkAd4gv/3uChACoR1//cbAoAei5rQDPXXUBRJ1s/2YFk/4xYSEAWUFv/vceo/982d0BZvrYAMauS/45NxIA4wXsAeXVrQDJbdoBMenvAB43ngEZsmoAm2+8AV5+jADXH+4BTfAQANXyGQEmR6gAzbpd/jHTjP/bALT/hnalAKCThv9uuiP/xvMqAPOSdwCG66MBBPGH/8Euwf5ntE//4QS4/vJ2ggCSh7AB6m8eAEVC1f4pYHsAeV4q/7K/w/8ugioAdVQI/+kx1v7uem0ABkdZAezTewD0DTD+d5QOAHIcVv9L7Rn/keUQ/oFkNf+Glnj+qJ0yABdIaP/gMQ4A/3sW/5e5l/+qULgBhrYUAClkZQGZIRAATJpvAVbO6v/AoKT+pXtd/wHYpP5DEa//qQs7/54pPf9JvA7/wwaJ/xaTHf8UZwP/9oLj/3oogADiLxj+IyQgAJi6t/9FyhQAw4XDAN4z9wCpq14BtwCg/0DNEgGcUw//xTr5/vtZbv8yClj+MyvYAGLyxgH1l3EAq+zCAcUfx//lUSYBKTsUAP1o5gCYXQ7/9vKS/tap8P/wZmz+oKfsAJravACW6cr/GxP6AQJHhf+vDD8BkbfGAGh4c/+C+/cAEdSn/z57hP/3ZL0Am9+YAI/FIQCbOyz/ll3wAX8DV/9fR88Bp1UB/7yYdP8KFxcAicNdATZiYQDwAKj/lLx/AIZrlwBM/asAWoTAAJIWNgDgQjb+5rrl/ye2xACU+4L/QYNs/oABoACpMaf+x/6U//sGgwC7/oH/VVI+ALIXOv/+hAUApNUnAIb8kv4lNVH/m4ZSAM2n7v9eLbT/hCihAP5vcAE2S9kAs+bdAetev/8X8zABypHL/yd2Kv91jf0A/gDeACv7MgA2qeoBUETQAJTL8/6RB4cABv4AAPy5fwBiCIH/JiNI/9Mk3AEoGlkAqEDF/gPe7/8CU9f+tJ9pADpzwgC6dGr/5ffb/4F2wQDKrrcBpqFIAMlrk/7tiEoA6eZqAWlvqABA4B4BAeUDAGaXr//C7uT//vrUALvteQBD+2ABxR4LALdfzADNWYoAQN0lAf/fHv+yMNP/8cha/6fRYP85gt0ALnLI/z24QgA3thj+brYhAKu+6P9yXh8AEt0IAC/n/gD/cFMAdg/X/60ZKP7AwR//7hWS/6vBdv9l6jX+g9RwAFnAawEI0BsAtdkP/+eV6ACM7H4AkAnH/wxPtf6Ttsr/E222/zHU4QBKo8sAr+mUABpwMwDBwQn/D4f5AJbjggDMANsBGPLNAO7Qdf8W9HAAGuUiACVQvP8mLc7+8Frh/x0DL/8q4EwAuvOnACCED/8FM30Ai4cYAAbx2wCs5YX/9tYyAOcLz/+/flMBtKOq//U4GAGypNP/AxDKAWI5dv+Ng1n+ITMYAPOVW//9NA4AI6lD/jEeWP+zGyT/pYy3ADq9lwBYHwAAS6lCAEJlx/8Y2McBecQa/w5Py/7w4lH/XhwK/1PB8P/MwYP/Xg9WANoonQAzwdEAAPKxAGa59wCebXQAJodbAN+vlQDcQgH/VjzoABlgJf/heqIB17uo/56dLgA4q6IA6PBlAXoWCQAzCRX/NRnu/9ke6P59qZQADehmAJQJJQClYY0B5IMpAN4P8//+EhEABjztAWoDcQA7hL0AXHAeAGnQ1QAwVLP/u3nn/hvYbf+i3Wv+Se/D//ofOf+Vh1n/uRdzAQOjnf8ScPoAGTm7/6FgpAAvEPMADI37/kPquP8pEqEArwZg/6CsNP4YsLf/xsFVAXx5if+XMnL/3Ms8/8/vBQEAJmv/N+5e/kaYXgDV3E0BeBFF/1Wkvv/L6lEAJjEl/j2QfACJTjH+qPcwAF+k/ABpqYcA/eSGAECmSwBRSRT/z9IKAOpqlv9eIlr//p85/tyFYwCLk7T+GBe5ACk5Hv+9YUwAQbvf/+CsJf8iPl8B55DwAE1qfv5AmFsAHWKbAOL7Nf/q0wX/kMve/6Sw3f4F5xgAs3rNACQBhv99Rpf+YeT8AKyBF/4wWtH/luBSAVSGHgDxxC4AZ3Hq/y5lef4ofPr/hy3y/gn5qP+MbIP/j6OrADKtx/9Y3o7/yF+eAI7Ao/8HdYcAb3wWAOwMQf5EJkH/467+APT1JgDwMtD/oT/6ADzR7wB6IxMADiHm/gKfcQBqFH//5M1gAInSrv601JD/WWKaASJYiwCnonABQW7FAPElqQBCOIP/CslT/oX9u/+xcC3+xPsAAMT6l//u6Nb/ltHNABzwdgBHTFMB7GNbACr6gwFgEkD/dt4jAHHWy/96d7j/QhMkAMxA+QCSWYsAhj6HAWjpZQC8VBoAMfmBANDWS//Pgk3/c6/rAKsCif+vkboBN/WH/5pWtQFkOvb/bcc8/1LMhv/XMeYBjOXA/97B+/9RiA//s5Wi/xcnHf8HX0v+v1HeAPFRWv9rMcn/9NOdAN6Mlf9B2zj+vfZa/7I7nQEw2zQAYiLXABwRu/+vqRgAXE+h/+zIwgGTj+oA5eEHAcWoDgDrMzUB/XiuAMUGqP/KdasAoxXOAHJVWv8PKQr/whNjAEE32P6iknQAMs7U/0CSHf+enoMBZKWC/6wXgf99NQn/D8ESARoxC/+1rskBh8kO/2QTlQDbYk8AKmOP/mAAMP/F+VP+aJVP/+tuiP5SgCz/QSkk/ljTCgC7ebsAYobHAKu8s/7SC+7/QnuC/jTqPQAwcRf+BlZ4/3ey9QBXgckA8o3RAMpyVQCUFqEAZ8MwABkxq/+KQ4IAtkl6/pQYggDT5ZoAIJueAFRpPQCxwgn/pllWATZTuwD5KHX/bQPX/zWSLAE/L7MAwtgD/g5UiACIsQ3/SPO6/3URff/TOtP/XU/fAFpY9f+L0W//Rt4vAAr2T//G2bIA4+ELAU5+s/8+K34AZ5QjAIEIpf718JQAPTOOAFHQhgAPiXP/03fs/5/1+P8Choj/5os6AaCk/gByVY3/Maa2/5BGVAFVtgcALjVdAAmmof83orL/Lbi8AJIcLP6pWjEAeLLxAQ57f/8H8ccBvUIy/8aPZf6984f/jRgY/kthVwB2+5oB7TacAKuSz/+DxPb/iEBxAZfoOQDw2nMAMT0b/0CBSQH8qRv/KIQKAVrJwf/8efABus4pACvGYQCRZLcAzNhQ/qyWQQD55cT+aHtJ/01oYP6CtAgAaHs5ANzK5f9m+dMAVg7o/7ZO0QDv4aQAag0g/3hJEf+GQ+kAU/61ALfscAEwQIP/8djz/0HB4gDO8WT+ZIam/+3KxQA3DVEAIHxm/yjksQB2tR8B56CG/3e7ygAAjjz/gCa9/6bJlgDPeBoBNrisAAzyzP6FQuYAIiYfAbhwUAAgM6X+v/M3ADpJkv6bp83/ZGiY/8X+z/+tE/cA7grKAO+X8gBeOyf/8B1m/wpcmv/lVNv/oYFQANBazAHw267/nmaRATWyTP80bKgBU95rANMkbQB2OjgACB0WAO2gxwCq0Z0AiUcvAI9WIADG8gIA1DCIAVysugDml2kBYL/lAIpQv/7w2IL/YisG/qjEMQD9ElsBkEl5AD2SJwE/aBj/uKVw/n7rYgBQ1WL/ezxX/1KM9QHfeK3/D8aGAc487wDn6lz/Ie4T/6VxjgGwdyYAoCum/u9baQBrPcIBGQREAA+LMwCkhGr/InQu/qhfxQCJ1BcASJw6AIlwRf6WaZr/7MmdABfUmv+IUuP+4jvd/1+VwABRdjT/ISvXAQ6TS/9ZnHn+DhJPAJPQiwGX2j7/nFgIAdK4Yv8Ur3v/ZlPlANxBdAGW+gT/XI7c/yL3Qv/M4bP+l1GXAEco7P+KPz4ABk/w/7e5tQB2MhsAP+PAAHtjOgEy4Jv/EeHf/tzgTf8OLHsBjYCvAPjUyACWO7f/k2EdAJbMtQD9JUcAkVV3AJrIugACgPn/Uxh8AA5XjwCoM/UBfJfn/9DwxQF8vrkAMDr2ABTp6AB9EmL/Df4f//Wxgv9sjiMAq33y/owMIv+loaIAzs1lAPcZIgFkkTkAJ0Y5AHbMy//yAKIApfQeAMZ04gCAb5n/jDa2ATx6D/+bOjkBNjLGAKvTHf9riqf/rWvH/22hwQBZSPL/znNZ//r+jv6xyl7/UVkyAAdpQv8Z/v/+y0AX/0/ebP8n+UsA8XwyAO+YhQDd8WkAk5diANWhef7yMYkA6SX5/iq3GwC4d+b/2SCj/9D75AGJPoP/T0AJ/l4wcQARijL+wf8WAPcSxQFDN2gAEM1f/zAlQgA3nD8BQFJK/8g1R/7vQ30AGuDeAN+JXf8e4Mr/CdyEAMYm6wFmjVYAPCtRAYgcGgDpJAj+z/KUAKSiPwAzLuD/cjBP/wmv4gDeA8H/L6Do//9daf4OKuYAGopSAdAr9AAbJyb/YtB//0CVtv8F+tEAuzwc/jEZ2v+pdM3/dxJ4AJx0k/+ENW3/DQrKAG5TpwCd24n/BgOC/zKnHv88ny//gYCd/l4DvQADpkQAU9/XAJZawgEPqEEA41Mz/82rQv82uzwBmGYt/3ea4QDw94gAZMWy/4tH3//MUhABKc4q/5zA3f/Ye/T/2tq5/7u67//8rKD/wzQWAJCutf67ZHP/006w/xsHwQCT1Wj/WskK/1B7QgEWIboAAQdj/h7OCgDl6gUANR7SAIoI3P5HN6cASOFWAXa+vAD+wWUBq/ms/16et/5dAmz/sF1M/0ljT/9KQIH+9i5BAGPxf/72l2b/LDXQ/jtm6gCar6T/WPIgAG8mAQD/tr7/c7AP/qk8gQB67fEAWkw/AD5KeP96w24AdwSyAN7y0gCCIS7+nCgpAKeScAExo2//ebDrAEzPDv8DGcYBKevVAFUk1gExXG3/yBge/qjswwCRJ3wB7MOVAFokuP9DVar/JiMa/oN8RP/vmyP/NsmkAMQWdf8xD80AGOAdAX5xkAB1FbYAy5+NAN+HTQCw5rD/vuXX/2Mltf8zFYr/Gb1Z/zEwpf6YLfcAqmzeAFDKBQAbRWf+zBaB/7T8Pv7SAVv/km7+/9uiHADf/NUBOwghAM4Q9ACB0zAAa6DQAHA70QBtTdj+IhW5//ZjOP+zixP/uR0y/1RZEwBK+mL/4SrI/8DZzf/SEKcAY4RfASvmOQD+C8v/Y7w//3fB+/5QaTYA6LW9AbdFcP/Qq6X/L220/3tTpQCSojT/mgsE/5fjWv+SiWH+Pekp/14qN/9spOwAmET+AAqMg/8Kak/+856JAEOyQv6xe8b/Dz4iAMVYKv+VX7H/mADG/5X+cf/hWqP/fdn3ABIR4ACAQnj+wBkJ/zLdzQAx1EYA6f+kAALRCQDdNNv+rOD0/144zgHyswL/H1ukAeYuiv+95twAOS89/28LnQCxW5gAHOZiAGFXfgDGWZH/p09rAPlNoAEd6eb/lhVW/jwLwQCXJST+uZbz/+TUUwGsl7QAyambAPQ86gCO6wQBQ9o8AMBxSwF088//QaybAFEenP9QSCH+Eudt/45rFf59GoT/sBA7/5bJOgDOqckA0HniACisDv+WPV7/ODmc/408kf8tbJX/7pGb/9FVH/7ADNIAY2Jd/pgQlwDhudwAjess/6CsFf5HGh//DUBd/hw4xgCxPvgBtgjxAKZllP9OUYX/gd7XAbypgf/oB2EAMXA8/9nl+wB3bIoAJxN7/oMx6wCEVJEAguaU/xlKuwAF9Tb/udvxARLC5P/xymYAaXHKAJvrTwAVCbL/nAHvAMiUPQBz99L/Md2HADq9CAEjLgkAUUEF/zSeuf99dC7/SowN/9JcrP6TF0cA2eD9/nNstP+ROjD+27EY/5z/PAGak/IA/YZXADVL5QAww97/H68y/5zSeP/QI97/EvizAQIKZf+dwvj/nsxl/2j+xf9PPgQAsqxlAWCS+/9BCpwAAoml/3QE5wDy1wEAEyMd/yuhTwA7lfYB+0KwAMghA/9Qbo7/w6ERAeQ4Qv97L5H+hASkAEOurAAZ/XIAV2FXAfrcVABgW8j/JX07ABNBdgChNPH/7awG/7C///8BQYL+377mAGX95/+SI20A+h1NATEAEwB7WpsBFlYg/9rVQQBvXX8APF2p/wh/tgARug7+/Yn2/9UZMP5M7gD/+FxG/2PgiwC4Cf8BB6TQAM2DxgFX1scAgtZfAN2V3gAXJqv+xW7VACtzjP7XsXYAYDRCAXWe7QAOQLb/Lj+u/55fvv/hzbH/KwWO/6xj1P/0u5MAHTOZ/+R0GP4eZc8AE/aW/4bnBQB9huIBTUFiAOyCIf8Fbj4ARWx//wdxFgCRFFP+wqHn/4O1PADZ0bH/5ZTU/gODuAB1sbsBHA4f/7BmUAAyVJf/fR82/xWdhf8Ts4sB4OgaACJ1qv+n/Kv/SY3O/oH6IwBIT+wB3OUU/ynKrf9jTO7/xhbg/2zGw/8kjWAB7J47/2pkVwBu4gIA4+reAJpdd/9KcKT/Q1sC/xWRIf9m1on/r+Zn/qP2pgBd93T+p+Ac/9wCOQGrzlQAe+QR/xt4dwB3C5MBtC/h/2jIuf6lAnIATU7UAC2asf8YxHn+Up22AFoQvgEMk8UAX++Y/wvrRwBWknf/rIbWADyDxACh4YEAH4J4/l/IMwBp59L/OgmU/yuo3f987Y4AxtMy/i71ZwCk+FQAmEbQ/7R1sQBGT7kA80ogAJWczwDFxKEB9TXvAA9d9v6L8DH/xFgk/6ImewCAyJ0Brkxn/62pIv7YAav/cjMRAIjkwgBuljj+avafABO4T/+WTfD/m1CiAAA1qf8dl1YARF4QAFwHbv5idZX/+U3m//0KjADWfFz+I3brAFkwOQEWNaYAuJA9/7P/wgDW+D3+O272AHkVUf6mA+QAakAa/0Xohv/y3DX+LtxVAHGV9/9hs2f/vn8LAIfRtgBfNIEBqpDO/3rIzP+oZJIAPJCV/kY8KAB6NLH/9tNl/67tCAAHM3gAEx+tAH7vnP+PvcsAxIBY/+mF4v8efa3/yWwyAHtkO//+owMB3ZS1/9aIOf7etIn/z1g2/xwh+/9D1jQB0tBkAFGqXgCRKDUA4G/n/iMc9P/ix8P+7hHmANnZpP6pnd0A2i6iAcfPo/9sc6IBDmC7/3Y8TAC4n5gA0edH/iqkuv+6mTP+3au2/6KOrQDrL8EAB4sQAV+kQP8Q3aYA28UQAIQdLP9kRXX/POtY/ihRrQBHvj3/u1idAOcLFwDtdaQA4ajf/5pydP+jmPIBGCCqAH1icf6oE0wAEZ3c/ps0BQATb6H/R1r8/61u8AAKxnn//f/w/0J70gDdwtf+eaMR/+EHYwC+MbYAcwmFAegaiv/VRIQALHd6/7NiMwCVWmoARzLm/wqZdv+xRhkApVfNADeK6gDuHmEAcZvPAGKZfwAia9v+dXKs/0y0//7yObP/3SKs/jiiMf9TA///cd29/7wZ5P4QWFn/RxzG/hYRlf/zef7/a8pj/wnODgHcL5kAa4knAWExwv+VM8X+ujoL/2sr6AHIBg7/tYVB/t3kq/97PucB4+qz/yK91P70u/kAvg1QAYJZAQDfha0ACd7G/0J/SgCn2F3/m6jGAUKRAABEZi4BrFqaANiAS/+gKDMAnhEbAXzwMQDsyrD/l3zA/ybBvgBftj0Ao5N8//+lM/8cKBH+12BOAFaR2v4fJMr/VgkFAG8pyP/tbGEAOT4sAHW4DwEt8XQAmAHc/52lvAD6D4MBPCx9/0Hc+/9LMrgANVqA/+dQwv+IgX8BFRK7/y06of9HkyIArvkL/iONHQDvRLH/c246AO6+sQFX9ab/vjH3/5JTuP+tDif/ktdoAI7feACVyJv/1M+RARC12QCtIFf//yO1AHffoQHI317/Rga6/8BDVf8yqZgAkBp7/zjzs/4URIgAJ4y8/v3QBf/Ic4cBK6zl/5xouwCX+6cANIcXAJeZSACTxWv+lJ4F/+6PzgB+mYn/WJjF/gdEpwD8n6X/7042/xg/N/8m3l4A7bcM/87M0gATJ/b+HkrnAIdsHQGzcwAAdXZ0AYQG/P+RgaEBaUONAFIl4v/u4uT/zNaB/qJ7ZP+5eeoALWznAEIIOP+EiIAArOBC/q+dvADm3+L+8ttFALgOdwFSojgAcnsUAKJnVf8x72P+nIfXAG//p/4nxNYAkCZPAfmofQCbYZz/FzTb/5YWkAAslaX/KH+3AMRN6f92gdL/qofm/9Z3xgDp8CMA/TQH/3VmMP8VzJr/s4ix/xcCAwGVgln//BGfAUY8GgCQaxEAtL48/zi2O/9uRzb/xhKB/5XgV//fFZj/iha2//qczQDsLdD/T5TyAWVG0QBnTq4AZZCs/5iI7QG/wogAcVB9AZgEjQCbljX/xHT1AO9ySf4TUhH/fH3q/yg0vwAq0p7/m4SlALIFKgFAXCj/JFVN/7LkdgCJQmD+c+JCAG7wRf6Xb1AAp67s/+Nsa/+88kH/t1H/ADnOtf8vIrX/1fCeAUdLXwCcKBj/ZtJRAKvH5P+aIikA469LABXvwwCK5V8BTMAxAHV7VwHj4YIAfT4//wLGqwD+JA3+kbrOAJT/9P8jAKYAHpbbAVzk1ABcxjz+PoXI/8kpOwB97m3/tKPuAYx6UgAJFlj/xZ0v/5leOQBYHrYAVKFVALKSfACmpgf/FdDfAJy28gCbebkAU5yu/poQdv+6U+gB3zp5/x0XWAAjfX//qgWV/qQMgv+bxB0AoWCIAAcjHQGiJfsAAy7y/wDZvAA5ruIBzukCADm7iP57vQn/yXV//7okzADnGdgAUE5pABOGgf+Uy0QAjVF9/vilyP/WkIcAlzem/ybrWwAVLpoA3/6W/yOZtP99sB0BK2Ie/9h65v/poAwAObkM/vBxB/8FCRD+GltsAG3GywAIkygAgYbk/3y6KP9yYoT+poQXAGNFLAAJ8u7/uDU7AISBZv80IPP+k9/I/3tTs/6HkMn/jSU4AZc84/9aSZwBy6y7AFCXL/9eief/JL87/+HRtf9K19X+Bnaz/5k2wQEyAOcAaJ1IAYzjmv+24hD+YOFc/3MUqv4G+k4A+Eut/zVZBv8AtHYASK0BAEAIzgGuhd8AuT6F/9YLYgDFH9AAq6f0/xbntQGW2rkA96lhAaWL9/8veJUBZ/gzADxFHP4Zs8QAfAfa/jprUQC46Zz//EokAHa8QwCNXzX/3l6l/i49NQDOO3P/L+z6/0oFIAGBmu7/aiDiAHm7Pf8DpvH+Q6qs/x3Ysv8XyfwA/W7zAMh9OQBtwGD/NHPuACZ58//JOCEAwnaCAEtgGf+qHub+Jz/9ACQt+v/7Ae8AoNRcAS3R7QDzIVf+7VTJ/9QSnf7UY3//2WIQ/ous7wCoyYL/j8Gp/+6XwQHXaCkA7z2l/gID8gAWy7H+scwWAJWB1f4fCyn/AJ95/qAZcv+iUMgAnZcLAJqGTgHYNvwAMGeFAGncxQD9qE3+NbMXABh58AH/LmD/azyH/mLN+f8/+Xf/eDvT/3K0N/5bVe0AldRNAThJMQBWxpYAXdGgAEXNtv/0WisAFCSwAHp03QAzpycB5wE//w3FhgAD0SL/hzvKAKdkTgAv30wAuTw+ALKmewGEDKH/Pa4rAMNFkAB/L78BIixOADnqNAH/Fij/9l6SAFPkgAA8TuD/AGDS/5mv7ACfFUkAtHPE/oPhagD/p4YAnwhw/3hEwv+wxMb/djCo/12pAQBwyGYBShj+ABONBP6OPj8Ag7O7/02cm/93VqQAqtCS/9CFmv+Umzr/onjo/vzVmwDxDSoAXjKDALOqcACMU5f/N3dUAYwj7/+ZLUMB7K8nADaXZ/+eKkH/xO+H/lY1ywCVYS/+2CMR/0YDRgFnJFr/KBqtALgwDQCj29n/UQYB/92qbP7p0F0AZMn5/lYkI//Rmh4B48n7/wK9p/5kOQMADYApAMVkSwCWzOv/ka47AHj4lf9VN+EActI1/sfMdwAO90oBP/uBAENolwGHglAAT1k3/3Xmnf8ZYI8A1ZEFAEXxeAGV81//cioUAINIAgCaNRT/ST5tAMRmmAApDMz/eiYLAfoKkQDPfZQA9vTe/ykgVQFw1X4AovlWAUfGf/9RCRUBYicE/8xHLQFLb4kA6jvnACAwX//MH3IBHcS1/zPxp/5dbY4AaJAtAOsMtf80cKQATP7K/64OogA965P/K0C5/ul92QDzWKf+SjEIAJzMQgB81nsAJt12AZJw7AByYrEAl1nHAFfFcAC5laEALGClAPizFP+829j+KD4NAPOOjQDl487/rMoj/3Ww4f9SbiYBKvUO/xRTYQAxqwoA8nd4ABnoPQDU8JP/BHM4/5ER7/7KEfv/+RL1/2N17wC4BLP/9u0z/yXvif+mcKb/Ubwh/7n6jv82u60A0HDJAPYr5AFouFj/1DTE/zN1bP/+dZsALlsP/1cOkP9X48wAUxpTAZ9M4wCfG9UBGJdsAHWQs/6J0VIAJp8KAHOFyQDftpwBbsRd/zk86QAFp2n/msWkAGAiuv+ThSUB3GO+AAGnVP8UkasAwsX7/l9Ohf/8+PP/4V2D/7uGxP/YmaoAFHae/owBdgBWng8BLdMp/5MBZP5xdEz/039sAWcPMADBEGYBRTNf/2uAnQCJq+kAWnyQAWqhtgCvTOwByI2s/6M6aADptDT/8P0O/6Jx/v8m74r+NC6mAPFlIf6DupwAb9A+/3xeoP8frP4AcK44/7xjG/9DivsAfTqAAZyYrv+yDPf//FSeAFLFDv6syFP/JScuAWrPpwAYvSIAg7KQAM7VBACh4tIASDNp/2Etu/9OuN//sB37AE+gVv90JbIAUk3VAVJUjf/iZdQBr1jH//Ve9wGsdm3/prm+AIO1eABX/l3/hvBJ/yD1j/+Lomf/s2IS/tnMcACT33j/NQrzAKaMlgB9UMj/Dm3b/1vaAf/8/C/+bZx0/3MxfwHMV9P/lMrZ/xpV+f8O9YYBTFmp//It5gA7Yqz/ckmE/k6bMf+eflQAMa8r/xC2VP+dZyMAaMFt/0PdmgDJrAH+CKJYAKUBHf99m+X/HprcAWfvXADcAW3/ysYBAF4CjgEkNiwA6+Ke/6r71v+5TQkAYUryANujlf/wI3b/33JY/sDHAwBqJRj/yaF2/2FZYwHgOmf/ZceT/t48YwDqGTsBNIcbAGYDW/6o2OsA5eiIAGg8gQAuqO4AJ79DAEujLwCPYWL/ONioAajp/P8jbxb/XFQrABrIVwFb/ZgAyjhGAI4ITQBQCq8B/MdMABZuUv+BAcIAC4A9AVcOkf/93r4BD0iuAFWjVv46Yyz/LRi8/hrNDwAT5dL++EPDAGNHuACaxyX/l/N5/yYzS//JVYL+LEH6ADmT8/6SKzv/WRw1ACFUGP+zMxL+vUZTAAucswFihncAnm9vAHeaSf/IP4z+LQ0N/5rAAv5RSCoALqC5/ixwBgCS15UBGrBoAEQcVwHsMpn/s4D6/s7Bv/+mXIn+NSjvANIBzP6orSMAjfMtASQybf8P8sL/4596/7Cvyv5GOUgAKN84ANCiOv+3Yl0AD28MAB4ITP+Ef/b/LfJnAEW1D/8K0R4AA7N5APHo2gF7x1j/AtLKAbyCUf9eZdABZyQtAEzBGAFfGvH/paK7ACRyjADKQgX/JTiTAJgL8wF/Vej/+ofUAbmxcQBa3Ev/RfiSADJvMgBcFlAA9CRz/qNkUv8ZwQYBfz0kAP1DHv5B7Kr/oRHX/j+vjAA3fwQAT3DpAG2gKACPUwf/QRru/9mpjP9OXr3/AJO+/5NHuv5qTX//6Z3pAYdX7f/QDewBm20k/7Rk2gC0oxIAvm4JARE/e/+ziLT/pXt7/5C8Uf5H8Gz/GXAL/+PaM/+nMur/ck9s/x8Tc/+38GMA41eP/0jZ+P9mqV8BgZWVAO6FDAHjzCMA0HMaAWYI6gBwWI8BkPkOAPCerP5kcHcAwo2Z/ig4U/95sC4AKjVM/56/mgBb0VwArQ0QAQVI4v/M/pUAULjPAGQJev52Zav//MsA/qDPNgA4SPkBOIwN/wpAa/5bZTT/4bX4AYv/hADmkREA6TgXAHcB8f/VqZf/Y2MJ/rkPv/+tZ20Brg37/7JYB/4bO0T/CiEC//hhOwAaHpIBsJMKAF95zwG8WBgAuV7+/nM3yQAYMkYAeDUGAI5CkgDk4vn/aMDeAa1E2wCiuCT/j2aJ/50LFwB9LWIA613h/jhwoP9GdPMBmfk3/4EnEQHxUPQAV0UVAV7kSf9OQkH/wuPnAD2SV/+tmxf/cHTb/tgmC/+DuoUAXtS7AGQvWwDM/q//3hLX/q1EbP/j5E//Jt3VAKPjlv4fvhIAoLMLAQpaXv/crlgAo9Pl/8eINACCX93/jLzn/otxgP91q+z+MdwU/zsUq//kbbwAFOEg/sMQrgDj/ogBhydpAJZNzv/S7uIAN9SE/u85fACqwl3/+RD3/xiXPv8KlwoAT4uy/3jyygAa29UAPn0j/5ACbP/mIVP/US3YAeA+EQDW2X0AYpmZ/7Owav6DXYr/bT4k/7J5IP94/EYA3PglAMxYZwGA3Pv/7OMHAWoxxv88OGsAY3LuANzMXgFJuwEAWZoiAE7Zpf8Ow/n/Ceb9/82H9QAa/Af/VM0bAYYCcAAlniAA51vt/7+qzP+YB94AbcAxAMGmkv/oE7X/aY40/2cQGwH9yKUAw9kE/zS9kP97m6D+V4I2/054Pf8OOCkAGSl9/1eo9QDWpUYA1KkG/9vTwv5IXaT/xSFn/yuOjQCD4awA9GkcAERE4QCIVA3/gjko/otNOABUljUANl+dAJANsf5fc7oAdRd2//Sm8f8LuocAsmrL/2HaXQAr/S0ApJgEAIt27wBgARj+65nT/6huFP8y77AAcinoAMH6NQD+oG/+iHop/2FsQwDXmBf/jNHUACq9owDKKjL/amq9/75E2f/pOnUA5dzzAcUDBAAleDb+BJyG/yQ9q/6liGT/1OgOAFquCgDYxkH/DANAAHRxc//4ZwgA530S/6AcxQAeuCMB30n5/3sULv6HOCX/rQ3lAXehIv/1PUkAzX1wAIlohgDZ9h7/7Y6PAEGfZv9spL4A23Wt/yIleP7IRVAAH3za/koboP+6msf/R8f8AGhRnwERyCcA0z3AARruWwCU2QwAO1vV/wtRt/+B5nr/csuRAXe0Qv9IirQA4JVqAHdSaP/QjCsAYgm2/81lhv8SZSYAX8Wm/8vxkwA+0JH/hfb7AAKpDgAN97gAjgf+ACTIF/9Yzd8AW4E0/xW6HgCP5NIB9+r4/+ZFH/6wuof/7s00AYtPKwARsNn+IPNDAPJv6QAsIwn/43JRAQRHDP8mab8AB3Uy/1FPEAA/REH/nSRu/03xA//iLfsBjhnOAHh70QEc/u7/BYB+/1ve1/+iD78AVvBJAIe5Uf4s8aMA1NvS/3CimwDPZXYAqEg4/8QFNABIrPL/fhad/5JgO/+ieZj+jBBfAMP+yP5SlqIAdyuR/sysTv+m4J8AaBPt//V+0P/iO9UAddnFAJhI7QDcHxf+Dlrn/7zUQAE8Zfb/VRhWAAGxbQCSUyABS7bAAHfx4AC57Rv/uGVSAeslTf/9hhMA6PZ6ADxqswDDCwwAbULrAX1xOwA9KKQAr2jwAAIvu/8yDI0Awou1/4f6aABhXN7/2ZXJ/8vxdv9Pl0MAeo7a/5X17wCKKsj+UCVh/3xwp/8kilf/gh2T//FXTv/MYRMBsdEW//fjf/5jd1P/1BnGARCzswCRTaz+WZkO/9q9pwBr6Tv/IyHz/ixwcP+hf08BzK8KACgViv5odOQAx1+J/4W+qP+SpeoBt2MnALfcNv7/3oUAott5/j/vBgDhZjb/+xL2AAQigQGHJIMAzjI7AQ9htwCr2If/ZZgr/5b7WwAmkV8AIswm/rKMU/8ZgfP/TJAlAGokGv52kKz/RLrl/2uh1f8uo0T/lar9ALsRDwDaoKX/qyP2AWANEwCly3UA1mvA//R7sQFkA2gAsvJh//tMgv/TTSoB+k9G/z/0UAFpZfYAPYg6Ae5b1QAOO2L/p1RNABGELv45r8X/uT64AExAzwCsr9D+r0olAIob0/6UfcIACllRAKjLZf8r1dEB6/U2AB4j4v8JfkYA4n1e/px1FP85+HAB5jBA/6RcpgHg1ub/JHiPADcIK//7AfUBamKlAEprav41BDb/WrKWAQN4e//0BVkBcvo9//6ZUgFNDxEAOe5aAV/f5gDsNC/+Z5Sk/3nPJAESELn/SxRKALsLZQAuMIH/Fu/S/03sgf9vTcz/PUhh/8fZ+/8q18wAhZHJ/znmkgHrZMYAkkkj/mzGFP+2T9L/UmeIAPZssAAiETz/E0py/qiqTv+d7xT/lSmoADp5HABPs4b/53mH/67RYv/zer4Aq6bNANR0MAAdbEL/ot62AQ53FQDVJ/n//t/k/7elxgCFvjAAfNBt/3evVf8J0XkBMKu9/8NHhgGI2zP/tluN/jGfSAAjdvX/cLrj/zuJHwCJLKMAcmc8/gjVlgCiCnH/wmhIANyDdP+yT1wAy/rV/l3Bvf+C/yL+1LyXAIgRFP8UZVP/1M6mAOXuSf+XSgP/qFfXAJu8hf+mgUkA8E+F/7LTUf/LSKP+wailAA6kx/4e/8wAQUhbAaZKZv/IKgD/wnHj/0IX0ADl2GT/GO8aAArpPv97CrIBGiSu/3fbxwEto74AEKgqAKY5xv8cGhoAfqXnAPtsZP895Xn/OnaKAEzPEQANInD+WRCoACXQaf8jydf/KGpl/gbvcgAoZ+L+9n9u/z+nOgCE8I4ABZ5Y/4FJnv9eWZIA5jaSAAgtrQBPqQEAc7r3AFRAgwBD4P3/z71AAJocUQEtuDb/V9Tg/wBgSf+BIesBNEJQ//uum/8EsyUA6qRd/l2v/QDGRVf/4GouAGMd0gA+vHL/LOoIAKmv9/8XbYn/5bYnAMClXv71ZdkAv1hgAMReY/9q7gv+NX7zAF4BZf8ukwIAyXx8/40M2gANpp0BMPvt/5v6fP9qlJL/tg3KABw9pwDZmAj+3IIt/8jm/wE3QVf/Xb9h/nL7DgAgaVwBGs+NABjPDf4VMjD/upR0/9Mr4QAlIqL+pNIq/0QXYP+21gj/9XWJ/0LDMgBLDFP+UIykAAmlJAHkbuMA8RFaARk01AAG3wz/i/M5AAxxSwH2t7//1b9F/+YPjgABw8T/iqsv/0A/agEQqdb/z644AVhJhf+2hYwAsQ4Z/5O4Nf8K46H/eNj0/0lN6QCd7osBO0HpAEb72AEpuJn/IMtwAJKT/QBXZW0BLFKF//SWNf9emOj/O10n/1iT3P9OUQ0BIC/8/6ATcv9dayf/dhDTAbl30f/j23/+WGns/6JuF/8kpm7/W+zd/0LqdABvE/T+CukaACC3Bv4Cv/IA2pw1/ik8Rv+o7G8Aebl+/+6Oz/83fjQA3IHQ/lDMpP9DF5D+2ihs/3/KpADLIQP/Ap4AACVgvP/AMUoAbQQAAG+nCv5b2of/y0Kt/5bC4gDJ/Qb/rmZ5AM2/bgA1wgQAUSgt/iNmj/8MbMb/EBvo//xHugGwbnIAjgN1AXFNjgATnMUBXC/8ADXoFgE2EusALiO9/+zUgQACYND+yO7H/zuvpP+SK+cAwtk0/wPfDACKNrL+VevPAOjPIgAxNDL/pnFZ/wot2P8+rRwAb6X2AHZzW/+AVDwAp5DLAFcN8wAWHuQBsXGS/4Gq5v78mYH/keErAEbnBf96aX7+VvaU/24lmv7RA1sARJE+AOQQpf833fn+stJbAFOS4v5FkroAXdJo/hAZrQDnuiYAvXqM//sNcP9pbl0A+0iqAMAX3/8YA8oB4V3kAJmTx/5tqhYA+GX2/7J8DP+y/mb+NwRBAH3WtAC3YJMALXUX/oS/+QCPsMv+iLc2/5LqsQCSZVb/LHuPASHRmADAWin+Uw99/9WsUgDXqZAAEA0iACDRZP9UEvkBxRHs/9m65gAxoLD/b3Zh/+1o6wBPO1z+RfkL/yOsSgETdkQA3nyl/7RCI/9WrvYAK0pv/36QVv/k6lsA8tUY/kUs6//ctCMACPgH/2YvXP/wzWb/cearAR+5yf/C9kb/ehG7AIZGx/+VA5b/dT9nAEFoe//UNhMBBo1YAFOG8/+INWcAqRu0ALExGABvNqcAwz3X/x8BbAE8KkYAuQOi/8KVKP/2fyb+vncm/z13CAFgodv/KsvdAbHypP/1nwoAdMQAAAVdzf6Af7MAfe32/5Wi2f9XJRT+jO7AAAkJwQBhAeIAHSYKAACIP//lSNL+JoZc/07a0AFoJFT/DAXB//KvPf+/qS4Bs5OT/3G+i/59rB8AA0v8/tckDwDBGxgB/0WV/26BdgDLXfkAiolA/iZGBgCZdN4AoUp7AMFjT/92O17/PQwrAZKxnQAuk78AEP8mAAszHwE8OmL/b8JNAZpb9ACMKJABrQr7AMvRMv5sgk4A5LRaAK4H+gAfrjwAKaseAHRjUv92wYv/u63G/tpvOAC5e9gA+Z40ADS0Xf/JCVv/OC2m/oSby/866G4ANNNZ//0AogEJV7cAkYgsAV569QBVvKsBk1zGAAAIaAAeX64A3eY0Aff36/+JrjX/IxXM/0fj1gHoUsIACzDj/6pJuP/G+/z+LHAiAINlg/9IqLsAhId9/4poYf/uuKj/82hU/4fY4v+LkO0AvImWAVA4jP9Wqaf/wk4Z/9wRtP8RDcEAdYnU/43glwAx9K8AwWOv/xNjmgH/QT7/nNI3//L0A//6DpUAnljZ/53Phv776BwALpz7/6s4uP/vM+oAjoqD/xn+8wEKycIAP2FLANLvogDAyB8BddbzABhH3v42KOj/TLdv/pAOV//WT4j/2MTUAIQbjP6DBf0AfGwT/xzXSwBM3jf+6bY/AESrv/40b97/CmlN/1Cq6wCPGFj/Led5AJSB4AE99lQA/S7b/+9MIQAxlBL+5iVFAEOGFv6Om14AH53T/tUqHv8E5Pf+/LAN/ycAH/7x9P//qi0K/v3e+QDecoQA/y8G/7SjswFUXpf/WdFS/uU0qf/V7AAB1jjk/4d3l/9wycEAU6A1/gaXQgASohEA6WFbAIMFTgG1eDX/dV8//+11uQC/foj/kHfpALc5YQEvybv/p6V3AS1kfgAVYgb+kZZf/3g2mADRYmgAj28e/riU+QDr2C4A+MqU/zlfFgDy4aMA6ffo/0erE/9n9DH/VGdd/0R59AFS4A0AKU8r//nOp//XNBX+wCAW//dvPABlSib/FltU/h0cDf/G59f+9JrIAN+J7QDThA4AX0DO/xE+9//pg3kBXRdNAM3MNP5RvYgAtNuKAY8SXgDMK4z+vK/bAG9ij/+XP6L/0zJH/hOSNQCSLVP+slLu/xCFVP/ixl3/yWEU/3h2I/9yMuf/ouWc/9MaDAByJ3P/ztSGAMXZoP90gV7+x9fb/0vf+QH9dLX/6Ndo/+SC9v+5dVYADgUIAO8dPQHtV4X/fZKJ/syo3wAuqPUAmmkWANzUof9rRRj/idq1//FUxv+CetP/jQiZ/76xdgBgWbIA/xAw/npgaf91Nuj/In5p/8xDpgDoNIr/05MMABk2BwAsD9f+M+wtAL5EgQFqk+EAHF0t/uyND/8RPaEA3HPAAOyRGP5vqKkA4Do//3+kvABS6ksB4J6GANFEbgHZptkARuGmAbvBj/8QB1j/Cs2MAHXAnAEROCYAG3xsAavXN/9f/dQAm4eo//aymf6aREoA6D1g/mmEOwAhTMcBvbCC/wloGf5Lxmb/6QFwAGzcFP9y5kYAjMKF/zmepP6SBlD/qcRhAVW3ggBGnt4BO+3q/2AZGv/or2H/C3n4/lgjwgDbtPz+SgjjAMPjSQG4bqH/MemkAYA1LwBSDnn/wb46ADCudf+EFyAAKAqGARYzGf/wC7D/bjmSAHWP7wGdZXb/NlRMAM24Ev8vBEj/TnBV/8EyQgFdEDT/CGmGAAxtSP86nPsAkCPMACygdf4ya8IAAUSl/29uogCeUyj+TNbqADrYzf+rYJP/KONyAbDj8QBG+bcBiFSL/zx69/6PCXX/sa6J/kn3jwDsuX7/Phn3/y1AOP+h9AYAIjk4AWnKUwCAk9AABmcK/0qKQf9hUGT/1q4h/zKGSv9ul4L+b1SsAFTHS/74O3D/CNiyAQm3XwDuGwj+qs3cAMPlhwBiTO3/4lsaAVLbJ//hvscB2ch5/1GzCP+MQc4Ass9X/vr8Lv9oWW4B/b2e/5DWnv+g9Tb/NbdcARXIwv+SIXEB0QH/AOtqK/+nNOgAneXdADMeGQD63RsBQZNX/097xABBxN//TCwRAVXxRADKt/n/QdTU/wkhmgFHO1AAr8I7/41ICQBkoPQA5tA4ADsZS/5QwsIAEgPI/qCfcwCEj/cBb105/zrtCwGG3of/eqNsAXsrvv/7vc7+ULZI/9D24AERPAkAoc8mAI1tWwDYD9P/iE5uAGKjaP8VUHn/rbK3AX+PBABoPFL+1hAN/2DuIQGelOb/f4E+/zP/0v8+jez+nTfg/3In9ADAvPr/5Ew1AGJUUf+tyz3+kzI3/8zrvwA0xfQAWCvT/hu/dwC855oAQlGhAFzBoAH643gAezfiALgRSACFqAr+Foec/ykZZ/8wyjoAupVR/7yG7wDrtb3+2Yu8/0owUgAu2uUAvf37ADLlDP/Tjb8BgPQZ/6nnev5WL73/hLcX/yWylv8zif0AyE4fABZpMgCCPAAAhKNb/hfnuwDAT+8AnWak/8BSFAEYtWf/8AnqAAF7pP+F6QD/yvLyADy69QDxEMf/4HSe/r99W//gVs8AeSXn/+MJxv8Pme//eejZ/ktwUgBfDDn+M9Zp/5TcYQHHYiQAnNEM/grUNADZtDf+1Kro/9gUVP+d+ocAnWN//gHOKQCVJEYBNsTJ/1d0AP7rq5YAG6PqAMqHtADQXwD+e5xdALc+SwCJ67YAzOH//9aL0v8Ccwj/HQxvADScAQD9Ffv/JaUf/gyC0wBqEjX+KmOaAA7ZPf7YC1z/yMVw/pMmxwAk/Hj+a6lNAAF7n//PS2YAo6/EACwB8AB4urD+DWJM/+188f/okrz/yGDgAMwfKQDQyA0AFeFg/6+cxAD30H4APrj0/gKrUQBVc54ANkAt/xOKcgCHR80A4y+TAdrnQgD90RwA9A+t/wYPdv4QltD/uRYy/1Zwz/9LcdcBP5Ir/wThE/7jFz7/Dv/W/i0Izf9XxZf+0lLX//X49/+A+EYA4fdXAFp4RgDV9VwADYXiAC+1BQFco2n/Bh6F/uiyPf/mlRj/EjGeAORkPf508/v/TUtcAVHbk/9Mo/7+jdX2AOglmP5hLGQAySUyAdT0OQCuq7f/+UpwAKacHgDe3WH/811J/vtlZP/Y2V3//oq7/46+NP87y7H/yF40AHNynv+lmGgBfmPi/3ad9AFryBAAwVrlAHkGWACcIF3+ffHT/w7tnf+lmhX/uOAW//oYmP9xTR8A96sX/+2xzP80iZH/wrZyAODqlQAKb2cByYEEAO6OTgA0Bij/btWl/jzP/QA+10UAYGEA/zEtygB4eRb/64swAcYtIv+2MhsBg9Jb/y42gACve2n/xo1O/kP07//1Nmf+Tiby/wJc+f77rlf/iz+QABhsG/8iZhIBIhaYAELldv4yj2MAkKmVAXYemACyCHkBCJ8SAFpl5v+BHXcARCQLAei3NwAX/2D/oSnB/z+L3gAPs/MA/2QP/1I1hwCJOZUBY/Cq/xbm5P4xtFL/PVIrAG712QDHfT0ALv00AI3F2wDTn8EAN3lp/rcUgQCpd6r/y7KL/4cotv+sDcr/QbKUAAjPKwB6NX8BSqEwAOPWgP5WC/P/ZFYHAfVEhv89KxUBmFRe/748+v7vduj/1oglAXFMa/9daGQBkM4X/26WmgHkZ7kA2jEy/odNi/+5AU4AAKGU/2Ed6f/PlJX/oKgAAFuAq/8GHBP+C2/3ACe7lv+K6JUAdT5E/z/YvP/r6iD+HTmg/xkM8QGpPL8AIION/+2fe/9exV7+dP4D/1yzYf55YVz/qnAOABWV+AD44wMAUGBtAEvASgEMWuL/oWpEAdByf/9yKv/+ShpK//ezlv55jDwAk0bI/9Yoof+hvMn/jUGH//Jz/AA+L8oAtJX//oI37QClEbr/CqnCAJxt2v9wjHv/aIDf/rGObP95Jdv/gE0S/29sFwFbwEsArvUW/wTsPv8rQJkB463+AO16hAF/Wbr/jlKA/vxUrgBas7EB89ZX/2c8ov/Qgg7/C4KLAM6B2/9e2Z3/7+bm/3Rzn/6ka18AM9oCAdh9xv+MyoD+C19E/zcJXf6umQb/zKxgAEWgbgDVJjH+G1DVAHZ9cgBGRkP/D45J/4N6uf/zFDL+gu0oANKfjAHFl0H/VJlCAMN+WgAQ7uwBdrtm/wMYhf+7ReYAOMVcAdVFXv9QiuUBzgfmAN5v5gFb6Xf/CVkHAQJiAQCUSoX/M/a0/+SxcAE6vWz/wsvt/hXRwwCTCiMBVp3iAB+ji/44B0v/Plp0ALU8qQCKotT+UacfAM1acP8hcOMAU5d1AbHgSf+ukNn/5sxP/xZN6P9yTuoA4Dl+/gkxjQDyk6UBaLaM/6eEDAF7RH8A4VcnAftsCADGwY8BeYfP/6wWRgAyRHT/Za8o//hp6QCmywcAbsXaANf+Gv6o4v0AH49gAAtnKQC3gcv+ZPdK/9V+hADSkywAx+obAZQvtQCbW54BNmmv/wJOkf5mml8AgM9//jR87P+CVEcA3fPTAJiqzwDeascAt1Re/lzIOP+KtnMBjmCSAIWI5ABhEpYAN/tCAIxmBADKZ5cAHhP4/zO4zwDKxlkAN8Xh/qlf+f9CQUT/vOp+AKbfZAFw7/QAkBfCADontgD0LBj+r0Sz/5h2mgGwooIA2XLM/q1+Tv8h3h7/JAJb/wKP8wAJ69cAA6uXARjX9f+oL6T+8ZLPAEWBtABE83EAkDVI/vstDgAXbqgARERP/25GX/6uW5D/Ic5f/4kpB/8Tu5n+I/9w/wmRuf4ynSUAC3AxAWYIvv/q86kBPFUXAEonvQB0Me8ArdXSAC6hbP+fliUAxHi5/yJiBv+Zwz7/YeZH/2Y9TAAa1Oz/pGEQAMY7kgCjF8QAOBg9ALViwQD7k+X/Yr0Y/y42zv/qUvYAt2cmAW0+zAAK8OAAkhZ1/46aeABF1CMA0GN2AXn/A/9IBsIAdRHF/30PFwCaT5kA1l7F/7k3k/8+/k7+f1KZAG5mP/9sUqH/abvUAVCKJwA8/13/SAy6ANL7HwG+p5D/5CwT/oBD6ADW+Wv+iJFW/4QusAC9u+P/0BaMANnTdAAyUbr+i/ofAB5AxgGHm2QAoM4X/rui0/8QvD8A/tAxAFVUvwDxwPL/mX6RAeqiov/mYdgBQId+AL6U3wE0ACv/HCe9AUCI7gCvxLkAYuLV/3+f9AHirzwAoOmOAbTzz/9FmFkBH2UVAJAZpP6Lv9EAWxl5ACCTBQAnunv/P3Pm/12nxv+P1dz/s5wT/xlCegDWoNn/Ai0+/2pPkv4ziWP/V2Tn/6+R6P9luAH/rgl9AFIloQEkco3/MN6O//W6mgAFrt3+P3Kb/4c3oAFQH4cAfvqzAezaLQAUHJEBEJNJAPm9hAERvcD/347G/0gUD//6Ne3+DwsSABvTcf7Vazj/rpOS/2B+MAAXwW0BJaJeAMed+f4YgLv/zTGy/l2kKv8rd+sBWLft/9rSAf9r/ioA5gpj/6IA4gDb7VsAgbLLANAyX/7O0F//979Z/m7qT/+lPfMAFHpw//b2uf5nBHsA6WPmAdtb/P/H3hb/s/Xp/9Px6gBv+sD/VVSIAGU6Mv+DrZz+dy0z/3bpEP7yWtYAXp/bAQMD6v9iTFz+UDbmAAXk5/41GN//cTh2ARSEAf+r0uwAOPGe/7pzE/8I5a4AMCwAAXJypv8GSeL/zVn0AInjSwH4rTgASnj2/ncDC/9ReMb/iHpi/5Lx3QFtwk7/3/FGAdbIqf9hvi//L2eu/2NcSP526bT/wSPp/hrlIP/e/MYAzCtH/8dUrACGZr4Ab+5h/uYo5gDjzUD+yAzhAKYZ3gBxRTP/j58YAKe4SgAd4HT+ntDpAMF0fv/UC4X/FjqMAcwkM//oHisA60a1/0A4kv6pElT/4gEN/8gysP801fX+qNFhAL9HNwAiTpwA6JA6AblKvQC6jpX+QEV//6HLk/+wl78AiOfL/qO2iQChfvv+6SBCAETPQgAeHCUAXXJgAf5c9/8sq0UAyncL/7x2MgH/U4j/R1IaAEbjAgAg63kBtSmaAEeG5f7K/yQAKZgFAJo/Sf8itnwAed2W/xrM1QEprFcAWp2S/22CFABHa8j/82a9AAHDkf4uWHUACM7jAL9u/f9tgBT+hlUz/4mxcAHYIhb/gxDQ/3mVqgByExcBplAf/3HwegDos/oARG60/tKqdwDfbKT/z0/p/xvl4v7RYlH/T0QHAIO5ZACqHaL/EaJr/zkVCwFkyLX/f0GmAaWGzABop6gAAaRPAJKHOwFGMoD/ZncN/uMGhwCijrP/oGTeABvg2wGeXcP/6o2JABAYff/uzi//YRFi/3RuDP9gc00AW+Po//j+T/9c5Qb+WMaLAM5LgQD6Tc7/jfR7AYpF3AAglwYBg6cW/+1Ep/7HvZYAo6uK/zO8Bv9fHYn+lOKzALVr0P+GH1L/l2Ut/4HK4QDgSJMAMIqX/8NAzv7t2p4Aah2J/v296f9nDxH/wmH/ALItqf7G4ZsAJzB1/4dqcwBhJrUAli9B/1OC5f72JoEAXO+a/ltjfwChbyH/7tny/4O5w//Vv57/KZbaAISpgwBZVPwBq0aA/6P4y/4BMrT/fExVAftvUABjQu//mu22/91+hf5KzGP/QZN3/2M4p/9P+JX/dJvk/+0rDv5FiQv/FvrxAVt6j//N+fMA1Bo8/zC2sAEwF7//y3mY/i1K1f8+WhL+9aPm/7lqdP9TI58ADCEC/1AiPgAQV67/rWVVAMokUf6gRcz/QOG7ADrOXgBWkC8A5Vb1AD+RvgElBScAbfsaAImT6gCieZH/kHTO/8Xouf+3voz/SQz+/4sU8v+qWu//YUK7//W1h/7eiDQA9QUz/ssvTgCYZdgASRd9AP5gIQHr0kn/K9FYAQeBbQB6aOT+qvLLAPLMh//KHOn/QQZ/AJ+QRwBkjF8ATpYNAPtrdgG2On3/ASZs/4290f8Im30BcaNb/3lPvv+G72z/TC/4AKPk7wARbwoAWJVL/9fr7wCnnxj/L5ds/2vRvADp52P+HMqU/64jiv9uGET/AkW1AGtmUgBm7QcAXCTt/92iUwE3ygb/h+qH/xj63gBBXqj+9fjS/6dsyf7/oW8AzQj+AIgNdABksIT/K9d+/7GFgv+eT5QAQ+AlAQzOFf8+Im4B7Wiv/1CEb/+OrkgAVOW0/mmzjABA+A//6YoQAPVDe/7aedT/P1/aAdWFif+PtlL/MBwLAPRyjQHRr0z/nbWW/7rlA/+knW8B572LAHfKvv/aakD/ROs//mAarP+7LwsB1xL7/1FUWQBEOoAAXnEFAVyB0P9hD1P+CRy8AO8JpAA8zZgAwKNi/7gSPADZtosAbTt4/wTA+wCp0vD/Jaxc/pTT9f+zQTQA/Q1zALmuzgFyvJX/7VqtACvHwP9YbHEANCNMAEIZlP/dBAf/l/Fy/77R6ABiMscAl5bV/xJKJAE1KAcAE4dB/xqsRQCu7VUAY18pAAM4EAAnoLH/yGra/rlEVP9buj3+Q4+N/w30pv9jcsYAx26j/8ESugB87/YBbkQWAALrLgHUPGsAaSppAQ7mmAAHBYMAjWia/9UDBgCD5KL/s2QcAed7Vf/ODt8B/WDmACaYlQFiiXoA1s0D/+KYs/8GhYkAnkWM/3Gimv+086z/G71z/48u3P/VhuH/fh1FALwriQHyRgkAWsz//+eqkwAXOBP+OH2d/zCz2v9Ptv3/JtS/ASnrfABglxwAh5S+AM35J/40YIj/1CyI/0PRg//8ghf/24AU/8aBdgBsZQsAsgWSAT4HZP+17F7+HBqkAEwWcP94Zk8AysDlAciw1wApQPT/zrhOAKctPwGgIwD/OwyO/8wJkP/bXuUBehtwAL1pbf9A0Er/+383AQLixgAsTNEAl5hN/9IXLgHJq0X/LNPnAL4l4P/1xD7/qbXe/yLTEQB38cX/5SOYARVFKP+y4qEAlLPBANvC/gEozjP/51z6AUOZqgAVlPEAqkVS/3kS5/9ccgMAuD7mAOHJV/+SYKL/tfLcAK273QHiPqr/OH7ZAXUN4/+zLO8AnY2b/5DdUwDr0dAAKhGlAftRhQB89cn+YdMY/1PWpgCaJAn/+C9/AFrbjP+h2Sb+1JM//0JUlAHPAwEA5oZZAX9Oev/gmwH/UohKALKc0P+6GTH/3gPSAeWWvv9VojT/KVSN/0l7VP5dEZYAdxMcASAW1/8cF8z/jvE0/+Q0fQAdTM8A16f6/q+k5gA3z2kBbbv1/6Es3AEpZYD/pxBeAF3Wa/92SAD+UD3q/3mvfQCLqfsAYSeT/vrEMf+ls27+30a7/xaOfQGas4r/drAqAQqumQCcXGYAqA2h/48QIAD6xbT/y6MsAVcgJAChmRT/e/wPABnjUAA8WI4AERbJAZrNTf8nPy8ACHqNAIAXtv7MJxP/BHAd/xckjP/S6nT+NTI//3mraP+g214AV1IO/ucqBQCli3/+Vk4mAII8Qv7LHi3/LsR6Afk1ov+Ij2f+19JyAOcHoP6pmCr/by32AI6Dh/+DR8z/JOILAAAc8v/hitX/9y7Y/vUDtwBs/EoBzhow/8029v/TxiT/eSMyADTYyv8mi4H+8kmUAEPnjf8qL8wATnQZAQThv/8Gk+QAOlixAHql5f/8U8n/4KdgAbG4nv/yabMB+MbwAIVCywH+JC8ALRhz/3c+/gDE4br+e42sABpVKf/ib7cA1eeXAAQ7B//uipQAQpMh/x/2jf/RjXT/aHAfAFihrABT1+b+L2+XAC0mNAGELcwAioBt/ul1hv/zvq3+8ezwAFJ/7P4o36H/brbh/3uu7wCH8pEBM9GaAJYDc/7ZpPz/N5xFAVRe///oSS0BFBPU/2DFO/5g+yEAJsdJAUCs9/91dDj/5BESAD6KZwH25aT/9HbJ/lYgn/9tIokBVdO6AArBwf56wrEAeu5m/6LaqwBs2aEBnqoiALAvmwG15Av/CJwAABBLXQDOYv8BOpojAAzzuP5DdUL/5uV7AMkqbgCG5LL+umx2/zoTmv9SqT7/co9zAe/EMv+tMMH/kwJU/5aGk/5f6EkAbeM0/r+JCgAozB7+TDRh/6TrfgD+fLwASrYVAXkdI//xHgf+VdrW/wdUlv5RG3X/oJ+Y/kIY3f/jCjwBjYdmANC9lgF1s1wAhBaI/3jHHAAVgU/+tglBANqjqQD2k8b/ayaQAU6vzf/WBfr+L1gd/6QvzP8rNwb/g4bP/nRk1gBgjEsBatyQAMMgHAGsUQX/x7M0/yVUywCqcK4ACwRbAEX0GwF1g1wAIZiv/4yZa//7hyv+V4oE/8bqk/55mFT/zWWbAZ0JGQBIahH+bJkA/73lugDBCLD/rpXRAO6CHQDp1n4BPeJmADmjBAHGbzP/LU9OAXPSCv/aCRn/novG/9NSu/5QhVMAnYHmAfOFhv8oiBAATWtP/7dVXAGxzMoAo0eT/5hFvgCsM7wB+tKs/9PycQFZWRr/QEJv/nSYKgChJxv/NlD+AGrRcwFnfGEA3eZi/x/nBgCywHj+D9nL/3yeTwBwkfcAXPowAaO1wf8lL47+kL2l/y6S8AAGS4AAKZ3I/ld51QABcewABS36AJAMUgAfbOcA4e93/6cHvf+75IT/br0iAF4szAGiNMUATrzx/jkUjQD0ki8BzmQzAH1rlP4bw00AmP1aAQePkP8zJR8AIncm/wfFdgCZvNMAlxR0/vVBNP+0/W4BL7HRAKFjEf923soAfbP8AXs2fv+ROb8AN7p5AArzigDN0+X/fZzx/pScuf/jE7z/fCkg/x8izv4ROVMAzBYl/ypgYgB3ZrgBA74cAG5S2v/IzMD/yZF2AHXMkgCEIGIBwMJ5AGqh+AHtWHwAF9QaAM2rWv/4MNgBjSXm/3zLAP6eqB7/1vgVAHC7B/9Lhe//SuPz//qTRgDWeKIApwmz/xaeEgDaTdEBYW1R//Qhs/85NDn/QazS//lH0f+Oqe4Anr2Z/67+Z/5iIQ4AjUzm/3GLNP8POtQAqNfJ//jM1wHfRKD/OZq3/i/neQBqpokAUYiKAKUrMwDniz0AOV87/nZiGf+XP+wBXr76/6m5cgEF+jr/S2lhAdffhgBxY6MBgD5wAGNqkwCjwwoAIc22ANYOrv+BJuf/NbbfAGIqn//3DSgAvNKxAQYVAP//PZT+iS2B/1kadP5+JnIA+zLy/nmGgP/M+af+pevXAMqx8wCFjT4A8IK+AW6v/wAAFJIBJdJ5/wcnggCO+lT/jcjPAAlfaP8L9K4Ahuh+AKcBe/4QwZX/6OnvAdVGcP/8dKD+8t7c/81V4wAHuToAdvc/AXRNsf8+9cj+PxIl/2s16P4y3dMAotsH/gJeKwC2Prb+oE7I/4eMqgDruOQArzWK/lA6Tf+YyQIBP8QiAAUeuACrsJoAeTvOACZjJwCsUE3+AIaXALoh8f5e/d//LHL8AGx+Of/JKA3/J+Ub/yfvFwGXeTP/mZb4AArqrv929gT+yPUmAEWh8gEQspYAcTiCAKsfaQAaWGz/MSpqAPupQgBFXZUAFDn+AKQZbwBavFr/zATFACjVMgHUYIT/WIq0/uSSfP+49vcAQXVW//1m0v7+eSQAiXMD/zwY2ACGEh0AO+JhALCORwAH0aEAvVQz/pv6SADVVOv/Ld7gAO6Uj/+qKjX/Tqd1ALoAKP99sWf/ReFCAOMHWAFLrAYAqS3jARAkRv8yAgn/i8EWAI+35/7aRTIA7DihAdWDKgCKkSz+iOUo/zE/I/89kfX/ZcAC/uincQCYaCYBebnaAHmL0/538CMAQb3Z/ruzov+gu+YAPvgO/zxOYQD/96P/4Ttb/2tHOv/xLyEBMnXsANuxP/70WrMAI8LX/71DMv8Xh4EAaL0l/7k5wgAjPuf/3PhsAAznsgCPUFsBg11l/5AnAgH/+rIABRHs/osgLgDMvCb+9XM0/79xSf6/bEX/FkX1ARfLsgCqY6oAQfhvACVsmf9AJUUAAFg+/lmUkP+/ROAB8Sc1ACnL7f+RfsL/3Sr9/xljlwBh/d8BSnMx/wavSP87sMsAfLf5AeTkYwCBDM/+qMDD/8ywEP6Y6qsATSVV/yF4h/+OwuMBH9Y6ANW7ff/oLjz/vnQq/peyE/8zPu3+zOzBAMLoPACsIp3/vRC4/mcDX/+N6ST+KRkL/xXDpgB29S0AQ9WV/58MEv+7pOMBoBkFAAxOwwErxeEAMI4p/sSbPP/fxxIBkYicAPx1qf6R4u4A7xdrAG21vP/mcDH+Sart/+e34/9Q3BQAwmt/AX/NZQAuNMUB0qsk/1gDWv84l40AYLv//ypOyAD+RkYB9H2oAMxEigF810YAZkLI/hE05AB13I/+y/h7ADgSrv+6l6T/M+jQAaDkK//5HRkBRL4/ACKuKNeYL4pCzWXvI5FEN3EvO03sz/vAtbzbiYGl27XpOLVI81vCVjkZ0AW28RHxWZtPGa+kgj+SGIFt2tVeHKtCAgOjmKoH2L5vcEUBW4MSjLLkTr6FMSTitP/Vw30MVW+Je/J0Xb5ysZYWO/6x3oA1Esclpwbcm5Qmac908ZvB0krxnsFpm+TjJU84hke+77XVjIvGncEPZZysd8yhDCR1AitZbyzpLYPkpm6qhHRK1PtBvdypsFy1UxGD2oj5dqvfZu5SUT6YEDK0LW3GMag/IfuYyCcDsOQO777Hf1m/wo+oPfML4MYlpwqTR5Gn1W+CA+BRY8oGcG4OCmcpKRT8L9JGhQq3JybJJlw4IRsu7SrEWvxtLE3fs5WdEw04U95jr4tUcwplqLJ3PLsKanbmru1HLsnCgTs1ghSFLHKSZAPxTKHov6IBMEK8S2YaqJGX+NBwi0vCML5UBqNRbMcYUu/WGeiS0RCpZVUkBpnWKiBxV4U1DvS40bsycKBqEMjQ0rgWwaQZU6tBUQhsNx6Z647fTHdIJ6hIm+G1vLA0Y1rJxbMMHDnLikHjSqrYTnPjY3dPypxbo7iy1vNvLmj8su9d7oKPdGAvF0NvY6V4cqvwoRR4yITsOWQaCALHjCgeYyP6/76Q6b2C3utsUKQVecay96P5vitTcuPyeHHGnGEm6s4+J8oHwsAhx7iG0R7r4M3WfdrqeNFu7n9PffW6bxdyqmfwBqaYyKLFfWMKrg35vgSYPxEbRxwTNQtxG4R9BCP1d9sokyTHQHuryjK8vskVCr6ePEwNEJzEZx1DtkI+y77UxUwqfmX8nCl/Wez61jqrb8tfF1hHSowZRGz2lAAA/pQAABCVAAAolQAAPJUAAE+VAABflQAAcpUAAIGVAACRlQAAqJUAALmVAADJlQAA35UAAPmVAAAHlgAAmC+KQpFEN3HP+8C1pdu16VvCVjnxEfFZpII/ktVeHKuYqgfYAVuDEr6FMSTDfQxVdF2+cv6x3oCnBtybdPGbwcFpm+SGR77vxp3BD8yhDCRvLOktqoR0StypsFzaiPl2UlE+mG3GMajIJwOwx39Zv/ML4MZHkafVUWPKBmcpKRSFCrcnOCEbLvxtLE0TDThTVHMKZbsKanYuycKBhSxykqHov6JLZhqocItLwqNRbMcZ6JLRJAaZ1oU1DvRwoGoQFsGkGQhsNx5Md0gntbywNLMMHDlKqthOT8qcW/NvLmjugo90b2OleBR4yIQIAseM+v++kOtsUKT3o/m+8nhxxmN8d3vya2/FMAFnK/7Xq3bKgsl9+llH8K3Uoq+cpHLAt/2TJjY/98w0peXxcdgxFQTHI8MYlgWaBxKA4usnsnUJgywaG25aoFI71rMp4y+EU9EA7SD8sVtqy745SkxYz9DvqvtDTTOFRfkCf1A8n6hRo0CPkp049by22iEQ//PSzQwT7F+XRBfEp349ZF0Zc2CBT9wiKpCIRu64FN5eC9vgMjoKSQYkXMLTrGKRleR558g3bY3VTqlsVvTqZXquCLp4JS4cprTG6N10H0u9i4pwPrVmSAP2DmE1V7mGwR2e4fiYEWnZjpSbHofpzlUo34yhiQ2/5kJoQZktD7BUuxYAAAAAAAACAwkLDQ4EBhIWGhwGBRsdFxIIDCQsNDgKDy0nOTYMCjY6LiQOCT8xIyoQGEhYaHASG0FTZX4UHlpOcmwWHVNFf2IYFGx0XEgaF2V/UUYcEn5iRlQeEXdpS1ogMJCw0OAiM5m73e4kNoKmyvwmNYutx/IoPLSc5NgqP72X6dYsOqaK/sQuOa+B88owKNjouJAyK9HjtZ40Lsr+oow2LcP1r4I4JPzEjKg6J/XPgaY8Iu7SlrQ+IefZm7pAYDt7u9tCYzJwttVEZiltocdGZSBmrMlIbB9Xj+NKbxZcgu1Mag1Blf9OaQRKmPFQeHMj06tSe3oo3qVUfmE1ybdWfWg+xLlYdFcP55Nad14E6p1cckUZ/Y9ecUwS8IFgUKvLaztiU6LAZjVkVrndcSdmVbDWfCloXI/nXwNqX4bsUg1sWp3xRR9uWZT6SBFwSOOTA0tyS+qYDkV0TvGFGVd2TfiOFFl4RMe/N3N6R860On18QtWpLW9+QdyiIGGAwHb2ba2Cw3/9YKOExmTgd7GGxW3rer+IzFLaWZWKz1vRVJuMykDMQ4mOyUnHToeQ2D6uBd2S2zelCNOU3iy4H8GW3SWzEs+Y1BqCMeWa1xOJPOuc0giUK/me0QGfJveg8OZGvU2i8+9NsEOk9vRQp1Gm9f1bql+o/MJqiXWq/8thhHus+tB8k2mu+dl3nmew6K4e1T2y66cV2DO07rwIzyG27bUDwi+45Ioy4QW654M57Au84pgk+xm+4ZEv9hfAoE2N1nbCo0SG23jEpl+bzGrGpVaQwWTIrGmh4k7Kr2Cq70DMqnu3+FLOqXK89VzQuAXVvgbSuwzeswjUvhfDpBrWvR7IqRTYtCH5ij7atyjyhzDcsjPvkCLesTrknSzgkN09Bpbik9Q2C5jkls8rHIrmlcYgEYTonPkRMq7qn/AaP6DsmusHKLLumeIMJbzwiJVlbubyi5xuY+j0jodzdPr2jY54efT4hLFJWt76h7hCV9D8gqNfQML+gapUTcwbm+z32kEZmOX8108fnf7hwF0dnvfqzVMTl8jb7nkRlMHQ43cXkdrN9GUVktPG+WsLg6SvsjEJgK2kvz8Phba5qC0Nhr+ypSMDj4CDhgkBjImIiwcHiZKVnBUFipuekRs7q3xHCqE5qHVMB68/rW5REL09rmdaHbMzp1hrPpkxpFFgM5c3oUp9JIU1okN2KYsrszQfYtEpsD0Ub98vtSYJeM0tti8CdcMjvxAzVukhvBk4W+cnuQIlTPUlugsuQftb+9eMYZpZ+N6HbJRf/cWae4Zd/syRdohT9/OgVaJR9PqrWKxX8eG2T75V8ui9QrBL45/UCepJ4JbfBORP5Y3CE/ZN5oTJHvhD77v4PdJB7LLzMNxH6anuJ85F6qDlKsB7y0c8sXp5yE43vHR/zVUqq2Z9zlwhpmhzx2MQhUJxxGobiEx3wXEGn151wngNklBr0w9k2Qpp0AZv1ARv1R1ywxZt1hR5zhhj3ytI7TJh3CJD4Dxn2Tle9y5l2jBV+iCbW5oBt+yZWJMKuuKfXYgXrfCdXoEcoP6TV74tg9SRVLcmjtqXUaw7mciVUqUwlMaLQ9JZ35yJQNtS0pKPRcBPxYCNRslEyI6DT/Z166SBTP9+5qqHSeRj8biFSu1o/La7awqxZwy5aAO6agK/bRinfRC9bhGscB6zZy6dUzSxZCeWXjq3YTyLSSi1YjWARCarc0LpD3ypcEviAnKvdVD/FWCtdln0GG6jf2bFO0ShfG/ONkqneXTTIVilen3YLFbbO6F6DDfZOKhxATnfPbNsFivdPrpnGyXTN4VWOA/RNIxdNQHXMZdAIhPVMp5LLx3LI+kiZEfJIOApaUnPJfs0flvNJvI/c1XDL80OUH/BLMQFXXHHKd8YSmPFKtYTR237CzHK3Nf5CDjB0dn/DSPcxsv9DirXy8XzBxXm6O/xBBzt5eH3AQfw8vP1Ag77//3rE3mStKfpEHCZuanvFWuErrvtFmKPo7XjH12+gJ/hHFS1jZHnGU+omoPlGkajl40AAAABAAAAAgAAAAQAAAAIAAAAEAAAACAAAABAAAAAgAAAABsAAAA2AAAAbAAAANgAAACrAAAATQAAAJoAAAAAUglq1TA2pTi/QKOegfPX+3zjOYKbL/+HNI5DRMTe6ctUe5QypsIjPe5MlQtC+sNOCC6hZijZJLJ2W6JJbYvRJXL49mSGaJgW1KRczF1ltpJscEhQ/e252l4VRlenjZ2EkNirAIy80wr35FgFuLNFBtAsHo/KPw8Cwa+9AwETims6kRFBT2fc6pfyz87wtOZzlqx0IuetNYXi+TfoHHXfbkfxGnEdKcWJb7diDqoYvhv8Vj5LxtJ5IJrbwP54zVr0H92oM4gHxzGxEhBZJ4DsX2BRf6kZtUoNLeV6n5PJnO+g4DtNrir1sMjruzyDU5lhFysEfrp31ibhaRRjVSEMfREACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAAMDEyMzQ1Njc4OUFCQ0RFRlQhIhkNAQIDEUscDBAECx0SHidobm9wcWIgBQYPExQVGggWBygkFxgJCg4bHyUjg4J9JiorPD0+P0NHSk1YWVpbXF1eX2BhY2RlZmdpamtscnN0eXp7fAAAAAAAAAAAAElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAAAAAAAAXZQAAAgAAABmlAAACwAAALiSAABUlAAACAAAALiSAAC0mAAAAAAAAAEAAAABAAAAAQAAAAIAAAACAAAAuJIAANiUAAALAAAAuJIAACKWAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmJgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABPTE1fS0VZUwBPTE1fUk9PVABPTE1fUkFUQ0hFVABzZW5kZXIgY2hhaW4gaW5kZXg6ICVkIAByZWNlaXZlciBjaGFpbiBpbmRpY2VzOgAgc2tpcHBlZCBtZXNzYWdlIGtleXM6ACAlZAABAiJjdXJ2ZTI1NTE5IjoAImVkMjU1MTkiOgBNRUdPTE1fS0VZUwAAAQIDVU5LTk9XTl9FUlJPUgBTVUNDRVNTAE5PVF9FTk9VR0hfUkFORE9NAE9VVFBVVF9CVUZGRVJfVE9PX1NNQUxMAEJBRF9NRVNTQUdFX1ZFUlNJT04AQkFEX01FU1NBR0VfRk9STUFUAEJBRF9NRVNTQUdFX01BQwBCQURfTUVTU0FHRV9LRVlfSUQASU5WQUxJRF9CQVNFNjQAQkFEX0FDQ09VTlRfS0VZAFVOS05PV05fUElDS0xFX1ZFUlNJT04AQ09SUlVQVEVEX1BJQ0tMRQBCQURfU0VTU0lPTl9LRVkAVU5LTk9XTl9NRVNTQUdFX0lOREVYAEJBRF9MRUdBQ1lfQUNDT1VOVF9QSUNLTEUAQkFEX1NJR05BVFVSRQBPTE1fSU5QVVRfQlVGRkVSX1RPT19TTUFMTABQaWNrbGUALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBuYW4ATkFOAC4=";var ye=q;q+=16,V=T(4),z=K=x(q),H=x(G=z+Z),U[V>>2]=H;var be=!1;function ve(e){var t=Array(X(e)+1);return e=Y(e,t,0,t.length),t.length=e,t}function _e(e){for(var t=[],n=0;n>4,i=(15&i)<<4|o>>2;var a=(3&o)<<6|s;t+=String.fromCharCode(r),64!==o&&(t+=String.fromCharCode(i)),64!==s&&(t+=String.fromCharCode(a))}while(n>2]=e),e},_emscripten_memcpy_big:function(e,t,n){return N.set(N.subarray(t,t+n),e),e},DYNAMICTOP_PTR:V,tempDoublePtr:ye,STACKTOP:K,STACK_MAX:G};var Ee=function(e,t,n){"use asm";var r=new e.Int8Array(n);var i=new e.Int16Array(n);var o=new e.Int32Array(n);var s=new e.Uint8Array(n);var a=new e.Uint16Array(n);var c=new e.Uint32Array(n);var f=new e.Float32Array(n);var l=new e.Float64Array(n);var u=t.DYNAMICTOP_PTR|0;var d=t.tempDoublePtr|0;var h=t.STACKTOP|0;var p=t.STACK_MAX|0;var m=0;var g=0;var y=0;var b=0;var v=e.NaN,_=e.Infinity;var w=0,A=0,E=0,k=0,S=0.0;var T=0;var I=e.Math.floor;var x=e.Math.abs;var R=e.Math.sqrt;var C=e.Math.pow;var O=e.Math.cos;var P=e.Math.sin;var M=e.Math.tan;var D=e.Math.acos;var B=e.Math.asin;var N=e.Math.atan;var j=e.Math.atan2;var U=e.Math.exp;var L=e.Math.log;var F=e.Math.ceil;var q=e.Math.imul;var z=e.Math.min;var K=e.Math.max;var G=e.Math.clz32;var H=t.abort;var V=t.assert;var Q=t.enlargeMemory;var W=t.getTotalMemory;var Y=t.abortOnCannotGrowMemory;var X=t.invoke_ii;var J=t.invoke_iii;var Z=t.invoke_iiii;var $=t.invoke_iiiiiiiiii;var ee=t.___setErrNo;var te=t._emscripten_memcpy_big;var ne=0.0;function re(e){e=e|0;var t=0;t=h;h=h+e|0;h=h+15&-16;return t|0}function ie(){return h|0}function oe(e){e=e|0;h=e}function se(e,t){e=e|0;t=t|0;h=e;p=t}function ae(e,t){e=e|0;t=t|0;if(!m){m=e;g=t}}function ce(e){e=e|0;T=e}function fe(){return T|0}function le(e){e=e|0;var t=0;t=e+2|0;e=(t>>>0)/3|0;return(e<<2|t-(e*3|0))+-2|0}function ue(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,c=0,f=0;a=t-((t>>>0)%3|0)|0;o=e+a|0;if(!a){a=n;o=e}else{i=e;do{a=s[i>>0]|0;c=a<<8|(s[i+1>>0]|0);f=s[i+2>>0]|0;i=i+3|0;r[n+3>>0]=r[16+(f&63)>>0]|0;r[n+2>>0]=r[16+((c<<8|f)>>>6&63)>>0]|0;r[n+1>>0]=r[16+(c>>>4&63)>>0]|0;r[n>>0]=r[16+(a>>>2)>>0]|0;n=n+4|0}while((i|0)!=(o|0));a=n}n=e+t-o|0;if(!n){f=a;return f|0}i=s[o>>0]|0;if((n|0)==2){n=s[o+1>>0]|0;r[a+2>>0]=r[16+(n<<2&60)>>0]|0;n=(i<<8|n)>>>4;i=3}else{n=i<<4;i=2}r[a+1>>0]=r[16+(n&63)>>0]|0;r[a>>0]=r[16+(n>>>6)>>0]|0;f=a+i|0;return f|0}function de(e){e=e|0;var t=0;t=e+2|0;return((e&3|0)==1?-1:(t&3)+-2+((t>>>2)*3|0)|0)|0}function he(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,c=0,f=0,l=0,u=0;f=t&-4;a=e+f|0;if(!f)c=e;else{c=(((f+-4|0)>>>2)*3|0)+3|0;i=n;o=e;while(1){l=(s[80+(r[o>>0]&127)>>0]|0)<<6|(s[80+(r[o+1>>0]&127)>>0]|0);u=l<<6|(s[80+(r[o+2>>0]&127)>>0]|0);r[i+2>>0]=u<<6|(s[80+(r[o+3>>0]&127)>>0]|0);o=o+4|0;r[i+1>>0]=u>>>2;r[i>>0]=l>>>4;if((o|0)==(a|0))break;else i=i+3|0}n=n+c|0;c=e+f|0}i=e+t|0;o=i-c|0;if(!o)return i|0;a=(s[80+(r[c>>0]&127)>>0]|0)<<6|(s[80+(r[c+1>>0]&127)>>0]|0);if((o|0)==3)r[n+1>>0]=(a<<6|(s[80+(r[c+2>>0]&127)>>0]|0))>>>2;r[n>>0]=a>>>4;return i|0}function pe(e){e=e|0;var t=0;t=e+2|0;e=(t>>>0)/3|0;return(e<<2|t-(e*3|0))+-2|0}function me(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,c=0,f=0,l=0;c=t-((t>>>0)%3|0)|0;a=e+c|0;if(!c){c=n;a=e}else{i=n;o=e;do{c=s[o>>0]|0;f=c<<8|(s[o+1>>0]|0);l=s[o+2>>0]|0;o=o+3|0;r[i+3>>0]=r[16+(l&63)>>0]|0;r[i+2>>0]=r[16+((f<<8|l)>>>6&63)>>0]|0;r[i+1>>0]=r[16+(f>>>4&63)>>0]|0;r[i>>0]=r[16+(c>>>2)>>0]|0;i=i+4|0}while((o|0)!=(a|0));c=i}i=e+t-a|0;if(!i){f=c;l=n;l=f-l|0;return l|0}o=s[a>>0]|0;if((i|0)==2){i=s[a+1>>0]|0;r[c+2>>0]=r[16+(i<<2&60)>>0]|0;i=(o<<8|i)>>>4;o=3}else{i=o<<4;o=2}r[c+1>>0]=r[16+(i&63)>>0]|0;r[c>>0]=r[16+(i>>>6)>>0]|0;f=c+o|0;l=n;l=f-l|0;return l|0}function ge(e){e=e|0;var t=0;t=e+2|0;return((e&3|0)==1?-1:(t&3)+-2+((t>>>2)*3|0)|0)|0}function ye(e,t,n){e=e|0;t=t|0;n=n|0;he(e,t,n)|0;n=t+2|0;return((t&3|0)==1?-1:(n&3)+-2+((n>>>2)*3|0)|0)|0}function be(e,t){e=e|0;t=t|0;r[e+3>>0]=t;r[e+2>>0]=t>>>8;r[e+1>>0]=t>>>16;r[e>>0]=t>>>24;return e+4|0}function ve(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;o[n>>2]=0;r=e+4|0;if(r>>>0>t>>>0){r=t;return r|0}o[n>>2]=0;t=(s[e>>0]|0)<<8;o[n>>2]=t;t=(t|(s[e+1>>0]|0))<<8;o[n>>2]=t;t=(t|(s[e+2>>0]|0))<<8;o[n>>2]=t;o[n>>2]=t|(s[e+3>>0]|0);return r|0}function _e(e,t){e=e|0;t=t|0;r[e>>0]=t&1;return e+1|0}function we(e,t,n){e=e|0;t=t|0;n=n|0;if((e|0)==(t|0)){n=e;return n|0}r[n>>0]=(r[e>>0]|0)!=0&1;n=e+1|0;return n|0}function Ae(e,t,n){e=e|0;t=t|0;n=n|0;Ms(e|0,t|0,n|0)|0;return e+n|0}function Ee(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=e+r|0;if(i>>>0>t>>>0){i=t;return i|0}Ms(n|0,e|0,r|0)|0;return i|0}function ke(e){e=e|0;return 32}function Se(e,t){e=e|0;t=t|0;var n=0,i=0;i=e;n=i+32|0;do{r[i>>0]=r[t>>0]|0;i=i+1|0;t=t+1|0}while((i|0)<(n|0));return e+32|0}function Te(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;i=e+32|0;if(i>>>0>t>>>0){i=t;return i|0}t=e;e=n+32|0;do{r[n>>0]=r[t>>0]|0;n=n+1|0;t=t+1|0}while((n|0)<(e|0));return i|0}function Ie(e){e=e|0;return 64}function xe(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;n=e;i=t;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));n=e+32|0;i=t+32|0;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));return e+64|0}function Re(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0;i=e+32|0;if(i>>>0>t>>>0)i=t;else{a=n;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0))}o=i+32|0;if(o>>>0>t>>>0){a=t;return a|0}a=n+32|0;e=i;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0));a=o;return a|0}function Ce(e){e=e|0;return 32}function Oe(e,t){e=e|0;t=t|0;var n=0,i=0;i=e;n=i+32|0;do{r[i>>0]=r[t>>0]|0;i=i+1|0;t=t+1|0}while((i|0)<(n|0));return e+32|0}function Pe(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;i=e+32|0;if(i>>>0>t>>>0){i=t;return i|0}t=e;e=n+32|0;do{r[n>>0]=r[t>>0]|0;n=n+1|0;t=t+1|0}while((n|0)<(e|0));return i|0}function Me(e){e=e|0;return 96}function De(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;n=e;i=t;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));n=e+32|0;i=t+32|0;o=n+64|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));return e+96|0}function Be(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0;i=e+32|0;if(i>>>0>t>>>0)i=t;else{a=n;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0))}o=i+64|0;if(o>>>0>t>>>0){a=t;return a|0}a=n+32|0;e=i;s=a+64|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0));a=o;return a|0}function Ne(e,t){e=e|0;t=t|0;r[e+3>>0]=t;r[e+2>>0]=t>>>8;r[e+1>>0]=t>>>16;r[e>>0]=t>>>24;return e+4|0}function je(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;o[n>>2]=0;r=e+4|0;if(r>>>0>t>>>0){r=t;return r|0}o[n>>2]=0;t=(s[e>>0]|0)<<8;o[n>>2]=t;t=(t|(s[e+1>>0]|0))<<8;o[n>>2]=t;t=(t|(s[e+2>>0]|0))<<8;o[n>>2]=t;o[n>>2]=t|(s[e+3>>0]|0);return r|0}function Ue(e,t){e=e|0;t=t|0;r[e>>0]=(t|0)!=0&1;return e+1|0}function Le(e,t,n){e=e|0;t=t|0;n=n|0;if((e|0)==(t|0)){n=e;return n|0}r[n>>0]=(r[e>>0]|0)!=0&1;n=e+1|0;return n|0}function Fe(e,t,n){e=e|0;t=t|0;n=n|0;Ms(e|0,t|0,n|0)|0;return e+n|0}function qe(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=e+r|0;if(i>>>0>t>>>0){i=t;return i|0}Ms(n|0,e|0,r|0)|0;return i|0}function ze(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0,s=0;if(t>>>0>127){o=t;i=1;while(1){i=i+1|0;if(o>>>0>16383)o=o>>>7;else{s=i;break}}}else s=1;if(e>>>0>127){i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else{o=i;break}}}else o=1;if(n>>>0>127){e=n;i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else break}}else i=1;return t+4+n+r+s+o+i|0}function Ke(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;r[a>>0]=t;t=a+2|0;r[a+1>>0]=10;if(i>>>0>127){c=t;f=i;while(1){t=c+1|0;r[c>>0]=f|128;a=f>>>7;if(f>>>0>16383){c=t;f=a}else break}}else a=i;f=t+1|0;r[t>>0]=a;o[e>>2]=f;i=f+i|0;t=i+1|0;r[i>>0]=16;if(n>>>0>127)while(1){a=t+1|0;r[t>>0]=n|128;c=n>>>7;if(n>>>0>16383){t=a;n=c}else{n=c;break}}else a=t;r[a>>0]=n;c=e+4|0;t=a+2|0;r[a+1>>0]=34;if(s>>>0<=127){f=s;i=t;f=f&255;e=i+1|0;r[i>>0]=f;o[c>>2]=e;return}a=t;while(1){t=a+1|0;r[a>>0]=s|128;n=s>>>7;if(s>>>0>16383){a=t;s=n}else break}i=n&255;e=t+1|0;r[t>>0]=i;o[c>>2]=e;return}function Ge(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0;s=n-i|0;f=t+s|0;o[e+8>>2]=t;o[e+12>>2]=n;u=e+1|0;r[u>>0]=0;d=e+16|0;h=e+20|0;p=e+24|0;l=e+28|0;o[d>>2]=0;o[d+4>>2]=0;o[d+8>>2]=0;o[d+12>>2]=0;if(n>>>0>>0|(s|0)==0)return;r[e>>0]=r[t>>0]|0;if((s|0)==1)return;a=e+4|0;c=f;s=t+1|0;e:while(1){if((r[s>>0]|0)==10){t=s+1|0;if((t|0)!=(f|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)!=(t|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0));if(n>>>0>(c-e|0)>>>0){s=58;break}}else{n=0;e=t}}else{n=0;e=f}o[d>>2]=e;o[h>>2]=n;e=e+n|0}else e=s;if((e|0)==(f|0)){s=58;break}if((r[e>>0]|0)==16){t=e+1|0;if((t|0)!=(f|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)==(t|0)){n=0;e=t}else{n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0))}}else{n=0;e=f}o[a>>2]=n;r[u>>0]=1}if((e|0)==(f|0)){s=58;break}if((r[e>>0]|0)==34){t=e+1|0;if((t|0)!=(f|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)!=(t|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0));if(n>>>0>(c-e|0)>>>0){s=58;break}}else{n=0;e=t}}else{n=0;e=f}o[p>>2]=e;o[l>>2]=n;e=e+n|0}t:do{if(!((s|0)!=(e|0)|(e|0)==(f|0))){n=r[s>>0]|0;switch(n&7){case 0:{s=s+1|0;e=(s|0)==(f|0);if(n<<24>>24<=-1)while(1){if(e){s=58;break e}n=s+1|0;e=(n|0)==(f|0);if((r[s>>0]|0)>-1){s=n;break}else s=n}if(e)break t;while(1){t=s;s=s+1|0;if((r[t>>0]|0)>-1)break t;if((s|0)==(f|0)){s=58;break e}}}case 2:break;default:{s=58;break e}}s=s+1|0;e=(s|0)==(f|0);if(n<<24>>24<=-1)while(1){if(e){s=58;break e}n=s+1|0;e=(n|0)==(f|0);if((r[s>>0]|0)>-1){s=n;break}else s=n}if(!e){e=s;while(1){t=e;e=e+1|0;if((r[t>>0]|0)>-1)break;if((e|0)==(f|0)){e=f;break}}if((e|0)!=(s|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(s|0));if(n>>>0>(c-e|0)>>>0){s=58;break e}else s=e+n|0}}}else s=e}while(0);if((s|0)==(f|0)){s=58;break}}if((s|0)==58)return}function He(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0,s=0,a=0,c=0;if(e>>>0>127){o=e;i=1;while(1){i=i+1|0;if(o>>>0>16383)o=o>>>7;else break}}else i=1;if(t>>>0>127){s=t;o=1;while(1){o=o+1|0;if(s>>>0>16383)s=s>>>7;else break}}else o=1;if(n>>>0>127){a=n;s=1;while(1){s=s+1|0;if(a>>>0>16383)a=a>>>7;else{c=s;break}}}else c=1;if(r>>>0>127){a=r;s=1;while(1){s=s+1|0;if(a>>>0>16383)a=a>>>7;else break}}else s=1;return e+5+t+n+r+i+o+c+s|0}function Ve(e,t,n,i,s,a,c){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0;r[c>>0]=t;u=e+8|0;t=c+2|0;r[c+1>>0]=10;if(s>>>0>127){f=t;l=s;while(1){t=f+1|0;r[f>>0]=l|128;c=l>>>7;if(l>>>0>16383){f=t;l=c}else break}}else c=s;l=t+1|0;r[t>>0]=c;o[u>>2]=l;s=l+s|0;u=e+4|0;t=s+1|0;r[s>>0]=18;if(i>>>0>127){f=i;while(1){l=t+1|0;r[t>>0]=f|128;c=f>>>7;if(f>>>0>16383){t=l;f=c}else{t=l;break}}}else c=i;s=t+1|0;r[t>>0]=c;o[u>>2]=s;i=s+i|0;t=i+1|0;r[i>>0]=26;if(n>>>0>127){f=n;while(1){l=t+1|0;r[t>>0]=f|128;c=f>>>7;if(f>>>0>16383){t=l;f=c}else{t=l;break}}}else c=n;l=t+1|0;r[t>>0]=c;o[e>>2]=l;n=l+n|0;l=e+12|0;t=n+1|0;r[n>>0]=34;if(a>>>0<=127){i=a;e=t;i=i&255;n=e+1|0;r[e>>0]=i;o[l>>2]=n;return}f=t;while(1){t=f+1|0;r[f>>0]=a|128;c=a>>>7;if(a>>>0>16383){f=t;a=c}else break}e=c&255;n=t+1|0;r[t>>0]=e;o[l>>2]=n;return}function Qe(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0;l=t+n|0;u=e+20|0;d=e+24|0;h=e+4|0;p=e+8|0;m=e+12|0;g=e+16|0;c=e+28|0;f=e+32|0;o[h>>2]=0;o[h+4>>2]=0;o[h+8>>2]=0;o[h+12>>2]=0;o[h+16>>2]=0;o[h+20>>2]=0;o[h+24>>2]=0;o[h+28>>2]=0;if(!n)return;r[e>>0]=r[t>>0]|0;if((n|0)==1)return;a=l;e=t+1|0;e:while(1){if((r[e>>0]|0)==10){s=e+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[u>>2]=n;o[d>>2]=t;n=n+t|0}else n=e;if((n|0)==(l|0)){e=70;break}if((r[n>>0]|0)==18){s=n+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[m>>2]=n;o[g>>2]=t;n=n+t|0}if((n|0)==(l|0)){e=70;break}if((r[n>>0]|0)==26){s=n+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[h>>2]=n;o[p>>2]=t;n=n+t|0}if((n|0)==(l|0)){e=70;break}if((r[n>>0]|0)==34){s=n+1|0;if((s|0)!=(l|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=l}o[c>>2]=n;o[f>>2]=t;n=n+t|0}t:do{if(!((e|0)!=(n|0)|(n|0)==(l|0))){t=r[e>>0]|0;switch(t&7){case 0:{e=e+1|0;n=(e|0)==(l|0);if(t<<24>>24<=-1)while(1){if(n){e=70;break e}t=e+1|0;n=(t|0)==(l|0);if((r[e>>0]|0)>-1){e=t;break}else e=t}if(n)break t;while(1){s=e;e=e+1|0;if((r[s>>0]|0)>-1)break t;if((e|0)==(l|0)){e=70;break e}}}case 2:break;default:{e=70;break e}}e=e+1|0;n=(e|0)==(l|0);if(t<<24>>24<=-1)while(1){if(n){e=70;break e}t=e+1|0;n=(t|0)==(l|0);if((r[e>>0]|0)>-1){e=t;break}else e=t}if(!n){n=e;while(1){s=n;n=n+1|0;if((r[s>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)!=(e|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(e|0));if(t>>>0>(a-n|0)>>>0){e=70;break e}else e=n+t|0}}}else e=n}while(0);if((e|0)==(l|0)){e=70;break}}if((e|0)==70)return}function We(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0;if(e>>>0>127){i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else break}}else i=1;if(t>>>0>127){o=t;e=1;while(1){e=e+1|0;if(o>>>0>16383)o=o>>>7;else break}}else e=1;return t+3+n+r+i+e|0}function Ye(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0;r[i>>0]=e;a=i+2|0;r[i+1>>0]=8;if(t>>>0>127){c=a;while(1){a=c+1|0;r[c>>0]=t|128;e=t>>>7;if(t>>>0>16383){c=a;t=e}else break}}else e=t;r[a>>0]=e;e=a+2|0;r[a+1>>0]=18;if(n>>>0>127){t=n;while(1){c=e+1|0;r[e>>0]=t|128;a=t>>>7;if(t>>>0>16383){e=c;t=a}else{e=c;break}}}else a=n;c=e+1|0;r[e>>0]=a;o[s>>2]=c;return c+n-i|0}function Xe(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,h=0;f=i+n|0;n=t-f|0;l=e+n|0;u=s+4|0;o[u>>2]=0;d=s+12|0;o[d>>2]=0;h=s+16|0;o[h>>2]=0;if(f>>>0>t>>>0|(n|0)==0)return;r[s>>0]=r[e>>0]|0;e:do{if((n|0)==1)n=0;else{f=l;n=0;i=e+1|0;do{if((r[i>>0]|0)==8){a=i+1|0;if((a|0)!=(l|0)){n=a;while(1){c=n;n=n+1|0;if((r[c>>0]|0)>-1)break;if((n|0)==(l|0)){n=l;break}}if((n|0)==(a|0)){t=0;n=a}else{t=0;e=n;do{e=e+-1|0;t=t<<7|r[e>>0]&127}while((e|0)!=(a|0))}}else{t=0;n=l}o[u>>2]=t;t=n;n=1}else t=i;if((t|0)==(l|0))break e;if((r[t>>0]|0)==18){c=t+1|0;if((c|0)!=(l|0)){t=c;while(1){a=t;t=t+1|0;if((r[a>>0]|0)>-1)break;if((t|0)==(l|0)){t=l;break}}if((t|0)!=(c|0)){e=0;a=t;do{a=a+-1|0;e=e<<7|r[a>>0]&127}while((a|0)!=(c|0));if(e>>>0>(f-t|0)>>>0)break e}else{e=0;t=c}}else{e=0;t=l}o[d>>2]=t;o[h>>2]=e;t=t+e|0}t:do{if(!((i|0)!=(t|0)|(t|0)==(l|0))){e=r[i>>0]|0;switch(e&7){case 0:{i=i+1|0;t=(i|0)==(l|0);if(e<<24>>24<=-1)while(1){if(t)break e;e=i+1|0;t=(e|0)==(l|0);if((r[i>>0]|0)>-1){i=e;break}else i=e}if(t)break t;while(1){c=i;i=i+1|0;if((r[c>>0]|0)>-1)break t;if((i|0)==(l|0))break e}}case 2:break;default:break e}i=i+1|0;t=(i|0)==(l|0);if(e<<24>>24<=-1)while(1){if(t)break e;e=i+1|0;t=(e|0)==(l|0);if((r[i>>0]|0)>-1){i=e;break}else i=e}if(!t){t=i;while(1){c=t;t=t+1|0;if((r[c>>0]|0)>-1)break;if((t|0)==(l|0)){t=l;break}}if((t|0)!=(i|0)){e=0;a=t;do{a=a+-1|0;e=e<<7|r[a>>0]&127}while((a|0)!=(i|0));if(e>>>0>(f-t|0)>>>0)break e;else i=t+e|0}}}else i=t}while(0)}while((i|0)!=(l|0))}}while(0);o[s+8>>2]=n&255;return}function Je(e){e=e|0;gn(e,37520,37536);o[e+3216>>2]=0;r[e+3220>>0]=0;return}function Ze(e){e=e|0;return 64}function $e(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0,l=0,u=0,d=0;d=h;h=h+224|0;f=d+160|0;l=d+96|0;u=d;if(a>>>0<64){o[e+3216>>2]=1;u=-1;h=d;return u|0}else{pt(s,f);pt(s+32|0,l);t=t+96|0;r[e+3220>>0]=0;s=e+3221|0;a=t;c=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(c|0));s=e+3253|0;a=f;c=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(c|0));s=e+3285|0;a=i;c=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(c|0));mt(t,i,u);mt(f,n,u+32|0);mt(f,i,u+64|0);bn(e,u,96,l);Hr(f,64);Hr(l,64);Hr(u,96);u=0;h=d;return u|0}return 0}function et(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0;b=h;h=h+208|0;p=b+128|0;m=b+96|0;g=b+168|0;y=b;Qe(p,i,s);c=(n|0)!=0;i=o[p+4>>2]|0;a=(i|0)!=0;s=c|a;if(i)s=s&(o[p+8>>2]|0)==32;u=o[p+28>>2]|0;l=o[p+12>>2]|0;d=o[p+20>>2]|0;if(!(s&(u|0)!=0&(l|0)!=0&(o[p+16>>2]|0)==32&(d|0)!=0&(o[p+24>>2]|0)==32)){o[e+3216>>2]=4;y=-1;h=b;return y|0}if(c&a?qo(n,i,32)|0:0){o[e+3216>>2]=6;y=-1;h=b;return y|0}f=e+3221|0;n=f;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));c=e+3253|0;n=c;i=l;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));s=e+3285|0;n=s;i=d;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));p=o[p+32>>2]|0;i=o[e+4>>2]|0;Ge(m,u,p,Gs[o[o[i>>2]>>2]&1](i)|0);i=o[m+16>>2]|0;if((i|0)!=0?(o[m+20>>2]|0)==32:0){n=g;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));i=Ir(t,s)|0;if(!i){o[e+3216>>2]=6;i=-1}else{i=i+5|0;mt(i,f,y);mt(t+96|0,c,y+32|0);mt(i,c,y+64|0);yn(e,y,96,g);Hr(y,96);i=0}}else{o[e+3216>>2]=4;i=-1}y=i;h=b;return y|0}function tt(e){e=e|0;return 32}function nt(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0;c=h;h=h+96|0;a=c;if(n>>>0<32){o[e+3216>>2]=2;a=-1;h=c;return a|0}else{n=a;i=e+3221|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));n=a+32|0;i=e+3253|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));n=a+64|0;i=e+3285|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));At(a,96,t);a=32;h=c;return a|0}return 0}function rt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0,f=0,l=0;l=h;h=h+48|0;f=l;Qe(f,n,r);c=(t|0)!=0;a=o[f+4>>2]|0;n=c|(a|0)!=0;r=(a|0)==0;if(!r)n=n&(o[f+8>>2]|0)==32;i=o[f+12>>2]|0;s=o[f+20>>2]|0;if(!(n&(o[f+28>>2]|0)!=0&(i|0)!=0&(o[f+16>>2]|0)==32&(s|0)!=0&(o[f+24>>2]|0)==32)){t=0;h=l;return t|0}if(r)n=1;else n=(qo(a,e+3221|0,32)|0)==0;if(c){if(!n){t=0;h=l;return t|0}if(qo(t,e+3221|0,32)|0){t=0;h=l;return t|0}}else if(!n){t=0;h=l;return t|0}if(qo(i,e+3253|0,32)|0){t=0;h=l;return t|0}t=(qo(s,e+3285|0,32)|0)==0;h=l;return t|0}function it(e){e=e|0;return s[e+3220>>0]|0|0}function ot(e,t){e=e|0;t=t|0;t=An(e,t)|0;if(r[e+3220>>0]|0){e=t;return e|0}e=He(32,32,32,t)|0;return e|0}function st(e){e=e|0;return En(e)|0}function at(e,t,n,i,s,a,c){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0,d=0,p=0;p=h;h=h+16|0;d=p;f=An(e,n)|0;l=e+3220|0;if(!(r[l>>0]|0))f=He(32,32,32,f)|0;if(f>>>0>c>>>0){o[e+3216>>2]=2;e=-1;h=p;return e|0}u=An(e,n)|0;if(!(r[l>>0]|0)){Ve(d,3,32,32,32,u,a);a=o[d+8>>2]|0;f=e+3285|0;c=a+32|0;do{r[a>>0]=r[f>>0]|0;a=a+1|0;f=f+1|0}while((a|0)<(c|0));a=o[d>>2]|0;f=e+3221|0;c=a+32|0;do{r[a>>0]=r[f>>0]|0;a=a+1|0;f=f+1|0}while((a|0)<(c|0));a=o[d+4>>2]|0;f=e+3253|0;c=a+32|0;do{r[a>>0]=r[f>>0]|0;a=a+1|0;f=f+1|0}while((a|0)<(c|0));a=o[d+12>>2]|0}a=kn(e,t,n,i,s,a,u)|0;if((a|0)!=-1){e=a;h=p;return e|0}s=e+8|0;o[e+3216>>2]=o[s>>2];o[s>>2]=0;e=-1;h=p;return e|0}function ct(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0;s=h;h=h+48|0;i=s;do{if((t|0)!=1){Qe(i,n,r);n=o[i+28>>2]|0;if(n|0){r=o[i+32>>2]|0;break}o[e+3216>>2]=4;e=-1;h=s;return e|0}}while(0);n=Sn(e,n,r)|0;if((n|0)!=-1){e=n;h=s;return e|0}i=e+8|0;o[e+3216>>2]=o[i>>2];o[i>>2]=0;e=-1;h=s;return e|0}function ft(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+48|0;c=f;do{if((t|0)!=1){Qe(c,n,i);n=o[c+28>>2]|0;if(n|0){i=o[c+32>>2]|0;break}o[e+3216>>2]=4;e=-1;h=f;return e|0}}while(0);n=Tn(e,n,i,s,a)|0;if((n|0)==-1){a=e+8|0;o[e+3216>>2]=o[a>>2];o[a>>2]=0;e=-1;h=f;return e|0}else{r[e+3220>>0]=1;e=n;h=f;return e|0}return 0}function lt(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0;m=h;h=h+48|0;p=m+32|0;l=m+24|0;u=m+16|0;i=m;if(!n){h=m;return}r[t>>0]=0;f=t;o[i>>2]=o[e+112>>2];i=_s(t,n,38002,i)|0;i=(i|0)>0?t+i|0:t;d=f+n|0;a=_s(i,d-i|0,38026,m+8|0)|0;i=(a|0)>0?i+a|0:i;a=e+148|0;c=e+152|0;t=f-i+n|0;if((o[a>>2]|0)!=(c|0)){s=0;do{o[l>>2]=o[e+152+(s*68|0)+32>>2];t=_s(i,t,38073,l)|0;i=(t|0)>0?i+t|0:i;s=s+1|0;t=f-i+n|0}while(s>>>0<(((o[a>>2]|0)-c|0)/68|0)>>>0)}t=_s(i,t,38050,u)|0;a=e+492|0;c=e+496|0;if((o[a>>2]|0)==(c|0)){h=m;return}s=0;t=(t|0)>-1?i+t|0:i;while(1){o[p>>2]=o[e+496+(s*68|0)+32>>2];i=_s(t,d-t|0,38073,p)|0;s=s+1|0;if(s>>>0>=(((o[a>>2]|0)-c|0)/68|0)>>>0)break;else t=(i|0)>0?t+i|0:t}h=m;return}function ut(e){e=e|0;var t=0;t=(ke(e+3221|0)|0)+5|0;t=t+(ke(e+3253|0)|0)|0;t=t+(ke(e+3285|0)|0)|0;return t+(vn(e)|0)|0}function dt(e,t){e=e|0;t=t|0;e=be(e,1)|0;return _n(Se(Se(Se(_e(e,(r[t+3220>>0]|0)!=0)|0,t+3221|0)|0,t+3253|0)|0,t+3285|0)|0,t)|0}function ht(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0;s=h;h=h+16|0;r=s;i=ve(e,t,r)|0;e=o[r>>2]|0;e:do{if((e|0)<1){switch(e|0){case-2147483647:break;default:{r=3;break e}}e=1;r=4}else switch(e|0){case 1:{e=0;r=4;break}default:r=3}}while(0);if((r|0)==3){o[n+3216>>2]=9;n=t;h=s;return n|0}else if((r|0)==4){n=wn(Te(Te(Te(we(i,t,n+3220|0)|0,t,n+3221|0)|0,t,n+3253|0)|0,t,n+3285|0)|0,t,n,e)|0;h=s;return n|0}return 0}function pt(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;i=t+32|0;o=i;n=o+32|0;do{r[o>>0]=r[e>>0]|0;o=o+1|0;e=e+1|0}while((o|0)<(n|0));Po(t,i,208)|0;return}function mt(e,t,n){e=e|0;t=t|0;n=n|0;Po(n,e+32|0,t)|0;return}function gt(e,t){e=e|0;t=t|0;hi(t,t+32|0,e);return}function yt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;bi(r,t,n,e,e+32|0);return}function bt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return(yi(r,t,n,e)|0)!=0|0}function vt(e){e=e|0;return e+16-(e&15)|0}function _t(e,t,n,i,o){e=e|0;t=t|0;n=n|0;i=i|0;o=o|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0;O=h;h=h+256|0;R=O+16|0;C=O;Ro(e,R,256);I=C;k=I+16|0;do{r[I>>0]=r[t>>0]|0;I=I+1|0;t=t+1|0}while((I|0)<(k|0));if(i>>>0>15){w=C+1|0;A=C+2|0;a=C+3|0;c=C+4|0;f=C+5|0;l=C+6|0;u=C+7|0;d=C+8|0;p=C+9|0;m=C+10|0;g=C+11|0;y=C+12|0;b=C+13|0;v=C+14|0;_=C+15|0;S=i+-16|0;T=S&-16;x=T+16|0;E=o+x|0;e=i;i=n;while(1){r[C>>0]=r[C>>0]^r[i>>0];r[w>>0]=r[w>>0]^r[i+1>>0];r[A>>0]=r[A>>0]^r[i+2>>0];r[a>>0]=r[a>>0]^r[i+3>>0];r[c>>0]=r[c>>0]^r[i+4>>0];r[f>>0]=r[f>>0]^r[i+5>>0];r[l>>0]=r[l>>0]^r[i+6>>0];r[u>>0]=r[u>>0]^r[i+7>>0];r[d>>0]=r[d>>0]^r[i+8>>0];r[p>>0]=r[p>>0]^r[i+9>>0];r[m>>0]=r[m>>0]^r[i+10>>0];r[g>>0]=r[g>>0]^r[i+11>>0];r[y>>0]=r[y>>0]^r[i+12>>0];r[b>>0]=r[b>>0]^r[i+13>>0];r[v>>0]=r[v>>0]^r[i+14>>0];r[_>>0]=r[_>>0]^r[i+15>>0];Io(C,o,R,256);I=C;t=o;k=I+16|0;do{r[I>>0]=r[t>>0]|0;I=I+1|0;t=t+1|0}while((I|0)<(k|0));e=e+-16|0;if(e>>>0<=15)break;else{o=o+16|0;i=i+16|0}}o=E;t=S-T|0;n=n+x|0}else t=i;if(t){e=0;do{x=C+e|0;r[x>>0]=r[x>>0]^r[n+e>>0];e=e+1|0}while((e|0)!=(t|0));if(t>>>0<16)n=t;else{Io(C,o,R,256);Hr(R,240);Hr(C,16);h=O;return}}else n=0;e=16-t|0;do{x=C+n|0;r[x>>0]=e^(s[x>>0]|0);n=n+1|0}while((n|0)!=16);Io(C,o,R,256);Hr(R,240);Hr(C,16);h=O;return}function wt(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0;R=h;h=h+272|0;T=R+32|0;I=R+16|0;x=R;Ro(e,T,256);S=I;k=S+16|0;do{r[S>>0]=r[t>>0]|0;S=S+1|0;t=t+1|0}while((S|0)<(k|0));if(!i){Hr(T,240);Hr(I,16);Hr(x,16);x=i+-1|0;x=s+x|0;x=r[x>>0]|0;x=x&255;I=x>>>0>i>>>0;x=i-x|0;x=I?-1:x;h=R;return x|0}E=I+1|0;a=I+2|0;c=I+3|0;f=I+4|0;l=I+5|0;u=I+6|0;d=I+7|0;p=I+8|0;m=I+9|0;g=I+10|0;y=I+11|0;b=I+12|0;v=I+13|0;_=I+14|0;w=I+15|0;e=0;do{A=n+e|0;S=x;t=A;k=S+16|0;do{r[S>>0]=r[t>>0]|0;S=S+1|0;t=t+1|0}while((S|0)<(k|0));S=s+e|0;Oo(A,S,T,256);r[S>>0]=r[S>>0]^r[I>>0];k=S+1|0;r[k>>0]=r[k>>0]^r[E>>0];k=S+2|0;r[k>>0]=r[k>>0]^r[a>>0];k=S+3|0;r[k>>0]=r[k>>0]^r[c>>0];k=S+4|0;r[k>>0]=r[k>>0]^r[f>>0];k=S+5|0;r[k>>0]=r[k>>0]^r[l>>0];k=S+6|0;r[k>>0]=r[k>>0]^r[u>>0];k=S+7|0;r[k>>0]=r[k>>0]^r[d>>0];k=S+8|0;r[k>>0]=r[k>>0]^r[p>>0];k=S+9|0;r[k>>0]=r[k>>0]^r[m>>0];k=S+10|0;r[k>>0]=r[k>>0]^r[g>>0];k=S+11|0;r[k>>0]=r[k>>0]^r[y>>0];k=S+12|0;r[k>>0]=r[k>>0]^r[b>>0];k=S+13|0;r[k>>0]=r[k>>0]^r[v>>0];k=S+14|0;r[k>>0]=r[k>>0]^r[_>>0];S=S+15|0;r[S>>0]=r[S>>0]^r[w>>0];o[I>>2]=o[x>>2];o[I+4>>2]=o[x+4>>2];o[I+8>>2]=o[x+8>>2];o[I+12>>2]=o[x+12>>2];e=e+16|0}while(e>>>0>>0);Hr(T,240);Hr(I,16);Hr(x,16);x=i+-1|0;x=s+x|0;x=r[x>>0]|0;x=x&255;I=x>>>0>i>>>0;x=i-x|0;x=I?-1:x;h=R;return x|0}function At(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+112|0;i=r;ko(i);So(i,e,t);To(i,n);Hr(i,112);h=r;return}function Et(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;l=h;h=h+288|0;s=l+176|0;a=l;c=l+64|0;f=a;u=f+64|0;do{o[f>>2]=0;f=f+4|0}while((f|0)<(u|0));if(t>>>0>64){ko(s);So(s,e,t);To(s,a)}else Ms(a|0,e|0,t|0)|0;kt(c,a);So(c,n,r);St(c,a,i);Hr(a,64);Hr(c,112);h=l;return}function kt(e,t){e=e|0;t=t|0;var n=0,i=0,o=0,s=0;s=h;h=h+64|0;i=s;o=i;n=o+64|0;do{r[o>>0]=r[t>>0]|0;o=o+1|0;t=t+1|0}while((o|0)<(n|0));r[i>>0]=r[i>>0]^54;o=i+1|0;r[o>>0]=r[o>>0]^54;o=i+2|0;r[o>>0]=r[o>>0]^54;o=i+3|0;r[o>>0]=r[o>>0]^54;o=i+4|0;r[o>>0]=r[o>>0]^54;o=i+5|0;r[o>>0]=r[o>>0]^54;o=i+6|0;r[o>>0]=r[o>>0]^54;o=i+7|0;r[o>>0]=r[o>>0]^54;o=i+8|0;r[o>>0]=r[o>>0]^54;o=i+9|0;r[o>>0]=r[o>>0]^54;o=i+10|0;r[o>>0]=r[o>>0]^54;o=i+11|0;r[o>>0]=r[o>>0]^54;o=i+12|0;r[o>>0]=r[o>>0]^54;o=i+13|0;r[o>>0]=r[o>>0]^54;o=i+14|0;r[o>>0]=r[o>>0]^54;o=i+15|0;r[o>>0]=r[o>>0]^54;o=i+16|0;r[o>>0]=r[o>>0]^54;o=i+17|0;r[o>>0]=r[o>>0]^54;o=i+18|0;r[o>>0]=r[o>>0]^54;o=i+19|0;r[o>>0]=r[o>>0]^54;o=i+20|0;r[o>>0]=r[o>>0]^54;o=i+21|0;r[o>>0]=r[o>>0]^54;o=i+22|0;r[o>>0]=r[o>>0]^54;o=i+23|0;r[o>>0]=r[o>>0]^54;o=i+24|0;r[o>>0]=r[o>>0]^54;o=i+25|0;r[o>>0]=r[o>>0]^54;o=i+26|0;r[o>>0]=r[o>>0]^54;o=i+27|0;r[o>>0]=r[o>>0]^54;o=i+28|0;r[o>>0]=r[o>>0]^54;o=i+29|0;r[o>>0]=r[o>>0]^54;o=i+30|0;r[o>>0]=r[o>>0]^54;o=i+31|0;r[o>>0]=r[o>>0]^54;o=i+32|0;r[o>>0]=r[o>>0]^54;o=i+33|0;r[o>>0]=r[o>>0]^54;o=i+34|0;r[o>>0]=r[o>>0]^54;o=i+35|0;r[o>>0]=r[o>>0]^54;o=i+36|0;r[o>>0]=r[o>>0]^54;o=i+37|0;r[o>>0]=r[o>>0]^54;o=i+38|0;r[o>>0]=r[o>>0]^54;o=i+39|0;r[o>>0]=r[o>>0]^54;o=i+40|0;r[o>>0]=r[o>>0]^54;o=i+41|0;r[o>>0]=r[o>>0]^54;o=i+42|0;r[o>>0]=r[o>>0]^54;o=i+43|0;r[o>>0]=r[o>>0]^54;o=i+44|0;r[o>>0]=r[o>>0]^54;o=i+45|0;r[o>>0]=r[o>>0]^54;o=i+46|0;r[o>>0]=r[o>>0]^54;o=i+47|0;r[o>>0]=r[o>>0]^54;o=i+48|0;r[o>>0]=r[o>>0]^54;o=i+49|0;r[o>>0]=r[o>>0]^54;o=i+50|0;r[o>>0]=r[o>>0]^54;o=i+51|0;r[o>>0]=r[o>>0]^54;o=i+52|0;r[o>>0]=r[o>>0]^54;o=i+53|0;r[o>>0]=r[o>>0]^54;o=i+54|0;r[o>>0]=r[o>>0]^54;o=i+55|0;r[o>>0]=r[o>>0]^54;o=i+56|0;r[o>>0]=r[o>>0]^54;o=i+57|0;r[o>>0]=r[o>>0]^54;o=i+58|0;r[o>>0]=r[o>>0]^54;o=i+59|0;r[o>>0]=r[o>>0]^54;o=i+60|0;r[o>>0]=r[o>>0]^54;o=i+61|0;r[o>>0]=r[o>>0]^54;o=i+62|0;r[o>>0]=r[o>>0]^54;o=i+63|0;r[o>>0]=r[o>>0]^54;ko(e);So(e,i,64);Hr(i,64);h=s;return}function St(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0,c=0;c=h;h=h+208|0;o=c;s=c+96|0;a=o;i=a+64|0;do{r[a>>0]=r[t>>0]|0;a=a+1|0;t=t+1|0}while((a|0)<(i|0));r[o>>0]=r[o>>0]^92;a=o+1|0;r[a>>0]=r[a>>0]^92;a=o+2|0;r[a>>0]=r[a>>0]^92;a=o+3|0;r[a>>0]=r[a>>0]^92;a=o+4|0;r[a>>0]=r[a>>0]^92;a=o+5|0;r[a>>0]=r[a>>0]^92;a=o+6|0;r[a>>0]=r[a>>0]^92;a=o+7|0;r[a>>0]=r[a>>0]^92;a=o+8|0;r[a>>0]=r[a>>0]^92;a=o+9|0;r[a>>0]=r[a>>0]^92;a=o+10|0;r[a>>0]=r[a>>0]^92;a=o+11|0;r[a>>0]=r[a>>0]^92;a=o+12|0;r[a>>0]=r[a>>0]^92;a=o+13|0;r[a>>0]=r[a>>0]^92;a=o+14|0;r[a>>0]=r[a>>0]^92;a=o+15|0;r[a>>0]=r[a>>0]^92;a=o+16|0;r[a>>0]=r[a>>0]^92;a=o+17|0;r[a>>0]=r[a>>0]^92;a=o+18|0;r[a>>0]=r[a>>0]^92;a=o+19|0;r[a>>0]=r[a>>0]^92;a=o+20|0;r[a>>0]=r[a>>0]^92;a=o+21|0;r[a>>0]=r[a>>0]^92;a=o+22|0;r[a>>0]=r[a>>0]^92;a=o+23|0;r[a>>0]=r[a>>0]^92;a=o+24|0;r[a>>0]=r[a>>0]^92;a=o+25|0;r[a>>0]=r[a>>0]^92;a=o+26|0;r[a>>0]=r[a>>0]^92;a=o+27|0;r[a>>0]=r[a>>0]^92;a=o+28|0;r[a>>0]=r[a>>0]^92;a=o+29|0;r[a>>0]=r[a>>0]^92;a=o+30|0;r[a>>0]=r[a>>0]^92;a=o+31|0;r[a>>0]=r[a>>0]^92;a=o+32|0;r[a>>0]=r[a>>0]^92;a=o+33|0;r[a>>0]=r[a>>0]^92;a=o+34|0;r[a>>0]=r[a>>0]^92;a=o+35|0;r[a>>0]=r[a>>0]^92;a=o+36|0;r[a>>0]=r[a>>0]^92;a=o+37|0;r[a>>0]=r[a>>0]^92;a=o+38|0;r[a>>0]=r[a>>0]^92;a=o+39|0;r[a>>0]=r[a>>0]^92;a=o+40|0;r[a>>0]=r[a>>0]^92;a=o+41|0;r[a>>0]=r[a>>0]^92;a=o+42|0;r[a>>0]=r[a>>0]^92;a=o+43|0;r[a>>0]=r[a>>0]^92;a=o+44|0;r[a>>0]=r[a>>0]^92;a=o+45|0;r[a>>0]=r[a>>0]^92;a=o+46|0;r[a>>0]=r[a>>0]^92;a=o+47|0;r[a>>0]=r[a>>0]^92;a=o+48|0;r[a>>0]=r[a>>0]^92;a=o+49|0;r[a>>0]=r[a>>0]^92;a=o+50|0;r[a>>0]=r[a>>0]^92;a=o+51|0;r[a>>0]=r[a>>0]^92;a=o+52|0;r[a>>0]=r[a>>0]^92;a=o+53|0;r[a>>0]=r[a>>0]^92;a=o+54|0;r[a>>0]=r[a>>0]^92;a=o+55|0;r[a>>0]=r[a>>0]^92;a=o+56|0;r[a>>0]=r[a>>0]^92;a=o+57|0;r[a>>0]=r[a>>0]^92;a=o+58|0;r[a>>0]=r[a>>0]^92;a=o+59|0;r[a>>0]=r[a>>0]^92;a=o+60|0;r[a>>0]=r[a>>0]^92;a=o+61|0;r[a>>0]=r[a>>0]^92;a=o+62|0;r[a>>0]=r[a>>0]^92;a=o+63|0;r[a>>0]=r[a>>0]^92;To(e,o+64|0);ko(s);So(s,o,96);To(s,n);Hr(s,112);Hr(o,96);h=c;return}function Tt(e,t,n,i,s,a,c,f){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;var l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0;v=h;h=h+336|0;u=v+208|0;b=v+96|0;m=v+32|0;g=v;y=v+320|0;r[y>>0]=1;d=(n|0)==0;l=d?32:i;i=d?38496:n;d=m;p=d+64|0;do{o[d>>2]=0;d=d+4|0}while((d|0)<(p|0));if(l>>>0>64){ko(u);So(u,i,l);To(u,m)}else Ms(m|0,i|0,l|0)|0;kt(b,m);So(b,e,t);St(b,m,g);p=m+32|0;o[p>>2]=0;o[p+4>>2]=0;o[p+8>>2]=0;o[p+12>>2]=0;o[p+16>>2]=0;o[p+20>>2]=0;o[p+24>>2]=0;o[p+28>>2]=0;o[m>>2]=o[g>>2];o[m+4>>2]=o[g+4>>2];o[m+8>>2]=o[g+8>>2];o[m+12>>2]=o[g+12>>2];o[m+16>>2]=o[g+16>>2];o[m+20>>2]=o[g+20>>2];o[m+24>>2]=o[g+24>>2];o[m+28>>2]=o[g+28>>2];kt(b,m);So(b,s,a);So(b,y,1);St(b,m,g);if(f>>>0<=32){a=f;Ms(c|0,g|0,a|0)|0;Hr(b,112);Hr(m,64);Hr(g,32);h=v;return}e=f+-33&-32;t=e+32|0;u=f+-32|0;l=c;i=f;while(1){d=l;n=g;p=d+32|0;do{r[d>>0]=r[n>>0]|0;d=d+1|0;n=n+1|0}while((d|0)<(p|0));i=i+-32|0;r[y>>0]=(r[y>>0]|0)+1<<24>>24;kt(b,m);So(b,g,32);So(b,s,a);So(b,y,1);St(b,m,g);if(i>>>0<=32)break;else l=l+32|0}a=u-e|0;c=c+t|0;Ms(c|0,g|0,a|0)|0;Hr(b,112);Hr(m,64);Hr(g,32);h=v;return}function It(e){e=e|0;return Si(o[e>>2]|0)|0}function xt(){return 36}function Rt(e){e=e|0;Hr(e,36);return e|0}function Ct(e){e=e|0;var t=0;Hr(e,36);t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 36}function Ot(e,t,n){e=e|0;t=t|0;n=n|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=15;n=-1;return n|0}else{he(t,le(32)|0,e+4|0)|0;n=0;return n|0}return 0}function Pt(){return le(32)|0}function Mt(e,t){e=e|0;t=t|0;return le(Hs[o[37564>>2]&3](37548,t)|0)|0}function Dt(e){e=e|0;return le(Gs[o[9390]&1](37548)|0)|0}function Bt(e){e=e|0;return 32}function Nt(e,t,n,r,i,s,a,c,f,l,u){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;l=l|0;u=u|0;var d=0,p=0,m=0,g=0;g=h;h=h+112|0;d=g+40|0;p=g;m=g+32|0;if(((le(Hs[o[37564>>2]&3](37548,n)|0)|0)>>>0<=i>>>0?(Gs[o[9390]&1](37548)|0)>>>0<=a>>>0:0)?(le(32)|0)>>>0<=f>>>0:0){if(u>>>0<32){o[e>>2]=1;s=-1;h=g;return s|0}pt(l,d);ue(d,32,c)|0;mt(d,e+4|0,p);d=Hs[o[37564>>2]&3](37548,n)|0;u=r+i+(0-d)|0;e=Qs[o[37568>>2]&3](37548,p,32,t,n,u,d,m,8)|0;if((e|0)!=-1){ue(m,8,s)|0;ue(u,d,r)|0}s=e;h=g;return s|0}o[e>>2]=2;s=-1;h=g;return s|0}function jt(e){e=e|0;return Si(o[e>>2]|0)|0}function Ut(){return 68}function Lt(e){e=e|0;Hr(e,68);return e|0}function Ft(e){e=e|0;var t=0;Hr(e,68);t=e+68|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 68}function qt(){return 32}function zt(){return 32}function Kt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;pt(r,i);ue(i,32,t)|0;i=0;return i|0}return 0}function Gt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;pt(r,i);ue(i,32,t)|0;i=0;return i|0}return 0}function Ht(e){e=e|0;return Ti((Ie(e+4|0)|0)+4|0)|0}function Vt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;s=e+4|0;a=(Ie(s)|0)+4|0;if((Ti(a)|0)>>>0>i>>>0){o[e>>2]=2;a=-1;return a|0}else{xe(be(Ii(r,a)|0,1)|0,s)|0;a=xi(t,n,r,a)|0;return a|0}return 0}function Qt(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0,l=0,u=0;u=h;h=h+16|0;f=u;l=(s|0)!=0;if(l?(le(32)|0)>>>0>a>>>0:0){o[e>>2]=2;i=-1}else c=4;do{if((c|0)==4){t=Ri(t,n,r,i,e)|0;if((t|0)!=-1){a=r+t|0;t=a+1|0;n=ve(r,t,f)|0;if((o[f>>2]|0)==1)t=Re(n,t,e+4|0)|0;else o[e>>2]=9;if((a|0)==(t|0)){if(!l)break;ue(e+4|0,32,s)|0;break}else{if(o[e>>2]|0){i=-1;break}o[e>>2]=10;i=-1;break}}else i=-1}}while(0);h=u;return i|0}function Wt(e,t){e=e|0;t=t|0;e=o[9393]|0;t=de(t)|0;return Hs[e&3](37548,t)|0}function Yt(e,t,n,r,i,s,a,c,f){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;var l=0,u=0,d=0,p=0,m=0;d=h;h=h+80|0;u=d+40|0;i=d;l=d+32|0;m=o[9393]|0;p=de(a)|0;if((Hs[m&3](37548,p)|0)>>>0>f>>>0){o[e>>2]=2;m=-1;h=d;return m|0}he(t,n,u)|0;mt(e+4|0,u,i);he(r,le(8)|0,l)|0;m=de(a)|0;he(s,a,s)|0;i=Qs[o[37576>>2]&3](37548,i,32,l,8,s,m,c,f)|0;if((i|0)==-1){o[e>>2]=5;i=-1}m=i;h=d;return m|0}function Xt(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<32){o[e>>2]=2;e=-1;return e|0}else{n=e+36|0;e=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(e|0));e=32;return e|0}return 0}function Jt(){return 100}function Zt(e){e=e|0;Hr(e,100);return e|0}function $t(e){e=e|0;return Si(o[e>>2]|0)|0}function en(e){e=e|0;var t=0;Hr(e,100);t=e+100|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 100}function tn(){return 32}function nn(){return le(32)|0}function rn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;gt(r,i);ue(i,32,t)|0;i=0;return i|0}return 0}function on(){return le(64)|0}function sn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((le(64)|0)>>>0>i>>>0){o[e>>2]=2;i=-1;return i|0}else{i=r+(le(64)|0)+-64|0;yt(e+4|0,t,n,i);ue(i,64,r)|0;i=le(64)|0;return i|0}return 0}function an(e){e=e|0;return 8}function cn(e,t){e=e|0;t=t|0;return vt(t)|0}function fn(e,t,n,i,s,a,c,f,l){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;l=l|0;var u=0,d=0,p=0,m=0;m=h;h=h+192|0;p=m+32|0;u=m+112|0;d=m;if(l>>>0<8|(vt(s)|0)>>>0>c>>>0){p=-1;h=m;return p|0}Tt(t,n,0,0,o[e+4>>2]|0,o[e+8>>2]|0,p,80);t=u;n=p;c=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(c|0));e=u+32|0;t=e;n=p+32|0;c=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(c|0));t=u+64|0;n=p+64|0;c=t+16|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(c|0));Hr(p,80);_t(u,u+64|0,i,s,a);Et(e,32,f,l+-8|0,d);a=d;s=o[a>>2]|0;a=o[a+4>>2]|0;p=f+l+-8|0;f=p;r[f>>0]=s;r[f+1>>0]=s>>8;r[f+2>>0]=s>>16;r[f+3>>0]=s>>24;p=p+4|0;r[p>>0]=a;r[p+1>>0]=a>>8;r[p+2>>0]=a>>16;r[p+3>>0]=a>>24;Hr(u,80);p=l;h=m;return p|0}function ln(e,t){e=e|0;t=t|0;return t|0}function un(e,t,n,i,s,a,c,f,l){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;f=f|0;l=l|0;var u=0,d=0,p=0,m=0;m=h;h=h+192|0;p=m+32|0;u=m+112|0;d=m;if(s>>>0<8|c>>>0>l>>>0){p=-1;h=m;return p|0}Tt(t,n,0,0,o[e+4>>2]|0,o[e+8>>2]|0,p,80);t=u;n=p;l=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(l|0));e=u+32|0;t=e;n=p+32|0;l=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(l|0));t=u+64|0;n=p+64|0;l=t+16|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(l|0));Hr(p,80);Et(e,32,i,s+-8|0,d);if(Vr(i+s+-8|0,d,8)|0){e=wt(u,u+64|0,a,c,f)|0;Hr(u,80)}else{Hr(u,80);e=-1}p=e;h=m;return p|0}function dn(e){e=e|0;o[e>>2]=0;return}function hn(e){e=e|0;return 32}function pn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if(i>>>0<32){o[e>>2]=2;i=-1;return i|0}else{At(t,n,r);i=32;return i|0}return 0}function mn(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;if(s>>>0>=64?bt(t,n,r,i)|0:0){s=0;return s|0}o[e>>2]=5;s=-1;return s|0}function gn(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;o[e+8>>2]=0;o[e+44>>2]=e+48;o[e+148>>2]=e+152;o[e+492>>2]=e+496;return}function yn(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;u=h;h=h+64|0;l=u;f=o[e>>2]|0;Tt(t,n,0,0,o[f>>2]|0,o[f+4>>2]|0,l,64);f=e+152|0;t=e+148|0;n=o[t>>2]|0;if((n|0)==(e+492|0)){c=(n|0)==(f|0)?e+84|0:f;t=n}else{a=n+68|0;o[t>>2]=a;c=f;t=a}t=t+-68|0;if((t|0)!=(c|0))do{n=t;t=t+-68|0;s=t;a=n+68|0;do{o[n>>2]=o[s>>2];n=n+4|0;s=s+4|0}while((n|0)<(a|0))}while((t|0)!=(c|0));o[e+184>>2]=0;n=e+12|0;s=l;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=e+188|0;s=l+32|0;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=f;s=i;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));Hr(l,64);h=u;return}function bn(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;u=h;h=h+64|0;l=u;f=o[e>>2]|0;Tt(t,n,0,0,o[f>>2]|0,o[f+4>>2]|0,l,64);f=e+48|0;t=e+44|0;n=o[t>>2]|0;if((n|0)==(e+148|0)){c=(n|0)==(f|0)?e+-52|0:f;t=n}else{a=n+100|0;o[t>>2]=a;c=f;t=a}t=t+-100|0;if((t|0)!=(c|0))do{n=t;t=t+-100|0;s=t;a=n+100|0;do{o[n>>2]=o[s>>2];n=n+4|0;s=s+4|0}while((n|0)<(a|0))}while((t|0)!=(c|0));o[e+112>>2]=0;n=e+12|0;s=l;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=e+116|0;s=l+32|0;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=f;s=i;a=n+64|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));Hr(l,64);h=u;return}function vn(e){e=e|0;var t=0,n=0,r=0,i=0;t=e+48|0;r=o[e+44>>2]|0;if((t|0)==(r|0))i=36;else{n=4;do{n=n+36+(Ie(t)|0)|0;t=t+100|0}while((t|0)!=(r|0));i=n+32|0}t=e+152|0;r=o[e+148>>2]|0;if((t|0)==(r|0))t=4;else{n=t;t=4;do{t=t+36+(ke(n)|0)|0;n=n+68|0}while((n|0)!=(r|0))}i=i+t|0;t=e+496|0;r=o[e+492>>2]|0;if((t|0)==(r|0)){e=4;e=i+e|0;return e|0}n=t;t=4;do{t=t+36+(ke(n)|0)|0;n=n+68|0}while((n|0)!=(r|0));e=i+t|0;return e|0}function _n(e,t){e=e|0;t=t|0;var n=0,r=0;e=Ae(e,t+12|0,32)|0;r=t+44|0;n=t+48|0;e=be(e,((o[r>>2]|0)-n|0)/100|0)|0;r=o[r>>2]|0;if((n|0)!=(r|0))do{e=Ae(xe(e,n)|0,n+68|0,32)|0;e=be(e,o[n+64>>2]|0)|0;n=n+100|0}while((n|0)!=(r|0));r=t+148|0;n=t+152|0;e=be(e,((o[r>>2]|0)-n|0)/68|0)|0;r=o[r>>2]|0;if((n|0)!=(r|0))do{e=Ae(Se(e,n)|0,n+36|0,32)|0;e=be(e,o[n+32>>2]|0)|0;n=n+68|0}while((n|0)!=(r|0));r=t+492|0;n=t+496|0;e=be(e,((o[r>>2]|0)-n|0)/68|0)|0;r=o[r>>2]|0;if((n|0)==(r|0)){t=e;return t|0}do{e=Ae(Se(e,n)|0,n+36|0,32)|0;e=be(e,o[n+32>>2]|0)|0;n=n+68|0}while((n|0)!=(r|0));return e|0}function wn(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0,f=0,l=0;l=h;h=h+16|0;f=l;e=ve(Ee(e,t,n+12|0,32)|0,t,f)|0;c=o[f>>2]|0;o[f>>2]=c+-1;if(!((e|0)==(t|0)|(c|0)==0)){s=n+44|0;a=n+148|0;c=n+48|0;do{i=o[s>>2]|0;if((i|0)==(a|0))i=c;else o[s>>2]=i+100;e=ve(Ee(Re(e,t,i)|0,t,i+68|0,32)|0,t,i+64|0)|0;i=o[f>>2]|0;o[f>>2]=i+-1}while(!((e|0)==(t|0)|(i|0)==0))}e=ve(e,t,f)|0;c=o[f>>2]|0;o[f>>2]=c+-1;if(!((e|0)==(t|0)|(c|0)==0)){s=n+148|0;a=n+492|0;c=n+424|0;do{i=o[s>>2]|0;if((i|0)==(a|0))i=c;else o[s>>2]=i+68;e=ve(Ee(Te(e,t,i)|0,t,i+36|0,32)|0,t,i+32|0)|0;i=o[f>>2]|0;o[f>>2]=i+-1}while(!((e|0)==(t|0)|(i|0)==0))}e=ve(e,t,f)|0;c=o[f>>2]|0;o[f>>2]=c+-1;if(!((e|0)==(t|0)|(c|0)==0)){a=n+492|0;c=n+3216|0;s=n+3148|0;do{i=o[a>>2]|0;if((i|0)==(c|0))i=s;else o[a>>2]=i+68;e=ve(Ee(Te(e,t,i)|0,t,i+36|0,32)|0,t,i+32|0)|0;n=o[f>>2]|0;o[f>>2]=n+-1}while(!((e|0)==(t|0)|(n|0)==0))}if(!r){f=e;h=l;return f|0}f=ve(e,t,f)|0;h=l;return f|0}function An(e,t){e=e|0;t=t|0;var n=0,r=0;if((o[e+44>>2]|0)==(e+48|0))n=0;else n=o[e+112>>2]|0;r=e+4|0;e=o[r>>2]|0;e=Hs[o[(o[e>>2]|0)+4>>2]&3](e,t)|0;t=o[r>>2]|0;return ze(n,32,e,Gs[o[o[t>>2]>>2]&1](t)|0)|0}function En(e){e=e|0;return((o[e+44>>2]|0)==(e+48|0)?32:0)|0}function kn(e,t,n,i,s,a,c){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0;y=h;h=h+112|0;m=y+64|0;g=y;l=e+44|0;d=e+48|0;if((o[l>>2]|0)==(d|0))f=0;else f=o[e+112>>2]|0;p=e+4|0;b=o[p>>2]|0;b=Hs[o[(o[b>>2]|0)+4>>2]&3](b,n)|0;u=o[p>>2]|0;u=ze(f,32,b,Gs[o[o[u>>2]>>2]&1](u)|0)|0;f=(o[l>>2]|0)==(d|0);if((f?32:0)>>>0>s>>>0){o[e+8>>2]=1;b=-1;h=y;return b|0}if(u>>>0>c>>>0){o[e+8>>2]=2;b=-1;h=y;return b|0}if(f){o[l>>2]=e+148;pt(i,d);c=o[e>>2]|0;mt(d,e+152|0,m);i=e+12|0;Tt(m,32,i,32,o[c+8>>2]|0,o[c+12>>2]|0,g,64);c=g;l=i+32|0;do{r[i>>0]=r[c>>0]|0;i=i+1|0;c=c+1|0}while((i|0)<(l|0));f=e+116|0;i=f;c=g+32|0;l=i+32|0;do{r[i>>0]=r[c>>0]|0;i=i+1|0;c=c+1|0}while((i|0)<(l|0));i=e+112|0;o[i>>2]=0;Hr(g,64);Hr(m,32)}else{i=e+112|0;f=e+116|0}s=m+4|0;Et(f,32,38077,1,s);o[m>>2]=o[i>>2];Et(f,32,38078,1,f);o[i>>2]=(o[i>>2]|0)+1;f=o[p>>2]|0;f=Hs[o[(o[f>>2]|0)+4>>2]&3](f,n)|0;Ke(g,3,o[m>>2]|0,32,f,a);i=o[g>>2]|0;c=d;l=i+32|0;do{r[i>>0]=r[c>>0]|0;i=i+1|0;c=c+1|0}while((i|0)<(l|0));b=o[p>>2]|0;Qs[o[(o[b>>2]|0)+8>>2]&3](b,s,32,t,n,o[g+4>>2]|0,f,a,u)|0;Hr(m,36);b=u;h=y;return b|0}function Sn(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0;s=h;h=h+32|0;r=s;i=e+4|0;a=o[i>>2]|0;Ge(r,t,n,Gs[o[o[a>>2]>>2]&1](a)|0);if(!(o[r+24>>2]|0)){o[e+8>>2]=4;a=-1;h=s;return a|0}else{a=o[i>>2]|0;a=Hs[o[(o[a>>2]|0)+12>>2]&3](a,o[r+28>>2]|0)|0;h=s;return a|0}return 0}function Tn(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0;I=h;h=h+240|0;E=I+96|0;k=I+32|0;u=I;d=I+160|0;S=I+128|0;g=e+4|0;w=o[g>>2]|0;Ge(S,t,n,Gs[o[o[w>>2]>>2]&1](w)|0);if((r[S>>0]|0)!=3){o[e+8>>2]=3;T=-1;h=I;return T|0}if((r[S+1>>0]|0?(A=S+16|0,o[A>>2]|0):0)?(b=S+24|0,o[b>>2]|0):0){w=o[g>>2]|0;m=S+28|0;if((Hs[o[(o[w>>2]|0)+12>>2]&3](w,o[m>>2]|0)|0)>>>0>s>>>0){o[e+8>>2]=2;T=-1;h=I;return T|0}if((o[S+20>>2]|0)!=32){o[e+8>>2]=4;T=-1;h=I;return T|0}c=e+152|0;w=e+148|0;n=o[w>>2]|0;e:do{if((c|0)!=(n|0)){f=o[A>>2]|0;l=0;t=c;do{p=(qo(t,f,32)|0)==0;l=p?t:l;t=t+68|0}while(!(p|(t|0)==(n|0)));if(l){t=l+32|0;d=S+4|0;n=o[d>>2]|0;if((o[t>>2]|0)>>>0<=n>>>0){_=l;T=In(e,t,S,i,s)|0;y=1;v=31;break}t=e+496|0;p=e+492|0;f=o[p>>2]|0;if((t|0)!=(f|0)){l=S+8|0;u=S+12|0;while(1){if(((n|0)==(o[t+32>>2]|0)?(qo(t,o[A>>2]|0,32)|0)==0:0)?(a=o[g>>2]|0,a=Qs[o[(o[a>>2]|0)+16>>2]&3](a,t+36|0,32,o[l>>2]|0,o[u>>2]|0,o[b>>2]|0,o[m>>2]|0,i,s)|0,(a|0)!=-1):0)break;t=t+68|0;if((t|0)==(f|0))break e;n=o[d>>2]|0}Hr(t,68);T=(o[p>>2]|0)+-68|0;o[p>>2]=T;if((T|0)==(t|0)){T=a;h=I;return T|0}do{g=t;t=t+68|0;y=t;b=g+68|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((t|0)!=(o[p>>2]|0));h=I;return a|0}}else v=15}else v=15}while(0);if((v|0)==15){a=e+48|0;if((o[e+44>>2]|0)!=(a|0)?(o[S+4>>2]|0)>>>0<=2e3:0){g=d;y=o[A>>2]|0;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));_=o[e>>2]|0;T=d+32|0;mt(a,d,E);Tt(E,32,e+12|0,32,o[_+8>>2]|0,o[_+12>>2]|0,k,64);o[u>>2]=o[k>>2];o[u+4>>2]=o[k+4>>2];o[u+8>>2]=o[k+8>>2];o[u+12>>2]=o[k+12>>2];o[u+16>>2]=o[k+16>>2];o[u+20>>2]=o[k+20>>2];o[u+24>>2]=o[k+24>>2];o[u+28>>2]=o[k+28>>2];_=k+32|0;a=d+36|0;o[a>>2]=o[_>>2];o[a+4>>2]=o[_+4>>2];o[a+8>>2]=o[_+8>>2];o[a+12>>2]=o[_+12>>2];o[a+16>>2]=o[_+16>>2];o[a+20>>2]=o[_+20>>2];o[a+24>>2]=o[_+24>>2];o[a+28>>2]=o[_+28>>2];o[T>>2]=0;Hr(k,64);Hr(E,32);a=In(e,T,S,i,s)|0;Hr(u,32);Hr(d,68)}else a=-1;_=0;T=a;y=0;v=31}if((v|0)==31?(T|0)!=-1:0){if(!y){a=o[w>>2]|0;if((a|0)==(e+492|0))c=(a|0)==(c|0)?e+84|0:c;else{a=a+68|0;o[w>>2]=a}a=a+-68|0;if((a|0)!=(c|0))do{g=a;a=a+-68|0;y=a;b=g+68|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((a|0)!=(c|0));g=c;y=o[A>>2]|0;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));a=e+48|0;y=o[e>>2]|0;mt(a,c,E);g=e+12|0;Tt(E,32,g,32,o[y+8>>2]|0,o[y+12>>2]|0,k,64);y=k;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));g=c+36|0;y=k+32|0;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));n=c+32|0;o[n>>2]=0;Hr(k,64);Hr(E,32);Hr(a,100);t=e+44|0;k=(o[t>>2]|0)+-100|0;o[t>>2]=k;if((k|0)==(a|0))m=c;else{do{g=a;a=a+100|0;y=a;b=g+100|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((a|0)!=(o[t>>2]|0));m=c}}else{m=_;n=_+32|0}f=S+4|0;if((o[n>>2]|0)>>>0<(o[f>>2]|0)>>>0){l=e+496|0;u=e+492|0;d=e+3216|0;a=m+36|0;p=e+532|0;c=e+528|0;do{t=o[u>>2]|0;if((t|0)==(d|0))t=d;else{t=t+68|0;o[u>>2]=t}t=t+-68|0;if((t|0)!=(l|0))do{g=t;t=t+-68|0;y=t;b=g+68|0;do{o[g>>2]=o[y>>2];g=g+4|0;y=y+4|0}while((g|0)<(b|0))}while((t|0)!=(l|0));Et(a,32,38077,1,p);o[c>>2]=o[n>>2];g=l;y=m;b=g+32|0;do{r[g>>0]=r[y>>0]|0;g=g+1|0;y=y+1|0}while((g|0)<(b|0));Et(a,32,38078,1,a);e=(o[n>>2]|0)+1|0;o[n>>2]=e}while(e>>>0<(o[f>>2]|0)>>>0)}else a=m+36|0;Et(a,32,38078,1,a);o[n>>2]=(o[n>>2]|0)+1;h=I;return T|0}o[e+8>>2]=5;T=-1;h=I;return T|0}o[e+8>>2]=4;T=-1;h=I;return T|0}function In(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0;d=h;h=h+80|0;c=d+36|0;f=d;l=n+4|0;u=o[l>>2]|0;a=o[t>>2]|0;if(u>>>0>>0|(u-a|0)>>>0>2e3){u=-1;h=d;return u|0}a=c;s=a+36|0;do{o[a>>2]=o[t>>2];a=a+4|0;t=t+4|0}while((a|0)<(s|0));t=c+4|0;if((o[c>>2]|0)>>>0>>0)do{Et(t,32,38078,1,t);u=(o[c>>2]|0)+1|0;o[c>>2]=u}while(u>>>0<(o[l>>2]|0)>>>0);u=f+4|0;Et(t,32,38077,1,u);o[f>>2]=o[c>>2];l=o[e+4>>2]|0;u=Qs[o[(o[l>>2]|0)+16>>2]&3](l,u,32,o[n+8>>2]|0,o[n+12>>2]|0,o[n+24>>2]|0,o[n+28>>2]|0,r,i)|0;Hr(c,36);h=d;return u|0}function xn(e,t,n){e=e|0;t=t|0;n=n|0;if(e|0)r[e>>0]=3;if(t|0)r[t>>0]=1;if(!n)return;r[n>>0]=3;return}function Rn(){return-1}function Cn(e){e=e|0;return Si(o[e+7368>>2]|0)|0}function On(e){e=e|0;return Si(o[e+3216>>2]|0)|0}function Pn(e){e=e|0;return Si(o[e>>2]|0)|0}function Mn(){return 7372}function Dn(){return 3320}function Bn(){return 4}function Nn(e){e=e|0;Hr(e,7372);Tr(e);return e|0}function jn(e){e=e|0;Hr(e,3320);Je(e);return e|0}function Un(e){e=e|0;Hr(e,4);dn(e);return e|0}function Ln(e){e=e|0;Hr(e,7372);Tr(e);return 7372}function Fn(e){e=e|0;Hr(e,3320);Je(e);return 3320}function qn(e){e=e|0;Hr(e,4);dn(e);return 4}function zn(e){e=e|0;return Ti(qr(e)|0)|0}function Kn(e){e=e|0;return Ti(ut(e)|0)|0}function Gn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=qr(e)|0;if((Ti(s)|0)>>>0>i>>>0){o[e+7368>>2]=2;s=-1;return s|0}else{zr(Ii(r,s)|0,e)|0;s=xi(t,n,r,s)|0;return s|0}return 0}function Hn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=ut(e)|0;if((Ti(s)|0)>>>0>i>>>0){o[e+3216>>2]=2;s=-1;return s|0}else{dt(Ii(r,s)|0,e)|0;s=xi(t,n,r,s)|0;return s|0}return 0}function Vn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=e+7368|0;t=Ri(t,n,r,i,s)|0;if((t|0)==-1){s=-1;return s|0}n=r+t|0;if((n|0)==(Kr(r,n+1|0,e)|0)){s=i;return s|0}if(o[s>>2]|0){s=-1;return s|0}o[s>>2]=10;s=-1;return s|0}function Qn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=e+3216|0;t=Ri(t,n,r,i,s)|0;if((t|0)==-1){s=-1;return s|0}n=r+t|0;if((n|0)==(ht(r,n+1|0,e)|0)){s=i;return s|0}if(o[s>>2]|0){s=-1;return s|0}o[s>>2]=10;s=-1;return s|0}function Wn(e){e=e|0;return Rr(e)|0}function Yn(e,t,n){e=e|0;t=t|0;n=n|0;e=Cr(e,t,n)|0;Hr(t,n);return e|0}function Xn(e){e=e|0;return Or(e)|0}function Jn(e,t,n){e=e|0;t=t|0;n=n|0;return Pr(e,t,n)|0}function Zn(e){e=e|0;return le(Mr(e)|0)|0}function $n(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;s=Mr(e)|0;if((le(s)|0)>>>0>i>>>0){o[e+7368>>2]=2;s=-1;return s|0}else{a=0-s|0;Dr(e,t,n,r+(le(s)|0)+a|0,s)|0;i=le(s)|0;ue(r+i+a|0,s,r)|0;s=i;return s|0}return 0}function er(e){e=e|0;return Br(e)|0}function tr(e,t,n){e=e|0;t=t|0;n=n|0;return Nr(e,t,n)|0}function nr(e){e=e|0;return jr(e)|0}function rr(e){e=e|0;return Ur(e)|0}function ir(e,t){e=e|0;t=t|0;return Lr(e,t)|0}function or(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;t=Fr(e,t,n,r)|0;Hr(n,r);return t|0}function sr(e){e=e|0;return Ze(e)|0}function ar(e,t,n,r,i,s,a,c){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;c=c|0;var f=0,l=0,u=0;u=h;h=h+64|0;f=u+32|0;l=u;if((de(r)|0)==32?(de(s)|0)==32:0){he(n,r,f)|0;he(i,s,l)|0;l=$e(e,t,f,l,a,c)|0;Hr(a,c);h=u;return l|0}o[e+3216>>2]=7;l=-1;h=u;return l|0}function cr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=de(r)|0;if((i|0)==-1){o[e+3216>>2]=7;i=-1;return i|0}else{he(n,r,n)|0;i=et(e,t,0,n,i)|0;return i|0}return 0}function fr(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;var a=0,c=0;c=h;h=h+32|0;a=c;if((de(r)|0)!=32){o[e+3216>>2]=7;a=-1;h=c;return a|0}he(n,r,a)|0;n=de(s)|0;if((n|0)==-1){o[e+3216>>2]=7;n=-1}else{he(i,s,i)|0;n=et(e,t,a,i,n)|0}a=n;h=c;return a|0}function lr(e){e=e|0;return le(tt(e)|0)|0}function ur(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=tt(e)|0;if((le(r)|0)>>>0>n>>>0){o[e+3216>>2]=2;r=-1;return r|0}n=0-r|0;if((nt(e,t+(le(r)|0)+n|0,r)|0)==-1){r=-1;return r|0}e=le(r)|0;ue(t+e+n|0,r,t)|0;r=e;return r|0}function dr(e){e=e|0;return s[e+3220>>0]|0|0}function hr(e,t,n){e=e|0;t=t|0;n=n|0;lt(e,t,n);return}function pr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=de(n)|0;if((r|0)==-1){o[e+3216>>2]=7;r=-1;return r|0}else{he(t,n,t)|0;r=(rt(e,0,t,r)|0)&1;return r|0}return 0}function mr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;a=h;h=h+32|0;s=a;if((de(n)|0)!=32){o[e+3216>>2]=7;s=-1;h=a;return s|0}he(t,n,s)|0;t=de(i)|0;if((t|0)==-1){o[e+3216>>2]=7;t=-1}else{he(r,i,r)|0;t=(rt(e,s,r,t)|0)&1}s=t;h=a;return s|0}function gr(e,t){e=e|0;t=t|0;t=xr(e,t+3285|0)|0;if((t|0)!=-1)return t|0;o[e+7368>>2]=6;return t|0}function yr(e){e=e|0;return it(e)|0}function br(e){e=e|0;return st(e)|0}function vr(e,t){e=e|0;t=t|0;return le(ot(e,t)|0)|0}function _r(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0;c=ot(e,n)|0;if((le(c)|0)>>>0>a>>>0){o[e+3216>>2]=2;c=-1;return c|0}a=0-c|0;n=at(e,t,n,r,i,s+(le(c)|0)+a|0,c)|0;Hr(r,i);if((n|0)==-1){c=-1;return c|0}i=le(c)|0;ue(s+i+a|0,c,s)|0;c=i;return c|0}function wr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=de(r)|0;if((i|0)==-1){o[e+3216>>2]=7;i=-1;return i|0}else{he(n,r,n)|0;i=ct(e,t,n,i)|0;return i|0}return 0}function Ar(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;var a=0;a=de(r)|0;if((a|0)==-1){o[e+3216>>2]=7;a=-1;return a|0}else{he(n,r,n)|0;a=ft(e,t,n,a,i,s)|0;return a|0}return 0}function Er(e){e=e|0;return le(hn(e)|0)|0}function kr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=hn(e)|0;if((le(s)|0)>>>0>i>>>0){o[e>>2]=2;s=-1;return s|0}i=0-s|0;if((pn(e,t,n,r+(le(s)|0)+i|0,s)|0)==-1){s=-1;return s|0}n=le(s)|0;ue(r+n+i|0,s,r)|0;s=n;return s|0}function Sr(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+32|0;c=f;if((de(n)|0)!=32){o[e>>2]=7;c=-1;h=f;return c|0}he(t,n,c)|0;t=de(a)|0;if((t|0)==-1){o[e>>2]=7;t=-1}else{he(s,a,s)|0;t=mn(e,c,r,i,s,t)|0}c=t;h=f;return c|0}function Tr(e){e=e|0;o[e+160>>2]=e+164;o[e+7364>>2]=0;o[e+7368>>2]=0;return}function Ir(e,t){e=e|0;t=t|0;var n=0;n=e+164|0;e=o[e+160>>2]|0;if((n|0)==(e|0)){t=0;return t|0}while(1){if(Vr(n+5|0,t,32)|0){e=5;break}n=n+72|0;if((n|0)==(e|0)){n=0;e=5;break}}if((e|0)==5)return n|0;return 0}function xr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0;n=e+164|0;s=e+160|0;if((n|0)==(o[s>>2]|0)){s=-1;return s|0}while(1){if(Vr(n+5|0,t,32)|0)break;e=n+72|0;if((e|0)==(o[s>>2]|0)){e=-1;r=8;break}else n=e}if((r|0)==8)return e|0;e=o[n>>2]|0;i=(o[s>>2]|0)+-72|0;o[s>>2]=i;if((i|0)==(n|0)){s=e;return s|0}do{t=n;n=n+72|0;r=n;i=t+72|0;do{o[t>>2]=o[r>>2];t=t+4|0;r=r+4|0}while((t|0)<(i|0))}while((n|0)!=(o[s>>2]|0));return e|0}function Rr(e){e=e|0;return 64}function Cr(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<64){o[e+7368>>2]=1;n=-1;return n|0}else{gt(t,e);pt(t+32|0,e+96|0);n=0;return n|0}return 0}function Or(e){e=e|0;e=le(32)|0;return e+30+(le(32)|0)|0}function Pr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0;a=le(32)|0;if((a+30+(le(32)|0)|0)>>>0>n>>>0){o[e+7368>>2]=2;t=-1;return t|0}else{r[t>>0]=123;i=t+1|0;s=38079;a=i+13|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));r[t+14>>0]=34;n=ue(e+96|0,32,t+15|0)|0;r[n>>0]=34;r[n+1>>0]=44;i=n+2|0;s=38093;a=i+10|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));r[n+12>>0]=34;e=ue(e,32,n+13|0)|0;r[e>>0]=34;r[e+1>>0]=125;t=e+2-t|0;return t|0}return 0}function Mr(e){e=e|0;return 64}function Dr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if(i>>>0<64){o[e+7368>>2]=2;i=-1;return i|0}else{yt(e,t,n,r);i=64;return i|0}return 0}function Br(e){e=e|0;var t=0,n=0,i=0;n=e+164|0;i=o[e+160>>2]|0;if((n|0)!=(i|0)){t=1;e=0;do{if(!(r[n+4>>0]|0)){t=le(4)|0;e=e+6+t+(le(32)|0)|0;t=0}n=n+72|0}while((n|0)!=(i|0));if(!t){i=e;n=16;i=n+i|0;return i|0}}else e=0;i=e;n=17;i=n+i|0;return i|0}function Nr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0;p=h;h=h+16|0;u=p;l=e+164|0;f=e+160|0;c=o[f>>2]|0;if((l|0)!=(c|0)){s=1;a=l;i=0;do{if(!(r[a+4>>0]|0)){s=le(4)|0;i=i+6+s+(le(32)|0)|0;s=0}a=a+72|0}while((a|0)!=(c|0));if(s)d=4;else s=16}else{i=0;d=4}if((d|0)==4)s=17;if((s+i|0)>>>0>n>>>0){o[e+7368>>2]=2;d=-1;h=p;return d|0}r[t>>0]=123;i=t+1|0;s=38079;a=i+13|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));i=t+14|0;c=o[f>>2]|0;if((l|0)!=(c|0)){a=l;s=123;do{if(!(r[a+4>>0]|0)){r[i>>0]=s;r[i+1>>0]=34;Ne(u,o[a>>2]|0)|0;i=ue(u,4,i+2|0)|0;r[i>>0]=34;r[i+1>>0]=58;r[i+2>>0]=34;i=ue(a+5|0,32,i+3|0)|0;r[i>>0]=34;i=i+1|0;s=44}a=a+72|0}while((a|0)!=(c|0));if(s<<24>>24!=44)d=16}else{s=123;d=16}if((d|0)==16){r[i>>0]=s;i=i+1|0}r[i>>0]=125;r[i+1>>0]=125;d=i+2-t|0;h=p;return d|0}function jr(e){e=e|0;var t=0,n=0,i=0;t=e+164|0;i=o[e+160>>2]|0;if((t|0)==(i|0)){i=0;return i|0}e=0;do{n=t+4|0;if(!(r[n>>0]|0)){r[n>>0]=1;e=e+1|0}t=t+72|0}while((t|0)!=(i|0));return e|0}function Ur(e){e=e|0;return 100}function Lr(e,t){e=e|0;t=t|0;return t<<5|0}function Fr(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0;if(t<<5>>>0>i>>>0){o[e+7368>>2]=1;p=-1;return p|0}if(!t){p=0;return p|0}h=e+164|0;p=e+160|0;l=e+7364|0;u=e+7364|0;d=e+168|0;f=e+169|0;c=0;while(1){i=o[p>>2]|0;if((i|0)==(l|0))i=l;else{i=i+72|0;o[p>>2]=i}i=i+-72|0;if((i|0)!=(h|0))do{e=i;i=i+-72|0;s=i;a=e+72|0;do{o[e>>2]=o[s>>2];e=e+4|0;s=s+4|0}while((e|0)<(a|0))}while((i|0)!=(h|0));a=(o[u>>2]|0)+1|0;o[u>>2]=a;o[h>>2]=a;r[d>>0]=0;pt(n,f);c=c+1|0;if((c|0)==(t|0))break;else n=n+32|0}return t|0}function qr(e){e=e|0;var t=0,n=0,r=0,i=0;r=Me(e)|0;i=Ie(e+96|0)|0;t=e+164|0;n=o[e+160>>2]|0;if((t|0)==(n|0)){n=4;r=r+8|0;i=r+i|0;i=i+n|0;return i|0}e=4;do{e=e+5+(Ie(t+5|0)|0)|0;t=t+72|0}while((t|0)!=(n|0));r=r+8|0;i=r+i|0;i=i+e|0;return i|0}function zr(e,t){e=e|0;t=t|0;var n=0,i=0;e=xe(De(be(e,2)|0,t)|0,t+96|0)|0;i=t+160|0;n=t+164|0;e=be(e,((o[i>>2]|0)-n|0)/72|0)|0;i=o[i>>2]|0;if((n|0)==(i|0)){i=e;t=t+7364|0;t=o[t>>2]|0;t=be(i,t)|0;return t|0}do{e=be(e,o[n>>2]|0)|0;e=xe(_e(e,(r[n+4>>0]|0)!=0)|0,n+5|0)|0;n=n+72|0}while((n|0)!=(i|0));t=t+7364|0;t=o[t>>2]|0;t=be(e,t)|0;return t|0}function Kr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0;f=h;h=h+16|0;c=f+4|0;a=f;e=ve(e,t,a)|0;switch(o[a>>2]|0){case 2:{e=ve(Re(Be(e,t,n)|0,t,n+96|0)|0,t,c)|0;a=o[c>>2]|0;o[c>>2]=a+-1;if(!((e|0)==(t|0)|(a|0)==0)){i=n+160|0;s=n+7364|0;a=n+7292|0;do{r=o[i>>2]|0;if((r|0)==(s|0))r=a;else o[i>>2]=r+72;e=Re(we(ve(e,t,r)|0,t,r+4|0)|0,t,r+5|0)|0;r=o[c>>2]|0;o[c>>2]=r+-1}while(!((e|0)==(t|0)|(r|0)==0))}n=ve(e,t,n+7364|0)|0;h=f;return n|0}case 1:{o[n+7368>>2]=13;n=t;h=f;return n|0}default:{o[n+7368>>2]=9;n=t;h=f;return n|0}}return 0}function Gr(e,t){e=e|0;t=t|0;var n=0;n=e+t|0;if(!t)return;do{r[e>>0]=0;e=e+1|0}while((e|0)!=(n|0));return}function Hr(e,t){e=e|0;t=t|0;var n=0;n=e+t|0;if(!t)return;do{r[e>>0]=0;e=e+1|0}while((e|0)!=(n|0));return}function Vr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;o=h;h=h+16|0;i=o;r[i>>0]=0;if(n|0)while(1){n=n+-1|0;r[i>>0]=r[i>>0]|r[t>>0]^r[e>>0];if(!n)break;else{t=t+1|0;e=e+1|0}}h=o;return(r[i>>0]|0)==0|0}function Qr(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0;E=s[t>>0]|0;g=Os(s[t+1>>0]|0|0,0,8)|0;I=T;R=Os(s[t+2>>0]|0|0,0,16)|0;I=I|T;u=Os(s[t+3>>0]|0|0,0,24)|0;I=I|T;x=r[t+6>>0]|0;f=s[t+4>>0]|0;k=Os(s[t+5>>0]|0|0,0,8)|0;l=T;x=Os(x&255|0,0,16)|0;l=Os(k|f|x|0,l|T|0,6)|0;x=T;f=r[t+9>>0]|0;k=s[t+7>>0]|0;a=Os(s[t+8>>0]|0|0,0,8)|0;_=T;f=Os(f&255|0,0,16)|0;_=Os(a|k|f|0,_|T|0,5)|0;f=T;k=r[t+12>>0]|0;a=s[t+10>>0]|0;b=Os(s[t+11>>0]|0|0,0,8)|0;S=T;k=Os(k&255|0,0,16)|0;S=Os(b|a|k|0,S|T|0,3)|0;k=T;a=r[t+15>>0]|0;b=s[t+13>>0]|0;p=Os(s[t+14>>0]|0|0,0,8)|0;c=T;a=Os(a&255|0,0,16)|0;c=Os(p|b|a|0,c|T|0,2)|0;a=T;b=s[t+16>>0]|0;p=Os(s[t+17>>0]|0|0,0,8)|0;w=T;n=Os(s[t+18>>0]|0|0,0,16)|0;w=w|T;A=Os(s[t+19>>0]|0|0,0,24)|0;A=p|b|n|A;w=w|T;n=r[t+22>>0]|0;b=s[t+20>>0]|0;p=Os(s[t+21>>0]|0|0,0,8)|0;i=T;n=Os(n&255|0,0,16)|0;i=Os(p|b|n|0,i|T|0,7)|0;n=T;b=r[t+25>>0]|0;p=s[t+23>>0]|0;C=Os(s[t+24>>0]|0|0,0,8)|0;v=T;b=Os(b&255|0,0,16)|0;v=Os(C|p|b|0,v|T|0,5)|0;b=T;p=r[t+28>>0]|0;C=s[t+26>>0]|0;m=Os(s[t+27>>0]|0|0,0,8)|0;h=T;p=Os(p&255|0,0,16)|0;h=Os(m|C|p|0,h|T|0,4)|0;p=T;C=r[t+31>>0]|0;m=s[t+29>>0]|0;d=Os(s[t+30>>0]|0|0,0,8)|0;y=T;t=Os(C&255|0,0,16)|0;y=Os(d|m|t|0,y|T|0,2)|0;y=y&33554428;t=ks(y|0,0,16777216,0)|0;m=Cs(t|0,T|0,25)|0;m=Ss(0,0,m|0,T|0)|0;I=ks(m&19|0,0,g|E|R|u|0,I|0)|0;u=T;R=ks(l|0,x|0,16777216,0)|0;E=Cs(R|0,T|0,25)|0;E=ks(_|0,f|0,E|0,T|0)|0;f=T;R=Ss(l|0,x|0,R&-33554432|0,0)|0;x=T;l=ks(S|0,k|0,16777216,0)|0;_=Cs(l|0,T|0,25)|0;_=ks(c|0,a|0,_|0,T|0)|0;a=T;c=ks(A|0,w|0,16777216,0)|0;g=Cs(c|0,T|0,25)|0;g=ks(i|0,n|0,g|0,T|0)|0;n=T;i=ks(v|0,b|0,16777216,0)|0;m=Cs(i|0,T|0,25)|0;m=ks(h|0,p|0,m|0,T|0)|0;p=T;h=ks(I|0,u|0,33554432,0)|0;d=Cs(h|0,T|0,26)|0;d=ks(R|0,x|0,d|0,T|0)|0;h=Ss(I|0,u|0,h&-67108864|0,0)|0;u=ks(E|0,f|0,33554432,0)|0;I=Cs(u|0,T|0,26)|0;k=ks(I|0,T|0,S|0,k|0)|0;l=Ss(k|0,T|0,l&-33554432|0,0)|0;u=Ss(E|0,f|0,u&-67108864|0,0)|0;f=ks(_|0,a|0,33554432,0)|0;E=Cs(f|0,T|0,26)|0;w=ks(E|0,T|0,A|0,w|0)|0;c=Ss(w|0,T|0,c&-33554432|0,0)|0;f=Ss(_|0,a|0,f&-67108864|0,0)|0;a=ks(g|0,n|0,33554432,0)|0;_=Cs(a|0,T|0,26)|0;b=ks(_|0,T|0,v|0,b|0)|0;i=Ss(b|0,T|0,i&-33554432|0,0)|0;a=Ss(g|0,n|0,a&-67108864|0,0)|0;n=ks(m|0,p|0,33554432,0)|0;g=Cs(n|0,T|0,26)|0;g=ks(y|0,0,g|0,T|0)|0;t=Ss(g|0,T|0,t&33554432|0,0)|0;n=Ss(m|0,p|0,n&-67108864|0,0)|0;o[e>>2]=h;o[e+4>>2]=d;o[e+8>>2]=u;o[e+12>>2]=l;o[e+16>>2]=f;o[e+20>>2]=c;o[e+24>>2]=a;o[e+28>>2]=i;o[e+32>>2]=n;o[e+36>>2]=t;return}function Wr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0,s=0;s=h;h=h+192|0;n=s+144|0;r=s+96|0;i=s+48|0;o=s;Yr(n,t);Yr(r,n);Yr(r,r);Xr(r,t,r);Xr(n,n,r);Yr(i,n);Xr(r,r,i);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);t=1;do{Yr(o,o);t=t+1|0}while((t|0)!=100);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(r,r);Yr(r,r);Yr(r,r);Yr(r,r);Yr(r,r);Xr(e,r,n);h=s;return}function Yr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;tt=o[t>>2]|0;we=o[t+4>>2]|0;l=o[t+8>>2]|0;de=o[t+12>>2]|0;s=o[t+16>>2]|0;rt=o[t+20>>2]|0;a=o[t+24>>2]|0;p=o[t+28>>2]|0;q=o[t+32>>2]|0;R=o[t+36>>2]|0;y=tt<<1;n=we<<1;Ye=l<<1;c=de<<1;pe=s<<1;i=rt<<1;d=a<<1;r=p<<1;Ue=rt*38|0;be=a*19|0;Ee=p*38|0;ie=q*19|0;st=R*38|0;nt=((tt|0)<0)<<31>>31;nt=Es(tt|0,nt|0,tt|0,nt|0)|0;tt=T;b=((y|0)<0)<<31>>31;_e=((we|0)<0)<<31>>31;Ne=Es(y|0,b|0,we|0,_e|0)|0;Be=T;f=((l|0)<0)<<31>>31;We=Es(l|0,f|0,y|0,b|0)|0;Qe=T;he=((de|0)<0)<<31>>31;Ve=Es(de|0,he|0,y|0,b|0)|0;He=T;J=((s|0)<0)<<31>>31;Fe=Es(s|0,J|0,y|0,b|0)|0;Le=T;it=((rt|0)<0)<<31>>31;Te=Es(rt|0,it|0,y|0,b|0)|0;Se=T;Ae=((a|0)<0)<<31>>31;ae=Es(a|0,Ae|0,y|0,b|0)|0;se=T;x=((p|0)<0)<<31>>31;G=Es(p|0,x|0,y|0,b|0)|0;K=T;z=((q|0)<0)<<31>>31;P=Es(q|0,z|0,y|0,b|0)|0;O=T;C=((R|0)<0)<<31>>31;b=Es(R|0,C|0,y|0,b|0)|0;y=T;u=((n|0)<0)<<31>>31;_e=Es(n|0,u|0,we|0,_e|0)|0;we=T;ne=Es(n|0,u|0,l|0,f|0)|0;re=T;g=((c|0)<0)<<31>>31;Ge=Es(c|0,g|0,n|0,u|0)|0;Ke=T;Ce=Es(s|0,J|0,n|0,u|0)|0;Re=T;m=((i|0)<0)<<31>>31;fe=Es(i|0,m|0,n|0,u|0)|0;ce=T;V=Es(a|0,Ae|0,n|0,u|0)|0;H=T;t=((r|0)<0)<<31>>31;D=Es(r|0,t|0,n|0,u|0)|0;M=T;_=Es(q|0,z|0,n|0,u|0)|0;v=T;ot=((st|0)<0)<<31>>31;u=Es(st|0,ot|0,n|0,u|0)|0;n=T;ze=Es(l|0,f|0,l|0,f|0)|0;qe=T;Xe=((Ye|0)<0)<<31>>31;xe=Es(Ye|0,Xe|0,de|0,he|0)|0;Ie=T;ue=Es(s|0,J|0,Ye|0,Xe|0)|0;le=T;X=Es(rt|0,it|0,Ye|0,Xe|0)|0;Y=T;F=Es(a|0,Ae|0,Ye|0,Xe|0)|0;L=T;A=Es(p|0,x|0,Ye|0,Xe|0)|0;w=T;oe=((ie|0)<0)<<31>>31;Xe=Es(ie|0,oe|0,Ye|0,Xe|0)|0;Ye=T;f=Es(st|0,ot|0,l|0,f|0)|0;l=T;he=Es(c|0,g|0,de|0,he|0)|0;de=T;W=Es(c|0,g|0,s|0,J|0)|0;Q=T;N=Es(i|0,m|0,c|0,g|0)|0;B=T;I=Es(a|0,Ae|0,c|0,g|0)|0;S=T;ke=((Ee|0)<0)<<31>>31;Ze=Es(Ee|0,ke|0,c|0,g|0)|0;Je=T;Pe=Es(ie|0,oe|0,c|0,g|0)|0;Oe=T;g=Es(st|0,ot|0,c|0,g|0)|0;c=T;U=Es(s|0,J|0,s|0,J|0)|0;j=T;me=((pe|0)<0)<<31>>31;k=Es(pe|0,me|0,rt|0,it|0)|0;E=T;ve=((be|0)<0)<<31>>31;et=Es(be|0,ve|0,pe|0,me|0)|0;$e=T;De=Es(Ee|0,ke|0,s|0,J|0)|0;Me=T;me=Es(ie|0,oe|0,pe|0,me|0)|0;pe=T;J=Es(st|0,ot|0,s|0,J|0)|0;s=T;it=Es(Ue|0,((Ue|0)<0)<<31>>31|0,rt|0,it|0)|0;rt=T;Ue=Es(be|0,ve|0,i|0,m|0)|0;je=T;ye=Es(Ee|0,ke|0,i|0,m|0)|0;ge=T;$=Es(ie|0,oe|0,i|0,m|0)|0;Z=T;m=Es(st|0,ot|0,i|0,m|0)|0;i=T;ve=Es(be|0,ve|0,a|0,Ae|0)|0;be=T;te=Es(Ee|0,ke|0,a|0,Ae|0)|0;ee=T;d=Es(ie|0,oe|0,d|0,((d|0)<0)<<31>>31|0)|0;h=T;Ae=Es(st|0,ot|0,a|0,Ae|0)|0;a=T;x=Es(Ee|0,ke|0,p|0,x|0)|0;p=T;ke=Es(ie|0,oe|0,r|0,t|0)|0;Ee=T;t=Es(st|0,ot|0,r|0,t|0)|0;r=T;oe=Es(ie|0,oe|0,q|0,z|0)|0;ie=T;z=Es(st|0,ot|0,q|0,z|0)|0;q=T;C=Es(st|0,ot|0,R|0,C|0)|0;R=T;tt=ks(it|0,rt|0,nt|0,tt|0)|0;$e=ks(tt|0,T|0,et|0,$e|0)|0;Je=ks($e|0,T|0,Ze|0,Je|0)|0;Ye=ks(Je|0,T|0,Xe|0,Ye|0)|0;n=ks(Ye|0,T|0,u|0,n|0)|0;u=T;we=ks(We|0,Qe|0,_e|0,we|0)|0;_e=T;re=ks(Ve|0,He|0,ne|0,re|0)|0;ne=T;qe=ks(Ge|0,Ke|0,ze|0,qe|0)|0;Le=ks(qe|0,T|0,Fe|0,Le|0)|0;p=ks(Le|0,T|0,x|0,p|0)|0;h=ks(p|0,T|0,d|0,h|0)|0;i=ks(h|0,T|0,m|0,i|0)|0;m=T;h=ks(n|0,u|0,33554432,0)|0;d=T;p=Rs(h|0,d|0,26)|0;x=T;Be=ks(Ue|0,je|0,Ne|0,Be|0)|0;Me=ks(Be|0,T|0,De|0,Me|0)|0;Oe=ks(Me|0,T|0,Pe|0,Oe|0)|0;l=ks(Oe|0,T|0,f|0,l|0)|0;x=ks(l|0,T|0,p|0,x|0)|0;p=T;d=Ss(n|0,u|0,h&-67108864|0,d|0)|0;h=T;u=ks(i|0,m|0,33554432,0)|0;n=T;l=Rs(u|0,n|0,26)|0;f=T;Ie=ks(Ce|0,Re|0,xe|0,Ie|0)|0;Se=ks(Ie|0,T|0,Te|0,Se|0)|0;Ee=ks(Se|0,T|0,ke|0,Ee|0)|0;a=ks(Ee|0,T|0,Ae|0,a|0)|0;f=ks(a|0,T|0,l|0,f|0)|0;l=T;n=Ss(i|0,m|0,u&-67108864|0,n|0)|0;u=T;m=ks(x|0,p|0,16777216,0)|0;i=Rs(m|0,T|0,25)|0;a=T;be=ks(we|0,_e|0,ve|0,be|0)|0;ge=ks(be|0,T|0,ye|0,ge|0)|0;pe=ks(ge|0,T|0,me|0,pe|0)|0;c=ks(pe|0,T|0,g|0,c|0)|0;a=ks(c|0,T|0,i|0,a|0)|0;i=T;m=Ss(x|0,p|0,m&-33554432|0,0)|0;p=T;x=ks(f|0,l|0,16777216,0)|0;c=Rs(x|0,T|0,25)|0;g=T;le=ks(he|0,de|0,ue|0,le|0)|0;ce=ks(le|0,T|0,fe|0,ce|0)|0;se=ks(ce|0,T|0,ae|0,se|0)|0;ie=ks(se|0,T|0,oe|0,ie|0)|0;r=ks(ie|0,T|0,t|0,r|0)|0;g=ks(r|0,T|0,c|0,g|0)|0;c=T;x=Ss(f|0,l|0,x&-33554432|0,0)|0;l=T;f=ks(a|0,i|0,33554432,0)|0;r=Rs(f|0,T|0,26)|0;t=T;ee=ks(re|0,ne|0,te|0,ee|0)|0;Z=ks(ee|0,T|0,$|0,Z|0)|0;s=ks(Z|0,T|0,J|0,s|0)|0;t=ks(s|0,T|0,r|0,t|0)|0;r=T;f=Ss(a|0,i|0,f&-67108864|0,0)|0;i=ks(g|0,c|0,33554432,0)|0;a=Rs(i|0,T|0,26)|0;s=T;Q=ks(X|0,Y|0,W|0,Q|0)|0;H=ks(Q|0,T|0,V|0,H|0)|0;K=ks(H|0,T|0,G|0,K|0)|0;q=ks(K|0,T|0,z|0,q|0)|0;s=ks(q|0,T|0,a|0,s|0)|0;a=T;i=Ss(g|0,c|0,i&-67108864|0,0)|0;c=ks(t|0,r|0,16777216,0)|0;g=Rs(c|0,T|0,25)|0;u=ks(g|0,T|0,n|0,u|0)|0;n=T;c=Ss(t|0,r|0,c&-33554432|0,0)|0;r=ks(s|0,a|0,16777216,0)|0;t=Rs(r|0,T|0,25)|0;g=T;j=ks(F|0,L|0,U|0,j|0)|0;B=ks(j|0,T|0,N|0,B|0)|0;M=ks(B|0,T|0,D|0,M|0)|0;O=ks(M|0,T|0,P|0,O|0)|0;R=ks(O|0,T|0,C|0,R|0)|0;g=ks(R|0,T|0,t|0,g|0)|0;t=T;r=Ss(s|0,a|0,r&-33554432|0,0)|0;a=ks(u|0,n|0,33554432,0)|0;s=Cs(a|0,T|0,26)|0;s=ks(x|0,l|0,s|0,T|0)|0;a=Ss(u|0,n|0,a&-67108864|0,0)|0;n=ks(g|0,t|0,33554432,0)|0;u=Rs(n|0,T|0,26)|0;l=T;E=ks(I|0,S|0,k|0,E|0)|0;w=ks(E|0,T|0,A|0,w|0)|0;v=ks(w|0,T|0,_|0,v|0)|0;y=ks(v|0,T|0,b|0,y|0)|0;l=ks(y|0,T|0,u|0,l|0)|0;u=T;n=Ss(g|0,t|0,n&-67108864|0,0)|0;t=ks(l|0,u|0,16777216,0)|0;g=Rs(t|0,T|0,25)|0;g=Es(g|0,T|0,19,0)|0;h=ks(g|0,T|0,d|0,h|0)|0;d=T;t=Ss(l|0,u|0,t&-33554432|0,0)|0;u=ks(h|0,d|0,33554432,0)|0;l=Cs(u|0,T|0,26)|0;l=ks(m|0,p|0,l|0,T|0)|0;u=Ss(h|0,d|0,u&-67108864|0,0)|0;o[e>>2]=u;o[e+4>>2]=l;o[e+8>>2]=f;o[e+12>>2]=c;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=n;o[e+36>>2]=t;return}function Xr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ct=0,ft=0,lt=0,ut=0,dt=0,ht=0,pt=0,mt=0,gt=0,yt=0,bt=0,vt=0,_t=0,wt=0,At=0,Et=0,kt=0,St=0,Tt=0,It=0,xt=0,Rt=0,Ct=0,Ot=0,Pt=0,Mt=0,Dt=0,Bt=0,Nt=0,jt=0,Ut=0,Lt=0,Ft=0,qt=0,zt=0,Kt=0,Gt=0,Ht=0,Vt=0,Qt=0,Wt=0,Yt=0,Xt=0,Jt=0,Zt=0,$t=0,en=0,tn=0,nn=0,rn=0,on=0,sn=0,an=0,cn=0,fn=0,ln=0,un=0,dn=0,hn=0,pn=0,mn=0,gn=0,yn=0,bn=0,vn=0,_n=0,wn=0,An=0,En=0,kn=0,Sn=0,Tn=0,In=0,xn=0,Rn=0,Cn=0,On=0,Pn=0,Mn=0,Dn=0,Bn=0,Nn=0,jn=0,Un=0,Ln=0,Fn=0,qn=0,zn=0,Kn=0,Gn=0,Hn=0;y=o[t>>2]|0;v=o[t+4>>2]|0;l=o[t+8>>2]|0;Ht=o[t+12>>2]|0;s=o[t+16>>2]|0;Te=o[t+20>>2]|0;a=o[t+24>>2]|0;It=o[t+28>>2]|0;oe=o[t+32>>2]|0;ae=o[t+36>>2]|0;D=o[n>>2]|0;N=o[n+4>>2]|0;P=o[n+8>>2]|0;C=o[n+12>>2]|0;x=o[n+16>>2]|0;S=o[n+20>>2]|0;E=o[n+24>>2]|0;w=o[n+28>>2]|0;f=o[n+32>>2]|0;_=o[n+36>>2]|0;qn=N*19|0;rn=P*19|0;bt=C*19|0;De=x*19|0;ln=S*19|0;Ot=E*19|0;Ve=w*19|0;Hn=f*19|0;Kn=_*19|0;t=v<<1;c=Ht<<1;i=Te<<1;r=It<<1;L=ae<<1;b=((y|0)<0)<<31>>31;B=((D|0)<0)<<31>>31;Ln=Es(D|0,B|0,y|0,b|0)|0;Un=T;j=((N|0)<0)<<31>>31;En=Es(N|0,j|0,y|0,b|0)|0;An=T;M=((P|0)<0)<<31>>31;wt=Es(P|0,M|0,y|0,b|0)|0;_t=T;O=((C|0)<0)<<31>>31;je=Es(C|0,O|0,y|0,b|0)|0;Ne=T;R=((x|0)<0)<<31>>31;hn=Es(x|0,R|0,y|0,b|0)|0;dn=T;I=((S|0)<0)<<31>>31;Dt=Es(S|0,I|0,y|0,b|0)|0;Mt=T;k=((E|0)<0)<<31>>31;Ye=Es(E|0,k|0,y|0,b|0)|0;We=T;A=((w|0)<0)<<31>>31;le=Es(w|0,A|0,y|0,b|0)|0;fe=T;zn=((f|0)<0)<<31>>31;z=Es(f|0,zn|0,y|0,b|0)|0;q=T;b=Es(_|0,((_|0)<0)<<31>>31|0,y|0,b|0)|0;y=T;_=((v|0)<0)<<31>>31;sn=Es(D|0,B|0,v|0,_|0)|0;an=T;u=((t|0)<0)<<31>>31;St=Es(N|0,j|0,t|0,u|0)|0;kt=T;Le=Es(P|0,M|0,v|0,_|0)|0;Ue=T;mn=Es(C|0,O|0,t|0,u|0)|0;pn=T;Nt=Es(x|0,R|0,v|0,_|0)|0;Bt=T;Je=Es(S|0,I|0,t|0,u|0)|0;Xe=T;de=Es(E|0,k|0,v|0,_|0)|0;ue=T;G=Es(w|0,A|0,t|0,u|0)|0;K=T;_=Es(f|0,zn|0,v|0,_|0)|0;v=T;zn=((Kn|0)<0)<<31>>31;u=Es(Kn|0,zn|0,t|0,u|0)|0;t=T;f=((l|0)<0)<<31>>31;Et=Es(D|0,B|0,l|0,f|0)|0;At=T;Ke=Es(N|0,j|0,l|0,f|0)|0;ze=T;yn=Es(P|0,M|0,l|0,f|0)|0;gn=T;Ut=Es(C|0,O|0,l|0,f|0)|0;jt=T;$e=Es(x|0,R|0,l|0,f|0)|0;Ze=T;pe=Es(S|0,I|0,l|0,f|0)|0;he=T;V=Es(E|0,k|0,l|0,f|0)|0;H=T;A=Es(w|0,A|0,l|0,f|0)|0;w=T;Gn=((Hn|0)<0)<<31>>31;Sn=Es(Hn|0,Gn|0,l|0,f|0)|0;kn=T;f=Es(Kn|0,zn|0,l|0,f|0)|0;l=T;Vt=((Ht|0)<0)<<31>>31;qe=Es(D|0,B|0,Ht|0,Vt|0)|0;Fe=T;g=((c|0)<0)<<31>>31;wn=Es(N|0,j|0,c|0,g|0)|0;_n=T;Ft=Es(P|0,M|0,Ht|0,Vt|0)|0;Lt=T;tt=Es(C|0,O|0,c|0,g|0)|0;et=T;ge=Es(x|0,R|0,Ht|0,Vt|0)|0;me=T;W=Es(S|0,I|0,c|0,g|0)|0;Q=T;k=Es(E|0,k|0,Ht|0,Vt|0)|0;E=T;Qe=((Ve|0)<0)<<31>>31;In=Es(Ve|0,Qe|0,c|0,g|0)|0;Tn=T;Vt=Es(Hn|0,Gn|0,Ht|0,Vt|0)|0;Ht=T;g=Es(Kn|0,zn|0,c|0,g|0)|0;c=T;Se=((s|0)<0)<<31>>31;vn=Es(D|0,B|0,s|0,Se|0)|0;bn=T;Gt=Es(N|0,j|0,s|0,Se|0)|0;Kt=T;rt=Es(P|0,M|0,s|0,Se|0)|0;nt=T;be=Es(C|0,O|0,s|0,Se|0)|0;ye=T;X=Es(x|0,R|0,s|0,Se|0)|0;Y=T;I=Es(S|0,I|0,s|0,Se|0)|0;S=T;Pt=((Ot|0)<0)<<31>>31;Rn=Es(Ot|0,Pt|0,s|0,Se|0)|0;xn=T;Wt=Es(Ve|0,Qe|0,s|0,Se|0)|0;Qt=T;ft=Es(Hn|0,Gn|0,s|0,Se|0)|0;ct=T;Se=Es(Kn|0,zn|0,s|0,Se|0)|0;s=T;Ie=((Te|0)<0)<<31>>31;zt=Es(D|0,B|0,Te|0,Ie|0)|0;qt=T;m=((i|0)<0)<<31>>31;at=Es(N|0,j|0,i|0,m|0)|0;st=T;_e=Es(P|0,M|0,Te|0,Ie|0)|0;ve=T;Z=Es(C|0,O|0,i|0,m|0)|0;J=T;R=Es(x|0,R|0,Te|0,Ie|0)|0;x=T;un=((ln|0)<0)<<31>>31;On=Es(ln|0,un|0,i|0,m|0)|0;Cn=T;Xt=Es(Ot|0,Pt|0,Te|0,Ie|0)|0;Yt=T;ut=Es(Ve|0,Qe|0,i|0,m|0)|0;lt=T;Ie=Es(Hn|0,Gn|0,Te|0,Ie|0)|0;Te=T;m=Es(Kn|0,zn|0,i|0,m|0)|0;i=T;Tt=((a|0)<0)<<31>>31;ot=Es(D|0,B|0,a|0,Tt|0)|0;it=T;ke=Es(N|0,j|0,a|0,Tt|0)|0;Ee=T;ee=Es(P|0,M|0,a|0,Tt|0)|0;$=T;O=Es(C|0,O|0,a|0,Tt|0)|0;C=T;Be=((De|0)<0)<<31>>31;Mn=Es(De|0,Be|0,a|0,Tt|0)|0;Pn=T;Zt=Es(ln|0,un|0,a|0,Tt|0)|0;Jt=T;ht=Es(Ot|0,Pt|0,a|0,Tt|0)|0;dt=T;Re=Es(Ve|0,Qe|0,a|0,Tt|0)|0;xe=T;d=Es(Hn|0,Gn|0,a|0,Tt|0)|0;h=T;Tt=Es(Kn|0,zn|0,a|0,Tt|0)|0;a=T;xt=((It|0)<0)<<31>>31;Ae=Es(D|0,B|0,It|0,xt|0)|0;we=T;n=((r|0)<0)<<31>>31;ie=Es(N|0,j|0,r|0,n|0)|0;re=T;M=Es(P|0,M|0,It|0,xt|0)|0;P=T;vt=((bt|0)<0)<<31>>31;Bn=Es(bt|0,vt|0,r|0,n|0)|0;Dn=T;en=Es(De|0,Be|0,It|0,xt|0)|0;$t=T;mt=Es(ln|0,un|0,r|0,n|0)|0;pt=T;Oe=Es(Ot|0,Pt|0,It|0,xt|0)|0;Ce=T;U=Es(Ve|0,Qe|0,r|0,n|0)|0;p=T;xt=Es(Hn|0,Gn|0,It|0,xt|0)|0;It=T;n=Es(Kn|0,zn|0,r|0,n|0)|0;r=T;se=((oe|0)<0)<<31>>31;ne=Es(D|0,B|0,oe|0,se|0)|0;te=T;j=Es(N|0,j|0,oe|0,se|0)|0;N=T;on=((rn|0)<0)<<31>>31;jn=Es(rn|0,on|0,oe|0,se|0)|0;Nn=T;nn=Es(bt|0,vt|0,oe|0,se|0)|0;tn=T;yt=Es(De|0,Be|0,oe|0,se|0)|0;gt=T;Me=Es(ln|0,un|0,oe|0,se|0)|0;Pe=T;fn=Es(Ot|0,Pt|0,oe|0,se|0)|0;cn=T;Ct=Es(Ve|0,Qe|0,oe|0,se|0)|0;Rt=T;He=Es(Hn|0,Gn|0,oe|0,se|0)|0;Ge=T;se=Es(Kn|0,zn|0,oe|0,se|0)|0;oe=T;ce=((ae|0)<0)<<31>>31;B=Es(D|0,B|0,ae|0,ce|0)|0;D=T;F=((L|0)<0)<<31>>31;qn=Es(qn|0,((qn|0)<0)<<31>>31|0,L|0,F|0)|0;Fn=T;on=Es(rn|0,on|0,ae|0,ce|0)|0;rn=T;vt=Es(bt|0,vt|0,L|0,F|0)|0;bt=T;Be=Es(De|0,Be|0,ae|0,ce|0)|0;De=T;un=Es(ln|0,un|0,L|0,F|0)|0;ln=T;Pt=Es(Ot|0,Pt|0,ae|0,ce|0)|0;Ot=T;Qe=Es(Ve|0,Qe|0,L|0,F|0)|0;Ve=T;ce=Es(Hn|0,Gn|0,ae|0,ce|0)|0;ae=T;F=Es(Kn|0,zn|0,L|0,F|0)|0;L=T;Un=ks(qn|0,Fn|0,Ln|0,Un|0)|0;Nn=ks(Un|0,T|0,jn|0,Nn|0)|0;Dn=ks(Nn|0,T|0,Bn|0,Dn|0)|0;Pn=ks(Dn|0,T|0,Mn|0,Pn|0)|0;Cn=ks(Pn|0,T|0,On|0,Cn|0)|0;xn=ks(Cn|0,T|0,Rn|0,xn|0)|0;Tn=ks(xn|0,T|0,In|0,Tn|0)|0;kn=ks(Tn|0,T|0,Sn|0,kn|0)|0;t=ks(kn|0,T|0,u|0,t|0)|0;u=T;an=ks(En|0,An|0,sn|0,an|0)|0;sn=T;bn=ks(wn|0,_n|0,vn|0,bn|0)|0;gn=ks(bn|0,T|0,yn|0,gn|0)|0;pn=ks(gn|0,T|0,mn|0,pn|0)|0;dn=ks(pn|0,T|0,hn|0,dn|0)|0;ln=ks(dn|0,T|0,un|0,ln|0)|0;cn=ks(ln|0,T|0,fn|0,cn|0)|0;p=ks(cn|0,T|0,U|0,p|0)|0;h=ks(p|0,T|0,d|0,h|0)|0;i=ks(h|0,T|0,m|0,i|0)|0;m=T;h=ks(t|0,u|0,33554432,0)|0;d=T;p=Rs(h|0,d|0,26)|0;U=T;rn=ks(an|0,sn|0,on|0,rn|0)|0;tn=ks(rn|0,T|0,nn|0,tn|0)|0;$t=ks(tn|0,T|0,en|0,$t|0)|0;Jt=ks($t|0,T|0,Zt|0,Jt|0)|0;Yt=ks(Jt|0,T|0,Xt|0,Yt|0)|0;Qt=ks(Yt|0,T|0,Wt|0,Qt|0)|0;Ht=ks(Qt|0,T|0,Vt|0,Ht|0)|0;l=ks(Ht|0,T|0,f|0,l|0)|0;U=ks(l|0,T|0,p|0,U|0)|0;p=T;d=Ss(t|0,u|0,h&-67108864|0,d|0)|0;h=T;u=ks(i|0,m|0,33554432,0)|0;t=T;l=Rs(u|0,t|0,26)|0;f=T;qt=ks(Gt|0,Kt|0,zt|0,qt|0)|0;Lt=ks(qt|0,T|0,Ft|0,Lt|0)|0;jt=ks(Lt|0,T|0,Ut|0,jt|0)|0;Bt=ks(jt|0,T|0,Nt|0,Bt|0)|0;Mt=ks(Bt|0,T|0,Dt|0,Mt|0)|0;Ot=ks(Mt|0,T|0,Pt|0,Ot|0)|0;Rt=ks(Ot|0,T|0,Ct|0,Rt|0)|0;It=ks(Rt|0,T|0,xt|0,It|0)|0;a=ks(It|0,T|0,Tt|0,a|0)|0;f=ks(a|0,T|0,l|0,f|0)|0;l=T;t=Ss(i|0,m|0,u&-67108864|0,t|0)|0;u=T;m=ks(U|0,p|0,16777216,0)|0;i=Rs(m|0,T|0,25)|0;a=T;At=ks(St|0,kt|0,Et|0,At|0)|0;_t=ks(At|0,T|0,wt|0,_t|0)|0;bt=ks(_t|0,T|0,vt|0,bt|0)|0;gt=ks(bt|0,T|0,yt|0,gt|0)|0;pt=ks(gt|0,T|0,mt|0,pt|0)|0;dt=ks(pt|0,T|0,ht|0,dt|0)|0;lt=ks(dt|0,T|0,ut|0,lt|0)|0;ct=ks(lt|0,T|0,ft|0,ct|0)|0;c=ks(ct|0,T|0,g|0,c|0)|0;a=ks(c|0,T|0,i|0,a|0)|0;i=T;m=Ss(U|0,p|0,m&-33554432|0,0)|0;p=T;U=ks(f|0,l|0,16777216,0)|0;c=Rs(U|0,T|0,25)|0;g=T;it=ks(at|0,st|0,ot|0,it|0)|0;nt=ks(it|0,T|0,rt|0,nt|0)|0;et=ks(nt|0,T|0,tt|0,et|0)|0;Ze=ks(et|0,T|0,$e|0,Ze|0)|0;Xe=ks(Ze|0,T|0,Je|0,Xe|0)|0;We=ks(Xe|0,T|0,Ye|0,We|0)|0;Ve=ks(We|0,T|0,Qe|0,Ve|0)|0;Ge=ks(Ve|0,T|0,He|0,Ge|0)|0;r=ks(Ge|0,T|0,n|0,r|0)|0;g=ks(r|0,T|0,c|0,g|0)|0;c=T;U=Ss(f|0,l|0,U&-33554432|0,0)|0;l=T;f=ks(a|0,i|0,33554432,0)|0;r=Rs(f|0,T|0,26)|0;n=T;Fe=ks(Ke|0,ze|0,qe|0,Fe|0)|0;Ue=ks(Fe|0,T|0,Le|0,Ue|0)|0;Ne=ks(Ue|0,T|0,je|0,Ne|0)|0;De=ks(Ne|0,T|0,Be|0,De|0)|0;Pe=ks(De|0,T|0,Me|0,Pe|0)|0;Ce=ks(Pe|0,T|0,Oe|0,Ce|0)|0;xe=ks(Ce|0,T|0,Re|0,xe|0)|0;Te=ks(xe|0,T|0,Ie|0,Te|0)|0;s=ks(Te|0,T|0,Se|0,s|0)|0;n=ks(s|0,T|0,r|0,n|0)|0;r=T;f=Ss(a|0,i|0,f&-67108864|0,0)|0;i=ks(g|0,c|0,33554432,0)|0;a=Rs(i|0,T|0,26)|0;s=T;we=ks(ke|0,Ee|0,Ae|0,we|0)|0;ve=ks(we|0,T|0,_e|0,ve|0)|0;ye=ks(ve|0,T|0,be|0,ye|0)|0;me=ks(ye|0,T|0,ge|0,me|0)|0;he=ks(me|0,T|0,pe|0,he|0)|0;ue=ks(he|0,T|0,de|0,ue|0)|0;fe=ks(ue|0,T|0,le|0,fe|0)|0;ae=ks(fe|0,T|0,ce|0,ae|0)|0;oe=ks(ae|0,T|0,se|0,oe|0)|0;s=ks(oe|0,T|0,a|0,s|0)|0;a=T;i=Ss(g|0,c|0,i&-67108864|0,0)|0;c=ks(n|0,r|0,16777216,0)|0;g=Rs(c|0,T|0,25)|0;u=ks(g|0,T|0,t|0,u|0)|0;t=T;c=Ss(n|0,r|0,c&-33554432|0,0)|0;r=ks(s|0,a|0,16777216,0)|0;n=Rs(r|0,T|0,25)|0;g=T;te=ks(ie|0,re|0,ne|0,te|0)|0;$=ks(te|0,T|0,ee|0,$|0)|0;J=ks($|0,T|0,Z|0,J|0)|0;Y=ks(J|0,T|0,X|0,Y|0)|0;Q=ks(Y|0,T|0,W|0,Q|0)|0;H=ks(Q|0,T|0,V|0,H|0)|0;K=ks(H|0,T|0,G|0,K|0)|0;q=ks(K|0,T|0,z|0,q|0)|0;L=ks(q|0,T|0,F|0,L|0)|0;g=ks(L|0,T|0,n|0,g|0)|0;n=T;r=Ss(s|0,a|0,r&-33554432|0,0)|0;a=ks(u|0,t|0,33554432,0)|0;s=Cs(a|0,T|0,26)|0;s=ks(U|0,l|0,s|0,T|0)|0;a=Ss(u|0,t|0,a&-67108864|0,0)|0;t=ks(g|0,n|0,33554432,0)|0;u=Rs(t|0,T|0,26)|0;l=T;D=ks(j|0,N|0,B|0,D|0)|0;P=ks(D|0,T|0,M|0,P|0)|0;C=ks(P|0,T|0,O|0,C|0)|0;x=ks(C|0,T|0,R|0,x|0)|0;S=ks(x|0,T|0,I|0,S|0)|0;E=ks(S|0,T|0,k|0,E|0)|0;w=ks(E|0,T|0,A|0,w|0)|0;v=ks(w|0,T|0,_|0,v|0)|0;y=ks(v|0,T|0,b|0,y|0)|0;l=ks(y|0,T|0,u|0,l|0)|0;u=T;t=Ss(g|0,n|0,t&-67108864|0,0)|0;n=ks(l|0,u|0,16777216,0)|0;g=Rs(n|0,T|0,25)|0;g=Es(g|0,T|0,19,0)|0;h=ks(g|0,T|0,d|0,h|0)|0;d=T;n=Ss(l|0,u|0,n&-33554432|0,0)|0;u=ks(h|0,d|0,33554432,0)|0;l=Cs(u|0,T|0,26)|0;l=ks(m|0,p|0,l|0,T|0)|0;u=Ss(h|0,d|0,u&-67108864|0,0)|0;o[e>>2]=u;o[e+4>>2]=l;o[e+8>>2]=f;o[e+12>>2]=c;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=t;o[e+36>>2]=n;return}function Jr(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0;v=o[t>>2]|0;b=o[t+4>>2]|0;g=o[t+8>>2]|0;p=o[t+12>>2]|0;d=o[t+16>>2]|0;u=o[t+20>>2]|0;l=o[t+24>>2]|0;c=o[t+28>>2]|0;s=o[t+32>>2]|0;n=o[t+36>>2]|0;v=(((((((((((((n*19|0)+16777216>>25)+v>>26)+b>>25)+g>>26)+p>>25)+d>>26)+u>>25)+l>>26)+c>>25)+s>>26)+n>>25)*19|0)+v|0;b=(v>>26)+b|0;g=(b>>25)+g|0;y=b&33554431;p=(g>>26)+p|0;m=g&67108863;d=(p>>25)+d|0;h=p&33554431;u=(d>>26)+u|0;l=(u>>25)+l|0;c=(l>>26)+c|0;f=l&67108863;s=(c>>25)+s|0;a=c&33554431;n=(s>>26)+n|0;i=s&67108863;t=n&33554431;r[e>>0]=v;r[e+1>>0]=v>>>8;r[e+2>>0]=v>>>16;r[e+3>>0]=y<<2|v>>>24&3;r[e+4>>0]=b>>>6;r[e+5>>0]=b>>>14;r[e+6>>0]=m<<3|y>>>22;r[e+7>>0]=g>>>5;r[e+8>>0]=g>>>13;r[e+9>>0]=h<<5|m>>>21;r[e+10>>0]=p>>>3;r[e+11>>0]=p>>>11;r[e+12>>0]=d<<6|h>>>19;r[e+13>>0]=d>>>2;r[e+14>>0]=d>>>10;r[e+15>>0]=d>>>18;r[e+16>>0]=u;r[e+17>>0]=u>>>8;r[e+18>>0]=u>>>16;r[e+19>>0]=f<<1|u>>>24&1;r[e+20>>0]=l>>>7;r[e+21>>0]=l>>>15;r[e+22>>0]=a<<3|f>>>23;r[e+23>>0]=c>>>5;r[e+24>>0]=c>>>13;r[e+25>>0]=i<<4|a>>>21;r[e+26>>0]=s>>>4;r[e+27>>0]=s>>>12;r[e+28>>0]=t<<6|i>>>20;r[e+29>>0]=n>>>2;r[e+30>>0]=n>>>10;r[e+31>>0]=t>>>18;return}function Zr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0,s=0;s=h;h=h+144|0;r=s+96|0;i=s+48|0;o=s;Yr(r,t);Yr(i,r);Yr(i,i);Xr(i,t,i);Xr(r,r,i);Yr(r,r);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);n=1;do{Yr(o,o);n=n+1|0}while((n|0)!=100);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(r,r);Yr(r,r);Xr(e,r,t);h=s;return}function $r(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;tt=o[t>>2]|0;je=o[t+4>>2]|0;v=o[t+8>>2]|0;re=o[t+12>>2]|0;_=o[t+16>>2]|0;rt=o[t+20>>2]|0;f=o[t+24>>2]|0;me=o[t+28>>2]|0;s=o[t+32>>2]|0;g=o[t+36>>2]|0;l=tt<<1;y=je<<1;Ye=v<<1;A=re<<1;Oe=_<<1;m=rt<<1;pe=f<<1;w=me<<1;We=rt*38|0;Be=f*19|0;oe=me*38|0;Y=s*19|0;st=g*38|0;nt=((tt|0)<0)<<31>>31;nt=Es(tt|0,nt|0,tt|0,nt|0)|0;tt=T;u=((l|0)<0)<<31>>31;Ue=((je|0)<0)<<31>>31;Ve=Es(l|0,u|0,je|0,Ue|0)|0;He=T;p=((v|0)<0)<<31>>31;Fe=Es(v|0,p|0,l|0,u|0)|0;Le=T;ie=((re|0)<0)<<31>>31;Ce=Es(re|0,ie|0,l|0,u|0)|0;Re=T;r=((_|0)<0)<<31>>31;be=Es(_|0,r|0,l|0,u|0)|0;ye=T;it=((rt|0)<0)<<31>>31;ce=Es(rt|0,it|0,l|0,u|0)|0;ae=T;b=((f|0)<0)<<31>>31;Z=Es(f|0,b|0,l|0,u|0)|0;J=T;ge=((me|0)<0)<<31>>31;z=Es(me|0,ge|0,l|0,u|0)|0;q=T;a=((s|0)<0)<<31>>31;P=Es(s|0,a|0,l|0,u|0)|0;O=T;t=((g|0)<0)<<31>>31;u=Es(g|0,t|0,l|0,u|0)|0;l=T;n=((y|0)<0)<<31>>31;Ue=Es(y|0,n|0,je|0,Ue|0)|0;je=T;xe=Es(y|0,n|0,v|0,p|0)|0;Ie=T;i=((A|0)<0)<<31>>31;Ae=Es(A|0,i|0,y|0,n|0)|0;we=T;de=Es(_|0,r|0,y|0,n|0)|0;ue=T;E=((m|0)<0)<<31>>31;ee=Es(m|0,E|0,y|0,n|0)|0;$=T;G=Es(f|0,b|0,y|0,n|0)|0;K=T;c=((w|0)<0)<<31>>31;D=Es(w|0,c|0,y|0,n|0)|0;M=T;d=Es(s|0,a|0,y|0,n|0)|0;h=T;ot=((st|0)<0)<<31>>31;n=Es(st|0,ot|0,y|0,n|0)|0;y=T;_e=Es(v|0,p|0,v|0,p|0)|0;ve=T;Xe=((Ye|0)<0)<<31>>31;le=Es(Ye|0,Xe|0,re|0,ie|0)|0;fe=T;ne=Es(_|0,r|0,Ye|0,Xe|0)|0;te=T;W=Es(rt|0,it|0,Ye|0,Xe|0)|0;Q=T;F=Es(f|0,b|0,Ye|0,Xe|0)|0;L=T;S=Es(me|0,ge|0,Ye|0,Xe|0)|0;k=T;X=((Y|0)<0)<<31>>31;Xe=Es(Y|0,X|0,Ye|0,Xe|0)|0;Ye=T;p=Es(st|0,ot|0,v|0,p|0)|0;v=T;ie=Es(A|0,i|0,re|0,ie|0)|0;re=T;V=Es(A|0,i|0,_|0,r|0)|0;H=T;N=Es(m|0,E|0,A|0,i|0)|0;B=T;C=Es(f|0,b|0,A|0,i|0)|0;R=T;se=((oe|0)<0)<<31>>31;Ze=Es(oe|0,se|0,A|0,i|0)|0;Je=T;ze=Es(Y|0,X|0,A|0,i|0)|0;qe=T;i=Es(st|0,ot|0,A|0,i|0)|0;A=T;U=Es(_|0,r|0,_|0,r|0)|0;j=T;Pe=((Oe|0)<0)<<31>>31;x=Es(Oe|0,Pe|0,rt|0,it|0)|0;I=T;Ne=((Be|0)<0)<<31>>31;et=Es(Be|0,Ne|0,Oe|0,Pe|0)|0;$e=T;Ge=Es(oe|0,se|0,_|0,r|0)|0;Ke=T;Pe=Es(Y|0,X|0,Oe|0,Pe|0)|0;Oe=T;r=Es(st|0,ot|0,_|0,r|0)|0;_=T;it=Es(We|0,((We|0)<0)<<31>>31|0,rt|0,it|0)|0;rt=T;We=Es(Be|0,Ne|0,m|0,E|0)|0;Qe=T;De=Es(oe|0,se|0,m|0,E|0)|0;Me=T;ke=Es(Y|0,X|0,m|0,E|0)|0;Ee=T;E=Es(st|0,ot|0,m|0,E|0)|0;m=T;Ne=Es(Be|0,Ne|0,f|0,b|0)|0;Be=T;Te=Es(oe|0,se|0,f|0,b|0)|0;Se=T;pe=Es(Y|0,X|0,pe|0,((pe|0)<0)<<31>>31|0)|0;he=T;b=Es(st|0,ot|0,f|0,b|0)|0;f=T;ge=Es(oe|0,se|0,me|0,ge|0)|0;me=T;se=Es(Y|0,X|0,w|0,c|0)|0;oe=T;c=Es(st|0,ot|0,w|0,c|0)|0;w=T;X=Es(Y|0,X|0,s|0,a|0)|0;Y=T;a=Es(st|0,ot|0,s|0,a|0)|0;s=T;t=Es(st|0,ot|0,g|0,t|0)|0;g=T;tt=ks(it|0,rt|0,nt|0,tt|0)|0;$e=ks(tt|0,T|0,et|0,$e|0)|0;Je=ks($e|0,T|0,Ze|0,Je|0)|0;Ye=ks(Je|0,T|0,Xe|0,Ye|0)|0;y=ks(Ye|0,T|0,n|0,y|0)|0;n=T;He=ks(We|0,Qe|0,Ve|0,He|0)|0;Ke=ks(He|0,T|0,Ge|0,Ke|0)|0;qe=ks(Ke|0,T|0,ze|0,qe|0)|0;v=ks(qe|0,T|0,p|0,v|0)|0;p=T;je=ks(Fe|0,Le|0,Ue|0,je|0)|0;Be=ks(je|0,T|0,Ne|0,Be|0)|0;Me=ks(Be|0,T|0,De|0,Me|0)|0;Oe=ks(Me|0,T|0,Pe|0,Oe|0)|0;A=ks(Oe|0,T|0,i|0,A|0)|0;i=T;Ie=ks(Ce|0,Re|0,xe|0,Ie|0)|0;Se=ks(Ie|0,T|0,Te|0,Se|0)|0;Ee=ks(Se|0,T|0,ke|0,Ee|0)|0;_=ks(Ee|0,T|0,r|0,_|0)|0;r=T;ve=ks(Ae|0,we|0,_e|0,ve|0)|0;ye=ks(ve|0,T|0,be|0,ye|0)|0;me=ks(ye|0,T|0,ge|0,me|0)|0;he=ks(me|0,T|0,pe|0,he|0)|0;m=ks(he|0,T|0,E|0,m|0)|0;E=T;fe=ks(de|0,ue|0,le|0,fe|0)|0;ae=ks(fe|0,T|0,ce|0,ae|0)|0;oe=ks(ae|0,T|0,se|0,oe|0)|0;f=ks(oe|0,T|0,b|0,f|0)|0;b=T;te=ks(ie|0,re|0,ne|0,te|0)|0;$=ks(te|0,T|0,ee|0,$|0)|0;J=ks($|0,T|0,Z|0,J|0)|0;Y=ks(J|0,T|0,X|0,Y|0)|0;w=ks(Y|0,T|0,c|0,w|0)|0;c=T;H=ks(W|0,Q|0,V|0,H|0)|0;K=ks(H|0,T|0,G|0,K|0)|0;q=ks(K|0,T|0,z|0,q|0)|0;s=ks(q|0,T|0,a|0,s|0)|0;a=T;j=ks(F|0,L|0,U|0,j|0)|0;B=ks(j|0,T|0,N|0,B|0)|0;M=ks(B|0,T|0,D|0,M|0)|0;O=ks(M|0,T|0,P|0,O|0)|0;g=ks(O|0,T|0,t|0,g|0)|0;t=T;I=ks(C|0,R|0,x|0,I|0)|0;k=ks(I|0,T|0,S|0,k|0)|0;h=ks(k|0,T|0,d|0,h|0)|0;l=ks(h|0,T|0,u|0,l|0)|0;u=T;n=Os(y|0,n|0,1)|0;y=T;p=Os(v|0,p|0,1)|0;v=T;i=Os(A|0,i|0,1)|0;A=T;r=Os(_|0,r|0,1)|0;_=T;E=Os(m|0,E|0,1)|0;m=T;b=Os(f|0,b|0,1)|0;f=T;c=Os(w|0,c|0,1)|0;w=T;a=Os(s|0,a|0,1)|0;s=T;t=Os(g|0,t|0,1)|0;g=T;u=Os(l|0,u|0,1)|0;l=T;h=ks(n|0,y|0,33554432,0)|0;d=T;k=Rs(h|0,d|0,26)|0;v=ks(k|0,T|0,p|0,v|0)|0;p=T;d=Ss(n|0,y|0,h&-67108864|0,d|0)|0;h=T;y=ks(E|0,m|0,33554432,0)|0;n=T;k=Rs(y|0,n|0,26)|0;f=ks(k|0,T|0,b|0,f|0)|0;b=T;n=Ss(E|0,m|0,y&-67108864|0,n|0)|0;y=T;m=ks(v|0,p|0,16777216,0)|0;E=Rs(m|0,T|0,25)|0;A=ks(E|0,T|0,i|0,A|0)|0;i=T;m=Ss(v|0,p|0,m&-33554432|0,0)|0;p=T;v=ks(f|0,b|0,16777216,0)|0;E=Rs(v|0,T|0,25)|0;w=ks(E|0,T|0,c|0,w|0)|0;c=T;v=Ss(f|0,b|0,v&-33554432|0,0)|0;b=T;f=ks(A|0,i|0,33554432,0)|0;E=Rs(f|0,T|0,26)|0;_=ks(E|0,T|0,r|0,_|0)|0;r=T;f=Ss(A|0,i|0,f&-67108864|0,0)|0;i=ks(w|0,c|0,33554432,0)|0;A=Rs(i|0,T|0,26)|0;s=ks(A|0,T|0,a|0,s|0)|0;a=T;i=Ss(w|0,c|0,i&-67108864|0,0)|0;c=ks(_|0,r|0,16777216,0)|0;w=Rs(c|0,T|0,25)|0;y=ks(w|0,T|0,n|0,y|0)|0;n=T;c=Ss(_|0,r|0,c&-33554432|0,0)|0;r=ks(s|0,a|0,16777216,0)|0;_=Rs(r|0,T|0,25)|0;g=ks(_|0,T|0,t|0,g|0)|0;t=T;r=Ss(s|0,a|0,r&-33554432|0,0)|0;a=ks(y|0,n|0,33554432,0)|0;s=Cs(a|0,T|0,26)|0;s=ks(v|0,b|0,s|0,T|0)|0;a=Ss(y|0,n|0,a&-67108864|0,0)|0;n=ks(g|0,t|0,33554432,0)|0;y=Rs(n|0,T|0,26)|0;l=ks(y|0,T|0,u|0,l|0)|0;u=T;n=Ss(g|0,t|0,n&-67108864|0,0)|0;t=ks(l|0,u|0,16777216,0)|0;g=Rs(t|0,T|0,25)|0;g=Es(g|0,T|0,19,0)|0;h=ks(g|0,T|0,d|0,h|0)|0;d=T;t=Ss(l|0,u|0,t&-33554432|0,0)|0;u=ks(h|0,d|0,33554432,0)|0;l=Cs(u|0,T|0,26)|0;l=ks(m|0,p|0,l|0,T|0)|0;u=Ss(h|0,d|0,u&-67108864|0,0)|0;o[e>>2]=u;o[e+4>>2]=l;o[e+8>>2]=f;o[e+12>>2]=c;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=n;o[e+36>>2]=t;return}function ei(e){e=e|0;var t=0,n=0,i=0,o=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;de=e+1|0;fe=e+2|0;z=r[fe>>0]|0;Ae=s[e>>0]|0;P=Os(s[de>>0]|0|0,0,8)|0;ve=T;z=z&255;_e=Os(z|0,0,16)|0;ce=e+3|0;w=Os(s[ce>>0]|0|0,0,8)|0;te=T;ie=e+4|0;Z=Os(s[ie>>0]|0|0,0,16)|0;te=te|T;re=e+5|0;q=s[re>>0]|0;$=Os(q|0,0,24)|0;te=Cs(w|z|Z|$|0,te|T|0,5)|0;$=e+6|0;Z=e+7|0;z=r[Z>>0]|0;w=Os(s[$>>0]|0|0,0,8)|0;xe=T;z=z&255;J=Os(z|0,0,16)|0;xe=Cs(w|q|J|0,xe|T|0,2)|0;J=e+8|0;q=Os(s[J>>0]|0|0,0,8)|0;w=T;Q=e+9|0;Ie=Os(s[Q>>0]|0|0,0,16)|0;w=w|T;V=e+10|0;Ve=s[V>>0]|0;H=Os(Ve|0,0,24)|0;w=Cs(q|z|Ie|H|0,w|T|0,7)|0;H=e+11|0;Ie=Os(s[H>>0]|0|0,0,8)|0;z=T;q=e+12|0;B=Os(s[q>>0]|0|0,0,16)|0;z=z|T;F=e+13|0;A=s[F>>0]|0;N=Os(A|0,0,24)|0;z=Cs(Ie|Ve|B|N|0,z|T|0,4)|0;N=e+14|0;B=e+15|0;Ve=r[B>>0]|0;Ie=Os(s[N>>0]|0|0,0,8)|0;ye=T;Ve=Ve&255;D=Os(Ve|0,0,16)|0;ye=Cs(Ie|A|D|0,ye|T|0,1)|0;D=e+16|0;A=Os(s[D>>0]|0|0,0,8)|0;Ie=T;C=e+17|0;k=Os(s[C>>0]|0|0,0,16)|0;Ie=Ie|T;R=e+18|0;E=s[R>>0]|0;x=Os(E|0,0,24)|0;Ie=Cs(A|Ve|k|x|0,Ie|T|0,6)|0;x=e+19|0;k=e+20|0;Ve=r[k>>0]|0;A=Os(s[x>>0]|0|0,0,8)|0;Qe=T;Ve=Os(Ve&255|0,0,16)|0;Qe=Cs(A|E|Ve|0,Qe|T|0,3)|0;Ve=T;E=e+21|0;A=e+22|0;v=e+23|0;n=r[v>>0]|0;et=s[E>>0]|0;tt=Os(s[A>>0]|0|0,0,8)|0;Ze=T;n=n&255;$e=Os(n|0,0,16)|0;b=e+24|0;Ue=Os(s[b>>0]|0|0,0,8)|0;Ke=T;p=e+25|0;c=Os(s[p>>0]|0|0,0,16)|0;Ke=Ke|T;h=e+26|0;pe=s[h>>0]|0;f=Os(pe|0,0,24)|0;Ke=Cs(Ue|n|c|f|0,Ke|T|0,5)|0;f=e+27|0;c=e+28|0;n=r[c>>0]|0;Ue=Os(s[f>>0]|0|0,0,8)|0;Je=T;n=n&255;a=Os(n|0,0,16)|0;Je=Cs(Ue|pe|a|0,Je|T|0,2)|0;a=e+29|0;pe=Os(s[a>>0]|0|0,0,8)|0;Ue=T;o=e+30|0;ot=Os(s[o>>0]|0|0,0,16)|0;Ue=Ue|T;t=e+31|0;ne=s[t>>0]|0;l=Os(ne|0,0,24)|0;Ue=Cs(pe|n|ot|l|0,Ue|T|0,7)|0;l=Os(s[e+32>>0]|0|0,0,8)|0;ot=T;n=Os(s[e+33>>0]|0|0,0,16)|0;ot=ot|T;pe=s[e+34>>0]|0;g=Os(pe|0,0,24)|0;ot=Cs(l|ne|n|g|0,ot|T|0,4)|0;g=r[e+36>>0]|0;n=Os(s[e+35>>0]|0|0,0,8)|0;ne=T;g=g&255;l=Os(g|0,0,16)|0;ne=Cs(n|pe|l|0,ne|T|0,1)|0;l=Os(s[e+37>>0]|0|0,0,8)|0;pe=T;n=Os(s[e+38>>0]|0|0,0,16)|0;pe=pe|T;Fe=s[e+39>>0]|0;ee=Os(Fe|0,0,24)|0;pe=Cs(l|g|n|ee|0,pe|T|0,6)|0;ee=r[e+41>>0]|0;n=Os(s[e+40>>0]|0|0,0,8)|0;g=T;ee=Os(ee&255|0,0,16)|0;g=Cs(n|Fe|ee|0,g|T|0,3)|0;ee=T;Fe=r[e+44>>0]|0;n=s[e+42>>0]|0;l=Os(s[e+43>>0]|0|0,0,8)|0;j=T;Fe=Fe&255;y=Os(Fe|0,0,16)|0;S=Os(s[e+45>>0]|0|0,0,8)|0;oe=T;Oe=Os(s[e+46>>0]|0|0,0,16)|0;oe=oe|T;st=s[e+47>>0]|0;U=Os(st|0,0,24)|0;oe=Cs(S|Fe|Oe|U|0,oe|T|0,5)|0;U=r[e+49>>0]|0;Oe=Os(s[e+48>>0]|0|0,0,8)|0;Fe=T;U=U&255;S=Os(U|0,0,16)|0;Fe=Cs(Oe|st|S|0,Fe|T|0,2)|0;Fe=Fe&2097151;S=Os(s[e+50>>0]|0|0,0,8)|0;st=T;Oe=Os(s[e+51>>0]|0|0,0,16)|0;st=st|T;le=s[e+52>>0]|0;L=Os(le|0,0,24)|0;st=Cs(S|U|Oe|L|0,st|T|0,7)|0;st=st&2097151;L=Os(s[e+53>>0]|0|0,0,8)|0;Oe=T;U=Os(s[e+54>>0]|0|0,0,16)|0;Oe=Oe|T;S=s[e+55>>0]|0;W=Os(S|0,0,24)|0;Oe=Cs(L|le|U|W|0,Oe|T|0,4)|0;Oe=Oe&2097151;W=r[e+57>>0]|0;U=Os(s[e+56>>0]|0|0,0,8)|0;le=T;W=W&255;L=Os(W|0,0,16)|0;le=Cs(U|S|L|0,le|T|0,1)|0;le=le&2097151;L=Os(s[e+58>>0]|0|0,0,8)|0;S=T;U=Os(s[e+59>>0]|0|0,0,16)|0;S=S|T;he=s[e+60>>0]|0;ge=Os(he|0,0,24)|0;S=Cs(L|W|U|ge|0,S|T|0,6)|0;S=S&2097151;ge=Os(s[e+61>>0]|0|0,0,8)|0;U=T;W=Os(s[e+62>>0]|0|0,0,16)|0;U=U|T;L=Os(s[e+63>>0]|0|0,0,24)|0;U=Cs(ge|he|W|L|0,U|T|0,3)|0;L=T;W=Es(U|0,L|0,666643,0)|0;he=T;ge=Es(U|0,L|0,470296,0)|0;ae=T;_=Es(U|0,L|0,654183,0)|0;O=T;we=Es(U|0,L|0,-997805,-1)|0;Te=T;d=Es(U|0,L|0,136657,0)|0;Se=T;L=Es(U|0,L|0,-683901,-1)|0;j=ks(L|0,T|0,l|n|y&2031616|0,j|0)|0;y=T;n=Es(S|0,0,666643,0)|0;l=T;L=Es(S|0,0,470296,0)|0;U=T;Ye=Es(S|0,0,654183,0)|0;M=T;Y=Es(S|0,0,-997805,-1)|0;K=T;ke=Es(S|0,0,136657,0)|0;me=T;S=Es(S|0,0,-683901,-1)|0;G=T;Re=Es(le|0,0,666643,0)|0;Ee=T;se=Es(le|0,0,470296,0)|0;Le=T;Me=Es(le|0,0,654183,0)|0;Pe=T;nt=Es(le|0,0,-997805,-1)|0;We=T;u=Es(le|0,0,136657,0)|0;m=T;le=Es(le|0,0,-683901,-1)|0;pe=ks(le|0,T|0,pe&2097151|0,0)|0;me=ks(pe|0,T|0,ke|0,me|0)|0;Te=ks(me|0,T|0,we|0,Te|0)|0;we=T;me=Es(Oe|0,0,666643,0)|0;ke=T;pe=Es(Oe|0,0,470296,0)|0;le=T;be=Es(Oe|0,0,654183,0)|0;X=T;Be=Es(Oe|0,0,-997805,-1)|0;De=T;it=Es(Oe|0,0,136657,0)|0;rt=T;Oe=Es(Oe|0,0,-683901,-1)|0;Ce=T;i=Es(st|0,0,666643,0)|0;I=T;Ge=Es(st|0,0,470296,0)|0;He=T;ze=Es(st|0,0,654183,0)|0;qe=T;Xe=Es(st|0,0,-997805,-1)|0;ue=T;je=Es(st|0,0,136657,0)|0;Ne=T;st=Es(st|0,0,-683901,-1)|0;ot=ks(st|0,T|0,ot&2097151|0,0)|0;rt=ks(ot|0,T|0,it|0,rt|0)|0;We=ks(rt|0,T|0,nt|0,We|0)|0;M=ks(We|0,T|0,Ye|0,M|0)|0;ae=ks(M|0,T|0,ge|0,ae|0)|0;ge=T;M=Es(Fe|0,0,666643,0)|0;Ie=ks(M|0,T|0,Ie&2097151|0,0)|0;M=T;Ye=Es(Fe|0,0,470296,0)|0;We=T;nt=Es(Fe|0,0,654183,0)|0;Ze=ks(nt|0,T|0,tt|et|$e&2031616|0,Ze|0)|0;He=ks(Ze|0,T|0,Ge|0,He|0)|0;ke=ks(He|0,T|0,me|0,ke|0)|0;me=T;He=Es(Fe|0,0,-997805,-1)|0;Ge=T;Ze=Es(Fe|0,0,136657,0)|0;Je=ks(Ze|0,T|0,Je&2097151|0,0)|0;ue=ks(Je|0,T|0,Xe|0,ue|0)|0;X=ks(ue|0,T|0,be|0,X|0)|0;Le=ks(X|0,T|0,se|0,Le|0)|0;l=ks(Le|0,T|0,n|0,l|0)|0;n=T;Fe=Es(Fe|0,0,-683901,-1)|0;Le=T;se=ks(Ie|0,M|0,1048576,0)|0;X=T;be=Cs(se|0,X|0,21)|0;ue=T;Ve=ks(Ye|0,We|0,Qe|0,Ve|0)|0;ue=ks(Ve|0,T|0,be|0,ue|0)|0;I=ks(ue|0,T|0,i|0,I|0)|0;i=T;X=Ss(Ie|0,M|0,se&-2097152|0,X&2047|0)|0;se=T;M=ks(ke|0,me|0,1048576,0)|0;Ie=T;ue=Cs(M|0,Ie|0,21)|0;be=T;Ke=ks(He|0,Ge|0,Ke&2097151|0,0)|0;qe=ks(Ke|0,T|0,ze|0,qe|0)|0;le=ks(qe|0,T|0,pe|0,le|0)|0;Ee=ks(le|0,T|0,Re|0,Ee|0)|0;be=ks(Ee|0,T|0,ue|0,be|0)|0;ue=T;Ee=ks(l|0,n|0,1048576,0)|0;Re=T;le=Rs(Ee|0,Re|0,21)|0;pe=T;Ue=ks(Fe|0,Le|0,Ue&2097151|0,0)|0;Ne=ks(Ue|0,T|0,je|0,Ne|0)|0;De=ks(Ne|0,T|0,Be|0,De|0)|0;Pe=ks(De|0,T|0,Me|0,Pe|0)|0;U=ks(Pe|0,T|0,L|0,U|0)|0;he=ks(U|0,T|0,W|0,he|0)|0;pe=ks(he|0,T|0,le|0,pe|0)|0;le=T;he=ks(ae|0,ge|0,1048576,0)|0;W=T;U=Rs(he|0,W|0,21)|0;L=T;ne=ks(Oe|0,Ce|0,ne&2097151|0,0)|0;m=ks(ne|0,T|0,u|0,m|0)|0;K=ks(m|0,T|0,Y|0,K|0)|0;O=ks(K|0,T|0,_|0,O|0)|0;L=ks(O|0,T|0,U|0,L|0)|0;U=T;W=Ss(ae|0,ge|0,he&-2097152|0,W|0)|0;he=T;ge=ks(Te|0,we|0,1048576,0)|0;ae=T;O=Rs(ge|0,ae|0,21)|0;_=T;ee=ks(S|0,G|0,g|0,ee|0)|0;Se=ks(ee|0,T|0,d|0,Se|0)|0;_=ks(Se|0,T|0,O|0,_|0)|0;O=T;ae=Ss(Te|0,we|0,ge&-2097152|0,ae|0)|0;ge=T;we=ks(j|0,y|0,1048576,0)|0;Te=T;Se=Rs(we|0,Te|0,21)|0;oe=ks(Se|0,T|0,oe&2097151|0,0)|0;Se=T;Te=Ss(j|0,y|0,we&-2097152|0,Te|0)|0;we=T;y=ks(I|0,i|0,1048576,0)|0;j=T;d=Cs(y|0,j|0,21)|0;ee=T;j=Ss(I|0,i|0,y&-2097152|0,j|0)|0;y=T;i=ks(be|0,ue|0,1048576,0)|0;I=T;g=Rs(i|0,I|0,21)|0;G=T;I=Ss(be|0,ue|0,i&-2097152|0,I|0)|0;i=T;ue=ks(pe|0,le|0,1048576,0)|0;be=T;S=Rs(ue|0,be|0,21)|0;he=ks(S|0,T|0,W|0,he|0)|0;W=T;be=Ss(pe|0,le|0,ue&-2097152|0,be|0)|0;ue=T;le=ks(L|0,U|0,1048576,0)|0;pe=T;S=Rs(le|0,pe|0,21)|0;ge=ks(S|0,T|0,ae|0,ge|0)|0;ae=T;pe=Ss(L|0,U|0,le&-2097152|0,pe|0)|0;le=T;U=ks(_|0,O|0,1048576,0)|0;L=T;S=Rs(U|0,L|0,21)|0;we=ks(S|0,T|0,Te|0,we|0)|0;Te=T;L=Ss(_|0,O|0,U&-2097152|0,L|0)|0;U=T;O=Es(oe|0,Se|0,666643,0)|0;ye=ks(O|0,T|0,ye&2097151|0,0)|0;O=T;_=Es(oe|0,Se|0,470296,0)|0;_=ks(X|0,se|0,_|0,T|0)|0;se=T;X=Es(oe|0,Se|0,654183,0)|0;X=ks(j|0,y|0,X|0,T|0)|0;y=T;j=Es(oe|0,Se|0,-997805,-1)|0;S=T;K=Es(oe|0,Se|0,136657,0)|0;K=ks(I|0,i|0,K|0,T|0)|0;i=T;Se=Es(oe|0,Se|0,-683901,-1)|0;oe=T;G=ks(l|0,n|0,g|0,G|0)|0;Re=Ss(G|0,T|0,Ee&-2097152|0,Re|0)|0;oe=ks(Re|0,T|0,Se|0,oe|0)|0;Se=T;Re=Es(we|0,Te|0,666643,0)|0;z=ks(Re|0,T|0,z&2097151|0,0)|0;Re=T;Ee=Es(we|0,Te|0,470296,0)|0;Ee=ks(ye|0,O|0,Ee|0,T|0)|0;O=T;ye=Es(we|0,Te|0,654183,0)|0;ye=ks(_|0,se|0,ye|0,T|0)|0;se=T;_=Es(we|0,Te|0,-997805,-1)|0;_=ks(X|0,y|0,_|0,T|0)|0;y=T;X=Es(we|0,Te|0,136657,0)|0;G=T;Te=Es(we|0,Te|0,-683901,-1)|0;Te=ks(K|0,i|0,Te|0,T|0)|0;i=T;K=Es(L|0,U|0,666643,0)|0;w=ks(K|0,T|0,w&2097151|0,0)|0;K=T;we=Es(L|0,U|0,470296,0)|0;we=ks(z|0,Re|0,we|0,T|0)|0;Re=T;z=Es(L|0,U|0,654183,0)|0;z=ks(Ee|0,O|0,z|0,T|0)|0;O=T;Ee=Es(L|0,U|0,-997805,-1)|0;Ee=ks(ye|0,se|0,Ee|0,T|0)|0;se=T;ye=Es(L|0,U|0,136657,0)|0;ye=ks(_|0,y|0,ye|0,T|0)|0;y=T;U=Es(L|0,U|0,-683901,-1)|0;L=T;ee=ks(ke|0,me|0,d|0,ee|0)|0;Ie=Ss(ee|0,T|0,M&-2097152|0,Ie|0)|0;S=ks(Ie|0,T|0,j|0,S|0)|0;G=ks(S|0,T|0,X|0,G|0)|0;L=ks(G|0,T|0,U|0,L|0)|0;U=T;G=Es(ge|0,ae|0,666643,0)|0;X=T;S=Es(ge|0,ae|0,470296,0)|0;j=T;Ie=Es(ge|0,ae|0,654183,0)|0;M=T;ee=Es(ge|0,ae|0,-997805,-1)|0;d=T;me=Es(ge|0,ae|0,136657,0)|0;me=ks(Ee|0,se|0,me|0,T|0)|0;se=T;ae=Es(ge|0,ae|0,-683901,-1)|0;ae=ks(ye|0,y|0,ae|0,T|0)|0;y=T;ye=Es(pe|0,le|0,666643,0)|0;ge=T;Ee=Es(pe|0,le|0,470296,0)|0;ke=T;_=Es(pe|0,le|0,654183,0)|0;g=T;n=Es(pe|0,le|0,-997805,-1)|0;l=T;I=Es(pe|0,le|0,136657,0)|0;Y=T;le=Es(pe|0,le|0,-683901,-1)|0;le=ks(me|0,se|0,le|0,T|0)|0;se=T;me=Es(he|0,W|0,666643,0)|0;ve=ks(me|0,T|0,P|Ae|_e&2031616|0,ve|0)|0;_e=T;Ae=Es(he|0,W|0,470296,0)|0;P=T;me=Es(he|0,W|0,654183,0)|0;xe=ks(me|0,T|0,xe&2097151|0,0)|0;X=ks(xe|0,T|0,G|0,X|0)|0;ke=ks(X|0,T|0,Ee|0,ke|0)|0;Ee=T;X=Es(he|0,W|0,-997805,-1)|0;G=T;xe=Es(he|0,W|0,136657,0)|0;xe=ks(we|0,Re|0,xe|0,T|0)|0;M=ks(xe|0,T|0,Ie|0,M|0)|0;l=ks(M|0,T|0,n|0,l|0)|0;n=T;W=Es(he|0,W|0,-683901,-1)|0;he=T;M=ks(ve|0,_e|0,1048576,0)|0;Ie=T;xe=Rs(M|0,Ie|0,21)|0;Re=T;te=ks(Ae|0,P|0,te&2097151|0,0)|0;ge=ks(te|0,T|0,ye|0,ge|0)|0;Re=ks(ge|0,T|0,xe|0,Re|0)|0;xe=T;Ie=Ss(ve|0,_e|0,M&-2097152|0,Ie|0)|0;M=T;_e=ks(ke|0,Ee|0,1048576,0)|0;ve=T;ge=Rs(_e|0,ve|0,21)|0;ye=T;G=ks(w|0,K|0,X|0,G|0)|0;j=ks(G|0,T|0,S|0,j|0)|0;g=ks(j|0,T|0,_|0,g|0)|0;ye=ks(g|0,T|0,ge|0,ye|0)|0;ge=T;g=ks(l|0,n|0,1048576,0)|0;_=T;j=Rs(g|0,_|0,21)|0;S=T;he=ks(z|0,O|0,W|0,he|0)|0;d=ks(he|0,T|0,ee|0,d|0)|0;Y=ks(d|0,T|0,I|0,Y|0)|0;S=ks(Y|0,T|0,j|0,S|0)|0;j=T;Y=ks(le|0,se|0,1048576,0)|0;I=T;d=Rs(Y|0,I|0,21)|0;d=ks(ae|0,y|0,d|0,T|0)|0;y=T;I=Ss(le|0,se|0,Y&-2097152|0,I|0)|0;Y=T;se=ks(L|0,U|0,1048576,0)|0;le=T;ae=Rs(se|0,le|0,21)|0;ae=ks(Te|0,i|0,ae|0,T|0)|0;i=T;le=Ss(L|0,U|0,se&-2097152|0,le|0)|0;se=T;U=ks(oe|0,Se|0,1048576,0)|0;L=T;Te=Rs(U|0,L|0,21)|0;Te=ks(be|0,ue|0,Te|0,T|0)|0;ue=T;L=Ss(oe|0,Se|0,U&-2097152|0,L|0)|0;U=T;Se=ks(Re|0,xe|0,1048576,0)|0;oe=T;be=Rs(Se|0,oe|0,21)|0;ee=T;he=ks(ye|0,ge|0,1048576,0)|0;W=T;O=Rs(he|0,W|0,21)|0;z=T;G=ks(S|0,j|0,1048576,0)|0;X=T;K=Rs(G|0,X|0,21)|0;K=ks(I|0,Y|0,K|0,T|0)|0;Y=T;I=ks(d|0,y|0,1048576,0)|0;w=T;te=Rs(I|0,w|0,21)|0;te=ks(le|0,se|0,te|0,T|0)|0;se=T;w=Ss(d|0,y|0,I&-2097152|0,w|0)|0;I=T;y=ks(ae|0,i|0,1048576,0)|0;d=T;le=Rs(y|0,d|0,21)|0;le=ks(L|0,U|0,le|0,T|0)|0;U=T;d=Ss(ae|0,i|0,y&-2097152|0,d|0)|0;y=T;i=ks(Te|0,ue|0,1048576,0)|0;ae=T;L=Rs(i|0,ae|0,21)|0;P=T;ae=Ss(Te|0,ue|0,i&-2097152|0,ae|0)|0;i=T;ue=Es(L|0,P|0,666643,0)|0;ue=ks(Ie|0,M|0,ue|0,T|0)|0;M=T;Ie=Es(L|0,P|0,470296,0)|0;Te=T;Ae=Es(L|0,P|0,654183,0)|0;we=T;me=Es(L|0,P|0,-997805,-1)|0;pe=T;m=Es(L|0,P|0,136657,0)|0;u=T;P=Es(L|0,P|0,-683901,-1)|0;L=T;M=Rs(ue|0,M|0,21)|0;ne=T;Te=ks(Re|0,xe|0,Ie|0,Te|0)|0;oe=Ss(Te|0,T|0,Se&-2097152|0,oe|0)|0;ne=ks(oe|0,T|0,M|0,ne|0)|0;M=Rs(ne|0,T|0,21)|0;oe=T;we=ks(ke|0,Ee|0,Ae|0,we|0)|0;ve=Ss(we|0,T|0,_e&-2097152|0,ve|0)|0;ee=ks(ve|0,T|0,be|0,ee|0)|0;oe=ks(ee|0,T|0,M|0,oe|0)|0;M=Rs(oe|0,T|0,21)|0;ee=T;pe=ks(ye|0,ge|0,me|0,pe|0)|0;W=Ss(pe|0,T|0,he&-2097152|0,W|0)|0;ee=ks(W|0,T|0,M|0,ee|0)|0;M=Rs(ee|0,T|0,21)|0;W=T;u=ks(l|0,n|0,m|0,u|0)|0;_=Ss(u|0,T|0,g&-2097152|0,_|0)|0;z=ks(_|0,T|0,O|0,z|0)|0;W=ks(z|0,T|0,M|0,W|0)|0;M=Rs(W|0,T|0,21)|0;z=T;L=ks(S|0,j|0,P|0,L|0)|0;X=Ss(L|0,T|0,G&-2097152|0,X|0)|0;z=ks(X|0,T|0,M|0,z|0)|0;M=Rs(z|0,T|0,21)|0;M=ks(K|0,Y|0,M|0,T|0)|0;Y=Rs(M|0,T|0,21)|0;I=ks(Y|0,T|0,w|0,I|0)|0;w=Rs(I|0,T|0,21)|0;w=ks(te|0,se|0,w|0,T|0)|0;se=Rs(w|0,T|0,21)|0;y=ks(se|0,T|0,d|0,y|0)|0;d=Rs(y|0,T|0,21)|0;d=ks(le|0,U|0,d|0,T|0)|0;U=Rs(d|0,T|0,21)|0;i=ks(U|0,T|0,ae|0,i|0)|0;ae=Rs(i|0,T|0,21)|0;U=T;le=Es(ae|0,U|0,666643,0)|0;ue=ks(le|0,T|0,ue&2097151|0,0)|0;le=T;se=Es(ae|0,U|0,470296,0)|0;ne=ks(se|0,T|0,ne&2097151|0,0)|0;se=T;te=Es(ae|0,U|0,654183,0)|0;oe=ks(te|0,T|0,oe&2097151|0,0)|0;te=T;Y=Es(ae|0,U|0,-997805,-1)|0;ee=ks(Y|0,T|0,ee&2097151|0,0)|0;Y=T;K=Es(ae|0,U|0,136657,0)|0;W=ks(K|0,T|0,W&2097151|0,0)|0;K=T;U=Es(ae|0,U|0,-683901,-1)|0;z=ks(U|0,T|0,z&2097151|0,0)|0;U=T;ae=Rs(ue|0,le|0,21)|0;ae=ks(ne|0,se|0,ae|0,T|0)|0;se=T;ne=Rs(ae|0,se|0,21)|0;ne=ks(oe|0,te|0,ne|0,T|0)|0;te=T;oe=ae&2097151;X=Rs(ne|0,te|0,21)|0;X=ks(ee|0,Y|0,X|0,T|0)|0;Y=T;ee=ne&2097151;G=Rs(X|0,Y|0,21)|0;G=ks(W|0,K|0,G|0,T|0)|0;K=T;W=X&2097151;L=Rs(G|0,K|0,21)|0;L=ks(z|0,U|0,L|0,T|0)|0;U=T;z=G&2097151;P=Rs(L|0,U|0,21)|0;M=ks(P|0,T|0,M&2097151|0,0)|0;P=T;j=L&2097151;S=Rs(M|0,P|0,21)|0;I=ks(S|0,T|0,I&2097151|0,0)|0;S=T;O=M&2097151;_=Rs(I|0,S|0,21)|0;w=ks(_|0,T|0,w&2097151|0,0)|0;_=T;g=Rs(w|0,_|0,21)|0;y=ks(g|0,T|0,y&2097151|0,0)|0;g=T;u=Rs(y|0,g|0,21)|0;d=ks(u|0,T|0,d&2097151|0,0)|0;u=T;m=y&2097151;n=Rs(d|0,u|0,21)|0;i=ks(n|0,T|0,i&2097151|0,0)|0;n=T;l=d&2097151;r[e>>0]=ue;e=Cs(ue|0,le|0,8)|0;r[de>>0]=e;e=Cs(ue|0,le|0,16)|0;le=Os(oe|0,0,5)|0;r[fe>>0]=le|e&31;e=Cs(ae|0,se|0,3)|0;r[ce>>0]=e;e=Cs(ae|0,se|0,11)|0;r[ie>>0]=e;e=Cs(oe|0,0,19)|0;oe=T;ie=Os(ee|0,0,2)|0;r[re>>0]=ie|e;e=Cs(ne|0,te|0,6)|0;r[$>>0]=e;e=Cs(ee|0,0,14)|0;ee=T;$=Os(W|0,0,7)|0;r[Z>>0]=$|e;e=Cs(X|0,Y|0,1)|0;r[J>>0]=e;e=Cs(X|0,Y|0,9)|0;r[Q>>0]=e;e=Cs(W|0,0,17)|0;W=T;Q=Os(z|0,0,4)|0;r[V>>0]=Q|e;e=Cs(G|0,K|0,4)|0;r[H>>0]=e;e=Cs(G|0,K|0,12)|0;r[q>>0]=e;e=Cs(z|0,0,20)|0;z=T;q=Os(j|0,0,1)|0;r[F>>0]=q|e;e=Cs(L|0,U|0,7)|0;r[N>>0]=e;e=Cs(j|0,0,15)|0;j=T;N=Os(O|0,0,6)|0;r[B>>0]=N|e;e=Cs(M|0,P|0,2)|0;r[D>>0]=e;e=Cs(M|0,P|0,10)|0;r[C>>0]=e;e=Cs(O|0,0,18)|0;O=T;C=Os(I|0,S|0,3)|0;r[R>>0]=C|e;e=Cs(I|0,S|0,5)|0;r[x>>0]=e;e=Cs(I|0,S|0,13)|0;r[k>>0]=e;r[E>>0]=w;e=Cs(w|0,_|0,8)|0;r[A>>0]=e;e=Cs(w|0,_|0,16)|0;_=Os(m|0,0,5)|0;r[v>>0]=_|e&31;e=Cs(y|0,g|0,3)|0;r[b>>0]=e;e=Cs(y|0,g|0,11)|0;r[p>>0]=e;e=Cs(m|0,0,19)|0;m=T;p=Os(l|0,0,2)|0;r[h>>0]=p|e;e=Cs(d|0,u|0,6)|0;r[f>>0]=e;e=Cs(l|0,0,14)|0;l=T;f=Os(i|0,n|0,7)|0;r[c>>0]=f|e;e=Cs(i|0,n|0,1)|0;r[a>>0]=e;e=Cs(i|0,n|0,9)|0;r[o>>0]=e;e=Rs(i|0,n|0,17)|0;r[t>>0]=e;return}function ti(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var o=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ct=0,ft=0,lt=0,ut=0,dt=0,ht=0,pt=0,mt=0,gt=0,yt=0,bt=0,vt=0,_t=0,wt=0,At=0,Et=0,kt=0,St=0,Tt=0,It=0,xt=0,Rt=0,Ct=0,Ot=0,Pt=0,Mt=0,Dt=0,Bt=0,Nt=0,jt=0,Ut=0,Lt=0,Ft=0,qt=0,zt=0,Kt=0,Gt=0,Ht=0,Vt=0,Qt=0,Wt=0,Yt=0,Xt=0,Jt=0,Zt=0,$t=0,en=0,tn=0,nn=0,rn=0,on=0,sn=0,an=0,cn=0,fn=0,ln=0,un=0,dn=0,hn=0,pn=0,mn=0,gn=0,yn=0,bn=0,vn=0,_n=0,wn=0,An=0;ot=r[t+2>>0]|0;pe=s[t>>0]|0;pt=Os(s[t+1>>0]|0|0,0,8)|0;Ue=T;ot=ot&255;Le=Os(ot|0,0,16)|0;Le=pt|pe|Le&2031616;pe=Os(s[t+3>>0]|0|0,0,8)|0;pt=T;$e=Os(s[t+4>>0]|0|0,0,16)|0;pt=pt|T;ht=s[t+5>>0]|0;L=Os(ht|0,0,24)|0;pt=Cs(pe|ot|$e|L|0,pt|T|0,5)|0;pt=pt&2097151;L=r[t+7>>0]|0;$e=Os(s[t+6>>0]|0|0,0,8)|0;ot=T;L=L&255;pe=Os(L|0,0,16)|0;ot=Cs($e|ht|pe|0,ot|T|0,2)|0;ot=ot&2097151;pe=Os(s[t+8>>0]|0|0,0,8)|0;ht=T;$e=Os(s[t+9>>0]|0|0,0,16)|0;ht=ht|T;G=s[t+10>>0]|0;B=Os(G|0,0,24)|0;ht=Cs(pe|L|$e|B|0,ht|T|0,7)|0;ht=ht&2097151;B=Os(s[t+11>>0]|0|0,0,8)|0;$e=T;L=Os(s[t+12>>0]|0|0,0,16)|0;$e=$e|T;pe=s[t+13>>0]|0;m=Os(pe|0,0,24)|0;$e=Cs(B|G|L|m|0,$e|T|0,4)|0;$e=$e&2097151;m=r[t+15>>0]|0;L=Os(s[t+14>>0]|0|0,0,8)|0;G=T;m=m&255;B=Os(m|0,0,16)|0;G=Cs(L|pe|B|0,G|T|0,1)|0;G=G&2097151;B=Os(s[t+16>>0]|0|0,0,8)|0;pe=T;L=Os(s[t+17>>0]|0|0,0,16)|0;pe=pe|T;N=s[t+18>>0]|0;u=Os(N|0,0,24)|0;pe=Cs(B|m|L|u|0,pe|T|0,6)|0;pe=pe&2097151;u=r[t+20>>0]|0;L=Os(s[t+19>>0]|0|0,0,8)|0;m=T;u=Os(u&255|0,0,16)|0;m=Cs(L|N|u|0,m|T|0,3)|0;u=T;N=r[t+23>>0]|0;L=s[t+21>>0]|0;B=Os(s[t+22>>0]|0|0,0,8)|0;K=T;N=N&255;C=Os(N|0,0,16)|0;C=B|L|C&2031616;L=Os(s[t+24>>0]|0|0,0,8)|0;B=T;Je=Os(s[t+25>>0]|0|0,0,16)|0;B=B|T;ge=s[t+26>>0]|0;E=Os(ge|0,0,24)|0;B=Cs(L|N|Je|E|0,B|T|0,5)|0;B=B&2097151;E=r[t+28>>0]|0;Je=Os(s[t+27>>0]|0|0,0,8)|0;N=T;E=E&255;L=Os(E|0,0,16)|0;N=Cs(Je|ge|L|0,N|T|0,2)|0;N=N&2097151;L=Os(s[t+29>>0]|0|0,0,8)|0;ge=T;Je=Os(s[t+30>>0]|0|0,0,16)|0;ge=ge|T;ye=Os(s[t+31>>0]|0|0,0,24)|0;ge=Cs(L|E|Je|ye|0,ge|T|0,7)|0;ye=T;Je=r[n+2>>0]|0;E=s[n>>0]|0;L=Os(s[n+1>>0]|0|0,0,8)|0;Et=T;Je=Je&255;At=Os(Je|0,0,16)|0;At=L|E|At&2031616;E=Os(s[n+3>>0]|0|0,0,8)|0;L=T;l=Os(s[n+4>>0]|0|0,0,16)|0;L=L|T;b=s[n+5>>0]|0;bn=Os(b|0,0,24)|0;L=Cs(E|Je|l|bn|0,L|T|0,5)|0;L=L&2097151;bn=r[n+7>>0]|0;l=Os(s[n+6>>0]|0|0,0,8)|0;Je=T;bn=bn&255;E=Os(bn|0,0,16)|0;Je=Cs(l|b|E|0,Je|T|0,2)|0;Je=Je&2097151;E=Os(s[n+8>>0]|0|0,0,8)|0;b=T;l=Os(s[n+9>>0]|0|0,0,16)|0;b=b|T;d=s[n+10>>0]|0;A=Os(d|0,0,24)|0;b=Cs(E|bn|l|A|0,b|T|0,7)|0;b=b&2097151;A=Os(s[n+11>>0]|0|0,0,8)|0;l=T;bn=Os(s[n+12>>0]|0|0,0,16)|0;l=l|T;E=s[n+13>>0]|0;An=Os(E|0,0,24)|0;l=Cs(A|d|bn|An|0,l|T|0,4)|0;l=l&2097151;An=r[n+15>>0]|0;bn=Os(s[n+14>>0]|0|0,0,8)|0;d=T;An=An&255;A=Os(An|0,0,16)|0;d=Cs(bn|E|A|0,d|T|0,1)|0;d=d&2097151;A=Os(s[n+16>>0]|0|0,0,8)|0;E=T;bn=Os(s[n+17>>0]|0|0,0,16)|0;E=E|T;_t=s[n+18>>0]|0;Z=Os(_t|0,0,24)|0;E=Cs(A|An|bn|Z|0,E|T|0,6)|0;E=E&2097151;Z=r[n+20>>0]|0;bn=Os(s[n+19>>0]|0|0,0,8)|0;An=T;Z=Os(Z&255|0,0,16)|0;An=Cs(bn|_t|Z|0,An|T|0,3)|0;Z=T;_t=r[n+23>>0]|0;bn=s[n+21>>0]|0;A=Os(s[n+22>>0]|0|0,0,8)|0;ke=T;_t=_t&255;Se=Os(_t|0,0,16)|0;Se=A|bn|Se&2031616;bn=Os(s[n+24>>0]|0|0,0,8)|0;A=T;Me=Os(s[n+25>>0]|0|0,0,16)|0;A=A|T;Q=s[n+26>>0]|0;vn=Os(Q|0,0,24)|0;A=Cs(bn|_t|Me|vn|0,A|T|0,5)|0;A=A&2097151;vn=r[n+28>>0]|0;Me=Os(s[n+27>>0]|0|0,0,8)|0;_t=T;vn=vn&255;bn=Os(vn|0,0,16)|0;_t=Cs(Me|Q|bn|0,_t|T|0,2)|0;_t=_t&2097151;bn=Os(s[n+29>>0]|0|0,0,8)|0;Q=T;Me=Os(s[n+30>>0]|0|0,0,16)|0;Q=Q|T;V=Os(s[n+31>>0]|0|0,0,24)|0;Q=Cs(bn|vn|Me|V|0,Q|T|0,7)|0;V=T;Me=r[i+2>>0]|0;vn=s[i>>0]|0;bn=Os(s[i+1>>0]|0|0,0,8)|0;Re=T;Me=Me&255;_n=Os(Me|0,0,16)|0;Ge=Os(s[i+3>>0]|0|0,0,8)|0;ve=T;Ie=Os(s[i+4>>0]|0|0,0,16)|0;ve=ve|T;Ee=s[i+5>>0]|0;g=Os(Ee|0,0,24)|0;ve=Cs(Ge|Me|Ie|g|0,ve|T|0,5)|0;g=r[i+7>>0]|0;Ie=Os(s[i+6>>0]|0|0,0,8)|0;Me=T;g=g&255;Ge=Os(g|0,0,16)|0;Me=Cs(Ie|Ee|Ge|0,Me|T|0,2)|0;Ge=Os(s[i+8>>0]|0|0,0,8)|0;Ee=T;Ie=Os(s[i+9>>0]|0|0,0,16)|0;Ee=Ee|T;De=s[i+10>>0]|0;_e=Os(De|0,0,24)|0;Ee=Cs(Ge|g|Ie|_e|0,Ee|T|0,7)|0;_e=Os(s[i+11>>0]|0|0,0,8)|0;Ie=T;g=Os(s[i+12>>0]|0|0,0,16)|0;Ie=Ie|T;Ge=s[i+13>>0]|0;ue=Os(Ge|0,0,24)|0;Ie=Cs(_e|De|g|ue|0,Ie|T|0,4)|0;ue=r[i+15>>0]|0;g=Os(s[i+14>>0]|0|0,0,8)|0;De=T;ue=ue&255;_e=Os(ue|0,0,16)|0;De=Cs(g|Ge|_e|0,De|T|0,1)|0;_e=Os(s[i+16>>0]|0|0,0,8)|0;Ge=T;g=Os(s[i+17>>0]|0|0,0,16)|0;Ge=Ge|T;te=s[i+18>>0]|0;le=Os(te|0,0,24)|0;Ge=Cs(_e|ue|g|le|0,Ge|T|0,6)|0;le=r[i+20>>0]|0;g=Os(s[i+19>>0]|0|0,0,8)|0;ue=T;le=Os(le&255|0,0,16)|0;ue=Cs(g|te|le|0,ue|T|0,3)|0;le=T;te=r[i+23>>0]|0;g=s[i+21>>0]|0;_e=Os(s[i+22>>0]|0|0,0,8)|0;X=T;te=te&255;J=Os(te|0,0,16)|0;R=Os(s[i+24>>0]|0|0,0,8)|0;we=T;xe=Os(s[i+25>>0]|0|0,0,16)|0;we=we|T;rt=s[i+26>>0]|0;j=Os(rt|0,0,24)|0;we=Cs(R|te|xe|j|0,we|T|0,5)|0;j=r[i+28>>0]|0;xe=Os(s[i+27>>0]|0|0,0,8)|0;te=T;j=j&255;R=Os(j|0,0,16)|0;te=Cs(xe|rt|R|0,te|T|0,2)|0;R=Os(s[i+29>>0]|0|0,0,8)|0;rt=T;xe=Os(s[i+30>>0]|0|0,0,16)|0;rt=rt|T;ft=Os(s[i+31>>0]|0|0,0,24)|0;rt=Cs(R|j|xe|ft|0,rt|T|0,7)|0;ft=T;xe=Es(At|0,Et|0,Le|0,Ue|0)|0;xe=ks(bn|vn|_n&2031616|0,Re|0,xe|0,T|0)|0;Re=T;_n=Es(L|0,0,Le|0,Ue|0)|0;vn=T;bn=Es(At|0,Et|0,pt|0,0)|0;j=T;R=Es(Je|0,0,Le|0,Ue|0)|0;Pe=T;re=Es(L|0,0,pt|0,0)|0;hn=T;Ae=Es(At|0,Et|0,ot|0,0)|0;Ae=ks(re|0,hn|0,Ae|0,T|0)|0;Pe=ks(Ae|0,T|0,R|0,Pe|0)|0;Me=ks(Pe|0,T|0,Me&2097151|0,0)|0;Pe=T;R=Es(b|0,0,Le|0,Ue|0)|0;Ae=T;hn=Es(Je|0,0,pt|0,0)|0;re=T;yn=Es(L|0,0,ot|0,0)|0;gn=T;mn=Es(At|0,Et|0,ht|0,0)|0;pn=T;H=Es(l|0,0,Le|0,Ue|0)|0;Te=T;rn=Es(b|0,0,pt|0,0)|0;Be=T;sn=Es(Je|0,0,ot|0,0)|0;x=T;an=Es(L|0,0,ht|0,0)|0;cn=T;on=Es(At|0,Et|0,$e|0,0)|0;on=ks(an|0,cn|0,on|0,T|0)|0;x=ks(on|0,T|0,sn|0,x|0)|0;Be=ks(x|0,T|0,rn|0,Be|0)|0;Te=ks(Be|0,T|0,H|0,Te|0)|0;Ie=ks(Te|0,T|0,Ie&2097151|0,0)|0;Te=T;H=Es(d|0,0,Le|0,Ue|0)|0;Be=T;rn=Es(l|0,0,pt|0,0)|0;x=T;sn=Es(b|0,0,ot|0,0)|0;on=T;cn=Es(Je|0,0,ht|0,0)|0;an=T;dn=Es(L|0,0,$e|0,0)|0;un=T;ln=Es(At|0,Et|0,G|0,0)|0;fn=T;I=Es(E|0,0,Le|0,Ue|0)|0;He=T;Gt=Es(d|0,0,pt|0,0)|0;o=T;Vt=Es(l|0,0,ot|0,0)|0;Kt=T;Wt=Es(b|0,0,ht|0,0)|0;Ht=T;Xt=Es(Je|0,0,$e|0,0)|0;Qt=T;Jt=Es(L|0,0,G|0,0)|0;Zt=T;Yt=Es(At|0,Et|0,pe|0,0)|0;Yt=ks(Jt|0,Zt|0,Yt|0,T|0)|0;Qt=ks(Yt|0,T|0,Xt|0,Qt|0)|0;Ht=ks(Qt|0,T|0,Wt|0,Ht|0)|0;Kt=ks(Ht|0,T|0,Vt|0,Kt|0)|0;o=ks(Kt|0,T|0,Gt|0,o|0)|0;He=ks(o|0,T|0,I|0,He|0)|0;Ge=ks(He|0,T|0,Ge&2097151|0,0)|0;He=T;I=Es(An|0,Z|0,Le|0,Ue|0)|0;o=T;Gt=Es(E|0,0,pt|0,0)|0;Kt=T;Vt=Es(d|0,0,ot|0,0)|0;Ht=T;Wt=Es(l|0,0,ht|0,0)|0;Qt=T;Xt=Es(b|0,0,$e|0,0)|0;Yt=T;Zt=Es(Je|0,0,G|0,0)|0;Jt=T;nn=Es(L|0,0,pe|0,0)|0;tn=T;en=Es(At|0,Et|0,m|0,u|0)|0;$t=T;ee=Es(Se|0,ke|0,Le|0,Ue|0)|0;Tt=T;It=Es(An|0,Z|0,pt|0,0)|0;xt=T;Rt=Es(E|0,0,ot|0,0)|0;Ct=T;Ot=Es(d|0,0,ht|0,0)|0;Pt=T;Mt=Es(l|0,0,$e|0,0)|0;Dt=T;Bt=Es(b|0,0,G|0,0)|0;Nt=T;jt=Es(Je|0,0,pe|0,0)|0;Ut=T;Ft=Es(L|0,0,m|0,u|0)|0;qt=T;zt=Es(At|0,Et|0,C|0,K|0)|0;zt=ks(Ft|0,qt|0,zt|0,T|0)|0;Ut=ks(zt|0,T|0,jt|0,Ut|0)|0;Nt=ks(Ut|0,T|0,Bt|0,Nt|0)|0;Dt=ks(Nt|0,T|0,Mt|0,Dt|0)|0;Pt=ks(Dt|0,T|0,Ot|0,Pt|0)|0;Ct=ks(Pt|0,T|0,Rt|0,Ct|0)|0;xt=ks(Ct|0,T|0,It|0,xt|0)|0;Tt=ks(xt|0,T|0,ee|0,Tt|0)|0;X=ks(Tt|0,T|0,_e|g|J&2031616|0,X|0)|0;J=T;g=Es(A|0,0,Le|0,Ue|0)|0;_e=T;Tt=Es(Se|0,ke|0,pt|0,0)|0;ee=T;xt=Es(An|0,Z|0,ot|0,0)|0;It=T;Ct=Es(E|0,0,ht|0,0)|0;Rt=T;Pt=Es(d|0,0,$e|0,0)|0;Ot=T;Dt=Es(l|0,0,G|0,0)|0;Mt=T;Nt=Es(b|0,0,pe|0,0)|0;Bt=T;Ut=Es(Je|0,0,m|0,u|0)|0;jt=T;zt=Es(L|0,0,C|0,K|0)|0;qt=T;Ft=Es(At|0,Et|0,B|0,0)|0;Lt=T;et=Es(_t|0,0,Le|0,Ue|0)|0;ne=T;je=Es(A|0,0,pt|0,0)|0;tt=T;gt=Es(Se|0,ke|0,ot|0,0)|0;Ne=T;f=Es(An|0,Z|0,ht|0,0)|0;yt=T;ze=Es(E|0,0,$e|0,0)|0;_=T;st=Es(d|0,0,G|0,0)|0;Ke=T;i=Es(l|0,0,pe|0,0)|0;at=T;We=Es(b|0,0,m|0,u|0)|0;t=T;he=Es(Je|0,0,C|0,K|0)|0;Ye=T;kt=Es(L|0,0,B|0,0)|0;St=T;be=Es(At|0,Et|0,N|0,0)|0;be=ks(kt|0,St|0,be|0,T|0)|0;Ye=ks(be|0,T|0,he|0,Ye|0)|0;t=ks(Ye|0,T|0,We|0,t|0)|0;at=ks(t|0,T|0,i|0,at|0)|0;Ke=ks(at|0,T|0,st|0,Ke|0)|0;_=ks(Ke|0,T|0,ze|0,_|0)|0;yt=ks(_|0,T|0,f|0,yt|0)|0;Ne=ks(yt|0,T|0,gt|0,Ne|0)|0;tt=ks(Ne|0,T|0,je|0,tt|0)|0;ne=ks(tt|0,T|0,et|0,ne|0)|0;te=ks(ne|0,T|0,te&2097151|0,0)|0;ne=T;Ue=Es(Q|0,V|0,Le|0,Ue|0)|0;Le=T;et=Es(_t|0,0,pt|0,0)|0;tt=T;je=Es(A|0,0,ot|0,0)|0;Ne=T;gt=Es(Se|0,ke|0,ht|0,0)|0;yt=T;f=Es(An|0,Z|0,$e|0,0)|0;_=T;ze=Es(E|0,0,G|0,0)|0;Ke=T;st=Es(d|0,0,pe|0,0)|0;at=T;i=Es(l|0,0,m|0,u|0)|0;t=T;We=Es(b|0,0,C|0,K|0)|0;Ye=T;he=Es(Je|0,0,B|0,0)|0;be=T;St=Es(L|0,0,N|0,0)|0;kt=T;Et=Es(At|0,Et|0,ge|0,ye|0)|0;At=T;pt=Es(Q|0,V|0,pt|0,0)|0;mt=T;P=Es(_t|0,0,ot|0,0)|0;it=T;fe=Es(A|0,0,ht|0,0)|0;n=T;bt=Es(Se|0,ke|0,$e|0,0)|0;Fe=T;k=Es(An|0,Z|0,G|0,0)|0;vt=T;ie=Es(E|0,0,pe|0,0)|0;F=T;qe=Es(d|0,0,m|0,u|0)|0;oe=T;W=Es(l|0,0,C|0,K|0)|0;ce=T;U=Es(b|0,0,B|0,0)|0;Y=T;dt=Es(Je|0,0,N|0,0)|0;Xe=T;L=Es(L|0,0,ge|0,ye|0)|0;L=ks(dt|0,Xe|0,L|0,T|0)|0;Y=ks(L|0,T|0,U|0,Y|0)|0;ce=ks(Y|0,T|0,W|0,ce|0)|0;oe=ks(ce|0,T|0,qe|0,oe|0)|0;F=ks(oe|0,T|0,ie|0,F|0)|0;vt=ks(F|0,T|0,k|0,vt|0)|0;Fe=ks(vt|0,T|0,bt|0,Fe|0)|0;n=ks(Fe|0,T|0,fe|0,n|0)|0;it=ks(n|0,T|0,P|0,it|0)|0;mt=ks(it|0,T|0,pt|0,mt|0)|0;pt=T;ot=Es(Q|0,V|0,ot|0,0)|0;it=T;P=Es(_t|0,0,ht|0,0)|0;n=T;fe=Es(A|0,0,$e|0,0)|0;Fe=T;bt=Es(Se|0,ke|0,G|0,0)|0;vt=T;k=Es(An|0,Z|0,pe|0,0)|0;F=T;ie=Es(E|0,0,m|0,u|0)|0;oe=T;qe=Es(d|0,0,C|0,K|0)|0;ce=T;W=Es(l|0,0,B|0,0)|0;Y=T;U=Es(b|0,0,N|0,0)|0;L=T;Je=Es(Je|0,0,ge|0,ye|0)|0;Xe=T;ht=Es(Q|0,V|0,ht|0,0)|0;dt=T;lt=Es(_t|0,0,$e|0,0)|0;Ze=T;z=Es(A|0,0,G|0,0)|0;ut=T;$=Es(Se|0,ke|0,pe|0,0)|0;q=T;ae=Es(An|0,Z|0,m|0,u|0)|0;O=T;w=Es(E|0,0,C|0,K|0)|0;se=T;h=Es(d|0,0,B|0,0)|0;c=T;wt=Es(l|0,0,N|0,0)|0;a=T;b=Es(b|0,0,ge|0,ye|0)|0;b=ks(wt|0,a|0,b|0,T|0)|0;c=ks(b|0,T|0,h|0,c|0)|0;se=ks(c|0,T|0,w|0,se|0)|0;O=ks(se|0,T|0,ae|0,O|0)|0;q=ks(O|0,T|0,$|0,q|0)|0;ut=ks(q|0,T|0,z|0,ut|0)|0;Ze=ks(ut|0,T|0,lt|0,Ze|0)|0;dt=ks(Ze|0,T|0,ht|0,dt|0)|0;ht=T;$e=Es(Q|0,V|0,$e|0,0)|0;Ze=T;lt=Es(_t|0,0,G|0,0)|0;ut=T;z=Es(A|0,0,pe|0,0)|0;q=T;$=Es(Se|0,ke|0,m|0,u|0)|0;O=T;ae=Es(An|0,Z|0,C|0,K|0)|0;se=T;w=Es(E|0,0,B|0,0)|0;c=T;h=Es(d|0,0,N|0,0)|0;b=T;l=Es(l|0,0,ge|0,ye|0)|0;a=T;G=Es(Q|0,V|0,G|0,0)|0;wt=T;v=Es(_t|0,0,pe|0,0)|0;me=T;M=Es(A|0,0,m|0,u|0)|0;p=T;Qe=Es(Se|0,ke|0,C|0,K|0)|0;D=T;y=Es(An|0,Z|0,B|0,0)|0;Ve=T;Oe=Es(E|0,0,N|0,0)|0;S=T;d=Es(d|0,0,ge|0,ye|0)|0;d=ks(Oe|0,S|0,d|0,T|0)|0;Ve=ks(d|0,T|0,y|0,Ve|0)|0;D=ks(Ve|0,T|0,Qe|0,D|0)|0;p=ks(D|0,T|0,M|0,p|0)|0;me=ks(p|0,T|0,v|0,me|0)|0;wt=ks(me|0,T|0,G|0,wt|0)|0;G=T;pe=Es(Q|0,V|0,pe|0,0)|0;me=T;v=Es(_t|0,0,m|0,u|0)|0;p=T;M=Es(A|0,0,C|0,K|0)|0;D=T;Qe=Es(Se|0,ke|0,B|0,0)|0;Ve=T;y=Es(An|0,Z|0,N|0,0)|0;d=T;E=Es(E|0,0,ge|0,ye|0)|0;S=T;u=Es(Q|0,V|0,m|0,u|0)|0;m=T;Oe=Es(_t|0,0,C|0,K|0)|0;Ce=T;ct=Es(A|0,0,B|0,0)|0;nt=T;de=Es(Se|0,ke|0,N|0,0)|0;wn=T;Z=Es(An|0,Z|0,ge|0,ye|0)|0;Z=ks(de|0,wn|0,Z|0,T|0)|0;nt=ks(Z|0,T|0,ct|0,nt|0)|0;Ce=ks(nt|0,T|0,Oe|0,Ce|0)|0;m=ks(Ce|0,T|0,u|0,m|0)|0;u=T;K=Es(Q|0,V|0,C|0,K|0)|0;C=T;Ce=Es(_t|0,0,B|0,0)|0;Oe=T;nt=Es(A|0,0,N|0,0)|0;ct=T;ke=Es(Se|0,ke|0,ge|0,ye|0)|0;Se=T;B=Es(Q|0,V|0,B|0,0)|0;Z=T;wn=Es(_t|0,0,N|0,0)|0;de=T;A=Es(A|0,0,ge|0,ye|0)|0;A=ks(wn|0,de|0,A|0,T|0)|0;Z=ks(A|0,T|0,B|0,Z|0)|0;B=T;N=Es(Q|0,V|0,N|0,0)|0;A=T;_t=Es(_t|0,0,ge|0,ye|0)|0;_t=ks(N|0,A|0,_t|0,T|0)|0;A=T;ye=Es(Q|0,V|0,ge|0,ye|0)|0;ge=T;V=ks(xe|0,Re|0,1048576,0)|0;Q=T;N=Cs(V|0,Q|0,21)|0;de=T;j=ks(_n|0,vn|0,bn|0,j|0)|0;de=ks(j|0,T|0,N|0,de|0)|0;ve=ks(de|0,T|0,ve&2097151|0,0)|0;de=T;Q=Ss(xe|0,Re|0,V&-2097152|0,Q&4095|0)|0;V=T;Re=ks(Me|0,Pe|0,1048576,0)|0;xe=T;N=Cs(Re|0,xe|0,21)|0;j=T;pn=ks(yn|0,gn|0,mn|0,pn|0)|0;re=ks(pn|0,T|0,hn|0,re|0)|0;Ae=ks(re|0,T|0,R|0,Ae|0)|0;Ee=ks(Ae|0,T|0,Ee&2097151|0,0)|0;j=ks(Ee|0,T|0,N|0,j|0)|0;N=T;Ee=ks(Ie|0,Te|0,1048576,0)|0;Ae=T;R=Rs(Ee|0,Ae|0,21)|0;re=T;fn=ks(dn|0,un|0,ln|0,fn|0)|0;an=ks(fn|0,T|0,cn|0,an|0)|0;on=ks(an|0,T|0,sn|0,on|0)|0;x=ks(on|0,T|0,rn|0,x|0)|0;Be=ks(x|0,T|0,H|0,Be|0)|0;De=ks(Be|0,T|0,De&2097151|0,0)|0;re=ks(De|0,T|0,R|0,re|0)|0;R=T;De=ks(Ge|0,He|0,1048576,0)|0;Be=T;H=Rs(De|0,Be|0,21)|0;x=T;$t=ks(nn|0,tn|0,en|0,$t|0)|0;Jt=ks($t|0,T|0,Zt|0,Jt|0)|0;Yt=ks(Jt|0,T|0,Xt|0,Yt|0)|0;Qt=ks(Yt|0,T|0,Wt|0,Qt|0)|0;Ht=ks(Qt|0,T|0,Vt|0,Ht|0)|0;Kt=ks(Ht|0,T|0,Gt|0,Kt|0)|0;o=ks(Kt|0,T|0,I|0,o|0)|0;le=ks(o|0,T|0,ue|0,le|0)|0;x=ks(le|0,T|0,H|0,x|0)|0;H=T;le=ks(X|0,J|0,1048576,0)|0;ue=T;o=Rs(le|0,ue|0,21)|0;I=T;Lt=ks(zt|0,qt|0,Ft|0,Lt|0)|0;jt=ks(Lt|0,T|0,Ut|0,jt|0)|0;Bt=ks(jt|0,T|0,Nt|0,Bt|0)|0;Mt=ks(Bt|0,T|0,Dt|0,Mt|0)|0;Ot=ks(Mt|0,T|0,Pt|0,Ot|0)|0;Rt=ks(Ot|0,T|0,Ct|0,Rt|0)|0;It=ks(Rt|0,T|0,xt|0,It|0)|0;ee=ks(It|0,T|0,Tt|0,ee|0)|0;_e=ks(ee|0,T|0,g|0,_e|0)|0;we=ks(_e|0,T|0,we&2097151|0,0)|0;I=ks(we|0,T|0,o|0,I|0)|0;o=T;we=ks(te|0,ne|0,1048576,0)|0;_e=T;g=Rs(we|0,_e|0,21)|0;ee=T;At=ks(St|0,kt|0,Et|0,At|0)|0;be=ks(At|0,T|0,he|0,be|0)|0;Ye=ks(be|0,T|0,We|0,Ye|0)|0;t=ks(Ye|0,T|0,i|0,t|0)|0;at=ks(t|0,T|0,st|0,at|0)|0;Ke=ks(at|0,T|0,ze|0,Ke|0)|0;_=ks(Ke|0,T|0,f|0,_|0)|0;yt=ks(_|0,T|0,gt|0,yt|0)|0;Ne=ks(yt|0,T|0,je|0,Ne|0)|0;tt=ks(Ne|0,T|0,et|0,tt|0)|0;Le=ks(tt|0,T|0,Ue|0,Le|0)|0;ft=ks(Le|0,T|0,rt|0,ft|0)|0;ee=ks(ft|0,T|0,g|0,ee|0)|0;g=T;ft=ks(mt|0,pt|0,1048576,0)|0;rt=T;Le=Rs(ft|0,rt|0,21)|0;Ue=T;Xe=ks(U|0,L|0,Je|0,Xe|0)|0;Y=ks(Xe|0,T|0,W|0,Y|0)|0;ce=ks(Y|0,T|0,qe|0,ce|0)|0;oe=ks(ce|0,T|0,ie|0,oe|0)|0;F=ks(oe|0,T|0,k|0,F|0)|0;vt=ks(F|0,T|0,bt|0,vt|0)|0;Fe=ks(vt|0,T|0,fe|0,Fe|0)|0;n=ks(Fe|0,T|0,P|0,n|0)|0;it=ks(n|0,T|0,ot|0,it|0)|0;Ue=ks(it|0,T|0,Le|0,Ue|0)|0;Le=T;it=ks(dt|0,ht|0,1048576,0)|0;ot=T;n=Rs(it|0,ot|0,21)|0;P=T;a=ks(h|0,b|0,l|0,a|0)|0;c=ks(a|0,T|0,w|0,c|0)|0;se=ks(c|0,T|0,ae|0,se|0)|0;O=ks(se|0,T|0,$|0,O|0)|0;q=ks(O|0,T|0,z|0,q|0)|0;ut=ks(q|0,T|0,lt|0,ut|0)|0;Ze=ks(ut|0,T|0,$e|0,Ze|0)|0;P=ks(Ze|0,T|0,n|0,P|0)|0;n=T;Ze=ks(wt|0,G|0,1048576,0)|0;$e=T;ut=Rs(Ze|0,$e|0,21)|0;lt=T;S=ks(y|0,d|0,E|0,S|0)|0;Ve=ks(S|0,T|0,Qe|0,Ve|0)|0;D=ks(Ve|0,T|0,M|0,D|0)|0;p=ks(D|0,T|0,v|0,p|0)|0;me=ks(p|0,T|0,pe|0,me|0)|0;lt=ks(me|0,T|0,ut|0,lt|0)|0;ut=T;me=ks(m|0,u|0,1048576,0)|0;pe=T;p=Rs(me|0,pe|0,21)|0;v=T;Se=ks(nt|0,ct|0,ke|0,Se|0)|0;Oe=ks(Se|0,T|0,Ce|0,Oe|0)|0;C=ks(Oe|0,T|0,K|0,C|0)|0;v=ks(C|0,T|0,p|0,v|0)|0;p=T;pe=Ss(m|0,u|0,me&-2097152|0,pe|0)|0;me=T;u=ks(Z|0,B|0,1048576,0)|0;m=T;C=Cs(u|0,m|0,21)|0;C=ks(_t|0,A|0,C|0,T|0)|0;A=T;m=Ss(Z|0,B|0,u&-2097152|0,m&2147483647|0)|0;u=T;B=ks(ye|0,ge|0,1048576,0)|0;Z=T;_t=Cs(B|0,Z|0,21)|0;K=T;Z=Ss(ye|0,ge|0,B&-2097152|0,Z&2147483647|0)|0;B=T;ge=ks(ve|0,de|0,1048576,0)|0;ye=T;Oe=Cs(ge|0,ye|0,21)|0;Ce=T;ye=Ss(ve|0,de|0,ge&-2097152|0,ye|0)|0;ge=T;de=ks(j|0,N|0,1048576,0)|0;ve=T;Se=Rs(de|0,ve|0,21)|0;ke=T;ve=Ss(j|0,N|0,de&-2097152|0,ve|0)|0;de=T;N=ks(re|0,R|0,1048576,0)|0;j=T;ct=Rs(N|0,j|0,21)|0;nt=T;D=ks(x|0,H|0,1048576,0)|0;M=T;Ve=Rs(D|0,M|0,21)|0;Qe=T;S=ks(I|0,o|0,1048576,0)|0;E=T;d=Rs(S|0,E|0,21)|0;y=T;q=ks(ee|0,g|0,1048576,0)|0;z=T;O=Rs(q|0,z|0,21)|0;$=T;se=ks(Ue|0,Le|0,1048576,0)|0;ae=T;c=Rs(se|0,ae|0,21)|0;w=T;a=ks(P|0,n|0,1048576,0)|0;l=T;b=Rs(a|0,l|0,21)|0;h=T;Fe=ks(lt|0,ut|0,1048576,0)|0;fe=T;vt=Rs(Fe|0,fe|0,21)|0;me=ks(vt|0,T|0,pe|0,me|0)|0;pe=T;fe=Ss(lt|0,ut|0,Fe&-2097152|0,fe|0)|0;Fe=T;ut=ks(v|0,p|0,1048576,0)|0;lt=T;vt=Rs(ut|0,lt|0,21)|0;u=ks(vt|0,T|0,m|0,u|0)|0;m=T;lt=Ss(v|0,p|0,ut&-2097152|0,lt|0)|0;ut=T;p=ks(C|0,A|0,1048576,0)|0;v=T;vt=Cs(p|0,v|0,21)|0;B=ks(vt|0,T|0,Z|0,B|0)|0;Z=T;v=Ss(C|0,A|0,p&-2097152|0,v&2147483647|0)|0;p=T;A=Es(_t|0,K|0,666643,0)|0;C=T;vt=Es(_t|0,K|0,470296,0)|0;bt=T;F=Es(_t|0,K|0,654183,0)|0;k=T;oe=Es(_t|0,K|0,-997805,-1)|0;ie=T;ce=Es(_t|0,K|0,136657,0)|0;qe=T;K=Es(_t|0,K|0,-683901,-1)|0;K=ks(wt|0,G|0,K|0,T|0)|0;$e=Ss(K|0,T|0,Ze&-2097152|0,$e|0)|0;h=ks($e|0,T|0,b|0,h|0)|0;b=T;$e=Es(B|0,Z|0,666643,0)|0;Ze=T;K=Es(B|0,Z|0,470296,0)|0;G=T;wt=Es(B|0,Z|0,654183,0)|0;_t=T;Y=Es(B|0,Z|0,-997805,-1)|0;W=T;Xe=Es(B|0,Z|0,136657,0)|0;Je=T;Z=Es(B|0,Z|0,-683901,-1)|0;B=T;L=Es(v|0,p|0,666643,0)|0;U=T;tt=Es(v|0,p|0,470296,0)|0;et=T;Ne=Es(v|0,p|0,654183,0)|0;je=T;yt=Es(v|0,p|0,-997805,-1)|0;gt=T;_=Es(v|0,p|0,136657,0)|0;f=T;p=Es(v|0,p|0,-683901,-1)|0;v=T;ie=ks(dt|0,ht|0,oe|0,ie|0)|0;Je=ks(ie|0,T|0,Xe|0,Je|0)|0;v=ks(Je|0,T|0,p|0,v|0)|0;ot=Ss(v|0,T|0,it&-2097152|0,ot|0)|0;w=ks(ot|0,T|0,c|0,w|0)|0;c=T;ot=Es(u|0,m|0,666643,0)|0;it=T;v=Es(u|0,m|0,470296,0)|0;p=T;Je=Es(u|0,m|0,654183,0)|0;Xe=T;ie=Es(u|0,m|0,-997805,-1)|0;oe=T;ht=Es(u|0,m|0,136657,0)|0;dt=T;m=Es(u|0,m|0,-683901,-1)|0;u=T;Ke=Es(lt|0,ut|0,666643,0)|0;ze=T;at=Es(lt|0,ut|0,470296,0)|0;st=T;t=Es(lt|0,ut|0,654183,0)|0;i=T;Ye=Es(lt|0,ut|0,-997805,-1)|0;We=T;be=Es(lt|0,ut|0,136657,0)|0;he=T;ut=Es(lt|0,ut|0,-683901,-1)|0;lt=T;bt=ks(wt|0,_t|0,vt|0,bt|0)|0;gt=ks(bt|0,T|0,yt|0,gt|0)|0;pt=ks(gt|0,T|0,mt|0,pt|0)|0;dt=ks(pt|0,T|0,ht|0,dt|0)|0;lt=ks(dt|0,T|0,ut|0,lt|0)|0;rt=Ss(lt|0,T|0,ft&-2097152|0,rt|0)|0;$=ks(rt|0,T|0,O|0,$|0)|0;O=T;rt=Es(me|0,pe|0,666643,0)|0;rt=ks(ct|0,nt|0,rt|0,T|0)|0;He=ks(rt|0,T|0,Ge|0,He|0)|0;Be=Ss(He|0,T|0,De&-2097152|0,Be|0)|0;De=T;He=Es(me|0,pe|0,470296,0)|0;Ge=T;rt=Es(me|0,pe|0,654183,0)|0;nt=T;it=ks(at|0,st|0,ot|0,it|0)|0;nt=ks(it|0,T|0,rt|0,nt|0)|0;Qe=ks(nt|0,T|0,Ve|0,Qe|0)|0;J=ks(Qe|0,T|0,X|0,J|0)|0;ue=Ss(J|0,T|0,le&-2097152|0,ue|0)|0;le=T;J=Es(me|0,pe|0,-997805,-1)|0;X=T;Qe=Es(me|0,pe|0,136657,0)|0;Ve=T;Ze=ks(tt|0,et|0,$e|0,Ze|0)|0;Xe=ks(Ze|0,T|0,Je|0,Xe|0)|0;We=ks(Xe|0,T|0,Ye|0,We|0)|0;Ve=ks(We|0,T|0,Qe|0,Ve|0)|0;y=ks(Ve|0,T|0,d|0,y|0)|0;ne=ks(y|0,T|0,te|0,ne|0)|0;_e=Ss(ne|0,T|0,we&-2097152|0,_e|0)|0;we=T;pe=Es(me|0,pe|0,-683901,-1)|0;me=T;ne=ks(Be|0,De|0,1048576,0)|0;te=T;y=Rs(ne|0,te|0,21)|0;d=T;ze=ks(He|0,Ge|0,Ke|0,ze|0)|0;H=ks(ze|0,T|0,x|0,H|0)|0;M=Ss(H|0,T|0,D&-2097152|0,M|0)|0;d=ks(M|0,T|0,y|0,d|0)|0;y=T;M=ks(ue|0,le|0,1048576,0)|0;D=T;H=Rs(M|0,D|0,21)|0;x=T;U=ks(v|0,p|0,L|0,U|0)|0;i=ks(U|0,T|0,t|0,i|0)|0;X=ks(i|0,T|0,J|0,X|0)|0;o=ks(X|0,T|0,I|0,o|0)|0;E=Ss(o|0,T|0,S&-2097152|0,E|0)|0;x=ks(E|0,T|0,H|0,x|0)|0;H=T;E=ks(_e|0,we|0,1048576,0)|0;S=T;o=Rs(E|0,S|0,21)|0;I=T;C=ks(K|0,G|0,A|0,C|0)|0;je=ks(C|0,T|0,Ne|0,je|0)|0;oe=ks(je|0,T|0,ie|0,oe|0)|0;he=ks(oe|0,T|0,be|0,he|0)|0;me=ks(he|0,T|0,pe|0,me|0)|0;g=ks(me|0,T|0,ee|0,g|0)|0;z=Ss(g|0,T|0,q&-2097152|0,z|0)|0;I=ks(z|0,T|0,o|0,I|0)|0;o=T;z=ks($|0,O|0,1048576,0)|0;q=T;g=Rs(z|0,q|0,21)|0;ee=T;k=ks(Y|0,W|0,F|0,k|0)|0;f=ks(k|0,T|0,_|0,f|0)|0;u=ks(f|0,T|0,m|0,u|0)|0;Le=ks(u|0,T|0,Ue|0,Le|0)|0;ae=Ss(Le|0,T|0,se&-2097152|0,ae|0)|0;ee=ks(ae|0,T|0,g|0,ee|0)|0;g=T;q=Ss($|0,O|0,z&-2097152|0,q|0)|0;z=T;O=ks(w|0,c|0,1048576,0)|0;$=T;ae=Rs(O|0,$|0,21)|0;se=T;qe=ks(Z|0,B|0,ce|0,qe|0)|0;n=ks(qe|0,T|0,P|0,n|0)|0;l=Ss(n|0,T|0,a&-2097152|0,l|0)|0;se=ks(l|0,T|0,ae|0,se|0)|0;ae=T;$=Ss(w|0,c|0,O&-2097152|0,$|0)|0;O=T;c=ks(h|0,b|0,1048576,0)|0;w=T;l=Rs(c|0,w|0,21)|0;Fe=ks(l|0,T|0,fe|0,Fe|0)|0;fe=T;w=Ss(h|0,b|0,c&-2097152|0,w|0)|0;c=T;b=ks(d|0,y|0,1048576,0)|0;h=T;l=Rs(b|0,h|0,21)|0;a=T;n=ks(x|0,H|0,1048576,0)|0;P=T;qe=Rs(n|0,P|0,21)|0;ce=T;B=ks(I|0,o|0,1048576,0)|0;Z=T;Le=Rs(B|0,Z|0,21)|0;z=ks(Le|0,T|0,q|0,z|0)|0;q=T;Z=Ss(I|0,o|0,B&-2097152|0,Z|0)|0;B=T;o=ks(ee|0,g|0,1048576,0)|0;I=T;Le=Rs(o|0,I|0,21)|0;O=ks(Le|0,T|0,$|0,O|0)|0;$=T;I=Ss(ee|0,g|0,o&-2097152|0,I|0)|0;o=T;g=ks(se|0,ae|0,1048576,0)|0;ee=T;Le=Rs(g|0,ee|0,21)|0;c=ks(Le|0,T|0,w|0,c|0)|0;w=T;ee=Ss(se|0,ae|0,g&-2097152|0,ee|0)|0;g=T;ae=Es(Fe|0,fe|0,666643,0)|0;se=T;Le=Es(Fe|0,fe|0,470296,0)|0;Ue=T;u=Es(Fe|0,fe|0,654183,0)|0;m=T;f=Es(Fe|0,fe|0,-997805,-1)|0;_=T;k=Es(Fe|0,fe|0,136657,0)|0;F=T;fe=Es(Fe|0,fe|0,-683901,-1)|0;fe=ks(qe|0,ce|0,fe|0,T|0)|0;we=ks(fe|0,T|0,_e|0,we|0)|0;S=Ss(we|0,T|0,E&-2097152|0,S|0)|0;E=T;we=Es(c|0,w|0,666643,0)|0;_e=T;fe=Es(c|0,w|0,470296,0)|0;ce=T;qe=Es(c|0,w|0,654183,0)|0;Fe=T;W=Es(c|0,w|0,-997805,-1)|0;Y=T;me=Es(c|0,w|0,136657,0)|0;pe=T;w=Es(c|0,w|0,-683901,-1)|0;c=T;he=Es(ee|0,g|0,666643,0)|0;he=ks(ve|0,de|0,he|0,T|0)|0;de=T;ve=Es(ee|0,g|0,470296,0)|0;be=T;oe=Es(ee|0,g|0,654183,0)|0;ie=T;je=Es(ee|0,g|0,-997805,-1)|0;Ne=T;C=Es(ee|0,g|0,136657,0)|0;A=T;g=Es(ee|0,g|0,-683901,-1)|0;ee=T;_=ks(me|0,pe|0,f|0,_|0)|0;ee=ks(_|0,T|0,g|0,ee|0)|0;a=ks(ee|0,T|0,l|0,a|0)|0;le=ks(a|0,T|0,ue|0,le|0)|0;D=Ss(le|0,T|0,M&-2097152|0,D|0)|0;M=T;le=Es(O|0,$|0,666643,0)|0;ue=T;a=Es(O|0,$|0,470296,0)|0;l=T;ee=Es(O|0,$|0,654183,0)|0;g=T;_=Es(O|0,$|0,-997805,-1)|0;f=T;pe=Es(O|0,$|0,136657,0)|0;me=T;$=Es(O|0,$|0,-683901,-1)|0;O=T;G=Es(I|0,o|0,666643,0)|0;K=T;X=Es(I|0,o|0,470296,0)|0;J=T;i=Es(I|0,o|0,654183,0)|0;t=T;U=Es(I|0,o|0,-997805,-1)|0;L=T;p=Es(I|0,o|0,136657,0)|0;v=T;o=Es(I|0,o|0,-683901,-1)|0;I=T;Ue=ks(qe|0,Fe|0,Le|0,Ue|0)|0;Ne=ks(Ue|0,T|0,je|0,Ne|0)|0;De=ks(Ne|0,T|0,Be|0,De|0)|0;te=Ss(De|0,T|0,ne&-2097152|0,te|0)|0;me=ks(te|0,T|0,pe|0,me|0)|0;I=ks(me|0,T|0,o|0,I|0)|0;o=T;me=Es(z|0,q|0,666643,0)|0;V=ks(me|0,T|0,Q|0,V|0)|0;Q=T;me=Es(z|0,q|0,470296,0)|0;pe=T;te=Es(z|0,q|0,654183,0)|0;ne=T;Ce=ks(Me|0,Pe|0,Oe|0,Ce|0)|0;xe=Ss(Ce|0,T|0,Re&-2097152|0,xe|0)|0;ne=ks(xe|0,T|0,te|0,ne|0)|0;ue=ks(ne|0,T|0,le|0,ue|0)|0;J=ks(ue|0,T|0,X|0,J|0)|0;X=T;ue=Es(z|0,q|0,-997805,-1)|0;le=T;ne=Es(z|0,q|0,136657,0)|0;te=T;ke=ks(Ie|0,Te|0,Se|0,ke|0)|0;Ae=Ss(ke|0,T|0,Ee&-2097152|0,Ae|0)|0;_e=ks(Ae|0,T|0,we|0,_e|0)|0;be=ks(_e|0,T|0,ve|0,be|0)|0;te=ks(be|0,T|0,ne|0,te|0)|0;g=ks(te|0,T|0,ee|0,g|0)|0;L=ks(g|0,T|0,U|0,L|0)|0;U=T;q=Es(z|0,q|0,-683901,-1)|0;z=T;g=ks(V|0,Q|0,1048576,0)|0;ee=T;te=Rs(g|0,ee|0,21)|0;ne=T;pe=ks(ye|0,ge|0,me|0,pe|0)|0;K=ks(pe|0,T|0,G|0,K|0)|0;ne=ks(K|0,T|0,te|0,ne|0)|0;te=T;ee=Ss(V|0,Q|0,g&-2097152|0,ee|0)|0;g=T;Q=ks(J|0,X|0,1048576,0)|0;V=T;K=Rs(Q|0,V|0,21)|0;G=T;le=ks(he|0,de|0,ue|0,le|0)|0;l=ks(le|0,T|0,a|0,l|0)|0;t=ks(l|0,T|0,i|0,t|0)|0;G=ks(t|0,T|0,K|0,G|0)|0;K=T;t=ks(L|0,U|0,1048576,0)|0;i=T;l=Rs(t|0,i|0,21)|0;a=T;se=ks(fe|0,ce|0,ae|0,se|0)|0;ie=ks(se|0,T|0,oe|0,ie|0)|0;R=ks(ie|0,T|0,re|0,R|0)|0;j=Ss(R|0,T|0,N&-2097152|0,j|0)|0;z=ks(j|0,T|0,q|0,z|0)|0;f=ks(z|0,T|0,_|0,f|0)|0;v=ks(f|0,T|0,p|0,v|0)|0;a=ks(v|0,T|0,l|0,a|0)|0;l=T;v=ks(I|0,o|0,1048576,0)|0;p=T;f=Rs(v|0,p|0,21)|0;_=T;m=ks(W|0,Y|0,u|0,m|0)|0;A=ks(m|0,T|0,C|0,A|0)|0;y=ks(A|0,T|0,d|0,y|0)|0;h=Ss(y|0,T|0,b&-2097152|0,h|0)|0;O=ks(h|0,T|0,$|0,O|0)|0;_=ks(O|0,T|0,f|0,_|0)|0;f=T;p=Ss(I|0,o|0,v&-2097152|0,p|0)|0;v=T;o=ks(D|0,M|0,1048576,0)|0;I=T;O=Rs(o|0,I|0,21)|0;$=T;F=ks(w|0,c|0,k|0,F|0)|0;H=ks(F|0,T|0,x|0,H|0)|0;$=ks(H|0,T|0,O|0,$|0)|0;P=Ss($|0,T|0,n&-2097152|0,P|0)|0;n=T;I=Ss(D|0,M|0,o&-2097152|0,I|0)|0;o=T;M=ks(S|0,E|0,1048576,0)|0;D=T;$=Rs(M|0,D|0,21)|0;$=ks(Z|0,B|0,$|0,T|0)|0;B=T;Z=ks(ne|0,te|0,1048576,0)|0;O=T;H=Rs(Z|0,O|0,21)|0;x=T;F=ks(G|0,K|0,1048576,0)|0;k=T;c=Rs(F|0,k|0,21)|0;w=T;h=ks(a|0,l|0,1048576,0)|0;b=T;y=Rs(h|0,b|0,21)|0;y=ks(p|0,v|0,y|0,T|0)|0;v=T;p=ks(_|0,f|0,1048576,0)|0;d=T;A=Rs(p|0,d|0,21)|0;A=ks(I|0,o|0,A|0,T|0)|0;o=T;d=Ss(_|0,f|0,p&-2097152|0,d|0)|0;p=T;f=ks(P|0,n|0,1048576,0)|0;_=T;I=Rs(f|0,_|0,21)|0;C=T;_=Ss(P|0,n|0,f&-2097152|0,_|0)|0;f=T;n=ks($|0,B|0,1048576,0)|0;P=T;m=Rs(n|0,P|0,21)|0;u=T;P=Ss($|0,B|0,n&-2097152|0,P|0)|0;n=T;B=Es(m|0,u|0,666643,0)|0;B=ks(ee|0,g|0,B|0,T|0)|0;g=T;ee=Es(m|0,u|0,470296,0)|0;$=T;Y=Es(m|0,u|0,654183,0)|0;W=T;z=Es(m|0,u|0,-997805,-1)|0;q=T;j=Es(m|0,u|0,136657,0)|0;N=T;u=Es(m|0,u|0,-683901,-1)|0;m=T;g=Rs(B|0,g|0,21)|0;R=T;$=ks(ne|0,te|0,ee|0,$|0)|0;O=Ss($|0,T|0,Z&-2097152|0,O|0)|0;R=ks(O|0,T|0,g|0,R|0)|0;g=Rs(R|0,T|0,21)|0;O=T;W=ks(J|0,X|0,Y|0,W|0)|0;V=Ss(W|0,T|0,Q&-2097152|0,V|0)|0;x=ks(V|0,T|0,H|0,x|0)|0;O=ks(x|0,T|0,g|0,O|0)|0;g=Rs(O|0,T|0,21)|0;x=T;q=ks(G|0,K|0,z|0,q|0)|0;k=Ss(q|0,T|0,F&-2097152|0,k|0)|0;x=ks(k|0,T|0,g|0,x|0)|0;g=Rs(x|0,T|0,21)|0;k=T;N=ks(L|0,U|0,j|0,N|0)|0;i=Ss(N|0,T|0,t&-2097152|0,i|0)|0;w=ks(i|0,T|0,c|0,w|0)|0;k=ks(w|0,T|0,g|0,k|0)|0;g=Rs(k|0,T|0,21)|0;w=T;m=ks(a|0,l|0,u|0,m|0)|0;b=Ss(m|0,T|0,h&-2097152|0,b|0)|0;w=ks(b|0,T|0,g|0,w|0)|0;g=Rs(w|0,T|0,21)|0;g=ks(y|0,v|0,g|0,T|0)|0;v=Rs(g|0,T|0,21)|0;p=ks(v|0,T|0,d|0,p|0)|0;d=Rs(p|0,T|0,21)|0;d=ks(A|0,o|0,d|0,T|0)|0;o=Rs(d|0,T|0,21)|0;f=ks(o|0,T|0,_|0,f|0)|0;_=Rs(f|0,T|0,21)|0;o=T;C=ks(S|0,E|0,I|0,C|0)|0;D=Ss(C|0,T|0,M&-2097152|0,D|0)|0;o=ks(D|0,T|0,_|0,o|0)|0;_=Rs(o|0,T|0,21)|0;n=ks(_|0,T|0,P|0,n|0)|0;P=Rs(n|0,T|0,21)|0;_=T;D=Es(P|0,_|0,666643,0)|0;B=ks(D|0,T|0,B&2097151|0,0)|0;D=T;M=Es(P|0,_|0,470296,0)|0;R=ks(M|0,T|0,R&2097151|0,0)|0;M=T;C=Es(P|0,_|0,654183,0)|0;O=ks(C|0,T|0,O&2097151|0,0)|0;C=T;I=Es(P|0,_|0,-997805,-1)|0;x=ks(I|0,T|0,x&2097151|0,0)|0;I=T;E=Es(P|0,_|0,136657,0)|0;k=ks(E|0,T|0,k&2097151|0,0)|0;E=T;_=Es(P|0,_|0,-683901,-1)|0;w=ks(_|0,T|0,w&2097151|0,0)|0;_=T;P=Rs(B|0,D|0,21)|0;P=ks(R|0,M|0,P|0,T|0)|0;M=T;R=Rs(P|0,M|0,21)|0;R=ks(O|0,C|0,R|0,T|0)|0;C=T;O=P&2097151;S=Rs(R|0,C|0,21)|0;S=ks(x|0,I|0,S|0,T|0)|0;I=T;x=R&2097151;A=Rs(S|0,I|0,21)|0;A=ks(k|0,E|0,A|0,T|0)|0;E=T;k=S&2097151;v=Rs(A|0,E|0,21)|0;v=ks(w|0,_|0,v|0,T|0)|0;_=T;w=A&2097151;y=Rs(v|0,_|0,21)|0;g=ks(y|0,T|0,g&2097151|0,0)|0;y=T;b=v&2097151;h=Rs(g|0,y|0,21)|0;p=ks(h|0,T|0,p&2097151|0,0)|0;h=T;m=g&2097151;u=Rs(p|0,h|0,21)|0;d=ks(u|0,T|0,d&2097151|0,0)|0;u=T;l=Rs(d|0,u|0,21)|0;f=ks(l|0,T|0,f&2097151|0,0)|0;l=T;a=Rs(f|0,l|0,21)|0;o=ks(a|0,T|0,o&2097151|0,0)|0;a=T;c=f&2097151;i=Rs(o|0,a|0,21)|0;n=ks(i|0,T|0,n&2097151|0,0)|0;i=T;t=o&2097151;r[e>>0]=B;N=Cs(B|0,D|0,8)|0;r[e+1>>0]=N;D=Cs(B|0,D|0,16)|0;B=Os(O|0,0,5)|0;r[e+2>>0]=B|D&31;D=Cs(P|0,M|0,3)|0;r[e+3>>0]=D;M=Cs(P|0,M|0,11)|0;r[e+4>>0]=M;O=Cs(O|0,0,19)|0;M=T;P=Os(x|0,0,2)|0;r[e+5>>0]=P|O;C=Cs(R|0,C|0,6)|0;r[e+6>>0]=C;x=Cs(x|0,0,14)|0;C=T;R=Os(k|0,0,7)|0;r[e+7>>0]=R|x;x=Cs(S|0,I|0,1)|0;r[e+8>>0]=x;I=Cs(S|0,I|0,9)|0;r[e+9>>0]=I;k=Cs(k|0,0,17)|0;I=T;S=Os(w|0,0,4)|0;r[e+10>>0]=S|k;k=Cs(A|0,E|0,4)|0;r[e+11>>0]=k;E=Cs(A|0,E|0,12)|0;r[e+12>>0]=E;w=Cs(w|0,0,20)|0;E=T;A=Os(b|0,0,1)|0;r[e+13>>0]=A|w;_=Cs(v|0,_|0,7)|0;r[e+14>>0]=_;b=Cs(b|0,0,15)|0;_=T;v=Os(m|0,0,6)|0;r[e+15>>0]=v|b;b=Cs(g|0,y|0,2)|0;r[e+16>>0]=b;y=Cs(g|0,y|0,10)|0;r[e+17>>0]=y;m=Cs(m|0,0,18)|0;y=T;g=Os(p|0,h|0,3)|0;r[e+18>>0]=g|m;m=Cs(p|0,h|0,5)|0;r[e+19>>0]=m;h=Cs(p|0,h|0,13)|0;r[e+20>>0]=h;r[e+21>>0]=d;h=Cs(d|0,u|0,8)|0;r[e+22>>0]=h;u=Cs(d|0,u|0,16)|0;d=Os(c|0,0,5)|0;r[e+23>>0]=d|u&31;u=Cs(f|0,l|0,3)|0;r[e+24>>0]=u;l=Cs(f|0,l|0,11)|0;r[e+25>>0]=l;c=Cs(c|0,0,19)|0;l=T;f=Os(t|0,0,2)|0;r[e+26>>0]=f|c;a=Cs(o|0,a|0,6)|0;r[e+27>>0]=a;t=Cs(t|0,0,14)|0;a=T;o=Os(n|0,i|0,7)|0;r[e+28>>0]=o|t;t=Cs(n|0,i|0,1)|0;r[e+29>>0]=t;t=Cs(n|0,i|0,9)|0;r[e+30>>0]=t;i=Rs(n|0,i|0,17)|0;r[e+31>>0]=i;return}function ni(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;l=t+44|0;h=t+48|0;g=t+52|0;v=t+56|0;A=t+60|0;S=t+64|0;x=t+68|0;O=t+72|0;R=t+76|0;G=t+4|0;z=t+8|0;i=t+12|0;d=t+16|0;p=t+20|0;w=t+24|0;E=t+28|0;C=t+32|0;q=t+36|0;se=(o[G>>2]|0)+(o[l>>2]|0)|0;oe=(o[z>>2]|0)+(o[h>>2]|0)|0;ie=(o[i>>2]|0)+(o[g>>2]|0)|0;re=(o[d>>2]|0)+(o[v>>2]|0)|0;ne=(o[p>>2]|0)+(o[A>>2]|0)|0;te=(o[w>>2]|0)+(o[S>>2]|0)|0;ee=(o[E>>2]|0)+(o[x>>2]|0)|0;$=(o[C>>2]|0)+(o[O>>2]|0)|0;X=(o[q>>2]|0)+(o[R>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[l>>2]|0)-(o[G>>2]|0)|0;z=(o[h>>2]|0)-(o[z>>2]|0)|0;i=(o[g>>2]|0)-(o[i>>2]|0)|0;d=(o[v>>2]|0)-(o[d>>2]|0)|0;p=(o[A>>2]|0)-(o[p>>2]|0)|0;w=(o[S>>2]|0)-(o[w>>2]|0)|0;E=(o[x>>2]|0)-(o[E>>2]|0)|0;C=(o[O>>2]|0)-(o[C>>2]|0)|0;q=(o[R>>2]|0)-(o[q>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=z;z=e+52|0;o[z>>2]=i;i=e+56|0;o[i>>2]=d;d=e+60|0;o[d>>2]=p;p=e+64|0;o[p>>2]=w;w=e+68|0;o[w>>2]=E;E=e+72|0;o[E>>2]=C;C=e+76|0;o[C>>2]=q;q=e+80|0;Xr(q,e,n);Xr(X,X,n+40|0);R=e+120|0;Xr(R,n+120|0,t+120|0);Xr(e,t+80|0,n+80|0);O=o[e>>2]<<1;x=o[ae>>2]<<1;S=o[se>>2]<<1;A=o[oe>>2]<<1;v=o[ie>>2]<<1;g=o[re>>2]<<1;h=o[ne>>2]<<1;l=o[te>>2]<<1;a=o[ee>>2]<<1;r=o[$>>2]<<1;J=o[q>>2]|0;F=e+84|0;W=o[F>>2]|0;L=e+88|0;H=o[L>>2]|0;U=e+92|0;t=o[U>>2]|0;j=e+96|0;s=o[j>>2]|0;N=e+100|0;c=o[N>>2]|0;B=e+104|0;m=o[B>>2]|0;D=e+108|0;y=o[D>>2]|0;M=e+112|0;k=o[M>>2]|0;P=e+116|0;T=o[P>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[z>>2]|0;n=o[i>>2]|0;f=o[d>>2]|0;u=o[p>>2]|0;b=o[w>>2]|0;_=o[E>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=t-K;o[ie>>2]=s-n;o[re>>2]=c-f;o[ne>>2]=m-u;o[te>>2]=y-b;o[ee>>2]=k-_;o[$>>2]=T-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[z>>2]=K+t;o[i>>2]=n+s;o[d>>2]=f+c;o[p>>2]=u+m;o[w>>2]=b+y;o[E>>2]=_+k;o[C>>2]=I+T;C=o[R>>2]|0;T=e+124|0;I=o[T>>2]|0;E=e+128|0;k=o[E>>2]|0;_=e+132|0;w=o[_>>2]|0;y=e+136|0;b=o[y>>2]|0;p=e+140|0;m=o[p>>2]|0;u=e+144|0;d=o[u>>2]|0;c=e+148|0;f=o[c>>2]|0;i=e+152|0;s=o[i>>2]|0;n=e+156|0;t=o[n>>2]|0;o[q>>2]=C+O;o[F>>2]=I+x;o[L>>2]=k+S;o[U>>2]=w+A;o[j>>2]=b+v;o[N>>2]=m+g;o[B>>2]=d+h;o[D>>2]=f+l;o[M>>2]=s+a;o[P>>2]=t+r;o[R>>2]=O-C;o[T>>2]=x-I;o[E>>2]=S-k;o[_>>2]=A-w;o[y>>2]=v-b;o[p>>2]=g-m;o[u>>2]=h-d;o[c>>2]=l-f;o[i>>2]=a-s;o[n>>2]=r-t;return}function ri(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0;_=h;h=h+2400|0;d=_+2272|0;m=_+1536|0;g=_+1280|0;y=_;b=_+2112|0;v=_+1952|0;u=_+1792|0;ii(m,t);ii(g,i);oi(y,n);A=o[n+4>>2]|0;w=o[n+8>>2]|0;l=o[n+12>>2]|0;t=o[n+16>>2]|0;f=o[n+20>>2]|0;c=o[n+24>>2]|0;a=o[n+28>>2]|0;s=o[n+32>>2]|0;i=o[n+36>>2]|0;o[d>>2]=o[n>>2];o[d+4>>2]=A;o[d+8>>2]=w;o[d+12>>2]=l;o[d+16>>2]=t;o[d+20>>2]=f;o[d+24>>2]=c;o[d+28>>2]=a;o[d+32>>2]=s;o[d+36>>2]=i;i=o[n+44>>2]|0;s=o[n+48>>2]|0;a=o[n+52>>2]|0;c=o[n+56>>2]|0;f=o[n+60>>2]|0;t=o[n+64>>2]|0;l=o[n+68>>2]|0;w=o[n+72>>2]|0;A=o[n+76>>2]|0;o[d+40>>2]=o[n+40>>2];o[d+44>>2]=i;o[d+48>>2]=s;o[d+52>>2]=a;o[d+56>>2]=c;o[d+60>>2]=f;o[d+64>>2]=t;o[d+68>>2]=l;o[d+72>>2]=w;o[d+76>>2]=A;A=o[n+84>>2]|0;w=o[n+88>>2]|0;l=o[n+92>>2]|0;t=o[n+96>>2]|0;f=o[n+100>>2]|0;c=o[n+104>>2]|0;a=o[n+108>>2]|0;s=o[n+112>>2]|0;i=o[n+116>>2]|0;o[d+80>>2]=o[n+80>>2];o[d+84>>2]=A;o[d+88>>2]=w;o[d+92>>2]=l;o[d+96>>2]=t;o[d+100>>2]=f;o[d+104>>2]=c;o[d+108>>2]=a;o[d+112>>2]=s;o[d+116>>2]=i;si(b,d);d=b+120|0;Xr(u,b,d);i=b+40|0;s=b+80|0;Xr(u+40|0,i,s);Xr(u+80|0,s,d);Xr(u+120|0,b,i);ni(b,u,y);Xr(v,b,d);a=v+40|0;Xr(a,i,s);c=v+80|0;Xr(c,s,d);f=v+120|0;Xr(f,b,i);t=y+160|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+320|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+480|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+640|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+800|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);t=y+960|0;oi(t,v);ni(b,u,t);Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);oi(y+1120|0,v);t=e;n=t+40|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));l=e+40|0;o[l>>2]=1;t=e+44|0;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));u=e+80|0;o[u>>2]=1;t=e+84|0;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));t=255;while(1){if(r[m+t>>0]|0)break;if(r[g+t>>0]|0)break;if(!t){p=16;break}else t=t+-1|0}if((p|0)==16){h=_;return}if((t|0)<=-1){h=_;return}while(1){si(b,e);n=r[m+t>>0]|0;if(n<<24>>24<=0){if(n<<24>>24<0){Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);ai(b,v,y+((((n<<24>>24)/-2|0)<<24>>24)*160|0)|0)}}else{Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);ni(b,v,y+(((n&255)>>>1&255)*160|0)|0)}n=r[g+t>>0]|0;if(n<<24>>24<=0){if(n<<24>>24<0){Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);fi(b,v,240+((((n<<24>>24)/-2|0)<<24>>24)*120|0)|0)}}else{Xr(v,b,d);Xr(a,i,s);Xr(c,s,d);Xr(f,b,i);ci(b,v,240+(((n&255)>>>1&255)*120|0)|0)}Xr(e,b,d);Xr(l,i,s);Xr(u,s,d);if((t|0)>0)t=t+-1|0;else break}h=_;return}function ii(e,t){e=e|0;t=t|0;var n=0,i=0,o=0,a=0,c=0,f=0,l=0,u=0,d=0;n=0;do{r[e+n>>0]=(s[t+(n>>>3)>>0]|0)>>>(n&7)&1;n=n+1|0}while((n|0)!=256);l=0;do{f=e+l|0;n=r[f>>0]|0;c=l;l=l+1|0;e:do{if(n<<24>>24!=0&l>>>0<256){o=e+l|0;t=r[o>>0]|0;t:do{if(t<<24>>24){i=n<<24>>24;n=t<<24>>24<<1;t=n+i|0;if((t|0)<16){r[f>>0]=t;r[o>>0]=0;break}n=i-n|0;if((n|0)<=-16)break e;r[f>>0]=n;n=l;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+2|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<2;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+3|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<3;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+4|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<4;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+5|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[f>>0]|0;t=t<<24>>24<<5;i=t+a|0;if((i|0)<16){r[f>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=c+6|0;if(n>>>0<256?(u=e+n|0,d=r[u>>0]|0,d<<24>>24):0){t=r[f>>0]|0;i=d<<24>>24<<6;o=i+t|0;if((o|0)<16){r[f>>0]=o;r[u>>0]=0;break}t=t-i|0;if((t|0)>-16){r[f>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break e}r[t>>0]=1}}}}}}}}while(0)}while((l|0)!=256);return}function oi(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0;d=t+40|0;w=t+44|0;_=t+48|0;v=t+52|0;b=t+56|0;y=t+60|0;g=t+64|0;m=t+68|0;p=t+72|0;h=t+76|0;n=t+4|0;r=t+8|0;i=t+12|0;s=t+16|0;a=t+20|0;c=t+24|0;f=t+28|0;l=t+32|0;u=t+36|0;C=(o[n>>2]|0)+(o[w>>2]|0)|0;R=(o[r>>2]|0)+(o[_>>2]|0)|0;x=(o[i>>2]|0)+(o[v>>2]|0)|0;I=(o[s>>2]|0)+(o[b>>2]|0)|0;T=(o[a>>2]|0)+(o[y>>2]|0)|0;S=(o[c>>2]|0)+(o[g>>2]|0)|0;k=(o[f>>2]|0)+(o[m>>2]|0)|0;E=(o[l>>2]|0)+(o[p>>2]|0)|0;A=(o[u>>2]|0)+(o[h>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[d>>2]|0);o[e+4>>2]=C;o[e+8>>2]=R;o[e+12>>2]=x;o[e+16>>2]=I;o[e+20>>2]=T;o[e+24>>2]=S;o[e+28>>2]=k;o[e+32>>2]=E;o[e+36>>2]=A;n=(o[w>>2]|0)-(o[n>>2]|0)|0;r=(o[_>>2]|0)-(o[r>>2]|0)|0;i=(o[v>>2]|0)-(o[i>>2]|0)|0;s=(o[b>>2]|0)-(o[s>>2]|0)|0;a=(o[y>>2]|0)-(o[a>>2]|0)|0;c=(o[g>>2]|0)-(o[c>>2]|0)|0;f=(o[m>>2]|0)-(o[f>>2]|0)|0;l=(o[p>>2]|0)-(o[l>>2]|0)|0;u=(o[h>>2]|0)-(o[u>>2]|0)|0;o[e+40>>2]=(o[d>>2]|0)-(o[t>>2]|0);o[e+44>>2]=n;o[e+48>>2]=r;o[e+52>>2]=i;o[e+56>>2]=s;o[e+60>>2]=a;o[e+64>>2]=c;o[e+68>>2]=f;o[e+72>>2]=l;o[e+76>>2]=u;u=o[t+84>>2]|0;l=o[t+88>>2]|0;f=o[t+92>>2]|0;c=o[t+96>>2]|0;a=o[t+100>>2]|0;s=o[t+104>>2]|0;i=o[t+108>>2]|0;r=o[t+112>>2]|0;n=o[t+116>>2]|0;o[e+80>>2]=o[t+80>>2];o[e+84>>2]=u;o[e+88>>2]=l;o[e+92>>2]=f;o[e+96>>2]=c;o[e+100>>2]=a;o[e+104>>2]=s;o[e+108>>2]=i;o[e+112>>2]=r;o[e+116>>2]=n;Xr(e+120|0,t+120|0,1200);return}function si(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0;n=h;h=h+48|0;D=n;Yr(e,t);G=e+80|0;fe=t+40|0;Yr(G,fe);w=e+120|0;$r(w,t+80|0);le=e+40|0;ce=(o[t+44>>2]|0)+(o[t+4>>2]|0)|0;ae=(o[t+48>>2]|0)+(o[t+8>>2]|0)|0;se=(o[t+52>>2]|0)+(o[t+12>>2]|0)|0;oe=(o[t+56>>2]|0)+(o[t+16>>2]|0)|0;ie=(o[t+60>>2]|0)+(o[t+20>>2]|0)|0;re=(o[t+64>>2]|0)+(o[t+24>>2]|0)|0;ne=(o[t+68>>2]|0)+(o[t+28>>2]|0)|0;te=(o[t+72>>2]|0)+(o[t+32>>2]|0)|0;ee=(o[t+76>>2]|0)+(o[t+36>>2]|0)|0;o[le>>2]=(o[fe>>2]|0)+(o[t>>2]|0);fe=e+44|0;o[fe>>2]=ce;ce=e+48|0;o[ce>>2]=ae;ae=e+52|0;o[ae>>2]=se;se=e+56|0;o[se>>2]=oe;oe=e+60|0;o[oe>>2]=ie;ie=e+64|0;o[ie>>2]=re;re=e+68|0;o[re>>2]=ne;ne=e+72|0;o[ne>>2]=te;te=e+76|0;o[te>>2]=ee;Yr(D,le);ee=o[G>>2]|0;K=e+84|0;$=o[K>>2]|0;z=e+88|0;Z=o[z>>2]|0;q=e+92|0;J=o[q>>2]|0;F=e+96|0;X=o[F>>2]|0;L=e+100|0;Y=o[L>>2]|0;U=e+104|0;W=o[U>>2]|0;j=e+108|0;Q=o[j>>2]|0;N=e+112|0;V=o[N>>2]|0;B=e+116|0;H=o[B>>2]|0;A=o[e>>2]|0;O=e+4|0;_=o[O>>2]|0;R=e+8|0;b=o[R>>2]|0;I=e+12|0;g=o[I>>2]|0;S=e+16|0;p=o[S>>2]|0;t=e+20|0;u=o[t>>2]|0;s=e+24|0;f=o[s>>2]|0;l=e+28|0;a=o[l>>2]|0;m=e+32|0;i=o[m>>2]|0;v=e+36|0;E=o[v>>2]|0;M=A+ee|0;P=_+$|0;C=b+Z|0;x=g+J|0;T=p+X|0;k=u+Y|0;r=f+W|0;c=a+Q|0;d=i+V|0;y=E+H|0;o[le>>2]=M;o[fe>>2]=P;o[ce>>2]=C;o[ae>>2]=x;o[se>>2]=T;o[oe>>2]=k;o[ie>>2]=r;o[re>>2]=c;o[ne>>2]=d;o[te>>2]=y;A=ee-A|0;_=$-_|0;b=Z-b|0;g=J-g|0;p=X-p|0;u=Y-u|0;f=W-f|0;a=Q-a|0;i=V-i|0;E=H-E|0;o[G>>2]=A;o[K>>2]=_;o[z>>2]=b;o[q>>2]=g;o[F>>2]=p;o[L>>2]=u;o[U>>2]=f;o[j>>2]=a;o[N>>2]=i;o[B>>2]=E;P=(o[D+4>>2]|0)-P|0;C=(o[D+8>>2]|0)-C|0;x=(o[D+12>>2]|0)-x|0;T=(o[D+16>>2]|0)-T|0;k=(o[D+20>>2]|0)-k|0;r=(o[D+24>>2]|0)-r|0;c=(o[D+28>>2]|0)-c|0;d=(o[D+32>>2]|0)-d|0;y=(o[D+36>>2]|0)-y|0;o[e>>2]=(o[D>>2]|0)-M;o[O>>2]=P;o[R>>2]=C;o[I>>2]=x;o[S>>2]=T;o[t>>2]=k;o[s>>2]=r;o[l>>2]=c;o[m>>2]=d;o[v>>2]=y;v=e+124|0;y=e+128|0;m=e+132|0;d=e+136|0;l=e+140|0;c=e+144|0;s=e+148|0;r=e+152|0;t=e+156|0;_=(o[v>>2]|0)-_|0;b=(o[y>>2]|0)-b|0;g=(o[m>>2]|0)-g|0;p=(o[d>>2]|0)-p|0;u=(o[l>>2]|0)-u|0;f=(o[c>>2]|0)-f|0;a=(o[s>>2]|0)-a|0;i=(o[r>>2]|0)-i|0;e=(o[t>>2]|0)-E|0;o[w>>2]=(o[w>>2]|0)-A;o[v>>2]=_;o[y>>2]=b;o[m>>2]=g;o[d>>2]=p;o[l>>2]=u;o[c>>2]=f;o[s>>2]=a;o[r>>2]=i;o[t>>2]=e;h=n;return}function ai(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;c=t+44|0;u=t+48|0;p=t+52|0;y=t+56|0;_=t+60|0;E=t+64|0;T=t+68|0;R=t+72|0;x=t+76|0;G=t+4|0;q=t+8|0;r=t+12|0;d=t+16|0;h=t+20|0;w=t+24|0;A=t+28|0;C=t+32|0;F=t+36|0;se=(o[G>>2]|0)+(o[c>>2]|0)|0;oe=(o[q>>2]|0)+(o[u>>2]|0)|0;ie=(o[r>>2]|0)+(o[p>>2]|0)|0;re=(o[d>>2]|0)+(o[y>>2]|0)|0;ne=(o[h>>2]|0)+(o[_>>2]|0)|0;te=(o[w>>2]|0)+(o[E>>2]|0)|0;ee=(o[A>>2]|0)+(o[T>>2]|0)|0;$=(o[C>>2]|0)+(o[R>>2]|0)|0;X=(o[F>>2]|0)+(o[x>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[c>>2]|0)-(o[G>>2]|0)|0;q=(o[u>>2]|0)-(o[q>>2]|0)|0;r=(o[p>>2]|0)-(o[r>>2]|0)|0;d=(o[y>>2]|0)-(o[d>>2]|0)|0;h=(o[_>>2]|0)-(o[h>>2]|0)|0;w=(o[E>>2]|0)-(o[w>>2]|0)|0;A=(o[T>>2]|0)-(o[A>>2]|0)|0;C=(o[R>>2]|0)-(o[C>>2]|0)|0;F=(o[x>>2]|0)-(o[F>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=q;q=e+52|0;o[q>>2]=r;r=e+56|0;o[r>>2]=d;d=e+60|0;o[d>>2]=h;h=e+64|0;o[h>>2]=w;w=e+68|0;o[w>>2]=A;A=e+72|0;o[A>>2]=C;C=e+76|0;o[C>>2]=F;F=e+80|0;Xr(F,e,n+40|0);Xr(X,X,n);x=e+120|0;Xr(x,n+120|0,t+120|0);Xr(e,t+80|0,n+80|0);R=o[e>>2]<<1;T=o[ae>>2]<<1;E=o[se>>2]<<1;_=o[oe>>2]<<1;y=o[ie>>2]<<1;p=o[re>>2]<<1;u=o[ne>>2]<<1;c=o[te>>2]<<1;i=o[ee>>2]<<1;t=o[$>>2]<<1;J=o[F>>2]|0;L=e+84|0;W=o[L>>2]|0;U=e+88|0;H=o[U>>2]|0;j=e+92|0;z=o[j>>2]|0;N=e+96|0;s=o[N>>2]|0;B=e+100|0;a=o[B>>2]|0;D=e+104|0;m=o[D>>2]|0;M=e+108|0;g=o[M>>2]|0;P=e+112|0;k=o[P>>2]|0;O=e+116|0;S=o[O>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[q>>2]|0;n=o[r>>2]|0;f=o[d>>2]|0;l=o[h>>2]|0;b=o[w>>2]|0;v=o[A>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=z-K;o[ie>>2]=s-n;o[re>>2]=a-f;o[ne>>2]=m-l;o[te>>2]=g-b;o[ee>>2]=k-v;o[$>>2]=S-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[q>>2]=K+z;o[r>>2]=n+s;o[d>>2]=f+a;o[h>>2]=l+m;o[w>>2]=b+g;o[A>>2]=v+k;o[C>>2]=I+S;C=o[x>>2]|0;S=e+124|0;I=o[S>>2]|0;A=e+128|0;k=o[A>>2]|0;v=e+132|0;w=o[v>>2]|0;g=e+136|0;b=o[g>>2]|0;h=e+140|0;m=o[h>>2]|0;l=e+144|0;d=o[l>>2]|0;a=e+148|0;f=o[a>>2]|0;r=e+152|0;s=o[r>>2]|0;n=e+156|0;e=o[n>>2]|0;o[F>>2]=R-C;o[L>>2]=T-I;o[U>>2]=E-k;o[j>>2]=_-w;o[N>>2]=y-b;o[B>>2]=p-m;o[D>>2]=u-d;o[M>>2]=c-f;o[P>>2]=i-s;o[O>>2]=t-e;o[x>>2]=C+R;o[S>>2]=I+T;o[A>>2]=k+E;o[v>>2]=w+_;o[g>>2]=b+y;o[h>>2]=m+p;o[l>>2]=d+u;o[a>>2]=f+c;o[r>>2]=s+i;o[n>>2]=e+t;return}function ci(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;l=t+44|0;h=t+48|0;g=t+52|0;v=t+56|0;A=t+60|0;S=t+64|0;x=t+68|0;O=t+72|0;R=t+76|0;G=t+4|0;z=t+8|0;i=t+12|0;d=t+16|0;p=t+20|0;w=t+24|0;E=t+28|0;C=t+32|0;q=t+36|0;se=(o[G>>2]|0)+(o[l>>2]|0)|0;oe=(o[z>>2]|0)+(o[h>>2]|0)|0;ie=(o[i>>2]|0)+(o[g>>2]|0)|0;re=(o[d>>2]|0)+(o[v>>2]|0)|0;ne=(o[p>>2]|0)+(o[A>>2]|0)|0;te=(o[w>>2]|0)+(o[S>>2]|0)|0;ee=(o[E>>2]|0)+(o[x>>2]|0)|0;$=(o[C>>2]|0)+(o[O>>2]|0)|0;X=(o[q>>2]|0)+(o[R>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[l>>2]|0)-(o[G>>2]|0)|0;z=(o[h>>2]|0)-(o[z>>2]|0)|0;i=(o[g>>2]|0)-(o[i>>2]|0)|0;d=(o[v>>2]|0)-(o[d>>2]|0)|0;p=(o[A>>2]|0)-(o[p>>2]|0)|0;w=(o[S>>2]|0)-(o[w>>2]|0)|0;E=(o[x>>2]|0)-(o[E>>2]|0)|0;C=(o[O>>2]|0)-(o[C>>2]|0)|0;q=(o[R>>2]|0)-(o[q>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=z;z=e+52|0;o[z>>2]=i;i=e+56|0;o[i>>2]=d;d=e+60|0;o[d>>2]=p;p=e+64|0;o[p>>2]=w;w=e+68|0;o[w>>2]=E;E=e+72|0;o[E>>2]=C;C=e+76|0;o[C>>2]=q;q=e+80|0;Xr(q,e,n);Xr(X,X,n+40|0);R=e+120|0;Xr(R,n+80|0,t+120|0);O=o[t+80>>2]<<1;x=o[t+84>>2]<<1;S=o[t+88>>2]<<1;A=o[t+92>>2]<<1;v=o[t+96>>2]<<1;g=o[t+100>>2]<<1;h=o[t+104>>2]<<1;l=o[t+108>>2]<<1;a=o[t+112>>2]<<1;r=o[t+116>>2]<<1;J=o[q>>2]|0;F=e+84|0;W=o[F>>2]|0;L=e+88|0;H=o[L>>2]|0;U=e+92|0;t=o[U>>2]|0;j=e+96|0;s=o[j>>2]|0;N=e+100|0;c=o[N>>2]|0;B=e+104|0;m=o[B>>2]|0;D=e+108|0;y=o[D>>2]|0;M=e+112|0;k=o[M>>2]|0;P=e+116|0;T=o[P>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[z>>2]|0;n=o[i>>2]|0;f=o[d>>2]|0;u=o[p>>2]|0;b=o[w>>2]|0;_=o[E>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=t-K;o[ie>>2]=s-n;o[re>>2]=c-f;o[ne>>2]=m-u;o[te>>2]=y-b;o[ee>>2]=k-_;o[$>>2]=T-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[z>>2]=K+t;o[i>>2]=n+s;o[d>>2]=f+c;o[p>>2]=u+m;o[w>>2]=b+y;o[E>>2]=_+k;o[C>>2]=I+T;C=o[R>>2]|0;T=e+124|0;I=o[T>>2]|0;E=e+128|0;k=o[E>>2]|0;_=e+132|0;w=o[_>>2]|0;y=e+136|0;b=o[y>>2]|0;p=e+140|0;m=o[p>>2]|0;u=e+144|0;d=o[u>>2]|0;c=e+148|0;f=o[c>>2]|0;i=e+152|0;s=o[i>>2]|0;n=e+156|0;t=o[n>>2]|0;o[q>>2]=C+O;o[F>>2]=I+x;o[L>>2]=k+S;o[U>>2]=w+A;o[j>>2]=b+v;o[N>>2]=m+g;o[B>>2]=d+h;o[D>>2]=f+l;o[M>>2]=s+a;o[P>>2]=t+r;o[R>>2]=O-C;o[T>>2]=x-I;o[E>>2]=S-k;o[_>>2]=A-w;o[y>>2]=v-b;o[p>>2]=g-m;o[u>>2]=h-d;o[c>>2]=l-f;o[i>>2]=a-s;o[n>>2]=r-t;return}function fi(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;c=t+44|0;u=t+48|0;p=t+52|0;y=t+56|0;_=t+60|0;E=t+64|0;T=t+68|0;R=t+72|0;x=t+76|0;G=t+4|0;q=t+8|0;r=t+12|0;d=t+16|0;h=t+20|0;w=t+24|0;A=t+28|0;C=t+32|0;F=t+36|0;se=(o[G>>2]|0)+(o[c>>2]|0)|0;oe=(o[q>>2]|0)+(o[u>>2]|0)|0;ie=(o[r>>2]|0)+(o[p>>2]|0)|0;re=(o[d>>2]|0)+(o[y>>2]|0)|0;ne=(o[h>>2]|0)+(o[_>>2]|0)|0;te=(o[w>>2]|0)+(o[E>>2]|0)|0;ee=(o[A>>2]|0)+(o[T>>2]|0)|0;$=(o[C>>2]|0)+(o[R>>2]|0)|0;X=(o[F>>2]|0)+(o[x>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;G=(o[c>>2]|0)-(o[G>>2]|0)|0;q=(o[u>>2]|0)-(o[q>>2]|0)|0;r=(o[p>>2]|0)-(o[r>>2]|0)|0;d=(o[y>>2]|0)-(o[d>>2]|0)|0;h=(o[_>>2]|0)-(o[h>>2]|0)|0;w=(o[E>>2]|0)-(o[w>>2]|0)|0;A=(o[T>>2]|0)-(o[A>>2]|0)|0;C=(o[R>>2]|0)-(o[C>>2]|0)|0;F=(o[x>>2]|0)-(o[F>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=G;G=e+48|0;o[G>>2]=q;q=e+52|0;o[q>>2]=r;r=e+56|0;o[r>>2]=d;d=e+60|0;o[d>>2]=h;h=e+64|0;o[h>>2]=w;w=e+68|0;o[w>>2]=A;A=e+72|0;o[A>>2]=C;C=e+76|0;o[C>>2]=F;F=e+80|0;Xr(F,e,n+40|0);Xr(X,X,n);x=e+120|0;Xr(x,n+80|0,t+120|0);R=o[t+80>>2]<<1;T=o[t+84>>2]<<1;E=o[t+88>>2]<<1;_=o[t+92>>2]<<1;y=o[t+96>>2]<<1;p=o[t+100>>2]<<1;u=o[t+104>>2]<<1;c=o[t+108>>2]<<1;i=o[t+112>>2]<<1;t=o[t+116>>2]<<1;J=o[F>>2]|0;L=e+84|0;W=o[L>>2]|0;U=e+88|0;H=o[U>>2]|0;j=e+92|0;z=o[j>>2]|0;N=e+96|0;s=o[N>>2]|0;B=e+100|0;a=o[B>>2]|0;D=e+104|0;m=o[D>>2]|0;M=e+108|0;g=o[M>>2]|0;P=e+112|0;k=o[P>>2]|0;O=e+116|0;S=o[O>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[G>>2]|0;K=o[q>>2]|0;n=o[r>>2]|0;f=o[d>>2]|0;l=o[h>>2]|0;b=o[w>>2]|0;v=o[A>>2]|0;I=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=z-K;o[ie>>2]=s-n;o[re>>2]=a-f;o[ne>>2]=m-l;o[te>>2]=g-b;o[ee>>2]=k-v;o[$>>2]=S-I;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[G>>2]=V+H;o[q>>2]=K+z;o[r>>2]=n+s;o[d>>2]=f+a;o[h>>2]=l+m;o[w>>2]=b+g;o[A>>2]=v+k;o[C>>2]=I+S;C=o[x>>2]|0;S=e+124|0;I=o[S>>2]|0;A=e+128|0;k=o[A>>2]|0;v=e+132|0;w=o[v>>2]|0;g=e+136|0;b=o[g>>2]|0;h=e+140|0;m=o[h>>2]|0;l=e+144|0;d=o[l>>2]|0;a=e+148|0;f=o[a>>2]|0;r=e+152|0;s=o[r>>2]|0;n=e+156|0;e=o[n>>2]|0;o[F>>2]=R-C;o[L>>2]=T-I;o[U>>2]=E-k;o[j>>2]=_-w;o[N>>2]=y-b;o[B>>2]=p-m;o[D>>2]=u-d;o[M>>2]=c-f;o[P>>2]=i-s;o[O>>2]=t-e;o[x>>2]=C+R;o[S>>2]=I+T;o[A>>2]=k+E;o[v>>2]=w+_;o[g>>2]=b+y;o[h>>2]=m+p;o[l>>2]=d+u;o[a>>2]=f+c;o[r>>2]=s+i;o[n>>2]=e+t;return}function li(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0;me=h;h=h+272|0;le=me+240|0;ue=me+192|0;c=me+144|0;f=me+96|0;de=me+48|0;he=me;pe=e+40|0;Qr(pe,t);l=e+80|0;o[l>>2]=1;a=e+84|0;n=a;i=n+36|0;do{o[n>>2]=0;n=n+4|0}while((n|0)<(i|0));Yr(ue,pe);Xr(c,ue,1248);te=ue+4|0;ne=ue+8|0;re=ue+12|0;ie=ue+16|0;oe=ue+20|0;se=ue+24|0;ae=ue+28|0;ce=ue+32|0;fe=ue+36|0;C=o[l>>2]|0;R=o[a>>2]|0;I=o[e+88>>2]|0;S=o[e+92>>2]|0;E=o[e+96>>2]|0;w=o[e+100>>2]|0;i=o[e+104>>2]|0;ee=o[e+108>>2]|0;Z=o[e+112>>2]|0;X=o[e+116>>2]|0;v=(o[ue>>2]|0)-C|0;_=(o[te>>2]|0)-R|0;l=(o[ne>>2]|0)-I|0;u=(o[re>>2]|0)-S|0;d=(o[ie>>2]|0)-E|0;p=(o[oe>>2]|0)-w|0;m=(o[se>>2]|0)-i|0;g=(o[ae>>2]|0)-ee|0;y=(o[ce>>2]|0)-Z|0;b=(o[fe>>2]|0)-X|0;o[ue>>2]=v;o[te>>2]=_;o[ne>>2]=l;o[re>>2]=u;o[ie>>2]=d;o[oe>>2]=p;o[se>>2]=m;o[ae>>2]=g;o[ce>>2]=y;o[fe>>2]=b;x=c+4|0;T=c+8|0;k=c+12|0;A=c+16|0;a=c+20|0;n=c+24|0;$=c+28|0;J=c+32|0;Y=c+36|0;R=(o[x>>2]|0)+R|0;I=(o[T>>2]|0)+I|0;S=(o[k>>2]|0)+S|0;E=(o[A>>2]|0)+E|0;w=(o[a>>2]|0)+w|0;i=(o[n>>2]|0)+i|0;ee=(o[$>>2]|0)+ee|0;Z=(o[J>>2]|0)+Z|0;X=(o[Y>>2]|0)+X|0;o[c>>2]=(o[c>>2]|0)+C;o[x>>2]=R;o[T>>2]=I;o[k>>2]=S;o[A>>2]=E;o[a>>2]=w;o[n>>2]=i;o[$>>2]=ee;o[J>>2]=Z;o[Y>>2]=X;Yr(f,c);Xr(f,f,c);Yr(e,f);Xr(e,e,c);Xr(e,e,ue);Zr(e,e);Xr(e,e,f);Xr(e,e,ue);Yr(de,e);Xr(de,de,c);Y=de+4|0;X=de+8|0;J=de+12|0;Z=de+16|0;$=de+20|0;ee=de+24|0;n=de+28|0;i=de+32|0;a=de+36|0;f=(o[Y>>2]|0)-_|0;l=(o[X>>2]|0)-l|0;u=(o[J>>2]|0)-u|0;d=(o[Z>>2]|0)-d|0;p=(o[$>>2]|0)-p|0;m=(o[ee>>2]|0)-m|0;g=(o[n>>2]|0)-g|0;y=(o[i>>2]|0)-y|0;b=(o[a>>2]|0)-b|0;o[he>>2]=(o[de>>2]|0)-v;c=he+4|0;o[c>>2]=f;f=he+8|0;o[f>>2]=l;l=he+12|0;o[l>>2]=u;u=he+16|0;o[u>>2]=d;d=he+20|0;o[d>>2]=p;p=he+24|0;o[p>>2]=m;m=he+28|0;o[m>>2]=g;g=he+32|0;o[g>>2]=y;y=he+36|0;o[y>>2]=b;Jr(le,he);b=le+1|0;v=le+2|0;_=le+3|0;w=le+4|0;A=le+5|0;E=le+6|0;k=le+7|0;S=le+8|0;T=le+9|0;I=le+10|0;x=le+11|0;R=le+12|0;C=le+13|0;O=le+14|0;P=le+15|0;M=le+16|0;D=le+17|0;B=le+18|0;N=le+19|0;j=le+20|0;U=le+21|0;L=le+22|0;F=le+23|0;q=le+24|0;z=le+25|0;K=le+26|0;G=le+27|0;H=le+28|0;V=le+29|0;Q=le+30|0;W=le+31|0;do{if((r[b>>0]|r[le>>0]|r[v>>0]|r[_>>0]|r[w>>0]|r[A>>0]|r[E>>0]|r[k>>0]|r[S>>0]|r[T>>0]|r[I>>0]|r[x>>0]|r[R>>0]|r[C>>0]|r[O>>0]|r[P>>0]|r[M>>0]|r[D>>0]|r[B>>0]|r[N>>0]|r[j>>0]|r[U>>0]|r[L>>0]|r[F>>0]|r[q>>0]|r[z>>0]|r[K>>0]|r[G>>0]|r[H>>0]|r[V>>0]|r[Q>>0]|r[W>>0])<<24>>24){te=(o[te>>2]|0)+(o[Y>>2]|0)|0;ne=(o[ne>>2]|0)+(o[X>>2]|0)|0;re=(o[re>>2]|0)+(o[J>>2]|0)|0;ie=(o[ie>>2]|0)+(o[Z>>2]|0)|0;oe=(o[oe>>2]|0)+(o[$>>2]|0)|0;se=(o[se>>2]|0)+(o[ee>>2]|0)|0;ae=(o[ae>>2]|0)+(o[n>>2]|0)|0;ce=(o[ce>>2]|0)+(o[i>>2]|0)|0;fe=(o[fe>>2]|0)+(o[a>>2]|0)|0;o[he>>2]=(o[ue>>2]|0)+(o[de>>2]|0);o[c>>2]=te;o[f>>2]=ne;o[l>>2]=re;o[u>>2]=ie;o[d>>2]=oe;o[p>>2]=se;o[m>>2]=ae;o[g>>2]=ce;o[y>>2]=fe;Jr(le,he);if(!((r[b>>0]|r[le>>0]|r[v>>0]|r[_>>0]|r[w>>0]|r[A>>0]|r[E>>0]|r[k>>0]|r[S>>0]|r[T>>0]|r[I>>0]|r[x>>0]|r[R>>0]|r[C>>0]|r[O>>0]|r[P>>0]|r[M>>0]|r[D>>0]|r[B>>0]|r[N>>0]|r[j>>0]|r[U>>0]|r[L>>0]|r[F>>0]|r[q>>0]|r[z>>0]|r[K>>0]|r[G>>0]|r[H>>0]|r[V>>0]|r[Q>>0]|r[W>>0])<<24>>24)){Xr(e,e,1296);break}else{pe=-1;h=me;return pe|0}}}while(0);Jr(le,e);if(((s[t+31>>0]|0)>>>7|0)==(r[le>>0]&1|0)){Z=e+4|0;ee=e+8|0;ne=e+12|0;ie=e+16|0;se=e+20|0;ce=e+24|0;t=e+28|0;ue=e+32|0;he=e+36|0;J=0-(o[Z>>2]|0)|0;$=0-(o[ee>>2]|0)|0;te=0-(o[ne>>2]|0)|0;re=0-(o[ie>>2]|0)|0;oe=0-(o[se>>2]|0)|0;ae=0-(o[ce>>2]|0)|0;fe=0-(o[t>>2]|0)|0;le=0-(o[ue>>2]|0)|0;de=0-(o[he>>2]|0)|0;o[e>>2]=0-(o[e>>2]|0);o[Z>>2]=J;o[ee>>2]=$;o[ne>>2]=te;o[ie>>2]=re;o[se>>2]=oe;o[ce>>2]=ae;o[t>>2]=fe;o[ue>>2]=le;o[he>>2]=de}Xr(e+120|0,e,pe);pe=0;h=me;return pe|0}function ui(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0;v=h;h=h+592|0;p=v+464|0;g=v;y=v+304|0;m=v+184|0;b=v+64|0;i=r[t>>0]|0;r[g>>0]=i&15;r[g+1>>0]=(i&255)>>>4;i=r[t+1>>0]|0;r[g+2>>0]=i&15;r[g+3>>0]=(i&255)>>>4;i=r[t+2>>0]|0;r[g+4>>0]=i&15;r[g+5>>0]=(i&255)>>>4;i=r[t+3>>0]|0;r[g+6>>0]=i&15;r[g+7>>0]=(i&255)>>>4;i=r[t+4>>0]|0;r[g+8>>0]=i&15;r[g+9>>0]=(i&255)>>>4;i=r[t+5>>0]|0;r[g+10>>0]=i&15;r[g+11>>0]=(i&255)>>>4;i=r[t+6>>0]|0;r[g+12>>0]=i&15;r[g+13>>0]=(i&255)>>>4;i=r[t+7>>0]|0;r[g+14>>0]=i&15;r[g+15>>0]=(i&255)>>>4;i=r[t+8>>0]|0;r[g+16>>0]=i&15;r[g+17>>0]=(i&255)>>>4;i=r[t+9>>0]|0;r[g+18>>0]=i&15;r[g+19>>0]=(i&255)>>>4;i=r[t+10>>0]|0;r[g+20>>0]=i&15;r[g+21>>0]=(i&255)>>>4;i=r[t+11>>0]|0;r[g+22>>0]=i&15;r[g+23>>0]=(i&255)>>>4;i=r[t+12>>0]|0;r[g+24>>0]=i&15;r[g+25>>0]=(i&255)>>>4;i=r[t+13>>0]|0;r[g+26>>0]=i&15;r[g+27>>0]=(i&255)>>>4;i=r[t+14>>0]|0;r[g+28>>0]=i&15;r[g+29>>0]=(i&255)>>>4;i=r[t+15>>0]|0;r[g+30>>0]=i&15;r[g+31>>0]=(i&255)>>>4;i=r[t+16>>0]|0;r[g+32>>0]=i&15;r[g+33>>0]=(i&255)>>>4;i=r[t+17>>0]|0;r[g+34>>0]=i&15;r[g+35>>0]=(i&255)>>>4;i=r[t+18>>0]|0;r[g+36>>0]=i&15;r[g+37>>0]=(i&255)>>>4;i=r[t+19>>0]|0;r[g+38>>0]=i&15;r[g+39>>0]=(i&255)>>>4;i=r[t+20>>0]|0;r[g+40>>0]=i&15;r[g+41>>0]=(i&255)>>>4;i=r[t+21>>0]|0;r[g+42>>0]=i&15;r[g+43>>0]=(i&255)>>>4;i=r[t+22>>0]|0;r[g+44>>0]=i&15;r[g+45>>0]=(i&255)>>>4;i=r[t+23>>0]|0;r[g+46>>0]=i&15;r[g+47>>0]=(i&255)>>>4;i=r[t+24>>0]|0;r[g+48>>0]=i&15;r[g+49>>0]=(i&255)>>>4;i=r[t+25>>0]|0;r[g+50>>0]=i&15;r[g+51>>0]=(i&255)>>>4;i=r[t+26>>0]|0;r[g+52>>0]=i&15;r[g+53>>0]=(i&255)>>>4;i=r[t+27>>0]|0;r[g+54>>0]=i&15;r[g+55>>0]=(i&255)>>>4;i=r[t+28>>0]|0;r[g+56>>0]=i&15;r[g+57>>0]=(i&255)>>>4;i=r[t+29>>0]|0;r[g+58>>0]=i&15;r[g+59>>0]=(i&255)>>>4;i=r[t+30>>0]|0;r[g+60>>0]=i&15;r[g+61>>0]=(i&255)>>>4;t=r[t+31>>0]|0;r[g+62>>0]=t&15;i=g+63|0;r[i>>0]=(t&255)>>>4;t=0;n=0;do{d=g+n|0;u=t+(s[d>>0]|0)|0;t=(u<<24)+134217728>>28;r[d>>0]=u-(t<<4);n=n+1|0}while((n|0)!=63);r[i>>0]=t+(s[i>>0]|0);t=e;n=t+40|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));u=e+40|0;o[u>>2]=1;f=e+44|0;t=f;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));d=e+80|0;o[d>>2]=1;l=e+84|0;t=l;n=t+76|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));n=y+120|0;i=y+40|0;a=y+80|0;c=e+120|0;t=1;do{di(b,t>>>1,r[g+t>>0]|0);ci(y,e,b);Xr(e,y,n);Xr(u,i,a);Xr(d,a,n);Xr(c,y,i);t=t+2|0}while(t>>>0<64);I=o[e+4>>2]|0;S=o[e+8>>2]|0;k=o[e+12>>2]|0;E=o[e+16>>2]|0;A=o[e+20>>2]|0;w=o[e+24>>2]|0;_=o[e+28>>2]|0;t=o[e+32>>2]|0;T=o[e+36>>2]|0;o[p>>2]=o[e>>2];o[p+4>>2]=I;o[p+8>>2]=S;o[p+12>>2]=k;o[p+16>>2]=E;o[p+20>>2]=A;o[p+24>>2]=w;o[p+28>>2]=_;o[p+32>>2]=t;o[p+36>>2]=T;T=o[f>>2]|0;t=o[e+48>>2]|0;f=o[e+52>>2]|0;_=o[e+56>>2]|0;w=o[e+60>>2]|0;A=o[e+64>>2]|0;E=o[e+68>>2]|0;k=o[e+72>>2]|0;S=o[e+76>>2]|0;o[p+40>>2]=o[u>>2];o[p+44>>2]=T;o[p+48>>2]=t;o[p+52>>2]=f;o[p+56>>2]=_;o[p+60>>2]=w;o[p+64>>2]=A;o[p+68>>2]=E;o[p+72>>2]=k;o[p+76>>2]=S;S=o[l>>2]|0;k=o[e+88>>2]|0;E=o[e+92>>2]|0;A=o[e+96>>2]|0;w=o[e+100>>2]|0;_=o[e+104>>2]|0;f=o[e+108>>2]|0;l=o[e+112>>2]|0;t=o[e+116>>2]|0;o[p+80>>2]=o[d>>2];o[p+84>>2]=S;o[p+88>>2]=k;o[p+92>>2]=E;o[p+96>>2]=A;o[p+100>>2]=w;o[p+104>>2]=_;o[p+108>>2]=f;o[p+112>>2]=l;o[p+116>>2]=t;si(y,p);Xr(m,y,n);p=m+40|0;Xr(p,i,a);t=m+80|0;Xr(t,a,n);si(y,m);Xr(m,y,n);Xr(p,i,a);Xr(t,a,n);si(y,m);Xr(m,y,n);Xr(p,i,a);Xr(t,a,n);si(y,m);Xr(e,y,n);Xr(u,i,a);Xr(d,a,n);Xr(c,y,i);t=0;do{di(b,t>>>1,r[g+t>>0]|0);ci(y,e,b);Xr(e,y,n);Xr(u,i,a);Xr(d,a,n);Xr(c,y,i);t=t+2|0}while(t>>>0<64);h=v;return}function di(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0;r=n<<24>>24;b=0-((n&255)>>>7&255)|0;n=r-((b&r)<<1)&255;o[e>>2]=1;r=e+4|0;v=r;_=v+36|0;do{o[v>>2]=0;v=v+4|0}while((v|0)<(_|0));i=e+40|0;o[i>>2]=1;s=e+44|0;a=e+80|0;c=ks((n^1)&255|0,0,-1,-1)|0;c=Cs(c|0,T|0,63)|0;f=1344+(t*960|0)|0;l=e+8|0;u=e+12|0;d=e+16|0;h=e+20|0;p=e+24|0;m=e+28|0;g=e+32|0;y=e+36|0;v=s;_=v+76|0;do{o[v>>2]=0;v=v+4|0}while((v|0)<(_|0));_e=0-c|0;ye=o[1344+(t*960|0)+4>>2]&_e;ge=o[1344+(t*960|0)+8>>2]&_e;me=o[1344+(t*960|0)+12>>2]&_e;pe=o[1344+(t*960|0)+16>>2]&_e;he=o[1344+(t*960|0)+20>>2]&_e;de=o[1344+(t*960|0)+24>>2]&_e;ue=o[1344+(t*960|0)+28>>2]&_e;le=o[1344+(t*960|0)+32>>2]&_e;fe=o[1344+(t*960|0)+36>>2]&_e;be=(o[f>>2]^1)&_e^1;o[e>>2]=be;o[r>>2]=ye;o[l>>2]=ge;o[u>>2]=me;o[d>>2]=pe;o[h>>2]=he;o[p>>2]=de;o[m>>2]=ue;o[g>>2]=le;o[y>>2]=fe;ne=e+48|0;$=e+52|0;X=e+56|0;Q=e+60|0;G=e+64|0;q=e+68|0;U=e+72|0;B=e+76|0;oe=o[1344+(t*960|0)+44>>2]&_e;re=o[1344+(t*960|0)+48>>2]&_e;ee=o[1344+(t*960|0)+52>>2]&_e;J=o[1344+(t*960|0)+56>>2]&_e;W=o[1344+(t*960|0)+60>>2]&_e;H=o[1344+(t*960|0)+64>>2]&_e;z=o[1344+(t*960|0)+68>>2]&_e;L=o[1344+(t*960|0)+72>>2]&_e;N=o[1344+(t*960|0)+76>>2]&_e;ae=(o[1344+(t*960|0)+40>>2]^1)&_e^1;o[i>>2]=ae;o[s>>2]=oe;o[ne>>2]=re;o[$>>2]=ee;o[X>>2]=J;o[Q>>2]=W;o[G>>2]=H;o[q>>2]=z;o[U>>2]=L;o[B>>2]=N;D=o[a>>2]|0;P=e+84|0;M=o[P>>2]|0;C=e+88|0;O=o[C>>2]|0;x=e+92|0;R=o[x>>2]|0;S=e+96|0;I=o[S>>2]|0;E=e+100|0;k=o[E>>2]|0;w=e+104|0;A=o[w>>2]|0;c=e+108|0;Z=o[c>>2]|0;v=e+112|0;f=o[v>>2]|0;_=e+116|0;se=o[_>>2]|0;ie=(o[1344+(t*960|0)+84>>2]^M)&_e;te=(o[1344+(t*960|0)+88>>2]^O)&_e;Y=(o[1344+(t*960|0)+92>>2]^R)&_e;V=(o[1344+(t*960|0)+96>>2]^I)&_e;K=(o[1344+(t*960|0)+100>>2]^k)&_e;F=(o[1344+(t*960|0)+104>>2]^A)&_e;j=(o[1344+(t*960|0)+108>>2]^Z)&_e;ce=(o[1344+(t*960|0)+112>>2]^f)&_e;ve=(o[1344+(t*960|0)+116>>2]^se)&_e;D=(o[1344+(t*960|0)+80>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^2)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+124>>2]^ye)&ve;j=(o[1344+(t*960|0)+128>>2]^ge)&ve;F=(o[1344+(t*960|0)+132>>2]^me)&ve;K=(o[1344+(t*960|0)+136>>2]^pe)&ve;V=(o[1344+(t*960|0)+140>>2]^he)&ve;Y=(o[1344+(t*960|0)+144>>2]^de)&ve;te=(o[1344+(t*960|0)+148>>2]^ue)&ve;ie=(o[1344+(t*960|0)+152>>2]^le)&ve;_e=(o[1344+(t*960|0)+156>>2]^fe)&ve;be=(o[1344+(t*960|0)+120>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=te^ue;o[m>>2]=ue;le=ie^le;o[g>>2]=le;fe=_e^fe;o[y>>2]=fe;_e=(o[1344+(t*960|0)+164>>2]^oe)&ve;ie=(o[1344+(t*960|0)+168>>2]^re)&ve;te=(o[1344+(t*960|0)+172>>2]^ee)&ve;Y=(o[1344+(t*960|0)+176>>2]^J)&ve;V=(o[1344+(t*960|0)+180>>2]^W)&ve;K=(o[1344+(t*960|0)+184>>2]^H)&ve;F=(o[1344+(t*960|0)+188>>2]^z)&ve;j=(o[1344+(t*960|0)+192>>2]^L)&ve;ce=(o[1344+(t*960|0)+196>>2]^N)&ve;ae=(o[1344+(t*960|0)+160>>2]^ae)&ve^ae;o[i>>2]=ae;oe=_e^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;N=ce^N;o[B>>2]=N;ce=(o[1344+(t*960|0)+204>>2]^M)&ve;j=(o[1344+(t*960|0)+208>>2]^O)&ve;F=(o[1344+(t*960|0)+212>>2]^R)&ve;K=(o[1344+(t*960|0)+216>>2]^I)&ve;V=(o[1344+(t*960|0)+220>>2]^k)&ve;Y=(o[1344+(t*960|0)+224>>2]^A)&ve;te=(o[1344+(t*960|0)+228>>2]^Z)&ve;ie=(o[1344+(t*960|0)+232>>2]^f)&ve;_e=(o[1344+(t*960|0)+236>>2]^se)&ve;D=(o[1344+(t*960|0)+200>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;Z=te^Z;o[c>>2]=Z;f=ie^f;o[v>>2]=f;se=_e^se;o[_>>2]=se;_e=ks((n^3)&255|0,0,-1,-1)|0;_e=Cs(_e|0,T|0,63)|0;_e=0-_e|0;ie=(o[1344+(t*960|0)+244>>2]^ye)&_e;te=(o[1344+(t*960|0)+248>>2]^ge)&_e;Y=(o[1344+(t*960|0)+252>>2]^me)&_e;V=(o[1344+(t*960|0)+256>>2]^pe)&_e;K=(o[1344+(t*960|0)+260>>2]^he)&_e;F=(o[1344+(t*960|0)+264>>2]^de)&_e;j=(o[1344+(t*960|0)+268>>2]^ue)&_e;ce=(o[1344+(t*960|0)+272>>2]^le)&_e;ve=(o[1344+(t*960|0)+276>>2]^fe)&_e;be=(o[1344+(t*960|0)+240>>2]^be)&_e^be;o[e>>2]=be;ye=ie^ye;o[r>>2]=ye;ge=te^ge;o[l>>2]=ge;me=Y^me;o[u>>2]=me;pe=V^pe;o[d>>2]=pe;he=K^he;o[h>>2]=he;de=F^de;o[p>>2]=de;ue=j^ue;o[m>>2]=ue;le=ce^le;o[g>>2]=le;fe=ve^fe;o[y>>2]=fe;ve=(o[1344+(t*960|0)+284>>2]^oe)&_e;ce=(o[1344+(t*960|0)+288>>2]^re)&_e;j=(o[1344+(t*960|0)+292>>2]^ee)&_e;F=(o[1344+(t*960|0)+296>>2]^J)&_e;K=(o[1344+(t*960|0)+300>>2]^W)&_e;V=(o[1344+(t*960|0)+304>>2]^H)&_e;Y=(o[1344+(t*960|0)+308>>2]^z)&_e;te=(o[1344+(t*960|0)+312>>2]^L)&_e;ie=(o[1344+(t*960|0)+316>>2]^N)&_e;ae=(o[1344+(t*960|0)+280>>2]^ae)&_e^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ce^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=F^J;o[X>>2]=J;W=K^W;o[Q>>2]=W;H=V^H;o[G>>2]=H;z=Y^z;o[q>>2]=z;L=te^L;o[U>>2]=L;N=ie^N;o[B>>2]=N;ie=(o[1344+(t*960|0)+324>>2]^M)&_e;te=(o[1344+(t*960|0)+328>>2]^O)&_e;Y=(o[1344+(t*960|0)+332>>2]^R)&_e;V=(o[1344+(t*960|0)+336>>2]^I)&_e;K=(o[1344+(t*960|0)+340>>2]^k)&_e;F=(o[1344+(t*960|0)+344>>2]^A)&_e;j=(o[1344+(t*960|0)+348>>2]^Z)&_e;ce=(o[1344+(t*960|0)+352>>2]^f)&_e;ve=(o[1344+(t*960|0)+356>>2]^se)&_e;D=(o[1344+(t*960|0)+320>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^4)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+364>>2]^ye)&ve;j=(o[1344+(t*960|0)+368>>2]^ge)&ve;F=(o[1344+(t*960|0)+372>>2]^me)&ve;K=(o[1344+(t*960|0)+376>>2]^pe)&ve;V=(o[1344+(t*960|0)+380>>2]^he)&ve;Y=(o[1344+(t*960|0)+384>>2]^de)&ve;te=(o[1344+(t*960|0)+388>>2]^ue)&ve;ie=(o[1344+(t*960|0)+392>>2]^le)&ve;_e=(o[1344+(t*960|0)+396>>2]^fe)&ve;be=(o[1344+(t*960|0)+360>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=te^ue;o[m>>2]=ue;le=ie^le;o[g>>2]=le;fe=_e^fe;o[y>>2]=fe;_e=(o[1344+(t*960|0)+404>>2]^oe)&ve;ie=(o[1344+(t*960|0)+408>>2]^re)&ve;te=(o[1344+(t*960|0)+412>>2]^ee)&ve;Y=(o[1344+(t*960|0)+416>>2]^J)&ve;V=(o[1344+(t*960|0)+420>>2]^W)&ve;K=(o[1344+(t*960|0)+424>>2]^H)&ve;F=(o[1344+(t*960|0)+428>>2]^z)&ve;j=(o[1344+(t*960|0)+432>>2]^L)&ve;ce=(o[1344+(t*960|0)+436>>2]^N)&ve;ae=(o[1344+(t*960|0)+400>>2]^ae)&ve^ae;o[i>>2]=ae;oe=_e^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;N=ce^N;o[B>>2]=N;ce=(o[1344+(t*960|0)+444>>2]^M)&ve;j=(o[1344+(t*960|0)+448>>2]^O)&ve;F=(o[1344+(t*960|0)+452>>2]^R)&ve;K=(o[1344+(t*960|0)+456>>2]^I)&ve;V=(o[1344+(t*960|0)+460>>2]^k)&ve;Y=(o[1344+(t*960|0)+464>>2]^A)&ve;te=(o[1344+(t*960|0)+468>>2]^Z)&ve;ie=(o[1344+(t*960|0)+472>>2]^f)&ve;_e=(o[1344+(t*960|0)+476>>2]^se)&ve;D=(o[1344+(t*960|0)+440>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;Z=te^Z;o[c>>2]=Z;f=ie^f;o[v>>2]=f;se=_e^se;o[_>>2]=se;_e=ks((n^5)&255|0,0,-1,-1)|0;_e=Cs(_e|0,T|0,63)|0;_e=0-_e|0;ie=(o[1344+(t*960|0)+484>>2]^ye)&_e;te=(o[1344+(t*960|0)+488>>2]^ge)&_e;Y=(o[1344+(t*960|0)+492>>2]^me)&_e;V=(o[1344+(t*960|0)+496>>2]^pe)&_e;K=(o[1344+(t*960|0)+500>>2]^he)&_e;F=(o[1344+(t*960|0)+504>>2]^de)&_e;j=(o[1344+(t*960|0)+508>>2]^ue)&_e;ce=(o[1344+(t*960|0)+512>>2]^le)&_e;ve=(o[1344+(t*960|0)+516>>2]^fe)&_e;be=(o[1344+(t*960|0)+480>>2]^be)&_e^be;o[e>>2]=be;ye=ie^ye;o[r>>2]=ye;ge=te^ge;o[l>>2]=ge;me=Y^me;o[u>>2]=me;pe=V^pe;o[d>>2]=pe;he=K^he;o[h>>2]=he;de=F^de;o[p>>2]=de;ue=j^ue;o[m>>2]=ue;le=ce^le;o[g>>2]=le;fe=ve^fe;o[y>>2]=fe;ve=(o[1344+(t*960|0)+524>>2]^oe)&_e;ce=(o[1344+(t*960|0)+528>>2]^re)&_e;j=(o[1344+(t*960|0)+532>>2]^ee)&_e;F=(o[1344+(t*960|0)+536>>2]^J)&_e;K=(o[1344+(t*960|0)+540>>2]^W)&_e;V=(o[1344+(t*960|0)+544>>2]^H)&_e;Y=(o[1344+(t*960|0)+548>>2]^z)&_e;te=(o[1344+(t*960|0)+552>>2]^L)&_e;ie=(o[1344+(t*960|0)+556>>2]^N)&_e;ae=(o[1344+(t*960|0)+520>>2]^ae)&_e^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ce^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=F^J;o[X>>2]=J;W=K^W;o[Q>>2]=W;H=V^H;o[G>>2]=H;z=Y^z;o[q>>2]=z;L=te^L;o[U>>2]=L;N=ie^N;o[B>>2]=N;ie=(o[1344+(t*960|0)+564>>2]^M)&_e;te=(o[1344+(t*960|0)+568>>2]^O)&_e;Y=(o[1344+(t*960|0)+572>>2]^R)&_e;V=(o[1344+(t*960|0)+576>>2]^I)&_e;K=(o[1344+(t*960|0)+580>>2]^k)&_e;F=(o[1344+(t*960|0)+584>>2]^A)&_e;j=(o[1344+(t*960|0)+588>>2]^Z)&_e;ce=(o[1344+(t*960|0)+592>>2]^f)&_e;ve=(o[1344+(t*960|0)+596>>2]^se)&_e;D=(o[1344+(t*960|0)+560>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^6)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+604>>2]^ye)&ve;j=(o[1344+(t*960|0)+608>>2]^ge)&ve;F=(o[1344+(t*960|0)+612>>2]^me)&ve;K=(o[1344+(t*960|0)+616>>2]^pe)&ve;V=(o[1344+(t*960|0)+620>>2]^he)&ve;Y=(o[1344+(t*960|0)+624>>2]^de)&ve;te=(o[1344+(t*960|0)+628>>2]^ue)&ve;ie=(o[1344+(t*960|0)+632>>2]^le)&ve;_e=(o[1344+(t*960|0)+636>>2]^fe)&ve;be=(o[1344+(t*960|0)+600>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=te^ue;o[m>>2]=ue;le=ie^le;o[g>>2]=le;fe=_e^fe;o[y>>2]=fe;_e=(o[1344+(t*960|0)+644>>2]^oe)&ve;ie=(o[1344+(t*960|0)+648>>2]^re)&ve;te=(o[1344+(t*960|0)+652>>2]^ee)&ve;Y=(o[1344+(t*960|0)+656>>2]^J)&ve;V=(o[1344+(t*960|0)+660>>2]^W)&ve;K=(o[1344+(t*960|0)+664>>2]^H)&ve;F=(o[1344+(t*960|0)+668>>2]^z)&ve;j=(o[1344+(t*960|0)+672>>2]^L)&ve;ce=(o[1344+(t*960|0)+676>>2]^N)&ve;ae=(o[1344+(t*960|0)+640>>2]^ae)&ve^ae;o[i>>2]=ae;oe=_e^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;N=ce^N;o[B>>2]=N;ce=(o[1344+(t*960|0)+684>>2]^M)&ve;j=(o[1344+(t*960|0)+688>>2]^O)&ve;F=(o[1344+(t*960|0)+692>>2]^R)&ve;K=(o[1344+(t*960|0)+696>>2]^I)&ve;V=(o[1344+(t*960|0)+700>>2]^k)&ve;Y=(o[1344+(t*960|0)+704>>2]^A)&ve;te=(o[1344+(t*960|0)+708>>2]^Z)&ve;ie=(o[1344+(t*960|0)+712>>2]^f)&ve;_e=(o[1344+(t*960|0)+716>>2]^se)&ve;D=(o[1344+(t*960|0)+680>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;Z=te^Z;o[c>>2]=Z;f=ie^f;o[v>>2]=f;se=_e^se;o[_>>2]=se;_e=ks((n^7)&255|0,0,-1,-1)|0;_e=Cs(_e|0,T|0,63)|0;_e=0-_e|0;ie=(o[1344+(t*960|0)+724>>2]^ye)&_e;te=(o[1344+(t*960|0)+728>>2]^ge)&_e;Y=(o[1344+(t*960|0)+732>>2]^me)&_e;V=(o[1344+(t*960|0)+736>>2]^pe)&_e;K=(o[1344+(t*960|0)+740>>2]^he)&_e;F=(o[1344+(t*960|0)+744>>2]^de)&_e;j=(o[1344+(t*960|0)+748>>2]^ue)&_e;ce=(o[1344+(t*960|0)+752>>2]^le)&_e;ve=(o[1344+(t*960|0)+756>>2]^fe)&_e;be=(o[1344+(t*960|0)+720>>2]^be)&_e^be;o[e>>2]=be;ye=ie^ye;o[r>>2]=ye;ge=te^ge;o[l>>2]=ge;me=Y^me;o[u>>2]=me;pe=V^pe;o[d>>2]=pe;he=K^he;o[h>>2]=he;de=F^de;o[p>>2]=de;ue=j^ue;o[m>>2]=ue;le=ce^le;o[g>>2]=le;fe=ve^fe;o[y>>2]=fe;ve=(o[1344+(t*960|0)+764>>2]^oe)&_e;ce=(o[1344+(t*960|0)+768>>2]^re)&_e;j=(o[1344+(t*960|0)+772>>2]^ee)&_e;F=(o[1344+(t*960|0)+776>>2]^J)&_e;K=(o[1344+(t*960|0)+780>>2]^W)&_e;V=(o[1344+(t*960|0)+784>>2]^H)&_e;Y=(o[1344+(t*960|0)+788>>2]^z)&_e;te=(o[1344+(t*960|0)+792>>2]^L)&_e;ie=(o[1344+(t*960|0)+796>>2]^N)&_e;ae=(o[1344+(t*960|0)+760>>2]^ae)&_e^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ce^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=F^J;o[X>>2]=J;W=K^W;o[Q>>2]=W;H=V^H;o[G>>2]=H;z=Y^z;o[q>>2]=z;L=te^L;o[U>>2]=L;N=ie^N;o[B>>2]=N;ie=(o[1344+(t*960|0)+804>>2]^M)&_e;te=(o[1344+(t*960|0)+808>>2]^O)&_e;Y=(o[1344+(t*960|0)+812>>2]^R)&_e;V=(o[1344+(t*960|0)+816>>2]^I)&_e;K=(o[1344+(t*960|0)+820>>2]^k)&_e;F=(o[1344+(t*960|0)+824>>2]^A)&_e;j=(o[1344+(t*960|0)+828>>2]^Z)&_e;ce=(o[1344+(t*960|0)+832>>2]^f)&_e;ve=(o[1344+(t*960|0)+836>>2]^se)&_e;D=(o[1344+(t*960|0)+800>>2]^D)&_e^D;o[a>>2]=D;M=ie^M;o[P>>2]=M;O=te^O;o[C>>2]=O;R=Y^R;o[x>>2]=R;I=V^I;o[S>>2]=I;k=K^k;o[E>>2]=k;A=F^A;o[w>>2]=A;Z=j^Z;o[c>>2]=Z;f=ce^f;o[v>>2]=f;se=ve^se;o[_>>2]=se;ve=ks((n^8)&255|0,0,-1,-1)|0;ve=Cs(ve|0,T|0,63)|0;ve=0-ve|0;ce=(o[1344+(t*960|0)+844>>2]^ye)&ve;j=(o[1344+(t*960|0)+848>>2]^ge)&ve;F=(o[1344+(t*960|0)+852>>2]^me)&ve;K=(o[1344+(t*960|0)+856>>2]^pe)&ve;V=(o[1344+(t*960|0)+860>>2]^he)&ve;Y=(o[1344+(t*960|0)+864>>2]^de)&ve;n=(o[1344+(t*960|0)+868>>2]^ue)&ve;te=(o[1344+(t*960|0)+872>>2]^le)&ve;ie=(o[1344+(t*960|0)+876>>2]^fe)&ve;be=(o[1344+(t*960|0)+840>>2]^be)&ve^be;o[e>>2]=be;ye=ce^ye;o[r>>2]=ye;ge=j^ge;o[l>>2]=ge;me=F^me;o[u>>2]=me;pe=K^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;ue=n^ue;o[m>>2]=ue;le=te^le;o[g>>2]=le;fe=ie^fe;o[y>>2]=fe;ie=(o[1344+(t*960|0)+884>>2]^oe)&ve;te=(o[1344+(t*960|0)+888>>2]^re)&ve;n=(o[1344+(t*960|0)+892>>2]^ee)&ve;Y=(o[1344+(t*960|0)+896>>2]^J)&ve;V=(o[1344+(t*960|0)+900>>2]^W)&ve;K=(o[1344+(t*960|0)+904>>2]^H)&ve;F=(o[1344+(t*960|0)+908>>2]^z)&ve;j=(o[1344+(t*960|0)+912>>2]^L)&ve;ce=(o[1344+(t*960|0)+916>>2]^N)&ve;ae=(o[1344+(t*960|0)+880>>2]^ae)&ve^ae;o[i>>2]=ae;oe=ie^oe;o[s>>2]=oe;re=te^re;o[ne>>2]=re;ee=n^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=K^H;o[G>>2]=H;z=F^z;o[q>>2]=z;L=j^L;o[U>>2]=L;N=ce^N;o[B>>2]=N;ce=(o[1344+(t*960|0)+924>>2]^M)&ve;j=(o[1344+(t*960|0)+928>>2]^O)&ve;F=(o[1344+(t*960|0)+932>>2]^R)&ve;K=(o[1344+(t*960|0)+936>>2]^I)&ve;V=(o[1344+(t*960|0)+940>>2]^k)&ve;Y=(o[1344+(t*960|0)+944>>2]^A)&ve;n=(o[1344+(t*960|0)+948>>2]^Z)&ve;te=(o[1344+(t*960|0)+952>>2]^f)&ve;ie=(o[1344+(t*960|0)+956>>2]^se)&ve;D=(o[1344+(t*960|0)+920>>2]^D)&ve^D;o[a>>2]=D;M=ce^M;o[P>>2]=M;O=j^O;o[C>>2]=O;R=F^R;o[x>>2]=R;I=K^I;o[S>>2]=I;k=V^k;o[E>>2]=k;A=Y^A;o[w>>2]=A;n=n^Z;o[c>>2]=n;f=te^f;o[v>>2]=f;t=ie^se;o[_>>2]=t;se=o[r>>2]|0;ie=o[l>>2]|0;te=o[u>>2]|0;Z=o[d>>2]|0;Y=o[h>>2]|0;V=o[p>>2]|0;K=o[m>>2]|0;F=o[g>>2]|0;j=o[y>>2]|0;ce=(ae^be)&b;o[e>>2]=ce^be;o[r>>2]=(oe^ye)&b^ye;o[l>>2]=(re^ge)&b^ge;o[u>>2]=(ee^me)&b^me;o[d>>2]=(J^pe)&b^pe;o[h>>2]=(W^he)&b^he;o[p>>2]=(H^de)&b^de;o[m>>2]=(z^ue)&b^ue;o[g>>2]=(L^le)&b^le;o[y>>2]=(N^fe)&b^fe;o[i>>2]=ce^ae;o[s>>2]=(se^oe)&b^oe;o[ne>>2]=(ie^re)&b^re;o[$>>2]=(te^ee)&b^ee;o[X>>2]=(Z^J)&b^J;o[Q>>2]=(Y^W)&b^W;o[G>>2]=(V^H)&b^H;o[q>>2]=(K^z)&b^z;o[U>>2]=(F^L)&b^L;o[B>>2]=(j^N)&b^N;o[a>>2]=(D^0-D)&b^D;o[P>>2]=(M^0-M)&b^M;o[C>>2]=(O^0-O)&b^O;o[x>>2]=(R^0-R)&b^R;o[S>>2]=(I^0-I)&b^I;o[E>>2]=(k^0-k)&b^k;o[w>>2]=(A^0-A)&b^A;o[c>>2]=(n^0-n)&b^n;o[v>>2]=(f^0-f)&b^f;o[_>>2]=(t^0-t)&b^t;return}function hi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0,c=0,f=0;i=h;h=h+336|0;o=i+144|0;c=i+96|0;s=i+48|0;a=i;f=i+176|0;pi(n,32,t)|0;r[t>>0]=r[t>>0]&-8;n=t+31|0;r[n>>0]=r[n>>0]&63|64;ui(f,t);Wr(c,f+80|0);Xr(s,f,c);Xr(a,f+40|0,c);Jr(e,a);Jr(o,s);n=e+31|0;r[n>>0]=r[n>>0]^r[o>>0]<<7&255;h=i;return}function pi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0;u=h;h=h+208|0;c=u;f=c+72|0;o[f>>2]=0;l=c;o[l>>2]=0;o[l+4>>2]=0;l=c+8|0;o[l>>2]=-205731576;o[l+4>>2]=1779033703;l=c+16|0;o[l>>2]=-2067093701;o[l+4>>2]=-1150833019;l=c+24|0;o[l>>2]=-23791573;o[l+4>>2]=1013904242;l=c+32|0;o[l>>2]=1595750129;o[l+4>>2]=-1521486534;l=c+40|0;o[l>>2]=-1377402159;o[l+4>>2]=1359893119;l=c+48|0;o[l>>2]=725511199;o[l+4>>2]=-1694144372;l=c+56|0;o[l>>2]=-79577749;o[l+4>>2]=528734635;l=c+64|0;o[l>>2]=327033209;o[l+4>>2]=1541459225;if(!e){l=1;h=u;return l|0}e:do{if(t|0){l=c+76|0;s=0;while(1){if(!((s|0)==0&t>>>0>127)){a=128-s|0;a=t>>>0>>0?t:a;if(a|0){i=0;do{r[i+s+(c+76)>>0]=r[e+i>>0]|0;i=i+1|0}while(i>>>0>>0)}s=s+a|0;o[f>>2]=s;e=e+a|0;t=t-a|0;if((s|0)==128){mi(c,l);s=c;s=ks(o[s>>2]|0,o[s+4>>2]|0,1024,0)|0;a=c;o[a>>2]=s;o[a+4>>2]=T;o[f>>2]=0}}else{mi(c,e);s=c;s=ks(o[s>>2]|0,o[s+4>>2]|0,1024,0)|0;a=c;o[a>>2]=s;o[a+4>>2]=T;t=t+-128|0;e=e+128|0}if(!t)break e;s=o[f>>2]|0}}}while(0);l=gi(c,n)|0;h=u;return l|0}function mi(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0;E=h;h=h+704|0;a=E+640|0;w=E;A=e+8|0;n=a;r=A;i=n+64|0;do{o[n>>2]=o[r>>2];n=n+4|0;r=r+4|0}while((n|0)<(i|0));n=0;do{b=t+(n<<3)|0;d=Os(s[b>>0]|0|0,0,56)|0;v=T;u=Os(s[b+1>>0]|0|0,0,48)|0;v=T|v;p=Os(s[b+2>>0]|0|0,0,40)|0;v=v|T|(s[b+3>>0]|0);m=Os(s[b+4>>0]|0|0,0,24)|0;v=v|T;g=Os(s[b+5>>0]|0|0,0,16)|0;v=v|T;y=Os(s[b+6>>0]|0|0,0,8)|0;_=w+(n<<3)|0;o[_>>2]=u|d|p|m|g|y|(s[b+7>>0]|0);o[_+4>>2]=v|T;n=n+1|0}while((n|0)!=16);i=w;n=16;r=o[i>>2]|0;i=o[i+4>>2]|0;do{l=w+(n+-2<<3)|0;k=o[l>>2]|0;l=o[l+4>>2]|0;u=Cs(k|0,l|0,19)|0;p=T;d=Os(k|0,l|0,45)|0;p=p|T;c=Cs(k|0,l|0,61)|0;t=T;f=Os(k|0,l|0,3)|0;t=t|T;l=Cs(k|0,l|0,6)|0;p=t^T^p;t=w+(n+-7<<3)|0;k=o[t>>2]|0;t=o[t+4>>2]|0;b=w+(n+-15<<3)|0;I=r;r=o[b>>2]|0;S=i;i=o[b+4>>2]|0;b=Cs(r|0,i|0,1)|0;v=T;_=Os(r|0,i|0,63)|0;v=v|T;m=Cs(r|0,i|0,8)|0;x=T;g=Os(r|0,i|0,56)|0;x=x|T;y=Cs(r|0,i|0,7)|0;v=x^T^v;t=ks(I|0,S|0,k|0,t|0)|0;p=ks(t|0,T|0,(c|f)^l^(u|d)|0,p|0)|0;v=ks(p|0,T|0,(m|g)^y^(b|_)|0,v|0)|0;_=w+(n<<3)|0;o[_>>2]=v;o[_+4>>2]=T;n=n+1|0}while((n|0)!=80);u=a+56|0;i=a+32|0;c=a+48|0;f=a+40|0;p=a;g=a+8|0;b=a+16|0;_=a+24|0;n=0;r=o[i>>2]|0;i=o[i+4>>2]|0;t=o[c>>2]|0;a=o[f>>2]|0;c=o[c+4>>2]|0;f=o[f+4>>2]|0;l=o[u>>2]|0;u=o[u+4>>2]|0;d=o[p>>2]|0;p=o[p+4>>2]|0;m=o[g>>2]|0;g=o[g+4>>2]|0;y=o[b>>2]|0;b=o[b+4>>2]|0;v=o[_>>2]|0;_=o[_+4>>2]|0;do{S=Cs(r|0,i|0,14)|0;Q=T;I=Os(r|0,i|0,50)|0;Q=Q|T;Y=Cs(r|0,i|0,18)|0;z=T;L=Os(r|0,i|0,46)|0;z=Q^(z|T);Q=Cs(r|0,i|0,41)|0;V=T;B=Os(r|0,i|0,23)|0;V=z^(V|T);z=32064+(n<<3)|0;O=w+(n<<3)|0;N=o[O>>2]|0;O=o[O+4>>2]|0;z=ks(o[z>>2]|0,o[z+4>>2]|0,l|0,u|0)|0;V=ks(z|0,T|0,(S|I)^(Y|L)^(Q|B)|0,V|0)|0;O=ks(V|0,T|0,N|0,O|0)|0;O=ks(O|0,T|0,(a^t)&r^t|0,(f^c)&i^c|0)|0;N=T;V=Cs(d|0,p|0,28)|0;B=T;Q=Os(d|0,p|0,36)|0;B=B|T;L=Cs(d|0,p|0,34)|0;Y=T;I=Os(d|0,p|0,30)|0;Y=B^(Y|T);B=Cs(d|0,p|0,39)|0;S=T;z=Os(d|0,p|0,25)|0;S=Y^(S|T);Y=ks(v|0,_|0,O|0,N|0)|0;F=T;N=ks((m|d)&y|m&d|0,(g|p)&b|g&p|0,O|0,N|0)|0;S=ks(N|0,T|0,(V|Q)^(L|I)^(B|z)|0,S|0)|0;z=T;B=Cs(Y|0,F|0,14)|0;I=T;L=Os(Y|0,F|0,50)|0;I=I|T;Q=Cs(Y|0,F|0,18)|0;V=T;N=Os(Y|0,F|0,46)|0;V=I^(V|T);I=Cs(Y|0,F|0,41)|0;O=T;x=Os(Y|0,F|0,23)|0;O=V^(O|T);V=n|1;H=32064+(V<<3)|0;M=o[H>>2]|0;H=o[H+4>>2]|0;V=w+(V<<3)|0;j=o[V>>2]|0;V=o[V+4>>2]|0;P=ks(Y&(a^r)^a|0,F&(f^i)^f|0,t|0,c|0)|0;H=ks(P|0,T|0,M|0,H|0)|0;V=ks(H|0,T|0,j|0,V|0)|0;O=ks(V|0,T|0,(B|L)^(Q|N)^(I|x)|0,O|0)|0;x=T;I=Cs(S|0,z|0,28)|0;N=T;Q=Os(S|0,z|0,36)|0;N=N|T;L=Cs(S|0,z|0,34)|0;B=T;V=Os(S|0,z|0,30)|0;B=N^(B|T);N=Cs(S|0,z|0,39)|0;j=T;H=Os(S|0,z|0,25)|0;j=ks((I|Q)^(L|V)^(N|H)|0,B^(j|T)|0,(S|d)&m|S&d|0,(z|p)&g|z&p|0)|0;B=T;H=ks(O|0,x|0,y|0,b|0)|0;N=T;x=ks(j|0,B|0,O|0,x|0)|0;O=T;B=Cs(H|0,N|0,14)|0;j=T;V=Os(H|0,N|0,50)|0;j=j|T;L=Cs(H|0,N|0,18)|0;Q=T;I=Os(H|0,N|0,46)|0;Q=j^(Q|T);j=Cs(H|0,N|0,41)|0;M=T;P=Os(H|0,N|0,23)|0;M=Q^(M|T);Q=n|2;q=32064+(Q<<3)|0;Q=w+(Q<<3)|0;D=o[Q>>2]|0;Q=o[Q+4>>2]|0;q=ks(o[q>>2]|0,o[q+4>>2]|0,a|0,f|0)|0;Q=ks(q|0,T|0,D|0,Q|0)|0;Q=ks(Q|0,T|0,H&(Y^r)^r|0,N&(F^i)^i|0)|0;M=ks(Q|0,T|0,(B|V)^(L|I)^(j|P)|0,M|0)|0;P=T;j=Cs(x|0,O|0,28)|0;I=T;L=Os(x|0,O|0,36)|0;I=I|T;V=Cs(x|0,O|0,34)|0;B=T;Q=Os(x|0,O|0,30)|0;B=I^(B|T);I=Cs(x|0,O|0,39)|0;D=T;q=Os(x|0,O|0,25)|0;D=ks((j|L)^(V|Q)^(I|q)|0,B^(D|T)|0,(x|S)&d|x&S|0,(O|z)&p|O&z|0)|0;B=T;q=ks(M|0,P|0,m|0,g|0)|0;I=T;P=ks(D|0,B|0,M|0,P|0)|0;M=T;B=Cs(q|0,I|0,14)|0;D=T;Q=Os(q|0,I|0,50)|0;D=D|T;V=Cs(q|0,I|0,18)|0;L=T;j=Os(q|0,I|0,46)|0;L=D^(L|T);D=Cs(q|0,I|0,41)|0;R=T;C=Os(q|0,I|0,23)|0;R=L^(R|T);L=n|3;U=32064+(L<<3)|0;L=w+(L<<3)|0;W=o[L>>2]|0;L=o[L+4>>2]|0;U=ks(o[U>>2]|0,o[U+4>>2]|0,r|0,i|0)|0;L=ks(U|0,T|0,W|0,L|0)|0;L=ks(L|0,T|0,q&(H^Y)^Y|0,I&(N^F)^F|0)|0;R=ks(L|0,T|0,(B|Q)^(V|j)^(D|C)|0,R|0)|0;C=T;D=Cs(P|0,M|0,28)|0;j=T;V=Os(P|0,M|0,36)|0;j=j|T;Q=Cs(P|0,M|0,34)|0;B=T;L=Os(P|0,M|0,30)|0;B=j^(B|T);j=Cs(P|0,M|0,39)|0;W=T;U=Os(P|0,M|0,25)|0;W=ks((D|V)^(Q|L)^(j|U)|0,B^(W|T)|0,(P|x)&S|P&x|0,(M|O)&z|M&O|0)|0;B=T;U=ks(R|0,C|0,d|0,p|0)|0;j=T;C=ks(W|0,B|0,R|0,C|0)|0;R=T;B=Cs(U|0,j|0,14)|0;W=T;L=Os(U|0,j|0,50)|0;W=W|T;Q=Cs(U|0,j|0,18)|0;V=T;D=Os(U|0,j|0,46)|0;V=W^(V|T);W=Cs(U|0,j|0,41)|0;G=T;k=Os(U|0,j|0,23)|0;G=V^(G|T);V=n|4;X=32064+(V<<3)|0;V=w+(V<<3)|0;K=o[V>>2]|0;V=o[V+4>>2]|0;F=ks(o[X>>2]|0,o[X+4>>2]|0,Y|0,F|0)|0;V=ks(F|0,T|0,K|0,V|0)|0;V=ks(V|0,T|0,U&(q^H)^H|0,j&(I^N)^N|0)|0;G=ks(V|0,T|0,(B|L)^(Q|D)^(W|k)|0,G|0)|0;k=T;W=Cs(C|0,R|0,28)|0;D=T;Q=Os(C|0,R|0,36)|0;D=D|T;L=Cs(C|0,R|0,34)|0;B=T;V=Os(C|0,R|0,30)|0;B=D^(B|T);D=Cs(C|0,R|0,39)|0;K=T;F=Os(C|0,R|0,25)|0;K=ks((W|Q)^(L|V)^(D|F)|0,B^(K|T)|0,(C|P)&x|C&P|0,(R|M)&O|R&M|0)|0;B=T;l=ks(G|0,k|0,S|0,z|0)|0;u=T;v=ks(K|0,B|0,G|0,k|0)|0;_=T;k=Cs(l|0,u|0,14)|0;G=T;B=Os(l|0,u|0,50)|0;G=G|T;K=Cs(l|0,u|0,18)|0;z=T;S=Os(l|0,u|0,46)|0;z=G^(z|T);G=Cs(l|0,u|0,41)|0;F=T;D=Os(l|0,u|0,23)|0;F=z^(F|T);z=n|5;V=32064+(z<<3)|0;z=w+(z<<3)|0;L=o[z>>2]|0;z=o[z+4>>2]|0;N=ks(o[V>>2]|0,o[V+4>>2]|0,H|0,N|0)|0;z=ks(N|0,T|0,L|0,z|0)|0;z=ks(z|0,T|0,l&(U^q)^q|0,u&(j^I)^I|0)|0;F=ks(z|0,T|0,(k|B)^(K|S)^(G|D)|0,F|0)|0;D=T;G=Cs(v|0,_|0,28)|0;S=T;K=Os(v|0,_|0,36)|0;S=S|T;B=Cs(v|0,_|0,34)|0;k=T;z=Os(v|0,_|0,30)|0;k=S^(k|T);S=Cs(v|0,_|0,39)|0;L=T;N=Os(v|0,_|0,25)|0;L=ks((G|K)^(B|z)^(S|N)|0,k^(L|T)|0,(v|C)&P|v&C|0,(_|R)&M|_&R|0)|0;k=T;t=ks(F|0,D|0,x|0,O|0)|0;c=T;y=ks(L|0,k|0,F|0,D|0)|0;b=T;D=Cs(t|0,c|0,14)|0;F=T;k=Os(t|0,c|0,50)|0;F=F|T;L=Cs(t|0,c|0,18)|0;O=T;x=Os(t|0,c|0,46)|0;O=F^(O|T);F=Cs(t|0,c|0,41)|0;N=T;S=Os(t|0,c|0,23)|0;N=O^(N|T);O=n|6;z=32064+(O<<3)|0;O=w+(O<<3)|0;B=o[O>>2]|0;O=o[O+4>>2]|0;I=ks(o[z>>2]|0,o[z+4>>2]|0,q|0,I|0)|0;O=ks(I|0,T|0,B|0,O|0)|0;O=ks(O|0,T|0,t&(l^U)^U|0,c&(u^j)^j|0)|0;N=ks(O|0,T|0,(D|k)^(L|x)^(F|S)|0,N|0)|0;S=T;F=Cs(y|0,b|0,28)|0;x=T;L=Os(y|0,b|0,36)|0;x=x|T;k=Cs(y|0,b|0,34)|0;D=T;O=Os(y|0,b|0,30)|0;D=x^(D|T);x=Cs(y|0,b|0,39)|0;B=T;I=Os(y|0,b|0,25)|0;B=ks((F|L)^(k|O)^(x|I)|0,D^(B|T)|0,(y|v)&C|y&v|0,(b|_)&R|b&_|0)|0;D=T;a=ks(N|0,S|0,P|0,M|0)|0;f=T;m=ks(B|0,D|0,N|0,S|0)|0;g=T;S=Cs(a|0,f|0,14)|0;N=T;D=Os(a|0,f|0,50)|0;N=N|T;B=Cs(a|0,f|0,18)|0;M=T;P=Os(a|0,f|0,46)|0;M=N^(M|T);N=Cs(a|0,f|0,41)|0;I=T;x=Os(a|0,f|0,23)|0;I=M^(I|T);M=n|7;O=32064+(M<<3)|0;M=w+(M<<3)|0;k=o[M>>2]|0;M=o[M+4>>2]|0;O=ks(U|0,j|0,o[O>>2]|0,o[O+4>>2]|0)|0;M=ks(O|0,T|0,k|0,M|0)|0;M=ks(M|0,T|0,a&(t^l)^l|0,f&(c^u)^u|0)|0;I=ks(M|0,T|0,(S|D)^(B|P)^(N|x)|0,I|0)|0;x=T;N=Cs(m|0,g|0,28)|0;P=T;B=Os(m|0,g|0,36)|0;P=P|T;D=Cs(m|0,g|0,34)|0;S=T;M=Os(m|0,g|0,30)|0;S=P^(S|T);P=Cs(m|0,g|0,39)|0;k=T;O=Os(m|0,g|0,25)|0;k=ks((N|B)^(D|M)^(P|O)|0,S^(k|T)|0,(m|y)&v|m&y|0,(g|b)&_|g&b|0)|0;S=T;r=ks(I|0,x|0,C|0,R|0)|0;i=T;d=ks(k|0,S|0,I|0,x|0)|0;p=T;n=n+8|0}while(n>>>0<80);Y=A;Y=ks(d|0,p|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;X=A;o[X>>2]=Y;o[X+4>>2]=T;X=e+16|0;Y=X;Y=ks(m|0,g|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+24|0;Y=X;Y=ks(y|0,b|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+32|0;Y=X;Y=ks(v|0,_|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+40|0;Y=X;Y=ks(r|0,i|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+48|0;Y=X;Y=ks(a|0,f|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+56|0;Y=X;Y=ks(t|0,c|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;X=e+64|0;Y=X;Y=ks(l|0,u|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=T;h=E;return}function gi(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0;if((e|0)==0|(t|0)==0){s=1;return s|0}s=e+72|0;n=o[s>>2]|0;if(n>>>0>127){s=1;return s|0}a=Os(n|0,0,3)|0;i=e;a=ks(o[i>>2]|0,o[i+4>>2]|0,a|0,T|0)|0;i=e;o[i>>2]=a;o[i+4>>2]=T;i=e+76|0;o[s>>2]=n+1;r[e+76+n>>0]=-128;n=o[s>>2]|0;if(n>>>0>112){if(n>>>0<128)do{o[s>>2]=n+1;r[e+76+n>>0]=0;n=o[s>>2]|0}while(n>>>0<128);mi(e,i);o[s>>2]=0;n=0}do{o[s>>2]=n+1;r[e+76+n>>0]=0;n=o[s>>2]|0}while(n>>>0<120);s=e;a=o[s>>2]|0;s=o[s+4>>2]|0;n=Cs(a|0,s|0,56)|0;r[e+196>>0]=n;n=Cs(a|0,s|0,48)|0;r[e+197>>0]=n;n=Cs(a|0,s|0,40)|0;r[e+198>>0]=n;r[e+199>>0]=s;n=Cs(a|0,s|0,24)|0;r[e+200>>0]=n;n=Cs(a|0,s|0,16)|0;r[e+201>>0]=n;s=Cs(a|0,s|0,8)|0;r[e+202>>0]=s;r[e+203>>0]=a;mi(e,i);a=e+8|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+1>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+2>>0]=s;r[t+3>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+4>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+5>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+6>>0]=s;r[t+7>>0]=o[a>>2];a=e+16|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+8>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+9>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+10>>0]=s;r[t+11>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+12>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+13>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+14>>0]=s;r[t+15>>0]=o[a>>2];a=e+24|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+16>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+17>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+18>>0]=s;r[t+19>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+20>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+21>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+22>>0]=s;r[t+23>>0]=o[a>>2];a=e+32|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+24>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+25>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+26>>0]=s;r[t+27>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+28>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+29>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+30>>0]=s;r[t+31>>0]=o[a>>2];a=e+40|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+32>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+33>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+34>>0]=s;r[t+35>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+36>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+37>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+38>>0]=s;r[t+39>>0]=o[a>>2];a=e+48|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+40>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+41>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+42>>0]=s;r[t+43>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+44>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+45>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+46>>0]=s;r[t+47>>0]=o[a>>2];a=e+56|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+48>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+49>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+50>>0]=s;r[t+51>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+52>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+53>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+54>>0]=s;r[t+55>>0]=o[a>>2];a=e+64|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+56>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+57>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+58>>0]=s;r[t+59>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+60>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+61>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+62>>0]=s;r[t+63>>0]=o[a>>2];a=0;return a|0}function yi(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0;k=h;h=h+768|0;y=k+240|0;b=k+192|0;v=k+144|0;w=k+96|0;A=k+32|0;E=k;d=k+272|0;p=k+600|0;m=k+480|0;if((s[e+63>>0]|0)>31){E=0;h=k;return E|0}if(li(p,i)|0){E=0;h=k;return E|0}g=d+72|0;o[g>>2]=0;_=d;o[_>>2]=0;o[_+4>>2]=0;_=d+8|0;o[_>>2]=-205731576;o[_+4>>2]=1779033703;_=d+16|0;o[_>>2]=-2067093701;o[_+4>>2]=-1150833019;_=d+24|0;o[_>>2]=-23791573;o[_+4>>2]=1013904242;_=d+32|0;o[_>>2]=1595750129;o[_+4>>2]=-1521486534;_=d+40|0;o[_>>2]=-1377402159;o[_+4>>2]=1359893119;_=d+48|0;o[_>>2]=725511199;o[_+4>>2]=-1694144372;_=d+56|0;o[_>>2]=-79577749;o[_+4>>2]=528734635;_=d+64|0;o[_>>2]=327033209;o[_+4>>2]=1541459225;_=d+76|0;r[d+76>>0]=r[e>>0]|0;r[d+77>>0]=r[e+1>>0]|0;r[d+78>>0]=r[e+2>>0]|0;r[d+79>>0]=r[e+3>>0]|0;r[d+80>>0]=r[e+4>>0]|0;r[d+81>>0]=r[e+5>>0]|0;r[d+82>>0]=r[e+6>>0]|0;r[d+83>>0]=r[e+7>>0]|0;r[d+84>>0]=r[e+8>>0]|0;r[d+85>>0]=r[e+9>>0]|0;r[d+86>>0]=r[e+10>>0]|0;r[d+87>>0]=r[e+11>>0]|0;r[d+88>>0]=r[e+12>>0]|0;r[d+89>>0]=r[e+13>>0]|0;r[d+90>>0]=r[e+14>>0]|0;r[d+91>>0]=r[e+15>>0]|0;r[d+92>>0]=r[e+16>>0]|0;r[d+93>>0]=r[e+17>>0]|0;r[d+94>>0]=r[e+18>>0]|0;r[d+95>>0]=r[e+19>>0]|0;r[d+96>>0]=r[e+20>>0]|0;r[d+97>>0]=r[e+21>>0]|0;r[d+98>>0]=r[e+22>>0]|0;r[d+99>>0]=r[e+23>>0]|0;r[d+100>>0]=r[e+24>>0]|0;r[d+101>>0]=r[e+25>>0]|0;r[d+102>>0]=r[e+26>>0]|0;r[d+103>>0]=r[e+27>>0]|0;r[d+104>>0]=r[e+28>>0]|0;r[d+105>>0]=r[e+29>>0]|0;r[d+106>>0]=r[e+30>>0]|0;r[d+107>>0]=r[e+31>>0]|0;o[g>>2]=32;e:do{if(i|0?(f=o[g>>2]|0,f>>>0<=128):0){a=32;while(1){if(!((f|0)==0&a>>>0>127)){u=128-f|0;u=a>>>0>>0?a:u;if(u|0){l=0;do{r[l+f+(d+76)>>0]=r[i+l>>0]|0;l=l+1|0}while(l>>>0>>0)}l=f+u|0;o[g>>2]=l;i=i+u|0;a=a-u|0;if((l|0)==128){mi(d,_);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;o[g>>2]=0}}else{mi(d,i);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;a=a+-128|0;i=i+128|0}if(!a)break e;f=o[g>>2]|0}}}while(0);e:do{if(t|0?(c=o[g>>2]|0,!((n|0)==0|c>>>0>128)):0)while(1){if(!((c|0)==0&n>>>0>127)){i=128-c|0;i=n>>>0>>0?n:i;if(i|0){a=0;do{r[a+c+(d+76)>>0]=r[t+a>>0]|0;a=a+1|0}while(a>>>0>>0)}u=c+i|0;o[g>>2]=u;t=t+i|0;n=n-i|0;if((u|0)==128){mi(d,_);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;o[g>>2]=0}}else{mi(d,t);l=d;l=ks(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;u=d;o[u>>2]=l;o[u+4>>2]=T;n=n+-128|0;t=t+128|0}if(!n)break e;c=o[g>>2]|0}}while(0);gi(d,A)|0;ei(A);ri(m,A,p,e+32|0);Wr(b,m+80|0);Xr(v,m,b);Xr(w,m+40|0,b);Jr(E,w);Jr(y,v);w=E+31|0;A=r[w>>0]^r[y>>0]<<7&255;r[w>>0]=A;E=(r[e+1>>0]^r[E+1>>0]|r[e>>0]^r[E>>0]|r[e+2>>0]^r[E+2>>0]|r[e+3>>0]^r[E+3>>0]|r[e+4>>0]^r[E+4>>0]|r[e+5>>0]^r[E+5>>0]|r[e+6>>0]^r[E+6>>0]|r[e+7>>0]^r[E+7>>0]|r[e+8>>0]^r[E+8>>0]|r[e+9>>0]^r[E+9>>0]|r[e+10>>0]^r[E+10>>0]|r[e+11>>0]^r[E+11>>0]|r[e+12>>0]^r[E+12>>0]|r[e+13>>0]^r[E+13>>0]|r[e+14>>0]^r[E+14>>0]|r[e+15>>0]^r[E+15>>0]|r[e+16>>0]^r[E+16>>0]|r[e+17>>0]^r[E+17>>0]|r[e+18>>0]^r[E+18>>0]|r[e+19>>0]^r[E+19>>0]|r[e+20>>0]^r[E+20>>0]|r[e+21>>0]^r[E+21>>0]|r[e+22>>0]^r[E+22>>0]|r[e+23>>0]^r[E+23>>0]|r[e+24>>0]^r[E+24>>0]|r[e+25>>0]^r[E+25>>0]|r[e+26>>0]^r[E+26>>0]|r[e+27>>0]^r[E+27>>0]|r[e+28>>0]^r[E+28>>0]|r[e+29>>0]^r[E+29>>0]|r[e+30>>0]^r[E+30>>0]|r[e+31>>0]^A)<<24>>24==0&1;h=k;return E|0}function bi(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0;D=h;h=h+672|0;A=D+272|0;k=D+224|0;S=D+176|0;I=D+128|0;M=D+304|0;R=D+64|0;C=D;p=D+512|0;O=M+72|0;o[O>>2]=0;m=M;o[m>>2]=0;o[m+4>>2]=0;m=M+8|0;g=m;o[g>>2]=-205731576;o[g+4>>2]=1779033703;g=M+16|0;y=g;o[y>>2]=-2067093701;o[y+4>>2]=-1150833019;y=M+24|0;b=y;o[b>>2]=-23791573;o[b+4>>2]=1013904242;b=M+32|0;v=b;o[v>>2]=1595750129;o[v+4>>2]=-1521486534;v=M+40|0;_=v;o[_>>2]=-1377402159;o[_+4>>2]=1359893119;_=M+48|0;w=_;o[w>>2]=725511199;o[w+4>>2]=-1694144372;w=M+56|0;E=w;o[E>>2]=-79577749;o[E+4>>2]=528734635;E=M+64|0;P=E;o[P>>2]=327033209;o[P+4>>2]=1541459225;P=M+76|0;r[M+76>>0]=r[s+32>>0]|0;r[M+77>>0]=r[s+33>>0]|0;r[M+78>>0]=r[s+34>>0]|0;r[M+79>>0]=r[s+35>>0]|0;r[M+80>>0]=r[s+36>>0]|0;r[M+81>>0]=r[s+37>>0]|0;r[M+82>>0]=r[s+38>>0]|0;r[M+83>>0]=r[s+39>>0]|0;r[M+84>>0]=r[s+40>>0]|0;r[M+85>>0]=r[s+41>>0]|0;r[M+86>>0]=r[s+42>>0]|0;r[M+87>>0]=r[s+43>>0]|0;r[M+88>>0]=r[s+44>>0]|0;r[M+89>>0]=r[s+45>>0]|0;r[M+90>>0]=r[s+46>>0]|0;r[M+91>>0]=r[s+47>>0]|0;r[M+92>>0]=r[s+48>>0]|0;r[M+93>>0]=r[s+49>>0]|0;r[M+94>>0]=r[s+50>>0]|0;r[M+95>>0]=r[s+51>>0]|0;r[M+96>>0]=r[s+52>>0]|0;r[M+97>>0]=r[s+53>>0]|0;r[M+98>>0]=r[s+54>>0]|0;r[M+99>>0]=r[s+55>>0]|0;r[M+100>>0]=r[s+56>>0]|0;r[M+101>>0]=r[s+57>>0]|0;r[M+102>>0]=r[s+58>>0]|0;r[M+103>>0]=r[s+59>>0]|0;r[M+104>>0]=r[s+60>>0]|0;r[M+105>>0]=r[s+61>>0]|0;r[M+106>>0]=r[s+62>>0]|0;r[M+107>>0]=r[s+63>>0]|0;o[O>>2]=32;x=(t|0)==0;e:do{if(!x?(l=o[O>>2]|0,!((n|0)==0|l>>>0>128)):0){a=n;c=t;while(1){if(!((l|0)==0&a>>>0>127)){d=128-l|0;d=a>>>0>>0?a:d;if(d|0){u=0;do{r[u+l+(M+76)>>0]=r[c+u>>0]|0;u=u+1|0}while(u>>>0>>0)}u=l+d|0;o[O>>2]=u;c=c+d|0;a=a-d|0;if((u|0)==128){mi(M,P);u=M;u=ks(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;d=M;o[d>>2]=u;o[d+4>>2]=T;o[O>>2]=0}}else{mi(M,c);u=M;u=ks(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;d=M;o[d>>2]=u;o[d+4>>2]=T;a=a+-128|0;c=c+128|0}if(!a)break e;l=o[O>>2]|0}}}while(0);gi(M,C)|0;ei(C);ui(p,C);Wr(k,p+80|0);Xr(S,p,k);Xr(I,p+40|0,k);Jr(e,I);Jr(A,S);I=e+31|0;r[I>>0]=r[I>>0]^r[A>>0]<<7&255;o[O>>2]=0;I=M;o[I>>2]=0;o[I+4>>2]=0;I=m;o[I>>2]=-205731576;o[I+4>>2]=1779033703;I=g;o[I>>2]=-2067093701;o[I+4>>2]=-1150833019;I=y;o[I>>2]=-23791573;o[I+4>>2]=1013904242;I=b;o[I>>2]=1595750129;o[I+4>>2]=-1521486534;I=v;o[I>>2]=-1377402159;o[I+4>>2]=1359893119;I=_;o[I>>2]=725511199;o[I+4>>2]=-1694144372;I=w;o[I>>2]=-79577749;o[I+4>>2]=528734635;I=E;o[I>>2]=327033209;o[I+4>>2]=1541459225;if(e|0){r[M+76>>0]=r[e>>0]|0;r[M+77>>0]=r[e+1>>0]|0;r[M+78>>0]=r[e+2>>0]|0;r[M+79>>0]=r[e+3>>0]|0;r[M+80>>0]=r[e+4>>0]|0;r[M+81>>0]=r[e+5>>0]|0;r[M+82>>0]=r[e+6>>0]|0;r[M+83>>0]=r[e+7>>0]|0;r[M+84>>0]=r[e+8>>0]|0;r[M+85>>0]=r[e+9>>0]|0;r[M+86>>0]=r[e+10>>0]|0;r[M+87>>0]=r[e+11>>0]|0;r[M+88>>0]=r[e+12>>0]|0;r[M+89>>0]=r[e+13>>0]|0;r[M+90>>0]=r[e+14>>0]|0;r[M+91>>0]=r[e+15>>0]|0;r[M+92>>0]=r[e+16>>0]|0;r[M+93>>0]=r[e+17>>0]|0;r[M+94>>0]=r[e+18>>0]|0;r[M+95>>0]=r[e+19>>0]|0;r[M+96>>0]=r[e+20>>0]|0;r[M+97>>0]=r[e+21>>0]|0;r[M+98>>0]=r[e+22>>0]|0;r[M+99>>0]=r[e+23>>0]|0;r[M+100>>0]=r[e+24>>0]|0;r[M+101>>0]=r[e+25>>0]|0;r[M+102>>0]=r[e+26>>0]|0;r[M+103>>0]=r[e+27>>0]|0;r[M+104>>0]=r[e+28>>0]|0;r[M+105>>0]=r[e+29>>0]|0;r[M+106>>0]=r[e+30>>0]|0;r[M+107>>0]=r[e+31>>0]|0;o[O>>2]=32}e:do{if(i|0?(f=o[O>>2]|0,f>>>0<=128):0){a=32;while(1){if(!((f|0)==0&a>>>0>127)){l=128-f|0;l=a>>>0>>0?a:l;if(l|0){c=0;do{r[c+f+(M+76)>>0]=r[i+c>>0]|0;c=c+1|0}while(c>>>0>>0)}I=f+l|0;o[O>>2]=I;i=i+l|0;a=a-l|0;if((I|0)==128){mi(M,P);S=M;S=ks(o[S>>2]|0,o[S+4>>2]|0,1024,0)|0;I=M;o[I>>2]=S;o[I+4>>2]=T;o[O>>2]=0}}else{mi(M,i);S=M;S=ks(o[S>>2]|0,o[S+4>>2]|0,1024,0)|0;I=M;o[I>>2]=S;o[I+4>>2]=T;a=a+-128|0;i=i+128|0}if(!a)break e;f=o[O>>2]|0}}}while(0);if(x){gi(M,R)|0;ei(R);M=e+32|0;ti(M,R,s,C);h=D;return}a=o[O>>2]|0;if((n|0)==0|a>>>0>128){gi(M,R)|0;ei(R);M=e+32|0;ti(M,R,s,C);h=D;return}i=a;while(1){if(!((i|0)==0&n>>>0>127)){c=128-i|0;c=n>>>0>>0?n:c;if(c|0){a=0;do{r[a+i+(M+76)>>0]=r[t+a>>0]|0;a=a+1|0}while(a>>>0>>0)}x=i+c|0;o[O>>2]=x;t=t+c|0;n=n-c|0;if((x|0)==128){mi(M,P);I=M;I=ks(o[I>>2]|0,o[I+4>>2]|0,1024,0)|0;x=M;o[x>>2]=I;o[x+4>>2]=T;o[O>>2]=0}}else{mi(M,t);I=M;I=ks(o[I>>2]|0,o[I+4>>2]|0,1024,0)|0;x=M;o[x>>2]=I;o[x+4>>2]=T;n=n+-128|0;t=t+128|0}if(!n)break;i=o[O>>2]|0}gi(M,R)|0;ei(R);M=e+32|0;ti(M,R,s,C);h=D;return}function vi(e,t,n){e=e|0;t=t|0;n=n|0;o[e+128>>2]=n;n=t;t=e+128|0;do{r[e>>0]=r[n>>0]|0;e=e+1|0;n=n+1|0}while((e|0)<(t|0));return}function _i(e){e=e|0;return 132}function wi(e,t){e=e|0;t=t|0;t=Fe(t,e,128)|0;return Ne(t,o[e+128>>2]|0)|0}function Ai(e,t,n){e=e|0;t=t|0;n=n|0;return je(qe(t,n,e,128)|0,n,e+128|0)|0}function Ei(e){e=e|0;var t=0,n=0,r=0,i=0;r=e+128|0;i=(o[r>>2]|0)+1|0;o[r>>2]=i;if(i&16777215){n=0;r=16777215;while(1){t=n+1|0;r=r>>>8;if(n>>>0>2|(r&i|0)==0)break;else n=t}if(n>>>0>2)return}else t=0;r=e+(t<<5)|0;n=3;while(1){Et(r,32,38116+n|0,1,e+(n<<5)|0);if((n|0)>(t|0))n=n+-1|0;else break}return}function ki(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0;s=e+128|0;n=o[s>>2]|0;r=(t>>>24)-(n>>>24)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=3}break}case 1:{i=5;break}default:{n=r&255;i=3}}if((i|0)==3){do{Et(e,32,38116,1,e);n=n+-1|0}while(n>>>0>1);i=5}if((i|0)==5){Et(e,32,38119,1,e+96|0);Et(e,32,38118,1,e+64|0);Et(e,32,38117,1,e+32|0);Et(e,32,38116,1,e);n=t&-16777216;o[s>>2]=n}r=(t>>>16)-(n>>>16)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=8}break}case 1:{i=10;break}default:{n=r&255;i=8}}if((i|0)==8){r=e+32|0;do{Et(r,32,38117,1,r);n=n+-1|0}while(n>>>0>1);i=10}if((i|0)==10){n=e+32|0;Et(n,32,38119,1,e+96|0);Et(n,32,38118,1,e+64|0);Et(n,32,38117,1,e+32|0);n=t&-65536;o[s>>2]=n}r=(t>>>8)-(n>>>8)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=13}break}case 1:{i=15;break}default:{n=r&255;i=13}}if((i|0)==13){r=e+64|0;do{Et(r,32,38118,1,r);n=n+-1|0}while(n>>>0>1);i=15}if((i|0)==15){n=e+64|0;Et(n,32,38119,1,e+96|0);Et(n,32,38118,1,e+64|0);n=t&-256;o[s>>2]=n}r=t-n|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=18}else return;break}case 1:break;default:{n=r&255;i=18}}if((i|0)==18){r=e+96|0;do{Et(r,32,38119,1,r);n=n+-1|0}while(n>>>0>1)}Et(e+96|0,32,38119,1,e+96|0);o[s>>2]=t;return}function Si(e){e=e|0;if(e>>>0>=16){e=38120;return e|0}e=o[32704+(e<<2)>>2]|0;return e|0}function Ti(e){e=e|0;e=Hs[o[37564>>2]&3](37592,e)|0;return pe((Gs[o[9390]&1](37592)|0)+e|0)|0}function Ii(e,t){e=e|0;t=t|0;t=Hs[o[37564>>2]&3](37592,t)|0;t=(Gs[o[9390]&1](37592)|0)+t|0;return e+(pe(t)|0)+(0-t)|0}function xi(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0;c=Hs[o[37564>>2]&3](37592,r)|0;s=(Gs[o[9390]&1](37592)|0)+c|0;i=pe(s)|0;a=n+i+(0-s)|0;Qs[o[37568>>2]&3](37592,e,t,a,r,a,c,a,s)|0;me(a,s,n)|0;return i|0}function Ri(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=ge(r)|0;if((s|0)==-1){if(!i){i=-1;return i|0}o[i>>2]=7;i=-1;return i|0}else{ye(n,r,n)|0;r=s-(Gs[o[9390]&1](37592)|0)|0;e=Qs[o[37576>>2]&3](37592,e,t,n,s,n,r,n,r)|0;if(!((i|0)!=0&(e|0)==-1)){i=e;return i|0}o[i>>2]=8;i=-1;return i|0}return 0}function Ci(){return 304}function Oi(e){e=e|0;Gr(e,304);return e|0}function Pi(e){e=e|0;Gr(e,304);return 304}function Mi(e){e=e|0;return Si(o[e+300>>2]|0)|0}function Di(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0,c=0,f=0;f=h;h=h+240|0;c=f;switch(ge(n)|0){case-1:{o[e+300>>2]=7;c=-1;h=f;return c|0}case 229:{ye(t,n,c)|0;do{if((r[c>>0]|0)==2){t=((s[c+1>>0]<<8|s[c+2>>0])<<8|s[c+3>>0])<<8|s[c+4>>0];n=c+5|0;vi(e,n,t);vi(e+132|0,n,t);t=e+264|0;n=t;i=c+133|0;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));if(!(bt(t,c,165,c+165|0)|0)){o[e+300>>2]=14;t=-1;break}else{o[e+296>>2]=1;t=0;break}}else{o[e+300>>2]=11;t=-1}}while(0);Gr(c,229);c=t;h=f;return c|0}default:{o[e+300>>2]=11;c=-1;h=f;return c|0}}return 0}function Bi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0;a=h;h=h+176|0;i=a;switch(ge(n)|0){case-1:{o[e+300>>2]=7;i=-1;h=a;return i|0}case 165:{ye(t,n,i)|0;if((r[i>>0]|0)==1){t=((s[i+1>>0]<<8|s[i+2>>0])<<8|s[i+3>>0])<<8|s[i+4>>0];n=i+5|0;vi(e,n,t);vi(e+132|0,n,t);e=e+264|0;t=i+133|0;n=e+32|0;do{r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0}while((e|0)<(n|0));e=0}else{o[e+300>>2]=11;e=-1}Gr(i,165);i=e;h=a;return i|0}default:{o[e+300>>2]=11;i=-1;h=a;return i|0}}return 0}function Ni(e){e=e|0;var t=0,n=0;n=_i(e)|0;t=_i(e+132|0)|0;return Ti(n+5+t+(Ce(e+264|0)|0)|0)|0}function ji(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0;f=_i(e)|0;a=e+132|0;s=_i(a)|0;c=e+264|0;s=f+5+s+(Ce(c)|0)|0;if((Ti(s)|0)>>>0>i>>>0){o[e+300>>2]=2;f=-1;return f|0}else{f=Oe(wi(a,wi(e,Ne(Ii(r,s)|0,2)|0)|0)|0,c)|0;Ue(f,o[e+296>>2]|0)|0;f=xi(t,n,r,s)|0;return f|0}return 0}function Ui(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0;f=h;h=h+16|0;a=f;c=e+300|0;t=Ri(t,n,r,i,c)|0;if((t|0)==-1){c=-1;h=f;return c|0}s=r+t|0;t=je(r,s,a)|0;if(((o[a>>2]|0)+-1|0)>>>0>1){o[c>>2]=9;c=-1;h=f;return c|0}t=Pe(Ai(e+132|0,Ai(e,t,s)|0,s)|0,s,e+264|0)|0;n=e+296|0;if((o[a>>2]|0)==1)o[n>>2]=1;else t=Le(t,s,n)|0;if((s|0)==(t|0)){c=i;h=f;return c|0}o[c>>2]=10;c=-1;h=f;return c|0}function Li(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0;s=h;h=h+32|0;i=s;n=ye(t,n,t)|0;if((n|0)==-1){o[e+300>>2]=7;i=-1;h=s;return i|0}Xe(t,n,Gs[o[o[9395]>>2]&1](37580)|0,64,i);do{if((r[i>>0]|0)==3)if(!(o[i+12>>2]|0)){o[e+300>>2]=4;n=-1;break}else{n=Hs[o[(o[9395]|0)+12>>2]&3](37580,o[i+16>>2]|0)|0;break}else{o[e+300>>2]=3;n=-1}}while(0);i=n;h=s;return i|0}function Fi(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var c=0,f=0,l=0,u=0,d=0,p=0;p=h;h=h+160|0;l=p+132|0;d=p;n=ye(t,n,t)|0;if((n|0)==-1){o[e+300>>2]=7;d=-1;h=p;return d|0}Xe(t,n,Gs[o[o[9395]>>2]&1](37580)|0,64,l);e:do{if((r[l>>0]|0)==3){if(o[l+8>>2]|0?(u=l+12|0,o[u>>2]|0):0){if(a|0)o[a>>2]=o[l+4>>2];c=n+-64|0;if(!(bt(e+264|0,t,c,t+c|0)|0)){o[e+300>>2]=14;n=-1;break}f=l+16|0;if((Hs[o[(o[9395]|0)+12>>2]&3](37580,o[f>>2]|0)|0)>>>0>s>>>0){o[e+300>>2]=2;n=-1;break}n=o[l+4>>2]|0;a=e+132|0;do{if((n-(o[e+260>>2]|0)|0)<=-1)if((n-(o[e+128>>2]|0)|0)<0){o[e+300>>2]=12;n=-1;break e}else{Ms(d|0,e|0,132)|0;ki(d,n);break}else{ki(a,n);Ms(d|0,a|0,132)|0}}while(0);n=Qs[o[(o[9395]|0)+16>>2]&3](37580,d,128,t,c,o[u>>2]|0,o[f>>2]|0,i,s)|0;Gr(d,132);if((n|0)==-1){o[e+300>>2]=5;n=-1;break}else{o[e+296>>2]=1;break}}o[e+300>>2]=4;n=-1}else{o[e+300>>2]=3;n=-1}}while(0);d=n;h=p;return d|0}function qi(e){e=e|0;return pe(32)|0}function zi(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e+300>>2]=2;n=-1;return n|0}else{n=me(e+264|0,32,t)|0;return n|0}return 0}function Ki(e){e=e|0;return o[e+128>>2]|0}function Gi(e){e=e|0;return o[e+296>>2]|0}function Hi(e){e=e|0;return pe(165)|0}function Vi(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0;l=h;h=h+144|0;f=l;s=pe(165)|0;if(s>>>0>n>>>0){o[e+300>>2]=2;t=-1;h=l;return t|0}n=e+132|0;do{if((i-(o[e+260>>2]|0)|0)>-1){ki(n,i);Ms(f|0,n|0,132)|0}else{if((i-(o[e+128>>2]|0)|0)>=0){Ms(f|0,e|0,132)|0;ki(f,i);break}o[e+300>>2]=12;t=-1;h=l;return t|0}}while(0);c=t+s+-165|0;r[c>>0]=1;a=c+1|0;r[a>>0]=i>>>24;a=a+1|0;r[a>>0]=i>>>16;a=a+1|0;r[a>>0]=i>>>8;r[a+1>>0]=i;a=t+(s+-161)|0;s=t+(s+-160)|0;n=f;i=s+128|0;do{r[s>>0]=r[n>>0]|0;s=s+1|0;n=n+1|0}while((s|0)<(i|0));s=a+129|0;n=e+264|0;i=s+32|0;do{r[s>>0]=r[n>>0]|0;s=s+1|0;n=n+1|0}while((s|0)<(i|0));t=me(c,165,t)|0;h=l;return t|0}function Qi(e){e=e|0;return Si(o[e>>2]|0)|0}function Wi(){return 100}function Yi(e){e=e|0;Gr(e,100);return e|0}function Xi(e){e=e|0;Gr(e,100);return 100}function Ji(e){e=e|0;return 32}function Zi(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<32){o[e>>2]=1;n=-1;return n|0}else{pt(t,e+4|0);n=0;return n|0}return 0}function $i(e){e=e|0;return pe(32)|0}function eo(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e>>2]=2;n=-1;return n|0}else{me(e+4|0,32,t)|0;n=0;return n|0}return 0}function to(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e>>2]=15;n=-1;return n|0}else{ye(t,n,t)|0;mt(e+4|0,t,e+68|0);n=0;return n|0}return 0}function no(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;Tt(e+68|0,32,0,0,t,n,r,i);return 0}function ro(e){e=e|0;return pe(32)|0}function io(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+32|0;c=f;if((pe(32)|0)>>>0>a>>>0){o[e>>2]=2;c=-1;h=f;return c|0}else{Tt(e+68|0,32,0,0,r,i,c,32);Et(c,32,t,n,s);me(s,32,s)|0;c=0;h=f;return c|0}return 0}function oo(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var c=0,f=0;f=h;h=h+256|0;c=f;if((pe(32)|0)>>>0>a>>>0){o[e>>2]=2;c=-1;h=f;return c|0}else{Tt(e+68|0,32,0,0,r,i,c,256);Et(c,256,t,n,s);me(s,32,s)|0;c=0;h=f;return c|0}return 0}function so(){return 232}function ao(e){e=e|0;Gr(e,232);return e|0}function co(e){e=e|0;Gr(e,232);return 232}function fo(e){e=e|0;return Si(o[e+228>>2]|0)|0}function lo(e){e=e|0;var t=0;t=(_i(e)|0)+4|0;return Ti(t+(Me(e+132|0)|0)|0)|0}function uo(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;a=(_i(e)|0)+4|0;s=e+132|0;a=a+(Me(s)|0)|0;if((Ti(a)|0)>>>0>i>>>0){o[e+228>>2]=2;a=-1;return a|0}else{De(wi(e,Ne(Ii(r,a)|0,1)|0)|0,s)|0;a=xi(t,n,r,a)|0;return a|0}return 0}function ho(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0;c=h;h=h+16|0;s=c;a=e+228|0;t=Ri(t,n,r,i,a)|0;do{if((t|0)!=-1){n=r+t|0;t=je(r,n,s)|0;if((o[s>>2]|0)!=1){o[a>>2]=9;i=-1;break}if((n|0)!=(Be(Ai(e,t,n)|0,n,e+132|0)|0)){o[a>>2]=10;i=-1}}else i=-1}while(0);h=c;return i|0}function po(e){e=e|0;return 160}function mo(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<160){o[e+228>>2]=1;n=-1;return n|0}else{vi(e,t,0);gt(t+128|0,e+132|0);Gr(t,n);n=0;return n|0}return 0}function go(e,t){e=e|0;t=t|0;var n=0;n=Hs[o[(o[9395]|0)+4>>2]&3](37580,t)|0;t=Gs[o[o[9395]>>2]&1](37580)|0;return pe(We(o[e+128>>2]|0,n,t,64)|0)|0}function yo(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0;l=h;h=h+16|0;f=l;a=Hs[o[(o[9395]|0)+4>>2]&3](37580,n)|0;c=Gs[o[o[9395]>>2]&1](37580)|0;s=e+128|0;c=We(o[s>>2]|0,a,c,64)|0;if((pe(c)|0)>>>0>i>>>0){o[e+228>>2]=2;f=-1;h=l;return f|0}a=r+(pe(c)|0)+(0-c)|0;u=Hs[o[(o[9395]|0)+4>>2]&3](37580,n)|0;i=Gs[o[o[9395]>>2]&1](37580)|0;i=(Ye(3,o[s>>2]|0,u,a,f)|0)+i|0;if((Qs[o[(o[9395]|0)+8>>2]&3](37580,e,128,t,n,o[f>>2]|0,u,a,i)|0)==-1){u=-1;h=l;return u|0}else{Ei(e);yt(e+132|0,a,i,a+i|0);u=me(a,c,r)|0;h=l;return u|0}return 0}function bo(e){e=e|0;return pe(32)|0}function vo(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e+228>>2]=2;n=-1;return n|0}else{n=me(e+132|0,32,t)|0;return n|0}return 0}function _o(e){e=e|0;return o[e+128>>2]|0}function wo(e){e=e|0;return pe(229)|0}function Ao(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0;i=pe(229)|0;if(i>>>0>n>>>0){o[e+228>>2]=2;t=-1;return t|0}else{c=t+i+-229|0;r[c>>0]=2;s=o[e+128>>2]|0;f=c+1|0;r[f>>0]=s>>>24;f=f+1|0;r[f>>0]=s>>>16;f=f+1|0;r[f>>0]=s>>>8;r[f+1>>0]=s;f=t+(i+-225)|0;i=t+(i+-224)|0;s=e;a=i+128|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));n=e+132|0;i=f+129|0;s=n;a=i+32|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));f=f+161|0;yt(n,c,f-c|0,f);t=me(c,229,t)|0;return t|0}return 0}function Eo(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0;R=h;h=h+256|0;x=R;o[x>>2]=(s[t+1>>0]|0)<<16|(s[t>>0]|0)<<24|(s[t+2>>0]|0)<<8|(s[t+3>>0]|0);o[x+4>>2]=(s[t+5>>0]|0)<<16|(s[t+4>>0]|0)<<24|(s[t+6>>0]|0)<<8|(s[t+7>>0]|0);o[x+8>>2]=(s[t+9>>0]|0)<<16|(s[t+8>>0]|0)<<24|(s[t+10>>0]|0)<<8|(s[t+11>>0]|0);o[x+12>>2]=(s[t+13>>0]|0)<<16|(s[t+12>>0]|0)<<24|(s[t+14>>0]|0)<<8|(s[t+15>>0]|0);o[x+16>>2]=(s[t+17>>0]|0)<<16|(s[t+16>>0]|0)<<24|(s[t+18>>0]|0)<<8|(s[t+19>>0]|0);o[x+20>>2]=(s[t+21>>0]|0)<<16|(s[t+20>>0]|0)<<24|(s[t+22>>0]|0)<<8|(s[t+23>>0]|0);o[x+24>>2]=(s[t+25>>0]|0)<<16|(s[t+24>>0]|0)<<24|(s[t+26>>0]|0)<<8|(s[t+27>>0]|0);o[x+28>>2]=(s[t+29>>0]|0)<<16|(s[t+28>>0]|0)<<24|(s[t+30>>0]|0)<<8|(s[t+31>>0]|0);o[x+32>>2]=(s[t+33>>0]|0)<<16|(s[t+32>>0]|0)<<24|(s[t+34>>0]|0)<<8|(s[t+35>>0]|0);o[x+36>>2]=(s[t+37>>0]|0)<<16|(s[t+36>>0]|0)<<24|(s[t+38>>0]|0)<<8|(s[t+39>>0]|0);o[x+40>>2]=(s[t+41>>0]|0)<<16|(s[t+40>>0]|0)<<24|(s[t+42>>0]|0)<<8|(s[t+43>>0]|0);o[x+44>>2]=(s[t+45>>0]|0)<<16|(s[t+44>>0]|0)<<24|(s[t+46>>0]|0)<<8|(s[t+47>>0]|0);o[x+48>>2]=(s[t+49>>0]|0)<<16|(s[t+48>>0]|0)<<24|(s[t+50>>0]|0)<<8|(s[t+51>>0]|0);o[x+52>>2]=(s[t+53>>0]|0)<<16|(s[t+52>>0]|0)<<24|(s[t+54>>0]|0)<<8|(s[t+55>>0]|0);o[x+56>>2]=(s[t+57>>0]|0)<<16|(s[t+56>>0]|0)<<24|(s[t+58>>0]|0)<<8|(s[t+59>>0]|0);o[x+60>>2]=(s[t+61>>0]|0)<<16|(s[t+60>>0]|0)<<24|(s[t+62>>0]|0)<<8|(s[t+63>>0]|0);t=16;n=o[x>>2]|0;do{I=o[x+(t+-2<<2)>>2]|0;T=n;n=o[x+(t+-15<<2)>>2]|0;o[x+(t<<2)>>2]=T+(o[x+(t+-7<<2)>>2]|0)+((I>>>19|I<<13)^I>>>10^(I>>>17|I<<15))+((n>>>18|n<<14)^n>>>3^(n>>>7|n<<25));t=t+1|0}while((t|0)!=64);p=e+80|0;m=o[p>>2]|0;g=e+84|0;y=o[g>>2]|0;b=e+88|0;v=o[b>>2]|0;_=e+92|0;w=o[_>>2]|0;A=e+96|0;E=o[A>>2]|0;k=e+100|0;S=o[k>>2]|0;T=e+104|0;I=o[T>>2]|0;u=e+108|0;d=o[u>>2]|0;e=y;t=d;r=I;i=S;a=E;n=w;c=v;f=m;l=0;while(1){C=((a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7))+t+(r&~a^i&a)+(o[32768+(l<<2)>>2]|0)+(o[x+(l<<2)>>2]|0)|0;t=C+n|0;n=((f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10))+(f&(e^c)^e&c)+C|0;l=l+1|0;if((l|0)==64)break;else{D=c;M=a;P=i;O=r;C=f;a=t;f=n;c=e;n=D;i=M;r=P;t=O;e=C}}o[p>>2]=n+m;o[g>>2]=f+y;o[b>>2]=e+v;o[_>>2]=c+w;o[A>>2]=t+E;o[k>>2]=a+S;o[T>>2]=i+I;o[u>>2]=r+d;h=R;return}function ko(e){e=e|0;var t=0;o[e+64>>2]=0;t=e+72|0;o[t>>2]=0;o[t+4>>2]=0;o[e+80>>2]=1779033703;o[e+84>>2]=-1150833019;o[e+88>>2]=1013904242;o[e+92>>2]=-1521486534;o[e+96>>2]=1359893119;o[e+100>>2]=-1694144372;o[e+104>>2]=528734635;o[e+108>>2]=1541459225;return}function So(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0;if(!n)return;a=e+64|0;c=e+72|0;s=0;i=o[a>>2]|0;do{r[e+i>>0]=r[t+s>>0]|0;i=(o[a>>2]|0)+1|0;o[a>>2]=i;if((i|0)==64){Eo(e,e);f=c;f=ks(o[f>>2]|0,o[f+4>>2]|0,512,0)|0;i=c;o[i>>2]=f;o[i+4>>2]=T;o[a>>2]=0;i=0}s=s+1|0}while((s|0)!=(n|0));return}function To(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0;s=e+64|0;n=o[s>>2]|0;i=n+1|0;r[e+n>>0]=-128;if(n>>>0<56){if(i>>>0<56)Ds(e+i|0,0,55-n|0)|0}else{if(i>>>0<64)Ds(e+i|0,0,63-n|0)|0;Eo(e,e);n=e;i=n+56|0;do{o[n>>2]=0;n=n+4|0}while((n|0)<(i|0))}f=e+72|0;l=f;l=ks(o[l>>2]|0,o[l+4>>2]|0,o[s>>2]<<3|0,0)|0;u=T;o[f>>2]=l;o[f+4>>2]=u;r[e+63>>0]=l;f=Cs(l|0,u|0,8)|0;r[e+62>>0]=f;f=Cs(l|0,u|0,16)|0;r[e+61>>0]=f;f=Cs(l|0,u|0,24)|0;r[e+60>>0]=f;r[e+59>>0]=u;f=Cs(l|0,u|0,40)|0;r[e+58>>0]=f;f=Cs(l|0,u|0,48)|0;r[e+57>>0]=f;u=Cs(l|0,u|0,56)|0;r[e+56>>0]=u;Eo(e,e);u=e+80|0;l=e+84|0;f=e+88|0;c=e+92|0;a=e+96|0;n=e+100|0;i=e+104|0;s=e+108|0;r[t>>0]=(o[u>>2]|0)>>>24;r[t+4>>0]=(o[l>>2]|0)>>>24;r[t+8>>0]=(o[f>>2]|0)>>>24;r[t+12>>0]=(o[c>>2]|0)>>>24;r[t+16>>0]=(o[a>>2]|0)>>>24;r[t+20>>0]=(o[n>>2]|0)>>>24;r[t+24>>0]=(o[i>>2]|0)>>>24;r[t+28>>0]=(o[s>>2]|0)>>>24;r[t+1>>0]=(o[u>>2]|0)>>>16;r[t+5>>0]=(o[l>>2]|0)>>>16;r[t+9>>0]=(o[f>>2]|0)>>>16;r[t+13>>0]=(o[c>>2]|0)>>>16;r[t+17>>0]=(o[a>>2]|0)>>>16;r[t+21>>0]=(o[n>>2]|0)>>>16;r[t+25>>0]=(o[i>>2]|0)>>>16;r[t+29>>0]=(o[s>>2]|0)>>>16;r[t+2>>0]=(o[u>>2]|0)>>>8;r[t+6>>0]=(o[l>>2]|0)>>>8;r[t+10>>0]=(o[f>>2]|0)>>>8;r[t+14>>0]=(o[c>>2]|0)>>>8;r[t+18>>0]=(o[a>>2]|0)>>>8;r[t+22>>0]=(o[n>>2]|0)>>>8;r[t+26>>0]=(o[i>>2]|0)>>>8;r[t+30>>0]=(o[s>>2]|0)>>>8;r[t+3>>0]=o[u>>2];r[t+7>>0]=o[l>>2];r[t+11>>0]=o[f>>2];r[t+15>>0]=o[c>>2];r[t+19>>0]=o[a>>2];r[t+23>>0]=o[n>>2];r[t+27>>0]=o[i>>2];r[t+31>>0]=o[s>>2];return}function Io(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0;L=h;h=h+16|0;M=L;U=M+4|0;E=M+8|0;k=M+12|0;_=r[e+4>>0]|0;S=M+1|0;f=r[e+5>>0]|0;T=M+5|0;m=r[e+6>>0]|0;I=M+9|0;u=r[e+7>>0]|0;x=M+13|0;b=r[e+8>>0]|0;R=M+2|0;d=r[e+9>>0]|0;C=M+6|0;A=r[e+10>>0]|0;O=M+10|0;l=r[e+11>>0]|0;P=M+14|0;a=r[e+12>>0]|0;D=M+3|0;q=r[e+13>>0]|0;B=M+7|0;g=r[e+14>>0]|0;N=M+11|0;p=r[e+15>>0]|0;j=M+15|0;v=o[n>>2]|0;y=v>>>24^(s[e>>0]|0);w=v>>>16^(s[e+1>>0]|0);c=v>>>8^(s[e+2>>0]|0);v=v^(s[e+3>>0]|0);r[k>>0]=v;F=o[n+4>>2]|0;_=F>>>24^_&255;f=F>>>16^f&255;m=F>>>8^m&255;u=F^u&255;F=o[n+8>>2]|0;b=F>>>24^b&255;d=F>>>16^d&255;A=F>>>8^A&255;l=F^l&255;F=o[n+12>>2]|0;a=F>>>24^a&255;e=F>>>16^q&255;g=F>>>8^g&255;p=F^p&255;r[M>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[S>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[R>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;r[D>>0]=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;r[U>>0]=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=e;r[B>>0]=w;r[E>>0]=A;r[O>>0]=c;r[I>>0]=g;r[N>>0]=m;r[k>>0]=p;r[j>>0]=l;r[P>>0]=u;r[x>>0]=v;xo(M);v=o[n+16>>2]|0;u=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);p=v>>>8^(s[E>>0]|0);r[E>>0]=p;v=v^(s[k>>0]|0);r[k>>0]=v;m=o[n+20>>2]|0;g=m>>>24^(s[S>>0]|0);c=m>>>16^(s[T>>0]|0);A=m>>>8^(s[I>>0]|0);m=m^(s[x>>0]|0);r[x>>0]=m;w=o[n+24>>2]|0;e=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);f=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);a=o[n+28>>2]|0;b=a>>>24^(s[D>>0]|0);_=a>>>16^(s[B>>0]|0);y=a>>>8^(s[N>>0]|0);a=a^(s[j>>0]|0);r[M>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;r[S>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;r[R>>0]=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[D>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;r[U>>0]=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=_;r[B>>0]=l;r[E>>0]=f;r[O>>0]=p;r[I>>0]=y;r[N>>0]=A;r[k>>0]=a;r[j>>0]=w;r[P>>0]=m;r[x>>0]=v;xo(M);v=o[n+32>>2]|0;m=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);a=v>>>8^(s[E>>0]|0);r[E>>0]=a;v=v^(s[k>>0]|0);r[k>>0]=v;A=o[n+36>>2]|0;y=A>>>24^(s[S>>0]|0);p=A>>>16^(s[T>>0]|0);f=A>>>8^(s[I>>0]|0);A=A^(s[x>>0]|0);r[x>>0]=A;l=o[n+40>>2]|0;_=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);c=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);b=o[n+44>>2]|0;e=b>>>24^(s[D>>0]|0);g=b>>>16^(s[B>>0]|0);u=b>>>8^(s[N>>0]|0);b=b^(s[j>>0]|0);r[M>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[S>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[R>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[D>>0]=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;r[U>>0]=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=g;r[B>>0]=w;r[E>>0]=c;r[O>>0]=a;r[I>>0]=u;r[N>>0]=f;r[k>>0]=b;r[j>>0]=l;r[P>>0]=A;r[x>>0]=v;xo(M);v=o[n+48>>2]|0;A=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);b=v>>>8^(s[E>>0]|0);r[E>>0]=b;v=v^(s[k>>0]|0);r[k>>0]=v;f=o[n+52>>2]|0;u=f>>>24^(s[S>>0]|0);a=f>>>16^(s[T>>0]|0);c=f>>>8^(s[I>>0]|0);f=f^(s[x>>0]|0);r[x>>0]=f;w=o[n+56>>2]|0;g=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);p=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);e=o[n+60>>2]|0;_=e>>>24^(s[D>>0]|0);y=e>>>16^(s[B>>0]|0);m=e>>>8^(s[N>>0]|0);e=e^(s[j>>0]|0);r[M>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;r[S>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;r[R>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;r[D>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;r[U>>0]=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=y;r[B>>0]=l;r[E>>0]=p;r[O>>0]=b;r[I>>0]=m;r[N>>0]=c;r[k>>0]=e;r[j>>0]=w;r[P>>0]=f;r[x>>0]=v;xo(M);v=o[n+64>>2]|0;f=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);e=v>>>8^(s[E>>0]|0);r[E>>0]=e;v=v^(s[k>>0]|0);r[k>>0]=v;c=o[n+68>>2]|0;m=c>>>24^(s[S>>0]|0);b=c>>>16^(s[T>>0]|0);p=c>>>8^(s[I>>0]|0);c=c^(s[x>>0]|0);r[x>>0]=c;l=o[n+72>>2]|0;y=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);a=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);_=o[n+76>>2]|0;g=_>>>24^(s[D>>0]|0);u=_>>>16^(s[B>>0]|0);A=_>>>8^(s[N>>0]|0);_=_^(s[j>>0]|0);r[M>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[S>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[R>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[D>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;r[U>>0]=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=u;r[B>>0]=w;r[E>>0]=a;r[O>>0]=e;r[I>>0]=A;r[N>>0]=p;r[k>>0]=_;r[j>>0]=l;r[P>>0]=c;r[x>>0]=v;xo(M);v=o[n+80>>2]|0;c=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);_=v>>>8^(s[E>>0]|0);r[E>>0]=_;v=v^(s[k>>0]|0);r[k>>0]=v;p=o[n+84>>2]|0;A=p>>>24^(s[S>>0]|0);e=p>>>16^(s[T>>0]|0);a=p>>>8^(s[I>>0]|0);p=p^(s[x>>0]|0);r[x>>0]=p;w=o[n+88>>2]|0;u=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);b=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);g=o[n+92>>2]|0;y=g>>>24^(s[D>>0]|0);m=g>>>16^(s[B>>0]|0);f=g>>>8^(s[N>>0]|0);g=g^(s[j>>0]|0);r[M>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[S>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;r[R>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;r[D>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;r[U>>0]=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=m;r[B>>0]=l;r[E>>0]=b;r[O>>0]=_;r[I>>0]=f;r[N>>0]=a;r[k>>0]=g;r[j>>0]=w;r[P>>0]=p;r[x>>0]=v;xo(M);v=o[n+96>>2]|0;p=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);g=v>>>8^(s[E>>0]|0);r[E>>0]=g;v=v^(s[k>>0]|0);r[k>>0]=v;a=o[n+100>>2]|0;f=a>>>24^(s[S>>0]|0);_=a>>>16^(s[T>>0]|0);b=a>>>8^(s[I>>0]|0);a=a^(s[x>>0]|0);r[x>>0]=a;l=o[n+104>>2]|0;m=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);e=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);y=o[n+108>>2]|0;u=y>>>24^(s[D>>0]|0);A=y>>>16^(s[B>>0]|0);c=y>>>8^(s[N>>0]|0);y=y^(s[j>>0]|0);r[M>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[S>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[R>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[D>>0]=r[(u&15)+(33024+(u>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[U>>0]=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=A;r[B>>0]=w;r[E>>0]=e;r[O>>0]=g;r[I>>0]=c;r[N>>0]=b;r[k>>0]=y;r[j>>0]=l;r[P>>0]=a;r[x>>0]=v;xo(M);v=o[n+112>>2]|0;a=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);y=v>>>8^(s[E>>0]|0);r[E>>0]=y;v=v^(s[k>>0]|0);r[k>>0]=v;b=o[n+116>>2]|0;c=b>>>24^(s[S>>0]|0);g=b>>>16^(s[T>>0]|0);e=b>>>8^(s[I>>0]|0);b=b^(s[x>>0]|0);r[x>>0]=b;w=o[n+120>>2]|0;A=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);_=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);u=o[n+124>>2]|0;m=u>>>24^(s[D>>0]|0);f=u>>>16^(s[B>>0]|0);p=u>>>8^(s[N>>0]|0);u=u^(s[j>>0]|0);r[M>>0]=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[S>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[R>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;r[D>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;r[U>>0]=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=f;r[B>>0]=l;r[E>>0]=_;r[O>>0]=y;r[I>>0]=p;r[N>>0]=e;r[k>>0]=u;r[j>>0]=w;r[P>>0]=b;r[x>>0]=v;xo(M);v=o[n+128>>2]|0;b=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);u=v>>>8^(s[E>>0]|0);r[E>>0]=u;v=v^(s[k>>0]|0);r[k>>0]=v;e=o[n+132>>2]|0;p=e>>>24^(s[S>>0]|0);y=e>>>16^(s[T>>0]|0);_=e>>>8^(s[I>>0]|0);e=e^(s[x>>0]|0);r[x>>0]=e;l=o[n+136>>2]|0;f=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);g=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);m=o[n+140>>2]|0;A=m>>>24^(s[D>>0]|0);c=m>>>16^(s[B>>0]|0);a=m>>>8^(s[N>>0]|0);m=m^(s[j>>0]|0);r[M>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;r[S>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[R>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;r[U>>0]=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=c;r[B>>0]=w;r[E>>0]=g;r[O>>0]=u;r[I>>0]=a;r[N>>0]=_;r[k>>0]=m;r[j>>0]=l;r[P>>0]=e;r[x>>0]=v;xo(M);v=o[n+144>>2]|0;e=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);m=v>>>8^(s[E>>0]|0);r[E>>0]=m;v=v^(s[k>>0]|0);r[k>>0]=v;_=o[n+148>>2]|0;a=_>>>24^(s[S>>0]|0);u=_>>>16^(s[T>>0]|0);g=_>>>8^(s[I>>0]|0);_=_^(s[x>>0]|0);r[x>>0]=_;w=o[n+152>>2]|0;c=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);y=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);A=o[n+156>>2]|0;f=A>>>24^(s[D>>0]|0);p=A>>>16^(s[B>>0]|0);b=A>>>8^(s[N>>0]|0);A=A^(s[j>>0]|0);e=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[M>>0]=e;a=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[S>>0]=a;c=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[R>>0]=c;f=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=f;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;r[U>>0]=u;r[T>>0]=d;r[C>>0]=p;r[B>>0]=l;r[E>>0]=y;r[O>>0]=m;r[I>>0]=b;r[N>>0]=g;r[k>>0]=A;r[j>>0]=w;r[P>>0]=_;r[x>>0]=v;if((i|0)==128){z=b;K=d;G=41;H=A;A=y;V=u;q=e;e=40;F=w;b=g;y=l;g=f;d=43;i=p;u=c;p=42;f=n+(e<<2)|0;f=o[f>>2]|0;w=f>>>24;c=f>>>16;l=f>>>8;q=q&255;q=w^q;q=q&255;r[M>>0]=q;w=V&255;w=c^w;w=w&255;r[U>>0]=w;A=A&255;A=l^A;A=A&255;r[E>>0]=A;E=H&255;E=f^E;E=E&255;r[k>>0]=E;U=n+(G<<2)|0;U=o[U>>2]|0;f=U>>>24;l=U>>>16;M=U>>>8;k=a&255;k=f^k;k=k&255;r[S>>0]=k;S=K&255;S=l^S;S=S&255;r[T>>0]=S;T=z&255;T=M^T;T=T&255;r[I>>0]=T;I=v&255;I=U^I;I=I&255;r[x>>0]=I;U=n+(p<<2)|0;U=o[U>>2]|0;p=U>>>24;v=U>>>16;M=U>>>8;x=u&255;x=p^x;x=x&255;r[R>>0]=x;i=i&255;i=v^i;i=i&255;r[C>>0]=i;C=m&255;C=M^C;C=C&255;r[O>>0]=C;O=_&255;O=U^O;O=O&255;r[P>>0]=O;P=n+(d<<2)|0;P=o[P>>2]|0;n=P>>>24;U=P>>>16;R=P>>>8;M=g&255;M=n^M;M=M&255;r[D>>0]=M;D=y&255;D=U^D;D=D&255;r[B>>0]=D;U=b&255;U=R^U;U=U&255;r[N>>0]=U;F=F&255;F=P^F;F=F&255;r[j>>0]=F;r[t>>0]=q;q=t+1|0;r[q>>0]=w;q=t+2|0;r[q>>0]=A;q=t+3|0;r[q>>0]=E;q=t+4|0;r[q>>0]=k;q=t+5|0;r[q>>0]=S;q=t+6|0;r[q>>0]=T;q=t+7|0;r[q>>0]=I;q=t+8|0;r[q>>0]=x;q=t+9|0;r[q>>0]=i;q=t+10|0;r[q>>0]=C;q=t+11|0;r[q>>0]=O;q=t+12|0;r[q>>0]=M;q=t+13|0;r[q>>0]=D;q=t+14|0;r[q>>0]=U;q=t+15|0;r[q>>0]=F;h=L;return}xo(M);v=o[n+160>>2]|0;b=v>>>24^(s[M>>0]|0);w=v>>>16^(s[U>>0]|0);u=v>>>8^(s[E>>0]|0);r[E>>0]=u;v=v^(s[k>>0]|0);r[k>>0]=v;e=o[n+164>>2]|0;p=e>>>24^(s[S>>0]|0);y=e>>>16^(s[T>>0]|0);_=e>>>8^(s[I>>0]|0);e=e^(s[x>>0]|0);r[x>>0]=e;l=o[n+168>>2]|0;f=l>>>24^(s[R>>0]|0);d=l>>>16^(s[C>>0]|0);g=l>>>8^(s[O>>0]|0);l=l^(s[P>>0]|0);m=o[n+172>>2]|0;A=m>>>24^(s[D>>0]|0);c=m>>>16^(s[B>>0]|0);a=m>>>8^(s[N>>0]|0);m=m^(s[j>>0]|0);r[M>>0]=r[(b&15)+(33024+(b>>>4<<4))>>0]|0;r[S>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[R>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=r[(A&15)+(33024+(A>>>4<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;r[U>>0]=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[T>>0]=d;r[C>>0]=c;r[B>>0]=w;r[E>>0]=g;r[O>>0]=u;r[I>>0]=a;r[N>>0]=_;r[k>>0]=m;r[j>>0]=l;r[P>>0]=e;r[x>>0]=v;xo(M);v=o[n+176>>2]|0;e=v>>>24^(s[M>>0]|0);l=v>>>16^(s[U>>0]|0);m=v>>>8^(s[E>>0]|0);r[E>>0]=m;v=v^(s[k>>0]|0);r[k>>0]=v;_=o[n+180>>2]|0;a=_>>>24^(s[S>>0]|0);u=_>>>16^(s[T>>0]|0);g=_>>>8^(s[I>>0]|0);_=_^(s[x>>0]|0);r[x>>0]=_;w=o[n+184>>2]|0;c=w>>>24^(s[R>>0]|0);d=w>>>16^(s[C>>0]|0);y=w>>>8^(s[O>>0]|0);w=w^(s[P>>0]|0);A=o[n+188>>2]|0;f=A>>>24^(s[D>>0]|0);p=A>>>16^(s[B>>0]|0);b=A>>>8^(s[N>>0]|0);A=A^(s[j>>0]|0);e=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[M>>0]=e;a=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[S>>0]=a;c=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[R>>0]=c;f=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[D>>0]=f;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;r[U>>0]=u;r[T>>0]=d;r[C>>0]=p;r[B>>0]=l;r[E>>0]=y;r[O>>0]=m;r[I>>0]=b;r[N>>0]=g;r[k>>0]=A;r[j>>0]=w;r[P>>0]=_;r[x>>0]=v;if((i|0)==192){Q=b;W=49;Y=A;A=y;V=e;e=48;H=w;G=g;K=l;z=f;b=51;q=_;F=m;y=p;g=c;_=50;i=v;m=n+(e<<2)|0;m=o[m>>2]|0;w=m>>>24;p=m>>>16;v=m>>>8;V=V&255;V=w^V;V=V&255;r[M>>0]=V;w=u&255;w=p^w;w=w&255;r[U>>0]=w;A=A&255;A=v^A;A=A&255;r[E>>0]=A;E=Y&255;E=m^E;E=E&255;r[k>>0]=E;U=n+(W<<2)|0;U=o[U>>2]|0;m=U>>>24;v=U>>>16;M=U>>>8;k=a&255;k=m^k;k=k&255;r[S>>0]=k;S=d&255;S=v^S;S=S&255;r[T>>0]=S;T=Q&255;T=M^T;T=T&255;r[I>>0]=T;i=i&255;i=U^i;i=i&255;r[x>>0]=i;x=n+(_<<2)|0;x=o[x>>2]|0;U=x>>>24;_=x>>>16;I=x>>>8;M=g&255;M=U^M;M=M&255;r[R>>0]=M;U=y&255;U=_^U;U=U&255;r[C>>0]=U;F=F&255;F=I^F;F=F&255;r[O>>0]=F;q=q&255;q=x^q;q=q&255;r[P>>0]=q;P=n+(b<<2)|0;P=o[P>>2]|0;R=P>>>24;C=P>>>16;O=P>>>8;z=z&255;z=R^z;z=z&255;r[D>>0]=z;K=K&255;K=C^K;K=K&255;r[B>>0]=K;G=G&255;G=O^G;G=G&255;r[N>>0]=G;H=H&255;H=P^H;H=H&255;r[j>>0]=H;r[t>>0]=V;V=t+1|0;r[V>>0]=w;V=t+2|0;r[V>>0]=A;V=t+3|0;r[V>>0]=E;V=t+4|0;r[V>>0]=k;V=t+5|0;r[V>>0]=S;V=t+6|0;r[V>>0]=T;V=t+7|0;r[V>>0]=i;V=t+8|0;r[V>>0]=M;V=t+9|0;r[V>>0]=U;V=t+10|0;r[V>>0]=F;V=t+11|0;r[V>>0]=q;V=t+12|0;r[V>>0]=z;V=t+13|0;r[V>>0]=K;V=t+14|0;r[V>>0]=G;V=t+15|0;r[V>>0]=H;h=L;return}xo(M);F=o[n+192>>2]|0;y=F>>>24^(s[M>>0]|0);W=F>>>16^(s[U>>0]|0);w=F>>>8^(s[E>>0]|0);r[E>>0]=w;F=F^(s[k>>0]|0);r[k>>0]=F;Y=o[n+196>>2]|0;z=Y>>>24^(s[S>>0]|0);A=Y>>>16^(s[T>>0]|0);G=Y>>>8^(s[I>>0]|0);Y=Y^(s[x>>0]|0);r[x>>0]=Y;V=o[n+200>>2]|0;H=V>>>24^(s[R>>0]|0);g=V>>>16^(s[C>>0]|0);Q=V>>>8^(s[O>>0]|0);V=V^(s[P>>0]|0);K=o[n+204>>2]|0;p=K>>>24^(s[D>>0]|0);q=K>>>16^(s[B>>0]|0);i=K>>>8^(s[N>>0]|0);K=K^(s[j>>0]|0);r[M>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[S>>0]=r[(z&15)+(33024+(z>>>4<<4))>>0]|0;r[R>>0]=r[(H&15)+(33024+(H>>>4<<4))>>0]|0;r[D>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;W=r[(W&15)+(33024+((W>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;q=r[(q&15)+(33024+((q>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;G=r[(G&15)+(33024+((G>>>4&15)<<4))>>0]|0;Q=r[(Q&15)+(33024+((Q>>>4&15)<<4))>>0]|0;i=r[(i&15)+(33024+((i>>>4&15)<<4))>>0]|0;F=r[(F&15)+(33024+((F>>>4&15)<<4))>>0]|0;Y=r[(Y&15)+(33024+((Y>>>4&15)<<4))>>0]|0;V=r[(V&15)+(33024+((V>>>4&15)<<4))>>0]|0;K=r[(K&15)+(33024+((K>>>4&15)<<4))>>0]|0;r[U>>0]=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;r[T>>0]=g;r[C>>0]=q;r[B>>0]=W;r[E>>0]=Q;r[O>>0]=w;r[I>>0]=i;r[N>>0]=G;r[k>>0]=K;r[j>>0]=V;r[P>>0]=Y;r[x>>0]=F;xo(M);F=o[n+208>>2]|0;Y=F>>>24^(s[M>>0]|0);V=F>>>16^(s[U>>0]|0);K=F>>>8^(s[E>>0]|0);r[E>>0]=K;F=F^(s[k>>0]|0);r[k>>0]=F;G=o[n+212>>2]|0;i=G>>>24^(s[S>>0]|0);w=G>>>16^(s[T>>0]|0);Q=G>>>8^(s[I>>0]|0);G=G^(s[x>>0]|0);r[x>>0]=G;W=o[n+216>>2]|0;q=W>>>24^(s[R>>0]|0);g=W>>>16^(s[C>>0]|0);A=W>>>8^(s[O>>0]|0);W=W^(s[P>>0]|0);p=o[n+220>>2]|0;H=p>>>24^(s[D>>0]|0);z=p>>>16^(s[B>>0]|0);y=p>>>8^(s[N>>0]|0);p=p^(s[j>>0]|0);Y=r[(Y&15)+(33024+(Y>>>4<<4))>>0]|0;i=r[(i&15)+(33024+(i>>>4<<4))>>0]|0;r[S>>0]=i;q=r[(q&15)+(33024+(q>>>4<<4))>>0]|0;r[R>>0]=q;H=r[(H&15)+(33024+(H>>>4<<4))>>0]|0;r[D>>0]=H;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;b=57;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;m=56;W=r[(W&15)+(33024+((W>>>4&15)<<4))>>0]|0;Q=r[(Q&15)+(33024+((Q>>>4&15)<<4))>>0]|0;V=r[(V&15)+(33024+((V>>>4&15)<<4))>>0]|0;_=59;G=r[(G&15)+(33024+((G>>>4&15)<<4))>>0]|0;K=r[(K&15)+(33024+((K>>>4&15)<<4))>>0]|0;z=r[(z&15)+(33024+((z>>>4&15)<<4))>>0]|0;v=58;F=r[(F&15)+(33024+((F>>>4&15)<<4))>>0]|0;m=n+(m<<2)|0;m=o[m>>2]|0;l=m>>>24;u=m>>>16;d=m>>>8;Y=Y&255;Y=l^Y;Y=Y&255;r[M>>0]=Y;w=w&255;w=u^w;w=w&255;r[U>>0]=w;A=A&255;A=d^A;A=A&255;r[E>>0]=A;E=p&255;E=m^E;E=E&255;r[k>>0]=E;k=n+(b<<2)|0;k=o[k>>2]|0;M=k>>>24;U=k>>>16;b=k>>>8;i=i&255;i=M^i;i=i&255;r[S>>0]=i;M=g&255;M=U^M;M=M&255;r[T>>0]=M;U=y&255;U=b^U;U=U&255;r[I>>0]=U;F=F&255;F=k^F;F=F&255;r[x>>0]=F;x=n+(v<<2)|0;x=o[x>>2]|0;S=x>>>24;T=x>>>16;I=x>>>8;q=q&255;q=S^q;q=q&255;r[R>>0]=q;z=z&255;z=T^z;z=z&255;r[C>>0]=z;K=K&255;K=I^K;K=K&255;r[O>>0]=K;G=G&255;G=x^G;G=G&255;r[P>>0]=G;P=n+(_<<2)|0;P=o[P>>2]|0;R=P>>>24;C=P>>>16;O=P>>>8;H=H&255;H=R^H;H=H&255;r[D>>0]=H;V=V&255;V=C^V;V=V&255;r[B>>0]=V;Q=Q&255;Q=O^Q;Q=Q&255;r[N>>0]=Q;W=W&255;W=P^W;W=W&255;r[j>>0]=W;r[t>>0]=Y;Y=t+1|0;r[Y>>0]=w;Y=t+2|0;r[Y>>0]=A;Y=t+3|0;r[Y>>0]=E;Y=t+4|0;r[Y>>0]=i;Y=t+5|0;r[Y>>0]=M;Y=t+6|0;r[Y>>0]=U;Y=t+7|0;r[Y>>0]=F;Y=t+8|0;r[Y>>0]=q;Y=t+9|0;r[Y>>0]=z;Y=t+10|0;r[Y>>0]=K;Y=t+11|0;r[Y>>0]=G;Y=t+12|0;r[Y>>0]=H;Y=t+13|0;r[Y>>0]=V;Y=t+14|0;r[Y>>0]=Q;Y=t+15|0;r[Y>>0]=W;h=L;return}function xo(e){e=e|0;var t=0,n=0,i=0,o=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0;h=r[e>>0]|0;u=e+4|0;i=r[u>>0]|0;o=e+8|0;s=r[o>>0]|0;a=e+12|0;n=r[a>>0]|0;f=h&255;c=i&255;t=s&255;d=n&255;r[e>>0]=n^s^r[33280+(f*6|0)>>0]^r[33280+(c*6|0)+1>>0];r[u>>0]=r[33280+(c*6|0)>>0]^h^n^r[33280+(t*6|0)+1>>0];r[o>>0]=r[33280+(d*6|0)+1>>0]^(r[33280+(t*6|0)>>0]^(i^h));r[a>>0]=s^i^r[33280+(f*6|0)+1>>0]^r[33280+(d*6|0)>>0];a=e+1|0;d=r[a>>0]|0;f=e+5|0;i=r[f>>0]|0;s=e+9|0;o=r[s>>0]|0;h=e+13|0;t=r[h>>0]|0;u=d&255;n=i&255;c=o&255;l=t&255;r[a>>0]=t^o^r[33280+(u*6|0)>>0]^r[33280+(n*6|0)+1>>0];r[f>>0]=r[33280+(n*6|0)>>0]^d^t^r[33280+(c*6|0)+1>>0];r[s>>0]=r[33280+(l*6|0)+1>>0]^(r[33280+(c*6|0)>>0]^(i^d));r[h>>0]=o^i^r[33280+(u*6|0)+1>>0]^r[33280+(l*6|0)>>0];h=e+2|0;l=r[h>>0]|0;u=e+6|0;i=r[u>>0]|0;o=e+10|0;s=r[o>>0]|0;d=e+14|0;c=r[d>>0]|0;f=l&255;t=i&255;n=s&255;a=c&255;r[h>>0]=c^s^r[33280+(f*6|0)>>0]^r[33280+(t*6|0)+1>>0];r[u>>0]=r[33280+(t*6|0)>>0]^l^c^r[33280+(n*6|0)+1>>0];r[o>>0]=r[33280+(a*6|0)+1>>0]^(r[33280+(n*6|0)>>0]^(i^l));r[d>>0]=s^i^r[33280+(f*6|0)+1>>0]^r[33280+(a*6|0)>>0];d=e+3|0;a=r[d>>0]|0;f=e+7|0;i=r[f>>0]|0;s=e+11|0;o=r[s>>0]|0;e=e+15|0;l=r[e>>0]|0;n=a&255;u=i&255;c=o&255;t=l&255;r[d>>0]=l^o^r[33280+(n*6|0)>>0]^r[33280+(u*6|0)+1>>0];r[f>>0]=r[33280+(u*6|0)>>0]^a^l^r[33280+(c*6|0)+1>>0];r[s>>0]=r[33280+(t*6|0)+1>>0]^(r[33280+(c*6|0)>>0]^(i^a));r[e>>0]=o^i^r[33280+(n*6|0)+1>>0]^r[33280+(t*6|0)>>0];return}function Ro(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,a=0;switch(n|0){case 128:{i=4;a=44;break}case 192:{i=6;a=52;break}case 256:{i=8;a=60;break}default:return}n=0;do{r=n<<2;o[t+(n<<2)>>2]=(s[e+(r|1)>>0]|0)<<16|(s[e+r>>0]|0)<<24|(s[e+(r|2)>>0]|0)<<8|(s[e+(r|3)>>0]|0);n=n+1|0}while(n>>>0>>0);if(i>>>0<=6){r=i;do{e=r+-1|0;n=o[t+(e<<2)>>2]|0;if(!((r>>>0)%(i>>>0)|0))n=((s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)<<8|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)|(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<16|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<24)^o[34816+(((e|0)/(i|0)|0)<<2)>>2];o[t+(r<<2)>>2]=o[t+(r-i<<2)>>2]^n;r=r+1|0}while((r|0)!=(a|0));return}r=i;do{e=r+-1|0;n=o[t+(e<<2)>>2]|0;switch(((r>>>0)%(i>>>0)|0)&15){case 0:{n=((s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)<<8|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)|(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<16|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<24)^o[34816+(((e|0)/(i|0)|0)<<2)>>2];break}case 4:{n=(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<8|(s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<16|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)<<24;break}default:{}}o[t+(r<<2)>>2]=o[t+(r-i<<2)>>2]^n;r=r+1|0}while((r|0)!=(a|0));return}function Co(e){e=e|0;var t=0,n=0,i=0,o=0,a=0,c=0,f=0,l=0;f=e+4|0;i=e+8|0;n=e+12|0;t=s[e>>0]|0;a=s[f>>0]|0;l=s[i>>0]|0;o=s[n>>0]|0;r[e>>0]=r[33280+(o*6|0)+2>>0]^(r[33280+(l*6|0)+4>>0]^(r[33280+(a*6|0)+3>>0]^r[33280+(t*6|0)+5>>0]));r[f>>0]=r[33280+(o*6|0)+4>>0]^(r[33280+(l*6|0)+3>>0]^(r[33280+(a*6|0)+5>>0]^r[33280+(t*6|0)+2>>0]));r[i>>0]=r[33280+(o*6|0)+3>>0]^(r[33280+(l*6|0)+5>>0]^(r[33280+(a*6|0)+2>>0]^r[33280+(t*6|0)+4>>0]));r[n>>0]=r[33280+(o*6|0)+5>>0]^(r[33280+(l*6|0)+2>>0]^(r[33280+(a*6|0)+4>>0]^r[33280+(t*6|0)+3>>0]));n=e+1|0;t=e+5|0;a=e+9|0;l=e+13|0;o=s[n>>0]|0;i=s[t>>0]|0;f=s[a>>0]|0;c=s[l>>0]|0;r[n>>0]=r[33280+(c*6|0)+2>>0]^(r[33280+(f*6|0)+4>>0]^(r[33280+(i*6|0)+3>>0]^r[33280+(o*6|0)+5>>0]));r[t>>0]=r[33280+(c*6|0)+4>>0]^(r[33280+(f*6|0)+3>>0]^(r[33280+(i*6|0)+5>>0]^r[33280+(o*6|0)+2>>0]));r[a>>0]=r[33280+(c*6|0)+3>>0]^(r[33280+(f*6|0)+5>>0]^(r[33280+(i*6|0)+2>>0]^r[33280+(o*6|0)+4>>0]));r[l>>0]=r[33280+(c*6|0)+5>>0]^(r[33280+(f*6|0)+2>>0]^(r[33280+(i*6|0)+4>>0]^r[33280+(o*6|0)+3>>0]));l=e+2|0;o=e+6|0;i=e+10|0;f=e+14|0;c=s[l>>0]|0;a=s[o>>0]|0;t=s[i>>0]|0;n=s[f>>0]|0;r[l>>0]=r[33280+(n*6|0)+2>>0]^(r[33280+(t*6|0)+4>>0]^(r[33280+(a*6|0)+3>>0]^r[33280+(c*6|0)+5>>0]));r[o>>0]=r[33280+(n*6|0)+4>>0]^(r[33280+(t*6|0)+3>>0]^(r[33280+(a*6|0)+5>>0]^r[33280+(c*6|0)+2>>0]));r[i>>0]=r[33280+(n*6|0)+3>>0]^(r[33280+(t*6|0)+5>>0]^(r[33280+(a*6|0)+2>>0]^r[33280+(c*6|0)+4>>0]));r[f>>0]=r[33280+(n*6|0)+5>>0]^(r[33280+(t*6|0)+2>>0]^(r[33280+(a*6|0)+4>>0]^r[33280+(c*6|0)+3>>0]));f=e+3|0;c=e+7|0;a=e+11|0;e=e+15|0;t=s[f>>0]|0;n=s[c>>0]|0;i=s[a>>0]|0;o=s[e>>0]|0;r[f>>0]=r[33280+(o*6|0)+2>>0]^(r[33280+(i*6|0)+4>>0]^(r[33280+(n*6|0)+3>>0]^r[33280+(t*6|0)+5>>0]));r[c>>0]=r[33280+(o*6|0)+4>>0]^(r[33280+(i*6|0)+3>>0]^(r[33280+(n*6|0)+5>>0]^r[33280+(t*6|0)+2>>0]));r[a>>0]=r[33280+(o*6|0)+3>>0]^(r[33280+(i*6|0)+5>>0]^(r[33280+(n*6|0)+2>>0]^r[33280+(t*6|0)+4>>0]));r[e>>0]=r[33280+(o*6|0)+5>>0]^(r[33280+(i*6|0)+2>>0]^(r[33280+(n*6|0)+4>>0]^r[33280+(t*6|0)+3>>0]));return}function Oo(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,T=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0;L=h;h=h+16|0;D=L;w=r[e>>0]|0;r[D>>0]=w;A=r[e+1>>0]|0;U=D+4|0;r[U>>0]=A;a=r[e+2>>0]|0;k=D+8|0;r[k>>0]=a;c=r[e+3>>0]|0;S=D+12|0;r[S>>0]=c;f=r[e+4>>0]|0;T=D+1|0;r[T>>0]=f;l=r[e+5>>0]|0;I=D+5|0;r[I>>0]=l;u=r[e+6>>0]|0;x=D+9|0;r[x>>0]=u;d=r[e+7>>0]|0;R=D+13|0;r[R>>0]=d;p=r[e+8>>0]|0;C=D+2|0;r[C>>0]=p;m=r[e+9>>0]|0;O=D+6|0;r[O>>0]=m;g=r[e+10>>0]|0;P=D+10|0;r[P>>0]=g;y=r[e+11>>0]|0;M=D+14|0;r[M>>0]=y;b=r[e+12>>0]|0;B=D+3|0;r[B>>0]=b;v=r[e+13>>0]|0;N=D+7|0;r[N>>0]=v;_=r[e+14>>0]|0;j=D+11|0;r[j>>0]=_;e=r[e+15>>0]|0;E=D+15|0;r[E>>0]=e;if((i|0)>128){if((i|0)>192){F=o[n+224>>2]|0;H=F>>>24^w&255;G=F>>>16^A&255;z=F>>>8^a&255;w=F^c&255;F=o[n+228>>2]|0;A=F>>>24^f&255;K=F>>>16^l&255;q=F>>>8^u&255;F=F^d&255;c=o[n+232>>2]|0;a=c>>>24^p&255;p=c>>>16^m&255;i=c>>>8^g&255;c=c^y&255;f=o[n+236>>2]|0;g=f>>>24^b&255;l=f>>>16^v&255;m=f>>>8^_&255;f=f^e&255;v=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[T>>0]=A;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[C>>0]=a;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[B>>0]=g;l=r[(l&15)+(34880+((l>>>4&15)<<4))>>0]|0;u=r[(G&15)+(34880+((G>>>4&15)<<4))>>0]|0;d=r[(K&15)+(34880+((K>>>4&15)<<4))>>0]|0;r[O>>0]=d;y=r[(p&15)+(34880+((p>>>4&15)<<4))>>0]|0;r[N>>0]=y;i=r[(i&15)+(34880+((i>>>4&15)<<4))>>0]|0;m=r[(m&15)+(34880+((m>>>4&15)<<4))>>0]|0;_=r[(z&15)+(34880+((z>>>4&15)<<4))>>0]|0;p=r[(q&15)+(34880+((q>>>4&15)<<4))>>0]|0;r[j>>0]=p;e=r[(F&15)+(34880+((F>>>4&15)<<4))>>0]|0;c=r[(c&15)+(34880+((c>>>4&15)<<4))>>0]|0;f=r[(f&15)+(34880+((f>>>4&15)<<4))>>0]|0;w=r[(w&15)+(34880+((w>>>4&15)<<4))>>0]|0;b=o[n+208>>2]|0;r[D>>0]=b>>>24^v&255;r[U>>0]=b>>>16^l&255;r[k>>0]=b>>>8^i&255;r[S>>0]=b^e&255;e=o[n+212>>2]|0;r[T>>0]=e>>>24^A&255;r[I>>0]=e>>>16^u&255;r[x>>0]=e>>>8^m&255;r[R>>0]=e^c&255;c=o[n+216>>2]|0;r[C>>0]=c>>>24^a&255;r[O>>0]=c>>>16^d&255;r[P>>0]=c>>>8^_&255;r[M>>0]=c^f&255;f=o[n+220>>2]|0;r[B>>0]=f>>>24^g&255;r[N>>0]=f>>>16^y&255;r[j>>0]=f>>>8^p&255;r[E>>0]=f^w&255;Co(D);w=r[N>>0]|0;f=r[O>>0]|0;p=r[I>>0]|0;y=r[U>>0]|0;g=r[j>>0]|0;c=r[x>>0]|0;_=r[P>>0]|0;d=r[k>>0]|0;a=r[E>>0]|0;e=r[S>>0]|0;m=r[R>>0]|0;u=r[M>>0]|0;A=s[D>>0]|0;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[D>>0]=A;b=s[T>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[T>>0]=b;i=s[C>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[C>>0]=i;l=s[B>>0]|0;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;r[B>>0]=l;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;p=p&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[O>>0]=p;f=f&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;r[N>>0]=f;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;c=c&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[j>>0]=c;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;v=o[n+192>>2]|0;r[D>>0]=v>>>24^A&255;r[U>>0]=v>>>16^w&255;r[k>>0]=v>>>8^_&255;r[S>>0]=v^m&255;m=o[n+196>>2]|0;r[T>>0]=m>>>24^b&255;r[I>>0]=m>>>16^y&255;r[x>>0]=m>>>8^g&255;r[R>>0]=m^u&255;u=o[n+200>>2]|0;r[C>>0]=u>>>24^i&255;r[O>>0]=u>>>16^p&255;r[P>>0]=u>>>8^d&255;r[M>>0]=u^a&255;a=o[n+204>>2]|0;r[B>>0]=a>>>24^l&255;r[N>>0]=a>>>16^f&255;r[j>>0]=a>>>8^c&255;r[E>>0]=a^e&255;Co(D);e=r[D>>0]|0;a=r[T>>0]|0;c=r[C>>0]|0;f=r[B>>0]|0;l=r[N>>0]|0;u=r[U>>0]|0;d=r[I>>0]|0;p=r[O>>0]|0;i=r[P>>0]|0;m=r[j>>0]|0;g=r[k>>0]|0;y=r[x>>0]|0;b=r[R>>0]|0;v=r[M>>0]|0;_=r[E>>0]|0;w=r[S>>0]|0}else{G=o[n+192>>2]|0;V=(G>>>24^w&255)&255;r[D>>0]=V;F=(G>>>16^A&255)&255;r[U>>0]=F;z=(G>>>8^a&255)&255;r[k>>0]=z;w=(G^c&255)&255;r[S>>0]=w;G=o[n+196>>2]|0;a=(G>>>24^f&255)&255;r[T>>0]=a;q=(G>>>16^l&255)&255;r[I>>0]=q;K=(G>>>8^u&255)&255;r[x>>0]=K;G=(G^d&255)&255;r[R>>0]=G;H=o[n+200>>2]|0;c=(H>>>24^p&255)&255;r[C>>0]=c;p=(H>>>16^m&255)&255;r[O>>0]=p;i=(H>>>8^g&255)&255;r[P>>0]=i;H=(H^y&255)&255;r[M>>0]=H;u=o[n+204>>2]|0;f=(u>>>24^b&255)&255;r[B>>0]=f;l=(u>>>16^v&255)&255;r[N>>0]=l;m=(u>>>8^_&255)&255;r[j>>0]=m;_=(u^e&255)&255;r[E>>0]=_;e=V;u=F;d=q;g=z;y=K;b=G;v=H}H=e&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;V=a&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[T>>0]=V;e=c&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;r[C>>0]=e;a=f&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[B>>0]=a;l=l&255;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;r[O>>0]=d;c=p&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[N>>0]=c;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;p=y&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[j>>0]=p;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;y=v&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;f=_&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;_=o[n+176>>2]|0;r[D>>0]=_>>>24^H&255;r[U>>0]=_>>>16^l&255;r[k>>0]=_>>>8^i&255;r[S>>0]=_^b&255;_=o[n+180>>2]|0;r[T>>0]=_>>>24^V&255;r[I>>0]=_>>>16^u&255;r[x>>0]=_>>>8^m&255;r[R>>0]=_^y&255;y=o[n+184>>2]|0;r[C>>0]=y>>>24^e&255;r[O>>0]=y>>>16^d&255;r[P>>0]=y>>>8^g&255;r[M>>0]=y^f&255;f=o[n+188>>2]|0;r[B>>0]=f>>>24^a&255;r[N>>0]=f>>>16^c&255;r[j>>0]=f>>>8^p&255;r[E>>0]=f^w&255;Co(D);w=r[N>>0]|0;f=r[O>>0]|0;p=r[I>>0]|0;y=r[U>>0]|0;g=r[j>>0]|0;c=r[x>>0]|0;_=r[P>>0]|0;d=r[k>>0]|0;a=r[E>>0]|0;e=r[S>>0]|0;m=r[R>>0]|0;u=r[M>>0]|0;V=s[D>>0]|0;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[D>>0]=V;b=s[T>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[T>>0]=b;i=s[C>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[C>>0]=i;l=s[B>>0]|0;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;r[B>>0]=l;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;p=p&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[O>>0]=p;f=f&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;r[N>>0]=f;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;c=c&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[j>>0]=c;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;v=o[n+160>>2]|0;r[D>>0]=v>>>24^V&255;r[U>>0]=v>>>16^w&255;r[k>>0]=v>>>8^_&255;r[S>>0]=v^m&255;m=o[n+164>>2]|0;r[T>>0]=m>>>24^b&255;r[I>>0]=m>>>16^y&255;r[x>>0]=m>>>8^g&255;r[R>>0]=m^u&255;u=o[n+168>>2]|0;r[C>>0]=u>>>24^i&255;r[O>>0]=u>>>16^p&255;r[P>>0]=u>>>8^d&255;r[M>>0]=u^a&255;a=o[n+172>>2]|0;r[B>>0]=a>>>24^l&255;r[N>>0]=a>>>16^f&255;r[j>>0]=a>>>8^c&255;r[E>>0]=a^e&255;Co(D);e=r[D>>0]|0;a=r[T>>0]|0;c=r[C>>0]|0;f=r[B>>0]|0;l=r[N>>0]|0;u=r[U>>0]|0;d=r[I>>0]|0;p=r[O>>0]|0;i=r[P>>0]|0;m=r[j>>0]|0;g=r[k>>0]|0;y=r[x>>0]|0;b=r[R>>0]|0;v=r[M>>0]|0;_=r[E>>0]|0;w=r[S>>0]|0}else{H=o[n+160>>2]|0;F=(H>>>24^w&255)&255;r[D>>0]=F;q=(H>>>16^A&255)&255;r[U>>0]=q;K=(H>>>8^a&255)&255;r[k>>0]=K;w=(H^c&255)&255;r[S>>0]=w;H=o[n+164>>2]|0;a=(H>>>24^f&255)&255;r[T>>0]=a;z=(H>>>16^l&255)&255;r[I>>0]=z;G=(H>>>8^u&255)&255;r[x>>0]=G;H=(H^d&255)&255;r[R>>0]=H;V=o[n+168>>2]|0;c=(V>>>24^p&255)&255;r[C>>0]=c;p=(V>>>16^m&255)&255;r[O>>0]=p;i=(V>>>8^g&255)&255;r[P>>0]=i;V=(V^y&255)&255;r[M>>0]=V;u=o[n+172>>2]|0;f=(u>>>24^b&255)&255;r[B>>0]=f;l=(u>>>16^v&255)&255;r[N>>0]=l;m=(u>>>8^_&255)&255;r[j>>0]=m;_=(u^e&255)&255;r[E>>0]=_;e=F;u=q;d=z;g=K;y=G;b=H;v=V}e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[T>>0]=a;A=c&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[C>>0]=A;V=f&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[B>>0]=V;l=l&255;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;z=u&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;H=d&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[O>>0]=H;G=p&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[N>>0]=G;p=i&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;F=g&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;q=y&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[j>>0]=q;i=b&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;b=v&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;K=_&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;v=w&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;w=o[n+144>>2]|0;r[D>>0]=w>>>24^e&255;r[U>>0]=w>>>16^l&255;r[k>>0]=w>>>8^p&255;r[S>>0]=w^i&255;w=o[n+148>>2]|0;r[T>>0]=w>>>24^a&255;r[I>>0]=w>>>16^z&255;r[x>>0]=w>>>8^m&255;r[R>>0]=w^b&255;w=o[n+152>>2]|0;r[C>>0]=w>>>24^A&255;r[O>>0]=w>>>16^H&255;r[P>>0]=w>>>8^F&255;r[M>>0]=w^K&255;K=o[n+156>>2]|0;r[B>>0]=K>>>24^V&255;r[N>>0]=K>>>16^G&255;r[j>>0]=K>>>8^q&255;r[E>>0]=K^v&255;Co(D);v=r[N>>0]|0;K=r[O>>0]|0;q=r[I>>0]|0;G=r[U>>0]|0;w=r[j>>0]|0;b=r[x>>0]|0;V=r[P>>0]|0;F=r[k>>0]|0;m=r[E>>0]|0;H=r[S>>0]|0;i=r[R>>0]|0;A=r[M>>0]|0;g=s[D>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[D>>0]=g;p=s[T>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[T>>0]=p;z=s[C>>0]|0;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[C>>0]=z;_=s[B>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[B>>0]=_;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[O>>0]=q;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[N>>0]=K;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[j>>0]=b;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;y=o[n+128>>2]|0;r[D>>0]=y>>>24^g&255;r[U>>0]=y>>>16^v&255;r[k>>0]=y>>>8^V&255;r[S>>0]=y^i&255;i=o[n+132>>2]|0;r[T>>0]=i>>>24^p&255;r[I>>0]=i>>>16^G&255;r[x>>0]=i>>>8^w&255;r[R>>0]=i^A&255;A=o[n+136>>2]|0;r[C>>0]=A>>>24^z&255;r[O>>0]=A>>>16^q&255;r[P>>0]=A>>>8^F&255;r[M>>0]=A^m&255;m=o[n+140>>2]|0;r[B>>0]=m>>>24^_&255;r[N>>0]=m>>>16^K&255;r[j>>0]=m>>>8^b&255;r[E>>0]=m^H&255;Co(D);H=r[N>>0]|0;m=r[O>>0]|0;b=r[I>>0]|0;K=r[U>>0]|0;_=r[j>>0]|0;A=r[x>>0]|0;F=r[P>>0]|0;q=r[k>>0]|0;z=r[E>>0]|0;i=r[S>>0]|0;w=r[R>>0]|0;G=r[M>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;y=s[T>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[T>>0]=y;V=s[C>>0]|0;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[C>>0]=V;v=s[B>>0]|0;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;r[B>>0]=v;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[O>>0]=b;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[N>>0]=m;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[j>>0]=A;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;g=o[n+112>>2]|0;r[D>>0]=g>>>24^p&255;r[U>>0]=g>>>16^H&255;r[k>>0]=g>>>8^F&255;r[S>>0]=g^w&255;w=o[n+116>>2]|0;r[T>>0]=w>>>24^y&255;r[I>>0]=w>>>16^K&255;r[x>>0]=w>>>8^_&255;r[R>>0]=w^G&255;G=o[n+120>>2]|0;r[C>>0]=G>>>24^V&255;r[O>>0]=G>>>16^b&255;r[P>>0]=G>>>8^q&255;r[M>>0]=G^z&255;z=o[n+124>>2]|0;r[B>>0]=z>>>24^v&255;r[N>>0]=z>>>16^m&255;r[j>>0]=z>>>8^A&255;r[E>>0]=z^i&255;Co(D);i=r[N>>0]|0;z=r[O>>0]|0;A=r[I>>0]|0;m=r[U>>0]|0;v=r[j>>0]|0;G=r[x>>0]|0;q=r[P>>0]|0;b=r[k>>0]|0;V=r[E>>0]|0;w=r[S>>0]|0;_=r[R>>0]|0;K=r[M>>0]|0;y=s[D>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[D>>0]=y;g=s[T>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[T>>0]=g;F=s[C>>0]|0;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[C>>0]=F;H=s[B>>0]|0;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[B>>0]=H;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[O>>0]=A;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[N>>0]=z;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[j>>0]=G;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;p=o[n+96>>2]|0;r[D>>0]=p>>>24^y&255;r[U>>0]=p>>>16^i&255;r[k>>0]=p>>>8^q&255;r[S>>0]=p^_&255;_=o[n+100>>2]|0;r[T>>0]=_>>>24^g&255;r[I>>0]=_>>>16^m&255;r[x>>0]=_>>>8^v&255;r[R>>0]=_^K&255;K=o[n+104>>2]|0;r[C>>0]=K>>>24^F&255;r[O>>0]=K>>>16^A&255;r[P>>0]=K>>>8^b&255;r[M>>0]=K^V&255;V=o[n+108>>2]|0;r[B>>0]=V>>>24^H&255;r[N>>0]=V>>>16^z&255;r[j>>0]=V>>>8^G&255;r[E>>0]=V^w&255;Co(D);w=r[N>>0]|0;V=r[O>>0]|0;G=r[I>>0]|0;z=r[U>>0]|0;H=r[j>>0]|0;K=r[x>>0]|0;b=r[P>>0]|0;A=r[k>>0]|0;F=r[E>>0]|0;_=r[S>>0]|0;v=r[R>>0]|0;m=r[M>>0]|0;g=s[D>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[D>>0]=g;p=s[T>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[T>>0]=p;q=s[C>>0]|0;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[C>>0]=q;i=s[B>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[B>>0]=i;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[O>>0]=G;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[N>>0]=V;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[j>>0]=K;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;y=o[n+80>>2]|0;r[D>>0]=y>>>24^g&255;r[U>>0]=y>>>16^w&255;r[k>>0]=y>>>8^b&255;r[S>>0]=y^v&255;v=o[n+84>>2]|0;r[T>>0]=v>>>24^p&255;r[I>>0]=v>>>16^z&255;r[x>>0]=v>>>8^H&255;r[R>>0]=v^m&255;m=o[n+88>>2]|0;r[C>>0]=m>>>24^q&255;r[O>>0]=m>>>16^G&255;r[P>>0]=m>>>8^A&255;r[M>>0]=m^F&255;F=o[n+92>>2]|0;r[B>>0]=F>>>24^i&255;r[N>>0]=F>>>16^V&255;r[j>>0]=F>>>8^K&255;r[E>>0]=F^_&255;Co(D);_=r[N>>0]|0;F=r[O>>0]|0;K=r[I>>0]|0;V=r[U>>0]|0;i=r[j>>0]|0;m=r[x>>0]|0;A=r[P>>0]|0;G=r[k>>0]|0;q=r[E>>0]|0;v=r[S>>0]|0;H=r[R>>0]|0;z=r[M>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;y=s[T>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[T>>0]=y;b=s[C>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[C>>0]=b;w=s[B>>0]|0;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[B>>0]=w;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[O>>0]=K;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[N>>0]=F;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[j>>0]=m;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;g=o[n+64>>2]|0;r[D>>0]=g>>>24^p&255;r[U>>0]=g>>>16^_&255;r[k>>0]=g>>>8^A&255;r[S>>0]=g^H&255;H=o[n+68>>2]|0;r[T>>0]=H>>>24^y&255;r[I>>0]=H>>>16^V&255;r[x>>0]=H>>>8^i&255;r[R>>0]=H^z&255;z=o[n+72>>2]|0;r[C>>0]=z>>>24^b&255;r[O>>0]=z>>>16^K&255;r[P>>0]=z>>>8^G&255;r[M>>0]=z^q&255;q=o[n+76>>2]|0;r[B>>0]=q>>>24^w&255;r[N>>0]=q>>>16^F&255;r[j>>0]=q>>>8^m&255;r[E>>0]=q^v&255;Co(D);v=r[N>>0]|0;q=r[O>>0]|0;m=r[I>>0]|0;F=r[U>>0]|0;w=r[j>>0]|0;z=r[x>>0]|0;G=r[P>>0]|0;K=r[k>>0]|0;b=r[E>>0]|0;H=r[S>>0]|0;i=r[R>>0]|0;V=r[M>>0]|0;y=s[D>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[D>>0]=y;g=s[T>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[T>>0]=g;A=s[C>>0]|0;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[C>>0]=A;_=s[B>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[B>>0]=_;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[O>>0]=m;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[N>>0]=q;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[j>>0]=z;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;p=o[n+48>>2]|0;r[D>>0]=p>>>24^y&255;r[U>>0]=p>>>16^v&255;r[k>>0]=p>>>8^G&255;r[S>>0]=p^i&255;i=o[n+52>>2]|0;r[T>>0]=i>>>24^g&255;r[I>>0]=i>>>16^F&255;r[x>>0]=i>>>8^w&255;r[R>>0]=i^V&255;V=o[n+56>>2]|0;r[C>>0]=V>>>24^A&255;r[O>>0]=V>>>16^m&255;r[P>>0]=V>>>8^K&255;r[M>>0]=V^b&255;b=o[n+60>>2]|0;r[B>>0]=b>>>24^_&255;r[N>>0]=b>>>16^q&255;r[j>>0]=b>>>8^z&255;r[E>>0]=b^H&255;Co(D);H=r[N>>0]|0;b=r[O>>0]|0;z=r[I>>0]|0;q=r[U>>0]|0;_=r[j>>0]|0;V=r[x>>0]|0;K=r[P>>0]|0;m=r[k>>0]|0;A=r[E>>0]|0;i=r[S>>0]|0;w=r[R>>0]|0;F=r[M>>0]|0;g=s[D>>0]|0;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[D>>0]=g;p=s[T>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[T>>0]=p;G=s[C>>0]|0;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[C>>0]=G;v=s[B>>0]|0;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;r[B>>0]=v;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[O>>0]=z;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[N>>0]=b;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[j>>0]=V;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;y=o[n+32>>2]|0;r[D>>0]=y>>>24^g&255;r[U>>0]=y>>>16^H&255;r[k>>0]=y>>>8^K&255;r[S>>0]=y^w&255;w=o[n+36>>2]|0;r[T>>0]=w>>>24^p&255;r[I>>0]=w>>>16^q&255;r[x>>0]=w>>>8^_&255;r[R>>0]=w^F&255;F=o[n+40>>2]|0;r[C>>0]=F>>>24^G&255;r[O>>0]=F>>>16^z&255;r[P>>0]=F>>>8^m&255;r[M>>0]=F^A&255;A=o[n+44>>2]|0;r[B>>0]=A>>>24^v&255;r[N>>0]=A>>>16^b&255;r[j>>0]=A>>>8^V&255;r[E>>0]=A^i&255;Co(D);i=r[N>>0]|0;A=r[O>>0]|0;V=r[I>>0]|0;b=r[U>>0]|0;v=r[j>>0]|0;F=r[x>>0]|0;m=r[P>>0]|0;z=r[k>>0]|0;G=r[E>>0]|0;w=r[S>>0]|0;_=r[R>>0]|0;q=r[M>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;y=s[T>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[T>>0]=y;K=s[C>>0]|0;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[C>>0]=K;H=s[B>>0]|0;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[B>>0]=H;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[O>>0]=V;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[N>>0]=A;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[j>>0]=F;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;g=o[n+16>>2]|0;r[D>>0]=g>>>24^p&255;r[U>>0]=g>>>16^i&255;r[k>>0]=g>>>8^m&255;r[S>>0]=g^_&255;_=o[n+20>>2]|0;r[T>>0]=_>>>24^y&255;r[I>>0]=_>>>16^b&255;r[x>>0]=_>>>8^v&255;r[R>>0]=_^q&255;q=o[n+24>>2]|0;r[C>>0]=q>>>24^K&255;r[O>>0]=q>>>16^V&255;r[P>>0]=q>>>8^z&255;r[M>>0]=q^G&255;G=o[n+28>>2]|0;r[B>>0]=G>>>24^H&255;r[N>>0]=G>>>16^A&255;r[j>>0]=G>>>8^F&255;r[E>>0]=G^w&255;Co(D);w=r[N>>0]|0;G=r[O>>0]|0;F=r[I>>0]|0;A=r[U>>0]|0;I=r[j>>0]|0;H=r[x>>0]|0;P=r[P>>0]|0;q=r[k>>0]|0;z=r[E>>0]|0;V=r[S>>0]|0;O=r[R>>0]|0;N=r[M>>0]|0;x=s[D>>0]|0;x=r[(x&15)+(34880+(x>>>4<<4))>>0]|0;r[D>>0]=x;M=s[T>>0]|0;M=r[(M&15)+(34880+(M>>>4<<4))>>0]|0;r[T>>0]=M;U=s[C>>0]|0;U=r[(U&15)+(34880+(U>>>4<<4))>>0]|0;r[C>>0]=U;K=s[B>>0]|0;R=w&255;D=A&255;F=F&255;G=G&255;C=P&255;B=I&255;q=q&255;H=H&255;O=O&255;N=N&255;z=z&255;V=V&255;I=o[n>>2]|0;R=(I>>>16^(s[(R&15)+(34880+(R>>>4<<4))>>0]|0))&255;C=(I>>>8^(s[(C&15)+(34880+(C>>>4<<4))>>0]|0))&255;O=(I^(s[(O&15)+(34880+(O>>>4<<4))>>0]|0))&255;P=o[n+4>>2]|0;D=(P>>>16^(s[(D&15)+(34880+(D>>>4<<4))>>0]|0))&255;B=(P>>>8^(s[(B&15)+(34880+(B>>>4<<4))>>0]|0))&255;N=(P^(s[(N&15)+(34880+(N>>>4<<4))>>0]|0))&255;j=o[n+8>>2]|0;F=(j>>>16^(s[(F&15)+(34880+(F>>>4<<4))>>0]|0))&255;q=(j>>>8^(s[(q&15)+(34880+(q>>>4<<4))>>0]|0))&255;z=(j^(s[(z&15)+(34880+(z>>>4<<4))>>0]|0))&255;n=o[n+12>>2]|0;K=(n>>>24^(s[(K&15)+(34880+(K>>>4<<4))>>0]|0))&255;G=(n>>>16^(s[(G&15)+(34880+(G>>>4<<4))>>0]|0))&255;H=(n>>>8^(s[(H&15)+(34880+(H>>>4<<4))>>0]|0))&255;V=(n^(s[(V&15)+(34880+(V>>>4<<4))>>0]|0))&255;r[t>>0]=I>>>24^x&255;r[t+1>>0]=R;r[t+2>>0]=C;r[t+3>>0]=O;r[t+4>>0]=P>>>24^M&255;r[t+5>>0]=D;r[t+6>>0]=B;r[t+7>>0]=N;r[t+8>>0]=j>>>24^U&255;r[t+9>>0]=F;r[t+10>>0]=q;r[t+11>>0]=z;r[t+12>>0]=K;r[t+13>>0]=G;r[t+14>>0]=H;r[t+15>>0]=V;h=L;return}function Po(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0,fe=0,le=0,ue=0,de=0,he=0,pe=0,me=0,ge=0,ye=0,be=0,ve=0,_e=0,we=0,Ae=0,Ee=0,ke=0,Se=0,Te=0,Ie=0,xe=0,Re=0,Ce=0,Oe=0,Pe=0,Me=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,Fe=0,qe=0,ze=0,Ke=0,Ge=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ct=0,ft=0,lt=0,ut=0,dt=0,ht=0,pt=0,mt=0,gt=0,yt=0,bt=0,vt=0,_t=0,wt=0,At=0,Et=0,kt=0,St=0,Tt=0,It=0,xt=0,Rt=0,Ct=0,Ot=0,Pt=0,Mt=0,Dt=0,Bt=0,Nt=0,jt=0,Ut=0,Lt=0,Ft=0,qt=0;Pt=h;h=h+2768|0;bt=Pt+2608|0;vt=Pt+2448|0;Ct=Pt+2288|0;_t=Pt+2128|0;wt=Pt+1968|0;At=Pt+1808|0;Ot=Pt+1648|0;Et=Pt+1488|0;kt=Pt+1328|0;St=Pt+1168|0;f=Pt+1008|0;c=Pt+848|0;a=Pt+688|0;i=Pt+528|0;Tt=Pt+368|0;at=Pt+288|0;It=Pt+208|0;xt=Pt+112|0;Rt=Pt+32|0;ct=Pt;st=ct;ot=st+32|0;do{r[st>>0]=r[t>>0]|0;st=st+1|0;t=t+1|0}while((st|0)<(ot|0));r[ct>>0]=r[ct>>0]&-8;st=ct+31|0;r[st>>0]=r[st>>0]&63|64;st=s[n>>0]|0;pt=Os(s[n+1>>0]|0|0,0,8)|0;ht=T;gt=Os(s[n+2>>0]|0|0,0,16)|0;ht=ht|T;mt=s[n+3>>0]|0;ot=Os(mt|0,0,24)|0;yt=at;o[yt>>2]=pt|st|gt|ot&50331648;o[yt+4>>2]=ht;yt=Os(s[n+4>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+5>>0]|0|0,0,16)|0;ht=ht|T;gt=s[n+6>>0]|0;st=Os(gt|0,0,24)|0;ht=Cs(yt|mt|ot|st|0,ht|T|0,2)|0;st=at+8|0;o[st>>2]=ht&33554431;o[st+4>>2]=0;st=Os(s[n+7>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+8>>0]|0|0,0,16)|0;ht=ht|T;mt=s[n+9>>0]|0;yt=Os(mt|0,0,24)|0;ht=Cs(st|gt|ot|yt|0,ht|T|0,3)|0;yt=at+16|0;o[yt>>2]=ht&67108863;o[yt+4>>2]=0;yt=Os(s[n+10>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+11>>0]|0|0,0,16)|0;ht=ht|T;gt=s[n+12>>0]|0;st=Os(gt|0,0,24)|0;ht=Cs(yt|mt|ot|st|0,ht|T|0,5)|0;st=at+24|0;o[st>>2]=ht&33554431;o[st+4>>2]=0;st=Os(s[n+13>>0]|0|0,0,8)|0;ht=T;ot=Os(s[n+14>>0]|0|0,0,16)|0;ht=ht|T;mt=Os(s[n+15>>0]|0|0,0,24)|0;ht=Cs(st|gt|ot|mt|0,ht|T|0,6)|0;mt=at+32|0;o[mt>>2]=ht&67108863;o[mt+4>>2]=0;mt=s[n+16>>0]|0;ht=Os(s[n+17>>0]|0|0,0,8)|0;ot=T;gt=Os(s[n+18>>0]|0|0,0,16)|0;ot=ot|T;st=s[n+19>>0]|0;yt=Os(st|0,0,24)|0;pt=at+40|0;o[pt>>2]=ht|mt|gt|yt&16777216;o[pt+4>>2]=ot;pt=Os(s[n+20>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+21>>0]|0|0,0,16)|0;ot=ot|T;gt=s[n+22>>0]|0;mt=Os(gt|0,0,24)|0;ot=Cs(pt|st|yt|mt|0,ot|T|0,1)|0;mt=at+48|0;o[mt>>2]=ot&67108863;o[mt+4>>2]=0;mt=Os(s[n+23>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+24>>0]|0|0,0,16)|0;ot=ot|T;st=s[n+25>>0]|0;pt=Os(st|0,0,24)|0;ot=Cs(mt|gt|yt|pt|0,ot|T|0,3)|0;pt=at+56|0;o[pt>>2]=ot&33554431;o[pt+4>>2]=0;pt=Os(s[n+26>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+27>>0]|0|0,0,16)|0;ot=ot|T;gt=s[n+28>>0]|0;mt=Os(gt|0,0,24)|0;ot=Cs(pt|st|yt|mt|0,ot|T|0,4)|0;mt=at+64|0;o[mt>>2]=ot&67108863;o[mt+4>>2]=0;mt=Os(s[n+29>>0]|0|0,0,8)|0;ot=T;yt=Os(s[n+30>>0]|0|0,0,16)|0;ot=ot|T;st=Os(s[n+31>>0]|0|0,0,24)|0;ot=Cs(mt|gt|yt|st|0,ot|T|0,6)|0;st=at+72|0;o[st>>2]=ot&33554431;o[st+4>>2]=0;Ds(Et|0,0,152)|0;st=Et;o[st>>2]=1;o[st+4>>2]=0;Ds(kt|0,0,152)|0;st=kt;o[st>>2]=1;o[st+4>>2]=0;Ds(St|0,0,152)|0;Ds(f|0,0,152)|0;Ds(c|0,0,152)|0;st=c;o[st>>2]=1;o[st+4>>2]=0;Ds(a|0,0,152)|0;Ds(i|0,0,152)|0;st=i;o[st>>2]=1;o[st+4>>2]=0;st=Ot+80|0;ot=st+72|0;do{o[st>>2]=0;st=st+4|0}while((st|0)<(ot|0));st=Ot;t=at;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));oe=Ct+144|0;se=Ct+64|0;ae=Ct+136|0;ce=Ct+56|0;fe=Ct+128|0;le=Ct+48|0;ue=Ct+120|0;de=Ct+40|0;he=Ct+112|0;pe=Ct+32|0;me=Ct+104|0;ge=Ct+24|0;ye=Ct+96|0;be=Ct+16|0;ve=Ct+88|0;_e=Ct+8|0;we=Ct+80|0;Ae=_t+144|0;Ee=_t+64|0;ke=_t+136|0;Se=_t+56|0;Te=_t+128|0;Ie=_t+48|0;xe=_t+120|0;Re=_t+40|0;Ce=_t+112|0;Oe=_t+32|0;Pe=_t+104|0;Me=_t+24|0;De=_t+96|0;Be=_t+16|0;Ne=_t+88|0;je=_t+8|0;Ue=_t+80|0;ie=Ct+72|0;Le=_t+72|0;Fe=bt+8|0;qe=vt+8|0;ze=bt+16|0;Ke=vt+16|0;Ge=bt+24|0;He=vt+24|0;Ve=bt+32|0;Qe=vt+32|0;We=bt+40|0;Ye=vt+40|0;Xe=bt+48|0;Je=vt+48|0;Ze=bt+56|0;$e=vt+56|0;et=bt+64|0;tt=vt+64|0;nt=bt+72|0;rt=vt+72|0;ft=Tt+80|0;lt=Tt+8|0;ut=Tt+16|0;dt=Tt+24|0;ht=Tt+32|0;pt=Tt+40|0;mt=Tt+48|0;gt=Tt+56|0;yt=Tt+64|0;it=Tt+72|0;d=Ot;re=0;t=f;n=Et;f=St;l=kt;while(1){u=r[ct+(31-re)>>0]|0;$=0;ee=i;te=a;ne=c;J=t;c=n;i=f;a=l;Z=d;while(1){Y=u&255;X=Y>>>7;Mo(a,Z,X,0);Mo(i,c,X,0);E=a;l=o[E>>2]|0;E=o[E+4>>2]|0;V=a+8|0;G=V;P=o[G>>2]|0;G=o[G+4>>2]|0;Nt=a+16|0;I=Nt;S=o[I>>2]|0;I=o[I+4>>2]|0;x=a+24|0;Mt=x;Q=o[Mt>>2]|0;Mt=o[Mt+4>>2]|0;v=a+32|0;_=v;jt=o[_>>2]|0;_=o[_+4>>2]|0;y=a+40|0;u=y;R=o[u>>2]|0;u=o[u+4>>2]|0;K=a+48|0;ot=K;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;B=a+56|0;C=B;F=o[C>>2]|0;C=o[C+4>>2]|0;Ut=a+64|0;w=Ut;U=o[w>>2]|0;w=o[w+4>>2]|0;g=a+72|0;Dt=g;Bt=o[Dt>>2]|0;Dt=o[Dt+4>>2]|0;k=i;j=o[k>>2]|0;k=o[k+4>>2]|0;b=ks(j|0,k|0,l|0,E|0)|0;p=a;o[p>>2]=b;o[p+4>>2]=T;p=i+8|0;b=p;H=o[b>>2]|0;b=o[b+4>>2]|0;D=ks(H|0,b|0,P|0,G|0)|0;o[V>>2]=D;o[V+4>>2]=T;V=i+16|0;D=V;L=o[D>>2]|0;D=o[D+4>>2]|0;f=ks(L|0,D|0,S|0,I|0)|0;o[Nt>>2]=f;o[Nt+4>>2]=T;Nt=i+24|0;f=Nt;n=o[f>>2]|0;f=o[f+4>>2]|0;Ft=ks(n|0,f|0,Q|0,Mt|0)|0;o[x>>2]=Ft;o[x+4>>2]=T;x=i+32|0;Ft=x;m=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;N=ks(m|0,Ft|0,jt|0,_|0)|0;o[v>>2]=N;o[v+4>>2]=T;v=i+40|0;N=v;q=o[N>>2]|0;N=o[N+4>>2]|0;A=ks(q|0,N|0,R|0,u|0)|0;o[y>>2]=A;o[y+4>>2]=T;y=i+48|0;A=y;M=o[A>>2]|0;A=o[A+4>>2]|0;d=ks(M|0,A|0,W|0,ot|0)|0;o[K>>2]=d;o[K+4>>2]=T;K=i+56|0;d=K;O=o[d>>2]|0;d=o[d+4>>2]|0;st=ks(O|0,d|0,F|0,C|0)|0;o[B>>2]=st;o[B+4>>2]=T;B=i+64|0;st=B;t=o[st>>2]|0;st=o[st+4>>2]|0;Lt=ks(t|0,st|0,U|0,w|0)|0;o[Ut>>2]=Lt;o[Ut+4>>2]=T;Ut=i+72|0;Lt=Ut;z=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;qt=ks(z|0,Lt|0,Bt|0,Dt|0)|0;o[g>>2]=qt;o[g+4>>2]=T;k=Ss(l|0,E|0,j|0,k|0)|0;j=i;o[j>>2]=k;o[j+4>>2]=T;b=Ss(P|0,G|0,H|0,b|0)|0;o[p>>2]=b;o[p+4>>2]=T;D=Ss(S|0,I|0,L|0,D|0)|0;o[V>>2]=D;o[V+4>>2]=T;f=Ss(Q|0,Mt|0,n|0,f|0)|0;o[Nt>>2]=f;o[Nt+4>>2]=T;Ft=Ss(jt|0,_|0,m|0,Ft|0)|0;o[x>>2]=Ft;o[x+4>>2]=T;N=Ss(R|0,u|0,q|0,N|0)|0;o[v>>2]=N;o[v+4>>2]=T;A=Ss(W|0,ot|0,M|0,A|0)|0;o[y>>2]=A;o[y+4>>2]=T;d=Ss(F|0,C|0,O|0,d|0)|0;o[K>>2]=d;o[K+4>>2]=T;st=Ss(U|0,w|0,t|0,st|0)|0;o[B>>2]=st;o[B+4>>2]=T;Lt=Ss(Bt|0,Dt|0,z|0,Lt|0)|0;o[Ut>>2]=Lt;o[Ut+4>>2]=T;Ut=Z;Lt=o[Ut>>2]|0;Ut=o[Ut+4>>2]|0;z=Z+8|0;Dt=z;Bt=o[Dt>>2]|0;Dt=o[Dt+4>>2]|0;B=Z+16|0;st=B;t=o[st>>2]|0;st=o[st+4>>2]|0;w=Z+24|0;U=w;K=o[U>>2]|0;U=o[U+4>>2]|0;d=Z+32|0;O=d;C=o[O>>2]|0;O=o[O+4>>2]|0;F=Z+40|0;y=F;A=o[y>>2]|0;y=o[y+4>>2]|0;M=Z+48|0;ot=M;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;v=Z+56|0;N=v;q=o[N>>2]|0;N=o[N+4>>2]|0;u=Z+64|0;R=u;x=o[R>>2]|0;R=o[R+4>>2]|0;Ft=Z+72|0;m=Ft;_=o[m>>2]|0;m=o[m+4>>2]|0;jt=c;Nt=o[jt>>2]|0;jt=o[jt+4>>2]|0;f=ks(Nt|0,jt|0,Lt|0,Ut|0)|0;n=Z;o[n>>2]=f;o[n+4>>2]=T;n=c+8|0;f=n;Mt=o[f>>2]|0;f=o[f+4>>2]|0;Q=ks(Mt|0,f|0,Bt|0,Dt|0)|0;o[z>>2]=Q;o[z+4>>2]=T;z=c+16|0;Q=z;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;D=ks(V|0,Q|0,t|0,st|0)|0;o[B>>2]=D;o[B+4>>2]=T;B=c+24|0;D=B;L=o[D>>2]|0;D=o[D+4>>2]|0;I=ks(L|0,D|0,K|0,U|0)|0;o[w>>2]=I;o[w+4>>2]=T;w=c+32|0;I=w;S=o[I>>2]|0;I=o[I+4>>2]|0;p=ks(S|0,I|0,C|0,O|0)|0;o[d>>2]=p;o[d+4>>2]=T;d=c+40|0;p=d;b=o[p>>2]|0;p=o[p+4>>2]|0;H=ks(b|0,p|0,A|0,y|0)|0;o[F>>2]=H;o[F+4>>2]=T;F=c+48|0;H=F;G=o[H>>2]|0;H=o[H+4>>2]|0;P=ks(G|0,H|0,W|0,ot|0)|0;o[M>>2]=P;o[M+4>>2]=T;M=c+56|0;P=M;j=o[P>>2]|0;P=o[P+4>>2]|0;k=ks(j|0,P|0,q|0,N|0)|0;o[v>>2]=k;o[v+4>>2]=T;v=c+64|0;k=v;E=o[k>>2]|0;k=o[k+4>>2]|0;l=ks(E|0,k|0,x|0,R|0)|0;o[u>>2]=l;o[u+4>>2]=T;u=c+72|0;l=u;g=o[l>>2]|0;l=o[l+4>>2]|0;qt=ks(g|0,l|0,_|0,m|0)|0;o[Ft>>2]=qt;o[Ft+4>>2]=T;jt=Ss(Lt|0,Ut|0,Nt|0,jt|0)|0;Nt=c;o[Nt>>2]=jt;o[Nt+4>>2]=T;f=Ss(Bt|0,Dt|0,Mt|0,f|0)|0;o[n>>2]=f;o[n+4>>2]=T;Q=Ss(t|0,st|0,V|0,Q|0)|0;o[z>>2]=Q;o[z+4>>2]=T;D=Ss(K|0,U|0,L|0,D|0)|0;o[B>>2]=D;o[B+4>>2]=T;I=Ss(C|0,O|0,S|0,I|0)|0;o[w>>2]=I;o[w+4>>2]=T;p=Ss(A|0,y|0,b|0,p|0)|0;o[d>>2]=p;o[d+4>>2]=T;H=Ss(W|0,ot|0,G|0,H|0)|0;o[F>>2]=H;o[F+4>>2]=T;P=Ss(q|0,N|0,j|0,P|0)|0;o[M>>2]=P;o[M+4>>2]=T;k=Ss(x|0,R|0,E|0,k|0)|0;o[v>>2]=k;o[v+4>>2]=T;l=Ss(_|0,m|0,g|0,l|0)|0;o[u>>2]=l;o[u+4>>2]=T;Do(Ct,Z,i);Do(_t,a,c);u=oe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=se;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=se;o[_>>2]=v;o[_+4>>2]=T;_=ae;v=o[_>>2]|0;_=o[_+4>>2]|0;u=ce;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=ce;o[g>>2]=m;o[g+4>>2]=T;g=fe;m=o[g>>2]|0;g=o[g+4>>2]|0;_=le;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=le;o[u>>2]=l;o[u+4>>2]=T;u=ue;l=o[u>>2]|0;u=o[u+4>>2]|0;g=de;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=de;o[_>>2]=v;o[_+4>>2]=T;_=he;v=o[_>>2]|0;_=o[_+4>>2]|0;u=pe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=pe;o[g>>2]=m;o[g+4>>2]=T;g=me;m=o[g>>2]|0;g=o[g+4>>2]|0;_=ge;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=ge;o[u>>2]=l;o[u+4>>2]=T;u=ye;l=o[u>>2]|0;u=o[u+4>>2]|0;g=be;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=be;o[_>>2]=v;o[_+4>>2]=T;_=ve;v=o[_>>2]|0;_=o[_+4>>2]|0;u=_e;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=_e;o[g>>2]=m;o[g+4>>2]=T;g=we;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Ct;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=Ct;o[u>>2]=l;o[u+4>>2]=T;Bo(Ct);u=Ae;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Ee;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=Ee;o[_>>2]=v;o[_+4>>2]=T;_=ke;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Se;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=Se;o[g>>2]=m;o[g+4>>2]=T;g=Te;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Ie;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=Ie;o[u>>2]=l;o[u+4>>2]=T;u=xe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Re;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=Re;o[_>>2]=v;o[_+4>>2]=T;_=Ce;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Oe;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=Oe;o[g>>2]=m;o[g+4>>2]=T;g=Pe;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Me;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=Me;o[u>>2]=l;o[u+4>>2]=T;u=De;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Be;m=o[g>>2]|0;g=o[g+4>>2]|0;_=Es(l|0,u|0,18,0)|0;v=T;u=ks(m|0,g|0,l|0,u|0)|0;v=ks(u|0,T|0,_|0,v|0)|0;_=Be;o[_>>2]=v;o[_+4>>2]=T;_=Ne;v=o[_>>2]|0;_=o[_+4>>2]|0;u=je;l=o[u>>2]|0;u=o[u+4>>2]|0;g=Es(v|0,_|0,18,0)|0;m=T;_=ks(l|0,u|0,v|0,_|0)|0;m=ks(_|0,T|0,g|0,m|0)|0;g=je;o[g>>2]=m;o[g+4>>2]=T;g=Ue;m=o[g>>2]|0;g=o[g+4>>2]|0;_=_t;v=o[_>>2]|0;_=o[_+4>>2]|0;u=Es(m|0,g|0,18,0)|0;l=T;g=ks(v|0,_|0,m|0,g|0)|0;l=ks(g|0,T|0,u|0,l|0)|0;u=_t;o[u>>2]=l;o[u+4>>2]=T;Bo(_t);u=Ct;l=o[u>>2]|0;u=o[u+4>>2]|0;g=_e;m=o[g>>2]|0;g=o[g+4>>2]|0;_=be;v=o[_>>2]|0;_=o[_+4>>2]|0;k=ge;E=o[k>>2]|0;k=o[k+4>>2]|0;R=pe;x=o[R>>2]|0;R=o[R+4>>2]|0;M=de;P=o[M>>2]|0;M=o[M+4>>2]|0;j=le;N=o[j>>2]|0;j=o[j+4>>2]|0;q=ce;F=o[q>>2]|0;q=o[q+4>>2]|0;H=se;G=o[H>>2]|0;H=o[H+4>>2]|0;ot=ie;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;d=_t;p=o[d>>2]|0;d=o[d+4>>2]|0;b=ks(p|0,d|0,l|0,u|0)|0;y=Ct;o[y>>2]=b;o[y+4>>2]=T;y=je;b=o[y>>2]|0;y=o[y+4>>2]|0;A=ks(b|0,y|0,m|0,g|0)|0;w=_e;o[w>>2]=A;o[w+4>>2]=T;w=Be;A=o[w>>2]|0;w=o[w+4>>2]|0;I=ks(A|0,w|0,v|0,_|0)|0;S=be;o[S>>2]=I;o[S+4>>2]=T;S=Me;I=o[S>>2]|0;S=o[S+4>>2]|0;O=ks(I|0,S|0,E|0,k|0)|0;C=ge;o[C>>2]=O;o[C+4>>2]=T;C=Oe;O=o[C>>2]|0;C=o[C+4>>2]|0;B=ks(O|0,C|0,x|0,R|0)|0;D=pe;o[D>>2]=B;o[D+4>>2]=T;D=Re;B=o[D>>2]|0;D=o[D+4>>2]|0;L=ks(B|0,D|0,P|0,M|0)|0;U=de;o[U>>2]=L;o[U+4>>2]=T;U=Ie;L=o[U>>2]|0;U=o[U+4>>2]|0;K=ks(L|0,U|0,N|0,j|0)|0;z=le;o[z>>2]=K;o[z+4>>2]=T;z=Se;K=o[z>>2]|0;z=o[z+4>>2]|0;Q=ks(K|0,z|0,F|0,q|0)|0;V=ce;o[V>>2]=Q;o[V+4>>2]=T;V=Ee;Q=o[V>>2]|0;V=o[V+4>>2]|0;st=ks(Q|0,V|0,G|0,H|0)|0;t=se;o[t>>2]=st;o[t+4>>2]=T;t=Le;st=o[t>>2]|0;t=o[t+4>>2]|0;n=ks(st|0,t|0,W|0,ot|0)|0;f=ie;o[f>>2]=n;o[f+4>>2]=T;d=Ss(l|0,u|0,p|0,d|0)|0;p=_t;o[p>>2]=d;o[p+4>>2]=T;y=Ss(m|0,g|0,b|0,y|0)|0;b=je;o[b>>2]=y;o[b+4>>2]=T;w=Ss(v|0,_|0,A|0,w|0)|0;A=Be;o[A>>2]=w;o[A+4>>2]=T;S=Ss(E|0,k|0,I|0,S|0)|0;I=Me;o[I>>2]=S;o[I+4>>2]=T;C=Ss(x|0,R|0,O|0,C|0)|0;O=Oe;o[O>>2]=C;o[O+4>>2]=T;D=Ss(P|0,M|0,B|0,D|0)|0;B=Re;o[B>>2]=D;o[B+4>>2]=T;U=Ss(N|0,j|0,L|0,U|0)|0;L=Ie;o[L>>2]=U;o[L+4>>2]=T;z=Ss(F|0,q|0,K|0,z|0)|0;K=Se;o[K>>2]=z;o[K+4>>2]=T;V=Ss(G|0,H|0,Q|0,V|0)|0;Q=Ee;o[Q>>2]=V;o[Q+4>>2]=T;t=Ss(W|0,ot|0,st|0,t|0)|0;st=Le;o[st>>2]=t;o[st+4>>2]=T;No(At,Ct);No(wt,_t);Do(_t,wt,at);st=Ae;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Ee;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=T;st=ks(W|0,ot|0,t|0,st|0)|0;V=ks(st|0,T|0,Q|0,V|0)|0;Q=Ee;o[Q>>2]=V;o[Q+4>>2]=T;Q=ke;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Se;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=T;Q=ks(t|0,st|0,V|0,Q|0)|0;W=ks(Q|0,T|0,ot|0,W|0)|0;ot=Se;o[ot>>2]=W;o[ot+4>>2]=T;ot=Te;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Ie;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=T;ot=ks(V|0,Q|0,W|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Ie;o[st>>2]=t;o[st+4>>2]=T;st=xe;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Re;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=T;st=ks(W|0,ot|0,t|0,st|0)|0;V=ks(st|0,T|0,Q|0,V|0)|0;Q=Re;o[Q>>2]=V;o[Q+4>>2]=T;Q=Ce;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Oe;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=T;Q=ks(t|0,st|0,V|0,Q|0)|0;W=ks(Q|0,T|0,ot|0,W|0)|0;ot=Oe;o[ot>>2]=W;o[ot+4>>2]=T;ot=Pe;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Me;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=T;ot=ks(V|0,Q|0,W|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Me;o[st>>2]=t;o[st+4>>2]=T;st=De;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Be;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=T;st=ks(W|0,ot|0,t|0,st|0)|0;V=ks(st|0,T|0,Q|0,V|0)|0;Q=Be;o[Q>>2]=V;o[Q+4>>2]=T;Q=Ne;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=je;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=T;Q=ks(t|0,st|0,V|0,Q|0)|0;W=ks(Q|0,T|0,ot|0,W|0)|0;ot=je;o[ot>>2]=W;o[ot+4>>2]=T;ot=Ue;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=_t;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=T;ot=ks(V|0,Q|0,W|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=_t;o[st>>2]=t;o[st+4>>2]=T;Bo(_t);st=J;t=At;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));st=ne;t=_t;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(bt,a);No(vt,i);Do(te,bt,vt);f=te+144|0;p=o[f>>2]|0;f=o[f+4>>2]|0;d=te+64|0;u=d;l=o[u>>2]|0;u=o[u+4>>2]|0;t=Es(p|0,f|0,18,0)|0;n=T;f=ks(l|0,u|0,p|0,f|0)|0;n=ks(f|0,T|0,t|0,n|0)|0;o[d>>2]=n;o[d+4>>2]=T;d=te+136|0;n=o[d>>2]|0;d=o[d+4>>2]|0;t=te+56|0;f=t;p=o[f>>2]|0;f=o[f+4>>2]|0;u=Es(n|0,d|0,18,0)|0;l=T;d=ks(p|0,f|0,n|0,d|0)|0;l=ks(d|0,T|0,u|0,l|0)|0;o[t>>2]=l;o[t+4>>2]=T;t=te+128|0;l=o[t>>2]|0;t=o[t+4>>2]|0;u=te+48|0;d=u;n=o[d>>2]|0;d=o[d+4>>2]|0;f=Es(l|0,t|0,18,0)|0;p=T;t=ks(n|0,d|0,l|0,t|0)|0;p=ks(t|0,T|0,f|0,p|0)|0;o[u>>2]=p;o[u+4>>2]=T;u=te+120|0;p=o[u>>2]|0;u=o[u+4>>2]|0;f=te+40|0;t=f;l=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(p|0,u|0,18,0)|0;n=T;u=ks(l|0,t|0,p|0,u|0)|0;n=ks(u|0,T|0,d|0,n|0)|0;o[f>>2]=n;o[f+4>>2]=T;f=te+112|0;n=o[f>>2]|0;f=o[f+4>>2]|0;d=te+32|0;u=d;p=o[u>>2]|0;u=o[u+4>>2]|0;t=Es(n|0,f|0,18,0)|0;l=T;f=ks(p|0,u|0,n|0,f|0)|0;l=ks(f|0,T|0,t|0,l|0)|0;o[d>>2]=l;o[d+4>>2]=T;d=te+104|0;l=o[d>>2]|0;d=o[d+4>>2]|0;t=te+24|0;f=t;n=o[f>>2]|0;f=o[f+4>>2]|0;u=Es(l|0,d|0,18,0)|0;p=T;d=ks(n|0,f|0,l|0,d|0)|0;p=ks(d|0,T|0,u|0,p|0)|0;o[t>>2]=p;o[t+4>>2]=T;t=te+96|0;p=o[t>>2]|0;t=o[t+4>>2]|0;u=te+16|0;d=u;l=o[d>>2]|0;d=o[d+4>>2]|0;f=Es(p|0,t|0,18,0)|0;n=T;t=ks(l|0,d|0,p|0,t|0)|0;n=ks(t|0,T|0,f|0,n|0)|0;o[u>>2]=n;o[u+4>>2]=T;u=te+88|0;n=o[u>>2]|0;u=o[u+4>>2]|0;f=te+8|0;t=f;p=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(n|0,u|0,18,0)|0;l=T;u=ks(p|0,t|0,n|0,u|0)|0;l=ks(u|0,T|0,d|0,l|0)|0;o[f>>2]=l;o[f+4>>2]=T;f=te+80|0;l=o[f>>2]|0;f=o[f+4>>2]|0;d=te;u=o[d>>2]|0;d=o[d+4>>2]|0;n=Es(l|0,f|0,18,0)|0;t=T;f=ks(u|0,d|0,l|0,f|0)|0;t=ks(f|0,T|0,n|0,t|0)|0;n=te;o[n>>2]=t;o[n+4>>2]=T;Bo(te);n=bt;t=o[n>>2]|0;n=o[n+4>>2]|0;f=vt;f=Ss(t|0,n|0,o[f>>2]|0,o[f+4>>2]|0)|0;l=T;d=vt;o[d>>2]=f;o[d+4>>2]=l;d=Fe;u=o[d>>2]|0;d=o[d+4>>2]|0;p=qe;p=Ss(u|0,d|0,o[p>>2]|0,o[p+4>>2]|0)|0;m=T;y=qe;o[y>>2]=p;o[y+4>>2]=m;y=ze;g=o[y>>2]|0;y=o[y+4>>2]|0;b=Ke;b=Ss(g|0,y|0,o[b>>2]|0,o[b+4>>2]|0)|0;v=T;w=Ke;o[w>>2]=b;o[w+4>>2]=v;w=Ge;_=o[w>>2]|0;w=o[w+4>>2]|0;A=He;A=Ss(_|0,w|0,o[A>>2]|0,o[A+4>>2]|0)|0;E=T;S=He;o[S>>2]=A;o[S+4>>2]=E;S=Ve;k=o[S>>2]|0;S=o[S+4>>2]|0;I=Qe;I=Ss(k|0,S|0,o[I>>2]|0,o[I+4>>2]|0)|0;x=T;C=Qe;o[C>>2]=I;o[C+4>>2]=x;C=We;R=o[C>>2]|0;C=o[C+4>>2]|0;O=Ye;O=Ss(R|0,C|0,o[O>>2]|0,o[O+4>>2]|0)|0;P=T;D=Ye;o[D>>2]=O;o[D+4>>2]=P;D=Xe;M=o[D>>2]|0;D=o[D+4>>2]|0;B=Je;B=Ss(M|0,D|0,o[B>>2]|0,o[B+4>>2]|0)|0;N=T;U=Je;o[U>>2]=B;o[U+4>>2]=N;U=Ze;j=o[U>>2]|0;U=o[U+4>>2]|0;L=$e;L=Ss(j|0,U|0,o[L>>2]|0,o[L+4>>2]|0)|0;F=T;z=$e;o[z>>2]=L;o[z+4>>2]=F;z=et;q=o[z>>2]|0;z=o[z+4>>2]|0;K=tt;K=Ss(q|0,z|0,o[K>>2]|0,o[K+4>>2]|0)|0;G=T;V=tt;o[V>>2]=K;o[V+4>>2]=G;V=nt;H=o[V>>2]|0;V=o[V+4>>2]|0;Q=rt;Q=Ss(H|0,V|0,o[Q>>2]|0,o[Q+4>>2]|0)|0;W=T;st=rt;o[st>>2]=Q;o[st+4>>2]=W;st=ft;ot=st+72|0;do{o[st>>2]=0;st=st+4|0}while((st|0)<(ot|0));Lt=Es(f|0,l|0,121665,0)|0;Bt=Tt;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=Es(p|0,m|0,121665,0)|0;Lt=lt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=Es(b|0,v|0,121665,0)|0;Bt=ut;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=Es(A|0,E|0,121665,0)|0;Lt=dt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=Es(I|0,x|0,121665,0)|0;Bt=ht;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=Es(O|0,P|0,121665,0)|0;Lt=pt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=Es(B|0,N|0,121665,0)|0;Bt=mt;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=Es(L|0,F|0,121665,0)|0;Lt=gt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=Es(K|0,G|0,121665,0)|0;Bt=yt;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=Es(Q|0,W|0,121665,0)|0;Lt=it;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Bo(Tt);Lt=Tt;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,t|0,n|0)|0;Bt=Tt;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=lt;Bt=ks(o[Bt>>2]|0,o[Bt+4>>2]|0,u|0,d|0)|0;Lt=lt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=ut;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,g|0,y|0)|0;Bt=ut;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=dt;Bt=ks(o[Bt>>2]|0,o[Bt+4>>2]|0,_|0,w|0)|0;Lt=dt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=ht;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,k|0,S|0)|0;Bt=ht;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=pt;Bt=ks(o[Bt>>2]|0,o[Bt+4>>2]|0,R|0,C|0)|0;Lt=pt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=mt;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,M|0,D|0)|0;Bt=mt;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=gt;Bt=ks(o[Bt>>2]|0,o[Bt+4>>2]|0,j|0,U|0)|0;Lt=gt;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Lt=yt;Lt=ks(o[Lt>>2]|0,o[Lt+4>>2]|0,q|0,z|0)|0;Bt=yt;o[Bt>>2]=Lt;o[Bt+4>>2]=T;Bt=it;Bt=ks(o[Bt>>2]|0,o[Bt+4>>2]|0,H|0,V|0)|0;Lt=it;o[Lt>>2]=Bt;o[Lt+4>>2]=T;Do(ee,vt,Tt);Lt=ee+144|0;Bt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee+64|0;Nt=jt;Ut=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;Ft=Es(Bt|0,Lt|0,18,0)|0;qt=T;Lt=ks(Ut|0,Nt|0,Bt|0,Lt|0)|0;qt=ks(Lt|0,T|0,Ft|0,qt|0)|0;o[jt>>2]=qt;o[jt+4>>2]=T;jt=ee+136|0;qt=o[jt>>2]|0;jt=o[jt+4>>2]|0;Ft=ee+56|0;Lt=Ft;Bt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;Nt=Es(qt|0,jt|0,18,0)|0;Ut=T;jt=ks(Bt|0,Lt|0,qt|0,jt|0)|0;Ut=ks(jt|0,T|0,Nt|0,Ut|0)|0;o[Ft>>2]=Ut;o[Ft+4>>2]=T;Ft=ee+128|0;Ut=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;Nt=ee+48|0;jt=Nt;qt=o[jt>>2]|0;jt=o[jt+4>>2]|0;Lt=Es(Ut|0,Ft|0,18,0)|0;Bt=T;Ft=ks(qt|0,jt|0,Ut|0,Ft|0)|0;Bt=ks(Ft|0,T|0,Lt|0,Bt|0)|0;o[Nt>>2]=Bt;o[Nt+4>>2]=T;Nt=ee+120|0;Bt=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;Lt=ee+40|0;Ft=Lt;Ut=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;jt=Es(Bt|0,Nt|0,18,0)|0;qt=T;Nt=ks(Ut|0,Ft|0,Bt|0,Nt|0)|0;qt=ks(Nt|0,T|0,jt|0,qt|0)|0;o[Lt>>2]=qt;o[Lt+4>>2]=T;Lt=ee+112|0;qt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee+32|0;Nt=jt;Bt=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;Ft=Es(qt|0,Lt|0,18,0)|0;Ut=T;Lt=ks(Bt|0,Nt|0,qt|0,Lt|0)|0;Ut=ks(Lt|0,T|0,Ft|0,Ut|0)|0;o[jt>>2]=Ut;o[jt+4>>2]=T;jt=ee+104|0;Ut=o[jt>>2]|0;jt=o[jt+4>>2]|0;Ft=ee+24|0;Lt=Ft;qt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;Nt=Es(Ut|0,jt|0,18,0)|0;Bt=T;jt=ks(qt|0,Lt|0,Ut|0,jt|0)|0;Bt=ks(jt|0,T|0,Nt|0,Bt|0)|0;o[Ft>>2]=Bt;o[Ft+4>>2]=T;Ft=ee+96|0;Bt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;Nt=ee+16|0;jt=Nt;Ut=o[jt>>2]|0;jt=o[jt+4>>2]|0;Lt=Es(Bt|0,Ft|0,18,0)|0;qt=T;Ft=ks(Ut|0,jt|0,Bt|0,Ft|0)|0;qt=ks(Ft|0,T|0,Lt|0,qt|0)|0;o[Nt>>2]=qt;o[Nt+4>>2]=T;Nt=ee+88|0;qt=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;Lt=ee+8|0;Ft=Lt;Bt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;jt=Es(qt|0,Nt|0,18,0)|0;Ut=T;Nt=ks(Bt|0,Ft|0,qt|0,Nt|0)|0;Ut=ks(Nt|0,T|0,jt|0,Ut|0)|0;o[Lt>>2]=Ut;o[Lt+4>>2]=T;Lt=ee+80|0;Ut=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee;Nt=o[jt>>2]|0;jt=o[jt+4>>2]|0;qt=Es(Ut|0,Lt|0,18,0)|0;Ft=T;Lt=ks(Nt|0,jt|0,Ut|0,Lt|0)|0;Ft=ks(Lt|0,T|0,qt|0,Ft|0)|0;qt=ee;o[qt>>2]=Ft;o[qt+4>>2]=T;Bo(ee);Mo(te,J,X,0);Mo(ee,ne,X,0);$=$+1|0;if(($|0)==8)break;else{Ut=Z;Lt=c;Ft=a;qt=i;u=Y<<1&255;Z=J;a=te;i=ee;c=ne;J=Ut;ne=Lt;te=Ft;ee=qt}}re=re+1|0;if((re|0)==32)break;else{d=J;t=Z;n=ne;f=ee;l=te}}st=It;t=te;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));st=xt;t=ee;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(bt,xt);No(St,bt);No(kt,St);Do(Tt,kt,xt);n=Tt+144|0;l=n;f=o[l>>2]|0;l=o[l+4>>2]|0;c=yt;a=o[c>>2]|0;c=o[c+4>>2]|0;i=Es(f|0,l|0,18,0)|0;u=T;l=ks(a|0,c|0,f|0,l|0)|0;u=ks(l|0,T|0,i|0,u|0)|0;i=yt;o[i>>2]=u;o[i+4>>2]=T;i=Tt+136|0;u=i;l=o[u>>2]|0;u=o[u+4>>2]|0;f=gt;c=o[f>>2]|0;f=o[f+4>>2]|0;a=Es(l|0,u|0,18,0)|0;d=T;u=ks(c|0,f|0,l|0,u|0)|0;d=ks(u|0,T|0,a|0,d|0)|0;a=gt;o[a>>2]=d;o[a+4>>2]=T;a=Tt+128|0;d=a;u=o[d>>2]|0;d=o[d+4>>2]|0;l=mt;f=o[l>>2]|0;l=o[l+4>>2]|0;c=Es(u|0,d|0,18,0)|0;ot=T;d=ks(f|0,l|0,u|0,d|0)|0;ot=ks(d|0,T|0,c|0,ot|0)|0;c=mt;o[c>>2]=ot;o[c+4>>2]=T;c=Tt+120|0;ot=c;d=o[ot>>2]|0;ot=o[ot+4>>2]|0;u=pt;l=o[u>>2]|0;u=o[u+4>>2]|0;f=Es(d|0,ot|0,18,0)|0;t=T;ot=ks(l|0,u|0,d|0,ot|0)|0;t=ks(ot|0,T|0,f|0,t|0)|0;f=pt;o[f>>2]=t;o[f+4>>2]=T;f=Tt+112|0;t=f;ot=o[t>>2]|0;t=o[t+4>>2]|0;d=ht;u=o[d>>2]|0;d=o[d+4>>2]|0;l=Es(ot|0,t|0,18,0)|0;st=T;t=ks(u|0,d|0,ot|0,t|0)|0;st=ks(t|0,T|0,l|0,st|0)|0;l=ht;o[l>>2]=st;o[l+4>>2]=T;l=Tt+104|0;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=dt;d=o[ot>>2]|0;ot=o[ot+4>>2]|0;u=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(d|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,u|0,Lt|0)|0;u=dt;o[u>>2]=Lt;o[u+4>>2]=T;u=Tt+96|0;Lt=u;st=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;t=ut;ot=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(st|0,Lt|0,18,0)|0;Ft=T;Lt=ks(ot|0,t|0,st|0,Lt|0)|0;Ft=ks(Lt|0,T|0,d|0,Ft|0)|0;d=ut;o[d>>2]=Ft;o[d+4>>2]=T;d=Tt+88|0;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=vt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Do(Tt,vt,bt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=Ct;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,Ct);Do(Tt,kt,vt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=_t;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,_t);No(St,kt);No(kt,St);No(St,kt);No(kt,St);Do(Tt,kt,_t);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=wt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,wt);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);Do(Tt,St,wt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=At;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,At);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);Do(Tt,St,At);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=kt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);Do(Tt,kt,wt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=Ot;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,Ot);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);Do(Tt,St,Ot);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=Et;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,Et);No(kt,St);t=2;do{No(St,kt);No(kt,St);t=t+2|0}while(t>>>0<100);Do(Tt,kt,Et);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=St;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);Do(Tt,St,Ot);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=kt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);Do(Tt,St,Ct);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=Rt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Do(Tt,It,Rt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=yt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=yt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=i;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=gt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=gt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=a;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=mt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=mt;o[st>>2]=t;o[st+4>>2]=T;st=c;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=pt;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=f;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=ht;o[ot>>2]=qt;o[ot+4>>2]=T;ot=l;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=dt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=T;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=ut;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Es(t|0,st|0,18,0)|0;Lt=T;st=ks(qt|0,ot|0,t|0,st|0)|0;Lt=ks(st|0,T|0,Ft|0,Lt|0)|0;Ft=ut;o[Ft>>2]=Lt;o[Ft+4>>2]=T;Ft=d;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=lt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,Ft|0,18,0)|0;qt=T;Ft=ks(t|0,st|0,Lt|0,Ft|0)|0;qt=ks(Ft|0,T|0,ot|0,qt|0)|0;ot=lt;o[ot>>2]=qt;o[ot+4>>2]=T;ot=ft;qt=o[ot>>2]|0;ot=o[ot+4>>2]|0;Ft=Tt;Lt=o[Ft>>2]|0;Ft=o[Ft+4>>2]|0;st=Es(qt|0,ot|0,18,0)|0;t=T;ot=ks(Lt|0,Ft|0,qt|0,ot|0)|0;t=ks(ot|0,T|0,st|0,t|0)|0;st=Tt;o[st>>2]=t;o[st+4>>2]=T;Bo(Tt);st=xt;t=Tt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Ot=o[xt>>2]|0;wt=Ot>>31&Ot;Mt=(wt>>26)+(o[xt+8>>2]|0)|0;qt=Mt>>31&Mt;Dt=(qt>>25)+(o[xt+16>>2]|0)|0;Ft=Dt>>31&Dt;_t=(Ft>>26)+(o[xt+24>>2]|0)|0;Bt=_t>>31&_t;Nt=(Bt>>25)+(o[xt+32>>2]|0)|0;It=Nt>>31&Nt;jt=(It>>26)+(o[xt+40>>2]|0)|0;Tt=jt>>31&jt;Ut=(Tt>>25)+(o[xt+48>>2]|0)|0;St=Ut>>31&Ut;Lt=(St>>26)+(o[xt+56>>2]|0)|0;kt=Lt>>31≪Rt=(kt>>25)+(o[xt+64>>2]|0)|0;At=Rt>>31&Rt;Ct=(At>>26)+(o[xt+72>>2]|0)|0;Et=Ct>>31&Ct;wt=((Et>>25)*19|0)+(Ot-(wt&-67108864))|0;Ot=wt>>31&wt;qt=(Ot>>26)+(Mt-(qt&-33554432))|0;Mt=qt>>31&qt;Ft=(Mt>>25)+(Dt-(Ft&-67108864))|0;Dt=Ft>>31&Ft;xt=(Dt>>26)+(_t-(Bt&-33554432))|0;Bt=xt>>31&xt;It=(Bt>>25)+(Nt-(It&-67108864))|0;Nt=It>>31&It;Tt=(Nt>>26)+(jt-(Tt&-33554432))|0;jt=Tt>>31&Tt;St=(jt>>25)+(Ut-(St&-67108864))|0;Ut=St>>31&St;kt=(Ut>>26)+(Lt-(kt&-33554432))|0;Lt=kt>>31&kt;At=(Lt>>25)+(Rt-(At&-67108864))|0;Rt=At>>31&At;Et=(Rt>>26)+(Ct-(Et&-33554432))|0;Ct=Et>>31&Et;Ot=((Ct>>25)*19|0)+(wt-(Ot&-67108864))|0;wt=Ot>>31&Ot;Ot=Ot-(wt&-67108864)|0;Mt=(Ot>>26)+((wt>>26)+(qt-(Mt&-33554432)))|0;Dt=(Mt>>25)+(Ft-(Dt&-67108864))|0;Bt=(Dt>>26)+(xt-(Bt&-33554432))|0;Nt=(Bt>>25)+(It-(Nt&-67108864))|0;jt=(Nt>>26)+(Tt-(jt&-33554432))|0;Ut=(jt>>25)+(St-(Ut&-67108864))|0;Lt=(Ut>>26)+(kt-(Lt&-33554432))|0;Rt=(Lt>>25)+(At-(Rt&-67108864))|0;Ct=(Rt>>26)+(Et-(Ct&-33554432))|0;Ot=((Ct>>25)*19|0)+(Ot&67108863)|0;Mt=(Ot>>26)+(Mt&33554431)|0;Dt=(Mt>>25)+(Dt&67108863)|0;Bt=(Dt>>26)+(Bt&33554431)|0;Nt=(Bt>>25)+(Nt&67108863)|0;jt=(Nt>>26)+(jt&33554431)|0;Ut=(jt>>25)+(Ut&67108863)|0;Lt=(Ut>>26)+(Lt&33554431)|0;Rt=(Lt>>25)+(Rt&67108863)|0;Ct=(Rt>>26)+(Ct&33554431)|0;Ot=((Ct>>25)*19|0)+(Ot&67108863)|0;Et=Mt<<16&(Mt|-33554432);Et=Et<<8&Et;Et=Et<<4&Et;Et=Et<<2&Et;At=Dt<<16&(Dt|-67108864);At=At<<8&At;At=At<<4&At;At=At<<2&At;kt=Bt<<16&(Bt|-33554432);kt=kt<<8&kt;kt=kt<<4&kt;kt=kt<<2&kt;St=Nt<<16&(Nt|-67108864);St=St<<8&St;St=St<<4&St;St=St<<2&St;Tt=jt<<16&(jt|-33554432);Tt=Tt<<8&Tt;Tt=Tt<<4&Tt;Tt=Tt<<2&Tt;It=Ut<<16&(Ut|-67108864);It=It<<8&It;It=It<<4&It;It=It<<2&It;xt=Lt<<16&(Lt|-33554432);xt=xt<<8&xt;xt=xt<<4&xt;xt=xt<<2&xt;Ft=Rt<<16&(Rt|-67108864);Ft=Ft<<8&Ft;Ft=Ft<<4&Ft;Ft=Ft<<2&Ft;qt=Ct<<16&(Ct|-33554432);qt=qt<<8&qt;qt=qt<<4&qt;qt=qt<<2&qt;qt=(At<<1&At&(Et<<1&Et)&(kt<<1&kt)&(St<<1&St)&(Tt<<1&Tt))>>31&~(Ot+-67108845>>31)&(It<<1&It)>>31&(xt<<1&xt)>>31&(Ft<<1&Ft)>>31&(qt<<1&qt)>>31;Ot=Ot-(qt&67108845)|0;Ft=qt&67108863;qt=qt&33554431;Mt=(Mt&33554431)-qt|0;Dt=(Dt&67108863)-Ft|0;Bt=(Bt&33554431)-qt|0;Nt=(Nt&67108863)-Ft|0;jt=(jt&33554431)-qt|0;Ut=(Ut&67108863)-Ft|0;Lt=(Lt&33554431)-qt|0;Ft=(Rt&67108863)-Ft|0;qt=(Ct&33554431)-qt|0;r[e>>0]=Ot;r[e+1>>0]=Ot>>>8;r[e+2>>0]=Ot>>>16;r[e+3>>0]=Ot>>>24|Mt<<2;r[e+4>>0]=Mt>>>6;r[e+5>>0]=Mt>>>14;r[e+6>>0]=Dt<<3|Mt>>>22;r[e+7>>0]=Dt>>>5;r[e+8>>0]=Dt>>>13;r[e+9>>0]=Bt<<5|Dt>>>21;r[e+10>>0]=Bt>>>3;r[e+11>>0]=Bt>>>11;r[e+12>>0]=Nt<<6|Bt>>>19;r[e+13>>0]=Nt>>>2;r[e+14>>0]=Nt>>>10;r[e+15>>0]=Nt>>>18;r[e+16>>0]=jt;r[e+17>>0]=jt>>>8;r[e+18>>0]=jt>>>16;r[e+19>>0]=jt>>>24|Ut<<1;r[e+20>>0]=Ut>>>7;r[e+21>>0]=Ut>>>15;r[e+22>>0]=Lt<<3|Ut>>>23;r[e+23>>0]=Lt>>>5;r[e+24>>0]=Lt>>>13;r[e+25>>0]=Ft<<4|Lt>>>21;r[e+26>>0]=Ft>>>4;r[e+27>>0]=Ft>>>12;r[e+28>>0]=qt<<6|Ft>>>20;r[e+29>>0]=qt>>>2;r[e+30>>0]=qt>>>10;r[e+31>>0]=qt>>>18;h=Pt;return 0}function Mo(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,c=0;n=0-n|0;a=e;i=o[a>>2]|0;s=t;s=(o[s>>2]^i)&n;i=s^i;a=e;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;s=s^o[t>>2];a=t;o[a>>2]=s;o[a+4>>2]=((s|0)<0)<<31>>31;a=e+8|0;s=a;i=o[s>>2]|0;r=t+8|0;c=r;c=(o[c>>2]^i)&n;i=c^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;c=c^o[r>>2];o[r>>2]=c;o[r+4>>2]=((c|0)<0)<<31>>31;r=e+16|0;c=r;a=o[c>>2]|0;i=t+16|0;s=i;s=(o[s>>2]^a)&n;a=s^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;s=s^o[i>>2];o[i>>2]=s;o[i+4>>2]=((s|0)<0)<<31>>31;i=e+24|0;s=i;r=o[s>>2]|0;a=t+24|0;c=a;c=(o[c>>2]^r)&n;r=c^r;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;c=c^o[a>>2];o[a>>2]=c;o[a+4>>2]=((c|0)<0)<<31>>31;a=e+32|0;c=a;i=o[c>>2]|0;r=t+32|0;s=r;s=(o[s>>2]^i)&n;i=s^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;s=s^o[r>>2];o[r>>2]=s;o[r+4>>2]=((s|0)<0)<<31>>31;r=e+40|0;s=r;a=o[s>>2]|0;i=t+40|0;c=i;c=(o[c>>2]^a)&n;a=c^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;c=c^o[i>>2];o[i>>2]=c;o[i+4>>2]=((c|0)<0)<<31>>31;i=e+48|0;c=i;r=o[c>>2]|0;a=t+48|0;s=a;s=(o[s>>2]^r)&n;r=s^r;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;s=s^o[a>>2];o[a>>2]=s;o[a+4>>2]=((s|0)<0)<<31>>31;a=e+56|0;s=a;i=o[s>>2]|0;r=t+56|0;c=r;c=(o[c>>2]^i)&n;i=c^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;c=c^o[r>>2];o[r>>2]=c;o[r+4>>2]=((c|0)<0)<<31>>31;r=e+64|0;c=r;a=o[c>>2]|0;i=t+64|0;s=i;s=(o[s>>2]^a)&n;a=s^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;s=s^o[i>>2];o[i>>2]=s;o[i+4>>2]=((s|0)<0)<<31>>31;i=e+72|0;s=i;e=o[s>>2]|0;r=t+72|0;t=r;n=(o[t>>2]^e)&n;e=n^e;t=i;o[t>>2]=e;o[t+4>>2]=((e|0)<0)<<31>>31;n=n^o[r>>2];o[r>>2]=n;o[r+4>>2]=((n|0)<0)<<31>>31;return}function Do(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0;a=Rs(0,o[t>>2]|0,32)|0;h=T;A=Rs(0,o[n>>2]|0,32)|0;h=Es(A|0,T|0,a|0,h|0)|0;a=e;o[a>>2]=h;o[a+4>>2]=T;a=Rs(0,o[t>>2]|0,32)|0;h=T;A=n+8|0;b=Rs(0,o[A>>2]|0,32)|0;h=Es(b|0,T|0,a|0,h|0)|0;a=T;b=t+8|0;y=Rs(0,o[b>>2]|0,32)|0;m=T;w=Rs(0,o[n>>2]|0,32)|0;m=Es(w|0,T|0,y|0,m|0)|0;a=ks(m|0,T|0,h|0,a|0)|0;h=e+8|0;o[h>>2]=a;o[h+4>>2]=T;h=Rs(0,o[b>>2]|0,31)|0;a=T;m=Rs(0,o[A>>2]|0,32)|0;a=Es(m|0,T|0,h|0,a|0)|0;h=T;m=Rs(0,o[t>>2]|0,32)|0;y=T;w=n+16|0;u=Rs(0,o[w>>2]|0,32)|0;y=Es(u|0,T|0,m|0,y|0)|0;h=ks(y|0,T|0,a|0,h|0)|0;a=T;y=t+16|0;m=Rs(0,o[y>>2]|0,32)|0;u=T;_=Rs(0,o[n>>2]|0,32)|0;u=Es(_|0,T|0,m|0,u|0)|0;u=ks(h|0,a|0,u|0,T|0)|0;a=e+16|0;o[a>>2]=u;o[a+4>>2]=T;a=Rs(0,o[b>>2]|0,32)|0;u=T;h=Rs(0,o[w>>2]|0,32)|0;u=Es(h|0,T|0,a|0,u|0)|0;a=T;h=Rs(0,o[y>>2]|0,32)|0;m=T;_=Rs(0,o[A>>2]|0,32)|0;m=Es(_|0,T|0,h|0,m|0)|0;a=ks(m|0,T|0,u|0,a|0)|0;u=T;m=Rs(0,o[t>>2]|0,32)|0;h=T;_=n+24|0;s=Rs(0,o[_>>2]|0,32)|0;h=Es(s|0,T|0,m|0,h|0)|0;h=ks(a|0,u|0,h|0,T|0)|0;u=T;a=t+24|0;m=Rs(0,o[a>>2]|0,32)|0;s=T;f=Rs(0,o[n>>2]|0,32)|0;s=Es(f|0,T|0,m|0,s|0)|0;s=ks(h|0,u|0,s|0,T|0)|0;u=e+24|0;o[u>>2]=s;o[u+4>>2]=T;u=Rs(0,o[y>>2]|0,32)|0;s=T;h=Rs(0,o[w>>2]|0,32)|0;s=Es(h|0,T|0,u|0,s|0)|0;u=T;h=Rs(0,o[b>>2]|0,32)|0;m=T;f=Rs(0,o[_>>2]|0,32)|0;m=Es(f|0,T|0,h|0,m|0)|0;h=T;f=Rs(0,o[a>>2]|0,32)|0;g=T;p=Rs(0,o[A>>2]|0,32)|0;g=Es(p|0,T|0,f|0,g|0)|0;h=ks(g|0,T|0,m|0,h|0)|0;h=Os(h|0,T|0,1)|0;u=ks(h|0,T|0,s|0,u|0)|0;s=T;h=Rs(0,o[t>>2]|0,32)|0;m=T;g=n+32|0;f=Rs(0,o[g>>2]|0,32)|0;m=Es(f|0,T|0,h|0,m|0)|0;m=ks(u|0,s|0,m|0,T|0)|0;s=T;u=t+32|0;h=Rs(0,o[u>>2]|0,32)|0;f=T;p=Rs(0,o[n>>2]|0,32)|0;f=Es(p|0,T|0,h|0,f|0)|0;f=ks(m|0,s|0,f|0,T|0)|0;s=e+32|0;o[s>>2]=f;o[s+4>>2]=T;s=Rs(0,o[y>>2]|0,32)|0;f=T;m=Rs(0,o[_>>2]|0,32)|0;f=Es(m|0,T|0,s|0,f|0)|0;s=T;m=Rs(0,o[a>>2]|0,32)|0;h=T;p=Rs(0,o[w>>2]|0,32)|0;h=Es(p|0,T|0,m|0,h|0)|0;s=ks(h|0,T|0,f|0,s|0)|0;f=T;h=Rs(0,o[b>>2]|0,32)|0;m=T;p=Rs(0,o[g>>2]|0,32)|0;m=Es(p|0,T|0,h|0,m|0)|0;m=ks(s|0,f|0,m|0,T|0)|0;f=T;s=Rs(0,o[u>>2]|0,32)|0;h=T;p=Rs(0,o[A>>2]|0,32)|0;h=Es(p|0,T|0,s|0,h|0)|0;h=ks(m|0,f|0,h|0,T|0)|0;f=T;m=Rs(0,o[t>>2]|0,32)|0;s=T;p=n+40|0;v=Rs(0,o[p>>2]|0,32)|0;s=Es(v|0,T|0,m|0,s|0)|0;s=ks(h|0,f|0,s|0,T|0)|0;f=T;h=t+40|0;m=Rs(0,o[h>>2]|0,32)|0;v=T;l=Rs(0,o[n>>2]|0,32)|0;v=Es(l|0,T|0,m|0,v|0)|0;v=ks(s|0,f|0,v|0,T|0)|0;f=e+40|0;o[f>>2]=v;o[f+4>>2]=T;f=Rs(0,o[a>>2]|0,32)|0;v=T;s=Rs(0,o[_>>2]|0,32)|0;v=Es(s|0,T|0,f|0,v|0)|0;f=T;s=Rs(0,o[b>>2]|0,32)|0;m=T;l=Rs(0,o[p>>2]|0,32)|0;m=Es(l|0,T|0,s|0,m|0)|0;f=ks(m|0,T|0,v|0,f|0)|0;v=T;m=Rs(0,o[h>>2]|0,32)|0;s=T;l=Rs(0,o[A>>2]|0,32)|0;s=Es(l|0,T|0,m|0,s|0)|0;s=ks(f|0,v|0,s|0,T|0)|0;s=Os(s|0,T|0,1)|0;v=T;f=Rs(0,o[y>>2]|0,32)|0;m=T;l=Rs(0,o[g>>2]|0,32)|0;m=Es(l|0,T|0,f|0,m|0)|0;m=ks(s|0,v|0,m|0,T|0)|0;v=T;s=Rs(0,o[u>>2]|0,32)|0;f=T;l=Rs(0,o[w>>2]|0,32)|0;f=Es(l|0,T|0,s|0,f|0)|0;f=ks(m|0,v|0,f|0,T|0)|0;v=T;m=Rs(0,o[t>>2]|0,32)|0;s=T;l=n+48|0;E=Rs(0,o[l>>2]|0,32)|0;s=Es(E|0,T|0,m|0,s|0)|0;s=ks(f|0,v|0,s|0,T|0)|0;v=T;f=t+48|0;m=Rs(0,o[f>>2]|0,32)|0;E=T;d=Rs(0,o[n>>2]|0,32)|0;E=Es(d|0,T|0,m|0,E|0)|0;E=ks(s|0,v|0,E|0,T|0)|0;v=e+48|0;o[v>>2]=E;o[v+4>>2]=T;v=Rs(0,o[a>>2]|0,32)|0;E=T;s=Rs(0,o[g>>2]|0,32)|0;E=Es(s|0,T|0,v|0,E|0)|0;v=T;s=Rs(0,o[u>>2]|0,32)|0;m=T;d=Rs(0,o[_>>2]|0,32)|0;m=Es(d|0,T|0,s|0,m|0)|0;v=ks(m|0,T|0,E|0,v|0)|0;E=T;m=Rs(0,o[y>>2]|0,32)|0;s=T;d=Rs(0,o[p>>2]|0,32)|0;s=Es(d|0,T|0,m|0,s|0)|0;s=ks(v|0,E|0,s|0,T|0)|0;E=T;v=Rs(0,o[h>>2]|0,32)|0;m=T;d=Rs(0,o[w>>2]|0,32)|0;m=Es(d|0,T|0,v|0,m|0)|0;m=ks(s|0,E|0,m|0,T|0)|0;E=T;s=Rs(0,o[b>>2]|0,32)|0;v=T;d=Rs(0,o[l>>2]|0,32)|0;v=Es(d|0,T|0,s|0,v|0)|0;v=ks(m|0,E|0,v|0,T|0)|0;E=T;m=Rs(0,o[f>>2]|0,32)|0;s=T;d=Rs(0,o[A>>2]|0,32)|0;s=Es(d|0,T|0,m|0,s|0)|0;s=ks(v|0,E|0,s|0,T|0)|0;E=T;v=Rs(0,o[t>>2]|0,32)|0;m=T;d=n+56|0;k=Rs(0,o[d>>2]|0,32)|0;m=Es(k|0,T|0,v|0,m|0)|0;m=ks(s|0,E|0,m|0,T|0)|0;E=T;s=t+56|0;v=Rs(0,o[s>>2]|0,32)|0;k=T;c=Rs(0,o[n>>2]|0,32)|0;k=Es(c|0,T|0,v|0,k|0)|0;k=ks(m|0,E|0,k|0,T|0)|0;E=e+56|0;o[E>>2]=k;o[E+4>>2]=T;E=Rs(0,o[u>>2]|0,32)|0;k=T;m=Rs(0,o[g>>2]|0,32)|0;k=Es(m|0,T|0,E|0,k|0)|0;E=T;m=Rs(0,o[a>>2]|0,32)|0;v=T;c=Rs(0,o[p>>2]|0,32)|0;v=Es(c|0,T|0,m|0,v|0)|0;m=T;c=Rs(0,o[h>>2]|0,32)|0;i=T;r=Rs(0,o[_>>2]|0,32)|0;i=Es(r|0,T|0,c|0,i|0)|0;m=ks(i|0,T|0,v|0,m|0)|0;v=T;i=Rs(0,o[b>>2]|0,32)|0;c=T;r=Rs(0,o[d>>2]|0,32)|0;c=Es(r|0,T|0,i|0,c|0)|0;c=ks(m|0,v|0,c|0,T|0)|0;v=T;m=Rs(0,o[s>>2]|0,32)|0;i=T;r=Rs(0,o[A>>2]|0,32)|0;i=Es(r|0,T|0,m|0,i|0)|0;i=ks(c|0,v|0,i|0,T|0)|0;i=Os(i|0,T|0,1)|0;E=ks(i|0,T|0,k|0,E|0)|0;k=T;i=Rs(0,o[y>>2]|0,32)|0;v=T;c=Rs(0,o[l>>2]|0,32)|0;v=Es(c|0,T|0,i|0,v|0)|0;v=ks(E|0,k|0,v|0,T|0)|0;k=T;E=Rs(0,o[f>>2]|0,32)|0;i=T;c=Rs(0,o[w>>2]|0,32)|0;i=Es(c|0,T|0,E|0,i|0)|0;i=ks(v|0,k|0,i|0,T|0)|0;k=T;v=Rs(0,o[t>>2]|0,32)|0;E=T;c=n+64|0;m=Rs(0,o[c>>2]|0,32)|0;E=Es(m|0,T|0,v|0,E|0)|0;E=ks(i|0,k|0,E|0,T|0)|0;k=T;i=t+64|0;v=Rs(0,o[i>>2]|0,32)|0;m=T;r=Rs(0,o[n>>2]|0,32)|0;m=Es(r|0,T|0,v|0,m|0)|0;m=ks(E|0,k|0,m|0,T|0)|0;k=e+64|0;o[k>>2]=m;o[k+4>>2]=T;k=Rs(0,o[u>>2]|0,32)|0;m=T;E=Rs(0,o[p>>2]|0,32)|0;m=Es(E|0,T|0,k|0,m|0)|0;k=T;E=Rs(0,o[h>>2]|0,32)|0;v=T;r=Rs(0,o[g>>2]|0,32)|0;v=Es(r|0,T|0,E|0,v|0)|0;k=ks(v|0,T|0,m|0,k|0)|0;m=T;v=Rs(0,o[a>>2]|0,32)|0;E=T;r=Rs(0,o[l>>2]|0,32)|0;E=Es(r|0,T|0,v|0,E|0)|0;E=ks(k|0,m|0,E|0,T|0)|0;m=T;k=Rs(0,o[f>>2]|0,32)|0;v=T;r=Rs(0,o[_>>2]|0,32)|0;v=Es(r|0,T|0,k|0,v|0)|0;v=ks(E|0,m|0,v|0,T|0)|0;m=T;E=Rs(0,o[y>>2]|0,32)|0;k=T;r=Rs(0,o[d>>2]|0,32)|0;k=Es(r|0,T|0,E|0,k|0)|0;k=ks(v|0,m|0,k|0,T|0)|0;m=T;v=Rs(0,o[s>>2]|0,32)|0;E=T;r=Rs(0,o[w>>2]|0,32)|0;E=Es(r|0,T|0,v|0,E|0)|0;E=ks(k|0,m|0,E|0,T|0)|0;m=T;k=Rs(0,o[b>>2]|0,32)|0;v=T;r=Rs(0,o[c>>2]|0,32)|0;v=Es(r|0,T|0,k|0,v|0)|0;v=ks(E|0,m|0,v|0,T|0)|0;m=T;E=Rs(0,o[i>>2]|0,32)|0;k=T;r=Rs(0,o[A>>2]|0,32)|0;k=Es(r|0,T|0,E|0,k|0)|0;k=ks(v|0,m|0,k|0,T|0)|0;m=T;v=Rs(0,o[t>>2]|0,32)|0;E=T;r=n+72|0;S=Rs(0,o[r>>2]|0,32)|0;E=Es(S|0,T|0,v|0,E|0)|0;E=ks(k|0,m|0,E|0,T|0)|0;m=T;t=t+72|0;k=Rs(0,o[t>>2]|0,32)|0;v=T;n=Rs(0,o[n>>2]|0,32)|0;v=Es(n|0,T|0,k|0,v|0)|0;v=ks(E|0,m|0,v|0,T|0)|0;n=e+72|0;o[n>>2]=v;o[n+4>>2]=T;n=Rs(0,o[h>>2]|0,32)|0;v=T;m=Rs(0,o[p>>2]|0,32)|0;v=Es(m|0,T|0,n|0,v|0)|0;n=T;m=Rs(0,o[a>>2]|0,32)|0;E=T;k=Rs(0,o[d>>2]|0,32)|0;E=Es(k|0,T|0,m|0,E|0)|0;n=ks(E|0,T|0,v|0,n|0)|0;v=T;E=Rs(0,o[s>>2]|0,32)|0;m=T;k=Rs(0,o[_>>2]|0,32)|0;m=Es(k|0,T|0,E|0,m|0)|0;m=ks(n|0,v|0,m|0,T|0)|0;v=T;n=Rs(0,o[b>>2]|0,32)|0;b=T;E=Rs(0,o[r>>2]|0,32)|0;b=Es(E|0,T|0,n|0,b|0)|0;b=ks(m|0,v|0,b|0,T|0)|0;v=T;m=Rs(0,o[t>>2]|0,32)|0;n=T;A=Rs(0,o[A>>2]|0,32)|0;n=Es(A|0,T|0,m|0,n|0)|0;n=ks(b|0,v|0,n|0,T|0)|0;n=Os(n|0,T|0,1)|0;v=T;b=Rs(0,o[u>>2]|0,32)|0;m=T;A=Rs(0,o[l>>2]|0,32)|0;m=Es(A|0,T|0,b|0,m|0)|0;m=ks(n|0,v|0,m|0,T|0)|0;v=T;n=Rs(0,o[f>>2]|0,32)|0;b=T;A=Rs(0,o[g>>2]|0,32)|0;b=Es(A|0,T|0,n|0,b|0)|0;b=ks(m|0,v|0,b|0,T|0)|0;v=T;m=Rs(0,o[y>>2]|0,32)|0;n=T;A=Rs(0,o[c>>2]|0,32)|0;n=Es(A|0,T|0,m|0,n|0)|0;n=ks(b|0,v|0,n|0,T|0)|0;v=T;b=Rs(0,o[i>>2]|0,32)|0;m=T;A=Rs(0,o[w>>2]|0,32)|0;m=Es(A|0,T|0,b|0,m|0)|0;m=ks(n|0,v|0,m|0,T|0)|0;v=e+80|0;o[v>>2]=m;o[v+4>>2]=T;v=Rs(0,o[h>>2]|0,32)|0;m=T;n=Rs(0,o[l>>2]|0,32)|0;m=Es(n|0,T|0,v|0,m|0)|0;v=T;n=Rs(0,o[f>>2]|0,32)|0;b=T;A=Rs(0,o[p>>2]|0,32)|0;b=Es(A|0,T|0,n|0,b|0)|0;v=ks(b|0,T|0,m|0,v|0)|0;m=T;b=Rs(0,o[u>>2]|0,32)|0;n=T;A=Rs(0,o[d>>2]|0,32)|0;n=Es(A|0,T|0,b|0,n|0)|0;n=ks(v|0,m|0,n|0,T|0)|0;m=T;v=Rs(0,o[s>>2]|0,32)|0;b=T;A=Rs(0,o[g>>2]|0,32)|0;b=Es(A|0,T|0,v|0,b|0)|0;b=ks(n|0,m|0,b|0,T|0)|0;m=T;n=Rs(0,o[a>>2]|0,32)|0;v=T;A=Rs(0,o[c>>2]|0,32)|0;v=Es(A|0,T|0,n|0,v|0)|0;v=ks(b|0,m|0,v|0,T|0)|0;m=T;b=Rs(0,o[i>>2]|0,32)|0;n=T;A=Rs(0,o[_>>2]|0,32)|0;n=Es(A|0,T|0,b|0,n|0)|0;n=ks(v|0,m|0,n|0,T|0)|0;m=T;y=Rs(0,o[y>>2]|0,32)|0;v=T;b=Rs(0,o[r>>2]|0,32)|0;v=Es(b|0,T|0,y|0,v|0)|0;v=ks(n|0,m|0,v|0,T|0)|0;m=T;n=Rs(0,o[t>>2]|0,32)|0;y=T;w=Rs(0,o[w>>2]|0,32)|0;y=Es(w|0,T|0,n|0,y|0)|0;y=ks(v|0,m|0,y|0,T|0)|0;m=e+88|0;o[m>>2]=y;o[m+4>>2]=T;m=Rs(0,o[f>>2]|0,32)|0;y=T;v=Rs(0,o[l>>2]|0,32)|0;y=Es(v|0,T|0,m|0,y|0)|0;m=T;v=Rs(0,o[h>>2]|0,32)|0;n=T;w=Rs(0,o[d>>2]|0,32)|0;n=Es(w|0,T|0,v|0,n|0)|0;v=T;w=Rs(0,o[s>>2]|0,32)|0;b=T;A=Rs(0,o[p>>2]|0,32)|0;b=Es(A|0,T|0,w|0,b|0)|0;v=ks(b|0,T|0,n|0,v|0)|0;n=T;a=Rs(0,o[a>>2]|0,32)|0;b=T;w=Rs(0,o[r>>2]|0,32)|0;b=Es(w|0,T|0,a|0,b|0)|0;b=ks(v|0,n|0,b|0,T|0)|0;n=T;v=Rs(0,o[t>>2]|0,32)|0;a=T;_=Rs(0,o[_>>2]|0,32)|0;a=Es(_|0,T|0,v|0,a|0)|0;a=ks(b|0,n|0,a|0,T|0)|0;a=Os(a|0,T|0,1)|0;m=ks(a|0,T|0,y|0,m|0)|0;y=T;a=Rs(0,o[u>>2]|0,32)|0;n=T;b=Rs(0,o[c>>2]|0,32)|0;n=Es(b|0,T|0,a|0,n|0)|0;n=ks(m|0,y|0,n|0,T|0)|0;y=T;m=Rs(0,o[i>>2]|0,32)|0;a=T;b=Rs(0,o[g>>2]|0,32)|0;a=Es(b|0,T|0,m|0,a|0)|0;a=ks(n|0,y|0,a|0,T|0)|0;y=e+96|0;o[y>>2]=a;o[y+4>>2]=T;y=Rs(0,o[f>>2]|0,32)|0;a=T;n=Rs(0,o[d>>2]|0,32)|0;a=Es(n|0,T|0,y|0,a|0)|0;y=T;n=Rs(0,o[s>>2]|0,32)|0;m=T;b=Rs(0,o[l>>2]|0,32)|0;m=Es(b|0,T|0,n|0,m|0)|0;y=ks(m|0,T|0,a|0,y|0)|0;a=T;m=Rs(0,o[h>>2]|0,32)|0;n=T;b=Rs(0,o[c>>2]|0,32)|0;n=Es(b|0,T|0,m|0,n|0)|0;n=ks(y|0,a|0,n|0,T|0)|0;a=T;y=Rs(0,o[i>>2]|0,32)|0;m=T;b=Rs(0,o[p>>2]|0,32)|0;m=Es(b|0,T|0,y|0,m|0)|0;m=ks(n|0,a|0,m|0,T|0)|0;a=T;u=Rs(0,o[u>>2]|0,32)|0;n=T;y=Rs(0,o[r>>2]|0,32)|0;n=Es(y|0,T|0,u|0,n|0)|0;n=ks(m|0,a|0,n|0,T|0)|0;a=T;m=Rs(0,o[t>>2]|0,32)|0;u=T;g=Rs(0,o[g>>2]|0,32)|0;u=Es(g|0,T|0,m|0,u|0)|0;u=ks(n|0,a|0,u|0,T|0)|0;a=e+104|0;o[a>>2]=u;o[a+4>>2]=T;a=Rs(0,o[s>>2]|0,32)|0;u=T;n=Rs(0,o[d>>2]|0,32)|0;u=Es(n|0,T|0,a|0,u|0)|0;a=T;n=Rs(0,o[h>>2]|0,32)|0;h=T;m=Rs(0,o[r>>2]|0,32)|0;h=Es(m|0,T|0,n|0,h|0)|0;a=ks(h|0,T|0,u|0,a|0)|0;u=T;h=Rs(0,o[t>>2]|0,32)|0;n=T;p=Rs(0,o[p>>2]|0,32)|0;n=Es(p|0,T|0,h|0,n|0)|0;n=ks(a|0,u|0,n|0,T|0)|0;n=Os(n|0,T|0,1)|0;u=T;a=Rs(0,o[f>>2]|0,32)|0;h=T;p=Rs(0,o[c>>2]|0,32)|0;h=Es(p|0,T|0,a|0,h|0)|0;h=ks(n|0,u|0,h|0,T|0)|0;u=T;n=Rs(0,o[i>>2]|0,32)|0;a=T;p=Rs(0,o[l>>2]|0,32)|0;a=Es(p|0,T|0,n|0,a|0)|0;a=ks(h|0,u|0,a|0,T|0)|0;u=e+112|0;o[u>>2]=a;o[u+4>>2]=T;u=Rs(0,o[s>>2]|0,32)|0;a=T;h=Rs(0,o[c>>2]|0,32)|0;a=Es(h|0,T|0,u|0,a|0)|0;u=T;h=Rs(0,o[i>>2]|0,32)|0;n=T;p=Rs(0,o[d>>2]|0,32)|0;n=Es(p|0,T|0,h|0,n|0)|0;u=ks(n|0,T|0,a|0,u|0)|0;a=T;n=Rs(0,o[f>>2]|0,32)|0;f=T;h=Rs(0,o[r>>2]|0,32)|0;f=Es(h|0,T|0,n|0,f|0)|0;f=ks(u|0,a|0,f|0,T|0)|0;a=T;u=Rs(0,o[t>>2]|0,32)|0;n=T;l=Rs(0,o[l>>2]|0,32)|0;n=Es(l|0,T|0,u|0,n|0)|0;n=ks(f|0,a|0,n|0,T|0)|0;a=e+120|0;o[a>>2]=n;o[a+4>>2]=T;a=Rs(0,o[i>>2]|0,32)|0;n=T;f=Rs(0,o[c>>2]|0,32)|0;n=Es(f|0,T|0,a|0,n|0)|0;a=T;s=Rs(0,o[s>>2]|0,32)|0;f=T;u=Rs(0,o[r>>2]|0,32)|0;f=Es(u|0,T|0,s|0,f|0)|0;s=T;u=Rs(0,o[t>>2]|0,32)|0;l=T;d=Rs(0,o[d>>2]|0,32)|0;l=Es(d|0,T|0,u|0,l|0)|0;s=ks(l|0,T|0,f|0,s|0)|0;s=Os(s|0,T|0,1)|0;a=ks(s|0,T|0,n|0,a|0)|0;n=e+128|0;o[n>>2]=a;o[n+4>>2]=T;i=Rs(0,o[i>>2]|0,32)|0;n=T;a=Rs(0,o[r>>2]|0,32)|0;n=Es(a|0,T|0,i|0,n|0)|0;i=T;a=Rs(0,o[t>>2]|0,32)|0;s=T;c=Rs(0,o[c>>2]|0,32)|0;s=Es(c|0,T|0,a|0,s|0)|0;i=ks(s|0,T|0,n|0,i|0)|0;n=e+136|0;o[n>>2]=i;o[n+4>>2]=T;n=Rs(0,o[t>>2]|0,31)|0;t=T;r=Rs(0,o[r>>2]|0,32)|0;t=Es(r|0,T|0,n|0,t|0)|0;n=e+144|0;o[n>>2]=t;o[n+4>>2]=T;return}function Bo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0;t=e+80|0;s=t;o[s>>2]=0;o[s+4>>2]=0;s=e;f=o[s>>2]|0;s=o[s+4>>2]|0;n=ks(f|0,s|0,s>>31>>>6|0,0)|0;a=T;i=Rs(n|0,a|0,26)|0;l=T;a=Ss(f|0,s|0,n&-67108864|0,a|0)|0;n=e;o[n>>2]=a;o[n+4>>2]=T;n=e+8|0;a=n;a=ks(i|0,l|0,o[a>>2]|0,o[a+4>>2]|0)|0;l=T;i=ks(a|0,l|0,l>>31>>>7|0,0)|0;s=T;f=Rs(i|0,s|0,25)|0;r=T;s=Ss(a|0,l|0,i&-33554432|0,s|0)|0;i=n;o[i>>2]=s;o[i+4>>2]=T;i=e+16|0;s=i;s=ks(f|0,r|0,o[s>>2]|0,o[s+4>>2]|0)|0;r=T;f=ks(s|0,r|0,r>>31>>>6|0,0)|0;l=T;a=Rs(f|0,l|0,26)|0;c=T;l=Ss(s|0,r|0,f&-67108864|0,l|0)|0;o[i>>2]=l;o[i+4>>2]=T;i=e+24|0;l=i;l=ks(a|0,c|0,o[l>>2]|0,o[l+4>>2]|0)|0;c=T;a=ks(l|0,c|0,c>>31>>>7|0,0)|0;f=T;r=Rs(a|0,f|0,25)|0;s=T;f=Ss(l|0,c|0,a&-33554432|0,f|0)|0;o[i>>2]=f;o[i+4>>2]=T;i=e+32|0;f=i;f=ks(r|0,s|0,o[f>>2]|0,o[f+4>>2]|0)|0;s=T;r=ks(f|0,s|0,s>>31>>>6|0,0)|0;a=T;c=Rs(r|0,a|0,26)|0;l=T;a=Ss(f|0,s|0,r&-67108864|0,a|0)|0;o[i>>2]=a;o[i+4>>2]=T;i=e+40|0;a=i;a=ks(c|0,l|0,o[a>>2]|0,o[a+4>>2]|0)|0;l=T;c=ks(a|0,l|0,l>>31>>>7|0,0)|0;r=T;s=Rs(c|0,r|0,25)|0;f=T;r=Ss(a|0,l|0,c&-33554432|0,r|0)|0;o[i>>2]=r;o[i+4>>2]=T;i=e+48|0;r=i;r=ks(s|0,f|0,o[r>>2]|0,o[r+4>>2]|0)|0;f=T;s=ks(r|0,f|0,f>>31>>>6|0,0)|0;c=T;l=Rs(s|0,c|0,26)|0;a=T;c=Ss(r|0,f|0,s&-67108864|0,c|0)|0;o[i>>2]=c;o[i+4>>2]=T;i=e+56|0;c=i;c=ks(l|0,a|0,o[c>>2]|0,o[c+4>>2]|0)|0;a=T;l=ks(c|0,a|0,a>>31>>>7|0,0)|0;s=T;f=Rs(l|0,s|0,25)|0;r=T;s=Ss(c|0,a|0,l&-33554432|0,s|0)|0;o[i>>2]=s;o[i+4>>2]=T;i=e+64|0;s=i;s=ks(f|0,r|0,o[s>>2]|0,o[s+4>>2]|0)|0;r=T;f=ks(s|0,r|0,r>>31>>>6|0,0)|0;l=T;a=Rs(f|0,l|0,26)|0;c=T;l=Ss(s|0,r|0,f&-67108864|0,l|0)|0;o[i>>2]=l;o[i+4>>2]=T;i=e+72|0;l=i;l=ks(a|0,c|0,o[l>>2]|0,o[l+4>>2]|0)|0;c=T;a=ks(l|0,c|0,c>>31>>>7|0,0)|0;f=T;r=Rs(a|0,f|0,25)|0;s=T;f=Ss(l|0,c|0,a&-33554432|0,f|0)|0;o[i>>2]=f;o[i+4>>2]=T;i=t;i=ks(r|0,s|0,o[i>>2]|0,o[i+4>>2]|0)|0;s=T;r=e;f=o[r>>2]|0;r=o[r+4>>2]|0;a=Es(i|0,s|0,18,0)|0;c=T;s=ks(f|0,r|0,i|0,s|0)|0;c=ks(s|0,T|0,a|0,c|0)|0;a=T;o[t>>2]=0;o[t+4>>2]=0;t=ks(c|0,a|0,a>>31>>>6|0,0)|0;s=T;i=Rs(t|0,s|0,26)|0;r=T;s=Ss(c|0,a|0,t&-67108864|0,s|0)|0;t=e;o[t>>2]=s;o[t+4>>2]=T;t=n;t=ks(i|0,r|0,o[t>>2]|0,o[t+4>>2]|0)|0;e=n;o[e>>2]=t;o[e+4>>2]=T;return}function No(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0,B=0,N=0,j=0,U=0,L=0,F=0,q=0,z=0,K=0,G=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,ce=0;r=h;h=h+160|0;n=r;q=o[t>>2]|0;y=Rs(0,q|0,32)|0;c=T;a=Es(y|0,c|0,y|0,c|0)|0;s=T;B=n;o[B>>2]=a;o[B+4>>2]=s;q=Rs(0,q|0,31)|0;B=T;H=o[t+8>>2]|0;E=Rs(0,H|0,32)|0;d=T;m=Es(E|0,d|0,q|0,B|0)|0;p=T;l=n+8|0;w=l;o[w>>2]=m;o[w+4>>2]=p;w=Es(E|0,d|0,E|0,d|0)|0;A=T;g=Rs(0,o[t+16>>2]|0,32)|0;u=T;b=Es(g|0,u|0,y|0,c|0)|0;A=ks(b|0,T|0,w|0,A|0)|0;A=Os(A|0,T|0,1)|0;w=T;b=n+16|0;I=b;o[I>>2]=A;o[I+4>>2]=w;I=Es(g|0,u|0,E|0,d|0)|0;x=T;ce=Rs(0,o[t+24>>2]|0,32)|0;ae=T;_=Es(ce|0,ae|0,y|0,c|0)|0;x=ks(_|0,T|0,I|0,x|0)|0;x=Os(x|0,T|0,1)|0;I=T;_=n+24|0;D=_;o[D>>2]=x;o[D+4>>2]=I;D=Es(g|0,u|0,g|0,u|0)|0;O=T;R=Rs(0,H|0,30)|0;R=Es(ce|0,ae|0,R|0,T|0)|0;O=ks(R|0,T|0,D|0,O|0)|0;D=T;R=Rs(0,o[t+32>>2]|0,32)|0;v=T;B=Es(R|0,v|0,q|0,B|0)|0;B=ks(O|0,D|0,B|0,T|0)|0;D=T;O=n+32|0;q=O;o[q>>2]=B;o[q+4>>2]=D;q=Es(ce|0,ae|0,g|0,u|0)|0;U=T;P=Es(R|0,v|0,E|0,d|0)|0;U=ks(P|0,T|0,q|0,U|0)|0;q=T;P=o[t+40>>2]|0;j=Rs(0,P|0,32)|0;M=T;z=Es(j|0,M|0,y|0,c|0)|0;z=ks(U|0,q|0,z|0,T|0)|0;z=Os(z|0,T|0,1)|0;q=T;U=n+40|0;$=U;o[$>>2]=z;o[$+4>>2]=q;$=Es(ce|0,ae|0,ce|0,ae|0)|0;te=T;K=Es(R|0,v|0,g|0,u|0)|0;te=ks(K|0,T|0,$|0,te|0)|0;$=T;K=Rs(0,o[t+48>>2]|0,32)|0;G=T;W=Es(K|0,G|0,y|0,c|0)|0;Y=T;H=Rs(0,H|0,31)|0;H=Es(j|0,M|0,H|0,T|0)|0;H=ks(te|0,$|0,H|0,T|0)|0;Y=ks(H|0,T|0,W|0,Y|0)|0;Y=Os(Y|0,T|0,1)|0;W=T;H=n+48|0;$=H;o[$>>2]=Y;o[$+4>>2]=W;$=Es(R|0,v|0,ce|0,ae|0)|0;te=T;Q=Es(j|0,M|0,g|0,u|0)|0;te=ks(Q|0,T|0,$|0,te|0)|0;$=T;Q=Es(K|0,G|0,E|0,d|0)|0;Q=ks(te|0,$|0,Q|0,T|0)|0;$=T;te=o[t+56>>2]|0;L=Rs(0,te|0,32)|0;F=T;ee=Es(L|0,F|0,y|0,c|0)|0;ee=ks(Q|0,$|0,ee|0,T|0)|0;ee=Os(ee|0,T|0,1)|0;$=T;Q=n+56|0;V=Q;o[V>>2]=ee;o[V+4>>2]=$;V=Es(R|0,v|0,R|0,v|0)|0;Z=T;i=Es(K|0,G|0,g|0,u|0)|0;oe=T;ne=o[t+64>>2]|0;J=Rs(0,ne|0,32)|0;X=T;ie=Es(J|0,X|0,y|0,c|0)|0;oe=ks(ie|0,T|0,i|0,oe|0)|0;i=T;ie=Es(L|0,F|0,E|0,d|0)|0;re=T;f=Es(j|0,M|0,ce|0,ae|0)|0;f=ks(ie|0,re|0,f|0,T|0)|0;f=Os(f|0,T|0,1)|0;f=ks(oe|0,i|0,f|0,T|0)|0;f=Os(f|0,T|0,1)|0;Z=ks(f|0,T|0,V|0,Z|0)|0;V=T;f=Es(j|0,M|0,R|0,v|0)|0;i=T;oe=Es(K|0,G|0,ce|0,ae|0)|0;i=ks(oe|0,T|0,f|0,i|0)|0;f=T;oe=Es(L|0,F|0,g|0,u|0)|0;oe=ks(i|0,f|0,oe|0,T|0)|0;f=T;i=Es(J|0,X|0,E|0,d|0)|0;i=ks(oe|0,f|0,i|0,T|0)|0;f=T;oe=o[t+72>>2]|0;re=Rs(0,oe|0,32)|0;ie=T;c=Es(re|0,ie|0,y|0,c|0)|0;c=ks(i|0,f|0,c|0,T|0)|0;c=Os(c|0,T|0,1)|0;t=n+72|0;o[t>>2]=c;o[t+4>>2]=T;t=Es(j|0,M|0,j|0,M|0)|0;c=T;f=Es(K|0,G|0,R|0,v|0)|0;c=ks(f|0,T|0,t|0,c|0)|0;t=T;f=Es(J|0,X|0,g|0,u|0)|0;f=ks(c|0,t|0,f|0,T|0)|0;t=T;c=Es(L|0,F|0,ce|0,ae|0)|0;i=T;d=Es(re|0,ie|0,E|0,d|0)|0;i=ks(d|0,T|0,c|0,i|0)|0;i=Os(i|0,T|0,1)|0;i=ks(f|0,t|0,i|0,T|0)|0;t=T;f=Os(i|0,t|0,1)|0;c=T;d=n+80|0;o[d>>2]=f;o[d+4>>2]=c;d=Es(K|0,G|0,j|0,M|0)|0;E=T;y=Es(L|0,F|0,R|0,v|0)|0;E=ks(y|0,T|0,d|0,E|0)|0;d=T;y=Es(J|0,X|0,ce|0,ae|0)|0;y=ks(E|0,d|0,y|0,T|0)|0;d=T;u=Es(re|0,ie|0,g|0,u|0)|0;u=ks(y|0,d|0,u|0,T|0)|0;d=T;y=Os(u|0,d|0,1)|0;g=T;E=n+88|0;o[E>>2]=y;o[E+4>>2]=g;E=Es(K|0,G|0,K|0,G|0)|0;k=T;C=Es(J|0,X|0,R|0,v|0)|0;S=T;se=Es(L|0,F|0,j|0,M|0)|0;N=T;ae=Es(re|0,ie|0,ce|0,ae|0)|0;N=ks(ae|0,T|0,se|0,N|0)|0;N=Os(N|0,T|0,1)|0;S=ks(N|0,T|0,C|0,S|0)|0;S=Os(S|0,T|0,1)|0;k=ks(S|0,T|0,E|0,k|0)|0;E=T;S=n+96|0;o[S>>2]=k;o[S+4>>2]=E;S=Es(L|0,F|0,K|0,G|0)|0;C=T;M=Es(J|0,X|0,j|0,M|0)|0;C=ks(M|0,T|0,S|0,C|0)|0;S=T;v=Es(re|0,ie|0,R|0,v|0)|0;v=ks(C|0,S|0,v|0,T|0)|0;S=T;C=Os(v|0,S|0,1)|0;R=T;M=n+104|0;o[M>>2]=C;o[M+4>>2]=R;M=Es(L|0,F|0,L|0,F|0)|0;j=T;N=Es(J|0,X|0,K|0,G|0)|0;j=ks(N|0,T|0,M|0,j|0)|0;M=T;P=Rs(0,P|0,31)|0;P=Es(re|0,ie|0,P|0,T|0)|0;P=ks(j|0,M|0,P|0,T|0)|0;M=T;j=Os(P|0,M|0,1)|0;N=T;se=n+112|0;o[se>>2]=j;o[se+4>>2]=N;F=Es(J|0,X|0,L|0,F|0)|0;L=T;G=Es(re|0,ie|0,K|0,G|0)|0;L=ks(G|0,T|0,F|0,L|0)|0;F=T;G=Os(L|0,F|0,1)|0;K=T;se=n+120|0;o[se>>2]=G;o[se+4>>2]=K;X=Es(J|0,X|0,J|0,X|0)|0;J=T;te=Rs(0,te|0,30)|0;te=Es(re|0,ie|0,te|0,T|0)|0;J=ks(te|0,T|0,X|0,J|0)|0;X=T;te=n+128|0;o[te>>2]=J;o[te+4>>2]=X;ne=Rs(0,ne|0,31)|0;ne=Es(re|0,ie|0,ne|0,T|0)|0;te=T;se=n+136|0;o[se>>2]=ne;o[se+4>>2]=te;oe=Rs(0,oe|0,31)|0;ie=Es(oe|0,T|0,re|0,ie|0)|0;re=T;oe=n+144|0;o[oe>>2]=ie;o[oe+4>>2]=re;re=Es(ie|0,re|0,19,0)|0;V=ks(re|0,T|0,Z|0,V|0)|0;Z=n+64|0;o[Z>>2]=V;o[Z+4>>2]=T;Z=Es(ne|0,te|0,18,0)|0;V=T;$=ks(ne|0,te|0,ee|0,$|0)|0;V=ks($|0,T|0,Z|0,V|0)|0;o[Q>>2]=V;o[Q+4>>2]=T;Q=Es(J|0,X|0,18,0)|0;V=T;W=ks(J|0,X|0,Y|0,W|0)|0;V=ks(W|0,T|0,Q|0,V|0)|0;o[H>>2]=V;o[H+4>>2]=T;F=Es(L|0,F|0,36,0)|0;L=T;q=ks(G|0,K|0,z|0,q|0)|0;L=ks(q|0,T|0,F|0,L|0)|0;o[U>>2]=L;o[U+4>>2]=T;M=Es(P|0,M|0,36,0)|0;P=T;D=ks(j|0,N|0,B|0,D|0)|0;P=ks(D|0,T|0,M|0,P|0)|0;o[O>>2]=P;o[O+4>>2]=T;S=Es(v|0,S|0,36,0)|0;v=T;I=ks(C|0,R|0,x|0,I|0)|0;v=ks(I|0,T|0,S|0,v|0)|0;o[_>>2]=v;o[_+4>>2]=T;_=Es(k|0,E|0,18,0)|0;v=T;w=ks(k|0,E|0,A|0,w|0)|0;v=ks(w|0,T|0,_|0,v|0)|0;o[b>>2]=v;o[b+4>>2]=T;d=Es(u|0,d|0,36,0)|0;u=T;p=ks(y|0,g|0,m|0,p|0)|0;u=ks(p|0,T|0,d|0,u|0)|0;o[l>>2]=u;o[l+4>>2]=T;t=Es(i|0,t|0,36,0)|0;i=T;s=ks(f|0,c|0,a|0,s|0)|0;i=ks(s|0,T|0,t|0,i|0)|0;t=n;o[t>>2]=i;o[t+4>>2]=T;Bo(n);t=n;n=e+80|0;do{o[e>>2]=o[t>>2];e=e+4|0;t=t+4|0}while((e|0)<(n|0));h=r;return}function jo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0;E=h;h=h+16|0;p=E;do{if(e>>>0<245){l=e>>>0<11?16:e+11&-8;e=l>>>3;d=o[9632]|0;n=d>>>e;if(n&3|0){t=(n&1^1)+e|0;e=38568+(t<<1<<2)|0;n=e+8|0;r=o[n>>2]|0;i=r+8|0;s=o[i>>2]|0;if((s|0)==(e|0))o[9632]=d&~(1<>2]=e;o[n>>2]=s}A=t<<3;o[r+4>>2]=A|3;A=r+A+4|0;o[A>>2]=o[A>>2]|1;A=i;h=E;return A|0}u=o[9634]|0;if(l>>>0>u>>>0){if(n|0){t=2<>>12&16;t=t>>>c;n=t>>>5&8;t=t>>>n;s=t>>>2&4;t=t>>>s;e=t>>>1&2;t=t>>>e;r=t>>>1&1;r=(n|c|s|e|r)+(t>>>r)|0;t=38568+(r<<1<<2)|0;e=t+8|0;s=o[e>>2]|0;c=s+8|0;n=o[c>>2]|0;if((n|0)==(t|0)){e=d&~(1<>2]=t;o[e>>2]=n;e=d}A=r<<3;a=A-l|0;o[s+4>>2]=l|3;i=s+l|0;o[i+4>>2]=a|1;o[s+A>>2]=a;if(u|0){r=o[9637]|0;t=u>>>3;n=38568+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=r;o[t+12>>2]=r;o[r+8>>2]=t;o[r+12>>2]=n}o[9634]=a;o[9637]=i;A=c;h=E;return A|0}s=o[9633]|0;if(s){n=(s&0-s)+-1|0;i=n>>>12&16;n=n>>>i;r=n>>>5&8;n=n>>>r;a=n>>>2&4;n=n>>>a;c=n>>>1&2;n=n>>>c;f=n>>>1&1;f=o[38832+((r|i|a|c|f)+(n>>>f)<<2)>>2]|0;n=f;c=f;f=(o[f+4>>2]&-8)-l|0;while(1){e=o[n+16>>2]|0;if(!e){e=o[n+20>>2]|0;if(!e)break}a=(o[e+4>>2]&-8)-l|0;i=a>>>0>>0;n=e;c=i?e:c;f=i?a:f}a=c+l|0;if(a>>>0>c>>>0){i=o[c+24>>2]|0;t=o[c+12>>2]|0;do{if((t|0)==(c|0)){e=c+20|0;t=o[e>>2]|0;if(!t){e=c+16|0;t=o[e>>2]|0;if(!t){n=0;break}}while(1){r=t+20|0;n=o[r>>2]|0;if(!n){r=t+16|0;n=o[r>>2]|0;if(!n)break;else{t=n;e=r}}else{t=n;e=r}}o[e>>2]=0;n=t}else{n=o[c+8>>2]|0;o[n+12>>2]=t;o[t+8>>2]=n;n=t}}while(0);do{if(i|0){t=o[c+28>>2]|0;e=38832+(t<<2)|0;if((c|0)==(o[e>>2]|0)){o[e>>2]=n;if(!n){o[9633]=s&~(1<>2]|0)==(c|0)?A:i+20|0)>>2]=n;if(!n)break}o[n+24>>2]=i;t=o[c+16>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}t=o[c+20>>2]|0;if(t|0){o[n+20>>2]=t;o[t+24>>2]=n}}}while(0);if(f>>>0<16){A=f+l|0;o[c+4>>2]=A|3;A=c+A+4|0;o[A>>2]=o[A>>2]|1}else{o[c+4>>2]=l|3;o[a+4>>2]=f|1;o[a+f>>2]=f;if(u|0){r=o[9637]|0;t=u>>>3;n=38568+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=r;o[t+12>>2]=r;o[r+8>>2]=t;o[r+12>>2]=n}o[9634]=f;o[9637]=a}A=c+8|0;h=E;return A|0}else d=l}else d=l}else d=l}else if(e>>>0<=4294967231){e=e+11|0;l=e&-8;r=o[9633]|0;if(r){i=0-l|0;e=e>>>8;if(e)if(l>>>0>16777215)f=31;else{d=(e+1048320|0)>>>16&8;y=e<>>16&4;y=y<>>16&2;f=14-(c|d|f)+(y<>>15)|0;f=l>>>(f+7|0)&1|f<<1}else f=0;n=o[38832+(f<<2)>>2]|0;e:do{if(!n){n=0;e=0;y=61}else{e=0;c=l<<((f|0)==31?0:25-(f>>>1)|0);s=0;while(1){a=(o[n+4>>2]&-8)-l|0;if(a>>>0>>0)if(!a){e=n;i=0;y=65;break e}else{e=n;i=a}y=o[n+20>>2]|0;n=o[n+16+(c>>>31<<2)>>2]|0;s=(y|0)==0|(y|0)==(n|0)?s:y;if(!n){n=s;y=61;break}else c=c<<1}}}while(0);if((y|0)==61){if((n|0)==0&(e|0)==0){e=2<>>12&16;d=d>>>a;s=d>>>5&8;d=d>>>s;c=d>>>2&4;d=d>>>c;f=d>>>1&2;d=d>>>f;n=d>>>1&1;e=0;n=o[38832+((s|a|c|f|n)+(d>>>n)<<2)>>2]|0}if(!n){c=e;a=i}else y=65}if((y|0)==65){s=n;while(1){d=(o[s+4>>2]&-8)-l|0;n=d>>>0>>0;i=n?d:i;e=n?s:e;n=o[s+16>>2]|0;if(!n)n=o[s+20>>2]|0;if(!n){c=e;a=i;break}else s=n}}if(((c|0)!=0?a>>>0<((o[9634]|0)-l|0)>>>0:0)?(u=c+l|0,u>>>0>c>>>0):0){s=o[c+24>>2]|0;t=o[c+12>>2]|0;do{if((t|0)==(c|0)){e=c+20|0;t=o[e>>2]|0;if(!t){e=c+16|0;t=o[e>>2]|0;if(!t){t=0;break}}while(1){i=t+20|0;n=o[i>>2]|0;if(!n){i=t+16|0;n=o[i>>2]|0;if(!n)break;else{t=n;e=i}}else{t=n;e=i}}o[e>>2]=0}else{A=o[c+8>>2]|0;o[A+12>>2]=t;o[t+8>>2]=A}}while(0);do{if(s){e=o[c+28>>2]|0;n=38832+(e<<2)|0;if((c|0)==(o[n>>2]|0)){o[n>>2]=t;if(!t){r=r&~(1<>2]|0)==(c|0)?A:s+20|0)>>2]=t;if(!t)break}o[t+24>>2]=s;e=o[c+16>>2]|0;if(e|0){o[t+16>>2]=e;o[e+24>>2]=t}e=o[c+20>>2]|0;if(e){o[t+20>>2]=e;o[e+24>>2]=t}}}while(0);e:do{if(a>>>0<16){A=a+l|0;o[c+4>>2]=A|3;A=c+A+4|0;o[A>>2]=o[A>>2]|1}else{o[c+4>>2]=l|3;o[u+4>>2]=a|1;o[u+a>>2]=a;t=a>>>3;if(a>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=u;o[t+12>>2]=u;o[u+8>>2]=t;o[u+12>>2]=n;break}t=a>>>8;if(t)if(a>>>0>16777215)n=31;else{w=(t+1048320|0)>>>16&8;A=t<>>16&4;A=A<<_;n=(A+245760|0)>>>16&2;n=14-(_|w|n)+(A<>>15)|0;n=a>>>(n+7|0)&1|n<<1}else n=0;t=38832+(n<<2)|0;o[u+28>>2]=n;e=u+16|0;o[e+4>>2]=0;o[e>>2]=0;e=1<>2]=u;o[u+24>>2]=t;o[u+12>>2]=u;o[u+8>>2]=u;break}t=o[t>>2]|0;t:do{if((o[t+4>>2]&-8|0)!=(a|0)){r=a<<((n|0)==31?0:25-(n>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(a|0)){t=e;break t}else{r=r<<1;t=e}}o[n>>2]=u;o[u+24>>2]=t;o[u+12>>2]=u;o[u+8>>2]=u;break e}}while(0);w=t+8|0;A=o[w>>2]|0;o[A+12>>2]=u;o[w>>2]=u;o[u+8>>2]=A;o[u+12>>2]=t;o[u+24>>2]=0}}while(0);A=c+8|0;h=E;return A|0}else d=l}else d=l}else d=-1}while(0);n=o[9634]|0;if(n>>>0>=d>>>0){t=n-d|0;e=o[9637]|0;if(t>>>0>15){A=e+d|0;o[9637]=A;o[9634]=t;o[A+4>>2]=t|1;o[e+n>>2]=t;o[e+4>>2]=d|3}else{o[9634]=0;o[9637]=0;o[e+4>>2]=n|3;A=e+n+4|0;o[A>>2]=o[A>>2]|1}A=e+8|0;h=E;return A|0}a=o[9635]|0;if(a>>>0>d>>>0){_=a-d|0;o[9635]=_;A=o[9638]|0;w=A+d|0;o[9638]=w;o[w+4>>2]=_|1;o[A+4>>2]=d|3;A=A+8|0;h=E;return A|0}if(!(o[9750]|0)){o[9752]=4096;o[9751]=4096;o[9753]=-1;o[9754]=-1;o[9755]=0;o[9743]=0;o[9750]=p&-16^1431655768;e=4096}else e=o[9752]|0;c=d+48|0;f=d+47|0;s=e+f|0;i=0-e|0;l=s&i;if(l>>>0<=d>>>0){A=0;h=E;return A|0}e=o[9742]|0;if(e|0?(u=o[9740]|0,p=u+l|0,p>>>0<=u>>>0|p>>>0>e>>>0):0){A=0;h=E;return A|0}e:do{if(!(o[9743]&4)){n=o[9638]|0;t:do{if(n){r=38976;while(1){p=o[r>>2]|0;if(p>>>0<=n>>>0?(p+(o[r+4>>2]|0)|0)>>>0>n>>>0:0)break;e=o[r+8>>2]|0;if(!e){y=128;break t}else r=e}t=s-a&i;if(t>>>0<2147483647){e=Bs(t|0)|0;if((e|0)==((o[r>>2]|0)+(o[r+4>>2]|0)|0)){if((e|0)!=(-1|0)){a=t;s=e;y=145;break e}}else{r=e;y=136}}else t=0}else y=128}while(0);do{if((y|0)==128){n=Bs(0)|0;if((n|0)!=(-1|0)?(t=n,m=o[9751]|0,g=m+-1|0,t=((g&t|0)==0?0:(g+t&0-m)-t|0)+l|0,m=o[9740]|0,g=t+m|0,t>>>0>d>>>0&t>>>0<2147483647):0){p=o[9742]|0;if(p|0?g>>>0<=m>>>0|g>>>0>p>>>0:0){t=0;break}e=Bs(t|0)|0;if((e|0)==(n|0)){a=t;s=n;y=145;break e}else{r=e;y=136}}else t=0}}while(0);do{if((y|0)==136){n=0-t|0;if(!(c>>>0>t>>>0&(t>>>0<2147483647&(r|0)!=(-1|0))))if((r|0)==(-1|0)){t=0;break}else{a=t;s=r;y=145;break e}e=o[9752]|0;e=f-t+e&0-e;if(e>>>0>=2147483647){a=t;s=r;y=145;break e}if((Bs(e|0)|0)==(-1|0)){Bs(n|0)|0;t=0;break}else{a=e+t|0;s=r;y=145;break e}}}while(0);o[9743]=o[9743]|4;y=143}else{t=0;y=143}}while(0);if(((y|0)==143?l>>>0<2147483647:0)?(_=Bs(l|0)|0,g=Bs(0)|0,b=g-_|0,v=b>>>0>(d+40|0)>>>0,!((_|0)==(-1|0)|v^1|_>>>0>>0&((_|0)!=(-1|0)&(g|0)!=(-1|0))^1)):0){a=v?b:t;s=_;y=145}if((y|0)==145){t=(o[9740]|0)+a|0;o[9740]=t;if(t>>>0>(o[9741]|0)>>>0)o[9741]=t;f=o[9638]|0;e:do{if(f){t=38976;while(1){e=o[t>>2]|0;n=o[t+4>>2]|0;if((s|0)==(e+n|0)){y=154;break}r=o[t+8>>2]|0;if(!r)break;else t=r}if(((y|0)==154?(w=t+4|0,(o[t+12>>2]&8|0)==0):0)?s>>>0>f>>>0&e>>>0<=f>>>0:0){o[w>>2]=n+a;A=(o[9635]|0)+a|0;_=f+8|0;_=(_&7|0)==0?0:0-_&7;w=f+_|0;_=A-_|0;o[9638]=w;o[9635]=_;o[w+4>>2]=_|1;o[f+A+4>>2]=40;o[9639]=o[9754];break}if(s>>>0<(o[9636]|0)>>>0)o[9636]=s;n=s+a|0;t=38976;while(1){if((o[t>>2]|0)==(n|0)){y=162;break}e=o[t+8>>2]|0;if(!e)break;else t=e}if((y|0)==162?(o[t+12>>2]&8|0)==0:0){o[t>>2]=s;u=t+4|0;o[u>>2]=(o[u>>2]|0)+a;u=s+8|0;u=s+((u&7|0)==0?0:0-u&7)|0;t=n+8|0;t=n+((t&7|0)==0?0:0-t&7)|0;l=u+d|0;c=t-u-d|0;o[u+4>>2]=d|3;t:do{if((f|0)==(t|0)){A=(o[9635]|0)+c|0;o[9635]=A;o[9638]=l;o[l+4>>2]=A|1}else{if((o[9637]|0)==(t|0)){A=(o[9634]|0)+c|0;o[9634]=A;o[9637]=l;o[l+4>>2]=A|1;o[l+A>>2]=A;break}e=o[t+4>>2]|0;if((e&3|0)==1){a=e&-8;r=e>>>3;n:do{if(e>>>0<256){e=o[t+8>>2]|0;n=o[t+12>>2]|0;if((n|0)==(e|0)){o[9632]=o[9632]&~(1<>2]=n;o[n+8>>2]=e;break}}else{s=o[t+24>>2]|0;e=o[t+12>>2]|0;do{if((e|0)==(t|0)){n=t+16|0;r=n+4|0;e=o[r>>2]|0;if(!e){e=o[n>>2]|0;if(!e){e=0;break}}else n=r;while(1){i=e+20|0;r=o[i>>2]|0;if(!r){i=e+16|0;r=o[i>>2]|0;if(!r)break;else{e=r;n=i}}else{e=r;n=i}}o[n>>2]=0}else{A=o[t+8>>2]|0;o[A+12>>2]=e;o[e+8>>2]=A}}while(0);if(!s)break;n=o[t+28>>2]|0;r=38832+(n<<2)|0;do{if((o[r>>2]|0)!=(t|0)){A=s+16|0;o[((o[A>>2]|0)==(t|0)?A:s+20|0)>>2]=e;if(!e)break n}else{o[r>>2]=e;if(e|0)break;o[9633]=o[9633]&~(1<>2]=s;n=t+16|0;r=o[n>>2]|0;if(r|0){o[e+16>>2]=r;o[r+24>>2]=e}n=o[n+4>>2]|0;if(!n)break;o[e+20>>2]=n;o[n+24>>2]=e}}while(0);t=t+a|0;i=a+c|0}else i=c;t=t+4|0;o[t>>2]=o[t>>2]&-2;o[l+4>>2]=i|1;o[l+i>>2]=i;t=i>>>3;if(i>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=l;o[t+12>>2]=l;o[l+8>>2]=t;o[l+12>>2]=n;break}t=i>>>8;do{if(!t)r=0;else{if(i>>>0>16777215){r=31;break}w=(t+1048320|0)>>>16&8;A=t<>>16&4;A=A<<_;r=(A+245760|0)>>>16&2;r=14-(_|w|r)+(A<>>15)|0;r=i>>>(r+7|0)&1|r<<1}}while(0);t=38832+(r<<2)|0;o[l+28>>2]=r;e=l+16|0;o[e+4>>2]=0;o[e>>2]=0;e=o[9633]|0;n=1<>2]=l;o[l+24>>2]=t;o[l+12>>2]=l;o[l+8>>2]=l;break}t=o[t>>2]|0;n:do{if((o[t+4>>2]&-8|0)!=(i|0)){r=i<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(i|0)){t=e;break n}else{r=r<<1;t=e}}o[n>>2]=l;o[l+24>>2]=t;o[l+12>>2]=l;o[l+8>>2]=l;break t}}while(0);w=t+8|0;A=o[w>>2]|0;o[A+12>>2]=l;o[w>>2]=l;o[l+8>>2]=A;o[l+12>>2]=t;o[l+24>>2]=0}}while(0);A=u+8|0;h=E;return A|0}t=38976;while(1){e=o[t>>2]|0;if(e>>>0<=f>>>0?(A=e+(o[t+4>>2]|0)|0,A>>>0>f>>>0):0)break;t=o[t+8>>2]|0}i=A+-47|0;e=i+8|0;e=i+((e&7|0)==0?0:0-e&7)|0;i=f+16|0;e=e>>>0>>0?f:e;t=e+8|0;n=a+-40|0;_=s+8|0;_=(_&7|0)==0?0:0-_&7;w=s+_|0;_=n-_|0;o[9638]=w;o[9635]=_;o[w+4>>2]=_|1;o[s+n+4>>2]=40;o[9639]=o[9754];n=e+4|0;o[n>>2]=27;o[t>>2]=o[9744];o[t+4>>2]=o[9745];o[t+8>>2]=o[9746];o[t+12>>2]=o[9747];o[9744]=s;o[9745]=a;o[9747]=0;o[9746]=t;t=e+24|0;do{w=t;t=t+4|0;o[t>>2]=7}while((w+8|0)>>>0>>0);if((e|0)!=(f|0)){s=e-f|0;o[n>>2]=o[n>>2]&-2;o[f+4>>2]=s|1;o[e>>2]=s;t=s>>>3;if(s>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=f;o[t+12>>2]=f;o[f+8>>2]=t;o[f+12>>2]=n;break}t=s>>>8;if(t)if(s>>>0>16777215)r=31;else{w=(t+1048320|0)>>>16&8;A=t<>>16&4;A=A<<_;r=(A+245760|0)>>>16&2;r=14-(_|w|r)+(A<>>15)|0;r=s>>>(r+7|0)&1|r<<1}else r=0;n=38832+(r<<2)|0;o[f+28>>2]=r;o[f+20>>2]=0;o[i>>2]=0;t=o[9633]|0;e=1<>2]=f;o[f+24>>2]=n;o[f+12>>2]=f;o[f+8>>2]=f;break}t=o[n>>2]|0;t:do{if((o[t+4>>2]&-8|0)!=(s|0)){r=s<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(s|0)){t=e;break t}else{r=r<<1;t=e}}o[n>>2]=f;o[f+24>>2]=t;o[f+12>>2]=f;o[f+8>>2]=f;break e}}while(0);w=t+8|0;A=o[w>>2]|0;o[A+12>>2]=f;o[w>>2]=f;o[f+8>>2]=A;o[f+12>>2]=t;o[f+24>>2]=0}}else{A=o[9636]|0;if((A|0)==0|s>>>0>>0)o[9636]=s;o[9744]=s;o[9745]=a;o[9747]=0;o[9641]=o[9750];o[9640]=-1;o[9645]=38568;o[9644]=38568;o[9647]=38576;o[9646]=38576;o[9649]=38584;o[9648]=38584;o[9651]=38592;o[9650]=38592;o[9653]=38600;o[9652]=38600;o[9655]=38608;o[9654]=38608;o[9657]=38616;o[9656]=38616;o[9659]=38624;o[9658]=38624;o[9661]=38632;o[9660]=38632;o[9663]=38640;o[9662]=38640;o[9665]=38648;o[9664]=38648;o[9667]=38656;o[9666]=38656;o[9669]=38664;o[9668]=38664;o[9671]=38672;o[9670]=38672;o[9673]=38680;o[9672]=38680;o[9675]=38688;o[9674]=38688;o[9677]=38696;o[9676]=38696;o[9679]=38704;o[9678]=38704;o[9681]=38712;o[9680]=38712;o[9683]=38720;o[9682]=38720;o[9685]=38728;o[9684]=38728;o[9687]=38736;o[9686]=38736;o[9689]=38744;o[9688]=38744;o[9691]=38752;o[9690]=38752;o[9693]=38760;o[9692]=38760;o[9695]=38768;o[9694]=38768;o[9697]=38776;o[9696]=38776;o[9699]=38784;o[9698]=38784;o[9701]=38792;o[9700]=38792;o[9703]=38800;o[9702]=38800;o[9705]=38808;o[9704]=38808;o[9707]=38816;o[9706]=38816;A=a+-40|0;_=s+8|0;_=(_&7|0)==0?0:0-_&7;w=s+_|0;_=A-_|0;o[9638]=w;o[9635]=_;o[w+4>>2]=_|1;o[s+A+4>>2]=40;o[9639]=o[9754]}}while(0);t=o[9635]|0;if(t>>>0>d>>>0){_=t-d|0;o[9635]=_;A=o[9638]|0;w=A+d|0;o[9638]=w;o[w+4>>2]=_|1;o[A+4>>2]=d|3;A=A+8|0;h=E;return A|0}}o[(Lo()|0)>>2]=12;A=0;h=E;return A|0}function Uo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,c=0,f=0;if(!e)return;n=e+-8|0;i=o[9636]|0;e=o[e+-4>>2]|0;t=e&-8;f=n+t|0;do{if(!(e&1)){r=o[n>>2]|0;if(!(e&3))return;a=n+(0-r)|0;s=r+t|0;if(a>>>0>>0)return;if((o[9637]|0)==(a|0)){e=f+4|0;t=o[e>>2]|0;if((t&3|0)!=3){c=a;t=s;break}o[9634]=s;o[e>>2]=t&-2;o[a+4>>2]=s|1;o[a+s>>2]=s;return}n=r>>>3;if(r>>>0<256){e=o[a+8>>2]|0;t=o[a+12>>2]|0;if((t|0)==(e|0)){o[9632]=o[9632]&~(1<>2]=t;o[t+8>>2]=e;c=a;t=s;break}}i=o[a+24>>2]|0;e=o[a+12>>2]|0;do{if((e|0)==(a|0)){t=a+16|0;n=t+4|0;e=o[n>>2]|0;if(!e){e=o[t>>2]|0;if(!e){e=0;break}}else t=n;while(1){r=e+20|0;n=o[r>>2]|0;if(!n){r=e+16|0;n=o[r>>2]|0;if(!n)break;else{e=n;t=r}}else{e=n;t=r}}o[t>>2]=0}else{c=o[a+8>>2]|0;o[c+12>>2]=e;o[e+8>>2]=c}}while(0);if(i){t=o[a+28>>2]|0;n=38832+(t<<2)|0;if((o[n>>2]|0)==(a|0)){o[n>>2]=e;if(!e){o[9633]=o[9633]&~(1<>2]|0)==(a|0)?c:i+20|0)>>2]=e;if(!e){c=a;t=s;break}}o[e+24>>2]=i;t=a+16|0;n=o[t>>2]|0;if(n|0){o[e+16>>2]=n;o[n+24>>2]=e}t=o[t+4>>2]|0;if(t){o[e+20>>2]=t;o[t+24>>2]=e;c=a;t=s}else{c=a;t=s}}else{c=a;t=s}}else{c=n;a=n}}while(0);if(a>>>0>=f>>>0)return;e=f+4|0;r=o[e>>2]|0;if(!(r&1))return;if(!(r&2)){if((o[9638]|0)==(f|0)){f=(o[9635]|0)+t|0;o[9635]=f;o[9638]=c;o[c+4>>2]=f|1;if((c|0)!=(o[9637]|0))return;o[9637]=0;o[9634]=0;return}if((o[9637]|0)==(f|0)){f=(o[9634]|0)+t|0;o[9634]=f;o[9637]=a;o[c+4>>2]=f|1;o[a+f>>2]=f;return}i=(r&-8)+t|0;n=r>>>3;do{if(r>>>0<256){t=o[f+8>>2]|0;e=o[f+12>>2]|0;if((e|0)==(t|0)){o[9632]=o[9632]&~(1<>2]=e;o[e+8>>2]=t;break}}else{s=o[f+24>>2]|0;e=o[f+12>>2]|0;do{if((e|0)==(f|0)){t=f+16|0;n=t+4|0;e=o[n>>2]|0;if(!e){e=o[t>>2]|0;if(!e){n=0;break}}else t=n;while(1){r=e+20|0;n=o[r>>2]|0;if(!n){r=e+16|0;n=o[r>>2]|0;if(!n)break;else{e=n;t=r}}else{e=n;t=r}}o[t>>2]=0;n=e}else{n=o[f+8>>2]|0;o[n+12>>2]=e;o[e+8>>2]=n;n=e}}while(0);if(s|0){e=o[f+28>>2]|0;t=38832+(e<<2)|0;if((o[t>>2]|0)==(f|0)){o[t>>2]=n;if(!n){o[9633]=o[9633]&~(1<>2]|0)==(f|0)?r:s+20|0)>>2]=n;if(!n)break}o[n+24>>2]=s;e=f+16|0;t=o[e>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}e=o[e+4>>2]|0;if(e|0){o[n+20>>2]=e;o[e+24>>2]=n}}}}while(0);o[c+4>>2]=i|1;o[a+i>>2]=i;if((c|0)==(o[9637]|0)){o[9634]=i;return}}else{o[e>>2]=r&-2;o[c+4>>2]=t|1;o[a+t>>2]=t;i=t}e=i>>>3;if(i>>>0<256){n=38568+(e<<1<<2)|0;t=o[9632]|0;e=1<>2]|0}o[t>>2]=c;o[e+12>>2]=c;o[c+8>>2]=e;o[c+12>>2]=n;return}e=i>>>8;if(e)if(i>>>0>16777215)r=31;else{a=(e+1048320|0)>>>16&8;f=e<>>16&4;f=f<>>16&2;r=14-(s|a|r)+(f<>>15)|0;r=i>>>(r+7|0)&1|r<<1}else r=0;e=38832+(r<<2)|0;o[c+28>>2]=r;o[c+20>>2]=0;o[c+16>>2]=0;t=o[9633]|0;n=1<>2]=c;o[c+24>>2]=e;o[c+12>>2]=c;o[c+8>>2]=c}else{e=o[e>>2]|0;t:do{if((o[e+4>>2]&-8|0)!=(i|0)){r=i<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=e+16+(r>>>31<<2)|0;t=o[n>>2]|0;if(!t)break;if((o[t+4>>2]&-8|0)==(i|0)){e=t;break t}else{r=r<<1;e=t}}o[n>>2]=c;o[c+24>>2]=e;o[c+12>>2]=c;o[c+8>>2]=c;break e}}while(0);a=e+8|0;f=o[a>>2]|0;o[f+12>>2]=c;o[a>>2]=c;o[c+8>>2]=f;o[c+12>>2]=e;o[c+24>>2]=0}}while(0);f=(o[9640]|0)+-1|0;o[9640]=f;if(f|0)return;e=38984;while(1){e=o[e>>2]|0;if(!e)break;else e=e+8|0}o[9640]=-1;return}function Lo(){return 39088}function Fo(e,t){e=e|0;t=t|0;var n=0,i=0;n=r[e>>0]|0;i=r[t>>0]|0;if(n<<24>>24==0?1:n<<24>>24!=i<<24>>24)e=i;else{do{e=e+1|0;t=t+1|0;n=r[e>>0]|0;i=r[t>>0]|0}while(!(n<<24>>24==0?1:n<<24>>24!=i<<24>>24));e=i}return(n&255)-(e&255)|0}function qo(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;e:do{if(!n)e=0;else{while(1){i=r[e>>0]|0;o=r[t>>0]|0;if(i<<24>>24!=o<<24>>24)break;n=n+-1|0;if(!n){e=0;break e}else{e=e+1|0;t=t+1|0}}e=(i&255)-(o&255)|0}}while(0);return e|0}function zo(e){e=e|0;return(e+-48|0)>>>0<10|0}function Ko(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0;d=h;h=h+128|0;s=d+124|0;u=d;a=u;c=37604;f=a+124|0;do{o[a>>2]=o[c>>2];a=a+4|0;c=c+4|0}while((a|0)<(f|0));if((t+-1|0)>>>0>2147483646)if(!t){e=s;t=1;l=4}else{o[(Lo()|0)>>2]=75;t=-1}else l=4;if((l|0)==4){l=-2-e|0;l=t>>>0>l>>>0?l:t;o[u+48>>2]=l;s=u+20|0;o[s>>2]=e;o[u+44>>2]=e;t=e+l|0;e=u+16|0;o[e>>2]=t;o[u+28>>2]=t;t=Go(u,n,i)|0;if(l){u=o[s>>2]|0;r[u+(((u|0)==(o[e>>2]|0))<<31>>31)>>0]=0}}h=d;return t|0}function Go(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0;b=h;h=h+224|0;d=b+208|0;m=b+160|0;g=b+80|0;y=b;i=m;s=i+40|0;do{o[i>>2]=0;i=i+4|0}while((i|0)<(s|0));o[d>>2]=o[n>>2];if((Ho(0,t,d,g,m)|0)<0)n=-1;else{if((o[e+76>>2]|0)>-1)p=Vo(e)|0;else p=0;n=o[e>>2]|0;u=n&32;if((r[e+74>>0]|0)<1)o[e>>2]=n&-33;i=e+48|0;if(!(o[i>>2]|0)){s=e+44|0;a=o[s>>2]|0;o[s>>2]=y;c=e+28|0;o[c>>2]=y;f=e+20|0;o[f>>2]=y;o[i>>2]=80;l=e+16|0;o[l>>2]=y+80;n=Ho(e,t,d,g,m)|0;if(a){Vs[o[e+36>>2]&1](e,0,0)|0;n=(o[f>>2]|0)==0?-1:n;o[s>>2]=a;o[i>>2]=0;o[l>>2]=0;o[c>>2]=0;o[f>>2]=0}}else n=Ho(e,t,d,g,m)|0;i=o[e>>2]|0;o[e>>2]=i|u;if(p|0)Qo(e);n=(i&32|0)==0?n:-1}h=b;return n|0}function Ho(e,t,n,s,a){e=e|0;t=t|0;n=n|0;s=s|0;a=a|0;var c=0,f=0,u=0,d=0,p=0,m=0,g=0,y=0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0,D=0;D=h;h=h+64|0;R=D+56|0;C=D+40|0;S=D;P=D+48|0;M=D+60|0;o[R>>2]=t;A=(e|0)!=0;E=S+40|0;k=E;S=S+39|0;I=P+4|0;c=0;t=0;u=0;e:while(1){do{do{if((t|0)>-1)if((c|0)>(2147483647-t|0)){o[(Lo()|0)>>2]=75;t=-1;break}else{t=c+t|0;break}}while(0);b=o[R>>2]|0;c=r[b>>0]|0;if(!(c<<24>>24)){w=94;break e}f=b;t:while(1){switch(c<<24>>24){case 37:{w=10;break t}case 0:{c=f;break t}default:{}}_=f+1|0;o[R>>2]=_;c=r[_>>0]|0;f=_}t:do{if((w|0)==10){w=0;c=f;do{if((r[f+1>>0]|0)!=37)break t;c=c+1|0;f=f+2|0;o[R>>2]=f}while((r[f>>0]|0)==37)}}while(0);c=c-b|0;if(A)Wo(e,b,c)}while((c|0)!=0);_=(zo(r[(o[R>>2]|0)+1>>0]|0)|0)==0;f=o[R>>2]|0;if(!_?(r[f+2>>0]|0)==36:0){g=(r[f+1>>0]|0)+-48|0;p=1;c=3}else{g=-1;p=u;c=1}c=f+c|0;o[R>>2]=c;f=r[c>>0]|0;u=(f<<24>>24)+-32|0;if(u>>>0>31|(1<>2]=c;f=r[c>>0]|0;u=(f<<24>>24)+-32|0}while(!(u>>>0>31|(1<>24==42){if((zo(r[c+1>>0]|0)|0)!=0?(O=o[R>>2]|0,(r[O+2>>0]|0)==36):0){c=O+1|0;o[a+((r[c>>0]|0)+-48<<2)>>2]=10;c=o[s+((r[c>>0]|0)+-48<<3)>>2]|0;u=1;f=O+3|0}else{if(p|0){t=-1;break}if(A){_=(o[n>>2]|0)+(4-1)&~(4-1);c=o[_>>2]|0;o[n>>2]=_+4}else c=0;u=0;f=(o[R>>2]|0)+1|0}o[R>>2]=f;_=(c|0)<0;v=_?0-c|0:c;d=_?d|8192:d;_=u}else{c=Yo(R)|0;if((c|0)<0){t=-1;break}v=c;_=p;f=o[R>>2]|0}do{if((r[f>>0]|0)==46){c=f+1|0;if((r[c>>0]|0)!=42){o[R>>2]=c;c=Yo(R)|0;f=o[R>>2]|0;break}if(zo(r[f+2>>0]|0)|0?(x=o[R>>2]|0,(r[x+3>>0]|0)==36):0){c=x+2|0;o[a+((r[c>>0]|0)+-48<<2)>>2]=10;c=o[s+((r[c>>0]|0)+-48<<3)>>2]|0;f=x+4|0;o[R>>2]=f;break}if(_|0){t=-1;break e}if(A){y=(o[n>>2]|0)+(4-1)&~(4-1);c=o[y>>2]|0;o[n>>2]=y+4}else c=0;f=(o[R>>2]|0)+2|0;o[R>>2]=f}else c=-1}while(0);y=0;while(1){if(((r[f>>0]|0)+-65|0)>>>0>57){t=-1;break e}u=f;f=f+1|0;o[R>>2]=f;u=r[(r[u>>0]|0)+-65+(35136+(y*58|0))>>0]|0;p=u&255;if((p+-1|0)>>>0>=8)break;else y=p}if(!(u<<24>>24)){t=-1;break}m=(g|0)>-1;do{if(u<<24>>24==19)if(m){t=-1;break e}else w=54;else{if(m){o[a+(g<<2)>>2]=p;m=s+(g<<3)|0;g=o[m+4>>2]|0;w=C;o[w>>2]=o[m>>2];o[w+4>>2]=g;w=54;break}if(!A){t=0;break e}Xo(C,p,n);f=o[R>>2]|0;w=55}}while(0);if((w|0)==54){w=0;if(A)w=55;else c=0}t:do{if((w|0)==55){w=0;f=r[f+-1>>0]|0;f=(y|0)!=0&(f&15|0)==3?f&-33:f;u=d&-65537;g=(d&8192|0)==0?d:u;n:do{switch(f|0){case 110:switch((y&255)<<24>>24){case 0:{o[o[C>>2]>>2]=t;c=0;break t}case 1:{o[o[C>>2]>>2]=t;c=0;break t}case 2:{c=o[C>>2]|0;o[c>>2]=t;o[c+4>>2]=((t|0)<0)<<31>>31;c=0;break t}case 3:{i[o[C>>2]>>1]=t;c=0;break t}case 4:{r[o[C>>2]>>0]=t;c=0;break t}case 6:{o[o[C>>2]>>2]=t;c=0;break t}case 7:{c=o[C>>2]|0;o[c>>2]=t;o[c+4>>2]=((t|0)<0)<<31>>31;c=0;break t}default:{c=0;break t}}case 112:{f=120;c=c>>>0>8?c:8;u=g|8;w=67;break}case 88:case 120:{u=g;w=67;break}case 111:{u=C;f=o[u>>2]|0;u=o[u+4>>2]|0;m=Zo(f,u,E)|0;w=k-m|0;d=0;p=38441;c=(g&8|0)==0|(c|0)>(w|0)?c:w+1|0;w=73;break}case 105:case 100:{u=C;f=o[u>>2]|0;u=o[u+4>>2]|0;if((u|0)<0){f=Ss(0,0,f|0,u|0)|0;u=T;d=C;o[d>>2]=f;o[d+4>>2]=u;d=1;p=38441;w=72;break n}else{d=(g&2049|0)!=0&1;p=(g&2048|0)==0?(g&1|0)==0?38441:38443:38442;w=72;break n}}case 117:{u=C;d=0;p=38441;f=o[u>>2]|0;u=o[u+4>>2]|0;w=72;break}case 99:{r[S>>0]=o[C>>2];y=S;d=0;p=38441;m=1;c=k;break}case 109:{f=es(o[(Lo()|0)>>2]|0)|0;w=77;break}case 115:{f=o[C>>2]|0;f=(f|0)==0?38451:f;w=77;break}case 67:{o[P>>2]=o[C>>2];o[I>>2]=0;o[C>>2]=P;p=-1;w=81;break}case 83:{if(!c){ns(e,32,v,0,g);c=0;w=91}else{p=c;w=81}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{c=is(e,+l[C>>3],v,c,g,f)|0;break t}default:{y=b;d=0;p=38441;m=c;u=g;c=k}}}while(0);n:do{if((w|0)==67){b=C;y=o[b>>2]|0;b=o[b+4>>2]|0;m=Jo(y,b,E,f&32)|0;p=(u&8|0)==0|(y|0)==0&(b|0)==0;d=p?0:2;p=p?38441:38441+(f>>>4)|0;g=u;f=y;u=b;w=73}else if((w|0)==72){m=$o(f,u,E)|0;w=73}else if((w|0)==77){w=0;b=ts(f,0,c)|0;g=(b|0)==0;y=f;d=0;p=38441;m=g?c:b-f|0;c=g?f+c|0:b}else if((w|0)==81){w=0;d=o[C>>2]|0;c=0;while(1){f=o[d>>2]|0;if(!f)break;f=rs(M,f)|0;u=(f|0)<0;if(u|f>>>0>(p-c|0)>>>0){w=85;break}c=f+c|0;if(p>>>0>c>>>0)d=d+4|0;else break}if((w|0)==85){w=0;if(u){t=-1;break e}}ns(e,32,v,c,g);if(!c){c=0;w=91}else{u=o[C>>2]|0;d=0;while(1){f=o[u>>2]|0;if(!f){w=91;break n}f=rs(M,f)|0;d=f+d|0;if((d|0)>(c|0)){w=91;break n}Wo(e,M,f);if(d>>>0>=c>>>0){w=91;break}else u=u+4|0}}}}while(0);if((w|0)==73){w=0;u=(f|0)!=0|(u|0)!=0;b=(c|0)!=0|u;u=k-m+((u^1)&1)|0;y=b?m:E;m=b?(c|0)>(u|0)?c:u:0;u=(c|0)>-1?g&-65537:g;c=k}else if((w|0)==91){w=0;ns(e,32,v,c,g^8192);c=(v|0)>(c|0)?v:c;break}g=c-y|0;m=(m|0)<(g|0)?g:m;b=m+d|0;c=(v|0)<(b|0)?b:v;ns(e,32,c,b,u);Wo(e,p,d);ns(e,48,c,b,u^65536);ns(e,48,m,g,0);Wo(e,y,g);ns(e,32,c,b,u^8192)}}while(0);u=_}e:do{if((w|0)==94)if(!e)if(!u)t=0;else{t=1;while(1){c=o[a+(t<<2)>>2]|0;if(!c)break;Xo(s+(t<<3)|0,c,n);t=t+1|0;if(t>>>0>=10){t=1;break e}}while(1){if(o[a+(t<<2)>>2]|0){t=-1;break e}t=t+1|0;if(t>>>0>=10){t=1;break}}}}while(0);h=D;return t|0}function Vo(e){e=e|0;return 0}function Qo(e){e=e|0;return}function Wo(e,t,n){e=e|0;t=t|0;n=n|0;if(!(o[e>>2]&32))ys(t,n,e)|0;return}function Yo(e){e=e|0;var t=0,n=0;if(!(zo(r[o[e>>2]>>0]|0)|0))t=0;else{t=0;do{n=o[e>>2]|0;t=(t*10|0)+-48+(r[n>>0]|0)|0;n=n+1|0;o[e>>2]=n}while((zo(r[n>>0]|0)|0)!=0)}return t|0}function Xo(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0.0;e:do{if(t>>>0<=20)do{switch(t|0){case 9:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;o[e>>2]=t;break e}case 10:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=((t|0)<0)<<31>>31;break e}case 11:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=0;break e}case 12:{r=(o[n>>2]|0)+(8-1)&~(8-1);t=r;i=o[t>>2]|0;t=o[t+4>>2]|0;o[n>>2]=r+8;r=e;o[r>>2]=i;o[r+4>>2]=t;break e}case 13:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&65535)<<16>>16;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 14:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&65535;o[i+4>>2]=0;break e}case 15:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&255)<<24>>24;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 16:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&255;o[i+4>>2]=0;break e}case 17:{i=(o[n>>2]|0)+(8-1)&~(8-1);s=+l[i>>3];o[n>>2]=i+8;l[e>>3]=s;break e}case 18:{i=(o[n>>2]|0)+(8-1)&~(8-1);s=+l[i>>3];o[n>>2]=i+8;l[e>>3]=s;break e}default:break e}}while(0)}while(0);return}function Jo(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=s[35600+(e&15)>>0]|0|i;e=Cs(e|0,t|0,4)|0;t=T}while(!((e|0)==0&(t|0)==0));return n|0}function Zo(e,t,n){e=e|0;t=t|0;n=n|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=e&7|48;e=Cs(e|0,t|0,3)|0;t=T}while(!((e|0)==0&(t|0)==0));return n|0}function $o(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0;if(t>>>0>0|(t|0)==0&e>>>0>4294967295){do{i=e;e=xs(e|0,t|0,10,0)|0;o=t;t=T;s=Es(e|0,t|0,10,0)|0;s=Ss(i|0,o|0,s|0,T|0)|0;n=n+-1|0;r[n>>0]=s&255|48}while(o>>>0>9|(o|0)==9&i>>>0>4294967295);t=e}else t=e;if(t)do{s=t;t=(t>>>0)/10|0;n=n+-1|0;r[n>>0]=s-(t*10|0)|48}while(s>>>0>=10);return n|0}function es(e){e=e|0;return ds(e,o[(us()|0)+188>>2]|0)|0}function ts(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0;a=t&255;i=(n|0)!=0;e:do{if(i&(e&3|0)!=0){s=t&255;while(1){if((r[e>>0]|0)==s<<24>>24){c=6;break e}e=e+1|0;n=n+-1|0;i=(n|0)!=0;if(!(i&(e&3|0)!=0)){c=5;break}}}else c=5}while(0);if((c|0)==5)if(i)c=6;else c=16;e:do{if((c|0)==6){s=t&255;if((r[e>>0]|0)==s<<24>>24)if(!n){c=16;break}else break;i=q(a,16843009)|0;t:do{if(n>>>0>3)while(1){a=o[e>>2]^i;if((a&-2139062144^-2139062144)&a+-16843009|0)break t;e=e+4|0;n=n+-4|0;if(n>>>0<=3){c=11;break}}else c=11}while(0);if((c|0)==11)if(!n){c=16;break}while(1){if((r[e>>0]|0)==s<<24>>24)break e;n=n+-1|0;if(!n){c=16;break}else e=e+1|0}}}while(0);if((c|0)==16)e=0;return e|0}function ns(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var o=0,s=0;s=h;h=h+256|0;o=s;if((n|0)>(r|0)&(i&73728|0)==0){i=n-r|0;Ds(o|0,t<<24>>24|0,(i>>>0<256?i:256)|0)|0;if(i>>>0>255){t=n-r|0;do{Wo(e,o,256);i=i+-256|0}while(i>>>0>255);i=t&255}Wo(e,o,i)}h=s;return}function rs(e,t){e=e|0;t=t|0;if(!e)e=0;else e=cs(e,t,0)|0;return e|0}function is(e,t,n,i,a,c){e=e|0;t=+t;n=n|0;i=i|0;a=a|0;c=c|0;var f=0,l=0,u=0,d=0,p=0,m=0,g=0,y=0.0,b=0,v=0,_=0,w=0,A=0,E=0,k=0,S=0,I=0,x=0,R=0,C=0,O=0,P=0,M=0;M=h;h=h+560|0;u=M+32|0;w=M+536|0;P=M;O=P;d=M+540|0;o[w>>2]=0;C=d+12|0;os(t)|0;f=T;if((f|0)<0){t=-t;os(t)|0;R=1;x=38458;f=T}else{R=(a&2049|0)!=0&1;x=(a&2048|0)==0?(a&1|0)==0?38459:38464:38461}do{if(0==0&(f&2146435072|0)==2146435072){P=(c&32|0)!=0;f=R+3|0;ns(e,32,n,f,a&-65537);Wo(e,x,R);Wo(e,t!=t|0.0!=0.0?P?38485:38489:P?38477:38481,3);ns(e,32,n,f,a^8192)}else{y=+ss(t,w)*2.0;f=y!=0.0;if(f)o[w>>2]=(o[w>>2]|0)+-1;_=c|32;if((_|0)==97){m=c&32;b=(m|0)==0?x:x+9|0;g=R|2;f=12-i|0;do{if(!(i>>>0>11|(f|0)==0)){t=8.0;do{f=f+-1|0;t=t*16.0}while((f|0)!=0);if((r[b>>0]|0)==45){t=-(t+(-y-t));break}else{t=y+t-t;break}}else t=y}while(0);l=o[w>>2]|0;f=(l|0)<0?0-l|0:l;f=$o(f,((f|0)<0)<<31>>31,C)|0;if((f|0)==(C|0)){f=d+11|0;r[f>>0]=48}r[f+-1>>0]=(l>>31&2)+43;p=f+-2|0;r[p>>0]=c+15;l=(i|0)<1;u=(a&8|0)==0;d=P;do{R=~~t;f=d+1|0;r[d>>0]=m|s[35600+R>>0];t=(t-+(R|0))*16.0;if((f-O|0)==1?!(u&(l&t==0.0)):0){r[f>>0]=46;d=d+2|0}else d=f}while(t!=0.0);if((i|0)!=0?(-2-O+d|0)<(i|0):0){l=C;u=p;f=i+2+l-u|0}else{l=C;u=p;f=l-O-u+d|0}C=f+g|0;ns(e,32,n,C,a);Wo(e,b,g);ns(e,48,n,C,a^65536);O=d-O|0;Wo(e,P,O);P=l-u|0;ns(e,48,f-(O+P)|0,0,0);Wo(e,p,P);ns(e,32,n,C,a^8192);f=C;break}l=(i|0)<0?6:i;if(f){f=(o[w>>2]|0)+-28|0;o[w>>2]=f;t=y*268435456.0}else{t=y;f=o[w>>2]|0}I=(f|0)<0?u:u+288|0;u=I;do{k=~~t>>>0;o[u>>2]=k;u=u+4|0;t=(t-+(k>>>0))*1.0e9}while(t!=0.0);k=I;if((f|0)>0){m=I;while(1){p=(f|0)<29?f:29;f=u+-4|0;if(f>>>0>=m>>>0){d=0;do{v=Os(o[f>>2]|0,0,p|0)|0;v=ks(v|0,T|0,d|0,0)|0;A=T;d=xs(v|0,A|0,1e9,0)|0;E=Es(d|0,T|0,1e9,0)|0;E=Ss(v|0,A|0,E|0,T|0)|0;o[f>>2]=E;f=f+-4|0}while(f>>>0>=m>>>0);if(d){E=m+-4|0;o[E>>2]=d;d=E}else d=m}else d=m;e:do{if(u>>>0>d>>>0){f=u;while(1){u=f+-4|0;if(o[u>>2]|0){u=f;break e}if(u>>>0>d>>>0)f=u;else break}}}while(0);f=(o[w>>2]|0)-p|0;o[w>>2]=f;if((f|0)>0)m=d;else break}}else d=I;if((f|0)<0){i=((l+25|0)/9|0)+1|0;v=(_|0)==102;do{b=0-f|0;b=(b|0)<9?b:9;if(d>>>0>>0){p=(1<>>b;g=0;f=d;do{E=o[f>>2]|0;o[f>>2]=(E>>>b)+g;g=q(E&p,m)|0;f=f+4|0}while(f>>>0>>0);d=(o[d>>2]|0)==0?d+4|0:d;if(g){o[u>>2]=g;u=u+4|0}}else d=(o[d>>2]|0)==0?d+4|0:d;f=v?I:d;u=(u-f>>2|0)>(i|0)?f+(i<<2)|0:u;f=(o[w>>2]|0)+b|0;o[w>>2]=f}while((f|0)<0);v=d}else v=d;if(v>>>0>>0){f=(k-v>>2)*9|0;p=o[v>>2]|0;if(p>>>0>=10){d=10;do{d=d*10|0;f=f+1|0}while(p>>>0>=d>>>0)}}else f=0;A=(_|0)==103;E=(l|0)!=0;d=l-((_|0)==102?0:f)+((E&A)<<31>>31)|0;if((d|0)<(((u-k>>2)*9|0)+-9|0)){w=d+9216|0;d=(w|0)/9|0;i=I+4+(d+-1024<<2)|0;d=w-(d*9|0)|0;if((d|0)<8){p=10;while(1){p=p*10|0;if((d|0)<7)d=d+1|0;else break}}else p=10;g=o[i>>2]|0;d=(g>>>0)/(p>>>0)|0;b=g-(q(d,p)|0)|0;m=(i+4|0)==(u|0);if(!(m&(b|0)==0)){y=(d&1|0)==0?9007199254740992.0:9007199254740994.0;w=p>>>1;t=b>>>0>>0?.5:m&(b|0)==(w|0)?1.0:1.5;if(R){w=(r[x>>0]|0)==45;t=w?-t:t;y=w?-y:y}d=g-b|0;o[i>>2]=d;if(y+t!=y){w=d+p|0;o[i>>2]=w;if(w>>>0>999999999){p=i;f=v;while(1){d=p+-4|0;o[p>>2]=0;if(d>>>0>>0){f=f+-4|0;o[f>>2]=0}w=(o[d>>2]|0)+1|0;o[d>>2]=w;if(w>>>0>999999999)p=d;else{p=f;break}}}else{d=i;p=v}f=(k-p>>2)*9|0;g=o[p>>2]|0;if(g>>>0>=10){m=10;do{m=m*10|0;f=f+1|0}while(g>>>0>=m>>>0)}}else{d=i;p=v}}else{d=i;p=v}w=d+4|0;u=u>>>0>w>>>0?w:u}else p=v;i=0-f|0;e:do{if(u>>>0>p>>>0)while(1){d=u+-4|0;if(o[d>>2]|0){w=u;_=1;break e}if(d>>>0>p>>>0)u=d;else{w=d;_=0;break}}else{w=u;_=0}}while(0);do{if(A){l=l+((E^1)&1)|0;if((l|0)>(f|0)&(f|0)>-5){m=c+-1|0;l=l+-1-f|0}else{m=c+-2|0;l=l+-1|0}if(!(a&8)){if(_?(S=o[w+-4>>2]|0,(S|0)!=0):0)if(!((S>>>0)%10|0)){d=0;u=10;do{u=u*10|0;d=d+1|0}while(!((S>>>0)%(u>>>0)|0|0))}else d=0;else d=9;u=((w-k>>2)*9|0)+-9|0;if((m|32|0)==102){c=u-d|0;c=(c|0)>0?c:0;l=(l|0)<(c|0)?l:c;break}else{c=u+f-d|0;c=(c|0)>0?c:0;l=(l|0)<(c|0)?l:c;break}}}else m=c}while(0);v=(l|0)!=0;g=v?1:a>>>3&1;b=(m|32|0)==102;if(b){A=0;f=(f|0)>0?f:0}else{u=(f|0)<0?i:f;u=$o(u,((u|0)<0)<<31>>31,C)|0;d=C;if((d-u|0)<2)do{u=u+-1|0;r[u>>0]=48}while((d-u|0)<2);r[u+-1>>0]=(f>>31&2)+43;f=u+-2|0;r[f>>0]=m;A=f;f=d-f|0}f=R+1+l+g+f|0;ns(e,32,n,f,a);Wo(e,x,R);ns(e,48,n,f,a^65536);if(b){g=p>>>0>I>>>0?I:p;b=P+9|0;p=b;m=P+8|0;d=g;do{u=$o(o[d>>2]|0,0,b)|0;if((d|0)==(g|0)){if((u|0)==(b|0)){r[m>>0]=48;u=m}}else if(u>>>0>P>>>0){Ds(P|0,48,u-O|0)|0;do{u=u+-1|0}while(u>>>0>P>>>0)}Wo(e,u,p-u|0);d=d+4|0}while(d>>>0<=I>>>0);if(!((a&8|0)==0&(v^1)))Wo(e,38493,1);if(d>>>0>>0&(l|0)>0)while(1){u=$o(o[d>>2]|0,0,b)|0;if(u>>>0>P>>>0){Ds(P|0,48,u-O|0)|0;do{u=u+-1|0}while(u>>>0>P>>>0)}Wo(e,u,(l|0)<9?l:9);d=d+4|0;u=l+-9|0;if(!(d>>>0>>0&(l|0)>9)){l=u;break}else l=u}ns(e,48,l+9|0,9,0)}else{w=_?w:p+4|0;if(p>>>0>>0&(l|0)>-1){i=P+9|0;v=(a&8|0)==0;_=i;g=0-O|0;b=P+8|0;m=p;do{u=$o(o[m>>2]|0,0,i)|0;if((u|0)==(i|0)){r[b>>0]=48;u=b}do{if((m|0)==(p|0)){d=u+1|0;Wo(e,u,1);if(v&(l|0)<1){u=d;break}Wo(e,38493,1);u=d}else{if(u>>>0<=P>>>0)break;Ds(P|0,48,u+g|0)|0;do{u=u+-1|0}while(u>>>0>P>>>0)}}while(0);O=_-u|0;Wo(e,u,(l|0)>(O|0)?O:l);l=l-O|0;m=m+4|0}while(m>>>0>>0&(l|0)>-1)}ns(e,48,l+18|0,18,0);Wo(e,A,C-A|0)}ns(e,32,n,f,a^8192)}}while(0);h=M;return((f|0)<(n|0)?n:f)|0}function os(e){e=+e;var t=0;l[d>>3]=e;t=o[d>>2]|0;T=o[d+4>>2]|0;return t|0}function ss(e,t){e=+e;t=t|0;return+ +as(e,t)}function as(e,t){e=+e;t=t|0;var n=0,r=0,i=0;l[d>>3]=e;n=o[d>>2]|0;r=o[d+4>>2]|0;i=Cs(n|0,r|0,52)|0;switch(i&2047){case 0:{if(e!=0.0){e=+as(e*18446744073709551616.0,t);n=(o[t>>2]|0)+-64|0}else n=0;o[t>>2]=n;break}case 2047:break;default:{o[t>>2]=(i&2047)+-1022;o[d>>2]=n;o[d+4>>2]=r&-2146435073|1071644672;e=+l[d>>3]}}return+e}function cs(e,t,n){e=e|0;t=t|0;n=n|0;do{if(e){if(t>>>0<128){r[e>>0]=t;e=1;break}if(!(o[o[(fs()|0)+188>>2]>>2]|0))if((t&-128|0)==57216){r[e>>0]=t;e=1;break}else{o[(Lo()|0)>>2]=84;e=-1;break}if(t>>>0<2048){r[e>>0]=t>>>6|192;r[e+1>>0]=t&63|128;e=2;break}if(t>>>0<55296|(t&-8192|0)==57344){r[e>>0]=t>>>12|224;r[e+1>>0]=t>>>6&63|128;r[e+2>>0]=t&63|128;e=3;break}if((t+-65536|0)>>>0<1048576){r[e>>0]=t>>>18|240;r[e+1>>0]=t>>>12&63|128;r[e+2>>0]=t>>>6&63|128;r[e+3>>0]=t&63|128;e=4;break}else{o[(Lo()|0)>>2]=84;e=-1;break}}else e=1}while(0);return e|0}function fs(){return ls()|0}function ls(){return 37728}function us(){return ls()|0}function ds(e,t){e=e|0;t=t|0;var n=0,i=0;n=0;while(1){if((s[35616+n>>0]|0)==(e|0)){i=4;break}n=n+1|0;if((n|0)==87){e=87;i=5;break}}if((i|0)==4)if(!n)n=35712;else{e=n;i=5}if((i|0)==5){n=35712;do{do{i=n;n=n+1|0}while((r[i>>0]|0)!=0);e=e+-1|0}while((e|0)!=0)}return hs(n,o[t+20>>2]|0)|0}function hs(e,t){e=e|0;t=t|0;return ps(e,t)|0}function ps(e,t){e=e|0;t=t|0;if(!t)t=0;else t=ms(o[t>>2]|0,o[t+4>>2]|0,e)|0;return((t|0)==0?e:t)|0}function ms(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0;p=(o[e>>2]|0)+1794895138|0;a=gs(o[e+8>>2]|0,p)|0;i=gs(o[e+12>>2]|0,p)|0;s=gs(o[e+16>>2]|0,p)|0;e:do{if((a>>>0>>2>>>0?(h=t-(a<<2)|0,i>>>0>>0&s>>>0>>0):0)?((s|i)&3|0)==0:0){h=i>>>2;d=s>>>2;u=0;while(1){f=a>>>1;l=u+f|0;c=l<<1;s=c+h|0;i=gs(o[e+(s<<2)>>2]|0,p)|0;s=gs(o[e+(s+1<<2)>>2]|0,p)|0;if(!(s>>>0>>0&i>>>0<(t-s|0)>>>0)){i=0;break e}if(r[e+(s+i)>>0]|0){i=0;break e}i=Fo(n,e+s|0)|0;if(!i)break;i=(i|0)<0;if((a|0)==1){i=0;break e}u=i?u:l;a=i?f:a-f|0}i=c+d|0;s=gs(o[e+(i<<2)>>2]|0,p)|0;i=gs(o[e+(i+1<<2)>>2]|0,p)|0;if(i>>>0>>0&s>>>0<(t-i|0)>>>0)i=(r[e+(i+s)>>0]|0)==0?e+i|0:0;else i=0}else i=0}while(0);return i|0}function gs(e,t){e=e|0;t=t|0;var n=0;n=Ps(e|0)|0;return((t|0)==0?e:n)|0}function ys(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0,f=0;i=n+16|0;s=o[i>>2]|0;if(!s)if(!(bs(n)|0)){s=o[i>>2]|0;a=5}else i=0;else a=5;e:do{if((a|0)==5){f=n+20|0;c=o[f>>2]|0;i=c;if((s-c|0)>>>0>>0){i=Vs[o[n+36>>2]&1](n,e,t)|0;break}t:do{if((r[n+75>>0]|0)<0|(t|0)==0){a=0;s=e}else{c=t;while(1){s=c+-1|0;if((r[e+s>>0]|0)==10)break;if(!s){a=0;s=e;break t}else c=s}i=Vs[o[n+36>>2]&1](n,e,c)|0;if(i>>>0>>0)break e;a=c;s=e+c|0;t=t-c|0;i=o[f>>2]|0}}while(0);Ms(i|0,s|0,t|0)|0;o[f>>2]=(o[f>>2]|0)+t;i=a+t|0}}while(0);return i|0}function bs(e){e=e|0;var t=0,n=0;t=e+74|0;n=r[t>>0]|0;r[t>>0]=n+255|n;t=o[e>>2]|0;if(!(t&8)){o[e+8>>2]=0;o[e+4>>2]=0;n=o[e+44>>2]|0;o[e+28>>2]=n;o[e+20>>2]=n;o[e+16>>2]=n+(o[e+48>>2]|0);e=0}else{o[e>>2]=t|32;e=-1}return e|0}function vs(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=e+20|0;i=o[r>>2]|0;e=(o[e+16>>2]|0)-i|0;e=e>>>0>n>>>0?n:e;Ms(i|0,t|0,e|0)|0;o[r>>2]=(o[r>>2]|0)+e;return n|0}function _s(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0;i=h;h=h+16|0;s=i;o[s>>2]=r;r=Ko(e,t,n,s)|0;h=i;return r|0}function ws(){}function As(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0;o=e&65535;i=t&65535;n=q(i,o)|0;r=e>>>16;e=(n>>>16)+(q(i,r)|0)|0;i=t>>>16;t=q(i,o)|0;return(T=(e>>>16)+(q(i,r)|0)+(((e&65535)+t|0)>>>16)|0,e+t<<16|n&65535|0)|0}function Es(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0;i=e;o=n;n=As(i,o)|0;e=T;return(T=(q(t,o)|0)+(q(r,i)|0)+e|e&0,n|0|0)|0}function ks(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;n=e+n>>>0;return(T=t+r+(n>>>0>>0|0)>>>0,n|0)|0}function Ss(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;r=t-r-(n>>>0>e>>>0|0)>>>0;return(T=r,e-n>>>0|0)|0}function Ts(e){e=e|0;return(e?31-(G(e^e-1)|0)|0:32)|0}function Is(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,c=0,f=0,l=0,u=0,d=0,h=0,p=0,m=0;u=e;f=t;l=f;a=n;h=r;c=h;if(!l){s=(i|0)!=0;if(!c){if(s){o[i>>2]=(u>>>0)%(a>>>0);o[i+4>>2]=0}h=0;i=(u>>>0)/(a>>>0)>>>0;return(T=h,i)|0}else{if(!s){h=0;i=0;return(T=h,i)|0}o[i>>2]=e|0;o[i+4>>2]=t&0;h=0;i=0;return(T=h,i)|0}}s=(c|0)==0;do{if(a){if(!s){s=(G(c|0)|0)-(G(l|0)|0)|0;if(s>>>0<=31){d=s+1|0;c=31-s|0;t=s-31>>31;a=d;e=u>>>(d>>>0)&t|l<>>(d>>>0)&t;s=0;c=u<>2]=e|0;o[i+4>>2]=f|t&0;h=0;i=0;return(T=h,i)|0}s=a-1|0;if(s&a|0){c=(G(a|0)|0)+33-(G(l|0)|0)|0;m=64-c|0;d=32-c|0;f=d>>31;p=c-32|0;t=p>>31;a=c;e=d-1>>31&l>>>(p>>>0)|(l<>>(c>>>0))&t;t=t&l>>>(c>>>0);s=u<>>(p>>>0))&f|u<>31;break}if(i|0){o[i>>2]=s&u;o[i+4>>2]=0}if((a|0)==1){p=f|t&0;m=e|0|0;return(T=p,m)|0}else{m=Ts(a|0)|0;p=l>>>(m>>>0)|0;m=l<<32-m|u>>>(m>>>0)|0;return(T=p,m)|0}}else{if(s){if(i|0){o[i>>2]=(l>>>0)%(a>>>0);o[i+4>>2]=0}p=0;m=(l>>>0)/(a>>>0)>>>0;return(T=p,m)|0}if(!u){if(i|0){o[i>>2]=0;o[i+4>>2]=(l>>>0)%(c>>>0)}p=0;m=(l>>>0)/(c>>>0)>>>0;return(T=p,m)|0}s=c-1|0;if(!(s&c)){if(i|0){o[i>>2]=e|0;o[i+4>>2]=s&l|t&0}p=0;m=l>>>((Ts(c|0)|0)>>>0);return(T=p,m)|0}s=(G(c|0)|0)-(G(l|0)|0)|0;if(s>>>0<=30){t=s+1|0;c=31-s|0;a=t;e=l<>>(t>>>0);t=l>>>(t>>>0);s=0;c=u<>2]=e|0;o[i+4>>2]=f|t&0;p=0;m=0;return(T=p,m)|0}}while(0);if(!a){l=c;f=0;c=0}else{d=n|0|0;u=h|r&0;l=ks(d|0,u|0,-1,-1)|0;n=T;f=c;c=0;do{r=f;f=s>>>31|f<<1;s=c|s<<1;r=e<<1|r>>>31|0;h=e>>>31|t<<1|0;Ss(l|0,n|0,r|0,h|0)|0;m=T;p=m>>31|((m|0)<0?-1:0)<<1;c=p&1;e=Ss(r|0,h|0,p&d|0,(((m|0)<0?-1:0)>>31|((m|0)<0?-1:0)<<1)&u|0)|0;t=T;a=a-1|0}while((a|0)!=0);l=f;f=0}a=0;if(i|0){o[i>>2]=e;o[i+4>>2]=t}p=(s|0)>>>31|(l|a)<<1|(a<<1|s>>>31)&0|f;m=(s<<1|0>>>31)&-2|c;return(T=p,m)|0}function xs(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return Is(e,t,n,r,0)|0}function Rs(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){T=t>>n;return e>>>n|(t&(1<>n-32|0}function Cs(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){T=t>>>n;return e>>>n|(t&(1<>>n-32|0}function Os(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){T=t<>>32-n;return e<>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function Ms(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0;if((n|0)>=8192)return te(e|0,t|0,n|0)|0;a=e|0;s=e+n|0;if((e&3)==(t&3)){while(e&3){if(!n)return a|0;r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0;n=n-1|0}n=s&-4|0;i=n-64|0;while((e|0)<=(i|0)){o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=o[t+8>>2];o[e+12>>2]=o[t+12>>2];o[e+16>>2]=o[t+16>>2];o[e+20>>2]=o[t+20>>2];o[e+24>>2]=o[t+24>>2];o[e+28>>2]=o[t+28>>2];o[e+32>>2]=o[t+32>>2];o[e+36>>2]=o[t+36>>2];o[e+40>>2]=o[t+40>>2];o[e+44>>2]=o[t+44>>2];o[e+48>>2]=o[t+48>>2];o[e+52>>2]=o[t+52>>2];o[e+56>>2]=o[t+56>>2];o[e+60>>2]=o[t+60>>2];e=e+64|0;t=t+64|0}while((e|0)<(n|0)){o[e>>2]=o[t>>2];e=e+4|0;t=t+4|0}}else{n=s-4|0;while((e|0)<(n|0)){r[e>>0]=r[t>>0]|0;r[e+1>>0]=r[t+1>>0]|0;r[e+2>>0]=r[t+2>>0]|0;r[e+3>>0]=r[t+3>>0]|0;e=e+4|0;t=t+4|0}}while((e|0)<(s|0)){r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0}return a|0}function Ds(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,c=0;a=e+n|0;t=t&255;if((n|0)>=67){while(e&3){r[e>>0]=t;e=e+1|0}i=a&-4|0;s=i-64|0;c=t|t<<8|t<<16|t<<24;while((e|0)<=(s|0)){o[e>>2]=c;o[e+4>>2]=c;o[e+8>>2]=c;o[e+12>>2]=c;o[e+16>>2]=c;o[e+20>>2]=c;o[e+24>>2]=c;o[e+28>>2]=c;o[e+32>>2]=c;o[e+36>>2]=c;o[e+40>>2]=c;o[e+44>>2]=c;o[e+48>>2]=c;o[e+52>>2]=c;o[e+56>>2]=c;o[e+60>>2]=c;e=e+64|0}while((e|0)<(i|0)){o[e>>2]=c;e=e+4|0}}while((e|0)<(a|0)){r[e>>0]=t;e=e+1|0}return a-n|0}function Bs(e){e=e|0;var t=0,n=0;n=o[u>>2]|0;t=n+e|0;if((e|0)>0&(t|0)<(n|0)|(t|0)<0){Y()|0;ee(12);return-1}o[u>>2]=t;if((t|0)>(W()|0)?(Q()|0)==0:0){o[u>>2]=n;ee(12);return-1}return n|0}function Ns(e,t){e=e|0;t=t|0;return Gs[e&1](t|0)|0}function js(e,t,n){e=e|0;t=t|0;n=n|0;return Hs[e&3](t|0,n|0)|0}function Us(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return Vs[e&1](t|0,n|0,r|0)|0}function Ls(e,t,n,r,i,o,s,a,c,f){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;s=s|0;a=a|0;c=c|0;f=f|0;return Qs[e&3](t|0,n|0,r|0,i|0,o|0,s|0,a|0,c|0,f|0)|0}function Fs(e){e=e|0;H(0);return 0}function qs(e,t){e=e|0;t=t|0;H(1);return 0}function zs(e,t,n){e=e|0;t=t|0;n=n|0;H(2);return 0}function Ks(e,t,n,r,i,o,s,a,c){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;s=s|0;a=a|0;c=c|0;H(3);return 0}var Gs=[Fs,an];var Hs=[qs,cn,ln,qs];var Vs=[zs,vs];var Qs=[Ks,fn,un,Ks];return{___muldi3:Es,___udivdi3:xs,_bitshift64Ashr:Rs,_bitshift64Lshr:Cs,_bitshift64Shl:Os,_free:Uo,_i64Add:ks,_i64Subtract:Ss,_llvm_bswap_i32:Ps,_malloc:jo,_memcpy:Ms,_memset:Ds,_olm_account:Nn,_olm_account_generate_one_time_keys:or,_olm_account_generate_one_time_keys_random_length:ir,_olm_account_identity_keys:Jn,_olm_account_identity_keys_length:Xn,_olm_account_last_error:Cn,_olm_account_mark_keys_as_published:nr,_olm_account_max_number_of_one_time_keys:rr,_olm_account_one_time_keys:tr,_olm_account_one_time_keys_length:er,_olm_account_sign:$n,_olm_account_signature_length:Zn,_olm_account_size:Mn,_olm_clear_account:Ln,_olm_clear_inbound_group_session:Pi,_olm_clear_outbound_group_session:co,_olm_clear_pk_decryption:Ft,_olm_clear_pk_encryption:Ct,_olm_clear_pk_signing:en,_olm_clear_sas:Xi,_olm_clear_session:Fn,_olm_clear_utility:qn,_olm_create_account:Yn,_olm_create_account_random_length:Wn,_olm_create_inbound_session:cr,_olm_create_inbound_session_from:fr,_olm_create_outbound_session:ar,_olm_create_outbound_session_random_length:sr,_olm_create_sas:Zi,_olm_create_sas_random_length:Ji,_olm_decrypt:Ar,_olm_decrypt_max_plaintext_length:wr,_olm_ed25519_verify:Sr,_olm_encrypt:_r,_olm_encrypt_message_length:vr,_olm_encrypt_message_type:yr,_olm_encrypt_random_length:br,_olm_error:Rn,_olm_export_inbound_group_session:Vi,_olm_export_inbound_group_session_length:Hi,_olm_get_library_version:xn,_olm_group_decrypt:Fi,_olm_group_decrypt_max_plaintext_length:Li,_olm_group_encrypt:yo,_olm_group_encrypt_message_length:go,_olm_import_inbound_group_session:Bi,_olm_inbound_group_session:Oi,_olm_inbound_group_session_first_known_index:Ki,_olm_inbound_group_session_id:zi,_olm_inbound_group_session_id_length:qi,_olm_inbound_group_session_is_verified:Gi,_olm_inbound_group_session_last_error:Mi,_olm_inbound_group_session_size:Ci,_olm_init_inbound_group_session:Di,_olm_init_outbound_group_session:mo,_olm_init_outbound_group_session_random_length:po,_olm_matches_inbound_session:pr,_olm_matches_inbound_session_from:mr,_olm_outbound_group_session:ao,_olm_outbound_group_session_id:vo,_olm_outbound_group_session_id_length:bo,_olm_outbound_group_session_key:Ao,_olm_outbound_group_session_key_length:wo,_olm_outbound_group_session_last_error:fo,_olm_outbound_group_session_message_index:_o,_olm_outbound_group_session_size:so,_olm_pickle_account:Gn,_olm_pickle_account_length:zn,_olm_pickle_inbound_group_session:ji,_olm_pickle_inbound_group_session_length:Ni,_olm_pickle_outbound_group_session:uo,_olm_pickle_outbound_group_session_length:lo,_olm_pickle_pk_decryption:Vt,_olm_pickle_pk_decryption_length:Ht,_olm_pickle_session:Hn,_olm_pickle_session_length:Kn,_olm_pk_ciphertext_length:Mt,_olm_pk_decrypt:Yt,_olm_pk_decryption:Lt,_olm_pk_decryption_last_error:jt,_olm_pk_decryption_size:Ut,_olm_pk_encrypt:Nt,_olm_pk_encrypt_random_length:Bt,_olm_pk_encryption:Rt,_olm_pk_encryption_last_error:It,_olm_pk_encryption_set_recipient_key:Ot,_olm_pk_encryption_size:xt,_olm_pk_generate_key:Gt,_olm_pk_generate_key_random_length:zt,_olm_pk_get_private_key:Xt,_olm_pk_key_from_private:Kt,_olm_pk_key_length:Pt,_olm_pk_mac_length:Dt,_olm_pk_max_plaintext_length:Wt,_olm_pk_private_key_length:qt,_olm_pk_sign:sn,_olm_pk_signature_length:on,_olm_pk_signing:Zt,_olm_pk_signing_key_from_seed:rn,_olm_pk_signing_last_error:$t,_olm_pk_signing_public_key_length:nn,_olm_pk_signing_seed_length:tn,_olm_pk_signing_size:Jt,_olm_remove_one_time_keys:gr,_olm_sas:Yi,_olm_sas_calculate_mac:io,_olm_sas_calculate_mac_long_kdf:oo,_olm_sas_generate_bytes:no,_olm_sas_get_pubkey:eo,_olm_sas_last_error:Qi,_olm_sas_mac_length:ro,_olm_sas_pubkey_length:$i,_olm_sas_set_their_key:to,_olm_sas_size:Wi,_olm_session:jn,_olm_session_describe:hr,_olm_session_has_received_message:dr,_olm_session_id:ur,_olm_session_id_length:lr,_olm_session_last_error:On,_olm_session_size:Dn,_olm_sha256:kr,_olm_sha256_length:Er,_olm_unpickle_account:Vn,_olm_unpickle_inbound_group_session:Ui,_olm_unpickle_outbound_group_session:ho,_olm_unpickle_pk_decryption:Qt,_olm_unpickle_session:Qn,_olm_utility:Un,_olm_utility_last_error:Pn,_olm_utility_size:Bn,_sbrk:Bs,dynCall_ii:Ns,dynCall_iii:js,dynCall_iiii:Us,dynCall_iiiiiiiiii:Ls,establishStackSpace:se,getTempRet0:fe,runPostSets:ws,setTempRet0:ce,setThrew:ae,stackAlloc:re,stackRestore:oe,stackSave:ie}}(u.f,u.g,D);u.___muldi3=Ee.___muldi3,u.___udivdi3=Ee.___udivdi3,u._bitshift64Ashr=Ee._bitshift64Ashr,u._bitshift64Lshr=Ee._bitshift64Lshr,u._bitshift64Shl=Ee._bitshift64Shl,u._free=Ee._free,u._i64Add=Ee._i64Add,u._i64Subtract=Ee._i64Subtract,u._llvm_bswap_i32=Ee._llvm_bswap_i32;var ke=u._malloc=Ee._malloc;u._memcpy=Ee._memcpy,u._memset=Ee._memset,u._olm_account=Ee._olm_account,u._olm_account_generate_one_time_keys=Ee._olm_account_generate_one_time_keys,u._olm_account_generate_one_time_keys_random_length=Ee._olm_account_generate_one_time_keys_random_length,u._olm_account_identity_keys=Ee._olm_account_identity_keys,u._olm_account_identity_keys_length=Ee._olm_account_identity_keys_length,u._olm_account_last_error=Ee._olm_account_last_error,u._olm_account_mark_keys_as_published=Ee._olm_account_mark_keys_as_published,u._olm_account_max_number_of_one_time_keys=Ee._olm_account_max_number_of_one_time_keys,u._olm_account_one_time_keys=Ee._olm_account_one_time_keys,u._olm_account_one_time_keys_length=Ee._olm_account_one_time_keys_length,u._olm_account_sign=Ee._olm_account_sign,u._olm_account_signature_length=Ee._olm_account_signature_length,u._olm_account_size=Ee._olm_account_size,u._olm_clear_account=Ee._olm_clear_account,u._olm_clear_inbound_group_session=Ee._olm_clear_inbound_group_session,u._olm_clear_outbound_group_session=Ee._olm_clear_outbound_group_session,u._olm_clear_pk_decryption=Ee._olm_clear_pk_decryption,u._olm_clear_pk_encryption=Ee._olm_clear_pk_encryption,u._olm_clear_pk_signing=Ee._olm_clear_pk_signing,u._olm_clear_sas=Ee._olm_clear_sas,u._olm_clear_session=Ee._olm_clear_session,u._olm_clear_utility=Ee._olm_clear_utility,u._olm_create_account=Ee._olm_create_account,u._olm_create_account_random_length=Ee._olm_create_account_random_length,u._olm_create_inbound_session=Ee._olm_create_inbound_session,u._olm_create_inbound_session_from=Ee._olm_create_inbound_session_from,u._olm_create_outbound_session=Ee._olm_create_outbound_session,u._olm_create_outbound_session_random_length=Ee._olm_create_outbound_session_random_length,u._olm_create_sas=Ee._olm_create_sas,u._olm_create_sas_random_length=Ee._olm_create_sas_random_length,u._olm_decrypt=Ee._olm_decrypt,u._olm_decrypt_max_plaintext_length=Ee._olm_decrypt_max_plaintext_length,u._olm_ed25519_verify=Ee._olm_ed25519_verify,u._olm_encrypt=Ee._olm_encrypt,u._olm_encrypt_message_length=Ee._olm_encrypt_message_length,u._olm_encrypt_message_type=Ee._olm_encrypt_message_type,u._olm_encrypt_random_length=Ee._olm_encrypt_random_length,u._olm_error=Ee._olm_error,u._olm_export_inbound_group_session=Ee._olm_export_inbound_group_session,u._olm_export_inbound_group_session_length=Ee._olm_export_inbound_group_session_length,u._olm_get_library_version=Ee._olm_get_library_version,u._olm_group_decrypt=Ee._olm_group_decrypt,u._olm_group_decrypt_max_plaintext_length=Ee._olm_group_decrypt_max_plaintext_length,u._olm_group_encrypt=Ee._olm_group_encrypt,u._olm_group_encrypt_message_length=Ee._olm_group_encrypt_message_length,u._olm_import_inbound_group_session=Ee._olm_import_inbound_group_session,u._olm_inbound_group_session=Ee._olm_inbound_group_session,u._olm_inbound_group_session_first_known_index=Ee._olm_inbound_group_session_first_known_index,u._olm_inbound_group_session_id=Ee._olm_inbound_group_session_id,u._olm_inbound_group_session_id_length=Ee._olm_inbound_group_session_id_length,u._olm_inbound_group_session_is_verified=Ee._olm_inbound_group_session_is_verified,u._olm_inbound_group_session_last_error=Ee._olm_inbound_group_session_last_error,u._olm_inbound_group_session_size=Ee._olm_inbound_group_session_size,u._olm_init_inbound_group_session=Ee._olm_init_inbound_group_session,u._olm_init_outbound_group_session=Ee._olm_init_outbound_group_session,u._olm_init_outbound_group_session_random_length=Ee._olm_init_outbound_group_session_random_length,u._olm_matches_inbound_session=Ee._olm_matches_inbound_session,u._olm_matches_inbound_session_from=Ee._olm_matches_inbound_session_from,u._olm_outbound_group_session=Ee._olm_outbound_group_session,u._olm_outbound_group_session_id=Ee._olm_outbound_group_session_id,u._olm_outbound_group_session_id_length=Ee._olm_outbound_group_session_id_length,u._olm_outbound_group_session_key=Ee._olm_outbound_group_session_key,u._olm_outbound_group_session_key_length=Ee._olm_outbound_group_session_key_length,u._olm_outbound_group_session_last_error=Ee._olm_outbound_group_session_last_error,u._olm_outbound_group_session_message_index=Ee._olm_outbound_group_session_message_index,u._olm_outbound_group_session_size=Ee._olm_outbound_group_session_size,u._olm_pickle_account=Ee._olm_pickle_account,u._olm_pickle_account_length=Ee._olm_pickle_account_length,u._olm_pickle_inbound_group_session=Ee._olm_pickle_inbound_group_session,u._olm_pickle_inbound_group_session_length=Ee._olm_pickle_inbound_group_session_length,u._olm_pickle_outbound_group_session=Ee._olm_pickle_outbound_group_session,u._olm_pickle_outbound_group_session_length=Ee._olm_pickle_outbound_group_session_length,u._olm_pickle_pk_decryption=Ee._olm_pickle_pk_decryption,u._olm_pickle_pk_decryption_length=Ee._olm_pickle_pk_decryption_length,u._olm_pickle_session=Ee._olm_pickle_session,u._olm_pickle_session_length=Ee._olm_pickle_session_length,u._olm_pk_ciphertext_length=Ee._olm_pk_ciphertext_length,u._olm_pk_decrypt=Ee._olm_pk_decrypt,u._olm_pk_decryption=Ee._olm_pk_decryption,u._olm_pk_decryption_last_error=Ee._olm_pk_decryption_last_error,u._olm_pk_decryption_size=Ee._olm_pk_decryption_size,u._olm_pk_encrypt=Ee._olm_pk_encrypt,u._olm_pk_encrypt_random_length=Ee._olm_pk_encrypt_random_length,u._olm_pk_encryption=Ee._olm_pk_encryption,u._olm_pk_encryption_last_error=Ee._olm_pk_encryption_last_error,u._olm_pk_encryption_set_recipient_key=Ee._olm_pk_encryption_set_recipient_key,u._olm_pk_encryption_size=Ee._olm_pk_encryption_size,u._olm_pk_generate_key=Ee._olm_pk_generate_key,u._olm_pk_generate_key_random_length=Ee._olm_pk_generate_key_random_length,u._olm_pk_get_private_key=Ee._olm_pk_get_private_key,u._olm_pk_key_from_private=Ee._olm_pk_key_from_private,u._olm_pk_key_length=Ee._olm_pk_key_length,u._olm_pk_mac_length=Ee._olm_pk_mac_length,u._olm_pk_max_plaintext_length=Ee._olm_pk_max_plaintext_length,u._olm_pk_private_key_length=Ee._olm_pk_private_key_length,u._olm_pk_sign=Ee._olm_pk_sign,u._olm_pk_signature_length=Ee._olm_pk_signature_length,u._olm_pk_signing=Ee._olm_pk_signing,u._olm_pk_signing_key_from_seed=Ee._olm_pk_signing_key_from_seed,u._olm_pk_signing_last_error=Ee._olm_pk_signing_last_error,u._olm_pk_signing_public_key_length=Ee._olm_pk_signing_public_key_length,u._olm_pk_signing_seed_length=Ee._olm_pk_signing_seed_length,u._olm_pk_signing_size=Ee._olm_pk_signing_size,u._olm_remove_one_time_keys=Ee._olm_remove_one_time_keys,u._olm_sas=Ee._olm_sas,u._olm_sas_calculate_mac=Ee._olm_sas_calculate_mac,u._olm_sas_calculate_mac_long_kdf=Ee._olm_sas_calculate_mac_long_kdf,u._olm_sas_generate_bytes=Ee._olm_sas_generate_bytes,u._olm_sas_get_pubkey=Ee._olm_sas_get_pubkey,u._olm_sas_last_error=Ee._olm_sas_last_error,u._olm_sas_mac_length=Ee._olm_sas_mac_length,u._olm_sas_pubkey_length=Ee._olm_sas_pubkey_length,u._olm_sas_set_their_key=Ee._olm_sas_set_their_key,u._olm_sas_size=Ee._olm_sas_size,u._olm_session=Ee._olm_session,u._olm_session_describe=Ee._olm_session_describe,u._olm_session_has_received_message=Ee._olm_session_has_received_message,u._olm_session_id=Ee._olm_session_id,u._olm_session_id_length=Ee._olm_session_id_length,u._olm_session_last_error=Ee._olm_session_last_error,u._olm_session_size=Ee._olm_session_size,u._olm_sha256=Ee._olm_sha256,u._olm_sha256_length=Ee._olm_sha256_length,u._olm_unpickle_account=Ee._olm_unpickle_account,u._olm_unpickle_inbound_group_session=Ee._olm_unpickle_inbound_group_session,u._olm_unpickle_outbound_group_session=Ee._olm_unpickle_outbound_group_session,u._olm_unpickle_pk_decryption=Ee._olm_unpickle_pk_decryption,u._olm_unpickle_session=Ee._olm_unpickle_session,u._olm_utility=Ee._olm_utility,u._olm_utility_last_error=Ee._olm_utility_last_error,u._olm_utility_size=Ee._olm_utility_size,u._sbrk=Ee._sbrk,u.establishStackSpace=Ee.establishStackSpace,u.getTempRet0=Ee.getTempRet0,u.runPostSets=Ee.runPostSets,u.setTempRet0=Ee.setTempRet0,u.setThrew=Ee.setThrew;var Se=u.stackAlloc=Ee.stackAlloc,Te=u.stackRestore=Ee.stackRestore,Ie=u.stackSave=Ee.stackSave;if(u.dynCall_ii=Ee.dynCall_ii,u.dynCall_iii=Ee.dynCall_iii,u.dynCall_iiii=Ee.dynCall_iiii,u.dynCall_iiiiiiiiii=Ee.dynCall_iiiiiiiiii,u.asm=Ee,u.ALLOC_STACK=1,me){if(String.prototype.startsWith?!me.startsWith(ge):0!==me.indexOf(ge)){var xe=me;me=u.locateFile?u.locateFile(xe,E):E+xe}if(v||_){var Re=u.readBinary(me);N.set(Re,8)}else{var Ce=function(){u.readAsync(me,Oe,(function(){throw"could not load memory initializer "+me}))};de++,u.monitorRunDependencies&&u.monitorRunDependencies(de);var Oe=function(e){e.byteLength&&(e=new Uint8Array(e)),N.set(e,8),u.memoryInitializerRequest&&delete u.memoryInitializerRequest.response,de--,u.monitorRunDependencies&&u.monitorRunDependencies(de),0==de&&(null!==he&&(clearInterval(he),he=null),pe&&(e=pe,pe=null,e()))},Pe=Ae(me);if(Pe)Oe(Pe.buffer);else if(u.memoryInitializerRequest){var Me=function(){var e=u.memoryInitializerRequest,t=e.response;if(200!==e.status&&0!==e.status){if(!(t=Ae(u.memoryInitializerRequestURL)))return console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+e.status+", retrying "+me),void Ce();t=t.buffer}Oe(t)};u.memoryInitializerRequest.response?setTimeout(Me,0):u.memoryInitializerRequest.addEventListener("load",Me)}else Ce()}}function De(){function e(){if(!u.calledRun&&(u.calledRun=!0,!R)){if(oe||(oe=!0,ee(ne)),ee(re),u.onRuntimeInitialized&&u.onRuntimeInitialized(),u.postRun)for("function"==typeof u.postRun&&(u.postRun=[u.postRun]);u.postRun.length;){var e=u.postRun.shift();ie.unshift(e)}ee(ie)}}if(!(0=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,i=!1,o=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==a.return||a.return()}finally{if(i)throw o}}return n}}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}},function(e,t,n){"use strict";var r=n(18);function i(){}function o(){}o.resetWarningCache=i,e.exports=function(){function e(e,t,n,i,o,s){if(s!==r){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:i};return n.PropTypes=n,n}},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}},function(e,t){e.exports=function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t3&&void 0!==arguments[3]?arguments[3]:{};return Object.assign({unified:e,emoji:e.split("-").map((function(e){return parseInt(e,16)})).map((function(e){return String.fromCodePoint(e)})).join(""),originalUnified:t[u.EMOJI_PROPERTY_UNIFIED],names:t[u.EMOJI_PROPERTY_NAME],activeSkinTone:n},r)},D=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Function.prototype;return function(t,n,r,i){var o=M(n,r,i);return P(o),e(t,o)}},B=n(8),N=(n(23),function(){var e=Object(a.useContext)(g),t=e.state,n=t.skinTonesSpread,r=t.activeSkinTone,i=e.dispatch,o=function(){i({type:v,spread:!n})},s=function(e){var t=e.target.value;i({type:_,skinTone:t})};return c.a.createElement("ul",{className:"skin-tones-list"},B.map((function(e,t){var i=e===r;return c.a.createElement("li",{key:e,className:"t".concat(e),style:{transform:"translateX(-".concat(n?20*t:0,"px) scale(").concat(i?"1.5":1,")"),zIndex:i?2:1}},c.a.createElement("input",{type:"radio",onChange:s,name:"skin-tone",value:e,id:"tone_".concat(e)}),c.a.createElement("label",{htmlFor:"tone_".concat(e),"data-name":"tones",onClick:o}))})))}),j=n(9),U=n.n(j),L=function(e){var t=Object(a.useContext)(g).state.emojiUrl;return e?"".concat(t,"/").concat(e,".png"):t},F=(n(25),function(e){var t=e.unified,n=e.dispatch,r=e.shouldLoad,i=void 0===r||r;return c.a.createElement("img",U()({className:"emoji-img",onError:function(){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Function.prototype;t({type:A,unified:e})}(t,n)}},i&&function(e){return{src:L(e)}}(t)))}),q=F;F.propTypes={unified:l.a.string,shouldLoad:l.a.bool,dispatch:l.a.func},n(27);var z=function(e){var t=e.closeVariations,n=Object(a.useContext)(g).state,r=n.variationMenu,i=n.activeSkinTone,o=n.onEmojiClick;return r?c.a.createElement("div",{className:"variations-wrapper"},c.a.createElement("ul",{className:"variation-list"},B.map((function(e){var n=r[u.EMOJI_PROPERTY_SKIN_VARIATIONS].find((function(t){return t.includes(e)}))||r[u.EMOJI_PROPERTY_UNIFIED];return c.a.createElement("li",{key:n},c.a.createElement("button",{onClick:function(e){return t(e),o(e,n,r,i)},onMouseDown:function(e){return e.stopPropagation()}},c.a.createElement(q,{unified:n})))})))):null},K=z;z.propTypes={closeVariations:l.a.func};var G=n(7),H=n.n(G),V=n(10),Q=(n(29),function(e){var t=e.emojiListRef,n=Object(a.useContext)(g),r=n.state,i=r.activeCategory,o=r.filter,s=n.dispatch,f=!1;return o&&o.length&&(f=!0),c.a.createElement("nav",{onClick:function(e){var n=e.target;if(!f){var r=n.getAttribute("data-name");if(t&&t.current&&r){s({type:y,activeCategory:r}),s({type:w,group:r});var i=t.current,o=i.querySelector("[".concat("data-name",'="').concat(r,'"]'));i.scrollTop=o.offsetTop}}},className:H()("emoji-categories",{inactive:f})},V.map((function(e){return c.a.createElement("button",{key:e,className:H()("icn-".concat(e.replace(" & ","_")),{active:i===e}),"data-name":e})})))}),W=Q;Q.propTypes={emojiListRef:l.a.shape({current:l.a.instanceOf(Element)})};var Y,X,J=n(11),Z=function(e){var t={groups:{},emojis:{}},n=function(n){e[n].reduce((function(e,t){var r=t[u.EMOJI_PROPERTY_UNIFIED];return t[u.EMOJI_PROPERTY_GROUP]=n,e.emojis[r]=t,e.groups[n]=e.groups[n]||[],e.groups[n].push(r),e}),t)};for(var r in e)n(r);return t}(J),$=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0,n=".content-wrapper",r=t&&t.current?t.current.closest("".concat(n)):document.querySelector(".emoji-picker-react ".concat(n));r.setAttribute("data-name",e)},ee=l.a.shape((X={},i()(X,u.EMOJI_PROPERTY_NAME,l.a.arrayOf(l.a.string)),i()(X,u.EMOJI_PROPERTY_UNIFIED,l.a.string),i()(X,u.EMOJI_PROPERTY_SKIN_VARIATIONS,l.a.arrayOf(l.a.string)),i()(X,u.EMOJI_PROPERTY_GROUP,l.a.string),X));function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}n(40);var ne=["#aeeff0","#ffe0e0","#d6f8b8","#c6cfff","#f1f0d1"],re=null,ie=function(){return clearTimeout(re)},oe=function(e){var t,n,r=e.emoji,o=e.shouldLoad,s=e.hidden,a=e.activeSkinTone,f=e.openVariationMenu,l=e.variationMenuOpen,d=e.handleMouseEnter,h=e.handleMouseLeave,p=e.onEmojiClick,m=e.index,g=e.dispatch,y=r[u.EMOJI_PROPERTY_SKIN_VARIATIONS],b=function(e){for(var t=1;t=0}))),t||(t=r[u.EMOJI_PROPERTY_UNIFIED]),c.a.createElement("li",{style:b,className:H()("emoji",{"has-skin-variation":y&&f})},c.a.createElement("button",{onMouseDown:function(){y&&f&&(re=setTimeout((function(){f(r)}),500))},onMouseEnter:d,onMouseLeave:h,onMouseUp:ie,onClick:function(e){l||p(e,t,r,a)}},c.a.createElement(q,{unified:t,shouldLoad:o,dispatch:g})))},se=oe;oe.propTypes={emoji:ee,shouldLoad:l.a.bool,hidden:l.a.bool,activeSkinTone:l.a.string,openVariationMenu:l.a.func,variationMenuOpen:l.a.bool,handleMouseEnter:l.a.func,handleMouseLeave:l.a.func,onEmojiClick:l.a.func,index:l.a.number,dispatch:l.a.func};var ae=function(e){var t=e.unsetEmojiName,n=e.emojiListRef,r=Object(a.useContext)(g),i=r.state,o=i.recentlyUsed,s=i.onEmojiClick,f=i.filterResult,l=i.failedToLoad,d=void 0===l?{}:l,h=r.dispatch;return!o.length||f?null:c.a.createElement("ul",{className:"emoji-group","data-name":u.GROUP_NAME_RECENTLY_USED},o.map((function(e,r){var i=e[u.EMOJI_PROPERTY_UNIFIED],o=Z.emojis[i];return d[i]||!o?null:c.a.createElement(se,U()({key:r,emoji:o},e[u.EMOJI_PROPERTY_SKIN_VARIATIONS]&&{activeSkinTone:e[u.EMOJI_PROPERTY_SKIN_VARIATIONS]},{index:r,handleMouseLeave:t,onEmojiClick:s,handleMouseEnter:function(){return $(o[u.EMOJI_PROPERTY_NAME][0],n)},dispatch:h,shouldLoad:!0}))})))},ce=ae;function fe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}ae.propTypes={unsetEmojiName:l.a.func,emojiListRef:l.a.shape({current:l.a.instanceOf(Element)})},n(42);var le=function(e){var t=e.emojiListRef,n=Object(a.useContext)(g).state.filterResult;(function(e){var t=Object(a.useContext)(g),n=t.state,r=n.filterResult,i=n.activeCategory,o=t.dispatch;Object(a.useEffect)((function(){void 0!==I.IntersectionObserver&&!Y&&e.current&&(Y=new IntersectionObserver((function(e){e.forEach((function(e){var t=e.target,n=t.getAttribute("data-name");if(0===e.intersectionRatio){if(n===i)o({type:y,activeCategory:null});else if(n===u.GROUP_NAME_RECENTLY_USED){var r=t.nextSibling;if(r){var s=r.getAttribute("data-name");o({type:y,activeCategory:s})}}}else i||(o({type:w,group:n}),o({type:y,activeCategory:n}))}))}),{root:e.current.parentElement})),Y.disconnect(),e&&e.current&&T()(e.current.querySelectorAll(".emoji-group")).forEach((function(e){Y.observe(e)}))}),[e.current,r])})(t),function(e,t){var n=Object(a.useRef)();Object(a.useEffect)((function(){t&&t.current&&(t.current.scrollTop=0),n.current=e}),[e]),n.current}(n,t);var r=function(){return $("",t)};return c.a.createElement("section",{className:"emoji-scroll-wrapper",ref:t},c.a.createElement(ce,{unsetEmojiName:r,emojiListRef:t}),V.map((function(e){var n=function(e,t){var n=t.unsetEmojiName,r=t.emojiListRef,i=Object(a.useContext)(g),o=i.state,s=o.activeSkinTone,f=o.filterResult,l=o.seenGroups,d=void 0===l?{}:l,h=o.onEmojiClick,p=o.variationMenu,m=o.failedToLoad,y=void 0===m?null:m,v=o.preload,_=i.dispatch,w=v||!(!d[e]&&!f&&"function"==typeof I.IntersectionObserver),A=!!p,E=function(e){return _({type:b,emoji:e})};return Object(a.useMemo)((function(){var t=f?Object.keys(f[e]||{}):Z.groups[e];return t.reduce((function(e,i,o){if(y&&y[i])return e;var a=Z.emojis[i],f=!t.length;return e.shown||f||(e.shown=!0),e.list.push(c.a.createElement(se,{emoji:a,dispatch:_,openVariationMenu:E,activeSkinTone:s,handleMouseLeave:n,variationMenuOpen:A,handleMouseEnter:function(){return $(a[u.EMOJI_PROPERTY_NAME][0],r)},hidden:f,shouldLoad:w,onEmojiClick:h,index:o,key:a[u.EMOJI_PROPERTY_UNIFIED]})),e}),{list:[],shown:!1})}),[s,f,e,w,A,y])}(e,{unsetEmojiName:r,emojiListRef:t}),o=n.list,s=function(e){for(var t=1;t3&&void 0!==arguments[3]?arguments[3]:100,i=n;return new Promise((function(n){var o=0;!function s(){for(var a=o;ao.value.length&&i.includes(o.value))t=[].concat(T()(n),[{value:i,terms:o.terms.filter((function(e){return e.includes(i)}))}]);else if(o&&i.length0;a--)if(i.includes(n[a-1].value)){s=a;break}n.length=s,t=T()(n)}else 0!==n.length&&i.includes(o.value)||(t=[{value:i,terms:he[i[0]].filter((function(e){return e.includes(i)}))}]);var c=t[t.length-1];c&&c.value?pe(c&&c.terms||[],(function(e,t){return de[t]?(de[t]||[]).reduce((function(e,t){var n=Z.emojis[t][u.EMOJI_PROPERTY_GROUP];return e[n]=e[n]||{},e[n][t]=!0,e}),e):e}),{}).then((function(e){r({type:E,filter:t,filterResult:e})})):r({type:E,filter:t,filterResult:null})}},ye=(n(44),function(){return c.a.createElement("input",{className:"emoji-search",onChange:ge(),autoFocus:!0})});n(46),n.d(t,"SKIN_TONE_NEUTRAL",(function(){return"neutral"})),n.d(t,"SKIN_TONE_LIGHT",(function(){return"1f3fb"})),n.d(t,"SKIN_TONE_MEDIUM_LIGHT",(function(){return"1f3fc"})),n.d(t,"SKIN_TONE_MEDIUM",(function(){return"1f3fe"})),n.d(t,"SKIN_TONE_MEDIUM_DARK",(function(){return"1f3ff"})),n.d(t,"SKIN_TONE_DARK",(function(){return"1f3fd"}));var be=function(e){var t=e.emojiUrl,n=void 0===t?"https://cdn.jsdelivr.net/gh/iamcal/emoji-data@master/img-apple-160":t,r=e.onEmojiClick,o=e.preload,f=void 0!==o&&o,l=e.skinTone,d=void 0===l?"neutral":l,h=Object(a.useRef)(null),p=Object(a.useReducer)(k,{activeSkinTone:d,emojiUrl:n,onEmojiClick:D(r),seenGroups:i()({},u.GROUP_NAME_PEOPLE,!0),recentlyUsed:O(),preload:f}),m=s()(p,2),y=m[0],_=m[1],w=function(e){var t=e.target;y.variationMenu&&_({type:b}),y.skinTonesSpread&&"tones"!==t.getAttribute("data-name")&&_({type:v})};return c.a.createElement(g.Provider,{value:{state:y,dispatch:_}},c.a.createElement("aside",{className:"emoji-picker-react",onScroll:w,onMouseDown:w},c.a.createElement(W,{emojiListRef:h}),c.a.createElement("div",{style:{position:"relative"}},c.a.createElement(ye,null),c.a.createElement(N,null)),c.a.createElement("div",{className:"content-wrapper","data-name":y.emojiName},c.a.createElement(K,{closeVariations:w}),c.a.createElement(ue,{emojiListRef:h}))))};t.default=be,be.propTypes={emojiUrl:l.a.string,onEmojiClick:l.a.func,preload:l.a.bool,skinTone:l.a.string}}]))}).call(this,n(6))},function(e,t,n){"use strict";var r=n(26),i=n.n(r),o=n(27),s=n.n(o),a=n(55),c=n.n(a),f=n(56),l=n.n(f),u=n(5),d=n.n(u),h=n(57),p=n.n(h),m=n(1),g=n.n(m),y=n(0),b=n.n(y),v=(n(9),n(335)),_=n(161),w=n.n(_),A=n(39);function E(e,t,n){return e===t||(e.correspondingElement?e.correspondingElement.classList.contains(n):e.classList.contains(n))}var k,S,T=(void 0===k&&(k=0),function(){return++k}),I={},x={},R=["touchstart","touchmove"];function C(e,t){var n=null;return-1!==R.indexOf(t)&&S&&(n={passive:!e.props.preventDefault}),n}var O=function(e,t){var n,r,i=e.displayName||e.name||"Component";return r=n=function(n){var r,o;function s(e){var r;return(r=n.call(this,e)||this).__outsideClickHandler=function(e){if("function"!=typeof r.__clickOutsideHandlerProp){var t=r.getInstance();if("function"!=typeof t.props.handleClickOutside){if("function"!=typeof t.handleClickOutside)throw new Error("WrappedComponent: "+i+" lacks a handleClickOutside(event) function for processing outside click events.");t.handleClickOutside(e)}else t.props.handleClickOutside(e)}else r.__clickOutsideHandlerProp(e)},r.__getComponentNode=function(){var e=r.getInstance();return t&&"function"==typeof t.setClickOutsideRef?t.setClickOutsideRef()(e):"function"==typeof e.setClickOutsideRef?e.setClickOutsideRef():Object(A.findDOMNode)(e)},r.enableOnClickOutside=function(){if("undefined"!=typeof document&&!x[r._uid]){void 0===S&&(S=function(){if("undefined"!=typeof window&&"function"==typeof window.addEventListener){var e=!1,t=Object.defineProperty({},"passive",{get:function(){e=!0}}),n=function(){};return window.addEventListener("testPassiveEventSupport",n,t),window.removeEventListener("testPassiveEventSupport",n,t),e}}()),x[r._uid]=!0;var e=r.props.eventTypes;e.forEach||(e=[e]),I[r._uid]=function(e){var t;null!==r.componentNode&&(r.props.preventDefault&&e.preventDefault(),r.props.stopPropagation&&e.stopPropagation(),r.props.excludeScrollbar&&(t=e,document.documentElement.clientWidth<=t.clientX||document.documentElement.clientHeight<=t.clientY)||function(e,t,n){if(e===t)return!0;for(;e.parentNode;){if(E(e,t,n))return!0;e=e.parentNode}return e}(e.target,r.componentNode,r.props.outsideClickIgnoreClass)===document&&r.__outsideClickHandler(e))},e.forEach((function(e){document.addEventListener(e,I[r._uid],C(r,e))}))}},r.disableOnClickOutside=function(){delete x[r._uid];var e=I[r._uid];if(e&&"undefined"!=typeof document){var t=r.props.eventTypes;t.forEach||(t=[t]),t.forEach((function(t){return document.removeEventListener(t,e,C(r,t))})),delete I[r._uid]}},r.getRef=function(e){return r.instanceRef=e},r._uid=T(),r}o=n,(r=s).prototype=Object.create(o.prototype),r.prototype.constructor=r,r.__proto__=o;var a=s.prototype;return a.getInstance=function(){if(!e.prototype.isReactComponent)return this;var t=this.instanceRef;return t.getInstance?t.getInstance():t},a.componentDidMount=function(){if("undefined"!=typeof document&&document.createElement){var e=this.getInstance();if(t&&"function"==typeof t.handleClickOutside&&(this.__clickOutsideHandlerProp=t.handleClickOutside(e),"function"!=typeof this.__clickOutsideHandlerProp))throw new Error("WrappedComponent: "+i+" lacks a function for processing outside click events specified by the handleClickOutside config option.");this.componentNode=this.__getComponentNode(),this.props.disableOnClickOutside||this.enableOnClickOutside()}},a.componentDidUpdate=function(){this.componentNode=this.__getComponentNode()},a.componentWillUnmount=function(){this.disableOnClickOutside()},a.render=function(){var t=this.props,n=(t.excludeScrollbar,function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}(t,["excludeScrollbar"]));return e.prototype.isReactComponent?n.ref=this.getRef:n.wrappedRef=this.getRef,n.disableOnClickOutside=this.disableOnClickOutside,n.enableOnClickOutside=this.enableOnClickOutside,Object(y.createElement)(e,n)},s}(y.Component),n.displayName="OnClickOutside("+i+")",n.defaultProps={eventTypes:["mousedown","touchstart"],excludeScrollbar:t&&t.excludeScrollbar||!1,outsideClickIgnoreClass:"ignore-react-onclickoutside",preventDefault:!1,stopPropagation:!1},n.getClass=function(){return e.getClass?e.getClass():e},r},P=function(){return b.a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24",viewBox:"0 0 24 24",width:"24"},b.a.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),b.a.createElement("path",{id:"icon",fill:"#828282",d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm3.5-9c.83 0 1.5-.67 1.5-1.5S16.33 8 15.5 8 14 8.67 14 9.5s.67 1.5 1.5 1.5zm-7 0c.83 0 1.5-.67 1.5-1.5S9.33 8 8.5 8 7 8.67 7 9.5 7.67 11 8.5 11zm3.5 6.5c2.33 0 4.31-1.46 5.11-3.5H6.89c.8 2.04 2.78 3.5 5.11 3.5z"}))},M=function(e){function t(e){var n;return i()(this,t),n=c()(this,l()(t).call(this,e)),g()(d()(n),"handleClickOutside",(function(e){n.props.closeEmojiSelector()})),n}return p()(t,e),s()(t,[{key:"render",value:function(){var e=this.props,t=e.onEmojiClick,n=e.emojiSelectorOpen,r=e.toggleEmojiSelector;return(b.a.createElement("div",{className:"emoji-button-container"},b.a.createElement("div",{className:"pos-relative"},b.a.createElement(v.a,{in:n,timeout:250},(function(e){return b.a.createElement("div",{className:"emoji-picker emoji-picker-".concat(e),"aria-hidden":!n},b.a.createElement(w.a,{onEmojiClick:t,emojiUrl:"https://cdn.jsdelivr.net/gh/iamcal/emoji-data@master/img-apple-64"}))})),b.a.createElement("button",{type:"button",id:"emoji-button",onClick:r,"aria-label":"Emoji picker"},b.a.createElement(P,null)))))}}]),t}(b.a.Component);t.a=O(M)},function(e,t,n){"use strict";n.r(t),n.d(t,"default",(function(){return g}));var r=n(153),i=n.n(r),o=n(26),s=n.n(o),a=n(27),c=n.n(a),f=n(1),l=n.n(f),u=n(0),d=n.n(u),h=n(39),p=n.n(h),m=n(154),g=(n(333),function(){function e(){s()(this,e)}return c()(e,null,[{key:"mount",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.parentElement,r=void 0===n?null:n,o=i()(t,["parentElement"]),s=d.a.createElement(m.a,o);function a(){if(e.el)throw new Error("EmbeddableChatbox is already mounted, unmount first");var t=document.createElement("div");t.setAttribute("class","cleanslate"),r?document.querySelector(r).appendChild(t):document.body.appendChild(t),p.a.render(s,t),e.el=t}"complete"===document.readyState?a():window.addEventListener("load",(function(){a()}))}},{key:"unmount",value:function(){if(!e.el)throw new Error("EmbeddableChatbox is not mounted, mount first");p.a.unmountComponentAtNode(e.el),e.el.parentNode.removeChild(e.el),e.el=null}}]),e}());l()(g,"el",void 0)},,function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}},function(e,t,n){"use strict"; /** @license React v16.14.0 * react.production.min.js * diff --git a/dist/component.js b/dist/component.js index 78e44ac..9e0f8c6 100644 --- a/dist/component.js +++ b/dist/component.js @@ -5,7 +5,7 @@ module.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;va * @author Feross Aboukhadijeh * @license MIT */ -var r=n(170),i=n(171),o=n(87);function s(){return f.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function a(e,t){if(s()=s())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s().toString(16)+" bytes");return 0|e}function p(e,t){if(f.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 n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return q(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return F(e).length;default:if(r)return q(e).length;t=(""+t).toLowerCase(),r=!0}}function g(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return O(this,t,n);case"utf8":case"utf-8":return I(this,t,n);case"ascii":return R(this,t,n);case"latin1":case"binary":return T(this,t,n);case"base64":return k(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return C(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function m(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function _(e,t,n,r,i){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof t&&(t=f.from(t,r)),f.isBuffer(t))return 0===t.length?-1:y(e,t,n,r,i);if("number"==typeof t)return t&=255,f.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):y(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function y(e,t,n,r,i){var o,s=1,a=e.length,f=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;s=2,a/=2,f/=2,n/=2}function c(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(i){var u=-1;for(o=n;oa&&(n=a-f),o=n;o>=0;o--){for(var l=!0,d=0;di&&(r=i):r=i;var o=t.length;if(o%2!=0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var s=0;s>8,i=n%256,o.push(i),o.push(r);return o}(t,e.length-n),e,n,r)}function k(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function I(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i239?4:c>223?3:c>191?2:1;if(i+l<=n)switch(l){case 1:c<128&&(u=c);break;case 2:128==(192&(o=e[i+1]))&&(f=(31&c)<<6|63&o)>127&&(u=f);break;case 3:o=e[i+1],s=e[i+2],128==(192&o)&&128==(192&s)&&(f=(15&c)<<12|(63&o)<<6|63&s)>2047&&(f<55296||f>57343)&&(u=f);break;case 4:o=e[i+1],s=e[i+2],a=e[i+3],128==(192&o)&&128==(192&s)&&128==(192&a)&&(f=(15&c)<<18|(63&o)<<12|(63&s)<<6|63&a)>65535&&f<1114112&&(u=f)}null===u?(u=65533,l=1):u>65535&&(u-=65536,r.push(u>>>10&1023|55296),u=56320|1023&u),r.push(u),i+=l}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var n="",r=0;for(;r0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},f.prototype.compare=function(e,t,n,r,i){if(!f.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(this===e)return 0;for(var o=(i>>>=0)-(r>>>=0),s=(n>>>=0)-(t>>>=0),a=Math.min(o,s),c=this.slice(r,i),u=e.slice(t,n),l=0;li)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return b(this,e,t,n);case"utf8":case"utf-8":return v(this,e,t,n);case"ascii":return A(this,e,t,n);case"latin1":case"binary":return w(this,e,t,n);case"base64":return E(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,e,t,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},f.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function R(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;ir)&&(n=r);for(var i="",o=t;on)throw new RangeError("Trying to access beyond buffer length")}function M(e,t,n,r,i,o){if(!f.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 P(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,o=Math.min(e.length-n,2);i>>8*(r?i:1-i)}function D(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,o=Math.min(e.length-n,4);i>>8*(r?i:3-i)&255}function B(e,t,n,r,i,o){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function N(e,t,n,r,o){return o||B(e,0,n,4),i.write(e,t,n,r,23,4),n+4}function j(e,t,n,r,o){return o||B(e,0,n,8),i.write(e,t,n,r,52,8),n+8}f.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(i*=256);)r+=this[e+--t]*i;return r},f.prototype.readUInt8=function(e,t){return t||x(e,1,this.length),this[e]},f.prototype.readUInt16LE=function(e,t){return t||x(e,2,this.length),this[e]|this[e+1]<<8},f.prototype.readUInt16BE=function(e,t){return t||x(e,2,this.length),this[e]<<8|this[e+1]},f.prototype.readUInt32LE=function(e,t){return t||x(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},f.prototype.readUInt32BE=function(e,t){return t||x(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},f.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||x(e,t,this.length);for(var r=this[e],i=1,o=0;++o=(i*=128)&&(r-=Math.pow(2,8*t)),r},f.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||x(e,t,this.length);for(var r=t,i=1,o=this[e+--r];r>0&&(i*=256);)o+=this[e+--r]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*t)),o},f.prototype.readInt8=function(e,t){return t||x(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},f.prototype.readInt16LE=function(e,t){t||x(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},f.prototype.readInt16BE=function(e,t){t||x(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},f.prototype.readInt32LE=function(e,t){return t||x(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},f.prototype.readInt32BE=function(e,t){return t||x(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},f.prototype.readFloatLE=function(e,t){return t||x(e,4,this.length),i.read(this,e,!0,23,4)},f.prototype.readFloatBE=function(e,t){return t||x(e,4,this.length),i.read(this,e,!1,23,4)},f.prototype.readDoubleLE=function(e,t){return t||x(e,8,this.length),i.read(this,e,!0,52,8)},f.prototype.readDoubleBE=function(e,t){return t||x(e,8,this.length),i.read(this,e,!1,52,8)},f.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||M(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,o=0;for(this[t]=255&e;++o=0&&(o*=256);)this[t+i]=e/o&255;return t+n},f.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,1,255,0),f.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},f.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,2,65535,0),f.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):P(this,e,t,!0),t+2},f.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,2,65535,0),f.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):P(this,e,t,!1),t+2},f.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,4,4294967295,0),f.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):D(this,e,t,!0),t+4},f.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,4,4294967295,0),f.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):D(this,e,t,!1),t+4},f.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);M(this,e,t,n,i-1,-i)}var o=0,s=1,a=0;for(this[t]=255&e;++o>0)-a&255;return t+n},f.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);M(this,e,t,n,i-1,-i)}var o=n-1,s=1,a=0;for(this[t+o]=255&e;--o>=0&&(s*=256);)e<0&&0===a&&0!==this[t+o+1]&&(a=1),this[t+o]=(e/s>>0)-a&255;return t+n},f.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,1,127,-128),f.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},f.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,2,32767,-32768),f.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):P(this,e,t,!0),t+2},f.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,2,32767,-32768),f.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):P(this,e,t,!1),t+2},f.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,4,2147483647,-2147483648),f.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):D(this,e,t,!0),t+4},f.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),f.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):D(this,e,t,!1),t+4},f.prototype.writeFloatLE=function(e,t,n){return N(this,e,t,!0,n)},f.prototype.writeFloatBE=function(e,t,n){return N(this,e,t,!1,n)},f.prototype.writeDoubleLE=function(e,t,n){return j(this,e,t,!0,n)},f.prototype.writeDoubleBE=function(e,t,n){return j(this,e,t,!1,n)},f.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--i)e[i+t]=this[i+n];else if(o<1e3||!f.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(o=t;o55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(s+1===r){(t-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;o.push(n)}else if(n<2048){if((t-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function F(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(U,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function K(e,t,n,r){for(var i=0;i=t.length||i>=e.length);++i)t[i+n]=e[i];return i}}).call(this,n(6))},function(e,t,n){(function(e){!function(e,t){"use strict";function r(e,t){if(!e)throw new Error(t||"Assertion failed")}function i(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}function o(e,t,n){if(o.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(n=t,t=10),this._init(e||0,t||10,n||"be"))}var s;"object"==typeof e?e.exports=o:t.BN=o,o.BN=o,o.wordSize=26;try{s=n(218).Buffer}catch(e){}function a(e,t,n){for(var r=0,i=Math.min(e.length,n),o=t;o=49&&s<=54?s-49+10:s>=17&&s<=22?s-17+10:15&s}return r}function f(e,t,n,r){for(var i=0,o=Math.min(e.length,n),s=t;s=49?a-49+10:a>=17?a-17+10:a}return i}o.isBN=function(e){return e instanceof o||null!==e&&"object"==typeof e&&e.constructor.wordSize===o.wordSize&&Array.isArray(e.words)},o.max=function(e,t){return e.cmp(t)>0?e:t},o.min=function(e,t){return e.cmp(t)<0?e:t},o.prototype._init=function(e,t,n){if("number"==typeof e)return this._initNumber(e,t,n);if("object"==typeof e)return this._initArray(e,t,n);"hex"===t&&(t=16),r(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"===n&&this._initArray(this.toArray(),t,n)},o.prototype._initNumber=function(e,t,n){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):(r(e<9007199254740992),this.words=[67108863&e,e/67108864&67108863,1],this.length=3),"le"===n&&this._initArray(this.toArray(),t,n)},o.prototype._initArray=function(e,t,n){if(r("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)s=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[o]|=s<>>26-a&67108863,(a+=24)>=26&&(a-=26,o++);else if("le"===n)for(i=0,o=0;i>>26-a&67108863,(a+=24)>=26&&(a-=26,o++);return this.strip()},o.prototype._parseHex=function(e,t){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var n=0;n=t;n-=6)i=a(e,n,n+6),this.words[r]|=i<>>26-o&4194303,(o+=24)>=26&&(o-=26,r++);n+6!==t&&(i=a(e,t,n+6),this.words[r]|=i<>>26-o&4194303),this.strip()},o.prototype._parseBase=function(e,t,n){this.words=[0],this.length=1;for(var r=0,i=1;i<=67108863;i*=t)r++;r--,i=i/t|0;for(var o=e.length-n,s=o%r,a=Math.min(o,o-s)+n,c=0,u=n;u1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?""};var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],u=[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],l=[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 d(e,t,n){n.negative=t.negative^e.negative;var r=e.length+t.length|0;n.length=r,r=r-1|0;var i=0|e.words[0],o=0|t.words[0],s=i*o,a=67108863&s,f=s/67108864|0;n.words[0]=a;for(var c=1;c>>26,l=67108863&f,d=Math.min(c,t.length-1),h=Math.max(0,c-e.length+1);h<=d;h++){var p=c-h|0;u+=(s=(i=0|e.words[p])*(o=0|t.words[h])+l)/67108864|0,l=67108863&s}n.words[c]=0|l,f=0|u}return 0!==f?n.words[c]=0|f:n.length--,n.strip()}o.prototype.toString=function(e,t){var n;if(t=0|t||1,16===(e=e||10)||"hex"===e){n="";for(var i=0,o=0,s=0;s>>24-i&16777215)||s!==this.length-1?c[6-f.length]+f+n:f+n,(i+=2)>=26&&(i-=26,s--)}for(0!==o&&(n=o.toString(16)+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(e===(0|e)&&e>=2&&e<=36){var d=u[e],h=l[e];n="";var p=this.clone();for(p.negative=0;!p.isZero();){var g=p.modn(h).toString(e);n=(p=p.idivn(h)).isZero()?g+n:c[d-g.length]+g+n}for(this.isZero()&&(n="0"+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(e,t){return r(void 0!==s),this.toArrayLike(s,e,t)},o.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},o.prototype.toArrayLike=function(e,t,n){var i=this.byteLength(),o=n||Math.max(1,i);r(i<=o,"byte array longer than desired length"),r(o>0,"Requested array length <= 0"),this.strip();var s,a,f="le"===t,c=new e(o),u=this.clone();if(f){for(a=0;!u.isZero();a++)s=u.andln(255),u.iushrn(8),c[a]=s;for(;a=4096&&(n+=13,t>>>=13),t>=64&&(n+=7,t>>>=7),t>=8&&(n+=4,t>>>=4),t>=2&&(n+=2,t>>>=2),n+t},o.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,n=0;return 0==(8191&t)&&(n+=13,t>>>=13),0==(127&t)&&(n+=7,t>>>=7),0==(15&t)&&(n+=4,t>>>=4),0==(3&t)&&(n+=2,t>>>=2),0==(1&t)&&n++,n},o.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},o.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},o.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var n=0;ne.length?this.clone().iand(e):e.clone().iand(this)},o.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},o.prototype.iuxor=function(e){var t,n;this.length>e.length?(t=this,n=e):(t=e,n=this);for(var r=0;re.length?this.clone().ixor(e):e.clone().ixor(this)},o.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},o.prototype.inotn=function(e){r("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),n=e%26;this._expand(t),n>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-n),this.strip()},o.prototype.notn=function(e){return this.clone().inotn(e)},o.prototype.setn=function(e,t){r("number"==typeof e&&e>=0);var n=e/26|0,i=e%26;return this._expand(n+1),this.words[n]=t?this.words[n]|1<e.length?(n=this,r=e):(n=e,r=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=n.length,0!==i)this.words[this.length]=i,this.length++;else if(n!==this)for(;oe.length?this.clone().iadd(e):e.clone().iadd(this)},o.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var n,r,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(n=this,r=e):(n=e,r=this);for(var o=0,s=0;s>26,this.words[s]=67108863&t;for(;0!==o&&s>26,this.words[s]=67108863&t;if(0===o&&s>>13,h=0|s[1],p=8191&h,g=h>>>13,m=0|s[2],_=8191&m,y=m>>>13,b=0|s[3],v=8191&b,A=b>>>13,w=0|s[4],E=8191&w,S=w>>>13,k=0|s[5],I=8191&k,R=k>>>13,T=0|s[6],O=8191&T,C=T>>>13,x=0|s[7],M=8191&x,P=x>>>13,D=0|s[8],B=8191&D,N=D>>>13,j=0|s[9],U=8191&j,L=j>>>13,q=0|a[0],F=8191&q,K=q>>>13,G=0|a[1],z=8191&G,H=G>>>13,V=0|a[2],Q=8191&V,W=V>>>13,Y=0|a[3],X=8191&Y,J=Y>>>13,Z=0|a[4],$=8191&Z,ee=Z>>>13,te=0|a[5],ne=8191&te,re=te>>>13,ie=0|a[6],oe=8191&ie,se=ie>>>13,ae=0|a[7],fe=8191&ae,ce=ae>>>13,ue=0|a[8],le=8191&ue,de=ue>>>13,he=0|a[9],pe=8191&he,ge=he>>>13;n.negative=e.negative^t.negative,n.length=19;var me=(c+(r=Math.imul(l,F))|0)+((8191&(i=(i=Math.imul(l,K))+Math.imul(d,F)|0))<<13)|0;c=((o=Math.imul(d,K))+(i>>>13)|0)+(me>>>26)|0,me&=67108863,r=Math.imul(p,F),i=(i=Math.imul(p,K))+Math.imul(g,F)|0,o=Math.imul(g,K);var _e=(c+(r=r+Math.imul(l,z)|0)|0)+((8191&(i=(i=i+Math.imul(l,H)|0)+Math.imul(d,z)|0))<<13)|0;c=((o=o+Math.imul(d,H)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,r=Math.imul(_,F),i=(i=Math.imul(_,K))+Math.imul(y,F)|0,o=Math.imul(y,K),r=r+Math.imul(p,z)|0,i=(i=i+Math.imul(p,H)|0)+Math.imul(g,z)|0,o=o+Math.imul(g,H)|0;var ye=(c+(r=r+Math.imul(l,Q)|0)|0)+((8191&(i=(i=i+Math.imul(l,W)|0)+Math.imul(d,Q)|0))<<13)|0;c=((o=o+Math.imul(d,W)|0)+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,r=Math.imul(v,F),i=(i=Math.imul(v,K))+Math.imul(A,F)|0,o=Math.imul(A,K),r=r+Math.imul(_,z)|0,i=(i=i+Math.imul(_,H)|0)+Math.imul(y,z)|0,o=o+Math.imul(y,H)|0,r=r+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,W)|0)+Math.imul(g,Q)|0,o=o+Math.imul(g,W)|0;var be=(c+(r=r+Math.imul(l,X)|0)|0)+((8191&(i=(i=i+Math.imul(l,J)|0)+Math.imul(d,X)|0))<<13)|0;c=((o=o+Math.imul(d,J)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,r=Math.imul(E,F),i=(i=Math.imul(E,K))+Math.imul(S,F)|0,o=Math.imul(S,K),r=r+Math.imul(v,z)|0,i=(i=i+Math.imul(v,H)|0)+Math.imul(A,z)|0,o=o+Math.imul(A,H)|0,r=r+Math.imul(_,Q)|0,i=(i=i+Math.imul(_,W)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,W)|0,r=r+Math.imul(p,X)|0,i=(i=i+Math.imul(p,J)|0)+Math.imul(g,X)|0,o=o+Math.imul(g,J)|0;var ve=(c+(r=r+Math.imul(l,$)|0)|0)+((8191&(i=(i=i+Math.imul(l,ee)|0)+Math.imul(d,$)|0))<<13)|0;c=((o=o+Math.imul(d,ee)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,r=Math.imul(I,F),i=(i=Math.imul(I,K))+Math.imul(R,F)|0,o=Math.imul(R,K),r=r+Math.imul(E,z)|0,i=(i=i+Math.imul(E,H)|0)+Math.imul(S,z)|0,o=o+Math.imul(S,H)|0,r=r+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,W)|0)+Math.imul(A,Q)|0,o=o+Math.imul(A,W)|0,r=r+Math.imul(_,X)|0,i=(i=i+Math.imul(_,J)|0)+Math.imul(y,X)|0,o=o+Math.imul(y,J)|0,r=r+Math.imul(p,$)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(g,$)|0,o=o+Math.imul(g,ee)|0;var Ae=(c+(r=r+Math.imul(l,ne)|0)|0)+((8191&(i=(i=i+Math.imul(l,re)|0)+Math.imul(d,ne)|0))<<13)|0;c=((o=o+Math.imul(d,re)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,r=Math.imul(O,F),i=(i=Math.imul(O,K))+Math.imul(C,F)|0,o=Math.imul(C,K),r=r+Math.imul(I,z)|0,i=(i=i+Math.imul(I,H)|0)+Math.imul(R,z)|0,o=o+Math.imul(R,H)|0,r=r+Math.imul(E,Q)|0,i=(i=i+Math.imul(E,W)|0)+Math.imul(S,Q)|0,o=o+Math.imul(S,W)|0,r=r+Math.imul(v,X)|0,i=(i=i+Math.imul(v,J)|0)+Math.imul(A,X)|0,o=o+Math.imul(A,J)|0,r=r+Math.imul(_,$)|0,i=(i=i+Math.imul(_,ee)|0)+Math.imul(y,$)|0,o=o+Math.imul(y,ee)|0,r=r+Math.imul(p,ne)|0,i=(i=i+Math.imul(p,re)|0)+Math.imul(g,ne)|0,o=o+Math.imul(g,re)|0;var we=(c+(r=r+Math.imul(l,oe)|0)|0)+((8191&(i=(i=i+Math.imul(l,se)|0)+Math.imul(d,oe)|0))<<13)|0;c=((o=o+Math.imul(d,se)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,r=Math.imul(M,F),i=(i=Math.imul(M,K))+Math.imul(P,F)|0,o=Math.imul(P,K),r=r+Math.imul(O,z)|0,i=(i=i+Math.imul(O,H)|0)+Math.imul(C,z)|0,o=o+Math.imul(C,H)|0,r=r+Math.imul(I,Q)|0,i=(i=i+Math.imul(I,W)|0)+Math.imul(R,Q)|0,o=o+Math.imul(R,W)|0,r=r+Math.imul(E,X)|0,i=(i=i+Math.imul(E,J)|0)+Math.imul(S,X)|0,o=o+Math.imul(S,J)|0,r=r+Math.imul(v,$)|0,i=(i=i+Math.imul(v,ee)|0)+Math.imul(A,$)|0,o=o+Math.imul(A,ee)|0,r=r+Math.imul(_,ne)|0,i=(i=i+Math.imul(_,re)|0)+Math.imul(y,ne)|0,o=o+Math.imul(y,re)|0,r=r+Math.imul(p,oe)|0,i=(i=i+Math.imul(p,se)|0)+Math.imul(g,oe)|0,o=o+Math.imul(g,se)|0;var Ee=(c+(r=r+Math.imul(l,fe)|0)|0)+((8191&(i=(i=i+Math.imul(l,ce)|0)+Math.imul(d,fe)|0))<<13)|0;c=((o=o+Math.imul(d,ce)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,r=Math.imul(B,F),i=(i=Math.imul(B,K))+Math.imul(N,F)|0,o=Math.imul(N,K),r=r+Math.imul(M,z)|0,i=(i=i+Math.imul(M,H)|0)+Math.imul(P,z)|0,o=o+Math.imul(P,H)|0,r=r+Math.imul(O,Q)|0,i=(i=i+Math.imul(O,W)|0)+Math.imul(C,Q)|0,o=o+Math.imul(C,W)|0,r=r+Math.imul(I,X)|0,i=(i=i+Math.imul(I,J)|0)+Math.imul(R,X)|0,o=o+Math.imul(R,J)|0,r=r+Math.imul(E,$)|0,i=(i=i+Math.imul(E,ee)|0)+Math.imul(S,$)|0,o=o+Math.imul(S,ee)|0,r=r+Math.imul(v,ne)|0,i=(i=i+Math.imul(v,re)|0)+Math.imul(A,ne)|0,o=o+Math.imul(A,re)|0,r=r+Math.imul(_,oe)|0,i=(i=i+Math.imul(_,se)|0)+Math.imul(y,oe)|0,o=o+Math.imul(y,se)|0,r=r+Math.imul(p,fe)|0,i=(i=i+Math.imul(p,ce)|0)+Math.imul(g,fe)|0,o=o+Math.imul(g,ce)|0;var Se=(c+(r=r+Math.imul(l,le)|0)|0)+((8191&(i=(i=i+Math.imul(l,de)|0)+Math.imul(d,le)|0))<<13)|0;c=((o=o+Math.imul(d,de)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,r=Math.imul(U,F),i=(i=Math.imul(U,K))+Math.imul(L,F)|0,o=Math.imul(L,K),r=r+Math.imul(B,z)|0,i=(i=i+Math.imul(B,H)|0)+Math.imul(N,z)|0,o=o+Math.imul(N,H)|0,r=r+Math.imul(M,Q)|0,i=(i=i+Math.imul(M,W)|0)+Math.imul(P,Q)|0,o=o+Math.imul(P,W)|0,r=r+Math.imul(O,X)|0,i=(i=i+Math.imul(O,J)|0)+Math.imul(C,X)|0,o=o+Math.imul(C,J)|0,r=r+Math.imul(I,$)|0,i=(i=i+Math.imul(I,ee)|0)+Math.imul(R,$)|0,o=o+Math.imul(R,ee)|0,r=r+Math.imul(E,ne)|0,i=(i=i+Math.imul(E,re)|0)+Math.imul(S,ne)|0,o=o+Math.imul(S,re)|0,r=r+Math.imul(v,oe)|0,i=(i=i+Math.imul(v,se)|0)+Math.imul(A,oe)|0,o=o+Math.imul(A,se)|0,r=r+Math.imul(_,fe)|0,i=(i=i+Math.imul(_,ce)|0)+Math.imul(y,fe)|0,o=o+Math.imul(y,ce)|0,r=r+Math.imul(p,le)|0,i=(i=i+Math.imul(p,de)|0)+Math.imul(g,le)|0,o=o+Math.imul(g,de)|0;var ke=(c+(r=r+Math.imul(l,pe)|0)|0)+((8191&(i=(i=i+Math.imul(l,ge)|0)+Math.imul(d,pe)|0))<<13)|0;c=((o=o+Math.imul(d,ge)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,r=Math.imul(U,z),i=(i=Math.imul(U,H))+Math.imul(L,z)|0,o=Math.imul(L,H),r=r+Math.imul(B,Q)|0,i=(i=i+Math.imul(B,W)|0)+Math.imul(N,Q)|0,o=o+Math.imul(N,W)|0,r=r+Math.imul(M,X)|0,i=(i=i+Math.imul(M,J)|0)+Math.imul(P,X)|0,o=o+Math.imul(P,J)|0,r=r+Math.imul(O,$)|0,i=(i=i+Math.imul(O,ee)|0)+Math.imul(C,$)|0,o=o+Math.imul(C,ee)|0,r=r+Math.imul(I,ne)|0,i=(i=i+Math.imul(I,re)|0)+Math.imul(R,ne)|0,o=o+Math.imul(R,re)|0,r=r+Math.imul(E,oe)|0,i=(i=i+Math.imul(E,se)|0)+Math.imul(S,oe)|0,o=o+Math.imul(S,se)|0,r=r+Math.imul(v,fe)|0,i=(i=i+Math.imul(v,ce)|0)+Math.imul(A,fe)|0,o=o+Math.imul(A,ce)|0,r=r+Math.imul(_,le)|0,i=(i=i+Math.imul(_,de)|0)+Math.imul(y,le)|0,o=o+Math.imul(y,de)|0;var Ie=(c+(r=r+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,ge)|0)+Math.imul(g,pe)|0))<<13)|0;c=((o=o+Math.imul(g,ge)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863,r=Math.imul(U,Q),i=(i=Math.imul(U,W))+Math.imul(L,Q)|0,o=Math.imul(L,W),r=r+Math.imul(B,X)|0,i=(i=i+Math.imul(B,J)|0)+Math.imul(N,X)|0,o=o+Math.imul(N,J)|0,r=r+Math.imul(M,$)|0,i=(i=i+Math.imul(M,ee)|0)+Math.imul(P,$)|0,o=o+Math.imul(P,ee)|0,r=r+Math.imul(O,ne)|0,i=(i=i+Math.imul(O,re)|0)+Math.imul(C,ne)|0,o=o+Math.imul(C,re)|0,r=r+Math.imul(I,oe)|0,i=(i=i+Math.imul(I,se)|0)+Math.imul(R,oe)|0,o=o+Math.imul(R,se)|0,r=r+Math.imul(E,fe)|0,i=(i=i+Math.imul(E,ce)|0)+Math.imul(S,fe)|0,o=o+Math.imul(S,ce)|0,r=r+Math.imul(v,le)|0,i=(i=i+Math.imul(v,de)|0)+Math.imul(A,le)|0,o=o+Math.imul(A,de)|0;var Re=(c+(r=r+Math.imul(_,pe)|0)|0)+((8191&(i=(i=i+Math.imul(_,ge)|0)+Math.imul(y,pe)|0))<<13)|0;c=((o=o+Math.imul(y,ge)|0)+(i>>>13)|0)+(Re>>>26)|0,Re&=67108863,r=Math.imul(U,X),i=(i=Math.imul(U,J))+Math.imul(L,X)|0,o=Math.imul(L,J),r=r+Math.imul(B,$)|0,i=(i=i+Math.imul(B,ee)|0)+Math.imul(N,$)|0,o=o+Math.imul(N,ee)|0,r=r+Math.imul(M,ne)|0,i=(i=i+Math.imul(M,re)|0)+Math.imul(P,ne)|0,o=o+Math.imul(P,re)|0,r=r+Math.imul(O,oe)|0,i=(i=i+Math.imul(O,se)|0)+Math.imul(C,oe)|0,o=o+Math.imul(C,se)|0,r=r+Math.imul(I,fe)|0,i=(i=i+Math.imul(I,ce)|0)+Math.imul(R,fe)|0,o=o+Math.imul(R,ce)|0,r=r+Math.imul(E,le)|0,i=(i=i+Math.imul(E,de)|0)+Math.imul(S,le)|0,o=o+Math.imul(S,de)|0;var Te=(c+(r=r+Math.imul(v,pe)|0)|0)+((8191&(i=(i=i+Math.imul(v,ge)|0)+Math.imul(A,pe)|0))<<13)|0;c=((o=o+Math.imul(A,ge)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,r=Math.imul(U,$),i=(i=Math.imul(U,ee))+Math.imul(L,$)|0,o=Math.imul(L,ee),r=r+Math.imul(B,ne)|0,i=(i=i+Math.imul(B,re)|0)+Math.imul(N,ne)|0,o=o+Math.imul(N,re)|0,r=r+Math.imul(M,oe)|0,i=(i=i+Math.imul(M,se)|0)+Math.imul(P,oe)|0,o=o+Math.imul(P,se)|0,r=r+Math.imul(O,fe)|0,i=(i=i+Math.imul(O,ce)|0)+Math.imul(C,fe)|0,o=o+Math.imul(C,ce)|0,r=r+Math.imul(I,le)|0,i=(i=i+Math.imul(I,de)|0)+Math.imul(R,le)|0,o=o+Math.imul(R,de)|0;var Oe=(c+(r=r+Math.imul(E,pe)|0)|0)+((8191&(i=(i=i+Math.imul(E,ge)|0)+Math.imul(S,pe)|0))<<13)|0;c=((o=o+Math.imul(S,ge)|0)+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,r=Math.imul(U,ne),i=(i=Math.imul(U,re))+Math.imul(L,ne)|0,o=Math.imul(L,re),r=r+Math.imul(B,oe)|0,i=(i=i+Math.imul(B,se)|0)+Math.imul(N,oe)|0,o=o+Math.imul(N,se)|0,r=r+Math.imul(M,fe)|0,i=(i=i+Math.imul(M,ce)|0)+Math.imul(P,fe)|0,o=o+Math.imul(P,ce)|0,r=r+Math.imul(O,le)|0,i=(i=i+Math.imul(O,de)|0)+Math.imul(C,le)|0,o=o+Math.imul(C,de)|0;var Ce=(c+(r=r+Math.imul(I,pe)|0)|0)+((8191&(i=(i=i+Math.imul(I,ge)|0)+Math.imul(R,pe)|0))<<13)|0;c=((o=o+Math.imul(R,ge)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,r=Math.imul(U,oe),i=(i=Math.imul(U,se))+Math.imul(L,oe)|0,o=Math.imul(L,se),r=r+Math.imul(B,fe)|0,i=(i=i+Math.imul(B,ce)|0)+Math.imul(N,fe)|0,o=o+Math.imul(N,ce)|0,r=r+Math.imul(M,le)|0,i=(i=i+Math.imul(M,de)|0)+Math.imul(P,le)|0,o=o+Math.imul(P,de)|0;var xe=(c+(r=r+Math.imul(O,pe)|0)|0)+((8191&(i=(i=i+Math.imul(O,ge)|0)+Math.imul(C,pe)|0))<<13)|0;c=((o=o+Math.imul(C,ge)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,r=Math.imul(U,fe),i=(i=Math.imul(U,ce))+Math.imul(L,fe)|0,o=Math.imul(L,ce),r=r+Math.imul(B,le)|0,i=(i=i+Math.imul(B,de)|0)+Math.imul(N,le)|0,o=o+Math.imul(N,de)|0;var Me=(c+(r=r+Math.imul(M,pe)|0)|0)+((8191&(i=(i=i+Math.imul(M,ge)|0)+Math.imul(P,pe)|0))<<13)|0;c=((o=o+Math.imul(P,ge)|0)+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,r=Math.imul(U,le),i=(i=Math.imul(U,de))+Math.imul(L,le)|0,o=Math.imul(L,de);var Pe=(c+(r=r+Math.imul(B,pe)|0)|0)+((8191&(i=(i=i+Math.imul(B,ge)|0)+Math.imul(N,pe)|0))<<13)|0;c=((o=o+Math.imul(N,ge)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863;var De=(c+(r=Math.imul(U,pe))|0)+((8191&(i=(i=Math.imul(U,ge))+Math.imul(L,pe)|0))<<13)|0;return c=((o=Math.imul(L,ge))+(i>>>13)|0)+(De>>>26)|0,De&=67108863,f[0]=me,f[1]=_e,f[2]=ye,f[3]=be,f[4]=ve,f[5]=Ae,f[6]=we,f[7]=Ee,f[8]=Se,f[9]=ke,f[10]=Ie,f[11]=Re,f[12]=Te,f[13]=Oe,f[14]=Ce,f[15]=xe,f[16]=Me,f[17]=Pe,f[18]=De,0!==c&&(f[19]=c,n.length++),n};function p(e,t,n){return(new g).mulp(e,t,n)}function g(e,t){this.x=e,this.y=t}Math.imul||(h=d),o.prototype.mulTo=function(e,t){var n=this.length+e.length;return 10===this.length&&10===e.length?h(this,e,t):n<63?d(this,e,t):n<1024?function(e,t,n){n.negative=t.negative^e.negative,n.length=e.length+t.length;for(var r=0,i=0,o=0;o>>26)|0)>>>26,s&=67108863}n.words[o]=a,r=s,s=i}return 0!==r?n.words[o]=r:n.length--,n.strip()}(this,e,t):p(this,e,t)},g.prototype.makeRBT=function(e){for(var t=new Array(e),n=o.prototype._countBits(e)-1,r=0;r>=1;return r},g.prototype.permute=function(e,t,n,r,i,o){for(var s=0;s>>=1)i++;return 1<>>=13,n[2*s+1]=8191&o,o>>>=13;for(s=2*t;s>=26,t+=i/67108864|0,t+=o>>>26,this.words[n]=67108863&o}return 0!==t&&(this.words[n]=t,this.length++),this},o.prototype.muln=function(e){return this.clone().imuln(e)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),n=0;n>>i}return t}(e);if(0===t.length)return new o(1);for(var n=this,r=0;r=0);var t,n=e%26,i=(e-n)/26,o=67108863>>>26-n<<26-n;if(0!==n){var s=0;for(t=0;t>>26-n}s&&(this.words[t]=s,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 o=e%26,s=Math.min((e-o)/26,this.length),a=67108863^67108863>>>o<s)for(this.length-=s,c=0;c=0&&(0!==u||c>=i);c--){var l=0|this.words[c];this.words[c]=u<<26-o|l>>>o,u=l&a}return f&&0!==u&&(f.words[f.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(e,t,n){return r(0===this.negative),this.iushrn(e,t,n)},o.prototype.shln=function(e){return this.clone().ishln(e)},o.prototype.ushln=function(e){return this.clone().iushln(e)},o.prototype.shrn=function(e){return this.clone().ishrn(e)},o.prototype.ushrn=function(e){return this.clone().iushrn(e)},o.prototype.testn=function(e){r("number"==typeof e&&e>=0);var t=e%26,n=(e-t)/26,i=1<=0);var t=e%26,n=(e-t)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==t&&n++,this.length=Math.min(n,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},o.prototype.isubn=function(e){if(r("number"==typeof e),r(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)-(f/67108864|0),this.words[i+n]=67108863&o}for(;i>26,this.words[i+n]=67108863&o;if(0===a)return this.strip();for(r(-1===a),a=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},o.prototype._wordDiv=function(e,t){var n=(this.length,e.length),r=this.clone(),i=e,s=0|i.words[i.length-1];0!==(n=26-this._countBits(s))&&(i=i.ushln(n),r.iushln(n),s=0|i.words[i.length-1]);var a,f=r.length-i.length;if("mod"!==t){(a=new o(null)).length=f+1,a.words=new Array(a.length);for(var c=0;c=0;l--){var d=67108864*(0|r.words[i.length+l])+(0|r.words[i.length+l-1]);for(d=Math.min(d/s|0,67108863),r._ishlnsubmul(i,d,l);0!==r.negative;)d--,r.negative=0,r._ishlnsubmul(i,1,l),r.isZero()||(r.negative^=1);a&&(a.words[l]=d)}return a&&a.strip(),r.strip(),"div"!==t&&0!==n&&r.iushrn(n),{div:a||null,mod:r}},o.prototype.divmod=function(e,t,n){return r(!e.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===e.negative?(a=this.neg().divmod(e,t),"mod"!==t&&(i=a.div.neg()),"div"!==t&&(s=a.mod.neg(),n&&0!==s.negative&&s.iadd(e)),{div:i,mod:s}):0===this.negative&&0!==e.negative?(a=this.divmod(e.neg(),t),"mod"!==t&&(i=a.div.neg()),{div:i,mod:a.mod}):0!=(this.negative&e.negative)?(a=this.neg().divmod(e.neg(),t),"div"!==t&&(s=a.mod.neg(),n&&0!==s.negative&&s.isub(e)),{div:a.div,mod:s}):e.length>this.length||this.cmp(e)<0?{div:new o(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new o(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new o(this.modn(e.words[0]))}:this._wordDiv(e,t);var i,s,a},o.prototype.div=function(e){return this.divmod(e,"div",!1).div},o.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},o.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},o.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var n=0!==t.div.negative?t.mod.isub(e):t.mod,r=e.ushrn(1),i=e.andln(1),o=n.cmp(r);return o<0||1===i&&0===o?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},o.prototype.modn=function(e){r(e<=67108863);for(var t=(1<<26)%e,n=0,i=this.length-1;i>=0;i--)n=(t*n+(0|this.words[i]))%e;return n},o.prototype.idivn=function(e){r(e<=67108863);for(var t=0,n=this.length-1;n>=0;n--){var i=(0|this.words[n])+67108864*t;this.words[n]=i/e|0,t=i%e}return this.strip()},o.prototype.divn=function(e){return this.clone().idivn(e)},o.prototype.egcd=function(e){r(0===e.negative),r(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new o(1),s=new o(0),a=new o(0),f=new o(1),c=0;t.isEven()&&n.isEven();)t.iushrn(1),n.iushrn(1),++c;for(var u=n.clone(),l=t.clone();!t.isZero();){for(var d=0,h=1;0==(t.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(t.iushrn(d);d-- >0;)(i.isOdd()||s.isOdd())&&(i.iadd(u),s.isub(l)),i.iushrn(1),s.iushrn(1);for(var p=0,g=1;0==(n.words[0]&g)&&p<26;++p,g<<=1);if(p>0)for(n.iushrn(p);p-- >0;)(a.isOdd()||f.isOdd())&&(a.iadd(u),f.isub(l)),a.iushrn(1),f.iushrn(1);t.cmp(n)>=0?(t.isub(n),i.isub(a),s.isub(f)):(n.isub(t),a.isub(i),f.isub(s))}return{a:a,b:f,gcd:n.iushln(c)}},o.prototype._invmp=function(e){r(0===e.negative),r(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,s=new o(1),a=new o(0),f=n.clone();t.cmpn(1)>0&&n.cmpn(1)>0;){for(var c=0,u=1;0==(t.words[0]&u)&&c<26;++c,u<<=1);if(c>0)for(t.iushrn(c);c-- >0;)s.isOdd()&&s.iadd(f),s.iushrn(1);for(var l=0,d=1;0==(n.words[0]&d)&&l<26;++l,d<<=1);if(l>0)for(n.iushrn(l);l-- >0;)a.isOdd()&&a.iadd(f),a.iushrn(1);t.cmp(n)>=0?(t.isub(n),s.isub(a)):(n.isub(t),a.isub(s))}return(i=0===t.cmpn(1)?s:a).cmpn(0)<0&&i.iadd(e),i},o.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),n=e.clone();t.negative=0,n.negative=0;for(var r=0;t.isEven()&&n.isEven();r++)t.iushrn(1),n.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;n.isEven();)n.iushrn(1);var i=t.cmp(n);if(i<0){var o=t;t=n,n=o}else if(0===i||0===n.cmpn(1))break;t.isub(n)}return n.iushln(r)},o.prototype.invm=function(e){return this.egcd(e).a.umod(e)},o.prototype.isEven=function(){return 0==(1&this.words[0])},o.prototype.isOdd=function(){return 1==(1&this.words[0])},o.prototype.andln=function(e){return this.words[0]&e},o.prototype.bincn=function(e){r("number"==typeof e);var t=e%26,n=(e-t)/26,i=1<>>26,a&=67108863,this.words[s]=a}return 0!==o&&(this.words[s]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(e){var t,n=e<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)t=1;else{n&&(e=-e),r(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;n--){var r=0|this.words[n],i=0|e.words[n];if(r!==i){ri&&(t=1);break}}return t},o.prototype.gtn=function(e){return 1===this.cmpn(e)},o.prototype.gt=function(e){return 1===this.cmp(e)},o.prototype.gten=function(e){return this.cmpn(e)>=0},o.prototype.gte=function(e){return this.cmp(e)>=0},o.prototype.ltn=function(e){return-1===this.cmpn(e)},o.prototype.lt=function(e){return-1===this.cmp(e)},o.prototype.lten=function(e){return this.cmpn(e)<=0},o.prototype.lte=function(e){return this.cmp(e)<=0},o.prototype.eqn=function(e){return 0===this.cmpn(e)},o.prototype.eq=function(e){return 0===this.cmp(e)},o.red=function(e){return new w(e)},o.prototype.toRed=function(e){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},o.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(e){return this.red=e,this},o.prototype.forceRed=function(e){return r(!this.red,"Already a number in reduction context"),this._forceRed(e)},o.prototype.redAdd=function(e){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},o.prototype.redIAdd=function(e){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},o.prototype.redSub=function(e){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},o.prototype.redISub=function(e){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},o.prototype.redShl=function(e){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},o.prototype.redMul=function(e){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},o.prototype.redIMul=function(e){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},o.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(e){return r(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var m={k256:null,p224:null,p192:null,p25519:null};function _(e,t){this.name=e,this.p=new o(t,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function y(){_.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function b(){_.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function v(){_.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function A(){_.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function w(e){if("string"==typeof e){var t=o._prime(e);this.m=t.p,this.prime=t}else r(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function E(e){w.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}_.prototype._tmp=function(){var e=new o(null);return e.words=new Array(Math.ceil(this.n/13)),e},_.prototype.ireduce=function(e){var t,n=e;do{this.split(n,this.tmp),t=(n=(n=this.imulK(n)).iadd(this.tmp)).bitLength()}while(t>this.n);var r=t0?n.isub(this.p):n.strip(),n},_.prototype.split=function(e,t){e.iushrn(this.n,0,t)},_.prototype.imulK=function(e){return e.imul(this.k)},i(y,_),y.prototype.split=function(e,t){for(var n=Math.min(e.length,9),r=0;r>>22,i=o}i>>>=22,e.words[r-10]=i,0===i&&e.length>10?e.length-=10:e.length-=9},y.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,n=0;n>>=26,e.words[n]=i,t=r}return 0!==t&&(e.words[e.length++]=t),e},o._prime=function(e){if(m[e])return m[e];var t;if("k256"===e)t=new y;else if("p224"===e)t=new b;else if("p192"===e)t=new v;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new A}return m[e]=t,t},w.prototype._verify1=function(e){r(0===e.negative,"red works only with positives"),r(e.red,"red works only with red numbers")},w.prototype._verify2=function(e,t){r(0==(e.negative|t.negative),"red works only with positives"),r(e.red&&e.red===t.red,"red works only with red numbers")},w.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},w.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},w.prototype.add=function(e,t){this._verify2(e,t);var n=e.add(t);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},w.prototype.iadd=function(e,t){this._verify2(e,t);var n=e.iadd(t);return n.cmp(this.m)>=0&&n.isub(this.m),n},w.prototype.sub=function(e,t){this._verify2(e,t);var n=e.sub(t);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},w.prototype.isub=function(e,t){this._verify2(e,t);var n=e.isub(t);return n.cmpn(0)<0&&n.iadd(this.m),n},w.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},w.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},w.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},w.prototype.isqr=function(e){return this.imul(e,e.clone())},w.prototype.sqr=function(e){return this.mul(e,e)},w.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(r(t%2==1),3===t){var n=this.m.add(new o(1)).iushrn(2);return this.pow(e,n)}for(var i=this.m.subn(1),s=0;!i.isZero()&&0===i.andln(1);)s++,i.iushrn(1);r(!i.isZero());var a=new o(1).toRed(this),f=a.redNeg(),c=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new o(2*u*u).toRed(this);0!==this.pow(u,c).cmp(f);)u.redIAdd(f);for(var l=this.pow(u,i),d=this.pow(e,i.addn(1).iushrn(1)),h=this.pow(e,i),p=s;0!==h.cmp(a);){for(var g=h,m=0;0!==g.cmp(a);m++)g=g.redSqr();r(m=0;r--){for(var c=t.words[r],u=f-1;u>=0;u--){var l=c>>u&1;i!==n[0]&&(i=this.sqr(i)),0!==l||0!==s?(s<<=1,s|=l,(4===++a||0===r&&0===u)&&(i=this.mul(i,n[s]),a=0,s=0)):a=0}f=26}return i},w.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},w.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},o.mont=function(e){return new E(e)},i(E,w),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 n=e.imul(t),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).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.mul=function(e,t){if(e.isZero()||t.isZero())return new o(0)._forceRed(this);var n=e.mul(t),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),s=i;return i.cmp(this.m)>=0?s=i.isub(this.m):i.cmpn(0)<0&&(s=i.iadd(this.m)),s._forceRed(this)},E.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e,this)}).call(this,n(111)(e))},function(e,t){var n,r,i=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function a(e){if(n===setTimeout)return setTimeout(e,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:o}catch(e){n=o}try{r="function"==typeof clearTimeout?clearTimeout:s}catch(e){r=s}}();var f,c=[],u=!1,l=-1;function d(){u&&f&&(u=!1,f.length?c=f.concat(c):l=-1,c.length&&h())}function h(){if(!u){var e=a(d);u=!0;for(var t=c.length;t;){for(f=c,c=[];++l1)for(var n=1;n(i>>1)-1?(i>>1)-f:f,o.isubn(a)):a=0,r[s]=a,o.iushrn(1)}return r},r.getJSF=function(e,t){var n=[[],[]];e=e.clone(),t=t.clone();for(var r=0,i=0;e.cmpn(-r)>0||t.cmpn(-i)>0;){var o,s,a,f=e.andln(3)+r&3,c=t.andln(3)+i&3;if(3===f&&(f=-1),3===c&&(c=-1),0==(1&f))o=0;else o=3!==(a=e.andln(7)+r&7)&&5!==a||2!==c?f:-f;if(n[0].push(o),0==(1&c))s=0;else s=3!==(a=t.andln(7)+i&7)&&5!==a||2!==f?c:-c;n[1].push(s),2*r===o+1&&(r=1-r),2*i===s+1&&(i=1-i),e.iushrn(1),t.iushrn(1)}return n},r.cachedProperty=function(e,t,n){var r="_"+t;e.prototype[t]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},r.parseBytes=function(e){return"string"==typeof e?r.toArray(e,"hex"):e},r.intFromLE=function(e){return new i(e,"hex","le")}},function(e,t){e.exports=function(e){return e&&e.__esModule?e:{default:e}}},function(e,t,n){"use strict";var r=n(14),i=n(2);function o(e,t){return 55296==(64512&e.charCodeAt(t))&&(!(t<0||t+1>=e.length)&&56320==(64512&e.charCodeAt(t+1)))}function s(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function a(e){return 1===e.length?"0"+e:e}function f(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 n=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),i=0;i>6|192,n[r++]=63&s|128):o(e,i)?(s=65536+((1023&s)<<10)+(1023&e.charCodeAt(++i)),n[r++]=s>>18|240,n[r++]=s>>12&63|128,n[r++]=s>>6&63|128,n[r++]=63&s|128):(n[r++]=s>>12|224,n[r++]=s>>6&63|128,n[r++]=63&s|128)}else for(i=0;i>>0}return s},t.split32=function(e,t){for(var n=new Array(4*e.length),r=0,i=0;r>>24,n[i+1]=o>>>16&255,n[i+2]=o>>>8&255,n[i+3]=255&o):(n[i+3]=o>>>24,n[i+2]=o>>>16&255,n[i+1]=o>>>8&255,n[i]=255&o)}return n},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,n){return e+t+n>>>0},t.sum32_4=function(e,t,n,r){return e+t+n+r>>>0},t.sum32_5=function(e,t,n,r,i){return e+t+n+r+i>>>0},t.sum64=function(e,t,n,r){var i=e[t],o=r+e[t+1]>>>0,s=(o>>0,e[t+1]=o},t.sum64_hi=function(e,t,n,r){return(t+r>>>0>>0},t.sum64_lo=function(e,t,n,r){return t+r>>>0},t.sum64_4_hi=function(e,t,n,r,i,o,s,a){var f=0,c=t;return f+=(c=c+r>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,n,r,i,o,s,a){return t+r+o+a>>>0},t.sum64_5_hi=function(e,t,n,r,i,o,s,a,f,c){var u=0,l=t;return u+=(l=l+r>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,n,r,i,o,s,a,f,c){return t+r+o+a+c>>>0},t.rotr64_hi=function(e,t,n){return(t<<32-n|e>>>n)>>>0},t.rotr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0},t.shr64_hi=function(e,t,n){return e>>>n},t.shr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0}},function(e,t,n){var r=n(3).Buffer,i=n(39).Transform,o=n(59).StringDecoder;function s(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}n(2)(s,i),s.prototype.update=function(e,t,n){"string"==typeof e&&(e=r.from(e,t));var i=this._update(e);return this.hashMode?this:(n&&(i=this._toString(i,n)),i)},s.prototype.setAutoPadding=function(){},s.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},s.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},s.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},s.prototype._transform=function(e,t,n){var r;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(e){r=e}finally{n(r)}},s.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(e){t=e}e(t)},s.prototype._finalOrDigest=function(e){var t=this.__final()||r.alloc(0);return e&&(t=this._toString(t,e,!0)),t},s.prototype._toString=function(e,t,n){if(this._decoder||(this._decoder=new o(t),this._encoding=t),this._encoding!==t)throw new Error("can't switch encodings");var r=this._decoder.write(e);return n&&(r+=this._decoder.end()),r},e.exports=s},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MatrixEvent=t.EventStatus=void 0;var i=n(10),o=r(n(8)),s=n(4);t.EventStatus={NOT_SENT:"not_sent",ENCRYPTING:"encrypting",SENDING:"sending",QUEUED:"queued",SENT:"sent",CANCELLED:"cancelled"};const a={};function f(e){return a[e]||(a[e]=e),a[e]}const c=function(e){["state_key","type","sender","room_id","membership"].forEach(t=>{e[t]&&(e[t]=f(e[t]))}),["membership","avatar_url","displayname"].forEach(t=>{e.content&&e.content[t]&&(e.content[t]=f(e.content[t]))}),["rel_type"].forEach(t=>{e.content&&e.content["m.relates_to"]&&e.content["m.relates_to"][t]&&(e.content["m.relates_to"][t]=f(e.content["m.relates_to"][t]))}),this.event=e||{},this.sender=null,this.target=null,this.status=null,this.error=null,this.forwardLooking=!0,this._pushActions=null,this._replacingEvent=null,this._localRedactionEvent=null,this._isCancelled=!1,this._clearEvent={},this._senderCurve25519Key=null,this._claimedEd25519Key=null,this._forwardingCurve25519KeyChain=[],this._decryptionPromise=null,this._retryDecryption=!1};t.MatrixEvent=c,o.inherits(c,i.EventEmitter),o.extend(c.prototype,{getId:function(){return this.event.event_id},getSender:function(){return this.event.sender||this.event.user_id},getType:function(){return this._clearEvent.type||this.event.type},getWireType:function(){return this.event.type},getRoomId:function(){return this.event.room_id},getTs:function(){return this.event.origin_server_ts},getDate:function(){return this.event.origin_server_ts?new Date(this.event.origin_server_ts):null},getOriginalContent:function(){return this._localRedactionEvent?{}:this._clearEvent.content||this.event.content||{}},getContent:function(){return this._localRedactionEvent?{}:this._replacingEvent?this._replacingEvent.getContent()["m.new_content"]||{}:this.getOriginalContent()},getWireContent:function(){return this.event.content||{}},getPrevContent:function(){return this.getUnsigned().prev_content||this.event.prev_content||{}},getDirectionalContent:function(){return this.forwardLooking?this.getContent():this.getPrevContent()},getAge:function(){return this.getUnsigned().age||this.event.age},getLocalAge:function(){return Date.now()-this.getTs()},getStateKey:function(){return this.event.state_key},isState:function(){return void 0!==this.event.state_key},makeEncrypted:function(e,t,n,r){this._clearEvent={type:this.event.type,content:this.event.content},this.event.type=e,this.event.content=t,this._senderCurve25519Key=n,this._claimedEd25519Key=r},isBeingDecrypted:function(){return null!=this._decryptionPromise},isDecryptionFailure:function(){return this._clearEvent&&this._clearEvent.content&&"m.bad.encrypted"===this._clearEvent.content.msgtype},attemptDecryption:async function(e){if(!this.isEncrypted())throw new Error("Attempt to decrypt event which isn't encrypted");if(this._clearEvent&&this._clearEvent.content&&"m.bad.encrypted"!==this._clearEvent.content.msgtype)throw new Error("Attempt to decrypt event which has already been encrypted");return this._decryptionPromise?(s.logger.log(`Event ${this.getId()} already being decrypted; queueing a retry`),this._retryDecryption=!0,this._decryptionPromise):(this._decryptionPromise=this._decryptionLoop(e),this._decryptionPromise)},cancelAndResendKeyRequest:function(e,t){const n=this.getWireContent();return e.requestRoomKey({algorithm:n.algorithm,room_id:this.getRoomId(),session_id:n.session_id,sender_key:n.sender_key},this.getKeyRequestRecipients(t),!0)},getKeyRequestRecipients:function(e){const t=this.getWireContent(),n=[{userId:e,deviceId:"*"}],r=this.getSender();return r!==e&&n.push({userId:r,deviceId:t.device_id}),n},_decryptionLoop:async function(e){for(await Promise.resolve();;){let t,n;this._retryDecryption=!1;try{t=e?await e.decryptEvent(this):this._badEncryptedMessage("Encryption not enabled")}catch(e){if("DecryptionError"!==e.name)return s.logger.error(`Error decrypting event (id=${this.getId()}): ${e.stack||e}`),this._decryptionPromise=null,void(this._retryDecryption=!1);if(n=e,this._retryDecryption){s.logger.log(`Got error decrypting event (id=${this.getId()}: `+`${e}), but retrying`);continue}s.logger.warn(`Error decrypting event (id=${this.getId()}): ${e.detailedString}`),t=this._badEncryptedMessage(e.message)}return this._decryptionPromise=null,this._retryDecryption=!1,this._setClearData(t),this.setPushActions(null),void this.emit("Event.decrypted",this,n)}},_badEncryptedMessage:function(e){return{clearEvent:{type:"m.room.message",content:{msgtype:"m.bad.encrypted",body:"** Unable to decrypt: "+e+" **"}}}},_setClearData:function(e){this._clearEvent=e.clearEvent,this._senderCurve25519Key=e.senderCurve25519Key||null,this._claimedEd25519Key=e.claimedEd25519Key||null,this._forwardingCurve25519KeyChain=e.forwardingCurve25519KeyChain||[]},getClearContent:function(){const e=this._clearEvent;return e&&e.content?e.content:null},isEncrypted:function(){return"m.room.encrypted"===this.event.type},getSenderKey:function(){return this._senderCurve25519Key},getKeysClaimed:function(){return{ed25519:this._claimedEd25519Key}},getClaimedEd25519Key:function(){return this._claimedEd25519Key},getForwardingCurve25519KeyChain:function(){return this._forwardingCurve25519KeyChain},getUnsigned:function(){return this.event.unsigned||{}},unmarkLocallyRedacted:function(){const e=this._localRedactionEvent;return this._localRedactionEvent=null,this.event.unsigned&&(this.event.unsigned.redacted_because=null),!!e},markLocallyRedacted:function(e){this._localRedactionEvent||(this.emit("Event.beforeRedaction",this,e),this._localRedactionEvent=e,this.event.unsigned||(this.event.unsigned={}),this.event.unsigned.redacted_because=e.event)},makeRedacted:function(e){if(!e.event)throw new Error("invalid redaction_event in makeRedacted");let t;for(t in this._localRedactionEvent=null,this.emit("Event.beforeRedaction",this,e),this._replacingEvent=null,this.event.unsigned||(this.event.unsigned={}),this.event.unsigned.redacted_because=e.event,this.event)this.event.hasOwnProperty(t)&&(u[t]||delete this.event[t]);const n=l[this.getType()]||{},r=this.getContent();for(t in r)r.hasOwnProperty(t)&&(n[t]||delete r[t])},isRedacted:function(){return Boolean(this.getUnsigned().redacted_because)},isRedaction:function(){return"m.room.redaction"===this.getType()},getPushActions:function(){return this._pushActions},setPushActions:function(e){this._pushActions=e},handleRemoteEcho:function(e){const t=this.getUnsigned(),n=this.getId();this.event=e,t.redacted_because&&(this.event.unsigned||(this.event.unsigned={}),this.event.unsigned.redacted_because=t.redacted_because),this.setStatus(null),this.getId()!==n&&this.emit("Event.localEventIdReplaced",this)},isSending(){return!!this.status},setStatus(e){this.status=e,this.emit("Event.status",this,e)},replaceLocalEventId(e){this.event.event_id=e,this.emit("Event.localEventIdReplaced",this)},isRelation(e){const t=this.getWireContent(),n=t&&t["m.relates_to"];return n&&n.rel_type&&n.event_id&&(e&&n.rel_type===e||!e)},getRelation(){return this.isRelation()?this.getWireContent()["m.relates_to"]:null},makeReplaced(e){this.isRedacted()&&e||this._replacingEvent!==e&&(this._replacingEvent=e,this.emit("Event.replaced",this))},getAssociatedStatus(){return this._replacingEvent?this._replacingEvent.status:this._localRedactionEvent?this._localRedactionEvent.status:this.status},getServerAggregatedRelation(e){const t=this.getUnsigned()["m.relations"];if(t)return t[e]},replacingEventId(){const e=this.getServerAggregatedRelation("m.replace");return e?e.event_id:this._replacingEvent?this._replacingEvent.getId():void 0},replacingEvent(){return this._replacingEvent},replacingEventDate(){const e=this.getServerAggregatedRelation("m.replace");if(e){const t=e.origin_server_ts;if(Number.isFinite(t))return new Date(t)}else if(this._replacingEvent)return this._replacingEvent.getDate()},localRedactionEvent(){return this._localRedactionEvent},getAssociatedId(){const e=this.getRelation();return e?e.event_id:this.isRedaction()?this.event.redacts:void 0},hasAssocation(){return!!this.getAssociatedId()},updateAssociatedId(e){const t=this.getRelation();t?t.event_id=e:this.isRedaction()&&(this.event.redacts=e)},flagCancelled(e=!0){this._isCancelled=e},isCancelled(){return this._isCancelled},toJSON(){const e={type:this.getType(),sender:this.getSender(),content:this.getContent(),event_id:this.getId(),origin_server_ts:this.getTs(),unsigned:this.getUnsigned(),room_id:this.getRoomId()};return this.isRedaction()&&(e.redacts=this.event.redacts),this.isEncrypted()?{decrypted:e,encrypted:this.event}:e}});const u=["event_id","type","room_id","user_id","sender","state_key","prev_state","content","unsigned","origin_server_ts"].reduce((function(e,t){return e[t]=1,e}),{}),l={"m.room.member":{membership:1},"m.room.create":{creator:1},"m.room.join_rules":{join_rule:1},"m.room.power_levels":{ban:1,events:1,events_default:1,kick:1,redact:1,state_default:1,users:1,users_default:1},"m.room.aliases":{aliases:1}}},function(e,t,n){"use strict";var r=n(40),i=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=l;var o=Object.create(n(27));o.inherits=n(2);var s=n(88),a=n(58);o.inherits(l,s);for(var f=i(a.prototype),c=0;c{a[u]={resolve:(...n)=>{delete e._sessionsInProgress[u],t(...n)},reject:(...t)=>{delete e._sessionsInProgress[u],n(...t)}}}));const l=await e.getSessionIdForDevice(u,a[u]);null!==l&&a[u]&&(delete e._sessionsInProgress[u],a[u].resolve(),delete a[u]),(null===l||r)&&i.push([t,c]),o[t][c]={device:f,sessionId:l}}}if(0===i.length)return o;let f;try{f=await t.claimOneTimeKeys(i,"signed_curve25519")}catch(e){for(const e of Object.values(a))e.resolve();throw s.logger.log("failed to claim one-time keys",e,i),e}const u=f.one_time_keys||{},l=[];for(const t in n){if(!n.hasOwnProperty(t))continue;const i=u[t]||{},f=n[t];for(let n=0;n{a[h]&&a[h].resolve(e),o[t][d].sessionId=e},e=>{throw a[h]&&a[h].resolve(),e}));else{const e="No one-time keys (alg=signed_curve25519) for device "+t+":"+d;s.logger.warn(e),a[h]&&a[h].resolve()}}}return await Promise.all(l),o},t.verifySignature=u,t.pkSign=function(t,n,r,i){let o=!1;if(n instanceof Uint8Array){const t=new e.Olm.PkSigning;i=t.init_with_seed(n),n=t,o=!0}const s=t.signatures||{};delete t.signatures;const a=t.unsigned;t.unsigned&&delete t.unsigned;try{const e=s[r]||{};return s[r]=e,e["ed25519:"+i]=n.sign(f.default.stringify(t))}finally{t.signatures=s,a&&(t.unsigned=a),o&&n.free()}},t.pkVerify=function(t,n,r){const i="ed25519:"+n;if(!(t.signatures&&t.signatures[r]&&t.signatures[r][i]))throw new Error("No signature");const o=t.signatures[r][i],s=new e.Olm.Utility,a=t.signatures;delete t.signatures;const c=t.unsigned;t.unsigned&&delete t.unsigned;try{s.ed25519_verify(n,f.default.stringify(t),o)}finally{t.signatures=a,c&&(t.unsigned=c),s.free()}},t.encodeBase64=function(e){return r.from(e).toString("base64")},t.decodeBase64=function(e){return r.from(e,"base64")},t.MEGOLM_BACKUP_ALGORITHM=t.MEGOLM_ALGORITHM=t.OLM_ALGORITHM=void 0;var s=n(4),a=o(n(8)),f=i(n(78));t.OLM_ALGORITHM="m.olm.v1.curve25519-aes-sha2";t.MEGOLM_ALGORITHM="m.megolm.v1.aes-sha2";async function c(e,t,n,r){const i=r.deviceId;try{await u(e,t,n,i,r.getFingerprint())}catch(e){return s.logger.error("Unable to verify signature on one-time key for device "+n+":"+i+":",e),null}let o;try{o=await e.createOutboundSession(r.getIdentityKey(),t.key)}catch(e){return s.logger.error("Error starting olm session with device "+n+":"+i+": "+e),null}return s.logger.log("Started new olm sessionid "+o+" for device "+n+":"+i),o}async function u(e,t,n,r,i){const o="ed25519:"+r,s=((t.signatures||{})[n]||{})[o];if(!s)throw Error("No signature");const a=Object.assign({},t);delete a.unsigned,delete a.signatures;const c=f.default.stringify(a);e.verifySignature(i,c,s)}t.MEGOLM_BACKUP_ALGORITHM="m.megolm_backup.v1.curve25519-aes-sha2"}).call(this,n(6),n(11).Buffer)},function(e,t,n){"use strict";(function(t,r){var i=n(3).Buffer,o=t.crypto||t.msCrypto;o&&o.getRandomValues?e.exports=function(e,t){if(e>4294967295)throw new RangeError("requested too many random bytes");var n=i.allocUnsafe(e);if(e>0)if(e>65536)for(var s=0;s=this._finalSize&&(this._update(this._block),this._block.fill(0));var n=8*this._len;if(n<=4294967295)this._block.writeUInt32BE(n,this._blockSize-4);else{var r=(4294967295&n)>>>0,i=(n-r)/4294967296;this._block.writeUInt32BE(i,this._blockSize-8),this._block.writeUInt32BE(r,this._blockSize-4)}this._update(this._block);var o=this._hash();return e?o.toString(e):o},i.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e.exports=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EventTimeline=i;var r=n(131);function i(e){this._eventTimelineSet=e,this._roomId=e.room?e.room.roomId:null,this._events=[],this._baseIndex=0,this._startState=new r.RoomState(this._roomId),this._startState.paginationToken=null,this._endState=new r.RoomState(this._roomId),this._endState.paginationToken=null,this._prevTimeline=null,this._nextTimeline=null,this._paginationRequests={b:null,f:null},this._name=this._roomId+":"+(new Date).toISOString()}i.BACKWARDS="b",i.FORWARDS="f",i.prototype.initialiseState=function(e){if(this._events.length>0)throw new Error("Cannot initialise state after events are added");for(const t of e)Object.freeze(t);this._startState.setStateEvents(e),this._endState.setStateEvents(e)},i.prototype.forkLive=function(e){const t=this.getState(e),n=new i(this._eventTimelineSet);return n._startState=t.clone(),n._endState=t,this._endState=t.clone(),n},i.prototype.fork=function(e){const t=this.getState(e),n=new i(this._eventTimelineSet);return n._startState=t.clone(),n._endState=t.clone(),n},i.prototype.getRoomId=function(){return this._roomId},i.prototype.getFilter=function(){return this._eventTimelineSet.getFilter()},i.prototype.getTimelineSet=function(){return this._eventTimelineSet},i.prototype.getBaseIndex=function(){return this._baseIndex},i.prototype.getEvents=function(){return this._events},i.prototype.getState=function(e){if(e==i.BACKWARDS)return this._startState;if(e==i.FORWARDS)return this._endState;throw new Error("Invalid direction '"+e+"'")},i.prototype.getPaginationToken=function(e){return this.getState(e).paginationToken},i.prototype.setPaginationToken=function(e,t){this.getState(t).paginationToken=e},i.prototype.getNeighbouringTimeline=function(e){if(e==i.BACKWARDS)return this._prevTimeline;if(e==i.FORWARDS)return this._nextTimeline;throw new Error("Invalid direction '"+e+"'")},i.prototype.setNeighbouringTimeline=function(e,t){if(this.getNeighbouringTimeline(t))throw new Error("timeline already has a neighbouring timeline - cannot reset neighbour (direction: "+t+")");if(t==i.BACKWARDS)this._prevTimeline=e;else{if(t!=i.FORWARDS)throw new Error("Invalid direction '"+t+"'");this._nextTimeline=e}this.setPaginationToken(null,t)},i.prototype.addEvent=function(e,t){const n=t?this._startState:this._endState,r=this.getTimelineSet();let o;r.room&&r.room.getUnfilteredTimelineSet()===r&&(i.setEventMetadata(e,n,t),e.isState()&&(n.setStateEvents([e]),e.sender&&("m.room.member"!==e.getType()||t)||i.setEventMetadata(e,n,t))),o=t?0:this._events.length,this._events.splice(o,0,e),t&&this._baseIndex++},i.setEventMetadata=function(e,t,n){e.sender=t.getSentinelMember(e.getSender()),"m.room.member"===e.getType()&&(e.target=t.getSentinelMember(e.getStateKey())),e.isState()&&n&&(e.forwardLooking=!1)},i.prototype.removeEvent=function(e){for(let t=this._events.length-1;t>=0;t--){const n=this._events[t];if(n.getId()==e)return this._events.splice(t,1),t=this._delta8){var n=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-n,e.length),0===this.pending.length&&(this.pending=null),e=r.join32(e,0,e.length-n,this.endian);for(var i=0;i>>24&255,r[i++]=e>>>16&255,r[i++]=e>>>8&255,r[i++]=255&e}else for(r[i++]=255&e,r[i++]=e>>>8&255,r[i++]=e>>>16&255,r[i++]=e>>>24&255,r[i++]=0,r[i++]=0,r[i++]=0,r[i++]=0,o=8;o{if(!this._indexedDB)return void t(new Error("no indexeddb support available"));i.logger.log(`connecting to indexeddb ${this._dbName}`);const n=this._indexedDB.open(this._dbName,a.VERSION);n.onupgradeneeded=e=>{const t=e.target.result,n=e.oldVersion;a.upgradeDatabase(t,n)},n.onblocked=()=>{i.logger.log("can't yet open IndexedDBCryptoStore because it is open elsewhere")},n.onerror=e=>{i.logger.log("Error connecting to indexeddb",e),t(e.target.error)},n.onsuccess=t=>{const n=t.target.result;i.logger.log(`connected to indexeddb ${this._dbName}`),e(new a.Backend(n))}}).then(e=>e.doTxn("readonly",[u.STORE_INBOUND_GROUP_SESSIONS,u.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],t=>{e.getEndToEndInboundGroupSession("","",t,()=>{})}).then(()=>e)).catch(t=>{if("VersionError"===t.name)throw i.logger.warn("Crypto DB is too new for us to use!",t),new f.InvalidCryptoStoreError(f.InvalidCryptoStoreError.TOO_NEW);i.logger.warn(`unable to connect to indexeddb ${this._dbName}`+`: falling back to localStorage store: ${t}`);try{return new o.LocalStorageCryptoStore(e.localStorage)}catch(t){return i.logger.warn(`unable to open localStorage: falling back to in-memory store: ${t}`),new s.MemoryCryptoStore}}),this._backendPromise)}deleteAllData(){return new Promise((e,t)=>{if(!this._indexedDB)return void t(new Error("no indexeddb support available"));i.logger.log(`Removing indexeddb instance: ${this._dbName}`);const n=this._indexedDB.deleteDatabase(this._dbName);n.onblocked=()=>{i.logger.log("can't yet delete IndexedDBCryptoStore because it is open elsewhere")},n.onerror=e=>{i.logger.log("Error deleting data from indexeddb",e),t(e.target.error)},n.onsuccess=()=>{i.logger.log(`Removed indexeddb instance: ${this._dbName}`),e()}}).catch(e=>{i.logger.warn(`unable to delete IndexedDBCryptoStore: ${e}`)})}getOrAddOutgoingRoomKeyRequest(e){return this._connect().then(t=>t.getOrAddOutgoingRoomKeyRequest(e))}getOutgoingRoomKeyRequest(e){return this._connect().then(t=>t.getOutgoingRoomKeyRequest(e))}getOutgoingRoomKeyRequestByState(e){return this._connect().then(t=>t.getOutgoingRoomKeyRequestByState(e))}getOutgoingRoomKeyRequestsByTarget(e,t,n){return this._connect().then(r=>r.getOutgoingRoomKeyRequestsByTarget(e,t,n))}updateOutgoingRoomKeyRequest(e,t,n){return this._connect().then(r=>r.updateOutgoingRoomKeyRequest(e,t,n))}deleteOutgoingRoomKeyRequest(e,t){return this._connect().then(n=>n.deleteOutgoingRoomKeyRequest(e,t))}getAccount(e,t){this._backendPromise.then(n=>{n.getAccount(e,t)})}storeAccount(e,t){this._backendPromise.then(n=>{n.storeAccount(e,t)})}getCrossSigningKeys(e,t){this._backendPromise.then(n=>{n.getCrossSigningKeys(e,t)})}storeCrossSigningKeys(e,t){this._backendPromise.then(n=>{n.storeCrossSigningKeys(e,t)})}countEndToEndSessions(e,t){this._backendPromise.then(n=>{n.countEndToEndSessions(e,t)})}getEndToEndSession(e,t,n,r){this._backendPromise.then(i=>{i.getEndToEndSession(e,t,n,r)})}getEndToEndSessions(e,t,n){this._backendPromise.then(r=>{r.getEndToEndSessions(e,t,n)})}getAllEndToEndSessions(e,t){this._backendPromise.then(n=>{n.getAllEndToEndSessions(e,t)})}storeEndToEndSession(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndSession(e,t,n,r)})}storeEndToEndSessionProblem(e,t,n){return this._backendPromise.then(async r=>{await r.storeEndToEndSessionProblem(e,t,n)})}getEndToEndSessionProblem(e,t){return this._backendPromise.then(async n=>await n.getEndToEndSessionProblem(e,t))}filterOutNotifiedErrorDevices(e){return this._backendPromise.then(async t=>await t.filterOutNotifiedErrorDevices(e))}getEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.getEndToEndInboundGroupSession(e,t,n,r)})}getAllEndToEndInboundGroupSessions(e,t){this._backendPromise.then(n=>{n.getAllEndToEndInboundGroupSessions(e,t)})}addEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.addEndToEndInboundGroupSession(e,t,n,r)})}storeEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndInboundGroupSession(e,t,n,r)})}storeEndToEndInboundGroupSessionWithheld(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndInboundGroupSessionWithheld(e,t,n,r)})}storeEndToEndDeviceData(e,t){this._backendPromise.then(n=>{n.storeEndToEndDeviceData(e,t)})}getEndToEndDeviceData(e,t){this._backendPromise.then(n=>{n.getEndToEndDeviceData(e,t)})}storeEndToEndRoom(e,t,n){this._backendPromise.then(r=>{r.storeEndToEndRoom(e,t,n)})}getEndToEndRooms(e,t){this._backendPromise.then(n=>{n.getEndToEndRooms(e,t)})}getSessionsNeedingBackup(e){return this._connect().then(t=>t.getSessionsNeedingBackup(e))}countSessionsNeedingBackup(e){return this._connect().then(t=>t.countSessionsNeedingBackup(e))}unmarkSessionsNeedingBackup(e,t){return this._connect().then(n=>n.unmarkSessionsNeedingBackup(e,t))}markSessionsNeedingBackup(e,t){return this._connect().then(n=>n.markSessionsNeedingBackup(e,t))}doTxn(e,t,n){return this._connect().then(r=>r.doTxn(e,t,n))}}t.IndexedDBCryptoStore=u,u.STORE_ACCOUNT="account",u.STORE_SESSIONS="sessions",u.STORE_INBOUND_GROUP_SESSIONS="inbound_group_sessions",u.STORE_INBOUND_GROUP_SESSIONS_WITHHELD="inbound_group_sessions_withheld",u.STORE_DEVICE_DATA="device_data",u.STORE_ROOMS="rooms",u.STORE_BACKUP="sessions_needing_backup"}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newVerificationError=i,t.errorFactory=o,t.errorFromEvent=function(e){const t=e.getContent();if(t){const{code:e,reason:n}=t;return{code:e,reason:n}}return{code:"Unknown error",reason:"m.unknown"}},t.newInvalidMessageError=t.newUserMismatchError=t.newKeyMismatchError=t.newUnexpectedMessageError=t.newUnknownMethodError=t.newUnknownTransactionError=t.newTimeoutError=t.newUserCancelledError=void 0;var r=n(19);function i(e,t,n){return(n=n||{}).code=e,n.reason=t,new r.MatrixEvent({type:"m.key.verification.cancel",content:n})}function o(e,t){return function(n){return i(e,t,n)}}const s=o("m.user","Cancelled by user");t.newUserCancelledError=s;const a=o("m.timeout","Timed out");t.newTimeoutError=a;const f=o("m.unknown_transaction","Unknown transaction");t.newUnknownTransactionError=f;const c=o("m.unknown_method","Unknown method");t.newUnknownMethodError=c;const u=o("m.unexpected_message","Unexpected message");t.newUnexpectedMessageError=u;const l=o("m.key_mismatch","Key mismatch");t.newKeyMismatchError=l;const d=o("m.user_error","User mismatch");t.newUserMismatchError=d;const h=o("m.invalid_message","Invalid message");t.newInvalidMessageError=h},function(e,t,n){(function(e){function n(e,t){for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];"."===i?e.splice(r,1):".."===i?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n--;n)e.unshift("..");return e}function r(e,t){if(e.filter)return e.filter(t);for(var n=[],r=0;r=-1&&!i;o--){var s=o>=0?arguments[o]:e.cwd();if("string"!=typeof s)throw new TypeError("Arguments to path.resolve must be strings");s&&(t=s+"/"+t,i="/"===s.charAt(0))}return(i?"/":"")+(t=n(r(t.split("/"),(function(e){return!!e})),!i).join("/"))||"."},t.normalize=function(e){var o=t.isAbsolute(e),s="/"===i(e,-1);return(e=n(r(e.split("/"),(function(e){return!!e})),!o).join("/"))||o||(e="."),e&&s&&(e+="/"),(o?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(r(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,n){function r(e){for(var t=0;t=0&&""===e[n];n--);return t>n?[]:e.slice(t,n-t+1)}e=t.resolve(e).substr(1),n=t.resolve(n).substr(1);for(var i=r(e.split("/")),o=r(n.split("/")),s=Math.min(i.length,o.length),a=s,f=0;f=1;--o)if(47===(t=e.charCodeAt(o))){if(!i){r=o;break}}else i=!1;return-1===r?n?"/":".":n&&1===r?"/":e.slice(0,r)},t.basename=function(e,t){var n=function(e){"string"!=typeof e&&(e+="");var t,n=0,r=-1,i=!0;for(t=e.length-1;t>=0;--t)if(47===e.charCodeAt(t)){if(!i){n=t+1;break}}else-1===r&&(i=!1,r=t+1);return-1===r?"":e.slice(n,r)}(e);return t&&n.substr(-1*t.length)===t&&(n=n.substr(0,n.length-t.length)),n},t.extname=function(e){"string"!=typeof e&&(e+="");for(var t=-1,n=0,r=-1,i=!0,o=0,s=e.length-1;s>=0;--s){var a=e.charCodeAt(s);if(47!==a)-1===r&&(i=!1,r=s+1),46===a?-1===t?t=s:1!==o&&(o=1):-1!==t&&(o=-1);else if(!i){n=s+1;break}}return-1===t||-1===r||0===o||1===o&&t===r-1&&t===n+1?"":e.slice(t,r)};var i="b"==="ab".substr(-1)?function(e,t,n){return e.substr(t,n)}:function(e,t,n){return t<0&&(t=e.length+t),e.substr(t,n)}}).call(this,n(13))},function(e,t,n){"use strict";(function(e){var r=n(16),i=n(7);Object.defineProperty(t,"__esModule",{value:!0});var o={};t.default=void 0;var s=i(n(126));Object.keys(s).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||Object.defineProperty(t,e,{enumerable:!0,get:function(){return s[e]}}))}));var a=r(n(304)),f=r(n(305));let c;s.request((function(e,t){return e.qs=f.default.stringify(e.qs||{},e.qsStringifyOptions),(0,a.default)(e,t)}));try{c=e.indexedDB}catch(e){}c&&s.setCryptoStoreFactory((function(){return new s.IndexedDBCryptoStore(c,"matrix-js-sdk:crypto")}));var u=s;t.default=u,e.matrixcs=s}).call(this,n(6))},function(e,t,n){(function(e){var r=Object.getOwnPropertyDescriptors||function(e){for(var t=Object.keys(e),n={},r=0;r=o)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),f=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),p(n)?r.showHidden=n:n&&t._extend(r,n),y(r.showHidden)&&(r.showHidden=!1),y(r.depth)&&(r.depth=2),y(r.colors)&&(r.colors=!1),y(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=f),u(r,e,r.depth)}function f(e,t){var n=a.styles[t];return n?"["+a.colors[n][0]+"m"+e+"["+a.colors[n][1]+"m":e}function c(e,t){return e}function u(e,n,r){if(e.customInspect&&n&&E(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var i=n.inspect(r,e);return _(i)||(i=u(e,i,r)),i}var o=function(e,t){if(y(t))return e.stylize("undefined","undefined");if(_(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(m(t))return e.stylize(""+t,"number");if(p(t))return e.stylize(""+t,"boolean");if(g(t))return e.stylize("null","null")}(e,n);if(o)return o;var s=Object.keys(n),a=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(s);if(e.showHidden&&(s=Object.getOwnPropertyNames(n)),w(n)&&(s.indexOf("message")>=0||s.indexOf("description")>=0))return l(n);if(0===s.length){if(E(n)){var f=n.name?": "+n.name:"";return e.stylize("[Function"+f+"]","special")}if(b(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(A(n))return e.stylize(Date.prototype.toString.call(n),"date");if(w(n))return l(n)}var c,v="",S=!1,k=["{","}"];(h(n)&&(S=!0,k=["[","]"]),E(n))&&(v=" [Function"+(n.name?": "+n.name:"")+"]");return b(n)&&(v=" "+RegExp.prototype.toString.call(n)),A(n)&&(v=" "+Date.prototype.toUTCString.call(n)),w(n)&&(v=" "+l(n)),0!==s.length||S&&0!=n.length?r<0?b(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),c=S?function(e,t,n,r,i){for(var o=[],s=0,a=t.length;s=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(c,v,k)):k[0]+v+k[1]}function l(e){return"["+Error.prototype.toString.call(e)+"]"}function d(e,t,n,r,i,o){var s,a,f;if((f=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?a=f.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):f.set&&(a=e.stylize("[Setter]","special")),T(r,i)||(s="["+i+"]"),a||(e.seen.indexOf(f.value)<0?(a=g(n)?u(e,f.value,null):u(e,f.value,n-1)).indexOf("\n")>-1&&(a=o?a.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+a.split("\n").map((function(e){return" "+e})).join("\n")):a=e.stylize("[Circular]","special")),y(s)){if(o&&i.match(/^\d+$/))return a;(s=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+a}function h(e){return Array.isArray(e)}function p(e){return"boolean"==typeof e}function g(e){return null===e}function m(e){return"number"==typeof e}function _(e){return"string"==typeof e}function y(e){return void 0===e}function b(e){return v(e)&&"[object RegExp]"===S(e)}function v(e){return"object"==typeof e&&null!==e}function A(e){return v(e)&&"[object Date]"===S(e)}function w(e){return v(e)&&("[object Error]"===S(e)||e instanceof Error)}function E(e){return"function"==typeof e}function S(e){return Object.prototype.toString.call(e)}function k(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(y(o)&&(o=e.env.NODE_DEBUG||""),n=n.toUpperCase(),!s[n])if(new RegExp("\\b"+n+"\\b","i").test(o)){var r=e.pid;s[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else s[n]=function(){};return s[n]},t.inspect=a,a.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},a.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=h,t.isBoolean=p,t.isNull=g,t.isNullOrUndefined=function(e){return null==e},t.isNumber=m,t.isString=_,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=y,t.isRegExp=b,t.isObject=v,t.isDate=A,t.isError=w,t.isFunction=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=n(167);var I=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function R(){var e=new Date,t=[k(e.getHours()),k(e.getMinutes()),k(e.getSeconds())].join(":");return[e.getDate(),I[e.getMonth()],t].join(" ")}function T(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",R(),t.format.apply(t,arguments))},t.inherits=n(168),t._extend=function(e,t){if(!t||!v(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e};var O="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function C(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(O&&e[O]){var t;if("function"!=typeof(t=e[O]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,O,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),i=[],o=0;o>>24]^u[p>>>16&255]^l[g>>>8&255]^d[255&m]^t[_++],s=c[p>>>24]^u[g>>>16&255]^l[m>>>8&255]^d[255&h]^t[_++],a=c[g>>>24]^u[m>>>16&255]^l[h>>>8&255]^d[255&p]^t[_++],f=c[m>>>24]^u[h>>>16&255]^l[p>>>8&255]^d[255&g]^t[_++],h=o,p=s,g=a,m=f;return o=(r[h>>>24]<<24|r[p>>>16&255]<<16|r[g>>>8&255]<<8|r[255&m])^t[_++],s=(r[p>>>24]<<24|r[g>>>16&255]<<16|r[m>>>8&255]<<8|r[255&h])^t[_++],a=(r[g>>>24]<<24|r[m>>>16&255]<<16|r[h>>>8&255]<<8|r[255&p])^t[_++],f=(r[m>>>24]<<24|r[h>>>16&255]<<16|r[p>>>8&255]<<8|r[255&g])^t[_++],[o>>>=0,s>>>=0,a>>>=0,f>>>=0]}var a=[0,1,2,4,8,16,32,64,128,27,54],f=function(){for(var e=new Array(256),t=0;t<256;t++)e[t]=t<128?t<<1:t<<1^283;for(var n=[],r=[],i=[[],[],[],[]],o=[[],[],[],[]],s=0,a=0,f=0;f<256;++f){var c=a^a<<1^a<<2^a<<3^a<<4;c=c>>>8^255&c^99,n[s]=c,r[c]=s;var u=e[s],l=e[u],d=e[l],h=257*e[c]^16843008*c;i[0][s]=h<<24|h>>>8,i[1][s]=h<<16|h>>>16,i[2][s]=h<<8|h>>>24,i[3][s]=h,h=16843009*d^65537*l^257*u^16843008*s,o[0][c]=h<<24|h>>>8,o[1][c]=h<<16|h>>>16,o[2][c]=h<<8|h>>>24,o[3][c]=h,0===s?s=a=1:(s=u^e[e[e[d^u]]],a^=e[e[a]])}return{SBOX:n,INV_SBOX:r,SUB_MIX:i,INV_SUB_MIX:o}}();function c(e){this._key=i(e),this._reset()}c.blockSize=16,c.keySize=32,c.prototype.blockSize=c.blockSize,c.prototype.keySize=c.keySize,c.prototype._reset=function(){for(var e=this._key,t=e.length,n=t+6,r=4*(n+1),i=[],o=0;o>>24,s=f.SBOX[s>>>24]<<24|f.SBOX[s>>>16&255]<<16|f.SBOX[s>>>8&255]<<8|f.SBOX[255&s],s^=a[o/t|0]<<24):t>6&&o%t==4&&(s=f.SBOX[s>>>24]<<24|f.SBOX[s>>>16&255]<<16|f.SBOX[s>>>8&255]<<8|f.SBOX[255&s]),i[o]=i[o-t]^s}for(var c=[],u=0;u>>24]]^f.INV_SUB_MIX[1][f.SBOX[d>>>16&255]]^f.INV_SUB_MIX[2][f.SBOX[d>>>8&255]]^f.INV_SUB_MIX[3][f.SBOX[255&d]]}this._nRounds=n,this._keySchedule=i,this._invKeySchedule=c},c.prototype.encryptBlockRaw=function(e){return s(e=i(e),this._keySchedule,f.SUB_MIX,f.SBOX,this._nRounds)},c.prototype.encryptBlock=function(e){var t=this.encryptBlockRaw(e),n=r.allocUnsafe(16);return n.writeUInt32BE(t[0],0),n.writeUInt32BE(t[1],4),n.writeUInt32BE(t[2],8),n.writeUInt32BE(t[3],12),n},c.prototype.decryptBlock=function(e){var t=(e=i(e))[1];e[1]=e[3],e[3]=t;var n=s(e,this._invKeySchedule,f.INV_SUB_MIX,f.INV_SBOX,this._nRounds),o=r.allocUnsafe(16);return o.writeUInt32BE(n[0],0),o.writeUInt32BE(n[3],4),o.writeUInt32BE(n[2],8),o.writeUInt32BE(n[1],12),o},c.prototype.scrub=function(){o(this._keySchedule),o(this._invKeySchedule),o(this._key)},e.exports.AES=c},function(e,t,n){var r=n(3).Buffer,i=n(60);e.exports=function(e,t,n,o){if(r.isBuffer(e)||(e=r.from(e,"binary")),t&&(r.isBuffer(t)||(t=r.from(t,"binary")),8!==t.length))throw new RangeError("salt should be Buffer with 8 byte length");for(var s=n/8,a=r.alloc(s),f=r.alloc(o||0),c=r.alloc(0);s>0||o>0;){var u=new i;u.update(c),u.update(e),t&&u.update(t),c=u.digest();var l=0;if(s>0){var d=a.length-s;l=Math.min(s,c.length),c.copy(a,d,0,l),s-=l}if(l0){var h=f.length-o,p=Math.min(o,c.length-l);c.copy(f,h,l,l+p),o-=p}}return c.fill(0),{key:a,iv:f}}},function(e,t,n){"use strict";var r=n(12),i=n(15),o=i.getNAF,s=i.getJSF,a=i.assert;function f(e,t){this.type=e,this.p=new r(t.p,16),this.red=t.prime?r.red(t.prime):r.mont(this.p),this.zero=new r(0).toRed(this.red),this.one=new r(1).toRed(this.red),this.two=new r(2).toRed(this.red),this.n=t.n&&new r(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var n=this.n&&this.p.div(this.n);!n||n.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function c(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=f,f.prototype.point=function(){throw new Error("Not implemented")},f.prototype.validate=function(){throw new Error("Not implemented")},f.prototype._fixedNafMul=function(e,t){a(e.precomputed);var n=e._getDoubles(),r=o(t,1,this._bitLength),i=(1<=f;t--)c=(c<<1)+r[t];s.push(c)}for(var u=this.jpoint(null,null,null),l=this.jpoint(null,null,null),d=i;d>0;d--){for(f=0;f=0;c--){for(t=0;c>=0&&0===s[c];c--)t++;if(c>=0&&t++,f=f.dblp(t),c<0)break;var u=s[c];a(0!==u),f="affine"===e.type?u>0?f.mixedAdd(i[u-1>>1]):f.mixedAdd(i[-u-1>>1].neg()):u>0?f.add(i[u-1>>1]):f.add(i[-u-1>>1].neg())}return"affine"===e.type?f.toP():f},f.prototype._wnafMulAdd=function(e,t,n,r,i){for(var a=this._wnafT1,f=this._wnafT2,c=this._wnafT3,u=0,l=0;l=1;l-=2){var h=l-1,p=l;if(1===a[h]&&1===a[p]){var g=[t[h],null,null,t[p]];0===t[h].y.cmp(t[p].y)?(g[1]=t[h].add(t[p]),g[2]=t[h].toJ().mixedAdd(t[p].neg())):0===t[h].y.cmp(t[p].y.redNeg())?(g[1]=t[h].toJ().mixedAdd(t[p]),g[2]=t[h].add(t[p].neg())):(g[1]=t[h].toJ().mixedAdd(t[p]),g[2]=t[h].toJ().mixedAdd(t[p].neg()));var m=[-3,-1,-5,-7,0,7,5,1,3],_=s(n[h],n[p]);u=Math.max(_[0].length,u),c[h]=new Array(u),c[p]=new Array(u);for(var y=0;y=0;l--){for(var E=0;l>=0;){var S=!0;for(y=0;y=0&&E++,A=A.dblp(E),l<0)break;for(y=0;y0?k=f[y][I-1>>1]:I<0&&(k=f[y][-I-1>>1].neg()),A="affine"===k.type?A.mixedAdd(k):A.add(k))}}for(l=0;l=Math.ceil((e.bitLength()+1)/t.step)},c.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,i=0;i0&&(m+="?"+_.join("&")),s.open("POST",m),this.useAuthorizationHeader&&s.setRequestHeader("Authorization","Bearer "+this.opts.accessToken),s.setRequestHeader("Content-Type",i),s.send(u),p=t.promise,p.abort=s.abort.bind(s)}else{const e={};r&&f&&(e.filename=f),p=this.authedRequest(n.callback,"POST","/upload",e,u,{prefix:"/_matrix/media/r0",headers:{"Content-Type":i},json:!1,bodyParser:g})}const m=this,_=p.finally((function(){for(let e=0;e{y&&(g&&a.clearTimeout(g),g=a.setTimeout((function(){_=!0,m&&m.abort&&m.abort(),p.reject(new u({error:"Locally timed out waiting for a response",errcode:"ORG.MATRIX.JSSDK_TIMEOUT",timeout:y}))}),y))};b();const v=p.promise;try{m=this.opts.request({uri:n,method:t,withCredentials:!1,qs:r,qsStringifyOptions:s.qsStringifyOptions,useQuerystring:!0,body:i,json:!1,timeout:y,headers:l||{},_matrix_opts:this.opts},(function(t,n,r){if(y&&(a.clearTimeout(g),_))return;c(p,e,f.opts.onlyData,h)(t,n,r)})),m&&("onprogress"in m&&(m.onprogress=e=>{b()}),m.abort&&(v.abort=m.abort.bind(m)))}catch(t){p.reject(t),e&&e(t)}return v}};const c=function(e,t,n,r){return t=t||function(){},function(o,s,a){if(!o)try{s.statusCode>=400?o=function(e,t){const n=e.statusCode,r=function(e){let t;e.getResponseHeader?t=e.getResponseHeader("Content-Type"):e.headers&&(t=e.headers["content-type"]||null);if(!t)return null;try{return(0,i.parse)(t)}catch(e){throw new Error(`Error parsing Content-Type '${t}': ${e}`)}}(e);let o;if(r)if("application/json"===r.type){const e="object"==typeof t?t:JSON.parse(t);o=new u(e)}else"text/plain"===r.type&&(o=new Error(`Server returned ${n} error: ${t}`));o||(o=new Error(`Server returned ${n} error`));return o.httpStatus=n,o}(s,a):r&&(a=r(a))}catch(e){o=new Error(`Error parsing server response: ${e}`)}if(o)e.reject(o),t(o);else{const r={code:s.statusCode,headers:s.headers,data:a};e.resolve(n?a:r),t(null,n?a:r)}}};function u(e){e=e||{},this.errcode=e.errcode,this.name=e.errcode||"Unknown error code",this.message=e.error||"Unknown message",this.data=e}u.prototype=Object.create(Error.prototype),u.prototype.constructor=u}).call(this,n(6))},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.getHttpUriForMxc=function(e,t,n,r,o,s){if("string"!=typeof t||!t)return"";if(0!==t.indexOf("mxc://"))return s?t:"";let a=t.slice(6),f="/_matrix/media/r0/download/";const c={};n&&(c.width=Math.round(n));r&&(c.height=Math.round(r));o&&(c.method=o);i.keys(c).length>0&&(f="/_matrix/media/r0/thumbnail/");const u=a.indexOf("#");let l="";u>=0&&(l=a.substr(u),a=a.substr(0,u));return e+f+a+(0===i.keys(c).length?"":"?"+i.encodeParams(c))+l},t.getIdenticonUri=function(e,t,n,r){if(!t)return null;n||(n=96);r||(r=96);const o={width:n,height:r},s=i.encodeUri("/_matrix/media/unstable/identicon/$ident",{$ident:t});return e+s+(0===i.keys(o).length?"":"?"+i.encodeParams(o))};var i=r(n(8))},function(e,t,n){"use strict";function r(e){Object.defineProperty(this,"deviceId",{enumerable:!0,value:e}),this.algorithms=[],this.keys={},this.verified=i.UNVERIFIED,this.known=!1,this.unsigned={},this.signatures={}}Object.defineProperty(t,"__esModule",{value:!0}),t.DeviceInfo=r,r.fromStorage=function(e,t){const n=new r(t);for(const t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n},r.prototype.toStorage=function(){return{algorithms:this.algorithms,keys:this.keys,verified:this.verified,known:this.known,unsigned:this.unsigned,signatures:this.signatures}},r.prototype.getFingerprint=function(){return this.keys["ed25519:"+this.deviceId]},r.prototype.getIdentityKey=function(){return this.keys["curve25519:"+this.deviceId]},r.prototype.getDisplayName=function(){return this.unsigned.device_display_name||null},r.prototype.isBlocked=function(){return this.verified==i.BLOCKED},r.prototype.isVerified=function(){return this.verified==i.VERIFIED},r.prototype.isUnverified=function(){return this.verified==i.UNVERIFIED},r.prototype.isKnown=function(){return 1==this.known},r.DeviceVerification={VERIFIED:1,UNVERIFIED:0,BLOCKED:-1};const i=r.DeviceVerification},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomString=function(e){let t="";const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(let r=0;r2&&void 0!==arguments[2]?arguments[2]:{},r=Object.create(e.prototype);for(var i in n)r[i]=n[i];return r.constructor=t,t.prototype=r,t}},function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t){function n(e,t){for(var n=0;n-1?r:o.nextTick;y.WritableState=_;var c=Object.create(n(27));c.inherits=n(2);var u={deprecate:n(181)},l=n(89),d=n(57).Buffer,h=i.Uint8Array||function(){};var p,g=n(90);function m(){}function _(e,t){a=a||n(20),e=e||{};var r=t instanceof a;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,c=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(c||0===c)?c:u,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 l=!1===e.decodeStrings;this.decodeStrings=!l,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 n=e._writableState,r=n.sync,i=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,i){--t.pendingcb,n?(o.nextTick(i,r),o.nextTick(S,e,t),e._writableState.errorEmitted=!0,e.emit("error",r)):(i(r),e._writableState.errorEmitted=!0,e.emit("error",r),S(e,t))}(e,n,r,t,i);else{var s=w(n);s||n.corked||n.bufferProcessing||!n.bufferedRequest||A(e,n),r?f(v,e,n,s,i):v(e,n,s,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 s(this)}function y(e){if(a=a||n(20),!(p.call(y,this)||this instanceof a))return new y(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)),l.call(this)}function b(e,t,n,r,i,o,s){t.writelen=r,t.writecb=s,t.writing=!0,t.sync=!0,n?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function v(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),S(e,t)}function A(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,i=new Array(r),o=t.corkedRequestsFree;o.entry=n;for(var a=0,f=!0;n;)i[a]=n,n.isBuf||(f=!1),n=n.next,a+=1;i.allBuffers=f,b(e,t,!0,t.length,i,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new s(t),t.bufferedRequestCount=0}else{for(;n;){var c=n.chunk,u=n.encoding,l=n.callback;if(b(e,t,!1,t.objectMode?1:c.length,c,u,l),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function w(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function E(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),S(e,t)}))}function S(e,t){var n=w(t);return n&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,o.nextTick(E,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}c.inherits(y,l),_.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:u.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(y,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===y&&(e&&e._writableState instanceof _)}})):p=function(e){return e instanceof this},y.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},y.prototype.write=function(e,t,n){var r,i=this._writableState,s=!1,a=!i.objectMode&&(r=e,d.isBuffer(r)||r instanceof h);return a&&!d.isBuffer(e)&&(e=function(e){return d.from(e)}(e)),"function"==typeof t&&(n=t,t=null),a?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof n&&(n=m),i.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),o.nextTick(t,n)}(this,n):(a||function(e,t,n,r){var i=!0,s=!1;return null===n?s=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(s=new TypeError("Invalid non-string/buffer chunk")),s&&(e.emit("error",s),o.nextTick(r,s),i=!1),i}(this,i,e,n))&&(i.pendingcb++,s=function(e,t,n,r,i,o){if(!n){var s=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=d.from(t,n));return t}(t,r,i);r!==s&&(n=!0,i="buffer",r=s)}var a=t.objectMode?1:r.length;t.length+=a;var f=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(y.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),y.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},y.prototype._writev=null,y.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,S(e,t),n&&(t.finished?o.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)},Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n(13),n(179).setImmediate,n(6))},function(e,t,n){"use strict";var r=n(3).Buffer,i=r.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 o(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&&(r.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=f,this.end=c,t=4;break;case"utf8":this.fillLast=a,t=4;break;case"base64":this.text=u,this.end=l,t=3;break;default:return this.write=d,void(this.end=h)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function s(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function a(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n: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 f(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function c(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function u(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?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-n))}function l(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function h(e){return e&&e.length?this.write(e):""}t.StringDecoder=o,o.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return i>0&&(e.lastNeed=i-1),i;if(--r=0)return i>0&&(e.lastNeed=i-2),i;if(--r=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=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},o.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,n){"use strict";var r=n(2),i=n(93),o=n(3).Buffer,s=new Array(16);function a(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function f(e,t){return e<>>32-t}function c(e,t,n,r,i,o,s){return f(e+(t&n|~t&r)+i+o|0,s)+t|0}function u(e,t,n,r,i,o,s){return f(e+(t&r|n&~r)+i+o|0,s)+t|0}function l(e,t,n,r,i,o,s){return f(e+(t^n^r)+i+o|0,s)+t|0}function d(e,t,n,r,i,o,s){return f(e+(n^(t|~r))+i+o|0,s)+t|0}r(a,i),a.prototype._update=function(){for(var e=s,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var n=this._a,r=this._b,i=this._c,o=this._d;n=c(n,r,i,o,e[0],3614090360,7),o=c(o,n,r,i,e[1],3905402710,12),i=c(i,o,n,r,e[2],606105819,17),r=c(r,i,o,n,e[3],3250441966,22),n=c(n,r,i,o,e[4],4118548399,7),o=c(o,n,r,i,e[5],1200080426,12),i=c(i,o,n,r,e[6],2821735955,17),r=c(r,i,o,n,e[7],4249261313,22),n=c(n,r,i,o,e[8],1770035416,7),o=c(o,n,r,i,e[9],2336552879,12),i=c(i,o,n,r,e[10],4294925233,17),r=c(r,i,o,n,e[11],2304563134,22),n=c(n,r,i,o,e[12],1804603682,7),o=c(o,n,r,i,e[13],4254626195,12),i=c(i,o,n,r,e[14],2792965006,17),n=u(n,r=c(r,i,o,n,e[15],1236535329,22),i,o,e[1],4129170786,5),o=u(o,n,r,i,e[6],3225465664,9),i=u(i,o,n,r,e[11],643717713,14),r=u(r,i,o,n,e[0],3921069994,20),n=u(n,r,i,o,e[5],3593408605,5),o=u(o,n,r,i,e[10],38016083,9),i=u(i,o,n,r,e[15],3634488961,14),r=u(r,i,o,n,e[4],3889429448,20),n=u(n,r,i,o,e[9],568446438,5),o=u(o,n,r,i,e[14],3275163606,9),i=u(i,o,n,r,e[3],4107603335,14),r=u(r,i,o,n,e[8],1163531501,20),n=u(n,r,i,o,e[13],2850285829,5),o=u(o,n,r,i,e[2],4243563512,9),i=u(i,o,n,r,e[7],1735328473,14),n=l(n,r=u(r,i,o,n,e[12],2368359562,20),i,o,e[5],4294588738,4),o=l(o,n,r,i,e[8],2272392833,11),i=l(i,o,n,r,e[11],1839030562,16),r=l(r,i,o,n,e[14],4259657740,23),n=l(n,r,i,o,e[1],2763975236,4),o=l(o,n,r,i,e[4],1272893353,11),i=l(i,o,n,r,e[7],4139469664,16),r=l(r,i,o,n,e[10],3200236656,23),n=l(n,r,i,o,e[13],681279174,4),o=l(o,n,r,i,e[0],3936430074,11),i=l(i,o,n,r,e[3],3572445317,16),r=l(r,i,o,n,e[6],76029189,23),n=l(n,r,i,o,e[9],3654602809,4),o=l(o,n,r,i,e[12],3873151461,11),i=l(i,o,n,r,e[15],530742520,16),n=d(n,r=l(r,i,o,n,e[2],3299628645,23),i,o,e[0],4096336452,6),o=d(o,n,r,i,e[7],1126891415,10),i=d(i,o,n,r,e[14],2878612391,15),r=d(r,i,o,n,e[5],4237533241,21),n=d(n,r,i,o,e[12],1700485571,6),o=d(o,n,r,i,e[3],2399980690,10),i=d(i,o,n,r,e[10],4293915773,15),r=d(r,i,o,n,e[1],2240044497,21),n=d(n,r,i,o,e[8],1873313359,6),o=d(o,n,r,i,e[15],4264355552,10),i=d(i,o,n,r,e[6],2734768916,15),r=d(r,i,o,n,e[13],1309151649,21),n=d(n,r,i,o,e[4],4149444226,6),o=d(o,n,r,i,e[11],3174756917,10),i=d(i,o,n,r,e[2],718787259,15),r=d(r,i,o,n,e[9],3951481745,21),this._a=this._a+n|0,this._b=this._b+r|0,this._c=this._c+i|0,this._d=this._d+o|0},a.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=o.allocUnsafe(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=a},function(e,t,n){"use strict";var r=n(11).Buffer,i=n(2),o=n(93),s=new Array(16),a=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],f=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],c=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],u=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],l=[0,1518500249,1859775393,2400959708,2840853838],d=[1352829926,1548603684,1836072691,2053994217,0];function h(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function p(e,t){return e<>>32-t}function g(e,t,n,r,i,o,s,a){return p(e+(t^n^r)+o+s|0,a)+i|0}function m(e,t,n,r,i,o,s,a){return p(e+(t&n|~t&r)+o+s|0,a)+i|0}function _(e,t,n,r,i,o,s,a){return p(e+((t|~n)^r)+o+s|0,a)+i|0}function y(e,t,n,r,i,o,s,a){return p(e+(t&r|n&~r)+o+s|0,a)+i|0}function b(e,t,n,r,i,o,s,a){return p(e+(t^(n|~r))+o+s|0,a)+i|0}i(h,o),h.prototype._update=function(){for(var e=s,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var n=0|this._a,r=0|this._b,i=0|this._c,o=0|this._d,h=0|this._e,v=0|this._a,A=0|this._b,w=0|this._c,E=0|this._d,S=0|this._e,k=0;k<80;k+=1){var I,R;k<16?(I=g(n,r,i,o,h,e[a[k]],l[0],c[k]),R=b(v,A,w,E,S,e[f[k]],d[0],u[k])):k<32?(I=m(n,r,i,o,h,e[a[k]],l[1],c[k]),R=y(v,A,w,E,S,e[f[k]],d[1],u[k])):k<48?(I=_(n,r,i,o,h,e[a[k]],l[2],c[k]),R=_(v,A,w,E,S,e[f[k]],d[2],u[k])):k<64?(I=y(n,r,i,o,h,e[a[k]],l[3],c[k]),R=m(v,A,w,E,S,e[f[k]],d[3],u[k])):(I=b(n,r,i,o,h,e[a[k]],l[4],c[k]),R=g(v,A,w,E,S,e[f[k]],d[4],u[k])),n=h,h=o,o=p(i,10),i=r,r=I,v=S,S=E,E=p(w,10),w=A,A=R}var T=this._b+i+E|0;this._b=this._c+o+S|0,this._c=this._d+h+v|0,this._d=this._e+n+A|0,this._e=this._a+r+w|0,this._a=T},h.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=r.alloc?r.alloc(20):new r(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=h},function(e,t,n){(t=e.exports=function(e){e=e.toLowerCase();var n=t[e];if(!n)throw new Error(e+" is not supported (we accept pull requests)");return new n}).sha=n(195),t.sha1=n(196),t.sha224=n(197),t.sha256=n(94),t.sha384=n(198),t.sha512=n(95)},function(e,t,n){"use strict";var r=n(14);function i(e){this.options=e,this.type=this.options.type,this.blockSize=8,this._init(),this.buffer=new Array(this.blockSize),this.bufferOff=0}e.exports=i,i.prototype._init=function(){},i.prototype.update=function(e){return 0===e.length?[]:"decrypt"===this.type?this._updateDecrypt(e):this._updateEncrypt(e)},i.prototype._buffer=function(e,t){for(var n=Math.min(this.buffer.length-this.bufferOff,e.length-t),r=0;r0;r--)t+=this._buffer(e,t),n+=this._flushBuffer(i,n);return t+=this._buffer(e,t),i},i.prototype.final=function(e){var t,n;return e&&(t=this.update(e)),n="encrypt"===this.type?this._finalEncrypt():this._finalDecrypt(),t?t.concat(n):n},i.prototype._pad=function(e,t){if(0===t)return!1;for(;t=0||!n.umod(e.prime1)||!n.umod(e.prime2);)n=new r(i(t));return n}e.exports=o,o.getr=s}).call(this,n(11).Buffer)},function(e,t,n){"use strict";var r=t;r.version=n(224).version,r.utils=n(15),r.rand=n(66),r.curve=n(114),r.curves=n(69),r.ec=n(235),r.eddsa=n(239)},function(e,t,n){"use strict";var r,i=t,o=n(70),s=n(114),a=n(15).assert;function f(e){"short"===e.type?this.curve=new s.short(e):"edwards"===e.type?this.curve=new s.edwards(e):this.curve=new s.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,a(this.g.validate(),"Invalid curve"),a(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function c(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var n=new f(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:n}),n}})}i.PresetCurve=f,c("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),c("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),c("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),c("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),c("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),c("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),c("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=n(234)}catch(e){r=void 0}c("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})},function(e,t,n){var r=t;r.utils=n(17),r.common=n(30),r.sha=n(228),r.ripemd=n(232),r.hmac=n(233),r.sha1=r.sha.sha1,r.sha256=r.sha.sha256,r.sha224=r.sha.sha224,r.sha384=r.sha.sha384,r.sha512=r.sha.sha512,r.ripemd160=r.ripemd.ripemd160},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MemoryCryptoStore=void 0;var i=n(4),o=r(n(8));t.MemoryCryptoStore=class{constructor(){this._outgoingRoomKeyRequests=[],this._account=null,this._crossSigningKeys=null,this._sessions={},this._sessionProblems={},this._notifiedErrorDevices={},this._inboundGroupSessions={},this._inboundGroupSessionsWithheld={},this._deviceData=null,this._rooms={},this._sessionsNeedingBackup={}}deleteAllData(){return Promise.resolve()}getOrAddOutgoingRoomKeyRequest(e){const t=e.requestBody;return o.promiseTry(()=>{const n=this._getOutgoingRoomKeyRequest(t);return n?(i.logger.log("already have key request outstanding for "+`${t.room_id} / ${t.session_id}: `+"not sending another"),n):(i.logger.log(`enqueueing key request for ${t.room_id} / `+t.session_id),this._outgoingRoomKeyRequests.push(e),e)})}getOutgoingRoomKeyRequest(e){return Promise.resolve(this._getOutgoingRoomKeyRequest(e))}_getOutgoingRoomKeyRequest(e){for(const t of this._outgoingRoomKeyRequests)if(o.deepCompare(t.requestBody,e))return t;return null}getOutgoingRoomKeyRequestByState(e){for(const t of this._outgoingRoomKeyRequests)for(const n of e)if(t.state===n)return Promise.resolve(t);return Promise.resolve(null)}getOutgoingRoomKeyRequestsByTarget(e,t,n){const r=[];for(const i of this._outgoingRoomKeyRequests)for(const o of n)i.state===o&&i.recipients.includes({userId:e,deviceId:t})&&r.push(i);return Promise.resolve(r)}updateOutgoingRoomKeyRequest(e,t,n){for(const r of this._outgoingRoomKeyRequests)if(r.requestId===e)return r.state!=t?(i.logger.warn(`Cannot update room key request from ${t} `+`as it was already updated to ${r.state}`),Promise.resolve(null)):(Object.assign(r,n),Promise.resolve(r));return Promise.resolve(null)}deleteOutgoingRoomKeyRequest(e,t){for(let n=0;ne.time-t.time)}async getEndToEndSessionProblem(e,t){const n=this._sessionProblems[e]||[];if(!n.length)return null;const r=n[n.length-1];for(const e of n)if(e.time>t)return Object.assign({},e,{fixed:r.fixed});return r.fixed?null:r}async filterOutNotifiedErrorDevices(e){const t=this._notifiedErrorDevices,n=[];for(const r of e){const{userId:e,deviceInfo:i}=r;e in t?i.deviceId in t[e]||(n.push(r),t[e][i.deviceId]=!0):(n.push(r),t[e]={[i.deviceId]:!0})}return n}getEndToEndInboundGroupSession(e,t,n,r){const i=e+"/"+t;r(this._inboundGroupSessions[i]||null,this._inboundGroupSessionsWithheld[i]||null)}getAllEndToEndInboundGroupSessions(e,t){for(const e of Object.keys(this._inboundGroupSessions))t({senderKey:e.substr(0,43),sessionId:e.substr(44),sessionData:this._inboundGroupSessions[e]});t(null)}addEndToEndInboundGroupSession(e,t,n,r){const i=e+"/"+t;void 0===this._inboundGroupSessions[i]&&(this._inboundGroupSessions[i]=n)}storeEndToEndInboundGroupSession(e,t,n,r){this._inboundGroupSessions[e+"/"+t]=n}storeEndToEndInboundGroupSessionWithheld(e,t,n,r){const i=e+"/"+t;this._inboundGroupSessionsWithheld[i]=n}getEndToEndDeviceData(e,t){t(this._deviceData)}storeEndToEndDeviceData(e,t){this._deviceData=e}storeEndToEndRoom(e,t,n){this._rooms[e]=t}getEndToEndRooms(e,t){t(this._rooms)}getSessionsNeedingBackup(e){const t=[];for(const n in this._sessionsNeedingBackup)if(this._inboundGroupSessions[n]&&(t.push({senderKey:n.substr(0,43),sessionId:n.substr(44),sessionData:this._inboundGroupSessions[n]}),e&&n.length>=e))break;return Promise.resolve(t)}countSessionsNeedingBackup(){return Promise.resolve(Object.keys(this._sessionsNeedingBackup).length)}unmarkSessionsNeedingBackup(e){for(const t of e){const e=t.senderKey+"/"+t.sessionId;delete this._sessionsNeedingBackup[e]}return Promise.resolve()}markSessionsNeedingBackup(e){for(const t of e){const e=t.senderKey+"/"+t.sessionId;this._sessionsNeedingBackup[e]=!0}return Promise.resolve()}doTxn(e,t,n){return Promise.resolve(n(null))}}},function(e,t,n){"use strict";var r=n(266),i=n(267);function o(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}t.parse=b,t.resolve=function(e,t){return b(e,!1,!0).resolve(t)},t.resolveObject=function(e,t){return e?b(e,!1,!0).resolveObject(t):t},t.format=function(e){i.isString(e)&&(e=b(e));return e instanceof o?e.format():o.prototype.format.call(e)},t.Url=o;var s=/^([a-z0-9.+-]+:)/i,a=/:[0-9]*$/,f=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,c=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),u=["'"].concat(c),l=["%","/","?",";","#"].concat(u),d=["/","?","#"],h=/^[+a-z0-9A-Z_-]{0,63}$/,p=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,g={javascript:!0,"javascript:":!0},m={javascript:!0,"javascript:":!0},_={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},y=n(268);function b(e,t,n){if(e&&i.isObject(e)&&e instanceof o)return e;var r=new o;return r.parse(e,t,n),r}o.prototype.parse=function(e,t,n){if(!i.isString(e))throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var o=e.indexOf("?"),a=-1!==o&&o127?P+="x":P+=M[D];if(!P.match(h)){var N=C.slice(0,R),j=C.slice(R+1),U=M.match(p);U&&(N.push(U[1]),j.unshift(U[2])),j.length&&(b="/"+j.join(".")+b),this.hostname=N.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),O||(this.hostname=r.toASCII(this.hostname));var L=this.port?":"+this.port:"",q=this.hostname||"";this.host=q+L,this.href+=this.host,O&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==b[0]&&(b="/"+b))}if(!g[w])for(R=0,x=u.length;R0)&&n.host.split("@"))&&(n.auth=O.shift(),n.host=n.hostname=O.shift());return n.search=e.search,n.query=e.query,i.isNull(n.pathname)&&i.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.href=n.format(),n}if(!E.length)return n.pathname=null,n.search?n.path="/"+n.search:n.path=null,n.href=n.format(),n;for(var k=E.slice(-1)[0],I=(n.host||e.host||E.length>1)&&("."===k||".."===k)||""===k,R=0,T=E.length;T>=0;T--)"."===(k=E[T])?E.splice(T,1):".."===k?(E.splice(T,1),R++):R&&(E.splice(T,1),R--);if(!A&&!w)for(;R--;R)E.unshift("..");!A||""===E[0]||E[0]&&"/"===E[0].charAt(0)||E.unshift(""),I&&"/"!==E.join("/").substr(-1)&&E.push("");var O,C=""===E[0]||E[0]&&"/"===E[0].charAt(0);S&&(n.hostname=n.host=C?"":E.length?E.shift():"",(O=!!(n.host&&n.host.indexOf("@")>0)&&n.host.split("@"))&&(n.auth=O.shift(),n.host=n.hostname=O.shift()));return(A=A||n.host&&E.length)&&!C&&E.unshift(""),E.length?n.pathname=E.join("/"):(n.pathname=null,n.path=null),i.isNull(n.pathname)&&i.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.auth=e.auth||n.auth,n.slashes=n.slashes||e.slashes,n.href=n.format(),n},o.prototype.parseHost=function(){var e=this.host,t=a.exec(e);t&&(":"!==(t=t[0])&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PushProcessor=s;var r=n(8);const i=["override","content","room","sender","underride"],o=[{rule_id:".m.rule.tombstone",default:!0,enabled:!0,conditions:[{kind:"event_match",key:"type",pattern:"m.room.tombstone"},{kind:"event_match",key:"state_key",pattern:""}],actions:["notify",{set_tweak:"highlight",value:!0}]},{rule_id:".m.rule.reaction",default:!0,enabled:!0,conditions:[{kind:"event_match",key:"type",pattern:"m.reaction"}],actions:["dont_notify"]}];function s(e){const t={},n=(e,t,n)=>{for(let r=0;r]*)([0-9]*)$/);if(!o)return!1;const s=o[1],a=parseInt(o[2]);if(isNaN(a))return!1;switch(s){case"":case"==":return i==a;case"<":return i":return i>a;case"<=":return i<=a;case">=":return i>=a;default:return!1}},l=function(t,n){let i=n.getContent();if(n.isEncrypted()&&n.getClearContent()&&(i=n.getClearContent()),!i||!i.body||"string"!=typeof i.body)return!1;const o=e.getRoom(n.getRoomId());if(!(o&&o.currentState&&o.currentState.members&&o.currentState.getMember(e.credentials.userId)))return!1;const s=o.currentState.getMember(e.credentials.userId).name,a=new RegExp("(^|\\W)"+(0,r.escapeRegExp)(s)+"(\\W|$)","i");return i.body.search(a)>-1},d=function(e,t){return!1},h=function(e,t){if(!e.key)return!1;const n=g(e.key,t);if("string"!=typeof n)return!1;if(e.value)return e.value===n;let r;return r="content.body"==e.key?p("(^|\\W)",e.pattern,"(\\W|$)"):p("^",e.pattern,"$"),!!n.match(r)},p=function(e,n,i){return t[n]?t[n]:(t[n]=new RegExp(e+(0,r.globToRegexp)(n)+i,"i"),t[n])},g=function(e,t){const n=e.split(".");let i;const o=n[0];for("content"===o?(i=t.getContent(),n.shift()):"type"===o?(i=t.getType(),n.shift()):i=t.event;n.length>0;){const e=n.shift();if((0,r.isNullOrUndefined)(i[e]))return null;i=i[e]}return i},m=function(t,r){const i=function(t,r){if(!r||!r.device)return null;if(t.getSender()==e.credentials.userId)return null;const i=Object.keys(r.device);for(let e=0;et.rule_id===e.rule_id)){const t=e.rule_id;console.warn(`Adding default global override for ${t}`),n.push(e)}}return t}(e.pushRules);return m(t,n)},this.getPushRuleById=function(t){for(const n of["device","global"])if(void 0!==e.pushRules[n])for(const r of i)if(void 0!==e.pushRules[n][r])for(const i of e.pushRules[n][r])if(i.rule_id===t)return i;return null}}s.actionListToActionsObject=function(e){const t={notify:!1,tweaks:{}};for(let n=0;n{const t=o.find(t=>t.rule_id===e.rule_id);return t?(e.default=t.default,e.conditions=t.conditions,e.actions=t.actions,e):e}),t}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Filter=o;var r=n(274);function i(e,t,n){const r=t.split(".");let i=e;for(let e=0;et!==e)}if(r)return t+" ("+e+")";return t}(this.userId,e.getDirectionalContent().displayname,t),this.rawDisplayName=e.getDirectionalContent().displayname||this.userId,n!==this.membership&&(this._updateModifiedTime(),this.emit("RoomMember.membership",e,this,n)),r!==this.name&&(this._updateModifiedTime(),this.emit("RoomMember.name",e,this,r))},a.prototype.setPowerLevelEvent=function(e){if("m.room.power_levels"!==e.getType())return;const t=e.getDirectionalContent();let n=t.users_default||0;s.forEach(s.values(t.users),(function(e){n=Math.max(n,e)}));const r=this.powerLevel,i=this.powerLevelNorm;t.users&&void 0!==t.users[this.userId]?this.powerLevel=t.users[this.userId]:void 0!==t.users_default?this.powerLevel=t.users_default:this.powerLevel=0,this.powerLevelNorm=0,n>0&&(this.powerLevelNorm=100*this.powerLevel/n),r===this.powerLevel&&i===this.powerLevelNorm||(this._updateModifiedTime(),this.emit("RoomMember.powerLevel",e,this))},a.prototype.setTypingEvent=function(e){if("m.typing"!==e.getType())return;const t=this.typing;this.typing=!1;const n=e.getContent().user_ids;s.isArray(n)&&(-1!==n.indexOf(this.userId)&&(this.typing=!0),t!==this.typing&&(this._updateModifiedTime(),this.emit("RoomMember.typing",e,this)))},a.prototype._updateModifiedTime=function(){this._modified=Date.now()},a.prototype.getLastModifiedTime=function(){return this._modified},a.prototype.isKicked=function(){return"leave"===this.membership&&this.events.member.getSender()!==this.events.member.getStateKey()},a.prototype.getDMInviter=function(){if(this.events.member){const e=this.events.member;let t=e.getContent(),n=e.getSender();if("join"===t.membership&&(t=e.getPrevContent(),n=e.getUnsigned().prev_sender),"invite"===t.membership&&t.is_direct)return n}},a.prototype.getAvatarUrl=function(e,t,n,r,i,s){void 0===i&&(i=!0);const a=this.getMxcAvatarUrl();if(!a&&!i)return null;const f=(0,o.getHttpUriForMxc)(e,a,t,n,r,s);return f||(i?(0,o.getIdenticonUri)(e,this.userId,t,n):null)},a.prototype.getMxcAvatarUrl=function(){return this.events.member?this.events.member.getDirectionalContent().avatar_url:this.user?this.user.avatarUrl:null}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ReEmitter=void 0;t.ReEmitter=class{constructor(e){this.target=e,this.boundHandlers={}}_handleEvent(e,...t){this.target.emit(e,...t)}reEmit(e,t){const n=(t,...n)=>{t(...n,e)};for(const r of t){void 0===this.boundHandlers[r]&&(this.boundHandlers[r]=this._handleEvent.bind(this,r));const t=n.bind(this,this.boundHandlers[r]);e.on(r,t)}}}},function(e,t,n){"use strict";function r(e,t){const n=`Store is invalid because ${e}, `+"please stop the client, delete all data and start the client again",r=Reflect.construct(Error,[n]);return Reflect.setPrototypeOf(r,Reflect.getPrototypeOf(this)),r.reason=e,r.value=t,r}function i(e){const t=`Crypto store is invalid because ${e}, `+"please stop the client, delete all data and start the client again",n=Reflect.construct(Error,[t]);return Reflect.setPrototypeOf(n,Reflect.getPrototypeOf(this)),n.reason=e,n.name="InvalidCryptoStoreError",n}Object.defineProperty(t,"__esModule",{value:!0}),t.InvalidStoreError=r,t.InvalidCryptoStoreError=i,r.TOGGLED_LAZY_LOADING="TOGGLED_LAZY_LOADING",r.prototype=Object.create(Error.prototype,{constructor:{value:Error,enumerable:!1,writable:!0,configurable:!0}}),Reflect.setPrototypeOf(r,Error),i.TOO_NEW="TOO_NEW",i.prototype=Object.create(Error.prototype,{constructor:{value:Error,enumerable:!1,writable:!0,configurable:!0}}),Reflect.setPrototypeOf(i,Error)},function(e,t,n){"use strict";for(var r=/[\\\"\x00-\x1F]/g,i={},o=0;o<32;++o)i[String.fromCharCode(o)]="\\U"+("0000"+o.toString(16)).slice(-4).toUpperCase();function s(e){return r.lastIndex=0,e.replace(r,(function(e){return i[e]}))}function a(e){switch(typeof e){case"string":return'"'+s(e)+'"';case"number":return isFinite(e)?e:"null";case"boolean":return e;case"object":return null===e?"null":Array.isArray(e)?function(e){for(var t="[",n="",r=0;re+": "+t[e]).join(", "));return n+="]",n}(this,n)}}t.DecryptionError=o;class s extends Error{constructor(e,t){super(e),this.name="UnknownDeviceError",this.devices=t}}t.UnknownDeviceError=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VerificationRequest=t.PHASE_DONE=t.PHASE_CANCELLED=t.PHASE_STARTED=t.PHASE_REQUESTED=t.PHASE_UNSENT=t.DONE_TYPE=t.CANCEL_TYPE=t.START_TYPE=t.REQUEST_TYPE=t.EVENT_PREFIX=void 0;var r=n(4),i=n(294),o=n(10),s=n(34);const a="m.key.verification.";t.EVENT_PREFIX=a;const f=a+"request";t.REQUEST_TYPE=f;const c=a+"start";t.START_TYPE=c;const u=a+"cancel";t.CANCEL_TYPE=u;t.DONE_TYPE="m.key.verification.done";t.PHASE_UNSENT=1;t.PHASE_REQUESTED=2;t.PHASE_STARTED=4;t.PHASE_CANCELLED=5;t.PHASE_DONE=6;class l extends o.EventEmitter{constructor(e,t,n,r){super(),this.channel=e,this._verificationMethods=t,this._client=r,this._commonMethods=[],this._setPhase(1,!1),this._requestEvent=null,this._otherUserId=n,this._initiatedByMe=null,this._startTimestamp=null}static validateEvent(e,t,n,i){const o=t.getContent();if(!e.startsWith(a))return!1;if(e===f&&!Array.isArray(o.methods))return!1;if(!(e!==f&&e!==c||"string"==typeof o.from_device&&0!==o.from_device.length))return!1;if(Number.isFinite(n)){const e=Date.now()-n;if(e>597e3||e<-3e5)return r.logger.log("received verification that is too old or from the future"),!1}return!0}get methods(){return this._commonMethods}get timeout(){const e=Date.now()-this._startTimestamp;return Math.max(0,6e5-e)}get event(){return this._requestEvent}get phase(){return this._phase}get verifier(){return this._verifier}get pending(){return 1!==this._phase&&6!==this._phase&&5!==this._phase}get initiatedByMe(){return this._initiatedByMe}get requestingUserId(){return this.initiatedByMe?this._client.getUserId():this._otherUserId}get receivingUserId(){return this.initiatedByMe?this._otherUserId:this._client.getUserId()}beginKeyVerification(e,t=null){if(!this._verifier&&this._hasValidPreStartPhase()){if(this._commonMethods.length&&!this._commonMethods.includes(e))throw(0,s.newUnknownMethodError)();if(this._verifier=this._createVerifier(e,null,t),!this._verifier)throw(0,s.newUnknownMethodError)()}return this._verifier}async sendRequest(){if(1===this._phase){this._initiatedByMe=!0,this._setPhase(2,!1);const e=[...this._verificationMethods.keys()];await this.channel.send(f,{methods:e}),this.emit("change")}}async cancel({reason:e="User declined",code:t="m.user"}={}){if(5!==this._phase){if(this._verifier)return this._verifier.cancel((0,s.errorFactory)(t,e));this._setPhase(5,!1),await this.channel.send(u,{code:t,reason:e}),this.emit("change")}}waitForVerifier(){return this.verifier?Promise.resolve(this.verifier):new Promise(e=>{const t=()=>{this.verifier&&(this.off("change",t),e(this.verifier))};this.on("change",t)})}_setPhase(e,t=!0){this._phase=e,t&&this.emit("change")}async handleEvent(e,t,n){const r=t.getContent();e!==f&&e!==c||null===this._startTimestamp&&(this._startTimestamp=n),e===f?await this._handleRequest(r,t):e===c&&await this._handleStart(r,t),this._verifier&&(e===u||this._verifier.events&&this._verifier.events.includes(e))&&this._verifier.handleEvent(t),e===u?this._handleCancel():"m.key.verification.done"===e&&this._handleDone()}async _handleRequest(e,t){if(1===this._phase){const n=e.methods;this._commonMethods=n.filter(e=>this._verificationMethods.has(e)),this._requestEvent=t,this._initiatedByMe=this._wasSentByMe(t),this._setPhase(2)}else 2!==this._phase&&(r.logger.warn("Ignoring flagged verification request from "+t.getSender()),await this.cancel((0,s.errorFromEvent)((0,s.newUnexpectedMessageError)())))}_hasValidPreStartPhase(){return 2===this._phase||this.channel.constructor.canCreateRequest(c)&&1===this._phase}async _handleStart(e,t){if(this._hasValidPreStartPhase()){const{method:n}=e;this._verificationMethods.has(n)?(1===this.phase&&(this._initiatedByMe=this._wasSentByMe(t)),this._verifier=this._createVerifier(n,t),this._setPhase(4)):await this.cancel((0,s.errorFromEvent)((0,s.newUnknownMethodError)()))}}handleVerifierSend(e,t){e===u?this._handleCancel():e===c&&(1!==this._phase&&2!==this._phase||(this._initiatedByMe=1===this.phase,this._setPhase(4)))}_handleCancel(){5!==this._phase&&this._setPhase(5)}_handleDone(){4===this._phase&&this._setPhase(6)}_createVerifier(e,t=null,n=null){const r=t&&this._wasSentByMe(t),{userId:o,deviceId:s}=this._getVerifierTarget(t,n),a=this._verificationMethods.get(e);if(a)return new a(new i.RequestCallbackChannel(this,this.channel),this._client,o,s,r?null:t);console.warn("could not find verifier constructor for method",e)}_getVerifierTarget(e,t){if(t)return t;{let t;if(e&&!this._wasSentByMe(e))t=e;else{if(!this._requestEvent||this._wasSentByMe(this._requestEvent))throw new Error("can't determine who the verifier should be targeted at. No .request or .start event and no targetDevice");t=this._requestEvent}const n=t.getSender(),r=t.getContent();return{userId:n,deviceId:r&&r.from_device}}}_wasSentByMe(e){if(e.getSender()!==this._client.getUserId())return!1;const t=e.getContent();return!(!t||t.from_device!==this._client.getDeviceId())}}t.VerificationRequest=l},function(e,t,n){"use strict";var r=Object.prototype.hasOwnProperty,i=Array.isArray,o=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),s=function(e,t){for(var n=t&&t.plainObjects?Object.create(null):{},r=0;r1;){var t=e.pop(),n=t.obj[t.prop];if(i(n)){for(var r=[],o=0;o=48&&a<=57||a>=65&&a<=90||a>=97&&a<=122?i+=r.charAt(s):a<128?i+=o[a]:a<2048?i+=o[192|a>>6]+o[128|63&a]:a<55296||a>=57344?i+=o[224|a>>12]+o[128|a>>6&63]+o[128|63&a]:(s+=1,a=65536+((1023&a)<<10|1023&r.charCodeAt(s)),i+=o[240|a>>18]+o[128|a>>12&63]+o[128|a>>6&63]+o[128|63&a])}return i},isBuffer:function(e){return!(!e||"object"!=typeof e)&&!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},isRegExp:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},maybeMap:function(e,t){if(i(e)){for(var n=[],r=0;r"),M=s(")"),P=s("&");t.Base=o,t.DOMAIN=a,t.AT=f,t.COLON=c,t.DOT=u,t.PUNCTUATION=l,t.LOCALHOST=d,t.NL=h,t.NUM=p,t.PLUS=g,t.POUND=m,t.QUERY=b,t.PROTOCOL=_,t.MAILTO=y,t.SLASH=v,t.UNDERSCORE=A,t.SYM=w,t.TLD=E,t.WS=S,t.OPENBRACE=k,t.OPENBRACKET=I,t.OPENANGLEBRACKET=R,t.OPENPAREN=T,t.CLOSEBRACE=O,t.CLOSEBRACKET=C,t.CLOSEANGLEBRACKET=x,t.CLOSEPAREN=M,t.AMPERSAND=P},function(e,t,n){var r=n(161),i=n(162),o=n(163);e.exports=function(e){return r(e)||i(e)||o()}},function(e,t,n){"use strict";var r=n(0),i=n.n(r),o=(n(9),n(152)),s=n.n(o);t.a=function(e){var t=e.message,n=e.userId,r=e.botId,o=e.client,a=function(){switch(t.sender){case"from-me":case n:return"from-me";case r:return"from-bot";default:return"from-support"}};if(e.placeholder)return i.a.createElement("div",{className:"message from-me placeholder"},i.a.createElement("div",{className:"text"},t.content.body));if("m.file"===t.content.msgtype){var f=o.mxcUrlToHttp(t.content.url);return(i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text"},i.a.createElement("a",{href:f,target:"_blank",rel:"noopener noreferrer"},t.content.body))))}if(t.content.formatted_body)return i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text",dangerouslySetInnerHTML:{__html:t.content.formatted_body}}));return i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text"},i.a.createElement(s.a,{options:{linkAttributes:{rel:"noreferrer noopener"}}},t.content.body)))}},function(e,t,n){"use strict";var r=n(0),i=n.n(r);n(9);t.a=function(e){var t=e.handleToggleOpen,n=e.handleExitChat,r=e.opened;return(i.a.createElement("div",{className:"widget-header"},i.a.createElement("button",{type:"button",className:"widget-header-minimize",onClick:t,onKeyPress:t,"aria-label":"Minimize the chat window",title:"Minimize the chat window"},i.a.createElement("span",{className:"btn-icon arrow ".concat(r?"opened":"closed")},"⌃"),i.a.createElement("span",null,"".concat(r?"Hide":"Show"," the chat"))),i.a.createElement("button",{type:"button",className:"widget-header-close",onClick:n,onKeyPress:n,"aria-label":"Exit the chat",title:"Exit the chat"},i.a.createElement("span",{className:"btn-icon"},"×"))))}},function(e,t){function n(t){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?e.exports=n=function(e){return typeof e}:e.exports=n=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(t)}e.exports=n},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){"use strict";(function(t,r){var i=n(40);e.exports=b;var o,s=n(87);b.ReadableState=y;n(10).EventEmitter;var a=function(e,t){return e.listeners(t).length},f=n(89),c=n(57).Buffer,u=t.Uint8Array||function(){};var l=Object.create(n(27));l.inherits=n(2);var d=n(176),h=void 0;h=d&&d.debuglog?d.debuglog("stream"):function(){};var p,g=n(177),m=n(90);l.inherits(b,f);var _=["error","close","destroy","pause","resume"];function y(e,t){e=e||{};var r=t instanceof(o=o||n(20));this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var i=e.highWaterMark,s=e.readableHighWaterMark,a=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(s||0===s)?s:a,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new g,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=n(59).StringDecoder),this.decoder=new p(e.encoding),this.encoding=e.encoding)}function b(e){if(o=o||n(20),!(this instanceof b))return new b(e);this._readableState=new y(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),f.call(this)}function v(e,t,n,r,i){var o,s=e._readableState;null===t?(s.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,E(e)}(e,s)):(i||(o=function(e,t){var n;r=t,c.isBuffer(r)||r instanceof u||"string"==typeof t||void 0===t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk"));var r;return n}(s,t)),o?e.emit("error",o):s.objectMode||t&&t.length>0?("string"==typeof t||s.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),r?s.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):A(e,s,t,!0):s.ended?e.emit("error",new Error("stream.push() after EOF")):(s.reading=!1,s.decoder&&!n?(t=s.decoder.write(t),s.objectMode||0!==t.length?A(e,s,t,!1):k(e,s)):A(e,s,t,!1))):r||(s.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=8388608?e=8388608:(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 E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(h("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i.nextTick(S,e):S(e))}function S(e){h("emit readable"),e.emit("readable"),O(e)}function k(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(I,e,t))}function I(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;eo.length?o.length:e;if(s===o.length?i+=o:i+=o.slice(0,e),0===(e-=s)){s===o.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=o.slice(s));break}++r}return t.length-=r,i}(e,t):function(e,t){var n=c.allocUnsafe(e),r=t.head,i=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var o=r.data,s=e>o.length?o.length:e;if(o.copy(n,n.length-e,0,s),0===(e-=s)){s===o.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=o.slice(s));break}++i}return t.length-=i,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function x(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i.nextTick(M,t,e))}function M(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function P(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return h("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?x(this):E(this),null;if(0===(e=w(e,t))&&t.ended)return 0===t.length&&x(this),null;var r,i=t.needReadable;return h("need readable",i),(0===t.length||t.length-e0?C(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&x(this)),null!==r&&this.emit("data",r),r},b.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},b.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,h("pipe count=%d opts=%j",o.pipesCount,t);var f=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?u:b;function c(t,r){h("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,h("cleanup"),e.removeListener("close",_),e.removeListener("finish",y),e.removeListener("drain",l),e.removeListener("error",m),e.removeListener("unpipe",c),n.removeListener("end",u),n.removeListener("end",b),n.removeListener("data",g),d=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}function u(){h("onend"),e.end()}o.endEmitted?i.nextTick(f):n.once("end",f),e.on("unpipe",c);var l=function(e){return function(){var t=e._readableState;h("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,O(e))}}(n);e.on("drain",l);var d=!1;var p=!1;function g(t){h("ondata"),p=!1,!1!==e.write(t)||p||((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==P(o.pipes,e))&&!d&&(h("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,p=!0),n.pause())}function m(t){h("onerror",t),b(),e.removeListener("error",m),0===a(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",y),b()}function y(){h("onfinish"),e.removeListener("close",_),b()}function b(){h("unpipe"),n.unpipe(e)}return n.on("data",g),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?s(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",m),e.once("close",_),e.once("finish",y),e.emit("pipe",n),o.flowing||(h("pipe resume"),n.resume()),e},b.prototype.unpipe=function(e){var t=this._readableState,n={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,n),this);if(!e){var r=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o=this._blockSize;){for(var o=this._blockOffset;o0;++s)this._length[s]+=a,(a=this._length[s]/4294967296|0)>0&&(this._length[s]-=4294967296*a);return this},o.prototype._update=function(){throw new Error("_update is not implemented")},o.prototype.digest=function(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 n=0;n<4;++n)this._length[n]=0;return t},o.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=o},function(e,t,n){var r=n(2),i=n(23),o=n(3).Buffer,s=[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],a=new Array(64);function f(){this.init(),this._w=a,i.call(this,64,56)}function c(e,t,n){return n^e&(t^n)}function u(e,t,n){return e&t|n&(e|t)}function l(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function d(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function h(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}r(f,i),f.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},f.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,i=0|this._b,o=0|this._c,a=0|this._d,f=0|this._e,p=0|this._f,g=0|this._g,m=0|this._h,_=0;_<16;++_)n[_]=e.readInt32BE(4*_);for(;_<64;++_)n[_]=0|(((t=n[_-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+n[_-7]+h(n[_-15])+n[_-16];for(var y=0;y<64;++y){var b=m+d(f)+c(f,p,g)+s[y]+n[y]|0,v=l(r)+u(r,i,o)|0;m=g,g=p,p=f,f=a+b|0,a=o,o=i,i=r,r=b+v|0}this._a=r+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=a+this._d|0,this._e=f+this._e|0,this._f=p+this._f|0,this._g=g+this._g|0,this._h=m+this._h|0},f.prototype._hash=function(){var e=o.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=f},function(e,t,n){var r=n(2),i=n(23),o=n(3).Buffer,s=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],a=new Array(160);function f(){this.init(),this._w=a,i.call(this,128,112)}function c(e,t,n){return n^e&(t^n)}function u(e,t,n){return e&t|n&(e|t)}function l(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function d(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function h(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function g(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function m(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function _(e,t){return e>>>0>>0?1:0}r(f,i),f.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},f.prototype._update=function(e){for(var t=this._w,n=0|this._ah,r=0|this._bh,i=0|this._ch,o=0|this._dh,a=0|this._eh,f=0|this._fh,y=0|this._gh,b=0|this._hh,v=0|this._al,A=0|this._bl,w=0|this._cl,E=0|this._dl,S=0|this._el,k=0|this._fl,I=0|this._gl,R=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 O=t[T-30],C=t[T-30+1],x=h(O,C),M=p(C,O),P=g(O=t[T-4],C=t[T-4+1]),D=m(C,O),B=t[T-14],N=t[T-14+1],j=t[T-32],U=t[T-32+1],L=M+N|0,q=x+B+_(L,M)|0;q=(q=q+P+_(L=L+D|0,D)|0)+j+_(L=L+U|0,U)|0,t[T]=q,t[T+1]=L}for(var F=0;F<160;F+=2){q=t[F],L=t[F+1];var K=u(n,r,i),G=u(v,A,w),z=l(n,v),H=l(v,n),V=d(a,S),Q=d(S,a),W=s[F],Y=s[F+1],X=c(a,f,y),J=c(S,k,I),Z=R+Q|0,$=b+V+_(Z,R)|0;$=($=($=$+X+_(Z=Z+J|0,J)|0)+W+_(Z=Z+Y|0,Y)|0)+q+_(Z=Z+L|0,L)|0;var ee=H+G|0,te=z+K+_(ee,H)|0;b=y,R=I,y=f,I=k,f=a,k=S,a=o+$+_(S=E+Z|0,E)|0,o=i,E=w,i=r,w=A,r=n,A=v,n=$+te+_(v=Z+ee|0,Z)|0}this._al=this._al+v|0,this._bl=this._bl+A|0,this._cl=this._cl+w|0,this._dl=this._dl+E|0,this._el=this._el+S|0,this._fl=this._fl+k|0,this._gl=this._gl+I|0,this._hl=this._hl+R|0,this._ah=this._ah+n+_(this._al,v)|0,this._bh=this._bh+r+_(this._bl,A)|0,this._ch=this._ch+i+_(this._cl,w)|0,this._dh=this._dh+o+_(this._dl,E)|0,this._eh=this._eh+a+_(this._el,S)|0,this._fh=this._fh+f+_(this._fl,k)|0,this._gh=this._gh+y+_(this._gl,I)|0,this._hh=this._hh+b+_(this._hl,R)|0},f.prototype._hash=function(){var e=o.allocUnsafe(64);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=f},function(e,t,n){"use strict";var r=n(2),i=n(199),o=n(18),s=n(3).Buffer,a=n(97),f=n(61),c=n(62),u=s.alloc(128);function l(e,t){o.call(this,"digest"),"string"==typeof t&&(t=s.from(t));var n="sha512"===e||"sha384"===e?128:64;(this._alg=e,this._key=t,t.length>n)?t=("rmd160"===e?new f:c(e)).update(t).digest():t.lengthn||o!=o)throw new TypeError("Bad key length")}}).call(this,n(11).Buffer)},function(e,t,n){(function(t){var n;t.browser?n="utf-8":n=parseInt(t.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary";e.exports=n}).call(this,n(13))},function(e,t,n){var r=n(97),i=n(61),o=n(62),s=n(100),a=n(101),f=n(3).Buffer,c=f.alloc(128),u={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function l(e,t,n){var s=function(e){function t(t){return o(e).update(t).digest()}return"rmd160"===e||"ripemd160"===e?function(e){return(new i).update(e).digest()}:"md5"===e?r:t}(e),a="sha512"===e||"sha384"===e?128:64;t.length>a?t=s(t):t.length>>0},t.writeUInt32BE=function(e,t,n){e[0+n]=t>>>24,e[1+n]=t>>>16&255,e[2+n]=t>>>8&255,e[3+n]=255&t},t.ip=function(e,t,n,r){for(var i=0,o=0,s=6;s>=0;s-=2){for(var a=0;a<=24;a+=8)i<<=1,i|=t>>>a+s&1;for(a=0;a<=24;a+=8)i<<=1,i|=e>>>a+s&1}for(s=6;s>=0;s-=2){for(a=1;a<=25;a+=8)o<<=1,o|=t>>>a+s&1;for(a=1;a<=25;a+=8)o<<=1,o|=e>>>a+s&1}n[r+0]=i>>>0,n[r+1]=o>>>0},t.rip=function(e,t,n,r){for(var i=0,o=0,s=0;s<4;s++)for(var a=24;a>=0;a-=8)i<<=1,i|=t>>>a+s&1,i<<=1,i|=e>>>a+s&1;for(s=4;s<8;s++)for(a=24;a>=0;a-=8)o<<=1,o|=t>>>a+s&1,o<<=1,o|=e>>>a+s&1;n[r+0]=i>>>0,n[r+1]=o>>>0},t.pc1=function(e,t,n,r){for(var i=0,o=0,s=7;s>=5;s--){for(var a=0;a<=24;a+=8)i<<=1,i|=t>>a+s&1;for(a=0;a<=24;a+=8)i<<=1,i|=e>>a+s&1}for(a=0;a<=24;a+=8)i<<=1,i|=t>>a+s&1;for(s=1;s<=3;s++){for(a=0;a<=24;a+=8)o<<=1,o|=t>>a+s&1;for(a=0;a<=24;a+=8)o<<=1,o|=e>>a+s&1}for(a=0;a<=24;a+=8)o<<=1,o|=e>>a+s&1;n[r+0]=i>>>0,n[r+1]=o>>>0},t.r28shl=function(e,t){return e<>>28-t};var r=[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,n,i){for(var o=0,s=0,a=r.length>>>1,f=0;f>>r[f]&1;for(f=a;f>>r[f]&1;n[i+0]=o>>>0,n[i+1]=s>>>0},t.expand=function(e,t,n){var r=0,i=0;r=(1&e)<<5|e>>>27;for(var o=23;o>=15;o-=4)r<<=6,r|=e>>>o&63;for(o=11;o>=3;o-=4)i|=e>>>o&63,i<<=6;i|=(31&e)<<1|e>>>31,t[n+0]=r>>>0,t[n+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 n=0,r=0;r<4;r++){n<<=4,n|=i[64*r+(e>>>18-6*r&63)]}for(r=0;r<4;r++){n<<=4,n|=i[256+64*r+(t>>>18-6*r&63)]}return n>>>0};var o=[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,n=0;n>>o[n]&1;return t>>>0},t.padSplit=function(e,t,n){for(var r=e.toString(2);r.length>>1];n=o.r28shl(n,a),i=o.r28shl(i,a),o.pc2(n,i,e.keys,s)}},f.prototype._update=function(e,t,n,r){var i=this._desState,s=o.readUInt32BE(e,t),a=o.readUInt32BE(e,t+4);o.ip(s,a,i.tmp,0),s=i.tmp[0],a=i.tmp[1],"encrypt"===this.type?this._encrypt(i,s,a,i.tmp,0):this._decrypt(i,s,a,i.tmp,0),s=i.tmp[0],a=i.tmp[1],o.writeUInt32BE(n,s,r),o.writeUInt32BE(n,a,r+4)},f.prototype._pad=function(e,t){for(var n=e.length-t,r=t;r>>0,s=d}o.rip(a,s,r,i)},f.prototype._decrypt=function(e,t,n,r,i){for(var s=n,a=t,f=e.keys.length-2;f>=0;f-=2){var c=e.keys[f],u=e.keys[f+1];o.expand(s,e.tmp,0),c^=e.tmp[0],u^=e.tmp[1];var l=o.substitute(c,u),d=s;s=(a^o.permute(l))>>>0,a=d}o.rip(s,a,r,i)}},function(e,t,n){var r=n(29),i=n(3).Buffer,o=n(106);function s(e){var t=e._cipher.encryptBlockRaw(e._prev);return o(e._prev),t}t.encrypt=function(e,t){var n=Math.ceil(t.length/16),o=e._cache.length;e._cache=i.concat([e._cache,i.allocUnsafe(16*n)]);for(var a=0;ae;)n.ishrn(1);if(n.isEven()&&n.iadd(a),n.testn(1)||n.iadd(f),t.cmp(f)){if(!t.cmp(c))for(;n.mod(u).cmp(l);)n.iadd(h)}else for(;n.mod(o).cmp(d);)n.iadd(h);if(m(p=n.shrn(1))&&m(n)&&_(p)&&_(n)&&s.test(p)&&s.test(n))return n}}},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){var r=n(12),i=n(66);function o(e){this.rand=e||new i.Rand}e.exports=o,o.create=function(e){return new o(e)},o.prototype._randbelow=function(e){var t=e.bitLength(),n=Math.ceil(t/8);do{var i=new r(this.rand.generate(n))}while(i.cmp(e)>=0);return i},o.prototype._randrange=function(e,t){var n=t.sub(e);return e.add(this._randbelow(n))},o.prototype.test=function(e,t,n){var i=e.bitLength(),o=r.mont(e),s=new r(1).toRed(o);t||(t=Math.max(1,i/48|0));for(var a=e.subn(1),f=0;!a.testn(f);f++);for(var c=e.shrn(f),u=a.toRed(o);t>0;t--){var l=this._randrange(new r(2),a);n&&n(l);var d=l.toRed(o).redPow(c);if(0!==d.cmp(s)&&0!==d.cmp(u)){for(var h=1;h0;t--){var u=this._randrange(new r(2),s),l=e.gcd(u);if(0!==l.cmpn(1))return l;var d=u.toRed(i).redPow(f);if(0!==d.cmp(o)&&0!==d.cmp(c)){for(var h=1;h>8,s=255&i;o?n.push(o,s):n.push(s)}return n},r.zero2=i,r.toHex=o,r.encode=function(e,t){return"hex"===t?o(e):e}},function(e,t,n){"use strict";var r=t;r.base=n(43),r.short=n(225),r.mont=n(226),r.edwards=n(227)},function(e,t,n){"use strict";var r=n(17).rotr32;function i(e,t,n){return e&t^~e&n}function o(e,t,n){return e&t^e&n^t&n}function s(e,t,n){return e^t^n}t.ft_1=function(e,t,n,r){return 0===e?i(t,n,r):1===e||3===e?s(t,n,r):2===e?o(t,n,r):void 0},t.ch32=i,t.maj32=o,t.p32=s,t.s0_256=function(e){return r(e,2)^r(e,13)^r(e,22)},t.s1_256=function(e){return r(e,6)^r(e,11)^r(e,25)},t.g0_256=function(e){return r(e,7)^r(e,18)^e>>>3},t.g1_256=function(e){return r(e,17)^r(e,19)^e>>>10}},function(e,t,n){"use strict";var r=n(17),i=n(30),o=n(115),s=n(14),a=r.sum32,f=r.sum32_4,c=r.sum32_5,u=o.ch32,l=o.maj32,d=o.s0_256,h=o.s1_256,p=o.g0_256,g=o.g1_256,m=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 y(){if(!(this instanceof y))return new y;m.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=_,this.W=new Array(64)}r.inherits(y,m),e.exports=y,y.blockSize=512,y.outSize=256,y.hmacStrength=192,y.padLength=64,y.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r>6],i=0==(32&n);if(31==(31&n)){var o=n;for(n=0;128==(128&o);){if(o=e.readUInt8(t),e.isError(o))return o;n<<=7,n|=127&o}}else n&=31;return{cls:r,primitive:i,tag:n,tagStr:a.tag[n]}}function l(e,t,n){var r=e.readUInt8(n);if(e.isError(r))return r;if(!t&&128===r)return null;if(0==(128&r))return r;var i=127&r;if(i>4)return e.error("length octect is too long");r=0;for(var o=0;o=31)return r.error("Multi-octet tag encoding unsupported");t||(i|=32);return i|=a.tagClassByName[n||"universal"]<<6}(e,t,n,this.reporter);if(r.length<128)return(o=new i(2))[0]=s,o[1]=r.length,this._createEncoderBuffer([o,r]);for(var f=1,c=r.length;c>=256;c>>=8)f++;(o=new i(2+f))[0]=s,o[1]=128|f;c=1+f;for(var u=r.length;u>0;c--,u>>=8)o[c]=255&u;return this._createEncoderBuffer([o,r])},c.prototype._encodeStr=function(e,t){if("bitstr"===t)return this._createEncoderBuffer([0|e.unused,e.data]);if("bmpstr"===t){for(var n=new i(2*e.length),r=0;r=40)return this.reporter.error("Second objid identifier OOB");e.splice(0,2,40*e[0]+e[1])}var o=0;for(r=0;r=128;s>>=7)o++}var a=new i(o),f=a.length-1;for(r=e.length-1;r>=0;r--){s=e[r];for(a[f--]=127&s;(s>>=7)>0;)a[f--]=128|127&s}return this._createEncoderBuffer(a)},c.prototype._encodeTime=function(e,t){var n,r=new Date(e);return"gentime"===t?n=[u(r.getFullYear()),u(r.getUTCMonth()+1),u(r.getUTCDate()),u(r.getUTCHours()),u(r.getUTCMinutes()),u(r.getUTCSeconds()),"Z"].join(""):"utctime"===t?n=[u(r.getFullYear()%100),u(r.getUTCMonth()+1),u(r.getUTCDate()),u(r.getUTCHours()),u(r.getUTCMinutes()),u(r.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+t+" time is not supported yet"),this._encodeStr(n,"octstr")},c.prototype._encodeNull=function(){return this._createEncoderBuffer("")},c.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 n=e.toArray();!e.sign&&128&n[0]&&n.unshift(0),e=new i(n)}if(i.isBuffer(e)){var r=e.length;0===e.length&&r++;var o=new i(r);return e.copy(o),0===e.length&&(o[0]=0),this._createEncoderBuffer(o)}if(e<128)return this._createEncoderBuffer(e);if(e<256)return this._createEncoderBuffer([0,e]);r=1;for(var s=e;s>=256;s>>=8)r++;for(s=(o=new Array(r)).length-1;s>=0;s--)o[s]=255&e,e>>=8;return 128&o[0]&&o.unshift(0),this._createEncoderBuffer(new i(o))},c.prototype._encodeBool=function(e){return this._createEncoderBuffer(e?255:0)},c.prototype._use=function(e,t){return"function"==typeof e&&(e=e(t)),e._getEncoder("der").tree},c.prototype._skipDefault=function(e,t,n){var r,i=this._baseState;if(null===i.default)return!1;var o=e.join();if(void 0===i.defaultBuffer&&(i.defaultBuffer=this._encodeValue(i.default,t,n).join()),o.length!==i.defaultBuffer.length)return!1;for(r=0;r(0,o.default)(n(134)));let M;t.ContentHelpers=x;let P=()=>new s.MemoryCryptoStore}).call(this,n(6))},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MemoryStore=s;var i=n(45),o=r(n(8));function s(e){e=e||{},this.rooms={},this.groups={},this.users={},this.syncToken=null,this.filters={},this.accountData={},this.localStorage=e.localStorage,this._oobMembers={},this._clientOptions={}}s.prototype={getSyncToken:function(){return this.syncToken},isNewlyCreated:function(){return Promise.resolve(!0)},setSyncToken:function(e){this.syncToken=e},storeGroup:function(e){this.groups[e.groupId]=e},getGroup:function(e){return this.groups[e]||null},getGroups:function(){return o.values(this.groups)},storeRoom:function(e){this.rooms[e.roomId]=e,e.currentState.on("RoomState.members",this._onRoomMember.bind(this));const t=this;e.currentState.getMembers().forEach((function(n){t._onRoomMember(null,e.currentState,n)}))},_onRoomMember:function(e,t,n){if("invite"===n.membership)return;const r=this.users[n.userId]||new i.User(n.userId);n.name&&(r.setDisplayName(n.name),n.events.member&&r.setRawDisplayName(n.events.member.getDirectionalContent().displayname)),n.events.member&&n.events.member.getContent().avatar_url&&r.setAvatarUrl(n.events.member.getContent().avatar_url),this.users[r.userId]=r},getRoom:function(e){return this.rooms[e]||null},getRooms:function(){return o.values(this.rooms)},removeRoom:function(e){this.rooms[e]&&this.rooms[e].removeListener("RoomState.members",this._onRoomMember),delete this.rooms[e]},getRoomSummaries:function(){return o.map(o.values(this.rooms),(function(e){return e.summary}))},storeUser:function(e){this.users[e.userId]=e},getUser:function(e){return this.users[e]||null},getUsers:function(){return o.values(this.users)},scrollback:function(e,t){return[]},storeEvents:function(e,t,n,r){},storeFilter:function(e){e&&(this.filters[e.userId]||(this.filters[e.userId]={}),this.filters[e.userId][e.filterId]=e)},getFilter:function(e,t){return this.filters[e]&&this.filters[e][t]?this.filters[e][t]:null},getFilterIdByName:function(e){if(!this.localStorage)return null;try{return this.localStorage.getItem("mxjssdk_memory_filter_"+e)}catch(e){}return null},setFilterIdByName:function(e,t){if(this.localStorage)try{this.localStorage.setItem("mxjssdk_memory_filter_"+e,t)}catch(e){}},storeAccountDataEvents:function(e){const t=this;e.forEach((function(e){t.accountData[e.getType()]=e}))},getAccountData:function(e){return this.accountData[e]},setSyncData:function(e){return Promise.resolve()},wantsSave:function(){return!1},save:function(e){},startup:function(){return Promise.resolve()},getSavedSync:function(){return Promise.resolve(null)},getSavedSyncToken:function(){return Promise.resolve(null)},deleteAllData:function(){return this.rooms={},this.users={},this.syncToken=null,this.filters={},this.accountData={},Promise.resolve()},getOutOfBandMembers:function(e){return Promise.resolve(this._oobMembers[e]||null)},setOutOfBandMembers:function(e,t){return this._oobMembers[e]=t,Promise.resolve()},clearOutOfBandMembers:function(){return this._oobMembers={},Promise.resolve()},getClientOptions:function(){return Promise.resolve(this._clientOptions)},storeClientOptions:function(e){return this._clientOptions=Object.assign({},e),Promise.resolve()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SERVICE_TYPES=void 0;const r=Object.freeze({IS:"SERVICE_TYPE_IS",IM:"SERVICE_TYPE_IM"});t.SERVICE_TYPES=r},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.Room=m;var i=n(10),o=n(130),s=n(24),a=n(47),f=r(n(8)),c=n(19),u=n(75),l=n(277),d=n(4),h=n(76);const p=["1","2","3","4","5"];function g(e,t,n){const r={content:{},type:"m.receipt",room_id:t.getRoomId()};return r.content[t.getId()]={},r.content[t.getId()][n]={},r.content[t.getId()][n][e]={ts:t.getTs()},new c.MatrixEvent(r)}function m(e,t,n,r){if((r=r||{}).pendingEventOrdering=r.pendingEventOrdering||"chronological",this.reEmitter=new h.ReEmitter(this),-1===["chronological","detached"].indexOf(r.pendingEventOrdering))throw new Error("opts.pendingEventOrdering MUST be either 'chronological' or 'detached'. Got: '"+r.pendingEventOrdering+"'");this.myUserId=n,this.roomId=e,this.name=e,this.tags={},this.accountData={},this.summary=null,this.storageToken=r.storageToken,this._opts=r,this._txnToEvent={},this._receipts={},this._receiptCacheByEventId={},this._realReceipts={},this._notificationCounts={},this._timelineSets=[new o.EventTimelineSet(this,r)],this.reEmitter.reEmit(this.getUnfilteredTimelineSet(),["Room.timeline","Room.timelineReset"]),this._fixUpLegacyTimelineFields(),this._filteredTimelineSets={},"detached"==this._opts.pendingEventOrdering&&(this._pendingEventList=[]),this._blacklistUnverifiedDevices=null,this._selfMembership=null,this._summaryHeroes=null,this._client=t,this._opts.lazyLoadMembers?this._membersPromise=null:this._membersPromise=Promise.resolve()}f.inherits(m,i.EventEmitter),m.prototype.getVersion=function(){const e=this.currentState.getStateEvents("m.room.create","");if(!e)return d.logger.warn("Room "+this.room_id+" does not have an m.room.create event"),"1";const t=e.getContent().room_version;return void 0===t?"1":t},m.prototype.shouldUpgradeToVersion=function(){return p.includes(this.getVersion())?null:"5"},m.prototype.getRecommendedVersion=async function(){let e=(await this._client.getCapabilities())["m.room_versions"];if(!e){e={default:"5",available:{}};for(const t of p)e.available[t]="stable"}let t=this._checkVersionAgainstCapability(e);if(t.urgent&&t.needsUpgrade){if(d.logger.warn("Refreshing room version capability because the server looks to be supporting a newer room version we don't know about."),e=(await this._client.getCapabilities(!0))["m.room_versions"],!e)return d.logger.warn("No room version capability - assuming upgrade required."),t;t=this._checkVersionAgainstCapability(e)}return t},m.prototype._checkVersionAgainstCapability=function(e){const t=this.getVersion();d.logger.log(`[${this.roomId}] Current version: ${t}`),d.logger.log(`[${this.roomId}] Version capability: `,e);const n={version:t,needsUpgrade:!1,urgent:!1};return t===e.default?n:Object.keys(e.available).filter(t=>"stable"===e.available[t]).includes(t)?n:(n.version=e.default,n.needsUpgrade=!0,n.urgent=!!this.getVersion().match(/^[0-9]+[0-9.]*$/g),n.urgent?d.logger.warn(`URGENT upgrade required on ${this.roomId}`):d.logger.warn(`Non-urgent upgrade required on ${this.roomId}`),n)},m.prototype.userMayUpgradeRoom=function(e){return this.currentState.maySendStateEvent("m.room.tombstone",e)},m.prototype.getPendingEvents=function(){if("detached"!==this._opts.pendingEventOrdering)throw new Error("Cannot call getPendingEvents with pendingEventOrdering == "+this._opts.pendingEventOrdering);return this._pendingEventList},m.prototype.hasPendingEvent=function(e){if("detached"!==this._opts.pendingEventOrdering)throw new Error("Cannot call hasPendingEvent with pendingEventOrdering == "+this._opts.pendingEventOrdering);return this._pendingEventList.some(t=>t.getId()===e)},m.prototype.getLiveTimeline=function(){return this.getUnfilteredTimelineSet().getLiveTimeline()},m.prototype.getLastActiveTimestamp=function(){const e=this.getLiveTimeline().getEvents();if(e.length){return e[e.length-1].getTs()}return Number.MIN_SAFE_INTEGER},m.prototype.getMyMembership=function(){return this._selfMembership},m.prototype.getDMInviter=function(){if(this.myUserId){const e=this.getMember(this.myUserId);if(e)return e.getDMInviter()}if("invite"===this._selfMembership){if(2==this.getInvitedAndJoinedMemberCount()&&this._summaryHeroes.length)return this._summaryHeroes[0]}},m.prototype.guessDMUserId=function(){const e=this.getMember(this.myUserId);if(e){const t=e.getDMInviter();if(t)return t}if(Array.isArray(this._summaryHeroes)&&this._summaryHeroes.length)return this._summaryHeroes[0];const t=this.currentState.getMembers().find(e=>e.userId!==this.myUserId);return t?t.userId:this.myUserId},m.prototype.getAvatarFallbackMember=function(){if(this.getInvitedAndJoinedMemberCount()>2)return;const e=Array.isArray(this._summaryHeroes)&&this._summaryHeroes.length;if(e){const e=this._summaryHeroes.map(e=>this.getMember(e)).find(e=>!!e);if(e)return e}const t=this.currentState.getMembers();if(t.length<=2){const e=t.find(e=>e.userId!==this.myUserId);if(e)return e}if(e){const e=this._summaryHeroes.map(e=>this._client.getUser(e)).find(e=>!!e);if(e){const t=new u.RoomMember(this.roomId,e.userId);return t.user=e,t}}},m.prototype.updateMyMembership=function(e){const t=this._selfMembership;this._selfMembership=e,t!==e&&("leave"===e&&this._cleanupAfterLeaving(),this.emit("Room.myMembership",this,e,t))},m.prototype._loadMembersFromServer=async function(){const e=this._client.store.getSyncToken(),t=f.encodeParams({not_membership:"leave",at:e}),n=f.encodeUri("/rooms/$roomId/members?"+t,{$roomId:this.roomId}),r=this._client._http;return(await r.authedRequest(void 0,"GET",n)).chunk},m.prototype._loadMembers=async function(){let e=!1,t=await this._client.store.getOutOfBandMembers(this.roomId);return null===t&&(e=!0,t=await this._loadMembersFromServer(),d.logger.log(`LL: got ${t.length} `+`members from server for room ${this.roomId}`)),{memberEvents:t.map(this._client.getEventMapper()),fromServer:e}},m.prototype.loadMembersIfNeeded=function(){if(this._membersPromise)return this._membersPromise;this.currentState.markOutOfBandMembersStarted();const e=this._loadMembers().then(e=>(this.currentState.setOutOfBandMembers(e.memberEvents),this._client.isCryptoEnabled()&&this._client.isRoomEncrypted(this.roomId)&&this._client._crypto.trackRoomDevices(this.roomId),e.fromServer)).catch(e=>{throw this._membersPromise=null,this.currentState.markOutOfBandMembersFailed(),e});return e.then(e=>{if(e){const e=this.currentState.getMembers().filter(e=>e.isOutOfBand()).map(e=>e.events.member.event);return d.logger.log(`LL: telling store to write ${e.length}`+` members for room ${this.roomId}`),this._client.store.setOutOfBandMembers(this.roomId,e).catch(e=>{d.logger.log("LL: storing OOB room members failed, oh well",e)})}}).catch(e=>{d.logger.error(e)}),this._membersPromise=e,this._membersPromise},m.prototype.clearLoadedMembersIfNeeded=async function(){this._opts.lazyLoadMembers&&this._membersPromise&&(await this.loadMembersIfNeeded(),await this._client.store.clearOutOfBandMembers(this.roomId),this.currentState.clearOutOfBandMembers(),this._membersPromise=null)},m.prototype._cleanupAfterLeaving=function(){this.clearLoadedMembersIfNeeded().catch(e=>{d.logger.error("error after clearing loaded members from "+`room ${this.roomId} after leaving`),d.logger.log(e)})},m.prototype.resetLiveTimeline=function(e,t){for(let n=0;ne.isUnverified()))return!0}return!1},m.prototype.getTimelineSets=function(){return this._timelineSets},m.prototype.getUnfilteredTimelineSet=function(){return this._timelineSets[0]},m.prototype.getTimelineForEvent=function(e){return this.getUnfilteredTimelineSet().getTimelineForEvent(e)},m.prototype.addTimeline=function(){return this.getUnfilteredTimelineSet().addTimeline()},m.prototype.findEventById=function(e){return this.getUnfilteredTimelineSet().findEventById(e)},m.prototype.getUnreadNotificationCount=function(e){return e=e||"total",this._notificationCounts[e]},m.prototype.setUnreadNotificationCount=function(e,t){this._notificationCounts[e]=t},m.prototype.setSummary=function(e){const t=e["m.heroes"],n=e["m.joined_member_count"],r=e["m.invited_member_count"];Number.isInteger(n)&&this.currentState.setJoinedMemberCount(n),Number.isInteger(r)&&this.currentState.setInvitedMemberCount(r),Array.isArray(t)&&(this._summaryHeroes=t.filter(e=>e!==this.myUserId))},m.prototype.setBlacklistUnverifiedDevices=function(e){this._blacklistUnverifiedDevices=e},m.prototype.getBlacklistUnverifiedDevices=function(){return this._blacklistUnverifiedDevices},m.prototype.getAvatarUrl=function(e,t,n,r,i){const o=this.currentState.getStateEvents("m.room.avatar","");if(void 0===i&&(i=!0),!o&&!i)return null;const s=o?o.getContent().url:null;return s?(0,a.getHttpUriForMxc)(e,s,t,n,r):i?(0,a.getIdenticonUri)(e,this.roomId,t,n):null},m.prototype.getAliases=function(){const e=[],t=this.currentState.getStateEvents("m.room.aliases");if(t)for(let n=0;n"string"==typeof e&&("#"===e[0]&&!!e.endsWith(`:${r.getStateKey()}`)));Array.prototype.push.apply(e,t)}}return e},m.prototype.getCanonicalAlias=function(){const e=this.currentState.getStateEvents("m.room.canonical_alias","");return e?e.getContent().alias:null},m.prototype.addEventsToTimeline=function(e,t,n,r){n.getTimelineSet().addEventsToTimeline(e,t,n,r)},m.prototype.getMember=function(e){return this.currentState.getMember(e)},m.prototype.getJoinedMembers=function(){return this.getMembersWithMembership("join")},m.prototype.getJoinedMemberCount=function(){return this.currentState.getJoinedMemberCount()},m.prototype.getInvitedMemberCount=function(){return this.currentState.getInvitedMemberCount()},m.prototype.getInvitedAndJoinedMemberCount=function(){return this.getInvitedMemberCount()+this.getJoinedMemberCount()},m.prototype.getMembersWithMembership=function(e){return f.filter(this.currentState.getMembers(),(function(t){return t.membership===e}))},m.prototype.getEncryptionTargetMembers=async function(){await this.loadMembersIfNeeded();let e=this.getMembersWithMembership("join");return this.shouldEncryptForInvitedMembers()&&(e=e.concat(this.getMembersWithMembership("invite"))),e},m.prototype.shouldEncryptForInvitedMembers=function(){const e=this.currentState.getStateEvents("m.room.history_visibility","");return e&&e.getContent()&&"joined"!==e.getContent().history_visibility},m.prototype.getDefaultRoomName=function(e){return y(this,e,!0)},m.prototype.hasMembershipState=function(e,t){const n=this.getMember(e);return!!n&&n.membership===t},m.prototype.getOrCreateFilteredTimelineSet=function(e){if(this._filteredTimelineSets[e.filterId])return this._filteredTimelineSets[e.filterId];const t=Object.assign({filter:e},this._opts),n=new o.EventTimelineSet(this,t);this.reEmitter.reEmit(n,["Room.timeline","Room.timelineReset"]),this._filteredTimelineSets[e.filterId]=n,this._timelineSets.push(n);const r=this.getLiveTimeline();r.getEvents().forEach((function(e){n.addLiveEvent(e)}));let i=r;for(;i.getNeighbouringTimeline(s.EventTimeline.BACKWARDS);)i=i.getNeighbouringTimeline(s.EventTimeline.BACKWARDS);return n.getLiveTimeline().setPaginationToken(i.getPaginationToken(s.EventTimeline.BACKWARDS),s.EventTimeline.BACKWARDS),n},m.prototype.removeFilteredTimelineSet=function(e){const t=this._filteredTimelineSets[e.filterId];delete this._filteredTimelineSets[e.filterId];const n=this._timelineSets.indexOf(t);n>-1&&this._timelineSets.splice(n,1)},m.prototype._addLiveEvent=function(e,t){if(e.isRedaction()){const t=e.event.redacts,n=this.getUnfilteredTimelineSet().findEventById(t);if(n){if(n.makeRedacted(e),n.getStateKey()){this.currentState.getStateEvents(n.getType(),n.getStateKey()).getId()===n.getId()&&this.currentState.setStateEvents([n])}this.emit("Room.redaction",e,this)}}if(e.getUnsigned().transaction_id){const t=this._txnToEvent[e.getUnsigned().transaction_id];if(t)return void this._handleRemoteEcho(e,t)}for(let n=0;ne.status===c.EventStatus.NOT_SENT)&&(d.logger.warn("Setting event as NOT_SENT due to messages in the same state"),e.setStatus(c.EventStatus.NOT_SENT)),this._pendingEventList.push(e),e.isRelation()&&this._aggregateNonLiveRelation(e),e.isRedaction()){const t=e.event.redacts;let n=this._pendingEventList&&this._pendingEventList.find(e=>e.getId()===t);n||(n=this.getUnfilteredTimelineSet().findEventById(t)),n&&(n.markLocallyRedacted(e),this.emit("Room.redaction",e,this))}}else for(let t=0;t{const n=e.getMember(t);return n?n.name:t});else{let n=e.currentState.getMembers().filter(e=>e.userId!==t&&("invite"===e.membership||"join"===e.membership));n.sort((e,t)=>e.userId.localeCompare(t.userId)),n=n.slice(0,5),o=n.map(e=>e.name)}if(i)return b(o,i);if("join"==e.getMyMembership()){const t=e.currentState.getStateEvents("m.room.third_party_invite");if(t&&t.length){return`Inviting ${b(t.map(e=>e.getContent().display_name))}`}}let s=o;return s.length||(s=e.currentState.getMembers().filter(e=>e.userId!==t&&"invite"!==e.membership&&"join"!==e.membership).map(e=>e.name)),s.length?`Empty room (was ${b(s)})`:"Empty room"}function b(e,t=e.length+1){const n=t-1;if(e.length){if(1===e.length&&n<=1)return e[0];if(2===e.length&&n<=2)return`${e[0]} and ${e[1]}`;return n>1?`${e[0]} and ${n} others`:`${e[0]} and 1 other`}return"Empty room"}_[c.EventStatus.ENCRYPTING]=[c.EventStatus.SENDING,c.EventStatus.NOT_SENT],_[c.EventStatus.SENDING]=[c.EventStatus.ENCRYPTING,c.EventStatus.QUEUED,c.EventStatus.NOT_SENT,c.EventStatus.SENT],_[c.EventStatus.QUEUED]=[c.EventStatus.SENDING,c.EventStatus.CANCELLED],_[c.EventStatus.SENT]=[],_[c.EventStatus.NOT_SENT]=[c.EventStatus.SENDING,c.EventStatus.QUEUED,c.EventStatus.CANCELLED],_[c.EventStatus.CANCELLED]=[],m.prototype.updatePendingEvent=function(e,t,n){if(d.logger.log(`setting pendingEvent status to ${t} in ${e.getRoomId()}`),t==c.EventStatus.SENT&&!n)throw new Error("updatePendingEvent called with status=SENT, but no new event id");if(t==c.EventStatus.SENT){if(this.getUnfilteredTimelineSet().eventIdToTimeline(n))return}const r=e.status,i=e.getId();if(!r)throw new Error("updatePendingEventStatus called on an event which is not a local echo.");const o=_[r];if(!o||o.indexOf(t)<0)throw new Error("Invalid EventStatus transition "+r+"->"+t);if(e.setStatus(t),t==c.EventStatus.SENT){e.replaceLocalEventId(n);for(let e=0;ee.getId()===i);if(-1!==e){const[t]=this._pendingEventList.splice(e,1);t.isRedaction()&&this._revertRedactionLocalEcho(t)}}this.removeEvent(i)}this.emit("Room.localEchoUpdated",e,this,i,r)},m.prototype._revertRedactionLocalEcho=function(e){const t=e.event.redacts;if(!t)return;const n=this.getUnfilteredTimelineSet().findEventById(t);n&&(n.unmarkLocallyRedacted(),this.emit("Room.redactionCancelled",e,this),n.isRelation()&&this._aggregateNonLiveRelation(n))},m.prototype.addLiveEvents=function(e,t){let n;if(t&&-1===["replace","ignore"].indexOf(t))throw new Error("duplicateStrategy MUST be either 'replace' or 'ignore'");for(n=0;n=0;--e){const r=this.timeline[e];if(r.getId()===t)return!1;if(r.getId()===n)return!0}return!1},m.prototype.getReceiptsForEvent=function(e){return this._receiptCacheByEventId[e.getId()]||[]},m.prototype.addReceipt=function(e,t){void 0===t&&(t=!1),t||this._addReceiptsToStructure(e,this._realReceipts),this._addReceiptsToStructure(e,this._receipts),this._receiptCacheByEventId=this._buildReceiptCache(this._receipts),this.emit("Room.receipt",e,this)},m.prototype._addReceiptsToStructure=function(e,t){const n=this;f.keys(e.getContent()).forEach((function(r){f.keys(e.getContent()[r]).forEach((function(i){f.keys(e.getContent()[r][i]).forEach((function(o){const s=e.getContent()[r][i][o];t[i]||(t[i]={});const a=t[i][o];if(a){const e=n.getUnfilteredTimelineSet().compareEventOrdering(a.eventId,r);if(null!==e&&e>=0)return}else t[i][o]={};t[i][o]={eventId:r,data:s}}))}))}))},m.prototype._buildReceiptCache=function(e){const t={};return f.keys(e).forEach((function(n){f.keys(e[n]).forEach((function(r){const i=e[n][r];t[i.eventId]||(t[i.eventId]=[]),t[i.eventId].push({userId:r,type:n,data:i.data})}))})),t},m.prototype._addLocalEchoReceipt=function(e,t,n){this.addReceipt(g(e,t,n),!0)},m.prototype.addTags=function(e){this.tags=e.getContent().tags||{},this.emit("Room.tags",e,this)},m.prototype.addAccountData=function(e){for(let t=0;t{this.aggregateRelations(e)});const t=e.getRelation();if(!t)return;const n=t.event_id,r=t.rel_type,i=e.getType();let o=this._relations[n];o||(o=this._relations[n]={});let a=o[r];a||(a=o[r]={});let f,u=a[i],l=!1;u||(u=a[i]=new c.Relations(r,i,this.room),l=!0,f=this.findEventById(n),f&&u.setTargetEvent(f)),u.addEvent(e),l&&f&&f.emit("Event.relationsCreated",r,i)}},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.RoomState=f;var i=n(10),o=n(75),s=n(4),a=r(n(8));function f(e,t){this.roomId=e,this.members={},this.events={},this.paginationToken=null,this._sentinels={},this._updateModifiedTime(),this._displayNameToUserIds={},this._userIdsToDisplayNames={},this._tokenToInvite={},this._joinedMemberCount=null,this._summaryJoinedMemberCount=null,this._invitedMemberCount=null,this._summaryInvitedMemberCount=null,t||(t={status:1}),this._oobMemberFlags=t}function c(e,t,n){const r=e._userIdsToDisplayNames[t];if(delete e._userIdsToDisplayNames[t],r){const n=a.removeHiddenChars(r),i=e._displayNameToUserIds[n];if(i){const r=i.filter(e=>e!==t);e._displayNameToUserIds[n]=r}}e._userIdsToDisplayNames[t]=n;const i=n&&a.removeHiddenChars(n);i&&(e._displayNameToUserIds[i]||(e._displayNameToUserIds[i]=[]),e._displayNameToUserIds[i].push(t))}a.inherits(f,i.EventEmitter),f.prototype.getJoinedMemberCount=function(){return null!==this._summaryJoinedMemberCount?this._summaryJoinedMemberCount:(null===this._joinedMemberCount&&(this._joinedMemberCount=this.getMembers().reduce((e,t)=>"join"===t.membership?e+1:e,0)),this._joinedMemberCount)},f.prototype.setJoinedMemberCount=function(e){this._summaryJoinedMemberCount=e},f.prototype.getInvitedMemberCount=function(){return null!==this._summaryInvitedMemberCount?this._summaryInvitedMemberCount:(null===this._invitedMemberCount&&(this._invitedMemberCount=this.getMembers().reduce((e,t)=>"invite"===t.membership?e+1:e,0)),this._invitedMemberCount)},f.prototype.setInvitedMemberCount=function(e){this._summaryInvitedMemberCount=e},f.prototype.getMembers=function(){return a.values(this.members)},f.prototype.getMembersExcept=function(e){return a.values(this.members).filter(t=>!e.includes(t.userId))},f.prototype.getMember=function(e){return this.members[e]||null},f.prototype.getSentinelMember=function(e){if(!e)return null;let t=this._sentinels[e];if(void 0===t){t=new o.RoomMember(this.roomId,e);const n=this.members[e];n&&t.setMembershipEvent(n.events.member,this),this._sentinels[e]=t}return t},f.prototype.getStateEvents=function(e,t){if(!this.events[e])return void 0===t?[]:null;if(void 0===t)return a.values(this.events[e]);const n=this.events[e][t];return n||null},f.prototype.clone=function(){const e=new f(this.roomId,this._oobMemberFlags),t=this._oobMemberFlags.status;return this._oobMemberFlags.status=1,Object.values(this.events).forEach(t=>{const n=Object.values(t);e.setStateEvents(n)}),this._oobMemberFlags.status=t,null!==this._summaryInvitedMemberCount&&e.setInvitedMemberCount(this.getInvitedMemberCount()),null!==this._summaryJoinedMemberCount&&e.setJoinedMemberCount(this.getJoinedMemberCount()),3==this._oobMemberFlags.status&&this.getMembers().forEach(t=>{if(t.isOutOfBand()){e.getMember(t.userId).markOutOfBand()}}),e},f.prototype.setUnknownStateEvents=function(e){const t=e.filter(e=>void 0===this.events[e.getType()]||void 0===this.events[e.getType()][e.getStateKey()]);this.setStateEvents(t)},f.prototype.setStateEvents=function(e){const t=this;this._updateModifiedTime(),a.forEach(e,(function(e){e.getRoomId()===t.roomId&&e.isState()&&(t._setStateEvent(e),"m.room.member"===e.getType()&&(c(t,e.getStateKey(),e.getContent().displayname),function(e,t){if(!t.getContent().third_party_invite)return;const n=(t.getContent().third_party_invite.signed||{}).token;if(!n)return;if(!e.getStateEvents("m.room.third_party_invite",n))return;e._tokenToInvite[n]=t}(t,e)),t.emit("RoomState.events",e,t))})),a.forEach(e,(function(e){if(e.getRoomId()===t.roomId&&e.isState())if("m.room.member"===e.getType()){const n=e.getStateKey();"leave"!==e.getContent().membership&&"ban"!==e.getContent().membership||(e.getContent().avatar_url=e.getContent().avatar_url||e.getPrevContent().avatar_url,e.getContent().displayname=e.getContent().displayname||e.getPrevContent().displayname);const r=t._getOrCreateMember(n,e);r.setMembershipEvent(e,t),t._updateMember(r),t.emit("RoomState.members",e,t,r)}else if("m.room.power_levels"===e.getType()){const n=a.values(t.members);a.forEach(n,(function(n){n.setPowerLevelEvent(e),t.emit("RoomState.members",e,t,n)})),t._sentinels={}}}))},f.prototype._getOrCreateMember=function(e,t){let n=this.members[e];return n||(n=new o.RoomMember(this.roomId,e),this.members[e]=n,this.emit("RoomState.newMember",t,this,n)),n},f.prototype._setStateEvent=function(e){void 0===this.events[e.getType()]&&(this.events[e.getType()]={}),this.events[e.getType()][e.getStateKey()]=e},f.prototype._updateMember=function(e){const t=this.getStateEvents("m.room.power_levels","");t&&e.setPowerLevelEvent(t),delete this._sentinels[e.userId],this.members[e.userId]=e,this._joinedMemberCount=null,this._invitedMemberCount=null},f.prototype.needsOutOfBandMembers=function(){return 1===this._oobMemberFlags.status},f.prototype.markOutOfBandMembersStarted=function(){1===this._oobMemberFlags.status&&(this._oobMemberFlags.status=2)},f.prototype.markOutOfBandMembersFailed=function(){2===this._oobMemberFlags.status&&(this._oobMemberFlags.status=1)},f.prototype.clearOutOfBandMembers=function(){let e=0;Object.keys(this.members).forEach(t=>{this.members[t].isOutOfBand()&&(++e,delete this.members[t])}),s.logger.log(`LL: RoomState removed ${e} members...`),this._oobMemberFlags.status=1},f.prototype.setOutOfBandMembers=function(e){s.logger.log(`LL: RoomState about to set ${e.length} OOB members ...`),2===this._oobMemberFlags.status&&(s.logger.log("LL: RoomState put in OOB_STATUS_FINISHED state ..."),this._oobMemberFlags.status=3,e.forEach(e=>this._setOutOfBandMember(e)))},f.prototype._setOutOfBandMember=function(e){if("m.room.member"!==e.getType())return;const t=e.getStateKey(),n=this.getMember(t);if(n&&!n.isOutOfBand())return;const r=this._getOrCreateMember(t,e);r.setMembershipEvent(e,this),r.markOutOfBand(),c(this,r.userId,r.name),this._setStateEvent(e),this._updateMember(r),this.emit("RoomState.members",e,this,r)},f.prototype.setTypingEvent=function(e){a.forEach(a.values(this.members),(function(t){t.setTypingEvent(e)}))},f.prototype.getInviteForThreePidToken=function(e){return this._tokenToInvite[e]||null},f.prototype._updateModifiedTime=function(){this._modified=Date.now()},f.prototype.getLastModifiedTime=function(){return this._modified},f.prototype.getUserIdsWithDisplayName=function(e){return this._displayNameToUserIds[a.removeHiddenChars(e)]||[]},f.prototype.maySendRedactionForEvent=function(e,t){const n=this.getMember(t);if(!n||"leave"===n.membership)return!1;if(e.status||e.isRedacted())return!1;const r=this.maySendEvent("m.room.redaction",t);return e.getSender()===t?r:this._hasSufficientPowerLevelFor("redact",n.powerLevel)},f.prototype._hasSufficientPowerLevelFor=function(e,t){const n=this.getStateEvents("m.room.power_levels","");let r={};n&&(r=n.getContent());let i=50;return a.isNumber(r[e])&&(i=r[e]),t>=i},f.prototype.maySendMessage=function(e){return this._maySendEventOfType("m.room.message",e,!1)},f.prototype.maySendEvent=function(e,t){return this._maySendEventOfType(e,t,!1)},f.prototype.mayClientSendStateEvent=function(e,t){return!t.isGuest()&&this.maySendStateEvent(e,t.credentials.userId)},f.prototype.maySendStateEvent=function(e,t){return this._maySendEventOfType(e,t,!0)},f.prototype._maySendEventOfType=function(e,t,n){const r=this.getStateEvents("m.room.power_levels","");let i,o={},s=0,a=0,f=0;if(r){i=r.getContent(),o=i.events||{},s=Number.isFinite(i.state_default)?i.state_default:50;const e=i.users&&i.users[t];Number.isFinite(e)?f=e:Number.isFinite(i.users_default)&&(f=i.users_default),Number.isFinite(i.events_default)&&(a=i.events_default)}let c=n?s:a;return Number.isFinite(o[e])&&(c=o[e]),f>=c},f.prototype.mayTriggerNotifOfType=function(e,t){const n=this.getMember(t);if(!n)return!1;const r=this.getStateEvents("m.room.power_levels","");let i=50;return r&&r.getContent()&&r.getContent().notifications&&a.isNumber(r.getContent().notifications[e])&&(i=r.getContent().notifications[e]),n.powerLevel>=i}},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.Group=s;var i=r(n(8)),o=n(10);function s(e){this.groupId=e,this.name=null,this.avatarUrl=null,this.myMembership=null,this.inviter=null}i.inherits(s,o.EventEmitter),s.prototype.setProfile=function(e,t){this.name===e&&this.avatarUrl===t||(this.name=e||this.groupId,this.avatarUrl=t,this.emit("Group.profile",this))},s.prototype.setMyMembership=function(e){this.myMembership!==e&&(this.myMembership=e,this.emit("Group.myMembership",this))},s.prototype.setInviter=function(e){this.inviter=e}},function(e,t,n){"use strict";(function(e){var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MatrixCall=a,t.setAudioOutput=function(e){R=e},t.setAudioInput=function(e){T=e},t.setVideoInput=function(e){O=e},t.createNewMatrixCall=function(t,n,r){const o=e.window,s=e.document;if(!o||!s)return null;const f={};f.isOpenWebRTC=function(){const e=s.getElementById("script");if(!e||!e.length)return!1;for(let t=0;t-1)return!0;return!1};const c=o.navigator.getUserMedia||o.navigator.webkitGetUserMedia||o.navigator.mozGetUserMedia;c&&(f.getUserMedia=function(){return c.apply(o.navigator,arguments)});try{f.RtcPeerConnection=o.RTCPeerConnection||o.webkitRTCPeerConnection||o.mozRTCPeerConnection,f.RtcSessionDescription=o.RTCSessionDescription||o.webkitRTCSessionDescription||o.mozRTCSessionDescription,f.RtcIceCandidate=o.RTCIceCandidate||o.webkitRTCIceCandidate||o.mozRTCIceCandidate,f.vendor=null,o.mozRTCPeerConnection?f.vendor="mozilla":o.webkitRTCPeerConnection?f.vendor="webkit":o.RTCPeerConnection&&(f.vendor="generic")}catch(e){return i.logger.error("Failed to set up WebRTC object: possible browser interference?"),i.logger.error(e),null}if(!(f.RtcIceCandidate&&f.RtcSessionDescription&&f.RtcPeerConnection&&f.getUserMedia))return null;const u=!!r&&r.forceTURN;return new a({webRtc:f,client:t,URL:o.URL,roomId:n,turnServers:t.getTurnServers(),forceTURN:t._forceTURN||u})};var i=n(4),o=n(10),s=r(n(8));function a(e){this.roomId=e.roomId,this.client=e.client,this.webRtc=e.webRtc,this.forceTURN=e.forceTURN,this.URL=e.URL,this.turnServers=e.turnServers||[],0===this.turnServers.length&&this.client.isFallbackICEServerAllowed()&&this.turnServers.push({urls:[a.FALLBACK_ICE_SERVER]}),s.forEach(this.turnServers,(function(e){s.checkObjectHasKeys(e,["urls"])})),this.callId="c"+(new Date).getTime()+Math.random(),this.state="fledgling",this.didConnect=!1,this.candidateSendQueue=[],this.candidateSendTries=0,this.mediaPromises=Object.create(null),this.screenSharingStream=null,this._answerContent=null}a.CALL_TIMEOUT_MS=6e4,a.FALLBACK_ICE_SERVER="stun:turn.matrix.org",a.ERR_LOCAL_OFFER_FAILED="local_offer_failed",a.ERR_NO_USER_MEDIA="no_user_media",a.ERR_UNKNOWN_DEVICES="unknown_devices",a.ERR_SEND_INVITE="send_invite",a.ERR_SEND_ANSWER="send_answer",s.inherits(a,o.EventEmitter),a.prototype.placeVoiceCall=function(){b("placeVoiceCall"),_(this),A(this,S("voice")),this.type="voice"},a.prototype.placeVideoCall=function(e,t){b("placeVideoCall"),_(this),this.localVideoElement=t,this.remoteVideoElement=e,A(this,S("video")),this.type="video",g(this)},a.prototype.placeScreenSharingCall=function(e,t){b("placeScreenSharingCall"),_(this);const n=E(this);if(!n)return;this.localVideoElement=t,this.remoteVideoElement=e;const r=this;this.webRtc.getUserMedia(n,(function(e){r.screenSharingStream=e,b("Got screen stream, requesting audio stream...");const t=S("voice");A(r,t)}),(function(e){r.emit("error",y(a.ERR_NO_USER_MEDIA,"Failed to get screen-sharing stream: "+e))})),this.type="video",g(this)},a.prototype.playElement=function(e,t){i.logger.log("queuing play on "+t+" and element "+e),this.mediaPromises[t]?this.mediaPromises[t]=this.mediaPromises[t].then((function(){return i.logger.log("previous promise completed for "+t),e.play()}),(function(){return i.logger.log("previous promise failed for "+t),e.play()})):this.mediaPromises[t]=e.play()},a.prototype.pauseElement=function(e,t){i.logger.log("queuing pause on "+t+" and element "+e),this.mediaPromises[t]?this.mediaPromises[t]=this.mediaPromises[t].then((function(){return i.logger.log("previous promise completed for "+t),e.pause()}),(function(){return i.logger.log("previous promise failed for "+t),e.pause()})):this.mediaPromises[t]=e.pause()},a.prototype.assignElement=function(e,t,n){i.logger.log("queuing assign on "+n+" element "+e+" for "+t),this.mediaPromises[n]?this.mediaPromises[n]=this.mediaPromises[n].then((function(){i.logger.log("previous promise completed for "+n),e.srcObject=t}),(function(){i.logger.log("previous promise failed for "+n),e.srcObject=t})):e.srcObject=t},a.prototype.getLocalVideoElement=function(){return this.localVideoElement},a.prototype.getRemoteVideoElement=function(){return this.remoteVideoElement},a.prototype.getRemoteAudioElement=function(){return this.remoteAudioElement},a.prototype.setLocalVideoElement=function(e){if(this.localVideoElement=e,e&&this.localAVStream&&"video"===this.type){e.autoplay=!0,this.assignElement(e,this.localAVStream,"localVideo"),e.muted=!0;const t=this;setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)}},a.prototype.setRemoteVideoElement=function(e){this.remoteVideoElement=e,g(this)},a.prototype.setRemoteAudioElement=function(e){this.remoteVideoElement.muted=!0,this.remoteAudioElement=e,this.remoteAudioElement.muted=!1,m(this)},a.prototype._initWithInvite=function(e){this.msg=e.getContent(),this.peerConn=w(this);const t=this;this.peerConn&&this.peerConn.setRemoteDescription(new this.webRtc.RtcSessionDescription(this.msg.offer),k(t,t._onSetRemoteDescriptionSuccess),k(t,t._onSetRemoteDescriptionError)),u(this,"ringing"),this.direction="inbound",this.msg.offer&&this.msg.offer.sdp&&this.msg.offer.sdp.indexOf("m=video")>-1?this.type="video":this.type="voice",e.getAge()&&setTimeout((function(){"ringing"==t.state&&(b("Call invite has expired. Hanging up."),t.hangupParty="remote",u(t,"ended"),p(t),"closed"!=t.peerConn.signalingState&&t.peerConn.close(),t.emit("hangup",t))}),this.msg.lifetime-e.getAge())},a.prototype._initWithHangup=function(e){this.msg=e.getContent(),u(this,"ended")},a.prototype.answer=function(){b("Answering call %s of type %s",this.callId,this.type);const e=this;e._answerContent?e._sendAnswer():this.localAVStream||this.waitForLocalAVStream?this.localAVStream?this._maybeGotUserMediaForAnswer(this.localAVStream):this.waitForLocalAVStream&&u(this,"wait_local_media"):(this.webRtc.getUserMedia(S(this.type),k(e,e._maybeGotUserMediaForAnswer),k(e,e._maybeGotUserMediaForAnswer)),u(this,"wait_local_media"))},a.prototype._replacedBy=function(e){b(this.callId+" being replaced by "+e.callId),"wait_local_media"==this.state?(b("Telling new call to wait for local media"),e.waitForLocalAVStream=!0):"create_offer"==this.state?(b("Handing local stream to new call"),e._maybeGotUserMediaForAnswer(this.localAVStream),delete this.localAVStream):"invite_sent"==this.state&&(b("Handing local stream to new call"),e._maybeGotUserMediaForAnswer(this.localAVStream),delete this.localAVStream),e.localVideoElement=this.localVideoElement,e.remoteVideoElement=this.remoteVideoElement,e.remoteAudioElement=this.remoteAudioElement,this.successor=e,this.emit("replaced",e),this.hangup(!0)},a.prototype.hangup=function(e,t){if("ended"==this.state)return;b("Ending call "+this.callId),h(this,"local",e,!t);const n={version:0,call_id:this.callId,reason:e};l(this,"m.call.hangup",n)},a.prototype.setLocalVideoMuted=function(e){this.localAVStream&&f(this.localAVStream.getVideoTracks(),!e)},a.prototype.isLocalVideoMuted=function(){return!!this.localAVStream&&!c(this.localAVStream.getVideoTracks())},a.prototype.setMicrophoneMuted=function(e){this.localAVStream&&f(this.localAVStream.getAudioTracks(),!e)},a.prototype.isMicrophoneMuted=function(){return!!this.localAVStream&&!c(this.localAVStream.getAudioTracks())},a.prototype._maybeGotUserMediaForInvite=function(e){if(this.successor)return void this.successor._maybeGotUserMediaForAnswer(e);if("ended"==this.state)return;b("_maybeGotUserMediaForInvite -> "+this.type);const t=this,n=e,r={mandatory:{OfferToReceiveAudio:!0,OfferToReceiveVideo:"video"===t.type}};if(e instanceof MediaStream){const n=this.getLocalVideoElement();n&&"video"==this.type&&(n.autoplay=!0,this.screenSharingStream?(b("Setting screen sharing stream to the local video element"),this.assignElement(n,this.screenSharingStream,"localVideo")):this.assignElement(n,e,"localVideo"),n.muted=!0,setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)),this.screenSharingStream&&(this.screenSharingStream.addTrack(e.getAudioTracks()[0]),e=this.screenSharingStream),this.localAVStream=e,f(e.getAudioTracks(),!0),this.peerConn=w(this),this.peerConn.addStream(e)}else{if("PermissionDeniedError"!==n.name)return b("Failed to getUserMedia: "+n.name),void this._getUserMediaFailed(n);b("User denied access to camera/microphone. Or possibly you are using an insecure domain. Receiving only."),this.peerConn=w(this)}this.peerConn.createOffer(k(t,t._gotLocalOffer),k(t,t._getLocalOfferFailed),r),u(t,"create_offer")},a.prototype._sendAnswer=function(e){l(this,"m.call.answer",this._answerContent).then(()=>{u(this,"connecting"),v(this)}).catch(e=>{u(this,"ringing"),this.client.cancelPendingEvent(e.event);let t=a.ERR_SEND_ANSWER,n="Failed to send answer";throw"UnknownDeviceError"==e.name&&(t=a.ERR_UNKNOWN_DEVICES,n="Unknown devices present in the room"),this.emit("error",y(t,n)),e})},a.prototype._maybeGotUserMediaForAnswer=function(e){const t=this;if("ended"==t.state)return;const n=e;if(e instanceof MediaStream){const n=t.getLocalVideoElement();n&&"video"==t.type&&(n.autoplay=!0,this.assignElement(n,e,"localVideo"),n.muted=!0,setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)),t.localAVStream=e,f(e.getAudioTracks(),!0),t.peerConn.addStream(e)}else{if("PermissionDeniedError"!==n.name)return b("Failed to getUserMedia: "+n.name),void this._getUserMediaFailed(n);b("User denied access to camera/microphone. Or possibly you are using an insecure domain. Receiving only.")}const r={mandatory:{OfferToReceiveAudio:!0,OfferToReceiveVideo:"video"===t.type}};t.peerConn.createAnswer((function(e){b("Created answer: ",e),t.peerConn.setLocalDescription(e,(function(){t._answerContent={version:0,call_id:t.callId,answer:{sdp:t.peerConn.localDescription.sdp,type:t.peerConn.localDescription.type}},t._sendAnswer()}),(function(){b("Error setting local description!")}),r)}),(function(e){b("Failed to create answer: "+e)})),u(t,"create_answer")},a.prototype._gotLocalIceCandidate=function(e){if(e.candidate){if(b("Got local ICE "+e.candidate.sdpMid+" candidate: "+e.candidate.candidate),"ended"==this.state)return;const t={candidate:e.candidate.candidate,sdpMid:e.candidate.sdpMid,sdpMLineIndex:e.candidate.sdpMLineIndex};d(this,t)}},a.prototype._gotRemoteIceCandidate=function(e){"ended"!=this.state&&(b("Got remote ICE "+e.sdpMid+" candidate: "+e.candidate),this.peerConn.addIceCandidate(new this.webRtc.RtcIceCandidate(e),(function(){}),(function(e){})))},a.prototype._receivedAnswer=function(e){if("ended"==this.state)return;this.peerConn.setRemoteDescription(new this.webRtc.RtcSessionDescription(e.answer),k(this,this._onSetRemoteDescriptionSuccess),k(this,this._onSetRemoteDescriptionError)),u(this,"connecting")},a.prototype._gotLocalOffer=function(e){const t=this;b("Created offer: ",e),"ended"!=t.state?t.peerConn.setLocalDescription(e,(function(){const e={version:0,call_id:t.callId,offer:{sdp:t.peerConn.localDescription.sdp,type:t.peerConn.localDescription.type},lifetime:a.CALL_TIMEOUT_MS};l(t,"m.call.invite",e).then(()=>{u(t,"invite_sent"),setTimeout((function(){"invite_sent"==t.state&&t.hangup("invite_timeout")}),a.CALL_TIMEOUT_MS)}).catch(e=>{let n=a.ERR_SEND_INVITE,r="Failed to send invite";throw"UnknownDeviceError"==e.name&&(n=a.ERR_UNKNOWN_DEVICES,r="Unknown devices present in the room"),t.client.cancelPendingEvent(e.event),h(t,"local",n,!1),t.emit("error",y(n,r)),e})}),(function(){b("Error setting local description!")})):b("Ignoring newly created offer on call ID "+t.callId+" because the call has ended")},a.prototype._getLocalOfferFailed=function(e){this.emit("error",y(a.ERR_LOCAL_OFFER_FAILED,"Failed to start audio for call!"))},a.prototype._getUserMediaFailed=function(e){h(this,"local","user_media_failed",!1),this.emit("error",y(a.ERR_NO_USER_MEDIA,"Couldn't start capturing media! Is your microphone set up and does this app have permission?"))},a.prototype._onIceConnectionStateChanged=function(){"ended"!=this.state&&(b("Ice connection state changed to: "+this.peerConn.iceConnectionState),"completed"==this.peerConn.iceConnectionState||"connected"==this.peerConn.iceConnectionState?(u(this,"connected"),this.didConnect=!0):"failed"==this.peerConn.iceConnectionState&&this.hangup("ice_failed"))},a.prototype._onSignallingStateChanged=function(){b("call "+this.callId+": Signalling state changed to: "+this.peerConn.signalingState)},a.prototype._onSetRemoteDescriptionSuccess=function(){b("Set remote description")},a.prototype._onSetRemoteDescriptionError=function(e){b("Failed to set remote description"+e)},a.prototype._onAddStream=function(e){b("Stream id "+e.stream.id+" added");const t=e.stream;t.getVideoTracks().length>0?(this.type="video",this.remoteAVStream=t,this.remoteAStream=t):(this.type="voice",this.remoteAStream=t);const n=this;I(t,(function(e){b("Track id "+e.id+" added"),e.onstarted=k(n,n._onRemoteStreamTrackStarted)})),void 0!==e.stream.oninactive?e.stream.oninactive=k(n,n._onRemoteStreamEnded):e.stream.onended=k(n,n._onRemoteStreamEnded),e.stream.onstarted=k(n,n._onRemoteStreamStarted),"video"===this.type?(g(this),m(this)):m(this)},a.prototype._onRemoteStreamStarted=function(e){u(this,"connected")},a.prototype._onRemoteStreamEnded=function(e){b("Remote stream ended"),this.hangupParty="remote",u(this,"ended"),p(this),"closed"!=this.peerConn.signalingState&&this.peerConn.close(),this.emit("hangup",this)},a.prototype._onRemoteStreamTrackStarted=function(e){u(this,"connected")},a.prototype._onHangupReceived=function(e){b("Hangup received"),h(this,"remote",e.reason,!0)},a.prototype._onAnsweredElsewhere=function(e){b("Answered elsewhere"),h(this,"remote","answered_elsewhere",!0)};const f=function(e,t){for(let n=0;n5)return b("Failed to send candidates on attempt %s. Giving up for now.",e.candidateSendTries),void(e.candidateSendTries=0);const r=500*Math.pow(2,e.candidateSendTries);++e.candidateSendTries,b("Failed to send candidates. Retrying in "+r+"ms"),setTimeout((function(){v(e)}),r)}))},A=function(e,t){e.client.callList[e.callId]=e,e.webRtc.getUserMedia(t,k(e,e._maybeGotUserMediaForInvite),k(e,e._maybeGotUserMediaForInvite)),u(e,"wait_local_media"),e.direction="outbound",e.config=t},w=function(e){const t=new e.webRtc.RtcPeerConnection({iceTransportPolicy:e.forceTURN?"relay":void 0,iceServers:e.turnServers});return t.oniceconnectionstatechange=k(e,e._onIceConnectionStateChanged),t.onsignalingstatechange=k(e,e._onSignallingStateChanged),t.onicecandidate=k(e,e._gotLocalIceCandidate),t.onaddstream=k(e,e._onAddStream),t},E=function(t){const n=e.screen;if(n)return{video:{mediaSource:"screen",mandatory:{chromeMediaSource:"screen",chromeMediaSourceId:""+Date.now(),maxWidth:n.width,maxHeight:n.height,minFrameRate:1,maxFrameRate:10}}};t.emit("error",y(a.ERR_NO_USER_MEDIA,"Couldn't determine screen sharing constaints."))},S=function(t){const n=!!e.window.navigator.webkitGetUserMedia;switch(t){case"voice":return{audio:{deviceId:T?{ideal:T}:void 0},video:!1};case"video":return{audio:{deviceId:T?{ideal:T}:void 0},video:{deviceId:O?{ideal:O}:void 0,width:n?{exact:640}:{ideal:640},height:n?{exact:360}:{ideal:360}}}}},k=function(e,t){return function(){return t.apply(e,arguments)}},I=function(e,t){!function(e,t){const n=e.getVideoTracks();for(let e=0;e{let i=!0;const o=e.open(t);o.onupgradeneeded=()=>{i=!1},o.onblocked=()=>r(),o.onsuccess=()=>{o.result.close(),i||e.deleteDatabase(t),n(i)},o.onerror=e=>r(e.target.error)})}},function(e,t,n){"use strict";(function(e){var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.OlmDevice=f,t.WITHHELD_MESSAGES=void 0;var i=n(4),o=n(33),s=r(n(137));function a(e){if(void 0===e)throw new Error("payloadString undefined");if(e.length>49152)throw new Error("Message too long ("+e.length+" bytes). The maximum for an encrypted message is 49152 bytes.")}function f(e){this._cryptoStore=e,this._pickleKey="DEFAULT_KEY",this.deviceCurve25519Key=null,this.deviceEd25519Key=null,this._maxOneTimeKeys=null,this._outboundGroupSessionStore={},this._inboundGroupSessionMessageIndexes={},this._sessionsInProgress={}}f.prototype.init=async function(){let t;const n=new e.Olm.Account;try{await async function(e,t,n){await e.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],r=>{e.getAccount(r,i=>{null!==i?n.unpickle(t,i):(n.create(),i=n.pickle(t),e.storeAccount(r,i))})})}(this._cryptoStore,this._pickleKey,n),t=JSON.parse(n.identity_keys()),this._maxOneTimeKeys=n.max_number_of_one_time_keys()}finally{n.free()}this.deviceCurve25519Key=t.curve25519,this.deviceEd25519Key=t.ed25519},f.getOlmVersion=function(){return e.Olm.get_library_version()},f.prototype._getAccount=function(t,n){this._cryptoStore.getAccount(t,t=>{const r=new e.Olm.Account;try{r.unpickle(this._pickleKey,t),n(r)}finally{r.free()}})},f.prototype._storeAccount=function(e,t){this._cryptoStore.storeAccount(e,t.pickle(this._pickleKey))},f.prototype._getSession=function(e,t,n,r){this._cryptoStore.getEndToEndSession(e,t,n,e=>{this._unpickleSession(e,r)})},f.prototype._unpickleSession=function(t,n){const r=new e.Olm.Session;try{r.unpickle(this._pickleKey,t.session),n(Object.assign({},t,{session:r}))}finally{r.free()}},f.prototype._saveSession=function(e,t,n){const r=t.session.session_id(),i=Object.assign(t,{session:t.session.pickle(this._pickleKey)});this._cryptoStore.storeEndToEndSession(e,r,i,n)},f.prototype._getUtility=function(t){const n=new e.Olm.Utility;try{return t(n)}finally{n.free()}},f.prototype.sign=async function(e){let t;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_ACCOUNT],n=>{this._getAccount(n,n=>{t=n.sign(e)})}),t},f.prototype.getOneTimeKeys=async function(){let e;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_ACCOUNT],t=>{this._getAccount(t,t=>{e=JSON.parse(t.one_time_keys())})}),e},f.prototype.maxNumberOfOneTimeKeys=function(){return this._maxOneTimeKeys},f.prototype.markKeysAsPublished=async function(){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],e=>{this._getAccount(e,t=>{t.mark_keys_as_published(),this._storeAccount(e,t)})})},f.prototype.generateOneTimeKeys=function(e){return this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],t=>{this._getAccount(t,n=>{n.generate_one_time_keys(e),this._storeAccount(t,n)})})},f.prototype.createOutboundSession=async function(t,n){let r;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT,o.IndexedDBCryptoStore.STORE_SESSIONS],i=>{this._getAccount(i,o=>{const s=new e.Olm.Session;try{s.create_outbound(o,t,n),r=s.session_id(),this._storeAccount(i,o);const e={session:s,lastReceivedMessageTs:Date.now()};this._saveSession(t,e,i)}finally{s.free()}})}),r},f.prototype.createInboundSession=async function(t,n,r){if(0!==n)throw new Error("Need messageType == 0 to create inbound session");let i;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT,o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getAccount(o,s=>{const a=new e.Olm.Session;try{a.create_inbound_from(s,t,r),s.remove_one_time_keys(a),this._storeAccount(o,s);const e=a.decrypt(n,r),f={session:a,lastReceivedMessageTs:Date.now()};this._saveSession(t,f,o),i={payload:e,session_id:a.session_id()}}finally{a.free()}})}),i},f.prototype.getSessionIdsForDevice=async function(e){if(this._sessionsInProgress[e]){i.logger.log("waiting for olm session to be created");try{await this._sessionsInProgress[e]}catch(e){}}let t;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_SESSIONS],n=>{this._cryptoStore.getEndToEndSessions(e,n,e=>{t=Object.keys(e)})}),t},f.prototype.getSessionIdForDevice=async function(e,t){const n=await this.getSessionInfoForDevice(e,t);if(0===n.length)return null;let r=0;for(let e=1;es||i===s&&t.sessionId{this._cryptoStore.getEndToEndSessions(e,t,e=>{const t=Object.keys(e).sort();for(const r of t)this._unpickleSession(e[r],e=>{n.push({lastReceivedMessageTs:e.lastReceivedMessageTs,hasReceivedMessage:e.session.has_received_message(),sessionId:r})})})}),n},f.prototype.encryptMessage=async function(e,t,n){let r;return a(n),await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getSession(e,t,o,s=>{const a=s.session.describe();i.logger.log("encryptMessage: Olm Session ID "+t+" to "+e+": "+a),r=s.session.encrypt(n),this._saveSession(e,s,o)})}),r},f.prototype.decryptMessage=async function(e,t,n,r){let s;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getSession(e,t,o,a=>{const f=a.session.describe();i.logger.log("decryptMessage: Olm Session ID "+t+" from "+e+": "+f),s=a.session.decrypt(n,r),a.lastReceivedMessageTs=Date.now(),this._saveSession(e,a,o)})}),s},f.prototype.matchesSession=async function(e,t,n,r){if(0!==n)return!1;let i;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_SESSIONS],n=>{this._getSession(e,t,n,e=>{i=e.session.matches_inbound(r)})}),i},f.prototype.recordSessionProblem=async function(e,t,n){await this._cryptoStore.storeEndToEndSessionProblem(e,t,n)},f.prototype.sessionMayHaveProblems=async function(e,t){return await this._cryptoStore.getEndToEndSessionProblem(e,t)},f.prototype.filterOutNotifiedErrorDevices=async function(e){return await this._cryptoStore.filterOutNotifiedErrorDevices(e)},f.prototype._saveOutboundGroupSession=function(e){const t=e.pickle(this._pickleKey);this._outboundGroupSessionStore[e.session_id()]=t},f.prototype._getOutboundGroupSession=function(t,n){const r=this._outboundGroupSessionStore[t];if(void 0===r)throw new Error("Unknown outbound group session "+t);const i=new e.Olm.OutboundGroupSession;try{return i.unpickle(this._pickleKey,r),n(i)}finally{i.free()}},f.prototype.createOutboundGroupSession=function(){const t=new e.Olm.OutboundGroupSession;try{return t.create(),this._saveOutboundGroupSession(t),t.session_id()}finally{t.free()}},f.prototype.encryptGroupMessage=function(e,t){const n=this;return i.logger.log(`encrypting msg with megolm session ${e}`),a(t),this._getOutboundGroupSession(e,(function(e){const r=e.encrypt(t);return n._saveOutboundGroupSession(e),r}))},f.prototype.getOutboundGroupSessionKey=function(e){return this._getOutboundGroupSession(e,(function(e){return{chain_index:e.message_index(),key:e.session_key()}}))},f.prototype._unpickleInboundGroupSession=function(t,n){const r=new e.Olm.InboundGroupSession;try{return r.unpickle(this._pickleKey,t.session),n(r)}finally{r.free()}},f.prototype._getInboundGroupSession=function(e,t,n,r,i){this._cryptoStore.getEndToEndInboundGroupSession(t,n,r,(t,n)=>{if(null!==t){if(null!==e&&e!==t.room_id)throw new Error("Mismatched room_id for inbound group session (expected "+t.room_id+", was "+e+")");this._unpickleInboundGroupSession(t,e=>{i(e,t,n)})}else i(null,null,n)})},f.prototype.addInboundGroupSession=async function(t,n,r,s,a,f,c){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(t,n,s,o,(u,l)=>{const d=new e.Olm.InboundGroupSession;try{if(c?d.import_session(a):d.create(a),s!=d.session_id())throw new Error("Mismatched group session ID from senderKey: "+n);if(u&&(i.logger.log("Update for megolm session "+n+"/"+s),u.first_known_index()<=d.first_known_index()))return void i.logger.log(`Keeping existing megolm session ${s}`);const e={room_id:t,session:d.pickle(this._pickleKey),keysClaimed:f,forwardingCurve25519KeyChain:r};this._cryptoStore.storeEndToEndInboundGroupSession(n,s,e,o)}finally{d.free()}})})},f.prototype.addInboundGroupSessionWithheld=async function(e,t,n,r,i){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._cryptoStore.storeEndToEndInboundGroupSessionWithheld(t,n,{room_id:e,code:r,reason:i},o)})};const c={"m.unverified":"The sender has disabled encrypting to unverified devices.","m.blacklisted":"The sender has blocked you.","m.unauthorised":"You are not authorised to read the message.","m.no_olm":"Unable to establish a secure channel."};function u(e){return e.code&&e.code in c?c[e.code]:e.reason?e.reason:"decryption key withheld"}t.WITHHELD_MESSAGES=c,f.prototype.decryptGroupMessage=async function(e,t,n,r,i,a){let f,c;if(await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(e,t,n,o,(e,l,d)=>{if(null===e)return d&&(c=new s.DecryptionError("MEGOLM_UNKNOWN_INBOUND_SESSION_ID",u(d),{session:t+"|"+n})),void(f=null);let h;try{h=e.decrypt(r)}catch(e){return void(c=e&&"OLM.UNKNOWN_MESSAGE_INDEX"===e.message&&d?new s.DecryptionError("MEGOLM_UNKNOWN_INBOUND_SESSION_ID",u(d),{session:t+"|"+n}):e)}let p=h.plaintext;if(void 0===p)p=h;else{const e=t+"|"+n+"|"+h.message_index;if(e in this._inboundGroupSessionMessageIndexes){const t=this._inboundGroupSessionMessageIndexes[e];if(t.id!==i||t.timestamp!==a)return void(c=new Error("Duplicate message index, possible replay attack: "+e))}this._inboundGroupSessionMessageIndexes[e]={id:i,timestamp:a}}l.session=e.pickle(this._pickleKey),this._cryptoStore.storeEndToEndInboundGroupSession(t,n,l,o),f={result:p,keysClaimed:l.keysClaimed||{},senderKey:t,forwardingCurve25519KeyChain:l.forwardingCurve25519KeyChain||[]}})}),c)throw c;return f},f.prototype.hasInboundSessionKeys=async function(e,t,n){let r;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._cryptoStore.getEndToEndInboundGroupSession(t,n,o,o=>{null!==o?e!==o.room_id?(i.logger.warn(`requested keys for inbound group session ${t}|`+`${n}, with incorrect room_id `+`(expected ${o.room_id}, `+`was ${e})`),r=!1):r=!0:r=!1})}),r},f.prototype.getInboundGroupSessionKey=async function(e,t,n,r){let i;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(e,t,n,o,(e,t)=>{if(null===e)return void(i=null);void 0===r&&(r=e.first_known_index());const n=e.export_session(r),o=(t.keysClaimed||{}).ed25519||null;i={chain_index:r,key:n,forwarding_curve25519_key_chain:t.forwardingCurve25519KeyChain||[],sender_claimed_ed25519_key:o}})}),i},f.prototype.exportInboundGroupSession=function(e,t,n){return this._unpickleInboundGroupSession(n,r=>{const i=r.first_known_index();return{sender_key:e,sender_claimed_keys:n.keysClaimed,room_id:n.room_id,session_id:t,session_key:r.export_session(i),forwarding_curve25519_key_chain:r.forwardingCurve25519KeyChain||[],first_known_index:r.first_known_index()}})},f.prototype.verifySignature=function(e,t,n){this._getUtility((function(r){r.ed25519_verify(e,t,n)}))}}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(285),n(286);var r=n(79);Object.keys(r).forEach((function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(t,e,{enumerable:!0,get:function(){return r[e]}})}))},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.DeviceTrustLevel=t.UserTrustLevel=t.CrossSigningLevel=t.CrossSigningInfo=void 0;var r=n(21),i=n(10),o=n(4);function s(e){return Object.values(e.keys)[0]}class a extends i.EventEmitter{constructor(e,t){super(),Object.defineProperty(this,"userId",{enumerable:!0,value:e}),this._callbacks=t||{},this.keys={},this.firstUse=!0}async getCrossSigningKey(t,n){if(!this._callbacks.getCrossSigningKey)throw new Error("No getCrossSigningKey callback supplied");void 0===n&&(n=this.getId(t));const r=await this._callbacks.getCrossSigningKey(t,n);if(!r)throw new Error("getCrossSigningKey callback for "+t+" returned falsey");const i=new e.Olm.PkSigning,o=i.init_with_seed(r);if(o!==n)throw i.free(),new Error("Key type "+t+" from getCrossSigningKey callback did not match");return[o,i]}static fromStorage(e,t){const n=new a(t);for(const t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}toStorage(){return{keys:this.keys,firstUse:this.firstUse}}async isStoredInSecretStorage(e){let t=!0;for(const n of["master","self_signing","user_signing"])t&=await e.isStored(`m.cross_signing.${n}`,!1);return t}static async storeInSecretStorage(e,t){for(const n of Object.keys(e)){const i=(0,r.encodeBase64)(e[n]);await t.store(`m.cross_signing.${n}`,i)}}static async getFromSecretStorage(e,t){const n=await t.get(`m.cross_signing.${e}`);return(0,r.decodeBase64)(n)}getId(e){if(e=e||"master",!this.keys[e])return null;return s(this.keys[e])}async resetKeys(t){if(!this._callbacks.saveCrossSigningKeys)throw new Error("No saveCrossSigningKeys callback supplied");if(void 0===t||t&f.MASTER||!this.keys.master)t=f.MASTER|f.USER_SIGNING|f.SELF_SIGNING;else if(0===t)return;const n={},i={};let o,s;try{if(t&f.MASTER?(o=new e.Olm.PkSigning,n.master=o.generate_seed(),s=o.init_with_seed(n.master),i.master={user_id:this.userId,usage:["master"],keys:{["ed25519:"+s]:s}}):[s,o]=await this.getCrossSigningKey("master"),t&f.SELF_SIGNING){const t=new e.Olm.PkSigning;try{n.self_signing=t.generate_seed();const e=t.init_with_seed(n.self_signing);i.self_signing={user_id:this.userId,usage:["self_signing"],keys:{["ed25519:"+e]:e}},(0,r.pkSign)(i.self_signing,o,this.userId,s)}finally{t.free()}}if(t&f.USER_SIGNING){const t=new e.Olm.PkSigning;try{n.user_signing=t.generate_seed();const e=t.init_with_seed(n.user_signing);i.user_signing={user_id:this.userId,usage:["user_signing"],keys:{["ed25519:"+e]:e}},(0,r.pkSign)(i.user_signing,o,this.userId,s)}finally{t.free()}}Object.assign(this.keys,i),this._callbacks.saveCrossSigningKeys(n)}finally{o&&o.free()}}setKeys(e){const t={};if(e.master){if(e.master.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in master key from "+this.userId;throw o.logger.error(t),new Error(t)}this.keys.master?s(e.master)!==this.getId()&&(this.firstUse=!1):this.firstUse=!0,t.master=e.master}else{if(!this.keys.master)throw new Error("Tried to set cross-signing keys without a master key");t.master=this.keys.master}const n=s(t.master);if(e.user_signing){if(e.user_signing.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in user_signing key from "+this.userId;throw o.logger.error(t),new Error(t)}try{(0,r.pkVerify)(e.user_signing,n,this.userId)}catch(e){throw o.logger.error("invalid signature on user-signing key"),e}}if(e.self_signing){if(e.self_signing.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in self_signing key from "+this.userId;throw o.logger.error(t),new Error(t)}try{(0,r.pkVerify)(e.self_signing,n,this.userId)}catch(e){throw o.logger.error("invalid signature on self-signing key"),e}}e.master&&(this.keys.master=e.master,this.keys.self_signing=null,this.keys.user_signing=null),e.self_signing&&(this.keys.self_signing=e.self_signing),e.user_signing&&(this.keys.user_signing=e.user_signing)}async signObject(e,t){if(!this.keys[t])throw new Error("Attempted to sign with "+t+" key but no such key present");const[n,i]=await this.getCrossSigningKey(t);try{return(0,r.pkSign)(e,i,this.userId,n),e}finally{i.free()}}async signUser(e){if(this.keys.user_signing)return this.signObject(e.keys.master,"user_signing")}async signDevice(e,t){if(e!==this.userId)throw new Error(`Trying to sign ${e}'s device; can only sign our own device`);if(this.keys.self_signing)return this.signObject({algorithms:t.algorithms,keys:t.keys,device_id:t.deviceId,user_id:e},"self_signing")}checkUserTrust(e){if(this.userId===e.userId&&this.getId()&&this.getId()===e.getId()&&this.getId("self_signing")&&this.getId("self_signing")===e.getId("self_signing"))return new c(!0,this.firstUse);if(!this.keys.user_signing)return new c(!1,e.firstUse);let t;const n=e.keys.master,i=this.getId("user_signing");try{(0,r.pkVerify)(n,i,this.userId),t=!0}catch(e){t=!1}return new c(t,e.firstUse)}checkDeviceTrust(e,t,n){const i=this.checkUserTrust(e),o=e.keys.self_signing;if(!o)return new u(!1,!1,n);const a=function(e,t){return{algorithms:e.algorithms,keys:e.keys,device_id:e.deviceId,user_id:t,signatures:e.signatures}}(t,e.userId);try{return(0,r.pkVerify)(o,e.getId(),e.userId),(0,r.pkVerify)(a,s(o),e.userId),u.fromUserTrustLevel(i,n)}catch(e){return new u(!1,!1,n)}}}t.CrossSigningInfo=a;const f={MASTER:4,USER_SIGNING:2,SELF_SIGNING:1};t.CrossSigningLevel=f;class c{constructor(e,t){this._crossSigningVerified=e,this._tofu=t}isVerified(){return this.isCrossSigningVerified()}isCrossSigningVerified(){return this._crossSigningVerified}isTofu(){return this._tofu}}t.UserTrustLevel=c;class u{constructor(e,t,n){this._crossSigningVerified=e,this._tofu=t,this._localVerified=n}static fromUserTrustLevel(e,t){return new u(e._crossSigningVerified,e._tofu,t)}isVerified(){return this.isCrossSigningVerified()||this.isLocallyVerified()}isCrossSigningVerified(){return this._crossSigningVerified}isLocallyVerified(){return this._localVerified}isTofu(){return this._tofu}}t.DeviceTrustLevel=u}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VerificationBase=void 0;var r=n(19),i=n(10),o=n(4),s=n(48),a=n(34);const f=new Error("Verification timed out");class c extends i.EventEmitter{constructor(e,t,n,r,i,o){super(),this._channel=e,this._baseApis=t,this.userId=n,this.deviceId=r,this.startEvent=i,this.request=o,this.cancelled=!1,this._done=!1,this._promise=null,this._transactionTimeoutTimer=null,this._resetTimer()}_resetTimer(){o.logger.info("Refreshing/starting the verification transaction timeout timer"),null!==this._transactionTimeoutTimer&&clearTimeout(this._transactionTimeoutTimer),this._transactionTimeoutTimer=setTimeout(()=>{this._done||this.cancelled||(o.logger.info("Triggering verification timeout"),this.cancel(f))},6e5)}_endTimer(){null!==this._transactionTimeoutTimer&&(clearTimeout(this._transactionTimeoutTimer),this._transactionTimeoutTimer=null)}_send(e,t){return this._channel.send(e,t)}_waitForEvent(e){return this._done?Promise.reject(new Error("Verification is already done")):(this._expectedEvent=e,new Promise((e,t)=>{this._resolveEvent=e,this._rejectEvent=t}))}handleEvent(e){if(!this._done)if(e.getType()===this._expectedEvent)"m.key.verification.done"!==this._expectedEvent&&(this._expectedEvent=void 0,this._rejectEvent=void 0,this._resetTimer(),this._resolveEvent(e));else if("m.key.verification.cancel"===e.getType()){const e=this._reject;this._reject=void 0,e(new Error("Other side cancelled verification"))}else{const t=new Error("Unexpected message: expecting "+this._expectedEvent+" but got "+e.getType());if(this._expectedEvent=void 0,this._rejectEvent){const e=this._rejectEvent;this._rejectEvent=void 0,e(t)}this.cancel(t)}}done(){this._endTimer(),this._done||(this._channel.needsDoneMessage&&this._send("m.key.verification.done",{}),this._resolve())}cancel(e){if(this._endTimer(),!this._done){if(this.cancelled=!0,this.userId&&this.deviceId)if(e===f){const e=(0,a.newTimeoutError)();this._send(e.getType(),e.getContent())}else if(e instanceof r.MatrixEvent){if(e.getSender()!==this.userId){const t=e.getContent();"m.key.verification.cancel"===e.getType()?(t.code=t.code||"m.unknown",t.reason=t.reason||t.body||"Unknown reason",this._send("m.key.verification.cancel",t)):this._send("m.key.verification.cancel",{code:"m.unknown",reason:t.body||"Unknown reason"})}}else this._send("m.key.verification.cancel",{code:"m.unknown",reason:e.toString()});null!==this._promise?this._reject&&this._reject(e):this._promise=Promise.reject(e),this.emit("cancel",e)}}verify(){return this._promise?this._promise:(this._promise=new Promise((e,t)=>{this._resolve=(...t)=>{this._done=!0,this._endTimer(),e(...t)},this._reject=(...e)=>{this._done=!0,this._endTimer(),t(...e)}}),this._doVerification&&!this._started&&(this._started=!0,this._resetTimer(),Promise.resolve(this._doVerification()).then(this.done.bind(this),this.cancel.bind(this))),this._promise)}async _verifyKeys(e,t,n){const r=[];for(const[i,a]of Object.entries(t)){const t=i.split(":",2)[1],f=await this._baseApis.getStoredDevice(e,t);if(f)await n(i,f,a),r.push(t);else{const f=this._baseApis._crypto._deviceList.getStoredCrossSigningForUser(e);f&&f.getId()===t?(await n(i,s.DeviceInfo.fromStorage({keys:{[i]:t}},t),a),r.push(t)):o.logger.warn(`verification: Could not find device ${t} to verify`)}}if(!r.length)throw new Error("No devices could be verified");for(const t of r)await this._baseApis.setDeviceVerified(e,t)}}t.VerificationBase=c},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.keyFromAuthData=async function(t,n){if(!e.Olm)throw new Error("Olm is not available");if(!t.private_key_salt||!t.private_key_iterations)throw new Error("Salt and/or iterations not found: this backup cannot be restored with a passphrase");return await i(n,t.private_key_salt,t.private_key_iterations)},t.keyFromPassphrase=async function(t){if(!e.Olm)throw new Error("Olm is not available");const n=(0,r.randomString)(32);return{key:await i(t,n,5e5),salt:n,iterations:5e5}},t.deriveKey=i;var r=n(49);async function i(t,n,r){const i=e.crypto.subtle,o=e.TextEncoder;if(!i||!o)throw new Error("Password-based backup is not avaiable on this platform");const s=await i.importKey("raw",(new o).encode(t),{name:"PBKDF2"},!1,["deriveBits"]),a=await i.deriveBits({name:"PBKDF2",salt:(new o).encode(n),iterations:r,hash:"SHA-512"},s,8*e.Olm.PRIVATE_KEY_LENGTH);return new Uint8Array(a)}}).call(this,n(6))},function(e,t,n){"use strict";(function(e,r){var i=n(16);Object.defineProperty(t,"__esModule",{value:!0}),t.encodeRecoveryKey=function(t){const n=new e(s.length+t.length+1);n.set(s,0),n.set(t,s.length);let r=0;for(let e=0;e{this.accountData[e.type]=e})}_accumulateRooms(e){e.rooms&&(e.rooms.invite&&Object.keys(e.rooms.invite).forEach(t=>{this._accumulateRoom(t,"invite",e.rooms.invite[t])}),e.rooms.join&&Object.keys(e.rooms.join).forEach(t=>{this._accumulateRoom(t,"join",e.rooms.join[t])}),e.rooms.leave&&Object.keys(e.rooms.leave).forEach(t=>{this._accumulateRoom(t,"leave",e.rooms.leave[t])}))}_accumulateRoom(e,t,n){switch(t){case"invite":this._accumulateInviteState(e,n);break;case"join":this.inviteRooms[e]&&delete this.inviteRooms[e],this._accumulateJoinState(e,n);break;case"leave":this.inviteRooms[e]?delete this.inviteRooms[e]:delete this.joinRooms[e];break;default:r.logger.error("Unknown cateogory: ",t)}}_accumulateInviteState(e,t){if(!t.invite_state||!t.invite_state.events)return;if(!this.inviteRooms[e])return void(this.inviteRooms[e]={invite_state:t.invite_state});const n=this.inviteRooms[e];t.invite_state.events.forEach(e=>{let t=!1;for(let r=0;r{n._accountData[e.type]=e}),t.unread_notifications&&(n._unreadNotifications=t.unread_notifications),t.summary){const e="m.heroes",r="m.invited_member_count",i="m.joined_member_count",o=n._summary,s=t.summary;o[e]=s[e]||o[e],o[i]=s[i]||o[i],o[r]=s[r]||o[r]}if(t.ephemeral&&t.ephemeral.events&&t.ephemeral.events.forEach(e=>{"m.receipt"===e.type&&e.content&&Object.keys(e.content).forEach(t=>{e.content[t]["m.read"]&&Object.keys(e.content[t]["m.read"]).forEach(r=>{n._readReceipts[r]={data:e.content[t]["m.read"][r],eventId:t}})})}),t.timeline&&t.timeline.limited&&(n._timeline=[]),t.state&&t.state.events&&t.state.events.forEach(e=>{o(n._currentState,e)}),t.timeline&&t.timeline.events&&t.timeline.events.forEach((e,r)=>{o(n._currentState,e),n._timeline.push({event:e,token:0===r?t.timeline.prev_batch:null})}),n._timeline.length>this.opts.maxTimelineEntries){for(let e=n._timeline.length-this.opts.maxTimelineEntries;e{this._accumulateGroup(t,"invite",e.groups.invite[t])}),e.groups.join&&Object.keys(e.groups.join).forEach(t=>{this._accumulateGroup(t,"join",e.groups.join[t])}),e.groups.leave&&Object.keys(e.groups.leave).forEach(t=>{this._accumulateGroup(t,"leave",e.groups.leave[t])}))}_accumulateGroup(e,t,n){for(const t of["invite","join","leave"])delete this.groups[t][e];this.groups[t][e]=n}getJSON(){const e={join:{},invite:{},leave:{}};Object.keys(this.inviteRooms).forEach(t=>{e.invite[t]=this.inviteRooms[t]}),Object.keys(this.joinRooms).forEach(t=>{const n=this.joinRooms[t],r={ephemeral:{events:[]},account_data:{events:[]},state:{events:[]},timeline:{events:[],prev_batch:null},unread_notifications:n._unreadNotifications,summary:n._summary};Object.keys(n._accountData).forEach(e=>{r.account_data.events.push(n._accountData[e])});const s={type:"m.receipt",room_id:t,content:{}};Object.keys(n._readReceipts).forEach(e=>{const t=n._readReceipts[e];s.content[t.eventId]||(s.content[t.eventId]={"m.read":{}}),s.content[t.eventId]["m.read"][e]=t.data}),Object.keys(s.content).length>0&&r.ephemeral.events.push(s),n._timeline.forEach(e=>{if(!r.timeline.prev_batch){if(!e.token)return;r.timeline.prev_batch=e.token}r.timeline.events.push(e.event)});const a=Object.create(null);for(let e=r.timeline.events.length-1;e>=0;e--){const t=r.timeline.events[e];if(null===t.state_key||void 0===t.state_key)continue;const n=(0,i.deepCopy)(t);n.unsigned&&(n.unsigned.prev_content&&(n.content=n.unsigned.prev_content),n.unsigned.prev_sender&&(n.sender=n.unsigned.prev_sender)),o(a,n)}Object.keys(n._currentState).forEach(e=>{Object.keys(n._currentState[e]).forEach(t=>{let i=n._currentState[e][t];a[e]&&a[e][t]&&(i=a[e][t]),r.state.events.push(i)})}),e.join[t]=r});const t=[];return Object.keys(this.accountData).forEach(e=>{t.push(this.accountData[e])}),{nextBatch:this.nextBatch,roomsData:e,groupsData:this.groups,accountData:t}}getNextBatchToken(){return this.nextBatch}}},function(e,t,n){"use strict";var r=String.prototype.replace,i=/%20/g,o=n(81),s={RFC1738:"RFC1738",RFC3986:"RFC3986"};e.exports=o.assign({default:s.RFC3986,formatters:{RFC1738:function(e){return r.call(e,i,"+")},RFC3986:function(e){return String(e)}}},s)},function(e,t){for(var n=[],r=0;r<256;++r)n[r]=(r+256).toString(16).substr(1);e.exports=function(e,t){var r=t||0,i=n;return[i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]]].join("")}},function(e,t,n){"use strict";t.__esModule=!0,t.stateify=t.TokenState=t.CharacterState=void 0;var r=n(50);var i=function(e){this.j=[],this.T=e||null};i.prototype={defaultTransition:!1,on:function(e,t){if(e instanceof Array){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:null,n=this.next(new e(""));return n===this.defaultTransition?(n=new this.constructor(t),this.on(e,n)):t&&(n.T=t),n},test:function(e,t){return e instanceof t}});t.CharacterState=o,t.TokenState=s,t.stateify=function(e,t,n,r){for(var i=0,s=e.length,a=t,f=[],c=void 0;i=s)return[];for(;i0&&void 0!==arguments[0])||arguments[0];if(r.state.client){await r.state.client.leave(r.state.roomId);var t={type:"m.login.password",user:r.state.userId,identifier:{type:"m.id.user",user:r.state.userId},password:r.state.password};await r.state.client.deactivateAccount(t,!0),await r.state.client.stopClient(),await r.state.client.clearStores(),r.setState({client:null,ready:!0}),window.clearInterval(r.state.waitIntervalId)}r.state.localStorage&&r.state.localStorage.clear(),e&&r.setState(r.initialState)})),v()(m()(r),"createLocalStorage",(async function(t,n){var r=e.localStorage;if(null==r){var i="matrix-chat-".concat(t,"-").concat(n),o=R.resolve(R.join(I.homedir(),".local-storage",i));r=new T.LocalStorage(o)}return r})),v()(m()(r),"createClientWithAccount",(async function(){var e=C.createClient(r.props.matrixServerUrl);try{await e.registerRequest({})}catch(f){var t=Object(x.uuid)(),n=Object(x.uuid)(),i=f.data.session,o=await e.registerRequest({auth:{session:i,type:"m.login.dummy"},inhibit_login:!1,password:n,username:t,x_show_msisdn:!0}),s=await r.createLocalStorage(o.device_id,i);r.setState({accessToken:o.access_token,userId:o.user_id,username:t,password:n,localStorage:s,sessionId:i,deviceId:o.device_id});var a={baseUrl:r.props.matrixServerUrl,accessToken:o.access_token,userId:o.user_id,deviceId:o.device_id,sessionStore:new C.WebStorageSessionStore(s)};return C.createClient(a)}})),v()(m()(r),"initializeChat",(async function(){r.setState({ready:!1});var e=await r.createClientWithAccount();try{await e.initCrypto()}catch(e){return r.restartWithoutCrypto()}await e.startClient(),e.once("sync",(async function(t,n,i){"PREPARED"===t&&(r.setState({client:e}),e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e))}))})),v()(m()(r),"restartWithoutCrypto",(async function(){r.state.client&&(r.state.client.leave(r.state.roomId),r.state.client.stopClient(),r.state.client.clearStores(),r.state.localStorage.clear()),r.setState({ready:!1,facilitatorInvited:!1,decryptionErrors:{},roomId:null,typingStatus:null,client:null,isCryptoEnabled:!1}),r.displayBotMessage({body:"Restarting chat without encryption."});var e,t={baseUrl:r.props.matrixServerUrl,accessToken:r.state.accessToken,userId:r.state.userId,deviceId:r.state.deviceId};e=C.createClient(t),await e.startClient(),e.once("sync",(async function(t,n,i){if("PREPARED"===t)try{r.setState({client:e}),e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e),r.displayBotMessage({body:"Messages in this chat are not encrypted."})}catch(e){console.log("error",e),r.handleInitError(e)}}))})),v()(m()(r),"initializeUnencryptedChat",(async function(){r.setState({ready:!1});var e=await r.createClientWithAccount();await e.startClient(),e.once("sync",(async function(t,n,i){e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e)}))})),v()(m()(r),"handleInitError",(function(e){console.log("error",e),r.displayBotMessage({body:r.props.chatUnavailableMessage}),r.setState({ready:!0})})),v()(m()(r),"handleDecryptionError",(async function(e,t){var n=e.getId();r.handleMessageEvent(e),r.setState({decryptionErrors:v()({},n,!0)})})),v()(m()(r),"verifyAllRoomDevices",(async function(e,t){if(t&&e&&r.state.isCryptoEnabled){var n=(await t.getEncryptionTargetMembers()).map((function(e){return e.userId})),i=await e.downloadKeys(n);for(var o in i)for(var s in i[o])await e.setDeviceVerified(o,s)}})),v()(m()(r),"createRoom",(async function(e){var t=new Date,n=t.toLocaleDateString(),i=t.toLocaleTimeString(),o={room_alias_name:"private-support-chat-".concat(Object(x.uuid)()),invite:[r.props.botId],visibility:"private",name:"".concat(i,", ").concat(n," - ").concat(r.props.roomName)},s=await e.isCryptoEnabled();s&&(o.initial_state=[{type:"m.room.encryption",state_key:"",content:U}]);var a=(await e.createRoom(o)).room_id;e.setPowerLevel(a,r.props.botId,100),r.setState({roomId:a,isCryptoEnabled:s})})),v()(m()(r),"sendMessage",(async function(e){if(r.state.client&&r.state.roomId)try{await r.state.client.sendTextMessage(r.state.roomId,e)}catch(t){switch(t.name){case"UnknownDeviceError":Object.keys(t.devices).forEach((function(e){Object.keys(t.devices[e]).map((async function(t){await r.state.client.setDeviceKnown(e,t,!0)}))})),r.sendMessage(e);break;default:r.displayBotMessage({body:"Your message was not sent."}),console.log("Error sending message",t)}}})),v()(m()(r),"displayFakeMessage",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Object(x.uuid)(),i={id:n,type:"m.room.message",sender:t,roomId:r.state.roomId,content:e,timestamp:Date.now()};r.setState({messages:j({},r.state.messages,v()({},n,i))})})),v()(m()(r),"displayBotMessage",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Object(x.uuid)(),i={id:n,type:"m.room.message",sender:r.props.botId,roomId:t||r.state.roomId,content:e,timestamp:Date.now()};r.setState({messages:j({},r.state.messages,v()({},n,i))})})),v()(m()(r),"handleMessageEvent",(function(e){var t={id:e.getId(),type:e.getType(),sender:e.getSender(),roomId:e.getRoomId(),content:e.getContent(),timestamp:e.getTs()};if(!(t.content.showToUser&&t.content.showToUser!==r.state.userId||t.content.body.startsWith("!bot")&&t.sender!==r.state.userId)){var n=s()(r.state.messagesInFlight),i=n.findIndex((function(e){return e===t.content.body}));i>-1&&(n.splice(i,1),r.setState({messagesInFlight:n}));var o=j({},r.state.decryptionErrors);delete o[t.id],r.setState({messages:j({},r.state.messages,v()({},t.id,t)),decryptionErrors:o})}})),v()(m()(r),"handleKeyDown",(function(e){switch(e.keyCode){case 27:r.state.emojiSelectorOpen?r.closeEmojiSelector():r.state.opened&&r.handleToggleOpen()}})),v()(m()(r),"setMatrixListeners",(function(e){e.on("sync",(function(t,n,i){switch(t){case"ERROR":case"SYNCING":break;case"PREPARED":r.setState({client:e})}})),e.on("Room.timeline",(function(t,n){var i=t.getType(),o=t.getContent(),s=t.getSender();if("m.room.encryption"===i&&(r.displayBotMessage({body:"Messages in this chat are secured with end-to-end encryption."},n.room_id),r.verifyAllRoomDevices(e,n)),"m.room.message"===i&&!r.state.isCryptoEnabled){if(t.isEncrypted())return;r.handleMessageEvent(t)}"m.room.member"===i&&"invite"===o.membership&&s===r.props.botId&&r.setState({facilitatorInvited:!0}),"m.room.member"===i&&"join"===o.membership&&s!==r.props.botId&&s!==r.state.userId&&(r.verifyAllRoomDevices(e,n),r.setState({facilitatorId:s,ready:!0}),window.clearInterval(r.state.waitIntervalId))})),e.on("Event.decrypted",(function(e,t){if(t)return r.handleDecryptionError(e,t);"m.room.message"===e.getType()&&r.handleMessageEvent(e)})),e.on("RoomMember.typing",(function(e,t){t.typing&&t.roomId===r.state.roomId?r.setState({typingStatus:"".concat(t.name," is typing...")}):r.setState({typingStatus:null})})),e.on("event",(function(e){var t=e.getType(),n=e.getContent();"m.bot.signal"===t&&r.handleBotSignal(n.signal)}))})),v()(m()(r),"handleBotSignal",(function(e){switch(e){case"END_CHAT":return r.displayBotMessage({body:r.props.exitMessage}),r.exitChat(!1);case"CHAT_OFFLINE":return r.displayBotMessage({body:r.props.chatOfflineMessage}),r.exitChat(!1)}})),v()(m()(r),"handleInputChange",(function(e){r.setState({inputValue:e.target.value})})),v()(m()(r),"handleAcceptTerms",(function(){r.setState({awaitingAgreement:!1}),r.startWaitTimeForFacilitator();try{r.props.isEncryptionDisabled?r.initializeUnencryptedChat():r.initializeChat()}catch(e){r.handleInitError(e)}})),v()(m()(r),"startWaitTimeForFacilitator",(function(){var e=window.setInterval((function(){r.state.facilitatorId||r.state.ready||r.displayBotMessage({body:r.props.waitMessage})}),r.props.waitInterval);r.setState({waitIntervalId:e})})),v()(m()(r),"handleRejectTerms",(function(){r.exitChat(),r.displayBotMessage({body:r.props.exitMessage})})),v()(m()(r),"handleSubmit",(function(e){e.preventDefault();var t=r.state.inputValue;if(!Boolean(t))return null;if(r.state.isCryptoEnabled&&r.state.client&&(!r.state.client.isRoomEncrypted(r.state.roomId)||!r.state.client.isCryptoEnabled()))return null;if(r.state.client&&r.state.roomId){var n=s()(r.state.messagesInFlight);n.push(t),r.setState({inputValue:"",messagesInFlight:n},(function(){return r.sendMessage(t)})),r.chatboxInput.current.focus()}})),v()(m()(r),"onEmojiClick",(function(e,t){e.preventDefault();var n=t.emoji;r.setState({inputValue:r.state.inputValue.concat(n),emojiSelectorOpen:!1},r.chatboxInput.current.focus())})),r.initialState={opened:!1,showDock:!0,client:null,ready:!0,accessToken:null,userId:null,password:null,localStorage:null,messages:{},inputValue:"",errors:[],roomId:null,typingStatus:null,awaitingAgreement:!0,emojiSelectorOpen:!1,facilitatorInvited:!1,isMobile:!0,isSlowConnection:!0,decryptionErrors:{},messagesInFlight:[]},r.state=r.initialState,r.chatboxInput=w.a.createRef(),r.messageWindow=w.a.createRef(),r.termsUrl=w.a.createRef(),r}return y()(n,t),u()(n,[{key:"componentDidUpdate",value:function(e,t){t.messages===this.state.messages&&t.messagesInFlight===this.state.messagesInFlight&&t.typingStatus===this.state.typingStatus||this.messageWindow.current.scrollTo&&this.messageWindow.current.scrollTo(0,this.messageWindow.current.scrollHeight),!t.facilitatorInvited&&this.state.facilitatorInvited&&this.displayBotMessage({body:this.props.confirmationMessage}),!t.opened&&this.state.opened&&this.detectMobile()}},{key:"componentDidMount",value:function(){document.addEventListener("keydown",this.handleKeyDown,!1),window.addEventListener("beforeunload",this.exitChat)}},{key:"componentWillUnmount",value:function(){document.removeEventListener("keydown",this.handleKeyDown,!1),window.removeEventListener("beforeunload",this.exitChat),this.exitChat()}},{key:"render",value:function(){var e,t=this,n=this.state,r=n.ready,o=n.messages,s=n.messagesInFlight,a=n.inputValue,f=n.userId,c=n.roomId,u=n.typingStatus,l=n.opened,d=n.showDock,h=n.emojiSelectorOpen,p=n.isMobile,g=n.decryptionErrors,m=Object.values(o).sort((function(e,t){return e.timestamp-t.timestamp})),_=this.props.position.split(" "),y=i()(_,2),b=y[0],A=y[1];return w.a.createElement("div",{id:"safesupport"},w.a.createElement("div",{className:"docked-widget size-".concat(this.props.size),role:"complementary",style:(e={},v()(e,b,"10px"),v()(e,A,"10px"),e)},w.a.createElement(k.a,{in:l,timeout:250,onExited:this.handleWidgetExit,onEntered:this.handleWidgetEnter},(function(e){return w.a.createElement("div",{className:"widget widget-".concat(e," position-").concat(b),"aria-hidden":!l},w.a.createElement("div",{id:"safesupport-chatbox","aria-haspopup":"dialog"},w.a.createElement(D.a,{handleToggleOpen:t.handleToggleOpen,opened:l,handleExitChat:t.handleExitChat}),w.a.createElement("div",{className:"message-window",ref:t.messageWindow},w.a.createElement("div",{className:"messages"},w.a.createElement("div",{className:"message from-bot"},w.a.createElement("div",{className:"text"},t.props.introMessage)),w.a.createElement("div",{className:"message from-bot"},w.a.createElement("div",{className:"text"},"Please read the full ",w.a.createElement("a",{href:t.props.termsUrl,ref:t.termsUrl,target:"_blank",rel:"noopener noreferrer"},"terms and conditions"),". By using this chat, you agree to these terms.")),w.a.createElement("div",{className:"message from-bot"},w.a.createElement("div",{className:"text"},t.props.agreementMessage)),w.a.createElement("div",{className:"message from-bot"},w.a.createElement("div",{className:"text buttons"},"👉",w.a.createElement("button",{className:"btn",id:"accept",onClick:t.handleAcceptTerms},"YES"),w.a.createElement("button",{className:"btn",id:"reject",onClick:t.handleRejectTerms},"NO"))),m.map((function(e,n){return w.a.createElement(M.a,{key:e.id,message:e,userId:f,botId:t.props.botId,client:t.state.client})})),s.map((function(e,t){return w.a.createElement(M.a,{key:"message-inflight-".concat(t),message:{content:{body:e}},placeholder:!0})})),u&&w.a.createElement("div",{className:"notices"},w.a.createElement("div",{role:"status"},u)),Boolean(Object.keys(g).length)&&w.a.createElement("div",{className:"message from-bot"},w.a.createElement("div",{className:"text buttons"},"Restart chat without encryption?",w.a.createElement("button",{className:"btn",id:"accept",onClick:t.restartWithoutCrypto},"RESTART"))),!r&&w.a.createElement("div",{className:"loader"},"loading..."))),w.a.createElement("div",{className:"input-window"},w.a.createElement("form",{onSubmit:t.handleSubmit},w.a.createElement("div",{className:"message-input-container"},w.a.createElement("input",{id:"message-input",type:"text",onChange:t.handleInputChange,value:a,"aria-label":"Send a message...",placeholder:"Send a message...",autoFocus:!0,ref:t.chatboxInput}),"entered"===e&&!p&&w.a.createElement(B.a,{onEmojiClick:t.onEmojiClick,emojiSelectorOpen:h,toggleEmojiSelector:t.toggleEmojiSelector,closeEmojiSelector:t.closeEmojiSelector})),w.a.createElement("input",{type:"submit",value:"Send",id:"submit",onClick:t.handleSubmit})))))})),d&&!c&&w.a.createElement(P.a,{handleToggleOpen:this.handleToggleOpen,size:this.props.size}),d&&c&&w.a.createElement(D.a,{handleToggleOpen:this.handleToggleOpen,opened:l,handleExitChat:this.handleExitChat})))}}]),n}(w.a.Component);L.propTypes={matrixServerUrl:S.a.string.isRequired,botId:S.a.string.isRequired,termsUrl:S.a.string,introMessage:S.a.string,roomName:S.a.string,agreementMessage:S.a.string,confirmationMessage:S.a.string,exitMessage:S.a.string,chatUnavailableMessage:S.a.string,anonymousDisplayName:S.a.string,waitMessage:S.a.string,chatOfflineMessage:S.a.string,isEncryptionDisabled:S.a.bool,position:S.a.oneOf(["top left","top right","bottom left","bottom right"]),size:S.a.oneOf(["small","large"]),maxWaitTime:S.a.number,waitInterval:S.a.number},L.defaultProps={matrixServerUrl:"https://matrix.rhok.space/",botId:"@help-bot:rhok.space",termsUrl:"https://tosdr.org/",roomName:"Support Chat",introMessage:"This chat application does not collect any of your personal data or any data from your use of this service.",agreementMessage:"Do you want to continue?",confirmationMessage:"Waiting for a facilitator to join the chat...",exitMessage:"The chat is closed. You may close this window.",anonymousDisplayName:"Anonymous",chatUnavailableMessage:"The chat service is not available right now. Please try again later.",waitMessage:"Please be patient, our online facilitators are currently responding to other support requests.",chatOfflineMessage:"All of the chat facilitators are currently offline.",isEncryptionDisabled:!1,position:"bottom right",size:"large",maxWaitTime:6e5,waitInterval:12e4},t.a=L}).call(this,n(6))},function(e,t,n){var r=n(158),i=n(159),o=n(160);e.exports=function(e,t){return r(e)||i(e,t)||o()}},function(e,t){t.endianness=function(){return"LE"},t.hostname=function(){return"undefined"!=typeof location?location.hostname:""},t.loadavg=function(){return[]},t.uptime=function(){return 0},t.freemem=function(){return Number.MAX_VALUE},t.totalmem=function(){return Number.MAX_VALUE},t.cpus=function(){return[]},t.type=function(){return"Browser"},t.release=function(){return"undefined"!=typeof navigator?navigator.appVersion:""},t.networkInterfaces=t.getNetworkInterfaces=function(){return{}},t.arch=function(){return"javascript"},t.platform=function(){return"browser"},t.tmpdir=t.tmpDir=function(){return"/tmp"},t.EOL="\n",t.homedir=function(){return"/"}},function(e,t,n){(function(e){(function(){var r,i,o,s,a,f,c,u,l,d,h,p,g,m=function(e,t){for(var n in t)_.call(t,n)&&(e[n]=t[n]);function r(){this.constructor=e}return r.prototype=t.prototype,e.prototype=new r,e.__super__=t.prototype,e},_={}.hasOwnProperty;p=n(35),h=n(38),d=n(10),g=n(169).sync,f=function(e){var t,n,r,i,o;for(o=[],t=0,n=(i=h.readdirSync(e)).length;tthis.quota)throw new s;if(g(f,_,"utf8"),i||((l=new o(n,this._keys.push(e)-1)).size=y,this._metaKeyMap[e]=l,this.length+=1,this._bytesInUse+=y),u)return r=new a(e,m,t,this._eventUrl),this.emit("storage",r)},r.prototype.getItem=function(e){var t,n;return e=c(e),(n=this._metaKeyMap[e])?(t=p.join(this._location,n.key),h.readFileSync(t,"utf8")):null},r.prototype._getStat=function(e){var t;e=c(e),t=p.join(this._location,encodeURIComponent(e));try{return h.statSync(t)}catch(e){return null}},r.prototype.removeItem=function(e){var t,n,r,i,o,s,f,l;if(e=c(e),s=this._metaKeyMap[e]){for(i in f=null,(r=d.EventEmitter.listenerCount(this,"storage"))&&(f=this.getItem(e)),delete this._metaKeyMap[e],this.length-=1,this._bytesInUse-=s.size,n=p.join(this._location,s.key),this._keys.splice(s.index,1),l=this._metaKeyMap)l[i],(o=this._metaKeyMap[i]).index>s.index&&(o.index-=1);if(u(n),r)return t=new a(e,f,null,this._eventUrl),this.emit("storage",t)}},r.prototype.key=function(e){var t;return"---.EMPTY_STRING.---"===(t=this._keys[e])?"":t},r.prototype.clear=function(){var e;if(f(this._location),this._metaKeyMap=l(),this._keys=[],this.length=0,this._bytesInUse=0,d.EventEmitter.listenerCount(this,"storage"))return e=new a(null,null,null,this._eventUrl),this.emit("storage",e)},r.prototype._getBytesInUse=function(){return this._bytesInUse},r.prototype._deleteLocation=function(){return delete n[this._location],u(this._location),this._metaKeyMap={},this._keys=[],this.length=0,this._bytesInUse=0},r}(d.EventEmitter)),t.LocalStorage=i,t.JSONStorage=r,t.QUOTA_EXCEEDED_ERR=s}).call(this)}).call(this,n(13))},function(e,t,n){(function(t,r,i,o){var s,a,f,c,u={},l=(f="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,function(c){var l,d;if(c=c||{},l||(l=void 0!==c?c:{}),"undefined"!=typeof window)d=function(e){window.crypto.getRandomValues(e)};else{if(!e.exports)throw Error("Cannot find global to attach library to");var h=n(194);d=function(e){var t=h.randomBytes(e.length);e.set(t)},r=t.process}if("undefined"!=typeof OLM_OPTIONS)for(var p in OLM_OPTIONS)OLM_OPTIONS.hasOwnProperty(p)&&(l[p]=OLM_OPTIONS[p]);l.onRuntimeInitialized=function(){We=l._olm_error(),u.PRIVATE_KEY_LENGTH=l._olm_pk_private_key_length(),s&&s()},l.onAbort=function(e){a&&a(e)};var g,m={};for(g in l)l.hasOwnProperty(g)&&(m[g]=l[g]);l.arguments=[],l.thisProgram="./this.program",l.quit=function(e,t){throw t},l.preRun=[],l.postRun=[];var _=!1,y=!1,b=!1,v=!1;_="object"==typeof window,y="function"==typeof importScripts,b="object"==typeof r&&!_&&!y,v=!_&&!b&&!y;var A,w,E="";b?(E=i+"/",l.read=function(e,t){var r=we(e);return r||(A||(A=n(38)),w||(w=n(35)),e=w.normalize(e),r=A.readFileSync(e)),t?r:r.toString()},l.readBinary=function(e){return(e=l.read(e,!0)).buffer||(e=new Uint8Array(e)),C(e.buffer),e},1>2];return e=t+e+15&-16,U[V>>2]=e,(e=e>=$)&&(J(),e=!0),e?(U[V>>2]=t,0):t}function T(e){var t;return t||(t=16),Math.ceil(e/t)*t}m=void 0;var O=!1;function C(e,t){e||Be("Assertion failed: "+t)}function x(e){var t="i8";switch("*"===t.charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":B[e>>0]=0;break;case"i16":j[e>>1]=0;break;case"i32":U[e>>2]=0;break;case"i64":tempI64=[0,(tempDouble=0,1<=+fe(tempDouble)?0>>0:~~+ce((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],U[e>>2]=tempI64[0],U[e+4>>2]=tempI64[1];break;case"float":L[e>>2]=0;break;case"double":q[e>>3]=0;break;default:Be("invalid type for setValue: "+t)}}function M(e,t){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return B[e>>0];case"i16":return j[e>>1];case"i32":case"i64":return U[e>>2];case"float":return L[e>>2];case"double":return q[e>>3];default:Be("invalid type for getValue: "+t)}return null}function P(e){var t,n=l.ALLOC_STACK;if("number"==typeof e)var r=!0,i=e;else r=!1,i=e.length;if(t=4==n?o:["function"==typeof Se?Se:I,ke,I,R][void 0===n?2:n](Math.max(i,1)),r){var o=t;for(C(0==(3&t)),e=t+(-4&i);o>2]=0;for(e=t+i;o>0]=0;return t}return e.subarray||e.slice?N.set(e,t):N.set(new Uint8Array(e),t),t}var D,B,N,j,U,L,q,F,K,G,z,H,V,Q="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function W(e){for(var t=N,n=e;t[n];)++n;if(16r?n+=String.fromCharCode(r):(r-=65536,n+=String.fromCharCode(55296|r>>10,56320|1023&r))}}else n+=String.fromCharCode(r)}}function Y(e,t,n,r){if(!(0=s&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),127>=s){if(n>=r)break;t[n++]=s}else{if(2047>=s){if(n+1>=r)break;t[n++]=192|s>>6}else{if(65535>=s){if(n+2>=r)break;t[n++]=224|s>>12}else{if(2097151>=s){if(n+3>=r)break;t[n++]=240|s>>18}else{if(67108863>=s){if(n+4>=r)break;t[n++]=248|s>>24}else{if(n+5>=r)break;t[n++]=252|s>>30,t[n++]=128|s>>24&63}t[n++]=128|s>>18&63}t[n++]=128|s>>12&63}t[n++]=128|s>>6&63}t[n++]=128|63&s}}return t[n]=0,n-i}function X(e){for(var t=0,n=0;n=r&&(r=65536+((1023&r)<<10)|1023&e.charCodeAt(++n)),127>=r?++t:t=2047>=r?t+2:65535>=r?t+3:2097151>=r?t+4:67108863>=r?t+5:t+6}return t}function J(){Be("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+$+", (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 ")}"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le"),F=K=G=z=H=V=0;var Z=l.TOTAL_STACK||5242880,$=l.TOTAL_MEMORY||16777216;function ee(e){for(;0>0]=e.charCodeAt(n)}var fe=Math.abs,ce=Math.ceil,ue=Math.floor,le=Math.min,de=0,he=null,pe=null;l.preloadedImages={},l.preloadedAudios={};var ge=null,me="data:application/octet-stream;base64,";F=39112,ne.push(),ge="data:application/octet-stream;base64,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dmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAAAAAAAAXZQAAAgAAABmlAAACwAAALiSAABUlAAACAAAALiSAAC0mAAAAAAAAAEAAAABAAAAAQAAAAIAAAACAAAAuJIAANiUAAALAAAAuJIAACKWAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmJgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABPTE1fS0VZUwBPTE1fUk9PVABPTE1fUkFUQ0hFVABzZW5kZXIgY2hhaW4gaW5kZXg6ICVkIAByZWNlaXZlciBjaGFpbiBpbmRpY2VzOgAgc2tpcHBlZCBtZXNzYWdlIGtleXM6ACAlZAABAiJjdXJ2ZTI1NTE5IjoAImVkMjU1MTkiOgBNRUdPTE1fS0VZUwAAAQIDVU5LTk9XTl9FUlJPUgBTVUNDRVNTAE5PVF9FTk9VR0hfUkFORE9NAE9VVFBVVF9CVUZGRVJfVE9PX1NNQUxMAEJBRF9NRVNTQUdFX1ZFUlNJT04AQkFEX01FU1NBR0VfRk9STUFUAEJBRF9NRVNTQUdFX01BQwBCQURfTUVTU0FHRV9LRVlfSUQASU5WQUxJRF9CQVNFNjQAQkFEX0FDQ09VTlRfS0VZAFVOS05PV05fUElDS0xFX1ZFUlNJT04AQ09SUlVQVEVEX1BJQ0tMRQBCQURfU0VTU0lPTl9LRVkAVU5LTk9XTl9NRVNTQUdFX0lOREVYAEJBRF9MRUdBQ1lfQUNDT1VOVF9QSUNLTEUAQkFEX1NJR05BVFVSRQBPTE1fSU5QVVRfQlVGRkVSX1RPT19TTUFMTABQaWNrbGUALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBuYW4ATkFOAC4=";var _e=F;F+=16,V=I(4),K=G=T(F),H=T(z=K+Z),U[V>>2]=H;var ye=!1;function be(e){var t=Array(X(e)+1);return e=Y(e,t,0,t.length),t.length=e,t}function ve(e){for(var t=[],n=0;n>4,i=(15&i)<<4|o>>2;var a=(3&o)<<6|s;t+=String.fromCharCode(r),64!==o&&(t+=String.fromCharCode(i)),64!==s&&(t+=String.fromCharCode(a))}while(n>2]=e),e},_emscripten_memcpy_big:function(e,t,n){return N.set(N.subarray(t,t+n),e),e},DYNAMICTOP_PTR:V,tempDoublePtr:_e,STACKTOP:G,STACK_MAX:z};var Ee=function(e,t,n){"use asm";var r=new e.Int8Array(n);var i=new e.Int16Array(n);var o=new e.Int32Array(n);var s=new e.Uint8Array(n);var a=new e.Uint16Array(n);var f=new e.Uint32Array(n);var c=new e.Float32Array(n);var u=new e.Float64Array(n);var l=t.DYNAMICTOP_PTR|0;var d=t.tempDoublePtr|0;var h=t.STACKTOP|0;var p=t.STACK_MAX|0;var g=0;var m=0;var _=0;var y=0;var b=e.NaN,v=e.Infinity;var A=0,w=0,E=0,S=0,k=0.0;var I=0;var R=e.Math.floor;var T=e.Math.abs;var O=e.Math.sqrt;var C=e.Math.pow;var x=e.Math.cos;var M=e.Math.sin;var P=e.Math.tan;var D=e.Math.acos;var B=e.Math.asin;var N=e.Math.atan;var j=e.Math.atan2;var U=e.Math.exp;var L=e.Math.log;var q=e.Math.ceil;var F=e.Math.imul;var K=e.Math.min;var G=e.Math.max;var z=e.Math.clz32;var H=t.abort;var V=t.assert;var Q=t.enlargeMemory;var W=t.getTotalMemory;var Y=t.abortOnCannotGrowMemory;var X=t.invoke_ii;var J=t.invoke_iii;var Z=t.invoke_iiii;var $=t.invoke_iiiiiiiiii;var ee=t.___setErrNo;var te=t._emscripten_memcpy_big;var ne=0.0;function re(e){e=e|0;var t=0;t=h;h=h+e|0;h=h+15&-16;return t|0}function ie(){return h|0}function oe(e){e=e|0;h=e}function se(e,t){e=e|0;t=t|0;h=e;p=t}function ae(e,t){e=e|0;t=t|0;if(!g){g=e;m=t}}function fe(e){e=e|0;I=e}function ce(){return I|0}function ue(e){e=e|0;var t=0;t=e+2|0;e=(t>>>0)/3|0;return(e<<2|t-(e*3|0))+-2|0}function le(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,f=0,c=0;a=t-((t>>>0)%3|0)|0;o=e+a|0;if(!a){a=n;o=e}else{i=e;do{a=s[i>>0]|0;f=a<<8|(s[i+1>>0]|0);c=s[i+2>>0]|0;i=i+3|0;r[n+3>>0]=r[16+(c&63)>>0]|0;r[n+2>>0]=r[16+((f<<8|c)>>>6&63)>>0]|0;r[n+1>>0]=r[16+(f>>>4&63)>>0]|0;r[n>>0]=r[16+(a>>>2)>>0]|0;n=n+4|0}while((i|0)!=(o|0));a=n}n=e+t-o|0;if(!n){c=a;return c|0}i=s[o>>0]|0;if((n|0)==2){n=s[o+1>>0]|0;r[a+2>>0]=r[16+(n<<2&60)>>0]|0;n=(i<<8|n)>>>4;i=3}else{n=i<<4;i=2}r[a+1>>0]=r[16+(n&63)>>0]|0;r[a>>0]=r[16+(n>>>6)>>0]|0;c=a+i|0;return c|0}function de(e){e=e|0;var t=0;t=e+2|0;return((e&3|0)==1?-1:(t&3)+-2+((t>>>2)*3|0)|0)|0}function he(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,f=0,c=0,u=0,l=0;c=t&-4;a=e+c|0;if(!c)f=e;else{f=(((c+-4|0)>>>2)*3|0)+3|0;i=n;o=e;while(1){u=(s[80+(r[o>>0]&127)>>0]|0)<<6|(s[80+(r[o+1>>0]&127)>>0]|0);l=u<<6|(s[80+(r[o+2>>0]&127)>>0]|0);r[i+2>>0]=l<<6|(s[80+(r[o+3>>0]&127)>>0]|0);o=o+4|0;r[i+1>>0]=l>>>2;r[i>>0]=u>>>4;if((o|0)==(a|0))break;else i=i+3|0}n=n+f|0;f=e+c|0}i=e+t|0;o=i-f|0;if(!o)return i|0;a=(s[80+(r[f>>0]&127)>>0]|0)<<6|(s[80+(r[f+1>>0]&127)>>0]|0);if((o|0)==3)r[n+1>>0]=(a<<6|(s[80+(r[f+2>>0]&127)>>0]|0))>>>2;r[n>>0]=a>>>4;return i|0}function pe(e){e=e|0;var t=0;t=e+2|0;e=(t>>>0)/3|0;return(e<<2|t-(e*3|0))+-2|0}function ge(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,f=0,c=0,u=0;f=t-((t>>>0)%3|0)|0;a=e+f|0;if(!f){f=n;a=e}else{i=n;o=e;do{f=s[o>>0]|0;c=f<<8|(s[o+1>>0]|0);u=s[o+2>>0]|0;o=o+3|0;r[i+3>>0]=r[16+(u&63)>>0]|0;r[i+2>>0]=r[16+((c<<8|u)>>>6&63)>>0]|0;r[i+1>>0]=r[16+(c>>>4&63)>>0]|0;r[i>>0]=r[16+(f>>>2)>>0]|0;i=i+4|0}while((o|0)!=(a|0));f=i}i=e+t-a|0;if(!i){c=f;u=n;u=c-u|0;return u|0}o=s[a>>0]|0;if((i|0)==2){i=s[a+1>>0]|0;r[f+2>>0]=r[16+(i<<2&60)>>0]|0;i=(o<<8|i)>>>4;o=3}else{i=o<<4;o=2}r[f+1>>0]=r[16+(i&63)>>0]|0;r[f>>0]=r[16+(i>>>6)>>0]|0;c=f+o|0;u=n;u=c-u|0;return u|0}function me(e){e=e|0;var t=0;t=e+2|0;return((e&3|0)==1?-1:(t&3)+-2+((t>>>2)*3|0)|0)|0}function _e(e,t,n){e=e|0;t=t|0;n=n|0;he(e,t,n)|0;n=t+2|0;return((t&3|0)==1?-1:(n&3)+-2+((n>>>2)*3|0)|0)|0}function ye(e,t){e=e|0;t=t|0;r[e+3>>0]=t;r[e+2>>0]=t>>>8;r[e+1>>0]=t>>>16;r[e>>0]=t>>>24;return e+4|0}function be(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;o[n>>2]=0;r=e+4|0;if(r>>>0>t>>>0){r=t;return r|0}o[n>>2]=0;t=(s[e>>0]|0)<<8;o[n>>2]=t;t=(t|(s[e+1>>0]|0))<<8;o[n>>2]=t;t=(t|(s[e+2>>0]|0))<<8;o[n>>2]=t;o[n>>2]=t|(s[e+3>>0]|0);return r|0}function ve(e,t){e=e|0;t=t|0;r[e>>0]=t&1;return e+1|0}function Ae(e,t,n){e=e|0;t=t|0;n=n|0;if((e|0)==(t|0)){n=e;return n|0}r[n>>0]=(r[e>>0]|0)!=0&1;n=e+1|0;return n|0}function we(e,t,n){e=e|0;t=t|0;n=n|0;Ps(e|0,t|0,n|0)|0;return e+n|0}function Ee(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=e+r|0;if(i>>>0>t>>>0){i=t;return i|0}Ps(n|0,e|0,r|0)|0;return i|0}function Se(e){e=e|0;return 32}function ke(e,t){e=e|0;t=t|0;var n=0,i=0;i=e;n=i+32|0;do{r[i>>0]=r[t>>0]|0;i=i+1|0;t=t+1|0}while((i|0)<(n|0));return e+32|0}function Ie(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;i=e+32|0;if(i>>>0>t>>>0){i=t;return i|0}t=e;e=n+32|0;do{r[n>>0]=r[t>>0]|0;n=n+1|0;t=t+1|0}while((n|0)<(e|0));return i|0}function Re(e){e=e|0;return 64}function Te(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;n=e;i=t;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));n=e+32|0;i=t+32|0;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));return e+64|0}function Oe(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0;i=e+32|0;if(i>>>0>t>>>0)i=t;else{a=n;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0))}o=i+32|0;if(o>>>0>t>>>0){a=t;return a|0}a=n+32|0;e=i;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0));a=o;return a|0}function Ce(e){e=e|0;return 32}function xe(e,t){e=e|0;t=t|0;var n=0,i=0;i=e;n=i+32|0;do{r[i>>0]=r[t>>0]|0;i=i+1|0;t=t+1|0}while((i|0)<(n|0));return e+32|0}function Me(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;i=e+32|0;if(i>>>0>t>>>0){i=t;return i|0}t=e;e=n+32|0;do{r[n>>0]=r[t>>0]|0;n=n+1|0;t=t+1|0}while((n|0)<(e|0));return i|0}function Pe(e){e=e|0;return 96}function De(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;n=e;i=t;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));n=e+32|0;i=t+32|0;o=n+64|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));return e+96|0}function Be(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0;i=e+32|0;if(i>>>0>t>>>0)i=t;else{a=n;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0))}o=i+64|0;if(o>>>0>t>>>0){a=t;return a|0}a=n+32|0;e=i;s=a+64|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0));a=o;return a|0}function Ne(e,t){e=e|0;t=t|0;r[e+3>>0]=t;r[e+2>>0]=t>>>8;r[e+1>>0]=t>>>16;r[e>>0]=t>>>24;return e+4|0}function je(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;o[n>>2]=0;r=e+4|0;if(r>>>0>t>>>0){r=t;return r|0}o[n>>2]=0;t=(s[e>>0]|0)<<8;o[n>>2]=t;t=(t|(s[e+1>>0]|0))<<8;o[n>>2]=t;t=(t|(s[e+2>>0]|0))<<8;o[n>>2]=t;o[n>>2]=t|(s[e+3>>0]|0);return r|0}function Ue(e,t){e=e|0;t=t|0;r[e>>0]=(t|0)!=0&1;return e+1|0}function Le(e,t,n){e=e|0;t=t|0;n=n|0;if((e|0)==(t|0)){n=e;return n|0}r[n>>0]=(r[e>>0]|0)!=0&1;n=e+1|0;return n|0}function qe(e,t,n){e=e|0;t=t|0;n=n|0;Ps(e|0,t|0,n|0)|0;return e+n|0}function Fe(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=e+r|0;if(i>>>0>t>>>0){i=t;return i|0}Ps(n|0,e|0,r|0)|0;return i|0}function Ke(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0,s=0;if(t>>>0>127){o=t;i=1;while(1){i=i+1|0;if(o>>>0>16383)o=o>>>7;else{s=i;break}}}else s=1;if(e>>>0>127){i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else{o=i;break}}}else o=1;if(n>>>0>127){e=n;i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else break}}else i=1;return t+4+n+r+s+o+i|0}function Ge(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var f=0,c=0;r[a>>0]=t;t=a+2|0;r[a+1>>0]=10;if(i>>>0>127){f=t;c=i;while(1){t=f+1|0;r[f>>0]=c|128;a=c>>>7;if(c>>>0>16383){f=t;c=a}else break}}else a=i;c=t+1|0;r[t>>0]=a;o[e>>2]=c;i=c+i|0;t=i+1|0;r[i>>0]=16;if(n>>>0>127)while(1){a=t+1|0;r[t>>0]=n|128;f=n>>>7;if(n>>>0>16383){t=a;n=f}else{n=f;break}}else a=t;r[a>>0]=n;f=e+4|0;t=a+2|0;r[a+1>>0]=34;if(s>>>0<=127){c=s;i=t;c=c&255;e=i+1|0;r[i>>0]=c;o[f>>2]=e;return}a=t;while(1){t=a+1|0;r[a>>0]=s|128;n=s>>>7;if(s>>>0>16383){a=t;s=n}else break}i=n&255;e=t+1|0;r[t>>0]=i;o[f>>2]=e;return}function ze(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0;s=n-i|0;c=t+s|0;o[e+8>>2]=t;o[e+12>>2]=n;l=e+1|0;r[l>>0]=0;d=e+16|0;h=e+20|0;p=e+24|0;u=e+28|0;o[d>>2]=0;o[d+4>>2]=0;o[d+8>>2]=0;o[d+12>>2]=0;if(n>>>0>>0|(s|0)==0)return;r[e>>0]=r[t>>0]|0;if((s|0)==1)return;a=e+4|0;f=c;s=t+1|0;e:while(1){if((r[s>>0]|0)==10){t=s+1|0;if((t|0)!=(c|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(c|0)){e=c;break}}if((e|0)!=(t|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0));if(n>>>0>(f-e|0)>>>0){s=58;break}}else{n=0;e=t}}else{n=0;e=c}o[d>>2]=e;o[h>>2]=n;e=e+n|0}else e=s;if((e|0)==(c|0)){s=58;break}if((r[e>>0]|0)==16){t=e+1|0;if((t|0)!=(c|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(c|0)){e=c;break}}if((e|0)==(t|0)){n=0;e=t}else{n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0))}}else{n=0;e=c}o[a>>2]=n;r[l>>0]=1}if((e|0)==(c|0)){s=58;break}if((r[e>>0]|0)==34){t=e+1|0;if((t|0)!=(c|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(c|0)){e=c;break}}if((e|0)!=(t|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0));if(n>>>0>(f-e|0)>>>0){s=58;break}}else{n=0;e=t}}else{n=0;e=c}o[p>>2]=e;o[u>>2]=n;e=e+n|0}t:do{if(!((s|0)!=(e|0)|(e|0)==(c|0))){n=r[s>>0]|0;switch(n&7){case 0:{s=s+1|0;e=(s|0)==(c|0);if(n<<24>>24<=-1)while(1){if(e){s=58;break e}n=s+1|0;e=(n|0)==(c|0);if((r[s>>0]|0)>-1){s=n;break}else s=n}if(e)break t;while(1){t=s;s=s+1|0;if((r[t>>0]|0)>-1)break t;if((s|0)==(c|0)){s=58;break e}}}case 2:break;default:{s=58;break e}}s=s+1|0;e=(s|0)==(c|0);if(n<<24>>24<=-1)while(1){if(e){s=58;break e}n=s+1|0;e=(n|0)==(c|0);if((r[s>>0]|0)>-1){s=n;break}else s=n}if(!e){e=s;while(1){t=e;e=e+1|0;if((r[t>>0]|0)>-1)break;if((e|0)==(c|0)){e=c;break}}if((e|0)!=(s|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(s|0));if(n>>>0>(f-e|0)>>>0){s=58;break e}else s=e+n|0}}}else s=e}while(0);if((s|0)==(c|0)){s=58;break}}if((s|0)==58)return}function He(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0,s=0,a=0,f=0;if(e>>>0>127){o=e;i=1;while(1){i=i+1|0;if(o>>>0>16383)o=o>>>7;else break}}else i=1;if(t>>>0>127){s=t;o=1;while(1){o=o+1|0;if(s>>>0>16383)s=s>>>7;else break}}else o=1;if(n>>>0>127){a=n;s=1;while(1){s=s+1|0;if(a>>>0>16383)a=a>>>7;else{f=s;break}}}else f=1;if(r>>>0>127){a=r;s=1;while(1){s=s+1|0;if(a>>>0>16383)a=a>>>7;else break}}else s=1;return e+5+t+n+r+i+o+f+s|0}function Ve(e,t,n,i,s,a,f){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;f=f|0;var c=0,u=0,l=0;r[f>>0]=t;l=e+8|0;t=f+2|0;r[f+1>>0]=10;if(s>>>0>127){c=t;u=s;while(1){t=c+1|0;r[c>>0]=u|128;f=u>>>7;if(u>>>0>16383){c=t;u=f}else break}}else f=s;u=t+1|0;r[t>>0]=f;o[l>>2]=u;s=u+s|0;l=e+4|0;t=s+1|0;r[s>>0]=18;if(i>>>0>127){c=i;while(1){u=t+1|0;r[t>>0]=c|128;f=c>>>7;if(c>>>0>16383){t=u;c=f}else{t=u;break}}}else f=i;s=t+1|0;r[t>>0]=f;o[l>>2]=s;i=s+i|0;t=i+1|0;r[i>>0]=26;if(n>>>0>127){c=n;while(1){u=t+1|0;r[t>>0]=c|128;f=c>>>7;if(c>>>0>16383){t=u;c=f}else{t=u;break}}}else f=n;u=t+1|0;r[t>>0]=f;o[e>>2]=u;n=u+n|0;u=e+12|0;t=n+1|0;r[n>>0]=34;if(a>>>0<=127){i=a;e=t;i=i&255;n=e+1|0;r[e>>0]=i;o[u>>2]=n;return}c=t;while(1){t=c+1|0;r[c>>0]=a|128;f=a>>>7;if(a>>>0>16383){c=t;a=f}else break}e=f&255;n=t+1|0;r[t>>0]=e;o[u>>2]=n;return}function Qe(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0;u=t+n|0;l=e+20|0;d=e+24|0;h=e+4|0;p=e+8|0;g=e+12|0;m=e+16|0;f=e+28|0;c=e+32|0;o[h>>2]=0;o[h+4>>2]=0;o[h+8>>2]=0;o[h+12>>2]=0;o[h+16>>2]=0;o[h+20>>2]=0;o[h+24>>2]=0;o[h+28>>2]=0;if(!n)return;r[e>>0]=r[t>>0]|0;if((n|0)==1)return;a=u;e=t+1|0;e:while(1){if((r[e>>0]|0)==10){s=e+1|0;if((s|0)!=(u|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(u|0)){n=u;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=u}o[l>>2]=n;o[d>>2]=t;n=n+t|0}else n=e;if((n|0)==(u|0)){e=70;break}if((r[n>>0]|0)==18){s=n+1|0;if((s|0)!=(u|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(u|0)){n=u;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=u}o[g>>2]=n;o[m>>2]=t;n=n+t|0}if((n|0)==(u|0)){e=70;break}if((r[n>>0]|0)==26){s=n+1|0;if((s|0)!=(u|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(u|0)){n=u;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=u}o[h>>2]=n;o[p>>2]=t;n=n+t|0}if((n|0)==(u|0)){e=70;break}if((r[n>>0]|0)==34){s=n+1|0;if((s|0)!=(u|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(u|0)){n=u;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=u}o[f>>2]=n;o[c>>2]=t;n=n+t|0}t:do{if(!((e|0)!=(n|0)|(n|0)==(u|0))){t=r[e>>0]|0;switch(t&7){case 0:{e=e+1|0;n=(e|0)==(u|0);if(t<<24>>24<=-1)while(1){if(n){e=70;break e}t=e+1|0;n=(t|0)==(u|0);if((r[e>>0]|0)>-1){e=t;break}else e=t}if(n)break t;while(1){s=e;e=e+1|0;if((r[s>>0]|0)>-1)break t;if((e|0)==(u|0)){e=70;break e}}}case 2:break;default:{e=70;break e}}e=e+1|0;n=(e|0)==(u|0);if(t<<24>>24<=-1)while(1){if(n){e=70;break e}t=e+1|0;n=(t|0)==(u|0);if((r[e>>0]|0)>-1){e=t;break}else e=t}if(!n){n=e;while(1){s=n;n=n+1|0;if((r[s>>0]|0)>-1)break;if((n|0)==(u|0)){n=u;break}}if((n|0)!=(e|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(e|0));if(t>>>0>(a-n|0)>>>0){e=70;break e}else e=n+t|0}}}else e=n}while(0);if((e|0)==(u|0)){e=70;break}}if((e|0)==70)return}function We(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0;if(e>>>0>127){i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else break}}else i=1;if(t>>>0>127){o=t;e=1;while(1){e=e+1|0;if(o>>>0>16383)o=o>>>7;else break}}else e=1;return t+3+n+r+i+e|0}function Ye(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,f=0;r[i>>0]=e;a=i+2|0;r[i+1>>0]=8;if(t>>>0>127){f=a;while(1){a=f+1|0;r[f>>0]=t|128;e=t>>>7;if(t>>>0>16383){f=a;t=e}else break}}else e=t;r[a>>0]=e;e=a+2|0;r[a+1>>0]=18;if(n>>>0>127){t=n;while(1){f=e+1|0;r[e>>0]=t|128;a=t>>>7;if(t>>>0>16383){e=f;t=a}else{e=f;break}}}else a=n;f=e+1|0;r[e>>0]=a;o[s>>2]=f;return f+n-i|0}function Xe(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,f=0,c=0,u=0,l=0,d=0,h=0;c=i+n|0;n=t-c|0;u=e+n|0;l=s+4|0;o[l>>2]=0;d=s+12|0;o[d>>2]=0;h=s+16|0;o[h>>2]=0;if(c>>>0>t>>>0|(n|0)==0)return;r[s>>0]=r[e>>0]|0;e:do{if((n|0)==1)n=0;else{c=u;n=0;i=e+1|0;do{if((r[i>>0]|0)==8){a=i+1|0;if((a|0)!=(u|0)){n=a;while(1){f=n;n=n+1|0;if((r[f>>0]|0)>-1)break;if((n|0)==(u|0)){n=u;break}}if((n|0)==(a|0)){t=0;n=a}else{t=0;e=n;do{e=e+-1|0;t=t<<7|r[e>>0]&127}while((e|0)!=(a|0))}}else{t=0;n=u}o[l>>2]=t;t=n;n=1}else t=i;if((t|0)==(u|0))break e;if((r[t>>0]|0)==18){f=t+1|0;if((f|0)!=(u|0)){t=f;while(1){a=t;t=t+1|0;if((r[a>>0]|0)>-1)break;if((t|0)==(u|0)){t=u;break}}if((t|0)!=(f|0)){e=0;a=t;do{a=a+-1|0;e=e<<7|r[a>>0]&127}while((a|0)!=(f|0));if(e>>>0>(c-t|0)>>>0)break e}else{e=0;t=f}}else{e=0;t=u}o[d>>2]=t;o[h>>2]=e;t=t+e|0}t:do{if(!((i|0)!=(t|0)|(t|0)==(u|0))){e=r[i>>0]|0;switch(e&7){case 0:{i=i+1|0;t=(i|0)==(u|0);if(e<<24>>24<=-1)while(1){if(t)break e;e=i+1|0;t=(e|0)==(u|0);if((r[i>>0]|0)>-1){i=e;break}else i=e}if(t)break t;while(1){f=i;i=i+1|0;if((r[f>>0]|0)>-1)break t;if((i|0)==(u|0))break e}}case 2:break;default:break e}i=i+1|0;t=(i|0)==(u|0);if(e<<24>>24<=-1)while(1){if(t)break e;e=i+1|0;t=(e|0)==(u|0);if((r[i>>0]|0)>-1){i=e;break}else i=e}if(!t){t=i;while(1){f=t;t=t+1|0;if((r[f>>0]|0)>-1)break;if((t|0)==(u|0)){t=u;break}}if((t|0)!=(i|0)){e=0;a=t;do{a=a+-1|0;e=e<<7|r[a>>0]&127}while((a|0)!=(i|0));if(e>>>0>(c-t|0)>>>0)break e;else i=t+e|0}}}else i=t}while(0)}while((i|0)!=(u|0))}}while(0);o[s+8>>2]=n&255;return}function Je(e){e=e|0;mn(e,37520,37536);o[e+3216>>2]=0;r[e+3220>>0]=0;return}function Ze(e){e=e|0;return 64}function $e(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var f=0,c=0,u=0,l=0,d=0;d=h;h=h+224|0;c=d+160|0;u=d+96|0;l=d;if(a>>>0<64){o[e+3216>>2]=1;l=-1;h=d;return l|0}else{pt(s,c);pt(s+32|0,u);t=t+96|0;r[e+3220>>0]=0;s=e+3221|0;a=t;f=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(f|0));s=e+3253|0;a=c;f=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(f|0));s=e+3285|0;a=i;f=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(f|0));gt(t,i,l);gt(c,n,l+32|0);gt(c,i,l+64|0);yn(e,l,96,u);Hr(c,64);Hr(u,64);Hr(l,96);l=0;h=d;return l|0}return 0}function et(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0;y=h;h=h+208|0;p=y+128|0;g=y+96|0;m=y+168|0;_=y;Qe(p,i,s);f=(n|0)!=0;i=o[p+4>>2]|0;a=(i|0)!=0;s=f|a;if(i)s=s&(o[p+8>>2]|0)==32;l=o[p+28>>2]|0;u=o[p+12>>2]|0;d=o[p+20>>2]|0;if(!(s&(l|0)!=0&(u|0)!=0&(o[p+16>>2]|0)==32&(d|0)!=0&(o[p+24>>2]|0)==32)){o[e+3216>>2]=4;_=-1;h=y;return _|0}if(f&a?Fo(n,i,32)|0:0){o[e+3216>>2]=6;_=-1;h=y;return _|0}c=e+3221|0;n=c;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));f=e+3253|0;n=f;i=u;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));s=e+3285|0;n=s;i=d;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));p=o[p+32>>2]|0;i=o[e+4>>2]|0;ze(g,l,p,zs[o[o[i>>2]>>2]&1](i)|0);i=o[g+16>>2]|0;if((i|0)!=0?(o[g+20>>2]|0)==32:0){n=m;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));i=Rr(t,s)|0;if(!i){o[e+3216>>2]=6;i=-1}else{i=i+5|0;gt(i,c,_);gt(t+96|0,f,_+32|0);gt(i,f,_+64|0);_n(e,_,96,m);Hr(_,96);i=0}}else{o[e+3216>>2]=4;i=-1}_=i;h=y;return _|0}function tt(e){e=e|0;return 32}function nt(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0;f=h;h=h+96|0;a=f;if(n>>>0<32){o[e+3216>>2]=2;a=-1;h=f;return a|0}else{n=a;i=e+3221|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));n=a+32|0;i=e+3253|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));n=a+64|0;i=e+3285|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));wt(a,96,t);a=32;h=f;return a|0}return 0}function rt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,f=0,c=0,u=0;u=h;h=h+48|0;c=u;Qe(c,n,r);f=(t|0)!=0;a=o[c+4>>2]|0;n=f|(a|0)!=0;r=(a|0)==0;if(!r)n=n&(o[c+8>>2]|0)==32;i=o[c+12>>2]|0;s=o[c+20>>2]|0;if(!(n&(o[c+28>>2]|0)!=0&(i|0)!=0&(o[c+16>>2]|0)==32&(s|0)!=0&(o[c+24>>2]|0)==32)){t=0;h=u;return t|0}if(r)n=1;else n=(Fo(a,e+3221|0,32)|0)==0;if(f){if(!n){t=0;h=u;return t|0}if(Fo(t,e+3221|0,32)|0){t=0;h=u;return t|0}}else if(!n){t=0;h=u;return t|0}if(Fo(i,e+3253|0,32)|0){t=0;h=u;return t|0}t=(Fo(s,e+3285|0,32)|0)==0;h=u;return t|0}function it(e){e=e|0;return s[e+3220>>0]|0|0}function ot(e,t){e=e|0;t=t|0;t=wn(e,t)|0;if(r[e+3220>>0]|0){e=t;return e|0}e=He(32,32,32,t)|0;return e|0}function st(e){e=e|0;return En(e)|0}function at(e,t,n,i,s,a,f){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;f=f|0;var c=0,u=0,l=0,d=0,p=0;p=h;h=h+16|0;d=p;c=wn(e,n)|0;u=e+3220|0;if(!(r[u>>0]|0))c=He(32,32,32,c)|0;if(c>>>0>f>>>0){o[e+3216>>2]=2;e=-1;h=p;return e|0}l=wn(e,n)|0;if(!(r[u>>0]|0)){Ve(d,3,32,32,32,l,a);a=o[d+8>>2]|0;c=e+3285|0;f=a+32|0;do{r[a>>0]=r[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(f|0));a=o[d>>2]|0;c=e+3221|0;f=a+32|0;do{r[a>>0]=r[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(f|0));a=o[d+4>>2]|0;c=e+3253|0;f=a+32|0;do{r[a>>0]=r[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(f|0));a=o[d+12>>2]|0}a=Sn(e,t,n,i,s,a,l)|0;if((a|0)!=-1){e=a;h=p;return e|0}s=e+8|0;o[e+3216>>2]=o[s>>2];o[s>>2]=0;e=-1;h=p;return e|0}function ft(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0;s=h;h=h+48|0;i=s;do{if((t|0)!=1){Qe(i,n,r);n=o[i+28>>2]|0;if(n|0){r=o[i+32>>2]|0;break}o[e+3216>>2]=4;e=-1;h=s;return e|0}}while(0);n=kn(e,n,r)|0;if((n|0)!=-1){e=n;h=s;return e|0}i=e+8|0;o[e+3216>>2]=o[i>>2];o[i>>2]=0;e=-1;h=s;return e|0}function ct(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var f=0,c=0;c=h;h=h+48|0;f=c;do{if((t|0)!=1){Qe(f,n,i);n=o[f+28>>2]|0;if(n|0){i=o[f+32>>2]|0;break}o[e+3216>>2]=4;e=-1;h=c;return e|0}}while(0);n=In(e,n,i,s,a)|0;if((n|0)==-1){a=e+8|0;o[e+3216>>2]=o[a>>2];o[a>>2]=0;e=-1;h=c;return e|0}else{r[e+3220>>0]=1;e=n;h=c;return e|0}return 0}function ut(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0;g=h;h=h+48|0;p=g+32|0;u=g+24|0;l=g+16|0;i=g;if(!n){h=g;return}r[t>>0]=0;c=t;o[i>>2]=o[e+112>>2];i=vs(t,n,38002,i)|0;i=(i|0)>0?t+i|0:t;d=c+n|0;a=vs(i,d-i|0,38026,g+8|0)|0;i=(a|0)>0?i+a|0:i;a=e+148|0;f=e+152|0;t=c-i+n|0;if((o[a>>2]|0)!=(f|0)){s=0;do{o[u>>2]=o[e+152+(s*68|0)+32>>2];t=vs(i,t,38073,u)|0;i=(t|0)>0?i+t|0:i;s=s+1|0;t=c-i+n|0}while(s>>>0<(((o[a>>2]|0)-f|0)/68|0)>>>0)}t=vs(i,t,38050,l)|0;a=e+492|0;f=e+496|0;if((o[a>>2]|0)==(f|0)){h=g;return}s=0;t=(t|0)>-1?i+t|0:i;while(1){o[p>>2]=o[e+496+(s*68|0)+32>>2];i=vs(t,d-t|0,38073,p)|0;s=s+1|0;if(s>>>0>=(((o[a>>2]|0)-f|0)/68|0)>>>0)break;else t=(i|0)>0?t+i|0:t}h=g;return}function lt(e){e=e|0;var t=0;t=(Se(e+3221|0)|0)+5|0;t=t+(Se(e+3253|0)|0)|0;t=t+(Se(e+3285|0)|0)|0;return t+(bn(e)|0)|0}function dt(e,t){e=e|0;t=t|0;e=ye(e,1)|0;return vn(ke(ke(ke(ve(e,(r[t+3220>>0]|0)!=0)|0,t+3221|0)|0,t+3253|0)|0,t+3285|0)|0,t)|0}function ht(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0;s=h;h=h+16|0;r=s;i=be(e,t,r)|0;e=o[r>>2]|0;e:do{if((e|0)<1){switch(e|0){case-2147483647:break;default:{r=3;break e}}e=1;r=4}else switch(e|0){case 1:{e=0;r=4;break}default:r=3}}while(0);if((r|0)==3){o[n+3216>>2]=9;n=t;h=s;return n|0}else if((r|0)==4){n=An(Ie(Ie(Ie(Ae(i,t,n+3220|0)|0,t,n+3221|0)|0,t,n+3253|0)|0,t,n+3285|0)|0,t,n,e)|0;h=s;return n|0}return 0}function pt(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;i=t+32|0;o=i;n=o+32|0;do{r[o>>0]=r[e>>0]|0;o=o+1|0;e=e+1|0}while((o|0)<(n|0));Mo(t,i,208)|0;return}function gt(e,t,n){e=e|0;t=t|0;n=n|0;Mo(n,e+32|0,t)|0;return}function mt(e,t){e=e|0;t=t|0;hi(t,t+32|0,e);return}function _t(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;yi(r,t,n,e,e+32|0);return}function yt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return(_i(r,t,n,e)|0)!=0|0}function bt(e){e=e|0;return e+16-(e&15)|0}function vt(e,t,n,i,o){e=e|0;t=t|0;n=n|0;i=i|0;o=o|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0;x=h;h=h+256|0;O=x+16|0;C=x;Oo(e,O,256);R=C;S=R+16|0;do{r[R>>0]=r[t>>0]|0;R=R+1|0;t=t+1|0}while((R|0)<(S|0));if(i>>>0>15){A=C+1|0;w=C+2|0;a=C+3|0;f=C+4|0;c=C+5|0;u=C+6|0;l=C+7|0;d=C+8|0;p=C+9|0;g=C+10|0;m=C+11|0;_=C+12|0;y=C+13|0;b=C+14|0;v=C+15|0;k=i+-16|0;I=k&-16;T=I+16|0;E=o+T|0;e=i;i=n;while(1){r[C>>0]=r[C>>0]^r[i>>0];r[A>>0]=r[A>>0]^r[i+1>>0];r[w>>0]=r[w>>0]^r[i+2>>0];r[a>>0]=r[a>>0]^r[i+3>>0];r[f>>0]=r[f>>0]^r[i+4>>0];r[c>>0]=r[c>>0]^r[i+5>>0];r[u>>0]=r[u>>0]^r[i+6>>0];r[l>>0]=r[l>>0]^r[i+7>>0];r[d>>0]=r[d>>0]^r[i+8>>0];r[p>>0]=r[p>>0]^r[i+9>>0];r[g>>0]=r[g>>0]^r[i+10>>0];r[m>>0]=r[m>>0]^r[i+11>>0];r[_>>0]=r[_>>0]^r[i+12>>0];r[y>>0]=r[y>>0]^r[i+13>>0];r[b>>0]=r[b>>0]^r[i+14>>0];r[v>>0]=r[v>>0]^r[i+15>>0];Ro(C,o,O,256);R=C;t=o;S=R+16|0;do{r[R>>0]=r[t>>0]|0;R=R+1|0;t=t+1|0}while((R|0)<(S|0));e=e+-16|0;if(e>>>0<=15)break;else{o=o+16|0;i=i+16|0}}o=E;t=k-I|0;n=n+T|0}else t=i;if(t){e=0;do{T=C+e|0;r[T>>0]=r[T>>0]^r[n+e>>0];e=e+1|0}while((e|0)!=(t|0));if(t>>>0<16)n=t;else{Ro(C,o,O,256);Hr(O,240);Hr(C,16);h=x;return}}else n=0;e=16-t|0;do{T=C+n|0;r[T>>0]=e^(s[T>>0]|0);n=n+1|0}while((n|0)!=16);Ro(C,o,O,256);Hr(O,240);Hr(C,16);h=x;return}function At(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0;O=h;h=h+272|0;I=O+32|0;R=O+16|0;T=O;Oo(e,I,256);k=R;S=k+16|0;do{r[k>>0]=r[t>>0]|0;k=k+1|0;t=t+1|0}while((k|0)<(S|0));if(!i){Hr(I,240);Hr(R,16);Hr(T,16);T=i+-1|0;T=s+T|0;T=r[T>>0]|0;T=T&255;R=T>>>0>i>>>0;T=i-T|0;T=R?-1:T;h=O;return T|0}E=R+1|0;a=R+2|0;f=R+3|0;c=R+4|0;u=R+5|0;l=R+6|0;d=R+7|0;p=R+8|0;g=R+9|0;m=R+10|0;_=R+11|0;y=R+12|0;b=R+13|0;v=R+14|0;A=R+15|0;e=0;do{w=n+e|0;k=T;t=w;S=k+16|0;do{r[k>>0]=r[t>>0]|0;k=k+1|0;t=t+1|0}while((k|0)<(S|0));k=s+e|0;xo(w,k,I,256);r[k>>0]=r[k>>0]^r[R>>0];S=k+1|0;r[S>>0]=r[S>>0]^r[E>>0];S=k+2|0;r[S>>0]=r[S>>0]^r[a>>0];S=k+3|0;r[S>>0]=r[S>>0]^r[f>>0];S=k+4|0;r[S>>0]=r[S>>0]^r[c>>0];S=k+5|0;r[S>>0]=r[S>>0]^r[u>>0];S=k+6|0;r[S>>0]=r[S>>0]^r[l>>0];S=k+7|0;r[S>>0]=r[S>>0]^r[d>>0];S=k+8|0;r[S>>0]=r[S>>0]^r[p>>0];S=k+9|0;r[S>>0]=r[S>>0]^r[g>>0];S=k+10|0;r[S>>0]=r[S>>0]^r[m>>0];S=k+11|0;r[S>>0]=r[S>>0]^r[_>>0];S=k+12|0;r[S>>0]=r[S>>0]^r[y>>0];S=k+13|0;r[S>>0]=r[S>>0]^r[b>>0];S=k+14|0;r[S>>0]=r[S>>0]^r[v>>0];k=k+15|0;r[k>>0]=r[k>>0]^r[A>>0];o[R>>2]=o[T>>2];o[R+4>>2]=o[T+4>>2];o[R+8>>2]=o[T+8>>2];o[R+12>>2]=o[T+12>>2];e=e+16|0}while(e>>>0>>0);Hr(I,240);Hr(R,16);Hr(T,16);T=i+-1|0;T=s+T|0;T=r[T>>0]|0;T=T&255;R=T>>>0>i>>>0;T=i-T|0;T=R?-1:T;h=O;return T|0}function wt(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+112|0;i=r;So(i);ko(i,e,t);Io(i,n);Hr(i,112);h=r;return}function Et(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0;u=h;h=h+288|0;s=u+176|0;a=u;f=u+64|0;c=a;l=c+64|0;do{o[c>>2]=0;c=c+4|0}while((c|0)<(l|0));if(t>>>0>64){So(s);ko(s,e,t);Io(s,a)}else Ps(a|0,e|0,t|0)|0;St(f,a);ko(f,n,r);kt(f,a,i);Hr(a,64);Hr(f,112);h=u;return}function St(e,t){e=e|0;t=t|0;var n=0,i=0,o=0,s=0;s=h;h=h+64|0;i=s;o=i;n=o+64|0;do{r[o>>0]=r[t>>0]|0;o=o+1|0;t=t+1|0}while((o|0)<(n|0));r[i>>0]=r[i>>0]^54;o=i+1|0;r[o>>0]=r[o>>0]^54;o=i+2|0;r[o>>0]=r[o>>0]^54;o=i+3|0;r[o>>0]=r[o>>0]^54;o=i+4|0;r[o>>0]=r[o>>0]^54;o=i+5|0;r[o>>0]=r[o>>0]^54;o=i+6|0;r[o>>0]=r[o>>0]^54;o=i+7|0;r[o>>0]=r[o>>0]^54;o=i+8|0;r[o>>0]=r[o>>0]^54;o=i+9|0;r[o>>0]=r[o>>0]^54;o=i+10|0;r[o>>0]=r[o>>0]^54;o=i+11|0;r[o>>0]=r[o>>0]^54;o=i+12|0;r[o>>0]=r[o>>0]^54;o=i+13|0;r[o>>0]=r[o>>0]^54;o=i+14|0;r[o>>0]=r[o>>0]^54;o=i+15|0;r[o>>0]=r[o>>0]^54;o=i+16|0;r[o>>0]=r[o>>0]^54;o=i+17|0;r[o>>0]=r[o>>0]^54;o=i+18|0;r[o>>0]=r[o>>0]^54;o=i+19|0;r[o>>0]=r[o>>0]^54;o=i+20|0;r[o>>0]=r[o>>0]^54;o=i+21|0;r[o>>0]=r[o>>0]^54;o=i+22|0;r[o>>0]=r[o>>0]^54;o=i+23|0;r[o>>0]=r[o>>0]^54;o=i+24|0;r[o>>0]=r[o>>0]^54;o=i+25|0;r[o>>0]=r[o>>0]^54;o=i+26|0;r[o>>0]=r[o>>0]^54;o=i+27|0;r[o>>0]=r[o>>0]^54;o=i+28|0;r[o>>0]=r[o>>0]^54;o=i+29|0;r[o>>0]=r[o>>0]^54;o=i+30|0;r[o>>0]=r[o>>0]^54;o=i+31|0;r[o>>0]=r[o>>0]^54;o=i+32|0;r[o>>0]=r[o>>0]^54;o=i+33|0;r[o>>0]=r[o>>0]^54;o=i+34|0;r[o>>0]=r[o>>0]^54;o=i+35|0;r[o>>0]=r[o>>0]^54;o=i+36|0;r[o>>0]=r[o>>0]^54;o=i+37|0;r[o>>0]=r[o>>0]^54;o=i+38|0;r[o>>0]=r[o>>0]^54;o=i+39|0;r[o>>0]=r[o>>0]^54;o=i+40|0;r[o>>0]=r[o>>0]^54;o=i+41|0;r[o>>0]=r[o>>0]^54;o=i+42|0;r[o>>0]=r[o>>0]^54;o=i+43|0;r[o>>0]=r[o>>0]^54;o=i+44|0;r[o>>0]=r[o>>0]^54;o=i+45|0;r[o>>0]=r[o>>0]^54;o=i+46|0;r[o>>0]=r[o>>0]^54;o=i+47|0;r[o>>0]=r[o>>0]^54;o=i+48|0;r[o>>0]=r[o>>0]^54;o=i+49|0;r[o>>0]=r[o>>0]^54;o=i+50|0;r[o>>0]=r[o>>0]^54;o=i+51|0;r[o>>0]=r[o>>0]^54;o=i+52|0;r[o>>0]=r[o>>0]^54;o=i+53|0;r[o>>0]=r[o>>0]^54;o=i+54|0;r[o>>0]=r[o>>0]^54;o=i+55|0;r[o>>0]=r[o>>0]^54;o=i+56|0;r[o>>0]=r[o>>0]^54;o=i+57|0;r[o>>0]=r[o>>0]^54;o=i+58|0;r[o>>0]=r[o>>0]^54;o=i+59|0;r[o>>0]=r[o>>0]^54;o=i+60|0;r[o>>0]=r[o>>0]^54;o=i+61|0;r[o>>0]=r[o>>0]^54;o=i+62|0;r[o>>0]=r[o>>0]^54;o=i+63|0;r[o>>0]=r[o>>0]^54;So(e);ko(e,i,64);Hr(i,64);h=s;return}function kt(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0,f=0;f=h;h=h+208|0;o=f;s=f+96|0;a=o;i=a+64|0;do{r[a>>0]=r[t>>0]|0;a=a+1|0;t=t+1|0}while((a|0)<(i|0));r[o>>0]=r[o>>0]^92;a=o+1|0;r[a>>0]=r[a>>0]^92;a=o+2|0;r[a>>0]=r[a>>0]^92;a=o+3|0;r[a>>0]=r[a>>0]^92;a=o+4|0;r[a>>0]=r[a>>0]^92;a=o+5|0;r[a>>0]=r[a>>0]^92;a=o+6|0;r[a>>0]=r[a>>0]^92;a=o+7|0;r[a>>0]=r[a>>0]^92;a=o+8|0;r[a>>0]=r[a>>0]^92;a=o+9|0;r[a>>0]=r[a>>0]^92;a=o+10|0;r[a>>0]=r[a>>0]^92;a=o+11|0;r[a>>0]=r[a>>0]^92;a=o+12|0;r[a>>0]=r[a>>0]^92;a=o+13|0;r[a>>0]=r[a>>0]^92;a=o+14|0;r[a>>0]=r[a>>0]^92;a=o+15|0;r[a>>0]=r[a>>0]^92;a=o+16|0;r[a>>0]=r[a>>0]^92;a=o+17|0;r[a>>0]=r[a>>0]^92;a=o+18|0;r[a>>0]=r[a>>0]^92;a=o+19|0;r[a>>0]=r[a>>0]^92;a=o+20|0;r[a>>0]=r[a>>0]^92;a=o+21|0;r[a>>0]=r[a>>0]^92;a=o+22|0;r[a>>0]=r[a>>0]^92;a=o+23|0;r[a>>0]=r[a>>0]^92;a=o+24|0;r[a>>0]=r[a>>0]^92;a=o+25|0;r[a>>0]=r[a>>0]^92;a=o+26|0;r[a>>0]=r[a>>0]^92;a=o+27|0;r[a>>0]=r[a>>0]^92;a=o+28|0;r[a>>0]=r[a>>0]^92;a=o+29|0;r[a>>0]=r[a>>0]^92;a=o+30|0;r[a>>0]=r[a>>0]^92;a=o+31|0;r[a>>0]=r[a>>0]^92;a=o+32|0;r[a>>0]=r[a>>0]^92;a=o+33|0;r[a>>0]=r[a>>0]^92;a=o+34|0;r[a>>0]=r[a>>0]^92;a=o+35|0;r[a>>0]=r[a>>0]^92;a=o+36|0;r[a>>0]=r[a>>0]^92;a=o+37|0;r[a>>0]=r[a>>0]^92;a=o+38|0;r[a>>0]=r[a>>0]^92;a=o+39|0;r[a>>0]=r[a>>0]^92;a=o+40|0;r[a>>0]=r[a>>0]^92;a=o+41|0;r[a>>0]=r[a>>0]^92;a=o+42|0;r[a>>0]=r[a>>0]^92;a=o+43|0;r[a>>0]=r[a>>0]^92;a=o+44|0;r[a>>0]=r[a>>0]^92;a=o+45|0;r[a>>0]=r[a>>0]^92;a=o+46|0;r[a>>0]=r[a>>0]^92;a=o+47|0;r[a>>0]=r[a>>0]^92;a=o+48|0;r[a>>0]=r[a>>0]^92;a=o+49|0;r[a>>0]=r[a>>0]^92;a=o+50|0;r[a>>0]=r[a>>0]^92;a=o+51|0;r[a>>0]=r[a>>0]^92;a=o+52|0;r[a>>0]=r[a>>0]^92;a=o+53|0;r[a>>0]=r[a>>0]^92;a=o+54|0;r[a>>0]=r[a>>0]^92;a=o+55|0;r[a>>0]=r[a>>0]^92;a=o+56|0;r[a>>0]=r[a>>0]^92;a=o+57|0;r[a>>0]=r[a>>0]^92;a=o+58|0;r[a>>0]=r[a>>0]^92;a=o+59|0;r[a>>0]=r[a>>0]^92;a=o+60|0;r[a>>0]=r[a>>0]^92;a=o+61|0;r[a>>0]=r[a>>0]^92;a=o+62|0;r[a>>0]=r[a>>0]^92;a=o+63|0;r[a>>0]=r[a>>0]^92;Io(e,o+64|0);So(s);ko(s,o,96);Io(s,n);Hr(s,112);Hr(o,96);h=f;return}function It(e,t,n,i,s,a,f,c){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;f=f|0;c=c|0;var u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0;b=h;h=h+336|0;l=b+208|0;y=b+96|0;g=b+32|0;m=b;_=b+320|0;r[_>>0]=1;d=(n|0)==0;u=d?32:i;i=d?38496:n;d=g;p=d+64|0;do{o[d>>2]=0;d=d+4|0}while((d|0)<(p|0));if(u>>>0>64){So(l);ko(l,i,u);Io(l,g)}else Ps(g|0,i|0,u|0)|0;St(y,g);ko(y,e,t);kt(y,g,m);p=g+32|0;o[p>>2]=0;o[p+4>>2]=0;o[p+8>>2]=0;o[p+12>>2]=0;o[p+16>>2]=0;o[p+20>>2]=0;o[p+24>>2]=0;o[p+28>>2]=0;o[g>>2]=o[m>>2];o[g+4>>2]=o[m+4>>2];o[g+8>>2]=o[m+8>>2];o[g+12>>2]=o[m+12>>2];o[g+16>>2]=o[m+16>>2];o[g+20>>2]=o[m+20>>2];o[g+24>>2]=o[m+24>>2];o[g+28>>2]=o[m+28>>2];St(y,g);ko(y,s,a);ko(y,_,1);kt(y,g,m);if(c>>>0<=32){a=c;Ps(f|0,m|0,a|0)|0;Hr(y,112);Hr(g,64);Hr(m,32);h=b;return}e=c+-33&-32;t=e+32|0;l=c+-32|0;u=f;i=c;while(1){d=u;n=m;p=d+32|0;do{r[d>>0]=r[n>>0]|0;d=d+1|0;n=n+1|0}while((d|0)<(p|0));i=i+-32|0;r[_>>0]=(r[_>>0]|0)+1<<24>>24;St(y,g);ko(y,m,32);ko(y,s,a);ko(y,_,1);kt(y,g,m);if(i>>>0<=32)break;else u=u+32|0}a=l-e|0;f=f+t|0;Ps(f|0,m|0,a|0)|0;Hr(y,112);Hr(g,64);Hr(m,32);h=b;return}function Rt(e){e=e|0;return ki(o[e>>2]|0)|0}function Tt(){return 36}function Ot(e){e=e|0;Hr(e,36);return e|0}function Ct(e){e=e|0;var t=0;Hr(e,36);t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 36}function xt(e,t,n){e=e|0;t=t|0;n=n|0;if((ue(32)|0)>>>0>n>>>0){o[e>>2]=15;n=-1;return n|0}else{he(t,ue(32)|0,e+4|0)|0;n=0;return n|0}return 0}function Mt(){return ue(32)|0}function Pt(e,t){e=e|0;t=t|0;return ue(Hs[o[37564>>2]&3](37548,t)|0)|0}function Dt(e){e=e|0;return ue(zs[o[9390]&1](37548)|0)|0}function Bt(e){e=e|0;return 32}function Nt(e,t,n,r,i,s,a,f,c,u,l){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;f=f|0;c=c|0;u=u|0;l=l|0;var d=0,p=0,g=0,m=0;m=h;h=h+112|0;d=m+40|0;p=m;g=m+32|0;if(((ue(Hs[o[37564>>2]&3](37548,n)|0)|0)>>>0<=i>>>0?(zs[o[9390]&1](37548)|0)>>>0<=a>>>0:0)?(ue(32)|0)>>>0<=c>>>0:0){if(l>>>0<32){o[e>>2]=1;s=-1;h=m;return s|0}pt(u,d);le(d,32,f)|0;gt(d,e+4|0,p);d=Hs[o[37564>>2]&3](37548,n)|0;l=r+i+(0-d)|0;e=Qs[o[37568>>2]&3](37548,p,32,t,n,l,d,g,8)|0;if((e|0)!=-1){le(g,8,s)|0;le(l,d,r)|0}s=e;h=m;return s|0}o[e>>2]=2;s=-1;h=m;return s|0}function jt(e){e=e|0;return ki(o[e>>2]|0)|0}function Ut(){return 68}function Lt(e){e=e|0;Hr(e,68);return e|0}function qt(e){e=e|0;var t=0;Hr(e,68);t=e+68|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 68}function Ft(){return 32}function Kt(){return 32}function Gt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((ue(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;pt(r,i);le(i,32,t)|0;i=0;return i|0}return 0}function zt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((ue(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;pt(r,i);le(i,32,t)|0;i=0;return i|0}return 0}function Ht(e){e=e|0;return Ii((Re(e+4|0)|0)+4|0)|0}function Vt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;s=e+4|0;a=(Re(s)|0)+4|0;if((Ii(a)|0)>>>0>i>>>0){o[e>>2]=2;a=-1;return a|0}else{Te(ye(Ri(r,a)|0,1)|0,s)|0;a=Ti(t,n,r,a)|0;return a|0}return 0}function Qt(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var f=0,c=0,u=0,l=0;l=h;h=h+16|0;c=l;u=(s|0)!=0;if(u?(ue(32)|0)>>>0>a>>>0:0){o[e>>2]=2;i=-1}else f=4;do{if((f|0)==4){t=Oi(t,n,r,i,e)|0;if((t|0)!=-1){a=r+t|0;t=a+1|0;n=be(r,t,c)|0;if((o[c>>2]|0)==1)t=Oe(n,t,e+4|0)|0;else o[e>>2]=9;if((a|0)==(t|0)){if(!u)break;le(e+4|0,32,s)|0;break}else{if(o[e>>2]|0){i=-1;break}o[e>>2]=10;i=-1;break}}else i=-1}}while(0);h=l;return i|0}function Wt(e,t){e=e|0;t=t|0;e=o[9393]|0;t=de(t)|0;return Hs[e&3](37548,t)|0}function Yt(e,t,n,r,i,s,a,f,c){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;f=f|0;c=c|0;var u=0,l=0,d=0,p=0,g=0;d=h;h=h+80|0;l=d+40|0;i=d;u=d+32|0;g=o[9393]|0;p=de(a)|0;if((Hs[g&3](37548,p)|0)>>>0>c>>>0){o[e>>2]=2;g=-1;h=d;return g|0}he(t,n,l)|0;gt(e+4|0,l,i);he(r,ue(8)|0,u)|0;g=de(a)|0;he(s,a,s)|0;i=Qs[o[37576>>2]&3](37548,i,32,u,8,s,g,f,c)|0;if((i|0)==-1){o[e>>2]=5;i=-1}g=i;h=d;return g|0}function Xt(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<32){o[e>>2]=2;e=-1;return e|0}else{n=e+36|0;e=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(e|0));e=32;return e|0}return 0}function Jt(){return 100}function Zt(e){e=e|0;Hr(e,100);return e|0}function $t(e){e=e|0;return ki(o[e>>2]|0)|0}function en(e){e=e|0;var t=0;Hr(e,100);t=e+100|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 100}function tn(){return 32}function nn(){return ue(32)|0}function rn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((ue(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;mt(r,i);le(i,32,t)|0;i=0;return i|0}return 0}function on(){return ue(64)|0}function sn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((ue(64)|0)>>>0>i>>>0){o[e>>2]=2;i=-1;return i|0}else{i=r+(ue(64)|0)+-64|0;_t(e+4|0,t,n,i);le(i,64,r)|0;i=ue(64)|0;return i|0}return 0}function an(e){e=e|0;return 8}function fn(e,t){e=e|0;t=t|0;return bt(t)|0}function cn(e,t,n,i,s,a,f,c,u){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;f=f|0;c=c|0;u=u|0;var l=0,d=0,p=0,g=0;g=h;h=h+192|0;p=g+32|0;l=g+112|0;d=g;if(u>>>0<8|(bt(s)|0)>>>0>f>>>0){p=-1;h=g;return p|0}It(t,n,0,0,o[e+4>>2]|0,o[e+8>>2]|0,p,80);t=l;n=p;f=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(f|0));e=l+32|0;t=e;n=p+32|0;f=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(f|0));t=l+64|0;n=p+64|0;f=t+16|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(f|0));Hr(p,80);vt(l,l+64|0,i,s,a);Et(e,32,c,u+-8|0,d);a=d;s=o[a>>2]|0;a=o[a+4>>2]|0;p=c+u+-8|0;c=p;r[c>>0]=s;r[c+1>>0]=s>>8;r[c+2>>0]=s>>16;r[c+3>>0]=s>>24;p=p+4|0;r[p>>0]=a;r[p+1>>0]=a>>8;r[p+2>>0]=a>>16;r[p+3>>0]=a>>24;Hr(l,80);p=u;h=g;return p|0}function un(e,t){e=e|0;t=t|0;return t|0}function ln(e,t,n,i,s,a,f,c,u){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;f=f|0;c=c|0;u=u|0;var l=0,d=0,p=0,g=0;g=h;h=h+192|0;p=g+32|0;l=g+112|0;d=g;if(s>>>0<8|f>>>0>u>>>0){p=-1;h=g;return p|0}It(t,n,0,0,o[e+4>>2]|0,o[e+8>>2]|0,p,80);t=l;n=p;u=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(u|0));e=l+32|0;t=e;n=p+32|0;u=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(u|0));t=l+64|0;n=p+64|0;u=t+16|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(u|0));Hr(p,80);Et(e,32,i,s+-8|0,d);if(Vr(i+s+-8|0,d,8)|0){e=At(l,l+64|0,a,f,c)|0;Hr(l,80)}else{Hr(l,80);e=-1}p=e;h=g;return p|0}function dn(e){e=e|0;o[e>>2]=0;return}function hn(e){e=e|0;return 32}function pn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if(i>>>0<32){o[e>>2]=2;i=-1;return i|0}else{wt(t,n,r);i=32;return i|0}return 0}function gn(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;if(s>>>0>=64?yt(t,n,r,i)|0:0){s=0;return s|0}o[e>>2]=5;s=-1;return s|0}function mn(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;o[e+8>>2]=0;o[e+44>>2]=e+48;o[e+148>>2]=e+152;o[e+492>>2]=e+496;return}function _n(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0;l=h;h=h+64|0;u=l;c=o[e>>2]|0;It(t,n,0,0,o[c>>2]|0,o[c+4>>2]|0,u,64);c=e+152|0;t=e+148|0;n=o[t>>2]|0;if((n|0)==(e+492|0)){f=(n|0)==(c|0)?e+84|0:c;t=n}else{a=n+68|0;o[t>>2]=a;f=c;t=a}t=t+-68|0;if((t|0)!=(f|0))do{n=t;t=t+-68|0;s=t;a=n+68|0;do{o[n>>2]=o[s>>2];n=n+4|0;s=s+4|0}while((n|0)<(a|0))}while((t|0)!=(f|0));o[e+184>>2]=0;n=e+12|0;s=u;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=e+188|0;s=u+32|0;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=c;s=i;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));Hr(u,64);h=l;return}function yn(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0;l=h;h=h+64|0;u=l;c=o[e>>2]|0;It(t,n,0,0,o[c>>2]|0,o[c+4>>2]|0,u,64);c=e+48|0;t=e+44|0;n=o[t>>2]|0;if((n|0)==(e+148|0)){f=(n|0)==(c|0)?e+-52|0:c;t=n}else{a=n+100|0;o[t>>2]=a;f=c;t=a}t=t+-100|0;if((t|0)!=(f|0))do{n=t;t=t+-100|0;s=t;a=n+100|0;do{o[n>>2]=o[s>>2];n=n+4|0;s=s+4|0}while((n|0)<(a|0))}while((t|0)!=(f|0));o[e+112>>2]=0;n=e+12|0;s=u;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=e+116|0;s=u+32|0;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=c;s=i;a=n+64|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));Hr(u,64);h=l;return}function bn(e){e=e|0;var t=0,n=0,r=0,i=0;t=e+48|0;r=o[e+44>>2]|0;if((t|0)==(r|0))i=36;else{n=4;do{n=n+36+(Re(t)|0)|0;t=t+100|0}while((t|0)!=(r|0));i=n+32|0}t=e+152|0;r=o[e+148>>2]|0;if((t|0)==(r|0))t=4;else{n=t;t=4;do{t=t+36+(Se(n)|0)|0;n=n+68|0}while((n|0)!=(r|0))}i=i+t|0;t=e+496|0;r=o[e+492>>2]|0;if((t|0)==(r|0)){e=4;e=i+e|0;return e|0}n=t;t=4;do{t=t+36+(Se(n)|0)|0;n=n+68|0}while((n|0)!=(r|0));e=i+t|0;return e|0}function vn(e,t){e=e|0;t=t|0;var n=0,r=0;e=we(e,t+12|0,32)|0;r=t+44|0;n=t+48|0;e=ye(e,((o[r>>2]|0)-n|0)/100|0)|0;r=o[r>>2]|0;if((n|0)!=(r|0))do{e=we(Te(e,n)|0,n+68|0,32)|0;e=ye(e,o[n+64>>2]|0)|0;n=n+100|0}while((n|0)!=(r|0));r=t+148|0;n=t+152|0;e=ye(e,((o[r>>2]|0)-n|0)/68|0)|0;r=o[r>>2]|0;if((n|0)!=(r|0))do{e=we(ke(e,n)|0,n+36|0,32)|0;e=ye(e,o[n+32>>2]|0)|0;n=n+68|0}while((n|0)!=(r|0));r=t+492|0;n=t+496|0;e=ye(e,((o[r>>2]|0)-n|0)/68|0)|0;r=o[r>>2]|0;if((n|0)==(r|0)){t=e;return t|0}do{e=we(ke(e,n)|0,n+36|0,32)|0;e=ye(e,o[n+32>>2]|0)|0;n=n+68|0}while((n|0)!=(r|0));return e|0}function An(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,f=0,c=0,u=0;u=h;h=h+16|0;c=u;e=be(Ee(e,t,n+12|0,32)|0,t,c)|0;f=o[c>>2]|0;o[c>>2]=f+-1;if(!((e|0)==(t|0)|(f|0)==0)){s=n+44|0;a=n+148|0;f=n+48|0;do{i=o[s>>2]|0;if((i|0)==(a|0))i=f;else o[s>>2]=i+100;e=be(Ee(Oe(e,t,i)|0,t,i+68|0,32)|0,t,i+64|0)|0;i=o[c>>2]|0;o[c>>2]=i+-1}while(!((e|0)==(t|0)|(i|0)==0))}e=be(e,t,c)|0;f=o[c>>2]|0;o[c>>2]=f+-1;if(!((e|0)==(t|0)|(f|0)==0)){s=n+148|0;a=n+492|0;f=n+424|0;do{i=o[s>>2]|0;if((i|0)==(a|0))i=f;else o[s>>2]=i+68;e=be(Ee(Ie(e,t,i)|0,t,i+36|0,32)|0,t,i+32|0)|0;i=o[c>>2]|0;o[c>>2]=i+-1}while(!((e|0)==(t|0)|(i|0)==0))}e=be(e,t,c)|0;f=o[c>>2]|0;o[c>>2]=f+-1;if(!((e|0)==(t|0)|(f|0)==0)){a=n+492|0;f=n+3216|0;s=n+3148|0;do{i=o[a>>2]|0;if((i|0)==(f|0))i=s;else o[a>>2]=i+68;e=be(Ee(Ie(e,t,i)|0,t,i+36|0,32)|0,t,i+32|0)|0;n=o[c>>2]|0;o[c>>2]=n+-1}while(!((e|0)==(t|0)|(n|0)==0))}if(!r){c=e;h=u;return c|0}c=be(e,t,c)|0;h=u;return c|0}function wn(e,t){e=e|0;t=t|0;var n=0,r=0;if((o[e+44>>2]|0)==(e+48|0))n=0;else n=o[e+112>>2]|0;r=e+4|0;e=o[r>>2]|0;e=Hs[o[(o[e>>2]|0)+4>>2]&3](e,t)|0;t=o[r>>2]|0;return Ke(n,32,e,zs[o[o[t>>2]>>2]&1](t)|0)|0}function En(e){e=e|0;return((o[e+44>>2]|0)==(e+48|0)?32:0)|0}function Sn(e,t,n,i,s,a,f){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;f=f|0;var c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0;_=h;h=h+112|0;g=_+64|0;m=_;u=e+44|0;d=e+48|0;if((o[u>>2]|0)==(d|0))c=0;else c=o[e+112>>2]|0;p=e+4|0;y=o[p>>2]|0;y=Hs[o[(o[y>>2]|0)+4>>2]&3](y,n)|0;l=o[p>>2]|0;l=Ke(c,32,y,zs[o[o[l>>2]>>2]&1](l)|0)|0;c=(o[u>>2]|0)==(d|0);if((c?32:0)>>>0>s>>>0){o[e+8>>2]=1;y=-1;h=_;return y|0}if(l>>>0>f>>>0){o[e+8>>2]=2;y=-1;h=_;return y|0}if(c){o[u>>2]=e+148;pt(i,d);f=o[e>>2]|0;gt(d,e+152|0,g);i=e+12|0;It(g,32,i,32,o[f+8>>2]|0,o[f+12>>2]|0,m,64);f=m;u=i+32|0;do{r[i>>0]=r[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(u|0));c=e+116|0;i=c;f=m+32|0;u=i+32|0;do{r[i>>0]=r[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(u|0));i=e+112|0;o[i>>2]=0;Hr(m,64);Hr(g,32)}else{i=e+112|0;c=e+116|0}s=g+4|0;Et(c,32,38077,1,s);o[g>>2]=o[i>>2];Et(c,32,38078,1,c);o[i>>2]=(o[i>>2]|0)+1;c=o[p>>2]|0;c=Hs[o[(o[c>>2]|0)+4>>2]&3](c,n)|0;Ge(m,3,o[g>>2]|0,32,c,a);i=o[m>>2]|0;f=d;u=i+32|0;do{r[i>>0]=r[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(u|0));y=o[p>>2]|0;Qs[o[(o[y>>2]|0)+8>>2]&3](y,s,32,t,n,o[m+4>>2]|0,c,a,l)|0;Hr(g,36);y=l;h=_;return y|0}function kn(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0;s=h;h=h+32|0;r=s;i=e+4|0;a=o[i>>2]|0;ze(r,t,n,zs[o[o[a>>2]>>2]&1](a)|0);if(!(o[r+24>>2]|0)){o[e+8>>2]=4;a=-1;h=s;return a|0}else{a=o[i>>2]|0;a=Hs[o[(o[a>>2]|0)+12>>2]&3](a,o[r+28>>2]|0)|0;h=s;return a|0}return 0}function In(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0;R=h;h=h+240|0;E=R+96|0;S=R+32|0;l=R;d=R+160|0;k=R+128|0;m=e+4|0;A=o[m>>2]|0;ze(k,t,n,zs[o[o[A>>2]>>2]&1](A)|0);if((r[k>>0]|0)!=3){o[e+8>>2]=3;I=-1;h=R;return I|0}if((r[k+1>>0]|0?(w=k+16|0,o[w>>2]|0):0)?(y=k+24|0,o[y>>2]|0):0){A=o[m>>2]|0;g=k+28|0;if((Hs[o[(o[A>>2]|0)+12>>2]&3](A,o[g>>2]|0)|0)>>>0>s>>>0){o[e+8>>2]=2;I=-1;h=R;return I|0}if((o[k+20>>2]|0)!=32){o[e+8>>2]=4;I=-1;h=R;return I|0}f=e+152|0;A=e+148|0;n=o[A>>2]|0;e:do{if((f|0)!=(n|0)){c=o[w>>2]|0;u=0;t=f;do{p=(Fo(t,c,32)|0)==0;u=p?t:u;t=t+68|0}while(!(p|(t|0)==(n|0)));if(u){t=u+32|0;d=k+4|0;n=o[d>>2]|0;if((o[t>>2]|0)>>>0<=n>>>0){v=u;I=Rn(e,t,k,i,s)|0;_=1;b=31;break}t=e+496|0;p=e+492|0;c=o[p>>2]|0;if((t|0)!=(c|0)){u=k+8|0;l=k+12|0;while(1){if(((n|0)==(o[t+32>>2]|0)?(Fo(t,o[w>>2]|0,32)|0)==0:0)?(a=o[m>>2]|0,a=Qs[o[(o[a>>2]|0)+16>>2]&3](a,t+36|0,32,o[u>>2]|0,o[l>>2]|0,o[y>>2]|0,o[g>>2]|0,i,s)|0,(a|0)!=-1):0)break;t=t+68|0;if((t|0)==(c|0))break e;n=o[d>>2]|0}Hr(t,68);I=(o[p>>2]|0)+-68|0;o[p>>2]=I;if((I|0)==(t|0)){I=a;h=R;return I|0}do{m=t;t=t+68|0;_=t;y=m+68|0;do{o[m>>2]=o[_>>2];m=m+4|0;_=_+4|0}while((m|0)<(y|0))}while((t|0)!=(o[p>>2]|0));h=R;return a|0}}else b=15}else b=15}while(0);if((b|0)==15){a=e+48|0;if((o[e+44>>2]|0)!=(a|0)?(o[k+4>>2]|0)>>>0<=2e3:0){m=d;_=o[w>>2]|0;y=m+32|0;do{r[m>>0]=r[_>>0]|0;m=m+1|0;_=_+1|0}while((m|0)<(y|0));v=o[e>>2]|0;I=d+32|0;gt(a,d,E);It(E,32,e+12|0,32,o[v+8>>2]|0,o[v+12>>2]|0,S,64);o[l>>2]=o[S>>2];o[l+4>>2]=o[S+4>>2];o[l+8>>2]=o[S+8>>2];o[l+12>>2]=o[S+12>>2];o[l+16>>2]=o[S+16>>2];o[l+20>>2]=o[S+20>>2];o[l+24>>2]=o[S+24>>2];o[l+28>>2]=o[S+28>>2];v=S+32|0;a=d+36|0;o[a>>2]=o[v>>2];o[a+4>>2]=o[v+4>>2];o[a+8>>2]=o[v+8>>2];o[a+12>>2]=o[v+12>>2];o[a+16>>2]=o[v+16>>2];o[a+20>>2]=o[v+20>>2];o[a+24>>2]=o[v+24>>2];o[a+28>>2]=o[v+28>>2];o[I>>2]=0;Hr(S,64);Hr(E,32);a=Rn(e,I,k,i,s)|0;Hr(l,32);Hr(d,68)}else a=-1;v=0;I=a;_=0;b=31}if((b|0)==31?(I|0)!=-1:0){if(!_){a=o[A>>2]|0;if((a|0)==(e+492|0))f=(a|0)==(f|0)?e+84|0:f;else{a=a+68|0;o[A>>2]=a}a=a+-68|0;if((a|0)!=(f|0))do{m=a;a=a+-68|0;_=a;y=m+68|0;do{o[m>>2]=o[_>>2];m=m+4|0;_=_+4|0}while((m|0)<(y|0))}while((a|0)!=(f|0));m=f;_=o[w>>2]|0;y=m+32|0;do{r[m>>0]=r[_>>0]|0;m=m+1|0;_=_+1|0}while((m|0)<(y|0));a=e+48|0;_=o[e>>2]|0;gt(a,f,E);m=e+12|0;It(E,32,m,32,o[_+8>>2]|0,o[_+12>>2]|0,S,64);_=S;y=m+32|0;do{r[m>>0]=r[_>>0]|0;m=m+1|0;_=_+1|0}while((m|0)<(y|0));m=f+36|0;_=S+32|0;y=m+32|0;do{r[m>>0]=r[_>>0]|0;m=m+1|0;_=_+1|0}while((m|0)<(y|0));n=f+32|0;o[n>>2]=0;Hr(S,64);Hr(E,32);Hr(a,100);t=e+44|0;S=(o[t>>2]|0)+-100|0;o[t>>2]=S;if((S|0)==(a|0))g=f;else{do{m=a;a=a+100|0;_=a;y=m+100|0;do{o[m>>2]=o[_>>2];m=m+4|0;_=_+4|0}while((m|0)<(y|0))}while((a|0)!=(o[t>>2]|0));g=f}}else{g=v;n=v+32|0}c=k+4|0;if((o[n>>2]|0)>>>0<(o[c>>2]|0)>>>0){u=e+496|0;l=e+492|0;d=e+3216|0;a=g+36|0;p=e+532|0;f=e+528|0;do{t=o[l>>2]|0;if((t|0)==(d|0))t=d;else{t=t+68|0;o[l>>2]=t}t=t+-68|0;if((t|0)!=(u|0))do{m=t;t=t+-68|0;_=t;y=m+68|0;do{o[m>>2]=o[_>>2];m=m+4|0;_=_+4|0}while((m|0)<(y|0))}while((t|0)!=(u|0));Et(a,32,38077,1,p);o[f>>2]=o[n>>2];m=u;_=g;y=m+32|0;do{r[m>>0]=r[_>>0]|0;m=m+1|0;_=_+1|0}while((m|0)<(y|0));Et(a,32,38078,1,a);e=(o[n>>2]|0)+1|0;o[n>>2]=e}while(e>>>0<(o[c>>2]|0)>>>0)}else a=g+36|0;Et(a,32,38078,1,a);o[n>>2]=(o[n>>2]|0)+1;h=R;return I|0}o[e+8>>2]=5;I=-1;h=R;return I|0}o[e+8>>2]=4;I=-1;h=R;return I|0}function Rn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0,d=0;d=h;h=h+80|0;f=d+36|0;c=d;u=n+4|0;l=o[u>>2]|0;a=o[t>>2]|0;if(l>>>0>>0|(l-a|0)>>>0>2e3){l=-1;h=d;return l|0}a=f;s=a+36|0;do{o[a>>2]=o[t>>2];a=a+4|0;t=t+4|0}while((a|0)<(s|0));t=f+4|0;if((o[f>>2]|0)>>>0>>0)do{Et(t,32,38078,1,t);l=(o[f>>2]|0)+1|0;o[f>>2]=l}while(l>>>0<(o[u>>2]|0)>>>0);l=c+4|0;Et(t,32,38077,1,l);o[c>>2]=o[f>>2];u=o[e+4>>2]|0;l=Qs[o[(o[u>>2]|0)+16>>2]&3](u,l,32,o[n+8>>2]|0,o[n+12>>2]|0,o[n+24>>2]|0,o[n+28>>2]|0,r,i)|0;Hr(f,36);h=d;return l|0}function Tn(e,t,n){e=e|0;t=t|0;n=n|0;if(e|0)r[e>>0]=3;if(t|0)r[t>>0]=1;if(!n)return;r[n>>0]=3;return}function On(){return-1}function Cn(e){e=e|0;return ki(o[e+7368>>2]|0)|0}function xn(e){e=e|0;return ki(o[e+3216>>2]|0)|0}function Mn(e){e=e|0;return ki(o[e>>2]|0)|0}function Pn(){return 7372}function Dn(){return 3320}function Bn(){return 4}function Nn(e){e=e|0;Hr(e,7372);Ir(e);return e|0}function jn(e){e=e|0;Hr(e,3320);Je(e);return e|0}function Un(e){e=e|0;Hr(e,4);dn(e);return e|0}function Ln(e){e=e|0;Hr(e,7372);Ir(e);return 7372}function qn(e){e=e|0;Hr(e,3320);Je(e);return 3320}function Fn(e){e=e|0;Hr(e,4);dn(e);return 4}function Kn(e){e=e|0;return Ii(Fr(e)|0)|0}function Gn(e){e=e|0;return Ii(lt(e)|0)|0}function zn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=Fr(e)|0;if((Ii(s)|0)>>>0>i>>>0){o[e+7368>>2]=2;s=-1;return s|0}else{Kr(Ri(r,s)|0,e)|0;s=Ti(t,n,r,s)|0;return s|0}return 0}function Hn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=lt(e)|0;if((Ii(s)|0)>>>0>i>>>0){o[e+3216>>2]=2;s=-1;return s|0}else{dt(Ri(r,s)|0,e)|0;s=Ti(t,n,r,s)|0;return s|0}return 0}function Vn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=e+7368|0;t=Oi(t,n,r,i,s)|0;if((t|0)==-1){s=-1;return s|0}n=r+t|0;if((n|0)==(Gr(r,n+1|0,e)|0)){s=i;return s|0}if(o[s>>2]|0){s=-1;return s|0}o[s>>2]=10;s=-1;return s|0}function Qn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=e+3216|0;t=Oi(t,n,r,i,s)|0;if((t|0)==-1){s=-1;return s|0}n=r+t|0;if((n|0)==(ht(r,n+1|0,e)|0)){s=i;return s|0}if(o[s>>2]|0){s=-1;return s|0}o[s>>2]=10;s=-1;return s|0}function Wn(e){e=e|0;return Or(e)|0}function Yn(e,t,n){e=e|0;t=t|0;n=n|0;e=Cr(e,t,n)|0;Hr(t,n);return e|0}function Xn(e){e=e|0;return xr(e)|0}function Jn(e,t,n){e=e|0;t=t|0;n=n|0;return Mr(e,t,n)|0}function Zn(e){e=e|0;return ue(Pr(e)|0)|0}function $n(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;s=Pr(e)|0;if((ue(s)|0)>>>0>i>>>0){o[e+7368>>2]=2;s=-1;return s|0}else{a=0-s|0;Dr(e,t,n,r+(ue(s)|0)+a|0,s)|0;i=ue(s)|0;le(r+i+a|0,s,r)|0;s=i;return s|0}return 0}function er(e){e=e|0;return Br(e)|0}function tr(e,t,n){e=e|0;t=t|0;n=n|0;return Nr(e,t,n)|0}function nr(e){e=e|0;return jr(e)|0}function rr(e){e=e|0;return Ur(e)|0}function ir(e,t){e=e|0;t=t|0;return Lr(e,t)|0}function or(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;t=qr(e,t,n,r)|0;Hr(n,r);return t|0}function sr(e){e=e|0;return Ze(e)|0}function ar(e,t,n,r,i,s,a,f){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;f=f|0;var c=0,u=0,l=0;l=h;h=h+64|0;c=l+32|0;u=l;if((de(r)|0)==32?(de(s)|0)==32:0){he(n,r,c)|0;he(i,s,u)|0;u=$e(e,t,c,u,a,f)|0;Hr(a,f);h=l;return u|0}o[e+3216>>2]=7;u=-1;h=l;return u|0}function fr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=de(r)|0;if((i|0)==-1){o[e+3216>>2]=7;i=-1;return i|0}else{he(n,r,n)|0;i=et(e,t,0,n,i)|0;return i|0}return 0}function cr(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;var a=0,f=0;f=h;h=h+32|0;a=f;if((de(r)|0)!=32){o[e+3216>>2]=7;a=-1;h=f;return a|0}he(n,r,a)|0;n=de(s)|0;if((n|0)==-1){o[e+3216>>2]=7;n=-1}else{he(i,s,i)|0;n=et(e,t,a,i,n)|0}a=n;h=f;return a|0}function ur(e){e=e|0;return ue(tt(e)|0)|0}function lr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=tt(e)|0;if((ue(r)|0)>>>0>n>>>0){o[e+3216>>2]=2;r=-1;return r|0}n=0-r|0;if((nt(e,t+(ue(r)|0)+n|0,r)|0)==-1){r=-1;return r|0}e=ue(r)|0;le(t+e+n|0,r,t)|0;r=e;return r|0}function dr(e){e=e|0;return s[e+3220>>0]|0|0}function hr(e,t,n){e=e|0;t=t|0;n=n|0;ut(e,t,n);return}function pr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=de(n)|0;if((r|0)==-1){o[e+3216>>2]=7;r=-1;return r|0}else{he(t,n,t)|0;r=(rt(e,0,t,r)|0)&1;return r|0}return 0}function gr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;a=h;h=h+32|0;s=a;if((de(n)|0)!=32){o[e+3216>>2]=7;s=-1;h=a;return s|0}he(t,n,s)|0;t=de(i)|0;if((t|0)==-1){o[e+3216>>2]=7;t=-1}else{he(r,i,r)|0;t=(rt(e,s,r,t)|0)&1}s=t;h=a;return s|0}function mr(e,t){e=e|0;t=t|0;t=Tr(e,t+3285|0)|0;if((t|0)!=-1)return t|0;o[e+7368>>2]=6;return t|0}function _r(e){e=e|0;return it(e)|0}function yr(e){e=e|0;return st(e)|0}function br(e,t){e=e|0;t=t|0;return ue(ot(e,t)|0)|0}function vr(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var f=0;f=ot(e,n)|0;if((ue(f)|0)>>>0>a>>>0){o[e+3216>>2]=2;f=-1;return f|0}a=0-f|0;n=at(e,t,n,r,i,s+(ue(f)|0)+a|0,f)|0;Hr(r,i);if((n|0)==-1){f=-1;return f|0}i=ue(f)|0;le(s+i+a|0,f,s)|0;f=i;return f|0}function Ar(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=de(r)|0;if((i|0)==-1){o[e+3216>>2]=7;i=-1;return i|0}else{he(n,r,n)|0;i=ft(e,t,n,i)|0;return i|0}return 0}function wr(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;var a=0;a=de(r)|0;if((a|0)==-1){o[e+3216>>2]=7;a=-1;return a|0}else{he(n,r,n)|0;a=ct(e,t,n,a,i,s)|0;return a|0}return 0}function Er(e){e=e|0;return ue(hn(e)|0)|0}function Sr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=hn(e)|0;if((ue(s)|0)>>>0>i>>>0){o[e>>2]=2;s=-1;return s|0}i=0-s|0;if((pn(e,t,n,r+(ue(s)|0)+i|0,s)|0)==-1){s=-1;return s|0}n=ue(s)|0;le(r+n+i|0,s,r)|0;s=n;return s|0}function kr(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var f=0,c=0;c=h;h=h+32|0;f=c;if((de(n)|0)!=32){o[e>>2]=7;f=-1;h=c;return f|0}he(t,n,f)|0;t=de(a)|0;if((t|0)==-1){o[e>>2]=7;t=-1}else{he(s,a,s)|0;t=gn(e,f,r,i,s,t)|0}f=t;h=c;return f|0}function Ir(e){e=e|0;o[e+160>>2]=e+164;o[e+7364>>2]=0;o[e+7368>>2]=0;return}function Rr(e,t){e=e|0;t=t|0;var n=0;n=e+164|0;e=o[e+160>>2]|0;if((n|0)==(e|0)){t=0;return t|0}while(1){if(Vr(n+5|0,t,32)|0){e=5;break}n=n+72|0;if((n|0)==(e|0)){n=0;e=5;break}}if((e|0)==5)return n|0;return 0}function Tr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0;n=e+164|0;s=e+160|0;if((n|0)==(o[s>>2]|0)){s=-1;return s|0}while(1){if(Vr(n+5|0,t,32)|0)break;e=n+72|0;if((e|0)==(o[s>>2]|0)){e=-1;r=8;break}else n=e}if((r|0)==8)return e|0;e=o[n>>2]|0;i=(o[s>>2]|0)+-72|0;o[s>>2]=i;if((i|0)==(n|0)){s=e;return s|0}do{t=n;n=n+72|0;r=n;i=t+72|0;do{o[t>>2]=o[r>>2];t=t+4|0;r=r+4|0}while((t|0)<(i|0))}while((n|0)!=(o[s>>2]|0));return e|0}function Or(e){e=e|0;return 64}function Cr(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<64){o[e+7368>>2]=1;n=-1;return n|0}else{mt(t,e);pt(t+32|0,e+96|0);n=0;return n|0}return 0}function xr(e){e=e|0;e=ue(32)|0;return e+30+(ue(32)|0)|0}function Mr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0;a=ue(32)|0;if((a+30+(ue(32)|0)|0)>>>0>n>>>0){o[e+7368>>2]=2;t=-1;return t|0}else{r[t>>0]=123;i=t+1|0;s=38079;a=i+13|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));r[t+14>>0]=34;n=le(e+96|0,32,t+15|0)|0;r[n>>0]=34;r[n+1>>0]=44;i=n+2|0;s=38093;a=i+10|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));r[n+12>>0]=34;e=le(e,32,n+13|0)|0;r[e>>0]=34;r[e+1>>0]=125;t=e+2-t|0;return t|0}return 0}function Pr(e){e=e|0;return 64}function Dr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if(i>>>0<64){o[e+7368>>2]=2;i=-1;return i|0}else{_t(e,t,n,r);i=64;return i|0}return 0}function Br(e){e=e|0;var t=0,n=0,i=0;n=e+164|0;i=o[e+160>>2]|0;if((n|0)!=(i|0)){t=1;e=0;do{if(!(r[n+4>>0]|0)){t=ue(4)|0;e=e+6+t+(ue(32)|0)|0;t=0}n=n+72|0}while((n|0)!=(i|0));if(!t){i=e;n=16;i=n+i|0;return i|0}}else e=0;i=e;n=17;i=n+i|0;return i|0}function Nr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0;p=h;h=h+16|0;l=p;u=e+164|0;c=e+160|0;f=o[c>>2]|0;if((u|0)!=(f|0)){s=1;a=u;i=0;do{if(!(r[a+4>>0]|0)){s=ue(4)|0;i=i+6+s+(ue(32)|0)|0;s=0}a=a+72|0}while((a|0)!=(f|0));if(s)d=4;else s=16}else{i=0;d=4}if((d|0)==4)s=17;if((s+i|0)>>>0>n>>>0){o[e+7368>>2]=2;d=-1;h=p;return d|0}r[t>>0]=123;i=t+1|0;s=38079;a=i+13|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));i=t+14|0;f=o[c>>2]|0;if((u|0)!=(f|0)){a=u;s=123;do{if(!(r[a+4>>0]|0)){r[i>>0]=s;r[i+1>>0]=34;Ne(l,o[a>>2]|0)|0;i=le(l,4,i+2|0)|0;r[i>>0]=34;r[i+1>>0]=58;r[i+2>>0]=34;i=le(a+5|0,32,i+3|0)|0;r[i>>0]=34;i=i+1|0;s=44}a=a+72|0}while((a|0)!=(f|0));if(s<<24>>24!=44)d=16}else{s=123;d=16}if((d|0)==16){r[i>>0]=s;i=i+1|0}r[i>>0]=125;r[i+1>>0]=125;d=i+2-t|0;h=p;return d|0}function jr(e){e=e|0;var t=0,n=0,i=0;t=e+164|0;i=o[e+160>>2]|0;if((t|0)==(i|0)){i=0;return i|0}e=0;do{n=t+4|0;if(!(r[n>>0]|0)){r[n>>0]=1;e=e+1|0}t=t+72|0}while((t|0)!=(i|0));return e|0}function Ur(e){e=e|0;return 100}function Lr(e,t){e=e|0;t=t|0;return t<<5|0}function qr(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0;if(t<<5>>>0>i>>>0){o[e+7368>>2]=1;p=-1;return p|0}if(!t){p=0;return p|0}h=e+164|0;p=e+160|0;u=e+7364|0;l=e+7364|0;d=e+168|0;c=e+169|0;f=0;while(1){i=o[p>>2]|0;if((i|0)==(u|0))i=u;else{i=i+72|0;o[p>>2]=i}i=i+-72|0;if((i|0)!=(h|0))do{e=i;i=i+-72|0;s=i;a=e+72|0;do{o[e>>2]=o[s>>2];e=e+4|0;s=s+4|0}while((e|0)<(a|0))}while((i|0)!=(h|0));a=(o[l>>2]|0)+1|0;o[l>>2]=a;o[h>>2]=a;r[d>>0]=0;pt(n,c);f=f+1|0;if((f|0)==(t|0))break;else n=n+32|0}return t|0}function Fr(e){e=e|0;var t=0,n=0,r=0,i=0;r=Pe(e)|0;i=Re(e+96|0)|0;t=e+164|0;n=o[e+160>>2]|0;if((t|0)==(n|0)){n=4;r=r+8|0;i=r+i|0;i=i+n|0;return i|0}e=4;do{e=e+5+(Re(t+5|0)|0)|0;t=t+72|0}while((t|0)!=(n|0));r=r+8|0;i=r+i|0;i=i+e|0;return i|0}function Kr(e,t){e=e|0;t=t|0;var n=0,i=0;e=Te(De(ye(e,2)|0,t)|0,t+96|0)|0;i=t+160|0;n=t+164|0;e=ye(e,((o[i>>2]|0)-n|0)/72|0)|0;i=o[i>>2]|0;if((n|0)==(i|0)){i=e;t=t+7364|0;t=o[t>>2]|0;t=ye(i,t)|0;return t|0}do{e=ye(e,o[n>>2]|0)|0;e=Te(ve(e,(r[n+4>>0]|0)!=0)|0,n+5|0)|0;n=n+72|0}while((n|0)!=(i|0));t=t+7364|0;t=o[t>>2]|0;t=ye(e,t)|0;return t|0}function Gr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0;c=h;h=h+16|0;f=c+4|0;a=c;e=be(e,t,a)|0;switch(o[a>>2]|0){case 2:{e=be(Oe(Be(e,t,n)|0,t,n+96|0)|0,t,f)|0;a=o[f>>2]|0;o[f>>2]=a+-1;if(!((e|0)==(t|0)|(a|0)==0)){i=n+160|0;s=n+7364|0;a=n+7292|0;do{r=o[i>>2]|0;if((r|0)==(s|0))r=a;else o[i>>2]=r+72;e=Oe(Ae(be(e,t,r)|0,t,r+4|0)|0,t,r+5|0)|0;r=o[f>>2]|0;o[f>>2]=r+-1}while(!((e|0)==(t|0)|(r|0)==0))}n=be(e,t,n+7364|0)|0;h=c;return n|0}case 1:{o[n+7368>>2]=13;n=t;h=c;return n|0}default:{o[n+7368>>2]=9;n=t;h=c;return n|0}}return 0}function zr(e,t){e=e|0;t=t|0;var n=0;n=e+t|0;if(!t)return;do{r[e>>0]=0;e=e+1|0}while((e|0)!=(n|0));return}function Hr(e,t){e=e|0;t=t|0;var n=0;n=e+t|0;if(!t)return;do{r[e>>0]=0;e=e+1|0}while((e|0)!=(n|0));return}function Vr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;o=h;h=h+16|0;i=o;r[i>>0]=0;if(n|0)while(1){n=n+-1|0;r[i>>0]=r[i>>0]|r[t>>0]^r[e>>0];if(!n)break;else{t=t+1|0;e=e+1|0}}h=o;return(r[i>>0]|0)==0|0}function Qr(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0;E=s[t>>0]|0;m=xs(s[t+1>>0]|0|0,0,8)|0;R=I;O=xs(s[t+2>>0]|0|0,0,16)|0;R=R|I;l=xs(s[t+3>>0]|0|0,0,24)|0;R=R|I;T=r[t+6>>0]|0;c=s[t+4>>0]|0;S=xs(s[t+5>>0]|0|0,0,8)|0;u=I;T=xs(T&255|0,0,16)|0;u=xs(S|c|T|0,u|I|0,6)|0;T=I;c=r[t+9>>0]|0;S=s[t+7>>0]|0;a=xs(s[t+8>>0]|0|0,0,8)|0;v=I;c=xs(c&255|0,0,16)|0;v=xs(a|S|c|0,v|I|0,5)|0;c=I;S=r[t+12>>0]|0;a=s[t+10>>0]|0;y=xs(s[t+11>>0]|0|0,0,8)|0;k=I;S=xs(S&255|0,0,16)|0;k=xs(y|a|S|0,k|I|0,3)|0;S=I;a=r[t+15>>0]|0;y=s[t+13>>0]|0;p=xs(s[t+14>>0]|0|0,0,8)|0;f=I;a=xs(a&255|0,0,16)|0;f=xs(p|y|a|0,f|I|0,2)|0;a=I;y=s[t+16>>0]|0;p=xs(s[t+17>>0]|0|0,0,8)|0;A=I;n=xs(s[t+18>>0]|0|0,0,16)|0;A=A|I;w=xs(s[t+19>>0]|0|0,0,24)|0;w=p|y|n|w;A=A|I;n=r[t+22>>0]|0;y=s[t+20>>0]|0;p=xs(s[t+21>>0]|0|0,0,8)|0;i=I;n=xs(n&255|0,0,16)|0;i=xs(p|y|n|0,i|I|0,7)|0;n=I;y=r[t+25>>0]|0;p=s[t+23>>0]|0;C=xs(s[t+24>>0]|0|0,0,8)|0;b=I;y=xs(y&255|0,0,16)|0;b=xs(C|p|y|0,b|I|0,5)|0;y=I;p=r[t+28>>0]|0;C=s[t+26>>0]|0;g=xs(s[t+27>>0]|0|0,0,8)|0;h=I;p=xs(p&255|0,0,16)|0;h=xs(g|C|p|0,h|I|0,4)|0;p=I;C=r[t+31>>0]|0;g=s[t+29>>0]|0;d=xs(s[t+30>>0]|0|0,0,8)|0;_=I;t=xs(C&255|0,0,16)|0;_=xs(d|g|t|0,_|I|0,2)|0;_=_&33554428;t=Ss(_|0,0,16777216,0)|0;g=Cs(t|0,I|0,25)|0;g=ks(0,0,g|0,I|0)|0;R=Ss(g&19|0,0,m|E|O|l|0,R|0)|0;l=I;O=Ss(u|0,T|0,16777216,0)|0;E=Cs(O|0,I|0,25)|0;E=Ss(v|0,c|0,E|0,I|0)|0;c=I;O=ks(u|0,T|0,O&-33554432|0,0)|0;T=I;u=Ss(k|0,S|0,16777216,0)|0;v=Cs(u|0,I|0,25)|0;v=Ss(f|0,a|0,v|0,I|0)|0;a=I;f=Ss(w|0,A|0,16777216,0)|0;m=Cs(f|0,I|0,25)|0;m=Ss(i|0,n|0,m|0,I|0)|0;n=I;i=Ss(b|0,y|0,16777216,0)|0;g=Cs(i|0,I|0,25)|0;g=Ss(h|0,p|0,g|0,I|0)|0;p=I;h=Ss(R|0,l|0,33554432,0)|0;d=Cs(h|0,I|0,26)|0;d=Ss(O|0,T|0,d|0,I|0)|0;h=ks(R|0,l|0,h&-67108864|0,0)|0;l=Ss(E|0,c|0,33554432,0)|0;R=Cs(l|0,I|0,26)|0;S=Ss(R|0,I|0,k|0,S|0)|0;u=ks(S|0,I|0,u&-33554432|0,0)|0;l=ks(E|0,c|0,l&-67108864|0,0)|0;c=Ss(v|0,a|0,33554432,0)|0;E=Cs(c|0,I|0,26)|0;A=Ss(E|0,I|0,w|0,A|0)|0;f=ks(A|0,I|0,f&-33554432|0,0)|0;c=ks(v|0,a|0,c&-67108864|0,0)|0;a=Ss(m|0,n|0,33554432,0)|0;v=Cs(a|0,I|0,26)|0;y=Ss(v|0,I|0,b|0,y|0)|0;i=ks(y|0,I|0,i&-33554432|0,0)|0;a=ks(m|0,n|0,a&-67108864|0,0)|0;n=Ss(g|0,p|0,33554432,0)|0;m=Cs(n|0,I|0,26)|0;m=Ss(_|0,0,m|0,I|0)|0;t=ks(m|0,I|0,t&33554432|0,0)|0;n=ks(g|0,p|0,n&-67108864|0,0)|0;o[e>>2]=h;o[e+4>>2]=d;o[e+8>>2]=l;o[e+12>>2]=u;o[e+16>>2]=c;o[e+20>>2]=f;o[e+24>>2]=a;o[e+28>>2]=i;o[e+32>>2]=n;o[e+36>>2]=t;return}function Wr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0,s=0;s=h;h=h+192|0;n=s+144|0;r=s+96|0;i=s+48|0;o=s;Yr(n,t);Yr(r,n);Yr(r,r);Xr(r,t,r);Xr(n,n,r);Yr(i,n);Xr(r,r,i);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);t=1;do{Yr(o,o);t=t+1|0}while((t|0)!=100);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(r,r);Yr(r,r);Yr(r,r);Yr(r,r);Yr(r,r);Xr(e,r,n);h=s;return}function Yr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0,me=0,_e=0,ye=0,be=0,ve=0,Ae=0,we=0,Ee=0,Se=0,ke=0,Ie=0,Re=0,Te=0,Oe=0,Ce=0,xe=0,Me=0,Pe=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,qe=0,Fe=0,Ke=0,Ge=0,ze=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;tt=o[t>>2]|0;Ae=o[t+4>>2]|0;u=o[t+8>>2]|0;de=o[t+12>>2]|0;s=o[t+16>>2]|0;rt=o[t+20>>2]|0;a=o[t+24>>2]|0;p=o[t+28>>2]|0;F=o[t+32>>2]|0;O=o[t+36>>2]|0;_=tt<<1;n=Ae<<1;Ye=u<<1;f=de<<1;pe=s<<1;i=rt<<1;d=a<<1;r=p<<1;Ue=rt*38|0;ye=a*19|0;Ee=p*38|0;ie=F*19|0;st=O*38|0;nt=((tt|0)<0)<<31>>31;nt=Es(tt|0,nt|0,tt|0,nt|0)|0;tt=I;y=((_|0)<0)<<31>>31;ve=((Ae|0)<0)<<31>>31;Ne=Es(_|0,y|0,Ae|0,ve|0)|0;Be=I;c=((u|0)<0)<<31>>31;We=Es(u|0,c|0,_|0,y|0)|0;Qe=I;he=((de|0)<0)<<31>>31;Ve=Es(de|0,he|0,_|0,y|0)|0;He=I;J=((s|0)<0)<<31>>31;qe=Es(s|0,J|0,_|0,y|0)|0;Le=I;it=((rt|0)<0)<<31>>31;Ie=Es(rt|0,it|0,_|0,y|0)|0;ke=I;we=((a|0)<0)<<31>>31;ae=Es(a|0,we|0,_|0,y|0)|0;se=I;T=((p|0)<0)<<31>>31;z=Es(p|0,T|0,_|0,y|0)|0;G=I;K=((F|0)<0)<<31>>31;M=Es(F|0,K|0,_|0,y|0)|0;x=I;C=((O|0)<0)<<31>>31;y=Es(O|0,C|0,_|0,y|0)|0;_=I;l=((n|0)<0)<<31>>31;ve=Es(n|0,l|0,Ae|0,ve|0)|0;Ae=I;ne=Es(n|0,l|0,u|0,c|0)|0;re=I;m=((f|0)<0)<<31>>31;ze=Es(f|0,m|0,n|0,l|0)|0;Ge=I;Ce=Es(s|0,J|0,n|0,l|0)|0;Oe=I;g=((i|0)<0)<<31>>31;ce=Es(i|0,g|0,n|0,l|0)|0;fe=I;V=Es(a|0,we|0,n|0,l|0)|0;H=I;t=((r|0)<0)<<31>>31;D=Es(r|0,t|0,n|0,l|0)|0;P=I;v=Es(F|0,K|0,n|0,l|0)|0;b=I;ot=((st|0)<0)<<31>>31;l=Es(st|0,ot|0,n|0,l|0)|0;n=I;Ke=Es(u|0,c|0,u|0,c|0)|0;Fe=I;Xe=((Ye|0)<0)<<31>>31;Te=Es(Ye|0,Xe|0,de|0,he|0)|0;Re=I;le=Es(s|0,J|0,Ye|0,Xe|0)|0;ue=I;X=Es(rt|0,it|0,Ye|0,Xe|0)|0;Y=I;q=Es(a|0,we|0,Ye|0,Xe|0)|0;L=I;w=Es(p|0,T|0,Ye|0,Xe|0)|0;A=I;oe=((ie|0)<0)<<31>>31;Xe=Es(ie|0,oe|0,Ye|0,Xe|0)|0;Ye=I;c=Es(st|0,ot|0,u|0,c|0)|0;u=I;he=Es(f|0,m|0,de|0,he|0)|0;de=I;W=Es(f|0,m|0,s|0,J|0)|0;Q=I;N=Es(i|0,g|0,f|0,m|0)|0;B=I;R=Es(a|0,we|0,f|0,m|0)|0;k=I;Se=((Ee|0)<0)<<31>>31;Ze=Es(Ee|0,Se|0,f|0,m|0)|0;Je=I;Me=Es(ie|0,oe|0,f|0,m|0)|0;xe=I;m=Es(st|0,ot|0,f|0,m|0)|0;f=I;U=Es(s|0,J|0,s|0,J|0)|0;j=I;ge=((pe|0)<0)<<31>>31;S=Es(pe|0,ge|0,rt|0,it|0)|0;E=I;be=((ye|0)<0)<<31>>31;et=Es(ye|0,be|0,pe|0,ge|0)|0;$e=I;De=Es(Ee|0,Se|0,s|0,J|0)|0;Pe=I;ge=Es(ie|0,oe|0,pe|0,ge|0)|0;pe=I;J=Es(st|0,ot|0,s|0,J|0)|0;s=I;it=Es(Ue|0,((Ue|0)<0)<<31>>31|0,rt|0,it|0)|0;rt=I;Ue=Es(ye|0,be|0,i|0,g|0)|0;je=I;_e=Es(Ee|0,Se|0,i|0,g|0)|0;me=I;$=Es(ie|0,oe|0,i|0,g|0)|0;Z=I;g=Es(st|0,ot|0,i|0,g|0)|0;i=I;be=Es(ye|0,be|0,a|0,we|0)|0;ye=I;te=Es(Ee|0,Se|0,a|0,we|0)|0;ee=I;d=Es(ie|0,oe|0,d|0,((d|0)<0)<<31>>31|0)|0;h=I;we=Es(st|0,ot|0,a|0,we|0)|0;a=I;T=Es(Ee|0,Se|0,p|0,T|0)|0;p=I;Se=Es(ie|0,oe|0,r|0,t|0)|0;Ee=I;t=Es(st|0,ot|0,r|0,t|0)|0;r=I;oe=Es(ie|0,oe|0,F|0,K|0)|0;ie=I;K=Es(st|0,ot|0,F|0,K|0)|0;F=I;C=Es(st|0,ot|0,O|0,C|0)|0;O=I;tt=Ss(it|0,rt|0,nt|0,tt|0)|0;$e=Ss(tt|0,I|0,et|0,$e|0)|0;Je=Ss($e|0,I|0,Ze|0,Je|0)|0;Ye=Ss(Je|0,I|0,Xe|0,Ye|0)|0;n=Ss(Ye|0,I|0,l|0,n|0)|0;l=I;Ae=Ss(We|0,Qe|0,ve|0,Ae|0)|0;ve=I;re=Ss(Ve|0,He|0,ne|0,re|0)|0;ne=I;Fe=Ss(ze|0,Ge|0,Ke|0,Fe|0)|0;Le=Ss(Fe|0,I|0,qe|0,Le|0)|0;p=Ss(Le|0,I|0,T|0,p|0)|0;h=Ss(p|0,I|0,d|0,h|0)|0;i=Ss(h|0,I|0,g|0,i|0)|0;g=I;h=Ss(n|0,l|0,33554432,0)|0;d=I;p=Os(h|0,d|0,26)|0;T=I;Be=Ss(Ue|0,je|0,Ne|0,Be|0)|0;Pe=Ss(Be|0,I|0,De|0,Pe|0)|0;xe=Ss(Pe|0,I|0,Me|0,xe|0)|0;u=Ss(xe|0,I|0,c|0,u|0)|0;T=Ss(u|0,I|0,p|0,T|0)|0;p=I;d=ks(n|0,l|0,h&-67108864|0,d|0)|0;h=I;l=Ss(i|0,g|0,33554432,0)|0;n=I;u=Os(l|0,n|0,26)|0;c=I;Re=Ss(Ce|0,Oe|0,Te|0,Re|0)|0;ke=Ss(Re|0,I|0,Ie|0,ke|0)|0;Ee=Ss(ke|0,I|0,Se|0,Ee|0)|0;a=Ss(Ee|0,I|0,we|0,a|0)|0;c=Ss(a|0,I|0,u|0,c|0)|0;u=I;n=ks(i|0,g|0,l&-67108864|0,n|0)|0;l=I;g=Ss(T|0,p|0,16777216,0)|0;i=Os(g|0,I|0,25)|0;a=I;ye=Ss(Ae|0,ve|0,be|0,ye|0)|0;me=Ss(ye|0,I|0,_e|0,me|0)|0;pe=Ss(me|0,I|0,ge|0,pe|0)|0;f=Ss(pe|0,I|0,m|0,f|0)|0;a=Ss(f|0,I|0,i|0,a|0)|0;i=I;g=ks(T|0,p|0,g&-33554432|0,0)|0;p=I;T=Ss(c|0,u|0,16777216,0)|0;f=Os(T|0,I|0,25)|0;m=I;ue=Ss(he|0,de|0,le|0,ue|0)|0;fe=Ss(ue|0,I|0,ce|0,fe|0)|0;se=Ss(fe|0,I|0,ae|0,se|0)|0;ie=Ss(se|0,I|0,oe|0,ie|0)|0;r=Ss(ie|0,I|0,t|0,r|0)|0;m=Ss(r|0,I|0,f|0,m|0)|0;f=I;T=ks(c|0,u|0,T&-33554432|0,0)|0;u=I;c=Ss(a|0,i|0,33554432,0)|0;r=Os(c|0,I|0,26)|0;t=I;ee=Ss(re|0,ne|0,te|0,ee|0)|0;Z=Ss(ee|0,I|0,$|0,Z|0)|0;s=Ss(Z|0,I|0,J|0,s|0)|0;t=Ss(s|0,I|0,r|0,t|0)|0;r=I;c=ks(a|0,i|0,c&-67108864|0,0)|0;i=Ss(m|0,f|0,33554432,0)|0;a=Os(i|0,I|0,26)|0;s=I;Q=Ss(X|0,Y|0,W|0,Q|0)|0;H=Ss(Q|0,I|0,V|0,H|0)|0;G=Ss(H|0,I|0,z|0,G|0)|0;F=Ss(G|0,I|0,K|0,F|0)|0;s=Ss(F|0,I|0,a|0,s|0)|0;a=I;i=ks(m|0,f|0,i&-67108864|0,0)|0;f=Ss(t|0,r|0,16777216,0)|0;m=Os(f|0,I|0,25)|0;l=Ss(m|0,I|0,n|0,l|0)|0;n=I;f=ks(t|0,r|0,f&-33554432|0,0)|0;r=Ss(s|0,a|0,16777216,0)|0;t=Os(r|0,I|0,25)|0;m=I;j=Ss(q|0,L|0,U|0,j|0)|0;B=Ss(j|0,I|0,N|0,B|0)|0;P=Ss(B|0,I|0,D|0,P|0)|0;x=Ss(P|0,I|0,M|0,x|0)|0;O=Ss(x|0,I|0,C|0,O|0)|0;m=Ss(O|0,I|0,t|0,m|0)|0;t=I;r=ks(s|0,a|0,r&-33554432|0,0)|0;a=Ss(l|0,n|0,33554432,0)|0;s=Cs(a|0,I|0,26)|0;s=Ss(T|0,u|0,s|0,I|0)|0;a=ks(l|0,n|0,a&-67108864|0,0)|0;n=Ss(m|0,t|0,33554432,0)|0;l=Os(n|0,I|0,26)|0;u=I;E=Ss(R|0,k|0,S|0,E|0)|0;A=Ss(E|0,I|0,w|0,A|0)|0;b=Ss(A|0,I|0,v|0,b|0)|0;_=Ss(b|0,I|0,y|0,_|0)|0;u=Ss(_|0,I|0,l|0,u|0)|0;l=I;n=ks(m|0,t|0,n&-67108864|0,0)|0;t=Ss(u|0,l|0,16777216,0)|0;m=Os(t|0,I|0,25)|0;m=Es(m|0,I|0,19,0)|0;h=Ss(m|0,I|0,d|0,h|0)|0;d=I;t=ks(u|0,l|0,t&-33554432|0,0)|0;l=Ss(h|0,d|0,33554432,0)|0;u=Cs(l|0,I|0,26)|0;u=Ss(g|0,p|0,u|0,I|0)|0;l=ks(h|0,d|0,l&-67108864|0,0)|0;o[e>>2]=l;o[e+4>>2]=u;o[e+8>>2]=c;o[e+12>>2]=f;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=n;o[e+36>>2]=t;return}function Xr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0,me=0,_e=0,ye=0,be=0,ve=0,Ae=0,we=0,Ee=0,Se=0,ke=0,Ie=0,Re=0,Te=0,Oe=0,Ce=0,xe=0,Me=0,Pe=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,qe=0,Fe=0,Ke=0,Ge=0,ze=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ft=0,ct=0,ut=0,lt=0,dt=0,ht=0,pt=0,gt=0,mt=0,_t=0,yt=0,bt=0,vt=0,At=0,wt=0,Et=0,St=0,kt=0,It=0,Rt=0,Tt=0,Ot=0,Ct=0,xt=0,Mt=0,Pt=0,Dt=0,Bt=0,Nt=0,jt=0,Ut=0,Lt=0,qt=0,Ft=0,Kt=0,Gt=0,zt=0,Ht=0,Vt=0,Qt=0,Wt=0,Yt=0,Xt=0,Jt=0,Zt=0,$t=0,en=0,tn=0,nn=0,rn=0,on=0,sn=0,an=0,fn=0,cn=0,un=0,ln=0,dn=0,hn=0,pn=0,gn=0,mn=0,_n=0,yn=0,bn=0,vn=0,An=0,wn=0,En=0,Sn=0,kn=0,In=0,Rn=0,Tn=0,On=0,Cn=0,xn=0,Mn=0,Pn=0,Dn=0,Bn=0,Nn=0,jn=0,Un=0,Ln=0,qn=0,Fn=0,Kn=0,Gn=0,zn=0,Hn=0;_=o[t>>2]|0;b=o[t+4>>2]|0;u=o[t+8>>2]|0;Ht=o[t+12>>2]|0;s=o[t+16>>2]|0;Ie=o[t+20>>2]|0;a=o[t+24>>2]|0;Rt=o[t+28>>2]|0;oe=o[t+32>>2]|0;ae=o[t+36>>2]|0;D=o[n>>2]|0;N=o[n+4>>2]|0;M=o[n+8>>2]|0;C=o[n+12>>2]|0;T=o[n+16>>2]|0;k=o[n+20>>2]|0;E=o[n+24>>2]|0;A=o[n+28>>2]|0;c=o[n+32>>2]|0;v=o[n+36>>2]|0;Fn=N*19|0;rn=M*19|0;yt=C*19|0;De=T*19|0;un=k*19|0;xt=E*19|0;Ve=A*19|0;Hn=c*19|0;Gn=v*19|0;t=b<<1;f=Ht<<1;i=Ie<<1;r=Rt<<1;L=ae<<1;y=((_|0)<0)<<31>>31;B=((D|0)<0)<<31>>31;Ln=Es(D|0,B|0,_|0,y|0)|0;Un=I;j=((N|0)<0)<<31>>31;En=Es(N|0,j|0,_|0,y|0)|0;wn=I;P=((M|0)<0)<<31>>31;At=Es(M|0,P|0,_|0,y|0)|0;vt=I;x=((C|0)<0)<<31>>31;je=Es(C|0,x|0,_|0,y|0)|0;Ne=I;O=((T|0)<0)<<31>>31;hn=Es(T|0,O|0,_|0,y|0)|0;dn=I;R=((k|0)<0)<<31>>31;Dt=Es(k|0,R|0,_|0,y|0)|0;Pt=I;S=((E|0)<0)<<31>>31;Ye=Es(E|0,S|0,_|0,y|0)|0;We=I;w=((A|0)<0)<<31>>31;ue=Es(A|0,w|0,_|0,y|0)|0;ce=I;Kn=((c|0)<0)<<31>>31;K=Es(c|0,Kn|0,_|0,y|0)|0;F=I;y=Es(v|0,((v|0)<0)<<31>>31|0,_|0,y|0)|0;_=I;v=((b|0)<0)<<31>>31;sn=Es(D|0,B|0,b|0,v|0)|0;an=I;l=((t|0)<0)<<31>>31;kt=Es(N|0,j|0,t|0,l|0)|0;St=I;Le=Es(M|0,P|0,b|0,v|0)|0;Ue=I;gn=Es(C|0,x|0,t|0,l|0)|0;pn=I;Nt=Es(T|0,O|0,b|0,v|0)|0;Bt=I;Je=Es(k|0,R|0,t|0,l|0)|0;Xe=I;de=Es(E|0,S|0,b|0,v|0)|0;le=I;z=Es(A|0,w|0,t|0,l|0)|0;G=I;v=Es(c|0,Kn|0,b|0,v|0)|0;b=I;Kn=((Gn|0)<0)<<31>>31;l=Es(Gn|0,Kn|0,t|0,l|0)|0;t=I;c=((u|0)<0)<<31>>31;Et=Es(D|0,B|0,u|0,c|0)|0;wt=I;Ge=Es(N|0,j|0,u|0,c|0)|0;Ke=I;_n=Es(M|0,P|0,u|0,c|0)|0;mn=I;Ut=Es(C|0,x|0,u|0,c|0)|0;jt=I;$e=Es(T|0,O|0,u|0,c|0)|0;Ze=I;pe=Es(k|0,R|0,u|0,c|0)|0;he=I;V=Es(E|0,S|0,u|0,c|0)|0;H=I;w=Es(A|0,w|0,u|0,c|0)|0;A=I;zn=((Hn|0)<0)<<31>>31;kn=Es(Hn|0,zn|0,u|0,c|0)|0;Sn=I;c=Es(Gn|0,Kn|0,u|0,c|0)|0;u=I;Vt=((Ht|0)<0)<<31>>31;Fe=Es(D|0,B|0,Ht|0,Vt|0)|0;qe=I;m=((f|0)<0)<<31>>31;An=Es(N|0,j|0,f|0,m|0)|0;vn=I;qt=Es(M|0,P|0,Ht|0,Vt|0)|0;Lt=I;tt=Es(C|0,x|0,f|0,m|0)|0;et=I;me=Es(T|0,O|0,Ht|0,Vt|0)|0;ge=I;W=Es(k|0,R|0,f|0,m|0)|0;Q=I;S=Es(E|0,S|0,Ht|0,Vt|0)|0;E=I;Qe=((Ve|0)<0)<<31>>31;Rn=Es(Ve|0,Qe|0,f|0,m|0)|0;In=I;Vt=Es(Hn|0,zn|0,Ht|0,Vt|0)|0;Ht=I;m=Es(Gn|0,Kn|0,f|0,m|0)|0;f=I;ke=((s|0)<0)<<31>>31;bn=Es(D|0,B|0,s|0,ke|0)|0;yn=I;zt=Es(N|0,j|0,s|0,ke|0)|0;Gt=I;rt=Es(M|0,P|0,s|0,ke|0)|0;nt=I;ye=Es(C|0,x|0,s|0,ke|0)|0;_e=I;X=Es(T|0,O|0,s|0,ke|0)|0;Y=I;R=Es(k|0,R|0,s|0,ke|0)|0;k=I;Mt=((xt|0)<0)<<31>>31;On=Es(xt|0,Mt|0,s|0,ke|0)|0;Tn=I;Wt=Es(Ve|0,Qe|0,s|0,ke|0)|0;Qt=I;ct=Es(Hn|0,zn|0,s|0,ke|0)|0;ft=I;ke=Es(Gn|0,Kn|0,s|0,ke|0)|0;s=I;Re=((Ie|0)<0)<<31>>31;Kt=Es(D|0,B|0,Ie|0,Re|0)|0;Ft=I;g=((i|0)<0)<<31>>31;at=Es(N|0,j|0,i|0,g|0)|0;st=I;ve=Es(M|0,P|0,Ie|0,Re|0)|0;be=I;Z=Es(C|0,x|0,i|0,g|0)|0;J=I;O=Es(T|0,O|0,Ie|0,Re|0)|0;T=I;ln=((un|0)<0)<<31>>31;xn=Es(un|0,ln|0,i|0,g|0)|0;Cn=I;Xt=Es(xt|0,Mt|0,Ie|0,Re|0)|0;Yt=I;lt=Es(Ve|0,Qe|0,i|0,g|0)|0;ut=I;Re=Es(Hn|0,zn|0,Ie|0,Re|0)|0;Ie=I;g=Es(Gn|0,Kn|0,i|0,g|0)|0;i=I;It=((a|0)<0)<<31>>31;ot=Es(D|0,B|0,a|0,It|0)|0;it=I;Se=Es(N|0,j|0,a|0,It|0)|0;Ee=I;ee=Es(M|0,P|0,a|0,It|0)|0;$=I;x=Es(C|0,x|0,a|0,It|0)|0;C=I;Be=((De|0)<0)<<31>>31;Pn=Es(De|0,Be|0,a|0,It|0)|0;Mn=I;Zt=Es(un|0,ln|0,a|0,It|0)|0;Jt=I;ht=Es(xt|0,Mt|0,a|0,It|0)|0;dt=I;Oe=Es(Ve|0,Qe|0,a|0,It|0)|0;Te=I;d=Es(Hn|0,zn|0,a|0,It|0)|0;h=I;It=Es(Gn|0,Kn|0,a|0,It|0)|0;a=I;Tt=((Rt|0)<0)<<31>>31;we=Es(D|0,B|0,Rt|0,Tt|0)|0;Ae=I;n=((r|0)<0)<<31>>31;ie=Es(N|0,j|0,r|0,n|0)|0;re=I;P=Es(M|0,P|0,Rt|0,Tt|0)|0;M=I;bt=((yt|0)<0)<<31>>31;Bn=Es(yt|0,bt|0,r|0,n|0)|0;Dn=I;en=Es(De|0,Be|0,Rt|0,Tt|0)|0;$t=I;gt=Es(un|0,ln|0,r|0,n|0)|0;pt=I;xe=Es(xt|0,Mt|0,Rt|0,Tt|0)|0;Ce=I;U=Es(Ve|0,Qe|0,r|0,n|0)|0;p=I;Tt=Es(Hn|0,zn|0,Rt|0,Tt|0)|0;Rt=I;n=Es(Gn|0,Kn|0,r|0,n|0)|0;r=I;se=((oe|0)<0)<<31>>31;ne=Es(D|0,B|0,oe|0,se|0)|0;te=I;j=Es(N|0,j|0,oe|0,se|0)|0;N=I;on=((rn|0)<0)<<31>>31;jn=Es(rn|0,on|0,oe|0,se|0)|0;Nn=I;nn=Es(yt|0,bt|0,oe|0,se|0)|0;tn=I;_t=Es(De|0,Be|0,oe|0,se|0)|0;mt=I;Pe=Es(un|0,ln|0,oe|0,se|0)|0;Me=I;cn=Es(xt|0,Mt|0,oe|0,se|0)|0;fn=I;Ct=Es(Ve|0,Qe|0,oe|0,se|0)|0;Ot=I;He=Es(Hn|0,zn|0,oe|0,se|0)|0;ze=I;se=Es(Gn|0,Kn|0,oe|0,se|0)|0;oe=I;fe=((ae|0)<0)<<31>>31;B=Es(D|0,B|0,ae|0,fe|0)|0;D=I;q=((L|0)<0)<<31>>31;Fn=Es(Fn|0,((Fn|0)<0)<<31>>31|0,L|0,q|0)|0;qn=I;on=Es(rn|0,on|0,ae|0,fe|0)|0;rn=I;bt=Es(yt|0,bt|0,L|0,q|0)|0;yt=I;Be=Es(De|0,Be|0,ae|0,fe|0)|0;De=I;ln=Es(un|0,ln|0,L|0,q|0)|0;un=I;Mt=Es(xt|0,Mt|0,ae|0,fe|0)|0;xt=I;Qe=Es(Ve|0,Qe|0,L|0,q|0)|0;Ve=I;fe=Es(Hn|0,zn|0,ae|0,fe|0)|0;ae=I;q=Es(Gn|0,Kn|0,L|0,q|0)|0;L=I;Un=Ss(Fn|0,qn|0,Ln|0,Un|0)|0;Nn=Ss(Un|0,I|0,jn|0,Nn|0)|0;Dn=Ss(Nn|0,I|0,Bn|0,Dn|0)|0;Mn=Ss(Dn|0,I|0,Pn|0,Mn|0)|0;Cn=Ss(Mn|0,I|0,xn|0,Cn|0)|0;Tn=Ss(Cn|0,I|0,On|0,Tn|0)|0;In=Ss(Tn|0,I|0,Rn|0,In|0)|0;Sn=Ss(In|0,I|0,kn|0,Sn|0)|0;t=Ss(Sn|0,I|0,l|0,t|0)|0;l=I;an=Ss(En|0,wn|0,sn|0,an|0)|0;sn=I;yn=Ss(An|0,vn|0,bn|0,yn|0)|0;mn=Ss(yn|0,I|0,_n|0,mn|0)|0;pn=Ss(mn|0,I|0,gn|0,pn|0)|0;dn=Ss(pn|0,I|0,hn|0,dn|0)|0;un=Ss(dn|0,I|0,ln|0,un|0)|0;fn=Ss(un|0,I|0,cn|0,fn|0)|0;p=Ss(fn|0,I|0,U|0,p|0)|0;h=Ss(p|0,I|0,d|0,h|0)|0;i=Ss(h|0,I|0,g|0,i|0)|0;g=I;h=Ss(t|0,l|0,33554432,0)|0;d=I;p=Os(h|0,d|0,26)|0;U=I;rn=Ss(an|0,sn|0,on|0,rn|0)|0;tn=Ss(rn|0,I|0,nn|0,tn|0)|0;$t=Ss(tn|0,I|0,en|0,$t|0)|0;Jt=Ss($t|0,I|0,Zt|0,Jt|0)|0;Yt=Ss(Jt|0,I|0,Xt|0,Yt|0)|0;Qt=Ss(Yt|0,I|0,Wt|0,Qt|0)|0;Ht=Ss(Qt|0,I|0,Vt|0,Ht|0)|0;u=Ss(Ht|0,I|0,c|0,u|0)|0;U=Ss(u|0,I|0,p|0,U|0)|0;p=I;d=ks(t|0,l|0,h&-67108864|0,d|0)|0;h=I;l=Ss(i|0,g|0,33554432,0)|0;t=I;u=Os(l|0,t|0,26)|0;c=I;Ft=Ss(zt|0,Gt|0,Kt|0,Ft|0)|0;Lt=Ss(Ft|0,I|0,qt|0,Lt|0)|0;jt=Ss(Lt|0,I|0,Ut|0,jt|0)|0;Bt=Ss(jt|0,I|0,Nt|0,Bt|0)|0;Pt=Ss(Bt|0,I|0,Dt|0,Pt|0)|0;xt=Ss(Pt|0,I|0,Mt|0,xt|0)|0;Ot=Ss(xt|0,I|0,Ct|0,Ot|0)|0;Rt=Ss(Ot|0,I|0,Tt|0,Rt|0)|0;a=Ss(Rt|0,I|0,It|0,a|0)|0;c=Ss(a|0,I|0,u|0,c|0)|0;u=I;t=ks(i|0,g|0,l&-67108864|0,t|0)|0;l=I;g=Ss(U|0,p|0,16777216,0)|0;i=Os(g|0,I|0,25)|0;a=I;wt=Ss(kt|0,St|0,Et|0,wt|0)|0;vt=Ss(wt|0,I|0,At|0,vt|0)|0;yt=Ss(vt|0,I|0,bt|0,yt|0)|0;mt=Ss(yt|0,I|0,_t|0,mt|0)|0;pt=Ss(mt|0,I|0,gt|0,pt|0)|0;dt=Ss(pt|0,I|0,ht|0,dt|0)|0;ut=Ss(dt|0,I|0,lt|0,ut|0)|0;ft=Ss(ut|0,I|0,ct|0,ft|0)|0;f=Ss(ft|0,I|0,m|0,f|0)|0;a=Ss(f|0,I|0,i|0,a|0)|0;i=I;g=ks(U|0,p|0,g&-33554432|0,0)|0;p=I;U=Ss(c|0,u|0,16777216,0)|0;f=Os(U|0,I|0,25)|0;m=I;it=Ss(at|0,st|0,ot|0,it|0)|0;nt=Ss(it|0,I|0,rt|0,nt|0)|0;et=Ss(nt|0,I|0,tt|0,et|0)|0;Ze=Ss(et|0,I|0,$e|0,Ze|0)|0;Xe=Ss(Ze|0,I|0,Je|0,Xe|0)|0;We=Ss(Xe|0,I|0,Ye|0,We|0)|0;Ve=Ss(We|0,I|0,Qe|0,Ve|0)|0;ze=Ss(Ve|0,I|0,He|0,ze|0)|0;r=Ss(ze|0,I|0,n|0,r|0)|0;m=Ss(r|0,I|0,f|0,m|0)|0;f=I;U=ks(c|0,u|0,U&-33554432|0,0)|0;u=I;c=Ss(a|0,i|0,33554432,0)|0;r=Os(c|0,I|0,26)|0;n=I;qe=Ss(Ge|0,Ke|0,Fe|0,qe|0)|0;Ue=Ss(qe|0,I|0,Le|0,Ue|0)|0;Ne=Ss(Ue|0,I|0,je|0,Ne|0)|0;De=Ss(Ne|0,I|0,Be|0,De|0)|0;Me=Ss(De|0,I|0,Pe|0,Me|0)|0;Ce=Ss(Me|0,I|0,xe|0,Ce|0)|0;Te=Ss(Ce|0,I|0,Oe|0,Te|0)|0;Ie=Ss(Te|0,I|0,Re|0,Ie|0)|0;s=Ss(Ie|0,I|0,ke|0,s|0)|0;n=Ss(s|0,I|0,r|0,n|0)|0;r=I;c=ks(a|0,i|0,c&-67108864|0,0)|0;i=Ss(m|0,f|0,33554432,0)|0;a=Os(i|0,I|0,26)|0;s=I;Ae=Ss(Se|0,Ee|0,we|0,Ae|0)|0;be=Ss(Ae|0,I|0,ve|0,be|0)|0;_e=Ss(be|0,I|0,ye|0,_e|0)|0;ge=Ss(_e|0,I|0,me|0,ge|0)|0;he=Ss(ge|0,I|0,pe|0,he|0)|0;le=Ss(he|0,I|0,de|0,le|0)|0;ce=Ss(le|0,I|0,ue|0,ce|0)|0;ae=Ss(ce|0,I|0,fe|0,ae|0)|0;oe=Ss(ae|0,I|0,se|0,oe|0)|0;s=Ss(oe|0,I|0,a|0,s|0)|0;a=I;i=ks(m|0,f|0,i&-67108864|0,0)|0;f=Ss(n|0,r|0,16777216,0)|0;m=Os(f|0,I|0,25)|0;l=Ss(m|0,I|0,t|0,l|0)|0;t=I;f=ks(n|0,r|0,f&-33554432|0,0)|0;r=Ss(s|0,a|0,16777216,0)|0;n=Os(r|0,I|0,25)|0;m=I;te=Ss(ie|0,re|0,ne|0,te|0)|0;$=Ss(te|0,I|0,ee|0,$|0)|0;J=Ss($|0,I|0,Z|0,J|0)|0;Y=Ss(J|0,I|0,X|0,Y|0)|0;Q=Ss(Y|0,I|0,W|0,Q|0)|0;H=Ss(Q|0,I|0,V|0,H|0)|0;G=Ss(H|0,I|0,z|0,G|0)|0;F=Ss(G|0,I|0,K|0,F|0)|0;L=Ss(F|0,I|0,q|0,L|0)|0;m=Ss(L|0,I|0,n|0,m|0)|0;n=I;r=ks(s|0,a|0,r&-33554432|0,0)|0;a=Ss(l|0,t|0,33554432,0)|0;s=Cs(a|0,I|0,26)|0;s=Ss(U|0,u|0,s|0,I|0)|0;a=ks(l|0,t|0,a&-67108864|0,0)|0;t=Ss(m|0,n|0,33554432,0)|0;l=Os(t|0,I|0,26)|0;u=I;D=Ss(j|0,N|0,B|0,D|0)|0;M=Ss(D|0,I|0,P|0,M|0)|0;C=Ss(M|0,I|0,x|0,C|0)|0;T=Ss(C|0,I|0,O|0,T|0)|0;k=Ss(T|0,I|0,R|0,k|0)|0;E=Ss(k|0,I|0,S|0,E|0)|0;A=Ss(E|0,I|0,w|0,A|0)|0;b=Ss(A|0,I|0,v|0,b|0)|0;_=Ss(b|0,I|0,y|0,_|0)|0;u=Ss(_|0,I|0,l|0,u|0)|0;l=I;t=ks(m|0,n|0,t&-67108864|0,0)|0;n=Ss(u|0,l|0,16777216,0)|0;m=Os(n|0,I|0,25)|0;m=Es(m|0,I|0,19,0)|0;h=Ss(m|0,I|0,d|0,h|0)|0;d=I;n=ks(u|0,l|0,n&-33554432|0,0)|0;l=Ss(h|0,d|0,33554432,0)|0;u=Cs(l|0,I|0,26)|0;u=Ss(g|0,p|0,u|0,I|0)|0;l=ks(h|0,d|0,l&-67108864|0,0)|0;o[e>>2]=l;o[e+4>>2]=u;o[e+8>>2]=c;o[e+12>>2]=f;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=t;o[e+36>>2]=n;return}function Jr(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0;b=o[t>>2]|0;y=o[t+4>>2]|0;m=o[t+8>>2]|0;p=o[t+12>>2]|0;d=o[t+16>>2]|0;l=o[t+20>>2]|0;u=o[t+24>>2]|0;f=o[t+28>>2]|0;s=o[t+32>>2]|0;n=o[t+36>>2]|0;b=(((((((((((((n*19|0)+16777216>>25)+b>>26)+y>>25)+m>>26)+p>>25)+d>>26)+l>>25)+u>>26)+f>>25)+s>>26)+n>>25)*19|0)+b|0;y=(b>>26)+y|0;m=(y>>25)+m|0;_=y&33554431;p=(m>>26)+p|0;g=m&67108863;d=(p>>25)+d|0;h=p&33554431;l=(d>>26)+l|0;u=(l>>25)+u|0;f=(u>>26)+f|0;c=u&67108863;s=(f>>25)+s|0;a=f&33554431;n=(s>>26)+n|0;i=s&67108863;t=n&33554431;r[e>>0]=b;r[e+1>>0]=b>>>8;r[e+2>>0]=b>>>16;r[e+3>>0]=_<<2|b>>>24&3;r[e+4>>0]=y>>>6;r[e+5>>0]=y>>>14;r[e+6>>0]=g<<3|_>>>22;r[e+7>>0]=m>>>5;r[e+8>>0]=m>>>13;r[e+9>>0]=h<<5|g>>>21;r[e+10>>0]=p>>>3;r[e+11>>0]=p>>>11;r[e+12>>0]=d<<6|h>>>19;r[e+13>>0]=d>>>2;r[e+14>>0]=d>>>10;r[e+15>>0]=d>>>18;r[e+16>>0]=l;r[e+17>>0]=l>>>8;r[e+18>>0]=l>>>16;r[e+19>>0]=c<<1|l>>>24&1;r[e+20>>0]=u>>>7;r[e+21>>0]=u>>>15;r[e+22>>0]=a<<3|c>>>23;r[e+23>>0]=f>>>5;r[e+24>>0]=f>>>13;r[e+25>>0]=i<<4|a>>>21;r[e+26>>0]=s>>>4;r[e+27>>0]=s>>>12;r[e+28>>0]=t<<6|i>>>20;r[e+29>>0]=n>>>2;r[e+30>>0]=n>>>10;r[e+31>>0]=t>>>18;return}function Zr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0,s=0;s=h;h=h+144|0;r=s+96|0;i=s+48|0;o=s;Yr(r,t);Yr(i,r);Yr(i,i);Xr(i,t,i);Xr(r,r,i);Yr(r,r);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);n=1;do{Yr(o,o);n=n+1|0}while((n|0)!=100);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(r,r);Yr(r,r);Xr(e,r,t);h=s;return}function $r(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0,me=0,_e=0,ye=0,be=0,ve=0,Ae=0,we=0,Ee=0,Se=0,ke=0,Ie=0,Re=0,Te=0,Oe=0,Ce=0,xe=0,Me=0,Pe=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,qe=0,Fe=0,Ke=0,Ge=0,ze=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;tt=o[t>>2]|0;je=o[t+4>>2]|0;b=o[t+8>>2]|0;re=o[t+12>>2]|0;v=o[t+16>>2]|0;rt=o[t+20>>2]|0;c=o[t+24>>2]|0;ge=o[t+28>>2]|0;s=o[t+32>>2]|0;m=o[t+36>>2]|0;u=tt<<1;_=je<<1;Ye=b<<1;w=re<<1;xe=v<<1;g=rt<<1;pe=c<<1;A=ge<<1;We=rt*38|0;Be=c*19|0;oe=ge*38|0;Y=s*19|0;st=m*38|0;nt=((tt|0)<0)<<31>>31;nt=Es(tt|0,nt|0,tt|0,nt|0)|0;tt=I;l=((u|0)<0)<<31>>31;Ue=((je|0)<0)<<31>>31;Ve=Es(u|0,l|0,je|0,Ue|0)|0;He=I;p=((b|0)<0)<<31>>31;qe=Es(b|0,p|0,u|0,l|0)|0;Le=I;ie=((re|0)<0)<<31>>31;Ce=Es(re|0,ie|0,u|0,l|0)|0;Oe=I;r=((v|0)<0)<<31>>31;ye=Es(v|0,r|0,u|0,l|0)|0;_e=I;it=((rt|0)<0)<<31>>31;fe=Es(rt|0,it|0,u|0,l|0)|0;ae=I;y=((c|0)<0)<<31>>31;Z=Es(c|0,y|0,u|0,l|0)|0;J=I;me=((ge|0)<0)<<31>>31;K=Es(ge|0,me|0,u|0,l|0)|0;F=I;a=((s|0)<0)<<31>>31;M=Es(s|0,a|0,u|0,l|0)|0;x=I;t=((m|0)<0)<<31>>31;l=Es(m|0,t|0,u|0,l|0)|0;u=I;n=((_|0)<0)<<31>>31;Ue=Es(_|0,n|0,je|0,Ue|0)|0;je=I;Te=Es(_|0,n|0,b|0,p|0)|0;Re=I;i=((w|0)<0)<<31>>31;we=Es(w|0,i|0,_|0,n|0)|0;Ae=I;de=Es(v|0,r|0,_|0,n|0)|0;le=I;E=((g|0)<0)<<31>>31;ee=Es(g|0,E|0,_|0,n|0)|0;$=I;z=Es(c|0,y|0,_|0,n|0)|0;G=I;f=((A|0)<0)<<31>>31;D=Es(A|0,f|0,_|0,n|0)|0;P=I;d=Es(s|0,a|0,_|0,n|0)|0;h=I;ot=((st|0)<0)<<31>>31;n=Es(st|0,ot|0,_|0,n|0)|0;_=I;ve=Es(b|0,p|0,b|0,p|0)|0;be=I;Xe=((Ye|0)<0)<<31>>31;ue=Es(Ye|0,Xe|0,re|0,ie|0)|0;ce=I;ne=Es(v|0,r|0,Ye|0,Xe|0)|0;te=I;W=Es(rt|0,it|0,Ye|0,Xe|0)|0;Q=I;q=Es(c|0,y|0,Ye|0,Xe|0)|0;L=I;k=Es(ge|0,me|0,Ye|0,Xe|0)|0;S=I;X=((Y|0)<0)<<31>>31;Xe=Es(Y|0,X|0,Ye|0,Xe|0)|0;Ye=I;p=Es(st|0,ot|0,b|0,p|0)|0;b=I;ie=Es(w|0,i|0,re|0,ie|0)|0;re=I;V=Es(w|0,i|0,v|0,r|0)|0;H=I;N=Es(g|0,E|0,w|0,i|0)|0;B=I;C=Es(c|0,y|0,w|0,i|0)|0;O=I;se=((oe|0)<0)<<31>>31;Ze=Es(oe|0,se|0,w|0,i|0)|0;Je=I;Ke=Es(Y|0,X|0,w|0,i|0)|0;Fe=I;i=Es(st|0,ot|0,w|0,i|0)|0;w=I;U=Es(v|0,r|0,v|0,r|0)|0;j=I;Me=((xe|0)<0)<<31>>31;T=Es(xe|0,Me|0,rt|0,it|0)|0;R=I;Ne=((Be|0)<0)<<31>>31;et=Es(Be|0,Ne|0,xe|0,Me|0)|0;$e=I;ze=Es(oe|0,se|0,v|0,r|0)|0;Ge=I;Me=Es(Y|0,X|0,xe|0,Me|0)|0;xe=I;r=Es(st|0,ot|0,v|0,r|0)|0;v=I;it=Es(We|0,((We|0)<0)<<31>>31|0,rt|0,it|0)|0;rt=I;We=Es(Be|0,Ne|0,g|0,E|0)|0;Qe=I;De=Es(oe|0,se|0,g|0,E|0)|0;Pe=I;Se=Es(Y|0,X|0,g|0,E|0)|0;Ee=I;E=Es(st|0,ot|0,g|0,E|0)|0;g=I;Ne=Es(Be|0,Ne|0,c|0,y|0)|0;Be=I;Ie=Es(oe|0,se|0,c|0,y|0)|0;ke=I;pe=Es(Y|0,X|0,pe|0,((pe|0)<0)<<31>>31|0)|0;he=I;y=Es(st|0,ot|0,c|0,y|0)|0;c=I;me=Es(oe|0,se|0,ge|0,me|0)|0;ge=I;se=Es(Y|0,X|0,A|0,f|0)|0;oe=I;f=Es(st|0,ot|0,A|0,f|0)|0;A=I;X=Es(Y|0,X|0,s|0,a|0)|0;Y=I;a=Es(st|0,ot|0,s|0,a|0)|0;s=I;t=Es(st|0,ot|0,m|0,t|0)|0;m=I;tt=Ss(it|0,rt|0,nt|0,tt|0)|0;$e=Ss(tt|0,I|0,et|0,$e|0)|0;Je=Ss($e|0,I|0,Ze|0,Je|0)|0;Ye=Ss(Je|0,I|0,Xe|0,Ye|0)|0;_=Ss(Ye|0,I|0,n|0,_|0)|0;n=I;He=Ss(We|0,Qe|0,Ve|0,He|0)|0;Ge=Ss(He|0,I|0,ze|0,Ge|0)|0;Fe=Ss(Ge|0,I|0,Ke|0,Fe|0)|0;b=Ss(Fe|0,I|0,p|0,b|0)|0;p=I;je=Ss(qe|0,Le|0,Ue|0,je|0)|0;Be=Ss(je|0,I|0,Ne|0,Be|0)|0;Pe=Ss(Be|0,I|0,De|0,Pe|0)|0;xe=Ss(Pe|0,I|0,Me|0,xe|0)|0;w=Ss(xe|0,I|0,i|0,w|0)|0;i=I;Re=Ss(Ce|0,Oe|0,Te|0,Re|0)|0;ke=Ss(Re|0,I|0,Ie|0,ke|0)|0;Ee=Ss(ke|0,I|0,Se|0,Ee|0)|0;v=Ss(Ee|0,I|0,r|0,v|0)|0;r=I;be=Ss(we|0,Ae|0,ve|0,be|0)|0;_e=Ss(be|0,I|0,ye|0,_e|0)|0;ge=Ss(_e|0,I|0,me|0,ge|0)|0;he=Ss(ge|0,I|0,pe|0,he|0)|0;g=Ss(he|0,I|0,E|0,g|0)|0;E=I;ce=Ss(de|0,le|0,ue|0,ce|0)|0;ae=Ss(ce|0,I|0,fe|0,ae|0)|0;oe=Ss(ae|0,I|0,se|0,oe|0)|0;c=Ss(oe|0,I|0,y|0,c|0)|0;y=I;te=Ss(ie|0,re|0,ne|0,te|0)|0;$=Ss(te|0,I|0,ee|0,$|0)|0;J=Ss($|0,I|0,Z|0,J|0)|0;Y=Ss(J|0,I|0,X|0,Y|0)|0;A=Ss(Y|0,I|0,f|0,A|0)|0;f=I;H=Ss(W|0,Q|0,V|0,H|0)|0;G=Ss(H|0,I|0,z|0,G|0)|0;F=Ss(G|0,I|0,K|0,F|0)|0;s=Ss(F|0,I|0,a|0,s|0)|0;a=I;j=Ss(q|0,L|0,U|0,j|0)|0;B=Ss(j|0,I|0,N|0,B|0)|0;P=Ss(B|0,I|0,D|0,P|0)|0;x=Ss(P|0,I|0,M|0,x|0)|0;m=Ss(x|0,I|0,t|0,m|0)|0;t=I;R=Ss(C|0,O|0,T|0,R|0)|0;S=Ss(R|0,I|0,k|0,S|0)|0;h=Ss(S|0,I|0,d|0,h|0)|0;u=Ss(h|0,I|0,l|0,u|0)|0;l=I;n=xs(_|0,n|0,1)|0;_=I;p=xs(b|0,p|0,1)|0;b=I;i=xs(w|0,i|0,1)|0;w=I;r=xs(v|0,r|0,1)|0;v=I;E=xs(g|0,E|0,1)|0;g=I;y=xs(c|0,y|0,1)|0;c=I;f=xs(A|0,f|0,1)|0;A=I;a=xs(s|0,a|0,1)|0;s=I;t=xs(m|0,t|0,1)|0;m=I;l=xs(u|0,l|0,1)|0;u=I;h=Ss(n|0,_|0,33554432,0)|0;d=I;S=Os(h|0,d|0,26)|0;b=Ss(S|0,I|0,p|0,b|0)|0;p=I;d=ks(n|0,_|0,h&-67108864|0,d|0)|0;h=I;_=Ss(E|0,g|0,33554432,0)|0;n=I;S=Os(_|0,n|0,26)|0;c=Ss(S|0,I|0,y|0,c|0)|0;y=I;n=ks(E|0,g|0,_&-67108864|0,n|0)|0;_=I;g=Ss(b|0,p|0,16777216,0)|0;E=Os(g|0,I|0,25)|0;w=Ss(E|0,I|0,i|0,w|0)|0;i=I;g=ks(b|0,p|0,g&-33554432|0,0)|0;p=I;b=Ss(c|0,y|0,16777216,0)|0;E=Os(b|0,I|0,25)|0;A=Ss(E|0,I|0,f|0,A|0)|0;f=I;b=ks(c|0,y|0,b&-33554432|0,0)|0;y=I;c=Ss(w|0,i|0,33554432,0)|0;E=Os(c|0,I|0,26)|0;v=Ss(E|0,I|0,r|0,v|0)|0;r=I;c=ks(w|0,i|0,c&-67108864|0,0)|0;i=Ss(A|0,f|0,33554432,0)|0;w=Os(i|0,I|0,26)|0;s=Ss(w|0,I|0,a|0,s|0)|0;a=I;i=ks(A|0,f|0,i&-67108864|0,0)|0;f=Ss(v|0,r|0,16777216,0)|0;A=Os(f|0,I|0,25)|0;_=Ss(A|0,I|0,n|0,_|0)|0;n=I;f=ks(v|0,r|0,f&-33554432|0,0)|0;r=Ss(s|0,a|0,16777216,0)|0;v=Os(r|0,I|0,25)|0;m=Ss(v|0,I|0,t|0,m|0)|0;t=I;r=ks(s|0,a|0,r&-33554432|0,0)|0;a=Ss(_|0,n|0,33554432,0)|0;s=Cs(a|0,I|0,26)|0;s=Ss(b|0,y|0,s|0,I|0)|0;a=ks(_|0,n|0,a&-67108864|0,0)|0;n=Ss(m|0,t|0,33554432,0)|0;_=Os(n|0,I|0,26)|0;u=Ss(_|0,I|0,l|0,u|0)|0;l=I;n=ks(m|0,t|0,n&-67108864|0,0)|0;t=Ss(u|0,l|0,16777216,0)|0;m=Os(t|0,I|0,25)|0;m=Es(m|0,I|0,19,0)|0;h=Ss(m|0,I|0,d|0,h|0)|0;d=I;t=ks(u|0,l|0,t&-33554432|0,0)|0;l=Ss(h|0,d|0,33554432,0)|0;u=Cs(l|0,I|0,26)|0;u=Ss(g|0,p|0,u|0,I|0)|0;l=ks(h|0,d|0,l&-67108864|0,0)|0;o[e>>2]=l;o[e+4>>2]=u;o[e+8>>2]=c;o[e+12>>2]=f;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=n;o[e+36>>2]=t;return}function ei(e){e=e|0;var t=0,n=0,i=0,o=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0,me=0,_e=0,ye=0,be=0,ve=0,Ae=0,we=0,Ee=0,Se=0,ke=0,Ie=0,Re=0,Te=0,Oe=0,Ce=0,xe=0,Me=0,Pe=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,qe=0,Fe=0,Ke=0,Ge=0,ze=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;de=e+1|0;ce=e+2|0;K=r[ce>>0]|0;we=s[e>>0]|0;M=xs(s[de>>0]|0|0,0,8)|0;be=I;K=K&255;ve=xs(K|0,0,16)|0;fe=e+3|0;A=xs(s[fe>>0]|0|0,0,8)|0;te=I;ie=e+4|0;Z=xs(s[ie>>0]|0|0,0,16)|0;te=te|I;re=e+5|0;F=s[re>>0]|0;$=xs(F|0,0,24)|0;te=Cs(A|K|Z|$|0,te|I|0,5)|0;$=e+6|0;Z=e+7|0;K=r[Z>>0]|0;A=xs(s[$>>0]|0|0,0,8)|0;Te=I;K=K&255;J=xs(K|0,0,16)|0;Te=Cs(A|F|J|0,Te|I|0,2)|0;J=e+8|0;F=xs(s[J>>0]|0|0,0,8)|0;A=I;Q=e+9|0;Re=xs(s[Q>>0]|0|0,0,16)|0;A=A|I;V=e+10|0;Ve=s[V>>0]|0;H=xs(Ve|0,0,24)|0;A=Cs(F|K|Re|H|0,A|I|0,7)|0;H=e+11|0;Re=xs(s[H>>0]|0|0,0,8)|0;K=I;F=e+12|0;B=xs(s[F>>0]|0|0,0,16)|0;K=K|I;q=e+13|0;w=s[q>>0]|0;N=xs(w|0,0,24)|0;K=Cs(Re|Ve|B|N|0,K|I|0,4)|0;N=e+14|0;B=e+15|0;Ve=r[B>>0]|0;Re=xs(s[N>>0]|0|0,0,8)|0;_e=I;Ve=Ve&255;D=xs(Ve|0,0,16)|0;_e=Cs(Re|w|D|0,_e|I|0,1)|0;D=e+16|0;w=xs(s[D>>0]|0|0,0,8)|0;Re=I;C=e+17|0;S=xs(s[C>>0]|0|0,0,16)|0;Re=Re|I;O=e+18|0;E=s[O>>0]|0;T=xs(E|0,0,24)|0;Re=Cs(w|Ve|S|T|0,Re|I|0,6)|0;T=e+19|0;S=e+20|0;Ve=r[S>>0]|0;w=xs(s[T>>0]|0|0,0,8)|0;Qe=I;Ve=xs(Ve&255|0,0,16)|0;Qe=Cs(w|E|Ve|0,Qe|I|0,3)|0;Ve=I;E=e+21|0;w=e+22|0;b=e+23|0;n=r[b>>0]|0;et=s[E>>0]|0;tt=xs(s[w>>0]|0|0,0,8)|0;Ze=I;n=n&255;$e=xs(n|0,0,16)|0;y=e+24|0;Ue=xs(s[y>>0]|0|0,0,8)|0;Ge=I;p=e+25|0;f=xs(s[p>>0]|0|0,0,16)|0;Ge=Ge|I;h=e+26|0;pe=s[h>>0]|0;c=xs(pe|0,0,24)|0;Ge=Cs(Ue|n|f|c|0,Ge|I|0,5)|0;c=e+27|0;f=e+28|0;n=r[f>>0]|0;Ue=xs(s[c>>0]|0|0,0,8)|0;Je=I;n=n&255;a=xs(n|0,0,16)|0;Je=Cs(Ue|pe|a|0,Je|I|0,2)|0;a=e+29|0;pe=xs(s[a>>0]|0|0,0,8)|0;Ue=I;o=e+30|0;ot=xs(s[o>>0]|0|0,0,16)|0;Ue=Ue|I;t=e+31|0;ne=s[t>>0]|0;u=xs(ne|0,0,24)|0;Ue=Cs(pe|n|ot|u|0,Ue|I|0,7)|0;u=xs(s[e+32>>0]|0|0,0,8)|0;ot=I;n=xs(s[e+33>>0]|0|0,0,16)|0;ot=ot|I;pe=s[e+34>>0]|0;m=xs(pe|0,0,24)|0;ot=Cs(u|ne|n|m|0,ot|I|0,4)|0;m=r[e+36>>0]|0;n=xs(s[e+35>>0]|0|0,0,8)|0;ne=I;m=m&255;u=xs(m|0,0,16)|0;ne=Cs(n|pe|u|0,ne|I|0,1)|0;u=xs(s[e+37>>0]|0|0,0,8)|0;pe=I;n=xs(s[e+38>>0]|0|0,0,16)|0;pe=pe|I;qe=s[e+39>>0]|0;ee=xs(qe|0,0,24)|0;pe=Cs(u|m|n|ee|0,pe|I|0,6)|0;ee=r[e+41>>0]|0;n=xs(s[e+40>>0]|0|0,0,8)|0;m=I;ee=xs(ee&255|0,0,16)|0;m=Cs(n|qe|ee|0,m|I|0,3)|0;ee=I;qe=r[e+44>>0]|0;n=s[e+42>>0]|0;u=xs(s[e+43>>0]|0|0,0,8)|0;j=I;qe=qe&255;_=xs(qe|0,0,16)|0;k=xs(s[e+45>>0]|0|0,0,8)|0;oe=I;xe=xs(s[e+46>>0]|0|0,0,16)|0;oe=oe|I;st=s[e+47>>0]|0;U=xs(st|0,0,24)|0;oe=Cs(k|qe|xe|U|0,oe|I|0,5)|0;U=r[e+49>>0]|0;xe=xs(s[e+48>>0]|0|0,0,8)|0;qe=I;U=U&255;k=xs(U|0,0,16)|0;qe=Cs(xe|st|k|0,qe|I|0,2)|0;qe=qe&2097151;k=xs(s[e+50>>0]|0|0,0,8)|0;st=I;xe=xs(s[e+51>>0]|0|0,0,16)|0;st=st|I;ue=s[e+52>>0]|0;L=xs(ue|0,0,24)|0;st=Cs(k|U|xe|L|0,st|I|0,7)|0;st=st&2097151;L=xs(s[e+53>>0]|0|0,0,8)|0;xe=I;U=xs(s[e+54>>0]|0|0,0,16)|0;xe=xe|I;k=s[e+55>>0]|0;W=xs(k|0,0,24)|0;xe=Cs(L|ue|U|W|0,xe|I|0,4)|0;xe=xe&2097151;W=r[e+57>>0]|0;U=xs(s[e+56>>0]|0|0,0,8)|0;ue=I;W=W&255;L=xs(W|0,0,16)|0;ue=Cs(U|k|L|0,ue|I|0,1)|0;ue=ue&2097151;L=xs(s[e+58>>0]|0|0,0,8)|0;k=I;U=xs(s[e+59>>0]|0|0,0,16)|0;k=k|I;he=s[e+60>>0]|0;me=xs(he|0,0,24)|0;k=Cs(L|W|U|me|0,k|I|0,6)|0;k=k&2097151;me=xs(s[e+61>>0]|0|0,0,8)|0;U=I;W=xs(s[e+62>>0]|0|0,0,16)|0;U=U|I;L=xs(s[e+63>>0]|0|0,0,24)|0;U=Cs(me|he|W|L|0,U|I|0,3)|0;L=I;W=Es(U|0,L|0,666643,0)|0;he=I;me=Es(U|0,L|0,470296,0)|0;ae=I;v=Es(U|0,L|0,654183,0)|0;x=I;Ae=Es(U|0,L|0,-997805,-1)|0;Ie=I;d=Es(U|0,L|0,136657,0)|0;ke=I;L=Es(U|0,L|0,-683901,-1)|0;j=Ss(L|0,I|0,u|n|_&2031616|0,j|0)|0;_=I;n=Es(k|0,0,666643,0)|0;u=I;L=Es(k|0,0,470296,0)|0;U=I;Ye=Es(k|0,0,654183,0)|0;P=I;Y=Es(k|0,0,-997805,-1)|0;G=I;Se=Es(k|0,0,136657,0)|0;ge=I;k=Es(k|0,0,-683901,-1)|0;z=I;Oe=Es(ue|0,0,666643,0)|0;Ee=I;se=Es(ue|0,0,470296,0)|0;Le=I;Pe=Es(ue|0,0,654183,0)|0;Me=I;nt=Es(ue|0,0,-997805,-1)|0;We=I;l=Es(ue|0,0,136657,0)|0;g=I;ue=Es(ue|0,0,-683901,-1)|0;pe=Ss(ue|0,I|0,pe&2097151|0,0)|0;ge=Ss(pe|0,I|0,Se|0,ge|0)|0;Ie=Ss(ge|0,I|0,Ae|0,Ie|0)|0;Ae=I;ge=Es(xe|0,0,666643,0)|0;Se=I;pe=Es(xe|0,0,470296,0)|0;ue=I;ye=Es(xe|0,0,654183,0)|0;X=I;Be=Es(xe|0,0,-997805,-1)|0;De=I;it=Es(xe|0,0,136657,0)|0;rt=I;xe=Es(xe|0,0,-683901,-1)|0;Ce=I;i=Es(st|0,0,666643,0)|0;R=I;ze=Es(st|0,0,470296,0)|0;He=I;Ke=Es(st|0,0,654183,0)|0;Fe=I;Xe=Es(st|0,0,-997805,-1)|0;le=I;je=Es(st|0,0,136657,0)|0;Ne=I;st=Es(st|0,0,-683901,-1)|0;ot=Ss(st|0,I|0,ot&2097151|0,0)|0;rt=Ss(ot|0,I|0,it|0,rt|0)|0;We=Ss(rt|0,I|0,nt|0,We|0)|0;P=Ss(We|0,I|0,Ye|0,P|0)|0;ae=Ss(P|0,I|0,me|0,ae|0)|0;me=I;P=Es(qe|0,0,666643,0)|0;Re=Ss(P|0,I|0,Re&2097151|0,0)|0;P=I;Ye=Es(qe|0,0,470296,0)|0;We=I;nt=Es(qe|0,0,654183,0)|0;Ze=Ss(nt|0,I|0,tt|et|$e&2031616|0,Ze|0)|0;He=Ss(Ze|0,I|0,ze|0,He|0)|0;Se=Ss(He|0,I|0,ge|0,Se|0)|0;ge=I;He=Es(qe|0,0,-997805,-1)|0;ze=I;Ze=Es(qe|0,0,136657,0)|0;Je=Ss(Ze|0,I|0,Je&2097151|0,0)|0;le=Ss(Je|0,I|0,Xe|0,le|0)|0;X=Ss(le|0,I|0,ye|0,X|0)|0;Le=Ss(X|0,I|0,se|0,Le|0)|0;u=Ss(Le|0,I|0,n|0,u|0)|0;n=I;qe=Es(qe|0,0,-683901,-1)|0;Le=I;se=Ss(Re|0,P|0,1048576,0)|0;X=I;ye=Cs(se|0,X|0,21)|0;le=I;Ve=Ss(Ye|0,We|0,Qe|0,Ve|0)|0;le=Ss(Ve|0,I|0,ye|0,le|0)|0;R=Ss(le|0,I|0,i|0,R|0)|0;i=I;X=ks(Re|0,P|0,se&-2097152|0,X&2047|0)|0;se=I;P=Ss(Se|0,ge|0,1048576,0)|0;Re=I;le=Cs(P|0,Re|0,21)|0;ye=I;Ge=Ss(He|0,ze|0,Ge&2097151|0,0)|0;Fe=Ss(Ge|0,I|0,Ke|0,Fe|0)|0;ue=Ss(Fe|0,I|0,pe|0,ue|0)|0;Ee=Ss(ue|0,I|0,Oe|0,Ee|0)|0;ye=Ss(Ee|0,I|0,le|0,ye|0)|0;le=I;Ee=Ss(u|0,n|0,1048576,0)|0;Oe=I;ue=Os(Ee|0,Oe|0,21)|0;pe=I;Ue=Ss(qe|0,Le|0,Ue&2097151|0,0)|0;Ne=Ss(Ue|0,I|0,je|0,Ne|0)|0;De=Ss(Ne|0,I|0,Be|0,De|0)|0;Me=Ss(De|0,I|0,Pe|0,Me|0)|0;U=Ss(Me|0,I|0,L|0,U|0)|0;he=Ss(U|0,I|0,W|0,he|0)|0;pe=Ss(he|0,I|0,ue|0,pe|0)|0;ue=I;he=Ss(ae|0,me|0,1048576,0)|0;W=I;U=Os(he|0,W|0,21)|0;L=I;ne=Ss(xe|0,Ce|0,ne&2097151|0,0)|0;g=Ss(ne|0,I|0,l|0,g|0)|0;G=Ss(g|0,I|0,Y|0,G|0)|0;x=Ss(G|0,I|0,v|0,x|0)|0;L=Ss(x|0,I|0,U|0,L|0)|0;U=I;W=ks(ae|0,me|0,he&-2097152|0,W|0)|0;he=I;me=Ss(Ie|0,Ae|0,1048576,0)|0;ae=I;x=Os(me|0,ae|0,21)|0;v=I;ee=Ss(k|0,z|0,m|0,ee|0)|0;ke=Ss(ee|0,I|0,d|0,ke|0)|0;v=Ss(ke|0,I|0,x|0,v|0)|0;x=I;ae=ks(Ie|0,Ae|0,me&-2097152|0,ae|0)|0;me=I;Ae=Ss(j|0,_|0,1048576,0)|0;Ie=I;ke=Os(Ae|0,Ie|0,21)|0;oe=Ss(ke|0,I|0,oe&2097151|0,0)|0;ke=I;Ie=ks(j|0,_|0,Ae&-2097152|0,Ie|0)|0;Ae=I;_=Ss(R|0,i|0,1048576,0)|0;j=I;d=Cs(_|0,j|0,21)|0;ee=I;j=ks(R|0,i|0,_&-2097152|0,j|0)|0;_=I;i=Ss(ye|0,le|0,1048576,0)|0;R=I;m=Os(i|0,R|0,21)|0;z=I;R=ks(ye|0,le|0,i&-2097152|0,R|0)|0;i=I;le=Ss(pe|0,ue|0,1048576,0)|0;ye=I;k=Os(le|0,ye|0,21)|0;he=Ss(k|0,I|0,W|0,he|0)|0;W=I;ye=ks(pe|0,ue|0,le&-2097152|0,ye|0)|0;le=I;ue=Ss(L|0,U|0,1048576,0)|0;pe=I;k=Os(ue|0,pe|0,21)|0;me=Ss(k|0,I|0,ae|0,me|0)|0;ae=I;pe=ks(L|0,U|0,ue&-2097152|0,pe|0)|0;ue=I;U=Ss(v|0,x|0,1048576,0)|0;L=I;k=Os(U|0,L|0,21)|0;Ae=Ss(k|0,I|0,Ie|0,Ae|0)|0;Ie=I;L=ks(v|0,x|0,U&-2097152|0,L|0)|0;U=I;x=Es(oe|0,ke|0,666643,0)|0;_e=Ss(x|0,I|0,_e&2097151|0,0)|0;x=I;v=Es(oe|0,ke|0,470296,0)|0;v=Ss(X|0,se|0,v|0,I|0)|0;se=I;X=Es(oe|0,ke|0,654183,0)|0;X=Ss(j|0,_|0,X|0,I|0)|0;_=I;j=Es(oe|0,ke|0,-997805,-1)|0;k=I;G=Es(oe|0,ke|0,136657,0)|0;G=Ss(R|0,i|0,G|0,I|0)|0;i=I;ke=Es(oe|0,ke|0,-683901,-1)|0;oe=I;z=Ss(u|0,n|0,m|0,z|0)|0;Oe=ks(z|0,I|0,Ee&-2097152|0,Oe|0)|0;oe=Ss(Oe|0,I|0,ke|0,oe|0)|0;ke=I;Oe=Es(Ae|0,Ie|0,666643,0)|0;K=Ss(Oe|0,I|0,K&2097151|0,0)|0;Oe=I;Ee=Es(Ae|0,Ie|0,470296,0)|0;Ee=Ss(_e|0,x|0,Ee|0,I|0)|0;x=I;_e=Es(Ae|0,Ie|0,654183,0)|0;_e=Ss(v|0,se|0,_e|0,I|0)|0;se=I;v=Es(Ae|0,Ie|0,-997805,-1)|0;v=Ss(X|0,_|0,v|0,I|0)|0;_=I;X=Es(Ae|0,Ie|0,136657,0)|0;z=I;Ie=Es(Ae|0,Ie|0,-683901,-1)|0;Ie=Ss(G|0,i|0,Ie|0,I|0)|0;i=I;G=Es(L|0,U|0,666643,0)|0;A=Ss(G|0,I|0,A&2097151|0,0)|0;G=I;Ae=Es(L|0,U|0,470296,0)|0;Ae=Ss(K|0,Oe|0,Ae|0,I|0)|0;Oe=I;K=Es(L|0,U|0,654183,0)|0;K=Ss(Ee|0,x|0,K|0,I|0)|0;x=I;Ee=Es(L|0,U|0,-997805,-1)|0;Ee=Ss(_e|0,se|0,Ee|0,I|0)|0;se=I;_e=Es(L|0,U|0,136657,0)|0;_e=Ss(v|0,_|0,_e|0,I|0)|0;_=I;U=Es(L|0,U|0,-683901,-1)|0;L=I;ee=Ss(Se|0,ge|0,d|0,ee|0)|0;Re=ks(ee|0,I|0,P&-2097152|0,Re|0)|0;k=Ss(Re|0,I|0,j|0,k|0)|0;z=Ss(k|0,I|0,X|0,z|0)|0;L=Ss(z|0,I|0,U|0,L|0)|0;U=I;z=Es(me|0,ae|0,666643,0)|0;X=I;k=Es(me|0,ae|0,470296,0)|0;j=I;Re=Es(me|0,ae|0,654183,0)|0;P=I;ee=Es(me|0,ae|0,-997805,-1)|0;d=I;ge=Es(me|0,ae|0,136657,0)|0;ge=Ss(Ee|0,se|0,ge|0,I|0)|0;se=I;ae=Es(me|0,ae|0,-683901,-1)|0;ae=Ss(_e|0,_|0,ae|0,I|0)|0;_=I;_e=Es(pe|0,ue|0,666643,0)|0;me=I;Ee=Es(pe|0,ue|0,470296,0)|0;Se=I;v=Es(pe|0,ue|0,654183,0)|0;m=I;n=Es(pe|0,ue|0,-997805,-1)|0;u=I;R=Es(pe|0,ue|0,136657,0)|0;Y=I;ue=Es(pe|0,ue|0,-683901,-1)|0;ue=Ss(ge|0,se|0,ue|0,I|0)|0;se=I;ge=Es(he|0,W|0,666643,0)|0;be=Ss(ge|0,I|0,M|we|ve&2031616|0,be|0)|0;ve=I;we=Es(he|0,W|0,470296,0)|0;M=I;ge=Es(he|0,W|0,654183,0)|0;Te=Ss(ge|0,I|0,Te&2097151|0,0)|0;X=Ss(Te|0,I|0,z|0,X|0)|0;Se=Ss(X|0,I|0,Ee|0,Se|0)|0;Ee=I;X=Es(he|0,W|0,-997805,-1)|0;z=I;Te=Es(he|0,W|0,136657,0)|0;Te=Ss(Ae|0,Oe|0,Te|0,I|0)|0;P=Ss(Te|0,I|0,Re|0,P|0)|0;u=Ss(P|0,I|0,n|0,u|0)|0;n=I;W=Es(he|0,W|0,-683901,-1)|0;he=I;P=Ss(be|0,ve|0,1048576,0)|0;Re=I;Te=Os(P|0,Re|0,21)|0;Oe=I;te=Ss(we|0,M|0,te&2097151|0,0)|0;me=Ss(te|0,I|0,_e|0,me|0)|0;Oe=Ss(me|0,I|0,Te|0,Oe|0)|0;Te=I;Re=ks(be|0,ve|0,P&-2097152|0,Re|0)|0;P=I;ve=Ss(Se|0,Ee|0,1048576,0)|0;be=I;me=Os(ve|0,be|0,21)|0;_e=I;z=Ss(A|0,G|0,X|0,z|0)|0;j=Ss(z|0,I|0,k|0,j|0)|0;m=Ss(j|0,I|0,v|0,m|0)|0;_e=Ss(m|0,I|0,me|0,_e|0)|0;me=I;m=Ss(u|0,n|0,1048576,0)|0;v=I;j=Os(m|0,v|0,21)|0;k=I;he=Ss(K|0,x|0,W|0,he|0)|0;d=Ss(he|0,I|0,ee|0,d|0)|0;Y=Ss(d|0,I|0,R|0,Y|0)|0;k=Ss(Y|0,I|0,j|0,k|0)|0;j=I;Y=Ss(ue|0,se|0,1048576,0)|0;R=I;d=Os(Y|0,R|0,21)|0;d=Ss(ae|0,_|0,d|0,I|0)|0;_=I;R=ks(ue|0,se|0,Y&-2097152|0,R|0)|0;Y=I;se=Ss(L|0,U|0,1048576,0)|0;ue=I;ae=Os(se|0,ue|0,21)|0;ae=Ss(Ie|0,i|0,ae|0,I|0)|0;i=I;ue=ks(L|0,U|0,se&-2097152|0,ue|0)|0;se=I;U=Ss(oe|0,ke|0,1048576,0)|0;L=I;Ie=Os(U|0,L|0,21)|0;Ie=Ss(ye|0,le|0,Ie|0,I|0)|0;le=I;L=ks(oe|0,ke|0,U&-2097152|0,L|0)|0;U=I;ke=Ss(Oe|0,Te|0,1048576,0)|0;oe=I;ye=Os(ke|0,oe|0,21)|0;ee=I;he=Ss(_e|0,me|0,1048576,0)|0;W=I;x=Os(he|0,W|0,21)|0;K=I;z=Ss(k|0,j|0,1048576,0)|0;X=I;G=Os(z|0,X|0,21)|0;G=Ss(R|0,Y|0,G|0,I|0)|0;Y=I;R=Ss(d|0,_|0,1048576,0)|0;A=I;te=Os(R|0,A|0,21)|0;te=Ss(ue|0,se|0,te|0,I|0)|0;se=I;A=ks(d|0,_|0,R&-2097152|0,A|0)|0;R=I;_=Ss(ae|0,i|0,1048576,0)|0;d=I;ue=Os(_|0,d|0,21)|0;ue=Ss(L|0,U|0,ue|0,I|0)|0;U=I;d=ks(ae|0,i|0,_&-2097152|0,d|0)|0;_=I;i=Ss(Ie|0,le|0,1048576,0)|0;ae=I;L=Os(i|0,ae|0,21)|0;M=I;ae=ks(Ie|0,le|0,i&-2097152|0,ae|0)|0;i=I;le=Es(L|0,M|0,666643,0)|0;le=Ss(Re|0,P|0,le|0,I|0)|0;P=I;Re=Es(L|0,M|0,470296,0)|0;Ie=I;we=Es(L|0,M|0,654183,0)|0;Ae=I;ge=Es(L|0,M|0,-997805,-1)|0;pe=I;g=Es(L|0,M|0,136657,0)|0;l=I;M=Es(L|0,M|0,-683901,-1)|0;L=I;P=Os(le|0,P|0,21)|0;ne=I;Ie=Ss(Oe|0,Te|0,Re|0,Ie|0)|0;oe=ks(Ie|0,I|0,ke&-2097152|0,oe|0)|0;ne=Ss(oe|0,I|0,P|0,ne|0)|0;P=Os(ne|0,I|0,21)|0;oe=I;Ae=Ss(Se|0,Ee|0,we|0,Ae|0)|0;be=ks(Ae|0,I|0,ve&-2097152|0,be|0)|0;ee=Ss(be|0,I|0,ye|0,ee|0)|0;oe=Ss(ee|0,I|0,P|0,oe|0)|0;P=Os(oe|0,I|0,21)|0;ee=I;pe=Ss(_e|0,me|0,ge|0,pe|0)|0;W=ks(pe|0,I|0,he&-2097152|0,W|0)|0;ee=Ss(W|0,I|0,P|0,ee|0)|0;P=Os(ee|0,I|0,21)|0;W=I;l=Ss(u|0,n|0,g|0,l|0)|0;v=ks(l|0,I|0,m&-2097152|0,v|0)|0;K=Ss(v|0,I|0,x|0,K|0)|0;W=Ss(K|0,I|0,P|0,W|0)|0;P=Os(W|0,I|0,21)|0;K=I;L=Ss(k|0,j|0,M|0,L|0)|0;X=ks(L|0,I|0,z&-2097152|0,X|0)|0;K=Ss(X|0,I|0,P|0,K|0)|0;P=Os(K|0,I|0,21)|0;P=Ss(G|0,Y|0,P|0,I|0)|0;Y=Os(P|0,I|0,21)|0;R=Ss(Y|0,I|0,A|0,R|0)|0;A=Os(R|0,I|0,21)|0;A=Ss(te|0,se|0,A|0,I|0)|0;se=Os(A|0,I|0,21)|0;_=Ss(se|0,I|0,d|0,_|0)|0;d=Os(_|0,I|0,21)|0;d=Ss(ue|0,U|0,d|0,I|0)|0;U=Os(d|0,I|0,21)|0;i=Ss(U|0,I|0,ae|0,i|0)|0;ae=Os(i|0,I|0,21)|0;U=I;ue=Es(ae|0,U|0,666643,0)|0;le=Ss(ue|0,I|0,le&2097151|0,0)|0;ue=I;se=Es(ae|0,U|0,470296,0)|0;ne=Ss(se|0,I|0,ne&2097151|0,0)|0;se=I;te=Es(ae|0,U|0,654183,0)|0;oe=Ss(te|0,I|0,oe&2097151|0,0)|0;te=I;Y=Es(ae|0,U|0,-997805,-1)|0;ee=Ss(Y|0,I|0,ee&2097151|0,0)|0;Y=I;G=Es(ae|0,U|0,136657,0)|0;W=Ss(G|0,I|0,W&2097151|0,0)|0;G=I;U=Es(ae|0,U|0,-683901,-1)|0;K=Ss(U|0,I|0,K&2097151|0,0)|0;U=I;ae=Os(le|0,ue|0,21)|0;ae=Ss(ne|0,se|0,ae|0,I|0)|0;se=I;ne=Os(ae|0,se|0,21)|0;ne=Ss(oe|0,te|0,ne|0,I|0)|0;te=I;oe=ae&2097151;X=Os(ne|0,te|0,21)|0;X=Ss(ee|0,Y|0,X|0,I|0)|0;Y=I;ee=ne&2097151;z=Os(X|0,Y|0,21)|0;z=Ss(W|0,G|0,z|0,I|0)|0;G=I;W=X&2097151;L=Os(z|0,G|0,21)|0;L=Ss(K|0,U|0,L|0,I|0)|0;U=I;K=z&2097151;M=Os(L|0,U|0,21)|0;P=Ss(M|0,I|0,P&2097151|0,0)|0;M=I;j=L&2097151;k=Os(P|0,M|0,21)|0;R=Ss(k|0,I|0,R&2097151|0,0)|0;k=I;x=P&2097151;v=Os(R|0,k|0,21)|0;A=Ss(v|0,I|0,A&2097151|0,0)|0;v=I;m=Os(A|0,v|0,21)|0;_=Ss(m|0,I|0,_&2097151|0,0)|0;m=I;l=Os(_|0,m|0,21)|0;d=Ss(l|0,I|0,d&2097151|0,0)|0;l=I;g=_&2097151;n=Os(d|0,l|0,21)|0;i=Ss(n|0,I|0,i&2097151|0,0)|0;n=I;u=d&2097151;r[e>>0]=le;e=Cs(le|0,ue|0,8)|0;r[de>>0]=e;e=Cs(le|0,ue|0,16)|0;ue=xs(oe|0,0,5)|0;r[ce>>0]=ue|e&31;e=Cs(ae|0,se|0,3)|0;r[fe>>0]=e;e=Cs(ae|0,se|0,11)|0;r[ie>>0]=e;e=Cs(oe|0,0,19)|0;oe=I;ie=xs(ee|0,0,2)|0;r[re>>0]=ie|e;e=Cs(ne|0,te|0,6)|0;r[$>>0]=e;e=Cs(ee|0,0,14)|0;ee=I;$=xs(W|0,0,7)|0;r[Z>>0]=$|e;e=Cs(X|0,Y|0,1)|0;r[J>>0]=e;e=Cs(X|0,Y|0,9)|0;r[Q>>0]=e;e=Cs(W|0,0,17)|0;W=I;Q=xs(K|0,0,4)|0;r[V>>0]=Q|e;e=Cs(z|0,G|0,4)|0;r[H>>0]=e;e=Cs(z|0,G|0,12)|0;r[F>>0]=e;e=Cs(K|0,0,20)|0;K=I;F=xs(j|0,0,1)|0;r[q>>0]=F|e;e=Cs(L|0,U|0,7)|0;r[N>>0]=e;e=Cs(j|0,0,15)|0;j=I;N=xs(x|0,0,6)|0;r[B>>0]=N|e;e=Cs(P|0,M|0,2)|0;r[D>>0]=e;e=Cs(P|0,M|0,10)|0;r[C>>0]=e;e=Cs(x|0,0,18)|0;x=I;C=xs(R|0,k|0,3)|0;r[O>>0]=C|e;e=Cs(R|0,k|0,5)|0;r[T>>0]=e;e=Cs(R|0,k|0,13)|0;r[S>>0]=e;r[E>>0]=A;e=Cs(A|0,v|0,8)|0;r[w>>0]=e;e=Cs(A|0,v|0,16)|0;v=xs(g|0,0,5)|0;r[b>>0]=v|e&31;e=Cs(_|0,m|0,3)|0;r[y>>0]=e;e=Cs(_|0,m|0,11)|0;r[p>>0]=e;e=Cs(g|0,0,19)|0;g=I;p=xs(u|0,0,2)|0;r[h>>0]=p|e;e=Cs(d|0,l|0,6)|0;r[c>>0]=e;e=Cs(u|0,0,14)|0;u=I;c=xs(i|0,n|0,7)|0;r[f>>0]=c|e;e=Cs(i|0,n|0,1)|0;r[a>>0]=e;e=Cs(i|0,n|0,9)|0;r[o>>0]=e;e=Os(i|0,n|0,17)|0;r[t>>0]=e;return}function ti(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var o=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0,me=0,_e=0,ye=0,be=0,ve=0,Ae=0,we=0,Ee=0,Se=0,ke=0,Ie=0,Re=0,Te=0,Oe=0,Ce=0,xe=0,Me=0,Pe=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,qe=0,Fe=0,Ke=0,Ge=0,ze=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ft=0,ct=0,ut=0,lt=0,dt=0,ht=0,pt=0,gt=0,mt=0,_t=0,yt=0,bt=0,vt=0,At=0,wt=0,Et=0,St=0,kt=0,It=0,Rt=0,Tt=0,Ot=0,Ct=0,xt=0,Mt=0,Pt=0,Dt=0,Bt=0,Nt=0,jt=0,Ut=0,Lt=0,qt=0,Ft=0,Kt=0,Gt=0,zt=0,Ht=0,Vt=0,Qt=0,Wt=0,Yt=0,Xt=0,Jt=0,Zt=0,$t=0,en=0,tn=0,nn=0,rn=0,on=0,sn=0,an=0,fn=0,cn=0,un=0,ln=0,dn=0,hn=0,pn=0,gn=0,mn=0,_n=0,yn=0,bn=0,vn=0,An=0,wn=0;ot=r[t+2>>0]|0;pe=s[t>>0]|0;pt=xs(s[t+1>>0]|0|0,0,8)|0;Ue=I;ot=ot&255;Le=xs(ot|0,0,16)|0;Le=pt|pe|Le&2031616;pe=xs(s[t+3>>0]|0|0,0,8)|0;pt=I;$e=xs(s[t+4>>0]|0|0,0,16)|0;pt=pt|I;ht=s[t+5>>0]|0;L=xs(ht|0,0,24)|0;pt=Cs(pe|ot|$e|L|0,pt|I|0,5)|0;pt=pt&2097151;L=r[t+7>>0]|0;$e=xs(s[t+6>>0]|0|0,0,8)|0;ot=I;L=L&255;pe=xs(L|0,0,16)|0;ot=Cs($e|ht|pe|0,ot|I|0,2)|0;ot=ot&2097151;pe=xs(s[t+8>>0]|0|0,0,8)|0;ht=I;$e=xs(s[t+9>>0]|0|0,0,16)|0;ht=ht|I;z=s[t+10>>0]|0;B=xs(z|0,0,24)|0;ht=Cs(pe|L|$e|B|0,ht|I|0,7)|0;ht=ht&2097151;B=xs(s[t+11>>0]|0|0,0,8)|0;$e=I;L=xs(s[t+12>>0]|0|0,0,16)|0;$e=$e|I;pe=s[t+13>>0]|0;g=xs(pe|0,0,24)|0;$e=Cs(B|z|L|g|0,$e|I|0,4)|0;$e=$e&2097151;g=r[t+15>>0]|0;L=xs(s[t+14>>0]|0|0,0,8)|0;z=I;g=g&255;B=xs(g|0,0,16)|0;z=Cs(L|pe|B|0,z|I|0,1)|0;z=z&2097151;B=xs(s[t+16>>0]|0|0,0,8)|0;pe=I;L=xs(s[t+17>>0]|0|0,0,16)|0;pe=pe|I;N=s[t+18>>0]|0;l=xs(N|0,0,24)|0;pe=Cs(B|g|L|l|0,pe|I|0,6)|0;pe=pe&2097151;l=r[t+20>>0]|0;L=xs(s[t+19>>0]|0|0,0,8)|0;g=I;l=xs(l&255|0,0,16)|0;g=Cs(L|N|l|0,g|I|0,3)|0;l=I;N=r[t+23>>0]|0;L=s[t+21>>0]|0;B=xs(s[t+22>>0]|0|0,0,8)|0;G=I;N=N&255;C=xs(N|0,0,16)|0;C=B|L|C&2031616;L=xs(s[t+24>>0]|0|0,0,8)|0;B=I;Je=xs(s[t+25>>0]|0|0,0,16)|0;B=B|I;me=s[t+26>>0]|0;E=xs(me|0,0,24)|0;B=Cs(L|N|Je|E|0,B|I|0,5)|0;B=B&2097151;E=r[t+28>>0]|0;Je=xs(s[t+27>>0]|0|0,0,8)|0;N=I;E=E&255;L=xs(E|0,0,16)|0;N=Cs(Je|me|L|0,N|I|0,2)|0;N=N&2097151;L=xs(s[t+29>>0]|0|0,0,8)|0;me=I;Je=xs(s[t+30>>0]|0|0,0,16)|0;me=me|I;_e=xs(s[t+31>>0]|0|0,0,24)|0;me=Cs(L|E|Je|_e|0,me|I|0,7)|0;_e=I;Je=r[n+2>>0]|0;E=s[n>>0]|0;L=xs(s[n+1>>0]|0|0,0,8)|0;Et=I;Je=Je&255;wt=xs(Je|0,0,16)|0;wt=L|E|wt&2031616;E=xs(s[n+3>>0]|0|0,0,8)|0;L=I;u=xs(s[n+4>>0]|0|0,0,16)|0;L=L|I;y=s[n+5>>0]|0;yn=xs(y|0,0,24)|0;L=Cs(E|Je|u|yn|0,L|I|0,5)|0;L=L&2097151;yn=r[n+7>>0]|0;u=xs(s[n+6>>0]|0|0,0,8)|0;Je=I;yn=yn&255;E=xs(yn|0,0,16)|0;Je=Cs(u|y|E|0,Je|I|0,2)|0;Je=Je&2097151;E=xs(s[n+8>>0]|0|0,0,8)|0;y=I;u=xs(s[n+9>>0]|0|0,0,16)|0;y=y|I;d=s[n+10>>0]|0;w=xs(d|0,0,24)|0;y=Cs(E|yn|u|w|0,y|I|0,7)|0;y=y&2097151;w=xs(s[n+11>>0]|0|0,0,8)|0;u=I;yn=xs(s[n+12>>0]|0|0,0,16)|0;u=u|I;E=s[n+13>>0]|0;wn=xs(E|0,0,24)|0;u=Cs(w|d|yn|wn|0,u|I|0,4)|0;u=u&2097151;wn=r[n+15>>0]|0;yn=xs(s[n+14>>0]|0|0,0,8)|0;d=I;wn=wn&255;w=xs(wn|0,0,16)|0;d=Cs(yn|E|w|0,d|I|0,1)|0;d=d&2097151;w=xs(s[n+16>>0]|0|0,0,8)|0;E=I;yn=xs(s[n+17>>0]|0|0,0,16)|0;E=E|I;vt=s[n+18>>0]|0;Z=xs(vt|0,0,24)|0;E=Cs(w|wn|yn|Z|0,E|I|0,6)|0;E=E&2097151;Z=r[n+20>>0]|0;yn=xs(s[n+19>>0]|0|0,0,8)|0;wn=I;Z=xs(Z&255|0,0,16)|0;wn=Cs(yn|vt|Z|0,wn|I|0,3)|0;Z=I;vt=r[n+23>>0]|0;yn=s[n+21>>0]|0;w=xs(s[n+22>>0]|0|0,0,8)|0;Se=I;vt=vt&255;ke=xs(vt|0,0,16)|0;ke=w|yn|ke&2031616;yn=xs(s[n+24>>0]|0|0,0,8)|0;w=I;Pe=xs(s[n+25>>0]|0|0,0,16)|0;w=w|I;Q=s[n+26>>0]|0;bn=xs(Q|0,0,24)|0;w=Cs(yn|vt|Pe|bn|0,w|I|0,5)|0;w=w&2097151;bn=r[n+28>>0]|0;Pe=xs(s[n+27>>0]|0|0,0,8)|0;vt=I;bn=bn&255;yn=xs(bn|0,0,16)|0;vt=Cs(Pe|Q|yn|0,vt|I|0,2)|0;vt=vt&2097151;yn=xs(s[n+29>>0]|0|0,0,8)|0;Q=I;Pe=xs(s[n+30>>0]|0|0,0,16)|0;Q=Q|I;V=xs(s[n+31>>0]|0|0,0,24)|0;Q=Cs(yn|bn|Pe|V|0,Q|I|0,7)|0;V=I;Pe=r[i+2>>0]|0;bn=s[i>>0]|0;yn=xs(s[i+1>>0]|0|0,0,8)|0;Oe=I;Pe=Pe&255;vn=xs(Pe|0,0,16)|0;ze=xs(s[i+3>>0]|0|0,0,8)|0;be=I;Re=xs(s[i+4>>0]|0|0,0,16)|0;be=be|I;Ee=s[i+5>>0]|0;m=xs(Ee|0,0,24)|0;be=Cs(ze|Pe|Re|m|0,be|I|0,5)|0;m=r[i+7>>0]|0;Re=xs(s[i+6>>0]|0|0,0,8)|0;Pe=I;m=m&255;ze=xs(m|0,0,16)|0;Pe=Cs(Re|Ee|ze|0,Pe|I|0,2)|0;ze=xs(s[i+8>>0]|0|0,0,8)|0;Ee=I;Re=xs(s[i+9>>0]|0|0,0,16)|0;Ee=Ee|I;De=s[i+10>>0]|0;ve=xs(De|0,0,24)|0;Ee=Cs(ze|m|Re|ve|0,Ee|I|0,7)|0;ve=xs(s[i+11>>0]|0|0,0,8)|0;Re=I;m=xs(s[i+12>>0]|0|0,0,16)|0;Re=Re|I;ze=s[i+13>>0]|0;le=xs(ze|0,0,24)|0;Re=Cs(ve|De|m|le|0,Re|I|0,4)|0;le=r[i+15>>0]|0;m=xs(s[i+14>>0]|0|0,0,8)|0;De=I;le=le&255;ve=xs(le|0,0,16)|0;De=Cs(m|ze|ve|0,De|I|0,1)|0;ve=xs(s[i+16>>0]|0|0,0,8)|0;ze=I;m=xs(s[i+17>>0]|0|0,0,16)|0;ze=ze|I;te=s[i+18>>0]|0;ue=xs(te|0,0,24)|0;ze=Cs(ve|le|m|ue|0,ze|I|0,6)|0;ue=r[i+20>>0]|0;m=xs(s[i+19>>0]|0|0,0,8)|0;le=I;ue=xs(ue&255|0,0,16)|0;le=Cs(m|te|ue|0,le|I|0,3)|0;ue=I;te=r[i+23>>0]|0;m=s[i+21>>0]|0;ve=xs(s[i+22>>0]|0|0,0,8)|0;X=I;te=te&255;J=xs(te|0,0,16)|0;O=xs(s[i+24>>0]|0|0,0,8)|0;Ae=I;Te=xs(s[i+25>>0]|0|0,0,16)|0;Ae=Ae|I;rt=s[i+26>>0]|0;j=xs(rt|0,0,24)|0;Ae=Cs(O|te|Te|j|0,Ae|I|0,5)|0;j=r[i+28>>0]|0;Te=xs(s[i+27>>0]|0|0,0,8)|0;te=I;j=j&255;O=xs(j|0,0,16)|0;te=Cs(Te|rt|O|0,te|I|0,2)|0;O=xs(s[i+29>>0]|0|0,0,8)|0;rt=I;Te=xs(s[i+30>>0]|0|0,0,16)|0;rt=rt|I;ct=xs(s[i+31>>0]|0|0,0,24)|0;rt=Cs(O|j|Te|ct|0,rt|I|0,7)|0;ct=I;Te=Es(wt|0,Et|0,Le|0,Ue|0)|0;Te=Ss(yn|bn|vn&2031616|0,Oe|0,Te|0,I|0)|0;Oe=I;vn=Es(L|0,0,Le|0,Ue|0)|0;bn=I;yn=Es(wt|0,Et|0,pt|0,0)|0;j=I;O=Es(Je|0,0,Le|0,Ue|0)|0;Me=I;re=Es(L|0,0,pt|0,0)|0;hn=I;we=Es(wt|0,Et|0,ot|0,0)|0;we=Ss(re|0,hn|0,we|0,I|0)|0;Me=Ss(we|0,I|0,O|0,Me|0)|0;Pe=Ss(Me|0,I|0,Pe&2097151|0,0)|0;Me=I;O=Es(y|0,0,Le|0,Ue|0)|0;we=I;hn=Es(Je|0,0,pt|0,0)|0;re=I;_n=Es(L|0,0,ot|0,0)|0;mn=I;gn=Es(wt|0,Et|0,ht|0,0)|0;pn=I;H=Es(u|0,0,Le|0,Ue|0)|0;Ie=I;rn=Es(y|0,0,pt|0,0)|0;Be=I;sn=Es(Je|0,0,ot|0,0)|0;T=I;an=Es(L|0,0,ht|0,0)|0;fn=I;on=Es(wt|0,Et|0,$e|0,0)|0;on=Ss(an|0,fn|0,on|0,I|0)|0;T=Ss(on|0,I|0,sn|0,T|0)|0;Be=Ss(T|0,I|0,rn|0,Be|0)|0;Ie=Ss(Be|0,I|0,H|0,Ie|0)|0;Re=Ss(Ie|0,I|0,Re&2097151|0,0)|0;Ie=I;H=Es(d|0,0,Le|0,Ue|0)|0;Be=I;rn=Es(u|0,0,pt|0,0)|0;T=I;sn=Es(y|0,0,ot|0,0)|0;on=I;fn=Es(Je|0,0,ht|0,0)|0;an=I;dn=Es(L|0,0,$e|0,0)|0;ln=I;un=Es(wt|0,Et|0,z|0,0)|0;cn=I;R=Es(E|0,0,Le|0,Ue|0)|0;He=I;zt=Es(d|0,0,pt|0,0)|0;o=I;Vt=Es(u|0,0,ot|0,0)|0;Gt=I;Wt=Es(y|0,0,ht|0,0)|0;Ht=I;Xt=Es(Je|0,0,$e|0,0)|0;Qt=I;Jt=Es(L|0,0,z|0,0)|0;Zt=I;Yt=Es(wt|0,Et|0,pe|0,0)|0;Yt=Ss(Jt|0,Zt|0,Yt|0,I|0)|0;Qt=Ss(Yt|0,I|0,Xt|0,Qt|0)|0;Ht=Ss(Qt|0,I|0,Wt|0,Ht|0)|0;Gt=Ss(Ht|0,I|0,Vt|0,Gt|0)|0;o=Ss(Gt|0,I|0,zt|0,o|0)|0;He=Ss(o|0,I|0,R|0,He|0)|0;ze=Ss(He|0,I|0,ze&2097151|0,0)|0;He=I;R=Es(wn|0,Z|0,Le|0,Ue|0)|0;o=I;zt=Es(E|0,0,pt|0,0)|0;Gt=I;Vt=Es(d|0,0,ot|0,0)|0;Ht=I;Wt=Es(u|0,0,ht|0,0)|0;Qt=I;Xt=Es(y|0,0,$e|0,0)|0;Yt=I;Zt=Es(Je|0,0,z|0,0)|0;Jt=I;nn=Es(L|0,0,pe|0,0)|0;tn=I;en=Es(wt|0,Et|0,g|0,l|0)|0;$t=I;ee=Es(ke|0,Se|0,Le|0,Ue|0)|0;It=I;Rt=Es(wn|0,Z|0,pt|0,0)|0;Tt=I;Ot=Es(E|0,0,ot|0,0)|0;Ct=I;xt=Es(d|0,0,ht|0,0)|0;Mt=I;Pt=Es(u|0,0,$e|0,0)|0;Dt=I;Bt=Es(y|0,0,z|0,0)|0;Nt=I;jt=Es(Je|0,0,pe|0,0)|0;Ut=I;qt=Es(L|0,0,g|0,l|0)|0;Ft=I;Kt=Es(wt|0,Et|0,C|0,G|0)|0;Kt=Ss(qt|0,Ft|0,Kt|0,I|0)|0;Ut=Ss(Kt|0,I|0,jt|0,Ut|0)|0;Nt=Ss(Ut|0,I|0,Bt|0,Nt|0)|0;Dt=Ss(Nt|0,I|0,Pt|0,Dt|0)|0;Mt=Ss(Dt|0,I|0,xt|0,Mt|0)|0;Ct=Ss(Mt|0,I|0,Ot|0,Ct|0)|0;Tt=Ss(Ct|0,I|0,Rt|0,Tt|0)|0;It=Ss(Tt|0,I|0,ee|0,It|0)|0;X=Ss(It|0,I|0,ve|m|J&2031616|0,X|0)|0;J=I;m=Es(w|0,0,Le|0,Ue|0)|0;ve=I;It=Es(ke|0,Se|0,pt|0,0)|0;ee=I;Tt=Es(wn|0,Z|0,ot|0,0)|0;Rt=I;Ct=Es(E|0,0,ht|0,0)|0;Ot=I;Mt=Es(d|0,0,$e|0,0)|0;xt=I;Dt=Es(u|0,0,z|0,0)|0;Pt=I;Nt=Es(y|0,0,pe|0,0)|0;Bt=I;Ut=Es(Je|0,0,g|0,l|0)|0;jt=I;Kt=Es(L|0,0,C|0,G|0)|0;Ft=I;qt=Es(wt|0,Et|0,B|0,0)|0;Lt=I;et=Es(vt|0,0,Le|0,Ue|0)|0;ne=I;je=Es(w|0,0,pt|0,0)|0;tt=I;mt=Es(ke|0,Se|0,ot|0,0)|0;Ne=I;c=Es(wn|0,Z|0,ht|0,0)|0;_t=I;Ke=Es(E|0,0,$e|0,0)|0;v=I;st=Es(d|0,0,z|0,0)|0;Ge=I;i=Es(u|0,0,pe|0,0)|0;at=I;We=Es(y|0,0,g|0,l|0)|0;t=I;he=Es(Je|0,0,C|0,G|0)|0;Ye=I;St=Es(L|0,0,B|0,0)|0;kt=I;ye=Es(wt|0,Et|0,N|0,0)|0;ye=Ss(St|0,kt|0,ye|0,I|0)|0;Ye=Ss(ye|0,I|0,he|0,Ye|0)|0;t=Ss(Ye|0,I|0,We|0,t|0)|0;at=Ss(t|0,I|0,i|0,at|0)|0;Ge=Ss(at|0,I|0,st|0,Ge|0)|0;v=Ss(Ge|0,I|0,Ke|0,v|0)|0;_t=Ss(v|0,I|0,c|0,_t|0)|0;Ne=Ss(_t|0,I|0,mt|0,Ne|0)|0;tt=Ss(Ne|0,I|0,je|0,tt|0)|0;ne=Ss(tt|0,I|0,et|0,ne|0)|0;te=Ss(ne|0,I|0,te&2097151|0,0)|0;ne=I;Ue=Es(Q|0,V|0,Le|0,Ue|0)|0;Le=I;et=Es(vt|0,0,pt|0,0)|0;tt=I;je=Es(w|0,0,ot|0,0)|0;Ne=I;mt=Es(ke|0,Se|0,ht|0,0)|0;_t=I;c=Es(wn|0,Z|0,$e|0,0)|0;v=I;Ke=Es(E|0,0,z|0,0)|0;Ge=I;st=Es(d|0,0,pe|0,0)|0;at=I;i=Es(u|0,0,g|0,l|0)|0;t=I;We=Es(y|0,0,C|0,G|0)|0;Ye=I;he=Es(Je|0,0,B|0,0)|0;ye=I;kt=Es(L|0,0,N|0,0)|0;St=I;Et=Es(wt|0,Et|0,me|0,_e|0)|0;wt=I;pt=Es(Q|0,V|0,pt|0,0)|0;gt=I;M=Es(vt|0,0,ot|0,0)|0;it=I;ce=Es(w|0,0,ht|0,0)|0;n=I;yt=Es(ke|0,Se|0,$e|0,0)|0;qe=I;S=Es(wn|0,Z|0,z|0,0)|0;bt=I;ie=Es(E|0,0,pe|0,0)|0;q=I;Fe=Es(d|0,0,g|0,l|0)|0;oe=I;W=Es(u|0,0,C|0,G|0)|0;fe=I;U=Es(y|0,0,B|0,0)|0;Y=I;dt=Es(Je|0,0,N|0,0)|0;Xe=I;L=Es(L|0,0,me|0,_e|0)|0;L=Ss(dt|0,Xe|0,L|0,I|0)|0;Y=Ss(L|0,I|0,U|0,Y|0)|0;fe=Ss(Y|0,I|0,W|0,fe|0)|0;oe=Ss(fe|0,I|0,Fe|0,oe|0)|0;q=Ss(oe|0,I|0,ie|0,q|0)|0;bt=Ss(q|0,I|0,S|0,bt|0)|0;qe=Ss(bt|0,I|0,yt|0,qe|0)|0;n=Ss(qe|0,I|0,ce|0,n|0)|0;it=Ss(n|0,I|0,M|0,it|0)|0;gt=Ss(it|0,I|0,pt|0,gt|0)|0;pt=I;ot=Es(Q|0,V|0,ot|0,0)|0;it=I;M=Es(vt|0,0,ht|0,0)|0;n=I;ce=Es(w|0,0,$e|0,0)|0;qe=I;yt=Es(ke|0,Se|0,z|0,0)|0;bt=I;S=Es(wn|0,Z|0,pe|0,0)|0;q=I;ie=Es(E|0,0,g|0,l|0)|0;oe=I;Fe=Es(d|0,0,C|0,G|0)|0;fe=I;W=Es(u|0,0,B|0,0)|0;Y=I;U=Es(y|0,0,N|0,0)|0;L=I;Je=Es(Je|0,0,me|0,_e|0)|0;Xe=I;ht=Es(Q|0,V|0,ht|0,0)|0;dt=I;ut=Es(vt|0,0,$e|0,0)|0;Ze=I;K=Es(w|0,0,z|0,0)|0;lt=I;$=Es(ke|0,Se|0,pe|0,0)|0;F=I;ae=Es(wn|0,Z|0,g|0,l|0)|0;x=I;A=Es(E|0,0,C|0,G|0)|0;se=I;h=Es(d|0,0,B|0,0)|0;f=I;At=Es(u|0,0,N|0,0)|0;a=I;y=Es(y|0,0,me|0,_e|0)|0;y=Ss(At|0,a|0,y|0,I|0)|0;f=Ss(y|0,I|0,h|0,f|0)|0;se=Ss(f|0,I|0,A|0,se|0)|0;x=Ss(se|0,I|0,ae|0,x|0)|0;F=Ss(x|0,I|0,$|0,F|0)|0;lt=Ss(F|0,I|0,K|0,lt|0)|0;Ze=Ss(lt|0,I|0,ut|0,Ze|0)|0;dt=Ss(Ze|0,I|0,ht|0,dt|0)|0;ht=I;$e=Es(Q|0,V|0,$e|0,0)|0;Ze=I;ut=Es(vt|0,0,z|0,0)|0;lt=I;K=Es(w|0,0,pe|0,0)|0;F=I;$=Es(ke|0,Se|0,g|0,l|0)|0;x=I;ae=Es(wn|0,Z|0,C|0,G|0)|0;se=I;A=Es(E|0,0,B|0,0)|0;f=I;h=Es(d|0,0,N|0,0)|0;y=I;u=Es(u|0,0,me|0,_e|0)|0;a=I;z=Es(Q|0,V|0,z|0,0)|0;At=I;b=Es(vt|0,0,pe|0,0)|0;ge=I;P=Es(w|0,0,g|0,l|0)|0;p=I;Qe=Es(ke|0,Se|0,C|0,G|0)|0;D=I;_=Es(wn|0,Z|0,B|0,0)|0;Ve=I;xe=Es(E|0,0,N|0,0)|0;k=I;d=Es(d|0,0,me|0,_e|0)|0;d=Ss(xe|0,k|0,d|0,I|0)|0;Ve=Ss(d|0,I|0,_|0,Ve|0)|0;D=Ss(Ve|0,I|0,Qe|0,D|0)|0;p=Ss(D|0,I|0,P|0,p|0)|0;ge=Ss(p|0,I|0,b|0,ge|0)|0;At=Ss(ge|0,I|0,z|0,At|0)|0;z=I;pe=Es(Q|0,V|0,pe|0,0)|0;ge=I;b=Es(vt|0,0,g|0,l|0)|0;p=I;P=Es(w|0,0,C|0,G|0)|0;D=I;Qe=Es(ke|0,Se|0,B|0,0)|0;Ve=I;_=Es(wn|0,Z|0,N|0,0)|0;d=I;E=Es(E|0,0,me|0,_e|0)|0;k=I;l=Es(Q|0,V|0,g|0,l|0)|0;g=I;xe=Es(vt|0,0,C|0,G|0)|0;Ce=I;ft=Es(w|0,0,B|0,0)|0;nt=I;de=Es(ke|0,Se|0,N|0,0)|0;An=I;Z=Es(wn|0,Z|0,me|0,_e|0)|0;Z=Ss(de|0,An|0,Z|0,I|0)|0;nt=Ss(Z|0,I|0,ft|0,nt|0)|0;Ce=Ss(nt|0,I|0,xe|0,Ce|0)|0;g=Ss(Ce|0,I|0,l|0,g|0)|0;l=I;G=Es(Q|0,V|0,C|0,G|0)|0;C=I;Ce=Es(vt|0,0,B|0,0)|0;xe=I;nt=Es(w|0,0,N|0,0)|0;ft=I;Se=Es(ke|0,Se|0,me|0,_e|0)|0;ke=I;B=Es(Q|0,V|0,B|0,0)|0;Z=I;An=Es(vt|0,0,N|0,0)|0;de=I;w=Es(w|0,0,me|0,_e|0)|0;w=Ss(An|0,de|0,w|0,I|0)|0;Z=Ss(w|0,I|0,B|0,Z|0)|0;B=I;N=Es(Q|0,V|0,N|0,0)|0;w=I;vt=Es(vt|0,0,me|0,_e|0)|0;vt=Ss(N|0,w|0,vt|0,I|0)|0;w=I;_e=Es(Q|0,V|0,me|0,_e|0)|0;me=I;V=Ss(Te|0,Oe|0,1048576,0)|0;Q=I;N=Cs(V|0,Q|0,21)|0;de=I;j=Ss(vn|0,bn|0,yn|0,j|0)|0;de=Ss(j|0,I|0,N|0,de|0)|0;be=Ss(de|0,I|0,be&2097151|0,0)|0;de=I;Q=ks(Te|0,Oe|0,V&-2097152|0,Q&4095|0)|0;V=I;Oe=Ss(Pe|0,Me|0,1048576,0)|0;Te=I;N=Cs(Oe|0,Te|0,21)|0;j=I;pn=Ss(_n|0,mn|0,gn|0,pn|0)|0;re=Ss(pn|0,I|0,hn|0,re|0)|0;we=Ss(re|0,I|0,O|0,we|0)|0;Ee=Ss(we|0,I|0,Ee&2097151|0,0)|0;j=Ss(Ee|0,I|0,N|0,j|0)|0;N=I;Ee=Ss(Re|0,Ie|0,1048576,0)|0;we=I;O=Os(Ee|0,we|0,21)|0;re=I;cn=Ss(dn|0,ln|0,un|0,cn|0)|0;an=Ss(cn|0,I|0,fn|0,an|0)|0;on=Ss(an|0,I|0,sn|0,on|0)|0;T=Ss(on|0,I|0,rn|0,T|0)|0;Be=Ss(T|0,I|0,H|0,Be|0)|0;De=Ss(Be|0,I|0,De&2097151|0,0)|0;re=Ss(De|0,I|0,O|0,re|0)|0;O=I;De=Ss(ze|0,He|0,1048576,0)|0;Be=I;H=Os(De|0,Be|0,21)|0;T=I;$t=Ss(nn|0,tn|0,en|0,$t|0)|0;Jt=Ss($t|0,I|0,Zt|0,Jt|0)|0;Yt=Ss(Jt|0,I|0,Xt|0,Yt|0)|0;Qt=Ss(Yt|0,I|0,Wt|0,Qt|0)|0;Ht=Ss(Qt|0,I|0,Vt|0,Ht|0)|0;Gt=Ss(Ht|0,I|0,zt|0,Gt|0)|0;o=Ss(Gt|0,I|0,R|0,o|0)|0;ue=Ss(o|0,I|0,le|0,ue|0)|0;T=Ss(ue|0,I|0,H|0,T|0)|0;H=I;ue=Ss(X|0,J|0,1048576,0)|0;le=I;o=Os(ue|0,le|0,21)|0;R=I;Lt=Ss(Kt|0,Ft|0,qt|0,Lt|0)|0;jt=Ss(Lt|0,I|0,Ut|0,jt|0)|0;Bt=Ss(jt|0,I|0,Nt|0,Bt|0)|0;Pt=Ss(Bt|0,I|0,Dt|0,Pt|0)|0;xt=Ss(Pt|0,I|0,Mt|0,xt|0)|0;Ot=Ss(xt|0,I|0,Ct|0,Ot|0)|0;Rt=Ss(Ot|0,I|0,Tt|0,Rt|0)|0;ee=Ss(Rt|0,I|0,It|0,ee|0)|0;ve=Ss(ee|0,I|0,m|0,ve|0)|0;Ae=Ss(ve|0,I|0,Ae&2097151|0,0)|0;R=Ss(Ae|0,I|0,o|0,R|0)|0;o=I;Ae=Ss(te|0,ne|0,1048576,0)|0;ve=I;m=Os(Ae|0,ve|0,21)|0;ee=I;wt=Ss(kt|0,St|0,Et|0,wt|0)|0;ye=Ss(wt|0,I|0,he|0,ye|0)|0;Ye=Ss(ye|0,I|0,We|0,Ye|0)|0;t=Ss(Ye|0,I|0,i|0,t|0)|0;at=Ss(t|0,I|0,st|0,at|0)|0;Ge=Ss(at|0,I|0,Ke|0,Ge|0)|0;v=Ss(Ge|0,I|0,c|0,v|0)|0;_t=Ss(v|0,I|0,mt|0,_t|0)|0;Ne=Ss(_t|0,I|0,je|0,Ne|0)|0;tt=Ss(Ne|0,I|0,et|0,tt|0)|0;Le=Ss(tt|0,I|0,Ue|0,Le|0)|0;ct=Ss(Le|0,I|0,rt|0,ct|0)|0;ee=Ss(ct|0,I|0,m|0,ee|0)|0;m=I;ct=Ss(gt|0,pt|0,1048576,0)|0;rt=I;Le=Os(ct|0,rt|0,21)|0;Ue=I;Xe=Ss(U|0,L|0,Je|0,Xe|0)|0;Y=Ss(Xe|0,I|0,W|0,Y|0)|0;fe=Ss(Y|0,I|0,Fe|0,fe|0)|0;oe=Ss(fe|0,I|0,ie|0,oe|0)|0;q=Ss(oe|0,I|0,S|0,q|0)|0;bt=Ss(q|0,I|0,yt|0,bt|0)|0;qe=Ss(bt|0,I|0,ce|0,qe|0)|0;n=Ss(qe|0,I|0,M|0,n|0)|0;it=Ss(n|0,I|0,ot|0,it|0)|0;Ue=Ss(it|0,I|0,Le|0,Ue|0)|0;Le=I;it=Ss(dt|0,ht|0,1048576,0)|0;ot=I;n=Os(it|0,ot|0,21)|0;M=I;a=Ss(h|0,y|0,u|0,a|0)|0;f=Ss(a|0,I|0,A|0,f|0)|0;se=Ss(f|0,I|0,ae|0,se|0)|0;x=Ss(se|0,I|0,$|0,x|0)|0;F=Ss(x|0,I|0,K|0,F|0)|0;lt=Ss(F|0,I|0,ut|0,lt|0)|0;Ze=Ss(lt|0,I|0,$e|0,Ze|0)|0;M=Ss(Ze|0,I|0,n|0,M|0)|0;n=I;Ze=Ss(At|0,z|0,1048576,0)|0;$e=I;lt=Os(Ze|0,$e|0,21)|0;ut=I;k=Ss(_|0,d|0,E|0,k|0)|0;Ve=Ss(k|0,I|0,Qe|0,Ve|0)|0;D=Ss(Ve|0,I|0,P|0,D|0)|0;p=Ss(D|0,I|0,b|0,p|0)|0;ge=Ss(p|0,I|0,pe|0,ge|0)|0;ut=Ss(ge|0,I|0,lt|0,ut|0)|0;lt=I;ge=Ss(g|0,l|0,1048576,0)|0;pe=I;p=Os(ge|0,pe|0,21)|0;b=I;ke=Ss(nt|0,ft|0,Se|0,ke|0)|0;xe=Ss(ke|0,I|0,Ce|0,xe|0)|0;C=Ss(xe|0,I|0,G|0,C|0)|0;b=Ss(C|0,I|0,p|0,b|0)|0;p=I;pe=ks(g|0,l|0,ge&-2097152|0,pe|0)|0;ge=I;l=Ss(Z|0,B|0,1048576,0)|0;g=I;C=Cs(l|0,g|0,21)|0;C=Ss(vt|0,w|0,C|0,I|0)|0;w=I;g=ks(Z|0,B|0,l&-2097152|0,g&2147483647|0)|0;l=I;B=Ss(_e|0,me|0,1048576,0)|0;Z=I;vt=Cs(B|0,Z|0,21)|0;G=I;Z=ks(_e|0,me|0,B&-2097152|0,Z&2147483647|0)|0;B=I;me=Ss(be|0,de|0,1048576,0)|0;_e=I;xe=Cs(me|0,_e|0,21)|0;Ce=I;_e=ks(be|0,de|0,me&-2097152|0,_e|0)|0;me=I;de=Ss(j|0,N|0,1048576,0)|0;be=I;ke=Os(de|0,be|0,21)|0;Se=I;be=ks(j|0,N|0,de&-2097152|0,be|0)|0;de=I;N=Ss(re|0,O|0,1048576,0)|0;j=I;ft=Os(N|0,j|0,21)|0;nt=I;D=Ss(T|0,H|0,1048576,0)|0;P=I;Ve=Os(D|0,P|0,21)|0;Qe=I;k=Ss(R|0,o|0,1048576,0)|0;E=I;d=Os(k|0,E|0,21)|0;_=I;F=Ss(ee|0,m|0,1048576,0)|0;K=I;x=Os(F|0,K|0,21)|0;$=I;se=Ss(Ue|0,Le|0,1048576,0)|0;ae=I;f=Os(se|0,ae|0,21)|0;A=I;a=Ss(M|0,n|0,1048576,0)|0;u=I;y=Os(a|0,u|0,21)|0;h=I;qe=Ss(ut|0,lt|0,1048576,0)|0;ce=I;bt=Os(qe|0,ce|0,21)|0;ge=Ss(bt|0,I|0,pe|0,ge|0)|0;pe=I;ce=ks(ut|0,lt|0,qe&-2097152|0,ce|0)|0;qe=I;lt=Ss(b|0,p|0,1048576,0)|0;ut=I;bt=Os(lt|0,ut|0,21)|0;l=Ss(bt|0,I|0,g|0,l|0)|0;g=I;ut=ks(b|0,p|0,lt&-2097152|0,ut|0)|0;lt=I;p=Ss(C|0,w|0,1048576,0)|0;b=I;bt=Cs(p|0,b|0,21)|0;B=Ss(bt|0,I|0,Z|0,B|0)|0;Z=I;b=ks(C|0,w|0,p&-2097152|0,b&2147483647|0)|0;p=I;w=Es(vt|0,G|0,666643,0)|0;C=I;bt=Es(vt|0,G|0,470296,0)|0;yt=I;q=Es(vt|0,G|0,654183,0)|0;S=I;oe=Es(vt|0,G|0,-997805,-1)|0;ie=I;fe=Es(vt|0,G|0,136657,0)|0;Fe=I;G=Es(vt|0,G|0,-683901,-1)|0;G=Ss(At|0,z|0,G|0,I|0)|0;$e=ks(G|0,I|0,Ze&-2097152|0,$e|0)|0;h=Ss($e|0,I|0,y|0,h|0)|0;y=I;$e=Es(B|0,Z|0,666643,0)|0;Ze=I;G=Es(B|0,Z|0,470296,0)|0;z=I;At=Es(B|0,Z|0,654183,0)|0;vt=I;Y=Es(B|0,Z|0,-997805,-1)|0;W=I;Xe=Es(B|0,Z|0,136657,0)|0;Je=I;Z=Es(B|0,Z|0,-683901,-1)|0;B=I;L=Es(b|0,p|0,666643,0)|0;U=I;tt=Es(b|0,p|0,470296,0)|0;et=I;Ne=Es(b|0,p|0,654183,0)|0;je=I;_t=Es(b|0,p|0,-997805,-1)|0;mt=I;v=Es(b|0,p|0,136657,0)|0;c=I;p=Es(b|0,p|0,-683901,-1)|0;b=I;ie=Ss(dt|0,ht|0,oe|0,ie|0)|0;Je=Ss(ie|0,I|0,Xe|0,Je|0)|0;b=Ss(Je|0,I|0,p|0,b|0)|0;ot=ks(b|0,I|0,it&-2097152|0,ot|0)|0;A=Ss(ot|0,I|0,f|0,A|0)|0;f=I;ot=Es(l|0,g|0,666643,0)|0;it=I;b=Es(l|0,g|0,470296,0)|0;p=I;Je=Es(l|0,g|0,654183,0)|0;Xe=I;ie=Es(l|0,g|0,-997805,-1)|0;oe=I;ht=Es(l|0,g|0,136657,0)|0;dt=I;g=Es(l|0,g|0,-683901,-1)|0;l=I;Ge=Es(ut|0,lt|0,666643,0)|0;Ke=I;at=Es(ut|0,lt|0,470296,0)|0;st=I;t=Es(ut|0,lt|0,654183,0)|0;i=I;Ye=Es(ut|0,lt|0,-997805,-1)|0;We=I;ye=Es(ut|0,lt|0,136657,0)|0;he=I;lt=Es(ut|0,lt|0,-683901,-1)|0;ut=I;yt=Ss(At|0,vt|0,bt|0,yt|0)|0;mt=Ss(yt|0,I|0,_t|0,mt|0)|0;pt=Ss(mt|0,I|0,gt|0,pt|0)|0;dt=Ss(pt|0,I|0,ht|0,dt|0)|0;ut=Ss(dt|0,I|0,lt|0,ut|0)|0;rt=ks(ut|0,I|0,ct&-2097152|0,rt|0)|0;$=Ss(rt|0,I|0,x|0,$|0)|0;x=I;rt=Es(ge|0,pe|0,666643,0)|0;rt=Ss(ft|0,nt|0,rt|0,I|0)|0;He=Ss(rt|0,I|0,ze|0,He|0)|0;Be=ks(He|0,I|0,De&-2097152|0,Be|0)|0;De=I;He=Es(ge|0,pe|0,470296,0)|0;ze=I;rt=Es(ge|0,pe|0,654183,0)|0;nt=I;it=Ss(at|0,st|0,ot|0,it|0)|0;nt=Ss(it|0,I|0,rt|0,nt|0)|0;Qe=Ss(nt|0,I|0,Ve|0,Qe|0)|0;J=Ss(Qe|0,I|0,X|0,J|0)|0;le=ks(J|0,I|0,ue&-2097152|0,le|0)|0;ue=I;J=Es(ge|0,pe|0,-997805,-1)|0;X=I;Qe=Es(ge|0,pe|0,136657,0)|0;Ve=I;Ze=Ss(tt|0,et|0,$e|0,Ze|0)|0;Xe=Ss(Ze|0,I|0,Je|0,Xe|0)|0;We=Ss(Xe|0,I|0,Ye|0,We|0)|0;Ve=Ss(We|0,I|0,Qe|0,Ve|0)|0;_=Ss(Ve|0,I|0,d|0,_|0)|0;ne=Ss(_|0,I|0,te|0,ne|0)|0;ve=ks(ne|0,I|0,Ae&-2097152|0,ve|0)|0;Ae=I;pe=Es(ge|0,pe|0,-683901,-1)|0;ge=I;ne=Ss(Be|0,De|0,1048576,0)|0;te=I;_=Os(ne|0,te|0,21)|0;d=I;Ke=Ss(He|0,ze|0,Ge|0,Ke|0)|0;H=Ss(Ke|0,I|0,T|0,H|0)|0;P=ks(H|0,I|0,D&-2097152|0,P|0)|0;d=Ss(P|0,I|0,_|0,d|0)|0;_=I;P=Ss(le|0,ue|0,1048576,0)|0;D=I;H=Os(P|0,D|0,21)|0;T=I;U=Ss(b|0,p|0,L|0,U|0)|0;i=Ss(U|0,I|0,t|0,i|0)|0;X=Ss(i|0,I|0,J|0,X|0)|0;o=Ss(X|0,I|0,R|0,o|0)|0;E=ks(o|0,I|0,k&-2097152|0,E|0)|0;T=Ss(E|0,I|0,H|0,T|0)|0;H=I;E=Ss(ve|0,Ae|0,1048576,0)|0;k=I;o=Os(E|0,k|0,21)|0;R=I;C=Ss(G|0,z|0,w|0,C|0)|0;je=Ss(C|0,I|0,Ne|0,je|0)|0;oe=Ss(je|0,I|0,ie|0,oe|0)|0;he=Ss(oe|0,I|0,ye|0,he|0)|0;ge=Ss(he|0,I|0,pe|0,ge|0)|0;m=Ss(ge|0,I|0,ee|0,m|0)|0;K=ks(m|0,I|0,F&-2097152|0,K|0)|0;R=Ss(K|0,I|0,o|0,R|0)|0;o=I;K=Ss($|0,x|0,1048576,0)|0;F=I;m=Os(K|0,F|0,21)|0;ee=I;S=Ss(Y|0,W|0,q|0,S|0)|0;c=Ss(S|0,I|0,v|0,c|0)|0;l=Ss(c|0,I|0,g|0,l|0)|0;Le=Ss(l|0,I|0,Ue|0,Le|0)|0;ae=ks(Le|0,I|0,se&-2097152|0,ae|0)|0;ee=Ss(ae|0,I|0,m|0,ee|0)|0;m=I;F=ks($|0,x|0,K&-2097152|0,F|0)|0;K=I;x=Ss(A|0,f|0,1048576,0)|0;$=I;ae=Os(x|0,$|0,21)|0;se=I;Fe=Ss(Z|0,B|0,fe|0,Fe|0)|0;n=Ss(Fe|0,I|0,M|0,n|0)|0;u=ks(n|0,I|0,a&-2097152|0,u|0)|0;se=Ss(u|0,I|0,ae|0,se|0)|0;ae=I;$=ks(A|0,f|0,x&-2097152|0,$|0)|0;x=I;f=Ss(h|0,y|0,1048576,0)|0;A=I;u=Os(f|0,A|0,21)|0;qe=Ss(u|0,I|0,ce|0,qe|0)|0;ce=I;A=ks(h|0,y|0,f&-2097152|0,A|0)|0;f=I;y=Ss(d|0,_|0,1048576,0)|0;h=I;u=Os(y|0,h|0,21)|0;a=I;n=Ss(T|0,H|0,1048576,0)|0;M=I;Fe=Os(n|0,M|0,21)|0;fe=I;B=Ss(R|0,o|0,1048576,0)|0;Z=I;Le=Os(B|0,Z|0,21)|0;K=Ss(Le|0,I|0,F|0,K|0)|0;F=I;Z=ks(R|0,o|0,B&-2097152|0,Z|0)|0;B=I;o=Ss(ee|0,m|0,1048576,0)|0;R=I;Le=Os(o|0,R|0,21)|0;x=Ss(Le|0,I|0,$|0,x|0)|0;$=I;R=ks(ee|0,m|0,o&-2097152|0,R|0)|0;o=I;m=Ss(se|0,ae|0,1048576,0)|0;ee=I;Le=Os(m|0,ee|0,21)|0;f=Ss(Le|0,I|0,A|0,f|0)|0;A=I;ee=ks(se|0,ae|0,m&-2097152|0,ee|0)|0;m=I;ae=Es(qe|0,ce|0,666643,0)|0;se=I;Le=Es(qe|0,ce|0,470296,0)|0;Ue=I;l=Es(qe|0,ce|0,654183,0)|0;g=I;c=Es(qe|0,ce|0,-997805,-1)|0;v=I;S=Es(qe|0,ce|0,136657,0)|0;q=I;ce=Es(qe|0,ce|0,-683901,-1)|0;ce=Ss(Fe|0,fe|0,ce|0,I|0)|0;Ae=Ss(ce|0,I|0,ve|0,Ae|0)|0;k=ks(Ae|0,I|0,E&-2097152|0,k|0)|0;E=I;Ae=Es(f|0,A|0,666643,0)|0;ve=I;ce=Es(f|0,A|0,470296,0)|0;fe=I;Fe=Es(f|0,A|0,654183,0)|0;qe=I;W=Es(f|0,A|0,-997805,-1)|0;Y=I;ge=Es(f|0,A|0,136657,0)|0;pe=I;A=Es(f|0,A|0,-683901,-1)|0;f=I;he=Es(ee|0,m|0,666643,0)|0;he=Ss(be|0,de|0,he|0,I|0)|0;de=I;be=Es(ee|0,m|0,470296,0)|0;ye=I;oe=Es(ee|0,m|0,654183,0)|0;ie=I;je=Es(ee|0,m|0,-997805,-1)|0;Ne=I;C=Es(ee|0,m|0,136657,0)|0;w=I;m=Es(ee|0,m|0,-683901,-1)|0;ee=I;v=Ss(ge|0,pe|0,c|0,v|0)|0;ee=Ss(v|0,I|0,m|0,ee|0)|0;a=Ss(ee|0,I|0,u|0,a|0)|0;ue=Ss(a|0,I|0,le|0,ue|0)|0;D=ks(ue|0,I|0,P&-2097152|0,D|0)|0;P=I;ue=Es(x|0,$|0,666643,0)|0;le=I;a=Es(x|0,$|0,470296,0)|0;u=I;ee=Es(x|0,$|0,654183,0)|0;m=I;v=Es(x|0,$|0,-997805,-1)|0;c=I;pe=Es(x|0,$|0,136657,0)|0;ge=I;$=Es(x|0,$|0,-683901,-1)|0;x=I;z=Es(R|0,o|0,666643,0)|0;G=I;X=Es(R|0,o|0,470296,0)|0;J=I;i=Es(R|0,o|0,654183,0)|0;t=I;U=Es(R|0,o|0,-997805,-1)|0;L=I;p=Es(R|0,o|0,136657,0)|0;b=I;o=Es(R|0,o|0,-683901,-1)|0;R=I;Ue=Ss(Fe|0,qe|0,Le|0,Ue|0)|0;Ne=Ss(Ue|0,I|0,je|0,Ne|0)|0;De=Ss(Ne|0,I|0,Be|0,De|0)|0;te=ks(De|0,I|0,ne&-2097152|0,te|0)|0;ge=Ss(te|0,I|0,pe|0,ge|0)|0;R=Ss(ge|0,I|0,o|0,R|0)|0;o=I;ge=Es(K|0,F|0,666643,0)|0;V=Ss(ge|0,I|0,Q|0,V|0)|0;Q=I;ge=Es(K|0,F|0,470296,0)|0;pe=I;te=Es(K|0,F|0,654183,0)|0;ne=I;Ce=Ss(Pe|0,Me|0,xe|0,Ce|0)|0;Te=ks(Ce|0,I|0,Oe&-2097152|0,Te|0)|0;ne=Ss(Te|0,I|0,te|0,ne|0)|0;le=Ss(ne|0,I|0,ue|0,le|0)|0;J=Ss(le|0,I|0,X|0,J|0)|0;X=I;le=Es(K|0,F|0,-997805,-1)|0;ue=I;ne=Es(K|0,F|0,136657,0)|0;te=I;Se=Ss(Re|0,Ie|0,ke|0,Se|0)|0;we=ks(Se|0,I|0,Ee&-2097152|0,we|0)|0;ve=Ss(we|0,I|0,Ae|0,ve|0)|0;ye=Ss(ve|0,I|0,be|0,ye|0)|0;te=Ss(ye|0,I|0,ne|0,te|0)|0;m=Ss(te|0,I|0,ee|0,m|0)|0;L=Ss(m|0,I|0,U|0,L|0)|0;U=I;F=Es(K|0,F|0,-683901,-1)|0;K=I;m=Ss(V|0,Q|0,1048576,0)|0;ee=I;te=Os(m|0,ee|0,21)|0;ne=I;pe=Ss(_e|0,me|0,ge|0,pe|0)|0;G=Ss(pe|0,I|0,z|0,G|0)|0;ne=Ss(G|0,I|0,te|0,ne|0)|0;te=I;ee=ks(V|0,Q|0,m&-2097152|0,ee|0)|0;m=I;Q=Ss(J|0,X|0,1048576,0)|0;V=I;G=Os(Q|0,V|0,21)|0;z=I;ue=Ss(he|0,de|0,le|0,ue|0)|0;u=Ss(ue|0,I|0,a|0,u|0)|0;t=Ss(u|0,I|0,i|0,t|0)|0;z=Ss(t|0,I|0,G|0,z|0)|0;G=I;t=Ss(L|0,U|0,1048576,0)|0;i=I;u=Os(t|0,i|0,21)|0;a=I;se=Ss(ce|0,fe|0,ae|0,se|0)|0;ie=Ss(se|0,I|0,oe|0,ie|0)|0;O=Ss(ie|0,I|0,re|0,O|0)|0;j=ks(O|0,I|0,N&-2097152|0,j|0)|0;K=Ss(j|0,I|0,F|0,K|0)|0;c=Ss(K|0,I|0,v|0,c|0)|0;b=Ss(c|0,I|0,p|0,b|0)|0;a=Ss(b|0,I|0,u|0,a|0)|0;u=I;b=Ss(R|0,o|0,1048576,0)|0;p=I;c=Os(b|0,p|0,21)|0;v=I;g=Ss(W|0,Y|0,l|0,g|0)|0;w=Ss(g|0,I|0,C|0,w|0)|0;_=Ss(w|0,I|0,d|0,_|0)|0;h=ks(_|0,I|0,y&-2097152|0,h|0)|0;x=Ss(h|0,I|0,$|0,x|0)|0;v=Ss(x|0,I|0,c|0,v|0)|0;c=I;p=ks(R|0,o|0,b&-2097152|0,p|0)|0;b=I;o=Ss(D|0,P|0,1048576,0)|0;R=I;x=Os(o|0,R|0,21)|0;$=I;q=Ss(A|0,f|0,S|0,q|0)|0;H=Ss(q|0,I|0,T|0,H|0)|0;$=Ss(H|0,I|0,x|0,$|0)|0;M=ks($|0,I|0,n&-2097152|0,M|0)|0;n=I;R=ks(D|0,P|0,o&-2097152|0,R|0)|0;o=I;P=Ss(k|0,E|0,1048576,0)|0;D=I;$=Os(P|0,D|0,21)|0;$=Ss(Z|0,B|0,$|0,I|0)|0;B=I;Z=Ss(ne|0,te|0,1048576,0)|0;x=I;H=Os(Z|0,x|0,21)|0;T=I;q=Ss(z|0,G|0,1048576,0)|0;S=I;f=Os(q|0,S|0,21)|0;A=I;h=Ss(a|0,u|0,1048576,0)|0;y=I;_=Os(h|0,y|0,21)|0;_=Ss(p|0,b|0,_|0,I|0)|0;b=I;p=Ss(v|0,c|0,1048576,0)|0;d=I;w=Os(p|0,d|0,21)|0;w=Ss(R|0,o|0,w|0,I|0)|0;o=I;d=ks(v|0,c|0,p&-2097152|0,d|0)|0;p=I;c=Ss(M|0,n|0,1048576,0)|0;v=I;R=Os(c|0,v|0,21)|0;C=I;v=ks(M|0,n|0,c&-2097152|0,v|0)|0;c=I;n=Ss($|0,B|0,1048576,0)|0;M=I;g=Os(n|0,M|0,21)|0;l=I;M=ks($|0,B|0,n&-2097152|0,M|0)|0;n=I;B=Es(g|0,l|0,666643,0)|0;B=Ss(ee|0,m|0,B|0,I|0)|0;m=I;ee=Es(g|0,l|0,470296,0)|0;$=I;Y=Es(g|0,l|0,654183,0)|0;W=I;K=Es(g|0,l|0,-997805,-1)|0;F=I;j=Es(g|0,l|0,136657,0)|0;N=I;l=Es(g|0,l|0,-683901,-1)|0;g=I;m=Os(B|0,m|0,21)|0;O=I;$=Ss(ne|0,te|0,ee|0,$|0)|0;x=ks($|0,I|0,Z&-2097152|0,x|0)|0;O=Ss(x|0,I|0,m|0,O|0)|0;m=Os(O|0,I|0,21)|0;x=I;W=Ss(J|0,X|0,Y|0,W|0)|0;V=ks(W|0,I|0,Q&-2097152|0,V|0)|0;T=Ss(V|0,I|0,H|0,T|0)|0;x=Ss(T|0,I|0,m|0,x|0)|0;m=Os(x|0,I|0,21)|0;T=I;F=Ss(z|0,G|0,K|0,F|0)|0;S=ks(F|0,I|0,q&-2097152|0,S|0)|0;T=Ss(S|0,I|0,m|0,T|0)|0;m=Os(T|0,I|0,21)|0;S=I;N=Ss(L|0,U|0,j|0,N|0)|0;i=ks(N|0,I|0,t&-2097152|0,i|0)|0;A=Ss(i|0,I|0,f|0,A|0)|0;S=Ss(A|0,I|0,m|0,S|0)|0;m=Os(S|0,I|0,21)|0;A=I;g=Ss(a|0,u|0,l|0,g|0)|0;y=ks(g|0,I|0,h&-2097152|0,y|0)|0;A=Ss(y|0,I|0,m|0,A|0)|0;m=Os(A|0,I|0,21)|0;m=Ss(_|0,b|0,m|0,I|0)|0;b=Os(m|0,I|0,21)|0;p=Ss(b|0,I|0,d|0,p|0)|0;d=Os(p|0,I|0,21)|0;d=Ss(w|0,o|0,d|0,I|0)|0;o=Os(d|0,I|0,21)|0;c=Ss(o|0,I|0,v|0,c|0)|0;v=Os(c|0,I|0,21)|0;o=I;C=Ss(k|0,E|0,R|0,C|0)|0;D=ks(C|0,I|0,P&-2097152|0,D|0)|0;o=Ss(D|0,I|0,v|0,o|0)|0;v=Os(o|0,I|0,21)|0;n=Ss(v|0,I|0,M|0,n|0)|0;M=Os(n|0,I|0,21)|0;v=I;D=Es(M|0,v|0,666643,0)|0;B=Ss(D|0,I|0,B&2097151|0,0)|0;D=I;P=Es(M|0,v|0,470296,0)|0;O=Ss(P|0,I|0,O&2097151|0,0)|0;P=I;C=Es(M|0,v|0,654183,0)|0;x=Ss(C|0,I|0,x&2097151|0,0)|0;C=I;R=Es(M|0,v|0,-997805,-1)|0;T=Ss(R|0,I|0,T&2097151|0,0)|0;R=I;E=Es(M|0,v|0,136657,0)|0;S=Ss(E|0,I|0,S&2097151|0,0)|0;E=I;v=Es(M|0,v|0,-683901,-1)|0;A=Ss(v|0,I|0,A&2097151|0,0)|0;v=I;M=Os(B|0,D|0,21)|0;M=Ss(O|0,P|0,M|0,I|0)|0;P=I;O=Os(M|0,P|0,21)|0;O=Ss(x|0,C|0,O|0,I|0)|0;C=I;x=M&2097151;k=Os(O|0,C|0,21)|0;k=Ss(T|0,R|0,k|0,I|0)|0;R=I;T=O&2097151;w=Os(k|0,R|0,21)|0;w=Ss(S|0,E|0,w|0,I|0)|0;E=I;S=k&2097151;b=Os(w|0,E|0,21)|0;b=Ss(A|0,v|0,b|0,I|0)|0;v=I;A=w&2097151;_=Os(b|0,v|0,21)|0;m=Ss(_|0,I|0,m&2097151|0,0)|0;_=I;y=b&2097151;h=Os(m|0,_|0,21)|0;p=Ss(h|0,I|0,p&2097151|0,0)|0;h=I;g=m&2097151;l=Os(p|0,h|0,21)|0;d=Ss(l|0,I|0,d&2097151|0,0)|0;l=I;u=Os(d|0,l|0,21)|0;c=Ss(u|0,I|0,c&2097151|0,0)|0;u=I;a=Os(c|0,u|0,21)|0;o=Ss(a|0,I|0,o&2097151|0,0)|0;a=I;f=c&2097151;i=Os(o|0,a|0,21)|0;n=Ss(i|0,I|0,n&2097151|0,0)|0;i=I;t=o&2097151;r[e>>0]=B;N=Cs(B|0,D|0,8)|0;r[e+1>>0]=N;D=Cs(B|0,D|0,16)|0;B=xs(x|0,0,5)|0;r[e+2>>0]=B|D&31;D=Cs(M|0,P|0,3)|0;r[e+3>>0]=D;P=Cs(M|0,P|0,11)|0;r[e+4>>0]=P;x=Cs(x|0,0,19)|0;P=I;M=xs(T|0,0,2)|0;r[e+5>>0]=M|x;C=Cs(O|0,C|0,6)|0;r[e+6>>0]=C;T=Cs(T|0,0,14)|0;C=I;O=xs(S|0,0,7)|0;r[e+7>>0]=O|T;T=Cs(k|0,R|0,1)|0;r[e+8>>0]=T;R=Cs(k|0,R|0,9)|0;r[e+9>>0]=R;S=Cs(S|0,0,17)|0;R=I;k=xs(A|0,0,4)|0;r[e+10>>0]=k|S;S=Cs(w|0,E|0,4)|0;r[e+11>>0]=S;E=Cs(w|0,E|0,12)|0;r[e+12>>0]=E;A=Cs(A|0,0,20)|0;E=I;w=xs(y|0,0,1)|0;r[e+13>>0]=w|A;v=Cs(b|0,v|0,7)|0;r[e+14>>0]=v;y=Cs(y|0,0,15)|0;v=I;b=xs(g|0,0,6)|0;r[e+15>>0]=b|y;y=Cs(m|0,_|0,2)|0;r[e+16>>0]=y;_=Cs(m|0,_|0,10)|0;r[e+17>>0]=_;g=Cs(g|0,0,18)|0;_=I;m=xs(p|0,h|0,3)|0;r[e+18>>0]=m|g;g=Cs(p|0,h|0,5)|0;r[e+19>>0]=g;h=Cs(p|0,h|0,13)|0;r[e+20>>0]=h;r[e+21>>0]=d;h=Cs(d|0,l|0,8)|0;r[e+22>>0]=h;l=Cs(d|0,l|0,16)|0;d=xs(f|0,0,5)|0;r[e+23>>0]=d|l&31;l=Cs(c|0,u|0,3)|0;r[e+24>>0]=l;u=Cs(c|0,u|0,11)|0;r[e+25>>0]=u;f=Cs(f|0,0,19)|0;u=I;c=xs(t|0,0,2)|0;r[e+26>>0]=c|f;a=Cs(o|0,a|0,6)|0;r[e+27>>0]=a;t=Cs(t|0,0,14)|0;a=I;o=xs(n|0,i|0,7)|0;r[e+28>>0]=o|t;t=Cs(n|0,i|0,1)|0;r[e+29>>0]=t;t=Cs(n|0,i|0,9)|0;r[e+30>>0]=t;i=Os(n|0,i|0,17)|0;r[e+31>>0]=i;return}function ni(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;u=t+44|0;h=t+48|0;m=t+52|0;b=t+56|0;w=t+60|0;k=t+64|0;T=t+68|0;x=t+72|0;O=t+76|0;z=t+4|0;K=t+8|0;i=t+12|0;d=t+16|0;p=t+20|0;A=t+24|0;E=t+28|0;C=t+32|0;F=t+36|0;se=(o[z>>2]|0)+(o[u>>2]|0)|0;oe=(o[K>>2]|0)+(o[h>>2]|0)|0;ie=(o[i>>2]|0)+(o[m>>2]|0)|0;re=(o[d>>2]|0)+(o[b>>2]|0)|0;ne=(o[p>>2]|0)+(o[w>>2]|0)|0;te=(o[A>>2]|0)+(o[k>>2]|0)|0;ee=(o[E>>2]|0)+(o[T>>2]|0)|0;$=(o[C>>2]|0)+(o[x>>2]|0)|0;X=(o[F>>2]|0)+(o[O>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;z=(o[u>>2]|0)-(o[z>>2]|0)|0;K=(o[h>>2]|0)-(o[K>>2]|0)|0;i=(o[m>>2]|0)-(o[i>>2]|0)|0;d=(o[b>>2]|0)-(o[d>>2]|0)|0;p=(o[w>>2]|0)-(o[p>>2]|0)|0;A=(o[k>>2]|0)-(o[A>>2]|0)|0;E=(o[T>>2]|0)-(o[E>>2]|0)|0;C=(o[x>>2]|0)-(o[C>>2]|0)|0;F=(o[O>>2]|0)-(o[F>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=z;z=e+48|0;o[z>>2]=K;K=e+52|0;o[K>>2]=i;i=e+56|0;o[i>>2]=d;d=e+60|0;o[d>>2]=p;p=e+64|0;o[p>>2]=A;A=e+68|0;o[A>>2]=E;E=e+72|0;o[E>>2]=C;C=e+76|0;o[C>>2]=F;F=e+80|0;Xr(F,e,n);Xr(X,X,n+40|0);O=e+120|0;Xr(O,n+120|0,t+120|0);Xr(e,t+80|0,n+80|0);x=o[e>>2]<<1;T=o[ae>>2]<<1;k=o[se>>2]<<1;w=o[oe>>2]<<1;b=o[ie>>2]<<1;m=o[re>>2]<<1;h=o[ne>>2]<<1;u=o[te>>2]<<1;a=o[ee>>2]<<1;r=o[$>>2]<<1;J=o[F>>2]|0;q=e+84|0;W=o[q>>2]|0;L=e+88|0;H=o[L>>2]|0;U=e+92|0;t=o[U>>2]|0;j=e+96|0;s=o[j>>2]|0;N=e+100|0;f=o[N>>2]|0;B=e+104|0;g=o[B>>2]|0;D=e+108|0;_=o[D>>2]|0;P=e+112|0;S=o[P>>2]|0;M=e+116|0;I=o[M>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[z>>2]|0;G=o[K>>2]|0;n=o[i>>2]|0;c=o[d>>2]|0;l=o[p>>2]|0;y=o[A>>2]|0;v=o[E>>2]|0;R=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=t-G;o[ie>>2]=s-n;o[re>>2]=f-c;o[ne>>2]=g-l;o[te>>2]=_-y;o[ee>>2]=S-v;o[$>>2]=I-R;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[z>>2]=V+H;o[K>>2]=G+t;o[i>>2]=n+s;o[d>>2]=c+f;o[p>>2]=l+g;o[A>>2]=y+_;o[E>>2]=v+S;o[C>>2]=R+I;C=o[O>>2]|0;I=e+124|0;R=o[I>>2]|0;E=e+128|0;S=o[E>>2]|0;v=e+132|0;A=o[v>>2]|0;_=e+136|0;y=o[_>>2]|0;p=e+140|0;g=o[p>>2]|0;l=e+144|0;d=o[l>>2]|0;f=e+148|0;c=o[f>>2]|0;i=e+152|0;s=o[i>>2]|0;n=e+156|0;t=o[n>>2]|0;o[F>>2]=C+x;o[q>>2]=R+T;o[L>>2]=S+k;o[U>>2]=A+w;o[j>>2]=y+b;o[N>>2]=g+m;o[B>>2]=d+h;o[D>>2]=c+u;o[P>>2]=s+a;o[M>>2]=t+r;o[O>>2]=x-C;o[I>>2]=T-R;o[E>>2]=k-S;o[v>>2]=w-A;o[_>>2]=b-y;o[p>>2]=m-g;o[l>>2]=h-d;o[f>>2]=u-c;o[i>>2]=a-s;o[n>>2]=r-t;return}function ri(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0;v=h;h=h+2400|0;d=v+2272|0;g=v+1536|0;m=v+1280|0;_=v;y=v+2112|0;b=v+1952|0;l=v+1792|0;ii(g,t);ii(m,i);oi(_,n);w=o[n+4>>2]|0;A=o[n+8>>2]|0;u=o[n+12>>2]|0;t=o[n+16>>2]|0;c=o[n+20>>2]|0;f=o[n+24>>2]|0;a=o[n+28>>2]|0;s=o[n+32>>2]|0;i=o[n+36>>2]|0;o[d>>2]=o[n>>2];o[d+4>>2]=w;o[d+8>>2]=A;o[d+12>>2]=u;o[d+16>>2]=t;o[d+20>>2]=c;o[d+24>>2]=f;o[d+28>>2]=a;o[d+32>>2]=s;o[d+36>>2]=i;i=o[n+44>>2]|0;s=o[n+48>>2]|0;a=o[n+52>>2]|0;f=o[n+56>>2]|0;c=o[n+60>>2]|0;t=o[n+64>>2]|0;u=o[n+68>>2]|0;A=o[n+72>>2]|0;w=o[n+76>>2]|0;o[d+40>>2]=o[n+40>>2];o[d+44>>2]=i;o[d+48>>2]=s;o[d+52>>2]=a;o[d+56>>2]=f;o[d+60>>2]=c;o[d+64>>2]=t;o[d+68>>2]=u;o[d+72>>2]=A;o[d+76>>2]=w;w=o[n+84>>2]|0;A=o[n+88>>2]|0;u=o[n+92>>2]|0;t=o[n+96>>2]|0;c=o[n+100>>2]|0;f=o[n+104>>2]|0;a=o[n+108>>2]|0;s=o[n+112>>2]|0;i=o[n+116>>2]|0;o[d+80>>2]=o[n+80>>2];o[d+84>>2]=w;o[d+88>>2]=A;o[d+92>>2]=u;o[d+96>>2]=t;o[d+100>>2]=c;o[d+104>>2]=f;o[d+108>>2]=a;o[d+112>>2]=s;o[d+116>>2]=i;si(y,d);d=y+120|0;Xr(l,y,d);i=y+40|0;s=y+80|0;Xr(l+40|0,i,s);Xr(l+80|0,s,d);Xr(l+120|0,y,i);ni(y,l,_);Xr(b,y,d);a=b+40|0;Xr(a,i,s);f=b+80|0;Xr(f,s,d);c=b+120|0;Xr(c,y,i);t=_+160|0;oi(t,b);ni(y,l,t);Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);t=_+320|0;oi(t,b);ni(y,l,t);Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);t=_+480|0;oi(t,b);ni(y,l,t);Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);t=_+640|0;oi(t,b);ni(y,l,t);Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);t=_+800|0;oi(t,b);ni(y,l,t);Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);t=_+960|0;oi(t,b);ni(y,l,t);Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);oi(_+1120|0,b);t=e;n=t+40|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));u=e+40|0;o[u>>2]=1;t=e+44|0;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));l=e+80|0;o[l>>2]=1;t=e+84|0;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));t=255;while(1){if(r[g+t>>0]|0)break;if(r[m+t>>0]|0)break;if(!t){p=16;break}else t=t+-1|0}if((p|0)==16){h=v;return}if((t|0)<=-1){h=v;return}while(1){si(y,e);n=r[g+t>>0]|0;if(n<<24>>24<=0){if(n<<24>>24<0){Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);ai(y,b,_+((((n<<24>>24)/-2|0)<<24>>24)*160|0)|0)}}else{Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);ni(y,b,_+(((n&255)>>>1&255)*160|0)|0)}n=r[m+t>>0]|0;if(n<<24>>24<=0){if(n<<24>>24<0){Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);ci(y,b,240+((((n<<24>>24)/-2|0)<<24>>24)*120|0)|0)}}else{Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);fi(y,b,240+(((n&255)>>>1&255)*120|0)|0)}Xr(e,y,d);Xr(u,i,s);Xr(l,s,d);if((t|0)>0)t=t+-1|0;else break}h=v;return}function ii(e,t){e=e|0;t=t|0;var n=0,i=0,o=0,a=0,f=0,c=0,u=0,l=0,d=0;n=0;do{r[e+n>>0]=(s[t+(n>>>3)>>0]|0)>>>(n&7)&1;n=n+1|0}while((n|0)!=256);u=0;do{c=e+u|0;n=r[c>>0]|0;f=u;u=u+1|0;e:do{if(n<<24>>24!=0&u>>>0<256){o=e+u|0;t=r[o>>0]|0;t:do{if(t<<24>>24){i=n<<24>>24;n=t<<24>>24<<1;t=n+i|0;if((t|0)<16){r[c>>0]=t;r[o>>0]=0;break}n=i-n|0;if((n|0)<=-16)break e;r[c>>0]=n;n=u;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=f+2|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[c>>0]|0;t=t<<24>>24<<2;i=t+a|0;if((i|0)<16){r[c>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[c>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=f+3|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[c>>0]|0;t=t<<24>>24<<3;i=t+a|0;if((i|0)<16){r[c>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[c>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=f+4|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[c>>0]|0;t=t<<24>>24<<4;i=t+a|0;if((i|0)<16){r[c>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[c>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=f+5|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[c>>0]|0;t=t<<24>>24<<5;i=t+a|0;if((i|0)<16){r[c>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[c>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=f+6|0;if(n>>>0<256?(l=e+n|0,d=r[l>>0]|0,d<<24>>24):0){t=r[c>>0]|0;i=d<<24>>24<<6;o=i+t|0;if((o|0)<16){r[c>>0]=o;r[l>>0]=0;break}t=t-i|0;if((t|0)>-16){r[c>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break e}r[t>>0]=1}}}}}}}}while(0)}while((u|0)!=256);return}function oi(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0;d=t+40|0;A=t+44|0;v=t+48|0;b=t+52|0;y=t+56|0;_=t+60|0;m=t+64|0;g=t+68|0;p=t+72|0;h=t+76|0;n=t+4|0;r=t+8|0;i=t+12|0;s=t+16|0;a=t+20|0;f=t+24|0;c=t+28|0;u=t+32|0;l=t+36|0;C=(o[n>>2]|0)+(o[A>>2]|0)|0;O=(o[r>>2]|0)+(o[v>>2]|0)|0;T=(o[i>>2]|0)+(o[b>>2]|0)|0;R=(o[s>>2]|0)+(o[y>>2]|0)|0;I=(o[a>>2]|0)+(o[_>>2]|0)|0;k=(o[f>>2]|0)+(o[m>>2]|0)|0;S=(o[c>>2]|0)+(o[g>>2]|0)|0;E=(o[u>>2]|0)+(o[p>>2]|0)|0;w=(o[l>>2]|0)+(o[h>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[d>>2]|0);o[e+4>>2]=C;o[e+8>>2]=O;o[e+12>>2]=T;o[e+16>>2]=R;o[e+20>>2]=I;o[e+24>>2]=k;o[e+28>>2]=S;o[e+32>>2]=E;o[e+36>>2]=w;n=(o[A>>2]|0)-(o[n>>2]|0)|0;r=(o[v>>2]|0)-(o[r>>2]|0)|0;i=(o[b>>2]|0)-(o[i>>2]|0)|0;s=(o[y>>2]|0)-(o[s>>2]|0)|0;a=(o[_>>2]|0)-(o[a>>2]|0)|0;f=(o[m>>2]|0)-(o[f>>2]|0)|0;c=(o[g>>2]|0)-(o[c>>2]|0)|0;u=(o[p>>2]|0)-(o[u>>2]|0)|0;l=(o[h>>2]|0)-(o[l>>2]|0)|0;o[e+40>>2]=(o[d>>2]|0)-(o[t>>2]|0);o[e+44>>2]=n;o[e+48>>2]=r;o[e+52>>2]=i;o[e+56>>2]=s;o[e+60>>2]=a;o[e+64>>2]=f;o[e+68>>2]=c;o[e+72>>2]=u;o[e+76>>2]=l;l=o[t+84>>2]|0;u=o[t+88>>2]|0;c=o[t+92>>2]|0;f=o[t+96>>2]|0;a=o[t+100>>2]|0;s=o[t+104>>2]|0;i=o[t+108>>2]|0;r=o[t+112>>2]|0;n=o[t+116>>2]|0;o[e+80>>2]=o[t+80>>2];o[e+84>>2]=l;o[e+88>>2]=u;o[e+92>>2]=c;o[e+96>>2]=f;o[e+100>>2]=a;o[e+104>>2]=s;o[e+108>>2]=i;o[e+112>>2]=r;o[e+116>>2]=n;Xr(e+120|0,t+120|0,1200);return}function si(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0;n=h;h=h+48|0;D=n;Yr(e,t);z=e+80|0;ce=t+40|0;Yr(z,ce);A=e+120|0;$r(A,t+80|0);ue=e+40|0;fe=(o[t+44>>2]|0)+(o[t+4>>2]|0)|0;ae=(o[t+48>>2]|0)+(o[t+8>>2]|0)|0;se=(o[t+52>>2]|0)+(o[t+12>>2]|0)|0;oe=(o[t+56>>2]|0)+(o[t+16>>2]|0)|0;ie=(o[t+60>>2]|0)+(o[t+20>>2]|0)|0;re=(o[t+64>>2]|0)+(o[t+24>>2]|0)|0;ne=(o[t+68>>2]|0)+(o[t+28>>2]|0)|0;te=(o[t+72>>2]|0)+(o[t+32>>2]|0)|0;ee=(o[t+76>>2]|0)+(o[t+36>>2]|0)|0;o[ue>>2]=(o[ce>>2]|0)+(o[t>>2]|0);ce=e+44|0;o[ce>>2]=fe;fe=e+48|0;o[fe>>2]=ae;ae=e+52|0;o[ae>>2]=se;se=e+56|0;o[se>>2]=oe;oe=e+60|0;o[oe>>2]=ie;ie=e+64|0;o[ie>>2]=re;re=e+68|0;o[re>>2]=ne;ne=e+72|0;o[ne>>2]=te;te=e+76|0;o[te>>2]=ee;Yr(D,ue);ee=o[z>>2]|0;G=e+84|0;$=o[G>>2]|0;K=e+88|0;Z=o[K>>2]|0;F=e+92|0;J=o[F>>2]|0;q=e+96|0;X=o[q>>2]|0;L=e+100|0;Y=o[L>>2]|0;U=e+104|0;W=o[U>>2]|0;j=e+108|0;Q=o[j>>2]|0;N=e+112|0;V=o[N>>2]|0;B=e+116|0;H=o[B>>2]|0;w=o[e>>2]|0;x=e+4|0;v=o[x>>2]|0;O=e+8|0;y=o[O>>2]|0;R=e+12|0;m=o[R>>2]|0;k=e+16|0;p=o[k>>2]|0;t=e+20|0;l=o[t>>2]|0;s=e+24|0;c=o[s>>2]|0;u=e+28|0;a=o[u>>2]|0;g=e+32|0;i=o[g>>2]|0;b=e+36|0;E=o[b>>2]|0;P=w+ee|0;M=v+$|0;C=y+Z|0;T=m+J|0;I=p+X|0;S=l+Y|0;r=c+W|0;f=a+Q|0;d=i+V|0;_=E+H|0;o[ue>>2]=P;o[ce>>2]=M;o[fe>>2]=C;o[ae>>2]=T;o[se>>2]=I;o[oe>>2]=S;o[ie>>2]=r;o[re>>2]=f;o[ne>>2]=d;o[te>>2]=_;w=ee-w|0;v=$-v|0;y=Z-y|0;m=J-m|0;p=X-p|0;l=Y-l|0;c=W-c|0;a=Q-a|0;i=V-i|0;E=H-E|0;o[z>>2]=w;o[G>>2]=v;o[K>>2]=y;o[F>>2]=m;o[q>>2]=p;o[L>>2]=l;o[U>>2]=c;o[j>>2]=a;o[N>>2]=i;o[B>>2]=E;M=(o[D+4>>2]|0)-M|0;C=(o[D+8>>2]|0)-C|0;T=(o[D+12>>2]|0)-T|0;I=(o[D+16>>2]|0)-I|0;S=(o[D+20>>2]|0)-S|0;r=(o[D+24>>2]|0)-r|0;f=(o[D+28>>2]|0)-f|0;d=(o[D+32>>2]|0)-d|0;_=(o[D+36>>2]|0)-_|0;o[e>>2]=(o[D>>2]|0)-P;o[x>>2]=M;o[O>>2]=C;o[R>>2]=T;o[k>>2]=I;o[t>>2]=S;o[s>>2]=r;o[u>>2]=f;o[g>>2]=d;o[b>>2]=_;b=e+124|0;_=e+128|0;g=e+132|0;d=e+136|0;u=e+140|0;f=e+144|0;s=e+148|0;r=e+152|0;t=e+156|0;v=(o[b>>2]|0)-v|0;y=(o[_>>2]|0)-y|0;m=(o[g>>2]|0)-m|0;p=(o[d>>2]|0)-p|0;l=(o[u>>2]|0)-l|0;c=(o[f>>2]|0)-c|0;a=(o[s>>2]|0)-a|0;i=(o[r>>2]|0)-i|0;e=(o[t>>2]|0)-E|0;o[A>>2]=(o[A>>2]|0)-w;o[b>>2]=v;o[_>>2]=y;o[g>>2]=m;o[d>>2]=p;o[u>>2]=l;o[f>>2]=c;o[s>>2]=a;o[r>>2]=i;o[t>>2]=e;h=n;return}function ai(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;f=t+44|0;l=t+48|0;p=t+52|0;_=t+56|0;v=t+60|0;E=t+64|0;I=t+68|0;O=t+72|0;T=t+76|0;z=t+4|0;F=t+8|0;r=t+12|0;d=t+16|0;h=t+20|0;A=t+24|0;w=t+28|0;C=t+32|0;q=t+36|0;se=(o[z>>2]|0)+(o[f>>2]|0)|0;oe=(o[F>>2]|0)+(o[l>>2]|0)|0;ie=(o[r>>2]|0)+(o[p>>2]|0)|0;re=(o[d>>2]|0)+(o[_>>2]|0)|0;ne=(o[h>>2]|0)+(o[v>>2]|0)|0;te=(o[A>>2]|0)+(o[E>>2]|0)|0;ee=(o[w>>2]|0)+(o[I>>2]|0)|0;$=(o[C>>2]|0)+(o[O>>2]|0)|0;X=(o[q>>2]|0)+(o[T>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;z=(o[f>>2]|0)-(o[z>>2]|0)|0;F=(o[l>>2]|0)-(o[F>>2]|0)|0;r=(o[p>>2]|0)-(o[r>>2]|0)|0;d=(o[_>>2]|0)-(o[d>>2]|0)|0;h=(o[v>>2]|0)-(o[h>>2]|0)|0;A=(o[E>>2]|0)-(o[A>>2]|0)|0;w=(o[I>>2]|0)-(o[w>>2]|0)|0;C=(o[O>>2]|0)-(o[C>>2]|0)|0;q=(o[T>>2]|0)-(o[q>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=z;z=e+48|0;o[z>>2]=F;F=e+52|0;o[F>>2]=r;r=e+56|0;o[r>>2]=d;d=e+60|0;o[d>>2]=h;h=e+64|0;o[h>>2]=A;A=e+68|0;o[A>>2]=w;w=e+72|0;o[w>>2]=C;C=e+76|0;o[C>>2]=q;q=e+80|0;Xr(q,e,n+40|0);Xr(X,X,n);T=e+120|0;Xr(T,n+120|0,t+120|0);Xr(e,t+80|0,n+80|0);O=o[e>>2]<<1;I=o[ae>>2]<<1;E=o[se>>2]<<1;v=o[oe>>2]<<1;_=o[ie>>2]<<1;p=o[re>>2]<<1;l=o[ne>>2]<<1;f=o[te>>2]<<1;i=o[ee>>2]<<1;t=o[$>>2]<<1;J=o[q>>2]|0;L=e+84|0;W=o[L>>2]|0;U=e+88|0;H=o[U>>2]|0;j=e+92|0;K=o[j>>2]|0;N=e+96|0;s=o[N>>2]|0;B=e+100|0;a=o[B>>2]|0;D=e+104|0;g=o[D>>2]|0;P=e+108|0;m=o[P>>2]|0;M=e+112|0;S=o[M>>2]|0;x=e+116|0;k=o[x>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[z>>2]|0;G=o[F>>2]|0;n=o[r>>2]|0;c=o[d>>2]|0;u=o[h>>2]|0;y=o[A>>2]|0;b=o[w>>2]|0;R=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=K-G;o[ie>>2]=s-n;o[re>>2]=a-c;o[ne>>2]=g-u;o[te>>2]=m-y;o[ee>>2]=S-b;o[$>>2]=k-R;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[z>>2]=V+H;o[F>>2]=G+K;o[r>>2]=n+s;o[d>>2]=c+a;o[h>>2]=u+g;o[A>>2]=y+m;o[w>>2]=b+S;o[C>>2]=R+k;C=o[T>>2]|0;k=e+124|0;R=o[k>>2]|0;w=e+128|0;S=o[w>>2]|0;b=e+132|0;A=o[b>>2]|0;m=e+136|0;y=o[m>>2]|0;h=e+140|0;g=o[h>>2]|0;u=e+144|0;d=o[u>>2]|0;a=e+148|0;c=o[a>>2]|0;r=e+152|0;s=o[r>>2]|0;n=e+156|0;e=o[n>>2]|0;o[q>>2]=O-C;o[L>>2]=I-R;o[U>>2]=E-S;o[j>>2]=v-A;o[N>>2]=_-y;o[B>>2]=p-g;o[D>>2]=l-d;o[P>>2]=f-c;o[M>>2]=i-s;o[x>>2]=t-e;o[T>>2]=C+O;o[k>>2]=R+I;o[w>>2]=S+E;o[b>>2]=A+v;o[m>>2]=y+_;o[h>>2]=g+p;o[u>>2]=d+l;o[a>>2]=c+f;o[r>>2]=s+i;o[n>>2]=e+t;return}function fi(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;u=t+44|0;h=t+48|0;m=t+52|0;b=t+56|0;w=t+60|0;k=t+64|0;T=t+68|0;x=t+72|0;O=t+76|0;z=t+4|0;K=t+8|0;i=t+12|0;d=t+16|0;p=t+20|0;A=t+24|0;E=t+28|0;C=t+32|0;F=t+36|0;se=(o[z>>2]|0)+(o[u>>2]|0)|0;oe=(o[K>>2]|0)+(o[h>>2]|0)|0;ie=(o[i>>2]|0)+(o[m>>2]|0)|0;re=(o[d>>2]|0)+(o[b>>2]|0)|0;ne=(o[p>>2]|0)+(o[w>>2]|0)|0;te=(o[A>>2]|0)+(o[k>>2]|0)|0;ee=(o[E>>2]|0)+(o[T>>2]|0)|0;$=(o[C>>2]|0)+(o[x>>2]|0)|0;X=(o[F>>2]|0)+(o[O>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;z=(o[u>>2]|0)-(o[z>>2]|0)|0;K=(o[h>>2]|0)-(o[K>>2]|0)|0;i=(o[m>>2]|0)-(o[i>>2]|0)|0;d=(o[b>>2]|0)-(o[d>>2]|0)|0;p=(o[w>>2]|0)-(o[p>>2]|0)|0;A=(o[k>>2]|0)-(o[A>>2]|0)|0;E=(o[T>>2]|0)-(o[E>>2]|0)|0;C=(o[x>>2]|0)-(o[C>>2]|0)|0;F=(o[O>>2]|0)-(o[F>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=z;z=e+48|0;o[z>>2]=K;K=e+52|0;o[K>>2]=i;i=e+56|0;o[i>>2]=d;d=e+60|0;o[d>>2]=p;p=e+64|0;o[p>>2]=A;A=e+68|0;o[A>>2]=E;E=e+72|0;o[E>>2]=C;C=e+76|0;o[C>>2]=F;F=e+80|0;Xr(F,e,n);Xr(X,X,n+40|0);O=e+120|0;Xr(O,n+80|0,t+120|0);x=o[t+80>>2]<<1;T=o[t+84>>2]<<1;k=o[t+88>>2]<<1;w=o[t+92>>2]<<1;b=o[t+96>>2]<<1;m=o[t+100>>2]<<1;h=o[t+104>>2]<<1;u=o[t+108>>2]<<1;a=o[t+112>>2]<<1;r=o[t+116>>2]<<1;J=o[F>>2]|0;q=e+84|0;W=o[q>>2]|0;L=e+88|0;H=o[L>>2]|0;U=e+92|0;t=o[U>>2]|0;j=e+96|0;s=o[j>>2]|0;N=e+100|0;f=o[N>>2]|0;B=e+104|0;g=o[B>>2]|0;D=e+108|0;_=o[D>>2]|0;P=e+112|0;S=o[P>>2]|0;M=e+116|0;I=o[M>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[z>>2]|0;G=o[K>>2]|0;n=o[i>>2]|0;c=o[d>>2]|0;l=o[p>>2]|0;y=o[A>>2]|0;v=o[E>>2]|0;R=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=t-G;o[ie>>2]=s-n;o[re>>2]=f-c;o[ne>>2]=g-l;o[te>>2]=_-y;o[ee>>2]=S-v;o[$>>2]=I-R;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[z>>2]=V+H;o[K>>2]=G+t;o[i>>2]=n+s;o[d>>2]=c+f;o[p>>2]=l+g;o[A>>2]=y+_;o[E>>2]=v+S;o[C>>2]=R+I;C=o[O>>2]|0;I=e+124|0;R=o[I>>2]|0;E=e+128|0;S=o[E>>2]|0;v=e+132|0;A=o[v>>2]|0;_=e+136|0;y=o[_>>2]|0;p=e+140|0;g=o[p>>2]|0;l=e+144|0;d=o[l>>2]|0;f=e+148|0;c=o[f>>2]|0;i=e+152|0;s=o[i>>2]|0;n=e+156|0;t=o[n>>2]|0;o[F>>2]=C+x;o[q>>2]=R+T;o[L>>2]=S+k;o[U>>2]=A+w;o[j>>2]=y+b;o[N>>2]=g+m;o[B>>2]=d+h;o[D>>2]=c+u;o[P>>2]=s+a;o[M>>2]=t+r;o[O>>2]=x-C;o[I>>2]=T-R;o[E>>2]=k-S;o[v>>2]=w-A;o[_>>2]=b-y;o[p>>2]=m-g;o[l>>2]=h-d;o[f>>2]=u-c;o[i>>2]=a-s;o[n>>2]=r-t;return}function ci(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;f=t+44|0;l=t+48|0;p=t+52|0;_=t+56|0;v=t+60|0;E=t+64|0;I=t+68|0;O=t+72|0;T=t+76|0;z=t+4|0;F=t+8|0;r=t+12|0;d=t+16|0;h=t+20|0;A=t+24|0;w=t+28|0;C=t+32|0;q=t+36|0;se=(o[z>>2]|0)+(o[f>>2]|0)|0;oe=(o[F>>2]|0)+(o[l>>2]|0)|0;ie=(o[r>>2]|0)+(o[p>>2]|0)|0;re=(o[d>>2]|0)+(o[_>>2]|0)|0;ne=(o[h>>2]|0)+(o[v>>2]|0)|0;te=(o[A>>2]|0)+(o[E>>2]|0)|0;ee=(o[w>>2]|0)+(o[I>>2]|0)|0;$=(o[C>>2]|0)+(o[O>>2]|0)|0;X=(o[q>>2]|0)+(o[T>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;z=(o[f>>2]|0)-(o[z>>2]|0)|0;F=(o[l>>2]|0)-(o[F>>2]|0)|0;r=(o[p>>2]|0)-(o[r>>2]|0)|0;d=(o[_>>2]|0)-(o[d>>2]|0)|0;h=(o[v>>2]|0)-(o[h>>2]|0)|0;A=(o[E>>2]|0)-(o[A>>2]|0)|0;w=(o[I>>2]|0)-(o[w>>2]|0)|0;C=(o[O>>2]|0)-(o[C>>2]|0)|0;q=(o[T>>2]|0)-(o[q>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=z;z=e+48|0;o[z>>2]=F;F=e+52|0;o[F>>2]=r;r=e+56|0;o[r>>2]=d;d=e+60|0;o[d>>2]=h;h=e+64|0;o[h>>2]=A;A=e+68|0;o[A>>2]=w;w=e+72|0;o[w>>2]=C;C=e+76|0;o[C>>2]=q;q=e+80|0;Xr(q,e,n+40|0);Xr(X,X,n);T=e+120|0;Xr(T,n+80|0,t+120|0);O=o[t+80>>2]<<1;I=o[t+84>>2]<<1;E=o[t+88>>2]<<1;v=o[t+92>>2]<<1;_=o[t+96>>2]<<1;p=o[t+100>>2]<<1;l=o[t+104>>2]<<1;f=o[t+108>>2]<<1;i=o[t+112>>2]<<1;t=o[t+116>>2]<<1;J=o[q>>2]|0;L=e+84|0;W=o[L>>2]|0;U=e+88|0;H=o[U>>2]|0;j=e+92|0;K=o[j>>2]|0;N=e+96|0;s=o[N>>2]|0;B=e+100|0;a=o[B>>2]|0;D=e+104|0;g=o[D>>2]|0;P=e+108|0;m=o[P>>2]|0;M=e+112|0;S=o[M>>2]|0;x=e+116|0;k=o[x>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[z>>2]|0;G=o[F>>2]|0;n=o[r>>2]|0;c=o[d>>2]|0;u=o[h>>2]|0;y=o[A>>2]|0;b=o[w>>2]|0;R=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=K-G;o[ie>>2]=s-n;o[re>>2]=a-c;o[ne>>2]=g-u;o[te>>2]=m-y;o[ee>>2]=S-b;o[$>>2]=k-R;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[z>>2]=V+H;o[F>>2]=G+K;o[r>>2]=n+s;o[d>>2]=c+a;o[h>>2]=u+g;o[A>>2]=y+m;o[w>>2]=b+S;o[C>>2]=R+k;C=o[T>>2]|0;k=e+124|0;R=o[k>>2]|0;w=e+128|0;S=o[w>>2]|0;b=e+132|0;A=o[b>>2]|0;m=e+136|0;y=o[m>>2]|0;h=e+140|0;g=o[h>>2]|0;u=e+144|0;d=o[u>>2]|0;a=e+148|0;c=o[a>>2]|0;r=e+152|0;s=o[r>>2]|0;n=e+156|0;e=o[n>>2]|0;o[q>>2]=O-C;o[L>>2]=I-R;o[U>>2]=E-S;o[j>>2]=v-A;o[N>>2]=_-y;o[B>>2]=p-g;o[D>>2]=l-d;o[P>>2]=f-c;o[M>>2]=i-s;o[x>>2]=t-e;o[T>>2]=C+O;o[k>>2]=R+I;o[w>>2]=S+E;o[b>>2]=A+v;o[m>>2]=y+_;o[h>>2]=g+p;o[u>>2]=d+l;o[a>>2]=c+f;o[r>>2]=s+i;o[n>>2]=e+t;return}function ui(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0;ge=h;h=h+272|0;ue=ge+240|0;le=ge+192|0;f=ge+144|0;c=ge+96|0;de=ge+48|0;he=ge;pe=e+40|0;Qr(pe,t);u=e+80|0;o[u>>2]=1;a=e+84|0;n=a;i=n+36|0;do{o[n>>2]=0;n=n+4|0}while((n|0)<(i|0));Yr(le,pe);Xr(f,le,1248);te=le+4|0;ne=le+8|0;re=le+12|0;ie=le+16|0;oe=le+20|0;se=le+24|0;ae=le+28|0;fe=le+32|0;ce=le+36|0;C=o[u>>2]|0;O=o[a>>2]|0;R=o[e+88>>2]|0;k=o[e+92>>2]|0;E=o[e+96>>2]|0;A=o[e+100>>2]|0;i=o[e+104>>2]|0;ee=o[e+108>>2]|0;Z=o[e+112>>2]|0;X=o[e+116>>2]|0;b=(o[le>>2]|0)-C|0;v=(o[te>>2]|0)-O|0;u=(o[ne>>2]|0)-R|0;l=(o[re>>2]|0)-k|0;d=(o[ie>>2]|0)-E|0;p=(o[oe>>2]|0)-A|0;g=(o[se>>2]|0)-i|0;m=(o[ae>>2]|0)-ee|0;_=(o[fe>>2]|0)-Z|0;y=(o[ce>>2]|0)-X|0;o[le>>2]=b;o[te>>2]=v;o[ne>>2]=u;o[re>>2]=l;o[ie>>2]=d;o[oe>>2]=p;o[se>>2]=g;o[ae>>2]=m;o[fe>>2]=_;o[ce>>2]=y;T=f+4|0;I=f+8|0;S=f+12|0;w=f+16|0;a=f+20|0;n=f+24|0;$=f+28|0;J=f+32|0;Y=f+36|0;O=(o[T>>2]|0)+O|0;R=(o[I>>2]|0)+R|0;k=(o[S>>2]|0)+k|0;E=(o[w>>2]|0)+E|0;A=(o[a>>2]|0)+A|0;i=(o[n>>2]|0)+i|0;ee=(o[$>>2]|0)+ee|0;Z=(o[J>>2]|0)+Z|0;X=(o[Y>>2]|0)+X|0;o[f>>2]=(o[f>>2]|0)+C;o[T>>2]=O;o[I>>2]=R;o[S>>2]=k;o[w>>2]=E;o[a>>2]=A;o[n>>2]=i;o[$>>2]=ee;o[J>>2]=Z;o[Y>>2]=X;Yr(c,f);Xr(c,c,f);Yr(e,c);Xr(e,e,f);Xr(e,e,le);Zr(e,e);Xr(e,e,c);Xr(e,e,le);Yr(de,e);Xr(de,de,f);Y=de+4|0;X=de+8|0;J=de+12|0;Z=de+16|0;$=de+20|0;ee=de+24|0;n=de+28|0;i=de+32|0;a=de+36|0;c=(o[Y>>2]|0)-v|0;u=(o[X>>2]|0)-u|0;l=(o[J>>2]|0)-l|0;d=(o[Z>>2]|0)-d|0;p=(o[$>>2]|0)-p|0;g=(o[ee>>2]|0)-g|0;m=(o[n>>2]|0)-m|0;_=(o[i>>2]|0)-_|0;y=(o[a>>2]|0)-y|0;o[he>>2]=(o[de>>2]|0)-b;f=he+4|0;o[f>>2]=c;c=he+8|0;o[c>>2]=u;u=he+12|0;o[u>>2]=l;l=he+16|0;o[l>>2]=d;d=he+20|0;o[d>>2]=p;p=he+24|0;o[p>>2]=g;g=he+28|0;o[g>>2]=m;m=he+32|0;o[m>>2]=_;_=he+36|0;o[_>>2]=y;Jr(ue,he);y=ue+1|0;b=ue+2|0;v=ue+3|0;A=ue+4|0;w=ue+5|0;E=ue+6|0;S=ue+7|0;k=ue+8|0;I=ue+9|0;R=ue+10|0;T=ue+11|0;O=ue+12|0;C=ue+13|0;x=ue+14|0;M=ue+15|0;P=ue+16|0;D=ue+17|0;B=ue+18|0;N=ue+19|0;j=ue+20|0;U=ue+21|0;L=ue+22|0;q=ue+23|0;F=ue+24|0;K=ue+25|0;G=ue+26|0;z=ue+27|0;H=ue+28|0;V=ue+29|0;Q=ue+30|0;W=ue+31|0;do{if((r[y>>0]|r[ue>>0]|r[b>>0]|r[v>>0]|r[A>>0]|r[w>>0]|r[E>>0]|r[S>>0]|r[k>>0]|r[I>>0]|r[R>>0]|r[T>>0]|r[O>>0]|r[C>>0]|r[x>>0]|r[M>>0]|r[P>>0]|r[D>>0]|r[B>>0]|r[N>>0]|r[j>>0]|r[U>>0]|r[L>>0]|r[q>>0]|r[F>>0]|r[K>>0]|r[G>>0]|r[z>>0]|r[H>>0]|r[V>>0]|r[Q>>0]|r[W>>0])<<24>>24){te=(o[te>>2]|0)+(o[Y>>2]|0)|0;ne=(o[ne>>2]|0)+(o[X>>2]|0)|0;re=(o[re>>2]|0)+(o[J>>2]|0)|0;ie=(o[ie>>2]|0)+(o[Z>>2]|0)|0;oe=(o[oe>>2]|0)+(o[$>>2]|0)|0;se=(o[se>>2]|0)+(o[ee>>2]|0)|0;ae=(o[ae>>2]|0)+(o[n>>2]|0)|0;fe=(o[fe>>2]|0)+(o[i>>2]|0)|0;ce=(o[ce>>2]|0)+(o[a>>2]|0)|0;o[he>>2]=(o[le>>2]|0)+(o[de>>2]|0);o[f>>2]=te;o[c>>2]=ne;o[u>>2]=re;o[l>>2]=ie;o[d>>2]=oe;o[p>>2]=se;o[g>>2]=ae;o[m>>2]=fe;o[_>>2]=ce;Jr(ue,he);if(!((r[y>>0]|r[ue>>0]|r[b>>0]|r[v>>0]|r[A>>0]|r[w>>0]|r[E>>0]|r[S>>0]|r[k>>0]|r[I>>0]|r[R>>0]|r[T>>0]|r[O>>0]|r[C>>0]|r[x>>0]|r[M>>0]|r[P>>0]|r[D>>0]|r[B>>0]|r[N>>0]|r[j>>0]|r[U>>0]|r[L>>0]|r[q>>0]|r[F>>0]|r[K>>0]|r[G>>0]|r[z>>0]|r[H>>0]|r[V>>0]|r[Q>>0]|r[W>>0])<<24>>24)){Xr(e,e,1296);break}else{pe=-1;h=ge;return pe|0}}}while(0);Jr(ue,e);if(((s[t+31>>0]|0)>>>7|0)==(r[ue>>0]&1|0)){Z=e+4|0;ee=e+8|0;ne=e+12|0;ie=e+16|0;se=e+20|0;fe=e+24|0;t=e+28|0;le=e+32|0;he=e+36|0;J=0-(o[Z>>2]|0)|0;$=0-(o[ee>>2]|0)|0;te=0-(o[ne>>2]|0)|0;re=0-(o[ie>>2]|0)|0;oe=0-(o[se>>2]|0)|0;ae=0-(o[fe>>2]|0)|0;ce=0-(o[t>>2]|0)|0;ue=0-(o[le>>2]|0)|0;de=0-(o[he>>2]|0)|0;o[e>>2]=0-(o[e>>2]|0);o[Z>>2]=J;o[ee>>2]=$;o[ne>>2]=te;o[ie>>2]=re;o[se>>2]=oe;o[fe>>2]=ae;o[t>>2]=ce;o[le>>2]=ue;o[he>>2]=de}Xr(e+120|0,e,pe);pe=0;h=ge;return pe|0}function li(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0;b=h;h=h+592|0;p=b+464|0;m=b;_=b+304|0;g=b+184|0;y=b+64|0;i=r[t>>0]|0;r[m>>0]=i&15;r[m+1>>0]=(i&255)>>>4;i=r[t+1>>0]|0;r[m+2>>0]=i&15;r[m+3>>0]=(i&255)>>>4;i=r[t+2>>0]|0;r[m+4>>0]=i&15;r[m+5>>0]=(i&255)>>>4;i=r[t+3>>0]|0;r[m+6>>0]=i&15;r[m+7>>0]=(i&255)>>>4;i=r[t+4>>0]|0;r[m+8>>0]=i&15;r[m+9>>0]=(i&255)>>>4;i=r[t+5>>0]|0;r[m+10>>0]=i&15;r[m+11>>0]=(i&255)>>>4;i=r[t+6>>0]|0;r[m+12>>0]=i&15;r[m+13>>0]=(i&255)>>>4;i=r[t+7>>0]|0;r[m+14>>0]=i&15;r[m+15>>0]=(i&255)>>>4;i=r[t+8>>0]|0;r[m+16>>0]=i&15;r[m+17>>0]=(i&255)>>>4;i=r[t+9>>0]|0;r[m+18>>0]=i&15;r[m+19>>0]=(i&255)>>>4;i=r[t+10>>0]|0;r[m+20>>0]=i&15;r[m+21>>0]=(i&255)>>>4;i=r[t+11>>0]|0;r[m+22>>0]=i&15;r[m+23>>0]=(i&255)>>>4;i=r[t+12>>0]|0;r[m+24>>0]=i&15;r[m+25>>0]=(i&255)>>>4;i=r[t+13>>0]|0;r[m+26>>0]=i&15;r[m+27>>0]=(i&255)>>>4;i=r[t+14>>0]|0;r[m+28>>0]=i&15;r[m+29>>0]=(i&255)>>>4;i=r[t+15>>0]|0;r[m+30>>0]=i&15;r[m+31>>0]=(i&255)>>>4;i=r[t+16>>0]|0;r[m+32>>0]=i&15;r[m+33>>0]=(i&255)>>>4;i=r[t+17>>0]|0;r[m+34>>0]=i&15;r[m+35>>0]=(i&255)>>>4;i=r[t+18>>0]|0;r[m+36>>0]=i&15;r[m+37>>0]=(i&255)>>>4;i=r[t+19>>0]|0;r[m+38>>0]=i&15;r[m+39>>0]=(i&255)>>>4;i=r[t+20>>0]|0;r[m+40>>0]=i&15;r[m+41>>0]=(i&255)>>>4;i=r[t+21>>0]|0;r[m+42>>0]=i&15;r[m+43>>0]=(i&255)>>>4;i=r[t+22>>0]|0;r[m+44>>0]=i&15;r[m+45>>0]=(i&255)>>>4;i=r[t+23>>0]|0;r[m+46>>0]=i&15;r[m+47>>0]=(i&255)>>>4;i=r[t+24>>0]|0;r[m+48>>0]=i&15;r[m+49>>0]=(i&255)>>>4;i=r[t+25>>0]|0;r[m+50>>0]=i&15;r[m+51>>0]=(i&255)>>>4;i=r[t+26>>0]|0;r[m+52>>0]=i&15;r[m+53>>0]=(i&255)>>>4;i=r[t+27>>0]|0;r[m+54>>0]=i&15;r[m+55>>0]=(i&255)>>>4;i=r[t+28>>0]|0;r[m+56>>0]=i&15;r[m+57>>0]=(i&255)>>>4;i=r[t+29>>0]|0;r[m+58>>0]=i&15;r[m+59>>0]=(i&255)>>>4;i=r[t+30>>0]|0;r[m+60>>0]=i&15;r[m+61>>0]=(i&255)>>>4;t=r[t+31>>0]|0;r[m+62>>0]=t&15;i=m+63|0;r[i>>0]=(t&255)>>>4;t=0;n=0;do{d=m+n|0;l=t+(s[d>>0]|0)|0;t=(l<<24)+134217728>>28;r[d>>0]=l-(t<<4);n=n+1|0}while((n|0)!=63);r[i>>0]=t+(s[i>>0]|0);t=e;n=t+40|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));l=e+40|0;o[l>>2]=1;c=e+44|0;t=c;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));d=e+80|0;o[d>>2]=1;u=e+84|0;t=u;n=t+76|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));n=_+120|0;i=_+40|0;a=_+80|0;f=e+120|0;t=1;do{di(y,t>>>1,r[m+t>>0]|0);fi(_,e,y);Xr(e,_,n);Xr(l,i,a);Xr(d,a,n);Xr(f,_,i);t=t+2|0}while(t>>>0<64);R=o[e+4>>2]|0;k=o[e+8>>2]|0;S=o[e+12>>2]|0;E=o[e+16>>2]|0;w=o[e+20>>2]|0;A=o[e+24>>2]|0;v=o[e+28>>2]|0;t=o[e+32>>2]|0;I=o[e+36>>2]|0;o[p>>2]=o[e>>2];o[p+4>>2]=R;o[p+8>>2]=k;o[p+12>>2]=S;o[p+16>>2]=E;o[p+20>>2]=w;o[p+24>>2]=A;o[p+28>>2]=v;o[p+32>>2]=t;o[p+36>>2]=I;I=o[c>>2]|0;t=o[e+48>>2]|0;c=o[e+52>>2]|0;v=o[e+56>>2]|0;A=o[e+60>>2]|0;w=o[e+64>>2]|0;E=o[e+68>>2]|0;S=o[e+72>>2]|0;k=o[e+76>>2]|0;o[p+40>>2]=o[l>>2];o[p+44>>2]=I;o[p+48>>2]=t;o[p+52>>2]=c;o[p+56>>2]=v;o[p+60>>2]=A;o[p+64>>2]=w;o[p+68>>2]=E;o[p+72>>2]=S;o[p+76>>2]=k;k=o[u>>2]|0;S=o[e+88>>2]|0;E=o[e+92>>2]|0;w=o[e+96>>2]|0;A=o[e+100>>2]|0;v=o[e+104>>2]|0;c=o[e+108>>2]|0;u=o[e+112>>2]|0;t=o[e+116>>2]|0;o[p+80>>2]=o[d>>2];o[p+84>>2]=k;o[p+88>>2]=S;o[p+92>>2]=E;o[p+96>>2]=w;o[p+100>>2]=A;o[p+104>>2]=v;o[p+108>>2]=c;o[p+112>>2]=u;o[p+116>>2]=t;si(_,p);Xr(g,_,n);p=g+40|0;Xr(p,i,a);t=g+80|0;Xr(t,a,n);si(_,g);Xr(g,_,n);Xr(p,i,a);Xr(t,a,n);si(_,g);Xr(g,_,n);Xr(p,i,a);Xr(t,a,n);si(_,g);Xr(e,_,n);Xr(l,i,a);Xr(d,a,n);Xr(f,_,i);t=0;do{di(y,t>>>1,r[m+t>>0]|0);fi(_,e,y);Xr(e,_,n);Xr(l,i,a);Xr(d,a,n);Xr(f,_,i);t=t+2|0}while(t>>>0<64);h=b;return}function di(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0,me=0,_e=0,ye=0,be=0,ve=0;r=n<<24>>24;y=0-((n&255)>>>7&255)|0;n=r-((y&r)<<1)&255;o[e>>2]=1;r=e+4|0;b=r;v=b+36|0;do{o[b>>2]=0;b=b+4|0}while((b|0)<(v|0));i=e+40|0;o[i>>2]=1;s=e+44|0;a=e+80|0;f=Ss((n^1)&255|0,0,-1,-1)|0;f=Cs(f|0,I|0,63)|0;c=1344+(t*960|0)|0;u=e+8|0;l=e+12|0;d=e+16|0;h=e+20|0;p=e+24|0;g=e+28|0;m=e+32|0;_=e+36|0;b=s;v=b+76|0;do{o[b>>2]=0;b=b+4|0}while((b|0)<(v|0));ve=0-f|0;_e=o[1344+(t*960|0)+4>>2]&ve;me=o[1344+(t*960|0)+8>>2]&ve;ge=o[1344+(t*960|0)+12>>2]&ve;pe=o[1344+(t*960|0)+16>>2]&ve;he=o[1344+(t*960|0)+20>>2]&ve;de=o[1344+(t*960|0)+24>>2]&ve;le=o[1344+(t*960|0)+28>>2]&ve;ue=o[1344+(t*960|0)+32>>2]&ve;ce=o[1344+(t*960|0)+36>>2]&ve;ye=(o[c>>2]^1)&ve^1;o[e>>2]=ye;o[r>>2]=_e;o[u>>2]=me;o[l>>2]=ge;o[d>>2]=pe;o[h>>2]=he;o[p>>2]=de;o[g>>2]=le;o[m>>2]=ue;o[_>>2]=ce;ne=e+48|0;$=e+52|0;X=e+56|0;Q=e+60|0;z=e+64|0;F=e+68|0;U=e+72|0;B=e+76|0;oe=o[1344+(t*960|0)+44>>2]&ve;re=o[1344+(t*960|0)+48>>2]&ve;ee=o[1344+(t*960|0)+52>>2]&ve;J=o[1344+(t*960|0)+56>>2]&ve;W=o[1344+(t*960|0)+60>>2]&ve;H=o[1344+(t*960|0)+64>>2]&ve;K=o[1344+(t*960|0)+68>>2]&ve;L=o[1344+(t*960|0)+72>>2]&ve;N=o[1344+(t*960|0)+76>>2]&ve;ae=(o[1344+(t*960|0)+40>>2]^1)&ve^1;o[i>>2]=ae;o[s>>2]=oe;o[ne>>2]=re;o[$>>2]=ee;o[X>>2]=J;o[Q>>2]=W;o[z>>2]=H;o[F>>2]=K;o[U>>2]=L;o[B>>2]=N;D=o[a>>2]|0;M=e+84|0;P=o[M>>2]|0;C=e+88|0;x=o[C>>2]|0;T=e+92|0;O=o[T>>2]|0;k=e+96|0;R=o[k>>2]|0;E=e+100|0;S=o[E>>2]|0;A=e+104|0;w=o[A>>2]|0;f=e+108|0;Z=o[f>>2]|0;b=e+112|0;c=o[b>>2]|0;v=e+116|0;se=o[v>>2]|0;ie=(o[1344+(t*960|0)+84>>2]^P)&ve;te=(o[1344+(t*960|0)+88>>2]^x)&ve;Y=(o[1344+(t*960|0)+92>>2]^O)&ve;V=(o[1344+(t*960|0)+96>>2]^R)&ve;G=(o[1344+(t*960|0)+100>>2]^S)&ve;q=(o[1344+(t*960|0)+104>>2]^w)&ve;j=(o[1344+(t*960|0)+108>>2]^Z)&ve;fe=(o[1344+(t*960|0)+112>>2]^c)&ve;be=(o[1344+(t*960|0)+116>>2]^se)&ve;D=(o[1344+(t*960|0)+80>>2]^D)&ve^D;o[a>>2]=D;P=ie^P;o[M>>2]=P;x=te^x;o[C>>2]=x;O=Y^O;o[T>>2]=O;R=V^R;o[k>>2]=R;S=G^S;o[E>>2]=S;w=q^w;o[A>>2]=w;Z=j^Z;o[f>>2]=Z;c=fe^c;o[b>>2]=c;se=be^se;o[v>>2]=se;be=Ss((n^2)&255|0,0,-1,-1)|0;be=Cs(be|0,I|0,63)|0;be=0-be|0;fe=(o[1344+(t*960|0)+124>>2]^_e)&be;j=(o[1344+(t*960|0)+128>>2]^me)&be;q=(o[1344+(t*960|0)+132>>2]^ge)&be;G=(o[1344+(t*960|0)+136>>2]^pe)&be;V=(o[1344+(t*960|0)+140>>2]^he)&be;Y=(o[1344+(t*960|0)+144>>2]^de)&be;te=(o[1344+(t*960|0)+148>>2]^le)&be;ie=(o[1344+(t*960|0)+152>>2]^ue)&be;ve=(o[1344+(t*960|0)+156>>2]^ce)&be;ye=(o[1344+(t*960|0)+120>>2]^ye)&be^ye;o[e>>2]=ye;_e=fe^_e;o[r>>2]=_e;me=j^me;o[u>>2]=me;ge=q^ge;o[l>>2]=ge;pe=G^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;le=te^le;o[g>>2]=le;ue=ie^ue;o[m>>2]=ue;ce=ve^ce;o[_>>2]=ce;ve=(o[1344+(t*960|0)+164>>2]^oe)&be;ie=(o[1344+(t*960|0)+168>>2]^re)&be;te=(o[1344+(t*960|0)+172>>2]^ee)&be;Y=(o[1344+(t*960|0)+176>>2]^J)&be;V=(o[1344+(t*960|0)+180>>2]^W)&be;G=(o[1344+(t*960|0)+184>>2]^H)&be;q=(o[1344+(t*960|0)+188>>2]^K)&be;j=(o[1344+(t*960|0)+192>>2]^L)&be;fe=(o[1344+(t*960|0)+196>>2]^N)&be;ae=(o[1344+(t*960|0)+160>>2]^ae)&be^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=G^H;o[z>>2]=H;K=q^K;o[F>>2]=K;L=j^L;o[U>>2]=L;N=fe^N;o[B>>2]=N;fe=(o[1344+(t*960|0)+204>>2]^P)&be;j=(o[1344+(t*960|0)+208>>2]^x)&be;q=(o[1344+(t*960|0)+212>>2]^O)&be;G=(o[1344+(t*960|0)+216>>2]^R)&be;V=(o[1344+(t*960|0)+220>>2]^S)&be;Y=(o[1344+(t*960|0)+224>>2]^w)&be;te=(o[1344+(t*960|0)+228>>2]^Z)&be;ie=(o[1344+(t*960|0)+232>>2]^c)&be;ve=(o[1344+(t*960|0)+236>>2]^se)&be;D=(o[1344+(t*960|0)+200>>2]^D)&be^D;o[a>>2]=D;P=fe^P;o[M>>2]=P;x=j^x;o[C>>2]=x;O=q^O;o[T>>2]=O;R=G^R;o[k>>2]=R;S=V^S;o[E>>2]=S;w=Y^w;o[A>>2]=w;Z=te^Z;o[f>>2]=Z;c=ie^c;o[b>>2]=c;se=ve^se;o[v>>2]=se;ve=Ss((n^3)&255|0,0,-1,-1)|0;ve=Cs(ve|0,I|0,63)|0;ve=0-ve|0;ie=(o[1344+(t*960|0)+244>>2]^_e)&ve;te=(o[1344+(t*960|0)+248>>2]^me)&ve;Y=(o[1344+(t*960|0)+252>>2]^ge)&ve;V=(o[1344+(t*960|0)+256>>2]^pe)&ve;G=(o[1344+(t*960|0)+260>>2]^he)&ve;q=(o[1344+(t*960|0)+264>>2]^de)&ve;j=(o[1344+(t*960|0)+268>>2]^le)&ve;fe=(o[1344+(t*960|0)+272>>2]^ue)&ve;be=(o[1344+(t*960|0)+276>>2]^ce)&ve;ye=(o[1344+(t*960|0)+240>>2]^ye)&ve^ye;o[e>>2]=ye;_e=ie^_e;o[r>>2]=_e;me=te^me;o[u>>2]=me;ge=Y^ge;o[l>>2]=ge;pe=V^pe;o[d>>2]=pe;he=G^he;o[h>>2]=he;de=q^de;o[p>>2]=de;le=j^le;o[g>>2]=le;ue=fe^ue;o[m>>2]=ue;ce=be^ce;o[_>>2]=ce;be=(o[1344+(t*960|0)+284>>2]^oe)&ve;fe=(o[1344+(t*960|0)+288>>2]^re)&ve;j=(o[1344+(t*960|0)+292>>2]^ee)&ve;q=(o[1344+(t*960|0)+296>>2]^J)&ve;G=(o[1344+(t*960|0)+300>>2]^W)&ve;V=(o[1344+(t*960|0)+304>>2]^H)&ve;Y=(o[1344+(t*960|0)+308>>2]^K)&ve;te=(o[1344+(t*960|0)+312>>2]^L)&ve;ie=(o[1344+(t*960|0)+316>>2]^N)&ve;ae=(o[1344+(t*960|0)+280>>2]^ae)&ve^ae;o[i>>2]=ae;oe=be^oe;o[s>>2]=oe;re=fe^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=q^J;o[X>>2]=J;W=G^W;o[Q>>2]=W;H=V^H;o[z>>2]=H;K=Y^K;o[F>>2]=K;L=te^L;o[U>>2]=L;N=ie^N;o[B>>2]=N;ie=(o[1344+(t*960|0)+324>>2]^P)&ve;te=(o[1344+(t*960|0)+328>>2]^x)&ve;Y=(o[1344+(t*960|0)+332>>2]^O)&ve;V=(o[1344+(t*960|0)+336>>2]^R)&ve;G=(o[1344+(t*960|0)+340>>2]^S)&ve;q=(o[1344+(t*960|0)+344>>2]^w)&ve;j=(o[1344+(t*960|0)+348>>2]^Z)&ve;fe=(o[1344+(t*960|0)+352>>2]^c)&ve;be=(o[1344+(t*960|0)+356>>2]^se)&ve;D=(o[1344+(t*960|0)+320>>2]^D)&ve^D;o[a>>2]=D;P=ie^P;o[M>>2]=P;x=te^x;o[C>>2]=x;O=Y^O;o[T>>2]=O;R=V^R;o[k>>2]=R;S=G^S;o[E>>2]=S;w=q^w;o[A>>2]=w;Z=j^Z;o[f>>2]=Z;c=fe^c;o[b>>2]=c;se=be^se;o[v>>2]=se;be=Ss((n^4)&255|0,0,-1,-1)|0;be=Cs(be|0,I|0,63)|0;be=0-be|0;fe=(o[1344+(t*960|0)+364>>2]^_e)&be;j=(o[1344+(t*960|0)+368>>2]^me)&be;q=(o[1344+(t*960|0)+372>>2]^ge)&be;G=(o[1344+(t*960|0)+376>>2]^pe)&be;V=(o[1344+(t*960|0)+380>>2]^he)&be;Y=(o[1344+(t*960|0)+384>>2]^de)&be;te=(o[1344+(t*960|0)+388>>2]^le)&be;ie=(o[1344+(t*960|0)+392>>2]^ue)&be;ve=(o[1344+(t*960|0)+396>>2]^ce)&be;ye=(o[1344+(t*960|0)+360>>2]^ye)&be^ye;o[e>>2]=ye;_e=fe^_e;o[r>>2]=_e;me=j^me;o[u>>2]=me;ge=q^ge;o[l>>2]=ge;pe=G^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;le=te^le;o[g>>2]=le;ue=ie^ue;o[m>>2]=ue;ce=ve^ce;o[_>>2]=ce;ve=(o[1344+(t*960|0)+404>>2]^oe)&be;ie=(o[1344+(t*960|0)+408>>2]^re)&be;te=(o[1344+(t*960|0)+412>>2]^ee)&be;Y=(o[1344+(t*960|0)+416>>2]^J)&be;V=(o[1344+(t*960|0)+420>>2]^W)&be;G=(o[1344+(t*960|0)+424>>2]^H)&be;q=(o[1344+(t*960|0)+428>>2]^K)&be;j=(o[1344+(t*960|0)+432>>2]^L)&be;fe=(o[1344+(t*960|0)+436>>2]^N)&be;ae=(o[1344+(t*960|0)+400>>2]^ae)&be^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=G^H;o[z>>2]=H;K=q^K;o[F>>2]=K;L=j^L;o[U>>2]=L;N=fe^N;o[B>>2]=N;fe=(o[1344+(t*960|0)+444>>2]^P)&be;j=(o[1344+(t*960|0)+448>>2]^x)&be;q=(o[1344+(t*960|0)+452>>2]^O)&be;G=(o[1344+(t*960|0)+456>>2]^R)&be;V=(o[1344+(t*960|0)+460>>2]^S)&be;Y=(o[1344+(t*960|0)+464>>2]^w)&be;te=(o[1344+(t*960|0)+468>>2]^Z)&be;ie=(o[1344+(t*960|0)+472>>2]^c)&be;ve=(o[1344+(t*960|0)+476>>2]^se)&be;D=(o[1344+(t*960|0)+440>>2]^D)&be^D;o[a>>2]=D;P=fe^P;o[M>>2]=P;x=j^x;o[C>>2]=x;O=q^O;o[T>>2]=O;R=G^R;o[k>>2]=R;S=V^S;o[E>>2]=S;w=Y^w;o[A>>2]=w;Z=te^Z;o[f>>2]=Z;c=ie^c;o[b>>2]=c;se=ve^se;o[v>>2]=se;ve=Ss((n^5)&255|0,0,-1,-1)|0;ve=Cs(ve|0,I|0,63)|0;ve=0-ve|0;ie=(o[1344+(t*960|0)+484>>2]^_e)&ve;te=(o[1344+(t*960|0)+488>>2]^me)&ve;Y=(o[1344+(t*960|0)+492>>2]^ge)&ve;V=(o[1344+(t*960|0)+496>>2]^pe)&ve;G=(o[1344+(t*960|0)+500>>2]^he)&ve;q=(o[1344+(t*960|0)+504>>2]^de)&ve;j=(o[1344+(t*960|0)+508>>2]^le)&ve;fe=(o[1344+(t*960|0)+512>>2]^ue)&ve;be=(o[1344+(t*960|0)+516>>2]^ce)&ve;ye=(o[1344+(t*960|0)+480>>2]^ye)&ve^ye;o[e>>2]=ye;_e=ie^_e;o[r>>2]=_e;me=te^me;o[u>>2]=me;ge=Y^ge;o[l>>2]=ge;pe=V^pe;o[d>>2]=pe;he=G^he;o[h>>2]=he;de=q^de;o[p>>2]=de;le=j^le;o[g>>2]=le;ue=fe^ue;o[m>>2]=ue;ce=be^ce;o[_>>2]=ce;be=(o[1344+(t*960|0)+524>>2]^oe)&ve;fe=(o[1344+(t*960|0)+528>>2]^re)&ve;j=(o[1344+(t*960|0)+532>>2]^ee)&ve;q=(o[1344+(t*960|0)+536>>2]^J)&ve;G=(o[1344+(t*960|0)+540>>2]^W)&ve;V=(o[1344+(t*960|0)+544>>2]^H)&ve;Y=(o[1344+(t*960|0)+548>>2]^K)&ve;te=(o[1344+(t*960|0)+552>>2]^L)&ve;ie=(o[1344+(t*960|0)+556>>2]^N)&ve;ae=(o[1344+(t*960|0)+520>>2]^ae)&ve^ae;o[i>>2]=ae;oe=be^oe;o[s>>2]=oe;re=fe^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=q^J;o[X>>2]=J;W=G^W;o[Q>>2]=W;H=V^H;o[z>>2]=H;K=Y^K;o[F>>2]=K;L=te^L;o[U>>2]=L;N=ie^N;o[B>>2]=N;ie=(o[1344+(t*960|0)+564>>2]^P)&ve;te=(o[1344+(t*960|0)+568>>2]^x)&ve;Y=(o[1344+(t*960|0)+572>>2]^O)&ve;V=(o[1344+(t*960|0)+576>>2]^R)&ve;G=(o[1344+(t*960|0)+580>>2]^S)&ve;q=(o[1344+(t*960|0)+584>>2]^w)&ve;j=(o[1344+(t*960|0)+588>>2]^Z)&ve;fe=(o[1344+(t*960|0)+592>>2]^c)&ve;be=(o[1344+(t*960|0)+596>>2]^se)&ve;D=(o[1344+(t*960|0)+560>>2]^D)&ve^D;o[a>>2]=D;P=ie^P;o[M>>2]=P;x=te^x;o[C>>2]=x;O=Y^O;o[T>>2]=O;R=V^R;o[k>>2]=R;S=G^S;o[E>>2]=S;w=q^w;o[A>>2]=w;Z=j^Z;o[f>>2]=Z;c=fe^c;o[b>>2]=c;se=be^se;o[v>>2]=se;be=Ss((n^6)&255|0,0,-1,-1)|0;be=Cs(be|0,I|0,63)|0;be=0-be|0;fe=(o[1344+(t*960|0)+604>>2]^_e)&be;j=(o[1344+(t*960|0)+608>>2]^me)&be;q=(o[1344+(t*960|0)+612>>2]^ge)&be;G=(o[1344+(t*960|0)+616>>2]^pe)&be;V=(o[1344+(t*960|0)+620>>2]^he)&be;Y=(o[1344+(t*960|0)+624>>2]^de)&be;te=(o[1344+(t*960|0)+628>>2]^le)&be;ie=(o[1344+(t*960|0)+632>>2]^ue)&be;ve=(o[1344+(t*960|0)+636>>2]^ce)&be;ye=(o[1344+(t*960|0)+600>>2]^ye)&be^ye;o[e>>2]=ye;_e=fe^_e;o[r>>2]=_e;me=j^me;o[u>>2]=me;ge=q^ge;o[l>>2]=ge;pe=G^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;le=te^le;o[g>>2]=le;ue=ie^ue;o[m>>2]=ue;ce=ve^ce;o[_>>2]=ce;ve=(o[1344+(t*960|0)+644>>2]^oe)&be;ie=(o[1344+(t*960|0)+648>>2]^re)&be;te=(o[1344+(t*960|0)+652>>2]^ee)&be;Y=(o[1344+(t*960|0)+656>>2]^J)&be;V=(o[1344+(t*960|0)+660>>2]^W)&be;G=(o[1344+(t*960|0)+664>>2]^H)&be;q=(o[1344+(t*960|0)+668>>2]^K)&be;j=(o[1344+(t*960|0)+672>>2]^L)&be;fe=(o[1344+(t*960|0)+676>>2]^N)&be;ae=(o[1344+(t*960|0)+640>>2]^ae)&be^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=G^H;o[z>>2]=H;K=q^K;o[F>>2]=K;L=j^L;o[U>>2]=L;N=fe^N;o[B>>2]=N;fe=(o[1344+(t*960|0)+684>>2]^P)&be;j=(o[1344+(t*960|0)+688>>2]^x)&be;q=(o[1344+(t*960|0)+692>>2]^O)&be;G=(o[1344+(t*960|0)+696>>2]^R)&be;V=(o[1344+(t*960|0)+700>>2]^S)&be;Y=(o[1344+(t*960|0)+704>>2]^w)&be;te=(o[1344+(t*960|0)+708>>2]^Z)&be;ie=(o[1344+(t*960|0)+712>>2]^c)&be;ve=(o[1344+(t*960|0)+716>>2]^se)&be;D=(o[1344+(t*960|0)+680>>2]^D)&be^D;o[a>>2]=D;P=fe^P;o[M>>2]=P;x=j^x;o[C>>2]=x;O=q^O;o[T>>2]=O;R=G^R;o[k>>2]=R;S=V^S;o[E>>2]=S;w=Y^w;o[A>>2]=w;Z=te^Z;o[f>>2]=Z;c=ie^c;o[b>>2]=c;se=ve^se;o[v>>2]=se;ve=Ss((n^7)&255|0,0,-1,-1)|0;ve=Cs(ve|0,I|0,63)|0;ve=0-ve|0;ie=(o[1344+(t*960|0)+724>>2]^_e)&ve;te=(o[1344+(t*960|0)+728>>2]^me)&ve;Y=(o[1344+(t*960|0)+732>>2]^ge)&ve;V=(o[1344+(t*960|0)+736>>2]^pe)&ve;G=(o[1344+(t*960|0)+740>>2]^he)&ve;q=(o[1344+(t*960|0)+744>>2]^de)&ve;j=(o[1344+(t*960|0)+748>>2]^le)&ve;fe=(o[1344+(t*960|0)+752>>2]^ue)&ve;be=(o[1344+(t*960|0)+756>>2]^ce)&ve;ye=(o[1344+(t*960|0)+720>>2]^ye)&ve^ye;o[e>>2]=ye;_e=ie^_e;o[r>>2]=_e;me=te^me;o[u>>2]=me;ge=Y^ge;o[l>>2]=ge;pe=V^pe;o[d>>2]=pe;he=G^he;o[h>>2]=he;de=q^de;o[p>>2]=de;le=j^le;o[g>>2]=le;ue=fe^ue;o[m>>2]=ue;ce=be^ce;o[_>>2]=ce;be=(o[1344+(t*960|0)+764>>2]^oe)&ve;fe=(o[1344+(t*960|0)+768>>2]^re)&ve;j=(o[1344+(t*960|0)+772>>2]^ee)&ve;q=(o[1344+(t*960|0)+776>>2]^J)&ve;G=(o[1344+(t*960|0)+780>>2]^W)&ve;V=(o[1344+(t*960|0)+784>>2]^H)&ve;Y=(o[1344+(t*960|0)+788>>2]^K)&ve;te=(o[1344+(t*960|0)+792>>2]^L)&ve;ie=(o[1344+(t*960|0)+796>>2]^N)&ve;ae=(o[1344+(t*960|0)+760>>2]^ae)&ve^ae;o[i>>2]=ae;oe=be^oe;o[s>>2]=oe;re=fe^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=q^J;o[X>>2]=J;W=G^W;o[Q>>2]=W;H=V^H;o[z>>2]=H;K=Y^K;o[F>>2]=K;L=te^L;o[U>>2]=L;N=ie^N;o[B>>2]=N;ie=(o[1344+(t*960|0)+804>>2]^P)&ve;te=(o[1344+(t*960|0)+808>>2]^x)&ve;Y=(o[1344+(t*960|0)+812>>2]^O)&ve;V=(o[1344+(t*960|0)+816>>2]^R)&ve;G=(o[1344+(t*960|0)+820>>2]^S)&ve;q=(o[1344+(t*960|0)+824>>2]^w)&ve;j=(o[1344+(t*960|0)+828>>2]^Z)&ve;fe=(o[1344+(t*960|0)+832>>2]^c)&ve;be=(o[1344+(t*960|0)+836>>2]^se)&ve;D=(o[1344+(t*960|0)+800>>2]^D)&ve^D;o[a>>2]=D;P=ie^P;o[M>>2]=P;x=te^x;o[C>>2]=x;O=Y^O;o[T>>2]=O;R=V^R;o[k>>2]=R;S=G^S;o[E>>2]=S;w=q^w;o[A>>2]=w;Z=j^Z;o[f>>2]=Z;c=fe^c;o[b>>2]=c;se=be^se;o[v>>2]=se;be=Ss((n^8)&255|0,0,-1,-1)|0;be=Cs(be|0,I|0,63)|0;be=0-be|0;fe=(o[1344+(t*960|0)+844>>2]^_e)&be;j=(o[1344+(t*960|0)+848>>2]^me)&be;q=(o[1344+(t*960|0)+852>>2]^ge)&be;G=(o[1344+(t*960|0)+856>>2]^pe)&be;V=(o[1344+(t*960|0)+860>>2]^he)&be;Y=(o[1344+(t*960|0)+864>>2]^de)&be;n=(o[1344+(t*960|0)+868>>2]^le)&be;te=(o[1344+(t*960|0)+872>>2]^ue)&be;ie=(o[1344+(t*960|0)+876>>2]^ce)&be;ye=(o[1344+(t*960|0)+840>>2]^ye)&be^ye;o[e>>2]=ye;_e=fe^_e;o[r>>2]=_e;me=j^me;o[u>>2]=me;ge=q^ge;o[l>>2]=ge;pe=G^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;le=n^le;o[g>>2]=le;ue=te^ue;o[m>>2]=ue;ce=ie^ce;o[_>>2]=ce;ie=(o[1344+(t*960|0)+884>>2]^oe)&be;te=(o[1344+(t*960|0)+888>>2]^re)&be;n=(o[1344+(t*960|0)+892>>2]^ee)&be;Y=(o[1344+(t*960|0)+896>>2]^J)&be;V=(o[1344+(t*960|0)+900>>2]^W)&be;G=(o[1344+(t*960|0)+904>>2]^H)&be;q=(o[1344+(t*960|0)+908>>2]^K)&be;j=(o[1344+(t*960|0)+912>>2]^L)&be;fe=(o[1344+(t*960|0)+916>>2]^N)&be;ae=(o[1344+(t*960|0)+880>>2]^ae)&be^ae;o[i>>2]=ae;oe=ie^oe;o[s>>2]=oe;re=te^re;o[ne>>2]=re;ee=n^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=G^H;o[z>>2]=H;K=q^K;o[F>>2]=K;L=j^L;o[U>>2]=L;N=fe^N;o[B>>2]=N;fe=(o[1344+(t*960|0)+924>>2]^P)&be;j=(o[1344+(t*960|0)+928>>2]^x)&be;q=(o[1344+(t*960|0)+932>>2]^O)&be;G=(o[1344+(t*960|0)+936>>2]^R)&be;V=(o[1344+(t*960|0)+940>>2]^S)&be;Y=(o[1344+(t*960|0)+944>>2]^w)&be;n=(o[1344+(t*960|0)+948>>2]^Z)&be;te=(o[1344+(t*960|0)+952>>2]^c)&be;ie=(o[1344+(t*960|0)+956>>2]^se)&be;D=(o[1344+(t*960|0)+920>>2]^D)&be^D;o[a>>2]=D;P=fe^P;o[M>>2]=P;x=j^x;o[C>>2]=x;O=q^O;o[T>>2]=O;R=G^R;o[k>>2]=R;S=V^S;o[E>>2]=S;w=Y^w;o[A>>2]=w;n=n^Z;o[f>>2]=n;c=te^c;o[b>>2]=c;t=ie^se;o[v>>2]=t;se=o[r>>2]|0;ie=o[u>>2]|0;te=o[l>>2]|0;Z=o[d>>2]|0;Y=o[h>>2]|0;V=o[p>>2]|0;G=o[g>>2]|0;q=o[m>>2]|0;j=o[_>>2]|0;fe=(ae^ye)&y;o[e>>2]=fe^ye;o[r>>2]=(oe^_e)&y^_e;o[u>>2]=(re^me)&y^me;o[l>>2]=(ee^ge)&y^ge;o[d>>2]=(J^pe)&y^pe;o[h>>2]=(W^he)&y^he;o[p>>2]=(H^de)&y^de;o[g>>2]=(K^le)&y^le;o[m>>2]=(L^ue)&y^ue;o[_>>2]=(N^ce)&y^ce;o[i>>2]=fe^ae;o[s>>2]=(se^oe)&y^oe;o[ne>>2]=(ie^re)&y^re;o[$>>2]=(te^ee)&y^ee;o[X>>2]=(Z^J)&y^J;o[Q>>2]=(Y^W)&y^W;o[z>>2]=(V^H)&y^H;o[F>>2]=(G^K)&y^K;o[U>>2]=(q^L)&y^L;o[B>>2]=(j^N)&y^N;o[a>>2]=(D^0-D)&y^D;o[M>>2]=(P^0-P)&y^P;o[C>>2]=(x^0-x)&y^x;o[T>>2]=(O^0-O)&y^O;o[k>>2]=(R^0-R)&y^R;o[E>>2]=(S^0-S)&y^S;o[A>>2]=(w^0-w)&y^w;o[f>>2]=(n^0-n)&y^n;o[b>>2]=(c^0-c)&y^c;o[v>>2]=(t^0-t)&y^t;return}function hi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0,f=0,c=0;i=h;h=h+336|0;o=i+144|0;f=i+96|0;s=i+48|0;a=i;c=i+176|0;pi(n,32,t)|0;r[t>>0]=r[t>>0]&-8;n=t+31|0;r[n>>0]=r[n>>0]&63|64;li(c,t);Wr(f,c+80|0);Xr(s,c,f);Xr(a,c+40|0,f);Jr(e,a);Jr(o,s);n=e+31|0;r[n>>0]=r[n>>0]^r[o>>0]<<7&255;h=i;return}function pi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0,u=0,l=0;l=h;h=h+208|0;f=l;c=f+72|0;o[c>>2]=0;u=f;o[u>>2]=0;o[u+4>>2]=0;u=f+8|0;o[u>>2]=-205731576;o[u+4>>2]=1779033703;u=f+16|0;o[u>>2]=-2067093701;o[u+4>>2]=-1150833019;u=f+24|0;o[u>>2]=-23791573;o[u+4>>2]=1013904242;u=f+32|0;o[u>>2]=1595750129;o[u+4>>2]=-1521486534;u=f+40|0;o[u>>2]=-1377402159;o[u+4>>2]=1359893119;u=f+48|0;o[u>>2]=725511199;o[u+4>>2]=-1694144372;u=f+56|0;o[u>>2]=-79577749;o[u+4>>2]=528734635;u=f+64|0;o[u>>2]=327033209;o[u+4>>2]=1541459225;if(!e){u=1;h=l;return u|0}e:do{if(t|0){u=f+76|0;s=0;while(1){if(!((s|0)==0&t>>>0>127)){a=128-s|0;a=t>>>0>>0?t:a;if(a|0){i=0;do{r[i+s+(f+76)>>0]=r[e+i>>0]|0;i=i+1|0}while(i>>>0>>0)}s=s+a|0;o[c>>2]=s;e=e+a|0;t=t-a|0;if((s|0)==128){gi(f,u);s=f;s=Ss(o[s>>2]|0,o[s+4>>2]|0,1024,0)|0;a=f;o[a>>2]=s;o[a+4>>2]=I;o[c>>2]=0}}else{gi(f,e);s=f;s=Ss(o[s>>2]|0,o[s+4>>2]|0,1024,0)|0;a=f;o[a>>2]=s;o[a+4>>2]=I;t=t+-128|0;e=e+128|0}if(!t)break e;s=o[c>>2]|0}}}while(0);u=mi(f,n)|0;h=l;return u|0}function gi(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0;E=h;h=h+704|0;a=E+640|0;A=E;w=e+8|0;n=a;r=w;i=n+64|0;do{o[n>>2]=o[r>>2];n=n+4|0;r=r+4|0}while((n|0)<(i|0));n=0;do{y=t+(n<<3)|0;d=xs(s[y>>0]|0|0,0,56)|0;b=I;l=xs(s[y+1>>0]|0|0,0,48)|0;b=I|b;p=xs(s[y+2>>0]|0|0,0,40)|0;b=b|I|(s[y+3>>0]|0);g=xs(s[y+4>>0]|0|0,0,24)|0;b=b|I;m=xs(s[y+5>>0]|0|0,0,16)|0;b=b|I;_=xs(s[y+6>>0]|0|0,0,8)|0;v=A+(n<<3)|0;o[v>>2]=l|d|p|g|m|_|(s[y+7>>0]|0);o[v+4>>2]=b|I;n=n+1|0}while((n|0)!=16);i=A;n=16;r=o[i>>2]|0;i=o[i+4>>2]|0;do{u=A+(n+-2<<3)|0;S=o[u>>2]|0;u=o[u+4>>2]|0;l=Cs(S|0,u|0,19)|0;p=I;d=xs(S|0,u|0,45)|0;p=p|I;f=Cs(S|0,u|0,61)|0;t=I;c=xs(S|0,u|0,3)|0;t=t|I;u=Cs(S|0,u|0,6)|0;p=t^I^p;t=A+(n+-7<<3)|0;S=o[t>>2]|0;t=o[t+4>>2]|0;y=A+(n+-15<<3)|0;R=r;r=o[y>>2]|0;k=i;i=o[y+4>>2]|0;y=Cs(r|0,i|0,1)|0;b=I;v=xs(r|0,i|0,63)|0;b=b|I;g=Cs(r|0,i|0,8)|0;T=I;m=xs(r|0,i|0,56)|0;T=T|I;_=Cs(r|0,i|0,7)|0;b=T^I^b;t=Ss(R|0,k|0,S|0,t|0)|0;p=Ss(t|0,I|0,(f|c)^u^(l|d)|0,p|0)|0;b=Ss(p|0,I|0,(g|m)^_^(y|v)|0,b|0)|0;v=A+(n<<3)|0;o[v>>2]=b;o[v+4>>2]=I;n=n+1|0}while((n|0)!=80);l=a+56|0;i=a+32|0;f=a+48|0;c=a+40|0;p=a;m=a+8|0;y=a+16|0;v=a+24|0;n=0;r=o[i>>2]|0;i=o[i+4>>2]|0;t=o[f>>2]|0;a=o[c>>2]|0;f=o[f+4>>2]|0;c=o[c+4>>2]|0;u=o[l>>2]|0;l=o[l+4>>2]|0;d=o[p>>2]|0;p=o[p+4>>2]|0;g=o[m>>2]|0;m=o[m+4>>2]|0;_=o[y>>2]|0;y=o[y+4>>2]|0;b=o[v>>2]|0;v=o[v+4>>2]|0;do{k=Cs(r|0,i|0,14)|0;Q=I;R=xs(r|0,i|0,50)|0;Q=Q|I;Y=Cs(r|0,i|0,18)|0;K=I;L=xs(r|0,i|0,46)|0;K=Q^(K|I);Q=Cs(r|0,i|0,41)|0;V=I;B=xs(r|0,i|0,23)|0;V=K^(V|I);K=32064+(n<<3)|0;x=A+(n<<3)|0;N=o[x>>2]|0;x=o[x+4>>2]|0;K=Ss(o[K>>2]|0,o[K+4>>2]|0,u|0,l|0)|0;V=Ss(K|0,I|0,(k|R)^(Y|L)^(Q|B)|0,V|0)|0;x=Ss(V|0,I|0,N|0,x|0)|0;x=Ss(x|0,I|0,(a^t)&r^t|0,(c^f)&i^f|0)|0;N=I;V=Cs(d|0,p|0,28)|0;B=I;Q=xs(d|0,p|0,36)|0;B=B|I;L=Cs(d|0,p|0,34)|0;Y=I;R=xs(d|0,p|0,30)|0;Y=B^(Y|I);B=Cs(d|0,p|0,39)|0;k=I;K=xs(d|0,p|0,25)|0;k=Y^(k|I);Y=Ss(b|0,v|0,x|0,N|0)|0;q=I;N=Ss((g|d)&_|g&d|0,(m|p)&y|m&p|0,x|0,N|0)|0;k=Ss(N|0,I|0,(V|Q)^(L|R)^(B|K)|0,k|0)|0;K=I;B=Cs(Y|0,q|0,14)|0;R=I;L=xs(Y|0,q|0,50)|0;R=R|I;Q=Cs(Y|0,q|0,18)|0;V=I;N=xs(Y|0,q|0,46)|0;V=R^(V|I);R=Cs(Y|0,q|0,41)|0;x=I;T=xs(Y|0,q|0,23)|0;x=V^(x|I);V=n|1;H=32064+(V<<3)|0;P=o[H>>2]|0;H=o[H+4>>2]|0;V=A+(V<<3)|0;j=o[V>>2]|0;V=o[V+4>>2]|0;M=Ss(Y&(a^r)^a|0,q&(c^i)^c|0,t|0,f|0)|0;H=Ss(M|0,I|0,P|0,H|0)|0;V=Ss(H|0,I|0,j|0,V|0)|0;x=Ss(V|0,I|0,(B|L)^(Q|N)^(R|T)|0,x|0)|0;T=I;R=Cs(k|0,K|0,28)|0;N=I;Q=xs(k|0,K|0,36)|0;N=N|I;L=Cs(k|0,K|0,34)|0;B=I;V=xs(k|0,K|0,30)|0;B=N^(B|I);N=Cs(k|0,K|0,39)|0;j=I;H=xs(k|0,K|0,25)|0;j=Ss((R|Q)^(L|V)^(N|H)|0,B^(j|I)|0,(k|d)&g|k&d|0,(K|p)&m|K&p|0)|0;B=I;H=Ss(x|0,T|0,_|0,y|0)|0;N=I;T=Ss(j|0,B|0,x|0,T|0)|0;x=I;B=Cs(H|0,N|0,14)|0;j=I;V=xs(H|0,N|0,50)|0;j=j|I;L=Cs(H|0,N|0,18)|0;Q=I;R=xs(H|0,N|0,46)|0;Q=j^(Q|I);j=Cs(H|0,N|0,41)|0;P=I;M=xs(H|0,N|0,23)|0;P=Q^(P|I);Q=n|2;F=32064+(Q<<3)|0;Q=A+(Q<<3)|0;D=o[Q>>2]|0;Q=o[Q+4>>2]|0;F=Ss(o[F>>2]|0,o[F+4>>2]|0,a|0,c|0)|0;Q=Ss(F|0,I|0,D|0,Q|0)|0;Q=Ss(Q|0,I|0,H&(Y^r)^r|0,N&(q^i)^i|0)|0;P=Ss(Q|0,I|0,(B|V)^(L|R)^(j|M)|0,P|0)|0;M=I;j=Cs(T|0,x|0,28)|0;R=I;L=xs(T|0,x|0,36)|0;R=R|I;V=Cs(T|0,x|0,34)|0;B=I;Q=xs(T|0,x|0,30)|0;B=R^(B|I);R=Cs(T|0,x|0,39)|0;D=I;F=xs(T|0,x|0,25)|0;D=Ss((j|L)^(V|Q)^(R|F)|0,B^(D|I)|0,(T|k)&d|T&k|0,(x|K)&p|x&K|0)|0;B=I;F=Ss(P|0,M|0,g|0,m|0)|0;R=I;M=Ss(D|0,B|0,P|0,M|0)|0;P=I;B=Cs(F|0,R|0,14)|0;D=I;Q=xs(F|0,R|0,50)|0;D=D|I;V=Cs(F|0,R|0,18)|0;L=I;j=xs(F|0,R|0,46)|0;L=D^(L|I);D=Cs(F|0,R|0,41)|0;O=I;C=xs(F|0,R|0,23)|0;O=L^(O|I);L=n|3;U=32064+(L<<3)|0;L=A+(L<<3)|0;W=o[L>>2]|0;L=o[L+4>>2]|0;U=Ss(o[U>>2]|0,o[U+4>>2]|0,r|0,i|0)|0;L=Ss(U|0,I|0,W|0,L|0)|0;L=Ss(L|0,I|0,F&(H^Y)^Y|0,R&(N^q)^q|0)|0;O=Ss(L|0,I|0,(B|Q)^(V|j)^(D|C)|0,O|0)|0;C=I;D=Cs(M|0,P|0,28)|0;j=I;V=xs(M|0,P|0,36)|0;j=j|I;Q=Cs(M|0,P|0,34)|0;B=I;L=xs(M|0,P|0,30)|0;B=j^(B|I);j=Cs(M|0,P|0,39)|0;W=I;U=xs(M|0,P|0,25)|0;W=Ss((D|V)^(Q|L)^(j|U)|0,B^(W|I)|0,(M|T)&k|M&T|0,(P|x)&K|P&x|0)|0;B=I;U=Ss(O|0,C|0,d|0,p|0)|0;j=I;C=Ss(W|0,B|0,O|0,C|0)|0;O=I;B=Cs(U|0,j|0,14)|0;W=I;L=xs(U|0,j|0,50)|0;W=W|I;Q=Cs(U|0,j|0,18)|0;V=I;D=xs(U|0,j|0,46)|0;V=W^(V|I);W=Cs(U|0,j|0,41)|0;z=I;S=xs(U|0,j|0,23)|0;z=V^(z|I);V=n|4;X=32064+(V<<3)|0;V=A+(V<<3)|0;G=o[V>>2]|0;V=o[V+4>>2]|0;q=Ss(o[X>>2]|0,o[X+4>>2]|0,Y|0,q|0)|0;V=Ss(q|0,I|0,G|0,V|0)|0;V=Ss(V|0,I|0,U&(F^H)^H|0,j&(R^N)^N|0)|0;z=Ss(V|0,I|0,(B|L)^(Q|D)^(W|S)|0,z|0)|0;S=I;W=Cs(C|0,O|0,28)|0;D=I;Q=xs(C|0,O|0,36)|0;D=D|I;L=Cs(C|0,O|0,34)|0;B=I;V=xs(C|0,O|0,30)|0;B=D^(B|I);D=Cs(C|0,O|0,39)|0;G=I;q=xs(C|0,O|0,25)|0;G=Ss((W|Q)^(L|V)^(D|q)|0,B^(G|I)|0,(C|M)&T|C&M|0,(O|P)&x|O&P|0)|0;B=I;u=Ss(z|0,S|0,k|0,K|0)|0;l=I;b=Ss(G|0,B|0,z|0,S|0)|0;v=I;S=Cs(u|0,l|0,14)|0;z=I;B=xs(u|0,l|0,50)|0;z=z|I;G=Cs(u|0,l|0,18)|0;K=I;k=xs(u|0,l|0,46)|0;K=z^(K|I);z=Cs(u|0,l|0,41)|0;q=I;D=xs(u|0,l|0,23)|0;q=K^(q|I);K=n|5;V=32064+(K<<3)|0;K=A+(K<<3)|0;L=o[K>>2]|0;K=o[K+4>>2]|0;N=Ss(o[V>>2]|0,o[V+4>>2]|0,H|0,N|0)|0;K=Ss(N|0,I|0,L|0,K|0)|0;K=Ss(K|0,I|0,u&(U^F)^F|0,l&(j^R)^R|0)|0;q=Ss(K|0,I|0,(S|B)^(G|k)^(z|D)|0,q|0)|0;D=I;z=Cs(b|0,v|0,28)|0;k=I;G=xs(b|0,v|0,36)|0;k=k|I;B=Cs(b|0,v|0,34)|0;S=I;K=xs(b|0,v|0,30)|0;S=k^(S|I);k=Cs(b|0,v|0,39)|0;L=I;N=xs(b|0,v|0,25)|0;L=Ss((z|G)^(B|K)^(k|N)|0,S^(L|I)|0,(b|C)&M|b&C|0,(v|O)&P|v&O|0)|0;S=I;t=Ss(q|0,D|0,T|0,x|0)|0;f=I;_=Ss(L|0,S|0,q|0,D|0)|0;y=I;D=Cs(t|0,f|0,14)|0;q=I;S=xs(t|0,f|0,50)|0;q=q|I;L=Cs(t|0,f|0,18)|0;x=I;T=xs(t|0,f|0,46)|0;x=q^(x|I);q=Cs(t|0,f|0,41)|0;N=I;k=xs(t|0,f|0,23)|0;N=x^(N|I);x=n|6;K=32064+(x<<3)|0;x=A+(x<<3)|0;B=o[x>>2]|0;x=o[x+4>>2]|0;R=Ss(o[K>>2]|0,o[K+4>>2]|0,F|0,R|0)|0;x=Ss(R|0,I|0,B|0,x|0)|0;x=Ss(x|0,I|0,t&(u^U)^U|0,f&(l^j)^j|0)|0;N=Ss(x|0,I|0,(D|S)^(L|T)^(q|k)|0,N|0)|0;k=I;q=Cs(_|0,y|0,28)|0;T=I;L=xs(_|0,y|0,36)|0;T=T|I;S=Cs(_|0,y|0,34)|0;D=I;x=xs(_|0,y|0,30)|0;D=T^(D|I);T=Cs(_|0,y|0,39)|0;B=I;R=xs(_|0,y|0,25)|0;B=Ss((q|L)^(S|x)^(T|R)|0,D^(B|I)|0,(_|b)&C|_&b|0,(y|v)&O|y&v|0)|0;D=I;a=Ss(N|0,k|0,M|0,P|0)|0;c=I;g=Ss(B|0,D|0,N|0,k|0)|0;m=I;k=Cs(a|0,c|0,14)|0;N=I;D=xs(a|0,c|0,50)|0;N=N|I;B=Cs(a|0,c|0,18)|0;P=I;M=xs(a|0,c|0,46)|0;P=N^(P|I);N=Cs(a|0,c|0,41)|0;R=I;T=xs(a|0,c|0,23)|0;R=P^(R|I);P=n|7;x=32064+(P<<3)|0;P=A+(P<<3)|0;S=o[P>>2]|0;P=o[P+4>>2]|0;x=Ss(U|0,j|0,o[x>>2]|0,o[x+4>>2]|0)|0;P=Ss(x|0,I|0,S|0,P|0)|0;P=Ss(P|0,I|0,a&(t^u)^u|0,c&(f^l)^l|0)|0;R=Ss(P|0,I|0,(k|D)^(B|M)^(N|T)|0,R|0)|0;T=I;N=Cs(g|0,m|0,28)|0;M=I;B=xs(g|0,m|0,36)|0;M=M|I;D=Cs(g|0,m|0,34)|0;k=I;P=xs(g|0,m|0,30)|0;k=M^(k|I);M=Cs(g|0,m|0,39)|0;S=I;x=xs(g|0,m|0,25)|0;S=Ss((N|B)^(D|P)^(M|x)|0,k^(S|I)|0,(g|_)&b|g&_|0,(m|y)&v|m&y|0)|0;k=I;r=Ss(R|0,T|0,C|0,O|0)|0;i=I;d=Ss(S|0,k|0,R|0,T|0)|0;p=I;n=n+8|0}while(n>>>0<80);Y=w;Y=Ss(d|0,p|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;X=w;o[X>>2]=Y;o[X+4>>2]=I;X=e+16|0;Y=X;Y=Ss(g|0,m|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=I;X=e+24|0;Y=X;Y=Ss(_|0,y|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=I;X=e+32|0;Y=X;Y=Ss(b|0,v|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=I;X=e+40|0;Y=X;Y=Ss(r|0,i|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=I;X=e+48|0;Y=X;Y=Ss(a|0,c|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=I;X=e+56|0;Y=X;Y=Ss(t|0,f|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=I;X=e+64|0;Y=X;Y=Ss(u|0,l|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=I;h=E;return}function mi(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0;if((e|0)==0|(t|0)==0){s=1;return s|0}s=e+72|0;n=o[s>>2]|0;if(n>>>0>127){s=1;return s|0}a=xs(n|0,0,3)|0;i=e;a=Ss(o[i>>2]|0,o[i+4>>2]|0,a|0,I|0)|0;i=e;o[i>>2]=a;o[i+4>>2]=I;i=e+76|0;o[s>>2]=n+1;r[e+76+n>>0]=-128;n=o[s>>2]|0;if(n>>>0>112){if(n>>>0<128)do{o[s>>2]=n+1;r[e+76+n>>0]=0;n=o[s>>2]|0}while(n>>>0<128);gi(e,i);o[s>>2]=0;n=0}do{o[s>>2]=n+1;r[e+76+n>>0]=0;n=o[s>>2]|0}while(n>>>0<120);s=e;a=o[s>>2]|0;s=o[s+4>>2]|0;n=Cs(a|0,s|0,56)|0;r[e+196>>0]=n;n=Cs(a|0,s|0,48)|0;r[e+197>>0]=n;n=Cs(a|0,s|0,40)|0;r[e+198>>0]=n;r[e+199>>0]=s;n=Cs(a|0,s|0,24)|0;r[e+200>>0]=n;n=Cs(a|0,s|0,16)|0;r[e+201>>0]=n;s=Cs(a|0,s|0,8)|0;r[e+202>>0]=s;r[e+203>>0]=a;gi(e,i);a=e+8|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+1>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+2>>0]=s;r[t+3>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+4>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+5>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+6>>0]=s;r[t+7>>0]=o[a>>2];a=e+16|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+8>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+9>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+10>>0]=s;r[t+11>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+12>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+13>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+14>>0]=s;r[t+15>>0]=o[a>>2];a=e+24|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+16>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+17>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+18>>0]=s;r[t+19>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+20>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+21>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+22>>0]=s;r[t+23>>0]=o[a>>2];a=e+32|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+24>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+25>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+26>>0]=s;r[t+27>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+28>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+29>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+30>>0]=s;r[t+31>>0]=o[a>>2];a=e+40|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+32>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+33>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+34>>0]=s;r[t+35>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+36>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+37>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+38>>0]=s;r[t+39>>0]=o[a>>2];a=e+48|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+40>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+41>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+42>>0]=s;r[t+43>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+44>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+45>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+46>>0]=s;r[t+47>>0]=o[a>>2];a=e+56|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+48>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+49>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+50>>0]=s;r[t+51>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+52>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+53>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+54>>0]=s;r[t+55>>0]=o[a>>2];a=e+64|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+56>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+57>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+58>>0]=s;r[t+59>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+60>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+61>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+62>>0]=s;r[t+63>>0]=o[a>>2];a=0;return a|0}function _i(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0;S=h;h=h+768|0;_=S+240|0;y=S+192|0;b=S+144|0;A=S+96|0;w=S+32|0;E=S;d=S+272|0;p=S+600|0;g=S+480|0;if((s[e+63>>0]|0)>31){E=0;h=S;return E|0}if(ui(p,i)|0){E=0;h=S;return E|0}m=d+72|0;o[m>>2]=0;v=d;o[v>>2]=0;o[v+4>>2]=0;v=d+8|0;o[v>>2]=-205731576;o[v+4>>2]=1779033703;v=d+16|0;o[v>>2]=-2067093701;o[v+4>>2]=-1150833019;v=d+24|0;o[v>>2]=-23791573;o[v+4>>2]=1013904242;v=d+32|0;o[v>>2]=1595750129;o[v+4>>2]=-1521486534;v=d+40|0;o[v>>2]=-1377402159;o[v+4>>2]=1359893119;v=d+48|0;o[v>>2]=725511199;o[v+4>>2]=-1694144372;v=d+56|0;o[v>>2]=-79577749;o[v+4>>2]=528734635;v=d+64|0;o[v>>2]=327033209;o[v+4>>2]=1541459225;v=d+76|0;r[d+76>>0]=r[e>>0]|0;r[d+77>>0]=r[e+1>>0]|0;r[d+78>>0]=r[e+2>>0]|0;r[d+79>>0]=r[e+3>>0]|0;r[d+80>>0]=r[e+4>>0]|0;r[d+81>>0]=r[e+5>>0]|0;r[d+82>>0]=r[e+6>>0]|0;r[d+83>>0]=r[e+7>>0]|0;r[d+84>>0]=r[e+8>>0]|0;r[d+85>>0]=r[e+9>>0]|0;r[d+86>>0]=r[e+10>>0]|0;r[d+87>>0]=r[e+11>>0]|0;r[d+88>>0]=r[e+12>>0]|0;r[d+89>>0]=r[e+13>>0]|0;r[d+90>>0]=r[e+14>>0]|0;r[d+91>>0]=r[e+15>>0]|0;r[d+92>>0]=r[e+16>>0]|0;r[d+93>>0]=r[e+17>>0]|0;r[d+94>>0]=r[e+18>>0]|0;r[d+95>>0]=r[e+19>>0]|0;r[d+96>>0]=r[e+20>>0]|0;r[d+97>>0]=r[e+21>>0]|0;r[d+98>>0]=r[e+22>>0]|0;r[d+99>>0]=r[e+23>>0]|0;r[d+100>>0]=r[e+24>>0]|0;r[d+101>>0]=r[e+25>>0]|0;r[d+102>>0]=r[e+26>>0]|0;r[d+103>>0]=r[e+27>>0]|0;r[d+104>>0]=r[e+28>>0]|0;r[d+105>>0]=r[e+29>>0]|0;r[d+106>>0]=r[e+30>>0]|0;r[d+107>>0]=r[e+31>>0]|0;o[m>>2]=32;e:do{if(i|0?(c=o[m>>2]|0,c>>>0<=128):0){a=32;while(1){if(!((c|0)==0&a>>>0>127)){l=128-c|0;l=a>>>0>>0?a:l;if(l|0){u=0;do{r[u+c+(d+76)>>0]=r[i+u>>0]|0;u=u+1|0}while(u>>>0>>0)}u=c+l|0;o[m>>2]=u;i=i+l|0;a=a-l|0;if((u|0)==128){gi(d,v);u=d;u=Ss(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;l=d;o[l>>2]=u;o[l+4>>2]=I;o[m>>2]=0}}else{gi(d,i);u=d;u=Ss(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;l=d;o[l>>2]=u;o[l+4>>2]=I;a=a+-128|0;i=i+128|0}if(!a)break e;c=o[m>>2]|0}}}while(0);e:do{if(t|0?(f=o[m>>2]|0,!((n|0)==0|f>>>0>128)):0)while(1){if(!((f|0)==0&n>>>0>127)){i=128-f|0;i=n>>>0>>0?n:i;if(i|0){a=0;do{r[a+f+(d+76)>>0]=r[t+a>>0]|0;a=a+1|0}while(a>>>0>>0)}l=f+i|0;o[m>>2]=l;t=t+i|0;n=n-i|0;if((l|0)==128){gi(d,v);u=d;u=Ss(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;l=d;o[l>>2]=u;o[l+4>>2]=I;o[m>>2]=0}}else{gi(d,t);u=d;u=Ss(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;l=d;o[l>>2]=u;o[l+4>>2]=I;n=n+-128|0;t=t+128|0}if(!n)break e;f=o[m>>2]|0}}while(0);mi(d,w)|0;ei(w);ri(g,w,p,e+32|0);Wr(y,g+80|0);Xr(b,g,y);Xr(A,g+40|0,y);Jr(E,A);Jr(_,b);A=E+31|0;w=r[A>>0]^r[_>>0]<<7&255;r[A>>0]=w;E=(r[e+1>>0]^r[E+1>>0]|r[e>>0]^r[E>>0]|r[e+2>>0]^r[E+2>>0]|r[e+3>>0]^r[E+3>>0]|r[e+4>>0]^r[E+4>>0]|r[e+5>>0]^r[E+5>>0]|r[e+6>>0]^r[E+6>>0]|r[e+7>>0]^r[E+7>>0]|r[e+8>>0]^r[E+8>>0]|r[e+9>>0]^r[E+9>>0]|r[e+10>>0]^r[E+10>>0]|r[e+11>>0]^r[E+11>>0]|r[e+12>>0]^r[E+12>>0]|r[e+13>>0]^r[E+13>>0]|r[e+14>>0]^r[E+14>>0]|r[e+15>>0]^r[E+15>>0]|r[e+16>>0]^r[E+16>>0]|r[e+17>>0]^r[E+17>>0]|r[e+18>>0]^r[E+18>>0]|r[e+19>>0]^r[E+19>>0]|r[e+20>>0]^r[E+20>>0]|r[e+21>>0]^r[E+21>>0]|r[e+22>>0]^r[E+22>>0]|r[e+23>>0]^r[E+23>>0]|r[e+24>>0]^r[E+24>>0]|r[e+25>>0]^r[E+25>>0]|r[e+26>>0]^r[E+26>>0]|r[e+27>>0]^r[E+27>>0]|r[e+28>>0]^r[E+28>>0]|r[e+29>>0]^r[E+29>>0]|r[e+30>>0]^r[E+30>>0]|r[e+31>>0]^w)<<24>>24==0&1;h=S;return E|0}function yi(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0;D=h;h=h+672|0;w=D+272|0;S=D+224|0;k=D+176|0;R=D+128|0;P=D+304|0;O=D+64|0;C=D;p=D+512|0;x=P+72|0;o[x>>2]=0;g=P;o[g>>2]=0;o[g+4>>2]=0;g=P+8|0;m=g;o[m>>2]=-205731576;o[m+4>>2]=1779033703;m=P+16|0;_=m;o[_>>2]=-2067093701;o[_+4>>2]=-1150833019;_=P+24|0;y=_;o[y>>2]=-23791573;o[y+4>>2]=1013904242;y=P+32|0;b=y;o[b>>2]=1595750129;o[b+4>>2]=-1521486534;b=P+40|0;v=b;o[v>>2]=-1377402159;o[v+4>>2]=1359893119;v=P+48|0;A=v;o[A>>2]=725511199;o[A+4>>2]=-1694144372;A=P+56|0;E=A;o[E>>2]=-79577749;o[E+4>>2]=528734635;E=P+64|0;M=E;o[M>>2]=327033209;o[M+4>>2]=1541459225;M=P+76|0;r[P+76>>0]=r[s+32>>0]|0;r[P+77>>0]=r[s+33>>0]|0;r[P+78>>0]=r[s+34>>0]|0;r[P+79>>0]=r[s+35>>0]|0;r[P+80>>0]=r[s+36>>0]|0;r[P+81>>0]=r[s+37>>0]|0;r[P+82>>0]=r[s+38>>0]|0;r[P+83>>0]=r[s+39>>0]|0;r[P+84>>0]=r[s+40>>0]|0;r[P+85>>0]=r[s+41>>0]|0;r[P+86>>0]=r[s+42>>0]|0;r[P+87>>0]=r[s+43>>0]|0;r[P+88>>0]=r[s+44>>0]|0;r[P+89>>0]=r[s+45>>0]|0;r[P+90>>0]=r[s+46>>0]|0;r[P+91>>0]=r[s+47>>0]|0;r[P+92>>0]=r[s+48>>0]|0;r[P+93>>0]=r[s+49>>0]|0;r[P+94>>0]=r[s+50>>0]|0;r[P+95>>0]=r[s+51>>0]|0;r[P+96>>0]=r[s+52>>0]|0;r[P+97>>0]=r[s+53>>0]|0;r[P+98>>0]=r[s+54>>0]|0;r[P+99>>0]=r[s+55>>0]|0;r[P+100>>0]=r[s+56>>0]|0;r[P+101>>0]=r[s+57>>0]|0;r[P+102>>0]=r[s+58>>0]|0;r[P+103>>0]=r[s+59>>0]|0;r[P+104>>0]=r[s+60>>0]|0;r[P+105>>0]=r[s+61>>0]|0;r[P+106>>0]=r[s+62>>0]|0;r[P+107>>0]=r[s+63>>0]|0;o[x>>2]=32;T=(t|0)==0;e:do{if(!T?(u=o[x>>2]|0,!((n|0)==0|u>>>0>128)):0){a=n;f=t;while(1){if(!((u|0)==0&a>>>0>127)){d=128-u|0;d=a>>>0>>0?a:d;if(d|0){l=0;do{r[l+u+(P+76)>>0]=r[f+l>>0]|0;l=l+1|0}while(l>>>0>>0)}l=u+d|0;o[x>>2]=l;f=f+d|0;a=a-d|0;if((l|0)==128){gi(P,M);l=P;l=Ss(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;d=P;o[d>>2]=l;o[d+4>>2]=I;o[x>>2]=0}}else{gi(P,f);l=P;l=Ss(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;d=P;o[d>>2]=l;o[d+4>>2]=I;a=a+-128|0;f=f+128|0}if(!a)break e;u=o[x>>2]|0}}}while(0);mi(P,C)|0;ei(C);li(p,C);Wr(S,p+80|0);Xr(k,p,S);Xr(R,p+40|0,S);Jr(e,R);Jr(w,k);R=e+31|0;r[R>>0]=r[R>>0]^r[w>>0]<<7&255;o[x>>2]=0;R=P;o[R>>2]=0;o[R+4>>2]=0;R=g;o[R>>2]=-205731576;o[R+4>>2]=1779033703;R=m;o[R>>2]=-2067093701;o[R+4>>2]=-1150833019;R=_;o[R>>2]=-23791573;o[R+4>>2]=1013904242;R=y;o[R>>2]=1595750129;o[R+4>>2]=-1521486534;R=b;o[R>>2]=-1377402159;o[R+4>>2]=1359893119;R=v;o[R>>2]=725511199;o[R+4>>2]=-1694144372;R=A;o[R>>2]=-79577749;o[R+4>>2]=528734635;R=E;o[R>>2]=327033209;o[R+4>>2]=1541459225;if(e|0){r[P+76>>0]=r[e>>0]|0;r[P+77>>0]=r[e+1>>0]|0;r[P+78>>0]=r[e+2>>0]|0;r[P+79>>0]=r[e+3>>0]|0;r[P+80>>0]=r[e+4>>0]|0;r[P+81>>0]=r[e+5>>0]|0;r[P+82>>0]=r[e+6>>0]|0;r[P+83>>0]=r[e+7>>0]|0;r[P+84>>0]=r[e+8>>0]|0;r[P+85>>0]=r[e+9>>0]|0;r[P+86>>0]=r[e+10>>0]|0;r[P+87>>0]=r[e+11>>0]|0;r[P+88>>0]=r[e+12>>0]|0;r[P+89>>0]=r[e+13>>0]|0;r[P+90>>0]=r[e+14>>0]|0;r[P+91>>0]=r[e+15>>0]|0;r[P+92>>0]=r[e+16>>0]|0;r[P+93>>0]=r[e+17>>0]|0;r[P+94>>0]=r[e+18>>0]|0;r[P+95>>0]=r[e+19>>0]|0;r[P+96>>0]=r[e+20>>0]|0;r[P+97>>0]=r[e+21>>0]|0;r[P+98>>0]=r[e+22>>0]|0;r[P+99>>0]=r[e+23>>0]|0;r[P+100>>0]=r[e+24>>0]|0;r[P+101>>0]=r[e+25>>0]|0;r[P+102>>0]=r[e+26>>0]|0;r[P+103>>0]=r[e+27>>0]|0;r[P+104>>0]=r[e+28>>0]|0;r[P+105>>0]=r[e+29>>0]|0;r[P+106>>0]=r[e+30>>0]|0;r[P+107>>0]=r[e+31>>0]|0;o[x>>2]=32}e:do{if(i|0?(c=o[x>>2]|0,c>>>0<=128):0){a=32;while(1){if(!((c|0)==0&a>>>0>127)){u=128-c|0;u=a>>>0>>0?a:u;if(u|0){f=0;do{r[f+c+(P+76)>>0]=r[i+f>>0]|0;f=f+1|0}while(f>>>0>>0)}R=c+u|0;o[x>>2]=R;i=i+u|0;a=a-u|0;if((R|0)==128){gi(P,M);k=P;k=Ss(o[k>>2]|0,o[k+4>>2]|0,1024,0)|0;R=P;o[R>>2]=k;o[R+4>>2]=I;o[x>>2]=0}}else{gi(P,i);k=P;k=Ss(o[k>>2]|0,o[k+4>>2]|0,1024,0)|0;R=P;o[R>>2]=k;o[R+4>>2]=I;a=a+-128|0;i=i+128|0}if(!a)break e;c=o[x>>2]|0}}}while(0);if(T){mi(P,O)|0;ei(O);P=e+32|0;ti(P,O,s,C);h=D;return}a=o[x>>2]|0;if((n|0)==0|a>>>0>128){mi(P,O)|0;ei(O);P=e+32|0;ti(P,O,s,C);h=D;return}i=a;while(1){if(!((i|0)==0&n>>>0>127)){f=128-i|0;f=n>>>0>>0?n:f;if(f|0){a=0;do{r[a+i+(P+76)>>0]=r[t+a>>0]|0;a=a+1|0}while(a>>>0>>0)}T=i+f|0;o[x>>2]=T;t=t+f|0;n=n-f|0;if((T|0)==128){gi(P,M);R=P;R=Ss(o[R>>2]|0,o[R+4>>2]|0,1024,0)|0;T=P;o[T>>2]=R;o[T+4>>2]=I;o[x>>2]=0}}else{gi(P,t);R=P;R=Ss(o[R>>2]|0,o[R+4>>2]|0,1024,0)|0;T=P;o[T>>2]=R;o[T+4>>2]=I;n=n+-128|0;t=t+128|0}if(!n)break;i=o[x>>2]|0}mi(P,O)|0;ei(O);P=e+32|0;ti(P,O,s,C);h=D;return}function bi(e,t,n){e=e|0;t=t|0;n=n|0;o[e+128>>2]=n;n=t;t=e+128|0;do{r[e>>0]=r[n>>0]|0;e=e+1|0;n=n+1|0}while((e|0)<(t|0));return}function vi(e){e=e|0;return 132}function Ai(e,t){e=e|0;t=t|0;t=qe(t,e,128)|0;return Ne(t,o[e+128>>2]|0)|0}function wi(e,t,n){e=e|0;t=t|0;n=n|0;return je(Fe(t,n,e,128)|0,n,e+128|0)|0}function Ei(e){e=e|0;var t=0,n=0,r=0,i=0;r=e+128|0;i=(o[r>>2]|0)+1|0;o[r>>2]=i;if(i&16777215){n=0;r=16777215;while(1){t=n+1|0;r=r>>>8;if(n>>>0>2|(r&i|0)==0)break;else n=t}if(n>>>0>2)return}else t=0;r=e+(t<<5)|0;n=3;while(1){Et(r,32,38116+n|0,1,e+(n<<5)|0);if((n|0)>(t|0))n=n+-1|0;else break}return}function Si(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0;s=e+128|0;n=o[s>>2]|0;r=(t>>>24)-(n>>>24)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=3}break}case 1:{i=5;break}default:{n=r&255;i=3}}if((i|0)==3){do{Et(e,32,38116,1,e);n=n+-1|0}while(n>>>0>1);i=5}if((i|0)==5){Et(e,32,38119,1,e+96|0);Et(e,32,38118,1,e+64|0);Et(e,32,38117,1,e+32|0);Et(e,32,38116,1,e);n=t&-16777216;o[s>>2]=n}r=(t>>>16)-(n>>>16)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=8}break}case 1:{i=10;break}default:{n=r&255;i=8}}if((i|0)==8){r=e+32|0;do{Et(r,32,38117,1,r);n=n+-1|0}while(n>>>0>1);i=10}if((i|0)==10){n=e+32|0;Et(n,32,38119,1,e+96|0);Et(n,32,38118,1,e+64|0);Et(n,32,38117,1,e+32|0);n=t&-65536;o[s>>2]=n}r=(t>>>8)-(n>>>8)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=13}break}case 1:{i=15;break}default:{n=r&255;i=13}}if((i|0)==13){r=e+64|0;do{Et(r,32,38118,1,r);n=n+-1|0}while(n>>>0>1);i=15}if((i|0)==15){n=e+64|0;Et(n,32,38119,1,e+96|0);Et(n,32,38118,1,e+64|0);n=t&-256;o[s>>2]=n}r=t-n|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=18}else return;break}case 1:break;default:{n=r&255;i=18}}if((i|0)==18){r=e+96|0;do{Et(r,32,38119,1,r);n=n+-1|0}while(n>>>0>1)}Et(e+96|0,32,38119,1,e+96|0);o[s>>2]=t;return}function ki(e){e=e|0;if(e>>>0>=16){e=38120;return e|0}e=o[32704+(e<<2)>>2]|0;return e|0}function Ii(e){e=e|0;e=Hs[o[37564>>2]&3](37592,e)|0;return pe((zs[o[9390]&1](37592)|0)+e|0)|0}function Ri(e,t){e=e|0;t=t|0;t=Hs[o[37564>>2]&3](37592,t)|0;t=(zs[o[9390]&1](37592)|0)+t|0;return e+(pe(t)|0)+(0-t)|0}function Ti(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,f=0;f=Hs[o[37564>>2]&3](37592,r)|0;s=(zs[o[9390]&1](37592)|0)+f|0;i=pe(s)|0;a=n+i+(0-s)|0;Qs[o[37568>>2]&3](37592,e,t,a,r,a,f,a,s)|0;ge(a,s,n)|0;return i|0}function Oi(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=me(r)|0;if((s|0)==-1){if(!i){i=-1;return i|0}o[i>>2]=7;i=-1;return i|0}else{_e(n,r,n)|0;r=s-(zs[o[9390]&1](37592)|0)|0;e=Qs[o[37576>>2]&3](37592,e,t,n,s,n,r,n,r)|0;if(!((i|0)!=0&(e|0)==-1)){i=e;return i|0}o[i>>2]=8;i=-1;return i|0}return 0}function Ci(){return 304}function xi(e){e=e|0;zr(e,304);return e|0}function Mi(e){e=e|0;zr(e,304);return 304}function Pi(e){e=e|0;return ki(o[e+300>>2]|0)|0}function Di(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0,f=0,c=0;c=h;h=h+240|0;f=c;switch(me(n)|0){case-1:{o[e+300>>2]=7;f=-1;h=c;return f|0}case 229:{_e(t,n,f)|0;do{if((r[f>>0]|0)==2){t=((s[f+1>>0]<<8|s[f+2>>0])<<8|s[f+3>>0])<<8|s[f+4>>0];n=f+5|0;bi(e,n,t);bi(e+132|0,n,t);t=e+264|0;n=t;i=f+133|0;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));if(!(yt(t,f,165,f+165|0)|0)){o[e+300>>2]=14;t=-1;break}else{o[e+296>>2]=1;t=0;break}}else{o[e+300>>2]=11;t=-1}}while(0);zr(f,229);f=t;h=c;return f|0}default:{o[e+300>>2]=11;f=-1;h=c;return f|0}}return 0}function Bi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0;a=h;h=h+176|0;i=a;switch(me(n)|0){case-1:{o[e+300>>2]=7;i=-1;h=a;return i|0}case 165:{_e(t,n,i)|0;if((r[i>>0]|0)==1){t=((s[i+1>>0]<<8|s[i+2>>0])<<8|s[i+3>>0])<<8|s[i+4>>0];n=i+5|0;bi(e,n,t);bi(e+132|0,n,t);e=e+264|0;t=i+133|0;n=e+32|0;do{r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0}while((e|0)<(n|0));e=0}else{o[e+300>>2]=11;e=-1}zr(i,165);i=e;h=a;return i|0}default:{o[e+300>>2]=11;i=-1;h=a;return i|0}}return 0}function Ni(e){e=e|0;var t=0,n=0;n=vi(e)|0;t=vi(e+132|0)|0;return Ii(n+5+t+(Ce(e+264|0)|0)|0)|0}function ji(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,f=0,c=0;c=vi(e)|0;a=e+132|0;s=vi(a)|0;f=e+264|0;s=c+5+s+(Ce(f)|0)|0;if((Ii(s)|0)>>>0>i>>>0){o[e+300>>2]=2;c=-1;return c|0}else{c=xe(Ai(a,Ai(e,Ne(Ri(r,s)|0,2)|0)|0)|0,f)|0;Ue(c,o[e+296>>2]|0)|0;c=Ti(t,n,r,s)|0;return c|0}return 0}function Ui(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,f=0,c=0;c=h;h=h+16|0;a=c;f=e+300|0;t=Oi(t,n,r,i,f)|0;if((t|0)==-1){f=-1;h=c;return f|0}s=r+t|0;t=je(r,s,a)|0;if(((o[a>>2]|0)+-1|0)>>>0>1){o[f>>2]=9;f=-1;h=c;return f|0}t=Me(wi(e+132|0,wi(e,t,s)|0,s)|0,s,e+264|0)|0;n=e+296|0;if((o[a>>2]|0)==1)o[n>>2]=1;else t=Le(t,s,n)|0;if((s|0)==(t|0)){f=i;h=c;return f|0}o[f>>2]=10;f=-1;h=c;return f|0}function Li(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0;s=h;h=h+32|0;i=s;n=_e(t,n,t)|0;if((n|0)==-1){o[e+300>>2]=7;i=-1;h=s;return i|0}Xe(t,n,zs[o[o[9395]>>2]&1](37580)|0,64,i);do{if((r[i>>0]|0)==3)if(!(o[i+12>>2]|0)){o[e+300>>2]=4;n=-1;break}else{n=Hs[o[(o[9395]|0)+12>>2]&3](37580,o[i+16>>2]|0)|0;break}else{o[e+300>>2]=3;n=-1}}while(0);i=n;h=s;return i|0}function qi(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var f=0,c=0,u=0,l=0,d=0,p=0;p=h;h=h+160|0;u=p+132|0;d=p;n=_e(t,n,t)|0;if((n|0)==-1){o[e+300>>2]=7;d=-1;h=p;return d|0}Xe(t,n,zs[o[o[9395]>>2]&1](37580)|0,64,u);e:do{if((r[u>>0]|0)==3){if(o[u+8>>2]|0?(l=u+12|0,o[l>>2]|0):0){if(a|0)o[a>>2]=o[u+4>>2];f=n+-64|0;if(!(yt(e+264|0,t,f,t+f|0)|0)){o[e+300>>2]=14;n=-1;break}c=u+16|0;if((Hs[o[(o[9395]|0)+12>>2]&3](37580,o[c>>2]|0)|0)>>>0>s>>>0){o[e+300>>2]=2;n=-1;break}n=o[u+4>>2]|0;a=e+132|0;do{if((n-(o[e+260>>2]|0)|0)<=-1)if((n-(o[e+128>>2]|0)|0)<0){o[e+300>>2]=12;n=-1;break e}else{Ps(d|0,e|0,132)|0;Si(d,n);break}else{Si(a,n);Ps(d|0,a|0,132)|0}}while(0);n=Qs[o[(o[9395]|0)+16>>2]&3](37580,d,128,t,f,o[l>>2]|0,o[c>>2]|0,i,s)|0;zr(d,132);if((n|0)==-1){o[e+300>>2]=5;n=-1;break}else{o[e+296>>2]=1;break}}o[e+300>>2]=4;n=-1}else{o[e+300>>2]=3;n=-1}}while(0);d=n;h=p;return d|0}function Fi(e){e=e|0;return pe(32)|0}function Ki(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e+300>>2]=2;n=-1;return n|0}else{n=ge(e+264|0,32,t)|0;return n|0}return 0}function Gi(e){e=e|0;return o[e+128>>2]|0}function zi(e){e=e|0;return o[e+296>>2]|0}function Hi(e){e=e|0;return pe(165)|0}function Vi(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,f=0,c=0,u=0;u=h;h=h+144|0;c=u;s=pe(165)|0;if(s>>>0>n>>>0){o[e+300>>2]=2;t=-1;h=u;return t|0}n=e+132|0;do{if((i-(o[e+260>>2]|0)|0)>-1){Si(n,i);Ps(c|0,n|0,132)|0}else{if((i-(o[e+128>>2]|0)|0)>=0){Ps(c|0,e|0,132)|0;Si(c,i);break}o[e+300>>2]=12;t=-1;h=u;return t|0}}while(0);f=t+s+-165|0;r[f>>0]=1;a=f+1|0;r[a>>0]=i>>>24;a=a+1|0;r[a>>0]=i>>>16;a=a+1|0;r[a>>0]=i>>>8;r[a+1>>0]=i;a=t+(s+-161)|0;s=t+(s+-160)|0;n=c;i=s+128|0;do{r[s>>0]=r[n>>0]|0;s=s+1|0;n=n+1|0}while((s|0)<(i|0));s=a+129|0;n=e+264|0;i=s+32|0;do{r[s>>0]=r[n>>0]|0;s=s+1|0;n=n+1|0}while((s|0)<(i|0));t=ge(f,165,t)|0;h=u;return t|0}function Qi(e){e=e|0;return ki(o[e>>2]|0)|0}function Wi(){return 100}function Yi(e){e=e|0;zr(e,100);return e|0}function Xi(e){e=e|0;zr(e,100);return 100}function Ji(e){e=e|0;return 32}function Zi(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<32){o[e>>2]=1;n=-1;return n|0}else{pt(t,e+4|0);n=0;return n|0}return 0}function $i(e){e=e|0;return pe(32)|0}function eo(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e>>2]=2;n=-1;return n|0}else{ge(e+4|0,32,t)|0;n=0;return n|0}return 0}function to(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e>>2]=15;n=-1;return n|0}else{_e(t,n,t)|0;gt(e+4|0,t,e+68|0);n=0;return n|0}return 0}function no(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;It(e+68|0,32,0,0,t,n,r,i);return 0}function ro(e){e=e|0;return pe(32)|0}function io(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var f=0,c=0;c=h;h=h+32|0;f=c;if((pe(32)|0)>>>0>a>>>0){o[e>>2]=2;f=-1;h=c;return f|0}else{It(e+68|0,32,0,0,r,i,f,32);Et(f,32,t,n,s);ge(s,32,s)|0;f=0;h=c;return f|0}return 0}function oo(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var f=0,c=0;c=h;h=h+256|0;f=c;if((pe(32)|0)>>>0>a>>>0){o[e>>2]=2;f=-1;h=c;return f|0}else{It(e+68|0,32,0,0,r,i,f,256);Et(f,256,t,n,s);ge(s,32,s)|0;f=0;h=c;return f|0}return 0}function so(){return 232}function ao(e){e=e|0;zr(e,232);return e|0}function fo(e){e=e|0;zr(e,232);return 232}function co(e){e=e|0;return ki(o[e+228>>2]|0)|0}function uo(e){e=e|0;var t=0;t=(vi(e)|0)+4|0;return Ii(t+(Pe(e+132|0)|0)|0)|0}function lo(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;a=(vi(e)|0)+4|0;s=e+132|0;a=a+(Pe(s)|0)|0;if((Ii(a)|0)>>>0>i>>>0){o[e+228>>2]=2;a=-1;return a|0}else{De(Ai(e,Ne(Ri(r,a)|0,1)|0)|0,s)|0;a=Ti(t,n,r,a)|0;return a|0}return 0}function ho(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,f=0;f=h;h=h+16|0;s=f;a=e+228|0;t=Oi(t,n,r,i,a)|0;do{if((t|0)!=-1){n=r+t|0;t=je(r,n,s)|0;if((o[s>>2]|0)!=1){o[a>>2]=9;i=-1;break}if((n|0)!=(Be(wi(e,t,n)|0,n,e+132|0)|0)){o[a>>2]=10;i=-1}}else i=-1}while(0);h=f;return i|0}function po(e){e=e|0;return 160}function go(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<160){o[e+228>>2]=1;n=-1;return n|0}else{bi(e,t,0);mt(t+128|0,e+132|0);zr(t,n);n=0;return n|0}return 0}function mo(e,t){e=e|0;t=t|0;var n=0;n=Hs[o[(o[9395]|0)+4>>2]&3](37580,t)|0;t=zs[o[o[9395]>>2]&1](37580)|0;return pe(We(o[e+128>>2]|0,n,t,64)|0)|0}function _o(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0;u=h;h=h+16|0;c=u;a=Hs[o[(o[9395]|0)+4>>2]&3](37580,n)|0;f=zs[o[o[9395]>>2]&1](37580)|0;s=e+128|0;f=We(o[s>>2]|0,a,f,64)|0;if((pe(f)|0)>>>0>i>>>0){o[e+228>>2]=2;c=-1;h=u;return c|0}a=r+(pe(f)|0)+(0-f)|0;l=Hs[o[(o[9395]|0)+4>>2]&3](37580,n)|0;i=zs[o[o[9395]>>2]&1](37580)|0;i=(Ye(3,o[s>>2]|0,l,a,c)|0)+i|0;if((Qs[o[(o[9395]|0)+8>>2]&3](37580,e,128,t,n,o[c>>2]|0,l,a,i)|0)==-1){l=-1;h=u;return l|0}else{Ei(e);_t(e+132|0,a,i,a+i|0);l=ge(a,f,r)|0;h=u;return l|0}return 0}function yo(e){e=e|0;return pe(32)|0}function bo(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e+228>>2]=2;n=-1;return n|0}else{n=ge(e+132|0,32,t)|0;return n|0}return 0}function vo(e){e=e|0;return o[e+128>>2]|0}function Ao(e){e=e|0;return pe(229)|0}function wo(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0;i=pe(229)|0;if(i>>>0>n>>>0){o[e+228>>2]=2;t=-1;return t|0}else{f=t+i+-229|0;r[f>>0]=2;s=o[e+128>>2]|0;c=f+1|0;r[c>>0]=s>>>24;c=c+1|0;r[c>>0]=s>>>16;c=c+1|0;r[c>>0]=s>>>8;r[c+1>>0]=s;c=t+(i+-225)|0;i=t+(i+-224)|0;s=e;a=i+128|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));n=e+132|0;i=c+129|0;s=n;a=i+32|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));c=c+161|0;_t(n,f,c-f|0,c);t=ge(f,229,t)|0;return t|0}return 0}function Eo(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0;O=h;h=h+256|0;T=O;o[T>>2]=(s[t+1>>0]|0)<<16|(s[t>>0]|0)<<24|(s[t+2>>0]|0)<<8|(s[t+3>>0]|0);o[T+4>>2]=(s[t+5>>0]|0)<<16|(s[t+4>>0]|0)<<24|(s[t+6>>0]|0)<<8|(s[t+7>>0]|0);o[T+8>>2]=(s[t+9>>0]|0)<<16|(s[t+8>>0]|0)<<24|(s[t+10>>0]|0)<<8|(s[t+11>>0]|0);o[T+12>>2]=(s[t+13>>0]|0)<<16|(s[t+12>>0]|0)<<24|(s[t+14>>0]|0)<<8|(s[t+15>>0]|0);o[T+16>>2]=(s[t+17>>0]|0)<<16|(s[t+16>>0]|0)<<24|(s[t+18>>0]|0)<<8|(s[t+19>>0]|0);o[T+20>>2]=(s[t+21>>0]|0)<<16|(s[t+20>>0]|0)<<24|(s[t+22>>0]|0)<<8|(s[t+23>>0]|0);o[T+24>>2]=(s[t+25>>0]|0)<<16|(s[t+24>>0]|0)<<24|(s[t+26>>0]|0)<<8|(s[t+27>>0]|0);o[T+28>>2]=(s[t+29>>0]|0)<<16|(s[t+28>>0]|0)<<24|(s[t+30>>0]|0)<<8|(s[t+31>>0]|0);o[T+32>>2]=(s[t+33>>0]|0)<<16|(s[t+32>>0]|0)<<24|(s[t+34>>0]|0)<<8|(s[t+35>>0]|0);o[T+36>>2]=(s[t+37>>0]|0)<<16|(s[t+36>>0]|0)<<24|(s[t+38>>0]|0)<<8|(s[t+39>>0]|0);o[T+40>>2]=(s[t+41>>0]|0)<<16|(s[t+40>>0]|0)<<24|(s[t+42>>0]|0)<<8|(s[t+43>>0]|0);o[T+44>>2]=(s[t+45>>0]|0)<<16|(s[t+44>>0]|0)<<24|(s[t+46>>0]|0)<<8|(s[t+47>>0]|0);o[T+48>>2]=(s[t+49>>0]|0)<<16|(s[t+48>>0]|0)<<24|(s[t+50>>0]|0)<<8|(s[t+51>>0]|0);o[T+52>>2]=(s[t+53>>0]|0)<<16|(s[t+52>>0]|0)<<24|(s[t+54>>0]|0)<<8|(s[t+55>>0]|0);o[T+56>>2]=(s[t+57>>0]|0)<<16|(s[t+56>>0]|0)<<24|(s[t+58>>0]|0)<<8|(s[t+59>>0]|0);o[T+60>>2]=(s[t+61>>0]|0)<<16|(s[t+60>>0]|0)<<24|(s[t+62>>0]|0)<<8|(s[t+63>>0]|0);t=16;n=o[T>>2]|0;do{R=o[T+(t+-2<<2)>>2]|0;I=n;n=o[T+(t+-15<<2)>>2]|0;o[T+(t<<2)>>2]=I+(o[T+(t+-7<<2)>>2]|0)+((R>>>19|R<<13)^R>>>10^(R>>>17|R<<15))+((n>>>18|n<<14)^n>>>3^(n>>>7|n<<25));t=t+1|0}while((t|0)!=64);p=e+80|0;g=o[p>>2]|0;m=e+84|0;_=o[m>>2]|0;y=e+88|0;b=o[y>>2]|0;v=e+92|0;A=o[v>>2]|0;w=e+96|0;E=o[w>>2]|0;S=e+100|0;k=o[S>>2]|0;I=e+104|0;R=o[I>>2]|0;l=e+108|0;d=o[l>>2]|0;e=_;t=d;r=R;i=k;a=E;n=A;f=b;c=g;u=0;while(1){C=((a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7))+t+(r&~a^i&a)+(o[32768+(u<<2)>>2]|0)+(o[T+(u<<2)>>2]|0)|0;t=C+n|0;n=((c>>>2|c<<30)^(c>>>13|c<<19)^(c>>>22|c<<10))+(c&(e^f)^e&f)+C|0;u=u+1|0;if((u|0)==64)break;else{D=f;P=a;M=i;x=r;C=c;a=t;c=n;f=e;n=D;i=P;r=M;t=x;e=C}}o[p>>2]=n+g;o[m>>2]=c+_;o[y>>2]=e+b;o[v>>2]=f+A;o[w>>2]=t+E;o[S>>2]=a+k;o[I>>2]=i+R;o[l>>2]=r+d;h=O;return}function So(e){e=e|0;var t=0;o[e+64>>2]=0;t=e+72|0;o[t>>2]=0;o[t+4>>2]=0;o[e+80>>2]=1779033703;o[e+84>>2]=-1150833019;o[e+88>>2]=1013904242;o[e+92>>2]=-1521486534;o[e+96>>2]=1359893119;o[e+100>>2]=-1694144372;o[e+104>>2]=528734635;o[e+108>>2]=1541459225;return}function ko(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0;if(!n)return;a=e+64|0;f=e+72|0;s=0;i=o[a>>2]|0;do{r[e+i>>0]=r[t+s>>0]|0;i=(o[a>>2]|0)+1|0;o[a>>2]=i;if((i|0)==64){Eo(e,e);c=f;c=Ss(o[c>>2]|0,o[c+4>>2]|0,512,0)|0;i=f;o[i>>2]=c;o[i+4>>2]=I;o[a>>2]=0;i=0}s=s+1|0}while((s|0)!=(n|0));return}function Io(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0;s=e+64|0;n=o[s>>2]|0;i=n+1|0;r[e+n>>0]=-128;if(n>>>0<56){if(i>>>0<56)Ds(e+i|0,0,55-n|0)|0}else{if(i>>>0<64)Ds(e+i|0,0,63-n|0)|0;Eo(e,e);n=e;i=n+56|0;do{o[n>>2]=0;n=n+4|0}while((n|0)<(i|0))}c=e+72|0;u=c;u=Ss(o[u>>2]|0,o[u+4>>2]|0,o[s>>2]<<3|0,0)|0;l=I;o[c>>2]=u;o[c+4>>2]=l;r[e+63>>0]=u;c=Cs(u|0,l|0,8)|0;r[e+62>>0]=c;c=Cs(u|0,l|0,16)|0;r[e+61>>0]=c;c=Cs(u|0,l|0,24)|0;r[e+60>>0]=c;r[e+59>>0]=l;c=Cs(u|0,l|0,40)|0;r[e+58>>0]=c;c=Cs(u|0,l|0,48)|0;r[e+57>>0]=c;l=Cs(u|0,l|0,56)|0;r[e+56>>0]=l;Eo(e,e);l=e+80|0;u=e+84|0;c=e+88|0;f=e+92|0;a=e+96|0;n=e+100|0;i=e+104|0;s=e+108|0;r[t>>0]=(o[l>>2]|0)>>>24;r[t+4>>0]=(o[u>>2]|0)>>>24;r[t+8>>0]=(o[c>>2]|0)>>>24;r[t+12>>0]=(o[f>>2]|0)>>>24;r[t+16>>0]=(o[a>>2]|0)>>>24;r[t+20>>0]=(o[n>>2]|0)>>>24;r[t+24>>0]=(o[i>>2]|0)>>>24;r[t+28>>0]=(o[s>>2]|0)>>>24;r[t+1>>0]=(o[l>>2]|0)>>>16;r[t+5>>0]=(o[u>>2]|0)>>>16;r[t+9>>0]=(o[c>>2]|0)>>>16;r[t+13>>0]=(o[f>>2]|0)>>>16;r[t+17>>0]=(o[a>>2]|0)>>>16;r[t+21>>0]=(o[n>>2]|0)>>>16;r[t+25>>0]=(o[i>>2]|0)>>>16;r[t+29>>0]=(o[s>>2]|0)>>>16;r[t+2>>0]=(o[l>>2]|0)>>>8;r[t+6>>0]=(o[u>>2]|0)>>>8;r[t+10>>0]=(o[c>>2]|0)>>>8;r[t+14>>0]=(o[f>>2]|0)>>>8;r[t+18>>0]=(o[a>>2]|0)>>>8;r[t+22>>0]=(o[n>>2]|0)>>>8;r[t+26>>0]=(o[i>>2]|0)>>>8;r[t+30>>0]=(o[s>>2]|0)>>>8;r[t+3>>0]=o[l>>2];r[t+7>>0]=o[u>>2];r[t+11>>0]=o[c>>2];r[t+15>>0]=o[f>>2];r[t+19>>0]=o[a>>2];r[t+23>>0]=o[n>>2];r[t+27>>0]=o[i>>2];r[t+31>>0]=o[s>>2];return}function Ro(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0;L=h;h=h+16|0;P=L;U=P+4|0;E=P+8|0;S=P+12|0;v=r[e+4>>0]|0;k=P+1|0;c=r[e+5>>0]|0;I=P+5|0;g=r[e+6>>0]|0;R=P+9|0;l=r[e+7>>0]|0;T=P+13|0;y=r[e+8>>0]|0;O=P+2|0;d=r[e+9>>0]|0;C=P+6|0;w=r[e+10>>0]|0;x=P+10|0;u=r[e+11>>0]|0;M=P+14|0;a=r[e+12>>0]|0;D=P+3|0;F=r[e+13>>0]|0;B=P+7|0;m=r[e+14>>0]|0;N=P+11|0;p=r[e+15>>0]|0;j=P+15|0;b=o[n>>2]|0;_=b>>>24^(s[e>>0]|0);A=b>>>16^(s[e+1>>0]|0);f=b>>>8^(s[e+2>>0]|0);b=b^(s[e+3>>0]|0);r[S>>0]=b;q=o[n+4>>2]|0;v=q>>>24^v&255;c=q>>>16^c&255;g=q>>>8^g&255;l=q^l&255;q=o[n+8>>2]|0;y=q>>>24^y&255;d=q>>>16^d&255;w=q>>>8^w&255;u=q^u&255;q=o[n+12>>2]|0;a=q>>>24^a&255;e=q>>>16^F&255;m=q>>>8^m&255;p=q^p&255;r[P>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[k>>0]=r[(v&15)+(33024+(v>>>4<<4))>>0]|0;r[O>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[D>>0]=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;r[U>>0]=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=e;r[B>>0]=A;r[E>>0]=w;r[x>>0]=f;r[R>>0]=m;r[N>>0]=g;r[S>>0]=p;r[j>>0]=u;r[M>>0]=l;r[T>>0]=b;To(P);b=o[n+16>>2]|0;l=b>>>24^(s[P>>0]|0);u=b>>>16^(s[U>>0]|0);p=b>>>8^(s[E>>0]|0);r[E>>0]=p;b=b^(s[S>>0]|0);r[S>>0]=b;g=o[n+20>>2]|0;m=g>>>24^(s[k>>0]|0);f=g>>>16^(s[I>>0]|0);w=g>>>8^(s[R>>0]|0);g=g^(s[T>>0]|0);r[T>>0]=g;A=o[n+24>>2]|0;e=A>>>24^(s[O>>0]|0);d=A>>>16^(s[C>>0]|0);c=A>>>8^(s[x>>0]|0);A=A^(s[M>>0]|0);a=o[n+28>>2]|0;y=a>>>24^(s[D>>0]|0);v=a>>>16^(s[B>>0]|0);_=a>>>8^(s[N>>0]|0);a=a^(s[j>>0]|0);r[P>>0]=r[(l&15)+(33024+(l>>>4<<4))>>0]|0;r[k>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[O>>0]=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[D>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;r[U>>0]=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=v;r[B>>0]=u;r[E>>0]=c;r[x>>0]=p;r[R>>0]=_;r[N>>0]=w;r[S>>0]=a;r[j>>0]=A;r[M>>0]=g;r[T>>0]=b;To(P);b=o[n+32>>2]|0;g=b>>>24^(s[P>>0]|0);A=b>>>16^(s[U>>0]|0);a=b>>>8^(s[E>>0]|0);r[E>>0]=a;b=b^(s[S>>0]|0);r[S>>0]=b;w=o[n+36>>2]|0;_=w>>>24^(s[k>>0]|0);p=w>>>16^(s[I>>0]|0);c=w>>>8^(s[R>>0]|0);w=w^(s[T>>0]|0);r[T>>0]=w;u=o[n+40>>2]|0;v=u>>>24^(s[O>>0]|0);d=u>>>16^(s[C>>0]|0);f=u>>>8^(s[x>>0]|0);u=u^(s[M>>0]|0);y=o[n+44>>2]|0;e=y>>>24^(s[D>>0]|0);m=y>>>16^(s[B>>0]|0);l=y>>>8^(s[N>>0]|0);y=y^(s[j>>0]|0);r[P>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;r[k>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[O>>0]=r[(v&15)+(33024+(v>>>4<<4))>>0]|0;r[D>>0]=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[U>>0]=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=m;r[B>>0]=A;r[E>>0]=f;r[x>>0]=a;r[R>>0]=l;r[N>>0]=c;r[S>>0]=y;r[j>>0]=u;r[M>>0]=w;r[T>>0]=b;To(P);b=o[n+48>>2]|0;w=b>>>24^(s[P>>0]|0);u=b>>>16^(s[U>>0]|0);y=b>>>8^(s[E>>0]|0);r[E>>0]=y;b=b^(s[S>>0]|0);r[S>>0]=b;c=o[n+52>>2]|0;l=c>>>24^(s[k>>0]|0);a=c>>>16^(s[I>>0]|0);f=c>>>8^(s[R>>0]|0);c=c^(s[T>>0]|0);r[T>>0]=c;A=o[n+56>>2]|0;m=A>>>24^(s[O>>0]|0);d=A>>>16^(s[C>>0]|0);p=A>>>8^(s[x>>0]|0);A=A^(s[M>>0]|0);e=o[n+60>>2]|0;v=e>>>24^(s[D>>0]|0);_=e>>>16^(s[B>>0]|0);g=e>>>8^(s[N>>0]|0);e=e^(s[j>>0]|0);r[P>>0]=r[(w&15)+(33024+(w>>>4<<4))>>0]|0;r[k>>0]=r[(l&15)+(33024+(l>>>4<<4))>>0]|0;r[O>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[D>>0]=r[(v&15)+(33024+(v>>>4<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;r[U>>0]=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=_;r[B>>0]=u;r[E>>0]=p;r[x>>0]=y;r[R>>0]=g;r[N>>0]=f;r[S>>0]=e;r[j>>0]=A;r[M>>0]=c;r[T>>0]=b;To(P);b=o[n+64>>2]|0;c=b>>>24^(s[P>>0]|0);A=b>>>16^(s[U>>0]|0);e=b>>>8^(s[E>>0]|0);r[E>>0]=e;b=b^(s[S>>0]|0);r[S>>0]=b;f=o[n+68>>2]|0;g=f>>>24^(s[k>>0]|0);y=f>>>16^(s[I>>0]|0);p=f>>>8^(s[R>>0]|0);f=f^(s[T>>0]|0);r[T>>0]=f;u=o[n+72>>2]|0;_=u>>>24^(s[O>>0]|0);d=u>>>16^(s[C>>0]|0);a=u>>>8^(s[x>>0]|0);u=u^(s[M>>0]|0);v=o[n+76>>2]|0;m=v>>>24^(s[D>>0]|0);l=v>>>16^(s[B>>0]|0);w=v>>>8^(s[N>>0]|0);v=v^(s[j>>0]|0);r[P>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[k>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;r[O>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[D>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;r[U>>0]=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=l;r[B>>0]=A;r[E>>0]=a;r[x>>0]=e;r[R>>0]=w;r[N>>0]=p;r[S>>0]=v;r[j>>0]=u;r[M>>0]=f;r[T>>0]=b;To(P);b=o[n+80>>2]|0;f=b>>>24^(s[P>>0]|0);u=b>>>16^(s[U>>0]|0);v=b>>>8^(s[E>>0]|0);r[E>>0]=v;b=b^(s[S>>0]|0);r[S>>0]=b;p=o[n+84>>2]|0;w=p>>>24^(s[k>>0]|0);e=p>>>16^(s[I>>0]|0);a=p>>>8^(s[R>>0]|0);p=p^(s[T>>0]|0);r[T>>0]=p;A=o[n+88>>2]|0;l=A>>>24^(s[O>>0]|0);d=A>>>16^(s[C>>0]|0);y=A>>>8^(s[x>>0]|0);A=A^(s[M>>0]|0);m=o[n+92>>2]|0;_=m>>>24^(s[D>>0]|0);g=m>>>16^(s[B>>0]|0);c=m>>>8^(s[N>>0]|0);m=m^(s[j>>0]|0);r[P>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[k>>0]=r[(w&15)+(33024+(w>>>4<<4))>>0]|0;r[O>>0]=r[(l&15)+(33024+(l>>>4<<4))>>0]|0;r[D>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;r[U>>0]=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=g;r[B>>0]=u;r[E>>0]=y;r[x>>0]=v;r[R>>0]=c;r[N>>0]=a;r[S>>0]=m;r[j>>0]=A;r[M>>0]=p;r[T>>0]=b;To(P);b=o[n+96>>2]|0;p=b>>>24^(s[P>>0]|0);A=b>>>16^(s[U>>0]|0);m=b>>>8^(s[E>>0]|0);r[E>>0]=m;b=b^(s[S>>0]|0);r[S>>0]=b;a=o[n+100>>2]|0;c=a>>>24^(s[k>>0]|0);v=a>>>16^(s[I>>0]|0);y=a>>>8^(s[R>>0]|0);a=a^(s[T>>0]|0);r[T>>0]=a;u=o[n+104>>2]|0;g=u>>>24^(s[O>>0]|0);d=u>>>16^(s[C>>0]|0);e=u>>>8^(s[x>>0]|0);u=u^(s[M>>0]|0);_=o[n+108>>2]|0;l=_>>>24^(s[D>>0]|0);w=_>>>16^(s[B>>0]|0);f=_>>>8^(s[N>>0]|0);_=_^(s[j>>0]|0);r[P>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[k>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[O>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;r[D>>0]=r[(l&15)+(33024+(l>>>4<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;r[U>>0]=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=w;r[B>>0]=A;r[E>>0]=e;r[x>>0]=m;r[R>>0]=f;r[N>>0]=y;r[S>>0]=_;r[j>>0]=u;r[M>>0]=a;r[T>>0]=b;To(P);b=o[n+112>>2]|0;a=b>>>24^(s[P>>0]|0);u=b>>>16^(s[U>>0]|0);_=b>>>8^(s[E>>0]|0);r[E>>0]=_;b=b^(s[S>>0]|0);r[S>>0]=b;y=o[n+116>>2]|0;f=y>>>24^(s[k>>0]|0);m=y>>>16^(s[I>>0]|0);e=y>>>8^(s[R>>0]|0);y=y^(s[T>>0]|0);r[T>>0]=y;A=o[n+120>>2]|0;w=A>>>24^(s[O>>0]|0);d=A>>>16^(s[C>>0]|0);v=A>>>8^(s[x>>0]|0);A=A^(s[M>>0]|0);l=o[n+124>>2]|0;g=l>>>24^(s[D>>0]|0);c=l>>>16^(s[B>>0]|0);p=l>>>8^(s[N>>0]|0);l=l^(s[j>>0]|0);r[P>>0]=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[k>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[O>>0]=r[(w&15)+(33024+(w>>>4<<4))>>0]|0;r[D>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;r[U>>0]=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=c;r[B>>0]=u;r[E>>0]=v;r[x>>0]=_;r[R>>0]=p;r[N>>0]=e;r[S>>0]=l;r[j>>0]=A;r[M>>0]=y;r[T>>0]=b;To(P);b=o[n+128>>2]|0;y=b>>>24^(s[P>>0]|0);A=b>>>16^(s[U>>0]|0);l=b>>>8^(s[E>>0]|0);r[E>>0]=l;b=b^(s[S>>0]|0);r[S>>0]=b;e=o[n+132>>2]|0;p=e>>>24^(s[k>>0]|0);_=e>>>16^(s[I>>0]|0);v=e>>>8^(s[R>>0]|0);e=e^(s[T>>0]|0);r[T>>0]=e;u=o[n+136>>2]|0;c=u>>>24^(s[O>>0]|0);d=u>>>16^(s[C>>0]|0);m=u>>>8^(s[x>>0]|0);u=u^(s[M>>0]|0);g=o[n+140>>2]|0;w=g>>>24^(s[D>>0]|0);f=g>>>16^(s[B>>0]|0);a=g>>>8^(s[N>>0]|0);g=g^(s[j>>0]|0);r[P>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[k>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[O>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[D>>0]=r[(w&15)+(33024+(w>>>4<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;r[U>>0]=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=f;r[B>>0]=A;r[E>>0]=m;r[x>>0]=l;r[R>>0]=a;r[N>>0]=v;r[S>>0]=g;r[j>>0]=u;r[M>>0]=e;r[T>>0]=b;To(P);b=o[n+144>>2]|0;e=b>>>24^(s[P>>0]|0);u=b>>>16^(s[U>>0]|0);g=b>>>8^(s[E>>0]|0);r[E>>0]=g;b=b^(s[S>>0]|0);r[S>>0]=b;v=o[n+148>>2]|0;a=v>>>24^(s[k>>0]|0);l=v>>>16^(s[I>>0]|0);m=v>>>8^(s[R>>0]|0);v=v^(s[T>>0]|0);r[T>>0]=v;A=o[n+152>>2]|0;f=A>>>24^(s[O>>0]|0);d=A>>>16^(s[C>>0]|0);_=A>>>8^(s[x>>0]|0);A=A^(s[M>>0]|0);w=o[n+156>>2]|0;c=w>>>24^(s[D>>0]|0);p=w>>>16^(s[B>>0]|0);y=w>>>8^(s[N>>0]|0);w=w^(s[j>>0]|0);e=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[P>>0]=e;a=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[k>>0]=a;f=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[O>>0]=f;c=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[D>>0]=c;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;r[U>>0]=l;r[I>>0]=d;r[C>>0]=p;r[B>>0]=u;r[E>>0]=_;r[x>>0]=g;r[R>>0]=y;r[N>>0]=m;r[S>>0]=w;r[j>>0]=A;r[M>>0]=v;r[T>>0]=b;if((i|0)==128){K=y;G=d;z=41;H=w;w=_;V=l;F=e;e=40;q=A;y=m;_=u;m=c;d=43;i=p;l=f;p=42;c=n+(e<<2)|0;c=o[c>>2]|0;A=c>>>24;f=c>>>16;u=c>>>8;F=F&255;F=A^F;F=F&255;r[P>>0]=F;A=V&255;A=f^A;A=A&255;r[U>>0]=A;w=w&255;w=u^w;w=w&255;r[E>>0]=w;E=H&255;E=c^E;E=E&255;r[S>>0]=E;U=n+(z<<2)|0;U=o[U>>2]|0;c=U>>>24;u=U>>>16;P=U>>>8;S=a&255;S=c^S;S=S&255;r[k>>0]=S;k=G&255;k=u^k;k=k&255;r[I>>0]=k;I=K&255;I=P^I;I=I&255;r[R>>0]=I;R=b&255;R=U^R;R=R&255;r[T>>0]=R;U=n+(p<<2)|0;U=o[U>>2]|0;p=U>>>24;b=U>>>16;P=U>>>8;T=l&255;T=p^T;T=T&255;r[O>>0]=T;i=i&255;i=b^i;i=i&255;r[C>>0]=i;C=g&255;C=P^C;C=C&255;r[x>>0]=C;x=v&255;x=U^x;x=x&255;r[M>>0]=x;M=n+(d<<2)|0;M=o[M>>2]|0;n=M>>>24;U=M>>>16;O=M>>>8;P=m&255;P=n^P;P=P&255;r[D>>0]=P;D=_&255;D=U^D;D=D&255;r[B>>0]=D;U=y&255;U=O^U;U=U&255;r[N>>0]=U;q=q&255;q=M^q;q=q&255;r[j>>0]=q;r[t>>0]=F;F=t+1|0;r[F>>0]=A;F=t+2|0;r[F>>0]=w;F=t+3|0;r[F>>0]=E;F=t+4|0;r[F>>0]=S;F=t+5|0;r[F>>0]=k;F=t+6|0;r[F>>0]=I;F=t+7|0;r[F>>0]=R;F=t+8|0;r[F>>0]=T;F=t+9|0;r[F>>0]=i;F=t+10|0;r[F>>0]=C;F=t+11|0;r[F>>0]=x;F=t+12|0;r[F>>0]=P;F=t+13|0;r[F>>0]=D;F=t+14|0;r[F>>0]=U;F=t+15|0;r[F>>0]=q;h=L;return}To(P);b=o[n+160>>2]|0;y=b>>>24^(s[P>>0]|0);A=b>>>16^(s[U>>0]|0);l=b>>>8^(s[E>>0]|0);r[E>>0]=l;b=b^(s[S>>0]|0);r[S>>0]=b;e=o[n+164>>2]|0;p=e>>>24^(s[k>>0]|0);_=e>>>16^(s[I>>0]|0);v=e>>>8^(s[R>>0]|0);e=e^(s[T>>0]|0);r[T>>0]=e;u=o[n+168>>2]|0;c=u>>>24^(s[O>>0]|0);d=u>>>16^(s[C>>0]|0);m=u>>>8^(s[x>>0]|0);u=u^(s[M>>0]|0);g=o[n+172>>2]|0;w=g>>>24^(s[D>>0]|0);f=g>>>16^(s[B>>0]|0);a=g>>>8^(s[N>>0]|0);g=g^(s[j>>0]|0);r[P>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[k>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[O>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[D>>0]=r[(w&15)+(33024+(w>>>4<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;r[U>>0]=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=f;r[B>>0]=A;r[E>>0]=m;r[x>>0]=l;r[R>>0]=a;r[N>>0]=v;r[S>>0]=g;r[j>>0]=u;r[M>>0]=e;r[T>>0]=b;To(P);b=o[n+176>>2]|0;e=b>>>24^(s[P>>0]|0);u=b>>>16^(s[U>>0]|0);g=b>>>8^(s[E>>0]|0);r[E>>0]=g;b=b^(s[S>>0]|0);r[S>>0]=b;v=o[n+180>>2]|0;a=v>>>24^(s[k>>0]|0);l=v>>>16^(s[I>>0]|0);m=v>>>8^(s[R>>0]|0);v=v^(s[T>>0]|0);r[T>>0]=v;A=o[n+184>>2]|0;f=A>>>24^(s[O>>0]|0);d=A>>>16^(s[C>>0]|0);_=A>>>8^(s[x>>0]|0);A=A^(s[M>>0]|0);w=o[n+188>>2]|0;c=w>>>24^(s[D>>0]|0);p=w>>>16^(s[B>>0]|0);y=w>>>8^(s[N>>0]|0);w=w^(s[j>>0]|0);e=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[P>>0]=e;a=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[k>>0]=a;f=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[O>>0]=f;c=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[D>>0]=c;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;r[U>>0]=l;r[I>>0]=d;r[C>>0]=p;r[B>>0]=u;r[E>>0]=_;r[x>>0]=g;r[R>>0]=y;r[N>>0]=m;r[S>>0]=w;r[j>>0]=A;r[M>>0]=v;r[T>>0]=b;if((i|0)==192){Q=y;W=49;Y=w;w=_;V=e;e=48;H=A;z=m;G=u;K=c;y=51;F=v;q=g;_=p;m=f;v=50;i=b;g=n+(e<<2)|0;g=o[g>>2]|0;A=g>>>24;p=g>>>16;b=g>>>8;V=V&255;V=A^V;V=V&255;r[P>>0]=V;A=l&255;A=p^A;A=A&255;r[U>>0]=A;w=w&255;w=b^w;w=w&255;r[E>>0]=w;E=Y&255;E=g^E;E=E&255;r[S>>0]=E;U=n+(W<<2)|0;U=o[U>>2]|0;g=U>>>24;b=U>>>16;P=U>>>8;S=a&255;S=g^S;S=S&255;r[k>>0]=S;k=d&255;k=b^k;k=k&255;r[I>>0]=k;I=Q&255;I=P^I;I=I&255;r[R>>0]=I;i=i&255;i=U^i;i=i&255;r[T>>0]=i;T=n+(v<<2)|0;T=o[T>>2]|0;U=T>>>24;v=T>>>16;R=T>>>8;P=m&255;P=U^P;P=P&255;r[O>>0]=P;U=_&255;U=v^U;U=U&255;r[C>>0]=U;q=q&255;q=R^q;q=q&255;r[x>>0]=q;F=F&255;F=T^F;F=F&255;r[M>>0]=F;M=n+(y<<2)|0;M=o[M>>2]|0;O=M>>>24;C=M>>>16;x=M>>>8;K=K&255;K=O^K;K=K&255;r[D>>0]=K;G=G&255;G=C^G;G=G&255;r[B>>0]=G;z=z&255;z=x^z;z=z&255;r[N>>0]=z;H=H&255;H=M^H;H=H&255;r[j>>0]=H;r[t>>0]=V;V=t+1|0;r[V>>0]=A;V=t+2|0;r[V>>0]=w;V=t+3|0;r[V>>0]=E;V=t+4|0;r[V>>0]=S;V=t+5|0;r[V>>0]=k;V=t+6|0;r[V>>0]=I;V=t+7|0;r[V>>0]=i;V=t+8|0;r[V>>0]=P;V=t+9|0;r[V>>0]=U;V=t+10|0;r[V>>0]=q;V=t+11|0;r[V>>0]=F;V=t+12|0;r[V>>0]=K;V=t+13|0;r[V>>0]=G;V=t+14|0;r[V>>0]=z;V=t+15|0;r[V>>0]=H;h=L;return}To(P);q=o[n+192>>2]|0;_=q>>>24^(s[P>>0]|0);W=q>>>16^(s[U>>0]|0);A=q>>>8^(s[E>>0]|0);r[E>>0]=A;q=q^(s[S>>0]|0);r[S>>0]=q;Y=o[n+196>>2]|0;K=Y>>>24^(s[k>>0]|0);w=Y>>>16^(s[I>>0]|0);z=Y>>>8^(s[R>>0]|0);Y=Y^(s[T>>0]|0);r[T>>0]=Y;V=o[n+200>>2]|0;H=V>>>24^(s[O>>0]|0);m=V>>>16^(s[C>>0]|0);Q=V>>>8^(s[x>>0]|0);V=V^(s[M>>0]|0);G=o[n+204>>2]|0;p=G>>>24^(s[D>>0]|0);F=G>>>16^(s[B>>0]|0);i=G>>>8^(s[N>>0]|0);G=G^(s[j>>0]|0);r[P>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[k>>0]=r[(K&15)+(33024+(K>>>4<<4))>>0]|0;r[O>>0]=r[(H&15)+(33024+(H>>>4<<4))>>0]|0;r[D>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;W=r[(W&15)+(33024+((W>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;F=r[(F&15)+(33024+((F>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;z=r[(z&15)+(33024+((z>>>4&15)<<4))>>0]|0;Q=r[(Q&15)+(33024+((Q>>>4&15)<<4))>>0]|0;i=r[(i&15)+(33024+((i>>>4&15)<<4))>>0]|0;q=r[(q&15)+(33024+((q>>>4&15)<<4))>>0]|0;Y=r[(Y&15)+(33024+((Y>>>4&15)<<4))>>0]|0;V=r[(V&15)+(33024+((V>>>4&15)<<4))>>0]|0;G=r[(G&15)+(33024+((G>>>4&15)<<4))>>0]|0;r[U>>0]=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;r[I>>0]=m;r[C>>0]=F;r[B>>0]=W;r[E>>0]=Q;r[x>>0]=A;r[R>>0]=i;r[N>>0]=z;r[S>>0]=G;r[j>>0]=V;r[M>>0]=Y;r[T>>0]=q;To(P);q=o[n+208>>2]|0;Y=q>>>24^(s[P>>0]|0);V=q>>>16^(s[U>>0]|0);G=q>>>8^(s[E>>0]|0);r[E>>0]=G;q=q^(s[S>>0]|0);r[S>>0]=q;z=o[n+212>>2]|0;i=z>>>24^(s[k>>0]|0);A=z>>>16^(s[I>>0]|0);Q=z>>>8^(s[R>>0]|0);z=z^(s[T>>0]|0);r[T>>0]=z;W=o[n+216>>2]|0;F=W>>>24^(s[O>>0]|0);m=W>>>16^(s[C>>0]|0);w=W>>>8^(s[x>>0]|0);W=W^(s[M>>0]|0);p=o[n+220>>2]|0;H=p>>>24^(s[D>>0]|0);K=p>>>16^(s[B>>0]|0);_=p>>>8^(s[N>>0]|0);p=p^(s[j>>0]|0);Y=r[(Y&15)+(33024+(Y>>>4<<4))>>0]|0;i=r[(i&15)+(33024+(i>>>4<<4))>>0]|0;r[k>>0]=i;F=r[(F&15)+(33024+(F>>>4<<4))>>0]|0;r[O>>0]=F;H=r[(H&15)+(33024+(H>>>4<<4))>>0]|0;r[D>>0]=H;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;y=57;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;g=56;W=r[(W&15)+(33024+((W>>>4&15)<<4))>>0]|0;Q=r[(Q&15)+(33024+((Q>>>4&15)<<4))>>0]|0;V=r[(V&15)+(33024+((V>>>4&15)<<4))>>0]|0;v=59;z=r[(z&15)+(33024+((z>>>4&15)<<4))>>0]|0;G=r[(G&15)+(33024+((G>>>4&15)<<4))>>0]|0;K=r[(K&15)+(33024+((K>>>4&15)<<4))>>0]|0;b=58;q=r[(q&15)+(33024+((q>>>4&15)<<4))>>0]|0;g=n+(g<<2)|0;g=o[g>>2]|0;u=g>>>24;l=g>>>16;d=g>>>8;Y=Y&255;Y=u^Y;Y=Y&255;r[P>>0]=Y;A=A&255;A=l^A;A=A&255;r[U>>0]=A;w=w&255;w=d^w;w=w&255;r[E>>0]=w;E=p&255;E=g^E;E=E&255;r[S>>0]=E;S=n+(y<<2)|0;S=o[S>>2]|0;P=S>>>24;U=S>>>16;y=S>>>8;i=i&255;i=P^i;i=i&255;r[k>>0]=i;P=m&255;P=U^P;P=P&255;r[I>>0]=P;U=_&255;U=y^U;U=U&255;r[R>>0]=U;q=q&255;q=S^q;q=q&255;r[T>>0]=q;T=n+(b<<2)|0;T=o[T>>2]|0;k=T>>>24;I=T>>>16;R=T>>>8;F=F&255;F=k^F;F=F&255;r[O>>0]=F;K=K&255;K=I^K;K=K&255;r[C>>0]=K;G=G&255;G=R^G;G=G&255;r[x>>0]=G;z=z&255;z=T^z;z=z&255;r[M>>0]=z;M=n+(v<<2)|0;M=o[M>>2]|0;O=M>>>24;C=M>>>16;x=M>>>8;H=H&255;H=O^H;H=H&255;r[D>>0]=H;V=V&255;V=C^V;V=V&255;r[B>>0]=V;Q=Q&255;Q=x^Q;Q=Q&255;r[N>>0]=Q;W=W&255;W=M^W;W=W&255;r[j>>0]=W;r[t>>0]=Y;Y=t+1|0;r[Y>>0]=A;Y=t+2|0;r[Y>>0]=w;Y=t+3|0;r[Y>>0]=E;Y=t+4|0;r[Y>>0]=i;Y=t+5|0;r[Y>>0]=P;Y=t+6|0;r[Y>>0]=U;Y=t+7|0;r[Y>>0]=q;Y=t+8|0;r[Y>>0]=F;Y=t+9|0;r[Y>>0]=K;Y=t+10|0;r[Y>>0]=G;Y=t+11|0;r[Y>>0]=z;Y=t+12|0;r[Y>>0]=H;Y=t+13|0;r[Y>>0]=V;Y=t+14|0;r[Y>>0]=Q;Y=t+15|0;r[Y>>0]=W;h=L;return}function To(e){e=e|0;var t=0,n=0,i=0,o=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0;h=r[e>>0]|0;l=e+4|0;i=r[l>>0]|0;o=e+8|0;s=r[o>>0]|0;a=e+12|0;n=r[a>>0]|0;c=h&255;f=i&255;t=s&255;d=n&255;r[e>>0]=n^s^r[33280+(c*6|0)>>0]^r[33280+(f*6|0)+1>>0];r[l>>0]=r[33280+(f*6|0)>>0]^h^n^r[33280+(t*6|0)+1>>0];r[o>>0]=r[33280+(d*6|0)+1>>0]^(r[33280+(t*6|0)>>0]^(i^h));r[a>>0]=s^i^r[33280+(c*6|0)+1>>0]^r[33280+(d*6|0)>>0];a=e+1|0;d=r[a>>0]|0;c=e+5|0;i=r[c>>0]|0;s=e+9|0;o=r[s>>0]|0;h=e+13|0;t=r[h>>0]|0;l=d&255;n=i&255;f=o&255;u=t&255;r[a>>0]=t^o^r[33280+(l*6|0)>>0]^r[33280+(n*6|0)+1>>0];r[c>>0]=r[33280+(n*6|0)>>0]^d^t^r[33280+(f*6|0)+1>>0];r[s>>0]=r[33280+(u*6|0)+1>>0]^(r[33280+(f*6|0)>>0]^(i^d));r[h>>0]=o^i^r[33280+(l*6|0)+1>>0]^r[33280+(u*6|0)>>0];h=e+2|0;u=r[h>>0]|0;l=e+6|0;i=r[l>>0]|0;o=e+10|0;s=r[o>>0]|0;d=e+14|0;f=r[d>>0]|0;c=u&255;t=i&255;n=s&255;a=f&255;r[h>>0]=f^s^r[33280+(c*6|0)>>0]^r[33280+(t*6|0)+1>>0];r[l>>0]=r[33280+(t*6|0)>>0]^u^f^r[33280+(n*6|0)+1>>0];r[o>>0]=r[33280+(a*6|0)+1>>0]^(r[33280+(n*6|0)>>0]^(i^u));r[d>>0]=s^i^r[33280+(c*6|0)+1>>0]^r[33280+(a*6|0)>>0];d=e+3|0;a=r[d>>0]|0;c=e+7|0;i=r[c>>0]|0;s=e+11|0;o=r[s>>0]|0;e=e+15|0;u=r[e>>0]|0;n=a&255;l=i&255;f=o&255;t=u&255;r[d>>0]=u^o^r[33280+(n*6|0)>>0]^r[33280+(l*6|0)+1>>0];r[c>>0]=r[33280+(l*6|0)>>0]^a^u^r[33280+(f*6|0)+1>>0];r[s>>0]=r[33280+(t*6|0)+1>>0]^(r[33280+(f*6|0)>>0]^(i^a));r[e>>0]=o^i^r[33280+(n*6|0)+1>>0]^r[33280+(t*6|0)>>0];return}function Oo(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,a=0;switch(n|0){case 128:{i=4;a=44;break}case 192:{i=6;a=52;break}case 256:{i=8;a=60;break}default:return}n=0;do{r=n<<2;o[t+(n<<2)>>2]=(s[e+(r|1)>>0]|0)<<16|(s[e+r>>0]|0)<<24|(s[e+(r|2)>>0]|0)<<8|(s[e+(r|3)>>0]|0);n=n+1|0}while(n>>>0>>0);if(i>>>0<=6){r=i;do{e=r+-1|0;n=o[t+(e<<2)>>2]|0;if(!((r>>>0)%(i>>>0)|0))n=((s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)<<8|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)|(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<16|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<24)^o[34816+(((e|0)/(i|0)|0)<<2)>>2];o[t+(r<<2)>>2]=o[t+(r-i<<2)>>2]^n;r=r+1|0}while((r|0)!=(a|0));return}r=i;do{e=r+-1|0;n=o[t+(e<<2)>>2]|0;switch(((r>>>0)%(i>>>0)|0)&15){case 0:{n=((s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)<<8|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)|(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<16|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<24)^o[34816+(((e|0)/(i|0)|0)<<2)>>2];break}case 4:{n=(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<8|(s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<16|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)<<24;break}default:{}}o[t+(r<<2)>>2]=o[t+(r-i<<2)>>2]^n;r=r+1|0}while((r|0)!=(a|0));return}function Co(e){e=e|0;var t=0,n=0,i=0,o=0,a=0,f=0,c=0,u=0;c=e+4|0;i=e+8|0;n=e+12|0;t=s[e>>0]|0;a=s[c>>0]|0;u=s[i>>0]|0;o=s[n>>0]|0;r[e>>0]=r[33280+(o*6|0)+2>>0]^(r[33280+(u*6|0)+4>>0]^(r[33280+(a*6|0)+3>>0]^r[33280+(t*6|0)+5>>0]));r[c>>0]=r[33280+(o*6|0)+4>>0]^(r[33280+(u*6|0)+3>>0]^(r[33280+(a*6|0)+5>>0]^r[33280+(t*6|0)+2>>0]));r[i>>0]=r[33280+(o*6|0)+3>>0]^(r[33280+(u*6|0)+5>>0]^(r[33280+(a*6|0)+2>>0]^r[33280+(t*6|0)+4>>0]));r[n>>0]=r[33280+(o*6|0)+5>>0]^(r[33280+(u*6|0)+2>>0]^(r[33280+(a*6|0)+4>>0]^r[33280+(t*6|0)+3>>0]));n=e+1|0;t=e+5|0;a=e+9|0;u=e+13|0;o=s[n>>0]|0;i=s[t>>0]|0;c=s[a>>0]|0;f=s[u>>0]|0;r[n>>0]=r[33280+(f*6|0)+2>>0]^(r[33280+(c*6|0)+4>>0]^(r[33280+(i*6|0)+3>>0]^r[33280+(o*6|0)+5>>0]));r[t>>0]=r[33280+(f*6|0)+4>>0]^(r[33280+(c*6|0)+3>>0]^(r[33280+(i*6|0)+5>>0]^r[33280+(o*6|0)+2>>0]));r[a>>0]=r[33280+(f*6|0)+3>>0]^(r[33280+(c*6|0)+5>>0]^(r[33280+(i*6|0)+2>>0]^r[33280+(o*6|0)+4>>0]));r[u>>0]=r[33280+(f*6|0)+5>>0]^(r[33280+(c*6|0)+2>>0]^(r[33280+(i*6|0)+4>>0]^r[33280+(o*6|0)+3>>0]));u=e+2|0;o=e+6|0;i=e+10|0;c=e+14|0;f=s[u>>0]|0;a=s[o>>0]|0;t=s[i>>0]|0;n=s[c>>0]|0;r[u>>0]=r[33280+(n*6|0)+2>>0]^(r[33280+(t*6|0)+4>>0]^(r[33280+(a*6|0)+3>>0]^r[33280+(f*6|0)+5>>0]));r[o>>0]=r[33280+(n*6|0)+4>>0]^(r[33280+(t*6|0)+3>>0]^(r[33280+(a*6|0)+5>>0]^r[33280+(f*6|0)+2>>0]));r[i>>0]=r[33280+(n*6|0)+3>>0]^(r[33280+(t*6|0)+5>>0]^(r[33280+(a*6|0)+2>>0]^r[33280+(f*6|0)+4>>0]));r[c>>0]=r[33280+(n*6|0)+5>>0]^(r[33280+(t*6|0)+2>>0]^(r[33280+(a*6|0)+4>>0]^r[33280+(f*6|0)+3>>0]));c=e+3|0;f=e+7|0;a=e+11|0;e=e+15|0;t=s[c>>0]|0;n=s[f>>0]|0;i=s[a>>0]|0;o=s[e>>0]|0;r[c>>0]=r[33280+(o*6|0)+2>>0]^(r[33280+(i*6|0)+4>>0]^(r[33280+(n*6|0)+3>>0]^r[33280+(t*6|0)+5>>0]));r[f>>0]=r[33280+(o*6|0)+4>>0]^(r[33280+(i*6|0)+3>>0]^(r[33280+(n*6|0)+5>>0]^r[33280+(t*6|0)+2>>0]));r[a>>0]=r[33280+(o*6|0)+3>>0]^(r[33280+(i*6|0)+5>>0]^(r[33280+(n*6|0)+2>>0]^r[33280+(t*6|0)+4>>0]));r[e>>0]=r[33280+(o*6|0)+5>>0]^(r[33280+(i*6|0)+2>>0]^(r[33280+(n*6|0)+4>>0]^r[33280+(t*6|0)+3>>0]));return}function xo(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0;L=h;h=h+16|0;D=L;A=r[e>>0]|0;r[D>>0]=A;w=r[e+1>>0]|0;U=D+4|0;r[U>>0]=w;a=r[e+2>>0]|0;S=D+8|0;r[S>>0]=a;f=r[e+3>>0]|0;k=D+12|0;r[k>>0]=f;c=r[e+4>>0]|0;I=D+1|0;r[I>>0]=c;u=r[e+5>>0]|0;R=D+5|0;r[R>>0]=u;l=r[e+6>>0]|0;T=D+9|0;r[T>>0]=l;d=r[e+7>>0]|0;O=D+13|0;r[O>>0]=d;p=r[e+8>>0]|0;C=D+2|0;r[C>>0]=p;g=r[e+9>>0]|0;x=D+6|0;r[x>>0]=g;m=r[e+10>>0]|0;M=D+10|0;r[M>>0]=m;_=r[e+11>>0]|0;P=D+14|0;r[P>>0]=_;y=r[e+12>>0]|0;B=D+3|0;r[B>>0]=y;b=r[e+13>>0]|0;N=D+7|0;r[N>>0]=b;v=r[e+14>>0]|0;j=D+11|0;r[j>>0]=v;e=r[e+15>>0]|0;E=D+15|0;r[E>>0]=e;if((i|0)>128){if((i|0)>192){q=o[n+224>>2]|0;H=q>>>24^A&255;z=q>>>16^w&255;K=q>>>8^a&255;A=q^f&255;q=o[n+228>>2]|0;w=q>>>24^c&255;G=q>>>16^u&255;F=q>>>8^l&255;q=q^d&255;f=o[n+232>>2]|0;a=f>>>24^p&255;p=f>>>16^g&255;i=f>>>8^m&255;f=f^_&255;c=o[n+236>>2]|0;m=c>>>24^y&255;u=c>>>16^b&255;g=c>>>8^v&255;c=c^e&255;b=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[I>>0]=w;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[C>>0]=a;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[B>>0]=m;u=r[(u&15)+(34880+((u>>>4&15)<<4))>>0]|0;l=r[(z&15)+(34880+((z>>>4&15)<<4))>>0]|0;d=r[(G&15)+(34880+((G>>>4&15)<<4))>>0]|0;r[x>>0]=d;_=r[(p&15)+(34880+((p>>>4&15)<<4))>>0]|0;r[N>>0]=_;i=r[(i&15)+(34880+((i>>>4&15)<<4))>>0]|0;g=r[(g&15)+(34880+((g>>>4&15)<<4))>>0]|0;v=r[(K&15)+(34880+((K>>>4&15)<<4))>>0]|0;p=r[(F&15)+(34880+((F>>>4&15)<<4))>>0]|0;r[j>>0]=p;e=r[(q&15)+(34880+((q>>>4&15)<<4))>>0]|0;f=r[(f&15)+(34880+((f>>>4&15)<<4))>>0]|0;c=r[(c&15)+(34880+((c>>>4&15)<<4))>>0]|0;A=r[(A&15)+(34880+((A>>>4&15)<<4))>>0]|0;y=o[n+208>>2]|0;r[D>>0]=y>>>24^b&255;r[U>>0]=y>>>16^u&255;r[S>>0]=y>>>8^i&255;r[k>>0]=y^e&255;e=o[n+212>>2]|0;r[I>>0]=e>>>24^w&255;r[R>>0]=e>>>16^l&255;r[T>>0]=e>>>8^g&255;r[O>>0]=e^f&255;f=o[n+216>>2]|0;r[C>>0]=f>>>24^a&255;r[x>>0]=f>>>16^d&255;r[M>>0]=f>>>8^v&255;r[P>>0]=f^c&255;c=o[n+220>>2]|0;r[B>>0]=c>>>24^m&255;r[N>>0]=c>>>16^_&255;r[j>>0]=c>>>8^p&255;r[E>>0]=c^A&255;Co(D);A=r[N>>0]|0;c=r[x>>0]|0;p=r[R>>0]|0;_=r[U>>0]|0;m=r[j>>0]|0;f=r[T>>0]|0;v=r[M>>0]|0;d=r[S>>0]|0;a=r[E>>0]|0;e=r[k>>0]|0;g=r[O>>0]|0;l=r[P>>0]|0;w=s[D>>0]|0;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[D>>0]=w;y=s[I>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[I>>0]=y;i=s[C>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[C>>0]=i;u=s[B>>0]|0;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;r[B>>0]=u;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;p=p&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[x>>0]=p;c=c&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[N>>0]=c;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;f=f&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;r[j>>0]=f;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;l=l&255;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;b=o[n+192>>2]|0;r[D>>0]=b>>>24^w&255;r[U>>0]=b>>>16^A&255;r[S>>0]=b>>>8^v&255;r[k>>0]=b^g&255;g=o[n+196>>2]|0;r[I>>0]=g>>>24^y&255;r[R>>0]=g>>>16^_&255;r[T>>0]=g>>>8^m&255;r[O>>0]=g^l&255;l=o[n+200>>2]|0;r[C>>0]=l>>>24^i&255;r[x>>0]=l>>>16^p&255;r[M>>0]=l>>>8^d&255;r[P>>0]=l^a&255;a=o[n+204>>2]|0;r[B>>0]=a>>>24^u&255;r[N>>0]=a>>>16^c&255;r[j>>0]=a>>>8^f&255;r[E>>0]=a^e&255;Co(D);e=r[D>>0]|0;a=r[I>>0]|0;f=r[C>>0]|0;c=r[B>>0]|0;u=r[N>>0]|0;l=r[U>>0]|0;d=r[R>>0]|0;p=r[x>>0]|0;i=r[M>>0]|0;g=r[j>>0]|0;m=r[S>>0]|0;_=r[T>>0]|0;y=r[O>>0]|0;b=r[P>>0]|0;v=r[E>>0]|0;A=r[k>>0]|0}else{z=o[n+192>>2]|0;V=(z>>>24^A&255)&255;r[D>>0]=V;q=(z>>>16^w&255)&255;r[U>>0]=q;K=(z>>>8^a&255)&255;r[S>>0]=K;A=(z^f&255)&255;r[k>>0]=A;z=o[n+196>>2]|0;a=(z>>>24^c&255)&255;r[I>>0]=a;F=(z>>>16^u&255)&255;r[R>>0]=F;G=(z>>>8^l&255)&255;r[T>>0]=G;z=(z^d&255)&255;r[O>>0]=z;H=o[n+200>>2]|0;f=(H>>>24^p&255)&255;r[C>>0]=f;p=(H>>>16^g&255)&255;r[x>>0]=p;i=(H>>>8^m&255)&255;r[M>>0]=i;H=(H^_&255)&255;r[P>>0]=H;l=o[n+204>>2]|0;c=(l>>>24^y&255)&255;r[B>>0]=c;u=(l>>>16^b&255)&255;r[N>>0]=u;g=(l>>>8^v&255)&255;r[j>>0]=g;v=(l^e&255)&255;r[E>>0]=v;e=V;l=q;d=F;m=K;_=G;y=z;b=H}H=e&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;V=a&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[I>>0]=V;e=f&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;r[C>>0]=e;a=c&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[B>>0]=a;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;l=l&255;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;r[x>>0]=d;f=p&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;r[N>>0]=f;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;p=_&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[j>>0]=p;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;_=b&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;c=v&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;v=o[n+176>>2]|0;r[D>>0]=v>>>24^H&255;r[U>>0]=v>>>16^u&255;r[S>>0]=v>>>8^i&255;r[k>>0]=v^y&255;v=o[n+180>>2]|0;r[I>>0]=v>>>24^V&255;r[R>>0]=v>>>16^l&255;r[T>>0]=v>>>8^g&255;r[O>>0]=v^_&255;_=o[n+184>>2]|0;r[C>>0]=_>>>24^e&255;r[x>>0]=_>>>16^d&255;r[M>>0]=_>>>8^m&255;r[P>>0]=_^c&255;c=o[n+188>>2]|0;r[B>>0]=c>>>24^a&255;r[N>>0]=c>>>16^f&255;r[j>>0]=c>>>8^p&255;r[E>>0]=c^A&255;Co(D);A=r[N>>0]|0;c=r[x>>0]|0;p=r[R>>0]|0;_=r[U>>0]|0;m=r[j>>0]|0;f=r[T>>0]|0;v=r[M>>0]|0;d=r[S>>0]|0;a=r[E>>0]|0;e=r[k>>0]|0;g=r[O>>0]|0;l=r[P>>0]|0;V=s[D>>0]|0;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[D>>0]=V;y=s[I>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[I>>0]=y;i=s[C>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[C>>0]=i;u=s[B>>0]|0;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;r[B>>0]=u;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;p=p&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[x>>0]=p;c=c&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[N>>0]=c;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;f=f&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;r[j>>0]=f;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;l=l&255;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;b=o[n+160>>2]|0;r[D>>0]=b>>>24^V&255;r[U>>0]=b>>>16^A&255;r[S>>0]=b>>>8^v&255;r[k>>0]=b^g&255;g=o[n+164>>2]|0;r[I>>0]=g>>>24^y&255;r[R>>0]=g>>>16^_&255;r[T>>0]=g>>>8^m&255;r[O>>0]=g^l&255;l=o[n+168>>2]|0;r[C>>0]=l>>>24^i&255;r[x>>0]=l>>>16^p&255;r[M>>0]=l>>>8^d&255;r[P>>0]=l^a&255;a=o[n+172>>2]|0;r[B>>0]=a>>>24^u&255;r[N>>0]=a>>>16^c&255;r[j>>0]=a>>>8^f&255;r[E>>0]=a^e&255;Co(D);e=r[D>>0]|0;a=r[I>>0]|0;f=r[C>>0]|0;c=r[B>>0]|0;u=r[N>>0]|0;l=r[U>>0]|0;d=r[R>>0]|0;p=r[x>>0]|0;i=r[M>>0]|0;g=r[j>>0]|0;m=r[S>>0]|0;_=r[T>>0]|0;y=r[O>>0]|0;b=r[P>>0]|0;v=r[E>>0]|0;A=r[k>>0]|0}else{H=o[n+160>>2]|0;q=(H>>>24^A&255)&255;r[D>>0]=q;F=(H>>>16^w&255)&255;r[U>>0]=F;G=(H>>>8^a&255)&255;r[S>>0]=G;A=(H^f&255)&255;r[k>>0]=A;H=o[n+164>>2]|0;a=(H>>>24^c&255)&255;r[I>>0]=a;K=(H>>>16^u&255)&255;r[R>>0]=K;z=(H>>>8^l&255)&255;r[T>>0]=z;H=(H^d&255)&255;r[O>>0]=H;V=o[n+168>>2]|0;f=(V>>>24^p&255)&255;r[C>>0]=f;p=(V>>>16^g&255)&255;r[x>>0]=p;i=(V>>>8^m&255)&255;r[M>>0]=i;V=(V^_&255)&255;r[P>>0]=V;l=o[n+172>>2]|0;c=(l>>>24^y&255)&255;r[B>>0]=c;u=(l>>>16^b&255)&255;r[N>>0]=u;g=(l>>>8^v&255)&255;r[j>>0]=g;v=(l^e&255)&255;r[E>>0]=v;e=q;l=F;d=K;m=G;_=z;y=H;b=V}e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[I>>0]=a;w=f&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[C>>0]=w;V=c&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[B>>0]=V;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;K=l&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;H=d&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[x>>0]=H;z=p&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[N>>0]=z;p=i&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;q=m&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;F=_&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[j>>0]=F;i=y&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;y=b&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;G=v&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;b=A&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;A=o[n+144>>2]|0;r[D>>0]=A>>>24^e&255;r[U>>0]=A>>>16^u&255;r[S>>0]=A>>>8^p&255;r[k>>0]=A^i&255;A=o[n+148>>2]|0;r[I>>0]=A>>>24^a&255;r[R>>0]=A>>>16^K&255;r[T>>0]=A>>>8^g&255;r[O>>0]=A^y&255;A=o[n+152>>2]|0;r[C>>0]=A>>>24^w&255;r[x>>0]=A>>>16^H&255;r[M>>0]=A>>>8^q&255;r[P>>0]=A^G&255;G=o[n+156>>2]|0;r[B>>0]=G>>>24^V&255;r[N>>0]=G>>>16^z&255;r[j>>0]=G>>>8^F&255;r[E>>0]=G^b&255;Co(D);b=r[N>>0]|0;G=r[x>>0]|0;F=r[R>>0]|0;z=r[U>>0]|0;A=r[j>>0]|0;y=r[T>>0]|0;V=r[M>>0]|0;q=r[S>>0]|0;g=r[E>>0]|0;H=r[k>>0]|0;i=r[O>>0]|0;w=r[P>>0]|0;m=s[D>>0]|0;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[D>>0]=m;p=s[I>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[I>>0]=p;K=s[C>>0]|0;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[C>>0]=K;v=s[B>>0]|0;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;r[B>>0]=v;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[x>>0]=F;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[N>>0]=G;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[j>>0]=y;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;_=o[n+128>>2]|0;r[D>>0]=_>>>24^m&255;r[U>>0]=_>>>16^b&255;r[S>>0]=_>>>8^V&255;r[k>>0]=_^i&255;i=o[n+132>>2]|0;r[I>>0]=i>>>24^p&255;r[R>>0]=i>>>16^z&255;r[T>>0]=i>>>8^A&255;r[O>>0]=i^w&255;w=o[n+136>>2]|0;r[C>>0]=w>>>24^K&255;r[x>>0]=w>>>16^F&255;r[M>>0]=w>>>8^q&255;r[P>>0]=w^g&255;g=o[n+140>>2]|0;r[B>>0]=g>>>24^v&255;r[N>>0]=g>>>16^G&255;r[j>>0]=g>>>8^y&255;r[E>>0]=g^H&255;Co(D);H=r[N>>0]|0;g=r[x>>0]|0;y=r[R>>0]|0;G=r[U>>0]|0;v=r[j>>0]|0;w=r[T>>0]|0;q=r[M>>0]|0;F=r[S>>0]|0;K=r[E>>0]|0;i=r[k>>0]|0;A=r[O>>0]|0;z=r[P>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;_=s[I>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[I>>0]=_;V=s[C>>0]|0;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[C>>0]=V;b=s[B>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[B>>0]=b;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[x>>0]=y;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[N>>0]=g;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[j>>0]=w;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;m=o[n+112>>2]|0;r[D>>0]=m>>>24^p&255;r[U>>0]=m>>>16^H&255;r[S>>0]=m>>>8^q&255;r[k>>0]=m^A&255;A=o[n+116>>2]|0;r[I>>0]=A>>>24^_&255;r[R>>0]=A>>>16^G&255;r[T>>0]=A>>>8^v&255;r[O>>0]=A^z&255;z=o[n+120>>2]|0;r[C>>0]=z>>>24^V&255;r[x>>0]=z>>>16^y&255;r[M>>0]=z>>>8^F&255;r[P>>0]=z^K&255;K=o[n+124>>2]|0;r[B>>0]=K>>>24^b&255;r[N>>0]=K>>>16^g&255;r[j>>0]=K>>>8^w&255;r[E>>0]=K^i&255;Co(D);i=r[N>>0]|0;K=r[x>>0]|0;w=r[R>>0]|0;g=r[U>>0]|0;b=r[j>>0]|0;z=r[T>>0]|0;F=r[M>>0]|0;y=r[S>>0]|0;V=r[E>>0]|0;A=r[k>>0]|0;v=r[O>>0]|0;G=r[P>>0]|0;_=s[D>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[D>>0]=_;m=s[I>>0]|0;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[I>>0]=m;q=s[C>>0]|0;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[C>>0]=q;H=s[B>>0]|0;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[B>>0]=H;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[x>>0]=w;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[N>>0]=K;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[j>>0]=z;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;p=o[n+96>>2]|0;r[D>>0]=p>>>24^_&255;r[U>>0]=p>>>16^i&255;r[S>>0]=p>>>8^F&255;r[k>>0]=p^v&255;v=o[n+100>>2]|0;r[I>>0]=v>>>24^m&255;r[R>>0]=v>>>16^g&255;r[T>>0]=v>>>8^b&255;r[O>>0]=v^G&255;G=o[n+104>>2]|0;r[C>>0]=G>>>24^q&255;r[x>>0]=G>>>16^w&255;r[M>>0]=G>>>8^y&255;r[P>>0]=G^V&255;V=o[n+108>>2]|0;r[B>>0]=V>>>24^H&255;r[N>>0]=V>>>16^K&255;r[j>>0]=V>>>8^z&255;r[E>>0]=V^A&255;Co(D);A=r[N>>0]|0;V=r[x>>0]|0;z=r[R>>0]|0;K=r[U>>0]|0;H=r[j>>0]|0;G=r[T>>0]|0;y=r[M>>0]|0;w=r[S>>0]|0;q=r[E>>0]|0;v=r[k>>0]|0;b=r[O>>0]|0;g=r[P>>0]|0;m=s[D>>0]|0;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[D>>0]=m;p=s[I>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[I>>0]=p;F=s[C>>0]|0;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[C>>0]=F;i=s[B>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[B>>0]=i;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[x>>0]=z;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[N>>0]=V;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[j>>0]=G;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;_=o[n+80>>2]|0;r[D>>0]=_>>>24^m&255;r[U>>0]=_>>>16^A&255;r[S>>0]=_>>>8^y&255;r[k>>0]=_^b&255;b=o[n+84>>2]|0;r[I>>0]=b>>>24^p&255;r[R>>0]=b>>>16^K&255;r[T>>0]=b>>>8^H&255;r[O>>0]=b^g&255;g=o[n+88>>2]|0;r[C>>0]=g>>>24^F&255;r[x>>0]=g>>>16^z&255;r[M>>0]=g>>>8^w&255;r[P>>0]=g^q&255;q=o[n+92>>2]|0;r[B>>0]=q>>>24^i&255;r[N>>0]=q>>>16^V&255;r[j>>0]=q>>>8^G&255;r[E>>0]=q^v&255;Co(D);v=r[N>>0]|0;q=r[x>>0]|0;G=r[R>>0]|0;V=r[U>>0]|0;i=r[j>>0]|0;g=r[T>>0]|0;w=r[M>>0]|0;z=r[S>>0]|0;F=r[E>>0]|0;b=r[k>>0]|0;H=r[O>>0]|0;K=r[P>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;_=s[I>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[I>>0]=_;y=s[C>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[C>>0]=y;A=s[B>>0]|0;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[B>>0]=A;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[x>>0]=G;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[N>>0]=q;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[j>>0]=g;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;m=o[n+64>>2]|0;r[D>>0]=m>>>24^p&255;r[U>>0]=m>>>16^v&255;r[S>>0]=m>>>8^w&255;r[k>>0]=m^H&255;H=o[n+68>>2]|0;r[I>>0]=H>>>24^_&255;r[R>>0]=H>>>16^V&255;r[T>>0]=H>>>8^i&255;r[O>>0]=H^K&255;K=o[n+72>>2]|0;r[C>>0]=K>>>24^y&255;r[x>>0]=K>>>16^G&255;r[M>>0]=K>>>8^z&255;r[P>>0]=K^F&255;F=o[n+76>>2]|0;r[B>>0]=F>>>24^A&255;r[N>>0]=F>>>16^q&255;r[j>>0]=F>>>8^g&255;r[E>>0]=F^b&255;Co(D);b=r[N>>0]|0;F=r[x>>0]|0;g=r[R>>0]|0;q=r[U>>0]|0;A=r[j>>0]|0;K=r[T>>0]|0;z=r[M>>0]|0;G=r[S>>0]|0;y=r[E>>0]|0;H=r[k>>0]|0;i=r[O>>0]|0;V=r[P>>0]|0;_=s[D>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[D>>0]=_;m=s[I>>0]|0;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[I>>0]=m;w=s[C>>0]|0;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[C>>0]=w;v=s[B>>0]|0;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;r[B>>0]=v;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[x>>0]=g;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[N>>0]=F;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[j>>0]=K;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;p=o[n+48>>2]|0;r[D>>0]=p>>>24^_&255;r[U>>0]=p>>>16^b&255;r[S>>0]=p>>>8^z&255;r[k>>0]=p^i&255;i=o[n+52>>2]|0;r[I>>0]=i>>>24^m&255;r[R>>0]=i>>>16^q&255;r[T>>0]=i>>>8^A&255;r[O>>0]=i^V&255;V=o[n+56>>2]|0;r[C>>0]=V>>>24^w&255;r[x>>0]=V>>>16^g&255;r[M>>0]=V>>>8^G&255;r[P>>0]=V^y&255;y=o[n+60>>2]|0;r[B>>0]=y>>>24^v&255;r[N>>0]=y>>>16^F&255;r[j>>0]=y>>>8^K&255;r[E>>0]=y^H&255;Co(D);H=r[N>>0]|0;y=r[x>>0]|0;K=r[R>>0]|0;F=r[U>>0]|0;v=r[j>>0]|0;V=r[T>>0]|0;G=r[M>>0]|0;g=r[S>>0]|0;w=r[E>>0]|0;i=r[k>>0]|0;A=r[O>>0]|0;q=r[P>>0]|0;m=s[D>>0]|0;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[D>>0]=m;p=s[I>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[I>>0]=p;z=s[C>>0]|0;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[C>>0]=z;b=s[B>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[B>>0]=b;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[x>>0]=K;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[N>>0]=y;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[j>>0]=V;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;_=o[n+32>>2]|0;r[D>>0]=_>>>24^m&255;r[U>>0]=_>>>16^H&255;r[S>>0]=_>>>8^G&255;r[k>>0]=_^A&255;A=o[n+36>>2]|0;r[I>>0]=A>>>24^p&255;r[R>>0]=A>>>16^F&255;r[T>>0]=A>>>8^v&255;r[O>>0]=A^q&255;q=o[n+40>>2]|0;r[C>>0]=q>>>24^z&255;r[x>>0]=q>>>16^K&255;r[M>>0]=q>>>8^g&255;r[P>>0]=q^w&255;w=o[n+44>>2]|0;r[B>>0]=w>>>24^b&255;r[N>>0]=w>>>16^y&255;r[j>>0]=w>>>8^V&255;r[E>>0]=w^i&255;Co(D);i=r[N>>0]|0;w=r[x>>0]|0;V=r[R>>0]|0;y=r[U>>0]|0;b=r[j>>0]|0;q=r[T>>0]|0;g=r[M>>0]|0;K=r[S>>0]|0;z=r[E>>0]|0;A=r[k>>0]|0;v=r[O>>0]|0;F=r[P>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;_=s[I>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[I>>0]=_;G=s[C>>0]|0;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[C>>0]=G;H=s[B>>0]|0;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[B>>0]=H;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[x>>0]=V;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[N>>0]=w;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[j>>0]=q;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;m=o[n+16>>2]|0;r[D>>0]=m>>>24^p&255;r[U>>0]=m>>>16^i&255;r[S>>0]=m>>>8^g&255;r[k>>0]=m^v&255;v=o[n+20>>2]|0;r[I>>0]=v>>>24^_&255;r[R>>0]=v>>>16^y&255;r[T>>0]=v>>>8^b&255;r[O>>0]=v^F&255;F=o[n+24>>2]|0;r[C>>0]=F>>>24^G&255;r[x>>0]=F>>>16^V&255;r[M>>0]=F>>>8^K&255;r[P>>0]=F^z&255;z=o[n+28>>2]|0;r[B>>0]=z>>>24^H&255;r[N>>0]=z>>>16^w&255;r[j>>0]=z>>>8^q&255;r[E>>0]=z^A&255;Co(D);A=r[N>>0]|0;z=r[x>>0]|0;q=r[R>>0]|0;w=r[U>>0]|0;R=r[j>>0]|0;H=r[T>>0]|0;M=r[M>>0]|0;F=r[S>>0]|0;K=r[E>>0]|0;V=r[k>>0]|0;x=r[O>>0]|0;N=r[P>>0]|0;T=s[D>>0]|0;T=r[(T&15)+(34880+(T>>>4<<4))>>0]|0;r[D>>0]=T;P=s[I>>0]|0;P=r[(P&15)+(34880+(P>>>4<<4))>>0]|0;r[I>>0]=P;U=s[C>>0]|0;U=r[(U&15)+(34880+(U>>>4<<4))>>0]|0;r[C>>0]=U;G=s[B>>0]|0;O=A&255;D=w&255;q=q&255;z=z&255;C=M&255;B=R&255;F=F&255;H=H&255;x=x&255;N=N&255;K=K&255;V=V&255;R=o[n>>2]|0;O=(R>>>16^(s[(O&15)+(34880+(O>>>4<<4))>>0]|0))&255;C=(R>>>8^(s[(C&15)+(34880+(C>>>4<<4))>>0]|0))&255;x=(R^(s[(x&15)+(34880+(x>>>4<<4))>>0]|0))&255;M=o[n+4>>2]|0;D=(M>>>16^(s[(D&15)+(34880+(D>>>4<<4))>>0]|0))&255;B=(M>>>8^(s[(B&15)+(34880+(B>>>4<<4))>>0]|0))&255;N=(M^(s[(N&15)+(34880+(N>>>4<<4))>>0]|0))&255;j=o[n+8>>2]|0;q=(j>>>16^(s[(q&15)+(34880+(q>>>4<<4))>>0]|0))&255;F=(j>>>8^(s[(F&15)+(34880+(F>>>4<<4))>>0]|0))&255;K=(j^(s[(K&15)+(34880+(K>>>4<<4))>>0]|0))&255;n=o[n+12>>2]|0;G=(n>>>24^(s[(G&15)+(34880+(G>>>4<<4))>>0]|0))&255;z=(n>>>16^(s[(z&15)+(34880+(z>>>4<<4))>>0]|0))&255;H=(n>>>8^(s[(H&15)+(34880+(H>>>4<<4))>>0]|0))&255;V=(n^(s[(V&15)+(34880+(V>>>4<<4))>>0]|0))&255;r[t>>0]=R>>>24^T&255;r[t+1>>0]=O;r[t+2>>0]=C;r[t+3>>0]=x;r[t+4>>0]=M>>>24^P&255;r[t+5>>0]=D;r[t+6>>0]=B;r[t+7>>0]=N;r[t+8>>0]=j>>>24^U&255;r[t+9>>0]=q;r[t+10>>0]=F;r[t+11>>0]=K;r[t+12>>0]=G;r[t+13>>0]=z;r[t+14>>0]=H;r[t+15>>0]=V;h=L;return}function Mo(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0,me=0,_e=0,ye=0,be=0,ve=0,Ae=0,we=0,Ee=0,Se=0,ke=0,Ie=0,Re=0,Te=0,Oe=0,Ce=0,xe=0,Me=0,Pe=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,qe=0,Fe=0,Ke=0,Ge=0,ze=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ft=0,ct=0,ut=0,lt=0,dt=0,ht=0,pt=0,gt=0,mt=0,_t=0,yt=0,bt=0,vt=0,At=0,wt=0,Et=0,St=0,kt=0,It=0,Rt=0,Tt=0,Ot=0,Ct=0,xt=0,Mt=0,Pt=0,Dt=0,Bt=0,Nt=0,jt=0,Ut=0,Lt=0,qt=0,Ft=0;Mt=h;h=h+2768|0;yt=Mt+2608|0;bt=Mt+2448|0;Ct=Mt+2288|0;vt=Mt+2128|0;At=Mt+1968|0;wt=Mt+1808|0;xt=Mt+1648|0;Et=Mt+1488|0;St=Mt+1328|0;kt=Mt+1168|0;c=Mt+1008|0;f=Mt+848|0;a=Mt+688|0;i=Mt+528|0;It=Mt+368|0;at=Mt+288|0;Rt=Mt+208|0;Tt=Mt+112|0;Ot=Mt+32|0;ft=Mt;st=ft;ot=st+32|0;do{r[st>>0]=r[t>>0]|0;st=st+1|0;t=t+1|0}while((st|0)<(ot|0));r[ft>>0]=r[ft>>0]&-8;st=ft+31|0;r[st>>0]=r[st>>0]&63|64;st=s[n>>0]|0;pt=xs(s[n+1>>0]|0|0,0,8)|0;ht=I;mt=xs(s[n+2>>0]|0|0,0,16)|0;ht=ht|I;gt=s[n+3>>0]|0;ot=xs(gt|0,0,24)|0;_t=at;o[_t>>2]=pt|st|mt|ot&50331648;o[_t+4>>2]=ht;_t=xs(s[n+4>>0]|0|0,0,8)|0;ht=I;ot=xs(s[n+5>>0]|0|0,0,16)|0;ht=ht|I;mt=s[n+6>>0]|0;st=xs(mt|0,0,24)|0;ht=Cs(_t|gt|ot|st|0,ht|I|0,2)|0;st=at+8|0;o[st>>2]=ht&33554431;o[st+4>>2]=0;st=xs(s[n+7>>0]|0|0,0,8)|0;ht=I;ot=xs(s[n+8>>0]|0|0,0,16)|0;ht=ht|I;gt=s[n+9>>0]|0;_t=xs(gt|0,0,24)|0;ht=Cs(st|mt|ot|_t|0,ht|I|0,3)|0;_t=at+16|0;o[_t>>2]=ht&67108863;o[_t+4>>2]=0;_t=xs(s[n+10>>0]|0|0,0,8)|0;ht=I;ot=xs(s[n+11>>0]|0|0,0,16)|0;ht=ht|I;mt=s[n+12>>0]|0;st=xs(mt|0,0,24)|0;ht=Cs(_t|gt|ot|st|0,ht|I|0,5)|0;st=at+24|0;o[st>>2]=ht&33554431;o[st+4>>2]=0;st=xs(s[n+13>>0]|0|0,0,8)|0;ht=I;ot=xs(s[n+14>>0]|0|0,0,16)|0;ht=ht|I;gt=xs(s[n+15>>0]|0|0,0,24)|0;ht=Cs(st|mt|ot|gt|0,ht|I|0,6)|0;gt=at+32|0;o[gt>>2]=ht&67108863;o[gt+4>>2]=0;gt=s[n+16>>0]|0;ht=xs(s[n+17>>0]|0|0,0,8)|0;ot=I;mt=xs(s[n+18>>0]|0|0,0,16)|0;ot=ot|I;st=s[n+19>>0]|0;_t=xs(st|0,0,24)|0;pt=at+40|0;o[pt>>2]=ht|gt|mt|_t&16777216;o[pt+4>>2]=ot;pt=xs(s[n+20>>0]|0|0,0,8)|0;ot=I;_t=xs(s[n+21>>0]|0|0,0,16)|0;ot=ot|I;mt=s[n+22>>0]|0;gt=xs(mt|0,0,24)|0;ot=Cs(pt|st|_t|gt|0,ot|I|0,1)|0;gt=at+48|0;o[gt>>2]=ot&67108863;o[gt+4>>2]=0;gt=xs(s[n+23>>0]|0|0,0,8)|0;ot=I;_t=xs(s[n+24>>0]|0|0,0,16)|0;ot=ot|I;st=s[n+25>>0]|0;pt=xs(st|0,0,24)|0;ot=Cs(gt|mt|_t|pt|0,ot|I|0,3)|0;pt=at+56|0;o[pt>>2]=ot&33554431;o[pt+4>>2]=0;pt=xs(s[n+26>>0]|0|0,0,8)|0;ot=I;_t=xs(s[n+27>>0]|0|0,0,16)|0;ot=ot|I;mt=s[n+28>>0]|0;gt=xs(mt|0,0,24)|0;ot=Cs(pt|st|_t|gt|0,ot|I|0,4)|0;gt=at+64|0;o[gt>>2]=ot&67108863;o[gt+4>>2]=0;gt=xs(s[n+29>>0]|0|0,0,8)|0;ot=I;_t=xs(s[n+30>>0]|0|0,0,16)|0;ot=ot|I;st=xs(s[n+31>>0]|0|0,0,24)|0;ot=Cs(gt|mt|_t|st|0,ot|I|0,6)|0;st=at+72|0;o[st>>2]=ot&33554431;o[st+4>>2]=0;Ds(Et|0,0,152)|0;st=Et;o[st>>2]=1;o[st+4>>2]=0;Ds(St|0,0,152)|0;st=St;o[st>>2]=1;o[st+4>>2]=0;Ds(kt|0,0,152)|0;Ds(c|0,0,152)|0;Ds(f|0,0,152)|0;st=f;o[st>>2]=1;o[st+4>>2]=0;Ds(a|0,0,152)|0;Ds(i|0,0,152)|0;st=i;o[st>>2]=1;o[st+4>>2]=0;st=xt+80|0;ot=st+72|0;do{o[st>>2]=0;st=st+4|0}while((st|0)<(ot|0));st=xt;t=at;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));oe=Ct+144|0;se=Ct+64|0;ae=Ct+136|0;fe=Ct+56|0;ce=Ct+128|0;ue=Ct+48|0;le=Ct+120|0;de=Ct+40|0;he=Ct+112|0;pe=Ct+32|0;ge=Ct+104|0;me=Ct+24|0;_e=Ct+96|0;ye=Ct+16|0;be=Ct+88|0;ve=Ct+8|0;Ae=Ct+80|0;we=vt+144|0;Ee=vt+64|0;Se=vt+136|0;ke=vt+56|0;Ie=vt+128|0;Re=vt+48|0;Te=vt+120|0;Oe=vt+40|0;Ce=vt+112|0;xe=vt+32|0;Me=vt+104|0;Pe=vt+24|0;De=vt+96|0;Be=vt+16|0;Ne=vt+88|0;je=vt+8|0;Ue=vt+80|0;ie=Ct+72|0;Le=vt+72|0;qe=yt+8|0;Fe=bt+8|0;Ke=yt+16|0;Ge=bt+16|0;ze=yt+24|0;He=bt+24|0;Ve=yt+32|0;Qe=bt+32|0;We=yt+40|0;Ye=bt+40|0;Xe=yt+48|0;Je=bt+48|0;Ze=yt+56|0;$e=bt+56|0;et=yt+64|0;tt=bt+64|0;nt=yt+72|0;rt=bt+72|0;ct=It+80|0;ut=It+8|0;lt=It+16|0;dt=It+24|0;ht=It+32|0;pt=It+40|0;gt=It+48|0;mt=It+56|0;_t=It+64|0;it=It+72|0;d=xt;re=0;t=c;n=Et;c=kt;u=St;while(1){l=r[ft+(31-re)>>0]|0;$=0;ee=i;te=a;ne=f;J=t;f=n;i=c;a=u;Z=d;while(1){Y=l&255;X=Y>>>7;Po(a,Z,X,0);Po(i,f,X,0);E=a;u=o[E>>2]|0;E=o[E+4>>2]|0;V=a+8|0;z=V;M=o[z>>2]|0;z=o[z+4>>2]|0;Nt=a+16|0;R=Nt;k=o[R>>2]|0;R=o[R+4>>2]|0;T=a+24|0;Pt=T;Q=o[Pt>>2]|0;Pt=o[Pt+4>>2]|0;b=a+32|0;v=b;jt=o[v>>2]|0;v=o[v+4>>2]|0;_=a+40|0;l=_;O=o[l>>2]|0;l=o[l+4>>2]|0;G=a+48|0;ot=G;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;B=a+56|0;C=B;q=o[C>>2]|0;C=o[C+4>>2]|0;Ut=a+64|0;A=Ut;U=o[A>>2]|0;A=o[A+4>>2]|0;m=a+72|0;Dt=m;Bt=o[Dt>>2]|0;Dt=o[Dt+4>>2]|0;S=i;j=o[S>>2]|0;S=o[S+4>>2]|0;y=Ss(j|0,S|0,u|0,E|0)|0;p=a;o[p>>2]=y;o[p+4>>2]=I;p=i+8|0;y=p;H=o[y>>2]|0;y=o[y+4>>2]|0;D=Ss(H|0,y|0,M|0,z|0)|0;o[V>>2]=D;o[V+4>>2]=I;V=i+16|0;D=V;L=o[D>>2]|0;D=o[D+4>>2]|0;c=Ss(L|0,D|0,k|0,R|0)|0;o[Nt>>2]=c;o[Nt+4>>2]=I;Nt=i+24|0;c=Nt;n=o[c>>2]|0;c=o[c+4>>2]|0;qt=Ss(n|0,c|0,Q|0,Pt|0)|0;o[T>>2]=qt;o[T+4>>2]=I;T=i+32|0;qt=T;g=o[qt>>2]|0;qt=o[qt+4>>2]|0;N=Ss(g|0,qt|0,jt|0,v|0)|0;o[b>>2]=N;o[b+4>>2]=I;b=i+40|0;N=b;F=o[N>>2]|0;N=o[N+4>>2]|0;w=Ss(F|0,N|0,O|0,l|0)|0;o[_>>2]=w;o[_+4>>2]=I;_=i+48|0;w=_;P=o[w>>2]|0;w=o[w+4>>2]|0;d=Ss(P|0,w|0,W|0,ot|0)|0;o[G>>2]=d;o[G+4>>2]=I;G=i+56|0;d=G;x=o[d>>2]|0;d=o[d+4>>2]|0;st=Ss(x|0,d|0,q|0,C|0)|0;o[B>>2]=st;o[B+4>>2]=I;B=i+64|0;st=B;t=o[st>>2]|0;st=o[st+4>>2]|0;Lt=Ss(t|0,st|0,U|0,A|0)|0;o[Ut>>2]=Lt;o[Ut+4>>2]=I;Ut=i+72|0;Lt=Ut;K=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;Ft=Ss(K|0,Lt|0,Bt|0,Dt|0)|0;o[m>>2]=Ft;o[m+4>>2]=I;S=ks(u|0,E|0,j|0,S|0)|0;j=i;o[j>>2]=S;o[j+4>>2]=I;y=ks(M|0,z|0,H|0,y|0)|0;o[p>>2]=y;o[p+4>>2]=I;D=ks(k|0,R|0,L|0,D|0)|0;o[V>>2]=D;o[V+4>>2]=I;c=ks(Q|0,Pt|0,n|0,c|0)|0;o[Nt>>2]=c;o[Nt+4>>2]=I;qt=ks(jt|0,v|0,g|0,qt|0)|0;o[T>>2]=qt;o[T+4>>2]=I;N=ks(O|0,l|0,F|0,N|0)|0;o[b>>2]=N;o[b+4>>2]=I;w=ks(W|0,ot|0,P|0,w|0)|0;o[_>>2]=w;o[_+4>>2]=I;d=ks(q|0,C|0,x|0,d|0)|0;o[G>>2]=d;o[G+4>>2]=I;st=ks(U|0,A|0,t|0,st|0)|0;o[B>>2]=st;o[B+4>>2]=I;Lt=ks(Bt|0,Dt|0,K|0,Lt|0)|0;o[Ut>>2]=Lt;o[Ut+4>>2]=I;Ut=Z;Lt=o[Ut>>2]|0;Ut=o[Ut+4>>2]|0;K=Z+8|0;Dt=K;Bt=o[Dt>>2]|0;Dt=o[Dt+4>>2]|0;B=Z+16|0;st=B;t=o[st>>2]|0;st=o[st+4>>2]|0;A=Z+24|0;U=A;G=o[U>>2]|0;U=o[U+4>>2]|0;d=Z+32|0;x=d;C=o[x>>2]|0;x=o[x+4>>2]|0;q=Z+40|0;_=q;w=o[_>>2]|0;_=o[_+4>>2]|0;P=Z+48|0;ot=P;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;b=Z+56|0;N=b;F=o[N>>2]|0;N=o[N+4>>2]|0;l=Z+64|0;O=l;T=o[O>>2]|0;O=o[O+4>>2]|0;qt=Z+72|0;g=qt;v=o[g>>2]|0;g=o[g+4>>2]|0;jt=f;Nt=o[jt>>2]|0;jt=o[jt+4>>2]|0;c=Ss(Nt|0,jt|0,Lt|0,Ut|0)|0;n=Z;o[n>>2]=c;o[n+4>>2]=I;n=f+8|0;c=n;Pt=o[c>>2]|0;c=o[c+4>>2]|0;Q=Ss(Pt|0,c|0,Bt|0,Dt|0)|0;o[K>>2]=Q;o[K+4>>2]=I;K=f+16|0;Q=K;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;D=Ss(V|0,Q|0,t|0,st|0)|0;o[B>>2]=D;o[B+4>>2]=I;B=f+24|0;D=B;L=o[D>>2]|0;D=o[D+4>>2]|0;R=Ss(L|0,D|0,G|0,U|0)|0;o[A>>2]=R;o[A+4>>2]=I;A=f+32|0;R=A;k=o[R>>2]|0;R=o[R+4>>2]|0;p=Ss(k|0,R|0,C|0,x|0)|0;o[d>>2]=p;o[d+4>>2]=I;d=f+40|0;p=d;y=o[p>>2]|0;p=o[p+4>>2]|0;H=Ss(y|0,p|0,w|0,_|0)|0;o[q>>2]=H;o[q+4>>2]=I;q=f+48|0;H=q;z=o[H>>2]|0;H=o[H+4>>2]|0;M=Ss(z|0,H|0,W|0,ot|0)|0;o[P>>2]=M;o[P+4>>2]=I;P=f+56|0;M=P;j=o[M>>2]|0;M=o[M+4>>2]|0;S=Ss(j|0,M|0,F|0,N|0)|0;o[b>>2]=S;o[b+4>>2]=I;b=f+64|0;S=b;E=o[S>>2]|0;S=o[S+4>>2]|0;u=Ss(E|0,S|0,T|0,O|0)|0;o[l>>2]=u;o[l+4>>2]=I;l=f+72|0;u=l;m=o[u>>2]|0;u=o[u+4>>2]|0;Ft=Ss(m|0,u|0,v|0,g|0)|0;o[qt>>2]=Ft;o[qt+4>>2]=I;jt=ks(Lt|0,Ut|0,Nt|0,jt|0)|0;Nt=f;o[Nt>>2]=jt;o[Nt+4>>2]=I;c=ks(Bt|0,Dt|0,Pt|0,c|0)|0;o[n>>2]=c;o[n+4>>2]=I;Q=ks(t|0,st|0,V|0,Q|0)|0;o[K>>2]=Q;o[K+4>>2]=I;D=ks(G|0,U|0,L|0,D|0)|0;o[B>>2]=D;o[B+4>>2]=I;R=ks(C|0,x|0,k|0,R|0)|0;o[A>>2]=R;o[A+4>>2]=I;p=ks(w|0,_|0,y|0,p|0)|0;o[d>>2]=p;o[d+4>>2]=I;H=ks(W|0,ot|0,z|0,H|0)|0;o[q>>2]=H;o[q+4>>2]=I;M=ks(F|0,N|0,j|0,M|0)|0;o[P>>2]=M;o[P+4>>2]=I;S=ks(T|0,O|0,E|0,S|0)|0;o[b>>2]=S;o[b+4>>2]=I;u=ks(v|0,g|0,m|0,u|0)|0;o[l>>2]=u;o[l+4>>2]=I;Do(Ct,Z,i);Do(vt,a,f);l=oe;u=o[l>>2]|0;l=o[l+4>>2]|0;m=se;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Es(u|0,l|0,18,0)|0;b=I;l=Ss(g|0,m|0,u|0,l|0)|0;b=Ss(l|0,I|0,v|0,b|0)|0;v=se;o[v>>2]=b;o[v+4>>2]=I;v=ae;b=o[v>>2]|0;v=o[v+4>>2]|0;l=fe;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Es(b|0,v|0,18,0)|0;g=I;v=Ss(u|0,l|0,b|0,v|0)|0;g=Ss(v|0,I|0,m|0,g|0)|0;m=fe;o[m>>2]=g;o[m+4>>2]=I;m=ce;g=o[m>>2]|0;m=o[m+4>>2]|0;v=ue;b=o[v>>2]|0;v=o[v+4>>2]|0;l=Es(g|0,m|0,18,0)|0;u=I;m=Ss(b|0,v|0,g|0,m|0)|0;u=Ss(m|0,I|0,l|0,u|0)|0;l=ue;o[l>>2]=u;o[l+4>>2]=I;l=le;u=o[l>>2]|0;l=o[l+4>>2]|0;m=de;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Es(u|0,l|0,18,0)|0;b=I;l=Ss(g|0,m|0,u|0,l|0)|0;b=Ss(l|0,I|0,v|0,b|0)|0;v=de;o[v>>2]=b;o[v+4>>2]=I;v=he;b=o[v>>2]|0;v=o[v+4>>2]|0;l=pe;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Es(b|0,v|0,18,0)|0;g=I;v=Ss(u|0,l|0,b|0,v|0)|0;g=Ss(v|0,I|0,m|0,g|0)|0;m=pe;o[m>>2]=g;o[m+4>>2]=I;m=ge;g=o[m>>2]|0;m=o[m+4>>2]|0;v=me;b=o[v>>2]|0;v=o[v+4>>2]|0;l=Es(g|0,m|0,18,0)|0;u=I;m=Ss(b|0,v|0,g|0,m|0)|0;u=Ss(m|0,I|0,l|0,u|0)|0;l=me;o[l>>2]=u;o[l+4>>2]=I;l=_e;u=o[l>>2]|0;l=o[l+4>>2]|0;m=ye;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Es(u|0,l|0,18,0)|0;b=I;l=Ss(g|0,m|0,u|0,l|0)|0;b=Ss(l|0,I|0,v|0,b|0)|0;v=ye;o[v>>2]=b;o[v+4>>2]=I;v=be;b=o[v>>2]|0;v=o[v+4>>2]|0;l=ve;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Es(b|0,v|0,18,0)|0;g=I;v=Ss(u|0,l|0,b|0,v|0)|0;g=Ss(v|0,I|0,m|0,g|0)|0;m=ve;o[m>>2]=g;o[m+4>>2]=I;m=Ae;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Ct;b=o[v>>2]|0;v=o[v+4>>2]|0;l=Es(g|0,m|0,18,0)|0;u=I;m=Ss(b|0,v|0,g|0,m|0)|0;u=Ss(m|0,I|0,l|0,u|0)|0;l=Ct;o[l>>2]=u;o[l+4>>2]=I;Bo(Ct);l=we;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Ee;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Es(u|0,l|0,18,0)|0;b=I;l=Ss(g|0,m|0,u|0,l|0)|0;b=Ss(l|0,I|0,v|0,b|0)|0;v=Ee;o[v>>2]=b;o[v+4>>2]=I;v=Se;b=o[v>>2]|0;v=o[v+4>>2]|0;l=ke;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Es(b|0,v|0,18,0)|0;g=I;v=Ss(u|0,l|0,b|0,v|0)|0;g=Ss(v|0,I|0,m|0,g|0)|0;m=ke;o[m>>2]=g;o[m+4>>2]=I;m=Ie;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Re;b=o[v>>2]|0;v=o[v+4>>2]|0;l=Es(g|0,m|0,18,0)|0;u=I;m=Ss(b|0,v|0,g|0,m|0)|0;u=Ss(m|0,I|0,l|0,u|0)|0;l=Re;o[l>>2]=u;o[l+4>>2]=I;l=Te;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Oe;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Es(u|0,l|0,18,0)|0;b=I;l=Ss(g|0,m|0,u|0,l|0)|0;b=Ss(l|0,I|0,v|0,b|0)|0;v=Oe;o[v>>2]=b;o[v+4>>2]=I;v=Ce;b=o[v>>2]|0;v=o[v+4>>2]|0;l=xe;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Es(b|0,v|0,18,0)|0;g=I;v=Ss(u|0,l|0,b|0,v|0)|0;g=Ss(v|0,I|0,m|0,g|0)|0;m=xe;o[m>>2]=g;o[m+4>>2]=I;m=Me;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Pe;b=o[v>>2]|0;v=o[v+4>>2]|0;l=Es(g|0,m|0,18,0)|0;u=I;m=Ss(b|0,v|0,g|0,m|0)|0;u=Ss(m|0,I|0,l|0,u|0)|0;l=Pe;o[l>>2]=u;o[l+4>>2]=I;l=De;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Be;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Es(u|0,l|0,18,0)|0;b=I;l=Ss(g|0,m|0,u|0,l|0)|0;b=Ss(l|0,I|0,v|0,b|0)|0;v=Be;o[v>>2]=b;o[v+4>>2]=I;v=Ne;b=o[v>>2]|0;v=o[v+4>>2]|0;l=je;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Es(b|0,v|0,18,0)|0;g=I;v=Ss(u|0,l|0,b|0,v|0)|0;g=Ss(v|0,I|0,m|0,g|0)|0;m=je;o[m>>2]=g;o[m+4>>2]=I;m=Ue;g=o[m>>2]|0;m=o[m+4>>2]|0;v=vt;b=o[v>>2]|0;v=o[v+4>>2]|0;l=Es(g|0,m|0,18,0)|0;u=I;m=Ss(b|0,v|0,g|0,m|0)|0;u=Ss(m|0,I|0,l|0,u|0)|0;l=vt;o[l>>2]=u;o[l+4>>2]=I;Bo(vt);l=Ct;u=o[l>>2]|0;l=o[l+4>>2]|0;m=ve;g=o[m>>2]|0;m=o[m+4>>2]|0;v=ye;b=o[v>>2]|0;v=o[v+4>>2]|0;S=me;E=o[S>>2]|0;S=o[S+4>>2]|0;O=pe;T=o[O>>2]|0;O=o[O+4>>2]|0;P=de;M=o[P>>2]|0;P=o[P+4>>2]|0;j=ue;N=o[j>>2]|0;j=o[j+4>>2]|0;F=fe;q=o[F>>2]|0;F=o[F+4>>2]|0;H=se;z=o[H>>2]|0;H=o[H+4>>2]|0;ot=ie;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;d=vt;p=o[d>>2]|0;d=o[d+4>>2]|0;y=Ss(p|0,d|0,u|0,l|0)|0;_=Ct;o[_>>2]=y;o[_+4>>2]=I;_=je;y=o[_>>2]|0;_=o[_+4>>2]|0;w=Ss(y|0,_|0,g|0,m|0)|0;A=ve;o[A>>2]=w;o[A+4>>2]=I;A=Be;w=o[A>>2]|0;A=o[A+4>>2]|0;R=Ss(w|0,A|0,b|0,v|0)|0;k=ye;o[k>>2]=R;o[k+4>>2]=I;k=Pe;R=o[k>>2]|0;k=o[k+4>>2]|0;x=Ss(R|0,k|0,E|0,S|0)|0;C=me;o[C>>2]=x;o[C+4>>2]=I;C=xe;x=o[C>>2]|0;C=o[C+4>>2]|0;B=Ss(x|0,C|0,T|0,O|0)|0;D=pe;o[D>>2]=B;o[D+4>>2]=I;D=Oe;B=o[D>>2]|0;D=o[D+4>>2]|0;L=Ss(B|0,D|0,M|0,P|0)|0;U=de;o[U>>2]=L;o[U+4>>2]=I;U=Re;L=o[U>>2]|0;U=o[U+4>>2]|0;G=Ss(L|0,U|0,N|0,j|0)|0;K=ue;o[K>>2]=G;o[K+4>>2]=I;K=ke;G=o[K>>2]|0;K=o[K+4>>2]|0;Q=Ss(G|0,K|0,q|0,F|0)|0;V=fe;o[V>>2]=Q;o[V+4>>2]=I;V=Ee;Q=o[V>>2]|0;V=o[V+4>>2]|0;st=Ss(Q|0,V|0,z|0,H|0)|0;t=se;o[t>>2]=st;o[t+4>>2]=I;t=Le;st=o[t>>2]|0;t=o[t+4>>2]|0;n=Ss(st|0,t|0,W|0,ot|0)|0;c=ie;o[c>>2]=n;o[c+4>>2]=I;d=ks(u|0,l|0,p|0,d|0)|0;p=vt;o[p>>2]=d;o[p+4>>2]=I;_=ks(g|0,m|0,y|0,_|0)|0;y=je;o[y>>2]=_;o[y+4>>2]=I;A=ks(b|0,v|0,w|0,A|0)|0;w=Be;o[w>>2]=A;o[w+4>>2]=I;k=ks(E|0,S|0,R|0,k|0)|0;R=Pe;o[R>>2]=k;o[R+4>>2]=I;C=ks(T|0,O|0,x|0,C|0)|0;x=xe;o[x>>2]=C;o[x+4>>2]=I;D=ks(M|0,P|0,B|0,D|0)|0;B=Oe;o[B>>2]=D;o[B+4>>2]=I;U=ks(N|0,j|0,L|0,U|0)|0;L=Re;o[L>>2]=U;o[L+4>>2]=I;K=ks(q|0,F|0,G|0,K|0)|0;G=ke;o[G>>2]=K;o[G+4>>2]=I;V=ks(z|0,H|0,Q|0,V|0)|0;Q=Ee;o[Q>>2]=V;o[Q+4>>2]=I;t=ks(W|0,ot|0,st|0,t|0)|0;st=Le;o[st>>2]=t;o[st+4>>2]=I;No(wt,Ct);No(At,vt);Do(vt,At,at);st=we;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Ee;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=I;st=Ss(W|0,ot|0,t|0,st|0)|0;V=Ss(st|0,I|0,Q|0,V|0)|0;Q=Ee;o[Q>>2]=V;o[Q+4>>2]=I;Q=Se;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=ke;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=I;Q=Ss(t|0,st|0,V|0,Q|0)|0;W=Ss(Q|0,I|0,ot|0,W|0)|0;ot=ke;o[ot>>2]=W;o[ot+4>>2]=I;ot=Ie;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Re;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=I;ot=Ss(V|0,Q|0,W|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=Re;o[st>>2]=t;o[st+4>>2]=I;st=Te;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Oe;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=I;st=Ss(W|0,ot|0,t|0,st|0)|0;V=Ss(st|0,I|0,Q|0,V|0)|0;Q=Oe;o[Q>>2]=V;o[Q+4>>2]=I;Q=Ce;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=xe;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=I;Q=Ss(t|0,st|0,V|0,Q|0)|0;W=Ss(Q|0,I|0,ot|0,W|0)|0;ot=xe;o[ot>>2]=W;o[ot+4>>2]=I;ot=Me;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Pe;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=I;ot=Ss(V|0,Q|0,W|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=Pe;o[st>>2]=t;o[st+4>>2]=I;st=De;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Be;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=I;st=Ss(W|0,ot|0,t|0,st|0)|0;V=Ss(st|0,I|0,Q|0,V|0)|0;Q=Be;o[Q>>2]=V;o[Q+4>>2]=I;Q=Ne;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=je;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=I;Q=Ss(t|0,st|0,V|0,Q|0)|0;W=Ss(Q|0,I|0,ot|0,W|0)|0;ot=je;o[ot>>2]=W;o[ot+4>>2]=I;ot=Ue;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=vt;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=I;ot=Ss(V|0,Q|0,W|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=vt;o[st>>2]=t;o[st+4>>2]=I;Bo(vt);st=J;t=wt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));st=ne;t=vt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(yt,a);No(bt,i);Do(te,yt,bt);c=te+144|0;p=o[c>>2]|0;c=o[c+4>>2]|0;d=te+64|0;l=d;u=o[l>>2]|0;l=o[l+4>>2]|0;t=Es(p|0,c|0,18,0)|0;n=I;c=Ss(u|0,l|0,p|0,c|0)|0;n=Ss(c|0,I|0,t|0,n|0)|0;o[d>>2]=n;o[d+4>>2]=I;d=te+136|0;n=o[d>>2]|0;d=o[d+4>>2]|0;t=te+56|0;c=t;p=o[c>>2]|0;c=o[c+4>>2]|0;l=Es(n|0,d|0,18,0)|0;u=I;d=Ss(p|0,c|0,n|0,d|0)|0;u=Ss(d|0,I|0,l|0,u|0)|0;o[t>>2]=u;o[t+4>>2]=I;t=te+128|0;u=o[t>>2]|0;t=o[t+4>>2]|0;l=te+48|0;d=l;n=o[d>>2]|0;d=o[d+4>>2]|0;c=Es(u|0,t|0,18,0)|0;p=I;t=Ss(n|0,d|0,u|0,t|0)|0;p=Ss(t|0,I|0,c|0,p|0)|0;o[l>>2]=p;o[l+4>>2]=I;l=te+120|0;p=o[l>>2]|0;l=o[l+4>>2]|0;c=te+40|0;t=c;u=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(p|0,l|0,18,0)|0;n=I;l=Ss(u|0,t|0,p|0,l|0)|0;n=Ss(l|0,I|0,d|0,n|0)|0;o[c>>2]=n;o[c+4>>2]=I;c=te+112|0;n=o[c>>2]|0;c=o[c+4>>2]|0;d=te+32|0;l=d;p=o[l>>2]|0;l=o[l+4>>2]|0;t=Es(n|0,c|0,18,0)|0;u=I;c=Ss(p|0,l|0,n|0,c|0)|0;u=Ss(c|0,I|0,t|0,u|0)|0;o[d>>2]=u;o[d+4>>2]=I;d=te+104|0;u=o[d>>2]|0;d=o[d+4>>2]|0;t=te+24|0;c=t;n=o[c>>2]|0;c=o[c+4>>2]|0;l=Es(u|0,d|0,18,0)|0;p=I;d=Ss(n|0,c|0,u|0,d|0)|0;p=Ss(d|0,I|0,l|0,p|0)|0;o[t>>2]=p;o[t+4>>2]=I;t=te+96|0;p=o[t>>2]|0;t=o[t+4>>2]|0;l=te+16|0;d=l;u=o[d>>2]|0;d=o[d+4>>2]|0;c=Es(p|0,t|0,18,0)|0;n=I;t=Ss(u|0,d|0,p|0,t|0)|0;n=Ss(t|0,I|0,c|0,n|0)|0;o[l>>2]=n;o[l+4>>2]=I;l=te+88|0;n=o[l>>2]|0;l=o[l+4>>2]|0;c=te+8|0;t=c;p=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(n|0,l|0,18,0)|0;u=I;l=Ss(p|0,t|0,n|0,l|0)|0;u=Ss(l|0,I|0,d|0,u|0)|0;o[c>>2]=u;o[c+4>>2]=I;c=te+80|0;u=o[c>>2]|0;c=o[c+4>>2]|0;d=te;l=o[d>>2]|0;d=o[d+4>>2]|0;n=Es(u|0,c|0,18,0)|0;t=I;c=Ss(l|0,d|0,u|0,c|0)|0;t=Ss(c|0,I|0,n|0,t|0)|0;n=te;o[n>>2]=t;o[n+4>>2]=I;Bo(te);n=yt;t=o[n>>2]|0;n=o[n+4>>2]|0;c=bt;c=ks(t|0,n|0,o[c>>2]|0,o[c+4>>2]|0)|0;u=I;d=bt;o[d>>2]=c;o[d+4>>2]=u;d=qe;l=o[d>>2]|0;d=o[d+4>>2]|0;p=Fe;p=ks(l|0,d|0,o[p>>2]|0,o[p+4>>2]|0)|0;g=I;_=Fe;o[_>>2]=p;o[_+4>>2]=g;_=Ke;m=o[_>>2]|0;_=o[_+4>>2]|0;y=Ge;y=ks(m|0,_|0,o[y>>2]|0,o[y+4>>2]|0)|0;b=I;A=Ge;o[A>>2]=y;o[A+4>>2]=b;A=ze;v=o[A>>2]|0;A=o[A+4>>2]|0;w=He;w=ks(v|0,A|0,o[w>>2]|0,o[w+4>>2]|0)|0;E=I;k=He;o[k>>2]=w;o[k+4>>2]=E;k=Ve;S=o[k>>2]|0;k=o[k+4>>2]|0;R=Qe;R=ks(S|0,k|0,o[R>>2]|0,o[R+4>>2]|0)|0;T=I;C=Qe;o[C>>2]=R;o[C+4>>2]=T;C=We;O=o[C>>2]|0;C=o[C+4>>2]|0;x=Ye;x=ks(O|0,C|0,o[x>>2]|0,o[x+4>>2]|0)|0;M=I;D=Ye;o[D>>2]=x;o[D+4>>2]=M;D=Xe;P=o[D>>2]|0;D=o[D+4>>2]|0;B=Je;B=ks(P|0,D|0,o[B>>2]|0,o[B+4>>2]|0)|0;N=I;U=Je;o[U>>2]=B;o[U+4>>2]=N;U=Ze;j=o[U>>2]|0;U=o[U+4>>2]|0;L=$e;L=ks(j|0,U|0,o[L>>2]|0,o[L+4>>2]|0)|0;q=I;K=$e;o[K>>2]=L;o[K+4>>2]=q;K=et;F=o[K>>2]|0;K=o[K+4>>2]|0;G=tt;G=ks(F|0,K|0,o[G>>2]|0,o[G+4>>2]|0)|0;z=I;V=tt;o[V>>2]=G;o[V+4>>2]=z;V=nt;H=o[V>>2]|0;V=o[V+4>>2]|0;Q=rt;Q=ks(H|0,V|0,o[Q>>2]|0,o[Q+4>>2]|0)|0;W=I;st=rt;o[st>>2]=Q;o[st+4>>2]=W;st=ct;ot=st+72|0;do{o[st>>2]=0;st=st+4|0}while((st|0)<(ot|0));Lt=Es(c|0,u|0,121665,0)|0;Bt=It;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=Es(p|0,g|0,121665,0)|0;Lt=ut;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=Es(y|0,b|0,121665,0)|0;Bt=lt;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=Es(w|0,E|0,121665,0)|0;Lt=dt;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=Es(R|0,T|0,121665,0)|0;Bt=ht;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=Es(x|0,M|0,121665,0)|0;Lt=pt;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=Es(B|0,N|0,121665,0)|0;Bt=gt;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=Es(L|0,q|0,121665,0)|0;Lt=mt;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=Es(G|0,z|0,121665,0)|0;Bt=_t;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=Es(Q|0,W|0,121665,0)|0;Lt=it;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Bo(It);Lt=It;Lt=Ss(o[Lt>>2]|0,o[Lt+4>>2]|0,t|0,n|0)|0;Bt=It;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=ut;Bt=Ss(o[Bt>>2]|0,o[Bt+4>>2]|0,l|0,d|0)|0;Lt=ut;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=lt;Lt=Ss(o[Lt>>2]|0,o[Lt+4>>2]|0,m|0,_|0)|0;Bt=lt;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=dt;Bt=Ss(o[Bt>>2]|0,o[Bt+4>>2]|0,v|0,A|0)|0;Lt=dt;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=ht;Lt=Ss(o[Lt>>2]|0,o[Lt+4>>2]|0,S|0,k|0)|0;Bt=ht;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=pt;Bt=Ss(o[Bt>>2]|0,o[Bt+4>>2]|0,O|0,C|0)|0;Lt=pt;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=gt;Lt=Ss(o[Lt>>2]|0,o[Lt+4>>2]|0,P|0,D|0)|0;Bt=gt;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=mt;Bt=Ss(o[Bt>>2]|0,o[Bt+4>>2]|0,j|0,U|0)|0;Lt=mt;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=_t;Lt=Ss(o[Lt>>2]|0,o[Lt+4>>2]|0,F|0,K|0)|0;Bt=_t;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=it;Bt=Ss(o[Bt>>2]|0,o[Bt+4>>2]|0,H|0,V|0)|0;Lt=it;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Do(ee,bt,It);Lt=ee+144|0;Bt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee+64|0;Nt=jt;Ut=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;qt=Es(Bt|0,Lt|0,18,0)|0;Ft=I;Lt=Ss(Ut|0,Nt|0,Bt|0,Lt|0)|0;Ft=Ss(Lt|0,I|0,qt|0,Ft|0)|0;o[jt>>2]=Ft;o[jt+4>>2]=I;jt=ee+136|0;Ft=o[jt>>2]|0;jt=o[jt+4>>2]|0;qt=ee+56|0;Lt=qt;Bt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;Nt=Es(Ft|0,jt|0,18,0)|0;Ut=I;jt=Ss(Bt|0,Lt|0,Ft|0,jt|0)|0;Ut=Ss(jt|0,I|0,Nt|0,Ut|0)|0;o[qt>>2]=Ut;o[qt+4>>2]=I;qt=ee+128|0;Ut=o[qt>>2]|0;qt=o[qt+4>>2]|0;Nt=ee+48|0;jt=Nt;Ft=o[jt>>2]|0;jt=o[jt+4>>2]|0;Lt=Es(Ut|0,qt|0,18,0)|0;Bt=I;qt=Ss(Ft|0,jt|0,Ut|0,qt|0)|0;Bt=Ss(qt|0,I|0,Lt|0,Bt|0)|0;o[Nt>>2]=Bt;o[Nt+4>>2]=I;Nt=ee+120|0;Bt=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;Lt=ee+40|0;qt=Lt;Ut=o[qt>>2]|0;qt=o[qt+4>>2]|0;jt=Es(Bt|0,Nt|0,18,0)|0;Ft=I;Nt=Ss(Ut|0,qt|0,Bt|0,Nt|0)|0;Ft=Ss(Nt|0,I|0,jt|0,Ft|0)|0;o[Lt>>2]=Ft;o[Lt+4>>2]=I;Lt=ee+112|0;Ft=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee+32|0;Nt=jt;Bt=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;qt=Es(Ft|0,Lt|0,18,0)|0;Ut=I;Lt=Ss(Bt|0,Nt|0,Ft|0,Lt|0)|0;Ut=Ss(Lt|0,I|0,qt|0,Ut|0)|0;o[jt>>2]=Ut;o[jt+4>>2]=I;jt=ee+104|0;Ut=o[jt>>2]|0;jt=o[jt+4>>2]|0;qt=ee+24|0;Lt=qt;Ft=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;Nt=Es(Ut|0,jt|0,18,0)|0;Bt=I;jt=Ss(Ft|0,Lt|0,Ut|0,jt|0)|0;Bt=Ss(jt|0,I|0,Nt|0,Bt|0)|0;o[qt>>2]=Bt;o[qt+4>>2]=I;qt=ee+96|0;Bt=o[qt>>2]|0;qt=o[qt+4>>2]|0;Nt=ee+16|0;jt=Nt;Ut=o[jt>>2]|0;jt=o[jt+4>>2]|0;Lt=Es(Bt|0,qt|0,18,0)|0;Ft=I;qt=Ss(Ut|0,jt|0,Bt|0,qt|0)|0;Ft=Ss(qt|0,I|0,Lt|0,Ft|0)|0;o[Nt>>2]=Ft;o[Nt+4>>2]=I;Nt=ee+88|0;Ft=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;Lt=ee+8|0;qt=Lt;Bt=o[qt>>2]|0;qt=o[qt+4>>2]|0;jt=Es(Ft|0,Nt|0,18,0)|0;Ut=I;Nt=Ss(Bt|0,qt|0,Ft|0,Nt|0)|0;Ut=Ss(Nt|0,I|0,jt|0,Ut|0)|0;o[Lt>>2]=Ut;o[Lt+4>>2]=I;Lt=ee+80|0;Ut=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee;Nt=o[jt>>2]|0;jt=o[jt+4>>2]|0;Ft=Es(Ut|0,Lt|0,18,0)|0;qt=I;Lt=Ss(Nt|0,jt|0,Ut|0,Lt|0)|0;qt=Ss(Lt|0,I|0,Ft|0,qt|0)|0;Ft=ee;o[Ft>>2]=qt;o[Ft+4>>2]=I;Bo(ee);Po(te,J,X,0);Po(ee,ne,X,0);$=$+1|0;if(($|0)==8)break;else{Ut=Z;Lt=f;qt=a;Ft=i;l=Y<<1&255;Z=J;a=te;i=ee;f=ne;J=Ut;ne=Lt;te=qt;ee=Ft}}re=re+1|0;if((re|0)==32)break;else{d=J;t=Z;n=ne;c=ee;u=te}}st=Rt;t=te;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));st=Tt;t=ee;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(yt,Tt);No(kt,yt);No(St,kt);Do(It,St,Tt);n=It+144|0;u=n;c=o[u>>2]|0;u=o[u+4>>2]|0;f=_t;a=o[f>>2]|0;f=o[f+4>>2]|0;i=Es(c|0,u|0,18,0)|0;l=I;u=Ss(a|0,f|0,c|0,u|0)|0;l=Ss(u|0,I|0,i|0,l|0)|0;i=_t;o[i>>2]=l;o[i+4>>2]=I;i=It+136|0;l=i;u=o[l>>2]|0;l=o[l+4>>2]|0;c=mt;f=o[c>>2]|0;c=o[c+4>>2]|0;a=Es(u|0,l|0,18,0)|0;d=I;l=Ss(f|0,c|0,u|0,l|0)|0;d=Ss(l|0,I|0,a|0,d|0)|0;a=mt;o[a>>2]=d;o[a+4>>2]=I;a=It+128|0;d=a;l=o[d>>2]|0;d=o[d+4>>2]|0;u=gt;c=o[u>>2]|0;u=o[u+4>>2]|0;f=Es(l|0,d|0,18,0)|0;ot=I;d=Ss(c|0,u|0,l|0,d|0)|0;ot=Ss(d|0,I|0,f|0,ot|0)|0;f=gt;o[f>>2]=ot;o[f+4>>2]=I;f=It+120|0;ot=f;d=o[ot>>2]|0;ot=o[ot+4>>2]|0;l=pt;u=o[l>>2]|0;l=o[l+4>>2]|0;c=Es(d|0,ot|0,18,0)|0;t=I;ot=Ss(u|0,l|0,d|0,ot|0)|0;t=Ss(ot|0,I|0,c|0,t|0)|0;c=pt;o[c>>2]=t;o[c+4>>2]=I;c=It+112|0;t=c;ot=o[t>>2]|0;t=o[t+4>>2]|0;d=ht;l=o[d>>2]|0;d=o[d+4>>2]|0;u=Es(ot|0,t|0,18,0)|0;st=I;t=Ss(l|0,d|0,ot|0,t|0)|0;st=Ss(t|0,I|0,u|0,st|0)|0;u=ht;o[u>>2]=st;o[u+4>>2]=I;u=It+104|0;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=dt;d=o[ot>>2]|0;ot=o[ot+4>>2]|0;l=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(d|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,l|0,Lt|0)|0;l=dt;o[l>>2]=Lt;o[l+4>>2]=I;l=It+96|0;Lt=l;st=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;t=lt;ot=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(st|0,Lt|0,18,0)|0;qt=I;Lt=Ss(ot|0,t|0,st|0,Lt|0)|0;qt=Ss(Lt|0,I|0,d|0,qt|0)|0;d=lt;o[d>>2]=qt;o[d+4>>2]=I;d=It+88|0;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=bt;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Do(It,bt,yt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=Ct;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,Ct);Do(It,St,bt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=vt;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,vt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);Do(It,St,vt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=At;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,At);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);Do(It,kt,At);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=wt;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,wt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);Do(It,kt,wt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=St;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);Do(It,St,At);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=xt;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,xt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);Do(It,kt,xt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=Et;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,Et);No(St,kt);t=2;do{No(kt,St);No(St,kt);t=t+2|0}while(t>>>0<100);Do(It,St,Et);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=kt;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);Do(It,kt,xt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=St;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);Do(It,kt,Ct);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=Ot;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Do(It,Rt,Ot);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=Tt;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));xt=o[Tt>>2]|0;At=xt>>31&xt;Pt=(At>>26)+(o[Tt+8>>2]|0)|0;Ft=Pt>>31&Pt;Dt=(Ft>>25)+(o[Tt+16>>2]|0)|0;qt=Dt>>31&Dt;vt=(qt>>26)+(o[Tt+24>>2]|0)|0;Bt=vt>>31&vt;Nt=(Bt>>25)+(o[Tt+32>>2]|0)|0;Rt=Nt>>31&Nt;jt=(Rt>>26)+(o[Tt+40>>2]|0)|0;It=jt>>31&jt;Ut=(It>>25)+(o[Tt+48>>2]|0)|0;kt=Ut>>31&Ut;Lt=(kt>>26)+(o[Tt+56>>2]|0)|0;St=Lt>>31≪Ot=(St>>25)+(o[Tt+64>>2]|0)|0;wt=Ot>>31&Ot;Ct=(wt>>26)+(o[Tt+72>>2]|0)|0;Et=Ct>>31&Ct;At=((Et>>25)*19|0)+(xt-(At&-67108864))|0;xt=At>>31&At;Ft=(xt>>26)+(Pt-(Ft&-33554432))|0;Pt=Ft>>31&Ft;qt=(Pt>>25)+(Dt-(qt&-67108864))|0;Dt=qt>>31&qt;Tt=(Dt>>26)+(vt-(Bt&-33554432))|0;Bt=Tt>>31&Tt;Rt=(Bt>>25)+(Nt-(Rt&-67108864))|0;Nt=Rt>>31&Rt;It=(Nt>>26)+(jt-(It&-33554432))|0;jt=It>>31&It;kt=(jt>>25)+(Ut-(kt&-67108864))|0;Ut=kt>>31&kt;St=(Ut>>26)+(Lt-(St&-33554432))|0;Lt=St>>31&St;wt=(Lt>>25)+(Ot-(wt&-67108864))|0;Ot=wt>>31&wt;Et=(Ot>>26)+(Ct-(Et&-33554432))|0;Ct=Et>>31&Et;xt=((Ct>>25)*19|0)+(At-(xt&-67108864))|0;At=xt>>31&xt;xt=xt-(At&-67108864)|0;Pt=(xt>>26)+((At>>26)+(Ft-(Pt&-33554432)))|0;Dt=(Pt>>25)+(qt-(Dt&-67108864))|0;Bt=(Dt>>26)+(Tt-(Bt&-33554432))|0;Nt=(Bt>>25)+(Rt-(Nt&-67108864))|0;jt=(Nt>>26)+(It-(jt&-33554432))|0;Ut=(jt>>25)+(kt-(Ut&-67108864))|0;Lt=(Ut>>26)+(St-(Lt&-33554432))|0;Ot=(Lt>>25)+(wt-(Ot&-67108864))|0;Ct=(Ot>>26)+(Et-(Ct&-33554432))|0;xt=((Ct>>25)*19|0)+(xt&67108863)|0;Pt=(xt>>26)+(Pt&33554431)|0;Dt=(Pt>>25)+(Dt&67108863)|0;Bt=(Dt>>26)+(Bt&33554431)|0;Nt=(Bt>>25)+(Nt&67108863)|0;jt=(Nt>>26)+(jt&33554431)|0;Ut=(jt>>25)+(Ut&67108863)|0;Lt=(Ut>>26)+(Lt&33554431)|0;Ot=(Lt>>25)+(Ot&67108863)|0;Ct=(Ot>>26)+(Ct&33554431)|0;xt=((Ct>>25)*19|0)+(xt&67108863)|0;Et=Pt<<16&(Pt|-33554432);Et=Et<<8&Et;Et=Et<<4&Et;Et=Et<<2&Et;wt=Dt<<16&(Dt|-67108864);wt=wt<<8&wt;wt=wt<<4&wt;wt=wt<<2&wt;St=Bt<<16&(Bt|-33554432);St=St<<8&St;St=St<<4&St;St=St<<2&St;kt=Nt<<16&(Nt|-67108864);kt=kt<<8&kt;kt=kt<<4&kt;kt=kt<<2&kt;It=jt<<16&(jt|-33554432);It=It<<8&It;It=It<<4&It;It=It<<2&It;Rt=Ut<<16&(Ut|-67108864);Rt=Rt<<8&Rt;Rt=Rt<<4&Rt;Rt=Rt<<2&Rt;Tt=Lt<<16&(Lt|-33554432);Tt=Tt<<8&Tt;Tt=Tt<<4&Tt;Tt=Tt<<2&Tt;qt=Ot<<16&(Ot|-67108864);qt=qt<<8&qt;qt=qt<<4&qt;qt=qt<<2&qt;Ft=Ct<<16&(Ct|-33554432);Ft=Ft<<8&Ft;Ft=Ft<<4&Ft;Ft=Ft<<2&Ft;Ft=(wt<<1&wt&(Et<<1&Et)&(St<<1&St)&(kt<<1&kt)&(It<<1&It))>>31&~(xt+-67108845>>31)&(Rt<<1&Rt)>>31&(Tt<<1&Tt)>>31&(qt<<1&qt)>>31&(Ft<<1&Ft)>>31;xt=xt-(Ft&67108845)|0;qt=Ft&67108863;Ft=Ft&33554431;Pt=(Pt&33554431)-Ft|0;Dt=(Dt&67108863)-qt|0;Bt=(Bt&33554431)-Ft|0;Nt=(Nt&67108863)-qt|0;jt=(jt&33554431)-Ft|0;Ut=(Ut&67108863)-qt|0;Lt=(Lt&33554431)-Ft|0;qt=(Ot&67108863)-qt|0;Ft=(Ct&33554431)-Ft|0;r[e>>0]=xt;r[e+1>>0]=xt>>>8;r[e+2>>0]=xt>>>16;r[e+3>>0]=xt>>>24|Pt<<2;r[e+4>>0]=Pt>>>6;r[e+5>>0]=Pt>>>14;r[e+6>>0]=Dt<<3|Pt>>>22;r[e+7>>0]=Dt>>>5;r[e+8>>0]=Dt>>>13;r[e+9>>0]=Bt<<5|Dt>>>21;r[e+10>>0]=Bt>>>3;r[e+11>>0]=Bt>>>11;r[e+12>>0]=Nt<<6|Bt>>>19;r[e+13>>0]=Nt>>>2;r[e+14>>0]=Nt>>>10;r[e+15>>0]=Nt>>>18;r[e+16>>0]=jt;r[e+17>>0]=jt>>>8;r[e+18>>0]=jt>>>16;r[e+19>>0]=jt>>>24|Ut<<1;r[e+20>>0]=Ut>>>7;r[e+21>>0]=Ut>>>15;r[e+22>>0]=Lt<<3|Ut>>>23;r[e+23>>0]=Lt>>>5;r[e+24>>0]=Lt>>>13;r[e+25>>0]=qt<<4|Lt>>>21;r[e+26>>0]=qt>>>4;r[e+27>>0]=qt>>>12;r[e+28>>0]=Ft<<6|qt>>>20;r[e+29>>0]=Ft>>>2;r[e+30>>0]=Ft>>>10;r[e+31>>0]=Ft>>>18;h=Mt;return 0}function Po(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,f=0;n=0-n|0;a=e;i=o[a>>2]|0;s=t;s=(o[s>>2]^i)&n;i=s^i;a=e;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;s=s^o[t>>2];a=t;o[a>>2]=s;o[a+4>>2]=((s|0)<0)<<31>>31;a=e+8|0;s=a;i=o[s>>2]|0;r=t+8|0;f=r;f=(o[f>>2]^i)&n;i=f^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;f=f^o[r>>2];o[r>>2]=f;o[r+4>>2]=((f|0)<0)<<31>>31;r=e+16|0;f=r;a=o[f>>2]|0;i=t+16|0;s=i;s=(o[s>>2]^a)&n;a=s^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;s=s^o[i>>2];o[i>>2]=s;o[i+4>>2]=((s|0)<0)<<31>>31;i=e+24|0;s=i;r=o[s>>2]|0;a=t+24|0;f=a;f=(o[f>>2]^r)&n;r=f^r;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;f=f^o[a>>2];o[a>>2]=f;o[a+4>>2]=((f|0)<0)<<31>>31;a=e+32|0;f=a;i=o[f>>2]|0;r=t+32|0;s=r;s=(o[s>>2]^i)&n;i=s^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;s=s^o[r>>2];o[r>>2]=s;o[r+4>>2]=((s|0)<0)<<31>>31;r=e+40|0;s=r;a=o[s>>2]|0;i=t+40|0;f=i;f=(o[f>>2]^a)&n;a=f^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;f=f^o[i>>2];o[i>>2]=f;o[i+4>>2]=((f|0)<0)<<31>>31;i=e+48|0;f=i;r=o[f>>2]|0;a=t+48|0;s=a;s=(o[s>>2]^r)&n;r=s^r;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;s=s^o[a>>2];o[a>>2]=s;o[a+4>>2]=((s|0)<0)<<31>>31;a=e+56|0;s=a;i=o[s>>2]|0;r=t+56|0;f=r;f=(o[f>>2]^i)&n;i=f^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;f=f^o[r>>2];o[r>>2]=f;o[r+4>>2]=((f|0)<0)<<31>>31;r=e+64|0;f=r;a=o[f>>2]|0;i=t+64|0;s=i;s=(o[s>>2]^a)&n;a=s^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;s=s^o[i>>2];o[i>>2]=s;o[i+4>>2]=((s|0)<0)<<31>>31;i=e+72|0;s=i;e=o[s>>2]|0;r=t+72|0;t=r;n=(o[t>>2]^e)&n;e=n^e;t=i;o[t>>2]=e;o[t+4>>2]=((e|0)<0)<<31>>31;n=n^o[r>>2];o[r>>2]=n;o[r+4>>2]=((n|0)<0)<<31>>31;return}function Do(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0;a=Os(0,o[t>>2]|0,32)|0;h=I;w=Os(0,o[n>>2]|0,32)|0;h=Es(w|0,I|0,a|0,h|0)|0;a=e;o[a>>2]=h;o[a+4>>2]=I;a=Os(0,o[t>>2]|0,32)|0;h=I;w=n+8|0;y=Os(0,o[w>>2]|0,32)|0;h=Es(y|0,I|0,a|0,h|0)|0;a=I;y=t+8|0;_=Os(0,o[y>>2]|0,32)|0;g=I;A=Os(0,o[n>>2]|0,32)|0;g=Es(A|0,I|0,_|0,g|0)|0;a=Ss(g|0,I|0,h|0,a|0)|0;h=e+8|0;o[h>>2]=a;o[h+4>>2]=I;h=Os(0,o[y>>2]|0,31)|0;a=I;g=Os(0,o[w>>2]|0,32)|0;a=Es(g|0,I|0,h|0,a|0)|0;h=I;g=Os(0,o[t>>2]|0,32)|0;_=I;A=n+16|0;l=Os(0,o[A>>2]|0,32)|0;_=Es(l|0,I|0,g|0,_|0)|0;h=Ss(_|0,I|0,a|0,h|0)|0;a=I;_=t+16|0;g=Os(0,o[_>>2]|0,32)|0;l=I;v=Os(0,o[n>>2]|0,32)|0;l=Es(v|0,I|0,g|0,l|0)|0;l=Ss(h|0,a|0,l|0,I|0)|0;a=e+16|0;o[a>>2]=l;o[a+4>>2]=I;a=Os(0,o[y>>2]|0,32)|0;l=I;h=Os(0,o[A>>2]|0,32)|0;l=Es(h|0,I|0,a|0,l|0)|0;a=I;h=Os(0,o[_>>2]|0,32)|0;g=I;v=Os(0,o[w>>2]|0,32)|0;g=Es(v|0,I|0,h|0,g|0)|0;a=Ss(g|0,I|0,l|0,a|0)|0;l=I;g=Os(0,o[t>>2]|0,32)|0;h=I;v=n+24|0;s=Os(0,o[v>>2]|0,32)|0;h=Es(s|0,I|0,g|0,h|0)|0;h=Ss(a|0,l|0,h|0,I|0)|0;l=I;a=t+24|0;g=Os(0,o[a>>2]|0,32)|0;s=I;c=Os(0,o[n>>2]|0,32)|0;s=Es(c|0,I|0,g|0,s|0)|0;s=Ss(h|0,l|0,s|0,I|0)|0;l=e+24|0;o[l>>2]=s;o[l+4>>2]=I;l=Os(0,o[_>>2]|0,32)|0;s=I;h=Os(0,o[A>>2]|0,32)|0;s=Es(h|0,I|0,l|0,s|0)|0;l=I;h=Os(0,o[y>>2]|0,32)|0;g=I;c=Os(0,o[v>>2]|0,32)|0;g=Es(c|0,I|0,h|0,g|0)|0;h=I;c=Os(0,o[a>>2]|0,32)|0;m=I;p=Os(0,o[w>>2]|0,32)|0;m=Es(p|0,I|0,c|0,m|0)|0;h=Ss(m|0,I|0,g|0,h|0)|0;h=xs(h|0,I|0,1)|0;l=Ss(h|0,I|0,s|0,l|0)|0;s=I;h=Os(0,o[t>>2]|0,32)|0;g=I;m=n+32|0;c=Os(0,o[m>>2]|0,32)|0;g=Es(c|0,I|0,h|0,g|0)|0;g=Ss(l|0,s|0,g|0,I|0)|0;s=I;l=t+32|0;h=Os(0,o[l>>2]|0,32)|0;c=I;p=Os(0,o[n>>2]|0,32)|0;c=Es(p|0,I|0,h|0,c|0)|0;c=Ss(g|0,s|0,c|0,I|0)|0;s=e+32|0;o[s>>2]=c;o[s+4>>2]=I;s=Os(0,o[_>>2]|0,32)|0;c=I;g=Os(0,o[v>>2]|0,32)|0;c=Es(g|0,I|0,s|0,c|0)|0;s=I;g=Os(0,o[a>>2]|0,32)|0;h=I;p=Os(0,o[A>>2]|0,32)|0;h=Es(p|0,I|0,g|0,h|0)|0;s=Ss(h|0,I|0,c|0,s|0)|0;c=I;h=Os(0,o[y>>2]|0,32)|0;g=I;p=Os(0,o[m>>2]|0,32)|0;g=Es(p|0,I|0,h|0,g|0)|0;g=Ss(s|0,c|0,g|0,I|0)|0;c=I;s=Os(0,o[l>>2]|0,32)|0;h=I;p=Os(0,o[w>>2]|0,32)|0;h=Es(p|0,I|0,s|0,h|0)|0;h=Ss(g|0,c|0,h|0,I|0)|0;c=I;g=Os(0,o[t>>2]|0,32)|0;s=I;p=n+40|0;b=Os(0,o[p>>2]|0,32)|0;s=Es(b|0,I|0,g|0,s|0)|0;s=Ss(h|0,c|0,s|0,I|0)|0;c=I;h=t+40|0;g=Os(0,o[h>>2]|0,32)|0;b=I;u=Os(0,o[n>>2]|0,32)|0;b=Es(u|0,I|0,g|0,b|0)|0;b=Ss(s|0,c|0,b|0,I|0)|0;c=e+40|0;o[c>>2]=b;o[c+4>>2]=I;c=Os(0,o[a>>2]|0,32)|0;b=I;s=Os(0,o[v>>2]|0,32)|0;b=Es(s|0,I|0,c|0,b|0)|0;c=I;s=Os(0,o[y>>2]|0,32)|0;g=I;u=Os(0,o[p>>2]|0,32)|0;g=Es(u|0,I|0,s|0,g|0)|0;c=Ss(g|0,I|0,b|0,c|0)|0;b=I;g=Os(0,o[h>>2]|0,32)|0;s=I;u=Os(0,o[w>>2]|0,32)|0;s=Es(u|0,I|0,g|0,s|0)|0;s=Ss(c|0,b|0,s|0,I|0)|0;s=xs(s|0,I|0,1)|0;b=I;c=Os(0,o[_>>2]|0,32)|0;g=I;u=Os(0,o[m>>2]|0,32)|0;g=Es(u|0,I|0,c|0,g|0)|0;g=Ss(s|0,b|0,g|0,I|0)|0;b=I;s=Os(0,o[l>>2]|0,32)|0;c=I;u=Os(0,o[A>>2]|0,32)|0;c=Es(u|0,I|0,s|0,c|0)|0;c=Ss(g|0,b|0,c|0,I|0)|0;b=I;g=Os(0,o[t>>2]|0,32)|0;s=I;u=n+48|0;E=Os(0,o[u>>2]|0,32)|0;s=Es(E|0,I|0,g|0,s|0)|0;s=Ss(c|0,b|0,s|0,I|0)|0;b=I;c=t+48|0;g=Os(0,o[c>>2]|0,32)|0;E=I;d=Os(0,o[n>>2]|0,32)|0;E=Es(d|0,I|0,g|0,E|0)|0;E=Ss(s|0,b|0,E|0,I|0)|0;b=e+48|0;o[b>>2]=E;o[b+4>>2]=I;b=Os(0,o[a>>2]|0,32)|0;E=I;s=Os(0,o[m>>2]|0,32)|0;E=Es(s|0,I|0,b|0,E|0)|0;b=I;s=Os(0,o[l>>2]|0,32)|0;g=I;d=Os(0,o[v>>2]|0,32)|0;g=Es(d|0,I|0,s|0,g|0)|0;b=Ss(g|0,I|0,E|0,b|0)|0;E=I;g=Os(0,o[_>>2]|0,32)|0;s=I;d=Os(0,o[p>>2]|0,32)|0;s=Es(d|0,I|0,g|0,s|0)|0;s=Ss(b|0,E|0,s|0,I|0)|0;E=I;b=Os(0,o[h>>2]|0,32)|0;g=I;d=Os(0,o[A>>2]|0,32)|0;g=Es(d|0,I|0,b|0,g|0)|0;g=Ss(s|0,E|0,g|0,I|0)|0;E=I;s=Os(0,o[y>>2]|0,32)|0;b=I;d=Os(0,o[u>>2]|0,32)|0;b=Es(d|0,I|0,s|0,b|0)|0;b=Ss(g|0,E|0,b|0,I|0)|0;E=I;g=Os(0,o[c>>2]|0,32)|0;s=I;d=Os(0,o[w>>2]|0,32)|0;s=Es(d|0,I|0,g|0,s|0)|0;s=Ss(b|0,E|0,s|0,I|0)|0;E=I;b=Os(0,o[t>>2]|0,32)|0;g=I;d=n+56|0;S=Os(0,o[d>>2]|0,32)|0;g=Es(S|0,I|0,b|0,g|0)|0;g=Ss(s|0,E|0,g|0,I|0)|0;E=I;s=t+56|0;b=Os(0,o[s>>2]|0,32)|0;S=I;f=Os(0,o[n>>2]|0,32)|0;S=Es(f|0,I|0,b|0,S|0)|0;S=Ss(g|0,E|0,S|0,I|0)|0;E=e+56|0;o[E>>2]=S;o[E+4>>2]=I;E=Os(0,o[l>>2]|0,32)|0;S=I;g=Os(0,o[m>>2]|0,32)|0;S=Es(g|0,I|0,E|0,S|0)|0;E=I;g=Os(0,o[a>>2]|0,32)|0;b=I;f=Os(0,o[p>>2]|0,32)|0;b=Es(f|0,I|0,g|0,b|0)|0;g=I;f=Os(0,o[h>>2]|0,32)|0;i=I;r=Os(0,o[v>>2]|0,32)|0;i=Es(r|0,I|0,f|0,i|0)|0;g=Ss(i|0,I|0,b|0,g|0)|0;b=I;i=Os(0,o[y>>2]|0,32)|0;f=I;r=Os(0,o[d>>2]|0,32)|0;f=Es(r|0,I|0,i|0,f|0)|0;f=Ss(g|0,b|0,f|0,I|0)|0;b=I;g=Os(0,o[s>>2]|0,32)|0;i=I;r=Os(0,o[w>>2]|0,32)|0;i=Es(r|0,I|0,g|0,i|0)|0;i=Ss(f|0,b|0,i|0,I|0)|0;i=xs(i|0,I|0,1)|0;E=Ss(i|0,I|0,S|0,E|0)|0;S=I;i=Os(0,o[_>>2]|0,32)|0;b=I;f=Os(0,o[u>>2]|0,32)|0;b=Es(f|0,I|0,i|0,b|0)|0;b=Ss(E|0,S|0,b|0,I|0)|0;S=I;E=Os(0,o[c>>2]|0,32)|0;i=I;f=Os(0,o[A>>2]|0,32)|0;i=Es(f|0,I|0,E|0,i|0)|0;i=Ss(b|0,S|0,i|0,I|0)|0;S=I;b=Os(0,o[t>>2]|0,32)|0;E=I;f=n+64|0;g=Os(0,o[f>>2]|0,32)|0;E=Es(g|0,I|0,b|0,E|0)|0;E=Ss(i|0,S|0,E|0,I|0)|0;S=I;i=t+64|0;b=Os(0,o[i>>2]|0,32)|0;g=I;r=Os(0,o[n>>2]|0,32)|0;g=Es(r|0,I|0,b|0,g|0)|0;g=Ss(E|0,S|0,g|0,I|0)|0;S=e+64|0;o[S>>2]=g;o[S+4>>2]=I;S=Os(0,o[l>>2]|0,32)|0;g=I;E=Os(0,o[p>>2]|0,32)|0;g=Es(E|0,I|0,S|0,g|0)|0;S=I;E=Os(0,o[h>>2]|0,32)|0;b=I;r=Os(0,o[m>>2]|0,32)|0;b=Es(r|0,I|0,E|0,b|0)|0;S=Ss(b|0,I|0,g|0,S|0)|0;g=I;b=Os(0,o[a>>2]|0,32)|0;E=I;r=Os(0,o[u>>2]|0,32)|0;E=Es(r|0,I|0,b|0,E|0)|0;E=Ss(S|0,g|0,E|0,I|0)|0;g=I;S=Os(0,o[c>>2]|0,32)|0;b=I;r=Os(0,o[v>>2]|0,32)|0;b=Es(r|0,I|0,S|0,b|0)|0;b=Ss(E|0,g|0,b|0,I|0)|0;g=I;E=Os(0,o[_>>2]|0,32)|0;S=I;r=Os(0,o[d>>2]|0,32)|0;S=Es(r|0,I|0,E|0,S|0)|0;S=Ss(b|0,g|0,S|0,I|0)|0;g=I;b=Os(0,o[s>>2]|0,32)|0;E=I;r=Os(0,o[A>>2]|0,32)|0;E=Es(r|0,I|0,b|0,E|0)|0;E=Ss(S|0,g|0,E|0,I|0)|0;g=I;S=Os(0,o[y>>2]|0,32)|0;b=I;r=Os(0,o[f>>2]|0,32)|0;b=Es(r|0,I|0,S|0,b|0)|0;b=Ss(E|0,g|0,b|0,I|0)|0;g=I;E=Os(0,o[i>>2]|0,32)|0;S=I;r=Os(0,o[w>>2]|0,32)|0;S=Es(r|0,I|0,E|0,S|0)|0;S=Ss(b|0,g|0,S|0,I|0)|0;g=I;b=Os(0,o[t>>2]|0,32)|0;E=I;r=n+72|0;k=Os(0,o[r>>2]|0,32)|0;E=Es(k|0,I|0,b|0,E|0)|0;E=Ss(S|0,g|0,E|0,I|0)|0;g=I;t=t+72|0;S=Os(0,o[t>>2]|0,32)|0;b=I;n=Os(0,o[n>>2]|0,32)|0;b=Es(n|0,I|0,S|0,b|0)|0;b=Ss(E|0,g|0,b|0,I|0)|0;n=e+72|0;o[n>>2]=b;o[n+4>>2]=I;n=Os(0,o[h>>2]|0,32)|0;b=I;g=Os(0,o[p>>2]|0,32)|0;b=Es(g|0,I|0,n|0,b|0)|0;n=I;g=Os(0,o[a>>2]|0,32)|0;E=I;S=Os(0,o[d>>2]|0,32)|0;E=Es(S|0,I|0,g|0,E|0)|0;n=Ss(E|0,I|0,b|0,n|0)|0;b=I;E=Os(0,o[s>>2]|0,32)|0;g=I;S=Os(0,o[v>>2]|0,32)|0;g=Es(S|0,I|0,E|0,g|0)|0;g=Ss(n|0,b|0,g|0,I|0)|0;b=I;n=Os(0,o[y>>2]|0,32)|0;y=I;E=Os(0,o[r>>2]|0,32)|0;y=Es(E|0,I|0,n|0,y|0)|0;y=Ss(g|0,b|0,y|0,I|0)|0;b=I;g=Os(0,o[t>>2]|0,32)|0;n=I;w=Os(0,o[w>>2]|0,32)|0;n=Es(w|0,I|0,g|0,n|0)|0;n=Ss(y|0,b|0,n|0,I|0)|0;n=xs(n|0,I|0,1)|0;b=I;y=Os(0,o[l>>2]|0,32)|0;g=I;w=Os(0,o[u>>2]|0,32)|0;g=Es(w|0,I|0,y|0,g|0)|0;g=Ss(n|0,b|0,g|0,I|0)|0;b=I;n=Os(0,o[c>>2]|0,32)|0;y=I;w=Os(0,o[m>>2]|0,32)|0;y=Es(w|0,I|0,n|0,y|0)|0;y=Ss(g|0,b|0,y|0,I|0)|0;b=I;g=Os(0,o[_>>2]|0,32)|0;n=I;w=Os(0,o[f>>2]|0,32)|0;n=Es(w|0,I|0,g|0,n|0)|0;n=Ss(y|0,b|0,n|0,I|0)|0;b=I;y=Os(0,o[i>>2]|0,32)|0;g=I;w=Os(0,o[A>>2]|0,32)|0;g=Es(w|0,I|0,y|0,g|0)|0;g=Ss(n|0,b|0,g|0,I|0)|0;b=e+80|0;o[b>>2]=g;o[b+4>>2]=I;b=Os(0,o[h>>2]|0,32)|0;g=I;n=Os(0,o[u>>2]|0,32)|0;g=Es(n|0,I|0,b|0,g|0)|0;b=I;n=Os(0,o[c>>2]|0,32)|0;y=I;w=Os(0,o[p>>2]|0,32)|0;y=Es(w|0,I|0,n|0,y|0)|0;b=Ss(y|0,I|0,g|0,b|0)|0;g=I;y=Os(0,o[l>>2]|0,32)|0;n=I;w=Os(0,o[d>>2]|0,32)|0;n=Es(w|0,I|0,y|0,n|0)|0;n=Ss(b|0,g|0,n|0,I|0)|0;g=I;b=Os(0,o[s>>2]|0,32)|0;y=I;w=Os(0,o[m>>2]|0,32)|0;y=Es(w|0,I|0,b|0,y|0)|0;y=Ss(n|0,g|0,y|0,I|0)|0;g=I;n=Os(0,o[a>>2]|0,32)|0;b=I;w=Os(0,o[f>>2]|0,32)|0;b=Es(w|0,I|0,n|0,b|0)|0;b=Ss(y|0,g|0,b|0,I|0)|0;g=I;y=Os(0,o[i>>2]|0,32)|0;n=I;w=Os(0,o[v>>2]|0,32)|0;n=Es(w|0,I|0,y|0,n|0)|0;n=Ss(b|0,g|0,n|0,I|0)|0;g=I;_=Os(0,o[_>>2]|0,32)|0;b=I;y=Os(0,o[r>>2]|0,32)|0;b=Es(y|0,I|0,_|0,b|0)|0;b=Ss(n|0,g|0,b|0,I|0)|0;g=I;n=Os(0,o[t>>2]|0,32)|0;_=I;A=Os(0,o[A>>2]|0,32)|0;_=Es(A|0,I|0,n|0,_|0)|0;_=Ss(b|0,g|0,_|0,I|0)|0;g=e+88|0;o[g>>2]=_;o[g+4>>2]=I;g=Os(0,o[c>>2]|0,32)|0;_=I;b=Os(0,o[u>>2]|0,32)|0;_=Es(b|0,I|0,g|0,_|0)|0;g=I;b=Os(0,o[h>>2]|0,32)|0;n=I;A=Os(0,o[d>>2]|0,32)|0;n=Es(A|0,I|0,b|0,n|0)|0;b=I;A=Os(0,o[s>>2]|0,32)|0;y=I;w=Os(0,o[p>>2]|0,32)|0;y=Es(w|0,I|0,A|0,y|0)|0;b=Ss(y|0,I|0,n|0,b|0)|0;n=I;a=Os(0,o[a>>2]|0,32)|0;y=I;A=Os(0,o[r>>2]|0,32)|0;y=Es(A|0,I|0,a|0,y|0)|0;y=Ss(b|0,n|0,y|0,I|0)|0;n=I;b=Os(0,o[t>>2]|0,32)|0;a=I;v=Os(0,o[v>>2]|0,32)|0;a=Es(v|0,I|0,b|0,a|0)|0;a=Ss(y|0,n|0,a|0,I|0)|0;a=xs(a|0,I|0,1)|0;g=Ss(a|0,I|0,_|0,g|0)|0;_=I;a=Os(0,o[l>>2]|0,32)|0;n=I;y=Os(0,o[f>>2]|0,32)|0;n=Es(y|0,I|0,a|0,n|0)|0;n=Ss(g|0,_|0,n|0,I|0)|0;_=I;g=Os(0,o[i>>2]|0,32)|0;a=I;y=Os(0,o[m>>2]|0,32)|0;a=Es(y|0,I|0,g|0,a|0)|0;a=Ss(n|0,_|0,a|0,I|0)|0;_=e+96|0;o[_>>2]=a;o[_+4>>2]=I;_=Os(0,o[c>>2]|0,32)|0;a=I;n=Os(0,o[d>>2]|0,32)|0;a=Es(n|0,I|0,_|0,a|0)|0;_=I;n=Os(0,o[s>>2]|0,32)|0;g=I;y=Os(0,o[u>>2]|0,32)|0;g=Es(y|0,I|0,n|0,g|0)|0;_=Ss(g|0,I|0,a|0,_|0)|0;a=I;g=Os(0,o[h>>2]|0,32)|0;n=I;y=Os(0,o[f>>2]|0,32)|0;n=Es(y|0,I|0,g|0,n|0)|0;n=Ss(_|0,a|0,n|0,I|0)|0;a=I;_=Os(0,o[i>>2]|0,32)|0;g=I;y=Os(0,o[p>>2]|0,32)|0;g=Es(y|0,I|0,_|0,g|0)|0;g=Ss(n|0,a|0,g|0,I|0)|0;a=I;l=Os(0,o[l>>2]|0,32)|0;n=I;_=Os(0,o[r>>2]|0,32)|0;n=Es(_|0,I|0,l|0,n|0)|0;n=Ss(g|0,a|0,n|0,I|0)|0;a=I;g=Os(0,o[t>>2]|0,32)|0;l=I;m=Os(0,o[m>>2]|0,32)|0;l=Es(m|0,I|0,g|0,l|0)|0;l=Ss(n|0,a|0,l|0,I|0)|0;a=e+104|0;o[a>>2]=l;o[a+4>>2]=I;a=Os(0,o[s>>2]|0,32)|0;l=I;n=Os(0,o[d>>2]|0,32)|0;l=Es(n|0,I|0,a|0,l|0)|0;a=I;n=Os(0,o[h>>2]|0,32)|0;h=I;g=Os(0,o[r>>2]|0,32)|0;h=Es(g|0,I|0,n|0,h|0)|0;a=Ss(h|0,I|0,l|0,a|0)|0;l=I;h=Os(0,o[t>>2]|0,32)|0;n=I;p=Os(0,o[p>>2]|0,32)|0;n=Es(p|0,I|0,h|0,n|0)|0;n=Ss(a|0,l|0,n|0,I|0)|0;n=xs(n|0,I|0,1)|0;l=I;a=Os(0,o[c>>2]|0,32)|0;h=I;p=Os(0,o[f>>2]|0,32)|0;h=Es(p|0,I|0,a|0,h|0)|0;h=Ss(n|0,l|0,h|0,I|0)|0;l=I;n=Os(0,o[i>>2]|0,32)|0;a=I;p=Os(0,o[u>>2]|0,32)|0;a=Es(p|0,I|0,n|0,a|0)|0;a=Ss(h|0,l|0,a|0,I|0)|0;l=e+112|0;o[l>>2]=a;o[l+4>>2]=I;l=Os(0,o[s>>2]|0,32)|0;a=I;h=Os(0,o[f>>2]|0,32)|0;a=Es(h|0,I|0,l|0,a|0)|0;l=I;h=Os(0,o[i>>2]|0,32)|0;n=I;p=Os(0,o[d>>2]|0,32)|0;n=Es(p|0,I|0,h|0,n|0)|0;l=Ss(n|0,I|0,a|0,l|0)|0;a=I;n=Os(0,o[c>>2]|0,32)|0;c=I;h=Os(0,o[r>>2]|0,32)|0;c=Es(h|0,I|0,n|0,c|0)|0;c=Ss(l|0,a|0,c|0,I|0)|0;a=I;l=Os(0,o[t>>2]|0,32)|0;n=I;u=Os(0,o[u>>2]|0,32)|0;n=Es(u|0,I|0,l|0,n|0)|0;n=Ss(c|0,a|0,n|0,I|0)|0;a=e+120|0;o[a>>2]=n;o[a+4>>2]=I;a=Os(0,o[i>>2]|0,32)|0;n=I;c=Os(0,o[f>>2]|0,32)|0;n=Es(c|0,I|0,a|0,n|0)|0;a=I;s=Os(0,o[s>>2]|0,32)|0;c=I;l=Os(0,o[r>>2]|0,32)|0;c=Es(l|0,I|0,s|0,c|0)|0;s=I;l=Os(0,o[t>>2]|0,32)|0;u=I;d=Os(0,o[d>>2]|0,32)|0;u=Es(d|0,I|0,l|0,u|0)|0;s=Ss(u|0,I|0,c|0,s|0)|0;s=xs(s|0,I|0,1)|0;a=Ss(s|0,I|0,n|0,a|0)|0;n=e+128|0;o[n>>2]=a;o[n+4>>2]=I;i=Os(0,o[i>>2]|0,32)|0;n=I;a=Os(0,o[r>>2]|0,32)|0;n=Es(a|0,I|0,i|0,n|0)|0;i=I;a=Os(0,o[t>>2]|0,32)|0;s=I;f=Os(0,o[f>>2]|0,32)|0;s=Es(f|0,I|0,a|0,s|0)|0;i=Ss(s|0,I|0,n|0,i|0)|0;n=e+136|0;o[n>>2]=i;o[n+4>>2]=I;n=Os(0,o[t>>2]|0,31)|0;t=I;r=Os(0,o[r>>2]|0,32)|0;t=Es(r|0,I|0,n|0,t|0)|0;n=e+144|0;o[n>>2]=t;o[n+4>>2]=I;return}function Bo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,f=0,c=0,u=0;t=e+80|0;s=t;o[s>>2]=0;o[s+4>>2]=0;s=e;c=o[s>>2]|0;s=o[s+4>>2]|0;n=Ss(c|0,s|0,s>>31>>>6|0,0)|0;a=I;i=Os(n|0,a|0,26)|0;u=I;a=ks(c|0,s|0,n&-67108864|0,a|0)|0;n=e;o[n>>2]=a;o[n+4>>2]=I;n=e+8|0;a=n;a=Ss(i|0,u|0,o[a>>2]|0,o[a+4>>2]|0)|0;u=I;i=Ss(a|0,u|0,u>>31>>>7|0,0)|0;s=I;c=Os(i|0,s|0,25)|0;r=I;s=ks(a|0,u|0,i&-33554432|0,s|0)|0;i=n;o[i>>2]=s;o[i+4>>2]=I;i=e+16|0;s=i;s=Ss(c|0,r|0,o[s>>2]|0,o[s+4>>2]|0)|0;r=I;c=Ss(s|0,r|0,r>>31>>>6|0,0)|0;u=I;a=Os(c|0,u|0,26)|0;f=I;u=ks(s|0,r|0,c&-67108864|0,u|0)|0;o[i>>2]=u;o[i+4>>2]=I;i=e+24|0;u=i;u=Ss(a|0,f|0,o[u>>2]|0,o[u+4>>2]|0)|0;f=I;a=Ss(u|0,f|0,f>>31>>>7|0,0)|0;c=I;r=Os(a|0,c|0,25)|0;s=I;c=ks(u|0,f|0,a&-33554432|0,c|0)|0;o[i>>2]=c;o[i+4>>2]=I;i=e+32|0;c=i;c=Ss(r|0,s|0,o[c>>2]|0,o[c+4>>2]|0)|0;s=I;r=Ss(c|0,s|0,s>>31>>>6|0,0)|0;a=I;f=Os(r|0,a|0,26)|0;u=I;a=ks(c|0,s|0,r&-67108864|0,a|0)|0;o[i>>2]=a;o[i+4>>2]=I;i=e+40|0;a=i;a=Ss(f|0,u|0,o[a>>2]|0,o[a+4>>2]|0)|0;u=I;f=Ss(a|0,u|0,u>>31>>>7|0,0)|0;r=I;s=Os(f|0,r|0,25)|0;c=I;r=ks(a|0,u|0,f&-33554432|0,r|0)|0;o[i>>2]=r;o[i+4>>2]=I;i=e+48|0;r=i;r=Ss(s|0,c|0,o[r>>2]|0,o[r+4>>2]|0)|0;c=I;s=Ss(r|0,c|0,c>>31>>>6|0,0)|0;f=I;u=Os(s|0,f|0,26)|0;a=I;f=ks(r|0,c|0,s&-67108864|0,f|0)|0;o[i>>2]=f;o[i+4>>2]=I;i=e+56|0;f=i;f=Ss(u|0,a|0,o[f>>2]|0,o[f+4>>2]|0)|0;a=I;u=Ss(f|0,a|0,a>>31>>>7|0,0)|0;s=I;c=Os(u|0,s|0,25)|0;r=I;s=ks(f|0,a|0,u&-33554432|0,s|0)|0;o[i>>2]=s;o[i+4>>2]=I;i=e+64|0;s=i;s=Ss(c|0,r|0,o[s>>2]|0,o[s+4>>2]|0)|0;r=I;c=Ss(s|0,r|0,r>>31>>>6|0,0)|0;u=I;a=Os(c|0,u|0,26)|0;f=I;u=ks(s|0,r|0,c&-67108864|0,u|0)|0;o[i>>2]=u;o[i+4>>2]=I;i=e+72|0;u=i;u=Ss(a|0,f|0,o[u>>2]|0,o[u+4>>2]|0)|0;f=I;a=Ss(u|0,f|0,f>>31>>>7|0,0)|0;c=I;r=Os(a|0,c|0,25)|0;s=I;c=ks(u|0,f|0,a&-33554432|0,c|0)|0;o[i>>2]=c;o[i+4>>2]=I;i=t;i=Ss(r|0,s|0,o[i>>2]|0,o[i+4>>2]|0)|0;s=I;r=e;c=o[r>>2]|0;r=o[r+4>>2]|0;a=Es(i|0,s|0,18,0)|0;f=I;s=Ss(c|0,r|0,i|0,s|0)|0;f=Ss(s|0,I|0,a|0,f|0)|0;a=I;o[t>>2]=0;o[t+4>>2]=0;t=Ss(f|0,a|0,a>>31>>>6|0,0)|0;s=I;i=Os(t|0,s|0,26)|0;r=I;s=ks(f|0,a|0,t&-67108864|0,s|0)|0;t=e;o[t>>2]=s;o[t+4>>2]=I;t=n;t=Ss(i|0,r|0,o[t>>2]|0,o[t+4>>2]|0)|0;e=n;o[e>>2]=t;o[e+4>>2]=I;return}function No(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0;r=h;h=h+160|0;n=r;F=o[t>>2]|0;_=Os(0,F|0,32)|0;f=I;a=Es(_|0,f|0,_|0,f|0)|0;s=I;B=n;o[B>>2]=a;o[B+4>>2]=s;F=Os(0,F|0,31)|0;B=I;H=o[t+8>>2]|0;E=Os(0,H|0,32)|0;d=I;g=Es(E|0,d|0,F|0,B|0)|0;p=I;u=n+8|0;A=u;o[A>>2]=g;o[A+4>>2]=p;A=Es(E|0,d|0,E|0,d|0)|0;w=I;m=Os(0,o[t+16>>2]|0,32)|0;l=I;y=Es(m|0,l|0,_|0,f|0)|0;w=Ss(y|0,I|0,A|0,w|0)|0;w=xs(w|0,I|0,1)|0;A=I;y=n+16|0;R=y;o[R>>2]=w;o[R+4>>2]=A;R=Es(m|0,l|0,E|0,d|0)|0;T=I;fe=Os(0,o[t+24>>2]|0,32)|0;ae=I;v=Es(fe|0,ae|0,_|0,f|0)|0;T=Ss(v|0,I|0,R|0,T|0)|0;T=xs(T|0,I|0,1)|0;R=I;v=n+24|0;D=v;o[D>>2]=T;o[D+4>>2]=R;D=Es(m|0,l|0,m|0,l|0)|0;x=I;O=Os(0,H|0,30)|0;O=Es(fe|0,ae|0,O|0,I|0)|0;x=Ss(O|0,I|0,D|0,x|0)|0;D=I;O=Os(0,o[t+32>>2]|0,32)|0;b=I;B=Es(O|0,b|0,F|0,B|0)|0;B=Ss(x|0,D|0,B|0,I|0)|0;D=I;x=n+32|0;F=x;o[F>>2]=B;o[F+4>>2]=D;F=Es(fe|0,ae|0,m|0,l|0)|0;U=I;M=Es(O|0,b|0,E|0,d|0)|0;U=Ss(M|0,I|0,F|0,U|0)|0;F=I;M=o[t+40>>2]|0;j=Os(0,M|0,32)|0;P=I;K=Es(j|0,P|0,_|0,f|0)|0;K=Ss(U|0,F|0,K|0,I|0)|0;K=xs(K|0,I|0,1)|0;F=I;U=n+40|0;$=U;o[$>>2]=K;o[$+4>>2]=F;$=Es(fe|0,ae|0,fe|0,ae|0)|0;te=I;G=Es(O|0,b|0,m|0,l|0)|0;te=Ss(G|0,I|0,$|0,te|0)|0;$=I;G=Os(0,o[t+48>>2]|0,32)|0;z=I;W=Es(G|0,z|0,_|0,f|0)|0;Y=I;H=Os(0,H|0,31)|0;H=Es(j|0,P|0,H|0,I|0)|0;H=Ss(te|0,$|0,H|0,I|0)|0;Y=Ss(H|0,I|0,W|0,Y|0)|0;Y=xs(Y|0,I|0,1)|0;W=I;H=n+48|0;$=H;o[$>>2]=Y;o[$+4>>2]=W;$=Es(O|0,b|0,fe|0,ae|0)|0;te=I;Q=Es(j|0,P|0,m|0,l|0)|0;te=Ss(Q|0,I|0,$|0,te|0)|0;$=I;Q=Es(G|0,z|0,E|0,d|0)|0;Q=Ss(te|0,$|0,Q|0,I|0)|0;$=I;te=o[t+56>>2]|0;L=Os(0,te|0,32)|0;q=I;ee=Es(L|0,q|0,_|0,f|0)|0;ee=Ss(Q|0,$|0,ee|0,I|0)|0;ee=xs(ee|0,I|0,1)|0;$=I;Q=n+56|0;V=Q;o[V>>2]=ee;o[V+4>>2]=$;V=Es(O|0,b|0,O|0,b|0)|0;Z=I;i=Es(G|0,z|0,m|0,l|0)|0;oe=I;ne=o[t+64>>2]|0;J=Os(0,ne|0,32)|0;X=I;ie=Es(J|0,X|0,_|0,f|0)|0;oe=Ss(ie|0,I|0,i|0,oe|0)|0;i=I;ie=Es(L|0,q|0,E|0,d|0)|0;re=I;c=Es(j|0,P|0,fe|0,ae|0)|0;c=Ss(ie|0,re|0,c|0,I|0)|0;c=xs(c|0,I|0,1)|0;c=Ss(oe|0,i|0,c|0,I|0)|0;c=xs(c|0,I|0,1)|0;Z=Ss(c|0,I|0,V|0,Z|0)|0;V=I;c=Es(j|0,P|0,O|0,b|0)|0;i=I;oe=Es(G|0,z|0,fe|0,ae|0)|0;i=Ss(oe|0,I|0,c|0,i|0)|0;c=I;oe=Es(L|0,q|0,m|0,l|0)|0;oe=Ss(i|0,c|0,oe|0,I|0)|0;c=I;i=Es(J|0,X|0,E|0,d|0)|0;i=Ss(oe|0,c|0,i|0,I|0)|0;c=I;oe=o[t+72>>2]|0;re=Os(0,oe|0,32)|0;ie=I;f=Es(re|0,ie|0,_|0,f|0)|0;f=Ss(i|0,c|0,f|0,I|0)|0;f=xs(f|0,I|0,1)|0;t=n+72|0;o[t>>2]=f;o[t+4>>2]=I;t=Es(j|0,P|0,j|0,P|0)|0;f=I;c=Es(G|0,z|0,O|0,b|0)|0;f=Ss(c|0,I|0,t|0,f|0)|0;t=I;c=Es(J|0,X|0,m|0,l|0)|0;c=Ss(f|0,t|0,c|0,I|0)|0;t=I;f=Es(L|0,q|0,fe|0,ae|0)|0;i=I;d=Es(re|0,ie|0,E|0,d|0)|0;i=Ss(d|0,I|0,f|0,i|0)|0;i=xs(i|0,I|0,1)|0;i=Ss(c|0,t|0,i|0,I|0)|0;t=I;c=xs(i|0,t|0,1)|0;f=I;d=n+80|0;o[d>>2]=c;o[d+4>>2]=f;d=Es(G|0,z|0,j|0,P|0)|0;E=I;_=Es(L|0,q|0,O|0,b|0)|0;E=Ss(_|0,I|0,d|0,E|0)|0;d=I;_=Es(J|0,X|0,fe|0,ae|0)|0;_=Ss(E|0,d|0,_|0,I|0)|0;d=I;l=Es(re|0,ie|0,m|0,l|0)|0;l=Ss(_|0,d|0,l|0,I|0)|0;d=I;_=xs(l|0,d|0,1)|0;m=I;E=n+88|0;o[E>>2]=_;o[E+4>>2]=m;E=Es(G|0,z|0,G|0,z|0)|0;S=I;C=Es(J|0,X|0,O|0,b|0)|0;k=I;se=Es(L|0,q|0,j|0,P|0)|0;N=I;ae=Es(re|0,ie|0,fe|0,ae|0)|0;N=Ss(ae|0,I|0,se|0,N|0)|0;N=xs(N|0,I|0,1)|0;k=Ss(N|0,I|0,C|0,k|0)|0;k=xs(k|0,I|0,1)|0;S=Ss(k|0,I|0,E|0,S|0)|0;E=I;k=n+96|0;o[k>>2]=S;o[k+4>>2]=E;k=Es(L|0,q|0,G|0,z|0)|0;C=I;P=Es(J|0,X|0,j|0,P|0)|0;C=Ss(P|0,I|0,k|0,C|0)|0;k=I;b=Es(re|0,ie|0,O|0,b|0)|0;b=Ss(C|0,k|0,b|0,I|0)|0;k=I;C=xs(b|0,k|0,1)|0;O=I;P=n+104|0;o[P>>2]=C;o[P+4>>2]=O;P=Es(L|0,q|0,L|0,q|0)|0;j=I;N=Es(J|0,X|0,G|0,z|0)|0;j=Ss(N|0,I|0,P|0,j|0)|0;P=I;M=Os(0,M|0,31)|0;M=Es(re|0,ie|0,M|0,I|0)|0;M=Ss(j|0,P|0,M|0,I|0)|0;P=I;j=xs(M|0,P|0,1)|0;N=I;se=n+112|0;o[se>>2]=j;o[se+4>>2]=N;q=Es(J|0,X|0,L|0,q|0)|0;L=I;z=Es(re|0,ie|0,G|0,z|0)|0;L=Ss(z|0,I|0,q|0,L|0)|0;q=I;z=xs(L|0,q|0,1)|0;G=I;se=n+120|0;o[se>>2]=z;o[se+4>>2]=G;X=Es(J|0,X|0,J|0,X|0)|0;J=I;te=Os(0,te|0,30)|0;te=Es(re|0,ie|0,te|0,I|0)|0;J=Ss(te|0,I|0,X|0,J|0)|0;X=I;te=n+128|0;o[te>>2]=J;o[te+4>>2]=X;ne=Os(0,ne|0,31)|0;ne=Es(re|0,ie|0,ne|0,I|0)|0;te=I;se=n+136|0;o[se>>2]=ne;o[se+4>>2]=te;oe=Os(0,oe|0,31)|0;ie=Es(oe|0,I|0,re|0,ie|0)|0;re=I;oe=n+144|0;o[oe>>2]=ie;o[oe+4>>2]=re;re=Es(ie|0,re|0,19,0)|0;V=Ss(re|0,I|0,Z|0,V|0)|0;Z=n+64|0;o[Z>>2]=V;o[Z+4>>2]=I;Z=Es(ne|0,te|0,18,0)|0;V=I;$=Ss(ne|0,te|0,ee|0,$|0)|0;V=Ss($|0,I|0,Z|0,V|0)|0;o[Q>>2]=V;o[Q+4>>2]=I;Q=Es(J|0,X|0,18,0)|0;V=I;W=Ss(J|0,X|0,Y|0,W|0)|0;V=Ss(W|0,I|0,Q|0,V|0)|0;o[H>>2]=V;o[H+4>>2]=I;q=Es(L|0,q|0,36,0)|0;L=I;F=Ss(z|0,G|0,K|0,F|0)|0;L=Ss(F|0,I|0,q|0,L|0)|0;o[U>>2]=L;o[U+4>>2]=I;P=Es(M|0,P|0,36,0)|0;M=I;D=Ss(j|0,N|0,B|0,D|0)|0;M=Ss(D|0,I|0,P|0,M|0)|0;o[x>>2]=M;o[x+4>>2]=I;k=Es(b|0,k|0,36,0)|0;b=I;R=Ss(C|0,O|0,T|0,R|0)|0;b=Ss(R|0,I|0,k|0,b|0)|0;o[v>>2]=b;o[v+4>>2]=I;v=Es(S|0,E|0,18,0)|0;b=I;A=Ss(S|0,E|0,w|0,A|0)|0;b=Ss(A|0,I|0,v|0,b|0)|0;o[y>>2]=b;o[y+4>>2]=I;d=Es(l|0,d|0,36,0)|0;l=I;p=Ss(_|0,m|0,g|0,p|0)|0;l=Ss(p|0,I|0,d|0,l|0)|0;o[u>>2]=l;o[u+4>>2]=I;t=Es(i|0,t|0,36,0)|0;i=I;s=Ss(c|0,f|0,a|0,s|0)|0;i=Ss(s|0,I|0,t|0,i|0)|0;t=n;o[t>>2]=i;o[t+4>>2]=I;Bo(n);t=n;n=e+80|0;do{o[e>>2]=o[t>>2];e=e+4|0;t=t+4|0}while((e|0)<(n|0));h=r;return}function jo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0;E=h;h=h+16|0;p=E;do{if(e>>>0<245){u=e>>>0<11?16:e+11&-8;e=u>>>3;d=o[9632]|0;n=d>>>e;if(n&3|0){t=(n&1^1)+e|0;e=38568+(t<<1<<2)|0;n=e+8|0;r=o[n>>2]|0;i=r+8|0;s=o[i>>2]|0;if((s|0)==(e|0))o[9632]=d&~(1<>2]=e;o[n>>2]=s}w=t<<3;o[r+4>>2]=w|3;w=r+w+4|0;o[w>>2]=o[w>>2]|1;w=i;h=E;return w|0}l=o[9634]|0;if(u>>>0>l>>>0){if(n|0){t=2<>>12&16;t=t>>>f;n=t>>>5&8;t=t>>>n;s=t>>>2&4;t=t>>>s;e=t>>>1&2;t=t>>>e;r=t>>>1&1;r=(n|f|s|e|r)+(t>>>r)|0;t=38568+(r<<1<<2)|0;e=t+8|0;s=o[e>>2]|0;f=s+8|0;n=o[f>>2]|0;if((n|0)==(t|0)){e=d&~(1<>2]=t;o[e>>2]=n;e=d}w=r<<3;a=w-u|0;o[s+4>>2]=u|3;i=s+u|0;o[i+4>>2]=a|1;o[s+w>>2]=a;if(l|0){r=o[9637]|0;t=l>>>3;n=38568+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=r;o[t+12>>2]=r;o[r+8>>2]=t;o[r+12>>2]=n}o[9634]=a;o[9637]=i;w=f;h=E;return w|0}s=o[9633]|0;if(s){n=(s&0-s)+-1|0;i=n>>>12&16;n=n>>>i;r=n>>>5&8;n=n>>>r;a=n>>>2&4;n=n>>>a;f=n>>>1&2;n=n>>>f;c=n>>>1&1;c=o[38832+((r|i|a|f|c)+(n>>>c)<<2)>>2]|0;n=c;f=c;c=(o[c+4>>2]&-8)-u|0;while(1){e=o[n+16>>2]|0;if(!e){e=o[n+20>>2]|0;if(!e)break}a=(o[e+4>>2]&-8)-u|0;i=a>>>0>>0;n=e;f=i?e:f;c=i?a:c}a=f+u|0;if(a>>>0>f>>>0){i=o[f+24>>2]|0;t=o[f+12>>2]|0;do{if((t|0)==(f|0)){e=f+20|0;t=o[e>>2]|0;if(!t){e=f+16|0;t=o[e>>2]|0;if(!t){n=0;break}}while(1){r=t+20|0;n=o[r>>2]|0;if(!n){r=t+16|0;n=o[r>>2]|0;if(!n)break;else{t=n;e=r}}else{t=n;e=r}}o[e>>2]=0;n=t}else{n=o[f+8>>2]|0;o[n+12>>2]=t;o[t+8>>2]=n;n=t}}while(0);do{if(i|0){t=o[f+28>>2]|0;e=38832+(t<<2)|0;if((f|0)==(o[e>>2]|0)){o[e>>2]=n;if(!n){o[9633]=s&~(1<>2]|0)==(f|0)?w:i+20|0)>>2]=n;if(!n)break}o[n+24>>2]=i;t=o[f+16>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}t=o[f+20>>2]|0;if(t|0){o[n+20>>2]=t;o[t+24>>2]=n}}}while(0);if(c>>>0<16){w=c+u|0;o[f+4>>2]=w|3;w=f+w+4|0;o[w>>2]=o[w>>2]|1}else{o[f+4>>2]=u|3;o[a+4>>2]=c|1;o[a+c>>2]=c;if(l|0){r=o[9637]|0;t=l>>>3;n=38568+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=r;o[t+12>>2]=r;o[r+8>>2]=t;o[r+12>>2]=n}o[9634]=c;o[9637]=a}w=f+8|0;h=E;return w|0}else d=u}else d=u}else d=u}else if(e>>>0<=4294967231){e=e+11|0;u=e&-8;r=o[9633]|0;if(r){i=0-u|0;e=e>>>8;if(e)if(u>>>0>16777215)c=31;else{d=(e+1048320|0)>>>16&8;_=e<>>16&4;_=_<>>16&2;c=14-(f|d|c)+(_<>>15)|0;c=u>>>(c+7|0)&1|c<<1}else c=0;n=o[38832+(c<<2)>>2]|0;e:do{if(!n){n=0;e=0;_=61}else{e=0;f=u<<((c|0)==31?0:25-(c>>>1)|0);s=0;while(1){a=(o[n+4>>2]&-8)-u|0;if(a>>>0>>0)if(!a){e=n;i=0;_=65;break e}else{e=n;i=a}_=o[n+20>>2]|0;n=o[n+16+(f>>>31<<2)>>2]|0;s=(_|0)==0|(_|0)==(n|0)?s:_;if(!n){n=s;_=61;break}else f=f<<1}}}while(0);if((_|0)==61){if((n|0)==0&(e|0)==0){e=2<>>12&16;d=d>>>a;s=d>>>5&8;d=d>>>s;f=d>>>2&4;d=d>>>f;c=d>>>1&2;d=d>>>c;n=d>>>1&1;e=0;n=o[38832+((s|a|f|c|n)+(d>>>n)<<2)>>2]|0}if(!n){f=e;a=i}else _=65}if((_|0)==65){s=n;while(1){d=(o[s+4>>2]&-8)-u|0;n=d>>>0>>0;i=n?d:i;e=n?s:e;n=o[s+16>>2]|0;if(!n)n=o[s+20>>2]|0;if(!n){f=e;a=i;break}else s=n}}if(((f|0)!=0?a>>>0<((o[9634]|0)-u|0)>>>0:0)?(l=f+u|0,l>>>0>f>>>0):0){s=o[f+24>>2]|0;t=o[f+12>>2]|0;do{if((t|0)==(f|0)){e=f+20|0;t=o[e>>2]|0;if(!t){e=f+16|0;t=o[e>>2]|0;if(!t){t=0;break}}while(1){i=t+20|0;n=o[i>>2]|0;if(!n){i=t+16|0;n=o[i>>2]|0;if(!n)break;else{t=n;e=i}}else{t=n;e=i}}o[e>>2]=0}else{w=o[f+8>>2]|0;o[w+12>>2]=t;o[t+8>>2]=w}}while(0);do{if(s){e=o[f+28>>2]|0;n=38832+(e<<2)|0;if((f|0)==(o[n>>2]|0)){o[n>>2]=t;if(!t){r=r&~(1<>2]|0)==(f|0)?w:s+20|0)>>2]=t;if(!t)break}o[t+24>>2]=s;e=o[f+16>>2]|0;if(e|0){o[t+16>>2]=e;o[e+24>>2]=t}e=o[f+20>>2]|0;if(e){o[t+20>>2]=e;o[e+24>>2]=t}}}while(0);e:do{if(a>>>0<16){w=a+u|0;o[f+4>>2]=w|3;w=f+w+4|0;o[w>>2]=o[w>>2]|1}else{o[f+4>>2]=u|3;o[l+4>>2]=a|1;o[l+a>>2]=a;t=a>>>3;if(a>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=l;o[t+12>>2]=l;o[l+8>>2]=t;o[l+12>>2]=n;break}t=a>>>8;if(t)if(a>>>0>16777215)n=31;else{A=(t+1048320|0)>>>16&8;w=t<>>16&4;w=w<>>16&2;n=14-(v|A|n)+(w<>>15)|0;n=a>>>(n+7|0)&1|n<<1}else n=0;t=38832+(n<<2)|0;o[l+28>>2]=n;e=l+16|0;o[e+4>>2]=0;o[e>>2]=0;e=1<>2]=l;o[l+24>>2]=t;o[l+12>>2]=l;o[l+8>>2]=l;break}t=o[t>>2]|0;t:do{if((o[t+4>>2]&-8|0)!=(a|0)){r=a<<((n|0)==31?0:25-(n>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(a|0)){t=e;break t}else{r=r<<1;t=e}}o[n>>2]=l;o[l+24>>2]=t;o[l+12>>2]=l;o[l+8>>2]=l;break e}}while(0);A=t+8|0;w=o[A>>2]|0;o[w+12>>2]=l;o[A>>2]=l;o[l+8>>2]=w;o[l+12>>2]=t;o[l+24>>2]=0}}while(0);w=f+8|0;h=E;return w|0}else d=u}else d=u}else d=-1}while(0);n=o[9634]|0;if(n>>>0>=d>>>0){t=n-d|0;e=o[9637]|0;if(t>>>0>15){w=e+d|0;o[9637]=w;o[9634]=t;o[w+4>>2]=t|1;o[e+n>>2]=t;o[e+4>>2]=d|3}else{o[9634]=0;o[9637]=0;o[e+4>>2]=n|3;w=e+n+4|0;o[w>>2]=o[w>>2]|1}w=e+8|0;h=E;return w|0}a=o[9635]|0;if(a>>>0>d>>>0){v=a-d|0;o[9635]=v;w=o[9638]|0;A=w+d|0;o[9638]=A;o[A+4>>2]=v|1;o[w+4>>2]=d|3;w=w+8|0;h=E;return w|0}if(!(o[9750]|0)){o[9752]=4096;o[9751]=4096;o[9753]=-1;o[9754]=-1;o[9755]=0;o[9743]=0;o[9750]=p&-16^1431655768;e=4096}else e=o[9752]|0;f=d+48|0;c=d+47|0;s=e+c|0;i=0-e|0;u=s&i;if(u>>>0<=d>>>0){w=0;h=E;return w|0}e=o[9742]|0;if(e|0?(l=o[9740]|0,p=l+u|0,p>>>0<=l>>>0|p>>>0>e>>>0):0){w=0;h=E;return w|0}e:do{if(!(o[9743]&4)){n=o[9638]|0;t:do{if(n){r=38976;while(1){p=o[r>>2]|0;if(p>>>0<=n>>>0?(p+(o[r+4>>2]|0)|0)>>>0>n>>>0:0)break;e=o[r+8>>2]|0;if(!e){_=128;break t}else r=e}t=s-a&i;if(t>>>0<2147483647){e=Bs(t|0)|0;if((e|0)==((o[r>>2]|0)+(o[r+4>>2]|0)|0)){if((e|0)!=(-1|0)){a=t;s=e;_=145;break e}}else{r=e;_=136}}else t=0}else _=128}while(0);do{if((_|0)==128){n=Bs(0)|0;if((n|0)!=(-1|0)?(t=n,g=o[9751]|0,m=g+-1|0,t=((m&t|0)==0?0:(m+t&0-g)-t|0)+u|0,g=o[9740]|0,m=t+g|0,t>>>0>d>>>0&t>>>0<2147483647):0){p=o[9742]|0;if(p|0?m>>>0<=g>>>0|m>>>0>p>>>0:0){t=0;break}e=Bs(t|0)|0;if((e|0)==(n|0)){a=t;s=n;_=145;break e}else{r=e;_=136}}else t=0}}while(0);do{if((_|0)==136){n=0-t|0;if(!(f>>>0>t>>>0&(t>>>0<2147483647&(r|0)!=(-1|0))))if((r|0)==(-1|0)){t=0;break}else{a=t;s=r;_=145;break e}e=o[9752]|0;e=c-t+e&0-e;if(e>>>0>=2147483647){a=t;s=r;_=145;break e}if((Bs(e|0)|0)==(-1|0)){Bs(n|0)|0;t=0;break}else{a=e+t|0;s=r;_=145;break e}}}while(0);o[9743]=o[9743]|4;_=143}else{t=0;_=143}}while(0);if(((_|0)==143?u>>>0<2147483647:0)?(v=Bs(u|0)|0,m=Bs(0)|0,y=m-v|0,b=y>>>0>(d+40|0)>>>0,!((v|0)==(-1|0)|b^1|v>>>0>>0&((v|0)!=(-1|0)&(m|0)!=(-1|0))^1)):0){a=b?y:t;s=v;_=145}if((_|0)==145){t=(o[9740]|0)+a|0;o[9740]=t;if(t>>>0>(o[9741]|0)>>>0)o[9741]=t;c=o[9638]|0;e:do{if(c){t=38976;while(1){e=o[t>>2]|0;n=o[t+4>>2]|0;if((s|0)==(e+n|0)){_=154;break}r=o[t+8>>2]|0;if(!r)break;else t=r}if(((_|0)==154?(A=t+4|0,(o[t+12>>2]&8|0)==0):0)?s>>>0>c>>>0&e>>>0<=c>>>0:0){o[A>>2]=n+a;w=(o[9635]|0)+a|0;v=c+8|0;v=(v&7|0)==0?0:0-v&7;A=c+v|0;v=w-v|0;o[9638]=A;o[9635]=v;o[A+4>>2]=v|1;o[c+w+4>>2]=40;o[9639]=o[9754];break}if(s>>>0<(o[9636]|0)>>>0)o[9636]=s;n=s+a|0;t=38976;while(1){if((o[t>>2]|0)==(n|0)){_=162;break}e=o[t+8>>2]|0;if(!e)break;else t=e}if((_|0)==162?(o[t+12>>2]&8|0)==0:0){o[t>>2]=s;l=t+4|0;o[l>>2]=(o[l>>2]|0)+a;l=s+8|0;l=s+((l&7|0)==0?0:0-l&7)|0;t=n+8|0;t=n+((t&7|0)==0?0:0-t&7)|0;u=l+d|0;f=t-l-d|0;o[l+4>>2]=d|3;t:do{if((c|0)==(t|0)){w=(o[9635]|0)+f|0;o[9635]=w;o[9638]=u;o[u+4>>2]=w|1}else{if((o[9637]|0)==(t|0)){w=(o[9634]|0)+f|0;o[9634]=w;o[9637]=u;o[u+4>>2]=w|1;o[u+w>>2]=w;break}e=o[t+4>>2]|0;if((e&3|0)==1){a=e&-8;r=e>>>3;n:do{if(e>>>0<256){e=o[t+8>>2]|0;n=o[t+12>>2]|0;if((n|0)==(e|0)){o[9632]=o[9632]&~(1<>2]=n;o[n+8>>2]=e;break}}else{s=o[t+24>>2]|0;e=o[t+12>>2]|0;do{if((e|0)==(t|0)){n=t+16|0;r=n+4|0;e=o[r>>2]|0;if(!e){e=o[n>>2]|0;if(!e){e=0;break}}else n=r;while(1){i=e+20|0;r=o[i>>2]|0;if(!r){i=e+16|0;r=o[i>>2]|0;if(!r)break;else{e=r;n=i}}else{e=r;n=i}}o[n>>2]=0}else{w=o[t+8>>2]|0;o[w+12>>2]=e;o[e+8>>2]=w}}while(0);if(!s)break;n=o[t+28>>2]|0;r=38832+(n<<2)|0;do{if((o[r>>2]|0)!=(t|0)){w=s+16|0;o[((o[w>>2]|0)==(t|0)?w:s+20|0)>>2]=e;if(!e)break n}else{o[r>>2]=e;if(e|0)break;o[9633]=o[9633]&~(1<>2]=s;n=t+16|0;r=o[n>>2]|0;if(r|0){o[e+16>>2]=r;o[r+24>>2]=e}n=o[n+4>>2]|0;if(!n)break;o[e+20>>2]=n;o[n+24>>2]=e}}while(0);t=t+a|0;i=a+f|0}else i=f;t=t+4|0;o[t>>2]=o[t>>2]&-2;o[u+4>>2]=i|1;o[u+i>>2]=i;t=i>>>3;if(i>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=u;o[t+12>>2]=u;o[u+8>>2]=t;o[u+12>>2]=n;break}t=i>>>8;do{if(!t)r=0;else{if(i>>>0>16777215){r=31;break}A=(t+1048320|0)>>>16&8;w=t<>>16&4;w=w<>>16&2;r=14-(v|A|r)+(w<>>15)|0;r=i>>>(r+7|0)&1|r<<1}}while(0);t=38832+(r<<2)|0;o[u+28>>2]=r;e=u+16|0;o[e+4>>2]=0;o[e>>2]=0;e=o[9633]|0;n=1<>2]=u;o[u+24>>2]=t;o[u+12>>2]=u;o[u+8>>2]=u;break}t=o[t>>2]|0;n:do{if((o[t+4>>2]&-8|0)!=(i|0)){r=i<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(i|0)){t=e;break n}else{r=r<<1;t=e}}o[n>>2]=u;o[u+24>>2]=t;o[u+12>>2]=u;o[u+8>>2]=u;break t}}while(0);A=t+8|0;w=o[A>>2]|0;o[w+12>>2]=u;o[A>>2]=u;o[u+8>>2]=w;o[u+12>>2]=t;o[u+24>>2]=0}}while(0);w=l+8|0;h=E;return w|0}t=38976;while(1){e=o[t>>2]|0;if(e>>>0<=c>>>0?(w=e+(o[t+4>>2]|0)|0,w>>>0>c>>>0):0)break;t=o[t+8>>2]|0}i=w+-47|0;e=i+8|0;e=i+((e&7|0)==0?0:0-e&7)|0;i=c+16|0;e=e>>>0>>0?c:e;t=e+8|0;n=a+-40|0;v=s+8|0;v=(v&7|0)==0?0:0-v&7;A=s+v|0;v=n-v|0;o[9638]=A;o[9635]=v;o[A+4>>2]=v|1;o[s+n+4>>2]=40;o[9639]=o[9754];n=e+4|0;o[n>>2]=27;o[t>>2]=o[9744];o[t+4>>2]=o[9745];o[t+8>>2]=o[9746];o[t+12>>2]=o[9747];o[9744]=s;o[9745]=a;o[9747]=0;o[9746]=t;t=e+24|0;do{A=t;t=t+4|0;o[t>>2]=7}while((A+8|0)>>>0>>0);if((e|0)!=(c|0)){s=e-c|0;o[n>>2]=o[n>>2]&-2;o[c+4>>2]=s|1;o[e>>2]=s;t=s>>>3;if(s>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=c;o[t+12>>2]=c;o[c+8>>2]=t;o[c+12>>2]=n;break}t=s>>>8;if(t)if(s>>>0>16777215)r=31;else{A=(t+1048320|0)>>>16&8;w=t<>>16&4;w=w<>>16&2;r=14-(v|A|r)+(w<>>15)|0;r=s>>>(r+7|0)&1|r<<1}else r=0;n=38832+(r<<2)|0;o[c+28>>2]=r;o[c+20>>2]=0;o[i>>2]=0;t=o[9633]|0;e=1<>2]=c;o[c+24>>2]=n;o[c+12>>2]=c;o[c+8>>2]=c;break}t=o[n>>2]|0;t:do{if((o[t+4>>2]&-8|0)!=(s|0)){r=s<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(s|0)){t=e;break t}else{r=r<<1;t=e}}o[n>>2]=c;o[c+24>>2]=t;o[c+12>>2]=c;o[c+8>>2]=c;break e}}while(0);A=t+8|0;w=o[A>>2]|0;o[w+12>>2]=c;o[A>>2]=c;o[c+8>>2]=w;o[c+12>>2]=t;o[c+24>>2]=0}}else{w=o[9636]|0;if((w|0)==0|s>>>0>>0)o[9636]=s;o[9744]=s;o[9745]=a;o[9747]=0;o[9641]=o[9750];o[9640]=-1;o[9645]=38568;o[9644]=38568;o[9647]=38576;o[9646]=38576;o[9649]=38584;o[9648]=38584;o[9651]=38592;o[9650]=38592;o[9653]=38600;o[9652]=38600;o[9655]=38608;o[9654]=38608;o[9657]=38616;o[9656]=38616;o[9659]=38624;o[9658]=38624;o[9661]=38632;o[9660]=38632;o[9663]=38640;o[9662]=38640;o[9665]=38648;o[9664]=38648;o[9667]=38656;o[9666]=38656;o[9669]=38664;o[9668]=38664;o[9671]=38672;o[9670]=38672;o[9673]=38680;o[9672]=38680;o[9675]=38688;o[9674]=38688;o[9677]=38696;o[9676]=38696;o[9679]=38704;o[9678]=38704;o[9681]=38712;o[9680]=38712;o[9683]=38720;o[9682]=38720;o[9685]=38728;o[9684]=38728;o[9687]=38736;o[9686]=38736;o[9689]=38744;o[9688]=38744;o[9691]=38752;o[9690]=38752;o[9693]=38760;o[9692]=38760;o[9695]=38768;o[9694]=38768;o[9697]=38776;o[9696]=38776;o[9699]=38784;o[9698]=38784;o[9701]=38792;o[9700]=38792;o[9703]=38800;o[9702]=38800;o[9705]=38808;o[9704]=38808;o[9707]=38816;o[9706]=38816;w=a+-40|0;v=s+8|0;v=(v&7|0)==0?0:0-v&7;A=s+v|0;v=w-v|0;o[9638]=A;o[9635]=v;o[A+4>>2]=v|1;o[s+w+4>>2]=40;o[9639]=o[9754]}}while(0);t=o[9635]|0;if(t>>>0>d>>>0){v=t-d|0;o[9635]=v;w=o[9638]|0;A=w+d|0;o[9638]=A;o[A+4>>2]=v|1;o[w+4>>2]=d|3;w=w+8|0;h=E;return w|0}}o[(Lo()|0)>>2]=12;w=0;h=E;return w|0}function Uo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,f=0,c=0;if(!e)return;n=e+-8|0;i=o[9636]|0;e=o[e+-4>>2]|0;t=e&-8;c=n+t|0;do{if(!(e&1)){r=o[n>>2]|0;if(!(e&3))return;a=n+(0-r)|0;s=r+t|0;if(a>>>0>>0)return;if((o[9637]|0)==(a|0)){e=c+4|0;t=o[e>>2]|0;if((t&3|0)!=3){f=a;t=s;break}o[9634]=s;o[e>>2]=t&-2;o[a+4>>2]=s|1;o[a+s>>2]=s;return}n=r>>>3;if(r>>>0<256){e=o[a+8>>2]|0;t=o[a+12>>2]|0;if((t|0)==(e|0)){o[9632]=o[9632]&~(1<>2]=t;o[t+8>>2]=e;f=a;t=s;break}}i=o[a+24>>2]|0;e=o[a+12>>2]|0;do{if((e|0)==(a|0)){t=a+16|0;n=t+4|0;e=o[n>>2]|0;if(!e){e=o[t>>2]|0;if(!e){e=0;break}}else t=n;while(1){r=e+20|0;n=o[r>>2]|0;if(!n){r=e+16|0;n=o[r>>2]|0;if(!n)break;else{e=n;t=r}}else{e=n;t=r}}o[t>>2]=0}else{f=o[a+8>>2]|0;o[f+12>>2]=e;o[e+8>>2]=f}}while(0);if(i){t=o[a+28>>2]|0;n=38832+(t<<2)|0;if((o[n>>2]|0)==(a|0)){o[n>>2]=e;if(!e){o[9633]=o[9633]&~(1<>2]|0)==(a|0)?f:i+20|0)>>2]=e;if(!e){f=a;t=s;break}}o[e+24>>2]=i;t=a+16|0;n=o[t>>2]|0;if(n|0){o[e+16>>2]=n;o[n+24>>2]=e}t=o[t+4>>2]|0;if(t){o[e+20>>2]=t;o[t+24>>2]=e;f=a;t=s}else{f=a;t=s}}else{f=a;t=s}}else{f=n;a=n}}while(0);if(a>>>0>=c>>>0)return;e=c+4|0;r=o[e>>2]|0;if(!(r&1))return;if(!(r&2)){if((o[9638]|0)==(c|0)){c=(o[9635]|0)+t|0;o[9635]=c;o[9638]=f;o[f+4>>2]=c|1;if((f|0)!=(o[9637]|0))return;o[9637]=0;o[9634]=0;return}if((o[9637]|0)==(c|0)){c=(o[9634]|0)+t|0;o[9634]=c;o[9637]=a;o[f+4>>2]=c|1;o[a+c>>2]=c;return}i=(r&-8)+t|0;n=r>>>3;do{if(r>>>0<256){t=o[c+8>>2]|0;e=o[c+12>>2]|0;if((e|0)==(t|0)){o[9632]=o[9632]&~(1<>2]=e;o[e+8>>2]=t;break}}else{s=o[c+24>>2]|0;e=o[c+12>>2]|0;do{if((e|0)==(c|0)){t=c+16|0;n=t+4|0;e=o[n>>2]|0;if(!e){e=o[t>>2]|0;if(!e){n=0;break}}else t=n;while(1){r=e+20|0;n=o[r>>2]|0;if(!n){r=e+16|0;n=o[r>>2]|0;if(!n)break;else{e=n;t=r}}else{e=n;t=r}}o[t>>2]=0;n=e}else{n=o[c+8>>2]|0;o[n+12>>2]=e;o[e+8>>2]=n;n=e}}while(0);if(s|0){e=o[c+28>>2]|0;t=38832+(e<<2)|0;if((o[t>>2]|0)==(c|0)){o[t>>2]=n;if(!n){o[9633]=o[9633]&~(1<>2]|0)==(c|0)?r:s+20|0)>>2]=n;if(!n)break}o[n+24>>2]=s;e=c+16|0;t=o[e>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}e=o[e+4>>2]|0;if(e|0){o[n+20>>2]=e;o[e+24>>2]=n}}}}while(0);o[f+4>>2]=i|1;o[a+i>>2]=i;if((f|0)==(o[9637]|0)){o[9634]=i;return}}else{o[e>>2]=r&-2;o[f+4>>2]=t|1;o[a+t>>2]=t;i=t}e=i>>>3;if(i>>>0<256){n=38568+(e<<1<<2)|0;t=o[9632]|0;e=1<>2]|0}o[t>>2]=f;o[e+12>>2]=f;o[f+8>>2]=e;o[f+12>>2]=n;return}e=i>>>8;if(e)if(i>>>0>16777215)r=31;else{a=(e+1048320|0)>>>16&8;c=e<>>16&4;c=c<>>16&2;r=14-(s|a|r)+(c<>>15)|0;r=i>>>(r+7|0)&1|r<<1}else r=0;e=38832+(r<<2)|0;o[f+28>>2]=r;o[f+20>>2]=0;o[f+16>>2]=0;t=o[9633]|0;n=1<>2]=f;o[f+24>>2]=e;o[f+12>>2]=f;o[f+8>>2]=f}else{e=o[e>>2]|0;t:do{if((o[e+4>>2]&-8|0)!=(i|0)){r=i<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=e+16+(r>>>31<<2)|0;t=o[n>>2]|0;if(!t)break;if((o[t+4>>2]&-8|0)==(i|0)){e=t;break t}else{r=r<<1;e=t}}o[n>>2]=f;o[f+24>>2]=e;o[f+12>>2]=f;o[f+8>>2]=f;break e}}while(0);a=e+8|0;c=o[a>>2]|0;o[c+12>>2]=f;o[a>>2]=f;o[f+8>>2]=c;o[f+12>>2]=e;o[f+24>>2]=0}}while(0);c=(o[9640]|0)+-1|0;o[9640]=c;if(c|0)return;e=38984;while(1){e=o[e>>2]|0;if(!e)break;else e=e+8|0}o[9640]=-1;return}function Lo(){return 39088}function qo(e,t){e=e|0;t=t|0;var n=0,i=0;n=r[e>>0]|0;i=r[t>>0]|0;if(n<<24>>24==0?1:n<<24>>24!=i<<24>>24)e=i;else{do{e=e+1|0;t=t+1|0;n=r[e>>0]|0;i=r[t>>0]|0}while(!(n<<24>>24==0?1:n<<24>>24!=i<<24>>24));e=i}return(n&255)-(e&255)|0}function Fo(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;e:do{if(!n)e=0;else{while(1){i=r[e>>0]|0;o=r[t>>0]|0;if(i<<24>>24!=o<<24>>24)break;n=n+-1|0;if(!n){e=0;break e}else{e=e+1|0;t=t+1|0}}e=(i&255)-(o&255)|0}}while(0);return e|0}function Ko(e){e=e|0;return(e+-48|0)>>>0<10|0}function Go(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0,d=0;d=h;h=h+128|0;s=d+124|0;l=d;a=l;f=37604;c=a+124|0;do{o[a>>2]=o[f>>2];a=a+4|0;f=f+4|0}while((a|0)<(c|0));if((t+-1|0)>>>0>2147483646)if(!t){e=s;t=1;u=4}else{o[(Lo()|0)>>2]=75;t=-1}else u=4;if((u|0)==4){u=-2-e|0;u=t>>>0>u>>>0?u:t;o[l+48>>2]=u;s=l+20|0;o[s>>2]=e;o[l+44>>2]=e;t=e+u|0;e=l+16|0;o[e>>2]=t;o[l+28>>2]=t;t=zo(l,n,i)|0;if(u){l=o[s>>2]|0;r[l+(((l|0)==(o[e>>2]|0))<<31>>31)>>0]=0}}h=d;return t|0}function zo(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0;y=h;h=h+224|0;d=y+208|0;g=y+160|0;m=y+80|0;_=y;i=g;s=i+40|0;do{o[i>>2]=0;i=i+4|0}while((i|0)<(s|0));o[d>>2]=o[n>>2];if((Ho(0,t,d,m,g)|0)<0)n=-1;else{if((o[e+76>>2]|0)>-1)p=Vo(e)|0;else p=0;n=o[e>>2]|0;l=n&32;if((r[e+74>>0]|0)<1)o[e>>2]=n&-33;i=e+48|0;if(!(o[i>>2]|0)){s=e+44|0;a=o[s>>2]|0;o[s>>2]=_;f=e+28|0;o[f>>2]=_;c=e+20|0;o[c>>2]=_;o[i>>2]=80;u=e+16|0;o[u>>2]=_+80;n=Ho(e,t,d,m,g)|0;if(a){Vs[o[e+36>>2]&1](e,0,0)|0;n=(o[c>>2]|0)==0?-1:n;o[s>>2]=a;o[i>>2]=0;o[u>>2]=0;o[f>>2]=0;o[c>>2]=0}}else n=Ho(e,t,d,m,g)|0;i=o[e>>2]|0;o[e>>2]=i|l;if(p|0)Qo(e);n=(i&32|0)==0?n:-1}h=y;return n|0}function Ho(e,t,n,s,a){e=e|0;t=t|0;n=n|0;s=s|0;a=a|0;var f=0,c=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0;D=h;h=h+64|0;O=D+56|0;C=D+40|0;k=D;M=D+48|0;P=D+60|0;o[O>>2]=t;w=(e|0)!=0;E=k+40|0;S=E;k=k+39|0;R=M+4|0;f=0;t=0;l=0;e:while(1){do{do{if((t|0)>-1)if((f|0)>(2147483647-t|0)){o[(Lo()|0)>>2]=75;t=-1;break}else{t=f+t|0;break}}while(0);y=o[O>>2]|0;f=r[y>>0]|0;if(!(f<<24>>24)){A=94;break e}c=y;t:while(1){switch(f<<24>>24){case 37:{A=10;break t}case 0:{f=c;break t}default:{}}v=c+1|0;o[O>>2]=v;f=r[v>>0]|0;c=v}t:do{if((A|0)==10){A=0;f=c;do{if((r[c+1>>0]|0)!=37)break t;f=f+1|0;c=c+2|0;o[O>>2]=c}while((r[c>>0]|0)==37)}}while(0);f=f-y|0;if(w)Wo(e,y,f)}while((f|0)!=0);v=(Ko(r[(o[O>>2]|0)+1>>0]|0)|0)==0;c=o[O>>2]|0;if(!v?(r[c+2>>0]|0)==36:0){m=(r[c+1>>0]|0)+-48|0;p=1;f=3}else{m=-1;p=l;f=1}f=c+f|0;o[O>>2]=f;c=r[f>>0]|0;l=(c<<24>>24)+-32|0;if(l>>>0>31|(1<>2]=f;c=r[f>>0]|0;l=(c<<24>>24)+-32|0}while(!(l>>>0>31|(1<>24==42){if((Ko(r[f+1>>0]|0)|0)!=0?(x=o[O>>2]|0,(r[x+2>>0]|0)==36):0){f=x+1|0;o[a+((r[f>>0]|0)+-48<<2)>>2]=10;f=o[s+((r[f>>0]|0)+-48<<3)>>2]|0;l=1;c=x+3|0}else{if(p|0){t=-1;break}if(w){v=(o[n>>2]|0)+(4-1)&~(4-1);f=o[v>>2]|0;o[n>>2]=v+4}else f=0;l=0;c=(o[O>>2]|0)+1|0}o[O>>2]=c;v=(f|0)<0;b=v?0-f|0:f;d=v?d|8192:d;v=l}else{f=Yo(O)|0;if((f|0)<0){t=-1;break}b=f;v=p;c=o[O>>2]|0}do{if((r[c>>0]|0)==46){f=c+1|0;if((r[f>>0]|0)!=42){o[O>>2]=f;f=Yo(O)|0;c=o[O>>2]|0;break}if(Ko(r[c+2>>0]|0)|0?(T=o[O>>2]|0,(r[T+3>>0]|0)==36):0){f=T+2|0;o[a+((r[f>>0]|0)+-48<<2)>>2]=10;f=o[s+((r[f>>0]|0)+-48<<3)>>2]|0;c=T+4|0;o[O>>2]=c;break}if(v|0){t=-1;break e}if(w){_=(o[n>>2]|0)+(4-1)&~(4-1);f=o[_>>2]|0;o[n>>2]=_+4}else f=0;c=(o[O>>2]|0)+2|0;o[O>>2]=c}else f=-1}while(0);_=0;while(1){if(((r[c>>0]|0)+-65|0)>>>0>57){t=-1;break e}l=c;c=c+1|0;o[O>>2]=c;l=r[(r[l>>0]|0)+-65+(35136+(_*58|0))>>0]|0;p=l&255;if((p+-1|0)>>>0>=8)break;else _=p}if(!(l<<24>>24)){t=-1;break}g=(m|0)>-1;do{if(l<<24>>24==19)if(g){t=-1;break e}else A=54;else{if(g){o[a+(m<<2)>>2]=p;g=s+(m<<3)|0;m=o[g+4>>2]|0;A=C;o[A>>2]=o[g>>2];o[A+4>>2]=m;A=54;break}if(!w){t=0;break e}Xo(C,p,n);c=o[O>>2]|0;A=55}}while(0);if((A|0)==54){A=0;if(w)A=55;else f=0}t:do{if((A|0)==55){A=0;c=r[c+-1>>0]|0;c=(_|0)!=0&(c&15|0)==3?c&-33:c;l=d&-65537;m=(d&8192|0)==0?d:l;n:do{switch(c|0){case 110:switch((_&255)<<24>>24){case 0:{o[o[C>>2]>>2]=t;f=0;break t}case 1:{o[o[C>>2]>>2]=t;f=0;break t}case 2:{f=o[C>>2]|0;o[f>>2]=t;o[f+4>>2]=((t|0)<0)<<31>>31;f=0;break t}case 3:{i[o[C>>2]>>1]=t;f=0;break t}case 4:{r[o[C>>2]>>0]=t;f=0;break t}case 6:{o[o[C>>2]>>2]=t;f=0;break t}case 7:{f=o[C>>2]|0;o[f>>2]=t;o[f+4>>2]=((t|0)<0)<<31>>31;f=0;break t}default:{f=0;break t}}case 112:{c=120;f=f>>>0>8?f:8;l=m|8;A=67;break}case 88:case 120:{l=m;A=67;break}case 111:{l=C;c=o[l>>2]|0;l=o[l+4>>2]|0;g=Zo(c,l,E)|0;A=S-g|0;d=0;p=38441;f=(m&8|0)==0|(f|0)>(A|0)?f:A+1|0;A=73;break}case 105:case 100:{l=C;c=o[l>>2]|0;l=o[l+4>>2]|0;if((l|0)<0){c=ks(0,0,c|0,l|0)|0;l=I;d=C;o[d>>2]=c;o[d+4>>2]=l;d=1;p=38441;A=72;break n}else{d=(m&2049|0)!=0&1;p=(m&2048|0)==0?(m&1|0)==0?38441:38443:38442;A=72;break n}}case 117:{l=C;d=0;p=38441;c=o[l>>2]|0;l=o[l+4>>2]|0;A=72;break}case 99:{r[k>>0]=o[C>>2];_=k;d=0;p=38441;g=1;f=S;break}case 109:{c=es(o[(Lo()|0)>>2]|0)|0;A=77;break}case 115:{c=o[C>>2]|0;c=(c|0)==0?38451:c;A=77;break}case 67:{o[M>>2]=o[C>>2];o[R>>2]=0;o[C>>2]=M;p=-1;A=81;break}case 83:{if(!f){ns(e,32,b,0,m);f=0;A=91}else{p=f;A=81}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{f=is(e,+u[C>>3],b,f,m,c)|0;break t}default:{_=y;d=0;p=38441;g=f;l=m;f=S}}}while(0);n:do{if((A|0)==67){y=C;_=o[y>>2]|0;y=o[y+4>>2]|0;g=Jo(_,y,E,c&32)|0;p=(l&8|0)==0|(_|0)==0&(y|0)==0;d=p?0:2;p=p?38441:38441+(c>>>4)|0;m=l;c=_;l=y;A=73}else if((A|0)==72){g=$o(c,l,E)|0;A=73}else if((A|0)==77){A=0;y=ts(c,0,f)|0;m=(y|0)==0;_=c;d=0;p=38441;g=m?f:y-c|0;f=m?c+f|0:y}else if((A|0)==81){A=0;d=o[C>>2]|0;f=0;while(1){c=o[d>>2]|0;if(!c)break;c=rs(P,c)|0;l=(c|0)<0;if(l|c>>>0>(p-f|0)>>>0){A=85;break}f=c+f|0;if(p>>>0>f>>>0)d=d+4|0;else break}if((A|0)==85){A=0;if(l){t=-1;break e}}ns(e,32,b,f,m);if(!f){f=0;A=91}else{l=o[C>>2]|0;d=0;while(1){c=o[l>>2]|0;if(!c){A=91;break n}c=rs(P,c)|0;d=c+d|0;if((d|0)>(f|0)){A=91;break n}Wo(e,P,c);if(d>>>0>=f>>>0){A=91;break}else l=l+4|0}}}}while(0);if((A|0)==73){A=0;l=(c|0)!=0|(l|0)!=0;y=(f|0)!=0|l;l=S-g+((l^1)&1)|0;_=y?g:E;g=y?(f|0)>(l|0)?f:l:0;l=(f|0)>-1?m&-65537:m;f=S}else if((A|0)==91){A=0;ns(e,32,b,f,m^8192);f=(b|0)>(f|0)?b:f;break}m=f-_|0;g=(g|0)<(m|0)?m:g;y=g+d|0;f=(b|0)<(y|0)?y:b;ns(e,32,f,y,l);Wo(e,p,d);ns(e,48,f,y,l^65536);ns(e,48,g,m,0);Wo(e,_,m);ns(e,32,f,y,l^8192)}}while(0);l=v}e:do{if((A|0)==94)if(!e)if(!l)t=0;else{t=1;while(1){f=o[a+(t<<2)>>2]|0;if(!f)break;Xo(s+(t<<3)|0,f,n);t=t+1|0;if(t>>>0>=10){t=1;break e}}while(1){if(o[a+(t<<2)>>2]|0){t=-1;break e}t=t+1|0;if(t>>>0>=10){t=1;break}}}}while(0);h=D;return t|0}function Vo(e){e=e|0;return 0}function Qo(e){e=e|0;return}function Wo(e,t,n){e=e|0;t=t|0;n=n|0;if(!(o[e>>2]&32))_s(t,n,e)|0;return}function Yo(e){e=e|0;var t=0,n=0;if(!(Ko(r[o[e>>2]>>0]|0)|0))t=0;else{t=0;do{n=o[e>>2]|0;t=(t*10|0)+-48+(r[n>>0]|0)|0;n=n+1|0;o[e>>2]=n}while((Ko(r[n>>0]|0)|0)!=0)}return t|0}function Xo(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0.0;e:do{if(t>>>0<=20)do{switch(t|0){case 9:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;o[e>>2]=t;break e}case 10:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=((t|0)<0)<<31>>31;break e}case 11:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=0;break e}case 12:{r=(o[n>>2]|0)+(8-1)&~(8-1);t=r;i=o[t>>2]|0;t=o[t+4>>2]|0;o[n>>2]=r+8;r=e;o[r>>2]=i;o[r+4>>2]=t;break e}case 13:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&65535)<<16>>16;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 14:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&65535;o[i+4>>2]=0;break e}case 15:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&255)<<24>>24;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 16:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&255;o[i+4>>2]=0;break e}case 17:{i=(o[n>>2]|0)+(8-1)&~(8-1);s=+u[i>>3];o[n>>2]=i+8;u[e>>3]=s;break e}case 18:{i=(o[n>>2]|0)+(8-1)&~(8-1);s=+u[i>>3];o[n>>2]=i+8;u[e>>3]=s;break e}default:break e}}while(0)}while(0);return}function Jo(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=s[35600+(e&15)>>0]|0|i;e=Cs(e|0,t|0,4)|0;t=I}while(!((e|0)==0&(t|0)==0));return n|0}function Zo(e,t,n){e=e|0;t=t|0;n=n|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=e&7|48;e=Cs(e|0,t|0,3)|0;t=I}while(!((e|0)==0&(t|0)==0));return n|0}function $o(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0;if(t>>>0>0|(t|0)==0&e>>>0>4294967295){do{i=e;e=Ts(e|0,t|0,10,0)|0;o=t;t=I;s=Es(e|0,t|0,10,0)|0;s=ks(i|0,o|0,s|0,I|0)|0;n=n+-1|0;r[n>>0]=s&255|48}while(o>>>0>9|(o|0)==9&i>>>0>4294967295);t=e}else t=e;if(t)do{s=t;t=(t>>>0)/10|0;n=n+-1|0;r[n>>0]=s-(t*10|0)|48}while(s>>>0>=10);return n|0}function es(e){e=e|0;return ds(e,o[(ls()|0)+188>>2]|0)|0}function ts(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0;a=t&255;i=(n|0)!=0;e:do{if(i&(e&3|0)!=0){s=t&255;while(1){if((r[e>>0]|0)==s<<24>>24){f=6;break e}e=e+1|0;n=n+-1|0;i=(n|0)!=0;if(!(i&(e&3|0)!=0)){f=5;break}}}else f=5}while(0);if((f|0)==5)if(i)f=6;else f=16;e:do{if((f|0)==6){s=t&255;if((r[e>>0]|0)==s<<24>>24)if(!n){f=16;break}else break;i=F(a,16843009)|0;t:do{if(n>>>0>3)while(1){a=o[e>>2]^i;if((a&-2139062144^-2139062144)&a+-16843009|0)break t;e=e+4|0;n=n+-4|0;if(n>>>0<=3){f=11;break}}else f=11}while(0);if((f|0)==11)if(!n){f=16;break}while(1){if((r[e>>0]|0)==s<<24>>24)break e;n=n+-1|0;if(!n){f=16;break}else e=e+1|0}}}while(0);if((f|0)==16)e=0;return e|0}function ns(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var o=0,s=0;s=h;h=h+256|0;o=s;if((n|0)>(r|0)&(i&73728|0)==0){i=n-r|0;Ds(o|0,t<<24>>24|0,(i>>>0<256?i:256)|0)|0;if(i>>>0>255){t=n-r|0;do{Wo(e,o,256);i=i+-256|0}while(i>>>0>255);i=t&255}Wo(e,o,i)}h=s;return}function rs(e,t){e=e|0;t=t|0;if(!e)e=0;else e=fs(e,t,0)|0;return e|0}function is(e,t,n,i,a,f){e=e|0;t=+t;n=n|0;i=i|0;a=a|0;f=f|0;var c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0.0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0;P=h;h=h+560|0;l=P+32|0;A=P+536|0;M=P;x=M;d=P+540|0;o[A>>2]=0;C=d+12|0;os(t)|0;c=I;if((c|0)<0){t=-t;os(t)|0;O=1;T=38458;c=I}else{O=(a&2049|0)!=0&1;T=(a&2048|0)==0?(a&1|0)==0?38459:38464:38461}do{if(0==0&(c&2146435072|0)==2146435072){M=(f&32|0)!=0;c=O+3|0;ns(e,32,n,c,a&-65537);Wo(e,T,O);Wo(e,t!=t|0.0!=0.0?M?38485:38489:M?38477:38481,3);ns(e,32,n,c,a^8192)}else{_=+ss(t,A)*2.0;c=_!=0.0;if(c)o[A>>2]=(o[A>>2]|0)+-1;v=f|32;if((v|0)==97){g=f&32;y=(g|0)==0?T:T+9|0;m=O|2;c=12-i|0;do{if(!(i>>>0>11|(c|0)==0)){t=8.0;do{c=c+-1|0;t=t*16.0}while((c|0)!=0);if((r[y>>0]|0)==45){t=-(t+(-_-t));break}else{t=_+t-t;break}}else t=_}while(0);u=o[A>>2]|0;c=(u|0)<0?0-u|0:u;c=$o(c,((c|0)<0)<<31>>31,C)|0;if((c|0)==(C|0)){c=d+11|0;r[c>>0]=48}r[c+-1>>0]=(u>>31&2)+43;p=c+-2|0;r[p>>0]=f+15;u=(i|0)<1;l=(a&8|0)==0;d=M;do{O=~~t;c=d+1|0;r[d>>0]=g|s[35600+O>>0];t=(t-+(O|0))*16.0;if((c-x|0)==1?!(l&(u&t==0.0)):0){r[c>>0]=46;d=d+2|0}else d=c}while(t!=0.0);if((i|0)!=0?(-2-x+d|0)<(i|0):0){u=C;l=p;c=i+2+u-l|0}else{u=C;l=p;c=u-x-l+d|0}C=c+m|0;ns(e,32,n,C,a);Wo(e,y,m);ns(e,48,n,C,a^65536);x=d-x|0;Wo(e,M,x);M=u-l|0;ns(e,48,c-(x+M)|0,0,0);Wo(e,p,M);ns(e,32,n,C,a^8192);c=C;break}u=(i|0)<0?6:i;if(c){c=(o[A>>2]|0)+-28|0;o[A>>2]=c;t=_*268435456.0}else{t=_;c=o[A>>2]|0}R=(c|0)<0?l:l+288|0;l=R;do{S=~~t>>>0;o[l>>2]=S;l=l+4|0;t=(t-+(S>>>0))*1.0e9}while(t!=0.0);S=R;if((c|0)>0){g=R;while(1){p=(c|0)<29?c:29;c=l+-4|0;if(c>>>0>=g>>>0){d=0;do{b=xs(o[c>>2]|0,0,p|0)|0;b=Ss(b|0,I|0,d|0,0)|0;w=I;d=Ts(b|0,w|0,1e9,0)|0;E=Es(d|0,I|0,1e9,0)|0;E=ks(b|0,w|0,E|0,I|0)|0;o[c>>2]=E;c=c+-4|0}while(c>>>0>=g>>>0);if(d){E=g+-4|0;o[E>>2]=d;d=E}else d=g}else d=g;e:do{if(l>>>0>d>>>0){c=l;while(1){l=c+-4|0;if(o[l>>2]|0){l=c;break e}if(l>>>0>d>>>0)c=l;else break}}}while(0);c=(o[A>>2]|0)-p|0;o[A>>2]=c;if((c|0)>0)g=d;else break}}else d=R;if((c|0)<0){i=((u+25|0)/9|0)+1|0;b=(v|0)==102;do{y=0-c|0;y=(y|0)<9?y:9;if(d>>>0>>0){p=(1<>>y;m=0;c=d;do{E=o[c>>2]|0;o[c>>2]=(E>>>y)+m;m=F(E&p,g)|0;c=c+4|0}while(c>>>0>>0);d=(o[d>>2]|0)==0?d+4|0:d;if(m){o[l>>2]=m;l=l+4|0}}else d=(o[d>>2]|0)==0?d+4|0:d;c=b?R:d;l=(l-c>>2|0)>(i|0)?c+(i<<2)|0:l;c=(o[A>>2]|0)+y|0;o[A>>2]=c}while((c|0)<0);b=d}else b=d;if(b>>>0>>0){c=(S-b>>2)*9|0;p=o[b>>2]|0;if(p>>>0>=10){d=10;do{d=d*10|0;c=c+1|0}while(p>>>0>=d>>>0)}}else c=0;w=(v|0)==103;E=(u|0)!=0;d=u-((v|0)==102?0:c)+((E&w)<<31>>31)|0;if((d|0)<(((l-S>>2)*9|0)+-9|0)){A=d+9216|0;d=(A|0)/9|0;i=R+4+(d+-1024<<2)|0;d=A-(d*9|0)|0;if((d|0)<8){p=10;while(1){p=p*10|0;if((d|0)<7)d=d+1|0;else break}}else p=10;m=o[i>>2]|0;d=(m>>>0)/(p>>>0)|0;y=m-(F(d,p)|0)|0;g=(i+4|0)==(l|0);if(!(g&(y|0)==0)){_=(d&1|0)==0?9007199254740992.0:9007199254740994.0;A=p>>>1;t=y>>>0>>0?.5:g&(y|0)==(A|0)?1.0:1.5;if(O){A=(r[T>>0]|0)==45;t=A?-t:t;_=A?-_:_}d=m-y|0;o[i>>2]=d;if(_+t!=_){A=d+p|0;o[i>>2]=A;if(A>>>0>999999999){p=i;c=b;while(1){d=p+-4|0;o[p>>2]=0;if(d>>>0>>0){c=c+-4|0;o[c>>2]=0}A=(o[d>>2]|0)+1|0;o[d>>2]=A;if(A>>>0>999999999)p=d;else{p=c;break}}}else{d=i;p=b}c=(S-p>>2)*9|0;m=o[p>>2]|0;if(m>>>0>=10){g=10;do{g=g*10|0;c=c+1|0}while(m>>>0>=g>>>0)}}else{d=i;p=b}}else{d=i;p=b}A=d+4|0;l=l>>>0>A>>>0?A:l}else p=b;i=0-c|0;e:do{if(l>>>0>p>>>0)while(1){d=l+-4|0;if(o[d>>2]|0){A=l;v=1;break e}if(d>>>0>p>>>0)l=d;else{A=d;v=0;break}}else{A=l;v=0}}while(0);do{if(w){u=u+((E^1)&1)|0;if((u|0)>(c|0)&(c|0)>-5){g=f+-1|0;u=u+-1-c|0}else{g=f+-2|0;u=u+-1|0}if(!(a&8)){if(v?(k=o[A+-4>>2]|0,(k|0)!=0):0)if(!((k>>>0)%10|0)){d=0;l=10;do{l=l*10|0;d=d+1|0}while(!((k>>>0)%(l>>>0)|0|0))}else d=0;else d=9;l=((A-S>>2)*9|0)+-9|0;if((g|32|0)==102){f=l-d|0;f=(f|0)>0?f:0;u=(u|0)<(f|0)?u:f;break}else{f=l+c-d|0;f=(f|0)>0?f:0;u=(u|0)<(f|0)?u:f;break}}}else g=f}while(0);b=(u|0)!=0;m=b?1:a>>>3&1;y=(g|32|0)==102;if(y){w=0;c=(c|0)>0?c:0}else{l=(c|0)<0?i:c;l=$o(l,((l|0)<0)<<31>>31,C)|0;d=C;if((d-l|0)<2)do{l=l+-1|0;r[l>>0]=48}while((d-l|0)<2);r[l+-1>>0]=(c>>31&2)+43;c=l+-2|0;r[c>>0]=g;w=c;c=d-c|0}c=O+1+u+m+c|0;ns(e,32,n,c,a);Wo(e,T,O);ns(e,48,n,c,a^65536);if(y){m=p>>>0>R>>>0?R:p;y=M+9|0;p=y;g=M+8|0;d=m;do{l=$o(o[d>>2]|0,0,y)|0;if((d|0)==(m|0)){if((l|0)==(y|0)){r[g>>0]=48;l=g}}else if(l>>>0>M>>>0){Ds(M|0,48,l-x|0)|0;do{l=l+-1|0}while(l>>>0>M>>>0)}Wo(e,l,p-l|0);d=d+4|0}while(d>>>0<=R>>>0);if(!((a&8|0)==0&(b^1)))Wo(e,38493,1);if(d>>>0>>0&(u|0)>0)while(1){l=$o(o[d>>2]|0,0,y)|0;if(l>>>0>M>>>0){Ds(M|0,48,l-x|0)|0;do{l=l+-1|0}while(l>>>0>M>>>0)}Wo(e,l,(u|0)<9?u:9);d=d+4|0;l=u+-9|0;if(!(d>>>0>>0&(u|0)>9)){u=l;break}else u=l}ns(e,48,u+9|0,9,0)}else{A=v?A:p+4|0;if(p>>>0>>0&(u|0)>-1){i=M+9|0;b=(a&8|0)==0;v=i;m=0-x|0;y=M+8|0;g=p;do{l=$o(o[g>>2]|0,0,i)|0;if((l|0)==(i|0)){r[y>>0]=48;l=y}do{if((g|0)==(p|0)){d=l+1|0;Wo(e,l,1);if(b&(u|0)<1){l=d;break}Wo(e,38493,1);l=d}else{if(l>>>0<=M>>>0)break;Ds(M|0,48,l+m|0)|0;do{l=l+-1|0}while(l>>>0>M>>>0)}}while(0);x=v-l|0;Wo(e,l,(u|0)>(x|0)?x:u);u=u-x|0;g=g+4|0}while(g>>>0>>0&(u|0)>-1)}ns(e,48,u+18|0,18,0);Wo(e,w,C-w|0)}ns(e,32,n,c,a^8192)}}while(0);h=P;return((c|0)<(n|0)?n:c)|0}function os(e){e=+e;var t=0;u[d>>3]=e;t=o[d>>2]|0;I=o[d+4>>2]|0;return t|0}function ss(e,t){e=+e;t=t|0;return+ +as(e,t)}function as(e,t){e=+e;t=t|0;var n=0,r=0,i=0;u[d>>3]=e;n=o[d>>2]|0;r=o[d+4>>2]|0;i=Cs(n|0,r|0,52)|0;switch(i&2047){case 0:{if(e!=0.0){e=+as(e*18446744073709551616.0,t);n=(o[t>>2]|0)+-64|0}else n=0;o[t>>2]=n;break}case 2047:break;default:{o[t>>2]=(i&2047)+-1022;o[d>>2]=n;o[d+4>>2]=r&-2146435073|1071644672;e=+u[d>>3]}}return+e}function fs(e,t,n){e=e|0;t=t|0;n=n|0;do{if(e){if(t>>>0<128){r[e>>0]=t;e=1;break}if(!(o[o[(cs()|0)+188>>2]>>2]|0))if((t&-128|0)==57216){r[e>>0]=t;e=1;break}else{o[(Lo()|0)>>2]=84;e=-1;break}if(t>>>0<2048){r[e>>0]=t>>>6|192;r[e+1>>0]=t&63|128;e=2;break}if(t>>>0<55296|(t&-8192|0)==57344){r[e>>0]=t>>>12|224;r[e+1>>0]=t>>>6&63|128;r[e+2>>0]=t&63|128;e=3;break}if((t+-65536|0)>>>0<1048576){r[e>>0]=t>>>18|240;r[e+1>>0]=t>>>12&63|128;r[e+2>>0]=t>>>6&63|128;r[e+3>>0]=t&63|128;e=4;break}else{o[(Lo()|0)>>2]=84;e=-1;break}}else e=1}while(0);return e|0}function cs(){return us()|0}function us(){return 37728}function ls(){return us()|0}function ds(e,t){e=e|0;t=t|0;var n=0,i=0;n=0;while(1){if((s[35616+n>>0]|0)==(e|0)){i=4;break}n=n+1|0;if((n|0)==87){e=87;i=5;break}}if((i|0)==4)if(!n)n=35712;else{e=n;i=5}if((i|0)==5){n=35712;do{do{i=n;n=n+1|0}while((r[i>>0]|0)!=0);e=e+-1|0}while((e|0)!=0)}return hs(n,o[t+20>>2]|0)|0}function hs(e,t){e=e|0;t=t|0;return ps(e,t)|0}function ps(e,t){e=e|0;t=t|0;if(!t)t=0;else t=gs(o[t>>2]|0,o[t+4>>2]|0,e)|0;return((t|0)==0?e:t)|0}function gs(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0;p=(o[e>>2]|0)+1794895138|0;a=ms(o[e+8>>2]|0,p)|0;i=ms(o[e+12>>2]|0,p)|0;s=ms(o[e+16>>2]|0,p)|0;e:do{if((a>>>0>>2>>>0?(h=t-(a<<2)|0,i>>>0>>0&s>>>0>>0):0)?((s|i)&3|0)==0:0){h=i>>>2;d=s>>>2;l=0;while(1){c=a>>>1;u=l+c|0;f=u<<1;s=f+h|0;i=ms(o[e+(s<<2)>>2]|0,p)|0;s=ms(o[e+(s+1<<2)>>2]|0,p)|0;if(!(s>>>0>>0&i>>>0<(t-s|0)>>>0)){i=0;break e}if(r[e+(s+i)>>0]|0){i=0;break e}i=qo(n,e+s|0)|0;if(!i)break;i=(i|0)<0;if((a|0)==1){i=0;break e}l=i?l:u;a=i?c:a-c|0}i=f+d|0;s=ms(o[e+(i<<2)>>2]|0,p)|0;i=ms(o[e+(i+1<<2)>>2]|0,p)|0;if(i>>>0>>0&s>>>0<(t-i|0)>>>0)i=(r[e+(i+s)>>0]|0)==0?e+i|0:0;else i=0}else i=0}while(0);return i|0}function ms(e,t){e=e|0;t=t|0;var n=0;n=Ms(e|0)|0;return((t|0)==0?e:n)|0}function _s(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0;i=n+16|0;s=o[i>>2]|0;if(!s)if(!(ys(n)|0)){s=o[i>>2]|0;a=5}else i=0;else a=5;e:do{if((a|0)==5){c=n+20|0;f=o[c>>2]|0;i=f;if((s-f|0)>>>0>>0){i=Vs[o[n+36>>2]&1](n,e,t)|0;break}t:do{if((r[n+75>>0]|0)<0|(t|0)==0){a=0;s=e}else{f=t;while(1){s=f+-1|0;if((r[e+s>>0]|0)==10)break;if(!s){a=0;s=e;break t}else f=s}i=Vs[o[n+36>>2]&1](n,e,f)|0;if(i>>>0>>0)break e;a=f;s=e+f|0;t=t-f|0;i=o[c>>2]|0}}while(0);Ps(i|0,s|0,t|0)|0;o[c>>2]=(o[c>>2]|0)+t;i=a+t|0}}while(0);return i|0}function ys(e){e=e|0;var t=0,n=0;t=e+74|0;n=r[t>>0]|0;r[t>>0]=n+255|n;t=o[e>>2]|0;if(!(t&8)){o[e+8>>2]=0;o[e+4>>2]=0;n=o[e+44>>2]|0;o[e+28>>2]=n;o[e+20>>2]=n;o[e+16>>2]=n+(o[e+48>>2]|0);e=0}else{o[e>>2]=t|32;e=-1}return e|0}function bs(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=e+20|0;i=o[r>>2]|0;e=(o[e+16>>2]|0)-i|0;e=e>>>0>n>>>0?n:e;Ps(i|0,t|0,e|0)|0;o[r>>2]=(o[r>>2]|0)+e;return n|0}function vs(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0;i=h;h=h+16|0;s=i;o[s>>2]=r;r=Go(e,t,n,s)|0;h=i;return r|0}function As(){}function ws(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0;o=e&65535;i=t&65535;n=F(i,o)|0;r=e>>>16;e=(n>>>16)+(F(i,r)|0)|0;i=t>>>16;t=F(i,o)|0;return(I=(e>>>16)+(F(i,r)|0)+(((e&65535)+t|0)>>>16)|0,e+t<<16|n&65535|0)|0}function Es(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0;i=e;o=n;n=ws(i,o)|0;e=I;return(I=(F(t,o)|0)+(F(r,i)|0)+e|e&0,n|0|0)|0}function Ss(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;n=e+n>>>0;return(I=t+r+(n>>>0>>0|0)>>>0,n|0)|0}function ks(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;r=t-r-(n>>>0>e>>>0|0)>>>0;return(I=r,e-n>>>0|0)|0}function Is(e){e=e|0;return(e?31-(z(e^e-1)|0)|0:32)|0}function Rs(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0;l=e;c=t;u=c;a=n;h=r;f=h;if(!u){s=(i|0)!=0;if(!f){if(s){o[i>>2]=(l>>>0)%(a>>>0);o[i+4>>2]=0}h=0;i=(l>>>0)/(a>>>0)>>>0;return(I=h,i)|0}else{if(!s){h=0;i=0;return(I=h,i)|0}o[i>>2]=e|0;o[i+4>>2]=t&0;h=0;i=0;return(I=h,i)|0}}s=(f|0)==0;do{if(a){if(!s){s=(z(f|0)|0)-(z(u|0)|0)|0;if(s>>>0<=31){d=s+1|0;f=31-s|0;t=s-31>>31;a=d;e=l>>>(d>>>0)&t|u<>>(d>>>0)&t;s=0;f=l<>2]=e|0;o[i+4>>2]=c|t&0;h=0;i=0;return(I=h,i)|0}s=a-1|0;if(s&a|0){f=(z(a|0)|0)+33-(z(u|0)|0)|0;g=64-f|0;d=32-f|0;c=d>>31;p=f-32|0;t=p>>31;a=f;e=d-1>>31&u>>>(p>>>0)|(u<>>(f>>>0))&t;t=t&u>>>(f>>>0);s=l<>>(p>>>0))&c|l<>31;break}if(i|0){o[i>>2]=s&l;o[i+4>>2]=0}if((a|0)==1){p=c|t&0;g=e|0|0;return(I=p,g)|0}else{g=Is(a|0)|0;p=u>>>(g>>>0)|0;g=u<<32-g|l>>>(g>>>0)|0;return(I=p,g)|0}}else{if(s){if(i|0){o[i>>2]=(u>>>0)%(a>>>0);o[i+4>>2]=0}p=0;g=(u>>>0)/(a>>>0)>>>0;return(I=p,g)|0}if(!l){if(i|0){o[i>>2]=0;o[i+4>>2]=(u>>>0)%(f>>>0)}p=0;g=(u>>>0)/(f>>>0)>>>0;return(I=p,g)|0}s=f-1|0;if(!(s&f)){if(i|0){o[i>>2]=e|0;o[i+4>>2]=s&u|t&0}p=0;g=u>>>((Is(f|0)|0)>>>0);return(I=p,g)|0}s=(z(f|0)|0)-(z(u|0)|0)|0;if(s>>>0<=30){t=s+1|0;f=31-s|0;a=t;e=u<>>(t>>>0);t=u>>>(t>>>0);s=0;f=l<>2]=e|0;o[i+4>>2]=c|t&0;p=0;g=0;return(I=p,g)|0}}while(0);if(!a){u=f;c=0;f=0}else{d=n|0|0;l=h|r&0;u=Ss(d|0,l|0,-1,-1)|0;n=I;c=f;f=0;do{r=c;c=s>>>31|c<<1;s=f|s<<1;r=e<<1|r>>>31|0;h=e>>>31|t<<1|0;ks(u|0,n|0,r|0,h|0)|0;g=I;p=g>>31|((g|0)<0?-1:0)<<1;f=p&1;e=ks(r|0,h|0,p&d|0,(((g|0)<0?-1:0)>>31|((g|0)<0?-1:0)<<1)&l|0)|0;t=I;a=a-1|0}while((a|0)!=0);u=c;c=0}a=0;if(i|0){o[i>>2]=e;o[i+4>>2]=t}p=(s|0)>>>31|(u|a)<<1|(a<<1|s>>>31)&0|c;g=(s<<1|0>>>31)&-2|f;return(I=p,g)|0}function Ts(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return Rs(e,t,n,r,0)|0}function Os(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){I=t>>n;return e>>>n|(t&(1<>n-32|0}function Cs(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){I=t>>>n;return e>>>n|(t&(1<>>n-32|0}function xs(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){I=t<>>32-n;return e<>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function Ps(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0;if((n|0)>=8192)return te(e|0,t|0,n|0)|0;a=e|0;s=e+n|0;if((e&3)==(t&3)){while(e&3){if(!n)return a|0;r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0;n=n-1|0}n=s&-4|0;i=n-64|0;while((e|0)<=(i|0)){o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=o[t+8>>2];o[e+12>>2]=o[t+12>>2];o[e+16>>2]=o[t+16>>2];o[e+20>>2]=o[t+20>>2];o[e+24>>2]=o[t+24>>2];o[e+28>>2]=o[t+28>>2];o[e+32>>2]=o[t+32>>2];o[e+36>>2]=o[t+36>>2];o[e+40>>2]=o[t+40>>2];o[e+44>>2]=o[t+44>>2];o[e+48>>2]=o[t+48>>2];o[e+52>>2]=o[t+52>>2];o[e+56>>2]=o[t+56>>2];o[e+60>>2]=o[t+60>>2];e=e+64|0;t=t+64|0}while((e|0)<(n|0)){o[e>>2]=o[t>>2];e=e+4|0;t=t+4|0}}else{n=s-4|0;while((e|0)<(n|0)){r[e>>0]=r[t>>0]|0;r[e+1>>0]=r[t+1>>0]|0;r[e+2>>0]=r[t+2>>0]|0;r[e+3>>0]=r[t+3>>0]|0;e=e+4|0;t=t+4|0}}while((e|0)<(s|0)){r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0}return a|0}function Ds(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0;a=e+n|0;t=t&255;if((n|0)>=67){while(e&3){r[e>>0]=t;e=e+1|0}i=a&-4|0;s=i-64|0;f=t|t<<8|t<<16|t<<24;while((e|0)<=(s|0)){o[e>>2]=f;o[e+4>>2]=f;o[e+8>>2]=f;o[e+12>>2]=f;o[e+16>>2]=f;o[e+20>>2]=f;o[e+24>>2]=f;o[e+28>>2]=f;o[e+32>>2]=f;o[e+36>>2]=f;o[e+40>>2]=f;o[e+44>>2]=f;o[e+48>>2]=f;o[e+52>>2]=f;o[e+56>>2]=f;o[e+60>>2]=f;e=e+64|0}while((e|0)<(i|0)){o[e>>2]=f;e=e+4|0}}while((e|0)<(a|0)){r[e>>0]=t;e=e+1|0}return a-n|0}function Bs(e){e=e|0;var t=0,n=0;n=o[l>>2]|0;t=n+e|0;if((e|0)>0&(t|0)<(n|0)|(t|0)<0){Y()|0;ee(12);return-1}o[l>>2]=t;if((t|0)>(W()|0)?(Q()|0)==0:0){o[l>>2]=n;ee(12);return-1}return n|0}function Ns(e,t){e=e|0;t=t|0;return zs[e&1](t|0)|0}function js(e,t,n){e=e|0;t=t|0;n=n|0;return Hs[e&3](t|0,n|0)|0}function Us(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return Vs[e&1](t|0,n|0,r|0)|0}function Ls(e,t,n,r,i,o,s,a,f,c){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;s=s|0;a=a|0;f=f|0;c=c|0;return Qs[e&3](t|0,n|0,r|0,i|0,o|0,s|0,a|0,f|0,c|0)|0}function qs(e){e=e|0;H(0);return 0}function Fs(e,t){e=e|0;t=t|0;H(1);return 0}function Ks(e,t,n){e=e|0;t=t|0;n=n|0;H(2);return 0}function Gs(e,t,n,r,i,o,s,a,f){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;s=s|0;a=a|0;f=f|0;H(3);return 0}var zs=[qs,an];var Hs=[Fs,fn,un,Fs];var Vs=[Ks,bs];var Qs=[Gs,cn,ln,Gs];return{___muldi3:Es,___udivdi3:Ts,_bitshift64Ashr:Os,_bitshift64Lshr:Cs,_bitshift64Shl:xs,_free:Uo,_i64Add:Ss,_i64Subtract:ks,_llvm_bswap_i32:Ms,_malloc:jo,_memcpy:Ps,_memset:Ds,_olm_account:Nn,_olm_account_generate_one_time_keys:or,_olm_account_generate_one_time_keys_random_length:ir,_olm_account_identity_keys:Jn,_olm_account_identity_keys_length:Xn,_olm_account_last_error:Cn,_olm_account_mark_keys_as_published:nr,_olm_account_max_number_of_one_time_keys:rr,_olm_account_one_time_keys:tr,_olm_account_one_time_keys_length:er,_olm_account_sign:$n,_olm_account_signature_length:Zn,_olm_account_size:Pn,_olm_clear_account:Ln,_olm_clear_inbound_group_session:Mi,_olm_clear_outbound_group_session:fo,_olm_clear_pk_decryption:qt,_olm_clear_pk_encryption:Ct,_olm_clear_pk_signing:en,_olm_clear_sas:Xi,_olm_clear_session:qn,_olm_clear_utility:Fn,_olm_create_account:Yn,_olm_create_account_random_length:Wn,_olm_create_inbound_session:fr,_olm_create_inbound_session_from:cr,_olm_create_outbound_session:ar,_olm_create_outbound_session_random_length:sr,_olm_create_sas:Zi,_olm_create_sas_random_length:Ji,_olm_decrypt:wr,_olm_decrypt_max_plaintext_length:Ar,_olm_ed25519_verify:kr,_olm_encrypt:vr,_olm_encrypt_message_length:br,_olm_encrypt_message_type:_r,_olm_encrypt_random_length:yr,_olm_error:On,_olm_export_inbound_group_session:Vi,_olm_export_inbound_group_session_length:Hi,_olm_get_library_version:Tn,_olm_group_decrypt:qi,_olm_group_decrypt_max_plaintext_length:Li,_olm_group_encrypt:_o,_olm_group_encrypt_message_length:mo,_olm_import_inbound_group_session:Bi,_olm_inbound_group_session:xi,_olm_inbound_group_session_first_known_index:Gi,_olm_inbound_group_session_id:Ki,_olm_inbound_group_session_id_length:Fi,_olm_inbound_group_session_is_verified:zi,_olm_inbound_group_session_last_error:Pi,_olm_inbound_group_session_size:Ci,_olm_init_inbound_group_session:Di,_olm_init_outbound_group_session:go,_olm_init_outbound_group_session_random_length:po,_olm_matches_inbound_session:pr,_olm_matches_inbound_session_from:gr,_olm_outbound_group_session:ao,_olm_outbound_group_session_id:bo,_olm_outbound_group_session_id_length:yo,_olm_outbound_group_session_key:wo,_olm_outbound_group_session_key_length:Ao,_olm_outbound_group_session_last_error:co,_olm_outbound_group_session_message_index:vo,_olm_outbound_group_session_size:so,_olm_pickle_account:zn,_olm_pickle_account_length:Kn,_olm_pickle_inbound_group_session:ji,_olm_pickle_inbound_group_session_length:Ni,_olm_pickle_outbound_group_session:lo,_olm_pickle_outbound_group_session_length:uo,_olm_pickle_pk_decryption:Vt,_olm_pickle_pk_decryption_length:Ht,_olm_pickle_session:Hn,_olm_pickle_session_length:Gn,_olm_pk_ciphertext_length:Pt,_olm_pk_decrypt:Yt,_olm_pk_decryption:Lt,_olm_pk_decryption_last_error:jt,_olm_pk_decryption_size:Ut,_olm_pk_encrypt:Nt,_olm_pk_encrypt_random_length:Bt,_olm_pk_encryption:Ot,_olm_pk_encryption_last_error:Rt,_olm_pk_encryption_set_recipient_key:xt,_olm_pk_encryption_size:Tt,_olm_pk_generate_key:zt,_olm_pk_generate_key_random_length:Kt,_olm_pk_get_private_key:Xt,_olm_pk_key_from_private:Gt,_olm_pk_key_length:Mt,_olm_pk_mac_length:Dt,_olm_pk_max_plaintext_length:Wt,_olm_pk_private_key_length:Ft,_olm_pk_sign:sn,_olm_pk_signature_length:on,_olm_pk_signing:Zt,_olm_pk_signing_key_from_seed:rn,_olm_pk_signing_last_error:$t,_olm_pk_signing_public_key_length:nn,_olm_pk_signing_seed_length:tn,_olm_pk_signing_size:Jt,_olm_remove_one_time_keys:mr,_olm_sas:Yi,_olm_sas_calculate_mac:io,_olm_sas_calculate_mac_long_kdf:oo,_olm_sas_generate_bytes:no,_olm_sas_get_pubkey:eo,_olm_sas_last_error:Qi,_olm_sas_mac_length:ro,_olm_sas_pubkey_length:$i,_olm_sas_set_their_key:to,_olm_sas_size:Wi,_olm_session:jn,_olm_session_describe:hr,_olm_session_has_received_message:dr,_olm_session_id:lr,_olm_session_id_length:ur,_olm_session_last_error:xn,_olm_session_size:Dn,_olm_sha256:Sr,_olm_sha256_length:Er,_olm_unpickle_account:Vn,_olm_unpickle_inbound_group_session:Ui,_olm_unpickle_outbound_group_session:ho,_olm_unpickle_pk_decryption:Qt,_olm_unpickle_session:Qn,_olm_utility:Un,_olm_utility_last_error:Mn,_olm_utility_size:Bn,_sbrk:Bs,dynCall_ii:Ns,dynCall_iii:js,dynCall_iiii:Us,dynCall_iiiiiiiiii:Ls,establishStackSpace:se,getTempRet0:ce,runPostSets:As,setTempRet0:fe,setThrew:ae,stackAlloc:re,stackRestore:oe,stackSave:ie}}(l.f,l.g,D);l.___muldi3=Ee.___muldi3,l.___udivdi3=Ee.___udivdi3,l._bitshift64Ashr=Ee._bitshift64Ashr,l._bitshift64Lshr=Ee._bitshift64Lshr,l._bitshift64Shl=Ee._bitshift64Shl,l._free=Ee._free,l._i64Add=Ee._i64Add,l._i64Subtract=Ee._i64Subtract,l._llvm_bswap_i32=Ee._llvm_bswap_i32;var Se=l._malloc=Ee._malloc;l._memcpy=Ee._memcpy,l._memset=Ee._memset,l._olm_account=Ee._olm_account,l._olm_account_generate_one_time_keys=Ee._olm_account_generate_one_time_keys,l._olm_account_generate_one_time_keys_random_length=Ee._olm_account_generate_one_time_keys_random_length,l._olm_account_identity_keys=Ee._olm_account_identity_keys,l._olm_account_identity_keys_length=Ee._olm_account_identity_keys_length,l._olm_account_last_error=Ee._olm_account_last_error,l._olm_account_mark_keys_as_published=Ee._olm_account_mark_keys_as_published,l._olm_account_max_number_of_one_time_keys=Ee._olm_account_max_number_of_one_time_keys,l._olm_account_one_time_keys=Ee._olm_account_one_time_keys,l._olm_account_one_time_keys_length=Ee._olm_account_one_time_keys_length,l._olm_account_sign=Ee._olm_account_sign,l._olm_account_signature_length=Ee._olm_account_signature_length,l._olm_account_size=Ee._olm_account_size,l._olm_clear_account=Ee._olm_clear_account,l._olm_clear_inbound_group_session=Ee._olm_clear_inbound_group_session,l._olm_clear_outbound_group_session=Ee._olm_clear_outbound_group_session,l._olm_clear_pk_decryption=Ee._olm_clear_pk_decryption,l._olm_clear_pk_encryption=Ee._olm_clear_pk_encryption,l._olm_clear_pk_signing=Ee._olm_clear_pk_signing,l._olm_clear_sas=Ee._olm_clear_sas,l._olm_clear_session=Ee._olm_clear_session,l._olm_clear_utility=Ee._olm_clear_utility,l._olm_create_account=Ee._olm_create_account,l._olm_create_account_random_length=Ee._olm_create_account_random_length,l._olm_create_inbound_session=Ee._olm_create_inbound_session,l._olm_create_inbound_session_from=Ee._olm_create_inbound_session_from,l._olm_create_outbound_session=Ee._olm_create_outbound_session,l._olm_create_outbound_session_random_length=Ee._olm_create_outbound_session_random_length,l._olm_create_sas=Ee._olm_create_sas,l._olm_create_sas_random_length=Ee._olm_create_sas_random_length,l._olm_decrypt=Ee._olm_decrypt,l._olm_decrypt_max_plaintext_length=Ee._olm_decrypt_max_plaintext_length,l._olm_ed25519_verify=Ee._olm_ed25519_verify,l._olm_encrypt=Ee._olm_encrypt,l._olm_encrypt_message_length=Ee._olm_encrypt_message_length,l._olm_encrypt_message_type=Ee._olm_encrypt_message_type,l._olm_encrypt_random_length=Ee._olm_encrypt_random_length,l._olm_error=Ee._olm_error,l._olm_export_inbound_group_session=Ee._olm_export_inbound_group_session,l._olm_export_inbound_group_session_length=Ee._olm_export_inbound_group_session_length,l._olm_get_library_version=Ee._olm_get_library_version,l._olm_group_decrypt=Ee._olm_group_decrypt,l._olm_group_decrypt_max_plaintext_length=Ee._olm_group_decrypt_max_plaintext_length,l._olm_group_encrypt=Ee._olm_group_encrypt,l._olm_group_encrypt_message_length=Ee._olm_group_encrypt_message_length,l._olm_import_inbound_group_session=Ee._olm_import_inbound_group_session,l._olm_inbound_group_session=Ee._olm_inbound_group_session,l._olm_inbound_group_session_first_known_index=Ee._olm_inbound_group_session_first_known_index,l._olm_inbound_group_session_id=Ee._olm_inbound_group_session_id,l._olm_inbound_group_session_id_length=Ee._olm_inbound_group_session_id_length,l._olm_inbound_group_session_is_verified=Ee._olm_inbound_group_session_is_verified,l._olm_inbound_group_session_last_error=Ee._olm_inbound_group_session_last_error,l._olm_inbound_group_session_size=Ee._olm_inbound_group_session_size,l._olm_init_inbound_group_session=Ee._olm_init_inbound_group_session,l._olm_init_outbound_group_session=Ee._olm_init_outbound_group_session,l._olm_init_outbound_group_session_random_length=Ee._olm_init_outbound_group_session_random_length,l._olm_matches_inbound_session=Ee._olm_matches_inbound_session,l._olm_matches_inbound_session_from=Ee._olm_matches_inbound_session_from,l._olm_outbound_group_session=Ee._olm_outbound_group_session,l._olm_outbound_group_session_id=Ee._olm_outbound_group_session_id,l._olm_outbound_group_session_id_length=Ee._olm_outbound_group_session_id_length,l._olm_outbound_group_session_key=Ee._olm_outbound_group_session_key,l._olm_outbound_group_session_key_length=Ee._olm_outbound_group_session_key_length,l._olm_outbound_group_session_last_error=Ee._olm_outbound_group_session_last_error,l._olm_outbound_group_session_message_index=Ee._olm_outbound_group_session_message_index,l._olm_outbound_group_session_size=Ee._olm_outbound_group_session_size,l._olm_pickle_account=Ee._olm_pickle_account,l._olm_pickle_account_length=Ee._olm_pickle_account_length,l._olm_pickle_inbound_group_session=Ee._olm_pickle_inbound_group_session,l._olm_pickle_inbound_group_session_length=Ee._olm_pickle_inbound_group_session_length,l._olm_pickle_outbound_group_session=Ee._olm_pickle_outbound_group_session,l._olm_pickle_outbound_group_session_length=Ee._olm_pickle_outbound_group_session_length,l._olm_pickle_pk_decryption=Ee._olm_pickle_pk_decryption,l._olm_pickle_pk_decryption_length=Ee._olm_pickle_pk_decryption_length,l._olm_pickle_session=Ee._olm_pickle_session,l._olm_pickle_session_length=Ee._olm_pickle_session_length,l._olm_pk_ciphertext_length=Ee._olm_pk_ciphertext_length,l._olm_pk_decrypt=Ee._olm_pk_decrypt,l._olm_pk_decryption=Ee._olm_pk_decryption,l._olm_pk_decryption_last_error=Ee._olm_pk_decryption_last_error,l._olm_pk_decryption_size=Ee._olm_pk_decryption_size,l._olm_pk_encrypt=Ee._olm_pk_encrypt,l._olm_pk_encrypt_random_length=Ee._olm_pk_encrypt_random_length,l._olm_pk_encryption=Ee._olm_pk_encryption,l._olm_pk_encryption_last_error=Ee._olm_pk_encryption_last_error,l._olm_pk_encryption_set_recipient_key=Ee._olm_pk_encryption_set_recipient_key,l._olm_pk_encryption_size=Ee._olm_pk_encryption_size,l._olm_pk_generate_key=Ee._olm_pk_generate_key,l._olm_pk_generate_key_random_length=Ee._olm_pk_generate_key_random_length,l._olm_pk_get_private_key=Ee._olm_pk_get_private_key,l._olm_pk_key_from_private=Ee._olm_pk_key_from_private,l._olm_pk_key_length=Ee._olm_pk_key_length,l._olm_pk_mac_length=Ee._olm_pk_mac_length,l._olm_pk_max_plaintext_length=Ee._olm_pk_max_plaintext_length,l._olm_pk_private_key_length=Ee._olm_pk_private_key_length,l._olm_pk_sign=Ee._olm_pk_sign,l._olm_pk_signature_length=Ee._olm_pk_signature_length,l._olm_pk_signing=Ee._olm_pk_signing,l._olm_pk_signing_key_from_seed=Ee._olm_pk_signing_key_from_seed,l._olm_pk_signing_last_error=Ee._olm_pk_signing_last_error,l._olm_pk_signing_public_key_length=Ee._olm_pk_signing_public_key_length,l._olm_pk_signing_seed_length=Ee._olm_pk_signing_seed_length,l._olm_pk_signing_size=Ee._olm_pk_signing_size,l._olm_remove_one_time_keys=Ee._olm_remove_one_time_keys,l._olm_sas=Ee._olm_sas,l._olm_sas_calculate_mac=Ee._olm_sas_calculate_mac,l._olm_sas_calculate_mac_long_kdf=Ee._olm_sas_calculate_mac_long_kdf,l._olm_sas_generate_bytes=Ee._olm_sas_generate_bytes,l._olm_sas_get_pubkey=Ee._olm_sas_get_pubkey,l._olm_sas_last_error=Ee._olm_sas_last_error,l._olm_sas_mac_length=Ee._olm_sas_mac_length,l._olm_sas_pubkey_length=Ee._olm_sas_pubkey_length,l._olm_sas_set_their_key=Ee._olm_sas_set_their_key,l._olm_sas_size=Ee._olm_sas_size,l._olm_session=Ee._olm_session,l._olm_session_describe=Ee._olm_session_describe,l._olm_session_has_received_message=Ee._olm_session_has_received_message,l._olm_session_id=Ee._olm_session_id,l._olm_session_id_length=Ee._olm_session_id_length,l._olm_session_last_error=Ee._olm_session_last_error,l._olm_session_size=Ee._olm_session_size,l._olm_sha256=Ee._olm_sha256,l._olm_sha256_length=Ee._olm_sha256_length,l._olm_unpickle_account=Ee._olm_unpickle_account,l._olm_unpickle_inbound_group_session=Ee._olm_unpickle_inbound_group_session,l._olm_unpickle_outbound_group_session=Ee._olm_unpickle_outbound_group_session,l._olm_unpickle_pk_decryption=Ee._olm_unpickle_pk_decryption,l._olm_unpickle_session=Ee._olm_unpickle_session,l._olm_utility=Ee._olm_utility,l._olm_utility_last_error=Ee._olm_utility_last_error,l._olm_utility_size=Ee._olm_utility_size,l._sbrk=Ee._sbrk,l.establishStackSpace=Ee.establishStackSpace,l.getTempRet0=Ee.getTempRet0,l.runPostSets=Ee.runPostSets,l.setTempRet0=Ee.setTempRet0,l.setThrew=Ee.setThrew;var ke=l.stackAlloc=Ee.stackAlloc,Ie=l.stackRestore=Ee.stackRestore,Re=l.stackSave=Ee.stackSave;if(l.dynCall_ii=Ee.dynCall_ii,l.dynCall_iii=Ee.dynCall_iii,l.dynCall_iiii=Ee.dynCall_iiii,l.dynCall_iiiiiiiiii=Ee.dynCall_iiiiiiiiii,l.asm=Ee,l.ALLOC_STACK=1,ge){if(String.prototype.startsWith?!ge.startsWith(me):0!==ge.indexOf(me)){var Te=ge;ge=l.locateFile?l.locateFile(Te,E):E+Te}if(b||v){var Oe=l.readBinary(ge);N.set(Oe,8)}else{var Ce=function(){l.readAsync(ge,xe,(function(){throw"could not load memory initializer "+ge}))};de++,l.monitorRunDependencies&&l.monitorRunDependencies(de);var xe=function(e){e.byteLength&&(e=new Uint8Array(e)),N.set(e,8),l.memoryInitializerRequest&&delete l.memoryInitializerRequest.response,de--,l.monitorRunDependencies&&l.monitorRunDependencies(de),0==de&&(null!==he&&(clearInterval(he),he=null),pe&&(e=pe,pe=null,e()))},Me=we(ge);if(Me)xe(Me.buffer);else if(l.memoryInitializerRequest){var Pe=function(){var e=l.memoryInitializerRequest,t=e.response;if(200!==e.status&&0!==e.status){if(!(t=we(l.memoryInitializerRequestURL)))return console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+e.status+", retrying "+ge),void Ce();t=t.buffer}xe(t)};l.memoryInitializerRequest.response?setTimeout(Pe,0):l.memoryInitializerRequest.addEventListener("load",Pe)}else Ce()}}function De(){function e(){if(!l.calledRun&&(l.calledRun=!0,!O)){if(oe||(oe=!0,ee(ne)),ee(re),l.onRuntimeInitialized&&l.onRuntimeInitialized(),l.postRun)for("function"==typeof l.postRun&&(l.postRun=[l.postRun]);l.postRun.length;){var e=l.postRun.shift();ie.unshift(e)}ee(ie)}}if(!(0=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,i=!1,o=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==a.return||a.return()}finally{if(i)throw o}}return n}}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}},function(e,t,n){"use strict";var r=n(18);function i(){}function o(){}o.resetWarningCache=i,e.exports=function(){function e(e,t,n,i,o,s){if(s!==r){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:i};return n.PropTypes=n,n}},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}},function(e,t){e.exports=function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t3&&void 0!==arguments[3]?arguments[3]:{};return Object.assign({unified:e,emoji:e.split("-").map((function(e){return parseInt(e,16)})).map((function(e){return String.fromCodePoint(e)})).join(""),originalUnified:t[l.EMOJI_PROPERTY_UNIFIED],names:t[l.EMOJI_PROPERTY_NAME],activeSkinTone:n},r)},D=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Function.prototype;return function(t,n,r,i){var o=P(n,r,i);return M(o),e(t,o)}},B=n(8),N=(n(23),function(){var e=Object(a.useContext)(m),t=e.state,n=t.skinTonesSpread,r=t.activeSkinTone,i=e.dispatch,o=function(){i({type:b,spread:!n})},s=function(e){var t=e.target.value;i({type:v,skinTone:t})};return f.a.createElement("ul",{className:"skin-tones-list"},B.map((function(e,t){var i=e===r;return f.a.createElement("li",{key:e,className:"t".concat(e),style:{transform:"translateX(-".concat(n?20*t:0,"px) scale(").concat(i?"1.5":1,")"),zIndex:i?2:1}},f.a.createElement("input",{type:"radio",onChange:s,name:"skin-tone",value:e,id:"tone_".concat(e)}),f.a.createElement("label",{htmlFor:"tone_".concat(e),"data-name":"tones",onClick:o}))})))}),j=n(9),U=n.n(j),L=function(e){var t=Object(a.useContext)(m).state.emojiUrl;return e?"".concat(t,"/").concat(e,".png"):t},q=(n(25),function(e){var t=e.unified,n=e.dispatch,r=e.shouldLoad,i=void 0===r||r;return f.a.createElement("img",U()({className:"emoji-img",onError:function(){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Function.prototype;t({type:w,unified:e})}(t,n)}},i&&function(e){return{src:L(e)}}(t)))}),F=q;q.propTypes={unified:u.a.string,shouldLoad:u.a.bool,dispatch:u.a.func},n(27);var K=function(e){var t=e.closeVariations,n=Object(a.useContext)(m).state,r=n.variationMenu,i=n.activeSkinTone,o=n.onEmojiClick;return r?f.a.createElement("div",{className:"variations-wrapper"},f.a.createElement("ul",{className:"variation-list"},B.map((function(e){var n=r[l.EMOJI_PROPERTY_SKIN_VARIATIONS].find((function(t){return t.includes(e)}))||r[l.EMOJI_PROPERTY_UNIFIED];return f.a.createElement("li",{key:n},f.a.createElement("button",{onClick:function(e){return t(e),o(e,n,r,i)},onMouseDown:function(e){return e.stopPropagation()}},f.a.createElement(F,{unified:n})))})))):null},G=K;K.propTypes={closeVariations:u.a.func};var z=n(7),H=n.n(z),V=n(10),Q=(n(29),function(e){var t=e.emojiListRef,n=Object(a.useContext)(m),r=n.state,i=r.activeCategory,o=r.filter,s=n.dispatch,c=!1;return o&&o.length&&(c=!0),f.a.createElement("nav",{onClick:function(e){var n=e.target;if(!c){var r=n.getAttribute("data-name");if(t&&t.current&&r){s({type:_,activeCategory:r}),s({type:A,group:r});var i=t.current,o=i.querySelector("[".concat("data-name",'="').concat(r,'"]'));i.scrollTop=o.offsetTop}}},className:H()("emoji-categories",{inactive:c})},V.map((function(e){return f.a.createElement("button",{key:e,className:H()("icn-".concat(e.replace(" & ","_")),{active:i===e}),"data-name":e})})))}),W=Q;Q.propTypes={emojiListRef:u.a.shape({current:u.a.instanceOf(Element)})};var Y,X,J=n(11),Z=function(e){var t={groups:{},emojis:{}},n=function(n){e[n].reduce((function(e,t){var r=t[l.EMOJI_PROPERTY_UNIFIED];return t[l.EMOJI_PROPERTY_GROUP]=n,e.emojis[r]=t,e.groups[n]=e.groups[n]||[],e.groups[n].push(r),e}),t)};for(var r in e)n(r);return t}(J),$=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0,n=".content-wrapper",r=t&&t.current?t.current.closest("".concat(n)):document.querySelector(".emoji-picker-react ".concat(n));r.setAttribute("data-name",e)},ee=u.a.shape((X={},i()(X,l.EMOJI_PROPERTY_NAME,u.a.arrayOf(u.a.string)),i()(X,l.EMOJI_PROPERTY_UNIFIED,u.a.string),i()(X,l.EMOJI_PROPERTY_SKIN_VARIATIONS,u.a.arrayOf(u.a.string)),i()(X,l.EMOJI_PROPERTY_GROUP,u.a.string),X));function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}n(40);var ne=["#aeeff0","#ffe0e0","#d6f8b8","#c6cfff","#f1f0d1"],re=null,ie=function(){return clearTimeout(re)},oe=function(e){var t,n,r=e.emoji,o=e.shouldLoad,s=e.hidden,a=e.activeSkinTone,c=e.openVariationMenu,u=e.variationMenuOpen,d=e.handleMouseEnter,h=e.handleMouseLeave,p=e.onEmojiClick,g=e.index,m=e.dispatch,_=r[l.EMOJI_PROPERTY_SKIN_VARIATIONS],y=function(e){for(var t=1;t=0}))),t||(t=r[l.EMOJI_PROPERTY_UNIFIED]),f.a.createElement("li",{style:y,className:H()("emoji",{"has-skin-variation":_&&c})},f.a.createElement("button",{onMouseDown:function(){_&&c&&(re=setTimeout((function(){c(r)}),500))},onMouseEnter:d,onMouseLeave:h,onMouseUp:ie,onClick:function(e){u||p(e,t,r,a)}},f.a.createElement(F,{unified:t,shouldLoad:o,dispatch:m})))},se=oe;oe.propTypes={emoji:ee,shouldLoad:u.a.bool,hidden:u.a.bool,activeSkinTone:u.a.string,openVariationMenu:u.a.func,variationMenuOpen:u.a.bool,handleMouseEnter:u.a.func,handleMouseLeave:u.a.func,onEmojiClick:u.a.func,index:u.a.number,dispatch:u.a.func};var ae=function(e){var t=e.unsetEmojiName,n=e.emojiListRef,r=Object(a.useContext)(m),i=r.state,o=i.recentlyUsed,s=i.onEmojiClick,c=i.filterResult,u=i.failedToLoad,d=void 0===u?{}:u,h=r.dispatch;return!o.length||c?null:f.a.createElement("ul",{className:"emoji-group","data-name":l.GROUP_NAME_RECENTLY_USED},o.map((function(e,r){var i=e[l.EMOJI_PROPERTY_UNIFIED],o=Z.emojis[i];return d[i]||!o?null:f.a.createElement(se,U()({key:r,emoji:o},e[l.EMOJI_PROPERTY_SKIN_VARIATIONS]&&{activeSkinTone:e[l.EMOJI_PROPERTY_SKIN_VARIATIONS]},{index:r,handleMouseLeave:t,onEmojiClick:s,handleMouseEnter:function(){return $(o[l.EMOJI_PROPERTY_NAME][0],n)},dispatch:h,shouldLoad:!0}))})))},fe=ae;function ce(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}ae.propTypes={unsetEmojiName:u.a.func,emojiListRef:u.a.shape({current:u.a.instanceOf(Element)})},n(42);var ue=function(e){var t=e.emojiListRef,n=Object(a.useContext)(m).state.filterResult;(function(e){var t=Object(a.useContext)(m),n=t.state,r=n.filterResult,i=n.activeCategory,o=t.dispatch;Object(a.useEffect)((function(){void 0!==R.IntersectionObserver&&!Y&&e.current&&(Y=new IntersectionObserver((function(e){e.forEach((function(e){var t=e.target,n=t.getAttribute("data-name");if(0===e.intersectionRatio){if(n===i)o({type:_,activeCategory:null});else if(n===l.GROUP_NAME_RECENTLY_USED){var r=t.nextSibling;if(r){var s=r.getAttribute("data-name");o({type:_,activeCategory:s})}}}else i||(o({type:A,group:n}),o({type:_,activeCategory:n}))}))}),{root:e.current.parentElement})),Y.disconnect(),e&&e.current&&I()(e.current.querySelectorAll(".emoji-group")).forEach((function(e){Y.observe(e)}))}),[e.current,r])})(t),function(e,t){var n=Object(a.useRef)();Object(a.useEffect)((function(){t&&t.current&&(t.current.scrollTop=0),n.current=e}),[e]),n.current}(n,t);var r=function(){return $("",t)};return f.a.createElement("section",{className:"emoji-scroll-wrapper",ref:t},f.a.createElement(fe,{unsetEmojiName:r,emojiListRef:t}),V.map((function(e){var n=function(e,t){var n=t.unsetEmojiName,r=t.emojiListRef,i=Object(a.useContext)(m),o=i.state,s=o.activeSkinTone,c=o.filterResult,u=o.seenGroups,d=void 0===u?{}:u,h=o.onEmojiClick,p=o.variationMenu,g=o.failedToLoad,_=void 0===g?null:g,b=o.preload,v=i.dispatch,A=b||!(!d[e]&&!c&&"function"==typeof R.IntersectionObserver),w=!!p,E=function(e){return v({type:y,emoji:e})};return Object(a.useMemo)((function(){var t=c?Object.keys(c[e]||{}):Z.groups[e];return t.reduce((function(e,i,o){if(_&&_[i])return e;var a=Z.emojis[i],c=!t.length;return e.shown||c||(e.shown=!0),e.list.push(f.a.createElement(se,{emoji:a,dispatch:v,openVariationMenu:E,activeSkinTone:s,handleMouseLeave:n,variationMenuOpen:w,handleMouseEnter:function(){return $(a[l.EMOJI_PROPERTY_NAME][0],r)},hidden:c,shouldLoad:A,onEmojiClick:h,index:o,key:a[l.EMOJI_PROPERTY_UNIFIED]})),e}),{list:[],shown:!1})}),[s,c,e,A,w,_])}(e,{unsetEmojiName:r,emojiListRef:t}),o=n.list,s=function(e){for(var t=1;t3&&void 0!==arguments[3]?arguments[3]:100,i=n;return new Promise((function(n){var o=0;!function s(){for(var a=o;ao.value.length&&i.includes(o.value))t=[].concat(I()(n),[{value:i,terms:o.terms.filter((function(e){return e.includes(i)}))}]);else if(o&&i.length0;a--)if(i.includes(n[a-1].value)){s=a;break}n.length=s,t=I()(n)}else 0!==n.length&&i.includes(o.value)||(t=[{value:i,terms:he[i[0]].filter((function(e){return e.includes(i)}))}]);var f=t[t.length-1];f&&f.value?pe(f&&f.terms||[],(function(e,t){return de[t]?(de[t]||[]).reduce((function(e,t){var n=Z.emojis[t][l.EMOJI_PROPERTY_GROUP];return e[n]=e[n]||{},e[n][t]=!0,e}),e):e}),{}).then((function(e){r({type:E,filter:t,filterResult:e})})):r({type:E,filter:t,filterResult:null})}},_e=(n(44),function(){return f.a.createElement("input",{className:"emoji-search",onChange:me(),autoFocus:!0})});n(46),n.d(t,"SKIN_TONE_NEUTRAL",(function(){return"neutral"})),n.d(t,"SKIN_TONE_LIGHT",(function(){return"1f3fb"})),n.d(t,"SKIN_TONE_MEDIUM_LIGHT",(function(){return"1f3fc"})),n.d(t,"SKIN_TONE_MEDIUM",(function(){return"1f3fe"})),n.d(t,"SKIN_TONE_MEDIUM_DARK",(function(){return"1f3ff"})),n.d(t,"SKIN_TONE_DARK",(function(){return"1f3fd"}));var ye=function(e){var t=e.emojiUrl,n=void 0===t?"https://cdn.jsdelivr.net/gh/iamcal/emoji-data@master/img-apple-160":t,r=e.onEmojiClick,o=e.preload,c=void 0!==o&&o,u=e.skinTone,d=void 0===u?"neutral":u,h=Object(a.useRef)(null),p=Object(a.useReducer)(S,{activeSkinTone:d,emojiUrl:n,onEmojiClick:D(r),seenGroups:i()({},l.GROUP_NAME_PEOPLE,!0),recentlyUsed:x(),preload:c}),g=s()(p,2),_=g[0],v=g[1],A=function(e){var t=e.target;_.variationMenu&&v({type:y}),_.skinTonesSpread&&"tones"!==t.getAttribute("data-name")&&v({type:b})};return f.a.createElement(m.Provider,{value:{state:_,dispatch:v}},f.a.createElement("aside",{className:"emoji-picker-react",onScroll:A,onMouseDown:A},f.a.createElement(W,{emojiListRef:h}),f.a.createElement("div",{style:{position:"relative"}},f.a.createElement(_e,null),f.a.createElement(N,null)),f.a.createElement("div",{className:"content-wrapper","data-name":_.emojiName},f.a.createElement(G,{closeVariations:A}),f.a.createElement(le,{emojiListRef:h}))))};t.default=ye,ye.propTypes={emojiUrl:u.a.string,onEmojiClick:u.a.func,preload:u.a.bool,skinTone:u.a.string}}]))}).call(this,n(6))},function(e,t,n){"use strict";var r=n(51),i=n.n(r),o=n(52),s=n.n(o),a=n(53),f=n.n(a),c=n(54),u=n.n(c),l=n(5),d=n.n(l),h=n(55),p=n.n(h),g=n(1),m=n.n(g),_=n(0),y=n.n(_),b=(n(9),n(323)),v=n(154),A=n.n(v),w=n(25);function E(e,t,n){return e===t||(e.correspondingElement?e.correspondingElement.classList.contains(n):e.classList.contains(n))}var S,k,I=(void 0===S&&(S=0),function(){return++S}),R={},T={},O=["touchstart","touchmove"];function C(e,t){var n=null;return-1!==O.indexOf(t)&&k&&(n={passive:!e.props.preventDefault}),n}var x=function(e,t){var n,r,i=e.displayName||e.name||"Component";return r=n=function(n){var r,o;function s(e){var r;return(r=n.call(this,e)||this).__outsideClickHandler=function(e){if("function"!=typeof r.__clickOutsideHandlerProp){var t=r.getInstance();if("function"!=typeof t.props.handleClickOutside){if("function"!=typeof t.handleClickOutside)throw new Error("WrappedComponent: "+i+" lacks a handleClickOutside(event) function for processing outside click events.");t.handleClickOutside(e)}else t.props.handleClickOutside(e)}else r.__clickOutsideHandlerProp(e)},r.__getComponentNode=function(){var e=r.getInstance();return t&&"function"==typeof t.setClickOutsideRef?t.setClickOutsideRef()(e):"function"==typeof e.setClickOutsideRef?e.setClickOutsideRef():Object(w.findDOMNode)(e)},r.enableOnClickOutside=function(){if("undefined"!=typeof document&&!T[r._uid]){void 0===k&&(k=function(){if("undefined"!=typeof window&&"function"==typeof window.addEventListener){var e=!1,t=Object.defineProperty({},"passive",{get:function(){e=!0}}),n=function(){};return window.addEventListener("testPassiveEventSupport",n,t),window.removeEventListener("testPassiveEventSupport",n,t),e}}()),T[r._uid]=!0;var e=r.props.eventTypes;e.forEach||(e=[e]),R[r._uid]=function(e){var t;null!==r.componentNode&&(r.props.preventDefault&&e.preventDefault(),r.props.stopPropagation&&e.stopPropagation(),r.props.excludeScrollbar&&(t=e,document.documentElement.clientWidth<=t.clientX||document.documentElement.clientHeight<=t.clientY)||function(e,t,n){if(e===t)return!0;for(;e.parentNode;){if(E(e,t,n))return!0;e=e.parentNode}return e}(e.target,r.componentNode,r.props.outsideClickIgnoreClass)===document&&r.__outsideClickHandler(e))},e.forEach((function(e){document.addEventListener(e,R[r._uid],C(r,e))}))}},r.disableOnClickOutside=function(){delete T[r._uid];var e=R[r._uid];if(e&&"undefined"!=typeof document){var t=r.props.eventTypes;t.forEach||(t=[t]),t.forEach((function(t){return document.removeEventListener(t,e,C(r,t))})),delete R[r._uid]}},r.getRef=function(e){return r.instanceRef=e},r._uid=I(),r}o=n,(r=s).prototype=Object.create(o.prototype),r.prototype.constructor=r,r.__proto__=o;var a=s.prototype;return a.getInstance=function(){if(!e.prototype.isReactComponent)return this;var t=this.instanceRef;return t.getInstance?t.getInstance():t},a.componentDidMount=function(){if("undefined"!=typeof document&&document.createElement){var e=this.getInstance();if(t&&"function"==typeof t.handleClickOutside&&(this.__clickOutsideHandlerProp=t.handleClickOutside(e),"function"!=typeof this.__clickOutsideHandlerProp))throw new Error("WrappedComponent: "+i+" lacks a function for processing outside click events specified by the handleClickOutside config option.");this.componentNode=this.__getComponentNode(),this.props.disableOnClickOutside||this.enableOnClickOutside()}},a.componentDidUpdate=function(){this.componentNode=this.__getComponentNode()},a.componentWillUnmount=function(){this.disableOnClickOutside()},a.render=function(){var t=this.props,n=(t.excludeScrollbar,function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}(t,["excludeScrollbar"]));return e.prototype.isReactComponent?n.ref=this.getRef:n.wrappedRef=this.getRef,n.disableOnClickOutside=this.disableOnClickOutside,n.enableOnClickOutside=this.enableOnClickOutside,Object(_.createElement)(e,n)},s}(_.Component),n.displayName="OnClickOutside("+i+")",n.defaultProps={eventTypes:["mousedown","touchstart"],excludeScrollbar:t&&t.excludeScrollbar||!1,outsideClickIgnoreClass:"ignore-react-onclickoutside",preventDefault:!1,stopPropagation:!1},n.getClass=function(){return e.getClass?e.getClass():e},r},M=function(){return y.a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24",viewBox:"0 0 24 24",width:"24"},y.a.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),y.a.createElement("path",{id:"icon",fill:"#828282",d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm3.5-9c.83 0 1.5-.67 1.5-1.5S16.33 8 15.5 8 14 8.67 14 9.5s.67 1.5 1.5 1.5zm-7 0c.83 0 1.5-.67 1.5-1.5S9.33 8 8.5 8 7 8.67 7 9.5 7.67 11 8.5 11zm3.5 6.5c2.33 0 4.31-1.46 5.11-3.5H6.89c.8 2.04 2.78 3.5 5.11 3.5z"}))},P=function(e){function t(e){var n;return i()(this,t),n=f()(this,u()(t).call(this,e)),m()(d()(n),"handleClickOutside",(function(e){n.props.closeEmojiSelector()})),n}return p()(t,e),s()(t,[{key:"render",value:function(){var e=this.props,t=e.onEmojiClick,n=e.emojiSelectorOpen,r=e.toggleEmojiSelector;return(y.a.createElement("div",{className:"emoji-button-container"},y.a.createElement("div",{className:"pos-relative"},y.a.createElement(b.a,{in:n,timeout:250},(function(e){return y.a.createElement("div",{className:"emoji-picker emoji-picker-".concat(e),"aria-hidden":!n},y.a.createElement(A.a,{onEmojiClick:t,emojiUrl:"https://cdn.jsdelivr.net/gh/iamcal/emoji-data@master/img-apple-64"}))})),y.a.createElement("button",{type:"button",id:"emoji-button",onClick:r,"aria-label":"Emoji picker"},y.a.createElement(M,null)))))}}]),t}(y.a.Component);t.a=x(P)},function(e,t,n){"use strict";n.r(t);var r=n(147);t.default=r.a},,function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,i=!1,o=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==a.return||a.return()}finally{if(i)throw o}}return n}}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}},function(e,t){e.exports=function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t0?s-4:s;for(n=0;n>16&255,f[u++]=t>>8&255,f[u++]=255&t;2===a&&(t=i[e.charCodeAt(n)]<<2|i[e.charCodeAt(n+1)]>>4,f[u++]=255&t);1===a&&(t=i[e.charCodeAt(n)]<<10|i[e.charCodeAt(n+1)]<<4|i[e.charCodeAt(n+2)]>>2,f[u++]=t>>8&255,f[u++]=255&t);return f},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,o=[],s=0,a=n-i;sa?a:s+16383));1===i?(t=e[n-1],o.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],o.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return o.join("")};for(var r=[],i=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0,f=s.length;a0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function u(e,t,n){for(var i,o,s=[],a=t;a>18&63]+r[o>>12&63]+r[o>>6&63]+r[63&o]);return s.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(e,t){t.read=function(e,t,n,r,i){var o,s,a=8*i-r-1,f=(1<>1,u=-7,l=n?i-1:0,d=n?-1:1,h=e[t+l];for(l+=d,o=h&(1<<-u)-1,h>>=-u,u+=a;u>0;o=256*o+e[t+l],l+=d,u-=8);for(s=o&(1<<-u)-1,o>>=-u,u+=r;u>0;s=256*s+e[t+l],l+=d,u-=8);if(0===o)o=1-c;else{if(o===f)return s?NaN:1/0*(h?-1:1);s+=Math.pow(2,r),o-=c}return(h?-1:1)*s*Math.pow(2,o-r)},t.write=function(e,t,n,r,i,o){var s,a,f,c=8*o-i-1,u=(1<>1,d=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,h=r?0:o-1,p=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,s=u):(s=Math.floor(Math.log(t)/Math.LN2),t*(f=Math.pow(2,-s))<1&&(s--,f*=2),(t+=s+l>=1?d/f:d*Math.pow(2,1-l))*f>=2&&(s++,f/=2),s+l>=u?(a=0,s=u):s+l>=1?(a=(t*f-1)*Math.pow(2,i),s+=l):(a=t*Math.pow(2,l-1)*Math.pow(2,i),s=0));i>=8;e[n+h]=255&a,h+=p,a/=256,i-=8);for(s=s<0;e[n+h]=255&s,h+=p,s/=256,c-=8);e[n+h-p]|=128*g}},function(e,t,n){(function(t,r){var i,o,s=n(38),a=n(173),f=n(175),c=n(187),u=n(37);"function"==typeof Symbol&&"function"==typeof Symbol.for?(i=Symbol.for("graceful-fs.queue"),o=Symbol.for("graceful-fs.previous")):(i="___graceful-fs.queue",o="___graceful-fs.previous");var l=function(){};if(u.debuglog?l=u.debuglog("gfs4"):/\bgfs4\b/i.test(t.env.NODE_DEBUG||"")&&(l=function(){var e=u.format.apply(u,arguments);e="GFS4: "+e.split(/\n/).join("\nGFS4: "),console.error(e)}),!r[i]){var d=[];Object.defineProperty(r,i,{get:function(){return d}}),s.close=function(e){function t(t,n){return e.call(s,t,(function(e){e||g(),"function"==typeof n&&n.apply(this,arguments)}))}return Object.defineProperty(t,o,{value:e}),t}(s.close),s.closeSync=function(e){function t(t){e.apply(s,arguments),g()}return Object.defineProperty(t,o,{value:e}),t}(s.closeSync),/\bgfs4\b/i.test(t.env.NODE_DEBUG||"")&&t.on("exit",(function(){l(r[i]),n(188).equal(r[i].length,0)}))}function h(e){a(e),e.gracefulify=h,e.createReadStream=function(t,n){return new e.ReadStream(t,n)},e.createWriteStream=function(t,n){return new e.WriteStream(t,n)};var n=e.readFile;e.readFile=function(e,t,r){"function"==typeof t&&(r=t,t=null);return function e(t,r,i){return n(t,r,(function(n){!n||"EMFILE"!==n.code&&"ENFILE"!==n.code?("function"==typeof i&&i.apply(this,arguments),g()):p([e,[t,r,i]])}))}(e,t,r)};var r=e.writeFile;e.writeFile=function(e,t,n,i){"function"==typeof n&&(i=n,n=null);return function e(t,n,i,o){return r(t,n,i,(function(r){!r||"EMFILE"!==r.code&&"ENFILE"!==r.code?("function"==typeof o&&o.apply(this,arguments),g()):p([e,[t,n,i,o]])}))}(e,t,n,i)};var i=e.appendFile;i&&(e.appendFile=function(e,t,n,r){"function"==typeof n&&(r=n,n=null);return function e(t,n,r,o){return i(t,n,r,(function(i){!i||"EMFILE"!==i.code&&"ENFILE"!==i.code?("function"==typeof o&&o.apply(this,arguments),g()):p([e,[t,n,r,o]])}))}(e,t,n,r)});var o=e.readdir;function s(t){return o.apply(e,t)}if(e.readdir=function(e,t,n){var r=[e];"function"!=typeof t?r.push(t):n=t;return r.push((function(e,t){t&&t.sort&&t.sort();!e||"EMFILE"!==e.code&&"ENFILE"!==e.code?("function"==typeof n&&n.apply(this,arguments),g()):p([s,[r]])})),s(r)},"v0.8"===t.version.substr(0,4)){var c=f(e);_=c.ReadStream,y=c.WriteStream}var u=e.ReadStream;u&&(_.prototype=Object.create(u.prototype),_.prototype.open=function(){var e=this;v(e.path,e.flags,e.mode,(function(t,n){t?(e.autoClose&&e.destroy(),e.emit("error",t)):(e.fd=n,e.emit("open",n),e.read())}))});var l=e.WriteStream;l&&(y.prototype=Object.create(l.prototype),y.prototype.open=function(){var e=this;v(e.path,e.flags,e.mode,(function(t,n){t?(e.destroy(),e.emit("error",t)):(e.fd=n,e.emit("open",n))}))}),Object.defineProperty(e,"ReadStream",{get:function(){return _},set:function(e){_=e},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return y},set:function(e){y=e},enumerable:!0,configurable:!0});var d=_;Object.defineProperty(e,"FileReadStream",{get:function(){return d},set:function(e){d=e},enumerable:!0,configurable:!0});var m=y;function _(e,t){return this instanceof _?(u.apply(this,arguments),this):_.apply(Object.create(_.prototype),arguments)}function y(e,t){return this instanceof y?(l.apply(this,arguments),this):y.apply(Object.create(y.prototype),arguments)}Object.defineProperty(e,"FileWriteStream",{get:function(){return m},set:function(e){m=e},enumerable:!0,configurable:!0});var b=e.open;function v(e,t,n,r){return"function"==typeof n&&(r=n,n=null),function e(t,n,r,i){return b(t,n,r,(function(o,s){!o||"EMFILE"!==o.code&&"ENFILE"!==o.code?("function"==typeof i&&i.apply(this,arguments),g()):p([e,[t,n,r,i]])}))}(e,t,n,r)}return e.open=v,e}function p(e){l("ENQUEUE",e[0].name,e[1]),r[i].push(e)}function g(){var e=r[i].shift();e&&(l("RETRY",e[0].name,e[1]),e[0].apply(null,e[1]))}e.exports=h(c(s)),t.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!s.__patched&&(e.exports=h(s),s.__patched=!0)}).call(this,n(13),n(6))},function(e,t,n){(function(t){var r=n(174),i=t.cwd,o=null,s=t.env.GRACEFUL_FS_PLATFORM||t.platform;t.cwd=function(){return o||(o=i.call(t)),o};try{t.cwd()}catch(e){}var a=t.chdir;t.chdir=function(e){o=null,a.call(t,e)},e.exports=function(e){r.hasOwnProperty("O_SYMLINK")&&t.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&function(e){e.lchmod=function(t,n,i){e.open(t,r.O_WRONLY|r.O_SYMLINK,n,(function(t,r){t?i&&i(t):e.fchmod(r,n,(function(t){e.close(r,(function(e){i&&i(t||e)}))}))}))},e.lchmodSync=function(t,n){var i,o=e.openSync(t,r.O_WRONLY|r.O_SYMLINK,n),s=!0;try{i=e.fchmodSync(o,n),s=!1}finally{if(s)try{e.closeSync(o)}catch(e){}else e.closeSync(o)}return i}}(e);e.lutimes||function(e){r.hasOwnProperty("O_SYMLINK")?(e.lutimes=function(t,n,i,o){e.open(t,r.O_SYMLINK,(function(t,r){t?o&&o(t):e.futimes(r,n,i,(function(t){e.close(r,(function(e){o&&o(t||e)}))}))}))},e.lutimesSync=function(t,n,i){var o,s=e.openSync(t,r.O_SYMLINK),a=!0;try{o=e.futimesSync(s,n,i),a=!1}finally{if(a)try{e.closeSync(s)}catch(e){}else e.closeSync(s)}return o}):(e.lutimes=function(e,n,r,i){i&&t.nextTick(i)},e.lutimesSync=function(){})}(e);e.chown=a(e.chown),e.fchown=a(e.fchown),e.lchown=a(e.lchown),e.chmod=i(e.chmod),e.fchmod=i(e.fchmod),e.lchmod=i(e.lchmod),e.chownSync=f(e.chownSync),e.fchownSync=f(e.fchownSync),e.lchownSync=f(e.lchownSync),e.chmodSync=o(e.chmodSync),e.fchmodSync=o(e.fchmodSync),e.lchmodSync=o(e.lchmodSync),e.stat=c(e.stat),e.fstat=c(e.fstat),e.lstat=c(e.lstat),e.statSync=u(e.statSync),e.fstatSync=u(e.fstatSync),e.lstatSync=u(e.lstatSync),e.lchmod||(e.lchmod=function(e,n,r){r&&t.nextTick(r)},e.lchmodSync=function(){});e.lchown||(e.lchown=function(e,n,r,i){i&&t.nextTick(i)},e.lchownSync=function(){});"win32"===s&&(e.rename=(n=e.rename,function(t,r,i){var o=Date.now(),s=0;n(t,r,(function a(f){if(f&&("EACCES"===f.code||"EPERM"===f.code)&&Date.now()-o<6e4)return setTimeout((function(){e.stat(r,(function(e,o){e&&"ENOENT"===e.code?n(t,r,a):i(f)}))}),s),void(s<100&&(s+=10));i&&i(f)}))}));var n;function i(t){return t?function(n,r,i){return t.call(e,n,r,(function(e){l(e)&&(e=null),i&&i.apply(this,arguments)}))}:t}function o(t){return t?function(n,r){try{return t.call(e,n,r)}catch(e){if(!l(e))throw e}}:t}function a(t){return t?function(n,r,i,o){return t.call(e,n,r,i,(function(e){l(e)&&(e=null),o&&o.apply(this,arguments)}))}:t}function f(t){return t?function(n,r,i){try{return t.call(e,n,r,i)}catch(e){if(!l(e))throw e}}:t}function c(t){return t?function(n,r,i){function o(e,t){t&&(t.uid<0&&(t.uid+=4294967296),t.gid<0&&(t.gid+=4294967296)),i&&i.apply(this,arguments)}return"function"==typeof r&&(i=r,r=null),r?t.call(e,n,r,o):t.call(e,n,o)}:t}function u(t){return t?function(n,r){var i=r?t.call(e,n,r):t.call(e,n);return i.uid<0&&(i.uid+=4294967296),i.gid<0&&(i.gid+=4294967296),i}:t}function l(e){return!e||("ENOSYS"===e.code||!(t.getuid&&0===t.getuid()||"EINVAL"!==e.code&&"EPERM"!==e.code))}e.read=function(t){function n(n,r,i,o,s,a){var f;if(a&&"function"==typeof a){var c=0;f=function(u,l,d){if(u&&"EAGAIN"===u.code&&c<10)return c++,t.call(e,n,r,i,o,s,f);a.apply(this,arguments)}}return t.call(e,n,r,i,o,s,f)}return n.__proto__=t,n}(e.read),e.readSync=(d=e.readSync,function(t,n,r,i,o){for(var s=0;;)try{return d.call(e,t,n,r,i,o)}catch(e){if("EAGAIN"===e.code&&s<10){s++;continue}throw e}});var d}}).call(this,n(13))},function(e){e.exports=JSON.parse('{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":512,"O_EXCL":2048,"O_NOCTTY":131072,"O_TRUNC":1024,"O_APPEND":8,"O_DIRECTORY":1048576,"O_NOFOLLOW":256,"O_SYNC":128,"O_SYMLINK":2097152,"O_NONBLOCK":4,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"E2BIG":7,"EACCES":13,"EADDRINUSE":48,"EADDRNOTAVAIL":49,"EAFNOSUPPORT":47,"EAGAIN":35,"EALREADY":37,"EBADF":9,"EBADMSG":94,"EBUSY":16,"ECANCELED":89,"ECHILD":10,"ECONNABORTED":53,"ECONNREFUSED":61,"ECONNRESET":54,"EDEADLK":11,"EDESTADDRREQ":39,"EDOM":33,"EDQUOT":69,"EEXIST":17,"EFAULT":14,"EFBIG":27,"EHOSTUNREACH":65,"EIDRM":90,"EILSEQ":92,"EINPROGRESS":36,"EINTR":4,"EINVAL":22,"EIO":5,"EISCONN":56,"EISDIR":21,"ELOOP":62,"EMFILE":24,"EMLINK":31,"EMSGSIZE":40,"EMULTIHOP":95,"ENAMETOOLONG":63,"ENETDOWN":50,"ENETRESET":52,"ENETUNREACH":51,"ENFILE":23,"ENOBUFS":55,"ENODATA":96,"ENODEV":19,"ENOENT":2,"ENOEXEC":8,"ENOLCK":77,"ENOLINK":97,"ENOMEM":12,"ENOMSG":91,"ENOPROTOOPT":42,"ENOSPC":28,"ENOSR":98,"ENOSTR":99,"ENOSYS":78,"ENOTCONN":57,"ENOTDIR":20,"ENOTEMPTY":66,"ENOTSOCK":38,"ENOTSUP":45,"ENOTTY":25,"ENXIO":6,"EOPNOTSUPP":102,"EOVERFLOW":84,"EPERM":1,"EPIPE":32,"EPROTO":100,"EPROTONOSUPPORT":43,"EPROTOTYPE":41,"ERANGE":34,"EROFS":30,"ESPIPE":29,"ESRCH":3,"ESTALE":70,"ETIME":101,"ETIMEDOUT":60,"ETXTBSY":26,"EWOULDBLOCK":35,"EXDEV":18,"SIGHUP":1,"SIGINT":2,"SIGQUIT":3,"SIGILL":4,"SIGTRAP":5,"SIGABRT":6,"SIGIOT":6,"SIGBUS":10,"SIGFPE":8,"SIGKILL":9,"SIGUSR1":30,"SIGSEGV":11,"SIGUSR2":31,"SIGPIPE":13,"SIGALRM":14,"SIGTERM":15,"SIGCHLD":20,"SIGCONT":19,"SIGSTOP":17,"SIGTSTP":18,"SIGTTIN":21,"SIGTTOU":22,"SIGURG":16,"SIGXCPU":24,"SIGXFSZ":25,"SIGVTALRM":26,"SIGPROF":27,"SIGWINCH":28,"SIGIO":23,"SIGSYS":12,"SSL_OP_ALL":2147486719,"SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION":262144,"SSL_OP_CIPHER_SERVER_PREFERENCE":4194304,"SSL_OP_CISCO_ANYCONNECT":32768,"SSL_OP_COOKIE_EXCHANGE":8192,"SSL_OP_CRYPTOPRO_TLSEXT_BUG":2147483648,"SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS":2048,"SSL_OP_EPHEMERAL_RSA":0,"SSL_OP_LEGACY_SERVER_CONNECT":4,"SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER":32,"SSL_OP_MICROSOFT_SESS_ID_BUG":1,"SSL_OP_MSIE_SSLV2_RSA_PADDING":0,"SSL_OP_NETSCAPE_CA_DN_BUG":536870912,"SSL_OP_NETSCAPE_CHALLENGE_BUG":2,"SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG":1073741824,"SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG":8,"SSL_OP_NO_COMPRESSION":131072,"SSL_OP_NO_QUERY_MTU":4096,"SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION":65536,"SSL_OP_NO_SSLv2":16777216,"SSL_OP_NO_SSLv3":33554432,"SSL_OP_NO_TICKET":16384,"SSL_OP_NO_TLSv1":67108864,"SSL_OP_NO_TLSv1_1":268435456,"SSL_OP_NO_TLSv1_2":134217728,"SSL_OP_PKCS1_CHECK_1":0,"SSL_OP_PKCS1_CHECK_2":0,"SSL_OP_SINGLE_DH_USE":1048576,"SSL_OP_SINGLE_ECDH_USE":524288,"SSL_OP_SSLEAY_080_CLIENT_DH_BUG":128,"SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG":0,"SSL_OP_TLS_BLOCK_PADDING_BUG":512,"SSL_OP_TLS_D5_BUG":256,"SSL_OP_TLS_ROLLBACK_BUG":8388608,"ENGINE_METHOD_DSA":2,"ENGINE_METHOD_DH":4,"ENGINE_METHOD_RAND":8,"ENGINE_METHOD_ECDH":16,"ENGINE_METHOD_ECDSA":32,"ENGINE_METHOD_CIPHERS":64,"ENGINE_METHOD_DIGESTS":128,"ENGINE_METHOD_STORE":256,"ENGINE_METHOD_PKEY_METHS":512,"ENGINE_METHOD_PKEY_ASN1_METHS":1024,"ENGINE_METHOD_ALL":65535,"ENGINE_METHOD_NONE":0,"DH_CHECK_P_NOT_SAFE_PRIME":2,"DH_CHECK_P_NOT_PRIME":1,"DH_UNABLE_TO_CHECK_GENERATOR":4,"DH_NOT_SUITABLE_GENERATOR":8,"NPN_ENABLED":1,"RSA_PKCS1_PADDING":1,"RSA_SSLV23_PADDING":2,"RSA_NO_PADDING":3,"RSA_PKCS1_OAEP_PADDING":4,"RSA_X931_PADDING":5,"RSA_PKCS1_PSS_PADDING":6,"POINT_CONVERSION_COMPRESSED":2,"POINT_CONVERSION_UNCOMPRESSED":4,"POINT_CONVERSION_HYBRID":6,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1,"UV_UDP_REUSEADDR":4}')},function(e,t,n){(function(t){var r=n(39).Stream;e.exports=function(e){return{ReadStream:function n(i,o){if(!(this instanceof n))return new n(i,o);r.call(this);var s=this;this.path=i,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=65536,o=o||{};for(var a=Object.keys(o),f=0,c=a.length;fthis.end)throw new Error("start must be <= end");this.pos=this.start}if(null!==this.fd)return void t.nextTick((function(){s._read()}));e.open(this.path,this.flags,this.mode,(function(e,t){if(e)return s.emit("error",e),void(s.readable=!1);s.fd=t,s.emit("open",t),s._read()}))},WriteStream:function t(n,i){if(!(this instanceof t))return new t(n,i);r.call(this),this.path=n,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,i=i||{};for(var o=Object.keys(i),s=0,a=o.length;s= zero");this.pos=this.start}this.busy=!1,this._queue=[],null===this.fd&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}}}).call(this,n(13))},function(e,t){},function(e,t,n){"use strict";var r=n(57).Buffer,i=n(178);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,n=""+t.data;t=t.next;)n+=e+t.data;return n},e.prototype.concat=function(e){if(0===this.length)return r.alloc(0);if(1===this.length)return this.head.data;for(var t,n,i,o=r.allocUnsafe(e>>>0),s=this.head,a=0;s;)t=s.data,n=o,i=a,t.copy(n,i),a+=s.data.length,s=s.next;return o},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},function(e,t){},function(e,t,n){(function(e){var r=void 0!==e&&e||"undefined"!=typeof self&&self||window,i=Function.prototype.apply;function o(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new o(i.call(setTimeout,r,arguments),clearTimeout)},t.setInterval=function(){return new o(i.call(setInterval,r,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},o.prototype.unref=o.prototype.ref=function(){},o.prototype.close=function(){this._clearFn.call(r,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))},n(180),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(this,n(6))},function(e,t,n){(function(e,t){!function(e,n){"use strict";if(!e.setImmediate){var r,i,o,s,a,f=1,c={},u=!1,l=e.document,d=Object.getPrototypeOf&&Object.getPrototypeOf(e);d=d&&d.setTimeout?d:e,"[object process]"==={}.toString.call(e.process)?r=function(e){t.nextTick((function(){p(e)}))}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?e.MessageChannel?((o=new MessageChannel).port1.onmessage=function(e){p(e.data)},r=function(e){o.port2.postMessage(e)}):l&&"onreadystatechange"in l.createElement("script")?(i=l.documentElement,r=function(e){var t=l.createElement("script");t.onreadystatechange=function(){p(e),t.onreadystatechange=null,i.removeChild(t),t=null},i.appendChild(t)}):r=function(e){setTimeout(p,0,e)}:(s="setImmediate$"+Math.random()+"$",a=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(s)&&p(+t.data.slice(s.length))},e.addEventListener?e.addEventListener("message",a,!1):e.attachEvent("onmessage",a),r=function(t){e.postMessage(s+t,"*")}),d.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n=s())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s().toString(16)+" bytes");return 0|e}function p(e,t){if(f.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 n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return q(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return F(e).length;default:if(r)return q(e).length;t=(""+t).toLowerCase(),r=!0}}function g(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return O(this,t,n);case"utf8":case"utf-8":return I(this,t,n);case"ascii":return R(this,t,n);case"latin1":case"binary":return T(this,t,n);case"base64":return k(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return C(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function m(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function _(e,t,n,r,i){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof t&&(t=f.from(t,r)),f.isBuffer(t))return 0===t.length?-1:y(e,t,n,r,i);if("number"==typeof t)return t&=255,f.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):y(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function y(e,t,n,r,i){var o,s=1,a=e.length,f=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;s=2,a/=2,f/=2,n/=2}function c(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(i){var u=-1;for(o=n;oa&&(n=a-f),o=n;o>=0;o--){for(var l=!0,d=0;di&&(r=i):r=i;var o=t.length;if(o%2!=0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var s=0;s>8,i=n%256,o.push(i),o.push(r);return o}(t,e.length-n),e,n,r)}function k(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function I(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i239?4:c>223?3:c>191?2:1;if(i+l<=n)switch(l){case 1:c<128&&(u=c);break;case 2:128==(192&(o=e[i+1]))&&(f=(31&c)<<6|63&o)>127&&(u=f);break;case 3:o=e[i+1],s=e[i+2],128==(192&o)&&128==(192&s)&&(f=(15&c)<<12|(63&o)<<6|63&s)>2047&&(f<55296||f>57343)&&(u=f);break;case 4:o=e[i+1],s=e[i+2],a=e[i+3],128==(192&o)&&128==(192&s)&&128==(192&a)&&(f=(15&c)<<18|(63&o)<<12|(63&s)<<6|63&a)>65535&&f<1114112&&(u=f)}null===u?(u=65533,l=1):u>65535&&(u-=65536,r.push(u>>>10&1023|55296),u=56320|1023&u),r.push(u),i+=l}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var n="",r=0;for(;r0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},f.prototype.compare=function(e,t,n,r,i){if(!f.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(this===e)return 0;for(var o=(i>>>=0)-(r>>>=0),s=(n>>>=0)-(t>>>=0),a=Math.min(o,s),c=this.slice(r,i),u=e.slice(t,n),l=0;li)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return b(this,e,t,n);case"utf8":case"utf-8":return v(this,e,t,n);case"ascii":return A(this,e,t,n);case"latin1":case"binary":return w(this,e,t,n);case"base64":return E(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,e,t,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},f.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function R(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;ir)&&(n=r);for(var i="",o=t;on)throw new RangeError("Trying to access beyond buffer length")}function M(e,t,n,r,i,o){if(!f.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 P(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,o=Math.min(e.length-n,2);i>>8*(r?i:1-i)}function D(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,o=Math.min(e.length-n,4);i>>8*(r?i:3-i)&255}function B(e,t,n,r,i,o){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function N(e,t,n,r,o){return o||B(e,0,n,4),i.write(e,t,n,r,23,4),n+4}function j(e,t,n,r,o){return o||B(e,0,n,8),i.write(e,t,n,r,52,8),n+8}f.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(i*=256);)r+=this[e+--t]*i;return r},f.prototype.readUInt8=function(e,t){return t||x(e,1,this.length),this[e]},f.prototype.readUInt16LE=function(e,t){return t||x(e,2,this.length),this[e]|this[e+1]<<8},f.prototype.readUInt16BE=function(e,t){return t||x(e,2,this.length),this[e]<<8|this[e+1]},f.prototype.readUInt32LE=function(e,t){return t||x(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},f.prototype.readUInt32BE=function(e,t){return t||x(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},f.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||x(e,t,this.length);for(var r=this[e],i=1,o=0;++o=(i*=128)&&(r-=Math.pow(2,8*t)),r},f.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||x(e,t,this.length);for(var r=t,i=1,o=this[e+--r];r>0&&(i*=256);)o+=this[e+--r]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*t)),o},f.prototype.readInt8=function(e,t){return t||x(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},f.prototype.readInt16LE=function(e,t){t||x(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},f.prototype.readInt16BE=function(e,t){t||x(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},f.prototype.readInt32LE=function(e,t){return t||x(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},f.prototype.readInt32BE=function(e,t){return t||x(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},f.prototype.readFloatLE=function(e,t){return t||x(e,4,this.length),i.read(this,e,!0,23,4)},f.prototype.readFloatBE=function(e,t){return t||x(e,4,this.length),i.read(this,e,!1,23,4)},f.prototype.readDoubleLE=function(e,t){return t||x(e,8,this.length),i.read(this,e,!0,52,8)},f.prototype.readDoubleBE=function(e,t){return t||x(e,8,this.length),i.read(this,e,!1,52,8)},f.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||M(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,o=0;for(this[t]=255&e;++o=0&&(o*=256);)this[t+i]=e/o&255;return t+n},f.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,1,255,0),f.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},f.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,2,65535,0),f.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):P(this,e,t,!0),t+2},f.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,2,65535,0),f.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):P(this,e,t,!1),t+2},f.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,4,4294967295,0),f.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):D(this,e,t,!0),t+4},f.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,4,4294967295,0),f.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):D(this,e,t,!1),t+4},f.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);M(this,e,t,n,i-1,-i)}var o=0,s=1,a=0;for(this[t]=255&e;++o>0)-a&255;return t+n},f.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);M(this,e,t,n,i-1,-i)}var o=n-1,s=1,a=0;for(this[t+o]=255&e;--o>=0&&(s*=256);)e<0&&0===a&&0!==this[t+o+1]&&(a=1),this[t+o]=(e/s>>0)-a&255;return t+n},f.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,1,127,-128),f.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},f.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,2,32767,-32768),f.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):P(this,e,t,!0),t+2},f.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,2,32767,-32768),f.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):P(this,e,t,!1),t+2},f.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,4,2147483647,-2147483648),f.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):D(this,e,t,!0),t+4},f.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||M(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),f.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):D(this,e,t,!1),t+4},f.prototype.writeFloatLE=function(e,t,n){return N(this,e,t,!0,n)},f.prototype.writeFloatBE=function(e,t,n){return N(this,e,t,!1,n)},f.prototype.writeDoubleLE=function(e,t,n){return j(this,e,t,!0,n)},f.prototype.writeDoubleBE=function(e,t,n){return j(this,e,t,!1,n)},f.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--i)e[i+t]=this[i+n];else if(o<1e3||!f.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(o=t;o55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(s+1===r){(t-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;o.push(n)}else if(n<2048){if((t-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function F(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(U,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function K(e,t,n,r){for(var i=0;i=t.length||i>=e.length);++i)t[i+n]=e[i];return i}}).call(this,n(6))},function(e,t,n){(function(e){!function(e,t){"use strict";function r(e,t){if(!e)throw new Error(t||"Assertion failed")}function i(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}function o(e,t,n){if(o.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(n=t,t=10),this._init(e||0,t||10,n||"be"))}var s;"object"==typeof e?e.exports=o:t.BN=o,o.BN=o,o.wordSize=26;try{s=n(218).Buffer}catch(e){}function a(e,t,n){for(var r=0,i=Math.min(e.length,n),o=t;o=49&&s<=54?s-49+10:s>=17&&s<=22?s-17+10:15&s}return r}function f(e,t,n,r){for(var i=0,o=Math.min(e.length,n),s=t;s=49?a-49+10:a>=17?a-17+10:a}return i}o.isBN=function(e){return e instanceof o||null!==e&&"object"==typeof e&&e.constructor.wordSize===o.wordSize&&Array.isArray(e.words)},o.max=function(e,t){return e.cmp(t)>0?e:t},o.min=function(e,t){return e.cmp(t)<0?e:t},o.prototype._init=function(e,t,n){if("number"==typeof e)return this._initNumber(e,t,n);if("object"==typeof e)return this._initArray(e,t,n);"hex"===t&&(t=16),r(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"===n&&this._initArray(this.toArray(),t,n)},o.prototype._initNumber=function(e,t,n){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):(r(e<9007199254740992),this.words=[67108863&e,e/67108864&67108863,1],this.length=3),"le"===n&&this._initArray(this.toArray(),t,n)},o.prototype._initArray=function(e,t,n){if(r("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)s=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[o]|=s<>>26-a&67108863,(a+=24)>=26&&(a-=26,o++);else if("le"===n)for(i=0,o=0;i>>26-a&67108863,(a+=24)>=26&&(a-=26,o++);return this.strip()},o.prototype._parseHex=function(e,t){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var n=0;n=t;n-=6)i=a(e,n,n+6),this.words[r]|=i<>>26-o&4194303,(o+=24)>=26&&(o-=26,r++);n+6!==t&&(i=a(e,t,n+6),this.words[r]|=i<>>26-o&4194303),this.strip()},o.prototype._parseBase=function(e,t,n){this.words=[0],this.length=1;for(var r=0,i=1;i<=67108863;i*=t)r++;r--,i=i/t|0;for(var o=e.length-n,s=o%r,a=Math.min(o,o-s)+n,c=0,u=n;u1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?""};var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],u=[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],l=[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 d(e,t,n){n.negative=t.negative^e.negative;var r=e.length+t.length|0;n.length=r,r=r-1|0;var i=0|e.words[0],o=0|t.words[0],s=i*o,a=67108863&s,f=s/67108864|0;n.words[0]=a;for(var c=1;c>>26,l=67108863&f,d=Math.min(c,t.length-1),h=Math.max(0,c-e.length+1);h<=d;h++){var p=c-h|0;u+=(s=(i=0|e.words[p])*(o=0|t.words[h])+l)/67108864|0,l=67108863&s}n.words[c]=0|l,f=0|u}return 0!==f?n.words[c]=0|f:n.length--,n.strip()}o.prototype.toString=function(e,t){var n;if(t=0|t||1,16===(e=e||10)||"hex"===e){n="";for(var i=0,o=0,s=0;s>>24-i&16777215)||s!==this.length-1?c[6-f.length]+f+n:f+n,(i+=2)>=26&&(i-=26,s--)}for(0!==o&&(n=o.toString(16)+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(e===(0|e)&&e>=2&&e<=36){var d=u[e],h=l[e];n="";var p=this.clone();for(p.negative=0;!p.isZero();){var g=p.modn(h).toString(e);n=(p=p.idivn(h)).isZero()?g+n:c[d-g.length]+g+n}for(this.isZero()&&(n="0"+n);n.length%t!=0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(e,t){return r(void 0!==s),this.toArrayLike(s,e,t)},o.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},o.prototype.toArrayLike=function(e,t,n){var i=this.byteLength(),o=n||Math.max(1,i);r(i<=o,"byte array longer than desired length"),r(o>0,"Requested array length <= 0"),this.strip();var s,a,f="le"===t,c=new e(o),u=this.clone();if(f){for(a=0;!u.isZero();a++)s=u.andln(255),u.iushrn(8),c[a]=s;for(;a=4096&&(n+=13,t>>>=13),t>=64&&(n+=7,t>>>=7),t>=8&&(n+=4,t>>>=4),t>=2&&(n+=2,t>>>=2),n+t},o.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,n=0;return 0==(8191&t)&&(n+=13,t>>>=13),0==(127&t)&&(n+=7,t>>>=7),0==(15&t)&&(n+=4,t>>>=4),0==(3&t)&&(n+=2,t>>>=2),0==(1&t)&&n++,n},o.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},o.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},o.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var n=0;ne.length?this.clone().iand(e):e.clone().iand(this)},o.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},o.prototype.iuxor=function(e){var t,n;this.length>e.length?(t=this,n=e):(t=e,n=this);for(var r=0;re.length?this.clone().ixor(e):e.clone().ixor(this)},o.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},o.prototype.inotn=function(e){r("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),n=e%26;this._expand(t),n>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-n),this.strip()},o.prototype.notn=function(e){return this.clone().inotn(e)},o.prototype.setn=function(e,t){r("number"==typeof e&&e>=0);var n=e/26|0,i=e%26;return this._expand(n+1),this.words[n]=t?this.words[n]|1<e.length?(n=this,r=e):(n=e,r=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=n.length,0!==i)this.words[this.length]=i,this.length++;else if(n!==this)for(;oe.length?this.clone().iadd(e):e.clone().iadd(this)},o.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var n,r,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(n=this,r=e):(n=e,r=this);for(var o=0,s=0;s>26,this.words[s]=67108863&t;for(;0!==o&&s>26,this.words[s]=67108863&t;if(0===o&&s>>13,h=0|s[1],p=8191&h,g=h>>>13,m=0|s[2],_=8191&m,y=m>>>13,b=0|s[3],v=8191&b,A=b>>>13,w=0|s[4],E=8191&w,S=w>>>13,k=0|s[5],I=8191&k,R=k>>>13,T=0|s[6],O=8191&T,C=T>>>13,x=0|s[7],M=8191&x,P=x>>>13,D=0|s[8],B=8191&D,N=D>>>13,j=0|s[9],U=8191&j,L=j>>>13,q=0|a[0],F=8191&q,K=q>>>13,G=0|a[1],z=8191&G,H=G>>>13,V=0|a[2],Q=8191&V,W=V>>>13,Y=0|a[3],X=8191&Y,J=Y>>>13,Z=0|a[4],$=8191&Z,ee=Z>>>13,te=0|a[5],ne=8191&te,re=te>>>13,ie=0|a[6],oe=8191&ie,se=ie>>>13,ae=0|a[7],fe=8191&ae,ce=ae>>>13,ue=0|a[8],le=8191&ue,de=ue>>>13,he=0|a[9],pe=8191&he,ge=he>>>13;n.negative=e.negative^t.negative,n.length=19;var me=(c+(r=Math.imul(l,F))|0)+((8191&(i=(i=Math.imul(l,K))+Math.imul(d,F)|0))<<13)|0;c=((o=Math.imul(d,K))+(i>>>13)|0)+(me>>>26)|0,me&=67108863,r=Math.imul(p,F),i=(i=Math.imul(p,K))+Math.imul(g,F)|0,o=Math.imul(g,K);var _e=(c+(r=r+Math.imul(l,z)|0)|0)+((8191&(i=(i=i+Math.imul(l,H)|0)+Math.imul(d,z)|0))<<13)|0;c=((o=o+Math.imul(d,H)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,r=Math.imul(_,F),i=(i=Math.imul(_,K))+Math.imul(y,F)|0,o=Math.imul(y,K),r=r+Math.imul(p,z)|0,i=(i=i+Math.imul(p,H)|0)+Math.imul(g,z)|0,o=o+Math.imul(g,H)|0;var ye=(c+(r=r+Math.imul(l,Q)|0)|0)+((8191&(i=(i=i+Math.imul(l,W)|0)+Math.imul(d,Q)|0))<<13)|0;c=((o=o+Math.imul(d,W)|0)+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,r=Math.imul(v,F),i=(i=Math.imul(v,K))+Math.imul(A,F)|0,o=Math.imul(A,K),r=r+Math.imul(_,z)|0,i=(i=i+Math.imul(_,H)|0)+Math.imul(y,z)|0,o=o+Math.imul(y,H)|0,r=r+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,W)|0)+Math.imul(g,Q)|0,o=o+Math.imul(g,W)|0;var be=(c+(r=r+Math.imul(l,X)|0)|0)+((8191&(i=(i=i+Math.imul(l,J)|0)+Math.imul(d,X)|0))<<13)|0;c=((o=o+Math.imul(d,J)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,r=Math.imul(E,F),i=(i=Math.imul(E,K))+Math.imul(S,F)|0,o=Math.imul(S,K),r=r+Math.imul(v,z)|0,i=(i=i+Math.imul(v,H)|0)+Math.imul(A,z)|0,o=o+Math.imul(A,H)|0,r=r+Math.imul(_,Q)|0,i=(i=i+Math.imul(_,W)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,W)|0,r=r+Math.imul(p,X)|0,i=(i=i+Math.imul(p,J)|0)+Math.imul(g,X)|0,o=o+Math.imul(g,J)|0;var ve=(c+(r=r+Math.imul(l,$)|0)|0)+((8191&(i=(i=i+Math.imul(l,ee)|0)+Math.imul(d,$)|0))<<13)|0;c=((o=o+Math.imul(d,ee)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,r=Math.imul(I,F),i=(i=Math.imul(I,K))+Math.imul(R,F)|0,o=Math.imul(R,K),r=r+Math.imul(E,z)|0,i=(i=i+Math.imul(E,H)|0)+Math.imul(S,z)|0,o=o+Math.imul(S,H)|0,r=r+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,W)|0)+Math.imul(A,Q)|0,o=o+Math.imul(A,W)|0,r=r+Math.imul(_,X)|0,i=(i=i+Math.imul(_,J)|0)+Math.imul(y,X)|0,o=o+Math.imul(y,J)|0,r=r+Math.imul(p,$)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(g,$)|0,o=o+Math.imul(g,ee)|0;var Ae=(c+(r=r+Math.imul(l,ne)|0)|0)+((8191&(i=(i=i+Math.imul(l,re)|0)+Math.imul(d,ne)|0))<<13)|0;c=((o=o+Math.imul(d,re)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,r=Math.imul(O,F),i=(i=Math.imul(O,K))+Math.imul(C,F)|0,o=Math.imul(C,K),r=r+Math.imul(I,z)|0,i=(i=i+Math.imul(I,H)|0)+Math.imul(R,z)|0,o=o+Math.imul(R,H)|0,r=r+Math.imul(E,Q)|0,i=(i=i+Math.imul(E,W)|0)+Math.imul(S,Q)|0,o=o+Math.imul(S,W)|0,r=r+Math.imul(v,X)|0,i=(i=i+Math.imul(v,J)|0)+Math.imul(A,X)|0,o=o+Math.imul(A,J)|0,r=r+Math.imul(_,$)|0,i=(i=i+Math.imul(_,ee)|0)+Math.imul(y,$)|0,o=o+Math.imul(y,ee)|0,r=r+Math.imul(p,ne)|0,i=(i=i+Math.imul(p,re)|0)+Math.imul(g,ne)|0,o=o+Math.imul(g,re)|0;var we=(c+(r=r+Math.imul(l,oe)|0)|0)+((8191&(i=(i=i+Math.imul(l,se)|0)+Math.imul(d,oe)|0))<<13)|0;c=((o=o+Math.imul(d,se)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,r=Math.imul(M,F),i=(i=Math.imul(M,K))+Math.imul(P,F)|0,o=Math.imul(P,K),r=r+Math.imul(O,z)|0,i=(i=i+Math.imul(O,H)|0)+Math.imul(C,z)|0,o=o+Math.imul(C,H)|0,r=r+Math.imul(I,Q)|0,i=(i=i+Math.imul(I,W)|0)+Math.imul(R,Q)|0,o=o+Math.imul(R,W)|0,r=r+Math.imul(E,X)|0,i=(i=i+Math.imul(E,J)|0)+Math.imul(S,X)|0,o=o+Math.imul(S,J)|0,r=r+Math.imul(v,$)|0,i=(i=i+Math.imul(v,ee)|0)+Math.imul(A,$)|0,o=o+Math.imul(A,ee)|0,r=r+Math.imul(_,ne)|0,i=(i=i+Math.imul(_,re)|0)+Math.imul(y,ne)|0,o=o+Math.imul(y,re)|0,r=r+Math.imul(p,oe)|0,i=(i=i+Math.imul(p,se)|0)+Math.imul(g,oe)|0,o=o+Math.imul(g,se)|0;var Ee=(c+(r=r+Math.imul(l,fe)|0)|0)+((8191&(i=(i=i+Math.imul(l,ce)|0)+Math.imul(d,fe)|0))<<13)|0;c=((o=o+Math.imul(d,ce)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,r=Math.imul(B,F),i=(i=Math.imul(B,K))+Math.imul(N,F)|0,o=Math.imul(N,K),r=r+Math.imul(M,z)|0,i=(i=i+Math.imul(M,H)|0)+Math.imul(P,z)|0,o=o+Math.imul(P,H)|0,r=r+Math.imul(O,Q)|0,i=(i=i+Math.imul(O,W)|0)+Math.imul(C,Q)|0,o=o+Math.imul(C,W)|0,r=r+Math.imul(I,X)|0,i=(i=i+Math.imul(I,J)|0)+Math.imul(R,X)|0,o=o+Math.imul(R,J)|0,r=r+Math.imul(E,$)|0,i=(i=i+Math.imul(E,ee)|0)+Math.imul(S,$)|0,o=o+Math.imul(S,ee)|0,r=r+Math.imul(v,ne)|0,i=(i=i+Math.imul(v,re)|0)+Math.imul(A,ne)|0,o=o+Math.imul(A,re)|0,r=r+Math.imul(_,oe)|0,i=(i=i+Math.imul(_,se)|0)+Math.imul(y,oe)|0,o=o+Math.imul(y,se)|0,r=r+Math.imul(p,fe)|0,i=(i=i+Math.imul(p,ce)|0)+Math.imul(g,fe)|0,o=o+Math.imul(g,ce)|0;var Se=(c+(r=r+Math.imul(l,le)|0)|0)+((8191&(i=(i=i+Math.imul(l,de)|0)+Math.imul(d,le)|0))<<13)|0;c=((o=o+Math.imul(d,de)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,r=Math.imul(U,F),i=(i=Math.imul(U,K))+Math.imul(L,F)|0,o=Math.imul(L,K),r=r+Math.imul(B,z)|0,i=(i=i+Math.imul(B,H)|0)+Math.imul(N,z)|0,o=o+Math.imul(N,H)|0,r=r+Math.imul(M,Q)|0,i=(i=i+Math.imul(M,W)|0)+Math.imul(P,Q)|0,o=o+Math.imul(P,W)|0,r=r+Math.imul(O,X)|0,i=(i=i+Math.imul(O,J)|0)+Math.imul(C,X)|0,o=o+Math.imul(C,J)|0,r=r+Math.imul(I,$)|0,i=(i=i+Math.imul(I,ee)|0)+Math.imul(R,$)|0,o=o+Math.imul(R,ee)|0,r=r+Math.imul(E,ne)|0,i=(i=i+Math.imul(E,re)|0)+Math.imul(S,ne)|0,o=o+Math.imul(S,re)|0,r=r+Math.imul(v,oe)|0,i=(i=i+Math.imul(v,se)|0)+Math.imul(A,oe)|0,o=o+Math.imul(A,se)|0,r=r+Math.imul(_,fe)|0,i=(i=i+Math.imul(_,ce)|0)+Math.imul(y,fe)|0,o=o+Math.imul(y,ce)|0,r=r+Math.imul(p,le)|0,i=(i=i+Math.imul(p,de)|0)+Math.imul(g,le)|0,o=o+Math.imul(g,de)|0;var ke=(c+(r=r+Math.imul(l,pe)|0)|0)+((8191&(i=(i=i+Math.imul(l,ge)|0)+Math.imul(d,pe)|0))<<13)|0;c=((o=o+Math.imul(d,ge)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,r=Math.imul(U,z),i=(i=Math.imul(U,H))+Math.imul(L,z)|0,o=Math.imul(L,H),r=r+Math.imul(B,Q)|0,i=(i=i+Math.imul(B,W)|0)+Math.imul(N,Q)|0,o=o+Math.imul(N,W)|0,r=r+Math.imul(M,X)|0,i=(i=i+Math.imul(M,J)|0)+Math.imul(P,X)|0,o=o+Math.imul(P,J)|0,r=r+Math.imul(O,$)|0,i=(i=i+Math.imul(O,ee)|0)+Math.imul(C,$)|0,o=o+Math.imul(C,ee)|0,r=r+Math.imul(I,ne)|0,i=(i=i+Math.imul(I,re)|0)+Math.imul(R,ne)|0,o=o+Math.imul(R,re)|0,r=r+Math.imul(E,oe)|0,i=(i=i+Math.imul(E,se)|0)+Math.imul(S,oe)|0,o=o+Math.imul(S,se)|0,r=r+Math.imul(v,fe)|0,i=(i=i+Math.imul(v,ce)|0)+Math.imul(A,fe)|0,o=o+Math.imul(A,ce)|0,r=r+Math.imul(_,le)|0,i=(i=i+Math.imul(_,de)|0)+Math.imul(y,le)|0,o=o+Math.imul(y,de)|0;var Ie=(c+(r=r+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,ge)|0)+Math.imul(g,pe)|0))<<13)|0;c=((o=o+Math.imul(g,ge)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863,r=Math.imul(U,Q),i=(i=Math.imul(U,W))+Math.imul(L,Q)|0,o=Math.imul(L,W),r=r+Math.imul(B,X)|0,i=(i=i+Math.imul(B,J)|0)+Math.imul(N,X)|0,o=o+Math.imul(N,J)|0,r=r+Math.imul(M,$)|0,i=(i=i+Math.imul(M,ee)|0)+Math.imul(P,$)|0,o=o+Math.imul(P,ee)|0,r=r+Math.imul(O,ne)|0,i=(i=i+Math.imul(O,re)|0)+Math.imul(C,ne)|0,o=o+Math.imul(C,re)|0,r=r+Math.imul(I,oe)|0,i=(i=i+Math.imul(I,se)|0)+Math.imul(R,oe)|0,o=o+Math.imul(R,se)|0,r=r+Math.imul(E,fe)|0,i=(i=i+Math.imul(E,ce)|0)+Math.imul(S,fe)|0,o=o+Math.imul(S,ce)|0,r=r+Math.imul(v,le)|0,i=(i=i+Math.imul(v,de)|0)+Math.imul(A,le)|0,o=o+Math.imul(A,de)|0;var Re=(c+(r=r+Math.imul(_,pe)|0)|0)+((8191&(i=(i=i+Math.imul(_,ge)|0)+Math.imul(y,pe)|0))<<13)|0;c=((o=o+Math.imul(y,ge)|0)+(i>>>13)|0)+(Re>>>26)|0,Re&=67108863,r=Math.imul(U,X),i=(i=Math.imul(U,J))+Math.imul(L,X)|0,o=Math.imul(L,J),r=r+Math.imul(B,$)|0,i=(i=i+Math.imul(B,ee)|0)+Math.imul(N,$)|0,o=o+Math.imul(N,ee)|0,r=r+Math.imul(M,ne)|0,i=(i=i+Math.imul(M,re)|0)+Math.imul(P,ne)|0,o=o+Math.imul(P,re)|0,r=r+Math.imul(O,oe)|0,i=(i=i+Math.imul(O,se)|0)+Math.imul(C,oe)|0,o=o+Math.imul(C,se)|0,r=r+Math.imul(I,fe)|0,i=(i=i+Math.imul(I,ce)|0)+Math.imul(R,fe)|0,o=o+Math.imul(R,ce)|0,r=r+Math.imul(E,le)|0,i=(i=i+Math.imul(E,de)|0)+Math.imul(S,le)|0,o=o+Math.imul(S,de)|0;var Te=(c+(r=r+Math.imul(v,pe)|0)|0)+((8191&(i=(i=i+Math.imul(v,ge)|0)+Math.imul(A,pe)|0))<<13)|0;c=((o=o+Math.imul(A,ge)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,r=Math.imul(U,$),i=(i=Math.imul(U,ee))+Math.imul(L,$)|0,o=Math.imul(L,ee),r=r+Math.imul(B,ne)|0,i=(i=i+Math.imul(B,re)|0)+Math.imul(N,ne)|0,o=o+Math.imul(N,re)|0,r=r+Math.imul(M,oe)|0,i=(i=i+Math.imul(M,se)|0)+Math.imul(P,oe)|0,o=o+Math.imul(P,se)|0,r=r+Math.imul(O,fe)|0,i=(i=i+Math.imul(O,ce)|0)+Math.imul(C,fe)|0,o=o+Math.imul(C,ce)|0,r=r+Math.imul(I,le)|0,i=(i=i+Math.imul(I,de)|0)+Math.imul(R,le)|0,o=o+Math.imul(R,de)|0;var Oe=(c+(r=r+Math.imul(E,pe)|0)|0)+((8191&(i=(i=i+Math.imul(E,ge)|0)+Math.imul(S,pe)|0))<<13)|0;c=((o=o+Math.imul(S,ge)|0)+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,r=Math.imul(U,ne),i=(i=Math.imul(U,re))+Math.imul(L,ne)|0,o=Math.imul(L,re),r=r+Math.imul(B,oe)|0,i=(i=i+Math.imul(B,se)|0)+Math.imul(N,oe)|0,o=o+Math.imul(N,se)|0,r=r+Math.imul(M,fe)|0,i=(i=i+Math.imul(M,ce)|0)+Math.imul(P,fe)|0,o=o+Math.imul(P,ce)|0,r=r+Math.imul(O,le)|0,i=(i=i+Math.imul(O,de)|0)+Math.imul(C,le)|0,o=o+Math.imul(C,de)|0;var Ce=(c+(r=r+Math.imul(I,pe)|0)|0)+((8191&(i=(i=i+Math.imul(I,ge)|0)+Math.imul(R,pe)|0))<<13)|0;c=((o=o+Math.imul(R,ge)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,r=Math.imul(U,oe),i=(i=Math.imul(U,se))+Math.imul(L,oe)|0,o=Math.imul(L,se),r=r+Math.imul(B,fe)|0,i=(i=i+Math.imul(B,ce)|0)+Math.imul(N,fe)|0,o=o+Math.imul(N,ce)|0,r=r+Math.imul(M,le)|0,i=(i=i+Math.imul(M,de)|0)+Math.imul(P,le)|0,o=o+Math.imul(P,de)|0;var xe=(c+(r=r+Math.imul(O,pe)|0)|0)+((8191&(i=(i=i+Math.imul(O,ge)|0)+Math.imul(C,pe)|0))<<13)|0;c=((o=o+Math.imul(C,ge)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,r=Math.imul(U,fe),i=(i=Math.imul(U,ce))+Math.imul(L,fe)|0,o=Math.imul(L,ce),r=r+Math.imul(B,le)|0,i=(i=i+Math.imul(B,de)|0)+Math.imul(N,le)|0,o=o+Math.imul(N,de)|0;var Me=(c+(r=r+Math.imul(M,pe)|0)|0)+((8191&(i=(i=i+Math.imul(M,ge)|0)+Math.imul(P,pe)|0))<<13)|0;c=((o=o+Math.imul(P,ge)|0)+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,r=Math.imul(U,le),i=(i=Math.imul(U,de))+Math.imul(L,le)|0,o=Math.imul(L,de);var Pe=(c+(r=r+Math.imul(B,pe)|0)|0)+((8191&(i=(i=i+Math.imul(B,ge)|0)+Math.imul(N,pe)|0))<<13)|0;c=((o=o+Math.imul(N,ge)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863;var De=(c+(r=Math.imul(U,pe))|0)+((8191&(i=(i=Math.imul(U,ge))+Math.imul(L,pe)|0))<<13)|0;return c=((o=Math.imul(L,ge))+(i>>>13)|0)+(De>>>26)|0,De&=67108863,f[0]=me,f[1]=_e,f[2]=ye,f[3]=be,f[4]=ve,f[5]=Ae,f[6]=we,f[7]=Ee,f[8]=Se,f[9]=ke,f[10]=Ie,f[11]=Re,f[12]=Te,f[13]=Oe,f[14]=Ce,f[15]=xe,f[16]=Me,f[17]=Pe,f[18]=De,0!==c&&(f[19]=c,n.length++),n};function p(e,t,n){return(new g).mulp(e,t,n)}function g(e,t){this.x=e,this.y=t}Math.imul||(h=d),o.prototype.mulTo=function(e,t){var n=this.length+e.length;return 10===this.length&&10===e.length?h(this,e,t):n<63?d(this,e,t):n<1024?function(e,t,n){n.negative=t.negative^e.negative,n.length=e.length+t.length;for(var r=0,i=0,o=0;o>>26)|0)>>>26,s&=67108863}n.words[o]=a,r=s,s=i}return 0!==r?n.words[o]=r:n.length--,n.strip()}(this,e,t):p(this,e,t)},g.prototype.makeRBT=function(e){for(var t=new Array(e),n=o.prototype._countBits(e)-1,r=0;r>=1;return r},g.prototype.permute=function(e,t,n,r,i,o){for(var s=0;s>>=1)i++;return 1<>>=13,n[2*s+1]=8191&o,o>>>=13;for(s=2*t;s>=26,t+=i/67108864|0,t+=o>>>26,this.words[n]=67108863&o}return 0!==t&&(this.words[n]=t,this.length++),this},o.prototype.muln=function(e){return this.clone().imuln(e)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),n=0;n>>i}return t}(e);if(0===t.length)return new o(1);for(var n=this,r=0;r=0);var t,n=e%26,i=(e-n)/26,o=67108863>>>26-n<<26-n;if(0!==n){var s=0;for(t=0;t>>26-n}s&&(this.words[t]=s,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 o=e%26,s=Math.min((e-o)/26,this.length),a=67108863^67108863>>>o<s)for(this.length-=s,c=0;c=0&&(0!==u||c>=i);c--){var l=0|this.words[c];this.words[c]=u<<26-o|l>>>o,u=l&a}return f&&0!==u&&(f.words[f.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(e,t,n){return r(0===this.negative),this.iushrn(e,t,n)},o.prototype.shln=function(e){return this.clone().ishln(e)},o.prototype.ushln=function(e){return this.clone().iushln(e)},o.prototype.shrn=function(e){return this.clone().ishrn(e)},o.prototype.ushrn=function(e){return this.clone().iushrn(e)},o.prototype.testn=function(e){r("number"==typeof e&&e>=0);var t=e%26,n=(e-t)/26,i=1<=0);var t=e%26,n=(e-t)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==t&&n++,this.length=Math.min(n,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},o.prototype.isubn=function(e){if(r("number"==typeof e),r(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)-(f/67108864|0),this.words[i+n]=67108863&o}for(;i>26,this.words[i+n]=67108863&o;if(0===a)return this.strip();for(r(-1===a),a=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},o.prototype._wordDiv=function(e,t){var n=(this.length,e.length),r=this.clone(),i=e,s=0|i.words[i.length-1];0!==(n=26-this._countBits(s))&&(i=i.ushln(n),r.iushln(n),s=0|i.words[i.length-1]);var a,f=r.length-i.length;if("mod"!==t){(a=new o(null)).length=f+1,a.words=new Array(a.length);for(var c=0;c=0;l--){var d=67108864*(0|r.words[i.length+l])+(0|r.words[i.length+l-1]);for(d=Math.min(d/s|0,67108863),r._ishlnsubmul(i,d,l);0!==r.negative;)d--,r.negative=0,r._ishlnsubmul(i,1,l),r.isZero()||(r.negative^=1);a&&(a.words[l]=d)}return a&&a.strip(),r.strip(),"div"!==t&&0!==n&&r.iushrn(n),{div:a||null,mod:r}},o.prototype.divmod=function(e,t,n){return r(!e.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===e.negative?(a=this.neg().divmod(e,t),"mod"!==t&&(i=a.div.neg()),"div"!==t&&(s=a.mod.neg(),n&&0!==s.negative&&s.iadd(e)),{div:i,mod:s}):0===this.negative&&0!==e.negative?(a=this.divmod(e.neg(),t),"mod"!==t&&(i=a.div.neg()),{div:i,mod:a.mod}):0!=(this.negative&e.negative)?(a=this.neg().divmod(e.neg(),t),"div"!==t&&(s=a.mod.neg(),n&&0!==s.negative&&s.isub(e)),{div:a.div,mod:s}):e.length>this.length||this.cmp(e)<0?{div:new o(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new o(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new o(this.modn(e.words[0]))}:this._wordDiv(e,t);var i,s,a},o.prototype.div=function(e){return this.divmod(e,"div",!1).div},o.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},o.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},o.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var n=0!==t.div.negative?t.mod.isub(e):t.mod,r=e.ushrn(1),i=e.andln(1),o=n.cmp(r);return o<0||1===i&&0===o?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},o.prototype.modn=function(e){r(e<=67108863);for(var t=(1<<26)%e,n=0,i=this.length-1;i>=0;i--)n=(t*n+(0|this.words[i]))%e;return n},o.prototype.idivn=function(e){r(e<=67108863);for(var t=0,n=this.length-1;n>=0;n--){var i=(0|this.words[n])+67108864*t;this.words[n]=i/e|0,t=i%e}return this.strip()},o.prototype.divn=function(e){return this.clone().idivn(e)},o.prototype.egcd=function(e){r(0===e.negative),r(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new o(1),s=new o(0),a=new o(0),f=new o(1),c=0;t.isEven()&&n.isEven();)t.iushrn(1),n.iushrn(1),++c;for(var u=n.clone(),l=t.clone();!t.isZero();){for(var d=0,h=1;0==(t.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(t.iushrn(d);d-- >0;)(i.isOdd()||s.isOdd())&&(i.iadd(u),s.isub(l)),i.iushrn(1),s.iushrn(1);for(var p=0,g=1;0==(n.words[0]&g)&&p<26;++p,g<<=1);if(p>0)for(n.iushrn(p);p-- >0;)(a.isOdd()||f.isOdd())&&(a.iadd(u),f.isub(l)),a.iushrn(1),f.iushrn(1);t.cmp(n)>=0?(t.isub(n),i.isub(a),s.isub(f)):(n.isub(t),a.isub(i),f.isub(s))}return{a:a,b:f,gcd:n.iushln(c)}},o.prototype._invmp=function(e){r(0===e.negative),r(!e.isZero());var t=this,n=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,s=new o(1),a=new o(0),f=n.clone();t.cmpn(1)>0&&n.cmpn(1)>0;){for(var c=0,u=1;0==(t.words[0]&u)&&c<26;++c,u<<=1);if(c>0)for(t.iushrn(c);c-- >0;)s.isOdd()&&s.iadd(f),s.iushrn(1);for(var l=0,d=1;0==(n.words[0]&d)&&l<26;++l,d<<=1);if(l>0)for(n.iushrn(l);l-- >0;)a.isOdd()&&a.iadd(f),a.iushrn(1);t.cmp(n)>=0?(t.isub(n),s.isub(a)):(n.isub(t),a.isub(s))}return(i=0===t.cmpn(1)?s:a).cmpn(0)<0&&i.iadd(e),i},o.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),n=e.clone();t.negative=0,n.negative=0;for(var r=0;t.isEven()&&n.isEven();r++)t.iushrn(1),n.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;n.isEven();)n.iushrn(1);var i=t.cmp(n);if(i<0){var o=t;t=n,n=o}else if(0===i||0===n.cmpn(1))break;t.isub(n)}return n.iushln(r)},o.prototype.invm=function(e){return this.egcd(e).a.umod(e)},o.prototype.isEven=function(){return 0==(1&this.words[0])},o.prototype.isOdd=function(){return 1==(1&this.words[0])},o.prototype.andln=function(e){return this.words[0]&e},o.prototype.bincn=function(e){r("number"==typeof e);var t=e%26,n=(e-t)/26,i=1<>>26,a&=67108863,this.words[s]=a}return 0!==o&&(this.words[s]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(e){var t,n=e<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)t=1;else{n&&(e=-e),r(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;n--){var r=0|this.words[n],i=0|e.words[n];if(r!==i){ri&&(t=1);break}}return t},o.prototype.gtn=function(e){return 1===this.cmpn(e)},o.prototype.gt=function(e){return 1===this.cmp(e)},o.prototype.gten=function(e){return this.cmpn(e)>=0},o.prototype.gte=function(e){return this.cmp(e)>=0},o.prototype.ltn=function(e){return-1===this.cmpn(e)},o.prototype.lt=function(e){return-1===this.cmp(e)},o.prototype.lten=function(e){return this.cmpn(e)<=0},o.prototype.lte=function(e){return this.cmp(e)<=0},o.prototype.eqn=function(e){return 0===this.cmpn(e)},o.prototype.eq=function(e){return 0===this.cmp(e)},o.red=function(e){return new w(e)},o.prototype.toRed=function(e){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},o.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(e){return this.red=e,this},o.prototype.forceRed=function(e){return r(!this.red,"Already a number in reduction context"),this._forceRed(e)},o.prototype.redAdd=function(e){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},o.prototype.redIAdd=function(e){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},o.prototype.redSub=function(e){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},o.prototype.redISub=function(e){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},o.prototype.redShl=function(e){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},o.prototype.redMul=function(e){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},o.prototype.redIMul=function(e){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},o.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(e){return r(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var m={k256:null,p224:null,p192:null,p25519:null};function _(e,t){this.name=e,this.p=new o(t,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function y(){_.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function b(){_.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function v(){_.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function A(){_.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function w(e){if("string"==typeof e){var t=o._prime(e);this.m=t.p,this.prime=t}else r(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function E(e){w.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}_.prototype._tmp=function(){var e=new o(null);return e.words=new Array(Math.ceil(this.n/13)),e},_.prototype.ireduce=function(e){var t,n=e;do{this.split(n,this.tmp),t=(n=(n=this.imulK(n)).iadd(this.tmp)).bitLength()}while(t>this.n);var r=t0?n.isub(this.p):n.strip(),n},_.prototype.split=function(e,t){e.iushrn(this.n,0,t)},_.prototype.imulK=function(e){return e.imul(this.k)},i(y,_),y.prototype.split=function(e,t){for(var n=Math.min(e.length,9),r=0;r>>22,i=o}i>>>=22,e.words[r-10]=i,0===i&&e.length>10?e.length-=10:e.length-=9},y.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,n=0;n>>=26,e.words[n]=i,t=r}return 0!==t&&(e.words[e.length++]=t),e},o._prime=function(e){if(m[e])return m[e];var t;if("k256"===e)t=new y;else if("p224"===e)t=new b;else if("p192"===e)t=new v;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new A}return m[e]=t,t},w.prototype._verify1=function(e){r(0===e.negative,"red works only with positives"),r(e.red,"red works only with red numbers")},w.prototype._verify2=function(e,t){r(0==(e.negative|t.negative),"red works only with positives"),r(e.red&&e.red===t.red,"red works only with red numbers")},w.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},w.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},w.prototype.add=function(e,t){this._verify2(e,t);var n=e.add(t);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},w.prototype.iadd=function(e,t){this._verify2(e,t);var n=e.iadd(t);return n.cmp(this.m)>=0&&n.isub(this.m),n},w.prototype.sub=function(e,t){this._verify2(e,t);var n=e.sub(t);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},w.prototype.isub=function(e,t){this._verify2(e,t);var n=e.isub(t);return n.cmpn(0)<0&&n.iadd(this.m),n},w.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},w.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},w.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},w.prototype.isqr=function(e){return this.imul(e,e.clone())},w.prototype.sqr=function(e){return this.mul(e,e)},w.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(r(t%2==1),3===t){var n=this.m.add(new o(1)).iushrn(2);return this.pow(e,n)}for(var i=this.m.subn(1),s=0;!i.isZero()&&0===i.andln(1);)s++,i.iushrn(1);r(!i.isZero());var a=new o(1).toRed(this),f=a.redNeg(),c=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new o(2*u*u).toRed(this);0!==this.pow(u,c).cmp(f);)u.redIAdd(f);for(var l=this.pow(u,i),d=this.pow(e,i.addn(1).iushrn(1)),h=this.pow(e,i),p=s;0!==h.cmp(a);){for(var g=h,m=0;0!==g.cmp(a);m++)g=g.redSqr();r(m=0;r--){for(var c=t.words[r],u=f-1;u>=0;u--){var l=c>>u&1;i!==n[0]&&(i=this.sqr(i)),0!==l||0!==s?(s<<=1,s|=l,(4===++a||0===r&&0===u)&&(i=this.mul(i,n[s]),a=0,s=0)):a=0}f=26}return i},w.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},w.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},o.mont=function(e){return new E(e)},i(E,w),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 n=e.imul(t),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).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.mul=function(e,t){if(e.isZero()||t.isZero())return new o(0)._forceRed(this);var n=e.mul(t),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),s=i;return i.cmp(this.m)>=0?s=i.isub(this.m):i.cmpn(0)<0&&(s=i.iadd(this.m)),s._forceRed(this)},E.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e,this)}).call(this,n(111)(e))},function(e,t){var n,r,i=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function a(e){if(n===setTimeout)return setTimeout(e,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:o}catch(e){n=o}try{r="function"==typeof clearTimeout?clearTimeout:s}catch(e){r=s}}();var f,c=[],u=!1,l=-1;function d(){u&&f&&(u=!1,f.length?c=f.concat(c):l=-1,c.length&&h())}function h(){if(!u){var e=a(d);u=!0;for(var t=c.length;t;){for(f=c,c=[];++l1)for(var n=1;n(i>>1)-1?(i>>1)-f:f,o.isubn(a)):a=0,r[s]=a,o.iushrn(1)}return r},r.getJSF=function(e,t){var n=[[],[]];e=e.clone(),t=t.clone();for(var r=0,i=0;e.cmpn(-r)>0||t.cmpn(-i)>0;){var o,s,a,f=e.andln(3)+r&3,c=t.andln(3)+i&3;if(3===f&&(f=-1),3===c&&(c=-1),0==(1&f))o=0;else o=3!==(a=e.andln(7)+r&7)&&5!==a||2!==c?f:-f;if(n[0].push(o),0==(1&c))s=0;else s=3!==(a=t.andln(7)+i&7)&&5!==a||2!==f?c:-c;n[1].push(s),2*r===o+1&&(r=1-r),2*i===s+1&&(i=1-i),e.iushrn(1),t.iushrn(1)}return n},r.cachedProperty=function(e,t,n){var r="_"+t;e.prototype[t]=function(){return void 0!==this[r]?this[r]:this[r]=n.call(this)}},r.parseBytes=function(e){return"string"==typeof e?r.toArray(e,"hex"):e},r.intFromLE=function(e){return new i(e,"hex","le")}},function(e,t){e.exports=function(e){return e&&e.__esModule?e:{default:e}}},function(e,t,n){"use strict";var r=n(14),i=n(2);function o(e,t){return 55296==(64512&e.charCodeAt(t))&&(!(t<0||t+1>=e.length)&&56320==(64512&e.charCodeAt(t+1)))}function s(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function a(e){return 1===e.length?"0"+e:e}function f(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 n=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),i=0;i>6|192,n[r++]=63&s|128):o(e,i)?(s=65536+((1023&s)<<10)+(1023&e.charCodeAt(++i)),n[r++]=s>>18|240,n[r++]=s>>12&63|128,n[r++]=s>>6&63|128,n[r++]=63&s|128):(n[r++]=s>>12|224,n[r++]=s>>6&63|128,n[r++]=63&s|128)}else for(i=0;i>>0}return s},t.split32=function(e,t){for(var n=new Array(4*e.length),r=0,i=0;r>>24,n[i+1]=o>>>16&255,n[i+2]=o>>>8&255,n[i+3]=255&o):(n[i+3]=o>>>24,n[i+2]=o>>>16&255,n[i+1]=o>>>8&255,n[i]=255&o)}return n},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,n){return e+t+n>>>0},t.sum32_4=function(e,t,n,r){return e+t+n+r>>>0},t.sum32_5=function(e,t,n,r,i){return e+t+n+r+i>>>0},t.sum64=function(e,t,n,r){var i=e[t],o=r+e[t+1]>>>0,s=(o>>0,e[t+1]=o},t.sum64_hi=function(e,t,n,r){return(t+r>>>0>>0},t.sum64_lo=function(e,t,n,r){return t+r>>>0},t.sum64_4_hi=function(e,t,n,r,i,o,s,a){var f=0,c=t;return f+=(c=c+r>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,n,r,i,o,s,a){return t+r+o+a>>>0},t.sum64_5_hi=function(e,t,n,r,i,o,s,a,f,c){var u=0,l=t;return u+=(l=l+r>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,n,r,i,o,s,a,f,c){return t+r+o+a+c>>>0},t.rotr64_hi=function(e,t,n){return(t<<32-n|e>>>n)>>>0},t.rotr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0},t.shr64_hi=function(e,t,n){return e>>>n},t.shr64_lo=function(e,t,n){return(e<<32-n|t>>>n)>>>0}},function(e,t,n){var r=n(3).Buffer,i=n(39).Transform,o=n(59).StringDecoder;function s(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}n(2)(s,i),s.prototype.update=function(e,t,n){"string"==typeof e&&(e=r.from(e,t));var i=this._update(e);return this.hashMode?this:(n&&(i=this._toString(i,n)),i)},s.prototype.setAutoPadding=function(){},s.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},s.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},s.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},s.prototype._transform=function(e,t,n){var r;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(e){r=e}finally{n(r)}},s.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(e){t=e}e(t)},s.prototype._finalOrDigest=function(e){var t=this.__final()||r.alloc(0);return e&&(t=this._toString(t,e,!0)),t},s.prototype._toString=function(e,t,n){if(this._decoder||(this._decoder=new o(t),this._encoding=t),this._encoding!==t)throw new Error("can't switch encodings");var r=this._decoder.write(e);return n&&(r+=this._decoder.end()),r},e.exports=s},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MatrixEvent=t.EventStatus=void 0;var i=n(10),o=r(n(8)),s=n(4);t.EventStatus={NOT_SENT:"not_sent",ENCRYPTING:"encrypting",SENDING:"sending",QUEUED:"queued",SENT:"sent",CANCELLED:"cancelled"};const a={};function f(e){return a[e]||(a[e]=e),a[e]}const c=function(e){["state_key","type","sender","room_id","membership"].forEach(t=>{e[t]&&(e[t]=f(e[t]))}),["membership","avatar_url","displayname"].forEach(t=>{e.content&&e.content[t]&&(e.content[t]=f(e.content[t]))}),["rel_type"].forEach(t=>{e.content&&e.content["m.relates_to"]&&e.content["m.relates_to"][t]&&(e.content["m.relates_to"][t]=f(e.content["m.relates_to"][t]))}),this.event=e||{},this.sender=null,this.target=null,this.status=null,this.error=null,this.forwardLooking=!0,this._pushActions=null,this._replacingEvent=null,this._localRedactionEvent=null,this._isCancelled=!1,this._clearEvent={},this._senderCurve25519Key=null,this._claimedEd25519Key=null,this._forwardingCurve25519KeyChain=[],this._decryptionPromise=null,this._retryDecryption=!1};t.MatrixEvent=c,o.inherits(c,i.EventEmitter),o.extend(c.prototype,{getId:function(){return this.event.event_id},getSender:function(){return this.event.sender||this.event.user_id},getType:function(){return this._clearEvent.type||this.event.type},getWireType:function(){return this.event.type},getRoomId:function(){return this.event.room_id},getTs:function(){return this.event.origin_server_ts},getDate:function(){return this.event.origin_server_ts?new Date(this.event.origin_server_ts):null},getOriginalContent:function(){return this._localRedactionEvent?{}:this._clearEvent.content||this.event.content||{}},getContent:function(){return this._localRedactionEvent?{}:this._replacingEvent?this._replacingEvent.getContent()["m.new_content"]||{}:this.getOriginalContent()},getWireContent:function(){return this.event.content||{}},getPrevContent:function(){return this.getUnsigned().prev_content||this.event.prev_content||{}},getDirectionalContent:function(){return this.forwardLooking?this.getContent():this.getPrevContent()},getAge:function(){return this.getUnsigned().age||this.event.age},getLocalAge:function(){return Date.now()-this.getTs()},getStateKey:function(){return this.event.state_key},isState:function(){return void 0!==this.event.state_key},makeEncrypted:function(e,t,n,r){this._clearEvent={type:this.event.type,content:this.event.content},this.event.type=e,this.event.content=t,this._senderCurve25519Key=n,this._claimedEd25519Key=r},isBeingDecrypted:function(){return null!=this._decryptionPromise},isDecryptionFailure:function(){return this._clearEvent&&this._clearEvent.content&&"m.bad.encrypted"===this._clearEvent.content.msgtype},attemptDecryption:async function(e){if(!this.isEncrypted())throw new Error("Attempt to decrypt event which isn't encrypted");if(this._clearEvent&&this._clearEvent.content&&"m.bad.encrypted"!==this._clearEvent.content.msgtype)throw new Error("Attempt to decrypt event which has already been encrypted");return this._decryptionPromise?(s.logger.log(`Event ${this.getId()} already being decrypted; queueing a retry`),this._retryDecryption=!0,this._decryptionPromise):(this._decryptionPromise=this._decryptionLoop(e),this._decryptionPromise)},cancelAndResendKeyRequest:function(e,t){const n=this.getWireContent();return e.requestRoomKey({algorithm:n.algorithm,room_id:this.getRoomId(),session_id:n.session_id,sender_key:n.sender_key},this.getKeyRequestRecipients(t),!0)},getKeyRequestRecipients:function(e){const t=this.getWireContent(),n=[{userId:e,deviceId:"*"}],r=this.getSender();return r!==e&&n.push({userId:r,deviceId:t.device_id}),n},_decryptionLoop:async function(e){for(await Promise.resolve();;){let t,n;this._retryDecryption=!1;try{t=e?await e.decryptEvent(this):this._badEncryptedMessage("Encryption not enabled")}catch(e){if("DecryptionError"!==e.name)return s.logger.error(`Error decrypting event (id=${this.getId()}): ${e.stack||e}`),this._decryptionPromise=null,void(this._retryDecryption=!1);if(n=e,this._retryDecryption){s.logger.log(`Got error decrypting event (id=${this.getId()}: `+`${e}), but retrying`);continue}s.logger.warn(`Error decrypting event (id=${this.getId()}): ${e.detailedString}`),t=this._badEncryptedMessage(e.message)}return this._decryptionPromise=null,this._retryDecryption=!1,this._setClearData(t),this.setPushActions(null),void this.emit("Event.decrypted",this,n)}},_badEncryptedMessage:function(e){return{clearEvent:{type:"m.room.message",content:{msgtype:"m.bad.encrypted",body:"** Unable to decrypt: "+e+" **"}}}},_setClearData:function(e){this._clearEvent=e.clearEvent,this._senderCurve25519Key=e.senderCurve25519Key||null,this._claimedEd25519Key=e.claimedEd25519Key||null,this._forwardingCurve25519KeyChain=e.forwardingCurve25519KeyChain||[]},getClearContent:function(){const e=this._clearEvent;return e&&e.content?e.content:null},isEncrypted:function(){return"m.room.encrypted"===this.event.type},getSenderKey:function(){return this._senderCurve25519Key},getKeysClaimed:function(){return{ed25519:this._claimedEd25519Key}},getClaimedEd25519Key:function(){return this._claimedEd25519Key},getForwardingCurve25519KeyChain:function(){return this._forwardingCurve25519KeyChain},getUnsigned:function(){return this.event.unsigned||{}},unmarkLocallyRedacted:function(){const e=this._localRedactionEvent;return this._localRedactionEvent=null,this.event.unsigned&&(this.event.unsigned.redacted_because=null),!!e},markLocallyRedacted:function(e){this._localRedactionEvent||(this.emit("Event.beforeRedaction",this,e),this._localRedactionEvent=e,this.event.unsigned||(this.event.unsigned={}),this.event.unsigned.redacted_because=e.event)},makeRedacted:function(e){if(!e.event)throw new Error("invalid redaction_event in makeRedacted");let t;for(t in this._localRedactionEvent=null,this.emit("Event.beforeRedaction",this,e),this._replacingEvent=null,this.event.unsigned||(this.event.unsigned={}),this.event.unsigned.redacted_because=e.event,this.event)this.event.hasOwnProperty(t)&&(u[t]||delete this.event[t]);const n=l[this.getType()]||{},r=this.getContent();for(t in r)r.hasOwnProperty(t)&&(n[t]||delete r[t])},isRedacted:function(){return Boolean(this.getUnsigned().redacted_because)},isRedaction:function(){return"m.room.redaction"===this.getType()},getPushActions:function(){return this._pushActions},setPushActions:function(e){this._pushActions=e},handleRemoteEcho:function(e){const t=this.getUnsigned(),n=this.getId();this.event=e,t.redacted_because&&(this.event.unsigned||(this.event.unsigned={}),this.event.unsigned.redacted_because=t.redacted_because),this.setStatus(null),this.getId()!==n&&this.emit("Event.localEventIdReplaced",this)},isSending(){return!!this.status},setStatus(e){this.status=e,this.emit("Event.status",this,e)},replaceLocalEventId(e){this.event.event_id=e,this.emit("Event.localEventIdReplaced",this)},isRelation(e){const t=this.getWireContent(),n=t&&t["m.relates_to"];return n&&n.rel_type&&n.event_id&&(e&&n.rel_type===e||!e)},getRelation(){return this.isRelation()?this.getWireContent()["m.relates_to"]:null},makeReplaced(e){this.isRedacted()&&e||this._replacingEvent!==e&&(this._replacingEvent=e,this.emit("Event.replaced",this))},getAssociatedStatus(){return this._replacingEvent?this._replacingEvent.status:this._localRedactionEvent?this._localRedactionEvent.status:this.status},getServerAggregatedRelation(e){const t=this.getUnsigned()["m.relations"];if(t)return t[e]},replacingEventId(){const e=this.getServerAggregatedRelation("m.replace");return e?e.event_id:this._replacingEvent?this._replacingEvent.getId():void 0},replacingEvent(){return this._replacingEvent},replacingEventDate(){const e=this.getServerAggregatedRelation("m.replace");if(e){const t=e.origin_server_ts;if(Number.isFinite(t))return new Date(t)}else if(this._replacingEvent)return this._replacingEvent.getDate()},localRedactionEvent(){return this._localRedactionEvent},getAssociatedId(){const e=this.getRelation();return e?e.event_id:this.isRedaction()?this.event.redacts:void 0},hasAssocation(){return!!this.getAssociatedId()},updateAssociatedId(e){const t=this.getRelation();t?t.event_id=e:this.isRedaction()&&(this.event.redacts=e)},flagCancelled(e=!0){this._isCancelled=e},isCancelled(){return this._isCancelled},toJSON(){const e={type:this.getType(),sender:this.getSender(),content:this.getContent(),event_id:this.getId(),origin_server_ts:this.getTs(),unsigned:this.getUnsigned(),room_id:this.getRoomId()};return this.isRedaction()&&(e.redacts=this.event.redacts),this.isEncrypted()?{decrypted:e,encrypted:this.event}:e}});const u=["event_id","type","room_id","user_id","sender","state_key","prev_state","content","unsigned","origin_server_ts"].reduce((function(e,t){return e[t]=1,e}),{}),l={"m.room.member":{membership:1},"m.room.create":{creator:1},"m.room.join_rules":{join_rule:1},"m.room.power_levels":{ban:1,events:1,events_default:1,kick:1,redact:1,state_default:1,users:1,users_default:1},"m.room.aliases":{aliases:1}}},function(e,t,n){"use strict";var r=n(40),i=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=l;var o=Object.create(n(27));o.inherits=n(2);var s=n(88),a=n(58);o.inherits(l,s);for(var f=i(a.prototype),c=0;c{a[u]={resolve:(...n)=>{delete e._sessionsInProgress[u],t(...n)},reject:(...t)=>{delete e._sessionsInProgress[u],n(...t)}}}));const l=await e.getSessionIdForDevice(u,a[u]);null!==l&&a[u]&&(delete e._sessionsInProgress[u],a[u].resolve(),delete a[u]),(null===l||r)&&i.push([t,c]),o[t][c]={device:f,sessionId:l}}}if(0===i.length)return o;let f;try{f=await t.claimOneTimeKeys(i,"signed_curve25519")}catch(e){for(const e of Object.values(a))e.resolve();throw s.logger.log("failed to claim one-time keys",e,i),e}const u=f.one_time_keys||{},l=[];for(const t in n){if(!n.hasOwnProperty(t))continue;const i=u[t]||{},f=n[t];for(let n=0;n{a[h]&&a[h].resolve(e),o[t][d].sessionId=e},e=>{throw a[h]&&a[h].resolve(),e}));else{const e="No one-time keys (alg=signed_curve25519) for device "+t+":"+d;s.logger.warn(e),a[h]&&a[h].resolve()}}}return await Promise.all(l),o},t.verifySignature=u,t.pkSign=function(t,n,r,i){let o=!1;if(n instanceof Uint8Array){const t=new e.Olm.PkSigning;i=t.init_with_seed(n),n=t,o=!0}const s=t.signatures||{};delete t.signatures;const a=t.unsigned;t.unsigned&&delete t.unsigned;try{const e=s[r]||{};return s[r]=e,e["ed25519:"+i]=n.sign(f.default.stringify(t))}finally{t.signatures=s,a&&(t.unsigned=a),o&&n.free()}},t.pkVerify=function(t,n,r){const i="ed25519:"+n;if(!(t.signatures&&t.signatures[r]&&t.signatures[r][i]))throw new Error("No signature");const o=t.signatures[r][i],s=new e.Olm.Utility,a=t.signatures;delete t.signatures;const c=t.unsigned;t.unsigned&&delete t.unsigned;try{s.ed25519_verify(n,f.default.stringify(t),o)}finally{t.signatures=a,c&&(t.unsigned=c),s.free()}},t.encodeBase64=function(e){return r.from(e).toString("base64")},t.decodeBase64=function(e){return r.from(e,"base64")},t.MEGOLM_BACKUP_ALGORITHM=t.MEGOLM_ALGORITHM=t.OLM_ALGORITHM=void 0;var s=n(4),a=o(n(8)),f=i(n(78));t.OLM_ALGORITHM="m.olm.v1.curve25519-aes-sha2";t.MEGOLM_ALGORITHM="m.megolm.v1.aes-sha2";async function c(e,t,n,r){const i=r.deviceId;try{await u(e,t,n,i,r.getFingerprint())}catch(e){return s.logger.error("Unable to verify signature on one-time key for device "+n+":"+i+":",e),null}let o;try{o=await e.createOutboundSession(r.getIdentityKey(),t.key)}catch(e){return s.logger.error("Error starting olm session with device "+n+":"+i+": "+e),null}return s.logger.log("Started new olm sessionid "+o+" for device "+n+":"+i),o}async function u(e,t,n,r,i){const o="ed25519:"+r,s=((t.signatures||{})[n]||{})[o];if(!s)throw Error("No signature");const a=Object.assign({},t);delete a.unsigned,delete a.signatures;const c=f.default.stringify(a);e.verifySignature(i,c,s)}t.MEGOLM_BACKUP_ALGORITHM="m.megolm_backup.v1.curve25519-aes-sha2"}).call(this,n(6),n(11).Buffer)},function(e,t,n){"use strict";(function(t,r){var i=n(3).Buffer,o=t.crypto||t.msCrypto;o&&o.getRandomValues?e.exports=function(e,t){if(e>4294967295)throw new RangeError("requested too many random bytes");var n=i.allocUnsafe(e);if(e>0)if(e>65536)for(var s=0;s=this._finalSize&&(this._update(this._block),this._block.fill(0));var n=8*this._len;if(n<=4294967295)this._block.writeUInt32BE(n,this._blockSize-4);else{var r=(4294967295&n)>>>0,i=(n-r)/4294967296;this._block.writeUInt32BE(i,this._blockSize-8),this._block.writeUInt32BE(r,this._blockSize-4)}this._update(this._block);var o=this._hash();return e?o.toString(e):o},i.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e.exports=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EventTimeline=i;var r=n(131);function i(e){this._eventTimelineSet=e,this._roomId=e.room?e.room.roomId:null,this._events=[],this._baseIndex=0,this._startState=new r.RoomState(this._roomId),this._startState.paginationToken=null,this._endState=new r.RoomState(this._roomId),this._endState.paginationToken=null,this._prevTimeline=null,this._nextTimeline=null,this._paginationRequests={b:null,f:null},this._name=this._roomId+":"+(new Date).toISOString()}i.BACKWARDS="b",i.FORWARDS="f",i.prototype.initialiseState=function(e){if(this._events.length>0)throw new Error("Cannot initialise state after events are added");for(const t of e)Object.freeze(t);this._startState.setStateEvents(e),this._endState.setStateEvents(e)},i.prototype.forkLive=function(e){const t=this.getState(e),n=new i(this._eventTimelineSet);return n._startState=t.clone(),n._endState=t,this._endState=t.clone(),n},i.prototype.fork=function(e){const t=this.getState(e),n=new i(this._eventTimelineSet);return n._startState=t.clone(),n._endState=t.clone(),n},i.prototype.getRoomId=function(){return this._roomId},i.prototype.getFilter=function(){return this._eventTimelineSet.getFilter()},i.prototype.getTimelineSet=function(){return this._eventTimelineSet},i.prototype.getBaseIndex=function(){return this._baseIndex},i.prototype.getEvents=function(){return this._events},i.prototype.getState=function(e){if(e==i.BACKWARDS)return this._startState;if(e==i.FORWARDS)return this._endState;throw new Error("Invalid direction '"+e+"'")},i.prototype.getPaginationToken=function(e){return this.getState(e).paginationToken},i.prototype.setPaginationToken=function(e,t){this.getState(t).paginationToken=e},i.prototype.getNeighbouringTimeline=function(e){if(e==i.BACKWARDS)return this._prevTimeline;if(e==i.FORWARDS)return this._nextTimeline;throw new Error("Invalid direction '"+e+"'")},i.prototype.setNeighbouringTimeline=function(e,t){if(this.getNeighbouringTimeline(t))throw new Error("timeline already has a neighbouring timeline - cannot reset neighbour (direction: "+t+")");if(t==i.BACKWARDS)this._prevTimeline=e;else{if(t!=i.FORWARDS)throw new Error("Invalid direction '"+t+"'");this._nextTimeline=e}this.setPaginationToken(null,t)},i.prototype.addEvent=function(e,t){const n=t?this._startState:this._endState,r=this.getTimelineSet();let o;r.room&&r.room.getUnfilteredTimelineSet()===r&&(i.setEventMetadata(e,n,t),e.isState()&&(n.setStateEvents([e]),e.sender&&("m.room.member"!==e.getType()||t)||i.setEventMetadata(e,n,t))),o=t?0:this._events.length,this._events.splice(o,0,e),t&&this._baseIndex++},i.setEventMetadata=function(e,t,n){e.sender=t.getSentinelMember(e.getSender()),"m.room.member"===e.getType()&&(e.target=t.getSentinelMember(e.getStateKey())),e.isState()&&n&&(e.forwardLooking=!1)},i.prototype.removeEvent=function(e){for(let t=this._events.length-1;t>=0;t--){const n=this._events[t];if(n.getId()==e)return this._events.splice(t,1),t=this._delta8){var n=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-n,e.length),0===this.pending.length&&(this.pending=null),e=r.join32(e,0,e.length-n,this.endian);for(var i=0;i>>24&255,r[i++]=e>>>16&255,r[i++]=e>>>8&255,r[i++]=255&e}else for(r[i++]=255&e,r[i++]=e>>>8&255,r[i++]=e>>>16&255,r[i++]=e>>>24&255,r[i++]=0,r[i++]=0,r[i++]=0,r[i++]=0,o=8;o{if(!this._indexedDB)return void t(new Error("no indexeddb support available"));i.logger.log(`connecting to indexeddb ${this._dbName}`);const n=this._indexedDB.open(this._dbName,a.VERSION);n.onupgradeneeded=e=>{const t=e.target.result,n=e.oldVersion;a.upgradeDatabase(t,n)},n.onblocked=()=>{i.logger.log("can't yet open IndexedDBCryptoStore because it is open elsewhere")},n.onerror=e=>{i.logger.log("Error connecting to indexeddb",e),t(e.target.error)},n.onsuccess=t=>{const n=t.target.result;i.logger.log(`connected to indexeddb ${this._dbName}`),e(new a.Backend(n))}}).then(e=>e.doTxn("readonly",[u.STORE_INBOUND_GROUP_SESSIONS,u.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],t=>{e.getEndToEndInboundGroupSession("","",t,()=>{})}).then(()=>e)).catch(t=>{if("VersionError"===t.name)throw i.logger.warn("Crypto DB is too new for us to use!",t),new f.InvalidCryptoStoreError(f.InvalidCryptoStoreError.TOO_NEW);i.logger.warn(`unable to connect to indexeddb ${this._dbName}`+`: falling back to localStorage store: ${t}`);try{return new o.LocalStorageCryptoStore(e.localStorage)}catch(t){return i.logger.warn(`unable to open localStorage: falling back to in-memory store: ${t}`),new s.MemoryCryptoStore}}),this._backendPromise)}deleteAllData(){return new Promise((e,t)=>{if(!this._indexedDB)return void t(new Error("no indexeddb support available"));i.logger.log(`Removing indexeddb instance: ${this._dbName}`);const n=this._indexedDB.deleteDatabase(this._dbName);n.onblocked=()=>{i.logger.log("can't yet delete IndexedDBCryptoStore because it is open elsewhere")},n.onerror=e=>{i.logger.log("Error deleting data from indexeddb",e),t(e.target.error)},n.onsuccess=()=>{i.logger.log(`Removed indexeddb instance: ${this._dbName}`),e()}}).catch(e=>{i.logger.warn(`unable to delete IndexedDBCryptoStore: ${e}`)})}getOrAddOutgoingRoomKeyRequest(e){return this._connect().then(t=>t.getOrAddOutgoingRoomKeyRequest(e))}getOutgoingRoomKeyRequest(e){return this._connect().then(t=>t.getOutgoingRoomKeyRequest(e))}getOutgoingRoomKeyRequestByState(e){return this._connect().then(t=>t.getOutgoingRoomKeyRequestByState(e))}getOutgoingRoomKeyRequestsByTarget(e,t,n){return this._connect().then(r=>r.getOutgoingRoomKeyRequestsByTarget(e,t,n))}updateOutgoingRoomKeyRequest(e,t,n){return this._connect().then(r=>r.updateOutgoingRoomKeyRequest(e,t,n))}deleteOutgoingRoomKeyRequest(e,t){return this._connect().then(n=>n.deleteOutgoingRoomKeyRequest(e,t))}getAccount(e,t){this._backendPromise.then(n=>{n.getAccount(e,t)})}storeAccount(e,t){this._backendPromise.then(n=>{n.storeAccount(e,t)})}getCrossSigningKeys(e,t){this._backendPromise.then(n=>{n.getCrossSigningKeys(e,t)})}storeCrossSigningKeys(e,t){this._backendPromise.then(n=>{n.storeCrossSigningKeys(e,t)})}countEndToEndSessions(e,t){this._backendPromise.then(n=>{n.countEndToEndSessions(e,t)})}getEndToEndSession(e,t,n,r){this._backendPromise.then(i=>{i.getEndToEndSession(e,t,n,r)})}getEndToEndSessions(e,t,n){this._backendPromise.then(r=>{r.getEndToEndSessions(e,t,n)})}getAllEndToEndSessions(e,t){this._backendPromise.then(n=>{n.getAllEndToEndSessions(e,t)})}storeEndToEndSession(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndSession(e,t,n,r)})}storeEndToEndSessionProblem(e,t,n){return this._backendPromise.then(async r=>{await r.storeEndToEndSessionProblem(e,t,n)})}getEndToEndSessionProblem(e,t){return this._backendPromise.then(async n=>await n.getEndToEndSessionProblem(e,t))}filterOutNotifiedErrorDevices(e){return this._backendPromise.then(async t=>await t.filterOutNotifiedErrorDevices(e))}getEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.getEndToEndInboundGroupSession(e,t,n,r)})}getAllEndToEndInboundGroupSessions(e,t){this._backendPromise.then(n=>{n.getAllEndToEndInboundGroupSessions(e,t)})}addEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.addEndToEndInboundGroupSession(e,t,n,r)})}storeEndToEndInboundGroupSession(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndInboundGroupSession(e,t,n,r)})}storeEndToEndInboundGroupSessionWithheld(e,t,n,r){this._backendPromise.then(i=>{i.storeEndToEndInboundGroupSessionWithheld(e,t,n,r)})}storeEndToEndDeviceData(e,t){this._backendPromise.then(n=>{n.storeEndToEndDeviceData(e,t)})}getEndToEndDeviceData(e,t){this._backendPromise.then(n=>{n.getEndToEndDeviceData(e,t)})}storeEndToEndRoom(e,t,n){this._backendPromise.then(r=>{r.storeEndToEndRoom(e,t,n)})}getEndToEndRooms(e,t){this._backendPromise.then(n=>{n.getEndToEndRooms(e,t)})}getSessionsNeedingBackup(e){return this._connect().then(t=>t.getSessionsNeedingBackup(e))}countSessionsNeedingBackup(e){return this._connect().then(t=>t.countSessionsNeedingBackup(e))}unmarkSessionsNeedingBackup(e,t){return this._connect().then(n=>n.unmarkSessionsNeedingBackup(e,t))}markSessionsNeedingBackup(e,t){return this._connect().then(n=>n.markSessionsNeedingBackup(e,t))}doTxn(e,t,n){return this._connect().then(r=>r.doTxn(e,t,n))}}t.IndexedDBCryptoStore=u,u.STORE_ACCOUNT="account",u.STORE_SESSIONS="sessions",u.STORE_INBOUND_GROUP_SESSIONS="inbound_group_sessions",u.STORE_INBOUND_GROUP_SESSIONS_WITHHELD="inbound_group_sessions_withheld",u.STORE_DEVICE_DATA="device_data",u.STORE_ROOMS="rooms",u.STORE_BACKUP="sessions_needing_backup"}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.newVerificationError=i,t.errorFactory=o,t.errorFromEvent=function(e){const t=e.getContent();if(t){const{code:e,reason:n}=t;return{code:e,reason:n}}return{code:"Unknown error",reason:"m.unknown"}},t.newInvalidMessageError=t.newUserMismatchError=t.newKeyMismatchError=t.newUnexpectedMessageError=t.newUnknownMethodError=t.newUnknownTransactionError=t.newTimeoutError=t.newUserCancelledError=void 0;var r=n(19);function i(e,t,n){return(n=n||{}).code=e,n.reason=t,new r.MatrixEvent({type:"m.key.verification.cancel",content:n})}function o(e,t){return function(n){return i(e,t,n)}}const s=o("m.user","Cancelled by user");t.newUserCancelledError=s;const a=o("m.timeout","Timed out");t.newTimeoutError=a;const f=o("m.unknown_transaction","Unknown transaction");t.newUnknownTransactionError=f;const c=o("m.unknown_method","Unknown method");t.newUnknownMethodError=c;const u=o("m.unexpected_message","Unexpected message");t.newUnexpectedMessageError=u;const l=o("m.key_mismatch","Key mismatch");t.newKeyMismatchError=l;const d=o("m.user_error","User mismatch");t.newUserMismatchError=d;const h=o("m.invalid_message","Invalid message");t.newInvalidMessageError=h},function(e,t,n){(function(e){function n(e,t){for(var n=0,r=e.length-1;r>=0;r--){var i=e[r];"."===i?e.splice(r,1):".."===i?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n--;n)e.unshift("..");return e}function r(e,t){if(e.filter)return e.filter(t);for(var n=[],r=0;r=-1&&!i;o--){var s=o>=0?arguments[o]:e.cwd();if("string"!=typeof s)throw new TypeError("Arguments to path.resolve must be strings");s&&(t=s+"/"+t,i="/"===s.charAt(0))}return(i?"/":"")+(t=n(r(t.split("/"),(function(e){return!!e})),!i).join("/"))||"."},t.normalize=function(e){var o=t.isAbsolute(e),s="/"===i(e,-1);return(e=n(r(e.split("/"),(function(e){return!!e})),!o).join("/"))||o||(e="."),e&&s&&(e+="/"),(o?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(r(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,n){function r(e){for(var t=0;t=0&&""===e[n];n--);return t>n?[]:e.slice(t,n-t+1)}e=t.resolve(e).substr(1),n=t.resolve(n).substr(1);for(var i=r(e.split("/")),o=r(n.split("/")),s=Math.min(i.length,o.length),a=s,f=0;f=1;--o)if(47===(t=e.charCodeAt(o))){if(!i){r=o;break}}else i=!1;return-1===r?n?"/":".":n&&1===r?"/":e.slice(0,r)},t.basename=function(e,t){var n=function(e){"string"!=typeof e&&(e+="");var t,n=0,r=-1,i=!0;for(t=e.length-1;t>=0;--t)if(47===e.charCodeAt(t)){if(!i){n=t+1;break}}else-1===r&&(i=!1,r=t+1);return-1===r?"":e.slice(n,r)}(e);return t&&n.substr(-1*t.length)===t&&(n=n.substr(0,n.length-t.length)),n},t.extname=function(e){"string"!=typeof e&&(e+="");for(var t=-1,n=0,r=-1,i=!0,o=0,s=e.length-1;s>=0;--s){var a=e.charCodeAt(s);if(47!==a)-1===r&&(i=!1,r=s+1),46===a?-1===t?t=s:1!==o&&(o=1):-1!==t&&(o=-1);else if(!i){n=s+1;break}}return-1===t||-1===r||0===o||1===o&&t===r-1&&t===n+1?"":e.slice(t,r)};var i="b"==="ab".substr(-1)?function(e,t,n){return e.substr(t,n)}:function(e,t,n){return t<0&&(t=e.length+t),e.substr(t,n)}}).call(this,n(13))},function(e,t,n){"use strict";(function(e){var r=n(16),i=n(7);Object.defineProperty(t,"__esModule",{value:!0});var o={};t.default=void 0;var s=i(n(126));Object.keys(s).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(o,e)||Object.defineProperty(t,e,{enumerable:!0,get:function(){return s[e]}}))}));var a=r(n(304)),f=r(n(305));let c;s.request((function(e,t){return e.qs=f.default.stringify(e.qs||{},e.qsStringifyOptions),(0,a.default)(e,t)}));try{c=e.indexedDB}catch(e){}c&&s.setCryptoStoreFactory((function(){return new s.IndexedDBCryptoStore(c,"matrix-js-sdk:crypto")}));var u=s;t.default=u,e.matrixcs=s}).call(this,n(6))},function(e,t,n){(function(e){var r=Object.getOwnPropertyDescriptors||function(e){for(var t=Object.keys(e),n={},r=0;r=o)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),f=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),p(n)?r.showHidden=n:n&&t._extend(r,n),y(r.showHidden)&&(r.showHidden=!1),y(r.depth)&&(r.depth=2),y(r.colors)&&(r.colors=!1),y(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=f),u(r,e,r.depth)}function f(e,t){var n=a.styles[t];return n?"["+a.colors[n][0]+"m"+e+"["+a.colors[n][1]+"m":e}function c(e,t){return e}function u(e,n,r){if(e.customInspect&&n&&E(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var i=n.inspect(r,e);return _(i)||(i=u(e,i,r)),i}var o=function(e,t){if(y(t))return e.stylize("undefined","undefined");if(_(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(m(t))return e.stylize(""+t,"number");if(p(t))return e.stylize(""+t,"boolean");if(g(t))return e.stylize("null","null")}(e,n);if(o)return o;var s=Object.keys(n),a=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(s);if(e.showHidden&&(s=Object.getOwnPropertyNames(n)),w(n)&&(s.indexOf("message")>=0||s.indexOf("description")>=0))return l(n);if(0===s.length){if(E(n)){var f=n.name?": "+n.name:"";return e.stylize("[Function"+f+"]","special")}if(b(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(A(n))return e.stylize(Date.prototype.toString.call(n),"date");if(w(n))return l(n)}var c,v="",S=!1,k=["{","}"];(h(n)&&(S=!0,k=["[","]"]),E(n))&&(v=" [Function"+(n.name?": "+n.name:"")+"]");return b(n)&&(v=" "+RegExp.prototype.toString.call(n)),A(n)&&(v=" "+Date.prototype.toUTCString.call(n)),w(n)&&(v=" "+l(n)),0!==s.length||S&&0!=n.length?r<0?b(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),c=S?function(e,t,n,r,i){for(var o=[],s=0,a=t.length;s=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(c,v,k)):k[0]+v+k[1]}function l(e){return"["+Error.prototype.toString.call(e)+"]"}function d(e,t,n,r,i,o){var s,a,f;if((f=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?a=f.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):f.set&&(a=e.stylize("[Setter]","special")),T(r,i)||(s="["+i+"]"),a||(e.seen.indexOf(f.value)<0?(a=g(n)?u(e,f.value,null):u(e,f.value,n-1)).indexOf("\n")>-1&&(a=o?a.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+a.split("\n").map((function(e){return" "+e})).join("\n")):a=e.stylize("[Circular]","special")),y(s)){if(o&&i.match(/^\d+$/))return a;(s=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+a}function h(e){return Array.isArray(e)}function p(e){return"boolean"==typeof e}function g(e){return null===e}function m(e){return"number"==typeof e}function _(e){return"string"==typeof e}function y(e){return void 0===e}function b(e){return v(e)&&"[object RegExp]"===S(e)}function v(e){return"object"==typeof e&&null!==e}function A(e){return v(e)&&"[object Date]"===S(e)}function w(e){return v(e)&&("[object Error]"===S(e)||e instanceof Error)}function E(e){return"function"==typeof e}function S(e){return Object.prototype.toString.call(e)}function k(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(y(o)&&(o=e.env.NODE_DEBUG||""),n=n.toUpperCase(),!s[n])if(new RegExp("\\b"+n+"\\b","i").test(o)){var r=e.pid;s[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else s[n]=function(){};return s[n]},t.inspect=a,a.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},a.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=h,t.isBoolean=p,t.isNull=g,t.isNullOrUndefined=function(e){return null==e},t.isNumber=m,t.isString=_,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=y,t.isRegExp=b,t.isObject=v,t.isDate=A,t.isError=w,t.isFunction=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=n(167);var I=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function R(){var e=new Date,t=[k(e.getHours()),k(e.getMinutes()),k(e.getSeconds())].join(":");return[e.getDate(),I[e.getMonth()],t].join(" ")}function T(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",R(),t.format.apply(t,arguments))},t.inherits=n(168),t._extend=function(e,t){if(!t||!v(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e};var O="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function C(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(O&&e[O]){var t;if("function"!=typeof(t=e[O]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,O,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),i=[],o=0;o>>24]^u[p>>>16&255]^l[g>>>8&255]^d[255&m]^t[_++],s=c[p>>>24]^u[g>>>16&255]^l[m>>>8&255]^d[255&h]^t[_++],a=c[g>>>24]^u[m>>>16&255]^l[h>>>8&255]^d[255&p]^t[_++],f=c[m>>>24]^u[h>>>16&255]^l[p>>>8&255]^d[255&g]^t[_++],h=o,p=s,g=a,m=f;return o=(r[h>>>24]<<24|r[p>>>16&255]<<16|r[g>>>8&255]<<8|r[255&m])^t[_++],s=(r[p>>>24]<<24|r[g>>>16&255]<<16|r[m>>>8&255]<<8|r[255&h])^t[_++],a=(r[g>>>24]<<24|r[m>>>16&255]<<16|r[h>>>8&255]<<8|r[255&p])^t[_++],f=(r[m>>>24]<<24|r[h>>>16&255]<<16|r[p>>>8&255]<<8|r[255&g])^t[_++],[o>>>=0,s>>>=0,a>>>=0,f>>>=0]}var a=[0,1,2,4,8,16,32,64,128,27,54],f=function(){for(var e=new Array(256),t=0;t<256;t++)e[t]=t<128?t<<1:t<<1^283;for(var n=[],r=[],i=[[],[],[],[]],o=[[],[],[],[]],s=0,a=0,f=0;f<256;++f){var c=a^a<<1^a<<2^a<<3^a<<4;c=c>>>8^255&c^99,n[s]=c,r[c]=s;var u=e[s],l=e[u],d=e[l],h=257*e[c]^16843008*c;i[0][s]=h<<24|h>>>8,i[1][s]=h<<16|h>>>16,i[2][s]=h<<8|h>>>24,i[3][s]=h,h=16843009*d^65537*l^257*u^16843008*s,o[0][c]=h<<24|h>>>8,o[1][c]=h<<16|h>>>16,o[2][c]=h<<8|h>>>24,o[3][c]=h,0===s?s=a=1:(s=u^e[e[e[d^u]]],a^=e[e[a]])}return{SBOX:n,INV_SBOX:r,SUB_MIX:i,INV_SUB_MIX:o}}();function c(e){this._key=i(e),this._reset()}c.blockSize=16,c.keySize=32,c.prototype.blockSize=c.blockSize,c.prototype.keySize=c.keySize,c.prototype._reset=function(){for(var e=this._key,t=e.length,n=t+6,r=4*(n+1),i=[],o=0;o>>24,s=f.SBOX[s>>>24]<<24|f.SBOX[s>>>16&255]<<16|f.SBOX[s>>>8&255]<<8|f.SBOX[255&s],s^=a[o/t|0]<<24):t>6&&o%t==4&&(s=f.SBOX[s>>>24]<<24|f.SBOX[s>>>16&255]<<16|f.SBOX[s>>>8&255]<<8|f.SBOX[255&s]),i[o]=i[o-t]^s}for(var c=[],u=0;u>>24]]^f.INV_SUB_MIX[1][f.SBOX[d>>>16&255]]^f.INV_SUB_MIX[2][f.SBOX[d>>>8&255]]^f.INV_SUB_MIX[3][f.SBOX[255&d]]}this._nRounds=n,this._keySchedule=i,this._invKeySchedule=c},c.prototype.encryptBlockRaw=function(e){return s(e=i(e),this._keySchedule,f.SUB_MIX,f.SBOX,this._nRounds)},c.prototype.encryptBlock=function(e){var t=this.encryptBlockRaw(e),n=r.allocUnsafe(16);return n.writeUInt32BE(t[0],0),n.writeUInt32BE(t[1],4),n.writeUInt32BE(t[2],8),n.writeUInt32BE(t[3],12),n},c.prototype.decryptBlock=function(e){var t=(e=i(e))[1];e[1]=e[3],e[3]=t;var n=s(e,this._invKeySchedule,f.INV_SUB_MIX,f.INV_SBOX,this._nRounds),o=r.allocUnsafe(16);return o.writeUInt32BE(n[0],0),o.writeUInt32BE(n[3],4),o.writeUInt32BE(n[2],8),o.writeUInt32BE(n[1],12),o},c.prototype.scrub=function(){o(this._keySchedule),o(this._invKeySchedule),o(this._key)},e.exports.AES=c},function(e,t,n){var r=n(3).Buffer,i=n(60);e.exports=function(e,t,n,o){if(r.isBuffer(e)||(e=r.from(e,"binary")),t&&(r.isBuffer(t)||(t=r.from(t,"binary")),8!==t.length))throw new RangeError("salt should be Buffer with 8 byte length");for(var s=n/8,a=r.alloc(s),f=r.alloc(o||0),c=r.alloc(0);s>0||o>0;){var u=new i;u.update(c),u.update(e),t&&u.update(t),c=u.digest();var l=0;if(s>0){var d=a.length-s;l=Math.min(s,c.length),c.copy(a,d,0,l),s-=l}if(l0){var h=f.length-o,p=Math.min(o,c.length-l);c.copy(f,h,l,l+p),o-=p}}return c.fill(0),{key:a,iv:f}}},function(e,t,n){"use strict";var r=n(12),i=n(15),o=i.getNAF,s=i.getJSF,a=i.assert;function f(e,t){this.type=e,this.p=new r(t.p,16),this.red=t.prime?r.red(t.prime):r.mont(this.p),this.zero=new r(0).toRed(this.red),this.one=new r(1).toRed(this.red),this.two=new r(2).toRed(this.red),this.n=t.n&&new r(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var n=this.n&&this.p.div(this.n);!n||n.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function c(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=f,f.prototype.point=function(){throw new Error("Not implemented")},f.prototype.validate=function(){throw new Error("Not implemented")},f.prototype._fixedNafMul=function(e,t){a(e.precomputed);var n=e._getDoubles(),r=o(t,1,this._bitLength),i=(1<=f;t--)c=(c<<1)+r[t];s.push(c)}for(var u=this.jpoint(null,null,null),l=this.jpoint(null,null,null),d=i;d>0;d--){for(f=0;f=0;c--){for(t=0;c>=0&&0===s[c];c--)t++;if(c>=0&&t++,f=f.dblp(t),c<0)break;var u=s[c];a(0!==u),f="affine"===e.type?u>0?f.mixedAdd(i[u-1>>1]):f.mixedAdd(i[-u-1>>1].neg()):u>0?f.add(i[u-1>>1]):f.add(i[-u-1>>1].neg())}return"affine"===e.type?f.toP():f},f.prototype._wnafMulAdd=function(e,t,n,r,i){for(var a=this._wnafT1,f=this._wnafT2,c=this._wnafT3,u=0,l=0;l=1;l-=2){var h=l-1,p=l;if(1===a[h]&&1===a[p]){var g=[t[h],null,null,t[p]];0===t[h].y.cmp(t[p].y)?(g[1]=t[h].add(t[p]),g[2]=t[h].toJ().mixedAdd(t[p].neg())):0===t[h].y.cmp(t[p].y.redNeg())?(g[1]=t[h].toJ().mixedAdd(t[p]),g[2]=t[h].add(t[p].neg())):(g[1]=t[h].toJ().mixedAdd(t[p]),g[2]=t[h].toJ().mixedAdd(t[p].neg()));var m=[-3,-1,-5,-7,0,7,5,1,3],_=s(n[h],n[p]);u=Math.max(_[0].length,u),c[h]=new Array(u),c[p]=new Array(u);for(var y=0;y=0;l--){for(var E=0;l>=0;){var S=!0;for(y=0;y=0&&E++,A=A.dblp(E),l<0)break;for(y=0;y0?k=f[y][I-1>>1]:I<0&&(k=f[y][-I-1>>1].neg()),A="affine"===k.type?A.mixedAdd(k):A.add(k))}}for(l=0;l=Math.ceil((e.bitLength()+1)/t.step)},c.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var n=[this],r=this,i=0;i0&&(m+="?"+_.join("&")),s.open("POST",m),this.useAuthorizationHeader&&s.setRequestHeader("Authorization","Bearer "+this.opts.accessToken),s.setRequestHeader("Content-Type",i),s.send(u),p=t.promise,p.abort=s.abort.bind(s)}else{const e={};r&&f&&(e.filename=f),p=this.authedRequest(n.callback,"POST","/upload",e,u,{prefix:"/_matrix/media/r0",headers:{"Content-Type":i},json:!1,bodyParser:g})}const m=this,_=p.finally((function(){for(let e=0;e{y&&(g&&a.clearTimeout(g),g=a.setTimeout((function(){_=!0,m&&m.abort&&m.abort(),p.reject(new u({error:"Locally timed out waiting for a response",errcode:"ORG.MATRIX.JSSDK_TIMEOUT",timeout:y}))}),y))};b();const v=p.promise;try{m=this.opts.request({uri:n,method:t,withCredentials:!1,qs:r,qsStringifyOptions:s.qsStringifyOptions,useQuerystring:!0,body:i,json:!1,timeout:y,headers:l||{},_matrix_opts:this.opts},(function(t,n,r){if(y&&(a.clearTimeout(g),_))return;c(p,e,f.opts.onlyData,h)(t,n,r)})),m&&("onprogress"in m&&(m.onprogress=e=>{b()}),m.abort&&(v.abort=m.abort.bind(m)))}catch(t){p.reject(t),e&&e(t)}return v}};const c=function(e,t,n,r){return t=t||function(){},function(o,s,a){if(!o)try{s.statusCode>=400?o=function(e,t){const n=e.statusCode,r=function(e){let t;e.getResponseHeader?t=e.getResponseHeader("Content-Type"):e.headers&&(t=e.headers["content-type"]||null);if(!t)return null;try{return(0,i.parse)(t)}catch(e){throw new Error(`Error parsing Content-Type '${t}': ${e}`)}}(e);let o;if(r)if("application/json"===r.type){const e="object"==typeof t?t:JSON.parse(t);o=new u(e)}else"text/plain"===r.type&&(o=new Error(`Server returned ${n} error: ${t}`));o||(o=new Error(`Server returned ${n} error`));return o.httpStatus=n,o}(s,a):r&&(a=r(a))}catch(e){o=new Error(`Error parsing server response: ${e}`)}if(o)e.reject(o),t(o);else{const r={code:s.statusCode,headers:s.headers,data:a};e.resolve(n?a:r),t(null,n?a:r)}}};function u(e){e=e||{},this.errcode=e.errcode,this.name=e.errcode||"Unknown error code",this.message=e.error||"Unknown message",this.data=e}u.prototype=Object.create(Error.prototype),u.prototype.constructor=u}).call(this,n(6))},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.getHttpUriForMxc=function(e,t,n,r,o,s){if("string"!=typeof t||!t)return"";if(0!==t.indexOf("mxc://"))return s?t:"";let a=t.slice(6),f="/_matrix/media/r0/download/";const c={};n&&(c.width=Math.round(n));r&&(c.height=Math.round(r));o&&(c.method=o);i.keys(c).length>0&&(f="/_matrix/media/r0/thumbnail/");const u=a.indexOf("#");let l="";u>=0&&(l=a.substr(u),a=a.substr(0,u));return e+f+a+(0===i.keys(c).length?"":"?"+i.encodeParams(c))+l},t.getIdenticonUri=function(e,t,n,r){if(!t)return null;n||(n=96);r||(r=96);const o={width:n,height:r},s=i.encodeUri("/_matrix/media/unstable/identicon/$ident",{$ident:t});return e+s+(0===i.keys(o).length?"":"?"+i.encodeParams(o))};var i=r(n(8))},function(e,t,n){"use strict";function r(e){Object.defineProperty(this,"deviceId",{enumerable:!0,value:e}),this.algorithms=[],this.keys={},this.verified=i.UNVERIFIED,this.known=!1,this.unsigned={},this.signatures={}}Object.defineProperty(t,"__esModule",{value:!0}),t.DeviceInfo=r,r.fromStorage=function(e,t){const n=new r(t);for(const t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n},r.prototype.toStorage=function(){return{algorithms:this.algorithms,keys:this.keys,verified:this.verified,known:this.known,unsigned:this.unsigned,signatures:this.signatures}},r.prototype.getFingerprint=function(){return this.keys["ed25519:"+this.deviceId]},r.prototype.getIdentityKey=function(){return this.keys["curve25519:"+this.deviceId]},r.prototype.getDisplayName=function(){return this.unsigned.device_display_name||null},r.prototype.isBlocked=function(){return this.verified==i.BLOCKED},r.prototype.isVerified=function(){return this.verified==i.VERIFIED},r.prototype.isUnverified=function(){return this.verified==i.UNVERIFIED},r.prototype.isKnown=function(){return 1==this.known},r.DeviceVerification={VERIFIED:1,UNVERIFIED:0,BLOCKED:-1};const i=r.DeviceVerification},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomString=function(e){let t="";const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(let r=0;r2&&void 0!==arguments[2]?arguments[2]:{},r=Object.create(e.prototype);for(var i in n)r[i]=n[i];return r.constructor=t,t.prototype=r,t}},function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t){function n(e,t){for(var n=0;n-1?r:o.nextTick;y.WritableState=_;var c=Object.create(n(27));c.inherits=n(2);var u={deprecate:n(181)},l=n(89),d=n(57).Buffer,h=i.Uint8Array||function(){};var p,g=n(90);function m(){}function _(e,t){a=a||n(20),e=e||{};var r=t instanceof a;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,c=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(c||0===c)?c:u,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 l=!1===e.decodeStrings;this.decodeStrings=!l,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 n=e._writableState,r=n.sync,i=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,i){--t.pendingcb,n?(o.nextTick(i,r),o.nextTick(S,e,t),e._writableState.errorEmitted=!0,e.emit("error",r)):(i(r),e._writableState.errorEmitted=!0,e.emit("error",r),S(e,t))}(e,n,r,t,i);else{var s=w(n);s||n.corked||n.bufferProcessing||!n.bufferedRequest||A(e,n),r?f(v,e,n,s,i):v(e,n,s,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 s(this)}function y(e){if(a=a||n(20),!(p.call(y,this)||this instanceof a))return new y(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)),l.call(this)}function b(e,t,n,r,i,o,s){t.writelen=r,t.writecb=s,t.writing=!0,t.sync=!0,n?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function v(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),S(e,t)}function A(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,i=new Array(r),o=t.corkedRequestsFree;o.entry=n;for(var a=0,f=!0;n;)i[a]=n,n.isBuf||(f=!1),n=n.next,a+=1;i.allBuffers=f,b(e,t,!0,t.length,i,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new s(t),t.bufferedRequestCount=0}else{for(;n;){var c=n.chunk,u=n.encoding,l=n.callback;if(b(e,t,!1,t.objectMode?1:c.length,c,u,l),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function w(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function E(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),S(e,t)}))}function S(e,t){var n=w(t);return n&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,o.nextTick(E,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}c.inherits(y,l),_.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:u.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(y,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===y&&(e&&e._writableState instanceof _)}})):p=function(e){return e instanceof this},y.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},y.prototype.write=function(e,t,n){var r,i=this._writableState,s=!1,a=!i.objectMode&&(r=e,d.isBuffer(r)||r instanceof h);return a&&!d.isBuffer(e)&&(e=function(e){return d.from(e)}(e)),"function"==typeof t&&(n=t,t=null),a?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof n&&(n=m),i.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),o.nextTick(t,n)}(this,n):(a||function(e,t,n,r){var i=!0,s=!1;return null===n?s=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(s=new TypeError("Invalid non-string/buffer chunk")),s&&(e.emit("error",s),o.nextTick(r,s),i=!1),i}(this,i,e,n))&&(i.pendingcb++,s=function(e,t,n,r,i,o){if(!n){var s=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=d.from(t,n));return t}(t,r,i);r!==s&&(n=!0,i="buffer",r=s)}var a=t.objectMode?1:r.length;t.length+=a;var f=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(y.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),y.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},y.prototype._writev=null,y.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,S(e,t),n&&(t.finished?o.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)},Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n(13),n(179).setImmediate,n(6))},function(e,t,n){"use strict";var r=n(3).Buffer,i=r.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 o(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&&(r.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=f,this.end=c,t=4;break;case"utf8":this.fillLast=a,t=4;break;case"base64":this.text=u,this.end=l,t=3;break;default:return this.write=d,void(this.end=h)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function s(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function a(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n: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 f(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function c(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function u(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?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-n))}function l(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function h(e){return e&&e.length?this.write(e):""}t.StringDecoder=o,o.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return i>0&&(e.lastNeed=i-1),i;if(--r=0)return i>0&&(e.lastNeed=i-2),i;if(--r=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=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},o.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,n){"use strict";var r=n(2),i=n(93),o=n(3).Buffer,s=new Array(16);function a(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function f(e,t){return e<>>32-t}function c(e,t,n,r,i,o,s){return f(e+(t&n|~t&r)+i+o|0,s)+t|0}function u(e,t,n,r,i,o,s){return f(e+(t&r|n&~r)+i+o|0,s)+t|0}function l(e,t,n,r,i,o,s){return f(e+(t^n^r)+i+o|0,s)+t|0}function d(e,t,n,r,i,o,s){return f(e+(n^(t|~r))+i+o|0,s)+t|0}r(a,i),a.prototype._update=function(){for(var e=s,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var n=this._a,r=this._b,i=this._c,o=this._d;n=c(n,r,i,o,e[0],3614090360,7),o=c(o,n,r,i,e[1],3905402710,12),i=c(i,o,n,r,e[2],606105819,17),r=c(r,i,o,n,e[3],3250441966,22),n=c(n,r,i,o,e[4],4118548399,7),o=c(o,n,r,i,e[5],1200080426,12),i=c(i,o,n,r,e[6],2821735955,17),r=c(r,i,o,n,e[7],4249261313,22),n=c(n,r,i,o,e[8],1770035416,7),o=c(o,n,r,i,e[9],2336552879,12),i=c(i,o,n,r,e[10],4294925233,17),r=c(r,i,o,n,e[11],2304563134,22),n=c(n,r,i,o,e[12],1804603682,7),o=c(o,n,r,i,e[13],4254626195,12),i=c(i,o,n,r,e[14],2792965006,17),n=u(n,r=c(r,i,o,n,e[15],1236535329,22),i,o,e[1],4129170786,5),o=u(o,n,r,i,e[6],3225465664,9),i=u(i,o,n,r,e[11],643717713,14),r=u(r,i,o,n,e[0],3921069994,20),n=u(n,r,i,o,e[5],3593408605,5),o=u(o,n,r,i,e[10],38016083,9),i=u(i,o,n,r,e[15],3634488961,14),r=u(r,i,o,n,e[4],3889429448,20),n=u(n,r,i,o,e[9],568446438,5),o=u(o,n,r,i,e[14],3275163606,9),i=u(i,o,n,r,e[3],4107603335,14),r=u(r,i,o,n,e[8],1163531501,20),n=u(n,r,i,o,e[13],2850285829,5),o=u(o,n,r,i,e[2],4243563512,9),i=u(i,o,n,r,e[7],1735328473,14),n=l(n,r=u(r,i,o,n,e[12],2368359562,20),i,o,e[5],4294588738,4),o=l(o,n,r,i,e[8],2272392833,11),i=l(i,o,n,r,e[11],1839030562,16),r=l(r,i,o,n,e[14],4259657740,23),n=l(n,r,i,o,e[1],2763975236,4),o=l(o,n,r,i,e[4],1272893353,11),i=l(i,o,n,r,e[7],4139469664,16),r=l(r,i,o,n,e[10],3200236656,23),n=l(n,r,i,o,e[13],681279174,4),o=l(o,n,r,i,e[0],3936430074,11),i=l(i,o,n,r,e[3],3572445317,16),r=l(r,i,o,n,e[6],76029189,23),n=l(n,r,i,o,e[9],3654602809,4),o=l(o,n,r,i,e[12],3873151461,11),i=l(i,o,n,r,e[15],530742520,16),n=d(n,r=l(r,i,o,n,e[2],3299628645,23),i,o,e[0],4096336452,6),o=d(o,n,r,i,e[7],1126891415,10),i=d(i,o,n,r,e[14],2878612391,15),r=d(r,i,o,n,e[5],4237533241,21),n=d(n,r,i,o,e[12],1700485571,6),o=d(o,n,r,i,e[3],2399980690,10),i=d(i,o,n,r,e[10],4293915773,15),r=d(r,i,o,n,e[1],2240044497,21),n=d(n,r,i,o,e[8],1873313359,6),o=d(o,n,r,i,e[15],4264355552,10),i=d(i,o,n,r,e[6],2734768916,15),r=d(r,i,o,n,e[13],1309151649,21),n=d(n,r,i,o,e[4],4149444226,6),o=d(o,n,r,i,e[11],3174756917,10),i=d(i,o,n,r,e[2],718787259,15),r=d(r,i,o,n,e[9],3951481745,21),this._a=this._a+n|0,this._b=this._b+r|0,this._c=this._c+i|0,this._d=this._d+o|0},a.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=o.allocUnsafe(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=a},function(e,t,n){"use strict";var r=n(11).Buffer,i=n(2),o=n(93),s=new Array(16),a=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],f=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],c=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],u=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],l=[0,1518500249,1859775393,2400959708,2840853838],d=[1352829926,1548603684,1836072691,2053994217,0];function h(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function p(e,t){return e<>>32-t}function g(e,t,n,r,i,o,s,a){return p(e+(t^n^r)+o+s|0,a)+i|0}function m(e,t,n,r,i,o,s,a){return p(e+(t&n|~t&r)+o+s|0,a)+i|0}function _(e,t,n,r,i,o,s,a){return p(e+((t|~n)^r)+o+s|0,a)+i|0}function y(e,t,n,r,i,o,s,a){return p(e+(t&r|n&~r)+o+s|0,a)+i|0}function b(e,t,n,r,i,o,s,a){return p(e+(t^(n|~r))+o+s|0,a)+i|0}i(h,o),h.prototype._update=function(){for(var e=s,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var n=0|this._a,r=0|this._b,i=0|this._c,o=0|this._d,h=0|this._e,v=0|this._a,A=0|this._b,w=0|this._c,E=0|this._d,S=0|this._e,k=0;k<80;k+=1){var I,R;k<16?(I=g(n,r,i,o,h,e[a[k]],l[0],c[k]),R=b(v,A,w,E,S,e[f[k]],d[0],u[k])):k<32?(I=m(n,r,i,o,h,e[a[k]],l[1],c[k]),R=y(v,A,w,E,S,e[f[k]],d[1],u[k])):k<48?(I=_(n,r,i,o,h,e[a[k]],l[2],c[k]),R=_(v,A,w,E,S,e[f[k]],d[2],u[k])):k<64?(I=y(n,r,i,o,h,e[a[k]],l[3],c[k]),R=m(v,A,w,E,S,e[f[k]],d[3],u[k])):(I=b(n,r,i,o,h,e[a[k]],l[4],c[k]),R=g(v,A,w,E,S,e[f[k]],d[4],u[k])),n=h,h=o,o=p(i,10),i=r,r=I,v=S,S=E,E=p(w,10),w=A,A=R}var T=this._b+i+E|0;this._b=this._c+o+S|0,this._c=this._d+h+v|0,this._d=this._e+n+A|0,this._e=this._a+r+w|0,this._a=T},h.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=r.alloc?r.alloc(20):new r(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=h},function(e,t,n){(t=e.exports=function(e){e=e.toLowerCase();var n=t[e];if(!n)throw new Error(e+" is not supported (we accept pull requests)");return new n}).sha=n(195),t.sha1=n(196),t.sha224=n(197),t.sha256=n(94),t.sha384=n(198),t.sha512=n(95)},function(e,t,n){"use strict";var r=n(14);function i(e){this.options=e,this.type=this.options.type,this.blockSize=8,this._init(),this.buffer=new Array(this.blockSize),this.bufferOff=0}e.exports=i,i.prototype._init=function(){},i.prototype.update=function(e){return 0===e.length?[]:"decrypt"===this.type?this._updateDecrypt(e):this._updateEncrypt(e)},i.prototype._buffer=function(e,t){for(var n=Math.min(this.buffer.length-this.bufferOff,e.length-t),r=0;r0;r--)t+=this._buffer(e,t),n+=this._flushBuffer(i,n);return t+=this._buffer(e,t),i},i.prototype.final=function(e){var t,n;return e&&(t=this.update(e)),n="encrypt"===this.type?this._finalEncrypt():this._finalDecrypt(),t?t.concat(n):n},i.prototype._pad=function(e,t){if(0===t)return!1;for(;t=0||!n.umod(e.prime1)||!n.umod(e.prime2);)n=new r(i(t));return n}e.exports=o,o.getr=s}).call(this,n(11).Buffer)},function(e,t,n){"use strict";var r=t;r.version=n(224).version,r.utils=n(15),r.rand=n(66),r.curve=n(114),r.curves=n(69),r.ec=n(235),r.eddsa=n(239)},function(e,t,n){"use strict";var r,i=t,o=n(70),s=n(114),a=n(15).assert;function f(e){"short"===e.type?this.curve=new s.short(e):"edwards"===e.type?this.curve=new s.edwards(e):this.curve=new s.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,a(this.g.validate(),"Invalid curve"),a(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function c(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var n=new f(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:n}),n}})}i.PresetCurve=f,c("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),c("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),c("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),c("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),c("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),c("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),c("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{r=n(234)}catch(e){r=void 0}c("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",r]})},function(e,t,n){var r=t;r.utils=n(17),r.common=n(30),r.sha=n(228),r.ripemd=n(232),r.hmac=n(233),r.sha1=r.sha.sha1,r.sha256=r.sha.sha256,r.sha224=r.sha.sha224,r.sha384=r.sha.sha384,r.sha512=r.sha.sha512,r.ripemd160=r.ripemd.ripemd160},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MemoryCryptoStore=void 0;var i=n(4),o=r(n(8));t.MemoryCryptoStore=class{constructor(){this._outgoingRoomKeyRequests=[],this._account=null,this._crossSigningKeys=null,this._sessions={},this._sessionProblems={},this._notifiedErrorDevices={},this._inboundGroupSessions={},this._inboundGroupSessionsWithheld={},this._deviceData=null,this._rooms={},this._sessionsNeedingBackup={}}deleteAllData(){return Promise.resolve()}getOrAddOutgoingRoomKeyRequest(e){const t=e.requestBody;return o.promiseTry(()=>{const n=this._getOutgoingRoomKeyRequest(t);return n?(i.logger.log("already have key request outstanding for "+`${t.room_id} / ${t.session_id}: `+"not sending another"),n):(i.logger.log(`enqueueing key request for ${t.room_id} / `+t.session_id),this._outgoingRoomKeyRequests.push(e),e)})}getOutgoingRoomKeyRequest(e){return Promise.resolve(this._getOutgoingRoomKeyRequest(e))}_getOutgoingRoomKeyRequest(e){for(const t of this._outgoingRoomKeyRequests)if(o.deepCompare(t.requestBody,e))return t;return null}getOutgoingRoomKeyRequestByState(e){for(const t of this._outgoingRoomKeyRequests)for(const n of e)if(t.state===n)return Promise.resolve(t);return Promise.resolve(null)}getOutgoingRoomKeyRequestsByTarget(e,t,n){const r=[];for(const i of this._outgoingRoomKeyRequests)for(const o of n)i.state===o&&i.recipients.includes({userId:e,deviceId:t})&&r.push(i);return Promise.resolve(r)}updateOutgoingRoomKeyRequest(e,t,n){for(const r of this._outgoingRoomKeyRequests)if(r.requestId===e)return r.state!=t?(i.logger.warn(`Cannot update room key request from ${t} `+`as it was already updated to ${r.state}`),Promise.resolve(null)):(Object.assign(r,n),Promise.resolve(r));return Promise.resolve(null)}deleteOutgoingRoomKeyRequest(e,t){for(let n=0;ne.time-t.time)}async getEndToEndSessionProblem(e,t){const n=this._sessionProblems[e]||[];if(!n.length)return null;const r=n[n.length-1];for(const e of n)if(e.time>t)return Object.assign({},e,{fixed:r.fixed});return r.fixed?null:r}async filterOutNotifiedErrorDevices(e){const t=this._notifiedErrorDevices,n=[];for(const r of e){const{userId:e,deviceInfo:i}=r;e in t?i.deviceId in t[e]||(n.push(r),t[e][i.deviceId]=!0):(n.push(r),t[e]={[i.deviceId]:!0})}return n}getEndToEndInboundGroupSession(e,t,n,r){const i=e+"/"+t;r(this._inboundGroupSessions[i]||null,this._inboundGroupSessionsWithheld[i]||null)}getAllEndToEndInboundGroupSessions(e,t){for(const e of Object.keys(this._inboundGroupSessions))t({senderKey:e.substr(0,43),sessionId:e.substr(44),sessionData:this._inboundGroupSessions[e]});t(null)}addEndToEndInboundGroupSession(e,t,n,r){const i=e+"/"+t;void 0===this._inboundGroupSessions[i]&&(this._inboundGroupSessions[i]=n)}storeEndToEndInboundGroupSession(e,t,n,r){this._inboundGroupSessions[e+"/"+t]=n}storeEndToEndInboundGroupSessionWithheld(e,t,n,r){const i=e+"/"+t;this._inboundGroupSessionsWithheld[i]=n}getEndToEndDeviceData(e,t){t(this._deviceData)}storeEndToEndDeviceData(e,t){this._deviceData=e}storeEndToEndRoom(e,t,n){this._rooms[e]=t}getEndToEndRooms(e,t){t(this._rooms)}getSessionsNeedingBackup(e){const t=[];for(const n in this._sessionsNeedingBackup)if(this._inboundGroupSessions[n]&&(t.push({senderKey:n.substr(0,43),sessionId:n.substr(44),sessionData:this._inboundGroupSessions[n]}),e&&n.length>=e))break;return Promise.resolve(t)}countSessionsNeedingBackup(){return Promise.resolve(Object.keys(this._sessionsNeedingBackup).length)}unmarkSessionsNeedingBackup(e){for(const t of e){const e=t.senderKey+"/"+t.sessionId;delete this._sessionsNeedingBackup[e]}return Promise.resolve()}markSessionsNeedingBackup(e){for(const t of e){const e=t.senderKey+"/"+t.sessionId;this._sessionsNeedingBackup[e]=!0}return Promise.resolve()}doTxn(e,t,n){return Promise.resolve(n(null))}}},function(e,t,n){"use strict";var r=n(266),i=n(267);function o(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}t.parse=b,t.resolve=function(e,t){return b(e,!1,!0).resolve(t)},t.resolveObject=function(e,t){return e?b(e,!1,!0).resolveObject(t):t},t.format=function(e){i.isString(e)&&(e=b(e));return e instanceof o?e.format():o.prototype.format.call(e)},t.Url=o;var s=/^([a-z0-9.+-]+:)/i,a=/:[0-9]*$/,f=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,c=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),u=["'"].concat(c),l=["%","/","?",";","#"].concat(u),d=["/","?","#"],h=/^[+a-z0-9A-Z_-]{0,63}$/,p=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,g={javascript:!0,"javascript:":!0},m={javascript:!0,"javascript:":!0},_={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},y=n(268);function b(e,t,n){if(e&&i.isObject(e)&&e instanceof o)return e;var r=new o;return r.parse(e,t,n),r}o.prototype.parse=function(e,t,n){if(!i.isString(e))throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var o=e.indexOf("?"),a=-1!==o&&o127?P+="x":P+=M[D];if(!P.match(h)){var N=C.slice(0,R),j=C.slice(R+1),U=M.match(p);U&&(N.push(U[1]),j.unshift(U[2])),j.length&&(b="/"+j.join(".")+b),this.hostname=N.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),O||(this.hostname=r.toASCII(this.hostname));var L=this.port?":"+this.port:"",q=this.hostname||"";this.host=q+L,this.href+=this.host,O&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==b[0]&&(b="/"+b))}if(!g[w])for(R=0,x=u.length;R0)&&n.host.split("@"))&&(n.auth=O.shift(),n.host=n.hostname=O.shift());return n.search=e.search,n.query=e.query,i.isNull(n.pathname)&&i.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.href=n.format(),n}if(!E.length)return n.pathname=null,n.search?n.path="/"+n.search:n.path=null,n.href=n.format(),n;for(var k=E.slice(-1)[0],I=(n.host||e.host||E.length>1)&&("."===k||".."===k)||""===k,R=0,T=E.length;T>=0;T--)"."===(k=E[T])?E.splice(T,1):".."===k?(E.splice(T,1),R++):R&&(E.splice(T,1),R--);if(!A&&!w)for(;R--;R)E.unshift("..");!A||""===E[0]||E[0]&&"/"===E[0].charAt(0)||E.unshift(""),I&&"/"!==E.join("/").substr(-1)&&E.push("");var O,C=""===E[0]||E[0]&&"/"===E[0].charAt(0);S&&(n.hostname=n.host=C?"":E.length?E.shift():"",(O=!!(n.host&&n.host.indexOf("@")>0)&&n.host.split("@"))&&(n.auth=O.shift(),n.host=n.hostname=O.shift()));return(A=A||n.host&&E.length)&&!C&&E.unshift(""),E.length?n.pathname=E.join("/"):(n.pathname=null,n.path=null),i.isNull(n.pathname)&&i.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.auth=e.auth||n.auth,n.slashes=n.slashes||e.slashes,n.href=n.format(),n},o.prototype.parseHost=function(){var e=this.host,t=a.exec(e);t&&(":"!==(t=t[0])&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PushProcessor=s;var r=n(8);const i=["override","content","room","sender","underride"],o=[{rule_id:".m.rule.tombstone",default:!0,enabled:!0,conditions:[{kind:"event_match",key:"type",pattern:"m.room.tombstone"},{kind:"event_match",key:"state_key",pattern:""}],actions:["notify",{set_tweak:"highlight",value:!0}]},{rule_id:".m.rule.reaction",default:!0,enabled:!0,conditions:[{kind:"event_match",key:"type",pattern:"m.reaction"}],actions:["dont_notify"]}];function s(e){const t={},n=(e,t,n)=>{for(let r=0;r]*)([0-9]*)$/);if(!o)return!1;const s=o[1],a=parseInt(o[2]);if(isNaN(a))return!1;switch(s){case"":case"==":return i==a;case"<":return i":return i>a;case"<=":return i<=a;case">=":return i>=a;default:return!1}},l=function(t,n){let i=n.getContent();if(n.isEncrypted()&&n.getClearContent()&&(i=n.getClearContent()),!i||!i.body||"string"!=typeof i.body)return!1;const o=e.getRoom(n.getRoomId());if(!(o&&o.currentState&&o.currentState.members&&o.currentState.getMember(e.credentials.userId)))return!1;const s=o.currentState.getMember(e.credentials.userId).name,a=new RegExp("(^|\\W)"+(0,r.escapeRegExp)(s)+"(\\W|$)","i");return i.body.search(a)>-1},d=function(e,t){return!1},h=function(e,t){if(!e.key)return!1;const n=g(e.key,t);if("string"!=typeof n)return!1;if(e.value)return e.value===n;let r;return r="content.body"==e.key?p("(^|\\W)",e.pattern,"(\\W|$)"):p("^",e.pattern,"$"),!!n.match(r)},p=function(e,n,i){return t[n]?t[n]:(t[n]=new RegExp(e+(0,r.globToRegexp)(n)+i,"i"),t[n])},g=function(e,t){const n=e.split(".");let i;const o=n[0];for("content"===o?(i=t.getContent(),n.shift()):"type"===o?(i=t.getType(),n.shift()):i=t.event;n.length>0;){const e=n.shift();if((0,r.isNullOrUndefined)(i[e]))return null;i=i[e]}return i},m=function(t,r){const i=function(t,r){if(!r||!r.device)return null;if(t.getSender()==e.credentials.userId)return null;const i=Object.keys(r.device);for(let e=0;et.rule_id===e.rule_id)){const t=e.rule_id;console.warn(`Adding default global override for ${t}`),n.push(e)}}return t}(e.pushRules);return m(t,n)},this.getPushRuleById=function(t){for(const n of["device","global"])if(void 0!==e.pushRules[n])for(const r of i)if(void 0!==e.pushRules[n][r])for(const i of e.pushRules[n][r])if(i.rule_id===t)return i;return null}}s.actionListToActionsObject=function(e){const t={notify:!1,tweaks:{}};for(let n=0;n{const t=o.find(t=>t.rule_id===e.rule_id);return t?(e.default=t.default,e.conditions=t.conditions,e.actions=t.actions,e):e}),t}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Filter=o;var r=n(274);function i(e,t,n){const r=t.split(".");let i=e;for(let e=0;et!==e)}if(r)return t+" ("+e+")";return t}(this.userId,e.getDirectionalContent().displayname,t),this.rawDisplayName=e.getDirectionalContent().displayname||this.userId,n!==this.membership&&(this._updateModifiedTime(),this.emit("RoomMember.membership",e,this,n)),r!==this.name&&(this._updateModifiedTime(),this.emit("RoomMember.name",e,this,r))},a.prototype.setPowerLevelEvent=function(e){if("m.room.power_levels"!==e.getType())return;const t=e.getDirectionalContent();let n=t.users_default||0;s.forEach(s.values(t.users),(function(e){n=Math.max(n,e)}));const r=this.powerLevel,i=this.powerLevelNorm;t.users&&void 0!==t.users[this.userId]?this.powerLevel=t.users[this.userId]:void 0!==t.users_default?this.powerLevel=t.users_default:this.powerLevel=0,this.powerLevelNorm=0,n>0&&(this.powerLevelNorm=100*this.powerLevel/n),r===this.powerLevel&&i===this.powerLevelNorm||(this._updateModifiedTime(),this.emit("RoomMember.powerLevel",e,this))},a.prototype.setTypingEvent=function(e){if("m.typing"!==e.getType())return;const t=this.typing;this.typing=!1;const n=e.getContent().user_ids;s.isArray(n)&&(-1!==n.indexOf(this.userId)&&(this.typing=!0),t!==this.typing&&(this._updateModifiedTime(),this.emit("RoomMember.typing",e,this)))},a.prototype._updateModifiedTime=function(){this._modified=Date.now()},a.prototype.getLastModifiedTime=function(){return this._modified},a.prototype.isKicked=function(){return"leave"===this.membership&&this.events.member.getSender()!==this.events.member.getStateKey()},a.prototype.getDMInviter=function(){if(this.events.member){const e=this.events.member;let t=e.getContent(),n=e.getSender();if("join"===t.membership&&(t=e.getPrevContent(),n=e.getUnsigned().prev_sender),"invite"===t.membership&&t.is_direct)return n}},a.prototype.getAvatarUrl=function(e,t,n,r,i,s){void 0===i&&(i=!0);const a=this.getMxcAvatarUrl();if(!a&&!i)return null;const f=(0,o.getHttpUriForMxc)(e,a,t,n,r,s);return f||(i?(0,o.getIdenticonUri)(e,this.userId,t,n):null)},a.prototype.getMxcAvatarUrl=function(){return this.events.member?this.events.member.getDirectionalContent().avatar_url:this.user?this.user.avatarUrl:null}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ReEmitter=void 0;t.ReEmitter=class{constructor(e){this.target=e,this.boundHandlers={}}_handleEvent(e,...t){this.target.emit(e,...t)}reEmit(e,t){const n=(t,...n)=>{t(...n,e)};for(const r of t){void 0===this.boundHandlers[r]&&(this.boundHandlers[r]=this._handleEvent.bind(this,r));const t=n.bind(this,this.boundHandlers[r]);e.on(r,t)}}}},function(e,t,n){"use strict";function r(e,t){const n=`Store is invalid because ${e}, `+"please stop the client, delete all data and start the client again",r=Reflect.construct(Error,[n]);return Reflect.setPrototypeOf(r,Reflect.getPrototypeOf(this)),r.reason=e,r.value=t,r}function i(e){const t=`Crypto store is invalid because ${e}, `+"please stop the client, delete all data and start the client again",n=Reflect.construct(Error,[t]);return Reflect.setPrototypeOf(n,Reflect.getPrototypeOf(this)),n.reason=e,n.name="InvalidCryptoStoreError",n}Object.defineProperty(t,"__esModule",{value:!0}),t.InvalidStoreError=r,t.InvalidCryptoStoreError=i,r.TOGGLED_LAZY_LOADING="TOGGLED_LAZY_LOADING",r.prototype=Object.create(Error.prototype,{constructor:{value:Error,enumerable:!1,writable:!0,configurable:!0}}),Reflect.setPrototypeOf(r,Error),i.TOO_NEW="TOO_NEW",i.prototype=Object.create(Error.prototype,{constructor:{value:Error,enumerable:!1,writable:!0,configurable:!0}}),Reflect.setPrototypeOf(i,Error)},function(e,t,n){"use strict";for(var r=/[\\\"\x00-\x1F]/g,i={},o=0;o<32;++o)i[String.fromCharCode(o)]="\\U"+("0000"+o.toString(16)).slice(-4).toUpperCase();function s(e){return r.lastIndex=0,e.replace(r,(function(e){return i[e]}))}function a(e){switch(typeof e){case"string":return'"'+s(e)+'"';case"number":return isFinite(e)?e:"null";case"boolean":return e;case"object":return null===e?"null":Array.isArray(e)?function(e){for(var t="[",n="",r=0;re+": "+t[e]).join(", "));return n+="]",n}(this,n)}}t.DecryptionError=o;class s extends Error{constructor(e,t){super(e),this.name="UnknownDeviceError",this.devices=t}}t.UnknownDeviceError=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VerificationRequest=t.PHASE_DONE=t.PHASE_CANCELLED=t.PHASE_STARTED=t.PHASE_REQUESTED=t.PHASE_UNSENT=t.DONE_TYPE=t.CANCEL_TYPE=t.START_TYPE=t.REQUEST_TYPE=t.EVENT_PREFIX=void 0;var r=n(4),i=n(294),o=n(10),s=n(34);const a="m.key.verification.";t.EVENT_PREFIX=a;const f=a+"request";t.REQUEST_TYPE=f;const c=a+"start";t.START_TYPE=c;const u=a+"cancel";t.CANCEL_TYPE=u;t.DONE_TYPE="m.key.verification.done";t.PHASE_UNSENT=1;t.PHASE_REQUESTED=2;t.PHASE_STARTED=4;t.PHASE_CANCELLED=5;t.PHASE_DONE=6;class l extends o.EventEmitter{constructor(e,t,n,r){super(),this.channel=e,this._verificationMethods=t,this._client=r,this._commonMethods=[],this._setPhase(1,!1),this._requestEvent=null,this._otherUserId=n,this._initiatedByMe=null,this._startTimestamp=null}static validateEvent(e,t,n,i){const o=t.getContent();if(!e.startsWith(a))return!1;if(e===f&&!Array.isArray(o.methods))return!1;if(!(e!==f&&e!==c||"string"==typeof o.from_device&&0!==o.from_device.length))return!1;if(Number.isFinite(n)){const e=Date.now()-n;if(e>597e3||e<-3e5)return r.logger.log("received verification that is too old or from the future"),!1}return!0}get methods(){return this._commonMethods}get timeout(){const e=Date.now()-this._startTimestamp;return Math.max(0,6e5-e)}get event(){return this._requestEvent}get phase(){return this._phase}get verifier(){return this._verifier}get pending(){return 1!==this._phase&&6!==this._phase&&5!==this._phase}get initiatedByMe(){return this._initiatedByMe}get requestingUserId(){return this.initiatedByMe?this._client.getUserId():this._otherUserId}get receivingUserId(){return this.initiatedByMe?this._otherUserId:this._client.getUserId()}beginKeyVerification(e,t=null){if(!this._verifier&&this._hasValidPreStartPhase()){if(this._commonMethods.length&&!this._commonMethods.includes(e))throw(0,s.newUnknownMethodError)();if(this._verifier=this._createVerifier(e,null,t),!this._verifier)throw(0,s.newUnknownMethodError)()}return this._verifier}async sendRequest(){if(1===this._phase){this._initiatedByMe=!0,this._setPhase(2,!1);const e=[...this._verificationMethods.keys()];await this.channel.send(f,{methods:e}),this.emit("change")}}async cancel({reason:e="User declined",code:t="m.user"}={}){if(5!==this._phase){if(this._verifier)return this._verifier.cancel((0,s.errorFactory)(t,e));this._setPhase(5,!1),await this.channel.send(u,{code:t,reason:e}),this.emit("change")}}waitForVerifier(){return this.verifier?Promise.resolve(this.verifier):new Promise(e=>{const t=()=>{this.verifier&&(this.off("change",t),e(this.verifier))};this.on("change",t)})}_setPhase(e,t=!0){this._phase=e,t&&this.emit("change")}async handleEvent(e,t,n){const r=t.getContent();e!==f&&e!==c||null===this._startTimestamp&&(this._startTimestamp=n),e===f?await this._handleRequest(r,t):e===c&&await this._handleStart(r,t),this._verifier&&(e===u||this._verifier.events&&this._verifier.events.includes(e))&&this._verifier.handleEvent(t),e===u?this._handleCancel():"m.key.verification.done"===e&&this._handleDone()}async _handleRequest(e,t){if(1===this._phase){const n=e.methods;this._commonMethods=n.filter(e=>this._verificationMethods.has(e)),this._requestEvent=t,this._initiatedByMe=this._wasSentByMe(t),this._setPhase(2)}else 2!==this._phase&&(r.logger.warn("Ignoring flagged verification request from "+t.getSender()),await this.cancel((0,s.errorFromEvent)((0,s.newUnexpectedMessageError)())))}_hasValidPreStartPhase(){return 2===this._phase||this.channel.constructor.canCreateRequest(c)&&1===this._phase}async _handleStart(e,t){if(this._hasValidPreStartPhase()){const{method:n}=e;this._verificationMethods.has(n)?(1===this.phase&&(this._initiatedByMe=this._wasSentByMe(t)),this._verifier=this._createVerifier(n,t),this._setPhase(4)):await this.cancel((0,s.errorFromEvent)((0,s.newUnknownMethodError)()))}}handleVerifierSend(e,t){e===u?this._handleCancel():e===c&&(1!==this._phase&&2!==this._phase||(this._initiatedByMe=1===this.phase,this._setPhase(4)))}_handleCancel(){5!==this._phase&&this._setPhase(5)}_handleDone(){4===this._phase&&this._setPhase(6)}_createVerifier(e,t=null,n=null){const r=t&&this._wasSentByMe(t),{userId:o,deviceId:s}=this._getVerifierTarget(t,n),a=this._verificationMethods.get(e);if(a)return new a(new i.RequestCallbackChannel(this,this.channel),this._client,o,s,r?null:t);console.warn("could not find verifier constructor for method",e)}_getVerifierTarget(e,t){if(t)return t;{let t;if(e&&!this._wasSentByMe(e))t=e;else{if(!this._requestEvent||this._wasSentByMe(this._requestEvent))throw new Error("can't determine who the verifier should be targeted at. No .request or .start event and no targetDevice");t=this._requestEvent}const n=t.getSender(),r=t.getContent();return{userId:n,deviceId:r&&r.from_device}}}_wasSentByMe(e){if(e.getSender()!==this._client.getUserId())return!1;const t=e.getContent();return!(!t||t.from_device!==this._client.getDeviceId())}}t.VerificationRequest=l},function(e,t,n){"use strict";var r=Object.prototype.hasOwnProperty,i=Array.isArray,o=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),s=function(e,t){for(var n=t&&t.plainObjects?Object.create(null):{},r=0;r1;){var t=e.pop(),n=t.obj[t.prop];if(i(n)){for(var r=[],o=0;o=48&&a<=57||a>=65&&a<=90||a>=97&&a<=122?i+=r.charAt(s):a<128?i+=o[a]:a<2048?i+=o[192|a>>6]+o[128|63&a]:a<55296||a>=57344?i+=o[224|a>>12]+o[128|a>>6&63]+o[128|63&a]:(s+=1,a=65536+((1023&a)<<10|1023&r.charCodeAt(s)),i+=o[240|a>>18]+o[128|a>>12&63]+o[128|a>>6&63]+o[128|63&a])}return i},isBuffer:function(e){return!(!e||"object"!=typeof e)&&!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},isRegExp:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},maybeMap:function(e,t){if(i(e)){for(var n=[],r=0;r"),M=s(")"),P=s("&");t.Base=o,t.DOMAIN=a,t.AT=f,t.COLON=c,t.DOT=u,t.PUNCTUATION=l,t.LOCALHOST=d,t.NL=h,t.NUM=p,t.PLUS=g,t.POUND=m,t.QUERY=b,t.PROTOCOL=_,t.MAILTO=y,t.SLASH=v,t.UNDERSCORE=A,t.SYM=w,t.TLD=E,t.WS=S,t.OPENBRACE=k,t.OPENBRACKET=I,t.OPENANGLEBRACKET=R,t.OPENPAREN=T,t.CLOSEBRACE=O,t.CLOSEBRACKET=C,t.CLOSEANGLEBRACKET=x,t.CLOSEPAREN=M,t.AMPERSAND=P},function(e,t,n){var r=n(161),i=n(162),o=n(163);e.exports=function(e){return r(e)||i(e)||o()}},function(e,t,n){"use strict";var r=n(0),i=n.n(r),o=(n(9),n(152)),s=n.n(o);t.a=function(e){var t=e.message,n=e.userId,r=e.botId,o=e.client,a=function(){switch(t.sender){case"from-me":case n:return"from-me";case r:return"from-bot";default:return"from-support"}};if(e.placeholder)return i.a.createElement("div",{className:"message from-me placeholder"},i.a.createElement("div",{className:"text"},t.content.body));if("m.file"===t.content.msgtype){var f=o.mxcUrlToHttp(t.content.url);return(i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text"},i.a.createElement("a",{href:f,target:"_blank",rel:"noopener noreferrer"},t.content.body))))}if(t.content.formatted_body)return i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text",dangerouslySetInnerHTML:{__html:t.content.formatted_body}}));return i.a.createElement("div",{className:"message ".concat(a())},i.a.createElement("div",{className:"text"},i.a.createElement(s.a,{options:{linkAttributes:{rel:"noreferrer noopener"}}},t.content.body)))}},function(e,t,n){"use strict";var r=n(0),i=n.n(r);n(9);t.a=function(e){var t=e.handleToggleOpen,n=e.handleExitChat,r=e.opened;return(i.a.createElement("div",{className:"widget-header"},i.a.createElement("button",{type:"button",className:"widget-header-minimize",onClick:t,onKeyPress:t,"aria-label":"Minimize the chat window",title:"Minimize the chat window"},i.a.createElement("span",{className:"btn-icon arrow ".concat(r?"opened":"closed")},"⌃"),i.a.createElement("span",null,"".concat(r?"Hide":"Show"," the chat"))),i.a.createElement("button",{type:"button",className:"widget-header-close",onClick:n,onKeyPress:n,"aria-label":"Exit the chat",title:"Exit the chat"},i.a.createElement("span",{className:"btn-icon"},"×"))))}},function(e,t){function n(t){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?e.exports=n=function(e){return typeof e}:e.exports=n=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(t)}e.exports=n},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){"use strict";(function(t,r){var i=n(40);e.exports=b;var o,s=n(87);b.ReadableState=y;n(10).EventEmitter;var a=function(e,t){return e.listeners(t).length},f=n(89),c=n(57).Buffer,u=t.Uint8Array||function(){};var l=Object.create(n(27));l.inherits=n(2);var d=n(176),h=void 0;h=d&&d.debuglog?d.debuglog("stream"):function(){};var p,g=n(177),m=n(90);l.inherits(b,f);var _=["error","close","destroy","pause","resume"];function y(e,t){e=e||{};var r=t instanceof(o=o||n(20));this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var i=e.highWaterMark,s=e.readableHighWaterMark,a=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(s||0===s)?s:a,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new g,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=n(59).StringDecoder),this.decoder=new p(e.encoding),this.encoding=e.encoding)}function b(e){if(o=o||n(20),!(this instanceof b))return new b(e);this._readableState=new y(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),f.call(this)}function v(e,t,n,r,i){var o,s=e._readableState;null===t?(s.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,E(e)}(e,s)):(i||(o=function(e,t){var n;r=t,c.isBuffer(r)||r instanceof u||"string"==typeof t||void 0===t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk"));var r;return n}(s,t)),o?e.emit("error",o):s.objectMode||t&&t.length>0?("string"==typeof t||s.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),r?s.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):A(e,s,t,!0):s.ended?e.emit("error",new Error("stream.push() after EOF")):(s.reading=!1,s.decoder&&!n?(t=s.decoder.write(t),s.objectMode||0!==t.length?A(e,s,t,!1):k(e,s)):A(e,s,t,!1))):r||(s.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=8388608?e=8388608:(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 E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(h("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i.nextTick(S,e):S(e))}function S(e){h("emit readable"),e.emit("readable"),O(e)}function k(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(I,e,t))}function I(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;eo.length?o.length:e;if(s===o.length?i+=o:i+=o.slice(0,e),0===(e-=s)){s===o.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=o.slice(s));break}++r}return t.length-=r,i}(e,t):function(e,t){var n=c.allocUnsafe(e),r=t.head,i=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var o=r.data,s=e>o.length?o.length:e;if(o.copy(n,n.length-e,0,s),0===(e-=s)){s===o.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=o.slice(s));break}++i}return t.length-=i,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function x(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i.nextTick(M,t,e))}function M(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function P(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return h("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?x(this):E(this),null;if(0===(e=w(e,t))&&t.ended)return 0===t.length&&x(this),null;var r,i=t.needReadable;return h("need readable",i),(0===t.length||t.length-e0?C(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&x(this)),null!==r&&this.emit("data",r),r},b.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},b.prototype.pipe=function(e,t){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,h("pipe count=%d opts=%j",o.pipesCount,t);var f=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?u:b;function c(t,r){h("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,h("cleanup"),e.removeListener("close",_),e.removeListener("finish",y),e.removeListener("drain",l),e.removeListener("error",m),e.removeListener("unpipe",c),n.removeListener("end",u),n.removeListener("end",b),n.removeListener("data",g),d=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}function u(){h("onend"),e.end()}o.endEmitted?i.nextTick(f):n.once("end",f),e.on("unpipe",c);var l=function(e){return function(){var t=e._readableState;h("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,O(e))}}(n);e.on("drain",l);var d=!1;var p=!1;function g(t){h("ondata"),p=!1,!1!==e.write(t)||p||((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==P(o.pipes,e))&&!d&&(h("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,p=!0),n.pause())}function m(t){h("onerror",t),b(),e.removeListener("error",m),0===a(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",y),b()}function y(){h("onfinish"),e.removeListener("close",_),b()}function b(){h("unpipe"),n.unpipe(e)}return n.on("data",g),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?s(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",m),e.once("close",_),e.once("finish",y),e.emit("pipe",n),o.flowing||(h("pipe resume"),n.resume()),e},b.prototype.unpipe=function(e){var t=this._readableState,n={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,n),this);if(!e){var r=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o=this._blockSize;){for(var o=this._blockOffset;o0;++s)this._length[s]+=a,(a=this._length[s]/4294967296|0)>0&&(this._length[s]-=4294967296*a);return this},o.prototype._update=function(){throw new Error("_update is not implemented")},o.prototype.digest=function(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 n=0;n<4;++n)this._length[n]=0;return t},o.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=o},function(e,t,n){var r=n(2),i=n(23),o=n(3).Buffer,s=[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],a=new Array(64);function f(){this.init(),this._w=a,i.call(this,64,56)}function c(e,t,n){return n^e&(t^n)}function u(e,t,n){return e&t|n&(e|t)}function l(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function d(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function h(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}r(f,i),f.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},f.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,i=0|this._b,o=0|this._c,a=0|this._d,f=0|this._e,p=0|this._f,g=0|this._g,m=0|this._h,_=0;_<16;++_)n[_]=e.readInt32BE(4*_);for(;_<64;++_)n[_]=0|(((t=n[_-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+n[_-7]+h(n[_-15])+n[_-16];for(var y=0;y<64;++y){var b=m+d(f)+c(f,p,g)+s[y]+n[y]|0,v=l(r)+u(r,i,o)|0;m=g,g=p,p=f,f=a+b|0,a=o,o=i,i=r,r=b+v|0}this._a=r+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=a+this._d|0,this._e=f+this._e|0,this._f=p+this._f|0,this._g=g+this._g|0,this._h=m+this._h|0},f.prototype._hash=function(){var e=o.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=f},function(e,t,n){var r=n(2),i=n(23),o=n(3).Buffer,s=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],a=new Array(160);function f(){this.init(),this._w=a,i.call(this,128,112)}function c(e,t,n){return n^e&(t^n)}function u(e,t,n){return e&t|n&(e|t)}function l(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function d(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function h(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function g(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function m(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function _(e,t){return e>>>0>>0?1:0}r(f,i),f.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},f.prototype._update=function(e){for(var t=this._w,n=0|this._ah,r=0|this._bh,i=0|this._ch,o=0|this._dh,a=0|this._eh,f=0|this._fh,y=0|this._gh,b=0|this._hh,v=0|this._al,A=0|this._bl,w=0|this._cl,E=0|this._dl,S=0|this._el,k=0|this._fl,I=0|this._gl,R=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 O=t[T-30],C=t[T-30+1],x=h(O,C),M=p(C,O),P=g(O=t[T-4],C=t[T-4+1]),D=m(C,O),B=t[T-14],N=t[T-14+1],j=t[T-32],U=t[T-32+1],L=M+N|0,q=x+B+_(L,M)|0;q=(q=q+P+_(L=L+D|0,D)|0)+j+_(L=L+U|0,U)|0,t[T]=q,t[T+1]=L}for(var F=0;F<160;F+=2){q=t[F],L=t[F+1];var K=u(n,r,i),G=u(v,A,w),z=l(n,v),H=l(v,n),V=d(a,S),Q=d(S,a),W=s[F],Y=s[F+1],X=c(a,f,y),J=c(S,k,I),Z=R+Q|0,$=b+V+_(Z,R)|0;$=($=($=$+X+_(Z=Z+J|0,J)|0)+W+_(Z=Z+Y|0,Y)|0)+q+_(Z=Z+L|0,L)|0;var ee=H+G|0,te=z+K+_(ee,H)|0;b=y,R=I,y=f,I=k,f=a,k=S,a=o+$+_(S=E+Z|0,E)|0,o=i,E=w,i=r,w=A,r=n,A=v,n=$+te+_(v=Z+ee|0,Z)|0}this._al=this._al+v|0,this._bl=this._bl+A|0,this._cl=this._cl+w|0,this._dl=this._dl+E|0,this._el=this._el+S|0,this._fl=this._fl+k|0,this._gl=this._gl+I|0,this._hl=this._hl+R|0,this._ah=this._ah+n+_(this._al,v)|0,this._bh=this._bh+r+_(this._bl,A)|0,this._ch=this._ch+i+_(this._cl,w)|0,this._dh=this._dh+o+_(this._dl,E)|0,this._eh=this._eh+a+_(this._el,S)|0,this._fh=this._fh+f+_(this._fl,k)|0,this._gh=this._gh+y+_(this._gl,I)|0,this._hh=this._hh+b+_(this._hl,R)|0},f.prototype._hash=function(){var e=o.allocUnsafe(64);function t(t,n,r){e.writeInt32BE(t,r),e.writeInt32BE(n,r+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=f},function(e,t,n){"use strict";var r=n(2),i=n(199),o=n(18),s=n(3).Buffer,a=n(97),f=n(61),c=n(62),u=s.alloc(128);function l(e,t){o.call(this,"digest"),"string"==typeof t&&(t=s.from(t));var n="sha512"===e||"sha384"===e?128:64;(this._alg=e,this._key=t,t.length>n)?t=("rmd160"===e?new f:c(e)).update(t).digest():t.lengthn||o!=o)throw new TypeError("Bad key length")}}).call(this,n(11).Buffer)},function(e,t,n){(function(t){var n;t.browser?n="utf-8":n=parseInt(t.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary";e.exports=n}).call(this,n(13))},function(e,t,n){var r=n(97),i=n(61),o=n(62),s=n(100),a=n(101),f=n(3).Buffer,c=f.alloc(128),u={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function l(e,t,n){var s=function(e){function t(t){return o(e).update(t).digest()}return"rmd160"===e||"ripemd160"===e?function(e){return(new i).update(e).digest()}:"md5"===e?r:t}(e),a="sha512"===e||"sha384"===e?128:64;t.length>a?t=s(t):t.length>>0},t.writeUInt32BE=function(e,t,n){e[0+n]=t>>>24,e[1+n]=t>>>16&255,e[2+n]=t>>>8&255,e[3+n]=255&t},t.ip=function(e,t,n,r){for(var i=0,o=0,s=6;s>=0;s-=2){for(var a=0;a<=24;a+=8)i<<=1,i|=t>>>a+s&1;for(a=0;a<=24;a+=8)i<<=1,i|=e>>>a+s&1}for(s=6;s>=0;s-=2){for(a=1;a<=25;a+=8)o<<=1,o|=t>>>a+s&1;for(a=1;a<=25;a+=8)o<<=1,o|=e>>>a+s&1}n[r+0]=i>>>0,n[r+1]=o>>>0},t.rip=function(e,t,n,r){for(var i=0,o=0,s=0;s<4;s++)for(var a=24;a>=0;a-=8)i<<=1,i|=t>>>a+s&1,i<<=1,i|=e>>>a+s&1;for(s=4;s<8;s++)for(a=24;a>=0;a-=8)o<<=1,o|=t>>>a+s&1,o<<=1,o|=e>>>a+s&1;n[r+0]=i>>>0,n[r+1]=o>>>0},t.pc1=function(e,t,n,r){for(var i=0,o=0,s=7;s>=5;s--){for(var a=0;a<=24;a+=8)i<<=1,i|=t>>a+s&1;for(a=0;a<=24;a+=8)i<<=1,i|=e>>a+s&1}for(a=0;a<=24;a+=8)i<<=1,i|=t>>a+s&1;for(s=1;s<=3;s++){for(a=0;a<=24;a+=8)o<<=1,o|=t>>a+s&1;for(a=0;a<=24;a+=8)o<<=1,o|=e>>a+s&1}for(a=0;a<=24;a+=8)o<<=1,o|=e>>a+s&1;n[r+0]=i>>>0,n[r+1]=o>>>0},t.r28shl=function(e,t){return e<>>28-t};var r=[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,n,i){for(var o=0,s=0,a=r.length>>>1,f=0;f>>r[f]&1;for(f=a;f>>r[f]&1;n[i+0]=o>>>0,n[i+1]=s>>>0},t.expand=function(e,t,n){var r=0,i=0;r=(1&e)<<5|e>>>27;for(var o=23;o>=15;o-=4)r<<=6,r|=e>>>o&63;for(o=11;o>=3;o-=4)i|=e>>>o&63,i<<=6;i|=(31&e)<<1|e>>>31,t[n+0]=r>>>0,t[n+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 n=0,r=0;r<4;r++){n<<=4,n|=i[64*r+(e>>>18-6*r&63)]}for(r=0;r<4;r++){n<<=4,n|=i[256+64*r+(t>>>18-6*r&63)]}return n>>>0};var o=[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,n=0;n>>o[n]&1;return t>>>0},t.padSplit=function(e,t,n){for(var r=e.toString(2);r.length>>1];n=o.r28shl(n,a),i=o.r28shl(i,a),o.pc2(n,i,e.keys,s)}},f.prototype._update=function(e,t,n,r){var i=this._desState,s=o.readUInt32BE(e,t),a=o.readUInt32BE(e,t+4);o.ip(s,a,i.tmp,0),s=i.tmp[0],a=i.tmp[1],"encrypt"===this.type?this._encrypt(i,s,a,i.tmp,0):this._decrypt(i,s,a,i.tmp,0),s=i.tmp[0],a=i.tmp[1],o.writeUInt32BE(n,s,r),o.writeUInt32BE(n,a,r+4)},f.prototype._pad=function(e,t){for(var n=e.length-t,r=t;r>>0,s=d}o.rip(a,s,r,i)},f.prototype._decrypt=function(e,t,n,r,i){for(var s=n,a=t,f=e.keys.length-2;f>=0;f-=2){var c=e.keys[f],u=e.keys[f+1];o.expand(s,e.tmp,0),c^=e.tmp[0],u^=e.tmp[1];var l=o.substitute(c,u),d=s;s=(a^o.permute(l))>>>0,a=d}o.rip(s,a,r,i)}},function(e,t,n){var r=n(29),i=n(3).Buffer,o=n(106);function s(e){var t=e._cipher.encryptBlockRaw(e._prev);return o(e._prev),t}t.encrypt=function(e,t){var n=Math.ceil(t.length/16),o=e._cache.length;e._cache=i.concat([e._cache,i.allocUnsafe(16*n)]);for(var a=0;ae;)n.ishrn(1);if(n.isEven()&&n.iadd(a),n.testn(1)||n.iadd(f),t.cmp(f)){if(!t.cmp(c))for(;n.mod(u).cmp(l);)n.iadd(h)}else for(;n.mod(o).cmp(d);)n.iadd(h);if(m(p=n.shrn(1))&&m(n)&&_(p)&&_(n)&&s.test(p)&&s.test(n))return n}}},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){var r=n(12),i=n(66);function o(e){this.rand=e||new i.Rand}e.exports=o,o.create=function(e){return new o(e)},o.prototype._randbelow=function(e){var t=e.bitLength(),n=Math.ceil(t/8);do{var i=new r(this.rand.generate(n))}while(i.cmp(e)>=0);return i},o.prototype._randrange=function(e,t){var n=t.sub(e);return e.add(this._randbelow(n))},o.prototype.test=function(e,t,n){var i=e.bitLength(),o=r.mont(e),s=new r(1).toRed(o);t||(t=Math.max(1,i/48|0));for(var a=e.subn(1),f=0;!a.testn(f);f++);for(var c=e.shrn(f),u=a.toRed(o);t>0;t--){var l=this._randrange(new r(2),a);n&&n(l);var d=l.toRed(o).redPow(c);if(0!==d.cmp(s)&&0!==d.cmp(u)){for(var h=1;h0;t--){var u=this._randrange(new r(2),s),l=e.gcd(u);if(0!==l.cmpn(1))return l;var d=u.toRed(i).redPow(f);if(0!==d.cmp(o)&&0!==d.cmp(c)){for(var h=1;h>8,s=255&i;o?n.push(o,s):n.push(s)}return n},r.zero2=i,r.toHex=o,r.encode=function(e,t){return"hex"===t?o(e):e}},function(e,t,n){"use strict";var r=t;r.base=n(43),r.short=n(225),r.mont=n(226),r.edwards=n(227)},function(e,t,n){"use strict";var r=n(17).rotr32;function i(e,t,n){return e&t^~e&n}function o(e,t,n){return e&t^e&n^t&n}function s(e,t,n){return e^t^n}t.ft_1=function(e,t,n,r){return 0===e?i(t,n,r):1===e||3===e?s(t,n,r):2===e?o(t,n,r):void 0},t.ch32=i,t.maj32=o,t.p32=s,t.s0_256=function(e){return r(e,2)^r(e,13)^r(e,22)},t.s1_256=function(e){return r(e,6)^r(e,11)^r(e,25)},t.g0_256=function(e){return r(e,7)^r(e,18)^e>>>3},t.g1_256=function(e){return r(e,17)^r(e,19)^e>>>10}},function(e,t,n){"use strict";var r=n(17),i=n(30),o=n(115),s=n(14),a=r.sum32,f=r.sum32_4,c=r.sum32_5,u=o.ch32,l=o.maj32,d=o.s0_256,h=o.s1_256,p=o.g0_256,g=o.g1_256,m=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 y(){if(!(this instanceof y))return new y;m.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=_,this.W=new Array(64)}r.inherits(y,m),e.exports=y,y.blockSize=512,y.outSize=256,y.hmacStrength=192,y.padLength=64,y.prototype._update=function(e,t){for(var n=this.W,r=0;r<16;r++)n[r]=e[t+r];for(;r>6],i=0==(32&n);if(31==(31&n)){var o=n;for(n=0;128==(128&o);){if(o=e.readUInt8(t),e.isError(o))return o;n<<=7,n|=127&o}}else n&=31;return{cls:r,primitive:i,tag:n,tagStr:a.tag[n]}}function l(e,t,n){var r=e.readUInt8(n);if(e.isError(r))return r;if(!t&&128===r)return null;if(0==(128&r))return r;var i=127&r;if(i>4)return e.error("length octect is too long");r=0;for(var o=0;o=31)return r.error("Multi-octet tag encoding unsupported");t||(i|=32);return i|=a.tagClassByName[n||"universal"]<<6}(e,t,n,this.reporter);if(r.length<128)return(o=new i(2))[0]=s,o[1]=r.length,this._createEncoderBuffer([o,r]);for(var f=1,c=r.length;c>=256;c>>=8)f++;(o=new i(2+f))[0]=s,o[1]=128|f;c=1+f;for(var u=r.length;u>0;c--,u>>=8)o[c]=255&u;return this._createEncoderBuffer([o,r])},c.prototype._encodeStr=function(e,t){if("bitstr"===t)return this._createEncoderBuffer([0|e.unused,e.data]);if("bmpstr"===t){for(var n=new i(2*e.length),r=0;r=40)return this.reporter.error("Second objid identifier OOB");e.splice(0,2,40*e[0]+e[1])}var o=0;for(r=0;r=128;s>>=7)o++}var a=new i(o),f=a.length-1;for(r=e.length-1;r>=0;r--){s=e[r];for(a[f--]=127&s;(s>>=7)>0;)a[f--]=128|127&s}return this._createEncoderBuffer(a)},c.prototype._encodeTime=function(e,t){var n,r=new Date(e);return"gentime"===t?n=[u(r.getFullYear()),u(r.getUTCMonth()+1),u(r.getUTCDate()),u(r.getUTCHours()),u(r.getUTCMinutes()),u(r.getUTCSeconds()),"Z"].join(""):"utctime"===t?n=[u(r.getFullYear()%100),u(r.getUTCMonth()+1),u(r.getUTCDate()),u(r.getUTCHours()),u(r.getUTCMinutes()),u(r.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+t+" time is not supported yet"),this._encodeStr(n,"octstr")},c.prototype._encodeNull=function(){return this._createEncoderBuffer("")},c.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 n=e.toArray();!e.sign&&128&n[0]&&n.unshift(0),e=new i(n)}if(i.isBuffer(e)){var r=e.length;0===e.length&&r++;var o=new i(r);return e.copy(o),0===e.length&&(o[0]=0),this._createEncoderBuffer(o)}if(e<128)return this._createEncoderBuffer(e);if(e<256)return this._createEncoderBuffer([0,e]);r=1;for(var s=e;s>=256;s>>=8)r++;for(s=(o=new Array(r)).length-1;s>=0;s--)o[s]=255&e,e>>=8;return 128&o[0]&&o.unshift(0),this._createEncoderBuffer(new i(o))},c.prototype._encodeBool=function(e){return this._createEncoderBuffer(e?255:0)},c.prototype._use=function(e,t){return"function"==typeof e&&(e=e(t)),e._getEncoder("der").tree},c.prototype._skipDefault=function(e,t,n){var r,i=this._baseState;if(null===i.default)return!1;var o=e.join();if(void 0===i.defaultBuffer&&(i.defaultBuffer=this._encodeValue(i.default,t,n).join()),o.length!==i.defaultBuffer.length)return!1;for(r=0;r(0,o.default)(n(134)));let M;t.ContentHelpers=x;let P=()=>new s.MemoryCryptoStore}).call(this,n(6))},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MemoryStore=s;var i=n(45),o=r(n(8));function s(e){e=e||{},this.rooms={},this.groups={},this.users={},this.syncToken=null,this.filters={},this.accountData={},this.localStorage=e.localStorage,this._oobMembers={},this._clientOptions={}}s.prototype={getSyncToken:function(){return this.syncToken},isNewlyCreated:function(){return Promise.resolve(!0)},setSyncToken:function(e){this.syncToken=e},storeGroup:function(e){this.groups[e.groupId]=e},getGroup:function(e){return this.groups[e]||null},getGroups:function(){return o.values(this.groups)},storeRoom:function(e){this.rooms[e.roomId]=e,e.currentState.on("RoomState.members",this._onRoomMember.bind(this));const t=this;e.currentState.getMembers().forEach((function(n){t._onRoomMember(null,e.currentState,n)}))},_onRoomMember:function(e,t,n){if("invite"===n.membership)return;const r=this.users[n.userId]||new i.User(n.userId);n.name&&(r.setDisplayName(n.name),n.events.member&&r.setRawDisplayName(n.events.member.getDirectionalContent().displayname)),n.events.member&&n.events.member.getContent().avatar_url&&r.setAvatarUrl(n.events.member.getContent().avatar_url),this.users[r.userId]=r},getRoom:function(e){return this.rooms[e]||null},getRooms:function(){return o.values(this.rooms)},removeRoom:function(e){this.rooms[e]&&this.rooms[e].removeListener("RoomState.members",this._onRoomMember),delete this.rooms[e]},getRoomSummaries:function(){return o.map(o.values(this.rooms),(function(e){return e.summary}))},storeUser:function(e){this.users[e.userId]=e},getUser:function(e){return this.users[e]||null},getUsers:function(){return o.values(this.users)},scrollback:function(e,t){return[]},storeEvents:function(e,t,n,r){},storeFilter:function(e){e&&(this.filters[e.userId]||(this.filters[e.userId]={}),this.filters[e.userId][e.filterId]=e)},getFilter:function(e,t){return this.filters[e]&&this.filters[e][t]?this.filters[e][t]:null},getFilterIdByName:function(e){if(!this.localStorage)return null;try{return this.localStorage.getItem("mxjssdk_memory_filter_"+e)}catch(e){}return null},setFilterIdByName:function(e,t){if(this.localStorage)try{this.localStorage.setItem("mxjssdk_memory_filter_"+e,t)}catch(e){}},storeAccountDataEvents:function(e){const t=this;e.forEach((function(e){t.accountData[e.getType()]=e}))},getAccountData:function(e){return this.accountData[e]},setSyncData:function(e){return Promise.resolve()},wantsSave:function(){return!1},save:function(e){},startup:function(){return Promise.resolve()},getSavedSync:function(){return Promise.resolve(null)},getSavedSyncToken:function(){return Promise.resolve(null)},deleteAllData:function(){return this.rooms={},this.users={},this.syncToken=null,this.filters={},this.accountData={},Promise.resolve()},getOutOfBandMembers:function(e){return Promise.resolve(this._oobMembers[e]||null)},setOutOfBandMembers:function(e,t){return this._oobMembers[e]=t,Promise.resolve()},clearOutOfBandMembers:function(){return this._oobMembers={},Promise.resolve()},getClientOptions:function(){return Promise.resolve(this._clientOptions)},storeClientOptions:function(e){return this._clientOptions=Object.assign({},e),Promise.resolve()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SERVICE_TYPES=void 0;const r=Object.freeze({IS:"SERVICE_TYPE_IS",IM:"SERVICE_TYPE_IM"});t.SERVICE_TYPES=r},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.Room=m;var i=n(10),o=n(130),s=n(24),a=n(47),f=r(n(8)),c=n(19),u=n(75),l=n(277),d=n(4),h=n(76);const p=["1","2","3","4","5"];function g(e,t,n){const r={content:{},type:"m.receipt",room_id:t.getRoomId()};return r.content[t.getId()]={},r.content[t.getId()][n]={},r.content[t.getId()][n][e]={ts:t.getTs()},new c.MatrixEvent(r)}function m(e,t,n,r){if((r=r||{}).pendingEventOrdering=r.pendingEventOrdering||"chronological",this.reEmitter=new h.ReEmitter(this),-1===["chronological","detached"].indexOf(r.pendingEventOrdering))throw new Error("opts.pendingEventOrdering MUST be either 'chronological' or 'detached'. Got: '"+r.pendingEventOrdering+"'");this.myUserId=n,this.roomId=e,this.name=e,this.tags={},this.accountData={},this.summary=null,this.storageToken=r.storageToken,this._opts=r,this._txnToEvent={},this._receipts={},this._receiptCacheByEventId={},this._realReceipts={},this._notificationCounts={},this._timelineSets=[new o.EventTimelineSet(this,r)],this.reEmitter.reEmit(this.getUnfilteredTimelineSet(),["Room.timeline","Room.timelineReset"]),this._fixUpLegacyTimelineFields(),this._filteredTimelineSets={},"detached"==this._opts.pendingEventOrdering&&(this._pendingEventList=[]),this._blacklistUnverifiedDevices=null,this._selfMembership=null,this._summaryHeroes=null,this._client=t,this._opts.lazyLoadMembers?this._membersPromise=null:this._membersPromise=Promise.resolve()}f.inherits(m,i.EventEmitter),m.prototype.getVersion=function(){const e=this.currentState.getStateEvents("m.room.create","");if(!e)return d.logger.warn("Room "+this.room_id+" does not have an m.room.create event"),"1";const t=e.getContent().room_version;return void 0===t?"1":t},m.prototype.shouldUpgradeToVersion=function(){return p.includes(this.getVersion())?null:"5"},m.prototype.getRecommendedVersion=async function(){let e=(await this._client.getCapabilities())["m.room_versions"];if(!e){e={default:"5",available:{}};for(const t of p)e.available[t]="stable"}let t=this._checkVersionAgainstCapability(e);if(t.urgent&&t.needsUpgrade){if(d.logger.warn("Refreshing room version capability because the server looks to be supporting a newer room version we don't know about."),e=(await this._client.getCapabilities(!0))["m.room_versions"],!e)return d.logger.warn("No room version capability - assuming upgrade required."),t;t=this._checkVersionAgainstCapability(e)}return t},m.prototype._checkVersionAgainstCapability=function(e){const t=this.getVersion();d.logger.log(`[${this.roomId}] Current version: ${t}`),d.logger.log(`[${this.roomId}] Version capability: `,e);const n={version:t,needsUpgrade:!1,urgent:!1};return t===e.default?n:Object.keys(e.available).filter(t=>"stable"===e.available[t]).includes(t)?n:(n.version=e.default,n.needsUpgrade=!0,n.urgent=!!this.getVersion().match(/^[0-9]+[0-9.]*$/g),n.urgent?d.logger.warn(`URGENT upgrade required on ${this.roomId}`):d.logger.warn(`Non-urgent upgrade required on ${this.roomId}`),n)},m.prototype.userMayUpgradeRoom=function(e){return this.currentState.maySendStateEvent("m.room.tombstone",e)},m.prototype.getPendingEvents=function(){if("detached"!==this._opts.pendingEventOrdering)throw new Error("Cannot call getPendingEvents with pendingEventOrdering == "+this._opts.pendingEventOrdering);return this._pendingEventList},m.prototype.hasPendingEvent=function(e){if("detached"!==this._opts.pendingEventOrdering)throw new Error("Cannot call hasPendingEvent with pendingEventOrdering == "+this._opts.pendingEventOrdering);return this._pendingEventList.some(t=>t.getId()===e)},m.prototype.getLiveTimeline=function(){return this.getUnfilteredTimelineSet().getLiveTimeline()},m.prototype.getLastActiveTimestamp=function(){const e=this.getLiveTimeline().getEvents();if(e.length){return e[e.length-1].getTs()}return Number.MIN_SAFE_INTEGER},m.prototype.getMyMembership=function(){return this._selfMembership},m.prototype.getDMInviter=function(){if(this.myUserId){const e=this.getMember(this.myUserId);if(e)return e.getDMInviter()}if("invite"===this._selfMembership){if(2==this.getInvitedAndJoinedMemberCount()&&this._summaryHeroes.length)return this._summaryHeroes[0]}},m.prototype.guessDMUserId=function(){const e=this.getMember(this.myUserId);if(e){const t=e.getDMInviter();if(t)return t}if(Array.isArray(this._summaryHeroes)&&this._summaryHeroes.length)return this._summaryHeroes[0];const t=this.currentState.getMembers().find(e=>e.userId!==this.myUserId);return t?t.userId:this.myUserId},m.prototype.getAvatarFallbackMember=function(){if(this.getInvitedAndJoinedMemberCount()>2)return;const e=Array.isArray(this._summaryHeroes)&&this._summaryHeroes.length;if(e){const e=this._summaryHeroes.map(e=>this.getMember(e)).find(e=>!!e);if(e)return e}const t=this.currentState.getMembers();if(t.length<=2){const e=t.find(e=>e.userId!==this.myUserId);if(e)return e}if(e){const e=this._summaryHeroes.map(e=>this._client.getUser(e)).find(e=>!!e);if(e){const t=new u.RoomMember(this.roomId,e.userId);return t.user=e,t}}},m.prototype.updateMyMembership=function(e){const t=this._selfMembership;this._selfMembership=e,t!==e&&("leave"===e&&this._cleanupAfterLeaving(),this.emit("Room.myMembership",this,e,t))},m.prototype._loadMembersFromServer=async function(){const e=this._client.store.getSyncToken(),t=f.encodeParams({not_membership:"leave",at:e}),n=f.encodeUri("/rooms/$roomId/members?"+t,{$roomId:this.roomId}),r=this._client._http;return(await r.authedRequest(void 0,"GET",n)).chunk},m.prototype._loadMembers=async function(){let e=!1,t=await this._client.store.getOutOfBandMembers(this.roomId);return null===t&&(e=!0,t=await this._loadMembersFromServer(),d.logger.log(`LL: got ${t.length} `+`members from server for room ${this.roomId}`)),{memberEvents:t.map(this._client.getEventMapper()),fromServer:e}},m.prototype.loadMembersIfNeeded=function(){if(this._membersPromise)return this._membersPromise;this.currentState.markOutOfBandMembersStarted();const e=this._loadMembers().then(e=>(this.currentState.setOutOfBandMembers(e.memberEvents),this._client.isCryptoEnabled()&&this._client.isRoomEncrypted(this.roomId)&&this._client._crypto.trackRoomDevices(this.roomId),e.fromServer)).catch(e=>{throw this._membersPromise=null,this.currentState.markOutOfBandMembersFailed(),e});return e.then(e=>{if(e){const e=this.currentState.getMembers().filter(e=>e.isOutOfBand()).map(e=>e.events.member.event);return d.logger.log(`LL: telling store to write ${e.length}`+` members for room ${this.roomId}`),this._client.store.setOutOfBandMembers(this.roomId,e).catch(e=>{d.logger.log("LL: storing OOB room members failed, oh well",e)})}}).catch(e=>{d.logger.error(e)}),this._membersPromise=e,this._membersPromise},m.prototype.clearLoadedMembersIfNeeded=async function(){this._opts.lazyLoadMembers&&this._membersPromise&&(await this.loadMembersIfNeeded(),await this._client.store.clearOutOfBandMembers(this.roomId),this.currentState.clearOutOfBandMembers(),this._membersPromise=null)},m.prototype._cleanupAfterLeaving=function(){this.clearLoadedMembersIfNeeded().catch(e=>{d.logger.error("error after clearing loaded members from "+`room ${this.roomId} after leaving`),d.logger.log(e)})},m.prototype.resetLiveTimeline=function(e,t){for(let n=0;ne.isUnverified()))return!0}return!1},m.prototype.getTimelineSets=function(){return this._timelineSets},m.prototype.getUnfilteredTimelineSet=function(){return this._timelineSets[0]},m.prototype.getTimelineForEvent=function(e){return this.getUnfilteredTimelineSet().getTimelineForEvent(e)},m.prototype.addTimeline=function(){return this.getUnfilteredTimelineSet().addTimeline()},m.prototype.findEventById=function(e){return this.getUnfilteredTimelineSet().findEventById(e)},m.prototype.getUnreadNotificationCount=function(e){return e=e||"total",this._notificationCounts[e]},m.prototype.setUnreadNotificationCount=function(e,t){this._notificationCounts[e]=t},m.prototype.setSummary=function(e){const t=e["m.heroes"],n=e["m.joined_member_count"],r=e["m.invited_member_count"];Number.isInteger(n)&&this.currentState.setJoinedMemberCount(n),Number.isInteger(r)&&this.currentState.setInvitedMemberCount(r),Array.isArray(t)&&(this._summaryHeroes=t.filter(e=>e!==this.myUserId))},m.prototype.setBlacklistUnverifiedDevices=function(e){this._blacklistUnverifiedDevices=e},m.prototype.getBlacklistUnverifiedDevices=function(){return this._blacklistUnverifiedDevices},m.prototype.getAvatarUrl=function(e,t,n,r,i){const o=this.currentState.getStateEvents("m.room.avatar","");if(void 0===i&&(i=!0),!o&&!i)return null;const s=o?o.getContent().url:null;return s?(0,a.getHttpUriForMxc)(e,s,t,n,r):i?(0,a.getIdenticonUri)(e,this.roomId,t,n):null},m.prototype.getAliases=function(){const e=[],t=this.currentState.getStateEvents("m.room.aliases");if(t)for(let n=0;n"string"==typeof e&&("#"===e[0]&&!!e.endsWith(`:${r.getStateKey()}`)));Array.prototype.push.apply(e,t)}}return e},m.prototype.getCanonicalAlias=function(){const e=this.currentState.getStateEvents("m.room.canonical_alias","");return e?e.getContent().alias:null},m.prototype.addEventsToTimeline=function(e,t,n,r){n.getTimelineSet().addEventsToTimeline(e,t,n,r)},m.prototype.getMember=function(e){return this.currentState.getMember(e)},m.prototype.getJoinedMembers=function(){return this.getMembersWithMembership("join")},m.prototype.getJoinedMemberCount=function(){return this.currentState.getJoinedMemberCount()},m.prototype.getInvitedMemberCount=function(){return this.currentState.getInvitedMemberCount()},m.prototype.getInvitedAndJoinedMemberCount=function(){return this.getInvitedMemberCount()+this.getJoinedMemberCount()},m.prototype.getMembersWithMembership=function(e){return f.filter(this.currentState.getMembers(),(function(t){return t.membership===e}))},m.prototype.getEncryptionTargetMembers=async function(){await this.loadMembersIfNeeded();let e=this.getMembersWithMembership("join");return this.shouldEncryptForInvitedMembers()&&(e=e.concat(this.getMembersWithMembership("invite"))),e},m.prototype.shouldEncryptForInvitedMembers=function(){const e=this.currentState.getStateEvents("m.room.history_visibility","");return e&&e.getContent()&&"joined"!==e.getContent().history_visibility},m.prototype.getDefaultRoomName=function(e){return y(this,e,!0)},m.prototype.hasMembershipState=function(e,t){const n=this.getMember(e);return!!n&&n.membership===t},m.prototype.getOrCreateFilteredTimelineSet=function(e){if(this._filteredTimelineSets[e.filterId])return this._filteredTimelineSets[e.filterId];const t=Object.assign({filter:e},this._opts),n=new o.EventTimelineSet(this,t);this.reEmitter.reEmit(n,["Room.timeline","Room.timelineReset"]),this._filteredTimelineSets[e.filterId]=n,this._timelineSets.push(n);const r=this.getLiveTimeline();r.getEvents().forEach((function(e){n.addLiveEvent(e)}));let i=r;for(;i.getNeighbouringTimeline(s.EventTimeline.BACKWARDS);)i=i.getNeighbouringTimeline(s.EventTimeline.BACKWARDS);return n.getLiveTimeline().setPaginationToken(i.getPaginationToken(s.EventTimeline.BACKWARDS),s.EventTimeline.BACKWARDS),n},m.prototype.removeFilteredTimelineSet=function(e){const t=this._filteredTimelineSets[e.filterId];delete this._filteredTimelineSets[e.filterId];const n=this._timelineSets.indexOf(t);n>-1&&this._timelineSets.splice(n,1)},m.prototype._addLiveEvent=function(e,t){if(e.isRedaction()){const t=e.event.redacts,n=this.getUnfilteredTimelineSet().findEventById(t);if(n){if(n.makeRedacted(e),n.getStateKey()){this.currentState.getStateEvents(n.getType(),n.getStateKey()).getId()===n.getId()&&this.currentState.setStateEvents([n])}this.emit("Room.redaction",e,this)}}if(e.getUnsigned().transaction_id){const t=this._txnToEvent[e.getUnsigned().transaction_id];if(t)return void this._handleRemoteEcho(e,t)}for(let n=0;ne.status===c.EventStatus.NOT_SENT)&&(d.logger.warn("Setting event as NOT_SENT due to messages in the same state"),e.setStatus(c.EventStatus.NOT_SENT)),this._pendingEventList.push(e),e.isRelation()&&this._aggregateNonLiveRelation(e),e.isRedaction()){const t=e.event.redacts;let n=this._pendingEventList&&this._pendingEventList.find(e=>e.getId()===t);n||(n=this.getUnfilteredTimelineSet().findEventById(t)),n&&(n.markLocallyRedacted(e),this.emit("Room.redaction",e,this))}}else for(let t=0;t{const n=e.getMember(t);return n?n.name:t});else{let n=e.currentState.getMembers().filter(e=>e.userId!==t&&("invite"===e.membership||"join"===e.membership));n.sort((e,t)=>e.userId.localeCompare(t.userId)),n=n.slice(0,5),o=n.map(e=>e.name)}if(i)return b(o,i);if("join"==e.getMyMembership()){const t=e.currentState.getStateEvents("m.room.third_party_invite");if(t&&t.length){return`Inviting ${b(t.map(e=>e.getContent().display_name))}`}}let s=o;return s.length||(s=e.currentState.getMembers().filter(e=>e.userId!==t&&"invite"!==e.membership&&"join"!==e.membership).map(e=>e.name)),s.length?`Empty room (was ${b(s)})`:"Empty room"}function b(e,t=e.length+1){const n=t-1;if(e.length){if(1===e.length&&n<=1)return e[0];if(2===e.length&&n<=2)return`${e[0]} and ${e[1]}`;return n>1?`${e[0]} and ${n} others`:`${e[0]} and 1 other`}return"Empty room"}_[c.EventStatus.ENCRYPTING]=[c.EventStatus.SENDING,c.EventStatus.NOT_SENT],_[c.EventStatus.SENDING]=[c.EventStatus.ENCRYPTING,c.EventStatus.QUEUED,c.EventStatus.NOT_SENT,c.EventStatus.SENT],_[c.EventStatus.QUEUED]=[c.EventStatus.SENDING,c.EventStatus.CANCELLED],_[c.EventStatus.SENT]=[],_[c.EventStatus.NOT_SENT]=[c.EventStatus.SENDING,c.EventStatus.QUEUED,c.EventStatus.CANCELLED],_[c.EventStatus.CANCELLED]=[],m.prototype.updatePendingEvent=function(e,t,n){if(d.logger.log(`setting pendingEvent status to ${t} in ${e.getRoomId()}`),t==c.EventStatus.SENT&&!n)throw new Error("updatePendingEvent called with status=SENT, but no new event id");if(t==c.EventStatus.SENT){if(this.getUnfilteredTimelineSet().eventIdToTimeline(n))return}const r=e.status,i=e.getId();if(!r)throw new Error("updatePendingEventStatus called on an event which is not a local echo.");const o=_[r];if(!o||o.indexOf(t)<0)throw new Error("Invalid EventStatus transition "+r+"->"+t);if(e.setStatus(t),t==c.EventStatus.SENT){e.replaceLocalEventId(n);for(let e=0;ee.getId()===i);if(-1!==e){const[t]=this._pendingEventList.splice(e,1);t.isRedaction()&&this._revertRedactionLocalEcho(t)}}this.removeEvent(i)}this.emit("Room.localEchoUpdated",e,this,i,r)},m.prototype._revertRedactionLocalEcho=function(e){const t=e.event.redacts;if(!t)return;const n=this.getUnfilteredTimelineSet().findEventById(t);n&&(n.unmarkLocallyRedacted(),this.emit("Room.redactionCancelled",e,this),n.isRelation()&&this._aggregateNonLiveRelation(n))},m.prototype.addLiveEvents=function(e,t){let n;if(t&&-1===["replace","ignore"].indexOf(t))throw new Error("duplicateStrategy MUST be either 'replace' or 'ignore'");for(n=0;n=0;--e){const r=this.timeline[e];if(r.getId()===t)return!1;if(r.getId()===n)return!0}return!1},m.prototype.getReceiptsForEvent=function(e){return this._receiptCacheByEventId[e.getId()]||[]},m.prototype.addReceipt=function(e,t){void 0===t&&(t=!1),t||this._addReceiptsToStructure(e,this._realReceipts),this._addReceiptsToStructure(e,this._receipts),this._receiptCacheByEventId=this._buildReceiptCache(this._receipts),this.emit("Room.receipt",e,this)},m.prototype._addReceiptsToStructure=function(e,t){const n=this;f.keys(e.getContent()).forEach((function(r){f.keys(e.getContent()[r]).forEach((function(i){f.keys(e.getContent()[r][i]).forEach((function(o){const s=e.getContent()[r][i][o];t[i]||(t[i]={});const a=t[i][o];if(a){const e=n.getUnfilteredTimelineSet().compareEventOrdering(a.eventId,r);if(null!==e&&e>=0)return}else t[i][o]={};t[i][o]={eventId:r,data:s}}))}))}))},m.prototype._buildReceiptCache=function(e){const t={};return f.keys(e).forEach((function(n){f.keys(e[n]).forEach((function(r){const i=e[n][r];t[i.eventId]||(t[i.eventId]=[]),t[i.eventId].push({userId:r,type:n,data:i.data})}))})),t},m.prototype._addLocalEchoReceipt=function(e,t,n){this.addReceipt(g(e,t,n),!0)},m.prototype.addTags=function(e){this.tags=e.getContent().tags||{},this.emit("Room.tags",e,this)},m.prototype.addAccountData=function(e){for(let t=0;t{this.aggregateRelations(e)});const t=e.getRelation();if(!t)return;const n=t.event_id,r=t.rel_type,i=e.getType();let o=this._relations[n];o||(o=this._relations[n]={});let a=o[r];a||(a=o[r]={});let f,u=a[i],l=!1;u||(u=a[i]=new c.Relations(r,i,this.room),l=!0,f=this.findEventById(n),f&&u.setTargetEvent(f)),u.addEvent(e),l&&f&&f.emit("Event.relationsCreated",r,i)}},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.RoomState=f;var i=n(10),o=n(75),s=n(4),a=r(n(8));function f(e,t){this.roomId=e,this.members={},this.events={},this.paginationToken=null,this._sentinels={},this._updateModifiedTime(),this._displayNameToUserIds={},this._userIdsToDisplayNames={},this._tokenToInvite={},this._joinedMemberCount=null,this._summaryJoinedMemberCount=null,this._invitedMemberCount=null,this._summaryInvitedMemberCount=null,t||(t={status:1}),this._oobMemberFlags=t}function c(e,t,n){const r=e._userIdsToDisplayNames[t];if(delete e._userIdsToDisplayNames[t],r){const n=a.removeHiddenChars(r),i=e._displayNameToUserIds[n];if(i){const r=i.filter(e=>e!==t);e._displayNameToUserIds[n]=r}}e._userIdsToDisplayNames[t]=n;const i=n&&a.removeHiddenChars(n);i&&(e._displayNameToUserIds[i]||(e._displayNameToUserIds[i]=[]),e._displayNameToUserIds[i].push(t))}a.inherits(f,i.EventEmitter),f.prototype.getJoinedMemberCount=function(){return null!==this._summaryJoinedMemberCount?this._summaryJoinedMemberCount:(null===this._joinedMemberCount&&(this._joinedMemberCount=this.getMembers().reduce((e,t)=>"join"===t.membership?e+1:e,0)),this._joinedMemberCount)},f.prototype.setJoinedMemberCount=function(e){this._summaryJoinedMemberCount=e},f.prototype.getInvitedMemberCount=function(){return null!==this._summaryInvitedMemberCount?this._summaryInvitedMemberCount:(null===this._invitedMemberCount&&(this._invitedMemberCount=this.getMembers().reduce((e,t)=>"invite"===t.membership?e+1:e,0)),this._invitedMemberCount)},f.prototype.setInvitedMemberCount=function(e){this._summaryInvitedMemberCount=e},f.prototype.getMembers=function(){return a.values(this.members)},f.prototype.getMembersExcept=function(e){return a.values(this.members).filter(t=>!e.includes(t.userId))},f.prototype.getMember=function(e){return this.members[e]||null},f.prototype.getSentinelMember=function(e){if(!e)return null;let t=this._sentinels[e];if(void 0===t){t=new o.RoomMember(this.roomId,e);const n=this.members[e];n&&t.setMembershipEvent(n.events.member,this),this._sentinels[e]=t}return t},f.prototype.getStateEvents=function(e,t){if(!this.events[e])return void 0===t?[]:null;if(void 0===t)return a.values(this.events[e]);const n=this.events[e][t];return n||null},f.prototype.clone=function(){const e=new f(this.roomId,this._oobMemberFlags),t=this._oobMemberFlags.status;return this._oobMemberFlags.status=1,Object.values(this.events).forEach(t=>{const n=Object.values(t);e.setStateEvents(n)}),this._oobMemberFlags.status=t,null!==this._summaryInvitedMemberCount&&e.setInvitedMemberCount(this.getInvitedMemberCount()),null!==this._summaryJoinedMemberCount&&e.setJoinedMemberCount(this.getJoinedMemberCount()),3==this._oobMemberFlags.status&&this.getMembers().forEach(t=>{if(t.isOutOfBand()){e.getMember(t.userId).markOutOfBand()}}),e},f.prototype.setUnknownStateEvents=function(e){const t=e.filter(e=>void 0===this.events[e.getType()]||void 0===this.events[e.getType()][e.getStateKey()]);this.setStateEvents(t)},f.prototype.setStateEvents=function(e){const t=this;this._updateModifiedTime(),a.forEach(e,(function(e){e.getRoomId()===t.roomId&&e.isState()&&(t._setStateEvent(e),"m.room.member"===e.getType()&&(c(t,e.getStateKey(),e.getContent().displayname),function(e,t){if(!t.getContent().third_party_invite)return;const n=(t.getContent().third_party_invite.signed||{}).token;if(!n)return;if(!e.getStateEvents("m.room.third_party_invite",n))return;e._tokenToInvite[n]=t}(t,e)),t.emit("RoomState.events",e,t))})),a.forEach(e,(function(e){if(e.getRoomId()===t.roomId&&e.isState())if("m.room.member"===e.getType()){const n=e.getStateKey();"leave"!==e.getContent().membership&&"ban"!==e.getContent().membership||(e.getContent().avatar_url=e.getContent().avatar_url||e.getPrevContent().avatar_url,e.getContent().displayname=e.getContent().displayname||e.getPrevContent().displayname);const r=t._getOrCreateMember(n,e);r.setMembershipEvent(e,t),t._updateMember(r),t.emit("RoomState.members",e,t,r)}else if("m.room.power_levels"===e.getType()){const n=a.values(t.members);a.forEach(n,(function(n){n.setPowerLevelEvent(e),t.emit("RoomState.members",e,t,n)})),t._sentinels={}}}))},f.prototype._getOrCreateMember=function(e,t){let n=this.members[e];return n||(n=new o.RoomMember(this.roomId,e),this.members[e]=n,this.emit("RoomState.newMember",t,this,n)),n},f.prototype._setStateEvent=function(e){void 0===this.events[e.getType()]&&(this.events[e.getType()]={}),this.events[e.getType()][e.getStateKey()]=e},f.prototype._updateMember=function(e){const t=this.getStateEvents("m.room.power_levels","");t&&e.setPowerLevelEvent(t),delete this._sentinels[e.userId],this.members[e.userId]=e,this._joinedMemberCount=null,this._invitedMemberCount=null},f.prototype.needsOutOfBandMembers=function(){return 1===this._oobMemberFlags.status},f.prototype.markOutOfBandMembersStarted=function(){1===this._oobMemberFlags.status&&(this._oobMemberFlags.status=2)},f.prototype.markOutOfBandMembersFailed=function(){2===this._oobMemberFlags.status&&(this._oobMemberFlags.status=1)},f.prototype.clearOutOfBandMembers=function(){let e=0;Object.keys(this.members).forEach(t=>{this.members[t].isOutOfBand()&&(++e,delete this.members[t])}),s.logger.log(`LL: RoomState removed ${e} members...`),this._oobMemberFlags.status=1},f.prototype.setOutOfBandMembers=function(e){s.logger.log(`LL: RoomState about to set ${e.length} OOB members ...`),2===this._oobMemberFlags.status&&(s.logger.log("LL: RoomState put in OOB_STATUS_FINISHED state ..."),this._oobMemberFlags.status=3,e.forEach(e=>this._setOutOfBandMember(e)))},f.prototype._setOutOfBandMember=function(e){if("m.room.member"!==e.getType())return;const t=e.getStateKey(),n=this.getMember(t);if(n&&!n.isOutOfBand())return;const r=this._getOrCreateMember(t,e);r.setMembershipEvent(e,this),r.markOutOfBand(),c(this,r.userId,r.name),this._setStateEvent(e),this._updateMember(r),this.emit("RoomState.members",e,this,r)},f.prototype.setTypingEvent=function(e){a.forEach(a.values(this.members),(function(t){t.setTypingEvent(e)}))},f.prototype.getInviteForThreePidToken=function(e){return this._tokenToInvite[e]||null},f.prototype._updateModifiedTime=function(){this._modified=Date.now()},f.prototype.getLastModifiedTime=function(){return this._modified},f.prototype.getUserIdsWithDisplayName=function(e){return this._displayNameToUserIds[a.removeHiddenChars(e)]||[]},f.prototype.maySendRedactionForEvent=function(e,t){const n=this.getMember(t);if(!n||"leave"===n.membership)return!1;if(e.status||e.isRedacted())return!1;const r=this.maySendEvent("m.room.redaction",t);return e.getSender()===t?r:this._hasSufficientPowerLevelFor("redact",n.powerLevel)},f.prototype._hasSufficientPowerLevelFor=function(e,t){const n=this.getStateEvents("m.room.power_levels","");let r={};n&&(r=n.getContent());let i=50;return a.isNumber(r[e])&&(i=r[e]),t>=i},f.prototype.maySendMessage=function(e){return this._maySendEventOfType("m.room.message",e,!1)},f.prototype.maySendEvent=function(e,t){return this._maySendEventOfType(e,t,!1)},f.prototype.mayClientSendStateEvent=function(e,t){return!t.isGuest()&&this.maySendStateEvent(e,t.credentials.userId)},f.prototype.maySendStateEvent=function(e,t){return this._maySendEventOfType(e,t,!0)},f.prototype._maySendEventOfType=function(e,t,n){const r=this.getStateEvents("m.room.power_levels","");let i,o={},s=0,a=0,f=0;if(r){i=r.getContent(),o=i.events||{},s=Number.isFinite(i.state_default)?i.state_default:50;const e=i.users&&i.users[t];Number.isFinite(e)?f=e:Number.isFinite(i.users_default)&&(f=i.users_default),Number.isFinite(i.events_default)&&(a=i.events_default)}let c=n?s:a;return Number.isFinite(o[e])&&(c=o[e]),f>=c},f.prototype.mayTriggerNotifOfType=function(e,t){const n=this.getMember(t);if(!n)return!1;const r=this.getStateEvents("m.room.power_levels","");let i=50;return r&&r.getContent()&&r.getContent().notifications&&a.isNumber(r.getContent().notifications[e])&&(i=r.getContent().notifications[e]),n.powerLevel>=i}},function(e,t,n){"use strict";var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.Group=s;var i=r(n(8)),o=n(10);function s(e){this.groupId=e,this.name=null,this.avatarUrl=null,this.myMembership=null,this.inviter=null}i.inherits(s,o.EventEmitter),s.prototype.setProfile=function(e,t){this.name===e&&this.avatarUrl===t||(this.name=e||this.groupId,this.avatarUrl=t,this.emit("Group.profile",this))},s.prototype.setMyMembership=function(e){this.myMembership!==e&&(this.myMembership=e,this.emit("Group.myMembership",this))},s.prototype.setInviter=function(e){this.inviter=e}},function(e,t,n){"use strict";(function(e){var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.MatrixCall=a,t.setAudioOutput=function(e){R=e},t.setAudioInput=function(e){T=e},t.setVideoInput=function(e){O=e},t.createNewMatrixCall=function(t,n,r){const o=e.window,s=e.document;if(!o||!s)return null;const f={};f.isOpenWebRTC=function(){const e=s.getElementById("script");if(!e||!e.length)return!1;for(let t=0;t-1)return!0;return!1};const c=o.navigator.getUserMedia||o.navigator.webkitGetUserMedia||o.navigator.mozGetUserMedia;c&&(f.getUserMedia=function(){return c.apply(o.navigator,arguments)});try{f.RtcPeerConnection=o.RTCPeerConnection||o.webkitRTCPeerConnection||o.mozRTCPeerConnection,f.RtcSessionDescription=o.RTCSessionDescription||o.webkitRTCSessionDescription||o.mozRTCSessionDescription,f.RtcIceCandidate=o.RTCIceCandidate||o.webkitRTCIceCandidate||o.mozRTCIceCandidate,f.vendor=null,o.mozRTCPeerConnection?f.vendor="mozilla":o.webkitRTCPeerConnection?f.vendor="webkit":o.RTCPeerConnection&&(f.vendor="generic")}catch(e){return i.logger.error("Failed to set up WebRTC object: possible browser interference?"),i.logger.error(e),null}if(!(f.RtcIceCandidate&&f.RtcSessionDescription&&f.RtcPeerConnection&&f.getUserMedia))return null;const u=!!r&&r.forceTURN;return new a({webRtc:f,client:t,URL:o.URL,roomId:n,turnServers:t.getTurnServers(),forceTURN:t._forceTURN||u})};var i=n(4),o=n(10),s=r(n(8));function a(e){this.roomId=e.roomId,this.client=e.client,this.webRtc=e.webRtc,this.forceTURN=e.forceTURN,this.URL=e.URL,this.turnServers=e.turnServers||[],0===this.turnServers.length&&this.client.isFallbackICEServerAllowed()&&this.turnServers.push({urls:[a.FALLBACK_ICE_SERVER]}),s.forEach(this.turnServers,(function(e){s.checkObjectHasKeys(e,["urls"])})),this.callId="c"+(new Date).getTime()+Math.random(),this.state="fledgling",this.didConnect=!1,this.candidateSendQueue=[],this.candidateSendTries=0,this.mediaPromises=Object.create(null),this.screenSharingStream=null,this._answerContent=null}a.CALL_TIMEOUT_MS=6e4,a.FALLBACK_ICE_SERVER="stun:turn.matrix.org",a.ERR_LOCAL_OFFER_FAILED="local_offer_failed",a.ERR_NO_USER_MEDIA="no_user_media",a.ERR_UNKNOWN_DEVICES="unknown_devices",a.ERR_SEND_INVITE="send_invite",a.ERR_SEND_ANSWER="send_answer",s.inherits(a,o.EventEmitter),a.prototype.placeVoiceCall=function(){b("placeVoiceCall"),_(this),A(this,S("voice")),this.type="voice"},a.prototype.placeVideoCall=function(e,t){b("placeVideoCall"),_(this),this.localVideoElement=t,this.remoteVideoElement=e,A(this,S("video")),this.type="video",g(this)},a.prototype.placeScreenSharingCall=function(e,t){b("placeScreenSharingCall"),_(this);const n=E(this);if(!n)return;this.localVideoElement=t,this.remoteVideoElement=e;const r=this;this.webRtc.getUserMedia(n,(function(e){r.screenSharingStream=e,b("Got screen stream, requesting audio stream...");const t=S("voice");A(r,t)}),(function(e){r.emit("error",y(a.ERR_NO_USER_MEDIA,"Failed to get screen-sharing stream: "+e))})),this.type="video",g(this)},a.prototype.playElement=function(e,t){i.logger.log("queuing play on "+t+" and element "+e),this.mediaPromises[t]?this.mediaPromises[t]=this.mediaPromises[t].then((function(){return i.logger.log("previous promise completed for "+t),e.play()}),(function(){return i.logger.log("previous promise failed for "+t),e.play()})):this.mediaPromises[t]=e.play()},a.prototype.pauseElement=function(e,t){i.logger.log("queuing pause on "+t+" and element "+e),this.mediaPromises[t]?this.mediaPromises[t]=this.mediaPromises[t].then((function(){return i.logger.log("previous promise completed for "+t),e.pause()}),(function(){return i.logger.log("previous promise failed for "+t),e.pause()})):this.mediaPromises[t]=e.pause()},a.prototype.assignElement=function(e,t,n){i.logger.log("queuing assign on "+n+" element "+e+" for "+t),this.mediaPromises[n]?this.mediaPromises[n]=this.mediaPromises[n].then((function(){i.logger.log("previous promise completed for "+n),e.srcObject=t}),(function(){i.logger.log("previous promise failed for "+n),e.srcObject=t})):e.srcObject=t},a.prototype.getLocalVideoElement=function(){return this.localVideoElement},a.prototype.getRemoteVideoElement=function(){return this.remoteVideoElement},a.prototype.getRemoteAudioElement=function(){return this.remoteAudioElement},a.prototype.setLocalVideoElement=function(e){if(this.localVideoElement=e,e&&this.localAVStream&&"video"===this.type){e.autoplay=!0,this.assignElement(e,this.localAVStream,"localVideo"),e.muted=!0;const t=this;setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)}},a.prototype.setRemoteVideoElement=function(e){this.remoteVideoElement=e,g(this)},a.prototype.setRemoteAudioElement=function(e){this.remoteVideoElement.muted=!0,this.remoteAudioElement=e,this.remoteAudioElement.muted=!1,m(this)},a.prototype._initWithInvite=function(e){this.msg=e.getContent(),this.peerConn=w(this);const t=this;this.peerConn&&this.peerConn.setRemoteDescription(new this.webRtc.RtcSessionDescription(this.msg.offer),k(t,t._onSetRemoteDescriptionSuccess),k(t,t._onSetRemoteDescriptionError)),u(this,"ringing"),this.direction="inbound",this.msg.offer&&this.msg.offer.sdp&&this.msg.offer.sdp.indexOf("m=video")>-1?this.type="video":this.type="voice",e.getAge()&&setTimeout((function(){"ringing"==t.state&&(b("Call invite has expired. Hanging up."),t.hangupParty="remote",u(t,"ended"),p(t),"closed"!=t.peerConn.signalingState&&t.peerConn.close(),t.emit("hangup",t))}),this.msg.lifetime-e.getAge())},a.prototype._initWithHangup=function(e){this.msg=e.getContent(),u(this,"ended")},a.prototype.answer=function(){b("Answering call %s of type %s",this.callId,this.type);const e=this;e._answerContent?e._sendAnswer():this.localAVStream||this.waitForLocalAVStream?this.localAVStream?this._maybeGotUserMediaForAnswer(this.localAVStream):this.waitForLocalAVStream&&u(this,"wait_local_media"):(this.webRtc.getUserMedia(S(this.type),k(e,e._maybeGotUserMediaForAnswer),k(e,e._maybeGotUserMediaForAnswer)),u(this,"wait_local_media"))},a.prototype._replacedBy=function(e){b(this.callId+" being replaced by "+e.callId),"wait_local_media"==this.state?(b("Telling new call to wait for local media"),e.waitForLocalAVStream=!0):"create_offer"==this.state?(b("Handing local stream to new call"),e._maybeGotUserMediaForAnswer(this.localAVStream),delete this.localAVStream):"invite_sent"==this.state&&(b("Handing local stream to new call"),e._maybeGotUserMediaForAnswer(this.localAVStream),delete this.localAVStream),e.localVideoElement=this.localVideoElement,e.remoteVideoElement=this.remoteVideoElement,e.remoteAudioElement=this.remoteAudioElement,this.successor=e,this.emit("replaced",e),this.hangup(!0)},a.prototype.hangup=function(e,t){if("ended"==this.state)return;b("Ending call "+this.callId),h(this,"local",e,!t);const n={version:0,call_id:this.callId,reason:e};l(this,"m.call.hangup",n)},a.prototype.setLocalVideoMuted=function(e){this.localAVStream&&f(this.localAVStream.getVideoTracks(),!e)},a.prototype.isLocalVideoMuted=function(){return!!this.localAVStream&&!c(this.localAVStream.getVideoTracks())},a.prototype.setMicrophoneMuted=function(e){this.localAVStream&&f(this.localAVStream.getAudioTracks(),!e)},a.prototype.isMicrophoneMuted=function(){return!!this.localAVStream&&!c(this.localAVStream.getAudioTracks())},a.prototype._maybeGotUserMediaForInvite=function(e){if(this.successor)return void this.successor._maybeGotUserMediaForAnswer(e);if("ended"==this.state)return;b("_maybeGotUserMediaForInvite -> "+this.type);const t=this,n=e,r={mandatory:{OfferToReceiveAudio:!0,OfferToReceiveVideo:"video"===t.type}};if(e instanceof MediaStream){const n=this.getLocalVideoElement();n&&"video"==this.type&&(n.autoplay=!0,this.screenSharingStream?(b("Setting screen sharing stream to the local video element"),this.assignElement(n,this.screenSharingStream,"localVideo")):this.assignElement(n,e,"localVideo"),n.muted=!0,setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)),this.screenSharingStream&&(this.screenSharingStream.addTrack(e.getAudioTracks()[0]),e=this.screenSharingStream),this.localAVStream=e,f(e.getAudioTracks(),!0),this.peerConn=w(this),this.peerConn.addStream(e)}else{if("PermissionDeniedError"!==n.name)return b("Failed to getUserMedia: "+n.name),void this._getUserMediaFailed(n);b("User denied access to camera/microphone. Or possibly you are using an insecure domain. Receiving only."),this.peerConn=w(this)}this.peerConn.createOffer(k(t,t._gotLocalOffer),k(t,t._getLocalOfferFailed),r),u(t,"create_offer")},a.prototype._sendAnswer=function(e){l(this,"m.call.answer",this._answerContent).then(()=>{u(this,"connecting"),v(this)}).catch(e=>{u(this,"ringing"),this.client.cancelPendingEvent(e.event);let t=a.ERR_SEND_ANSWER,n="Failed to send answer";throw"UnknownDeviceError"==e.name&&(t=a.ERR_UNKNOWN_DEVICES,n="Unknown devices present in the room"),this.emit("error",y(t,n)),e})},a.prototype._maybeGotUserMediaForAnswer=function(e){const t=this;if("ended"==t.state)return;const n=e;if(e instanceof MediaStream){const n=t.getLocalVideoElement();n&&"video"==t.type&&(n.autoplay=!0,this.assignElement(n,e,"localVideo"),n.muted=!0,setTimeout((function(){const e=t.getLocalVideoElement();e.play&&t.playElement(e,"localVideo")}),0)),t.localAVStream=e,f(e.getAudioTracks(),!0),t.peerConn.addStream(e)}else{if("PermissionDeniedError"!==n.name)return b("Failed to getUserMedia: "+n.name),void this._getUserMediaFailed(n);b("User denied access to camera/microphone. Or possibly you are using an insecure domain. Receiving only.")}const r={mandatory:{OfferToReceiveAudio:!0,OfferToReceiveVideo:"video"===t.type}};t.peerConn.createAnswer((function(e){b("Created answer: ",e),t.peerConn.setLocalDescription(e,(function(){t._answerContent={version:0,call_id:t.callId,answer:{sdp:t.peerConn.localDescription.sdp,type:t.peerConn.localDescription.type}},t._sendAnswer()}),(function(){b("Error setting local description!")}),r)}),(function(e){b("Failed to create answer: "+e)})),u(t,"create_answer")},a.prototype._gotLocalIceCandidate=function(e){if(e.candidate){if(b("Got local ICE "+e.candidate.sdpMid+" candidate: "+e.candidate.candidate),"ended"==this.state)return;const t={candidate:e.candidate.candidate,sdpMid:e.candidate.sdpMid,sdpMLineIndex:e.candidate.sdpMLineIndex};d(this,t)}},a.prototype._gotRemoteIceCandidate=function(e){"ended"!=this.state&&(b("Got remote ICE "+e.sdpMid+" candidate: "+e.candidate),this.peerConn.addIceCandidate(new this.webRtc.RtcIceCandidate(e),(function(){}),(function(e){})))},a.prototype._receivedAnswer=function(e){if("ended"==this.state)return;this.peerConn.setRemoteDescription(new this.webRtc.RtcSessionDescription(e.answer),k(this,this._onSetRemoteDescriptionSuccess),k(this,this._onSetRemoteDescriptionError)),u(this,"connecting")},a.prototype._gotLocalOffer=function(e){const t=this;b("Created offer: ",e),"ended"!=t.state?t.peerConn.setLocalDescription(e,(function(){const e={version:0,call_id:t.callId,offer:{sdp:t.peerConn.localDescription.sdp,type:t.peerConn.localDescription.type},lifetime:a.CALL_TIMEOUT_MS};l(t,"m.call.invite",e).then(()=>{u(t,"invite_sent"),setTimeout((function(){"invite_sent"==t.state&&t.hangup("invite_timeout")}),a.CALL_TIMEOUT_MS)}).catch(e=>{let n=a.ERR_SEND_INVITE,r="Failed to send invite";throw"UnknownDeviceError"==e.name&&(n=a.ERR_UNKNOWN_DEVICES,r="Unknown devices present in the room"),t.client.cancelPendingEvent(e.event),h(t,"local",n,!1),t.emit("error",y(n,r)),e})}),(function(){b("Error setting local description!")})):b("Ignoring newly created offer on call ID "+t.callId+" because the call has ended")},a.prototype._getLocalOfferFailed=function(e){this.emit("error",y(a.ERR_LOCAL_OFFER_FAILED,"Failed to start audio for call!"))},a.prototype._getUserMediaFailed=function(e){h(this,"local","user_media_failed",!1),this.emit("error",y(a.ERR_NO_USER_MEDIA,"Couldn't start capturing media! Is your microphone set up and does this app have permission?"))},a.prototype._onIceConnectionStateChanged=function(){"ended"!=this.state&&(b("Ice connection state changed to: "+this.peerConn.iceConnectionState),"completed"==this.peerConn.iceConnectionState||"connected"==this.peerConn.iceConnectionState?(u(this,"connected"),this.didConnect=!0):"failed"==this.peerConn.iceConnectionState&&this.hangup("ice_failed"))},a.prototype._onSignallingStateChanged=function(){b("call "+this.callId+": Signalling state changed to: "+this.peerConn.signalingState)},a.prototype._onSetRemoteDescriptionSuccess=function(){b("Set remote description")},a.prototype._onSetRemoteDescriptionError=function(e){b("Failed to set remote description"+e)},a.prototype._onAddStream=function(e){b("Stream id "+e.stream.id+" added");const t=e.stream;t.getVideoTracks().length>0?(this.type="video",this.remoteAVStream=t,this.remoteAStream=t):(this.type="voice",this.remoteAStream=t);const n=this;I(t,(function(e){b("Track id "+e.id+" added"),e.onstarted=k(n,n._onRemoteStreamTrackStarted)})),void 0!==e.stream.oninactive?e.stream.oninactive=k(n,n._onRemoteStreamEnded):e.stream.onended=k(n,n._onRemoteStreamEnded),e.stream.onstarted=k(n,n._onRemoteStreamStarted),"video"===this.type?(g(this),m(this)):m(this)},a.prototype._onRemoteStreamStarted=function(e){u(this,"connected")},a.prototype._onRemoteStreamEnded=function(e){b("Remote stream ended"),this.hangupParty="remote",u(this,"ended"),p(this),"closed"!=this.peerConn.signalingState&&this.peerConn.close(),this.emit("hangup",this)},a.prototype._onRemoteStreamTrackStarted=function(e){u(this,"connected")},a.prototype._onHangupReceived=function(e){b("Hangup received"),h(this,"remote",e.reason,!0)},a.prototype._onAnsweredElsewhere=function(e){b("Answered elsewhere"),h(this,"remote","answered_elsewhere",!0)};const f=function(e,t){for(let n=0;n5)return b("Failed to send candidates on attempt %s. Giving up for now.",e.candidateSendTries),void(e.candidateSendTries=0);const r=500*Math.pow(2,e.candidateSendTries);++e.candidateSendTries,b("Failed to send candidates. Retrying in "+r+"ms"),setTimeout((function(){v(e)}),r)}))},A=function(e,t){e.client.callList[e.callId]=e,e.webRtc.getUserMedia(t,k(e,e._maybeGotUserMediaForInvite),k(e,e._maybeGotUserMediaForInvite)),u(e,"wait_local_media"),e.direction="outbound",e.config=t},w=function(e){const t=new e.webRtc.RtcPeerConnection({iceTransportPolicy:e.forceTURN?"relay":void 0,iceServers:e.turnServers});return t.oniceconnectionstatechange=k(e,e._onIceConnectionStateChanged),t.onsignalingstatechange=k(e,e._onSignallingStateChanged),t.onicecandidate=k(e,e._gotLocalIceCandidate),t.onaddstream=k(e,e._onAddStream),t},E=function(t){const n=e.screen;if(n)return{video:{mediaSource:"screen",mandatory:{chromeMediaSource:"screen",chromeMediaSourceId:""+Date.now(),maxWidth:n.width,maxHeight:n.height,minFrameRate:1,maxFrameRate:10}}};t.emit("error",y(a.ERR_NO_USER_MEDIA,"Couldn't determine screen sharing constaints."))},S=function(t){const n=!!e.window.navigator.webkitGetUserMedia;switch(t){case"voice":return{audio:{deviceId:T?{ideal:T}:void 0},video:!1};case"video":return{audio:{deviceId:T?{ideal:T}:void 0},video:{deviceId:O?{ideal:O}:void 0,width:n?{exact:640}:{ideal:640},height:n?{exact:360}:{ideal:360}}}}},k=function(e,t){return function(){return t.apply(e,arguments)}},I=function(e,t){!function(e,t){const n=e.getVideoTracks();for(let e=0;e{let i=!0;const o=e.open(t);o.onupgradeneeded=()=>{i=!1},o.onblocked=()=>r(),o.onsuccess=()=>{o.result.close(),i||e.deleteDatabase(t),n(i)},o.onerror=e=>r(e.target.error)})}},function(e,t,n){"use strict";(function(e){var r=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.OlmDevice=f,t.WITHHELD_MESSAGES=void 0;var i=n(4),o=n(33),s=r(n(137));function a(e){if(void 0===e)throw new Error("payloadString undefined");if(e.length>49152)throw new Error("Message too long ("+e.length+" bytes). The maximum for an encrypted message is 49152 bytes.")}function f(e){this._cryptoStore=e,this._pickleKey="DEFAULT_KEY",this.deviceCurve25519Key=null,this.deviceEd25519Key=null,this._maxOneTimeKeys=null,this._outboundGroupSessionStore={},this._inboundGroupSessionMessageIndexes={},this._sessionsInProgress={}}f.prototype.init=async function(){let t;const n=new e.Olm.Account;try{await async function(e,t,n){await e.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],r=>{e.getAccount(r,i=>{null!==i?n.unpickle(t,i):(n.create(),i=n.pickle(t),e.storeAccount(r,i))})})}(this._cryptoStore,this._pickleKey,n),t=JSON.parse(n.identity_keys()),this._maxOneTimeKeys=n.max_number_of_one_time_keys()}finally{n.free()}this.deviceCurve25519Key=t.curve25519,this.deviceEd25519Key=t.ed25519},f.getOlmVersion=function(){return e.Olm.get_library_version()},f.prototype._getAccount=function(t,n){this._cryptoStore.getAccount(t,t=>{const r=new e.Olm.Account;try{r.unpickle(this._pickleKey,t),n(r)}finally{r.free()}})},f.prototype._storeAccount=function(e,t){this._cryptoStore.storeAccount(e,t.pickle(this._pickleKey))},f.prototype._getSession=function(e,t,n,r){this._cryptoStore.getEndToEndSession(e,t,n,e=>{this._unpickleSession(e,r)})},f.prototype._unpickleSession=function(t,n){const r=new e.Olm.Session;try{r.unpickle(this._pickleKey,t.session),n(Object.assign({},t,{session:r}))}finally{r.free()}},f.prototype._saveSession=function(e,t,n){const r=t.session.session_id(),i=Object.assign(t,{session:t.session.pickle(this._pickleKey)});this._cryptoStore.storeEndToEndSession(e,r,i,n)},f.prototype._getUtility=function(t){const n=new e.Olm.Utility;try{return t(n)}finally{n.free()}},f.prototype.sign=async function(e){let t;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_ACCOUNT],n=>{this._getAccount(n,n=>{t=n.sign(e)})}),t},f.prototype.getOneTimeKeys=async function(){let e;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_ACCOUNT],t=>{this._getAccount(t,t=>{e=JSON.parse(t.one_time_keys())})}),e},f.prototype.maxNumberOfOneTimeKeys=function(){return this._maxOneTimeKeys},f.prototype.markKeysAsPublished=async function(){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],e=>{this._getAccount(e,t=>{t.mark_keys_as_published(),this._storeAccount(e,t)})})},f.prototype.generateOneTimeKeys=function(e){return this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT],t=>{this._getAccount(t,n=>{n.generate_one_time_keys(e),this._storeAccount(t,n)})})},f.prototype.createOutboundSession=async function(t,n){let r;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT,o.IndexedDBCryptoStore.STORE_SESSIONS],i=>{this._getAccount(i,o=>{const s=new e.Olm.Session;try{s.create_outbound(o,t,n),r=s.session_id(),this._storeAccount(i,o);const e={session:s,lastReceivedMessageTs:Date.now()};this._saveSession(t,e,i)}finally{s.free()}})}),r},f.prototype.createInboundSession=async function(t,n,r){if(0!==n)throw new Error("Need messageType == 0 to create inbound session");let i;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_ACCOUNT,o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getAccount(o,s=>{const a=new e.Olm.Session;try{a.create_inbound_from(s,t,r),s.remove_one_time_keys(a),this._storeAccount(o,s);const e=a.decrypt(n,r),f={session:a,lastReceivedMessageTs:Date.now()};this._saveSession(t,f,o),i={payload:e,session_id:a.session_id()}}finally{a.free()}})}),i},f.prototype.getSessionIdsForDevice=async function(e){if(this._sessionsInProgress[e]){i.logger.log("waiting for olm session to be created");try{await this._sessionsInProgress[e]}catch(e){}}let t;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_SESSIONS],n=>{this._cryptoStore.getEndToEndSessions(e,n,e=>{t=Object.keys(e)})}),t},f.prototype.getSessionIdForDevice=async function(e,t){const n=await this.getSessionInfoForDevice(e,t);if(0===n.length)return null;let r=0;for(let e=1;es||i===s&&t.sessionId{this._cryptoStore.getEndToEndSessions(e,t,e=>{const t=Object.keys(e).sort();for(const r of t)this._unpickleSession(e[r],e=>{n.push({lastReceivedMessageTs:e.lastReceivedMessageTs,hasReceivedMessage:e.session.has_received_message(),sessionId:r})})})}),n},f.prototype.encryptMessage=async function(e,t,n){let r;return a(n),await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getSession(e,t,o,s=>{const a=s.session.describe();i.logger.log("encryptMessage: Olm Session ID "+t+" to "+e+": "+a),r=s.session.encrypt(n),this._saveSession(e,s,o)})}),r},f.prototype.decryptMessage=async function(e,t,n,r){let s;return await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_SESSIONS],o=>{this._getSession(e,t,o,a=>{const f=a.session.describe();i.logger.log("decryptMessage: Olm Session ID "+t+" from "+e+": "+f),s=a.session.decrypt(n,r),a.lastReceivedMessageTs=Date.now(),this._saveSession(e,a,o)})}),s},f.prototype.matchesSession=async function(e,t,n,r){if(0!==n)return!1;let i;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_SESSIONS],n=>{this._getSession(e,t,n,e=>{i=e.session.matches_inbound(r)})}),i},f.prototype.recordSessionProblem=async function(e,t,n){await this._cryptoStore.storeEndToEndSessionProblem(e,t,n)},f.prototype.sessionMayHaveProblems=async function(e,t){return await this._cryptoStore.getEndToEndSessionProblem(e,t)},f.prototype.filterOutNotifiedErrorDevices=async function(e){return await this._cryptoStore.filterOutNotifiedErrorDevices(e)},f.prototype._saveOutboundGroupSession=function(e){const t=e.pickle(this._pickleKey);this._outboundGroupSessionStore[e.session_id()]=t},f.prototype._getOutboundGroupSession=function(t,n){const r=this._outboundGroupSessionStore[t];if(void 0===r)throw new Error("Unknown outbound group session "+t);const i=new e.Olm.OutboundGroupSession;try{return i.unpickle(this._pickleKey,r),n(i)}finally{i.free()}},f.prototype.createOutboundGroupSession=function(){const t=new e.Olm.OutboundGroupSession;try{return t.create(),this._saveOutboundGroupSession(t),t.session_id()}finally{t.free()}},f.prototype.encryptGroupMessage=function(e,t){const n=this;return i.logger.log(`encrypting msg with megolm session ${e}`),a(t),this._getOutboundGroupSession(e,(function(e){const r=e.encrypt(t);return n._saveOutboundGroupSession(e),r}))},f.prototype.getOutboundGroupSessionKey=function(e){return this._getOutboundGroupSession(e,(function(e){return{chain_index:e.message_index(),key:e.session_key()}}))},f.prototype._unpickleInboundGroupSession=function(t,n){const r=new e.Olm.InboundGroupSession;try{return r.unpickle(this._pickleKey,t.session),n(r)}finally{r.free()}},f.prototype._getInboundGroupSession=function(e,t,n,r,i){this._cryptoStore.getEndToEndInboundGroupSession(t,n,r,(t,n)=>{if(null!==t){if(null!==e&&e!==t.room_id)throw new Error("Mismatched room_id for inbound group session (expected "+t.room_id+", was "+e+")");this._unpickleInboundGroupSession(t,e=>{i(e,t,n)})}else i(null,null,n)})},f.prototype.addInboundGroupSession=async function(t,n,r,s,a,f,c){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(t,n,s,o,(u,l)=>{const d=new e.Olm.InboundGroupSession;try{if(c?d.import_session(a):d.create(a),s!=d.session_id())throw new Error("Mismatched group session ID from senderKey: "+n);if(u&&(i.logger.log("Update for megolm session "+n+"/"+s),u.first_known_index()<=d.first_known_index()))return void i.logger.log(`Keeping existing megolm session ${s}`);const e={room_id:t,session:d.pickle(this._pickleKey),keysClaimed:f,forwardingCurve25519KeyChain:r};this._cryptoStore.storeEndToEndInboundGroupSession(n,s,e,o)}finally{d.free()}})})},f.prototype.addInboundGroupSessionWithheld=async function(e,t,n,r,i){await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._cryptoStore.storeEndToEndInboundGroupSessionWithheld(t,n,{room_id:e,code:r,reason:i},o)})};const c={"m.unverified":"The sender has disabled encrypting to unverified devices.","m.blacklisted":"The sender has blocked you.","m.unauthorised":"You are not authorised to read the message.","m.no_olm":"Unable to establish a secure channel."};function u(e){return e.code&&e.code in c?c[e.code]:e.reason?e.reason:"decryption key withheld"}t.WITHHELD_MESSAGES=c,f.prototype.decryptGroupMessage=async function(e,t,n,r,i,a){let f,c;if(await this._cryptoStore.doTxn("readwrite",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(e,t,n,o,(e,l,d)=>{if(null===e)return d&&(c=new s.DecryptionError("MEGOLM_UNKNOWN_INBOUND_SESSION_ID",u(d),{session:t+"|"+n})),void(f=null);let h;try{h=e.decrypt(r)}catch(e){return void(c=e&&"OLM.UNKNOWN_MESSAGE_INDEX"===e.message&&d?new s.DecryptionError("MEGOLM_UNKNOWN_INBOUND_SESSION_ID",u(d),{session:t+"|"+n}):e)}let p=h.plaintext;if(void 0===p)p=h;else{const e=t+"|"+n+"|"+h.message_index;if(e in this._inboundGroupSessionMessageIndexes){const t=this._inboundGroupSessionMessageIndexes[e];if(t.id!==i||t.timestamp!==a)return void(c=new Error("Duplicate message index, possible replay attack: "+e))}this._inboundGroupSessionMessageIndexes[e]={id:i,timestamp:a}}l.session=e.pickle(this._pickleKey),this._cryptoStore.storeEndToEndInboundGroupSession(t,n,l,o),f={result:p,keysClaimed:l.keysClaimed||{},senderKey:t,forwardingCurve25519KeyChain:l.forwardingCurve25519KeyChain||[]}})}),c)throw c;return f},f.prototype.hasInboundSessionKeys=async function(e,t,n){let r;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._cryptoStore.getEndToEndInboundGroupSession(t,n,o,o=>{null!==o?e!==o.room_id?(i.logger.warn(`requested keys for inbound group session ${t}|`+`${n}, with incorrect room_id `+`(expected ${o.room_id}, `+`was ${e})`),r=!1):r=!0:r=!1})}),r},f.prototype.getInboundGroupSessionKey=async function(e,t,n,r){let i;return await this._cryptoStore.doTxn("readonly",[o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS,o.IndexedDBCryptoStore.STORE_INBOUND_GROUP_SESSIONS_WITHHELD],o=>{this._getInboundGroupSession(e,t,n,o,(e,t)=>{if(null===e)return void(i=null);void 0===r&&(r=e.first_known_index());const n=e.export_session(r),o=(t.keysClaimed||{}).ed25519||null;i={chain_index:r,key:n,forwarding_curve25519_key_chain:t.forwardingCurve25519KeyChain||[],sender_claimed_ed25519_key:o}})}),i},f.prototype.exportInboundGroupSession=function(e,t,n){return this._unpickleInboundGroupSession(n,r=>{const i=r.first_known_index();return{sender_key:e,sender_claimed_keys:n.keysClaimed,room_id:n.room_id,session_id:t,session_key:r.export_session(i),forwarding_curve25519_key_chain:r.forwardingCurve25519KeyChain||[],first_known_index:r.first_known_index()}})},f.prototype.verifySignature=function(e,t,n){this._getUtility((function(r){r.ed25519_verify(e,t,n)}))}}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(285),n(286);var r=n(79);Object.keys(r).forEach((function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(t,e,{enumerable:!0,get:function(){return r[e]}})}))},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.DeviceTrustLevel=t.UserTrustLevel=t.CrossSigningLevel=t.CrossSigningInfo=void 0;var r=n(21),i=n(10),o=n(4);function s(e){return Object.values(e.keys)[0]}class a extends i.EventEmitter{constructor(e,t){super(),Object.defineProperty(this,"userId",{enumerable:!0,value:e}),this._callbacks=t||{},this.keys={},this.firstUse=!0}async getCrossSigningKey(t,n){if(!this._callbacks.getCrossSigningKey)throw new Error("No getCrossSigningKey callback supplied");void 0===n&&(n=this.getId(t));const r=await this._callbacks.getCrossSigningKey(t,n);if(!r)throw new Error("getCrossSigningKey callback for "+t+" returned falsey");const i=new e.Olm.PkSigning,o=i.init_with_seed(r);if(o!==n)throw i.free(),new Error("Key type "+t+" from getCrossSigningKey callback did not match");return[o,i]}static fromStorage(e,t){const n=new a(t);for(const t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}toStorage(){return{keys:this.keys,firstUse:this.firstUse}}async isStoredInSecretStorage(e){let t=!0;for(const n of["master","self_signing","user_signing"])t&=await e.isStored(`m.cross_signing.${n}`,!1);return t}static async storeInSecretStorage(e,t){for(const n of Object.keys(e)){const i=(0,r.encodeBase64)(e[n]);await t.store(`m.cross_signing.${n}`,i)}}static async getFromSecretStorage(e,t){const n=await t.get(`m.cross_signing.${e}`);return(0,r.decodeBase64)(n)}getId(e){if(e=e||"master",!this.keys[e])return null;return s(this.keys[e])}async resetKeys(t){if(!this._callbacks.saveCrossSigningKeys)throw new Error("No saveCrossSigningKeys callback supplied");if(void 0===t||t&f.MASTER||!this.keys.master)t=f.MASTER|f.USER_SIGNING|f.SELF_SIGNING;else if(0===t)return;const n={},i={};let o,s;try{if(t&f.MASTER?(o=new e.Olm.PkSigning,n.master=o.generate_seed(),s=o.init_with_seed(n.master),i.master={user_id:this.userId,usage:["master"],keys:{["ed25519:"+s]:s}}):[s,o]=await this.getCrossSigningKey("master"),t&f.SELF_SIGNING){const t=new e.Olm.PkSigning;try{n.self_signing=t.generate_seed();const e=t.init_with_seed(n.self_signing);i.self_signing={user_id:this.userId,usage:["self_signing"],keys:{["ed25519:"+e]:e}},(0,r.pkSign)(i.self_signing,o,this.userId,s)}finally{t.free()}}if(t&f.USER_SIGNING){const t=new e.Olm.PkSigning;try{n.user_signing=t.generate_seed();const e=t.init_with_seed(n.user_signing);i.user_signing={user_id:this.userId,usage:["user_signing"],keys:{["ed25519:"+e]:e}},(0,r.pkSign)(i.user_signing,o,this.userId,s)}finally{t.free()}}Object.assign(this.keys,i),this._callbacks.saveCrossSigningKeys(n)}finally{o&&o.free()}}setKeys(e){const t={};if(e.master){if(e.master.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in master key from "+this.userId;throw o.logger.error(t),new Error(t)}this.keys.master?s(e.master)!==this.getId()&&(this.firstUse=!1):this.firstUse=!0,t.master=e.master}else{if(!this.keys.master)throw new Error("Tried to set cross-signing keys without a master key");t.master=this.keys.master}const n=s(t.master);if(e.user_signing){if(e.user_signing.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in user_signing key from "+this.userId;throw o.logger.error(t),new Error(t)}try{(0,r.pkVerify)(e.user_signing,n,this.userId)}catch(e){throw o.logger.error("invalid signature on user-signing key"),e}}if(e.self_signing){if(e.self_signing.user_id!==this.userId){const t="Mismatched user ID "+e.master.user_id+" in self_signing key from "+this.userId;throw o.logger.error(t),new Error(t)}try{(0,r.pkVerify)(e.self_signing,n,this.userId)}catch(e){throw o.logger.error("invalid signature on self-signing key"),e}}e.master&&(this.keys.master=e.master,this.keys.self_signing=null,this.keys.user_signing=null),e.self_signing&&(this.keys.self_signing=e.self_signing),e.user_signing&&(this.keys.user_signing=e.user_signing)}async signObject(e,t){if(!this.keys[t])throw new Error("Attempted to sign with "+t+" key but no such key present");const[n,i]=await this.getCrossSigningKey(t);try{return(0,r.pkSign)(e,i,this.userId,n),e}finally{i.free()}}async signUser(e){if(this.keys.user_signing)return this.signObject(e.keys.master,"user_signing")}async signDevice(e,t){if(e!==this.userId)throw new Error(`Trying to sign ${e}'s device; can only sign our own device`);if(this.keys.self_signing)return this.signObject({algorithms:t.algorithms,keys:t.keys,device_id:t.deviceId,user_id:e},"self_signing")}checkUserTrust(e){if(this.userId===e.userId&&this.getId()&&this.getId()===e.getId()&&this.getId("self_signing")&&this.getId("self_signing")===e.getId("self_signing"))return new c(!0,this.firstUse);if(!this.keys.user_signing)return new c(!1,e.firstUse);let t;const n=e.keys.master,i=this.getId("user_signing");try{(0,r.pkVerify)(n,i,this.userId),t=!0}catch(e){t=!1}return new c(t,e.firstUse)}checkDeviceTrust(e,t,n){const i=this.checkUserTrust(e),o=e.keys.self_signing;if(!o)return new u(!1,!1,n);const a=function(e,t){return{algorithms:e.algorithms,keys:e.keys,device_id:e.deviceId,user_id:t,signatures:e.signatures}}(t,e.userId);try{return(0,r.pkVerify)(o,e.getId(),e.userId),(0,r.pkVerify)(a,s(o),e.userId),u.fromUserTrustLevel(i,n)}catch(e){return new u(!1,!1,n)}}}t.CrossSigningInfo=a;const f={MASTER:4,USER_SIGNING:2,SELF_SIGNING:1};t.CrossSigningLevel=f;class c{constructor(e,t){this._crossSigningVerified=e,this._tofu=t}isVerified(){return this.isCrossSigningVerified()}isCrossSigningVerified(){return this._crossSigningVerified}isTofu(){return this._tofu}}t.UserTrustLevel=c;class u{constructor(e,t,n){this._crossSigningVerified=e,this._tofu=t,this._localVerified=n}static fromUserTrustLevel(e,t){return new u(e._crossSigningVerified,e._tofu,t)}isVerified(){return this.isCrossSigningVerified()||this.isLocallyVerified()}isCrossSigningVerified(){return this._crossSigningVerified}isLocallyVerified(){return this._localVerified}isTofu(){return this._tofu}}t.DeviceTrustLevel=u}).call(this,n(6))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VerificationBase=void 0;var r=n(19),i=n(10),o=n(4),s=n(48),a=n(34);const f=new Error("Verification timed out");class c extends i.EventEmitter{constructor(e,t,n,r,i,o){super(),this._channel=e,this._baseApis=t,this.userId=n,this.deviceId=r,this.startEvent=i,this.request=o,this.cancelled=!1,this._done=!1,this._promise=null,this._transactionTimeoutTimer=null,this._resetTimer()}_resetTimer(){o.logger.info("Refreshing/starting the verification transaction timeout timer"),null!==this._transactionTimeoutTimer&&clearTimeout(this._transactionTimeoutTimer),this._transactionTimeoutTimer=setTimeout(()=>{this._done||this.cancelled||(o.logger.info("Triggering verification timeout"),this.cancel(f))},6e5)}_endTimer(){null!==this._transactionTimeoutTimer&&(clearTimeout(this._transactionTimeoutTimer),this._transactionTimeoutTimer=null)}_send(e,t){return this._channel.send(e,t)}_waitForEvent(e){return this._done?Promise.reject(new Error("Verification is already done")):(this._expectedEvent=e,new Promise((e,t)=>{this._resolveEvent=e,this._rejectEvent=t}))}handleEvent(e){if(!this._done)if(e.getType()===this._expectedEvent)"m.key.verification.done"!==this._expectedEvent&&(this._expectedEvent=void 0,this._rejectEvent=void 0,this._resetTimer(),this._resolveEvent(e));else if("m.key.verification.cancel"===e.getType()){const e=this._reject;this._reject=void 0,e(new Error("Other side cancelled verification"))}else{const t=new Error("Unexpected message: expecting "+this._expectedEvent+" but got "+e.getType());if(this._expectedEvent=void 0,this._rejectEvent){const e=this._rejectEvent;this._rejectEvent=void 0,e(t)}this.cancel(t)}}done(){this._endTimer(),this._done||(this._channel.needsDoneMessage&&this._send("m.key.verification.done",{}),this._resolve())}cancel(e){if(this._endTimer(),!this._done){if(this.cancelled=!0,this.userId&&this.deviceId)if(e===f){const e=(0,a.newTimeoutError)();this._send(e.getType(),e.getContent())}else if(e instanceof r.MatrixEvent){if(e.getSender()!==this.userId){const t=e.getContent();"m.key.verification.cancel"===e.getType()?(t.code=t.code||"m.unknown",t.reason=t.reason||t.body||"Unknown reason",this._send("m.key.verification.cancel",t)):this._send("m.key.verification.cancel",{code:"m.unknown",reason:t.body||"Unknown reason"})}}else this._send("m.key.verification.cancel",{code:"m.unknown",reason:e.toString()});null!==this._promise?this._reject&&this._reject(e):this._promise=Promise.reject(e),this.emit("cancel",e)}}verify(){return this._promise?this._promise:(this._promise=new Promise((e,t)=>{this._resolve=(...t)=>{this._done=!0,this._endTimer(),e(...t)},this._reject=(...e)=>{this._done=!0,this._endTimer(),t(...e)}}),this._doVerification&&!this._started&&(this._started=!0,this._resetTimer(),Promise.resolve(this._doVerification()).then(this.done.bind(this),this.cancel.bind(this))),this._promise)}async _verifyKeys(e,t,n){const r=[];for(const[i,a]of Object.entries(t)){const t=i.split(":",2)[1],f=await this._baseApis.getStoredDevice(e,t);if(f)await n(i,f,a),r.push(t);else{const f=this._baseApis._crypto._deviceList.getStoredCrossSigningForUser(e);f&&f.getId()===t?(await n(i,s.DeviceInfo.fromStorage({keys:{[i]:t}},t),a),r.push(t)):o.logger.warn(`verification: Could not find device ${t} to verify`)}}if(!r.length)throw new Error("No devices could be verified");for(const t of r)await this._baseApis.setDeviceVerified(e,t)}}t.VerificationBase=c},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.keyFromAuthData=async function(t,n){if(!e.Olm)throw new Error("Olm is not available");if(!t.private_key_salt||!t.private_key_iterations)throw new Error("Salt and/or iterations not found: this backup cannot be restored with a passphrase");return await i(n,t.private_key_salt,t.private_key_iterations)},t.keyFromPassphrase=async function(t){if(!e.Olm)throw new Error("Olm is not available");const n=(0,r.randomString)(32);return{key:await i(t,n,5e5),salt:n,iterations:5e5}},t.deriveKey=i;var r=n(49);async function i(t,n,r){const i=e.crypto.subtle,o=e.TextEncoder;if(!i||!o)throw new Error("Password-based backup is not avaiable on this platform");const s=await i.importKey("raw",(new o).encode(t),{name:"PBKDF2"},!1,["deriveBits"]),a=await i.deriveBits({name:"PBKDF2",salt:(new o).encode(n),iterations:r,hash:"SHA-512"},s,8*e.Olm.PRIVATE_KEY_LENGTH);return new Uint8Array(a)}}).call(this,n(6))},function(e,t,n){"use strict";(function(e,r){var i=n(16);Object.defineProperty(t,"__esModule",{value:!0}),t.encodeRecoveryKey=function(t){const n=new e(s.length+t.length+1);n.set(s,0),n.set(t,s.length);let r=0;for(let e=0;e{this.accountData[e.type]=e})}_accumulateRooms(e){e.rooms&&(e.rooms.invite&&Object.keys(e.rooms.invite).forEach(t=>{this._accumulateRoom(t,"invite",e.rooms.invite[t])}),e.rooms.join&&Object.keys(e.rooms.join).forEach(t=>{this._accumulateRoom(t,"join",e.rooms.join[t])}),e.rooms.leave&&Object.keys(e.rooms.leave).forEach(t=>{this._accumulateRoom(t,"leave",e.rooms.leave[t])}))}_accumulateRoom(e,t,n){switch(t){case"invite":this._accumulateInviteState(e,n);break;case"join":this.inviteRooms[e]&&delete this.inviteRooms[e],this._accumulateJoinState(e,n);break;case"leave":this.inviteRooms[e]?delete this.inviteRooms[e]:delete this.joinRooms[e];break;default:r.logger.error("Unknown cateogory: ",t)}}_accumulateInviteState(e,t){if(!t.invite_state||!t.invite_state.events)return;if(!this.inviteRooms[e])return void(this.inviteRooms[e]={invite_state:t.invite_state});const n=this.inviteRooms[e];t.invite_state.events.forEach(e=>{let t=!1;for(let r=0;r{n._accountData[e.type]=e}),t.unread_notifications&&(n._unreadNotifications=t.unread_notifications),t.summary){const e="m.heroes",r="m.invited_member_count",i="m.joined_member_count",o=n._summary,s=t.summary;o[e]=s[e]||o[e],o[i]=s[i]||o[i],o[r]=s[r]||o[r]}if(t.ephemeral&&t.ephemeral.events&&t.ephemeral.events.forEach(e=>{"m.receipt"===e.type&&e.content&&Object.keys(e.content).forEach(t=>{e.content[t]["m.read"]&&Object.keys(e.content[t]["m.read"]).forEach(r=>{n._readReceipts[r]={data:e.content[t]["m.read"][r],eventId:t}})})}),t.timeline&&t.timeline.limited&&(n._timeline=[]),t.state&&t.state.events&&t.state.events.forEach(e=>{o(n._currentState,e)}),t.timeline&&t.timeline.events&&t.timeline.events.forEach((e,r)=>{o(n._currentState,e),n._timeline.push({event:e,token:0===r?t.timeline.prev_batch:null})}),n._timeline.length>this.opts.maxTimelineEntries){for(let e=n._timeline.length-this.opts.maxTimelineEntries;e{this._accumulateGroup(t,"invite",e.groups.invite[t])}),e.groups.join&&Object.keys(e.groups.join).forEach(t=>{this._accumulateGroup(t,"join",e.groups.join[t])}),e.groups.leave&&Object.keys(e.groups.leave).forEach(t=>{this._accumulateGroup(t,"leave",e.groups.leave[t])}))}_accumulateGroup(e,t,n){for(const t of["invite","join","leave"])delete this.groups[t][e];this.groups[t][e]=n}getJSON(){const e={join:{},invite:{},leave:{}};Object.keys(this.inviteRooms).forEach(t=>{e.invite[t]=this.inviteRooms[t]}),Object.keys(this.joinRooms).forEach(t=>{const n=this.joinRooms[t],r={ephemeral:{events:[]},account_data:{events:[]},state:{events:[]},timeline:{events:[],prev_batch:null},unread_notifications:n._unreadNotifications,summary:n._summary};Object.keys(n._accountData).forEach(e=>{r.account_data.events.push(n._accountData[e])});const s={type:"m.receipt",room_id:t,content:{}};Object.keys(n._readReceipts).forEach(e=>{const t=n._readReceipts[e];s.content[t.eventId]||(s.content[t.eventId]={"m.read":{}}),s.content[t.eventId]["m.read"][e]=t.data}),Object.keys(s.content).length>0&&r.ephemeral.events.push(s),n._timeline.forEach(e=>{if(!r.timeline.prev_batch){if(!e.token)return;r.timeline.prev_batch=e.token}r.timeline.events.push(e.event)});const a=Object.create(null);for(let e=r.timeline.events.length-1;e>=0;e--){const t=r.timeline.events[e];if(null===t.state_key||void 0===t.state_key)continue;const n=(0,i.deepCopy)(t);n.unsigned&&(n.unsigned.prev_content&&(n.content=n.unsigned.prev_content),n.unsigned.prev_sender&&(n.sender=n.unsigned.prev_sender)),o(a,n)}Object.keys(n._currentState).forEach(e=>{Object.keys(n._currentState[e]).forEach(t=>{let i=n._currentState[e][t];a[e]&&a[e][t]&&(i=a[e][t]),r.state.events.push(i)})}),e.join[t]=r});const t=[];return Object.keys(this.accountData).forEach(e=>{t.push(this.accountData[e])}),{nextBatch:this.nextBatch,roomsData:e,groupsData:this.groups,accountData:t}}getNextBatchToken(){return this.nextBatch}}},function(e,t,n){"use strict";var r=String.prototype.replace,i=/%20/g,o=n(81),s={RFC1738:"RFC1738",RFC3986:"RFC3986"};e.exports=o.assign({default:s.RFC3986,formatters:{RFC1738:function(e){return r.call(e,i,"+")},RFC3986:function(e){return String(e)}}},s)},function(e,t){for(var n=[],r=0;r<256;++r)n[r]=(r+256).toString(16).substr(1);e.exports=function(e,t){var r=t||0,i=n;return[i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],"-",i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]],i[e[r++]]].join("")}},function(e,t,n){"use strict";t.__esModule=!0,t.stateify=t.TokenState=t.CharacterState=void 0;var r=n(50);var i=function(e){this.j=[],this.T=e||null};i.prototype={defaultTransition:!1,on:function(e,t){if(e instanceof Array){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:null,n=this.next(new e(""));return n===this.defaultTransition?(n=new this.constructor(t),this.on(e,n)):t&&(n.T=t),n},test:function(e,t){return e instanceof t}});t.CharacterState=o,t.TokenState=s,t.stateify=function(e,t,n,r){for(var i=0,s=e.length,a=t,f=[],c=void 0;i=s)return[];for(;i0&&void 0!==arguments[0])||arguments[0];if(r.state.client){await r.state.client.leave(r.state.roomId);var t={type:"m.login.password",user:r.state.userId,identifier:{type:"m.id.user",user:r.state.userId},password:r.state.password};await r.state.client.deactivateAccount(t,!0),await r.state.client.stopClient(),await r.state.client.clearStores(),r.setState({client:null,ready:!0}),window.clearInterval(r.state.waitIntervalId)}r.state.localStorage&&r.state.localStorage.clear(),e&&r.setState(r.initialState)})),v()(m()(r),"createLocalStorage",(async function(t,n){var r=e.localStorage;if(null==r){var i="matrix-chat-".concat(t,"-").concat(n),o=R.resolve(R.join(I.homedir(),".local-storage",i));r=new T.LocalStorage(o)}return r})),v()(m()(r),"createClientWithAccount",(async function(){var e=C.createClient(r.props.matrixServerUrl);try{await e.registerRequest({})}catch(f){var t=Object(x.uuid)(),n=Object(x.uuid)(),i=f.data.session,o=await e.registerRequest({auth:{session:i,type:"m.login.dummy"},inhibit_login:!1,password:n,username:t,x_show_msisdn:!0}),s=await r.createLocalStorage(o.device_id,i);r.setState({accessToken:o.access_token,userId:o.user_id,username:t,password:n,localStorage:s,sessionId:i,deviceId:o.device_id});var a={baseUrl:r.props.matrixServerUrl,accessToken:o.access_token,userId:o.user_id,deviceId:o.device_id,sessionStore:new C.WebStorageSessionStore(s)};return C.createClient(a)}})),v()(m()(r),"initializeChat",(async function(){r.setState({ready:!1});var e=await r.createClientWithAccount();try{await e.initCrypto()}catch(e){return r.restartWithoutCrypto()}await e.startClient(),e.once("sync",(async function(t,n,i){"PREPARED"===t&&(r.setState({client:e}),e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e))}))})),v()(m()(r),"restartWithoutCrypto",(async function(){r.state.client&&(r.state.client.leave(r.state.roomId),r.state.client.stopClient(),r.state.client.clearStores(),r.state.localStorage.clear()),r.setState({ready:!1,facilitatorInvited:!1,decryptionErrors:{},roomId:null,typingStatus:null,client:null,isCryptoEnabled:!1}),r.displayBotMessage({body:"Restarting chat without encryption."});var e,t={baseUrl:r.props.matrixServerUrl,accessToken:r.state.accessToken,userId:r.state.userId,deviceId:r.state.deviceId};e=C.createClient(t),await e.startClient(),e.once("sync",(async function(t,n,i){if("PREPARED"===t)try{r.setState({client:e}),e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e),r.displayBotMessage({body:"Messages in this chat are not encrypted."})}catch(e){console.log("error",e),r.handleInitError(e)}}))})),v()(m()(r),"initializeUnencryptedChat",(async function(){r.setState({ready:!1});var e=await r.createClientWithAccount();await e.startClient(),e.once("sync",(async function(t,n,i){e.setDisplayName(r.props.anonymousDisplayName),r.setMatrixListeners(e),await r.createRoom(e)}))})),v()(m()(r),"handleInitError",(function(e){console.log("error",e),r.displayBotMessage({body:r.props.chatUnavailableMessage}),r.setState({ready:!0})})),v()(m()(r),"handleDecryptionError",(async function(e,t){var n=e.getId();r.handleMessageEvent(e),r.setState({decryptionErrors:v()({},n,!0)})})),v()(m()(r),"verifyAllRoomDevices",(async function(e,t){if(t&&e&&r.state.isCryptoEnabled){var n=(await t.getEncryptionTargetMembers()).map((function(e){return e.userId})),i=await e.downloadKeys(n);for(var o in i)for(var s in i[o])await e.setDeviceVerified(o,s)}})),v()(m()(r),"createRoom",(async function(e){var t=new Date,n=t.toLocaleDateString(),i=t.toLocaleTimeString(),o={room_alias_name:"private-support-chat-".concat(Object(x.uuid)()),invite:[r.props.botId],visibility:"private",name:"".concat(i,", ").concat(n," - ").concat(r.props.roomName)},s=await e.isCryptoEnabled();s&&(o.initial_state=[{type:"m.room.encryption",state_key:"",content:U}]);var a=(await e.createRoom(o)).room_id;e.setPowerLevel(a,r.props.botId,100),r.setState({roomId:a,isCryptoEnabled:s})})),v()(m()(r),"sendMessage",(async function(e){if(r.state.client&&r.state.roomId)try{await r.state.client.sendTextMessage(r.state.roomId,e)}catch(t){switch(t.name){case"UnknownDeviceError":Object.keys(t.devices).forEach((function(e){Object.keys(t.devices[e]).map((async function(t){await r.state.client.setDeviceKnown(e,t,!0)}))})),r.sendMessage(e);break;default:r.displayBotMessage({body:"Your message was not sent."}),console.log("Error sending message",t)}}})),v()(m()(r),"displayFakeMessage",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Object(x.uuid)(),i={id:n,type:"m.room.message",sender:t,roomId:r.state.roomId,content:e,timestamp:Date.now()};r.setState({messages:j({},r.state.messages,v()({},n,i))})})),v()(m()(r),"displayBotMessage",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Object(x.uuid)(),i={id:n,type:"m.room.message",sender:r.props.botId,roomId:t||r.state.roomId,content:e,timestamp:Date.now()};r.setState({messages:j({},r.state.messages,v()({},n,i))})})),v()(m()(r),"handleMessageEvent",(function(e){var t={id:e.getId(),type:e.getType(),sender:e.getSender(),roomId:e.getRoomId(),content:e.getContent(),timestamp:e.getTs()};if(!(t.content.showToUser&&t.content.showToUser!==r.state.userId||t.content.body.startsWith("!bot")&&t.sender!==r.state.userId)){var n=s()(r.state.messagesInFlight),i=n.findIndex((function(e){return e===t.content.body}));i>-1&&(n.splice(i,1),r.setState({messagesInFlight:n}));var o=j({},r.state.decryptionErrors);delete o[t.id],r.setState({messages:j({},r.state.messages,v()({},t.id,t)),decryptionErrors:o})}})),v()(m()(r),"handleKeyDown",(function(e){switch(e.keyCode){case 27:r.state.emojiSelectorOpen?r.closeEmojiSelector():r.state.opened&&r.handleToggleOpen()}})),v()(m()(r),"setMatrixListeners",(function(e){e.on("sync",(function(t,n,i){switch(t){case"ERROR":case"SYNCING":break;case"PREPARED":r.setState({client:e})}})),e.on("Room.timeline",(function(t,n){var i=t.getType(),o=t.getContent(),s=t.getSender();if("m.room.encryption"===i&&(r.displayBotMessage({body:"Messages in this chat are secured with end-to-end encryption."},n.room_id),r.verifyAllRoomDevices(e,n)),"m.room.message"===i&&!r.state.isCryptoEnabled){if(t.isEncrypted())return;r.handleMessageEvent(t)}"m.room.member"===i&&"invite"===o.membership&&s===r.props.botId&&r.setState({facilitatorInvited:!0}),"m.room.member"===i&&"join"===o.membership&&s!==r.props.botId&&s!==r.state.userId&&(r.verifyAllRoomDevices(e,n),r.setState({facilitatorId:s,ready:!0}),window.clearInterval(r.state.waitIntervalId))})),e.on("Event.decrypted",(function(e,t){if(t)return r.handleDecryptionError(e,t);"m.room.message"===e.getType()&&r.handleMessageEvent(e)})),e.on("RoomMember.typing",(function(e,t){t.typing&&t.roomId===r.state.roomId?r.setState({typingStatus:"".concat(t.name," is typing...")}):r.setState({typingStatus:null})})),e.on("event",(function(e){var t=e.getType(),n=e.getContent();"m.bot.signal"===t&&r.handleBotSignal(n.signal)}))})),v()(m()(r),"handleBotSignal",(function(e){switch(e){case"END_CHAT":return r.displayBotMessage({body:r.props.exitMessage}),r.exitChat(!1);case"CHAT_OFFLINE":return r.displayBotMessage({body:r.props.chatOfflineMessage}),r.exitChat(!1)}})),v()(m()(r),"handleInputChange",(function(e){r.setState({inputValue:e.target.value})})),v()(m()(r),"handleAcceptTerms",(function(){r.setState({awaitingAgreement:!1}),r.startWaitTimeForFacilitator();try{r.props.isEncryptionDisabled?r.initializeUnencryptedChat():r.initializeChat()}catch(e){r.handleInitError(e)}})),v()(m()(r),"startWaitTimeForFacilitator",(function(){var e=window.setInterval((function(){r.state.facilitatorId||r.state.ready||r.displayBotMessage({body:r.props.waitMessage})}),r.props.waitInterval);r.setState({waitIntervalId:e})})),v()(m()(r),"handleRejectTerms",(function(){r.exitChat(),r.displayBotMessage({body:r.props.exitMessage})})),v()(m()(r),"handleSubmit",(function(e){e.preventDefault();var t=r.state.inputValue;if(!Boolean(t))return null;if(r.state.isCryptoEnabled&&r.state.client&&(!r.state.client.isRoomEncrypted(r.state.roomId)||!r.state.client.isCryptoEnabled()))return null;if(r.state.client&&r.state.roomId){var n=s()(r.state.messagesInFlight);n.push(t),r.setState({inputValue:"",messagesInFlight:n},(function(){return r.sendMessage(t)})),r.chatboxInput.current.focus()}})),v()(m()(r),"onEmojiClick",(function(e,t){e.preventDefault();var n=t.emoji;r.setState({inputValue:r.state.inputValue.concat(n),emojiSelectorOpen:!1},r.chatboxInput.current.focus())})),r.initialState={opened:!1,showDock:!0,client:null,ready:!0,accessToken:null,userId:null,password:null,localStorage:null,messages:{},inputValue:"",errors:[],roomId:null,typingStatus:null,awaitingAgreement:!0,emojiSelectorOpen:!1,facilitatorInvited:!1,isMobile:!0,isSlowConnection:!0,decryptionErrors:{},messagesInFlight:[]},r.state=r.initialState,r.chatboxInput=w.a.createRef(),r.messageWindow=w.a.createRef(),r.termsUrl=w.a.createRef(),r}return y()(n,t),u()(n,[{key:"componentDidUpdate",value:function(e,t){t.messages===this.state.messages&&t.messagesInFlight===this.state.messagesInFlight&&t.typingStatus===this.state.typingStatus||this.messageWindow.current.scrollTo&&this.messageWindow.current.scrollTo(0,this.messageWindow.current.scrollHeight),!t.facilitatorInvited&&this.state.facilitatorInvited&&this.displayBotMessage({body:this.props.confirmationMessage}),!t.opened&&this.state.opened&&this.detectMobile()}},{key:"componentDidMount",value:function(){document.addEventListener("keydown",this.handleKeyDown,!1),window.addEventListener("beforeunload",this.exitChat)}},{key:"componentWillUnmount",value:function(){document.removeEventListener("keydown",this.handleKeyDown,!1),window.removeEventListener("beforeunload",this.exitChat),this.exitChat()}},{key:"render",value:function(){var e,t=this,n=this.state,r=n.ready,o=n.messages,s=n.messagesInFlight,a=n.inputValue,f=n.userId,c=n.roomId,u=n.typingStatus,l=n.opened,d=n.showDock,h=n.emojiSelectorOpen,p=n.isMobile,g=n.decryptionErrors,m=Object.values(o).sort((function(e,t){return e.timestamp-t.timestamp})),_=this.props.position.split(" "),y=i()(_,2),b=y[0],A=y[1];return w.a.createElement("div",{id:"safesupport"},w.a.createElement("div",{className:"docked-widget size-".concat(this.props.size),role:"complementary",style:(e={},v()(e,b,"10px"),v()(e,A,"10px"),e)},w.a.createElement(k.a,{in:l,timeout:250,onExited:this.handleWidgetExit,onEntered:this.handleWidgetEnter},(function(e){return w.a.createElement("div",{className:"widget widget-".concat(e," position-").concat(b),"aria-hidden":!l},w.a.createElement("div",{id:"safesupport-chatbox","aria-haspopup":"dialog"},w.a.createElement(D.a,{handleToggleOpen:t.handleToggleOpen,opened:l,handleExitChat:t.handleExitChat}),w.a.createElement("div",{className:"message-window",ref:t.messageWindow},w.a.createElement("div",{className:"messages"},w.a.createElement("div",{className:"message from-bot"},w.a.createElement("div",{className:"text"},t.props.introMessage)),w.a.createElement("div",{className:"message from-bot"},w.a.createElement("div",{className:"text"},"Please read the full ",w.a.createElement("a",{href:t.props.termsUrl,ref:t.termsUrl,target:"_blank",rel:"noopener noreferrer"},"terms and conditions"),". By using this chat, you agree to these terms.")),w.a.createElement("div",{className:"message from-bot"},w.a.createElement("div",{className:"text"},t.props.agreementMessage)),w.a.createElement("div",{className:"message from-bot"},w.a.createElement("div",{className:"text buttons"},"👉",w.a.createElement("button",{className:"btn",id:"accept",onClick:t.handleAcceptTerms},"YES"),w.a.createElement("button",{className:"btn",id:"reject",onClick:t.handleRejectTerms},"NO"))),m.map((function(e,n){return w.a.createElement(M.a,{key:e.id,message:e,userId:f,botId:t.props.botId,client:t.state.client})})),s.map((function(e,t){return w.a.createElement(M.a,{key:"message-inflight-".concat(t),message:{content:{body:e}},placeholder:!0})})),u&&w.a.createElement("div",{className:"notices"},w.a.createElement("div",{role:"status"},u)),Boolean(Object.keys(g).length)&&w.a.createElement("div",{className:"message from-bot"},w.a.createElement("div",{className:"text buttons"},"Restart chat without encryption?",w.a.createElement("button",{className:"btn",id:"accept",onClick:t.restartWithoutCrypto},"RESTART"))),!r&&w.a.createElement("div",{className:"loader"},"loading..."))),w.a.createElement("div",{className:"input-window"},w.a.createElement("form",{onSubmit:t.handleSubmit},w.a.createElement("div",{className:"message-input-container"},w.a.createElement("input",{id:"message-input",type:"text",onChange:t.handleInputChange,value:a,"aria-label":"Send a message...",placeholder:"Send a message...",autoFocus:!0,ref:t.chatboxInput}),"entered"===e&&!p&&w.a.createElement(B.a,{onEmojiClick:t.onEmojiClick,emojiSelectorOpen:h,toggleEmojiSelector:t.toggleEmojiSelector,closeEmojiSelector:t.closeEmojiSelector})),w.a.createElement("input",{type:"submit",value:"Send",id:"submit",onClick:t.handleSubmit})))))})),d&&!c&&w.a.createElement(P.a,{handleToggleOpen:this.handleToggleOpen,size:this.props.size,label:this.props.dockLabel}),d&&c&&w.a.createElement(D.a,{handleToggleOpen:this.handleToggleOpen,opened:l,handleExitChat:this.handleExitChat})))}}]),n}(w.a.Component);L.propTypes={matrixServerUrl:S.a.string.isRequired,botId:S.a.string.isRequired,termsUrl:S.a.string,introMessage:S.a.string,roomName:S.a.string,agreementMessage:S.a.string,confirmationMessage:S.a.string,exitMessage:S.a.string,chatUnavailableMessage:S.a.string,anonymousDisplayName:S.a.string,waitMessage:S.a.string,chatOfflineMessage:S.a.string,isEncryptionDisabled:S.a.bool,position:S.a.oneOf(["top left","top right","bottom left","bottom right"]),size:S.a.oneOf(["small","large"]),maxWaitTime:S.a.number,waitInterval:S.a.number,dockLabel:S.a.string},L.defaultProps={matrixServerUrl:"https://matrix.rhok.space/",botId:"@help-bot:rhok.space",termsUrl:"https://tosdr.org/",roomName:"Support Chat",introMessage:"This chat application does not collect any of your personal data or any data from your use of this service.",agreementMessage:"Do you want to continue?",confirmationMessage:"Waiting for a facilitator to join the chat...",exitMessage:"The chat is closed. You may close this window.",anonymousDisplayName:"Anonymous",chatUnavailableMessage:"The chat service is not available right now. Please try again later.",waitMessage:"Please be patient, our online facilitators are currently responding to other support requests.",chatOfflineMessage:"All of the chat facilitators are currently offline.",isEncryptionDisabled:!1,position:"bottom right",size:"large",maxWaitTime:6e5,waitInterval:12e4,dockLabel:"Start a new chat"},t.a=L}).call(this,n(6))},function(e,t,n){var r=n(158),i=n(159),o=n(160);e.exports=function(e,t){return r(e)||i(e,t)||o()}},function(e,t){t.endianness=function(){return"LE"},t.hostname=function(){return"undefined"!=typeof location?location.hostname:""},t.loadavg=function(){return[]},t.uptime=function(){return 0},t.freemem=function(){return Number.MAX_VALUE},t.totalmem=function(){return Number.MAX_VALUE},t.cpus=function(){return[]},t.type=function(){return"Browser"},t.release=function(){return"undefined"!=typeof navigator?navigator.appVersion:""},t.networkInterfaces=t.getNetworkInterfaces=function(){return{}},t.arch=function(){return"javascript"},t.platform=function(){return"browser"},t.tmpdir=t.tmpDir=function(){return"/tmp"},t.EOL="\n",t.homedir=function(){return"/"}},function(e,t,n){(function(e){(function(){var r,i,o,s,a,f,c,u,l,d,h,p,g,m=function(e,t){for(var n in t)_.call(t,n)&&(e[n]=t[n]);function r(){this.constructor=e}return r.prototype=t.prototype,e.prototype=new r,e.__super__=t.prototype,e},_={}.hasOwnProperty;p=n(35),h=n(38),d=n(10),g=n(169).sync,f=function(e){var t,n,r,i,o;for(o=[],t=0,n=(i=h.readdirSync(e)).length;tthis.quota)throw new s;if(g(f,_,"utf8"),i||((l=new o(n,this._keys.push(e)-1)).size=y,this._metaKeyMap[e]=l,this.length+=1,this._bytesInUse+=y),u)return r=new a(e,m,t,this._eventUrl),this.emit("storage",r)},r.prototype.getItem=function(e){var t,n;return e=c(e),(n=this._metaKeyMap[e])?(t=p.join(this._location,n.key),h.readFileSync(t,"utf8")):null},r.prototype._getStat=function(e){var t;e=c(e),t=p.join(this._location,encodeURIComponent(e));try{return h.statSync(t)}catch(e){return null}},r.prototype.removeItem=function(e){var t,n,r,i,o,s,f,l;if(e=c(e),s=this._metaKeyMap[e]){for(i in f=null,(r=d.EventEmitter.listenerCount(this,"storage"))&&(f=this.getItem(e)),delete this._metaKeyMap[e],this.length-=1,this._bytesInUse-=s.size,n=p.join(this._location,s.key),this._keys.splice(s.index,1),l=this._metaKeyMap)l[i],(o=this._metaKeyMap[i]).index>s.index&&(o.index-=1);if(u(n),r)return t=new a(e,f,null,this._eventUrl),this.emit("storage",t)}},r.prototype.key=function(e){var t;return"---.EMPTY_STRING.---"===(t=this._keys[e])?"":t},r.prototype.clear=function(){var e;if(f(this._location),this._metaKeyMap=l(),this._keys=[],this.length=0,this._bytesInUse=0,d.EventEmitter.listenerCount(this,"storage"))return e=new a(null,null,null,this._eventUrl),this.emit("storage",e)},r.prototype._getBytesInUse=function(){return this._bytesInUse},r.prototype._deleteLocation=function(){return delete n[this._location],u(this._location),this._metaKeyMap={},this._keys=[],this.length=0,this._bytesInUse=0},r}(d.EventEmitter)),t.LocalStorage=i,t.JSONStorage=r,t.QUOTA_EXCEEDED_ERR=s}).call(this)}).call(this,n(13))},function(e,t,n){(function(t,r,i,o){var s,a,f,c,u={},l=(f="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,function(c){var l,d;if(c=c||{},l||(l=void 0!==c?c:{}),"undefined"!=typeof window)d=function(e){window.crypto.getRandomValues(e)};else{if(!e.exports)throw Error("Cannot find global to attach library to");var h=n(194);d=function(e){var t=h.randomBytes(e.length);e.set(t)},r=t.process}if("undefined"!=typeof OLM_OPTIONS)for(var p in OLM_OPTIONS)OLM_OPTIONS.hasOwnProperty(p)&&(l[p]=OLM_OPTIONS[p]);l.onRuntimeInitialized=function(){We=l._olm_error(),u.PRIVATE_KEY_LENGTH=l._olm_pk_private_key_length(),s&&s()},l.onAbort=function(e){a&&a(e)};var g,m={};for(g in l)l.hasOwnProperty(g)&&(m[g]=l[g]);l.arguments=[],l.thisProgram="./this.program",l.quit=function(e,t){throw t},l.preRun=[],l.postRun=[];var _=!1,y=!1,b=!1,v=!1;_="object"==typeof window,y="function"==typeof importScripts,b="object"==typeof r&&!_&&!y,v=!_&&!b&&!y;var A,w,E="";b?(E=i+"/",l.read=function(e,t){var r=we(e);return r||(A||(A=n(38)),w||(w=n(35)),e=w.normalize(e),r=A.readFileSync(e)),t?r:r.toString()},l.readBinary=function(e){return(e=l.read(e,!0)).buffer||(e=new Uint8Array(e)),C(e.buffer),e},1>2];return e=t+e+15&-16,U[V>>2]=e,(e=e>=$)&&(J(),e=!0),e?(U[V>>2]=t,0):t}function T(e){var t;return t||(t=16),Math.ceil(e/t)*t}m=void 0;var O=!1;function C(e,t){e||Be("Assertion failed: "+t)}function x(e){var t="i8";switch("*"===t.charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":B[e>>0]=0;break;case"i16":j[e>>1]=0;break;case"i32":U[e>>2]=0;break;case"i64":tempI64=[0,(tempDouble=0,1<=+fe(tempDouble)?0>>0:~~+ce((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],U[e>>2]=tempI64[0],U[e+4>>2]=tempI64[1];break;case"float":L[e>>2]=0;break;case"double":q[e>>3]=0;break;default:Be("invalid type for setValue: "+t)}}function M(e,t){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return B[e>>0];case"i16":return j[e>>1];case"i32":case"i64":return U[e>>2];case"float":return L[e>>2];case"double":return q[e>>3];default:Be("invalid type for getValue: "+t)}return null}function P(e){var t,n=l.ALLOC_STACK;if("number"==typeof e)var r=!0,i=e;else r=!1,i=e.length;if(t=4==n?o:["function"==typeof Se?Se:I,ke,I,R][void 0===n?2:n](Math.max(i,1)),r){var o=t;for(C(0==(3&t)),e=t+(-4&i);o>2]=0;for(e=t+i;o>0]=0;return t}return e.subarray||e.slice?N.set(e,t):N.set(new Uint8Array(e),t),t}var D,B,N,j,U,L,q,F,K,G,z,H,V,Q="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function W(e){for(var t=N,n=e;t[n];)++n;if(16r?n+=String.fromCharCode(r):(r-=65536,n+=String.fromCharCode(55296|r>>10,56320|1023&r))}}else n+=String.fromCharCode(r)}}function Y(e,t,n,r){if(!(0=s&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),127>=s){if(n>=r)break;t[n++]=s}else{if(2047>=s){if(n+1>=r)break;t[n++]=192|s>>6}else{if(65535>=s){if(n+2>=r)break;t[n++]=224|s>>12}else{if(2097151>=s){if(n+3>=r)break;t[n++]=240|s>>18}else{if(67108863>=s){if(n+4>=r)break;t[n++]=248|s>>24}else{if(n+5>=r)break;t[n++]=252|s>>30,t[n++]=128|s>>24&63}t[n++]=128|s>>18&63}t[n++]=128|s>>12&63}t[n++]=128|s>>6&63}t[n++]=128|63&s}}return t[n]=0,n-i}function X(e){for(var t=0,n=0;n=r&&(r=65536+((1023&r)<<10)|1023&e.charCodeAt(++n)),127>=r?++t:t=2047>=r?t+2:65535>=r?t+3:2097151>=r?t+4:67108863>=r?t+5:t+6}return t}function J(){Be("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+$+", (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 ")}"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le"),F=K=G=z=H=V=0;var Z=l.TOTAL_STACK||5242880,$=l.TOTAL_MEMORY||16777216;function ee(e){for(;0>0]=e.charCodeAt(n)}var fe=Math.abs,ce=Math.ceil,ue=Math.floor,le=Math.min,de=0,he=null,pe=null;l.preloadedImages={},l.preloadedAudios={};var ge=null,me="data:application/octet-stream;base64,";F=39112,ne.push(),ge="data:application/octet-stream;base64,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dmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAAAAAAAAXZQAAAgAAABmlAAACwAAALiSAABUlAAACAAAALiSAAC0mAAAAAAAAAEAAAABAAAAAQAAAAIAAAACAAAAuJIAANiUAAALAAAAuJIAACKWAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmJgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABPTE1fS0VZUwBPTE1fUk9PVABPTE1fUkFUQ0hFVABzZW5kZXIgY2hhaW4gaW5kZXg6ICVkIAByZWNlaXZlciBjaGFpbiBpbmRpY2VzOgAgc2tpcHBlZCBtZXNzYWdlIGtleXM6ACAlZAABAiJjdXJ2ZTI1NTE5IjoAImVkMjU1MTkiOgBNRUdPTE1fS0VZUwAAAQIDVU5LTk9XTl9FUlJPUgBTVUNDRVNTAE5PVF9FTk9VR0hfUkFORE9NAE9VVFBVVF9CVUZGRVJfVE9PX1NNQUxMAEJBRF9NRVNTQUdFX1ZFUlNJT04AQkFEX01FU1NBR0VfRk9STUFUAEJBRF9NRVNTQUdFX01BQwBCQURfTUVTU0FHRV9LRVlfSUQASU5WQUxJRF9CQVNFNjQAQkFEX0FDQ09VTlRfS0VZAFVOS05PV05fUElDS0xFX1ZFUlNJT04AQ09SUlVQVEVEX1BJQ0tMRQBCQURfU0VTU0lPTl9LRVkAVU5LTk9XTl9NRVNTQUdFX0lOREVYAEJBRF9MRUdBQ1lfQUNDT1VOVF9QSUNLTEUAQkFEX1NJR05BVFVSRQBPTE1fSU5QVVRfQlVGRkVSX1RPT19TTUFMTABQaWNrbGUALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBuYW4ATkFOAC4=";var _e=F;F+=16,V=I(4),K=G=T(F),H=T(z=K+Z),U[V>>2]=H;var ye=!1;function be(e){var t=Array(X(e)+1);return e=Y(e,t,0,t.length),t.length=e,t}function ve(e){for(var t=[],n=0;n>4,i=(15&i)<<4|o>>2;var a=(3&o)<<6|s;t+=String.fromCharCode(r),64!==o&&(t+=String.fromCharCode(i)),64!==s&&(t+=String.fromCharCode(a))}while(n>2]=e),e},_emscripten_memcpy_big:function(e,t,n){return N.set(N.subarray(t,t+n),e),e},DYNAMICTOP_PTR:V,tempDoublePtr:_e,STACKTOP:G,STACK_MAX:z};var Ee=function(e,t,n){"use asm";var r=new e.Int8Array(n);var i=new e.Int16Array(n);var o=new e.Int32Array(n);var s=new e.Uint8Array(n);var a=new e.Uint16Array(n);var f=new e.Uint32Array(n);var c=new e.Float32Array(n);var u=new e.Float64Array(n);var l=t.DYNAMICTOP_PTR|0;var d=t.tempDoublePtr|0;var h=t.STACKTOP|0;var p=t.STACK_MAX|0;var g=0;var m=0;var _=0;var y=0;var b=e.NaN,v=e.Infinity;var A=0,w=0,E=0,S=0,k=0.0;var I=0;var R=e.Math.floor;var T=e.Math.abs;var O=e.Math.sqrt;var C=e.Math.pow;var x=e.Math.cos;var M=e.Math.sin;var P=e.Math.tan;var D=e.Math.acos;var B=e.Math.asin;var N=e.Math.atan;var j=e.Math.atan2;var U=e.Math.exp;var L=e.Math.log;var q=e.Math.ceil;var F=e.Math.imul;var K=e.Math.min;var G=e.Math.max;var z=e.Math.clz32;var H=t.abort;var V=t.assert;var Q=t.enlargeMemory;var W=t.getTotalMemory;var Y=t.abortOnCannotGrowMemory;var X=t.invoke_ii;var J=t.invoke_iii;var Z=t.invoke_iiii;var $=t.invoke_iiiiiiiiii;var ee=t.___setErrNo;var te=t._emscripten_memcpy_big;var ne=0.0;function re(e){e=e|0;var t=0;t=h;h=h+e|0;h=h+15&-16;return t|0}function ie(){return h|0}function oe(e){e=e|0;h=e}function se(e,t){e=e|0;t=t|0;h=e;p=t}function ae(e,t){e=e|0;t=t|0;if(!g){g=e;m=t}}function fe(e){e=e|0;I=e}function ce(){return I|0}function ue(e){e=e|0;var t=0;t=e+2|0;e=(t>>>0)/3|0;return(e<<2|t-(e*3|0))+-2|0}function le(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,f=0,c=0;a=t-((t>>>0)%3|0)|0;o=e+a|0;if(!a){a=n;o=e}else{i=e;do{a=s[i>>0]|0;f=a<<8|(s[i+1>>0]|0);c=s[i+2>>0]|0;i=i+3|0;r[n+3>>0]=r[16+(c&63)>>0]|0;r[n+2>>0]=r[16+((f<<8|c)>>>6&63)>>0]|0;r[n+1>>0]=r[16+(f>>>4&63)>>0]|0;r[n>>0]=r[16+(a>>>2)>>0]|0;n=n+4|0}while((i|0)!=(o|0));a=n}n=e+t-o|0;if(!n){c=a;return c|0}i=s[o>>0]|0;if((n|0)==2){n=s[o+1>>0]|0;r[a+2>>0]=r[16+(n<<2&60)>>0]|0;n=(i<<8|n)>>>4;i=3}else{n=i<<4;i=2}r[a+1>>0]=r[16+(n&63)>>0]|0;r[a>>0]=r[16+(n>>>6)>>0]|0;c=a+i|0;return c|0}function de(e){e=e|0;var t=0;t=e+2|0;return((e&3|0)==1?-1:(t&3)+-2+((t>>>2)*3|0)|0)|0}function he(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,f=0,c=0,u=0,l=0;c=t&-4;a=e+c|0;if(!c)f=e;else{f=(((c+-4|0)>>>2)*3|0)+3|0;i=n;o=e;while(1){u=(s[80+(r[o>>0]&127)>>0]|0)<<6|(s[80+(r[o+1>>0]&127)>>0]|0);l=u<<6|(s[80+(r[o+2>>0]&127)>>0]|0);r[i+2>>0]=l<<6|(s[80+(r[o+3>>0]&127)>>0]|0);o=o+4|0;r[i+1>>0]=l>>>2;r[i>>0]=u>>>4;if((o|0)==(a|0))break;else i=i+3|0}n=n+f|0;f=e+c|0}i=e+t|0;o=i-f|0;if(!o)return i|0;a=(s[80+(r[f>>0]&127)>>0]|0)<<6|(s[80+(r[f+1>>0]&127)>>0]|0);if((o|0)==3)r[n+1>>0]=(a<<6|(s[80+(r[f+2>>0]&127)>>0]|0))>>>2;r[n>>0]=a>>>4;return i|0}function pe(e){e=e|0;var t=0;t=e+2|0;e=(t>>>0)/3|0;return(e<<2|t-(e*3|0))+-2|0}function ge(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,a=0,f=0,c=0,u=0;f=t-((t>>>0)%3|0)|0;a=e+f|0;if(!f){f=n;a=e}else{i=n;o=e;do{f=s[o>>0]|0;c=f<<8|(s[o+1>>0]|0);u=s[o+2>>0]|0;o=o+3|0;r[i+3>>0]=r[16+(u&63)>>0]|0;r[i+2>>0]=r[16+((c<<8|u)>>>6&63)>>0]|0;r[i+1>>0]=r[16+(c>>>4&63)>>0]|0;r[i>>0]=r[16+(f>>>2)>>0]|0;i=i+4|0}while((o|0)!=(a|0));f=i}i=e+t-a|0;if(!i){c=f;u=n;u=c-u|0;return u|0}o=s[a>>0]|0;if((i|0)==2){i=s[a+1>>0]|0;r[f+2>>0]=r[16+(i<<2&60)>>0]|0;i=(o<<8|i)>>>4;o=3}else{i=o<<4;o=2}r[f+1>>0]=r[16+(i&63)>>0]|0;r[f>>0]=r[16+(i>>>6)>>0]|0;c=f+o|0;u=n;u=c-u|0;return u|0}function me(e){e=e|0;var t=0;t=e+2|0;return((e&3|0)==1?-1:(t&3)+-2+((t>>>2)*3|0)|0)|0}function _e(e,t,n){e=e|0;t=t|0;n=n|0;he(e,t,n)|0;n=t+2|0;return((t&3|0)==1?-1:(n&3)+-2+((n>>>2)*3|0)|0)|0}function ye(e,t){e=e|0;t=t|0;r[e+3>>0]=t;r[e+2>>0]=t>>>8;r[e+1>>0]=t>>>16;r[e>>0]=t>>>24;return e+4|0}function be(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;o[n>>2]=0;r=e+4|0;if(r>>>0>t>>>0){r=t;return r|0}o[n>>2]=0;t=(s[e>>0]|0)<<8;o[n>>2]=t;t=(t|(s[e+1>>0]|0))<<8;o[n>>2]=t;t=(t|(s[e+2>>0]|0))<<8;o[n>>2]=t;o[n>>2]=t|(s[e+3>>0]|0);return r|0}function ve(e,t){e=e|0;t=t|0;r[e>>0]=t&1;return e+1|0}function Ae(e,t,n){e=e|0;t=t|0;n=n|0;if((e|0)==(t|0)){n=e;return n|0}r[n>>0]=(r[e>>0]|0)!=0&1;n=e+1|0;return n|0}function we(e,t,n){e=e|0;t=t|0;n=n|0;Ps(e|0,t|0,n|0)|0;return e+n|0}function Ee(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=e+r|0;if(i>>>0>t>>>0){i=t;return i|0}Ps(n|0,e|0,r|0)|0;return i|0}function Se(e){e=e|0;return 32}function ke(e,t){e=e|0;t=t|0;var n=0,i=0;i=e;n=i+32|0;do{r[i>>0]=r[t>>0]|0;i=i+1|0;t=t+1|0}while((i|0)<(n|0));return e+32|0}function Ie(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;i=e+32|0;if(i>>>0>t>>>0){i=t;return i|0}t=e;e=n+32|0;do{r[n>>0]=r[t>>0]|0;n=n+1|0;t=t+1|0}while((n|0)<(e|0));return i|0}function Re(e){e=e|0;return 64}function Te(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;n=e;i=t;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));n=e+32|0;i=t+32|0;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));return e+64|0}function Oe(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0;i=e+32|0;if(i>>>0>t>>>0)i=t;else{a=n;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0))}o=i+32|0;if(o>>>0>t>>>0){a=t;return a|0}a=n+32|0;e=i;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0));a=o;return a|0}function Ce(e){e=e|0;return 32}function xe(e,t){e=e|0;t=t|0;var n=0,i=0;i=e;n=i+32|0;do{r[i>>0]=r[t>>0]|0;i=i+1|0;t=t+1|0}while((i|0)<(n|0));return e+32|0}function Me(e,t,n){e=e|0;t=t|0;n=n|0;var i=0;i=e+32|0;if(i>>>0>t>>>0){i=t;return i|0}t=e;e=n+32|0;do{r[n>>0]=r[t>>0]|0;n=n+1|0;t=t+1|0}while((n|0)<(e|0));return i|0}function Pe(e){e=e|0;return 96}function De(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;n=e;i=t;o=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));n=e+32|0;i=t+32|0;o=n+64|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(o|0));return e+96|0}function Be(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0;i=e+32|0;if(i>>>0>t>>>0)i=t;else{a=n;s=a+32|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0))}o=i+64|0;if(o>>>0>t>>>0){a=t;return a|0}a=n+32|0;e=i;s=a+64|0;do{r[a>>0]=r[e>>0]|0;a=a+1|0;e=e+1|0}while((a|0)<(s|0));a=o;return a|0}function Ne(e,t){e=e|0;t=t|0;r[e+3>>0]=t;r[e+2>>0]=t>>>8;r[e+1>>0]=t>>>16;r[e>>0]=t>>>24;return e+4|0}function je(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;o[n>>2]=0;r=e+4|0;if(r>>>0>t>>>0){r=t;return r|0}o[n>>2]=0;t=(s[e>>0]|0)<<8;o[n>>2]=t;t=(t|(s[e+1>>0]|0))<<8;o[n>>2]=t;t=(t|(s[e+2>>0]|0))<<8;o[n>>2]=t;o[n>>2]=t|(s[e+3>>0]|0);return r|0}function Ue(e,t){e=e|0;t=t|0;r[e>>0]=(t|0)!=0&1;return e+1|0}function Le(e,t,n){e=e|0;t=t|0;n=n|0;if((e|0)==(t|0)){n=e;return n|0}r[n>>0]=(r[e>>0]|0)!=0&1;n=e+1|0;return n|0}function qe(e,t,n){e=e|0;t=t|0;n=n|0;Ps(e|0,t|0,n|0)|0;return e+n|0}function Fe(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=e+r|0;if(i>>>0>t>>>0){i=t;return i|0}Ps(n|0,e|0,r|0)|0;return i|0}function Ke(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0,s=0;if(t>>>0>127){o=t;i=1;while(1){i=i+1|0;if(o>>>0>16383)o=o>>>7;else{s=i;break}}}else s=1;if(e>>>0>127){i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else{o=i;break}}}else o=1;if(n>>>0>127){e=n;i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else break}}else i=1;return t+4+n+r+s+o+i|0}function Ge(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var f=0,c=0;r[a>>0]=t;t=a+2|0;r[a+1>>0]=10;if(i>>>0>127){f=t;c=i;while(1){t=f+1|0;r[f>>0]=c|128;a=c>>>7;if(c>>>0>16383){f=t;c=a}else break}}else a=i;c=t+1|0;r[t>>0]=a;o[e>>2]=c;i=c+i|0;t=i+1|0;r[i>>0]=16;if(n>>>0>127)while(1){a=t+1|0;r[t>>0]=n|128;f=n>>>7;if(n>>>0>16383){t=a;n=f}else{n=f;break}}else a=t;r[a>>0]=n;f=e+4|0;t=a+2|0;r[a+1>>0]=34;if(s>>>0<=127){c=s;i=t;c=c&255;e=i+1|0;r[i>>0]=c;o[f>>2]=e;return}a=t;while(1){t=a+1|0;r[a>>0]=s|128;n=s>>>7;if(s>>>0>16383){a=t;s=n}else break}i=n&255;e=t+1|0;r[t>>0]=i;o[f>>2]=e;return}function ze(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0;s=n-i|0;c=t+s|0;o[e+8>>2]=t;o[e+12>>2]=n;l=e+1|0;r[l>>0]=0;d=e+16|0;h=e+20|0;p=e+24|0;u=e+28|0;o[d>>2]=0;o[d+4>>2]=0;o[d+8>>2]=0;o[d+12>>2]=0;if(n>>>0>>0|(s|0)==0)return;r[e>>0]=r[t>>0]|0;if((s|0)==1)return;a=e+4|0;f=c;s=t+1|0;e:while(1){if((r[s>>0]|0)==10){t=s+1|0;if((t|0)!=(c|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(c|0)){e=c;break}}if((e|0)!=(t|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0));if(n>>>0>(f-e|0)>>>0){s=58;break}}else{n=0;e=t}}else{n=0;e=c}o[d>>2]=e;o[h>>2]=n;e=e+n|0}else e=s;if((e|0)==(c|0)){s=58;break}if((r[e>>0]|0)==16){t=e+1|0;if((t|0)!=(c|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(c|0)){e=c;break}}if((e|0)==(t|0)){n=0;e=t}else{n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0))}}else{n=0;e=c}o[a>>2]=n;r[l>>0]=1}if((e|0)==(c|0)){s=58;break}if((r[e>>0]|0)==34){t=e+1|0;if((t|0)!=(c|0)){e=t;while(1){i=e;e=e+1|0;if((r[i>>0]|0)>-1)break;if((e|0)==(c|0)){e=c;break}}if((e|0)!=(t|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(t|0));if(n>>>0>(f-e|0)>>>0){s=58;break}}else{n=0;e=t}}else{n=0;e=c}o[p>>2]=e;o[u>>2]=n;e=e+n|0}t:do{if(!((s|0)!=(e|0)|(e|0)==(c|0))){n=r[s>>0]|0;switch(n&7){case 0:{s=s+1|0;e=(s|0)==(c|0);if(n<<24>>24<=-1)while(1){if(e){s=58;break e}n=s+1|0;e=(n|0)==(c|0);if((r[s>>0]|0)>-1){s=n;break}else s=n}if(e)break t;while(1){t=s;s=s+1|0;if((r[t>>0]|0)>-1)break t;if((s|0)==(c|0)){s=58;break e}}}case 2:break;default:{s=58;break e}}s=s+1|0;e=(s|0)==(c|0);if(n<<24>>24<=-1)while(1){if(e){s=58;break e}n=s+1|0;e=(n|0)==(c|0);if((r[s>>0]|0)>-1){s=n;break}else s=n}if(!e){e=s;while(1){t=e;e=e+1|0;if((r[t>>0]|0)>-1)break;if((e|0)==(c|0)){e=c;break}}if((e|0)!=(s|0)){n=0;i=e;do{i=i+-1|0;n=n<<7|r[i>>0]&127}while((i|0)!=(s|0));if(n>>>0>(f-e|0)>>>0){s=58;break e}else s=e+n|0}}}else s=e}while(0);if((s|0)==(c|0)){s=58;break}}if((s|0)==58)return}function He(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0,s=0,a=0,f=0;if(e>>>0>127){o=e;i=1;while(1){i=i+1|0;if(o>>>0>16383)o=o>>>7;else break}}else i=1;if(t>>>0>127){s=t;o=1;while(1){o=o+1|0;if(s>>>0>16383)s=s>>>7;else break}}else o=1;if(n>>>0>127){a=n;s=1;while(1){s=s+1|0;if(a>>>0>16383)a=a>>>7;else{f=s;break}}}else f=1;if(r>>>0>127){a=r;s=1;while(1){s=s+1|0;if(a>>>0>16383)a=a>>>7;else break}}else s=1;return e+5+t+n+r+i+o+f+s|0}function Ve(e,t,n,i,s,a,f){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;f=f|0;var c=0,u=0,l=0;r[f>>0]=t;l=e+8|0;t=f+2|0;r[f+1>>0]=10;if(s>>>0>127){c=t;u=s;while(1){t=c+1|0;r[c>>0]=u|128;f=u>>>7;if(u>>>0>16383){c=t;u=f}else break}}else f=s;u=t+1|0;r[t>>0]=f;o[l>>2]=u;s=u+s|0;l=e+4|0;t=s+1|0;r[s>>0]=18;if(i>>>0>127){c=i;while(1){u=t+1|0;r[t>>0]=c|128;f=c>>>7;if(c>>>0>16383){t=u;c=f}else{t=u;break}}}else f=i;s=t+1|0;r[t>>0]=f;o[l>>2]=s;i=s+i|0;t=i+1|0;r[i>>0]=26;if(n>>>0>127){c=n;while(1){u=t+1|0;r[t>>0]=c|128;f=c>>>7;if(c>>>0>16383){t=u;c=f}else{t=u;break}}}else f=n;u=t+1|0;r[t>>0]=f;o[e>>2]=u;n=u+n|0;u=e+12|0;t=n+1|0;r[n>>0]=34;if(a>>>0<=127){i=a;e=t;i=i&255;n=e+1|0;r[e>>0]=i;o[u>>2]=n;return}c=t;while(1){t=c+1|0;r[c>>0]=a|128;f=a>>>7;if(a>>>0>16383){c=t;a=f}else break}e=f&255;n=t+1|0;r[t>>0]=e;o[u>>2]=n;return}function Qe(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0;u=t+n|0;l=e+20|0;d=e+24|0;h=e+4|0;p=e+8|0;g=e+12|0;m=e+16|0;f=e+28|0;c=e+32|0;o[h>>2]=0;o[h+4>>2]=0;o[h+8>>2]=0;o[h+12>>2]=0;o[h+16>>2]=0;o[h+20>>2]=0;o[h+24>>2]=0;o[h+28>>2]=0;if(!n)return;r[e>>0]=r[t>>0]|0;if((n|0)==1)return;a=u;e=t+1|0;e:while(1){if((r[e>>0]|0)==10){s=e+1|0;if((s|0)!=(u|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(u|0)){n=u;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=u}o[l>>2]=n;o[d>>2]=t;n=n+t|0}else n=e;if((n|0)==(u|0)){e=70;break}if((r[n>>0]|0)==18){s=n+1|0;if((s|0)!=(u|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(u|0)){n=u;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=u}o[g>>2]=n;o[m>>2]=t;n=n+t|0}if((n|0)==(u|0)){e=70;break}if((r[n>>0]|0)==26){s=n+1|0;if((s|0)!=(u|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(u|0)){n=u;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=u}o[h>>2]=n;o[p>>2]=t;n=n+t|0}if((n|0)==(u|0)){e=70;break}if((r[n>>0]|0)==34){s=n+1|0;if((s|0)!=(u|0)){n=s;while(1){i=n;n=n+1|0;if((r[i>>0]|0)>-1)break;if((n|0)==(u|0)){n=u;break}}if((n|0)!=(s|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(s|0));if(t>>>0>(a-n|0)>>>0){e=70;break}}else{t=0;n=s}}else{t=0;n=u}o[f>>2]=n;o[c>>2]=t;n=n+t|0}t:do{if(!((e|0)!=(n|0)|(n|0)==(u|0))){t=r[e>>0]|0;switch(t&7){case 0:{e=e+1|0;n=(e|0)==(u|0);if(t<<24>>24<=-1)while(1){if(n){e=70;break e}t=e+1|0;n=(t|0)==(u|0);if((r[e>>0]|0)>-1){e=t;break}else e=t}if(n)break t;while(1){s=e;e=e+1|0;if((r[s>>0]|0)>-1)break t;if((e|0)==(u|0)){e=70;break e}}}case 2:break;default:{e=70;break e}}e=e+1|0;n=(e|0)==(u|0);if(t<<24>>24<=-1)while(1){if(n){e=70;break e}t=e+1|0;n=(t|0)==(u|0);if((r[e>>0]|0)>-1){e=t;break}else e=t}if(!n){n=e;while(1){s=n;n=n+1|0;if((r[s>>0]|0)>-1)break;if((n|0)==(u|0)){n=u;break}}if((n|0)!=(e|0)){t=0;i=n;do{i=i+-1|0;t=t<<7|r[i>>0]&127}while((i|0)!=(e|0));if(t>>>0>(a-n|0)>>>0){e=70;break e}else e=n+t|0}}}else e=n}while(0);if((e|0)==(u|0)){e=70;break}}if((e|0)==70)return}function We(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0;if(e>>>0>127){i=1;while(1){i=i+1|0;if(e>>>0>16383)e=e>>>7;else break}}else i=1;if(t>>>0>127){o=t;e=1;while(1){e=e+1|0;if(o>>>0>16383)o=o>>>7;else break}}else e=1;return t+3+n+r+i+e|0}function Ye(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,f=0;r[i>>0]=e;a=i+2|0;r[i+1>>0]=8;if(t>>>0>127){f=a;while(1){a=f+1|0;r[f>>0]=t|128;e=t>>>7;if(t>>>0>16383){f=a;t=e}else break}}else e=t;r[a>>0]=e;e=a+2|0;r[a+1>>0]=18;if(n>>>0>127){t=n;while(1){f=e+1|0;r[e>>0]=t|128;a=t>>>7;if(t>>>0>16383){e=f;t=a}else{e=f;break}}}else a=n;f=e+1|0;r[e>>0]=a;o[s>>2]=f;return f+n-i|0}function Xe(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,f=0,c=0,u=0,l=0,d=0,h=0;c=i+n|0;n=t-c|0;u=e+n|0;l=s+4|0;o[l>>2]=0;d=s+12|0;o[d>>2]=0;h=s+16|0;o[h>>2]=0;if(c>>>0>t>>>0|(n|0)==0)return;r[s>>0]=r[e>>0]|0;e:do{if((n|0)==1)n=0;else{c=u;n=0;i=e+1|0;do{if((r[i>>0]|0)==8){a=i+1|0;if((a|0)!=(u|0)){n=a;while(1){f=n;n=n+1|0;if((r[f>>0]|0)>-1)break;if((n|0)==(u|0)){n=u;break}}if((n|0)==(a|0)){t=0;n=a}else{t=0;e=n;do{e=e+-1|0;t=t<<7|r[e>>0]&127}while((e|0)!=(a|0))}}else{t=0;n=u}o[l>>2]=t;t=n;n=1}else t=i;if((t|0)==(u|0))break e;if((r[t>>0]|0)==18){f=t+1|0;if((f|0)!=(u|0)){t=f;while(1){a=t;t=t+1|0;if((r[a>>0]|0)>-1)break;if((t|0)==(u|0)){t=u;break}}if((t|0)!=(f|0)){e=0;a=t;do{a=a+-1|0;e=e<<7|r[a>>0]&127}while((a|0)!=(f|0));if(e>>>0>(c-t|0)>>>0)break e}else{e=0;t=f}}else{e=0;t=u}o[d>>2]=t;o[h>>2]=e;t=t+e|0}t:do{if(!((i|0)!=(t|0)|(t|0)==(u|0))){e=r[i>>0]|0;switch(e&7){case 0:{i=i+1|0;t=(i|0)==(u|0);if(e<<24>>24<=-1)while(1){if(t)break e;e=i+1|0;t=(e|0)==(u|0);if((r[i>>0]|0)>-1){i=e;break}else i=e}if(t)break t;while(1){f=i;i=i+1|0;if((r[f>>0]|0)>-1)break t;if((i|0)==(u|0))break e}}case 2:break;default:break e}i=i+1|0;t=(i|0)==(u|0);if(e<<24>>24<=-1)while(1){if(t)break e;e=i+1|0;t=(e|0)==(u|0);if((r[i>>0]|0)>-1){i=e;break}else i=e}if(!t){t=i;while(1){f=t;t=t+1|0;if((r[f>>0]|0)>-1)break;if((t|0)==(u|0)){t=u;break}}if((t|0)!=(i|0)){e=0;a=t;do{a=a+-1|0;e=e<<7|r[a>>0]&127}while((a|0)!=(i|0));if(e>>>0>(c-t|0)>>>0)break e;else i=t+e|0}}}else i=t}while(0)}while((i|0)!=(u|0))}}while(0);o[s+8>>2]=n&255;return}function Je(e){e=e|0;mn(e,37520,37536);o[e+3216>>2]=0;r[e+3220>>0]=0;return}function Ze(e){e=e|0;return 64}function $e(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var f=0,c=0,u=0,l=0,d=0;d=h;h=h+224|0;c=d+160|0;u=d+96|0;l=d;if(a>>>0<64){o[e+3216>>2]=1;l=-1;h=d;return l|0}else{pt(s,c);pt(s+32|0,u);t=t+96|0;r[e+3220>>0]=0;s=e+3221|0;a=t;f=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(f|0));s=e+3253|0;a=c;f=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(f|0));s=e+3285|0;a=i;f=s+32|0;do{r[s>>0]=r[a>>0]|0;s=s+1|0;a=a+1|0}while((s|0)<(f|0));gt(t,i,l);gt(c,n,l+32|0);gt(c,i,l+64|0);yn(e,l,96,u);Hr(c,64);Hr(u,64);Hr(l,96);l=0;h=d;return l|0}return 0}function et(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0;y=h;h=h+208|0;p=y+128|0;g=y+96|0;m=y+168|0;_=y;Qe(p,i,s);f=(n|0)!=0;i=o[p+4>>2]|0;a=(i|0)!=0;s=f|a;if(i)s=s&(o[p+8>>2]|0)==32;l=o[p+28>>2]|0;u=o[p+12>>2]|0;d=o[p+20>>2]|0;if(!(s&(l|0)!=0&(u|0)!=0&(o[p+16>>2]|0)==32&(d|0)!=0&(o[p+24>>2]|0)==32)){o[e+3216>>2]=4;_=-1;h=y;return _|0}if(f&a?Fo(n,i,32)|0:0){o[e+3216>>2]=6;_=-1;h=y;return _|0}c=e+3221|0;n=c;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));f=e+3253|0;n=f;i=u;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));s=e+3285|0;n=s;i=d;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));p=o[p+32>>2]|0;i=o[e+4>>2]|0;ze(g,l,p,zs[o[o[i>>2]>>2]&1](i)|0);i=o[g+16>>2]|0;if((i|0)!=0?(o[g+20>>2]|0)==32:0){n=m;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));i=Rr(t,s)|0;if(!i){o[e+3216>>2]=6;i=-1}else{i=i+5|0;gt(i,c,_);gt(t+96|0,f,_+32|0);gt(i,f,_+64|0);_n(e,_,96,m);Hr(_,96);i=0}}else{o[e+3216>>2]=4;i=-1}_=i;h=y;return _|0}function tt(e){e=e|0;return 32}function nt(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0;f=h;h=h+96|0;a=f;if(n>>>0<32){o[e+3216>>2]=2;a=-1;h=f;return a|0}else{n=a;i=e+3221|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));n=a+32|0;i=e+3253|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));n=a+64|0;i=e+3285|0;s=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(s|0));wt(a,96,t);a=32;h=f;return a|0}return 0}function rt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,f=0,c=0,u=0;u=h;h=h+48|0;c=u;Qe(c,n,r);f=(t|0)!=0;a=o[c+4>>2]|0;n=f|(a|0)!=0;r=(a|0)==0;if(!r)n=n&(o[c+8>>2]|0)==32;i=o[c+12>>2]|0;s=o[c+20>>2]|0;if(!(n&(o[c+28>>2]|0)!=0&(i|0)!=0&(o[c+16>>2]|0)==32&(s|0)!=0&(o[c+24>>2]|0)==32)){t=0;h=u;return t|0}if(r)n=1;else n=(Fo(a,e+3221|0,32)|0)==0;if(f){if(!n){t=0;h=u;return t|0}if(Fo(t,e+3221|0,32)|0){t=0;h=u;return t|0}}else if(!n){t=0;h=u;return t|0}if(Fo(i,e+3253|0,32)|0){t=0;h=u;return t|0}t=(Fo(s,e+3285|0,32)|0)==0;h=u;return t|0}function it(e){e=e|0;return s[e+3220>>0]|0|0}function ot(e,t){e=e|0;t=t|0;t=wn(e,t)|0;if(r[e+3220>>0]|0){e=t;return e|0}e=He(32,32,32,t)|0;return e|0}function st(e){e=e|0;return En(e)|0}function at(e,t,n,i,s,a,f){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;f=f|0;var c=0,u=0,l=0,d=0,p=0;p=h;h=h+16|0;d=p;c=wn(e,n)|0;u=e+3220|0;if(!(r[u>>0]|0))c=He(32,32,32,c)|0;if(c>>>0>f>>>0){o[e+3216>>2]=2;e=-1;h=p;return e|0}l=wn(e,n)|0;if(!(r[u>>0]|0)){Ve(d,3,32,32,32,l,a);a=o[d+8>>2]|0;c=e+3285|0;f=a+32|0;do{r[a>>0]=r[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(f|0));a=o[d>>2]|0;c=e+3221|0;f=a+32|0;do{r[a>>0]=r[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(f|0));a=o[d+4>>2]|0;c=e+3253|0;f=a+32|0;do{r[a>>0]=r[c>>0]|0;a=a+1|0;c=c+1|0}while((a|0)<(f|0));a=o[d+12>>2]|0}a=Sn(e,t,n,i,s,a,l)|0;if((a|0)!=-1){e=a;h=p;return e|0}s=e+8|0;o[e+3216>>2]=o[s>>2];o[s>>2]=0;e=-1;h=p;return e|0}function ft(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0;s=h;h=h+48|0;i=s;do{if((t|0)!=1){Qe(i,n,r);n=o[i+28>>2]|0;if(n|0){r=o[i+32>>2]|0;break}o[e+3216>>2]=4;e=-1;h=s;return e|0}}while(0);n=kn(e,n,r)|0;if((n|0)!=-1){e=n;h=s;return e|0}i=e+8|0;o[e+3216>>2]=o[i>>2];o[i>>2]=0;e=-1;h=s;return e|0}function ct(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var f=0,c=0;c=h;h=h+48|0;f=c;do{if((t|0)!=1){Qe(f,n,i);n=o[f+28>>2]|0;if(n|0){i=o[f+32>>2]|0;break}o[e+3216>>2]=4;e=-1;h=c;return e|0}}while(0);n=In(e,n,i,s,a)|0;if((n|0)==-1){a=e+8|0;o[e+3216>>2]=o[a>>2];o[a>>2]=0;e=-1;h=c;return e|0}else{r[e+3220>>0]=1;e=n;h=c;return e|0}return 0}function ut(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0;g=h;h=h+48|0;p=g+32|0;u=g+24|0;l=g+16|0;i=g;if(!n){h=g;return}r[t>>0]=0;c=t;o[i>>2]=o[e+112>>2];i=vs(t,n,38002,i)|0;i=(i|0)>0?t+i|0:t;d=c+n|0;a=vs(i,d-i|0,38026,g+8|0)|0;i=(a|0)>0?i+a|0:i;a=e+148|0;f=e+152|0;t=c-i+n|0;if((o[a>>2]|0)!=(f|0)){s=0;do{o[u>>2]=o[e+152+(s*68|0)+32>>2];t=vs(i,t,38073,u)|0;i=(t|0)>0?i+t|0:i;s=s+1|0;t=c-i+n|0}while(s>>>0<(((o[a>>2]|0)-f|0)/68|0)>>>0)}t=vs(i,t,38050,l)|0;a=e+492|0;f=e+496|0;if((o[a>>2]|0)==(f|0)){h=g;return}s=0;t=(t|0)>-1?i+t|0:i;while(1){o[p>>2]=o[e+496+(s*68|0)+32>>2];i=vs(t,d-t|0,38073,p)|0;s=s+1|0;if(s>>>0>=(((o[a>>2]|0)-f|0)/68|0)>>>0)break;else t=(i|0)>0?t+i|0:t}h=g;return}function lt(e){e=e|0;var t=0;t=(Se(e+3221|0)|0)+5|0;t=t+(Se(e+3253|0)|0)|0;t=t+(Se(e+3285|0)|0)|0;return t+(bn(e)|0)|0}function dt(e,t){e=e|0;t=t|0;e=ye(e,1)|0;return vn(ke(ke(ke(ve(e,(r[t+3220>>0]|0)!=0)|0,t+3221|0)|0,t+3253|0)|0,t+3285|0)|0,t)|0}function ht(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0;s=h;h=h+16|0;r=s;i=be(e,t,r)|0;e=o[r>>2]|0;e:do{if((e|0)<1){switch(e|0){case-2147483647:break;default:{r=3;break e}}e=1;r=4}else switch(e|0){case 1:{e=0;r=4;break}default:r=3}}while(0);if((r|0)==3){o[n+3216>>2]=9;n=t;h=s;return n|0}else if((r|0)==4){n=An(Ie(Ie(Ie(Ae(i,t,n+3220|0)|0,t,n+3221|0)|0,t,n+3253|0)|0,t,n+3285|0)|0,t,n,e)|0;h=s;return n|0}return 0}function pt(e,t){e=e|0;t=t|0;var n=0,i=0,o=0;i=t+32|0;o=i;n=o+32|0;do{r[o>>0]=r[e>>0]|0;o=o+1|0;e=e+1|0}while((o|0)<(n|0));Mo(t,i,208)|0;return}function gt(e,t,n){e=e|0;t=t|0;n=n|0;Mo(n,e+32|0,t)|0;return}function mt(e,t){e=e|0;t=t|0;hi(t,t+32|0,e);return}function _t(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;yi(r,t,n,e,e+32|0);return}function yt(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return(_i(r,t,n,e)|0)!=0|0}function bt(e){e=e|0;return e+16-(e&15)|0}function vt(e,t,n,i,o){e=e|0;t=t|0;n=n|0;i=i|0;o=o|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0;x=h;h=h+256|0;O=x+16|0;C=x;Oo(e,O,256);R=C;S=R+16|0;do{r[R>>0]=r[t>>0]|0;R=R+1|0;t=t+1|0}while((R|0)<(S|0));if(i>>>0>15){A=C+1|0;w=C+2|0;a=C+3|0;f=C+4|0;c=C+5|0;u=C+6|0;l=C+7|0;d=C+8|0;p=C+9|0;g=C+10|0;m=C+11|0;_=C+12|0;y=C+13|0;b=C+14|0;v=C+15|0;k=i+-16|0;I=k&-16;T=I+16|0;E=o+T|0;e=i;i=n;while(1){r[C>>0]=r[C>>0]^r[i>>0];r[A>>0]=r[A>>0]^r[i+1>>0];r[w>>0]=r[w>>0]^r[i+2>>0];r[a>>0]=r[a>>0]^r[i+3>>0];r[f>>0]=r[f>>0]^r[i+4>>0];r[c>>0]=r[c>>0]^r[i+5>>0];r[u>>0]=r[u>>0]^r[i+6>>0];r[l>>0]=r[l>>0]^r[i+7>>0];r[d>>0]=r[d>>0]^r[i+8>>0];r[p>>0]=r[p>>0]^r[i+9>>0];r[g>>0]=r[g>>0]^r[i+10>>0];r[m>>0]=r[m>>0]^r[i+11>>0];r[_>>0]=r[_>>0]^r[i+12>>0];r[y>>0]=r[y>>0]^r[i+13>>0];r[b>>0]=r[b>>0]^r[i+14>>0];r[v>>0]=r[v>>0]^r[i+15>>0];Ro(C,o,O,256);R=C;t=o;S=R+16|0;do{r[R>>0]=r[t>>0]|0;R=R+1|0;t=t+1|0}while((R|0)<(S|0));e=e+-16|0;if(e>>>0<=15)break;else{o=o+16|0;i=i+16|0}}o=E;t=k-I|0;n=n+T|0}else t=i;if(t){e=0;do{T=C+e|0;r[T>>0]=r[T>>0]^r[n+e>>0];e=e+1|0}while((e|0)!=(t|0));if(t>>>0<16)n=t;else{Ro(C,o,O,256);Hr(O,240);Hr(C,16);h=x;return}}else n=0;e=16-t|0;do{T=C+n|0;r[T>>0]=e^(s[T>>0]|0);n=n+1|0}while((n|0)!=16);Ro(C,o,O,256);Hr(O,240);Hr(C,16);h=x;return}function At(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0;O=h;h=h+272|0;I=O+32|0;R=O+16|0;T=O;Oo(e,I,256);k=R;S=k+16|0;do{r[k>>0]=r[t>>0]|0;k=k+1|0;t=t+1|0}while((k|0)<(S|0));if(!i){Hr(I,240);Hr(R,16);Hr(T,16);T=i+-1|0;T=s+T|0;T=r[T>>0]|0;T=T&255;R=T>>>0>i>>>0;T=i-T|0;T=R?-1:T;h=O;return T|0}E=R+1|0;a=R+2|0;f=R+3|0;c=R+4|0;u=R+5|0;l=R+6|0;d=R+7|0;p=R+8|0;g=R+9|0;m=R+10|0;_=R+11|0;y=R+12|0;b=R+13|0;v=R+14|0;A=R+15|0;e=0;do{w=n+e|0;k=T;t=w;S=k+16|0;do{r[k>>0]=r[t>>0]|0;k=k+1|0;t=t+1|0}while((k|0)<(S|0));k=s+e|0;xo(w,k,I,256);r[k>>0]=r[k>>0]^r[R>>0];S=k+1|0;r[S>>0]=r[S>>0]^r[E>>0];S=k+2|0;r[S>>0]=r[S>>0]^r[a>>0];S=k+3|0;r[S>>0]=r[S>>0]^r[f>>0];S=k+4|0;r[S>>0]=r[S>>0]^r[c>>0];S=k+5|0;r[S>>0]=r[S>>0]^r[u>>0];S=k+6|0;r[S>>0]=r[S>>0]^r[l>>0];S=k+7|0;r[S>>0]=r[S>>0]^r[d>>0];S=k+8|0;r[S>>0]=r[S>>0]^r[p>>0];S=k+9|0;r[S>>0]=r[S>>0]^r[g>>0];S=k+10|0;r[S>>0]=r[S>>0]^r[m>>0];S=k+11|0;r[S>>0]=r[S>>0]^r[_>>0];S=k+12|0;r[S>>0]=r[S>>0]^r[y>>0];S=k+13|0;r[S>>0]=r[S>>0]^r[b>>0];S=k+14|0;r[S>>0]=r[S>>0]^r[v>>0];k=k+15|0;r[k>>0]=r[k>>0]^r[A>>0];o[R>>2]=o[T>>2];o[R+4>>2]=o[T+4>>2];o[R+8>>2]=o[T+8>>2];o[R+12>>2]=o[T+12>>2];e=e+16|0}while(e>>>0>>0);Hr(I,240);Hr(R,16);Hr(T,16);T=i+-1|0;T=s+T|0;T=r[T>>0]|0;T=T&255;R=T>>>0>i>>>0;T=i-T|0;T=R?-1:T;h=O;return T|0}function wt(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=h;h=h+112|0;i=r;So(i);ko(i,e,t);Io(i,n);Hr(i,112);h=r;return}function Et(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0;u=h;h=h+288|0;s=u+176|0;a=u;f=u+64|0;c=a;l=c+64|0;do{o[c>>2]=0;c=c+4|0}while((c|0)<(l|0));if(t>>>0>64){So(s);ko(s,e,t);Io(s,a)}else Ps(a|0,e|0,t|0)|0;St(f,a);ko(f,n,r);kt(f,a,i);Hr(a,64);Hr(f,112);h=u;return}function St(e,t){e=e|0;t=t|0;var n=0,i=0,o=0,s=0;s=h;h=h+64|0;i=s;o=i;n=o+64|0;do{r[o>>0]=r[t>>0]|0;o=o+1|0;t=t+1|0}while((o|0)<(n|0));r[i>>0]=r[i>>0]^54;o=i+1|0;r[o>>0]=r[o>>0]^54;o=i+2|0;r[o>>0]=r[o>>0]^54;o=i+3|0;r[o>>0]=r[o>>0]^54;o=i+4|0;r[o>>0]=r[o>>0]^54;o=i+5|0;r[o>>0]=r[o>>0]^54;o=i+6|0;r[o>>0]=r[o>>0]^54;o=i+7|0;r[o>>0]=r[o>>0]^54;o=i+8|0;r[o>>0]=r[o>>0]^54;o=i+9|0;r[o>>0]=r[o>>0]^54;o=i+10|0;r[o>>0]=r[o>>0]^54;o=i+11|0;r[o>>0]=r[o>>0]^54;o=i+12|0;r[o>>0]=r[o>>0]^54;o=i+13|0;r[o>>0]=r[o>>0]^54;o=i+14|0;r[o>>0]=r[o>>0]^54;o=i+15|0;r[o>>0]=r[o>>0]^54;o=i+16|0;r[o>>0]=r[o>>0]^54;o=i+17|0;r[o>>0]=r[o>>0]^54;o=i+18|0;r[o>>0]=r[o>>0]^54;o=i+19|0;r[o>>0]=r[o>>0]^54;o=i+20|0;r[o>>0]=r[o>>0]^54;o=i+21|0;r[o>>0]=r[o>>0]^54;o=i+22|0;r[o>>0]=r[o>>0]^54;o=i+23|0;r[o>>0]=r[o>>0]^54;o=i+24|0;r[o>>0]=r[o>>0]^54;o=i+25|0;r[o>>0]=r[o>>0]^54;o=i+26|0;r[o>>0]=r[o>>0]^54;o=i+27|0;r[o>>0]=r[o>>0]^54;o=i+28|0;r[o>>0]=r[o>>0]^54;o=i+29|0;r[o>>0]=r[o>>0]^54;o=i+30|0;r[o>>0]=r[o>>0]^54;o=i+31|0;r[o>>0]=r[o>>0]^54;o=i+32|0;r[o>>0]=r[o>>0]^54;o=i+33|0;r[o>>0]=r[o>>0]^54;o=i+34|0;r[o>>0]=r[o>>0]^54;o=i+35|0;r[o>>0]=r[o>>0]^54;o=i+36|0;r[o>>0]=r[o>>0]^54;o=i+37|0;r[o>>0]=r[o>>0]^54;o=i+38|0;r[o>>0]=r[o>>0]^54;o=i+39|0;r[o>>0]=r[o>>0]^54;o=i+40|0;r[o>>0]=r[o>>0]^54;o=i+41|0;r[o>>0]=r[o>>0]^54;o=i+42|0;r[o>>0]=r[o>>0]^54;o=i+43|0;r[o>>0]=r[o>>0]^54;o=i+44|0;r[o>>0]=r[o>>0]^54;o=i+45|0;r[o>>0]=r[o>>0]^54;o=i+46|0;r[o>>0]=r[o>>0]^54;o=i+47|0;r[o>>0]=r[o>>0]^54;o=i+48|0;r[o>>0]=r[o>>0]^54;o=i+49|0;r[o>>0]=r[o>>0]^54;o=i+50|0;r[o>>0]=r[o>>0]^54;o=i+51|0;r[o>>0]=r[o>>0]^54;o=i+52|0;r[o>>0]=r[o>>0]^54;o=i+53|0;r[o>>0]=r[o>>0]^54;o=i+54|0;r[o>>0]=r[o>>0]^54;o=i+55|0;r[o>>0]=r[o>>0]^54;o=i+56|0;r[o>>0]=r[o>>0]^54;o=i+57|0;r[o>>0]=r[o>>0]^54;o=i+58|0;r[o>>0]=r[o>>0]^54;o=i+59|0;r[o>>0]=r[o>>0]^54;o=i+60|0;r[o>>0]=r[o>>0]^54;o=i+61|0;r[o>>0]=r[o>>0]^54;o=i+62|0;r[o>>0]=r[o>>0]^54;o=i+63|0;r[o>>0]=r[o>>0]^54;So(e);ko(e,i,64);Hr(i,64);h=s;return}function kt(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0,f=0;f=h;h=h+208|0;o=f;s=f+96|0;a=o;i=a+64|0;do{r[a>>0]=r[t>>0]|0;a=a+1|0;t=t+1|0}while((a|0)<(i|0));r[o>>0]=r[o>>0]^92;a=o+1|0;r[a>>0]=r[a>>0]^92;a=o+2|0;r[a>>0]=r[a>>0]^92;a=o+3|0;r[a>>0]=r[a>>0]^92;a=o+4|0;r[a>>0]=r[a>>0]^92;a=o+5|0;r[a>>0]=r[a>>0]^92;a=o+6|0;r[a>>0]=r[a>>0]^92;a=o+7|0;r[a>>0]=r[a>>0]^92;a=o+8|0;r[a>>0]=r[a>>0]^92;a=o+9|0;r[a>>0]=r[a>>0]^92;a=o+10|0;r[a>>0]=r[a>>0]^92;a=o+11|0;r[a>>0]=r[a>>0]^92;a=o+12|0;r[a>>0]=r[a>>0]^92;a=o+13|0;r[a>>0]=r[a>>0]^92;a=o+14|0;r[a>>0]=r[a>>0]^92;a=o+15|0;r[a>>0]=r[a>>0]^92;a=o+16|0;r[a>>0]=r[a>>0]^92;a=o+17|0;r[a>>0]=r[a>>0]^92;a=o+18|0;r[a>>0]=r[a>>0]^92;a=o+19|0;r[a>>0]=r[a>>0]^92;a=o+20|0;r[a>>0]=r[a>>0]^92;a=o+21|0;r[a>>0]=r[a>>0]^92;a=o+22|0;r[a>>0]=r[a>>0]^92;a=o+23|0;r[a>>0]=r[a>>0]^92;a=o+24|0;r[a>>0]=r[a>>0]^92;a=o+25|0;r[a>>0]=r[a>>0]^92;a=o+26|0;r[a>>0]=r[a>>0]^92;a=o+27|0;r[a>>0]=r[a>>0]^92;a=o+28|0;r[a>>0]=r[a>>0]^92;a=o+29|0;r[a>>0]=r[a>>0]^92;a=o+30|0;r[a>>0]=r[a>>0]^92;a=o+31|0;r[a>>0]=r[a>>0]^92;a=o+32|0;r[a>>0]=r[a>>0]^92;a=o+33|0;r[a>>0]=r[a>>0]^92;a=o+34|0;r[a>>0]=r[a>>0]^92;a=o+35|0;r[a>>0]=r[a>>0]^92;a=o+36|0;r[a>>0]=r[a>>0]^92;a=o+37|0;r[a>>0]=r[a>>0]^92;a=o+38|0;r[a>>0]=r[a>>0]^92;a=o+39|0;r[a>>0]=r[a>>0]^92;a=o+40|0;r[a>>0]=r[a>>0]^92;a=o+41|0;r[a>>0]=r[a>>0]^92;a=o+42|0;r[a>>0]=r[a>>0]^92;a=o+43|0;r[a>>0]=r[a>>0]^92;a=o+44|0;r[a>>0]=r[a>>0]^92;a=o+45|0;r[a>>0]=r[a>>0]^92;a=o+46|0;r[a>>0]=r[a>>0]^92;a=o+47|0;r[a>>0]=r[a>>0]^92;a=o+48|0;r[a>>0]=r[a>>0]^92;a=o+49|0;r[a>>0]=r[a>>0]^92;a=o+50|0;r[a>>0]=r[a>>0]^92;a=o+51|0;r[a>>0]=r[a>>0]^92;a=o+52|0;r[a>>0]=r[a>>0]^92;a=o+53|0;r[a>>0]=r[a>>0]^92;a=o+54|0;r[a>>0]=r[a>>0]^92;a=o+55|0;r[a>>0]=r[a>>0]^92;a=o+56|0;r[a>>0]=r[a>>0]^92;a=o+57|0;r[a>>0]=r[a>>0]^92;a=o+58|0;r[a>>0]=r[a>>0]^92;a=o+59|0;r[a>>0]=r[a>>0]^92;a=o+60|0;r[a>>0]=r[a>>0]^92;a=o+61|0;r[a>>0]=r[a>>0]^92;a=o+62|0;r[a>>0]=r[a>>0]^92;a=o+63|0;r[a>>0]=r[a>>0]^92;Io(e,o+64|0);So(s);ko(s,o,96);Io(s,n);Hr(s,112);Hr(o,96);h=f;return}function It(e,t,n,i,s,a,f,c){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;f=f|0;c=c|0;var u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0;b=h;h=h+336|0;l=b+208|0;y=b+96|0;g=b+32|0;m=b;_=b+320|0;r[_>>0]=1;d=(n|0)==0;u=d?32:i;i=d?38496:n;d=g;p=d+64|0;do{o[d>>2]=0;d=d+4|0}while((d|0)<(p|0));if(u>>>0>64){So(l);ko(l,i,u);Io(l,g)}else Ps(g|0,i|0,u|0)|0;St(y,g);ko(y,e,t);kt(y,g,m);p=g+32|0;o[p>>2]=0;o[p+4>>2]=0;o[p+8>>2]=0;o[p+12>>2]=0;o[p+16>>2]=0;o[p+20>>2]=0;o[p+24>>2]=0;o[p+28>>2]=0;o[g>>2]=o[m>>2];o[g+4>>2]=o[m+4>>2];o[g+8>>2]=o[m+8>>2];o[g+12>>2]=o[m+12>>2];o[g+16>>2]=o[m+16>>2];o[g+20>>2]=o[m+20>>2];o[g+24>>2]=o[m+24>>2];o[g+28>>2]=o[m+28>>2];St(y,g);ko(y,s,a);ko(y,_,1);kt(y,g,m);if(c>>>0<=32){a=c;Ps(f|0,m|0,a|0)|0;Hr(y,112);Hr(g,64);Hr(m,32);h=b;return}e=c+-33&-32;t=e+32|0;l=c+-32|0;u=f;i=c;while(1){d=u;n=m;p=d+32|0;do{r[d>>0]=r[n>>0]|0;d=d+1|0;n=n+1|0}while((d|0)<(p|0));i=i+-32|0;r[_>>0]=(r[_>>0]|0)+1<<24>>24;St(y,g);ko(y,m,32);ko(y,s,a);ko(y,_,1);kt(y,g,m);if(i>>>0<=32)break;else u=u+32|0}a=l-e|0;f=f+t|0;Ps(f|0,m|0,a|0)|0;Hr(y,112);Hr(g,64);Hr(m,32);h=b;return}function Rt(e){e=e|0;return ki(o[e>>2]|0)|0}function Tt(){return 36}function Ot(e){e=e|0;Hr(e,36);return e|0}function Ct(e){e=e|0;var t=0;Hr(e,36);t=e+36|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 36}function xt(e,t,n){e=e|0;t=t|0;n=n|0;if((ue(32)|0)>>>0>n>>>0){o[e>>2]=15;n=-1;return n|0}else{he(t,ue(32)|0,e+4|0)|0;n=0;return n|0}return 0}function Mt(){return ue(32)|0}function Pt(e,t){e=e|0;t=t|0;return ue(Hs[o[37564>>2]&3](37548,t)|0)|0}function Dt(e){e=e|0;return ue(zs[o[9390]&1](37548)|0)|0}function Bt(e){e=e|0;return 32}function Nt(e,t,n,r,i,s,a,f,c,u,l){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;f=f|0;c=c|0;u=u|0;l=l|0;var d=0,p=0,g=0,m=0;m=h;h=h+112|0;d=m+40|0;p=m;g=m+32|0;if(((ue(Hs[o[37564>>2]&3](37548,n)|0)|0)>>>0<=i>>>0?(zs[o[9390]&1](37548)|0)>>>0<=a>>>0:0)?(ue(32)|0)>>>0<=c>>>0:0){if(l>>>0<32){o[e>>2]=1;s=-1;h=m;return s|0}pt(u,d);le(d,32,f)|0;gt(d,e+4|0,p);d=Hs[o[37564>>2]&3](37548,n)|0;l=r+i+(0-d)|0;e=Qs[o[37568>>2]&3](37548,p,32,t,n,l,d,g,8)|0;if((e|0)!=-1){le(g,8,s)|0;le(l,d,r)|0}s=e;h=m;return s|0}o[e>>2]=2;s=-1;h=m;return s|0}function jt(e){e=e|0;return ki(o[e>>2]|0)|0}function Ut(){return 68}function Lt(e){e=e|0;Hr(e,68);return e|0}function qt(e){e=e|0;var t=0;Hr(e,68);t=e+68|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 68}function Ft(){return 32}function Kt(){return 32}function Gt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((ue(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;pt(r,i);le(i,32,t)|0;i=0;return i|0}return 0}function zt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((ue(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;pt(r,i);le(i,32,t)|0;i=0;return i|0}return 0}function Ht(e){e=e|0;return Ii((Re(e+4|0)|0)+4|0)|0}function Vt(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;s=e+4|0;a=(Re(s)|0)+4|0;if((Ii(a)|0)>>>0>i>>>0){o[e>>2]=2;a=-1;return a|0}else{Te(ye(Ri(r,a)|0,1)|0,s)|0;a=Ti(t,n,r,a)|0;return a|0}return 0}function Qt(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var f=0,c=0,u=0,l=0;l=h;h=h+16|0;c=l;u=(s|0)!=0;if(u?(ue(32)|0)>>>0>a>>>0:0){o[e>>2]=2;i=-1}else f=4;do{if((f|0)==4){t=Oi(t,n,r,i,e)|0;if((t|0)!=-1){a=r+t|0;t=a+1|0;n=be(r,t,c)|0;if((o[c>>2]|0)==1)t=Oe(n,t,e+4|0)|0;else o[e>>2]=9;if((a|0)==(t|0)){if(!u)break;le(e+4|0,32,s)|0;break}else{if(o[e>>2]|0){i=-1;break}o[e>>2]=10;i=-1;break}}else i=-1}}while(0);h=l;return i|0}function Wt(e,t){e=e|0;t=t|0;e=o[9393]|0;t=de(t)|0;return Hs[e&3](37548,t)|0}function Yt(e,t,n,r,i,s,a,f,c){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;f=f|0;c=c|0;var u=0,l=0,d=0,p=0,g=0;d=h;h=h+80|0;l=d+40|0;i=d;u=d+32|0;g=o[9393]|0;p=de(a)|0;if((Hs[g&3](37548,p)|0)>>>0>c>>>0){o[e>>2]=2;g=-1;h=d;return g|0}he(t,n,l)|0;gt(e+4|0,l,i);he(r,ue(8)|0,u)|0;g=de(a)|0;he(s,a,s)|0;i=Qs[o[37576>>2]&3](37548,i,32,u,8,s,g,f,c)|0;if((i|0)==-1){o[e>>2]=5;i=-1}g=i;h=d;return g|0}function Xt(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<32){o[e>>2]=2;e=-1;return e|0}else{n=e+36|0;e=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(e|0));e=32;return e|0}return 0}function Jt(){return 100}function Zt(e){e=e|0;Hr(e,100);return e|0}function $t(e){e=e|0;return ki(o[e>>2]|0)|0}function en(e){e=e|0;var t=0;Hr(e,100);t=e+100|0;do{o[e>>2]=0;e=e+4|0}while((e|0)<(t|0));return 100}function tn(){return 32}function nn(){return ue(32)|0}function rn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((ue(32)|0)>>>0>n>>>0){o[e>>2]=2;i=-1;return i|0}if(i>>>0<32){o[e>>2]=15;i=-1;return i|0}else{i=e+4|0;mt(r,i);le(i,32,t)|0;i=0;return i|0}return 0}function on(){return ue(64)|0}function sn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if((ue(64)|0)>>>0>i>>>0){o[e>>2]=2;i=-1;return i|0}else{i=r+(ue(64)|0)+-64|0;_t(e+4|0,t,n,i);le(i,64,r)|0;i=ue(64)|0;return i|0}return 0}function an(e){e=e|0;return 8}function fn(e,t){e=e|0;t=t|0;return bt(t)|0}function cn(e,t,n,i,s,a,f,c,u){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;f=f|0;c=c|0;u=u|0;var l=0,d=0,p=0,g=0;g=h;h=h+192|0;p=g+32|0;l=g+112|0;d=g;if(u>>>0<8|(bt(s)|0)>>>0>f>>>0){p=-1;h=g;return p|0}It(t,n,0,0,o[e+4>>2]|0,o[e+8>>2]|0,p,80);t=l;n=p;f=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(f|0));e=l+32|0;t=e;n=p+32|0;f=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(f|0));t=l+64|0;n=p+64|0;f=t+16|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(f|0));Hr(p,80);vt(l,l+64|0,i,s,a);Et(e,32,c,u+-8|0,d);a=d;s=o[a>>2]|0;a=o[a+4>>2]|0;p=c+u+-8|0;c=p;r[c>>0]=s;r[c+1>>0]=s>>8;r[c+2>>0]=s>>16;r[c+3>>0]=s>>24;p=p+4|0;r[p>>0]=a;r[p+1>>0]=a>>8;r[p+2>>0]=a>>16;r[p+3>>0]=a>>24;Hr(l,80);p=u;h=g;return p|0}function un(e,t){e=e|0;t=t|0;return t|0}function ln(e,t,n,i,s,a,f,c,u){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;f=f|0;c=c|0;u=u|0;var l=0,d=0,p=0,g=0;g=h;h=h+192|0;p=g+32|0;l=g+112|0;d=g;if(s>>>0<8|f>>>0>u>>>0){p=-1;h=g;return p|0}It(t,n,0,0,o[e+4>>2]|0,o[e+8>>2]|0,p,80);t=l;n=p;u=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(u|0));e=l+32|0;t=e;n=p+32|0;u=t+32|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(u|0));t=l+64|0;n=p+64|0;u=t+16|0;do{r[t>>0]=r[n>>0]|0;t=t+1|0;n=n+1|0}while((t|0)<(u|0));Hr(p,80);Et(e,32,i,s+-8|0,d);if(Vr(i+s+-8|0,d,8)|0){e=At(l,l+64|0,a,f,c)|0;Hr(l,80)}else{Hr(l,80);e=-1}p=e;h=g;return p|0}function dn(e){e=e|0;o[e>>2]=0;return}function hn(e){e=e|0;return 32}function pn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if(i>>>0<32){o[e>>2]=2;i=-1;return i|0}else{wt(t,n,r);i=32;return i|0}return 0}function gn(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;if(s>>>0>=64?yt(t,n,r,i)|0:0){s=0;return s|0}o[e>>2]=5;s=-1;return s|0}function mn(e,t,n){e=e|0;t=t|0;n=n|0;o[e>>2]=t;o[e+4>>2]=n;o[e+8>>2]=0;o[e+44>>2]=e+48;o[e+148>>2]=e+152;o[e+492>>2]=e+496;return}function _n(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0;l=h;h=h+64|0;u=l;c=o[e>>2]|0;It(t,n,0,0,o[c>>2]|0,o[c+4>>2]|0,u,64);c=e+152|0;t=e+148|0;n=o[t>>2]|0;if((n|0)==(e+492|0)){f=(n|0)==(c|0)?e+84|0:c;t=n}else{a=n+68|0;o[t>>2]=a;f=c;t=a}t=t+-68|0;if((t|0)!=(f|0))do{n=t;t=t+-68|0;s=t;a=n+68|0;do{o[n>>2]=o[s>>2];n=n+4|0;s=s+4|0}while((n|0)<(a|0))}while((t|0)!=(f|0));o[e+184>>2]=0;n=e+12|0;s=u;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=e+188|0;s=u+32|0;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=c;s=i;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));Hr(u,64);h=l;return}function yn(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0;l=h;h=h+64|0;u=l;c=o[e>>2]|0;It(t,n,0,0,o[c>>2]|0,o[c+4>>2]|0,u,64);c=e+48|0;t=e+44|0;n=o[t>>2]|0;if((n|0)==(e+148|0)){f=(n|0)==(c|0)?e+-52|0:c;t=n}else{a=n+100|0;o[t>>2]=a;f=c;t=a}t=t+-100|0;if((t|0)!=(f|0))do{n=t;t=t+-100|0;s=t;a=n+100|0;do{o[n>>2]=o[s>>2];n=n+4|0;s=s+4|0}while((n|0)<(a|0))}while((t|0)!=(f|0));o[e+112>>2]=0;n=e+12|0;s=u;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=e+116|0;s=u+32|0;a=n+32|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));n=c;s=i;a=n+64|0;do{r[n>>0]=r[s>>0]|0;n=n+1|0;s=s+1|0}while((n|0)<(a|0));Hr(u,64);h=l;return}function bn(e){e=e|0;var t=0,n=0,r=0,i=0;t=e+48|0;r=o[e+44>>2]|0;if((t|0)==(r|0))i=36;else{n=4;do{n=n+36+(Re(t)|0)|0;t=t+100|0}while((t|0)!=(r|0));i=n+32|0}t=e+152|0;r=o[e+148>>2]|0;if((t|0)==(r|0))t=4;else{n=t;t=4;do{t=t+36+(Se(n)|0)|0;n=n+68|0}while((n|0)!=(r|0))}i=i+t|0;t=e+496|0;r=o[e+492>>2]|0;if((t|0)==(r|0)){e=4;e=i+e|0;return e|0}n=t;t=4;do{t=t+36+(Se(n)|0)|0;n=n+68|0}while((n|0)!=(r|0));e=i+t|0;return e|0}function vn(e,t){e=e|0;t=t|0;var n=0,r=0;e=we(e,t+12|0,32)|0;r=t+44|0;n=t+48|0;e=ye(e,((o[r>>2]|0)-n|0)/100|0)|0;r=o[r>>2]|0;if((n|0)!=(r|0))do{e=we(Te(e,n)|0,n+68|0,32)|0;e=ye(e,o[n+64>>2]|0)|0;n=n+100|0}while((n|0)!=(r|0));r=t+148|0;n=t+152|0;e=ye(e,((o[r>>2]|0)-n|0)/68|0)|0;r=o[r>>2]|0;if((n|0)!=(r|0))do{e=we(ke(e,n)|0,n+36|0,32)|0;e=ye(e,o[n+32>>2]|0)|0;n=n+68|0}while((n|0)!=(r|0));r=t+492|0;n=t+496|0;e=ye(e,((o[r>>2]|0)-n|0)/68|0)|0;r=o[r>>2]|0;if((n|0)==(r|0)){t=e;return t|0}do{e=we(ke(e,n)|0,n+36|0,32)|0;e=ye(e,o[n+32>>2]|0)|0;n=n+68|0}while((n|0)!=(r|0));return e|0}function An(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,f=0,c=0,u=0;u=h;h=h+16|0;c=u;e=be(Ee(e,t,n+12|0,32)|0,t,c)|0;f=o[c>>2]|0;o[c>>2]=f+-1;if(!((e|0)==(t|0)|(f|0)==0)){s=n+44|0;a=n+148|0;f=n+48|0;do{i=o[s>>2]|0;if((i|0)==(a|0))i=f;else o[s>>2]=i+100;e=be(Ee(Oe(e,t,i)|0,t,i+68|0,32)|0,t,i+64|0)|0;i=o[c>>2]|0;o[c>>2]=i+-1}while(!((e|0)==(t|0)|(i|0)==0))}e=be(e,t,c)|0;f=o[c>>2]|0;o[c>>2]=f+-1;if(!((e|0)==(t|0)|(f|0)==0)){s=n+148|0;a=n+492|0;f=n+424|0;do{i=o[s>>2]|0;if((i|0)==(a|0))i=f;else o[s>>2]=i+68;e=be(Ee(Ie(e,t,i)|0,t,i+36|0,32)|0,t,i+32|0)|0;i=o[c>>2]|0;o[c>>2]=i+-1}while(!((e|0)==(t|0)|(i|0)==0))}e=be(e,t,c)|0;f=o[c>>2]|0;o[c>>2]=f+-1;if(!((e|0)==(t|0)|(f|0)==0)){a=n+492|0;f=n+3216|0;s=n+3148|0;do{i=o[a>>2]|0;if((i|0)==(f|0))i=s;else o[a>>2]=i+68;e=be(Ee(Ie(e,t,i)|0,t,i+36|0,32)|0,t,i+32|0)|0;n=o[c>>2]|0;o[c>>2]=n+-1}while(!((e|0)==(t|0)|(n|0)==0))}if(!r){c=e;h=u;return c|0}c=be(e,t,c)|0;h=u;return c|0}function wn(e,t){e=e|0;t=t|0;var n=0,r=0;if((o[e+44>>2]|0)==(e+48|0))n=0;else n=o[e+112>>2]|0;r=e+4|0;e=o[r>>2]|0;e=Hs[o[(o[e>>2]|0)+4>>2]&3](e,t)|0;t=o[r>>2]|0;return Ke(n,32,e,zs[o[o[t>>2]>>2]&1](t)|0)|0}function En(e){e=e|0;return((o[e+44>>2]|0)==(e+48|0)?32:0)|0}function Sn(e,t,n,i,s,a,f){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;f=f|0;var c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0;_=h;h=h+112|0;g=_+64|0;m=_;u=e+44|0;d=e+48|0;if((o[u>>2]|0)==(d|0))c=0;else c=o[e+112>>2]|0;p=e+4|0;y=o[p>>2]|0;y=Hs[o[(o[y>>2]|0)+4>>2]&3](y,n)|0;l=o[p>>2]|0;l=Ke(c,32,y,zs[o[o[l>>2]>>2]&1](l)|0)|0;c=(o[u>>2]|0)==(d|0);if((c?32:0)>>>0>s>>>0){o[e+8>>2]=1;y=-1;h=_;return y|0}if(l>>>0>f>>>0){o[e+8>>2]=2;y=-1;h=_;return y|0}if(c){o[u>>2]=e+148;pt(i,d);f=o[e>>2]|0;gt(d,e+152|0,g);i=e+12|0;It(g,32,i,32,o[f+8>>2]|0,o[f+12>>2]|0,m,64);f=m;u=i+32|0;do{r[i>>0]=r[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(u|0));c=e+116|0;i=c;f=m+32|0;u=i+32|0;do{r[i>>0]=r[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(u|0));i=e+112|0;o[i>>2]=0;Hr(m,64);Hr(g,32)}else{i=e+112|0;c=e+116|0}s=g+4|0;Et(c,32,38077,1,s);o[g>>2]=o[i>>2];Et(c,32,38078,1,c);o[i>>2]=(o[i>>2]|0)+1;c=o[p>>2]|0;c=Hs[o[(o[c>>2]|0)+4>>2]&3](c,n)|0;Ge(m,3,o[g>>2]|0,32,c,a);i=o[m>>2]|0;f=d;u=i+32|0;do{r[i>>0]=r[f>>0]|0;i=i+1|0;f=f+1|0}while((i|0)<(u|0));y=o[p>>2]|0;Qs[o[(o[y>>2]|0)+8>>2]&3](y,s,32,t,n,o[m+4>>2]|0,c,a,l)|0;Hr(g,36);y=l;h=_;return y|0}function kn(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0;s=h;h=h+32|0;r=s;i=e+4|0;a=o[i>>2]|0;ze(r,t,n,zs[o[o[a>>2]>>2]&1](a)|0);if(!(o[r+24>>2]|0)){o[e+8>>2]=4;a=-1;h=s;return a|0}else{a=o[i>>2]|0;a=Hs[o[(o[a>>2]|0)+12>>2]&3](a,o[r+28>>2]|0)|0;h=s;return a|0}return 0}function In(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0;R=h;h=h+240|0;E=R+96|0;S=R+32|0;l=R;d=R+160|0;k=R+128|0;m=e+4|0;A=o[m>>2]|0;ze(k,t,n,zs[o[o[A>>2]>>2]&1](A)|0);if((r[k>>0]|0)!=3){o[e+8>>2]=3;I=-1;h=R;return I|0}if((r[k+1>>0]|0?(w=k+16|0,o[w>>2]|0):0)?(y=k+24|0,o[y>>2]|0):0){A=o[m>>2]|0;g=k+28|0;if((Hs[o[(o[A>>2]|0)+12>>2]&3](A,o[g>>2]|0)|0)>>>0>s>>>0){o[e+8>>2]=2;I=-1;h=R;return I|0}if((o[k+20>>2]|0)!=32){o[e+8>>2]=4;I=-1;h=R;return I|0}f=e+152|0;A=e+148|0;n=o[A>>2]|0;e:do{if((f|0)!=(n|0)){c=o[w>>2]|0;u=0;t=f;do{p=(Fo(t,c,32)|0)==0;u=p?t:u;t=t+68|0}while(!(p|(t|0)==(n|0)));if(u){t=u+32|0;d=k+4|0;n=o[d>>2]|0;if((o[t>>2]|0)>>>0<=n>>>0){v=u;I=Rn(e,t,k,i,s)|0;_=1;b=31;break}t=e+496|0;p=e+492|0;c=o[p>>2]|0;if((t|0)!=(c|0)){u=k+8|0;l=k+12|0;while(1){if(((n|0)==(o[t+32>>2]|0)?(Fo(t,o[w>>2]|0,32)|0)==0:0)?(a=o[m>>2]|0,a=Qs[o[(o[a>>2]|0)+16>>2]&3](a,t+36|0,32,o[u>>2]|0,o[l>>2]|0,o[y>>2]|0,o[g>>2]|0,i,s)|0,(a|0)!=-1):0)break;t=t+68|0;if((t|0)==(c|0))break e;n=o[d>>2]|0}Hr(t,68);I=(o[p>>2]|0)+-68|0;o[p>>2]=I;if((I|0)==(t|0)){I=a;h=R;return I|0}do{m=t;t=t+68|0;_=t;y=m+68|0;do{o[m>>2]=o[_>>2];m=m+4|0;_=_+4|0}while((m|0)<(y|0))}while((t|0)!=(o[p>>2]|0));h=R;return a|0}}else b=15}else b=15}while(0);if((b|0)==15){a=e+48|0;if((o[e+44>>2]|0)!=(a|0)?(o[k+4>>2]|0)>>>0<=2e3:0){m=d;_=o[w>>2]|0;y=m+32|0;do{r[m>>0]=r[_>>0]|0;m=m+1|0;_=_+1|0}while((m|0)<(y|0));v=o[e>>2]|0;I=d+32|0;gt(a,d,E);It(E,32,e+12|0,32,o[v+8>>2]|0,o[v+12>>2]|0,S,64);o[l>>2]=o[S>>2];o[l+4>>2]=o[S+4>>2];o[l+8>>2]=o[S+8>>2];o[l+12>>2]=o[S+12>>2];o[l+16>>2]=o[S+16>>2];o[l+20>>2]=o[S+20>>2];o[l+24>>2]=o[S+24>>2];o[l+28>>2]=o[S+28>>2];v=S+32|0;a=d+36|0;o[a>>2]=o[v>>2];o[a+4>>2]=o[v+4>>2];o[a+8>>2]=o[v+8>>2];o[a+12>>2]=o[v+12>>2];o[a+16>>2]=o[v+16>>2];o[a+20>>2]=o[v+20>>2];o[a+24>>2]=o[v+24>>2];o[a+28>>2]=o[v+28>>2];o[I>>2]=0;Hr(S,64);Hr(E,32);a=Rn(e,I,k,i,s)|0;Hr(l,32);Hr(d,68)}else a=-1;v=0;I=a;_=0;b=31}if((b|0)==31?(I|0)!=-1:0){if(!_){a=o[A>>2]|0;if((a|0)==(e+492|0))f=(a|0)==(f|0)?e+84|0:f;else{a=a+68|0;o[A>>2]=a}a=a+-68|0;if((a|0)!=(f|0))do{m=a;a=a+-68|0;_=a;y=m+68|0;do{o[m>>2]=o[_>>2];m=m+4|0;_=_+4|0}while((m|0)<(y|0))}while((a|0)!=(f|0));m=f;_=o[w>>2]|0;y=m+32|0;do{r[m>>0]=r[_>>0]|0;m=m+1|0;_=_+1|0}while((m|0)<(y|0));a=e+48|0;_=o[e>>2]|0;gt(a,f,E);m=e+12|0;It(E,32,m,32,o[_+8>>2]|0,o[_+12>>2]|0,S,64);_=S;y=m+32|0;do{r[m>>0]=r[_>>0]|0;m=m+1|0;_=_+1|0}while((m|0)<(y|0));m=f+36|0;_=S+32|0;y=m+32|0;do{r[m>>0]=r[_>>0]|0;m=m+1|0;_=_+1|0}while((m|0)<(y|0));n=f+32|0;o[n>>2]=0;Hr(S,64);Hr(E,32);Hr(a,100);t=e+44|0;S=(o[t>>2]|0)+-100|0;o[t>>2]=S;if((S|0)==(a|0))g=f;else{do{m=a;a=a+100|0;_=a;y=m+100|0;do{o[m>>2]=o[_>>2];m=m+4|0;_=_+4|0}while((m|0)<(y|0))}while((a|0)!=(o[t>>2]|0));g=f}}else{g=v;n=v+32|0}c=k+4|0;if((o[n>>2]|0)>>>0<(o[c>>2]|0)>>>0){u=e+496|0;l=e+492|0;d=e+3216|0;a=g+36|0;p=e+532|0;f=e+528|0;do{t=o[l>>2]|0;if((t|0)==(d|0))t=d;else{t=t+68|0;o[l>>2]=t}t=t+-68|0;if((t|0)!=(u|0))do{m=t;t=t+-68|0;_=t;y=m+68|0;do{o[m>>2]=o[_>>2];m=m+4|0;_=_+4|0}while((m|0)<(y|0))}while((t|0)!=(u|0));Et(a,32,38077,1,p);o[f>>2]=o[n>>2];m=u;_=g;y=m+32|0;do{r[m>>0]=r[_>>0]|0;m=m+1|0;_=_+1|0}while((m|0)<(y|0));Et(a,32,38078,1,a);e=(o[n>>2]|0)+1|0;o[n>>2]=e}while(e>>>0<(o[c>>2]|0)>>>0)}else a=g+36|0;Et(a,32,38078,1,a);o[n>>2]=(o[n>>2]|0)+1;h=R;return I|0}o[e+8>>2]=5;I=-1;h=R;return I|0}o[e+8>>2]=4;I=-1;h=R;return I|0}function Rn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0,d=0;d=h;h=h+80|0;f=d+36|0;c=d;u=n+4|0;l=o[u>>2]|0;a=o[t>>2]|0;if(l>>>0>>0|(l-a|0)>>>0>2e3){l=-1;h=d;return l|0}a=f;s=a+36|0;do{o[a>>2]=o[t>>2];a=a+4|0;t=t+4|0}while((a|0)<(s|0));t=f+4|0;if((o[f>>2]|0)>>>0>>0)do{Et(t,32,38078,1,t);l=(o[f>>2]|0)+1|0;o[f>>2]=l}while(l>>>0<(o[u>>2]|0)>>>0);l=c+4|0;Et(t,32,38077,1,l);o[c>>2]=o[f>>2];u=o[e+4>>2]|0;l=Qs[o[(o[u>>2]|0)+16>>2]&3](u,l,32,o[n+8>>2]|0,o[n+12>>2]|0,o[n+24>>2]|0,o[n+28>>2]|0,r,i)|0;Hr(f,36);h=d;return l|0}function Tn(e,t,n){e=e|0;t=t|0;n=n|0;if(e|0)r[e>>0]=3;if(t|0)r[t>>0]=1;if(!n)return;r[n>>0]=3;return}function On(){return-1}function Cn(e){e=e|0;return ki(o[e+7368>>2]|0)|0}function xn(e){e=e|0;return ki(o[e+3216>>2]|0)|0}function Mn(e){e=e|0;return ki(o[e>>2]|0)|0}function Pn(){return 7372}function Dn(){return 3320}function Bn(){return 4}function Nn(e){e=e|0;Hr(e,7372);Ir(e);return e|0}function jn(e){e=e|0;Hr(e,3320);Je(e);return e|0}function Un(e){e=e|0;Hr(e,4);dn(e);return e|0}function Ln(e){e=e|0;Hr(e,7372);Ir(e);return 7372}function qn(e){e=e|0;Hr(e,3320);Je(e);return 3320}function Fn(e){e=e|0;Hr(e,4);dn(e);return 4}function Kn(e){e=e|0;return Ii(Fr(e)|0)|0}function Gn(e){e=e|0;return Ii(lt(e)|0)|0}function zn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=Fr(e)|0;if((Ii(s)|0)>>>0>i>>>0){o[e+7368>>2]=2;s=-1;return s|0}else{Kr(Ri(r,s)|0,e)|0;s=Ti(t,n,r,s)|0;return s|0}return 0}function Hn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=lt(e)|0;if((Ii(s)|0)>>>0>i>>>0){o[e+3216>>2]=2;s=-1;return s|0}else{dt(Ri(r,s)|0,e)|0;s=Ti(t,n,r,s)|0;return s|0}return 0}function Vn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=e+7368|0;t=Oi(t,n,r,i,s)|0;if((t|0)==-1){s=-1;return s|0}n=r+t|0;if((n|0)==(Gr(r,n+1|0,e)|0)){s=i;return s|0}if(o[s>>2]|0){s=-1;return s|0}o[s>>2]=10;s=-1;return s|0}function Qn(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=e+3216|0;t=Oi(t,n,r,i,s)|0;if((t|0)==-1){s=-1;return s|0}n=r+t|0;if((n|0)==(ht(r,n+1|0,e)|0)){s=i;return s|0}if(o[s>>2]|0){s=-1;return s|0}o[s>>2]=10;s=-1;return s|0}function Wn(e){e=e|0;return Or(e)|0}function Yn(e,t,n){e=e|0;t=t|0;n=n|0;e=Cr(e,t,n)|0;Hr(t,n);return e|0}function Xn(e){e=e|0;return xr(e)|0}function Jn(e,t,n){e=e|0;t=t|0;n=n|0;return Mr(e,t,n)|0}function Zn(e){e=e|0;return ue(Pr(e)|0)|0}function $n(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;s=Pr(e)|0;if((ue(s)|0)>>>0>i>>>0){o[e+7368>>2]=2;s=-1;return s|0}else{a=0-s|0;Dr(e,t,n,r+(ue(s)|0)+a|0,s)|0;i=ue(s)|0;le(r+i+a|0,s,r)|0;s=i;return s|0}return 0}function er(e){e=e|0;return Br(e)|0}function tr(e,t,n){e=e|0;t=t|0;n=n|0;return Nr(e,t,n)|0}function nr(e){e=e|0;return jr(e)|0}function rr(e){e=e|0;return Ur(e)|0}function ir(e,t){e=e|0;t=t|0;return Lr(e,t)|0}function or(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;t=qr(e,t,n,r)|0;Hr(n,r);return t|0}function sr(e){e=e|0;return Ze(e)|0}function ar(e,t,n,r,i,s,a,f){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;f=f|0;var c=0,u=0,l=0;l=h;h=h+64|0;c=l+32|0;u=l;if((de(r)|0)==32?(de(s)|0)==32:0){he(n,r,c)|0;he(i,s,u)|0;u=$e(e,t,c,u,a,f)|0;Hr(a,f);h=l;return u|0}o[e+3216>>2]=7;u=-1;h=l;return u|0}function fr(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=de(r)|0;if((i|0)==-1){o[e+3216>>2]=7;i=-1;return i|0}else{he(n,r,n)|0;i=et(e,t,0,n,i)|0;return i|0}return 0}function cr(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;var a=0,f=0;f=h;h=h+32|0;a=f;if((de(r)|0)!=32){o[e+3216>>2]=7;a=-1;h=f;return a|0}he(n,r,a)|0;n=de(s)|0;if((n|0)==-1){o[e+3216>>2]=7;n=-1}else{he(i,s,i)|0;n=et(e,t,a,i,n)|0}a=n;h=f;return a|0}function ur(e){e=e|0;return ue(tt(e)|0)|0}function lr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=tt(e)|0;if((ue(r)|0)>>>0>n>>>0){o[e+3216>>2]=2;r=-1;return r|0}n=0-r|0;if((nt(e,t+(ue(r)|0)+n|0,r)|0)==-1){r=-1;return r|0}e=ue(r)|0;le(t+e+n|0,r,t)|0;r=e;return r|0}function dr(e){e=e|0;return s[e+3220>>0]|0|0}function hr(e,t,n){e=e|0;t=t|0;n=n|0;ut(e,t,n);return}function pr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0;r=de(n)|0;if((r|0)==-1){o[e+3216>>2]=7;r=-1;return r|0}else{he(t,n,t)|0;r=(rt(e,0,t,r)|0)&1;return r|0}return 0}function gr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;a=h;h=h+32|0;s=a;if((de(n)|0)!=32){o[e+3216>>2]=7;s=-1;h=a;return s|0}he(t,n,s)|0;t=de(i)|0;if((t|0)==-1){o[e+3216>>2]=7;t=-1}else{he(r,i,r)|0;t=(rt(e,s,r,t)|0)&1}s=t;h=a;return s|0}function mr(e,t){e=e|0;t=t|0;t=Tr(e,t+3285|0)|0;if((t|0)!=-1)return t|0;o[e+7368>>2]=6;return t|0}function _r(e){e=e|0;return it(e)|0}function yr(e){e=e|0;return st(e)|0}function br(e,t){e=e|0;t=t|0;return ue(ot(e,t)|0)|0}function vr(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var f=0;f=ot(e,n)|0;if((ue(f)|0)>>>0>a>>>0){o[e+3216>>2]=2;f=-1;return f|0}a=0-f|0;n=at(e,t,n,r,i,s+(ue(f)|0)+a|0,f)|0;Hr(r,i);if((n|0)==-1){f=-1;return f|0}i=ue(f)|0;le(s+i+a|0,f,s)|0;f=i;return f|0}function Ar(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0;i=de(r)|0;if((i|0)==-1){o[e+3216>>2]=7;i=-1;return i|0}else{he(n,r,n)|0;i=ft(e,t,n,i)|0;return i|0}return 0}function wr(e,t,n,r,i,s){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;var a=0;a=de(r)|0;if((a|0)==-1){o[e+3216>>2]=7;a=-1;return a|0}else{he(n,r,n)|0;a=ct(e,t,n,a,i,s)|0;return a|0}return 0}function Er(e){e=e|0;return ue(hn(e)|0)|0}function Sr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=hn(e)|0;if((ue(s)|0)>>>0>i>>>0){o[e>>2]=2;s=-1;return s|0}i=0-s|0;if((pn(e,t,n,r+(ue(s)|0)+i|0,s)|0)==-1){s=-1;return s|0}n=ue(s)|0;le(r+n+i|0,s,r)|0;s=n;return s|0}function kr(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var f=0,c=0;c=h;h=h+32|0;f=c;if((de(n)|0)!=32){o[e>>2]=7;f=-1;h=c;return f|0}he(t,n,f)|0;t=de(a)|0;if((t|0)==-1){o[e>>2]=7;t=-1}else{he(s,a,s)|0;t=gn(e,f,r,i,s,t)|0}f=t;h=c;return f|0}function Ir(e){e=e|0;o[e+160>>2]=e+164;o[e+7364>>2]=0;o[e+7368>>2]=0;return}function Rr(e,t){e=e|0;t=t|0;var n=0;n=e+164|0;e=o[e+160>>2]|0;if((n|0)==(e|0)){t=0;return t|0}while(1){if(Vr(n+5|0,t,32)|0){e=5;break}n=n+72|0;if((n|0)==(e|0)){n=0;e=5;break}}if((e|0)==5)return n|0;return 0}function Tr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0;n=e+164|0;s=e+160|0;if((n|0)==(o[s>>2]|0)){s=-1;return s|0}while(1){if(Vr(n+5|0,t,32)|0)break;e=n+72|0;if((e|0)==(o[s>>2]|0)){e=-1;r=8;break}else n=e}if((r|0)==8)return e|0;e=o[n>>2]|0;i=(o[s>>2]|0)+-72|0;o[s>>2]=i;if((i|0)==(n|0)){s=e;return s|0}do{t=n;n=n+72|0;r=n;i=t+72|0;do{o[t>>2]=o[r>>2];t=t+4|0;r=r+4|0}while((t|0)<(i|0))}while((n|0)!=(o[s>>2]|0));return e|0}function Or(e){e=e|0;return 64}function Cr(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<64){o[e+7368>>2]=1;n=-1;return n|0}else{mt(t,e);pt(t+32|0,e+96|0);n=0;return n|0}return 0}function xr(e){e=e|0;e=ue(32)|0;return e+30+(ue(32)|0)|0}function Mr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0;a=ue(32)|0;if((a+30+(ue(32)|0)|0)>>>0>n>>>0){o[e+7368>>2]=2;t=-1;return t|0}else{r[t>>0]=123;i=t+1|0;s=38079;a=i+13|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));r[t+14>>0]=34;n=le(e+96|0,32,t+15|0)|0;r[n>>0]=34;r[n+1>>0]=44;i=n+2|0;s=38093;a=i+10|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));r[n+12>>0]=34;e=le(e,32,n+13|0)|0;r[e>>0]=34;r[e+1>>0]=125;t=e+2-t|0;return t|0}return 0}function Pr(e){e=e|0;return 64}function Dr(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;if(i>>>0<64){o[e+7368>>2]=2;i=-1;return i|0}else{_t(e,t,n,r);i=64;return i|0}return 0}function Br(e){e=e|0;var t=0,n=0,i=0;n=e+164|0;i=o[e+160>>2]|0;if((n|0)!=(i|0)){t=1;e=0;do{if(!(r[n+4>>0]|0)){t=ue(4)|0;e=e+6+t+(ue(32)|0)|0;t=0}n=n+72|0}while((n|0)!=(i|0));if(!t){i=e;n=16;i=n+i|0;return i|0}}else e=0;i=e;n=17;i=n+i|0;return i|0}function Nr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0;p=h;h=h+16|0;l=p;u=e+164|0;c=e+160|0;f=o[c>>2]|0;if((u|0)!=(f|0)){s=1;a=u;i=0;do{if(!(r[a+4>>0]|0)){s=ue(4)|0;i=i+6+s+(ue(32)|0)|0;s=0}a=a+72|0}while((a|0)!=(f|0));if(s)d=4;else s=16}else{i=0;d=4}if((d|0)==4)s=17;if((s+i|0)>>>0>n>>>0){o[e+7368>>2]=2;d=-1;h=p;return d|0}r[t>>0]=123;i=t+1|0;s=38079;a=i+13|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));i=t+14|0;f=o[c>>2]|0;if((u|0)!=(f|0)){a=u;s=123;do{if(!(r[a+4>>0]|0)){r[i>>0]=s;r[i+1>>0]=34;Ne(l,o[a>>2]|0)|0;i=le(l,4,i+2|0)|0;r[i>>0]=34;r[i+1>>0]=58;r[i+2>>0]=34;i=le(a+5|0,32,i+3|0)|0;r[i>>0]=34;i=i+1|0;s=44}a=a+72|0}while((a|0)!=(f|0));if(s<<24>>24!=44)d=16}else{s=123;d=16}if((d|0)==16){r[i>>0]=s;i=i+1|0}r[i>>0]=125;r[i+1>>0]=125;d=i+2-t|0;h=p;return d|0}function jr(e){e=e|0;var t=0,n=0,i=0;t=e+164|0;i=o[e+160>>2]|0;if((t|0)==(i|0)){i=0;return i|0}e=0;do{n=t+4|0;if(!(r[n>>0]|0)){r[n>>0]=1;e=e+1|0}t=t+72|0}while((t|0)!=(i|0));return e|0}function Ur(e){e=e|0;return 100}function Lr(e,t){e=e|0;t=t|0;return t<<5|0}function qr(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0;if(t<<5>>>0>i>>>0){o[e+7368>>2]=1;p=-1;return p|0}if(!t){p=0;return p|0}h=e+164|0;p=e+160|0;u=e+7364|0;l=e+7364|0;d=e+168|0;c=e+169|0;f=0;while(1){i=o[p>>2]|0;if((i|0)==(u|0))i=u;else{i=i+72|0;o[p>>2]=i}i=i+-72|0;if((i|0)!=(h|0))do{e=i;i=i+-72|0;s=i;a=e+72|0;do{o[e>>2]=o[s>>2];e=e+4|0;s=s+4|0}while((e|0)<(a|0))}while((i|0)!=(h|0));a=(o[l>>2]|0)+1|0;o[l>>2]=a;o[h>>2]=a;r[d>>0]=0;pt(n,c);f=f+1|0;if((f|0)==(t|0))break;else n=n+32|0}return t|0}function Fr(e){e=e|0;var t=0,n=0,r=0,i=0;r=Pe(e)|0;i=Re(e+96|0)|0;t=e+164|0;n=o[e+160>>2]|0;if((t|0)==(n|0)){n=4;r=r+8|0;i=r+i|0;i=i+n|0;return i|0}e=4;do{e=e+5+(Re(t+5|0)|0)|0;t=t+72|0}while((t|0)!=(n|0));r=r+8|0;i=r+i|0;i=i+e|0;return i|0}function Kr(e,t){e=e|0;t=t|0;var n=0,i=0;e=Te(De(ye(e,2)|0,t)|0,t+96|0)|0;i=t+160|0;n=t+164|0;e=ye(e,((o[i>>2]|0)-n|0)/72|0)|0;i=o[i>>2]|0;if((n|0)==(i|0)){i=e;t=t+7364|0;t=o[t>>2]|0;t=ye(i,t)|0;return t|0}do{e=ye(e,o[n>>2]|0)|0;e=Te(ve(e,(r[n+4>>0]|0)!=0)|0,n+5|0)|0;n=n+72|0}while((n|0)!=(i|0));t=t+7364|0;t=o[t>>2]|0;t=ye(e,t)|0;return t|0}function Gr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0;c=h;h=h+16|0;f=c+4|0;a=c;e=be(e,t,a)|0;switch(o[a>>2]|0){case 2:{e=be(Oe(Be(e,t,n)|0,t,n+96|0)|0,t,f)|0;a=o[f>>2]|0;o[f>>2]=a+-1;if(!((e|0)==(t|0)|(a|0)==0)){i=n+160|0;s=n+7364|0;a=n+7292|0;do{r=o[i>>2]|0;if((r|0)==(s|0))r=a;else o[i>>2]=r+72;e=Oe(Ae(be(e,t,r)|0,t,r+4|0)|0,t,r+5|0)|0;r=o[f>>2]|0;o[f>>2]=r+-1}while(!((e|0)==(t|0)|(r|0)==0))}n=be(e,t,n+7364|0)|0;h=c;return n|0}case 1:{o[n+7368>>2]=13;n=t;h=c;return n|0}default:{o[n+7368>>2]=9;n=t;h=c;return n|0}}return 0}function zr(e,t){e=e|0;t=t|0;var n=0;n=e+t|0;if(!t)return;do{r[e>>0]=0;e=e+1|0}while((e|0)!=(n|0));return}function Hr(e,t){e=e|0;t=t|0;var n=0;n=e+t|0;if(!t)return;do{r[e>>0]=0;e=e+1|0}while((e|0)!=(n|0));return}function Vr(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;o=h;h=h+16|0;i=o;r[i>>0]=0;if(n|0)while(1){n=n+-1|0;r[i>>0]=r[i>>0]|r[t>>0]^r[e>>0];if(!n)break;else{t=t+1|0;e=e+1|0}}h=o;return(r[i>>0]|0)==0|0}function Qr(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0;E=s[t>>0]|0;m=xs(s[t+1>>0]|0|0,0,8)|0;R=I;O=xs(s[t+2>>0]|0|0,0,16)|0;R=R|I;l=xs(s[t+3>>0]|0|0,0,24)|0;R=R|I;T=r[t+6>>0]|0;c=s[t+4>>0]|0;S=xs(s[t+5>>0]|0|0,0,8)|0;u=I;T=xs(T&255|0,0,16)|0;u=xs(S|c|T|0,u|I|0,6)|0;T=I;c=r[t+9>>0]|0;S=s[t+7>>0]|0;a=xs(s[t+8>>0]|0|0,0,8)|0;v=I;c=xs(c&255|0,0,16)|0;v=xs(a|S|c|0,v|I|0,5)|0;c=I;S=r[t+12>>0]|0;a=s[t+10>>0]|0;y=xs(s[t+11>>0]|0|0,0,8)|0;k=I;S=xs(S&255|0,0,16)|0;k=xs(y|a|S|0,k|I|0,3)|0;S=I;a=r[t+15>>0]|0;y=s[t+13>>0]|0;p=xs(s[t+14>>0]|0|0,0,8)|0;f=I;a=xs(a&255|0,0,16)|0;f=xs(p|y|a|0,f|I|0,2)|0;a=I;y=s[t+16>>0]|0;p=xs(s[t+17>>0]|0|0,0,8)|0;A=I;n=xs(s[t+18>>0]|0|0,0,16)|0;A=A|I;w=xs(s[t+19>>0]|0|0,0,24)|0;w=p|y|n|w;A=A|I;n=r[t+22>>0]|0;y=s[t+20>>0]|0;p=xs(s[t+21>>0]|0|0,0,8)|0;i=I;n=xs(n&255|0,0,16)|0;i=xs(p|y|n|0,i|I|0,7)|0;n=I;y=r[t+25>>0]|0;p=s[t+23>>0]|0;C=xs(s[t+24>>0]|0|0,0,8)|0;b=I;y=xs(y&255|0,0,16)|0;b=xs(C|p|y|0,b|I|0,5)|0;y=I;p=r[t+28>>0]|0;C=s[t+26>>0]|0;g=xs(s[t+27>>0]|0|0,0,8)|0;h=I;p=xs(p&255|0,0,16)|0;h=xs(g|C|p|0,h|I|0,4)|0;p=I;C=r[t+31>>0]|0;g=s[t+29>>0]|0;d=xs(s[t+30>>0]|0|0,0,8)|0;_=I;t=xs(C&255|0,0,16)|0;_=xs(d|g|t|0,_|I|0,2)|0;_=_&33554428;t=Ss(_|0,0,16777216,0)|0;g=Cs(t|0,I|0,25)|0;g=ks(0,0,g|0,I|0)|0;R=Ss(g&19|0,0,m|E|O|l|0,R|0)|0;l=I;O=Ss(u|0,T|0,16777216,0)|0;E=Cs(O|0,I|0,25)|0;E=Ss(v|0,c|0,E|0,I|0)|0;c=I;O=ks(u|0,T|0,O&-33554432|0,0)|0;T=I;u=Ss(k|0,S|0,16777216,0)|0;v=Cs(u|0,I|0,25)|0;v=Ss(f|0,a|0,v|0,I|0)|0;a=I;f=Ss(w|0,A|0,16777216,0)|0;m=Cs(f|0,I|0,25)|0;m=Ss(i|0,n|0,m|0,I|0)|0;n=I;i=Ss(b|0,y|0,16777216,0)|0;g=Cs(i|0,I|0,25)|0;g=Ss(h|0,p|0,g|0,I|0)|0;p=I;h=Ss(R|0,l|0,33554432,0)|0;d=Cs(h|0,I|0,26)|0;d=Ss(O|0,T|0,d|0,I|0)|0;h=ks(R|0,l|0,h&-67108864|0,0)|0;l=Ss(E|0,c|0,33554432,0)|0;R=Cs(l|0,I|0,26)|0;S=Ss(R|0,I|0,k|0,S|0)|0;u=ks(S|0,I|0,u&-33554432|0,0)|0;l=ks(E|0,c|0,l&-67108864|0,0)|0;c=Ss(v|0,a|0,33554432,0)|0;E=Cs(c|0,I|0,26)|0;A=Ss(E|0,I|0,w|0,A|0)|0;f=ks(A|0,I|0,f&-33554432|0,0)|0;c=ks(v|0,a|0,c&-67108864|0,0)|0;a=Ss(m|0,n|0,33554432,0)|0;v=Cs(a|0,I|0,26)|0;y=Ss(v|0,I|0,b|0,y|0)|0;i=ks(y|0,I|0,i&-33554432|0,0)|0;a=ks(m|0,n|0,a&-67108864|0,0)|0;n=Ss(g|0,p|0,33554432,0)|0;m=Cs(n|0,I|0,26)|0;m=Ss(_|0,0,m|0,I|0)|0;t=ks(m|0,I|0,t&33554432|0,0)|0;n=ks(g|0,p|0,n&-67108864|0,0)|0;o[e>>2]=h;o[e+4>>2]=d;o[e+8>>2]=l;o[e+12>>2]=u;o[e+16>>2]=c;o[e+20>>2]=f;o[e+24>>2]=a;o[e+28>>2]=i;o[e+32>>2]=n;o[e+36>>2]=t;return}function Wr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0,s=0;s=h;h=h+192|0;n=s+144|0;r=s+96|0;i=s+48|0;o=s;Yr(n,t);Yr(r,n);Yr(r,r);Xr(r,t,r);Xr(n,n,r);Yr(i,n);Xr(r,r,i);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);t=1;do{Yr(o,o);t=t+1|0}while((t|0)!=100);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(r,r);Yr(r,r);Yr(r,r);Yr(r,r);Yr(r,r);Xr(e,r,n);h=s;return}function Yr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0,me=0,_e=0,ye=0,be=0,ve=0,Ae=0,we=0,Ee=0,Se=0,ke=0,Ie=0,Re=0,Te=0,Oe=0,Ce=0,xe=0,Me=0,Pe=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,qe=0,Fe=0,Ke=0,Ge=0,ze=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;tt=o[t>>2]|0;Ae=o[t+4>>2]|0;u=o[t+8>>2]|0;de=o[t+12>>2]|0;s=o[t+16>>2]|0;rt=o[t+20>>2]|0;a=o[t+24>>2]|0;p=o[t+28>>2]|0;F=o[t+32>>2]|0;O=o[t+36>>2]|0;_=tt<<1;n=Ae<<1;Ye=u<<1;f=de<<1;pe=s<<1;i=rt<<1;d=a<<1;r=p<<1;Ue=rt*38|0;ye=a*19|0;Ee=p*38|0;ie=F*19|0;st=O*38|0;nt=((tt|0)<0)<<31>>31;nt=Es(tt|0,nt|0,tt|0,nt|0)|0;tt=I;y=((_|0)<0)<<31>>31;ve=((Ae|0)<0)<<31>>31;Ne=Es(_|0,y|0,Ae|0,ve|0)|0;Be=I;c=((u|0)<0)<<31>>31;We=Es(u|0,c|0,_|0,y|0)|0;Qe=I;he=((de|0)<0)<<31>>31;Ve=Es(de|0,he|0,_|0,y|0)|0;He=I;J=((s|0)<0)<<31>>31;qe=Es(s|0,J|0,_|0,y|0)|0;Le=I;it=((rt|0)<0)<<31>>31;Ie=Es(rt|0,it|0,_|0,y|0)|0;ke=I;we=((a|0)<0)<<31>>31;ae=Es(a|0,we|0,_|0,y|0)|0;se=I;T=((p|0)<0)<<31>>31;z=Es(p|0,T|0,_|0,y|0)|0;G=I;K=((F|0)<0)<<31>>31;M=Es(F|0,K|0,_|0,y|0)|0;x=I;C=((O|0)<0)<<31>>31;y=Es(O|0,C|0,_|0,y|0)|0;_=I;l=((n|0)<0)<<31>>31;ve=Es(n|0,l|0,Ae|0,ve|0)|0;Ae=I;ne=Es(n|0,l|0,u|0,c|0)|0;re=I;m=((f|0)<0)<<31>>31;ze=Es(f|0,m|0,n|0,l|0)|0;Ge=I;Ce=Es(s|0,J|0,n|0,l|0)|0;Oe=I;g=((i|0)<0)<<31>>31;ce=Es(i|0,g|0,n|0,l|0)|0;fe=I;V=Es(a|0,we|0,n|0,l|0)|0;H=I;t=((r|0)<0)<<31>>31;D=Es(r|0,t|0,n|0,l|0)|0;P=I;v=Es(F|0,K|0,n|0,l|0)|0;b=I;ot=((st|0)<0)<<31>>31;l=Es(st|0,ot|0,n|0,l|0)|0;n=I;Ke=Es(u|0,c|0,u|0,c|0)|0;Fe=I;Xe=((Ye|0)<0)<<31>>31;Te=Es(Ye|0,Xe|0,de|0,he|0)|0;Re=I;le=Es(s|0,J|0,Ye|0,Xe|0)|0;ue=I;X=Es(rt|0,it|0,Ye|0,Xe|0)|0;Y=I;q=Es(a|0,we|0,Ye|0,Xe|0)|0;L=I;w=Es(p|0,T|0,Ye|0,Xe|0)|0;A=I;oe=((ie|0)<0)<<31>>31;Xe=Es(ie|0,oe|0,Ye|0,Xe|0)|0;Ye=I;c=Es(st|0,ot|0,u|0,c|0)|0;u=I;he=Es(f|0,m|0,de|0,he|0)|0;de=I;W=Es(f|0,m|0,s|0,J|0)|0;Q=I;N=Es(i|0,g|0,f|0,m|0)|0;B=I;R=Es(a|0,we|0,f|0,m|0)|0;k=I;Se=((Ee|0)<0)<<31>>31;Ze=Es(Ee|0,Se|0,f|0,m|0)|0;Je=I;Me=Es(ie|0,oe|0,f|0,m|0)|0;xe=I;m=Es(st|0,ot|0,f|0,m|0)|0;f=I;U=Es(s|0,J|0,s|0,J|0)|0;j=I;ge=((pe|0)<0)<<31>>31;S=Es(pe|0,ge|0,rt|0,it|0)|0;E=I;be=((ye|0)<0)<<31>>31;et=Es(ye|0,be|0,pe|0,ge|0)|0;$e=I;De=Es(Ee|0,Se|0,s|0,J|0)|0;Pe=I;ge=Es(ie|0,oe|0,pe|0,ge|0)|0;pe=I;J=Es(st|0,ot|0,s|0,J|0)|0;s=I;it=Es(Ue|0,((Ue|0)<0)<<31>>31|0,rt|0,it|0)|0;rt=I;Ue=Es(ye|0,be|0,i|0,g|0)|0;je=I;_e=Es(Ee|0,Se|0,i|0,g|0)|0;me=I;$=Es(ie|0,oe|0,i|0,g|0)|0;Z=I;g=Es(st|0,ot|0,i|0,g|0)|0;i=I;be=Es(ye|0,be|0,a|0,we|0)|0;ye=I;te=Es(Ee|0,Se|0,a|0,we|0)|0;ee=I;d=Es(ie|0,oe|0,d|0,((d|0)<0)<<31>>31|0)|0;h=I;we=Es(st|0,ot|0,a|0,we|0)|0;a=I;T=Es(Ee|0,Se|0,p|0,T|0)|0;p=I;Se=Es(ie|0,oe|0,r|0,t|0)|0;Ee=I;t=Es(st|0,ot|0,r|0,t|0)|0;r=I;oe=Es(ie|0,oe|0,F|0,K|0)|0;ie=I;K=Es(st|0,ot|0,F|0,K|0)|0;F=I;C=Es(st|0,ot|0,O|0,C|0)|0;O=I;tt=Ss(it|0,rt|0,nt|0,tt|0)|0;$e=Ss(tt|0,I|0,et|0,$e|0)|0;Je=Ss($e|0,I|0,Ze|0,Je|0)|0;Ye=Ss(Je|0,I|0,Xe|0,Ye|0)|0;n=Ss(Ye|0,I|0,l|0,n|0)|0;l=I;Ae=Ss(We|0,Qe|0,ve|0,Ae|0)|0;ve=I;re=Ss(Ve|0,He|0,ne|0,re|0)|0;ne=I;Fe=Ss(ze|0,Ge|0,Ke|0,Fe|0)|0;Le=Ss(Fe|0,I|0,qe|0,Le|0)|0;p=Ss(Le|0,I|0,T|0,p|0)|0;h=Ss(p|0,I|0,d|0,h|0)|0;i=Ss(h|0,I|0,g|0,i|0)|0;g=I;h=Ss(n|0,l|0,33554432,0)|0;d=I;p=Os(h|0,d|0,26)|0;T=I;Be=Ss(Ue|0,je|0,Ne|0,Be|0)|0;Pe=Ss(Be|0,I|0,De|0,Pe|0)|0;xe=Ss(Pe|0,I|0,Me|0,xe|0)|0;u=Ss(xe|0,I|0,c|0,u|0)|0;T=Ss(u|0,I|0,p|0,T|0)|0;p=I;d=ks(n|0,l|0,h&-67108864|0,d|0)|0;h=I;l=Ss(i|0,g|0,33554432,0)|0;n=I;u=Os(l|0,n|0,26)|0;c=I;Re=Ss(Ce|0,Oe|0,Te|0,Re|0)|0;ke=Ss(Re|0,I|0,Ie|0,ke|0)|0;Ee=Ss(ke|0,I|0,Se|0,Ee|0)|0;a=Ss(Ee|0,I|0,we|0,a|0)|0;c=Ss(a|0,I|0,u|0,c|0)|0;u=I;n=ks(i|0,g|0,l&-67108864|0,n|0)|0;l=I;g=Ss(T|0,p|0,16777216,0)|0;i=Os(g|0,I|0,25)|0;a=I;ye=Ss(Ae|0,ve|0,be|0,ye|0)|0;me=Ss(ye|0,I|0,_e|0,me|0)|0;pe=Ss(me|0,I|0,ge|0,pe|0)|0;f=Ss(pe|0,I|0,m|0,f|0)|0;a=Ss(f|0,I|0,i|0,a|0)|0;i=I;g=ks(T|0,p|0,g&-33554432|0,0)|0;p=I;T=Ss(c|0,u|0,16777216,0)|0;f=Os(T|0,I|0,25)|0;m=I;ue=Ss(he|0,de|0,le|0,ue|0)|0;fe=Ss(ue|0,I|0,ce|0,fe|0)|0;se=Ss(fe|0,I|0,ae|0,se|0)|0;ie=Ss(se|0,I|0,oe|0,ie|0)|0;r=Ss(ie|0,I|0,t|0,r|0)|0;m=Ss(r|0,I|0,f|0,m|0)|0;f=I;T=ks(c|0,u|0,T&-33554432|0,0)|0;u=I;c=Ss(a|0,i|0,33554432,0)|0;r=Os(c|0,I|0,26)|0;t=I;ee=Ss(re|0,ne|0,te|0,ee|0)|0;Z=Ss(ee|0,I|0,$|0,Z|0)|0;s=Ss(Z|0,I|0,J|0,s|0)|0;t=Ss(s|0,I|0,r|0,t|0)|0;r=I;c=ks(a|0,i|0,c&-67108864|0,0)|0;i=Ss(m|0,f|0,33554432,0)|0;a=Os(i|0,I|0,26)|0;s=I;Q=Ss(X|0,Y|0,W|0,Q|0)|0;H=Ss(Q|0,I|0,V|0,H|0)|0;G=Ss(H|0,I|0,z|0,G|0)|0;F=Ss(G|0,I|0,K|0,F|0)|0;s=Ss(F|0,I|0,a|0,s|0)|0;a=I;i=ks(m|0,f|0,i&-67108864|0,0)|0;f=Ss(t|0,r|0,16777216,0)|0;m=Os(f|0,I|0,25)|0;l=Ss(m|0,I|0,n|0,l|0)|0;n=I;f=ks(t|0,r|0,f&-33554432|0,0)|0;r=Ss(s|0,a|0,16777216,0)|0;t=Os(r|0,I|0,25)|0;m=I;j=Ss(q|0,L|0,U|0,j|0)|0;B=Ss(j|0,I|0,N|0,B|0)|0;P=Ss(B|0,I|0,D|0,P|0)|0;x=Ss(P|0,I|0,M|0,x|0)|0;O=Ss(x|0,I|0,C|0,O|0)|0;m=Ss(O|0,I|0,t|0,m|0)|0;t=I;r=ks(s|0,a|0,r&-33554432|0,0)|0;a=Ss(l|0,n|0,33554432,0)|0;s=Cs(a|0,I|0,26)|0;s=Ss(T|0,u|0,s|0,I|0)|0;a=ks(l|0,n|0,a&-67108864|0,0)|0;n=Ss(m|0,t|0,33554432,0)|0;l=Os(n|0,I|0,26)|0;u=I;E=Ss(R|0,k|0,S|0,E|0)|0;A=Ss(E|0,I|0,w|0,A|0)|0;b=Ss(A|0,I|0,v|0,b|0)|0;_=Ss(b|0,I|0,y|0,_|0)|0;u=Ss(_|0,I|0,l|0,u|0)|0;l=I;n=ks(m|0,t|0,n&-67108864|0,0)|0;t=Ss(u|0,l|0,16777216,0)|0;m=Os(t|0,I|0,25)|0;m=Es(m|0,I|0,19,0)|0;h=Ss(m|0,I|0,d|0,h|0)|0;d=I;t=ks(u|0,l|0,t&-33554432|0,0)|0;l=Ss(h|0,d|0,33554432,0)|0;u=Cs(l|0,I|0,26)|0;u=Ss(g|0,p|0,u|0,I|0)|0;l=ks(h|0,d|0,l&-67108864|0,0)|0;o[e>>2]=l;o[e+4>>2]=u;o[e+8>>2]=c;o[e+12>>2]=f;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=n;o[e+36>>2]=t;return}function Xr(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0,me=0,_e=0,ye=0,be=0,ve=0,Ae=0,we=0,Ee=0,Se=0,ke=0,Ie=0,Re=0,Te=0,Oe=0,Ce=0,xe=0,Me=0,Pe=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,qe=0,Fe=0,Ke=0,Ge=0,ze=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ft=0,ct=0,ut=0,lt=0,dt=0,ht=0,pt=0,gt=0,mt=0,_t=0,yt=0,bt=0,vt=0,At=0,wt=0,Et=0,St=0,kt=0,It=0,Rt=0,Tt=0,Ot=0,Ct=0,xt=0,Mt=0,Pt=0,Dt=0,Bt=0,Nt=0,jt=0,Ut=0,Lt=0,qt=0,Ft=0,Kt=0,Gt=0,zt=0,Ht=0,Vt=0,Qt=0,Wt=0,Yt=0,Xt=0,Jt=0,Zt=0,$t=0,en=0,tn=0,nn=0,rn=0,on=0,sn=0,an=0,fn=0,cn=0,un=0,ln=0,dn=0,hn=0,pn=0,gn=0,mn=0,_n=0,yn=0,bn=0,vn=0,An=0,wn=0,En=0,Sn=0,kn=0,In=0,Rn=0,Tn=0,On=0,Cn=0,xn=0,Mn=0,Pn=0,Dn=0,Bn=0,Nn=0,jn=0,Un=0,Ln=0,qn=0,Fn=0,Kn=0,Gn=0,zn=0,Hn=0;_=o[t>>2]|0;b=o[t+4>>2]|0;u=o[t+8>>2]|0;Ht=o[t+12>>2]|0;s=o[t+16>>2]|0;Ie=o[t+20>>2]|0;a=o[t+24>>2]|0;Rt=o[t+28>>2]|0;oe=o[t+32>>2]|0;ae=o[t+36>>2]|0;D=o[n>>2]|0;N=o[n+4>>2]|0;M=o[n+8>>2]|0;C=o[n+12>>2]|0;T=o[n+16>>2]|0;k=o[n+20>>2]|0;E=o[n+24>>2]|0;A=o[n+28>>2]|0;c=o[n+32>>2]|0;v=o[n+36>>2]|0;Fn=N*19|0;rn=M*19|0;yt=C*19|0;De=T*19|0;un=k*19|0;xt=E*19|0;Ve=A*19|0;Hn=c*19|0;Gn=v*19|0;t=b<<1;f=Ht<<1;i=Ie<<1;r=Rt<<1;L=ae<<1;y=((_|0)<0)<<31>>31;B=((D|0)<0)<<31>>31;Ln=Es(D|0,B|0,_|0,y|0)|0;Un=I;j=((N|0)<0)<<31>>31;En=Es(N|0,j|0,_|0,y|0)|0;wn=I;P=((M|0)<0)<<31>>31;At=Es(M|0,P|0,_|0,y|0)|0;vt=I;x=((C|0)<0)<<31>>31;je=Es(C|0,x|0,_|0,y|0)|0;Ne=I;O=((T|0)<0)<<31>>31;hn=Es(T|0,O|0,_|0,y|0)|0;dn=I;R=((k|0)<0)<<31>>31;Dt=Es(k|0,R|0,_|0,y|0)|0;Pt=I;S=((E|0)<0)<<31>>31;Ye=Es(E|0,S|0,_|0,y|0)|0;We=I;w=((A|0)<0)<<31>>31;ue=Es(A|0,w|0,_|0,y|0)|0;ce=I;Kn=((c|0)<0)<<31>>31;K=Es(c|0,Kn|0,_|0,y|0)|0;F=I;y=Es(v|0,((v|0)<0)<<31>>31|0,_|0,y|0)|0;_=I;v=((b|0)<0)<<31>>31;sn=Es(D|0,B|0,b|0,v|0)|0;an=I;l=((t|0)<0)<<31>>31;kt=Es(N|0,j|0,t|0,l|0)|0;St=I;Le=Es(M|0,P|0,b|0,v|0)|0;Ue=I;gn=Es(C|0,x|0,t|0,l|0)|0;pn=I;Nt=Es(T|0,O|0,b|0,v|0)|0;Bt=I;Je=Es(k|0,R|0,t|0,l|0)|0;Xe=I;de=Es(E|0,S|0,b|0,v|0)|0;le=I;z=Es(A|0,w|0,t|0,l|0)|0;G=I;v=Es(c|0,Kn|0,b|0,v|0)|0;b=I;Kn=((Gn|0)<0)<<31>>31;l=Es(Gn|0,Kn|0,t|0,l|0)|0;t=I;c=((u|0)<0)<<31>>31;Et=Es(D|0,B|0,u|0,c|0)|0;wt=I;Ge=Es(N|0,j|0,u|0,c|0)|0;Ke=I;_n=Es(M|0,P|0,u|0,c|0)|0;mn=I;Ut=Es(C|0,x|0,u|0,c|0)|0;jt=I;$e=Es(T|0,O|0,u|0,c|0)|0;Ze=I;pe=Es(k|0,R|0,u|0,c|0)|0;he=I;V=Es(E|0,S|0,u|0,c|0)|0;H=I;w=Es(A|0,w|0,u|0,c|0)|0;A=I;zn=((Hn|0)<0)<<31>>31;kn=Es(Hn|0,zn|0,u|0,c|0)|0;Sn=I;c=Es(Gn|0,Kn|0,u|0,c|0)|0;u=I;Vt=((Ht|0)<0)<<31>>31;Fe=Es(D|0,B|0,Ht|0,Vt|0)|0;qe=I;m=((f|0)<0)<<31>>31;An=Es(N|0,j|0,f|0,m|0)|0;vn=I;qt=Es(M|0,P|0,Ht|0,Vt|0)|0;Lt=I;tt=Es(C|0,x|0,f|0,m|0)|0;et=I;me=Es(T|0,O|0,Ht|0,Vt|0)|0;ge=I;W=Es(k|0,R|0,f|0,m|0)|0;Q=I;S=Es(E|0,S|0,Ht|0,Vt|0)|0;E=I;Qe=((Ve|0)<0)<<31>>31;Rn=Es(Ve|0,Qe|0,f|0,m|0)|0;In=I;Vt=Es(Hn|0,zn|0,Ht|0,Vt|0)|0;Ht=I;m=Es(Gn|0,Kn|0,f|0,m|0)|0;f=I;ke=((s|0)<0)<<31>>31;bn=Es(D|0,B|0,s|0,ke|0)|0;yn=I;zt=Es(N|0,j|0,s|0,ke|0)|0;Gt=I;rt=Es(M|0,P|0,s|0,ke|0)|0;nt=I;ye=Es(C|0,x|0,s|0,ke|0)|0;_e=I;X=Es(T|0,O|0,s|0,ke|0)|0;Y=I;R=Es(k|0,R|0,s|0,ke|0)|0;k=I;Mt=((xt|0)<0)<<31>>31;On=Es(xt|0,Mt|0,s|0,ke|0)|0;Tn=I;Wt=Es(Ve|0,Qe|0,s|0,ke|0)|0;Qt=I;ct=Es(Hn|0,zn|0,s|0,ke|0)|0;ft=I;ke=Es(Gn|0,Kn|0,s|0,ke|0)|0;s=I;Re=((Ie|0)<0)<<31>>31;Kt=Es(D|0,B|0,Ie|0,Re|0)|0;Ft=I;g=((i|0)<0)<<31>>31;at=Es(N|0,j|0,i|0,g|0)|0;st=I;ve=Es(M|0,P|0,Ie|0,Re|0)|0;be=I;Z=Es(C|0,x|0,i|0,g|0)|0;J=I;O=Es(T|0,O|0,Ie|0,Re|0)|0;T=I;ln=((un|0)<0)<<31>>31;xn=Es(un|0,ln|0,i|0,g|0)|0;Cn=I;Xt=Es(xt|0,Mt|0,Ie|0,Re|0)|0;Yt=I;lt=Es(Ve|0,Qe|0,i|0,g|0)|0;ut=I;Re=Es(Hn|0,zn|0,Ie|0,Re|0)|0;Ie=I;g=Es(Gn|0,Kn|0,i|0,g|0)|0;i=I;It=((a|0)<0)<<31>>31;ot=Es(D|0,B|0,a|0,It|0)|0;it=I;Se=Es(N|0,j|0,a|0,It|0)|0;Ee=I;ee=Es(M|0,P|0,a|0,It|0)|0;$=I;x=Es(C|0,x|0,a|0,It|0)|0;C=I;Be=((De|0)<0)<<31>>31;Pn=Es(De|0,Be|0,a|0,It|0)|0;Mn=I;Zt=Es(un|0,ln|0,a|0,It|0)|0;Jt=I;ht=Es(xt|0,Mt|0,a|0,It|0)|0;dt=I;Oe=Es(Ve|0,Qe|0,a|0,It|0)|0;Te=I;d=Es(Hn|0,zn|0,a|0,It|0)|0;h=I;It=Es(Gn|0,Kn|0,a|0,It|0)|0;a=I;Tt=((Rt|0)<0)<<31>>31;we=Es(D|0,B|0,Rt|0,Tt|0)|0;Ae=I;n=((r|0)<0)<<31>>31;ie=Es(N|0,j|0,r|0,n|0)|0;re=I;P=Es(M|0,P|0,Rt|0,Tt|0)|0;M=I;bt=((yt|0)<0)<<31>>31;Bn=Es(yt|0,bt|0,r|0,n|0)|0;Dn=I;en=Es(De|0,Be|0,Rt|0,Tt|0)|0;$t=I;gt=Es(un|0,ln|0,r|0,n|0)|0;pt=I;xe=Es(xt|0,Mt|0,Rt|0,Tt|0)|0;Ce=I;U=Es(Ve|0,Qe|0,r|0,n|0)|0;p=I;Tt=Es(Hn|0,zn|0,Rt|0,Tt|0)|0;Rt=I;n=Es(Gn|0,Kn|0,r|0,n|0)|0;r=I;se=((oe|0)<0)<<31>>31;ne=Es(D|0,B|0,oe|0,se|0)|0;te=I;j=Es(N|0,j|0,oe|0,se|0)|0;N=I;on=((rn|0)<0)<<31>>31;jn=Es(rn|0,on|0,oe|0,se|0)|0;Nn=I;nn=Es(yt|0,bt|0,oe|0,se|0)|0;tn=I;_t=Es(De|0,Be|0,oe|0,se|0)|0;mt=I;Pe=Es(un|0,ln|0,oe|0,se|0)|0;Me=I;cn=Es(xt|0,Mt|0,oe|0,se|0)|0;fn=I;Ct=Es(Ve|0,Qe|0,oe|0,se|0)|0;Ot=I;He=Es(Hn|0,zn|0,oe|0,se|0)|0;ze=I;se=Es(Gn|0,Kn|0,oe|0,se|0)|0;oe=I;fe=((ae|0)<0)<<31>>31;B=Es(D|0,B|0,ae|0,fe|0)|0;D=I;q=((L|0)<0)<<31>>31;Fn=Es(Fn|0,((Fn|0)<0)<<31>>31|0,L|0,q|0)|0;qn=I;on=Es(rn|0,on|0,ae|0,fe|0)|0;rn=I;bt=Es(yt|0,bt|0,L|0,q|0)|0;yt=I;Be=Es(De|0,Be|0,ae|0,fe|0)|0;De=I;ln=Es(un|0,ln|0,L|0,q|0)|0;un=I;Mt=Es(xt|0,Mt|0,ae|0,fe|0)|0;xt=I;Qe=Es(Ve|0,Qe|0,L|0,q|0)|0;Ve=I;fe=Es(Hn|0,zn|0,ae|0,fe|0)|0;ae=I;q=Es(Gn|0,Kn|0,L|0,q|0)|0;L=I;Un=Ss(Fn|0,qn|0,Ln|0,Un|0)|0;Nn=Ss(Un|0,I|0,jn|0,Nn|0)|0;Dn=Ss(Nn|0,I|0,Bn|0,Dn|0)|0;Mn=Ss(Dn|0,I|0,Pn|0,Mn|0)|0;Cn=Ss(Mn|0,I|0,xn|0,Cn|0)|0;Tn=Ss(Cn|0,I|0,On|0,Tn|0)|0;In=Ss(Tn|0,I|0,Rn|0,In|0)|0;Sn=Ss(In|0,I|0,kn|0,Sn|0)|0;t=Ss(Sn|0,I|0,l|0,t|0)|0;l=I;an=Ss(En|0,wn|0,sn|0,an|0)|0;sn=I;yn=Ss(An|0,vn|0,bn|0,yn|0)|0;mn=Ss(yn|0,I|0,_n|0,mn|0)|0;pn=Ss(mn|0,I|0,gn|0,pn|0)|0;dn=Ss(pn|0,I|0,hn|0,dn|0)|0;un=Ss(dn|0,I|0,ln|0,un|0)|0;fn=Ss(un|0,I|0,cn|0,fn|0)|0;p=Ss(fn|0,I|0,U|0,p|0)|0;h=Ss(p|0,I|0,d|0,h|0)|0;i=Ss(h|0,I|0,g|0,i|0)|0;g=I;h=Ss(t|0,l|0,33554432,0)|0;d=I;p=Os(h|0,d|0,26)|0;U=I;rn=Ss(an|0,sn|0,on|0,rn|0)|0;tn=Ss(rn|0,I|0,nn|0,tn|0)|0;$t=Ss(tn|0,I|0,en|0,$t|0)|0;Jt=Ss($t|0,I|0,Zt|0,Jt|0)|0;Yt=Ss(Jt|0,I|0,Xt|0,Yt|0)|0;Qt=Ss(Yt|0,I|0,Wt|0,Qt|0)|0;Ht=Ss(Qt|0,I|0,Vt|0,Ht|0)|0;u=Ss(Ht|0,I|0,c|0,u|0)|0;U=Ss(u|0,I|0,p|0,U|0)|0;p=I;d=ks(t|0,l|0,h&-67108864|0,d|0)|0;h=I;l=Ss(i|0,g|0,33554432,0)|0;t=I;u=Os(l|0,t|0,26)|0;c=I;Ft=Ss(zt|0,Gt|0,Kt|0,Ft|0)|0;Lt=Ss(Ft|0,I|0,qt|0,Lt|0)|0;jt=Ss(Lt|0,I|0,Ut|0,jt|0)|0;Bt=Ss(jt|0,I|0,Nt|0,Bt|0)|0;Pt=Ss(Bt|0,I|0,Dt|0,Pt|0)|0;xt=Ss(Pt|0,I|0,Mt|0,xt|0)|0;Ot=Ss(xt|0,I|0,Ct|0,Ot|0)|0;Rt=Ss(Ot|0,I|0,Tt|0,Rt|0)|0;a=Ss(Rt|0,I|0,It|0,a|0)|0;c=Ss(a|0,I|0,u|0,c|0)|0;u=I;t=ks(i|0,g|0,l&-67108864|0,t|0)|0;l=I;g=Ss(U|0,p|0,16777216,0)|0;i=Os(g|0,I|0,25)|0;a=I;wt=Ss(kt|0,St|0,Et|0,wt|0)|0;vt=Ss(wt|0,I|0,At|0,vt|0)|0;yt=Ss(vt|0,I|0,bt|0,yt|0)|0;mt=Ss(yt|0,I|0,_t|0,mt|0)|0;pt=Ss(mt|0,I|0,gt|0,pt|0)|0;dt=Ss(pt|0,I|0,ht|0,dt|0)|0;ut=Ss(dt|0,I|0,lt|0,ut|0)|0;ft=Ss(ut|0,I|0,ct|0,ft|0)|0;f=Ss(ft|0,I|0,m|0,f|0)|0;a=Ss(f|0,I|0,i|0,a|0)|0;i=I;g=ks(U|0,p|0,g&-33554432|0,0)|0;p=I;U=Ss(c|0,u|0,16777216,0)|0;f=Os(U|0,I|0,25)|0;m=I;it=Ss(at|0,st|0,ot|0,it|0)|0;nt=Ss(it|0,I|0,rt|0,nt|0)|0;et=Ss(nt|0,I|0,tt|0,et|0)|0;Ze=Ss(et|0,I|0,$e|0,Ze|0)|0;Xe=Ss(Ze|0,I|0,Je|0,Xe|0)|0;We=Ss(Xe|0,I|0,Ye|0,We|0)|0;Ve=Ss(We|0,I|0,Qe|0,Ve|0)|0;ze=Ss(Ve|0,I|0,He|0,ze|0)|0;r=Ss(ze|0,I|0,n|0,r|0)|0;m=Ss(r|0,I|0,f|0,m|0)|0;f=I;U=ks(c|0,u|0,U&-33554432|0,0)|0;u=I;c=Ss(a|0,i|0,33554432,0)|0;r=Os(c|0,I|0,26)|0;n=I;qe=Ss(Ge|0,Ke|0,Fe|0,qe|0)|0;Ue=Ss(qe|0,I|0,Le|0,Ue|0)|0;Ne=Ss(Ue|0,I|0,je|0,Ne|0)|0;De=Ss(Ne|0,I|0,Be|0,De|0)|0;Me=Ss(De|0,I|0,Pe|0,Me|0)|0;Ce=Ss(Me|0,I|0,xe|0,Ce|0)|0;Te=Ss(Ce|0,I|0,Oe|0,Te|0)|0;Ie=Ss(Te|0,I|0,Re|0,Ie|0)|0;s=Ss(Ie|0,I|0,ke|0,s|0)|0;n=Ss(s|0,I|0,r|0,n|0)|0;r=I;c=ks(a|0,i|0,c&-67108864|0,0)|0;i=Ss(m|0,f|0,33554432,0)|0;a=Os(i|0,I|0,26)|0;s=I;Ae=Ss(Se|0,Ee|0,we|0,Ae|0)|0;be=Ss(Ae|0,I|0,ve|0,be|0)|0;_e=Ss(be|0,I|0,ye|0,_e|0)|0;ge=Ss(_e|0,I|0,me|0,ge|0)|0;he=Ss(ge|0,I|0,pe|0,he|0)|0;le=Ss(he|0,I|0,de|0,le|0)|0;ce=Ss(le|0,I|0,ue|0,ce|0)|0;ae=Ss(ce|0,I|0,fe|0,ae|0)|0;oe=Ss(ae|0,I|0,se|0,oe|0)|0;s=Ss(oe|0,I|0,a|0,s|0)|0;a=I;i=ks(m|0,f|0,i&-67108864|0,0)|0;f=Ss(n|0,r|0,16777216,0)|0;m=Os(f|0,I|0,25)|0;l=Ss(m|0,I|0,t|0,l|0)|0;t=I;f=ks(n|0,r|0,f&-33554432|0,0)|0;r=Ss(s|0,a|0,16777216,0)|0;n=Os(r|0,I|0,25)|0;m=I;te=Ss(ie|0,re|0,ne|0,te|0)|0;$=Ss(te|0,I|0,ee|0,$|0)|0;J=Ss($|0,I|0,Z|0,J|0)|0;Y=Ss(J|0,I|0,X|0,Y|0)|0;Q=Ss(Y|0,I|0,W|0,Q|0)|0;H=Ss(Q|0,I|0,V|0,H|0)|0;G=Ss(H|0,I|0,z|0,G|0)|0;F=Ss(G|0,I|0,K|0,F|0)|0;L=Ss(F|0,I|0,q|0,L|0)|0;m=Ss(L|0,I|0,n|0,m|0)|0;n=I;r=ks(s|0,a|0,r&-33554432|0,0)|0;a=Ss(l|0,t|0,33554432,0)|0;s=Cs(a|0,I|0,26)|0;s=Ss(U|0,u|0,s|0,I|0)|0;a=ks(l|0,t|0,a&-67108864|0,0)|0;t=Ss(m|0,n|0,33554432,0)|0;l=Os(t|0,I|0,26)|0;u=I;D=Ss(j|0,N|0,B|0,D|0)|0;M=Ss(D|0,I|0,P|0,M|0)|0;C=Ss(M|0,I|0,x|0,C|0)|0;T=Ss(C|0,I|0,O|0,T|0)|0;k=Ss(T|0,I|0,R|0,k|0)|0;E=Ss(k|0,I|0,S|0,E|0)|0;A=Ss(E|0,I|0,w|0,A|0)|0;b=Ss(A|0,I|0,v|0,b|0)|0;_=Ss(b|0,I|0,y|0,_|0)|0;u=Ss(_|0,I|0,l|0,u|0)|0;l=I;t=ks(m|0,n|0,t&-67108864|0,0)|0;n=Ss(u|0,l|0,16777216,0)|0;m=Os(n|0,I|0,25)|0;m=Es(m|0,I|0,19,0)|0;h=Ss(m|0,I|0,d|0,h|0)|0;d=I;n=ks(u|0,l|0,n&-33554432|0,0)|0;l=Ss(h|0,d|0,33554432,0)|0;u=Cs(l|0,I|0,26)|0;u=Ss(g|0,p|0,u|0,I|0)|0;l=ks(h|0,d|0,l&-67108864|0,0)|0;o[e>>2]=l;o[e+4>>2]=u;o[e+8>>2]=c;o[e+12>>2]=f;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=t;o[e+36>>2]=n;return}function Jr(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0;b=o[t>>2]|0;y=o[t+4>>2]|0;m=o[t+8>>2]|0;p=o[t+12>>2]|0;d=o[t+16>>2]|0;l=o[t+20>>2]|0;u=o[t+24>>2]|0;f=o[t+28>>2]|0;s=o[t+32>>2]|0;n=o[t+36>>2]|0;b=(((((((((((((n*19|0)+16777216>>25)+b>>26)+y>>25)+m>>26)+p>>25)+d>>26)+l>>25)+u>>26)+f>>25)+s>>26)+n>>25)*19|0)+b|0;y=(b>>26)+y|0;m=(y>>25)+m|0;_=y&33554431;p=(m>>26)+p|0;g=m&67108863;d=(p>>25)+d|0;h=p&33554431;l=(d>>26)+l|0;u=(l>>25)+u|0;f=(u>>26)+f|0;c=u&67108863;s=(f>>25)+s|0;a=f&33554431;n=(s>>26)+n|0;i=s&67108863;t=n&33554431;r[e>>0]=b;r[e+1>>0]=b>>>8;r[e+2>>0]=b>>>16;r[e+3>>0]=_<<2|b>>>24&3;r[e+4>>0]=y>>>6;r[e+5>>0]=y>>>14;r[e+6>>0]=g<<3|_>>>22;r[e+7>>0]=m>>>5;r[e+8>>0]=m>>>13;r[e+9>>0]=h<<5|g>>>21;r[e+10>>0]=p>>>3;r[e+11>>0]=p>>>11;r[e+12>>0]=d<<6|h>>>19;r[e+13>>0]=d>>>2;r[e+14>>0]=d>>>10;r[e+15>>0]=d>>>18;r[e+16>>0]=l;r[e+17>>0]=l>>>8;r[e+18>>0]=l>>>16;r[e+19>>0]=c<<1|l>>>24&1;r[e+20>>0]=u>>>7;r[e+21>>0]=u>>>15;r[e+22>>0]=a<<3|c>>>23;r[e+23>>0]=f>>>5;r[e+24>>0]=f>>>13;r[e+25>>0]=i<<4|a>>>21;r[e+26>>0]=s>>>4;r[e+27>>0]=s>>>12;r[e+28>>0]=t<<6|i>>>20;r[e+29>>0]=n>>>2;r[e+30>>0]=n>>>10;r[e+31>>0]=t>>>18;return}function Zr(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0,s=0;s=h;h=h+144|0;r=s+96|0;i=s+48|0;o=s;Yr(r,t);Yr(i,r);Yr(i,i);Xr(i,t,i);Xr(r,r,i);Yr(r,r);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Yr(o,o);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(i,r);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(i,i,r);Yr(o,i);n=1;do{Yr(o,o);n=n+1|0}while((n|0)!=100);Xr(i,o,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Yr(i,i);Xr(r,i,r);Yr(r,r);Yr(r,r);Xr(e,r,t);h=s;return}function $r(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0,me=0,_e=0,ye=0,be=0,ve=0,Ae=0,we=0,Ee=0,Se=0,ke=0,Ie=0,Re=0,Te=0,Oe=0,Ce=0,xe=0,Me=0,Pe=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,qe=0,Fe=0,Ke=0,Ge=0,ze=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;tt=o[t>>2]|0;je=o[t+4>>2]|0;b=o[t+8>>2]|0;re=o[t+12>>2]|0;v=o[t+16>>2]|0;rt=o[t+20>>2]|0;c=o[t+24>>2]|0;ge=o[t+28>>2]|0;s=o[t+32>>2]|0;m=o[t+36>>2]|0;u=tt<<1;_=je<<1;Ye=b<<1;w=re<<1;xe=v<<1;g=rt<<1;pe=c<<1;A=ge<<1;We=rt*38|0;Be=c*19|0;oe=ge*38|0;Y=s*19|0;st=m*38|0;nt=((tt|0)<0)<<31>>31;nt=Es(tt|0,nt|0,tt|0,nt|0)|0;tt=I;l=((u|0)<0)<<31>>31;Ue=((je|0)<0)<<31>>31;Ve=Es(u|0,l|0,je|0,Ue|0)|0;He=I;p=((b|0)<0)<<31>>31;qe=Es(b|0,p|0,u|0,l|0)|0;Le=I;ie=((re|0)<0)<<31>>31;Ce=Es(re|0,ie|0,u|0,l|0)|0;Oe=I;r=((v|0)<0)<<31>>31;ye=Es(v|0,r|0,u|0,l|0)|0;_e=I;it=((rt|0)<0)<<31>>31;fe=Es(rt|0,it|0,u|0,l|0)|0;ae=I;y=((c|0)<0)<<31>>31;Z=Es(c|0,y|0,u|0,l|0)|0;J=I;me=((ge|0)<0)<<31>>31;K=Es(ge|0,me|0,u|0,l|0)|0;F=I;a=((s|0)<0)<<31>>31;M=Es(s|0,a|0,u|0,l|0)|0;x=I;t=((m|0)<0)<<31>>31;l=Es(m|0,t|0,u|0,l|0)|0;u=I;n=((_|0)<0)<<31>>31;Ue=Es(_|0,n|0,je|0,Ue|0)|0;je=I;Te=Es(_|0,n|0,b|0,p|0)|0;Re=I;i=((w|0)<0)<<31>>31;we=Es(w|0,i|0,_|0,n|0)|0;Ae=I;de=Es(v|0,r|0,_|0,n|0)|0;le=I;E=((g|0)<0)<<31>>31;ee=Es(g|0,E|0,_|0,n|0)|0;$=I;z=Es(c|0,y|0,_|0,n|0)|0;G=I;f=((A|0)<0)<<31>>31;D=Es(A|0,f|0,_|0,n|0)|0;P=I;d=Es(s|0,a|0,_|0,n|0)|0;h=I;ot=((st|0)<0)<<31>>31;n=Es(st|0,ot|0,_|0,n|0)|0;_=I;ve=Es(b|0,p|0,b|0,p|0)|0;be=I;Xe=((Ye|0)<0)<<31>>31;ue=Es(Ye|0,Xe|0,re|0,ie|0)|0;ce=I;ne=Es(v|0,r|0,Ye|0,Xe|0)|0;te=I;W=Es(rt|0,it|0,Ye|0,Xe|0)|0;Q=I;q=Es(c|0,y|0,Ye|0,Xe|0)|0;L=I;k=Es(ge|0,me|0,Ye|0,Xe|0)|0;S=I;X=((Y|0)<0)<<31>>31;Xe=Es(Y|0,X|0,Ye|0,Xe|0)|0;Ye=I;p=Es(st|0,ot|0,b|0,p|0)|0;b=I;ie=Es(w|0,i|0,re|0,ie|0)|0;re=I;V=Es(w|0,i|0,v|0,r|0)|0;H=I;N=Es(g|0,E|0,w|0,i|0)|0;B=I;C=Es(c|0,y|0,w|0,i|0)|0;O=I;se=((oe|0)<0)<<31>>31;Ze=Es(oe|0,se|0,w|0,i|0)|0;Je=I;Ke=Es(Y|0,X|0,w|0,i|0)|0;Fe=I;i=Es(st|0,ot|0,w|0,i|0)|0;w=I;U=Es(v|0,r|0,v|0,r|0)|0;j=I;Me=((xe|0)<0)<<31>>31;T=Es(xe|0,Me|0,rt|0,it|0)|0;R=I;Ne=((Be|0)<0)<<31>>31;et=Es(Be|0,Ne|0,xe|0,Me|0)|0;$e=I;ze=Es(oe|0,se|0,v|0,r|0)|0;Ge=I;Me=Es(Y|0,X|0,xe|0,Me|0)|0;xe=I;r=Es(st|0,ot|0,v|0,r|0)|0;v=I;it=Es(We|0,((We|0)<0)<<31>>31|0,rt|0,it|0)|0;rt=I;We=Es(Be|0,Ne|0,g|0,E|0)|0;Qe=I;De=Es(oe|0,se|0,g|0,E|0)|0;Pe=I;Se=Es(Y|0,X|0,g|0,E|0)|0;Ee=I;E=Es(st|0,ot|0,g|0,E|0)|0;g=I;Ne=Es(Be|0,Ne|0,c|0,y|0)|0;Be=I;Ie=Es(oe|0,se|0,c|0,y|0)|0;ke=I;pe=Es(Y|0,X|0,pe|0,((pe|0)<0)<<31>>31|0)|0;he=I;y=Es(st|0,ot|0,c|0,y|0)|0;c=I;me=Es(oe|0,se|0,ge|0,me|0)|0;ge=I;se=Es(Y|0,X|0,A|0,f|0)|0;oe=I;f=Es(st|0,ot|0,A|0,f|0)|0;A=I;X=Es(Y|0,X|0,s|0,a|0)|0;Y=I;a=Es(st|0,ot|0,s|0,a|0)|0;s=I;t=Es(st|0,ot|0,m|0,t|0)|0;m=I;tt=Ss(it|0,rt|0,nt|0,tt|0)|0;$e=Ss(tt|0,I|0,et|0,$e|0)|0;Je=Ss($e|0,I|0,Ze|0,Je|0)|0;Ye=Ss(Je|0,I|0,Xe|0,Ye|0)|0;_=Ss(Ye|0,I|0,n|0,_|0)|0;n=I;He=Ss(We|0,Qe|0,Ve|0,He|0)|0;Ge=Ss(He|0,I|0,ze|0,Ge|0)|0;Fe=Ss(Ge|0,I|0,Ke|0,Fe|0)|0;b=Ss(Fe|0,I|0,p|0,b|0)|0;p=I;je=Ss(qe|0,Le|0,Ue|0,je|0)|0;Be=Ss(je|0,I|0,Ne|0,Be|0)|0;Pe=Ss(Be|0,I|0,De|0,Pe|0)|0;xe=Ss(Pe|0,I|0,Me|0,xe|0)|0;w=Ss(xe|0,I|0,i|0,w|0)|0;i=I;Re=Ss(Ce|0,Oe|0,Te|0,Re|0)|0;ke=Ss(Re|0,I|0,Ie|0,ke|0)|0;Ee=Ss(ke|0,I|0,Se|0,Ee|0)|0;v=Ss(Ee|0,I|0,r|0,v|0)|0;r=I;be=Ss(we|0,Ae|0,ve|0,be|0)|0;_e=Ss(be|0,I|0,ye|0,_e|0)|0;ge=Ss(_e|0,I|0,me|0,ge|0)|0;he=Ss(ge|0,I|0,pe|0,he|0)|0;g=Ss(he|0,I|0,E|0,g|0)|0;E=I;ce=Ss(de|0,le|0,ue|0,ce|0)|0;ae=Ss(ce|0,I|0,fe|0,ae|0)|0;oe=Ss(ae|0,I|0,se|0,oe|0)|0;c=Ss(oe|0,I|0,y|0,c|0)|0;y=I;te=Ss(ie|0,re|0,ne|0,te|0)|0;$=Ss(te|0,I|0,ee|0,$|0)|0;J=Ss($|0,I|0,Z|0,J|0)|0;Y=Ss(J|0,I|0,X|0,Y|0)|0;A=Ss(Y|0,I|0,f|0,A|0)|0;f=I;H=Ss(W|0,Q|0,V|0,H|0)|0;G=Ss(H|0,I|0,z|0,G|0)|0;F=Ss(G|0,I|0,K|0,F|0)|0;s=Ss(F|0,I|0,a|0,s|0)|0;a=I;j=Ss(q|0,L|0,U|0,j|0)|0;B=Ss(j|0,I|0,N|0,B|0)|0;P=Ss(B|0,I|0,D|0,P|0)|0;x=Ss(P|0,I|0,M|0,x|0)|0;m=Ss(x|0,I|0,t|0,m|0)|0;t=I;R=Ss(C|0,O|0,T|0,R|0)|0;S=Ss(R|0,I|0,k|0,S|0)|0;h=Ss(S|0,I|0,d|0,h|0)|0;u=Ss(h|0,I|0,l|0,u|0)|0;l=I;n=xs(_|0,n|0,1)|0;_=I;p=xs(b|0,p|0,1)|0;b=I;i=xs(w|0,i|0,1)|0;w=I;r=xs(v|0,r|0,1)|0;v=I;E=xs(g|0,E|0,1)|0;g=I;y=xs(c|0,y|0,1)|0;c=I;f=xs(A|0,f|0,1)|0;A=I;a=xs(s|0,a|0,1)|0;s=I;t=xs(m|0,t|0,1)|0;m=I;l=xs(u|0,l|0,1)|0;u=I;h=Ss(n|0,_|0,33554432,0)|0;d=I;S=Os(h|0,d|0,26)|0;b=Ss(S|0,I|0,p|0,b|0)|0;p=I;d=ks(n|0,_|0,h&-67108864|0,d|0)|0;h=I;_=Ss(E|0,g|0,33554432,0)|0;n=I;S=Os(_|0,n|0,26)|0;c=Ss(S|0,I|0,y|0,c|0)|0;y=I;n=ks(E|0,g|0,_&-67108864|0,n|0)|0;_=I;g=Ss(b|0,p|0,16777216,0)|0;E=Os(g|0,I|0,25)|0;w=Ss(E|0,I|0,i|0,w|0)|0;i=I;g=ks(b|0,p|0,g&-33554432|0,0)|0;p=I;b=Ss(c|0,y|0,16777216,0)|0;E=Os(b|0,I|0,25)|0;A=Ss(E|0,I|0,f|0,A|0)|0;f=I;b=ks(c|0,y|0,b&-33554432|0,0)|0;y=I;c=Ss(w|0,i|0,33554432,0)|0;E=Os(c|0,I|0,26)|0;v=Ss(E|0,I|0,r|0,v|0)|0;r=I;c=ks(w|0,i|0,c&-67108864|0,0)|0;i=Ss(A|0,f|0,33554432,0)|0;w=Os(i|0,I|0,26)|0;s=Ss(w|0,I|0,a|0,s|0)|0;a=I;i=ks(A|0,f|0,i&-67108864|0,0)|0;f=Ss(v|0,r|0,16777216,0)|0;A=Os(f|0,I|0,25)|0;_=Ss(A|0,I|0,n|0,_|0)|0;n=I;f=ks(v|0,r|0,f&-33554432|0,0)|0;r=Ss(s|0,a|0,16777216,0)|0;v=Os(r|0,I|0,25)|0;m=Ss(v|0,I|0,t|0,m|0)|0;t=I;r=ks(s|0,a|0,r&-33554432|0,0)|0;a=Ss(_|0,n|0,33554432,0)|0;s=Cs(a|0,I|0,26)|0;s=Ss(b|0,y|0,s|0,I|0)|0;a=ks(_|0,n|0,a&-67108864|0,0)|0;n=Ss(m|0,t|0,33554432,0)|0;_=Os(n|0,I|0,26)|0;u=Ss(_|0,I|0,l|0,u|0)|0;l=I;n=ks(m|0,t|0,n&-67108864|0,0)|0;t=Ss(u|0,l|0,16777216,0)|0;m=Os(t|0,I|0,25)|0;m=Es(m|0,I|0,19,0)|0;h=Ss(m|0,I|0,d|0,h|0)|0;d=I;t=ks(u|0,l|0,t&-33554432|0,0)|0;l=Ss(h|0,d|0,33554432,0)|0;u=Cs(l|0,I|0,26)|0;u=Ss(g|0,p|0,u|0,I|0)|0;l=ks(h|0,d|0,l&-67108864|0,0)|0;o[e>>2]=l;o[e+4>>2]=u;o[e+8>>2]=c;o[e+12>>2]=f;o[e+16>>2]=a;o[e+20>>2]=s;o[e+24>>2]=i;o[e+28>>2]=r;o[e+32>>2]=n;o[e+36>>2]=t;return}function ei(e){e=e|0;var t=0,n=0,i=0,o=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0,me=0,_e=0,ye=0,be=0,ve=0,Ae=0,we=0,Ee=0,Se=0,ke=0,Ie=0,Re=0,Te=0,Oe=0,Ce=0,xe=0,Me=0,Pe=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,qe=0,Fe=0,Ke=0,Ge=0,ze=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0;de=e+1|0;ce=e+2|0;K=r[ce>>0]|0;we=s[e>>0]|0;M=xs(s[de>>0]|0|0,0,8)|0;be=I;K=K&255;ve=xs(K|0,0,16)|0;fe=e+3|0;A=xs(s[fe>>0]|0|0,0,8)|0;te=I;ie=e+4|0;Z=xs(s[ie>>0]|0|0,0,16)|0;te=te|I;re=e+5|0;F=s[re>>0]|0;$=xs(F|0,0,24)|0;te=Cs(A|K|Z|$|0,te|I|0,5)|0;$=e+6|0;Z=e+7|0;K=r[Z>>0]|0;A=xs(s[$>>0]|0|0,0,8)|0;Te=I;K=K&255;J=xs(K|0,0,16)|0;Te=Cs(A|F|J|0,Te|I|0,2)|0;J=e+8|0;F=xs(s[J>>0]|0|0,0,8)|0;A=I;Q=e+9|0;Re=xs(s[Q>>0]|0|0,0,16)|0;A=A|I;V=e+10|0;Ve=s[V>>0]|0;H=xs(Ve|0,0,24)|0;A=Cs(F|K|Re|H|0,A|I|0,7)|0;H=e+11|0;Re=xs(s[H>>0]|0|0,0,8)|0;K=I;F=e+12|0;B=xs(s[F>>0]|0|0,0,16)|0;K=K|I;q=e+13|0;w=s[q>>0]|0;N=xs(w|0,0,24)|0;K=Cs(Re|Ve|B|N|0,K|I|0,4)|0;N=e+14|0;B=e+15|0;Ve=r[B>>0]|0;Re=xs(s[N>>0]|0|0,0,8)|0;_e=I;Ve=Ve&255;D=xs(Ve|0,0,16)|0;_e=Cs(Re|w|D|0,_e|I|0,1)|0;D=e+16|0;w=xs(s[D>>0]|0|0,0,8)|0;Re=I;C=e+17|0;S=xs(s[C>>0]|0|0,0,16)|0;Re=Re|I;O=e+18|0;E=s[O>>0]|0;T=xs(E|0,0,24)|0;Re=Cs(w|Ve|S|T|0,Re|I|0,6)|0;T=e+19|0;S=e+20|0;Ve=r[S>>0]|0;w=xs(s[T>>0]|0|0,0,8)|0;Qe=I;Ve=xs(Ve&255|0,0,16)|0;Qe=Cs(w|E|Ve|0,Qe|I|0,3)|0;Ve=I;E=e+21|0;w=e+22|0;b=e+23|0;n=r[b>>0]|0;et=s[E>>0]|0;tt=xs(s[w>>0]|0|0,0,8)|0;Ze=I;n=n&255;$e=xs(n|0,0,16)|0;y=e+24|0;Ue=xs(s[y>>0]|0|0,0,8)|0;Ge=I;p=e+25|0;f=xs(s[p>>0]|0|0,0,16)|0;Ge=Ge|I;h=e+26|0;pe=s[h>>0]|0;c=xs(pe|0,0,24)|0;Ge=Cs(Ue|n|f|c|0,Ge|I|0,5)|0;c=e+27|0;f=e+28|0;n=r[f>>0]|0;Ue=xs(s[c>>0]|0|0,0,8)|0;Je=I;n=n&255;a=xs(n|0,0,16)|0;Je=Cs(Ue|pe|a|0,Je|I|0,2)|0;a=e+29|0;pe=xs(s[a>>0]|0|0,0,8)|0;Ue=I;o=e+30|0;ot=xs(s[o>>0]|0|0,0,16)|0;Ue=Ue|I;t=e+31|0;ne=s[t>>0]|0;u=xs(ne|0,0,24)|0;Ue=Cs(pe|n|ot|u|0,Ue|I|0,7)|0;u=xs(s[e+32>>0]|0|0,0,8)|0;ot=I;n=xs(s[e+33>>0]|0|0,0,16)|0;ot=ot|I;pe=s[e+34>>0]|0;m=xs(pe|0,0,24)|0;ot=Cs(u|ne|n|m|0,ot|I|0,4)|0;m=r[e+36>>0]|0;n=xs(s[e+35>>0]|0|0,0,8)|0;ne=I;m=m&255;u=xs(m|0,0,16)|0;ne=Cs(n|pe|u|0,ne|I|0,1)|0;u=xs(s[e+37>>0]|0|0,0,8)|0;pe=I;n=xs(s[e+38>>0]|0|0,0,16)|0;pe=pe|I;qe=s[e+39>>0]|0;ee=xs(qe|0,0,24)|0;pe=Cs(u|m|n|ee|0,pe|I|0,6)|0;ee=r[e+41>>0]|0;n=xs(s[e+40>>0]|0|0,0,8)|0;m=I;ee=xs(ee&255|0,0,16)|0;m=Cs(n|qe|ee|0,m|I|0,3)|0;ee=I;qe=r[e+44>>0]|0;n=s[e+42>>0]|0;u=xs(s[e+43>>0]|0|0,0,8)|0;j=I;qe=qe&255;_=xs(qe|0,0,16)|0;k=xs(s[e+45>>0]|0|0,0,8)|0;oe=I;xe=xs(s[e+46>>0]|0|0,0,16)|0;oe=oe|I;st=s[e+47>>0]|0;U=xs(st|0,0,24)|0;oe=Cs(k|qe|xe|U|0,oe|I|0,5)|0;U=r[e+49>>0]|0;xe=xs(s[e+48>>0]|0|0,0,8)|0;qe=I;U=U&255;k=xs(U|0,0,16)|0;qe=Cs(xe|st|k|0,qe|I|0,2)|0;qe=qe&2097151;k=xs(s[e+50>>0]|0|0,0,8)|0;st=I;xe=xs(s[e+51>>0]|0|0,0,16)|0;st=st|I;ue=s[e+52>>0]|0;L=xs(ue|0,0,24)|0;st=Cs(k|U|xe|L|0,st|I|0,7)|0;st=st&2097151;L=xs(s[e+53>>0]|0|0,0,8)|0;xe=I;U=xs(s[e+54>>0]|0|0,0,16)|0;xe=xe|I;k=s[e+55>>0]|0;W=xs(k|0,0,24)|0;xe=Cs(L|ue|U|W|0,xe|I|0,4)|0;xe=xe&2097151;W=r[e+57>>0]|0;U=xs(s[e+56>>0]|0|0,0,8)|0;ue=I;W=W&255;L=xs(W|0,0,16)|0;ue=Cs(U|k|L|0,ue|I|0,1)|0;ue=ue&2097151;L=xs(s[e+58>>0]|0|0,0,8)|0;k=I;U=xs(s[e+59>>0]|0|0,0,16)|0;k=k|I;he=s[e+60>>0]|0;me=xs(he|0,0,24)|0;k=Cs(L|W|U|me|0,k|I|0,6)|0;k=k&2097151;me=xs(s[e+61>>0]|0|0,0,8)|0;U=I;W=xs(s[e+62>>0]|0|0,0,16)|0;U=U|I;L=xs(s[e+63>>0]|0|0,0,24)|0;U=Cs(me|he|W|L|0,U|I|0,3)|0;L=I;W=Es(U|0,L|0,666643,0)|0;he=I;me=Es(U|0,L|0,470296,0)|0;ae=I;v=Es(U|0,L|0,654183,0)|0;x=I;Ae=Es(U|0,L|0,-997805,-1)|0;Ie=I;d=Es(U|0,L|0,136657,0)|0;ke=I;L=Es(U|0,L|0,-683901,-1)|0;j=Ss(L|0,I|0,u|n|_&2031616|0,j|0)|0;_=I;n=Es(k|0,0,666643,0)|0;u=I;L=Es(k|0,0,470296,0)|0;U=I;Ye=Es(k|0,0,654183,0)|0;P=I;Y=Es(k|0,0,-997805,-1)|0;G=I;Se=Es(k|0,0,136657,0)|0;ge=I;k=Es(k|0,0,-683901,-1)|0;z=I;Oe=Es(ue|0,0,666643,0)|0;Ee=I;se=Es(ue|0,0,470296,0)|0;Le=I;Pe=Es(ue|0,0,654183,0)|0;Me=I;nt=Es(ue|0,0,-997805,-1)|0;We=I;l=Es(ue|0,0,136657,0)|0;g=I;ue=Es(ue|0,0,-683901,-1)|0;pe=Ss(ue|0,I|0,pe&2097151|0,0)|0;ge=Ss(pe|0,I|0,Se|0,ge|0)|0;Ie=Ss(ge|0,I|0,Ae|0,Ie|0)|0;Ae=I;ge=Es(xe|0,0,666643,0)|0;Se=I;pe=Es(xe|0,0,470296,0)|0;ue=I;ye=Es(xe|0,0,654183,0)|0;X=I;Be=Es(xe|0,0,-997805,-1)|0;De=I;it=Es(xe|0,0,136657,0)|0;rt=I;xe=Es(xe|0,0,-683901,-1)|0;Ce=I;i=Es(st|0,0,666643,0)|0;R=I;ze=Es(st|0,0,470296,0)|0;He=I;Ke=Es(st|0,0,654183,0)|0;Fe=I;Xe=Es(st|0,0,-997805,-1)|0;le=I;je=Es(st|0,0,136657,0)|0;Ne=I;st=Es(st|0,0,-683901,-1)|0;ot=Ss(st|0,I|0,ot&2097151|0,0)|0;rt=Ss(ot|0,I|0,it|0,rt|0)|0;We=Ss(rt|0,I|0,nt|0,We|0)|0;P=Ss(We|0,I|0,Ye|0,P|0)|0;ae=Ss(P|0,I|0,me|0,ae|0)|0;me=I;P=Es(qe|0,0,666643,0)|0;Re=Ss(P|0,I|0,Re&2097151|0,0)|0;P=I;Ye=Es(qe|0,0,470296,0)|0;We=I;nt=Es(qe|0,0,654183,0)|0;Ze=Ss(nt|0,I|0,tt|et|$e&2031616|0,Ze|0)|0;He=Ss(Ze|0,I|0,ze|0,He|0)|0;Se=Ss(He|0,I|0,ge|0,Se|0)|0;ge=I;He=Es(qe|0,0,-997805,-1)|0;ze=I;Ze=Es(qe|0,0,136657,0)|0;Je=Ss(Ze|0,I|0,Je&2097151|0,0)|0;le=Ss(Je|0,I|0,Xe|0,le|0)|0;X=Ss(le|0,I|0,ye|0,X|0)|0;Le=Ss(X|0,I|0,se|0,Le|0)|0;u=Ss(Le|0,I|0,n|0,u|0)|0;n=I;qe=Es(qe|0,0,-683901,-1)|0;Le=I;se=Ss(Re|0,P|0,1048576,0)|0;X=I;ye=Cs(se|0,X|0,21)|0;le=I;Ve=Ss(Ye|0,We|0,Qe|0,Ve|0)|0;le=Ss(Ve|0,I|0,ye|0,le|0)|0;R=Ss(le|0,I|0,i|0,R|0)|0;i=I;X=ks(Re|0,P|0,se&-2097152|0,X&2047|0)|0;se=I;P=Ss(Se|0,ge|0,1048576,0)|0;Re=I;le=Cs(P|0,Re|0,21)|0;ye=I;Ge=Ss(He|0,ze|0,Ge&2097151|0,0)|0;Fe=Ss(Ge|0,I|0,Ke|0,Fe|0)|0;ue=Ss(Fe|0,I|0,pe|0,ue|0)|0;Ee=Ss(ue|0,I|0,Oe|0,Ee|0)|0;ye=Ss(Ee|0,I|0,le|0,ye|0)|0;le=I;Ee=Ss(u|0,n|0,1048576,0)|0;Oe=I;ue=Os(Ee|0,Oe|0,21)|0;pe=I;Ue=Ss(qe|0,Le|0,Ue&2097151|0,0)|0;Ne=Ss(Ue|0,I|0,je|0,Ne|0)|0;De=Ss(Ne|0,I|0,Be|0,De|0)|0;Me=Ss(De|0,I|0,Pe|0,Me|0)|0;U=Ss(Me|0,I|0,L|0,U|0)|0;he=Ss(U|0,I|0,W|0,he|0)|0;pe=Ss(he|0,I|0,ue|0,pe|0)|0;ue=I;he=Ss(ae|0,me|0,1048576,0)|0;W=I;U=Os(he|0,W|0,21)|0;L=I;ne=Ss(xe|0,Ce|0,ne&2097151|0,0)|0;g=Ss(ne|0,I|0,l|0,g|0)|0;G=Ss(g|0,I|0,Y|0,G|0)|0;x=Ss(G|0,I|0,v|0,x|0)|0;L=Ss(x|0,I|0,U|0,L|0)|0;U=I;W=ks(ae|0,me|0,he&-2097152|0,W|0)|0;he=I;me=Ss(Ie|0,Ae|0,1048576,0)|0;ae=I;x=Os(me|0,ae|0,21)|0;v=I;ee=Ss(k|0,z|0,m|0,ee|0)|0;ke=Ss(ee|0,I|0,d|0,ke|0)|0;v=Ss(ke|0,I|0,x|0,v|0)|0;x=I;ae=ks(Ie|0,Ae|0,me&-2097152|0,ae|0)|0;me=I;Ae=Ss(j|0,_|0,1048576,0)|0;Ie=I;ke=Os(Ae|0,Ie|0,21)|0;oe=Ss(ke|0,I|0,oe&2097151|0,0)|0;ke=I;Ie=ks(j|0,_|0,Ae&-2097152|0,Ie|0)|0;Ae=I;_=Ss(R|0,i|0,1048576,0)|0;j=I;d=Cs(_|0,j|0,21)|0;ee=I;j=ks(R|0,i|0,_&-2097152|0,j|0)|0;_=I;i=Ss(ye|0,le|0,1048576,0)|0;R=I;m=Os(i|0,R|0,21)|0;z=I;R=ks(ye|0,le|0,i&-2097152|0,R|0)|0;i=I;le=Ss(pe|0,ue|0,1048576,0)|0;ye=I;k=Os(le|0,ye|0,21)|0;he=Ss(k|0,I|0,W|0,he|0)|0;W=I;ye=ks(pe|0,ue|0,le&-2097152|0,ye|0)|0;le=I;ue=Ss(L|0,U|0,1048576,0)|0;pe=I;k=Os(ue|0,pe|0,21)|0;me=Ss(k|0,I|0,ae|0,me|0)|0;ae=I;pe=ks(L|0,U|0,ue&-2097152|0,pe|0)|0;ue=I;U=Ss(v|0,x|0,1048576,0)|0;L=I;k=Os(U|0,L|0,21)|0;Ae=Ss(k|0,I|0,Ie|0,Ae|0)|0;Ie=I;L=ks(v|0,x|0,U&-2097152|0,L|0)|0;U=I;x=Es(oe|0,ke|0,666643,0)|0;_e=Ss(x|0,I|0,_e&2097151|0,0)|0;x=I;v=Es(oe|0,ke|0,470296,0)|0;v=Ss(X|0,se|0,v|0,I|0)|0;se=I;X=Es(oe|0,ke|0,654183,0)|0;X=Ss(j|0,_|0,X|0,I|0)|0;_=I;j=Es(oe|0,ke|0,-997805,-1)|0;k=I;G=Es(oe|0,ke|0,136657,0)|0;G=Ss(R|0,i|0,G|0,I|0)|0;i=I;ke=Es(oe|0,ke|0,-683901,-1)|0;oe=I;z=Ss(u|0,n|0,m|0,z|0)|0;Oe=ks(z|0,I|0,Ee&-2097152|0,Oe|0)|0;oe=Ss(Oe|0,I|0,ke|0,oe|0)|0;ke=I;Oe=Es(Ae|0,Ie|0,666643,0)|0;K=Ss(Oe|0,I|0,K&2097151|0,0)|0;Oe=I;Ee=Es(Ae|0,Ie|0,470296,0)|0;Ee=Ss(_e|0,x|0,Ee|0,I|0)|0;x=I;_e=Es(Ae|0,Ie|0,654183,0)|0;_e=Ss(v|0,se|0,_e|0,I|0)|0;se=I;v=Es(Ae|0,Ie|0,-997805,-1)|0;v=Ss(X|0,_|0,v|0,I|0)|0;_=I;X=Es(Ae|0,Ie|0,136657,0)|0;z=I;Ie=Es(Ae|0,Ie|0,-683901,-1)|0;Ie=Ss(G|0,i|0,Ie|0,I|0)|0;i=I;G=Es(L|0,U|0,666643,0)|0;A=Ss(G|0,I|0,A&2097151|0,0)|0;G=I;Ae=Es(L|0,U|0,470296,0)|0;Ae=Ss(K|0,Oe|0,Ae|0,I|0)|0;Oe=I;K=Es(L|0,U|0,654183,0)|0;K=Ss(Ee|0,x|0,K|0,I|0)|0;x=I;Ee=Es(L|0,U|0,-997805,-1)|0;Ee=Ss(_e|0,se|0,Ee|0,I|0)|0;se=I;_e=Es(L|0,U|0,136657,0)|0;_e=Ss(v|0,_|0,_e|0,I|0)|0;_=I;U=Es(L|0,U|0,-683901,-1)|0;L=I;ee=Ss(Se|0,ge|0,d|0,ee|0)|0;Re=ks(ee|0,I|0,P&-2097152|0,Re|0)|0;k=Ss(Re|0,I|0,j|0,k|0)|0;z=Ss(k|0,I|0,X|0,z|0)|0;L=Ss(z|0,I|0,U|0,L|0)|0;U=I;z=Es(me|0,ae|0,666643,0)|0;X=I;k=Es(me|0,ae|0,470296,0)|0;j=I;Re=Es(me|0,ae|0,654183,0)|0;P=I;ee=Es(me|0,ae|0,-997805,-1)|0;d=I;ge=Es(me|0,ae|0,136657,0)|0;ge=Ss(Ee|0,se|0,ge|0,I|0)|0;se=I;ae=Es(me|0,ae|0,-683901,-1)|0;ae=Ss(_e|0,_|0,ae|0,I|0)|0;_=I;_e=Es(pe|0,ue|0,666643,0)|0;me=I;Ee=Es(pe|0,ue|0,470296,0)|0;Se=I;v=Es(pe|0,ue|0,654183,0)|0;m=I;n=Es(pe|0,ue|0,-997805,-1)|0;u=I;R=Es(pe|0,ue|0,136657,0)|0;Y=I;ue=Es(pe|0,ue|0,-683901,-1)|0;ue=Ss(ge|0,se|0,ue|0,I|0)|0;se=I;ge=Es(he|0,W|0,666643,0)|0;be=Ss(ge|0,I|0,M|we|ve&2031616|0,be|0)|0;ve=I;we=Es(he|0,W|0,470296,0)|0;M=I;ge=Es(he|0,W|0,654183,0)|0;Te=Ss(ge|0,I|0,Te&2097151|0,0)|0;X=Ss(Te|0,I|0,z|0,X|0)|0;Se=Ss(X|0,I|0,Ee|0,Se|0)|0;Ee=I;X=Es(he|0,W|0,-997805,-1)|0;z=I;Te=Es(he|0,W|0,136657,0)|0;Te=Ss(Ae|0,Oe|0,Te|0,I|0)|0;P=Ss(Te|0,I|0,Re|0,P|0)|0;u=Ss(P|0,I|0,n|0,u|0)|0;n=I;W=Es(he|0,W|0,-683901,-1)|0;he=I;P=Ss(be|0,ve|0,1048576,0)|0;Re=I;Te=Os(P|0,Re|0,21)|0;Oe=I;te=Ss(we|0,M|0,te&2097151|0,0)|0;me=Ss(te|0,I|0,_e|0,me|0)|0;Oe=Ss(me|0,I|0,Te|0,Oe|0)|0;Te=I;Re=ks(be|0,ve|0,P&-2097152|0,Re|0)|0;P=I;ve=Ss(Se|0,Ee|0,1048576,0)|0;be=I;me=Os(ve|0,be|0,21)|0;_e=I;z=Ss(A|0,G|0,X|0,z|0)|0;j=Ss(z|0,I|0,k|0,j|0)|0;m=Ss(j|0,I|0,v|0,m|0)|0;_e=Ss(m|0,I|0,me|0,_e|0)|0;me=I;m=Ss(u|0,n|0,1048576,0)|0;v=I;j=Os(m|0,v|0,21)|0;k=I;he=Ss(K|0,x|0,W|0,he|0)|0;d=Ss(he|0,I|0,ee|0,d|0)|0;Y=Ss(d|0,I|0,R|0,Y|0)|0;k=Ss(Y|0,I|0,j|0,k|0)|0;j=I;Y=Ss(ue|0,se|0,1048576,0)|0;R=I;d=Os(Y|0,R|0,21)|0;d=Ss(ae|0,_|0,d|0,I|0)|0;_=I;R=ks(ue|0,se|0,Y&-2097152|0,R|0)|0;Y=I;se=Ss(L|0,U|0,1048576,0)|0;ue=I;ae=Os(se|0,ue|0,21)|0;ae=Ss(Ie|0,i|0,ae|0,I|0)|0;i=I;ue=ks(L|0,U|0,se&-2097152|0,ue|0)|0;se=I;U=Ss(oe|0,ke|0,1048576,0)|0;L=I;Ie=Os(U|0,L|0,21)|0;Ie=Ss(ye|0,le|0,Ie|0,I|0)|0;le=I;L=ks(oe|0,ke|0,U&-2097152|0,L|0)|0;U=I;ke=Ss(Oe|0,Te|0,1048576,0)|0;oe=I;ye=Os(ke|0,oe|0,21)|0;ee=I;he=Ss(_e|0,me|0,1048576,0)|0;W=I;x=Os(he|0,W|0,21)|0;K=I;z=Ss(k|0,j|0,1048576,0)|0;X=I;G=Os(z|0,X|0,21)|0;G=Ss(R|0,Y|0,G|0,I|0)|0;Y=I;R=Ss(d|0,_|0,1048576,0)|0;A=I;te=Os(R|0,A|0,21)|0;te=Ss(ue|0,se|0,te|0,I|0)|0;se=I;A=ks(d|0,_|0,R&-2097152|0,A|0)|0;R=I;_=Ss(ae|0,i|0,1048576,0)|0;d=I;ue=Os(_|0,d|0,21)|0;ue=Ss(L|0,U|0,ue|0,I|0)|0;U=I;d=ks(ae|0,i|0,_&-2097152|0,d|0)|0;_=I;i=Ss(Ie|0,le|0,1048576,0)|0;ae=I;L=Os(i|0,ae|0,21)|0;M=I;ae=ks(Ie|0,le|0,i&-2097152|0,ae|0)|0;i=I;le=Es(L|0,M|0,666643,0)|0;le=Ss(Re|0,P|0,le|0,I|0)|0;P=I;Re=Es(L|0,M|0,470296,0)|0;Ie=I;we=Es(L|0,M|0,654183,0)|0;Ae=I;ge=Es(L|0,M|0,-997805,-1)|0;pe=I;g=Es(L|0,M|0,136657,0)|0;l=I;M=Es(L|0,M|0,-683901,-1)|0;L=I;P=Os(le|0,P|0,21)|0;ne=I;Ie=Ss(Oe|0,Te|0,Re|0,Ie|0)|0;oe=ks(Ie|0,I|0,ke&-2097152|0,oe|0)|0;ne=Ss(oe|0,I|0,P|0,ne|0)|0;P=Os(ne|0,I|0,21)|0;oe=I;Ae=Ss(Se|0,Ee|0,we|0,Ae|0)|0;be=ks(Ae|0,I|0,ve&-2097152|0,be|0)|0;ee=Ss(be|0,I|0,ye|0,ee|0)|0;oe=Ss(ee|0,I|0,P|0,oe|0)|0;P=Os(oe|0,I|0,21)|0;ee=I;pe=Ss(_e|0,me|0,ge|0,pe|0)|0;W=ks(pe|0,I|0,he&-2097152|0,W|0)|0;ee=Ss(W|0,I|0,P|0,ee|0)|0;P=Os(ee|0,I|0,21)|0;W=I;l=Ss(u|0,n|0,g|0,l|0)|0;v=ks(l|0,I|0,m&-2097152|0,v|0)|0;K=Ss(v|0,I|0,x|0,K|0)|0;W=Ss(K|0,I|0,P|0,W|0)|0;P=Os(W|0,I|0,21)|0;K=I;L=Ss(k|0,j|0,M|0,L|0)|0;X=ks(L|0,I|0,z&-2097152|0,X|0)|0;K=Ss(X|0,I|0,P|0,K|0)|0;P=Os(K|0,I|0,21)|0;P=Ss(G|0,Y|0,P|0,I|0)|0;Y=Os(P|0,I|0,21)|0;R=Ss(Y|0,I|0,A|0,R|0)|0;A=Os(R|0,I|0,21)|0;A=Ss(te|0,se|0,A|0,I|0)|0;se=Os(A|0,I|0,21)|0;_=Ss(se|0,I|0,d|0,_|0)|0;d=Os(_|0,I|0,21)|0;d=Ss(ue|0,U|0,d|0,I|0)|0;U=Os(d|0,I|0,21)|0;i=Ss(U|0,I|0,ae|0,i|0)|0;ae=Os(i|0,I|0,21)|0;U=I;ue=Es(ae|0,U|0,666643,0)|0;le=Ss(ue|0,I|0,le&2097151|0,0)|0;ue=I;se=Es(ae|0,U|0,470296,0)|0;ne=Ss(se|0,I|0,ne&2097151|0,0)|0;se=I;te=Es(ae|0,U|0,654183,0)|0;oe=Ss(te|0,I|0,oe&2097151|0,0)|0;te=I;Y=Es(ae|0,U|0,-997805,-1)|0;ee=Ss(Y|0,I|0,ee&2097151|0,0)|0;Y=I;G=Es(ae|0,U|0,136657,0)|0;W=Ss(G|0,I|0,W&2097151|0,0)|0;G=I;U=Es(ae|0,U|0,-683901,-1)|0;K=Ss(U|0,I|0,K&2097151|0,0)|0;U=I;ae=Os(le|0,ue|0,21)|0;ae=Ss(ne|0,se|0,ae|0,I|0)|0;se=I;ne=Os(ae|0,se|0,21)|0;ne=Ss(oe|0,te|0,ne|0,I|0)|0;te=I;oe=ae&2097151;X=Os(ne|0,te|0,21)|0;X=Ss(ee|0,Y|0,X|0,I|0)|0;Y=I;ee=ne&2097151;z=Os(X|0,Y|0,21)|0;z=Ss(W|0,G|0,z|0,I|0)|0;G=I;W=X&2097151;L=Os(z|0,G|0,21)|0;L=Ss(K|0,U|0,L|0,I|0)|0;U=I;K=z&2097151;M=Os(L|0,U|0,21)|0;P=Ss(M|0,I|0,P&2097151|0,0)|0;M=I;j=L&2097151;k=Os(P|0,M|0,21)|0;R=Ss(k|0,I|0,R&2097151|0,0)|0;k=I;x=P&2097151;v=Os(R|0,k|0,21)|0;A=Ss(v|0,I|0,A&2097151|0,0)|0;v=I;m=Os(A|0,v|0,21)|0;_=Ss(m|0,I|0,_&2097151|0,0)|0;m=I;l=Os(_|0,m|0,21)|0;d=Ss(l|0,I|0,d&2097151|0,0)|0;l=I;g=_&2097151;n=Os(d|0,l|0,21)|0;i=Ss(n|0,I|0,i&2097151|0,0)|0;n=I;u=d&2097151;r[e>>0]=le;e=Cs(le|0,ue|0,8)|0;r[de>>0]=e;e=Cs(le|0,ue|0,16)|0;ue=xs(oe|0,0,5)|0;r[ce>>0]=ue|e&31;e=Cs(ae|0,se|0,3)|0;r[fe>>0]=e;e=Cs(ae|0,se|0,11)|0;r[ie>>0]=e;e=Cs(oe|0,0,19)|0;oe=I;ie=xs(ee|0,0,2)|0;r[re>>0]=ie|e;e=Cs(ne|0,te|0,6)|0;r[$>>0]=e;e=Cs(ee|0,0,14)|0;ee=I;$=xs(W|0,0,7)|0;r[Z>>0]=$|e;e=Cs(X|0,Y|0,1)|0;r[J>>0]=e;e=Cs(X|0,Y|0,9)|0;r[Q>>0]=e;e=Cs(W|0,0,17)|0;W=I;Q=xs(K|0,0,4)|0;r[V>>0]=Q|e;e=Cs(z|0,G|0,4)|0;r[H>>0]=e;e=Cs(z|0,G|0,12)|0;r[F>>0]=e;e=Cs(K|0,0,20)|0;K=I;F=xs(j|0,0,1)|0;r[q>>0]=F|e;e=Cs(L|0,U|0,7)|0;r[N>>0]=e;e=Cs(j|0,0,15)|0;j=I;N=xs(x|0,0,6)|0;r[B>>0]=N|e;e=Cs(P|0,M|0,2)|0;r[D>>0]=e;e=Cs(P|0,M|0,10)|0;r[C>>0]=e;e=Cs(x|0,0,18)|0;x=I;C=xs(R|0,k|0,3)|0;r[O>>0]=C|e;e=Cs(R|0,k|0,5)|0;r[T>>0]=e;e=Cs(R|0,k|0,13)|0;r[S>>0]=e;r[E>>0]=A;e=Cs(A|0,v|0,8)|0;r[w>>0]=e;e=Cs(A|0,v|0,16)|0;v=xs(g|0,0,5)|0;r[b>>0]=v|e&31;e=Cs(_|0,m|0,3)|0;r[y>>0]=e;e=Cs(_|0,m|0,11)|0;r[p>>0]=e;e=Cs(g|0,0,19)|0;g=I;p=xs(u|0,0,2)|0;r[h>>0]=p|e;e=Cs(d|0,l|0,6)|0;r[c>>0]=e;e=Cs(u|0,0,14)|0;u=I;c=xs(i|0,n|0,7)|0;r[f>>0]=c|e;e=Cs(i|0,n|0,1)|0;r[a>>0]=e;e=Cs(i|0,n|0,9)|0;r[o>>0]=e;e=Os(i|0,n|0,17)|0;r[t>>0]=e;return}function ti(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var o=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0,me=0,_e=0,ye=0,be=0,ve=0,Ae=0,we=0,Ee=0,Se=0,ke=0,Ie=0,Re=0,Te=0,Oe=0,Ce=0,xe=0,Me=0,Pe=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,qe=0,Fe=0,Ke=0,Ge=0,ze=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ft=0,ct=0,ut=0,lt=0,dt=0,ht=0,pt=0,gt=0,mt=0,_t=0,yt=0,bt=0,vt=0,At=0,wt=0,Et=0,St=0,kt=0,It=0,Rt=0,Tt=0,Ot=0,Ct=0,xt=0,Mt=0,Pt=0,Dt=0,Bt=0,Nt=0,jt=0,Ut=0,Lt=0,qt=0,Ft=0,Kt=0,Gt=0,zt=0,Ht=0,Vt=0,Qt=0,Wt=0,Yt=0,Xt=0,Jt=0,Zt=0,$t=0,en=0,tn=0,nn=0,rn=0,on=0,sn=0,an=0,fn=0,cn=0,un=0,ln=0,dn=0,hn=0,pn=0,gn=0,mn=0,_n=0,yn=0,bn=0,vn=0,An=0,wn=0;ot=r[t+2>>0]|0;pe=s[t>>0]|0;pt=xs(s[t+1>>0]|0|0,0,8)|0;Ue=I;ot=ot&255;Le=xs(ot|0,0,16)|0;Le=pt|pe|Le&2031616;pe=xs(s[t+3>>0]|0|0,0,8)|0;pt=I;$e=xs(s[t+4>>0]|0|0,0,16)|0;pt=pt|I;ht=s[t+5>>0]|0;L=xs(ht|0,0,24)|0;pt=Cs(pe|ot|$e|L|0,pt|I|0,5)|0;pt=pt&2097151;L=r[t+7>>0]|0;$e=xs(s[t+6>>0]|0|0,0,8)|0;ot=I;L=L&255;pe=xs(L|0,0,16)|0;ot=Cs($e|ht|pe|0,ot|I|0,2)|0;ot=ot&2097151;pe=xs(s[t+8>>0]|0|0,0,8)|0;ht=I;$e=xs(s[t+9>>0]|0|0,0,16)|0;ht=ht|I;z=s[t+10>>0]|0;B=xs(z|0,0,24)|0;ht=Cs(pe|L|$e|B|0,ht|I|0,7)|0;ht=ht&2097151;B=xs(s[t+11>>0]|0|0,0,8)|0;$e=I;L=xs(s[t+12>>0]|0|0,0,16)|0;$e=$e|I;pe=s[t+13>>0]|0;g=xs(pe|0,0,24)|0;$e=Cs(B|z|L|g|0,$e|I|0,4)|0;$e=$e&2097151;g=r[t+15>>0]|0;L=xs(s[t+14>>0]|0|0,0,8)|0;z=I;g=g&255;B=xs(g|0,0,16)|0;z=Cs(L|pe|B|0,z|I|0,1)|0;z=z&2097151;B=xs(s[t+16>>0]|0|0,0,8)|0;pe=I;L=xs(s[t+17>>0]|0|0,0,16)|0;pe=pe|I;N=s[t+18>>0]|0;l=xs(N|0,0,24)|0;pe=Cs(B|g|L|l|0,pe|I|0,6)|0;pe=pe&2097151;l=r[t+20>>0]|0;L=xs(s[t+19>>0]|0|0,0,8)|0;g=I;l=xs(l&255|0,0,16)|0;g=Cs(L|N|l|0,g|I|0,3)|0;l=I;N=r[t+23>>0]|0;L=s[t+21>>0]|0;B=xs(s[t+22>>0]|0|0,0,8)|0;G=I;N=N&255;C=xs(N|0,0,16)|0;C=B|L|C&2031616;L=xs(s[t+24>>0]|0|0,0,8)|0;B=I;Je=xs(s[t+25>>0]|0|0,0,16)|0;B=B|I;me=s[t+26>>0]|0;E=xs(me|0,0,24)|0;B=Cs(L|N|Je|E|0,B|I|0,5)|0;B=B&2097151;E=r[t+28>>0]|0;Je=xs(s[t+27>>0]|0|0,0,8)|0;N=I;E=E&255;L=xs(E|0,0,16)|0;N=Cs(Je|me|L|0,N|I|0,2)|0;N=N&2097151;L=xs(s[t+29>>0]|0|0,0,8)|0;me=I;Je=xs(s[t+30>>0]|0|0,0,16)|0;me=me|I;_e=xs(s[t+31>>0]|0|0,0,24)|0;me=Cs(L|E|Je|_e|0,me|I|0,7)|0;_e=I;Je=r[n+2>>0]|0;E=s[n>>0]|0;L=xs(s[n+1>>0]|0|0,0,8)|0;Et=I;Je=Je&255;wt=xs(Je|0,0,16)|0;wt=L|E|wt&2031616;E=xs(s[n+3>>0]|0|0,0,8)|0;L=I;u=xs(s[n+4>>0]|0|0,0,16)|0;L=L|I;y=s[n+5>>0]|0;yn=xs(y|0,0,24)|0;L=Cs(E|Je|u|yn|0,L|I|0,5)|0;L=L&2097151;yn=r[n+7>>0]|0;u=xs(s[n+6>>0]|0|0,0,8)|0;Je=I;yn=yn&255;E=xs(yn|0,0,16)|0;Je=Cs(u|y|E|0,Je|I|0,2)|0;Je=Je&2097151;E=xs(s[n+8>>0]|0|0,0,8)|0;y=I;u=xs(s[n+9>>0]|0|0,0,16)|0;y=y|I;d=s[n+10>>0]|0;w=xs(d|0,0,24)|0;y=Cs(E|yn|u|w|0,y|I|0,7)|0;y=y&2097151;w=xs(s[n+11>>0]|0|0,0,8)|0;u=I;yn=xs(s[n+12>>0]|0|0,0,16)|0;u=u|I;E=s[n+13>>0]|0;wn=xs(E|0,0,24)|0;u=Cs(w|d|yn|wn|0,u|I|0,4)|0;u=u&2097151;wn=r[n+15>>0]|0;yn=xs(s[n+14>>0]|0|0,0,8)|0;d=I;wn=wn&255;w=xs(wn|0,0,16)|0;d=Cs(yn|E|w|0,d|I|0,1)|0;d=d&2097151;w=xs(s[n+16>>0]|0|0,0,8)|0;E=I;yn=xs(s[n+17>>0]|0|0,0,16)|0;E=E|I;vt=s[n+18>>0]|0;Z=xs(vt|0,0,24)|0;E=Cs(w|wn|yn|Z|0,E|I|0,6)|0;E=E&2097151;Z=r[n+20>>0]|0;yn=xs(s[n+19>>0]|0|0,0,8)|0;wn=I;Z=xs(Z&255|0,0,16)|0;wn=Cs(yn|vt|Z|0,wn|I|0,3)|0;Z=I;vt=r[n+23>>0]|0;yn=s[n+21>>0]|0;w=xs(s[n+22>>0]|0|0,0,8)|0;Se=I;vt=vt&255;ke=xs(vt|0,0,16)|0;ke=w|yn|ke&2031616;yn=xs(s[n+24>>0]|0|0,0,8)|0;w=I;Pe=xs(s[n+25>>0]|0|0,0,16)|0;w=w|I;Q=s[n+26>>0]|0;bn=xs(Q|0,0,24)|0;w=Cs(yn|vt|Pe|bn|0,w|I|0,5)|0;w=w&2097151;bn=r[n+28>>0]|0;Pe=xs(s[n+27>>0]|0|0,0,8)|0;vt=I;bn=bn&255;yn=xs(bn|0,0,16)|0;vt=Cs(Pe|Q|yn|0,vt|I|0,2)|0;vt=vt&2097151;yn=xs(s[n+29>>0]|0|0,0,8)|0;Q=I;Pe=xs(s[n+30>>0]|0|0,0,16)|0;Q=Q|I;V=xs(s[n+31>>0]|0|0,0,24)|0;Q=Cs(yn|bn|Pe|V|0,Q|I|0,7)|0;V=I;Pe=r[i+2>>0]|0;bn=s[i>>0]|0;yn=xs(s[i+1>>0]|0|0,0,8)|0;Oe=I;Pe=Pe&255;vn=xs(Pe|0,0,16)|0;ze=xs(s[i+3>>0]|0|0,0,8)|0;be=I;Re=xs(s[i+4>>0]|0|0,0,16)|0;be=be|I;Ee=s[i+5>>0]|0;m=xs(Ee|0,0,24)|0;be=Cs(ze|Pe|Re|m|0,be|I|0,5)|0;m=r[i+7>>0]|0;Re=xs(s[i+6>>0]|0|0,0,8)|0;Pe=I;m=m&255;ze=xs(m|0,0,16)|0;Pe=Cs(Re|Ee|ze|0,Pe|I|0,2)|0;ze=xs(s[i+8>>0]|0|0,0,8)|0;Ee=I;Re=xs(s[i+9>>0]|0|0,0,16)|0;Ee=Ee|I;De=s[i+10>>0]|0;ve=xs(De|0,0,24)|0;Ee=Cs(ze|m|Re|ve|0,Ee|I|0,7)|0;ve=xs(s[i+11>>0]|0|0,0,8)|0;Re=I;m=xs(s[i+12>>0]|0|0,0,16)|0;Re=Re|I;ze=s[i+13>>0]|0;le=xs(ze|0,0,24)|0;Re=Cs(ve|De|m|le|0,Re|I|0,4)|0;le=r[i+15>>0]|0;m=xs(s[i+14>>0]|0|0,0,8)|0;De=I;le=le&255;ve=xs(le|0,0,16)|0;De=Cs(m|ze|ve|0,De|I|0,1)|0;ve=xs(s[i+16>>0]|0|0,0,8)|0;ze=I;m=xs(s[i+17>>0]|0|0,0,16)|0;ze=ze|I;te=s[i+18>>0]|0;ue=xs(te|0,0,24)|0;ze=Cs(ve|le|m|ue|0,ze|I|0,6)|0;ue=r[i+20>>0]|0;m=xs(s[i+19>>0]|0|0,0,8)|0;le=I;ue=xs(ue&255|0,0,16)|0;le=Cs(m|te|ue|0,le|I|0,3)|0;ue=I;te=r[i+23>>0]|0;m=s[i+21>>0]|0;ve=xs(s[i+22>>0]|0|0,0,8)|0;X=I;te=te&255;J=xs(te|0,0,16)|0;O=xs(s[i+24>>0]|0|0,0,8)|0;Ae=I;Te=xs(s[i+25>>0]|0|0,0,16)|0;Ae=Ae|I;rt=s[i+26>>0]|0;j=xs(rt|0,0,24)|0;Ae=Cs(O|te|Te|j|0,Ae|I|0,5)|0;j=r[i+28>>0]|0;Te=xs(s[i+27>>0]|0|0,0,8)|0;te=I;j=j&255;O=xs(j|0,0,16)|0;te=Cs(Te|rt|O|0,te|I|0,2)|0;O=xs(s[i+29>>0]|0|0,0,8)|0;rt=I;Te=xs(s[i+30>>0]|0|0,0,16)|0;rt=rt|I;ct=xs(s[i+31>>0]|0|0,0,24)|0;rt=Cs(O|j|Te|ct|0,rt|I|0,7)|0;ct=I;Te=Es(wt|0,Et|0,Le|0,Ue|0)|0;Te=Ss(yn|bn|vn&2031616|0,Oe|0,Te|0,I|0)|0;Oe=I;vn=Es(L|0,0,Le|0,Ue|0)|0;bn=I;yn=Es(wt|0,Et|0,pt|0,0)|0;j=I;O=Es(Je|0,0,Le|0,Ue|0)|0;Me=I;re=Es(L|0,0,pt|0,0)|0;hn=I;we=Es(wt|0,Et|0,ot|0,0)|0;we=Ss(re|0,hn|0,we|0,I|0)|0;Me=Ss(we|0,I|0,O|0,Me|0)|0;Pe=Ss(Me|0,I|0,Pe&2097151|0,0)|0;Me=I;O=Es(y|0,0,Le|0,Ue|0)|0;we=I;hn=Es(Je|0,0,pt|0,0)|0;re=I;_n=Es(L|0,0,ot|0,0)|0;mn=I;gn=Es(wt|0,Et|0,ht|0,0)|0;pn=I;H=Es(u|0,0,Le|0,Ue|0)|0;Ie=I;rn=Es(y|0,0,pt|0,0)|0;Be=I;sn=Es(Je|0,0,ot|0,0)|0;T=I;an=Es(L|0,0,ht|0,0)|0;fn=I;on=Es(wt|0,Et|0,$e|0,0)|0;on=Ss(an|0,fn|0,on|0,I|0)|0;T=Ss(on|0,I|0,sn|0,T|0)|0;Be=Ss(T|0,I|0,rn|0,Be|0)|0;Ie=Ss(Be|0,I|0,H|0,Ie|0)|0;Re=Ss(Ie|0,I|0,Re&2097151|0,0)|0;Ie=I;H=Es(d|0,0,Le|0,Ue|0)|0;Be=I;rn=Es(u|0,0,pt|0,0)|0;T=I;sn=Es(y|0,0,ot|0,0)|0;on=I;fn=Es(Je|0,0,ht|0,0)|0;an=I;dn=Es(L|0,0,$e|0,0)|0;ln=I;un=Es(wt|0,Et|0,z|0,0)|0;cn=I;R=Es(E|0,0,Le|0,Ue|0)|0;He=I;zt=Es(d|0,0,pt|0,0)|0;o=I;Vt=Es(u|0,0,ot|0,0)|0;Gt=I;Wt=Es(y|0,0,ht|0,0)|0;Ht=I;Xt=Es(Je|0,0,$e|0,0)|0;Qt=I;Jt=Es(L|0,0,z|0,0)|0;Zt=I;Yt=Es(wt|0,Et|0,pe|0,0)|0;Yt=Ss(Jt|0,Zt|0,Yt|0,I|0)|0;Qt=Ss(Yt|0,I|0,Xt|0,Qt|0)|0;Ht=Ss(Qt|0,I|0,Wt|0,Ht|0)|0;Gt=Ss(Ht|0,I|0,Vt|0,Gt|0)|0;o=Ss(Gt|0,I|0,zt|0,o|0)|0;He=Ss(o|0,I|0,R|0,He|0)|0;ze=Ss(He|0,I|0,ze&2097151|0,0)|0;He=I;R=Es(wn|0,Z|0,Le|0,Ue|0)|0;o=I;zt=Es(E|0,0,pt|0,0)|0;Gt=I;Vt=Es(d|0,0,ot|0,0)|0;Ht=I;Wt=Es(u|0,0,ht|0,0)|0;Qt=I;Xt=Es(y|0,0,$e|0,0)|0;Yt=I;Zt=Es(Je|0,0,z|0,0)|0;Jt=I;nn=Es(L|0,0,pe|0,0)|0;tn=I;en=Es(wt|0,Et|0,g|0,l|0)|0;$t=I;ee=Es(ke|0,Se|0,Le|0,Ue|0)|0;It=I;Rt=Es(wn|0,Z|0,pt|0,0)|0;Tt=I;Ot=Es(E|0,0,ot|0,0)|0;Ct=I;xt=Es(d|0,0,ht|0,0)|0;Mt=I;Pt=Es(u|0,0,$e|0,0)|0;Dt=I;Bt=Es(y|0,0,z|0,0)|0;Nt=I;jt=Es(Je|0,0,pe|0,0)|0;Ut=I;qt=Es(L|0,0,g|0,l|0)|0;Ft=I;Kt=Es(wt|0,Et|0,C|0,G|0)|0;Kt=Ss(qt|0,Ft|0,Kt|0,I|0)|0;Ut=Ss(Kt|0,I|0,jt|0,Ut|0)|0;Nt=Ss(Ut|0,I|0,Bt|0,Nt|0)|0;Dt=Ss(Nt|0,I|0,Pt|0,Dt|0)|0;Mt=Ss(Dt|0,I|0,xt|0,Mt|0)|0;Ct=Ss(Mt|0,I|0,Ot|0,Ct|0)|0;Tt=Ss(Ct|0,I|0,Rt|0,Tt|0)|0;It=Ss(Tt|0,I|0,ee|0,It|0)|0;X=Ss(It|0,I|0,ve|m|J&2031616|0,X|0)|0;J=I;m=Es(w|0,0,Le|0,Ue|0)|0;ve=I;It=Es(ke|0,Se|0,pt|0,0)|0;ee=I;Tt=Es(wn|0,Z|0,ot|0,0)|0;Rt=I;Ct=Es(E|0,0,ht|0,0)|0;Ot=I;Mt=Es(d|0,0,$e|0,0)|0;xt=I;Dt=Es(u|0,0,z|0,0)|0;Pt=I;Nt=Es(y|0,0,pe|0,0)|0;Bt=I;Ut=Es(Je|0,0,g|0,l|0)|0;jt=I;Kt=Es(L|0,0,C|0,G|0)|0;Ft=I;qt=Es(wt|0,Et|0,B|0,0)|0;Lt=I;et=Es(vt|0,0,Le|0,Ue|0)|0;ne=I;je=Es(w|0,0,pt|0,0)|0;tt=I;mt=Es(ke|0,Se|0,ot|0,0)|0;Ne=I;c=Es(wn|0,Z|0,ht|0,0)|0;_t=I;Ke=Es(E|0,0,$e|0,0)|0;v=I;st=Es(d|0,0,z|0,0)|0;Ge=I;i=Es(u|0,0,pe|0,0)|0;at=I;We=Es(y|0,0,g|0,l|0)|0;t=I;he=Es(Je|0,0,C|0,G|0)|0;Ye=I;St=Es(L|0,0,B|0,0)|0;kt=I;ye=Es(wt|0,Et|0,N|0,0)|0;ye=Ss(St|0,kt|0,ye|0,I|0)|0;Ye=Ss(ye|0,I|0,he|0,Ye|0)|0;t=Ss(Ye|0,I|0,We|0,t|0)|0;at=Ss(t|0,I|0,i|0,at|0)|0;Ge=Ss(at|0,I|0,st|0,Ge|0)|0;v=Ss(Ge|0,I|0,Ke|0,v|0)|0;_t=Ss(v|0,I|0,c|0,_t|0)|0;Ne=Ss(_t|0,I|0,mt|0,Ne|0)|0;tt=Ss(Ne|0,I|0,je|0,tt|0)|0;ne=Ss(tt|0,I|0,et|0,ne|0)|0;te=Ss(ne|0,I|0,te&2097151|0,0)|0;ne=I;Ue=Es(Q|0,V|0,Le|0,Ue|0)|0;Le=I;et=Es(vt|0,0,pt|0,0)|0;tt=I;je=Es(w|0,0,ot|0,0)|0;Ne=I;mt=Es(ke|0,Se|0,ht|0,0)|0;_t=I;c=Es(wn|0,Z|0,$e|0,0)|0;v=I;Ke=Es(E|0,0,z|0,0)|0;Ge=I;st=Es(d|0,0,pe|0,0)|0;at=I;i=Es(u|0,0,g|0,l|0)|0;t=I;We=Es(y|0,0,C|0,G|0)|0;Ye=I;he=Es(Je|0,0,B|0,0)|0;ye=I;kt=Es(L|0,0,N|0,0)|0;St=I;Et=Es(wt|0,Et|0,me|0,_e|0)|0;wt=I;pt=Es(Q|0,V|0,pt|0,0)|0;gt=I;M=Es(vt|0,0,ot|0,0)|0;it=I;ce=Es(w|0,0,ht|0,0)|0;n=I;yt=Es(ke|0,Se|0,$e|0,0)|0;qe=I;S=Es(wn|0,Z|0,z|0,0)|0;bt=I;ie=Es(E|0,0,pe|0,0)|0;q=I;Fe=Es(d|0,0,g|0,l|0)|0;oe=I;W=Es(u|0,0,C|0,G|0)|0;fe=I;U=Es(y|0,0,B|0,0)|0;Y=I;dt=Es(Je|0,0,N|0,0)|0;Xe=I;L=Es(L|0,0,me|0,_e|0)|0;L=Ss(dt|0,Xe|0,L|0,I|0)|0;Y=Ss(L|0,I|0,U|0,Y|0)|0;fe=Ss(Y|0,I|0,W|0,fe|0)|0;oe=Ss(fe|0,I|0,Fe|0,oe|0)|0;q=Ss(oe|0,I|0,ie|0,q|0)|0;bt=Ss(q|0,I|0,S|0,bt|0)|0;qe=Ss(bt|0,I|0,yt|0,qe|0)|0;n=Ss(qe|0,I|0,ce|0,n|0)|0;it=Ss(n|0,I|0,M|0,it|0)|0;gt=Ss(it|0,I|0,pt|0,gt|0)|0;pt=I;ot=Es(Q|0,V|0,ot|0,0)|0;it=I;M=Es(vt|0,0,ht|0,0)|0;n=I;ce=Es(w|0,0,$e|0,0)|0;qe=I;yt=Es(ke|0,Se|0,z|0,0)|0;bt=I;S=Es(wn|0,Z|0,pe|0,0)|0;q=I;ie=Es(E|0,0,g|0,l|0)|0;oe=I;Fe=Es(d|0,0,C|0,G|0)|0;fe=I;W=Es(u|0,0,B|0,0)|0;Y=I;U=Es(y|0,0,N|0,0)|0;L=I;Je=Es(Je|0,0,me|0,_e|0)|0;Xe=I;ht=Es(Q|0,V|0,ht|0,0)|0;dt=I;ut=Es(vt|0,0,$e|0,0)|0;Ze=I;K=Es(w|0,0,z|0,0)|0;lt=I;$=Es(ke|0,Se|0,pe|0,0)|0;F=I;ae=Es(wn|0,Z|0,g|0,l|0)|0;x=I;A=Es(E|0,0,C|0,G|0)|0;se=I;h=Es(d|0,0,B|0,0)|0;f=I;At=Es(u|0,0,N|0,0)|0;a=I;y=Es(y|0,0,me|0,_e|0)|0;y=Ss(At|0,a|0,y|0,I|0)|0;f=Ss(y|0,I|0,h|0,f|0)|0;se=Ss(f|0,I|0,A|0,se|0)|0;x=Ss(se|0,I|0,ae|0,x|0)|0;F=Ss(x|0,I|0,$|0,F|0)|0;lt=Ss(F|0,I|0,K|0,lt|0)|0;Ze=Ss(lt|0,I|0,ut|0,Ze|0)|0;dt=Ss(Ze|0,I|0,ht|0,dt|0)|0;ht=I;$e=Es(Q|0,V|0,$e|0,0)|0;Ze=I;ut=Es(vt|0,0,z|0,0)|0;lt=I;K=Es(w|0,0,pe|0,0)|0;F=I;$=Es(ke|0,Se|0,g|0,l|0)|0;x=I;ae=Es(wn|0,Z|0,C|0,G|0)|0;se=I;A=Es(E|0,0,B|0,0)|0;f=I;h=Es(d|0,0,N|0,0)|0;y=I;u=Es(u|0,0,me|0,_e|0)|0;a=I;z=Es(Q|0,V|0,z|0,0)|0;At=I;b=Es(vt|0,0,pe|0,0)|0;ge=I;P=Es(w|0,0,g|0,l|0)|0;p=I;Qe=Es(ke|0,Se|0,C|0,G|0)|0;D=I;_=Es(wn|0,Z|0,B|0,0)|0;Ve=I;xe=Es(E|0,0,N|0,0)|0;k=I;d=Es(d|0,0,me|0,_e|0)|0;d=Ss(xe|0,k|0,d|0,I|0)|0;Ve=Ss(d|0,I|0,_|0,Ve|0)|0;D=Ss(Ve|0,I|0,Qe|0,D|0)|0;p=Ss(D|0,I|0,P|0,p|0)|0;ge=Ss(p|0,I|0,b|0,ge|0)|0;At=Ss(ge|0,I|0,z|0,At|0)|0;z=I;pe=Es(Q|0,V|0,pe|0,0)|0;ge=I;b=Es(vt|0,0,g|0,l|0)|0;p=I;P=Es(w|0,0,C|0,G|0)|0;D=I;Qe=Es(ke|0,Se|0,B|0,0)|0;Ve=I;_=Es(wn|0,Z|0,N|0,0)|0;d=I;E=Es(E|0,0,me|0,_e|0)|0;k=I;l=Es(Q|0,V|0,g|0,l|0)|0;g=I;xe=Es(vt|0,0,C|0,G|0)|0;Ce=I;ft=Es(w|0,0,B|0,0)|0;nt=I;de=Es(ke|0,Se|0,N|0,0)|0;An=I;Z=Es(wn|0,Z|0,me|0,_e|0)|0;Z=Ss(de|0,An|0,Z|0,I|0)|0;nt=Ss(Z|0,I|0,ft|0,nt|0)|0;Ce=Ss(nt|0,I|0,xe|0,Ce|0)|0;g=Ss(Ce|0,I|0,l|0,g|0)|0;l=I;G=Es(Q|0,V|0,C|0,G|0)|0;C=I;Ce=Es(vt|0,0,B|0,0)|0;xe=I;nt=Es(w|0,0,N|0,0)|0;ft=I;Se=Es(ke|0,Se|0,me|0,_e|0)|0;ke=I;B=Es(Q|0,V|0,B|0,0)|0;Z=I;An=Es(vt|0,0,N|0,0)|0;de=I;w=Es(w|0,0,me|0,_e|0)|0;w=Ss(An|0,de|0,w|0,I|0)|0;Z=Ss(w|0,I|0,B|0,Z|0)|0;B=I;N=Es(Q|0,V|0,N|0,0)|0;w=I;vt=Es(vt|0,0,me|0,_e|0)|0;vt=Ss(N|0,w|0,vt|0,I|0)|0;w=I;_e=Es(Q|0,V|0,me|0,_e|0)|0;me=I;V=Ss(Te|0,Oe|0,1048576,0)|0;Q=I;N=Cs(V|0,Q|0,21)|0;de=I;j=Ss(vn|0,bn|0,yn|0,j|0)|0;de=Ss(j|0,I|0,N|0,de|0)|0;be=Ss(de|0,I|0,be&2097151|0,0)|0;de=I;Q=ks(Te|0,Oe|0,V&-2097152|0,Q&4095|0)|0;V=I;Oe=Ss(Pe|0,Me|0,1048576,0)|0;Te=I;N=Cs(Oe|0,Te|0,21)|0;j=I;pn=Ss(_n|0,mn|0,gn|0,pn|0)|0;re=Ss(pn|0,I|0,hn|0,re|0)|0;we=Ss(re|0,I|0,O|0,we|0)|0;Ee=Ss(we|0,I|0,Ee&2097151|0,0)|0;j=Ss(Ee|0,I|0,N|0,j|0)|0;N=I;Ee=Ss(Re|0,Ie|0,1048576,0)|0;we=I;O=Os(Ee|0,we|0,21)|0;re=I;cn=Ss(dn|0,ln|0,un|0,cn|0)|0;an=Ss(cn|0,I|0,fn|0,an|0)|0;on=Ss(an|0,I|0,sn|0,on|0)|0;T=Ss(on|0,I|0,rn|0,T|0)|0;Be=Ss(T|0,I|0,H|0,Be|0)|0;De=Ss(Be|0,I|0,De&2097151|0,0)|0;re=Ss(De|0,I|0,O|0,re|0)|0;O=I;De=Ss(ze|0,He|0,1048576,0)|0;Be=I;H=Os(De|0,Be|0,21)|0;T=I;$t=Ss(nn|0,tn|0,en|0,$t|0)|0;Jt=Ss($t|0,I|0,Zt|0,Jt|0)|0;Yt=Ss(Jt|0,I|0,Xt|0,Yt|0)|0;Qt=Ss(Yt|0,I|0,Wt|0,Qt|0)|0;Ht=Ss(Qt|0,I|0,Vt|0,Ht|0)|0;Gt=Ss(Ht|0,I|0,zt|0,Gt|0)|0;o=Ss(Gt|0,I|0,R|0,o|0)|0;ue=Ss(o|0,I|0,le|0,ue|0)|0;T=Ss(ue|0,I|0,H|0,T|0)|0;H=I;ue=Ss(X|0,J|0,1048576,0)|0;le=I;o=Os(ue|0,le|0,21)|0;R=I;Lt=Ss(Kt|0,Ft|0,qt|0,Lt|0)|0;jt=Ss(Lt|0,I|0,Ut|0,jt|0)|0;Bt=Ss(jt|0,I|0,Nt|0,Bt|0)|0;Pt=Ss(Bt|0,I|0,Dt|0,Pt|0)|0;xt=Ss(Pt|0,I|0,Mt|0,xt|0)|0;Ot=Ss(xt|0,I|0,Ct|0,Ot|0)|0;Rt=Ss(Ot|0,I|0,Tt|0,Rt|0)|0;ee=Ss(Rt|0,I|0,It|0,ee|0)|0;ve=Ss(ee|0,I|0,m|0,ve|0)|0;Ae=Ss(ve|0,I|0,Ae&2097151|0,0)|0;R=Ss(Ae|0,I|0,o|0,R|0)|0;o=I;Ae=Ss(te|0,ne|0,1048576,0)|0;ve=I;m=Os(Ae|0,ve|0,21)|0;ee=I;wt=Ss(kt|0,St|0,Et|0,wt|0)|0;ye=Ss(wt|0,I|0,he|0,ye|0)|0;Ye=Ss(ye|0,I|0,We|0,Ye|0)|0;t=Ss(Ye|0,I|0,i|0,t|0)|0;at=Ss(t|0,I|0,st|0,at|0)|0;Ge=Ss(at|0,I|0,Ke|0,Ge|0)|0;v=Ss(Ge|0,I|0,c|0,v|0)|0;_t=Ss(v|0,I|0,mt|0,_t|0)|0;Ne=Ss(_t|0,I|0,je|0,Ne|0)|0;tt=Ss(Ne|0,I|0,et|0,tt|0)|0;Le=Ss(tt|0,I|0,Ue|0,Le|0)|0;ct=Ss(Le|0,I|0,rt|0,ct|0)|0;ee=Ss(ct|0,I|0,m|0,ee|0)|0;m=I;ct=Ss(gt|0,pt|0,1048576,0)|0;rt=I;Le=Os(ct|0,rt|0,21)|0;Ue=I;Xe=Ss(U|0,L|0,Je|0,Xe|0)|0;Y=Ss(Xe|0,I|0,W|0,Y|0)|0;fe=Ss(Y|0,I|0,Fe|0,fe|0)|0;oe=Ss(fe|0,I|0,ie|0,oe|0)|0;q=Ss(oe|0,I|0,S|0,q|0)|0;bt=Ss(q|0,I|0,yt|0,bt|0)|0;qe=Ss(bt|0,I|0,ce|0,qe|0)|0;n=Ss(qe|0,I|0,M|0,n|0)|0;it=Ss(n|0,I|0,ot|0,it|0)|0;Ue=Ss(it|0,I|0,Le|0,Ue|0)|0;Le=I;it=Ss(dt|0,ht|0,1048576,0)|0;ot=I;n=Os(it|0,ot|0,21)|0;M=I;a=Ss(h|0,y|0,u|0,a|0)|0;f=Ss(a|0,I|0,A|0,f|0)|0;se=Ss(f|0,I|0,ae|0,se|0)|0;x=Ss(se|0,I|0,$|0,x|0)|0;F=Ss(x|0,I|0,K|0,F|0)|0;lt=Ss(F|0,I|0,ut|0,lt|0)|0;Ze=Ss(lt|0,I|0,$e|0,Ze|0)|0;M=Ss(Ze|0,I|0,n|0,M|0)|0;n=I;Ze=Ss(At|0,z|0,1048576,0)|0;$e=I;lt=Os(Ze|0,$e|0,21)|0;ut=I;k=Ss(_|0,d|0,E|0,k|0)|0;Ve=Ss(k|0,I|0,Qe|0,Ve|0)|0;D=Ss(Ve|0,I|0,P|0,D|0)|0;p=Ss(D|0,I|0,b|0,p|0)|0;ge=Ss(p|0,I|0,pe|0,ge|0)|0;ut=Ss(ge|0,I|0,lt|0,ut|0)|0;lt=I;ge=Ss(g|0,l|0,1048576,0)|0;pe=I;p=Os(ge|0,pe|0,21)|0;b=I;ke=Ss(nt|0,ft|0,Se|0,ke|0)|0;xe=Ss(ke|0,I|0,Ce|0,xe|0)|0;C=Ss(xe|0,I|0,G|0,C|0)|0;b=Ss(C|0,I|0,p|0,b|0)|0;p=I;pe=ks(g|0,l|0,ge&-2097152|0,pe|0)|0;ge=I;l=Ss(Z|0,B|0,1048576,0)|0;g=I;C=Cs(l|0,g|0,21)|0;C=Ss(vt|0,w|0,C|0,I|0)|0;w=I;g=ks(Z|0,B|0,l&-2097152|0,g&2147483647|0)|0;l=I;B=Ss(_e|0,me|0,1048576,0)|0;Z=I;vt=Cs(B|0,Z|0,21)|0;G=I;Z=ks(_e|0,me|0,B&-2097152|0,Z&2147483647|0)|0;B=I;me=Ss(be|0,de|0,1048576,0)|0;_e=I;xe=Cs(me|0,_e|0,21)|0;Ce=I;_e=ks(be|0,de|0,me&-2097152|0,_e|0)|0;me=I;de=Ss(j|0,N|0,1048576,0)|0;be=I;ke=Os(de|0,be|0,21)|0;Se=I;be=ks(j|0,N|0,de&-2097152|0,be|0)|0;de=I;N=Ss(re|0,O|0,1048576,0)|0;j=I;ft=Os(N|0,j|0,21)|0;nt=I;D=Ss(T|0,H|0,1048576,0)|0;P=I;Ve=Os(D|0,P|0,21)|0;Qe=I;k=Ss(R|0,o|0,1048576,0)|0;E=I;d=Os(k|0,E|0,21)|0;_=I;F=Ss(ee|0,m|0,1048576,0)|0;K=I;x=Os(F|0,K|0,21)|0;$=I;se=Ss(Ue|0,Le|0,1048576,0)|0;ae=I;f=Os(se|0,ae|0,21)|0;A=I;a=Ss(M|0,n|0,1048576,0)|0;u=I;y=Os(a|0,u|0,21)|0;h=I;qe=Ss(ut|0,lt|0,1048576,0)|0;ce=I;bt=Os(qe|0,ce|0,21)|0;ge=Ss(bt|0,I|0,pe|0,ge|0)|0;pe=I;ce=ks(ut|0,lt|0,qe&-2097152|0,ce|0)|0;qe=I;lt=Ss(b|0,p|0,1048576,0)|0;ut=I;bt=Os(lt|0,ut|0,21)|0;l=Ss(bt|0,I|0,g|0,l|0)|0;g=I;ut=ks(b|0,p|0,lt&-2097152|0,ut|0)|0;lt=I;p=Ss(C|0,w|0,1048576,0)|0;b=I;bt=Cs(p|0,b|0,21)|0;B=Ss(bt|0,I|0,Z|0,B|0)|0;Z=I;b=ks(C|0,w|0,p&-2097152|0,b&2147483647|0)|0;p=I;w=Es(vt|0,G|0,666643,0)|0;C=I;bt=Es(vt|0,G|0,470296,0)|0;yt=I;q=Es(vt|0,G|0,654183,0)|0;S=I;oe=Es(vt|0,G|0,-997805,-1)|0;ie=I;fe=Es(vt|0,G|0,136657,0)|0;Fe=I;G=Es(vt|0,G|0,-683901,-1)|0;G=Ss(At|0,z|0,G|0,I|0)|0;$e=ks(G|0,I|0,Ze&-2097152|0,$e|0)|0;h=Ss($e|0,I|0,y|0,h|0)|0;y=I;$e=Es(B|0,Z|0,666643,0)|0;Ze=I;G=Es(B|0,Z|0,470296,0)|0;z=I;At=Es(B|0,Z|0,654183,0)|0;vt=I;Y=Es(B|0,Z|0,-997805,-1)|0;W=I;Xe=Es(B|0,Z|0,136657,0)|0;Je=I;Z=Es(B|0,Z|0,-683901,-1)|0;B=I;L=Es(b|0,p|0,666643,0)|0;U=I;tt=Es(b|0,p|0,470296,0)|0;et=I;Ne=Es(b|0,p|0,654183,0)|0;je=I;_t=Es(b|0,p|0,-997805,-1)|0;mt=I;v=Es(b|0,p|0,136657,0)|0;c=I;p=Es(b|0,p|0,-683901,-1)|0;b=I;ie=Ss(dt|0,ht|0,oe|0,ie|0)|0;Je=Ss(ie|0,I|0,Xe|0,Je|0)|0;b=Ss(Je|0,I|0,p|0,b|0)|0;ot=ks(b|0,I|0,it&-2097152|0,ot|0)|0;A=Ss(ot|0,I|0,f|0,A|0)|0;f=I;ot=Es(l|0,g|0,666643,0)|0;it=I;b=Es(l|0,g|0,470296,0)|0;p=I;Je=Es(l|0,g|0,654183,0)|0;Xe=I;ie=Es(l|0,g|0,-997805,-1)|0;oe=I;ht=Es(l|0,g|0,136657,0)|0;dt=I;g=Es(l|0,g|0,-683901,-1)|0;l=I;Ge=Es(ut|0,lt|0,666643,0)|0;Ke=I;at=Es(ut|0,lt|0,470296,0)|0;st=I;t=Es(ut|0,lt|0,654183,0)|0;i=I;Ye=Es(ut|0,lt|0,-997805,-1)|0;We=I;ye=Es(ut|0,lt|0,136657,0)|0;he=I;lt=Es(ut|0,lt|0,-683901,-1)|0;ut=I;yt=Ss(At|0,vt|0,bt|0,yt|0)|0;mt=Ss(yt|0,I|0,_t|0,mt|0)|0;pt=Ss(mt|0,I|0,gt|0,pt|0)|0;dt=Ss(pt|0,I|0,ht|0,dt|0)|0;ut=Ss(dt|0,I|0,lt|0,ut|0)|0;rt=ks(ut|0,I|0,ct&-2097152|0,rt|0)|0;$=Ss(rt|0,I|0,x|0,$|0)|0;x=I;rt=Es(ge|0,pe|0,666643,0)|0;rt=Ss(ft|0,nt|0,rt|0,I|0)|0;He=Ss(rt|0,I|0,ze|0,He|0)|0;Be=ks(He|0,I|0,De&-2097152|0,Be|0)|0;De=I;He=Es(ge|0,pe|0,470296,0)|0;ze=I;rt=Es(ge|0,pe|0,654183,0)|0;nt=I;it=Ss(at|0,st|0,ot|0,it|0)|0;nt=Ss(it|0,I|0,rt|0,nt|0)|0;Qe=Ss(nt|0,I|0,Ve|0,Qe|0)|0;J=Ss(Qe|0,I|0,X|0,J|0)|0;le=ks(J|0,I|0,ue&-2097152|0,le|0)|0;ue=I;J=Es(ge|0,pe|0,-997805,-1)|0;X=I;Qe=Es(ge|0,pe|0,136657,0)|0;Ve=I;Ze=Ss(tt|0,et|0,$e|0,Ze|0)|0;Xe=Ss(Ze|0,I|0,Je|0,Xe|0)|0;We=Ss(Xe|0,I|0,Ye|0,We|0)|0;Ve=Ss(We|0,I|0,Qe|0,Ve|0)|0;_=Ss(Ve|0,I|0,d|0,_|0)|0;ne=Ss(_|0,I|0,te|0,ne|0)|0;ve=ks(ne|0,I|0,Ae&-2097152|0,ve|0)|0;Ae=I;pe=Es(ge|0,pe|0,-683901,-1)|0;ge=I;ne=Ss(Be|0,De|0,1048576,0)|0;te=I;_=Os(ne|0,te|0,21)|0;d=I;Ke=Ss(He|0,ze|0,Ge|0,Ke|0)|0;H=Ss(Ke|0,I|0,T|0,H|0)|0;P=ks(H|0,I|0,D&-2097152|0,P|0)|0;d=Ss(P|0,I|0,_|0,d|0)|0;_=I;P=Ss(le|0,ue|0,1048576,0)|0;D=I;H=Os(P|0,D|0,21)|0;T=I;U=Ss(b|0,p|0,L|0,U|0)|0;i=Ss(U|0,I|0,t|0,i|0)|0;X=Ss(i|0,I|0,J|0,X|0)|0;o=Ss(X|0,I|0,R|0,o|0)|0;E=ks(o|0,I|0,k&-2097152|0,E|0)|0;T=Ss(E|0,I|0,H|0,T|0)|0;H=I;E=Ss(ve|0,Ae|0,1048576,0)|0;k=I;o=Os(E|0,k|0,21)|0;R=I;C=Ss(G|0,z|0,w|0,C|0)|0;je=Ss(C|0,I|0,Ne|0,je|0)|0;oe=Ss(je|0,I|0,ie|0,oe|0)|0;he=Ss(oe|0,I|0,ye|0,he|0)|0;ge=Ss(he|0,I|0,pe|0,ge|0)|0;m=Ss(ge|0,I|0,ee|0,m|0)|0;K=ks(m|0,I|0,F&-2097152|0,K|0)|0;R=Ss(K|0,I|0,o|0,R|0)|0;o=I;K=Ss($|0,x|0,1048576,0)|0;F=I;m=Os(K|0,F|0,21)|0;ee=I;S=Ss(Y|0,W|0,q|0,S|0)|0;c=Ss(S|0,I|0,v|0,c|0)|0;l=Ss(c|0,I|0,g|0,l|0)|0;Le=Ss(l|0,I|0,Ue|0,Le|0)|0;ae=ks(Le|0,I|0,se&-2097152|0,ae|0)|0;ee=Ss(ae|0,I|0,m|0,ee|0)|0;m=I;F=ks($|0,x|0,K&-2097152|0,F|0)|0;K=I;x=Ss(A|0,f|0,1048576,0)|0;$=I;ae=Os(x|0,$|0,21)|0;se=I;Fe=Ss(Z|0,B|0,fe|0,Fe|0)|0;n=Ss(Fe|0,I|0,M|0,n|0)|0;u=ks(n|0,I|0,a&-2097152|0,u|0)|0;se=Ss(u|0,I|0,ae|0,se|0)|0;ae=I;$=ks(A|0,f|0,x&-2097152|0,$|0)|0;x=I;f=Ss(h|0,y|0,1048576,0)|0;A=I;u=Os(f|0,A|0,21)|0;qe=Ss(u|0,I|0,ce|0,qe|0)|0;ce=I;A=ks(h|0,y|0,f&-2097152|0,A|0)|0;f=I;y=Ss(d|0,_|0,1048576,0)|0;h=I;u=Os(y|0,h|0,21)|0;a=I;n=Ss(T|0,H|0,1048576,0)|0;M=I;Fe=Os(n|0,M|0,21)|0;fe=I;B=Ss(R|0,o|0,1048576,0)|0;Z=I;Le=Os(B|0,Z|0,21)|0;K=Ss(Le|0,I|0,F|0,K|0)|0;F=I;Z=ks(R|0,o|0,B&-2097152|0,Z|0)|0;B=I;o=Ss(ee|0,m|0,1048576,0)|0;R=I;Le=Os(o|0,R|0,21)|0;x=Ss(Le|0,I|0,$|0,x|0)|0;$=I;R=ks(ee|0,m|0,o&-2097152|0,R|0)|0;o=I;m=Ss(se|0,ae|0,1048576,0)|0;ee=I;Le=Os(m|0,ee|0,21)|0;f=Ss(Le|0,I|0,A|0,f|0)|0;A=I;ee=ks(se|0,ae|0,m&-2097152|0,ee|0)|0;m=I;ae=Es(qe|0,ce|0,666643,0)|0;se=I;Le=Es(qe|0,ce|0,470296,0)|0;Ue=I;l=Es(qe|0,ce|0,654183,0)|0;g=I;c=Es(qe|0,ce|0,-997805,-1)|0;v=I;S=Es(qe|0,ce|0,136657,0)|0;q=I;ce=Es(qe|0,ce|0,-683901,-1)|0;ce=Ss(Fe|0,fe|0,ce|0,I|0)|0;Ae=Ss(ce|0,I|0,ve|0,Ae|0)|0;k=ks(Ae|0,I|0,E&-2097152|0,k|0)|0;E=I;Ae=Es(f|0,A|0,666643,0)|0;ve=I;ce=Es(f|0,A|0,470296,0)|0;fe=I;Fe=Es(f|0,A|0,654183,0)|0;qe=I;W=Es(f|0,A|0,-997805,-1)|0;Y=I;ge=Es(f|0,A|0,136657,0)|0;pe=I;A=Es(f|0,A|0,-683901,-1)|0;f=I;he=Es(ee|0,m|0,666643,0)|0;he=Ss(be|0,de|0,he|0,I|0)|0;de=I;be=Es(ee|0,m|0,470296,0)|0;ye=I;oe=Es(ee|0,m|0,654183,0)|0;ie=I;je=Es(ee|0,m|0,-997805,-1)|0;Ne=I;C=Es(ee|0,m|0,136657,0)|0;w=I;m=Es(ee|0,m|0,-683901,-1)|0;ee=I;v=Ss(ge|0,pe|0,c|0,v|0)|0;ee=Ss(v|0,I|0,m|0,ee|0)|0;a=Ss(ee|0,I|0,u|0,a|0)|0;ue=Ss(a|0,I|0,le|0,ue|0)|0;D=ks(ue|0,I|0,P&-2097152|0,D|0)|0;P=I;ue=Es(x|0,$|0,666643,0)|0;le=I;a=Es(x|0,$|0,470296,0)|0;u=I;ee=Es(x|0,$|0,654183,0)|0;m=I;v=Es(x|0,$|0,-997805,-1)|0;c=I;pe=Es(x|0,$|0,136657,0)|0;ge=I;$=Es(x|0,$|0,-683901,-1)|0;x=I;z=Es(R|0,o|0,666643,0)|0;G=I;X=Es(R|0,o|0,470296,0)|0;J=I;i=Es(R|0,o|0,654183,0)|0;t=I;U=Es(R|0,o|0,-997805,-1)|0;L=I;p=Es(R|0,o|0,136657,0)|0;b=I;o=Es(R|0,o|0,-683901,-1)|0;R=I;Ue=Ss(Fe|0,qe|0,Le|0,Ue|0)|0;Ne=Ss(Ue|0,I|0,je|0,Ne|0)|0;De=Ss(Ne|0,I|0,Be|0,De|0)|0;te=ks(De|0,I|0,ne&-2097152|0,te|0)|0;ge=Ss(te|0,I|0,pe|0,ge|0)|0;R=Ss(ge|0,I|0,o|0,R|0)|0;o=I;ge=Es(K|0,F|0,666643,0)|0;V=Ss(ge|0,I|0,Q|0,V|0)|0;Q=I;ge=Es(K|0,F|0,470296,0)|0;pe=I;te=Es(K|0,F|0,654183,0)|0;ne=I;Ce=Ss(Pe|0,Me|0,xe|0,Ce|0)|0;Te=ks(Ce|0,I|0,Oe&-2097152|0,Te|0)|0;ne=Ss(Te|0,I|0,te|0,ne|0)|0;le=Ss(ne|0,I|0,ue|0,le|0)|0;J=Ss(le|0,I|0,X|0,J|0)|0;X=I;le=Es(K|0,F|0,-997805,-1)|0;ue=I;ne=Es(K|0,F|0,136657,0)|0;te=I;Se=Ss(Re|0,Ie|0,ke|0,Se|0)|0;we=ks(Se|0,I|0,Ee&-2097152|0,we|0)|0;ve=Ss(we|0,I|0,Ae|0,ve|0)|0;ye=Ss(ve|0,I|0,be|0,ye|0)|0;te=Ss(ye|0,I|0,ne|0,te|0)|0;m=Ss(te|0,I|0,ee|0,m|0)|0;L=Ss(m|0,I|0,U|0,L|0)|0;U=I;F=Es(K|0,F|0,-683901,-1)|0;K=I;m=Ss(V|0,Q|0,1048576,0)|0;ee=I;te=Os(m|0,ee|0,21)|0;ne=I;pe=Ss(_e|0,me|0,ge|0,pe|0)|0;G=Ss(pe|0,I|0,z|0,G|0)|0;ne=Ss(G|0,I|0,te|0,ne|0)|0;te=I;ee=ks(V|0,Q|0,m&-2097152|0,ee|0)|0;m=I;Q=Ss(J|0,X|0,1048576,0)|0;V=I;G=Os(Q|0,V|0,21)|0;z=I;ue=Ss(he|0,de|0,le|0,ue|0)|0;u=Ss(ue|0,I|0,a|0,u|0)|0;t=Ss(u|0,I|0,i|0,t|0)|0;z=Ss(t|0,I|0,G|0,z|0)|0;G=I;t=Ss(L|0,U|0,1048576,0)|0;i=I;u=Os(t|0,i|0,21)|0;a=I;se=Ss(ce|0,fe|0,ae|0,se|0)|0;ie=Ss(se|0,I|0,oe|0,ie|0)|0;O=Ss(ie|0,I|0,re|0,O|0)|0;j=ks(O|0,I|0,N&-2097152|0,j|0)|0;K=Ss(j|0,I|0,F|0,K|0)|0;c=Ss(K|0,I|0,v|0,c|0)|0;b=Ss(c|0,I|0,p|0,b|0)|0;a=Ss(b|0,I|0,u|0,a|0)|0;u=I;b=Ss(R|0,o|0,1048576,0)|0;p=I;c=Os(b|0,p|0,21)|0;v=I;g=Ss(W|0,Y|0,l|0,g|0)|0;w=Ss(g|0,I|0,C|0,w|0)|0;_=Ss(w|0,I|0,d|0,_|0)|0;h=ks(_|0,I|0,y&-2097152|0,h|0)|0;x=Ss(h|0,I|0,$|0,x|0)|0;v=Ss(x|0,I|0,c|0,v|0)|0;c=I;p=ks(R|0,o|0,b&-2097152|0,p|0)|0;b=I;o=Ss(D|0,P|0,1048576,0)|0;R=I;x=Os(o|0,R|0,21)|0;$=I;q=Ss(A|0,f|0,S|0,q|0)|0;H=Ss(q|0,I|0,T|0,H|0)|0;$=Ss(H|0,I|0,x|0,$|0)|0;M=ks($|0,I|0,n&-2097152|0,M|0)|0;n=I;R=ks(D|0,P|0,o&-2097152|0,R|0)|0;o=I;P=Ss(k|0,E|0,1048576,0)|0;D=I;$=Os(P|0,D|0,21)|0;$=Ss(Z|0,B|0,$|0,I|0)|0;B=I;Z=Ss(ne|0,te|0,1048576,0)|0;x=I;H=Os(Z|0,x|0,21)|0;T=I;q=Ss(z|0,G|0,1048576,0)|0;S=I;f=Os(q|0,S|0,21)|0;A=I;h=Ss(a|0,u|0,1048576,0)|0;y=I;_=Os(h|0,y|0,21)|0;_=Ss(p|0,b|0,_|0,I|0)|0;b=I;p=Ss(v|0,c|0,1048576,0)|0;d=I;w=Os(p|0,d|0,21)|0;w=Ss(R|0,o|0,w|0,I|0)|0;o=I;d=ks(v|0,c|0,p&-2097152|0,d|0)|0;p=I;c=Ss(M|0,n|0,1048576,0)|0;v=I;R=Os(c|0,v|0,21)|0;C=I;v=ks(M|0,n|0,c&-2097152|0,v|0)|0;c=I;n=Ss($|0,B|0,1048576,0)|0;M=I;g=Os(n|0,M|0,21)|0;l=I;M=ks($|0,B|0,n&-2097152|0,M|0)|0;n=I;B=Es(g|0,l|0,666643,0)|0;B=Ss(ee|0,m|0,B|0,I|0)|0;m=I;ee=Es(g|0,l|0,470296,0)|0;$=I;Y=Es(g|0,l|0,654183,0)|0;W=I;K=Es(g|0,l|0,-997805,-1)|0;F=I;j=Es(g|0,l|0,136657,0)|0;N=I;l=Es(g|0,l|0,-683901,-1)|0;g=I;m=Os(B|0,m|0,21)|0;O=I;$=Ss(ne|0,te|0,ee|0,$|0)|0;x=ks($|0,I|0,Z&-2097152|0,x|0)|0;O=Ss(x|0,I|0,m|0,O|0)|0;m=Os(O|0,I|0,21)|0;x=I;W=Ss(J|0,X|0,Y|0,W|0)|0;V=ks(W|0,I|0,Q&-2097152|0,V|0)|0;T=Ss(V|0,I|0,H|0,T|0)|0;x=Ss(T|0,I|0,m|0,x|0)|0;m=Os(x|0,I|0,21)|0;T=I;F=Ss(z|0,G|0,K|0,F|0)|0;S=ks(F|0,I|0,q&-2097152|0,S|0)|0;T=Ss(S|0,I|0,m|0,T|0)|0;m=Os(T|0,I|0,21)|0;S=I;N=Ss(L|0,U|0,j|0,N|0)|0;i=ks(N|0,I|0,t&-2097152|0,i|0)|0;A=Ss(i|0,I|0,f|0,A|0)|0;S=Ss(A|0,I|0,m|0,S|0)|0;m=Os(S|0,I|0,21)|0;A=I;g=Ss(a|0,u|0,l|0,g|0)|0;y=ks(g|0,I|0,h&-2097152|0,y|0)|0;A=Ss(y|0,I|0,m|0,A|0)|0;m=Os(A|0,I|0,21)|0;m=Ss(_|0,b|0,m|0,I|0)|0;b=Os(m|0,I|0,21)|0;p=Ss(b|0,I|0,d|0,p|0)|0;d=Os(p|0,I|0,21)|0;d=Ss(w|0,o|0,d|0,I|0)|0;o=Os(d|0,I|0,21)|0;c=Ss(o|0,I|0,v|0,c|0)|0;v=Os(c|0,I|0,21)|0;o=I;C=Ss(k|0,E|0,R|0,C|0)|0;D=ks(C|0,I|0,P&-2097152|0,D|0)|0;o=Ss(D|0,I|0,v|0,o|0)|0;v=Os(o|0,I|0,21)|0;n=Ss(v|0,I|0,M|0,n|0)|0;M=Os(n|0,I|0,21)|0;v=I;D=Es(M|0,v|0,666643,0)|0;B=Ss(D|0,I|0,B&2097151|0,0)|0;D=I;P=Es(M|0,v|0,470296,0)|0;O=Ss(P|0,I|0,O&2097151|0,0)|0;P=I;C=Es(M|0,v|0,654183,0)|0;x=Ss(C|0,I|0,x&2097151|0,0)|0;C=I;R=Es(M|0,v|0,-997805,-1)|0;T=Ss(R|0,I|0,T&2097151|0,0)|0;R=I;E=Es(M|0,v|0,136657,0)|0;S=Ss(E|0,I|0,S&2097151|0,0)|0;E=I;v=Es(M|0,v|0,-683901,-1)|0;A=Ss(v|0,I|0,A&2097151|0,0)|0;v=I;M=Os(B|0,D|0,21)|0;M=Ss(O|0,P|0,M|0,I|0)|0;P=I;O=Os(M|0,P|0,21)|0;O=Ss(x|0,C|0,O|0,I|0)|0;C=I;x=M&2097151;k=Os(O|0,C|0,21)|0;k=Ss(T|0,R|0,k|0,I|0)|0;R=I;T=O&2097151;w=Os(k|0,R|0,21)|0;w=Ss(S|0,E|0,w|0,I|0)|0;E=I;S=k&2097151;b=Os(w|0,E|0,21)|0;b=Ss(A|0,v|0,b|0,I|0)|0;v=I;A=w&2097151;_=Os(b|0,v|0,21)|0;m=Ss(_|0,I|0,m&2097151|0,0)|0;_=I;y=b&2097151;h=Os(m|0,_|0,21)|0;p=Ss(h|0,I|0,p&2097151|0,0)|0;h=I;g=m&2097151;l=Os(p|0,h|0,21)|0;d=Ss(l|0,I|0,d&2097151|0,0)|0;l=I;u=Os(d|0,l|0,21)|0;c=Ss(u|0,I|0,c&2097151|0,0)|0;u=I;a=Os(c|0,u|0,21)|0;o=Ss(a|0,I|0,o&2097151|0,0)|0;a=I;f=c&2097151;i=Os(o|0,a|0,21)|0;n=Ss(i|0,I|0,n&2097151|0,0)|0;i=I;t=o&2097151;r[e>>0]=B;N=Cs(B|0,D|0,8)|0;r[e+1>>0]=N;D=Cs(B|0,D|0,16)|0;B=xs(x|0,0,5)|0;r[e+2>>0]=B|D&31;D=Cs(M|0,P|0,3)|0;r[e+3>>0]=D;P=Cs(M|0,P|0,11)|0;r[e+4>>0]=P;x=Cs(x|0,0,19)|0;P=I;M=xs(T|0,0,2)|0;r[e+5>>0]=M|x;C=Cs(O|0,C|0,6)|0;r[e+6>>0]=C;T=Cs(T|0,0,14)|0;C=I;O=xs(S|0,0,7)|0;r[e+7>>0]=O|T;T=Cs(k|0,R|0,1)|0;r[e+8>>0]=T;R=Cs(k|0,R|0,9)|0;r[e+9>>0]=R;S=Cs(S|0,0,17)|0;R=I;k=xs(A|0,0,4)|0;r[e+10>>0]=k|S;S=Cs(w|0,E|0,4)|0;r[e+11>>0]=S;E=Cs(w|0,E|0,12)|0;r[e+12>>0]=E;A=Cs(A|0,0,20)|0;E=I;w=xs(y|0,0,1)|0;r[e+13>>0]=w|A;v=Cs(b|0,v|0,7)|0;r[e+14>>0]=v;y=Cs(y|0,0,15)|0;v=I;b=xs(g|0,0,6)|0;r[e+15>>0]=b|y;y=Cs(m|0,_|0,2)|0;r[e+16>>0]=y;_=Cs(m|0,_|0,10)|0;r[e+17>>0]=_;g=Cs(g|0,0,18)|0;_=I;m=xs(p|0,h|0,3)|0;r[e+18>>0]=m|g;g=Cs(p|0,h|0,5)|0;r[e+19>>0]=g;h=Cs(p|0,h|0,13)|0;r[e+20>>0]=h;r[e+21>>0]=d;h=Cs(d|0,l|0,8)|0;r[e+22>>0]=h;l=Cs(d|0,l|0,16)|0;d=xs(f|0,0,5)|0;r[e+23>>0]=d|l&31;l=Cs(c|0,u|0,3)|0;r[e+24>>0]=l;u=Cs(c|0,u|0,11)|0;r[e+25>>0]=u;f=Cs(f|0,0,19)|0;u=I;c=xs(t|0,0,2)|0;r[e+26>>0]=c|f;a=Cs(o|0,a|0,6)|0;r[e+27>>0]=a;t=Cs(t|0,0,14)|0;a=I;o=xs(n|0,i|0,7)|0;r[e+28>>0]=o|t;t=Cs(n|0,i|0,1)|0;r[e+29>>0]=t;t=Cs(n|0,i|0,9)|0;r[e+30>>0]=t;i=Os(n|0,i|0,17)|0;r[e+31>>0]=i;return}function ni(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;u=t+44|0;h=t+48|0;m=t+52|0;b=t+56|0;w=t+60|0;k=t+64|0;T=t+68|0;x=t+72|0;O=t+76|0;z=t+4|0;K=t+8|0;i=t+12|0;d=t+16|0;p=t+20|0;A=t+24|0;E=t+28|0;C=t+32|0;F=t+36|0;se=(o[z>>2]|0)+(o[u>>2]|0)|0;oe=(o[K>>2]|0)+(o[h>>2]|0)|0;ie=(o[i>>2]|0)+(o[m>>2]|0)|0;re=(o[d>>2]|0)+(o[b>>2]|0)|0;ne=(o[p>>2]|0)+(o[w>>2]|0)|0;te=(o[A>>2]|0)+(o[k>>2]|0)|0;ee=(o[E>>2]|0)+(o[T>>2]|0)|0;$=(o[C>>2]|0)+(o[x>>2]|0)|0;X=(o[F>>2]|0)+(o[O>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;z=(o[u>>2]|0)-(o[z>>2]|0)|0;K=(o[h>>2]|0)-(o[K>>2]|0)|0;i=(o[m>>2]|0)-(o[i>>2]|0)|0;d=(o[b>>2]|0)-(o[d>>2]|0)|0;p=(o[w>>2]|0)-(o[p>>2]|0)|0;A=(o[k>>2]|0)-(o[A>>2]|0)|0;E=(o[T>>2]|0)-(o[E>>2]|0)|0;C=(o[x>>2]|0)-(o[C>>2]|0)|0;F=(o[O>>2]|0)-(o[F>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=z;z=e+48|0;o[z>>2]=K;K=e+52|0;o[K>>2]=i;i=e+56|0;o[i>>2]=d;d=e+60|0;o[d>>2]=p;p=e+64|0;o[p>>2]=A;A=e+68|0;o[A>>2]=E;E=e+72|0;o[E>>2]=C;C=e+76|0;o[C>>2]=F;F=e+80|0;Xr(F,e,n);Xr(X,X,n+40|0);O=e+120|0;Xr(O,n+120|0,t+120|0);Xr(e,t+80|0,n+80|0);x=o[e>>2]<<1;T=o[ae>>2]<<1;k=o[se>>2]<<1;w=o[oe>>2]<<1;b=o[ie>>2]<<1;m=o[re>>2]<<1;h=o[ne>>2]<<1;u=o[te>>2]<<1;a=o[ee>>2]<<1;r=o[$>>2]<<1;J=o[F>>2]|0;q=e+84|0;W=o[q>>2]|0;L=e+88|0;H=o[L>>2]|0;U=e+92|0;t=o[U>>2]|0;j=e+96|0;s=o[j>>2]|0;N=e+100|0;f=o[N>>2]|0;B=e+104|0;g=o[B>>2]|0;D=e+108|0;_=o[D>>2]|0;P=e+112|0;S=o[P>>2]|0;M=e+116|0;I=o[M>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[z>>2]|0;G=o[K>>2]|0;n=o[i>>2]|0;c=o[d>>2]|0;l=o[p>>2]|0;y=o[A>>2]|0;v=o[E>>2]|0;R=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=t-G;o[ie>>2]=s-n;o[re>>2]=f-c;o[ne>>2]=g-l;o[te>>2]=_-y;o[ee>>2]=S-v;o[$>>2]=I-R;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[z>>2]=V+H;o[K>>2]=G+t;o[i>>2]=n+s;o[d>>2]=c+f;o[p>>2]=l+g;o[A>>2]=y+_;o[E>>2]=v+S;o[C>>2]=R+I;C=o[O>>2]|0;I=e+124|0;R=o[I>>2]|0;E=e+128|0;S=o[E>>2]|0;v=e+132|0;A=o[v>>2]|0;_=e+136|0;y=o[_>>2]|0;p=e+140|0;g=o[p>>2]|0;l=e+144|0;d=o[l>>2]|0;f=e+148|0;c=o[f>>2]|0;i=e+152|0;s=o[i>>2]|0;n=e+156|0;t=o[n>>2]|0;o[F>>2]=C+x;o[q>>2]=R+T;o[L>>2]=S+k;o[U>>2]=A+w;o[j>>2]=y+b;o[N>>2]=g+m;o[B>>2]=d+h;o[D>>2]=c+u;o[P>>2]=s+a;o[M>>2]=t+r;o[O>>2]=x-C;o[I>>2]=T-R;o[E>>2]=k-S;o[v>>2]=w-A;o[_>>2]=b-y;o[p>>2]=m-g;o[l>>2]=h-d;o[f>>2]=u-c;o[i>>2]=a-s;o[n>>2]=r-t;return}function ri(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0;v=h;h=h+2400|0;d=v+2272|0;g=v+1536|0;m=v+1280|0;_=v;y=v+2112|0;b=v+1952|0;l=v+1792|0;ii(g,t);ii(m,i);oi(_,n);w=o[n+4>>2]|0;A=o[n+8>>2]|0;u=o[n+12>>2]|0;t=o[n+16>>2]|0;c=o[n+20>>2]|0;f=o[n+24>>2]|0;a=o[n+28>>2]|0;s=o[n+32>>2]|0;i=o[n+36>>2]|0;o[d>>2]=o[n>>2];o[d+4>>2]=w;o[d+8>>2]=A;o[d+12>>2]=u;o[d+16>>2]=t;o[d+20>>2]=c;o[d+24>>2]=f;o[d+28>>2]=a;o[d+32>>2]=s;o[d+36>>2]=i;i=o[n+44>>2]|0;s=o[n+48>>2]|0;a=o[n+52>>2]|0;f=o[n+56>>2]|0;c=o[n+60>>2]|0;t=o[n+64>>2]|0;u=o[n+68>>2]|0;A=o[n+72>>2]|0;w=o[n+76>>2]|0;o[d+40>>2]=o[n+40>>2];o[d+44>>2]=i;o[d+48>>2]=s;o[d+52>>2]=a;o[d+56>>2]=f;o[d+60>>2]=c;o[d+64>>2]=t;o[d+68>>2]=u;o[d+72>>2]=A;o[d+76>>2]=w;w=o[n+84>>2]|0;A=o[n+88>>2]|0;u=o[n+92>>2]|0;t=o[n+96>>2]|0;c=o[n+100>>2]|0;f=o[n+104>>2]|0;a=o[n+108>>2]|0;s=o[n+112>>2]|0;i=o[n+116>>2]|0;o[d+80>>2]=o[n+80>>2];o[d+84>>2]=w;o[d+88>>2]=A;o[d+92>>2]=u;o[d+96>>2]=t;o[d+100>>2]=c;o[d+104>>2]=f;o[d+108>>2]=a;o[d+112>>2]=s;o[d+116>>2]=i;si(y,d);d=y+120|0;Xr(l,y,d);i=y+40|0;s=y+80|0;Xr(l+40|0,i,s);Xr(l+80|0,s,d);Xr(l+120|0,y,i);ni(y,l,_);Xr(b,y,d);a=b+40|0;Xr(a,i,s);f=b+80|0;Xr(f,s,d);c=b+120|0;Xr(c,y,i);t=_+160|0;oi(t,b);ni(y,l,t);Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);t=_+320|0;oi(t,b);ni(y,l,t);Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);t=_+480|0;oi(t,b);ni(y,l,t);Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);t=_+640|0;oi(t,b);ni(y,l,t);Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);t=_+800|0;oi(t,b);ni(y,l,t);Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);t=_+960|0;oi(t,b);ni(y,l,t);Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);oi(_+1120|0,b);t=e;n=t+40|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));u=e+40|0;o[u>>2]=1;t=e+44|0;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));l=e+80|0;o[l>>2]=1;t=e+84|0;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));t=255;while(1){if(r[g+t>>0]|0)break;if(r[m+t>>0]|0)break;if(!t){p=16;break}else t=t+-1|0}if((p|0)==16){h=v;return}if((t|0)<=-1){h=v;return}while(1){si(y,e);n=r[g+t>>0]|0;if(n<<24>>24<=0){if(n<<24>>24<0){Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);ai(y,b,_+((((n<<24>>24)/-2|0)<<24>>24)*160|0)|0)}}else{Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);ni(y,b,_+(((n&255)>>>1&255)*160|0)|0)}n=r[m+t>>0]|0;if(n<<24>>24<=0){if(n<<24>>24<0){Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);ci(y,b,240+((((n<<24>>24)/-2|0)<<24>>24)*120|0)|0)}}else{Xr(b,y,d);Xr(a,i,s);Xr(f,s,d);Xr(c,y,i);fi(y,b,240+(((n&255)>>>1&255)*120|0)|0)}Xr(e,y,d);Xr(u,i,s);Xr(l,s,d);if((t|0)>0)t=t+-1|0;else break}h=v;return}function ii(e,t){e=e|0;t=t|0;var n=0,i=0,o=0,a=0,f=0,c=0,u=0,l=0,d=0;n=0;do{r[e+n>>0]=(s[t+(n>>>3)>>0]|0)>>>(n&7)&1;n=n+1|0}while((n|0)!=256);u=0;do{c=e+u|0;n=r[c>>0]|0;f=u;u=u+1|0;e:do{if(n<<24>>24!=0&u>>>0<256){o=e+u|0;t=r[o>>0]|0;t:do{if(t<<24>>24){i=n<<24>>24;n=t<<24>>24<<1;t=n+i|0;if((t|0)<16){r[c>>0]=t;r[o>>0]=0;break}n=i-n|0;if((n|0)<=-16)break e;r[c>>0]=n;n=u;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=f+2|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[c>>0]|0;t=t<<24>>24<<2;i=t+a|0;if((i|0)<16){r[c>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[c>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=f+3|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[c>>0]|0;t=t<<24>>24<<3;i=t+a|0;if((i|0)<16){r[c>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[c>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=f+4|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[c>>0]|0;t=t<<24>>24<<4;i=t+a|0;if((i|0)<16){r[c>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[c>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=f+5|0;if(n>>>0<256){o=e+n|0;t=r[o>>0]|0;t:do{if(t<<24>>24){a=r[c>>0]|0;t=t<<24>>24<<5;i=t+a|0;if((i|0)<16){r[c>>0]=i;r[o>>0]=0;break}t=a-t|0;if((t|0)<=-16)break e;r[c>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break t}r[t>>0]=1}}while(0);n=f+6|0;if(n>>>0<256?(l=e+n|0,d=r[l>>0]|0,d<<24>>24):0){t=r[c>>0]|0;i=d<<24>>24<<6;o=i+t|0;if((o|0)<16){r[c>>0]=o;r[l>>0]=0;break}t=t-i|0;if((t|0)>-16){r[c>>0]=t;while(1){t=e+n|0;if(!(r[t>>0]|0))break;r[t>>0]=0;if(n>>>0<255)n=n+1|0;else break e}r[t>>0]=1}}}}}}}}while(0)}while((u|0)!=256);return}function oi(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0;d=t+40|0;A=t+44|0;v=t+48|0;b=t+52|0;y=t+56|0;_=t+60|0;m=t+64|0;g=t+68|0;p=t+72|0;h=t+76|0;n=t+4|0;r=t+8|0;i=t+12|0;s=t+16|0;a=t+20|0;f=t+24|0;c=t+28|0;u=t+32|0;l=t+36|0;C=(o[n>>2]|0)+(o[A>>2]|0)|0;O=(o[r>>2]|0)+(o[v>>2]|0)|0;T=(o[i>>2]|0)+(o[b>>2]|0)|0;R=(o[s>>2]|0)+(o[y>>2]|0)|0;I=(o[a>>2]|0)+(o[_>>2]|0)|0;k=(o[f>>2]|0)+(o[m>>2]|0)|0;S=(o[c>>2]|0)+(o[g>>2]|0)|0;E=(o[u>>2]|0)+(o[p>>2]|0)|0;w=(o[l>>2]|0)+(o[h>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[d>>2]|0);o[e+4>>2]=C;o[e+8>>2]=O;o[e+12>>2]=T;o[e+16>>2]=R;o[e+20>>2]=I;o[e+24>>2]=k;o[e+28>>2]=S;o[e+32>>2]=E;o[e+36>>2]=w;n=(o[A>>2]|0)-(o[n>>2]|0)|0;r=(o[v>>2]|0)-(o[r>>2]|0)|0;i=(o[b>>2]|0)-(o[i>>2]|0)|0;s=(o[y>>2]|0)-(o[s>>2]|0)|0;a=(o[_>>2]|0)-(o[a>>2]|0)|0;f=(o[m>>2]|0)-(o[f>>2]|0)|0;c=(o[g>>2]|0)-(o[c>>2]|0)|0;u=(o[p>>2]|0)-(o[u>>2]|0)|0;l=(o[h>>2]|0)-(o[l>>2]|0)|0;o[e+40>>2]=(o[d>>2]|0)-(o[t>>2]|0);o[e+44>>2]=n;o[e+48>>2]=r;o[e+52>>2]=i;o[e+56>>2]=s;o[e+60>>2]=a;o[e+64>>2]=f;o[e+68>>2]=c;o[e+72>>2]=u;o[e+76>>2]=l;l=o[t+84>>2]|0;u=o[t+88>>2]|0;c=o[t+92>>2]|0;f=o[t+96>>2]|0;a=o[t+100>>2]|0;s=o[t+104>>2]|0;i=o[t+108>>2]|0;r=o[t+112>>2]|0;n=o[t+116>>2]|0;o[e+80>>2]=o[t+80>>2];o[e+84>>2]=l;o[e+88>>2]=u;o[e+92>>2]=c;o[e+96>>2]=f;o[e+100>>2]=a;o[e+104>>2]=s;o[e+108>>2]=i;o[e+112>>2]=r;o[e+116>>2]=n;Xr(e+120|0,t+120|0,1200);return}function si(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0;n=h;h=h+48|0;D=n;Yr(e,t);z=e+80|0;ce=t+40|0;Yr(z,ce);A=e+120|0;$r(A,t+80|0);ue=e+40|0;fe=(o[t+44>>2]|0)+(o[t+4>>2]|0)|0;ae=(o[t+48>>2]|0)+(o[t+8>>2]|0)|0;se=(o[t+52>>2]|0)+(o[t+12>>2]|0)|0;oe=(o[t+56>>2]|0)+(o[t+16>>2]|0)|0;ie=(o[t+60>>2]|0)+(o[t+20>>2]|0)|0;re=(o[t+64>>2]|0)+(o[t+24>>2]|0)|0;ne=(o[t+68>>2]|0)+(o[t+28>>2]|0)|0;te=(o[t+72>>2]|0)+(o[t+32>>2]|0)|0;ee=(o[t+76>>2]|0)+(o[t+36>>2]|0)|0;o[ue>>2]=(o[ce>>2]|0)+(o[t>>2]|0);ce=e+44|0;o[ce>>2]=fe;fe=e+48|0;o[fe>>2]=ae;ae=e+52|0;o[ae>>2]=se;se=e+56|0;o[se>>2]=oe;oe=e+60|0;o[oe>>2]=ie;ie=e+64|0;o[ie>>2]=re;re=e+68|0;o[re>>2]=ne;ne=e+72|0;o[ne>>2]=te;te=e+76|0;o[te>>2]=ee;Yr(D,ue);ee=o[z>>2]|0;G=e+84|0;$=o[G>>2]|0;K=e+88|0;Z=o[K>>2]|0;F=e+92|0;J=o[F>>2]|0;q=e+96|0;X=o[q>>2]|0;L=e+100|0;Y=o[L>>2]|0;U=e+104|0;W=o[U>>2]|0;j=e+108|0;Q=o[j>>2]|0;N=e+112|0;V=o[N>>2]|0;B=e+116|0;H=o[B>>2]|0;w=o[e>>2]|0;x=e+4|0;v=o[x>>2]|0;O=e+8|0;y=o[O>>2]|0;R=e+12|0;m=o[R>>2]|0;k=e+16|0;p=o[k>>2]|0;t=e+20|0;l=o[t>>2]|0;s=e+24|0;c=o[s>>2]|0;u=e+28|0;a=o[u>>2]|0;g=e+32|0;i=o[g>>2]|0;b=e+36|0;E=o[b>>2]|0;P=w+ee|0;M=v+$|0;C=y+Z|0;T=m+J|0;I=p+X|0;S=l+Y|0;r=c+W|0;f=a+Q|0;d=i+V|0;_=E+H|0;o[ue>>2]=P;o[ce>>2]=M;o[fe>>2]=C;o[ae>>2]=T;o[se>>2]=I;o[oe>>2]=S;o[ie>>2]=r;o[re>>2]=f;o[ne>>2]=d;o[te>>2]=_;w=ee-w|0;v=$-v|0;y=Z-y|0;m=J-m|0;p=X-p|0;l=Y-l|0;c=W-c|0;a=Q-a|0;i=V-i|0;E=H-E|0;o[z>>2]=w;o[G>>2]=v;o[K>>2]=y;o[F>>2]=m;o[q>>2]=p;o[L>>2]=l;o[U>>2]=c;o[j>>2]=a;o[N>>2]=i;o[B>>2]=E;M=(o[D+4>>2]|0)-M|0;C=(o[D+8>>2]|0)-C|0;T=(o[D+12>>2]|0)-T|0;I=(o[D+16>>2]|0)-I|0;S=(o[D+20>>2]|0)-S|0;r=(o[D+24>>2]|0)-r|0;f=(o[D+28>>2]|0)-f|0;d=(o[D+32>>2]|0)-d|0;_=(o[D+36>>2]|0)-_|0;o[e>>2]=(o[D>>2]|0)-P;o[x>>2]=M;o[O>>2]=C;o[R>>2]=T;o[k>>2]=I;o[t>>2]=S;o[s>>2]=r;o[u>>2]=f;o[g>>2]=d;o[b>>2]=_;b=e+124|0;_=e+128|0;g=e+132|0;d=e+136|0;u=e+140|0;f=e+144|0;s=e+148|0;r=e+152|0;t=e+156|0;v=(o[b>>2]|0)-v|0;y=(o[_>>2]|0)-y|0;m=(o[g>>2]|0)-m|0;p=(o[d>>2]|0)-p|0;l=(o[u>>2]|0)-l|0;c=(o[f>>2]|0)-c|0;a=(o[s>>2]|0)-a|0;i=(o[r>>2]|0)-i|0;e=(o[t>>2]|0)-E|0;o[A>>2]=(o[A>>2]|0)-w;o[b>>2]=v;o[_>>2]=y;o[g>>2]=m;o[d>>2]=p;o[u>>2]=l;o[f>>2]=c;o[s>>2]=a;o[r>>2]=i;o[t>>2]=e;h=n;return}function ai(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;f=t+44|0;l=t+48|0;p=t+52|0;_=t+56|0;v=t+60|0;E=t+64|0;I=t+68|0;O=t+72|0;T=t+76|0;z=t+4|0;F=t+8|0;r=t+12|0;d=t+16|0;h=t+20|0;A=t+24|0;w=t+28|0;C=t+32|0;q=t+36|0;se=(o[z>>2]|0)+(o[f>>2]|0)|0;oe=(o[F>>2]|0)+(o[l>>2]|0)|0;ie=(o[r>>2]|0)+(o[p>>2]|0)|0;re=(o[d>>2]|0)+(o[_>>2]|0)|0;ne=(o[h>>2]|0)+(o[v>>2]|0)|0;te=(o[A>>2]|0)+(o[E>>2]|0)|0;ee=(o[w>>2]|0)+(o[I>>2]|0)|0;$=(o[C>>2]|0)+(o[O>>2]|0)|0;X=(o[q>>2]|0)+(o[T>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;z=(o[f>>2]|0)-(o[z>>2]|0)|0;F=(o[l>>2]|0)-(o[F>>2]|0)|0;r=(o[p>>2]|0)-(o[r>>2]|0)|0;d=(o[_>>2]|0)-(o[d>>2]|0)|0;h=(o[v>>2]|0)-(o[h>>2]|0)|0;A=(o[E>>2]|0)-(o[A>>2]|0)|0;w=(o[I>>2]|0)-(o[w>>2]|0)|0;C=(o[O>>2]|0)-(o[C>>2]|0)|0;q=(o[T>>2]|0)-(o[q>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=z;z=e+48|0;o[z>>2]=F;F=e+52|0;o[F>>2]=r;r=e+56|0;o[r>>2]=d;d=e+60|0;o[d>>2]=h;h=e+64|0;o[h>>2]=A;A=e+68|0;o[A>>2]=w;w=e+72|0;o[w>>2]=C;C=e+76|0;o[C>>2]=q;q=e+80|0;Xr(q,e,n+40|0);Xr(X,X,n);T=e+120|0;Xr(T,n+120|0,t+120|0);Xr(e,t+80|0,n+80|0);O=o[e>>2]<<1;I=o[ae>>2]<<1;E=o[se>>2]<<1;v=o[oe>>2]<<1;_=o[ie>>2]<<1;p=o[re>>2]<<1;l=o[ne>>2]<<1;f=o[te>>2]<<1;i=o[ee>>2]<<1;t=o[$>>2]<<1;J=o[q>>2]|0;L=e+84|0;W=o[L>>2]|0;U=e+88|0;H=o[U>>2]|0;j=e+92|0;K=o[j>>2]|0;N=e+96|0;s=o[N>>2]|0;B=e+100|0;a=o[B>>2]|0;D=e+104|0;g=o[D>>2]|0;P=e+108|0;m=o[P>>2]|0;M=e+112|0;S=o[M>>2]|0;x=e+116|0;k=o[x>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[z>>2]|0;G=o[F>>2]|0;n=o[r>>2]|0;c=o[d>>2]|0;u=o[h>>2]|0;y=o[A>>2]|0;b=o[w>>2]|0;R=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=K-G;o[ie>>2]=s-n;o[re>>2]=a-c;o[ne>>2]=g-u;o[te>>2]=m-y;o[ee>>2]=S-b;o[$>>2]=k-R;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[z>>2]=V+H;o[F>>2]=G+K;o[r>>2]=n+s;o[d>>2]=c+a;o[h>>2]=u+g;o[A>>2]=y+m;o[w>>2]=b+S;o[C>>2]=R+k;C=o[T>>2]|0;k=e+124|0;R=o[k>>2]|0;w=e+128|0;S=o[w>>2]|0;b=e+132|0;A=o[b>>2]|0;m=e+136|0;y=o[m>>2]|0;h=e+140|0;g=o[h>>2]|0;u=e+144|0;d=o[u>>2]|0;a=e+148|0;c=o[a>>2]|0;r=e+152|0;s=o[r>>2]|0;n=e+156|0;e=o[n>>2]|0;o[q>>2]=O-C;o[L>>2]=I-R;o[U>>2]=E-S;o[j>>2]=v-A;o[N>>2]=_-y;o[B>>2]=p-g;o[D>>2]=l-d;o[P>>2]=f-c;o[M>>2]=i-s;o[x>>2]=t-e;o[T>>2]=C+O;o[k>>2]=R+I;o[w>>2]=S+E;o[b>>2]=A+v;o[m>>2]=y+_;o[h>>2]=g+p;o[u>>2]=d+l;o[a>>2]=c+f;o[r>>2]=s+i;o[n>>2]=e+t;return}function fi(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;u=t+44|0;h=t+48|0;m=t+52|0;b=t+56|0;w=t+60|0;k=t+64|0;T=t+68|0;x=t+72|0;O=t+76|0;z=t+4|0;K=t+8|0;i=t+12|0;d=t+16|0;p=t+20|0;A=t+24|0;E=t+28|0;C=t+32|0;F=t+36|0;se=(o[z>>2]|0)+(o[u>>2]|0)|0;oe=(o[K>>2]|0)+(o[h>>2]|0)|0;ie=(o[i>>2]|0)+(o[m>>2]|0)|0;re=(o[d>>2]|0)+(o[b>>2]|0)|0;ne=(o[p>>2]|0)+(o[w>>2]|0)|0;te=(o[A>>2]|0)+(o[k>>2]|0)|0;ee=(o[E>>2]|0)+(o[T>>2]|0)|0;$=(o[C>>2]|0)+(o[x>>2]|0)|0;X=(o[F>>2]|0)+(o[O>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;z=(o[u>>2]|0)-(o[z>>2]|0)|0;K=(o[h>>2]|0)-(o[K>>2]|0)|0;i=(o[m>>2]|0)-(o[i>>2]|0)|0;d=(o[b>>2]|0)-(o[d>>2]|0)|0;p=(o[w>>2]|0)-(o[p>>2]|0)|0;A=(o[k>>2]|0)-(o[A>>2]|0)|0;E=(o[T>>2]|0)-(o[E>>2]|0)|0;C=(o[x>>2]|0)-(o[C>>2]|0)|0;F=(o[O>>2]|0)-(o[F>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=z;z=e+48|0;o[z>>2]=K;K=e+52|0;o[K>>2]=i;i=e+56|0;o[i>>2]=d;d=e+60|0;o[d>>2]=p;p=e+64|0;o[p>>2]=A;A=e+68|0;o[A>>2]=E;E=e+72|0;o[E>>2]=C;C=e+76|0;o[C>>2]=F;F=e+80|0;Xr(F,e,n);Xr(X,X,n+40|0);O=e+120|0;Xr(O,n+80|0,t+120|0);x=o[t+80>>2]<<1;T=o[t+84>>2]<<1;k=o[t+88>>2]<<1;w=o[t+92>>2]<<1;b=o[t+96>>2]<<1;m=o[t+100>>2]<<1;h=o[t+104>>2]<<1;u=o[t+108>>2]<<1;a=o[t+112>>2]<<1;r=o[t+116>>2]<<1;J=o[F>>2]|0;q=e+84|0;W=o[q>>2]|0;L=e+88|0;H=o[L>>2]|0;U=e+92|0;t=o[U>>2]|0;j=e+96|0;s=o[j>>2]|0;N=e+100|0;f=o[N>>2]|0;B=e+104|0;g=o[B>>2]|0;D=e+108|0;_=o[D>>2]|0;P=e+112|0;S=o[P>>2]|0;M=e+116|0;I=o[M>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[z>>2]|0;G=o[K>>2]|0;n=o[i>>2]|0;c=o[d>>2]|0;l=o[p>>2]|0;y=o[A>>2]|0;v=o[E>>2]|0;R=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=t-G;o[ie>>2]=s-n;o[re>>2]=f-c;o[ne>>2]=g-l;o[te>>2]=_-y;o[ee>>2]=S-v;o[$>>2]=I-R;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[z>>2]=V+H;o[K>>2]=G+t;o[i>>2]=n+s;o[d>>2]=c+f;o[p>>2]=l+g;o[A>>2]=y+_;o[E>>2]=v+S;o[C>>2]=R+I;C=o[O>>2]|0;I=e+124|0;R=o[I>>2]|0;E=e+128|0;S=o[E>>2]|0;v=e+132|0;A=o[v>>2]|0;_=e+136|0;y=o[_>>2]|0;p=e+140|0;g=o[p>>2]|0;l=e+144|0;d=o[l>>2]|0;f=e+148|0;c=o[f>>2]|0;i=e+152|0;s=o[i>>2]|0;n=e+156|0;t=o[n>>2]|0;o[F>>2]=C+x;o[q>>2]=R+T;o[L>>2]=S+k;o[U>>2]=A+w;o[j>>2]=y+b;o[N>>2]=g+m;o[B>>2]=d+h;o[D>>2]=c+u;o[P>>2]=s+a;o[M>>2]=t+r;o[O>>2]=x-C;o[I>>2]=T-R;o[E>>2]=k-S;o[v>>2]=w-A;o[_>>2]=b-y;o[p>>2]=m-g;o[l>>2]=h-d;o[f>>2]=u-c;o[i>>2]=a-s;o[n>>2]=r-t;return}function ci(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0;Q=t+40|0;f=t+44|0;l=t+48|0;p=t+52|0;_=t+56|0;v=t+60|0;E=t+64|0;I=t+68|0;O=t+72|0;T=t+76|0;z=t+4|0;F=t+8|0;r=t+12|0;d=t+16|0;h=t+20|0;A=t+24|0;w=t+28|0;C=t+32|0;q=t+36|0;se=(o[z>>2]|0)+(o[f>>2]|0)|0;oe=(o[F>>2]|0)+(o[l>>2]|0)|0;ie=(o[r>>2]|0)+(o[p>>2]|0)|0;re=(o[d>>2]|0)+(o[_>>2]|0)|0;ne=(o[h>>2]|0)+(o[v>>2]|0)|0;te=(o[A>>2]|0)+(o[E>>2]|0)|0;ee=(o[w>>2]|0)+(o[I>>2]|0)|0;$=(o[C>>2]|0)+(o[O>>2]|0)|0;X=(o[q>>2]|0)+(o[T>>2]|0)|0;o[e>>2]=(o[t>>2]|0)+(o[Q>>2]|0);ae=e+4|0;o[ae>>2]=se;se=e+8|0;o[se>>2]=oe;oe=e+12|0;o[oe>>2]=ie;ie=e+16|0;o[ie>>2]=re;re=e+20|0;o[re>>2]=ne;ne=e+24|0;o[ne>>2]=te;te=e+28|0;o[te>>2]=ee;ee=e+32|0;o[ee>>2]=$;$=e+36|0;o[$>>2]=X;X=e+40|0;z=(o[f>>2]|0)-(o[z>>2]|0)|0;F=(o[l>>2]|0)-(o[F>>2]|0)|0;r=(o[p>>2]|0)-(o[r>>2]|0)|0;d=(o[_>>2]|0)-(o[d>>2]|0)|0;h=(o[v>>2]|0)-(o[h>>2]|0)|0;A=(o[E>>2]|0)-(o[A>>2]|0)|0;w=(o[I>>2]|0)-(o[w>>2]|0)|0;C=(o[O>>2]|0)-(o[C>>2]|0)|0;q=(o[T>>2]|0)-(o[q>>2]|0)|0;o[X>>2]=(o[Q>>2]|0)-(o[t>>2]|0);Q=e+44|0;o[Q>>2]=z;z=e+48|0;o[z>>2]=F;F=e+52|0;o[F>>2]=r;r=e+56|0;o[r>>2]=d;d=e+60|0;o[d>>2]=h;h=e+64|0;o[h>>2]=A;A=e+68|0;o[A>>2]=w;w=e+72|0;o[w>>2]=C;C=e+76|0;o[C>>2]=q;q=e+80|0;Xr(q,e,n+40|0);Xr(X,X,n);T=e+120|0;Xr(T,n+80|0,t+120|0);O=o[t+80>>2]<<1;I=o[t+84>>2]<<1;E=o[t+88>>2]<<1;v=o[t+92>>2]<<1;_=o[t+96>>2]<<1;p=o[t+100>>2]<<1;l=o[t+104>>2]<<1;f=o[t+108>>2]<<1;i=o[t+112>>2]<<1;t=o[t+116>>2]<<1;J=o[q>>2]|0;L=e+84|0;W=o[L>>2]|0;U=e+88|0;H=o[U>>2]|0;j=e+92|0;K=o[j>>2]|0;N=e+96|0;s=o[N>>2]|0;B=e+100|0;a=o[B>>2]|0;D=e+104|0;g=o[D>>2]|0;P=e+108|0;m=o[P>>2]|0;M=e+112|0;S=o[M>>2]|0;x=e+116|0;k=o[x>>2]|0;Z=o[X>>2]|0;Y=o[Q>>2]|0;V=o[z>>2]|0;G=o[F>>2]|0;n=o[r>>2]|0;c=o[d>>2]|0;u=o[h>>2]|0;y=o[A>>2]|0;b=o[w>>2]|0;R=o[C>>2]|0;o[e>>2]=J-Z;o[ae>>2]=W-Y;o[se>>2]=H-V;o[oe>>2]=K-G;o[ie>>2]=s-n;o[re>>2]=a-c;o[ne>>2]=g-u;o[te>>2]=m-y;o[ee>>2]=S-b;o[$>>2]=k-R;o[X>>2]=Z+J;o[Q>>2]=Y+W;o[z>>2]=V+H;o[F>>2]=G+K;o[r>>2]=n+s;o[d>>2]=c+a;o[h>>2]=u+g;o[A>>2]=y+m;o[w>>2]=b+S;o[C>>2]=R+k;C=o[T>>2]|0;k=e+124|0;R=o[k>>2]|0;w=e+128|0;S=o[w>>2]|0;b=e+132|0;A=o[b>>2]|0;m=e+136|0;y=o[m>>2]|0;h=e+140|0;g=o[h>>2]|0;u=e+144|0;d=o[u>>2]|0;a=e+148|0;c=o[a>>2]|0;r=e+152|0;s=o[r>>2]|0;n=e+156|0;e=o[n>>2]|0;o[q>>2]=O-C;o[L>>2]=I-R;o[U>>2]=E-S;o[j>>2]=v-A;o[N>>2]=_-y;o[B>>2]=p-g;o[D>>2]=l-d;o[P>>2]=f-c;o[M>>2]=i-s;o[x>>2]=t-e;o[T>>2]=C+O;o[k>>2]=R+I;o[w>>2]=S+E;o[b>>2]=A+v;o[m>>2]=y+_;o[h>>2]=g+p;o[u>>2]=d+l;o[a>>2]=c+f;o[r>>2]=s+i;o[n>>2]=e+t;return}function ui(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0;ge=h;h=h+272|0;ue=ge+240|0;le=ge+192|0;f=ge+144|0;c=ge+96|0;de=ge+48|0;he=ge;pe=e+40|0;Qr(pe,t);u=e+80|0;o[u>>2]=1;a=e+84|0;n=a;i=n+36|0;do{o[n>>2]=0;n=n+4|0}while((n|0)<(i|0));Yr(le,pe);Xr(f,le,1248);te=le+4|0;ne=le+8|0;re=le+12|0;ie=le+16|0;oe=le+20|0;se=le+24|0;ae=le+28|0;fe=le+32|0;ce=le+36|0;C=o[u>>2]|0;O=o[a>>2]|0;R=o[e+88>>2]|0;k=o[e+92>>2]|0;E=o[e+96>>2]|0;A=o[e+100>>2]|0;i=o[e+104>>2]|0;ee=o[e+108>>2]|0;Z=o[e+112>>2]|0;X=o[e+116>>2]|0;b=(o[le>>2]|0)-C|0;v=(o[te>>2]|0)-O|0;u=(o[ne>>2]|0)-R|0;l=(o[re>>2]|0)-k|0;d=(o[ie>>2]|0)-E|0;p=(o[oe>>2]|0)-A|0;g=(o[se>>2]|0)-i|0;m=(o[ae>>2]|0)-ee|0;_=(o[fe>>2]|0)-Z|0;y=(o[ce>>2]|0)-X|0;o[le>>2]=b;o[te>>2]=v;o[ne>>2]=u;o[re>>2]=l;o[ie>>2]=d;o[oe>>2]=p;o[se>>2]=g;o[ae>>2]=m;o[fe>>2]=_;o[ce>>2]=y;T=f+4|0;I=f+8|0;S=f+12|0;w=f+16|0;a=f+20|0;n=f+24|0;$=f+28|0;J=f+32|0;Y=f+36|0;O=(o[T>>2]|0)+O|0;R=(o[I>>2]|0)+R|0;k=(o[S>>2]|0)+k|0;E=(o[w>>2]|0)+E|0;A=(o[a>>2]|0)+A|0;i=(o[n>>2]|0)+i|0;ee=(o[$>>2]|0)+ee|0;Z=(o[J>>2]|0)+Z|0;X=(o[Y>>2]|0)+X|0;o[f>>2]=(o[f>>2]|0)+C;o[T>>2]=O;o[I>>2]=R;o[S>>2]=k;o[w>>2]=E;o[a>>2]=A;o[n>>2]=i;o[$>>2]=ee;o[J>>2]=Z;o[Y>>2]=X;Yr(c,f);Xr(c,c,f);Yr(e,c);Xr(e,e,f);Xr(e,e,le);Zr(e,e);Xr(e,e,c);Xr(e,e,le);Yr(de,e);Xr(de,de,f);Y=de+4|0;X=de+8|0;J=de+12|0;Z=de+16|0;$=de+20|0;ee=de+24|0;n=de+28|0;i=de+32|0;a=de+36|0;c=(o[Y>>2]|0)-v|0;u=(o[X>>2]|0)-u|0;l=(o[J>>2]|0)-l|0;d=(o[Z>>2]|0)-d|0;p=(o[$>>2]|0)-p|0;g=(o[ee>>2]|0)-g|0;m=(o[n>>2]|0)-m|0;_=(o[i>>2]|0)-_|0;y=(o[a>>2]|0)-y|0;o[he>>2]=(o[de>>2]|0)-b;f=he+4|0;o[f>>2]=c;c=he+8|0;o[c>>2]=u;u=he+12|0;o[u>>2]=l;l=he+16|0;o[l>>2]=d;d=he+20|0;o[d>>2]=p;p=he+24|0;o[p>>2]=g;g=he+28|0;o[g>>2]=m;m=he+32|0;o[m>>2]=_;_=he+36|0;o[_>>2]=y;Jr(ue,he);y=ue+1|0;b=ue+2|0;v=ue+3|0;A=ue+4|0;w=ue+5|0;E=ue+6|0;S=ue+7|0;k=ue+8|0;I=ue+9|0;R=ue+10|0;T=ue+11|0;O=ue+12|0;C=ue+13|0;x=ue+14|0;M=ue+15|0;P=ue+16|0;D=ue+17|0;B=ue+18|0;N=ue+19|0;j=ue+20|0;U=ue+21|0;L=ue+22|0;q=ue+23|0;F=ue+24|0;K=ue+25|0;G=ue+26|0;z=ue+27|0;H=ue+28|0;V=ue+29|0;Q=ue+30|0;W=ue+31|0;do{if((r[y>>0]|r[ue>>0]|r[b>>0]|r[v>>0]|r[A>>0]|r[w>>0]|r[E>>0]|r[S>>0]|r[k>>0]|r[I>>0]|r[R>>0]|r[T>>0]|r[O>>0]|r[C>>0]|r[x>>0]|r[M>>0]|r[P>>0]|r[D>>0]|r[B>>0]|r[N>>0]|r[j>>0]|r[U>>0]|r[L>>0]|r[q>>0]|r[F>>0]|r[K>>0]|r[G>>0]|r[z>>0]|r[H>>0]|r[V>>0]|r[Q>>0]|r[W>>0])<<24>>24){te=(o[te>>2]|0)+(o[Y>>2]|0)|0;ne=(o[ne>>2]|0)+(o[X>>2]|0)|0;re=(o[re>>2]|0)+(o[J>>2]|0)|0;ie=(o[ie>>2]|0)+(o[Z>>2]|0)|0;oe=(o[oe>>2]|0)+(o[$>>2]|0)|0;se=(o[se>>2]|0)+(o[ee>>2]|0)|0;ae=(o[ae>>2]|0)+(o[n>>2]|0)|0;fe=(o[fe>>2]|0)+(o[i>>2]|0)|0;ce=(o[ce>>2]|0)+(o[a>>2]|0)|0;o[he>>2]=(o[le>>2]|0)+(o[de>>2]|0);o[f>>2]=te;o[c>>2]=ne;o[u>>2]=re;o[l>>2]=ie;o[d>>2]=oe;o[p>>2]=se;o[g>>2]=ae;o[m>>2]=fe;o[_>>2]=ce;Jr(ue,he);if(!((r[y>>0]|r[ue>>0]|r[b>>0]|r[v>>0]|r[A>>0]|r[w>>0]|r[E>>0]|r[S>>0]|r[k>>0]|r[I>>0]|r[R>>0]|r[T>>0]|r[O>>0]|r[C>>0]|r[x>>0]|r[M>>0]|r[P>>0]|r[D>>0]|r[B>>0]|r[N>>0]|r[j>>0]|r[U>>0]|r[L>>0]|r[q>>0]|r[F>>0]|r[K>>0]|r[G>>0]|r[z>>0]|r[H>>0]|r[V>>0]|r[Q>>0]|r[W>>0])<<24>>24)){Xr(e,e,1296);break}else{pe=-1;h=ge;return pe|0}}}while(0);Jr(ue,e);if(((s[t+31>>0]|0)>>>7|0)==(r[ue>>0]&1|0)){Z=e+4|0;ee=e+8|0;ne=e+12|0;ie=e+16|0;se=e+20|0;fe=e+24|0;t=e+28|0;le=e+32|0;he=e+36|0;J=0-(o[Z>>2]|0)|0;$=0-(o[ee>>2]|0)|0;te=0-(o[ne>>2]|0)|0;re=0-(o[ie>>2]|0)|0;oe=0-(o[se>>2]|0)|0;ae=0-(o[fe>>2]|0)|0;ce=0-(o[t>>2]|0)|0;ue=0-(o[le>>2]|0)|0;de=0-(o[he>>2]|0)|0;o[e>>2]=0-(o[e>>2]|0);o[Z>>2]=J;o[ee>>2]=$;o[ne>>2]=te;o[ie>>2]=re;o[se>>2]=oe;o[fe>>2]=ae;o[t>>2]=ce;o[le>>2]=ue;o[he>>2]=de}Xr(e+120|0,e,pe);pe=0;h=ge;return pe|0}function li(e,t){e=e|0;t=t|0;var n=0,i=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0;b=h;h=h+592|0;p=b+464|0;m=b;_=b+304|0;g=b+184|0;y=b+64|0;i=r[t>>0]|0;r[m>>0]=i&15;r[m+1>>0]=(i&255)>>>4;i=r[t+1>>0]|0;r[m+2>>0]=i&15;r[m+3>>0]=(i&255)>>>4;i=r[t+2>>0]|0;r[m+4>>0]=i&15;r[m+5>>0]=(i&255)>>>4;i=r[t+3>>0]|0;r[m+6>>0]=i&15;r[m+7>>0]=(i&255)>>>4;i=r[t+4>>0]|0;r[m+8>>0]=i&15;r[m+9>>0]=(i&255)>>>4;i=r[t+5>>0]|0;r[m+10>>0]=i&15;r[m+11>>0]=(i&255)>>>4;i=r[t+6>>0]|0;r[m+12>>0]=i&15;r[m+13>>0]=(i&255)>>>4;i=r[t+7>>0]|0;r[m+14>>0]=i&15;r[m+15>>0]=(i&255)>>>4;i=r[t+8>>0]|0;r[m+16>>0]=i&15;r[m+17>>0]=(i&255)>>>4;i=r[t+9>>0]|0;r[m+18>>0]=i&15;r[m+19>>0]=(i&255)>>>4;i=r[t+10>>0]|0;r[m+20>>0]=i&15;r[m+21>>0]=(i&255)>>>4;i=r[t+11>>0]|0;r[m+22>>0]=i&15;r[m+23>>0]=(i&255)>>>4;i=r[t+12>>0]|0;r[m+24>>0]=i&15;r[m+25>>0]=(i&255)>>>4;i=r[t+13>>0]|0;r[m+26>>0]=i&15;r[m+27>>0]=(i&255)>>>4;i=r[t+14>>0]|0;r[m+28>>0]=i&15;r[m+29>>0]=(i&255)>>>4;i=r[t+15>>0]|0;r[m+30>>0]=i&15;r[m+31>>0]=(i&255)>>>4;i=r[t+16>>0]|0;r[m+32>>0]=i&15;r[m+33>>0]=(i&255)>>>4;i=r[t+17>>0]|0;r[m+34>>0]=i&15;r[m+35>>0]=(i&255)>>>4;i=r[t+18>>0]|0;r[m+36>>0]=i&15;r[m+37>>0]=(i&255)>>>4;i=r[t+19>>0]|0;r[m+38>>0]=i&15;r[m+39>>0]=(i&255)>>>4;i=r[t+20>>0]|0;r[m+40>>0]=i&15;r[m+41>>0]=(i&255)>>>4;i=r[t+21>>0]|0;r[m+42>>0]=i&15;r[m+43>>0]=(i&255)>>>4;i=r[t+22>>0]|0;r[m+44>>0]=i&15;r[m+45>>0]=(i&255)>>>4;i=r[t+23>>0]|0;r[m+46>>0]=i&15;r[m+47>>0]=(i&255)>>>4;i=r[t+24>>0]|0;r[m+48>>0]=i&15;r[m+49>>0]=(i&255)>>>4;i=r[t+25>>0]|0;r[m+50>>0]=i&15;r[m+51>>0]=(i&255)>>>4;i=r[t+26>>0]|0;r[m+52>>0]=i&15;r[m+53>>0]=(i&255)>>>4;i=r[t+27>>0]|0;r[m+54>>0]=i&15;r[m+55>>0]=(i&255)>>>4;i=r[t+28>>0]|0;r[m+56>>0]=i&15;r[m+57>>0]=(i&255)>>>4;i=r[t+29>>0]|0;r[m+58>>0]=i&15;r[m+59>>0]=(i&255)>>>4;i=r[t+30>>0]|0;r[m+60>>0]=i&15;r[m+61>>0]=(i&255)>>>4;t=r[t+31>>0]|0;r[m+62>>0]=t&15;i=m+63|0;r[i>>0]=(t&255)>>>4;t=0;n=0;do{d=m+n|0;l=t+(s[d>>0]|0)|0;t=(l<<24)+134217728>>28;r[d>>0]=l-(t<<4);n=n+1|0}while((n|0)!=63);r[i>>0]=t+(s[i>>0]|0);t=e;n=t+40|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));l=e+40|0;o[l>>2]=1;c=e+44|0;t=c;n=t+36|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));d=e+80|0;o[d>>2]=1;u=e+84|0;t=u;n=t+76|0;do{o[t>>2]=0;t=t+4|0}while((t|0)<(n|0));n=_+120|0;i=_+40|0;a=_+80|0;f=e+120|0;t=1;do{di(y,t>>>1,r[m+t>>0]|0);fi(_,e,y);Xr(e,_,n);Xr(l,i,a);Xr(d,a,n);Xr(f,_,i);t=t+2|0}while(t>>>0<64);R=o[e+4>>2]|0;k=o[e+8>>2]|0;S=o[e+12>>2]|0;E=o[e+16>>2]|0;w=o[e+20>>2]|0;A=o[e+24>>2]|0;v=o[e+28>>2]|0;t=o[e+32>>2]|0;I=o[e+36>>2]|0;o[p>>2]=o[e>>2];o[p+4>>2]=R;o[p+8>>2]=k;o[p+12>>2]=S;o[p+16>>2]=E;o[p+20>>2]=w;o[p+24>>2]=A;o[p+28>>2]=v;o[p+32>>2]=t;o[p+36>>2]=I;I=o[c>>2]|0;t=o[e+48>>2]|0;c=o[e+52>>2]|0;v=o[e+56>>2]|0;A=o[e+60>>2]|0;w=o[e+64>>2]|0;E=o[e+68>>2]|0;S=o[e+72>>2]|0;k=o[e+76>>2]|0;o[p+40>>2]=o[l>>2];o[p+44>>2]=I;o[p+48>>2]=t;o[p+52>>2]=c;o[p+56>>2]=v;o[p+60>>2]=A;o[p+64>>2]=w;o[p+68>>2]=E;o[p+72>>2]=S;o[p+76>>2]=k;k=o[u>>2]|0;S=o[e+88>>2]|0;E=o[e+92>>2]|0;w=o[e+96>>2]|0;A=o[e+100>>2]|0;v=o[e+104>>2]|0;c=o[e+108>>2]|0;u=o[e+112>>2]|0;t=o[e+116>>2]|0;o[p+80>>2]=o[d>>2];o[p+84>>2]=k;o[p+88>>2]=S;o[p+92>>2]=E;o[p+96>>2]=w;o[p+100>>2]=A;o[p+104>>2]=v;o[p+108>>2]=c;o[p+112>>2]=u;o[p+116>>2]=t;si(_,p);Xr(g,_,n);p=g+40|0;Xr(p,i,a);t=g+80|0;Xr(t,a,n);si(_,g);Xr(g,_,n);Xr(p,i,a);Xr(t,a,n);si(_,g);Xr(g,_,n);Xr(p,i,a);Xr(t,a,n);si(_,g);Xr(e,_,n);Xr(l,i,a);Xr(d,a,n);Xr(f,_,i);t=0;do{di(y,t>>>1,r[m+t>>0]|0);fi(_,e,y);Xr(e,_,n);Xr(l,i,a);Xr(d,a,n);Xr(f,_,i);t=t+2|0}while(t>>>0<64);h=b;return}function di(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0,me=0,_e=0,ye=0,be=0,ve=0;r=n<<24>>24;y=0-((n&255)>>>7&255)|0;n=r-((y&r)<<1)&255;o[e>>2]=1;r=e+4|0;b=r;v=b+36|0;do{o[b>>2]=0;b=b+4|0}while((b|0)<(v|0));i=e+40|0;o[i>>2]=1;s=e+44|0;a=e+80|0;f=Ss((n^1)&255|0,0,-1,-1)|0;f=Cs(f|0,I|0,63)|0;c=1344+(t*960|0)|0;u=e+8|0;l=e+12|0;d=e+16|0;h=e+20|0;p=e+24|0;g=e+28|0;m=e+32|0;_=e+36|0;b=s;v=b+76|0;do{o[b>>2]=0;b=b+4|0}while((b|0)<(v|0));ve=0-f|0;_e=o[1344+(t*960|0)+4>>2]&ve;me=o[1344+(t*960|0)+8>>2]&ve;ge=o[1344+(t*960|0)+12>>2]&ve;pe=o[1344+(t*960|0)+16>>2]&ve;he=o[1344+(t*960|0)+20>>2]&ve;de=o[1344+(t*960|0)+24>>2]&ve;le=o[1344+(t*960|0)+28>>2]&ve;ue=o[1344+(t*960|0)+32>>2]&ve;ce=o[1344+(t*960|0)+36>>2]&ve;ye=(o[c>>2]^1)&ve^1;o[e>>2]=ye;o[r>>2]=_e;o[u>>2]=me;o[l>>2]=ge;o[d>>2]=pe;o[h>>2]=he;o[p>>2]=de;o[g>>2]=le;o[m>>2]=ue;o[_>>2]=ce;ne=e+48|0;$=e+52|0;X=e+56|0;Q=e+60|0;z=e+64|0;F=e+68|0;U=e+72|0;B=e+76|0;oe=o[1344+(t*960|0)+44>>2]&ve;re=o[1344+(t*960|0)+48>>2]&ve;ee=o[1344+(t*960|0)+52>>2]&ve;J=o[1344+(t*960|0)+56>>2]&ve;W=o[1344+(t*960|0)+60>>2]&ve;H=o[1344+(t*960|0)+64>>2]&ve;K=o[1344+(t*960|0)+68>>2]&ve;L=o[1344+(t*960|0)+72>>2]&ve;N=o[1344+(t*960|0)+76>>2]&ve;ae=(o[1344+(t*960|0)+40>>2]^1)&ve^1;o[i>>2]=ae;o[s>>2]=oe;o[ne>>2]=re;o[$>>2]=ee;o[X>>2]=J;o[Q>>2]=W;o[z>>2]=H;o[F>>2]=K;o[U>>2]=L;o[B>>2]=N;D=o[a>>2]|0;M=e+84|0;P=o[M>>2]|0;C=e+88|0;x=o[C>>2]|0;T=e+92|0;O=o[T>>2]|0;k=e+96|0;R=o[k>>2]|0;E=e+100|0;S=o[E>>2]|0;A=e+104|0;w=o[A>>2]|0;f=e+108|0;Z=o[f>>2]|0;b=e+112|0;c=o[b>>2]|0;v=e+116|0;se=o[v>>2]|0;ie=(o[1344+(t*960|0)+84>>2]^P)&ve;te=(o[1344+(t*960|0)+88>>2]^x)&ve;Y=(o[1344+(t*960|0)+92>>2]^O)&ve;V=(o[1344+(t*960|0)+96>>2]^R)&ve;G=(o[1344+(t*960|0)+100>>2]^S)&ve;q=(o[1344+(t*960|0)+104>>2]^w)&ve;j=(o[1344+(t*960|0)+108>>2]^Z)&ve;fe=(o[1344+(t*960|0)+112>>2]^c)&ve;be=(o[1344+(t*960|0)+116>>2]^se)&ve;D=(o[1344+(t*960|0)+80>>2]^D)&ve^D;o[a>>2]=D;P=ie^P;o[M>>2]=P;x=te^x;o[C>>2]=x;O=Y^O;o[T>>2]=O;R=V^R;o[k>>2]=R;S=G^S;o[E>>2]=S;w=q^w;o[A>>2]=w;Z=j^Z;o[f>>2]=Z;c=fe^c;o[b>>2]=c;se=be^se;o[v>>2]=se;be=Ss((n^2)&255|0,0,-1,-1)|0;be=Cs(be|0,I|0,63)|0;be=0-be|0;fe=(o[1344+(t*960|0)+124>>2]^_e)&be;j=(o[1344+(t*960|0)+128>>2]^me)&be;q=(o[1344+(t*960|0)+132>>2]^ge)&be;G=(o[1344+(t*960|0)+136>>2]^pe)&be;V=(o[1344+(t*960|0)+140>>2]^he)&be;Y=(o[1344+(t*960|0)+144>>2]^de)&be;te=(o[1344+(t*960|0)+148>>2]^le)&be;ie=(o[1344+(t*960|0)+152>>2]^ue)&be;ve=(o[1344+(t*960|0)+156>>2]^ce)&be;ye=(o[1344+(t*960|0)+120>>2]^ye)&be^ye;o[e>>2]=ye;_e=fe^_e;o[r>>2]=_e;me=j^me;o[u>>2]=me;ge=q^ge;o[l>>2]=ge;pe=G^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;le=te^le;o[g>>2]=le;ue=ie^ue;o[m>>2]=ue;ce=ve^ce;o[_>>2]=ce;ve=(o[1344+(t*960|0)+164>>2]^oe)&be;ie=(o[1344+(t*960|0)+168>>2]^re)&be;te=(o[1344+(t*960|0)+172>>2]^ee)&be;Y=(o[1344+(t*960|0)+176>>2]^J)&be;V=(o[1344+(t*960|0)+180>>2]^W)&be;G=(o[1344+(t*960|0)+184>>2]^H)&be;q=(o[1344+(t*960|0)+188>>2]^K)&be;j=(o[1344+(t*960|0)+192>>2]^L)&be;fe=(o[1344+(t*960|0)+196>>2]^N)&be;ae=(o[1344+(t*960|0)+160>>2]^ae)&be^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=G^H;o[z>>2]=H;K=q^K;o[F>>2]=K;L=j^L;o[U>>2]=L;N=fe^N;o[B>>2]=N;fe=(o[1344+(t*960|0)+204>>2]^P)&be;j=(o[1344+(t*960|0)+208>>2]^x)&be;q=(o[1344+(t*960|0)+212>>2]^O)&be;G=(o[1344+(t*960|0)+216>>2]^R)&be;V=(o[1344+(t*960|0)+220>>2]^S)&be;Y=(o[1344+(t*960|0)+224>>2]^w)&be;te=(o[1344+(t*960|0)+228>>2]^Z)&be;ie=(o[1344+(t*960|0)+232>>2]^c)&be;ve=(o[1344+(t*960|0)+236>>2]^se)&be;D=(o[1344+(t*960|0)+200>>2]^D)&be^D;o[a>>2]=D;P=fe^P;o[M>>2]=P;x=j^x;o[C>>2]=x;O=q^O;o[T>>2]=O;R=G^R;o[k>>2]=R;S=V^S;o[E>>2]=S;w=Y^w;o[A>>2]=w;Z=te^Z;o[f>>2]=Z;c=ie^c;o[b>>2]=c;se=ve^se;o[v>>2]=se;ve=Ss((n^3)&255|0,0,-1,-1)|0;ve=Cs(ve|0,I|0,63)|0;ve=0-ve|0;ie=(o[1344+(t*960|0)+244>>2]^_e)&ve;te=(o[1344+(t*960|0)+248>>2]^me)&ve;Y=(o[1344+(t*960|0)+252>>2]^ge)&ve;V=(o[1344+(t*960|0)+256>>2]^pe)&ve;G=(o[1344+(t*960|0)+260>>2]^he)&ve;q=(o[1344+(t*960|0)+264>>2]^de)&ve;j=(o[1344+(t*960|0)+268>>2]^le)&ve;fe=(o[1344+(t*960|0)+272>>2]^ue)&ve;be=(o[1344+(t*960|0)+276>>2]^ce)&ve;ye=(o[1344+(t*960|0)+240>>2]^ye)&ve^ye;o[e>>2]=ye;_e=ie^_e;o[r>>2]=_e;me=te^me;o[u>>2]=me;ge=Y^ge;o[l>>2]=ge;pe=V^pe;o[d>>2]=pe;he=G^he;o[h>>2]=he;de=q^de;o[p>>2]=de;le=j^le;o[g>>2]=le;ue=fe^ue;o[m>>2]=ue;ce=be^ce;o[_>>2]=ce;be=(o[1344+(t*960|0)+284>>2]^oe)&ve;fe=(o[1344+(t*960|0)+288>>2]^re)&ve;j=(o[1344+(t*960|0)+292>>2]^ee)&ve;q=(o[1344+(t*960|0)+296>>2]^J)&ve;G=(o[1344+(t*960|0)+300>>2]^W)&ve;V=(o[1344+(t*960|0)+304>>2]^H)&ve;Y=(o[1344+(t*960|0)+308>>2]^K)&ve;te=(o[1344+(t*960|0)+312>>2]^L)&ve;ie=(o[1344+(t*960|0)+316>>2]^N)&ve;ae=(o[1344+(t*960|0)+280>>2]^ae)&ve^ae;o[i>>2]=ae;oe=be^oe;o[s>>2]=oe;re=fe^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=q^J;o[X>>2]=J;W=G^W;o[Q>>2]=W;H=V^H;o[z>>2]=H;K=Y^K;o[F>>2]=K;L=te^L;o[U>>2]=L;N=ie^N;o[B>>2]=N;ie=(o[1344+(t*960|0)+324>>2]^P)&ve;te=(o[1344+(t*960|0)+328>>2]^x)&ve;Y=(o[1344+(t*960|0)+332>>2]^O)&ve;V=(o[1344+(t*960|0)+336>>2]^R)&ve;G=(o[1344+(t*960|0)+340>>2]^S)&ve;q=(o[1344+(t*960|0)+344>>2]^w)&ve;j=(o[1344+(t*960|0)+348>>2]^Z)&ve;fe=(o[1344+(t*960|0)+352>>2]^c)&ve;be=(o[1344+(t*960|0)+356>>2]^se)&ve;D=(o[1344+(t*960|0)+320>>2]^D)&ve^D;o[a>>2]=D;P=ie^P;o[M>>2]=P;x=te^x;o[C>>2]=x;O=Y^O;o[T>>2]=O;R=V^R;o[k>>2]=R;S=G^S;o[E>>2]=S;w=q^w;o[A>>2]=w;Z=j^Z;o[f>>2]=Z;c=fe^c;o[b>>2]=c;se=be^se;o[v>>2]=se;be=Ss((n^4)&255|0,0,-1,-1)|0;be=Cs(be|0,I|0,63)|0;be=0-be|0;fe=(o[1344+(t*960|0)+364>>2]^_e)&be;j=(o[1344+(t*960|0)+368>>2]^me)&be;q=(o[1344+(t*960|0)+372>>2]^ge)&be;G=(o[1344+(t*960|0)+376>>2]^pe)&be;V=(o[1344+(t*960|0)+380>>2]^he)&be;Y=(o[1344+(t*960|0)+384>>2]^de)&be;te=(o[1344+(t*960|0)+388>>2]^le)&be;ie=(o[1344+(t*960|0)+392>>2]^ue)&be;ve=(o[1344+(t*960|0)+396>>2]^ce)&be;ye=(o[1344+(t*960|0)+360>>2]^ye)&be^ye;o[e>>2]=ye;_e=fe^_e;o[r>>2]=_e;me=j^me;o[u>>2]=me;ge=q^ge;o[l>>2]=ge;pe=G^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;le=te^le;o[g>>2]=le;ue=ie^ue;o[m>>2]=ue;ce=ve^ce;o[_>>2]=ce;ve=(o[1344+(t*960|0)+404>>2]^oe)&be;ie=(o[1344+(t*960|0)+408>>2]^re)&be;te=(o[1344+(t*960|0)+412>>2]^ee)&be;Y=(o[1344+(t*960|0)+416>>2]^J)&be;V=(o[1344+(t*960|0)+420>>2]^W)&be;G=(o[1344+(t*960|0)+424>>2]^H)&be;q=(o[1344+(t*960|0)+428>>2]^K)&be;j=(o[1344+(t*960|0)+432>>2]^L)&be;fe=(o[1344+(t*960|0)+436>>2]^N)&be;ae=(o[1344+(t*960|0)+400>>2]^ae)&be^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=G^H;o[z>>2]=H;K=q^K;o[F>>2]=K;L=j^L;o[U>>2]=L;N=fe^N;o[B>>2]=N;fe=(o[1344+(t*960|0)+444>>2]^P)&be;j=(o[1344+(t*960|0)+448>>2]^x)&be;q=(o[1344+(t*960|0)+452>>2]^O)&be;G=(o[1344+(t*960|0)+456>>2]^R)&be;V=(o[1344+(t*960|0)+460>>2]^S)&be;Y=(o[1344+(t*960|0)+464>>2]^w)&be;te=(o[1344+(t*960|0)+468>>2]^Z)&be;ie=(o[1344+(t*960|0)+472>>2]^c)&be;ve=(o[1344+(t*960|0)+476>>2]^se)&be;D=(o[1344+(t*960|0)+440>>2]^D)&be^D;o[a>>2]=D;P=fe^P;o[M>>2]=P;x=j^x;o[C>>2]=x;O=q^O;o[T>>2]=O;R=G^R;o[k>>2]=R;S=V^S;o[E>>2]=S;w=Y^w;o[A>>2]=w;Z=te^Z;o[f>>2]=Z;c=ie^c;o[b>>2]=c;se=ve^se;o[v>>2]=se;ve=Ss((n^5)&255|0,0,-1,-1)|0;ve=Cs(ve|0,I|0,63)|0;ve=0-ve|0;ie=(o[1344+(t*960|0)+484>>2]^_e)&ve;te=(o[1344+(t*960|0)+488>>2]^me)&ve;Y=(o[1344+(t*960|0)+492>>2]^ge)&ve;V=(o[1344+(t*960|0)+496>>2]^pe)&ve;G=(o[1344+(t*960|0)+500>>2]^he)&ve;q=(o[1344+(t*960|0)+504>>2]^de)&ve;j=(o[1344+(t*960|0)+508>>2]^le)&ve;fe=(o[1344+(t*960|0)+512>>2]^ue)&ve;be=(o[1344+(t*960|0)+516>>2]^ce)&ve;ye=(o[1344+(t*960|0)+480>>2]^ye)&ve^ye;o[e>>2]=ye;_e=ie^_e;o[r>>2]=_e;me=te^me;o[u>>2]=me;ge=Y^ge;o[l>>2]=ge;pe=V^pe;o[d>>2]=pe;he=G^he;o[h>>2]=he;de=q^de;o[p>>2]=de;le=j^le;o[g>>2]=le;ue=fe^ue;o[m>>2]=ue;ce=be^ce;o[_>>2]=ce;be=(o[1344+(t*960|0)+524>>2]^oe)&ve;fe=(o[1344+(t*960|0)+528>>2]^re)&ve;j=(o[1344+(t*960|0)+532>>2]^ee)&ve;q=(o[1344+(t*960|0)+536>>2]^J)&ve;G=(o[1344+(t*960|0)+540>>2]^W)&ve;V=(o[1344+(t*960|0)+544>>2]^H)&ve;Y=(o[1344+(t*960|0)+548>>2]^K)&ve;te=(o[1344+(t*960|0)+552>>2]^L)&ve;ie=(o[1344+(t*960|0)+556>>2]^N)&ve;ae=(o[1344+(t*960|0)+520>>2]^ae)&ve^ae;o[i>>2]=ae;oe=be^oe;o[s>>2]=oe;re=fe^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=q^J;o[X>>2]=J;W=G^W;o[Q>>2]=W;H=V^H;o[z>>2]=H;K=Y^K;o[F>>2]=K;L=te^L;o[U>>2]=L;N=ie^N;o[B>>2]=N;ie=(o[1344+(t*960|0)+564>>2]^P)&ve;te=(o[1344+(t*960|0)+568>>2]^x)&ve;Y=(o[1344+(t*960|0)+572>>2]^O)&ve;V=(o[1344+(t*960|0)+576>>2]^R)&ve;G=(o[1344+(t*960|0)+580>>2]^S)&ve;q=(o[1344+(t*960|0)+584>>2]^w)&ve;j=(o[1344+(t*960|0)+588>>2]^Z)&ve;fe=(o[1344+(t*960|0)+592>>2]^c)&ve;be=(o[1344+(t*960|0)+596>>2]^se)&ve;D=(o[1344+(t*960|0)+560>>2]^D)&ve^D;o[a>>2]=D;P=ie^P;o[M>>2]=P;x=te^x;o[C>>2]=x;O=Y^O;o[T>>2]=O;R=V^R;o[k>>2]=R;S=G^S;o[E>>2]=S;w=q^w;o[A>>2]=w;Z=j^Z;o[f>>2]=Z;c=fe^c;o[b>>2]=c;se=be^se;o[v>>2]=se;be=Ss((n^6)&255|0,0,-1,-1)|0;be=Cs(be|0,I|0,63)|0;be=0-be|0;fe=(o[1344+(t*960|0)+604>>2]^_e)&be;j=(o[1344+(t*960|0)+608>>2]^me)&be;q=(o[1344+(t*960|0)+612>>2]^ge)&be;G=(o[1344+(t*960|0)+616>>2]^pe)&be;V=(o[1344+(t*960|0)+620>>2]^he)&be;Y=(o[1344+(t*960|0)+624>>2]^de)&be;te=(o[1344+(t*960|0)+628>>2]^le)&be;ie=(o[1344+(t*960|0)+632>>2]^ue)&be;ve=(o[1344+(t*960|0)+636>>2]^ce)&be;ye=(o[1344+(t*960|0)+600>>2]^ye)&be^ye;o[e>>2]=ye;_e=fe^_e;o[r>>2]=_e;me=j^me;o[u>>2]=me;ge=q^ge;o[l>>2]=ge;pe=G^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;le=te^le;o[g>>2]=le;ue=ie^ue;o[m>>2]=ue;ce=ve^ce;o[_>>2]=ce;ve=(o[1344+(t*960|0)+644>>2]^oe)&be;ie=(o[1344+(t*960|0)+648>>2]^re)&be;te=(o[1344+(t*960|0)+652>>2]^ee)&be;Y=(o[1344+(t*960|0)+656>>2]^J)&be;V=(o[1344+(t*960|0)+660>>2]^W)&be;G=(o[1344+(t*960|0)+664>>2]^H)&be;q=(o[1344+(t*960|0)+668>>2]^K)&be;j=(o[1344+(t*960|0)+672>>2]^L)&be;fe=(o[1344+(t*960|0)+676>>2]^N)&be;ae=(o[1344+(t*960|0)+640>>2]^ae)&be^ae;o[i>>2]=ae;oe=ve^oe;o[s>>2]=oe;re=ie^re;o[ne>>2]=re;ee=te^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=G^H;o[z>>2]=H;K=q^K;o[F>>2]=K;L=j^L;o[U>>2]=L;N=fe^N;o[B>>2]=N;fe=(o[1344+(t*960|0)+684>>2]^P)&be;j=(o[1344+(t*960|0)+688>>2]^x)&be;q=(o[1344+(t*960|0)+692>>2]^O)&be;G=(o[1344+(t*960|0)+696>>2]^R)&be;V=(o[1344+(t*960|0)+700>>2]^S)&be;Y=(o[1344+(t*960|0)+704>>2]^w)&be;te=(o[1344+(t*960|0)+708>>2]^Z)&be;ie=(o[1344+(t*960|0)+712>>2]^c)&be;ve=(o[1344+(t*960|0)+716>>2]^se)&be;D=(o[1344+(t*960|0)+680>>2]^D)&be^D;o[a>>2]=D;P=fe^P;o[M>>2]=P;x=j^x;o[C>>2]=x;O=q^O;o[T>>2]=O;R=G^R;o[k>>2]=R;S=V^S;o[E>>2]=S;w=Y^w;o[A>>2]=w;Z=te^Z;o[f>>2]=Z;c=ie^c;o[b>>2]=c;se=ve^se;o[v>>2]=se;ve=Ss((n^7)&255|0,0,-1,-1)|0;ve=Cs(ve|0,I|0,63)|0;ve=0-ve|0;ie=(o[1344+(t*960|0)+724>>2]^_e)&ve;te=(o[1344+(t*960|0)+728>>2]^me)&ve;Y=(o[1344+(t*960|0)+732>>2]^ge)&ve;V=(o[1344+(t*960|0)+736>>2]^pe)&ve;G=(o[1344+(t*960|0)+740>>2]^he)&ve;q=(o[1344+(t*960|0)+744>>2]^de)&ve;j=(o[1344+(t*960|0)+748>>2]^le)&ve;fe=(o[1344+(t*960|0)+752>>2]^ue)&ve;be=(o[1344+(t*960|0)+756>>2]^ce)&ve;ye=(o[1344+(t*960|0)+720>>2]^ye)&ve^ye;o[e>>2]=ye;_e=ie^_e;o[r>>2]=_e;me=te^me;o[u>>2]=me;ge=Y^ge;o[l>>2]=ge;pe=V^pe;o[d>>2]=pe;he=G^he;o[h>>2]=he;de=q^de;o[p>>2]=de;le=j^le;o[g>>2]=le;ue=fe^ue;o[m>>2]=ue;ce=be^ce;o[_>>2]=ce;be=(o[1344+(t*960|0)+764>>2]^oe)&ve;fe=(o[1344+(t*960|0)+768>>2]^re)&ve;j=(o[1344+(t*960|0)+772>>2]^ee)&ve;q=(o[1344+(t*960|0)+776>>2]^J)&ve;G=(o[1344+(t*960|0)+780>>2]^W)&ve;V=(o[1344+(t*960|0)+784>>2]^H)&ve;Y=(o[1344+(t*960|0)+788>>2]^K)&ve;te=(o[1344+(t*960|0)+792>>2]^L)&ve;ie=(o[1344+(t*960|0)+796>>2]^N)&ve;ae=(o[1344+(t*960|0)+760>>2]^ae)&ve^ae;o[i>>2]=ae;oe=be^oe;o[s>>2]=oe;re=fe^re;o[ne>>2]=re;ee=j^ee;o[$>>2]=ee;J=q^J;o[X>>2]=J;W=G^W;o[Q>>2]=W;H=V^H;o[z>>2]=H;K=Y^K;o[F>>2]=K;L=te^L;o[U>>2]=L;N=ie^N;o[B>>2]=N;ie=(o[1344+(t*960|0)+804>>2]^P)&ve;te=(o[1344+(t*960|0)+808>>2]^x)&ve;Y=(o[1344+(t*960|0)+812>>2]^O)&ve;V=(o[1344+(t*960|0)+816>>2]^R)&ve;G=(o[1344+(t*960|0)+820>>2]^S)&ve;q=(o[1344+(t*960|0)+824>>2]^w)&ve;j=(o[1344+(t*960|0)+828>>2]^Z)&ve;fe=(o[1344+(t*960|0)+832>>2]^c)&ve;be=(o[1344+(t*960|0)+836>>2]^se)&ve;D=(o[1344+(t*960|0)+800>>2]^D)&ve^D;o[a>>2]=D;P=ie^P;o[M>>2]=P;x=te^x;o[C>>2]=x;O=Y^O;o[T>>2]=O;R=V^R;o[k>>2]=R;S=G^S;o[E>>2]=S;w=q^w;o[A>>2]=w;Z=j^Z;o[f>>2]=Z;c=fe^c;o[b>>2]=c;se=be^se;o[v>>2]=se;be=Ss((n^8)&255|0,0,-1,-1)|0;be=Cs(be|0,I|0,63)|0;be=0-be|0;fe=(o[1344+(t*960|0)+844>>2]^_e)&be;j=(o[1344+(t*960|0)+848>>2]^me)&be;q=(o[1344+(t*960|0)+852>>2]^ge)&be;G=(o[1344+(t*960|0)+856>>2]^pe)&be;V=(o[1344+(t*960|0)+860>>2]^he)&be;Y=(o[1344+(t*960|0)+864>>2]^de)&be;n=(o[1344+(t*960|0)+868>>2]^le)&be;te=(o[1344+(t*960|0)+872>>2]^ue)&be;ie=(o[1344+(t*960|0)+876>>2]^ce)&be;ye=(o[1344+(t*960|0)+840>>2]^ye)&be^ye;o[e>>2]=ye;_e=fe^_e;o[r>>2]=_e;me=j^me;o[u>>2]=me;ge=q^ge;o[l>>2]=ge;pe=G^pe;o[d>>2]=pe;he=V^he;o[h>>2]=he;de=Y^de;o[p>>2]=de;le=n^le;o[g>>2]=le;ue=te^ue;o[m>>2]=ue;ce=ie^ce;o[_>>2]=ce;ie=(o[1344+(t*960|0)+884>>2]^oe)&be;te=(o[1344+(t*960|0)+888>>2]^re)&be;n=(o[1344+(t*960|0)+892>>2]^ee)&be;Y=(o[1344+(t*960|0)+896>>2]^J)&be;V=(o[1344+(t*960|0)+900>>2]^W)&be;G=(o[1344+(t*960|0)+904>>2]^H)&be;q=(o[1344+(t*960|0)+908>>2]^K)&be;j=(o[1344+(t*960|0)+912>>2]^L)&be;fe=(o[1344+(t*960|0)+916>>2]^N)&be;ae=(o[1344+(t*960|0)+880>>2]^ae)&be^ae;o[i>>2]=ae;oe=ie^oe;o[s>>2]=oe;re=te^re;o[ne>>2]=re;ee=n^ee;o[$>>2]=ee;J=Y^J;o[X>>2]=J;W=V^W;o[Q>>2]=W;H=G^H;o[z>>2]=H;K=q^K;o[F>>2]=K;L=j^L;o[U>>2]=L;N=fe^N;o[B>>2]=N;fe=(o[1344+(t*960|0)+924>>2]^P)&be;j=(o[1344+(t*960|0)+928>>2]^x)&be;q=(o[1344+(t*960|0)+932>>2]^O)&be;G=(o[1344+(t*960|0)+936>>2]^R)&be;V=(o[1344+(t*960|0)+940>>2]^S)&be;Y=(o[1344+(t*960|0)+944>>2]^w)&be;n=(o[1344+(t*960|0)+948>>2]^Z)&be;te=(o[1344+(t*960|0)+952>>2]^c)&be;ie=(o[1344+(t*960|0)+956>>2]^se)&be;D=(o[1344+(t*960|0)+920>>2]^D)&be^D;o[a>>2]=D;P=fe^P;o[M>>2]=P;x=j^x;o[C>>2]=x;O=q^O;o[T>>2]=O;R=G^R;o[k>>2]=R;S=V^S;o[E>>2]=S;w=Y^w;o[A>>2]=w;n=n^Z;o[f>>2]=n;c=te^c;o[b>>2]=c;t=ie^se;o[v>>2]=t;se=o[r>>2]|0;ie=o[u>>2]|0;te=o[l>>2]|0;Z=o[d>>2]|0;Y=o[h>>2]|0;V=o[p>>2]|0;G=o[g>>2]|0;q=o[m>>2]|0;j=o[_>>2]|0;fe=(ae^ye)&y;o[e>>2]=fe^ye;o[r>>2]=(oe^_e)&y^_e;o[u>>2]=(re^me)&y^me;o[l>>2]=(ee^ge)&y^ge;o[d>>2]=(J^pe)&y^pe;o[h>>2]=(W^he)&y^he;o[p>>2]=(H^de)&y^de;o[g>>2]=(K^le)&y^le;o[m>>2]=(L^ue)&y^ue;o[_>>2]=(N^ce)&y^ce;o[i>>2]=fe^ae;o[s>>2]=(se^oe)&y^oe;o[ne>>2]=(ie^re)&y^re;o[$>>2]=(te^ee)&y^ee;o[X>>2]=(Z^J)&y^J;o[Q>>2]=(Y^W)&y^W;o[z>>2]=(V^H)&y^H;o[F>>2]=(G^K)&y^K;o[U>>2]=(q^L)&y^L;o[B>>2]=(j^N)&y^N;o[a>>2]=(D^0-D)&y^D;o[M>>2]=(P^0-P)&y^P;o[C>>2]=(x^0-x)&y^x;o[T>>2]=(O^0-O)&y^O;o[k>>2]=(R^0-R)&y^R;o[E>>2]=(S^0-S)&y^S;o[A>>2]=(w^0-w)&y^w;o[f>>2]=(n^0-n)&y^n;o[b>>2]=(c^0-c)&y^c;o[v>>2]=(t^0-t)&y^t;return}function hi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0,a=0,f=0,c=0;i=h;h=h+336|0;o=i+144|0;f=i+96|0;s=i+48|0;a=i;c=i+176|0;pi(n,32,t)|0;r[t>>0]=r[t>>0]&-8;n=t+31|0;r[n>>0]=r[n>>0]&63|64;li(c,t);Wr(f,c+80|0);Xr(s,c,f);Xr(a,c+40|0,f);Jr(e,a);Jr(o,s);n=e+31|0;r[n>>0]=r[n>>0]^r[o>>0]<<7&255;h=i;return}function pi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0,u=0,l=0;l=h;h=h+208|0;f=l;c=f+72|0;o[c>>2]=0;u=f;o[u>>2]=0;o[u+4>>2]=0;u=f+8|0;o[u>>2]=-205731576;o[u+4>>2]=1779033703;u=f+16|0;o[u>>2]=-2067093701;o[u+4>>2]=-1150833019;u=f+24|0;o[u>>2]=-23791573;o[u+4>>2]=1013904242;u=f+32|0;o[u>>2]=1595750129;o[u+4>>2]=-1521486534;u=f+40|0;o[u>>2]=-1377402159;o[u+4>>2]=1359893119;u=f+48|0;o[u>>2]=725511199;o[u+4>>2]=-1694144372;u=f+56|0;o[u>>2]=-79577749;o[u+4>>2]=528734635;u=f+64|0;o[u>>2]=327033209;o[u+4>>2]=1541459225;if(!e){u=1;h=l;return u|0}e:do{if(t|0){u=f+76|0;s=0;while(1){if(!((s|0)==0&t>>>0>127)){a=128-s|0;a=t>>>0>>0?t:a;if(a|0){i=0;do{r[i+s+(f+76)>>0]=r[e+i>>0]|0;i=i+1|0}while(i>>>0>>0)}s=s+a|0;o[c>>2]=s;e=e+a|0;t=t-a|0;if((s|0)==128){gi(f,u);s=f;s=Ss(o[s>>2]|0,o[s+4>>2]|0,1024,0)|0;a=f;o[a>>2]=s;o[a+4>>2]=I;o[c>>2]=0}}else{gi(f,e);s=f;s=Ss(o[s>>2]|0,o[s+4>>2]|0,1024,0)|0;a=f;o[a>>2]=s;o[a+4>>2]=I;t=t+-128|0;e=e+128|0}if(!t)break e;s=o[c>>2]|0}}}while(0);u=mi(f,n)|0;h=l;return u|0}function gi(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0;E=h;h=h+704|0;a=E+640|0;A=E;w=e+8|0;n=a;r=w;i=n+64|0;do{o[n>>2]=o[r>>2];n=n+4|0;r=r+4|0}while((n|0)<(i|0));n=0;do{y=t+(n<<3)|0;d=xs(s[y>>0]|0|0,0,56)|0;b=I;l=xs(s[y+1>>0]|0|0,0,48)|0;b=I|b;p=xs(s[y+2>>0]|0|0,0,40)|0;b=b|I|(s[y+3>>0]|0);g=xs(s[y+4>>0]|0|0,0,24)|0;b=b|I;m=xs(s[y+5>>0]|0|0,0,16)|0;b=b|I;_=xs(s[y+6>>0]|0|0,0,8)|0;v=A+(n<<3)|0;o[v>>2]=l|d|p|g|m|_|(s[y+7>>0]|0);o[v+4>>2]=b|I;n=n+1|0}while((n|0)!=16);i=A;n=16;r=o[i>>2]|0;i=o[i+4>>2]|0;do{u=A+(n+-2<<3)|0;S=o[u>>2]|0;u=o[u+4>>2]|0;l=Cs(S|0,u|0,19)|0;p=I;d=xs(S|0,u|0,45)|0;p=p|I;f=Cs(S|0,u|0,61)|0;t=I;c=xs(S|0,u|0,3)|0;t=t|I;u=Cs(S|0,u|0,6)|0;p=t^I^p;t=A+(n+-7<<3)|0;S=o[t>>2]|0;t=o[t+4>>2]|0;y=A+(n+-15<<3)|0;R=r;r=o[y>>2]|0;k=i;i=o[y+4>>2]|0;y=Cs(r|0,i|0,1)|0;b=I;v=xs(r|0,i|0,63)|0;b=b|I;g=Cs(r|0,i|0,8)|0;T=I;m=xs(r|0,i|0,56)|0;T=T|I;_=Cs(r|0,i|0,7)|0;b=T^I^b;t=Ss(R|0,k|0,S|0,t|0)|0;p=Ss(t|0,I|0,(f|c)^u^(l|d)|0,p|0)|0;b=Ss(p|0,I|0,(g|m)^_^(y|v)|0,b|0)|0;v=A+(n<<3)|0;o[v>>2]=b;o[v+4>>2]=I;n=n+1|0}while((n|0)!=80);l=a+56|0;i=a+32|0;f=a+48|0;c=a+40|0;p=a;m=a+8|0;y=a+16|0;v=a+24|0;n=0;r=o[i>>2]|0;i=o[i+4>>2]|0;t=o[f>>2]|0;a=o[c>>2]|0;f=o[f+4>>2]|0;c=o[c+4>>2]|0;u=o[l>>2]|0;l=o[l+4>>2]|0;d=o[p>>2]|0;p=o[p+4>>2]|0;g=o[m>>2]|0;m=o[m+4>>2]|0;_=o[y>>2]|0;y=o[y+4>>2]|0;b=o[v>>2]|0;v=o[v+4>>2]|0;do{k=Cs(r|0,i|0,14)|0;Q=I;R=xs(r|0,i|0,50)|0;Q=Q|I;Y=Cs(r|0,i|0,18)|0;K=I;L=xs(r|0,i|0,46)|0;K=Q^(K|I);Q=Cs(r|0,i|0,41)|0;V=I;B=xs(r|0,i|0,23)|0;V=K^(V|I);K=32064+(n<<3)|0;x=A+(n<<3)|0;N=o[x>>2]|0;x=o[x+4>>2]|0;K=Ss(o[K>>2]|0,o[K+4>>2]|0,u|0,l|0)|0;V=Ss(K|0,I|0,(k|R)^(Y|L)^(Q|B)|0,V|0)|0;x=Ss(V|0,I|0,N|0,x|0)|0;x=Ss(x|0,I|0,(a^t)&r^t|0,(c^f)&i^f|0)|0;N=I;V=Cs(d|0,p|0,28)|0;B=I;Q=xs(d|0,p|0,36)|0;B=B|I;L=Cs(d|0,p|0,34)|0;Y=I;R=xs(d|0,p|0,30)|0;Y=B^(Y|I);B=Cs(d|0,p|0,39)|0;k=I;K=xs(d|0,p|0,25)|0;k=Y^(k|I);Y=Ss(b|0,v|0,x|0,N|0)|0;q=I;N=Ss((g|d)&_|g&d|0,(m|p)&y|m&p|0,x|0,N|0)|0;k=Ss(N|0,I|0,(V|Q)^(L|R)^(B|K)|0,k|0)|0;K=I;B=Cs(Y|0,q|0,14)|0;R=I;L=xs(Y|0,q|0,50)|0;R=R|I;Q=Cs(Y|0,q|0,18)|0;V=I;N=xs(Y|0,q|0,46)|0;V=R^(V|I);R=Cs(Y|0,q|0,41)|0;x=I;T=xs(Y|0,q|0,23)|0;x=V^(x|I);V=n|1;H=32064+(V<<3)|0;P=o[H>>2]|0;H=o[H+4>>2]|0;V=A+(V<<3)|0;j=o[V>>2]|0;V=o[V+4>>2]|0;M=Ss(Y&(a^r)^a|0,q&(c^i)^c|0,t|0,f|0)|0;H=Ss(M|0,I|0,P|0,H|0)|0;V=Ss(H|0,I|0,j|0,V|0)|0;x=Ss(V|0,I|0,(B|L)^(Q|N)^(R|T)|0,x|0)|0;T=I;R=Cs(k|0,K|0,28)|0;N=I;Q=xs(k|0,K|0,36)|0;N=N|I;L=Cs(k|0,K|0,34)|0;B=I;V=xs(k|0,K|0,30)|0;B=N^(B|I);N=Cs(k|0,K|0,39)|0;j=I;H=xs(k|0,K|0,25)|0;j=Ss((R|Q)^(L|V)^(N|H)|0,B^(j|I)|0,(k|d)&g|k&d|0,(K|p)&m|K&p|0)|0;B=I;H=Ss(x|0,T|0,_|0,y|0)|0;N=I;T=Ss(j|0,B|0,x|0,T|0)|0;x=I;B=Cs(H|0,N|0,14)|0;j=I;V=xs(H|0,N|0,50)|0;j=j|I;L=Cs(H|0,N|0,18)|0;Q=I;R=xs(H|0,N|0,46)|0;Q=j^(Q|I);j=Cs(H|0,N|0,41)|0;P=I;M=xs(H|0,N|0,23)|0;P=Q^(P|I);Q=n|2;F=32064+(Q<<3)|0;Q=A+(Q<<3)|0;D=o[Q>>2]|0;Q=o[Q+4>>2]|0;F=Ss(o[F>>2]|0,o[F+4>>2]|0,a|0,c|0)|0;Q=Ss(F|0,I|0,D|0,Q|0)|0;Q=Ss(Q|0,I|0,H&(Y^r)^r|0,N&(q^i)^i|0)|0;P=Ss(Q|0,I|0,(B|V)^(L|R)^(j|M)|0,P|0)|0;M=I;j=Cs(T|0,x|0,28)|0;R=I;L=xs(T|0,x|0,36)|0;R=R|I;V=Cs(T|0,x|0,34)|0;B=I;Q=xs(T|0,x|0,30)|0;B=R^(B|I);R=Cs(T|0,x|0,39)|0;D=I;F=xs(T|0,x|0,25)|0;D=Ss((j|L)^(V|Q)^(R|F)|0,B^(D|I)|0,(T|k)&d|T&k|0,(x|K)&p|x&K|0)|0;B=I;F=Ss(P|0,M|0,g|0,m|0)|0;R=I;M=Ss(D|0,B|0,P|0,M|0)|0;P=I;B=Cs(F|0,R|0,14)|0;D=I;Q=xs(F|0,R|0,50)|0;D=D|I;V=Cs(F|0,R|0,18)|0;L=I;j=xs(F|0,R|0,46)|0;L=D^(L|I);D=Cs(F|0,R|0,41)|0;O=I;C=xs(F|0,R|0,23)|0;O=L^(O|I);L=n|3;U=32064+(L<<3)|0;L=A+(L<<3)|0;W=o[L>>2]|0;L=o[L+4>>2]|0;U=Ss(o[U>>2]|0,o[U+4>>2]|0,r|0,i|0)|0;L=Ss(U|0,I|0,W|0,L|0)|0;L=Ss(L|0,I|0,F&(H^Y)^Y|0,R&(N^q)^q|0)|0;O=Ss(L|0,I|0,(B|Q)^(V|j)^(D|C)|0,O|0)|0;C=I;D=Cs(M|0,P|0,28)|0;j=I;V=xs(M|0,P|0,36)|0;j=j|I;Q=Cs(M|0,P|0,34)|0;B=I;L=xs(M|0,P|0,30)|0;B=j^(B|I);j=Cs(M|0,P|0,39)|0;W=I;U=xs(M|0,P|0,25)|0;W=Ss((D|V)^(Q|L)^(j|U)|0,B^(W|I)|0,(M|T)&k|M&T|0,(P|x)&K|P&x|0)|0;B=I;U=Ss(O|0,C|0,d|0,p|0)|0;j=I;C=Ss(W|0,B|0,O|0,C|0)|0;O=I;B=Cs(U|0,j|0,14)|0;W=I;L=xs(U|0,j|0,50)|0;W=W|I;Q=Cs(U|0,j|0,18)|0;V=I;D=xs(U|0,j|0,46)|0;V=W^(V|I);W=Cs(U|0,j|0,41)|0;z=I;S=xs(U|0,j|0,23)|0;z=V^(z|I);V=n|4;X=32064+(V<<3)|0;V=A+(V<<3)|0;G=o[V>>2]|0;V=o[V+4>>2]|0;q=Ss(o[X>>2]|0,o[X+4>>2]|0,Y|0,q|0)|0;V=Ss(q|0,I|0,G|0,V|0)|0;V=Ss(V|0,I|0,U&(F^H)^H|0,j&(R^N)^N|0)|0;z=Ss(V|0,I|0,(B|L)^(Q|D)^(W|S)|0,z|0)|0;S=I;W=Cs(C|0,O|0,28)|0;D=I;Q=xs(C|0,O|0,36)|0;D=D|I;L=Cs(C|0,O|0,34)|0;B=I;V=xs(C|0,O|0,30)|0;B=D^(B|I);D=Cs(C|0,O|0,39)|0;G=I;q=xs(C|0,O|0,25)|0;G=Ss((W|Q)^(L|V)^(D|q)|0,B^(G|I)|0,(C|M)&T|C&M|0,(O|P)&x|O&P|0)|0;B=I;u=Ss(z|0,S|0,k|0,K|0)|0;l=I;b=Ss(G|0,B|0,z|0,S|0)|0;v=I;S=Cs(u|0,l|0,14)|0;z=I;B=xs(u|0,l|0,50)|0;z=z|I;G=Cs(u|0,l|0,18)|0;K=I;k=xs(u|0,l|0,46)|0;K=z^(K|I);z=Cs(u|0,l|0,41)|0;q=I;D=xs(u|0,l|0,23)|0;q=K^(q|I);K=n|5;V=32064+(K<<3)|0;K=A+(K<<3)|0;L=o[K>>2]|0;K=o[K+4>>2]|0;N=Ss(o[V>>2]|0,o[V+4>>2]|0,H|0,N|0)|0;K=Ss(N|0,I|0,L|0,K|0)|0;K=Ss(K|0,I|0,u&(U^F)^F|0,l&(j^R)^R|0)|0;q=Ss(K|0,I|0,(S|B)^(G|k)^(z|D)|0,q|0)|0;D=I;z=Cs(b|0,v|0,28)|0;k=I;G=xs(b|0,v|0,36)|0;k=k|I;B=Cs(b|0,v|0,34)|0;S=I;K=xs(b|0,v|0,30)|0;S=k^(S|I);k=Cs(b|0,v|0,39)|0;L=I;N=xs(b|0,v|0,25)|0;L=Ss((z|G)^(B|K)^(k|N)|0,S^(L|I)|0,(b|C)&M|b&C|0,(v|O)&P|v&O|0)|0;S=I;t=Ss(q|0,D|0,T|0,x|0)|0;f=I;_=Ss(L|0,S|0,q|0,D|0)|0;y=I;D=Cs(t|0,f|0,14)|0;q=I;S=xs(t|0,f|0,50)|0;q=q|I;L=Cs(t|0,f|0,18)|0;x=I;T=xs(t|0,f|0,46)|0;x=q^(x|I);q=Cs(t|0,f|0,41)|0;N=I;k=xs(t|0,f|0,23)|0;N=x^(N|I);x=n|6;K=32064+(x<<3)|0;x=A+(x<<3)|0;B=o[x>>2]|0;x=o[x+4>>2]|0;R=Ss(o[K>>2]|0,o[K+4>>2]|0,F|0,R|0)|0;x=Ss(R|0,I|0,B|0,x|0)|0;x=Ss(x|0,I|0,t&(u^U)^U|0,f&(l^j)^j|0)|0;N=Ss(x|0,I|0,(D|S)^(L|T)^(q|k)|0,N|0)|0;k=I;q=Cs(_|0,y|0,28)|0;T=I;L=xs(_|0,y|0,36)|0;T=T|I;S=Cs(_|0,y|0,34)|0;D=I;x=xs(_|0,y|0,30)|0;D=T^(D|I);T=Cs(_|0,y|0,39)|0;B=I;R=xs(_|0,y|0,25)|0;B=Ss((q|L)^(S|x)^(T|R)|0,D^(B|I)|0,(_|b)&C|_&b|0,(y|v)&O|y&v|0)|0;D=I;a=Ss(N|0,k|0,M|0,P|0)|0;c=I;g=Ss(B|0,D|0,N|0,k|0)|0;m=I;k=Cs(a|0,c|0,14)|0;N=I;D=xs(a|0,c|0,50)|0;N=N|I;B=Cs(a|0,c|0,18)|0;P=I;M=xs(a|0,c|0,46)|0;P=N^(P|I);N=Cs(a|0,c|0,41)|0;R=I;T=xs(a|0,c|0,23)|0;R=P^(R|I);P=n|7;x=32064+(P<<3)|0;P=A+(P<<3)|0;S=o[P>>2]|0;P=o[P+4>>2]|0;x=Ss(U|0,j|0,o[x>>2]|0,o[x+4>>2]|0)|0;P=Ss(x|0,I|0,S|0,P|0)|0;P=Ss(P|0,I|0,a&(t^u)^u|0,c&(f^l)^l|0)|0;R=Ss(P|0,I|0,(k|D)^(B|M)^(N|T)|0,R|0)|0;T=I;N=Cs(g|0,m|0,28)|0;M=I;B=xs(g|0,m|0,36)|0;M=M|I;D=Cs(g|0,m|0,34)|0;k=I;P=xs(g|0,m|0,30)|0;k=M^(k|I);M=Cs(g|0,m|0,39)|0;S=I;x=xs(g|0,m|0,25)|0;S=Ss((N|B)^(D|P)^(M|x)|0,k^(S|I)|0,(g|_)&b|g&_|0,(m|y)&v|m&y|0)|0;k=I;r=Ss(R|0,T|0,C|0,O|0)|0;i=I;d=Ss(S|0,k|0,R|0,T|0)|0;p=I;n=n+8|0}while(n>>>0<80);Y=w;Y=Ss(d|0,p|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;X=w;o[X>>2]=Y;o[X+4>>2]=I;X=e+16|0;Y=X;Y=Ss(g|0,m|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=I;X=e+24|0;Y=X;Y=Ss(_|0,y|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=I;X=e+32|0;Y=X;Y=Ss(b|0,v|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=I;X=e+40|0;Y=X;Y=Ss(r|0,i|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=I;X=e+48|0;Y=X;Y=Ss(a|0,c|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=I;X=e+56|0;Y=X;Y=Ss(t|0,f|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=I;X=e+64|0;Y=X;Y=Ss(u|0,l|0,o[Y>>2]|0,o[Y+4>>2]|0)|0;o[X>>2]=Y;o[X+4>>2]=I;h=E;return}function mi(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0;if((e|0)==0|(t|0)==0){s=1;return s|0}s=e+72|0;n=o[s>>2]|0;if(n>>>0>127){s=1;return s|0}a=xs(n|0,0,3)|0;i=e;a=Ss(o[i>>2]|0,o[i+4>>2]|0,a|0,I|0)|0;i=e;o[i>>2]=a;o[i+4>>2]=I;i=e+76|0;o[s>>2]=n+1;r[e+76+n>>0]=-128;n=o[s>>2]|0;if(n>>>0>112){if(n>>>0<128)do{o[s>>2]=n+1;r[e+76+n>>0]=0;n=o[s>>2]|0}while(n>>>0<128);gi(e,i);o[s>>2]=0;n=0}do{o[s>>2]=n+1;r[e+76+n>>0]=0;n=o[s>>2]|0}while(n>>>0<120);s=e;a=o[s>>2]|0;s=o[s+4>>2]|0;n=Cs(a|0,s|0,56)|0;r[e+196>>0]=n;n=Cs(a|0,s|0,48)|0;r[e+197>>0]=n;n=Cs(a|0,s|0,40)|0;r[e+198>>0]=n;r[e+199>>0]=s;n=Cs(a|0,s|0,24)|0;r[e+200>>0]=n;n=Cs(a|0,s|0,16)|0;r[e+201>>0]=n;s=Cs(a|0,s|0,8)|0;r[e+202>>0]=s;r[e+203>>0]=a;gi(e,i);a=e+8|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+1>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+2>>0]=s;r[t+3>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+4>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+5>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+6>>0]=s;r[t+7>>0]=o[a>>2];a=e+16|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+8>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+9>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+10>>0]=s;r[t+11>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+12>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+13>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+14>>0]=s;r[t+15>>0]=o[a>>2];a=e+24|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+16>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+17>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+18>>0]=s;r[t+19>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+20>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+21>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+22>>0]=s;r[t+23>>0]=o[a>>2];a=e+32|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+24>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+25>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+26>>0]=s;r[t+27>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+28>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+29>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+30>>0]=s;r[t+31>>0]=o[a>>2];a=e+40|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+32>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+33>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+34>>0]=s;r[t+35>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+36>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+37>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+38>>0]=s;r[t+39>>0]=o[a>>2];a=e+48|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+40>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+41>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+42>>0]=s;r[t+43>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+44>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+45>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+46>>0]=s;r[t+47>>0]=o[a>>2];a=e+56|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+48>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+49>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+50>>0]=s;r[t+51>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+52>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+53>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+54>>0]=s;r[t+55>>0]=o[a>>2];a=e+64|0;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,56)|0;r[t+56>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,48)|0;r[t+57>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,40)|0;r[t+58>>0]=s;r[t+59>>0]=o[a+4>>2];s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,24)|0;r[t+60>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,16)|0;r[t+61>>0]=s;s=a;s=Cs(o[s>>2]|0,o[s+4>>2]|0,8)|0;r[t+62>>0]=s;r[t+63>>0]=o[a>>2];a=0;return a|0}function _i(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0;S=h;h=h+768|0;_=S+240|0;y=S+192|0;b=S+144|0;A=S+96|0;w=S+32|0;E=S;d=S+272|0;p=S+600|0;g=S+480|0;if((s[e+63>>0]|0)>31){E=0;h=S;return E|0}if(ui(p,i)|0){E=0;h=S;return E|0}m=d+72|0;o[m>>2]=0;v=d;o[v>>2]=0;o[v+4>>2]=0;v=d+8|0;o[v>>2]=-205731576;o[v+4>>2]=1779033703;v=d+16|0;o[v>>2]=-2067093701;o[v+4>>2]=-1150833019;v=d+24|0;o[v>>2]=-23791573;o[v+4>>2]=1013904242;v=d+32|0;o[v>>2]=1595750129;o[v+4>>2]=-1521486534;v=d+40|0;o[v>>2]=-1377402159;o[v+4>>2]=1359893119;v=d+48|0;o[v>>2]=725511199;o[v+4>>2]=-1694144372;v=d+56|0;o[v>>2]=-79577749;o[v+4>>2]=528734635;v=d+64|0;o[v>>2]=327033209;o[v+4>>2]=1541459225;v=d+76|0;r[d+76>>0]=r[e>>0]|0;r[d+77>>0]=r[e+1>>0]|0;r[d+78>>0]=r[e+2>>0]|0;r[d+79>>0]=r[e+3>>0]|0;r[d+80>>0]=r[e+4>>0]|0;r[d+81>>0]=r[e+5>>0]|0;r[d+82>>0]=r[e+6>>0]|0;r[d+83>>0]=r[e+7>>0]|0;r[d+84>>0]=r[e+8>>0]|0;r[d+85>>0]=r[e+9>>0]|0;r[d+86>>0]=r[e+10>>0]|0;r[d+87>>0]=r[e+11>>0]|0;r[d+88>>0]=r[e+12>>0]|0;r[d+89>>0]=r[e+13>>0]|0;r[d+90>>0]=r[e+14>>0]|0;r[d+91>>0]=r[e+15>>0]|0;r[d+92>>0]=r[e+16>>0]|0;r[d+93>>0]=r[e+17>>0]|0;r[d+94>>0]=r[e+18>>0]|0;r[d+95>>0]=r[e+19>>0]|0;r[d+96>>0]=r[e+20>>0]|0;r[d+97>>0]=r[e+21>>0]|0;r[d+98>>0]=r[e+22>>0]|0;r[d+99>>0]=r[e+23>>0]|0;r[d+100>>0]=r[e+24>>0]|0;r[d+101>>0]=r[e+25>>0]|0;r[d+102>>0]=r[e+26>>0]|0;r[d+103>>0]=r[e+27>>0]|0;r[d+104>>0]=r[e+28>>0]|0;r[d+105>>0]=r[e+29>>0]|0;r[d+106>>0]=r[e+30>>0]|0;r[d+107>>0]=r[e+31>>0]|0;o[m>>2]=32;e:do{if(i|0?(c=o[m>>2]|0,c>>>0<=128):0){a=32;while(1){if(!((c|0)==0&a>>>0>127)){l=128-c|0;l=a>>>0>>0?a:l;if(l|0){u=0;do{r[u+c+(d+76)>>0]=r[i+u>>0]|0;u=u+1|0}while(u>>>0>>0)}u=c+l|0;o[m>>2]=u;i=i+l|0;a=a-l|0;if((u|0)==128){gi(d,v);u=d;u=Ss(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;l=d;o[l>>2]=u;o[l+4>>2]=I;o[m>>2]=0}}else{gi(d,i);u=d;u=Ss(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;l=d;o[l>>2]=u;o[l+4>>2]=I;a=a+-128|0;i=i+128|0}if(!a)break e;c=o[m>>2]|0}}}while(0);e:do{if(t|0?(f=o[m>>2]|0,!((n|0)==0|f>>>0>128)):0)while(1){if(!((f|0)==0&n>>>0>127)){i=128-f|0;i=n>>>0>>0?n:i;if(i|0){a=0;do{r[a+f+(d+76)>>0]=r[t+a>>0]|0;a=a+1|0}while(a>>>0>>0)}l=f+i|0;o[m>>2]=l;t=t+i|0;n=n-i|0;if((l|0)==128){gi(d,v);u=d;u=Ss(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;l=d;o[l>>2]=u;o[l+4>>2]=I;o[m>>2]=0}}else{gi(d,t);u=d;u=Ss(o[u>>2]|0,o[u+4>>2]|0,1024,0)|0;l=d;o[l>>2]=u;o[l+4>>2]=I;n=n+-128|0;t=t+128|0}if(!n)break e;f=o[m>>2]|0}}while(0);mi(d,w)|0;ei(w);ri(g,w,p,e+32|0);Wr(y,g+80|0);Xr(b,g,y);Xr(A,g+40|0,y);Jr(E,A);Jr(_,b);A=E+31|0;w=r[A>>0]^r[_>>0]<<7&255;r[A>>0]=w;E=(r[e+1>>0]^r[E+1>>0]|r[e>>0]^r[E>>0]|r[e+2>>0]^r[E+2>>0]|r[e+3>>0]^r[E+3>>0]|r[e+4>>0]^r[E+4>>0]|r[e+5>>0]^r[E+5>>0]|r[e+6>>0]^r[E+6>>0]|r[e+7>>0]^r[E+7>>0]|r[e+8>>0]^r[E+8>>0]|r[e+9>>0]^r[E+9>>0]|r[e+10>>0]^r[E+10>>0]|r[e+11>>0]^r[E+11>>0]|r[e+12>>0]^r[E+12>>0]|r[e+13>>0]^r[E+13>>0]|r[e+14>>0]^r[E+14>>0]|r[e+15>>0]^r[E+15>>0]|r[e+16>>0]^r[E+16>>0]|r[e+17>>0]^r[E+17>>0]|r[e+18>>0]^r[E+18>>0]|r[e+19>>0]^r[E+19>>0]|r[e+20>>0]^r[E+20>>0]|r[e+21>>0]^r[E+21>>0]|r[e+22>>0]^r[E+22>>0]|r[e+23>>0]^r[E+23>>0]|r[e+24>>0]^r[E+24>>0]|r[e+25>>0]^r[E+25>>0]|r[e+26>>0]^r[E+26>>0]|r[e+27>>0]^r[E+27>>0]|r[e+28>>0]^r[E+28>>0]|r[e+29>>0]^r[E+29>>0]|r[e+30>>0]^r[E+30>>0]|r[e+31>>0]^w)<<24>>24==0&1;h=S;return E|0}function yi(e,t,n,i,s){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0;D=h;h=h+672|0;w=D+272|0;S=D+224|0;k=D+176|0;R=D+128|0;P=D+304|0;O=D+64|0;C=D;p=D+512|0;x=P+72|0;o[x>>2]=0;g=P;o[g>>2]=0;o[g+4>>2]=0;g=P+8|0;m=g;o[m>>2]=-205731576;o[m+4>>2]=1779033703;m=P+16|0;_=m;o[_>>2]=-2067093701;o[_+4>>2]=-1150833019;_=P+24|0;y=_;o[y>>2]=-23791573;o[y+4>>2]=1013904242;y=P+32|0;b=y;o[b>>2]=1595750129;o[b+4>>2]=-1521486534;b=P+40|0;v=b;o[v>>2]=-1377402159;o[v+4>>2]=1359893119;v=P+48|0;A=v;o[A>>2]=725511199;o[A+4>>2]=-1694144372;A=P+56|0;E=A;o[E>>2]=-79577749;o[E+4>>2]=528734635;E=P+64|0;M=E;o[M>>2]=327033209;o[M+4>>2]=1541459225;M=P+76|0;r[P+76>>0]=r[s+32>>0]|0;r[P+77>>0]=r[s+33>>0]|0;r[P+78>>0]=r[s+34>>0]|0;r[P+79>>0]=r[s+35>>0]|0;r[P+80>>0]=r[s+36>>0]|0;r[P+81>>0]=r[s+37>>0]|0;r[P+82>>0]=r[s+38>>0]|0;r[P+83>>0]=r[s+39>>0]|0;r[P+84>>0]=r[s+40>>0]|0;r[P+85>>0]=r[s+41>>0]|0;r[P+86>>0]=r[s+42>>0]|0;r[P+87>>0]=r[s+43>>0]|0;r[P+88>>0]=r[s+44>>0]|0;r[P+89>>0]=r[s+45>>0]|0;r[P+90>>0]=r[s+46>>0]|0;r[P+91>>0]=r[s+47>>0]|0;r[P+92>>0]=r[s+48>>0]|0;r[P+93>>0]=r[s+49>>0]|0;r[P+94>>0]=r[s+50>>0]|0;r[P+95>>0]=r[s+51>>0]|0;r[P+96>>0]=r[s+52>>0]|0;r[P+97>>0]=r[s+53>>0]|0;r[P+98>>0]=r[s+54>>0]|0;r[P+99>>0]=r[s+55>>0]|0;r[P+100>>0]=r[s+56>>0]|0;r[P+101>>0]=r[s+57>>0]|0;r[P+102>>0]=r[s+58>>0]|0;r[P+103>>0]=r[s+59>>0]|0;r[P+104>>0]=r[s+60>>0]|0;r[P+105>>0]=r[s+61>>0]|0;r[P+106>>0]=r[s+62>>0]|0;r[P+107>>0]=r[s+63>>0]|0;o[x>>2]=32;T=(t|0)==0;e:do{if(!T?(u=o[x>>2]|0,!((n|0)==0|u>>>0>128)):0){a=n;f=t;while(1){if(!((u|0)==0&a>>>0>127)){d=128-u|0;d=a>>>0>>0?a:d;if(d|0){l=0;do{r[l+u+(P+76)>>0]=r[f+l>>0]|0;l=l+1|0}while(l>>>0>>0)}l=u+d|0;o[x>>2]=l;f=f+d|0;a=a-d|0;if((l|0)==128){gi(P,M);l=P;l=Ss(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;d=P;o[d>>2]=l;o[d+4>>2]=I;o[x>>2]=0}}else{gi(P,f);l=P;l=Ss(o[l>>2]|0,o[l+4>>2]|0,1024,0)|0;d=P;o[d>>2]=l;o[d+4>>2]=I;a=a+-128|0;f=f+128|0}if(!a)break e;u=o[x>>2]|0}}}while(0);mi(P,C)|0;ei(C);li(p,C);Wr(S,p+80|0);Xr(k,p,S);Xr(R,p+40|0,S);Jr(e,R);Jr(w,k);R=e+31|0;r[R>>0]=r[R>>0]^r[w>>0]<<7&255;o[x>>2]=0;R=P;o[R>>2]=0;o[R+4>>2]=0;R=g;o[R>>2]=-205731576;o[R+4>>2]=1779033703;R=m;o[R>>2]=-2067093701;o[R+4>>2]=-1150833019;R=_;o[R>>2]=-23791573;o[R+4>>2]=1013904242;R=y;o[R>>2]=1595750129;o[R+4>>2]=-1521486534;R=b;o[R>>2]=-1377402159;o[R+4>>2]=1359893119;R=v;o[R>>2]=725511199;o[R+4>>2]=-1694144372;R=A;o[R>>2]=-79577749;o[R+4>>2]=528734635;R=E;o[R>>2]=327033209;o[R+4>>2]=1541459225;if(e|0){r[P+76>>0]=r[e>>0]|0;r[P+77>>0]=r[e+1>>0]|0;r[P+78>>0]=r[e+2>>0]|0;r[P+79>>0]=r[e+3>>0]|0;r[P+80>>0]=r[e+4>>0]|0;r[P+81>>0]=r[e+5>>0]|0;r[P+82>>0]=r[e+6>>0]|0;r[P+83>>0]=r[e+7>>0]|0;r[P+84>>0]=r[e+8>>0]|0;r[P+85>>0]=r[e+9>>0]|0;r[P+86>>0]=r[e+10>>0]|0;r[P+87>>0]=r[e+11>>0]|0;r[P+88>>0]=r[e+12>>0]|0;r[P+89>>0]=r[e+13>>0]|0;r[P+90>>0]=r[e+14>>0]|0;r[P+91>>0]=r[e+15>>0]|0;r[P+92>>0]=r[e+16>>0]|0;r[P+93>>0]=r[e+17>>0]|0;r[P+94>>0]=r[e+18>>0]|0;r[P+95>>0]=r[e+19>>0]|0;r[P+96>>0]=r[e+20>>0]|0;r[P+97>>0]=r[e+21>>0]|0;r[P+98>>0]=r[e+22>>0]|0;r[P+99>>0]=r[e+23>>0]|0;r[P+100>>0]=r[e+24>>0]|0;r[P+101>>0]=r[e+25>>0]|0;r[P+102>>0]=r[e+26>>0]|0;r[P+103>>0]=r[e+27>>0]|0;r[P+104>>0]=r[e+28>>0]|0;r[P+105>>0]=r[e+29>>0]|0;r[P+106>>0]=r[e+30>>0]|0;r[P+107>>0]=r[e+31>>0]|0;o[x>>2]=32}e:do{if(i|0?(c=o[x>>2]|0,c>>>0<=128):0){a=32;while(1){if(!((c|0)==0&a>>>0>127)){u=128-c|0;u=a>>>0>>0?a:u;if(u|0){f=0;do{r[f+c+(P+76)>>0]=r[i+f>>0]|0;f=f+1|0}while(f>>>0>>0)}R=c+u|0;o[x>>2]=R;i=i+u|0;a=a-u|0;if((R|0)==128){gi(P,M);k=P;k=Ss(o[k>>2]|0,o[k+4>>2]|0,1024,0)|0;R=P;o[R>>2]=k;o[R+4>>2]=I;o[x>>2]=0}}else{gi(P,i);k=P;k=Ss(o[k>>2]|0,o[k+4>>2]|0,1024,0)|0;R=P;o[R>>2]=k;o[R+4>>2]=I;a=a+-128|0;i=i+128|0}if(!a)break e;c=o[x>>2]|0}}}while(0);if(T){mi(P,O)|0;ei(O);P=e+32|0;ti(P,O,s,C);h=D;return}a=o[x>>2]|0;if((n|0)==0|a>>>0>128){mi(P,O)|0;ei(O);P=e+32|0;ti(P,O,s,C);h=D;return}i=a;while(1){if(!((i|0)==0&n>>>0>127)){f=128-i|0;f=n>>>0>>0?n:f;if(f|0){a=0;do{r[a+i+(P+76)>>0]=r[t+a>>0]|0;a=a+1|0}while(a>>>0>>0)}T=i+f|0;o[x>>2]=T;t=t+f|0;n=n-f|0;if((T|0)==128){gi(P,M);R=P;R=Ss(o[R>>2]|0,o[R+4>>2]|0,1024,0)|0;T=P;o[T>>2]=R;o[T+4>>2]=I;o[x>>2]=0}}else{gi(P,t);R=P;R=Ss(o[R>>2]|0,o[R+4>>2]|0,1024,0)|0;T=P;o[T>>2]=R;o[T+4>>2]=I;n=n+-128|0;t=t+128|0}if(!n)break;i=o[x>>2]|0}mi(P,O)|0;ei(O);P=e+32|0;ti(P,O,s,C);h=D;return}function bi(e,t,n){e=e|0;t=t|0;n=n|0;o[e+128>>2]=n;n=t;t=e+128|0;do{r[e>>0]=r[n>>0]|0;e=e+1|0;n=n+1|0}while((e|0)<(t|0));return}function vi(e){e=e|0;return 132}function Ai(e,t){e=e|0;t=t|0;t=qe(t,e,128)|0;return Ne(t,o[e+128>>2]|0)|0}function wi(e,t,n){e=e|0;t=t|0;n=n|0;return je(Fe(t,n,e,128)|0,n,e+128|0)|0}function Ei(e){e=e|0;var t=0,n=0,r=0,i=0;r=e+128|0;i=(o[r>>2]|0)+1|0;o[r>>2]=i;if(i&16777215){n=0;r=16777215;while(1){t=n+1|0;r=r>>>8;if(n>>>0>2|(r&i|0)==0)break;else n=t}if(n>>>0>2)return}else t=0;r=e+(t<<5)|0;n=3;while(1){Et(r,32,38116+n|0,1,e+(n<<5)|0);if((n|0)>(t|0))n=n+-1|0;else break}return}function Si(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0;s=e+128|0;n=o[s>>2]|0;r=(t>>>24)-(n>>>24)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=3}break}case 1:{i=5;break}default:{n=r&255;i=3}}if((i|0)==3){do{Et(e,32,38116,1,e);n=n+-1|0}while(n>>>0>1);i=5}if((i|0)==5){Et(e,32,38119,1,e+96|0);Et(e,32,38118,1,e+64|0);Et(e,32,38117,1,e+32|0);Et(e,32,38116,1,e);n=t&-16777216;o[s>>2]=n}r=(t>>>16)-(n>>>16)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=8}break}case 1:{i=10;break}default:{n=r&255;i=8}}if((i|0)==8){r=e+32|0;do{Et(r,32,38117,1,r);n=n+-1|0}while(n>>>0>1);i=10}if((i|0)==10){n=e+32|0;Et(n,32,38119,1,e+96|0);Et(n,32,38118,1,e+64|0);Et(n,32,38117,1,e+32|0);n=t&-65536;o[s>>2]=n}r=(t>>>8)-(n>>>8)|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=13}break}case 1:{i=15;break}default:{n=r&255;i=13}}if((i|0)==13){r=e+64|0;do{Et(r,32,38118,1,r);n=n+-1|0}while(n>>>0>1);i=15}if((i|0)==15){n=e+64|0;Et(n,32,38119,1,e+96|0);Et(n,32,38118,1,e+64|0);n=t&-256;o[s>>2]=n}r=t-n|0;switch((r&255)<<24>>24){case 0:{if(n>>>0>t>>>0){n=256;i=18}else return;break}case 1:break;default:{n=r&255;i=18}}if((i|0)==18){r=e+96|0;do{Et(r,32,38119,1,r);n=n+-1|0}while(n>>>0>1)}Et(e+96|0,32,38119,1,e+96|0);o[s>>2]=t;return}function ki(e){e=e|0;if(e>>>0>=16){e=38120;return e|0}e=o[32704+(e<<2)>>2]|0;return e|0}function Ii(e){e=e|0;e=Hs[o[37564>>2]&3](37592,e)|0;return pe((zs[o[9390]&1](37592)|0)+e|0)|0}function Ri(e,t){e=e|0;t=t|0;t=Hs[o[37564>>2]&3](37592,t)|0;t=(zs[o[9390]&1](37592)|0)+t|0;return e+(pe(t)|0)+(0-t)|0}function Ti(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,f=0;f=Hs[o[37564>>2]&3](37592,r)|0;s=(zs[o[9390]&1](37592)|0)+f|0;i=pe(s)|0;a=n+i+(0-s)|0;Qs[o[37568>>2]&3](37592,e,t,a,r,a,f,a,s)|0;ge(a,s,n)|0;return i|0}function Oi(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0;s=me(r)|0;if((s|0)==-1){if(!i){i=-1;return i|0}o[i>>2]=7;i=-1;return i|0}else{_e(n,r,n)|0;r=s-(zs[o[9390]&1](37592)|0)|0;e=Qs[o[37576>>2]&3](37592,e,t,n,s,n,r,n,r)|0;if(!((i|0)!=0&(e|0)==-1)){i=e;return i|0}o[i>>2]=8;i=-1;return i|0}return 0}function Ci(){return 304}function xi(e){e=e|0;zr(e,304);return e|0}function Mi(e){e=e|0;zr(e,304);return 304}function Pi(e){e=e|0;return ki(o[e+300>>2]|0)|0}function Di(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0,f=0,c=0;c=h;h=h+240|0;f=c;switch(me(n)|0){case-1:{o[e+300>>2]=7;f=-1;h=c;return f|0}case 229:{_e(t,n,f)|0;do{if((r[f>>0]|0)==2){t=((s[f+1>>0]<<8|s[f+2>>0])<<8|s[f+3>>0])<<8|s[f+4>>0];n=f+5|0;bi(e,n,t);bi(e+132|0,n,t);t=e+264|0;n=t;i=f+133|0;a=n+32|0;do{r[n>>0]=r[i>>0]|0;n=n+1|0;i=i+1|0}while((n|0)<(a|0));if(!(yt(t,f,165,f+165|0)|0)){o[e+300>>2]=14;t=-1;break}else{o[e+296>>2]=1;t=0;break}}else{o[e+300>>2]=11;t=-1}}while(0);zr(f,229);f=t;h=c;return f|0}default:{o[e+300>>2]=11;f=-1;h=c;return f|0}}return 0}function Bi(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0;a=h;h=h+176|0;i=a;switch(me(n)|0){case-1:{o[e+300>>2]=7;i=-1;h=a;return i|0}case 165:{_e(t,n,i)|0;if((r[i>>0]|0)==1){t=((s[i+1>>0]<<8|s[i+2>>0])<<8|s[i+3>>0])<<8|s[i+4>>0];n=i+5|0;bi(e,n,t);bi(e+132|0,n,t);e=e+264|0;t=i+133|0;n=e+32|0;do{r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0}while((e|0)<(n|0));e=0}else{o[e+300>>2]=11;e=-1}zr(i,165);i=e;h=a;return i|0}default:{o[e+300>>2]=11;i=-1;h=a;return i|0}}return 0}function Ni(e){e=e|0;var t=0,n=0;n=vi(e)|0;t=vi(e+132|0)|0;return Ii(n+5+t+(Ce(e+264|0)|0)|0)|0}function ji(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,f=0,c=0;c=vi(e)|0;a=e+132|0;s=vi(a)|0;f=e+264|0;s=c+5+s+(Ce(f)|0)|0;if((Ii(s)|0)>>>0>i>>>0){o[e+300>>2]=2;c=-1;return c|0}else{c=xe(Ai(a,Ai(e,Ne(Ri(r,s)|0,2)|0)|0)|0,f)|0;Ue(c,o[e+296>>2]|0)|0;c=Ti(t,n,r,s)|0;return c|0}return 0}function Ui(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,f=0,c=0;c=h;h=h+16|0;a=c;f=e+300|0;t=Oi(t,n,r,i,f)|0;if((t|0)==-1){f=-1;h=c;return f|0}s=r+t|0;t=je(r,s,a)|0;if(((o[a>>2]|0)+-1|0)>>>0>1){o[f>>2]=9;f=-1;h=c;return f|0}t=Me(wi(e+132|0,wi(e,t,s)|0,s)|0,s,e+264|0)|0;n=e+296|0;if((o[a>>2]|0)==1)o[n>>2]=1;else t=Le(t,s,n)|0;if((s|0)==(t|0)){f=i;h=c;return f|0}o[f>>2]=10;f=-1;h=c;return f|0}function Li(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0;s=h;h=h+32|0;i=s;n=_e(t,n,t)|0;if((n|0)==-1){o[e+300>>2]=7;i=-1;h=s;return i|0}Xe(t,n,zs[o[o[9395]>>2]&1](37580)|0,64,i);do{if((r[i>>0]|0)==3)if(!(o[i+12>>2]|0)){o[e+300>>2]=4;n=-1;break}else{n=Hs[o[(o[9395]|0)+12>>2]&3](37580,o[i+16>>2]|0)|0;break}else{o[e+300>>2]=3;n=-1}}while(0);i=n;h=s;return i|0}function qi(e,t,n,i,s,a){e=e|0;t=t|0;n=n|0;i=i|0;s=s|0;a=a|0;var f=0,c=0,u=0,l=0,d=0,p=0;p=h;h=h+160|0;u=p+132|0;d=p;n=_e(t,n,t)|0;if((n|0)==-1){o[e+300>>2]=7;d=-1;h=p;return d|0}Xe(t,n,zs[o[o[9395]>>2]&1](37580)|0,64,u);e:do{if((r[u>>0]|0)==3){if(o[u+8>>2]|0?(l=u+12|0,o[l>>2]|0):0){if(a|0)o[a>>2]=o[u+4>>2];f=n+-64|0;if(!(yt(e+264|0,t,f,t+f|0)|0)){o[e+300>>2]=14;n=-1;break}c=u+16|0;if((Hs[o[(o[9395]|0)+12>>2]&3](37580,o[c>>2]|0)|0)>>>0>s>>>0){o[e+300>>2]=2;n=-1;break}n=o[u+4>>2]|0;a=e+132|0;do{if((n-(o[e+260>>2]|0)|0)<=-1)if((n-(o[e+128>>2]|0)|0)<0){o[e+300>>2]=12;n=-1;break e}else{Ps(d|0,e|0,132)|0;Si(d,n);break}else{Si(a,n);Ps(d|0,a|0,132)|0}}while(0);n=Qs[o[(o[9395]|0)+16>>2]&3](37580,d,128,t,f,o[l>>2]|0,o[c>>2]|0,i,s)|0;zr(d,132);if((n|0)==-1){o[e+300>>2]=5;n=-1;break}else{o[e+296>>2]=1;break}}o[e+300>>2]=4;n=-1}else{o[e+300>>2]=3;n=-1}}while(0);d=n;h=p;return d|0}function Fi(e){e=e|0;return pe(32)|0}function Ki(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e+300>>2]=2;n=-1;return n|0}else{n=ge(e+264|0,32,t)|0;return n|0}return 0}function Gi(e){e=e|0;return o[e+128>>2]|0}function zi(e){e=e|0;return o[e+296>>2]|0}function Hi(e){e=e|0;return pe(165)|0}function Vi(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,f=0,c=0,u=0;u=h;h=h+144|0;c=u;s=pe(165)|0;if(s>>>0>n>>>0){o[e+300>>2]=2;t=-1;h=u;return t|0}n=e+132|0;do{if((i-(o[e+260>>2]|0)|0)>-1){Si(n,i);Ps(c|0,n|0,132)|0}else{if((i-(o[e+128>>2]|0)|0)>=0){Ps(c|0,e|0,132)|0;Si(c,i);break}o[e+300>>2]=12;t=-1;h=u;return t|0}}while(0);f=t+s+-165|0;r[f>>0]=1;a=f+1|0;r[a>>0]=i>>>24;a=a+1|0;r[a>>0]=i>>>16;a=a+1|0;r[a>>0]=i>>>8;r[a+1>>0]=i;a=t+(s+-161)|0;s=t+(s+-160)|0;n=c;i=s+128|0;do{r[s>>0]=r[n>>0]|0;s=s+1|0;n=n+1|0}while((s|0)<(i|0));s=a+129|0;n=e+264|0;i=s+32|0;do{r[s>>0]=r[n>>0]|0;s=s+1|0;n=n+1|0}while((s|0)<(i|0));t=ge(f,165,t)|0;h=u;return t|0}function Qi(e){e=e|0;return ki(o[e>>2]|0)|0}function Wi(){return 100}function Yi(e){e=e|0;zr(e,100);return e|0}function Xi(e){e=e|0;zr(e,100);return 100}function Ji(e){e=e|0;return 32}function Zi(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<32){o[e>>2]=1;n=-1;return n|0}else{pt(t,e+4|0);n=0;return n|0}return 0}function $i(e){e=e|0;return pe(32)|0}function eo(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e>>2]=2;n=-1;return n|0}else{ge(e+4|0,32,t)|0;n=0;return n|0}return 0}function to(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e>>2]=15;n=-1;return n|0}else{_e(t,n,t)|0;gt(e+4|0,t,e+68|0);n=0;return n|0}return 0}function no(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;It(e+68|0,32,0,0,t,n,r,i);return 0}function ro(e){e=e|0;return pe(32)|0}function io(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var f=0,c=0;c=h;h=h+32|0;f=c;if((pe(32)|0)>>>0>a>>>0){o[e>>2]=2;f=-1;h=c;return f|0}else{It(e+68|0,32,0,0,r,i,f,32);Et(f,32,t,n,s);ge(s,32,s)|0;f=0;h=c;return f|0}return 0}function oo(e,t,n,r,i,s,a){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;s=s|0;a=a|0;var f=0,c=0;c=h;h=h+256|0;f=c;if((pe(32)|0)>>>0>a>>>0){o[e>>2]=2;f=-1;h=c;return f|0}else{It(e+68|0,32,0,0,r,i,f,256);Et(f,256,t,n,s);ge(s,32,s)|0;f=0;h=c;return f|0}return 0}function so(){return 232}function ao(e){e=e|0;zr(e,232);return e|0}function fo(e){e=e|0;zr(e,232);return 232}function co(e){e=e|0;return ki(o[e+228>>2]|0)|0}function uo(e){e=e|0;var t=0;t=(vi(e)|0)+4|0;return Ii(t+(Pe(e+132|0)|0)|0)|0}function lo(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0;a=(vi(e)|0)+4|0;s=e+132|0;a=a+(Pe(s)|0)|0;if((Ii(a)|0)>>>0>i>>>0){o[e+228>>2]=2;a=-1;return a|0}else{De(Ai(e,Ne(Ri(r,a)|0,1)|0)|0,s)|0;a=Ti(t,n,r,a)|0;return a|0}return 0}function ho(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,f=0;f=h;h=h+16|0;s=f;a=e+228|0;t=Oi(t,n,r,i,a)|0;do{if((t|0)!=-1){n=r+t|0;t=je(r,n,s)|0;if((o[s>>2]|0)!=1){o[a>>2]=9;i=-1;break}if((n|0)!=(Be(wi(e,t,n)|0,n,e+132|0)|0)){o[a>>2]=10;i=-1}}else i=-1}while(0);h=f;return i|0}function po(e){e=e|0;return 160}function go(e,t,n){e=e|0;t=t|0;n=n|0;if(n>>>0<160){o[e+228>>2]=1;n=-1;return n|0}else{bi(e,t,0);mt(t+128|0,e+132|0);zr(t,n);n=0;return n|0}return 0}function mo(e,t){e=e|0;t=t|0;var n=0;n=Hs[o[(o[9395]|0)+4>>2]&3](37580,t)|0;t=zs[o[o[9395]>>2]&1](37580)|0;return pe(We(o[e+128>>2]|0,n,t,64)|0)|0}function _o(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0;u=h;h=h+16|0;c=u;a=Hs[o[(o[9395]|0)+4>>2]&3](37580,n)|0;f=zs[o[o[9395]>>2]&1](37580)|0;s=e+128|0;f=We(o[s>>2]|0,a,f,64)|0;if((pe(f)|0)>>>0>i>>>0){o[e+228>>2]=2;c=-1;h=u;return c|0}a=r+(pe(f)|0)+(0-f)|0;l=Hs[o[(o[9395]|0)+4>>2]&3](37580,n)|0;i=zs[o[o[9395]>>2]&1](37580)|0;i=(Ye(3,o[s>>2]|0,l,a,c)|0)+i|0;if((Qs[o[(o[9395]|0)+8>>2]&3](37580,e,128,t,n,o[c>>2]|0,l,a,i)|0)==-1){l=-1;h=u;return l|0}else{Ei(e);_t(e+132|0,a,i,a+i|0);l=ge(a,f,r)|0;h=u;return l|0}return 0}function yo(e){e=e|0;return pe(32)|0}function bo(e,t,n){e=e|0;t=t|0;n=n|0;if((pe(32)|0)>>>0>n>>>0){o[e+228>>2]=2;n=-1;return n|0}else{n=ge(e+132|0,32,t)|0;return n|0}return 0}function vo(e){e=e|0;return o[e+128>>2]|0}function Ao(e){e=e|0;return pe(229)|0}function wo(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0;i=pe(229)|0;if(i>>>0>n>>>0){o[e+228>>2]=2;t=-1;return t|0}else{f=t+i+-229|0;r[f>>0]=2;s=o[e+128>>2]|0;c=f+1|0;r[c>>0]=s>>>24;c=c+1|0;r[c>>0]=s>>>16;c=c+1|0;r[c>>0]=s>>>8;r[c+1>>0]=s;c=t+(i+-225)|0;i=t+(i+-224)|0;s=e;a=i+128|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));n=e+132|0;i=c+129|0;s=n;a=i+32|0;do{r[i>>0]=r[s>>0]|0;i=i+1|0;s=s+1|0}while((i|0)<(a|0));c=c+161|0;_t(n,f,c-f|0,c);t=ge(f,229,t)|0;return t|0}return 0}function Eo(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0;O=h;h=h+256|0;T=O;o[T>>2]=(s[t+1>>0]|0)<<16|(s[t>>0]|0)<<24|(s[t+2>>0]|0)<<8|(s[t+3>>0]|0);o[T+4>>2]=(s[t+5>>0]|0)<<16|(s[t+4>>0]|0)<<24|(s[t+6>>0]|0)<<8|(s[t+7>>0]|0);o[T+8>>2]=(s[t+9>>0]|0)<<16|(s[t+8>>0]|0)<<24|(s[t+10>>0]|0)<<8|(s[t+11>>0]|0);o[T+12>>2]=(s[t+13>>0]|0)<<16|(s[t+12>>0]|0)<<24|(s[t+14>>0]|0)<<8|(s[t+15>>0]|0);o[T+16>>2]=(s[t+17>>0]|0)<<16|(s[t+16>>0]|0)<<24|(s[t+18>>0]|0)<<8|(s[t+19>>0]|0);o[T+20>>2]=(s[t+21>>0]|0)<<16|(s[t+20>>0]|0)<<24|(s[t+22>>0]|0)<<8|(s[t+23>>0]|0);o[T+24>>2]=(s[t+25>>0]|0)<<16|(s[t+24>>0]|0)<<24|(s[t+26>>0]|0)<<8|(s[t+27>>0]|0);o[T+28>>2]=(s[t+29>>0]|0)<<16|(s[t+28>>0]|0)<<24|(s[t+30>>0]|0)<<8|(s[t+31>>0]|0);o[T+32>>2]=(s[t+33>>0]|0)<<16|(s[t+32>>0]|0)<<24|(s[t+34>>0]|0)<<8|(s[t+35>>0]|0);o[T+36>>2]=(s[t+37>>0]|0)<<16|(s[t+36>>0]|0)<<24|(s[t+38>>0]|0)<<8|(s[t+39>>0]|0);o[T+40>>2]=(s[t+41>>0]|0)<<16|(s[t+40>>0]|0)<<24|(s[t+42>>0]|0)<<8|(s[t+43>>0]|0);o[T+44>>2]=(s[t+45>>0]|0)<<16|(s[t+44>>0]|0)<<24|(s[t+46>>0]|0)<<8|(s[t+47>>0]|0);o[T+48>>2]=(s[t+49>>0]|0)<<16|(s[t+48>>0]|0)<<24|(s[t+50>>0]|0)<<8|(s[t+51>>0]|0);o[T+52>>2]=(s[t+53>>0]|0)<<16|(s[t+52>>0]|0)<<24|(s[t+54>>0]|0)<<8|(s[t+55>>0]|0);o[T+56>>2]=(s[t+57>>0]|0)<<16|(s[t+56>>0]|0)<<24|(s[t+58>>0]|0)<<8|(s[t+59>>0]|0);o[T+60>>2]=(s[t+61>>0]|0)<<16|(s[t+60>>0]|0)<<24|(s[t+62>>0]|0)<<8|(s[t+63>>0]|0);t=16;n=o[T>>2]|0;do{R=o[T+(t+-2<<2)>>2]|0;I=n;n=o[T+(t+-15<<2)>>2]|0;o[T+(t<<2)>>2]=I+(o[T+(t+-7<<2)>>2]|0)+((R>>>19|R<<13)^R>>>10^(R>>>17|R<<15))+((n>>>18|n<<14)^n>>>3^(n>>>7|n<<25));t=t+1|0}while((t|0)!=64);p=e+80|0;g=o[p>>2]|0;m=e+84|0;_=o[m>>2]|0;y=e+88|0;b=o[y>>2]|0;v=e+92|0;A=o[v>>2]|0;w=e+96|0;E=o[w>>2]|0;S=e+100|0;k=o[S>>2]|0;I=e+104|0;R=o[I>>2]|0;l=e+108|0;d=o[l>>2]|0;e=_;t=d;r=R;i=k;a=E;n=A;f=b;c=g;u=0;while(1){C=((a>>>6|a<<26)^(a>>>11|a<<21)^(a>>>25|a<<7))+t+(r&~a^i&a)+(o[32768+(u<<2)>>2]|0)+(o[T+(u<<2)>>2]|0)|0;t=C+n|0;n=((c>>>2|c<<30)^(c>>>13|c<<19)^(c>>>22|c<<10))+(c&(e^f)^e&f)+C|0;u=u+1|0;if((u|0)==64)break;else{D=f;P=a;M=i;x=r;C=c;a=t;c=n;f=e;n=D;i=P;r=M;t=x;e=C}}o[p>>2]=n+g;o[m>>2]=c+_;o[y>>2]=e+b;o[v>>2]=f+A;o[w>>2]=t+E;o[S>>2]=a+k;o[I>>2]=i+R;o[l>>2]=r+d;h=O;return}function So(e){e=e|0;var t=0;o[e+64>>2]=0;t=e+72|0;o[t>>2]=0;o[t+4>>2]=0;o[e+80>>2]=1779033703;o[e+84>>2]=-1150833019;o[e+88>>2]=1013904242;o[e+92>>2]=-1521486534;o[e+96>>2]=1359893119;o[e+100>>2]=-1694144372;o[e+104>>2]=528734635;o[e+108>>2]=1541459225;return}function ko(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0;if(!n)return;a=e+64|0;f=e+72|0;s=0;i=o[a>>2]|0;do{r[e+i>>0]=r[t+s>>0]|0;i=(o[a>>2]|0)+1|0;o[a>>2]=i;if((i|0)==64){Eo(e,e);c=f;c=Ss(o[c>>2]|0,o[c+4>>2]|0,512,0)|0;i=f;o[i>>2]=c;o[i+4>>2]=I;o[a>>2]=0;i=0}s=s+1|0}while((s|0)!=(n|0));return}function Io(e,t){e=e|0;t=t|0;var n=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0;s=e+64|0;n=o[s>>2]|0;i=n+1|0;r[e+n>>0]=-128;if(n>>>0<56){if(i>>>0<56)Ds(e+i|0,0,55-n|0)|0}else{if(i>>>0<64)Ds(e+i|0,0,63-n|0)|0;Eo(e,e);n=e;i=n+56|0;do{o[n>>2]=0;n=n+4|0}while((n|0)<(i|0))}c=e+72|0;u=c;u=Ss(o[u>>2]|0,o[u+4>>2]|0,o[s>>2]<<3|0,0)|0;l=I;o[c>>2]=u;o[c+4>>2]=l;r[e+63>>0]=u;c=Cs(u|0,l|0,8)|0;r[e+62>>0]=c;c=Cs(u|0,l|0,16)|0;r[e+61>>0]=c;c=Cs(u|0,l|0,24)|0;r[e+60>>0]=c;r[e+59>>0]=l;c=Cs(u|0,l|0,40)|0;r[e+58>>0]=c;c=Cs(u|0,l|0,48)|0;r[e+57>>0]=c;l=Cs(u|0,l|0,56)|0;r[e+56>>0]=l;Eo(e,e);l=e+80|0;u=e+84|0;c=e+88|0;f=e+92|0;a=e+96|0;n=e+100|0;i=e+104|0;s=e+108|0;r[t>>0]=(o[l>>2]|0)>>>24;r[t+4>>0]=(o[u>>2]|0)>>>24;r[t+8>>0]=(o[c>>2]|0)>>>24;r[t+12>>0]=(o[f>>2]|0)>>>24;r[t+16>>0]=(o[a>>2]|0)>>>24;r[t+20>>0]=(o[n>>2]|0)>>>24;r[t+24>>0]=(o[i>>2]|0)>>>24;r[t+28>>0]=(o[s>>2]|0)>>>24;r[t+1>>0]=(o[l>>2]|0)>>>16;r[t+5>>0]=(o[u>>2]|0)>>>16;r[t+9>>0]=(o[c>>2]|0)>>>16;r[t+13>>0]=(o[f>>2]|0)>>>16;r[t+17>>0]=(o[a>>2]|0)>>>16;r[t+21>>0]=(o[n>>2]|0)>>>16;r[t+25>>0]=(o[i>>2]|0)>>>16;r[t+29>>0]=(o[s>>2]|0)>>>16;r[t+2>>0]=(o[l>>2]|0)>>>8;r[t+6>>0]=(o[u>>2]|0)>>>8;r[t+10>>0]=(o[c>>2]|0)>>>8;r[t+14>>0]=(o[f>>2]|0)>>>8;r[t+18>>0]=(o[a>>2]|0)>>>8;r[t+22>>0]=(o[n>>2]|0)>>>8;r[t+26>>0]=(o[i>>2]|0)>>>8;r[t+30>>0]=(o[s>>2]|0)>>>8;r[t+3>>0]=o[l>>2];r[t+7>>0]=o[u>>2];r[t+11>>0]=o[c>>2];r[t+15>>0]=o[f>>2];r[t+19>>0]=o[a>>2];r[t+23>>0]=o[n>>2];r[t+27>>0]=o[i>>2];r[t+31>>0]=o[s>>2];return}function Ro(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0;L=h;h=h+16|0;P=L;U=P+4|0;E=P+8|0;S=P+12|0;v=r[e+4>>0]|0;k=P+1|0;c=r[e+5>>0]|0;I=P+5|0;g=r[e+6>>0]|0;R=P+9|0;l=r[e+7>>0]|0;T=P+13|0;y=r[e+8>>0]|0;O=P+2|0;d=r[e+9>>0]|0;C=P+6|0;w=r[e+10>>0]|0;x=P+10|0;u=r[e+11>>0]|0;M=P+14|0;a=r[e+12>>0]|0;D=P+3|0;F=r[e+13>>0]|0;B=P+7|0;m=r[e+14>>0]|0;N=P+11|0;p=r[e+15>>0]|0;j=P+15|0;b=o[n>>2]|0;_=b>>>24^(s[e>>0]|0);A=b>>>16^(s[e+1>>0]|0);f=b>>>8^(s[e+2>>0]|0);b=b^(s[e+3>>0]|0);r[S>>0]=b;q=o[n+4>>2]|0;v=q>>>24^v&255;c=q>>>16^c&255;g=q>>>8^g&255;l=q^l&255;q=o[n+8>>2]|0;y=q>>>24^y&255;d=q>>>16^d&255;w=q>>>8^w&255;u=q^u&255;q=o[n+12>>2]|0;a=q>>>24^a&255;e=q>>>16^F&255;m=q>>>8^m&255;p=q^p&255;r[P>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[k>>0]=r[(v&15)+(33024+(v>>>4<<4))>>0]|0;r[O>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[D>>0]=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;r[U>>0]=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=e;r[B>>0]=A;r[E>>0]=w;r[x>>0]=f;r[R>>0]=m;r[N>>0]=g;r[S>>0]=p;r[j>>0]=u;r[M>>0]=l;r[T>>0]=b;To(P);b=o[n+16>>2]|0;l=b>>>24^(s[P>>0]|0);u=b>>>16^(s[U>>0]|0);p=b>>>8^(s[E>>0]|0);r[E>>0]=p;b=b^(s[S>>0]|0);r[S>>0]=b;g=o[n+20>>2]|0;m=g>>>24^(s[k>>0]|0);f=g>>>16^(s[I>>0]|0);w=g>>>8^(s[R>>0]|0);g=g^(s[T>>0]|0);r[T>>0]=g;A=o[n+24>>2]|0;e=A>>>24^(s[O>>0]|0);d=A>>>16^(s[C>>0]|0);c=A>>>8^(s[x>>0]|0);A=A^(s[M>>0]|0);a=o[n+28>>2]|0;y=a>>>24^(s[D>>0]|0);v=a>>>16^(s[B>>0]|0);_=a>>>8^(s[N>>0]|0);a=a^(s[j>>0]|0);r[P>>0]=r[(l&15)+(33024+(l>>>4<<4))>>0]|0;r[k>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[O>>0]=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[D>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;r[U>>0]=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=v;r[B>>0]=u;r[E>>0]=c;r[x>>0]=p;r[R>>0]=_;r[N>>0]=w;r[S>>0]=a;r[j>>0]=A;r[M>>0]=g;r[T>>0]=b;To(P);b=o[n+32>>2]|0;g=b>>>24^(s[P>>0]|0);A=b>>>16^(s[U>>0]|0);a=b>>>8^(s[E>>0]|0);r[E>>0]=a;b=b^(s[S>>0]|0);r[S>>0]=b;w=o[n+36>>2]|0;_=w>>>24^(s[k>>0]|0);p=w>>>16^(s[I>>0]|0);c=w>>>8^(s[R>>0]|0);w=w^(s[T>>0]|0);r[T>>0]=w;u=o[n+40>>2]|0;v=u>>>24^(s[O>>0]|0);d=u>>>16^(s[C>>0]|0);f=u>>>8^(s[x>>0]|0);u=u^(s[M>>0]|0);y=o[n+44>>2]|0;e=y>>>24^(s[D>>0]|0);m=y>>>16^(s[B>>0]|0);l=y>>>8^(s[N>>0]|0);y=y^(s[j>>0]|0);r[P>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;r[k>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[O>>0]=r[(v&15)+(33024+(v>>>4<<4))>>0]|0;r[D>>0]=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[U>>0]=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=m;r[B>>0]=A;r[E>>0]=f;r[x>>0]=a;r[R>>0]=l;r[N>>0]=c;r[S>>0]=y;r[j>>0]=u;r[M>>0]=w;r[T>>0]=b;To(P);b=o[n+48>>2]|0;w=b>>>24^(s[P>>0]|0);u=b>>>16^(s[U>>0]|0);y=b>>>8^(s[E>>0]|0);r[E>>0]=y;b=b^(s[S>>0]|0);r[S>>0]=b;c=o[n+52>>2]|0;l=c>>>24^(s[k>>0]|0);a=c>>>16^(s[I>>0]|0);f=c>>>8^(s[R>>0]|0);c=c^(s[T>>0]|0);r[T>>0]=c;A=o[n+56>>2]|0;m=A>>>24^(s[O>>0]|0);d=A>>>16^(s[C>>0]|0);p=A>>>8^(s[x>>0]|0);A=A^(s[M>>0]|0);e=o[n+60>>2]|0;v=e>>>24^(s[D>>0]|0);_=e>>>16^(s[B>>0]|0);g=e>>>8^(s[N>>0]|0);e=e^(s[j>>0]|0);r[P>>0]=r[(w&15)+(33024+(w>>>4<<4))>>0]|0;r[k>>0]=r[(l&15)+(33024+(l>>>4<<4))>>0]|0;r[O>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;r[D>>0]=r[(v&15)+(33024+(v>>>4<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;r[U>>0]=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=_;r[B>>0]=u;r[E>>0]=p;r[x>>0]=y;r[R>>0]=g;r[N>>0]=f;r[S>>0]=e;r[j>>0]=A;r[M>>0]=c;r[T>>0]=b;To(P);b=o[n+64>>2]|0;c=b>>>24^(s[P>>0]|0);A=b>>>16^(s[U>>0]|0);e=b>>>8^(s[E>>0]|0);r[E>>0]=e;b=b^(s[S>>0]|0);r[S>>0]=b;f=o[n+68>>2]|0;g=f>>>24^(s[k>>0]|0);y=f>>>16^(s[I>>0]|0);p=f>>>8^(s[R>>0]|0);f=f^(s[T>>0]|0);r[T>>0]=f;u=o[n+72>>2]|0;_=u>>>24^(s[O>>0]|0);d=u>>>16^(s[C>>0]|0);a=u>>>8^(s[x>>0]|0);u=u^(s[M>>0]|0);v=o[n+76>>2]|0;m=v>>>24^(s[D>>0]|0);l=v>>>16^(s[B>>0]|0);w=v>>>8^(s[N>>0]|0);v=v^(s[j>>0]|0);r[P>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[k>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;r[O>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[D>>0]=r[(m&15)+(33024+(m>>>4<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;r[U>>0]=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=l;r[B>>0]=A;r[E>>0]=a;r[x>>0]=e;r[R>>0]=w;r[N>>0]=p;r[S>>0]=v;r[j>>0]=u;r[M>>0]=f;r[T>>0]=b;To(P);b=o[n+80>>2]|0;f=b>>>24^(s[P>>0]|0);u=b>>>16^(s[U>>0]|0);v=b>>>8^(s[E>>0]|0);r[E>>0]=v;b=b^(s[S>>0]|0);r[S>>0]=b;p=o[n+84>>2]|0;w=p>>>24^(s[k>>0]|0);e=p>>>16^(s[I>>0]|0);a=p>>>8^(s[R>>0]|0);p=p^(s[T>>0]|0);r[T>>0]=p;A=o[n+88>>2]|0;l=A>>>24^(s[O>>0]|0);d=A>>>16^(s[C>>0]|0);y=A>>>8^(s[x>>0]|0);A=A^(s[M>>0]|0);m=o[n+92>>2]|0;_=m>>>24^(s[D>>0]|0);g=m>>>16^(s[B>>0]|0);c=m>>>8^(s[N>>0]|0);m=m^(s[j>>0]|0);r[P>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[k>>0]=r[(w&15)+(33024+(w>>>4<<4))>>0]|0;r[O>>0]=r[(l&15)+(33024+(l>>>4<<4))>>0]|0;r[D>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;r[U>>0]=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=g;r[B>>0]=u;r[E>>0]=y;r[x>>0]=v;r[R>>0]=c;r[N>>0]=a;r[S>>0]=m;r[j>>0]=A;r[M>>0]=p;r[T>>0]=b;To(P);b=o[n+96>>2]|0;p=b>>>24^(s[P>>0]|0);A=b>>>16^(s[U>>0]|0);m=b>>>8^(s[E>>0]|0);r[E>>0]=m;b=b^(s[S>>0]|0);r[S>>0]=b;a=o[n+100>>2]|0;c=a>>>24^(s[k>>0]|0);v=a>>>16^(s[I>>0]|0);y=a>>>8^(s[R>>0]|0);a=a^(s[T>>0]|0);r[T>>0]=a;u=o[n+104>>2]|0;g=u>>>24^(s[O>>0]|0);d=u>>>16^(s[C>>0]|0);e=u>>>8^(s[x>>0]|0);u=u^(s[M>>0]|0);_=o[n+108>>2]|0;l=_>>>24^(s[D>>0]|0);w=_>>>16^(s[B>>0]|0);f=_>>>8^(s[N>>0]|0);_=_^(s[j>>0]|0);r[P>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[k>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[O>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;r[D>>0]=r[(l&15)+(33024+(l>>>4<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;r[U>>0]=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=w;r[B>>0]=A;r[E>>0]=e;r[x>>0]=m;r[R>>0]=f;r[N>>0]=y;r[S>>0]=_;r[j>>0]=u;r[M>>0]=a;r[T>>0]=b;To(P);b=o[n+112>>2]|0;a=b>>>24^(s[P>>0]|0);u=b>>>16^(s[U>>0]|0);_=b>>>8^(s[E>>0]|0);r[E>>0]=_;b=b^(s[S>>0]|0);r[S>>0]=b;y=o[n+116>>2]|0;f=y>>>24^(s[k>>0]|0);m=y>>>16^(s[I>>0]|0);e=y>>>8^(s[R>>0]|0);y=y^(s[T>>0]|0);r[T>>0]=y;A=o[n+120>>2]|0;w=A>>>24^(s[O>>0]|0);d=A>>>16^(s[C>>0]|0);v=A>>>8^(s[x>>0]|0);A=A^(s[M>>0]|0);l=o[n+124>>2]|0;g=l>>>24^(s[D>>0]|0);c=l>>>16^(s[B>>0]|0);p=l>>>8^(s[N>>0]|0);l=l^(s[j>>0]|0);r[P>>0]=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[k>>0]=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[O>>0]=r[(w&15)+(33024+(w>>>4<<4))>>0]|0;r[D>>0]=r[(g&15)+(33024+(g>>>4<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;c=r[(c&15)+(33024+((c>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;r[U>>0]=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=c;r[B>>0]=u;r[E>>0]=v;r[x>>0]=_;r[R>>0]=p;r[N>>0]=e;r[S>>0]=l;r[j>>0]=A;r[M>>0]=y;r[T>>0]=b;To(P);b=o[n+128>>2]|0;y=b>>>24^(s[P>>0]|0);A=b>>>16^(s[U>>0]|0);l=b>>>8^(s[E>>0]|0);r[E>>0]=l;b=b^(s[S>>0]|0);r[S>>0]=b;e=o[n+132>>2]|0;p=e>>>24^(s[k>>0]|0);_=e>>>16^(s[I>>0]|0);v=e>>>8^(s[R>>0]|0);e=e^(s[T>>0]|0);r[T>>0]=e;u=o[n+136>>2]|0;c=u>>>24^(s[O>>0]|0);d=u>>>16^(s[C>>0]|0);m=u>>>8^(s[x>>0]|0);u=u^(s[M>>0]|0);g=o[n+140>>2]|0;w=g>>>24^(s[D>>0]|0);f=g>>>16^(s[B>>0]|0);a=g>>>8^(s[N>>0]|0);g=g^(s[j>>0]|0);r[P>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[k>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[O>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[D>>0]=r[(w&15)+(33024+(w>>>4<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;r[U>>0]=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=f;r[B>>0]=A;r[E>>0]=m;r[x>>0]=l;r[R>>0]=a;r[N>>0]=v;r[S>>0]=g;r[j>>0]=u;r[M>>0]=e;r[T>>0]=b;To(P);b=o[n+144>>2]|0;e=b>>>24^(s[P>>0]|0);u=b>>>16^(s[U>>0]|0);g=b>>>8^(s[E>>0]|0);r[E>>0]=g;b=b^(s[S>>0]|0);r[S>>0]=b;v=o[n+148>>2]|0;a=v>>>24^(s[k>>0]|0);l=v>>>16^(s[I>>0]|0);m=v>>>8^(s[R>>0]|0);v=v^(s[T>>0]|0);r[T>>0]=v;A=o[n+152>>2]|0;f=A>>>24^(s[O>>0]|0);d=A>>>16^(s[C>>0]|0);_=A>>>8^(s[x>>0]|0);A=A^(s[M>>0]|0);w=o[n+156>>2]|0;c=w>>>24^(s[D>>0]|0);p=w>>>16^(s[B>>0]|0);y=w>>>8^(s[N>>0]|0);w=w^(s[j>>0]|0);e=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[P>>0]=e;a=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[k>>0]=a;f=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[O>>0]=f;c=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[D>>0]=c;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;r[U>>0]=l;r[I>>0]=d;r[C>>0]=p;r[B>>0]=u;r[E>>0]=_;r[x>>0]=g;r[R>>0]=y;r[N>>0]=m;r[S>>0]=w;r[j>>0]=A;r[M>>0]=v;r[T>>0]=b;if((i|0)==128){K=y;G=d;z=41;H=w;w=_;V=l;F=e;e=40;q=A;y=m;_=u;m=c;d=43;i=p;l=f;p=42;c=n+(e<<2)|0;c=o[c>>2]|0;A=c>>>24;f=c>>>16;u=c>>>8;F=F&255;F=A^F;F=F&255;r[P>>0]=F;A=V&255;A=f^A;A=A&255;r[U>>0]=A;w=w&255;w=u^w;w=w&255;r[E>>0]=w;E=H&255;E=c^E;E=E&255;r[S>>0]=E;U=n+(z<<2)|0;U=o[U>>2]|0;c=U>>>24;u=U>>>16;P=U>>>8;S=a&255;S=c^S;S=S&255;r[k>>0]=S;k=G&255;k=u^k;k=k&255;r[I>>0]=k;I=K&255;I=P^I;I=I&255;r[R>>0]=I;R=b&255;R=U^R;R=R&255;r[T>>0]=R;U=n+(p<<2)|0;U=o[U>>2]|0;p=U>>>24;b=U>>>16;P=U>>>8;T=l&255;T=p^T;T=T&255;r[O>>0]=T;i=i&255;i=b^i;i=i&255;r[C>>0]=i;C=g&255;C=P^C;C=C&255;r[x>>0]=C;x=v&255;x=U^x;x=x&255;r[M>>0]=x;M=n+(d<<2)|0;M=o[M>>2]|0;n=M>>>24;U=M>>>16;O=M>>>8;P=m&255;P=n^P;P=P&255;r[D>>0]=P;D=_&255;D=U^D;D=D&255;r[B>>0]=D;U=y&255;U=O^U;U=U&255;r[N>>0]=U;q=q&255;q=M^q;q=q&255;r[j>>0]=q;r[t>>0]=F;F=t+1|0;r[F>>0]=A;F=t+2|0;r[F>>0]=w;F=t+3|0;r[F>>0]=E;F=t+4|0;r[F>>0]=S;F=t+5|0;r[F>>0]=k;F=t+6|0;r[F>>0]=I;F=t+7|0;r[F>>0]=R;F=t+8|0;r[F>>0]=T;F=t+9|0;r[F>>0]=i;F=t+10|0;r[F>>0]=C;F=t+11|0;r[F>>0]=x;F=t+12|0;r[F>>0]=P;F=t+13|0;r[F>>0]=D;F=t+14|0;r[F>>0]=U;F=t+15|0;r[F>>0]=q;h=L;return}To(P);b=o[n+160>>2]|0;y=b>>>24^(s[P>>0]|0);A=b>>>16^(s[U>>0]|0);l=b>>>8^(s[E>>0]|0);r[E>>0]=l;b=b^(s[S>>0]|0);r[S>>0]=b;e=o[n+164>>2]|0;p=e>>>24^(s[k>>0]|0);_=e>>>16^(s[I>>0]|0);v=e>>>8^(s[R>>0]|0);e=e^(s[T>>0]|0);r[T>>0]=e;u=o[n+168>>2]|0;c=u>>>24^(s[O>>0]|0);d=u>>>16^(s[C>>0]|0);m=u>>>8^(s[x>>0]|0);u=u^(s[M>>0]|0);g=o[n+172>>2]|0;w=g>>>24^(s[D>>0]|0);f=g>>>16^(s[B>>0]|0);a=g>>>8^(s[N>>0]|0);g=g^(s[j>>0]|0);r[P>>0]=r[(y&15)+(33024+(y>>>4<<4))>>0]|0;r[k>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;r[O>>0]=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[D>>0]=r[(w&15)+(33024+(w>>>4<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;f=r[(f&15)+(33024+((f>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;a=r[(a&15)+(33024+((a>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;e=r[(e&15)+(33024+((e>>>4&15)<<4))>>0]|0;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;r[U>>0]=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;r[I>>0]=d;r[C>>0]=f;r[B>>0]=A;r[E>>0]=m;r[x>>0]=l;r[R>>0]=a;r[N>>0]=v;r[S>>0]=g;r[j>>0]=u;r[M>>0]=e;r[T>>0]=b;To(P);b=o[n+176>>2]|0;e=b>>>24^(s[P>>0]|0);u=b>>>16^(s[U>>0]|0);g=b>>>8^(s[E>>0]|0);r[E>>0]=g;b=b^(s[S>>0]|0);r[S>>0]=b;v=o[n+180>>2]|0;a=v>>>24^(s[k>>0]|0);l=v>>>16^(s[I>>0]|0);m=v>>>8^(s[R>>0]|0);v=v^(s[T>>0]|0);r[T>>0]=v;A=o[n+184>>2]|0;f=A>>>24^(s[O>>0]|0);d=A>>>16^(s[C>>0]|0);_=A>>>8^(s[x>>0]|0);A=A^(s[M>>0]|0);w=o[n+188>>2]|0;c=w>>>24^(s[D>>0]|0);p=w>>>16^(s[B>>0]|0);y=w>>>8^(s[N>>0]|0);w=w^(s[j>>0]|0);e=r[(e&15)+(33024+(e>>>4<<4))>>0]|0;r[P>>0]=e;a=r[(a&15)+(33024+(a>>>4<<4))>>0]|0;r[k>>0]=a;f=r[(f&15)+(33024+(f>>>4<<4))>>0]|0;r[O>>0]=f;c=r[(c&15)+(33024+(c>>>4<<4))>>0]|0;r[D>>0]=c;u=r[(u&15)+(33024+((u>>>4&15)<<4))>>0]|0;l=r[(l&15)+(33024+((l>>>4&15)<<4))>>0]|0;d=r[(d&15)+(33024+((d>>>4&15)<<4))>>0]|0;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;g=r[(g&15)+(33024+((g>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;y=r[(y&15)+(33024+((y>>>4&15)<<4))>>0]|0;b=r[(b&15)+(33024+((b>>>4&15)<<4))>>0]|0;v=r[(v&15)+(33024+((v>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;r[U>>0]=l;r[I>>0]=d;r[C>>0]=p;r[B>>0]=u;r[E>>0]=_;r[x>>0]=g;r[R>>0]=y;r[N>>0]=m;r[S>>0]=w;r[j>>0]=A;r[M>>0]=v;r[T>>0]=b;if((i|0)==192){Q=y;W=49;Y=w;w=_;V=e;e=48;H=A;z=m;G=u;K=c;y=51;F=v;q=g;_=p;m=f;v=50;i=b;g=n+(e<<2)|0;g=o[g>>2]|0;A=g>>>24;p=g>>>16;b=g>>>8;V=V&255;V=A^V;V=V&255;r[P>>0]=V;A=l&255;A=p^A;A=A&255;r[U>>0]=A;w=w&255;w=b^w;w=w&255;r[E>>0]=w;E=Y&255;E=g^E;E=E&255;r[S>>0]=E;U=n+(W<<2)|0;U=o[U>>2]|0;g=U>>>24;b=U>>>16;P=U>>>8;S=a&255;S=g^S;S=S&255;r[k>>0]=S;k=d&255;k=b^k;k=k&255;r[I>>0]=k;I=Q&255;I=P^I;I=I&255;r[R>>0]=I;i=i&255;i=U^i;i=i&255;r[T>>0]=i;T=n+(v<<2)|0;T=o[T>>2]|0;U=T>>>24;v=T>>>16;R=T>>>8;P=m&255;P=U^P;P=P&255;r[O>>0]=P;U=_&255;U=v^U;U=U&255;r[C>>0]=U;q=q&255;q=R^q;q=q&255;r[x>>0]=q;F=F&255;F=T^F;F=F&255;r[M>>0]=F;M=n+(y<<2)|0;M=o[M>>2]|0;O=M>>>24;C=M>>>16;x=M>>>8;K=K&255;K=O^K;K=K&255;r[D>>0]=K;G=G&255;G=C^G;G=G&255;r[B>>0]=G;z=z&255;z=x^z;z=z&255;r[N>>0]=z;H=H&255;H=M^H;H=H&255;r[j>>0]=H;r[t>>0]=V;V=t+1|0;r[V>>0]=A;V=t+2|0;r[V>>0]=w;V=t+3|0;r[V>>0]=E;V=t+4|0;r[V>>0]=S;V=t+5|0;r[V>>0]=k;V=t+6|0;r[V>>0]=I;V=t+7|0;r[V>>0]=i;V=t+8|0;r[V>>0]=P;V=t+9|0;r[V>>0]=U;V=t+10|0;r[V>>0]=q;V=t+11|0;r[V>>0]=F;V=t+12|0;r[V>>0]=K;V=t+13|0;r[V>>0]=G;V=t+14|0;r[V>>0]=z;V=t+15|0;r[V>>0]=H;h=L;return}To(P);q=o[n+192>>2]|0;_=q>>>24^(s[P>>0]|0);W=q>>>16^(s[U>>0]|0);A=q>>>8^(s[E>>0]|0);r[E>>0]=A;q=q^(s[S>>0]|0);r[S>>0]=q;Y=o[n+196>>2]|0;K=Y>>>24^(s[k>>0]|0);w=Y>>>16^(s[I>>0]|0);z=Y>>>8^(s[R>>0]|0);Y=Y^(s[T>>0]|0);r[T>>0]=Y;V=o[n+200>>2]|0;H=V>>>24^(s[O>>0]|0);m=V>>>16^(s[C>>0]|0);Q=V>>>8^(s[x>>0]|0);V=V^(s[M>>0]|0);G=o[n+204>>2]|0;p=G>>>24^(s[D>>0]|0);F=G>>>16^(s[B>>0]|0);i=G>>>8^(s[N>>0]|0);G=G^(s[j>>0]|0);r[P>>0]=r[(_&15)+(33024+(_>>>4<<4))>>0]|0;r[k>>0]=r[(K&15)+(33024+(K>>>4<<4))>>0]|0;r[O>>0]=r[(H&15)+(33024+(H>>>4<<4))>>0]|0;r[D>>0]=r[(p&15)+(33024+(p>>>4<<4))>>0]|0;W=r[(W&15)+(33024+((W>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;F=r[(F&15)+(33024+((F>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;z=r[(z&15)+(33024+((z>>>4&15)<<4))>>0]|0;Q=r[(Q&15)+(33024+((Q>>>4&15)<<4))>>0]|0;i=r[(i&15)+(33024+((i>>>4&15)<<4))>>0]|0;q=r[(q&15)+(33024+((q>>>4&15)<<4))>>0]|0;Y=r[(Y&15)+(33024+((Y>>>4&15)<<4))>>0]|0;V=r[(V&15)+(33024+((V>>>4&15)<<4))>>0]|0;G=r[(G&15)+(33024+((G>>>4&15)<<4))>>0]|0;r[U>>0]=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;r[I>>0]=m;r[C>>0]=F;r[B>>0]=W;r[E>>0]=Q;r[x>>0]=A;r[R>>0]=i;r[N>>0]=z;r[S>>0]=G;r[j>>0]=V;r[M>>0]=Y;r[T>>0]=q;To(P);q=o[n+208>>2]|0;Y=q>>>24^(s[P>>0]|0);V=q>>>16^(s[U>>0]|0);G=q>>>8^(s[E>>0]|0);r[E>>0]=G;q=q^(s[S>>0]|0);r[S>>0]=q;z=o[n+212>>2]|0;i=z>>>24^(s[k>>0]|0);A=z>>>16^(s[I>>0]|0);Q=z>>>8^(s[R>>0]|0);z=z^(s[T>>0]|0);r[T>>0]=z;W=o[n+216>>2]|0;F=W>>>24^(s[O>>0]|0);m=W>>>16^(s[C>>0]|0);w=W>>>8^(s[x>>0]|0);W=W^(s[M>>0]|0);p=o[n+220>>2]|0;H=p>>>24^(s[D>>0]|0);K=p>>>16^(s[B>>0]|0);_=p>>>8^(s[N>>0]|0);p=p^(s[j>>0]|0);Y=r[(Y&15)+(33024+(Y>>>4<<4))>>0]|0;i=r[(i&15)+(33024+(i>>>4<<4))>>0]|0;r[k>>0]=i;F=r[(F&15)+(33024+(F>>>4<<4))>>0]|0;r[O>>0]=F;H=r[(H&15)+(33024+(H>>>4<<4))>>0]|0;r[D>>0]=H;_=r[(_&15)+(33024+((_>>>4&15)<<4))>>0]|0;m=r[(m&15)+(33024+((m>>>4&15)<<4))>>0]|0;y=57;p=r[(p&15)+(33024+((p>>>4&15)<<4))>>0]|0;w=r[(w&15)+(33024+((w>>>4&15)<<4))>>0]|0;A=r[(A&15)+(33024+((A>>>4&15)<<4))>>0]|0;g=56;W=r[(W&15)+(33024+((W>>>4&15)<<4))>>0]|0;Q=r[(Q&15)+(33024+((Q>>>4&15)<<4))>>0]|0;V=r[(V&15)+(33024+((V>>>4&15)<<4))>>0]|0;v=59;z=r[(z&15)+(33024+((z>>>4&15)<<4))>>0]|0;G=r[(G&15)+(33024+((G>>>4&15)<<4))>>0]|0;K=r[(K&15)+(33024+((K>>>4&15)<<4))>>0]|0;b=58;q=r[(q&15)+(33024+((q>>>4&15)<<4))>>0]|0;g=n+(g<<2)|0;g=o[g>>2]|0;u=g>>>24;l=g>>>16;d=g>>>8;Y=Y&255;Y=u^Y;Y=Y&255;r[P>>0]=Y;A=A&255;A=l^A;A=A&255;r[U>>0]=A;w=w&255;w=d^w;w=w&255;r[E>>0]=w;E=p&255;E=g^E;E=E&255;r[S>>0]=E;S=n+(y<<2)|0;S=o[S>>2]|0;P=S>>>24;U=S>>>16;y=S>>>8;i=i&255;i=P^i;i=i&255;r[k>>0]=i;P=m&255;P=U^P;P=P&255;r[I>>0]=P;U=_&255;U=y^U;U=U&255;r[R>>0]=U;q=q&255;q=S^q;q=q&255;r[T>>0]=q;T=n+(b<<2)|0;T=o[T>>2]|0;k=T>>>24;I=T>>>16;R=T>>>8;F=F&255;F=k^F;F=F&255;r[O>>0]=F;K=K&255;K=I^K;K=K&255;r[C>>0]=K;G=G&255;G=R^G;G=G&255;r[x>>0]=G;z=z&255;z=T^z;z=z&255;r[M>>0]=z;M=n+(v<<2)|0;M=o[M>>2]|0;O=M>>>24;C=M>>>16;x=M>>>8;H=H&255;H=O^H;H=H&255;r[D>>0]=H;V=V&255;V=C^V;V=V&255;r[B>>0]=V;Q=Q&255;Q=x^Q;Q=Q&255;r[N>>0]=Q;W=W&255;W=M^W;W=W&255;r[j>>0]=W;r[t>>0]=Y;Y=t+1|0;r[Y>>0]=A;Y=t+2|0;r[Y>>0]=w;Y=t+3|0;r[Y>>0]=E;Y=t+4|0;r[Y>>0]=i;Y=t+5|0;r[Y>>0]=P;Y=t+6|0;r[Y>>0]=U;Y=t+7|0;r[Y>>0]=q;Y=t+8|0;r[Y>>0]=F;Y=t+9|0;r[Y>>0]=K;Y=t+10|0;r[Y>>0]=G;Y=t+11|0;r[Y>>0]=z;Y=t+12|0;r[Y>>0]=H;Y=t+13|0;r[Y>>0]=V;Y=t+14|0;r[Y>>0]=Q;Y=t+15|0;r[Y>>0]=W;h=L;return}function To(e){e=e|0;var t=0,n=0,i=0,o=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0;h=r[e>>0]|0;l=e+4|0;i=r[l>>0]|0;o=e+8|0;s=r[o>>0]|0;a=e+12|0;n=r[a>>0]|0;c=h&255;f=i&255;t=s&255;d=n&255;r[e>>0]=n^s^r[33280+(c*6|0)>>0]^r[33280+(f*6|0)+1>>0];r[l>>0]=r[33280+(f*6|0)>>0]^h^n^r[33280+(t*6|0)+1>>0];r[o>>0]=r[33280+(d*6|0)+1>>0]^(r[33280+(t*6|0)>>0]^(i^h));r[a>>0]=s^i^r[33280+(c*6|0)+1>>0]^r[33280+(d*6|0)>>0];a=e+1|0;d=r[a>>0]|0;c=e+5|0;i=r[c>>0]|0;s=e+9|0;o=r[s>>0]|0;h=e+13|0;t=r[h>>0]|0;l=d&255;n=i&255;f=o&255;u=t&255;r[a>>0]=t^o^r[33280+(l*6|0)>>0]^r[33280+(n*6|0)+1>>0];r[c>>0]=r[33280+(n*6|0)>>0]^d^t^r[33280+(f*6|0)+1>>0];r[s>>0]=r[33280+(u*6|0)+1>>0]^(r[33280+(f*6|0)>>0]^(i^d));r[h>>0]=o^i^r[33280+(l*6|0)+1>>0]^r[33280+(u*6|0)>>0];h=e+2|0;u=r[h>>0]|0;l=e+6|0;i=r[l>>0]|0;o=e+10|0;s=r[o>>0]|0;d=e+14|0;f=r[d>>0]|0;c=u&255;t=i&255;n=s&255;a=f&255;r[h>>0]=f^s^r[33280+(c*6|0)>>0]^r[33280+(t*6|0)+1>>0];r[l>>0]=r[33280+(t*6|0)>>0]^u^f^r[33280+(n*6|0)+1>>0];r[o>>0]=r[33280+(a*6|0)+1>>0]^(r[33280+(n*6|0)>>0]^(i^u));r[d>>0]=s^i^r[33280+(c*6|0)+1>>0]^r[33280+(a*6|0)>>0];d=e+3|0;a=r[d>>0]|0;c=e+7|0;i=r[c>>0]|0;s=e+11|0;o=r[s>>0]|0;e=e+15|0;u=r[e>>0]|0;n=a&255;l=i&255;f=o&255;t=u&255;r[d>>0]=u^o^r[33280+(n*6|0)>>0]^r[33280+(l*6|0)+1>>0];r[c>>0]=r[33280+(l*6|0)>>0]^a^u^r[33280+(f*6|0)+1>>0];r[s>>0]=r[33280+(t*6|0)+1>>0]^(r[33280+(f*6|0)>>0]^(i^a));r[e>>0]=o^i^r[33280+(n*6|0)+1>>0]^r[33280+(t*6|0)>>0];return}function Oo(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,a=0;switch(n|0){case 128:{i=4;a=44;break}case 192:{i=6;a=52;break}case 256:{i=8;a=60;break}default:return}n=0;do{r=n<<2;o[t+(n<<2)>>2]=(s[e+(r|1)>>0]|0)<<16|(s[e+r>>0]|0)<<24|(s[e+(r|2)>>0]|0)<<8|(s[e+(r|3)>>0]|0);n=n+1|0}while(n>>>0>>0);if(i>>>0<=6){r=i;do{e=r+-1|0;n=o[t+(e<<2)>>2]|0;if(!((r>>>0)%(i>>>0)|0))n=((s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)<<8|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)|(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<16|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<24)^o[34816+(((e|0)/(i|0)|0)<<2)>>2];o[t+(r<<2)>>2]=o[t+(r-i<<2)>>2]^n;r=r+1|0}while((r|0)!=(a|0));return}r=i;do{e=r+-1|0;n=o[t+(e<<2)>>2]|0;switch(((r>>>0)%(i>>>0)|0)&15){case 0:{n=((s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)<<8|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)|(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<16|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<24)^o[34816+(((e|0)/(i|0)|0)<<2)>>2];break}case 4:{n=(s[(n>>>8&15)+(33024+((n>>>12&15)<<4))>>0]|0)<<8|(s[(n&15)+(33024+((n>>>4&15)<<4))>>0]|0)|(s[(n>>>16&15)+(33024+((n>>>20&15)<<4))>>0]|0)<<16|(s[(n>>>24&15)+(33024+(n>>>28<<4))>>0]|0)<<24;break}default:{}}o[t+(r<<2)>>2]=o[t+(r-i<<2)>>2]^n;r=r+1|0}while((r|0)!=(a|0));return}function Co(e){e=e|0;var t=0,n=0,i=0,o=0,a=0,f=0,c=0,u=0;c=e+4|0;i=e+8|0;n=e+12|0;t=s[e>>0]|0;a=s[c>>0]|0;u=s[i>>0]|0;o=s[n>>0]|0;r[e>>0]=r[33280+(o*6|0)+2>>0]^(r[33280+(u*6|0)+4>>0]^(r[33280+(a*6|0)+3>>0]^r[33280+(t*6|0)+5>>0]));r[c>>0]=r[33280+(o*6|0)+4>>0]^(r[33280+(u*6|0)+3>>0]^(r[33280+(a*6|0)+5>>0]^r[33280+(t*6|0)+2>>0]));r[i>>0]=r[33280+(o*6|0)+3>>0]^(r[33280+(u*6|0)+5>>0]^(r[33280+(a*6|0)+2>>0]^r[33280+(t*6|0)+4>>0]));r[n>>0]=r[33280+(o*6|0)+5>>0]^(r[33280+(u*6|0)+2>>0]^(r[33280+(a*6|0)+4>>0]^r[33280+(t*6|0)+3>>0]));n=e+1|0;t=e+5|0;a=e+9|0;u=e+13|0;o=s[n>>0]|0;i=s[t>>0]|0;c=s[a>>0]|0;f=s[u>>0]|0;r[n>>0]=r[33280+(f*6|0)+2>>0]^(r[33280+(c*6|0)+4>>0]^(r[33280+(i*6|0)+3>>0]^r[33280+(o*6|0)+5>>0]));r[t>>0]=r[33280+(f*6|0)+4>>0]^(r[33280+(c*6|0)+3>>0]^(r[33280+(i*6|0)+5>>0]^r[33280+(o*6|0)+2>>0]));r[a>>0]=r[33280+(f*6|0)+3>>0]^(r[33280+(c*6|0)+5>>0]^(r[33280+(i*6|0)+2>>0]^r[33280+(o*6|0)+4>>0]));r[u>>0]=r[33280+(f*6|0)+5>>0]^(r[33280+(c*6|0)+2>>0]^(r[33280+(i*6|0)+4>>0]^r[33280+(o*6|0)+3>>0]));u=e+2|0;o=e+6|0;i=e+10|0;c=e+14|0;f=s[u>>0]|0;a=s[o>>0]|0;t=s[i>>0]|0;n=s[c>>0]|0;r[u>>0]=r[33280+(n*6|0)+2>>0]^(r[33280+(t*6|0)+4>>0]^(r[33280+(a*6|0)+3>>0]^r[33280+(f*6|0)+5>>0]));r[o>>0]=r[33280+(n*6|0)+4>>0]^(r[33280+(t*6|0)+3>>0]^(r[33280+(a*6|0)+5>>0]^r[33280+(f*6|0)+2>>0]));r[i>>0]=r[33280+(n*6|0)+3>>0]^(r[33280+(t*6|0)+5>>0]^(r[33280+(a*6|0)+2>>0]^r[33280+(f*6|0)+4>>0]));r[c>>0]=r[33280+(n*6|0)+5>>0]^(r[33280+(t*6|0)+2>>0]^(r[33280+(a*6|0)+4>>0]^r[33280+(f*6|0)+3>>0]));c=e+3|0;f=e+7|0;a=e+11|0;e=e+15|0;t=s[c>>0]|0;n=s[f>>0]|0;i=s[a>>0]|0;o=s[e>>0]|0;r[c>>0]=r[33280+(o*6|0)+2>>0]^(r[33280+(i*6|0)+4>>0]^(r[33280+(n*6|0)+3>>0]^r[33280+(t*6|0)+5>>0]));r[f>>0]=r[33280+(o*6|0)+4>>0]^(r[33280+(i*6|0)+3>>0]^(r[33280+(n*6|0)+5>>0]^r[33280+(t*6|0)+2>>0]));r[a>>0]=r[33280+(o*6|0)+3>>0]^(r[33280+(i*6|0)+5>>0]^(r[33280+(n*6|0)+2>>0]^r[33280+(t*6|0)+4>>0]));r[e>>0]=r[33280+(o*6|0)+5>>0]^(r[33280+(i*6|0)+2>>0]^(r[33280+(n*6|0)+4>>0]^r[33280+(t*6|0)+3>>0]));return}function xo(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,I=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0;L=h;h=h+16|0;D=L;A=r[e>>0]|0;r[D>>0]=A;w=r[e+1>>0]|0;U=D+4|0;r[U>>0]=w;a=r[e+2>>0]|0;S=D+8|0;r[S>>0]=a;f=r[e+3>>0]|0;k=D+12|0;r[k>>0]=f;c=r[e+4>>0]|0;I=D+1|0;r[I>>0]=c;u=r[e+5>>0]|0;R=D+5|0;r[R>>0]=u;l=r[e+6>>0]|0;T=D+9|0;r[T>>0]=l;d=r[e+7>>0]|0;O=D+13|0;r[O>>0]=d;p=r[e+8>>0]|0;C=D+2|0;r[C>>0]=p;g=r[e+9>>0]|0;x=D+6|0;r[x>>0]=g;m=r[e+10>>0]|0;M=D+10|0;r[M>>0]=m;_=r[e+11>>0]|0;P=D+14|0;r[P>>0]=_;y=r[e+12>>0]|0;B=D+3|0;r[B>>0]=y;b=r[e+13>>0]|0;N=D+7|0;r[N>>0]=b;v=r[e+14>>0]|0;j=D+11|0;r[j>>0]=v;e=r[e+15>>0]|0;E=D+15|0;r[E>>0]=e;if((i|0)>128){if((i|0)>192){q=o[n+224>>2]|0;H=q>>>24^A&255;z=q>>>16^w&255;K=q>>>8^a&255;A=q^f&255;q=o[n+228>>2]|0;w=q>>>24^c&255;G=q>>>16^u&255;F=q>>>8^l&255;q=q^d&255;f=o[n+232>>2]|0;a=f>>>24^p&255;p=f>>>16^g&255;i=f>>>8^m&255;f=f^_&255;c=o[n+236>>2]|0;m=c>>>24^y&255;u=c>>>16^b&255;g=c>>>8^v&255;c=c^e&255;b=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[I>>0]=w;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[C>>0]=a;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[B>>0]=m;u=r[(u&15)+(34880+((u>>>4&15)<<4))>>0]|0;l=r[(z&15)+(34880+((z>>>4&15)<<4))>>0]|0;d=r[(G&15)+(34880+((G>>>4&15)<<4))>>0]|0;r[x>>0]=d;_=r[(p&15)+(34880+((p>>>4&15)<<4))>>0]|0;r[N>>0]=_;i=r[(i&15)+(34880+((i>>>4&15)<<4))>>0]|0;g=r[(g&15)+(34880+((g>>>4&15)<<4))>>0]|0;v=r[(K&15)+(34880+((K>>>4&15)<<4))>>0]|0;p=r[(F&15)+(34880+((F>>>4&15)<<4))>>0]|0;r[j>>0]=p;e=r[(q&15)+(34880+((q>>>4&15)<<4))>>0]|0;f=r[(f&15)+(34880+((f>>>4&15)<<4))>>0]|0;c=r[(c&15)+(34880+((c>>>4&15)<<4))>>0]|0;A=r[(A&15)+(34880+((A>>>4&15)<<4))>>0]|0;y=o[n+208>>2]|0;r[D>>0]=y>>>24^b&255;r[U>>0]=y>>>16^u&255;r[S>>0]=y>>>8^i&255;r[k>>0]=y^e&255;e=o[n+212>>2]|0;r[I>>0]=e>>>24^w&255;r[R>>0]=e>>>16^l&255;r[T>>0]=e>>>8^g&255;r[O>>0]=e^f&255;f=o[n+216>>2]|0;r[C>>0]=f>>>24^a&255;r[x>>0]=f>>>16^d&255;r[M>>0]=f>>>8^v&255;r[P>>0]=f^c&255;c=o[n+220>>2]|0;r[B>>0]=c>>>24^m&255;r[N>>0]=c>>>16^_&255;r[j>>0]=c>>>8^p&255;r[E>>0]=c^A&255;Co(D);A=r[N>>0]|0;c=r[x>>0]|0;p=r[R>>0]|0;_=r[U>>0]|0;m=r[j>>0]|0;f=r[T>>0]|0;v=r[M>>0]|0;d=r[S>>0]|0;a=r[E>>0]|0;e=r[k>>0]|0;g=r[O>>0]|0;l=r[P>>0]|0;w=s[D>>0]|0;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[D>>0]=w;y=s[I>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[I>>0]=y;i=s[C>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[C>>0]=i;u=s[B>>0]|0;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;r[B>>0]=u;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;p=p&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[x>>0]=p;c=c&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[N>>0]=c;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;f=f&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;r[j>>0]=f;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;l=l&255;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;b=o[n+192>>2]|0;r[D>>0]=b>>>24^w&255;r[U>>0]=b>>>16^A&255;r[S>>0]=b>>>8^v&255;r[k>>0]=b^g&255;g=o[n+196>>2]|0;r[I>>0]=g>>>24^y&255;r[R>>0]=g>>>16^_&255;r[T>>0]=g>>>8^m&255;r[O>>0]=g^l&255;l=o[n+200>>2]|0;r[C>>0]=l>>>24^i&255;r[x>>0]=l>>>16^p&255;r[M>>0]=l>>>8^d&255;r[P>>0]=l^a&255;a=o[n+204>>2]|0;r[B>>0]=a>>>24^u&255;r[N>>0]=a>>>16^c&255;r[j>>0]=a>>>8^f&255;r[E>>0]=a^e&255;Co(D);e=r[D>>0]|0;a=r[I>>0]|0;f=r[C>>0]|0;c=r[B>>0]|0;u=r[N>>0]|0;l=r[U>>0]|0;d=r[R>>0]|0;p=r[x>>0]|0;i=r[M>>0]|0;g=r[j>>0]|0;m=r[S>>0]|0;_=r[T>>0]|0;y=r[O>>0]|0;b=r[P>>0]|0;v=r[E>>0]|0;A=r[k>>0]|0}else{z=o[n+192>>2]|0;V=(z>>>24^A&255)&255;r[D>>0]=V;q=(z>>>16^w&255)&255;r[U>>0]=q;K=(z>>>8^a&255)&255;r[S>>0]=K;A=(z^f&255)&255;r[k>>0]=A;z=o[n+196>>2]|0;a=(z>>>24^c&255)&255;r[I>>0]=a;F=(z>>>16^u&255)&255;r[R>>0]=F;G=(z>>>8^l&255)&255;r[T>>0]=G;z=(z^d&255)&255;r[O>>0]=z;H=o[n+200>>2]|0;f=(H>>>24^p&255)&255;r[C>>0]=f;p=(H>>>16^g&255)&255;r[x>>0]=p;i=(H>>>8^m&255)&255;r[M>>0]=i;H=(H^_&255)&255;r[P>>0]=H;l=o[n+204>>2]|0;c=(l>>>24^y&255)&255;r[B>>0]=c;u=(l>>>16^b&255)&255;r[N>>0]=u;g=(l>>>8^v&255)&255;r[j>>0]=g;v=(l^e&255)&255;r[E>>0]=v;e=V;l=q;d=F;m=K;_=G;y=z;b=H}H=e&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;V=a&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[I>>0]=V;e=f&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;r[C>>0]=e;a=c&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[B>>0]=a;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;l=l&255;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;r[x>>0]=d;f=p&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;r[N>>0]=f;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;p=_&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[j>>0]=p;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;_=b&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;c=v&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;v=o[n+176>>2]|0;r[D>>0]=v>>>24^H&255;r[U>>0]=v>>>16^u&255;r[S>>0]=v>>>8^i&255;r[k>>0]=v^y&255;v=o[n+180>>2]|0;r[I>>0]=v>>>24^V&255;r[R>>0]=v>>>16^l&255;r[T>>0]=v>>>8^g&255;r[O>>0]=v^_&255;_=o[n+184>>2]|0;r[C>>0]=_>>>24^e&255;r[x>>0]=_>>>16^d&255;r[M>>0]=_>>>8^m&255;r[P>>0]=_^c&255;c=o[n+188>>2]|0;r[B>>0]=c>>>24^a&255;r[N>>0]=c>>>16^f&255;r[j>>0]=c>>>8^p&255;r[E>>0]=c^A&255;Co(D);A=r[N>>0]|0;c=r[x>>0]|0;p=r[R>>0]|0;_=r[U>>0]|0;m=r[j>>0]|0;f=r[T>>0]|0;v=r[M>>0]|0;d=r[S>>0]|0;a=r[E>>0]|0;e=r[k>>0]|0;g=r[O>>0]|0;l=r[P>>0]|0;V=s[D>>0]|0;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[D>>0]=V;y=s[I>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[I>>0]=y;i=s[C>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[C>>0]=i;u=s[B>>0]|0;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;r[B>>0]=u;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;_=_&255;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;p=p&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[x>>0]=p;c=c&255;c=r[(c&15)+(34880+(c>>>4<<4))>>0]|0;r[N>>0]=c;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;m=m&255;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;d=d&255;d=r[(d&15)+(34880+(d>>>4<<4))>>0]|0;f=f&255;f=r[(f&15)+(34880+(f>>>4<<4))>>0]|0;r[j>>0]=f;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;l=l&255;l=r[(l&15)+(34880+(l>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;b=o[n+160>>2]|0;r[D>>0]=b>>>24^V&255;r[U>>0]=b>>>16^A&255;r[S>>0]=b>>>8^v&255;r[k>>0]=b^g&255;g=o[n+164>>2]|0;r[I>>0]=g>>>24^y&255;r[R>>0]=g>>>16^_&255;r[T>>0]=g>>>8^m&255;r[O>>0]=g^l&255;l=o[n+168>>2]|0;r[C>>0]=l>>>24^i&255;r[x>>0]=l>>>16^p&255;r[M>>0]=l>>>8^d&255;r[P>>0]=l^a&255;a=o[n+172>>2]|0;r[B>>0]=a>>>24^u&255;r[N>>0]=a>>>16^c&255;r[j>>0]=a>>>8^f&255;r[E>>0]=a^e&255;Co(D);e=r[D>>0]|0;a=r[I>>0]|0;f=r[C>>0]|0;c=r[B>>0]|0;u=r[N>>0]|0;l=r[U>>0]|0;d=r[R>>0]|0;p=r[x>>0]|0;i=r[M>>0]|0;g=r[j>>0]|0;m=r[S>>0]|0;_=r[T>>0]|0;y=r[O>>0]|0;b=r[P>>0]|0;v=r[E>>0]|0;A=r[k>>0]|0}else{H=o[n+160>>2]|0;q=(H>>>24^A&255)&255;r[D>>0]=q;F=(H>>>16^w&255)&255;r[U>>0]=F;G=(H>>>8^a&255)&255;r[S>>0]=G;A=(H^f&255)&255;r[k>>0]=A;H=o[n+164>>2]|0;a=(H>>>24^c&255)&255;r[I>>0]=a;K=(H>>>16^u&255)&255;r[R>>0]=K;z=(H>>>8^l&255)&255;r[T>>0]=z;H=(H^d&255)&255;r[O>>0]=H;V=o[n+168>>2]|0;f=(V>>>24^p&255)&255;r[C>>0]=f;p=(V>>>16^g&255)&255;r[x>>0]=p;i=(V>>>8^m&255)&255;r[M>>0]=i;V=(V^_&255)&255;r[P>>0]=V;l=o[n+172>>2]|0;c=(l>>>24^y&255)&255;r[B>>0]=c;u=(l>>>16^b&255)&255;r[N>>0]=u;g=(l>>>8^v&255)&255;r[j>>0]=g;v=(l^e&255)&255;r[E>>0]=v;e=q;l=F;d=K;m=G;_=z;y=H;b=V}e=e&255;e=r[(e&15)+(34880+(e>>>4<<4))>>0]|0;a=a&255;a=r[(a&15)+(34880+(a>>>4<<4))>>0]|0;r[I>>0]=a;w=f&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[C>>0]=w;V=c&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[B>>0]=V;u=u&255;u=r[(u&15)+(34880+(u>>>4<<4))>>0]|0;K=l&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;H=d&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[x>>0]=H;z=p&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[N>>0]=z;p=i&255;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;q=m&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;F=_&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[j>>0]=F;i=y&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;y=b&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;G=v&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;b=A&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;A=o[n+144>>2]|0;r[D>>0]=A>>>24^e&255;r[U>>0]=A>>>16^u&255;r[S>>0]=A>>>8^p&255;r[k>>0]=A^i&255;A=o[n+148>>2]|0;r[I>>0]=A>>>24^a&255;r[R>>0]=A>>>16^K&255;r[T>>0]=A>>>8^g&255;r[O>>0]=A^y&255;A=o[n+152>>2]|0;r[C>>0]=A>>>24^w&255;r[x>>0]=A>>>16^H&255;r[M>>0]=A>>>8^q&255;r[P>>0]=A^G&255;G=o[n+156>>2]|0;r[B>>0]=G>>>24^V&255;r[N>>0]=G>>>16^z&255;r[j>>0]=G>>>8^F&255;r[E>>0]=G^b&255;Co(D);b=r[N>>0]|0;G=r[x>>0]|0;F=r[R>>0]|0;z=r[U>>0]|0;A=r[j>>0]|0;y=r[T>>0]|0;V=r[M>>0]|0;q=r[S>>0]|0;g=r[E>>0]|0;H=r[k>>0]|0;i=r[O>>0]|0;w=r[P>>0]|0;m=s[D>>0]|0;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[D>>0]=m;p=s[I>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[I>>0]=p;K=s[C>>0]|0;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[C>>0]=K;v=s[B>>0]|0;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;r[B>>0]=v;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[x>>0]=F;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[N>>0]=G;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[j>>0]=y;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;_=o[n+128>>2]|0;r[D>>0]=_>>>24^m&255;r[U>>0]=_>>>16^b&255;r[S>>0]=_>>>8^V&255;r[k>>0]=_^i&255;i=o[n+132>>2]|0;r[I>>0]=i>>>24^p&255;r[R>>0]=i>>>16^z&255;r[T>>0]=i>>>8^A&255;r[O>>0]=i^w&255;w=o[n+136>>2]|0;r[C>>0]=w>>>24^K&255;r[x>>0]=w>>>16^F&255;r[M>>0]=w>>>8^q&255;r[P>>0]=w^g&255;g=o[n+140>>2]|0;r[B>>0]=g>>>24^v&255;r[N>>0]=g>>>16^G&255;r[j>>0]=g>>>8^y&255;r[E>>0]=g^H&255;Co(D);H=r[N>>0]|0;g=r[x>>0]|0;y=r[R>>0]|0;G=r[U>>0]|0;v=r[j>>0]|0;w=r[T>>0]|0;q=r[M>>0]|0;F=r[S>>0]|0;K=r[E>>0]|0;i=r[k>>0]|0;A=r[O>>0]|0;z=r[P>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;_=s[I>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[I>>0]=_;V=s[C>>0]|0;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[C>>0]=V;b=s[B>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[B>>0]=b;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[x>>0]=y;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[N>>0]=g;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[j>>0]=w;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;m=o[n+112>>2]|0;r[D>>0]=m>>>24^p&255;r[U>>0]=m>>>16^H&255;r[S>>0]=m>>>8^q&255;r[k>>0]=m^A&255;A=o[n+116>>2]|0;r[I>>0]=A>>>24^_&255;r[R>>0]=A>>>16^G&255;r[T>>0]=A>>>8^v&255;r[O>>0]=A^z&255;z=o[n+120>>2]|0;r[C>>0]=z>>>24^V&255;r[x>>0]=z>>>16^y&255;r[M>>0]=z>>>8^F&255;r[P>>0]=z^K&255;K=o[n+124>>2]|0;r[B>>0]=K>>>24^b&255;r[N>>0]=K>>>16^g&255;r[j>>0]=K>>>8^w&255;r[E>>0]=K^i&255;Co(D);i=r[N>>0]|0;K=r[x>>0]|0;w=r[R>>0]|0;g=r[U>>0]|0;b=r[j>>0]|0;z=r[T>>0]|0;F=r[M>>0]|0;y=r[S>>0]|0;V=r[E>>0]|0;A=r[k>>0]|0;v=r[O>>0]|0;G=r[P>>0]|0;_=s[D>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[D>>0]=_;m=s[I>>0]|0;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[I>>0]=m;q=s[C>>0]|0;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[C>>0]=q;H=s[B>>0]|0;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[B>>0]=H;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[x>>0]=w;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[N>>0]=K;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[j>>0]=z;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;p=o[n+96>>2]|0;r[D>>0]=p>>>24^_&255;r[U>>0]=p>>>16^i&255;r[S>>0]=p>>>8^F&255;r[k>>0]=p^v&255;v=o[n+100>>2]|0;r[I>>0]=v>>>24^m&255;r[R>>0]=v>>>16^g&255;r[T>>0]=v>>>8^b&255;r[O>>0]=v^G&255;G=o[n+104>>2]|0;r[C>>0]=G>>>24^q&255;r[x>>0]=G>>>16^w&255;r[M>>0]=G>>>8^y&255;r[P>>0]=G^V&255;V=o[n+108>>2]|0;r[B>>0]=V>>>24^H&255;r[N>>0]=V>>>16^K&255;r[j>>0]=V>>>8^z&255;r[E>>0]=V^A&255;Co(D);A=r[N>>0]|0;V=r[x>>0]|0;z=r[R>>0]|0;K=r[U>>0]|0;H=r[j>>0]|0;G=r[T>>0]|0;y=r[M>>0]|0;w=r[S>>0]|0;q=r[E>>0]|0;v=r[k>>0]|0;b=r[O>>0]|0;g=r[P>>0]|0;m=s[D>>0]|0;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[D>>0]=m;p=s[I>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[I>>0]=p;F=s[C>>0]|0;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[C>>0]=F;i=s[B>>0]|0;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;r[B>>0]=i;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[x>>0]=z;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[N>>0]=V;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[j>>0]=G;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;_=o[n+80>>2]|0;r[D>>0]=_>>>24^m&255;r[U>>0]=_>>>16^A&255;r[S>>0]=_>>>8^y&255;r[k>>0]=_^b&255;b=o[n+84>>2]|0;r[I>>0]=b>>>24^p&255;r[R>>0]=b>>>16^K&255;r[T>>0]=b>>>8^H&255;r[O>>0]=b^g&255;g=o[n+88>>2]|0;r[C>>0]=g>>>24^F&255;r[x>>0]=g>>>16^z&255;r[M>>0]=g>>>8^w&255;r[P>>0]=g^q&255;q=o[n+92>>2]|0;r[B>>0]=q>>>24^i&255;r[N>>0]=q>>>16^V&255;r[j>>0]=q>>>8^G&255;r[E>>0]=q^v&255;Co(D);v=r[N>>0]|0;q=r[x>>0]|0;G=r[R>>0]|0;V=r[U>>0]|0;i=r[j>>0]|0;g=r[T>>0]|0;w=r[M>>0]|0;z=r[S>>0]|0;F=r[E>>0]|0;b=r[k>>0]|0;H=r[O>>0]|0;K=r[P>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;_=s[I>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[I>>0]=_;y=s[C>>0]|0;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[C>>0]=y;A=s[B>>0]|0;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;r[B>>0]=A;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[x>>0]=G;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[N>>0]=q;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[j>>0]=g;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;m=o[n+64>>2]|0;r[D>>0]=m>>>24^p&255;r[U>>0]=m>>>16^v&255;r[S>>0]=m>>>8^w&255;r[k>>0]=m^H&255;H=o[n+68>>2]|0;r[I>>0]=H>>>24^_&255;r[R>>0]=H>>>16^V&255;r[T>>0]=H>>>8^i&255;r[O>>0]=H^K&255;K=o[n+72>>2]|0;r[C>>0]=K>>>24^y&255;r[x>>0]=K>>>16^G&255;r[M>>0]=K>>>8^z&255;r[P>>0]=K^F&255;F=o[n+76>>2]|0;r[B>>0]=F>>>24^A&255;r[N>>0]=F>>>16^q&255;r[j>>0]=F>>>8^g&255;r[E>>0]=F^b&255;Co(D);b=r[N>>0]|0;F=r[x>>0]|0;g=r[R>>0]|0;q=r[U>>0]|0;A=r[j>>0]|0;K=r[T>>0]|0;z=r[M>>0]|0;G=r[S>>0]|0;y=r[E>>0]|0;H=r[k>>0]|0;i=r[O>>0]|0;V=r[P>>0]|0;_=s[D>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[D>>0]=_;m=s[I>>0]|0;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[I>>0]=m;w=s[C>>0]|0;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[C>>0]=w;v=s[B>>0]|0;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;r[B>>0]=v;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;r[x>>0]=g;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;r[N>>0]=F;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[j>>0]=K;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;p=o[n+48>>2]|0;r[D>>0]=p>>>24^_&255;r[U>>0]=p>>>16^b&255;r[S>>0]=p>>>8^z&255;r[k>>0]=p^i&255;i=o[n+52>>2]|0;r[I>>0]=i>>>24^m&255;r[R>>0]=i>>>16^q&255;r[T>>0]=i>>>8^A&255;r[O>>0]=i^V&255;V=o[n+56>>2]|0;r[C>>0]=V>>>24^w&255;r[x>>0]=V>>>16^g&255;r[M>>0]=V>>>8^G&255;r[P>>0]=V^y&255;y=o[n+60>>2]|0;r[B>>0]=y>>>24^v&255;r[N>>0]=y>>>16^F&255;r[j>>0]=y>>>8^K&255;r[E>>0]=y^H&255;Co(D);H=r[N>>0]|0;y=r[x>>0]|0;K=r[R>>0]|0;F=r[U>>0]|0;v=r[j>>0]|0;V=r[T>>0]|0;G=r[M>>0]|0;g=r[S>>0]|0;w=r[E>>0]|0;i=r[k>>0]|0;A=r[O>>0]|0;q=r[P>>0]|0;m=s[D>>0]|0;m=r[(m&15)+(34880+(m>>>4<<4))>>0]|0;r[D>>0]=m;p=s[I>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[I>>0]=p;z=s[C>>0]|0;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;r[C>>0]=z;b=s[B>>0]|0;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;r[B>>0]=b;H=H&255;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;r[x>>0]=K;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;r[N>>0]=y;G=G&255;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[j>>0]=V;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;_=o[n+32>>2]|0;r[D>>0]=_>>>24^m&255;r[U>>0]=_>>>16^H&255;r[S>>0]=_>>>8^G&255;r[k>>0]=_^A&255;A=o[n+36>>2]|0;r[I>>0]=A>>>24^p&255;r[R>>0]=A>>>16^F&255;r[T>>0]=A>>>8^v&255;r[O>>0]=A^q&255;q=o[n+40>>2]|0;r[C>>0]=q>>>24^z&255;r[x>>0]=q>>>16^K&255;r[M>>0]=q>>>8^g&255;r[P>>0]=q^w&255;w=o[n+44>>2]|0;r[B>>0]=w>>>24^b&255;r[N>>0]=w>>>16^y&255;r[j>>0]=w>>>8^V&255;r[E>>0]=w^i&255;Co(D);i=r[N>>0]|0;w=r[x>>0]|0;V=r[R>>0]|0;y=r[U>>0]|0;b=r[j>>0]|0;q=r[T>>0]|0;g=r[M>>0]|0;K=r[S>>0]|0;z=r[E>>0]|0;A=r[k>>0]|0;v=r[O>>0]|0;F=r[P>>0]|0;p=s[D>>0]|0;p=r[(p&15)+(34880+(p>>>4<<4))>>0]|0;r[D>>0]=p;_=s[I>>0]|0;_=r[(_&15)+(34880+(_>>>4<<4))>>0]|0;r[I>>0]=_;G=s[C>>0]|0;G=r[(G&15)+(34880+(G>>>4<<4))>>0]|0;r[C>>0]=G;H=s[B>>0]|0;H=r[(H&15)+(34880+(H>>>4<<4))>>0]|0;r[B>>0]=H;i=i&255;i=r[(i&15)+(34880+(i>>>4<<4))>>0]|0;y=y&255;y=r[(y&15)+(34880+(y>>>4<<4))>>0]|0;V=V&255;V=r[(V&15)+(34880+(V>>>4<<4))>>0]|0;r[x>>0]=V;w=w&255;w=r[(w&15)+(34880+(w>>>4<<4))>>0]|0;r[N>>0]=w;g=g&255;g=r[(g&15)+(34880+(g>>>4<<4))>>0]|0;b=b&255;b=r[(b&15)+(34880+(b>>>4<<4))>>0]|0;K=K&255;K=r[(K&15)+(34880+(K>>>4<<4))>>0]|0;q=q&255;q=r[(q&15)+(34880+(q>>>4<<4))>>0]|0;r[j>>0]=q;v=v&255;v=r[(v&15)+(34880+(v>>>4<<4))>>0]|0;F=F&255;F=r[(F&15)+(34880+(F>>>4<<4))>>0]|0;z=z&255;z=r[(z&15)+(34880+(z>>>4<<4))>>0]|0;A=A&255;A=r[(A&15)+(34880+(A>>>4<<4))>>0]|0;m=o[n+16>>2]|0;r[D>>0]=m>>>24^p&255;r[U>>0]=m>>>16^i&255;r[S>>0]=m>>>8^g&255;r[k>>0]=m^v&255;v=o[n+20>>2]|0;r[I>>0]=v>>>24^_&255;r[R>>0]=v>>>16^y&255;r[T>>0]=v>>>8^b&255;r[O>>0]=v^F&255;F=o[n+24>>2]|0;r[C>>0]=F>>>24^G&255;r[x>>0]=F>>>16^V&255;r[M>>0]=F>>>8^K&255;r[P>>0]=F^z&255;z=o[n+28>>2]|0;r[B>>0]=z>>>24^H&255;r[N>>0]=z>>>16^w&255;r[j>>0]=z>>>8^q&255;r[E>>0]=z^A&255;Co(D);A=r[N>>0]|0;z=r[x>>0]|0;q=r[R>>0]|0;w=r[U>>0]|0;R=r[j>>0]|0;H=r[T>>0]|0;M=r[M>>0]|0;F=r[S>>0]|0;K=r[E>>0]|0;V=r[k>>0]|0;x=r[O>>0]|0;N=r[P>>0]|0;T=s[D>>0]|0;T=r[(T&15)+(34880+(T>>>4<<4))>>0]|0;r[D>>0]=T;P=s[I>>0]|0;P=r[(P&15)+(34880+(P>>>4<<4))>>0]|0;r[I>>0]=P;U=s[C>>0]|0;U=r[(U&15)+(34880+(U>>>4<<4))>>0]|0;r[C>>0]=U;G=s[B>>0]|0;O=A&255;D=w&255;q=q&255;z=z&255;C=M&255;B=R&255;F=F&255;H=H&255;x=x&255;N=N&255;K=K&255;V=V&255;R=o[n>>2]|0;O=(R>>>16^(s[(O&15)+(34880+(O>>>4<<4))>>0]|0))&255;C=(R>>>8^(s[(C&15)+(34880+(C>>>4<<4))>>0]|0))&255;x=(R^(s[(x&15)+(34880+(x>>>4<<4))>>0]|0))&255;M=o[n+4>>2]|0;D=(M>>>16^(s[(D&15)+(34880+(D>>>4<<4))>>0]|0))&255;B=(M>>>8^(s[(B&15)+(34880+(B>>>4<<4))>>0]|0))&255;N=(M^(s[(N&15)+(34880+(N>>>4<<4))>>0]|0))&255;j=o[n+8>>2]|0;q=(j>>>16^(s[(q&15)+(34880+(q>>>4<<4))>>0]|0))&255;F=(j>>>8^(s[(F&15)+(34880+(F>>>4<<4))>>0]|0))&255;K=(j^(s[(K&15)+(34880+(K>>>4<<4))>>0]|0))&255;n=o[n+12>>2]|0;G=(n>>>24^(s[(G&15)+(34880+(G>>>4<<4))>>0]|0))&255;z=(n>>>16^(s[(z&15)+(34880+(z>>>4<<4))>>0]|0))&255;H=(n>>>8^(s[(H&15)+(34880+(H>>>4<<4))>>0]|0))&255;V=(n^(s[(V&15)+(34880+(V>>>4<<4))>>0]|0))&255;r[t>>0]=R>>>24^T&255;r[t+1>>0]=O;r[t+2>>0]=C;r[t+3>>0]=x;r[t+4>>0]=M>>>24^P&255;r[t+5>>0]=D;r[t+6>>0]=B;r[t+7>>0]=N;r[t+8>>0]=j>>>24^U&255;r[t+9>>0]=q;r[t+10>>0]=F;r[t+11>>0]=K;r[t+12>>0]=G;r[t+13>>0]=z;r[t+14>>0]=H;r[t+15>>0]=V;h=L;return}function Mo(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0,ce=0,ue=0,le=0,de=0,he=0,pe=0,ge=0,me=0,_e=0,ye=0,be=0,ve=0,Ae=0,we=0,Ee=0,Se=0,ke=0,Ie=0,Re=0,Te=0,Oe=0,Ce=0,xe=0,Me=0,Pe=0,De=0,Be=0,Ne=0,je=0,Ue=0,Le=0,qe=0,Fe=0,Ke=0,Ge=0,ze=0,He=0,Ve=0,Qe=0,We=0,Ye=0,Xe=0,Je=0,Ze=0,$e=0,et=0,tt=0,nt=0,rt=0,it=0,ot=0,st=0,at=0,ft=0,ct=0,ut=0,lt=0,dt=0,ht=0,pt=0,gt=0,mt=0,_t=0,yt=0,bt=0,vt=0,At=0,wt=0,Et=0,St=0,kt=0,It=0,Rt=0,Tt=0,Ot=0,Ct=0,xt=0,Mt=0,Pt=0,Dt=0,Bt=0,Nt=0,jt=0,Ut=0,Lt=0,qt=0,Ft=0;Mt=h;h=h+2768|0;yt=Mt+2608|0;bt=Mt+2448|0;Ct=Mt+2288|0;vt=Mt+2128|0;At=Mt+1968|0;wt=Mt+1808|0;xt=Mt+1648|0;Et=Mt+1488|0;St=Mt+1328|0;kt=Mt+1168|0;c=Mt+1008|0;f=Mt+848|0;a=Mt+688|0;i=Mt+528|0;It=Mt+368|0;at=Mt+288|0;Rt=Mt+208|0;Tt=Mt+112|0;Ot=Mt+32|0;ft=Mt;st=ft;ot=st+32|0;do{r[st>>0]=r[t>>0]|0;st=st+1|0;t=t+1|0}while((st|0)<(ot|0));r[ft>>0]=r[ft>>0]&-8;st=ft+31|0;r[st>>0]=r[st>>0]&63|64;st=s[n>>0]|0;pt=xs(s[n+1>>0]|0|0,0,8)|0;ht=I;mt=xs(s[n+2>>0]|0|0,0,16)|0;ht=ht|I;gt=s[n+3>>0]|0;ot=xs(gt|0,0,24)|0;_t=at;o[_t>>2]=pt|st|mt|ot&50331648;o[_t+4>>2]=ht;_t=xs(s[n+4>>0]|0|0,0,8)|0;ht=I;ot=xs(s[n+5>>0]|0|0,0,16)|0;ht=ht|I;mt=s[n+6>>0]|0;st=xs(mt|0,0,24)|0;ht=Cs(_t|gt|ot|st|0,ht|I|0,2)|0;st=at+8|0;o[st>>2]=ht&33554431;o[st+4>>2]=0;st=xs(s[n+7>>0]|0|0,0,8)|0;ht=I;ot=xs(s[n+8>>0]|0|0,0,16)|0;ht=ht|I;gt=s[n+9>>0]|0;_t=xs(gt|0,0,24)|0;ht=Cs(st|mt|ot|_t|0,ht|I|0,3)|0;_t=at+16|0;o[_t>>2]=ht&67108863;o[_t+4>>2]=0;_t=xs(s[n+10>>0]|0|0,0,8)|0;ht=I;ot=xs(s[n+11>>0]|0|0,0,16)|0;ht=ht|I;mt=s[n+12>>0]|0;st=xs(mt|0,0,24)|0;ht=Cs(_t|gt|ot|st|0,ht|I|0,5)|0;st=at+24|0;o[st>>2]=ht&33554431;o[st+4>>2]=0;st=xs(s[n+13>>0]|0|0,0,8)|0;ht=I;ot=xs(s[n+14>>0]|0|0,0,16)|0;ht=ht|I;gt=xs(s[n+15>>0]|0|0,0,24)|0;ht=Cs(st|mt|ot|gt|0,ht|I|0,6)|0;gt=at+32|0;o[gt>>2]=ht&67108863;o[gt+4>>2]=0;gt=s[n+16>>0]|0;ht=xs(s[n+17>>0]|0|0,0,8)|0;ot=I;mt=xs(s[n+18>>0]|0|0,0,16)|0;ot=ot|I;st=s[n+19>>0]|0;_t=xs(st|0,0,24)|0;pt=at+40|0;o[pt>>2]=ht|gt|mt|_t&16777216;o[pt+4>>2]=ot;pt=xs(s[n+20>>0]|0|0,0,8)|0;ot=I;_t=xs(s[n+21>>0]|0|0,0,16)|0;ot=ot|I;mt=s[n+22>>0]|0;gt=xs(mt|0,0,24)|0;ot=Cs(pt|st|_t|gt|0,ot|I|0,1)|0;gt=at+48|0;o[gt>>2]=ot&67108863;o[gt+4>>2]=0;gt=xs(s[n+23>>0]|0|0,0,8)|0;ot=I;_t=xs(s[n+24>>0]|0|0,0,16)|0;ot=ot|I;st=s[n+25>>0]|0;pt=xs(st|0,0,24)|0;ot=Cs(gt|mt|_t|pt|0,ot|I|0,3)|0;pt=at+56|0;o[pt>>2]=ot&33554431;o[pt+4>>2]=0;pt=xs(s[n+26>>0]|0|0,0,8)|0;ot=I;_t=xs(s[n+27>>0]|0|0,0,16)|0;ot=ot|I;mt=s[n+28>>0]|0;gt=xs(mt|0,0,24)|0;ot=Cs(pt|st|_t|gt|0,ot|I|0,4)|0;gt=at+64|0;o[gt>>2]=ot&67108863;o[gt+4>>2]=0;gt=xs(s[n+29>>0]|0|0,0,8)|0;ot=I;_t=xs(s[n+30>>0]|0|0,0,16)|0;ot=ot|I;st=xs(s[n+31>>0]|0|0,0,24)|0;ot=Cs(gt|mt|_t|st|0,ot|I|0,6)|0;st=at+72|0;o[st>>2]=ot&33554431;o[st+4>>2]=0;Ds(Et|0,0,152)|0;st=Et;o[st>>2]=1;o[st+4>>2]=0;Ds(St|0,0,152)|0;st=St;o[st>>2]=1;o[st+4>>2]=0;Ds(kt|0,0,152)|0;Ds(c|0,0,152)|0;Ds(f|0,0,152)|0;st=f;o[st>>2]=1;o[st+4>>2]=0;Ds(a|0,0,152)|0;Ds(i|0,0,152)|0;st=i;o[st>>2]=1;o[st+4>>2]=0;st=xt+80|0;ot=st+72|0;do{o[st>>2]=0;st=st+4|0}while((st|0)<(ot|0));st=xt;t=at;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));oe=Ct+144|0;se=Ct+64|0;ae=Ct+136|0;fe=Ct+56|0;ce=Ct+128|0;ue=Ct+48|0;le=Ct+120|0;de=Ct+40|0;he=Ct+112|0;pe=Ct+32|0;ge=Ct+104|0;me=Ct+24|0;_e=Ct+96|0;ye=Ct+16|0;be=Ct+88|0;ve=Ct+8|0;Ae=Ct+80|0;we=vt+144|0;Ee=vt+64|0;Se=vt+136|0;ke=vt+56|0;Ie=vt+128|0;Re=vt+48|0;Te=vt+120|0;Oe=vt+40|0;Ce=vt+112|0;xe=vt+32|0;Me=vt+104|0;Pe=vt+24|0;De=vt+96|0;Be=vt+16|0;Ne=vt+88|0;je=vt+8|0;Ue=vt+80|0;ie=Ct+72|0;Le=vt+72|0;qe=yt+8|0;Fe=bt+8|0;Ke=yt+16|0;Ge=bt+16|0;ze=yt+24|0;He=bt+24|0;Ve=yt+32|0;Qe=bt+32|0;We=yt+40|0;Ye=bt+40|0;Xe=yt+48|0;Je=bt+48|0;Ze=yt+56|0;$e=bt+56|0;et=yt+64|0;tt=bt+64|0;nt=yt+72|0;rt=bt+72|0;ct=It+80|0;ut=It+8|0;lt=It+16|0;dt=It+24|0;ht=It+32|0;pt=It+40|0;gt=It+48|0;mt=It+56|0;_t=It+64|0;it=It+72|0;d=xt;re=0;t=c;n=Et;c=kt;u=St;while(1){l=r[ft+(31-re)>>0]|0;$=0;ee=i;te=a;ne=f;J=t;f=n;i=c;a=u;Z=d;while(1){Y=l&255;X=Y>>>7;Po(a,Z,X,0);Po(i,f,X,0);E=a;u=o[E>>2]|0;E=o[E+4>>2]|0;V=a+8|0;z=V;M=o[z>>2]|0;z=o[z+4>>2]|0;Nt=a+16|0;R=Nt;k=o[R>>2]|0;R=o[R+4>>2]|0;T=a+24|0;Pt=T;Q=o[Pt>>2]|0;Pt=o[Pt+4>>2]|0;b=a+32|0;v=b;jt=o[v>>2]|0;v=o[v+4>>2]|0;_=a+40|0;l=_;O=o[l>>2]|0;l=o[l+4>>2]|0;G=a+48|0;ot=G;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;B=a+56|0;C=B;q=o[C>>2]|0;C=o[C+4>>2]|0;Ut=a+64|0;A=Ut;U=o[A>>2]|0;A=o[A+4>>2]|0;m=a+72|0;Dt=m;Bt=o[Dt>>2]|0;Dt=o[Dt+4>>2]|0;S=i;j=o[S>>2]|0;S=o[S+4>>2]|0;y=Ss(j|0,S|0,u|0,E|0)|0;p=a;o[p>>2]=y;o[p+4>>2]=I;p=i+8|0;y=p;H=o[y>>2]|0;y=o[y+4>>2]|0;D=Ss(H|0,y|0,M|0,z|0)|0;o[V>>2]=D;o[V+4>>2]=I;V=i+16|0;D=V;L=o[D>>2]|0;D=o[D+4>>2]|0;c=Ss(L|0,D|0,k|0,R|0)|0;o[Nt>>2]=c;o[Nt+4>>2]=I;Nt=i+24|0;c=Nt;n=o[c>>2]|0;c=o[c+4>>2]|0;qt=Ss(n|0,c|0,Q|0,Pt|0)|0;o[T>>2]=qt;o[T+4>>2]=I;T=i+32|0;qt=T;g=o[qt>>2]|0;qt=o[qt+4>>2]|0;N=Ss(g|0,qt|0,jt|0,v|0)|0;o[b>>2]=N;o[b+4>>2]=I;b=i+40|0;N=b;F=o[N>>2]|0;N=o[N+4>>2]|0;w=Ss(F|0,N|0,O|0,l|0)|0;o[_>>2]=w;o[_+4>>2]=I;_=i+48|0;w=_;P=o[w>>2]|0;w=o[w+4>>2]|0;d=Ss(P|0,w|0,W|0,ot|0)|0;o[G>>2]=d;o[G+4>>2]=I;G=i+56|0;d=G;x=o[d>>2]|0;d=o[d+4>>2]|0;st=Ss(x|0,d|0,q|0,C|0)|0;o[B>>2]=st;o[B+4>>2]=I;B=i+64|0;st=B;t=o[st>>2]|0;st=o[st+4>>2]|0;Lt=Ss(t|0,st|0,U|0,A|0)|0;o[Ut>>2]=Lt;o[Ut+4>>2]=I;Ut=i+72|0;Lt=Ut;K=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;Ft=Ss(K|0,Lt|0,Bt|0,Dt|0)|0;o[m>>2]=Ft;o[m+4>>2]=I;S=ks(u|0,E|0,j|0,S|0)|0;j=i;o[j>>2]=S;o[j+4>>2]=I;y=ks(M|0,z|0,H|0,y|0)|0;o[p>>2]=y;o[p+4>>2]=I;D=ks(k|0,R|0,L|0,D|0)|0;o[V>>2]=D;o[V+4>>2]=I;c=ks(Q|0,Pt|0,n|0,c|0)|0;o[Nt>>2]=c;o[Nt+4>>2]=I;qt=ks(jt|0,v|0,g|0,qt|0)|0;o[T>>2]=qt;o[T+4>>2]=I;N=ks(O|0,l|0,F|0,N|0)|0;o[b>>2]=N;o[b+4>>2]=I;w=ks(W|0,ot|0,P|0,w|0)|0;o[_>>2]=w;o[_+4>>2]=I;d=ks(q|0,C|0,x|0,d|0)|0;o[G>>2]=d;o[G+4>>2]=I;st=ks(U|0,A|0,t|0,st|0)|0;o[B>>2]=st;o[B+4>>2]=I;Lt=ks(Bt|0,Dt|0,K|0,Lt|0)|0;o[Ut>>2]=Lt;o[Ut+4>>2]=I;Ut=Z;Lt=o[Ut>>2]|0;Ut=o[Ut+4>>2]|0;K=Z+8|0;Dt=K;Bt=o[Dt>>2]|0;Dt=o[Dt+4>>2]|0;B=Z+16|0;st=B;t=o[st>>2]|0;st=o[st+4>>2]|0;A=Z+24|0;U=A;G=o[U>>2]|0;U=o[U+4>>2]|0;d=Z+32|0;x=d;C=o[x>>2]|0;x=o[x+4>>2]|0;q=Z+40|0;_=q;w=o[_>>2]|0;_=o[_+4>>2]|0;P=Z+48|0;ot=P;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;b=Z+56|0;N=b;F=o[N>>2]|0;N=o[N+4>>2]|0;l=Z+64|0;O=l;T=o[O>>2]|0;O=o[O+4>>2]|0;qt=Z+72|0;g=qt;v=o[g>>2]|0;g=o[g+4>>2]|0;jt=f;Nt=o[jt>>2]|0;jt=o[jt+4>>2]|0;c=Ss(Nt|0,jt|0,Lt|0,Ut|0)|0;n=Z;o[n>>2]=c;o[n+4>>2]=I;n=f+8|0;c=n;Pt=o[c>>2]|0;c=o[c+4>>2]|0;Q=Ss(Pt|0,c|0,Bt|0,Dt|0)|0;o[K>>2]=Q;o[K+4>>2]=I;K=f+16|0;Q=K;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;D=Ss(V|0,Q|0,t|0,st|0)|0;o[B>>2]=D;o[B+4>>2]=I;B=f+24|0;D=B;L=o[D>>2]|0;D=o[D+4>>2]|0;R=Ss(L|0,D|0,G|0,U|0)|0;o[A>>2]=R;o[A+4>>2]=I;A=f+32|0;R=A;k=o[R>>2]|0;R=o[R+4>>2]|0;p=Ss(k|0,R|0,C|0,x|0)|0;o[d>>2]=p;o[d+4>>2]=I;d=f+40|0;p=d;y=o[p>>2]|0;p=o[p+4>>2]|0;H=Ss(y|0,p|0,w|0,_|0)|0;o[q>>2]=H;o[q+4>>2]=I;q=f+48|0;H=q;z=o[H>>2]|0;H=o[H+4>>2]|0;M=Ss(z|0,H|0,W|0,ot|0)|0;o[P>>2]=M;o[P+4>>2]=I;P=f+56|0;M=P;j=o[M>>2]|0;M=o[M+4>>2]|0;S=Ss(j|0,M|0,F|0,N|0)|0;o[b>>2]=S;o[b+4>>2]=I;b=f+64|0;S=b;E=o[S>>2]|0;S=o[S+4>>2]|0;u=Ss(E|0,S|0,T|0,O|0)|0;o[l>>2]=u;o[l+4>>2]=I;l=f+72|0;u=l;m=o[u>>2]|0;u=o[u+4>>2]|0;Ft=Ss(m|0,u|0,v|0,g|0)|0;o[qt>>2]=Ft;o[qt+4>>2]=I;jt=ks(Lt|0,Ut|0,Nt|0,jt|0)|0;Nt=f;o[Nt>>2]=jt;o[Nt+4>>2]=I;c=ks(Bt|0,Dt|0,Pt|0,c|0)|0;o[n>>2]=c;o[n+4>>2]=I;Q=ks(t|0,st|0,V|0,Q|0)|0;o[K>>2]=Q;o[K+4>>2]=I;D=ks(G|0,U|0,L|0,D|0)|0;o[B>>2]=D;o[B+4>>2]=I;R=ks(C|0,x|0,k|0,R|0)|0;o[A>>2]=R;o[A+4>>2]=I;p=ks(w|0,_|0,y|0,p|0)|0;o[d>>2]=p;o[d+4>>2]=I;H=ks(W|0,ot|0,z|0,H|0)|0;o[q>>2]=H;o[q+4>>2]=I;M=ks(F|0,N|0,j|0,M|0)|0;o[P>>2]=M;o[P+4>>2]=I;S=ks(T|0,O|0,E|0,S|0)|0;o[b>>2]=S;o[b+4>>2]=I;u=ks(v|0,g|0,m|0,u|0)|0;o[l>>2]=u;o[l+4>>2]=I;Do(Ct,Z,i);Do(vt,a,f);l=oe;u=o[l>>2]|0;l=o[l+4>>2]|0;m=se;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Es(u|0,l|0,18,0)|0;b=I;l=Ss(g|0,m|0,u|0,l|0)|0;b=Ss(l|0,I|0,v|0,b|0)|0;v=se;o[v>>2]=b;o[v+4>>2]=I;v=ae;b=o[v>>2]|0;v=o[v+4>>2]|0;l=fe;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Es(b|0,v|0,18,0)|0;g=I;v=Ss(u|0,l|0,b|0,v|0)|0;g=Ss(v|0,I|0,m|0,g|0)|0;m=fe;o[m>>2]=g;o[m+4>>2]=I;m=ce;g=o[m>>2]|0;m=o[m+4>>2]|0;v=ue;b=o[v>>2]|0;v=o[v+4>>2]|0;l=Es(g|0,m|0,18,0)|0;u=I;m=Ss(b|0,v|0,g|0,m|0)|0;u=Ss(m|0,I|0,l|0,u|0)|0;l=ue;o[l>>2]=u;o[l+4>>2]=I;l=le;u=o[l>>2]|0;l=o[l+4>>2]|0;m=de;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Es(u|0,l|0,18,0)|0;b=I;l=Ss(g|0,m|0,u|0,l|0)|0;b=Ss(l|0,I|0,v|0,b|0)|0;v=de;o[v>>2]=b;o[v+4>>2]=I;v=he;b=o[v>>2]|0;v=o[v+4>>2]|0;l=pe;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Es(b|0,v|0,18,0)|0;g=I;v=Ss(u|0,l|0,b|0,v|0)|0;g=Ss(v|0,I|0,m|0,g|0)|0;m=pe;o[m>>2]=g;o[m+4>>2]=I;m=ge;g=o[m>>2]|0;m=o[m+4>>2]|0;v=me;b=o[v>>2]|0;v=o[v+4>>2]|0;l=Es(g|0,m|0,18,0)|0;u=I;m=Ss(b|0,v|0,g|0,m|0)|0;u=Ss(m|0,I|0,l|0,u|0)|0;l=me;o[l>>2]=u;o[l+4>>2]=I;l=_e;u=o[l>>2]|0;l=o[l+4>>2]|0;m=ye;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Es(u|0,l|0,18,0)|0;b=I;l=Ss(g|0,m|0,u|0,l|0)|0;b=Ss(l|0,I|0,v|0,b|0)|0;v=ye;o[v>>2]=b;o[v+4>>2]=I;v=be;b=o[v>>2]|0;v=o[v+4>>2]|0;l=ve;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Es(b|0,v|0,18,0)|0;g=I;v=Ss(u|0,l|0,b|0,v|0)|0;g=Ss(v|0,I|0,m|0,g|0)|0;m=ve;o[m>>2]=g;o[m+4>>2]=I;m=Ae;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Ct;b=o[v>>2]|0;v=o[v+4>>2]|0;l=Es(g|0,m|0,18,0)|0;u=I;m=Ss(b|0,v|0,g|0,m|0)|0;u=Ss(m|0,I|0,l|0,u|0)|0;l=Ct;o[l>>2]=u;o[l+4>>2]=I;Bo(Ct);l=we;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Ee;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Es(u|0,l|0,18,0)|0;b=I;l=Ss(g|0,m|0,u|0,l|0)|0;b=Ss(l|0,I|0,v|0,b|0)|0;v=Ee;o[v>>2]=b;o[v+4>>2]=I;v=Se;b=o[v>>2]|0;v=o[v+4>>2]|0;l=ke;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Es(b|0,v|0,18,0)|0;g=I;v=Ss(u|0,l|0,b|0,v|0)|0;g=Ss(v|0,I|0,m|0,g|0)|0;m=ke;o[m>>2]=g;o[m+4>>2]=I;m=Ie;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Re;b=o[v>>2]|0;v=o[v+4>>2]|0;l=Es(g|0,m|0,18,0)|0;u=I;m=Ss(b|0,v|0,g|0,m|0)|0;u=Ss(m|0,I|0,l|0,u|0)|0;l=Re;o[l>>2]=u;o[l+4>>2]=I;l=Te;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Oe;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Es(u|0,l|0,18,0)|0;b=I;l=Ss(g|0,m|0,u|0,l|0)|0;b=Ss(l|0,I|0,v|0,b|0)|0;v=Oe;o[v>>2]=b;o[v+4>>2]=I;v=Ce;b=o[v>>2]|0;v=o[v+4>>2]|0;l=xe;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Es(b|0,v|0,18,0)|0;g=I;v=Ss(u|0,l|0,b|0,v|0)|0;g=Ss(v|0,I|0,m|0,g|0)|0;m=xe;o[m>>2]=g;o[m+4>>2]=I;m=Me;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Pe;b=o[v>>2]|0;v=o[v+4>>2]|0;l=Es(g|0,m|0,18,0)|0;u=I;m=Ss(b|0,v|0,g|0,m|0)|0;u=Ss(m|0,I|0,l|0,u|0)|0;l=Pe;o[l>>2]=u;o[l+4>>2]=I;l=De;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Be;g=o[m>>2]|0;m=o[m+4>>2]|0;v=Es(u|0,l|0,18,0)|0;b=I;l=Ss(g|0,m|0,u|0,l|0)|0;b=Ss(l|0,I|0,v|0,b|0)|0;v=Be;o[v>>2]=b;o[v+4>>2]=I;v=Ne;b=o[v>>2]|0;v=o[v+4>>2]|0;l=je;u=o[l>>2]|0;l=o[l+4>>2]|0;m=Es(b|0,v|0,18,0)|0;g=I;v=Ss(u|0,l|0,b|0,v|0)|0;g=Ss(v|0,I|0,m|0,g|0)|0;m=je;o[m>>2]=g;o[m+4>>2]=I;m=Ue;g=o[m>>2]|0;m=o[m+4>>2]|0;v=vt;b=o[v>>2]|0;v=o[v+4>>2]|0;l=Es(g|0,m|0,18,0)|0;u=I;m=Ss(b|0,v|0,g|0,m|0)|0;u=Ss(m|0,I|0,l|0,u|0)|0;l=vt;o[l>>2]=u;o[l+4>>2]=I;Bo(vt);l=Ct;u=o[l>>2]|0;l=o[l+4>>2]|0;m=ve;g=o[m>>2]|0;m=o[m+4>>2]|0;v=ye;b=o[v>>2]|0;v=o[v+4>>2]|0;S=me;E=o[S>>2]|0;S=o[S+4>>2]|0;O=pe;T=o[O>>2]|0;O=o[O+4>>2]|0;P=de;M=o[P>>2]|0;P=o[P+4>>2]|0;j=ue;N=o[j>>2]|0;j=o[j+4>>2]|0;F=fe;q=o[F>>2]|0;F=o[F+4>>2]|0;H=se;z=o[H>>2]|0;H=o[H+4>>2]|0;ot=ie;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;d=vt;p=o[d>>2]|0;d=o[d+4>>2]|0;y=Ss(p|0,d|0,u|0,l|0)|0;_=Ct;o[_>>2]=y;o[_+4>>2]=I;_=je;y=o[_>>2]|0;_=o[_+4>>2]|0;w=Ss(y|0,_|0,g|0,m|0)|0;A=ve;o[A>>2]=w;o[A+4>>2]=I;A=Be;w=o[A>>2]|0;A=o[A+4>>2]|0;R=Ss(w|0,A|0,b|0,v|0)|0;k=ye;o[k>>2]=R;o[k+4>>2]=I;k=Pe;R=o[k>>2]|0;k=o[k+4>>2]|0;x=Ss(R|0,k|0,E|0,S|0)|0;C=me;o[C>>2]=x;o[C+4>>2]=I;C=xe;x=o[C>>2]|0;C=o[C+4>>2]|0;B=Ss(x|0,C|0,T|0,O|0)|0;D=pe;o[D>>2]=B;o[D+4>>2]=I;D=Oe;B=o[D>>2]|0;D=o[D+4>>2]|0;L=Ss(B|0,D|0,M|0,P|0)|0;U=de;o[U>>2]=L;o[U+4>>2]=I;U=Re;L=o[U>>2]|0;U=o[U+4>>2]|0;G=Ss(L|0,U|0,N|0,j|0)|0;K=ue;o[K>>2]=G;o[K+4>>2]=I;K=ke;G=o[K>>2]|0;K=o[K+4>>2]|0;Q=Ss(G|0,K|0,q|0,F|0)|0;V=fe;o[V>>2]=Q;o[V+4>>2]=I;V=Ee;Q=o[V>>2]|0;V=o[V+4>>2]|0;st=Ss(Q|0,V|0,z|0,H|0)|0;t=se;o[t>>2]=st;o[t+4>>2]=I;t=Le;st=o[t>>2]|0;t=o[t+4>>2]|0;n=Ss(st|0,t|0,W|0,ot|0)|0;c=ie;o[c>>2]=n;o[c+4>>2]=I;d=ks(u|0,l|0,p|0,d|0)|0;p=vt;o[p>>2]=d;o[p+4>>2]=I;_=ks(g|0,m|0,y|0,_|0)|0;y=je;o[y>>2]=_;o[y+4>>2]=I;A=ks(b|0,v|0,w|0,A|0)|0;w=Be;o[w>>2]=A;o[w+4>>2]=I;k=ks(E|0,S|0,R|0,k|0)|0;R=Pe;o[R>>2]=k;o[R+4>>2]=I;C=ks(T|0,O|0,x|0,C|0)|0;x=xe;o[x>>2]=C;o[x+4>>2]=I;D=ks(M|0,P|0,B|0,D|0)|0;B=Oe;o[B>>2]=D;o[B+4>>2]=I;U=ks(N|0,j|0,L|0,U|0)|0;L=Re;o[L>>2]=U;o[L+4>>2]=I;K=ks(q|0,F|0,G|0,K|0)|0;G=ke;o[G>>2]=K;o[G+4>>2]=I;V=ks(z|0,H|0,Q|0,V|0)|0;Q=Ee;o[Q>>2]=V;o[Q+4>>2]=I;t=ks(W|0,ot|0,st|0,t|0)|0;st=Le;o[st>>2]=t;o[st+4>>2]=I;No(wt,Ct);No(At,vt);Do(vt,At,at);st=we;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Ee;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=I;st=Ss(W|0,ot|0,t|0,st|0)|0;V=Ss(st|0,I|0,Q|0,V|0)|0;Q=Ee;o[Q>>2]=V;o[Q+4>>2]=I;Q=Se;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=ke;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=I;Q=Ss(t|0,st|0,V|0,Q|0)|0;W=Ss(Q|0,I|0,ot|0,W|0)|0;ot=ke;o[ot>>2]=W;o[ot+4>>2]=I;ot=Ie;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Re;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=I;ot=Ss(V|0,Q|0,W|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=Re;o[st>>2]=t;o[st+4>>2]=I;st=Te;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Oe;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=I;st=Ss(W|0,ot|0,t|0,st|0)|0;V=Ss(st|0,I|0,Q|0,V|0)|0;Q=Oe;o[Q>>2]=V;o[Q+4>>2]=I;Q=Ce;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=xe;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=I;Q=Ss(t|0,st|0,V|0,Q|0)|0;W=Ss(Q|0,I|0,ot|0,W|0)|0;ot=xe;o[ot>>2]=W;o[ot+4>>2]=I;ot=Me;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Pe;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=I;ot=Ss(V|0,Q|0,W|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=Pe;o[st>>2]=t;o[st+4>>2]=I;st=De;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Be;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=Es(t|0,st|0,18,0)|0;V=I;st=Ss(W|0,ot|0,t|0,st|0)|0;V=Ss(st|0,I|0,Q|0,V|0)|0;Q=Be;o[Q>>2]=V;o[Q+4>>2]=I;Q=Ne;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=je;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(V|0,Q|0,18,0)|0;W=I;Q=Ss(t|0,st|0,V|0,Q|0)|0;W=Ss(Q|0,I|0,ot|0,W|0)|0;ot=je;o[ot>>2]=W;o[ot+4>>2]=I;ot=Ue;W=o[ot>>2]|0;ot=o[ot+4>>2]|0;Q=vt;V=o[Q>>2]|0;Q=o[Q+4>>2]|0;st=Es(W|0,ot|0,18,0)|0;t=I;ot=Ss(V|0,Q|0,W|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=vt;o[st>>2]=t;o[st+4>>2]=I;Bo(vt);st=J;t=wt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));st=ne;t=vt;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(yt,a);No(bt,i);Do(te,yt,bt);c=te+144|0;p=o[c>>2]|0;c=o[c+4>>2]|0;d=te+64|0;l=d;u=o[l>>2]|0;l=o[l+4>>2]|0;t=Es(p|0,c|0,18,0)|0;n=I;c=Ss(u|0,l|0,p|0,c|0)|0;n=Ss(c|0,I|0,t|0,n|0)|0;o[d>>2]=n;o[d+4>>2]=I;d=te+136|0;n=o[d>>2]|0;d=o[d+4>>2]|0;t=te+56|0;c=t;p=o[c>>2]|0;c=o[c+4>>2]|0;l=Es(n|0,d|0,18,0)|0;u=I;d=Ss(p|0,c|0,n|0,d|0)|0;u=Ss(d|0,I|0,l|0,u|0)|0;o[t>>2]=u;o[t+4>>2]=I;t=te+128|0;u=o[t>>2]|0;t=o[t+4>>2]|0;l=te+48|0;d=l;n=o[d>>2]|0;d=o[d+4>>2]|0;c=Es(u|0,t|0,18,0)|0;p=I;t=Ss(n|0,d|0,u|0,t|0)|0;p=Ss(t|0,I|0,c|0,p|0)|0;o[l>>2]=p;o[l+4>>2]=I;l=te+120|0;p=o[l>>2]|0;l=o[l+4>>2]|0;c=te+40|0;t=c;u=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(p|0,l|0,18,0)|0;n=I;l=Ss(u|0,t|0,p|0,l|0)|0;n=Ss(l|0,I|0,d|0,n|0)|0;o[c>>2]=n;o[c+4>>2]=I;c=te+112|0;n=o[c>>2]|0;c=o[c+4>>2]|0;d=te+32|0;l=d;p=o[l>>2]|0;l=o[l+4>>2]|0;t=Es(n|0,c|0,18,0)|0;u=I;c=Ss(p|0,l|0,n|0,c|0)|0;u=Ss(c|0,I|0,t|0,u|0)|0;o[d>>2]=u;o[d+4>>2]=I;d=te+104|0;u=o[d>>2]|0;d=o[d+4>>2]|0;t=te+24|0;c=t;n=o[c>>2]|0;c=o[c+4>>2]|0;l=Es(u|0,d|0,18,0)|0;p=I;d=Ss(n|0,c|0,u|0,d|0)|0;p=Ss(d|0,I|0,l|0,p|0)|0;o[t>>2]=p;o[t+4>>2]=I;t=te+96|0;p=o[t>>2]|0;t=o[t+4>>2]|0;l=te+16|0;d=l;u=o[d>>2]|0;d=o[d+4>>2]|0;c=Es(p|0,t|0,18,0)|0;n=I;t=Ss(u|0,d|0,p|0,t|0)|0;n=Ss(t|0,I|0,c|0,n|0)|0;o[l>>2]=n;o[l+4>>2]=I;l=te+88|0;n=o[l>>2]|0;l=o[l+4>>2]|0;c=te+8|0;t=c;p=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(n|0,l|0,18,0)|0;u=I;l=Ss(p|0,t|0,n|0,l|0)|0;u=Ss(l|0,I|0,d|0,u|0)|0;o[c>>2]=u;o[c+4>>2]=I;c=te+80|0;u=o[c>>2]|0;c=o[c+4>>2]|0;d=te;l=o[d>>2]|0;d=o[d+4>>2]|0;n=Es(u|0,c|0,18,0)|0;t=I;c=Ss(l|0,d|0,u|0,c|0)|0;t=Ss(c|0,I|0,n|0,t|0)|0;n=te;o[n>>2]=t;o[n+4>>2]=I;Bo(te);n=yt;t=o[n>>2]|0;n=o[n+4>>2]|0;c=bt;c=ks(t|0,n|0,o[c>>2]|0,o[c+4>>2]|0)|0;u=I;d=bt;o[d>>2]=c;o[d+4>>2]=u;d=qe;l=o[d>>2]|0;d=o[d+4>>2]|0;p=Fe;p=ks(l|0,d|0,o[p>>2]|0,o[p+4>>2]|0)|0;g=I;_=Fe;o[_>>2]=p;o[_+4>>2]=g;_=Ke;m=o[_>>2]|0;_=o[_+4>>2]|0;y=Ge;y=ks(m|0,_|0,o[y>>2]|0,o[y+4>>2]|0)|0;b=I;A=Ge;o[A>>2]=y;o[A+4>>2]=b;A=ze;v=o[A>>2]|0;A=o[A+4>>2]|0;w=He;w=ks(v|0,A|0,o[w>>2]|0,o[w+4>>2]|0)|0;E=I;k=He;o[k>>2]=w;o[k+4>>2]=E;k=Ve;S=o[k>>2]|0;k=o[k+4>>2]|0;R=Qe;R=ks(S|0,k|0,o[R>>2]|0,o[R+4>>2]|0)|0;T=I;C=Qe;o[C>>2]=R;o[C+4>>2]=T;C=We;O=o[C>>2]|0;C=o[C+4>>2]|0;x=Ye;x=ks(O|0,C|0,o[x>>2]|0,o[x+4>>2]|0)|0;M=I;D=Ye;o[D>>2]=x;o[D+4>>2]=M;D=Xe;P=o[D>>2]|0;D=o[D+4>>2]|0;B=Je;B=ks(P|0,D|0,o[B>>2]|0,o[B+4>>2]|0)|0;N=I;U=Je;o[U>>2]=B;o[U+4>>2]=N;U=Ze;j=o[U>>2]|0;U=o[U+4>>2]|0;L=$e;L=ks(j|0,U|0,o[L>>2]|0,o[L+4>>2]|0)|0;q=I;K=$e;o[K>>2]=L;o[K+4>>2]=q;K=et;F=o[K>>2]|0;K=o[K+4>>2]|0;G=tt;G=ks(F|0,K|0,o[G>>2]|0,o[G+4>>2]|0)|0;z=I;V=tt;o[V>>2]=G;o[V+4>>2]=z;V=nt;H=o[V>>2]|0;V=o[V+4>>2]|0;Q=rt;Q=ks(H|0,V|0,o[Q>>2]|0,o[Q+4>>2]|0)|0;W=I;st=rt;o[st>>2]=Q;o[st+4>>2]=W;st=ct;ot=st+72|0;do{o[st>>2]=0;st=st+4|0}while((st|0)<(ot|0));Lt=Es(c|0,u|0,121665,0)|0;Bt=It;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=Es(p|0,g|0,121665,0)|0;Lt=ut;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=Es(y|0,b|0,121665,0)|0;Bt=lt;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=Es(w|0,E|0,121665,0)|0;Lt=dt;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=Es(R|0,T|0,121665,0)|0;Bt=ht;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=Es(x|0,M|0,121665,0)|0;Lt=pt;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=Es(B|0,N|0,121665,0)|0;Bt=gt;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=Es(L|0,q|0,121665,0)|0;Lt=mt;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=Es(G|0,z|0,121665,0)|0;Bt=_t;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=Es(Q|0,W|0,121665,0)|0;Lt=it;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Bo(It);Lt=It;Lt=Ss(o[Lt>>2]|0,o[Lt+4>>2]|0,t|0,n|0)|0;Bt=It;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=ut;Bt=Ss(o[Bt>>2]|0,o[Bt+4>>2]|0,l|0,d|0)|0;Lt=ut;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=lt;Lt=Ss(o[Lt>>2]|0,o[Lt+4>>2]|0,m|0,_|0)|0;Bt=lt;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=dt;Bt=Ss(o[Bt>>2]|0,o[Bt+4>>2]|0,v|0,A|0)|0;Lt=dt;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=ht;Lt=Ss(o[Lt>>2]|0,o[Lt+4>>2]|0,S|0,k|0)|0;Bt=ht;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=pt;Bt=Ss(o[Bt>>2]|0,o[Bt+4>>2]|0,O|0,C|0)|0;Lt=pt;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=gt;Lt=Ss(o[Lt>>2]|0,o[Lt+4>>2]|0,P|0,D|0)|0;Bt=gt;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=mt;Bt=Ss(o[Bt>>2]|0,o[Bt+4>>2]|0,j|0,U|0)|0;Lt=mt;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Lt=_t;Lt=Ss(o[Lt>>2]|0,o[Lt+4>>2]|0,F|0,K|0)|0;Bt=_t;o[Bt>>2]=Lt;o[Bt+4>>2]=I;Bt=it;Bt=Ss(o[Bt>>2]|0,o[Bt+4>>2]|0,H|0,V|0)|0;Lt=it;o[Lt>>2]=Bt;o[Lt+4>>2]=I;Do(ee,bt,It);Lt=ee+144|0;Bt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee+64|0;Nt=jt;Ut=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;qt=Es(Bt|0,Lt|0,18,0)|0;Ft=I;Lt=Ss(Ut|0,Nt|0,Bt|0,Lt|0)|0;Ft=Ss(Lt|0,I|0,qt|0,Ft|0)|0;o[jt>>2]=Ft;o[jt+4>>2]=I;jt=ee+136|0;Ft=o[jt>>2]|0;jt=o[jt+4>>2]|0;qt=ee+56|0;Lt=qt;Bt=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;Nt=Es(Ft|0,jt|0,18,0)|0;Ut=I;jt=Ss(Bt|0,Lt|0,Ft|0,jt|0)|0;Ut=Ss(jt|0,I|0,Nt|0,Ut|0)|0;o[qt>>2]=Ut;o[qt+4>>2]=I;qt=ee+128|0;Ut=o[qt>>2]|0;qt=o[qt+4>>2]|0;Nt=ee+48|0;jt=Nt;Ft=o[jt>>2]|0;jt=o[jt+4>>2]|0;Lt=Es(Ut|0,qt|0,18,0)|0;Bt=I;qt=Ss(Ft|0,jt|0,Ut|0,qt|0)|0;Bt=Ss(qt|0,I|0,Lt|0,Bt|0)|0;o[Nt>>2]=Bt;o[Nt+4>>2]=I;Nt=ee+120|0;Bt=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;Lt=ee+40|0;qt=Lt;Ut=o[qt>>2]|0;qt=o[qt+4>>2]|0;jt=Es(Bt|0,Nt|0,18,0)|0;Ft=I;Nt=Ss(Ut|0,qt|0,Bt|0,Nt|0)|0;Ft=Ss(Nt|0,I|0,jt|0,Ft|0)|0;o[Lt>>2]=Ft;o[Lt+4>>2]=I;Lt=ee+112|0;Ft=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee+32|0;Nt=jt;Bt=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;qt=Es(Ft|0,Lt|0,18,0)|0;Ut=I;Lt=Ss(Bt|0,Nt|0,Ft|0,Lt|0)|0;Ut=Ss(Lt|0,I|0,qt|0,Ut|0)|0;o[jt>>2]=Ut;o[jt+4>>2]=I;jt=ee+104|0;Ut=o[jt>>2]|0;jt=o[jt+4>>2]|0;qt=ee+24|0;Lt=qt;Ft=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;Nt=Es(Ut|0,jt|0,18,0)|0;Bt=I;jt=Ss(Ft|0,Lt|0,Ut|0,jt|0)|0;Bt=Ss(jt|0,I|0,Nt|0,Bt|0)|0;o[qt>>2]=Bt;o[qt+4>>2]=I;qt=ee+96|0;Bt=o[qt>>2]|0;qt=o[qt+4>>2]|0;Nt=ee+16|0;jt=Nt;Ut=o[jt>>2]|0;jt=o[jt+4>>2]|0;Lt=Es(Bt|0,qt|0,18,0)|0;Ft=I;qt=Ss(Ut|0,jt|0,Bt|0,qt|0)|0;Ft=Ss(qt|0,I|0,Lt|0,Ft|0)|0;o[Nt>>2]=Ft;o[Nt+4>>2]=I;Nt=ee+88|0;Ft=o[Nt>>2]|0;Nt=o[Nt+4>>2]|0;Lt=ee+8|0;qt=Lt;Bt=o[qt>>2]|0;qt=o[qt+4>>2]|0;jt=Es(Ft|0,Nt|0,18,0)|0;Ut=I;Nt=Ss(Bt|0,qt|0,Ft|0,Nt|0)|0;Ut=Ss(Nt|0,I|0,jt|0,Ut|0)|0;o[Lt>>2]=Ut;o[Lt+4>>2]=I;Lt=ee+80|0;Ut=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;jt=ee;Nt=o[jt>>2]|0;jt=o[jt+4>>2]|0;Ft=Es(Ut|0,Lt|0,18,0)|0;qt=I;Lt=Ss(Nt|0,jt|0,Ut|0,Lt|0)|0;qt=Ss(Lt|0,I|0,Ft|0,qt|0)|0;Ft=ee;o[Ft>>2]=qt;o[Ft+4>>2]=I;Bo(ee);Po(te,J,X,0);Po(ee,ne,X,0);$=$+1|0;if(($|0)==8)break;else{Ut=Z;Lt=f;qt=a;Ft=i;l=Y<<1&255;Z=J;a=te;i=ee;f=ne;J=Ut;ne=Lt;te=qt;ee=Ft}}re=re+1|0;if((re|0)==32)break;else{d=J;t=Z;n=ne;c=ee;u=te}}st=Rt;t=te;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));st=Tt;t=ee;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(yt,Tt);No(kt,yt);No(St,kt);Do(It,St,Tt);n=It+144|0;u=n;c=o[u>>2]|0;u=o[u+4>>2]|0;f=_t;a=o[f>>2]|0;f=o[f+4>>2]|0;i=Es(c|0,u|0,18,0)|0;l=I;u=Ss(a|0,f|0,c|0,u|0)|0;l=Ss(u|0,I|0,i|0,l|0)|0;i=_t;o[i>>2]=l;o[i+4>>2]=I;i=It+136|0;l=i;u=o[l>>2]|0;l=o[l+4>>2]|0;c=mt;f=o[c>>2]|0;c=o[c+4>>2]|0;a=Es(u|0,l|0,18,0)|0;d=I;l=Ss(f|0,c|0,u|0,l|0)|0;d=Ss(l|0,I|0,a|0,d|0)|0;a=mt;o[a>>2]=d;o[a+4>>2]=I;a=It+128|0;d=a;l=o[d>>2]|0;d=o[d+4>>2]|0;u=gt;c=o[u>>2]|0;u=o[u+4>>2]|0;f=Es(l|0,d|0,18,0)|0;ot=I;d=Ss(c|0,u|0,l|0,d|0)|0;ot=Ss(d|0,I|0,f|0,ot|0)|0;f=gt;o[f>>2]=ot;o[f+4>>2]=I;f=It+120|0;ot=f;d=o[ot>>2]|0;ot=o[ot+4>>2]|0;l=pt;u=o[l>>2]|0;l=o[l+4>>2]|0;c=Es(d|0,ot|0,18,0)|0;t=I;ot=Ss(u|0,l|0,d|0,ot|0)|0;t=Ss(ot|0,I|0,c|0,t|0)|0;c=pt;o[c>>2]=t;o[c+4>>2]=I;c=It+112|0;t=c;ot=o[t>>2]|0;t=o[t+4>>2]|0;d=ht;l=o[d>>2]|0;d=o[d+4>>2]|0;u=Es(ot|0,t|0,18,0)|0;st=I;t=Ss(l|0,d|0,ot|0,t|0)|0;st=Ss(t|0,I|0,u|0,st|0)|0;u=ht;o[u>>2]=st;o[u+4>>2]=I;u=It+104|0;st=u;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=dt;d=o[ot>>2]|0;ot=o[ot+4>>2]|0;l=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(d|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,l|0,Lt|0)|0;l=dt;o[l>>2]=Lt;o[l+4>>2]=I;l=It+96|0;Lt=l;st=o[Lt>>2]|0;Lt=o[Lt+4>>2]|0;t=lt;ot=o[t>>2]|0;t=o[t+4>>2]|0;d=Es(st|0,Lt|0,18,0)|0;qt=I;Lt=Ss(ot|0,t|0,st|0,Lt|0)|0;qt=Ss(Lt|0,I|0,d|0,qt|0)|0;d=lt;o[d>>2]=qt;o[d+4>>2]=I;d=It+88|0;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=bt;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Do(It,bt,yt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=Ct;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,Ct);Do(It,St,bt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=vt;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,vt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);Do(It,St,vt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=At;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,At);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);Do(It,kt,At);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=wt;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,wt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);Do(It,kt,wt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=St;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);Do(It,St,At);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=xt;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,xt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);Do(It,kt,xt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=Et;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,Et);No(St,kt);t=2;do{No(kt,St);No(St,kt);t=t+2|0}while(t>>>0<100);Do(It,St,Et);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=kt;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);Do(It,kt,xt);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=St;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));No(kt,St);No(St,kt);No(kt,St);No(St,kt);No(kt,St);Do(It,kt,Ct);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=Ot;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));Do(It,Rt,Ot);st=n;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=_t;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=_t;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=i;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=mt;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=mt;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=a;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=gt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=gt;o[st>>2]=t;o[st+4>>2]=I;st=f;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=pt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=pt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=c;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ht;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ht;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=u;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=dt;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=dt;o[st>>2]=t;o[st+4>>2]=I;st=l;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=lt;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=Es(t|0,st|0,18,0)|0;Lt=I;st=Ss(Ft|0,ot|0,t|0,st|0)|0;Lt=Ss(st|0,I|0,qt|0,Lt|0)|0;qt=lt;o[qt>>2]=Lt;o[qt+4>>2]=I;qt=d;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=ut;t=o[st>>2]|0;st=o[st+4>>2]|0;ot=Es(Lt|0,qt|0,18,0)|0;Ft=I;qt=Ss(t|0,st|0,Lt|0,qt|0)|0;Ft=Ss(qt|0,I|0,ot|0,Ft|0)|0;ot=ut;o[ot>>2]=Ft;o[ot+4>>2]=I;ot=ct;Ft=o[ot>>2]|0;ot=o[ot+4>>2]|0;qt=It;Lt=o[qt>>2]|0;qt=o[qt+4>>2]|0;st=Es(Ft|0,ot|0,18,0)|0;t=I;ot=Ss(Lt|0,qt|0,Ft|0,ot|0)|0;t=Ss(ot|0,I|0,st|0,t|0)|0;st=It;o[st>>2]=t;o[st+4>>2]=I;Bo(It);st=Tt;t=It;ot=st+80|0;do{o[st>>2]=o[t>>2];st=st+4|0;t=t+4|0}while((st|0)<(ot|0));xt=o[Tt>>2]|0;At=xt>>31&xt;Pt=(At>>26)+(o[Tt+8>>2]|0)|0;Ft=Pt>>31&Pt;Dt=(Ft>>25)+(o[Tt+16>>2]|0)|0;qt=Dt>>31&Dt;vt=(qt>>26)+(o[Tt+24>>2]|0)|0;Bt=vt>>31&vt;Nt=(Bt>>25)+(o[Tt+32>>2]|0)|0;Rt=Nt>>31&Nt;jt=(Rt>>26)+(o[Tt+40>>2]|0)|0;It=jt>>31&jt;Ut=(It>>25)+(o[Tt+48>>2]|0)|0;kt=Ut>>31&Ut;Lt=(kt>>26)+(o[Tt+56>>2]|0)|0;St=Lt>>31≪Ot=(St>>25)+(o[Tt+64>>2]|0)|0;wt=Ot>>31&Ot;Ct=(wt>>26)+(o[Tt+72>>2]|0)|0;Et=Ct>>31&Ct;At=((Et>>25)*19|0)+(xt-(At&-67108864))|0;xt=At>>31&At;Ft=(xt>>26)+(Pt-(Ft&-33554432))|0;Pt=Ft>>31&Ft;qt=(Pt>>25)+(Dt-(qt&-67108864))|0;Dt=qt>>31&qt;Tt=(Dt>>26)+(vt-(Bt&-33554432))|0;Bt=Tt>>31&Tt;Rt=(Bt>>25)+(Nt-(Rt&-67108864))|0;Nt=Rt>>31&Rt;It=(Nt>>26)+(jt-(It&-33554432))|0;jt=It>>31&It;kt=(jt>>25)+(Ut-(kt&-67108864))|0;Ut=kt>>31&kt;St=(Ut>>26)+(Lt-(St&-33554432))|0;Lt=St>>31&St;wt=(Lt>>25)+(Ot-(wt&-67108864))|0;Ot=wt>>31&wt;Et=(Ot>>26)+(Ct-(Et&-33554432))|0;Ct=Et>>31&Et;xt=((Ct>>25)*19|0)+(At-(xt&-67108864))|0;At=xt>>31&xt;xt=xt-(At&-67108864)|0;Pt=(xt>>26)+((At>>26)+(Ft-(Pt&-33554432)))|0;Dt=(Pt>>25)+(qt-(Dt&-67108864))|0;Bt=(Dt>>26)+(Tt-(Bt&-33554432))|0;Nt=(Bt>>25)+(Rt-(Nt&-67108864))|0;jt=(Nt>>26)+(It-(jt&-33554432))|0;Ut=(jt>>25)+(kt-(Ut&-67108864))|0;Lt=(Ut>>26)+(St-(Lt&-33554432))|0;Ot=(Lt>>25)+(wt-(Ot&-67108864))|0;Ct=(Ot>>26)+(Et-(Ct&-33554432))|0;xt=((Ct>>25)*19|0)+(xt&67108863)|0;Pt=(xt>>26)+(Pt&33554431)|0;Dt=(Pt>>25)+(Dt&67108863)|0;Bt=(Dt>>26)+(Bt&33554431)|0;Nt=(Bt>>25)+(Nt&67108863)|0;jt=(Nt>>26)+(jt&33554431)|0;Ut=(jt>>25)+(Ut&67108863)|0;Lt=(Ut>>26)+(Lt&33554431)|0;Ot=(Lt>>25)+(Ot&67108863)|0;Ct=(Ot>>26)+(Ct&33554431)|0;xt=((Ct>>25)*19|0)+(xt&67108863)|0;Et=Pt<<16&(Pt|-33554432);Et=Et<<8&Et;Et=Et<<4&Et;Et=Et<<2&Et;wt=Dt<<16&(Dt|-67108864);wt=wt<<8&wt;wt=wt<<4&wt;wt=wt<<2&wt;St=Bt<<16&(Bt|-33554432);St=St<<8&St;St=St<<4&St;St=St<<2&St;kt=Nt<<16&(Nt|-67108864);kt=kt<<8&kt;kt=kt<<4&kt;kt=kt<<2&kt;It=jt<<16&(jt|-33554432);It=It<<8&It;It=It<<4&It;It=It<<2&It;Rt=Ut<<16&(Ut|-67108864);Rt=Rt<<8&Rt;Rt=Rt<<4&Rt;Rt=Rt<<2&Rt;Tt=Lt<<16&(Lt|-33554432);Tt=Tt<<8&Tt;Tt=Tt<<4&Tt;Tt=Tt<<2&Tt;qt=Ot<<16&(Ot|-67108864);qt=qt<<8&qt;qt=qt<<4&qt;qt=qt<<2&qt;Ft=Ct<<16&(Ct|-33554432);Ft=Ft<<8&Ft;Ft=Ft<<4&Ft;Ft=Ft<<2&Ft;Ft=(wt<<1&wt&(Et<<1&Et)&(St<<1&St)&(kt<<1&kt)&(It<<1&It))>>31&~(xt+-67108845>>31)&(Rt<<1&Rt)>>31&(Tt<<1&Tt)>>31&(qt<<1&qt)>>31&(Ft<<1&Ft)>>31;xt=xt-(Ft&67108845)|0;qt=Ft&67108863;Ft=Ft&33554431;Pt=(Pt&33554431)-Ft|0;Dt=(Dt&67108863)-qt|0;Bt=(Bt&33554431)-Ft|0;Nt=(Nt&67108863)-qt|0;jt=(jt&33554431)-Ft|0;Ut=(Ut&67108863)-qt|0;Lt=(Lt&33554431)-Ft|0;qt=(Ot&67108863)-qt|0;Ft=(Ct&33554431)-Ft|0;r[e>>0]=xt;r[e+1>>0]=xt>>>8;r[e+2>>0]=xt>>>16;r[e+3>>0]=xt>>>24|Pt<<2;r[e+4>>0]=Pt>>>6;r[e+5>>0]=Pt>>>14;r[e+6>>0]=Dt<<3|Pt>>>22;r[e+7>>0]=Dt>>>5;r[e+8>>0]=Dt>>>13;r[e+9>>0]=Bt<<5|Dt>>>21;r[e+10>>0]=Bt>>>3;r[e+11>>0]=Bt>>>11;r[e+12>>0]=Nt<<6|Bt>>>19;r[e+13>>0]=Nt>>>2;r[e+14>>0]=Nt>>>10;r[e+15>>0]=Nt>>>18;r[e+16>>0]=jt;r[e+17>>0]=jt>>>8;r[e+18>>0]=jt>>>16;r[e+19>>0]=jt>>>24|Ut<<1;r[e+20>>0]=Ut>>>7;r[e+21>>0]=Ut>>>15;r[e+22>>0]=Lt<<3|Ut>>>23;r[e+23>>0]=Lt>>>5;r[e+24>>0]=Lt>>>13;r[e+25>>0]=qt<<4|Lt>>>21;r[e+26>>0]=qt>>>4;r[e+27>>0]=qt>>>12;r[e+28>>0]=Ft<<6|qt>>>20;r[e+29>>0]=Ft>>>2;r[e+30>>0]=Ft>>>10;r[e+31>>0]=Ft>>>18;h=Mt;return 0}function Po(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0,a=0,f=0;n=0-n|0;a=e;i=o[a>>2]|0;s=t;s=(o[s>>2]^i)&n;i=s^i;a=e;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;s=s^o[t>>2];a=t;o[a>>2]=s;o[a+4>>2]=((s|0)<0)<<31>>31;a=e+8|0;s=a;i=o[s>>2]|0;r=t+8|0;f=r;f=(o[f>>2]^i)&n;i=f^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;f=f^o[r>>2];o[r>>2]=f;o[r+4>>2]=((f|0)<0)<<31>>31;r=e+16|0;f=r;a=o[f>>2]|0;i=t+16|0;s=i;s=(o[s>>2]^a)&n;a=s^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;s=s^o[i>>2];o[i>>2]=s;o[i+4>>2]=((s|0)<0)<<31>>31;i=e+24|0;s=i;r=o[s>>2]|0;a=t+24|0;f=a;f=(o[f>>2]^r)&n;r=f^r;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;f=f^o[a>>2];o[a>>2]=f;o[a+4>>2]=((f|0)<0)<<31>>31;a=e+32|0;f=a;i=o[f>>2]|0;r=t+32|0;s=r;s=(o[s>>2]^i)&n;i=s^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;s=s^o[r>>2];o[r>>2]=s;o[r+4>>2]=((s|0)<0)<<31>>31;r=e+40|0;s=r;a=o[s>>2]|0;i=t+40|0;f=i;f=(o[f>>2]^a)&n;a=f^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;f=f^o[i>>2];o[i>>2]=f;o[i+4>>2]=((f|0)<0)<<31>>31;i=e+48|0;f=i;r=o[f>>2]|0;a=t+48|0;s=a;s=(o[s>>2]^r)&n;r=s^r;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;s=s^o[a>>2];o[a>>2]=s;o[a+4>>2]=((s|0)<0)<<31>>31;a=e+56|0;s=a;i=o[s>>2]|0;r=t+56|0;f=r;f=(o[f>>2]^i)&n;i=f^i;o[a>>2]=i;o[a+4>>2]=((i|0)<0)<<31>>31;f=f^o[r>>2];o[r>>2]=f;o[r+4>>2]=((f|0)<0)<<31>>31;r=e+64|0;f=r;a=o[f>>2]|0;i=t+64|0;s=i;s=(o[s>>2]^a)&n;a=s^a;o[r>>2]=a;o[r+4>>2]=((a|0)<0)<<31>>31;s=s^o[i>>2];o[i>>2]=s;o[i+4>>2]=((s|0)<0)<<31>>31;i=e+72|0;s=i;e=o[s>>2]|0;r=t+72|0;t=r;n=(o[t>>2]^e)&n;e=n^e;t=i;o[t>>2]=e;o[t+4>>2]=((e|0)<0)<<31>>31;n=n^o[r>>2];o[r>>2]=n;o[r+4>>2]=((n|0)<0)<<31>>31;return}function Do(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0;a=Os(0,o[t>>2]|0,32)|0;h=I;w=Os(0,o[n>>2]|0,32)|0;h=Es(w|0,I|0,a|0,h|0)|0;a=e;o[a>>2]=h;o[a+4>>2]=I;a=Os(0,o[t>>2]|0,32)|0;h=I;w=n+8|0;y=Os(0,o[w>>2]|0,32)|0;h=Es(y|0,I|0,a|0,h|0)|0;a=I;y=t+8|0;_=Os(0,o[y>>2]|0,32)|0;g=I;A=Os(0,o[n>>2]|0,32)|0;g=Es(A|0,I|0,_|0,g|0)|0;a=Ss(g|0,I|0,h|0,a|0)|0;h=e+8|0;o[h>>2]=a;o[h+4>>2]=I;h=Os(0,o[y>>2]|0,31)|0;a=I;g=Os(0,o[w>>2]|0,32)|0;a=Es(g|0,I|0,h|0,a|0)|0;h=I;g=Os(0,o[t>>2]|0,32)|0;_=I;A=n+16|0;l=Os(0,o[A>>2]|0,32)|0;_=Es(l|0,I|0,g|0,_|0)|0;h=Ss(_|0,I|0,a|0,h|0)|0;a=I;_=t+16|0;g=Os(0,o[_>>2]|0,32)|0;l=I;v=Os(0,o[n>>2]|0,32)|0;l=Es(v|0,I|0,g|0,l|0)|0;l=Ss(h|0,a|0,l|0,I|0)|0;a=e+16|0;o[a>>2]=l;o[a+4>>2]=I;a=Os(0,o[y>>2]|0,32)|0;l=I;h=Os(0,o[A>>2]|0,32)|0;l=Es(h|0,I|0,a|0,l|0)|0;a=I;h=Os(0,o[_>>2]|0,32)|0;g=I;v=Os(0,o[w>>2]|0,32)|0;g=Es(v|0,I|0,h|0,g|0)|0;a=Ss(g|0,I|0,l|0,a|0)|0;l=I;g=Os(0,o[t>>2]|0,32)|0;h=I;v=n+24|0;s=Os(0,o[v>>2]|0,32)|0;h=Es(s|0,I|0,g|0,h|0)|0;h=Ss(a|0,l|0,h|0,I|0)|0;l=I;a=t+24|0;g=Os(0,o[a>>2]|0,32)|0;s=I;c=Os(0,o[n>>2]|0,32)|0;s=Es(c|0,I|0,g|0,s|0)|0;s=Ss(h|0,l|0,s|0,I|0)|0;l=e+24|0;o[l>>2]=s;o[l+4>>2]=I;l=Os(0,o[_>>2]|0,32)|0;s=I;h=Os(0,o[A>>2]|0,32)|0;s=Es(h|0,I|0,l|0,s|0)|0;l=I;h=Os(0,o[y>>2]|0,32)|0;g=I;c=Os(0,o[v>>2]|0,32)|0;g=Es(c|0,I|0,h|0,g|0)|0;h=I;c=Os(0,o[a>>2]|0,32)|0;m=I;p=Os(0,o[w>>2]|0,32)|0;m=Es(p|0,I|0,c|0,m|0)|0;h=Ss(m|0,I|0,g|0,h|0)|0;h=xs(h|0,I|0,1)|0;l=Ss(h|0,I|0,s|0,l|0)|0;s=I;h=Os(0,o[t>>2]|0,32)|0;g=I;m=n+32|0;c=Os(0,o[m>>2]|0,32)|0;g=Es(c|0,I|0,h|0,g|0)|0;g=Ss(l|0,s|0,g|0,I|0)|0;s=I;l=t+32|0;h=Os(0,o[l>>2]|0,32)|0;c=I;p=Os(0,o[n>>2]|0,32)|0;c=Es(p|0,I|0,h|0,c|0)|0;c=Ss(g|0,s|0,c|0,I|0)|0;s=e+32|0;o[s>>2]=c;o[s+4>>2]=I;s=Os(0,o[_>>2]|0,32)|0;c=I;g=Os(0,o[v>>2]|0,32)|0;c=Es(g|0,I|0,s|0,c|0)|0;s=I;g=Os(0,o[a>>2]|0,32)|0;h=I;p=Os(0,o[A>>2]|0,32)|0;h=Es(p|0,I|0,g|0,h|0)|0;s=Ss(h|0,I|0,c|0,s|0)|0;c=I;h=Os(0,o[y>>2]|0,32)|0;g=I;p=Os(0,o[m>>2]|0,32)|0;g=Es(p|0,I|0,h|0,g|0)|0;g=Ss(s|0,c|0,g|0,I|0)|0;c=I;s=Os(0,o[l>>2]|0,32)|0;h=I;p=Os(0,o[w>>2]|0,32)|0;h=Es(p|0,I|0,s|0,h|0)|0;h=Ss(g|0,c|0,h|0,I|0)|0;c=I;g=Os(0,o[t>>2]|0,32)|0;s=I;p=n+40|0;b=Os(0,o[p>>2]|0,32)|0;s=Es(b|0,I|0,g|0,s|0)|0;s=Ss(h|0,c|0,s|0,I|0)|0;c=I;h=t+40|0;g=Os(0,o[h>>2]|0,32)|0;b=I;u=Os(0,o[n>>2]|0,32)|0;b=Es(u|0,I|0,g|0,b|0)|0;b=Ss(s|0,c|0,b|0,I|0)|0;c=e+40|0;o[c>>2]=b;o[c+4>>2]=I;c=Os(0,o[a>>2]|0,32)|0;b=I;s=Os(0,o[v>>2]|0,32)|0;b=Es(s|0,I|0,c|0,b|0)|0;c=I;s=Os(0,o[y>>2]|0,32)|0;g=I;u=Os(0,o[p>>2]|0,32)|0;g=Es(u|0,I|0,s|0,g|0)|0;c=Ss(g|0,I|0,b|0,c|0)|0;b=I;g=Os(0,o[h>>2]|0,32)|0;s=I;u=Os(0,o[w>>2]|0,32)|0;s=Es(u|0,I|0,g|0,s|0)|0;s=Ss(c|0,b|0,s|0,I|0)|0;s=xs(s|0,I|0,1)|0;b=I;c=Os(0,o[_>>2]|0,32)|0;g=I;u=Os(0,o[m>>2]|0,32)|0;g=Es(u|0,I|0,c|0,g|0)|0;g=Ss(s|0,b|0,g|0,I|0)|0;b=I;s=Os(0,o[l>>2]|0,32)|0;c=I;u=Os(0,o[A>>2]|0,32)|0;c=Es(u|0,I|0,s|0,c|0)|0;c=Ss(g|0,b|0,c|0,I|0)|0;b=I;g=Os(0,o[t>>2]|0,32)|0;s=I;u=n+48|0;E=Os(0,o[u>>2]|0,32)|0;s=Es(E|0,I|0,g|0,s|0)|0;s=Ss(c|0,b|0,s|0,I|0)|0;b=I;c=t+48|0;g=Os(0,o[c>>2]|0,32)|0;E=I;d=Os(0,o[n>>2]|0,32)|0;E=Es(d|0,I|0,g|0,E|0)|0;E=Ss(s|0,b|0,E|0,I|0)|0;b=e+48|0;o[b>>2]=E;o[b+4>>2]=I;b=Os(0,o[a>>2]|0,32)|0;E=I;s=Os(0,o[m>>2]|0,32)|0;E=Es(s|0,I|0,b|0,E|0)|0;b=I;s=Os(0,o[l>>2]|0,32)|0;g=I;d=Os(0,o[v>>2]|0,32)|0;g=Es(d|0,I|0,s|0,g|0)|0;b=Ss(g|0,I|0,E|0,b|0)|0;E=I;g=Os(0,o[_>>2]|0,32)|0;s=I;d=Os(0,o[p>>2]|0,32)|0;s=Es(d|0,I|0,g|0,s|0)|0;s=Ss(b|0,E|0,s|0,I|0)|0;E=I;b=Os(0,o[h>>2]|0,32)|0;g=I;d=Os(0,o[A>>2]|0,32)|0;g=Es(d|0,I|0,b|0,g|0)|0;g=Ss(s|0,E|0,g|0,I|0)|0;E=I;s=Os(0,o[y>>2]|0,32)|0;b=I;d=Os(0,o[u>>2]|0,32)|0;b=Es(d|0,I|0,s|0,b|0)|0;b=Ss(g|0,E|0,b|0,I|0)|0;E=I;g=Os(0,o[c>>2]|0,32)|0;s=I;d=Os(0,o[w>>2]|0,32)|0;s=Es(d|0,I|0,g|0,s|0)|0;s=Ss(b|0,E|0,s|0,I|0)|0;E=I;b=Os(0,o[t>>2]|0,32)|0;g=I;d=n+56|0;S=Os(0,o[d>>2]|0,32)|0;g=Es(S|0,I|0,b|0,g|0)|0;g=Ss(s|0,E|0,g|0,I|0)|0;E=I;s=t+56|0;b=Os(0,o[s>>2]|0,32)|0;S=I;f=Os(0,o[n>>2]|0,32)|0;S=Es(f|0,I|0,b|0,S|0)|0;S=Ss(g|0,E|0,S|0,I|0)|0;E=e+56|0;o[E>>2]=S;o[E+4>>2]=I;E=Os(0,o[l>>2]|0,32)|0;S=I;g=Os(0,o[m>>2]|0,32)|0;S=Es(g|0,I|0,E|0,S|0)|0;E=I;g=Os(0,o[a>>2]|0,32)|0;b=I;f=Os(0,o[p>>2]|0,32)|0;b=Es(f|0,I|0,g|0,b|0)|0;g=I;f=Os(0,o[h>>2]|0,32)|0;i=I;r=Os(0,o[v>>2]|0,32)|0;i=Es(r|0,I|0,f|0,i|0)|0;g=Ss(i|0,I|0,b|0,g|0)|0;b=I;i=Os(0,o[y>>2]|0,32)|0;f=I;r=Os(0,o[d>>2]|0,32)|0;f=Es(r|0,I|0,i|0,f|0)|0;f=Ss(g|0,b|0,f|0,I|0)|0;b=I;g=Os(0,o[s>>2]|0,32)|0;i=I;r=Os(0,o[w>>2]|0,32)|0;i=Es(r|0,I|0,g|0,i|0)|0;i=Ss(f|0,b|0,i|0,I|0)|0;i=xs(i|0,I|0,1)|0;E=Ss(i|0,I|0,S|0,E|0)|0;S=I;i=Os(0,o[_>>2]|0,32)|0;b=I;f=Os(0,o[u>>2]|0,32)|0;b=Es(f|0,I|0,i|0,b|0)|0;b=Ss(E|0,S|0,b|0,I|0)|0;S=I;E=Os(0,o[c>>2]|0,32)|0;i=I;f=Os(0,o[A>>2]|0,32)|0;i=Es(f|0,I|0,E|0,i|0)|0;i=Ss(b|0,S|0,i|0,I|0)|0;S=I;b=Os(0,o[t>>2]|0,32)|0;E=I;f=n+64|0;g=Os(0,o[f>>2]|0,32)|0;E=Es(g|0,I|0,b|0,E|0)|0;E=Ss(i|0,S|0,E|0,I|0)|0;S=I;i=t+64|0;b=Os(0,o[i>>2]|0,32)|0;g=I;r=Os(0,o[n>>2]|0,32)|0;g=Es(r|0,I|0,b|0,g|0)|0;g=Ss(E|0,S|0,g|0,I|0)|0;S=e+64|0;o[S>>2]=g;o[S+4>>2]=I;S=Os(0,o[l>>2]|0,32)|0;g=I;E=Os(0,o[p>>2]|0,32)|0;g=Es(E|0,I|0,S|0,g|0)|0;S=I;E=Os(0,o[h>>2]|0,32)|0;b=I;r=Os(0,o[m>>2]|0,32)|0;b=Es(r|0,I|0,E|0,b|0)|0;S=Ss(b|0,I|0,g|0,S|0)|0;g=I;b=Os(0,o[a>>2]|0,32)|0;E=I;r=Os(0,o[u>>2]|0,32)|0;E=Es(r|0,I|0,b|0,E|0)|0;E=Ss(S|0,g|0,E|0,I|0)|0;g=I;S=Os(0,o[c>>2]|0,32)|0;b=I;r=Os(0,o[v>>2]|0,32)|0;b=Es(r|0,I|0,S|0,b|0)|0;b=Ss(E|0,g|0,b|0,I|0)|0;g=I;E=Os(0,o[_>>2]|0,32)|0;S=I;r=Os(0,o[d>>2]|0,32)|0;S=Es(r|0,I|0,E|0,S|0)|0;S=Ss(b|0,g|0,S|0,I|0)|0;g=I;b=Os(0,o[s>>2]|0,32)|0;E=I;r=Os(0,o[A>>2]|0,32)|0;E=Es(r|0,I|0,b|0,E|0)|0;E=Ss(S|0,g|0,E|0,I|0)|0;g=I;S=Os(0,o[y>>2]|0,32)|0;b=I;r=Os(0,o[f>>2]|0,32)|0;b=Es(r|0,I|0,S|0,b|0)|0;b=Ss(E|0,g|0,b|0,I|0)|0;g=I;E=Os(0,o[i>>2]|0,32)|0;S=I;r=Os(0,o[w>>2]|0,32)|0;S=Es(r|0,I|0,E|0,S|0)|0;S=Ss(b|0,g|0,S|0,I|0)|0;g=I;b=Os(0,o[t>>2]|0,32)|0;E=I;r=n+72|0;k=Os(0,o[r>>2]|0,32)|0;E=Es(k|0,I|0,b|0,E|0)|0;E=Ss(S|0,g|0,E|0,I|0)|0;g=I;t=t+72|0;S=Os(0,o[t>>2]|0,32)|0;b=I;n=Os(0,o[n>>2]|0,32)|0;b=Es(n|0,I|0,S|0,b|0)|0;b=Ss(E|0,g|0,b|0,I|0)|0;n=e+72|0;o[n>>2]=b;o[n+4>>2]=I;n=Os(0,o[h>>2]|0,32)|0;b=I;g=Os(0,o[p>>2]|0,32)|0;b=Es(g|0,I|0,n|0,b|0)|0;n=I;g=Os(0,o[a>>2]|0,32)|0;E=I;S=Os(0,o[d>>2]|0,32)|0;E=Es(S|0,I|0,g|0,E|0)|0;n=Ss(E|0,I|0,b|0,n|0)|0;b=I;E=Os(0,o[s>>2]|0,32)|0;g=I;S=Os(0,o[v>>2]|0,32)|0;g=Es(S|0,I|0,E|0,g|0)|0;g=Ss(n|0,b|0,g|0,I|0)|0;b=I;n=Os(0,o[y>>2]|0,32)|0;y=I;E=Os(0,o[r>>2]|0,32)|0;y=Es(E|0,I|0,n|0,y|0)|0;y=Ss(g|0,b|0,y|0,I|0)|0;b=I;g=Os(0,o[t>>2]|0,32)|0;n=I;w=Os(0,o[w>>2]|0,32)|0;n=Es(w|0,I|0,g|0,n|0)|0;n=Ss(y|0,b|0,n|0,I|0)|0;n=xs(n|0,I|0,1)|0;b=I;y=Os(0,o[l>>2]|0,32)|0;g=I;w=Os(0,o[u>>2]|0,32)|0;g=Es(w|0,I|0,y|0,g|0)|0;g=Ss(n|0,b|0,g|0,I|0)|0;b=I;n=Os(0,o[c>>2]|0,32)|0;y=I;w=Os(0,o[m>>2]|0,32)|0;y=Es(w|0,I|0,n|0,y|0)|0;y=Ss(g|0,b|0,y|0,I|0)|0;b=I;g=Os(0,o[_>>2]|0,32)|0;n=I;w=Os(0,o[f>>2]|0,32)|0;n=Es(w|0,I|0,g|0,n|0)|0;n=Ss(y|0,b|0,n|0,I|0)|0;b=I;y=Os(0,o[i>>2]|0,32)|0;g=I;w=Os(0,o[A>>2]|0,32)|0;g=Es(w|0,I|0,y|0,g|0)|0;g=Ss(n|0,b|0,g|0,I|0)|0;b=e+80|0;o[b>>2]=g;o[b+4>>2]=I;b=Os(0,o[h>>2]|0,32)|0;g=I;n=Os(0,o[u>>2]|0,32)|0;g=Es(n|0,I|0,b|0,g|0)|0;b=I;n=Os(0,o[c>>2]|0,32)|0;y=I;w=Os(0,o[p>>2]|0,32)|0;y=Es(w|0,I|0,n|0,y|0)|0;b=Ss(y|0,I|0,g|0,b|0)|0;g=I;y=Os(0,o[l>>2]|0,32)|0;n=I;w=Os(0,o[d>>2]|0,32)|0;n=Es(w|0,I|0,y|0,n|0)|0;n=Ss(b|0,g|0,n|0,I|0)|0;g=I;b=Os(0,o[s>>2]|0,32)|0;y=I;w=Os(0,o[m>>2]|0,32)|0;y=Es(w|0,I|0,b|0,y|0)|0;y=Ss(n|0,g|0,y|0,I|0)|0;g=I;n=Os(0,o[a>>2]|0,32)|0;b=I;w=Os(0,o[f>>2]|0,32)|0;b=Es(w|0,I|0,n|0,b|0)|0;b=Ss(y|0,g|0,b|0,I|0)|0;g=I;y=Os(0,o[i>>2]|0,32)|0;n=I;w=Os(0,o[v>>2]|0,32)|0;n=Es(w|0,I|0,y|0,n|0)|0;n=Ss(b|0,g|0,n|0,I|0)|0;g=I;_=Os(0,o[_>>2]|0,32)|0;b=I;y=Os(0,o[r>>2]|0,32)|0;b=Es(y|0,I|0,_|0,b|0)|0;b=Ss(n|0,g|0,b|0,I|0)|0;g=I;n=Os(0,o[t>>2]|0,32)|0;_=I;A=Os(0,o[A>>2]|0,32)|0;_=Es(A|0,I|0,n|0,_|0)|0;_=Ss(b|0,g|0,_|0,I|0)|0;g=e+88|0;o[g>>2]=_;o[g+4>>2]=I;g=Os(0,o[c>>2]|0,32)|0;_=I;b=Os(0,o[u>>2]|0,32)|0;_=Es(b|0,I|0,g|0,_|0)|0;g=I;b=Os(0,o[h>>2]|0,32)|0;n=I;A=Os(0,o[d>>2]|0,32)|0;n=Es(A|0,I|0,b|0,n|0)|0;b=I;A=Os(0,o[s>>2]|0,32)|0;y=I;w=Os(0,o[p>>2]|0,32)|0;y=Es(w|0,I|0,A|0,y|0)|0;b=Ss(y|0,I|0,n|0,b|0)|0;n=I;a=Os(0,o[a>>2]|0,32)|0;y=I;A=Os(0,o[r>>2]|0,32)|0;y=Es(A|0,I|0,a|0,y|0)|0;y=Ss(b|0,n|0,y|0,I|0)|0;n=I;b=Os(0,o[t>>2]|0,32)|0;a=I;v=Os(0,o[v>>2]|0,32)|0;a=Es(v|0,I|0,b|0,a|0)|0;a=Ss(y|0,n|0,a|0,I|0)|0;a=xs(a|0,I|0,1)|0;g=Ss(a|0,I|0,_|0,g|0)|0;_=I;a=Os(0,o[l>>2]|0,32)|0;n=I;y=Os(0,o[f>>2]|0,32)|0;n=Es(y|0,I|0,a|0,n|0)|0;n=Ss(g|0,_|0,n|0,I|0)|0;_=I;g=Os(0,o[i>>2]|0,32)|0;a=I;y=Os(0,o[m>>2]|0,32)|0;a=Es(y|0,I|0,g|0,a|0)|0;a=Ss(n|0,_|0,a|0,I|0)|0;_=e+96|0;o[_>>2]=a;o[_+4>>2]=I;_=Os(0,o[c>>2]|0,32)|0;a=I;n=Os(0,o[d>>2]|0,32)|0;a=Es(n|0,I|0,_|0,a|0)|0;_=I;n=Os(0,o[s>>2]|0,32)|0;g=I;y=Os(0,o[u>>2]|0,32)|0;g=Es(y|0,I|0,n|0,g|0)|0;_=Ss(g|0,I|0,a|0,_|0)|0;a=I;g=Os(0,o[h>>2]|0,32)|0;n=I;y=Os(0,o[f>>2]|0,32)|0;n=Es(y|0,I|0,g|0,n|0)|0;n=Ss(_|0,a|0,n|0,I|0)|0;a=I;_=Os(0,o[i>>2]|0,32)|0;g=I;y=Os(0,o[p>>2]|0,32)|0;g=Es(y|0,I|0,_|0,g|0)|0;g=Ss(n|0,a|0,g|0,I|0)|0;a=I;l=Os(0,o[l>>2]|0,32)|0;n=I;_=Os(0,o[r>>2]|0,32)|0;n=Es(_|0,I|0,l|0,n|0)|0;n=Ss(g|0,a|0,n|0,I|0)|0;a=I;g=Os(0,o[t>>2]|0,32)|0;l=I;m=Os(0,o[m>>2]|0,32)|0;l=Es(m|0,I|0,g|0,l|0)|0;l=Ss(n|0,a|0,l|0,I|0)|0;a=e+104|0;o[a>>2]=l;o[a+4>>2]=I;a=Os(0,o[s>>2]|0,32)|0;l=I;n=Os(0,o[d>>2]|0,32)|0;l=Es(n|0,I|0,a|0,l|0)|0;a=I;n=Os(0,o[h>>2]|0,32)|0;h=I;g=Os(0,o[r>>2]|0,32)|0;h=Es(g|0,I|0,n|0,h|0)|0;a=Ss(h|0,I|0,l|0,a|0)|0;l=I;h=Os(0,o[t>>2]|0,32)|0;n=I;p=Os(0,o[p>>2]|0,32)|0;n=Es(p|0,I|0,h|0,n|0)|0;n=Ss(a|0,l|0,n|0,I|0)|0;n=xs(n|0,I|0,1)|0;l=I;a=Os(0,o[c>>2]|0,32)|0;h=I;p=Os(0,o[f>>2]|0,32)|0;h=Es(p|0,I|0,a|0,h|0)|0;h=Ss(n|0,l|0,h|0,I|0)|0;l=I;n=Os(0,o[i>>2]|0,32)|0;a=I;p=Os(0,o[u>>2]|0,32)|0;a=Es(p|0,I|0,n|0,a|0)|0;a=Ss(h|0,l|0,a|0,I|0)|0;l=e+112|0;o[l>>2]=a;o[l+4>>2]=I;l=Os(0,o[s>>2]|0,32)|0;a=I;h=Os(0,o[f>>2]|0,32)|0;a=Es(h|0,I|0,l|0,a|0)|0;l=I;h=Os(0,o[i>>2]|0,32)|0;n=I;p=Os(0,o[d>>2]|0,32)|0;n=Es(p|0,I|0,h|0,n|0)|0;l=Ss(n|0,I|0,a|0,l|0)|0;a=I;n=Os(0,o[c>>2]|0,32)|0;c=I;h=Os(0,o[r>>2]|0,32)|0;c=Es(h|0,I|0,n|0,c|0)|0;c=Ss(l|0,a|0,c|0,I|0)|0;a=I;l=Os(0,o[t>>2]|0,32)|0;n=I;u=Os(0,o[u>>2]|0,32)|0;n=Es(u|0,I|0,l|0,n|0)|0;n=Ss(c|0,a|0,n|0,I|0)|0;a=e+120|0;o[a>>2]=n;o[a+4>>2]=I;a=Os(0,o[i>>2]|0,32)|0;n=I;c=Os(0,o[f>>2]|0,32)|0;n=Es(c|0,I|0,a|0,n|0)|0;a=I;s=Os(0,o[s>>2]|0,32)|0;c=I;l=Os(0,o[r>>2]|0,32)|0;c=Es(l|0,I|0,s|0,c|0)|0;s=I;l=Os(0,o[t>>2]|0,32)|0;u=I;d=Os(0,o[d>>2]|0,32)|0;u=Es(d|0,I|0,l|0,u|0)|0;s=Ss(u|0,I|0,c|0,s|0)|0;s=xs(s|0,I|0,1)|0;a=Ss(s|0,I|0,n|0,a|0)|0;n=e+128|0;o[n>>2]=a;o[n+4>>2]=I;i=Os(0,o[i>>2]|0,32)|0;n=I;a=Os(0,o[r>>2]|0,32)|0;n=Es(a|0,I|0,i|0,n|0)|0;i=I;a=Os(0,o[t>>2]|0,32)|0;s=I;f=Os(0,o[f>>2]|0,32)|0;s=Es(f|0,I|0,a|0,s|0)|0;i=Ss(s|0,I|0,n|0,i|0)|0;n=e+136|0;o[n>>2]=i;o[n+4>>2]=I;n=Os(0,o[t>>2]|0,31)|0;t=I;r=Os(0,o[r>>2]|0,32)|0;t=Es(r|0,I|0,n|0,t|0)|0;n=e+144|0;o[n>>2]=t;o[n+4>>2]=I;return}function Bo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,f=0,c=0,u=0;t=e+80|0;s=t;o[s>>2]=0;o[s+4>>2]=0;s=e;c=o[s>>2]|0;s=o[s+4>>2]|0;n=Ss(c|0,s|0,s>>31>>>6|0,0)|0;a=I;i=Os(n|0,a|0,26)|0;u=I;a=ks(c|0,s|0,n&-67108864|0,a|0)|0;n=e;o[n>>2]=a;o[n+4>>2]=I;n=e+8|0;a=n;a=Ss(i|0,u|0,o[a>>2]|0,o[a+4>>2]|0)|0;u=I;i=Ss(a|0,u|0,u>>31>>>7|0,0)|0;s=I;c=Os(i|0,s|0,25)|0;r=I;s=ks(a|0,u|0,i&-33554432|0,s|0)|0;i=n;o[i>>2]=s;o[i+4>>2]=I;i=e+16|0;s=i;s=Ss(c|0,r|0,o[s>>2]|0,o[s+4>>2]|0)|0;r=I;c=Ss(s|0,r|0,r>>31>>>6|0,0)|0;u=I;a=Os(c|0,u|0,26)|0;f=I;u=ks(s|0,r|0,c&-67108864|0,u|0)|0;o[i>>2]=u;o[i+4>>2]=I;i=e+24|0;u=i;u=Ss(a|0,f|0,o[u>>2]|0,o[u+4>>2]|0)|0;f=I;a=Ss(u|0,f|0,f>>31>>>7|0,0)|0;c=I;r=Os(a|0,c|0,25)|0;s=I;c=ks(u|0,f|0,a&-33554432|0,c|0)|0;o[i>>2]=c;o[i+4>>2]=I;i=e+32|0;c=i;c=Ss(r|0,s|0,o[c>>2]|0,o[c+4>>2]|0)|0;s=I;r=Ss(c|0,s|0,s>>31>>>6|0,0)|0;a=I;f=Os(r|0,a|0,26)|0;u=I;a=ks(c|0,s|0,r&-67108864|0,a|0)|0;o[i>>2]=a;o[i+4>>2]=I;i=e+40|0;a=i;a=Ss(f|0,u|0,o[a>>2]|0,o[a+4>>2]|0)|0;u=I;f=Ss(a|0,u|0,u>>31>>>7|0,0)|0;r=I;s=Os(f|0,r|0,25)|0;c=I;r=ks(a|0,u|0,f&-33554432|0,r|0)|0;o[i>>2]=r;o[i+4>>2]=I;i=e+48|0;r=i;r=Ss(s|0,c|0,o[r>>2]|0,o[r+4>>2]|0)|0;c=I;s=Ss(r|0,c|0,c>>31>>>6|0,0)|0;f=I;u=Os(s|0,f|0,26)|0;a=I;f=ks(r|0,c|0,s&-67108864|0,f|0)|0;o[i>>2]=f;o[i+4>>2]=I;i=e+56|0;f=i;f=Ss(u|0,a|0,o[f>>2]|0,o[f+4>>2]|0)|0;a=I;u=Ss(f|0,a|0,a>>31>>>7|0,0)|0;s=I;c=Os(u|0,s|0,25)|0;r=I;s=ks(f|0,a|0,u&-33554432|0,s|0)|0;o[i>>2]=s;o[i+4>>2]=I;i=e+64|0;s=i;s=Ss(c|0,r|0,o[s>>2]|0,o[s+4>>2]|0)|0;r=I;c=Ss(s|0,r|0,r>>31>>>6|0,0)|0;u=I;a=Os(c|0,u|0,26)|0;f=I;u=ks(s|0,r|0,c&-67108864|0,u|0)|0;o[i>>2]=u;o[i+4>>2]=I;i=e+72|0;u=i;u=Ss(a|0,f|0,o[u>>2]|0,o[u+4>>2]|0)|0;f=I;a=Ss(u|0,f|0,f>>31>>>7|0,0)|0;c=I;r=Os(a|0,c|0,25)|0;s=I;c=ks(u|0,f|0,a&-33554432|0,c|0)|0;o[i>>2]=c;o[i+4>>2]=I;i=t;i=Ss(r|0,s|0,o[i>>2]|0,o[i+4>>2]|0)|0;s=I;r=e;c=o[r>>2]|0;r=o[r+4>>2]|0;a=Es(i|0,s|0,18,0)|0;f=I;s=Ss(c|0,r|0,i|0,s|0)|0;f=Ss(s|0,I|0,a|0,f|0)|0;a=I;o[t>>2]=0;o[t+4>>2]=0;t=Ss(f|0,a|0,a>>31>>>6|0,0)|0;s=I;i=Os(t|0,s|0,26)|0;r=I;s=ks(f|0,a|0,t&-67108864|0,s|0)|0;t=e;o[t>>2]=s;o[t+4>>2]=I;t=n;t=Ss(i|0,r|0,o[t>>2]|0,o[t+4>>2]|0)|0;e=n;o[e>>2]=t;o[e+4>>2]=I;return}function No(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0,B=0,N=0,j=0,U=0,L=0,q=0,F=0,K=0,G=0,z=0,H=0,V=0,Q=0,W=0,Y=0,X=0,J=0,Z=0,$=0,ee=0,te=0,ne=0,re=0,ie=0,oe=0,se=0,ae=0,fe=0;r=h;h=h+160|0;n=r;F=o[t>>2]|0;_=Os(0,F|0,32)|0;f=I;a=Es(_|0,f|0,_|0,f|0)|0;s=I;B=n;o[B>>2]=a;o[B+4>>2]=s;F=Os(0,F|0,31)|0;B=I;H=o[t+8>>2]|0;E=Os(0,H|0,32)|0;d=I;g=Es(E|0,d|0,F|0,B|0)|0;p=I;u=n+8|0;A=u;o[A>>2]=g;o[A+4>>2]=p;A=Es(E|0,d|0,E|0,d|0)|0;w=I;m=Os(0,o[t+16>>2]|0,32)|0;l=I;y=Es(m|0,l|0,_|0,f|0)|0;w=Ss(y|0,I|0,A|0,w|0)|0;w=xs(w|0,I|0,1)|0;A=I;y=n+16|0;R=y;o[R>>2]=w;o[R+4>>2]=A;R=Es(m|0,l|0,E|0,d|0)|0;T=I;fe=Os(0,o[t+24>>2]|0,32)|0;ae=I;v=Es(fe|0,ae|0,_|0,f|0)|0;T=Ss(v|0,I|0,R|0,T|0)|0;T=xs(T|0,I|0,1)|0;R=I;v=n+24|0;D=v;o[D>>2]=T;o[D+4>>2]=R;D=Es(m|0,l|0,m|0,l|0)|0;x=I;O=Os(0,H|0,30)|0;O=Es(fe|0,ae|0,O|0,I|0)|0;x=Ss(O|0,I|0,D|0,x|0)|0;D=I;O=Os(0,o[t+32>>2]|0,32)|0;b=I;B=Es(O|0,b|0,F|0,B|0)|0;B=Ss(x|0,D|0,B|0,I|0)|0;D=I;x=n+32|0;F=x;o[F>>2]=B;o[F+4>>2]=D;F=Es(fe|0,ae|0,m|0,l|0)|0;U=I;M=Es(O|0,b|0,E|0,d|0)|0;U=Ss(M|0,I|0,F|0,U|0)|0;F=I;M=o[t+40>>2]|0;j=Os(0,M|0,32)|0;P=I;K=Es(j|0,P|0,_|0,f|0)|0;K=Ss(U|0,F|0,K|0,I|0)|0;K=xs(K|0,I|0,1)|0;F=I;U=n+40|0;$=U;o[$>>2]=K;o[$+4>>2]=F;$=Es(fe|0,ae|0,fe|0,ae|0)|0;te=I;G=Es(O|0,b|0,m|0,l|0)|0;te=Ss(G|0,I|0,$|0,te|0)|0;$=I;G=Os(0,o[t+48>>2]|0,32)|0;z=I;W=Es(G|0,z|0,_|0,f|0)|0;Y=I;H=Os(0,H|0,31)|0;H=Es(j|0,P|0,H|0,I|0)|0;H=Ss(te|0,$|0,H|0,I|0)|0;Y=Ss(H|0,I|0,W|0,Y|0)|0;Y=xs(Y|0,I|0,1)|0;W=I;H=n+48|0;$=H;o[$>>2]=Y;o[$+4>>2]=W;$=Es(O|0,b|0,fe|0,ae|0)|0;te=I;Q=Es(j|0,P|0,m|0,l|0)|0;te=Ss(Q|0,I|0,$|0,te|0)|0;$=I;Q=Es(G|0,z|0,E|0,d|0)|0;Q=Ss(te|0,$|0,Q|0,I|0)|0;$=I;te=o[t+56>>2]|0;L=Os(0,te|0,32)|0;q=I;ee=Es(L|0,q|0,_|0,f|0)|0;ee=Ss(Q|0,$|0,ee|0,I|0)|0;ee=xs(ee|0,I|0,1)|0;$=I;Q=n+56|0;V=Q;o[V>>2]=ee;o[V+4>>2]=$;V=Es(O|0,b|0,O|0,b|0)|0;Z=I;i=Es(G|0,z|0,m|0,l|0)|0;oe=I;ne=o[t+64>>2]|0;J=Os(0,ne|0,32)|0;X=I;ie=Es(J|0,X|0,_|0,f|0)|0;oe=Ss(ie|0,I|0,i|0,oe|0)|0;i=I;ie=Es(L|0,q|0,E|0,d|0)|0;re=I;c=Es(j|0,P|0,fe|0,ae|0)|0;c=Ss(ie|0,re|0,c|0,I|0)|0;c=xs(c|0,I|0,1)|0;c=Ss(oe|0,i|0,c|0,I|0)|0;c=xs(c|0,I|0,1)|0;Z=Ss(c|0,I|0,V|0,Z|0)|0;V=I;c=Es(j|0,P|0,O|0,b|0)|0;i=I;oe=Es(G|0,z|0,fe|0,ae|0)|0;i=Ss(oe|0,I|0,c|0,i|0)|0;c=I;oe=Es(L|0,q|0,m|0,l|0)|0;oe=Ss(i|0,c|0,oe|0,I|0)|0;c=I;i=Es(J|0,X|0,E|0,d|0)|0;i=Ss(oe|0,c|0,i|0,I|0)|0;c=I;oe=o[t+72>>2]|0;re=Os(0,oe|0,32)|0;ie=I;f=Es(re|0,ie|0,_|0,f|0)|0;f=Ss(i|0,c|0,f|0,I|0)|0;f=xs(f|0,I|0,1)|0;t=n+72|0;o[t>>2]=f;o[t+4>>2]=I;t=Es(j|0,P|0,j|0,P|0)|0;f=I;c=Es(G|0,z|0,O|0,b|0)|0;f=Ss(c|0,I|0,t|0,f|0)|0;t=I;c=Es(J|0,X|0,m|0,l|0)|0;c=Ss(f|0,t|0,c|0,I|0)|0;t=I;f=Es(L|0,q|0,fe|0,ae|0)|0;i=I;d=Es(re|0,ie|0,E|0,d|0)|0;i=Ss(d|0,I|0,f|0,i|0)|0;i=xs(i|0,I|0,1)|0;i=Ss(c|0,t|0,i|0,I|0)|0;t=I;c=xs(i|0,t|0,1)|0;f=I;d=n+80|0;o[d>>2]=c;o[d+4>>2]=f;d=Es(G|0,z|0,j|0,P|0)|0;E=I;_=Es(L|0,q|0,O|0,b|0)|0;E=Ss(_|0,I|0,d|0,E|0)|0;d=I;_=Es(J|0,X|0,fe|0,ae|0)|0;_=Ss(E|0,d|0,_|0,I|0)|0;d=I;l=Es(re|0,ie|0,m|0,l|0)|0;l=Ss(_|0,d|0,l|0,I|0)|0;d=I;_=xs(l|0,d|0,1)|0;m=I;E=n+88|0;o[E>>2]=_;o[E+4>>2]=m;E=Es(G|0,z|0,G|0,z|0)|0;S=I;C=Es(J|0,X|0,O|0,b|0)|0;k=I;se=Es(L|0,q|0,j|0,P|0)|0;N=I;ae=Es(re|0,ie|0,fe|0,ae|0)|0;N=Ss(ae|0,I|0,se|0,N|0)|0;N=xs(N|0,I|0,1)|0;k=Ss(N|0,I|0,C|0,k|0)|0;k=xs(k|0,I|0,1)|0;S=Ss(k|0,I|0,E|0,S|0)|0;E=I;k=n+96|0;o[k>>2]=S;o[k+4>>2]=E;k=Es(L|0,q|0,G|0,z|0)|0;C=I;P=Es(J|0,X|0,j|0,P|0)|0;C=Ss(P|0,I|0,k|0,C|0)|0;k=I;b=Es(re|0,ie|0,O|0,b|0)|0;b=Ss(C|0,k|0,b|0,I|0)|0;k=I;C=xs(b|0,k|0,1)|0;O=I;P=n+104|0;o[P>>2]=C;o[P+4>>2]=O;P=Es(L|0,q|0,L|0,q|0)|0;j=I;N=Es(J|0,X|0,G|0,z|0)|0;j=Ss(N|0,I|0,P|0,j|0)|0;P=I;M=Os(0,M|0,31)|0;M=Es(re|0,ie|0,M|0,I|0)|0;M=Ss(j|0,P|0,M|0,I|0)|0;P=I;j=xs(M|0,P|0,1)|0;N=I;se=n+112|0;o[se>>2]=j;o[se+4>>2]=N;q=Es(J|0,X|0,L|0,q|0)|0;L=I;z=Es(re|0,ie|0,G|0,z|0)|0;L=Ss(z|0,I|0,q|0,L|0)|0;q=I;z=xs(L|0,q|0,1)|0;G=I;se=n+120|0;o[se>>2]=z;o[se+4>>2]=G;X=Es(J|0,X|0,J|0,X|0)|0;J=I;te=Os(0,te|0,30)|0;te=Es(re|0,ie|0,te|0,I|0)|0;J=Ss(te|0,I|0,X|0,J|0)|0;X=I;te=n+128|0;o[te>>2]=J;o[te+4>>2]=X;ne=Os(0,ne|0,31)|0;ne=Es(re|0,ie|0,ne|0,I|0)|0;te=I;se=n+136|0;o[se>>2]=ne;o[se+4>>2]=te;oe=Os(0,oe|0,31)|0;ie=Es(oe|0,I|0,re|0,ie|0)|0;re=I;oe=n+144|0;o[oe>>2]=ie;o[oe+4>>2]=re;re=Es(ie|0,re|0,19,0)|0;V=Ss(re|0,I|0,Z|0,V|0)|0;Z=n+64|0;o[Z>>2]=V;o[Z+4>>2]=I;Z=Es(ne|0,te|0,18,0)|0;V=I;$=Ss(ne|0,te|0,ee|0,$|0)|0;V=Ss($|0,I|0,Z|0,V|0)|0;o[Q>>2]=V;o[Q+4>>2]=I;Q=Es(J|0,X|0,18,0)|0;V=I;W=Ss(J|0,X|0,Y|0,W|0)|0;V=Ss(W|0,I|0,Q|0,V|0)|0;o[H>>2]=V;o[H+4>>2]=I;q=Es(L|0,q|0,36,0)|0;L=I;F=Ss(z|0,G|0,K|0,F|0)|0;L=Ss(F|0,I|0,q|0,L|0)|0;o[U>>2]=L;o[U+4>>2]=I;P=Es(M|0,P|0,36,0)|0;M=I;D=Ss(j|0,N|0,B|0,D|0)|0;M=Ss(D|0,I|0,P|0,M|0)|0;o[x>>2]=M;o[x+4>>2]=I;k=Es(b|0,k|0,36,0)|0;b=I;R=Ss(C|0,O|0,T|0,R|0)|0;b=Ss(R|0,I|0,k|0,b|0)|0;o[v>>2]=b;o[v+4>>2]=I;v=Es(S|0,E|0,18,0)|0;b=I;A=Ss(S|0,E|0,w|0,A|0)|0;b=Ss(A|0,I|0,v|0,b|0)|0;o[y>>2]=b;o[y+4>>2]=I;d=Es(l|0,d|0,36,0)|0;l=I;p=Ss(_|0,m|0,g|0,p|0)|0;l=Ss(p|0,I|0,d|0,l|0)|0;o[u>>2]=l;o[u+4>>2]=I;t=Es(i|0,t|0,36,0)|0;i=I;s=Ss(c|0,f|0,a|0,s|0)|0;i=Ss(s|0,I|0,t|0,i|0)|0;t=n;o[t>>2]=i;o[t+4>>2]=I;Bo(n);t=n;n=e+80|0;do{o[e>>2]=o[t>>2];e=e+4|0;t=t+4|0}while((e|0)<(n|0));h=r;return}function jo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0;E=h;h=h+16|0;p=E;do{if(e>>>0<245){u=e>>>0<11?16:e+11&-8;e=u>>>3;d=o[9632]|0;n=d>>>e;if(n&3|0){t=(n&1^1)+e|0;e=38568+(t<<1<<2)|0;n=e+8|0;r=o[n>>2]|0;i=r+8|0;s=o[i>>2]|0;if((s|0)==(e|0))o[9632]=d&~(1<>2]=e;o[n>>2]=s}w=t<<3;o[r+4>>2]=w|3;w=r+w+4|0;o[w>>2]=o[w>>2]|1;w=i;h=E;return w|0}l=o[9634]|0;if(u>>>0>l>>>0){if(n|0){t=2<>>12&16;t=t>>>f;n=t>>>5&8;t=t>>>n;s=t>>>2&4;t=t>>>s;e=t>>>1&2;t=t>>>e;r=t>>>1&1;r=(n|f|s|e|r)+(t>>>r)|0;t=38568+(r<<1<<2)|0;e=t+8|0;s=o[e>>2]|0;f=s+8|0;n=o[f>>2]|0;if((n|0)==(t|0)){e=d&~(1<>2]=t;o[e>>2]=n;e=d}w=r<<3;a=w-u|0;o[s+4>>2]=u|3;i=s+u|0;o[i+4>>2]=a|1;o[s+w>>2]=a;if(l|0){r=o[9637]|0;t=l>>>3;n=38568+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=r;o[t+12>>2]=r;o[r+8>>2]=t;o[r+12>>2]=n}o[9634]=a;o[9637]=i;w=f;h=E;return w|0}s=o[9633]|0;if(s){n=(s&0-s)+-1|0;i=n>>>12&16;n=n>>>i;r=n>>>5&8;n=n>>>r;a=n>>>2&4;n=n>>>a;f=n>>>1&2;n=n>>>f;c=n>>>1&1;c=o[38832+((r|i|a|f|c)+(n>>>c)<<2)>>2]|0;n=c;f=c;c=(o[c+4>>2]&-8)-u|0;while(1){e=o[n+16>>2]|0;if(!e){e=o[n+20>>2]|0;if(!e)break}a=(o[e+4>>2]&-8)-u|0;i=a>>>0>>0;n=e;f=i?e:f;c=i?a:c}a=f+u|0;if(a>>>0>f>>>0){i=o[f+24>>2]|0;t=o[f+12>>2]|0;do{if((t|0)==(f|0)){e=f+20|0;t=o[e>>2]|0;if(!t){e=f+16|0;t=o[e>>2]|0;if(!t){n=0;break}}while(1){r=t+20|0;n=o[r>>2]|0;if(!n){r=t+16|0;n=o[r>>2]|0;if(!n)break;else{t=n;e=r}}else{t=n;e=r}}o[e>>2]=0;n=t}else{n=o[f+8>>2]|0;o[n+12>>2]=t;o[t+8>>2]=n;n=t}}while(0);do{if(i|0){t=o[f+28>>2]|0;e=38832+(t<<2)|0;if((f|0)==(o[e>>2]|0)){o[e>>2]=n;if(!n){o[9633]=s&~(1<>2]|0)==(f|0)?w:i+20|0)>>2]=n;if(!n)break}o[n+24>>2]=i;t=o[f+16>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}t=o[f+20>>2]|0;if(t|0){o[n+20>>2]=t;o[t+24>>2]=n}}}while(0);if(c>>>0<16){w=c+u|0;o[f+4>>2]=w|3;w=f+w+4|0;o[w>>2]=o[w>>2]|1}else{o[f+4>>2]=u|3;o[a+4>>2]=c|1;o[a+c>>2]=c;if(l|0){r=o[9637]|0;t=l>>>3;n=38568+(t<<1<<2)|0;t=1<>2]|0}o[e>>2]=r;o[t+12>>2]=r;o[r+8>>2]=t;o[r+12>>2]=n}o[9634]=c;o[9637]=a}w=f+8|0;h=E;return w|0}else d=u}else d=u}else d=u}else if(e>>>0<=4294967231){e=e+11|0;u=e&-8;r=o[9633]|0;if(r){i=0-u|0;e=e>>>8;if(e)if(u>>>0>16777215)c=31;else{d=(e+1048320|0)>>>16&8;_=e<>>16&4;_=_<>>16&2;c=14-(f|d|c)+(_<>>15)|0;c=u>>>(c+7|0)&1|c<<1}else c=0;n=o[38832+(c<<2)>>2]|0;e:do{if(!n){n=0;e=0;_=61}else{e=0;f=u<<((c|0)==31?0:25-(c>>>1)|0);s=0;while(1){a=(o[n+4>>2]&-8)-u|0;if(a>>>0>>0)if(!a){e=n;i=0;_=65;break e}else{e=n;i=a}_=o[n+20>>2]|0;n=o[n+16+(f>>>31<<2)>>2]|0;s=(_|0)==0|(_|0)==(n|0)?s:_;if(!n){n=s;_=61;break}else f=f<<1}}}while(0);if((_|0)==61){if((n|0)==0&(e|0)==0){e=2<>>12&16;d=d>>>a;s=d>>>5&8;d=d>>>s;f=d>>>2&4;d=d>>>f;c=d>>>1&2;d=d>>>c;n=d>>>1&1;e=0;n=o[38832+((s|a|f|c|n)+(d>>>n)<<2)>>2]|0}if(!n){f=e;a=i}else _=65}if((_|0)==65){s=n;while(1){d=(o[s+4>>2]&-8)-u|0;n=d>>>0>>0;i=n?d:i;e=n?s:e;n=o[s+16>>2]|0;if(!n)n=o[s+20>>2]|0;if(!n){f=e;a=i;break}else s=n}}if(((f|0)!=0?a>>>0<((o[9634]|0)-u|0)>>>0:0)?(l=f+u|0,l>>>0>f>>>0):0){s=o[f+24>>2]|0;t=o[f+12>>2]|0;do{if((t|0)==(f|0)){e=f+20|0;t=o[e>>2]|0;if(!t){e=f+16|0;t=o[e>>2]|0;if(!t){t=0;break}}while(1){i=t+20|0;n=o[i>>2]|0;if(!n){i=t+16|0;n=o[i>>2]|0;if(!n)break;else{t=n;e=i}}else{t=n;e=i}}o[e>>2]=0}else{w=o[f+8>>2]|0;o[w+12>>2]=t;o[t+8>>2]=w}}while(0);do{if(s){e=o[f+28>>2]|0;n=38832+(e<<2)|0;if((f|0)==(o[n>>2]|0)){o[n>>2]=t;if(!t){r=r&~(1<>2]|0)==(f|0)?w:s+20|0)>>2]=t;if(!t)break}o[t+24>>2]=s;e=o[f+16>>2]|0;if(e|0){o[t+16>>2]=e;o[e+24>>2]=t}e=o[f+20>>2]|0;if(e){o[t+20>>2]=e;o[e+24>>2]=t}}}while(0);e:do{if(a>>>0<16){w=a+u|0;o[f+4>>2]=w|3;w=f+w+4|0;o[w>>2]=o[w>>2]|1}else{o[f+4>>2]=u|3;o[l+4>>2]=a|1;o[l+a>>2]=a;t=a>>>3;if(a>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=l;o[t+12>>2]=l;o[l+8>>2]=t;o[l+12>>2]=n;break}t=a>>>8;if(t)if(a>>>0>16777215)n=31;else{A=(t+1048320|0)>>>16&8;w=t<>>16&4;w=w<>>16&2;n=14-(v|A|n)+(w<>>15)|0;n=a>>>(n+7|0)&1|n<<1}else n=0;t=38832+(n<<2)|0;o[l+28>>2]=n;e=l+16|0;o[e+4>>2]=0;o[e>>2]=0;e=1<>2]=l;o[l+24>>2]=t;o[l+12>>2]=l;o[l+8>>2]=l;break}t=o[t>>2]|0;t:do{if((o[t+4>>2]&-8|0)!=(a|0)){r=a<<((n|0)==31?0:25-(n>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(a|0)){t=e;break t}else{r=r<<1;t=e}}o[n>>2]=l;o[l+24>>2]=t;o[l+12>>2]=l;o[l+8>>2]=l;break e}}while(0);A=t+8|0;w=o[A>>2]|0;o[w+12>>2]=l;o[A>>2]=l;o[l+8>>2]=w;o[l+12>>2]=t;o[l+24>>2]=0}}while(0);w=f+8|0;h=E;return w|0}else d=u}else d=u}else d=-1}while(0);n=o[9634]|0;if(n>>>0>=d>>>0){t=n-d|0;e=o[9637]|0;if(t>>>0>15){w=e+d|0;o[9637]=w;o[9634]=t;o[w+4>>2]=t|1;o[e+n>>2]=t;o[e+4>>2]=d|3}else{o[9634]=0;o[9637]=0;o[e+4>>2]=n|3;w=e+n+4|0;o[w>>2]=o[w>>2]|1}w=e+8|0;h=E;return w|0}a=o[9635]|0;if(a>>>0>d>>>0){v=a-d|0;o[9635]=v;w=o[9638]|0;A=w+d|0;o[9638]=A;o[A+4>>2]=v|1;o[w+4>>2]=d|3;w=w+8|0;h=E;return w|0}if(!(o[9750]|0)){o[9752]=4096;o[9751]=4096;o[9753]=-1;o[9754]=-1;o[9755]=0;o[9743]=0;o[9750]=p&-16^1431655768;e=4096}else e=o[9752]|0;f=d+48|0;c=d+47|0;s=e+c|0;i=0-e|0;u=s&i;if(u>>>0<=d>>>0){w=0;h=E;return w|0}e=o[9742]|0;if(e|0?(l=o[9740]|0,p=l+u|0,p>>>0<=l>>>0|p>>>0>e>>>0):0){w=0;h=E;return w|0}e:do{if(!(o[9743]&4)){n=o[9638]|0;t:do{if(n){r=38976;while(1){p=o[r>>2]|0;if(p>>>0<=n>>>0?(p+(o[r+4>>2]|0)|0)>>>0>n>>>0:0)break;e=o[r+8>>2]|0;if(!e){_=128;break t}else r=e}t=s-a&i;if(t>>>0<2147483647){e=Bs(t|0)|0;if((e|0)==((o[r>>2]|0)+(o[r+4>>2]|0)|0)){if((e|0)!=(-1|0)){a=t;s=e;_=145;break e}}else{r=e;_=136}}else t=0}else _=128}while(0);do{if((_|0)==128){n=Bs(0)|0;if((n|0)!=(-1|0)?(t=n,g=o[9751]|0,m=g+-1|0,t=((m&t|0)==0?0:(m+t&0-g)-t|0)+u|0,g=o[9740]|0,m=t+g|0,t>>>0>d>>>0&t>>>0<2147483647):0){p=o[9742]|0;if(p|0?m>>>0<=g>>>0|m>>>0>p>>>0:0){t=0;break}e=Bs(t|0)|0;if((e|0)==(n|0)){a=t;s=n;_=145;break e}else{r=e;_=136}}else t=0}}while(0);do{if((_|0)==136){n=0-t|0;if(!(f>>>0>t>>>0&(t>>>0<2147483647&(r|0)!=(-1|0))))if((r|0)==(-1|0)){t=0;break}else{a=t;s=r;_=145;break e}e=o[9752]|0;e=c-t+e&0-e;if(e>>>0>=2147483647){a=t;s=r;_=145;break e}if((Bs(e|0)|0)==(-1|0)){Bs(n|0)|0;t=0;break}else{a=e+t|0;s=r;_=145;break e}}}while(0);o[9743]=o[9743]|4;_=143}else{t=0;_=143}}while(0);if(((_|0)==143?u>>>0<2147483647:0)?(v=Bs(u|0)|0,m=Bs(0)|0,y=m-v|0,b=y>>>0>(d+40|0)>>>0,!((v|0)==(-1|0)|b^1|v>>>0>>0&((v|0)!=(-1|0)&(m|0)!=(-1|0))^1)):0){a=b?y:t;s=v;_=145}if((_|0)==145){t=(o[9740]|0)+a|0;o[9740]=t;if(t>>>0>(o[9741]|0)>>>0)o[9741]=t;c=o[9638]|0;e:do{if(c){t=38976;while(1){e=o[t>>2]|0;n=o[t+4>>2]|0;if((s|0)==(e+n|0)){_=154;break}r=o[t+8>>2]|0;if(!r)break;else t=r}if(((_|0)==154?(A=t+4|0,(o[t+12>>2]&8|0)==0):0)?s>>>0>c>>>0&e>>>0<=c>>>0:0){o[A>>2]=n+a;w=(o[9635]|0)+a|0;v=c+8|0;v=(v&7|0)==0?0:0-v&7;A=c+v|0;v=w-v|0;o[9638]=A;o[9635]=v;o[A+4>>2]=v|1;o[c+w+4>>2]=40;o[9639]=o[9754];break}if(s>>>0<(o[9636]|0)>>>0)o[9636]=s;n=s+a|0;t=38976;while(1){if((o[t>>2]|0)==(n|0)){_=162;break}e=o[t+8>>2]|0;if(!e)break;else t=e}if((_|0)==162?(o[t+12>>2]&8|0)==0:0){o[t>>2]=s;l=t+4|0;o[l>>2]=(o[l>>2]|0)+a;l=s+8|0;l=s+((l&7|0)==0?0:0-l&7)|0;t=n+8|0;t=n+((t&7|0)==0?0:0-t&7)|0;u=l+d|0;f=t-l-d|0;o[l+4>>2]=d|3;t:do{if((c|0)==(t|0)){w=(o[9635]|0)+f|0;o[9635]=w;o[9638]=u;o[u+4>>2]=w|1}else{if((o[9637]|0)==(t|0)){w=(o[9634]|0)+f|0;o[9634]=w;o[9637]=u;o[u+4>>2]=w|1;o[u+w>>2]=w;break}e=o[t+4>>2]|0;if((e&3|0)==1){a=e&-8;r=e>>>3;n:do{if(e>>>0<256){e=o[t+8>>2]|0;n=o[t+12>>2]|0;if((n|0)==(e|0)){o[9632]=o[9632]&~(1<>2]=n;o[n+8>>2]=e;break}}else{s=o[t+24>>2]|0;e=o[t+12>>2]|0;do{if((e|0)==(t|0)){n=t+16|0;r=n+4|0;e=o[r>>2]|0;if(!e){e=o[n>>2]|0;if(!e){e=0;break}}else n=r;while(1){i=e+20|0;r=o[i>>2]|0;if(!r){i=e+16|0;r=o[i>>2]|0;if(!r)break;else{e=r;n=i}}else{e=r;n=i}}o[n>>2]=0}else{w=o[t+8>>2]|0;o[w+12>>2]=e;o[e+8>>2]=w}}while(0);if(!s)break;n=o[t+28>>2]|0;r=38832+(n<<2)|0;do{if((o[r>>2]|0)!=(t|0)){w=s+16|0;o[((o[w>>2]|0)==(t|0)?w:s+20|0)>>2]=e;if(!e)break n}else{o[r>>2]=e;if(e|0)break;o[9633]=o[9633]&~(1<>2]=s;n=t+16|0;r=o[n>>2]|0;if(r|0){o[e+16>>2]=r;o[r+24>>2]=e}n=o[n+4>>2]|0;if(!n)break;o[e+20>>2]=n;o[n+24>>2]=e}}while(0);t=t+a|0;i=a+f|0}else i=f;t=t+4|0;o[t>>2]=o[t>>2]&-2;o[u+4>>2]=i|1;o[u+i>>2]=i;t=i>>>3;if(i>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=u;o[t+12>>2]=u;o[u+8>>2]=t;o[u+12>>2]=n;break}t=i>>>8;do{if(!t)r=0;else{if(i>>>0>16777215){r=31;break}A=(t+1048320|0)>>>16&8;w=t<>>16&4;w=w<>>16&2;r=14-(v|A|r)+(w<>>15)|0;r=i>>>(r+7|0)&1|r<<1}}while(0);t=38832+(r<<2)|0;o[u+28>>2]=r;e=u+16|0;o[e+4>>2]=0;o[e>>2]=0;e=o[9633]|0;n=1<>2]=u;o[u+24>>2]=t;o[u+12>>2]=u;o[u+8>>2]=u;break}t=o[t>>2]|0;n:do{if((o[t+4>>2]&-8|0)!=(i|0)){r=i<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(i|0)){t=e;break n}else{r=r<<1;t=e}}o[n>>2]=u;o[u+24>>2]=t;o[u+12>>2]=u;o[u+8>>2]=u;break t}}while(0);A=t+8|0;w=o[A>>2]|0;o[w+12>>2]=u;o[A>>2]=u;o[u+8>>2]=w;o[u+12>>2]=t;o[u+24>>2]=0}}while(0);w=l+8|0;h=E;return w|0}t=38976;while(1){e=o[t>>2]|0;if(e>>>0<=c>>>0?(w=e+(o[t+4>>2]|0)|0,w>>>0>c>>>0):0)break;t=o[t+8>>2]|0}i=w+-47|0;e=i+8|0;e=i+((e&7|0)==0?0:0-e&7)|0;i=c+16|0;e=e>>>0>>0?c:e;t=e+8|0;n=a+-40|0;v=s+8|0;v=(v&7|0)==0?0:0-v&7;A=s+v|0;v=n-v|0;o[9638]=A;o[9635]=v;o[A+4>>2]=v|1;o[s+n+4>>2]=40;o[9639]=o[9754];n=e+4|0;o[n>>2]=27;o[t>>2]=o[9744];o[t+4>>2]=o[9745];o[t+8>>2]=o[9746];o[t+12>>2]=o[9747];o[9744]=s;o[9745]=a;o[9747]=0;o[9746]=t;t=e+24|0;do{A=t;t=t+4|0;o[t>>2]=7}while((A+8|0)>>>0>>0);if((e|0)!=(c|0)){s=e-c|0;o[n>>2]=o[n>>2]&-2;o[c+4>>2]=s|1;o[e>>2]=s;t=s>>>3;if(s>>>0<256){n=38568+(t<<1<<2)|0;e=o[9632]|0;t=1<>2]|0}o[e>>2]=c;o[t+12>>2]=c;o[c+8>>2]=t;o[c+12>>2]=n;break}t=s>>>8;if(t)if(s>>>0>16777215)r=31;else{A=(t+1048320|0)>>>16&8;w=t<>>16&4;w=w<>>16&2;r=14-(v|A|r)+(w<>>15)|0;r=s>>>(r+7|0)&1|r<<1}else r=0;n=38832+(r<<2)|0;o[c+28>>2]=r;o[c+20>>2]=0;o[i>>2]=0;t=o[9633]|0;e=1<>2]=c;o[c+24>>2]=n;o[c+12>>2]=c;o[c+8>>2]=c;break}t=o[n>>2]|0;t:do{if((o[t+4>>2]&-8|0)!=(s|0)){r=s<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=t+16+(r>>>31<<2)|0;e=o[n>>2]|0;if(!e)break;if((o[e+4>>2]&-8|0)==(s|0)){t=e;break t}else{r=r<<1;t=e}}o[n>>2]=c;o[c+24>>2]=t;o[c+12>>2]=c;o[c+8>>2]=c;break e}}while(0);A=t+8|0;w=o[A>>2]|0;o[w+12>>2]=c;o[A>>2]=c;o[c+8>>2]=w;o[c+12>>2]=t;o[c+24>>2]=0}}else{w=o[9636]|0;if((w|0)==0|s>>>0>>0)o[9636]=s;o[9744]=s;o[9745]=a;o[9747]=0;o[9641]=o[9750];o[9640]=-1;o[9645]=38568;o[9644]=38568;o[9647]=38576;o[9646]=38576;o[9649]=38584;o[9648]=38584;o[9651]=38592;o[9650]=38592;o[9653]=38600;o[9652]=38600;o[9655]=38608;o[9654]=38608;o[9657]=38616;o[9656]=38616;o[9659]=38624;o[9658]=38624;o[9661]=38632;o[9660]=38632;o[9663]=38640;o[9662]=38640;o[9665]=38648;o[9664]=38648;o[9667]=38656;o[9666]=38656;o[9669]=38664;o[9668]=38664;o[9671]=38672;o[9670]=38672;o[9673]=38680;o[9672]=38680;o[9675]=38688;o[9674]=38688;o[9677]=38696;o[9676]=38696;o[9679]=38704;o[9678]=38704;o[9681]=38712;o[9680]=38712;o[9683]=38720;o[9682]=38720;o[9685]=38728;o[9684]=38728;o[9687]=38736;o[9686]=38736;o[9689]=38744;o[9688]=38744;o[9691]=38752;o[9690]=38752;o[9693]=38760;o[9692]=38760;o[9695]=38768;o[9694]=38768;o[9697]=38776;o[9696]=38776;o[9699]=38784;o[9698]=38784;o[9701]=38792;o[9700]=38792;o[9703]=38800;o[9702]=38800;o[9705]=38808;o[9704]=38808;o[9707]=38816;o[9706]=38816;w=a+-40|0;v=s+8|0;v=(v&7|0)==0?0:0-v&7;A=s+v|0;v=w-v|0;o[9638]=A;o[9635]=v;o[A+4>>2]=v|1;o[s+w+4>>2]=40;o[9639]=o[9754]}}while(0);t=o[9635]|0;if(t>>>0>d>>>0){v=t-d|0;o[9635]=v;w=o[9638]|0;A=w+d|0;o[9638]=A;o[A+4>>2]=v|1;o[w+4>>2]=d|3;w=w+8|0;h=E;return w|0}}o[(Lo()|0)>>2]=12;w=0;h=E;return w|0}function Uo(e){e=e|0;var t=0,n=0,r=0,i=0,s=0,a=0,f=0,c=0;if(!e)return;n=e+-8|0;i=o[9636]|0;e=o[e+-4>>2]|0;t=e&-8;c=n+t|0;do{if(!(e&1)){r=o[n>>2]|0;if(!(e&3))return;a=n+(0-r)|0;s=r+t|0;if(a>>>0>>0)return;if((o[9637]|0)==(a|0)){e=c+4|0;t=o[e>>2]|0;if((t&3|0)!=3){f=a;t=s;break}o[9634]=s;o[e>>2]=t&-2;o[a+4>>2]=s|1;o[a+s>>2]=s;return}n=r>>>3;if(r>>>0<256){e=o[a+8>>2]|0;t=o[a+12>>2]|0;if((t|0)==(e|0)){o[9632]=o[9632]&~(1<>2]=t;o[t+8>>2]=e;f=a;t=s;break}}i=o[a+24>>2]|0;e=o[a+12>>2]|0;do{if((e|0)==(a|0)){t=a+16|0;n=t+4|0;e=o[n>>2]|0;if(!e){e=o[t>>2]|0;if(!e){e=0;break}}else t=n;while(1){r=e+20|0;n=o[r>>2]|0;if(!n){r=e+16|0;n=o[r>>2]|0;if(!n)break;else{e=n;t=r}}else{e=n;t=r}}o[t>>2]=0}else{f=o[a+8>>2]|0;o[f+12>>2]=e;o[e+8>>2]=f}}while(0);if(i){t=o[a+28>>2]|0;n=38832+(t<<2)|0;if((o[n>>2]|0)==(a|0)){o[n>>2]=e;if(!e){o[9633]=o[9633]&~(1<>2]|0)==(a|0)?f:i+20|0)>>2]=e;if(!e){f=a;t=s;break}}o[e+24>>2]=i;t=a+16|0;n=o[t>>2]|0;if(n|0){o[e+16>>2]=n;o[n+24>>2]=e}t=o[t+4>>2]|0;if(t){o[e+20>>2]=t;o[t+24>>2]=e;f=a;t=s}else{f=a;t=s}}else{f=a;t=s}}else{f=n;a=n}}while(0);if(a>>>0>=c>>>0)return;e=c+4|0;r=o[e>>2]|0;if(!(r&1))return;if(!(r&2)){if((o[9638]|0)==(c|0)){c=(o[9635]|0)+t|0;o[9635]=c;o[9638]=f;o[f+4>>2]=c|1;if((f|0)!=(o[9637]|0))return;o[9637]=0;o[9634]=0;return}if((o[9637]|0)==(c|0)){c=(o[9634]|0)+t|0;o[9634]=c;o[9637]=a;o[f+4>>2]=c|1;o[a+c>>2]=c;return}i=(r&-8)+t|0;n=r>>>3;do{if(r>>>0<256){t=o[c+8>>2]|0;e=o[c+12>>2]|0;if((e|0)==(t|0)){o[9632]=o[9632]&~(1<>2]=e;o[e+8>>2]=t;break}}else{s=o[c+24>>2]|0;e=o[c+12>>2]|0;do{if((e|0)==(c|0)){t=c+16|0;n=t+4|0;e=o[n>>2]|0;if(!e){e=o[t>>2]|0;if(!e){n=0;break}}else t=n;while(1){r=e+20|0;n=o[r>>2]|0;if(!n){r=e+16|0;n=o[r>>2]|0;if(!n)break;else{e=n;t=r}}else{e=n;t=r}}o[t>>2]=0;n=e}else{n=o[c+8>>2]|0;o[n+12>>2]=e;o[e+8>>2]=n;n=e}}while(0);if(s|0){e=o[c+28>>2]|0;t=38832+(e<<2)|0;if((o[t>>2]|0)==(c|0)){o[t>>2]=n;if(!n){o[9633]=o[9633]&~(1<>2]|0)==(c|0)?r:s+20|0)>>2]=n;if(!n)break}o[n+24>>2]=s;e=c+16|0;t=o[e>>2]|0;if(t|0){o[n+16>>2]=t;o[t+24>>2]=n}e=o[e+4>>2]|0;if(e|0){o[n+20>>2]=e;o[e+24>>2]=n}}}}while(0);o[f+4>>2]=i|1;o[a+i>>2]=i;if((f|0)==(o[9637]|0)){o[9634]=i;return}}else{o[e>>2]=r&-2;o[f+4>>2]=t|1;o[a+t>>2]=t;i=t}e=i>>>3;if(i>>>0<256){n=38568+(e<<1<<2)|0;t=o[9632]|0;e=1<>2]|0}o[t>>2]=f;o[e+12>>2]=f;o[f+8>>2]=e;o[f+12>>2]=n;return}e=i>>>8;if(e)if(i>>>0>16777215)r=31;else{a=(e+1048320|0)>>>16&8;c=e<>>16&4;c=c<>>16&2;r=14-(s|a|r)+(c<>>15)|0;r=i>>>(r+7|0)&1|r<<1}else r=0;e=38832+(r<<2)|0;o[f+28>>2]=r;o[f+20>>2]=0;o[f+16>>2]=0;t=o[9633]|0;n=1<>2]=f;o[f+24>>2]=e;o[f+12>>2]=f;o[f+8>>2]=f}else{e=o[e>>2]|0;t:do{if((o[e+4>>2]&-8|0)!=(i|0)){r=i<<((r|0)==31?0:25-(r>>>1)|0);while(1){n=e+16+(r>>>31<<2)|0;t=o[n>>2]|0;if(!t)break;if((o[t+4>>2]&-8|0)==(i|0)){e=t;break t}else{r=r<<1;e=t}}o[n>>2]=f;o[f+24>>2]=e;o[f+12>>2]=f;o[f+8>>2]=f;break e}}while(0);a=e+8|0;c=o[a>>2]|0;o[c+12>>2]=f;o[a>>2]=f;o[f+8>>2]=c;o[f+12>>2]=e;o[f+24>>2]=0}}while(0);c=(o[9640]|0)+-1|0;o[9640]=c;if(c|0)return;e=38984;while(1){e=o[e>>2]|0;if(!e)break;else e=e+8|0}o[9640]=-1;return}function Lo(){return 39088}function qo(e,t){e=e|0;t=t|0;var n=0,i=0;n=r[e>>0]|0;i=r[t>>0]|0;if(n<<24>>24==0?1:n<<24>>24!=i<<24>>24)e=i;else{do{e=e+1|0;t=t+1|0;n=r[e>>0]|0;i=r[t>>0]|0}while(!(n<<24>>24==0?1:n<<24>>24!=i<<24>>24));e=i}return(n&255)-(e&255)|0}function Fo(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0;e:do{if(!n)e=0;else{while(1){i=r[e>>0]|0;o=r[t>>0]|0;if(i<<24>>24!=o<<24>>24)break;n=n+-1|0;if(!n){e=0;break e}else{e=e+1|0;t=t+1|0}}e=(i&255)-(o&255)|0}}while(0);return e|0}function Ko(e){e=e|0;return(e+-48|0)>>>0<10|0}function Go(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0,d=0;d=h;h=h+128|0;s=d+124|0;l=d;a=l;f=37604;c=a+124|0;do{o[a>>2]=o[f>>2];a=a+4|0;f=f+4|0}while((a|0)<(c|0));if((t+-1|0)>>>0>2147483646)if(!t){e=s;t=1;u=4}else{o[(Lo()|0)>>2]=75;t=-1}else u=4;if((u|0)==4){u=-2-e|0;u=t>>>0>u>>>0?u:t;o[l+48>>2]=u;s=l+20|0;o[s>>2]=e;o[l+44>>2]=e;t=e+u|0;e=l+16|0;o[e>>2]=t;o[l+28>>2]=t;t=zo(l,n,i)|0;if(u){l=o[s>>2]|0;r[l+(((l|0)==(o[e>>2]|0))<<31>>31)>>0]=0}}h=d;return t|0}function zo(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0;y=h;h=h+224|0;d=y+208|0;g=y+160|0;m=y+80|0;_=y;i=g;s=i+40|0;do{o[i>>2]=0;i=i+4|0}while((i|0)<(s|0));o[d>>2]=o[n>>2];if((Ho(0,t,d,m,g)|0)<0)n=-1;else{if((o[e+76>>2]|0)>-1)p=Vo(e)|0;else p=0;n=o[e>>2]|0;l=n&32;if((r[e+74>>0]|0)<1)o[e>>2]=n&-33;i=e+48|0;if(!(o[i>>2]|0)){s=e+44|0;a=o[s>>2]|0;o[s>>2]=_;f=e+28|0;o[f>>2]=_;c=e+20|0;o[c>>2]=_;o[i>>2]=80;u=e+16|0;o[u>>2]=_+80;n=Ho(e,t,d,m,g)|0;if(a){Vs[o[e+36>>2]&1](e,0,0)|0;n=(o[c>>2]|0)==0?-1:n;o[s>>2]=a;o[i>>2]=0;o[u>>2]=0;o[f>>2]=0;o[c>>2]=0}}else n=Ho(e,t,d,m,g)|0;i=o[e>>2]|0;o[e>>2]=i|l;if(p|0)Qo(e);n=(i&32|0)==0?n:-1}h=y;return n|0}function Ho(e,t,n,s,a){e=e|0;t=t|0;n=n|0;s=s|0;a=a|0;var f=0,c=0,l=0,d=0,p=0,g=0,m=0,_=0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0,D=0;D=h;h=h+64|0;O=D+56|0;C=D+40|0;k=D;M=D+48|0;P=D+60|0;o[O>>2]=t;w=(e|0)!=0;E=k+40|0;S=E;k=k+39|0;R=M+4|0;f=0;t=0;l=0;e:while(1){do{do{if((t|0)>-1)if((f|0)>(2147483647-t|0)){o[(Lo()|0)>>2]=75;t=-1;break}else{t=f+t|0;break}}while(0);y=o[O>>2]|0;f=r[y>>0]|0;if(!(f<<24>>24)){A=94;break e}c=y;t:while(1){switch(f<<24>>24){case 37:{A=10;break t}case 0:{f=c;break t}default:{}}v=c+1|0;o[O>>2]=v;f=r[v>>0]|0;c=v}t:do{if((A|0)==10){A=0;f=c;do{if((r[c+1>>0]|0)!=37)break t;f=f+1|0;c=c+2|0;o[O>>2]=c}while((r[c>>0]|0)==37)}}while(0);f=f-y|0;if(w)Wo(e,y,f)}while((f|0)!=0);v=(Ko(r[(o[O>>2]|0)+1>>0]|0)|0)==0;c=o[O>>2]|0;if(!v?(r[c+2>>0]|0)==36:0){m=(r[c+1>>0]|0)+-48|0;p=1;f=3}else{m=-1;p=l;f=1}f=c+f|0;o[O>>2]=f;c=r[f>>0]|0;l=(c<<24>>24)+-32|0;if(l>>>0>31|(1<>2]=f;c=r[f>>0]|0;l=(c<<24>>24)+-32|0}while(!(l>>>0>31|(1<>24==42){if((Ko(r[f+1>>0]|0)|0)!=0?(x=o[O>>2]|0,(r[x+2>>0]|0)==36):0){f=x+1|0;o[a+((r[f>>0]|0)+-48<<2)>>2]=10;f=o[s+((r[f>>0]|0)+-48<<3)>>2]|0;l=1;c=x+3|0}else{if(p|0){t=-1;break}if(w){v=(o[n>>2]|0)+(4-1)&~(4-1);f=o[v>>2]|0;o[n>>2]=v+4}else f=0;l=0;c=(o[O>>2]|0)+1|0}o[O>>2]=c;v=(f|0)<0;b=v?0-f|0:f;d=v?d|8192:d;v=l}else{f=Yo(O)|0;if((f|0)<0){t=-1;break}b=f;v=p;c=o[O>>2]|0}do{if((r[c>>0]|0)==46){f=c+1|0;if((r[f>>0]|0)!=42){o[O>>2]=f;f=Yo(O)|0;c=o[O>>2]|0;break}if(Ko(r[c+2>>0]|0)|0?(T=o[O>>2]|0,(r[T+3>>0]|0)==36):0){f=T+2|0;o[a+((r[f>>0]|0)+-48<<2)>>2]=10;f=o[s+((r[f>>0]|0)+-48<<3)>>2]|0;c=T+4|0;o[O>>2]=c;break}if(v|0){t=-1;break e}if(w){_=(o[n>>2]|0)+(4-1)&~(4-1);f=o[_>>2]|0;o[n>>2]=_+4}else f=0;c=(o[O>>2]|0)+2|0;o[O>>2]=c}else f=-1}while(0);_=0;while(1){if(((r[c>>0]|0)+-65|0)>>>0>57){t=-1;break e}l=c;c=c+1|0;o[O>>2]=c;l=r[(r[l>>0]|0)+-65+(35136+(_*58|0))>>0]|0;p=l&255;if((p+-1|0)>>>0>=8)break;else _=p}if(!(l<<24>>24)){t=-1;break}g=(m|0)>-1;do{if(l<<24>>24==19)if(g){t=-1;break e}else A=54;else{if(g){o[a+(m<<2)>>2]=p;g=s+(m<<3)|0;m=o[g+4>>2]|0;A=C;o[A>>2]=o[g>>2];o[A+4>>2]=m;A=54;break}if(!w){t=0;break e}Xo(C,p,n);c=o[O>>2]|0;A=55}}while(0);if((A|0)==54){A=0;if(w)A=55;else f=0}t:do{if((A|0)==55){A=0;c=r[c+-1>>0]|0;c=(_|0)!=0&(c&15|0)==3?c&-33:c;l=d&-65537;m=(d&8192|0)==0?d:l;n:do{switch(c|0){case 110:switch((_&255)<<24>>24){case 0:{o[o[C>>2]>>2]=t;f=0;break t}case 1:{o[o[C>>2]>>2]=t;f=0;break t}case 2:{f=o[C>>2]|0;o[f>>2]=t;o[f+4>>2]=((t|0)<0)<<31>>31;f=0;break t}case 3:{i[o[C>>2]>>1]=t;f=0;break t}case 4:{r[o[C>>2]>>0]=t;f=0;break t}case 6:{o[o[C>>2]>>2]=t;f=0;break t}case 7:{f=o[C>>2]|0;o[f>>2]=t;o[f+4>>2]=((t|0)<0)<<31>>31;f=0;break t}default:{f=0;break t}}case 112:{c=120;f=f>>>0>8?f:8;l=m|8;A=67;break}case 88:case 120:{l=m;A=67;break}case 111:{l=C;c=o[l>>2]|0;l=o[l+4>>2]|0;g=Zo(c,l,E)|0;A=S-g|0;d=0;p=38441;f=(m&8|0)==0|(f|0)>(A|0)?f:A+1|0;A=73;break}case 105:case 100:{l=C;c=o[l>>2]|0;l=o[l+4>>2]|0;if((l|0)<0){c=ks(0,0,c|0,l|0)|0;l=I;d=C;o[d>>2]=c;o[d+4>>2]=l;d=1;p=38441;A=72;break n}else{d=(m&2049|0)!=0&1;p=(m&2048|0)==0?(m&1|0)==0?38441:38443:38442;A=72;break n}}case 117:{l=C;d=0;p=38441;c=o[l>>2]|0;l=o[l+4>>2]|0;A=72;break}case 99:{r[k>>0]=o[C>>2];_=k;d=0;p=38441;g=1;f=S;break}case 109:{c=es(o[(Lo()|0)>>2]|0)|0;A=77;break}case 115:{c=o[C>>2]|0;c=(c|0)==0?38451:c;A=77;break}case 67:{o[M>>2]=o[C>>2];o[R>>2]=0;o[C>>2]=M;p=-1;A=81;break}case 83:{if(!f){ns(e,32,b,0,m);f=0;A=91}else{p=f;A=81}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{f=is(e,+u[C>>3],b,f,m,c)|0;break t}default:{_=y;d=0;p=38441;g=f;l=m;f=S}}}while(0);n:do{if((A|0)==67){y=C;_=o[y>>2]|0;y=o[y+4>>2]|0;g=Jo(_,y,E,c&32)|0;p=(l&8|0)==0|(_|0)==0&(y|0)==0;d=p?0:2;p=p?38441:38441+(c>>>4)|0;m=l;c=_;l=y;A=73}else if((A|0)==72){g=$o(c,l,E)|0;A=73}else if((A|0)==77){A=0;y=ts(c,0,f)|0;m=(y|0)==0;_=c;d=0;p=38441;g=m?f:y-c|0;f=m?c+f|0:y}else if((A|0)==81){A=0;d=o[C>>2]|0;f=0;while(1){c=o[d>>2]|0;if(!c)break;c=rs(P,c)|0;l=(c|0)<0;if(l|c>>>0>(p-f|0)>>>0){A=85;break}f=c+f|0;if(p>>>0>f>>>0)d=d+4|0;else break}if((A|0)==85){A=0;if(l){t=-1;break e}}ns(e,32,b,f,m);if(!f){f=0;A=91}else{l=o[C>>2]|0;d=0;while(1){c=o[l>>2]|0;if(!c){A=91;break n}c=rs(P,c)|0;d=c+d|0;if((d|0)>(f|0)){A=91;break n}Wo(e,P,c);if(d>>>0>=f>>>0){A=91;break}else l=l+4|0}}}}while(0);if((A|0)==73){A=0;l=(c|0)!=0|(l|0)!=0;y=(f|0)!=0|l;l=S-g+((l^1)&1)|0;_=y?g:E;g=y?(f|0)>(l|0)?f:l:0;l=(f|0)>-1?m&-65537:m;f=S}else if((A|0)==91){A=0;ns(e,32,b,f,m^8192);f=(b|0)>(f|0)?b:f;break}m=f-_|0;g=(g|0)<(m|0)?m:g;y=g+d|0;f=(b|0)<(y|0)?y:b;ns(e,32,f,y,l);Wo(e,p,d);ns(e,48,f,y,l^65536);ns(e,48,g,m,0);Wo(e,_,m);ns(e,32,f,y,l^8192)}}while(0);l=v}e:do{if((A|0)==94)if(!e)if(!l)t=0;else{t=1;while(1){f=o[a+(t<<2)>>2]|0;if(!f)break;Xo(s+(t<<3)|0,f,n);t=t+1|0;if(t>>>0>=10){t=1;break e}}while(1){if(o[a+(t<<2)>>2]|0){t=-1;break e}t=t+1|0;if(t>>>0>=10){t=1;break}}}}while(0);h=D;return t|0}function Vo(e){e=e|0;return 0}function Qo(e){e=e|0;return}function Wo(e,t,n){e=e|0;t=t|0;n=n|0;if(!(o[e>>2]&32))_s(t,n,e)|0;return}function Yo(e){e=e|0;var t=0,n=0;if(!(Ko(r[o[e>>2]>>0]|0)|0))t=0;else{t=0;do{n=o[e>>2]|0;t=(t*10|0)+-48+(r[n>>0]|0)|0;n=n+1|0;o[e>>2]=n}while((Ko(r[n>>0]|0)|0)!=0)}return t|0}function Xo(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0,s=0.0;e:do{if(t>>>0<=20)do{switch(t|0){case 9:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;o[e>>2]=t;break e}case 10:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=((t|0)<0)<<31>>31;break e}case 11:{r=(o[n>>2]|0)+(4-1)&~(4-1);t=o[r>>2]|0;o[n>>2]=r+4;r=e;o[r>>2]=t;o[r+4>>2]=0;break e}case 12:{r=(o[n>>2]|0)+(8-1)&~(8-1);t=r;i=o[t>>2]|0;t=o[t+4>>2]|0;o[n>>2]=r+8;r=e;o[r>>2]=i;o[r+4>>2]=t;break e}case 13:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&65535)<<16>>16;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 14:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&65535;o[i+4>>2]=0;break e}case 15:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;r=(r&255)<<24>>24;i=e;o[i>>2]=r;o[i+4>>2]=((r|0)<0)<<31>>31;break e}case 16:{i=(o[n>>2]|0)+(4-1)&~(4-1);r=o[i>>2]|0;o[n>>2]=i+4;i=e;o[i>>2]=r&255;o[i+4>>2]=0;break e}case 17:{i=(o[n>>2]|0)+(8-1)&~(8-1);s=+u[i>>3];o[n>>2]=i+8;u[e>>3]=s;break e}case 18:{i=(o[n>>2]|0)+(8-1)&~(8-1);s=+u[i>>3];o[n>>2]=i+8;u[e>>3]=s;break e}default:break e}}while(0)}while(0);return}function Jo(e,t,n,i){e=e|0;t=t|0;n=n|0;i=i|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=s[35600+(e&15)>>0]|0|i;e=Cs(e|0,t|0,4)|0;t=I}while(!((e|0)==0&(t|0)==0));return n|0}function Zo(e,t,n){e=e|0;t=t|0;n=n|0;if(!((e|0)==0&(t|0)==0))do{n=n+-1|0;r[n>>0]=e&7|48;e=Cs(e|0,t|0,3)|0;t=I}while(!((e|0)==0&(t|0)==0));return n|0}function $o(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,o=0,s=0;if(t>>>0>0|(t|0)==0&e>>>0>4294967295){do{i=e;e=Ts(e|0,t|0,10,0)|0;o=t;t=I;s=Es(e|0,t|0,10,0)|0;s=ks(i|0,o|0,s|0,I|0)|0;n=n+-1|0;r[n>>0]=s&255|48}while(o>>>0>9|(o|0)==9&i>>>0>4294967295);t=e}else t=e;if(t)do{s=t;t=(t>>>0)/10|0;n=n+-1|0;r[n>>0]=s-(t*10|0)|48}while(s>>>0>=10);return n|0}function es(e){e=e|0;return ds(e,o[(ls()|0)+188>>2]|0)|0}function ts(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0;a=t&255;i=(n|0)!=0;e:do{if(i&(e&3|0)!=0){s=t&255;while(1){if((r[e>>0]|0)==s<<24>>24){f=6;break e}e=e+1|0;n=n+-1|0;i=(n|0)!=0;if(!(i&(e&3|0)!=0)){f=5;break}}}else f=5}while(0);if((f|0)==5)if(i)f=6;else f=16;e:do{if((f|0)==6){s=t&255;if((r[e>>0]|0)==s<<24>>24)if(!n){f=16;break}else break;i=F(a,16843009)|0;t:do{if(n>>>0>3)while(1){a=o[e>>2]^i;if((a&-2139062144^-2139062144)&a+-16843009|0)break t;e=e+4|0;n=n+-4|0;if(n>>>0<=3){f=11;break}}else f=11}while(0);if((f|0)==11)if(!n){f=16;break}while(1){if((r[e>>0]|0)==s<<24>>24)break e;n=n+-1|0;if(!n){f=16;break}else e=e+1|0}}}while(0);if((f|0)==16)e=0;return e|0}function ns(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var o=0,s=0;s=h;h=h+256|0;o=s;if((n|0)>(r|0)&(i&73728|0)==0){i=n-r|0;Ds(o|0,t<<24>>24|0,(i>>>0<256?i:256)|0)|0;if(i>>>0>255){t=n-r|0;do{Wo(e,o,256);i=i+-256|0}while(i>>>0>255);i=t&255}Wo(e,o,i)}h=s;return}function rs(e,t){e=e|0;t=t|0;if(!e)e=0;else e=fs(e,t,0)|0;return e|0}function is(e,t,n,i,a,f){e=e|0;t=+t;n=n|0;i=i|0;a=a|0;f=f|0;var c=0,u=0,l=0,d=0,p=0,g=0,m=0,_=0.0,y=0,b=0,v=0,A=0,w=0,E=0,S=0,k=0,R=0,T=0,O=0,C=0,x=0,M=0,P=0;P=h;h=h+560|0;l=P+32|0;A=P+536|0;M=P;x=M;d=P+540|0;o[A>>2]=0;C=d+12|0;os(t)|0;c=I;if((c|0)<0){t=-t;os(t)|0;O=1;T=38458;c=I}else{O=(a&2049|0)!=0&1;T=(a&2048|0)==0?(a&1|0)==0?38459:38464:38461}do{if(0==0&(c&2146435072|0)==2146435072){M=(f&32|0)!=0;c=O+3|0;ns(e,32,n,c,a&-65537);Wo(e,T,O);Wo(e,t!=t|0.0!=0.0?M?38485:38489:M?38477:38481,3);ns(e,32,n,c,a^8192)}else{_=+ss(t,A)*2.0;c=_!=0.0;if(c)o[A>>2]=(o[A>>2]|0)+-1;v=f|32;if((v|0)==97){g=f&32;y=(g|0)==0?T:T+9|0;m=O|2;c=12-i|0;do{if(!(i>>>0>11|(c|0)==0)){t=8.0;do{c=c+-1|0;t=t*16.0}while((c|0)!=0);if((r[y>>0]|0)==45){t=-(t+(-_-t));break}else{t=_+t-t;break}}else t=_}while(0);u=o[A>>2]|0;c=(u|0)<0?0-u|0:u;c=$o(c,((c|0)<0)<<31>>31,C)|0;if((c|0)==(C|0)){c=d+11|0;r[c>>0]=48}r[c+-1>>0]=(u>>31&2)+43;p=c+-2|0;r[p>>0]=f+15;u=(i|0)<1;l=(a&8|0)==0;d=M;do{O=~~t;c=d+1|0;r[d>>0]=g|s[35600+O>>0];t=(t-+(O|0))*16.0;if((c-x|0)==1?!(l&(u&t==0.0)):0){r[c>>0]=46;d=d+2|0}else d=c}while(t!=0.0);if((i|0)!=0?(-2-x+d|0)<(i|0):0){u=C;l=p;c=i+2+u-l|0}else{u=C;l=p;c=u-x-l+d|0}C=c+m|0;ns(e,32,n,C,a);Wo(e,y,m);ns(e,48,n,C,a^65536);x=d-x|0;Wo(e,M,x);M=u-l|0;ns(e,48,c-(x+M)|0,0,0);Wo(e,p,M);ns(e,32,n,C,a^8192);c=C;break}u=(i|0)<0?6:i;if(c){c=(o[A>>2]|0)+-28|0;o[A>>2]=c;t=_*268435456.0}else{t=_;c=o[A>>2]|0}R=(c|0)<0?l:l+288|0;l=R;do{S=~~t>>>0;o[l>>2]=S;l=l+4|0;t=(t-+(S>>>0))*1.0e9}while(t!=0.0);S=R;if((c|0)>0){g=R;while(1){p=(c|0)<29?c:29;c=l+-4|0;if(c>>>0>=g>>>0){d=0;do{b=xs(o[c>>2]|0,0,p|0)|0;b=Ss(b|0,I|0,d|0,0)|0;w=I;d=Ts(b|0,w|0,1e9,0)|0;E=Es(d|0,I|0,1e9,0)|0;E=ks(b|0,w|0,E|0,I|0)|0;o[c>>2]=E;c=c+-4|0}while(c>>>0>=g>>>0);if(d){E=g+-4|0;o[E>>2]=d;d=E}else d=g}else d=g;e:do{if(l>>>0>d>>>0){c=l;while(1){l=c+-4|0;if(o[l>>2]|0){l=c;break e}if(l>>>0>d>>>0)c=l;else break}}}while(0);c=(o[A>>2]|0)-p|0;o[A>>2]=c;if((c|0)>0)g=d;else break}}else d=R;if((c|0)<0){i=((u+25|0)/9|0)+1|0;b=(v|0)==102;do{y=0-c|0;y=(y|0)<9?y:9;if(d>>>0>>0){p=(1<>>y;m=0;c=d;do{E=o[c>>2]|0;o[c>>2]=(E>>>y)+m;m=F(E&p,g)|0;c=c+4|0}while(c>>>0>>0);d=(o[d>>2]|0)==0?d+4|0:d;if(m){o[l>>2]=m;l=l+4|0}}else d=(o[d>>2]|0)==0?d+4|0:d;c=b?R:d;l=(l-c>>2|0)>(i|0)?c+(i<<2)|0:l;c=(o[A>>2]|0)+y|0;o[A>>2]=c}while((c|0)<0);b=d}else b=d;if(b>>>0>>0){c=(S-b>>2)*9|0;p=o[b>>2]|0;if(p>>>0>=10){d=10;do{d=d*10|0;c=c+1|0}while(p>>>0>=d>>>0)}}else c=0;w=(v|0)==103;E=(u|0)!=0;d=u-((v|0)==102?0:c)+((E&w)<<31>>31)|0;if((d|0)<(((l-S>>2)*9|0)+-9|0)){A=d+9216|0;d=(A|0)/9|0;i=R+4+(d+-1024<<2)|0;d=A-(d*9|0)|0;if((d|0)<8){p=10;while(1){p=p*10|0;if((d|0)<7)d=d+1|0;else break}}else p=10;m=o[i>>2]|0;d=(m>>>0)/(p>>>0)|0;y=m-(F(d,p)|0)|0;g=(i+4|0)==(l|0);if(!(g&(y|0)==0)){_=(d&1|0)==0?9007199254740992.0:9007199254740994.0;A=p>>>1;t=y>>>0>>0?.5:g&(y|0)==(A|0)?1.0:1.5;if(O){A=(r[T>>0]|0)==45;t=A?-t:t;_=A?-_:_}d=m-y|0;o[i>>2]=d;if(_+t!=_){A=d+p|0;o[i>>2]=A;if(A>>>0>999999999){p=i;c=b;while(1){d=p+-4|0;o[p>>2]=0;if(d>>>0>>0){c=c+-4|0;o[c>>2]=0}A=(o[d>>2]|0)+1|0;o[d>>2]=A;if(A>>>0>999999999)p=d;else{p=c;break}}}else{d=i;p=b}c=(S-p>>2)*9|0;m=o[p>>2]|0;if(m>>>0>=10){g=10;do{g=g*10|0;c=c+1|0}while(m>>>0>=g>>>0)}}else{d=i;p=b}}else{d=i;p=b}A=d+4|0;l=l>>>0>A>>>0?A:l}else p=b;i=0-c|0;e:do{if(l>>>0>p>>>0)while(1){d=l+-4|0;if(o[d>>2]|0){A=l;v=1;break e}if(d>>>0>p>>>0)l=d;else{A=d;v=0;break}}else{A=l;v=0}}while(0);do{if(w){u=u+((E^1)&1)|0;if((u|0)>(c|0)&(c|0)>-5){g=f+-1|0;u=u+-1-c|0}else{g=f+-2|0;u=u+-1|0}if(!(a&8)){if(v?(k=o[A+-4>>2]|0,(k|0)!=0):0)if(!((k>>>0)%10|0)){d=0;l=10;do{l=l*10|0;d=d+1|0}while(!((k>>>0)%(l>>>0)|0|0))}else d=0;else d=9;l=((A-S>>2)*9|0)+-9|0;if((g|32|0)==102){f=l-d|0;f=(f|0)>0?f:0;u=(u|0)<(f|0)?u:f;break}else{f=l+c-d|0;f=(f|0)>0?f:0;u=(u|0)<(f|0)?u:f;break}}}else g=f}while(0);b=(u|0)!=0;m=b?1:a>>>3&1;y=(g|32|0)==102;if(y){w=0;c=(c|0)>0?c:0}else{l=(c|0)<0?i:c;l=$o(l,((l|0)<0)<<31>>31,C)|0;d=C;if((d-l|0)<2)do{l=l+-1|0;r[l>>0]=48}while((d-l|0)<2);r[l+-1>>0]=(c>>31&2)+43;c=l+-2|0;r[c>>0]=g;w=c;c=d-c|0}c=O+1+u+m+c|0;ns(e,32,n,c,a);Wo(e,T,O);ns(e,48,n,c,a^65536);if(y){m=p>>>0>R>>>0?R:p;y=M+9|0;p=y;g=M+8|0;d=m;do{l=$o(o[d>>2]|0,0,y)|0;if((d|0)==(m|0)){if((l|0)==(y|0)){r[g>>0]=48;l=g}}else if(l>>>0>M>>>0){Ds(M|0,48,l-x|0)|0;do{l=l+-1|0}while(l>>>0>M>>>0)}Wo(e,l,p-l|0);d=d+4|0}while(d>>>0<=R>>>0);if(!((a&8|0)==0&(b^1)))Wo(e,38493,1);if(d>>>0>>0&(u|0)>0)while(1){l=$o(o[d>>2]|0,0,y)|0;if(l>>>0>M>>>0){Ds(M|0,48,l-x|0)|0;do{l=l+-1|0}while(l>>>0>M>>>0)}Wo(e,l,(u|0)<9?u:9);d=d+4|0;l=u+-9|0;if(!(d>>>0>>0&(u|0)>9)){u=l;break}else u=l}ns(e,48,u+9|0,9,0)}else{A=v?A:p+4|0;if(p>>>0>>0&(u|0)>-1){i=M+9|0;b=(a&8|0)==0;v=i;m=0-x|0;y=M+8|0;g=p;do{l=$o(o[g>>2]|0,0,i)|0;if((l|0)==(i|0)){r[y>>0]=48;l=y}do{if((g|0)==(p|0)){d=l+1|0;Wo(e,l,1);if(b&(u|0)<1){l=d;break}Wo(e,38493,1);l=d}else{if(l>>>0<=M>>>0)break;Ds(M|0,48,l+m|0)|0;do{l=l+-1|0}while(l>>>0>M>>>0)}}while(0);x=v-l|0;Wo(e,l,(u|0)>(x|0)?x:u);u=u-x|0;g=g+4|0}while(g>>>0>>0&(u|0)>-1)}ns(e,48,u+18|0,18,0);Wo(e,w,C-w|0)}ns(e,32,n,c,a^8192)}}while(0);h=P;return((c|0)<(n|0)?n:c)|0}function os(e){e=+e;var t=0;u[d>>3]=e;t=o[d>>2]|0;I=o[d+4>>2]|0;return t|0}function ss(e,t){e=+e;t=t|0;return+ +as(e,t)}function as(e,t){e=+e;t=t|0;var n=0,r=0,i=0;u[d>>3]=e;n=o[d>>2]|0;r=o[d+4>>2]|0;i=Cs(n|0,r|0,52)|0;switch(i&2047){case 0:{if(e!=0.0){e=+as(e*18446744073709551616.0,t);n=(o[t>>2]|0)+-64|0}else n=0;o[t>>2]=n;break}case 2047:break;default:{o[t>>2]=(i&2047)+-1022;o[d>>2]=n;o[d+4>>2]=r&-2146435073|1071644672;e=+u[d>>3]}}return+e}function fs(e,t,n){e=e|0;t=t|0;n=n|0;do{if(e){if(t>>>0<128){r[e>>0]=t;e=1;break}if(!(o[o[(cs()|0)+188>>2]>>2]|0))if((t&-128|0)==57216){r[e>>0]=t;e=1;break}else{o[(Lo()|0)>>2]=84;e=-1;break}if(t>>>0<2048){r[e>>0]=t>>>6|192;r[e+1>>0]=t&63|128;e=2;break}if(t>>>0<55296|(t&-8192|0)==57344){r[e>>0]=t>>>12|224;r[e+1>>0]=t>>>6&63|128;r[e+2>>0]=t&63|128;e=3;break}if((t+-65536|0)>>>0<1048576){r[e>>0]=t>>>18|240;r[e+1>>0]=t>>>12&63|128;r[e+2>>0]=t>>>6&63|128;r[e+3>>0]=t&63|128;e=4;break}else{o[(Lo()|0)>>2]=84;e=-1;break}}else e=1}while(0);return e|0}function cs(){return us()|0}function us(){return 37728}function ls(){return us()|0}function ds(e,t){e=e|0;t=t|0;var n=0,i=0;n=0;while(1){if((s[35616+n>>0]|0)==(e|0)){i=4;break}n=n+1|0;if((n|0)==87){e=87;i=5;break}}if((i|0)==4)if(!n)n=35712;else{e=n;i=5}if((i|0)==5){n=35712;do{do{i=n;n=n+1|0}while((r[i>>0]|0)!=0);e=e+-1|0}while((e|0)!=0)}return hs(n,o[t+20>>2]|0)|0}function hs(e,t){e=e|0;t=t|0;return ps(e,t)|0}function ps(e,t){e=e|0;t=t|0;if(!t)t=0;else t=gs(o[t>>2]|0,o[t+4>>2]|0,e)|0;return((t|0)==0?e:t)|0}function gs(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0;p=(o[e>>2]|0)+1794895138|0;a=ms(o[e+8>>2]|0,p)|0;i=ms(o[e+12>>2]|0,p)|0;s=ms(o[e+16>>2]|0,p)|0;e:do{if((a>>>0>>2>>>0?(h=t-(a<<2)|0,i>>>0>>0&s>>>0>>0):0)?((s|i)&3|0)==0:0){h=i>>>2;d=s>>>2;l=0;while(1){c=a>>>1;u=l+c|0;f=u<<1;s=f+h|0;i=ms(o[e+(s<<2)>>2]|0,p)|0;s=ms(o[e+(s+1<<2)>>2]|0,p)|0;if(!(s>>>0>>0&i>>>0<(t-s|0)>>>0)){i=0;break e}if(r[e+(s+i)>>0]|0){i=0;break e}i=qo(n,e+s|0)|0;if(!i)break;i=(i|0)<0;if((a|0)==1){i=0;break e}l=i?l:u;a=i?c:a-c|0}i=f+d|0;s=ms(o[e+(i<<2)>>2]|0,p)|0;i=ms(o[e+(i+1<<2)>>2]|0,p)|0;if(i>>>0>>0&s>>>0<(t-i|0)>>>0)i=(r[e+(i+s)>>0]|0)==0?e+i|0:0;else i=0}else i=0}while(0);return i|0}function ms(e,t){e=e|0;t=t|0;var n=0;n=Ms(e|0)|0;return((t|0)==0?e:n)|0}function _s(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0,c=0;i=n+16|0;s=o[i>>2]|0;if(!s)if(!(ys(n)|0)){s=o[i>>2]|0;a=5}else i=0;else a=5;e:do{if((a|0)==5){c=n+20|0;f=o[c>>2]|0;i=f;if((s-f|0)>>>0>>0){i=Vs[o[n+36>>2]&1](n,e,t)|0;break}t:do{if((r[n+75>>0]|0)<0|(t|0)==0){a=0;s=e}else{f=t;while(1){s=f+-1|0;if((r[e+s>>0]|0)==10)break;if(!s){a=0;s=e;break t}else f=s}i=Vs[o[n+36>>2]&1](n,e,f)|0;if(i>>>0>>0)break e;a=f;s=e+f|0;t=t-f|0;i=o[c>>2]|0}}while(0);Ps(i|0,s|0,t|0)|0;o[c>>2]=(o[c>>2]|0)+t;i=a+t|0}}while(0);return i|0}function ys(e){e=e|0;var t=0,n=0;t=e+74|0;n=r[t>>0]|0;r[t>>0]=n+255|n;t=o[e>>2]|0;if(!(t&8)){o[e+8>>2]=0;o[e+4>>2]=0;n=o[e+44>>2]|0;o[e+28>>2]=n;o[e+20>>2]=n;o[e+16>>2]=n+(o[e+48>>2]|0);e=0}else{o[e>>2]=t|32;e=-1}return e|0}function bs(e,t,n){e=e|0;t=t|0;n=n|0;var r=0,i=0;r=e+20|0;i=o[r>>2]|0;e=(o[e+16>>2]|0)-i|0;e=e>>>0>n>>>0?n:e;Ps(i|0,t|0,e|0)|0;o[r>>2]=(o[r>>2]|0)+e;return n|0}function vs(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,s=0;i=h;h=h+16|0;s=i;o[s>>2]=r;r=Go(e,t,n,s)|0;h=i;return r|0}function As(){}function ws(e,t){e=e|0;t=t|0;var n=0,r=0,i=0,o=0;o=e&65535;i=t&65535;n=F(i,o)|0;r=e>>>16;e=(n>>>16)+(F(i,r)|0)|0;i=t>>>16;t=F(i,o)|0;return(I=(e>>>16)+(F(i,r)|0)+(((e&65535)+t|0)>>>16)|0,e+t<<16|n&65535|0)|0}function Es(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;var i=0,o=0;i=e;o=n;n=ws(i,o)|0;e=I;return(I=(F(t,o)|0)+(F(r,i)|0)+e|e&0,n|0|0)|0}function Ss(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;n=e+n>>>0;return(I=t+r+(n>>>0>>0|0)>>>0,n|0)|0}function ks(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;r=t-r-(n>>>0>e>>>0|0)>>>0;return(I=r,e-n>>>0|0)|0}function Is(e){e=e|0;return(e?31-(z(e^e-1)|0)|0:32)|0}function Rs(e,t,n,r,i){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;var s=0,a=0,f=0,c=0,u=0,l=0,d=0,h=0,p=0,g=0;l=e;c=t;u=c;a=n;h=r;f=h;if(!u){s=(i|0)!=0;if(!f){if(s){o[i>>2]=(l>>>0)%(a>>>0);o[i+4>>2]=0}h=0;i=(l>>>0)/(a>>>0)>>>0;return(I=h,i)|0}else{if(!s){h=0;i=0;return(I=h,i)|0}o[i>>2]=e|0;o[i+4>>2]=t&0;h=0;i=0;return(I=h,i)|0}}s=(f|0)==0;do{if(a){if(!s){s=(z(f|0)|0)-(z(u|0)|0)|0;if(s>>>0<=31){d=s+1|0;f=31-s|0;t=s-31>>31;a=d;e=l>>>(d>>>0)&t|u<>>(d>>>0)&t;s=0;f=l<>2]=e|0;o[i+4>>2]=c|t&0;h=0;i=0;return(I=h,i)|0}s=a-1|0;if(s&a|0){f=(z(a|0)|0)+33-(z(u|0)|0)|0;g=64-f|0;d=32-f|0;c=d>>31;p=f-32|0;t=p>>31;a=f;e=d-1>>31&u>>>(p>>>0)|(u<>>(f>>>0))&t;t=t&u>>>(f>>>0);s=l<>>(p>>>0))&c|l<>31;break}if(i|0){o[i>>2]=s&l;o[i+4>>2]=0}if((a|0)==1){p=c|t&0;g=e|0|0;return(I=p,g)|0}else{g=Is(a|0)|0;p=u>>>(g>>>0)|0;g=u<<32-g|l>>>(g>>>0)|0;return(I=p,g)|0}}else{if(s){if(i|0){o[i>>2]=(u>>>0)%(a>>>0);o[i+4>>2]=0}p=0;g=(u>>>0)/(a>>>0)>>>0;return(I=p,g)|0}if(!l){if(i|0){o[i>>2]=0;o[i+4>>2]=(u>>>0)%(f>>>0)}p=0;g=(u>>>0)/(f>>>0)>>>0;return(I=p,g)|0}s=f-1|0;if(!(s&f)){if(i|0){o[i>>2]=e|0;o[i+4>>2]=s&u|t&0}p=0;g=u>>>((Is(f|0)|0)>>>0);return(I=p,g)|0}s=(z(f|0)|0)-(z(u|0)|0)|0;if(s>>>0<=30){t=s+1|0;f=31-s|0;a=t;e=u<>>(t>>>0);t=u>>>(t>>>0);s=0;f=l<>2]=e|0;o[i+4>>2]=c|t&0;p=0;g=0;return(I=p,g)|0}}while(0);if(!a){u=f;c=0;f=0}else{d=n|0|0;l=h|r&0;u=Ss(d|0,l|0,-1,-1)|0;n=I;c=f;f=0;do{r=c;c=s>>>31|c<<1;s=f|s<<1;r=e<<1|r>>>31|0;h=e>>>31|t<<1|0;ks(u|0,n|0,r|0,h|0)|0;g=I;p=g>>31|((g|0)<0?-1:0)<<1;f=p&1;e=ks(r|0,h|0,p&d|0,(((g|0)<0?-1:0)>>31|((g|0)<0?-1:0)<<1)&l|0)|0;t=I;a=a-1|0}while((a|0)!=0);u=c;c=0}a=0;if(i|0){o[i>>2]=e;o[i+4>>2]=t}p=(s|0)>>>31|(u|a)<<1|(a<<1|s>>>31)&0|c;g=(s<<1|0>>>31)&-2|f;return(I=p,g)|0}function Ts(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return Rs(e,t,n,r,0)|0}function Os(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){I=t>>n;return e>>>n|(t&(1<>n-32|0}function Cs(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){I=t>>>n;return e>>>n|(t&(1<>>n-32|0}function xs(e,t,n){e=e|0;t=t|0;n=n|0;if((n|0)<32){I=t<>>32-n;return e<>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function Ps(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0;if((n|0)>=8192)return te(e|0,t|0,n|0)|0;a=e|0;s=e+n|0;if((e&3)==(t&3)){while(e&3){if(!n)return a|0;r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0;n=n-1|0}n=s&-4|0;i=n-64|0;while((e|0)<=(i|0)){o[e>>2]=o[t>>2];o[e+4>>2]=o[t+4>>2];o[e+8>>2]=o[t+8>>2];o[e+12>>2]=o[t+12>>2];o[e+16>>2]=o[t+16>>2];o[e+20>>2]=o[t+20>>2];o[e+24>>2]=o[t+24>>2];o[e+28>>2]=o[t+28>>2];o[e+32>>2]=o[t+32>>2];o[e+36>>2]=o[t+36>>2];o[e+40>>2]=o[t+40>>2];o[e+44>>2]=o[t+44>>2];o[e+48>>2]=o[t+48>>2];o[e+52>>2]=o[t+52>>2];o[e+56>>2]=o[t+56>>2];o[e+60>>2]=o[t+60>>2];e=e+64|0;t=t+64|0}while((e|0)<(n|0)){o[e>>2]=o[t>>2];e=e+4|0;t=t+4|0}}else{n=s-4|0;while((e|0)<(n|0)){r[e>>0]=r[t>>0]|0;r[e+1>>0]=r[t+1>>0]|0;r[e+2>>0]=r[t+2>>0]|0;r[e+3>>0]=r[t+3>>0]|0;e=e+4|0;t=t+4|0}}while((e|0)<(s|0)){r[e>>0]=r[t>>0]|0;e=e+1|0;t=t+1|0}return a|0}function Ds(e,t,n){e=e|0;t=t|0;n=n|0;var i=0,s=0,a=0,f=0;a=e+n|0;t=t&255;if((n|0)>=67){while(e&3){r[e>>0]=t;e=e+1|0}i=a&-4|0;s=i-64|0;f=t|t<<8|t<<16|t<<24;while((e|0)<=(s|0)){o[e>>2]=f;o[e+4>>2]=f;o[e+8>>2]=f;o[e+12>>2]=f;o[e+16>>2]=f;o[e+20>>2]=f;o[e+24>>2]=f;o[e+28>>2]=f;o[e+32>>2]=f;o[e+36>>2]=f;o[e+40>>2]=f;o[e+44>>2]=f;o[e+48>>2]=f;o[e+52>>2]=f;o[e+56>>2]=f;o[e+60>>2]=f;e=e+64|0}while((e|0)<(i|0)){o[e>>2]=f;e=e+4|0}}while((e|0)<(a|0)){r[e>>0]=t;e=e+1|0}return a-n|0}function Bs(e){e=e|0;var t=0,n=0;n=o[l>>2]|0;t=n+e|0;if((e|0)>0&(t|0)<(n|0)|(t|0)<0){Y()|0;ee(12);return-1}o[l>>2]=t;if((t|0)>(W()|0)?(Q()|0)==0:0){o[l>>2]=n;ee(12);return-1}return n|0}function Ns(e,t){e=e|0;t=t|0;return zs[e&1](t|0)|0}function js(e,t,n){e=e|0;t=t|0;n=n|0;return Hs[e&3](t|0,n|0)|0}function Us(e,t,n,r){e=e|0;t=t|0;n=n|0;r=r|0;return Vs[e&1](t|0,n|0,r|0)|0}function Ls(e,t,n,r,i,o,s,a,f,c){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;s=s|0;a=a|0;f=f|0;c=c|0;return Qs[e&3](t|0,n|0,r|0,i|0,o|0,s|0,a|0,f|0,c|0)|0}function qs(e){e=e|0;H(0);return 0}function Fs(e,t){e=e|0;t=t|0;H(1);return 0}function Ks(e,t,n){e=e|0;t=t|0;n=n|0;H(2);return 0}function Gs(e,t,n,r,i,o,s,a,f){e=e|0;t=t|0;n=n|0;r=r|0;i=i|0;o=o|0;s=s|0;a=a|0;f=f|0;H(3);return 0}var zs=[qs,an];var Hs=[Fs,fn,un,Fs];var Vs=[Ks,bs];var Qs=[Gs,cn,ln,Gs];return{___muldi3:Es,___udivdi3:Ts,_bitshift64Ashr:Os,_bitshift64Lshr:Cs,_bitshift64Shl:xs,_free:Uo,_i64Add:Ss,_i64Subtract:ks,_llvm_bswap_i32:Ms,_malloc:jo,_memcpy:Ps,_memset:Ds,_olm_account:Nn,_olm_account_generate_one_time_keys:or,_olm_account_generate_one_time_keys_random_length:ir,_olm_account_identity_keys:Jn,_olm_account_identity_keys_length:Xn,_olm_account_last_error:Cn,_olm_account_mark_keys_as_published:nr,_olm_account_max_number_of_one_time_keys:rr,_olm_account_one_time_keys:tr,_olm_account_one_time_keys_length:er,_olm_account_sign:$n,_olm_account_signature_length:Zn,_olm_account_size:Pn,_olm_clear_account:Ln,_olm_clear_inbound_group_session:Mi,_olm_clear_outbound_group_session:fo,_olm_clear_pk_decryption:qt,_olm_clear_pk_encryption:Ct,_olm_clear_pk_signing:en,_olm_clear_sas:Xi,_olm_clear_session:qn,_olm_clear_utility:Fn,_olm_create_account:Yn,_olm_create_account_random_length:Wn,_olm_create_inbound_session:fr,_olm_create_inbound_session_from:cr,_olm_create_outbound_session:ar,_olm_create_outbound_session_random_length:sr,_olm_create_sas:Zi,_olm_create_sas_random_length:Ji,_olm_decrypt:wr,_olm_decrypt_max_plaintext_length:Ar,_olm_ed25519_verify:kr,_olm_encrypt:vr,_olm_encrypt_message_length:br,_olm_encrypt_message_type:_r,_olm_encrypt_random_length:yr,_olm_error:On,_olm_export_inbound_group_session:Vi,_olm_export_inbound_group_session_length:Hi,_olm_get_library_version:Tn,_olm_group_decrypt:qi,_olm_group_decrypt_max_plaintext_length:Li,_olm_group_encrypt:_o,_olm_group_encrypt_message_length:mo,_olm_import_inbound_group_session:Bi,_olm_inbound_group_session:xi,_olm_inbound_group_session_first_known_index:Gi,_olm_inbound_group_session_id:Ki,_olm_inbound_group_session_id_length:Fi,_olm_inbound_group_session_is_verified:zi,_olm_inbound_group_session_last_error:Pi,_olm_inbound_group_session_size:Ci,_olm_init_inbound_group_session:Di,_olm_init_outbound_group_session:go,_olm_init_outbound_group_session_random_length:po,_olm_matches_inbound_session:pr,_olm_matches_inbound_session_from:gr,_olm_outbound_group_session:ao,_olm_outbound_group_session_id:bo,_olm_outbound_group_session_id_length:yo,_olm_outbound_group_session_key:wo,_olm_outbound_group_session_key_length:Ao,_olm_outbound_group_session_last_error:co,_olm_outbound_group_session_message_index:vo,_olm_outbound_group_session_size:so,_olm_pickle_account:zn,_olm_pickle_account_length:Kn,_olm_pickle_inbound_group_session:ji,_olm_pickle_inbound_group_session_length:Ni,_olm_pickle_outbound_group_session:lo,_olm_pickle_outbound_group_session_length:uo,_olm_pickle_pk_decryption:Vt,_olm_pickle_pk_decryption_length:Ht,_olm_pickle_session:Hn,_olm_pickle_session_length:Gn,_olm_pk_ciphertext_length:Pt,_olm_pk_decrypt:Yt,_olm_pk_decryption:Lt,_olm_pk_decryption_last_error:jt,_olm_pk_decryption_size:Ut,_olm_pk_encrypt:Nt,_olm_pk_encrypt_random_length:Bt,_olm_pk_encryption:Ot,_olm_pk_encryption_last_error:Rt,_olm_pk_encryption_set_recipient_key:xt,_olm_pk_encryption_size:Tt,_olm_pk_generate_key:zt,_olm_pk_generate_key_random_length:Kt,_olm_pk_get_private_key:Xt,_olm_pk_key_from_private:Gt,_olm_pk_key_length:Mt,_olm_pk_mac_length:Dt,_olm_pk_max_plaintext_length:Wt,_olm_pk_private_key_length:Ft,_olm_pk_sign:sn,_olm_pk_signature_length:on,_olm_pk_signing:Zt,_olm_pk_signing_key_from_seed:rn,_olm_pk_signing_last_error:$t,_olm_pk_signing_public_key_length:nn,_olm_pk_signing_seed_length:tn,_olm_pk_signing_size:Jt,_olm_remove_one_time_keys:mr,_olm_sas:Yi,_olm_sas_calculate_mac:io,_olm_sas_calculate_mac_long_kdf:oo,_olm_sas_generate_bytes:no,_olm_sas_get_pubkey:eo,_olm_sas_last_error:Qi,_olm_sas_mac_length:ro,_olm_sas_pubkey_length:$i,_olm_sas_set_their_key:to,_olm_sas_size:Wi,_olm_session:jn,_olm_session_describe:hr,_olm_session_has_received_message:dr,_olm_session_id:lr,_olm_session_id_length:ur,_olm_session_last_error:xn,_olm_session_size:Dn,_olm_sha256:Sr,_olm_sha256_length:Er,_olm_unpickle_account:Vn,_olm_unpickle_inbound_group_session:Ui,_olm_unpickle_outbound_group_session:ho,_olm_unpickle_pk_decryption:Qt,_olm_unpickle_session:Qn,_olm_utility:Un,_olm_utility_last_error:Mn,_olm_utility_size:Bn,_sbrk:Bs,dynCall_ii:Ns,dynCall_iii:js,dynCall_iiii:Us,dynCall_iiiiiiiiii:Ls,establishStackSpace:se,getTempRet0:ce,runPostSets:As,setTempRet0:fe,setThrew:ae,stackAlloc:re,stackRestore:oe,stackSave:ie}}(l.f,l.g,D);l.___muldi3=Ee.___muldi3,l.___udivdi3=Ee.___udivdi3,l._bitshift64Ashr=Ee._bitshift64Ashr,l._bitshift64Lshr=Ee._bitshift64Lshr,l._bitshift64Shl=Ee._bitshift64Shl,l._free=Ee._free,l._i64Add=Ee._i64Add,l._i64Subtract=Ee._i64Subtract,l._llvm_bswap_i32=Ee._llvm_bswap_i32;var Se=l._malloc=Ee._malloc;l._memcpy=Ee._memcpy,l._memset=Ee._memset,l._olm_account=Ee._olm_account,l._olm_account_generate_one_time_keys=Ee._olm_account_generate_one_time_keys,l._olm_account_generate_one_time_keys_random_length=Ee._olm_account_generate_one_time_keys_random_length,l._olm_account_identity_keys=Ee._olm_account_identity_keys,l._olm_account_identity_keys_length=Ee._olm_account_identity_keys_length,l._olm_account_last_error=Ee._olm_account_last_error,l._olm_account_mark_keys_as_published=Ee._olm_account_mark_keys_as_published,l._olm_account_max_number_of_one_time_keys=Ee._olm_account_max_number_of_one_time_keys,l._olm_account_one_time_keys=Ee._olm_account_one_time_keys,l._olm_account_one_time_keys_length=Ee._olm_account_one_time_keys_length,l._olm_account_sign=Ee._olm_account_sign,l._olm_account_signature_length=Ee._olm_account_signature_length,l._olm_account_size=Ee._olm_account_size,l._olm_clear_account=Ee._olm_clear_account,l._olm_clear_inbound_group_session=Ee._olm_clear_inbound_group_session,l._olm_clear_outbound_group_session=Ee._olm_clear_outbound_group_session,l._olm_clear_pk_decryption=Ee._olm_clear_pk_decryption,l._olm_clear_pk_encryption=Ee._olm_clear_pk_encryption,l._olm_clear_pk_signing=Ee._olm_clear_pk_signing,l._olm_clear_sas=Ee._olm_clear_sas,l._olm_clear_session=Ee._olm_clear_session,l._olm_clear_utility=Ee._olm_clear_utility,l._olm_create_account=Ee._olm_create_account,l._olm_create_account_random_length=Ee._olm_create_account_random_length,l._olm_create_inbound_session=Ee._olm_create_inbound_session,l._olm_create_inbound_session_from=Ee._olm_create_inbound_session_from,l._olm_create_outbound_session=Ee._olm_create_outbound_session,l._olm_create_outbound_session_random_length=Ee._olm_create_outbound_session_random_length,l._olm_create_sas=Ee._olm_create_sas,l._olm_create_sas_random_length=Ee._olm_create_sas_random_length,l._olm_decrypt=Ee._olm_decrypt,l._olm_decrypt_max_plaintext_length=Ee._olm_decrypt_max_plaintext_length,l._olm_ed25519_verify=Ee._olm_ed25519_verify,l._olm_encrypt=Ee._olm_encrypt,l._olm_encrypt_message_length=Ee._olm_encrypt_message_length,l._olm_encrypt_message_type=Ee._olm_encrypt_message_type,l._olm_encrypt_random_length=Ee._olm_encrypt_random_length,l._olm_error=Ee._olm_error,l._olm_export_inbound_group_session=Ee._olm_export_inbound_group_session,l._olm_export_inbound_group_session_length=Ee._olm_export_inbound_group_session_length,l._olm_get_library_version=Ee._olm_get_library_version,l._olm_group_decrypt=Ee._olm_group_decrypt,l._olm_group_decrypt_max_plaintext_length=Ee._olm_group_decrypt_max_plaintext_length,l._olm_group_encrypt=Ee._olm_group_encrypt,l._olm_group_encrypt_message_length=Ee._olm_group_encrypt_message_length,l._olm_import_inbound_group_session=Ee._olm_import_inbound_group_session,l._olm_inbound_group_session=Ee._olm_inbound_group_session,l._olm_inbound_group_session_first_known_index=Ee._olm_inbound_group_session_first_known_index,l._olm_inbound_group_session_id=Ee._olm_inbound_group_session_id,l._olm_inbound_group_session_id_length=Ee._olm_inbound_group_session_id_length,l._olm_inbound_group_session_is_verified=Ee._olm_inbound_group_session_is_verified,l._olm_inbound_group_session_last_error=Ee._olm_inbound_group_session_last_error,l._olm_inbound_group_session_size=Ee._olm_inbound_group_session_size,l._olm_init_inbound_group_session=Ee._olm_init_inbound_group_session,l._olm_init_outbound_group_session=Ee._olm_init_outbound_group_session,l._olm_init_outbound_group_session_random_length=Ee._olm_init_outbound_group_session_random_length,l._olm_matches_inbound_session=Ee._olm_matches_inbound_session,l._olm_matches_inbound_session_from=Ee._olm_matches_inbound_session_from,l._olm_outbound_group_session=Ee._olm_outbound_group_session,l._olm_outbound_group_session_id=Ee._olm_outbound_group_session_id,l._olm_outbound_group_session_id_length=Ee._olm_outbound_group_session_id_length,l._olm_outbound_group_session_key=Ee._olm_outbound_group_session_key,l._olm_outbound_group_session_key_length=Ee._olm_outbound_group_session_key_length,l._olm_outbound_group_session_last_error=Ee._olm_outbound_group_session_last_error,l._olm_outbound_group_session_message_index=Ee._olm_outbound_group_session_message_index,l._olm_outbound_group_session_size=Ee._olm_outbound_group_session_size,l._olm_pickle_account=Ee._olm_pickle_account,l._olm_pickle_account_length=Ee._olm_pickle_account_length,l._olm_pickle_inbound_group_session=Ee._olm_pickle_inbound_group_session,l._olm_pickle_inbound_group_session_length=Ee._olm_pickle_inbound_group_session_length,l._olm_pickle_outbound_group_session=Ee._olm_pickle_outbound_group_session,l._olm_pickle_outbound_group_session_length=Ee._olm_pickle_outbound_group_session_length,l._olm_pickle_pk_decryption=Ee._olm_pickle_pk_decryption,l._olm_pickle_pk_decryption_length=Ee._olm_pickle_pk_decryption_length,l._olm_pickle_session=Ee._olm_pickle_session,l._olm_pickle_session_length=Ee._olm_pickle_session_length,l._olm_pk_ciphertext_length=Ee._olm_pk_ciphertext_length,l._olm_pk_decrypt=Ee._olm_pk_decrypt,l._olm_pk_decryption=Ee._olm_pk_decryption,l._olm_pk_decryption_last_error=Ee._olm_pk_decryption_last_error,l._olm_pk_decryption_size=Ee._olm_pk_decryption_size,l._olm_pk_encrypt=Ee._olm_pk_encrypt,l._olm_pk_encrypt_random_length=Ee._olm_pk_encrypt_random_length,l._olm_pk_encryption=Ee._olm_pk_encryption,l._olm_pk_encryption_last_error=Ee._olm_pk_encryption_last_error,l._olm_pk_encryption_set_recipient_key=Ee._olm_pk_encryption_set_recipient_key,l._olm_pk_encryption_size=Ee._olm_pk_encryption_size,l._olm_pk_generate_key=Ee._olm_pk_generate_key,l._olm_pk_generate_key_random_length=Ee._olm_pk_generate_key_random_length,l._olm_pk_get_private_key=Ee._olm_pk_get_private_key,l._olm_pk_key_from_private=Ee._olm_pk_key_from_private,l._olm_pk_key_length=Ee._olm_pk_key_length,l._olm_pk_mac_length=Ee._olm_pk_mac_length,l._olm_pk_max_plaintext_length=Ee._olm_pk_max_plaintext_length,l._olm_pk_private_key_length=Ee._olm_pk_private_key_length,l._olm_pk_sign=Ee._olm_pk_sign,l._olm_pk_signature_length=Ee._olm_pk_signature_length,l._olm_pk_signing=Ee._olm_pk_signing,l._olm_pk_signing_key_from_seed=Ee._olm_pk_signing_key_from_seed,l._olm_pk_signing_last_error=Ee._olm_pk_signing_last_error,l._olm_pk_signing_public_key_length=Ee._olm_pk_signing_public_key_length,l._olm_pk_signing_seed_length=Ee._olm_pk_signing_seed_length,l._olm_pk_signing_size=Ee._olm_pk_signing_size,l._olm_remove_one_time_keys=Ee._olm_remove_one_time_keys,l._olm_sas=Ee._olm_sas,l._olm_sas_calculate_mac=Ee._olm_sas_calculate_mac,l._olm_sas_calculate_mac_long_kdf=Ee._olm_sas_calculate_mac_long_kdf,l._olm_sas_generate_bytes=Ee._olm_sas_generate_bytes,l._olm_sas_get_pubkey=Ee._olm_sas_get_pubkey,l._olm_sas_last_error=Ee._olm_sas_last_error,l._olm_sas_mac_length=Ee._olm_sas_mac_length,l._olm_sas_pubkey_length=Ee._olm_sas_pubkey_length,l._olm_sas_set_their_key=Ee._olm_sas_set_their_key,l._olm_sas_size=Ee._olm_sas_size,l._olm_session=Ee._olm_session,l._olm_session_describe=Ee._olm_session_describe,l._olm_session_has_received_message=Ee._olm_session_has_received_message,l._olm_session_id=Ee._olm_session_id,l._olm_session_id_length=Ee._olm_session_id_length,l._olm_session_last_error=Ee._olm_session_last_error,l._olm_session_size=Ee._olm_session_size,l._olm_sha256=Ee._olm_sha256,l._olm_sha256_length=Ee._olm_sha256_length,l._olm_unpickle_account=Ee._olm_unpickle_account,l._olm_unpickle_inbound_group_session=Ee._olm_unpickle_inbound_group_session,l._olm_unpickle_outbound_group_session=Ee._olm_unpickle_outbound_group_session,l._olm_unpickle_pk_decryption=Ee._olm_unpickle_pk_decryption,l._olm_unpickle_session=Ee._olm_unpickle_session,l._olm_utility=Ee._olm_utility,l._olm_utility_last_error=Ee._olm_utility_last_error,l._olm_utility_size=Ee._olm_utility_size,l._sbrk=Ee._sbrk,l.establishStackSpace=Ee.establishStackSpace,l.getTempRet0=Ee.getTempRet0,l.runPostSets=Ee.runPostSets,l.setTempRet0=Ee.setTempRet0,l.setThrew=Ee.setThrew;var ke=l.stackAlloc=Ee.stackAlloc,Ie=l.stackRestore=Ee.stackRestore,Re=l.stackSave=Ee.stackSave;if(l.dynCall_ii=Ee.dynCall_ii,l.dynCall_iii=Ee.dynCall_iii,l.dynCall_iiii=Ee.dynCall_iiii,l.dynCall_iiiiiiiiii=Ee.dynCall_iiiiiiiiii,l.asm=Ee,l.ALLOC_STACK=1,ge){if(String.prototype.startsWith?!ge.startsWith(me):0!==ge.indexOf(me)){var Te=ge;ge=l.locateFile?l.locateFile(Te,E):E+Te}if(b||v){var Oe=l.readBinary(ge);N.set(Oe,8)}else{var Ce=function(){l.readAsync(ge,xe,(function(){throw"could not load memory initializer "+ge}))};de++,l.monitorRunDependencies&&l.monitorRunDependencies(de);var xe=function(e){e.byteLength&&(e=new Uint8Array(e)),N.set(e,8),l.memoryInitializerRequest&&delete l.memoryInitializerRequest.response,de--,l.monitorRunDependencies&&l.monitorRunDependencies(de),0==de&&(null!==he&&(clearInterval(he),he=null),pe&&(e=pe,pe=null,e()))},Me=we(ge);if(Me)xe(Me.buffer);else if(l.memoryInitializerRequest){var Pe=function(){var e=l.memoryInitializerRequest,t=e.response;if(200!==e.status&&0!==e.status){if(!(t=we(l.memoryInitializerRequestURL)))return console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+e.status+", retrying "+ge),void Ce();t=t.buffer}xe(t)};l.memoryInitializerRequest.response?setTimeout(Pe,0):l.memoryInitializerRequest.addEventListener("load",Pe)}else Ce()}}function De(){function e(){if(!l.calledRun&&(l.calledRun=!0,!O)){if(oe||(oe=!0,ee(ne)),ee(re),l.onRuntimeInitialized&&l.onRuntimeInitialized(),l.postRun)for("function"==typeof l.postRun&&(l.postRun=[l.postRun]);l.postRun.length;){var e=l.postRun.shift();ie.unshift(e)}ee(ie)}}if(!(0=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,i=!1,o=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==a.return||a.return()}finally{if(i)throw o}}return n}}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}},function(e,t,n){"use strict";var r=n(18);function i(){}function o(){}o.resetWarningCache=i,e.exports=function(){function e(e,t,n,i,o,s){if(s!==r){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:i};return n.PropTypes=n,n}},function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}},function(e,t){e.exports=function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t3&&void 0!==arguments[3]?arguments[3]:{};return Object.assign({unified:e,emoji:e.split("-").map((function(e){return parseInt(e,16)})).map((function(e){return String.fromCodePoint(e)})).join(""),originalUnified:t[l.EMOJI_PROPERTY_UNIFIED],names:t[l.EMOJI_PROPERTY_NAME],activeSkinTone:n},r)},D=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Function.prototype;return function(t,n,r,i){var o=P(n,r,i);return M(o),e(t,o)}},B=n(8),N=(n(23),function(){var e=Object(a.useContext)(m),t=e.state,n=t.skinTonesSpread,r=t.activeSkinTone,i=e.dispatch,o=function(){i({type:b,spread:!n})},s=function(e){var t=e.target.value;i({type:v,skinTone:t})};return f.a.createElement("ul",{className:"skin-tones-list"},B.map((function(e,t){var i=e===r;return f.a.createElement("li",{key:e,className:"t".concat(e),style:{transform:"translateX(-".concat(n?20*t:0,"px) scale(").concat(i?"1.5":1,")"),zIndex:i?2:1}},f.a.createElement("input",{type:"radio",onChange:s,name:"skin-tone",value:e,id:"tone_".concat(e)}),f.a.createElement("label",{htmlFor:"tone_".concat(e),"data-name":"tones",onClick:o}))})))}),j=n(9),U=n.n(j),L=function(e){var t=Object(a.useContext)(m).state.emojiUrl;return e?"".concat(t,"/").concat(e,".png"):t},q=(n(25),function(e){var t=e.unified,n=e.dispatch,r=e.shouldLoad,i=void 0===r||r;return f.a.createElement("img",U()({className:"emoji-img",onError:function(){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Function.prototype;t({type:w,unified:e})}(t,n)}},i&&function(e){return{src:L(e)}}(t)))}),F=q;q.propTypes={unified:u.a.string,shouldLoad:u.a.bool,dispatch:u.a.func},n(27);var K=function(e){var t=e.closeVariations,n=Object(a.useContext)(m).state,r=n.variationMenu,i=n.activeSkinTone,o=n.onEmojiClick;return r?f.a.createElement("div",{className:"variations-wrapper"},f.a.createElement("ul",{className:"variation-list"},B.map((function(e){var n=r[l.EMOJI_PROPERTY_SKIN_VARIATIONS].find((function(t){return t.includes(e)}))||r[l.EMOJI_PROPERTY_UNIFIED];return f.a.createElement("li",{key:n},f.a.createElement("button",{onClick:function(e){return t(e),o(e,n,r,i)},onMouseDown:function(e){return e.stopPropagation()}},f.a.createElement(F,{unified:n})))})))):null},G=K;K.propTypes={closeVariations:u.a.func};var z=n(7),H=n.n(z),V=n(10),Q=(n(29),function(e){var t=e.emojiListRef,n=Object(a.useContext)(m),r=n.state,i=r.activeCategory,o=r.filter,s=n.dispatch,c=!1;return o&&o.length&&(c=!0),f.a.createElement("nav",{onClick:function(e){var n=e.target;if(!c){var r=n.getAttribute("data-name");if(t&&t.current&&r){s({type:_,activeCategory:r}),s({type:A,group:r});var i=t.current,o=i.querySelector("[".concat("data-name",'="').concat(r,'"]'));i.scrollTop=o.offsetTop}}},className:H()("emoji-categories",{inactive:c})},V.map((function(e){return f.a.createElement("button",{key:e,className:H()("icn-".concat(e.replace(" & ","_")),{active:i===e}),"data-name":e})})))}),W=Q;Q.propTypes={emojiListRef:u.a.shape({current:u.a.instanceOf(Element)})};var Y,X,J=n(11),Z=function(e){var t={groups:{},emojis:{}},n=function(n){e[n].reduce((function(e,t){var r=t[l.EMOJI_PROPERTY_UNIFIED];return t[l.EMOJI_PROPERTY_GROUP]=n,e.emojis[r]=t,e.groups[n]=e.groups[n]||[],e.groups[n].push(r),e}),t)};for(var r in e)n(r);return t}(J),$=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0,n=".content-wrapper",r=t&&t.current?t.current.closest("".concat(n)):document.querySelector(".emoji-picker-react ".concat(n));r.setAttribute("data-name",e)},ee=u.a.shape((X={},i()(X,l.EMOJI_PROPERTY_NAME,u.a.arrayOf(u.a.string)),i()(X,l.EMOJI_PROPERTY_UNIFIED,u.a.string),i()(X,l.EMOJI_PROPERTY_SKIN_VARIATIONS,u.a.arrayOf(u.a.string)),i()(X,l.EMOJI_PROPERTY_GROUP,u.a.string),X));function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}n(40);var ne=["#aeeff0","#ffe0e0","#d6f8b8","#c6cfff","#f1f0d1"],re=null,ie=function(){return clearTimeout(re)},oe=function(e){var t,n,r=e.emoji,o=e.shouldLoad,s=e.hidden,a=e.activeSkinTone,c=e.openVariationMenu,u=e.variationMenuOpen,d=e.handleMouseEnter,h=e.handleMouseLeave,p=e.onEmojiClick,g=e.index,m=e.dispatch,_=r[l.EMOJI_PROPERTY_SKIN_VARIATIONS],y=function(e){for(var t=1;t=0}))),t||(t=r[l.EMOJI_PROPERTY_UNIFIED]),f.a.createElement("li",{style:y,className:H()("emoji",{"has-skin-variation":_&&c})},f.a.createElement("button",{onMouseDown:function(){_&&c&&(re=setTimeout((function(){c(r)}),500))},onMouseEnter:d,onMouseLeave:h,onMouseUp:ie,onClick:function(e){u||p(e,t,r,a)}},f.a.createElement(F,{unified:t,shouldLoad:o,dispatch:m})))},se=oe;oe.propTypes={emoji:ee,shouldLoad:u.a.bool,hidden:u.a.bool,activeSkinTone:u.a.string,openVariationMenu:u.a.func,variationMenuOpen:u.a.bool,handleMouseEnter:u.a.func,handleMouseLeave:u.a.func,onEmojiClick:u.a.func,index:u.a.number,dispatch:u.a.func};var ae=function(e){var t=e.unsetEmojiName,n=e.emojiListRef,r=Object(a.useContext)(m),i=r.state,o=i.recentlyUsed,s=i.onEmojiClick,c=i.filterResult,u=i.failedToLoad,d=void 0===u?{}:u,h=r.dispatch;return!o.length||c?null:f.a.createElement("ul",{className:"emoji-group","data-name":l.GROUP_NAME_RECENTLY_USED},o.map((function(e,r){var i=e[l.EMOJI_PROPERTY_UNIFIED],o=Z.emojis[i];return d[i]||!o?null:f.a.createElement(se,U()({key:r,emoji:o},e[l.EMOJI_PROPERTY_SKIN_VARIATIONS]&&{activeSkinTone:e[l.EMOJI_PROPERTY_SKIN_VARIATIONS]},{index:r,handleMouseLeave:t,onEmojiClick:s,handleMouseEnter:function(){return $(o[l.EMOJI_PROPERTY_NAME][0],n)},dispatch:h,shouldLoad:!0}))})))},fe=ae;function ce(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}ae.propTypes={unsetEmojiName:u.a.func,emojiListRef:u.a.shape({current:u.a.instanceOf(Element)})},n(42);var ue=function(e){var t=e.emojiListRef,n=Object(a.useContext)(m).state.filterResult;(function(e){var t=Object(a.useContext)(m),n=t.state,r=n.filterResult,i=n.activeCategory,o=t.dispatch;Object(a.useEffect)((function(){void 0!==R.IntersectionObserver&&!Y&&e.current&&(Y=new IntersectionObserver((function(e){e.forEach((function(e){var t=e.target,n=t.getAttribute("data-name");if(0===e.intersectionRatio){if(n===i)o({type:_,activeCategory:null});else if(n===l.GROUP_NAME_RECENTLY_USED){var r=t.nextSibling;if(r){var s=r.getAttribute("data-name");o({type:_,activeCategory:s})}}}else i||(o({type:A,group:n}),o({type:_,activeCategory:n}))}))}),{root:e.current.parentElement})),Y.disconnect(),e&&e.current&&I()(e.current.querySelectorAll(".emoji-group")).forEach((function(e){Y.observe(e)}))}),[e.current,r])})(t),function(e,t){var n=Object(a.useRef)();Object(a.useEffect)((function(){t&&t.current&&(t.current.scrollTop=0),n.current=e}),[e]),n.current}(n,t);var r=function(){return $("",t)};return f.a.createElement("section",{className:"emoji-scroll-wrapper",ref:t},f.a.createElement(fe,{unsetEmojiName:r,emojiListRef:t}),V.map((function(e){var n=function(e,t){var n=t.unsetEmojiName,r=t.emojiListRef,i=Object(a.useContext)(m),o=i.state,s=o.activeSkinTone,c=o.filterResult,u=o.seenGroups,d=void 0===u?{}:u,h=o.onEmojiClick,p=o.variationMenu,g=o.failedToLoad,_=void 0===g?null:g,b=o.preload,v=i.dispatch,A=b||!(!d[e]&&!c&&"function"==typeof R.IntersectionObserver),w=!!p,E=function(e){return v({type:y,emoji:e})};return Object(a.useMemo)((function(){var t=c?Object.keys(c[e]||{}):Z.groups[e];return t.reduce((function(e,i,o){if(_&&_[i])return e;var a=Z.emojis[i],c=!t.length;return e.shown||c||(e.shown=!0),e.list.push(f.a.createElement(se,{emoji:a,dispatch:v,openVariationMenu:E,activeSkinTone:s,handleMouseLeave:n,variationMenuOpen:w,handleMouseEnter:function(){return $(a[l.EMOJI_PROPERTY_NAME][0],r)},hidden:c,shouldLoad:A,onEmojiClick:h,index:o,key:a[l.EMOJI_PROPERTY_UNIFIED]})),e}),{list:[],shown:!1})}),[s,c,e,A,w,_])}(e,{unsetEmojiName:r,emojiListRef:t}),o=n.list,s=function(e){for(var t=1;t3&&void 0!==arguments[3]?arguments[3]:100,i=n;return new Promise((function(n){var o=0;!function s(){for(var a=o;ao.value.length&&i.includes(o.value))t=[].concat(I()(n),[{value:i,terms:o.terms.filter((function(e){return e.includes(i)}))}]);else if(o&&i.length0;a--)if(i.includes(n[a-1].value)){s=a;break}n.length=s,t=I()(n)}else 0!==n.length&&i.includes(o.value)||(t=[{value:i,terms:he[i[0]].filter((function(e){return e.includes(i)}))}]);var f=t[t.length-1];f&&f.value?pe(f&&f.terms||[],(function(e,t){return de[t]?(de[t]||[]).reduce((function(e,t){var n=Z.emojis[t][l.EMOJI_PROPERTY_GROUP];return e[n]=e[n]||{},e[n][t]=!0,e}),e):e}),{}).then((function(e){r({type:E,filter:t,filterResult:e})})):r({type:E,filter:t,filterResult:null})}},_e=(n(44),function(){return f.a.createElement("input",{className:"emoji-search",onChange:me(),autoFocus:!0})});n(46),n.d(t,"SKIN_TONE_NEUTRAL",(function(){return"neutral"})),n.d(t,"SKIN_TONE_LIGHT",(function(){return"1f3fb"})),n.d(t,"SKIN_TONE_MEDIUM_LIGHT",(function(){return"1f3fc"})),n.d(t,"SKIN_TONE_MEDIUM",(function(){return"1f3fe"})),n.d(t,"SKIN_TONE_MEDIUM_DARK",(function(){return"1f3ff"})),n.d(t,"SKIN_TONE_DARK",(function(){return"1f3fd"}));var ye=function(e){var t=e.emojiUrl,n=void 0===t?"https://cdn.jsdelivr.net/gh/iamcal/emoji-data@master/img-apple-160":t,r=e.onEmojiClick,o=e.preload,c=void 0!==o&&o,u=e.skinTone,d=void 0===u?"neutral":u,h=Object(a.useRef)(null),p=Object(a.useReducer)(S,{activeSkinTone:d,emojiUrl:n,onEmojiClick:D(r),seenGroups:i()({},l.GROUP_NAME_PEOPLE,!0),recentlyUsed:x(),preload:c}),g=s()(p,2),_=g[0],v=g[1],A=function(e){var t=e.target;_.variationMenu&&v({type:y}),_.skinTonesSpread&&"tones"!==t.getAttribute("data-name")&&v({type:b})};return f.a.createElement(m.Provider,{value:{state:_,dispatch:v}},f.a.createElement("aside",{className:"emoji-picker-react",onScroll:A,onMouseDown:A},f.a.createElement(W,{emojiListRef:h}),f.a.createElement("div",{style:{position:"relative"}},f.a.createElement(_e,null),f.a.createElement(N,null)),f.a.createElement("div",{className:"content-wrapper","data-name":_.emojiName},f.a.createElement(G,{closeVariations:A}),f.a.createElement(le,{emojiListRef:h}))))};t.default=ye,ye.propTypes={emojiUrl:u.a.string,onEmojiClick:u.a.func,preload:u.a.bool,skinTone:u.a.string}}]))}).call(this,n(6))},function(e,t,n){"use strict";var r=n(51),i=n.n(r),o=n(52),s=n.n(o),a=n(53),f=n.n(a),c=n(54),u=n.n(c),l=n(5),d=n.n(l),h=n(55),p=n.n(h),g=n(1),m=n.n(g),_=n(0),y=n.n(_),b=(n(9),n(323)),v=n(154),A=n.n(v),w=n(25);function E(e,t,n){return e===t||(e.correspondingElement?e.correspondingElement.classList.contains(n):e.classList.contains(n))}var S,k,I=(void 0===S&&(S=0),function(){return++S}),R={},T={},O=["touchstart","touchmove"];function C(e,t){var n=null;return-1!==O.indexOf(t)&&k&&(n={passive:!e.props.preventDefault}),n}var x=function(e,t){var n,r,i=e.displayName||e.name||"Component";return r=n=function(n){var r,o;function s(e){var r;return(r=n.call(this,e)||this).__outsideClickHandler=function(e){if("function"!=typeof r.__clickOutsideHandlerProp){var t=r.getInstance();if("function"!=typeof t.props.handleClickOutside){if("function"!=typeof t.handleClickOutside)throw new Error("WrappedComponent: "+i+" lacks a handleClickOutside(event) function for processing outside click events.");t.handleClickOutside(e)}else t.props.handleClickOutside(e)}else r.__clickOutsideHandlerProp(e)},r.__getComponentNode=function(){var e=r.getInstance();return t&&"function"==typeof t.setClickOutsideRef?t.setClickOutsideRef()(e):"function"==typeof e.setClickOutsideRef?e.setClickOutsideRef():Object(w.findDOMNode)(e)},r.enableOnClickOutside=function(){if("undefined"!=typeof document&&!T[r._uid]){void 0===k&&(k=function(){if("undefined"!=typeof window&&"function"==typeof window.addEventListener){var e=!1,t=Object.defineProperty({},"passive",{get:function(){e=!0}}),n=function(){};return window.addEventListener("testPassiveEventSupport",n,t),window.removeEventListener("testPassiveEventSupport",n,t),e}}()),T[r._uid]=!0;var e=r.props.eventTypes;e.forEach||(e=[e]),R[r._uid]=function(e){var t;null!==r.componentNode&&(r.props.preventDefault&&e.preventDefault(),r.props.stopPropagation&&e.stopPropagation(),r.props.excludeScrollbar&&(t=e,document.documentElement.clientWidth<=t.clientX||document.documentElement.clientHeight<=t.clientY)||function(e,t,n){if(e===t)return!0;for(;e.parentNode;){if(E(e,t,n))return!0;e=e.parentNode}return e}(e.target,r.componentNode,r.props.outsideClickIgnoreClass)===document&&r.__outsideClickHandler(e))},e.forEach((function(e){document.addEventListener(e,R[r._uid],C(r,e))}))}},r.disableOnClickOutside=function(){delete T[r._uid];var e=R[r._uid];if(e&&"undefined"!=typeof document){var t=r.props.eventTypes;t.forEach||(t=[t]),t.forEach((function(t){return document.removeEventListener(t,e,C(r,t))})),delete R[r._uid]}},r.getRef=function(e){return r.instanceRef=e},r._uid=I(),r}o=n,(r=s).prototype=Object.create(o.prototype),r.prototype.constructor=r,r.__proto__=o;var a=s.prototype;return a.getInstance=function(){if(!e.prototype.isReactComponent)return this;var t=this.instanceRef;return t.getInstance?t.getInstance():t},a.componentDidMount=function(){if("undefined"!=typeof document&&document.createElement){var e=this.getInstance();if(t&&"function"==typeof t.handleClickOutside&&(this.__clickOutsideHandlerProp=t.handleClickOutside(e),"function"!=typeof this.__clickOutsideHandlerProp))throw new Error("WrappedComponent: "+i+" lacks a function for processing outside click events specified by the handleClickOutside config option.");this.componentNode=this.__getComponentNode(),this.props.disableOnClickOutside||this.enableOnClickOutside()}},a.componentDidUpdate=function(){this.componentNode=this.__getComponentNode()},a.componentWillUnmount=function(){this.disableOnClickOutside()},a.render=function(){var t=this.props,n=(t.excludeScrollbar,function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}(t,["excludeScrollbar"]));return e.prototype.isReactComponent?n.ref=this.getRef:n.wrappedRef=this.getRef,n.disableOnClickOutside=this.disableOnClickOutside,n.enableOnClickOutside=this.enableOnClickOutside,Object(_.createElement)(e,n)},s}(_.Component),n.displayName="OnClickOutside("+i+")",n.defaultProps={eventTypes:["mousedown","touchstart"],excludeScrollbar:t&&t.excludeScrollbar||!1,outsideClickIgnoreClass:"ignore-react-onclickoutside",preventDefault:!1,stopPropagation:!1},n.getClass=function(){return e.getClass?e.getClass():e},r},M=function(){return y.a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",height:"24",viewBox:"0 0 24 24",width:"24"},y.a.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),y.a.createElement("path",{id:"icon",fill:"#828282",d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm3.5-9c.83 0 1.5-.67 1.5-1.5S16.33 8 15.5 8 14 8.67 14 9.5s.67 1.5 1.5 1.5zm-7 0c.83 0 1.5-.67 1.5-1.5S9.33 8 8.5 8 7 8.67 7 9.5 7.67 11 8.5 11zm3.5 6.5c2.33 0 4.31-1.46 5.11-3.5H6.89c.8 2.04 2.78 3.5 5.11 3.5z"}))},P=function(e){function t(e){var n;return i()(this,t),n=f()(this,u()(t).call(this,e)),m()(d()(n),"handleClickOutside",(function(e){n.props.closeEmojiSelector()})),n}return p()(t,e),s()(t,[{key:"render",value:function(){var e=this.props,t=e.onEmojiClick,n=e.emojiSelectorOpen,r=e.toggleEmojiSelector;return(y.a.createElement("div",{className:"emoji-button-container"},y.a.createElement("div",{className:"pos-relative"},y.a.createElement(b.a,{in:n,timeout:250},(function(e){return y.a.createElement("div",{className:"emoji-picker emoji-picker-".concat(e),"aria-hidden":!n},y.a.createElement(A.a,{onEmojiClick:t,emojiUrl:"https://cdn.jsdelivr.net/gh/iamcal/emoji-data@master/img-apple-64"}))})),y.a.createElement("button",{type:"button",id:"emoji-button",onClick:r,"aria-label":"Emoji picker"},y.a.createElement(M,null)))))}}]),t}(y.a.Component);t.a=x(P)},function(e,t,n){"use strict";n.r(t);var r=n(147);t.default=r.a},,function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)){var n=[],r=!0,i=!1,o=void 0;try{for(var s,a=e[Symbol.iterator]();!(r=(s=a.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==a.return||a.return()}finally{if(i)throw o}}return n}}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}},function(e,t){e.exports=function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t0?s-4:s;for(n=0;n>16&255,f[u++]=t>>8&255,f[u++]=255&t;2===a&&(t=i[e.charCodeAt(n)]<<2|i[e.charCodeAt(n+1)]>>4,f[u++]=255&t);1===a&&(t=i[e.charCodeAt(n)]<<10|i[e.charCodeAt(n+1)]<<4|i[e.charCodeAt(n+2)]>>2,f[u++]=t>>8&255,f[u++]=255&t);return f},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,o=[],s=0,a=n-i;sa?a:s+16383));1===i?(t=e[n-1],o.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],o.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return o.join("")};for(var r=[],i=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0,f=s.length;a0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function u(e,t,n){for(var i,o,s=[],a=t;a>18&63]+r[o>>12&63]+r[o>>6&63]+r[63&o]);return s.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(e,t){t.read=function(e,t,n,r,i){var o,s,a=8*i-r-1,f=(1<>1,u=-7,l=n?i-1:0,d=n?-1:1,h=e[t+l];for(l+=d,o=h&(1<<-u)-1,h>>=-u,u+=a;u>0;o=256*o+e[t+l],l+=d,u-=8);for(s=o&(1<<-u)-1,o>>=-u,u+=r;u>0;s=256*s+e[t+l],l+=d,u-=8);if(0===o)o=1-c;else{if(o===f)return s?NaN:1/0*(h?-1:1);s+=Math.pow(2,r),o-=c}return(h?-1:1)*s*Math.pow(2,o-r)},t.write=function(e,t,n,r,i,o){var s,a,f,c=8*o-i-1,u=(1<>1,d=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,h=r?0:o-1,p=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,s=u):(s=Math.floor(Math.log(t)/Math.LN2),t*(f=Math.pow(2,-s))<1&&(s--,f*=2),(t+=s+l>=1?d/f:d*Math.pow(2,1-l))*f>=2&&(s++,f/=2),s+l>=u?(a=0,s=u):s+l>=1?(a=(t*f-1)*Math.pow(2,i),s+=l):(a=t*Math.pow(2,l-1)*Math.pow(2,i),s=0));i>=8;e[n+h]=255&a,h+=p,a/=256,i-=8);for(s=s<0;e[n+h]=255&s,h+=p,s/=256,c-=8);e[n+h-p]|=128*g}},function(e,t,n){(function(t,r){var i,o,s=n(38),a=n(173),f=n(175),c=n(187),u=n(37);"function"==typeof Symbol&&"function"==typeof Symbol.for?(i=Symbol.for("graceful-fs.queue"),o=Symbol.for("graceful-fs.previous")):(i="___graceful-fs.queue",o="___graceful-fs.previous");var l=function(){};if(u.debuglog?l=u.debuglog("gfs4"):/\bgfs4\b/i.test(t.env.NODE_DEBUG||"")&&(l=function(){var e=u.format.apply(u,arguments);e="GFS4: "+e.split(/\n/).join("\nGFS4: "),console.error(e)}),!r[i]){var d=[];Object.defineProperty(r,i,{get:function(){return d}}),s.close=function(e){function t(t,n){return e.call(s,t,(function(e){e||g(),"function"==typeof n&&n.apply(this,arguments)}))}return Object.defineProperty(t,o,{value:e}),t}(s.close),s.closeSync=function(e){function t(t){e.apply(s,arguments),g()}return Object.defineProperty(t,o,{value:e}),t}(s.closeSync),/\bgfs4\b/i.test(t.env.NODE_DEBUG||"")&&t.on("exit",(function(){l(r[i]),n(188).equal(r[i].length,0)}))}function h(e){a(e),e.gracefulify=h,e.createReadStream=function(t,n){return new e.ReadStream(t,n)},e.createWriteStream=function(t,n){return new e.WriteStream(t,n)};var n=e.readFile;e.readFile=function(e,t,r){"function"==typeof t&&(r=t,t=null);return function e(t,r,i){return n(t,r,(function(n){!n||"EMFILE"!==n.code&&"ENFILE"!==n.code?("function"==typeof i&&i.apply(this,arguments),g()):p([e,[t,r,i]])}))}(e,t,r)};var r=e.writeFile;e.writeFile=function(e,t,n,i){"function"==typeof n&&(i=n,n=null);return function e(t,n,i,o){return r(t,n,i,(function(r){!r||"EMFILE"!==r.code&&"ENFILE"!==r.code?("function"==typeof o&&o.apply(this,arguments),g()):p([e,[t,n,i,o]])}))}(e,t,n,i)};var i=e.appendFile;i&&(e.appendFile=function(e,t,n,r){"function"==typeof n&&(r=n,n=null);return function e(t,n,r,o){return i(t,n,r,(function(i){!i||"EMFILE"!==i.code&&"ENFILE"!==i.code?("function"==typeof o&&o.apply(this,arguments),g()):p([e,[t,n,r,o]])}))}(e,t,n,r)});var o=e.readdir;function s(t){return o.apply(e,t)}if(e.readdir=function(e,t,n){var r=[e];"function"!=typeof t?r.push(t):n=t;return r.push((function(e,t){t&&t.sort&&t.sort();!e||"EMFILE"!==e.code&&"ENFILE"!==e.code?("function"==typeof n&&n.apply(this,arguments),g()):p([s,[r]])})),s(r)},"v0.8"===t.version.substr(0,4)){var c=f(e);_=c.ReadStream,y=c.WriteStream}var u=e.ReadStream;u&&(_.prototype=Object.create(u.prototype),_.prototype.open=function(){var e=this;v(e.path,e.flags,e.mode,(function(t,n){t?(e.autoClose&&e.destroy(),e.emit("error",t)):(e.fd=n,e.emit("open",n),e.read())}))});var l=e.WriteStream;l&&(y.prototype=Object.create(l.prototype),y.prototype.open=function(){var e=this;v(e.path,e.flags,e.mode,(function(t,n){t?(e.destroy(),e.emit("error",t)):(e.fd=n,e.emit("open",n))}))}),Object.defineProperty(e,"ReadStream",{get:function(){return _},set:function(e){_=e},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return y},set:function(e){y=e},enumerable:!0,configurable:!0});var d=_;Object.defineProperty(e,"FileReadStream",{get:function(){return d},set:function(e){d=e},enumerable:!0,configurable:!0});var m=y;function _(e,t){return this instanceof _?(u.apply(this,arguments),this):_.apply(Object.create(_.prototype),arguments)}function y(e,t){return this instanceof y?(l.apply(this,arguments),this):y.apply(Object.create(y.prototype),arguments)}Object.defineProperty(e,"FileWriteStream",{get:function(){return m},set:function(e){m=e},enumerable:!0,configurable:!0});var b=e.open;function v(e,t,n,r){return"function"==typeof n&&(r=n,n=null),function e(t,n,r,i){return b(t,n,r,(function(o,s){!o||"EMFILE"!==o.code&&"ENFILE"!==o.code?("function"==typeof i&&i.apply(this,arguments),g()):p([e,[t,n,r,i]])}))}(e,t,n,r)}return e.open=v,e}function p(e){l("ENQUEUE",e[0].name,e[1]),r[i].push(e)}function g(){var e=r[i].shift();e&&(l("RETRY",e[0].name,e[1]),e[0].apply(null,e[1]))}e.exports=h(c(s)),t.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!s.__patched&&(e.exports=h(s),s.__patched=!0)}).call(this,n(13),n(6))},function(e,t,n){(function(t){var r=n(174),i=t.cwd,o=null,s=t.env.GRACEFUL_FS_PLATFORM||t.platform;t.cwd=function(){return o||(o=i.call(t)),o};try{t.cwd()}catch(e){}var a=t.chdir;t.chdir=function(e){o=null,a.call(t,e)},e.exports=function(e){r.hasOwnProperty("O_SYMLINK")&&t.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&function(e){e.lchmod=function(t,n,i){e.open(t,r.O_WRONLY|r.O_SYMLINK,n,(function(t,r){t?i&&i(t):e.fchmod(r,n,(function(t){e.close(r,(function(e){i&&i(t||e)}))}))}))},e.lchmodSync=function(t,n){var i,o=e.openSync(t,r.O_WRONLY|r.O_SYMLINK,n),s=!0;try{i=e.fchmodSync(o,n),s=!1}finally{if(s)try{e.closeSync(o)}catch(e){}else e.closeSync(o)}return i}}(e);e.lutimes||function(e){r.hasOwnProperty("O_SYMLINK")?(e.lutimes=function(t,n,i,o){e.open(t,r.O_SYMLINK,(function(t,r){t?o&&o(t):e.futimes(r,n,i,(function(t){e.close(r,(function(e){o&&o(t||e)}))}))}))},e.lutimesSync=function(t,n,i){var o,s=e.openSync(t,r.O_SYMLINK),a=!0;try{o=e.futimesSync(s,n,i),a=!1}finally{if(a)try{e.closeSync(s)}catch(e){}else e.closeSync(s)}return o}):(e.lutimes=function(e,n,r,i){i&&t.nextTick(i)},e.lutimesSync=function(){})}(e);e.chown=a(e.chown),e.fchown=a(e.fchown),e.lchown=a(e.lchown),e.chmod=i(e.chmod),e.fchmod=i(e.fchmod),e.lchmod=i(e.lchmod),e.chownSync=f(e.chownSync),e.fchownSync=f(e.fchownSync),e.lchownSync=f(e.lchownSync),e.chmodSync=o(e.chmodSync),e.fchmodSync=o(e.fchmodSync),e.lchmodSync=o(e.lchmodSync),e.stat=c(e.stat),e.fstat=c(e.fstat),e.lstat=c(e.lstat),e.statSync=u(e.statSync),e.fstatSync=u(e.fstatSync),e.lstatSync=u(e.lstatSync),e.lchmod||(e.lchmod=function(e,n,r){r&&t.nextTick(r)},e.lchmodSync=function(){});e.lchown||(e.lchown=function(e,n,r,i){i&&t.nextTick(i)},e.lchownSync=function(){});"win32"===s&&(e.rename=(n=e.rename,function(t,r,i){var o=Date.now(),s=0;n(t,r,(function a(f){if(f&&("EACCES"===f.code||"EPERM"===f.code)&&Date.now()-o<6e4)return setTimeout((function(){e.stat(r,(function(e,o){e&&"ENOENT"===e.code?n(t,r,a):i(f)}))}),s),void(s<100&&(s+=10));i&&i(f)}))}));var n;function i(t){return t?function(n,r,i){return t.call(e,n,r,(function(e){l(e)&&(e=null),i&&i.apply(this,arguments)}))}:t}function o(t){return t?function(n,r){try{return t.call(e,n,r)}catch(e){if(!l(e))throw e}}:t}function a(t){return t?function(n,r,i,o){return t.call(e,n,r,i,(function(e){l(e)&&(e=null),o&&o.apply(this,arguments)}))}:t}function f(t){return t?function(n,r,i){try{return t.call(e,n,r,i)}catch(e){if(!l(e))throw e}}:t}function c(t){return t?function(n,r,i){function o(e,t){t&&(t.uid<0&&(t.uid+=4294967296),t.gid<0&&(t.gid+=4294967296)),i&&i.apply(this,arguments)}return"function"==typeof r&&(i=r,r=null),r?t.call(e,n,r,o):t.call(e,n,o)}:t}function u(t){return t?function(n,r){var i=r?t.call(e,n,r):t.call(e,n);return i.uid<0&&(i.uid+=4294967296),i.gid<0&&(i.gid+=4294967296),i}:t}function l(e){return!e||("ENOSYS"===e.code||!(t.getuid&&0===t.getuid()||"EINVAL"!==e.code&&"EPERM"!==e.code))}e.read=function(t){function n(n,r,i,o,s,a){var f;if(a&&"function"==typeof a){var c=0;f=function(u,l,d){if(u&&"EAGAIN"===u.code&&c<10)return c++,t.call(e,n,r,i,o,s,f);a.apply(this,arguments)}}return t.call(e,n,r,i,o,s,f)}return n.__proto__=t,n}(e.read),e.readSync=(d=e.readSync,function(t,n,r,i,o){for(var s=0;;)try{return d.call(e,t,n,r,i,o)}catch(e){if("EAGAIN"===e.code&&s<10){s++;continue}throw e}});var d}}).call(this,n(13))},function(e){e.exports=JSON.parse('{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":512,"O_EXCL":2048,"O_NOCTTY":131072,"O_TRUNC":1024,"O_APPEND":8,"O_DIRECTORY":1048576,"O_NOFOLLOW":256,"O_SYNC":128,"O_SYMLINK":2097152,"O_NONBLOCK":4,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"E2BIG":7,"EACCES":13,"EADDRINUSE":48,"EADDRNOTAVAIL":49,"EAFNOSUPPORT":47,"EAGAIN":35,"EALREADY":37,"EBADF":9,"EBADMSG":94,"EBUSY":16,"ECANCELED":89,"ECHILD":10,"ECONNABORTED":53,"ECONNREFUSED":61,"ECONNRESET":54,"EDEADLK":11,"EDESTADDRREQ":39,"EDOM":33,"EDQUOT":69,"EEXIST":17,"EFAULT":14,"EFBIG":27,"EHOSTUNREACH":65,"EIDRM":90,"EILSEQ":92,"EINPROGRESS":36,"EINTR":4,"EINVAL":22,"EIO":5,"EISCONN":56,"EISDIR":21,"ELOOP":62,"EMFILE":24,"EMLINK":31,"EMSGSIZE":40,"EMULTIHOP":95,"ENAMETOOLONG":63,"ENETDOWN":50,"ENETRESET":52,"ENETUNREACH":51,"ENFILE":23,"ENOBUFS":55,"ENODATA":96,"ENODEV":19,"ENOENT":2,"ENOEXEC":8,"ENOLCK":77,"ENOLINK":97,"ENOMEM":12,"ENOMSG":91,"ENOPROTOOPT":42,"ENOSPC":28,"ENOSR":98,"ENOSTR":99,"ENOSYS":78,"ENOTCONN":57,"ENOTDIR":20,"ENOTEMPTY":66,"ENOTSOCK":38,"ENOTSUP":45,"ENOTTY":25,"ENXIO":6,"EOPNOTSUPP":102,"EOVERFLOW":84,"EPERM":1,"EPIPE":32,"EPROTO":100,"EPROTONOSUPPORT":43,"EPROTOTYPE":41,"ERANGE":34,"EROFS":30,"ESPIPE":29,"ESRCH":3,"ESTALE":70,"ETIME":101,"ETIMEDOUT":60,"ETXTBSY":26,"EWOULDBLOCK":35,"EXDEV":18,"SIGHUP":1,"SIGINT":2,"SIGQUIT":3,"SIGILL":4,"SIGTRAP":5,"SIGABRT":6,"SIGIOT":6,"SIGBUS":10,"SIGFPE":8,"SIGKILL":9,"SIGUSR1":30,"SIGSEGV":11,"SIGUSR2":31,"SIGPIPE":13,"SIGALRM":14,"SIGTERM":15,"SIGCHLD":20,"SIGCONT":19,"SIGSTOP":17,"SIGTSTP":18,"SIGTTIN":21,"SIGTTOU":22,"SIGURG":16,"SIGXCPU":24,"SIGXFSZ":25,"SIGVTALRM":26,"SIGPROF":27,"SIGWINCH":28,"SIGIO":23,"SIGSYS":12,"SSL_OP_ALL":2147486719,"SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION":262144,"SSL_OP_CIPHER_SERVER_PREFERENCE":4194304,"SSL_OP_CISCO_ANYCONNECT":32768,"SSL_OP_COOKIE_EXCHANGE":8192,"SSL_OP_CRYPTOPRO_TLSEXT_BUG":2147483648,"SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS":2048,"SSL_OP_EPHEMERAL_RSA":0,"SSL_OP_LEGACY_SERVER_CONNECT":4,"SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER":32,"SSL_OP_MICROSOFT_SESS_ID_BUG":1,"SSL_OP_MSIE_SSLV2_RSA_PADDING":0,"SSL_OP_NETSCAPE_CA_DN_BUG":536870912,"SSL_OP_NETSCAPE_CHALLENGE_BUG":2,"SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG":1073741824,"SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG":8,"SSL_OP_NO_COMPRESSION":131072,"SSL_OP_NO_QUERY_MTU":4096,"SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION":65536,"SSL_OP_NO_SSLv2":16777216,"SSL_OP_NO_SSLv3":33554432,"SSL_OP_NO_TICKET":16384,"SSL_OP_NO_TLSv1":67108864,"SSL_OP_NO_TLSv1_1":268435456,"SSL_OP_NO_TLSv1_2":134217728,"SSL_OP_PKCS1_CHECK_1":0,"SSL_OP_PKCS1_CHECK_2":0,"SSL_OP_SINGLE_DH_USE":1048576,"SSL_OP_SINGLE_ECDH_USE":524288,"SSL_OP_SSLEAY_080_CLIENT_DH_BUG":128,"SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG":0,"SSL_OP_TLS_BLOCK_PADDING_BUG":512,"SSL_OP_TLS_D5_BUG":256,"SSL_OP_TLS_ROLLBACK_BUG":8388608,"ENGINE_METHOD_DSA":2,"ENGINE_METHOD_DH":4,"ENGINE_METHOD_RAND":8,"ENGINE_METHOD_ECDH":16,"ENGINE_METHOD_ECDSA":32,"ENGINE_METHOD_CIPHERS":64,"ENGINE_METHOD_DIGESTS":128,"ENGINE_METHOD_STORE":256,"ENGINE_METHOD_PKEY_METHS":512,"ENGINE_METHOD_PKEY_ASN1_METHS":1024,"ENGINE_METHOD_ALL":65535,"ENGINE_METHOD_NONE":0,"DH_CHECK_P_NOT_SAFE_PRIME":2,"DH_CHECK_P_NOT_PRIME":1,"DH_UNABLE_TO_CHECK_GENERATOR":4,"DH_NOT_SUITABLE_GENERATOR":8,"NPN_ENABLED":1,"RSA_PKCS1_PADDING":1,"RSA_SSLV23_PADDING":2,"RSA_NO_PADDING":3,"RSA_PKCS1_OAEP_PADDING":4,"RSA_X931_PADDING":5,"RSA_PKCS1_PSS_PADDING":6,"POINT_CONVERSION_COMPRESSED":2,"POINT_CONVERSION_UNCOMPRESSED":4,"POINT_CONVERSION_HYBRID":6,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1,"UV_UDP_REUSEADDR":4}')},function(e,t,n){(function(t){var r=n(39).Stream;e.exports=function(e){return{ReadStream:function n(i,o){if(!(this instanceof n))return new n(i,o);r.call(this);var s=this;this.path=i,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=65536,o=o||{};for(var a=Object.keys(o),f=0,c=a.length;fthis.end)throw new Error("start must be <= end");this.pos=this.start}if(null!==this.fd)return void t.nextTick((function(){s._read()}));e.open(this.path,this.flags,this.mode,(function(e,t){if(e)return s.emit("error",e),void(s.readable=!1);s.fd=t,s.emit("open",t),s._read()}))},WriteStream:function t(n,i){if(!(this instanceof t))return new t(n,i);r.call(this),this.path=n,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,i=i||{};for(var o=Object.keys(i),s=0,a=o.length;s= zero");this.pos=this.start}this.busy=!1,this._queue=[],null===this.fd&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}}}).call(this,n(13))},function(e,t){},function(e,t,n){"use strict";var r=n(57).Buffer,i=n(178);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,n=""+t.data;t=t.next;)n+=e+t.data;return n},e.prototype.concat=function(e){if(0===this.length)return r.alloc(0);if(1===this.length)return this.head.data;for(var t,n,i,o=r.allocUnsafe(e>>>0),s=this.head,a=0;s;)t=s.data,n=o,i=a,t.copy(n,i),a+=s.data.length,s=s.next;return o},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},function(e,t){},function(e,t,n){(function(e){var r=void 0!==e&&e||"undefined"!=typeof self&&self||window,i=Function.prototype.apply;function o(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new o(i.call(setTimeout,r,arguments),clearTimeout)},t.setInterval=function(){return new o(i.call(setInterval,r,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},o.prototype.unref=o.prototype.ref=function(){},o.prototype.close=function(){this._clearFn.call(r,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))},n(180),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(this,n(6))},function(e,t,n){(function(e,t){!function(e,n){"use strict";if(!e.setImmediate){var r,i,o,s,a,f=1,c={},u=!1,l=e.document,d=Object.getPrototypeOf&&Object.getPrototypeOf(e);d=d&&d.setTimeout?d:e,"[object process]"==={}.toString.call(e.process)?r=function(e){t.nextTick((function(){p(e)}))}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?e.MessageChannel?((o=new MessageChannel).port1.onmessage=function(e){p(e.data)},r=function(e){o.port2.postMessage(e)}):l&&"onreadystatechange"in l.createElement("script")?(i=l.documentElement,r=function(e){var t=l.createElement("script");t.onreadystatechange=function(){p(e),t.onreadystatechange=null,i.removeChild(t),t=null},i.appendChild(t)}):r=function(e){setTimeout(p,0,e)}:(s="setImmediate$"+Math.random()+"$",a=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(s)&&p(+t.data.slice(s.length))},e.addEventListener?e.addEventListener("message",a,!1):e.attachEvent("onmessage",a),r=function(t){e.postMessage(s+t,"*")}),d.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n - {showDock && !roomId && } + {showDock && !roomId && } {showDock && roomId &&
} @@ -782,6 +782,7 @@ ChatBox.propTypes = { size: PropTypes.oneOf(['small', 'large']), maxWaitTime: PropTypes.number, waitInterval: PropTypes.number, + dockLabel: PropTypes.string, } ChatBox.defaultProps = { @@ -802,6 +803,7 @@ ChatBox.defaultProps = { size: DEFAULT_SIZE, maxWaitTime: DEFAULT_MAX_WAIT_MS, waitInterval: DEFAULT_WAIT_INTERVAL_MS, + dockLabel: DEFAULT_DOCK_LABEL, } export default ChatBox; diff --git a/src/components/dock.jsx b/src/components/dock.jsx index 2f9f6ae..bf87cf0 100644 --- a/src/components/dock.jsx +++ b/src/components/dock.jsx @@ -1,7 +1,7 @@ import React, { Fragment } from "react" import PropTypes from "prop-types" -const Dock = ({ handleToggleOpen, size }) => { +const Dock = ({ handleToggleOpen, size, label }) => { return(