diff --git a/.gitignore b/.gitignore index 47feed8..e9eca0c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,3 @@ node_modules -dist-npm +dist-release dist/test*.js diff --git a/README.md b/README.md index 608fac0..4ae63e4 100644 --- a/README.md +++ b/README.md @@ -423,12 +423,12 @@ Write central directory headers and the end central dirctory header. writer.writeEnd(); ``` -## ES2015 Modules +## Import subdirectries -You can import modules separately. +You can import modules from subdirectries. ```js -import {deflate} from "jsziptools/core"; +import { deflate } from "jsziptools/core"; import * as zip from "jsziptools/zip"; deflate(...); diff --git a/dist/jsziptools.min.js b/dist/jsziptools.min.js deleted file mode 100644 index a746254..0000000 --- a/dist/jsziptools.min.js +++ /dev/null @@ -1,142 +0,0 @@ -/*! - * zlib-asm@1.0.7 (zlib) - * author: Syu Kato - * url: git://github.com/ukyo/zlib-asm.git - * - * - * process@0.11.10 (MIT) - * author: Roman Shtylman - * url: git://github.com/shtylman/node-process.git - * - * - * readable-stream@2.3.5 (MIT) - * url: git://github.com/nodejs/readable-stream - * - * - * webpack@4.2.0 (MIT) - * author: Tobias Koppers @sokra - * url: https://github.com/webpack/webpack.git - * - * - * inherits@2.0.3 (ISC) - * url: git://github.com/isaacs/inherits - * - * - * core-util-is@1.0.2 (MIT) - * author: Isaac Z. Schlueter (http://blog.izs.me/) - * url: git://github.com/isaacs/core-util-is - * - * - * safe-buffer@5.1.1 (MIT) - * author: Feross Aboukhadijeh (http://feross.org) - * url: git://github.com/feross/safe-buffer.git - * - * - * process-nextick-args@2.0.0 (MIT) - * url: https://github.com/calvinmetcalf/process-nextick-args.git - * - * - * events@1.1.1 (MIT) - * author: Irakli Gozalishvili (http://jeditoolkit.com) - * url: git://github.com/Gozala/events.git - * - * - * util@0.10.3 (MIT) - * author: Joyent (http://www.joyent.com) - * url: git://github.com/defunctzombie/node-util - * - * - * string_decoder@1.1.0 (MIT) - * url: git://github.com/rvagg/string_decoder.git - * - * - * stream-browserify@2.0.1 (MIT) - * author: James Halliday (http://substack.net) - * url: git://github.com/substack/stream-browserify.git - * - * - * inherits@2.0.1 (ISC) - * url: git://github.com/isaacs/inherits - * - * - * util-deprecate@1.0.2 (MIT) - * author: Nathan Rajlich (http://n8.io/) - * url: git://github.com/TooTallNate/util-deprecate.git - * - * - * setimmediate@1.0.5 (MIT) - * author: YuzuJS - * url: YuzuJS/setImmediate - * contributors: - * Domenic Denicola (https://domenic.me) - * Donavon West (http://donavon.com) - * Yaffle - * - * - * timers-browserify@2.0.6 ([object Object]) - * author: J. Ryan Stinnett (http://convolv.es/) - * url: git://github.com/jryans/timers-browserify.git - * contributors: - * Colton Brown - * Dario Segura - * Guy Bedford - * Ionut-Cristian Florescu - * James Halliday - * Jan Schär - * Johannes Ewald - * Jonathan Prins - * Matt Esch - * taoqf - * wtgtybhertgeghgtwtg - * - * - * isarray@1.0.0 (MIT) - * author: Julian Gruber (http://juliangruber.com) - * url: git://github.com/juliangruber/isarray.git - * - * - * ieee754@1.1.10 (BSD-3-Clause) - * author: Feross Aboukhadijeh (http://feross.org) - * url: git://github.com/feross/ieee754.git - * contributors: - * Romain Beauxis - * - * - * base64-js@1.2.3 (MIT) - * author: T. Jameson Little - * url: git://github.com/beatgammit/base64-js.git - * - * - * buffer@4.9.1 (MIT) - * author: Feross Aboukhadijeh (http://feross.org) - * url: git://github.com/feross/buffer.git - * contributors: - * Romain Beauxis - * James Halliday - * - * - * path-browserify@0.0.0 (MIT) - * author: James Halliday (http://substack.net) - * url: git://github.com/substack/path-browserify.git - * - * - * node-libs-browser@2.1.0 (MIT) - * author: Tobias Koppers @sokra - * url: git+https://github.com/webpack/node-libs-browser.git - * - * - */!function(e){var t={};function r(i){if(t[i])return t[i].exports;var n=t[i]={i:i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,r),n.l=!0,n.exports}r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:i})},r.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=87)}([function(e,t,r){"use strict";function i(e){for(var r in e)t.hasOwnProperty(r)||(t[r]=e[r])}Object.defineProperty(t,"__esModule",{value:!0}),i(r(36)),i(r(85))},function(e,t,r){"use strict";function i(e){for(var r in e)t.hasOwnProperty(r)||(t[r]=e[r])}Object.defineProperty(t,"__esModule",{value:!0}),i(r(84)),i(r(83)),i(r(82)),i(r(55)),i(r(12))},function(e,t){var r={"-2":"invalid compression level","-3":"invalid or incomplete deflate data","-4":"out of memory","-6":"zlib version mismatch"};e.exports={defaultParams:{compressionLevel:6,chunkSize:32768,shareMemory:!1,src:null,streamFn:function(){}},assign:function e(t){return Array.prototype.slice.call(arguments,1).forEach(function(r){null!=r&&"object"==typeof r&&Object.keys(r).forEach(function(i){var n=r[i];null!=n&&("object"==typeof n?(t[i]=t[i]||{},e(t[i],n)):t[i]=n)})}),t},concat:function(e){var t,r,i=0;return t=e.map(function(e){return e.length}).reduce(function(e,t){return e+t},0),r=new Uint8Array(t),e.forEach(function(e){r.set(e,i),i+=e.length}),r},zerror:function(e){return new Error("zlib-asm: "+e)},validate:function(e){return{valid:e>=0,error:r[e]}}}},function(e,t){var r,i,n=e.exports={};function a(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function s(e){if(r===setTimeout)return setTimeout(e,0);if((r===a||!r)&&setTimeout)return r=setTimeout,setTimeout(e,0);try{return r(e,0)}catch(t){try{return r.call(null,e,0)}catch(t){return r.call(this,e,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:a}catch(e){r=a}try{i="function"==typeof clearTimeout?clearTimeout:o}catch(e){i=o}}();var f,l=[],u=!1,c=-1;function h(){u&&f&&(u=!1,f.length?l=f.concat(l):c=-1,l.length&&d())}function d(){if(!u){var e=s(h);u=!0;for(var t=l.length;t;){for(f=l,l=[];++c1)for(var r=1;r 0) var gc = undefined");else{if(!n&&!q)throw"Unknown runtime environment. Where are we?";b.read=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.send(null),t.responseText},b.readAsync=function(e,t,r){var i=new XMLHttpRequest;i.open("GET",e,!0),i.responseType="arraybuffer",i.onload=function(){200==i.status||0==i.status&&i.response?t(i.response):r()},i.onerror=r,i.send(null)},void 0!==arguments&&(b.arguments=arguments),"undefined"!=typeof console?(b.print||(b.print=function(e){console.log(e)}),b.printErr||(b.printErr=function(e){console.warn(e)})):b.print||(b.print=function(){}),q&&(b.load=importScripts),void 0===b.setWindowTitle&&(b.setWindowTitle=function(e){document.title=e})}function w(e){eval.call(null,e)}for(k in!b.load&&b.read&&(b.load=function(e){w(b.read(e))}),b.print||(b.print=function(){}),b.printErr||(b.printErr=b.print),b.arguments||(b.arguments=[]),b.thisProgram||(b.thisProgram="./this.program"),b.print=b.print,b.h=b.printErr,b.preRun=[],b.postRun=[],f)f.hasOwnProperty(k)&&(b[k]=f[k]);var f=void 0,B={w:function(e){tempRet0=e},u:function(){return tempRet0},B:function(){return z},A:function(e){z=e},l:function(e){switch(e){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:return"*"===e[e.length-1]?B.d:"i"===e[0]?(assert(0==(e=parseInt(e.substr(1)))%8),e/8):0}},t:function(e){return Math.max(B.l(e),B.d)},C:16,P:function(e,t){return"double"===t||"i64"===t?7&e&&(assert(4==(7&e)),e+=4):assert(0==(3&e)),e},J:function(e,t,r){return r||"i64"!=e&&"double"!=e?e?Math.min(t||(e?B.t(e):0),B.d):Math.min(t,8):8},f:function(e,t,r){return r&&r.length?(r.splice||(r=Array.prototype.slice.call(r)),r.splice(0,0,t),b["dynCall_"+e].apply(null,r)):b["dynCall_"+e].call(null,t)},c:[],p:function(e){for(var t=0;t=E)&&(F("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+E+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 "),e=!0),e?(D=t,0):t},k:function(e,t){return Math.ceil(e/(t||16))*(t||16)},O:function(e,t,r){return r?+(e>>>0)+4294967296*+(t>>>0):+(e>>>0)+4294967296*+(0|t)},j:8,d:4,D:0};B.addFunction=B.p,B.removeFunction=B.v;var G=!1;function assert(e,t){e||F("Assertion failed: "+t)}function aa(e){var t;switch("*"===(t="i32").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return H[e>>0];case"i16":return I[e>>1];case"i32":case"i64":return J[e>>2];case"float":return K[e>>2];case"double":return L[e>>3];default:F("invalid type for setValue: "+t)}return null}function M(e,t,r,i){var n,a;"number"==typeof e?(n=!0,a=e):(n=!1,a=e.length);var o,s,f="string"==typeof t?t:null;if(r=4==r?i:["function"==typeof N?N:B.n,B.m,B.n,B.b][void 0===r?2:r](Math.max(a,f?1:t.length)),n){for(i=r,assert(0==(3&r)),e=r+(-4&a);i>2]=0;for(e=r+a;i>0]=0;return r}if("i8"===f)return e.subarray||e.slice?O.set(e,r):O.set(new Uint8Array(e),r),r;for(i=0;i>0]=l;break;case"i16":I[c>>1]=l;break;case"i32":J[c>>2]=l;break;case"i64":tempI64=[l>>>0,(tempDouble=l,1<=+ba(tempDouble)?0>>0:~~+ea((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],J[c>>2]=tempI64[0],J[c+4>>2]=tempI64[1];break;case"float":K[c>>2]=l;break;case"double":L[c>>3]=l;break;default:F("invalid type for setValue: "+u)}s!==n&&(o=B.l(n),s=n),i+=o}}return r}function fa(e){var t;if(0===t||!e)return"";for(var r,i=0,n=0;(i|=r=O[e+n>>0],0!=r||t)&&(n++,!t||n!=t););if(t||(t=n),r="",128>i){for(;0>0]=n[a],a+=1;var o=N(4),s=b.___cxa_demangle(r,0,0,o);if(0===aa(o)&&s){t=fa(s);break e}}catch(r){t=e;break e}finally{r&&Q(r),o&&Q(o),s&&Q(s)}B.a("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"),t=e}return e===t?e:e+" ["+t+"]"})}function ha(){var e=Error();if(!e.stack){try{throw Error(0)}catch(t){e=t}if(!e.stack)return"(no stack trace available)"}return e.stack.toString()}function ia(){var e=D;return 0U?2*U:U+16777216;if(U!==E&&(E=U),buffer=b.buffer?b.buffer:new ArrayBuffer(E),b.HEAP8=H=new Int8Array(buffer),b.HEAP16=I=new Int16Array(buffer),b.HEAP32=J=new Int32Array(buffer),b.HEAPU8=O=new Uint8Array(buffer),b.HEAPU16=R=new Uint16Array(buffer),b.HEAPU32=ja=new Uint32Array(buffer),b.HEAPF32=K=new Float32Array(buffer),b.HEAPF64=L=new Float64Array(buffer),J[0]=255,255!==O[0]||0!==O[3])throw"Typed arrays 2 must be run on a little-endian system";function V(e){for(;0=n&&(n=65536+((1023&n)<<10)|1023&e.charCodeAt(++i)),127>=n?++r:r=2047>=n?r+2:65535>=n?r+3:2097151>=n?r+4:67108863>=n?r+5:r+6}i=0;if(0<(a=(r=Array(r+1)).length)){for(var n=i,a=i+a-1,o=0;o=s&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++o)),127>=s){if(i>=a)break;r[i++]=s}else{if(2047>=s){if(i+1>=a)break;r[i++]=192|s>>6}else{if(65535>=s){if(i+2>=a)break;r[i++]=224|s>>12}else{if(2097151>=s){if(i+3>=a)break;r[i++]=240|s>>18}else{if(67108863>=s){if(i+4>=a)break;r[i++]=248|s>>24}else{if(i+5>=a)break;r[i++]=252|s>>30,r[i++]=128|s>>24&63}r[i++]=128|s>>18&63}r[i++]=128|s>>12&63}r[i++]=128|s>>6&63}r[i++]=128|63&s}}r[i]=0,i-=n}else i=0;return t&&(r.length=i),r}Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(e,t){var r=65535&e,i=65535&t;return r*i+((e>>>16)*i+r*(t>>>16)<<16)|0}),Math.N=Math.imul,Math.clz32||(Math.clz32=function(e){e>>>=0;for(var t=0;32>t;t++)if(e&1<<31-t)return t;return 32}),Math.G=Math.clz32,Math.trunc||(Math.trunc=function(e){return 0>e?Math.ceil(e):Math.floor(e)}),Math.trunc=Math.trunc;var ba=Math.abs,ea=Math.ceil,da=Math.floor,ca=Math.min;b.preloadedImages={},b.preloadedAudios={};var ta=[function(e,t,r){return sa[e].$read(t,r)},function(e,t,r){sa[e].$write(t,r)}],ka=8,C=ka+14592;W.push(),M([0,0,0,0,0,0,0,0,1,0,0,0,4,0,4,0,8,0,4,0,2,0,0,0,4,0,5,0,16,0,8,0,2,0,0,0,4,0,6,0,32,0,32,0,2,0,0,0,4,0,4,0,16,0,16,0,3,0,0,0,8,0,16,0,32,0,32,0,3,0,0,0,8,0,16,0,128,0,128,0,3,0,0,0,8,0,32,0,128,0,0,1,3,0,0,0,32,0,128,0,2,1,0,4,3,0,0,0,32,0,2,1,2,1,0,16,3,0,0,0,130,44,0,0,148,0,0,0,1,1,0,0,30,1,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,5,0,0,0,0,0,0,0,2,49,0,0,28,1,0,0,0,0,0,0,30,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0,8,0,0,0,8,0,0,0,9,0,0,0,9,0,0,0,10,0,0,0,10,0,0,0,11,0,0,0,11,0,0,0,12,0,0,0,12,0,0,0,13,0,0,0,13,0,0,0,0,0,0,0,168,1,0,0,0,0,0,0,19,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,0,0,0,7,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,10,0,0,0,12,0,0,0,14,0,0,0,16,0,0,0,20,0,0,0,24,0,0,0,28,0,0,0,32,0,0,0,40,0,0,0,48,0,0,0,56,0,0,0,64,0,0,0,80,0,0,0,96,0,0,0,112,0,0,0,128,0,0,0,160,0,0,0,192,0,0,0,224,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,6,0,0,0,8,0,0,0,12,0,0,0,16,0,0,0,24,0,0,0,32,0,0,0,48,0,0,0,64,0,0,0,96,0,0,0,128,0,0,0,192,0,0,0,0,1,0,0,128,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,6,0,0,0,8,0,0,0,12,0,0,0,16,0,0,0,24,0,0,0,32,0,0,0,48,0,0,0,64,0,0,0,96,0,0,0,0,0,0,150,48,7,119,44,97,14,238,186,81,9,153,25,196,109,7,143,244,106,112,53,165,99,233,163,149,100,158,50,136,219,14,164,184,220,121,30,233,213,224,136,217,210,151,43,76,182,9,189,124,177,126,7,45,184,231,145,29,191,144,100,16,183,29,242,32,176,106,72,113,185,243,222,65,190,132,125,212,218,26,235,228,221,109,81,181,212,244,199,133,211,131,86,152,108,19,192,168,107,100,122,249,98,253,236,201,101,138,79,92,1,20,217,108,6,99,99,61,15,250,245,13,8,141,200,32,110,59,94,16,105,76,228,65,96,213,114,113,103,162,209,228,3,60,71,212,4,75,253,133,13,210,107,181,10,165,250,168,181,53,108,152,178,66,214,201,187,219,64,249,188,172,227,108,216,50,117,92,223,69,207,13,214,220,89,61,209,171,172,48,217,38,58,0,222,81,128,81,215,200,22,97,208,191,181,244,180,33,35,196,179,86,153,149,186,207,15,165,189,184,158,184,2,40,8,136,5,95,178,217,12,198,36,233,11,177,135,124,111,47,17,76,104,88,171,29,97,193,61,45,102,182,144,65,220,118,6,113,219,1,188,32,210,152,42,16,213,239,137,133,177,113,31,181,182,6,165,228,191,159,51,212,184,232,162,201,7,120,52,249,0,15,142,168,9,150,24,152,14,225,187,13,106,127,45,61,109,8,151,108,100,145,1,92,99,230,244,81,107,107,98,97,108,28,216,48,101,133,78,0,98,242,237,149,6,108,123,165,1,27,193,244,8,130,87,196,15,245,198,217,176,101,80,233,183,18,234,184,190,139,124,136,185,252,223,29,221,98,73,45,218,21,243,124,211,140,101,76,212,251,88,97,178,77,206,81,181,58,116,0,188,163,226,48,187,212,65,165,223,74,215,149,216,61,109,196,209,164,251,244,214,211,106,233,105,67,252,217,110,52,70,136,103,173,208,184,96,218,115,45,4,68,229,29,3,51,95,76,10,170,201,124,13,221,60,113,5,80,170,65,2,39,16,16,11,190,134,32,12,201,37,181,104,87,179,133,111,32,9,212,102,185,159,228,97,206,14,249,222,94,152,201,217,41,34,152,208,176,180,168,215,199,23,61,179,89,129,13,180,46,59,92,189,183,173,108,186,192,32,131,184,237,182,179,191,154,12,226,182,3,154,210,177,116,57,71,213,234,175,119,210,157,21,38,219,4,131,22,220,115,18,11,99,227,132,59,100,148,62,106,109,13,168,90,106,122,11,207,14,228,157,255,9,147,39,174,0,10,177,158,7,125,68,147,15,240,210,163,8,135,104,242,1,30,254,194,6,105,93,87,98,247,203,103,101,128,113,54,108,25,231,6,107,110,118,27,212,254,224,43,211,137,90,122,218,16,204,74,221,103,111,223,185,249,249,239,190,142,67,190,183,23,213,142,176,96,232,163,214,214,126,147,209,161,196,194,216,56,82,242,223,79,241,103,187,209,103,87,188,166,221,6,181,63,75,54,178,72,218,43,13,216,76,27,10,175,246,74,3,54,96,122,4,65,195,239,96,223,85,223,103,168,239,142,110,49,121,190,105,70,140,179,97,203,26,131,102,188,160,210,111,37,54,226,104,82,149,119,12,204,3,71,11,187,185,22,2,34,47,38,5,85,190,59,186,197,40,11,189,178,146,90,180,43,4,106,179,92,167,255,215,194,49,207,208,181,139,158,217,44,29,174,222,91,176,194,100,155,38,242,99,236,156,163,106,117,10,147,109,2,169,6,9,156,63,54,14,235,133,103,7,114,19,87,0,5,130,74,191,149,20,122,184,226,174,43,177,123,56,27,182,12,155,142,210,146,13,190,213,229,183,239,220,124,33,223,219,11,212,210,211,134,66,226,212,241,248,179,221,104,110,131,218,31,205,22,190,129,91,38,185,246,225,119,176,111,119,71,183,24,230,90,8,136,112,106,15,255,202,59,6,102,92,11,1,17,255,158,101,143,105,174,98,248,211,255,107,97,69,207,108,22,120,226,10,160,238,210,13,215,84,131,4,78,194,179,3,57,97,38,103,167,247,22,96,208,77,71,105,73,219,119,110,62,74,106,209,174,220,90,214,217,102,11,223,64,240,59,216,55,83,174,188,169,197,158,187,222,127,207,178,71,233,255,181,48,28,242,189,189,138,194,186,202,48,147,179,83,166,163,180,36,5,54,208,186,147,6,215,205,41,87,222,84,191,103,217,35,46,122,102,179,184,74,97,196,2,27,104,93,148,43,111,42,55,190,11,180,161,142,12,195,27,223,5,90,141,239,2,45,0,0,0,0,65,49,27,25,130,98,54,50,195,83,45,43,4,197,108,100,69,244,119,125,134,167,90,86,199,150,65,79,8,138,217,200,73,187,194,209,138,232,239,250,203,217,244,227,12,79,181,172,77,126,174,181,142,45,131,158,207,28,152,135,81,18,194,74,16,35,217,83,211,112,244,120,146,65,239,97,85,215,174,46,20,230,181,55,215,181,152,28,150,132,131,5,89,152,27,130,24,169,0,155,219,250,45,176,154,203,54,169,93,93,119,230,28,108,108,255,223,63,65,212,158,14,90,205,162,36,132,149,227,21,159,140,32,70,178,167,97,119,169,190,166,225,232,241,231,208,243,232,36,131,222,195,101,178,197,218,170,174,93,93,235,159,70,68,40,204,107,111,105,253,112,118,174,107,49,57,239,90,42,32,44,9,7,11,109,56,28,18,243,54,70,223,178,7,93,198,113,84,112,237,48,101,107,244,247,243,42,187,182,194,49,162,117,145,28,137,52,160,7,144,251,188,159,23,186,141,132,14,121,222,169,37,56,239,178,60,255,121,243,115,190,72,232,106,125,27,197,65,60,42,222,88,5,79,121,240,68,126,98,233,135,45,79,194,198,28,84,219,1,138,21,148,64,187,14,141,131,232,35,166,194,217,56,191,13,197,160,56,76,244,187,33,143,167,150,10,206,150,141,19,9,0,204,92,72,49,215,69,139,98,250,110,202,83,225,119,84,93,187,186,21,108,160,163,214,63,141,136,151,14,150,145,80,152,215,222,17,169,204,199,210,250,225,236,147,203,250,245,92,215,98,114,29,230,121,107,222,181,84,64,159,132,79,89,88,18,14,22,25,35,21,15,218,112,56,36,155,65,35,61,167,107,253,101,230,90,230,124,37,9,203,87,100,56,208,78,163,174,145,1,226,159,138,24,33,204,167,51,96,253,188,42,175,225,36,173,238,208,63,180,45,131,18,159,108,178,9,134,171,36,72,201,234,21,83,208,41,70,126,251,104,119,101,226,246,121,63,47,183,72,36,54,116,27,9,29,53,42,18,4,242,188,83,75,179,141,72,82,112,222,101,121,49,239,126,96,254,243,230,231,191,194,253,254,124,145,208,213,61,160,203,204,250,54,138,131,187,7,145,154,120,84,188,177,57,101,167,168,75,152,131,59,10,169,152,34,201,250,181,9,136,203,174,16,79,93,239,95,14,108,244,70,205,63,217,109,140,14,194,116,67,18,90,243,2,35,65,234,193,112,108,193,128,65,119,216,71,215,54,151,6,230,45,142,197,181,0,165,132,132,27,188,26,138,65,113,91,187,90,104,152,232,119,67,217,217,108,90,30,79,45,21,95,126,54,12,156,45,27,39,221,28,0,62,18,0,152,185,83,49,131,160,144,98,174,139,209,83,181,146,22,197,244,221,87,244,239,196,148,167,194,239,213,150,217,246,233,188,7,174,168,141,28,183,107,222,49,156,42,239,42,133,237,121,107,202,172,72,112,211,111,27,93,248,46,42,70,225,225,54,222,102,160,7,197,127,99,84,232,84,34,101,243,77,229,243,178,2,164,194,169,27,103,145,132,48,38,160,159,41,184,174,197,228,249,159,222,253,58,204,243,214,123,253,232,207,188,107,169,128,253,90,178,153,62,9,159,178,127,56,132,171,176,36,28,44,241,21,7,53,50,70,42,30,115,119,49,7,180,225,112,72,245,208,107,81,54,131,70,122,119,178,93,99,78,215,250,203,15,230,225,210,204,181,204,249,141,132,215,224,74,18,150,175,11,35,141,182,200,112,160,157,137,65,187,132,70,93,35,3,7,108,56,26,196,63,21,49,133,14,14,40,66,152,79,103,3,169,84,126,192,250,121,85,129,203,98,76,31,197,56,129,94,244,35,152,157,167,14,179,220,150,21,170,27,0,84,229,90,49,79,252,153,98,98,215,216,83,121,206,23,79,225,73,86,126,250,80,149,45,215,123,212,28,204,98,19,138,141,45,82,187,150,52,145,232,187,31,208,217,160,6,236,243,126,94,173,194,101,71,110,145,72,108,47,160,83,117,232,54,18,58,169,7,9,35,106,84,36,8,43,101,63,17,228,121,167,150,165,72,188,143,102,27,145,164,39,42,138,189,224,188,203,242,161,141,208,235,98,222,253,192,35,239,230,217,189,225,188,20,252,208,167,13,63,131,138,38,126,178,145,63,185,36,208,112,248,21,203,105,59,70,230,66,122,119,253,91,181,107,101,220,244,90,126,197,55,9,83,238,118,56,72,247,177,174,9,184,240,159,18,161,51,204,63,138,114,253,36,147,0,0,0,0,55,106,194,1,110,212,132,3,89,190,70,2,220,168,9,7,235,194,203,6,178,124,141,4,133,22,79,5,184,81,19,14,143,59,209,15,214,133,151,13,225,239,85,12,100,249,26,9,83,147,216,8,10,45,158,10,61,71,92,11,112,163,38,28,71,201,228,29,30,119,162,31,41,29,96,30,172,11,47,27,155,97,237,26,194,223,171,24,245,181,105,25,200,242,53,18,255,152,247,19,166,38,177,17,145,76,115,16,20,90,60,21,35,48,254,20,122,142,184,22,77,228,122,23,224,70,77,56,215,44,143,57,142,146,201,59,185,248,11,58,60,238,68,63,11,132,134,62,82,58,192,60,101,80,2,61,88,23,94,54,111,125,156,55,54,195,218,53,1,169,24,52,132,191,87,49,179,213,149,48,234,107,211,50,221,1,17,51,144,229,107,36,167,143,169,37,254,49,239,39,201,91,45,38,76,77,98,35,123,39,160,34,34,153,230,32,21,243,36,33,40,180,120,42,31,222,186,43,70,96,252,41,113,10,62,40,244,28,113,45,195,118,179,44,154,200,245,46,173,162,55,47,192,141,154,112,247,231,88,113,174,89,30,115,153,51,220,114,28,37,147,119,43,79,81,118,114,241,23,116,69,155,213,117,120,220,137,126,79,182,75,127,22,8,13,125,33,98,207,124,164,116,128,121,147,30,66,120,202,160,4,122,253,202,198,123,176,46,188,108,135,68,126,109,222,250,56,111,233,144,250,110,108,134,181,107,91,236,119,106,2,82,49,104,53,56,243,105,8,127,175,98,63,21,109,99,102,171,43,97,81,193,233,96,212,215,166,101,227,189,100,100,186,3,34,102,141,105,224,103,32,203,215,72,23,161,21,73,78,31,83,75,121,117,145,74,252,99,222,79,203,9,28,78,146,183,90,76,165,221,152,77,152,154,196,70,175,240,6,71,246,78,64,69,193,36,130,68,68,50,205,65,115,88,15,64,42,230,73,66,29,140,139,67,80,104,241,84,103,2,51,85,62,188,117,87,9,214,183,86,140,192,248,83,187,170,58,82,226,20,124,80,213,126,190,81,232,57,226,90,223,83,32,91,134,237,102,89,177,135,164,88,52,145,235,93,3,251,41,92,90,69,111,94,109,47,173,95,128,27,53,225,183,113,247,224,238,207,177,226,217,165,115,227,92,179,60,230,107,217,254,231,50,103,184,229,5,13,122,228,56,74,38,239,15,32,228,238,86,158,162,236,97,244,96,237,228,226,47,232,211,136,237,233,138,54,171,235,189,92,105,234,240,184,19,253,199,210,209,252,158,108,151,254,169,6,85,255,44,16,26,250,27,122,216,251,66,196,158,249,117,174,92,248,72,233,0,243,127,131,194,242,38,61,132,240,17,87,70,241,148,65,9,244,163,43,203,245,250,149,141,247,205,255,79,246,96,93,120,217,87,55,186,216,14,137,252,218,57,227,62,219,188,245,113,222,139,159,179,223,210,33,245,221,229,75,55,220,216,12,107,215,239,102,169,214,182,216,239,212,129,178,45,213,4,164,98,208,51,206,160,209,106,112,230,211,93,26,36,210,16,254,94,197,39,148,156,196,126,42,218,198,73,64,24,199,204,86,87,194,251,60,149,195,162,130,211,193,149,232,17,192,168,175,77,203,159,197,143,202,198,123,201,200,241,17,11,201,116,7,68,204,67,109,134,205,26,211,192,207,45,185,2,206,64,150,175,145,119,252,109,144,46,66,43,146,25,40,233,147,156,62,166,150,171,84,100,151,242,234,34,149,197,128,224,148,248,199,188,159,207,173,126,158,150,19,56,156,161,121,250,157,36,111,181,152,19,5,119,153,74,187,49,155,125,209,243,154,48,53,137,141,7,95,75,140,94,225,13,142,105,139,207,143,236,157,128,138,219,247,66,139,130,73,4,137,181,35,198,136,136,100,154,131,191,14,88,130,230,176,30,128,209,218,220,129,84,204,147,132,99,166,81,133,58,24,23,135,13,114,213,134,160,208,226,169,151,186,32,168,206,4,102,170,249,110,164,171,124,120,235,174,75,18,41,175,18,172,111,173,37,198,173,172,24,129,241,167,47,235,51,166,118,85,117,164,65,63,183,165,196,41,248,160,243,67,58,161,170,253,124,163,157,151,190,162,208,115,196,181,231,25,6,180,190,167,64,182,137,205,130,183,12,219,205,178,59,177,15,179,98,15,73,177,85,101,139,176,104,34,215,187,95,72,21,186,6,246,83,184,49,156,145,185,180,138,222,188,131,224,28,189,218,94,90,191,237,52,152,190,0,0,0,0,101,103,188,184,139,200,9,170,238,175,181,18,87,151,98,143,50,240,222,55,220,95,107,37,185,56,215,157,239,40,180,197,138,79,8,125,100,224,189,111,1,135,1,215,184,191,214,74,221,216,106,242,51,119,223,224,86,16,99,88,159,87,25,80,250,48,165,232,20,159,16,250,113,248,172,66,200,192,123,223,173,167,199,103,67,8,114,117,38,111,206,205,112,127,173,149,21,24,17,45,251,183,164,63,158,208,24,135,39,232,207,26,66,143,115,162,172,32,198,176,201,71,122,8,62,175,50,160,91,200,142,24,181,103,59,10,208,0,135,178,105,56,80,47,12,95,236,151,226,240,89,133,135,151,229,61,209,135,134,101,180,224,58,221,90,79,143,207,63,40,51,119,134,16,228,234,227,119,88,82,13,216,237,64,104,191,81,248,161,248,43,240,196,159,151,72,42,48,34,90,79,87,158,226,246,111,73,127,147,8,245,199,125,167,64,213,24,192,252,109,78,208,159,53,43,183,35,141,197,24,150,159,160,127,42,39,25,71,253,186,124,32,65,2,146,143,244,16,247,232,72,168,61,88,20,155,88,63,168,35,182,144,29,49,211,247,161,137,106,207,118,20,15,168,202,172,225,7,127,190,132,96,195,6,210,112,160,94,183,23,28,230,89,184,169,244,60,223,21,76,133,231,194,209,224,128,126,105,14,47,203,123,107,72,119,195,162,15,13,203,199,104,177,115,41,199,4,97,76,160,184,217,245,152,111,68,144,255,211,252,126,80,102,238,27,55,218,86,77,39,185,14,40,64,5,182,198,239,176,164,163,136,12,28,26,176,219,129,127,215,103,57,145,120,210,43,244,31,110,147,3,247,38,59,102,144,154,131,136,63,47,145,237,88,147,41,84,96,68,180,49,7,248,12,223,168,77,30,186,207,241,166,236,223,146,254,137,184,46,70,103,23,155,84,2,112,39,236,187,72,240,113,222,47,76,201,48,128,249,219,85,231,69,99,156,160,63,107,249,199,131,211,23,104,54,193,114,15,138,121,203,55,93,228,174,80,225,92,64,255,84,78,37,152,232,246,115,136,139,174,22,239,55,22,248,64,130,4,157,39,62,188,36,31,233,33,65,120,85,153,175,215,224,139,202,176,92,51,59,182,89,237,94,209,229,85,176,126,80,71,213,25,236,255,108,33,59,98,9,70,135,218,231,233,50,200,130,142,142,112,212,158,237,40,177,249,81,144,95,86,228,130,58,49,88,58,131,9,143,167,230,110,51,31,8,193,134,13,109,166,58,181,164,225,64,189,193,134,252,5,47,41,73,23,74,78,245,175,243,118,34,50,150,17,158,138,120,190,43,152,29,217,151,32,75,201,244,120,46,174,72,192,192,1,253,210,165,102,65,106,28,94,150,247,121,57,42,79,151,150,159,93,242,241,35,229,5,25,107,77,96,126,215,245,142,209,98,231,235,182,222,95,82,142,9,194,55,233,181,122,217,70,0,104,188,33,188,208,234,49,223,136,143,86,99,48,97,249,214,34,4,158,106,154,189,166,189,7,216,193,1,191,54,110,180,173,83,9,8,21,154,78,114,29,255,41,206,165,17,134,123,183,116,225,199,15,205,217,16,146,168,190,172,42,70,17,25,56,35,118,165,128,117,102,198,216,16,1,122,96,254,174,207,114,155,201,115,202,34,241,164,87,71,150,24,239,169,57,173,253,204,94,17,69,6,238,77,118,99,137,241,206,141,38,68,220,232,65,248,100,81,121,47,249,52,30,147,65,218,177,38,83,191,214,154,235,233,198,249,179,140,161,69,11,98,14,240,25,7,105,76,161,190,81,155,60,219,54,39,132,53,153,146,150,80,254,46,46,153,185,84,38,252,222,232,158,18,113,93,140,119,22,225,52,206,46,54,169,171,73,138,17,69,230,63,3,32,129,131,187,118,145,224,227,19,246,92,91,253,89,233,73,152,62,85,241,33,6,130,108,68,97,62,212,170,206,139,198,207,169,55,126,56,65,127,214,93,38,195,110,179,137,118,124,214,238,202,196,111,214,29,89,10,177,161,225,228,30,20,243,129,121,168,75,215,105,203,19,178,14,119,171,92,161,194,185,57,198,126,1,128,254,169,156,229,153,21,36,11,54,160,54,110,81,28,142,167,22,102,134,194,113,218,62,44,222,111,44,73,185,211,148,240,129,4,9,149,230,184,177,123,73,13,163,30,46,177,27,72,62,210,67,45,89,110,251,195,246,219,233,166,145,103,81,31,169,176,204,122,206,12,116,148,97,185,102,241,6,5,222,0,0,0,0,119,7,48,150,238,14,97,44,153,9,81,186,7,109,196,25,112,106,244,143,233,99,165,53,158,100,149,163,14,219,136,50,121,220,184,164,224,213,233,30,151,210,217,136,9,182,76,43,126,177,124,189,231,184,45,7,144,191,29,145,29,183,16,100,106,176,32,242,243,185,113,72,132,190,65,222,26,218,212,125,109,221,228,235,244,212,181,81,131,211,133,199,19,108,152,86,100,107,168,192,253,98,249,122,138,101,201,236,20,1,92,79,99,6,108,217,250,15,61,99,141,8,13,245,59,110,32,200,76,105,16,94,213,96,65,228,162,103,113,114,60,3,228,209,75,4,212,71,210,13,133,253,165,10,181,107,53,181,168,250,66,178,152,108,219,187,201,214,172,188,249,64,50,216,108,227,69,223,92,117,220,214,13,207,171,209,61,89,38,217,48,172,81,222,0,58,200,215,81,128,191,208,97,22,33,180,244,181,86,179,196,35,207,186,149,153,184,189,165,15,40,2,184,158,95,5,136,8,198,12,217,178,177,11,233,36,47,111,124,135,88,104,76,17,193,97,29,171,182,102,45,61,118,220,65,144,1,219,113,6,152,210,32,188,239,213,16,42,113,177,133,137,6,182,181,31,159,191,228,165,232,184,212,51,120,7,201,162,15,0,249,52,150,9,168,142,225,14,152,24,127,106,13,187,8,109,61,45,145,100,108,151,230,99,92,1,107,107,81,244,28,108,97,98,133,101,48,216,242,98,0,78,108,6,149,237,27,1,165,123,130,8,244,193,245,15,196,87,101,176,217,198,18,183,233,80,139,190,184,234,252,185,136,124,98,221,29,223,21,218,45,73,140,211,124,243,251,212,76,101,77,178,97,88,58,181,81,206,163,188,0,116,212,187,48,226,74,223,165,65,61,216,149,215,164,209,196,109,211,214,244,251,67,105,233,106,52,110,217,252,173,103,136,70,218,96,184,208,68,4,45,115,51,3,29,229,170,10,76,95,221,13,124,201,80,5,113,60,39,2,65,170,190,11,16,16,201,12,32,134,87,104,181,37,32,111,133,179,185,102,212,9,206,97,228,159,94,222,249,14,41,217,201,152,176,208,152,34,199,215,168,180,89,179,61,23,46,180,13,129,183,189,92,59,192,186,108,173,237,184,131,32,154,191,179,182,3,182,226,12,116,177,210,154,234,213,71,57,157,210,119,175,4,219,38,21,115,220,22,131,227,99,11,18,148,100,59,132,13,109,106,62,122,106,90,168,228,14,207,11,147,9,255,157,10,0,174,39,125,7,158,177,240,15,147,68,135,8,163,210,30,1,242,104,105,6,194,254,247,98,87,93,128,101,103,203,25,108,54,113,110,107,6,231,254,212,27,118,137,211,43,224,16,218,122,90,103,221,74,204,249,185,223,111,142,190,239,249,23,183,190,67,96,176,142,213,214,214,163,232,161,209,147,126,56,216,194,196,79,223,242,82,209,187,103,241,166,188,87,103,63,181,6,221,72,178,54,75,216,13,43,218,175,10,27,76,54,3,74,246,65,4,122,96,223,96,239,195,168,103,223,85,49,110,142,239,70,105,190,121,203,97,179,140,188,102,131,26,37,111,210,160,82,104,226,54,204,12,119,149,187,11,71,3,34,2,22,185,85,5,38,47,197,186,59,190,178,189,11,40,43,180,90,146,92,179,106,4,194,215,255,167,181,208,207,49,44,217,158,139,91,222,174,29,155,100,194,176,236,99,242,38,117,106,163,156,2,109,147,10,156,9,6,169,235,14,54,63,114,7,103,133,5,0,87,19,149,191,74,130,226,184,122,20,123,177,43,174,12,182,27,56,146,210,142,155,229,213,190,13,124,220,239,183,11,219,223,33,134,211,210,212,241,212,226,66,104,221,179,248,31,218,131,110,129,190,22,205,246,185,38,91,111,176,119,225,24,183,71,119,136,8,90,230,255,15,106,112,102,6,59,202,17,1,11,92,143,101,158,255,248,98,174,105,97,107,255,211,22,108,207,69,160,10,226,120,215,13,210,238,78,4,131,84,57,3,179,194,167,103,38,97,208,96,22,247,73,105,71,77,62,110,119,219,174,209,106,74,217,214,90,220,64,223,11,102,55,216,59,240,169,188,174,83,222,187,158,197,71,178,207,127,48,181,255,233,189,189,242,28,202,186,194,138,83,179,147,48,36,180,163,166,186,208,54,5,205,215,6,147,84,222,87,41,35,217,103,191,179,102,122,46,196,97,74,184,93,104,27,2,42,111,43,148,180,11,190,55,195,12,142,161,90,5,223,27,45,2,239,141,0,0,0,0,25,27,49,65,50,54,98,130,43,45,83,195,100,108,197,4,125,119,244,69,86,90,167,134,79,65,150,199,200,217,138,8,209,194,187,73,250,239,232,138,227,244,217,203,172,181,79,12,181,174,126,77,158,131,45,142,135,152,28,207,74,194,18,81,83,217,35,16,120,244,112,211,97,239,65,146,46,174,215,85,55,181,230,20,28,152,181,215,5,131,132,150,130,27,152,89,155,0,169,24,176,45,250,219,169,54,203,154,230,119,93,93,255,108,108,28,212,65,63,223,205,90,14,158,149,132,36,162,140,159,21,227,167,178,70,32,190,169,119,97,241,232,225,166,232,243,208,231,195,222,131,36,218,197,178,101,93,93,174,170,68,70,159,235,111,107,204,40,118,112,253,105,57,49,107,174,32,42,90,239,11,7,9,44,18,28,56,109,223,70,54,243,198,93,7,178,237,112,84,113,244,107,101,48,187,42,243,247,162,49,194,182,137,28,145,117,144,7,160,52,23,159,188,251,14,132,141,186,37,169,222,121,60,178,239,56,115,243,121,255,106,232,72,190,65,197,27,125,88,222,42,60,240,121,79,5,233,98,126,68,194,79,45,135,219,84,28,198,148,21,138,1,141,14,187,64,166,35,232,131,191,56,217,194,56,160,197,13,33,187,244,76,10,150,167,143,19,141,150,206,92,204,0,9,69,215,49,72,110,250,98,139,119,225,83,202,186,187,93,84,163,160,108,21,136,141,63,214,145,150,14,151,222,215,152,80,199,204,169,17,236,225,250,210,245,250,203,147,114,98,215,92,107,121,230,29,64,84,181,222,89,79,132,159,22,14,18,88,15,21,35,25,36,56,112,218,61,35,65,155,101,253,107,167,124,230,90,230,87,203,9,37,78,208,56,100,1,145,174,163,24,138,159,226,51,167,204,33,42,188,253,96,173,36,225,175,180,63,208,238,159,18,131,45,134,9,178,108,201,72,36,171,208,83,21,234,251,126,70,41,226,101,119,104,47,63,121,246,54,36,72,183,29,9,27,116,4,18,42,53,75,83,188,242,82,72,141,179,121,101,222,112,96,126,239,49,231,230,243,254,254,253,194,191,213,208,145,124,204,203,160,61,131,138,54,250,154,145,7,187,177,188,84,120,168,167,101,57,59,131,152,75,34,152,169,10,9,181,250,201,16,174,203,136,95,239,93,79,70,244,108,14,109,217,63,205,116,194,14,140,243,90,18,67,234,65,35,2,193,108,112,193,216,119,65,128,151,54,215,71,142,45,230,6,165,0,181,197,188,27,132,132,113,65,138,26,104,90,187,91,67,119,232,152,90,108,217,217,21,45,79,30,12,54,126,95,39,27,45,156,62,0,28,221,185,152,0,18,160,131,49,83,139,174,98,144,146,181,83,209,221,244,197,22,196,239,244,87,239,194,167,148,246,217,150,213,174,7,188,233,183,28,141,168,156,49,222,107,133,42,239,42,202,107,121,237,211,112,72,172,248,93,27,111,225,70,42,46,102,222,54,225,127,197,7,160,84,232,84,99,77,243,101,34,2,178,243,229,27,169,194,164,48,132,145,103,41,159,160,38,228,197,174,184,253,222,159,249,214,243,204,58,207,232,253,123,128,169,107,188,153,178,90,253,178,159,9,62,171,132,56,127,44,28,36,176,53,7,21,241,30,42,70,50,7,49,119,115,72,112,225,180,81,107,208,245,122,70,131,54,99,93,178,119,203,250,215,78,210,225,230,15,249,204,181,204,224,215,132,141,175,150,18,74,182,141,35,11,157,160,112,200,132,187,65,137,3,35,93,70,26,56,108,7,49,21,63,196,40,14,14,133,103,79,152,66,126,84,169,3,85,121,250,192,76,98,203,129,129,56,197,31,152,35,244,94,179,14,167,157,170,21,150,220,229,84,0,27,252,79,49,90,215,98,98,153,206,121,83,216,73,225,79,23,80,250,126,86,123,215,45,149,98,204,28,212,45,141,138,19,52,150,187,82,31,187,232,145,6,160,217,208,94,126,243,236,71,101,194,173,108,72,145,110,117,83,160,47,58,18,54,232,35,9,7,169,8,36,84,106,17,63,101,43,150,167,121,228,143,188,72,165,164,145,27,102,189,138,42,39,242,203,188,224,235,208,141,161,192,253,222,98,217,230,239,35,20,188,225,189,13,167,208,252,38,138,131,63,63,145,178,126,112,208,36,185,105,203,21,248,66,230,70,59,91,253,119,122,220,101,107,181,197,126,90,244,238,83,9,55,247,72,56,118,184,9,174,177,161,18,159,240,138,63,204,51,147,36,253,114,0,0,0,0,1,194,106,55,3,132,212,110,2,70,190,89,7,9,168,220,6,203,194,235,4,141,124,178,5,79,22,133,14,19,81,184,15,209,59,143,13,151,133,214,12,85,239,225,9,26,249,100,8,216,147,83,10,158,45,10,11,92,71,61,28,38,163,112,29,228,201,71,31,162,119,30,30,96,29,41,27,47,11,172,26,237,97,155,24,171,223,194,25,105,181,245,18,53,242,200,19,247,152,255,17,177,38,166,16,115,76,145,21,60,90,20,20,254,48,35,22,184,142,122,23,122,228,77,56,77,70,224,57,143,44,215,59,201,146,142,58,11,248,185,63,68,238,60,62,134,132,11,60,192,58,82,61,2,80,101,54,94,23,88,55,156,125,111,53,218,195,54,52,24,169,1,49,87,191,132,48,149,213,179,50,211,107,234,51,17,1,221,36,107,229,144,37,169,143,167,39,239,49,254,38,45,91,201,35,98,77,76,34,160,39,123,32,230,153,34,33,36,243,21,42,120,180,40,43,186,222,31,41,252,96,70,40,62,10,113,45,113,28,244,44,179,118,195,46,245,200,154,47,55,162,173,112,154,141,192,113,88,231,247,115,30,89,174,114,220,51,153,119,147,37,28,118,81,79,43,116,23,241,114,117,213,155,69,126,137,220,120,127,75,182,79,125,13,8,22,124,207,98,33,121,128,116,164,120,66,30,147,122,4,160,202,123,198,202,253,108,188,46,176,109,126,68,135,111,56,250,222,110,250,144,233,107,181,134,108,106,119,236,91,104,49,82,2,105,243,56,53,98,175,127,8,99,109,21,63,97,43,171,102,96,233,193,81,101,166,215,212,100,100,189,227,102,34,3,186,103,224,105,141,72,215,203,32,73,21,161,23,75,83,31,78,74,145,117,121,79,222,99,252,78,28,9,203,76,90,183,146,77,152,221,165,70,196,154,152,71,6,240,175,69,64,78,246,68,130,36,193,65,205,50,68,64,15,88,115,66,73,230,42,67,139,140,29,84,241,104,80,85,51,2,103,87,117,188,62,86,183,214,9,83,248,192,140,82,58,170,187,80,124,20,226,81,190,126,213,90,226,57,232,91,32,83,223,89,102,237,134,88,164,135,177,93,235,145,52,92,41,251,3,94,111,69,90,95,173,47,109,225,53,27,128,224,247,113,183,226,177,207,238,227,115,165,217,230,60,179,92,231,254,217,107,229,184,103,50,228,122,13,5,239,38,74,56,238,228,32,15,236,162,158,86,237,96,244,97,232,47,226,228,233,237,136,211,235,171,54,138,234,105,92,189,253,19,184,240,252,209,210,199,254,151,108,158,255,85,6,169,250,26,16,44,251,216,122,27,249,158,196,66,248,92,174,117,243,0,233,72,242,194,131,127,240,132,61,38,241,70,87,17,244,9,65,148,245,203,43,163,247,141,149,250,246,79,255,205,217,120,93,96,216,186,55,87,218,252,137,14,219,62,227,57,222,113,245,188,223,179,159,139,221,245,33,210,220,55,75,229,215,107,12,216,214,169,102,239,212,239,216,182,213,45,178,129,208,98,164,4,209,160,206,51,211,230,112,106,210,36,26,93,197,94,254,16,196,156,148,39,198,218,42,126,199,24,64,73,194,87,86,204,195,149,60,251,193,211,130,162,192,17,232,149,203,77,175,168,202,143,197,159,200,201,123,198,201,11,17,241,204,68,7,116,205,134,109,67,207,192,211,26,206,2,185,45,145,175,150,64,144,109,252,119,146,43,66,46,147,233,40,25,150,166,62,156,151,100,84,171,149,34,234,242,148,224,128,197,159,188,199,248,158,126,173,207,156,56,19,150,157,250,121,161,152,181,111,36,153,119,5,19,155,49,187,74,154,243,209,125,141,137,53,48,140,75,95,7,142,13,225,94,143,207,139,105,138,128,157,236,139,66,247,219,137,4,73,130,136,198,35,181,131,154,100,136,130,88,14,191,128,30,176,230,129,220,218,209,132,147,204,84,133,81,166,99,135,23,24,58,134,213,114,13,169,226,208,160,168,32,186,151,170,102,4,206,171,164,110,249,174,235,120,124,175,41,18,75,173,111,172,18,172,173,198,37,167,241,129,24,166,51,235,47,164,117,85,118,165,183,63,65,160,248,41,196,161,58,67,243,163,124,253,170,162,190,151,157,181,196,115,208,180,6,25,231,182,64,167,190,183,130,205,137,178,205,219,12,179,15,177,59,177,73,15,98,176,139,101,85,187,215,34,104,186,21,72,95,184,83,246,6,185,145,156,49,188,222,138,180,189,28,224,131,191,90,94,218,190,152,52,237,0,0,0,0,184,188,103,101,170,9,200,139,18,181,175,238,143,98,151,87,55,222,240,50,37,107,95,220,157,215,56,185,197,180,40,239,125,8,79,138,111,189,224,100,215,1,135,1,74,214,191,184,242,106,216,221,224,223,119,51,88,99,16,86,80,25,87,159,232,165,48,250,250,16,159,20,66,172,248,113,223,123,192,200,103,199,167,173,117,114,8,67,205,206,111,38,149,173,127,112,45,17,24,21,63,164,183,251,135,24,208,158,26,207,232,39,162,115,143,66,176,198,32,172,8,122,71,201,160,50,175,62,24,142,200,91,10,59,103,181,178,135,0,208,47,80,56,105,151,236,95,12,133,89,240,226,61,229,151,135,101,134,135,209,221,58,224,180,207,143,79,90,119,51,40,63,234,228,16,134,82,88,119,227,64,237,216,13,248,81,191,104,240,43,248,161,72,151,159,196,90,34,48,42,226,158,87,79,127,73,111,246,199,245,8,147,213,64,167,125,109,252,192,24,53,159,208,78,141,35,183,43,159,150,24,197,39,42,127,160,186,253,71,25,2,65,32,124,16,244,143,146,168,72,232,247,155,20,88,61,35,168,63,88,49,29,144,182,137,161,247,211,20,118,207,106,172,202,168,15,190,127,7,225,6,195,96,132,94,160,112,210,230,28,23,183,244,169,184,89,76,21,223,60,209,194,231,133,105,126,128,224,123,203,47,14,195,119,72,107,203,13,15,162,115,177,104,199,97,4,199,41,217,184,160,76,68,111,152,245,252,211,255,144,238,102,80,126,86,218,55,27,14,185,39,77,182,5,64,40,164,176,239,198,28,12,136,163,129,219,176,26,57,103,215,127,43,210,120,145,147,110,31,244,59,38,247,3,131,154,144,102,145,47,63,136,41,147,88,237,180,68,96,84,12,248,7,49,30,77,168,223,166,241,207,186,254,146,223,236,70,46,184,137,84,155,23,103,236,39,112,2,113,240,72,187,201,76,47,222,219,249,128,48,99,69,231,85,107,63,160,156,211,131,199,249,193,54,104,23,121,138,15,114,228,93,55,203,92,225,80,174,78,84,255,64,246,232,152,37,174,139,136,115,22,55,239,22,4,130,64,248,188,62,39,157,33,233,31,36,153,85,120,65,139,224,215,175,51,92,176,202,237,89,182,59,85,229,209,94,71,80,126,176,255,236,25,213,98,59,33,108,218,135,70,9,200,50,233,231,112,142,142,130,40,237,158,212,144,81,249,177,130,228,86,95,58,88,49,58,167,143,9,131,31,51,110,230,13,134,193,8,181,58,166,109,189,64,225,164,5,252,134,193,23,73,41,47,175,245,78,74,50,34,118,243,138,158,17,150,152,43,190,120,32,151,217,29,120,244,201,75,192,72,174,46,210,253,1,192,106,65,102,165,247,150,94,28,79,42,57,121,93,159,150,151,229,35,241,242,77,107,25,5,245,215,126,96,231,98,209,142,95,222,182,235,194,9,142,82,122,181,233,55,104,0,70,217,208,188,33,188,136,223,49,234,48,99,86,143,34,214,249,97,154,106,158,4,7,189,166,189,191,1,193,216,173,180,110,54,21,8,9,83,29,114,78,154,165,206,41,255,183,123,134,17,15,199,225,116,146,16,217,205,42,172,190,168,56,25,17,70,128,165,118,35,216,198,102,117,96,122,1,16,114,207,174,254,202,115,201,155,87,164,241,34,239,24,150,71,253,173,57,169,69,17,94,204,118,77,238,6,206,241,137,99,220,68,38,141,100,248,65,232,249,47,121,81,65,147,30,52,83,38,177,218,235,154,214,191,179,249,198,233,11,69,161,140,25,240,14,98,161,76,105,7,60,155,81,190,132,39,54,219,150,146,153,53,46,46,254,80,38,84,185,153,158,232,222,252,140,93,113,18,52,225,22,119,169,54,46,206,17,138,73,171,3,63,230,69,187,131,129,32,227,224,145,118,91,92,246,19,73,233,89,253,241,85,62,152,108,130,6,33,212,62,97,68,198,139,206,170,126,55,169,207,214,127,65,56,110,195,38,93,124,118,137,179,196,202,238,214,89,29,214,111,225,161,177,10,243,20,30,228,75,168,121,129,19,203,105,215,171,119,14,178,185,194,161,92,1,126,198,57,156,169,254,128,36,21,153,229,54,160,54,11,142,28,81,110,134,102,22,167,62,218,113,194,44,111,222,44,148,211,185,73,9,4,129,240,177,184,230,149,163,13,73,123,27,177,46,30,67,210,62,72,251,110,89,45,233,219,246,195,81,103,145,166,204,176,169,31,116,12,206,122,102,185,97,148,222,5,6,241,96,7,0,0,0,8,80,0,0,8,16,0,20,8,115,0,18,7,31,0,0,8,112,0,0,8,48,0,0,9,192,0,16,7,10,0,0,8,96,0,0,8,32,0,0,9,160,0,0,8,0,0,0,8,128,0,0,8,64,0,0,9,224,0,16,7,6,0,0,8,88,0,0,8,24,0,0,9,144,0,19,7,59,0,0,8,120,0,0,8,56,0,0,9,208,0,17,7,17,0,0,8,104,0,0,8,40,0,0,9,176,0,0,8,8,0,0,8,136,0,0,8,72,0,0,9,240,0,16,7,4,0,0,8,84,0,0,8,20,0,21,8,227,0,19,7,43,0,0,8,116,0,0,8,52,0,0,9,200,0,17,7,13,0,0,8,100,0,0,8,36,0,0,9,168,0,0,8,4,0,0,8,132,0,0,8,68,0,0,9,232,0,16,7,8,0,0,8,92,0,0,8,28,0,0,9,152,0,20,7,83,0,0,8,124,0,0,8,60,0,0,9,216,0,18,7,23,0,0,8,108,0,0,8,44,0,0,9,184,0,0,8,12,0,0,8,140,0,0,8,76,0,0,9,248,0,16,7,3,0,0,8,82,0,0,8,18,0,21,8,163,0,19,7,35,0,0,8,114,0,0,8,50,0,0,9,196,0,17,7,11,0,0,8,98,0,0,8,34,0,0,9,164,0,0,8,2,0,0,8,130,0,0,8,66,0,0,9,228,0,16,7,7,0,0,8,90,0,0,8,26,0,0,9,148,0,20,7,67,0,0,8,122,0,0,8,58,0,0,9,212,0,18,7,19,0,0,8,106,0,0,8,42,0,0,9,180,0,0,8,10,0,0,8,138,0,0,8,74,0,0,9,244,0,16,7,5,0,0,8,86,0,0,8,22,0,64,8,0,0,19,7,51,0,0,8,118,0,0,8,54,0,0,9,204,0,17,7,15,0,0,8,102,0,0,8,38,0,0,9,172,0,0,8,6,0,0,8,134,0,0,8,70,0,0,9,236,0,16,7,9,0,0,8,94,0,0,8,30,0,0,9,156,0,20,7,99,0,0,8,126,0,0,8,62,0,0,9,220,0,18,7,27,0,0,8,110,0,0,8,46,0,0,9,188,0,0,8,14,0,0,8,142,0,0,8,78,0,0,9,252,0,96,7,0,0,0,8,81,0,0,8,17,0,21,8,131,0,18,7,31,0,0,8,113,0,0,8,49,0,0,9,194,0,16,7,10,0,0,8,97,0,0,8,33,0,0,9,162,0,0,8,1,0,0,8,129,0,0,8,65,0,0,9,226,0,16,7,6,0,0,8,89,0,0,8,25,0,0,9,146,0,19,7,59,0,0,8,121,0,0,8,57,0,0,9,210,0,17,7,17,0,0,8,105,0,0,8,41,0,0,9,178,0,0,8,9,0,0,8,137,0,0,8,73,0,0,9,242,0,16,7,4,0,0,8,85,0,0,8,21,0,16,8,2,1,19,7,43,0,0,8,117,0,0,8,53,0,0,9,202,0,17,7,13,0,0,8,101,0,0,8,37,0,0,9,170,0,0,8,5,0,0,8,133,0,0,8,69,0,0,9,234,0,16,7,8,0,0,8,93,0,0,8,29,0,0,9,154,0,20,7,83,0,0,8,125,0,0,8,61,0,0,9,218,0,18,7,23,0,0,8,109,0,0,8,45,0,0,9,186,0,0,8,13,0,0,8,141,0,0,8,77,0,0,9,250,0,16,7,3,0,0,8,83,0,0,8,19,0,21,8,195,0,19,7,35,0,0,8,115,0,0,8,51,0,0,9,198,0,17,7,11,0,0,8,99,0,0,8,35,0,0,9,166,0,0,8,3,0,0,8,131,0,0,8,67,0,0,9,230,0,16,7,7,0,0,8,91,0,0,8,27,0,0,9,150,0,20,7,67,0,0,8,123,0,0,8,59,0,0,9,214,0,18,7,19,0,0,8,107,0,0,8,43,0,0,9,182,0,0,8,11,0,0,8,139,0,0,8,75,0,0,9,246,0,16,7,5,0,0,8,87,0,0,8,23,0,64,8,0,0,19,7,51,0,0,8,119,0,0,8,55,0,0,9,206,0,17,7,15,0,0,8,103,0,0,8,39,0,0,9,174,0,0,8,7,0,0,8,135,0,0,8,71,0,0,9,238,0,16,7,9,0,0,8,95,0,0,8,31,0,0,9,158,0,20,7,99,0,0,8,127,0,0,8,63,0,0,9,222,0,18,7,27,0,0,8,111,0,0,8,47,0,0,9,190,0,0,8,15,0,0,8,143,0,0,8,79,0,0,9,254,0,96,7,0,0,0,8,80,0,0,8,16,0,20,8,115,0,18,7,31,0,0,8,112,0,0,8,48,0,0,9,193,0,16,7,10,0,0,8,96,0,0,8,32,0,0,9,161,0,0,8,0,0,0,8,128,0,0,8,64,0,0,9,225,0,16,7,6,0,0,8,88,0,0,8,24,0,0,9,145,0,19,7,59,0,0,8,120,0,0,8,56,0,0,9,209,0,17,7,17,0,0,8,104,0,0,8,40,0,0,9,177,0,0,8,8,0,0,8,136,0,0,8,72,0,0,9,241,0,16,7,4,0,0,8,84,0,0,8,20,0,21,8,227,0,19,7,43,0,0,8,116,0,0,8,52,0,0,9,201,0,17,7,13,0,0,8,100,0,0,8,36,0,0,9,169,0,0,8,4,0,0,8,132,0,0,8,68,0,0,9,233,0,16,7,8,0,0,8,92,0,0,8,28,0,0,9,153,0,20,7,83,0,0,8,124,0,0,8,60,0,0,9,217,0,18,7,23,0,0,8,108,0,0,8,44,0,0,9,185,0,0,8,12,0,0,8,140,0,0,8,76,0,0,9,249,0,16,7,3,0,0,8,82,0,0,8,18,0,21,8,163,0,19,7,35,0,0,8,114,0,0,8,50,0,0,9,197,0,17,7,11,0,0,8,98],"i8",4,B.j),M([8,34,0,0,9,165,0,0,8,2,0,0,8,130,0,0,8,66,0,0,9,229,0,16,7,7,0,0,8,90,0,0,8,26,0,0,9,149,0,20,7,67,0,0,8,122,0,0,8,58,0,0,9,213,0,18,7,19,0,0,8,106,0,0,8,42,0,0,9,181,0,0,8,10,0,0,8,138,0,0,8,74,0,0,9,245,0,16,7,5,0,0,8,86,0,0,8,22,0,64,8,0,0,19,7,51,0,0,8,118,0,0,8,54,0,0,9,205,0,17,7,15,0,0,8,102,0,0,8,38,0,0,9,173,0,0,8,6,0,0,8,134,0,0,8,70,0,0,9,237,0,16,7,9,0,0,8,94,0,0,8,30,0,0,9,157,0,20,7,99,0,0,8,126,0,0,8,62,0,0,9,221,0,18,7,27,0,0,8,110,0,0,8,46,0,0,9,189,0,0,8,14,0,0,8,142,0,0,8,78,0,0,9,253,0,96,7,0,0,0,8,81,0,0,8,17,0,21,8,131,0,18,7,31,0,0,8,113,0,0,8,49,0,0,9,195,0,16,7,10,0,0,8,97,0,0,8,33,0,0,9,163,0,0,8,1,0,0,8,129,0,0,8,65,0,0,9,227,0,16,7,6,0,0,8,89,0,0,8,25,0,0,9,147,0,19,7,59,0,0,8,121,0,0,8,57,0,0,9,211,0,17,7,17,0,0,8,105,0,0,8,41,0,0,9,179,0,0,8,9,0,0,8,137,0,0,8,73,0,0,9,243,0,16,7,4,0,0,8,85,0,0,8,21,0,16,8,2,1,19,7,43,0,0,8,117,0,0,8,53,0,0,9,203,0,17,7,13,0,0,8,101,0,0,8,37,0,0,9,171,0,0,8,5,0,0,8,133,0,0,8,69,0,0,9,235,0,16,7,8,0,0,8,93,0,0,8,29,0,0,9,155,0,20,7,83,0,0,8,125,0,0,8,61,0,0,9,219,0,18,7,23,0,0,8,109,0,0,8,45,0,0,9,187,0,0,8,13,0,0,8,141,0,0,8,77,0,0,9,251,0,16,7,3,0,0,8,83,0,0,8,19,0,21,8,195,0,19,7,35,0,0,8,115,0,0,8,51,0,0,9,199,0,17,7,11,0,0,8,99,0,0,8,35,0,0,9,167,0,0,8,3,0,0,8,131,0,0,8,67,0,0,9,231,0,16,7,7,0,0,8,91,0,0,8,27,0,0,9,151,0,20,7,67,0,0,8,123,0,0,8,59,0,0,9,215,0,18,7,19,0,0,8,107,0,0,8,43,0,0,9,183,0,0,8,11,0,0,8,139,0,0,8,75,0,0,9,247,0,16,7,5,0,0,8,87,0,0,8,23,0,64,8,0,0,19,7,51,0,0,8,119,0,0,8,55,0,0,9,207,0,17,7,15,0,0,8,103,0,0,8,39,0,0,9,175,0,0,8,7,0,0,8,135,0,0,8,71,0,0,9,239,0,16,7,9,0,0,8,95,0,0,8,31,0,0,9,159,0,20,7,99,0,0,8,127,0,0,8,63,0,0,9,223,0,18,7,27,0,0,8,111,0,0,8,47,0,0,9,191,0,0,8,15,0,0,8,143,0,0,8,79,0,0,9,255,0,16,5,1,0,23,5,1,1,19,5,17,0,27,5,1,16,17,5,5,0,25,5,1,4,21,5,65,0,29,5,1,64,16,5,3,0,24,5,1,2,20,5,33,0,28,5,1,32,18,5,9,0,26,5,1,8,22,5,129,0,64,5,0,0,16,5,2,0,23,5,129,1,19,5,25,0,27,5,1,24,17,5,7,0,25,5,1,6,21,5,97,0,29,5,1,96,16,5,4,0,24,5,1,3,20,5,49,0,28,5,1,48,18,5,13,0,26,5,1,12,22,5,193,0,64,5,0,0,16,0,17,0,18,0,0,0,8,0,7,0,9,0,6,0,10,0,5,0,11,0,4,0,12,0,3,0,13,0,2,0,14,0,1,0,15,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,13,0,15,0,17,0,19,0,23,0,27,0,31,0,35,0,43,0,51,0,59,0,67,0,83,0,99,0,115,0,131,0,163,0,195,0,227,0,2,1,0,0,0,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,17,0,17,0,17,0,17,0,18,0,18,0,18,0,18,0,19,0,19,0,19,0,19,0,20,0,20,0,20,0,20,0,21,0,21,0,21,0,21,0,16,0,72,0,78,0,1,0,2,0,3,0,4,0,5,0,7,0,9,0,13,0,17,0,25,0,33,0,49,0,65,0,97,0,129,0,193,0,1,1,129,1,1,2,1,3,1,4,1,6,1,8,1,12,1,16,1,24,1,32,1,48,1,64,1,96,0,0,0,0,16,0,16,0,16,0,16,0,17,0,17,0,18,0,18,0,19,0,19,0,20,0,20,0,21,0,21,0,22,0,22,0,23,0,23,0,24,0,24,0,25,0,25,0,26,0,26,0,27,0,27,0,28,0,28,0,29,0,29,0,64,0,64,0,12,0,8,0,140,0,8,0,76,0,8,0,204,0,8,0,44,0,8,0,172,0,8,0,108,0,8,0,236,0,8,0,28,0,8,0,156,0,8,0,92,0,8,0,220,0,8,0,60,0,8,0,188,0,8,0,124,0,8,0,252,0,8,0,2,0,8,0,130,0,8,0,66,0,8,0,194,0,8,0,34,0,8,0,162,0,8,0,98,0,8,0,226,0,8,0,18,0,8,0,146,0,8,0,82,0,8,0,210,0,8,0,50,0,8,0,178,0,8,0,114,0,8,0,242,0,8,0,10,0,8,0,138,0,8,0,74,0,8,0,202,0,8,0,42,0,8,0,170,0,8,0,106,0,8,0,234,0,8,0,26,0,8,0,154,0,8,0,90,0,8,0,218,0,8,0,58,0,8,0,186,0,8,0,122,0,8,0,250,0,8,0,6,0,8,0,134,0,8,0,70,0,8,0,198,0,8,0,38,0,8,0,166,0,8,0,102,0,8,0,230,0,8,0,22,0,8,0,150,0,8,0,86,0,8,0,214,0,8,0,54,0,8,0,182,0,8,0,118,0,8,0,246,0,8,0,14,0,8,0,142,0,8,0,78,0,8,0,206,0,8,0,46,0,8,0,174,0,8,0,110,0,8,0,238,0,8,0,30,0,8,0,158,0,8,0,94,0,8,0,222,0,8,0,62,0,8,0,190,0,8,0,126,0,8,0,254,0,8,0,1,0,8,0,129,0,8,0,65,0,8,0,193,0,8,0,33,0,8,0,161,0,8,0,97,0,8,0,225,0,8,0,17,0,8,0,145,0,8,0,81,0,8,0,209,0,8,0,49,0,8,0,177,0,8,0,113,0,8,0,241,0,8,0,9,0,8,0,137,0,8,0,73,0,8,0,201,0,8,0,41,0,8,0,169,0,8,0,105,0,8,0,233,0,8,0,25,0,8,0,153,0,8,0,89,0,8,0,217,0,8,0,57,0,8,0,185,0,8,0,121,0,8,0,249,0,8,0,5,0,8,0,133,0,8,0,69,0,8,0,197,0,8,0,37,0,8,0,165,0,8,0,101,0,8,0,229,0,8,0,21,0,8,0,149,0,8,0,85,0,8,0,213,0,8,0,53,0,8,0,181,0,8,0,117,0,8,0,245,0,8,0,13,0,8,0,141,0,8,0,77,0,8,0,205,0,8,0,45,0,8,0,173,0,8,0,109,0,8,0,237,0,8,0,29,0,8,0,157,0,8,0,93,0,8,0,221,0,8,0,61,0,8,0,189,0,8,0,125,0,8,0,253,0,8,0,19,0,9,0,19,1,9,0,147,0,9,0,147,1,9,0,83,0,9,0,83,1,9,0,211,0,9,0,211,1,9,0,51,0,9,0,51,1,9,0,179,0,9,0,179,1,9,0,115,0,9,0,115,1,9,0,243,0,9,0,243,1,9,0,11,0,9,0,11,1,9,0,139,0,9,0,139,1,9,0,75,0,9,0,75,1,9,0,203,0,9,0,203,1,9,0,43,0,9,0,43,1,9,0,171,0,9,0,171,1,9,0,107,0,9,0,107,1,9,0,235,0,9,0,235,1,9,0,27,0,9,0,27,1,9,0,155,0,9,0,155,1,9,0,91,0,9,0,91,1,9,0,219,0,9,0,219,1,9,0,59,0,9,0,59,1,9,0,187,0,9,0,187,1,9,0,123,0,9,0,123,1,9,0,251,0,9,0,251,1,9,0,7,0,9,0,7,1,9,0,135,0,9,0,135,1,9,0,71,0,9,0,71,1,9,0,199,0,9,0,199,1,9,0,39,0,9,0,39,1,9,0,167,0,9,0,167,1,9,0,103,0,9,0,103,1,9,0,231,0,9,0,231,1,9,0,23,0,9,0,23,1,9,0,151,0,9,0,151,1,9,0,87,0,9,0,87,1,9,0,215,0,9,0,215,1,9,0,55,0,9,0,55,1,9,0,183,0,9,0,183,1,9,0,119,0,9,0,119,1,9,0,247,0,9,0,247,1,9,0,15,0,9,0,15,1,9,0,143,0,9,0,143,1,9,0,79,0,9,0,79,1,9,0,207,0,9,0,207,1,9,0,47,0,9,0,47,1,9,0,175,0,9,0,175,1,9,0,111,0,9,0,111,1,9,0,239,0,9,0,239,1,9,0,31,0,9,0,31,1,9,0,159,0,9,0,159,1,9,0,95,0,9,0,95,1,9,0,223,0,9,0,223,1,9,0,63,0,9,0,63,1,9,0,191,0,9,0,191,1,9,0,127,0,9,0,127,1,9,0,255,0,9,0,255,1,9,0,0,0,7,0,64,0,7,0,32,0,7,0,96,0,7,0,16,0,7,0,80,0,7,0,48,0,7,0,112,0,7,0,8,0,7,0,72,0,7,0,40,0,7,0,104,0,7,0,24,0,7,0,88,0,7,0,56,0,7,0,120,0,7,0,4,0,7,0,68,0,7,0,36,0,7,0,100,0,7,0,20,0,7,0,84,0,7,0,52,0,7,0,116,0,7,0,3,0,8,0,131,0,8,0,67,0,8,0,195,0,8,0,35,0,8,0,163,0,8,0,99,0,8,0,227,0,8,0,0,0,5,0,16,0,5,0,8,0,5,0,24,0,5,0,4,0,5,0,20,0,5,0,12,0,5,0,28,0,5,0,2,0,5,0,18,0,5,0,10,0,5,0,26,0,5,0,6,0,5,0,22,0,5,0,14,0,5,0,30,0,5,0,1,0,5,0,17,0,5,0,9,0,5,0,25,0,5,0,5,0,5,0,21,0,5,0,13,0,5,0,29,0,5,0,3,0,5,0,19,0,5,0,11,0,5,0,27,0,5,0,7,0,5,0,23,0,5,0,123,114,101,116,117,114,110,32,90,76,73,66,74,83,95,114,101,97,100,40,36,48,44,32,36,49,44,32,36,50,41,125,0,123,90,76,73,66,74,83,95,119,114,105,116,101,40,36,48,44,32,36,49,44,32,36,50,41,125,0,49,46,50,46,56,0,105,110,99,111,114,114,101,99,116,32,104,101,97,100,101,114,32,99,104,101,99,107,0,117,110,107,110,111,119,110,32,99,111,109,112,114,101,115,115,105,111,110,32,109,101,116,104,111,100,0,105,110,118,97,108,105,100,32,119,105,110,100,111,119,32,115,105,122,101,0,117,110,107,110,111,119,110,32,104,101,97,100,101,114,32,102,108,97,103,115,32,115,101,116,0,104,101,97,100,101,114,32,99,114,99,32,109,105,115,109,97,116,99,104,0,105,110,118,97,108,105,100,32,98,108,111,99,107,32,116,121,112,101,0,105,110,118,97,108,105,100,32,115,116,111,114,101,100,32,98,108,111,99,107,32,108,101,110,103,116,104,115,0,116,111,111,32,109,97,110,121,32,108,101,110,103,116,104,32,111,114,32,100,105,115,116,97,110,99,101,32,115,121,109,98,111,108,115,0,105,110,118,97,108,105,100,32,99,111,100,101,32,108,101,110,103,116,104,115,32,115,101,116,0,105,110,118,97,108,105,100,32,98,105,116,32,108,101,110,103,116,104,32,114,101,112,101,97,116,0,105,110,118,97,108,105,100,32,99,111,100,101,32,45,45,32,109,105,115,115,105,110,103,32,101,110,100,45,111,102,45,98,108,111,99,107,0,105,110,118,97,108,105,100,32,108,105,116,101,114,97,108,47,108,101,110,103,116,104,115,32,115,101,116,0,105,110,118,97,108,105,100,32,100,105,115,116,97,110,99,101,115,32,115,101,116,0,105,110,99,111,114,114,101,99,116,32,100,97,116,97,32,99,104,101,99,107,0,105,110,99,111,114,114,101,99,116,32,108,101,110,103,116,104,32,99,104,101,99,107,0,0,1,2,3,4,4,5,5,6,6,6,6,7,7,7,7,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,0,0,16,17,18,18,19,19,20,20,20,20,21,21,21,21,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,0,1,2,3,4,5,6,7,8,8,9,9,10,10,11,11,12,12,12,12,13,13,13,13,14,14,14,14,15,15,15,15,16,16,16,16,16,16,16,16,17,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,28,16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15,115,116,114,101,97,109,32,101,114,114,111,114,0,105,110,115,117,102,102,105,99,105,101,110,116,32,109,101,109,111,114,121,0,98,117,102,102,101,114,32,101,114,114,111,114,0,105,110,118,97,108,105,100,32,100,105,115,116,97,110,99,101,32,116,111,111,32,102,97,114,32,98,97,99,107,0,105,110,118,97,108,105,100,32,100,105,115,116,97,110,99,101,32,99,111,100,101,0,105,110,118,97,108,105,100,32,108,105,116,101,114,97,108,47,108,101,110,103,116,104,32,99,111,100,101,0],"i8",4,B.j+10241);var ua=C,C=C+16;function Y(e){Y.s||(D=ia(),Y.s=!0,assert(B.b),Y.o=B.b,B.b=function(){F("cannot dynamically allocate, sbrk now has control")});var t=D;return 0==e||Y.o(e)?t:4294967295}b._memset=va,b._llvm_bswap_i32=wa,b._pthread_self=xa,b._memcpy=ya,la=z=B.k(C),S=la+ma,D=B.k(S),b.q={Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:1/0},b.r={abort:F,assert:assert,invoke_iiii:function(e,t,r,i){try{return b.dynCall_iiii(e,t,r,i)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Z.setThrew(1,0)}},invoke_vii:function(e,t,r){try{b.dynCall_vii(e,t,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Z.setThrew(1,0)}},invoke_iii:function(e,t,r){try{return b.dynCall_iii(e,t,r)}catch(e){if("number"!=typeof e&&"longjmp"!==e)throw e;Z.setThrew(1,0)}},_sbrk:Y,_emscripten_memcpy_big:function(e,t,r){return O.set(O.subarray(t,t+r),e),e},_abort:function(){b.abort()},_emscripten_asm_const_iiii:function(e,t,r,i){return ta[e](t,r,i)},STACKTOP:z,STACK_MAX:S,tempDoublePtr:ua,ABORT:G};var Z=function(e,t,r){"use asm";var i=new e.Int8Array(r);var n=new e.Int16Array(r);var a=new e.Int32Array(r);var o=new e.Uint8Array(r);var s=new e.Uint16Array(r);var f=new e.Uint32Array(r);var l=new e.Float32Array(r);var u=new e.Float64Array(r);var c=t.STACKTOP|0;var h=t.STACK_MAX|0;var d=t.tempDoublePtr|0;var p=t.ABORT|0;var b=0;var y=0;var w=0;var g=0;var v=e.NaN,m=e.Infinity;var k=0,_=0,S=0,A=0,E=0.0,B=0,R=0,x=0,T=0.0;var M=0;var U=0;var I=0;var P=0;var O=0;var L=0;var z=0;var C=0;var D=0;var j=0;var F=e.Math.floor;var N=e.Math.abs;var Z=e.Math.sqrt;var H=e.Math.pow;var Y=e.Math.cos;var J=e.Math.sin;var q=e.Math.tan;var W=e.Math.acos;var V=e.Math.asin;var G=e.Math.atan;var $=e.Math.atan2;var K=e.Math.exp;var X=e.Math.log;var Q=e.Math.ceil;var ee=e.Math.imul;var te=e.Math.min;var re=e.Math.clz32;var ie=t.abort;var ne=t.assert;var ae=t.invoke_iiii;var oe=t.invoke_vii;var se=t.invoke_iii;var fe=t._sbrk;var le=t._emscripten_memcpy_big;var ue=t._abort;var ce=t._emscripten_asm_const_iiii;var he=0.0;function de(e){e=e|0;var t=0;t=c;c=c+e|0;c=c+15&-16;return t|0}function pe(){return c|0}function be(e){e=e|0;c=e}function ye(e,t){e=e|0;t=t|0;c=e;h=t}function we(e,t){e=e|0;t=t|0;if(!b){b=e;y=t}}function ge(e){e=e|0;i[d>>0]=i[e>>0];i[d+1>>0]=i[e+1>>0];i[d+2>>0]=i[e+2>>0];i[d+3>>0]=i[e+3>>0]}function ve(e){e=e|0;i[d>>0]=i[e>>0];i[d+1>>0]=i[e+1>>0];i[d+2>>0]=i[e+2>>0];i[d+3>>0]=i[e+3>>0];i[d+4>>0]=i[e+4>>0];i[d+5>>0]=i[e+5>>0];i[d+6>>0]=i[e+6>>0];i[d+7>>0]=i[e+7>>0]}function me(e){e=e|0;M=e}function ke(){return M|0}function _e(e){e=e|0;if((a[3507]|0)>>>0>=e>>>0)return;a[3507]=e;Ke(a[3508]|0);Ke(a[3509]|0);e=a[3507]|0;a[3508]=$e(e)|0;a[3509]=$e(e)|0;return}function Se(e,t){e=e|0;t=t|0;var r=0;r=$e(56)|0;a[r+32>>2]=0;a[r+36>>2]=0;a[r+40>>2]=0;if(!(Te(r,e,8,t*15|0,9,0,12726,56)|0)){t=r;return t|0}Me(r)|0;t=0;return t|0}function Ae(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,o=0;a[e+4>>2]=ce(0,e|0,a[3508]|0,t|0)|0;a[e>>2]=a[3508];n=e+16|0;o=e+12|0;i=r|0?4:0;while(1){a[n>>2]=t;a[o>>2]=a[3509];r=ze(e,i)|0;if((r|0)==-2){r=-2;i=4;break}ce(1,e|0,a[3509]|0,t-(a[n>>2]|0)|0)|0;if(a[n>>2]|0){i=4;break}}if((i|0)==4)return r|0;return 0}function Ee(e){e=e|0;Me(e)|0;return}function Be(e){e=e|0;var t=0,r=0,i=0,n=0,o=0,s=0,f=0,l=0,u=0,c=0,h=0,d=0;u=$e(56)|0;t=u+32|0;a[t>>2]=0;c=u+36|0;a[c>>2]=0;d=u+40|0;a[d>>2]=0;a[u+4>>2]=0;a[u>>2]=0;r=e*15|0;if(!u){d=0;return d|0}f=u+24|0;a[f>>2]=0;a[t>>2]=1;a[d>>2]=0;a[c>>2]=1;s=qe(0,1,7116)|0;h=u+28|0;if(!s){t=a[h>>2]|0;if(!t){d=0;return d|0}e=a[c>>2]|0;if(!e){d=0;return d|0}r=a[t+52>>2]|0;if(r){ut[e&1](a[d>>2]|0,r);e=a[c>>2]|0;t=a[h>>2]|0}ut[e&1](a[d>>2]|0,t);a[h>>2]=0;d=0;return d|0}a[h>>2]=s;a[s+52>>2]=0;o=a[h>>2]|0;do{if(o|0){if((e|0)<0){t=0-r|0;n=0}else{if((r|0)>=48)break;t=r&15;n=(r>>4)+1|0}if(t){if((t&-8|0)!=8)break}else t=0;e=o+52|0;r=a[e>>2]|0;i=o+36|0;if(r|0?(a[i>>2]|0)!=(t|0):0){ut[a[c>>2]&1](a[d>>2]|0,r);a[e>>2]=0}a[o+8>>2]=n;a[i>>2]=t;t=a[h>>2]|0;if(t|0?(a[t+40>>2]=0,a[t+44>>2]=0,a[t+48>>2]=0,l=a[h>>2]|0,l|0):0){a[l+28>>2]=0;a[u+20>>2]=0;a[u+8>>2]=0;a[f>>2]=0;t=a[l+8>>2]|0;if(t|0)a[u+48>>2]=t&1;a[l>>2]=0;a[l+4>>2]=0;a[l+12>>2]=0;a[l+20>>2]=32768;a[l+32>>2]=0;a[l+56>>2]=0;a[l+60>>2]=0;d=l+1328|0;a[l+108>>2]=d;a[l+80>>2]=d;a[l+76>>2]=d;a[l+7104>>2]=1;a[l+7108>>2]=-1;d=u;return d|0}}}while(0);ut[a[c>>2]&1](a[d>>2]|0,s);a[h>>2]=0;d=0;return d|0}function Re(e,t){e=e|0;t=t|0;var r=0,f=0,l=0,u=0,h=0,d=0,p=0,b=0,y=0,w=0,g=0,v=0,m=0,k=0,_=0,S=0,A=0,E=0,B=0,R=0,x=0,T=0,M=0,U=0,I=0,P=0,O=0,L=0,z=0,C=0,D=0,j=0,F=0,N=0,Z=0,H=0,Y=0,J=0,q=0,W=0,V=0,G=0,$=0,K=0,X=0,Q=0,ee=0,te=0,re=0,ie=0,ne=0,ae=0,oe=0,se=0,fe=0,le=0,ue=0,he=0,de=0,pe=0,be=0,ye=0,we=0,ge=0,ve=0,me=0,ke=0,_e=0,Se=0,Ae=0,Ee=0,Be=0,Re=0,xe=0,Te=0,Me=0,Ue=0,Ie=0,Pe=0,Oe=0,Le=0,ze=0,De=0,je=0,Fe=0,Ne=0,Ze=0,He=0,Ye=0,Je=0,qe=0,We=0;We=c;c=c+16|0;Je=We;He=e+4|0;a[He>>2]=ce(0,e|0,a[3508]|0,t|0)|0;a[e>>2]=a[3508];Ye=e+16|0;qe=e+12|0;Te=e+28|0;Le=e+24|0;ze=e+48|0;De=Je+1|0;je=e+20|0;Fe=Je+2|0;Ne=Je+3|0;Ze=e+8|0;Be=e+44|0;Re=e+32|0;xe=e+40|0;e:while(1){a[Ye>>2]=t;Ae=a[3509]|0;a[qe>>2]=Ae;Ee=a[Te>>2]|0;f=Ae;t:do{if(!((Ee|0)==0|(Ae|0)==0)){l=a[e>>2]|0;if((l|0)==0?a[He>>2]|0:0){r=-2;N=368;break}r=a[Ee>>2]|0;if((r|0)==11){a[Ee>>2]=12;r=12;f=a[qe>>2]|0;l=a[e>>2]|0;b=a[Ye>>2]|0}else b=t;ke=a[He>>2]|0;_e=Ee+60|0;ye=Ee+56|0;ge=Ee+8|0;me=Ee+16|0;H=Ee+32|0;Y=Ee+36|0;J=Ee+20|0;Se=Ee+24|0;q=Ee+64|0;W=Ee+12|0;Ae=Ee+4|0;V=Ee+76|0;G=Ee+84|0;$=Ee+80|0;K=Ee+88|0;X=Ee+104|0;Q=Ee+96|0;ee=Ee+100|0;te=Ee+624|0;re=Ee+1328|0;ie=Ee+108|0;Z=re;ne=Ee+112|0;ae=Ee+752|0;oe=Ee+7108|0;se=Ee+72|0;fe=Ee+7112|0;le=Ee+68|0;ue=Ee+44|0;he=Ee+7104|0;de=Ee+48|0;pe=Ee+52|0;we=Ee+40|0;ve=Ee+28|0;be=Ee+92|0;y=r;h=a[_e>>2]|0;p=ke;u=a[ye>>2]|0;d=b;w=b;r=0;r:while(1){i:do{switch(y|0){case 30:break e;case 28:{r=1;N=347;break r}case 29:{r=-3;break r}case 0:{b=a[ge>>2]|0;if(!b){a[Ee>>2]=12;g=d;break i}while(1){if(h>>>0>=16)break;if(!p){p=0;break r}F=u+(o[l>>0]<>2]=0;i[Je>>0]=31;i[De>>0]=-117;a[Se>>2]=Ge(a[Se>>2]|0,Je,2)|0;a[Ee>>2]=1;h=0;u=0;g=d;break i}a[me>>2]=0;y=a[H>>2]|0;if(y){a[y+48>>2]=-1;b=a[ge>>2]|0}if(b&1|0?((((u<<8&65280)+(u>>>8)|0)>>>0)%31|0|0)==0:0){if((u&15|0)!=8){a[Le>>2]=12755;a[Ee>>2]=29;g=d;break i}g=u>>>4;h=h+-4|0;b=(g&15)+8|0;y=a[Y>>2]|0;if(y){if(b>>>0>y>>>0){a[Le>>2]=12782;a[Ee>>2]=29;u=g;g=d;break i}}else a[Y>>2]=b;a[J>>2]=1<>2]=1;a[ze>>2]=1;a[Ee>>2]=u>>>12&2^11;h=0;u=0;g=d;break i}a[Le>>2]=12732;a[Ee>>2]=29;g=d;break}case 1:{while(1){if(h>>>0>=16)break;if(!p){p=0;break r}u=u+(o[l>>0]<>2]=u;if((u&255|0)!=8){a[Le>>2]=12755;a[Ee>>2]=29;g=d;break i}if(u&57344|0){a[Le>>2]=12802;a[Ee>>2]=29;g=d;break i}h=a[H>>2]|0;if(!h)h=u;else{a[h>>2]=u>>>8&1;h=a[me>>2]|0}if(h&512|0){i[Je>>0]=u;i[De>>0]=u>>>8;a[Se>>2]=Ge(a[Se>>2]|0,Je,2)|0}a[Ee>>2]=2;h=0;u=0;N=44;break}case 2:{N=44;break}case 3:{N=52;break}case 4:{N=60;break}case 5:{N=71;break}case 6:{b=a[me>>2]|0;N=81;break}case 7:{N=94;break}case 8:{N=107;break}case 9:{while(1){if(h>>>0>=32)break;if(!p){p=0;break r}F=u+(o[l>>0]<>2]=h;a[ze>>2]=h;a[Ee>>2]=10;h=0;u=0;N=120;break}case 10:{N=120;break}case 12:case 11:{b=h;N=123;break}case 13:{b=h&-8;u=u>>>(h&7);while(1){if(b>>>0>=32)break;if(!p){h=b;p=0;break r}F=u+(o[l>>0]<>>16^65535|0)){a[q>>2]=h;a[Ee>>2]=14;h=0;u=0;N=142;break i}else{a[Le>>2]=12866;a[Ee>>2]=29;h=b;g=d;break i}}case 14:{N=142;break}case 15:{N=143;break}case 16:{while(1){if(h>>>0>=14)break;if(!p){p=0;break r}F=u+(o[l>>0]<>2]=j;F=(u>>>5&31)+1|0;a[ee>>2]=F;b=(u>>>10&15)+4|0;a[be>>2]=b;u=u>>>14;h=h+-14|0;if(j>>>0>286|F>>>0>30){a[Le>>2]=12895;a[Ee>>2]=29;g=d;break i}else{a[X>>2]=0;a[Ee>>2]=17;y=0;N=153;break i}}case 17:{y=a[X>>2]|0;b=a[be>>2]|0;N=153;break}case 18:{N=164;break}case 19:{N=203;break}case 20:{N=204;break}case 21:{y=a[se>>2]|0;N=283;break}case 22:{N=290;break}case 23:{b=a[se>>2]|0;N=304;break}case 24:{N=310;break}case 25:{if(!d){d=0;N=347;break r}i[f>>0]=a[q>>2];a[Ee>>2]=20;g=d+-1|0;f=f+1|0;break}case 26:{if(a[ge>>2]|0){while(1){if(h>>>0>=32)break;if(!p){p=0;break r}F=u+(o[l>>0]<>2]=(a[je>>2]|0)+g;a[ve>>2]=(a[ve>>2]|0)+g;if((w|0)!=(d|0)){b=a[Se>>2]|0;y=f+(0-g)|0;if(!(a[me>>2]|0))b=Ve(b,y,g)|0;else b=Ge(b,y,g)|0;a[Se>>2]=b;a[ze>>2]=b}j=(a[me>>2]|0)==0;F=et(u|0)|0;if(((j?F:u)|0)==(a[Se>>2]|0)){h=0;u=0;w=d}else{a[Le>>2]=13069;a[Ee>>2]=29;g=d;w=d;break i}}a[Ee>>2]=27;N=339;break}case 27:{N=339;break}default:{r=-2;N=368;break t}}}while(0);do{if((N|0)==44){while(1){N=0;if(h>>>0>=32)break;if(!p){p=0;break r}N=u+(o[l>>0]<>2]|0;if(h|0)a[h+4>>2]=u;if(a[me>>2]&512|0){i[Je>>0]=u;i[De>>0]=u>>>8;i[Fe>>0]=u>>>16;i[Ne>>0]=u>>>24;a[Se>>2]=Ge(a[Se>>2]|0,Je,4)|0}a[Ee>>2]=3;h=0;u=0;N=52}else if((N|0)==120){if(!(a[W>>2]|0)){N=121;break e}a[Se>>2]=1;a[ze>>2]=1;a[Ee>>2]=11;b=h;N=123}else if((N|0)==142){a[Ee>>2]=15;N=143}else if((N|0)==153){N=0;while(1){if(y>>>0>=b>>>0){r=y;break}while(1){if(h>>>0>=3)break;if(!p){p=0;break r}F=u+(o[l>>0]<>2]=F;n[Ee+112+(s[11104+(y<<1)>>1]<<1)>>1]=u&7;y=F;h=h+-3|0;u=u>>>3}while(1){if(r>>>0>=19)break;F=r+1|0;a[X>>2]=F;n[Ee+112+(s[11104+(r<<1)>>1]<<1)>>1]=0;r=F}a[ie>>2]=re;a[V>>2]=Z;a[G>>2]=7;r=Ce(0,ne,19,ie,G,ae)|0;if(!r){a[X>>2]=0;a[Ee>>2]=18;r=0;N=164;break}else{a[Le>>2]=12931;a[Ee>>2]=29;g=d;break}}else if((N|0)==339){N=0;if(!(a[ge>>2]|0)){r=p;N=346;break r}if(!(a[me>>2]|0)){r=p;N=346;break r}while(1){if(h>>>0>=32)break;if(!p){p=0;break r}F=u+(o[l>>0]<>2]|0)){h=0;r=p;u=0;N=346;break r}a[Le>>2]=13090;a[Ee>>2]=29;g=d}}while(0);do{if((N|0)==52){while(1){N=0;if(h>>>0>=16)break;if(!p){p=0;break r}N=u+(o[l>>0]<>2]|0;if(h|0){a[h+8>>2]=u&255;a[(a[H>>2]|0)+12>>2]=u>>>8}if(a[me>>2]&512|0){i[Je>>0]=u;i[De>>0]=u>>>8;a[Se>>2]=Ge(a[Se>>2]|0,Je,2)|0}a[Ee>>2]=4;h=0;u=0;N=60}else if((N|0)==123){N=0;if(!(a[Ae>>2]|0))h=b;else{a[Ee>>2]=26;h=b&-8;u=u>>>(b&7);g=d;break}while(1){if(h>>>0>=3)break;if(!p){p=0;break r}F=u+(o[l>>0]<>2]=u&1;switch(u>>>1&3|0){case 0:{a[Ee>>2]=13;break}case 1:{a[V>>2]=8928;a[G>>2]=9;a[$>>2]=10976;a[K>>2]=5;a[Ee>>2]=19;break}case 2:{a[Ee>>2]=16;break}case 3:{a[Le>>2]=12847;a[Ee>>2]=29;break}default:{N=133;break e}}h=h+-3|0;u=u>>>3;g=d}else if((N|0)==143){N=0;b=a[q>>2]|0;if(!b){a[Ee>>2]=11;g=d;break}b=b>>>0>p>>>0?p:b;b=b>>>0>d>>>0?d:b;if(!b){N=347;break r}rt(f|0,l|0,b|0)|0;a[q>>2]=(a[q>>2]|0)-b;p=p-b|0;g=d-b|0;l=l+b|0;f=f+b|0}else if((N|0)==164){N=0;i:while(1){m=a[X>>2]|0;k=(a[Q>>2]|0)+(a[ee>>2]|0)|0;if(m>>>0>=k>>>0){N=195;break}y=(1<>2])+-1|0;g=a[V>>2]|0;while(1){b=g+((u&y)<<2)|0;b=s[b>>1]|s[b+2>>1]<<16;v=b>>>8&255;if(h>>>0>=v>>>0)break;if(!p){p=0;break r}F=u+(o[l>>0]<>>16&65535;if((b&65535)<16){a[X>>2]=m+1;n[Ee+112+(m<<1)>>1]=b;h=h-v|0;u=u>>>v;continue}switch(b<<16>>16){case 16:{b=v+2|0;while(1){if(h>>>0>=b>>>0)break;if(!p){p=0;break r}F=u+(o[l>>0]<>>v;h=h-v|0;if(!m){N=178;break i}h=h+-2|0;b=(u&3)+3|0;u=u>>>2;y=s[Ee+112+(m+-1<<1)>>1]|0;break}case 17:{b=v+3|0;while(1){if(h>>>0>=b>>>0)break;if(!p){p=0;break r}F=u+(o[l>>0]<>>v;h=h-v+-3|0;b=(u&7)+3|0;u=u>>>3;y=0;break}default:{b=v+7|0;while(1){if(h>>>0>=b>>>0)break;if(!p){p=0;break r}F=u+(o[l>>0]<>>v;h=h-v+-7|0;b=(u&127)+11|0;u=u>>>7;y=0}}if((m+b|0)>>>0>k>>>0){N=192;break}y=y&65535;while(1){if(!b)continue i;F=a[X>>2]|0;a[X>>2]=F+1;n[Ee+112+(F<<1)>>1]=y;b=b+-1|0}}if((N|0)==178){N=0;a[Le>>2]=12956;a[Ee>>2]=29;g=d;break}else if((N|0)==192){N=0;a[Le>>2]=12956;a[Ee>>2]=29;g=d;break}else if((N|0)==195){N=0;if((a[Ee>>2]|0)==29){g=d;break}if(!(n[te>>1]|0)){a[Le>>2]=12982;a[Ee>>2]=29;g=d;break}a[ie>>2]=re;a[V>>2]=Z;a[G>>2]=9;r=Ce(1,ne,a[Q>>2]|0,ie,G,ae)|0;if(r|0){a[Le>>2]=13019;a[Ee>>2]=29;g=d;break}a[$>>2]=a[ie>>2];a[K>>2]=6;r=Ce(2,Ee+112+(a[Q>>2]<<1)|0,a[ee>>2]|0,ie,K,ae)|0;if(!r){a[Ee>>2]=19;r=0;N=203;break}else{a[Le>>2]=13047;a[Ee>>2]=29;g=d;break}}}}while(0);if((N|0)==60){N=0;b=a[me>>2]|0;if(!(b&1024)){b=a[H>>2]|0;if(b)a[b+16>>2]=0}else{while(1){if(h>>>0>=16)break;if(!p){p=0;break r}F=u+(o[l>>0]<>2]=u;h=a[H>>2]|0;if(!h)h=b;else{a[h+20>>2]=u;h=a[me>>2]|0}if(!(h&512)){h=0;u=0}else{i[Je>>0]=u;i[De>>0]=u>>>8;a[Se>>2]=Ge(a[Se>>2]|0,Je,2)|0;h=0;u=0}}a[Ee>>2]=5;N=71}else if((N|0)==203){a[Ee>>2]=20;N=204}do{if((N|0)==71){b=a[me>>2]|0;if(b&1024){g=a[q>>2]|0;v=g>>>0>p>>>0?p:g;if(v){y=a[H>>2]|0;if((y|0)!=0?(Me=a[y+16>>2]|0,(Me|0)!=0):0){b=(a[y+20>>2]|0)-g|0;N=a[y+24>>2]|0;rt(Me+b|0,l|0,((b+v|0)>>>0>N>>>0?N-b|0:v)|0)|0;b=a[me>>2]|0}if(b&512|0)a[Se>>2]=Ge(a[Se>>2]|0,l,v)|0;g=(a[q>>2]|0)-v|0;a[q>>2]=g;p=p-v|0;l=l+v|0}if(g){N=347;break r}}a[q>>2]=0;a[Ee>>2]=6;N=81}else if((N|0)==204){N=0;if(!(p>>>0>5&d>>>0>257)){a[oe>>2]=0;y=(1<>2])+-1|0;m=a[V>>2]|0;while(1){b=m+((u&y)<<2)|0;b=s[b>>1]|s[b+2>>1]<<16;g=b>>>8;k=g&255;if(k>>>0<=h>>>0)break;if(!p){p=0;break r}F=u+(o[l>>0]<>>16;if(y<<24>>24)if((y&255)<16){y=b>>>16;b=(1<>>k)<<2)|0;v=s[v>>1]|s[v+2>>1]<<16;g=v>>>8;if((k+(g&255)|0)>>>0<=h>>>0)break;if(!p){p=0;break r}F=u+(o[l>>0]<>2]=k;m=k;h=h-k|0;y=v&255;b=v>>>16;u=u>>>k}else{m=0;b=v}else{m=0;y=0;b=v}F=g&255;u=u>>>F;h=h-F|0;a[oe>>2]=m+F;a[q>>2]=b;if(!(y<<24>>24)){a[Ee>>2]=25;g=d;break}if(y&32){a[oe>>2]=-1;a[Ee>>2]=11;g=d;break}if(!(y&64)){y=y&15;a[se>>2]=y;a[Ee>>2]=21;N=283;break}else{a[Le>>2]=13998;a[Ee>>2]=29;g=d;break}}a[qe>>2]=f;a[Ye>>2]=d;a[e>>2]=l;a[He>>2]=p;a[ye>>2]=u;a[_e>>2]=h;S=a[Te>>2]|0;l=(a[e>>2]|0)+-1|0;C=l+((a[He>>2]|0)+-5)|0;f=(a[qe>>2]|0)+-1|0;U=a[Ye>>2]|0;D=f+(U+-257)|0;A=a[S+40>>2]|0;E=a[S+44>>2]|0;B=a[S+48>>2]|0;j=S+56|0;F=S+60|0;R=a[S+76>>2]|0;x=a[S+80>>2]|0;T=(1<>2])+-1|0;M=(1<>2])+-1|0;U=f+(U-w)|0;I=S+7104|0;P=(a[S+52>>2]|0)+-1|0;O=(B|0)==0;L=A+B|0;z=U-B|0;d=a[F>>2]|0;u=a[j>>2]|0;i:while(1){if(d>>>0<15){N=l+2|0;h=d+16|0;u=u+(o[l+1>>0]<>0]<>1]|s[d+2>>1]<<16;b=d>>>16;N=d>>>8&255;u=u>>>N;h=h-N|0;if(!((d&255)<<24>>24)){N=210;break}if(d&16|0){N=212;break}if(d&64|0){N=259;break i}d=b+(u&(1<<(d&255))+-1)|0}do{if((N|0)==210){N=0;f=f+1|0;i[f>>0]=b}else if((N|0)==212){N=0;y=d&15;if(!y)p=u;else{if(h>>>0>>0){l=l+1|0;d=h+8|0;u=u+(o[l>>0]<>>y;b=b+(u&(1<>>0<15){y=l+2|0;d=h+16|0;u=p+(o[l+1>>0]<>0]<>1]|s[l+2>>1]<<16;k=l>>>16;_=l>>>8&255;u=u>>>_;h=h-_|0;if(l&16|0)break;if(l&64|0){N=256;break i}l=k+(u&(1<<(l&255))+-1)|0}p=l&15;if(h>>>0

>>0){l=y+1|0;u=u+(o[l>>0]<>>0

>>0){l=y+2|0;h=h+16|0;u=u+(o[l>>0]<>>p;h=h-p|0;v=f;d=v-U|0;if(_>>>0<=d>>>0){y=f+(0-_)|0;p=f;while(1){i[p+1>>0]=i[y+1>>0]|0;i[p+2>>0]=i[y+2>>0]|0;d=y+3|0;f=p+3|0;i[f>>0]=i[d>>0]|0;b=b+-3|0;if(b>>>0<=2)break;else{y=d;p=f}}if(!b)break;f=p+4|0;i[f>>0]=i[y+4>>0]|0;if(b>>>0<=1)break;f=p+5|0;i[f>>0]=i[y+5>>0]|0;break}p=_-d|0;if(p>>>0>E>>>0?a[I>>2]|0:0){N=226;break i}do{if(O){y=P+(A-p)|0;if(b>>>0>p>>>0){d=b-p|0;g=m+k-v|0;b=f;do{y=y+1|0;b=b+1|0;i[b>>0]=i[y>>0]|0;p=p+-1|0}while((p|0)!=0);f=f+U+g|0;y=f+(0-_)|0}else d=b}else{if(B>>>0>=p>>>0){y=P+(B-p)|0;if(b>>>0<=p>>>0){d=b;break}d=b-p|0;g=m+k-v|0;b=f;do{y=y+1|0;b=b+1|0;i[b>>0]=i[y>>0]|0;p=p+-1|0}while((p|0)!=0);f=f+U+g|0;y=f+(0-_)|0;break}y=P+(L-p)|0;p=p-B|0;if(b>>>0>p>>>0){d=b-p|0;g=m+k-v|0;b=f;do{y=y+1|0;b=b+1|0;i[b>>0]=i[y>>0]|0;p=p+-1|0}while((p|0)!=0);p=f+z+g|0;if(d>>>0<=B>>>0){y=P;f=p;break}d=d-B|0;b=m+k-v|0;y=P;g=B;do{y=y+1|0;p=p+1|0;i[p>>0]=i[y>>0]|0;g=g+-1|0}while((g|0)!=0);f=f+U+b|0;y=f+(0-_)|0}else d=b}}while(0);while(1){if(d>>>0<=2)break;i[f+1>>0]=i[y+1>>0]|0;i[f+2>>0]=i[y+2>>0]|0;k=y+3|0;_=f+3|0;i[_>>0]=i[k>>0]|0;y=k;d=d+-3|0;f=_}if(d){p=f+1|0;i[p>>0]=i[y+1>>0]|0;if(d>>>0>1){f=f+2|0;i[f>>0]=i[y+2>>0]|0}else f=p}}}while(0);if(l>>>0>>0&f>>>0>>0)d=h;else break}do{if((N|0)==226){N=0;a[Le>>2]=13946;a[S>>2]=29}else if((N|0)==256){N=0;a[Le>>2]=13976;a[S>>2]=29;l=y}else if((N|0)==259){N=0;if(!(d&32)){a[Le>>2]=13998;a[S>>2]=29;break}else{a[S>>2]=11;break}}}while(0);d=h>>>3;l=l+(0-d)|0;d=h-(d<<3)|0;a[e>>2]=l+1;a[qe>>2]=f+1;a[He>>2]=(l>>>0>>0?C-l|0:C-l|0)+5;a[Ye>>2]=(f>>>0>>0?D-f|0:D-f|0)+257;a[j>>2]=u&(1<>2]=d;f=a[qe>>2]|0;d=a[Ye>>2]|0;l=a[e>>2]|0;p=a[He>>2]|0;u=a[ye>>2]|0;h=a[_e>>2]|0;if((a[Ee>>2]|0)==11){a[oe>>2]=-1;g=d}else g=d}}while(0);if((N|0)==81){if(!(b&2048)){b=a[H>>2]|0;if(b)a[b+28>>2]=0}else{if(!p){p=0;N=347;break}else y=0;do{g=y;y=y+1|0;g=i[l+g>>0]|0;b=a[H>>2]|0;if((b|0?(Ue=b+28|0,a[Ue>>2]|0):0)?(Ie=a[q>>2]|0,Ie>>>0<(a[b+32>>2]|0)>>>0):0){a[q>>2]=Ie+1;i[(a[Ue>>2]|0)+Ie>>0]=g}}while(g<<24>>24!=0&p>>>0>y>>>0);if(a[me>>2]&512|0)a[Se>>2]=Ge(a[Se>>2]|0,l,y)|0;p=p-y|0;l=l+y|0;if(g<<24>>24){N=347;break}}a[q>>2]=0;a[Ee>>2]=7;N=94}else if((N|0)==283){N=0;if(!y)b=a[q>>2]|0;else{while(1){if(h>>>0>=y>>>0)break;if(!p){p=0;break r}F=u+(o[l>>0]<>2]|0)+(u&(1<>2]=b;a[oe>>2]=(a[oe>>2]|0)+y;h=h-y|0;u=u>>>y}a[fe>>2]=b;a[Ee>>2]=22;N=290}do{if((N|0)==94){if(!(a[me>>2]&4096)){b=a[H>>2]|0;if(b)a[b+36>>2]=0}else{if(!p){p=0;N=347;break r}else y=0;do{g=y;y=y+1|0;g=i[l+g>>0]|0;b=a[H>>2]|0;if((b|0?(Pe=b+36|0,a[Pe>>2]|0):0)?(Oe=a[q>>2]|0,Oe>>>0<(a[b+40>>2]|0)>>>0):0){a[q>>2]=Oe+1;i[(a[Pe>>2]|0)+Oe>>0]=g}}while(g<<24>>24!=0&p>>>0>y>>>0);if(a[me>>2]&512|0)a[Se>>2]=Ge(a[Se>>2]|0,l,y)|0;p=p-y|0;l=l+y|0;if(g<<24>>24){N=347;break r}}a[Ee>>2]=8;N=107}else if((N|0)==290){N=0;b=(1<>2])+-1|0;m=a[$>>2]|0;while(1){g=m+((u&b)<<2)|0;g=s[g>>1]|s[g+2>>1]<<16;y=g>>>8;k=y&255;if(k>>>0<=h>>>0)break;if(!p){p=0;break r}F=u+(o[l>>0]<>>16;b=(1<>>k)<<2)|0;g=s[g>>1]|s[g+2>>1]<<16;y=g>>>8;if((k+(y&255)|0)>>>0<=h>>>0)break;if(!p){p=0;break r}F=u+(o[l>>0]<>2]|0)+k|0;a[oe>>2]=v;h=h-k|0;b=g&255;u=u>>>k}else v=a[oe>>2]|0;F=y&255;u=u>>>F;h=h-F|0;a[oe>>2]=v+F;if(!(b&64)){a[le>>2]=g>>>16;b=b&15;a[se>>2]=b;a[Ee>>2]=23;N=304;break}else{a[Le>>2]=13976;a[Ee>>2]=29;g=d;break}}}while(0);do{if((N|0)==107){N=0;y=a[me>>2]|0;if(y&512){while(1){if(h>>>0>=16)break;if(!p){p=0;break r}F=u+(o[l>>0]<>2]&65535|0)){h=0;u=0}else{a[Le>>2]=12827;a[Ee>>2]=29;g=d;break}}b=a[H>>2]|0;if(b|0){a[b+44>>2]=y>>>9&1;a[(a[H>>2]|0)+48>>2]=1}a[Se>>2]=0;a[ze>>2]=0;a[Ee>>2]=11;g=d}else if((N|0)==304){N=0;if(b){while(1){if(h>>>0>=b>>>0)break;if(!p){p=0;break r}F=u+(o[l>>0]<>2]=(a[le>>2]|0)+(u&(1<>2]=(a[oe>>2]|0)+b;h=h-b|0;u=u>>>b}a[Ee>>2]=24;N=310}}while(0);do{if((N|0)==310){N=0;if(!d){d=0;N=347;break r}b=w-d|0;y=a[le>>2]|0;if(y>>>0>b>>>0){b=y-b|0;if(b>>>0>(a[ue>>2]|0)>>>0?a[he>>2]|0:0){a[Le>>2]=13946;a[Ee>>2]=29;g=d;break}y=a[de>>2]|0;if(b>>>0>y>>>0){b=b-y|0;g=b;b=(a[pe>>2]|0)+((a[we>>2]|0)-b)|0}else{g=b;b=(a[pe>>2]|0)+(y-b)|0}F=a[q>>2]|0;v=F;g=g>>>0>F>>>0?F:g}else{g=a[q>>2]|0;v=g;b=f+(0-y)|0}g=g>>>0>d>>>0?d:g;a[q>>2]=v-g;y=g;while(1){F=f;f=f+1|0;i[F>>0]=i[b>>0]|0;y=y+-1|0;if(!y)break;else b=b+1|0}d=d-g|0;if(!(a[q>>2]|0)){a[Ee>>2]=20;g=d}else g=d}}while(0);y=a[Ee>>2]|0;d=g}if((N|0)==346){N=0;a[Ee>>2]=28;p=r;r=1}else if((N|0)==347)N=0;a[qe>>2]=f;a[Ye>>2]=d;a[e>>2]=l;a[He>>2]=p;a[ye>>2]=u;a[_e>>2]=h;f=a[Ye>>2]|0;if(!(a[we>>2]|0)){if((w|0)!=(f|0)?(a[Ee>>2]|0)>>>0<29:0)N=351}else N=351;do{if((N|0)==351){N=0;b=a[qe>>2]|0;y=w-f|0;d=a[Te>>2]|0;p=d+52|0;f=a[p>>2]|0;if(!f){f=lt[a[Re>>2]&1](a[xe>>2]|0,1<>2],1)|0;a[p>>2]=f;if(!f){N=361;break e}}h=d+40|0;l=a[h>>2]|0;if(!l){l=1<>2];a[h>>2]=l;a[d+48>>2]=0;a[d+44>>2]=0}if(l>>>0<=y>>>0){rt(f|0,b+(0-l)|0,l|0)|0;a[d+48>>2]=0;a[d+44>>2]=a[h>>2];break}u=d+48|0;ye=a[u>>2]|0;we=l-ye|0;we=we>>>0>y>>>0?y:we;rt(f+ye|0,b+(0-y)|0,we|0)|0;f=y-we|0;if((y|0)!=(we|0)){rt(a[p>>2]|0,b+(0-f)|0,f|0)|0;a[u>>2]=f;a[d+44>>2]=a[h>>2];break}f=(a[u>>2]|0)+y|0;a[u>>2]=f;we=a[h>>2]|0;a[u>>2]=(f|0)==(we|0)?0:f;f=d+44|0;l=a[f>>2]|0;if(l>>>0>>0)a[f>>2]=l+y}}while(0);h=a[He>>2]|0;d=a[Ye>>2]|0;u=w-d|0;a[Ze>>2]=(a[Ze>>2]|0)+(ke-h);a[je>>2]=(a[je>>2]|0)+u;a[ve>>2]=(a[ve>>2]|0)+u;if(!((a[ge>>2]|0)==0|(w|0)==(d|0))){f=a[Se>>2]|0;l=(a[qe>>2]|0)+(0-u)|0;if(!(a[me>>2]|0))f=Ve(f,l,u)|0;else f=Ge(f,l,u)|0;a[Se>>2]=f;a[ze>>2]=f}Ee=a[Ee>>2]|0;a[Be>>2]=(a[_e>>2]|0)+(a[Ae>>2]|0?64:0)+((Ee|0)==11?128:0)+((Ee|0)==19|(Ee|0)==14?256:0);if((ke|0)==(h|0)&(w|0)==(d|0)&(r|0)==0){r=-5;N=368}else switch(r|0){case 2:{N=372;break e}case-4:case-3:{N=373;break e}default:{}}}else{r=-2;N=368}}while(0);if((N|0)==368)N=0;ce(1,e|0,a[3509]|0,t-(a[Ye>>2]|0)|0)|0;if(a[Ye>>2]|0){N=373;break}}if((N|0)==121){a[qe>>2]=f;a[Ye>>2]=d;a[e>>2]=l;a[He>>2]=p;a[ye>>2]=u;a[_e>>2]=h;e=-3;c=We;return e|0}else if((N|0)!=133)if((N|0)==361)a[Ee>>2]=30;else if((N|0)==372){e=-3;c=We;return e|0}else if((N|0)==373){c=We;return r|0}e=-4;c=We;return e|0}function xe(e){e=e|0;var t=0,r=0,i=0,n=0,o=0;if(!e)return;o=e+28|0;t=a[o>>2]|0;if(!t)return;i=e+36|0;r=a[i>>2]|0;if(!r)return;n=a[t+52>>2]|0;e=e+40|0;if(n){ut[r&1](a[e>>2]|0,n);r=a[i>>2]|0;t=a[o>>2]|0}ut[r&1](a[e>>2]|0,t);a[o>>2]=0;return}function Te(e,t,r,o,f,l,u,c){e=e|0;t=t|0;r=r|0;o=o|0;f=f|0;l=l|0;u=u|0;c=c|0;var h=0,d=0,p=0,b=0,y=0,w=0,g=0;if(!u){e=-6;return e|0}if(!((i[u>>0]|0)==49&(c|0)==56)){e=-6;return e|0}if(!e){e=-2;return e|0}b=e+24|0;a[b>>2]=0;y=e+32|0;c=a[y>>2]|0;if(!c){a[y>>2]=1;a[e+40>>2]=0;c=1}p=e+36|0;if(!(a[p>>2]|0))a[p>>2]=1;d=(t|0)==-1?6:t;if((o|0)<0){u=0-o|0;h=0}else{h=(o|0)>15;u=h?o+-16|0:o;h=h?2:1}if(l>>>0>4|(d>>>0>9|((u&-8|0)!=8|((r|0)!=8|(f+-1|0)>>>0>8)))){e=-2;return e|0}u=(u|0)==8?9:u;t=e+40|0;o=lt[c&1](a[t>>2]|0,1,5828)|0;if(!o){e=-4;return e|0}r=e+28|0;a[r>>2]=o;a[o>>2]=e;a[o+24>>2]=h;a[o+28>>2]=0;a[o+48>>2]=u;w=1<>2]=w;a[o+52>>2]=w+-1;g=f+7|0;a[o+80>>2]=g;g=1<>2]=g;a[o+84>>2]=g+-1;a[o+88>>2]=((f+9|0)>>>0)/3|0;g=o+56|0;a[g>>2]=lt[a[y>>2]&1](a[t>>2]|0,w,2)|0;w=o+64|0;a[w>>2]=lt[a[y>>2]&1](a[t>>2]|0,a[h>>2]|0,2)|0;h=o+68|0;a[h>>2]=lt[a[y>>2]&1](a[t>>2]|0,a[c>>2]|0,2)|0;a[o+5824>>2]=0;c=1<>2]=c;c=lt[a[y>>2]&1](a[t>>2]|0,c,4)|0;a[o+8>>2]=c;u=a[u>>2]|0;a[o+12>>2]=u<<2;if((a[g>>2]|0?a[w>>2]|0:0)?!((a[h>>2]|0)==0|(c|0)==0):0){a[o+5796>>2]=c+(u>>>1<<1);a[o+5784>>2]=c+(u*3|0);a[o+132>>2]=d;a[o+136>>2]=l;i[o+36>>0]=8;t=a[r>>2]|0;if(!t){g=-2;return g|0}if(!(a[y>>2]|0)){g=-2;return g|0}if(!(a[p>>2]|0)){g=-2;return g|0}a[e+20>>2]=0;a[e+8>>2]=0;a[b>>2]=0;a[e+44>>2]=2;a[t+20>>2]=0;a[t+16>>2]=a[t+8>>2];u=t+24|0;c=a[u>>2]|0;if((c|0)<0){c=0-c|0;a[u>>2]=c}a[t+4>>2]=c|0?42:113;a[e+48>>2]=(c|0)!=2&1;a[t+40>>2]=0;a[t+2840>>2]=t+148;a[t+2848>>2]=128;a[t+2852>>2]=t+2440;a[t+2860>>2]=264;a[t+2864>>2]=t+2684;a[t+2872>>2]=404;n[t+5816>>1]=0;a[t+5820>>2]=0;c=0;while(1){if((c|0)==286){c=0;break}n[t+148+(c<<2)>>1]=0;c=c+1|0}while(1){if((c|0)==30){c=0;break}n[t+2440+(c<<2)>>1]=0;c=c+1|0}while(1){if((c|0)==19)break;n[t+2684+(c<<2)>>1]=0;c=c+1|0}n[t+1172>>1]=1;a[t+5804>>2]=0;a[t+5800>>2]=0;a[t+5808>>2]=0;a[t+5792>>2]=0;g=a[r>>2]|0;a[g+60>>2]=a[g+44>>2]<<1;w=g+76|0;e=g+68|0;n[(a[e>>2]|0)+((a[w>>2]|0)+-1<<1)>>1]=0;Qe(a[e>>2]|0,0,(a[w>>2]<<1)+-2|0)|0;w=a[g+132>>2]|0;a[g+128>>2]=s[8+(w*12|0)+2>>1];a[g+140>>2]=s[8+(w*12|0)>>1];a[g+144>>2]=s[8+(w*12|0)+4>>1];a[g+124>>2]=s[8+(w*12|0)+6>>1];a[g+108>>2]=0;a[g+92>>2]=0;a[g+116>>2]=0;a[g+5812>>2]=0;a[g+120>>2]=2;a[g+96>>2]=2;a[g+104>>2]=0;a[g+72>>2]=0;g=0;return g|0}a[o+4>>2]=666;a[b>>2]=13913;Me(e)|0;g=-4;return g|0}function Me(e){e=e|0;var t=0,r=0,i=0,n=0,o=0;if(!e){o=-2;return o|0}n=e+28|0;t=a[n>>2]|0;if(!t){o=-2;return o|0}o=a[t+4>>2]|0;switch(o|0){case 666:case 113:case 103:case 91:case 73:case 69:case 42:break;default:{o=-2;return o|0}}r=a[t+8>>2]|0;if(r){ut[a[e+36>>2]&1](a[e+40>>2]|0,r);t=a[n>>2]|0}r=a[t+68>>2]|0;if(r){ut[a[e+36>>2]&1](a[e+40>>2]|0,r);t=a[n>>2]|0}r=a[t+64>>2]|0;if(r){ut[a[e+36>>2]&1](a[e+40>>2]|0,r);t=a[n>>2]|0}r=a[t+56>>2]|0;if(!r){i=e+40|0;r=e+36|0}else{t=e+36|0;i=e+40|0;ut[a[t>>2]&1](a[i>>2]|0,r);r=t;t=a[n>>2]|0}ut[a[r>>2]&1](a[i>>2]|0,t);a[n>>2]=0;o=(o|0)==113?-3:0;return o|0}function Ue(e,t){e=e|0;t=t|0;var r=0,o=0,f=0,l=0,u=0,c=0,h=0,d=0,p=0,b=0,y=0,w=0,g=0,v=0,m=0,k=0,_=0;c=(a[e+12>>2]|0)+-5|0;c=c>>>0<65535?c:65535;d=e+116|0;w=e+108|0;g=e+92|0;y=e+56|0;b=e+44|0;while(1){r=a[d>>2]|0;if(r>>>0<2){Ie(e);r=a[d>>2]|0;o=(r|0)==0;if(!((t|0)!=0|o^1)){r=0;o=55;break}if(o){o=30;break}}r=(a[w>>2]|0)+r|0;a[w>>2]=r;a[d>>2]=0;f=a[g>>2]|0;o=f+c|0;if(!((r|0)!=0&r>>>0>>0)){a[d>>2]=r-o;a[w>>2]=o;if((f|0)>-1)r=(a[y>>2]|0)+f|0;else r=0;Fe(e,r,c,0);a[g>>2]=a[w>>2];l=a[e>>2]|0;u=a[l+28>>2]|0;r=u+5820|0;o=a[r>>2]|0;do{if((o|0)!=16)if((o|0)>7){f=u+5816|0;k=n[f>>1]&255;o=u+20|0;m=a[o>>2]|0;a[o>>2]=m+1;i[(a[u+8>>2]|0)+m>>0]=k;n[f>>1]=(s[f>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{o=u+20|0;break}else{k=u+5816|0;m=n[k>>1]&255;o=u+20|0;_=a[o>>2]|0;a[o>>2]=_+1;f=u+8|0;i[(a[f>>2]|0)+_>>0]=m;_=(s[k>>1]|0)>>>8&255;m=a[o>>2]|0;a[o>>2]=m+1;i[(a[f>>2]|0)+m>>0]=_;n[k>>1]=0;a[r>>2]=0}}while(0);r=a[o>>2]|0;f=l+16|0;_=a[f>>2]|0;r=r>>>0>_>>>0?_:r;if(r|0?(_=l+12|0,p=u+16|0,rt(a[_>>2]|0,a[p>>2]|0,r|0)|0,a[_>>2]=(a[_>>2]|0)+r,a[p>>2]=(a[p>>2]|0)+r,_=l+20|0,a[_>>2]=(a[_>>2]|0)+r,a[f>>2]=(a[f>>2]|0)-r,_=a[o>>2]|0,a[o>>2]=_-r,(_|0)==(r|0)):0)a[p>>2]=a[u+8>>2];if(!(a[(a[e>>2]|0)+16>>2]|0)){r=0;o=55;break}r=a[w>>2]|0;f=a[g>>2]|0}o=r-f|0;if(o>>>0<((a[b>>2]|0)+-262|0)>>>0)continue;if((f|0)>-1)r=(a[y>>2]|0)+f|0;else r=0;Fe(e,r,o,0);a[g>>2]=a[w>>2];l=a[e>>2]|0;u=a[l+28>>2]|0;r=u+5820|0;o=a[r>>2]|0;do{if((o|0)!=16)if((o|0)>7){_=u+5816|0;m=n[_>>1]&255;o=u+20|0;k=a[o>>2]|0;a[o>>2]=k+1;i[(a[u+8>>2]|0)+k>>0]=m;n[_>>1]=(s[_>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{o=u+20|0;break}else{_=u+5816|0;k=n[_>>1]&255;o=u+20|0;f=a[o>>2]|0;a[o>>2]=f+1;m=u+8|0;i[(a[m>>2]|0)+f>>0]=k;f=(s[_>>1]|0)>>>8&255;k=a[o>>2]|0;a[o>>2]=k+1;i[(a[m>>2]|0)+k>>0]=f;n[_>>1]=0;a[r>>2]=0}}while(0);r=a[o>>2]|0;f=l+16|0;_=a[f>>2]|0;r=r>>>0>_>>>0?_:r;if(r|0?(_=l+12|0,h=u+16|0,rt(a[_>>2]|0,a[h>>2]|0,r|0)|0,a[_>>2]=(a[_>>2]|0)+r,a[h>>2]=(a[h>>2]|0)+r,_=l+20|0,a[_>>2]=(a[_>>2]|0)+r,a[f>>2]=(a[f>>2]|0)-r,_=a[o>>2]|0,a[o>>2]=_-r,(_|0)==(r|0)):0)a[h>>2]=a[u+8>>2];if(!(a[(a[e>>2]|0)+16>>2]|0)){r=0;o=55;break}}if((o|0)==30){a[e+5812>>2]=0;if((t|0)==4){o=a[g>>2]|0;if((o|0)>-1)r=(a[y>>2]|0)+o|0;else r=0;Fe(e,r,(a[w>>2]|0)-o|0,1);a[g>>2]=a[w>>2];u=a[e>>2]|0;c=a[u+28>>2]|0;r=c+5820|0;o=a[r>>2]|0;do{if((o|0)!=16)if((o|0)>7){_=c+5816|0;m=n[_>>1]&255;o=c+20|0;k=a[o>>2]|0;a[o>>2]=k+1;i[(a[c+8>>2]|0)+k>>0]=m;n[_>>1]=(s[_>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{o=c+20|0;break}else{_=c+5816|0;k=n[_>>1]&255;o=c+20|0;v=a[o>>2]|0;a[o>>2]=v+1;m=c+8|0;i[(a[m>>2]|0)+v>>0]=k;v=(s[_>>1]|0)>>>8&255;k=a[o>>2]|0;a[o>>2]=k+1;i[(a[m>>2]|0)+k>>0]=v;n[_>>1]=0;a[r>>2]=0}}while(0);r=a[o>>2]|0;f=u+16|0;_=a[f>>2]|0;r=r>>>0>_>>>0?_:r;if(!r){_=a[e>>2]|0;_=_+16|0;_=a[_>>2]|0;_=(_|0)==0;_=_?2:3;return _|0}_=u+12|0;l=c+16|0;rt(a[_>>2]|0,a[l>>2]|0,r|0)|0;a[_>>2]=(a[_>>2]|0)+r;a[l>>2]=(a[l>>2]|0)+r;_=u+20|0;a[_>>2]=(a[_>>2]|0)+r;a[f>>2]=(a[f>>2]|0)-r;_=a[o>>2]|0;a[o>>2]=_-r;if((_|0)!=(r|0)){_=a[e>>2]|0;_=_+16|0;_=a[_>>2]|0;_=(_|0)==0;_=_?2:3;return _|0}a[l>>2]=a[c+8>>2];_=a[e>>2]|0;_=_+16|0;_=a[_>>2]|0;_=(_|0)==0;_=_?2:3;return _|0}o=a[w>>2]|0;f=a[g>>2]|0;if((o|0)>(f|0)){if((f|0)>-1)r=(a[y>>2]|0)+f|0;else r=0;Fe(e,r,o-f|0,0);a[g>>2]=a[w>>2];l=a[e>>2]|0;u=a[l+28>>2]|0;r=u+5820|0;o=a[r>>2]|0;do{if((o|0)!=16)if((o|0)>7){_=u+5816|0;m=n[_>>1]&255;o=u+20|0;k=a[o>>2]|0;a[o>>2]=k+1;i[(a[u+8>>2]|0)+k>>0]=m;n[_>>1]=(s[_>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{o=u+20|0;break}else{_=u+5816|0;k=n[_>>1]&255;o=u+20|0;g=a[o>>2]|0;a[o>>2]=g+1;m=u+8|0;i[(a[m>>2]|0)+g>>0]=k;g=(s[_>>1]|0)>>>8&255;k=a[o>>2]|0;a[o>>2]=k+1;i[(a[m>>2]|0)+k>>0]=g;n[_>>1]=0;a[r>>2]=0}}while(0);r=a[o>>2]|0;f=l+16|0;_=a[f>>2]|0;r=r>>>0>_>>>0?_:r;if(r|0?(_=l+12|0,v=u+16|0,rt(a[_>>2]|0,a[v>>2]|0,r|0)|0,a[_>>2]=(a[_>>2]|0)+r,a[v>>2]=(a[v>>2]|0)+r,_=l+20|0,a[_>>2]=(a[_>>2]|0)+r,a[f>>2]=(a[f>>2]|0)-r,_=a[o>>2]|0,a[o>>2]=_-r,(_|0)==(r|0)):0)a[v>>2]=a[u+8>>2];if(!(a[(a[e>>2]|0)+16>>2]|0)){_=0;return _|0}}_=1;return _|0}else if((o|0)==55)return r|0;return 0}function Ie(e){e=e|0;var t=0,r=0,i=0,f=0,l=0,u=0,c=0,h=0,d=0,p=0,b=0,y=0,w=0,g=0,v=0,m=0,k=0,_=0,S=0,A=0,E=0,B=0,R=0;h=e+44|0;d=a[h>>2]|0;A=e+60|0;E=e+116|0;B=e+108|0;R=e+56|0;m=e+5812|0;k=e+72|0;_=e+88|0;S=e+84|0;p=e+68|0;b=e+52|0;y=e+64|0;w=e+112|0;g=e+92|0;v=e+76|0;t=a[E>>2]|0;r=d;while(1){c=a[B>>2]|0;i=(a[A>>2]|0)-t-c|0;if(c>>>0>=(d+(r+-262)|0)>>>0){r=a[R>>2]|0;rt(r|0,r+d|0,d|0)|0;a[w>>2]=(a[w>>2]|0)-d;a[B>>2]=(a[B>>2]|0)-d;a[g>>2]=(a[g>>2]|0)-d;r=a[v>>2]|0;t=r;r=(a[p>>2]|0)+(r<<1)|0;do{r=r+-2|0;c=s[r>>1]|0;n[r>>1]=c>>>0>>0?0:c-d&65535;t=t+-1|0}while((t|0)!=0);t=d;r=(a[y>>2]|0)+(d<<1)|0;do{r=r+-2|0;c=s[r>>1]|0;n[r>>1]=c>>>0>>0?0:c-d&65535;t=t+-1|0}while((t|0)!=0);i=i+d|0}f=a[e>>2]|0;l=f+4|0;u=a[l>>2]|0;if(!u)break;t=a[E>>2]|0;c=(a[R>>2]|0)+(a[B>>2]|0)+t|0;r=u>>>0>i>>>0?i:u;if(!r)r=0;else{a[l>>2]=u-r;rt(c|0,a[f>>2]|0,r|0)|0;switch(a[(a[f+28>>2]|0)+24>>2]|0){case 1:{u=f+48|0;a[u>>2]=Ve(a[u>>2]|0,c,r)|0;break}case 2:{u=f+48|0;a[u>>2]=Ge(a[u>>2]|0,c,r)|0;break}default:{}}a[f>>2]=(a[f>>2]|0)+r;t=f+8|0;a[t>>2]=(a[t>>2]|0)+r;t=a[E>>2]|0}t=t+r|0;a[E>>2]=t;r=a[m>>2]|0;e:do{if((t+r|0)>>>0>2){i=(a[B>>2]|0)-r|0;c=a[R>>2]|0;u=o[c+i>>0]|0;a[k>>2]=u;a[k>>2]=(u<>2]^(o[c+(i+1)>>0]|0))&a[S>>2];while(1){if(!r)break e;r=(a[k>>2]<>2]^(o[(a[R>>2]|0)+(i+2)>>0]|0))&a[S>>2];a[k>>2]=r;n[(a[y>>2]|0)+((i&a[b>>2])<<1)>>1]=n[(a[p>>2]|0)+(r<<1)>>1]|0;n[(a[p>>2]|0)+(a[k>>2]<<1)>>1]=i;r=(a[m>>2]|0)+-1|0;a[m>>2]=r;t=a[E>>2]|0;if((t+r|0)>>>0<3)break e;i=i+1|0}}}while(0);if(t>>>0>=262)break;if(!(a[(a[e>>2]|0)+4>>2]|0))break;r=a[h>>2]|0}i=e+5824|0;f=a[i>>2]|0;r=a[A>>2]|0;if(r>>>0<=f>>>0)return;t=(a[B>>2]|0)+(a[E>>2]|0)|0;if(f>>>0>>0){B=r-t|0;B=B>>>0>258?258:B;Qe((a[R>>2]|0)+t|0,0,B|0)|0;a[i>>2]=t+B;return}t=t+258|0;if(t>>>0<=f>>>0)return;B=t-f|0;E=r-f|0;B=B>>>0>E>>>0?E:B;Qe((a[R>>2]|0)+f|0,0,B|0)|0;a[i>>2]=(a[i>>2]|0)+B;return}function Pe(e,t){e=e|0;t=t|0;var r=0,f=0,l=0,u=0,c=0,h=0,d=0,p=0,b=0,y=0,w=0,g=0,v=0,m=0,k=0,_=0,S=0,A=0,E=0,B=0,R=0,x=0,T=0,M=0,U=0,I=0,P=0,O=0;h=e+116|0;d=e+72|0;m=e+88|0;M=e+108|0;x=e+56|0;_=e+84|0;S=e+68|0;A=e+52|0;E=e+64|0;B=e+44|0;p=e+96|0;b=e+112|0;R=e+5792|0;y=e+5796|0;w=e+5784|0;g=e+5788|0;v=e+128|0;T=e+92|0;while(1){if((a[h>>2]|0)>>>0<262){Ie(e);r=a[h>>2]|0;if(!(r>>>0>261|(t|0)!=0)){r=0;f=54;break}if(!r){f=29;break}if(r>>>0<=2)f=9;else f=6}else f=6;if((f|0)==6){f=0;r=a[M>>2]|0;c=(a[d>>2]<>2]^(o[(a[x>>2]|0)+(r+2)>>0]|0))&a[_>>2];a[d>>2]=c;c=n[(a[S>>2]|0)+(c<<1)>>1]|0;n[(a[E>>2]|0)+((r&a[A>>2])<<1)>>1]=c;r=c&65535;n[(a[S>>2]|0)+(a[d>>2]<<1)>>1]=a[M>>2];if(c<<16>>16!=0?((a[M>>2]|0)-r|0)>>>0<=((a[B>>2]|0)+-262|0)>>>0:0){r=Oe(e,r)|0;a[p>>2]=r}else f=9}if((f|0)==9)r=a[p>>2]|0;do{if(r>>>0>2){f=r+253|0;r=(a[M>>2]|0)-(a[b>>2]|0)&65535;n[(a[y>>2]|0)+(a[R>>2]<<1)>>1]=r;c=a[R>>2]|0;a[R>>2]=c+1;i[(a[w>>2]|0)+c>>0]=f;r=r+-1<<16>>16;f=e+148+((o[13625+(f&255)>>0]|0|256)+1<<2)|0;n[f>>1]=(n[f>>1]|0)+1<<16>>16;f=r&65535;f=e+2440+((o[13113+((r&65535)<256?f:(f>>>7)+256|0)>>0]|0)<<2)|0;n[f>>1]=(n[f>>1]|0)+1<<16>>16;f=(a[R>>2]|0)==((a[g>>2]|0)+-1|0)&1;r=a[p>>2]|0;c=(a[h>>2]|0)-r|0;a[h>>2]=c;if(!(c>>>0>2?r>>>0<=(a[v>>2]|0)>>>0:0)){l=(a[M>>2]|0)+r|0;a[M>>2]=l;a[p>>2]=0;r=a[x>>2]|0;c=o[r+l>>0]|0;a[d>>2]=c;a[d>>2]=(c<>2]^(o[r+(l+1)>>0]|0))&a[_>>2];r=f;break}a[p>>2]=r+-1;do{u=a[M>>2]|0;c=u+1|0;a[M>>2]=c;u=(a[d>>2]<>2]^(o[(a[x>>2]|0)+(u+3)>>0]|0))&a[_>>2];a[d>>2]=u;n[(a[E>>2]|0)+((c&a[A>>2])<<1)>>1]=n[(a[S>>2]|0)+(u<<1)>>1]|0;n[(a[S>>2]|0)+(a[d>>2]<<1)>>1]=a[M>>2];c=(a[p>>2]|0)+-1|0;a[p>>2]=c}while((c|0)!=0);l=(a[M>>2]|0)+1|0;a[M>>2]=l;r=f}else{r=i[(a[x>>2]|0)+(a[M>>2]|0)>>0]|0;n[(a[y>>2]|0)+(a[R>>2]<<1)>>1]=0;l=a[R>>2]|0;a[R>>2]=l+1;i[(a[w>>2]|0)+l>>0]=r;r=e+148+((r&255)<<2)|0;n[r>>1]=(n[r>>1]|0)+1<<16>>16;r=(a[R>>2]|0)==((a[g>>2]|0)+-1|0)&1;a[h>>2]=(a[h>>2]|0)+-1;l=(a[M>>2]|0)+1|0;a[M>>2]=l}}while(0);if(!r)continue;r=a[T>>2]|0;if((r|0)>-1)f=(a[x>>2]|0)+r|0;else f=0;Fe(e,f,l-r|0,0);a[T>>2]=a[M>>2];u=a[e>>2]|0;c=a[u+28>>2]|0;r=c+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){l=c+5816|0;P=n[l>>1]&255;f=c+20|0;I=a[f>>2]|0;a[f>>2]=I+1;i[(a[c+8>>2]|0)+I>>0]=P;n[l>>1]=(s[l>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=c+20|0;break}else{P=c+5816|0;I=n[P>>1]&255;f=c+20|0;O=a[f>>2]|0;a[f>>2]=O+1;l=c+8|0;i[(a[l>>2]|0)+O>>0]=I;O=(s[P>>1]|0)>>>8&255;I=a[f>>2]|0;a[f>>2]=I+1;i[(a[l>>2]|0)+I>>0]=O;n[P>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;l=u+16|0;O=a[l>>2]|0;r=r>>>0>O>>>0?O:r;if(r|0?(O=u+12|0,k=c+16|0,rt(a[O>>2]|0,a[k>>2]|0,r|0)|0,a[O>>2]=(a[O>>2]|0)+r,a[k>>2]=(a[k>>2]|0)+r,O=u+20|0,a[O>>2]=(a[O>>2]|0)+r,a[l>>2]=(a[l>>2]|0)-r,O=a[f>>2]|0,a[f>>2]=O-r,(O|0)==(r|0)):0)a[k>>2]=a[c+8>>2];if(!(a[(a[e>>2]|0)+16>>2]|0)){r=0;f=54;break}}if((f|0)==29){l=a[M>>2]|0;a[e+5812>>2]=l>>>0<2?l:2;if((t|0)==4){f=a[T>>2]|0;if((f|0)>-1)r=(a[x>>2]|0)+f|0;else r=0;Fe(e,r,l-f|0,1);a[T>>2]=a[M>>2];c=a[e>>2]|0;h=a[c+28>>2]|0;r=h+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){O=h+5816|0;I=n[O>>1]&255;f=h+20|0;P=a[f>>2]|0;a[f>>2]=P+1;i[(a[h+8>>2]|0)+P>>0]=I;n[O>>1]=(s[O>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=h+20|0;break}else{O=h+5816|0;P=n[O>>1]&255;f=h+20|0;U=a[f>>2]|0;a[f>>2]=U+1;I=h+8|0;i[(a[I>>2]|0)+U>>0]=P;U=(s[O>>1]|0)>>>8&255;P=a[f>>2]|0;a[f>>2]=P+1;i[(a[I>>2]|0)+P>>0]=U;n[O>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;l=c+16|0;O=a[l>>2]|0;r=r>>>0>O>>>0?O:r;if(!r){O=a[e>>2]|0;O=O+16|0;O=a[O>>2]|0;O=(O|0)==0;O=O?2:3;return O|0}O=c+12|0;u=h+16|0;rt(a[O>>2]|0,a[u>>2]|0,r|0)|0;a[O>>2]=(a[O>>2]|0)+r;a[u>>2]=(a[u>>2]|0)+r;O=c+20|0;a[O>>2]=(a[O>>2]|0)+r;a[l>>2]=(a[l>>2]|0)-r;O=a[f>>2]|0;a[f>>2]=O-r;if((O|0)!=(r|0)){O=a[e>>2]|0;O=O+16|0;O=a[O>>2]|0;O=(O|0)==0;O=O?2:3;return O|0}a[u>>2]=a[h+8>>2];O=a[e>>2]|0;O=O+16|0;O=a[O>>2]|0;O=(O|0)==0;O=O?2:3;return O|0}if(a[R>>2]|0){f=a[T>>2]|0;if((f|0)>-1)r=(a[x>>2]|0)+f|0;else r=0;Fe(e,r,l-f|0,0);a[T>>2]=a[M>>2];u=a[e>>2]|0;c=a[u+28>>2]|0;r=c+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){O=c+5816|0;I=n[O>>1]&255;f=c+20|0;P=a[f>>2]|0;a[f>>2]=P+1;i[(a[c+8>>2]|0)+P>>0]=I;n[O>>1]=(s[O>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=c+20|0;break}else{O=c+5816|0;P=n[O>>1]&255;f=c+20|0;M=a[f>>2]|0;a[f>>2]=M+1;I=c+8|0;i[(a[I>>2]|0)+M>>0]=P;M=(s[O>>1]|0)>>>8&255;P=a[f>>2]|0;a[f>>2]=P+1;i[(a[I>>2]|0)+P>>0]=M;n[O>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;l=u+16|0;O=a[l>>2]|0;r=r>>>0>O>>>0?O:r;if(r|0?(O=u+12|0,U=c+16|0,rt(a[O>>2]|0,a[U>>2]|0,r|0)|0,a[O>>2]=(a[O>>2]|0)+r,a[U>>2]=(a[U>>2]|0)+r,O=u+20|0,a[O>>2]=(a[O>>2]|0)+r,a[l>>2]=(a[l>>2]|0)-r,O=a[f>>2]|0,a[f>>2]=O-r,(O|0)==(r|0)):0)a[U>>2]=a[c+8>>2];if(!(a[(a[e>>2]|0)+16>>2]|0)){O=0;return O|0}}O=1;return O|0}else if((f|0)==54)return r|0;return 0}function Oe(e,t){e=e|0;t=t|0;var r=0,n=0,o=0,f=0,l=0,u=0,c=0,h=0,d=0,p=0,b=0,y=0,w=0,g=0,v=0,m=0,k=0;l=a[e+124>>2]|0;y=a[e+56>>2]|0;d=a[e+108>>2]|0;o=y+d|0;f=a[e+120>>2]|0;h=a[e+144>>2]|0;c=(a[e+44>>2]|0)+-262|0;c=d>>>0>c>>>0?d-c|0:0;d=a[e+64>>2]|0;p=a[e+52>>2]|0;b=o+258|0;k=a[e+116>>2]|0;h=h>>>0>k>>>0?k:h;w=e+112|0;g=b;v=b+-258|0;u=t;n=f;l=f>>>0<(a[e+140>>2]|0)>>>0?l:l>>>2;e=o;r=i[o+f>>0]|0;f=i[o+(f+-1)>>0]|0;while(1){t=y+u|0;if((((i[t+n>>0]|0)==r<<24>>24?(i[t+(n+-1)>>0]|0)==f<<24>>24:0)?(i[t>>0]|0)==(i[e>>0]|0):0)?(m=t+1|0,(i[m>>0]|0)==(i[e+1>>0]|0)):0){o=m+1|0;e=e+2|0;while(1){t=e+1|0;if((i[t>>0]|0)!=(i[o+1>>0]|0))break;t=e+2|0;if((i[t>>0]|0)!=(i[o+2>>0]|0))break;t=e+3|0;if((i[t>>0]|0)!=(i[o+3>>0]|0))break;t=e+4|0;if((i[t>>0]|0)!=(i[o+4>>0]|0))break;t=e+5|0;if((i[t>>0]|0)!=(i[o+5>>0]|0))break;t=e+6|0;if((i[t>>0]|0)!=(i[o+6>>0]|0))break;t=e+7|0;if((i[t>>0]|0)!=(i[o+7>>0]|0))break;t=e+8|0;o=o+8|0;if(!(t>>>0>>0?(i[t>>0]|0)==(i[o>>0]|0):0))break;else e=t}e=t-g|0;t=e+258|0;if((t|0)>(n|0)){a[w>>2]=u;if((t|0)>=(h|0)){e=20;break}n=t;o=v;r=i[v+t>>0]|0;t=i[v+(e+257)>>0]|0}else{o=v;t=f}}else{o=e;t=f}u=s[d+((u&p)<<1)>>1]|0;if(u>>>0<=c>>>0){t=n;e=20;break}l=l+-1|0;if(!l){t=n;e=20;break}else{e=o;f=t}}if((e|0)==20)return(t>>>0>k>>>0?k:t)|0;return 0}function Le(e,t){e=e|0;t=t|0;var r=0,f=0,l=0,u=0,c=0,h=0,d=0,p=0,b=0,y=0,w=0,g=0,v=0,m=0,k=0,_=0,S=0,A=0,E=0,B=0,R=0,x=0,T=0,M=0,U=0,I=0,P=0,O=0,L=0,z=0,C=0,D=0,j=0,F=0;d=e+116|0;p=e+72|0;S=e+88|0;C=e+108|0;L=e+56|0;x=e+84|0;T=e+68|0;M=e+52|0;U=e+64|0;I=e+96|0;b=e+120|0;y=e+112|0;w=e+100|0;P=e+5792|0;g=e+5796|0;v=e+5784|0;m=e+5788|0;k=e+104|0;z=e+92|0;_=e+128|0;A=e+44|0;B=e+136|0;e:while(1){r=a[d>>2]|0;while(1){if(r>>>0<262){Ie(e);r=a[d>>2]|0;if(!(r>>>0>261|(t|0)!=0)){r=0;O=74;break e}if(!r){O=47;break e}if(r>>>0<=2){a[b>>2]=a[I>>2];a[w>>2]=a[y>>2];a[I>>2]=2;r=2}else O=8}else O=8;do{if((O|0)==8){O=0;h=a[C>>2]|0;r=(a[p>>2]<>2]^(o[(a[L>>2]|0)+(h+2)>>0]|0))&a[x>>2];a[p>>2]=r;r=n[(a[T>>2]|0)+(r<<1)>>1]|0;n[(a[U>>2]|0)+((h&a[M>>2])<<1)>>1]=r;r=r&65535;n[(a[T>>2]|0)+(a[p>>2]<<1)>>1]=a[C>>2];h=a[I>>2]|0;a[b>>2]=h;a[w>>2]=a[y>>2];a[I>>2]=2;if(((r|0)!=0?h>>>0<(a[_>>2]|0)>>>0:0)?((a[C>>2]|0)-r|0)>>>0<=((a[A>>2]|0)+-262|0)>>>0:0){r=Oe(e,r)|0;a[I>>2]=r;if(r>>>0<6){if((a[B>>2]|0)!=1){if((r|0)!=3)break;if(((a[C>>2]|0)-(a[y>>2]|0)|0)>>>0<=4096){r=3;break}}a[I>>2]=2;r=2}}else r=2}}while(0);f=a[b>>2]|0;if(!(f>>>0<3|r>>>0>f>>>0))break;if(!(a[k>>2]|0)){a[k>>2]=1;a[C>>2]=(a[C>>2]|0)+1;r=(a[d>>2]|0)+-1|0;a[d>>2]=r;continue}h=i[(a[L>>2]|0)+((a[C>>2]|0)+-1)>>0]|0;n[(a[g>>2]|0)+(a[P>>2]<<1)>>1]=0;c=a[P>>2]|0;a[P>>2]=c+1;i[(a[v>>2]|0)+c>>0]=h;h=e+148+((h&255)<<2)|0;n[h>>1]=(n[h>>1]|0)+1<<16>>16;if((a[P>>2]|0)==((a[m>>2]|0)+-1|0)){r=a[z>>2]|0;if((r|0)>-1)f=(a[L>>2]|0)+r|0;else f=0;Fe(e,f,(a[C>>2]|0)-r|0,0);a[z>>2]=a[C>>2];u=a[e>>2]|0;c=a[u+28>>2]|0;r=c+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){h=c+5816|0;j=n[h>>1]&255;f=c+20|0;l=a[f>>2]|0;a[f>>2]=l+1;i[(a[c+8>>2]|0)+l>>0]=j;n[h>>1]=(s[h>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=c+20|0;break}else{j=c+5816|0;h=n[j>>1]&255;f=c+20|0;F=a[f>>2]|0;a[f>>2]=F+1;l=c+8|0;i[(a[l>>2]|0)+F>>0]=h;F=(s[j>>1]|0)>>>8&255;h=a[f>>2]|0;a[f>>2]=h+1;i[(a[l>>2]|0)+h>>0]=F;n[j>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;l=u+16|0;F=a[l>>2]|0;r=r>>>0>F>>>0?F:r;if(r|0?(F=u+12|0,R=c+16|0,rt(a[F>>2]|0,a[R>>2]|0,r|0)|0,a[F>>2]=(a[F>>2]|0)+r,a[R>>2]=(a[R>>2]|0)+r,F=u+20|0,a[F>>2]=(a[F>>2]|0)+r,a[l>>2]=(a[l>>2]|0)-r,F=a[f>>2]|0,a[f>>2]=F-r,(F|0)==(r|0)):0)a[R>>2]=a[c+8>>2]}a[C>>2]=(a[C>>2]|0)+1;r=(a[d>>2]|0)+-1|0;a[d>>2]=r;if(!(a[(a[e>>2]|0)+16>>2]|0)){r=0;O=74;break e}}c=a[C>>2]|0;h=c+(a[d>>2]|0)+-3|0;u=f+253|0;c=c+65535-(a[w>>2]|0)&65535;n[(a[g>>2]|0)+(a[P>>2]<<1)>>1]=c;r=a[P>>2]|0;a[P>>2]=r+1;i[(a[v>>2]|0)+r>>0]=u;c=c+-1<<16>>16;u=e+148+((o[13625+(u&255)>>0]|0|256)+1<<2)|0;n[u>>1]=(n[u>>1]|0)+1<<16>>16;u=c&65535;u=e+2440+((o[13113+((c&65535)<256?u:(u>>>7)+256|0)>>0]|0)<<2)|0;n[u>>1]=(n[u>>1]|0)+1<<16>>16;u=a[P>>2]|0;c=(a[m>>2]|0)+-1|0;r=a[b>>2]|0;a[d>>2]=(a[d>>2]|0)-(r+-1);r=r+-2|0;a[b>>2]=r;do{f=a[C>>2]|0;l=f+1|0;a[C>>2]=l;if(l>>>0<=h>>>0){r=(a[p>>2]<>2]^(o[(a[L>>2]|0)+(f+3)>>0]|0))&a[x>>2];a[p>>2]=r;n[(a[U>>2]|0)+((l&a[M>>2])<<1)>>1]=n[(a[T>>2]|0)+(r<<1)>>1]|0;n[(a[T>>2]|0)+(a[p>>2]<<1)>>1]=a[C>>2];r=a[b>>2]|0}r=r+-1|0;a[b>>2]=r}while((r|0)!=0);a[k>>2]=0;a[I>>2]=2;l=(a[C>>2]|0)+1|0;a[C>>2]=l;if((u|0)!=(c|0))continue;r=a[z>>2]|0;if((r|0)>-1)f=(a[L>>2]|0)+r|0;else f=0;Fe(e,f,l-r|0,0);a[z>>2]=a[C>>2];u=a[e>>2]|0;c=a[u+28>>2]|0;r=c+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){F=c+5816|0;h=n[F>>1]&255;f=c+20|0;j=a[f>>2]|0;a[f>>2]=j+1;i[(a[c+8>>2]|0)+j>>0]=h;n[F>>1]=(s[F>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=c+20|0;break}else{F=c+5816|0;j=n[F>>1]&255;f=c+20|0;l=a[f>>2]|0;a[f>>2]=l+1;h=c+8|0;i[(a[h>>2]|0)+l>>0]=j;l=(s[F>>1]|0)>>>8&255;j=a[f>>2]|0;a[f>>2]=j+1;i[(a[h>>2]|0)+j>>0]=l;n[F>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;l=u+16|0;F=a[l>>2]|0;r=r>>>0>F>>>0?F:r;if(r|0?(F=u+12|0,E=c+16|0,rt(a[F>>2]|0,a[E>>2]|0,r|0)|0,a[F>>2]=(a[F>>2]|0)+r,a[E>>2]=(a[E>>2]|0)+r,F=u+20|0,a[F>>2]=(a[F>>2]|0)+r,a[l>>2]=(a[l>>2]|0)-r,F=a[f>>2]|0,a[f>>2]=F-r,(F|0)==(r|0)):0)a[E>>2]=a[c+8>>2];if(!(a[(a[e>>2]|0)+16>>2]|0)){r=0;O=74;break}}if((O|0)==47){if(a[k>>2]|0){F=i[(a[L>>2]|0)+((a[C>>2]|0)+-1)>>0]|0;n[(a[g>>2]|0)+(a[P>>2]<<1)>>1]=0;j=a[P>>2]|0;a[P>>2]=j+1;i[(a[v>>2]|0)+j>>0]=F;F=e+148+((F&255)<<2)|0;n[F>>1]=(n[F>>1]|0)+1<<16>>16;a[k>>2]=0}l=a[C>>2]|0;a[e+5812>>2]=l>>>0<2?l:2;if((t|0)==4){f=a[z>>2]|0;if((f|0)>-1)r=(a[L>>2]|0)+f|0;else r=0;Fe(e,r,l-f|0,1);a[z>>2]=a[C>>2];c=a[e>>2]|0;h=a[c+28>>2]|0;r=h+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){F=h+5816|0;D=n[F>>1]&255;f=h+20|0;j=a[f>>2]|0;a[f>>2]=j+1;i[(a[h+8>>2]|0)+j>>0]=D;n[F>>1]=(s[F>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=h+20|0;break}else{F=h+5816|0;j=n[F>>1]&255;f=h+20|0;C=a[f>>2]|0;a[f>>2]=C+1;D=h+8|0;i[(a[D>>2]|0)+C>>0]=j;C=(s[F>>1]|0)>>>8&255;j=a[f>>2]|0;a[f>>2]=j+1;i[(a[D>>2]|0)+j>>0]=C;n[F>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;l=c+16|0;F=a[l>>2]|0;r=r>>>0>F>>>0?F:r;if(!r){F=a[e>>2]|0;F=F+16|0;F=a[F>>2]|0;F=(F|0)==0;F=F?2:3;return F|0}F=c+12|0;u=h+16|0;rt(a[F>>2]|0,a[u>>2]|0,r|0)|0;a[F>>2]=(a[F>>2]|0)+r;a[u>>2]=(a[u>>2]|0)+r;F=c+20|0;a[F>>2]=(a[F>>2]|0)+r;a[l>>2]=(a[l>>2]|0)-r;F=a[f>>2]|0;a[f>>2]=F-r;if((F|0)!=(r|0)){F=a[e>>2]|0;F=F+16|0;F=a[F>>2]|0;F=(F|0)==0;F=F?2:3;return F|0}a[u>>2]=a[h+8>>2];F=a[e>>2]|0;F=F+16|0;F=a[F>>2]|0;F=(F|0)==0;F=F?2:3;return F|0}if(a[P>>2]|0){f=a[z>>2]|0;if((f|0)>-1)r=(a[L>>2]|0)+f|0;else r=0;Fe(e,r,l-f|0,0);a[z>>2]=a[C>>2];u=a[e>>2]|0;c=a[u+28>>2]|0;r=c+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){F=c+5816|0;C=n[F>>1]&255;f=c+20|0;j=a[f>>2]|0;a[f>>2]=j+1;i[(a[c+8>>2]|0)+j>>0]=C;n[F>>1]=(s[F>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=c+20|0;break}else{F=c+5816|0;j=n[F>>1]&255;f=c+20|0;z=a[f>>2]|0;a[f>>2]=z+1;C=c+8|0;i[(a[C>>2]|0)+z>>0]=j;z=(s[F>>1]|0)>>>8&255;j=a[f>>2]|0;a[f>>2]=j+1;i[(a[C>>2]|0)+j>>0]=z;n[F>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;l=u+16|0;F=a[l>>2]|0;r=r>>>0>F>>>0?F:r;if(r|0?(F=u+12|0,D=c+16|0,rt(a[F>>2]|0,a[D>>2]|0,r|0)|0,a[F>>2]=(a[F>>2]|0)+r,a[D>>2]=(a[D>>2]|0)+r,F=u+20|0,a[F>>2]=(a[F>>2]|0)+r,a[l>>2]=(a[l>>2]|0)-r,F=a[f>>2]|0,a[f>>2]=F-r,(F|0)==(r|0)):0)a[D>>2]=a[c+8>>2];if(!(a[(a[e>>2]|0)+16>>2]|0)){F=0;return F|0}}F=1;return F|0}else if((O|0)==74)return r|0;return 0}function ze(e,t){e=e|0;t=t|0;var r=0,f=0,l=0,u=0,c=0,h=0,d=0,p=0,b=0,y=0,w=0,g=0,v=0,m=0,k=0,_=0,S=0,A=0,E=0,B=0,R=0,x=0,T=0,M=0,U=0,I=0,P=0,O=0,L=0,z=0,C=0,D=0,j=0,F=0,N=0,Z=0,H=0,Y=0,J=0,q=0,W=0;if(!e){e=-2;return e|0}F=e+28|0;N=a[F>>2]|0;if(t>>>0>5|(N|0)==0){e=-2;return e|0}Y=e+12|0;do{if(a[Y>>2]|0){if((a[e>>2]|0)==0?a[e+4>>2]|0:0)break;D=N+4|0;r=a[D>>2]|0;if((r|0)!=666|(t|0)==4){H=e+16|0;if(!(a[H>>2]|0)){a[e+24>>2]=13933;e=-5;return e|0}a[N>>2]=e;j=N+40|0;E=a[j>>2]|0;a[j>>2]=t;do{if((r|0)==42){if((a[N+24>>2]|0)!=2){f=(a[N+48>>2]<<12)+-30720|0;if((a[N+136>>2]|0)<=1?(l=a[N+132>>2]|0,(l|0)>=2):0)if((l|0)<6)r=64;else r=(l|0)==6?128:192;else r=0;w=f|r;B=N+108|0;w=(a[B>>2]|0)==0?w:w|32;a[D>>2]=113;f=N+20|0;r=a[f>>2]|0;a[f>>2]=r+1;l=N+8|0;i[(a[l>>2]|0)+r>>0]=w>>>8;r=a[f>>2]|0;a[f>>2]=r+1;i[(a[l>>2]|0)+r>>0]=((w>>>0)%31|0|w)^31;r=e+48|0;if(a[B>>2]|0){B=a[r>>2]|0;w=a[f>>2]|0;a[f>>2]=w+1;i[(a[l>>2]|0)+w>>0]=B>>>24;w=a[f>>2]|0;a[f>>2]=w+1;i[(a[l>>2]|0)+w>>0]=B>>>16;w=a[r>>2]|0;B=a[f>>2]|0;a[f>>2]=B+1;i[(a[l>>2]|0)+B>>0]=w>>>8;B=a[f>>2]|0;a[f>>2]=B+1;i[(a[l>>2]|0)+B>>0]=w}a[r>>2]=1;r=a[D>>2]|0;B=30;break}l=e+48|0;a[l>>2]=0;c=N+20|0;f=a[c>>2]|0;a[c>>2]=f+1;h=N+8|0;i[(a[h>>2]|0)+f>>0]=31;f=a[c>>2]|0;a[c>>2]=f+1;i[(a[h>>2]|0)+f>>0]=-117;f=a[c>>2]|0;a[c>>2]=f+1;i[(a[h>>2]|0)+f>>0]=8;f=N+28|0;r=a[f>>2]|0;if(!r){r=a[c>>2]|0;a[c>>2]=r+1;i[(a[h>>2]|0)+r>>0]=0;r=a[c>>2]|0;a[c>>2]=r+1;i[(a[h>>2]|0)+r>>0]=0;r=a[c>>2]|0;a[c>>2]=r+1;i[(a[h>>2]|0)+r>>0]=0;r=a[c>>2]|0;a[c>>2]=r+1;i[(a[h>>2]|0)+r>>0]=0;r=a[c>>2]|0;a[c>>2]=r+1;i[(a[h>>2]|0)+r>>0]=0;r=a[N+132>>2]|0;if((r|0)==9)r=2;else r=((r|0)<2?1:(a[N+136>>2]|0)>1)?4:0;S=a[c>>2]|0;a[c>>2]=S+1;i[(a[h>>2]|0)+S>>0]=r;S=a[c>>2]|0;a[c>>2]=S+1;i[(a[h>>2]|0)+S>>0]=3;a[D>>2]=113;break}B=((a[r>>2]|0)!=0|(a[r+44>>2]|0?2:0)|((a[r+16>>2]|0)==0?0:4)|((a[r+28>>2]|0)==0?0:8)|((a[r+36>>2]|0)==0?0:16))&255;r=a[c>>2]|0;a[c>>2]=r+1;i[(a[h>>2]|0)+r>>0]=B;r=a[(a[f>>2]|0)+4>>2]&255;B=a[c>>2]|0;a[c>>2]=B+1;i[(a[h>>2]|0)+B>>0]=r;B=(a[(a[f>>2]|0)+4>>2]|0)>>>8&255;r=a[c>>2]|0;a[c>>2]=r+1;i[(a[h>>2]|0)+r>>0]=B;r=(a[(a[f>>2]|0)+4>>2]|0)>>>16&255;B=a[c>>2]|0;a[c>>2]=B+1;i[(a[h>>2]|0)+B>>0]=r;B=(a[(a[f>>2]|0)+4>>2]|0)>>>24&255;r=a[c>>2]|0;a[c>>2]=r+1;i[(a[h>>2]|0)+r>>0]=B;r=a[N+132>>2]|0;if((r|0)==9)r=2;else r=((r|0)<2?1:(a[N+136>>2]|0)>1)?4:0;B=a[c>>2]|0;a[c>>2]=B+1;i[(a[h>>2]|0)+B>>0]=r;B=a[(a[f>>2]|0)+12>>2]&255;r=a[c>>2]|0;a[c>>2]=r+1;i[(a[h>>2]|0)+r>>0]=B;r=a[f>>2]|0;if(a[r+16>>2]|0){r=a[r+20>>2]&255;B=a[c>>2]|0;a[c>>2]=B+1;i[(a[h>>2]|0)+B>>0]=r;B=(a[(a[f>>2]|0)+20>>2]|0)>>>8&255;r=a[c>>2]|0;a[c>>2]=r+1;i[(a[h>>2]|0)+r>>0]=B;r=a[f>>2]|0}if(a[r+44>>2]|0)a[l>>2]=Ge(a[l>>2]|0,a[h>>2]|0,a[c>>2]|0)|0;a[N+32>>2]=0;a[D>>2]=69;B=31}else B=30}while(0);if((B|0)==30)if((r|0)==69)B=31;else B=56;do{if((B|0)==31){d=N+28|0;r=a[d>>2]|0;if(!(a[r+16>>2]|0)){a[D>>2]=73;B=57;break}p=N+20|0;w=N+32|0;c=N+12|0;h=e+20|0;b=e+48|0;y=N+8|0;l=a[w>>2]|0;f=a[p>>2]|0;while(1){if(l>>>0>=(a[r+20>>2]&65535)>>>0)break;u=a[p>>2]|0;if((u|0)==(a[c>>2]|0)){if((a[r+44>>2]|0)!=0&u>>>0>f>>>0)a[b>>2]=Ge(a[b>>2]|0,(a[y>>2]|0)+f|0,u-f|0)|0;l=a[F>>2]|0;r=l+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){u=l+5816|0;q=n[u>>1]&255;f=l+20|0;J=a[f>>2]|0;a[f>>2]=J+1;i[(a[l+8>>2]|0)+J>>0]=q;n[u>>1]=(s[u>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=l+20|0;break}else{q=l+5816|0;J=n[q>>1]&255;f=l+20|0;W=a[f>>2]|0;a[f>>2]=W+1;u=l+8|0;i[(a[u>>2]|0)+W>>0]=J;W=(s[q>>1]|0)>>>8&255;J=a[f>>2]|0;a[f>>2]=J+1;i[(a[u>>2]|0)+J>>0]=W;n[q>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;W=a[H>>2]|0;r=r>>>0>W>>>0?W:r;if(r|0?(g=l+16|0,rt(a[Y>>2]|0,a[g>>2]|0,r|0)|0,a[Y>>2]=(a[Y>>2]|0)+r,a[g>>2]=(a[g>>2]|0)+r,a[h>>2]=(a[h>>2]|0)+r,a[H>>2]=(a[H>>2]|0)-r,W=a[f>>2]|0,a[f>>2]=W-r,(W|0)==(r|0)):0)a[g>>2]=a[l+8>>2];f=a[p>>2]|0;if((f|0)==(a[c>>2]|0)){B=46;break}r=a[d>>2]|0;l=a[w>>2]|0;u=f}l=i[(a[r+16>>2]|0)+l>>0]|0;a[p>>2]=u+1;i[(a[y>>2]|0)+u>>0]=l;l=(a[w>>2]|0)+1|0;a[w>>2]=l;r=a[d>>2]|0}if((B|0)==46)r=a[d>>2]|0;if((a[r+44>>2]|0)!=0?(v=a[p>>2]|0,v>>>0>f>>>0):0){a[b>>2]=Ge(a[b>>2]|0,(a[y>>2]|0)+f|0,v-f|0)|0;r=a[d>>2]|0}if((a[w>>2]|0)==(a[r+20>>2]|0)){a[w>>2]=0;a[D>>2]=73;B=57;break}else{r=a[D>>2]|0;B=56;break}}}while(0);if((B|0)==56)if((r|0)==73)B=57;else B=80;do{if((B|0)==57){h=N+28|0;if(!(a[(a[h>>2]|0)+28>>2]|0)){a[D>>2]=91;B=81;break}d=N+20|0;f=a[d>>2]|0;u=N+12|0;c=e+20|0;p=e+48|0;b=N+8|0;y=N+32|0;r=f;while(1){if((r|0)==(a[u>>2]|0)){if(r>>>0>f>>>0?(a[(a[h>>2]|0)+44>>2]|0)!=0:0)a[p>>2]=Ge(a[p>>2]|0,(a[b>>2]|0)+f|0,r-f|0)|0;l=a[F>>2]|0;r=l+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){W=l+5816|0;J=n[W>>1]&255;f=l+20|0;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[l+8>>2]|0)+q>>0]=J;n[W>>1]=(s[W>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=l+20|0;break}else{W=l+5816|0;q=n[W>>1]&255;f=l+20|0;B=a[f>>2]|0;a[f>>2]=B+1;J=l+8|0;i[(a[J>>2]|0)+B>>0]=q;B=(s[W>>1]|0)>>>8&255;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[J>>2]|0)+q>>0]=B;n[W>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;W=a[H>>2]|0;r=r>>>0>W>>>0?W:r;if(r|0?(m=l+16|0,rt(a[Y>>2]|0,a[m>>2]|0,r|0)|0,a[Y>>2]=(a[Y>>2]|0)+r,a[m>>2]=(a[m>>2]|0)+r,a[c>>2]=(a[c>>2]|0)+r,a[H>>2]=(a[H>>2]|0)-r,W=a[f>>2]|0,a[f>>2]=W-r,(W|0)==(r|0)):0)a[m>>2]=a[l+8>>2];f=a[d>>2]|0;if((f|0)==(a[u>>2]|0)){r=1;break}else r=f}l=a[y>>2]|0;a[y>>2]=l+1;l=i[(a[(a[h>>2]|0)+28>>2]|0)+l>>0]|0;a[d>>2]=r+1;i[(a[b>>2]|0)+r>>0]=l;if(!(l<<24>>24)){r=l&255;break}r=a[d>>2]|0}if(a[(a[h>>2]|0)+44>>2]|0?(k=a[d>>2]|0,k>>>0>f>>>0):0)a[p>>2]=Ge(a[p>>2]|0,(a[b>>2]|0)+f|0,k-f|0)|0;if(!r){a[y>>2]=0;a[D>>2]=91;B=81;break}else{r=a[D>>2]|0;B=80;break}}}while(0);if((B|0)==80)if((r|0)==91)B=81;else{u=r;B=104}do{if((B|0)==81){d=N+28|0;if(!(a[(a[d>>2]|0)+36>>2]|0)){a[D>>2]=103;B=105;break}p=N+20|0;f=a[p>>2]|0;u=N+12|0;c=e+20|0;b=e+48|0;y=N+8|0;h=N+32|0;r=f;while(1){if((r|0)==(a[u>>2]|0)){if(r>>>0>f>>>0?(a[(a[d>>2]|0)+44>>2]|0)!=0:0)a[b>>2]=Ge(a[b>>2]|0,(a[y>>2]|0)+f|0,r-f|0)|0;l=a[F>>2]|0;r=l+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){W=l+5816|0;J=n[W>>1]&255;f=l+20|0;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[l+8>>2]|0)+q>>0]=J;n[W>>1]=(s[W>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=l+20|0;break}else{W=l+5816|0;q=n[W>>1]&255;f=l+20|0;B=a[f>>2]|0;a[f>>2]=B+1;J=l+8|0;i[(a[J>>2]|0)+B>>0]=q;B=(s[W>>1]|0)>>>8&255;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[J>>2]|0)+q>>0]=B;n[W>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;W=a[H>>2]|0;r=r>>>0>W>>>0?W:r;if(r|0?(_=l+16|0,rt(a[Y>>2]|0,a[_>>2]|0,r|0)|0,a[Y>>2]=(a[Y>>2]|0)+r,a[_>>2]=(a[_>>2]|0)+r,a[c>>2]=(a[c>>2]|0)+r,a[H>>2]=(a[H>>2]|0)-r,W=a[f>>2]|0,a[f>>2]=W-r,(W|0)==(r|0)):0)a[_>>2]=a[l+8>>2];f=a[p>>2]|0;if((f|0)==(a[u>>2]|0)){r=1;break}else r=f}l=a[h>>2]|0;a[h>>2]=l+1;l=i[(a[(a[d>>2]|0)+36>>2]|0)+l>>0]|0;a[p>>2]=r+1;i[(a[y>>2]|0)+r>>0]=l;if(!(l<<24>>24)){r=l&255;break}r=a[p>>2]|0}if(a[(a[d>>2]|0)+44>>2]|0?(S=a[p>>2]|0,S>>>0>f>>>0):0)a[b>>2]=Ge(a[b>>2]|0,(a[y>>2]|0)+f|0,S-f|0)|0;if(!r){a[D>>2]=103;B=105;break}else{u=a[D>>2]|0;B=104;break}}}while(0);if((B|0)==104?(u|0)==103:0)B=105;do{if((B|0)==105){if(!(a[(a[N+28>>2]|0)+44>>2]|0)){a[D>>2]=113;break}u=N+20|0;c=N+12|0;if(((a[u>>2]|0)+2|0)>>>0>(a[c>>2]|0)>>>0){l=a[F>>2]|0;r=l+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){W=l+5816|0;J=n[W>>1]&255;f=l+20|0;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[l+8>>2]|0)+q>>0]=J;n[W>>1]=(s[W>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=l+20|0;break}else{W=l+5816|0;q=n[W>>1]&255;f=l+20|0;B=a[f>>2]|0;a[f>>2]=B+1;J=l+8|0;i[(a[J>>2]|0)+B>>0]=q;B=(s[W>>1]|0)>>>8&255;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[J>>2]|0)+q>>0]=B;n[W>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;W=a[H>>2]|0;r=r>>>0>W>>>0?W:r;if(r|0?(A=l+16|0,rt(a[Y>>2]|0,a[A>>2]|0,r|0)|0,a[Y>>2]=(a[Y>>2]|0)+r,a[A>>2]=(a[A>>2]|0)+r,W=e+20|0,a[W>>2]=(a[W>>2]|0)+r,a[H>>2]=(a[H>>2]|0)-r,W=a[f>>2]|0,a[f>>2]=W-r,(W|0)==(r|0)):0)a[A>>2]=a[l+8>>2]}r=a[u>>2]|0;if((r+2|0)>>>0<=(a[c>>2]|0)>>>0){W=e+48|0;B=a[W>>2]&255;a[u>>2]=r+1;J=N+8|0;i[(a[J>>2]|0)+r>>0]=B;B=(a[W>>2]|0)>>>8&255;q=a[u>>2]|0;a[u>>2]=q+1;i[(a[J>>2]|0)+q>>0]=B;a[W>>2]=0;a[D>>2]=113}}}while(0);_=N+20|0;if(!(a[_>>2]|0)){if((a[e+4>>2]|0)==0?!((t|0)==4?1:((t<<1)-((t|0)>4?9:0)|0)>((E<<1)-((E|0)>4?9:0)|0)):0){a[e+24>>2]=13933;W=-5;return W|0}}else{u=a[F>>2]|0;r=u+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){W=u+5816|0;J=n[W>>1]&255;l=u+20|0;q=a[l>>2]|0;a[l>>2]=q+1;i[(a[u+8>>2]|0)+q>>0]=J;n[W>>1]=(s[W>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{l=u+20|0;break}else{W=u+5816|0;q=n[W>>1]&255;l=u+20|0;B=a[l>>2]|0;a[l>>2]=B+1;J=u+8|0;i[(a[J>>2]|0)+B>>0]=q;B=(s[W>>1]|0)>>>8&255;q=a[l>>2]|0;a[l>>2]=q+1;i[(a[J>>2]|0)+q>>0]=B;n[W>>1]=0;a[r>>2]=0}}while(0);f=a[l>>2]|0;r=a[H>>2]|0;f=f>>>0>r>>>0?r:f;if(f){r=u+16|0;rt(a[Y>>2]|0,a[r>>2]|0,f|0)|0;a[Y>>2]=(a[Y>>2]|0)+f;a[r>>2]=(a[r>>2]|0)+f;W=e+20|0;a[W>>2]=(a[W>>2]|0)+f;a[H>>2]=(a[H>>2]|0)-f;W=a[l>>2]|0;a[l>>2]=W-f;if((W|0)==(f|0))a[r>>2]=a[u+8>>2];r=a[H>>2]|0}if(!r){a[j>>2]=-1;W=0;return W|0}}f=(a[D>>2]|0)==666;r=a[e+4>>2]|0;if(f)if(!r)B=137;else{a[e+24>>2]=13933;W=-5;return W|0}else if(!r)B=137;else B=140;do{if((B|0)==137)if(!(a[N+116>>2]|0))if(t)if(f)break;else{B=140;break}else{W=0;return W|0}else B=140}while(0);e:do{if((B|0)==140){t:do{switch(a[N+136>>2]|0){case 2:{h=N+116|0;d=N+96|0;v=N+108|0;g=N+56|0;p=N+5792|0;b=N+5796|0;y=N+5784|0;w=N+5788|0;m=N+92|0;while(1){if((a[h>>2]|0)==0?(Ie(N),(a[h>>2]|0)==0):0)break;a[d>>2]=0;W=i[(a[g>>2]|0)+(a[v>>2]|0)>>0]|0;n[(a[b>>2]|0)+(a[p>>2]<<1)>>1]=0;r=a[p>>2]|0;a[p>>2]=r+1;i[(a[y>>2]|0)+r>>0]=W;W=N+148+((W&255)<<2)|0;n[W>>1]=(n[W>>1]|0)+1<<16>>16;W=(a[p>>2]|0)==((a[w>>2]|0)+-1|0);a[h>>2]=(a[h>>2]|0)+-1;r=(a[v>>2]|0)+1|0;a[v>>2]=r;if(!W)continue;f=a[m>>2]|0;if((f|0)>-1)l=(a[g>>2]|0)+f|0;else l=0;Fe(N,l,r-f|0,0);a[m>>2]=a[v>>2];u=a[N>>2]|0;c=a[u+28>>2]|0;r=c+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){W=c+5816|0;J=n[W>>1]&255;f=c+20|0;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[c+8>>2]|0)+q>>0]=J;n[W>>1]=(s[W>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=c+20|0;break}else{W=c+5816|0;q=n[W>>1]&255;f=c+20|0;C=a[f>>2]|0;a[f>>2]=C+1;J=c+8|0;i[(a[J>>2]|0)+C>>0]=q;C=(s[W>>1]|0)>>>8&255;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[J>>2]|0)+q>>0]=C;n[W>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;l=u+16|0;W=a[l>>2]|0;r=r>>>0>W>>>0?W:r;if(r|0?(W=u+12|0,R=c+16|0,rt(a[W>>2]|0,a[R>>2]|0,r|0)|0,a[W>>2]=(a[W>>2]|0)+r,a[R>>2]=(a[R>>2]|0)+r,W=u+20|0,a[W>>2]=(a[W>>2]|0)+r,a[l>>2]=(a[l>>2]|0)-r,W=a[f>>2]|0,a[f>>2]=W-r,(W|0)==(r|0)):0)a[R>>2]=a[c+8>>2];if(!(a[(a[N>>2]|0)+16>>2]|0)){B=244;break t}}if(t){a[N+5812>>2]=0;if((t|0)==4){f=a[m>>2]|0;if((f|0)>-1)r=(a[g>>2]|0)+f|0;else r=0;Fe(N,r,(a[v>>2]|0)-f|0,1);a[m>>2]=a[v>>2];u=a[N>>2]|0;c=a[u+28>>2]|0;r=c+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){W=c+5816|0;J=n[W>>1]&255;f=c+20|0;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[c+8>>2]|0)+q>>0]=J;n[W>>1]=(s[W>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=c+20|0;break}else{W=c+5816|0;q=n[W>>1]&255;f=c+20|0;C=a[f>>2]|0;a[f>>2]=C+1;J=c+8|0;i[(a[J>>2]|0)+C>>0]=q;C=(s[W>>1]|0)>>>8&255;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[J>>2]|0)+q>>0]=C;n[W>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;l=u+16|0;W=a[l>>2]|0;r=r>>>0>W>>>0?W:r;if(r|0?(W=u+12|0,x=c+16|0,rt(a[W>>2]|0,a[x>>2]|0,r|0)|0,a[W>>2]=(a[W>>2]|0)+r,a[x>>2]=(a[x>>2]|0)+r,W=u+20|0,a[W>>2]=(a[W>>2]|0)+r,a[l>>2]=(a[l>>2]|0)-r,W=a[f>>2]|0,a[f>>2]=W-r,(W|0)==(r|0)):0)a[x>>2]=a[c+8>>2];if(!(a[(a[N>>2]|0)+16>>2]|0)){r=2;B=242;break t}else{B=240;break t}}if(a[p>>2]|0){f=a[m>>2]|0;if((f|0)>-1)r=(a[g>>2]|0)+f|0;else r=0;Fe(N,r,(a[v>>2]|0)-f|0,0);a[m>>2]=a[v>>2];u=a[N>>2]|0;c=a[u+28>>2]|0;r=c+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){W=c+5816|0;J=n[W>>1]&255;f=c+20|0;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[c+8>>2]|0)+q>>0]=J;n[W>>1]=(s[W>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=c+20|0;break}else{W=c+5816|0;q=n[W>>1]&255;f=c+20|0;D=a[f>>2]|0;a[f>>2]=D+1;J=c+8|0;i[(a[J>>2]|0)+D>>0]=q;D=(s[W>>1]|0)>>>8&255;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[J>>2]|0)+q>>0]=D;n[W>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;l=u+16|0;W=a[l>>2]|0;r=r>>>0>W>>>0?W:r;if(r|0?(W=u+12|0,T=c+16|0,rt(a[W>>2]|0,a[T>>2]|0,r|0)|0,a[W>>2]=(a[W>>2]|0)+r,a[T>>2]=(a[T>>2]|0)+r,W=u+20|0,a[W>>2]=(a[W>>2]|0)+r,a[l>>2]=(a[l>>2]|0)-r,W=a[f>>2]|0,a[f>>2]=W-r,(W|0)==(r|0)):0)a[T>>2]=a[c+8>>2];if(!(a[(a[N>>2]|0)+16>>2]|0))B=244}}else B=244;break}case 3:{h=N+116|0;d=N+96|0;m=N+108|0;v=N+56|0;p=N+5792|0;b=N+5796|0;y=N+5784|0;w=N+2440|0;g=N+5788|0;k=N+92|0;while(1){r=a[h>>2]|0;if(r>>>0<259){Ie(N);r=a[h>>2]|0;if(!(r>>>0>258|(t|0)!=0)){B=244;break t}if(!r)break;a[d>>2]=0;if(r>>>0>2)B=188;else B=203}else{a[d>>2]=0;B=188}if((B|0)==188){B=0;f=a[m>>2]|0;if((((f|0)!=0?(M=(a[v>>2]|0)+f|0,I=M+-1|0,U=i[I>>0]|0,I=I+1|0,U<<24>>24==(i[I>>0]|0)):0)?(P=I+1|0,U<<24>>24==(i[P>>0]|0)):0)?(O=P+1|0,U<<24>>24==(i[O>>0]|0)):0){u=M+258|0;f=O;do{l=f+1|0;if(U<<24>>24!=(i[l>>0]|0)){f=l;break}l=f+2|0;if(U<<24>>24!=(i[l>>0]|0)){f=l;break}l=f+3|0;if(U<<24>>24!=(i[l>>0]|0)){f=l;break}l=f+4|0;if(U<<24>>24!=(i[l>>0]|0)){f=l;break}l=f+5|0;if(U<<24>>24!=(i[l>>0]|0)){f=l;break}l=f+6|0;if(U<<24>>24!=(i[l>>0]|0)){f=l;break}l=f+7|0;if(U<<24>>24!=(i[l>>0]|0)){f=l;break}f=f+8|0}while(f>>>0>>0?U<<24>>24==(i[f>>0]|0):0);W=f-u+258|0;q=W>>>0>r>>>0;a[d>>2]=q?r:W;r=q?r:W;if(r>>>0>2){r=r+253|0;n[(a[b>>2]|0)+(a[p>>2]<<1)>>1]=1;l=a[p>>2]|0;a[p>>2]=l+1;i[(a[y>>2]|0)+l>>0]=r;r=N+148+((o[13625+(r&255)>>0]|256)+1<<2)|0;n[r>>1]=(n[r>>1]|0)+1<<16>>16;n[w>>1]=(n[w>>1]|0)+1<<16>>16;r=(a[p>>2]|0)==((a[g>>2]|0)+-1|0)&1;l=a[d>>2]|0;a[h>>2]=(a[h>>2]|0)-l;l=(a[m>>2]|0)+l|0;a[m>>2]=l;a[d>>2]=0}else B=203}else B=203}if((B|0)==203){B=0;r=i[(a[v>>2]|0)+(a[m>>2]|0)>>0]|0;n[(a[b>>2]|0)+(a[p>>2]<<1)>>1]=0;l=a[p>>2]|0;a[p>>2]=l+1;i[(a[y>>2]|0)+l>>0]=r;r=N+148+((r&255)<<2)|0;n[r>>1]=(n[r>>1]|0)+1<<16>>16;r=(a[p>>2]|0)==((a[g>>2]|0)+-1|0)&1;a[h>>2]=(a[h>>2]|0)+-1;l=(a[m>>2]|0)+1|0;a[m>>2]=l}if(!r)continue;r=a[k>>2]|0;if((r|0)>-1)f=(a[v>>2]|0)+r|0;else f=0;Fe(N,f,l-r|0,0);a[k>>2]=a[m>>2];u=a[N>>2]|0;c=a[u+28>>2]|0;r=c+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){W=c+5816|0;J=n[W>>1]&255;f=c+20|0;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[c+8>>2]|0)+q>>0]=J;n[W>>1]=(s[W>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=c+20|0;break}else{W=c+5816|0;q=n[W>>1]&255;f=c+20|0;T=a[f>>2]|0;a[f>>2]=T+1;J=c+8|0;i[(a[J>>2]|0)+T>>0]=q;T=(s[W>>1]|0)>>>8&255;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[J>>2]|0)+q>>0]=T;n[W>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;l=u+16|0;W=a[l>>2]|0;r=r>>>0>W>>>0?W:r;if(r|0?(W=u+12|0,L=c+16|0,rt(a[W>>2]|0,a[L>>2]|0,r|0)|0,a[W>>2]=(a[W>>2]|0)+r,a[L>>2]=(a[L>>2]|0)+r,W=u+20|0,a[W>>2]=(a[W>>2]|0)+r,a[l>>2]=(a[l>>2]|0)-r,W=a[f>>2]|0,a[f>>2]=W-r,(W|0)==(r|0)):0)a[L>>2]=a[c+8>>2];if(!(a[(a[N>>2]|0)+16>>2]|0)){B=244;break t}}a[N+5812>>2]=0;if((t|0)==4){f=a[k>>2]|0;if((f|0)>-1)r=(a[v>>2]|0)+f|0;else r=0;Fe(N,r,(a[m>>2]|0)-f|0,1);a[k>>2]=a[m>>2];u=a[N>>2]|0;c=a[u+28>>2]|0;r=c+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){W=c+5816|0;J=n[W>>1]&255;f=c+20|0;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[c+8>>2]|0)+q>>0]=J;n[W>>1]=(s[W>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=c+20|0;break}else{W=c+5816|0;q=n[W>>1]&255;f=c+20|0;C=a[f>>2]|0;a[f>>2]=C+1;J=c+8|0;i[(a[J>>2]|0)+C>>0]=q;C=(s[W>>1]|0)>>>8&255;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[J>>2]|0)+q>>0]=C;n[W>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;l=u+16|0;W=a[l>>2]|0;r=r>>>0>W>>>0?W:r;if(r|0?(W=u+12|0,z=c+16|0,rt(a[W>>2]|0,a[z>>2]|0,r|0)|0,a[W>>2]=(a[W>>2]|0)+r,a[z>>2]=(a[z>>2]|0)+r,W=u+20|0,a[W>>2]=(a[W>>2]|0)+r,a[l>>2]=(a[l>>2]|0)-r,W=a[f>>2]|0,a[f>>2]=W-r,(W|0)==(r|0)):0)a[z>>2]=a[c+8>>2];if(!(a[(a[N>>2]|0)+16>>2]|0)){r=2;B=242;break t}else{B=240;break t}}if(a[p>>2]|0){f=a[k>>2]|0;if((f|0)>-1)r=(a[v>>2]|0)+f|0;else r=0;Fe(N,r,(a[m>>2]|0)-f|0,0);a[k>>2]=a[m>>2];u=a[N>>2]|0;c=a[u+28>>2]|0;r=c+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){W=c+5816|0;J=n[W>>1]&255;f=c+20|0;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[c+8>>2]|0)+q>>0]=J;n[W>>1]=(s[W>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=c+20|0;break}else{W=c+5816|0;q=n[W>>1]&255;f=c+20|0;D=a[f>>2]|0;a[f>>2]=D+1;J=c+8|0;i[(a[J>>2]|0)+D>>0]=q;D=(s[W>>1]|0)>>>8&255;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[J>>2]|0)+q>>0]=D;n[W>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;l=u+16|0;W=a[l>>2]|0;r=r>>>0>W>>>0?W:r;if(r|0?(W=u+12|0,C=c+16|0,rt(a[W>>2]|0,a[C>>2]|0,r|0)|0,a[W>>2]=(a[W>>2]|0)+r,a[C>>2]=(a[C>>2]|0)+r,W=u+20|0,a[W>>2]=(a[W>>2]|0)+r,a[l>>2]=(a[l>>2]|0)-r,W=a[f>>2]|0,a[f>>2]=W-r,(W|0)==(r|0)):0)a[C>>2]=a[c+8>>2];if(!(a[(a[N>>2]|0)+16>>2]|0))B=244}break}default:{r=ct[a[8+((a[N+132>>2]|0)*12|0)+8>>2]&3](N,t)|0;if((r|0)==2){r=2;B=242}else switch(r|0){case 3:{r=3;B=242;break}case 0:{B=244;break}default:B=243}}}}while(0);if((B|0)==240){r=3;B=242}if((B|0)==242){a[D>>2]=666;B=243}if((B|0)==243)switch(r|0){case 2:{B=244;break}case 1:break;default:break e}if((B|0)==244){if(a[H>>2]|0){W=0;return W|0}a[j>>2]=-1;W=0;return W|0}switch(t|0){case 1:{je(N);break}case 5:break;default:{De(N,0,0,0);if((t|0)==3?(W=N+76|0,q=N+68|0,n[(a[q>>2]|0)+((a[W>>2]|0)+-1<<1)>>1]=0,Qe(a[q>>2]|0,0,(a[W>>2]<<1)+-2|0)|0,(a[N+116>>2]|0)==0):0){a[N+108>>2]=0;a[N+92>>2]=0;a[N+5812>>2]=0}}}u=a[F>>2]|0;r=u+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){W=u+5816|0;J=n[W>>1]&255;l=u+20|0;q=a[l>>2]|0;a[l>>2]=q+1;i[(a[u+8>>2]|0)+q>>0]=J;n[W>>1]=(s[W>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{l=u+20|0;break}else{W=u+5816|0;q=n[W>>1]&255;l=u+20|0;D=a[l>>2]|0;a[l>>2]=D+1;J=u+8|0;i[(a[J>>2]|0)+D>>0]=q;D=(s[W>>1]|0)>>>8&255;q=a[l>>2]|0;a[l>>2]=q+1;i[(a[J>>2]|0)+q>>0]=D;n[W>>1]=0;a[r>>2]=0}}while(0);f=a[l>>2]|0;r=a[H>>2]|0;f=f>>>0>r>>>0?r:f;if(f){r=u+16|0;rt(a[Y>>2]|0,a[r>>2]|0,f|0)|0;a[Y>>2]=(a[Y>>2]|0)+f;a[r>>2]=(a[r>>2]|0)+f;W=e+20|0;a[W>>2]=(a[W>>2]|0)+f;a[H>>2]=(a[H>>2]|0)-f;W=a[l>>2]|0;a[l>>2]=W-f;if((W|0)==(f|0))a[r>>2]=a[u+8>>2];r=a[H>>2]|0}if(!r){a[j>>2]=-1;W=0;return W|0}}}while(0);if((t|0)!=4){W=0;return W|0}u=N+24|0;r=a[u>>2]|0;if((r|0)<1){W=1;return W|0}f=e+48|0;l=a[f>>2]|0;if((r|0)==2){J=a[_>>2]|0;a[_>>2]=J+1;q=N+8|0;i[(a[q>>2]|0)+J>>0]=l;N=(a[f>>2]|0)>>>8&255;J=a[_>>2]|0;a[_>>2]=J+1;i[(a[q>>2]|0)+J>>0]=N;J=(a[f>>2]|0)>>>16&255;N=a[_>>2]|0;a[_>>2]=N+1;i[(a[q>>2]|0)+N>>0]=J;N=(a[f>>2]|0)>>>24&255;J=a[_>>2]|0;a[_>>2]=J+1;i[(a[q>>2]|0)+J>>0]=N;J=e+8|0;N=a[J>>2]&255;W=a[_>>2]|0;a[_>>2]=W+1;i[(a[q>>2]|0)+W>>0]=N;W=(a[J>>2]|0)>>>8&255;N=a[_>>2]|0;a[_>>2]=N+1;i[(a[q>>2]|0)+N>>0]=W;N=(a[J>>2]|0)>>>16&255;W=a[_>>2]|0;a[_>>2]=W+1;i[(a[q>>2]|0)+W>>0]=N;J=(a[J>>2]|0)>>>24&255;W=a[_>>2]|0;a[_>>2]=W+1;i[(a[q>>2]|0)+W>>0]=J}else{J=a[_>>2]|0;a[_>>2]=J+1;q=N+8|0;i[(a[q>>2]|0)+J>>0]=l>>>24;J=a[_>>2]|0;a[_>>2]=J+1;i[(a[q>>2]|0)+J>>0]=l>>>16;J=a[f>>2]|0;W=a[_>>2]|0;a[_>>2]=W+1;i[(a[q>>2]|0)+W>>0]=J>>>8;W=a[_>>2]|0;a[_>>2]=W+1;i[(a[q>>2]|0)+W>>0]=J}l=a[F>>2]|0;r=l+5820|0;f=a[r>>2]|0;do{if((f|0)!=16)if((f|0)>7){W=l+5816|0;J=n[W>>1]&255;f=l+20|0;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[l+8>>2]|0)+q>>0]=J;n[W>>1]=(s[W>>1]|0)>>>8;a[r>>2]=(a[r>>2]|0)+-8;break}else{f=l+20|0;break}else{W=l+5816|0;q=n[W>>1]&255;f=l+20|0;N=a[f>>2]|0;a[f>>2]=N+1;J=l+8|0;i[(a[J>>2]|0)+N>>0]=q;N=(s[W>>1]|0)>>>8&255;q=a[f>>2]|0;a[f>>2]=q+1;i[(a[J>>2]|0)+q>>0]=N;n[W>>1]=0;a[r>>2]=0}}while(0);r=a[f>>2]|0;W=a[H>>2]|0;r=r>>>0>W>>>0?W:r;if(r|0?(Z=l+16|0,rt(a[Y>>2]|0,a[Z>>2]|0,r|0)|0,a[Y>>2]=(a[Y>>2]|0)+r,a[Z>>2]=(a[Z>>2]|0)+r,W=e+20|0,a[W>>2]=(a[W>>2]|0)+r,a[H>>2]=(a[H>>2]|0)-r,W=a[f>>2]|0,a[f>>2]=W-r,(W|0)==(r|0)):0)a[Z>>2]=a[l+8>>2];r=a[u>>2]|0;if((r|0)>0)a[u>>2]=0-r;W=(a[_>>2]|0)==0&1;return W|0}}}while(0);a[e+24>>2]=13900;W=-2;return W|0}function Ce(e,t,r,o,f,l){e=e|0;t=t|0;r=r|0;o=o|0;f=f|0;l=l|0;var u=0,h=0,d=0,p=0,b=0,y=0,w=0,g=0,v=0,m=0,k=0,_=0,S=0,A=0,E=0,B=0,R=0,x=0,T=0,M=0,U=0,I=0,P=0,O=0;O=c;c=c+64|0;I=O+32|0;p=O;u=0;while(1){if((u|0)==16){u=0;break}n[I+(u<<1)>>1]=0;u=u+1|0}while(1){if((u|0)==(r|0))break;M=I+(s[t+(u<<1)>>1]<<1)|0;n[M>>1]=(n[M>>1]|0)+1<<16>>16;u=u+1|0}u=a[f>>2]|0;h=15;while(1){if(!h){b=11;break}if(n[I+(h<<1)>>1]|0){P=h;break}h=h+-1|0}if((b|0)==11){l=a[o>>2]|0;a[o>>2]=l+4;n[l>>1]=320;n[l+2>>1]=320>>>16;l=a[o>>2]|0;a[o>>2]=l+4;n[l>>1]=320;n[l+2>>1]=320>>>16;a[f>>2]=1;l=0;c=O;return l|0}u=u>>>0>P>>>0?P:u;y=1;while(1){if(y>>>0>=P>>>0)break;if(n[I+(y<<1)>>1]|0)break;y=y+1|0}M=u>>>0>>0?y:u;h=1;d=1;while(1){if(d>>>0>=16)break;u=(h<<1)-(s[I+(d<<1)>>1]|0)|0;if((u|0)<0){U=-1;b=60;break}h=u;d=d+1|0}if((b|0)==60){c=O;return U|0}if((h|0)>0?!((e|0)!=0&(P|0)==1):0){l=-1;c=O;return l|0}n[p+2>>1]=0;u=0;h=1;while(1){if((h|0)==15){h=0;break}x=(u&65535)+(s[I+(h<<1)>>1]|0)|0;T=h+1|0;n[p+(T<<1)>>1]=x;u=x;h=T}while(1){if((h|0)==(r|0))break;u=n[t+(h<<1)>>1]|0;if(u<<16>>16){x=p+((u&65535)<<1)|0;T=n[x>>1]|0;n[x>>1]=T+1<<16>>16;n[l+((T&65535)<<1)>>1]=h}h=h+1|0}switch(e|0){case 0:{u=1<>>0>9){l=1;c=O;return l|0}else{u=1<>>0>9){l=1;c=O;return l|0}else{u=1<>2]|0;h=0;e:while(1){m=1<>1]|0;d=h&65535;if((d|0)>=(B|0))if((d|0)>(B|0)){y=s[R+(d<<1)>>1]|0;h=n[E+(d<<1)>>1]|0}else{y=96;h=0}else y=0;p=1<>>T;d=(h&65535)<<16|r<<8&65280|y&255;h=m;do{w=h;h=h-p|0;y=x+(b+h<<2)|0;n[y>>1]=d;n[y+2>>1]=d>>>16}while((w|0)!=(p|0));h=1<>>1}if(!h)g=0;else g=(g&h+-1)+h|0;_=_+1|0;y=I+(v<<1)|0;w=(n[y>>1]|0)+-1<<16>>16;n[y>>1]=w;if(!(w<<16>>16)){if((v|0)==(P|0)){b=57;break e}v=s[t+(s[l+(_<<1)>>1]<<1)>>1]|0}if(v>>>0<=M>>>0)continue;w=g&S;if((w|0)!=(k|0))break}b=(T|0)==0?M:T;y=x+(m<<2)|0;d=v-b|0;r=d;d=1<>>0>=P>>>0)break;h=d-(s[I+(h<<1)>>1]|0)|0;if((h|0)<1)break;r=r+1|0;d=h<<1}p=u+(1<>>0>852){U=1;b=60;break e}break}case 2:{if(p>>>0>592){U=1;b=60;break e}break}default:{}}i[(a[o>>2]|0)+(w<<2)>>0]=r;i[(a[o>>2]|0)+(w<<2)+1>>0]=A;T=a[o>>2]|0;n[T+(w<<2)+2>>1]=(y-T|0)>>>2;T=b;b=g;d=v;k=w;x=y;h=_;u=p}if((b|0)==57){if(g|0){l=x+(g<<2)|0;e=P-T<<8&65280|64;n[l>>1]=e;n[l+2>>1]=e>>>16}a[o>>2]=(a[o>>2]|0)+(u<<2);a[f>>2]=M;l=0;c=O;return l|0}else if((b|0)==60){c=O;return U|0}return 0}function De(e,t,r,o){e=e|0;t=t|0;r=r|0;o=o|0;var f=0,l=0,u=0,c=0,h=0,d=0;c=e+5820|0;u=a[c>>2]|0;f=o&65535;l=e+5816|0;o=s[l>>1]|0|f<>1]=o;if((u|0)>13){d=e+20|0;u=a[d>>2]|0;a[d>>2]=u+1;h=e+8|0;i[(a[h>>2]|0)+u>>0]=o;o=(s[l>>1]|0)>>>8&255;u=a[d>>2]|0;a[d>>2]=u+1;i[(a[h>>2]|0)+u>>0]=o;u=a[c>>2]|0;o=f>>>(16-u|0);n[l>>1]=o;u=u+-13|0}else u=u+3|0;f=o&255;a[c>>2]=u;do{if((u|0)<=8){o=e+5816|0;l=e+20|0;if((u|0)>0){h=a[l>>2]|0;a[l>>2]=h+1;d=e+8|0;i[(a[d>>2]|0)+h>>0]=f;f=d;break}else{f=e+8|0;break}}else{o=e+5816|0;l=e+20|0;h=a[l>>2]|0;a[l>>2]=h+1;d=e+8|0;i[(a[d>>2]|0)+h>>0]=f;h=(s[o>>1]|0)>>>8&255;f=a[l>>2]|0;a[l>>2]=f+1;i[(a[d>>2]|0)+f>>0]=h;f=d}}while(0);n[o>>1]=0;a[c>>2]=0;h=a[l>>2]|0;a[l>>2]=h+1;i[(a[f>>2]|0)+h>>0]=r;h=r>>>8;d=a[l>>2]|0;a[l>>2]=d+1;i[(a[f>>2]|0)+d>>0]=h;d=a[l>>2]|0;a[l>>2]=d+1;i[(a[f>>2]|0)+d>>0]=r^255;d=a[l>>2]|0;a[l>>2]=d+1;i[(a[f>>2]|0)+d>>0]=h^255;while(1){if(!r)break;h=i[t>>0]|0;d=a[l>>2]|0;a[l>>2]=d+1;i[(a[f>>2]|0)+d>>0]=h;r=r+-1|0;t=t+1|0}return}function je(e){e=e|0;var t=0,r=0,o=0,f=0,l=0,u=0;f=e+5820|0;o=a[f>>2]|0;r=e+5816|0;t=s[r>>1]|0|2<>1]=t;if((o|0)>13){u=e+20|0;o=a[u>>2]|0;a[u>>2]=o+1;l=e+8|0;i[(a[l>>2]|0)+o>>0]=t;t=(s[r>>1]|0)>>>8&255;o=a[u>>2]|0;a[u>>2]=o+1;i[(a[l>>2]|0)+o>>0]=t;o=a[f>>2]|0;t=2>>>(16-o|0);n[r>>1]=t;r=o+-13|0}else r=o+3|0;t=t&255;a[f>>2]=r;if((r|0)>9){r=e+5816|0;o=e+20|0;l=a[o>>2]|0;a[o>>2]=l+1;u=e+8|0;i[(a[u>>2]|0)+l>>0]=t;l=(s[r>>1]|0)>>>8&255;t=a[o>>2]|0;a[o>>2]=t+1;i[(a[u>>2]|0)+t>>0]=l;n[r>>1]=0;t=0;r=(a[f>>2]|0)+-9|0}else r=r+7|0;a[f>>2]=r;if((r|0)==16){u=e+5816|0;r=e+20|0;o=a[r>>2]|0;a[r>>2]=o+1;e=e+8|0;i[(a[e>>2]|0)+o>>0]=t;o=(s[u>>1]|0)>>>8&255;l=a[r>>2]|0;a[r>>2]=l+1;i[(a[e>>2]|0)+l>>0]=o;n[u>>1]=0;a[f>>2]=0;return}if((r|0)<=7)return;u=e+5816|0;o=e+20|0;l=a[o>>2]|0;a[o>>2]=l+1;i[(a[e+8>>2]|0)+l>>0]=t;n[u>>1]=(s[u>>1]|0)>>>8;a[f>>2]=(a[f>>2]|0)+-8;return}function Fe(e,t,r,f){e=e|0;t=t|0;r=r|0;f=f|0;var l=0,u=0,c=0,h=0,d=0,p=0,b=0,y=0,w=0;if((a[e+132>>2]|0)>0){h=(a[e>>2]|0)+44|0;if((a[h>>2]|0)==2){l=-201342849;u=0;while(1){if((u|0)>=32){c=7;break}if(l&1|0?n[e+148+(u<<2)>>1]|0:0){l=0;break}l=l>>>1;u=u+1|0}e:do{if((c|0)==7)if(((n[e+184>>1]|0)==0?(n[e+188>>1]|0)==0:0)?(n[e+200>>1]|0)==0:0){l=32;while(1){if((l|0)>=256){l=0;break e}if(n[e+148+(l<<2)>>1]|0){l=1;break e}l=l+1|0}}else l=1}while(0);a[h>>2]=l}Ne(e,e+2840|0);Ne(e,e+2852|0);He(e,e+148|0,a[e+2844>>2]|0);He(e,e+2440|0,a[e+2856>>2]|0);Ne(e,e+2864|0);l=18;while(1){if((l|0)<=2)break;if(n[e+2684+(o[13881+l>>0]<<2)+2>>1]|0)break;l=l+-1|0}u=e+5800|0;w=(a[u>>2]|0)+((l*3|0)+17)|0;a[u>>2]=w;w=(w+10|0)>>>3;u=((a[e+5804>>2]|0)+10|0)>>>3;y=l+1|0;l=u>>>0>w>>>0?w:u}else{u=r+5|0;y=1;l=u}do{if((r+4|0)>>>0>l>>>0|(t|0)==0){w=e+5820|0;t=a[w>>2]|0;h=(t|0)>13;if((u|0)==(l|0)?1:(a[e+136>>2]|0)==4){l=f+2&65535;u=e+5816|0;c=s[u>>1]|l<>1]=c;if(h){d=e+20|0;p=a[d>>2]|0;a[d>>2]=p+1;b=e+8|0;i[(a[b>>2]|0)+p>>0]=c;p=(s[u>>1]|0)>>>8&255;y=a[d>>2]|0;a[d>>2]=y+1;i[(a[b>>2]|0)+y>>0]=p;y=a[w>>2]|0;n[u>>1]=l>>>(16-y|0);l=y+-13|0}else l=t+3|0;a[w>>2]=l;Ye(e,11394,12546);l=0;break}c=f+4&65535;l=e+5816|0;u=s[l>>1]|c<>1]=u;if(h){p=e+20|0;t=a[p>>2]|0;a[p>>2]=t+1;b=e+8|0;i[(a[b>>2]|0)+t>>0]=u;u=(s[l>>1]|0)>>>8&255;t=a[p>>2]|0;a[p>>2]=t+1;i[(a[b>>2]|0)+t>>0]=u;t=a[w>>2]|0;u=c>>>(16-t|0);n[l>>1]=u;t=t+-13|0}else t=t+3|0;a[w>>2]=t;p=a[e+2844>>2]|0;b=a[e+2856>>2]|0;c=p+65280&65535;h=e+5816|0;l=u&65535|c<>1]=l;if((t|0)>11){t=e+20|0;d=a[t>>2]|0;a[t>>2]=d+1;r=e+8|0;i[(a[r>>2]|0)+d>>0]=l;l=(s[h>>1]|0)>>>8&255;d=a[t>>2]|0;a[t>>2]=d+1;i[(a[r>>2]|0)+d>>0]=l;d=a[w>>2]|0;l=c>>>(16-d|0);n[h>>1]=l;h=d+-11|0}else h=t+5|0;a[w>>2]=h;u=b&65535;c=e+5816|0;l=l&65535|u<>1]=l;if((h|0)>11){t=e+20|0;d=a[t>>2]|0;a[t>>2]=d+1;r=e+8|0;i[(a[r>>2]|0)+d>>0]=l;l=(s[c>>1]|0)>>>8&255;d=a[t>>2]|0;a[t>>2]=d+1;i[(a[r>>2]|0)+d>>0]=l;d=a[w>>2]|0;l=u>>>(16-d|0);n[c>>1]=l;c=d+-11|0}else c=h+5|0;a[w>>2]=c;u=y+65532&65535;d=e+5816|0;l=l&65535|u<>1]=l;if((c|0)>12){r=e+20|0;h=a[r>>2]|0;a[r>>2]=h+1;t=e+8|0;i[(a[t>>2]|0)+h>>0]=l;h=(s[d>>1]|0)>>>8&255;l=a[r>>2]|0;a[r>>2]=l+1;i[(a[t>>2]|0)+l>>0]=h;l=a[w>>2]|0;u=u>>>(16-l|0);n[d>>1]=u;l=l+-12|0;a[w>>2]=l}else{h=c+4|0;a[w>>2]=h;t=e+8|0;r=e+20|0;u=l;l=h}h=0;while(1){if((h|0)>=(y|0))break;c=s[e+2684+(o[13881+h>>0]<<2)+2>>1]|0;u=u&65535|c<>1]=u;if((l|0)>13){l=a[r>>2]|0;a[r>>2]=l+1;i[(a[t>>2]|0)+l>>0]=u;u=(s[d>>1]|0)>>>8&255;l=a[r>>2]|0;a[r>>2]=l+1;i[(a[t>>2]|0)+l>>0]=u;l=a[w>>2]|0;u=c>>>(16-l|0);n[d>>1]=u;l=l+-13|0}else l=l+3|0;a[w>>2]=l;h=h+1|0}w=e+148|0;Je(e,w,p);l=e+2440|0;Je(e,l,b);Ye(e,w,l);l=0}else{De(e,t,r,f);l=0}}while(0);while(1){if((l|0)==286){l=0;break}n[e+148+(l<<2)>>1]=0;l=l+1|0}while(1){if((l|0)==30){l=0;break}n[e+2440+(l<<2)>>1]=0;l=l+1|0}while(1){if((l|0)==19)break;n[e+2684+(l<<2)>>1]=0;l=l+1|0}n[e+1172>>1]=1;a[e+5804>>2]=0;a[e+5800>>2]=0;a[e+5808>>2]=0;a[e+5792>>2]=0;if(!f)return;c=e+5820|0;u=a[c>>2]|0;if((u|0)<=8){l=e+5816|0;if((u|0)>0){w=n[l>>1]&255;y=e+20|0;f=a[y>>2]|0;a[y>>2]=f+1;i[(a[e+8>>2]|0)+f>>0]=w}}else{l=e+5816|0;b=n[l>>1]&255;y=e+20|0;w=a[y>>2]|0;a[y>>2]=w+1;f=e+8|0;i[(a[f>>2]|0)+w>>0]=b;w=(s[l>>1]|0)>>>8&255;e=a[y>>2]|0;a[y>>2]=e+1;i[(a[f>>2]|0)+e>>0]=w}n[l>>1]=0;a[c>>2]=0;return}function Ne(e,t){e=e|0;t=t|0;var r=0,o=0,f=0,l=0,u=0,h=0,d=0,p=0,b=0,y=0,w=0,g=0,v=0,m=0,k=0,_=0,S=0,A=0,E=0;E=c;c=c+32|0;A=E;S=a[t>>2]|0;p=t+8|0;h=a[p>>2]|0;u=a[h>>2]|0;h=a[h+12>>2]|0;d=e+5200|0;a[d>>2]=0;w=e+5204|0;a[w>>2]=573;r=-1;o=0;while(1){if((o|0)>=(h|0))break;if(!(n[S+(o<<2)>>1]|0))n[S+(o<<2)+2>>1]=0;else{r=(a[d>>2]|0)+1|0;a[d>>2]=r;a[e+2908+(r<<2)>>2]=o;i[e+5208+o>>0]=0;r=o}o=o+1|0}k=e+5800|0;l=(u|0)==0;g=e+5804|0;_=r;while(1){f=a[d>>2]|0;if((f|0)>=2)break;m=(_|0)<2;r=_+1|0;o=m?r:_;r=m?r:0;_=f+1|0;a[d>>2]=_;a[e+2908+(_<<2)>>2]=r;n[S+(r<<2)>>1]=1;i[e+5208+r>>0]=0;a[k>>2]=(a[k>>2]|0)+-1;if(l){_=o;continue}a[g>>2]=(a[g>>2]|0)-(s[u+(r<<2)+2>>1]|0);_=o}l=t+4|0;a[l>>2]=_;r=(a[d>>2]|0)/2|0;while(1){if((r|0)<=0)break;Ze(e,S,r);r=r+-1|0}o=e+2912|0;f=a[d>>2]|0;r=h;while(1){m=a[o>>2]|0;a[d>>2]=f+-1;a[o>>2]=a[e+2908+(f<<2)>>2];Ze(e,S,1);y=a[o>>2]|0;v=(a[w>>2]|0)+-1|0;a[w>>2]=v;a[e+2908+(v<<2)>>2]=m;v=(a[w>>2]|0)+-1|0;a[w>>2]=v;a[e+2908+(v<<2)>>2]=y;n[S+(r<<2)>>1]=(s[S+(m<<2)>>1]|0)+(s[S+(y<<2)>>1]|0);v=i[e+5208+m>>0]|0;b=i[e+5208+y>>0]|0;i[e+5208+r>>0]=(((v&255)<(b&255)?b:v)&255)+1;v=r&65535;n[S+(y<<2)+2>>1]=v;n[S+(m<<2)+2>>1]=v;a[o>>2]=r;Ze(e,S,1);f=a[d>>2]|0;if((f|0)<=1)break;else r=r+1|0}v=a[o>>2]|0;m=(a[w>>2]|0)+-1|0;a[w>>2]=m;a[e+2908+(m<<2)>>2]=v;m=a[t>>2]|0;v=a[l>>2]|0;y=a[p>>2]|0;t=a[y>>2]|0;p=a[y+4>>2]|0;b=a[y+8>>2]|0;y=a[y+16>>2]|0;r=0;while(1){if((r|0)==16)break;n[e+2876+(r<<1)>>1]=0;r=r+1|0}n[m+(a[e+2908+(a[w>>2]<<2)>>2]<<2)+2>>1]=0;d=(t|0)==0;r=a[w>>2]|0;h=0;while(1){r=r+1|0;if((r|0)>=573)break;u=a[e+2908+(r<<2)>>2]|0;w=m+(u<<2)+2|0;l=s[m+(s[w>>1]<<2)+2>>1]|0;f=(l|0)<(y|0);l=f?l+1|0:y;h=h+(f&1^1)|0;n[w>>1]=l;if((u|0)>(v|0))continue;w=e+2876+(l<<1)|0;n[w>>1]=(n[w>>1]|0)+1<<16>>16;if((u|0)<(b|0))f=0;else f=a[p+(u-b<<2)>>2]|0;o=s[m+(u<<2)>>1]|0;w=ee(o,l+f|0)|0;a[k>>2]=(a[k>>2]|0)+w;if(d)continue;w=ee(o,(s[t+(u<<2)+2>>1]|0)+f|0)|0;a[g>>2]=(a[g>>2]|0)+w}e:do{if(h|0){d=e+2876+(y<<1)|0;while(1){u=y;while(1){l=u+-1|0;o=e+2876+(l<<1)|0;f=n[o>>1]|0;if(!(f<<16>>16))u=l;else break}n[o>>1]=f+-1<<16>>16;g=e+2876+(u<<1)|0;n[g>>1]=(s[g>>1]|0)+2;n[d>>1]=(n[d>>1]|0)+-1<<16>>16;if((h|0)>2)h=h+-2|0;else{d=y;break}}while(1){if(!d)break e;h=d&65535;u=s[e+2876+(d<<1)>>1]|0;t:while(1){o=(u|0)==0;do{if(o)break t;r=r+-1|0;l=a[e+2908+(r<<2)>>2]|0}while((l|0)>(v|0));o=m+(l<<2)+2|0;f=s[o>>1]|0;if((d|0)!=(f|0)){g=ee(d-f|0,s[m+(l<<2)>>1]|0)|0;a[k>>2]=(a[k>>2]|0)+g;n[o>>1]=h}u=u+-1|0}d=d+-1|0}}}while(0);r=1;o=0;while(1){if((r|0)==16){l=0;break}k=(o&65534)+(s[e+2876+(r+-1<<1)>>1]|0)<<1;n[A+(r<<1)>>1]=k;r=r+1|0;o=k}while(1){if((l|0)>(_|0))break;e=n[S+(l<<2)+2>>1]|0;r=e&65535;if(e<<16>>16){o=A+(r<<1)|0;f=n[o>>1]|0;n[o>>1]=f+1<<16>>16;f=f&65535;o=0;while(1){o=o|f&1;if((r|0)>1){f=f>>>1;r=r+-1|0;o=o<<1}else break}n[S+(l<<2)>>1]=o}l=l+1|0}c=E;return}function Ze(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,s=0,f=0,l=0,u=0,c=0,h=0,d=0,p=0,b=0;b=a[e+2908+(r<<2)>>2]|0;h=e+5208+b|0;d=e+5200|0;p=t+(b<<2)|0;c=r;while(1){u=c<<1;r=a[d>>2]|0;if((u|0)>(r|0)){r=12;break}do{if((u|0)<(r|0)){f=u|1;r=a[e+2908+(f<<2)>>2]|0;i=n[t+(r<<2)>>1]|0;s=a[e+2908+(u<<2)>>2]|0;l=n[t+(s<<2)>>1]|0;if((i&65535)>=(l&65535)){if(i<<16>>16!=l<<16>>16){f=u;break}if((o[e+5208+r>>0]|0)>(o[e+5208+s>>0]|0)){f=u;break}}}else f=u}while(0);r=n[p>>1]|0;i=a[e+2908+(f<<2)>>2]|0;s=n[t+(i<<2)>>1]|0;if((r&65535)<(s&65535)){r=12;break}if(r<<16>>16==s<<16>>16?(o[h>>0]|0)<=(o[e+5208+i>>0]|0):0){r=12;break}a[e+2908+(c<<2)>>2]=i;c=f}if((r|0)==12){a[e+2908+(c<<2)>>2]=b;return}}function He(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,a=0,o=0,f=0,l=0,u=0,c=0,h=0,d=0,p=0,b=0;p=n[t+2>>1]|0;d=p<<16>>16==0;n[t+(r+1<<2)+2>>1]=-1;l=e+2752|0;u=e+2756|0;c=e+2748|0;a=0;h=d?138:7;d=d?3:4;i=0;p=p&65535;b=-1;while(1){if((i|0)>(r|0))break;i=i+1|0;o=n[t+(i<<2)+2>>1]|0;f=o&65535;a=a+1|0;if((a|0)<(h|0)&(p|0)==(f|0)){o=b;p=f;b=o;continue}do{if((a|0)>=(d|0))if(!p)if((a|0)<11){n[l>>1]=(n[l>>1]|0)+1<<16>>16;break}else{n[u>>1]=(n[u>>1]|0)+1<<16>>16;break}else{if((p|0)!=(b|0)){b=e+2684+(p<<2)|0;n[b>>1]=(n[b>>1]|0)+1<<16>>16}n[c>>1]=(n[c>>1]|0)+1<<16>>16;break}else{b=e+2684+(p<<2)|0;n[b>>1]=(s[b>>1]|0)+a}}while(0);if(!(o<<16>>16)){b=p;a=0;h=138;d=3;p=f;continue}d=(p|0)==(f|0);b=p;a=0;h=d?6:7;d=d?3:4;p=f}return}function Ye(e,t,r){e=e|0;t=t|0;r=r|0;var f=0,l=0,u=0,c=0,h=0,d=0,p=0,b=0,y=0,w=0,g=0,v=0,m=0,k=0,_=0,S=0;w=e+5792|0;if(!(a[w>>2]|0)){h=e+5820|0;d=h;h=a[h>>2]|0}else{g=e+5796|0;v=e+5784|0;d=e+5820|0;m=e+5816|0;k=e+20|0;_=e+8|0;S=0;do{p=n[(a[g>>2]|0)+(S<<1)>>1]|0;y=p&65535;b=o[(a[v>>2]|0)+S>>0]|0;S=S+1|0;do{if(!(p<<16>>16)){u=s[t+(b<<2)+2>>1]|0;c=a[d>>2]|0;f=s[t+(b<<2)>>1]|0;l=s[m>>1]|0|f<>1]=l;if((c|0)>(16-u|0)){y=a[k>>2]|0;a[k>>2]=y+1;i[(a[_>>2]|0)+y>>0]=l;y=(s[m>>1]|0)>>>8&255;h=a[k>>2]|0;a[k>>2]=h+1;i[(a[_>>2]|0)+h>>0]=y;h=a[d>>2]|0;n[m>>1]=f>>>(16-h|0);h=h+(u+-16)|0;a[d>>2]=h;break}else{h=c+u|0;a[d>>2]=h;break}}else{p=o[13625+b>>0]|0;f=(p|256)+1|0;c=s[t+(f<<2)+2>>1]|0;h=a[d>>2]|0;f=s[t+(f<<2)>>1]|0;u=s[m>>1]|0|f<>1]=l;if((h|0)>(16-c|0)){l=a[k>>2]|0;a[k>>2]=l+1;i[(a[_>>2]|0)+l>>0]=u;l=(s[m>>1]|0)>>>8&255;h=a[k>>2]|0;a[k>>2]=h+1;i[(a[_>>2]|0)+h>>0]=l;h=a[d>>2]|0;l=f>>>(16-h|0)&65535;n[m>>1]=l;h=h+(c+-16)|0}else h=h+c|0;a[d>>2]=h;c=a[148+(p<<2)>>2]|0;do{if((p+-8|0)>>>0<20){u=b-(a[500+(p<<2)>>2]|0)&65535;f=l&65535|u<>1]=l;if((h|0)>(16-c|0)){l=a[k>>2]|0;a[k>>2]=l+1;i[(a[_>>2]|0)+l>>0]=f;l=(s[m>>1]|0)>>>8&255;h=a[k>>2]|0;a[k>>2]=h+1;i[(a[_>>2]|0)+h>>0]=l;h=a[d>>2]|0;l=u>>>(16-h|0)&65535;n[m>>1]=l;h=h+(c+-16)|0;a[d>>2]=h;break}else{h=h+c|0;a[d>>2]=h;break}}}while(0);p=y+-1|0;b=o[13113+(p>>>0<256?p:(p>>>7)+256|0)>>0]|0;c=s[r+(b<<2)+2>>1]|0;u=s[r+(b<<2)>>1]|0;f=l&65535|u<>1]=f;if((h|0)>(16-c|0)){h=a[k>>2]|0;a[k>>2]=h+1;i[(a[_>>2]|0)+h>>0]=f;f=(s[m>>1]|0)>>>8&255;h=a[k>>2]|0;a[k>>2]=h+1;i[(a[_>>2]|0)+h>>0]=f;h=a[d>>2]|0;f=u>>>(16-h|0);n[m>>1]=f;h=h+(c+-16)|0}else h=h+c|0;a[d>>2]=h;u=a[284+(b<<2)>>2]|0;if((b+-4|0)>>>0<26){l=p-(a[616+(b<<2)>>2]|0)&65535;f=f&65535|l<>1]=f;if((h|0)>(16-u|0)){y=a[k>>2]|0;a[k>>2]=y+1;i[(a[_>>2]|0)+y>>0]=f;y=(s[m>>1]|0)>>>8&255;h=a[k>>2]|0;a[k>>2]=h+1;i[(a[_>>2]|0)+h>>0]=y;h=a[d>>2]|0;n[m>>1]=l>>>(16-h|0);h=h+(u+-16)|0;a[d>>2]=h;break}else{h=h+u|0;a[d>>2]=h;break}}}}while(0)}while(S>>>0<(a[w>>2]|0)>>>0)}c=s[t+1026>>1]|0;f=s[t+1024>>1]|0;l=e+5816|0;u=s[l>>1]|0|f<>1]=u;if((h|0)>(16-c|0)){r=e+20|0;S=a[r>>2]|0;a[r>>2]=S+1;t=e+8|0;i[(a[t>>2]|0)+S>>0]=u;S=(s[l>>1]|0)>>>8&255;e=a[r>>2]|0;a[r>>2]=e+1;i[(a[t>>2]|0)+e>>0]=S;e=a[d>>2]|0;n[l>>1]=f>>>(16-e|0);e=e+(c+-16)|0;a[d>>2]=e;return}else{e=h+c|0;a[d>>2]=e;return}}function Je(e,t,r){e=e|0;t=t|0;r=r|0;var o=0,f=0,l=0,u=0,c=0,h=0,d=0,p=0,b=0,y=0,w=0,g=0,v=0,m=0,k=0,_=0,S=0,A=0,E=0,B=0,R=0,x=0;x=n[t+2>>1]|0;l=x<<16>>16==0;_=e+2754|0;S=e+5820|0;A=e+2752|0;E=e+5816|0;B=e+20|0;R=e+8|0;w=e+2758|0;g=e+2756|0;v=e+2750|0;m=e+2748|0;d=0;f=l?138:7;l=l?3:4;o=0;x=x&65535;u=-1;while(1){if((o|0)>(r|0))break;b=o+1|0;y=n[t+(b<<2)+2>>1]|0;k=y&65535;h=d+1|0;if((h|0)<(f|0)&(x|0)==(k|0)){y=u;d=h;o=b;x=k;u=y;continue}do{if((h|0)>=(l|0)){if(x|0){do{if((x|0)!=(u|0)){o=s[e+2684+(x<<2)+2>>1]|0;f=a[S>>2]|0;l=s[e+2684+(x<<2)>>1]|0;u=s[E>>1]|0|l<>1]=u;if((f|0)>(16-o|0)){c=a[B>>2]|0;a[B>>2]=c+1;i[(a[R>>2]|0)+c>>0]=u;u=(s[E>>1]|0)>>>8&255;c=a[B>>2]|0;a[B>>2]=c+1;i[(a[R>>2]|0)+c>>0]=u;c=a[S>>2]|0;n[E>>1]=l>>>(16-c|0);c=c+(o+-16)|0;a[S>>2]=c;u=d;break}else{c=f+o|0;a[S>>2]=c;u=d;break}}else{c=a[S>>2]|0;u=h}}while(0);l=s[v>>1]|0;f=s[m>>1]|0;o=s[E>>1]|0|f<>1]=o;if((c|0)>(16-l|0)){p=a[B>>2]|0;a[B>>2]=p+1;i[(a[R>>2]|0)+p>>0]=o;o=(s[E>>1]|0)>>>8&255;p=a[B>>2]|0;a[B>>2]=p+1;i[(a[R>>2]|0)+p>>0]=o;p=a[S>>2]|0;o=f>>>(16-p|0);n[E>>1]=o;l=p+(l+-16)|0}else l=c+l|0;a[S>>2]=l;f=u+65533&65535;o=o&65535|f<>1]=o;if((l|0)>14){d=a[B>>2]|0;a[B>>2]=d+1;i[(a[R>>2]|0)+d>>0]=o;d=(s[E>>1]|0)>>>8&255;p=a[B>>2]|0;a[B>>2]=p+1;i[(a[R>>2]|0)+p>>0]=d;p=a[S>>2]|0;n[E>>1]=f>>>(16-p|0);a[S>>2]=p+-14;break}else{a[S>>2]=l+2;break}}if((h|0)<11){l=s[_>>1]|0;u=a[S>>2]|0;o=s[A>>1]|0;f=s[E>>1]|0|o<>1]=f;if((u|0)>(16-l|0)){h=a[B>>2]|0;a[B>>2]=h+1;i[(a[R>>2]|0)+h>>0]=f;h=(s[E>>1]|0)>>>8&255;p=a[B>>2]|0;a[B>>2]=p+1;i[(a[R>>2]|0)+p>>0]=h;p=a[S>>2]|0;o=o>>>(16-p|0);n[E>>1]=o;l=p+(l+-16)|0}else{o=f;l=u+l|0}a[S>>2]=l;f=d+65534&65535;o=o&65535|f<>1]=o;if((l|0)>13){d=a[B>>2]|0;a[B>>2]=d+1;i[(a[R>>2]|0)+d>>0]=o;d=(s[E>>1]|0)>>>8&255;p=a[B>>2]|0;a[B>>2]=p+1;i[(a[R>>2]|0)+p>>0]=d;p=a[S>>2]|0;n[E>>1]=f>>>(16-p|0);a[S>>2]=p+-13;break}else{a[S>>2]=l+3;break}}else{l=s[w>>1]|0;u=a[S>>2]|0;o=s[g>>1]|0;f=s[E>>1]|0|o<>1]=f;if((u|0)>(16-l|0)){h=a[B>>2]|0;a[B>>2]=h+1;i[(a[R>>2]|0)+h>>0]=f;h=(s[E>>1]|0)>>>8&255;p=a[B>>2]|0;a[B>>2]=p+1;i[(a[R>>2]|0)+p>>0]=h;p=a[S>>2]|0;o=o>>>(16-p|0);n[E>>1]=o;l=p+(l+-16)|0}else{o=f;l=u+l|0}a[S>>2]=l;f=d+65526&65535;o=o&65535|f<>1]=o;if((l|0)>9){d=a[B>>2]|0;a[B>>2]=d+1;i[(a[R>>2]|0)+d>>0]=o;d=(s[E>>1]|0)>>>8&255;p=a[B>>2]|0;a[B>>2]=p+1;i[(a[R>>2]|0)+p>>0]=d;p=a[S>>2]|0;n[E>>1]=f>>>(16-p|0);a[S>>2]=p+-9;break}else{a[S>>2]=l+7;break}}}else{d=e+2684+(x<<2)+2|0;p=e+2684+(x<<2)|0;o=a[S>>2]|0;c=h;do{f=s[d>>1]|0;l=s[p>>1]|0;u=s[E>>1]|0|l<>1]=u;if((o|0)>(16-f|0)){h=a[B>>2]|0;a[B>>2]=h+1;i[(a[R>>2]|0)+h>>0]=u;h=(s[E>>1]|0)>>>8&255;o=a[B>>2]|0;a[B>>2]=o+1;i[(a[R>>2]|0)+o>>0]=h;o=a[S>>2]|0;n[E>>1]=l>>>(16-o|0);o=o+(f+-16)|0}else o=o+f|0;a[S>>2]=o;c=c+-1|0}while((c|0)!=0)}}while(0);if(!(y<<16>>16)){u=x;d=0;f=138;l=3;o=b;x=k;continue}l=(x|0)==(k|0);u=x;d=0;f=l?6:7;l=l?3:4;o=b;x=k}return}function qe(e,t,r){e=e|0;t=t|0;r=r|0;return $e(ee(t,r)|0)|0}function We(e,t){e=e|0;t=t|0;Ke(t);return}function Ve(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,a=0,s=0,f=0,l=0,u=0,c=0,h=0,d=0,p=0,b=0,y=0,w=0,g=0,v=0,m=0,k=0,_=0,S=0;i=e>>>16;e=e&65535;if((r|0)==1){a=e+(o[t>>0]|0)|0;a=a>>>0>65520?a+-65521|0:a;s=i+a|0;s=a|(s>>>0>65520?s+15|0:s)<<16;return s|0}if(!t){s=1;return s|0}if(r>>>0<16){while(1){if(!r)break;s=e+(o[t>>0]|0)|0;t=t+1|0;r=r+-1|0;e=s;i=i+s|0}s=(e>>>0>65520?e+-65521|0:e)|((i>>>0)%65521|0)<<16;return s|0}while(1){if(r>>>0<=5551)break;r=r+-5552|0;a=t;n=347;while(1){k=e+(o[a>>0]|0)|0;m=k+(o[a+1>>0]|0)|0;v=m+(o[a+2>>0]|0)|0;g=v+(o[a+3>>0]|0)|0;w=g+(o[a+4>>0]|0)|0;y=w+(o[a+5>>0]|0)|0;b=y+(o[a+6>>0]|0)|0;p=b+(o[a+7>>0]|0)|0;d=p+(o[a+8>>0]|0)|0;h=d+(o[a+9>>0]|0)|0;c=h+(o[a+10>>0]|0)|0;u=c+(o[a+11>>0]|0)|0;l=u+(o[a+12>>0]|0)|0;f=l+(o[a+13>>0]|0)|0;s=f+(o[a+14>>0]|0)|0;e=s+(o[a+15>>0]|0)|0;i=i+k+m+v+g+w+y+b+p+d+h+c+u+l+f+s+e|0;n=n+-1|0;if(!n)break;else a=a+16|0}t=t+5552|0;e=(e>>>0)%65521|0;i=(i>>>0)%65521|0}if(r){a=r+~(r>>>0<15?r:15)+16&-16;s=t+a|0;n=r;while(1){if(n>>>0<=15)break;S=e+(o[t>>0]|0)|0;_=S+(o[t+1>>0]|0)|0;f=_+(o[t+2>>0]|0)|0;l=f+(o[t+3>>0]|0)|0;u=l+(o[t+4>>0]|0)|0;c=u+(o[t+5>>0]|0)|0;h=c+(o[t+6>>0]|0)|0;d=h+(o[t+7>>0]|0)|0;p=d+(o[t+8>>0]|0)|0;b=p+(o[t+9>>0]|0)|0;y=b+(o[t+10>>0]|0)|0;w=y+(o[t+11>>0]|0)|0;g=w+(o[t+12>>0]|0)|0;v=g+(o[t+13>>0]|0)|0;m=v+(o[t+14>>0]|0)|0;k=m+(o[t+15>>0]|0)|0;n=n+-16|0;t=t+16|0;e=k;i=i+S+_+f+l+u+c+h+d+p+b+y+w+g+v+m+k|0}r=r-a|0;t=s;while(1){if(!r)break;S=e+(o[t>>0]|0)|0;r=r+-1|0;t=t+1|0;e=S;i=i+S|0}e=(e>>>0)%65521|0;i=(i>>>0)%65521|0}S=e|i<<16;return S|0}function Ge(e,t,r){e=e|0;t=t|0;r=r|0;var i=0,n=0,s=0,f=0,l=0;if(!t){f=0;return f|0}s=t;t=~e;while(1){if(!r){r=0;break}if(!(s&3))break;f=a[736+((t&255^(o[s>>0]|0))<<2)>>2]^t>>>8;s=s+1|0;r=r+-1|0;t=f}n=r+~(r>>>0<31?r:31)+32&-32;f=s+n|0;i=r;e=s;while(1){if(i>>>0<=31)break;s=t^a[e>>2];s=a[3808+((s&255)<<2)>>2]^a[2784+((s>>>8&255)<<2)>>2]^a[1760+((s>>>16&255)<<2)>>2]^a[736+(s>>>24<<2)>>2]^a[e+4>>2];s=a[3808+((s&255)<<2)>>2]^a[2784+((s>>>8&255)<<2)>>2]^a[1760+((s>>>16&255)<<2)>>2]^a[736+(s>>>24<<2)>>2]^a[e+8>>2];s=a[3808+((s&255)<<2)>>2]^a[2784+((s>>>8&255)<<2)>>2]^a[1760+((s>>>16&255)<<2)>>2]^a[736+(s>>>24<<2)>>2]^a[e+12>>2];s=a[3808+((s&255)<<2)>>2]^a[2784+((s>>>8&255)<<2)>>2]^a[1760+((s>>>16&255)<<2)>>2]^a[736+(s>>>24<<2)>>2]^a[e+16>>2];s=a[3808+((s&255)<<2)>>2]^a[2784+((s>>>8&255)<<2)>>2]^a[1760+((s>>>16&255)<<2)>>2]^a[736+(s>>>24<<2)>>2]^a[e+20>>2];s=a[3808+((s&255)<<2)>>2]^a[2784+((s>>>8&255)<<2)>>2]^a[1760+((s>>>16&255)<<2)>>2]^a[736+(s>>>24<<2)>>2]^a[e+24>>2];s=a[3808+((s&255)<<2)>>2]^a[2784+((s>>>8&255)<<2)>>2]^a[1760+((s>>>16&255)<<2)>>2]^a[736+(s>>>24<<2)>>2]^a[e+28>>2];i=i+-32|0;e=e+32|0;t=a[3808+((s&255)<<2)>>2]^a[2784+((s>>>8&255)<<2)>>2]^a[1760+((s>>>16&255)<<2)>>2]^a[736+(s>>>24<<2)>>2]}n=r-n|0;e=(n+~(n>>>0<3?n:3)+4|0)>>>2;s=e<<2;r=n;i=f;while(1){if(r>>>0<=3)break;l=t^a[i>>2];r=r+-4|0;i=i+4|0;t=a[3808+((l&255)<<2)>>2]^a[2784+((l>>>8&255)<<2)>>2]^a[1760+((l>>>16&255)<<2)>>2]^a[736+(l>>>24<<2)>>2]}if((n|0)!=(s|0)){e=f+(e<<2)|0;r=n-s|0;while(1){t=a[736+((t&255^(o[e>>0]|0))<<2)>>2]^t>>>8;r=r+-1|0;if(!r)break;else e=e+1|0}}l=~t;return l|0}function $e(e){e=e|0;var t=0,r=0,i=0,n=0,o=0,s=0,f=0,l=0,u=0,h=0,d=0,p=0,b=0,y=0,w=0,g=0,v=0,m=0,k=0,_=0,S=0,A=0,E=0,B=0,R=0,x=0,T=0,M=0,U=0,I=0,P=0,O=0,L=0,z=0;z=c;c=c+16|0;y=z;do{if(e>>>0<245){b=e>>>0<11?16:e+11&-8;e=b>>>3;l=a[3522]|0;t=l>>>e;if(t&3|0){n=(t&1^1)+e|0;o=14128+(n<<1<<2)|0;t=o+8|0;r=a[t>>2]|0;s=r+8|0;i=a[s>>2]|0;do{if((o|0)!=(i|0)){if(i>>>0<(a[3526]|0)>>>0)ue();e=i+12|0;if((a[e>>2]|0)==(r|0)){a[e>>2]=o;a[t>>2]=i;break}else ue()}else a[3522]=l&~(1<>2]=L|3;L=r+L+4|0;a[L>>2]=a[L>>2]|1;L=s;c=z;return L|0}s=a[3524]|0;if(b>>>0>s>>>0){if(t|0){n=2<>>12&16;n=n>>>f;t=n>>>5&8;n=n>>>t;o=n>>>2&4;n=n>>>o;r=n>>>1&2;n=n>>>r;i=n>>>1&1;i=(t|f|o|r|i)+(n>>>i)|0;n=14128+(i<<1<<2)|0;r=n+8|0;o=a[r>>2]|0;f=o+8|0;t=a[f>>2]|0;do{if((n|0)!=(t|0)){if(t>>>0<(a[3526]|0)>>>0)ue();e=t+12|0;if((a[e>>2]|0)==(o|0)){a[e>>2]=n;a[r>>2]=t;u=a[3524]|0;break}else ue()}else{a[3522]=l&~(1<>2]=b|3;n=o+b|0;a[n+4>>2]=s|1;a[n+s>>2]=s;if(u|0){i=a[3527]|0;t=u>>>3;r=14128+(t<<1<<2)|0;e=a[3522]|0;t=1<>2]|0;if(t>>>0<(a[3526]|0)>>>0)ue();else{h=e;d=t}}else{a[3522]=e|t;h=r+8|0;d=r}a[h>>2]=i;a[d+12>>2]=i;a[i+8>>2]=d;a[i+12>>2]=r}a[3524]=s;a[3527]=n;L=f;c=z;return L|0}e=a[3523]|0;if(e){f=(e&0-e)+-1|0;O=f>>>12&16;f=f>>>O;P=f>>>5&8;f=f>>>P;L=f>>>2&4;f=f>>>L;t=f>>>1&2;f=f>>>t;l=f>>>1&1;l=a[14392+((P|O|L|t|l)+(f>>>l)<<2)>>2]|0;f=(a[l+4>>2]&-8)-b|0;t=l;while(1){e=a[t+16>>2]|0;if(!e){e=a[t+20>>2]|0;if(!e)break}t=(a[e+4>>2]&-8)-b|0;L=t>>>0>>0;f=L?t:f;t=e;l=L?e:l}n=a[3526]|0;if(l>>>0>>0)ue();s=l+b|0;if(l>>>0>=s>>>0)ue();o=a[l+24>>2]|0;r=a[l+12>>2]|0;do{if((r|0)==(l|0)){t=l+20|0;e=a[t>>2]|0;if(!e){t=l+16|0;e=a[t>>2]|0;if(!e){p=0;break}}while(1){i=e+20|0;r=a[i>>2]|0;if(r|0){e=r;t=i;continue}i=e+16|0;r=a[i>>2]|0;if(!r)break;else{e=r;t=i}}if(t>>>0>>0)ue();else{a[t>>2]=0;p=e;break}}else{i=a[l+8>>2]|0;if(i>>>0>>0)ue();e=i+12|0;if((a[e>>2]|0)!=(l|0))ue();t=r+8|0;if((a[t>>2]|0)==(l|0)){a[e>>2]=r;a[t>>2]=i;p=r;break}else ue()}}while(0);do{if(o|0){e=a[l+28>>2]|0;t=14392+(e<<2)|0;if((l|0)==(a[t>>2]|0)){a[t>>2]=p;if(!p){a[3523]=a[3523]&~(1<>>0<(a[3526]|0)>>>0)ue();e=o+16|0;if((a[e>>2]|0)==(l|0))a[e>>2]=p;else a[o+20>>2]=p;if(!p)break}t=a[3526]|0;if(p>>>0>>0)ue();a[p+24>>2]=o;e=a[l+16>>2]|0;do{if(e|0)if(e>>>0>>0)ue();else{a[p+16>>2]=e;a[e+24>>2]=p;break}}while(0);e=a[l+20>>2]|0;if(e|0)if(e>>>0<(a[3526]|0)>>>0)ue();else{a[p+20>>2]=e;a[e+24>>2]=p;break}}}while(0);if(f>>>0<16){L=f+b|0;a[l+4>>2]=L|3;L=l+L+4|0;a[L>>2]=a[L>>2]|1}else{a[l+4>>2]=b|3;a[s+4>>2]=f|1;a[s+f>>2]=f;e=a[3524]|0;if(e|0){i=a[3527]|0;t=e>>>3;r=14128+(t<<1<<2)|0;e=a[3522]|0;t=1<>2]|0;if(t>>>0<(a[3526]|0)>>>0)ue();else{w=e;g=t}}else{a[3522]=e|t;w=r+8|0;g=r}a[w>>2]=i;a[g+12>>2]=i;a[i+8>>2]=g;a[i+12>>2]=r}a[3524]=f;a[3527]=s}L=l+8|0;c=z;return L|0}}}else if(e>>>0<=4294967231){e=e+11|0;b=e&-8;l=a[3523]|0;if(l){t=0-b|0;e=e>>>8;if(e)if(b>>>0>16777215)f=31;else{g=(e+1048320|0)>>>16&8;x=e<>>16&4;x=x<>>16&2;f=14-(w|g|f)+(x<>>15)|0;f=b>>>(f+7|0)&1|f<<1}else f=0;r=a[14392+(f<<2)>>2]|0;e:do{if(!r){i=t;e=0;t=0;x=86}else{i=t;e=0;s=b<<((f|0)==31?0:25-(f>>>1)|0);t=0;while(1){n=a[r+4>>2]&-8;o=n-b|0;if(o>>>0>>0)if((n|0)==(b|0)){i=o;e=r;t=r;x=90;break e}else{i=o;t=r}n=a[r+20>>2]|0;r=a[r+16+(s>>>31<<2)>>2]|0;e=(n|0)==0|(n|0)==(r|0)?e:n;n=(r|0)==0;if(n){x=86;break}else s=s<<(n&1^1)}}}while(0);if((x|0)==86){if((e|0)==0&(t|0)==0){e=2<>>12&16;g=g>>>d;h=g>>>5&8;g=g>>>h;p=g>>>2&4;g=g>>>p;w=g>>>1&2;g=g>>>w;e=g>>>1&1;e=a[14392+((h|d|p|w|e)+(g>>>e)<<2)>>2]|0}if(!e){f=i;l=t}else x=90}if((x|0)==90)while(1){x=0;g=(a[e+4>>2]&-8)-b|0;r=g>>>0>>0;i=r?g:i;t=r?e:t;r=a[e+16>>2]|0;if(r|0){e=r;x=90;continue}e=a[e+20>>2]|0;if(!e){f=i;l=t;break}else x=90}if((l|0)!=0?f>>>0<((a[3524]|0)-b|0)>>>0:0){n=a[3526]|0;if(l>>>0>>0)ue();s=l+b|0;if(l>>>0>=s>>>0)ue();o=a[l+24>>2]|0;r=a[l+12>>2]|0;do{if((r|0)==(l|0)){t=l+20|0;e=a[t>>2]|0;if(!e){t=l+16|0;e=a[t>>2]|0;if(!e){m=0;break}}while(1){i=e+20|0;r=a[i>>2]|0;if(r|0){e=r;t=i;continue}i=e+16|0;r=a[i>>2]|0;if(!r)break;else{e=r;t=i}}if(t>>>0>>0)ue();else{a[t>>2]=0;m=e;break}}else{i=a[l+8>>2]|0;if(i>>>0>>0)ue();e=i+12|0;if((a[e>>2]|0)!=(l|0))ue();t=r+8|0;if((a[t>>2]|0)==(l|0)){a[e>>2]=r;a[t>>2]=i;m=r;break}else ue()}}while(0);do{if(o|0){e=a[l+28>>2]|0;t=14392+(e<<2)|0;if((l|0)==(a[t>>2]|0)){a[t>>2]=m;if(!m){a[3523]=a[3523]&~(1<>>0<(a[3526]|0)>>>0)ue();e=o+16|0;if((a[e>>2]|0)==(l|0))a[e>>2]=m;else a[o+20>>2]=m;if(!m)break}t=a[3526]|0;if(m>>>0>>0)ue();a[m+24>>2]=o;e=a[l+16>>2]|0;do{if(e|0)if(e>>>0>>0)ue();else{a[m+16>>2]=e;a[e+24>>2]=m;break}}while(0);e=a[l+20>>2]|0;if(e|0)if(e>>>0<(a[3526]|0)>>>0)ue();else{a[m+20>>2]=e;a[e+24>>2]=m;break}}}while(0);do{if(f>>>0>=16){a[l+4>>2]=b|3;a[s+4>>2]=f|1;a[s+f>>2]=f;e=f>>>3;if(f>>>0<256){r=14128+(e<<1<<2)|0;t=a[3522]|0;e=1<>2]|0;if(t>>>0<(a[3526]|0)>>>0)ue();else{_=e;S=t}}else{a[3522]=t|e;_=r+8|0;S=r}a[_>>2]=s;a[S+12>>2]=s;a[s+8>>2]=S;a[s+12>>2]=r;break}e=f>>>8;if(e)if(f>>>0>16777215)t=31;else{O=(e+1048320|0)>>>16&8;L=e<>>16&4;L=L<>>16&2;t=14-(P|O|t)+(L<>>15)|0;t=f>>>(t+7|0)&1|t<<1}else t=0;i=14392+(t<<2)|0;a[s+28>>2]=t;e=s+16|0;a[e+4>>2]=0;a[e>>2]=0;e=a[3523]|0;r=1<>2]=s;a[s+24>>2]=i;a[s+12>>2]=s;a[s+8>>2]=s;break}t=f<<((t|0)==31?0:25-(t>>>1)|0);i=a[i>>2]|0;while(1){if((a[i+4>>2]&-8|0)==(f|0)){x=148;break}r=i+16+(t>>>31<<2)|0;e=a[r>>2]|0;if(!e){x=145;break}else{t=t<<1;i=e}}if((x|0)==145)if(r>>>0<(a[3526]|0)>>>0)ue();else{a[r>>2]=s;a[s+24>>2]=i;a[s+12>>2]=s;a[s+8>>2]=s;break}else if((x|0)==148){t=i+8|0;e=a[t>>2]|0;L=a[3526]|0;if(e>>>0>=L>>>0&i>>>0>=L>>>0){a[e+12>>2]=s;a[t>>2]=s;a[s+8>>2]=e;a[s+12>>2]=i;a[s+24>>2]=0;break}else ue()}}else{L=f+b|0;a[l+4>>2]=L|3;L=l+L+4|0;a[L>>2]=a[L>>2]|1}}while(0);L=l+8|0;c=z;return L|0}}}else b=-1}while(0);r=a[3524]|0;if(r>>>0>=b>>>0){t=r-b|0;e=a[3527]|0;if(t>>>0>15){L=e+b|0;a[3527]=L;a[3524]=t;a[L+4>>2]=t|1;a[L+t>>2]=t;a[e+4>>2]=b|3}else{a[3524]=0;a[3527]=0;a[e+4>>2]=r|3;L=e+r+4|0;a[L>>2]=a[L>>2]|1}L=e+8|0;c=z;return L|0}e=a[3525]|0;if(e>>>0>b>>>0){P=e-b|0;a[3525]=P;L=a[3528]|0;O=L+b|0;a[3528]=O;a[O+4>>2]=P|1;a[L+4>>2]=b|3;L=L+8|0;c=z;return L|0}if(!(a[3640]|0)){a[3642]=4096;a[3641]=4096;a[3643]=-1;a[3644]=-1;a[3645]=0;a[3633]=0;S=y&-16^1431655768;a[y>>2]=S;a[3640]=S}o=b+48|0;i=a[3642]|0;s=b+47|0;r=i+s|0;i=0-i|0;f=r&i;if(f>>>0<=b>>>0){L=0;c=z;return L|0}e=a[3632]|0;if(e|0?(_=a[3630]|0,S=_+f|0,S>>>0<=_>>>0|S>>>0>e>>>0):0){L=0;c=z;return L|0}e:do{if(!(a[3633]&4)){t=a[3528]|0;t:do{if(t){n=14536;while(1){e=a[n>>2]|0;if(e>>>0<=t>>>0?(v=n+4|0,(e+(a[v>>2]|0)|0)>>>0>t>>>0):0)break;e=a[n+8>>2]|0;if(!e){x=171;break t}else n=e}e=r-(a[3525]|0)&i;if(e>>>0<2147483647){t=fe(e|0)|0;if((t|0)==((a[n>>2]|0)+(a[v>>2]|0)|0)){if((t|0)!=(-1|0)){s=t;o=e;x=191;break e}}else x=181}}else x=171}while(0);do{if((x|0)==171?(k=fe(0)|0,(k|0)!=(-1|0)):0){e=k;t=a[3641]|0;r=t+-1|0;if(!(r&e))e=f;else e=f-e+(r+e&0-t)|0;t=a[3630]|0;r=t+e|0;if(e>>>0>b>>>0&e>>>0<2147483647){S=a[3632]|0;if(S|0?r>>>0<=t>>>0|r>>>0>S>>>0:0)break;t=fe(e|0)|0;if((t|0)==(k|0)){s=k;o=e;x=191;break e}else x=181}}}while(0);t:do{if((x|0)==181){r=0-e|0;do{if(o>>>0>e>>>0&(e>>>0<2147483647&(t|0)!=(-1|0))?(A=a[3642]|0,A=s-e+A&0-A,A>>>0<2147483647):0)if((fe(A|0)|0)==(-1|0)){fe(r|0)|0;break t}else{e=A+e|0;break}}while(0);if((t|0)!=(-1|0)){s=t;o=e;x=191;break e}}}while(0);a[3633]=a[3633]|4;x=188}else x=188}while(0);if((((x|0)==188?f>>>0<2147483647:0)?(E=fe(f|0)|0,B=fe(0)|0,E>>>0>>0&((E|0)!=(-1|0)&(B|0)!=(-1|0))):0)?(R=B-E|0,R>>>0>(b+40|0)>>>0):0){s=E;o=R;x=191}if((x|0)==191){e=(a[3630]|0)+o|0;a[3630]=e;if(e>>>0>(a[3631]|0)>>>0)a[3631]=e;u=a[3528]|0;do{if(u){n=14536;while(1){e=a[n>>2]|0;i=n+4|0;t=a[i>>2]|0;if((s|0)==(e+t|0)){x=201;break}r=a[n+8>>2]|0;if(!r)break;else n=r}if(((x|0)==201?(a[n+12>>2]&8|0)==0:0)?u>>>0>>0&u>>>0>=e>>>0:0){a[i>>2]=t+o;L=u+8|0;L=(L&7|0)==0?0:0-L&7;O=u+L|0;L=o-L+(a[3525]|0)|0;a[3528]=O;a[3525]=L;a[O+4>>2]=L|1;a[O+L+4>>2]=40;a[3529]=a[3644];break}e=a[3526]|0;if(s>>>0>>0){a[3526]=s;f=s}else f=e;t=s+o|0;e=14536;while(1){if((a[e>>2]|0)==(t|0)){x=209;break}e=a[e+8>>2]|0;if(!e){t=14536;break}}if((x|0)==209)if(!(a[e+12>>2]&8)){a[e>>2]=s;d=e+4|0;a[d>>2]=(a[d>>2]|0)+o;d=s+8|0;d=s+((d&7|0)==0?0:0-d&7)|0;e=t+8|0;e=t+((e&7|0)==0?0:0-e&7)|0;h=d+b|0;l=e-d-b|0;a[d+4>>2]=b|3;do{if((e|0)!=(u|0)){if((e|0)==(a[3527]|0)){L=(a[3524]|0)+l|0;a[3524]=L;a[3527]=h;a[h+4>>2]=L|1;a[h+L>>2]=L;break}t=a[e+4>>2]|0;if((t&3|0)==1){s=t&-8;n=t>>>3;e:do{if(t>>>0>=256){o=a[e+24>>2]|0;i=a[e+12>>2]|0;do{if((i|0)==(e|0)){i=e+16|0;r=i+4|0;t=a[r>>2]|0;if(!t){t=a[i>>2]|0;if(!t){P=0;break}else n=i}else n=r;while(1){i=t+20|0;r=a[i>>2]|0;if(r|0){t=r;n=i;continue}i=t+16|0;r=a[i>>2]|0;if(!r)break;else{t=r;n=i}}if(n>>>0>>0)ue();else{a[n>>2]=0;P=t;break}}else{n=a[e+8>>2]|0;if(n>>>0>>0)ue();t=n+12|0;if((a[t>>2]|0)!=(e|0))ue();r=i+8|0;if((a[r>>2]|0)==(e|0)){a[t>>2]=i;a[r>>2]=n;P=i;break}else ue()}}while(0);if(!o)break;t=a[e+28>>2]|0;r=14392+(t<<2)|0;do{if((e|0)!=(a[r>>2]|0)){if(o>>>0<(a[3526]|0)>>>0)ue();t=o+16|0;if((a[t>>2]|0)==(e|0))a[t>>2]=P;else a[o+20>>2]=P;if(!P)break e}else{a[r>>2]=P;if(P|0)break;a[3523]=a[3523]&~(1<>>0>>0)ue();a[P+24>>2]=o;r=e+16|0;t=a[r>>2]|0;do{if(t|0)if(t>>>0>>0)ue();else{a[P+16>>2]=t;a[t+24>>2]=P;break}}while(0);t=a[r+4>>2]|0;if(!t)break;if(t>>>0<(a[3526]|0)>>>0)ue();else{a[P+20>>2]=t;a[t+24>>2]=P;break}}else{r=a[e+8>>2]|0;i=a[e+12>>2]|0;t=14128+(n<<1<<2)|0;do{if((r|0)!=(t|0)){if(r>>>0>>0)ue();if((a[r+12>>2]|0)==(e|0))break;ue()}}while(0);if((i|0)==(r|0)){a[3522]=a[3522]&~(1<>>0>>0)ue();t=i+8|0;if((a[t>>2]|0)==(e|0)){M=t;break}ue()}}while(0);a[r+12>>2]=i;a[M>>2]=r}}while(0);e=e+s|0;n=s+l|0}else n=l;e=e+4|0;a[e>>2]=a[e>>2]&-2;a[h+4>>2]=n|1;a[h+n>>2]=n;e=n>>>3;if(n>>>0<256){r=14128+(e<<1<<2)|0;t=a[3522]|0;e=1<>2]|0;if(t>>>0>=(a[3526]|0)>>>0){O=e;L=t;break}ue()}}while(0);a[O>>2]=h;a[L+12>>2]=h;a[h+8>>2]=L;a[h+12>>2]=r;break}e=n>>>8;do{if(!e)t=0;else{if(n>>>0>16777215){t=31;break}O=(e+1048320|0)>>>16&8;L=e<>>16&4;L=L<>>16&2;t=14-(P|O|t)+(L<>>15)|0;t=n>>>(t+7|0)&1|t<<1}}while(0);i=14392+(t<<2)|0;a[h+28>>2]=t;e=h+16|0;a[e+4>>2]=0;a[e>>2]=0;e=a[3523]|0;r=1<>2]=h;a[h+24>>2]=i;a[h+12>>2]=h;a[h+8>>2]=h;break}t=n<<((t|0)==31?0:25-(t>>>1)|0);i=a[i>>2]|0;while(1){if((a[i+4>>2]&-8|0)==(n|0)){x=279;break}r=i+16+(t>>>31<<2)|0;e=a[r>>2]|0;if(!e){x=276;break}else{t=t<<1;i=e}}if((x|0)==276)if(r>>>0<(a[3526]|0)>>>0)ue();else{a[r>>2]=h;a[h+24>>2]=i;a[h+12>>2]=h;a[h+8>>2]=h;break}else if((x|0)==279){t=i+8|0;e=a[t>>2]|0;L=a[3526]|0;if(e>>>0>=L>>>0&i>>>0>=L>>>0){a[e+12>>2]=h;a[t>>2]=h;a[h+8>>2]=e;a[h+12>>2]=i;a[h+24>>2]=0;break}else ue()}}else{L=(a[3525]|0)+l|0;a[3525]=L;a[3528]=h;a[h+4>>2]=L|1}}while(0);L=d+8|0;c=z;return L|0}else t=14536;while(1){e=a[t>>2]|0;if(e>>>0<=u>>>0?(T=e+(a[t+4>>2]|0)|0,T>>>0>u>>>0):0)break;t=a[t+8>>2]|0}n=T+-47|0;t=n+8|0;t=n+((t&7|0)==0?0:0-t&7)|0;n=u+16|0;t=t>>>0>>0?u:t;e=t+8|0;r=s+8|0;r=(r&7|0)==0?0:0-r&7;L=s+r|0;r=o+-40-r|0;a[3528]=L;a[3525]=r;a[L+4>>2]=r|1;a[L+r+4>>2]=40;a[3529]=a[3644];r=t+4|0;a[r>>2]=27;a[e>>2]=a[3634];a[e+4>>2]=a[3635];a[e+8>>2]=a[3636];a[e+12>>2]=a[3637];a[3634]=s;a[3635]=o;a[3637]=0;a[3636]=e;e=t+24|0;do{e=e+4|0;a[e>>2]=7}while((e+4|0)>>>0>>0);if((t|0)!=(u|0)){o=t-u|0;a[r>>2]=a[r>>2]&-2;a[u+4>>2]=o|1;a[t>>2]=o;e=o>>>3;if(o>>>0<256){r=14128+(e<<1<<2)|0;t=a[3522]|0;e=1<>2]|0;if(t>>>0<(a[3526]|0)>>>0)ue();else{U=e;I=t}}else{a[3522]=t|e;U=r+8|0;I=r}a[U>>2]=u;a[I+12>>2]=u;a[u+8>>2]=I;a[u+12>>2]=r;break}e=o>>>8;if(e)if(o>>>0>16777215)r=31;else{O=(e+1048320|0)>>>16&8;L=e<>>16&4;L=L<>>16&2;r=14-(P|O|r)+(L<>>15)|0;r=o>>>(r+7|0)&1|r<<1}else r=0;i=14392+(r<<2)|0;a[u+28>>2]=r;a[u+20>>2]=0;a[n>>2]=0;e=a[3523]|0;t=1<>2]=u;a[u+24>>2]=i;a[u+12>>2]=u;a[u+8>>2]=u;break}t=o<<((r|0)==31?0:25-(r>>>1)|0);i=a[i>>2]|0;while(1){if((a[i+4>>2]&-8|0)==(o|0)){x=305;break}r=i+16+(t>>>31<<2)|0;e=a[r>>2]|0;if(!e){x=302;break}else{t=t<<1;i=e}}if((x|0)==302)if(r>>>0<(a[3526]|0)>>>0)ue();else{a[r>>2]=u;a[u+24>>2]=i;a[u+12>>2]=u;a[u+8>>2]=u;break}else if((x|0)==305){t=i+8|0;e=a[t>>2]|0;L=a[3526]|0;if(e>>>0>=L>>>0&i>>>0>=L>>>0){a[e+12>>2]=u;a[t>>2]=u;a[u+8>>2]=e;a[u+12>>2]=i;a[u+24>>2]=0;break}else ue()}}}else{L=a[3526]|0;if((L|0)==0|s>>>0>>0)a[3526]=s;a[3634]=s;a[3635]=o;a[3637]=0;a[3531]=a[3640];a[3530]=-1;e=0;do{L=14128+(e<<1<<2)|0;a[L+12>>2]=L;a[L+8>>2]=L;e=e+1|0}while((e|0)!=32);L=s+8|0;L=(L&7|0)==0?0:0-L&7;O=s+L|0;L=o+-40-L|0;a[3528]=O;a[3525]=L;a[O+4>>2]=L|1;a[O+L+4>>2]=40;a[3529]=a[3644]}}while(0);e=a[3525]|0;if(e>>>0>b>>>0){P=e-b|0;a[3525]=P;L=a[3528]|0;O=L+b|0;a[3528]=O;a[O+4>>2]=P|1;a[L+4>>2]=b|3;L=L+8|0;c=z;return L|0}}if(!(a[3510]|0))e=14084;else e=a[(tt()|0)+64>>2]|0;a[e>>2]=12;L=0;c=z;return L|0}function Ke(e){e=e|0;var t=0,r=0,i=0,n=0,o=0,s=0,f=0,l=0,u=0,c=0,h=0,d=0,p=0,b=0,y=0;if(!e)return;r=e+-8|0;s=a[3526]|0;if(r>>>0>>0)ue();e=a[e+-4>>2]|0;t=e&3;if((t|0)==1)ue();i=e&-8;d=r+i|0;do{if(!(e&1)){e=a[r>>2]|0;if(!t)return;u=r+(0-e)|0;l=e+i|0;if(u>>>0>>0)ue();if((u|0)==(a[3527]|0)){t=d+4|0;e=a[t>>2]|0;if((e&3|0)!=3){y=u;n=l;break}a[3524]=l;a[t>>2]=e&-2;a[u+4>>2]=l|1;a[u+l>>2]=l;return}i=e>>>3;if(e>>>0<256){t=a[u+8>>2]|0;r=a[u+12>>2]|0;e=14128+(i<<1<<2)|0;if((t|0)!=(e|0)){if(t>>>0>>0)ue();if((a[t+12>>2]|0)!=(u|0))ue()}if((r|0)==(t|0)){a[3522]=a[3522]&~(1<>>0>>0)ue();e=r+8|0;if((a[e>>2]|0)==(u|0))o=e;else ue()}else o=r+8|0;a[t+12>>2]=r;a[o>>2]=t;y=u;n=l;break}o=a[u+24>>2]|0;r=a[u+12>>2]|0;do{if((r|0)==(u|0)){r=u+16|0;t=r+4|0;e=a[t>>2]|0;if(!e){e=a[r>>2]|0;if(!e){f=0;break}else i=r}else i=t;while(1){r=e+20|0;t=a[r>>2]|0;if(t|0){e=t;i=r;continue}r=e+16|0;t=a[r>>2]|0;if(!t)break;else{e=t;i=r}}if(i>>>0>>0)ue();else{a[i>>2]=0;f=e;break}}else{i=a[u+8>>2]|0;if(i>>>0>>0)ue();e=i+12|0;if((a[e>>2]|0)!=(u|0))ue();t=r+8|0;if((a[t>>2]|0)==(u|0)){a[e>>2]=r;a[t>>2]=i;f=r;break}else ue()}}while(0);if(o){e=a[u+28>>2]|0;t=14392+(e<<2)|0;if((u|0)==(a[t>>2]|0)){a[t>>2]=f;if(!f){a[3523]=a[3523]&~(1<>>0<(a[3526]|0)>>>0)ue();e=o+16|0;if((a[e>>2]|0)==(u|0))a[e>>2]=f;else a[o+20>>2]=f;if(!f){y=u;n=l;break}}r=a[3526]|0;if(f>>>0>>0)ue();a[f+24>>2]=o;t=u+16|0;e=a[t>>2]|0;do{if(e|0)if(e>>>0>>0)ue();else{a[f+16>>2]=e;a[e+24>>2]=f;break}}while(0);e=a[t+4>>2]|0;if(e)if(e>>>0<(a[3526]|0)>>>0)ue();else{a[f+20>>2]=e;a[e+24>>2]=f;y=u;n=l;break}else{y=u;n=l}}else{y=u;n=l}}else{y=r;n=i}}while(0);if(y>>>0>=d>>>0)ue();e=d+4|0;t=a[e>>2]|0;if(!(t&1))ue();if(!(t&2)){if((d|0)==(a[3528]|0)){b=(a[3525]|0)+n|0;a[3525]=b;a[3528]=y;a[y+4>>2]=b|1;if((y|0)!=(a[3527]|0))return;a[3527]=0;a[3524]=0;return}if((d|0)==(a[3527]|0)){b=(a[3524]|0)+n|0;a[3524]=b;a[3527]=y;a[y+4>>2]=b|1;a[y+b>>2]=b;return}n=(t&-8)+n|0;i=t>>>3;do{if(t>>>0>=256){o=a[d+24>>2]|0;e=a[d+12>>2]|0;do{if((e|0)==(d|0)){r=d+16|0;t=r+4|0;e=a[t>>2]|0;if(!e){e=a[r>>2]|0;if(!e){h=0;break}else i=r}else i=t;while(1){r=e+20|0;t=a[r>>2]|0;if(t|0){e=t;i=r;continue}r=e+16|0;t=a[r>>2]|0;if(!t)break;else{e=t;i=r}}if(i>>>0<(a[3526]|0)>>>0)ue();else{a[i>>2]=0;h=e;break}}else{t=a[d+8>>2]|0;if(t>>>0<(a[3526]|0)>>>0)ue();r=t+12|0;if((a[r>>2]|0)!=(d|0))ue();i=e+8|0;if((a[i>>2]|0)==(d|0)){a[r>>2]=e;a[i>>2]=t;h=e;break}else ue()}}while(0);if(o|0){e=a[d+28>>2]|0;t=14392+(e<<2)|0;if((d|0)==(a[t>>2]|0)){a[t>>2]=h;if(!h){a[3523]=a[3523]&~(1<>>0<(a[3526]|0)>>>0)ue();e=o+16|0;if((a[e>>2]|0)==(d|0))a[e>>2]=h;else a[o+20>>2]=h;if(!h)break}r=a[3526]|0;if(h>>>0>>0)ue();a[h+24>>2]=o;t=d+16|0;e=a[t>>2]|0;do{if(e|0)if(e>>>0>>0)ue();else{a[h+16>>2]=e;a[e+24>>2]=h;break}}while(0);e=a[t+4>>2]|0;if(e|0)if(e>>>0<(a[3526]|0)>>>0)ue();else{a[h+20>>2]=e;a[e+24>>2]=h;break}}}else{t=a[d+8>>2]|0;r=a[d+12>>2]|0;e=14128+(i<<1<<2)|0;if((t|0)!=(e|0)){if(t>>>0<(a[3526]|0)>>>0)ue();if((a[t+12>>2]|0)!=(d|0))ue()}if((r|0)==(t|0)){a[3522]=a[3522]&~(1<>>0<(a[3526]|0)>>>0)ue();e=r+8|0;if((a[e>>2]|0)==(d|0))c=e;else ue()}else c=r+8|0;a[t+12>>2]=r;a[c>>2]=t}}while(0);a[y+4>>2]=n|1;a[y+n>>2]=n;if((y|0)==(a[3527]|0)){a[3524]=n;return}}else{a[e>>2]=t&-2;a[y+4>>2]=n|1;a[y+n>>2]=n}e=n>>>3;if(n>>>0<256){r=14128+(e<<1<<2)|0;t=a[3522]|0;e=1<>2]|0;if(t>>>0<(a[3526]|0)>>>0)ue();else{p=e;b=t}}else{a[3522]=t|e;p=r+8|0;b=r}a[p>>2]=y;a[b+12>>2]=y;a[y+8>>2]=b;a[y+12>>2]=r;return}e=n>>>8;if(e)if(n>>>0>16777215)t=31;else{p=(e+1048320|0)>>>16&8;b=e<>>16&4;b=b<>>16&2;t=14-(d|p|t)+(b<>>15)|0;t=n>>>(t+7|0)&1|t<<1}else t=0;i=14392+(t<<2)|0;a[y+28>>2]=t;a[y+20>>2]=0;a[y+16>>2]=0;e=a[3523]|0;r=1<>>1)|0);i=a[i>>2]|0;while(1){if((a[i+4>>2]&-8|0)==(n|0)){e=130;break}r=i+16+(t>>>31<<2)|0;e=a[r>>2]|0;if(!e){e=127;break}else{t=t<<1;i=e}}if((e|0)==127)if(r>>>0<(a[3526]|0)>>>0)ue();else{a[r>>2]=y;a[y+24>>2]=i;a[y+12>>2]=y;a[y+8>>2]=y;break}else if((e|0)==130){t=i+8|0;e=a[t>>2]|0;b=a[3526]|0;if(e>>>0>=b>>>0&i>>>0>=b>>>0){a[e+12>>2]=y;a[t>>2]=y;a[y+8>>2]=e;a[y+12>>2]=i;a[y+24>>2]=0;break}else ue()}}else{a[3523]=e|r;a[i>>2]=y;a[y+24>>2]=i;a[y+12>>2]=y;a[y+8>>2]=y}}while(0);y=(a[3530]|0)+-1|0;a[3530]=y;if(!y)e=14544;else return;while(1){e=a[e>>2]|0;if(!e)break;else e=e+8|0}a[3530]=-1;return}function Xe(){}function Qe(e,t,r){e=e|0;t=t|0;r=r|0;var n=0,o=0,s=0,f=0;n=e+r|0;if((r|0)>=20){t=t&255;s=e&3;f=t|t<<8|t<<16|t<<24;o=n&~3;if(s){s=e+4-s|0;while((e|0)<(s|0)){i[e>>0]=t;e=e+1|0}}while((e|0)<(o|0)){a[e>>2]=f;e=e+4|0}}while((e|0)<(n|0)){i[e>>0]=t;e=e+1|0}return e-r|0}function et(e){e=e|0;return(e&255)<<24|(e>>8&255)<<16|(e>>16&255)<<8|e>>>24|0}function tt(){return 0}function rt(e,t,r){e=e|0;t=t|0;r=r|0;var n=0;if((r|0)>=4096)return le(e|0,t|0,r|0)|0;n=e|0;if((e&3)==(t&3)){while(e&3){if(!r)return n|0;i[e>>0]=i[t>>0]|0;e=e+1|0;t=t+1|0;r=r-1|0}while((r|0)>=4){a[e>>2]=a[t>>2];e=e+4|0;t=t+4|0;r=r-4|0}}while((r|0)>0){i[e>>0]=i[t>>0]|0;e=e+1|0;t=t+1|0;r=r-1|0}return n|0}function it(e,t,r,i){e=e|0;t=t|0;r=r|0;i=i|0;return lt[e&1](t|0,r|0,i|0)|0}function nt(e,t,r){e=e|0;t=t|0;r=r|0;ut[e&1](t|0,r|0)}function at(e,t,r){e=e|0;t=t|0;r=r|0;return ct[e&3](t|0,r|0)|0}function ot(e,t,r){e=e|0;t=t|0;r=r|0;ie(0);return 0}function st(e,t){e=e|0;t=t|0;ie(1)}function ft(e,t){e=e|0;t=t|0;ie(2);return 0}var lt=[ot,qe];var ut=[st,We];var ct=[ft,Ue,Pe,Le];return{_free:Ke,_ZLIBJS_freeInflateContext:xe,_ZLIBJS_createInflateContext:Be,_pthread_self:tt,_memset:Qe,_ZLIBJS_freeDeflateContext:Ee,_malloc:$e,_ZLIBJS_deflate:Ae,_memcpy:rt,_llvm_bswap_i32:et,_ZLIBJS_inflate:Re,_ZLIBJS_createDeflateContext:Se,_ZLIBJS_init:_e,runPostSets:Xe,stackAlloc:de,stackSave:pe,stackRestore:be,establishStackSpace:ye,setThrew:we,setTempRet0:me,getTempRet0:ke,dynCall_iiii:it,dynCall_vii:nt,dynCall_iii:at}}(b.q,b.r,buffer),Q=b._free=Z._free;b._ZLIBJS_inflate=Z._ZLIBJS_inflate,b._ZLIBJS_createInflateContext=Z._ZLIBJS_createInflateContext;var xa=b._pthread_self=Z._pthread_self,va=b._memset=Z._memset;b._ZLIBJS_freeDeflateContext=Z._ZLIBJS_freeDeflateContext;var N=b._malloc=Z._malloc;b._ZLIBJS_deflate=Z._ZLIBJS_deflate;var ya=b._memcpy=Z._memcpy;b._ZLIBJS_init=Z._ZLIBJS_init,b._ZLIBJS_freeInflateContext=Z._ZLIBJS_freeInflateContext,b._ZLIBJS_createDeflateContext=Z._ZLIBJS_createDeflateContext;var wa=b._llvm_bswap_i32=Z._llvm_bswap_i32;function y(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}b.runPostSets=Z.runPostSets,b.dynCall_iiii=Z.dynCall_iiii,b.dynCall_vii=Z.dynCall_vii,b.dynCall_iii=Z.dynCall_iii,B.m=Z.stackAlloc,B.B=Z.stackSave,B.A=Z.stackRestore,B.H=Z.establishStackSpace,B.w=Z.setTempRet0,B.u=Z.getTempRet0,y.prototype=Error(),y.prototype.constructor=y;var za=null;function Ba(e){function t(){if(!b.calledRun&&(b.calledRun=!0,!G)){if(X||(X=!0,V(W)),V(oa),b.onRuntimeInitialized&&b.onRuntimeInitialized(),b._main&&Ca&&b.callMain(e),b.postRun)for("function"==typeof b.postRun&&(b.postRun=[b.postRun]);b.postRun.length;){var t=b.postRun.shift();qa.unshift(t)}V(qa)}}if(e=e||b.arguments,null===za&&(za=Date.now()),b.preRun)for("function"==typeof b.preRun&&(b.preRun=[b.preRun]);b.preRun.length;)ra();V(na),b.calledRun||(b.setStatus?(b.setStatus("Running..."),setTimeout(function(){setTimeout(function(){b.setStatus("")},1),t()},1)):t())}function Aa(e,i){if(!i||!b.noExitRuntime)throw!b.noExitRuntime&&(G=!0,z=void 0,V(pa),b.onExit)&&b.onExit(e),r?process.exit(e):t&&"function"==typeof quit&&quit(e),new y(e)}b.callMain=b.F=function(e){function t(){for(var e=0;3>e;e++)i.push(0)}e=e||[],X||(X=!0,V(W));var r=e.length+1,i=[M(P(b.thisProgram),"i8",0)];t();for(var n=0;ne.fileName)}readFileAsArrayBuffer(e){return this._decompressFile(e).then(e=>e.buffer)}readFileAsBlob(e,t){return this._decompressFile(e).then(e=>new Blob([e],{type:t}))}readFileAsText(e,t="UTF-8"){return this.readFileAsBlob(e).then(e=>n.readFileAsText(e,t))}readFileAsDataURL(e){return this.readFileAsBlob(e).then(n.readFileAsDataURL)}readFileAsArrayBufferSync(e){if(!n.ENV_IS_WORKER)throw new Error("ZipArchiveReader#readFileAsArrayBufferSync is available on only a worker process.");return this._decompressFileSync(e).buffer}readFileAsBlobSync(e,t){if(!n.ENV_IS_WORKER)throw new Error("ZipArchiveReader#readFileAsBlobSync is available on only a worker process.");return new Blob([this._decompressFileSync(e)],{type:t})}readFileAsTextSync(e,t="UTF-8"){if(!n.ENV_IS_WORKER)throw new Error("ZipArchiveReader#readFileAsTextSync is available on only a worker process.");return(new FileReaderSync).readAsText(this.readFileAsBlobSync(e),t)}readFileAsDataURLSync(e){if(!n.ENV_IS_WORKER)throw new Error("ZipArchiveReader#readFileAsDataURLSync is available on only a worker process.");return(new FileReaderSync).readAsDataURL(this.readFileAsBlobSync(e))}_completeInit(){return i(this,void 0,void 0,function*(){let e=this.files,t=this.folders,r=this.localFileHeaders;return r.forEach(r=>{(47!==r.fileNameAsBytes[r.fileNameAsBytes.length-1]?e:t).push(r)}),null==this.encoding&&(this.encoding=n.detectEncoding(n.concatBytes(r.slice(0,100).map(e=>e.fileNameAsBytes)))),yield Promise.all(r.map(e=>n.bytesToString(e.fileNameAsBytes,this.encoding).then(t=>e.fileName=t))),this})}_getFileIndex(e){for(let t=0,r=this.localFileHeaders.length;t-1?i:a.nextTick;g.WritableState=w;var l=r(7);l.inherits=r(6);var u={deprecate:r(68)},c=r(30),h=r(9).Buffer,d=n.Uint8Array||function(){};var p,b=r(29);function y(){}function w(e,t){s=s||r(4),e=e||{};var i=t instanceof s;this.objectMode=!!e.objectMode,i&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var n=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=n||0===n?n:i&&(l||0===l)?l: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 c=!1===e.decodeStrings;this.decodeStrings=!c,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,n=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,n){--t.pendingcb,r?(a.nextTick(n,i),a.nextTick(A,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(n(i),e._writableState.errorEmitted=!0,e.emit("error",i),A(e,t))}(e,r,i,t,n);else{var o=_(r);o||r.corked||r.bufferProcessing||!r.bufferedRequest||k(e,r),i?f(m,e,r,o,n):m(e,r,o,n)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function g(e){if(s=s||r(4),!(p.call(g,this)||this instanceof s))return new g(e);this._writableState=new w(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)),c.call(this)}function v(e,t,r,i,n,a,o){t.writelen=i,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(n,t.onwrite):e._write(n,a,t.onwrite),t.sync=!1}function m(e,t,r,i){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,i(),A(e,t)}function k(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var i=t.bufferedRequestCount,n=new Array(i),a=t.corkedRequestsFree;a.entry=r;for(var s=0,f=!0;r;)n[s]=r,r.isBuf||(f=!1),r=r.next,s+=1;n.allBuffers=f,v(e,t,!0,t.length,n,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new o(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,c=r.callback;if(v(e,t,!1,t.objectMode?1:l.length,l,u,c),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function _(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function S(e,t){e._final(function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),A(e,t)})}function A(e,t){var r=_(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,a.nextTick(S,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}l.inherits(g,c),w.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(w.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(g,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===g&&(e&&e._writableState instanceof w)}})):p=function(e){return e instanceof this},g.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},g.prototype.write=function(e,t,r){var i,n=this._writableState,o=!1,s=!n.objectMode&&(i=e,h.isBuffer(i)||i instanceof d);return s&&!h.isBuffer(e)&&(e=function(e){return h.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=n.defaultEncoding),"function"!=typeof r&&(r=y),n.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),a.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var n=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),a.nextTick(i,o),n=!1),n}(this,n,e,r))&&(n.pendingcb++,o=function(e,t,r,i,n,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=h.from(t,r));return t}(t,i,n);i!==o&&(r=!0,n="buffer",i=o)}var s=t.objectMode?1:i.length;t.length+=s;var f=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},g.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},g.prototype._writev=null,g.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!==e&&void 0!==e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||i.finished||function(e,t,r){t.ending=!0,A(e,t),r&&(t.finished?a.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(g.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),g.prototype.destroy=b.destroy,g.prototype._undestroy=b.undestroy,g.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,r(3),r(70).setImmediate,r(5))},function(e,t,r){(t=e.exports=r(31)).Stream=t,t.Readable=t,t.Writable=r(16),t.Duplex=r(4),t.Transform=r(27),t.PassThrough=r(67)},function(e,t){function r(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function i(e){return"function"==typeof e}function n(e){return"object"==typeof e&&null!==e}function a(e){return void 0===e}e.exports=r,r.EventEmitter=r,r.prototype._events=void 0,r.prototype._maxListeners=void 0,r.defaultMaxListeners=10,r.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||isNaN(e))throw TypeError("n must be a positive number");return this._maxListeners=e,this},r.prototype.emit=function(e){var t,r,o,s,f,l;if(this._events||(this._events={}),"error"===e&&(!this._events.error||n(this._events.error)&&!this._events.error.length)){if((t=arguments[1])instanceof Error)throw t;var u=new Error('Uncaught, unspecified "error" event. ('+t+")");throw u.context=t,u}if(a(r=this._events[e]))return!1;if(i(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:s=Array.prototype.slice.call(arguments,1),r.apply(this,s)}else if(n(r))for(s=Array.prototype.slice.call(arguments,1),o=(l=r.slice()).length,f=0;f0&&this._events[e].length>o&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace()),this},r.prototype.on=r.prototype.addListener,r.prototype.once=function(e,t){if(!i(t))throw TypeError("listener must be a function");var r=!1;function n(){this.removeListener(e,n),r||(r=!0,t.apply(this,arguments))}return n.listener=t,this.on(e,n),this},r.prototype.removeListener=function(e,t){var r,a,o,s;if(!i(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(o=(r=this._events[e]).length,a=-1,r===t||i(r.listener)&&r.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(n(r)){for(s=o;s-- >0;)if(r[s]===t||r[s].listener&&r[s].listener===t){a=s;break}if(a<0)return this;1===r.length?(r.length=0,delete this._events[e]):r.splice(a,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},r.prototype.removeAllListeners=function(e){var t,r;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(i(r=this._events[e]))this.removeListener(e,r);else if(r)for(;r.length;)this.removeListener(e,r[r.length-1]);return delete this._events[e],this},r.prototype.listeners=function(e){return this._events&&this._events[e]?i(this._events[e])?[this._events[e]]:this._events[e].slice():[]},r.prototype.listenerCount=function(e){if(this._events){var t=this._events[e];if(i(t))return 1;if(t)return t.length}return 0},r.listenerCount=function(e,t){return e.listenerCount(t)}},function(e,t,r){var i=r(11),n=r(2);function a(e,t){if(t=n.assign({},n.defaultParams,t),this.chunkSize=t.chunkSize,t.level&&(this.compressionLevel=t.level),this.compressionLevel=Math.min(Math.max(this.compressionLevel,0),9),this.ctxPtr=i._ZLIBJS_createDeflateContext(t.compressionLevel,e),!this.ctxPtr)throw n.zerror("ZLIBJS_createDeflateContext");i.ZLIBJS_instances[this.ctxPtr]=this,i._ZLIBJS_init(this.chunkSize)}a.prototype.deflate=function(e){var t=n.validate(i._ZLIBJS_deflate(this.ctxPtr,this.chunkSize,+e));if(!t.valid)throw this.cleanup(),n.zerror(t.error)},a.prototype.cleanup=function(){this.ctxPtr&&i._ZLIBJS_freeDeflateContext(this.ctxPtr),delete i.ZLIBJS_instances[this.ctxPtr]},e.exports=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){for(var r in e)t.hasOwnProperty(r)||(t[r]=e[r])}(r(42))},function(e,t,r){"use strict";var i=this&&this.__awaiter||function(e,t,r,i){return new(r||(r=Promise))(function(n,a){function o(e){try{f(i.next(e))}catch(e){a(e)}}function s(e){try{f(i.throw(e))}catch(e){a(e)}}function f(e){e.done?n(e.value):new r(function(t){t(e.value)}).then(o,s)}f((i=i.apply(e,t||[])).next())})};Object.defineProperty(t,"__esModule",{value:!0});const n=r(13),a=r(0);t.ZipBlobArchiveReader=class extends n.ZipArchiveReader{constructor(e,t,r){super(),this.blob=e,this.encoding=t,this.chunkSize=r}init(){return i(this,void 0,void 0,function*(){let e,t,r=this.blob,i=[],o=[],s=(e,t)=>a.readFileAsArrayBuffer(r.slice(e,t));this.files=[],this.folders=[],this.localFileHeaders=o,this.centralDirHeaders=i;{const e=yield s(0,4);if(new DataView(e).getUint32(0,!0)!==a.LOCAL_FILE_SIGNATURE)throw new Error("zip.unpack: invalid zip file.");t=Math.max(0,r.size-32768)}e:do{const e=yield s(t,Math.min(r.size,t+32768)),i=new DataView(e);for(let r=e.byteLength-4;r--;)if(i.getUint32(r,!0)===a.END_SIGNATURE){t+=r;break e}t=Math.max(t-32768+3,0)}while(t);if(!t)throw new Error("zip.unpack: invalid zip file.");yield s((e=n.readEndCentDirHeader(yield s(t,r.size),0)).startpos,t).then(t=>{let r,a=0;for(let o=0;othis._decompress(new Uint8Array(e),t.isCompressed))}_decompressFileSync(e){let t=this._getFileInfo(e),r=this.blob.slice(t.offset,t.offset+t.length),i=new Uint8Array((new FileReaderSync).readAsArrayBuffer(r));return this._decompress(i,t.isCompressed)}}},function(e,t,r){"use strict";var i=this&&this.__awaiter||function(e,t,r,i){return new(r||(r=Promise))(function(n,a){function o(e){try{f(i.next(e))}catch(e){a(e)}}function s(e){try{f(i.throw(e))}catch(e){a(e)}}function f(e){e.done?n(e.value):new r(function(t){t(e.value)}).then(o,s)}f((i=i.apply(e,t||[])).next())})};Object.defineProperty(t,"__esModule",{value:!0});const n=r(0),a=r(13);t.ZipBufferArchiveReader=class extends a.ZipArchiveReader{constructor(e,t,r){super(),this.buffer=e,this.encoding=t,this.chunkSize=r,this.bytes=n.toBytes(this.buffer),this.init=this.init.bind(this)}init(){let e,t,r,i,o,s=this.bytes,f=[],l=[],u=s.byteLength-4,c=new DataView(s.buffer,s.byteOffset,s.byteLength);if(this.files=[],this.folders=[],this.localFileHeaders=f,this.centralDirHeaders=l,c.getUint32(0,!0)!==n.LOCAL_FILE_SIGNATURE)throw new Error("zip.unpack: invalid zip file");for(;;){if(c.getUint32(u,!0)===n.END_SIGNATURE){r=a.readEndCentDirHeader(this.bytes.buffer,u);break}if(0==--u)throw new Error("zip.unpack: invalid zip file")}for(u=r.startpos,i=0,o=r.direntry;i=a)return e;switch(e){case"%s":return String(i[r++]);case"%d":return Number(i[r++]);case"%j":try{return JSON.stringify(i[r++])}catch(e){return"[Circular]"}default:return e}}),f=i[r];r=3&&(i.depth=arguments[2]),arguments.length>=4&&(i.colors=arguments[3]),p(r)?i.showHidden=r:r&&t._extend(i,r),g(i.showHidden)&&(i.showHidden=!1),g(i.depth)&&(i.depth=2),g(i.colors)&&(i.colors=!1),g(i.customInspect)&&(i.customInspect=!0),i.colors&&(i.stylize=f),u(i,e,i.depth)}function f(e,t){var r=s.styles[t];return r?"["+s.colors[r][0]+"m"+e+"["+s.colors[r][1]+"m":e}function l(e,t){return e}function u(e,r,i){if(e.customInspect&&r&&S(r.inspect)&&r.inspect!==t.inspect&&(!r.constructor||r.constructor.prototype!==r)){var n=r.inspect(i,e);return w(n)||(n=u(e,n,i)),n}var a=function(e,t){if(g(t))return e.stylize("undefined","undefined");if(w(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(y(t))return e.stylize(""+t,"number");if(p(t))return e.stylize(""+t,"boolean");if(b(t))return e.stylize("null","null")}(e,r);if(a)return a;var o=Object.keys(r),s=function(e){var t={};return e.forEach(function(e,r){t[e]=!0}),t}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(r)),_(r)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return c(r);if(0===o.length){if(S(r)){var f=r.name?": "+r.name:"";return e.stylize("[Function"+f+"]","special")}if(v(r))return e.stylize(RegExp.prototype.toString.call(r),"regexp");if(k(r))return e.stylize(Date.prototype.toString.call(r),"date");if(_(r))return c(r)}var l,m="",A=!1,E=["{","}"];(d(r)&&(A=!0,E=["[","]"]),S(r))&&(m=" [Function"+(r.name?": "+r.name:"")+"]");return v(r)&&(m=" "+RegExp.prototype.toString.call(r)),k(r)&&(m=" "+Date.prototype.toUTCString.call(r)),_(r)&&(m=" "+c(r)),0!==o.length||A&&0!=r.length?i<0?v(r)?e.stylize(RegExp.prototype.toString.call(r),"regexp"):e.stylize("[Object]","special"):(e.seen.push(r),l=A?function(e,t,r,i,n){for(var a=[],o=0,s=t.length;o=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60)return r[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+r[1];return r[0]+t+" "+e.join(", ")+" "+r[1]}(l,m,E)):E[0]+m+E[1]}function c(e){return"["+Error.prototype.toString.call(e)+"]"}function h(e,t,r,i,n,a){var o,s,f;if((f=Object.getOwnPropertyDescriptor(t,n)||{value:t[n]}).get?s=f.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):f.set&&(s=e.stylize("[Setter]","special")),R(i,n)||(o="["+n+"]"),s||(e.seen.indexOf(f.value)<0?(s=b(r)?u(e,f.value,null):u(e,f.value,r-1)).indexOf("\n")>-1&&(s=a?s.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+s.split("\n").map(function(e){return" "+e}).join("\n")):s=e.stylize("[Circular]","special")),g(o)){if(a&&n.match(/^\d+$/))return s;(o=JSON.stringify(""+n)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.substr(1,o.length-2),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function d(e){return Array.isArray(e)}function p(e){return"boolean"==typeof e}function b(e){return null===e}function y(e){return"number"==typeof e}function w(e){return"string"==typeof e}function g(e){return void 0===e}function v(e){return m(e)&&"[object RegExp]"===A(e)}function m(e){return"object"==typeof e&&null!==e}function k(e){return m(e)&&"[object Date]"===A(e)}function _(e){return m(e)&&("[object Error]"===A(e)||e instanceof Error)}function S(e){return"function"==typeof e}function A(e){return Object.prototype.toString.call(e)}function E(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(e){if(g(a)&&(a=i.env.NODE_DEBUG||""),e=e.toUpperCase(),!o[e])if(new RegExp("\\b"+e+"\\b","i").test(a)){var r=i.pid;o[e]=function(){var i=t.format.apply(t,arguments);console.error("%s %d: %s",e,r,i)}}else o[e]=function(){};return o[e]},t.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=d,t.isBoolean=p,t.isNull=b,t.isNullOrUndefined=function(e){return null==e},t.isNumber=y,t.isString=w,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=g,t.isRegExp=v,t.isObject=m,t.isDate=k,t.isError=_,t.isFunction=S,t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=r(62);var B=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function R(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){var e,r;console.log("%s - %s",(e=new Date,r=[E(e.getHours()),E(e.getMinutes()),E(e.getSeconds())].join(":"),[e.getDate(),B[e.getMonth()],r].join(" ")),t.format.apply(t,arguments))},t.inherits=r(61),t._extend=function(e,t){if(!t||!m(t))return e;for(var r=Object.keys(t),i=r.length;i--;)e[r[i]]=t[r[i]];return e}}).call(this,r(5),r(3))},function(e,t,r){"use strict";e.exports=a;var i=r(4),n=r(7);function a(e){if(!(this instanceof a))return new a(e);i.call(this,e),this._transformState={afterTransform:function(e,t){var r=this._transformState;r.transforming=!1;var i=r.writecb;if(!i)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),i(e);var n=this._readableState;n.reading=!1,(n.needReadable||n.length>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t,r){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!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function f(e,t){if((e.length-t)%2==0){var r=e.toString("utf16le",t);if(r){var i=r.charCodeAt(r.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function l(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function u(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function c(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function h(e){return e.toString(this.encoding)}function d(e){return e&&e.length?this.write(e):""}t.StringDecoder=a,a.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0)return n>0&&(e.lastNeed=n-1),n;if(--i=0)return n>0&&(e.lastNeed=n-2),n;if(--i=0)return n>0&&(2===n?n=0:e.lastNeed=n-3),n;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var i=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,i),e.toString("utf8",t,i)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},function(e,t,r){"use strict";var i=r(10);function n(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):!e||this._writableState&&this._writableState.errorEmitted||i.nextTick(n,this,e),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(e){!t&&e?(i.nextTick(n,r,e),r._writableState&&(r._writableState.errorEmitted=!0)):t&&t(e)}),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},function(e,t,r){e.exports=r(18).EventEmitter},function(e,t,r){"use strict";(function(t,i){var n=r(10);e.exports=v;var a,o=r(78);v.ReadableState=g;r(18).EventEmitter;var s=function(e,t){return e.listeners(t).length},f=r(30),l=r(9).Buffer,u=t.Uint8Array||function(){};var c=r(7);c.inherits=r(6);var h=r(73),d=void 0;d=h&&h.debuglog?h.debuglog("stream"):function(){};var p,b=r(72),y=r(29);c.inherits(v,f);var w=["error","close","destroy","pause","resume"];function g(e,t){a=a||r(4),e=e||{};var i=t instanceof a;this.objectMode=!!e.objectMode,i&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var n=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=n||0===n?n:i&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new b,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(p||(p=r(28).StringDecoder),this.decoder=new p(e.encoding),this.encoding=e.encoding)}function v(e){if(a=a||r(4),!(this instanceof v))return new v(e);this._readableState=new g(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 m(e,t,r,i,n){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,A(e)}(e,o)):(n||(a=function(e,t){var r;i=t,l.isBuffer(i)||i instanceof u||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var i;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===l.prototype||(t=function(e){return l.from(e)}(t)),i?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):k(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?k(e,o,t,!1):B(e,o)):k(e,o,t,!1))):i||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=_?e=_:(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 A(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(d("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(E,e):E(e))}function E(e){d("emit readable"),e.emit("readable"),M(e)}function B(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(R,e,t))}function R(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var i;ea.length?a.length:e;if(o===a.length?n+=a:n+=a.slice(0,e),0===(e-=o)){o===a.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++i}return t.length-=i,n}(e,t):function(e,t){var r=l.allocUnsafe(e),i=t.head,n=1;i.data.copy(r),e-=i.data.length;for(;i=i.next;){var a=i.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++n,i.next?t.head=i.next:t.head=t.tail=null):(t.head=i,i.data=a.slice(o));break}++n}return t.length-=n,r}(e,t);return i}(e,t.buffer,t.decoder),r);var r}function I(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(P,t,e))}function P(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function O(e,t){for(var r=0,i=e.length;r=t.highWaterMark||t.ended))return d("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?I(this):A(this),null;if(0===(e=S(e,t))&&t.ended)return 0===t.length&&I(this),null;var i,n=t.needReadable;return d("need readable",n),(0===t.length||t.length-e0?U(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&I(this)),null!==i&&this.emit("data",i),i},v.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},v.prototype.pipe=function(e,t){var r=this,a=this._readableState;switch(a.pipesCount){case 0:a.pipes=e;break;case 1:a.pipes=[a.pipes,e];break;default:a.pipes.push(e)}a.pipesCount+=1,d("pipe count=%d opts=%j",a.pipesCount,t);var f=(!t||!1!==t.end)&&e!==i.stdout&&e!==i.stderr?u:v;function l(t,i){d("onunpipe"),t===r&&i&&!1===i.hasUnpiped&&(i.hasUnpiped=!0,d("cleanup"),e.removeListener("close",w),e.removeListener("finish",g),e.removeListener("drain",c),e.removeListener("error",y),e.removeListener("unpipe",l),r.removeListener("end",u),r.removeListener("end",v),r.removeListener("data",b),h=!0,!a.awaitDrain||e._writableState&&!e._writableState.needDrain||c())}function u(){d("onend"),e.end()}a.endEmitted?n.nextTick(f):r.once("end",f),e.on("unpipe",l);var c=function(e){return function(){var t=e._readableState;d("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&s(e,"data")&&(t.flowing=!0,M(e))}}(r);e.on("drain",c);var h=!1;var p=!1;function b(t){d("ondata"),p=!1,!1!==e.write(t)||p||((1===a.pipesCount&&a.pipes===e||a.pipesCount>1&&-1!==O(a.pipes,e))&&!h&&(d("false write response, pause",r._readableState.awaitDrain),r._readableState.awaitDrain++,p=!0),r.pause())}function y(t){d("onerror",t),v(),e.removeListener("error",y),0===s(e,"error")&&e.emit("error",t)}function w(){e.removeListener("finish",g),v()}function g(){d("onfinish"),e.removeListener("close",w),v()}function v(){d("unpipe"),r.unpipe(e)}return r.on("data",b),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?o(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",y),e.once("close",w),e.once("finish",g),e.emit("pipe",r),a.flowing||(d("pipe resume"),r.resume()),e},v.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var i=t.pipes,n=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;at.buffer=e[0]))}),yield Promise.all(i),e.forEach(e=>(function e(t,r,i){const a=i.children||i.dir||i.folder;let o;if(t="number"==typeof i.level?i.level:t,a)r+=i.name+(/.+\/$/.test(i.name)?"":"/"),f.writeDir(r),a.forEach(i=>e(t,r,i));else{if(null!=i.buffer&&(o=i.buffer),null==o)throw new Error("jz.zip.pack: This type is not supported.");r+=i.name,f.writeFile(r,n.toBytes(o),t)}})(r,"",e)),f.writeEnd()})}},function(e,t,r){"use strict";var i=this&&this.__awaiter||function(e,t,r,i){return new(r||(r=Promise))(function(n,a){function o(e){try{f(i.next(e))}catch(e){a(e)}}function s(e){try{f(i.throw(e))}catch(e){a(e)}}function f(e){e.done?n(e.value):new r(function(t){t(e.value)}).then(o,s)}f((i=i.apply(e,t||[])).next())})};Object.defineProperty(t,"__esModule",{value:!0});const n=r(0),a=r(20);t.pack=function(e){return i(this,void 0,void 0,function*(){let t=[];return yield a.pack(Object.assign({},e,{shareMemory:!1,streamFn:e=>t.push(e)})),n.concatBytes(t)})}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),n=r(1),a=r(8);function o(e,t,r){let n=new DataView(new ArrayBuffer(30+e.length)),a=new Uint8Array(n.buffer),o=0;return n.setUint32(o,i.LOCAL_FILE_SIGNATURE,!0),o+=4,n.setUint16(o,20,!0),o+=2,n.setUint16(o,2056),o+=2,n.setUint16(o,r?8:0,!0),o+=2,n.setUint16(o,l(t),!0),o+=2,n.setUint16(o,f(t),!0),o+=2,o+=12,n.setUint16(o,e.length,!0),o+=2,o+=2,a.set(e,o),a}function s(e,t,r,n,a,o,s){let u=new DataView(new ArrayBuffer(46+e.length)),c=new Uint8Array(u.buffer),h=0;return u.setUint32(h,i.CENTRAL_DIR_SIGNATURE,!0),h+=4,u.setUint16(h,20,!0),h+=2,u.setUint16(h,20,!0),h+=2,u.setUint16(h,2056),h+=2,u.setUint16(h,r?8:0,!0),h+=2,u.setUint16(h,l(t),!0),h+=2,u.setUint16(h,f(t),!0),h+=2,u.setUint32(h,s,!0),h+=4,u.setUint32(h,o,!0),h+=4,u.setUint32(h,a,!0),h+=4,u.setUint16(h,e.length,!0),h+=2,h+=12,u.setUint32(h,n,!0),h+=4,c.set(e,h),c}function f(e){return e.getFullYear()-1980<<9|e.getMonth()+1<<5|e.getDay()}function l(e){return e.getHours()<<11|e.getMinutes()<<5|e.getSeconds()>>1}t.ZipArchiveWriter=class{constructor(e={}){this.dirs={},this.centralDirHeaders=[],this.offset=0,this.date=new Date,this.listeners={},this.shareMemory=e.shareMemory,this.chunkSize=e.chunkSize}write(e,t,r){e.split("/").reduce((e,t)=>(this.writeDir(e+"/"),`${e}/${t}`)),this.writeFile(e,t,r)}writeDir(e){let t;if(e+=/.+\/$/.test(e)?"":"/",!this.dirs[e]){this.dirs[e]=!0;let r=i.toBytes(e);t=o(r,this.date,!1),this.centralDirHeaders.push(s(r,this.date,!1,this.offset,0,0,0)),this.trigger("data",t),this.offset+=t.length}return this}writeFile(e,t,r){let f,l,u=i.toBytes(e),c=this.offset,h=o(u,this.date,!!r),d=0,p=i.toBytes(t);return this.trigger("data",h),r?a.deflate({buffer:p,level:r,streamFn:e=>{d+=e.length,this.trigger("data",e)},shareMemory:this.shareMemory,chunkSize:this.chunkSize}):(d=p.length,this.trigger("data",p)),f=function(e,t,r){let n=new DataView(new ArrayBuffer(16));return n.setUint32(0,i.DATA_DESCRIPTOR_SIGNATURE,!0),n.setUint32(4,e,!0),n.setUint32(8,t,!0),n.setUint32(12,r,!0),new Uint8Array(n.buffer)}(l=n.crc32(p),d,p.length),this.trigger("data",f),this.centralDirHeaders.push(s(u,this.date,!!r,c,p.length,d,l)),this.offset+=h.length+d+f.length,this}writeEnd(){let e=0;this.centralDirHeaders.forEach(t=>{e+=t.length,this.trigger("data",t)}),this.trigger("data",function(e,t,r){let n=new DataView(new ArrayBuffer(22));return n.setUint32(0,i.END_SIGNATURE,!0),n.setUint16(4,0,!0),n.setUint16(6,0,!0),n.setUint16(8,e,!0),n.setUint16(10,e,!0),n.setUint32(12,t,!0),n.setUint32(16,r,!0),n.setUint16(20,0,!0),new Uint8Array(n.buffer)}(this.centralDirHeaders.length,e,this.offset)),this.trigger("end",null)}on(e,t){return this.listeners[e]||(this.listeners[e]=[]),this.listeners[e].push(t),this}trigger(e,t){this.listeners[e]&&this.listeners[e].forEach(e=>e(t))}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),n=r(14);t.decompress=function(e){const t=[];return n.decompress(Object.assign({},e,{buffer:e.buffer,streamFn:e=>t.push(e)})),i.concatBytes(t)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),n=r(1),a=r(8);t.decompress=function({buffer:e,streamFn:t,shareMemory:r,chunkSize:o}){const s=i.toBytes(e),f=new DataView(s.buffer,s.byteOffset,s.byteLength);let l,u,c=10;if(8075!==f.getUint16(0))throw new Error("jz.gz.decompress: invalid gzip file.");if(8!==s[2])throw new Error("jz.gz.decompress: not deflate.");if(4&(l=s[3])&&(c+=f.getUint16(c,!0)+2),8&l)for(;s[c++];);if(16&l)for(;s[c++];);if(2&l&&(c+=2),a.inflate({buffer:s.subarray(c,s.length-8),streamFn(e){u=n.crc32(e,u),t(e)},shareMemory:r,chunkSize:o}),u!==f.getUint32(s.length-8,!0))throw new Error("js.stream.gz.decompress: file is broken.")}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),n=r(12);t.inflate=function(e){n.zlibBackend.stream.rawInflate(i.toBytes(e.buffer),e.streamFn,e.shareMemory,e.chunkSize)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),n=r(1);t.deflate=function(e){n.zlibBackend.stream.rawDeflate(i.toBytes(e.buffer),e.streamFn,e.level,e.shareMemory,e.chunkSize)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),n=r(1),a=r(8);t.compress=function({buffer:e,streamFn:t,chunkSize:r,level:o,shareMemory:s,fname:f,fcomment:l}){const u=i.toBytes(e);let c,h,d,p=0,b=10,y=0,w=Date.now(),g=f&&i.toBytes(f),v=l&&i.toBytes(l);g&&(b+=g.length+1,p|=8),v&&(b+=v.length+1,p|=16),c=new Uint8Array(b),(d=new DataView(c.buffer)).setUint32(y,529205248|p),y+=4,d.setUint32(y,w,!0),y+=4,d.setUint16(y,1279),y+=2,g&&(c.set(g,y),y+=g.length,c[y++]=0),v&&(c.set(v,y),y+=v.length,c[y++]=0),t(c),a.deflate({buffer:u,streamFn:t,shareMemory:s,chunkSize:r}),h=new Uint8Array(8),(d=new DataView(h.buffer)).setUint32(0,n.crc32(u),!0),d.setUint32(4,u.length,!0),t(h)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),n=r(14);t.compress=function(e){const t=[];return n.compress(Object.assign({},e,{buffer:e.buffer,streamFn:e=>t.push(e)})),i.concatBytes(t)}},function(e,t,r){"use strict";function i(e){for(var r in e)t.hasOwnProperty(r)||(t[r]=e[r])}Object.defineProperty(t,"__esModule",{value:!0}),i(r(50)),i(r(45))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),n=r(1);t.decompress=function(e){return n.zlibBackend.inflate(i.toBytes(e.buffer),e.chunkSize)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),n=r(1);t.compress=function(e){return n.zlibBackend.deflate(i.toBytes(e.buffer),e.level,e.chunkSize)}},function(e,t,r){"use strict";function i(e){for(var r in e)t.hasOwnProperty(r)||(t[r]=e[r])}Object.defineProperty(t,"__esModule",{value:!0}),i(r(53)),i(r(52))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=r(0),n=r(12);t.inflate=function(e){return n.zlibBackend.rawInflate(i.toBytes(e.buffer),e.chunkSize)}},function(e,t,r){var i=r(32).Transform,n=r(26).inherits,a=r(2),o=r(15),s=r(25);function f(e,t){o.call(this,e,t),i.call(this,t),this.srcSize=0,this.dstSize=0,this.src=new Buffer(0),this.dst=new Buffer(0)}n(f,i),a.assign(f.prototype,o.prototype,s),f.prototype.constructor=f,f.prototype._transform=function(e,t,r){try{var i;for(i=0;i=0&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},r(69),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,r(5))},function(e,t){},function(e,t,r){"use strict";var i=r(9).Buffer,n=r(71);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return i.alloc(0);if(1===this.length)return this.head.data;for(var t,r,n,a=i.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,n=s,t.copy(r,n),s+=o.data.length,o=o.next;return a},e}(),n&&n.inspect&&n.inspect.custom&&(e.exports.prototype[n.inspect.custom]=function(){var e=n.inspect({length:this.length});return this.constructor.name+" "+e})},function(e,t){},function(e,t){var r={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==r.call(e)}},function(e,t){t.read=function(e,t,r,i,n){var a,o,s=8*n-i-1,f=(1<>1,u=-7,c=r?n-1:0,h=r?-1:1,d=e[t+c];for(c+=h,a=d&(1<<-u)-1,d>>=-u,u+=s;u>0;a=256*a+e[t+c],c+=h,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=i;u>0;o=256*o+e[t+c],c+=h,u-=8);if(0===a)a=1-l;else{if(a===f)return o?NaN:1/0*(d?-1:1);o+=Math.pow(2,i),a-=l}return(d?-1:1)*o*Math.pow(2,a-i)},t.write=function(e,t,r,i,n,a){var o,s,f,l=8*a-n-1,u=(1<>1,h=23===n?Math.pow(2,-24)-Math.pow(2,-77):0,d=i?0:a-1,p=i?1:-1,b=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=u):(o=Math.floor(Math.log(t)/Math.LN2),t*(f=Math.pow(2,-o))<1&&(o--,f*=2),(t+=o+c>=1?h/f:h*Math.pow(2,1-c))*f>=2&&(o++,f/=2),o+c>=u?(s=0,o=u):o+c>=1?(s=(t*f-1)*Math.pow(2,n),o+=c):(s=t*Math.pow(2,c-1)*Math.pow(2,n),o=0));n>=8;e[r+d]=255&s,d+=p,s/=256,n-=8);for(o=o<0;e[r+d]=255&o,d+=p,o/=256,l-=8);e[r+d-p]|=128*b}},function(e,t,r){"use strict";t.byteLength=function(e){return 3*e.length/4-l(e)},t.toByteArray=function(e){var t,r,i,o,s,f=e.length;o=l(e),s=new a(3*f/4-o),r=o>0?f-4:f;var u=0;for(t=0;t>16&255,s[u++]=i>>8&255,s[u++]=255&i;2===o?(i=n[e.charCodeAt(t)]<<2|n[e.charCodeAt(t+1)]>>4,s[u++]=255&i):1===o&&(i=n[e.charCodeAt(t)]<<10|n[e.charCodeAt(t+1)]<<4|n[e.charCodeAt(t+2)]>>2,s[u++]=i>>8&255,s[u++]=255&i);return s},t.fromByteArray=function(e){for(var t,r=e.length,n=r%3,a="",o=[],s=0,f=r-n;sf?f:s+16383));1===n?(t=e[r-1],a+=i[t>>2],a+=i[t<<4&63],a+="=="):2===n&&(t=(e[r-2]<<8)+e[r-1],a+=i[t>>10],a+=i[t>>4&63],a+=i[t<<2&63],a+="=");return o.push(a),o.join("")};for(var i=[],n=[],a="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,f=o.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");return"="===e[t-2]?2:"="===e[t-1]?1:0}function u(e,t,r){for(var n,a,o=[],s=t;s>18&63]+i[a>>12&63]+i[a>>6&63]+i[63&a]);return o.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},function(e,t,r){"use strict";(function(e){ -/*! - * The buffer module from node.js, for the browser. - * - * @author Feross Aboukhadijeh - * @license MIT - */ -var i=r(76),n=r(75),a=r(74);function o(){return f.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(o()=o())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o().toString(16)+" bytes");return 0|e}function p(e,t){if(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 r=e.length;if(0===r)return 0;for(var i=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return F(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return N(e).length;default:if(i)return F(e).length;t=(""+t).toLowerCase(),i=!0}}function b(e,t,r){var i=e[t];e[t]=e[r],e[r]=i}function y(e,t,r,i,n){if(0===e.length)return-1;if("string"==typeof r?(i=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=n?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(n)return-1;r=e.length-1}else if(r<0){if(!n)return-1;r=0}if("string"==typeof t&&(t=f.from(t,i)),f.isBuffer(t))return 0===t.length?-1:w(e,t,r,i,n);if("number"==typeof t)return t&=255,f.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?n?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):w(e,[t],r,i,n);throw new TypeError("val must be string, number or Buffer")}function w(e,t,r,i,n){var a,o=1,s=e.length,f=t.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(e.length<2||t.length<2)return-1;o=2,s/=2,f/=2,r/=2}function l(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(n){var u=-1;for(a=r;as&&(r=s-f),a=r;a>=0;a--){for(var c=!0,h=0;hn&&(i=n):i=n;var a=t.length;if(a%2!=0)throw new TypeError("Invalid hex string");i>a/2&&(i=a/2);for(var o=0;o>8,n=r%256,a.push(n),a.push(i);return a}(t,e.length-r),e,r,i)}function A(e,t,r){return 0===t&&r===e.length?i.fromByteArray(e):i.fromByteArray(e.slice(t,r))}function E(e,t,r){r=Math.min(e.length,r);for(var i=[],n=t;n239?4:l>223?3:l>191?2:1;if(n+c<=r)switch(c){case 1:l<128&&(u=l);break;case 2:128==(192&(a=e[n+1]))&&(f=(31&l)<<6|63&a)>127&&(u=f);break;case 3:a=e[n+1],o=e[n+2],128==(192&a)&&128==(192&o)&&(f=(15&l)<<12|(63&a)<<6|63&o)>2047&&(f<55296||f>57343)&&(u=f);break;case 4:a=e[n+1],o=e[n+2],s=e[n+3],128==(192&a)&&128==(192&o)&&128==(192&s)&&(f=(15&l)<<18|(63&a)<<12|(63&o)<<6|63&s)>65535&&f<1114112&&(u=f)}null===u?(u=65533,c=1):u>65535&&(u-=65536,i.push(u>>>10&1023|55296),u=56320|1023&u),i.push(u),n+=c}return function(e){var t=e.length;if(t<=B)return String.fromCharCode.apply(String,e);var r="",i=0;for(;ithis.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return T(this,t,r);case"utf8":case"utf-8":return E(this,t,r);case"ascii":return R(this,t,r);case"latin1":case"binary":return x(this,t,r);case"base64":return A(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M(this,t,r);default:if(i)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),i=!0}}.apply(this,arguments)},f.prototype.equals=function(e){if(!f.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===f.compare(this,e)},f.prototype.inspect=function(){var e="",r=t.INSPECT_MAX_BYTES;return this.length>0&&(e=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(e+=" ... ")),""},f.prototype.compare=function(e,t,r,i,n){if(!f.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===i&&(i=0),void 0===n&&(n=this.length),t<0||r>e.length||i<0||n>this.length)throw new RangeError("out of range index");if(i>=n&&t>=r)return 0;if(i>=n)return-1;if(t>=r)return 1;if(t>>>=0,r>>>=0,i>>>=0,n>>>=0,this===e)return 0;for(var a=n-i,o=r-t,s=Math.min(a,o),l=this.slice(i,n),u=e.slice(t,r),c=0;cn)&&(r=n),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var a=!1;;)switch(i){case"hex":return g(this,e,t,r);case"utf8":case"utf-8":return v(this,e,t,r);case"ascii":return m(this,e,t,r);case"latin1":case"binary":return k(this,e,t,r);case"base64":return _(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),a=!0}},f.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var B=4096;function R(e,t,r){var i="";r=Math.min(e.length,r);for(var n=t;ni)&&(r=i);for(var n="",a=t;ar)throw new RangeError("Trying to access beyond buffer length")}function I(e,t,r,i,n,a){if(!f.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>n||te.length)throw new RangeError("Index out of range")}function P(e,t,r,i){t<0&&(t=65535+t+1);for(var n=0,a=Math.min(e.length-r,2);n>>8*(i?n:1-n)}function O(e,t,r,i){t<0&&(t=4294967295+t+1);for(var n=0,a=Math.min(e.length-r,4);n>>8*(i?n:3-n)&255}function L(e,t,r,i,n,a){if(r+i>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function z(e,t,r,i,a){return a||L(e,0,r,4),n.write(e,t,r,i,23,4),r+4}function C(e,t,r,i,a){return a||L(e,0,r,8),n.write(e,t,r,i,52,8),r+8}f.prototype.slice=function(e,t){var r,i=this.length;if(e=~~e,t=void 0===t?i:~~t,e<0?(e+=i)<0&&(e=0):e>i&&(e=i),t<0?(t+=i)<0&&(t=0):t>i&&(t=i),t0&&(n*=256);)i+=this[e+--t]*n;return i},f.prototype.readUInt8=function(e,t){return t||U(e,1,this.length),this[e]},f.prototype.readUInt16LE=function(e,t){return t||U(e,2,this.length),this[e]|this[e+1]<<8},f.prototype.readUInt16BE=function(e,t){return t||U(e,2,this.length),this[e]<<8|this[e+1]},f.prototype.readUInt32LE=function(e,t){return t||U(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||U(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},f.prototype.readIntLE=function(e,t,r){e|=0,t|=0,r||U(e,t,this.length);for(var i=this[e],n=1,a=0;++a=(n*=128)&&(i-=Math.pow(2,8*t)),i},f.prototype.readIntBE=function(e,t,r){e|=0,t|=0,r||U(e,t,this.length);for(var i=t,n=1,a=this[e+--i];i>0&&(n*=256);)a+=this[e+--i]*n;return a>=(n*=128)&&(a-=Math.pow(2,8*t)),a},f.prototype.readInt8=function(e,t){return t||U(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},f.prototype.readInt16LE=function(e,t){t||U(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},f.prototype.readInt16BE=function(e,t){t||U(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},f.prototype.readInt32LE=function(e,t){return t||U(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||U(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||U(e,4,this.length),n.read(this,e,!0,23,4)},f.prototype.readFloatBE=function(e,t){return t||U(e,4,this.length),n.read(this,e,!1,23,4)},f.prototype.readDoubleLE=function(e,t){return t||U(e,8,this.length),n.read(this,e,!0,52,8)},f.prototype.readDoubleBE=function(e,t){return t||U(e,8,this.length),n.read(this,e,!1,52,8)},f.prototype.writeUIntLE=function(e,t,r,i){(e=+e,t|=0,r|=0,i)||I(this,e,t,r,Math.pow(2,8*r)-1,0);var n=1,a=0;for(this[t]=255&e;++a=0&&(a*=256);)this[t+n]=e/a&255;return t+r},f.prototype.writeUInt8=function(e,t,r){return e=+e,t|=0,r||I(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,r){return e=+e,t|=0,r||I(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,r){return e=+e,t|=0,r||I(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,r){return e=+e,t|=0,r||I(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):O(this,e,t,!0),t+4},f.prototype.writeUInt32BE=function(e,t,r){return e=+e,t|=0,r||I(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):O(this,e,t,!1),t+4},f.prototype.writeIntLE=function(e,t,r,i){if(e=+e,t|=0,!i){var n=Math.pow(2,8*r-1);I(this,e,t,r,n-1,-n)}var a=0,o=1,s=0;for(this[t]=255&e;++a>0)-s&255;return t+r},f.prototype.writeIntBE=function(e,t,r,i){if(e=+e,t|=0,!i){var n=Math.pow(2,8*r-1);I(this,e,t,r,n-1,-n)}var a=r-1,o=1,s=0;for(this[t+a]=255&e;--a>=0&&(o*=256);)e<0&&0===s&&0!==this[t+a+1]&&(s=1),this[t+a]=(e/o>>0)-s&255;return t+r},f.prototype.writeInt8=function(e,t,r){return e=+e,t|=0,r||I(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,r){return e=+e,t|=0,r||I(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,r){return e=+e,t|=0,r||I(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,r){return e=+e,t|=0,r||I(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):O(this,e,t,!0),t+4},f.prototype.writeInt32BE=function(e,t,r){return e=+e,t|=0,r||I(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):O(this,e,t,!1),t+4},f.prototype.writeFloatLE=function(e,t,r){return z(this,e,t,!0,r)},f.prototype.writeFloatBE=function(e,t,r){return z(this,e,t,!1,r)},f.prototype.writeDoubleLE=function(e,t,r){return C(this,e,t,!0,r)},f.prototype.writeDoubleBE=function(e,t,r){return C(this,e,t,!1,r)},f.prototype.copy=function(e,t,r,i){if(r||(r=0),i||0===i||(i=this.length),t>=e.length&&(t=e.length),t||(t=0),i>0&&i=this.length)throw new RangeError("sourceStart out of bounds");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),e.length-t=0;--n)e[n+t]=this[n+r];else if(a<1e3||!f.TYPED_ARRAY_SUPPORT)for(n=0;n>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(a=t;a55295&&r<57344){if(!n){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===i){(t-=3)>-1&&a.push(239,191,189);continue}n=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),n=r;continue}r=65536+(n-55296<<10|r-56320)}else n&&(t-=3)>-1&&a.push(239,191,189);if(n=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function N(e){return i.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(D,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function Z(e,t,r,i){for(var n=0;n=t.length||n>=e.length);++n)t[n+r]=e[n];return n}}).call(this,r(5))},function(e,t){var r={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==r.call(e)}},function(e,t,r){(function(e){function r(e,t){for(var r=0,i=e.length-1;i>=0;i--){var n=e[i];"."===n?e.splice(i,1):".."===n?(e.splice(i,1),r++):r&&(e.splice(i,1),r--)}if(t)for(;r--;r)e.unshift("..");return e}var i=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/,n=function(e){return i.exec(e).slice(1)};function a(e,t){if(e.filter)return e.filter(t);for(var r=[],i=0;i=-1&&!i;n--){var o=n>=0?arguments[n]:e.cwd();if("string"!=typeof o)throw new TypeError("Arguments to path.resolve must be strings");o&&(t=o+"/"+t,i="/"===o.charAt(0))}return t=r(a(t.split("/"),function(e){return!!e}),!i).join("/"),(i?"/":"")+t||"."},t.normalize=function(e){var i=t.isAbsolute(e),n="/"===o(e,-1);return(e=r(a(e.split("/"),function(e){return!!e}),!i).join("/"))||i||(e="."),e&&n&&(e+="/"),(i?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(a(e,function(e,t){if("string"!=typeof e)throw new TypeError("Arguments to path.join must be strings");return e}).join("/"))},t.relative=function(e,r){function i(e){for(var t=0;t=0&&""===e[r];r--);return t>r?[]:e.slice(t,r-t+1)}e=t.resolve(e).substr(1),r=t.resolve(r).substr(1);for(var n=i(e.split("/")),a=i(r.split("/")),o=Math.min(n.length,a.length),s=o,f=0;f>>1^3988292384:a>>>1;n[e]=a>>>0}t.crc32=function(e,t){const r=i.toBytes(e),a=n;let o=null==t?4294967295:~t>>>0;for(let e=0,t=r.length;e>>8^a[r[e]^255&o];return~o>>>0}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=r(0);t.adler32=function(e){let t,r=i.toBytes(e),n=1,a=0,o=0,s=r.length;for(;s>0;){s-=t=s>5550?5550:s;do{a+=n+=r[o++]}while(--t);n%=65521,a%=65521}return(a<<16|n)>>>0}},function(e,t,r){"use strict";var i=this&&this.__awaiter||function(e,t,r,i){return new(r||(r=Promise))(function(n,a){function o(e){try{f(i.next(e))}catch(e){a(e)}}function s(e){try{f(i.throw(e))}catch(e){a(e)}}function f(e){e.done?n(e.value):new r(function(t){t(e.value)}).then(o,s)}f((i=i.apply(e,t||[])).next())})};Object.defineProperty(t,"__esModule",{value:!0});const n=r(36);function a(e){return Array.prototype.slice.call(e)}function o(e){switch(Object.prototype.toString.call(e)){case"[object String]":return f(e);case"[object Array]":case"[object ArrayBuffer]":return new Uint8Array(e);case"[object Uint8Array]":return e;case"[object Int8Array]":case"[object Uint8ClampedArray]":case"[object CanvasPixelArray]":const t=e;return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);default:throw new Error("jz.utils.toBytes: not supported type.")}}function s(e,t,r="UTF-8"){var i;return i=n.ENV_IS_WORKER?i=>{var n=new FileReaderSync;switch(e){case"ArrayBuffer":i(n.readAsArrayBuffer(t));break;case"Text":i(n.readAsText(t,r));break;case"DataURL":i(n.readAsDataURL(t))}}:(i,n)=>{var a=new FileReader;switch(a.onload=(()=>i(a.result)),a.onerror=(e=>n(e)),e){case"ArrayBuffer":a.readAsArrayBuffer(t);break;case"Text":a.readAsText(t,r);break;case"DataURL":a.readAsDataURL(t)}},new Promise(i)}function f(e){let t,r=e.length,i=-1,n=32,a=new Uint8Array(n);for(let o=0;o>>6,a[++i]=128|63&r):r<=65535?(a[++i]=224|r>>>12,a[++i]=128|r>>>6&63,a[++i]=128|63&r):(a[++i]=240|r>>>18,a[++i]=128|r>>>12&63,a[++i]=128|r>>>6&63,a[++i]=128|63&r),n-i<=4&&(t=a,n*=2,(a=new Uint8Array(n)).set(t))}return a.subarray(0,++i)}t.toArray=a,t.toBytes=o,t.readFileAs=s,t.readFileAsText=((e,t)=>s("Text",e,t)),t.readFileAsArrayBuffer=(e=>s("ArrayBuffer",e)),t.readFileAsDataURL=(e=>s("DataURL",e)),t.stringToBytes=f,t.bytesToString=function(e,r="UTF-8"){return t.readFileAsText(new Blob([o(e)]),r)},t.bytesToStringSync=function(e,t="UTF-8"){if(!n.ENV_IS_WORKER)throw new Error("bytesToStringSync is available in worker.");return(new FileReaderSync).readAsText(new Blob([o(e)]),t)},t.detectEncoding=function(e){let t=o(e);for(let e=0,r=t.length;ei(this,void 0,void 0,function*(){const t=yield fetch(e);return new Uint8Array(yield t.arrayBuffer())})))})},t.concatBytes=function(e){let t,r,i,n=0,s=0,f=(Array.isArray(e)?e:a(arguments)).map(o);for(r=0,i=f.length;r - * @license MIT - */ -const i=r(0);t.common=i;const n=r(1);t.core=n;const a=r(54);t.zlib=a;const o=r(51);t.gz=o;const s=r(23);t.zip=s;const f=r(40);t.stream=f},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const i=r(86);window.jz=window.jsziptools=i}]); \ No newline at end of file diff --git a/package.json b/package.json index 5bbb1aa..dffff24 100644 --- a/package.json +++ b/package.json @@ -1,9 +1,9 @@ { "name": "jsziptools", - "version": "3.0.0-rc2", + "version": "3.0.0-rc3", "description": "It's a utility of zlib, gzip and zip format binary data.", - "main": "./dist-npm/index.js", - "types": "./dist-npm/index.d.ts", + "main": "./jsziptools.min.js", + "types": "./index.d.ts", "directories": { "example": "examples", "test": "test" @@ -11,10 +11,9 @@ "scripts": { "test": "testem", "build:browser": "webpack --mode production", - "build:npm": "mkdir -p dist-npm && tsc -d --outDir dist-npm", + "build:npm": "tsc -d --outDir dist-release", "build:test": "webpack --mode production --config webpack.config.test.js", - "release": "npm run build:test && npm test -- ci && npm run build:browser && npm run build:npm", - "prepublish": "npm run release" + "release": "npm run build:test && npm test -- ci && npm run build:browser && npm run build:npm" }, "repository": { "type": "git", diff --git a/release.sh b/release.sh new file mode 100755 index 0000000..35a5da2 --- /dev/null +++ b/release.sh @@ -0,0 +1,9 @@ +#!/bin/sh + +rm -rf dist-release +npm run release +cp package.json dist-release/package.json +cp README.md dist-release/README.md +cp LICENSE dist-release/LICENSE +cd dist-release +npm publish diff --git a/webpack.config.js b/webpack.config.js index f4dc399..81c1a64 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -1,9 +1,11 @@ const LicenseInfoWebpackPlugin = require('license-info-webpack-plugin').default; const UglifyJsPlugin = require('uglifyjs-webpack-plugin'); +const path = require('path'); module.exports = { entry: './src/browser.ts', output: { + path: path.resolve(__dirname, 'dist-release'), filename: 'jsziptools.min.js', }, module: {