@rpack-dev/core 0.1.5 → 0.1.6-dev-0879fba

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
1
  /*! For license information please see rpack-core.bundle.js.LICENSE.txt */
2
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.RPack=t():e.RPack=t()}(globalThis,()=>(()=>{var e={710:(e,t,r)=>{e.exports=function e(t,r,n){function i(a,o){if(!r[a]){if(!t[a]){if(s)return s(a,!0);var h=new Error("Cannot find module '"+a+"'");throw h.code="MODULE_NOT_FOUND",h}var l=r[a]={exports:{}};t[a][0].call(l.exports,function(e){return i(t[a][1][e]||e)},l,l.exports,e,t,r,n)}return r[a].exports}for(var s=void 0,a=0;a<n.length;a++)i(n[a]);return i}({1:[function(e,t,r){"use strict";var n=e("./utils"),i=e("./support"),s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";r.encode=function(e){for(var t,r,i,a,o,h,l,u=[],c=0,d=e.length,f=d,p="string"!==n.getTypeOf(e);c<e.length;)f=d-c,i=p?(t=e[c++],r=c<d?e[c++]:0,c<d?e[c++]:0):(t=e.charCodeAt(c++),r=c<d?e.charCodeAt(c++):0,c<d?e.charCodeAt(c++):0),a=t>>2,o=(3&t)<<4|r>>4,h=1<f?(15&r)<<2|i>>6:64,l=2<f?63&i:64,u.push(s.charAt(a)+s.charAt(o)+s.charAt(h)+s.charAt(l));return u.join("")},r.decode=function(e){var t,r,n,a,o,h,l=0,u=0,c="data:";if(e.substr(0,5)===c)throw new Error("Invalid base64 input, it looks like a data url.");var d,f=3*(e=e.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(e.charAt(e.length-1)===s.charAt(64)&&f--,e.charAt(e.length-2)===s.charAt(64)&&f--,f%1!=0)throw new Error("Invalid base64 input, bad content length.");for(d=i.uint8array?new Uint8Array(0|f):new Array(0|f);l<e.length;)t=s.indexOf(e.charAt(l++))<<2|(a=s.indexOf(e.charAt(l++)))>>4,r=(15&a)<<4|(o=s.indexOf(e.charAt(l++)))>>2,n=(3&o)<<6|(h=s.indexOf(e.charAt(l++))),d[u++]=t,64!==o&&(d[u++]=r),64!==h&&(d[u++]=n);return d}},{"./support":30,"./utils":32}],2:[function(e,t,r){"use strict";var n=e("./external"),i=e("./stream/DataWorker"),s=e("./stream/Crc32Probe"),a=e("./stream/DataLengthProbe");function o(e,t,r,n,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=r,this.compression=n,this.compressedContent=i}o.prototype={getContentWorker:function(){var e=new i(n.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new a("data_length")),t=this;return e.on("end",function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),e},getCompressedWorker:function(){return new i(n.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},o.createWorkerFrom=function(e,t,r){return e.pipe(new s).pipe(new a("uncompressedSize")).pipe(t.compressWorker(r)).pipe(new a("compressedSize")).withStreamInfo("compression",t)},t.exports=o},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,r){"use strict";var n=e("./stream/GenericWorker");r.STORE={magic:"\0\0",compressWorker:function(){return new n("STORE compression")},uncompressWorker:function(){return new n("STORE decompression")}},r.DEFLATE=e("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,r){"use strict";var n=e("./utils"),i=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();t.exports=function(e,t){return void 0!==e&&e.length?"string"!==n.getTypeOf(e)?function(e,t,r){var n=i,s=0+r;e^=-1;for(var a=0;a<s;a++)e=e>>>8^n[255&(e^t[a])];return-1^e}(0|t,e,e.length):function(e,t,r){var n=i,s=0+r;e^=-1;for(var a=0;a<s;a++)e=e>>>8^n[255&(e^t.charCodeAt(a))];return-1^e}(0|t,e,e.length):0}},{"./utils":32}],5:[function(e,t,r){"use strict";r.base64=!1,r.binary=!1,r.dir=!1,r.createFolders=!0,r.date=null,r.compression=null,r.compressionOptions=null,r.comment=null,r.unixPermissions=null,r.dosPermissions=null},{}],6:[function(e,t,r){"use strict";var n;n="undefined"!=typeof Promise?Promise:e("lie"),t.exports={Promise:n}},{lie:37}],7:[function(e,t,r){"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,i=e("pako"),s=e("./utils"),a=e("./stream/GenericWorker"),o=n?"uint8array":"array";function h(e,t){a.call(this,"FlateWorker/"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}r.magic="\b\0",s.inherits(h,a),h.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(s.transformTo(o,e.data),!1)},h.prototype.flush=function(){a.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},h.prototype.cleanUp=function(){a.prototype.cleanUp.call(this),this._pako=null},h.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},r.compressWorker=function(e){return new h("Deflate",e)},r.uncompressWorker=function(){return new h("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,r){"use strict";function n(e,t){var r,n="";for(r=0;r<t;r++)n+=String.fromCharCode(255&e),e>>>=8;return n}function i(e,t,r,i,a,u){var c,d,f=e.file,p=e.compression,g=u!==o.utf8encode,m=s.transformTo("string",u(f.name)),_=s.transformTo("string",o.utf8encode(f.name)),y=f.comment,w=s.transformTo("string",u(y)),v=s.transformTo("string",o.utf8encode(y)),b=_.length!==f.name.length,k=v.length!==y.length,x="",E="",R="",S=f.dir,I=f.date,P={crc32:0,compressedSize:0,uncompressedSize:0};t&&!r||(P.crc32=e.crc32,P.compressedSize=e.compressedSize,P.uncompressedSize=e.uncompressedSize);var z=0;t&&(z|=8),g||!b&&!k||(z|=2048);var A=0,C=0;S&&(A|=16),"UNIX"===a?(C=798,A|=function(e,t){var r=e;return e||(r=t?16893:33204),(65535&r)<<16}(f.unixPermissions,S)):(C=20,A|=function(e){return 63&(e||0)}(f.dosPermissions)),c=I.getUTCHours(),c<<=6,c|=I.getUTCMinutes(),c<<=5,c|=I.getUTCSeconds()/2,d=I.getUTCFullYear()-1980,d<<=4,d|=I.getUTCMonth()+1,d<<=5,d|=I.getUTCDate(),b&&(E=n(1,1)+n(h(m),4)+_,x+="up"+n(E.length,2)+E),k&&(R=n(1,1)+n(h(w),4)+v,x+="uc"+n(R.length,2)+R);var O="";return O+="\n\0",O+=n(z,2),O+=p.magic,O+=n(c,2),O+=n(d,2),O+=n(P.crc32,4),O+=n(P.compressedSize,4),O+=n(P.uncompressedSize,4),O+=n(m.length,2),O+=n(x.length,2),{fileRecord:l.LOCAL_FILE_HEADER+O+m+x,dirRecord:l.CENTRAL_FILE_HEADER+n(C,2)+O+n(w.length,2)+"\0\0\0\0"+n(A,4)+n(i,4)+m+x+w}}var s=e("../utils"),a=e("../stream/GenericWorker"),o=e("../utf8"),h=e("../crc32"),l=e("../signature");function u(e,t,r,n){a.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=r,this.encodeFileName=n,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}s.inherits(u,a),u.prototype.push=function(e){var t=e.meta.percent||0,r=this.entriesCount,n=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,a.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:r?(t+100*(r-n-1))/r:100}}))},u.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var r=i(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:r.fileRecord,meta:{percent:0}})}else this.accumulate=!0},u.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,r=i(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(r.dirRecord),t)this.push({data:function(e){return l.DATA_DESCRIPTOR+n(e.crc32,4)+n(e.compressedSize,4)+n(e.uncompressedSize,4)}(e),meta:{percent:100}});else for(this.push({data:r.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},u.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t<this.dirRecords.length;t++)this.push({data:this.dirRecords[t],meta:{percent:100}});var r=this.bytesWritten-e,i=function(e,t,r,i,a){var o=s.transformTo("string",a(i));return l.CENTRAL_DIRECTORY_END+"\0\0\0\0"+n(e,2)+n(e,2)+n(t,4)+n(r,4)+n(o.length,2)+o}(this.dirRecords.length,r,e,this.zipComment,this.encodeFileName);this.push({data:i,meta:{percent:100}})},u.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},u.prototype.registerPrevious=function(e){this._sources.push(e);var t=this;return e.on("data",function(e){t.processChunk(e)}),e.on("end",function(){t.closedSource(t.previous.streamInfo),t._sources.length?t.prepareNextSource():t.end()}),e.on("error",function(e){t.error(e)}),this},u.prototype.resume=function(){return!!a.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},u.prototype.error=function(e){var t=this._sources;if(!a.prototype.error.call(this,e))return!1;for(var r=0;r<t.length;r++)try{t[r].error(e)}catch(e){}return!0},u.prototype.lock=function(){a.prototype.lock.call(this);for(var e=this._sources,t=0;t<e.length;t++)e[t].lock()},t.exports=u},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(e,t,r){"use strict";var n=e("../compressions"),i=e("./ZipFileWorker");r.generateWorker=function(e,t,r){var s=new i(t.streamFiles,r,t.platform,t.encodeFileName),a=0;try{e.forEach(function(e,r){a++;var i=function(e,t){var r=e||t,i=n[r];if(!i)throw new Error(r+" is not a valid compression method !");return i}(r.options.compression,t.compression),o=r.options.compressionOptions||t.compressionOptions||{},h=r.dir,l=r.date;r._compressWorker(i,o).withStreamInfo("file",{name:e,dir:h,date:l,comment:r.comment||"",unixPermissions:r.unixPermissions,dosPermissions:r.dosPermissions}).pipe(s)}),s.entriesCount=a}catch(e){s.error(e)}return s}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(e,t,r){"use strict";function n(){if(!(this instanceof n))return new n;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files=Object.create(null),this.comment=null,this.root="",this.clone=function(){var e=new n;for(var t in this)"function"!=typeof this[t]&&(e[t]=this[t]);return e}}(n.prototype=e("./object")).loadAsync=e("./load"),n.support=e("./support"),n.defaults=e("./defaults"),n.version="3.10.1",n.loadAsync=function(e,t){return(new n).loadAsync(e,t)},n.external=e("./external"),t.exports=n},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(e,t,r){"use strict";var n=e("./utils"),i=e("./external"),s=e("./utf8"),a=e("./zipEntries"),o=e("./stream/Crc32Probe"),h=e("./nodejsUtils");function l(e){return new i.Promise(function(t,r){var n=e.decompressed.getContentWorker().pipe(new o);n.on("error",function(e){r(e)}).on("end",function(){n.streamInfo.crc32!==e.decompressed.crc32?r(new Error("Corrupted zip : CRC32 mismatch")):t()}).resume()})}t.exports=function(e,t){var r=this;return t=n.extend(t||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:s.utf8decode}),h.isNode&&h.isStream(e)?i.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):n.prepareContent("the loaded zip file",e,!0,t.optimizedBinaryString,t.base64).then(function(e){var r=new a(t);return r.load(e),r}).then(function(e){var r=[i.Promise.resolve(e)],n=e.files;if(t.checkCRC32)for(var s=0;s<n.length;s++)r.push(l(n[s]));return i.Promise.all(r)}).then(function(e){for(var i=e.shift(),s=i.files,a=0;a<s.length;a++){var o=s[a],h=o.fileNameStr,l=n.resolve(o.fileNameStr);r.file(l,o.decompressed,{binary:!0,optimizedBinaryString:!0,date:o.date,dir:o.dir,comment:o.fileCommentStr.length?o.fileCommentStr:null,unixPermissions:o.unixPermissions,dosPermissions:o.dosPermissions,createFolders:t.createFolders}),o.dir||(r.file(l).unsafeOriginalName=h)}return i.zipComment.length&&(r.comment=i.zipComment),r})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(e,t,r){"use strict";var n=e("../utils"),i=e("../stream/GenericWorker");function s(e,t){i.call(this,"Nodejs stream input adapter for "+e),this._upstreamEnded=!1,this._bindStream(t)}n.inherits(s,i),s.prototype._bindStream=function(e){var t=this;(this._stream=e).pause(),e.on("data",function(e){t.push({data:e,meta:{percent:0}})}).on("error",function(e){t.isPaused?this.generatedError=e:t.error(e)}).on("end",function(){t.isPaused?t._upstreamEnded=!0:t.end()})},s.prototype.pause=function(){return!!i.prototype.pause.call(this)&&(this._stream.pause(),!0)},s.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},t.exports=s},{"../stream/GenericWorker":28,"../utils":32}],13:[function(e,t,r){"use strict";var n=e("readable-stream").Readable;function i(e,t,r){n.call(this,t),this._helper=e;var i=this;e.on("data",function(e,t){i.push(e)||i._helper.pause(),r&&r(t)}).on("error",function(e){i.emit("error",e)}).on("end",function(){i.push(null)})}e("../utils").inherits(i,n),i.prototype._read=function(){this._helper.resume()},t.exports=i},{"../utils":32,"readable-stream":16}],14:[function(e,t,r){"use strict";t.exports={isNode:"undefined"!=typeof Buffer,newBufferFrom:function(e,t){if(Buffer.from&&Buffer.from!==Uint8Array.from)return Buffer.from(e,t);if("number"==typeof e)throw new Error('The "data" argument must not be a number');return new Buffer(e,t)},allocBuffer:function(e){if(Buffer.alloc)return Buffer.alloc(e);var t=new Buffer(e);return t.fill(0),t},isBuffer:function(e){return Buffer.isBuffer(e)},isStream:function(e){return e&&"function"==typeof e.on&&"function"==typeof e.pause&&"function"==typeof e.resume}}},{}],15:[function(e,t,r){"use strict";function n(e,t,r){var n,i=s.getTypeOf(t),o=s.extend(r||{},h);o.date=o.date||new Date,null!==o.compression&&(o.compression=o.compression.toUpperCase()),"string"==typeof o.unixPermissions&&(o.unixPermissions=parseInt(o.unixPermissions,8)),o.unixPermissions&&16384&o.unixPermissions&&(o.dir=!0),o.dosPermissions&&16&o.dosPermissions&&(o.dir=!0),o.dir&&(e=g(e)),o.createFolders&&(n=p(e))&&m.call(this,n,!0);var c="string"===i&&!1===o.binary&&!1===o.base64;r&&void 0!==r.binary||(o.binary=!c),(t instanceof l&&0===t.uncompressedSize||o.dir||!t||0===t.length)&&(o.base64=!1,o.binary=!0,t="",o.compression="STORE",i="string");var _;_=t instanceof l||t instanceof a?t:d.isNode&&d.isStream(t)?new f(e,t):s.prepareContent(e,t,o.binary,o.optimizedBinaryString,o.base64);var y=new u(e,_,o);this.files[e]=y}var i=e("./utf8"),s=e("./utils"),a=e("./stream/GenericWorker"),o=e("./stream/StreamHelper"),h=e("./defaults"),l=e("./compressedObject"),u=e("./zipObject"),c=e("./generate"),d=e("./nodejsUtils"),f=e("./nodejs/NodejsStreamInputAdapter"),p=function(e){"/"===e.slice(-1)&&(e=e.substring(0,e.length-1));var t=e.lastIndexOf("/");return 0<t?e.substring(0,t):""},g=function(e){return"/"!==e.slice(-1)&&(e+="/"),e},m=function(e,t){return t=void 0!==t?t:h.createFolders,e=g(e),this.files[e]||n.call(this,e,null,{dir:!0,createFolders:t}),this.files[e]};function _(e){return"[object RegExp]"===Object.prototype.toString.call(e)}var y={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(e){var t,r,n;for(t in this.files)n=this.files[t],(r=t.slice(this.root.length,t.length))&&t.slice(0,this.root.length)===this.root&&e(r,n)},filter:function(e){var t=[];return this.forEach(function(r,n){e(r,n)&&t.push(n)}),t},file:function(e,t,r){if(1!==arguments.length)return e=this.root+e,n.call(this,e,t,r),this;if(_(e)){var i=e;return this.filter(function(e,t){return!t.dir&&i.test(e)})}var s=this.files[this.root+e];return s&&!s.dir?s:null},folder:function(e){if(!e)return this;if(_(e))return this.filter(function(t,r){return r.dir&&e.test(t)});var t=this.root+e,r=m.call(this,t),n=this.clone();return n.root=r.name,n},remove:function(e){e=this.root+e;var t=this.files[e];if(t||("/"!==e.slice(-1)&&(e+="/"),t=this.files[e]),t&&!t.dir)delete this.files[e];else for(var r=this.filter(function(t,r){return r.name.slice(0,e.length)===e}),n=0;n<r.length;n++)delete this.files[r[n].name];return this},generate:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(e){var t,r={};try{if((r=s.extend(e||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:i.utf8encode})).type=r.type.toLowerCase(),r.compression=r.compression.toUpperCase(),"binarystring"===r.type&&(r.type="string"),!r.type)throw new Error("No output type specified.");s.checkSupport(r.type),"darwin"!==r.platform&&"freebsd"!==r.platform&&"linux"!==r.platform&&"sunos"!==r.platform||(r.platform="UNIX"),"win32"===r.platform&&(r.platform="DOS");var n=r.comment||this.comment||"";t=c.generateWorker(this,r,n)}catch(e){(t=new a("error")).error(e)}return new o(t,r.type||"string",r.mimeType)},generateAsync:function(e,t){return this.generateInternalStream(e).accumulate(t)},generateNodeStream:function(e,t){return(e=e||{}).type||(e.type="nodebuffer"),this.generateInternalStream(e).toNodejsStream(t)}};t.exports=y},{"./compressedObject":2,"./defaults":5,"./generate":9,"./nodejs/NodejsStreamInputAdapter":12,"./nodejsUtils":14,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31,"./utils":32,"./zipObject":35}],16:[function(e,t,r){"use strict";t.exports=e("stream")},{stream:void 0}],17:[function(e,t,r){"use strict";var n=e("./DataReader");function i(e){n.call(this,e);for(var t=0;t<this.data.length;t++)e[t]=255&e[t]}e("../utils").inherits(i,n),i.prototype.byteAt=function(e){return this.data[this.zero+e]},i.prototype.lastIndexOfSignature=function(e){for(var t=e.charCodeAt(0),r=e.charCodeAt(1),n=e.charCodeAt(2),i=e.charCodeAt(3),s=this.length-4;0<=s;--s)if(this.data[s]===t&&this.data[s+1]===r&&this.data[s+2]===n&&this.data[s+3]===i)return s-this.zero;return-1},i.prototype.readAndCheckSignature=function(e){var t=e.charCodeAt(0),r=e.charCodeAt(1),n=e.charCodeAt(2),i=e.charCodeAt(3),s=this.readData(4);return t===s[0]&&r===s[1]&&n===s[2]&&i===s[3]},i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return[];var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./DataReader":18}],18:[function(e,t,r){"use strict";var n=e("../utils");function i(e){this.data=e,this.length=e.length,this.index=0,this.zero=0}i.prototype={checkOffset:function(e){this.checkIndex(this.index+e)},checkIndex:function(e){if(this.length<this.zero+e||e<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+e+"). Corrupted zip ?")},setIndex:function(e){this.checkIndex(e),this.index=e},skip:function(e){this.setIndex(this.index+e)},byteAt:function(){},readInt:function(e){var t,r=0;for(this.checkOffset(e),t=this.index+e-1;t>=this.index;t--)r=(r<<8)+this.byteAt(t);return this.index+=e,r},readString:function(e){return n.transformTo("string",this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},t.exports=i},{"../utils":32}],19:[function(e,t,r){"use strict";var n=e("./Uint8ArrayReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(e,t,r){"use strict";var n=e("./DataReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},i.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},i.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./DataReader":18}],21:[function(e,t,r){"use strict";var n=e("./ArrayReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return new Uint8Array(0);var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./ArrayReader":17}],22:[function(e,t,r){"use strict";var n=e("../utils"),i=e("../support"),s=e("./ArrayReader"),a=e("./StringReader"),o=e("./NodeBufferReader"),h=e("./Uint8ArrayReader");t.exports=function(e){var t=n.getTypeOf(e);return n.checkSupport(t),"string"!==t||i.uint8array?"nodebuffer"===t?new o(e):i.uint8array?new h(n.transformTo("uint8array",e)):new s(n.transformTo("array",e)):new a(e)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(e,t,r){"use strict";r.LOCAL_FILE_HEADER="PK",r.CENTRAL_FILE_HEADER="PK",r.CENTRAL_DIRECTORY_END="PK",r.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",r.ZIP64_CENTRAL_DIRECTORY_END="PK",r.DATA_DESCRIPTOR="PK\b"},{}],24:[function(e,t,r){"use strict";var n=e("./GenericWorker"),i=e("../utils");function s(e){n.call(this,"ConvertWorker to "+e),this.destType=e}i.inherits(s,n),s.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},t.exports=s},{"../utils":32,"./GenericWorker":28}],25:[function(e,t,r){"use strict";var n=e("./GenericWorker"),i=e("../crc32");function s(){n.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}e("../utils").inherits(s,n),s.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},t.exports=s},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./GenericWorker");function s(e){i.call(this,"DataLengthProbe for "+e),this.propName=e,this.withStreamInfo(e,0)}n.inherits(s,i),s.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}i.prototype.processChunk.call(this,e)},t.exports=s},{"../utils":32,"./GenericWorker":28}],27:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./GenericWorker");function s(e){i.call(this,"DataWorker");var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,e.then(function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=n.getTypeOf(e),t.isPaused||t._tickAndRepeat()},function(e){t.error(e)})}n.inherits(s,i),s.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},s.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,n.delay(this._tickAndRepeat,[],this)),!0)},s.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(n.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},s.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":e=this.data.substring(this.index,t);break;case"uint8array":e=this.data.subarray(this.index,t);break;case"array":case"nodebuffer":e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=s},{"../utils":32,"./GenericWorker":28}],28:[function(e,t,r){"use strict";function n(e){this.name=e||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}n.prototype={push:function(e){this.emit("data",e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(e){this.emit("error",e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit("error",e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var r=0;r<this._listeners[e].length;r++)this._listeners[e][r].call(this,t)},pipe:function(e){return e.registerPrevious(this)},registerPrevious:function(e){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=e.streamInfo,this.mergeStreamInfo(),this.previous=e;var t=this;return e.on("data",function(e){t.processChunk(e)}),e.on("end",function(){t.end()}),e.on("error",function(e){t.error(e)}),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;var e=this.isPaused=!1;return this.generatedError&&(this.error(this.generatedError),e=!0),this.previous&&this.previous.resume(),!e},flush:function(){},processChunk:function(e){this.push(e)},withStreamInfo:function(e,t){return this.extraStreamInfo[e]=t,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var e in this.extraStreamInfo)Object.prototype.hasOwnProperty.call(this.extraStreamInfo,e)&&(this.streamInfo[e]=this.extraStreamInfo[e])},lock:function(){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var e="Worker "+this.name;return this.previous?this.previous+" -> "+e:e}},t.exports=n},{}],29:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./ConvertWorker"),s=e("./GenericWorker"),a=e("../base64"),o=e("../support"),h=e("../external"),l=null;if(o.nodestream)try{l=e("../nodejs/NodejsStreamOutputAdapter")}catch(e){}function u(e,t,r){var a=t;switch(t){case"blob":case"arraybuffer":a="uint8array";break;case"base64":a="string"}try{this._internalType=a,this._outputType=t,this._mimeType=r,n.checkSupport(a),this._worker=e.pipe(new i(a)),e.lock()}catch(e){this._worker=new s("error"),this._worker.error(e)}}u.prototype={accumulate:function(e){return function(e,t){return new h.Promise(function(r,i){var s=[],o=e._internalType,h=e._outputType,l=e._mimeType;e.on("data",function(e,r){s.push(e),t&&t(r)}).on("error",function(e){s=[],i(e)}).on("end",function(){try{var e=function(e,t,r){switch(e){case"blob":return n.newBlob(n.transformTo("arraybuffer",t),r);case"base64":return a.encode(t);default:return n.transformTo(e,t)}}(h,function(e,t){var r,n=0,i=null,s=0;for(r=0;r<t.length;r++)s+=t[r].length;switch(e){case"string":return t.join("");case"array":return Array.prototype.concat.apply([],t);case"uint8array":for(i=new Uint8Array(s),r=0;r<t.length;r++)i.set(t[r],n),n+=t[r].length;return i;case"nodebuffer":return Buffer.concat(t);default:throw new Error("concat : unsupported type '"+e+"'")}}(o,s),l);r(e)}catch(e){i(e)}s=[]}).resume()})}(this,e)},on:function(e,t){var r=this;return"data"===e?this._worker.on(e,function(e){t.call(r,e.data,e.meta)}):this._worker.on(e,function(){n.delay(t,arguments,r)}),this},resume:function(){return n.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(e){if(n.checkSupport("nodestream"),"nodebuffer"!==this._outputType)throw new Error(this._outputType+" is not supported by this method");return new l(this,{objectMode:"nodebuffer"!==this._outputType},e)}},t.exports=u},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(e,t,r){"use strict";if(r.base64=!0,r.array=!0,r.string=!0,r.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,r.nodebuffer="undefined"!=typeof Buffer,r.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)r.blob=!1;else{var n=new ArrayBuffer(0);try{r.blob=0===new Blob([n],{type:"application/zip"}).size}catch(e){try{var i=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);i.append(n),r.blob=0===i.getBlob("application/zip").size}catch(e){r.blob=!1}}}try{r.nodestream=!!e("readable-stream").Readable}catch(e){r.nodestream=!1}},{"readable-stream":16}],31:[function(e,t,r){"use strict";for(var n=e("./utils"),i=e("./support"),s=e("./nodejsUtils"),a=e("./stream/GenericWorker"),o=new Array(256),h=0;h<256;h++)o[h]=252<=h?6:248<=h?5:240<=h?4:224<=h?3:192<=h?2:1;function l(){a.call(this,"utf-8 decode"),this.leftOver=null}function u(){a.call(this,"utf-8 encode")}o[254]=o[254]=1,r.utf8encode=function(e){return i.nodebuffer?s.newBufferFrom(e,"utf-8"):function(e){var t,r,n,s,a,o=e.length,h=0;for(s=0;s<o;s++)55296==(64512&(r=e.charCodeAt(s)))&&s+1<o&&56320==(64512&(n=e.charCodeAt(s+1)))&&(r=65536+(r-55296<<10)+(n-56320),s++),h+=r<128?1:r<2048?2:r<65536?3:4;for(t=i.uint8array?new Uint8Array(h):new Array(h),s=a=0;a<h;s++)55296==(64512&(r=e.charCodeAt(s)))&&s+1<o&&56320==(64512&(n=e.charCodeAt(s+1)))&&(r=65536+(r-55296<<10)+(n-56320),s++),r<128?t[a++]=r:(r<2048?t[a++]=192|r>>>6:(r<65536?t[a++]=224|r>>>12:(t[a++]=240|r>>>18,t[a++]=128|r>>>12&63),t[a++]=128|r>>>6&63),t[a++]=128|63&r);return t}(e)},r.utf8decode=function(e){return i.nodebuffer?n.transformTo("nodebuffer",e).toString("utf-8"):function(e){var t,r,i,s,a=e.length,h=new Array(2*a);for(t=r=0;t<a;)if((i=e[t++])<128)h[r++]=i;else if(4<(s=o[i]))h[r++]=65533,t+=s-1;else{for(i&=2===s?31:3===s?15:7;1<s&&t<a;)i=i<<6|63&e[t++],s--;1<s?h[r++]=65533:i<65536?h[r++]=i:(i-=65536,h[r++]=55296|i>>10&1023,h[r++]=56320|1023&i)}return h.length!==r&&(h.subarray?h=h.subarray(0,r):h.length=r),n.applyFromCharCode(h)}(e=n.transformTo(i.uint8array?"uint8array":"array",e))},n.inherits(l,a),l.prototype.processChunk=function(e){var t=n.transformTo(i.uint8array?"uint8array":"array",e.data);if(this.leftOver&&this.leftOver.length){if(i.uint8array){var s=t;(t=new Uint8Array(s.length+this.leftOver.length)).set(this.leftOver,0),t.set(s,this.leftOver.length)}else t=this.leftOver.concat(t);this.leftOver=null}var a=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;0<=r&&128==(192&e[r]);)r--;return r<0||0===r?t:r+o[e[r]]>t?r:t}(t),h=t;a!==t.length&&(i.uint8array?(h=t.subarray(0,a),this.leftOver=t.subarray(a,t.length)):(h=t.slice(0,a),this.leftOver=t.slice(a,t.length))),this.push({data:r.utf8decode(h),meta:e.meta})},l.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:r.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},r.Utf8DecodeWorker=l,n.inherits(u,a),u.prototype.processChunk=function(e){this.push({data:r.utf8encode(e.data),meta:e.meta})},r.Utf8EncodeWorker=u},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,r){"use strict";var n=e("./support"),i=e("./base64"),s=e("./nodejsUtils"),a=e("./external");function o(e){return e}function h(e,t){for(var r=0;r<e.length;++r)t[r]=255&e.charCodeAt(r);return t}e("setimmediate"),r.newBlob=function(e,t){r.checkSupport("blob");try{return new Blob([e],{type:t})}catch(r){try{var n=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return n.append(e),n.getBlob(t)}catch(e){throw new Error("Bug : can't construct the Blob.")}}};var l={stringifyByChunk:function(e,t,r){var n=[],i=0,s=e.length;if(s<=r)return String.fromCharCode.apply(null,e);for(;i<s;)"array"===t||"nodebuffer"===t?n.push(String.fromCharCode.apply(null,e.slice(i,Math.min(i+r,s)))):n.push(String.fromCharCode.apply(null,e.subarray(i,Math.min(i+r,s)))),i+=r;return n.join("")},stringifyByChar:function(e){for(var t="",r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},applyCanBeUsed:{uint8array:function(){try{return n.uint8array&&1===String.fromCharCode.apply(null,new Uint8Array(1)).length}catch(e){return!1}}(),nodebuffer:function(){try{return n.nodebuffer&&1===String.fromCharCode.apply(null,s.allocBuffer(1)).length}catch(e){return!1}}()}};function u(e){var t=65536,n=r.getTypeOf(e),i=!0;if("uint8array"===n?i=l.applyCanBeUsed.uint8array:"nodebuffer"===n&&(i=l.applyCanBeUsed.nodebuffer),i)for(;1<t;)try{return l.stringifyByChunk(e,n,t)}catch(e){t=Math.floor(t/2)}return l.stringifyByChar(e)}function c(e,t){for(var r=0;r<e.length;r++)t[r]=e[r];return t}r.applyFromCharCode=u;var d={};d.string={string:o,array:function(e){return h(e,new Array(e.length))},arraybuffer:function(e){return d.string.uint8array(e).buffer},uint8array:function(e){return h(e,new Uint8Array(e.length))},nodebuffer:function(e){return h(e,s.allocBuffer(e.length))}},d.array={string:u,array:o,arraybuffer:function(e){return new Uint8Array(e).buffer},uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return s.newBufferFrom(e)}},d.arraybuffer={string:function(e){return u(new Uint8Array(e))},array:function(e){return c(new Uint8Array(e),new Array(e.byteLength))},arraybuffer:o,uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return s.newBufferFrom(new Uint8Array(e))}},d.uint8array={string:u,array:function(e){return c(e,new Array(e.length))},arraybuffer:function(e){return e.buffer},uint8array:o,nodebuffer:function(e){return s.newBufferFrom(e)}},d.nodebuffer={string:u,array:function(e){return c(e,new Array(e.length))},arraybuffer:function(e){return d.nodebuffer.uint8array(e).buffer},uint8array:function(e){return c(e,new Uint8Array(e.length))},nodebuffer:o},r.transformTo=function(e,t){if(t=t||"",!e)return t;r.checkSupport(e);var n=r.getTypeOf(t);return d[n][e](t)},r.resolve=function(e){for(var t=e.split("/"),r=[],n=0;n<t.length;n++){var i=t[n];"."===i||""===i&&0!==n&&n!==t.length-1||(".."===i?r.pop():r.push(i))}return r.join("/")},r.getTypeOf=function(e){return"string"==typeof e?"string":"[object Array]"===Object.prototype.toString.call(e)?"array":n.nodebuffer&&s.isBuffer(e)?"nodebuffer":n.uint8array&&e instanceof Uint8Array?"uint8array":n.arraybuffer&&e instanceof ArrayBuffer?"arraybuffer":void 0},r.checkSupport=function(e){if(!n[e.toLowerCase()])throw new Error(e+" is not supported by this platform")},r.MAX_VALUE_16BITS=65535,r.MAX_VALUE_32BITS=-1,r.pretty=function(e){var t,r,n="";for(r=0;r<(e||"").length;r++)n+="\\x"+((t=e.charCodeAt(r))<16?"0":"")+t.toString(16).toUpperCase();return n},r.delay=function(e,t,r){setImmediate(function(){e.apply(r||null,t||[])})},r.inherits=function(e,t){function r(){}r.prototype=t.prototype,e.prototype=new r},r.extend=function(){var e,t,r={};for(e=0;e<arguments.length;e++)for(t in arguments[e])Object.prototype.hasOwnProperty.call(arguments[e],t)&&void 0===r[t]&&(r[t]=arguments[e][t]);return r},r.prepareContent=function(e,t,s,o,l){return a.Promise.resolve(t).then(function(e){return n.blob&&(e instanceof Blob||-1!==["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(e)))&&"undefined"!=typeof FileReader?new a.Promise(function(t,r){var n=new FileReader;n.onload=function(e){t(e.target.result)},n.onerror=function(e){r(e.target.error)},n.readAsArrayBuffer(e)}):e}).then(function(t){var u=r.getTypeOf(t);return u?("arraybuffer"===u?t=r.transformTo("uint8array",t):"string"===u&&(l?t=i.decode(t):s&&!0!==o&&(t=function(e){return h(e,n.uint8array?new Uint8Array(e.length):new Array(e.length))}(t))),t):a.Promise.reject(new Error("Can't read the data of '"+e+"'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))})}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,setimmediate:54}],33:[function(e,t,r){"use strict";var n=e("./reader/readerFor"),i=e("./utils"),s=e("./signature"),a=e("./zipEntry"),o=e("./support");function h(e){this.files=[],this.loadOptions=e}h.prototype={checkSignature:function(e){if(!this.reader.readAndCheckSignature(e)){this.reader.index-=4;var t=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature ("+i.pretty(t)+", expected "+i.pretty(e)+")")}},isSignature:function(e,t){var r=this.reader.index;this.reader.setIndex(e);var n=this.reader.readString(4)===t;return this.reader.setIndex(r),n},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var e=this.reader.readData(this.zipCommentLength),t=o.uint8array?"uint8array":"array",r=i.transformTo(t,e);this.zipComment=this.loadOptions.decodeFileName(r)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var e,t,r,n=this.zip64EndOfCentralSize-44;0<n;)e=this.reader.readInt(2),t=this.reader.readInt(4),r=this.reader.readData(t),this.zip64ExtensibleData[e]={id:e,length:t,value:r}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),1<this.disksCount)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var e,t;for(e=0;e<this.files.length;e++)t=this.files[e],this.reader.setIndex(t.localHeaderOffset),this.checkSignature(s.LOCAL_FILE_HEADER),t.readLocalPart(this.reader),t.handleUTF8(),t.processAttributes()},readCentralDir:function(){var e;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(s.CENTRAL_FILE_HEADER);)(e=new a({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(e);if(this.centralDirRecords!==this.files.length&&0!==this.centralDirRecords&&0===this.files.length)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var e=this.reader.lastIndexOfSignature(s.CENTRAL_DIRECTORY_END);if(e<0)throw this.isSignature(0,s.LOCAL_FILE_HEADER)?new Error("Corrupted zip: can't find end of central directory"):new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html");this.reader.setIndex(e);var t=e;if(this.checkSignature(s.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===i.MAX_VALUE_16BITS||this.diskWithCentralDirStart===i.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===i.MAX_VALUE_16BITS||this.centralDirRecords===i.MAX_VALUE_16BITS||this.centralDirSize===i.MAX_VALUE_32BITS||this.centralDirOffset===i.MAX_VALUE_32BITS){if(this.zip64=!0,(e=this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(e),this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,s.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var r=this.centralDirOffset+this.centralDirSize;this.zip64&&(r+=20,r+=12+this.zip64EndOfCentralSize);var n=t-r;if(0<n)this.isSignature(t,s.CENTRAL_FILE_HEADER)||(this.reader.zero=n);else if(n<0)throw new Error("Corrupted zip: missing "+Math.abs(n)+" bytes.")},prepareReader:function(e){this.reader=n(e)},load:function(e){this.prepareReader(e),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},t.exports=h},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utils":32,"./zipEntry":34}],34:[function(e,t,r){"use strict";var n=e("./reader/readerFor"),i=e("./utils"),s=e("./compressedObject"),a=e("./crc32"),o=e("./utf8"),h=e("./compressions"),l=e("./support");function u(e,t){this.options=e,this.loadOptions=t}u.prototype={isEncrypted:function(){return!(1&~this.bitFlag)},useUTF8:function(){return!(2048&~this.bitFlag)},readLocalPart:function(e){var t,r;if(e.skip(22),this.fileNameLength=e.readInt(2),r=e.readInt(2),this.fileName=e.readData(this.fileNameLength),e.skip(r),-1===this.compressedSize||-1===this.uncompressedSize)throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)");if(null===(t=function(e){for(var t in h)if(Object.prototype.hasOwnProperty.call(h,t)&&h[t].magic===e)return h[t];return null}(this.compressionMethod)))throw new Error("Corrupted zip : compression "+i.pretty(this.compressionMethod)+" unknown (inner file : "+i.transformTo("string",this.fileName)+")");this.decompressed=new s(this.compressedSize,this.uncompressedSize,this.crc32,t,e.readData(this.compressedSize))},readCentralPart:function(e){this.versionMadeBy=e.readInt(2),e.skip(2),this.bitFlag=e.readInt(2),this.compressionMethod=e.readString(2),this.date=e.readDate(),this.crc32=e.readInt(4),this.compressedSize=e.readInt(4),this.uncompressedSize=e.readInt(4);var t=e.readInt(2);if(this.extraFieldsLength=e.readInt(2),this.fileCommentLength=e.readInt(2),this.diskNumberStart=e.readInt(2),this.internalFileAttributes=e.readInt(2),this.externalFileAttributes=e.readInt(4),this.localHeaderOffset=e.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");e.skip(t),this.readExtraFields(e),this.parseZIP64ExtraField(e),this.fileComment=e.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var e=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),0==e&&(this.dosPermissions=63&this.externalFileAttributes),3==e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=n(this.extraFields[1].value);this.uncompressedSize===i.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===i.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===i.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===i.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,r,n,i=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index+4<i;)t=e.readInt(2),r=e.readInt(2),n=e.readData(r),this.extraFields[t]={id:t,length:r,value:n};e.setIndex(i)},handleUTF8:function(){var e=l.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=o.utf8decode(this.fileName),this.fileCommentStr=o.utf8decode(this.fileComment);else{var t=this.findExtraFieldUnicodePath();if(null!==t)this.fileNameStr=t;else{var r=i.transformTo(e,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(r)}var n=this.findExtraFieldUnicodeComment();if(null!==n)this.fileCommentStr=n;else{var s=i.transformTo(e,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(s)}}},findExtraFieldUnicodePath:function(){var e=this.extraFields[28789];if(e){var t=n(e.value);return 1!==t.readInt(1)||a(this.fileName)!==t.readInt(4)?null:o.utf8decode(t.readData(e.length-5))}return null},findExtraFieldUnicodeComment:function(){var e=this.extraFields[25461];if(e){var t=n(e.value);return 1!==t.readInt(1)||a(this.fileComment)!==t.readInt(4)?null:o.utf8decode(t.readData(e.length-5))}return null}},t.exports=u},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(e,t,r){"use strict";function n(e,t,r){this.name=e,this.dir=r.dir,this.date=r.date,this.comment=r.comment,this.unixPermissions=r.unixPermissions,this.dosPermissions=r.dosPermissions,this._data=t,this._dataBinary=r.binary,this.options={compression:r.compression,compressionOptions:r.compressionOptions}}var i=e("./stream/StreamHelper"),s=e("./stream/DataWorker"),a=e("./utf8"),o=e("./compressedObject"),h=e("./stream/GenericWorker");n.prototype={internalStream:function(e){var t=null,r="string";try{if(!e)throw new Error("No output type specified.");var n="string"===(r=e.toLowerCase())||"text"===r;"binarystring"!==r&&"text"!==r||(r="string"),t=this._decompressWorker();var s=!this._dataBinary;s&&!n&&(t=t.pipe(new a.Utf8EncodeWorker)),!s&&n&&(t=t.pipe(new a.Utf8DecodeWorker))}catch(e){(t=new h("error")).error(e)}return new i(t,r,"")},async:function(e,t){return this.internalStream(e).accumulate(t)},nodeStream:function(e,t){return this.internalStream(e||"nodebuffer").toNodejsStream(t)},_compressWorker:function(e,t){if(this._data instanceof o&&this._data.compression.magic===e.magic)return this._data.getCompressedWorker();var r=this._decompressWorker();return this._dataBinary||(r=r.pipe(new a.Utf8EncodeWorker)),o.createWorkerFrom(r,e,t)},_decompressWorker:function(){return this._data instanceof o?this._data.getContentWorker():this._data instanceof h?this._data:new s(this._data)}};for(var l=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],u=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},c=0;c<l.length;c++)n.prototype[l[c]]=u;t.exports=n},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(e,t,n){(function(e){"use strict";var r,n,i=e.MutationObserver||e.WebKitMutationObserver;if(i){var s=0,a=new i(u),o=e.document.createTextNode("");a.observe(o,{characterData:!0}),r=function(){o.data=s=++s%2}}else if(e.setImmediate||void 0===e.MessageChannel)r="document"in e&&"onreadystatechange"in e.document.createElement("script")?function(){var t=e.document.createElement("script");t.onreadystatechange=function(){u(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(u,0)};else{var h=new e.MessageChannel;h.port1.onmessage=u,r=function(){h.port2.postMessage(0)}}var l=[];function u(){var e,t;n=!0;for(var r=l.length;r;){for(t=l,l=[],e=-1;++e<r;)t[e]();r=l.length}n=!1}t.exports=function(e){1!==l.push(e)||n||r()}}).call(this,void 0!==r.g?r.g:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],37:[function(e,t,r){"use strict";var n=e("immediate");function i(){}var s={},a=["REJECTED"],o=["FULFILLED"],h=["PENDING"];function l(e){if("function"!=typeof e)throw new TypeError("resolver must be a function");this.state=h,this.queue=[],this.outcome=void 0,e!==i&&f(this,e)}function u(e,t,r){this.promise=e,"function"==typeof t&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),"function"==typeof r&&(this.onRejected=r,this.callRejected=this.otherCallRejected)}function c(e,t,r){n(function(){var n;try{n=t(r)}catch(n){return s.reject(e,n)}n===e?s.reject(e,new TypeError("Cannot resolve promise with itself")):s.resolve(e,n)})}function d(e){var t=e&&e.then;if(e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof t)return function(){t.apply(e,arguments)}}function f(e,t){var r=!1;function n(t){r||(r=!0,s.reject(e,t))}function i(t){r||(r=!0,s.resolve(e,t))}var a=p(function(){t(i,n)});"error"===a.status&&n(a.value)}function p(e,t){var r={};try{r.value=e(t),r.status="success"}catch(e){r.status="error",r.value=e}return r}(t.exports=l).prototype.finally=function(e){if("function"!=typeof e)return this;var t=this.constructor;return this.then(function(r){return t.resolve(e()).then(function(){return r})},function(r){return t.resolve(e()).then(function(){throw r})})},l.prototype.catch=function(e){return this.then(null,e)},l.prototype.then=function(e,t){if("function"!=typeof e&&this.state===o||"function"!=typeof t&&this.state===a)return this;var r=new this.constructor(i);return this.state!==h?c(r,this.state===o?e:t,this.outcome):this.queue.push(new u(r,e,t)),r},u.prototype.callFulfilled=function(e){s.resolve(this.promise,e)},u.prototype.otherCallFulfilled=function(e){c(this.promise,this.onFulfilled,e)},u.prototype.callRejected=function(e){s.reject(this.promise,e)},u.prototype.otherCallRejected=function(e){c(this.promise,this.onRejected,e)},s.resolve=function(e,t){var r=p(d,t);if("error"===r.status)return s.reject(e,r.value);var n=r.value;if(n)f(e,n);else{e.state=o,e.outcome=t;for(var i=-1,a=e.queue.length;++i<a;)e.queue[i].callFulfilled(t)}return e},s.reject=function(e,t){e.state=a,e.outcome=t;for(var r=-1,n=e.queue.length;++r<n;)e.queue[r].callRejected(t);return e},l.resolve=function(e){return e instanceof this?e:s.resolve(new this(i),e)},l.reject=function(e){var t=new this(i);return s.reject(t,e)},l.all=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var r=e.length,n=!1;if(!r)return this.resolve([]);for(var a=new Array(r),o=0,h=-1,l=new this(i);++h<r;)u(e[h],h);return l;function u(e,i){t.resolve(e).then(function(e){a[i]=e,++o!==r||n||(n=!0,s.resolve(l,a))},function(e){n||(n=!0,s.reject(l,e))})}},l.race=function(e){if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var t=e.length,r=!1;if(!t)return this.resolve([]);for(var n,a=-1,o=new this(i);++a<t;)n=e[a],this.resolve(n).then(function(e){r||(r=!0,s.resolve(o,e))},function(e){r||(r=!0,s.reject(o,e))});return o}},{immediate:36}],38:[function(e,t,r){"use strict";var n={};(0,e("./lib/utils/common").assign)(n,e("./lib/deflate"),e("./lib/inflate"),e("./lib/zlib/constants")),t.exports=n},{"./lib/deflate":39,"./lib/inflate":40,"./lib/utils/common":41,"./lib/zlib/constants":44}],39:[function(e,t,r){"use strict";var n=e("./zlib/deflate"),i=e("./utils/common"),s=e("./utils/strings"),a=e("./zlib/messages"),o=e("./zlib/zstream"),h=Object.prototype.toString;function l(e){if(!(this instanceof l))return new l(e);this.options=i.assign({level:-1,method:8,chunkSize:16384,windowBits:15,memLevel:8,strategy:0,to:""},e||{});var t=this.options;t.raw&&0<t.windowBits?t.windowBits=-t.windowBits:t.gzip&&0<t.windowBits&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new o,this.strm.avail_out=0;var r=n.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(0!==r)throw new Error(a[r]);if(t.header&&n.deflateSetHeader(this.strm,t.header),t.dictionary){var u;if(u="string"==typeof t.dictionary?s.string2buf(t.dictionary):"[object ArrayBuffer]"===h.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,0!==(r=n.deflateSetDictionary(this.strm,u)))throw new Error(a[r]);this._dict_set=!0}}function u(e,t){var r=new l(t);if(r.push(e,!0),r.err)throw r.msg||a[r.err];return r.result}l.prototype.push=function(e,t){var r,a,o=this.strm,l=this.options.chunkSize;if(this.ended)return!1;a=t===~~t?t:!0===t?4:0,"string"==typeof e?o.input=s.string2buf(e):"[object ArrayBuffer]"===h.call(e)?o.input=new Uint8Array(e):o.input=e,o.next_in=0,o.avail_in=o.input.length;do{if(0===o.avail_out&&(o.output=new i.Buf8(l),o.next_out=0,o.avail_out=l),1!==(r=n.deflate(o,a))&&0!==r)return this.onEnd(r),!(this.ended=!0);0!==o.avail_out&&(0!==o.avail_in||4!==a&&2!==a)||("string"===this.options.to?this.onData(s.buf2binstring(i.shrinkBuf(o.output,o.next_out))):this.onData(i.shrinkBuf(o.output,o.next_out)))}while((0<o.avail_in||0===o.avail_out)&&1!==r);return 4===a?(r=n.deflateEnd(this.strm),this.onEnd(r),this.ended=!0,0===r):2!==a||(this.onEnd(0),!(o.avail_out=0))},l.prototype.onData=function(e){this.chunks.push(e)},l.prototype.onEnd=function(e){0===e&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},r.Deflate=l,r.deflate=u,r.deflateRaw=function(e,t){return(t=t||{}).raw=!0,u(e,t)},r.gzip=function(e,t){return(t=t||{}).gzip=!0,u(e,t)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(e,t,r){"use strict";var n=e("./zlib/inflate"),i=e("./utils/common"),s=e("./utils/strings"),a=e("./zlib/constants"),o=e("./zlib/messages"),h=e("./zlib/zstream"),l=e("./zlib/gzheader"),u=Object.prototype.toString;function c(e){if(!(this instanceof c))return new c(e);this.options=i.assign({chunkSize:16384,windowBits:0,to:""},e||{});var t=this.options;t.raw&&0<=t.windowBits&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(0<=t.windowBits&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),15<t.windowBits&&t.windowBits<48&&!(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new h,this.strm.avail_out=0;var r=n.inflateInit2(this.strm,t.windowBits);if(r!==a.Z_OK)throw new Error(o[r]);this.header=new l,n.inflateGetHeader(this.strm,this.header)}function d(e,t){var r=new c(t);if(r.push(e,!0),r.err)throw r.msg||o[r.err];return r.result}c.prototype.push=function(e,t){var r,o,h,l,c,d,f=this.strm,p=this.options.chunkSize,g=this.options.dictionary,m=!1;if(this.ended)return!1;o=t===~~t?t:!0===t?a.Z_FINISH:a.Z_NO_FLUSH,"string"==typeof e?f.input=s.binstring2buf(e):"[object ArrayBuffer]"===u.call(e)?f.input=new Uint8Array(e):f.input=e,f.next_in=0,f.avail_in=f.input.length;do{if(0===f.avail_out&&(f.output=new i.Buf8(p),f.next_out=0,f.avail_out=p),(r=n.inflate(f,a.Z_NO_FLUSH))===a.Z_NEED_DICT&&g&&(d="string"==typeof g?s.string2buf(g):"[object ArrayBuffer]"===u.call(g)?new Uint8Array(g):g,r=n.inflateSetDictionary(this.strm,d)),r===a.Z_BUF_ERROR&&!0===m&&(r=a.Z_OK,m=!1),r!==a.Z_STREAM_END&&r!==a.Z_OK)return this.onEnd(r),!(this.ended=!0);f.next_out&&(0!==f.avail_out&&r!==a.Z_STREAM_END&&(0!==f.avail_in||o!==a.Z_FINISH&&o!==a.Z_SYNC_FLUSH)||("string"===this.options.to?(h=s.utf8border(f.output,f.next_out),l=f.next_out-h,c=s.buf2string(f.output,h),f.next_out=l,f.avail_out=p-l,l&&i.arraySet(f.output,f.output,h,l,0),this.onData(c)):this.onData(i.shrinkBuf(f.output,f.next_out)))),0===f.avail_in&&0===f.avail_out&&(m=!0)}while((0<f.avail_in||0===f.avail_out)&&r!==a.Z_STREAM_END);return r===a.Z_STREAM_END&&(o=a.Z_FINISH),o===a.Z_FINISH?(r=n.inflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===a.Z_OK):o!==a.Z_SYNC_FLUSH||(this.onEnd(a.Z_OK),!(f.avail_out=0))},c.prototype.onData=function(e){this.chunks.push(e)},c.prototype.onEnd=function(e){e===a.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},r.Inflate=c,r.inflate=d,r.inflateRaw=function(e,t){return(t=t||{}).raw=!0,d(e,t)},r.ungzip=d},{"./utils/common":41,"./utils/strings":42,"./zlib/constants":44,"./zlib/gzheader":47,"./zlib/inflate":49,"./zlib/messages":51,"./zlib/zstream":53}],41:[function(e,t,r){"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;r.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var r=t.shift();if(r){if("object"!=typeof r)throw new TypeError(r+"must be non-object");for(var n in r)r.hasOwnProperty(n)&&(e[n]=r[n])}}return e},r.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var i={arraySet:function(e,t,r,n,i){if(t.subarray&&e.subarray)e.set(t.subarray(r,r+n),i);else for(var s=0;s<n;s++)e[i+s]=t[r+s]},flattenChunks:function(e){var t,r,n,i,s,a;for(t=n=0,r=e.length;t<r;t++)n+=e[t].length;for(a=new Uint8Array(n),t=i=0,r=e.length;t<r;t++)s=e[t],a.set(s,i),i+=s.length;return a}},s={arraySet:function(e,t,r,n,i){for(var s=0;s<n;s++)e[i+s]=t[r+s]},flattenChunks:function(e){return[].concat.apply([],e)}};r.setTyped=function(e){e?(r.Buf8=Uint8Array,r.Buf16=Uint16Array,r.Buf32=Int32Array,r.assign(r,i)):(r.Buf8=Array,r.Buf16=Array,r.Buf32=Array,r.assign(r,s))},r.setTyped(n)},{}],42:[function(e,t,r){"use strict";var n=e("./common"),i=!0,s=!0;try{String.fromCharCode.apply(null,[0])}catch(e){i=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){s=!1}for(var a=new n.Buf8(256),o=0;o<256;o++)a[o]=252<=o?6:248<=o?5:240<=o?4:224<=o?3:192<=o?2:1;function h(e,t){if(t<65537&&(e.subarray&&s||!e.subarray&&i))return String.fromCharCode.apply(null,n.shrinkBuf(e,t));for(var r="",a=0;a<t;a++)r+=String.fromCharCode(e[a]);return r}a[254]=a[254]=1,r.string2buf=function(e){var t,r,i,s,a,o=e.length,h=0;for(s=0;s<o;s++)55296==(64512&(r=e.charCodeAt(s)))&&s+1<o&&56320==(64512&(i=e.charCodeAt(s+1)))&&(r=65536+(r-55296<<10)+(i-56320),s++),h+=r<128?1:r<2048?2:r<65536?3:4;for(t=new n.Buf8(h),s=a=0;a<h;s++)55296==(64512&(r=e.charCodeAt(s)))&&s+1<o&&56320==(64512&(i=e.charCodeAt(s+1)))&&(r=65536+(r-55296<<10)+(i-56320),s++),r<128?t[a++]=r:(r<2048?t[a++]=192|r>>>6:(r<65536?t[a++]=224|r>>>12:(t[a++]=240|r>>>18,t[a++]=128|r>>>12&63),t[a++]=128|r>>>6&63),t[a++]=128|63&r);return t},r.buf2binstring=function(e){return h(e,e.length)},r.binstring2buf=function(e){for(var t=new n.Buf8(e.length),r=0,i=t.length;r<i;r++)t[r]=e.charCodeAt(r);return t},r.buf2string=function(e,t){var r,n,i,s,o=t||e.length,l=new Array(2*o);for(r=n=0;r<o;)if((i=e[r++])<128)l[n++]=i;else if(4<(s=a[i]))l[n++]=65533,r+=s-1;else{for(i&=2===s?31:3===s?15:7;1<s&&r<o;)i=i<<6|63&e[r++],s--;1<s?l[n++]=65533:i<65536?l[n++]=i:(i-=65536,l[n++]=55296|i>>10&1023,l[n++]=56320|1023&i)}return h(l,n)},r.utf8border=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;0<=r&&128==(192&e[r]);)r--;return r<0||0===r?t:r+a[e[r]]>t?r:t}},{"./common":41}],43:[function(e,t,r){"use strict";t.exports=function(e,t,r,n){for(var i=65535&e,s=e>>>16&65535,a=0;0!==r;){for(r-=a=2e3<r?2e3:r;s=s+(i=i+t[n++]|0)|0,--a;);i%=65521,s%=65521}return i|s<<16}},{}],44:[function(e,t,r){"use strict";t.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],45:[function(e,t,r){"use strict";var n=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();t.exports=function(e,t,r,i){var s=n,a=i+r;e^=-1;for(var o=i;o<a;o++)e=e>>>8^s[255&(e^t[o])];return-1^e}},{}],46:[function(e,t,r){"use strict";var n,i=e("../utils/common"),s=e("./trees"),a=e("./adler32"),o=e("./crc32"),h=e("./messages"),l=-2,u=258,c=262,d=113;function f(e,t){return e.msg=h[t],t}function p(e){return(e<<1)-(4<e?9:0)}function g(e){for(var t=e.length;0<=--t;)e[t]=0}function m(e){var t=e.state,r=t.pending;r>e.avail_out&&(r=e.avail_out),0!==r&&(i.arraySet(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))}function _(e,t){s._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,m(e.strm)}function y(e,t){e.pending_buf[e.pending++]=t}function w(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function v(e,t){var r,n,i=e.max_chain_length,s=e.strstart,a=e.prev_length,o=e.nice_match,h=e.strstart>e.w_size-c?e.strstart-(e.w_size-c):0,l=e.window,d=e.w_mask,f=e.prev,p=e.strstart+u,g=l[s+a-1],m=l[s+a];e.prev_length>=e.good_match&&(i>>=2),o>e.lookahead&&(o=e.lookahead);do{if(l[(r=t)+a]===m&&l[r+a-1]===g&&l[r]===l[s]&&l[++r]===l[s+1]){s+=2,r++;do{}while(l[++s]===l[++r]&&l[++s]===l[++r]&&l[++s]===l[++r]&&l[++s]===l[++r]&&l[++s]===l[++r]&&l[++s]===l[++r]&&l[++s]===l[++r]&&l[++s]===l[++r]&&s<p);if(n=u-(p-s),s=p-u,a<n){if(e.match_start=t,o<=(a=n))break;g=l[s+a-1],m=l[s+a]}}}while((t=f[t&d])>h&&0!=--i);return a<=e.lookahead?a:e.lookahead}function b(e){var t,r,n,s,h,l,u,d,f,p,g=e.w_size;do{if(s=e.window_size-e.lookahead-e.strstart,e.strstart>=g+(g-c)){for(i.arraySet(e.window,e.window,g,g,0),e.match_start-=g,e.strstart-=g,e.block_start-=g,t=r=e.hash_size;n=e.head[--t],e.head[t]=g<=n?n-g:0,--r;);for(t=r=g;n=e.prev[--t],e.prev[t]=g<=n?n-g:0,--r;);s+=g}if(0===e.strm.avail_in)break;if(l=e.strm,u=e.window,d=e.strstart+e.lookahead,p=void 0,(f=s)<(p=l.avail_in)&&(p=f),r=0===p?0:(l.avail_in-=p,i.arraySet(u,l.input,l.next_in,p,d),1===l.state.wrap?l.adler=a(l.adler,u,p,d):2===l.state.wrap&&(l.adler=o(l.adler,u,p,d)),l.next_in+=p,l.total_in+=p,p),e.lookahead+=r,e.lookahead+e.insert>=3)for(h=e.strstart-e.insert,e.ins_h=e.window[h],e.ins_h=(e.ins_h<<e.hash_shift^e.window[h+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[h+3-1])&e.hash_mask,e.prev[h&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=h,h++,e.insert--,!(e.lookahead+e.insert<3)););}while(e.lookahead<c&&0!==e.strm.avail_in)}function k(e,t){for(var r,n;;){if(e.lookahead<c){if(b(e),e.lookahead<c&&0===t)return 1;if(0===e.lookahead)break}if(r=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==r&&e.strstart-r<=e.w_size-c&&(e.match_length=v(e,r)),e.match_length>=3)if(n=s._tr_tally(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=3){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart,0!=--e.match_length;);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else n=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(_(e,!1),0===e.strm.avail_out))return 1}return e.insert=e.strstart<2?e.strstart:2,4===t?(_(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(_(e,!1),0===e.strm.avail_out)?1:2}function x(e,t){for(var r,n,i;;){if(e.lookahead<c){if(b(e),e.lookahead<c&&0===t)return 1;if(0===e.lookahead)break}if(r=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=2,0!==r&&e.prev_length<e.max_lazy_match&&e.strstart-r<=e.w_size-c&&(e.match_length=v(e,r),e.match_length<=5&&(1===e.strategy||3===e.match_length&&4096<e.strstart-e.match_start)&&(e.match_length=2)),e.prev_length>=3&&e.match_length<=e.prev_length){for(i=e.strstart+e.lookahead-3,n=s._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=i&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!=--e.prev_length;);if(e.match_available=0,e.match_length=2,e.strstart++,n&&(_(e,!1),0===e.strm.avail_out))return 1}else if(e.match_available){if((n=s._tr_tally(e,0,e.window[e.strstart-1]))&&_(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return 1}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=s._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<2?e.strstart:2,4===t?(_(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(_(e,!1),0===e.strm.avail_out)?1:2}function E(e,t,r,n,i){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=n,this.func=i}function R(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=8,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(1146),this.dyn_dtree=new i.Buf16(122),this.bl_tree=new i.Buf16(78),g(this.dyn_ltree),g(this.dyn_dtree),g(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(16),this.heap=new i.Buf16(573),g(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(573),g(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function S(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=2,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?42:d,e.adler=2===t.wrap?0:1,t.last_flush=0,s._tr_init(t),0):f(e,l)}function I(e){var t=S(e);return 0===t&&function(e){e.window_size=2*e.w_size,g(e.head),e.max_lazy_match=n[e.level].max_lazy,e.good_match=n[e.level].good_length,e.nice_match=n[e.level].nice_length,e.max_chain_length=n[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=2,e.match_available=0,e.ins_h=0}(e.state),t}function P(e,t,r,n,s,a){if(!e)return l;var o=1;if(-1===t&&(t=6),n<0?(o=0,n=-n):15<n&&(o=2,n-=16),s<1||9<s||8!==r||n<8||15<n||t<0||9<t||a<0||4<a)return f(e,l);8===n&&(n=9);var h=new R;return(e.state=h).strm=e,h.wrap=o,h.gzhead=null,h.w_bits=n,h.w_size=1<<h.w_bits,h.w_mask=h.w_size-1,h.hash_bits=s+7,h.hash_size=1<<h.hash_bits,h.hash_mask=h.hash_size-1,h.hash_shift=~~((h.hash_bits+3-1)/3),h.window=new i.Buf8(2*h.w_size),h.head=new i.Buf16(h.hash_size),h.prev=new i.Buf16(h.w_size),h.lit_bufsize=1<<s+6,h.pending_buf_size=4*h.lit_bufsize,h.pending_buf=new i.Buf8(h.pending_buf_size),h.d_buf=1*h.lit_bufsize,h.l_buf=3*h.lit_bufsize,h.level=t,h.strategy=a,h.method=r,I(e)}n=[new E(0,0,0,0,function(e,t){var r=65535;for(r>e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(b(e),0===e.lookahead&&0===t)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var n=e.block_start+r;if((0===e.strstart||e.strstart>=n)&&(e.lookahead=e.strstart-n,e.strstart=n,_(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-c&&(_(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(_(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(_(e,!1),e.strm.avail_out),1)}),new E(4,4,8,4,k),new E(4,5,16,8,k),new E(4,6,32,32,k),new E(4,4,16,16,x),new E(8,16,32,32,x),new E(8,16,128,128,x),new E(8,32,128,256,x),new E(32,128,258,1024,x),new E(32,258,258,4096,x)],r.deflateInit=function(e,t){return P(e,t,8,15,8,0)},r.deflateInit2=P,r.deflateReset=I,r.deflateResetKeep=S,r.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?l:(e.state.gzhead=t,0):l},r.deflate=function(e,t){var r,i,a,h;if(!e||!e.state||5<t||t<0)return e?f(e,l):l;if(i=e.state,!e.output||!e.input&&0!==e.avail_in||666===i.status&&4!==t)return f(e,0===e.avail_out?-5:l);if(i.strm=e,r=i.last_flush,i.last_flush=t,42===i.status)if(2===i.wrap)e.adler=0,y(i,31),y(i,139),y(i,8),i.gzhead?(y(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),y(i,255&i.gzhead.time),y(i,i.gzhead.time>>8&255),y(i,i.gzhead.time>>16&255),y(i,i.gzhead.time>>24&255),y(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),y(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(y(i,255&i.gzhead.extra.length),y(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=o(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(y(i,0),y(i,0),y(i,0),y(i,0),y(i,0),y(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),y(i,3),i.status=d);else{var c=8+(i.w_bits-8<<4)<<8;c|=(2<=i.strategy||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(c|=32),c+=31-c%31,i.status=d,w(i,c),0!==i.strstart&&(w(i,e.adler>>>16),w(i,65535&e.adler)),e.adler=1}if(69===i.status)if(i.gzhead.extra){for(a=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),m(e),a=i.pending,i.pending!==i.pending_buf_size));)y(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(73===i.status)if(i.gzhead.name){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),m(e),a=i.pending,i.pending===i.pending_buf_size)){h=1;break}h=i.gzindex<i.gzhead.name.length?255&i.gzhead.name.charCodeAt(i.gzindex++):0,y(i,h)}while(0!==h);i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),0===h&&(i.gzindex=0,i.status=91)}else i.status=91;if(91===i.status)if(i.gzhead.comment){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),m(e),a=i.pending,i.pending===i.pending_buf_size)){h=1;break}h=i.gzindex<i.gzhead.comment.length?255&i.gzhead.comment.charCodeAt(i.gzindex++):0,y(i,h)}while(0!==h);i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),0===h&&(i.status=103)}else i.status=103;if(103===i.status&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&m(e),i.pending+2<=i.pending_buf_size&&(y(i,255&e.adler),y(i,e.adler>>8&255),e.adler=0,i.status=d)):i.status=d),0!==i.pending){if(m(e),0===e.avail_out)return i.last_flush=-1,0}else if(0===e.avail_in&&p(t)<=p(r)&&4!==t)return f(e,-5);if(666===i.status&&0!==e.avail_in)return f(e,-5);if(0!==e.avail_in||0!==i.lookahead||0!==t&&666!==i.status){var v=2===i.strategy?function(e,t){for(var r;;){if(0===e.lookahead&&(b(e),0===e.lookahead)){if(0===t)return 1;break}if(e.match_length=0,r=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(_(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(_(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(_(e,!1),0===e.strm.avail_out)?1:2}(i,t):3===i.strategy?function(e,t){for(var r,n,i,a,o=e.window;;){if(e.lookahead<=u){if(b(e),e.lookahead<=u&&0===t)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&0<e.strstart&&(n=o[i=e.strstart-1])===o[++i]&&n===o[++i]&&n===o[++i]){a=e.strstart+u;do{}while(n===o[++i]&&n===o[++i]&&n===o[++i]&&n===o[++i]&&n===o[++i]&&n===o[++i]&&n===o[++i]&&n===o[++i]&&i<a);e.match_length=u-(a-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=3?(r=s._tr_tally(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(_(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(_(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(_(e,!1),0===e.strm.avail_out)?1:2}(i,t):n[i.level].func(i,t);if(3!==v&&4!==v||(i.status=666),1===v||3===v)return 0===e.avail_out&&(i.last_flush=-1),0;if(2===v&&(1===t?s._tr_align(i):5!==t&&(s._tr_stored_block(i,0,0,!1),3===t&&(g(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),m(e),0===e.avail_out))return i.last_flush=-1,0}return 4!==t?0:i.wrap<=0?1:(2===i.wrap?(y(i,255&e.adler),y(i,e.adler>>8&255),y(i,e.adler>>16&255),y(i,e.adler>>24&255),y(i,255&e.total_in),y(i,e.total_in>>8&255),y(i,e.total_in>>16&255),y(i,e.total_in>>24&255)):(w(i,e.adler>>>16),w(i,65535&e.adler)),m(e),0<i.wrap&&(i.wrap=-i.wrap),0!==i.pending?0:1)},r.deflateEnd=function(e){var t;return e&&e.state?42!==(t=e.state.status)&&69!==t&&73!==t&&91!==t&&103!==t&&t!==d&&666!==t?f(e,l):(e.state=null,t===d?f(e,-3):0):l},r.deflateSetDictionary=function(e,t){var r,n,s,o,h,u,c,d,f=t.length;if(!e||!e.state)return l;if(2===(o=(r=e.state).wrap)||1===o&&42!==r.status||r.lookahead)return l;for(1===o&&(e.adler=a(e.adler,t,f,0)),r.wrap=0,f>=r.w_size&&(0===o&&(g(r.head),r.strstart=0,r.block_start=0,r.insert=0),d=new i.Buf8(r.w_size),i.arraySet(d,t,f-r.w_size,r.w_size,0),t=d,f=r.w_size),h=e.avail_in,u=e.next_in,c=e.input,e.avail_in=f,e.next_in=0,e.input=t,b(r);r.lookahead>=3;){for(n=r.strstart,s=r.lookahead-2;r.ins_h=(r.ins_h<<r.hash_shift^r.window[n+3-1])&r.hash_mask,r.prev[n&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=n,n++,--s;);r.strstart=n,r.lookahead=2,b(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=2,r.match_available=0,e.next_in=u,e.input=c,e.avail_in=h,r.wrap=o,0},r.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./messages":51,"./trees":52}],47:[function(e,t,r){"use strict";t.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},{}],48:[function(e,t,r){"use strict";t.exports=function(e,t){var r,n,i,s,a,o,h,l,u,c,d,f,p,g,m,_,y,w,v,b,k,x,E,R,S;r=e.state,n=e.next_in,R=e.input,i=n+(e.avail_in-5),s=e.next_out,S=e.output,a=s-(t-e.avail_out),o=s+(e.avail_out-257),h=r.dmax,l=r.wsize,u=r.whave,c=r.wnext,d=r.window,f=r.hold,p=r.bits,g=r.lencode,m=r.distcode,_=(1<<r.lenbits)-1,y=(1<<r.distbits)-1;e:do{p<15&&(f+=R[n++]<<p,p+=8,f+=R[n++]<<p,p+=8),w=g[f&_];t:for(;;){if(f>>>=v=w>>>24,p-=v,0==(v=w>>>16&255))S[s++]=65535&w;else{if(!(16&v)){if(!(64&v)){w=g[(65535&w)+(f&(1<<v)-1)];continue t}if(32&v){r.mode=12;break e}e.msg="invalid literal/length code",r.mode=30;break e}b=65535&w,(v&=15)&&(p<v&&(f+=R[n++]<<p,p+=8),b+=f&(1<<v)-1,f>>>=v,p-=v),p<15&&(f+=R[n++]<<p,p+=8,f+=R[n++]<<p,p+=8),w=m[f&y];r:for(;;){if(f>>>=v=w>>>24,p-=v,!(16&(v=w>>>16&255))){if(!(64&v)){w=m[(65535&w)+(f&(1<<v)-1)];continue r}e.msg="invalid distance code",r.mode=30;break e}if(k=65535&w,p<(v&=15)&&(f+=R[n++]<<p,(p+=8)<v&&(f+=R[n++]<<p,p+=8)),h<(k+=f&(1<<v)-1)){e.msg="invalid distance too far back",r.mode=30;break e}if(f>>>=v,p-=v,(v=s-a)<k){if(u<(v=k-v)&&r.sane){e.msg="invalid distance too far back",r.mode=30;break e}if(E=d,(x=0)===c){if(x+=l-v,v<b){for(b-=v;S[s++]=d[x++],--v;);x=s-k,E=S}}else if(c<v){if(x+=l+c-v,(v-=c)<b){for(b-=v;S[s++]=d[x++],--v;);if(x=0,c<b){for(b-=v=c;S[s++]=d[x++],--v;);x=s-k,E=S}}}else if(x+=c-v,v<b){for(b-=v;S[s++]=d[x++],--v;);x=s-k,E=S}for(;2<b;)S[s++]=E[x++],S[s++]=E[x++],S[s++]=E[x++],b-=3;b&&(S[s++]=E[x++],1<b&&(S[s++]=E[x++]))}else{for(x=s-k;S[s++]=S[x++],S[s++]=S[x++],S[s++]=S[x++],2<(b-=3););b&&(S[s++]=S[x++],1<b&&(S[s++]=S[x++]))}break}}break}}while(n<i&&s<o);n-=b=p>>3,f&=(1<<(p-=b<<3))-1,e.next_in=n,e.next_out=s,e.avail_in=n<i?i-n+5:5-(n-i),e.avail_out=s<o?o-s+257:257-(s-o),r.hold=f,r.bits=p}},{}],49:[function(e,t,r){"use strict";var n=e("../utils/common"),i=e("./adler32"),s=e("./crc32"),a=e("./inffast"),o=e("./inftrees"),h=-2;function l(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function u(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new n.Buf16(320),this.work=new n.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function c(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=1,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new n.Buf32(852),t.distcode=t.distdyn=new n.Buf32(592),t.sane=1,t.back=-1,0):h}function d(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,c(e)):h}function f(e,t){var r,n;return e&&e.state?(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15<t)?h:(null!==n.window&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,d(e))):h}function p(e,t){var r,n;return e?(n=new u,(e.state=n).window=null,0!==(r=f(e,t))&&(e.state=null),r):h}var g,m,_=!0;function y(e){if(_){var t;for(g=new n.Buf32(512),m=new n.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(o(1,e.lens,0,288,g,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;o(2,e.lens,0,32,m,0,e.work,{bits:5}),_=!1}e.lencode=g,e.lenbits=9,e.distcode=m,e.distbits=5}function w(e,t,r,i){var s,a=e.state;return null===a.window&&(a.wsize=1<<a.wbits,a.wnext=0,a.whave=0,a.window=new n.Buf8(a.wsize)),i>=a.wsize?(n.arraySet(a.window,t,r-a.wsize,a.wsize,0),a.wnext=0,a.whave=a.wsize):(i<(s=a.wsize-a.wnext)&&(s=i),n.arraySet(a.window,t,r-i,s,a.wnext),(i-=s)?(n.arraySet(a.window,t,r-i,i,0),a.wnext=i,a.whave=a.wsize):(a.wnext+=s,a.wnext===a.wsize&&(a.wnext=0),a.whave<a.wsize&&(a.whave+=s))),0}r.inflateReset=d,r.inflateReset2=f,r.inflateResetKeep=c,r.inflateInit=function(e){return p(e,15)},r.inflateInit2=p,r.inflate=function(e,t){var r,u,c,d,f,p,g,m,_,v,b,k,x,E,R,S,I,P,z,A,C,O,T,N,B=0,j=new n.Buf8(4),D=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return h;12===(r=e.state).mode&&(r.mode=13),f=e.next_out,c=e.output,g=e.avail_out,d=e.next_in,u=e.input,p=e.avail_in,m=r.hold,_=r.bits,v=p,b=g,O=0;e:for(;;)switch(r.mode){case 1:if(0===r.wrap){r.mode=13;break}for(;_<16;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(2&r.wrap&&35615===m){j[r.check=0]=255&m,j[1]=m>>>8&255,r.check=s(r.check,j,2,0),_=m=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&m)<<8)+(m>>8))%31){e.msg="incorrect header check",r.mode=30;break}if(8!=(15&m)){e.msg="unknown compression method",r.mode=30;break}if(_-=4,C=8+(15&(m>>>=4)),0===r.wbits)r.wbits=C;else if(C>r.wbits){e.msg="invalid window size",r.mode=30;break}r.dmax=1<<C,e.adler=r.check=1,r.mode=512&m?10:12,_=m=0;break;case 2:for(;_<16;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(r.flags=m,8!=(255&r.flags)){e.msg="unknown compression method",r.mode=30;break}if(57344&r.flags){e.msg="unknown header flags set",r.mode=30;break}r.head&&(r.head.text=m>>8&1),512&r.flags&&(j[0]=255&m,j[1]=m>>>8&255,r.check=s(r.check,j,2,0)),_=m=0,r.mode=3;case 3:for(;_<32;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}r.head&&(r.head.time=m),512&r.flags&&(j[0]=255&m,j[1]=m>>>8&255,j[2]=m>>>16&255,j[3]=m>>>24&255,r.check=s(r.check,j,4,0)),_=m=0,r.mode=4;case 4:for(;_<16;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}r.head&&(r.head.xflags=255&m,r.head.os=m>>8),512&r.flags&&(j[0]=255&m,j[1]=m>>>8&255,r.check=s(r.check,j,2,0)),_=m=0,r.mode=5;case 5:if(1024&r.flags){for(;_<16;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}r.length=m,r.head&&(r.head.extra_len=m),512&r.flags&&(j[0]=255&m,j[1]=m>>>8&255,r.check=s(r.check,j,2,0)),_=m=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&(p<(k=r.length)&&(k=p),k&&(r.head&&(C=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),n.arraySet(r.head.extra,u,d,k,C)),512&r.flags&&(r.check=s(r.check,u,k,d)),p-=k,d+=k,r.length-=k),r.length))break e;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===p)break e;for(k=0;C=u[d+k++],r.head&&C&&r.length<65536&&(r.head.name+=String.fromCharCode(C)),C&&k<p;);if(512&r.flags&&(r.check=s(r.check,u,k,d)),p-=k,d+=k,C)break e}else r.head&&(r.head.name=null);r.length=0,r.mode=8;case 8:if(4096&r.flags){if(0===p)break e;for(k=0;C=u[d+k++],r.head&&C&&r.length<65536&&(r.head.comment+=String.fromCharCode(C)),C&&k<p;);if(512&r.flags&&(r.check=s(r.check,u,k,d)),p-=k,d+=k,C)break e}else r.head&&(r.head.comment=null);r.mode=9;case 9:if(512&r.flags){for(;_<16;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(m!==(65535&r.check)){e.msg="header crc mismatch",r.mode=30;break}_=m=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=12;break;case 10:for(;_<32;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}e.adler=r.check=l(m),_=m=0,r.mode=11;case 11:if(0===r.havedict)return e.next_out=f,e.avail_out=g,e.next_in=d,e.avail_in=p,r.hold=m,r.bits=_,2;e.adler=r.check=1,r.mode=12;case 12:if(5===t||6===t)break e;case 13:if(r.last){m>>>=7&_,_-=7&_,r.mode=27;break}for(;_<3;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}switch(r.last=1&m,_-=1,3&(m>>>=1)){case 0:r.mode=14;break;case 1:if(y(r),r.mode=20,6!==t)break;m>>>=2,_-=2;break e;case 2:r.mode=17;break;case 3:e.msg="invalid block type",r.mode=30}m>>>=2,_-=2;break;case 14:for(m>>>=7&_,_-=7&_;_<32;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if((65535&m)!=(m>>>16^65535)){e.msg="invalid stored block lengths",r.mode=30;break}if(r.length=65535&m,_=m=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(k=r.length){if(p<k&&(k=p),g<k&&(k=g),0===k)break e;n.arraySet(c,u,d,k,f),p-=k,d+=k,g-=k,f+=k,r.length-=k;break}r.mode=12;break;case 17:for(;_<14;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(r.nlen=257+(31&m),m>>>=5,_-=5,r.ndist=1+(31&m),m>>>=5,_-=5,r.ncode=4+(15&m),m>>>=4,_-=4,286<r.nlen||30<r.ndist){e.msg="too many length or distance symbols",r.mode=30;break}r.have=0,r.mode=18;case 18:for(;r.have<r.ncode;){for(;_<3;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}r.lens[D[r.have++]]=7&m,m>>>=3,_-=3}for(;r.have<19;)r.lens[D[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,T={bits:r.lenbits},O=o(0,r.lens,0,19,r.lencode,0,r.work,T),r.lenbits=T.bits,O){e.msg="invalid code lengths set",r.mode=30;break}r.have=0,r.mode=19;case 19:for(;r.have<r.nlen+r.ndist;){for(;S=(B=r.lencode[m&(1<<r.lenbits)-1])>>>16&255,I=65535&B,!((R=B>>>24)<=_);){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(I<16)m>>>=R,_-=R,r.lens[r.have++]=I;else{if(16===I){for(N=R+2;_<N;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(m>>>=R,_-=R,0===r.have){e.msg="invalid bit length repeat",r.mode=30;break}C=r.lens[r.have-1],k=3+(3&m),m>>>=2,_-=2}else if(17===I){for(N=R+3;_<N;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}_-=R,C=0,k=3+(7&(m>>>=R)),m>>>=3,_-=3}else{for(N=R+7;_<N;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}_-=R,C=0,k=11+(127&(m>>>=R)),m>>>=7,_-=7}if(r.have+k>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=30;break}for(;k--;)r.lens[r.have++]=C}}if(30===r.mode)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=30;break}if(r.lenbits=9,T={bits:r.lenbits},O=o(1,r.lens,0,r.nlen,r.lencode,0,r.work,T),r.lenbits=T.bits,O){e.msg="invalid literal/lengths set",r.mode=30;break}if(r.distbits=6,r.distcode=r.distdyn,T={bits:r.distbits},O=o(2,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,T),r.distbits=T.bits,O){e.msg="invalid distances set",r.mode=30;break}if(r.mode=20,6===t)break e;case 20:r.mode=21;case 21:if(6<=p&&258<=g){e.next_out=f,e.avail_out=g,e.next_in=d,e.avail_in=p,r.hold=m,r.bits=_,a(e,b),f=e.next_out,c=e.output,g=e.avail_out,d=e.next_in,u=e.input,p=e.avail_in,m=r.hold,_=r.bits,12===r.mode&&(r.back=-1);break}for(r.back=0;S=(B=r.lencode[m&(1<<r.lenbits)-1])>>>16&255,I=65535&B,!((R=B>>>24)<=_);){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(S&&!(240&S)){for(P=R,z=S,A=I;S=(B=r.lencode[A+((m&(1<<P+z)-1)>>P)])>>>16&255,I=65535&B,!(P+(R=B>>>24)<=_);){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}m>>>=P,_-=P,r.back+=P}if(m>>>=R,_-=R,r.back+=R,r.length=I,0===S){r.mode=26;break}if(32&S){r.back=-1,r.mode=12;break}if(64&S){e.msg="invalid literal/length code",r.mode=30;break}r.extra=15&S,r.mode=22;case 22:if(r.extra){for(N=r.extra;_<N;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}r.length+=m&(1<<r.extra)-1,m>>>=r.extra,_-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;S=(B=r.distcode[m&(1<<r.distbits)-1])>>>16&255,I=65535&B,!((R=B>>>24)<=_);){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(!(240&S)){for(P=R,z=S,A=I;S=(B=r.distcode[A+((m&(1<<P+z)-1)>>P)])>>>16&255,I=65535&B,!(P+(R=B>>>24)<=_);){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}m>>>=P,_-=P,r.back+=P}if(m>>>=R,_-=R,r.back+=R,64&S){e.msg="invalid distance code",r.mode=30;break}r.offset=I,r.extra=15&S,r.mode=24;case 24:if(r.extra){for(N=r.extra;_<N;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}r.offset+=m&(1<<r.extra)-1,m>>>=r.extra,_-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=30;break}r.mode=25;case 25:if(0===g)break e;if(k=b-g,r.offset>k){if((k=r.offset-k)>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=30;break}x=k>r.wnext?(k-=r.wnext,r.wsize-k):r.wnext-k,k>r.length&&(k=r.length),E=r.window}else E=c,x=f-r.offset,k=r.length;for(g<k&&(k=g),g-=k,r.length-=k;c[f++]=E[x++],--k;);0===r.length&&(r.mode=21);break;case 26:if(0===g)break e;c[f++]=r.length,g--,r.mode=21;break;case 27:if(r.wrap){for(;_<32;){if(0===p)break e;p--,m|=u[d++]<<_,_+=8}if(b-=g,e.total_out+=b,r.total+=b,b&&(e.adler=r.check=r.flags?s(r.check,c,b,f-b):i(r.check,c,b,f-b)),b=g,(r.flags?m:l(m))!==r.check){e.msg="incorrect data check",r.mode=30;break}_=m=0}r.mode=28;case 28:if(r.wrap&&r.flags){for(;_<32;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(m!==(4294967295&r.total)){e.msg="incorrect length check",r.mode=30;break}_=m=0}r.mode=29;case 29:O=1;break e;case 30:O=-3;break e;case 31:return-4;default:return h}return e.next_out=f,e.avail_out=g,e.next_in=d,e.avail_in=p,r.hold=m,r.bits=_,(r.wsize||b!==e.avail_out&&r.mode<30&&(r.mode<27||4!==t))&&w(e,e.output,e.next_out,b-e.avail_out)?(r.mode=31,-4):(v-=e.avail_in,b-=e.avail_out,e.total_in+=v,e.total_out+=b,r.total+=b,r.wrap&&b&&(e.adler=r.check=r.flags?s(r.check,c,b,e.next_out-b):i(r.check,c,b,e.next_out-b)),e.data_type=r.bits+(r.last?64:0)+(12===r.mode?128:0)+(20===r.mode||15===r.mode?256:0),(0==v&&0===b||4===t)&&0===O&&(O=-5),O)},r.inflateEnd=function(e){if(!e||!e.state)return h;var t=e.state;return t.window&&(t.window=null),e.state=null,0},r.inflateGetHeader=function(e,t){var r;return e&&e.state&&2&(r=e.state).wrap?((r.head=t).done=!1,0):h},r.inflateSetDictionary=function(e,t){var r,n=t.length;return e&&e.state?0!==(r=e.state).wrap&&11!==r.mode?h:11===r.mode&&i(1,t,n,0)!==r.check?-3:w(e,t,n,n)?(r.mode=31,-4):(r.havedict=1,0):h},r.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./inffast":48,"./inftrees":50}],50:[function(e,t,r){"use strict";var n=e("../utils/common"),i=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],s=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],a=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],o=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];t.exports=function(e,t,r,h,l,u,c,d){var f,p,g,m,_,y,w,v,b,k=d.bits,x=0,E=0,R=0,S=0,I=0,P=0,z=0,A=0,C=0,O=0,T=null,N=0,B=new n.Buf16(16),j=new n.Buf16(16),D=null,L=0;for(x=0;x<=15;x++)B[x]=0;for(E=0;E<h;E++)B[t[r+E]]++;for(I=k,S=15;1<=S&&0===B[S];S--);if(S<I&&(I=S),0===S)return l[u++]=20971520,l[u++]=20971520,d.bits=1,0;for(R=1;R<S&&0===B[R];R++);for(I<R&&(I=R),x=A=1;x<=15;x++)if(A<<=1,(A-=B[x])<0)return-1;if(0<A&&(0===e||1!==S))return-1;for(j[1]=0,x=1;x<15;x++)j[x+1]=j[x]+B[x];for(E=0;E<h;E++)0!==t[r+E]&&(c[j[t[r+E]]++]=E);if(y=0===e?(T=D=c,19):1===e?(T=i,N-=257,D=s,L-=257,256):(T=a,D=o,-1),x=R,_=u,z=E=O=0,g=-1,m=(C=1<<(P=I))-1,1===e&&852<C||2===e&&592<C)return 1;for(;;){for(w=x-z,b=c[E]<y?(v=0,c[E]):c[E]>y?(v=D[L+c[E]],T[N+c[E]]):(v=96,0),f=1<<x-z,R=p=1<<P;l[_+(O>>z)+(p-=f)]=w<<24|v<<16|b,0!==p;);for(f=1<<x-1;O&f;)f>>=1;if(0!==f?(O&=f-1,O+=f):O=0,E++,0==--B[x]){if(x===S)break;x=t[r+c[E]]}if(I<x&&(O&m)!==g){for(0===z&&(z=I),_+=R,A=1<<(P=x-z);P+z<S&&!((A-=B[P+z])<=0);)P++,A<<=1;if(C+=1<<P,1===e&&852<C||2===e&&592<C)return 1;l[g=O&m]=I<<24|P<<16|_-u}}return 0!==O&&(l[_+O]=x-z<<24|64<<16),d.bits=I,0}},{"../utils/common":41}],51:[function(e,t,r){"use strict";t.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],52:[function(e,t,r){"use strict";var n=e("../utils/common");function i(e){for(var t=e.length;0<=--t;)e[t]=0}var s=256,a=286,o=30,h=15,l=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],u=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],c=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],d=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],f=new Array(576);i(f);var p=new Array(60);i(p);var g=new Array(512);i(g);var m=new Array(256);i(m);var _=new Array(29);i(_);var y,w,v,b=new Array(o);function k(e,t,r,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}function x(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function E(e){return e<256?g[e]:g[256+(e>>>7)]}function R(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function S(e,t,r){e.bi_valid>16-r?(e.bi_buf|=t<<e.bi_valid&65535,R(e,e.bi_buf),e.bi_buf=t>>16-e.bi_valid,e.bi_valid+=r-16):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=r)}function I(e,t,r){S(e,r[2*t],r[2*t+1])}function P(e,t){for(var r=0;r|=1&e,e>>>=1,r<<=1,0<--t;);return r>>>1}function z(e,t,r){var n,i,s=new Array(16),a=0;for(n=1;n<=h;n++)s[n]=a=a+r[n-1]<<1;for(i=0;i<=t;i++){var o=e[2*i+1];0!==o&&(e[2*i]=P(s[o]++,o))}}function A(e){var t;for(t=0;t<a;t++)e.dyn_ltree[2*t]=0;for(t=0;t<o;t++)e.dyn_dtree[2*t]=0;for(t=0;t<19;t++)e.bl_tree[2*t]=0;e.dyn_ltree[512]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function C(e){8<e.bi_valid?R(e,e.bi_buf):0<e.bi_valid&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function O(e,t,r,n){var i=2*t,s=2*r;return e[i]<e[s]||e[i]===e[s]&&n[t]<=n[r]}function T(e,t,r){for(var n=e.heap[r],i=r<<1;i<=e.heap_len&&(i<e.heap_len&&O(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!O(t,n,e.heap[i],e.depth));)e.heap[r]=e.heap[i],r=i,i<<=1;e.heap[r]=n}function N(e,t,r){var n,i,a,o,h=0;if(0!==e.last_lit)for(;n=e.pending_buf[e.d_buf+2*h]<<8|e.pending_buf[e.d_buf+2*h+1],i=e.pending_buf[e.l_buf+h],h++,0===n?I(e,i,t):(I(e,(a=m[i])+s+1,t),0!==(o=l[a])&&S(e,i-=_[a],o),I(e,a=E(--n),r),0!==(o=u[a])&&S(e,n-=b[a],o)),h<e.last_lit;);I(e,256,t)}function B(e,t){var r,n,i,s=t.dyn_tree,a=t.stat_desc.static_tree,o=t.stat_desc.has_stree,l=t.stat_desc.elems,u=-1;for(e.heap_len=0,e.heap_max=573,r=0;r<l;r++)0!==s[2*r]?(e.heap[++e.heap_len]=u=r,e.depth[r]=0):s[2*r+1]=0;for(;e.heap_len<2;)s[2*(i=e.heap[++e.heap_len]=u<2?++u:0)]=1,e.depth[i]=0,e.opt_len--,o&&(e.static_len-=a[2*i+1]);for(t.max_code=u,r=e.heap_len>>1;1<=r;r--)T(e,s,r);for(i=l;r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],T(e,s,1),n=e.heap[1],e.heap[--e.heap_max]=r,e.heap[--e.heap_max]=n,s[2*i]=s[2*r]+s[2*n],e.depth[i]=(e.depth[r]>=e.depth[n]?e.depth[r]:e.depth[n])+1,s[2*r+1]=s[2*n+1]=i,e.heap[1]=i++,T(e,s,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1],function(e,t){var r,n,i,s,a,o,l=t.dyn_tree,u=t.max_code,c=t.stat_desc.static_tree,d=t.stat_desc.has_stree,f=t.stat_desc.extra_bits,p=t.stat_desc.extra_base,g=t.stat_desc.max_length,m=0;for(s=0;s<=h;s++)e.bl_count[s]=0;for(l[2*e.heap[e.heap_max]+1]=0,r=e.heap_max+1;r<573;r++)g<(s=l[2*l[2*(n=e.heap[r])+1]+1]+1)&&(s=g,m++),l[2*n+1]=s,u<n||(e.bl_count[s]++,a=0,p<=n&&(a=f[n-p]),o=l[2*n],e.opt_len+=o*(s+a),d&&(e.static_len+=o*(c[2*n+1]+a)));if(0!==m){do{for(s=g-1;0===e.bl_count[s];)s--;e.bl_count[s]--,e.bl_count[s+1]+=2,e.bl_count[g]--,m-=2}while(0<m);for(s=g;0!==s;s--)for(n=e.bl_count[s];0!==n;)u<(i=e.heap[--r])||(l[2*i+1]!==s&&(e.opt_len+=(s-l[2*i+1])*l[2*i],l[2*i+1]=s),n--)}}(e,t),z(s,u,e.bl_count)}function j(e,t,r){var n,i,s=-1,a=t[1],o=0,h=7,l=4;for(0===a&&(h=138,l=3),t[2*(r+1)+1]=65535,n=0;n<=r;n++)i=a,a=t[2*(n+1)+1],++o<h&&i===a||(o<l?e.bl_tree[2*i]+=o:0!==i?(i!==s&&e.bl_tree[2*i]++,e.bl_tree[32]++):o<=10?e.bl_tree[34]++:e.bl_tree[36]++,s=i,l=(o=0)===a?(h=138,3):i===a?(h=6,3):(h=7,4))}function D(e,t,r){var n,i,s=-1,a=t[1],o=0,h=7,l=4;for(0===a&&(h=138,l=3),n=0;n<=r;n++)if(i=a,a=t[2*(n+1)+1],!(++o<h&&i===a)){if(o<l)for(;I(e,i,e.bl_tree),0!=--o;);else 0!==i?(i!==s&&(I(e,i,e.bl_tree),o--),I(e,16,e.bl_tree),S(e,o-3,2)):o<=10?(I(e,17,e.bl_tree),S(e,o-3,3)):(I(e,18,e.bl_tree),S(e,o-11,7));s=i,l=(o=0)===a?(h=138,3):i===a?(h=6,3):(h=7,4)}}i(b);var L=!1;function M(e,t,r,i){S(e,0+(i?1:0),3),function(e,t,r){C(e),R(e,r),R(e,~r),n.arraySet(e.pending_buf,e.window,t,r,e.pending),e.pending+=r}(e,t,r)}r._tr_init=function(e){L||(function(){var e,t,r,n,i,s=new Array(16);for(n=r=0;n<28;n++)for(_[n]=r,e=0;e<1<<l[n];e++)m[r++]=n;for(m[r-1]=n,n=i=0;n<16;n++)for(b[n]=i,e=0;e<1<<u[n];e++)g[i++]=n;for(i>>=7;n<o;n++)for(b[n]=i<<7,e=0;e<1<<u[n]-7;e++)g[256+i++]=n;for(t=0;t<=h;t++)s[t]=0;for(e=0;e<=143;)f[2*e+1]=8,e++,s[8]++;for(;e<=255;)f[2*e+1]=9,e++,s[9]++;for(;e<=279;)f[2*e+1]=7,e++,s[7]++;for(;e<=287;)f[2*e+1]=8,e++,s[8]++;for(z(f,287,s),e=0;e<o;e++)p[2*e+1]=5,p[2*e]=P(e,5);y=new k(f,l,257,a,h),w=new k(p,u,0,o,h),v=new k(new Array(0),c,0,19,7)}(),L=!0),e.l_desc=new x(e.dyn_ltree,y),e.d_desc=new x(e.dyn_dtree,w),e.bl_desc=new x(e.bl_tree,v),e.bi_buf=0,e.bi_valid=0,A(e)},r._tr_stored_block=M,r._tr_flush_block=function(e,t,r,n){var i,a,o=0;0<e.level?(2===e.strm.data_type&&(e.strm.data_type=function(e){var t,r=4093624447;for(t=0;t<=31;t++,r>>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;t<s;t++)if(0!==e.dyn_ltree[2*t])return 1;return 0}(e)),B(e,e.l_desc),B(e,e.d_desc),o=function(e){var t;for(j(e,e.dyn_ltree,e.l_desc.max_code),j(e,e.dyn_dtree,e.d_desc.max_code),B(e,e.bl_desc),t=18;3<=t&&0===e.bl_tree[2*d[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),i=e.opt_len+3+7>>>3,(a=e.static_len+3+7>>>3)<=i&&(i=a)):i=a=r+5,r+4<=i&&-1!==t?M(e,t,r,n):4===e.strategy||a===i?(S(e,2+(n?1:0),3),N(e,f,p)):(S(e,4+(n?1:0),3),function(e,t,r,n){var i;for(S(e,t-257,5),S(e,r-1,5),S(e,n-4,4),i=0;i<n;i++)S(e,e.bl_tree[2*d[i]+1],3);D(e,e.dyn_ltree,t-1),D(e,e.dyn_dtree,r-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,o+1),N(e,e.dyn_ltree,e.dyn_dtree)),A(e),n&&C(e)},r._tr_tally=function(e,t,r){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(m[r]+s+1)]++,e.dyn_dtree[2*E(t)]++),e.last_lit===e.lit_bufsize-1},r._tr_align=function(e){S(e,2,3),I(e,256,f),function(e){16===e.bi_valid?(R(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8<=e.bi_valid&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},{"../utils/common":41}],53:[function(e,t,r){"use strict";t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,t,n){(function(e){!function(e){"use strict";if(!e.setImmediate){var t,r,n,i,s=1,a={},o=!1,h=e.document,l=Object.getPrototypeOf&&Object.getPrototypeOf(e);l=l&&l.setTimeout?l:e,t="[object process]"==={}.toString.call(e.process)?function(e){process.nextTick(function(){c(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,r=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=r,t}}()?(i="setImmediate$"+Math.random()+"$",e.addEventListener?e.addEventListener("message",d,!1):e.attachEvent("onmessage",d),function(t){e.postMessage(i+t,"*")}):e.MessageChannel?((n=new MessageChannel).port1.onmessage=function(e){c(e.data)},function(e){n.port2.postMessage(e)}):h&&"onreadystatechange"in h.createElement("script")?(r=h.documentElement,function(e){var t=h.createElement("script");t.onreadystatechange=function(){c(e),t.onreadystatechange=null,r.removeChild(t),t=null},r.appendChild(t)}):function(e){setTimeout(c,0,e)},l.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var r=new Array(arguments.length-1),n=0;n<r.length;n++)r[n]=arguments[n+1];var i={callback:e,args:r};return a[s]=i,t(s),s++},l.clearImmediate=u}function u(e){delete a[e]}function c(e){if(o)setTimeout(c,0,e);else{var t=a[e];if(t){o=!0;try{!function(e){var t=e.callback,r=e.args;switch(r.length){case 0:t();break;case 1:t(r[0]);break;case 2:t(r[0],r[1]);break;case 3:t(r[0],r[1],r[2]);break;default:t.apply(undefined,r)}}(t)}finally{u(e),o=!1}}}}function d(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(i)&&c(+t.data.slice(i.length))}}("undefined"==typeof self?void 0===e?this:e:self)}).call(this,void 0!==r.g?r.g:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[10])(10)}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var s=t[n]={exports:{}};return e[n](s,s.exports,r),s.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{"use strict";r.r(n),r.d(n,{AsyncIterableIteratorMirror:()=>t,DefaultPublicRegistryOptions:()=>u,DefaultRegistryOptions:()=>c,DevPluginServerClient:()=>B,DevPluginSource:()=>M,FilteredIterableIterator:()=>g,LazyBatchedAsyncIterableIterator:()=>T,LazyPromise:()=>i,LocalObject:()=>m,LocalRegistry:()=>b,LocalRemoteMap:()=>o,Messenger:()=>x,NetworkManager:()=>P,PluginArchive:()=>O,PluginManager:()=>z,ProxyManager:()=>l,RPPlatform:()=>C,RPPlugin:()=>E,RPVersion:()=>N,RPackThread:()=>A,RegistryManager:()=>S,RemoteAsyncIterator:()=>e,RemoteObject:()=>v,RemoteProxyManager:()=>h,RemoteRegistry:()=>k,RemoteRegistryManager:()=>R,StringUtils:()=>a,Utils:()=>s,ZipPluginArchive:()=>L,default:()=>F});class e{constructor(e,t){this.manager=e,this.iteratorKeySupplier=t,this.iteratorKey=null,this.iteratorKeyPromise=null,this.finished=!1}[Symbol.asyncIterator](){return this}async getIteratorKey(){return null!==this.iteratorKey?this.iteratorKey:null!==this.iteratorKeyPromise?this.iteratorKeyPromise:this.iteratorKeyPromise=this.iteratorKeySupplier().then(e=>this.iteratorKey=e)}async next(...[e]){if(this.finished)return{done:!0,value:void 0};let t=await this.manager.requestRemoteIteratorNext(await this.getIteratorKey(),e);return t.done&&(this.finished=!0),t}async return(e){return this.finished||(this.manager.requestRemoteIteratorClose(await this.getIteratorKey()),this.finished=!0),{done:!0,value:e}}async throw(e){throw this.finished||(this.manager.requestRemoteIteratorClose(await this.getIteratorKey()),this.finished=!0),e}}class t{constructor(e,t=e=>e){this.it=e,this.converter=t}[Symbol.asyncIterator](){return this}async next(...e){let t=this.it.next(...e);return void 0!==t.value&&(t.value=this.converter(t.value)),t}async return(e){if(void 0!==this.it.return){let t=this.it.return(e);return void 0!==t.value&&(t.value=this.converter(t.value)),t}return{done:!0,value:e}}async throw(e){if(void 0!==this.it.throw){let t=this.it.throw(e);return void 0!==t.value&&(t.value=this.converter(t.value)),t}throw e}}class i{constructor(e){this.promise=new Promise((e,t)=>{this.resolveFunc=e,this.rejectFunc=t}),this.completed=!1,this.errored=!1,e?.then(this.resolve,this.reject)}resolve(e){this.completed||(this.completed=!0,this.errored=!1,this.resolveFunc(e))}reject(e){this.completed||(this.completed=!0,this.errored=!0,this.rejectFunc(e))}getPromise(){return this.promise}then(e,t){return this.promise.then(e,t)}isComplete(){return this.completed}isErrored(){return this.errored}}class s{static NATURAL_COLLATOR=new Intl.Collator(void 0,{numeric:!0});static async getLargeFile(e,t,r){let n=await fetch(e,t);if(!n.body)return;let i=n.body.getReader(),s=[],a=0,o=n.headers.get("Content-Length"),h=null==o?0:parseInt(o);for(r||(r=()=>{});;){let e=await i.read();if(e.done)break;a+=e.value.length,r(a,h),s.push(e.value)}return await new Blob(s).arrayBuffer()}static binarySearch(e,t,r){let n=0,i=e.length-1;for(;n<=i;){let s=i+n>>1,a=r(t,e[s]);if(a>0)n=s+1;else{if(!(a<0))return s;i=s-1}}return-n-1}static binarySearch2(e,t,r,n){let i=0,s=e.length-1;for(;i<=s;){let a=s+i>>1,o=n(t,r(e[a]));if(o>0)i=a+1;else{if(!(o<0))return a;s=a-1}}return-i-1}static loadImageAsync(e){let t=new i;const r=new Image;return r.onload=()=>t.resolve(r),r.onerror=t.reject,r.src=e,t.getPromise()}static naturalComparator(e=e=>e?e.toString():"null"){return(t,r)=>this.NATURAL_COLLATOR.compare(e(t),e(r))}static naturalSort(e,t=e=>e?e.toString():"null"){return e.sort(this.naturalComparator(t)),e}static async asyncSort(e,t){if(e.length<=1)return e;const r=Math.floor(e.length/2);let n=await this.asyncSort(e.slice(0,r),t),i=await this.asyncSort(e.slice(r),t),s=0,a=0,o=0;for(;s<n.length&&a<i.length;)await t(n[s],i[a])<=0?(e[o]=n[s],s++):(e[o]=i[a],a++),o++;for(;s<n.length;)e[o]=n[s],s++,o++;for(;a<i.length;)e[o]=i[a],a++,o++;return e}static diff(e,t,r=(e,t)=>e==t){let n=[],i=[];for(let i of e){let e=!1;for(let n of t)if(r(i,n)){e=!0;break}e||n.push(i)}for(let n of t){let t=!1;for(let i of e)if(r(i,n)){t=!0;break}t||i.push(n)}return{added:n,removed:i}}static tableString(e,t,r){let n,i=["|"],s=" ",a="left";r&&(void 0!==r.separator&&(i=r.separator instanceof Array?r.separator:[r.separator]),void 0!==r.headers&&(n=r.headers),void 0!==r.padding&&(s=r.padding),void 0!==r.textAlign&&(a=r.textAlign));let o=e.map(e=>t(e)),h=[];for(let e of o)for(let t=0;t<e.length;t++)"number"==typeof h[t]?h[t]=Math.max(h[t],e[t].length):h[t]=e[t].length;if(n)for(let e=0;e<n.length;e++)"number"==typeof h[e]?h[e]=Math.max(h[e],n[e].length):h[e]=n[e].length;if("right"==a){if(n)for(let e=0;e<n.length;e++)n[e]=s+n[e].padStart(h[e]," ")+s;for(let e of o)for(let t=0;t<e.length;t++)e[t]=s+e[t].padStart(h[t]," ")+s}else if("center"==a){if(n)for(let e=0;e<n.length;e++)n[e]=s+n[e].padEnd(Math.ceil((h[e]-n[e].length)/2)+n[e].length," ").padStart(h[e]," ")+s;for(let e of o)for(let t=0;t<e.length;t++)e[t]=s+e[t].padEnd(Math.ceil((h[t]-e[t].length)/2)+e[t].length," ").padStart(h[t]," ")+s}else{if(n)for(let e=0;e<n.length;e++)n[e]=s+n[e].padEnd(h[e]," ")+s;for(let e of o)for(let t=0;t<e.length;t++)e[t]=s+e[t].padEnd(h[t]," ")+s}let l="";if(n){let e="";for(let t=0;t<n.length;t++){if(t>0){let r=i[(t-1)%i.length];l+=r,e+=r}l+=n[t],e+="-".repeat(n[t].length)}l+="\n"+e+"\n"}for(let e=0;e<o.length;e++){let t=o[e];e>0&&(l+="\n");for(let e=0;e<t.length;e++)e>0&&(l+=i[e%i.length]),l+=t[e]}return l}static getEnumKeys(e){let t=[];for(let r of Object.getOwnPropertyNames(e))isNaN(parseInt(r))&&t.push(r);return t}static getEnumConstants(e){let t=[];for(let r of Object.getOwnPropertyNames(e))if(isNaN(parseInt(r))){let n=e[r];t.push(n)}return t}static presentOrDefault(e,t){return void 0===e?t:e}static generateRandomInt(e,t){return void 0===t&&(t=e,e=0),t=Math.floor(t),(e=Math.ceil(e))+Math.floor(Math.random()*(t-e))}static pickRandomElement(e){let t=Object.keys(e);return e[t[this.generateRandomInt(t.length)]]}}class a{static LOWERCASE_LETTERS="abcdefghijklmnopqrstuvwxyz";static UPPERCASE_LETTERS="ABCDEFGHIJKLMNOPQRSTUVWXYZ";static NUMBERS="0123456789";static LOWERCASE_UPPERCASE=a.LOWERCASE_LETTERS+a.UPPERCASE_LETTERS;static ALPHANUMERIC=a.LOWERCASE_UPPERCASE+a.NUMBERS;static generateNonce(){return this.generateString(this.ALPHANUMERIC,20)}static generateString(e,t){let r="";for(let n=0;n<t;n++)r+=s.pickRandomElement(e);return r}static capitalize(e){return e.substring(0,1).toUpperCase()+e.substring(1)}static count(e,t){return(e.match(new RegExp(this.escapeRegExp(t),"g"))||[]).length}static escapeRegExp(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}}class o{constructor(e,t,r,n){this.parent=e,this.localMap=new Map,this.remoteSet=new Set,this.registry=new FinalizationRegistry(e=>{this.remoteSet.delete(e)&&t.sendPacket({id:"proxy:cleanup",type:r,key:e})}),t.addHandler("proxy:cleanup",e=>{if(e.type!=r)return;let t=this.delete(e.key);void 0!==t&&void 0!==n&&n(t)})}generateKey(e){for(;;){let t=a.generateNonce();if(!this.localMap.has(t))return this.localMap.set(t,e),t}}addLocal(e,t){return t?(this.localMap.set(t,e),t):this.generateKey(e)}get(e){return this.localMap.get(e)}delete(e){let t=this.localMap.get(e);return this.localMap.delete(e),t}registerRemote(e,t){this.registry.register(t,e)}has(e){return this.localMap.has(e)}hasRemote(e){return this.remoteSet.has(e)}deleteRemote(e){return this.remoteSet.delete(e)}}class h{constructor(e,t,r){this.parent=e,this.threadId=t,this.messenger=r,this.objects=new o(this,r,"object"),this.functions=new o(this,r,"function"),this.iterators=new o(this,r,"iterator",e=>{e.return&&e.return().then()}),this.messenger.addHandler("proxy:refresh_object_request",this.onObjectRefresh.bind(this)),this.messenger.addHandler("proxy:method_request",this.onMethod.bind(this)),this.messenger.addHandler("proxy:function_request",this.onFunction.bind(this)),this.messenger.addHandler("proxy:create_iterator_request",this.onIteratorCreate.bind(this)),this.messenger.addHandler("proxy:iterator_next_request",this.onIteratorNext.bind(this)),this.messenger.addHandler("proxy:iterator_close_request",this.onIteratorClose.bind(this))}getThreadId(){return this.threadId}serialize(e,t){return this.parent.getRPack().getNetworkManager().serialize(this.threadId,e,t)}deserialize(e){return this.parent.getRPack().getNetworkManager().deserialize(this.threadId,e)}sendValue(e,t,r,n){this.messenger.sendPacket({id:e,nonce:t,value:this.serialize(r),...n})}sendError(e,t,r){this.messenger.sendPacket({id:e,nonce:t,error:this.serialize(r)})}sendErrorRaw(e,t,r){this.sendError(e,t,new Error(r))}onObjectRefresh(e){let t=e.objectKey;if(!this.objects.has(t))return void this.sendErrorRaw("proxy:refresh_object_response",e.nonce,"Unknown object key "+t);let r=this.objects.get(t);this.sendValue("proxy:refresh_object_response",e.nonce,r)}onMethod(e){let t=e.objectKey;if(!this.objects.has(t))return void this.sendErrorRaw("proxy:method_response",e.nonce,"Unknown object key "+t);let r=this.objects.get(t),n=e.method;if(!(n in r))return void this.sendErrorRaw("proxy:method_response",e.nonce,"Property "+n+" is not present in object "+t);let i=r[n],s=e.args.map(e=>this.deserialize(e)),a=i.apply(r,s);Promise.resolve(a).then(t=>{this.sendValue("proxy:method_response",e.nonce,t)},t=>{this.sendError("proxy:method_response",e.nonce,t)})}onFunction(e){let t=e.functionKey;if(!this.functions.has(t))return void this.sendErrorRaw("proxy:function_response",e.nonce,"Unknown function key "+t);let r=this.functions.get(t)(...e.args.map(e=>this.deserialize(e)));Promise.resolve(r).then(t=>{this.sendValue("proxy:function_response",e.nonce,t)},t=>{this.sendError("proxy:function_response",e.nonce,t)})}onIteratorCreate(e){let t=e.objectKey;if(!this.objects.has(t))return void this.sendErrorRaw("proxy:create_iterator_response",e.nonce,"Unknown object key "+t);let r,n=this.objects.get(t);if(n[Symbol.iterator]){let e=n[Symbol.iterator]();r=this.declareLocalIterator(e)}else{if(!n[Symbol.asyncIterator])return void this.sendErrorRaw("proxy:create_iterator_response",e.nonce,"Object "+t+" is not iterable");{let e=n[Symbol.asyncIterator]();r=this.declareLocalAsyncIterator(e)}}this.messenger.sendPacket({id:"proxy:create_iterator_response",nonce:e.nonce,iteratorKey:r})}onIteratorNext(e){let t=e.iteratorKey,r=void 0===e.value?void 0:this.deserialize(e.value);this.iterators.has(t)?this.iterators.get(t).next(r).then(t=>{this.sendValue("proxy:iterator_next_response",e.nonce,t.value,{done:t.done??!1})},t=>{this.sendError("proxy:iterator_next_response",e.nonce,t)}):this.sendErrorRaw("proxy:iterator_next_response",e.nonce,"Unknown iterator key "+t)}onIteratorClose(e){let t=e.iteratorKey;if(this.iterators.has(t)){let e=this.iterators.get(t);e.return&&e.return().then(),this.iterators.delete(t)}}declareLocalObject(e,t){return this.objects.addLocal(e,t)}declareLocalIterator(e){return this.iterators.addLocal(new t(e))}declareLocalAsyncIterator(e){return this.iterators.addLocal(e)}declareFunction(e){return this.functions.addLocal(e)}declareRemoteIterator(e,t){this.iterators.registerRemote(e,t)}requestRemoteObjectIterator(t){let r=new e(this,async()=>{const e=await this.messenger.sendPacketWithNoncePromise("proxy:create_iterator_request",{objectKey:t},"proxy:create_iterator_response");if(e.error)throw this.deserialize(e.error);let n=e.iteratorKey;return this.declareRemoteIterator(n,r),n});return r}async requestRemoteIteratorNext(e,t){if(!this.iterators.hasRemote(e))return{done:!0,value:void 0};let r=await this.messenger.sendPacketWithNoncePromise("proxy:iterator_next_request",{iteratorKey:e,value:void 0===t?void 0:this.serialize(t)},"proxy:iterator_next_response");if(r.error)throw this.deserialize(r.error);{let e=this.deserialize(r.value);return{done:r.done,value:e}}}requestRemoteIteratorClose(e){this.iterators.hasRemote(e)&&(this.messenger.sendPacket({id:"proxy:iterator_close_request",iteratorKey:e}),this.iterators.deleteRemote(e))}async refreshRemote(e){let t=await this.messenger.sendPacketWithNoncePromise("proxy:refresh_object_request",{objectKey:e},"proxy:refresh_object_response");if(t.error)throw this.deserialize(t.error);let r=this.deserialize(t.value);return this.objects.registerRemote(e,r),r}async requestRemoteMethod(e,t,r){let n=await this.messenger.sendPacketWithNoncePromise("proxy:method_request",{objectKey:e,method:t,args:r.map(e=>this.serialize(e))},"proxy:method_response");if(n.error)throw this.deserialize(n.error);return this.deserialize(n.value)}async requestRemoteFunction(e,t){let r=await this.messenger.sendPacketWithNoncePromise("proxy:function_request",{functionKey:e,args:t.map(e=>this.serialize(e))},"proxy:function_response");if(r.error)throw this.deserialize(r.error);return this.deserialize(r.value)}}class l{constructor(e){this.rpack=e,this.remotes=new Map}createRemote(e,t){let r=new h(this,e,t);return this.remotes.set(e,r),r}getRPack(){return this.rpack}getRemote(e){return this.remotes.get(e)}}const u={localsAreProxied:!1,verifyLocals:!0,allowShared:!1},c={...u};let d;var f;(f=d||(d={})).withDefaultOptions=function(e){let t={...c};if(void 0!==e)for(let r in c)r in e&&(t[r]=e[r]);return t},f.withPublicDefaultOptions=function(e){let t={...u};if(void 0!==e)for(let r in u)r in e&&(t[r]=e[r]);return t};const p=d;class g{constructor(e,t,r=!0){this.it=e,this.filter=r?t:e=>void 0!==e&&t(e)}[Symbol.iterator](){return this}next(...e){for(;;){let t=this.it.next(...e);if(this.filter(t.value)||t.done)return t}}return(e){return void 0!==this.it.return?this.it.return(e):{done:!0,value:e}}throw(e){if(void 0!==this.it.throw)return this.it.throw(e);throw e}}class m{get(e,t,r){let n=e[t];return"function"==typeof n?(...r)=>Promise.resolve(e[t](...r)):n}}let _,y=Symbol("isProxy"),w=Symbol("getFunctions");class v{constructor(e,t,r,n,i,s){this.remoteProxy=e,this.objectKey=t,this.typeName=r,this.knownProps=new Map;for(let[t,r]of Object.entries(n))this.knownProps.set(t,e.deserialize(r));this.functions=i,this.iterable=s}get(e,t,r){if(t===Symbol.asyncIterator){if(!this.iterable)return;return()=>{this.remoteProxy.requestRemoteObjectIterator(this.objectKey)}}if(t===y)return!0;if(t===w)return this.functions;if("symbol"!=typeof t){if("constructor"===t){let e=()=>{throw new Error("Cannot call constructor of remote object")};return Object.defineProperty(e,"name",{value:this.typeName}),e}return this.knownProps.has(t)?this.knownProps.get(t):this.functions.includes(t)?(...e)=>this.remoteProxy.requestRemoteMethod(this.objectKey,t,e):void 0}}ownKeys(e){return[...this.knownProps.keys()]}getOwnPropertyDescriptor(e,t){if("symbol"!=typeof t)return this.knownProps.has(t)?{enumerable:!0,configurable:!0}:void 0}has(e,t){return t===Symbol.asyncIterator?this.iterable:!("symbol"==typeof t||!this.knownProps.has(t)&&!this.functions.includes(t))}static fromObject(e,t){return new v(e,t.objectKey,t.typeName,{},t.functions,t.iterable)}static fromRegistryEntry(e,t){return new v(e,t.objectKey,t.typeName,t.props,t.functions,t.iterable)}static isProxy(e){return!0===e[y]}static getFunctions(e){return this.isProxy(e)?e[w]:[]}}class b{constructor(e,t,r){this.manager=e,this.options=r,this.publicOptions=p.withPublicDefaultOptions(r),this.registryId=t,this.map=new Map}getRegistryManager(){return this.manager}getRegistryId(){return this.registryId}getOptions(){return this.publicOptions}getAllEntriesByThread(e){let r=new g(this.map.values(),t=>t.ownerThread===e);return new t(r)}getAllEntries(){return new t(this.map.values())}getAll(){return new t(this.map.values(),e=>e.data)}async get(e){let t=this.map.get(e);if(t)return t.data}async getEntry(e){return this.map.get(e)}async has(e){return this.map.has(e)}async add(e,t){return!this.map.has(e)&&(this.__localAdd(e,this.manager.getRPack().getNetworkManager().getCurrentThreadId(),t),!0)}async remove(e){return this.map.delete(e)}async size(){return this.map.size}__removeAll(e){for(let[t,r]of this.map)r.ownerThread===e&&this.map.delete(t)}__localAdd(e,t,r){if(this.map.has(e)&&this.map.get(e).ownerThread!==t)return!1;if(this.options.localsAreProxied&&!v.isProxy(r)&&"object"==typeof r&&(r=new Proxy(r,new m)),!this.options.allowShared&&null===t)throw new Error("Shared values are not allowed due to allowShared being set to false.");return this.map.set(e,{key:e,ownerThread:t,data:r}),!0}__localRemove(e,t){return(!this.map.has(e)||this.map.get(e).ownerThread===t)&&this.map.delete(e)}__localGet(e){return this.map.get(e)?.data}}class k{constructor(e,t,r,n){this.manager=e,this.options=n,this.remoteThread=t,this.registryId=r,this.localEntries=new Map}getRemote(){return this.manager.getRemote(this.remoteThread)}getRegistryManager(){return this.manager}getRegistryId(){return this.registryId}getOptions(){return this.options}get(e){return this.localEntries.has(e)?(this.options.verifyLocals,Promise.resolve(this.localEntries.get(e).data)):this.getRemote().requestGet(this.registryId,e)}getEntry(e){return this.localEntries.has(e)?(this.options.verifyLocals,Promise.resolve(this.localEntries.get(e))):this.getRemote().requestGetEntry(this.registryId,e)}getAllEntriesByThread(e){return this.getRemote().requestGetAllEntriesByThread(this.registryId,e)}getAllEntries(){return this.getRemote().requestGetAllEntries(this.registryId)}getAll(){return this.getRemote().requestGetAll(this.registryId)}has(e){return this.getRemote().requestHas(this.registryId,e)}async add(e,t){return this.__localAdd(e,this.manager.getRPack().getNetworkManager().getCurrentThreadId(),t),this.getRemote().requestAdd(this.registryId,null,e,t).then(t=>(t||this.localEntries.delete(e),t))}remove(e){return this.getRemote().requestRemove(this.registryId,null,e)}size(){return this.getRemote().requestSize(this.registryId)}__forwardAdd(e,t,r){return this.getRemote().requestAdd(this.registryId,t,e,r)}__forwardRemove(e,t){return this.getRemote().requestRemove(this.registryId,t,e)}__localAdd(e,t,r){if(this.localEntries.has(e)&&this.localEntries.get(e).ownerThread!==t)return!1;if(this.options.localsAreProxied&&!v.isProxy(r)&&"object"==typeof r&&(r=new Proxy(r,new m)),!this.options.allowShared&&null===t)throw new Error("Shared values are not allowed due to allowShared being set to false.");return this.localEntries.set(e,{key:e,ownerThread:t,data:r}),!0}__localGet(e){return this.localEntries.get(e)?.data}}class x{constructor(e){this.handlerLists={},this.sender=e}getHandlerList(e){let t=this.handlerLists[e];return t||(t=[],this.handlerLists[e]=t),t}addHandler(e,t){this.getHandlerList(e).splice(0,0,t)}removeHandler(e,t){let r=this.getHandlerList(e),n=r.indexOf(t);return n>-1&&(r.splice(n,1),!0)}promiseHandlerImpl(e,t,r){let n,i,s=new Promise((e,t)=>{n=e,i=t});return e.push(e=>t(e,n)),void 0!==r&&setTimeout(()=>{i("Timeout was reached: "+r)},r),s}addPromiseNonceHandler(e,t,r){return this.promiseHandlerImpl(this.getHandlerList(e),(e,r)=>{if(e.nonce==t)return r(e),!1},r)}addPromiseHandler(e,t){return this.promiseHandlerImpl(this.getHandlerList(e),(e,t)=>(t(e),!1),t)}receivePacket(e){let t=e.id,r=this.getHandlerList(t);if(r)for(let t=r.length-1;t>=0;t--)!1===(0,r[t])(e)&&r.splice(t,1)}sendPacket(e){this.sender(e)}sendPacketWithNoncePromise(e,t,r,n){let i=a.generateNonce(),s=this.addPromiseNonceHandler(r,i,n);return this.sendPacket({...t,id:e,nonce:i}),s}static cast(e){return e}}class E{getRPack(){return this.rpack}async onInit(){}async onShutdown(){}static __setInstance(e,t){void 0===e.rpack&&(e.rpack=t)}}class R{constructor(e,t,r){this.parent=e,this.remoteThreadId=t,this.messenger=r,r.addHandler("registry:add_request",this.onAdd.bind(this)),r.addHandler("registry:has_request",this.onHas.bind(this)),r.addHandler("registry:remove_request",this.onRemove.bind(this)),r.addHandler("registry:size_request",this.onSize.bind(this)),r.addHandler("registry:get_request",this.onGet.bind(this)),r.addHandler("registry:get_entry_request",this.onGetEntry.bind(this)),r.addHandler("registry:get_all_entries_request",this.onGetAllEntries.bind(this)),r.addHandler("registry:get_all_entries_by_thread_request",this.onGetAllEntriesByThread.bind(this)),r.addHandler("registry:get_all_request",this.onGetAll.bind(this))}getCurrentThread(){return this.parent.getRPack().getNetworkManager().getCurrentThreadId()}getRemote(){return this.parent.getRPack().getProxyManager().getRemote(this.remoteThreadId)}serialize(e,t){return this.parent.getRPack().getNetworkManager().serialize(this.remoteThreadId,e,t)}deserialize(e){return this.parent.getRPack().getNetworkManager().deserialize(this.remoteThreadId,e)}sendError(e,t,r){this.messenger.sendPacket({id:e,nonce:t,error:this.serialize(r)})}sendErrorRaw(e,t,r){this.sendError(e,t,new Error(r))}async onAdd(e){let t=await this.parent.getRegistry(e.registryId);if(void 0===t)return void this.sendErrorRaw("registry:add_response",e.nonce,"Unknown registry "+e.registryId);let r=e.ownerThread;if(r!==this.remoteThreadId&&this.remoteThreadId!==P.HOST_THREAD_ID)return void this.sendErrorRaw("registry:add_response",e.nonce,"Non-host threads cannot forward registry requests");let n=this.deserialize(e.value);if(t instanceof k)t.__forwardAdd(e.key,r,n).then(t=>{this.messenger.sendPacket({id:"registry:add_response",nonce:e.nonce,value:t})},t=>{this.sendError("registry:add_response",e.nonce,t)});else if(t instanceof b){let i=t.__localAdd(e.key,r,n);this.messenger.sendPacket({id:"registry:add_response",nonce:e.nonce,value:i})}else this.sendErrorRaw("registry:add_response",e.nonce,"Weird registry type: "+t.constructor.name)}async onHas(e){let t=await this.parent.getRegistry(e.registryId);if(void 0!==t)return t.has(e.key).then(t=>{this.messenger.sendPacket({id:"registry:has_response",nonce:e.nonce,value:t})},t=>{this.sendError("registry:has_response",e.nonce,t)});this.sendErrorRaw("registry:has_response",e.nonce,"Unknown registry "+e.registryId)}async onRemove(e){let t=await this.parent.getRegistry(e.registryId);if(void 0===t)return void this.sendErrorRaw("registry:remove_response",e.nonce,"Unknown registry "+e.registryId);let r=e.ownerThread;if(r===this.remoteThreadId||this.remoteThreadId===P.HOST_THREAD_ID)if(t instanceof k)t.__forwardRemove(e.key,r).then(t=>{this.messenger.sendPacket({id:"registry:remove_response",nonce:e.nonce,value:t})},t=>{this.sendError("registry:remove_response",e.nonce,t)});else if(t instanceof b){let n=t.__localRemove(e.key,r);this.messenger.sendPacket({id:"registry:remove_response",nonce:e.nonce,value:n})}else this.sendErrorRaw("registry:remove_response",e.nonce,"Weird registry type: "+t.constructor.name);else this.sendErrorRaw("registry:remove_response",e.nonce,"Non-host threads cannot forward registry requests")}async onSize(e){let t=await this.parent.getRegistry(e.registryId);if(void 0!==t)return t.size().then(t=>{this.messenger.sendPacket({id:"registry:size_response",nonce:e.nonce,value:t})},t=>{this.sendError("registry:size_response",e.nonce,t)});this.sendErrorRaw("registry:size_response",e.nonce,"Unknown registry "+e.registryId)}async onGet(e){let t=await this.parent.getRegistry(e.registryId);if(void 0!==t)return t.get(e.key).then(t=>{this.messenger.sendPacket({id:"registry:get_response",nonce:e.nonce,value:this.serialize(t,{objectMode:"registry"})})},t=>{this.sendError("registry:get_response",e.nonce,t)});this.sendErrorRaw("registry:get_response",e.nonce,"Unknown registry "+e.registryId)}async onGetEntry(e){let t=await this.parent.getRegistry(e.registryId);if(void 0!==t)return t.getEntry(e.key).then(t=>{void 0!==t?this.messenger.sendPacket({id:"registry:get_entry_response",nonce:e.nonce,value:{key:this.serialize(t.key),ownerThread:t?.ownerThread,data:this.serialize(t.key,{objectMode:"registry"})}}):this.messenger.sendPacket({id:"registry:get_entry_response",nonce:e.nonce,value:null})},t=>{this.sendError("registry:get_entry_response",e.nonce,t)});this.sendErrorRaw("registry:get_entry_response",e.nonce,"Unknown registry "+e.registryId)}async onGetAllEntries(e){let t=await this.parent.getRegistry(e.registryId);if(void 0===t)return void this.sendErrorRaw("registry:get_all_entries_response",e.nonce,"Unknown registry "+e.registryId);let r=this.getRemote(),n=t.getAllEntries(),i=r.declareLocalAsyncIterator(n);this.messenger.sendPacket({id:"registry:get_all_entries_response",nonce:e.nonce,iteratorKey:i})}async onGetAllEntriesByThread(e){let t=await this.parent.getRegistry(e.registryId);if(void 0===t)return void this.sendErrorRaw("registry:get_all_entries_by_thread_response",e.nonce,"Unknown registry "+e.registryId);let r=this.getRemote(),n=t.getAllEntriesByThread(e.ownerThread),i=r.declareLocalAsyncIterator(n);this.messenger.sendPacket({id:"registry:get_all_entries_by_thread_response",nonce:e.nonce,iteratorKey:i})}async onGetAll(e){let t=await this.parent.getRegistry(e.registryId);if(void 0===t)return void this.sendErrorRaw("registry:get_all_response",e.nonce,"Unknown registry "+e.registryId);let r=this.getRemote(),n=t.getAll(),i=r.declareLocalAsyncIterator(n);this.messenger.sendPacket({id:"registry:get_all_response",nonce:e.nonce,iteratorKey:i})}async requestAdd(e,t,r,n){let i=await this.messenger.sendPacketWithNoncePromise("registry:add_request",{registryId:e,ownerThread:t??this.getCurrentThread(),key:r,value:this.serialize(n,{objectMode:"registry"})},"registry:add_response");if(i.error)throw this.deserialize(i.error);return i.value}async requestHas(e,t){let r=await this.messenger.sendPacketWithNoncePromise("registry:has_request",{registryId:e,key:t},"registry:has_response");if(r.error)throw this.deserialize(r.error);return r.value}async requestRemove(e,t,r){let n=await this.messenger.sendPacketWithNoncePromise("registry:remove_request",{registryId:e,ownerThread:t??this.getCurrentThread(),key:r},"registry:remove_response");if(n.error)throw this.deserialize(n.error);return n.value}async requestSize(e){let t=await this.messenger.sendPacketWithNoncePromise("registry:size_request",{registryId:e},"registry:size_response");if(t.error)throw this.deserialize(t.error);return t.value}async requestGet(e,t){let r=await this.messenger.sendPacketWithNoncePromise("registry:get_request",{registryId:e,key:t},"registry:get_response");if(r.error)throw this.deserialize(r.error);if(null!=r.value)return this.deserialize(r.value)}async requestGetEntry(e,t){let r=await this.messenger.sendPacketWithNoncePromise("registry:get_entry_request",{registryId:e,key:t},"registry:get_entry_response");if(r.error)throw this.deserialize(r.error);if(null!=r.value)return{key:this.deserialize(r.value.key),ownerThread:r.value.ownerThread,data:this.deserialize(r.value.data)}}requestGetAllEntries(t){let r=this.getRemote(),n=new e(r,async()=>{const e=await this.messenger.sendPacketWithNoncePromise("registry:get_all_entries_request",{registryId:t},"registry:get_all_entries_response");if(e.error)throw this.deserialize(e.error);let i=e.iteratorKey;return r.declareRemoteIterator(i,n),i});return n}requestGetAllEntriesByThread(t,r){let n=this.getRemote(),i=new e(n,async()=>{const e=await this.messenger.sendPacketWithNoncePromise("registry:get_all_entries_by_thread_request",{registryId:t,ownerThread:r},"registry:get_all_entries_by_thread_response");if(e.error)throw this.deserialize(e.error);let s=e.iteratorKey;return n.declareRemoteIterator(s,i),s});return i}requestGetAll(t){let r=this.getRemote(),n=new e(r,async()=>{const e=await this.messenger.sendPacketWithNoncePromise("registry:get_all_request",{registryId:t},"registry:get_all_response");if(e.error)throw this.deserialize(e.error);let i=e.iteratorKey;return r.declareRemoteIterator(i,n),i});return n}}class S{static META_REGISTRY_ID="rpack:registry";static PLUGIN_REGISTRY_ID="rpack:plugin";constructor(e){this.rpack=e,this.remotes=new Map,this.metaRegistry=this.__createInternalRegistry(S.META_REGISTRY_ID,{localsAreProxied:!1,allowShared:!0})}async createRegistry(e,t){let r=new b(this,e,p.withDefaultOptions(t));if(await this.metaRegistry.add(e,r))return r;throw new Error("Failed to create registry "+e)}getRPack(){return this.rpack}createRemote(e,t){let r=new R(this,e,t);return this.remotes.set(e,r),r}getRemote(e){return this.remotes.get(e)}getRegistry(e){return this.metaRegistry.get(e)}__createInternalRegistry(e,t){let r;return r=this.rpack.isPluginThread()?new k(this,P.HOST_THREAD_ID,e,p.withPublicDefaultOptions(t)):new b(this,e,p.withDefaultOptions(t)),this.rpack.getLoadPromise().then(()=>{this.metaRegistry.__localAdd(e,null,r)}),r}__deserializeRegistry(e,t,r){if(this.metaRegistry instanceof b||this.metaRegistry instanceof k){let n=this.metaRegistry.__localGet(e);if(void 0!==n)return n;let i=new k(this,t,e,r);return this.metaRegistry.__localAdd(e,t,i),i}throw new Error("Weird registry type: "+this.metaRegistry.constructor.name)}}(_||(_={})).isSubclass=function(e,t){return t.prototype.isPrototypeOf(e.prototype)};const I=_;class P{static HOST_THREAD_ID="host";constructor(e,t,r){this.rpack=e,this.wellKnownMap=new Map,this.wellKnownReverseMap=new Map,this.mapWellKnown("RPack",e),this.mapWellKnown("NetworkManager",e.getNetworkManager()),this.mapWellKnown("ProxyManager",e.getProxyManager()),this.mapWellKnown("RegistryManager",e.getRegistryManager()),this.plugin=null,this.pluginRegistry=e.getRegistryManager().__createInternalRegistry(S.PLUGIN_REGISTRY_ID,{}),this.threadId=t,void 0===r?this.threads=new Map:this.hostMessenger=r}mapWellKnown(e,t){this.wellKnownMap.set(t,{type:"well_known",kind:e}),this.wellKnownReverseMap.set(e,t)}async __initPlugin(e){if(null!==this.plugin)throw new Error("Cannot initialize a plugin twice");let t=await import(e);if(!("default"in t))throw new Error("Failed to import plugin "+e+": no default export");let r=t.default;if("function"!=typeof r)throw new Error("Failed to import plugin "+e+": default export is not a class");if(r.length>0)throw new Error("Failed to import plugin "+e+": default export's constructor expects arguments (should be empty)");if(!I.isSubclass(r,E))throw new Error("Failed to import plugin "+e+": default export is not a subclass of RPPlugin");this.plugin=new r,E.__setInstance(this.plugin,this.rpack),await this.plugin.onInit();let n=e.replace(/\.\/(\S+)\.js/g,"$1");await this.pluginRegistry.add(n,this.plugin),this.hostMessenger.addHandler("thread:shutdown_request",async e=>{await this.plugin.onShutdown(),this.hostMessenger.sendPacket({id:"thread:shutdown_response",nonce:e.nonce})})}getRPack(){return this.rpack}getHostMessenger(){return this.hostMessenger}getCurrentThreadId(){return this.threadId}getPlugin(e){return this.pluginRegistry.get(e)}getPluginRegistry(){return this.pluginRegistry}__initRemotes(e,t){this.rpack.getProxyManager().createRemote(e,x.cast(t)),this.rpack.getRegistryManager().createRemote(e,x.cast(t))}async __createThread(e){if(!this.threads)throw new Error("Cannot create a Worker from a Worker!");let t=a.generateNonce();for(;this.threads.has(t);)t=a.generateNonce();console.debug("Starting new thread "+t);let r=await this.rpack.getPlatform().createPluginThread(t,e);this.threads.set(t,r);let n=r.getMessenger(),i=null;for(let r=0;r<16;r++)try{console.debug("Waiting for thread "+t+" (attempt "+(r+1)+"/16, waiting "+Math.pow(2,r)+"ms)...");let s=a.generateNonce();n.sendPacket({id:"thread:hello_request",nonce:s,threadId:t,scriptUrl:e}),await n.addPromiseNonceHandler("thread:hello_response",s,Math.pow(2,r)),this.__initRemotes(t,x.cast(n)),console.debug("Thread "+t+" started"),i=s;break}catch{console.debug("Thread "+t+" timed out. Trying again...")}if(null===i)throw console.debug("Thread "+t+" failed to start, aborting"),await r.terminate(),this.threads.delete(t),new Error("Thread "+t+" failed to start");return await n.addPromiseNonceHandler("thread:plugin_load",i),console.debug("Plugin loaded in thread "+t),t}ensureJSONInner(e,t,r,n){if("string"==typeof t||"number"==typeof t||"boolean"==typeof t||null==t)return!0;if("object"==typeof t){if(Array.isArray(t)){for(let i=0;i<t.length;i++)if(!this.ensureJSONInner(e,t[i],r,n+"["+i+"]"))return!1;return!0}if(Object.getPrototypeOf(t)===Object.prototype){for(let i in t)if(!this.ensureJSONInner(e,t[i],r,n+"."+i))return!1;return!0}}if(r)throw new TypeError("Failed to validate object "+e+" as JSON: root"+n+" is not a JSON-like object");return!1}ensureJSON(e,t){return this.ensureJSONInner(e,e,t??!1)}getFunctionNames(e){if(v.isProxy(e))return v.getFunctions(e);let t=[],r=Object.getPrototypeOf(e);for(;void 0!==r&&r!==Object.prototype;)t.push(...Object.getOwnPropertyNames(r)),r=Object.getPrototypeOf(r);let n=t.indexOf("constructor");n>-1&&t.splice(n,1);for(let r=t.length-1;r>=0;r--)"function"!=typeof e[t[r]]&&t.splice(r,1);return t}serialize(e,t,r){if(void 0===t)return{type:"undefined"};if(!v.isProxy(t)&&("string"==typeof t||"number"==typeof t||"boolean"==typeof t||null==t||Object.getPrototypeOf(t)===Object.prototype&&this.ensureJSON(t,!1)))return{type:"json",value:t};if(t instanceof b||t instanceof k)return{type:"registry",registryId:t.getRegistryId(),options:t.getOptions()};if(t instanceof Error)return{type:"error",errorType:t.name,name:t.name,message:t.message,stack:t.stack};if("function"==typeof t)return{type:"function",functionKey:this.rpack.getProxyManager().getRemote(e).declareFunction(t)};if(this.wellKnownMap.has(t))return this.wellKnownMap.get(t);if(null===t)throw new Error("Null past the null checK?");if("registry"==r?.objectMode){let r=this.rpack.getProxyManager().getRemote(e).declareLocalObject(t),n={},i=this.getFunctionNames(t);for(let r of Object.keys(t))n[r]=this.serialize(e,t[r]);return{type:"registry_entry",objectKey:r,typeName:t.constructor.name,props:n,functions:i,iterable:Symbol.iterator in t||Symbol.asyncIterator in t}}{let r=this.rpack.getProxyManager().getRemote(e).declareLocalObject(t),n=Object.keys(t),i=this.getFunctionNames(t);return{type:"object",objectKey:r,typeName:t.constructor.name,props:n,functions:i,iterable:Symbol.iterator in t||Symbol.asyncIterator in t}}}deserialize(e,t){let r=this.rpack.getProxyManager().getRemote(e),n=t.type;switch(t.type){case"undefined":return;case"json":return t.value;case"registry":return this.rpack.getRegistryManager().__deserializeRegistry(t.registryId,e,t.options);case"registry_entry":return new Proxy({},v.fromRegistryEntry(r,t));case"object":return new Proxy({},v.fromObject(r,t));case"function":return(...e)=>r.requestRemoteFunction(t.functionKey,e);case"well_known":return this.wellKnownReverseMap.get(t.kind);case"error":let i;switch(t.errorType){case"Error":i=new Error;break;case"EvalError":i=new EvalError;break;case"RangeError":i=new RangeError;break;case"ReferenceError":i=new ReferenceError;break;case"SyntaxError":i=new SyntaxError;break;case"TypeError":i=new TypeError;break;case"URIError":i=new URIError}return i.name=t.name,i.message=t.message,i.stack=t.stack,i;default:throw new Error("Failed to deserialize unknown type: "+n)}}}class z{constructor(e){this.rpack=e,e.isPluginThread()||(this.sources=[],this.sources.push(new M(e,M.DEFAULT_PORT_RANGES,1e3)))}getRPack(){return this.rpack}}class A{constructor(e,t){this.threadId=e,this.messenger=t}getThreadId(){return this.threadId}getMessenger(){return this.messenger}}class C{constructor(e){this.id=e}}class O{constructor(){this.map=new Map,this.manifest=null}async getEntry(e){if(this.map.has(e))return this.map.get(e);let t=await this.resolveEntry(e);return this.map.set(e,t),t}async getPluginManifest(){if(null!==this.manifest)return this.manifest;let e=await this.getEntry("manifest.json"),t=JSON.parse((new TextDecoder).decode(await e.arrayBuffer()));return this.manifest=t,t}}class T{constructor(e,t,r){this.supplier=e,this.completeHandler=t,this.errorHandler=r,this.lastBatch=null,this.lastIndex=-1}[Symbol.asyncIterator](){return this}async next(){if(this.result)return this.result;null==this.lastBatch&&(this.lastBatch=await this.supplier(),this.lastIndex=0);let e=this.lastBatch.values[this.lastIndex];if(this.lastIndex++,this.lastIndex==this.lastBatch.values.length){let e=this.lastBatch;if(this.lastBatch=null,e.done)return this.result={done:!0,value:void 0},this.result}return{done:!1,value:e}}async return(e){return this.completeHandler&&await this.completeHandler(e),this.result={value:this.result,done:!0},this.result}async throw(e){return this.errorHandler&&await this.errorHandler(e),this.result={value:void 0,done:!0},this.result}}class N{constructor(e,t,r,n){this.rpackChannel="release",this.rpackVersion="0.1.5",this.rpackRepository="https://github.com/rpack-dev/rpack-dev.git",this.implementationName=e,this.implementationChannel=t,this.implementationVersion=r,this.implementationRepository=n}getRPackChannel(){return this.rpackChannel}getRPackVersion(){return this.rpackVersion}getRPackRepository(){return this.rpackRepository}getImplementationName(){return this.implementationName}getImplementationChannel(){return this.implementationChannel}getImplementationVersion(){return this.implementationVersion}getImplementationRepository(){return this.implementationRepository}}class B{constructor(e,t,r){this.parent=e,this.port=t,this.manifest=r}init(){if(console.log("Found dev server on port "+this.port+" with manifest:",this.manifest),this.manifest.websocketRefresh){let e=new WebSocket("ws://localhost:"+this.port),t=new x(t=>{e.send(JSON.stringify(t))});e.onmessage=e=>{t.receivePacket(JSON.parse(e.data))},t.addHandler("hello_response",e=>{console.log("Connected to dev server's websocket on port "+this.port+" with manifest: ",this.manifest)}),t.addHandler("plugin_update",e=>{this.parent.reloadPlugin(e.groupId,e.pluginId)}),e.onclose=()=>{console.log("Disconnected from dev server's websocket on port "+this.port),this.remove()},e.onopen=()=>{t.sendPacket({id:"hello_request",rpackChannel:this.parent.getRPack().getVersion().getRPackChannel(),rpackVersion:this.parent.getRPack().getVersion().getRPackVersion(),implementationName:this.parent.getRPack().getVersion().getImplementationName(),implementationChannel:this.parent.getRPack().getVersion().getImplementationChannel(),implementationVersion:this.parent.getRPack().getVersion().getImplementationVersion()})},this.socket=e}}getAllPlugins(){return new T(async()=>({done:!0,values:await(await fetch("http://localhost:"+this.port+"/api/get_all_plugins")).json()}))}async getPlugin(e,t){try{return await(await fetch("http://localhost:"+this.port+"/plugin/"+e+"/"+t+"/manifest.json")).json()}catch{return null}}async getPluginArchive(e,t){return await(await fetch("http://localhost:"+this.port+"/plugin/"+e+"/"+t+"/plugin.zip")).arrayBuffer()}remove(){this.socket?.close()}}var j=r(710),D=r.n(j);class L extends O{constructor(e){super(),this.zip=e}async resolveEntry(e){let t=this.zip.file(e);return null===t?null:await t.async("blob")}async getEntries(){return Object.keys(this.zip.files)}}class M{static DEFAULT_PORT_RANGES=[[14287,14296]];constructor(e,t,r){this.rpack=e,this.portRanges=t,this.lastFoundPorts=[],this.servers=new Map,this.autoScanRate=6e4*r,this.autoScanPromise=null,this.autoScanTimeout=r>0?setTimeout(()=>this.performScan(),this.autoScanRate):null}async performScan(){if(this.autoScanPromise)return null;clearTimeout(this.autoScanTimeout),this.autoScanTimeout=null,this.autoScanPromise=this.scanPorts();let e=await this.autoScanPromise,t=s.diff(this.lastFoundPorts,e,(e,t)=>e.port===t.port);this.lastFoundPorts=e;for(let e of t.added){let t=new B(this,e.port,e.manifest);this.servers.set(e.port,t),t.init()}this.autoScanPromise=null,this.autoScanRate>0&&(this.autoScanTimeout=setTimeout(()=>this.performScan(),this.autoScanRate))}async scanPorts(){let e=[],t=[];for(let[r,n]of this.portRanges)for(let i=r;i<=n;i++)e.includes(i)||(e.push(i),t.push(fetch("http://localhost:"+i+"/rpack_dev_server").then(e=>e.json()).then(e=>e.rpackDevServer?{port:i,manifest:e}:null,()=>null)));return(await Promise.all(t)).filter(e=>null!==e)}getRPack(){return this.rpack}getSourceId(){throw new Error("Method not implemented.")}remove(){for(let e of this.servers.values())e.remove()}reloadPlugin(e,t){}async*getAllPlugins(){for(let e of this.servers.values())yield*e.getAllPlugins()}async getPlugin(e,t,r){for(let r of this.servers.values()){let n=await r.getPlugin(e,t);if(null!==n)return n}return null}async getPluginArchive(e,t,r){for(let r of this.servers.values()){let n=await r.getPluginArchive(e,t);if(null==n)continue;let i=await D().loadAsync(n);return new L(i)}throw new Error("Plugin not found")}}class F{static platform=null;static platformLoadPromise=new i;static initPlatform(e){if(null!==this.platform)throw new Error("Platform already initialized");this.platform=e,this.platformLoadPromise.resolve(e)}static async createInstance(e){if(e&&void 0!==this.instance)return this.instance;let t=await this.platformLoadPromise.getPromise(),r=await t.createRPackInstance(e=>new F(e));return e&&(this.instance=r),r}static getInstance(){return this.instance}constructor(e){this.pluginThread=e.pluginThread,this.loadPromise=e.loadPromise,this.platform=e.platform,this.version=e.version,this.proxyManager=new l(this),this.registryManager=new S(this),this.pluginManager=new z(this),this.networkManager=new P(this,e.threadId,e.hostMessenger)}getLoadPromise(){return this.loadPromise}getPlatform(){return this.platform}getVersion(){return this.version}getProxyManager(){return this.proxyManager}getRegistryManager(){return this.registryManager}getPluginManager(){return this.pluginManager}getNetworkManager(){return this.networkManager}isPluginThread(){return this.pluginThread}getPlugin(e){return this.getNetworkManager().getPlugin(e)}}})(),n})());
2
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.RPack=t():e.RPack=t()}(globalThis,()=>(()=>{var e={710:(e,t,r)=>{e.exports=function e(t,r,n){function i(a,o){if(!r[a]){if(!t[a]){if(s)return s(a,!0);var h=new Error("Cannot find module '"+a+"'");throw h.code="MODULE_NOT_FOUND",h}var l=r[a]={exports:{}};t[a][0].call(l.exports,function(e){return i(t[a][1][e]||e)},l,l.exports,e,t,r,n)}return r[a].exports}for(var s=void 0,a=0;a<n.length;a++)i(n[a]);return i}({1:[function(e,t,r){"use strict";var n=e("./utils"),i=e("./support"),s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";r.encode=function(e){for(var t,r,i,a,o,h,l,u=[],c=0,d=e.length,f=d,p="string"!==n.getTypeOf(e);c<e.length;)f=d-c,i=p?(t=e[c++],r=c<d?e[c++]:0,c<d?e[c++]:0):(t=e.charCodeAt(c++),r=c<d?e.charCodeAt(c++):0,c<d?e.charCodeAt(c++):0),a=t>>2,o=(3&t)<<4|r>>4,h=1<f?(15&r)<<2|i>>6:64,l=2<f?63&i:64,u.push(s.charAt(a)+s.charAt(o)+s.charAt(h)+s.charAt(l));return u.join("")},r.decode=function(e){var t,r,n,a,o,h,l=0,u=0,c="data:";if(e.substr(0,5)===c)throw new Error("Invalid base64 input, it looks like a data url.");var d,f=3*(e=e.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(e.charAt(e.length-1)===s.charAt(64)&&f--,e.charAt(e.length-2)===s.charAt(64)&&f--,f%1!=0)throw new Error("Invalid base64 input, bad content length.");for(d=i.uint8array?new Uint8Array(0|f):new Array(0|f);l<e.length;)t=s.indexOf(e.charAt(l++))<<2|(a=s.indexOf(e.charAt(l++)))>>4,r=(15&a)<<4|(o=s.indexOf(e.charAt(l++)))>>2,n=(3&o)<<6|(h=s.indexOf(e.charAt(l++))),d[u++]=t,64!==o&&(d[u++]=r),64!==h&&(d[u++]=n);return d}},{"./support":30,"./utils":32}],2:[function(e,t,r){"use strict";var n=e("./external"),i=e("./stream/DataWorker"),s=e("./stream/Crc32Probe"),a=e("./stream/DataLengthProbe");function o(e,t,r,n,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=r,this.compression=n,this.compressedContent=i}o.prototype={getContentWorker:function(){var e=new i(n.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new a("data_length")),t=this;return e.on("end",function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),e},getCompressedWorker:function(){return new i(n.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},o.createWorkerFrom=function(e,t,r){return e.pipe(new s).pipe(new a("uncompressedSize")).pipe(t.compressWorker(r)).pipe(new a("compressedSize")).withStreamInfo("compression",t)},t.exports=o},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,r){"use strict";var n=e("./stream/GenericWorker");r.STORE={magic:"\0\0",compressWorker:function(){return new n("STORE compression")},uncompressWorker:function(){return new n("STORE decompression")}},r.DEFLATE=e("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,r){"use strict";var n=e("./utils"),i=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();t.exports=function(e,t){return void 0!==e&&e.length?"string"!==n.getTypeOf(e)?function(e,t,r){var n=i,s=0+r;e^=-1;for(var a=0;a<s;a++)e=e>>>8^n[255&(e^t[a])];return-1^e}(0|t,e,e.length):function(e,t,r){var n=i,s=0+r;e^=-1;for(var a=0;a<s;a++)e=e>>>8^n[255&(e^t.charCodeAt(a))];return-1^e}(0|t,e,e.length):0}},{"./utils":32}],5:[function(e,t,r){"use strict";r.base64=!1,r.binary=!1,r.dir=!1,r.createFolders=!0,r.date=null,r.compression=null,r.compressionOptions=null,r.comment=null,r.unixPermissions=null,r.dosPermissions=null},{}],6:[function(e,t,r){"use strict";var n;n="undefined"!=typeof Promise?Promise:e("lie"),t.exports={Promise:n}},{lie:37}],7:[function(e,t,r){"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,i=e("pako"),s=e("./utils"),a=e("./stream/GenericWorker"),o=n?"uint8array":"array";function h(e,t){a.call(this,"FlateWorker/"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}r.magic="\b\0",s.inherits(h,a),h.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(s.transformTo(o,e.data),!1)},h.prototype.flush=function(){a.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},h.prototype.cleanUp=function(){a.prototype.cleanUp.call(this),this._pako=null},h.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},r.compressWorker=function(e){return new h("Deflate",e)},r.uncompressWorker=function(){return new h("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,r){"use strict";function n(e,t){var r,n="";for(r=0;r<t;r++)n+=String.fromCharCode(255&e),e>>>=8;return n}function i(e,t,r,i,a,u){var c,d,f=e.file,p=e.compression,g=u!==o.utf8encode,m=s.transformTo("string",u(f.name)),_=s.transformTo("string",o.utf8encode(f.name)),y=f.comment,w=s.transformTo("string",u(y)),v=s.transformTo("string",o.utf8encode(y)),b=_.length!==f.name.length,k=v.length!==y.length,x="",E="",R="",S=f.dir,I=f.date,P={crc32:0,compressedSize:0,uncompressedSize:0};t&&!r||(P.crc32=e.crc32,P.compressedSize=e.compressedSize,P.uncompressedSize=e.uncompressedSize);var A=0;t&&(A|=8),g||!b&&!k||(A|=2048);var z=0,C=0;S&&(z|=16),"UNIX"===a?(C=798,z|=function(e,t){var r=e;return e||(r=t?16893:33204),(65535&r)<<16}(f.unixPermissions,S)):(C=20,z|=function(e){return 63&(e||0)}(f.dosPermissions)),c=I.getUTCHours(),c<<=6,c|=I.getUTCMinutes(),c<<=5,c|=I.getUTCSeconds()/2,d=I.getUTCFullYear()-1980,d<<=4,d|=I.getUTCMonth()+1,d<<=5,d|=I.getUTCDate(),b&&(E=n(1,1)+n(h(m),4)+_,x+="up"+n(E.length,2)+E),k&&(R=n(1,1)+n(h(w),4)+v,x+="uc"+n(R.length,2)+R);var O="";return O+="\n\0",O+=n(A,2),O+=p.magic,O+=n(c,2),O+=n(d,2),O+=n(P.crc32,4),O+=n(P.compressedSize,4),O+=n(P.uncompressedSize,4),O+=n(m.length,2),O+=n(x.length,2),{fileRecord:l.LOCAL_FILE_HEADER+O+m+x,dirRecord:l.CENTRAL_FILE_HEADER+n(C,2)+O+n(w.length,2)+"\0\0\0\0"+n(z,4)+n(i,4)+m+x+w}}var s=e("../utils"),a=e("../stream/GenericWorker"),o=e("../utf8"),h=e("../crc32"),l=e("../signature");function u(e,t,r,n){a.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=r,this.encodeFileName=n,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}s.inherits(u,a),u.prototype.push=function(e){var t=e.meta.percent||0,r=this.entriesCount,n=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,a.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:r?(t+100*(r-n-1))/r:100}}))},u.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var r=i(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:r.fileRecord,meta:{percent:0}})}else this.accumulate=!0},u.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,r=i(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(r.dirRecord),t)this.push({data:function(e){return l.DATA_DESCRIPTOR+n(e.crc32,4)+n(e.compressedSize,4)+n(e.uncompressedSize,4)}(e),meta:{percent:100}});else for(this.push({data:r.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},u.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t<this.dirRecords.length;t++)this.push({data:this.dirRecords[t],meta:{percent:100}});var r=this.bytesWritten-e,i=function(e,t,r,i,a){var o=s.transformTo("string",a(i));return l.CENTRAL_DIRECTORY_END+"\0\0\0\0"+n(e,2)+n(e,2)+n(t,4)+n(r,4)+n(o.length,2)+o}(this.dirRecords.length,r,e,this.zipComment,this.encodeFileName);this.push({data:i,meta:{percent:100}})},u.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},u.prototype.registerPrevious=function(e){this._sources.push(e);var t=this;return e.on("data",function(e){t.processChunk(e)}),e.on("end",function(){t.closedSource(t.previous.streamInfo),t._sources.length?t.prepareNextSource():t.end()}),e.on("error",function(e){t.error(e)}),this},u.prototype.resume=function(){return!!a.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},u.prototype.error=function(e){var t=this._sources;if(!a.prototype.error.call(this,e))return!1;for(var r=0;r<t.length;r++)try{t[r].error(e)}catch(e){}return!0},u.prototype.lock=function(){a.prototype.lock.call(this);for(var e=this._sources,t=0;t<e.length;t++)e[t].lock()},t.exports=u},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(e,t,r){"use strict";var n=e("../compressions"),i=e("./ZipFileWorker");r.generateWorker=function(e,t,r){var s=new i(t.streamFiles,r,t.platform,t.encodeFileName),a=0;try{e.forEach(function(e,r){a++;var i=function(e,t){var r=e||t,i=n[r];if(!i)throw new Error(r+" is not a valid compression method !");return i}(r.options.compression,t.compression),o=r.options.compressionOptions||t.compressionOptions||{},h=r.dir,l=r.date;r._compressWorker(i,o).withStreamInfo("file",{name:e,dir:h,date:l,comment:r.comment||"",unixPermissions:r.unixPermissions,dosPermissions:r.dosPermissions}).pipe(s)}),s.entriesCount=a}catch(e){s.error(e)}return s}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(e,t,r){"use strict";function n(){if(!(this instanceof n))return new n;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files=Object.create(null),this.comment=null,this.root="",this.clone=function(){var e=new n;for(var t in this)"function"!=typeof this[t]&&(e[t]=this[t]);return e}}(n.prototype=e("./object")).loadAsync=e("./load"),n.support=e("./support"),n.defaults=e("./defaults"),n.version="3.10.1",n.loadAsync=function(e,t){return(new n).loadAsync(e,t)},n.external=e("./external"),t.exports=n},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(e,t,r){"use strict";var n=e("./utils"),i=e("./external"),s=e("./utf8"),a=e("./zipEntries"),o=e("./stream/Crc32Probe"),h=e("./nodejsUtils");function l(e){return new i.Promise(function(t,r){var n=e.decompressed.getContentWorker().pipe(new o);n.on("error",function(e){r(e)}).on("end",function(){n.streamInfo.crc32!==e.decompressed.crc32?r(new Error("Corrupted zip : CRC32 mismatch")):t()}).resume()})}t.exports=function(e,t){var r=this;return t=n.extend(t||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:s.utf8decode}),h.isNode&&h.isStream(e)?i.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):n.prepareContent("the loaded zip file",e,!0,t.optimizedBinaryString,t.base64).then(function(e){var r=new a(t);return r.load(e),r}).then(function(e){var r=[i.Promise.resolve(e)],n=e.files;if(t.checkCRC32)for(var s=0;s<n.length;s++)r.push(l(n[s]));return i.Promise.all(r)}).then(function(e){for(var i=e.shift(),s=i.files,a=0;a<s.length;a++){var o=s[a],h=o.fileNameStr,l=n.resolve(o.fileNameStr);r.file(l,o.decompressed,{binary:!0,optimizedBinaryString:!0,date:o.date,dir:o.dir,comment:o.fileCommentStr.length?o.fileCommentStr:null,unixPermissions:o.unixPermissions,dosPermissions:o.dosPermissions,createFolders:t.createFolders}),o.dir||(r.file(l).unsafeOriginalName=h)}return i.zipComment.length&&(r.comment=i.zipComment),r})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(e,t,r){"use strict";var n=e("../utils"),i=e("../stream/GenericWorker");function s(e,t){i.call(this,"Nodejs stream input adapter for "+e),this._upstreamEnded=!1,this._bindStream(t)}n.inherits(s,i),s.prototype._bindStream=function(e){var t=this;(this._stream=e).pause(),e.on("data",function(e){t.push({data:e,meta:{percent:0}})}).on("error",function(e){t.isPaused?this.generatedError=e:t.error(e)}).on("end",function(){t.isPaused?t._upstreamEnded=!0:t.end()})},s.prototype.pause=function(){return!!i.prototype.pause.call(this)&&(this._stream.pause(),!0)},s.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},t.exports=s},{"../stream/GenericWorker":28,"../utils":32}],13:[function(e,t,r){"use strict";var n=e("readable-stream").Readable;function i(e,t,r){n.call(this,t),this._helper=e;var i=this;e.on("data",function(e,t){i.push(e)||i._helper.pause(),r&&r(t)}).on("error",function(e){i.emit("error",e)}).on("end",function(){i.push(null)})}e("../utils").inherits(i,n),i.prototype._read=function(){this._helper.resume()},t.exports=i},{"../utils":32,"readable-stream":16}],14:[function(e,t,r){"use strict";t.exports={isNode:"undefined"!=typeof Buffer,newBufferFrom:function(e,t){if(Buffer.from&&Buffer.from!==Uint8Array.from)return Buffer.from(e,t);if("number"==typeof e)throw new Error('The "data" argument must not be a number');return new Buffer(e,t)},allocBuffer:function(e){if(Buffer.alloc)return Buffer.alloc(e);var t=new Buffer(e);return t.fill(0),t},isBuffer:function(e){return Buffer.isBuffer(e)},isStream:function(e){return e&&"function"==typeof e.on&&"function"==typeof e.pause&&"function"==typeof e.resume}}},{}],15:[function(e,t,r){"use strict";function n(e,t,r){var n,i=s.getTypeOf(t),o=s.extend(r||{},h);o.date=o.date||new Date,null!==o.compression&&(o.compression=o.compression.toUpperCase()),"string"==typeof o.unixPermissions&&(o.unixPermissions=parseInt(o.unixPermissions,8)),o.unixPermissions&&16384&o.unixPermissions&&(o.dir=!0),o.dosPermissions&&16&o.dosPermissions&&(o.dir=!0),o.dir&&(e=g(e)),o.createFolders&&(n=p(e))&&m.call(this,n,!0);var c="string"===i&&!1===o.binary&&!1===o.base64;r&&void 0!==r.binary||(o.binary=!c),(t instanceof l&&0===t.uncompressedSize||o.dir||!t||0===t.length)&&(o.base64=!1,o.binary=!0,t="",o.compression="STORE",i="string");var _;_=t instanceof l||t instanceof a?t:d.isNode&&d.isStream(t)?new f(e,t):s.prepareContent(e,t,o.binary,o.optimizedBinaryString,o.base64);var y=new u(e,_,o);this.files[e]=y}var i=e("./utf8"),s=e("./utils"),a=e("./stream/GenericWorker"),o=e("./stream/StreamHelper"),h=e("./defaults"),l=e("./compressedObject"),u=e("./zipObject"),c=e("./generate"),d=e("./nodejsUtils"),f=e("./nodejs/NodejsStreamInputAdapter"),p=function(e){"/"===e.slice(-1)&&(e=e.substring(0,e.length-1));var t=e.lastIndexOf("/");return 0<t?e.substring(0,t):""},g=function(e){return"/"!==e.slice(-1)&&(e+="/"),e},m=function(e,t){return t=void 0!==t?t:h.createFolders,e=g(e),this.files[e]||n.call(this,e,null,{dir:!0,createFolders:t}),this.files[e]};function _(e){return"[object RegExp]"===Object.prototype.toString.call(e)}var y={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(e){var t,r,n;for(t in this.files)n=this.files[t],(r=t.slice(this.root.length,t.length))&&t.slice(0,this.root.length)===this.root&&e(r,n)},filter:function(e){var t=[];return this.forEach(function(r,n){e(r,n)&&t.push(n)}),t},file:function(e,t,r){if(1!==arguments.length)return e=this.root+e,n.call(this,e,t,r),this;if(_(e)){var i=e;return this.filter(function(e,t){return!t.dir&&i.test(e)})}var s=this.files[this.root+e];return s&&!s.dir?s:null},folder:function(e){if(!e)return this;if(_(e))return this.filter(function(t,r){return r.dir&&e.test(t)});var t=this.root+e,r=m.call(this,t),n=this.clone();return n.root=r.name,n},remove:function(e){e=this.root+e;var t=this.files[e];if(t||("/"!==e.slice(-1)&&(e+="/"),t=this.files[e]),t&&!t.dir)delete this.files[e];else for(var r=this.filter(function(t,r){return r.name.slice(0,e.length)===e}),n=0;n<r.length;n++)delete this.files[r[n].name];return this},generate:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(e){var t,r={};try{if((r=s.extend(e||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:i.utf8encode})).type=r.type.toLowerCase(),r.compression=r.compression.toUpperCase(),"binarystring"===r.type&&(r.type="string"),!r.type)throw new Error("No output type specified.");s.checkSupport(r.type),"darwin"!==r.platform&&"freebsd"!==r.platform&&"linux"!==r.platform&&"sunos"!==r.platform||(r.platform="UNIX"),"win32"===r.platform&&(r.platform="DOS");var n=r.comment||this.comment||"";t=c.generateWorker(this,r,n)}catch(e){(t=new a("error")).error(e)}return new o(t,r.type||"string",r.mimeType)},generateAsync:function(e,t){return this.generateInternalStream(e).accumulate(t)},generateNodeStream:function(e,t){return(e=e||{}).type||(e.type="nodebuffer"),this.generateInternalStream(e).toNodejsStream(t)}};t.exports=y},{"./compressedObject":2,"./defaults":5,"./generate":9,"./nodejs/NodejsStreamInputAdapter":12,"./nodejsUtils":14,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31,"./utils":32,"./zipObject":35}],16:[function(e,t,r){"use strict";t.exports=e("stream")},{stream:void 0}],17:[function(e,t,r){"use strict";var n=e("./DataReader");function i(e){n.call(this,e);for(var t=0;t<this.data.length;t++)e[t]=255&e[t]}e("../utils").inherits(i,n),i.prototype.byteAt=function(e){return this.data[this.zero+e]},i.prototype.lastIndexOfSignature=function(e){for(var t=e.charCodeAt(0),r=e.charCodeAt(1),n=e.charCodeAt(2),i=e.charCodeAt(3),s=this.length-4;0<=s;--s)if(this.data[s]===t&&this.data[s+1]===r&&this.data[s+2]===n&&this.data[s+3]===i)return s-this.zero;return-1},i.prototype.readAndCheckSignature=function(e){var t=e.charCodeAt(0),r=e.charCodeAt(1),n=e.charCodeAt(2),i=e.charCodeAt(3),s=this.readData(4);return t===s[0]&&r===s[1]&&n===s[2]&&i===s[3]},i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return[];var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./DataReader":18}],18:[function(e,t,r){"use strict";var n=e("../utils");function i(e){this.data=e,this.length=e.length,this.index=0,this.zero=0}i.prototype={checkOffset:function(e){this.checkIndex(this.index+e)},checkIndex:function(e){if(this.length<this.zero+e||e<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+e+"). Corrupted zip ?")},setIndex:function(e){this.checkIndex(e),this.index=e},skip:function(e){this.setIndex(this.index+e)},byteAt:function(){},readInt:function(e){var t,r=0;for(this.checkOffset(e),t=this.index+e-1;t>=this.index;t--)r=(r<<8)+this.byteAt(t);return this.index+=e,r},readString:function(e){return n.transformTo("string",this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},t.exports=i},{"../utils":32}],19:[function(e,t,r){"use strict";var n=e("./Uint8ArrayReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(e,t,r){"use strict";var n=e("./DataReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},i.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},i.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./DataReader":18}],21:[function(e,t,r){"use strict";var n=e("./ArrayReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return new Uint8Array(0);var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./ArrayReader":17}],22:[function(e,t,r){"use strict";var n=e("../utils"),i=e("../support"),s=e("./ArrayReader"),a=e("./StringReader"),o=e("./NodeBufferReader"),h=e("./Uint8ArrayReader");t.exports=function(e){var t=n.getTypeOf(e);return n.checkSupport(t),"string"!==t||i.uint8array?"nodebuffer"===t?new o(e):i.uint8array?new h(n.transformTo("uint8array",e)):new s(n.transformTo("array",e)):new a(e)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(e,t,r){"use strict";r.LOCAL_FILE_HEADER="PK",r.CENTRAL_FILE_HEADER="PK",r.CENTRAL_DIRECTORY_END="PK",r.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",r.ZIP64_CENTRAL_DIRECTORY_END="PK",r.DATA_DESCRIPTOR="PK\b"},{}],24:[function(e,t,r){"use strict";var n=e("./GenericWorker"),i=e("../utils");function s(e){n.call(this,"ConvertWorker to "+e),this.destType=e}i.inherits(s,n),s.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},t.exports=s},{"../utils":32,"./GenericWorker":28}],25:[function(e,t,r){"use strict";var n=e("./GenericWorker"),i=e("../crc32");function s(){n.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}e("../utils").inherits(s,n),s.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},t.exports=s},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./GenericWorker");function s(e){i.call(this,"DataLengthProbe for "+e),this.propName=e,this.withStreamInfo(e,0)}n.inherits(s,i),s.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}i.prototype.processChunk.call(this,e)},t.exports=s},{"../utils":32,"./GenericWorker":28}],27:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./GenericWorker");function s(e){i.call(this,"DataWorker");var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,e.then(function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=n.getTypeOf(e),t.isPaused||t._tickAndRepeat()},function(e){t.error(e)})}n.inherits(s,i),s.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},s.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,n.delay(this._tickAndRepeat,[],this)),!0)},s.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(n.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},s.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":e=this.data.substring(this.index,t);break;case"uint8array":e=this.data.subarray(this.index,t);break;case"array":case"nodebuffer":e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=s},{"../utils":32,"./GenericWorker":28}],28:[function(e,t,r){"use strict";function n(e){this.name=e||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}n.prototype={push:function(e){this.emit("data",e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(e){this.emit("error",e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit("error",e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var r=0;r<this._listeners[e].length;r++)this._listeners[e][r].call(this,t)},pipe:function(e){return e.registerPrevious(this)},registerPrevious:function(e){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=e.streamInfo,this.mergeStreamInfo(),this.previous=e;var t=this;return e.on("data",function(e){t.processChunk(e)}),e.on("end",function(){t.end()}),e.on("error",function(e){t.error(e)}),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;var e=this.isPaused=!1;return this.generatedError&&(this.error(this.generatedError),e=!0),this.previous&&this.previous.resume(),!e},flush:function(){},processChunk:function(e){this.push(e)},withStreamInfo:function(e,t){return this.extraStreamInfo[e]=t,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var e in this.extraStreamInfo)Object.prototype.hasOwnProperty.call(this.extraStreamInfo,e)&&(this.streamInfo[e]=this.extraStreamInfo[e])},lock:function(){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var e="Worker "+this.name;return this.previous?this.previous+" -> "+e:e}},t.exports=n},{}],29:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./ConvertWorker"),s=e("./GenericWorker"),a=e("../base64"),o=e("../support"),h=e("../external"),l=null;if(o.nodestream)try{l=e("../nodejs/NodejsStreamOutputAdapter")}catch(e){}function u(e,t,r){var a=t;switch(t){case"blob":case"arraybuffer":a="uint8array";break;case"base64":a="string"}try{this._internalType=a,this._outputType=t,this._mimeType=r,n.checkSupport(a),this._worker=e.pipe(new i(a)),e.lock()}catch(e){this._worker=new s("error"),this._worker.error(e)}}u.prototype={accumulate:function(e){return function(e,t){return new h.Promise(function(r,i){var s=[],o=e._internalType,h=e._outputType,l=e._mimeType;e.on("data",function(e,r){s.push(e),t&&t(r)}).on("error",function(e){s=[],i(e)}).on("end",function(){try{var e=function(e,t,r){switch(e){case"blob":return n.newBlob(n.transformTo("arraybuffer",t),r);case"base64":return a.encode(t);default:return n.transformTo(e,t)}}(h,function(e,t){var r,n=0,i=null,s=0;for(r=0;r<t.length;r++)s+=t[r].length;switch(e){case"string":return t.join("");case"array":return Array.prototype.concat.apply([],t);case"uint8array":for(i=new Uint8Array(s),r=0;r<t.length;r++)i.set(t[r],n),n+=t[r].length;return i;case"nodebuffer":return Buffer.concat(t);default:throw new Error("concat : unsupported type '"+e+"'")}}(o,s),l);r(e)}catch(e){i(e)}s=[]}).resume()})}(this,e)},on:function(e,t){var r=this;return"data"===e?this._worker.on(e,function(e){t.call(r,e.data,e.meta)}):this._worker.on(e,function(){n.delay(t,arguments,r)}),this},resume:function(){return n.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(e){if(n.checkSupport("nodestream"),"nodebuffer"!==this._outputType)throw new Error(this._outputType+" is not supported by this method");return new l(this,{objectMode:"nodebuffer"!==this._outputType},e)}},t.exports=u},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(e,t,r){"use strict";if(r.base64=!0,r.array=!0,r.string=!0,r.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,r.nodebuffer="undefined"!=typeof Buffer,r.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)r.blob=!1;else{var n=new ArrayBuffer(0);try{r.blob=0===new Blob([n],{type:"application/zip"}).size}catch(e){try{var i=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);i.append(n),r.blob=0===i.getBlob("application/zip").size}catch(e){r.blob=!1}}}try{r.nodestream=!!e("readable-stream").Readable}catch(e){r.nodestream=!1}},{"readable-stream":16}],31:[function(e,t,r){"use strict";for(var n=e("./utils"),i=e("./support"),s=e("./nodejsUtils"),a=e("./stream/GenericWorker"),o=new Array(256),h=0;h<256;h++)o[h]=252<=h?6:248<=h?5:240<=h?4:224<=h?3:192<=h?2:1;function l(){a.call(this,"utf-8 decode"),this.leftOver=null}function u(){a.call(this,"utf-8 encode")}o[254]=o[254]=1,r.utf8encode=function(e){return i.nodebuffer?s.newBufferFrom(e,"utf-8"):function(e){var t,r,n,s,a,o=e.length,h=0;for(s=0;s<o;s++)55296==(64512&(r=e.charCodeAt(s)))&&s+1<o&&56320==(64512&(n=e.charCodeAt(s+1)))&&(r=65536+(r-55296<<10)+(n-56320),s++),h+=r<128?1:r<2048?2:r<65536?3:4;for(t=i.uint8array?new Uint8Array(h):new Array(h),s=a=0;a<h;s++)55296==(64512&(r=e.charCodeAt(s)))&&s+1<o&&56320==(64512&(n=e.charCodeAt(s+1)))&&(r=65536+(r-55296<<10)+(n-56320),s++),r<128?t[a++]=r:(r<2048?t[a++]=192|r>>>6:(r<65536?t[a++]=224|r>>>12:(t[a++]=240|r>>>18,t[a++]=128|r>>>12&63),t[a++]=128|r>>>6&63),t[a++]=128|63&r);return t}(e)},r.utf8decode=function(e){return i.nodebuffer?n.transformTo("nodebuffer",e).toString("utf-8"):function(e){var t,r,i,s,a=e.length,h=new Array(2*a);for(t=r=0;t<a;)if((i=e[t++])<128)h[r++]=i;else if(4<(s=o[i]))h[r++]=65533,t+=s-1;else{for(i&=2===s?31:3===s?15:7;1<s&&t<a;)i=i<<6|63&e[t++],s--;1<s?h[r++]=65533:i<65536?h[r++]=i:(i-=65536,h[r++]=55296|i>>10&1023,h[r++]=56320|1023&i)}return h.length!==r&&(h.subarray?h=h.subarray(0,r):h.length=r),n.applyFromCharCode(h)}(e=n.transformTo(i.uint8array?"uint8array":"array",e))},n.inherits(l,a),l.prototype.processChunk=function(e){var t=n.transformTo(i.uint8array?"uint8array":"array",e.data);if(this.leftOver&&this.leftOver.length){if(i.uint8array){var s=t;(t=new Uint8Array(s.length+this.leftOver.length)).set(this.leftOver,0),t.set(s,this.leftOver.length)}else t=this.leftOver.concat(t);this.leftOver=null}var a=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;0<=r&&128==(192&e[r]);)r--;return r<0||0===r?t:r+o[e[r]]>t?r:t}(t),h=t;a!==t.length&&(i.uint8array?(h=t.subarray(0,a),this.leftOver=t.subarray(a,t.length)):(h=t.slice(0,a),this.leftOver=t.slice(a,t.length))),this.push({data:r.utf8decode(h),meta:e.meta})},l.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:r.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},r.Utf8DecodeWorker=l,n.inherits(u,a),u.prototype.processChunk=function(e){this.push({data:r.utf8encode(e.data),meta:e.meta})},r.Utf8EncodeWorker=u},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,r){"use strict";var n=e("./support"),i=e("./base64"),s=e("./nodejsUtils"),a=e("./external");function o(e){return e}function h(e,t){for(var r=0;r<e.length;++r)t[r]=255&e.charCodeAt(r);return t}e("setimmediate"),r.newBlob=function(e,t){r.checkSupport("blob");try{return new Blob([e],{type:t})}catch(r){try{var n=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return n.append(e),n.getBlob(t)}catch(e){throw new Error("Bug : can't construct the Blob.")}}};var l={stringifyByChunk:function(e,t,r){var n=[],i=0,s=e.length;if(s<=r)return String.fromCharCode.apply(null,e);for(;i<s;)"array"===t||"nodebuffer"===t?n.push(String.fromCharCode.apply(null,e.slice(i,Math.min(i+r,s)))):n.push(String.fromCharCode.apply(null,e.subarray(i,Math.min(i+r,s)))),i+=r;return n.join("")},stringifyByChar:function(e){for(var t="",r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},applyCanBeUsed:{uint8array:function(){try{return n.uint8array&&1===String.fromCharCode.apply(null,new Uint8Array(1)).length}catch(e){return!1}}(),nodebuffer:function(){try{return n.nodebuffer&&1===String.fromCharCode.apply(null,s.allocBuffer(1)).length}catch(e){return!1}}()}};function u(e){var t=65536,n=r.getTypeOf(e),i=!0;if("uint8array"===n?i=l.applyCanBeUsed.uint8array:"nodebuffer"===n&&(i=l.applyCanBeUsed.nodebuffer),i)for(;1<t;)try{return l.stringifyByChunk(e,n,t)}catch(e){t=Math.floor(t/2)}return l.stringifyByChar(e)}function c(e,t){for(var r=0;r<e.length;r++)t[r]=e[r];return t}r.applyFromCharCode=u;var d={};d.string={string:o,array:function(e){return h(e,new Array(e.length))},arraybuffer:function(e){return d.string.uint8array(e).buffer},uint8array:function(e){return h(e,new Uint8Array(e.length))},nodebuffer:function(e){return h(e,s.allocBuffer(e.length))}},d.array={string:u,array:o,arraybuffer:function(e){return new Uint8Array(e).buffer},uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return s.newBufferFrom(e)}},d.arraybuffer={string:function(e){return u(new Uint8Array(e))},array:function(e){return c(new Uint8Array(e),new Array(e.byteLength))},arraybuffer:o,uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return s.newBufferFrom(new Uint8Array(e))}},d.uint8array={string:u,array:function(e){return c(e,new Array(e.length))},arraybuffer:function(e){return e.buffer},uint8array:o,nodebuffer:function(e){return s.newBufferFrom(e)}},d.nodebuffer={string:u,array:function(e){return c(e,new Array(e.length))},arraybuffer:function(e){return d.nodebuffer.uint8array(e).buffer},uint8array:function(e){return c(e,new Uint8Array(e.length))},nodebuffer:o},r.transformTo=function(e,t){if(t=t||"",!e)return t;r.checkSupport(e);var n=r.getTypeOf(t);return d[n][e](t)},r.resolve=function(e){for(var t=e.split("/"),r=[],n=0;n<t.length;n++){var i=t[n];"."===i||""===i&&0!==n&&n!==t.length-1||(".."===i?r.pop():r.push(i))}return r.join("/")},r.getTypeOf=function(e){return"string"==typeof e?"string":"[object Array]"===Object.prototype.toString.call(e)?"array":n.nodebuffer&&s.isBuffer(e)?"nodebuffer":n.uint8array&&e instanceof Uint8Array?"uint8array":n.arraybuffer&&e instanceof ArrayBuffer?"arraybuffer":void 0},r.checkSupport=function(e){if(!n[e.toLowerCase()])throw new Error(e+" is not supported by this platform")},r.MAX_VALUE_16BITS=65535,r.MAX_VALUE_32BITS=-1,r.pretty=function(e){var t,r,n="";for(r=0;r<(e||"").length;r++)n+="\\x"+((t=e.charCodeAt(r))<16?"0":"")+t.toString(16).toUpperCase();return n},r.delay=function(e,t,r){setImmediate(function(){e.apply(r||null,t||[])})},r.inherits=function(e,t){function r(){}r.prototype=t.prototype,e.prototype=new r},r.extend=function(){var e,t,r={};for(e=0;e<arguments.length;e++)for(t in arguments[e])Object.prototype.hasOwnProperty.call(arguments[e],t)&&void 0===r[t]&&(r[t]=arguments[e][t]);return r},r.prepareContent=function(e,t,s,o,l){return a.Promise.resolve(t).then(function(e){return n.blob&&(e instanceof Blob||-1!==["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(e)))&&"undefined"!=typeof FileReader?new a.Promise(function(t,r){var n=new FileReader;n.onload=function(e){t(e.target.result)},n.onerror=function(e){r(e.target.error)},n.readAsArrayBuffer(e)}):e}).then(function(t){var u=r.getTypeOf(t);return u?("arraybuffer"===u?t=r.transformTo("uint8array",t):"string"===u&&(l?t=i.decode(t):s&&!0!==o&&(t=function(e){return h(e,n.uint8array?new Uint8Array(e.length):new Array(e.length))}(t))),t):a.Promise.reject(new Error("Can't read the data of '"+e+"'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))})}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,setimmediate:54}],33:[function(e,t,r){"use strict";var n=e("./reader/readerFor"),i=e("./utils"),s=e("./signature"),a=e("./zipEntry"),o=e("./support");function h(e){this.files=[],this.loadOptions=e}h.prototype={checkSignature:function(e){if(!this.reader.readAndCheckSignature(e)){this.reader.index-=4;var t=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature ("+i.pretty(t)+", expected "+i.pretty(e)+")")}},isSignature:function(e,t){var r=this.reader.index;this.reader.setIndex(e);var n=this.reader.readString(4)===t;return this.reader.setIndex(r),n},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var e=this.reader.readData(this.zipCommentLength),t=o.uint8array?"uint8array":"array",r=i.transformTo(t,e);this.zipComment=this.loadOptions.decodeFileName(r)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var e,t,r,n=this.zip64EndOfCentralSize-44;0<n;)e=this.reader.readInt(2),t=this.reader.readInt(4),r=this.reader.readData(t),this.zip64ExtensibleData[e]={id:e,length:t,value:r}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),1<this.disksCount)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var e,t;for(e=0;e<this.files.length;e++)t=this.files[e],this.reader.setIndex(t.localHeaderOffset),this.checkSignature(s.LOCAL_FILE_HEADER),t.readLocalPart(this.reader),t.handleUTF8(),t.processAttributes()},readCentralDir:function(){var e;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(s.CENTRAL_FILE_HEADER);)(e=new a({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(e);if(this.centralDirRecords!==this.files.length&&0!==this.centralDirRecords&&0===this.files.length)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var e=this.reader.lastIndexOfSignature(s.CENTRAL_DIRECTORY_END);if(e<0)throw this.isSignature(0,s.LOCAL_FILE_HEADER)?new Error("Corrupted zip: can't find end of central directory"):new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html");this.reader.setIndex(e);var t=e;if(this.checkSignature(s.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===i.MAX_VALUE_16BITS||this.diskWithCentralDirStart===i.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===i.MAX_VALUE_16BITS||this.centralDirRecords===i.MAX_VALUE_16BITS||this.centralDirSize===i.MAX_VALUE_32BITS||this.centralDirOffset===i.MAX_VALUE_32BITS){if(this.zip64=!0,(e=this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(e),this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,s.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var r=this.centralDirOffset+this.centralDirSize;this.zip64&&(r+=20,r+=12+this.zip64EndOfCentralSize);var n=t-r;if(0<n)this.isSignature(t,s.CENTRAL_FILE_HEADER)||(this.reader.zero=n);else if(n<0)throw new Error("Corrupted zip: missing "+Math.abs(n)+" bytes.")},prepareReader:function(e){this.reader=n(e)},load:function(e){this.prepareReader(e),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},t.exports=h},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utils":32,"./zipEntry":34}],34:[function(e,t,r){"use strict";var n=e("./reader/readerFor"),i=e("./utils"),s=e("./compressedObject"),a=e("./crc32"),o=e("./utf8"),h=e("./compressions"),l=e("./support");function u(e,t){this.options=e,this.loadOptions=t}u.prototype={isEncrypted:function(){return!(1&~this.bitFlag)},useUTF8:function(){return!(2048&~this.bitFlag)},readLocalPart:function(e){var t,r;if(e.skip(22),this.fileNameLength=e.readInt(2),r=e.readInt(2),this.fileName=e.readData(this.fileNameLength),e.skip(r),-1===this.compressedSize||-1===this.uncompressedSize)throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)");if(null===(t=function(e){for(var t in h)if(Object.prototype.hasOwnProperty.call(h,t)&&h[t].magic===e)return h[t];return null}(this.compressionMethod)))throw new Error("Corrupted zip : compression "+i.pretty(this.compressionMethod)+" unknown (inner file : "+i.transformTo("string",this.fileName)+")");this.decompressed=new s(this.compressedSize,this.uncompressedSize,this.crc32,t,e.readData(this.compressedSize))},readCentralPart:function(e){this.versionMadeBy=e.readInt(2),e.skip(2),this.bitFlag=e.readInt(2),this.compressionMethod=e.readString(2),this.date=e.readDate(),this.crc32=e.readInt(4),this.compressedSize=e.readInt(4),this.uncompressedSize=e.readInt(4);var t=e.readInt(2);if(this.extraFieldsLength=e.readInt(2),this.fileCommentLength=e.readInt(2),this.diskNumberStart=e.readInt(2),this.internalFileAttributes=e.readInt(2),this.externalFileAttributes=e.readInt(4),this.localHeaderOffset=e.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");e.skip(t),this.readExtraFields(e),this.parseZIP64ExtraField(e),this.fileComment=e.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var e=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),0==e&&(this.dosPermissions=63&this.externalFileAttributes),3==e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=n(this.extraFields[1].value);this.uncompressedSize===i.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===i.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===i.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===i.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,r,n,i=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index+4<i;)t=e.readInt(2),r=e.readInt(2),n=e.readData(r),this.extraFields[t]={id:t,length:r,value:n};e.setIndex(i)},handleUTF8:function(){var e=l.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=o.utf8decode(this.fileName),this.fileCommentStr=o.utf8decode(this.fileComment);else{var t=this.findExtraFieldUnicodePath();if(null!==t)this.fileNameStr=t;else{var r=i.transformTo(e,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(r)}var n=this.findExtraFieldUnicodeComment();if(null!==n)this.fileCommentStr=n;else{var s=i.transformTo(e,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(s)}}},findExtraFieldUnicodePath:function(){var e=this.extraFields[28789];if(e){var t=n(e.value);return 1!==t.readInt(1)||a(this.fileName)!==t.readInt(4)?null:o.utf8decode(t.readData(e.length-5))}return null},findExtraFieldUnicodeComment:function(){var e=this.extraFields[25461];if(e){var t=n(e.value);return 1!==t.readInt(1)||a(this.fileComment)!==t.readInt(4)?null:o.utf8decode(t.readData(e.length-5))}return null}},t.exports=u},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(e,t,r){"use strict";function n(e,t,r){this.name=e,this.dir=r.dir,this.date=r.date,this.comment=r.comment,this.unixPermissions=r.unixPermissions,this.dosPermissions=r.dosPermissions,this._data=t,this._dataBinary=r.binary,this.options={compression:r.compression,compressionOptions:r.compressionOptions}}var i=e("./stream/StreamHelper"),s=e("./stream/DataWorker"),a=e("./utf8"),o=e("./compressedObject"),h=e("./stream/GenericWorker");n.prototype={internalStream:function(e){var t=null,r="string";try{if(!e)throw new Error("No output type specified.");var n="string"===(r=e.toLowerCase())||"text"===r;"binarystring"!==r&&"text"!==r||(r="string"),t=this._decompressWorker();var s=!this._dataBinary;s&&!n&&(t=t.pipe(new a.Utf8EncodeWorker)),!s&&n&&(t=t.pipe(new a.Utf8DecodeWorker))}catch(e){(t=new h("error")).error(e)}return new i(t,r,"")},async:function(e,t){return this.internalStream(e).accumulate(t)},nodeStream:function(e,t){return this.internalStream(e||"nodebuffer").toNodejsStream(t)},_compressWorker:function(e,t){if(this._data instanceof o&&this._data.compression.magic===e.magic)return this._data.getCompressedWorker();var r=this._decompressWorker();return this._dataBinary||(r=r.pipe(new a.Utf8EncodeWorker)),o.createWorkerFrom(r,e,t)},_decompressWorker:function(){return this._data instanceof o?this._data.getContentWorker():this._data instanceof h?this._data:new s(this._data)}};for(var l=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],u=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},c=0;c<l.length;c++)n.prototype[l[c]]=u;t.exports=n},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(e,t,n){(function(e){"use strict";var r,n,i=e.MutationObserver||e.WebKitMutationObserver;if(i){var s=0,a=new i(u),o=e.document.createTextNode("");a.observe(o,{characterData:!0}),r=function(){o.data=s=++s%2}}else if(e.setImmediate||void 0===e.MessageChannel)r="document"in e&&"onreadystatechange"in e.document.createElement("script")?function(){var t=e.document.createElement("script");t.onreadystatechange=function(){u(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(u,0)};else{var h=new e.MessageChannel;h.port1.onmessage=u,r=function(){h.port2.postMessage(0)}}var l=[];function u(){var e,t;n=!0;for(var r=l.length;r;){for(t=l,l=[],e=-1;++e<r;)t[e]();r=l.length}n=!1}t.exports=function(e){1!==l.push(e)||n||r()}}).call(this,void 0!==r.g?r.g:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],37:[function(e,t,r){"use strict";var n=e("immediate");function i(){}var s={},a=["REJECTED"],o=["FULFILLED"],h=["PENDING"];function l(e){if("function"!=typeof e)throw new TypeError("resolver must be a function");this.state=h,this.queue=[],this.outcome=void 0,e!==i&&f(this,e)}function u(e,t,r){this.promise=e,"function"==typeof t&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),"function"==typeof r&&(this.onRejected=r,this.callRejected=this.otherCallRejected)}function c(e,t,r){n(function(){var n;try{n=t(r)}catch(n){return s.reject(e,n)}n===e?s.reject(e,new TypeError("Cannot resolve promise with itself")):s.resolve(e,n)})}function d(e){var t=e&&e.then;if(e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof t)return function(){t.apply(e,arguments)}}function f(e,t){var r=!1;function n(t){r||(r=!0,s.reject(e,t))}function i(t){r||(r=!0,s.resolve(e,t))}var a=p(function(){t(i,n)});"error"===a.status&&n(a.value)}function p(e,t){var r={};try{r.value=e(t),r.status="success"}catch(e){r.status="error",r.value=e}return r}(t.exports=l).prototype.finally=function(e){if("function"!=typeof e)return this;var t=this.constructor;return this.then(function(r){return t.resolve(e()).then(function(){return r})},function(r){return t.resolve(e()).then(function(){throw r})})},l.prototype.catch=function(e){return this.then(null,e)},l.prototype.then=function(e,t){if("function"!=typeof e&&this.state===o||"function"!=typeof t&&this.state===a)return this;var r=new this.constructor(i);return this.state!==h?c(r,this.state===o?e:t,this.outcome):this.queue.push(new u(r,e,t)),r},u.prototype.callFulfilled=function(e){s.resolve(this.promise,e)},u.prototype.otherCallFulfilled=function(e){c(this.promise,this.onFulfilled,e)},u.prototype.callRejected=function(e){s.reject(this.promise,e)},u.prototype.otherCallRejected=function(e){c(this.promise,this.onRejected,e)},s.resolve=function(e,t){var r=p(d,t);if("error"===r.status)return s.reject(e,r.value);var n=r.value;if(n)f(e,n);else{e.state=o,e.outcome=t;for(var i=-1,a=e.queue.length;++i<a;)e.queue[i].callFulfilled(t)}return e},s.reject=function(e,t){e.state=a,e.outcome=t;for(var r=-1,n=e.queue.length;++r<n;)e.queue[r].callRejected(t);return e},l.resolve=function(e){return e instanceof this?e:s.resolve(new this(i),e)},l.reject=function(e){var t=new this(i);return s.reject(t,e)},l.all=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var r=e.length,n=!1;if(!r)return this.resolve([]);for(var a=new Array(r),o=0,h=-1,l=new this(i);++h<r;)u(e[h],h);return l;function u(e,i){t.resolve(e).then(function(e){a[i]=e,++o!==r||n||(n=!0,s.resolve(l,a))},function(e){n||(n=!0,s.reject(l,e))})}},l.race=function(e){if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var t=e.length,r=!1;if(!t)return this.resolve([]);for(var n,a=-1,o=new this(i);++a<t;)n=e[a],this.resolve(n).then(function(e){r||(r=!0,s.resolve(o,e))},function(e){r||(r=!0,s.reject(o,e))});return o}},{immediate:36}],38:[function(e,t,r){"use strict";var n={};(0,e("./lib/utils/common").assign)(n,e("./lib/deflate"),e("./lib/inflate"),e("./lib/zlib/constants")),t.exports=n},{"./lib/deflate":39,"./lib/inflate":40,"./lib/utils/common":41,"./lib/zlib/constants":44}],39:[function(e,t,r){"use strict";var n=e("./zlib/deflate"),i=e("./utils/common"),s=e("./utils/strings"),a=e("./zlib/messages"),o=e("./zlib/zstream"),h=Object.prototype.toString;function l(e){if(!(this instanceof l))return new l(e);this.options=i.assign({level:-1,method:8,chunkSize:16384,windowBits:15,memLevel:8,strategy:0,to:""},e||{});var t=this.options;t.raw&&0<t.windowBits?t.windowBits=-t.windowBits:t.gzip&&0<t.windowBits&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new o,this.strm.avail_out=0;var r=n.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(0!==r)throw new Error(a[r]);if(t.header&&n.deflateSetHeader(this.strm,t.header),t.dictionary){var u;if(u="string"==typeof t.dictionary?s.string2buf(t.dictionary):"[object ArrayBuffer]"===h.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,0!==(r=n.deflateSetDictionary(this.strm,u)))throw new Error(a[r]);this._dict_set=!0}}function u(e,t){var r=new l(t);if(r.push(e,!0),r.err)throw r.msg||a[r.err];return r.result}l.prototype.push=function(e,t){var r,a,o=this.strm,l=this.options.chunkSize;if(this.ended)return!1;a=t===~~t?t:!0===t?4:0,"string"==typeof e?o.input=s.string2buf(e):"[object ArrayBuffer]"===h.call(e)?o.input=new Uint8Array(e):o.input=e,o.next_in=0,o.avail_in=o.input.length;do{if(0===o.avail_out&&(o.output=new i.Buf8(l),o.next_out=0,o.avail_out=l),1!==(r=n.deflate(o,a))&&0!==r)return this.onEnd(r),!(this.ended=!0);0!==o.avail_out&&(0!==o.avail_in||4!==a&&2!==a)||("string"===this.options.to?this.onData(s.buf2binstring(i.shrinkBuf(o.output,o.next_out))):this.onData(i.shrinkBuf(o.output,o.next_out)))}while((0<o.avail_in||0===o.avail_out)&&1!==r);return 4===a?(r=n.deflateEnd(this.strm),this.onEnd(r),this.ended=!0,0===r):2!==a||(this.onEnd(0),!(o.avail_out=0))},l.prototype.onData=function(e){this.chunks.push(e)},l.prototype.onEnd=function(e){0===e&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},r.Deflate=l,r.deflate=u,r.deflateRaw=function(e,t){return(t=t||{}).raw=!0,u(e,t)},r.gzip=function(e,t){return(t=t||{}).gzip=!0,u(e,t)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(e,t,r){"use strict";var n=e("./zlib/inflate"),i=e("./utils/common"),s=e("./utils/strings"),a=e("./zlib/constants"),o=e("./zlib/messages"),h=e("./zlib/zstream"),l=e("./zlib/gzheader"),u=Object.prototype.toString;function c(e){if(!(this instanceof c))return new c(e);this.options=i.assign({chunkSize:16384,windowBits:0,to:""},e||{});var t=this.options;t.raw&&0<=t.windowBits&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(0<=t.windowBits&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),15<t.windowBits&&t.windowBits<48&&!(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new h,this.strm.avail_out=0;var r=n.inflateInit2(this.strm,t.windowBits);if(r!==a.Z_OK)throw new Error(o[r]);this.header=new l,n.inflateGetHeader(this.strm,this.header)}function d(e,t){var r=new c(t);if(r.push(e,!0),r.err)throw r.msg||o[r.err];return r.result}c.prototype.push=function(e,t){var r,o,h,l,c,d,f=this.strm,p=this.options.chunkSize,g=this.options.dictionary,m=!1;if(this.ended)return!1;o=t===~~t?t:!0===t?a.Z_FINISH:a.Z_NO_FLUSH,"string"==typeof e?f.input=s.binstring2buf(e):"[object ArrayBuffer]"===u.call(e)?f.input=new Uint8Array(e):f.input=e,f.next_in=0,f.avail_in=f.input.length;do{if(0===f.avail_out&&(f.output=new i.Buf8(p),f.next_out=0,f.avail_out=p),(r=n.inflate(f,a.Z_NO_FLUSH))===a.Z_NEED_DICT&&g&&(d="string"==typeof g?s.string2buf(g):"[object ArrayBuffer]"===u.call(g)?new Uint8Array(g):g,r=n.inflateSetDictionary(this.strm,d)),r===a.Z_BUF_ERROR&&!0===m&&(r=a.Z_OK,m=!1),r!==a.Z_STREAM_END&&r!==a.Z_OK)return this.onEnd(r),!(this.ended=!0);f.next_out&&(0!==f.avail_out&&r!==a.Z_STREAM_END&&(0!==f.avail_in||o!==a.Z_FINISH&&o!==a.Z_SYNC_FLUSH)||("string"===this.options.to?(h=s.utf8border(f.output,f.next_out),l=f.next_out-h,c=s.buf2string(f.output,h),f.next_out=l,f.avail_out=p-l,l&&i.arraySet(f.output,f.output,h,l,0),this.onData(c)):this.onData(i.shrinkBuf(f.output,f.next_out)))),0===f.avail_in&&0===f.avail_out&&(m=!0)}while((0<f.avail_in||0===f.avail_out)&&r!==a.Z_STREAM_END);return r===a.Z_STREAM_END&&(o=a.Z_FINISH),o===a.Z_FINISH?(r=n.inflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===a.Z_OK):o!==a.Z_SYNC_FLUSH||(this.onEnd(a.Z_OK),!(f.avail_out=0))},c.prototype.onData=function(e){this.chunks.push(e)},c.prototype.onEnd=function(e){e===a.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},r.Inflate=c,r.inflate=d,r.inflateRaw=function(e,t){return(t=t||{}).raw=!0,d(e,t)},r.ungzip=d},{"./utils/common":41,"./utils/strings":42,"./zlib/constants":44,"./zlib/gzheader":47,"./zlib/inflate":49,"./zlib/messages":51,"./zlib/zstream":53}],41:[function(e,t,r){"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;r.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var r=t.shift();if(r){if("object"!=typeof r)throw new TypeError(r+"must be non-object");for(var n in r)r.hasOwnProperty(n)&&(e[n]=r[n])}}return e},r.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var i={arraySet:function(e,t,r,n,i){if(t.subarray&&e.subarray)e.set(t.subarray(r,r+n),i);else for(var s=0;s<n;s++)e[i+s]=t[r+s]},flattenChunks:function(e){var t,r,n,i,s,a;for(t=n=0,r=e.length;t<r;t++)n+=e[t].length;for(a=new Uint8Array(n),t=i=0,r=e.length;t<r;t++)s=e[t],a.set(s,i),i+=s.length;return a}},s={arraySet:function(e,t,r,n,i){for(var s=0;s<n;s++)e[i+s]=t[r+s]},flattenChunks:function(e){return[].concat.apply([],e)}};r.setTyped=function(e){e?(r.Buf8=Uint8Array,r.Buf16=Uint16Array,r.Buf32=Int32Array,r.assign(r,i)):(r.Buf8=Array,r.Buf16=Array,r.Buf32=Array,r.assign(r,s))},r.setTyped(n)},{}],42:[function(e,t,r){"use strict";var n=e("./common"),i=!0,s=!0;try{String.fromCharCode.apply(null,[0])}catch(e){i=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){s=!1}for(var a=new n.Buf8(256),o=0;o<256;o++)a[o]=252<=o?6:248<=o?5:240<=o?4:224<=o?3:192<=o?2:1;function h(e,t){if(t<65537&&(e.subarray&&s||!e.subarray&&i))return String.fromCharCode.apply(null,n.shrinkBuf(e,t));for(var r="",a=0;a<t;a++)r+=String.fromCharCode(e[a]);return r}a[254]=a[254]=1,r.string2buf=function(e){var t,r,i,s,a,o=e.length,h=0;for(s=0;s<o;s++)55296==(64512&(r=e.charCodeAt(s)))&&s+1<o&&56320==(64512&(i=e.charCodeAt(s+1)))&&(r=65536+(r-55296<<10)+(i-56320),s++),h+=r<128?1:r<2048?2:r<65536?3:4;for(t=new n.Buf8(h),s=a=0;a<h;s++)55296==(64512&(r=e.charCodeAt(s)))&&s+1<o&&56320==(64512&(i=e.charCodeAt(s+1)))&&(r=65536+(r-55296<<10)+(i-56320),s++),r<128?t[a++]=r:(r<2048?t[a++]=192|r>>>6:(r<65536?t[a++]=224|r>>>12:(t[a++]=240|r>>>18,t[a++]=128|r>>>12&63),t[a++]=128|r>>>6&63),t[a++]=128|63&r);return t},r.buf2binstring=function(e){return h(e,e.length)},r.binstring2buf=function(e){for(var t=new n.Buf8(e.length),r=0,i=t.length;r<i;r++)t[r]=e.charCodeAt(r);return t},r.buf2string=function(e,t){var r,n,i,s,o=t||e.length,l=new Array(2*o);for(r=n=0;r<o;)if((i=e[r++])<128)l[n++]=i;else if(4<(s=a[i]))l[n++]=65533,r+=s-1;else{for(i&=2===s?31:3===s?15:7;1<s&&r<o;)i=i<<6|63&e[r++],s--;1<s?l[n++]=65533:i<65536?l[n++]=i:(i-=65536,l[n++]=55296|i>>10&1023,l[n++]=56320|1023&i)}return h(l,n)},r.utf8border=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;0<=r&&128==(192&e[r]);)r--;return r<0||0===r?t:r+a[e[r]]>t?r:t}},{"./common":41}],43:[function(e,t,r){"use strict";t.exports=function(e,t,r,n){for(var i=65535&e,s=e>>>16&65535,a=0;0!==r;){for(r-=a=2e3<r?2e3:r;s=s+(i=i+t[n++]|0)|0,--a;);i%=65521,s%=65521}return i|s<<16}},{}],44:[function(e,t,r){"use strict";t.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],45:[function(e,t,r){"use strict";var n=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();t.exports=function(e,t,r,i){var s=n,a=i+r;e^=-1;for(var o=i;o<a;o++)e=e>>>8^s[255&(e^t[o])];return-1^e}},{}],46:[function(e,t,r){"use strict";var n,i=e("../utils/common"),s=e("./trees"),a=e("./adler32"),o=e("./crc32"),h=e("./messages"),l=-2,u=258,c=262,d=113;function f(e,t){return e.msg=h[t],t}function p(e){return(e<<1)-(4<e?9:0)}function g(e){for(var t=e.length;0<=--t;)e[t]=0}function m(e){var t=e.state,r=t.pending;r>e.avail_out&&(r=e.avail_out),0!==r&&(i.arraySet(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))}function _(e,t){s._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,m(e.strm)}function y(e,t){e.pending_buf[e.pending++]=t}function w(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function v(e,t){var r,n,i=e.max_chain_length,s=e.strstart,a=e.prev_length,o=e.nice_match,h=e.strstart>e.w_size-c?e.strstart-(e.w_size-c):0,l=e.window,d=e.w_mask,f=e.prev,p=e.strstart+u,g=l[s+a-1],m=l[s+a];e.prev_length>=e.good_match&&(i>>=2),o>e.lookahead&&(o=e.lookahead);do{if(l[(r=t)+a]===m&&l[r+a-1]===g&&l[r]===l[s]&&l[++r]===l[s+1]){s+=2,r++;do{}while(l[++s]===l[++r]&&l[++s]===l[++r]&&l[++s]===l[++r]&&l[++s]===l[++r]&&l[++s]===l[++r]&&l[++s]===l[++r]&&l[++s]===l[++r]&&l[++s]===l[++r]&&s<p);if(n=u-(p-s),s=p-u,a<n){if(e.match_start=t,o<=(a=n))break;g=l[s+a-1],m=l[s+a]}}}while((t=f[t&d])>h&&0!=--i);return a<=e.lookahead?a:e.lookahead}function b(e){var t,r,n,s,h,l,u,d,f,p,g=e.w_size;do{if(s=e.window_size-e.lookahead-e.strstart,e.strstart>=g+(g-c)){for(i.arraySet(e.window,e.window,g,g,0),e.match_start-=g,e.strstart-=g,e.block_start-=g,t=r=e.hash_size;n=e.head[--t],e.head[t]=g<=n?n-g:0,--r;);for(t=r=g;n=e.prev[--t],e.prev[t]=g<=n?n-g:0,--r;);s+=g}if(0===e.strm.avail_in)break;if(l=e.strm,u=e.window,d=e.strstart+e.lookahead,p=void 0,(f=s)<(p=l.avail_in)&&(p=f),r=0===p?0:(l.avail_in-=p,i.arraySet(u,l.input,l.next_in,p,d),1===l.state.wrap?l.adler=a(l.adler,u,p,d):2===l.state.wrap&&(l.adler=o(l.adler,u,p,d)),l.next_in+=p,l.total_in+=p,p),e.lookahead+=r,e.lookahead+e.insert>=3)for(h=e.strstart-e.insert,e.ins_h=e.window[h],e.ins_h=(e.ins_h<<e.hash_shift^e.window[h+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[h+3-1])&e.hash_mask,e.prev[h&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=h,h++,e.insert--,!(e.lookahead+e.insert<3)););}while(e.lookahead<c&&0!==e.strm.avail_in)}function k(e,t){for(var r,n;;){if(e.lookahead<c){if(b(e),e.lookahead<c&&0===t)return 1;if(0===e.lookahead)break}if(r=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==r&&e.strstart-r<=e.w_size-c&&(e.match_length=v(e,r)),e.match_length>=3)if(n=s._tr_tally(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=3){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart,0!=--e.match_length;);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else n=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(_(e,!1),0===e.strm.avail_out))return 1}return e.insert=e.strstart<2?e.strstart:2,4===t?(_(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(_(e,!1),0===e.strm.avail_out)?1:2}function x(e,t){for(var r,n,i;;){if(e.lookahead<c){if(b(e),e.lookahead<c&&0===t)return 1;if(0===e.lookahead)break}if(r=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=2,0!==r&&e.prev_length<e.max_lazy_match&&e.strstart-r<=e.w_size-c&&(e.match_length=v(e,r),e.match_length<=5&&(1===e.strategy||3===e.match_length&&4096<e.strstart-e.match_start)&&(e.match_length=2)),e.prev_length>=3&&e.match_length<=e.prev_length){for(i=e.strstart+e.lookahead-3,n=s._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=i&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!=--e.prev_length;);if(e.match_available=0,e.match_length=2,e.strstart++,n&&(_(e,!1),0===e.strm.avail_out))return 1}else if(e.match_available){if((n=s._tr_tally(e,0,e.window[e.strstart-1]))&&_(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return 1}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=s._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<2?e.strstart:2,4===t?(_(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(_(e,!1),0===e.strm.avail_out)?1:2}function E(e,t,r,n,i){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=n,this.func=i}function R(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=8,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(1146),this.dyn_dtree=new i.Buf16(122),this.bl_tree=new i.Buf16(78),g(this.dyn_ltree),g(this.dyn_dtree),g(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(16),this.heap=new i.Buf16(573),g(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(573),g(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function S(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=2,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?42:d,e.adler=2===t.wrap?0:1,t.last_flush=0,s._tr_init(t),0):f(e,l)}function I(e){var t=S(e);return 0===t&&function(e){e.window_size=2*e.w_size,g(e.head),e.max_lazy_match=n[e.level].max_lazy,e.good_match=n[e.level].good_length,e.nice_match=n[e.level].nice_length,e.max_chain_length=n[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=2,e.match_available=0,e.ins_h=0}(e.state),t}function P(e,t,r,n,s,a){if(!e)return l;var o=1;if(-1===t&&(t=6),n<0?(o=0,n=-n):15<n&&(o=2,n-=16),s<1||9<s||8!==r||n<8||15<n||t<0||9<t||a<0||4<a)return f(e,l);8===n&&(n=9);var h=new R;return(e.state=h).strm=e,h.wrap=o,h.gzhead=null,h.w_bits=n,h.w_size=1<<h.w_bits,h.w_mask=h.w_size-1,h.hash_bits=s+7,h.hash_size=1<<h.hash_bits,h.hash_mask=h.hash_size-1,h.hash_shift=~~((h.hash_bits+3-1)/3),h.window=new i.Buf8(2*h.w_size),h.head=new i.Buf16(h.hash_size),h.prev=new i.Buf16(h.w_size),h.lit_bufsize=1<<s+6,h.pending_buf_size=4*h.lit_bufsize,h.pending_buf=new i.Buf8(h.pending_buf_size),h.d_buf=1*h.lit_bufsize,h.l_buf=3*h.lit_bufsize,h.level=t,h.strategy=a,h.method=r,I(e)}n=[new E(0,0,0,0,function(e,t){var r=65535;for(r>e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(b(e),0===e.lookahead&&0===t)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var n=e.block_start+r;if((0===e.strstart||e.strstart>=n)&&(e.lookahead=e.strstart-n,e.strstart=n,_(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-c&&(_(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(_(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(_(e,!1),e.strm.avail_out),1)}),new E(4,4,8,4,k),new E(4,5,16,8,k),new E(4,6,32,32,k),new E(4,4,16,16,x),new E(8,16,32,32,x),new E(8,16,128,128,x),new E(8,32,128,256,x),new E(32,128,258,1024,x),new E(32,258,258,4096,x)],r.deflateInit=function(e,t){return P(e,t,8,15,8,0)},r.deflateInit2=P,r.deflateReset=I,r.deflateResetKeep=S,r.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?l:(e.state.gzhead=t,0):l},r.deflate=function(e,t){var r,i,a,h;if(!e||!e.state||5<t||t<0)return e?f(e,l):l;if(i=e.state,!e.output||!e.input&&0!==e.avail_in||666===i.status&&4!==t)return f(e,0===e.avail_out?-5:l);if(i.strm=e,r=i.last_flush,i.last_flush=t,42===i.status)if(2===i.wrap)e.adler=0,y(i,31),y(i,139),y(i,8),i.gzhead?(y(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),y(i,255&i.gzhead.time),y(i,i.gzhead.time>>8&255),y(i,i.gzhead.time>>16&255),y(i,i.gzhead.time>>24&255),y(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),y(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(y(i,255&i.gzhead.extra.length),y(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=o(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(y(i,0),y(i,0),y(i,0),y(i,0),y(i,0),y(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),y(i,3),i.status=d);else{var c=8+(i.w_bits-8<<4)<<8;c|=(2<=i.strategy||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(c|=32),c+=31-c%31,i.status=d,w(i,c),0!==i.strstart&&(w(i,e.adler>>>16),w(i,65535&e.adler)),e.adler=1}if(69===i.status)if(i.gzhead.extra){for(a=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),m(e),a=i.pending,i.pending!==i.pending_buf_size));)y(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(73===i.status)if(i.gzhead.name){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),m(e),a=i.pending,i.pending===i.pending_buf_size)){h=1;break}h=i.gzindex<i.gzhead.name.length?255&i.gzhead.name.charCodeAt(i.gzindex++):0,y(i,h)}while(0!==h);i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),0===h&&(i.gzindex=0,i.status=91)}else i.status=91;if(91===i.status)if(i.gzhead.comment){a=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),m(e),a=i.pending,i.pending===i.pending_buf_size)){h=1;break}h=i.gzindex<i.gzhead.comment.length?255&i.gzhead.comment.charCodeAt(i.gzindex++):0,y(i,h)}while(0!==h);i.gzhead.hcrc&&i.pending>a&&(e.adler=o(e.adler,i.pending_buf,i.pending-a,a)),0===h&&(i.status=103)}else i.status=103;if(103===i.status&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&m(e),i.pending+2<=i.pending_buf_size&&(y(i,255&e.adler),y(i,e.adler>>8&255),e.adler=0,i.status=d)):i.status=d),0!==i.pending){if(m(e),0===e.avail_out)return i.last_flush=-1,0}else if(0===e.avail_in&&p(t)<=p(r)&&4!==t)return f(e,-5);if(666===i.status&&0!==e.avail_in)return f(e,-5);if(0!==e.avail_in||0!==i.lookahead||0!==t&&666!==i.status){var v=2===i.strategy?function(e,t){for(var r;;){if(0===e.lookahead&&(b(e),0===e.lookahead)){if(0===t)return 1;break}if(e.match_length=0,r=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(_(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(_(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(_(e,!1),0===e.strm.avail_out)?1:2}(i,t):3===i.strategy?function(e,t){for(var r,n,i,a,o=e.window;;){if(e.lookahead<=u){if(b(e),e.lookahead<=u&&0===t)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&0<e.strstart&&(n=o[i=e.strstart-1])===o[++i]&&n===o[++i]&&n===o[++i]){a=e.strstart+u;do{}while(n===o[++i]&&n===o[++i]&&n===o[++i]&&n===o[++i]&&n===o[++i]&&n===o[++i]&&n===o[++i]&&n===o[++i]&&i<a);e.match_length=u-(a-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=3?(r=s._tr_tally(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(_(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(_(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(_(e,!1),0===e.strm.avail_out)?1:2}(i,t):n[i.level].func(i,t);if(3!==v&&4!==v||(i.status=666),1===v||3===v)return 0===e.avail_out&&(i.last_flush=-1),0;if(2===v&&(1===t?s._tr_align(i):5!==t&&(s._tr_stored_block(i,0,0,!1),3===t&&(g(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),m(e),0===e.avail_out))return i.last_flush=-1,0}return 4!==t?0:i.wrap<=0?1:(2===i.wrap?(y(i,255&e.adler),y(i,e.adler>>8&255),y(i,e.adler>>16&255),y(i,e.adler>>24&255),y(i,255&e.total_in),y(i,e.total_in>>8&255),y(i,e.total_in>>16&255),y(i,e.total_in>>24&255)):(w(i,e.adler>>>16),w(i,65535&e.adler)),m(e),0<i.wrap&&(i.wrap=-i.wrap),0!==i.pending?0:1)},r.deflateEnd=function(e){var t;return e&&e.state?42!==(t=e.state.status)&&69!==t&&73!==t&&91!==t&&103!==t&&t!==d&&666!==t?f(e,l):(e.state=null,t===d?f(e,-3):0):l},r.deflateSetDictionary=function(e,t){var r,n,s,o,h,u,c,d,f=t.length;if(!e||!e.state)return l;if(2===(o=(r=e.state).wrap)||1===o&&42!==r.status||r.lookahead)return l;for(1===o&&(e.adler=a(e.adler,t,f,0)),r.wrap=0,f>=r.w_size&&(0===o&&(g(r.head),r.strstart=0,r.block_start=0,r.insert=0),d=new i.Buf8(r.w_size),i.arraySet(d,t,f-r.w_size,r.w_size,0),t=d,f=r.w_size),h=e.avail_in,u=e.next_in,c=e.input,e.avail_in=f,e.next_in=0,e.input=t,b(r);r.lookahead>=3;){for(n=r.strstart,s=r.lookahead-2;r.ins_h=(r.ins_h<<r.hash_shift^r.window[n+3-1])&r.hash_mask,r.prev[n&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=n,n++,--s;);r.strstart=n,r.lookahead=2,b(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=2,r.match_available=0,e.next_in=u,e.input=c,e.avail_in=h,r.wrap=o,0},r.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./messages":51,"./trees":52}],47:[function(e,t,r){"use strict";t.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},{}],48:[function(e,t,r){"use strict";t.exports=function(e,t){var r,n,i,s,a,o,h,l,u,c,d,f,p,g,m,_,y,w,v,b,k,x,E,R,S;r=e.state,n=e.next_in,R=e.input,i=n+(e.avail_in-5),s=e.next_out,S=e.output,a=s-(t-e.avail_out),o=s+(e.avail_out-257),h=r.dmax,l=r.wsize,u=r.whave,c=r.wnext,d=r.window,f=r.hold,p=r.bits,g=r.lencode,m=r.distcode,_=(1<<r.lenbits)-1,y=(1<<r.distbits)-1;e:do{p<15&&(f+=R[n++]<<p,p+=8,f+=R[n++]<<p,p+=8),w=g[f&_];t:for(;;){if(f>>>=v=w>>>24,p-=v,0==(v=w>>>16&255))S[s++]=65535&w;else{if(!(16&v)){if(!(64&v)){w=g[(65535&w)+(f&(1<<v)-1)];continue t}if(32&v){r.mode=12;break e}e.msg="invalid literal/length code",r.mode=30;break e}b=65535&w,(v&=15)&&(p<v&&(f+=R[n++]<<p,p+=8),b+=f&(1<<v)-1,f>>>=v,p-=v),p<15&&(f+=R[n++]<<p,p+=8,f+=R[n++]<<p,p+=8),w=m[f&y];r:for(;;){if(f>>>=v=w>>>24,p-=v,!(16&(v=w>>>16&255))){if(!(64&v)){w=m[(65535&w)+(f&(1<<v)-1)];continue r}e.msg="invalid distance code",r.mode=30;break e}if(k=65535&w,p<(v&=15)&&(f+=R[n++]<<p,(p+=8)<v&&(f+=R[n++]<<p,p+=8)),h<(k+=f&(1<<v)-1)){e.msg="invalid distance too far back",r.mode=30;break e}if(f>>>=v,p-=v,(v=s-a)<k){if(u<(v=k-v)&&r.sane){e.msg="invalid distance too far back",r.mode=30;break e}if(E=d,(x=0)===c){if(x+=l-v,v<b){for(b-=v;S[s++]=d[x++],--v;);x=s-k,E=S}}else if(c<v){if(x+=l+c-v,(v-=c)<b){for(b-=v;S[s++]=d[x++],--v;);if(x=0,c<b){for(b-=v=c;S[s++]=d[x++],--v;);x=s-k,E=S}}}else if(x+=c-v,v<b){for(b-=v;S[s++]=d[x++],--v;);x=s-k,E=S}for(;2<b;)S[s++]=E[x++],S[s++]=E[x++],S[s++]=E[x++],b-=3;b&&(S[s++]=E[x++],1<b&&(S[s++]=E[x++]))}else{for(x=s-k;S[s++]=S[x++],S[s++]=S[x++],S[s++]=S[x++],2<(b-=3););b&&(S[s++]=S[x++],1<b&&(S[s++]=S[x++]))}break}}break}}while(n<i&&s<o);n-=b=p>>3,f&=(1<<(p-=b<<3))-1,e.next_in=n,e.next_out=s,e.avail_in=n<i?i-n+5:5-(n-i),e.avail_out=s<o?o-s+257:257-(s-o),r.hold=f,r.bits=p}},{}],49:[function(e,t,r){"use strict";var n=e("../utils/common"),i=e("./adler32"),s=e("./crc32"),a=e("./inffast"),o=e("./inftrees"),h=-2;function l(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function u(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new n.Buf16(320),this.work=new n.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function c(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=1,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new n.Buf32(852),t.distcode=t.distdyn=new n.Buf32(592),t.sane=1,t.back=-1,0):h}function d(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,c(e)):h}function f(e,t){var r,n;return e&&e.state?(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15<t)?h:(null!==n.window&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,d(e))):h}function p(e,t){var r,n;return e?(n=new u,(e.state=n).window=null,0!==(r=f(e,t))&&(e.state=null),r):h}var g,m,_=!0;function y(e){if(_){var t;for(g=new n.Buf32(512),m=new n.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(o(1,e.lens,0,288,g,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;o(2,e.lens,0,32,m,0,e.work,{bits:5}),_=!1}e.lencode=g,e.lenbits=9,e.distcode=m,e.distbits=5}function w(e,t,r,i){var s,a=e.state;return null===a.window&&(a.wsize=1<<a.wbits,a.wnext=0,a.whave=0,a.window=new n.Buf8(a.wsize)),i>=a.wsize?(n.arraySet(a.window,t,r-a.wsize,a.wsize,0),a.wnext=0,a.whave=a.wsize):(i<(s=a.wsize-a.wnext)&&(s=i),n.arraySet(a.window,t,r-i,s,a.wnext),(i-=s)?(n.arraySet(a.window,t,r-i,i,0),a.wnext=i,a.whave=a.wsize):(a.wnext+=s,a.wnext===a.wsize&&(a.wnext=0),a.whave<a.wsize&&(a.whave+=s))),0}r.inflateReset=d,r.inflateReset2=f,r.inflateResetKeep=c,r.inflateInit=function(e){return p(e,15)},r.inflateInit2=p,r.inflate=function(e,t){var r,u,c,d,f,p,g,m,_,v,b,k,x,E,R,S,I,P,A,z,C,O,T,N,B=0,j=new n.Buf8(4),L=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return h;12===(r=e.state).mode&&(r.mode=13),f=e.next_out,c=e.output,g=e.avail_out,d=e.next_in,u=e.input,p=e.avail_in,m=r.hold,_=r.bits,v=p,b=g,O=0;e:for(;;)switch(r.mode){case 1:if(0===r.wrap){r.mode=13;break}for(;_<16;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(2&r.wrap&&35615===m){j[r.check=0]=255&m,j[1]=m>>>8&255,r.check=s(r.check,j,2,0),_=m=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&m)<<8)+(m>>8))%31){e.msg="incorrect header check",r.mode=30;break}if(8!=(15&m)){e.msg="unknown compression method",r.mode=30;break}if(_-=4,C=8+(15&(m>>>=4)),0===r.wbits)r.wbits=C;else if(C>r.wbits){e.msg="invalid window size",r.mode=30;break}r.dmax=1<<C,e.adler=r.check=1,r.mode=512&m?10:12,_=m=0;break;case 2:for(;_<16;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(r.flags=m,8!=(255&r.flags)){e.msg="unknown compression method",r.mode=30;break}if(57344&r.flags){e.msg="unknown header flags set",r.mode=30;break}r.head&&(r.head.text=m>>8&1),512&r.flags&&(j[0]=255&m,j[1]=m>>>8&255,r.check=s(r.check,j,2,0)),_=m=0,r.mode=3;case 3:for(;_<32;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}r.head&&(r.head.time=m),512&r.flags&&(j[0]=255&m,j[1]=m>>>8&255,j[2]=m>>>16&255,j[3]=m>>>24&255,r.check=s(r.check,j,4,0)),_=m=0,r.mode=4;case 4:for(;_<16;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}r.head&&(r.head.xflags=255&m,r.head.os=m>>8),512&r.flags&&(j[0]=255&m,j[1]=m>>>8&255,r.check=s(r.check,j,2,0)),_=m=0,r.mode=5;case 5:if(1024&r.flags){for(;_<16;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}r.length=m,r.head&&(r.head.extra_len=m),512&r.flags&&(j[0]=255&m,j[1]=m>>>8&255,r.check=s(r.check,j,2,0)),_=m=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&(p<(k=r.length)&&(k=p),k&&(r.head&&(C=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),n.arraySet(r.head.extra,u,d,k,C)),512&r.flags&&(r.check=s(r.check,u,k,d)),p-=k,d+=k,r.length-=k),r.length))break e;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===p)break e;for(k=0;C=u[d+k++],r.head&&C&&r.length<65536&&(r.head.name+=String.fromCharCode(C)),C&&k<p;);if(512&r.flags&&(r.check=s(r.check,u,k,d)),p-=k,d+=k,C)break e}else r.head&&(r.head.name=null);r.length=0,r.mode=8;case 8:if(4096&r.flags){if(0===p)break e;for(k=0;C=u[d+k++],r.head&&C&&r.length<65536&&(r.head.comment+=String.fromCharCode(C)),C&&k<p;);if(512&r.flags&&(r.check=s(r.check,u,k,d)),p-=k,d+=k,C)break e}else r.head&&(r.head.comment=null);r.mode=9;case 9:if(512&r.flags){for(;_<16;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(m!==(65535&r.check)){e.msg="header crc mismatch",r.mode=30;break}_=m=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=12;break;case 10:for(;_<32;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}e.adler=r.check=l(m),_=m=0,r.mode=11;case 11:if(0===r.havedict)return e.next_out=f,e.avail_out=g,e.next_in=d,e.avail_in=p,r.hold=m,r.bits=_,2;e.adler=r.check=1,r.mode=12;case 12:if(5===t||6===t)break e;case 13:if(r.last){m>>>=7&_,_-=7&_,r.mode=27;break}for(;_<3;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}switch(r.last=1&m,_-=1,3&(m>>>=1)){case 0:r.mode=14;break;case 1:if(y(r),r.mode=20,6!==t)break;m>>>=2,_-=2;break e;case 2:r.mode=17;break;case 3:e.msg="invalid block type",r.mode=30}m>>>=2,_-=2;break;case 14:for(m>>>=7&_,_-=7&_;_<32;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if((65535&m)!=(m>>>16^65535)){e.msg="invalid stored block lengths",r.mode=30;break}if(r.length=65535&m,_=m=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(k=r.length){if(p<k&&(k=p),g<k&&(k=g),0===k)break e;n.arraySet(c,u,d,k,f),p-=k,d+=k,g-=k,f+=k,r.length-=k;break}r.mode=12;break;case 17:for(;_<14;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(r.nlen=257+(31&m),m>>>=5,_-=5,r.ndist=1+(31&m),m>>>=5,_-=5,r.ncode=4+(15&m),m>>>=4,_-=4,286<r.nlen||30<r.ndist){e.msg="too many length or distance symbols",r.mode=30;break}r.have=0,r.mode=18;case 18:for(;r.have<r.ncode;){for(;_<3;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}r.lens[L[r.have++]]=7&m,m>>>=3,_-=3}for(;r.have<19;)r.lens[L[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,T={bits:r.lenbits},O=o(0,r.lens,0,19,r.lencode,0,r.work,T),r.lenbits=T.bits,O){e.msg="invalid code lengths set",r.mode=30;break}r.have=0,r.mode=19;case 19:for(;r.have<r.nlen+r.ndist;){for(;S=(B=r.lencode[m&(1<<r.lenbits)-1])>>>16&255,I=65535&B,!((R=B>>>24)<=_);){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(I<16)m>>>=R,_-=R,r.lens[r.have++]=I;else{if(16===I){for(N=R+2;_<N;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(m>>>=R,_-=R,0===r.have){e.msg="invalid bit length repeat",r.mode=30;break}C=r.lens[r.have-1],k=3+(3&m),m>>>=2,_-=2}else if(17===I){for(N=R+3;_<N;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}_-=R,C=0,k=3+(7&(m>>>=R)),m>>>=3,_-=3}else{for(N=R+7;_<N;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}_-=R,C=0,k=11+(127&(m>>>=R)),m>>>=7,_-=7}if(r.have+k>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=30;break}for(;k--;)r.lens[r.have++]=C}}if(30===r.mode)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=30;break}if(r.lenbits=9,T={bits:r.lenbits},O=o(1,r.lens,0,r.nlen,r.lencode,0,r.work,T),r.lenbits=T.bits,O){e.msg="invalid literal/lengths set",r.mode=30;break}if(r.distbits=6,r.distcode=r.distdyn,T={bits:r.distbits},O=o(2,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,T),r.distbits=T.bits,O){e.msg="invalid distances set",r.mode=30;break}if(r.mode=20,6===t)break e;case 20:r.mode=21;case 21:if(6<=p&&258<=g){e.next_out=f,e.avail_out=g,e.next_in=d,e.avail_in=p,r.hold=m,r.bits=_,a(e,b),f=e.next_out,c=e.output,g=e.avail_out,d=e.next_in,u=e.input,p=e.avail_in,m=r.hold,_=r.bits,12===r.mode&&(r.back=-1);break}for(r.back=0;S=(B=r.lencode[m&(1<<r.lenbits)-1])>>>16&255,I=65535&B,!((R=B>>>24)<=_);){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(S&&!(240&S)){for(P=R,A=S,z=I;S=(B=r.lencode[z+((m&(1<<P+A)-1)>>P)])>>>16&255,I=65535&B,!(P+(R=B>>>24)<=_);){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}m>>>=P,_-=P,r.back+=P}if(m>>>=R,_-=R,r.back+=R,r.length=I,0===S){r.mode=26;break}if(32&S){r.back=-1,r.mode=12;break}if(64&S){e.msg="invalid literal/length code",r.mode=30;break}r.extra=15&S,r.mode=22;case 22:if(r.extra){for(N=r.extra;_<N;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}r.length+=m&(1<<r.extra)-1,m>>>=r.extra,_-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;S=(B=r.distcode[m&(1<<r.distbits)-1])>>>16&255,I=65535&B,!((R=B>>>24)<=_);){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(!(240&S)){for(P=R,A=S,z=I;S=(B=r.distcode[z+((m&(1<<P+A)-1)>>P)])>>>16&255,I=65535&B,!(P+(R=B>>>24)<=_);){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}m>>>=P,_-=P,r.back+=P}if(m>>>=R,_-=R,r.back+=R,64&S){e.msg="invalid distance code",r.mode=30;break}r.offset=I,r.extra=15&S,r.mode=24;case 24:if(r.extra){for(N=r.extra;_<N;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}r.offset+=m&(1<<r.extra)-1,m>>>=r.extra,_-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=30;break}r.mode=25;case 25:if(0===g)break e;if(k=b-g,r.offset>k){if((k=r.offset-k)>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=30;break}x=k>r.wnext?(k-=r.wnext,r.wsize-k):r.wnext-k,k>r.length&&(k=r.length),E=r.window}else E=c,x=f-r.offset,k=r.length;for(g<k&&(k=g),g-=k,r.length-=k;c[f++]=E[x++],--k;);0===r.length&&(r.mode=21);break;case 26:if(0===g)break e;c[f++]=r.length,g--,r.mode=21;break;case 27:if(r.wrap){for(;_<32;){if(0===p)break e;p--,m|=u[d++]<<_,_+=8}if(b-=g,e.total_out+=b,r.total+=b,b&&(e.adler=r.check=r.flags?s(r.check,c,b,f-b):i(r.check,c,b,f-b)),b=g,(r.flags?m:l(m))!==r.check){e.msg="incorrect data check",r.mode=30;break}_=m=0}r.mode=28;case 28:if(r.wrap&&r.flags){for(;_<32;){if(0===p)break e;p--,m+=u[d++]<<_,_+=8}if(m!==(4294967295&r.total)){e.msg="incorrect length check",r.mode=30;break}_=m=0}r.mode=29;case 29:O=1;break e;case 30:O=-3;break e;case 31:return-4;default:return h}return e.next_out=f,e.avail_out=g,e.next_in=d,e.avail_in=p,r.hold=m,r.bits=_,(r.wsize||b!==e.avail_out&&r.mode<30&&(r.mode<27||4!==t))&&w(e,e.output,e.next_out,b-e.avail_out)?(r.mode=31,-4):(v-=e.avail_in,b-=e.avail_out,e.total_in+=v,e.total_out+=b,r.total+=b,r.wrap&&b&&(e.adler=r.check=r.flags?s(r.check,c,b,e.next_out-b):i(r.check,c,b,e.next_out-b)),e.data_type=r.bits+(r.last?64:0)+(12===r.mode?128:0)+(20===r.mode||15===r.mode?256:0),(0==v&&0===b||4===t)&&0===O&&(O=-5),O)},r.inflateEnd=function(e){if(!e||!e.state)return h;var t=e.state;return t.window&&(t.window=null),e.state=null,0},r.inflateGetHeader=function(e,t){var r;return e&&e.state&&2&(r=e.state).wrap?((r.head=t).done=!1,0):h},r.inflateSetDictionary=function(e,t){var r,n=t.length;return e&&e.state?0!==(r=e.state).wrap&&11!==r.mode?h:11===r.mode&&i(1,t,n,0)!==r.check?-3:w(e,t,n,n)?(r.mode=31,-4):(r.havedict=1,0):h},r.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./inffast":48,"./inftrees":50}],50:[function(e,t,r){"use strict";var n=e("../utils/common"),i=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],s=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],a=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],o=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];t.exports=function(e,t,r,h,l,u,c,d){var f,p,g,m,_,y,w,v,b,k=d.bits,x=0,E=0,R=0,S=0,I=0,P=0,A=0,z=0,C=0,O=0,T=null,N=0,B=new n.Buf16(16),j=new n.Buf16(16),L=null,D=0;for(x=0;x<=15;x++)B[x]=0;for(E=0;E<h;E++)B[t[r+E]]++;for(I=k,S=15;1<=S&&0===B[S];S--);if(S<I&&(I=S),0===S)return l[u++]=20971520,l[u++]=20971520,d.bits=1,0;for(R=1;R<S&&0===B[R];R++);for(I<R&&(I=R),x=z=1;x<=15;x++)if(z<<=1,(z-=B[x])<0)return-1;if(0<z&&(0===e||1!==S))return-1;for(j[1]=0,x=1;x<15;x++)j[x+1]=j[x]+B[x];for(E=0;E<h;E++)0!==t[r+E]&&(c[j[t[r+E]]++]=E);if(y=0===e?(T=L=c,19):1===e?(T=i,N-=257,L=s,D-=257,256):(T=a,L=o,-1),x=R,_=u,A=E=O=0,g=-1,m=(C=1<<(P=I))-1,1===e&&852<C||2===e&&592<C)return 1;for(;;){for(w=x-A,b=c[E]<y?(v=0,c[E]):c[E]>y?(v=L[D+c[E]],T[N+c[E]]):(v=96,0),f=1<<x-A,R=p=1<<P;l[_+(O>>A)+(p-=f)]=w<<24|v<<16|b,0!==p;);for(f=1<<x-1;O&f;)f>>=1;if(0!==f?(O&=f-1,O+=f):O=0,E++,0==--B[x]){if(x===S)break;x=t[r+c[E]]}if(I<x&&(O&m)!==g){for(0===A&&(A=I),_+=R,z=1<<(P=x-A);P+A<S&&!((z-=B[P+A])<=0);)P++,z<<=1;if(C+=1<<P,1===e&&852<C||2===e&&592<C)return 1;l[g=O&m]=I<<24|P<<16|_-u}}return 0!==O&&(l[_+O]=x-A<<24|64<<16),d.bits=I,0}},{"../utils/common":41}],51:[function(e,t,r){"use strict";t.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],52:[function(e,t,r){"use strict";var n=e("../utils/common");function i(e){for(var t=e.length;0<=--t;)e[t]=0}var s=256,a=286,o=30,h=15,l=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],u=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],c=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],d=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],f=new Array(576);i(f);var p=new Array(60);i(p);var g=new Array(512);i(g);var m=new Array(256);i(m);var _=new Array(29);i(_);var y,w,v,b=new Array(o);function k(e,t,r,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}function x(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function E(e){return e<256?g[e]:g[256+(e>>>7)]}function R(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function S(e,t,r){e.bi_valid>16-r?(e.bi_buf|=t<<e.bi_valid&65535,R(e,e.bi_buf),e.bi_buf=t>>16-e.bi_valid,e.bi_valid+=r-16):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=r)}function I(e,t,r){S(e,r[2*t],r[2*t+1])}function P(e,t){for(var r=0;r|=1&e,e>>>=1,r<<=1,0<--t;);return r>>>1}function A(e,t,r){var n,i,s=new Array(16),a=0;for(n=1;n<=h;n++)s[n]=a=a+r[n-1]<<1;for(i=0;i<=t;i++){var o=e[2*i+1];0!==o&&(e[2*i]=P(s[o]++,o))}}function z(e){var t;for(t=0;t<a;t++)e.dyn_ltree[2*t]=0;for(t=0;t<o;t++)e.dyn_dtree[2*t]=0;for(t=0;t<19;t++)e.bl_tree[2*t]=0;e.dyn_ltree[512]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function C(e){8<e.bi_valid?R(e,e.bi_buf):0<e.bi_valid&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function O(e,t,r,n){var i=2*t,s=2*r;return e[i]<e[s]||e[i]===e[s]&&n[t]<=n[r]}function T(e,t,r){for(var n=e.heap[r],i=r<<1;i<=e.heap_len&&(i<e.heap_len&&O(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!O(t,n,e.heap[i],e.depth));)e.heap[r]=e.heap[i],r=i,i<<=1;e.heap[r]=n}function N(e,t,r){var n,i,a,o,h=0;if(0!==e.last_lit)for(;n=e.pending_buf[e.d_buf+2*h]<<8|e.pending_buf[e.d_buf+2*h+1],i=e.pending_buf[e.l_buf+h],h++,0===n?I(e,i,t):(I(e,(a=m[i])+s+1,t),0!==(o=l[a])&&S(e,i-=_[a],o),I(e,a=E(--n),r),0!==(o=u[a])&&S(e,n-=b[a],o)),h<e.last_lit;);I(e,256,t)}function B(e,t){var r,n,i,s=t.dyn_tree,a=t.stat_desc.static_tree,o=t.stat_desc.has_stree,l=t.stat_desc.elems,u=-1;for(e.heap_len=0,e.heap_max=573,r=0;r<l;r++)0!==s[2*r]?(e.heap[++e.heap_len]=u=r,e.depth[r]=0):s[2*r+1]=0;for(;e.heap_len<2;)s[2*(i=e.heap[++e.heap_len]=u<2?++u:0)]=1,e.depth[i]=0,e.opt_len--,o&&(e.static_len-=a[2*i+1]);for(t.max_code=u,r=e.heap_len>>1;1<=r;r--)T(e,s,r);for(i=l;r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],T(e,s,1),n=e.heap[1],e.heap[--e.heap_max]=r,e.heap[--e.heap_max]=n,s[2*i]=s[2*r]+s[2*n],e.depth[i]=(e.depth[r]>=e.depth[n]?e.depth[r]:e.depth[n])+1,s[2*r+1]=s[2*n+1]=i,e.heap[1]=i++,T(e,s,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1],function(e,t){var r,n,i,s,a,o,l=t.dyn_tree,u=t.max_code,c=t.stat_desc.static_tree,d=t.stat_desc.has_stree,f=t.stat_desc.extra_bits,p=t.stat_desc.extra_base,g=t.stat_desc.max_length,m=0;for(s=0;s<=h;s++)e.bl_count[s]=0;for(l[2*e.heap[e.heap_max]+1]=0,r=e.heap_max+1;r<573;r++)g<(s=l[2*l[2*(n=e.heap[r])+1]+1]+1)&&(s=g,m++),l[2*n+1]=s,u<n||(e.bl_count[s]++,a=0,p<=n&&(a=f[n-p]),o=l[2*n],e.opt_len+=o*(s+a),d&&(e.static_len+=o*(c[2*n+1]+a)));if(0!==m){do{for(s=g-1;0===e.bl_count[s];)s--;e.bl_count[s]--,e.bl_count[s+1]+=2,e.bl_count[g]--,m-=2}while(0<m);for(s=g;0!==s;s--)for(n=e.bl_count[s];0!==n;)u<(i=e.heap[--r])||(l[2*i+1]!==s&&(e.opt_len+=(s-l[2*i+1])*l[2*i],l[2*i+1]=s),n--)}}(e,t),A(s,u,e.bl_count)}function j(e,t,r){var n,i,s=-1,a=t[1],o=0,h=7,l=4;for(0===a&&(h=138,l=3),t[2*(r+1)+1]=65535,n=0;n<=r;n++)i=a,a=t[2*(n+1)+1],++o<h&&i===a||(o<l?e.bl_tree[2*i]+=o:0!==i?(i!==s&&e.bl_tree[2*i]++,e.bl_tree[32]++):o<=10?e.bl_tree[34]++:e.bl_tree[36]++,s=i,l=(o=0)===a?(h=138,3):i===a?(h=6,3):(h=7,4))}function L(e,t,r){var n,i,s=-1,a=t[1],o=0,h=7,l=4;for(0===a&&(h=138,l=3),n=0;n<=r;n++)if(i=a,a=t[2*(n+1)+1],!(++o<h&&i===a)){if(o<l)for(;I(e,i,e.bl_tree),0!=--o;);else 0!==i?(i!==s&&(I(e,i,e.bl_tree),o--),I(e,16,e.bl_tree),S(e,o-3,2)):o<=10?(I(e,17,e.bl_tree),S(e,o-3,3)):(I(e,18,e.bl_tree),S(e,o-11,7));s=i,l=(o=0)===a?(h=138,3):i===a?(h=6,3):(h=7,4)}}i(b);var D=!1;function M(e,t,r,i){S(e,0+(i?1:0),3),function(e,t,r){C(e),R(e,r),R(e,~r),n.arraySet(e.pending_buf,e.window,t,r,e.pending),e.pending+=r}(e,t,r)}r._tr_init=function(e){D||(function(){var e,t,r,n,i,s=new Array(16);for(n=r=0;n<28;n++)for(_[n]=r,e=0;e<1<<l[n];e++)m[r++]=n;for(m[r-1]=n,n=i=0;n<16;n++)for(b[n]=i,e=0;e<1<<u[n];e++)g[i++]=n;for(i>>=7;n<o;n++)for(b[n]=i<<7,e=0;e<1<<u[n]-7;e++)g[256+i++]=n;for(t=0;t<=h;t++)s[t]=0;for(e=0;e<=143;)f[2*e+1]=8,e++,s[8]++;for(;e<=255;)f[2*e+1]=9,e++,s[9]++;for(;e<=279;)f[2*e+1]=7,e++,s[7]++;for(;e<=287;)f[2*e+1]=8,e++,s[8]++;for(A(f,287,s),e=0;e<o;e++)p[2*e+1]=5,p[2*e]=P(e,5);y=new k(f,l,257,a,h),w=new k(p,u,0,o,h),v=new k(new Array(0),c,0,19,7)}(),D=!0),e.l_desc=new x(e.dyn_ltree,y),e.d_desc=new x(e.dyn_dtree,w),e.bl_desc=new x(e.bl_tree,v),e.bi_buf=0,e.bi_valid=0,z(e)},r._tr_stored_block=M,r._tr_flush_block=function(e,t,r,n){var i,a,o=0;0<e.level?(2===e.strm.data_type&&(e.strm.data_type=function(e){var t,r=4093624447;for(t=0;t<=31;t++,r>>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;t<s;t++)if(0!==e.dyn_ltree[2*t])return 1;return 0}(e)),B(e,e.l_desc),B(e,e.d_desc),o=function(e){var t;for(j(e,e.dyn_ltree,e.l_desc.max_code),j(e,e.dyn_dtree,e.d_desc.max_code),B(e,e.bl_desc),t=18;3<=t&&0===e.bl_tree[2*d[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),i=e.opt_len+3+7>>>3,(a=e.static_len+3+7>>>3)<=i&&(i=a)):i=a=r+5,r+4<=i&&-1!==t?M(e,t,r,n):4===e.strategy||a===i?(S(e,2+(n?1:0),3),N(e,f,p)):(S(e,4+(n?1:0),3),function(e,t,r,n){var i;for(S(e,t-257,5),S(e,r-1,5),S(e,n-4,4),i=0;i<n;i++)S(e,e.bl_tree[2*d[i]+1],3);L(e,e.dyn_ltree,t-1),L(e,e.dyn_dtree,r-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,o+1),N(e,e.dyn_ltree,e.dyn_dtree)),z(e),n&&C(e)},r._tr_tally=function(e,t,r){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(m[r]+s+1)]++,e.dyn_dtree[2*E(t)]++),e.last_lit===e.lit_bufsize-1},r._tr_align=function(e){S(e,2,3),I(e,256,f),function(e){16===e.bi_valid?(R(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8<=e.bi_valid&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},{"../utils/common":41}],53:[function(e,t,r){"use strict";t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,t,n){(function(e){!function(e){"use strict";if(!e.setImmediate){var t,r,n,i,s=1,a={},o=!1,h=e.document,l=Object.getPrototypeOf&&Object.getPrototypeOf(e);l=l&&l.setTimeout?l:e,t="[object process]"==={}.toString.call(e.process)?function(e){process.nextTick(function(){c(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,r=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=r,t}}()?(i="setImmediate$"+Math.random()+"$",e.addEventListener?e.addEventListener("message",d,!1):e.attachEvent("onmessage",d),function(t){e.postMessage(i+t,"*")}):e.MessageChannel?((n=new MessageChannel).port1.onmessage=function(e){c(e.data)},function(e){n.port2.postMessage(e)}):h&&"onreadystatechange"in h.createElement("script")?(r=h.documentElement,function(e){var t=h.createElement("script");t.onreadystatechange=function(){c(e),t.onreadystatechange=null,r.removeChild(t),t=null},r.appendChild(t)}):function(e){setTimeout(c,0,e)},l.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var r=new Array(arguments.length-1),n=0;n<r.length;n++)r[n]=arguments[n+1];var i={callback:e,args:r};return a[s]=i,t(s),s++},l.clearImmediate=u}function u(e){delete a[e]}function c(e){if(o)setTimeout(c,0,e);else{var t=a[e];if(t){o=!0;try{!function(e){var t=e.callback,r=e.args;switch(r.length){case 0:t();break;case 1:t(r[0]);break;case 2:t(r[0],r[1]);break;case 3:t(r[0],r[1],r[2]);break;default:t.apply(undefined,r)}}(t)}finally{u(e),o=!1}}}}function d(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(i)&&c(+t.data.slice(i.length))}}("undefined"==typeof self?void 0===e?this:e:self)}).call(this,void 0!==r.g?r.g:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[10])(10)}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var s=t[n]={exports:{}};return e[n](s,s.exports,r),s.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{"use strict";r.r(n),r.d(n,{AsyncIterableIteratorMirror:()=>t,DefaultPublicRegistryOptions:()=>u,DefaultRegistryOptions:()=>c,DevPluginServerClient:()=>B,DevPluginSource:()=>M,FilteredIterableIterator:()=>g,LazyBatchedAsyncIterableIterator:()=>T,LazyPromise:()=>i,LocalObject:()=>m,LocalRegistry:()=>b,LocalRemoteMap:()=>o,Messenger:()=>x,NetworkManager:()=>P,PluginArchive:()=>O,PluginManager:()=>A,ProxyManager:()=>l,RPPlatform:()=>C,RPPlugin:()=>E,RPVersion:()=>N,RPackThread:()=>z,RegistryManager:()=>S,RemoteAsyncIterator:()=>e,RemoteObject:()=>v,RemoteProxyManager:()=>h,RemoteRegistry:()=>k,RemoteRegistryManager:()=>R,StringUtils:()=>a,Utils:()=>s,ZipPluginArchive:()=>D,default:()=>F});class e{constructor(e,t){this.manager=e,this.iteratorKeySupplier=t,this.iteratorKey=null,this.iteratorKeyPromise=null,this.finished=!1}[Symbol.asyncIterator](){return this}async getIteratorKey(){return null!==this.iteratorKey?this.iteratorKey:null!==this.iteratorKeyPromise?this.iteratorKeyPromise:this.iteratorKeyPromise=this.iteratorKeySupplier().then(e=>this.iteratorKey=e)}async next(...[e]){if(this.finished)return{done:!0,value:void 0};let t=await this.manager.requestRemoteIteratorNext(await this.getIteratorKey(),e);return t.done&&(this.finished=!0),t}async return(e){return this.finished||(this.manager.requestRemoteIteratorClose(await this.getIteratorKey()),this.finished=!0),{done:!0,value:e}}async throw(e){throw this.finished||(this.manager.requestRemoteIteratorClose(await this.getIteratorKey()),this.finished=!0),e}}class t{constructor(e,t=e=>e){this.it=e,this.converter=t}[Symbol.asyncIterator](){return this}async next(...e){let t=this.it.next(...e);return void 0!==t.value&&(t.value=this.converter(t.value)),t}async return(e){if(void 0!==this.it.return){let t=this.it.return(e);return void 0!==t.value&&(t.value=this.converter(t.value)),t}return{done:!0,value:e}}async throw(e){if(void 0!==this.it.throw){let t=this.it.throw(e);return void 0!==t.value&&(t.value=this.converter(t.value)),t}throw e}}class i{constructor(e){this.promise=new Promise((e,t)=>{this.resolveFunc=e,this.rejectFunc=t}),this.completed=!1,this.errored=!1,e?.then(this.resolve,this.reject)}resolve(e){this.completed||(this.completed=!0,this.errored=!1,this.resolveFunc(e))}reject(e){this.completed||(this.completed=!0,this.errored=!0,this.rejectFunc(e))}getPromise(){return this.promise}then(e,t){return this.promise.then(e,t)}isComplete(){return this.completed}isErrored(){return this.errored}}class s{static NATURAL_COLLATOR=new Intl.Collator(void 0,{numeric:!0});static async getLargeFile(e,t,r){let n=await fetch(e,t);if(!n.body)return;let i=n.body.getReader(),s=[],a=0,o=n.headers.get("Content-Length"),h=null==o?0:parseInt(o);for(r||(r=()=>{});;){let e=await i.read();if(e.done)break;a+=e.value.length,r(a,h),s.push(e.value)}return await new Blob(s).arrayBuffer()}static binarySearch(e,t,r){let n=0,i=e.length-1;for(;n<=i;){let s=i+n>>1,a=r(t,e[s]);if(a>0)n=s+1;else{if(!(a<0))return s;i=s-1}}return-n-1}static binarySearch2(e,t,r,n){let i=0,s=e.length-1;for(;i<=s;){let a=s+i>>1,o=n(t,r(e[a]));if(o>0)i=a+1;else{if(!(o<0))return a;s=a-1}}return-i-1}static loadImageAsync(e){let t=new i;const r=new Image;return r.onload=()=>t.resolve(r),r.onerror=t.reject,r.src=e,t.getPromise()}static naturalComparator(e=e=>e?e.toString():"null"){return(t,r)=>this.NATURAL_COLLATOR.compare(e(t),e(r))}static naturalSort(e,t=e=>e?e.toString():"null"){return e.sort(this.naturalComparator(t)),e}static async asyncSort(e,t){if(e.length<=1)return e;const r=Math.floor(e.length/2);let n=await this.asyncSort(e.slice(0,r),t),i=await this.asyncSort(e.slice(r),t),s=0,a=0,o=0;for(;s<n.length&&a<i.length;)await t(n[s],i[a])<=0?(e[o]=n[s],s++):(e[o]=i[a],a++),o++;for(;s<n.length;)e[o]=n[s],s++,o++;for(;a<i.length;)e[o]=i[a],a++,o++;return e}static diff(e,t,r=(e,t)=>e==t){let n=[],i=[];for(let i of e){let e=!1;for(let n of t)if(r(i,n)){e=!0;break}e||n.push(i)}for(let n of t){let t=!1;for(let i of e)if(r(i,n)){t=!0;break}t||i.push(n)}return{added:n,removed:i}}static tableString(e,t,r){let n,i=["|"],s=" ",a="left";r&&(void 0!==r.separator&&(i=r.separator instanceof Array?r.separator:[r.separator]),void 0!==r.headers&&(n=r.headers),void 0!==r.padding&&(s=r.padding),void 0!==r.textAlign&&(a=r.textAlign));let o=e.map(e=>t(e)),h=[];for(let e of o)for(let t=0;t<e.length;t++)"number"==typeof h[t]?h[t]=Math.max(h[t],e[t].length):h[t]=e[t].length;if(n)for(let e=0;e<n.length;e++)"number"==typeof h[e]?h[e]=Math.max(h[e],n[e].length):h[e]=n[e].length;if("right"==a){if(n)for(let e=0;e<n.length;e++)n[e]=s+n[e].padStart(h[e]," ")+s;for(let e of o)for(let t=0;t<e.length;t++)e[t]=s+e[t].padStart(h[t]," ")+s}else if("center"==a){if(n)for(let e=0;e<n.length;e++)n[e]=s+n[e].padEnd(Math.ceil((h[e]-n[e].length)/2)+n[e].length," ").padStart(h[e]," ")+s;for(let e of o)for(let t=0;t<e.length;t++)e[t]=s+e[t].padEnd(Math.ceil((h[t]-e[t].length)/2)+e[t].length," ").padStart(h[t]," ")+s}else{if(n)for(let e=0;e<n.length;e++)n[e]=s+n[e].padEnd(h[e]," ")+s;for(let e of o)for(let t=0;t<e.length;t++)e[t]=s+e[t].padEnd(h[t]," ")+s}let l="";if(n){let e="";for(let t=0;t<n.length;t++){if(t>0){let r=i[(t-1)%i.length];l+=r,e+=r}l+=n[t],e+="-".repeat(n[t].length)}l+="\n"+e+"\n"}for(let e=0;e<o.length;e++){let t=o[e];e>0&&(l+="\n");for(let e=0;e<t.length;e++)e>0&&(l+=i[e%i.length]),l+=t[e]}return l}static getEnumKeys(e){let t=[];for(let r of Object.getOwnPropertyNames(e))isNaN(parseInt(r))&&t.push(r);return t}static getEnumConstants(e){let t=[];for(let r of Object.getOwnPropertyNames(e))if(isNaN(parseInt(r))){let n=e[r];t.push(n)}return t}static presentOrDefault(e,t){return void 0===e?t:e}static generateRandomInt(e,t){return void 0===t&&(t=e,e=0),t=Math.floor(t),(e=Math.ceil(e))+Math.floor(Math.random()*(t-e))}static pickRandomElement(e){let t=Object.keys(e);return e[t[this.generateRandomInt(t.length)]]}}class a{static LOWERCASE_LETTERS="abcdefghijklmnopqrstuvwxyz";static UPPERCASE_LETTERS="ABCDEFGHIJKLMNOPQRSTUVWXYZ";static NUMBERS="0123456789";static LOWERCASE_UPPERCASE=a.LOWERCASE_LETTERS+a.UPPERCASE_LETTERS;static ALPHANUMERIC=a.LOWERCASE_UPPERCASE+a.NUMBERS;static generateNonce(){return this.generateString(this.ALPHANUMERIC,20)}static generateString(e,t){let r="";for(let n=0;n<t;n++)r+=s.pickRandomElement(e);return r}static capitalize(e){return e.substring(0,1).toUpperCase()+e.substring(1)}static count(e,t){return(e.match(new RegExp(this.escapeRegExp(t),"g"))||[]).length}static escapeRegExp(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}}class o{constructor(e,t,r,n){this.parent=e,this.localMap=new Map,this.remoteSet=new Set,this.registry=new FinalizationRegistry(e=>{this.remoteSet.delete(e)&&t.sendPacket({id:"proxy:cleanup",type:r,key:e})}),t.addHandler("proxy:cleanup",e=>{if(e.type!=r)return;let t=this.delete(e.key);void 0!==t&&void 0!==n&&n(t)})}generateKey(e){for(;;){let t=a.generateNonce();if(!this.localMap.has(t))return this.localMap.set(t,e),t}}addLocal(e,t){return t?(this.localMap.set(t,e),t):this.generateKey(e)}get(e){return this.localMap.get(e)}delete(e){let t=this.localMap.get(e);return this.localMap.delete(e),t}registerRemote(e,t){this.registry.register(t,e)}has(e){return this.localMap.has(e)}hasRemote(e){return this.remoteSet.has(e)}deleteRemote(e){return this.remoteSet.delete(e)}}class h{constructor(e,t,r){this.parent=e,this.threadId=t,this.messenger=r,this.objects=new o(this,r,"object"),this.functions=new o(this,r,"function"),this.iterators=new o(this,r,"iterator",e=>{e.return&&e.return().then()}),this.messenger.addHandler("proxy:refresh_object_request",this.onObjectRefresh.bind(this)),this.messenger.addHandler("proxy:method_request",this.onMethod.bind(this)),this.messenger.addHandler("proxy:function_request",this.onFunction.bind(this)),this.messenger.addHandler("proxy:create_iterator_request",this.onIteratorCreate.bind(this)),this.messenger.addHandler("proxy:iterator_next_request",this.onIteratorNext.bind(this)),this.messenger.addHandler("proxy:iterator_close_request",this.onIteratorClose.bind(this))}getThreadId(){return this.threadId}serialize(e,t){return this.parent.getRPack().getNetworkManager().serialize(this.threadId,e,t)}deserialize(e){return this.parent.getRPack().getNetworkManager().deserialize(this.threadId,e)}sendValue(e,t,r,n){this.messenger.sendPacket({id:e,nonce:t,value:this.serialize(r),...n})}sendError(e,t,r){this.messenger.sendPacket({id:e,nonce:t,error:this.serialize(r)})}sendErrorRaw(e,t,r){this.sendError(e,t,new Error(r))}onObjectRefresh(e){let t=e.objectKey;if(!this.objects.has(t))return void this.sendErrorRaw("proxy:refresh_object_response",e.nonce,"Unknown object key "+t);let r=this.objects.get(t);this.sendValue("proxy:refresh_object_response",e.nonce,r)}onMethod(e){let t=e.objectKey;if(!this.objects.has(t))return void this.sendErrorRaw("proxy:method_response",e.nonce,"Unknown object key "+t);let r=this.objects.get(t),n=e.method;if(!(n in r))return void this.sendErrorRaw("proxy:method_response",e.nonce,"Property "+n+" is not present in object "+t);let i=r[n],s=e.args.map(e=>this.deserialize(e)),a=i.apply(r,s);Promise.resolve(a).then(t=>{this.sendValue("proxy:method_response",e.nonce,t)},t=>{this.sendError("proxy:method_response",e.nonce,t)})}onFunction(e){let t=e.functionKey;if(!this.functions.has(t))return void this.sendErrorRaw("proxy:function_response",e.nonce,"Unknown function key "+t);let r=this.functions.get(t)(...e.args.map(e=>this.deserialize(e)));Promise.resolve(r).then(t=>{this.sendValue("proxy:function_response",e.nonce,t)},t=>{this.sendError("proxy:function_response",e.nonce,t)})}onIteratorCreate(e){let t=e.objectKey;if(!this.objects.has(t))return void this.sendErrorRaw("proxy:create_iterator_response",e.nonce,"Unknown object key "+t);let r,n=this.objects.get(t);if(n[Symbol.iterator]){let e=n[Symbol.iterator]();r=this.declareLocalIterator(e)}else{if(!n[Symbol.asyncIterator])return void this.sendErrorRaw("proxy:create_iterator_response",e.nonce,"Object "+t+" is not iterable");{let e=n[Symbol.asyncIterator]();r=this.declareLocalAsyncIterator(e)}}this.messenger.sendPacket({id:"proxy:create_iterator_response",nonce:e.nonce,iteratorKey:r})}onIteratorNext(e){let t=e.iteratorKey,r=void 0===e.value?void 0:this.deserialize(e.value);this.iterators.has(t)?this.iterators.get(t).next(r).then(t=>{this.sendValue("proxy:iterator_next_response",e.nonce,t.value,{done:t.done??!1})},t=>{this.sendError("proxy:iterator_next_response",e.nonce,t)}):this.sendErrorRaw("proxy:iterator_next_response",e.nonce,"Unknown iterator key "+t)}onIteratorClose(e){let t=e.iteratorKey;if(this.iterators.has(t)){let e=this.iterators.get(t);e.return&&e.return().then(),this.iterators.delete(t)}}declareLocalObject(e,t){return this.objects.addLocal(e,t)}declareLocalIterator(e){return this.iterators.addLocal(new t(e))}declareLocalAsyncIterator(e){return this.iterators.addLocal(e)}declareFunction(e){return this.functions.addLocal(e)}declareRemoteIterator(e,t){this.iterators.registerRemote(e,t)}requestRemoteObjectIterator(t){let r=new e(this,async()=>{const e=await this.messenger.sendPacketWithNoncePromise("proxy:create_iterator_request",{objectKey:t},"proxy:create_iterator_response");if(e.error)throw this.deserialize(e.error);let n=e.iteratorKey;return this.declareRemoteIterator(n,r),n});return r}async requestRemoteIteratorNext(e,t){if(!this.iterators.hasRemote(e))return{done:!0,value:void 0};let r=await this.messenger.sendPacketWithNoncePromise("proxy:iterator_next_request",{iteratorKey:e,value:void 0===t?void 0:this.serialize(t)},"proxy:iterator_next_response");if(r.error)throw this.deserialize(r.error);{let e=this.deserialize(r.value);return{done:r.done,value:e}}}requestRemoteIteratorClose(e){this.iterators.hasRemote(e)&&(this.messenger.sendPacket({id:"proxy:iterator_close_request",iteratorKey:e}),this.iterators.deleteRemote(e))}async refreshRemote(e){let t=await this.messenger.sendPacketWithNoncePromise("proxy:refresh_object_request",{objectKey:e},"proxy:refresh_object_response");if(t.error)throw this.deserialize(t.error);let r=this.deserialize(t.value);return this.objects.registerRemote(e,r),r}async requestRemoteMethod(e,t,r){let n=await this.messenger.sendPacketWithNoncePromise("proxy:method_request",{objectKey:e,method:t,args:r.map(e=>this.serialize(e))},"proxy:method_response");if(n.error)throw this.deserialize(n.error);return this.deserialize(n.value)}async requestRemoteFunction(e,t){let r=await this.messenger.sendPacketWithNoncePromise("proxy:function_request",{functionKey:e,args:t.map(e=>this.serialize(e))},"proxy:function_response");if(r.error)throw this.deserialize(r.error);return this.deserialize(r.value)}}class l{constructor(e){this.rpack=e,this.remotes=new Map}createRemote(e,t){let r=new h(this,e,t);return this.remotes.set(e,r),r}getRPack(){return this.rpack}getRemote(e){return this.remotes.get(e)}}const u={localsAreProxied:!1,verifyLocals:!0,allowShared:!1},c={...u};let d;var f;(f=d||(d={})).withDefaultOptions=function(e){let t={...c};if(void 0!==e)for(let r in c)r in e&&(t[r]=e[r]);return t},f.withPublicDefaultOptions=function(e){let t={...u};if(void 0!==e)for(let r in u)r in e&&(t[r]=e[r]);return t};const p=d;class g{constructor(e,t,r=!0){this.it=e,this.filter=r?t:e=>void 0!==e&&t(e)}[Symbol.iterator](){return this}next(...e){for(;;){let t=this.it.next(...e);if(this.filter(t.value)||t.done)return t}}return(e){return void 0!==this.it.return?this.it.return(e):{done:!0,value:e}}throw(e){if(void 0!==this.it.throw)return this.it.throw(e);throw e}}class m{get(e,t,r){let n=e[t];return"function"==typeof n?(...r)=>Promise.resolve(e[t](...r)):n}}let _,y=Symbol("isProxy"),w=Symbol("getFunctions");class v{constructor(e,t,r,n,i,s){this.remoteProxy=e,this.objectKey=t,this.typeName=r,this.knownProps=new Map;for(let[t,r]of Object.entries(n))this.knownProps.set(t,e.deserialize(r));this.functions=i,this.iterable=s}get(e,t,r){if(t===Symbol.asyncIterator){if(!this.iterable)return;return()=>{this.remoteProxy.requestRemoteObjectIterator(this.objectKey)}}if(t===y)return!0;if(t===w)return this.functions;if("symbol"!=typeof t){if("constructor"===t){let e=()=>{throw new Error("Cannot call constructor of remote object")};return Object.defineProperty(e,"name",{value:this.typeName}),e}return this.knownProps.has(t)?this.knownProps.get(t):this.functions.includes(t)?(...e)=>this.remoteProxy.requestRemoteMethod(this.objectKey,t,e):void 0}}ownKeys(e){return[...this.knownProps.keys()]}getOwnPropertyDescriptor(e,t){if("symbol"!=typeof t)return this.knownProps.has(t)?{enumerable:!0,configurable:!0}:void 0}has(e,t){return t===Symbol.asyncIterator?this.iterable:!("symbol"==typeof t||!this.knownProps.has(t)&&!this.functions.includes(t))}static fromObject(e,t){return new v(e,t.objectKey,t.typeName,{},t.functions,t.iterable)}static fromRegistryEntry(e,t){return new v(e,t.objectKey,t.typeName,t.props,t.functions,t.iterable)}static isProxy(e){return!0===e[y]}static getFunctions(e){return this.isProxy(e)?e[w]:[]}}class b{constructor(e,t,r){this.manager=e,this.options=r,this.publicOptions=p.withPublicDefaultOptions(r),this.registryId=t,this.map=new Map}getRegistryManager(){return this.manager}getRegistryId(){return this.registryId}getOptions(){return this.publicOptions}getAllEntriesByThread(e){let r=new g(this.map.values(),t=>t.ownerThread===e);return new t(r)}getAllEntries(){return new t(this.map.values())}getAll(){return new t(this.map.values(),e=>e.data)}async get(e){let t=this.map.get(e);if(t)return t.data}async getEntry(e){return this.map.get(e)}async has(e){return this.map.has(e)}async add(e,t){return!this.map.has(e)&&(this.__localAdd(e,this.manager.getRPack().getNetworkManager().getCurrentThreadId(),t),!0)}async remove(e){return this.map.delete(e)}async size(){return this.map.size}__removeAll(e){for(let[t,r]of this.map)r.ownerThread===e&&this.map.delete(t)}__localAdd(e,t,r){if(this.map.has(e)&&this.map.get(e).ownerThread!==t)return!1;if(this.options.localsAreProxied&&!v.isProxy(r)&&"object"==typeof r&&(r=new Proxy(r,new m)),!this.options.allowShared&&null===t)throw new Error("Shared values are not allowed due to allowShared being set to false.");return this.map.set(e,{key:e,ownerThread:t,data:r}),!0}__localRemove(e,t){return(!this.map.has(e)||this.map.get(e).ownerThread===t)&&this.map.delete(e)}__localGet(e){return this.map.get(e)?.data}}class k{constructor(e,t,r,n){this.manager=e,this.options=n,this.remoteThread=t,this.registryId=r,this.localEntries=new Map}getRemote(){return this.manager.getRemote(this.remoteThread)}getRegistryManager(){return this.manager}getRegistryId(){return this.registryId}getOptions(){return this.options}get(e){return this.localEntries.has(e)?(this.options.verifyLocals,Promise.resolve(this.localEntries.get(e).data)):this.getRemote().requestGet(this.registryId,e)}getEntry(e){return this.localEntries.has(e)?(this.options.verifyLocals,Promise.resolve(this.localEntries.get(e))):this.getRemote().requestGetEntry(this.registryId,e)}getAllEntriesByThread(e){return this.getRemote().requestGetAllEntriesByThread(this.registryId,e)}getAllEntries(){return this.getRemote().requestGetAllEntries(this.registryId)}getAll(){return this.getRemote().requestGetAll(this.registryId)}has(e){return this.getRemote().requestHas(this.registryId,e)}async add(e,t){return this.__localAdd(e,this.manager.getRPack().getNetworkManager().getCurrentThreadId(),t),this.getRemote().requestAdd(this.registryId,null,e,t).then(t=>(t||this.localEntries.delete(e),t))}remove(e){return this.getRemote().requestRemove(this.registryId,null,e)}size(){return this.getRemote().requestSize(this.registryId)}__forwardAdd(e,t,r){return this.getRemote().requestAdd(this.registryId,t,e,r)}__forwardRemove(e,t){return this.getRemote().requestRemove(this.registryId,t,e)}__localAdd(e,t,r){if(this.localEntries.has(e)&&this.localEntries.get(e).ownerThread!==t)return!1;if(this.options.localsAreProxied&&!v.isProxy(r)&&"object"==typeof r&&(r=new Proxy(r,new m)),!this.options.allowShared&&null===t)throw new Error("Shared values are not allowed due to allowShared being set to false.");return this.localEntries.set(e,{key:e,ownerThread:t,data:r}),!0}__localGet(e){return this.localEntries.get(e)?.data}}class x{constructor(e){this.handlerLists={},this.sender=e}getHandlerList(e){let t=this.handlerLists[e];return t||(t=[],this.handlerLists[e]=t),t}addHandler(e,t){this.getHandlerList(e).splice(0,0,t)}removeHandler(e,t){let r=this.getHandlerList(e),n=r.indexOf(t);return n>-1&&(r.splice(n,1),!0)}promiseHandlerImpl(e,t,r){let n,i,s=new Promise((e,t)=>{n=e,i=t});return e.push(e=>t(e,n)),void 0!==r&&setTimeout(()=>{i("Timeout was reached: "+r)},r),s}addPromiseNonceHandler(e,t,r){return this.promiseHandlerImpl(this.getHandlerList(e),(e,r)=>{if(e.nonce==t)return r(e),!1},r)}addPromiseHandler(e,t){return this.promiseHandlerImpl(this.getHandlerList(e),(e,t)=>(t(e),!1),t)}receivePacket(e){let t=e.id,r=this.getHandlerList(t);if(r)for(let t=r.length-1;t>=0;t--)!1===(0,r[t])(e)&&r.splice(t,1)}sendPacket(e){this.sender(e)}sendPacketWithNoncePromise(e,t,r,n){let i=a.generateNonce(),s=this.addPromiseNonceHandler(r,i,n);return this.sendPacket({...t,id:e,nonce:i}),s}static cast(e){return e}}class E{getRPack(){return this.rpack}async onInit(){}async onShutdown(){}static __setInstance(e,t){void 0===e.rpack&&(e.rpack=t)}}class R{constructor(e,t,r){this.parent=e,this.remoteThreadId=t,this.messenger=r,r.addHandler("registry:add_request",this.onAdd.bind(this)),r.addHandler("registry:has_request",this.onHas.bind(this)),r.addHandler("registry:remove_request",this.onRemove.bind(this)),r.addHandler("registry:size_request",this.onSize.bind(this)),r.addHandler("registry:get_request",this.onGet.bind(this)),r.addHandler("registry:get_entry_request",this.onGetEntry.bind(this)),r.addHandler("registry:get_all_entries_request",this.onGetAllEntries.bind(this)),r.addHandler("registry:get_all_entries_by_thread_request",this.onGetAllEntriesByThread.bind(this)),r.addHandler("registry:get_all_request",this.onGetAll.bind(this))}getCurrentThread(){return this.parent.getRPack().getNetworkManager().getCurrentThreadId()}getRemote(){return this.parent.getRPack().getProxyManager().getRemote(this.remoteThreadId)}serialize(e,t){return this.parent.getRPack().getNetworkManager().serialize(this.remoteThreadId,e,t)}deserialize(e){return this.parent.getRPack().getNetworkManager().deserialize(this.remoteThreadId,e)}sendError(e,t,r){this.messenger.sendPacket({id:e,nonce:t,error:this.serialize(r)})}sendErrorRaw(e,t,r){this.sendError(e,t,new Error(r))}async onAdd(e){let t=await this.parent.getRegistry(e.registryId);if(void 0===t)return void this.sendErrorRaw("registry:add_response",e.nonce,"Unknown registry "+e.registryId);let r=e.ownerThread;if(r!==this.remoteThreadId&&this.remoteThreadId!==P.HOST_THREAD_ID)return void this.sendErrorRaw("registry:add_response",e.nonce,"Non-host threads cannot forward registry requests");let n=this.deserialize(e.value);if(t instanceof k)t.__forwardAdd(e.key,r,n).then(t=>{this.messenger.sendPacket({id:"registry:add_response",nonce:e.nonce,value:t})},t=>{this.sendError("registry:add_response",e.nonce,t)});else if(t instanceof b){let i=t.__localAdd(e.key,r,n);this.messenger.sendPacket({id:"registry:add_response",nonce:e.nonce,value:i})}else this.sendErrorRaw("registry:add_response",e.nonce,"Weird registry type: "+t.constructor.name)}async onHas(e){let t=await this.parent.getRegistry(e.registryId);if(void 0!==t)return t.has(e.key).then(t=>{this.messenger.sendPacket({id:"registry:has_response",nonce:e.nonce,value:t})},t=>{this.sendError("registry:has_response",e.nonce,t)});this.sendErrorRaw("registry:has_response",e.nonce,"Unknown registry "+e.registryId)}async onRemove(e){let t=await this.parent.getRegistry(e.registryId);if(void 0===t)return void this.sendErrorRaw("registry:remove_response",e.nonce,"Unknown registry "+e.registryId);let r=e.ownerThread;if(r===this.remoteThreadId||this.remoteThreadId===P.HOST_THREAD_ID)if(t instanceof k)t.__forwardRemove(e.key,r).then(t=>{this.messenger.sendPacket({id:"registry:remove_response",nonce:e.nonce,value:t})},t=>{this.sendError("registry:remove_response",e.nonce,t)});else if(t instanceof b){let n=t.__localRemove(e.key,r);this.messenger.sendPacket({id:"registry:remove_response",nonce:e.nonce,value:n})}else this.sendErrorRaw("registry:remove_response",e.nonce,"Weird registry type: "+t.constructor.name);else this.sendErrorRaw("registry:remove_response",e.nonce,"Non-host threads cannot forward registry requests")}async onSize(e){let t=await this.parent.getRegistry(e.registryId);if(void 0!==t)return t.size().then(t=>{this.messenger.sendPacket({id:"registry:size_response",nonce:e.nonce,value:t})},t=>{this.sendError("registry:size_response",e.nonce,t)});this.sendErrorRaw("registry:size_response",e.nonce,"Unknown registry "+e.registryId)}async onGet(e){let t=await this.parent.getRegistry(e.registryId);if(void 0!==t)return t.get(e.key).then(t=>{this.messenger.sendPacket({id:"registry:get_response",nonce:e.nonce,value:this.serialize(t,{objectMode:"registry"})})},t=>{this.sendError("registry:get_response",e.nonce,t)});this.sendErrorRaw("registry:get_response",e.nonce,"Unknown registry "+e.registryId)}async onGetEntry(e){let t=await this.parent.getRegistry(e.registryId);if(void 0!==t)return t.getEntry(e.key).then(t=>{void 0!==t?this.messenger.sendPacket({id:"registry:get_entry_response",nonce:e.nonce,value:{key:this.serialize(t.key),ownerThread:t?.ownerThread,data:this.serialize(t.key,{objectMode:"registry"})}}):this.messenger.sendPacket({id:"registry:get_entry_response",nonce:e.nonce,value:null})},t=>{this.sendError("registry:get_entry_response",e.nonce,t)});this.sendErrorRaw("registry:get_entry_response",e.nonce,"Unknown registry "+e.registryId)}async onGetAllEntries(e){let t=await this.parent.getRegistry(e.registryId);if(void 0===t)return void this.sendErrorRaw("registry:get_all_entries_response",e.nonce,"Unknown registry "+e.registryId);let r=this.getRemote(),n=t.getAllEntries(),i=r.declareLocalAsyncIterator(n);this.messenger.sendPacket({id:"registry:get_all_entries_response",nonce:e.nonce,iteratorKey:i})}async onGetAllEntriesByThread(e){let t=await this.parent.getRegistry(e.registryId);if(void 0===t)return void this.sendErrorRaw("registry:get_all_entries_by_thread_response",e.nonce,"Unknown registry "+e.registryId);let r=this.getRemote(),n=t.getAllEntriesByThread(e.ownerThread),i=r.declareLocalAsyncIterator(n);this.messenger.sendPacket({id:"registry:get_all_entries_by_thread_response",nonce:e.nonce,iteratorKey:i})}async onGetAll(e){let t=await this.parent.getRegistry(e.registryId);if(void 0===t)return void this.sendErrorRaw("registry:get_all_response",e.nonce,"Unknown registry "+e.registryId);let r=this.getRemote(),n=t.getAll(),i=r.declareLocalAsyncIterator(n);this.messenger.sendPacket({id:"registry:get_all_response",nonce:e.nonce,iteratorKey:i})}async requestAdd(e,t,r,n){let i=await this.messenger.sendPacketWithNoncePromise("registry:add_request",{registryId:e,ownerThread:t??this.getCurrentThread(),key:r,value:this.serialize(n,{objectMode:"registry"})},"registry:add_response");if(i.error)throw this.deserialize(i.error);return i.value}async requestHas(e,t){let r=await this.messenger.sendPacketWithNoncePromise("registry:has_request",{registryId:e,key:t},"registry:has_response");if(r.error)throw this.deserialize(r.error);return r.value}async requestRemove(e,t,r){let n=await this.messenger.sendPacketWithNoncePromise("registry:remove_request",{registryId:e,ownerThread:t??this.getCurrentThread(),key:r},"registry:remove_response");if(n.error)throw this.deserialize(n.error);return n.value}async requestSize(e){let t=await this.messenger.sendPacketWithNoncePromise("registry:size_request",{registryId:e},"registry:size_response");if(t.error)throw this.deserialize(t.error);return t.value}async requestGet(e,t){let r=await this.messenger.sendPacketWithNoncePromise("registry:get_request",{registryId:e,key:t},"registry:get_response");if(r.error)throw this.deserialize(r.error);if(null!=r.value)return this.deserialize(r.value)}async requestGetEntry(e,t){let r=await this.messenger.sendPacketWithNoncePromise("registry:get_entry_request",{registryId:e,key:t},"registry:get_entry_response");if(r.error)throw this.deserialize(r.error);if(null!=r.value)return{key:this.deserialize(r.value.key),ownerThread:r.value.ownerThread,data:this.deserialize(r.value.data)}}requestGetAllEntries(t){let r=this.getRemote(),n=new e(r,async()=>{const e=await this.messenger.sendPacketWithNoncePromise("registry:get_all_entries_request",{registryId:t},"registry:get_all_entries_response");if(e.error)throw this.deserialize(e.error);let i=e.iteratorKey;return r.declareRemoteIterator(i,n),i});return n}requestGetAllEntriesByThread(t,r){let n=this.getRemote(),i=new e(n,async()=>{const e=await this.messenger.sendPacketWithNoncePromise("registry:get_all_entries_by_thread_request",{registryId:t,ownerThread:r},"registry:get_all_entries_by_thread_response");if(e.error)throw this.deserialize(e.error);let s=e.iteratorKey;return n.declareRemoteIterator(s,i),s});return i}requestGetAll(t){let r=this.getRemote(),n=new e(r,async()=>{const e=await this.messenger.sendPacketWithNoncePromise("registry:get_all_request",{registryId:t},"registry:get_all_response");if(e.error)throw this.deserialize(e.error);let i=e.iteratorKey;return r.declareRemoteIterator(i,n),i});return n}}class S{static META_REGISTRY_ID="rpack:registry";static PLUGIN_REGISTRY_ID="rpack:plugin";constructor(e){this.rpack=e,this.remotes=new Map,this.metaRegistry=this.__createInternalRegistry(S.META_REGISTRY_ID,{localsAreProxied:!1,allowShared:!0})}async createRegistry(e,t){let r=new b(this,e,p.withDefaultOptions(t));if(await this.metaRegistry.add(e,r))return r;throw new Error("Failed to create registry "+e)}getRPack(){return this.rpack}createRemote(e,t){let r=new R(this,e,t);return this.remotes.set(e,r),r}getRemote(e){return this.remotes.get(e)}getRegistry(e){return this.metaRegistry.get(e)}__createInternalRegistry(e,t){let r;return r=this.rpack.isPluginThread()?new k(this,P.HOST_THREAD_ID,e,p.withPublicDefaultOptions(t)):new b(this,e,p.withDefaultOptions(t)),this.rpack.getLoadPromise().then(()=>{this.metaRegistry.__localAdd(e,null,r)}),r}__deserializeRegistry(e,t,r){if(this.metaRegistry instanceof b||this.metaRegistry instanceof k){let n=this.metaRegistry.__localGet(e);if(void 0!==n)return n;let i=new k(this,t,e,r);return this.metaRegistry.__localAdd(e,t,i),i}throw new Error("Weird registry type: "+this.metaRegistry.constructor.name)}}(_||(_={})).isSubclass=function(e,t){return t.prototype.isPrototypeOf(e.prototype)};const I=_;class P{static HOST_THREAD_ID="host";constructor(e,t,r){this.rpack=e,this.wellKnownMap=new Map,this.wellKnownReverseMap=new Map,this.mapWellKnown("RPack",e),this.mapWellKnown("NetworkManager",e.getNetworkManager()),this.mapWellKnown("ProxyManager",e.getProxyManager()),this.mapWellKnown("RegistryManager",e.getRegistryManager()),this.plugin=null,this.pluginRegistry=e.getRegistryManager().__createInternalRegistry(S.PLUGIN_REGISTRY_ID,{}),this.threadId=t,void 0===r?this.threads=new Map:this.hostMessenger=r}mapWellKnown(e,t){this.wellKnownMap.set(t,{type:"well_known",kind:e}),this.wellKnownReverseMap.set(e,t)}async __initPlugin(e){if(null!==this.plugin)throw new Error("Cannot initialize a plugin twice");let t=await import(e);if(!("default"in t))throw new Error("Failed to import plugin "+e+": no default export");let r=t.default;if("function"!=typeof r)throw new Error("Failed to import plugin "+e+": default export is not a class");if(r.length>0)throw new Error("Failed to import plugin "+e+": default export's constructor expects arguments (should be empty)");if(!I.isSubclass(r,E))throw new Error("Failed to import plugin "+e+": default export is not a subclass of RPPlugin");this.plugin=new r,E.__setInstance(this.plugin,this.rpack),await this.plugin.onInit();let n=e.replace(/\.\/(\S+)\.js/g,"$1");await this.pluginRegistry.add(n,this.plugin),this.hostMessenger.addHandler("thread:shutdown_request",async e=>{await this.plugin.onShutdown(),this.hostMessenger.sendPacket({id:"thread:shutdown_response",nonce:e.nonce})})}getRPack(){return this.rpack}getHostMessenger(){return this.hostMessenger}getCurrentThreadId(){return this.threadId}getPlugin(e){return this.pluginRegistry.get(e)}getPluginRegistry(){return this.pluginRegistry}__initRemotes(e,t){this.rpack.getProxyManager().createRemote(e,x.cast(t)),this.rpack.getRegistryManager().createRemote(e,x.cast(t))}async __createThread(e){if(!this.threads)throw new Error("Cannot create a Worker from a Worker!");let t=a.generateNonce();for(;this.threads.has(t);)t=a.generateNonce();console.debug("Starting new thread "+t);let r=await this.rpack.getPlatform().createRPackThread(t,e);this.threads.set(t,r);let n=r.getMessenger(),i=null;for(let r=0;r<16;r++)try{console.debug("Waiting for thread "+t+" (attempt "+(r+1)+"/16, waiting "+Math.pow(2,r)+"ms)...");let s=a.generateNonce();n.sendPacket({id:"thread:hello_request",nonce:s,threadId:t,scriptUrl:e}),await n.addPromiseNonceHandler("thread:hello_response",s,Math.pow(2,r)),this.__initRemotes(t,x.cast(n)),console.debug("Thread "+t+" started"),i=s;break}catch{console.debug("Thread "+t+" timed out. Trying again...")}if(null===i)throw console.debug("Thread "+t+" failed to start, aborting"),await r.terminate(),this.threads.delete(t),new Error("Thread "+t+" failed to start");return await n.addPromiseNonceHandler("thread:plugin_load",i),console.debug("Plugin loaded in thread "+t),t}ensureJSONInner(e,t,r,n){if("string"==typeof t||"number"==typeof t||"boolean"==typeof t||null==t)return!0;if("object"==typeof t){if(Array.isArray(t)){for(let i=0;i<t.length;i++)if(!this.ensureJSONInner(e,t[i],r,n+"["+i+"]"))return!1;return!0}if(Object.getPrototypeOf(t)===Object.prototype){for(let i in t)if(!this.ensureJSONInner(e,t[i],r,n+"."+i))return!1;return!0}}if(r)throw new TypeError("Failed to validate object "+e+" as JSON: root"+n+" is not a JSON-like object");return!1}ensureJSON(e,t){return this.ensureJSONInner(e,e,t??!1)}getFunctionNames(e){if(v.isProxy(e))return v.getFunctions(e);let t=[],r=Object.getPrototypeOf(e);for(;void 0!==r&&r!==Object.prototype;)t.push(...Object.getOwnPropertyNames(r)),r=Object.getPrototypeOf(r);let n=t.indexOf("constructor");n>-1&&t.splice(n,1);for(let r=t.length-1;r>=0;r--)"function"!=typeof e[t[r]]&&t.splice(r,1);return t}serialize(e,t,r){if(void 0===t)return{type:"undefined"};if(!v.isProxy(t)&&("string"==typeof t||"number"==typeof t||"boolean"==typeof t||null==t||Object.getPrototypeOf(t)===Object.prototype&&this.ensureJSON(t,!1)))return{type:"json",value:t};if(t instanceof b||t instanceof k)return{type:"registry",registryId:t.getRegistryId(),options:t.getOptions()};if(t instanceof Error)return{type:"error",errorType:t.name,name:t.name,message:t.message,stack:t.stack};if("function"==typeof t)return{type:"function",functionKey:this.rpack.getProxyManager().getRemote(e).declareFunction(t)};if(this.wellKnownMap.has(t))return this.wellKnownMap.get(t);if(null===t)throw new Error("Null past the null checK?");if("registry"==r?.objectMode){let r=this.rpack.getProxyManager().getRemote(e).declareLocalObject(t),n={},i=this.getFunctionNames(t);for(let r of Object.keys(t))n[r]=this.serialize(e,t[r]);return{type:"registry_entry",objectKey:r,typeName:t.constructor.name,props:n,functions:i,iterable:Symbol.iterator in t||Symbol.asyncIterator in t}}{let r=this.rpack.getProxyManager().getRemote(e).declareLocalObject(t),n=Object.keys(t),i=this.getFunctionNames(t);return{type:"object",objectKey:r,typeName:t.constructor.name,props:n,functions:i,iterable:Symbol.iterator in t||Symbol.asyncIterator in t}}}deserialize(e,t){let r=this.rpack.getProxyManager().getRemote(e),n=t.type;switch(t.type){case"undefined":return;case"json":return t.value;case"registry":return this.rpack.getRegistryManager().__deserializeRegistry(t.registryId,e,t.options);case"registry_entry":return new Proxy({},v.fromRegistryEntry(r,t));case"object":return new Proxy({},v.fromObject(r,t));case"function":return(...e)=>r.requestRemoteFunction(t.functionKey,e);case"well_known":return this.wellKnownReverseMap.get(t.kind);case"error":let i;switch(t.errorType){case"Error":i=new Error;break;case"EvalError":i=new EvalError;break;case"RangeError":i=new RangeError;break;case"ReferenceError":i=new ReferenceError;break;case"SyntaxError":i=new SyntaxError;break;case"TypeError":i=new TypeError;break;case"URIError":i=new URIError}return i.name=t.name,i.message=t.message,i.stack=t.stack,i;default:throw new Error("Failed to deserialize unknown type: "+n)}}}class A{constructor(e){this.rpack=e,e.isPluginThread()||(this.sources=[],this.sources.push(new M(e,M.DEFAULT_PORT_RANGES,1)))}getRPack(){return this.rpack}}class z{constructor(e,t){this.threadId=e,this.messenger=t}getThreadId(){return this.threadId}getMessenger(){return this.messenger}}class C{constructor(e){this.id=e}}class O{constructor(){this.map=new Map,this.manifest=null}async getEntry(e){if(this.map.has(e))return this.map.get(e);let t=await this.resolveEntry(e);return this.map.set(e,t),t}async getPluginManifest(){if(null!==this.manifest)return this.manifest;let e=await this.getEntry("manifest.json"),t=JSON.parse((new TextDecoder).decode(await e.arrayBuffer()));return this.manifest=t,t}}class T{constructor(e,t,r){this.supplier=e,this.completeHandler=t,this.errorHandler=r,this.lastBatch=null,this.lastIndex=-1}[Symbol.asyncIterator](){return this}async next(){if(this.result)return this.result;null==this.lastBatch&&(this.lastBatch=await this.supplier(),this.lastIndex=0);let e=this.lastBatch.values[this.lastIndex];if(this.lastIndex++,this.lastIndex==this.lastBatch.values.length){let e=this.lastBatch;if(this.lastBatch=null,e.done)return this.result={done:!0,value:void 0},this.result}return{done:!1,value:e}}async return(e){return this.completeHandler&&await this.completeHandler(e),this.result={value:this.result,done:!0},this.result}async throw(e){return this.errorHandler&&await this.errorHandler(e),this.result={value:void 0,done:!0},this.result}}class N{constructor(e,t,r,n){this.rpackChannel="dev",this.rpackVersion="0.1.6-dev-0879fba",this.rpackRepository="https://github.com/rpack-dev/rpack-dev.git",this.implementationName=e,this.implementationChannel=t,this.implementationVersion=r,this.implementationRepository=n}getRPackChannel(){return this.rpackChannel}getRPackVersion(){return this.rpackVersion}getRPackRepository(){return this.rpackRepository}getImplementationName(){return this.implementationName}getImplementationChannel(){return this.implementationChannel}getImplementationVersion(){return this.implementationVersion}getImplementationRepository(){return this.implementationRepository}}class B{constructor(e,t,r){this.parent=e,this.port=t,this.manifest=r}init(){if(console.log("Found dev server on port "+this.port+" with manifest:",this.manifest),this.manifest.websocketRefresh){let e=new WebSocket("ws://localhost:"+this.port),t=new x(t=>{e.send(JSON.stringify(t))});e.onmessage=e=>{t.receivePacket(JSON.parse(e.data))},t.addHandler("hello_response",e=>{console.log("Connected to dev server's websocket on port "+this.port+" with manifest: ",this.manifest)}),t.addHandler("plugin_update",e=>{this.parent.reloadPlugin(e.groupId,e.pluginId)}),e.onclose=()=>{console.log("Disconnected from dev server's websocket on port "+this.port),this.remove()},e.onopen=()=>{t.sendPacket({id:"hello_request",rpackChannel:this.parent.getRPack().getVersion().getRPackChannel(),rpackVersion:this.parent.getRPack().getVersion().getRPackVersion(),implementationName:this.parent.getRPack().getVersion().getImplementationName(),implementationChannel:this.parent.getRPack().getVersion().getImplementationChannel(),implementationVersion:this.parent.getRPack().getVersion().getImplementationVersion()})},this.socket=e}}getAllPlugins(){return new T(async()=>({done:!0,values:await(await fetch("http://localhost:"+this.port+"/api/get_all_plugins")).json()}))}async getPlugin(e,t){try{return await(await fetch("http://localhost:"+this.port+"/plugin/"+e+"/"+t+"/manifest.json")).json()}catch{return null}}async getPluginArchive(e,t){return await(await fetch("http://localhost:"+this.port+"/plugin/"+e+"/"+t+"/plugin.zip")).arrayBuffer()}remove(){this.socket?.close()}}var j=r(710),L=r.n(j);class D extends O{constructor(e){super(),this.zip=e}async resolveEntry(e){let t=this.zip.file(e);return null===t?null:await t.async("blob")}async getEntries(){return Object.keys(this.zip.files)}}class M{static RATE_MULTIPLIER=6e4;static DEFAULT_PORT_RANGES=[[14287,14296]];constructor(e,t,r){this.rpack=e,this.portRanges=t,this.lastFoundPorts=[],this.servers=new Map,this.autoScanRate=r*M.RATE_MULTIPLIER,this.autoScanPromise=null,this.autoScanTimeout=r>0?setTimeout(()=>this.performScan(),100):null}async performScan(){if(this.autoScanPromise)return null;clearTimeout(this.autoScanTimeout),this.autoScanTimeout=null,this.autoScanPromise=this.scanPorts();let e=await this.autoScanPromise,t=s.diff(this.lastFoundPorts,e,(e,t)=>e.port===t.port);this.lastFoundPorts=e;for(let e of t.added){let t=new B(this,e.port,e.manifest);this.servers.set(e.port,t),t.init()}this.autoScanPromise=null,this.autoScanRate>0&&(this.autoScanTimeout=setTimeout(()=>this.performScan(),this.autoScanRate))}async scanPorts(){let e=[],t=[];for(let[r,n]of this.portRanges)for(let i=r;i<=n;i++)e.includes(i)||(e.push(i),t.push(fetch("http://localhost:"+i+"/rpack_dev_server").then(e=>e.json()).then(e=>e.rpackDevServer?{port:i,manifest:e}:null,()=>null)));return(await Promise.all(t)).filter(e=>null!==e)}getRPack(){return this.rpack}getSourceId(){throw new Error("Method not implemented.")}remove(){for(let e of this.servers.values())e.remove()}setAutoScanRate(e){this.autoScanRate=e*M.RATE_MULTIPLIER,null!==this.autoScanTimeout&&clearTimeout(this.autoScanTimeout),this.autoScanRate>0&&(this.autoScanTimeout=setTimeout(()=>this.performScan(),this.autoScanRate))}async reloadPlugin(e,t){if(null!==await this.rpack.getPlugin(t))return;let r=await this.getPluginArchive(e,t,"unused"),n=await r.getPluginManifest(),i=await r.getEntry(n.mainClass);if(null===i)throw new Error("Plugin "+e+":"+t+" has no main class in archive!");let s=URL.createObjectURL(i);await this.rpack.getNetworkManager().__createThread(s)}async*getAllPlugins(){for(let e of this.servers.values())yield*e.getAllPlugins()}async getPlugin(e,t,r){for(let r of this.servers.values()){let n=await r.getPlugin(e,t);if(null!==n)return n}return null}async getPluginArchive(e,t,r){for(let r of this.servers.values()){let n=await r.getPluginArchive(e,t);if(null==n)continue;let i=await L().loadAsync(n);return new D(i)}throw new Error("Plugin not found")}}class F{static platform=null;static platformLoadPromise=new i;static initPlatform(e){if(null!==this.platform)throw new Error("Platform already initialized");this.platform=e,this.platformLoadPromise.resolve(e)}static async createInstance(e){if(e&&void 0!==this.instance)return this.instance;let t=await this.platformLoadPromise.getPromise(),r=await t.createRPackInstance(e=>new F(e));return e&&(this.instance=r),r}static getInstance(){return this.instance}constructor(e){this.pluginThread=e.pluginThread,this.loadPromise=e.loadPromise,this.platform=e.platform,this.version=e.version,this.proxyManager=new l(this),this.registryManager=new S(this),this.pluginManager=new A(this),this.networkManager=new P(this,e.threadId,e.hostMessenger)}getLoadPromise(){return this.loadPromise}getPlatform(){return this.platform}getVersion(){return this.version}getProxyManager(){return this.proxyManager}getRegistryManager(){return this.registryManager}getPluginManager(){return this.pluginManager}getNetworkManager(){return this.networkManager}isPluginThread(){return this.pluginThread}getPlugin(e){return this.getNetworkManager().getPlugin(e)}}})(),n})());
@@ -66,7 +66,7 @@ export declare abstract class RPPlatform {
66
66
  private readonly id;
67
67
  protected constructor(id: string);
68
68
  abstract createRPackInstance(constructor: (options: RPackConstructorOptions) => RPack): Promise<RPack>;
69
- abstract createPluginThread(threadId: string, pluginId: string): Promise<RPackThread>;
69
+ abstract createRPackThread(threadId: string, pluginId: string): Promise<RPackThread>;
70
70
  }
71
71
  export declare abstract class RPackThread {
72
72
  private readonly threadId;
@@ -103,6 +103,7 @@ export declare class DevPluginServerClient {
103
103
  remove(): void;
104
104
  }
105
105
  export declare class DevPluginSource implements PluginSource {
106
+ private static readonly RATE_MULTIPLIER;
106
107
  static DEFAULT_PORT_RANGES: [
107
108
  number,
108
109
  number
@@ -123,7 +124,8 @@ export declare class DevPluginSource implements PluginSource {
123
124
  getRPack(): RPack;
124
125
  getSourceId(): string;
125
126
  remove(): void;
126
- reloadPlugin(groupId: string, pluginId: string): void;
127
+ setAutoScanRate(rate: number): void;
128
+ reloadPlugin(groupId: string, pluginId: string): Promise<void>;
127
129
  getAllPlugins(): AsyncIterableIterator<PluginManifest>;
128
130
  getPlugin(groupId: string, pluginId: string, version?: string): Promise<PluginManifest | null>;
129
131
  getPluginArchive(groupId: string, pluginId: string, version: string): Promise<PluginArchive>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rpack-dev/core",
3
- "version": "0.1.5",
3
+ "version": "0.1.6-dev-0879fba",
4
4
  "description": "",
5
5
  "license": "LGPL-3.0-or-later",
6
6
  "repository": {