From 570e604be024a0df9d85c5f46f10487c7e57a076 Mon Sep 17 00:00:00 2001 From: Ingvar Stepanyan Date: Tue, 25 Feb 2020 18:35:17 +0000 Subject: [PATCH] optipng: switch to bundled zlib and libpng Benefits: - newer versions of the libraries - zlib: 1.2.8 -> 1.2.11 - libpng: 1.6.18beta04 -> 1.6.34 - much fewer dependencies to install (as libs are already in optipng archive and we don't need napa) - much smaller build thanks to customised versions of zlib and libpng containing only APIs necessary for optipng itself: 238950 -> 177359 bytes - much faster build thanks to preconfigured libpng and stripped APIs: 2m15s -> 40s - much simpler build script: 77 -> 46 lines --- codecs/optipng/build.sh | 35 +- codecs/optipng/optipng.js | 2 +- codecs/optipng/optipng.wasm | Bin 238950 -> 177359 bytes codecs/optipng/package-lock.json | 918 +------------------------------ codecs/optipng/package.json | 9 +- 5 files changed, 6 insertions(+), 958 deletions(-) diff --git a/codecs/optipng/build.sh b/codecs/optipng/build.sh index d66711ab..5f4c3927 100755 --- a/codecs/optipng/build.sh +++ b/codecs/optipng/build.sh @@ -4,46 +4,13 @@ set -e export OPTIMIZE="-Os" export PREFIX="/src/build" -export CFLAGS="${OPTIMIZE} -I${PREFIX}/include/" -export CPPFLAGS="${OPTIMIZE} -I${PREFIX}/include/" -export LDFLAGS="${OPTIMIZE} -L${PREFIX}/lib/" - -apt-get update -apt-get install -qqy autoconf libtool - -echo "=============================================" -echo "Compiling zlib" -echo "=============================================" -test -n "$SKIP_ZLIB" || ( - cd node_modules/zlib - emconfigure ./configure --prefix=${PREFIX}/ - emmake make - emmake make install -) -echo "=============================================" -echo "Compiling zlib done" -echo "=============================================" - -echo "=============================================" -echo "Compiling libpng" -echo "=============================================" -test -n "$SKIP_LIBPNG" || ( - cd node_modules/libpng - autoreconf -i - emconfigure ./configure --with-zlib-prefix=${PREFIX}/ --prefix=${PREFIX}/ - emmake make - emmake make install -) -echo "=============================================" -echo "Compiling libpng done" -echo "=============================================" echo "=============================================" echo "Compiling optipng" echo "=============================================" ( cd node_modules/optipng - emconfigure ./configure --prefix=${PREFIX} --with-system-libs + CFLAGS="${OPTIMIZE} -Isrc/zlib" emconfigure ./configure --prefix=${PREFIX} emmake make emmake make install mkdir -p ${PREFIX}/lib diff --git a/codecs/optipng/optipng.js b/codecs/optipng/optipng.js index 714a10e8..cd6101bc 100644 --- a/codecs/optipng/optipng.js +++ b/codecs/optipng/optipng.js @@ -6,7 +6,7 @@ var optipng = (function() { function(optipng) { optipng = optipng || {}; -var Module=typeof optipng!=="undefined"?optipng:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){var data;if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){quit(status)}}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];function dynamicAlloc(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;if(end>_emscripten_get_heap_size()){abort()}HEAP32[DYNAMICTOP_PTR>>2]=end;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}var tempRet0=0;var setTempRet0=function(value){tempRet0=value};var getTempRet0=function(){return tempRet0};var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime;if(Module["noExitRuntime"])noExitRuntime=Module["noExitRuntime"];if(typeof WebAssembly!=="object"){err("no native wasm support detected")}function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":HEAP8[ptr>>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var wasmMemory;var wasmTable=new WebAssembly.Table({"initial":144,"maximum":144+0,"element":"anyfunc"});var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}var ALLOC_NONE=3;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,stackAlloc,dynamicAlloc][allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i=endIdx))++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function UTF16ToString(ptr){var endPtr=ptr;var idx=endPtr>>1;while(HEAP16[idx])++idx;endPtr=idx<<1;if(endPtr-ptr>32&&UTF16Decoder){return UTF16Decoder.decode(HEAPU8.subarray(ptr,endPtr))}else{var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)return str;++i;str+=String.fromCharCode(codeUnit)}}}function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}function lengthBytesUTF16(str){return str.length*2}function UTF32ToString(ptr){var i=0;var str="";while(1){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)return str;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}}function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}function lengthBytesUTF32(str){var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len}function allocateUTF8OnStack(str){var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8Array(str,HEAP8,ret,size);return ret}var WASM_PAGE_SIZE=65536;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var DYNAMIC_BASE=5354832,DYNAMICTOP_PTR=111792;var INITIAL_TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_TOTAL_MEMORY/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_TOTAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();TTY.init();callRuntimeCallbacks(__ATINIT__)}function preMain(){FS.ignorePermissions=false;callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what+="";out(what);err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";throw new WebAssembly.RuntimeError(what)}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}var wasmBinaryFile="optipng.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(wasmBinaryFile)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary()})}return new Promise(function(resolve,reject){resolve(getBinary())})}function createWasm(){var info={"a":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiatedSource(output){receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&typeof fetch==="function"){fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}var tempDouble;var tempI64;__ATINIT__.push({func:function(){___wasm_call_ctors()}});function demangle(func){return func}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+UTF8ToString(condition)+", at: "+[filename?UTF8ToString(filename):"unknown filename",line,func?UTF8ToString(func):"unknown function"])}function ___lock(){}var PATH={splitPath:function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},extname:function(path){return PATH.splitPath(path)[3]},join:function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))},join2:function(l,r){return PATH.normalize(l+"/"+r)}};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}var PATH_FS={resolve:function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(function(p){return!!p}),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:function(from,to){from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()},put_char:function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};var MEMFS={ops_table:null,mount:function(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode:function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node},getFileDataAsRegularArray:function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return},resizeFileStorage:function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(newSize);if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}if(!node.contents)node.contents=[];if(node.contents.length>newSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length8){throw new FS.ErrnoError(32)}var parts=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath:function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}},hashName:function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length},hashAddNode:function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode:function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode:function(parent,name){var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode:function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev};FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:function(){return(this.mode&readMode)===readMode},set:function(val){val?this.mode|=readMode:this.mode&=~readMode}},write:{get:function(){return(this.mode&writeMode)===writeMode},set:function(val){val?this.mode|=writeMode:this.mode&=~writeMode}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:function(node){FS.hashRemoveNode(node)},isRoot:function(node){return node===node.parent},isMountpoint:function(node){return!!node.mounted},isFile:function(mode){return(mode&61440)===32768},isDir:function(mode){return(mode&61440)===16384},isLink:function(mode){return(mode&61440)===40960},isChrdev:function(mode){return(mode&61440)===8192},isBlkdev:function(mode){return(mode&61440)===24576},isFIFO:function(mode){return(mode&61440)===4096},isSocket:function(mode){return(mode&49152)===49152},flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags},flagsToPermissionString:function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions:function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return 2}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return 2}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return 2}return 0},mayLookup:function(dir){var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate:function(dir,name){try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete:function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var errCode=FS.nodePermissions(dir,"wx");if(errCode){return errCode}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen:function(node,flags){if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd:function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStream:function(fd){return FS.streams[fd]},createStream:function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=function(){};FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:function(){return this.node},set:function(val){this.node=val}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream:function(fd){FS.streams[fd]=null},chrdev_stream_ops:{open:function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}},llseek:function(){throw new FS.ErrnoError(70)}},major:function(dev){return dev>>8},minor:function(dev){return dev&255},makedev:function(ma,mi){return ma<<8|mi},registerDevice:function(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:function(dev){return FS.devices[dev]},getMounts:function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts},syncfs:function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount:function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount:function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup:function(parent,name){return parent.node_ops.lookup(parent,name)},mknod:function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(28)}var errCode=FS.mayCreate(parent,name);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create:function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir:function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree:function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}};var lazyArray=this;lazyArray.setDataGetter(function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._length}},chunkSize:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(29)}return fn.apply(null,arguments)}});stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(29)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAP32[buf+48>>2]=4096;HEAP32[buf+52>>2]=stat.blocks;HEAP32[buf+56>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+76>>2]=0;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+80>>2]=tempI64[0],HEAP32[buf+84>>2]=tempI64[1];return 0},doMsync:function(addr,stream,len,flags,offset){var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},doMkdir:function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0},doMknod:function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-28}FS.mknod(path,mode,dev);return 0},doReadlink:function(path,buf,bufsize){if(bufsize<=0)return-28;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len},doAccess:function(path,amode){if(amode&~7){return-28}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;if(!node){return-44}var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-2}return 0},doDup:function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd},doReadv:function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret},varargs:0,get:function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(){var ret=UTF8ToString(SYSCALLS.get());return ret},getStreamFromFD:function(fd){if(fd===undefined)fd=SYSCALLS.get();var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);return stream},get64:function(){var low=SYSCALLS.get(),high=SYSCALLS.get();return low},getZero:function(){SYSCALLS.get()}};function ___syscall10(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.unlink(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall15(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),mode=SYSCALLS.get();FS.chmod(path,mode);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall212(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),owner=SYSCALLS.get(),group=SYSCALLS.get();FS.chown(path,owner,group);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-28}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 13:case 14:return 0;case 16:case 8:return-28;case 9:___setErrNo(28);return-1;default:{return-28}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall320(which,varargs){SYSCALLS.varargs=varargs;try{var dirfd=SYSCALLS.get(),path=SYSCALLS.getStr(),times=SYSCALLS.get(),flags=SYSCALLS.get();path=SYSCALLS.calculateAt(dirfd,path);var seconds=HEAP32[times>>2];var nanoseconds=HEAP32[times+4>>2];var atime=seconds*1e3+nanoseconds/(1e3*1e3);times+=8;seconds=HEAP32[times>>2];nanoseconds=HEAP32[times+4>>2];var mtime=seconds*1e3+nanoseconds/(1e3*1e3);FS.utime(path,atime,mtime);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall33(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),amode=SYSCALLS.get();return SYSCALLS.doAccess(path,amode)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall38(which,varargs){SYSCALLS.varargs=varargs;try{var old_path=SYSCALLS.getStr(),new_path=SYSCALLS.getStr();FS.rename(old_path,new_path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall39(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),mode=SYSCALLS.get();return SYSCALLS.doMkdir(path,mode)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall40(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.rmdir(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-59;return 0}case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-59;return 0}case 21519:{if(!stream.tty)return-59;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;return 0}case 21524:{if(!stream.tty)return-59;return 0}default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}var structRegistrations={};function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n")(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,function(message){this.name=errorName;this.message=message;var stack=new Error(message).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}});errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}};return errorClass}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach(function(type){typeDependencies[type]=dependentTypes});function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])},destructorFunction:null})}var emval_free_list=[];var emval_handle_array=[{},{value:undefined},{value:null},{value:true},{value:false}];function __emval_decref(handle){if(handle>4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])};case 3:return function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])};default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(value){return value},"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value},"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function new_(constructor,argumentList){if(!(constructor instanceof Function)){throw new TypeError("new_ called with constructor type "+typeof constructor+" which is not a function")}var dummy=createNamedFunction(constructor.name||"unknownFunctionName",function(){});dummy.prototype=constructor.prototype;var obj=new dummy;var r=constructor.apply(obj,argumentList);return r instanceof Object?r:obj}function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc){var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!")}var isClassMethodFunc=argTypes[1]!==null&&classType!==null;var needsDestructorStack=false;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i>2)+i])}return array}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=function(value){return value};if(minRange===0){var bitshift=32-8*size;fromWireType=function(value){return value<>>bitshift}}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0},"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);var stdStringIsUTF8=name==="std::string";registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var str;if(stdStringIsUTF8){var endChar=HEAPU8[value+4+length];var endCharSwap=0;if(endChar!=0){endCharSwap=endChar;HEAPU8[value+4+length]=0}var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i;if(HEAPU8[currentBytePtr]==0){var stringSegment=UTF8ToString(decodeStartPtr);if(str===undefined)str=stringSegment;else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+1}}if(endCharSwap!=0)HEAPU8[value+4+length]=endCharSwap}else{var a=new Array(length);for(var i=0;i>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr+4,length+1)}else{if(valueIsOfTypeString){for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}}else{for(var i=0;i>2];var HEAP=getHeap();var str;var endChar=HEAP[value+4+length*charSize>>shift];var endCharSwap=0;if(endChar!=0){endCharSwap=endChar;HEAP[value+4+length*charSize>>shift]=0}var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i*charSize;if(HEAP[currentBytePtr>>shift]==0){var stringSegment=decodeString(decodeStartPtr);if(str===undefined)str=stringSegment;else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+charSize}}if(endCharSwap!=0)HEAP[value+4+length*charSize>>shift]=endCharSwap;_free(value);return str},"toWireType":function(destructors,value){if(!(typeof value==="string")){throwBindingError("Cannot pass non-string to C++ string type "+name)}var length=lengthBytesUTF(value);var ptr=_malloc(4+length+charSize);HEAPU32[ptr>>2]=length>>shift;encodeString(value,ptr+4,length+charSize);if(destructors!==null){destructors.push(_free,ptr)}return ptr},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr)}})}function __embind_register_value_object(rawType,name,constructorSignature,rawConstructor,destructorSignature,rawDestructor){structRegistrations[rawType]={name:readLatin1String(name),rawConstructor:embind__requireFunction(constructorSignature,rawConstructor),rawDestructor:embind__requireFunction(destructorSignature,rawDestructor),fields:[]}}function __embind_register_value_object_field(structType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext){structRegistrations[structType].fields.push({fieldName:readLatin1String(fieldName),getterReturnType:getterReturnType,getter:embind__requireFunction(getterSignature,getter),getterContext:getterContext,setterArgumentType:setterArgumentType,setter:embind__requireFunction(setterSignature,setter),setterContext:setterContext})}function __embind_register_void(rawType,name){name=readLatin1String(name);registerType(rawType,{isVoid:true,name:name,"argPackAdvance":0,"fromWireType":function(){return undefined},"toWireType":function(destructors,o){return undefined}})}function __emval_incref(handle){if(handle>4){emval_handle_array[handle].refcount+=1}}function requireRegisteredType(rawType,humanName){var impl=registeredTypes[rawType];if(undefined===impl){throwBindingError(humanName+" has unknown type "+getTypeName(rawType))}return impl}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function _abort(){abort()}function _emscripten_get_heap_size(){return HEAPU8.length}var setjmpId=0;function _saveSetjmp(env,label,table,size){env=env|0;label=label|0;table=table|0;size=size|0;var i=0;setjmpId=setjmpId+1|0;HEAP32[env>>2]=setjmpId;while((i|0)<(size|0)){if((HEAP32[table+(i<<3)>>2]|0)==0){HEAP32[table+(i<<3)>>2]=setjmpId;HEAP32[table+((i<<3)+4)>>2]=label;HEAP32[table+((i<<3)+8)>>2]=0;setTempRet0(size|0);return table|0}i=i+1|0}size=size*2|0;table=_realloc(table|0,8*(size+1|0)|0)|0;table=_saveSetjmp(env|0,label|0,table|0,size|0)|0;setTempRet0(size|0);return table|0}function _testSetjmp(id,table,size){id=id|0;table=table|0;size=size|0;var i=0,curr=0;while((i|0)<(size|0)){curr=HEAP32[table+(i<<3)>>2]|0;if((curr|0)==0)break;if((curr|0)==(id|0)){return HEAP32[table+((i<<3)+4)>>2]|0}i=i+1|0}return 0}function _longjmp(env,value){_setThrew(env,value||1);throw"longjmp"}function _emscripten_longjmp(env,value){_longjmp(env,value)}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest)}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=_emscripten_get_heap_size();var PAGE_MULTIPLE=65536;var maxHeapSize=2147483648-PAGE_MULTIPLE;if(requestedSize>maxHeapSize){return false}var minHeapSize=16777216;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(minHeapSize,requestedSize,overGrownHeapSize),PAGE_MULTIPLE));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}function _exit(status){exit(status)}function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function _fd_fdstat_get(fd,pbuf){try{var stream=SYSCALLS.getStreamFromFD(fd);var type=stream.tty?2:FS.isDir(stream.mode)?3:FS.isLink(stream.mode)?7:4;HEAP8[pbuf>>0]=type;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function _fd_read(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=SYSCALLS.doReadv(stream,iov,iovcnt);HEAP32[pnum>>2]=num;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){try{var stream=SYSCALLS.getStreamFromFD(fd);var HIGH_OFFSET=4294967296;var offset=offset_high*HIGH_OFFSET+(offset_low>>>0);var DOUBLE_LIMIT=9007199254740992;if(offset<=-DOUBLE_LIMIT||offset>=DOUBLE_LIMIT){return-61}FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[newOffset>>2]=tempI64[0],HEAP32[newOffset+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=SYSCALLS.doWritev(stream,iov,iovcnt);HEAP32[pnum>>2]=num;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function _getTempRet0(){return getTempRet0()|0}function _setTempRet0($i){setTempRet0($i|0)}FS.staticInit();InternalError=Module["InternalError"]=extendError(Error,"InternalError");embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");init_emval();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var asmLibraryArg={"e":___assert_fail,"T":___lock,"y":___syscall10,"$":___syscall15,"C":___syscall195,"_":___syscall197,"P":___syscall212,"B":___syscall221,"Y":___syscall320,"Q":___syscall33,"R":___syscall38,"Z":___syscall39,"S":___syscall40,"W":___syscall5,"V":___syscall54,"u":___unlock,"X":__embind_finalize_value_object,"M":__embind_register_bool,"L":__embind_register_emval,"w":__embind_register_float,"t":__embind_register_function,"k":__embind_register_integer,"i":__embind_register_memory_view,"x":__embind_register_std_string,"s":__embind_register_std_wstring,"ca":__embind_register_value_object,"aa":__embind_register_value_object_field,"N":__embind_register_void,"D":__emval_decref,"K":__emval_incref,"da":__emval_take_value,"p":_abort,"f":_emscripten_longjmp,"I":_emscripten_memcpy_big,"J":_emscripten_resize_heap,"q":_exit,"z":_fd_close,"O":_fd_fdstat_get,"U":_fd_read,"E":_fd_seek,"A":_fd_write,"a":_getTempRet0,"l":invoke_ii,"h":invoke_iii,"r":invoke_iiii,"n":invoke_iiiii,"H":invoke_iiji,"v":invoke_v,"g":invoke_vi,"d":invoke_vii,"o":invoke_viii,"m":invoke_viiii,"ba":invoke_viiiii,"F":invoke_vj,"G":invoke_vjji,"memory":wasmMemory,"j":_saveSetjmp,"b":_setTempRet0,"table":wasmTable,"c":_testSetjmp};var asm=createWasm();Module["asm"]=asm;var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["ea"]).apply(null,arguments)};var _main=Module["_main"]=function(){return(_main=Module["_main"]=Module["asm"]["fa"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["ga"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["ha"]).apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){return(___errno_location=Module["___errno_location"]=Module["asm"]["ia"]).apply(null,arguments)};var _realloc=Module["_realloc"]=function(){return(_realloc=Module["_realloc"]=Module["asm"]["ja"]).apply(null,arguments)};var _setThrew=Module["_setThrew"]=function(){return(_setThrew=Module["_setThrew"]=Module["asm"]["ka"]).apply(null,arguments)};var ___getTypeName=Module["___getTypeName"]=function(){return(___getTypeName=Module["___getTypeName"]=Module["asm"]["la"]).apply(null,arguments)};var ___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=function(){return(___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=Module["asm"]["ma"]).apply(null,arguments)};var dynCall_v=Module["dynCall_v"]=function(){return(dynCall_v=Module["dynCall_v"]=Module["asm"]["na"]).apply(null,arguments)};var dynCall_vi=Module["dynCall_vi"]=function(){return(dynCall_vi=Module["dynCall_vi"]=Module["asm"]["oa"]).apply(null,arguments)};var dynCall_vii=Module["dynCall_vii"]=function(){return(dynCall_vii=Module["dynCall_vii"]=Module["asm"]["pa"]).apply(null,arguments)};var dynCall_viii=Module["dynCall_viii"]=function(){return(dynCall_viii=Module["dynCall_viii"]=Module["asm"]["qa"]).apply(null,arguments)};var dynCall_viiii=Module["dynCall_viiii"]=function(){return(dynCall_viiii=Module["dynCall_viiii"]=Module["asm"]["ra"]).apply(null,arguments)};var dynCall_viiiii=Module["dynCall_viiiii"]=function(){return(dynCall_viiiii=Module["dynCall_viiiii"]=Module["asm"]["sa"]).apply(null,arguments)};var dynCall_vj=Module["dynCall_vj"]=function(){return(dynCall_vj=Module["dynCall_vj"]=Module["asm"]["ta"]).apply(null,arguments)};var dynCall_vjji=Module["dynCall_vjji"]=function(){return(dynCall_vjji=Module["dynCall_vjji"]=Module["asm"]["ua"]).apply(null,arguments)};var dynCall_ii=Module["dynCall_ii"]=function(){return(dynCall_ii=Module["dynCall_ii"]=Module["asm"]["va"]).apply(null,arguments)};var dynCall_iii=Module["dynCall_iii"]=function(){return(dynCall_iii=Module["dynCall_iii"]=Module["asm"]["wa"]).apply(null,arguments)};var dynCall_iiii=Module["dynCall_iiii"]=function(){return(dynCall_iiii=Module["dynCall_iiii"]=Module["asm"]["xa"]).apply(null,arguments)};var dynCall_iiiii=Module["dynCall_iiiii"]=function(){return(dynCall_iiiii=Module["dynCall_iiiii"]=Module["asm"]["ya"]).apply(null,arguments)};var dynCall_iiji=Module["dynCall_iiji"]=function(){return(dynCall_iiji=Module["dynCall_iiji"]=Module["asm"]["za"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["Aa"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["Ba"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["Ca"]).apply(null,arguments)};var dynCall_i=Module["dynCall_i"]=function(){return(dynCall_i=Module["dynCall_i"]=Module["asm"]["Da"]).apply(null,arguments)};var dynCall_jiji=Module["dynCall_jiji"]=function(){return(dynCall_jiji=Module["dynCall_jiji"]=Module["asm"]["Ea"]).apply(null,arguments)};var dynCall_iidiiii=Module["dynCall_iidiiii"]=function(){return(dynCall_iidiiii=Module["dynCall_iidiiii"]=Module["asm"]["Fa"]).apply(null,arguments)};var dynCall_viiiiii=Module["dynCall_viiiiii"]=function(){return(dynCall_viiiiii=Module["dynCall_viiiiii"]=Module["asm"]["Ga"]).apply(null,arguments)};function invoke_vi(index,a1){var sp=stackSave();try{dynCall_vi(index,a1)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_vii(index,a1,a2){var sp=stackSave();try{dynCall_vii(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_v(index){var sp=stackSave();try{dynCall_v(index)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_iii(index,a1,a2){var sp=stackSave();try{return dynCall_iii(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{dynCall_viiiii(index,a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_ii(index,a1){var sp=stackSave();try{return dynCall_ii(index,a1)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return dynCall_iiiii(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_iiii(index,a1,a2,a3){var sp=stackSave();try{return dynCall_iiii(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_viiii(index,a1,a2,a3,a4){var sp=stackSave();try{dynCall_viiii(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_viii(index,a1,a2,a3){var sp=stackSave();try{dynCall_viii(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_iiji(index,a1,a2,a3,a4){var sp=stackSave();try{return dynCall_iiji(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_vjji(index,a1,a2,a3,a4,a5){var sp=stackSave();try{dynCall_vjji(index,a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_vj(index,a1,a2){var sp=stackSave();try{dynCall_vj(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}Module["asm"]=asm;var calledRun;Module["then"]=function(func){if(calledRun){func(Module)}else{var old=Module["onRuntimeInitialized"];Module["onRuntimeInitialized"]=function(){if(old)old();func(Module)}}return Module};function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}var calledMain=false;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function callMain(args){var entryFunction=Module["_main"];args=args||[];var argc=args.length+1;var argv=stackAlloc((argc+1)*4);HEAP32[argv>>2]=allocateUTF8OnStack(thisProgram);for(var i=1;i>2)+i]=allocateUTF8OnStack(args[i-1])}HEAP32[(argv>>2)+argc]=0;try{var ret=entryFunction(argc,argv);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="unwind"){noExitRuntime=true;return}else{var toLog=e;if(e&&typeof e==="object"&&e.stack){toLog=[e,e.stack]}err("exception thrown: "+toLog);quit_(1,e)}}finally{calledMain=true}}function run(args){args=args||arguments_;if(runDependencies>0){return}preRun();if(runDependencies>0)return;function doRun(){if(calledRun)return;calledRun=true;if(ABORT)return;initRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(shouldRunNow)callMain(args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;function exit(status,implicit){if(implicit&&noExitRuntime&&status===0){return}if(noExitRuntime){}else{ABORT=true;EXITSTATUS=status;exitRuntime();if(Module["onExit"])Module["onExit"](status)}quit_(status,new ExitStatus(status))}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"])shouldRunNow=false;noExitRuntime=true;run(); +var Module=typeof optipng!=="undefined"?optipng:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){return read(f)}}readBinary=function readBinary(f){var data;if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){quit(status)}}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];function dynamicAlloc(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;if(end>_emscripten_get_heap_size()){abort()}HEAP32[DYNAMICTOP_PTR>>2]=end;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}var tempRet0=0;var setTempRet0=function(value){tempRet0=value};var getTempRet0=function(){return tempRet0};var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime;if(Module["noExitRuntime"])noExitRuntime=Module["noExitRuntime"];if(typeof WebAssembly!=="object"){err("no native wasm support detected")}function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":HEAP8[ptr>>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var wasmMemory;var wasmTable=new WebAssembly.Table({"initial":140,"maximum":140+0,"element":"anyfunc"});var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}var ALLOC_NONE=3;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[_malloc,stackAlloc,dynamicAlloc][allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr>2]=0}stop=ret+size;while(ptr>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i=endIdx))++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var str="";while(idx>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function UTF16ToString(ptr){var endPtr=ptr;var idx=endPtr>>1;while(HEAP16[idx])++idx;endPtr=idx<<1;if(endPtr-ptr>32&&UTF16Decoder){return UTF16Decoder.decode(HEAPU8.subarray(ptr,endPtr))}else{var i=0;var str="";while(1){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)return str;++i;str+=String.fromCharCode(codeUnit)}}}function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}function lengthBytesUTF16(str){return str.length*2}function UTF32ToString(ptr){var i=0;var str="";while(1){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)return str;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}}function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}function lengthBytesUTF32(str){var len=0;for(var i=0;i=55296&&codeUnit<=57343)++i;len+=4}return len}function allocateUTF8OnStack(str){var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8Array(str,HEAP8,ret,size);return ret}var WASM_PAGE_SIZE=65536;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var DYNAMIC_BASE=5347808,DYNAMICTOP_PTR=104768;var INITIAL_TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_TOTAL_MEMORY/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_TOTAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();TTY.init();callRuntimeCallbacks(__ATINIT__)}function preMain(){FS.ignorePermissions=false;callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what+="";out(what);err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";throw new WebAssembly.RuntimeError(what)}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}var wasmBinaryFile="optipng.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(wasmBinaryFile)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary()})}return new Promise(function(resolve,reject){resolve(getBinary())})}function createWasm(){var info={"a":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiatedSource(output){receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&typeof fetch==="function"){fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync();return{}}var tempDouble;var tempI64;__ATINIT__.push({func:function(){___wasm_call_ctors()}});function demangle(func){return func}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}function ___assert_fail(condition,filename,line,func){abort("Assertion failed: "+UTF8ToString(condition)+", at: "+[filename?UTF8ToString(filename):"unknown filename",line,func?UTF8ToString(func):"unknown function"])}function ___lock(){}var PATH={splitPath:function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},extname:function(path){return PATH.splitPath(path)[3]},join:function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))},join2:function(l,r){return PATH.normalize(l+"/"+r)}};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}var PATH_FS={resolve:function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(function(p){return!!p}),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:function(from,to){from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()},put_char:function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},flush:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};var MEMFS={ops_table:null,mount:function(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode:function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node},getFileDataAsRegularArray:function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return},resizeFileStorage:function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(newSize);if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}if(!node.contents)node.contents=[];if(node.contents.length>newSize)node.contents.length=newSize;else while(node.contents.length=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length8){throw new FS.ErrnoError(32)}var parts=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),false);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath:function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}},hashName:function(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length},hashAddNode:function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode:function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode:function(parent,name){var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode:function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev};FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:function(){return(this.mode&readMode)===readMode},set:function(val){val?this.mode|=readMode:this.mode&=~readMode}},write:{get:function(){return(this.mode&writeMode)===writeMode},set:function(val){val?this.mode|=writeMode:this.mode&=~writeMode}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:function(node){FS.hashRemoveNode(node)},isRoot:function(node){return node===node.parent},isMountpoint:function(node){return!!node.mounted},isFile:function(mode){return(mode&61440)===32768},isDir:function(mode){return(mode&61440)===16384},isLink:function(mode){return(mode&61440)===40960},isChrdev:function(mode){return(mode&61440)===8192},isBlkdev:function(mode){return(mode&61440)===24576},isFIFO:function(mode){return(mode&61440)===4096},isSocket:function(mode){return(mode&49152)===49152},flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags},flagsToPermissionString:function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions:function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return 2}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return 2}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return 2}return 0},mayLookup:function(dir){var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate:function(dir,name){try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete:function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var errCode=FS.nodePermissions(dir,"wx");if(errCode){return errCode}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen:function(node,flags){if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd:function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStream:function(fd){return FS.streams[fd]},createStream:function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=function(){};FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:function(){return this.node},set:function(val){this.node=val}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream:function(fd){FS.streams[fd]=null},chrdev_stream_ops:{open:function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}},llseek:function(){throw new FS.ErrnoError(70)}},major:function(dev){return dev>>8},minor:function(dev){return dev&255},makedev:function(ma,mi){return ma<<8|mi},registerDevice:function(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:function(dev){return FS.devices[dev]},getMounts:function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts},syncfs:function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount:function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount:function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup:function(parent,name){return parent.node_ops.lookup(parent,name)},mknod:function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(28)}var errCode=FS.mayCreate(parent,name);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create:function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir:function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree:function(path,mode){var dirs=path.split("/");var d="";for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}};var lazyArray=this;lazyArray.setDataGetter(function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._length}},chunkSize:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(29)}return fn.apply(null,arguments)}});stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(29)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAP32[buf+48>>2]=4096;HEAP32[buf+52>>2]=stat.blocks;HEAP32[buf+56>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+76>>2]=0;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+80>>2]=tempI64[0],HEAP32[buf+84>>2]=tempI64[1];return 0},doMsync:function(addr,stream,len,flags,offset){var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},doMkdir:function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0},doMknod:function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-28}FS.mknod(path,mode,dev);return 0},doReadlink:function(path,buf,bufsize){if(bufsize<=0)return-28;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len},doAccess:function(path,amode){if(amode&~7){return-28}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;if(!node){return-44}var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-2}return 0},doDup:function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd},doReadv:function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret},varargs:0,get:function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(){var ret=UTF8ToString(SYSCALLS.get());return ret},getStreamFromFD:function(fd){if(fd===undefined)fd=SYSCALLS.get();var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);return stream},get64:function(){var low=SYSCALLS.get(),high=SYSCALLS.get();return low},getZero:function(){SYSCALLS.get()}};function ___syscall10(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.unlink(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall15(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),mode=SYSCALLS.get();FS.chmod(path,mode);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall212(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),owner=SYSCALLS.get(),group=SYSCALLS.get();FS.chown(path,owner,group);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-28}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 13:case 14:return 0;case 16:case 8:return-28;case 9:___setErrNo(28);return-1;default:{return-28}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall320(which,varargs){SYSCALLS.varargs=varargs;try{var dirfd=SYSCALLS.get(),path=SYSCALLS.getStr(),times=SYSCALLS.get(),flags=SYSCALLS.get();path=SYSCALLS.calculateAt(dirfd,path);var seconds=HEAP32[times>>2];var nanoseconds=HEAP32[times+4>>2];var atime=seconds*1e3+nanoseconds/(1e3*1e3);times+=8;seconds=HEAP32[times>>2];nanoseconds=HEAP32[times+4>>2];var mtime=seconds*1e3+nanoseconds/(1e3*1e3);FS.utime(path,atime,mtime);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall33(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),amode=SYSCALLS.get();return SYSCALLS.doAccess(path,amode)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall38(which,varargs){SYSCALLS.varargs=varargs;try{var old_path=SYSCALLS.getStr(),new_path=SYSCALLS.getStr();FS.rename(old_path,new_path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall39(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),mode=SYSCALLS.get();return SYSCALLS.doMkdir(path,mode)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall40(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.rmdir(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-59;return 0}case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-59;return 0}case 21519:{if(!stream.tty)return-59;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;return 0}case 21524:{if(!stream.tty)return-59;return 0}default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}var structRegistrations={};function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return new Function("body","return function "+name+"() {\n"+' "use strict";'+" return body.apply(this, arguments);\n"+"};\n")(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,function(message){this.name=errorName;this.message=message;var stack=new Error(message).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}});errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}};return errorClass}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach(function(type){typeDependencies[type]=dependentTypes});function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i>shift])},destructorFunction:null})}var emval_free_list=[];var emval_handle_array=[{},{value:undefined},{value:null},{value:true},{value:false}];function __emval_decref(handle){if(handle>4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i>2])};case 3:return function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])};default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(value){return value},"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value},"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function new_(constructor,argumentList){if(!(constructor instanceof Function)){throw new TypeError("new_ called with constructor type "+typeof constructor+" which is not a function")}var dummy=createNamedFunction(constructor.name||"unknownFunctionName",function(){});dummy.prototype=constructor.prototype;var obj=new dummy;var r=constructor.apply(obj,argumentList);return r instanceof Object?r:obj}function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc){var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!")}var isClassMethodFunc=argTypes[1]!==null&&classType!==null;var needsDestructorStack=false;for(var i=1;i0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i>2)+i])}return array}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=function(value){return value};if(minRange===0){var bitshift=32-8*size;fromWireType=function(value){return value<>>bitshift}}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(valuemaxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0},"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);var stdStringIsUTF8=name==="std::string";registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var str;if(stdStringIsUTF8){var endChar=HEAPU8[value+4+length];var endCharSwap=0;if(endChar!=0){endCharSwap=endChar;HEAPU8[value+4+length]=0}var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i;if(HEAPU8[currentBytePtr]==0){var stringSegment=UTF8ToString(decodeStartPtr);if(str===undefined)str=stringSegment;else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+1}}if(endCharSwap!=0)HEAPU8[value+4+length]=endCharSwap}else{var a=new Array(length);for(var i=0;i>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr+4,length+1)}else{if(valueIsOfTypeString){for(var i=0;i255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}}else{for(var i=0;i>2];var HEAP=getHeap();var str;var endChar=HEAP[value+4+length*charSize>>shift];var endCharSwap=0;if(endChar!=0){endCharSwap=endChar;HEAP[value+4+length*charSize>>shift]=0}var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i*charSize;if(HEAP[currentBytePtr>>shift]==0){var stringSegment=decodeString(decodeStartPtr);if(str===undefined)str=stringSegment;else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+charSize}}if(endCharSwap!=0)HEAP[value+4+length*charSize>>shift]=endCharSwap;_free(value);return str},"toWireType":function(destructors,value){if(!(typeof value==="string")){throwBindingError("Cannot pass non-string to C++ string type "+name)}var length=lengthBytesUTF(value);var ptr=_malloc(4+length+charSize);HEAPU32[ptr>>2]=length>>shift;encodeString(value,ptr+4,length+charSize);if(destructors!==null){destructors.push(_free,ptr)}return ptr},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr)}})}function __embind_register_value_object(rawType,name,constructorSignature,rawConstructor,destructorSignature,rawDestructor){structRegistrations[rawType]={name:readLatin1String(name),rawConstructor:embind__requireFunction(constructorSignature,rawConstructor),rawDestructor:embind__requireFunction(destructorSignature,rawDestructor),fields:[]}}function __embind_register_value_object_field(structType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext){structRegistrations[structType].fields.push({fieldName:readLatin1String(fieldName),getterReturnType:getterReturnType,getter:embind__requireFunction(getterSignature,getter),getterContext:getterContext,setterArgumentType:setterArgumentType,setter:embind__requireFunction(setterSignature,setter),setterContext:setterContext})}function __embind_register_void(rawType,name){name=readLatin1String(name);registerType(rawType,{isVoid:true,name:name,"argPackAdvance":0,"fromWireType":function(){return undefined},"toWireType":function(destructors,o){return undefined}})}function __emval_incref(handle){if(handle>4){emval_handle_array[handle].refcount+=1}}function requireRegisteredType(rawType,humanName){var impl=registeredTypes[rawType];if(undefined===impl){throwBindingError(humanName+" has unknown type "+getTypeName(rawType))}return impl}function __emval_take_value(type,argv){type=requireRegisteredType(type,"_emval_take_value");var v=type["readValueFromPointer"](argv);return __emval_register(v)}function _abort(){abort()}function _emscripten_get_heap_size(){return HEAPU8.length}var setjmpId=0;function _saveSetjmp(env,label,table,size){env=env|0;label=label|0;table=table|0;size=size|0;var i=0;setjmpId=setjmpId+1|0;HEAP32[env>>2]=setjmpId;while((i|0)<(size|0)){if((HEAP32[table+(i<<3)>>2]|0)==0){HEAP32[table+(i<<3)>>2]=setjmpId;HEAP32[table+((i<<3)+4)>>2]=label;HEAP32[table+((i<<3)+8)>>2]=0;setTempRet0(size|0);return table|0}i=i+1|0}size=size*2|0;table=_realloc(table|0,8*(size+1|0)|0)|0;table=_saveSetjmp(env|0,label|0,table|0,size|0)|0;setTempRet0(size|0);return table|0}function _testSetjmp(id,table,size){id=id|0;table=table|0;size=size|0;var i=0,curr=0;while((i|0)<(size|0)){curr=HEAP32[table+(i<<3)>>2]|0;if((curr|0)==0)break;if((curr|0)==(id|0)){return HEAP32[table+((i<<3)+4)>>2]|0}i=i+1|0}return 0}function _longjmp(env,value){_setThrew(env,value||1);throw"longjmp"}function _emscripten_longjmp(env,value){_longjmp(env,value)}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest)}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=_emscripten_get_heap_size();var PAGE_MULTIPLE=65536;var maxHeapSize=2147483648-PAGE_MULTIPLE;if(requestedSize>maxHeapSize){return false}var minHeapSize=16777216;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(minHeapSize,requestedSize,overGrownHeapSize),PAGE_MULTIPLE));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}function _exit(status){exit(status)}function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function _fd_fdstat_get(fd,pbuf){try{var stream=SYSCALLS.getStreamFromFD(fd);var type=stream.tty?2:FS.isDir(stream.mode)?3:FS.isLink(stream.mode)?7:4;HEAP8[pbuf>>0]=type;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function _fd_read(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=SYSCALLS.doReadv(stream,iov,iovcnt);HEAP32[pnum>>2]=num;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){try{var stream=SYSCALLS.getStreamFromFD(fd);var HIGH_OFFSET=4294967296;var offset=offset_high*HIGH_OFFSET+(offset_low>>>0);var DOUBLE_LIMIT=9007199254740992;if(offset<=-DOUBLE_LIMIT||offset>=DOUBLE_LIMIT){return-61}FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[newOffset>>2]=tempI64[0],HEAP32[newOffset+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=SYSCALLS.doWritev(stream,iov,iovcnt);HEAP32[pnum>>2]=num;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function _getTempRet0(){return getTempRet0()|0}function _setTempRet0($i){setTempRet0($i|0)}FS.staticInit();InternalError=Module["InternalError"]=extendError(Error,"InternalError");embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");init_emval();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var asmLibraryArg={"e":___assert_fail,"T":___lock,"y":___syscall10,"$":___syscall15,"C":___syscall195,"_":___syscall197,"P":___syscall212,"B":___syscall221,"Y":___syscall320,"Q":___syscall33,"R":___syscall38,"Z":___syscall39,"S":___syscall40,"W":___syscall5,"V":___syscall54,"u":___unlock,"X":__embind_finalize_value_object,"M":__embind_register_bool,"L":__embind_register_emval,"w":__embind_register_float,"t":__embind_register_function,"j":__embind_register_integer,"h":__embind_register_memory_view,"x":__embind_register_std_string,"s":__embind_register_std_wstring,"ca":__embind_register_value_object,"aa":__embind_register_value_object_field,"N":__embind_register_void,"D":__emval_decref,"K":__emval_incref,"da":__emval_take_value,"p":_abort,"f":_emscripten_longjmp,"I":_emscripten_memcpy_big,"J":_emscripten_resize_heap,"q":_exit,"z":_fd_close,"O":_fd_fdstat_get,"U":_fd_read,"E":_fd_seek,"A":_fd_write,"a":_getTempRet0,"k":invoke_ii,"i":invoke_iii,"r":invoke_iiii,"n":invoke_iiiii,"H":invoke_iiji,"v":invoke_v,"g":invoke_vi,"d":invoke_vii,"o":invoke_viii,"l":invoke_viiii,"ba":invoke_viiiii,"F":invoke_vj,"G":invoke_vjji,"memory":wasmMemory,"m":_saveSetjmp,"b":_setTempRet0,"table":wasmTable,"c":_testSetjmp};var asm=createWasm();Module["asm"]=asm;var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["ea"]).apply(null,arguments)};var _main=Module["_main"]=function(){return(_main=Module["_main"]=Module["asm"]["fa"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["ga"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["ha"]).apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){return(___errno_location=Module["___errno_location"]=Module["asm"]["ia"]).apply(null,arguments)};var _realloc=Module["_realloc"]=function(){return(_realloc=Module["_realloc"]=Module["asm"]["ja"]).apply(null,arguments)};var _setThrew=Module["_setThrew"]=function(){return(_setThrew=Module["_setThrew"]=Module["asm"]["ka"]).apply(null,arguments)};var ___getTypeName=Module["___getTypeName"]=function(){return(___getTypeName=Module["___getTypeName"]=Module["asm"]["la"]).apply(null,arguments)};var ___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=function(){return(___embind_register_native_and_builtin_types=Module["___embind_register_native_and_builtin_types"]=Module["asm"]["ma"]).apply(null,arguments)};var dynCall_v=Module["dynCall_v"]=function(){return(dynCall_v=Module["dynCall_v"]=Module["asm"]["na"]).apply(null,arguments)};var dynCall_vi=Module["dynCall_vi"]=function(){return(dynCall_vi=Module["dynCall_vi"]=Module["asm"]["oa"]).apply(null,arguments)};var dynCall_vii=Module["dynCall_vii"]=function(){return(dynCall_vii=Module["dynCall_vii"]=Module["asm"]["pa"]).apply(null,arguments)};var dynCall_viii=Module["dynCall_viii"]=function(){return(dynCall_viii=Module["dynCall_viii"]=Module["asm"]["qa"]).apply(null,arguments)};var dynCall_viiii=Module["dynCall_viiii"]=function(){return(dynCall_viiii=Module["dynCall_viiii"]=Module["asm"]["ra"]).apply(null,arguments)};var dynCall_viiiii=Module["dynCall_viiiii"]=function(){return(dynCall_viiiii=Module["dynCall_viiiii"]=Module["asm"]["sa"]).apply(null,arguments)};var dynCall_vj=Module["dynCall_vj"]=function(){return(dynCall_vj=Module["dynCall_vj"]=Module["asm"]["ta"]).apply(null,arguments)};var dynCall_vjji=Module["dynCall_vjji"]=function(){return(dynCall_vjji=Module["dynCall_vjji"]=Module["asm"]["ua"]).apply(null,arguments)};var dynCall_ii=Module["dynCall_ii"]=function(){return(dynCall_ii=Module["dynCall_ii"]=Module["asm"]["va"]).apply(null,arguments)};var dynCall_iii=Module["dynCall_iii"]=function(){return(dynCall_iii=Module["dynCall_iii"]=Module["asm"]["wa"]).apply(null,arguments)};var dynCall_iiii=Module["dynCall_iiii"]=function(){return(dynCall_iiii=Module["dynCall_iiii"]=Module["asm"]["xa"]).apply(null,arguments)};var dynCall_iiiii=Module["dynCall_iiiii"]=function(){return(dynCall_iiiii=Module["dynCall_iiiii"]=Module["asm"]["ya"]).apply(null,arguments)};var dynCall_iiji=Module["dynCall_iiji"]=function(){return(dynCall_iiji=Module["dynCall_iiji"]=Module["asm"]["za"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["Aa"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["Ba"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["Ca"]).apply(null,arguments)};var dynCall_i=Module["dynCall_i"]=function(){return(dynCall_i=Module["dynCall_i"]=Module["asm"]["Da"]).apply(null,arguments)};var dynCall_jiji=Module["dynCall_jiji"]=function(){return(dynCall_jiji=Module["dynCall_jiji"]=Module["asm"]["Ea"]).apply(null,arguments)};var dynCall_iidiiii=Module["dynCall_iidiiii"]=function(){return(dynCall_iidiiii=Module["dynCall_iidiiii"]=Module["asm"]["Fa"]).apply(null,arguments)};var dynCall_viiiiii=Module["dynCall_viiiiii"]=function(){return(dynCall_viiiiii=Module["dynCall_viiiiii"]=Module["asm"]["Ga"]).apply(null,arguments)};function invoke_vi(index,a1){var sp=stackSave();try{dynCall_vi(index,a1)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_vii(index,a1,a2){var sp=stackSave();try{dynCall_vii(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_v(index){var sp=stackSave();try{dynCall_v(index)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_iii(index,a1,a2){var sp=stackSave();try{return dynCall_iii(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{dynCall_viiiii(index,a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_ii(index,a1){var sp=stackSave();try{return dynCall_ii(index,a1)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return dynCall_iiiii(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_iiii(index,a1,a2,a3){var sp=stackSave();try{return dynCall_iiii(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_viiii(index,a1,a2,a3,a4){var sp=stackSave();try{dynCall_viiii(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_viii(index,a1,a2,a3){var sp=stackSave();try{dynCall_viii(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_iiji(index,a1,a2,a3,a4){var sp=stackSave();try{return dynCall_iiji(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_vjji(index,a1,a2,a3,a4,a5){var sp=stackSave();try{dynCall_vjji(index,a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}function invoke_vj(index,a1,a2){var sp=stackSave();try{dynCall_vj(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0&&e!=="longjmp")throw e;_setThrew(1,0)}}Module["asm"]=asm;var calledRun;Module["then"]=function(func){if(calledRun){func(Module)}else{var old=Module["onRuntimeInitialized"];Module["onRuntimeInitialized"]=function(){if(old)old();func(Module)}}return Module};function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}var calledMain=false;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function callMain(args){var entryFunction=Module["_main"];args=args||[];var argc=args.length+1;var argv=stackAlloc((argc+1)*4);HEAP32[argv>>2]=allocateUTF8OnStack(thisProgram);for(var i=1;i>2)+i]=allocateUTF8OnStack(args[i-1])}HEAP32[(argv>>2)+argc]=0;try{var ret=entryFunction(argc,argv);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="unwind"){noExitRuntime=true;return}else{var toLog=e;if(e&&typeof e==="object"&&e.stack){toLog=[e,e.stack]}err("exception thrown: "+toLog);quit_(1,e)}}finally{calledMain=true}}function run(args){args=args||arguments_;if(runDependencies>0){return}preRun();if(runDependencies>0)return;function doRun(){if(calledRun)return;calledRun=true;if(ABORT)return;initRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(shouldRunNow)callMain(args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;function exit(status,implicit){if(implicit&&noExitRuntime&&status===0){return}if(noExitRuntime){}else{ABORT=true;EXITSTATUS=status;exitRuntime();if(Module["onExit"])Module["onExit"](status)}quit_(status,new ExitStatus(status))}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"])shouldRunNow=false;noExitRuntime=true;run(); return optipng diff --git a/codecs/optipng/optipng.wasm b/codecs/optipng/optipng.wasm index dc1bd12122d2b26773c4cba2191f503357781499..774303604b85ff65534653b168df65ef0728ffd5 100644 GIT binary patch delta 73943 zcmb@v31AgP@;^S+Gw5&iu(Ul^}HkMB0s1SzTRKT~%G( z@7-sMU;LoJvnHK;CRvt6SE>#ZRVrmoB>6|FiFOK~3%nKumNn7Adx}yEhE^`PtVMN< zzxaQgF=GZ-m|;zfnl#kRH*ffh4>g1T=7mWXXD)bVEV3?9->E?~i6&Wv`1^Z{@b?c^ z1b1RlpIx8RPlPw2-r^x%6Rt)cFS#kV5Tk4);<>7s* zv^-66&y^OYTLr#PC1u>p1=8|`(#}PeLW;Ix{-e}Za)(<5NEsn*j+A~!S<3%{G{yWr zswcJfPgRwv>&RZ?tagCLNW?)Ku?V_}Sa{9H->8a2qh+>IG0RcPQjTp~5i8oVRYc`S zRUCz5j-!xgA){qPMe|8TN*vpXL?aZjm2E3D?bs0~l2>3yZ53%#s3K0WlK)Y}Ns(=} zh~O(qHvUHrDnuOoPg&839g7u5l&zXH#}Li`@}l{9P9E9lJTK{xDk-)A6+ntRWFs9- z5Glt&lOT;KlSkCDqfXSe(S&qiGpvNZG18`~sEUyliN#{bi}3&Q+Mzm{%mb8Um7}a> z=UG-^JYHazwpFAG^Du6wAU|qbO&pac|Fg_P{wh^aP>`RWmzN)n0)H5Qm1suI6b8co z!%(~uAlq`OeJdwb#Mo2HLBS&Y#ebGl$YZq_-{=T$mg4Eb{~a4c!pKMw;|x{#fB0+> zv4Ac7hY7*>FwlJ9+-~Y%@MNKd7+L^&Vpf#r5Yu8)zKxDkNXH0)4^-kOipC-eUyM~W z9f>)SSOf^?*JvzSSP)0ov3M-65OYB(((CVk8k2D!wN-zdWPRwUQzu!AlsavaHAbC2 z$*NIjOtLoGs&10?3aQDHtQ&1LWs)`1R%cGK{zWNu)+Fm5rOuvYeXP_uldO-FnmWn) zk5bdnm{R9XvOZ91`XuXhrOumV?NsXgN!I&H{b`c*o>CV~vffqd!b#S@mAYt>^_o(8 zlJ&MyHIuBjlsW_*D0S#0YnM{PCRwj4RXfRgQ>o#TtT$Bt4VYa`srYRAz`5U}+wKb~ZXsI`^oRwAp^jKJ_D7ZZEaprK>2i(0-e?(Q3c|9qONIlM|@N=?QvSz2`iqZlQtO)!)?ywOT#w1dgw+R}0hv zXMW0gNiCuq)HXHG@tyhVkU^v7sYBm#UUjxRFF7wdZ#b_zJDtC&SDYQr3(oV-1L|4l zA!nI$w{w@X)LG&za&B{W+OOHq+0WYVIBz>wt55Au?3e6q_9OPg_TTJ>?A7)v`!Dvr z_A>j=&P-aOmZ``>V88lD{yoUH{M8x|eE-C(xm; zkJWXwJZcj6ERFPGR=gaQE3J0gor<22TQ z4k{xZWvEJ_lOobvP-M#r|KKL)sjVygdz%bT?UFvYI^H}R1@(3m!avmZth%Jdb#07* zrd26)2LL#0c#*BQq9A8;lDuFrkuaZIM6zj-3*z4|wCJDX4jjN^N#+el4Kw1_aZh

1N2gR*LRGEd3^ z)t5F~+y8wGAOCn1sSu%7k)`L~A5GYHHP4`xv~;X40W^cmxU5bAq`1Gd#dsR*f8U}r z-Q#y`sr^YU4)ya2lf70dCJ1+c6)(jkRa%zzxI>UCGTghVbv%A8WMfJwG)eAE|8LC? zKud2oKiYr$!1KmDV>2&!RtZ^d6D!`qQq^DqjLu3>Au*er#T1WOzq=Lp;!(Vfbkt6- zx6-sb(9o`bORHWASb4rxzkYjwIUWu1Xt+_TP_d-#Ia=m8J*Qq2)2YmKQXI4H4=x?Z z6nRnU6}>WTa8;&wscMJhkgl4HGA)?OJEmpLPloIk&;C4;l9tamFWz&weQ#;KKq2wu@_9&Hv%5S(ocVQ|qZy*HZQF5~GuvL+bE}zQ z@*;;D;>JkLAic=sP{E4DoTo=~qbEfJY_r82@}?CsfOy*$qvJ*_Aj_oD7Z zzrE+tM8DcQSS`EXKhN`8P1GsK01!5~DhhQ4fJP^y;Bv21XC4Lq0Vmpl90Elu{lkwx z{+Kr!vQfDVh=rnGd&xoQHSC%D74c>1y)rUJIo^cdS(xKLMmke04XIWYI0@Mc+Z|tM2!YNOn_5nUQQCHNx6olI&b% zGI=y;OSm|cr&vL9hTu`cVde*x6%YBxWFLh`Rfh$K@)98YVp`>^rG3->G)1}?}rF3^ZRyQ(q2Tc z!Ze2B*Ve?M+DVJwZ#rM51dkmncyOSVx+JqFFCpQIhFPxD6lJ7y{Yog45)rY9qwfe<2g_JO@Su!waSA1wHoRGBzf_{SlXT-JXq|GHj%Q$wIF zc@dACl;=QRK&46$a|INJdgaz)g{Yqal|}zZqe1&<<42krcWYUps8?u)RVT$u9Hy(5 z7oG|zBcLwFJ#SciFsW1rOS_Ykc1KHp`L3l4H0h7(6(CP4_k`A76-cp474q_k#qA1e ztqUMF{-nuut$1qyiPR-_($aW^&@=tlmiwpn=#zLG!|Kjznxz-EtaI05n((?be0ATl z{dGNR)NH!G=j!~1&qz0XOYY_V!#!74@3N)n4OE8;S2wG3FNgACxmRHLJQ8=7ip#pH zFPnI{lhQlxV&QB}W^|?^9@hV(`t@tUstLo5v6f&WznNtRH_(S!ADPb5Qc3Hq?Y`sQavFd zIelC*!a8)OK6neCwob*EeNo_Oe|ewQsd0%2CK2*Wrse1ntS_VC2)9}TP8!D&iAliL z&8H+Cs0lI7Li?Um$Nk0PDg}s5Kj2^;3l)tDHNt>arABxm+>fUOa8w_|(oA{&*s5MF z!gtigAmawQ@&1if9cjG(NLBmjc)7zcfel8-}z>{zX)MmmhlB zA|^hFUGw6en4q}3)cjV9tFlgErnOzCFPVy^O{d1NT))d-S>3h?6HiZ}9Q3~ae*d-V0ZeEv1 z!+;T1jJHDTm|Py+A)0uxRql@zkB>wL;2#fKOh-#$QWxIv6?^yX04*2mYb|^Fjz7z z7KYypB=cxo&yxI*{J_6qLZ*Q93*qoEp)UZQA$J}`rB$X`ZDd-t4g;ou_e!gDx@R9& z#C)iqE*0I@hJ=B5H3_WL+QT4fP|F%MbsE$QK%?tD=oiP}6);ELjg*AU+k*B$3t&KP zPjLrVVX**T45Y1`jwj|*=na+2p|gxJpD`W7N6hf*cWvDPe%>KVoK;GbKmO1Ksbv&z zg|PrxT9hj$OP(XphOcr5$t=m44BUFiE%z8DBdx<|pontMJrfa80~l!Kj!H(r)L=lC z7=vMBff=jRe8p_;IMw(I?D(nLlgh46x&zUn=Nv#*U+T?oJt#Ji2KnFA_DGK5{&+m` z_}7efpo`(CP|FpB6YEs|Uxt^ZRubDJOg>CC%N?xmSVh=+kaaTa_SDBIb(H|qwBbcYu@PVm*pI_eQ@>rJHxFhVeTBo7fC!ZXr5?G^AcmX)vj zo)&`5gZOdVs7_;#OrV)?d5u@6$%3J-P#*VzXUFi_CQ1ATdO$K1 zOMY|omdjFgy8UR#3i4kVrTsg`wo4{?Hc``MZCFr;2`YiVkkRyY5tzkac}RKrKqJX9 z3^%kxK`lz}qPmW2rXIFRwfpBQ5Ed=;$CjQok6id$^qkiuXOO-7U)<$1StSZ4=Hnx$A7$?@Ip_+5!xyp+~hXJ`!ZhfJ4V6_d&nzsMdpe z0{vk}`i?4hBr~6KcN3Hv%nVb8<<`l>>E*4F9p69z!p3a4EBrnas%VlwWkSDV?s+2% zWu{2&-#?*GY7#h#;*Tj_^%*n5j4Ol)!bMQy`yJOW-ZKEBXhirdKS9vUumlS1*CStyg9f z?ni=hR}<*bw5|!|VCP_RNJBA~`7;nC6oZ0fdpfTZ4Em>*3#gJhv}4dpk$~v6{>k1&o@LKD)1+40IXhqkK^0WOa7SS zd!iZ?h^AiU5WbNKD0bqSb16>53{OTW=uE7Ty*naqh$W+p?@06|_} z9ZO!M^-E$#JsV~nZ0$_X=RoVNQs)>jrpU(>e56oef_zQDY<__%s0nD4G=<3kzY0m9 zNd`hXke=(n4enn}Dip6OHQm%%TZ#UmRoNq16c~U66;nLI8ef-;V2;>>GJ$dP3gWp!tp}{U`l63;Y*Vlzz+e@yfeFohvj=F;wrSjYc?`a&y%*$Qa`rpgrhKEWf6)RZ6vcx93*t(_uofdt56t*}yhI*-*oiXQ}k zhJ{MXv|-~hMs!wTSyfgAzg1e!0INIRFyk?)8H>lay(hWolopP#F)q*dUQX^_b)j5;1lxCk02u*dk~@+Hf;4a3g%Vt(sm4oD>}T{wlart7`-)H=PSEoRv^EhQY>NGRnh;u!`c#_4(txVj(J>8 z?kdP+C~GV6&>JAb(F~bY-;O78R(*EYiu%It+JPF16&B?9_;5Kd)%EpiDlGVFRm}tw zZa-jW1U-QXmWLc}b|XZol`*W0frb_YY{j901Zc>FNb>mYVI7F3WK)(L<7?+!e6Ghu>MTAw)uQ~^lM&JA{0 zAc5n7tpniQ0ReHP@!a%j-Z7sc{LBSHXE&YD_W!9Z*HlK7YwHd?ScD>%XB4yyJ zB#-q-P~@6{r^ksN^@pD^j2%65&$y4>B2?7W%Y)X^-6HpVe@xv5I^Sa!uQ)TQzO47hoOwQt^`AWRQ1uD<`DYEm$B47Km3>0V zxK~)0Ec9p;(*}6Vsq^54@vl1zqxJ7QYbG~x(Ag)obuDZZ6oNY|R5hmjhk8(Ec@jFk zR{(|ezO#?*^JTp%1oy$e%$r>hA;tQ?lBB12BC}q2lyAX9V5n zUv^FzgSqIOI|@-So+$BJBKHh`_|&sfV*yu*R}7btrF&w+W86i(bFPaFB)DE7R46Wl zp-3SwU1+_9LX1-|NHO}W`T|uu2>OXpkKSrrARF`p8l_QI;Va8x1>2 zf}wNb!X-%bXfOmde=b56I+d*J%)6+4SIaxAYtU6uLAlq$a|hB>)o8+hb5*P2h9%Il zxDm*Ph9$nUx{D-<#)~$Q)PHp%)c_^6VF~*wc{u|}km&%DVPjp@uGaGb5g>%L(#+D= zl7Z|7hJafan2`${%94l{@s;Er9LNE*(73h@%^!1PCoK5OZH9K|>W(?k5`$KJ{{cUT zwrviynz3PHd1VYRHf-q0{Ep5T#SAW7Zh}ON08suC@PL3(jKZF5qb(KK8E7vLV_gl= zIEvLWJwu=!@7bVH^u_~p*b*@43kNJZH+n*UD8Rq~Nq7?#howGG34ep4ya=iTH>Lr< z{~8_~^fYjbm89W-R_0~0R_AGW6-LTl%dWvWCI%>l+k!Xre|G`cLvY~>WVnp2mjg9H zkg+~%dH&05N>U-f@LU7lWK1A7)6DOxF5KKfL&l@Y6&;=n2HP2d_aEDjg03XfgCa6L zJSF&tB8HOVj2E-76G5vEl-xKY!lQh&$8-n^IBRXY2^}C9H0A^h2wj!?0&@Uw9&;2+{pzhTF(So7os{~^11qS#-3QLDo*QxMk;A5fx&-t|5unrlk9fEeXf zZK9=a_)v0?-<*@6y>Vut&L0h>L6cWFJy`-jOrlKowi8YL(u><4+(cq0B3?5#7+@{{ z?@$hlVWPD5ioF=`%~^?<-o>c#nnSJ^Pxeo_*eh%@JyGtpO5|arP5t>7mr@h|o{Nuf zi)QK)%~*T<(U!gMd@o*G1cYH=&HVP43`4m;UNRur1Ueu12U9ZUii!jvnEG<~2_0&A zss(Q^V0Z*E1fXZ&3m;uEWV0a$w-`ri$t2w+MOu#4AVqA4>B}0R0G1!bOPIbTG90=M zP%S#*WD3!fEgsq0@xzFJE{s^tMlkVkxYJ1ZXg*27!`P1zTjC0bYmKvm^2HS!PzNb zR(LBRttW!hSi%VDdC=(qvjs^1M(%6}bB*^3bxIYCJ$ajmidCvNm%-9gfx)73cRVWU zQi-TSXP_Z46(?e|%KhAiJ&zW;^YSWX74pS;XH-=vZqSIHQ_R@mKIZ*!WL8@1SmOq^ z7@9c%Oa^ZThGcS&4&h+nA_(W`jVIbf1273o;Wb5d_8Y>`fU2ZWw! zXE=+X;o^qIP(7NQKz<0B(9zF8Vqx$zkW#R5LYR0n2C(pWJElP@WRS$F0hVuK8bSe4 z?-`DP5Ku;KCzd@zc$WjiVvfKg2Y5D-don5!$00cGJhWg86@-?E$(xdWC<(AaDX_#m z3`1V9%@UuO>A=o(kd*dq7)mI8GEf7>l!w6Ga4OVv(?%6+6%1KSC>7dI`U#BgOH4|* z@o{T^W#OWz|7lSvEmF5V4%DsI~f23Ggl;Zu7BXbMbu^a*^uj3Eq z2@4IVMYsjjScv+YVV$ETX1%>2`vTPLj#bGTAwFnO+o+`BE~dO8yhRf?I|u&7e<`2} z|Ej+n;T;od`NB{}Os!I3m}7;4AN0zVRZz>}W#R>u#{ie7|NP2|X0}er7M8-Yu+wsf zVBG$H){defe$@jv7rynf_}}kR`m?$IYY)sj;mysGFq;#M7yr(`OUiZGlqK6GWnnhu zntw{l-Px1{J0xXgCZ)mO_*dQL^wzwHc4WQ+uplXBRs1QebIxsfz*TWr$&;{rt zP#9Uuv#_qfApow3z%2lk-J_9?@o9*b6SAc3PWRt_cyP1nu(Y6!K~5M6e* z5xsI$3TtXVY0)oQ--M(3+O6-N9b802J2ba+AnhO4|LWil*>F)BT^KQfpEhq8U;=Mg z(+k5#F=ZSQiZw;r_LEOMl1RrbVcK#6M-d^G2^{_5iSINjECrL&x9Q_mDMVQ)a zv70kTxn1-wyltDK5S#<4>~?l9v)y{z{ZY9;DEE8i?p5x0%KaApcjaQ;_zKku^dobX z+e$CJLFs4YZ7<#&{XX8C>K!)%5dB|yUz@s#GiJ@>jP3c_$4e*oze;bw%P!LI;_)Ww zIrEkK2I=K^yiR&M9y>{YhR186kE3n$x)uJ!?Ufx2Zz8x7FJ1xjL;>5T%g9536MXEBTj;OaUe+&NT@TVvy=_6h zch{9JyyHLb09rgW;Y=s=@= zxS2MaX9bO&21^hi_vgM^T(=gS%Mq@Ig)6|j%*NRKl3f5gddr;* zCo8IYt-OkQ0=dr~6XduxVUYx<@yZ*P6H|y6DrhZOETt|!_M~6lPru9;;z+=;NQ?a! z-)?najZP<}Tf9Mvgh7UAWYwJt^YT8l+SYO3fBG={Kh%0n!84tyxF$RX0ZrS&PRY%toek3F}ZuJlt|S~kB|0ljARW-}Nou6wWl`Zrx#++_~|$w2qR$_lS3iv+Y<_HEE3 z69958Wmy?UAs!{@5zq>t9Ec|Iv>m|BH>vPy zCq;KooRvRZsJjxD|YVe~>#e_*m0XbV#6Us1+R*9A85{I+=VX z2X~CbdZ6sQ_FR|Z`KEKXCb+MLbidsm!^6GaW*iQr8}CXaHeITpk(eZA1%`ufTC zF6@RK^v3FL^M8~Qlf`kE%=4V-(~^;a^iU;6?P4>jVXtYyo;)g8{Qy<1IrPmA%Flai z_6a92`OgS`-wtmTp=+-K6AesvEU_>Tyvp?h2Kb51ehp_dEJF7` zw)o-JG=Ha3rS9OZey-A;2?dj_FXnJs-kvVUPB&7lB(ziqJNj?{4o?(_LklUcDZj2# zcZI=zo;fiFDnL9m*P6nACU6`C*G7{(bc_~%5laz+tJOwW1WpU(jReUQz%_+kcz8)X zXZW;f{DF~i2`o2wMst%cWn(UO{!db8aBAw@Bmx~8 zl}^DPOJ$2&?r?YvSkp!O_&-p^AszTL0Sy4JaI6Dl6V$_K0hYKFZ;liKVfcU(2f;S3 z`Dkupemv=Of_xz21|>`Yp6MrL0Yi{&g&_UE5>#q#IGrL5%ZKZ66c3u`vdtv|rMXzy zyh{_kRSLj@&?$8? zQ1pvP&dC^hx?=<=$yo`Zp6+aI1F|YaDzPX+KL|3y*bvW+|01KyB^GO~X&7NON+Ni; z0)lHaLgO&(s6>~bsv%>J*3lPFm1CDc8R$=_egb>(QD_jX9JsI&4weg>1)E?kOil83 z3YVGy4#uN-b4Y^ULM{BU`7gq$wzM*Atl_wH%Lht;JafaFtjsZfrinL%fDtp82@q3;brEJJabQB| zX+FlBHsaI}0zS+GlrW15ODZT)(}qpM&>aNu2w$RqxUw|?2Zn-2yVAhai#P!e3CAriGr9pAGh#Rh+zUw})=UhQ$Q_f<&O;C0 zPeHweJds_Ek%@M}!9?&x3Nv}wYJQzKqyVI#@3<*+i*kqasSXsT7n(FCEhgTxs&J55 z3NHu?%hYomlhW7blm*&Q7QRHc~gu5SViqK zemVqeK@ZS4WXhHP1qdpwcgVl!iw>;80LLP7Vc$JW{F?Y#!9F^EqCfDPL<(+q z>FVF`{GyLo9em*s0OAg>wEm5S*N`>3MCgwvu6>jfbDTqsnHbm|a{)Jl2@)Smn|Qo9 zCvSS=&(q`a8cU%b#2e2aYO|};)^9UOus0K5O230Y_!1&^WfkP*4t`MmdMP}g@!hzi zf!$zM4+O~zE;O)IY2_!K>7E(`26nJ*$df733NnV0@Eq}?#oLKC2oPS-`QNoV7IJKI zah`Gr7YSH=B*u$MY*>Zbj{P;z1{R1)IK+wFeFE=x^u%i|mLHB2#H?T=KV4G<&UW&@ z|E?Vx@Z0W9@S}Qf>q2Q5qvMACQ};^tm3uq#*Ydp`JE2wX$D{Kh{2`?S)#YfNP3opV z_Np6!Fc!QD)hzvTZ!Rx{tS}M4$XXT5BWii@zxtY%z{h|XEy`9H<}xzH9R<9=wr94H z8rZN!>fqoNqE2*s@FUS>+|K2SIvlZ9B@E+Yg#v?l5e`_12p(~ah#3q^;aY5)oM=!( zI*vVwP$rb=dYX!Uu)~Sd0Mod)(qNCG9!??D zc2_7K8fT5;vqszz3i3COJMf0x7{J37gTSUPv@m$wrVfK6h`WO#hrmVwLSNqv4RIJD zR$$%=Vr7EY8-7B?Ei^42Ez8Z(K_`bg(jCDlJO;d8oQ|*4F`iMBM39H$Vh;!l#t2M` z5XLjm5aC%dPDI`p#JgSAyuk(%ouI0U=+%F<)ai$W%lDGYJvB~I-2_3P05YK$90Stfq7aVOF`{p z65>9f`LNvRjp5;?ob^1hO3-R|q1g(x5n@Eruq(io&>A=F`d9+69V+Nv4p%IP1aNp2 z%6$3vFrXF%MKp0Gp9e(Cl?Dz9n&>k!P8)Y+)>A_AYR+o%v z3~ud>5wM_^x&Yt34|1Dp_G7J2#uUuTqYkG5eL09SAHXxCP*rnIc7U>tZ|Tck#yKP` zF_54h;aI$-ANWV+WRk+hI#Og;9UT&fGGh?cK}n2CJ0YqTnc=v8?{ulDKo;4c`0NXhP?#D%Jc@Gl~9Wu zq+ZsVT9;FpoiY0Fbvo{XS zo{uwl6mU?$4%~7oOD*Ekj9eZB2R)$y=>&wro$g@Ly+PHvFlTH41hU9Mt8GzyF6(wc ztvQ4(n9UFgNF!>ZtHYU2Q$v~3wR$n_N-%MfWp|A_iPiZZi8mP>IfS8 zIc^O-$QcrJBs_`ZV2w#^U2hNt0wysK1lNznU;7;3@umvI^YT=1E!mF<5i9h}fU>Ai z;y%-eFJW@P{skZ8kmyoSN~N`nrn4?5ObLT&L^ z*fP?ao8d!>5;YLtpy18RFhqLpSZ*?yN*6&+Yb=eR10;qNVQUMt2z%<|kyAL<;6Kmvre#QnMb`8(S08B8R zc>@r+2fGC)apRgTRt{*cnR$6Iuq%}{d7FzMSbs_qil& z8PCfGr&e@Syvc@W88Ld06{_;Y#m1l#usJ4JaWIwB_~5yNseS8oq7WSl6~ZvV8jMDR zyxx>NdAz$0uy8`gaN?faM;ybH?+jrRBF}=qJP$!R;A>`0K9$C+2$LO#dL5i+c*qM! z*8u+cHZP#P`1o%}8WDWmn+A6=$9=_KVWEXy(zk$(j>8UOU6nU)f|L8uI92ZltNY*@ zK0Kf9L)WMNu2|t=KZTcp6h1~?rU#?ie9sR z)}!_Ho3`flwShq=83CN&Jhpu>b0A36WsMluSyY2TEO)axN5-wenv+9U&RKb&d8(RPZ*Kysj(LGe*M6bLQ!q;za_QLw(6 zyoxP2bp?+QO@=7N@__fzunRPzkiJ~LR z5tNWtAS3RmVDTX|n1%$q4xtXMZo;^cYdB*jp9^PsxG`vbC|%t7lad7Rs&~#uEU0@Z zt9n+2g%f{wd_Rxvd2OTNmswM%or3Y~ zcq$vSl@8eYNwgMlBZ|pyqKP8I=?x1YB+WGPH(M15!f@pS{P$*HC8+qqh}PMo2P@45mZf6gQG^!44UxZ zOCtzZc|IEaYZNeldeD9}^=LUEQEbXmq7X0G5PT?x$vI^-;R4p+nb95RA18D+uJvD6d2|6?qjghEw^(IYe=`1~+B z5={;}T$+61a7@sQ;KXq>r_-?v2-vNGk4w0x;W$-zW`PsEI(%bJ0`~|gm(RobIF0d& zD+A?9#0aqTkLLxlYw`e@2`^lN>wmdVj!*y3Uyn6$fx z3W9r%pg|mQXr{AC2>KR)ZtG>xD9#Dgk<%quYDrH{_%xgF@WGt0JDc!Qe@^&@6N0Hn zQ?GpHNMOvpI9Pr(^=ST!-R?e``m}t6S8+!7CKg(*3> z@EBTM#2XP(8WEOLgZ{_T0UiD#J8bAI7KVoMg6m$KE{HJvr-Cbwr3oWtvf)e46pOhR z!{5e&3UkU#=S4B6W+-d&GoxQMgvYinlQ1i&JdWCfsK*`$Vmm#UaU5MsPY3zq=^7B5 zKc1e&9GrYSrE-w){_!-ZRR$+4Rn0JPf_7>!_yjtZo(gU_fgVpCE5OK^K8Pkgw}kut z*4A%?Q?a(36TZ(TEbutt8YffYm5!V+H=FQi1tN zQ$f2E>8kuIJ)jh(c`8_WB9*uQdq;f2$CZjhR@(3$u=El|#J$yyPYgahk=o^7AexbK zF9@2QMEy^>iKRUBlU?xj!F0gd@2blc;0Kzd>cZR_zk3D=fqBod*w+9ijjU&AMxXM@~jO!iJ#9L>kcJD`L^=o`_WkPxNcK+eB-^0*3%ZUYt)r zJ@-Up+U}o&3no(A_{*q-l@G|cBWRdNEegMsU@Tz5a{nG|m`I%_EJIB6o%uS7We&V_ zztWs=SH8|mC%9F3ll_(tSglaNqATt03ER@^8x;S;dZX8~?hp7h2IX!KY9`T;t~uH4 zZ{k&xJ@NcNp}(^SC2S(NcM=?uD34j_iHSquxHce%g+Mj+(uJ1E0)n|8I2KQa_5doW z#)b=s1gU*(xMp!5gbmlNegwCxJUa(CXJM`m;IsqmQuj%vtx?$HaZr-87`UfWQf|JC zhoc>o&}n=D?vX~2w6TF$sj}Q>#g3`K*^FeK-i`YOa5^7$DdxwPvwwGdh|{2^9kQ6$ zZQOdM zU-;4h6l4`;Bi$G{pKRn*aWa;ZU(XSc2natcvQ3rYQqMT zu9tdAA#a8Oe7aW(LgY+g3gVy=GlC!ZFSUt?%SpTii62SroJ6>uw26nq z_Miwa(F?+uIdpTg3iCDMNi93)dflDD%Co6W%HUmgaxjmGmYsj4gk15S&P_Oo zt{_*kwOQ_&rVZu=>Iz8)PoLd|Mr|067x+P!npTYt#Qf9)FkhoCf zGi@Ws%plf9xlj9*Oe?&4L7Rdus-M}-@WJuKec>p%fd@^o6$`wxKzX4aWSkv9T)%Z0 z)}Bm4N?^QgCh2Ep5+h(LRDnz`0zU6#i6LG+y$7NoCyxhb2#P0q)s>AhnV4i{*d#!4 ziJwe_evE6RvVE~1PqxY8s})uQCcT{CN9Gg8I76h-s0M3j@P&JNYvuzk?M}der5f0Q z@#mhyRt|EQ1sFXHuX{EF6LNw|@y9F{eFxxvIpFI$ewSTKDa3hbRaSIn47opICtAWg zSTLEc_6|TuS3{OYkxVskj{6rS3O_T9`xLyadN&H;gXLUOuH8Z3UveXr7RRG;9+%-p zm|;R^m6(RiEbJW`$HT?*Xl&$3vnXPMgLI5;PJDfU7~uu)OHhWkNE(EEK@tZTe0XF)mK982U2p+u^^c$`OV6PfEgMdr4^lR5Zs(HkkCuTofm|VOs4c|-k zmk4YA$w1Sc@>PBiSc+Ngi)*-;=|klEXDu3w-@%Yd`awQ8=jki2<-*X8xo1xA$-dqu zfW!ln!f$1j#H={bXuhqINHFwNYJu&)V@{EI4> zr#(|XU%1V}l!1ebQ;s@u!L2KT<4>oVd^Nsd5hT2KIt@=B#ly86@T?{Idg1UWUNHO& zdZM%Zs0C9DG8n^X+Ovz&KWf1Tsqm`;5r0yr=D{I#bPw$aKCYwAJ^n>lj96=gZ0l-F z9_&$q{xD-t_yDj_Z-<5igAv&XtUJu;0kZIMCh_Ac@&{vy1BoJ3x5g6d4RBK1GJjR8cN6 z=TaIU^@^oW;_$hkfbO7{YTb&U><$E7;^2-K1F}@L`42(Lz$^sRex1>h(>BsID;Io3 zgfY#*d$J(1KfrMj*})g~r(w%Eqhssl=~VF_Ktr|BM)2MpG~k!c=#XxFMkm`nS7+L1 z;fMw%G(eEAN=p#D@NKrC?|l(lF05(ed|bkDEgYbOU)Sb8$`&l>wG9wPj1TDFzy^4x z$Zm~Vz%gP`G9cp&vN`vZJ*=0L8)uJ5h?U^6rBoJlyOS!i!`jTI(o*)uqXR4VKweHG zjfb`2E@~ZA-$hM>hwr5319+A`yiOL93{1atkSE(7!&ATrx??f52-+^D5z@$ie{&<9 z`(%1HsNf)VTuwJAm*Rk6U>{QiM20i`{bCwglc@?nbXZ&InOK+VCr(Y~yRk&(5SpB4 z%d~=d5nBf1n6ZQgD$w*JOQ>~wv}cx#Ov5R@*f2vCKwpa>e<^iJ{Wi?Sa_AddDCi4v zJSy~Ekfm?EB{Let{xLRS&}K#=b5W8WN+Sa4ojGghVV@DQ*KrTcp0mtO;!kKjO%xT! z3Y}LVWSME5jYXXP3-y8qtPvTk{PIlgtAomeGnKD`gVdUnH*}=RsDcP#Qd~QjLQOHTSsq=#a&!W=& zTTSNr*}>swVd>2eeuQ*yHP@uB{lzNRn#^UUN-94slY9PT?f7nvi0?(|MilzRi5fRk z;h>*X_^+ujKU<-`eg>*gwo16MoLQgVo0F1G_Hf(@uMw;jtqDD60XcT0!^@&CbgY z-jYB_yK1ofIvR@s z$W)izDUhnH%DQ*JS>4a#Lcfp~ygrqB6g4Uylug5y%Wc7t(`W`B+osVG<(UHR?TDns ziXp9GLfylH!ROM2`z)~STzWqB4t@qQf8c^d8vdB;5PwnE;BVBsn%I&qirlmV&Od4N~x zopc41c_)*H4I1RVZ}PC)so&3JVNVZPADOJ7$oeRqLXDrclj6{69`VZh2olDNI{ZXDYXUlUI! zCLlf4zc4kxe9vIdbU21@3kIA=kJ079H|NoCJoNe07mo|ir$L8Y&iY-x^ zfn0V`8EOy0`t_Im%|SP%*n`zw5S{=6!#Oewl!n_*uTcy}khqX`Ha!d%-a(SE9xG3G ze$eD1L_7=$246(O3;0qXw8O6?M4N7}6gD+80)SQ%`j3yS%(YaJbyy;>pkh>1f33PIzm6&iOB z;L{dR$!3@eCvBiazbtxtgXIs^XSm8iE6$cgsA;`{Adeo=_WP?+s zULzl?dkg(K{7}S$=9{S%Q&gAiogr0efz5hnktjQw;QOa0wA;WP;&i6R(h~j zYlH{PbS(FUL60Y>V>L$LNk=Sr(j(LRHh9@qYQ&UP>5AOcI(X9cmzaX{po${Hh_ZBv zblo&9jI9M)`3!fab4WV58)v?ZLx2Bo$iDrrt^NXQtlVc5BfioDB?RIgf_{k$n}8oCLw=3L@PN#mb(2jskTtsq_MsiHgEe5)BC8!_ z8!>Ij(Tjbxk(Op%f&({FEconM>XyadKn967-@xLT+o|@oED3uQ2NykuyL4(Wy!H5< zCk}JX%;Rrp@tx-=S@Tm3iSIe)Fp80>4*Ru?+N@yLhxBVV(pF$k~n0F$MKiZ zNcBydVCiLaB0p{1U0d``8^k=|H*lb8BdPXsx-y+q06s?2E0@!$Tw2eh7R^xF!{r|Q z8wUlfj_13F24~Eq@w7O2VkXVxa>Hj)2YybOMdkdwW){`s=@);~Dd>3x)wlSz4e#o^ z)6qD;lunS{g;i2QOSp zL+~h?O;vfEqgP)Uj6%SU!gJ1S>KJ(s@jrJ3f1M3u@A%+{*>oZv6Rx9?P1atmfEPrO z!~Eh}Yp`gJVBVO__5d=GKG{(cKG8%wy8I34joi-d>ldOuh*mug{reLI&rXY(rNQ4L)YOr8gO z>!#qLdDPF_JxdPIV|zOM5sc>g3rW&n&BA@Cvv8b{hK?QUS-6M1x%^tiZ1gk_KM)$x z5e}V1+>oA$q^tNhLlL6s(eKM~UaFRzMjUXSXbLF=VnI&6?q279Ob;%aPj5tUEBVDY z(Q&PFo9^i;uL(9qaMlJtgb{pn6AeJIE&(0ZrWSfDE(Xf;iujg#uNer-(mwhnw>DV7 z2S?8c?hWW*stw)<=wy5iSxCeC)IuD<2^RHAhQXo*XN)N4UE_33HdUiu5#PuX#kE4X zx^PrE+Ix5*buDDTT6j&p7L$>(dm*)?u|eL=2m?MNSa364pmxm);7}xoh&iG(d_TyKYX|2R8(?qp7iJNU z<+8+?>dgQ`Lr>TfnF|J4)eLZpmF(B;`Gjf@Ux?b!kD)Cp*7139L8lD|bN3mc`%5}; zPBw4E;HZgNO+KYI-B#sV@e#eMgP8Gff8eeKj`l@@#uYhi#|PU#rN5QK=r9{(3`Y7t zvu);=%;b;EQ-Eo&OoNIXdHI&RM86Z??iI3dq<=%8#Yy0VgVhD=H;k5;+}* zXl;U)Z~C0tWVg4P@to^r__thO=bya#g^3ok&TNxmc3cMVq|d3tm`%osoL56f6*bL{ zvsH*XFYnI?_3^I$GuG?`HZws5zYJIjxA^?$)c<(QH}A=;l3jB2#dDmt50~Qun^xHI z%yt#p%r95%Ynp_dPX2-hXRqiiP0wzDO!+T^m9AG7{NSk8!5Kx$4e+CfgM-7qq*^ih z1fJh8#~H#Iu^8^}P#Z@S8IHQ*KG6)fgnH`A{<(I|&*#-)^iA3eGCb_RR1+>~nE!?} zqo*4L>AXB}-)*HKYuh8I(wrgtt^_B`ir}-a06^cbs7sWE4O|_kd_}z`;9V3{@m<5* z5E0D|XO6AiApr7Qy0f&wam|yBRP&#YIo)Mjg`V86sa1BnH^kbv*bmGx2mf~yWx;u0 zQy201JS);L3(fv`y5ny z{>pme7YZ^1LCpuSmA%iJX^fTyhkip{{$M6i1Pm@?lAEp55&B6{mhgjSuy&^+>?>D1 zg~;Fj;;;0^x8?>fd_!Fi6AHm0ov;ryD%2sKE3^89ZC?BLUuiQtf|I`uCv?^GzhyE` zW#Be`8&2rQ+kSH!HQ!M+vjEE%Ovh3PT4{?Bh!b>ncD)JLvU-mtGE3pxaY*$=997~u z{5A3P^>@@=XzziSe+#H-`O#J_T^!W!rRFEB3k^=pEMOJ}_K3Gf*Jm<3D`(mndK+GP zcY0$Dq4B~Y^YiImYTM0>5r;!?63Z&e7sQyfqznM7kwMh5#X;ZiskX-S%Q(z1gIWCR zSu-Mc>#t+#@$aeT{|6+M9hQ=bG!q8dZ(bNVY0z|=a1w!#pQucY5h94c`v;noiLXe{ zKCq5Shxf0M!ewf+h9qo0=tpW(2vkAa;x!1kI^{QHfdKc`ed00Av}Hs7lpSrRI?o~lz3(;Vh z59h99`{INQ;V079%oyZ-T8I3fdNa0#hlO;IOB3U4t3rv#?Ek5zeCf5M7^zHb6&c+ozff*E$*Ya?1-Tfb{S?A7zjcm&@R}cw{Ew zz!UNN*o_UZT~^lc+DkkcRvk`V)3qhT7KDin;%mhf3scjV@&lPA40e+ZSydC zvk-uDTzXfvcn5wC{@9 ziGL)n4$W@fc1o{)1^a?MTl=v>)iRj9huq$L&t#58+fi@+*M5>7+Aw>Mzts%Qf-|s4 zjXr$2tZI#*=`54;69+-K&d2u4bpE7Bbv)Fpm*H$p%N=f~kPr|Rv5z^=0(y3F`LcaUnJh%_HZe0K0n zT~6nlE!cE zOz01P4dznr@6r-A=!BmvfZ}n4)hYM*=E(5_(s6-l*O1%(mlsF)5Fzmpue>5?)>QR4 z*0c{TTN;JwltD1&%ILIwFepU!_p+4ZI)eRL%2zj49Y&^gyix=%2p{B_H|b`deB)Q< zFe97Bwn@vToMr&2VI7vkA*64=0b<)1m>He>P&An)TiqcXb6SiVEpFd}GqWZH-!xOl z^bburF(xwYcKwxgB}=3Y%^`ds*yTu77O;#i`>RTOwyCx)RJUvk9nxxlsDFQ> zQ6o+?C=z?#_$|t4qsE|~@5@ZgraMJ`)*-%X0q*gXFMZv{W6O zl}1~orLaNlv+PS6Wf3{M^cSSdO>gfnHwAl3)kvxdYRgn7>JuDsD>aWanX0kb()(5# z)pE9k6Pk?juATAt{ z<4UsiVPQKYiv58UpBXfpli3Li6^t(nvM%Qw|7D}#DpvaCa65-|@}d%~>WvlX@ZPG~ z;LPkGq%%hz?8Z+&WGCf+H5}a0TXi4Q020SPG>z@7T;0z7D6>ZFvxWF7qvdm$Q!u2D zYFk^Fh`8aoBeJVC_NB3Ln={L4bS3<>y` zNnjUo7;%&nCWJGl>2szsNIsMYgdyfn;!GL^nc)E5L!#$%Xv3jD>oARST@vcozdnP( zf+|&&{Sl{ke;uzFdh6iqzN+bOj_pae(5`I_#wu|O9><%*+~OZQ>}BH7mj)l)M#%w- z?vA?6vEBV=zC4Gyn-5%A;;!X*eg1OzzCpMy%oi@0^F2hL#mruJRxG3`hCrbl|{2>|iXI{W5;f-R!zwV}1{obwz>2$aF z5*{?gzxdMz{qjkNh4~ys&vE~9#u6(CZ&D-lm~=OHT+s8+^!mYkD|ZE`;WIot;`uqA z9-d#|S*Um2#hit9k%FtX#vm5oeITe_MrYBiVC6FU3Xi+*k*^l_;!xqN;DLLo7mW+v zyO-KE9fzNbz;3dKA7+Izff&1SL94$|?*KpEazK2wgEq~v%V5-BsB>`23OWeU7{Lna zfyXl|XlRRDaC{R7SKT9dJ6qxS0C?hwpnN6nO*%5DT8Rz#?e)R2D`{nmM!!Q9#eErf zMdMclJr7r%Q+t7Urd2)XJ(k^bJ^?xNF^ijD;fNppOB!V`PB_OJ6;`GSqw;#Lg+Z)N z@vm#}7vFztUc%a}MAaKk6i$|w3)S!A+JoQpPhn5eJsO(9QJ}cc2)yrw)!aXMwz=Wo z{6>4aHCE3&bnbqE9%q>z;1gz~a#H*Nzt`gCMIY4*gMZ!~o&Db5wz0ekV)sqjR|lB~}=@JqAIaJVzvg48-5oU}uolsZI?=7hVt zd^axcN@$}uqAyF1-ddXX0%98I&d031hmQ)7z04t(+$1G&feX;ESxSCjN`4?EKg89f zIF8y~COlc_#Y$MV>)6O52yi$;Qsm+=j?!%qSgr{p6L>g$9YHwxT(}6QO_c~a?rw|e zj%k=bx2Ah%1@~THLtNwfA)tdVuvNMv|D?Cl?dlT6Hq$-&!MUn*Kf)YgM>r%QaX>3t` zVR4vKgfV9Gg59sGvMxtK;pW?OP?e81=N7;v`J98;qY@SLd`%_FQMi-`BK_d3S#E1n zUQ@|Kz5_Ebr>FbpOSN!smIT1#x?j_ll>px*O89yqX(+F8L)%_cWf<$o=P5oeyIyE5)9s{+BTKB1S~E{JP+l+#U1)P)d@ok zn3e}|Y~~wfN>)88MH-yL&aS5LD}vgLJEOFC%whB~=dS~kj|B9IUw zi*W^qm^%2m7IWkzyg+h_XHCX!j!RIDaBlrg)s-d%2fnF>&^5uCZ>lb6^2RsSC3rO5 zr4DQU|MhkzaCQ{+zVGfjvz|%PS;#h%q|XW2$R4(kgfN{wB#;0BcQIrpkjZ45nS@2) z3=npdK#&5A2t1VNRc}Bf=mpJ%sDOx|2ndJ?y9$q}Tt$rJeSg(`CTE7x=e?izdCBKY zS6A2auYdiw`qvg~s}7?gaH+o)`fJ4kR)-i!Be5kzFZ)>%aJF^)SGQjNg^BU2H%oq`x4r3@Tf-^8@sm^d zV88rw@TsF0yQ?(94^(m7?zXc~1}A-GkK+up_`TPVi7<>)Mc?%E2rMb3Z`zwb77SnZ zR>1j9$tp1nKwx9ZPh7)3n)u424qn@)#UZS?3%OjOu$XUKjw$&TKscj=JInLho=&2B z?CMv7k%#}C1>%64=lHp%TutodJX0Uk$8HM>1%Xqo<%FuU+~g4d+jO;O_bWlc+}|G9 zd9MZ&MyWQWF=VR~quHUhRVrRE<^ok(tZv(@!7_EfU~Na;;)9R`kF%nzjjDTg+LWRI7rX!gY{jC z#Kcz*OT+PP!w;4$rllaU;0pWB>p?qBSpP=Qugo>UUin7A(hoIYmM-Z7gywLut-Xge zVqdbS-Qy3fL1?n0DZa32qVL&D@9|F#erK?z4G5h}R+fVHD@5;496;RI=eK|6Y z{tDZJ>_?KtjDLTF58*~T=rh4lpWO1YUK(^t;|*@<@DeY3xu5LW(yfo!0r9r}?lQ@X z4wlHoT&K7l{hPvjeXgqUg=8T=29TYfy5IkqKlPFzdj^#_3wOMp?uI`cDE*t_EB+vR z!9lveANKwZEd}}pAKu;P+wVW__aCrlUq=d{;o2usgqH^P^9{jZ-Fx-*hG5LZclS_6 z*npOI){C=s{Osbysyr7X@ zfss>mjWBUULAL@R6-Nh0_p9PQnWDb2w7J; z$DJ}=QLGfr`=oMkaTdR>10g(#$Y6;`lA?vhN!c+GN5Ar}lsd`A%YJ)|KTMY@x>KXV z^isu|eDAGmFX&%z`0;aagpBX9_y-?21B98a4`>Z0{ReIjrO)}vO}QcT|GQ;Pxq*7} zt^+Nf<5?%V;5mrrz12;*0V=H?-s3TY#d=RsNT2wE90M}dGL+?v1j2mJ9PX6**8Eh&CrfetqV2R)VOC2%fdixh#5+yIt3e4m&f-C$f#E?tQjkfjVNSa3IpoM zv?bTo6=XqS!t&7l@X6+6CaM#$SJ@V~e_%Es04p~&#lzM+C4KoJx`iMs1c1z%LnR+^ z2Iy2O_~DwtAO4!zgdXd~^^d9qnJes5bPjCl+8!m?g zAhgub(gLF(=c;4?!S3xgKG9D4gfR^N!$u9YbW;tFNyI+*fv4UFLd^^6{7I5$YKBYJ zM#5F01X(0bk#$)2$TIQ3e}pTvO)PA+@2?QLSf#CqO-1w#+|<(21+?!w^c4h;n&5gd zq~8F(r}l_?QEzQ_LSX?l4{awBvvAWA57>G}taGgXQOjvH`Lb#~Mo6;O7k#J-v|f`n z%^Y)9-lIVNTzSoiEFJoU%OXCHD>iIG^O*P?PTH)2k-8(DlvYGJoR1=ySW+Vc|39hH z6j=ahiQg2P4We_yQcpEC-t#Pya%tojW?jhu_esRjM-}@9vC9bjIH4_$DBG>VG)BO< z7_ROX-%$iTsP@4=7l=-{IR=PphB+}+0zNu!7zRrzPYAq(Cq}Y^zPpzFlYVwLD{^lj z6&70Ka8p9`SB)yAQ9op^9UU~}hv{)vQ(oZ37_r=7 z(FO(Q3jGycn(HC#fn1rYKRnD1 zY-y%^B^MdHUM#JsGOBVyIlg^LDaNA!PAfy3Rwh!%VBi8 z-{Ows1uAaGJqT4K`tJs;e*{%ZcVK|_O5)Mp3RNYpP@5}COCR=sFI<;5ceFV^*YRgk zdPP$D0dGT`MZlLsOis8|HAQ`sdqKL#NKLJ%qu6m3>Nxc$J|8h)zC5A#Do5`@u8?4{ zD(ahnfs^muOoH%Va%o?QG~miPKPFpO_VAf*Bm0WAQvAw8rB5ICHzaWrTM-H zt%LlY@3A2dV-_ZE$X9hOSB&x(Xtr#Hd;f-Kngk`>JU`U$I^r zbO=x9`Z;qm-(zmnLx-8RATz`@a1YE++JXZQS<@tOl<&VGGMl1)P5B-jK;jL1&j+6l#eB?es_nUBsD)KnI6*OhbD&xQRnC}dqz5|yQs?hstESceFR3!)4x-af2E8nNw z-b#Y!Es@l81geH@wAiR~)V~n%Q9*$|<`SwzuT)Fq^^o+*s*5S72A$p`j949{V@L5G*KKshoPGgU?N z3>HZV!7*c5QB^@uc~mo)a!1xwr2SgLyXq2YQr%gapuCuWE0HE{{8tnwrVSi)7AG3re_gUa4C<-2eL*;J1)(?TH*sXS)HXfiJyaE zr^~6h&I;}!Vk)Rs8htBZrQ#@asU;yRHJIYRhG3O$jKz2C8B#!t67-2+hYOMKnh=t6 zM>b8*s8WM46$(8S?E=jrAz$2`kyynCew!+(K1hwPE7Rk{USPftwPq9ms2;hRGBUgb%@)1#KuN-t$M((OyD2L#`WW)qB z=sYhPs>Y9-8*AI_A@i8}K_)M1sYUseg(`LCT|bgGmL+;>T^_BB@(QXbpK4L zQIEE!t0HMD7t{+bA7YA%jiG~lKs=a%a)}**a6|U|xSY`h88Uh27@BuNT!Ho1jt;sj0l{z@skK{Icwbn@%dB(&}xIT?50ANq$W!4 zJSjIgBD^fXMZi&Dt_Y=|XzikB_Lwwvy0uLQVB#X>TZmgZ@{4X|nTtno7&K0oaeRBr zWV6@%nya}GRv@h`98baI7HCpO6w8C&Q6}sRnKTBr^RQ{;^a0PVJnleu^&iT!y&cUn zFlj@`XMjICz_&c>B0N6pkA}Aa+xb@IeqOIOIOmTZOJRxZLs>32Nuc1)v?KD>x;kxK zzBjwq6&rHh5RaNXvkM0pk88M!`Mer|#&&5Yt>AkeeElp28G3=-PL1XIB`?Vc_z=Y} z%k|P@Dc)Qj^)NP%8K92GR7STvCgu7g2g>4}PJ18>BIG4g4wVdzoleHIQ6RL(Kj}~O z%k6nj`s1dTJBx$GOc>g-1}fD3;y0}ma5AhydKC9Xq;a(?NMXvid!O|C9$v8;U_feA z;naClE^*B%lAGjnOQA6-Gyzk`Kx0Qe<dnS~=$9+EyPu+(1pX%b=_ffv-CZBbf+B20Cr0)SLf9}4p=r?u{E2En zQeQ4`Bl#@avZv6%wI5hD zAh5z-_j7+>p)VWu6YYTsLpbU$)j@wb)e*nf3s;z7(m$w=s)hR+|5ia!4aI^YP;=VXY*7U4^*CRZdTw z8o~_^0KpqE7_UuwK872X9mHd~t$&*SkqIZXg736A7jnh9a^z;FINAFb;2uay)0%uu z9Ew_|dHUv-IB;Gd^-HJHGw${c0fP@Tqoob5?gU~ehByqXfzE&KyvAI;k&zPys|SGW z+fVyLqQt}Q)b1uaGMU~(kgQJpnxUQaOHOsiXm>2=IoiYXp8e6zPyEua@CRMa{qk~c zX5uo<&?9a*CRTIv_NHh2vkm7n*ympGk28CI=i9+A`ong%KI;d5pOYe&wpkttNvd$Z zz5F@<8{Ngv{gwas?&3f95~ujBecm6{-N(D0_aFB!w{0)@%R9la6BrJ3Tm9IV{H5KM zL^W}D@q1qK``MrE@o(tvql4|*z5d8&4+F-L3NBY8aI0(c%|rbJU97 z`zdEQ-=!i*OosW5AnTUcY(4g!0Y@W%+TyBMk|=Y0?dszJgzpYONih>2rb!1A-%{q* zN>Km@cGQ$_UGTd_Tfg|bp@s8QXtT!5eTg zGbDp31FH>=9ee|0-BLC9!>um1Zy+XLa@`VHJ#2gYH?G;qg|y#j=f!p6XX!+@u5mOz z&x`%^X5~3_Ss`HIr2K_BUmZBk-A1lP>u9hDtFwOCJ}4n2dU2X~~F-((UIz)d^_EoZ`S*e122JU$FvLL}eFNNu>?-Fzl` z3JXP9#}Ti-m#M8-zfCC?yVR_w(S7M=t-RT^%_UnFmD}rn>mO1{u>i>1w|?vQFR;*d zaqOgymUHBEbS|~-0(J?NIj(GO&TewWZ&S3(4QnXimVf{a&L^E}xoteS3YayokvLJz zR5hMw{aglCAV}dk;{I~jokpGlIczU-2GnvtcZO?#Qm)zhE3_<&slCmDitFJIR)&;qUy53p>8*u6!fCFo-d@<6ADGl^8A!W%fPZacf6R|1{>tB&HP! zP@YEp&&nzMzbfc|SWZEUo7C3-=Pmo!0MZ?3|DRCZEkK7;|9`jd?WVW=Wk>%H3CH^X z+n+1yTkyZR9OUCvj(iBvpx^VwUo0f_B|UYxu51JGB*$AryDSfbi@fj}#qxb~z<@#` zV6$W9cFBgw*KooMZ(z)|FW~APCA{B9f$Cm4#0ogy8Zn8f6mB6nmBHbiNH_GQcB_Q3sIEi|%pRbDHeo9V|Za@Mk z7ShXwbfFwMuhDtx8cYFE84OE1a0;QgUIe$OPJl`L{%KhnBnbf&iTi@?^uZ9Q!z_r0 z6*lIpo1*GgJR!_6rxS(WsLA@I!hU-Uao--LJ=mAOL~+!UIF+1 zLW~WK!aj}xnTo$4PC)4ptk|RywYdUdM2RCIfx$tb@~BAO^RVr0LS2651^9M4Jbt1;}$G3Aq%D zb|rU`Y78VK)k?duKoM#mpsIaE?qrq!%`)gy^wHIV+x2)Cg6v9#C74KwuN$g6NOVk= zl~A1{-85T@gKnwpjtqB1XjefNGda;`@GX5h-h0WSy6a>y}#RV8YyS`AUSu9B+?v?Wpn zS0e*w$$wVqY;x-mSl^#)py5+^vBTN@K#0o^;P~j~8JJJdlv5C1l!0#D0%a!-)e?7J zyjJo7jkZSe!~nQoW^|5$Zzj2n9NG`tKU8{@mad`?n15O{6FJ?Ky(`&W#R|c)@B;@- zDez2GC*vDFQ^Vi?c@5oG(4KBDs`w-|>@Tf>mbLqx%KsajsI}W&P?Lbr1venebv=C( zzHjU+qk@^eZ^BeZGU6BI=*b}d@{M-N=-}egXlCaW{ln40rKQm@gQ7n%Cb)E9Ng?6` zdRb#JzP>kxEjq{A=&+zJ;C1F!BS}A=m_}?VMxY;wp9Tj6 z(7$H59g3t;ggyRKyhwJOI(Lkk-wZC&lar zNN0<>MZh%VMZ`b?T@EP6dy$TMa>Pp&9Oudy_a+BE&{i~^PK4a1=my2h4^Fvin_hVl z=J2g<^Rs7z$z(`p4)p@+nCL%AzbsJM@ohiz!s#w|{Pb79@{oGOZwnvv?UyG6gA1Ra zP!so{H6bLPitixdQ!o4v>Pa`p{KfAWHzt(?v2o1n>O#tRdFOp%6W^n%5cY%0rg_zX zu>14hyj~;uYIJ3|Ot1vWiI~PtpBPjD1WqY1JJHXC3iov3^6(RC%Xn`OegPnoQ<`&u z*(Iev)$ZC|3jgC{X?30IDR=e64$pg73P;(Md7n*8<+D1|WymvuDz zO8frA;OGMAG$(3!&R)6W!WKCVz4#Z~9=!vVz^1ij@{4uUrAw}hbzS$6M{>HcEU8OX zCHWKq)|UxW?xQA!XnvVcL0G6@p2>x?CAhE;ObY5I{MT-kOV&=sC9Njz+dt;B%5@v4 zuC|v==4Rf#zI||VFgbJAvEg+4r^&&D9(&pA=o;msCQb>C=n}PIN-($zY$Q9eY~A+Y z$RziEegzadrI1pL=1eu4yvibP@ld@zWPy z_gKc!Aom)_S3Qk?rXbgswiAN`UXz*Lwq#tfUS4$g6W zBK-)(G4%!gX+G7LHRZ<~JdTEwz$?h@L!|T{FBGha3V&0+076l5Myh^LU#y+1%;`CA5UVi4KN}WIfP$oufU6Sf)Lb9;klU3`0S=>}O-kOO0%>?7 zX^gu#ItsGS${|`JYN!eZ{f&msP8yslbR;~xN&ahgXdmfr^Hw}2f|iW9I42;4Begny zU}`F&qF}m2mlywV``s6#H*sl6ROO}xQw~Qy;o@q_btk5hRt=2RD%{Jd%-U+VObeFQ z{k)ezh_%p)WkvJ!6-x#aJASI4-9IfDHDcFLmmqTQkezH(MDr-)33L4@z zND9Q!)29=tK%yuh2zv4EO}B*^L9}q0s(#6hLo`qBAo&dl*L8xG@i|GSvT3Q7VSiQ% zR3r-211UpNMl&$+PX>k4><#w>lY{$={V~s}_nKNQw33C&xJ3JFv)S-hoPt2-x-EDa zb`@Utwio`pPanOI2A=Tk@pDm6Kb;mXQo+D}bA}vlMIgrejBt^ZNO3jbj^mQ|OtLue z?f>+WcXt2>U_F7fbQ#(wB`K~#J|+&I82w33LljK@$biwdfwGRg7~S|dr3M*QUo z7XfT6>JPtwfeDm1;ZmCE3>(ICy>dbPv&q_%1LgLT@f21#Xdw zXkdLd`)YuuC5xw3!oCi50SI+7+k=?3CLdA7|3d8Qo)zrw$#|Y8SAP8Ck>MhyW#f=D z5!i?n@jyH6@_4clu-)fL-xaG&O(6u!y}FdbRrcizH(=KjRp>CJ{+%daQCob>Dj8RS zjGfeY;;KXFCI0uZVGFR5JrT87c5dDZ!rDvb@sM#dt#HID^RRQ)kr=LmxIaBe4V zSzAPG%qfrI=K~xsYVy5Yo=hD2#JL!W+2LaJjXSpZrqBZ}BvFj<=u+?C>GB61`Gf3) zv~yF;xm6v&Mk{}kX5%fq9%2u_9vqp?)^|?7-C^e@-`V;x)nGz=FU^>EIQO&N_4uH! zKu0lX)n03WyMbX9$_h(6_PC0J#cC1Dh=`#wT)W|oVlL+RwX_9BMK&r=z8n)btHG2u zdJ)gq+c9wVN4gTSV-_Kx97j6|RVwrLsjdgcd%sSfgWR$)APp~-OH-JCQ3R)eGlY}i zuYLQ?#lh&pb~pvk{qtC9m0;gXK~Nl|x^VhBaK?*hNBToP=gTUnF`J>A+xjv?kU#2&r)F;4V1&wGZDV ziyaOk%)ylA3OCb-^d)d>-AL9=vb)Mbx<*l&wRXWb6r^}kp%+rS<7oy{j#wbPF9Zla zk>Mo{tUCkUYU5Ob(5TXWO;Np#rh_5%tDW{F@V!)7;(QmkI@|LkdYEcKOZe>|k4(c{ zY2W1*qBRh_A~|M<)qgIy&p$e7CWG5bjOEqt%S;hF>3?{GBxbhR19(@`cyC~ltVRb< z1DOUR$2*mL`=Ia(u)VXN5WAJ(_ni=c5C+DTvJxnC_qH!QmT?86{6r%Ie>T zef=aQ9`uVGh?6eeV&aFl*vC$S$*#d^&kD-KT4E412s4Pors;Q@@AQVgPXd4=+?a-4 zUnB~zC}tCyq77MA34)|}CTaBf^5ir2kK}eoF$*+`=@(w6!3U{>@cU!@WDflb%ck zVZ|ePg8F#7yCGJVorZooA1B_I&RMzxj~;Q~<=NDyx7x=iGyU$HVvwjFvLJrZr4w=J zJRLCqrQdns<@VN{!Pthoe^06~-u!ztnS%{iYM8ByixK2(BzHL}CVu#LBnUZ}pcf4m z1+cI}XXIp)5wRo<+$CPshmS|WJYgpOy877u>a^gDk&pIFhAxxX+Ce*YI21SWx|?J6 z5XK4Q#qZu~v)>Ko9dQ+8gCdtN3ytMg5YmxN;YXdMRJ$Y!UFdV-Jl7C#nTk32QKBP&uXSeP$MZa65Wa)~aV zc`#A({ee#3f4B>|k;2OAT~)KIQ-aGLP7=5?FZlW@UkeA}f9;2zKfl>2^Iv}4`RiMq zzW(gdfAEz$+~QYvo|kLJJwGW;TBwirbt>tupC+HxA!@?z(yw&L6F)onozJg7b?_C` znT7dGi@FB-FX@_#eo>Mt<52T>l7LaGgX-p|OHw4ryQX+rmJ-M<5XFC%-!Z=CHp&)_ zJlUy|=bkAkf~hruq84;cb@_88sWL5Pn55U-X4@YKYAYUlo=@Qtd&dL8)Pl~;LaXSk zEH~hE^}pll|G|rlZR9#WP!V1k;4^+VVPdvb>ZlkmXB6XZp_bXnyL{M;Y~#=Un&ygA zlji)^75DzHRh*v`1-qfh@@1?%DV9Z4cV*q=4kqm=>vdO_>fQ|A{);07_b&Ey?ghK8STvsAL7a&N(#k6)qLq$x^iP-W@7#-aJ~ti4Dbnz<#V zC#WgD@8z!P;-_5`Fp4tcJ#TJ-8sB)`L9CfyYBRIhK#9>VxXuPO(MN?-q0{2D*}n%bnet6on-CwW0VcC*wqIlKi@ z+87JVqF}L96M|%6b_14yk*DH?3E?7!;aa|z*-)DeZwhiQ^-{9-Yi^3rC}B4H!&Ft{ zeRGR@}#fQ8}IlpMoC&MIq6&?FK zllQyzBe6At;i@dB5E>?ZQ9?oX>mb0>9xVwH4%OmYxx3&(KcU!!ViQ?n>OI_3EEoF7_fnsz<|t(dHJf^oKGbXJ%{zx=9YB~0IS7iu1Z?TLc4kSvRb%N z?IkJUWF9tO;aZ|`q6Py%kBON;8UU$Y%I%~z!N7uBOy0(dIrb66^$l9B^=NUAot zx!h8?p&sCNr?a%dT>#B$co*uxx?hTQy$Jdu)_WaUa$+y8|Ak0(kn+wGxNvrhM7zoST+VuCnHoT(sfPy$SNH z7W`3Qa`b6HjGx32qfNsi4$v7yDHSMAR6v{?5qgPV0Ip#-j7B3Y;#B)I)D3hrqzb^l zQ{L>x+WI_8`ksgmuOuvlj|$0}{i)9gOJww1DhR~&uqG_}T!8%>z;dI5#{>K6N`Fw{ zMe#A>?rAYU@!#dGPZjs2PQ)lAxv(o}^nHA15`qK`dGP5RV7$ z*ykWYC&q|5jtPhOzqp2{K3SX*F|zZ+k4VOOe2o3^>CH+~Rx&vI zg|tjh{5~fe{Q@VYfc{M%O>L1WOf@Smz#6+W&}i8JOB z-u*y!-9piu!*Fq`rI4l}QqF3*s+(g-MZrA`vKQ4h$K}v3uP^$w3=2g=BnGjW<|z1P zl=p-vN%fg4H3%N7G+0r_kiN1W; z?s_8VKjhsEPK0^l-LLbR#J-+WO+k$D2iDWmEW`M2~EY>}Kijgy6?}uTf@P zp{XY?=13~~-tKD*`W4RSofR^#QLa=_c%PIf>?R#0d`j{VnHdCx!5=i+8cWKvQ2>?0j-wgTz&Im^>{-Uy+ZmC@JR^R}P?k z&eeFiTCz2B3$q;nbq>b`Q}){4S~)?{+r(XXE6LXf6>kp-m)nc&h||u@5?2l!=4S znaA;0j+TQD)#Zg-@oOjD@6>@w#Z|F)AoyJcjpPPGSwFwx_Qx{GMjq$>b9;G!^DD`$ zF;p3Zce%;W1QK44a~muLxJ8ZuY_Wn&y{lFH2W8YTQv{8p8{`Mn@**eWH%}9s!Z}4F zU)CflF@2#dH`SSd0ix46Op)(@tC|~UIDaP`k-#g+^q*3G!LpA+xu&1e%HU~&ZdJy7 zIlu*3czYn1I(2H1NRr~|>#w|}0)M8;&{~K2&IzoX66Vo3%@UyywY@;EKtwJe>*&!4(#Bp zV@V9xbITqHO6NT?vTkzy3>FeQM$$b2ko+N1tUK7NLj~RM!ICdX>fID2Rz6a z$e60`OeX+%DNYQy;2wN2TF5}`D+JlGs^H7ME!z=9Gx6^S>Wi-JNKJ+9uC?;2Gu9|W zjw^BTf0VH+cLc+cWcKPE!HB-s`|2m;eS#{9IQww=K{FN%0vrzAhrjJ$5>-BOk*LHw zCYpu-4sFb4frrGZ3vnvA1nxW@x6jV)0TQ#r#)xfw-r*)F%EGV1z)4PwWtYvFflAtQToD+a`jXEm2QK$VYZf;W_f$k(+Ng>JoXg57gBYA&4}l5o|H zctGqB6gUJWosrCZ1mVAFI41QX5$A@v+0osn5RBn>P$$&2bBGfD zQbJI@osJe=??qGn@Y_Hs*#;>g7ZOa%+D*h8G7QRQkdUYW{6xE)jI)n2&r(2yIm6sY zut^TVoRVG?-a%M_lMGHU1c?+9+XtNmgOOlhUYS~pf`MRBFi=FPU@#I4nwVP|L0ch` zK{$0`B!ec4To}pVfRhyR5Qq*wUL+l4m{&o#WbsG}QP*roRcxq?&E&fEbVOwJ=~ z<9i2$;1jgrR^pQPWWtAd=a~>Df@ID`#2v1QJuPZDD%hRQr@YidrX|UL&{u(afg&WcHDBV#{k=ML)y&jkbg$vU^Z zkepkd_u@M_rZ+qzu7(oNhM64gGsEJmtsLD(!@ca`DF5Nk<)PsVpE%z=^6;S)k2MnS(__*`L}se;Eu3ZW~}LoU027GgxD1+zCcHnP=Q-Z(xJJ zR&W+r`j5AQ>6stZu@v$Bw}NSduOl6sYnpTHT0%)J;xhCybr^4htmS>zzvJU-h>e-U-IAOZSWK1i8tV<<$DJ1Q=XC;)C$1jI$gL zj82woX&Nyyj(2`A!oK|uXGnhIT8H8;t(NZ52G01!YwhNJDB;=ZMF99|xQ#-+ald_F zUofoSU3DoqFGp$MmJ#-yeZhcZW@%xNW0ZDITf)+CIMz@Hz-GeOk_W{F%@T$*n)k5T z*8d?`UN{qSZ!gy%ku~^l7Kv+mb_`|4``r8B_+9sOE?+;~kCVP5Ayl~4Bz8`F4_Cd; zrH`K#-RaPIj^0*?^a)K;qJ|U9cqV}w_5B{Uj|JiL#*X`AQ2WW#fRQc|g}qlE-VCL@ z$f}Yg8Hb+>C|;(r2~~NSX?6vKPct#(zKqrvPGirQ`k>yWOp*oRuZ;a)e+p;Sue8_~)WUTp9a9HpQV<-NJ6OvdDv*u61utncw zkp~l>k~vbP@wbzA(Pu*J-`(;dV&9cSp+b7X!a8+EI$)-K_D}G8Y{PehB_f43jkbc+ zOfhgn%e%pu5aRRi208!so%`PnE)M+f+QMIglPY3%Vq{42>|cUY$B1F*+iup|9kdVe}}!kXUzw}dH!|w!ViL>RQ{z8g5!su*`dPG5WssTtX##=Lbdo& z54d=ztv&{f3||yT`m-BgYGpMuPVM-Bx%-4o zjC{GPkSzOCnc$Np`%vBMD7w@fNV*GGeHc3l3pHQaKb($)NSspiM*IZFmr`3v0k36Z zU1Svhj4!3}FQoBL9*jTQ)p&o9WO(Y}2N(Z~G{euk#6Ov_zxT~>uAJ)?n7ZoQi<0?v zdt_h^AN&lK<+sY?t9@>rVO_>u*9K!fe014MF0_{f=KSE@ORaBA|H1EG>Uo{S8ZI| z(71Bd+QtU^?MgFy=!vH;UL3WoJ3BgKPhGoe?W(p_%bQo7*Vv$n?5$Zd+TJtX46tF1nPVsPHud%kHD)R80nqhs@HlDq_g)+`mD?Ph@l<8-;^)w>~%|3Z{(tK~>+D#PS5UpR{+}PIEXiw@( zvoEhPJ%xZOdqgiY&i}9f5(deYo zF?QKe<_NpLA6Z>VYkQmQuvKYAXEd){u{vrycYUMR+Sbyzd`$v~tqaZN_RGD^-S#_u z%whJoeN3)q9ks1n8Le+#zM|3A9%BaCulJ|@*Y-8F_RaogNVPDU=3mmsthA5zHJ=|_ zowj{bV@vC*b!(#pqtW>2l*aXKjcd+mY>B2EGcKAkY4Xwb`vXk>-jk+`n=)zA5&Cn~ zco+T50CTRrv!BV?$Br>Wr$Q~Kw>Gw&POr8#LNcc=ofw}sf8x@3?y?2Zisft9((h+9 zM#~!-=%(c>NfWiUEpKVF!wxZr+Uh}Oq}@E#^syi5XXe?aLrmf1=wFAiy4q`P+_156 ztq8$U+d5jdvU%Ov-kMddt?G$|3+9|`ubXBfd(jXx#6H&Fj2ymVT|;Bk+_?74wzFCz zfcFv_O}pJus$DX`jIxLH2eLi`%+dD5T2p723^Wrf8#b+Rm5W}5xOK>FguIy1Q6sY-bOGKwqc>p1%$^lWtLm*kQ+- z33gM?Otb^);I-MqOuvDS3!{cca3wU(UpOyXwPyL5jrPnsbK=qG(MQq3B`L-xEL*oO zTC;rZxzWNo@v_!v*Bg+oOS|E?>K%(RGEr zw+_6&J_LYz<;;LF6S^<^j79V3bZNv%^=7!;H`5H6hLAaZ*~#&Vr_5V&@(HIeJn^)- zCoenwge4~~iA0R88`rO2*V5M5(81rWvslI700W$5Ck=zHpUjzZ+i$2DRkm_n3*7a@ zNMuUuFf*~DVYyJyVBe}UGiDUK-tqeK=JjVSr|%&6#%8ZG1g9)mIB!|!y6wxOk*N9M zroX*o7;Swt0{ItDHU0W`$vQh;Joog;N7+e-ngM025V7Z28hZHf&dHX>vllHyw03Hr zop>0s`nW^Q&_j~WM51)`CG2XS&Y2|>+7MY#GwA4CaR9 zCHY6moA9AWLPrR#1q5`EiH{J+MJvRO^qv7d#A2#JZC*|$c4tW4H9M|G68nf zaFe$?MwmgPx>Vv|>aLa(XF&Py#Aa-_Ip!@~ym;=(odB~ZjWc8HM~B0LpE?v4gunau z?}CC9s}A>vC2Gpa=FULPn%}wP20LiHfw)_%?dL{7lDEXBuAy@l6?_T^>jY7QcTf{X zt6HNrc&d4M%bAT`pi;)u=bkucVSHle{1#N_ZS@2*%sxKSOttm1OkKWn#dANpG(K@o zmux>f)(k$hbGq&U6hYP6KTkkpKRn8uYPZcY6DM@e_>Y-w)mkLYTKk!SX6Wc{^K{p( zf1U_i^cjP~`PghTD%Uw*cWia_anQj8;o%3Nvx_Ey6NMdRc3YO~r|ufHuigw8 zN&OpJ8>2H4k?FOrUA5kufIx=`oCs-+jy*Oy+&0fKV~*|8?0?k%-rRHAT985LoR-Gc zR@h1=fL)AUvD3#R*I%4t2LJ20Z=Yoj>8fo;Pr#-+W3H*~!e;YNjz4z#vL&aVJbzXf z;`-w(GogQ~`@F`3t(zH5w#((q8g$b2@SoWMh7nLz$l38n)%tK5gF8kV{ zb4@S%vB_qGy?CA(-nGv@HU(P!*nBgzYeV)=F~{~UcBV{(1XuSTZkE_9k1)fAj9=wd zk7yOSEN_wVZ+!E*GrbtxIp9+=9XHn;WpAHr7TCe_ z%#pn(D9yq((s)wi81#3}GplX=e8l+K^UeDH%bT0MlN%d0uF&U%tlQQ_cKia zEVRQGnvd8m3qj;F3(+UDjtB0mk2fdSmyb7F?YWE0@%G1y%#=Yrym65?t~dVaI{>3x2e z_u_Y@DgCbZMf^&?>%Ewt?>lFG%>2RxyRNkZK4tDb{+b1zw}syg{7S<&@xFA{3EtBA z{Fd^IPhddhdAo>zlHWdlrD1QOJ>=84SN2_JkNdP4Q+^v$D3@jI+E1Ht6RxD6dQ=at zo^hz>l@0g2U*tTG?Hk_7!#wZ65YPK_9d!-#yx$D+ylZQB_Wq2i_cM(jUAWRNU2YbW zDdPp6Us+k1$pk_2;w3LWZhLl{{-J*7j~Wa|w66xj4F4b%jJLa74)S6|Yd>dzmC0_=LkXo-Q29jtITpULRLZg+|LkQ-9kzo_E^?6zF^2P=38sF7MHW1o$_UpW^iIwluCU;R+Yy zc{_i9o%w6V?E0H;-?-77WOm@Dnr_W1vxmDG@3Ll;xq&M!pR#6+x#56sS1sCv>AHz#Pu!fR!nSdY+gBW zWy3_T9B=g6jm^ztxR3fG)@s`!H=EhP-iz!RH=B_s zfAQiV>(_YkT|5t|5%}&;mHVqO-+rkyJ-v9Z(g2u;pOt@AJ@wb)FW;`^ibp^6;xAre zpTF4*ANF(JdkWQk`sgqJs=WA;%_Pc_c(bj$#SE@~Q14Xm=w@4gi&;AOflGNm$BSR# zS*G<$2k5uUg6!A(+R0yJWbwi+=2v#_7tN>3X9Dc^{$o zCwbq^PygnS_FSIl@%t>l^Z8w1AKGTd7L>G(&q}(9=t{y%`JIu5KS_8+8a|8gS!uY9 z@bWa=PPjDjNyn}Fa5-xZT@UkZT@Cf0RY4~Zv4QY4}Vf}j- zAk_}hTd^Gl!tMMn;&(AW{cE66N_Ppr(sX3^R1}}R6DLnP{qz;~_g^yk$wI;mekx!8 zcBT0*CtRBU3f`~eca@!as~PLiev`|#v-MWSod;B7^*Cw;o|37xd?fn1% literal 238950 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%0D+_%Fk{!2vD&A;@x8qmMnqHJVB`%7 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 z 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 1.0.0" - } - }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, - "config-chain": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.11.tgz", - "integrity": "sha1-q6CXR9++TD5w52am5BWG4YWfxvI=", - "requires": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" - }, "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", @@ -224,153 +106,11 @@ "assert-plus": "^1.0.0" } }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "decompress": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/decompress/-/decompress-4.2.0.tgz", - "integrity": "sha1-eu3YVCflqS2s/lVnSnxQXpbQH50=", - "requires": { - "decompress-tar": "^4.0.0", - "decompress-tarbz2": "^4.0.0", - "decompress-targz": "^4.0.0", - "decompress-unzip": "^4.0.1", - "graceful-fs": "^4.1.10", - "make-dir": "^1.0.0", - "pify": "^2.3.0", - "strip-dirs": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" - } - } - }, - "decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", - "requires": { - "mimic-response": "^1.0.0" - } - }, - "decompress-tar": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/decompress-tar/-/decompress-tar-4.1.1.tgz", - "integrity": "sha512-JdJMaCrGpB5fESVyxwpCx4Jdj2AagLmv3y58Qy4GE6HMVjWz1FeVQk1Ct4Kye7PftcdOo/7U7UKzYBJgqnGeUQ==", - "requires": { - "file-type": "^5.2.0", - "is-stream": "^1.1.0", - "tar-stream": "^1.5.2" - } - }, - "decompress-tarbz2": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/decompress-tarbz2/-/decompress-tarbz2-4.1.1.tgz", - "integrity": "sha512-s88xLzf1r81ICXLAVQVzaN6ZmX4A6U4z2nMbOwobxkLoIIfjVMBg7TeguTUXkKeXni795B6y5rnvDw7rxhAq9A==", - "requires": { - "decompress-tar": "^4.1.0", - "file-type": "^6.1.0", - "is-stream": "^1.1.0", - "seek-bzip": "^1.0.5", - "unbzip2-stream": "^1.0.9" - }, - "dependencies": { - "file-type": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-6.2.0.tgz", - "integrity": "sha512-YPcTBDV+2Tm0VqjybVd32MHdlEGAtuxS3VAYsumFokDSMG+ROT5wawGlnHDoz7bfMcMDt9hxuXvXwoKUx2fkOg==" - } - } - }, - "decompress-targz": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/decompress-targz/-/decompress-targz-4.1.1.tgz", - "integrity": "sha512-4z81Znfr6chWnRDNfFNqLwPvm4db3WuZkqV+UgXQzSngG3CEKdBkw5jrv3axjjL96glyiiKjsxJG3X6WBZwX3w==", - "requires": { - "decompress-tar": "^4.1.1", - "file-type": "^5.2.0", - "is-stream": "^1.1.0" - } - }, - "decompress-unzip": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/decompress-unzip/-/decompress-unzip-4.0.1.tgz", - "integrity": "sha1-3qrM39FK6vhVePczroIQ+bSEj2k=", - "requires": { - "file-type": "^3.8.0", - "get-stream": "^2.2.0", - "pify": "^2.3.0", - "yauzl": "^2.4.2" - }, - "dependencies": { - "file-type": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", - "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=" - }, - "get-stream": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-2.3.1.tgz", - "integrity": "sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=", - "requires": { - "object-assign": "^4.0.1", - "pinkie-promise": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" - } - } - }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "detect-indent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", - "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=" - }, - "download": { - "version": "6.2.5", - "resolved": "https://registry.npmjs.org/download/-/download-6.2.5.tgz", - "integrity": "sha512-DpO9K1sXAST8Cpzb7kmEhogJxymyVUd5qz/vCOSyvwtp2Klj2XcDt5YUuasgxka44SxF0q5RriKIwJmQHG2AuA==", - "requires": { - "caw": "^2.0.0", - "content-disposition": "^0.5.2", - "decompress": "^4.0.0", - "ext-name": "^5.0.0", - "file-type": "5.2.0", - "filenamify": "^2.0.0", - "get-stream": "^3.0.0", - "got": "^7.0.0", - "make-dir": "^1.0.0", - "p-event": "^1.0.0", - "pify": "^3.0.0" - } - }, - "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" - }, "ecc-jsbn": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", @@ -381,49 +121,6 @@ "safer-buffer": "^2.1.0" } }, - "end-of-stream": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", - "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", - "requires": { - "once": "^1.4.0" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - }, - "ext-list": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/ext-list/-/ext-list-2.2.2.tgz", - "integrity": "sha512-u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA==", - "requires": { - "mime-db": "^1.28.0" - } - }, - "ext-name": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ext-name/-/ext-name-5.0.0.tgz", - "integrity": "sha512-yblEwXAbGv1VQDmow7s38W77hzAgJAO50ztBLMcUyUBfxv1HC+LGwtiEN+Co6LtlqT/5uwVOxsD4TNIilWhwdQ==", - "requires": { - "ext-list": "^2.0.0", - "sort-keys-length": "^1.0.0" - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", @@ -439,34 +136,6 @@ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" }, - "fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", - "requires": { - "pend": "~1.2.0" - } - }, - "file-type": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-5.2.0.tgz", - "integrity": "sha1-LdvqfHP/42No365J3DOMBYwritY=" - }, - "filename-reserved-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz", - "integrity": "sha1-q/c9+rc10EVECr/qLZHzieu/oik=" - }, - "filenamify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/filenamify/-/filenamify-2.1.0.tgz", - "integrity": "sha512-ICw7NTT6RsDp2rnYKVd8Fu4cr6ITzGy3+u4vUujPkabyaz+03F24NWEX7fs5fp+kBonlaqPH8fAO2NM+SXt/JA==", - "requires": { - "filename-reserved-regex": "^2.0.0", - "strip-outer": "^1.0.0", - "trim-repeated": "^1.0.0" - } - }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", @@ -482,11 +151,6 @@ "mime-types": "^2.1.12" } }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" - }, "fs-minipass": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", @@ -500,55 +164,6 @@ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, - "fstream": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", - "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=", - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - } - }, - "fstream-ignore": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/fstream-ignore/-/fstream-ignore-1.0.5.tgz", - "integrity": "sha1-nDHa40dnAY/h0kmyTa2mfQktoQU=", - "requires": { - "fstream": "^1.0.0", - "inherits": "2", - "minimatch": "^3.0.0" - } - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "get-proxy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/get-proxy/-/get-proxy-2.1.0.tgz", - "integrity": "sha512-zmZIaQTWnNQb4R4fJUEp/FC51eZsc6EkErspy3xtIYStaq8EB/hDIWipxsal+E8rz0qD7f2sL/NA9Xee4RInJw==", - "requires": { - "npm-conf": "^1.1.0" - } - }, - "get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" - }, "getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", @@ -570,36 +185,11 @@ "path-is-absolute": "^1.0.0" } }, - "got": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", - "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", - "requires": { - "decompress-response": "^3.2.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "is-plain-obj": "^1.1.0", - "is-retry-allowed": "^1.0.0", - "is-stream": "^1.0.0", - "isurl": "^1.0.0-alpha5", - "lowercase-keys": "^1.0.0", - "p-cancelable": "^0.3.0", - "p-timeout": "^1.1.1", - "safe-buffer": "^5.0.1", - "timed-out": "^4.0.0", - "url-parse-lax": "^1.0.0", - "url-to-options": "^1.0.1" - } - }, "graceful-fs": { "version": "4.1.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" - }, - "graceful-readlink": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", - "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "optional": true }, "har-schema": { "version": "2.0.0", @@ -615,24 +205,6 @@ "har-schema": "^2.0.0" } }, - "has-symbol-support-x": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", - "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==" - }, - "has-to-string-tag-x": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", - "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", - "requires": { - "has-symbol-support-x": "^1.4.1" - } - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", @@ -643,16 +215,6 @@ "sshpk": "^1.7.0" } }, - "ieee754": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz", - "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==" - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" - }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -667,73 +229,16 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-natural-number": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-natural-number/-/is-natural-number-4.0.1.tgz", - "integrity": "sha1-q5124dtM7VHjXeDHLr7PCfc0zeg=" - }, - "is-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz", - "integrity": "sha1-iVJojF7C/9awPsyF52ngKQMINHA=" - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=" - }, - "is-retry-allowed": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", - "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=" - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" - }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, - "isurl": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", - "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", - "requires": { - "has-to-string-tag-x": "^1.2.0", - "is-object": "^1.0.1" - } - }, "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", @@ -774,42 +279,6 @@ "verror": "1.10.0" } }, - "load-json-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" - } - } - }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" - }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "requires": { - "pify": "^3.0.0" - } - }, - "mime-db": { - "version": "1.36.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.36.0.tgz", - "integrity": "sha512-L+xvyD9MkoYMXb1jAmzI/lWYAxAMCPvIBSWur0PZ5nOf5euahRLVqH//FKW9mWp2lkqUgYiXPgkzfMUFi4zVDw==" - }, "mime-types": { "version": "2.1.19", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.19.tgz", @@ -825,11 +294,6 @@ } } }, - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" - }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -838,11 +302,6 @@ "brace-expansion": "^1.1.7" } }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - }, "minipass": { "version": "2.3.4", "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.4.tgz", @@ -882,68 +341,11 @@ } } }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "napa": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/napa/-/napa-3.0.0.tgz", - "integrity": "sha1-7DqP3gcZC2ny/kNMOVo+aUaEG1Y=", - "requires": { - "download": "^6.2.2", - "extend": "^3.0.1", - "load-json-file": "^2.0.0", - "minimist": "^1.2.0", - "mkdirp": "^0.5.1", - "npm-cache-filename": "^1.0.2", - "npmlog": "^4.1.0", - "rimraf": "^2.6.1", - "tar-pack": "^3.4.0", - "write-json-file": "^2.2.0" - } - }, - "npm-cache-filename": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/npm-cache-filename/-/npm-cache-filename-1.0.2.tgz", - "integrity": "sha1-3tMGxbC/yHCp6fr4I7xfKD4FrhE=" - }, - "npm-conf": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/npm-conf/-/npm-conf-1.1.3.tgz", - "integrity": "sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==", - "requires": { - "config-chain": "^1.1.11", - "pify": "^3.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, "oauth-sign": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -952,88 +354,16 @@ "wrappy": "1" } }, - "p-cancelable": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", - "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==" - }, - "p-event": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-event/-/p-event-1.3.0.tgz", - "integrity": "sha1-jmtPT2XHK8W2/ii3XtqHT5akoIU=", - "requires": { - "p-timeout": "^1.1.1" - } - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" - }, - "p-timeout": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", - "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", - "requires": { - "p-finally": "^1.0.0" - } - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "requires": { - "error-ex": "^1.2.0" - } - }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, - "pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" - }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "requires": { - "pinkie": "^2.0.0" - } - }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" - }, - "process-nextick-args": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" - }, - "proto-list": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", - "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=" - }, "psl": { "version": "1.1.29", "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.29.tgz", @@ -1049,20 +379,6 @@ "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" }, - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, "request": { "version": "2.88.0", "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", @@ -1120,40 +436,6 @@ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, - "seek-bzip": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/seek-bzip/-/seek-bzip-1.0.5.tgz", - "integrity": "sha1-z+kXyz0nS8/6x5J1ivUxc+sfq9w=", - "requires": { - "commander": "~2.8.1" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "sort-keys": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", - "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", - "requires": { - "is-plain-obj": "^1.0.0" - } - }, - "sort-keys-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sort-keys-length/-/sort-keys-length-1.0.1.tgz", - "integrity": "sha1-nLb09OnkgVWmqgZx7dM2/xR5oYg=", - "requires": { - "sort-keys": "^1.0.0" - } - }, "sshpk": { "version": "1.14.2", "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", @@ -1170,63 +452,6 @@ "tweetnacl": "~0.14.0" } }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" - }, - "strip-dirs": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/strip-dirs/-/strip-dirs-2.1.0.tgz", - "integrity": "sha512-JOCxOeKLm2CAS73y/U4ZeZPTkE+gNVCzKt7Eox84Iej1LT/2pTWYpZKJuxwQpvX1LiZb1xokNR7RLfuBAa7T3g==", - "requires": { - "is-natural-number": "^4.0.1" - } - }, - "strip-outer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz", - "integrity": "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==", - "requires": { - "escape-string-regexp": "^1.0.2" - } - }, - "tar": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", - "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", - "requires": { - "block-stream": "*", - "fstream": "^1.0.2", - "inherits": "2" - } - }, "tar-dependency": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/tar-dependency/-/tar-dependency-0.0.3.tgz", @@ -1266,50 +491,6 @@ } } }, - "tar-pack": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/tar-pack/-/tar-pack-3.4.1.tgz", - "integrity": "sha512-PPRybI9+jM5tjtCbN2cxmmRU7YmqT3Zv/UDy48tAh2XRkLa9bAORtSWLkVc13+GJF+cdTh1yEnHEk3cpTaL5Kg==", - "requires": { - "debug": "^2.2.0", - "fstream": "^1.0.10", - "fstream-ignore": "^1.0.5", - "once": "^1.3.3", - "readable-stream": "^2.1.4", - "rimraf": "^2.5.1", - "tar": "^2.2.1", - "uid-number": "^0.0.6" - } - }, - "tar-stream": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.1.tgz", - "integrity": "sha512-IFLM5wp3QrJODQFPm6/to3LJZrONdBY/otxcvDIQzu217zKye6yVR3hhi9lAjrC2Z+m/j5oDxMPb1qcd8cIvpA==", - "requires": { - "bl": "^1.0.0", - "buffer-alloc": "^1.1.0", - "end-of-stream": "^1.0.0", - "fs-constants": "^1.0.0", - "readable-stream": "^2.3.0", - "to-buffer": "^1.1.0", - "xtend": "^4.0.0" - } - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" - }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=" - }, - "to-buffer": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz", - "integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==" - }, "tough-cookie": { "version": "2.4.3", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", @@ -1319,14 +500,6 @@ "punycode": "^1.4.1" } }, - "trim-repeated": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz", - "integrity": "sha1-42RqLqTokTEr9+rObPsFOAvAHCE=", - "requires": { - "escape-string-regexp": "^1.0.2" - } - }, "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", @@ -1341,38 +514,6 @@ "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", "optional": true }, - "uid-number": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/uid-number/-/uid-number-0.0.6.tgz", - "integrity": "sha1-DqEOgDXo61uOREnwbaHHMGY7qoE=" - }, - "unbzip2-stream": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.2.5.tgz", - "integrity": "sha512-izD3jxT8xkzwtXRUZjtmRwKnZoeECrfZ8ra/ketwOcusbZEp4mjULMnJOCfTDZBgGQAAY1AJ/IgxcwkavcX9Og==", - "requires": { - "buffer": "^3.0.1", - "through": "^2.3.6" - } - }, - "url-parse-lax": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", - "requires": { - "prepend-http": "^1.0.1" - } - }, - "url-to-options": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", - "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=" - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, "uuid": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", @@ -1388,70 +529,15 @@ "extsprintf": "^1.2.0" } }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "requires": { - "string-width": "^1.0.2 || 2" - } - }, "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, - "write-file-atomic": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz", - "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "write-json-file": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-2.3.0.tgz", - "integrity": "sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8=", - "requires": { - "detect-indent": "^5.0.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "pify": "^3.0.0", - "sort-keys": "^2.0.0", - "write-file-atomic": "^2.0.0" - }, - "dependencies": { - "sort-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", - "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", - "requires": { - "is-plain-obj": "^1.0.0" - } - } - } - }, - "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" - }, "yallist": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=" - }, - "yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", - "requires": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } } } } diff --git a/codecs/optipng/package.json b/codecs/optipng/package.json index 6fc2b4bd..cdac8b50 100644 --- a/codecs/optipng/package.json +++ b/codecs/optipng/package.json @@ -1,9 +1,9 @@ { "name": "optipng", "scripts": { - "install": "tar-dependency install && napa", + "install": "tar-dependency install", "build": "npm run build:wasm", - "build:wasm": "docker run --rm -v $(pwd):/src -e SKIP_ZLIB=\"${SKIP_ZLIB}\" -e SKIP_LIBPNG=\"${SKIP_LIBPNG}\" trzeci/emscripten-upstream ./build.sh" + "build:wasm": "docker run --rm -v $(pwd):/src trzeci/emscripten-upstream ./build.sh" }, "tarDependencies": { "node_modules/optipng": { @@ -11,12 +11,7 @@ "strip": 1 } }, - "napa": { - "libpng": "emscripten-ports/libpng", - "zlib": "emscripten-ports/zlib" - }, "dependencies": { - "napa": "3.0.0", "tar-dependency": "0.0.3" } }