@rpack-dev/core 0.2.0-canary.2 → 0.2.0-canary.4
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.
- package/dist/docs.json +14760 -13141
- package/dist/rpack-core-esm.bundle.js +1 -1
- package/dist/rpack-core-umd.bundle.js +1 -1
- package/dist/rpack-core.d.ts +85 -33
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/*! For license information please see rpack-core-esm.bundle.js.LICENSE.txt */
|
|
2
|
-
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){var n=e("./utils"),i=e("./support"),s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";r.encode=function(e){for(var t,r,i,a,o,h,l,c=[],u=0,d=e.length,f=d,p="string"!==n.getTypeOf(e);u<e.length;)f=d-u,i=p?(t=e[u++],r=u<d?e[u++]:0,u<d?e[u++]:0):(t=e.charCodeAt(u++),r=u<d?e.charCodeAt(u++):0,u<d?e.charCodeAt(u++):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,c.push(s.charAt(a)+s.charAt(o)+s.charAt(h)+s.charAt(l));return c.join("")},r.decode=function(e){var t,r,n,a,o,h,l=0,c=0,u="data:";if(e.substr(0,5)===u)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[c++]=t,64!==o&&(d[c++]=r),64!==h&&(d[c++]=n);return d}},{"./support":30,"./utils":32}],2:[function(e,t,r){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){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){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){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){var n;n="undefined"!=typeof Promise?Promise:e("lie"),t.exports={Promise:n}},{lie:37}],7:[function(e,t,r){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){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,c){var u,d,f=e.file,p=e.compression,m=c!==o.utf8encode,g=s.transformTo("string",c(f.name)),y=s.transformTo("string",o.utf8encode(f.name)),_=f.comment,w=s.transformTo("string",c(_)),v=s.transformTo("string",o.utf8encode(_)),b=y.length!==f.name.length,k=v.length!==_.length,E="",x="",R="",S=f.dir,P=f.date,I={crc32:0,compressedSize:0,uncompressedSize:0};t&&!r||(I.crc32=e.crc32,I.compressedSize=e.compressedSize,I.uncompressedSize=e.uncompressedSize);var T=0;t&&(T|=8),m||!b&&!k||(T|=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)),u=P.getUTCHours(),u<<=6,u|=P.getUTCMinutes(),u<<=5,u|=P.getUTCSeconds()/2,d=P.getUTCFullYear()-1980,d<<=4,d|=P.getUTCMonth()+1,d<<=5,d|=P.getUTCDate(),b&&(x=n(1,1)+n(h(g),4)+y,E+="up"+n(x.length,2)+x),k&&(R=n(1,1)+n(h(w),4)+v,E+="uc"+n(R.length,2)+R);var z="";return z+="\n\0",z+=n(T,2),z+=p.magic,z+=n(u,2),z+=n(d,2),z+=n(I.crc32,4),z+=n(I.compressedSize,4),z+=n(I.uncompressedSize,4),z+=n(g.length,2),z+=n(E.length,2),{fileRecord:l.LOCAL_FILE_HEADER+z+g+E,dirRecord:l.CENTRAL_FILE_HEADER+n(C,2)+z+n(w.length,2)+"\0\0\0\0"+n(A,4)+n(i,4)+g+E+w}}var s=e("../utils"),a=e("../stream/GenericWorker"),o=e("../utf8"),h=e("../crc32"),l=e("../signature");function c(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(c,a),c.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}}))},c.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},c.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},c.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}})},c.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},c.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},c.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))},c.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},c.prototype.lock=function(){a.prototype.lock.call(this);for(var e=this._sources,t=0;t<e.length;t++)e[t].lock()},t.exports=c},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(e,t,r){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){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){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){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){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){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){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=m(e)),o.createFolders&&(n=p(e))&&g.call(this,n,!0);var u="string"===i&&!1===o.binary&&!1===o.base64;r&&void 0!==r.binary||(o.binary=!u),(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 y;y=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 _=new c(e,y,o);this.files[e]=_}var i=e("./utf8"),s=e("./utils"),a=e("./stream/GenericWorker"),o=e("./stream/StreamHelper"),h=e("./defaults"),l=e("./compressedObject"),c=e("./zipObject"),u=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):""},m=function(e){return"/"!==e.slice(-1)&&(e+="/"),e},g=function(e,t){return t=void 0!==t?t:h.createFolders,e=m(e),this.files[e]||n.call(this,e,null,{dir:!0,createFolders:t}),this.files[e]};function y(e){return"[object RegExp]"===Object.prototype.toString.call(e)}var _={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(y(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(y(e))return this.filter(function(t,r){return r.dir&&e.test(t)});var t=this.root+e,r=g.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=u.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=_},{"./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){t.exports=e("stream")},{stream:void 0}],17:[function(e,t,r){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){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){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){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){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){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){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){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){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){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){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){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){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 c(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)}}c.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=c},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(e,t,r){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){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 c(){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(c,a),c.prototype.processChunk=function(e){this.push({data:r.utf8encode(e.data),meta:e.meta})},r.Utf8EncodeWorker=c},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,r){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 c(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 u(e,t){for(var r=0;r<e.length;r++)t[r]=e[r];return t}r.applyFromCharCode=c;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:c,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 c(new Uint8Array(e))},array:function(e){return u(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:c,array:function(e){return u(e,new Array(e.length))},arraybuffer:function(e){return e.buffer},uint8array:o,nodebuffer:function(e){return s.newBufferFrom(e)}},d.nodebuffer={string:c,array:function(e){return u(e,new Array(e.length))},arraybuffer:function(e){return d.nodebuffer.uint8array(e).buffer},uint8array:function(e){return u(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 c=r.getTypeOf(t);return c?("arraybuffer"===c?t=r.transformTo("uint8array",t):"string"===c&&(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){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){var n=e("./reader/readerFor"),i=e("./utils"),s=e("./compressedObject"),a=e("./crc32"),o=e("./utf8"),h=e("./compressions"),l=e("./support");function c(e,t){this.options=e,this.loadOptions=t}c.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=c},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(e,t,r){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"],c=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},u=0;u<l.length;u++)n.prototype[l[u]]=c;t.exports=n},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(e,t,n){(function(e){var r,n,i=e.MutationObserver||e.WebKitMutationObserver;if(i){var s=0,a=new i(c),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(){c(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(c,0)};else{var h=new e.MessageChannel;h.port1.onmessage=c,r=function(){h.port2.postMessage(0)}}var l=[];function c(){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){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 c(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 u(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?u(r,this.state===o?e:t,this.outcome):this.queue.push(new c(r,e,t)),r},c.prototype.callFulfilled=function(e){s.resolve(this.promise,e)},c.prototype.otherCallFulfilled=function(e){u(this.promise,this.onFulfilled,e)},c.prototype.callRejected=function(e){s.reject(this.promise,e)},c.prototype.otherCallRejected=function(e){u(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;)c(e[h],h);return l;function c(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){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){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 c;if(c="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,c)))throw new Error(a[r]);this._dict_set=!0}}function c(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=c,r.deflateRaw=function(e,t){return(t=t||{}).raw=!0,c(e,t)},r.gzip=function(e,t){return(t=t||{}).gzip=!0,c(e,t)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(e,t,r){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"),c=Object.prototype.toString;function u(e){if(!(this instanceof u))return new u(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 u(t);if(r.push(e,!0),r.err)throw r.msg||o[r.err];return r.result}u.prototype.push=function(e,t){var r,o,h,l,u,d,f=this.strm,p=this.options.chunkSize,m=this.options.dictionary,g=!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]"===c.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&&m&&(d="string"==typeof m?s.string2buf(m):"[object ArrayBuffer]"===c.call(m)?new Uint8Array(m):m,r=n.inflateSetDictionary(this.strm,d)),r===a.Z_BUF_ERROR&&!0===g&&(r=a.Z_OK,g=!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,u=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(u)):this.onData(i.shrinkBuf(f.output,f.next_out)))),0===f.avail_in&&0===f.avail_out&&(g=!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))},u.prototype.onData=function(e){this.chunks.push(e)},u.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=u,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){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){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){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){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){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){var n,i=e("../utils/common"),s=e("./trees"),a=e("./adler32"),o=e("./crc32"),h=e("./messages"),l=-2,c=258,u=262,d=113;function f(e,t){return e.msg=h[t],t}function p(e){return(e<<1)-(4<e?9:0)}function m(e){for(var t=e.length;0<=--t;)e[t]=0}function g(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 y(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,g(e.strm)}function _(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-u?e.strstart-(e.w_size-u):0,l=e.window,d=e.w_mask,f=e.prev,p=e.strstart+c,m=l[s+a-1],g=l[s+a];e.prev_length>=e.good_match&&(i>>=2),o>e.lookahead&&(o=e.lookahead);do{if(l[(r=t)+a]===g&&l[r+a-1]===m&&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=c-(p-s),s=p-c,a<n){if(e.match_start=t,o<=(a=n))break;m=l[s+a-1],g=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,c,d,f,p,m=e.w_size;do{if(s=e.window_size-e.lookahead-e.strstart,e.strstart>=m+(m-u)){for(i.arraySet(e.window,e.window,m,m,0),e.match_start-=m,e.strstart-=m,e.block_start-=m,t=r=e.hash_size;n=e.head[--t],e.head[t]=m<=n?n-m:0,--r;);for(t=r=m;n=e.prev[--t],e.prev[t]=m<=n?n-m:0,--r;);s+=m}if(0===e.strm.avail_in)break;if(l=e.strm,c=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(c,l.input,l.next_in,p,d),1===l.state.wrap?l.adler=a(l.adler,c,p,d):2===l.state.wrap&&(l.adler=o(l.adler,c,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<u&&0!==e.strm.avail_in)}function k(e,t){for(var r,n;;){if(e.lookahead<u){if(b(e),e.lookahead<u&&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-u&&(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&&(y(e,!1),0===e.strm.avail_out))return 1}return e.insert=e.strstart<2?e.strstart:2,4===t?(y(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(y(e,!1),0===e.strm.avail_out)?1:2}function E(e,t){for(var r,n,i;;){if(e.lookahead<u){if(b(e),e.lookahead<u&&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-u&&(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&&(y(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]))&&y(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?(y(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(y(e,!1),0===e.strm.avail_out)?1:2}function x(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),m(this.dyn_ltree),m(this.dyn_dtree),m(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),m(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(573),m(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 P(e){var t=S(e);return 0===t&&function(e){e.window_size=2*e.w_size,m(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 I(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,P(e)}n=[new x(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,y(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-u&&(y(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(y(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(y(e,!1),e.strm.avail_out),1)}),new x(4,4,8,4,k),new x(4,5,16,8,k),new x(4,6,32,32,k),new x(4,4,16,16,E),new x(8,16,32,32,E),new x(8,16,128,128,E),new x(8,32,128,256,E),new x(32,128,258,1024,E),new x(32,258,258,4096,E)],r.deflateInit=function(e,t){return I(e,t,8,15,8,0)},r.deflateInit2=I,r.deflateReset=P,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,_(i,31),_(i,139),_(i,8),i.gzhead?(_(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)),_(i,255&i.gzhead.time),_(i,i.gzhead.time>>8&255),_(i,i.gzhead.time>>16&255),_(i,i.gzhead.time>>24&255),_(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),_(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(_(i,255&i.gzhead.extra.length),_(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):(_(i,0),_(i,0),_(i,0),_(i,0),_(i,0),_(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),_(i,3),i.status=d);else{var u=8+(i.w_bits-8<<4)<<8;u|=(2<=i.strategy||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(u|=32),u+=31-u%31,i.status=d,w(i,u),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)),g(e),a=i.pending,i.pending!==i.pending_buf_size));)_(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)),g(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,_(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)),g(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,_(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&&g(e),i.pending+2<=i.pending_buf_size&&(_(i,255&e.adler),_(i,e.adler>>8&255),e.adler=0,i.status=d)):i.status=d),0!==i.pending){if(g(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&&(y(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(y(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(y(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<=c){if(b(e),e.lookahead<=c&&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+c;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=c-(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&&(y(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(y(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(y(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&&(m(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),g(e),0===e.avail_out))return i.last_flush=-1,0}return 4!==t?0:i.wrap<=0?1:(2===i.wrap?(_(i,255&e.adler),_(i,e.adler>>8&255),_(i,e.adler>>16&255),_(i,e.adler>>24&255),_(i,255&e.total_in),_(i,e.total_in>>8&255),_(i,e.total_in>>16&255),_(i,e.total_in>>24&255)):(w(i,e.adler>>>16),w(i,65535&e.adler)),g(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,c,u,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&&(m(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,c=e.next_in,u=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=c,e.input=u,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){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){t.exports=function(e,t){var r,n,i,s,a,o,h,l,c,u,d,f,p,m,g,y,_,w,v,b,k,E,x,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,c=r.whave,u=r.wnext,d=r.window,f=r.hold,p=r.bits,m=r.lencode,g=r.distcode,y=(1<<r.lenbits)-1,_=(1<<r.distbits)-1;e:do{p<15&&(f+=R[n++]<<p,p+=8,f+=R[n++]<<p,p+=8),w=m[f&y];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=m[(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=g[f&_];r:for(;;){if(f>>>=v=w>>>24,p-=v,!(16&(v=w>>>16&255))){if(!(64&v)){w=g[(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(c<(v=k-v)&&r.sane){e.msg="invalid distance too far back",r.mode=30;break e}if(x=d,(E=0)===u){if(E+=l-v,v<b){for(b-=v;S[s++]=d[E++],--v;);E=s-k,x=S}}else if(u<v){if(E+=l+u-v,(v-=u)<b){for(b-=v;S[s++]=d[E++],--v;);if(E=0,u<b){for(b-=v=u;S[s++]=d[E++],--v;);E=s-k,x=S}}}else if(E+=u-v,v<b){for(b-=v;S[s++]=d[E++],--v;);E=s-k,x=S}for(;2<b;)S[s++]=x[E++],S[s++]=x[E++],S[s++]=x[E++],b-=3;b&&(S[s++]=x[E++],1<b&&(S[s++]=x[E++]))}else{for(E=s-k;S[s++]=S[E++],S[s++]=S[E++],S[s++]=S[E++],2<(b-=3););b&&(S[s++]=S[E++],1<b&&(S[s++]=S[E++]))}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){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 c(){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 u(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,u(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 c,(e.state=n).window=null,0!==(r=f(e,t))&&(e.state=null),r):h}var m,g,y=!0;function _(e){if(y){var t;for(m=new n.Buf32(512),g=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,m,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;o(2,e.lens,0,32,g,0,e.work,{bits:5}),y=!1}e.lencode=m,e.lenbits=9,e.distcode=g,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=u,r.inflateInit=function(e){return p(e,15)},r.inflateInit2=p,r.inflate=function(e,t){var r,c,u,d,f,p,m,g,y,v,b,k,E,x,R,S,P,I,T,A,C,z,O,N,M=0,L=new n.Buf8(4),F=[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,u=e.output,m=e.avail_out,d=e.next_in,c=e.input,p=e.avail_in,g=r.hold,y=r.bits,v=p,b=m,z=0;e:for(;;)switch(r.mode){case 1:if(0===r.wrap){r.mode=13;break}for(;y<16;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(2&r.wrap&&35615===g){L[r.check=0]=255&g,L[1]=g>>>8&255,r.check=s(r.check,L,2,0),y=g=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&g)<<8)+(g>>8))%31){e.msg="incorrect header check",r.mode=30;break}if(8!=(15&g)){e.msg="unknown compression method",r.mode=30;break}if(y-=4,C=8+(15&(g>>>=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&g?10:12,y=g=0;break;case 2:for(;y<16;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(r.flags=g,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=g>>8&1),512&r.flags&&(L[0]=255&g,L[1]=g>>>8&255,r.check=s(r.check,L,2,0)),y=g=0,r.mode=3;case 3:for(;y<32;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}r.head&&(r.head.time=g),512&r.flags&&(L[0]=255&g,L[1]=g>>>8&255,L[2]=g>>>16&255,L[3]=g>>>24&255,r.check=s(r.check,L,4,0)),y=g=0,r.mode=4;case 4:for(;y<16;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}r.head&&(r.head.xflags=255&g,r.head.os=g>>8),512&r.flags&&(L[0]=255&g,L[1]=g>>>8&255,r.check=s(r.check,L,2,0)),y=g=0,r.mode=5;case 5:if(1024&r.flags){for(;y<16;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}r.length=g,r.head&&(r.head.extra_len=g),512&r.flags&&(L[0]=255&g,L[1]=g>>>8&255,r.check=s(r.check,L,2,0)),y=g=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,c,d,k,C)),512&r.flags&&(r.check=s(r.check,c,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=c[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,c,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=c[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,c,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(;y<16;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(g!==(65535&r.check)){e.msg="header crc mismatch",r.mode=30;break}y=g=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(;y<32;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}e.adler=r.check=l(g),y=g=0,r.mode=11;case 11:if(0===r.havedict)return e.next_out=f,e.avail_out=m,e.next_in=d,e.avail_in=p,r.hold=g,r.bits=y,2;e.adler=r.check=1,r.mode=12;case 12:if(5===t||6===t)break e;case 13:if(r.last){g>>>=7&y,y-=7&y,r.mode=27;break}for(;y<3;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}switch(r.last=1&g,y-=1,3&(g>>>=1)){case 0:r.mode=14;break;case 1:if(_(r),r.mode=20,6!==t)break;g>>>=2,y-=2;break e;case 2:r.mode=17;break;case 3:e.msg="invalid block type",r.mode=30}g>>>=2,y-=2;break;case 14:for(g>>>=7&y,y-=7&y;y<32;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if((65535&g)!=(g>>>16^65535)){e.msg="invalid stored block lengths",r.mode=30;break}if(r.length=65535&g,y=g=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(k=r.length){if(p<k&&(k=p),m<k&&(k=m),0===k)break e;n.arraySet(u,c,d,k,f),p-=k,d+=k,m-=k,f+=k,r.length-=k;break}r.mode=12;break;case 17:for(;y<14;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(r.nlen=257+(31&g),g>>>=5,y-=5,r.ndist=1+(31&g),g>>>=5,y-=5,r.ncode=4+(15&g),g>>>=4,y-=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(;y<3;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}r.lens[F[r.have++]]=7&g,g>>>=3,y-=3}for(;r.have<19;)r.lens[F[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,O={bits:r.lenbits},z=o(0,r.lens,0,19,r.lencode,0,r.work,O),r.lenbits=O.bits,z){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=(M=r.lencode[g&(1<<r.lenbits)-1])>>>16&255,P=65535&M,!((R=M>>>24)<=y);){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(P<16)g>>>=R,y-=R,r.lens[r.have++]=P;else{if(16===P){for(N=R+2;y<N;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(g>>>=R,y-=R,0===r.have){e.msg="invalid bit length repeat",r.mode=30;break}C=r.lens[r.have-1],k=3+(3&g),g>>>=2,y-=2}else if(17===P){for(N=R+3;y<N;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}y-=R,C=0,k=3+(7&(g>>>=R)),g>>>=3,y-=3}else{for(N=R+7;y<N;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}y-=R,C=0,k=11+(127&(g>>>=R)),g>>>=7,y-=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,O={bits:r.lenbits},z=o(1,r.lens,0,r.nlen,r.lencode,0,r.work,O),r.lenbits=O.bits,z){e.msg="invalid literal/lengths set",r.mode=30;break}if(r.distbits=6,r.distcode=r.distdyn,O={bits:r.distbits},z=o(2,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,O),r.distbits=O.bits,z){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<=m){e.next_out=f,e.avail_out=m,e.next_in=d,e.avail_in=p,r.hold=g,r.bits=y,a(e,b),f=e.next_out,u=e.output,m=e.avail_out,d=e.next_in,c=e.input,p=e.avail_in,g=r.hold,y=r.bits,12===r.mode&&(r.back=-1);break}for(r.back=0;S=(M=r.lencode[g&(1<<r.lenbits)-1])>>>16&255,P=65535&M,!((R=M>>>24)<=y);){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(S&&!(240&S)){for(I=R,T=S,A=P;S=(M=r.lencode[A+((g&(1<<I+T)-1)>>I)])>>>16&255,P=65535&M,!(I+(R=M>>>24)<=y);){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}g>>>=I,y-=I,r.back+=I}if(g>>>=R,y-=R,r.back+=R,r.length=P,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;y<N;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}r.length+=g&(1<<r.extra)-1,g>>>=r.extra,y-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;S=(M=r.distcode[g&(1<<r.distbits)-1])>>>16&255,P=65535&M,!((R=M>>>24)<=y);){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(!(240&S)){for(I=R,T=S,A=P;S=(M=r.distcode[A+((g&(1<<I+T)-1)>>I)])>>>16&255,P=65535&M,!(I+(R=M>>>24)<=y);){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}g>>>=I,y-=I,r.back+=I}if(g>>>=R,y-=R,r.back+=R,64&S){e.msg="invalid distance code",r.mode=30;break}r.offset=P,r.extra=15&S,r.mode=24;case 24:if(r.extra){for(N=r.extra;y<N;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}r.offset+=g&(1<<r.extra)-1,g>>>=r.extra,y-=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===m)break e;if(k=b-m,r.offset>k){if((k=r.offset-k)>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=30;break}E=k>r.wnext?(k-=r.wnext,r.wsize-k):r.wnext-k,k>r.length&&(k=r.length),x=r.window}else x=u,E=f-r.offset,k=r.length;for(m<k&&(k=m),m-=k,r.length-=k;u[f++]=x[E++],--k;);0===r.length&&(r.mode=21);break;case 26:if(0===m)break e;u[f++]=r.length,m--,r.mode=21;break;case 27:if(r.wrap){for(;y<32;){if(0===p)break e;p--,g|=c[d++]<<y,y+=8}if(b-=m,e.total_out+=b,r.total+=b,b&&(e.adler=r.check=r.flags?s(r.check,u,b,f-b):i(r.check,u,b,f-b)),b=m,(r.flags?g:l(g))!==r.check){e.msg="incorrect data check",r.mode=30;break}y=g=0}r.mode=28;case 28:if(r.wrap&&r.flags){for(;y<32;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(g!==(4294967295&r.total)){e.msg="incorrect length check",r.mode=30;break}y=g=0}r.mode=29;case 29:z=1;break e;case 30:z=-3;break e;case 31:return-4;default:return h}return e.next_out=f,e.avail_out=m,e.next_in=d,e.avail_in=p,r.hold=g,r.bits=y,(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,u,b,e.next_out-b):i(r.check,u,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===z&&(z=-5),z)},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){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,c,u,d){var f,p,m,g,y,_,w,v,b,k=d.bits,E=0,x=0,R=0,S=0,P=0,I=0,T=0,A=0,C=0,z=0,O=null,N=0,M=new n.Buf16(16),L=new n.Buf16(16),F=null,B=0;for(E=0;E<=15;E++)M[E]=0;for(x=0;x<h;x++)M[t[r+x]]++;for(P=k,S=15;1<=S&&0===M[S];S--);if(S<P&&(P=S),0===S)return l[c++]=20971520,l[c++]=20971520,d.bits=1,0;for(R=1;R<S&&0===M[R];R++);for(P<R&&(P=R),E=A=1;E<=15;E++)if(A<<=1,(A-=M[E])<0)return-1;if(0<A&&(0===e||1!==S))return-1;for(L[1]=0,E=1;E<15;E++)L[E+1]=L[E]+M[E];for(x=0;x<h;x++)0!==t[r+x]&&(u[L[t[r+x]]++]=x);if(_=0===e?(O=F=u,19):1===e?(O=i,N-=257,F=s,B-=257,256):(O=a,F=o,-1),E=R,y=c,T=x=z=0,m=-1,g=(C=1<<(I=P))-1,1===e&&852<C||2===e&&592<C)return 1;for(;;){for(w=E-T,b=u[x]<_?(v=0,u[x]):u[x]>_?(v=F[B+u[x]],O[N+u[x]]):(v=96,0),f=1<<E-T,R=p=1<<I;l[y+(z>>T)+(p-=f)]=w<<24|v<<16|b,0!==p;);for(f=1<<E-1;z&f;)f>>=1;if(0!==f?(z&=f-1,z+=f):z=0,x++,0==--M[E]){if(E===S)break;E=t[r+u[x]]}if(P<E&&(z&g)!==m){for(0===T&&(T=P),y+=R,A=1<<(I=E-T);I+T<S&&!((A-=M[I+T])<=0);)I++,A<<=1;if(C+=1<<I,1===e&&852<C||2===e&&592<C)return 1;l[m=z&g]=P<<24|I<<16|y-c}}return 0!==z&&(l[y+z]=E-T<<24|64<<16),d.bits=P,0}},{"../utils/common":41}],51:[function(e,t,r){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){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],c=[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],u=[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 m=new Array(512);i(m);var g=new Array(256);i(g);var y=new Array(29);i(y);var _,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 E(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function x(e){return e<256?m[e]:m[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 P(e,t,r){S(e,r[2*t],r[2*t+1])}function I(e,t){for(var r=0;r|=1&e,e>>>=1,r<<=1,0<--t;);return r>>>1}function T(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]=I(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 z(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 O(e,t,r){for(var n=e.heap[r],i=r<<1;i<=e.heap_len&&(i<e.heap_len&&z(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!z(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?P(e,i,t):(P(e,(a=g[i])+s+1,t),0!==(o=l[a])&&S(e,i-=y[a],o),P(e,a=x(--n),r),0!==(o=c[a])&&S(e,n-=b[a],o)),h<e.last_lit;);P(e,256,t)}function M(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,c=-1;for(e.heap_len=0,e.heap_max=573,r=0;r<l;r++)0!==s[2*r]?(e.heap[++e.heap_len]=c=r,e.depth[r]=0):s[2*r+1]=0;for(;e.heap_len<2;)s[2*(i=e.heap[++e.heap_len]=c<2?++c:0)]=1,e.depth[i]=0,e.opt_len--,o&&(e.static_len-=a[2*i+1]);for(t.max_code=c,r=e.heap_len>>1;1<=r;r--)O(e,s,r);for(i=l;r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],O(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++,O(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,c=t.max_code,u=t.stat_desc.static_tree,d=t.stat_desc.has_stree,f=t.stat_desc.extra_bits,p=t.stat_desc.extra_base,m=t.stat_desc.max_length,g=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++)m<(s=l[2*l[2*(n=e.heap[r])+1]+1]+1)&&(s=m,g++),l[2*n+1]=s,c<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*(u[2*n+1]+a)));if(0!==g){do{for(s=m-1;0===e.bl_count[s];)s--;e.bl_count[s]--,e.bl_count[s+1]+=2,e.bl_count[m]--,g-=2}while(0<g);for(s=m;0!==s;s--)for(n=e.bl_count[s];0!==n;)c<(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),T(s,c,e.bl_count)}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),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 F(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(;P(e,i,e.bl_tree),0!=--o;);else 0!==i?(i!==s&&(P(e,i,e.bl_tree),o--),P(e,16,e.bl_tree),S(e,o-3,2)):o<=10?(P(e,17,e.bl_tree),S(e,o-3,3)):(P(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 B=!1;function j(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){B||(function(){var e,t,r,n,i,s=new Array(16);for(n=r=0;n<28;n++)for(y[n]=r,e=0;e<1<<l[n];e++)g[r++]=n;for(g[r-1]=n,n=i=0;n<16;n++)for(b[n]=i,e=0;e<1<<c[n];e++)m[i++]=n;for(i>>=7;n<o;n++)for(b[n]=i<<7,e=0;e<1<<c[n]-7;e++)m[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(T(f,287,s),e=0;e<o;e++)p[2*e+1]=5,p[2*e]=I(e,5);_=new k(f,l,257,a,h),w=new k(p,c,0,o,h),v=new k(new Array(0),u,0,19,7)}(),B=!0),e.l_desc=new E(e.dyn_ltree,_),e.d_desc=new E(e.dyn_dtree,w),e.bl_desc=new E(e.bl_tree,v),e.bi_buf=0,e.bi_valid=0,A(e)},r._tr_stored_block=j,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)),M(e,e.l_desc),M(e,e.d_desc),o=function(e){var t;for(L(e,e.dyn_ltree,e.l_desc.max_code),L(e,e.dyn_dtree,e.d_desc.max_code),M(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?j(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);F(e,e.dyn_ltree,t-1),F(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*(g[r]+s+1)]++,e.dyn_dtree[2*x(t)]++),e.last_lit===e.lit_bufsize-1},r._tr_align=function(e){S(e,2,3),P(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){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){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(){u(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){u(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(){u(e),t.onreadystatechange=null,r.removeChild(t),t=null},r.appendChild(t)}):function(e){setTimeout(u,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=c}function c(e){delete a[e]}function u(e){if(o)setTimeout(u,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{c(e),o=!1}}}}function d(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(i)&&u(+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})},r.r({});class n{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 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{constructor(){}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 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 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 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)]]}static withDefaults(e,t){let r={...t};for(let n in t)n in e&&(r[n]=e[n]);return r}}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){this.it=e,this.disposed=!1}async next(...e){return this.disposed?{value:void 0,done:!0}:await this.it.next(...e)}async return(e){return this.disposed=!0,"function"==typeof this.it.return?await this.it.return(e):{value:e,done:!0}}async throw(e){if("function"==typeof this.it.throw)return this.it.throw(e);throw e}[Symbol.asyncIterator](){return this}async[Symbol.asyncDispose](){this.disposed||this.return?.()}[Symbol.toStringTag]="AsyncIteratorHelper";drop(e){const t=this;return Z.wrapAsync(async function*(){let r=0;for await(const n of t)r++<e||(yield n)}())}take(e){const t=this;return Z.wrapAsync(async function*(){if(e<=0)return;let r=0;for await(const n of t)if(yield n,++r>=e)break}())}map(e){const t=this;return Z.wrapAsync(async function*(){let r=0;for await(const n of t)yield e(n,r++)}())}mapAsync(e){const t=this;return Z.wrapAsync(async function*(){let r=0;for await(const n of t)yield await e(n,r++)}())}filter(e){const t=this;return Z.wrapAsync(async function*(){let r=0;for await(const n of t)e(n,r++)&&(yield n)}())}filterAsync(e){const t=this;return Z.wrapAsync(async function*(){let r=0;for await(const n of t)await e(n,r++)&&(yield n)}())}flatMapAsync(e){const t=this;return Z.wrapAsync(async function*(){let r=0;for await(const n of t){const t=e(n,r++),i="function"==typeof t[Symbol.iterator]?t:new h(t);for await(const e of i)yield e}}())}async toArray(){const e=[];for await(const t of this)e.push(t);return e}async forEach(e){let t=0;for await(const r of this)e(r,t++)}async forEachAsync(e,t=!1){let r=0;if(t){let t=[];for await(const n of this)t.push(e(n,r++));await Promise.all(t)}else for await(const t of this)await e(t,r++)}async reduce(e,t){let r,n=0;if(void 0===t){let e=await this.next();if(e.done)throw new TypeError("Reduce of empty iterator with no initial value");r=e.value}else r=t;for await(const t of this)r=e(r,t,n++);return r}async reduceAsync(e,t){let r,n=0;const i=this[Symbol.asyncIterator]();if(void 0===t){let e=await i.next();if(e.done)throw new TypeError("Reduce of empty iterator with no initial value");r=e.value}else r=t;for await(const t of i)r=await e(r,t,n++);return r}async find(e){let t=0;for await(const r of this)if(e(r,t++))return r}async findAsync(e){let t=0;for await(const r of this)if(await e(r,t++))return r}async every(e){let t=0;for await(const r of this)if(!e(r,t++))return!1;return!0}async everyAsync(e){let t=0;for await(const r of this)if(!await e(r,t++))return!1;return!0}async some(e){let t=0;for await(const r of this)if(e(r,t++))return!0;return!1}async someAsync(e){let t=0;for await(const r of this)if(await e(r,t++))return!0;return!1}}class l{disposed=!1;constructor(e){this.it=e}next(...e){return this.disposed?{value:void 0,done:!0}:this.it.next(...e)}return(e){return this.disposed=!0,"function"==typeof this.it.return?this.it.return(e):{value:e,done:!0}}throw(e){if("function"==typeof this.it.throw)return this.it.throw(e);throw e}[Symbol.iterator](){return this}[Symbol.dispose](){this.disposed||this.return?.()}[Symbol.toStringTag]="IteratorHelper";drop(e){const t=this;return Z.wrap(function*(){let r=0;for(const n of t)r++<e||(yield n)}())}take(e){const t=this;return Z.wrap(function*(){if(e<=0)return;let r=0;for(const n of t)if(yield n,++r>=e)break}())}map(e){const t=this;return Z.wrap(function*(){let r=0;for(const n of t)yield e(n,r++)}())}filter(e){const t=this;return Z.wrap(function*(){let r=0;for(const n of t)e(n,r++)&&(yield n)}())}flatMap(e){const t=this;return Z.wrap(function*(){let r=0;for(const n of t){const t=e(n,r++),i="function"==typeof t[Symbol.iterator]?t:new l(t);for(const e of i)yield e}}())}toArray(){const e=[];for(const t of this)e.push(t);return e}forEach(e){let t=0;for(const r of this)e(r,t++)}reduce(e,t){let r,n=0;const i=this[Symbol.iterator]();if(void 0===t){let e=i.next();if(e.done)throw new TypeError("Reduce of empty iterator with no initial value");r=e.value}else r=t;for(const t of i)r=e(r,t,n++);return r}find(e){let t=0;for(const r of this)if(e(r,t++))return r}every(e){let t=0;for(const r of this)if(!e(r,t++))return!1;return!0}some(e){let t=0;for(const r of this)if(e(r,t++))return!0;return!1}mapAsync(e){const t=this;return Z.wrapAsync(async function*(){let r=0;for(const n of t)yield await e(n,r++)}())}filterAsync(e){const t=this;return Z.wrapAsync(async function*(){let r=0;for(const n of t)await e(n,r++)&&(yield n)}())}flatMapAsync(e){const t=this;return Z.wrapAsync(async function*(){let r=0;for(const n of t){const t=e(n,r++),i="function"==typeof t[Symbol.iterator]?t:new h(t);for await(const e of i)yield e}}())}async forEachAsync(e,t=!1){let r=0;if(t){let t=[];for(const n of this)t.push(e(n,r++));await Promise.all(t)}else for(const t of this)await e(t,r++)}async reduceAsync(e,t){let r,n=0;if(void 0===t){let e=this.next();if(e.done)throw new TypeError("Reduce of empty iterator with no initial value");r=e.value}else r=t;for(const t of this)r=await e(r,t,n++);return r}async findAsync(e){let t=0;for(const r of this)if(await e(r,t++))return r}async everyAsync(e){let t=0;for(const r of this)if(!await e(r,t++))return!1;return!0}async someAsync(e){let t=0;for(const r of this)if(await e(r,t++))return!0;return!1}makeAsync(){return Z.makeAsync(this)}}class c{static PERM_PART_SEPARATOR=".";static PERM_ANY_DIRECT_CHILD="*";static PERM_ANY_CHILD="**";constructor(e){this.rpack=e;let t=e.getEnvironment();t.isPluginThread()||(t.isHost()?this.clientPermissions=new Map:t.isClient()&&(this.hostPermissions=new u))}getRPack(){return this.rpack}combineParts(e,t){return e.length>0?e+"."+t:t}checkEntry(e,t){let r,n,i="",s="",a=t.split(c.PERM_PART_SEPARATOR);for(let t=0;t<a.length;t++){let o=a[t],h=t==a.length-1;if(s=this.combineParts(i,o),r=this.combineParts(i,c.PERM_ANY_DIRECT_CHILD),n=this.combineParts(i,c.PERM_ANY_CHILD),e.deniedPermissions.has(s))return!1;if(e.grantedPermissions.has(s))return!0;if(h&&e.deniedPermissions.has(r))return!1;if(h&&e.grantedPermissions.has(r))return!0;if(e.deniedPermissions.has(n))return!1;if(e.grantedPermissions.has(n))return!0;i=s}return!1}async checkPermission(e,t){return t.isLocal()?this.checkLocalThreadPermission(e,t.getThreadId()):t.isHost()?this.checkRemoteHostPermission(e,t.getThreadId()):this.checkRemoteClientPermission(e,t.getClientId(),t.getThreadId())}async checkRemoteHostPermission(e,t){let r=this.rpack.getEnvironment();return r.isPluginThread()?this.checkRemotePermissions({type:"host",perm:e}):!!r.isHost()||!!this.checkEntry(this.hostPermissions,e)}async checkRemoteClientPermission(e,t,r){let n=this.rpack.getEnvironment();if(!n.isHost())return!0;if(n.isPluginThread())return this.checkRemotePermissions({type:"client",perm:e,clientId:t,threadId:r});let i=this.clientPermissions.get(t);return void 0!==i&&!!this.checkEntry(i,e)}async checkLocalThreadPermission(e,t){if(this.rpack.getEnvironment().isPluginThread())return this.checkRemotePermissions({type:"local",perm:e,threadId:t});let r=this.threadPermissions.get(t);return void 0!==r&&this.checkEntry(r,e)}async checkRemotePermissions(e){let t=this.rpack.getEnvironment().getCoreMessenger();return(await t.sendPacketWithNoncePromise("permission:check_permission_request",e,"permission:check_permission_response")).granted}__handlePackets(e){e.addHandler("permission:check_permission_request",async t=>{let r;switch(t.type){case"local":r=this.checkLocalThreadPermission(t.perm,t.threadId);break;case"host":r=this.checkRemoteHostPermission(t.perm,t.threadId);break;case"client":r=this.checkRemoteClientPermission(t.perm,t.clientId,t.threadId)}e.sendPacket({id:"permission:check_permission_response",nonce:t.nonce,granted:await r})})}}class u{constructor(){this.grantedPermissions=new Set,this.deniedPermissions=new Set}}class d{constructor(e){this.id=e}}class f{static MANIFEST_PATH="manifest.json";constructor(){this.map=new Map,this.manifest=null}detectMimeType(e){switch(e.toLowerCase().split(".").pop()){case"js":return"application/javascript";case"png":return"image/png";case"svg":return"image/svg+xml";default:return"application/octet-stream"}}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(f.MANIFEST_PATH),t=JSON.parse((new TextDecoder).decode(await e.arrayBuffer()));return this.manifest=t,t}}class p{static __VERY_VERY_SECRET_FIELD_THAT_IDENTIFIES_THAT_THIS_WANTS_TO_BE_A_RPPLUGIN_INSTANCE="avocado";getRPack(){return this.rpack}async onInit(){}async onInitClient(){}async onInitHost(){}async onShutdown(){}static __setInstance(e,t){void 0===e.rpack&&(e.rpack=t)}}let m;(m||(m={})).isSubclass=function(e,t){return t.prototype.isPrototypeOf(e.prototype)};const g=m;let y=Symbol("isProxy"),_=Symbol("getFunctions");class w{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===_)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 w(e,t.objectKey,t.typeName,{},t.functions,t.iterable)}static fromRegistryEntry(e,t){return new w(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[_]:[]}}class v{get(e,t,r){let n=e[t];return"function"==typeof n?(...r)=>Promise.resolve(e[t](...r)):n}}class b extends Map{constructor(e){if(e){let t=[];for(const[r,n]of e)t.push([JSON.stringify(r),n]);super(t)}else super()}transform(e){return JSON.stringify(e)}untransform(e){return JSON.parse(e)}set(e,t){return super.set(this.transform(e),t)}get(e){return super.get(this.transform(e))}has(e){return super.has(this.transform(e))}delete(e){return super.delete(this.transform(e))}entries(){return new l(super.entries()).map(e=>[this.untransform(e[0]),e[1]])}keys(){return new l(super.keys()).map(e=>this.untransform(e))}[Symbol.iterator](){return this.entries()}forEach(e,t){for(const[r,n]of this.entries())e.call(t,n,r,this)}}class k{constructor(e,t,r,n){this.manager=e,this.options=n,this.remoteThread=t,this.registryId=r,this.localEntries=new b,this.cachedEntries=new b}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)?Promise.resolve(this.localEntries.get(e).data):this.getRemote().requestGet(this.registryId,null,e)}getEntry(e){return this.localEntries.has(e)?Promise.resolve(this.localEntries.get(e)):this.getRemote().requestGetEntry(this.registryId,null,e)}getAllEntries(e){return this.getRemote().requestGetAllEntries(this.registryId,null,e)}getAll(e){return this.getRemote().requestGetAll(this.registryId,null,e)}has(e){return this.getRemote().requestHas(this.registryId,null,e)}async set(e,t){let r=await this.getRemote().requestSet(this.registryId,null,e,t);return this.__localSet(r,this.getRegistryManager().getRPack().getThreadManager().getCurrentThread(),t),r}remove(e){return this.getRemote().requestRemove(this.registryId,null,e)}size(){return this.getRemote().requestSize(this.registryId,null)}clear(){return this.getRemote().requestClear(this.registryId,null)}onAdd(){throw new Error("Method not implemented.")}onChange(){throw new Error("Method not implemented.")}onRemove(){throw new Error("Method not implemented.")}onClear(){throw new Error("Method not implemented.")}__forwardSet(e,t,r){return this.getRemote().requestSet(this.registryId,t,e,r)}__forwardRemove(e,t){return this.getRemote().requestRemove(this.registryId,t,e)}__localSet(e,t,r){return!(this.localEntries.has(e)&&this.localEntries.get(e).ownerThread!==t||(this.options.localsAreProxied&&!w.isProxy(r)&&"object"==typeof r&&(r=new Proxy(r,new v)),this.localEntries.set(e,{key:e,ownerThread:t,data:r}),0))}__localGet(e){return this.localEntries.get(e)?.data}__localCacheGet(e,t){if(!this.options.remotesAreCached)throw new Error("Caching remote objects is disabled for this registry");if(this.cachedEntries.has(e))return this.cachedEntries.get(e);let r=t();return this.cachedEntries.set(e,r),r}}const E={localsAreProxied:!0,remotesAreCached:!1},x={...E};class R{constructor(e,t){this.manager=e,this.options=t,this.publicOptions=s.withDefaults(t,E),this.registryId=null,this.map=new b}getRegistryManager(){return this.manager}getRegistryId(){return this.registryId}__assignRegistryId(e){if(null!==this.registryId)throw new Error("Cannot reassign registry ID");this.registryId=e}getOptions(){return this.publicOptions}getAll(e){return void 0!==e?Z.wrap(this.map.values()).filter(t=>t.ownerThread===e).map(e=>e.data).makeAsync():Z.makeAsync(this.map.values()).map(e=>e.data)}getAllEntries(e){return void 0!==e?Z.wrap(this.map.values()).filter(t=>t.ownerThread===e).makeAsync():Z.makeAsync(this.map.values())}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 set(e,t){let r=this.manager.getRPack().getThreadManager().getCurrentThread();return this.__localAdd(e,r,t)}async remove(e){return this.map.delete(e)}async size(){return this.map.size}clear(){throw new Error("Method not implemented.")}onAdd(){throw new Error("Method not implemented.")}onChange(){throw new Error("Method not implemented.")}onRemove(){throw new Error("Method not implemented.")}onClear(){throw new Error("Method not implemented.")}async __localAdd(e,t,r){let n=await this.options.keyMapper(e,t);if(this.map.has(n)&&this.map.get(n).ownerThread!==t)throw new Error("Cannot override value from another thread!");return this.options.localsAreProxied&&!w.isProxy(r)&&"object"==typeof r&&(r=new Proxy(r,new v)),this.map.set(n,{key:n,ownerThread:t,data:r}),n}__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}async __localClear(e){if(!await this.options.permissions.clear(this,e))throw new Error("No permission");for(let[t,r]of this.map)r.ownerThread===e&&this.map.delete(t)}__removeAll(e){for(let[t,r]of this.map)r.ownerThread===e&&this.map.delete(t)}}class S{constructor(e,t,r){this.parent=e,this.remoteThread=t,this.messenger=r,r.addHandler("registry:set_request",this.onSet.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_request",this.onGetAll.bind(this))}getCurrentThread(){return this.parent.getRPack().getThreadManager().getCurrentThread()}deserializeExecutingThread(e){return null===e?this.getCurrentThread():this.getThread(e)}serializeExecutingThread(e){return(e??this.getCurrentThread()).serialize()}getThread(e){return this.parent.getRPack().getThreadManager().getThread(e)}getRemote(){return this.parent.getRPack().getProxyManager().getRemote(this.remoteThread)}serialize(e,t){return this.parent.getRPack().getSerializationManager().serialize(this.remoteThread,e,t)}deserialize(e){return this.parent.getRPack().getSerializationManager().deserialize(this.remoteThread,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 onSet(e){let t=await this.parent.getRegistry(e.registryId);if(void 0===t)return void this.sendErrorRaw("registry:set_response",e.nonce,"Unknown registry "+e.registryId);let r=this.deserializeExecutingThread(e.executingThread);if(r!==this.remoteThread&&this.remoteThread.isPluginThread())return void this.sendErrorRaw("registry:set_response",e.nonce,"Non-core threads cannot forward registry requests");let n=this.deserialize(e.value);if(t instanceof k)t.__forwardSet(e.key,r,n).then(t=>{this.messenger.sendPacket({id:"registry:set_response",nonce:e.nonce,value:t})},t=>{this.sendError("registry:set_response",e.nonce,t)});else if(t instanceof R){let i=await t.__localAdd(e.key,r,n);this.messenger.sendPacket({id:"registry:set_response",nonce:e.nonce,value:i})}else this.sendErrorRaw("registry:set_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=this.deserializeExecutingThread(e.executingThread);if(r!==this.remoteThread&&this.remoteThread.isPluginThread())this.sendErrorRaw("registry:remove_response",e.nonce,"Non-core threads cannot forward registry requests");else 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 R){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)}async onSize(e){let t=await this.parent.getRegistry(e.registryId);if(void 0!==t)return this.deserializeExecutingThread(e.executingThread)!==this.remoteThread&&this.remoteThread.isPluginThread()?void this.sendErrorRaw("registry:set_response",e.nonce,"Non-core threads cannot forward registry requests"):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 this.deserializeExecutingThread(e.executingThread)!==this.remoteThread&&this.remoteThread.isPluginThread()?void this.sendErrorRaw("registry:set_response",e.nonce,"Non-core threads cannot forward registry requests"):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 this.deserializeExecutingThread(e.executingThread)!==this.remoteThread&&this.remoteThread.isPluginThread()?void this.sendErrorRaw("registry:set_response",e.nonce,"Non-core threads cannot forward registry requests"):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.serialize(),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);if(this.deserializeExecutingThread(e.executingThread)!==this.remoteThread&&this.remoteThread.isPluginThread())return void this.sendErrorRaw("registry:set_response",e.nonce,"Non-core threads cannot forward registry requests");let r=this.getRemote(),n=null===e.filterThread?void 0:this.getThread(e.filterThread),i=t.getAllEntries(n),s=r.declareLocalAsyncIterator(i);this.messenger.sendPacket({id:"registry:get_all_entries_response",nonce:e.nonce,iteratorKey:s})}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);if(this.deserializeExecutingThread(e.executingThread)!==this.remoteThread&&this.remoteThread.isPluginThread())return void this.sendErrorRaw("registry:set_response",e.nonce,"Non-core threads cannot forward registry requests");let r=this.getRemote(),n=null===e.ownerThread?void 0:this.getThread(e.ownerThread),i=t.getAll(n),s=r.declareLocalAsyncIterator(i);this.messenger.sendPacket({id:"registry:get_all_response",nonce:e.nonce,iteratorKey:s})}async requestSet(e,t,r,n){let i=await this.messenger.sendPacketWithNoncePromise("registry:set_request",{registryId:e,executingThread:this.serializeExecutingThread(t),key:r,value:this.serialize(n,{objectMode:"registry"})},"registry:set_response");if(i.error)throw this.deserialize(i.error);return i.value}async requestHas(e,t,r){let n=await this.messenger.sendPacketWithNoncePromise("registry:has_request",{registryId:e,executingThread:this.serializeExecutingThread(t),key:r},"registry:has_response");if(n.error)throw this.deserialize(n.error);return n.value}async requestRemove(e,t,r){let n=await this.messenger.sendPacketWithNoncePromise("registry:remove_request",{registryId:e,executingThread:this.serializeExecutingThread(t),key:r},"registry:remove_response");if(n.error)throw this.deserialize(n.error);return n.value}async requestSize(e,t){let r=await this.messenger.sendPacketWithNoncePromise("registry:size_request",{registryId:e,executingThread:this.serializeExecutingThread(t)},"registry:size_response");if(r.error)throw this.deserialize(r.error);return r.value}async requestClear(e,t,r){let n=await this.messenger.sendPacketWithNoncePromise("registry:clear_request",{registryId:e,executingThread:this.serializeExecutingThread(t),filterThread:void 0===r?null:r.serialize()},"registry:clear_response");if(n.error)throw this.deserialize(n.error)}async requestGet(e,t,r){let n=await this.messenger.sendPacketWithNoncePromise("registry:get_request",{registryId:e,executingThread:this.serializeExecutingThread(t),key:r},"registry:get_response");if(n.error)throw this.deserialize(n.error);if(null!=n.value)return this.deserialize(n.value)}async requestGetEntry(e,t,r){let n=await this.messenger.sendPacketWithNoncePromise("registry:get_entry_request",{registryId:e,executingThread:this.serializeExecutingThread(t),key:r},"registry:get_entry_response");if(n.error)throw this.deserialize(n.error);if(null!=n.value)return{key:this.deserialize(n.value.key),ownerThread:this.getThread(n.value.ownerThread),data:this.deserialize(n.value.data)}}requestGetAllEntries(e,t,r){let i=this.getRemote(),s=new n(i,async()=>{const n=await this.messenger.sendPacketWithNoncePromise("registry:get_all_entries_request",{registryId:e,executingThread:this.serializeExecutingThread(t),filterThread:void 0===r?null:r.serialize()},"registry:get_all_entries_response");if(n.error)throw this.deserialize(n.error);let a=n.iteratorKey;return i.declareRemoteIterator(a,s),a});return s}requestGetAll(e,t,r){let i=this.getRemote(),s=new n(i,async()=>{const n=await this.messenger.sendPacketWithNoncePromise("registry:get_all_request",{registryId:e,executingThread:this.serializeExecutingThread(t),ownerThread:void 0===r?null:r.serialize()},"registry:get_all_response");if(n.error)throw this.deserialize(n.error);let a=n.iteratorKey;return i.declareRemoteIterator(a,s),a});return s}}class P{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(P.META_REGISTRY_ID,{localsAreProxied:!1,remotesAreCached:!0},!0)}permissionMap(e){return"function"==typeof e?e:"boolean"==typeof e?e?async()=>!0:async(e,t)=>!(!t.isCoreThread()||!t.isLocal())||t.isCurrent():async(t,r)=>this.rpack.getPermissionManager().checkPermission(e,r)}createLocalMapRegistry(e){let t={...E,keyMapper:async e=>e,...e,permissions:{set:this.permissionMap(e?.permissions?.set??!0),override:this.permissionMap(e?.permissions?.override??!1),remove:this.permissionMap(e?.permissions?.remove??!0),get:this.permissionMap(e?.permissions?.get??!0),clear:this.permissionMap(e?.permissions?.clear??!1),iterate:this.permissionMap(e?.permissions?.iterate??!0),listen:this.permissionMap(e?.permissions?.listen??!0)}};return new R(this,t)}async createMapRegistry(e,t){let r=this.createLocalMapRegistry(t),n=await this.metaRegistry.set(e,r);if(r.__assignRegistryId(n),n)return r;throw new Error("Failed to create registry "+e)}__createInternalRegistry(e,t,r=!1){if(this.rpack.isPluginThread()){let n,i=new k(this,this.getRPack().getThreadManager().getLocalCoreThread(),e,s.withDefaults(t,E));return n=r?i:this.metaRegistry,n.__localCacheGet(e,()=>i),i}{let n,i=this.createLocalMapRegistry(t);return n=r?i:this.metaRegistry,n.set(e,i).then(),i}}getRPack(){return this.rpack}getRegistry(e){return this.metaRegistry.get(e)}__getRemote(e){return this.remotes.get(e)}__createRemote(e,t){let r=new S(this,e,t);return this.remotes.set(e,r),r}__deserializeRegistry(e,t,r){if(this.metaRegistry instanceof R){let t=this.metaRegistry.__localGet(e);if(void 0!==t)return t;throw new Error(`Referenced registry '${e}' not found`)}if(this.metaRegistry instanceof k)return this.metaRegistry.__localCacheGet(e,()=>new k(this,t,e,r));throw new Error("Weird registry type: "+this.metaRegistry.constructor.name)}}class I{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){try{this.sender(e)}catch(t){throw console.error("Failed to send packet with error",e,t),t}}sendPacketWithNoncePromise(e,t,r,n){let i=a.generateNonce(),s=this.addPromiseNonceHandler(r,i,n);return this.sendPacket({...t,id:e,nonce:i}),s}sendResponseValue(e,t,r){this.sendPacket({id:e,nonce:t,value:r})}sendResponseError(e,t,r){this.sendPacket({id:e,nonce:t,error:r})}static cast(e){return e}static filterTransferable(e,t,r){for(let n of Object.values(r))t(n)?e.push(n):null!==n&&"object"==typeof n&&this.filterTransferable(e,t,n)}static transferableSend(e,t){let r=new I(r=>{let n=[];this.filterTransferable(n,e,r),t.postMessage(r,{transfer:n})});return t.onmessage=e=>r.receivePacket(e.data),r}static websocket(e){let t=new I(t=>{e.send(JSON.stringify(t))});return e.onmessage=e=>{t.receivePacket(JSON.parse(e.data))},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;if(null==this.lastBatch&&(this.lastBatch=await this.supplier(),this.lastIndex=0),0===this.lastBatch.values.length)return this.lastBatch=null,this.result={done:!0,value:void 0},this.result;let e=this.lastBatch.values[this.lastIndex];if(this.lastIndex++,this.lastIndex>=this.lastBatch.values.length){let e=this.lastBatch;this.lastBatch=null,e.done&&(this.result={done:!0,value:void 0})}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 A{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 I(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).then()}),t.addHandler("override_update",e=>{this.parent.getRPack().getPlatform().restart()}),e.onclose=()=>{console.log("Disconnected from dev server's websocket on port "+this.port),this.remove()},e.onopen=()=>{t.sendPacket({id:"hello_request_rpack",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}}async isConnected(){if(void 0!==this.socket&&this.socket.readyState!==WebSocket.CLOSED)return!0;try{return await this.getManifest(),!0}catch{return!1}}async getManifest(){let e=await(await fetch("http://localhost:"+this.port+"/rpack_dev_server")).json();if(e.rpackDevServer)return e;throw new Error("Invalid manifest")}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(),this.parent.removeServer(this)}}var C=r(710),z=r.n(C);class O extends f{constructor(e){super(),this.zip=e}async resolveEntry(e){let t=this.zip.file(e);if(null===t)return null;let r=await t.async("blob");return r.slice(0,r.size,this.detectMimeType(e))}async getEntries(){return Object.keys(this.zip.files)}}class N{static NATURAL_COLLATOR=new Intl.Collator(void 0,{numeric:!0});constructor(){}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 diff(e,t,r=(e,t)=>e==t){let n=[],i=[];for(let i of t){let t=!1;for(let n of e)if(r(i,n)){t=!0;break}t||n.push(i)}for(let n of e){let e=!1;for(let i of t)if(r(i,n)){e=!0;break}e||i.push(n)}return{added:n,removed:i}}static async fromAsync(e){const t=[];for await(const r of e)t.push(r);return t}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 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}}class M{static RATE_MULTIPLIER=6e4;static DEFAULT_PORT_RANGES=[[14287,14296]];constructor(e,t,r){this.rpack=e,this.portRanges=t,this.lastFoundServer=null,this.autoScanRate=r*M.RATE_MULTIPLIER,this.currentScanPromise=null,this.autoScanTimeout=r>0?setTimeout(()=>this.performScan(),100):null,this.focusHandler=()=>{this.performScan().then()},e.getPlatform().addWindowFocusHandler(this.focusHandler)}async performScan(){if(this.currentScanPromise)return null;clearTimeout(this.autoScanTimeout),this.autoScanTimeout=null,this.currentScanPromise=this.__actualScan();let e=await this.currentScanPromise;return this.currentScanPromise=null,this.autoScanRate>0&&(this.autoScanTimeout=setTimeout(()=>this.performScan(),this.autoScanRate)),e}async __actualScan(){if(null!==this.lastFoundServer){if(await this.lastFoundServer.isConnected())return this.lastFoundServer;{let e=this.lastFoundServer;this.lastFoundServer=null,e.remove()}}let e=await this.scanPorts();if(null!==e){let t=new A(this,e.port,e.manifest);this.lastFoundServer=t,t.init();let r=await N.fromAsync(t.getAllPlugins());for(let e of r)await this.reloadPlugin(e.groupId,e.pluginId)}return this.lastFoundServer}async scanPorts(){let e=[];for(let[t,r]of this.portRanges)for(let n=t;n<=r;n++){if(e.includes(n))continue;e.push(n);let t=await fetch("http://localhost:"+n+"/rpack_dev_server").then(e=>e.json()).then(e=>e.rpackDevServer?{port:n,manifest:e}:null,()=>null);if(null!==t)return t}return null}getRPack(){return this.rpack}getSourceId(){throw new Error("Method not implemented.")}remove(){this.lastFoundServer&&this.removeServer(this.lastFoundServer),this.getRPack().getPlatform().removeWindowFocusHandler(this.focusHandler)}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(void 0!==await this.rpack.getPlugin(t))return;console.log("Reloading plugin "+e+":"+t);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.getThreadManager().__createThread(e+":"+t,s)}async*getAllPlugins(){null!==this.lastFoundServer&&(yield*this.lastFoundServer.getAllPlugins())}async getPlugin(e,t,r){return await(this.lastFoundServer?.getPlugin(e,t))??null}async getPluginArchive(e,t,r){let n=await(this.lastFoundServer?.getPluginArchive(e,t));if(null!=n){let e=await z().loadAsync(n);return new O(e)}throw new Error("Plugin not found")}removeServer(e){this.lastFoundServer===e&&(this.lastFoundServer=null,e.remove(),this.performScan().then())}}class L{constructor(e){this.rpack=e,this.pluginRegistry=e.getRegistryManager().__createInternalRegistry(P.PLUGIN_REGISTRY_ID,{localsAreProxied:!0}),this.currentPlugin=null,e.isPluginThread()||(this.sources=[],this.sources.push(new M(e,M.DEFAULT_PORT_RANGES,1)))}getRPack(){return this.rpack}async findPlugin(e,t){if(this.rpack.isPluginThread())throw new Error("Plugins cannot search for other plugins");for(let r of this.sources){let n=await r.getPlugin(e,t);if(n)return n}return null}loadPlugin(e){if(this.rpack.isPluginThread())throw new Error("Plugins cannot load other plugins");throw new Error("Not implemented")}async __handlePluginLoad(e,t){if(!this.rpack.isPluginThread())throw new Error("Cannot load a plugin in the core thread!");if(null!==this.currentPlugin)throw new Error("A plugin has already loaded!");let r=e.groupId+":"+e.pluginId,n=await import(t);if(!("default"in n))throw new Error("Failed to import plugin "+r+": no default export");let i=n.default;if("function"!=typeof i)throw new Error("Failed to import plugin "+r+": default export is not a class");if(i.length>0)throw new Error("Failed to import plugin "+r+": default export's constructor expects arguments (should be empty)");if(!g.isSubclass(i,p)){if(i.__VERY_VERY_SECRET_FIELD_THAT_IDENTIFIES_THAT_THIS_WANTS_TO_BE_A_RPPLUGIN_INSTANCE)throw new Error("Failed to import plugin "+r+': default export is not a subclass of RPPlugin, but it seems like a RPPlugin class. Did you forget to add rPack as an external library? In your webpack config (or similar bundler configuration):\n{\n ...,\n "externals": {\n "@rpack-dev/core": "RPack"\n }\n}');throw new Error("Failed to import plugin "+r+": default export is not a subclass of RPPlugin")}let s=new i;this.currentPlugin={plugin:s,manifest:e},p.__setInstance(s,this.rpack),await s.onInit(),this.rpack.getEnvironment().isHost()?await s.onInitHost():await s.onInitClient(),await this.pluginRegistry.set(r,s)}async __waitForPluginShutdown(){null!==this.currentPlugin&&await this.currentPlugin.plugin.onShutdown()}getPluginRegistry(){return this.pluginRegistry}getPlugin(e){return this.pluginRegistry.get(e)}}class F{constructor(e,t,r){this.remote=e,this.functionKey=t,this.length=r}apply(e,t,r){return this.remote.requestRemoteFunction(this.functionKey,r)}get(e,t){return"length"===t?this.length:e[t]}static fromFunction(e,t){return new F(e,t.functionKey,t.length)}}class B{constructor(e){this.rpack=e,this.wellKnownMap=new Map,this.wellKnownReverseMap=new Map,this.mapWellKnown("RPack",e),this.mapWellKnown("NetworkManager",e.getSerializationManager()),this.mapWellKnown("ProxyManager",e.getProxyManager()),this.mapWellKnown("RegistryManager",e.getRegistryManager())}mapWellKnown(e,t){this.wellKnownMap.set(t,{type:"well_known",kind:e}),this.wellKnownReverseMap.set(e,t)}getRPack(){return this.rpack}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(w.isProxy(e))return w.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(!w.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 R||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),length:t.length};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_data",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_data":return new Proxy({},w.fromRegistryEntry(r,t));case"object":return new Proxy({},w.fromObject(r,t));case"function":return new Proxy(async()=>null,F.fromFunction(r,t));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 j{constructor(e,t){this.threadId=e,this.messenger=t}getThreadId(){return this.threadId}getMessenger(){return this.messenger}}class D{constructor(e){if(this.map=new Map,this.unregisterMap=new Map,this.finalizer=new FinalizationRegistry(e=>{this.map.delete(e),this.unregisterMap.delete(e)}),e)for(const[t,r]of e)this.set(t,r)}set(e,t){this.map.set(e,new WeakRef(t));let r={};this.unregisterMap.set(e,r),this.finalizer.register(t,e,r)}get(e){const t=this.map.get(e);return t&&t.deref()}has(e){const t=this.map.get(e);return!(!t||!t.deref())}delete(e){if(!this.map.get(e))return!1;let t=this.unregisterMap.get(e);return this.finalizer.unregister(t),this.unregisterMap.delete(e),this.map.delete(e)}}class U{static CORE_THREAD_ID="core";constructor(e){this.rpack=e,this.threads=new D,this.currentThread=this.getLocalThread(e.getEnvironment().getThreadId()),e.isPluginThread()?this.rpack.addLateInitCallback(async()=>{let t=e.getEnvironment().getCoreMessenger();this.__handlePacketsOnPlugin(this.getCurrentThread(),t)}):this.localThreads=new Map}getLocalThread(e){return this.getThread(e,this.rpack.getEnvironment().getClientId())}getThread(e,t){let r,n;"string"==typeof e?(r=e,n=t):(r=e.threadId,n=null===e.clientId?void 0:e.clientId);let i=JSON.stringify([r,n]),s=this.threads.get(i);return s||(s=new H(this.rpack,r,n),this.threads.set(i,s),s)}getCurrentThread(){return this.currentThread}getLocalCoreThread(){return this.getLocalThread(U.CORE_THREAD_ID)}__handleSharedPackets(e,t){this.rpack.getProxyManager().createRemote(e,I.cast(t)),this.rpack.getRegistryManager().__createRemote(e,I.cast(t))}__handlePacketsOnPlugin(e,t){this.__handleSharedPackets(e,I.cast(t)),t.addHandler("thread:shutdown_request",async e=>{await this.rpack.getPluginManager().__waitForPluginShutdown(),t.sendPacket({id:"thread:shutdown_response",nonce:e.nonce})})}__handlePacketsOnCore(e,t){this.__handleSharedPackets(e,I.cast(t)),this.rpack.getPermissionManager().__handlePackets(I.cast(t))}async __createThread(e,t){if(this.rpack.isPluginThread())throw new Error("Cannot create a Thread from a plugin thread!");let r=a.generateNonce();for(;this.localThreads.has(r);)r=a.generateNonce();console.debug("Starting new thread "+r+" for plugin "+e);let n=await this.rpack.getPlatform().createRPackThread(r,e),i=this.rpack.getThreadManager().getLocalThread(r);this.localThreads.set(r,n);let s=n.getMessenger(),o=null;for(let n=0;n<16;n++)try{console.debug("Waiting for thread "+r+" (attempt "+(n+1)+"/16, waiting "+Math.pow(2,n)+"ms)...");let h=a.generateNonce();s.sendPacket({id:"thread:hello_request",nonce:h,threadId:r,pluginKey:e,scriptUrl:t}),await s.addPromiseNonceHandler("thread:hello_response",h,Math.pow(2,n)),this.__handlePacketsOnCore(i,s),console.debug("Thread "+r+" started"),o=h;break}catch{console.debug("Thread "+r+" timed out. Trying again...")}if(null===o)throw console.debug("Thread "+r+" failed to start, aborting"),await n.terminate(),this.localThreads.delete(r),new Error("Thread "+r+" failed to start");return await s.addPromiseNonceHandler("thread:plugin_load",o),console.debug("Plugin loaded in thread "+r),r}}class H{constructor(e,t,r){this.rpack=e,this.threadId=t,this.clientId=r}isHost(){return void 0===this.clientId}isClient(){return void 0!==this.clientId}isLocal(){let e=this.rpack.getEnvironment();return e.isHost()?this.isHost():!this.isHost()&&e.getThreadId()===this.threadId}getClientId(){return this.clientId}getThreadId(){return this.threadId}checkPermission(e){return this.rpack.getPermissionManager().checkPermission(e,this)}serialize(){return{threadId:this.threadId,clientId:void 0===this.clientId?null:this.clientId}}isCoreThread(){return this.threadId===U.CORE_THREAD_ID}isPluginThread(){return this.threadId!==U.CORE_THREAD_ID}isCurrent(){return this.rpack.getThreadManager().getCurrentThread()===this}}class W{constructor(e,t){this.it=e,this.map=t}[Symbol.iterator](){return this}next(...e){let t=this.it.next(...e);return t.value=this.map(t.value),t}return(e){if(void 0!==this.it.return){let t=this.it.return(e);return t.value=this.map(t.value),t}return{done:!0,value:e}}throw(e){if(void 0!==this.it.throw)return this.it.throw(e);throw e}}class K{constructor(e,t,r,n){let i="canary",s="0.2.0-canary.2",a="https://github.com/rpack-dev/rpack-dev.git";this.rpackChannel=i.includes("___REPLACE_ME")?"dev":i,this.rpackVersion=s.includes("___REPLACE_ME")?"0.0.0":s,this.rpackRepository=a.includes("___REPLACE_ME")?"local repository":a,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 q{constructor(e){this.it=e,this.disposed=!1}[Symbol.asyncIterator](){return this}async next(...e){return this.disposed?{value:void 0,done:!0}:this.it.next(...e)}async return(e){return this.disposed=!0,"function"==typeof this.it.return?this.it.return(e):{value:e,done:!0}}async throw(e){if("function"==typeof this.it.throw)return this.it.throw(e);throw e}}class Z{static wrap(e){return"function"==typeof e[Symbol.iterator]?new l(e[Symbol.iterator]()):new l(e)}static wrapAsync(e){return"function"==typeof e[Symbol.asyncIterator]?new h(e[Symbol.asyncIterator]()):new h(e)}static makeAsync(e){let t;return t="function"==typeof e[Symbol.iterator]?new q(e[Symbol.iterator]()):new q(e),new h(t)}}class G{constructor(e,t,r){this.parent=e,this.thread=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))}getThread(){return this.thread}serialize(e,t){return this.parent.getRPack().getSerializationManager().serialize(this.thread,e,t)}deserialize(e){return this.parent.getRPack().getSerializationManager().deserialize(this.thread,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(Z.makeAsync(e))}declareLocalAsyncIterator(e){return this.iterators.addLocal(e)}declareFunction(e){return this.functions.addLocal(e)}declareRemoteIterator(e,t){this.iterators.registerRemote(e,t)}requestRemoteObjectIterator(e){let t=new n(this,async()=>{const r=await this.messenger.sendPacketWithNoncePromise("proxy:create_iterator_request",{objectKey:e},"proxy:create_iterator_response");if(r.error)throw this.deserialize(r.error);let n=r.iteratorKey;return this.declareRemoteIterator(n,t),n});return t}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 V{constructor(e){this.rpack=e,this.remotes=new Map}createRemote(e,t){let r=new G(this,e,t);return this.remotes.set(e,r),r}getRPack(){return this.rpack}getRemote(e){return this.remotes.get(e)}}class Y{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(async e=>{let t=new Y(e);return await r.performLateInit(),t});return e&&(this.instance=r),r}static getInstance(){return this.instance}constructor(e){this.environment=e.environment,this.loadPromise=e.loadPromise,this.platform=e.platform,this.version=e.version,this.lateInitCallbacks=[],this.threadManager=new U(this),this.permissionManager=new c(this),this.proxyManager=new V(this),this.registryManager=new P(this),this.pluginManager=new L(this),this.serializationManager=new B(this)}getLoadPromise(){return this.loadPromise}getPlatform(){return this.platform}getVersion(){return this.version}getThreadManager(){return this.threadManager}getPermissionManager(){return this.permissionManager}getProxyManager(){return this.proxyManager}getRegistryManager(){return this.registryManager}getPluginManager(){return this.pluginManager}getSerializationManager(){return this.serializationManager}getEnvironment(){return this.environment}isPluginThread(){return this.environment.isPluginThread()}isHost(){return this.environment.isHost()}isClient(){return this.environment.isClient()}getPlugin(e){return this.getPluginManager().getPlugin(e)}addLateInitCallback(e){if(null===this.lateInitCallbacks)throw new Error("Late init callbacks already added");this.lateInitCallbacks.push(e)}async performLateInit(){if(null!==this.lateInitCallbacks){for(let e of this.lateInitCallbacks)await e();this.lateInitCallbacks=null}}}export{N as ArrayUtils,h as AsyncIteratorHelper,q as AsyncIteratorMirror,E as DefaultPublicRegistryOptions,x as DefaultRegistryOptions,A as DevPluginServerClient,M as DevPluginSource,l as IteratorHelper,Z as IteratorUtils,b as JSONKeyedMap,T as LazyBatchedAsyncIterator,i as LazyPromise,R as LocalMapRegistry,v as LocalObject,o as LocalRemoteMap,W as MappedIterator,I as Messenger,c as PermissionManager,f as PluginArchive,L as PluginManager,V as ProxyManager,d as RPPlatform,p as RPPlugin,K as RPVersion,j as RPackLocalThread,P as RegistryManager,n as RemoteAsyncIterator,F as RemoteFunction,k as RemoteMapRegistry,w as RemoteObject,G as RemoteProxyManager,S as RemoteRegistryManager,B as SerializationManager,a as StringUtils,H as Thread,U as ThreadManager,s as Utils,D as ValueWeakMap,O as ZipPluginArchive,Y as default};
|
|
2
|
+
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){var n=e("./utils"),i=e("./support"),s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";r.encode=function(e){for(var t,r,i,a,o,h,l,c=[],u=0,d=e.length,f=d,p="string"!==n.getTypeOf(e);u<e.length;)f=d-u,i=p?(t=e[u++],r=u<d?e[u++]:0,u<d?e[u++]:0):(t=e.charCodeAt(u++),r=u<d?e.charCodeAt(u++):0,u<d?e.charCodeAt(u++):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,c.push(s.charAt(a)+s.charAt(o)+s.charAt(h)+s.charAt(l));return c.join("")},r.decode=function(e){var t,r,n,a,o,h,l=0,c=0,u="data:";if(e.substr(0,5)===u)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[c++]=t,64!==o&&(d[c++]=r),64!==h&&(d[c++]=n);return d}},{"./support":30,"./utils":32}],2:[function(e,t,r){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){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){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){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){var n;n="undefined"!=typeof Promise?Promise:e("lie"),t.exports={Promise:n}},{lie:37}],7:[function(e,t,r){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){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,c){var u,d,f=e.file,p=e.compression,m=c!==o.utf8encode,g=s.transformTo("string",c(f.name)),y=s.transformTo("string",o.utf8encode(f.name)),_=f.comment,w=s.transformTo("string",c(_)),v=s.transformTo("string",o.utf8encode(_)),b=y.length!==f.name.length,k=v.length!==_.length,E="",x="",R="",S=f.dir,P=f.date,I={crc32:0,compressedSize:0,uncompressedSize:0};t&&!r||(I.crc32=e.crc32,I.compressedSize=e.compressedSize,I.uncompressedSize=e.uncompressedSize);var T=0;t&&(T|=8),m||!b&&!k||(T|=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)),u=P.getUTCHours(),u<<=6,u|=P.getUTCMinutes(),u<<=5,u|=P.getUTCSeconds()/2,d=P.getUTCFullYear()-1980,d<<=4,d|=P.getUTCMonth()+1,d<<=5,d|=P.getUTCDate(),b&&(x=n(1,1)+n(h(g),4)+y,E+="up"+n(x.length,2)+x),k&&(R=n(1,1)+n(h(w),4)+v,E+="uc"+n(R.length,2)+R);var z="";return z+="\n\0",z+=n(T,2),z+=p.magic,z+=n(u,2),z+=n(d,2),z+=n(I.crc32,4),z+=n(I.compressedSize,4),z+=n(I.uncompressedSize,4),z+=n(g.length,2),z+=n(E.length,2),{fileRecord:l.LOCAL_FILE_HEADER+z+g+E,dirRecord:l.CENTRAL_FILE_HEADER+n(C,2)+z+n(w.length,2)+"\0\0\0\0"+n(A,4)+n(i,4)+g+E+w}}var s=e("../utils"),a=e("../stream/GenericWorker"),o=e("../utf8"),h=e("../crc32"),l=e("../signature");function c(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(c,a),c.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}}))},c.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},c.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},c.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}})},c.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},c.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},c.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))},c.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},c.prototype.lock=function(){a.prototype.lock.call(this);for(var e=this._sources,t=0;t<e.length;t++)e[t].lock()},t.exports=c},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(e,t,r){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){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){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){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){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){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){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=m(e)),o.createFolders&&(n=p(e))&&g.call(this,n,!0);var u="string"===i&&!1===o.binary&&!1===o.base64;r&&void 0!==r.binary||(o.binary=!u),(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 y;y=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 _=new c(e,y,o);this.files[e]=_}var i=e("./utf8"),s=e("./utils"),a=e("./stream/GenericWorker"),o=e("./stream/StreamHelper"),h=e("./defaults"),l=e("./compressedObject"),c=e("./zipObject"),u=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):""},m=function(e){return"/"!==e.slice(-1)&&(e+="/"),e},g=function(e,t){return t=void 0!==t?t:h.createFolders,e=m(e),this.files[e]||n.call(this,e,null,{dir:!0,createFolders:t}),this.files[e]};function y(e){return"[object RegExp]"===Object.prototype.toString.call(e)}var _={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(y(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(y(e))return this.filter(function(t,r){return r.dir&&e.test(t)});var t=this.root+e,r=g.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=u.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=_},{"./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){t.exports=e("stream")},{stream:void 0}],17:[function(e,t,r){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){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){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){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){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){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){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){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){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){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){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){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){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 c(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)}}c.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=c},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(e,t,r){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){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 c(){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(c,a),c.prototype.processChunk=function(e){this.push({data:r.utf8encode(e.data),meta:e.meta})},r.Utf8EncodeWorker=c},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,r){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 c(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 u(e,t){for(var r=0;r<e.length;r++)t[r]=e[r];return t}r.applyFromCharCode=c;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:c,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 c(new Uint8Array(e))},array:function(e){return u(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:c,array:function(e){return u(e,new Array(e.length))},arraybuffer:function(e){return e.buffer},uint8array:o,nodebuffer:function(e){return s.newBufferFrom(e)}},d.nodebuffer={string:c,array:function(e){return u(e,new Array(e.length))},arraybuffer:function(e){return d.nodebuffer.uint8array(e).buffer},uint8array:function(e){return u(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 c=r.getTypeOf(t);return c?("arraybuffer"===c?t=r.transformTo("uint8array",t):"string"===c&&(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){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){var n=e("./reader/readerFor"),i=e("./utils"),s=e("./compressedObject"),a=e("./crc32"),o=e("./utf8"),h=e("./compressions"),l=e("./support");function c(e,t){this.options=e,this.loadOptions=t}c.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=c},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(e,t,r){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"],c=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},u=0;u<l.length;u++)n.prototype[l[u]]=c;t.exports=n},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(e,t,n){(function(e){var r,n,i=e.MutationObserver||e.WebKitMutationObserver;if(i){var s=0,a=new i(c),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(){c(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(c,0)};else{var h=new e.MessageChannel;h.port1.onmessage=c,r=function(){h.port2.postMessage(0)}}var l=[];function c(){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){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 c(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 u(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?u(r,this.state===o?e:t,this.outcome):this.queue.push(new c(r,e,t)),r},c.prototype.callFulfilled=function(e){s.resolve(this.promise,e)},c.prototype.otherCallFulfilled=function(e){u(this.promise,this.onFulfilled,e)},c.prototype.callRejected=function(e){s.reject(this.promise,e)},c.prototype.otherCallRejected=function(e){u(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;)c(e[h],h);return l;function c(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){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){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 c;if(c="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,c)))throw new Error(a[r]);this._dict_set=!0}}function c(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=c,r.deflateRaw=function(e,t){return(t=t||{}).raw=!0,c(e,t)},r.gzip=function(e,t){return(t=t||{}).gzip=!0,c(e,t)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(e,t,r){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"),c=Object.prototype.toString;function u(e){if(!(this instanceof u))return new u(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 u(t);if(r.push(e,!0),r.err)throw r.msg||o[r.err];return r.result}u.prototype.push=function(e,t){var r,o,h,l,u,d,f=this.strm,p=this.options.chunkSize,m=this.options.dictionary,g=!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]"===c.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&&m&&(d="string"==typeof m?s.string2buf(m):"[object ArrayBuffer]"===c.call(m)?new Uint8Array(m):m,r=n.inflateSetDictionary(this.strm,d)),r===a.Z_BUF_ERROR&&!0===g&&(r=a.Z_OK,g=!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,u=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(u)):this.onData(i.shrinkBuf(f.output,f.next_out)))),0===f.avail_in&&0===f.avail_out&&(g=!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))},u.prototype.onData=function(e){this.chunks.push(e)},u.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=u,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){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){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){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){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){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){var n,i=e("../utils/common"),s=e("./trees"),a=e("./adler32"),o=e("./crc32"),h=e("./messages"),l=-2,c=258,u=262,d=113;function f(e,t){return e.msg=h[t],t}function p(e){return(e<<1)-(4<e?9:0)}function m(e){for(var t=e.length;0<=--t;)e[t]=0}function g(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 y(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,g(e.strm)}function _(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-u?e.strstart-(e.w_size-u):0,l=e.window,d=e.w_mask,f=e.prev,p=e.strstart+c,m=l[s+a-1],g=l[s+a];e.prev_length>=e.good_match&&(i>>=2),o>e.lookahead&&(o=e.lookahead);do{if(l[(r=t)+a]===g&&l[r+a-1]===m&&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=c-(p-s),s=p-c,a<n){if(e.match_start=t,o<=(a=n))break;m=l[s+a-1],g=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,c,d,f,p,m=e.w_size;do{if(s=e.window_size-e.lookahead-e.strstart,e.strstart>=m+(m-u)){for(i.arraySet(e.window,e.window,m,m,0),e.match_start-=m,e.strstart-=m,e.block_start-=m,t=r=e.hash_size;n=e.head[--t],e.head[t]=m<=n?n-m:0,--r;);for(t=r=m;n=e.prev[--t],e.prev[t]=m<=n?n-m:0,--r;);s+=m}if(0===e.strm.avail_in)break;if(l=e.strm,c=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(c,l.input,l.next_in,p,d),1===l.state.wrap?l.adler=a(l.adler,c,p,d):2===l.state.wrap&&(l.adler=o(l.adler,c,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<u&&0!==e.strm.avail_in)}function k(e,t){for(var r,n;;){if(e.lookahead<u){if(b(e),e.lookahead<u&&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-u&&(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&&(y(e,!1),0===e.strm.avail_out))return 1}return e.insert=e.strstart<2?e.strstart:2,4===t?(y(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(y(e,!1),0===e.strm.avail_out)?1:2}function E(e,t){for(var r,n,i;;){if(e.lookahead<u){if(b(e),e.lookahead<u&&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-u&&(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&&(y(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]))&&y(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?(y(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(y(e,!1),0===e.strm.avail_out)?1:2}function x(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),m(this.dyn_ltree),m(this.dyn_dtree),m(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),m(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(573),m(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 P(e){var t=S(e);return 0===t&&function(e){e.window_size=2*e.w_size,m(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 I(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,P(e)}n=[new x(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,y(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-u&&(y(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(y(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(y(e,!1),e.strm.avail_out),1)}),new x(4,4,8,4,k),new x(4,5,16,8,k),new x(4,6,32,32,k),new x(4,4,16,16,E),new x(8,16,32,32,E),new x(8,16,128,128,E),new x(8,32,128,256,E),new x(32,128,258,1024,E),new x(32,258,258,4096,E)],r.deflateInit=function(e,t){return I(e,t,8,15,8,0)},r.deflateInit2=I,r.deflateReset=P,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,_(i,31),_(i,139),_(i,8),i.gzhead?(_(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)),_(i,255&i.gzhead.time),_(i,i.gzhead.time>>8&255),_(i,i.gzhead.time>>16&255),_(i,i.gzhead.time>>24&255),_(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),_(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(_(i,255&i.gzhead.extra.length),_(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):(_(i,0),_(i,0),_(i,0),_(i,0),_(i,0),_(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),_(i,3),i.status=d);else{var u=8+(i.w_bits-8<<4)<<8;u|=(2<=i.strategy||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(u|=32),u+=31-u%31,i.status=d,w(i,u),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)),g(e),a=i.pending,i.pending!==i.pending_buf_size));)_(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)),g(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,_(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)),g(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,_(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&&g(e),i.pending+2<=i.pending_buf_size&&(_(i,255&e.adler),_(i,e.adler>>8&255),e.adler=0,i.status=d)):i.status=d),0!==i.pending){if(g(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&&(y(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(y(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(y(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<=c){if(b(e),e.lookahead<=c&&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+c;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=c-(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&&(y(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(y(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(y(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&&(m(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),g(e),0===e.avail_out))return i.last_flush=-1,0}return 4!==t?0:i.wrap<=0?1:(2===i.wrap?(_(i,255&e.adler),_(i,e.adler>>8&255),_(i,e.adler>>16&255),_(i,e.adler>>24&255),_(i,255&e.total_in),_(i,e.total_in>>8&255),_(i,e.total_in>>16&255),_(i,e.total_in>>24&255)):(w(i,e.adler>>>16),w(i,65535&e.adler)),g(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,c,u,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&&(m(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,c=e.next_in,u=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=c,e.input=u,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){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){t.exports=function(e,t){var r,n,i,s,a,o,h,l,c,u,d,f,p,m,g,y,_,w,v,b,k,E,x,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,c=r.whave,u=r.wnext,d=r.window,f=r.hold,p=r.bits,m=r.lencode,g=r.distcode,y=(1<<r.lenbits)-1,_=(1<<r.distbits)-1;e:do{p<15&&(f+=R[n++]<<p,p+=8,f+=R[n++]<<p,p+=8),w=m[f&y];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=m[(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=g[f&_];r:for(;;){if(f>>>=v=w>>>24,p-=v,!(16&(v=w>>>16&255))){if(!(64&v)){w=g[(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(c<(v=k-v)&&r.sane){e.msg="invalid distance too far back",r.mode=30;break e}if(x=d,(E=0)===u){if(E+=l-v,v<b){for(b-=v;S[s++]=d[E++],--v;);E=s-k,x=S}}else if(u<v){if(E+=l+u-v,(v-=u)<b){for(b-=v;S[s++]=d[E++],--v;);if(E=0,u<b){for(b-=v=u;S[s++]=d[E++],--v;);E=s-k,x=S}}}else if(E+=u-v,v<b){for(b-=v;S[s++]=d[E++],--v;);E=s-k,x=S}for(;2<b;)S[s++]=x[E++],S[s++]=x[E++],S[s++]=x[E++],b-=3;b&&(S[s++]=x[E++],1<b&&(S[s++]=x[E++]))}else{for(E=s-k;S[s++]=S[E++],S[s++]=S[E++],S[s++]=S[E++],2<(b-=3););b&&(S[s++]=S[E++],1<b&&(S[s++]=S[E++]))}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){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 c(){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 u(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,u(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 c,(e.state=n).window=null,0!==(r=f(e,t))&&(e.state=null),r):h}var m,g,y=!0;function _(e){if(y){var t;for(m=new n.Buf32(512),g=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,m,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;o(2,e.lens,0,32,g,0,e.work,{bits:5}),y=!1}e.lencode=m,e.lenbits=9,e.distcode=g,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=u,r.inflateInit=function(e){return p(e,15)},r.inflateInit2=p,r.inflate=function(e,t){var r,c,u,d,f,p,m,g,y,v,b,k,E,x,R,S,P,I,T,A,C,z,O,M,N=0,L=new n.Buf8(4),F=[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,u=e.output,m=e.avail_out,d=e.next_in,c=e.input,p=e.avail_in,g=r.hold,y=r.bits,v=p,b=m,z=0;e:for(;;)switch(r.mode){case 1:if(0===r.wrap){r.mode=13;break}for(;y<16;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(2&r.wrap&&35615===g){L[r.check=0]=255&g,L[1]=g>>>8&255,r.check=s(r.check,L,2,0),y=g=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&g)<<8)+(g>>8))%31){e.msg="incorrect header check",r.mode=30;break}if(8!=(15&g)){e.msg="unknown compression method",r.mode=30;break}if(y-=4,C=8+(15&(g>>>=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&g?10:12,y=g=0;break;case 2:for(;y<16;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(r.flags=g,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=g>>8&1),512&r.flags&&(L[0]=255&g,L[1]=g>>>8&255,r.check=s(r.check,L,2,0)),y=g=0,r.mode=3;case 3:for(;y<32;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}r.head&&(r.head.time=g),512&r.flags&&(L[0]=255&g,L[1]=g>>>8&255,L[2]=g>>>16&255,L[3]=g>>>24&255,r.check=s(r.check,L,4,0)),y=g=0,r.mode=4;case 4:for(;y<16;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}r.head&&(r.head.xflags=255&g,r.head.os=g>>8),512&r.flags&&(L[0]=255&g,L[1]=g>>>8&255,r.check=s(r.check,L,2,0)),y=g=0,r.mode=5;case 5:if(1024&r.flags){for(;y<16;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}r.length=g,r.head&&(r.head.extra_len=g),512&r.flags&&(L[0]=255&g,L[1]=g>>>8&255,r.check=s(r.check,L,2,0)),y=g=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,c,d,k,C)),512&r.flags&&(r.check=s(r.check,c,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=c[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,c,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=c[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,c,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(;y<16;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(g!==(65535&r.check)){e.msg="header crc mismatch",r.mode=30;break}y=g=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(;y<32;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}e.adler=r.check=l(g),y=g=0,r.mode=11;case 11:if(0===r.havedict)return e.next_out=f,e.avail_out=m,e.next_in=d,e.avail_in=p,r.hold=g,r.bits=y,2;e.adler=r.check=1,r.mode=12;case 12:if(5===t||6===t)break e;case 13:if(r.last){g>>>=7&y,y-=7&y,r.mode=27;break}for(;y<3;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}switch(r.last=1&g,y-=1,3&(g>>>=1)){case 0:r.mode=14;break;case 1:if(_(r),r.mode=20,6!==t)break;g>>>=2,y-=2;break e;case 2:r.mode=17;break;case 3:e.msg="invalid block type",r.mode=30}g>>>=2,y-=2;break;case 14:for(g>>>=7&y,y-=7&y;y<32;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if((65535&g)!=(g>>>16^65535)){e.msg="invalid stored block lengths",r.mode=30;break}if(r.length=65535&g,y=g=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(k=r.length){if(p<k&&(k=p),m<k&&(k=m),0===k)break e;n.arraySet(u,c,d,k,f),p-=k,d+=k,m-=k,f+=k,r.length-=k;break}r.mode=12;break;case 17:for(;y<14;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(r.nlen=257+(31&g),g>>>=5,y-=5,r.ndist=1+(31&g),g>>>=5,y-=5,r.ncode=4+(15&g),g>>>=4,y-=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(;y<3;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}r.lens[F[r.have++]]=7&g,g>>>=3,y-=3}for(;r.have<19;)r.lens[F[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,O={bits:r.lenbits},z=o(0,r.lens,0,19,r.lencode,0,r.work,O),r.lenbits=O.bits,z){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=(N=r.lencode[g&(1<<r.lenbits)-1])>>>16&255,P=65535&N,!((R=N>>>24)<=y);){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(P<16)g>>>=R,y-=R,r.lens[r.have++]=P;else{if(16===P){for(M=R+2;y<M;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(g>>>=R,y-=R,0===r.have){e.msg="invalid bit length repeat",r.mode=30;break}C=r.lens[r.have-1],k=3+(3&g),g>>>=2,y-=2}else if(17===P){for(M=R+3;y<M;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}y-=R,C=0,k=3+(7&(g>>>=R)),g>>>=3,y-=3}else{for(M=R+7;y<M;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}y-=R,C=0,k=11+(127&(g>>>=R)),g>>>=7,y-=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,O={bits:r.lenbits},z=o(1,r.lens,0,r.nlen,r.lencode,0,r.work,O),r.lenbits=O.bits,z){e.msg="invalid literal/lengths set",r.mode=30;break}if(r.distbits=6,r.distcode=r.distdyn,O={bits:r.distbits},z=o(2,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,O),r.distbits=O.bits,z){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<=m){e.next_out=f,e.avail_out=m,e.next_in=d,e.avail_in=p,r.hold=g,r.bits=y,a(e,b),f=e.next_out,u=e.output,m=e.avail_out,d=e.next_in,c=e.input,p=e.avail_in,g=r.hold,y=r.bits,12===r.mode&&(r.back=-1);break}for(r.back=0;S=(N=r.lencode[g&(1<<r.lenbits)-1])>>>16&255,P=65535&N,!((R=N>>>24)<=y);){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(S&&!(240&S)){for(I=R,T=S,A=P;S=(N=r.lencode[A+((g&(1<<I+T)-1)>>I)])>>>16&255,P=65535&N,!(I+(R=N>>>24)<=y);){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}g>>>=I,y-=I,r.back+=I}if(g>>>=R,y-=R,r.back+=R,r.length=P,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(M=r.extra;y<M;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}r.length+=g&(1<<r.extra)-1,g>>>=r.extra,y-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;S=(N=r.distcode[g&(1<<r.distbits)-1])>>>16&255,P=65535&N,!((R=N>>>24)<=y);){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(!(240&S)){for(I=R,T=S,A=P;S=(N=r.distcode[A+((g&(1<<I+T)-1)>>I)])>>>16&255,P=65535&N,!(I+(R=N>>>24)<=y);){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}g>>>=I,y-=I,r.back+=I}if(g>>>=R,y-=R,r.back+=R,64&S){e.msg="invalid distance code",r.mode=30;break}r.offset=P,r.extra=15&S,r.mode=24;case 24:if(r.extra){for(M=r.extra;y<M;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}r.offset+=g&(1<<r.extra)-1,g>>>=r.extra,y-=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===m)break e;if(k=b-m,r.offset>k){if((k=r.offset-k)>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=30;break}E=k>r.wnext?(k-=r.wnext,r.wsize-k):r.wnext-k,k>r.length&&(k=r.length),x=r.window}else x=u,E=f-r.offset,k=r.length;for(m<k&&(k=m),m-=k,r.length-=k;u[f++]=x[E++],--k;);0===r.length&&(r.mode=21);break;case 26:if(0===m)break e;u[f++]=r.length,m--,r.mode=21;break;case 27:if(r.wrap){for(;y<32;){if(0===p)break e;p--,g|=c[d++]<<y,y+=8}if(b-=m,e.total_out+=b,r.total+=b,b&&(e.adler=r.check=r.flags?s(r.check,u,b,f-b):i(r.check,u,b,f-b)),b=m,(r.flags?g:l(g))!==r.check){e.msg="incorrect data check",r.mode=30;break}y=g=0}r.mode=28;case 28:if(r.wrap&&r.flags){for(;y<32;){if(0===p)break e;p--,g+=c[d++]<<y,y+=8}if(g!==(4294967295&r.total)){e.msg="incorrect length check",r.mode=30;break}y=g=0}r.mode=29;case 29:z=1;break e;case 30:z=-3;break e;case 31:return-4;default:return h}return e.next_out=f,e.avail_out=m,e.next_in=d,e.avail_in=p,r.hold=g,r.bits=y,(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,u,b,e.next_out-b):i(r.check,u,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===z&&(z=-5),z)},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){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,c,u,d){var f,p,m,g,y,_,w,v,b,k=d.bits,E=0,x=0,R=0,S=0,P=0,I=0,T=0,A=0,C=0,z=0,O=null,M=0,N=new n.Buf16(16),L=new n.Buf16(16),F=null,B=0;for(E=0;E<=15;E++)N[E]=0;for(x=0;x<h;x++)N[t[r+x]]++;for(P=k,S=15;1<=S&&0===N[S];S--);if(S<P&&(P=S),0===S)return l[c++]=20971520,l[c++]=20971520,d.bits=1,0;for(R=1;R<S&&0===N[R];R++);for(P<R&&(P=R),E=A=1;E<=15;E++)if(A<<=1,(A-=N[E])<0)return-1;if(0<A&&(0===e||1!==S))return-1;for(L[1]=0,E=1;E<15;E++)L[E+1]=L[E]+N[E];for(x=0;x<h;x++)0!==t[r+x]&&(u[L[t[r+x]]++]=x);if(_=0===e?(O=F=u,19):1===e?(O=i,M-=257,F=s,B-=257,256):(O=a,F=o,-1),E=R,y=c,T=x=z=0,m=-1,g=(C=1<<(I=P))-1,1===e&&852<C||2===e&&592<C)return 1;for(;;){for(w=E-T,b=u[x]<_?(v=0,u[x]):u[x]>_?(v=F[B+u[x]],O[M+u[x]]):(v=96,0),f=1<<E-T,R=p=1<<I;l[y+(z>>T)+(p-=f)]=w<<24|v<<16|b,0!==p;);for(f=1<<E-1;z&f;)f>>=1;if(0!==f?(z&=f-1,z+=f):z=0,x++,0==--N[E]){if(E===S)break;E=t[r+u[x]]}if(P<E&&(z&g)!==m){for(0===T&&(T=P),y+=R,A=1<<(I=E-T);I+T<S&&!((A-=N[I+T])<=0);)I++,A<<=1;if(C+=1<<I,1===e&&852<C||2===e&&592<C)return 1;l[m=z&g]=P<<24|I<<16|y-c}}return 0!==z&&(l[y+z]=E-T<<24|64<<16),d.bits=P,0}},{"../utils/common":41}],51:[function(e,t,r){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){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],c=[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],u=[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 m=new Array(512);i(m);var g=new Array(256);i(g);var y=new Array(29);i(y);var _,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 E(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function x(e){return e<256?m[e]:m[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 P(e,t,r){S(e,r[2*t],r[2*t+1])}function I(e,t){for(var r=0;r|=1&e,e>>>=1,r<<=1,0<--t;);return r>>>1}function T(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]=I(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 z(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 O(e,t,r){for(var n=e.heap[r],i=r<<1;i<=e.heap_len&&(i<e.heap_len&&z(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!z(t,n,e.heap[i],e.depth));)e.heap[r]=e.heap[i],r=i,i<<=1;e.heap[r]=n}function M(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?P(e,i,t):(P(e,(a=g[i])+s+1,t),0!==(o=l[a])&&S(e,i-=y[a],o),P(e,a=x(--n),r),0!==(o=c[a])&&S(e,n-=b[a],o)),h<e.last_lit;);P(e,256,t)}function N(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,c=-1;for(e.heap_len=0,e.heap_max=573,r=0;r<l;r++)0!==s[2*r]?(e.heap[++e.heap_len]=c=r,e.depth[r]=0):s[2*r+1]=0;for(;e.heap_len<2;)s[2*(i=e.heap[++e.heap_len]=c<2?++c:0)]=1,e.depth[i]=0,e.opt_len--,o&&(e.static_len-=a[2*i+1]);for(t.max_code=c,r=e.heap_len>>1;1<=r;r--)O(e,s,r);for(i=l;r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],O(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++,O(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,c=t.max_code,u=t.stat_desc.static_tree,d=t.stat_desc.has_stree,f=t.stat_desc.extra_bits,p=t.stat_desc.extra_base,m=t.stat_desc.max_length,g=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++)m<(s=l[2*l[2*(n=e.heap[r])+1]+1]+1)&&(s=m,g++),l[2*n+1]=s,c<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*(u[2*n+1]+a)));if(0!==g){do{for(s=m-1;0===e.bl_count[s];)s--;e.bl_count[s]--,e.bl_count[s+1]+=2,e.bl_count[m]--,g-=2}while(0<g);for(s=m;0!==s;s--)for(n=e.bl_count[s];0!==n;)c<(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),T(s,c,e.bl_count)}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),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 F(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(;P(e,i,e.bl_tree),0!=--o;);else 0!==i?(i!==s&&(P(e,i,e.bl_tree),o--),P(e,16,e.bl_tree),S(e,o-3,2)):o<=10?(P(e,17,e.bl_tree),S(e,o-3,3)):(P(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 B=!1;function j(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){B||(function(){var e,t,r,n,i,s=new Array(16);for(n=r=0;n<28;n++)for(y[n]=r,e=0;e<1<<l[n];e++)g[r++]=n;for(g[r-1]=n,n=i=0;n<16;n++)for(b[n]=i,e=0;e<1<<c[n];e++)m[i++]=n;for(i>>=7;n<o;n++)for(b[n]=i<<7,e=0;e<1<<c[n]-7;e++)m[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(T(f,287,s),e=0;e<o;e++)p[2*e+1]=5,p[2*e]=I(e,5);_=new k(f,l,257,a,h),w=new k(p,c,0,o,h),v=new k(new Array(0),u,0,19,7)}(),B=!0),e.l_desc=new E(e.dyn_ltree,_),e.d_desc=new E(e.dyn_dtree,w),e.bl_desc=new E(e.bl_tree,v),e.bi_buf=0,e.bi_valid=0,A(e)},r._tr_stored_block=j,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)),N(e,e.l_desc),N(e,e.d_desc),o=function(e){var t;for(L(e,e.dyn_ltree,e.l_desc.max_code),L(e,e.dyn_dtree,e.d_desc.max_code),N(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?j(e,t,r,n):4===e.strategy||a===i?(S(e,2+(n?1:0),3),M(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);F(e,e.dyn_ltree,t-1),F(e,e.dyn_dtree,r-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,o+1),M(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*(g[r]+s+1)]++,e.dyn_dtree[2*x(t)]++),e.last_lit===e.lit_bufsize-1},r._tr_align=function(e){S(e,2,3),P(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){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){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(){u(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){u(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(){u(e),t.onreadystatechange=null,r.removeChild(t),t=null},r.appendChild(t)}):function(e){setTimeout(u,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=c}function c(e){delete a[e]}function u(e){if(o)setTimeout(u,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{c(e),o=!1}}}}function d(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(i)&&u(+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})},r.r({});class n{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 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{constructor(){}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 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 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 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)]]}static withDefaults(e,t){let r={...t};for(let n in t)n in e&&(r[n]=e[n]);return r}}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){this.it=e,this.disposed=!1}async next(...e){return this.disposed?{value:void 0,done:!0}:await this.it.next(...e)}async return(e){return this.disposed=!0,"function"==typeof this.it.return?await this.it.return(e):{value:e,done:!0}}async throw(e){if("function"==typeof this.it.throw)return this.it.throw(e);throw e}[Symbol.asyncIterator](){return this}async[Symbol.asyncDispose](){this.disposed||this.return?.()}[Symbol.toStringTag]="AsyncIteratorHelper";drop(e){const t=this;return V.wrapAsync(async function*(){let r=0;for await(const n of t)r++<e||(yield n)}())}take(e){const t=this;return V.wrapAsync(async function*(){if(e<=0)return;let r=0;for await(const n of t)if(yield n,++r>=e)break}())}map(e){const t=this;return V.wrapAsync(async function*(){let r=0;for await(const n of t)yield e(n,r++)}())}mapAsync(e){const t=this;return V.wrapAsync(async function*(){let r=0;for await(const n of t)yield await e(n,r++)}())}filter(e){const t=this;return V.wrapAsync(async function*(){let r=0;for await(const n of t)e(n,r++)&&(yield n)}())}filterAsync(e){const t=this;return V.wrapAsync(async function*(){let r=0;for await(const n of t)await e(n,r++)&&(yield n)}())}flatMapAsync(e){const t=this;return V.wrapAsync(async function*(){let r=0;for await(const n of t){const t=e(n,r++),i="function"==typeof t[Symbol.iterator]?t:new h(t);for await(const e of i)yield e}}())}async toArray(){const e=[];for await(const t of this)e.push(t);return e}async forEach(e){let t=0;for await(const r of this)e(r,t++)}async forEachAsync(e,t=!1){let r=0;if(t){let t=[];for await(const n of this)t.push(e(n,r++));await Promise.all(t)}else for await(const t of this)await e(t,r++)}async reduce(e,t){let r,n=0;if(void 0===t){let e=await this.next();if(e.done)throw new TypeError("Reduce of empty iterator with no initial value");r=e.value}else r=t;for await(const t of this)r=e(r,t,n++);return r}async reduceAsync(e,t){let r,n=0;const i=this[Symbol.asyncIterator]();if(void 0===t){let e=await i.next();if(e.done)throw new TypeError("Reduce of empty iterator with no initial value");r=e.value}else r=t;for await(const t of i)r=await e(r,t,n++);return r}async find(e){let t=0;for await(const r of this)if(e(r,t++))return r}async findAsync(e){let t=0;for await(const r of this)if(await e(r,t++))return r}async every(e){let t=0;for await(const r of this)if(!e(r,t++))return!1;return!0}async everyAsync(e){let t=0;for await(const r of this)if(!await e(r,t++))return!1;return!0}async some(e){let t=0;for await(const r of this)if(e(r,t++))return!0;return!1}async someAsync(e){let t=0;for await(const r of this)if(await e(r,t++))return!0;return!1}}class l{disposed=!1;constructor(e){this.it=e}next(...e){return this.disposed?{value:void 0,done:!0}:this.it.next(...e)}return(e){return this.disposed=!0,"function"==typeof this.it.return?this.it.return(e):{value:e,done:!0}}throw(e){if("function"==typeof this.it.throw)return this.it.throw(e);throw e}[Symbol.iterator](){return this}[Symbol.dispose](){this.disposed||this.return?.()}[Symbol.toStringTag]="IteratorHelper";drop(e){const t=this;return V.wrap(function*(){let r=0;for(const n of t)r++<e||(yield n)}())}take(e){const t=this;return V.wrap(function*(){if(e<=0)return;let r=0;for(const n of t)if(yield n,++r>=e)break}())}map(e){const t=this;return V.wrap(function*(){let r=0;for(const n of t)yield e(n,r++)}())}filter(e){const t=this;return V.wrap(function*(){let r=0;for(const n of t)e(n,r++)&&(yield n)}())}flatMap(e){const t=this;return V.wrap(function*(){let r=0;for(const n of t){const t=e(n,r++),i="function"==typeof t[Symbol.iterator]?t:new l(t);for(const e of i)yield e}}())}toArray(){const e=[];for(const t of this)e.push(t);return e}forEach(e){let t=0;for(const r of this)e(r,t++)}reduce(e,t){let r,n=0;const i=this[Symbol.iterator]();if(void 0===t){let e=i.next();if(e.done)throw new TypeError("Reduce of empty iterator with no initial value");r=e.value}else r=t;for(const t of i)r=e(r,t,n++);return r}find(e){let t=0;for(const r of this)if(e(r,t++))return r}every(e){let t=0;for(const r of this)if(!e(r,t++))return!1;return!0}some(e){let t=0;for(const r of this)if(e(r,t++))return!0;return!1}mapAsync(e){const t=this;return V.wrapAsync(async function*(){let r=0;for(const n of t)yield await e(n,r++)}())}filterAsync(e){const t=this;return V.wrapAsync(async function*(){let r=0;for(const n of t)await e(n,r++)&&(yield n)}())}flatMapAsync(e){const t=this;return V.wrapAsync(async function*(){let r=0;for(const n of t){const t=e(n,r++),i="function"==typeof t[Symbol.iterator]?t:new h(t);for await(const e of i)yield e}}())}async forEachAsync(e,t=!1){let r=0;if(t){let t=[];for(const n of this)t.push(e(n,r++));await Promise.all(t)}else for(const t of this)await e(t,r++)}async reduceAsync(e,t){let r,n=0;if(void 0===t){let e=this.next();if(e.done)throw new TypeError("Reduce of empty iterator with no initial value");r=e.value}else r=t;for(const t of this)r=await e(r,t,n++);return r}async findAsync(e){let t=0;for(const r of this)if(await e(r,t++))return r}async everyAsync(e){let t=0;for(const r of this)if(!await e(r,t++))return!1;return!0}async someAsync(e){let t=0;for(const r of this)if(await e(r,t++))return!0;return!1}makeAsync(){return V.makeAsync(this)}}class c{constructor(e,t){this.rpack=e,this.connectedHost=null,this.localInstance=t}getRPack(){return this.rpack}async createEmbeddedHost(){this.connectedHost&&await this.connectedHost.host.disconnect(),this.connectedHost=null;let e=await this.rpack.getPlatform().createEmbeddedHost(),t=a.generateString(a.ALPHANUMERIC,128),r=await e.messenger.sendNoncePacket("host:hello_request",{name:"Unknown",secret:t}).expectResponse("host:hello_response",void 0,this.rpack);return this.connectedHost={host:e.host,clientId:r.clientId,messenger:e.messenger},e.host}getClientId(){return this.connectedHost?.clientId}getHost(){return this.rpack.isHost()?this.localInstance:this.connectedHost?.host}async disconnect(){return this.connectedHost?.host.disconnect()}}class u{static PERM_PART_SEPARATOR=".";static PERM_ANY_DIRECT_CHILD="*";static PERM_ANY_CHILD="**";constructor(e){this.rpack=e;let t=e.getEnvironment();t.isPluginThread()||(t.isHost()?this.clientPermissions=new Map:t.isClient()&&(this.hostPermissions=new d))}getRPack(){return this.rpack}combineParts(e,t){return e.length>0?e+"."+t:t}checkEntry(e,t){let r,n,i="",s="",a=t.split(u.PERM_PART_SEPARATOR);for(let t=0;t<a.length;t++){let o=a[t],h=t==a.length-1;if(s=this.combineParts(i,o),r=this.combineParts(i,u.PERM_ANY_DIRECT_CHILD),n=this.combineParts(i,u.PERM_ANY_CHILD),e.deniedPermissions.has(s))return!1;if(e.grantedPermissions.has(s))return!0;if(h&&e.deniedPermissions.has(r))return!1;if(h&&e.grantedPermissions.has(r))return!0;if(e.deniedPermissions.has(n))return!1;if(e.grantedPermissions.has(n))return!0;i=s}return!1}async checkPermission(e,t){return t.isLocal()?this.checkLocalThreadPermission(e,t.getThreadId()):t.isHost()?this.checkRemoteHostPermission(e,t.getThreadId()):this.checkRemoteClientPermission(e,t.getClientId(),t.getThreadId())}async checkRemoteHostPermission(e,t){let r=this.rpack.getEnvironment();return r.isPluginThread()?this.checkRemotePermissions({type:"host",perm:e}):!!r.isHost()||!!this.checkEntry(this.hostPermissions,e)}async checkRemoteClientPermission(e,t,r){let n=this.rpack.getEnvironment();if(!n.isHost())return!0;if(n.isPluginThread())return this.checkRemotePermissions({type:"client",perm:e,clientId:t,threadId:r});let i=this.clientPermissions.get(t);return void 0!==i&&!!this.checkEntry(i,e)}async checkLocalThreadPermission(e,t){if(this.rpack.getEnvironment().isPluginThread())return this.checkRemotePermissions({type:"local",perm:e,threadId:t});let r=this.threadPermissions.get(t);return void 0!==r&&this.checkEntry(r,e)}async checkRemotePermissions(e){let t=this.rpack.getEnvironment().getCoreMessenger();return(await t.sendNoncePacket("permission:check_permission_request",e).expect("permission:check_permission_response")).granted}__handlePackets(e){e.addHandler("permission:check_permission_request",async t=>{let r;switch(t.type){case"local":r=this.checkLocalThreadPermission(t.perm,t.threadId);break;case"host":r=this.checkRemoteHostPermission(t.perm,t.threadId);break;case"client":r=this.checkRemoteClientPermission(t.perm,t.clientId,t.threadId)}e.sendPacket({id:"permission:check_permission_response",nonce:t.nonce,granted:await r})})}}class d{constructor(){this.grantedPermissions=new Set,this.deniedPermissions=new Set}}class f{constructor(e){this.id=e}}class p{static MANIFEST_PATH="manifest.json";constructor(){this.map=new Map,this.manifest=null}detectMimeType(e){switch(e.toLowerCase().split(".").pop()){case"js":return"application/javascript";case"png":return"image/png";case"svg":return"image/svg+xml";default:return"application/octet-stream"}}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(p.MANIFEST_PATH),t=JSON.parse((new TextDecoder).decode(await e.arrayBuffer()));return this.manifest=t,t}}class m{static __VERY_VERY_SECRET_FIELD_THAT_IDENTIFIES_THAT_THIS_WANTS_TO_BE_A_RPPLUGIN_INSTANCE="avocado";getRPack(){return this.rpack}async onInit(){}async onInitClient(){}async onInitHost(){}async onShutdown(){}static __setInstance(e,t){void 0===e.rpack&&(e.rpack=t)}}let g;(g||(g={})).isSubclass=function(e,t){return t.prototype.isPrototypeOf(e.prototype)};const y=g;let _=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===_)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[_]}static getFunctions(e){return this.isProxy(e)?e[w]:[]}}class b{get(e,t,r){let n=e[t];return"function"==typeof n?(...r)=>Promise.resolve(e[t](...r)):n}}class k extends Map{constructor(e){if(e){let t=[];for(const[r,n]of e)t.push([JSON.stringify(r),n]);super(t)}else super()}transform(e){return JSON.stringify(e)}untransform(e){return JSON.parse(e)}set(e,t){return super.set(this.transform(e),t)}get(e){return super.get(this.transform(e))}has(e){return super.has(this.transform(e))}delete(e){return super.delete(this.transform(e))}entries(){return new l(super.entries()).map(e=>[this.untransform(e[0]),e[1]])}keys(){return new l(super.keys()).map(e=>this.untransform(e))}[Symbol.iterator](){return this.entries()}forEach(e,t){for(const[r,n]of this.entries())e.call(t,n,r,this)}}class E{constructor(e,t,r,n){this.manager=e,this.options=n,this.remoteThread=t,this.registryId=r,this.localEntries=new k,this.cachedEntries=new k}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)?Promise.resolve(this.localEntries.get(e).data):this.getRemote().requestGet(this.registryId,null,e)}getEntry(e){return this.localEntries.has(e)?Promise.resolve(this.localEntries.get(e)):this.getRemote().requestGetEntry(this.registryId,null,e)}getAllEntries(e){return this.getRemote().requestGetAllEntries(this.registryId,null,e)}getAll(e){return this.getRemote().requestGetAll(this.registryId,null,e)}has(e){return this.getRemote().requestHas(this.registryId,null,e)}async set(e,t){let r=await this.getRemote().requestSet(this.registryId,null,e,t);return this.__localSet(r,this.getRegistryManager().getRPack().getThreadManager().getCurrentThread(),t),r}remove(e){return this.getRemote().requestRemove(this.registryId,null,e)}size(){return this.getRemote().requestSize(this.registryId,null)}clear(){return this.getRemote().requestClear(this.registryId,null)}onAdd(){throw new Error("Method not implemented.")}onChange(){throw new Error("Method not implemented.")}onRemove(){throw new Error("Method not implemented.")}onClear(){throw new Error("Method not implemented.")}__forwardSet(e,t,r){return this.getRemote().requestSet(this.registryId,t,e,r)}__forwardRemove(e,t){return this.getRemote().requestRemove(this.registryId,t,e)}__localSet(e,t,r){return!(this.localEntries.has(e)&&this.localEntries.get(e).ownerThread!==t||(this.options.localsAreProxied&&!v.isProxy(r)&&"object"==typeof r&&(r=new Proxy(r,new b)),this.localEntries.set(e,{key:e,ownerThread:t,data:r}),0))}__localGet(e){return this.localEntries.get(e)?.data}__localCacheGet(e,t){if(!this.options.remotesAreCached)throw new Error("Caching remote objects is disabled for this registry");if(this.cachedEntries.has(e))return this.cachedEntries.get(e);let r=t();return this.cachedEntries.set(e,r),r}}const x={localsAreProxied:!0,remotesAreCached:!1},R={...x};class S{constructor(e,t){this.manager=e,this.options=t,this.publicOptions=s.withDefaults(t,x),this.registryId=null,this.map=new k}getRegistryManager(){return this.manager}getRegistryId(){return this.registryId}__assignRegistryId(e){if(null!==this.registryId)throw new Error("Cannot reassign registry ID");this.registryId=e}getOptions(){return this.publicOptions}getAll(e){return void 0!==e?V.wrap(this.map.values()).filter(t=>t.ownerThread===e).map(e=>e.data).makeAsync():V.makeAsync(this.map.values()).map(e=>e.data)}getAllEntries(e){return void 0!==e?V.wrap(this.map.values()).filter(t=>t.ownerThread===e).makeAsync():V.makeAsync(this.map.values())}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 set(e,t){let r=this.manager.getRPack().getThreadManager().getCurrentThread();return this.__localAdd(e,r,t)}async remove(e){return this.map.delete(e)}async size(){return this.map.size}clear(){throw new Error("Method not implemented.")}onAdd(){throw new Error("Method not implemented.")}onChange(){throw new Error("Method not implemented.")}onRemove(){throw new Error("Method not implemented.")}onClear(){throw new Error("Method not implemented.")}async __localAdd(e,t,r){let n=await this.options.keyMapper(e,t);if(this.map.has(n)&&this.map.get(n).ownerThread!==t)throw new Error("Cannot override value from another thread!");return this.options.localsAreProxied&&!v.isProxy(r)&&"object"==typeof r&&(r=new Proxy(r,new b)),this.map.set(n,{key:n,ownerThread:t,data:r}),n}__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}async __localClear(e){if(!await this.options.permissions.clear(this,e))throw new Error("No permission");for(let[t,r]of this.map)r.ownerThread===e&&this.map.delete(t)}__removeAll(e){for(let[t,r]of this.map)r.ownerThread===e&&this.map.delete(t)}}class P{constructor(e,t,r){this.parent=e,this.remoteThread=t,this.messenger=r,r.addHandler("registry:set_request",this.onSet.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_request",this.onGetAll.bind(this))}getCurrentThread(){return this.parent.getRPack().getThreadManager().getCurrentThread()}deserializeExecutingThread(e){return null===e?this.getCurrentThread():this.getThread(e)}serializeExecutingThread(e){return(e??this.getCurrentThread()).serialize()}getThread(e){return this.parent.getRPack().getThreadManager().getThread(e)}getRemote(){return this.parent.getRPack().getProxyManager().getRemote(this.remoteThread)}serialize(e,t){return this.parent.getRPack().getSerializationManager().serialize(this.remoteThread,e,t)}deserialize(e){return this.parent.getRPack().getSerializationManager().deserialize(this.remoteThread,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 onSet(e){let t=await this.parent.getRegistry(e.registryId);if(void 0===t)return void this.sendErrorRaw("registry:set_response",e.nonce,"Unknown registry "+e.registryId);let r=this.deserializeExecutingThread(e.executingThread);if(r!==this.remoteThread&&this.remoteThread.isPluginThread())return void this.sendErrorRaw("registry:set_response",e.nonce,"Non-core threads cannot forward registry requests");let n=this.deserialize(e.value);if(t instanceof E)t.__forwardSet(e.key,r,n).then(t=>{this.messenger.sendPacket({id:"registry:set_response",nonce:e.nonce,value:t})},t=>{this.sendError("registry:set_response",e.nonce,t)});else if(t instanceof S){let i=await t.__localAdd(e.key,r,n);this.messenger.sendPacket({id:"registry:set_response",nonce:e.nonce,value:i})}else this.sendErrorRaw("registry:set_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=this.deserializeExecutingThread(e.executingThread);if(r!==this.remoteThread&&this.remoteThread.isPluginThread())this.sendErrorRaw("registry:remove_response",e.nonce,"Non-core threads cannot forward registry requests");else if(t instanceof E)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 S){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)}async onSize(e){let t=await this.parent.getRegistry(e.registryId);if(void 0!==t)return this.deserializeExecutingThread(e.executingThread)!==this.remoteThread&&this.remoteThread.isPluginThread()?void this.sendErrorRaw("registry:set_response",e.nonce,"Non-core threads cannot forward registry requests"):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 this.deserializeExecutingThread(e.executingThread)!==this.remoteThread&&this.remoteThread.isPluginThread()?void this.sendErrorRaw("registry:set_response",e.nonce,"Non-core threads cannot forward registry requests"):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 this.deserializeExecutingThread(e.executingThread)!==this.remoteThread&&this.remoteThread.isPluginThread()?void this.sendErrorRaw("registry:set_response",e.nonce,"Non-core threads cannot forward registry requests"):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.serialize(),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);if(this.deserializeExecutingThread(e.executingThread)!==this.remoteThread&&this.remoteThread.isPluginThread())return void this.sendErrorRaw("registry:set_response",e.nonce,"Non-core threads cannot forward registry requests");let r=this.getRemote(),n=null===e.filterThread?void 0:this.getThread(e.filterThread),i=t.getAllEntries(n),s=r.declareLocalAsyncIterator(i);this.messenger.sendPacket({id:"registry:get_all_entries_response",nonce:e.nonce,iteratorKey:s})}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);if(this.deserializeExecutingThread(e.executingThread)!==this.remoteThread&&this.remoteThread.isPluginThread())return void this.sendErrorRaw("registry:set_response",e.nonce,"Non-core threads cannot forward registry requests");let r=this.getRemote(),n=null===e.ownerThread?void 0:this.getThread(e.ownerThread),i=t.getAll(n),s=r.declareLocalAsyncIterator(i);this.messenger.sendPacket({id:"registry:get_all_response",nonce:e.nonce,iteratorKey:s})}async requestSet(e,t,r,n){let i=await this.messenger.sendPacketWithNoncePromise("registry:set_request",{registryId:e,executingThread:this.serializeExecutingThread(t),key:r,value:this.serialize(n,{objectMode:"registry"})},"registry:set_response");if(i.error)throw this.deserialize(i.error);return i.value}async requestHas(e,t,r){let n=await this.messenger.sendPacketWithNoncePromise("registry:has_request",{registryId:e,executingThread:this.serializeExecutingThread(t),key:r},"registry:has_response");if(n.error)throw this.deserialize(n.error);return n.value}async requestRemove(e,t,r){let n=await this.messenger.sendPacketWithNoncePromise("registry:remove_request",{registryId:e,executingThread:this.serializeExecutingThread(t),key:r},"registry:remove_response");if(n.error)throw this.deserialize(n.error);return n.value}async requestSize(e,t){let r=await this.messenger.sendPacketWithNoncePromise("registry:size_request",{registryId:e,executingThread:this.serializeExecutingThread(t)},"registry:size_response");if(r.error)throw this.deserialize(r.error);return r.value}async requestClear(e,t,r){let n=await this.messenger.sendPacketWithNoncePromise("registry:clear_request",{registryId:e,executingThread:this.serializeExecutingThread(t),filterThread:void 0===r?null:r.serialize()},"registry:clear_response");if(n.error)throw this.deserialize(n.error)}async requestGet(e,t,r){let n=await this.messenger.sendPacketWithNoncePromise("registry:get_request",{registryId:e,executingThread:this.serializeExecutingThread(t),key:r},"registry:get_response");if(n.error)throw this.deserialize(n.error);if(null!=n.value)return this.deserialize(n.value)}async requestGetEntry(e,t,r){let n=await this.messenger.sendPacketWithNoncePromise("registry:get_entry_request",{registryId:e,executingThread:this.serializeExecutingThread(t),key:r},"registry:get_entry_response");if(n.error)throw this.deserialize(n.error);if(null!=n.value)return{key:this.deserialize(n.value.key),ownerThread:this.getThread(n.value.ownerThread),data:this.deserialize(n.value.data)}}requestGetAllEntries(e,t,r){let i=this.getRemote(),s=new n(i,async()=>{const n=await this.messenger.sendPacketWithNoncePromise("registry:get_all_entries_request",{registryId:e,executingThread:this.serializeExecutingThread(t),filterThread:void 0===r?null:r.serialize()},"registry:get_all_entries_response");if(n.error)throw this.deserialize(n.error);let a=n.iteratorKey;return i.declareRemoteIterator(a,s),a});return s}requestGetAll(e,t,r){let i=this.getRemote(),s=new n(i,async()=>{const n=await this.messenger.sendPacketWithNoncePromise("registry:get_all_request",{registryId:e,executingThread:this.serializeExecutingThread(t),ownerThread:void 0===r?null:r.serialize()},"registry:get_all_response");if(n.error)throw this.deserialize(n.error);let a=n.iteratorKey;return i.declareRemoteIterator(a,s),a});return s}}class I{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(I.META_REGISTRY_ID,{localsAreProxied:!1,remotesAreCached:!0},!0)}permissionMap(e){return"function"==typeof e?e:"boolean"==typeof e?e?async()=>!0:async(e,t)=>!(!t.isCoreThread()||!t.isLocal())||t.isCurrent():async(t,r)=>this.rpack.getPermissionManager().checkPermission(e,r)}createLocalMapRegistry(e){let t={...x,keyMapper:async e=>e,...e,permissions:{set:this.permissionMap(e?.permissions?.set??!0),override:this.permissionMap(e?.permissions?.override??!1),remove:this.permissionMap(e?.permissions?.remove??!0),get:this.permissionMap(e?.permissions?.get??!0),clear:this.permissionMap(e?.permissions?.clear??!1),iterate:this.permissionMap(e?.permissions?.iterate??!0),listen:this.permissionMap(e?.permissions?.listen??!0)}};return new S(this,t)}async createMapRegistry(e,t){let r=this.createLocalMapRegistry(t),n=await this.metaRegistry.set(e,r);if(r.__assignRegistryId(n),n)return r;throw new Error("Failed to create registry "+e)}__createInternalRegistry(e,t,r=!1){if(this.rpack.isPluginThread()){let n,i=new E(this,this.getRPack().getThreadManager().getLocalCoreThread(),e,s.withDefaults(t,x));return n=r?i:this.metaRegistry,n.__localCacheGet(e,()=>i),i}{let n,i=this.createLocalMapRegistry(t);return n=r?i:this.metaRegistry,n.set(e,i).then(),i}}getRPack(){return this.rpack}getRegistry(e){return this.metaRegistry.get(e)}__getRemote(e){return this.remotes.get(e)}__createRemote(e,t){let r=new P(this,e,t);return this.remotes.set(e,r),r}__deserializeRegistry(e,t,r){if(this.metaRegistry instanceof S){let t=this.metaRegistry.__localGet(e);if(void 0!==t)return t;throw new Error(`Referenced registry '${e}' not found`)}if(this.metaRegistry instanceof E)return this.metaRegistry.__localCacheGet(e,()=>new E(this,t,e,r));throw new Error("Weird registry type: "+this.metaRegistry.constructor.name)}}class T{static deserializeStatic(e){let t=e.type;switch(e.type){case"undefined":return;case"json":return e.value;case"error":let r;switch(e.errorType){case"Error":r=new Error;break;case"EvalError":r=new EvalError;break;case"RangeError":r=new RangeError;break;case"ReferenceError":r=new ReferenceError;break;case"SyntaxError":r=new SyntaxError;break;case"TypeError":r=new TypeError;break;case"URIError":r=new URIError}return r.name=e.name,r.message=e.message,r.stack=e.stack,r;default:throw new Error("Failed to deserialize unknown static type: "+t)}}}class A{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,i)),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)}addResponsePromiseNonceHandler(e,t,r){return this.promiseHandlerImpl(this.getHandlerList(e),(e,r,n)=>{if(e.nonce==t)return e.error?n(e.error):r(e.value),!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){try{this.sender(e)}catch(t){throw console.error("Failed to send packet with error",e,t),t}}sendNoncePacket(e,t){let r=a.generateNonce();return this.sendPacket({...t,id:e,nonce:r}),new C(this,r)}sendPacketWithNoncePromise(e,t,r,n){let i=a.generateNonce(),s=this.addPromiseNonceHandler(r,i,n);return this.sendPacket({...t,id:e,nonce:i}),s}sendResponseValue(e,t,r){this.sendPacket({id:e,nonce:t,value:r})}sendResponseError(e,t,r){this.sendPacket({id:e,nonce:t,error:r})}static cast(e){return e}static filterTransferable(e,t,r){for(let n of Object.values(r))t(n)?e.push(n):null!==n&&"object"==typeof n&&this.filterTransferable(e,t,n)}static transferableSend(e,t){let r=new A(r=>{let n=[];this.filterTransferable(n,e,r),t.postMessage(r,{transfer:n})});return t.onmessage=e=>r.receivePacket(e.data),r}static websocket(e){let t=new A(t=>{e.send(JSON.stringify(t))});return e.onmessage=e=>{t.receivePacket(JSON.parse(e.data))},t}}class C{constructor(e,t){this.messenger=e,this.nonce=t}expect(e,t){return this.messenger.addPromiseNonceHandler(e,this.nonce,t)}expectResponse(e,t,r,n){try{return this.messenger.addResponsePromiseNonceHandler(e,this.nonce,t)}catch(e){throw r&&e instanceof Error?n?r.getSerializationManager().deserialize(n,e):T.deserializeStatic(e):e}}}class z{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;if(null==this.lastBatch&&(this.lastBatch=await this.supplier(),this.lastIndex=0),0===this.lastBatch.values.length)return this.lastBatch=null,this.result={done:!0,value:void 0},this.result;let e=this.lastBatch.values[this.lastIndex];if(this.lastIndex++,this.lastIndex>=this.lastBatch.values.length){let e=this.lastBatch;this.lastBatch=null,e.done&&(this.result={done:!0,value:void 0})}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 O{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 A(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).then()}),t.addHandler("override_update",e=>{this.parent.getRPack().getPlatform().restart()}),e.onclose=()=>{console.log("Disconnected from dev server's websocket on port "+this.port),this.remove()},e.onopen=()=>{t.sendPacket({id:"hello_request_rpack",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}}async isConnected(){if(void 0!==this.socket&&this.socket.readyState!==WebSocket.CLOSED)return!0;try{return await this.getManifest(),!0}catch{return!1}}async getManifest(){let e=await(await fetch("http://localhost:"+this.port+"/rpack_dev_server")).json();if(e.rpackDevServer)return e;throw new Error("Invalid manifest")}getAllPlugins(){return new z(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(),this.parent.removeServer(this)}}var M=r(710),N=r.n(M);class L extends p{constructor(e){super(),this.zip=e}async resolveEntry(e){let t=this.zip.file(e);if(null===t)return null;let r=await t.async("blob");return r.slice(0,r.size,this.detectMimeType(e))}async getEntries(){return Object.keys(this.zip.files)}}class F{static NATURAL_COLLATOR=new Intl.Collator(void 0,{numeric:!0});constructor(){}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 diff(e,t,r=(e,t)=>e==t){let n=[],i=[];for(let i of t){let t=!1;for(let n of e)if(r(i,n)){t=!0;break}t||n.push(i)}for(let n of e){let e=!1;for(let i of t)if(r(i,n)){e=!0;break}e||i.push(n)}return{added:n,removed:i}}static async fromAsync(e){const t=[];for await(const r of e)t.push(r);return t}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 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}}class B{static RATE_MULTIPLIER=6e4;static DEFAULT_PORT_RANGES=[[14287,14296]];constructor(e,t,r){this.rpack=e,this.portRanges=t,this.lastFoundServer=null,this.autoScanRate=r*B.RATE_MULTIPLIER,this.currentScanPromise=null,this.autoScanTimeout=r>0?setTimeout(()=>this.performScan(),100):null,this.focusHandler=()=>{this.performScan().then()},e.getPlatform().addWindowFocusHandler(this.focusHandler)}async performScan(){if(this.currentScanPromise)return null;clearTimeout(this.autoScanTimeout),this.autoScanTimeout=null,this.currentScanPromise=this.__actualScan();let e=await this.currentScanPromise;return this.currentScanPromise=null,this.autoScanRate>0&&(this.autoScanTimeout=setTimeout(()=>this.performScan(),this.autoScanRate)),e}async __actualScan(){if(null!==this.lastFoundServer){if(await this.lastFoundServer.isConnected())return this.lastFoundServer;{let e=this.lastFoundServer;this.lastFoundServer=null,e.remove()}}let e=await this.scanPorts();if(null!==e){let t=new O(this,e.port,e.manifest);this.lastFoundServer=t,t.init();let r=await F.fromAsync(t.getAllPlugins());for(let e of r)await this.reloadPlugin(e.groupId,e.pluginId)}return this.lastFoundServer}async scanPorts(){let e=[];for(let[t,r]of this.portRanges)for(let n=t;n<=r;n++){if(e.includes(n))continue;e.push(n);let t=await fetch("http://localhost:"+n+"/rpack_dev_server").then(e=>e.json()).then(e=>e.rpackDevServer?{port:n,manifest:e}:null,()=>null);if(null!==t)return t}return null}getRPack(){return this.rpack}getSourceId(){throw new Error("Method not implemented.")}remove(){this.lastFoundServer&&this.removeServer(this.lastFoundServer),this.getRPack().getPlatform().removeWindowFocusHandler(this.focusHandler)}setAutoScanRate(e){this.autoScanRate=e*B.RATE_MULTIPLIER,null!==this.autoScanTimeout&&clearTimeout(this.autoScanTimeout),this.autoScanRate>0&&(this.autoScanTimeout=setTimeout(()=>this.performScan(),this.autoScanRate))}async reloadPlugin(e,t){if(void 0!==await this.rpack.getPlugin(t))return;console.log("Reloading plugin "+e+":"+t);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.getThreadManager().__createThread(e+":"+t,s)}async*getAllPlugins(){null!==this.lastFoundServer&&(yield*this.lastFoundServer.getAllPlugins())}async getPlugin(e,t,r){return await(this.lastFoundServer?.getPlugin(e,t))??null}async getPluginArchive(e,t,r){let n=await(this.lastFoundServer?.getPluginArchive(e,t));if(null!=n){let e=await N().loadAsync(n);return new L(e)}throw new Error("Plugin not found")}removeServer(e){this.lastFoundServer===e&&(this.lastFoundServer=null,e.remove(),this.performScan().then())}}class j{constructor(e){this.rpack=e,this.pluginRegistry=e.getRegistryManager().__createInternalRegistry(I.PLUGIN_REGISTRY_ID,{localsAreProxied:!0}),this.currentPlugin=null,e.isPluginThread()||(this.sources=[],this.sources.push(new B(e,B.DEFAULT_PORT_RANGES,1)))}getRPack(){return this.rpack}async findPlugin(e,t){if(this.rpack.isPluginThread())throw new Error("Plugins cannot search for other plugins");for(let r of this.sources){let n=await r.getPlugin(e,t);if(n)return n}return null}loadPlugin(e){if(this.rpack.isPluginThread())throw new Error("Plugins cannot load other plugins");throw new Error("Not implemented")}async __handlePluginLoad(e,t){if(!this.rpack.isPluginThread())throw new Error("Cannot load a plugin in the core thread!");if(null!==this.currentPlugin)throw new Error("A plugin has already loaded!");let r=e.groupId+":"+e.pluginId,n=await import(t);if(!("default"in n))throw new Error("Failed to import plugin "+r+": no default export");let i=n.default;if("function"!=typeof i)throw new Error("Failed to import plugin "+r+": default export is not a class");if(i.length>0)throw new Error("Failed to import plugin "+r+": default export's constructor expects arguments (should be empty)");if(!y.isSubclass(i,m)){if(i.__VERY_VERY_SECRET_FIELD_THAT_IDENTIFIES_THAT_THIS_WANTS_TO_BE_A_RPPLUGIN_INSTANCE)throw new Error("Failed to import plugin "+r+': default export is not a subclass of RPPlugin, but it seems like a RPPlugin class. Did you forget to add rPack as an external library? In your webpack config (or similar bundler configuration):\n{\n ...,\n "externals": {\n "@rpack-dev/core": "RPack"\n }\n}');throw new Error("Failed to import plugin "+r+": default export is not a subclass of RPPlugin")}let s=new i;this.currentPlugin={plugin:s,manifest:e},m.__setInstance(s,this.rpack),await s.onInit(),this.rpack.getEnvironment().isHost()?await s.onInitHost():await s.onInitClient(),await this.pluginRegistry.set(r,s)}async __waitForPluginShutdown(){null!==this.currentPlugin&&await this.currentPlugin.plugin.onShutdown()}getPluginRegistry(){return this.pluginRegistry}getPlugin(e){return this.pluginRegistry.get(e)}}class D{constructor(e,t,r){this.remote=e,this.functionKey=t,this.length=r}apply(e,t,r){return this.remote.requestRemoteFunction(this.functionKey,r)}get(e,t){return"length"===t?this.length:e[t]}static fromFunction(e,t){return new D(e,t.functionKey,t.length)}}class U{constructor(e){this.rpack=e,this.wellKnownMap=new Map,this.wellKnownReverseMap=new Map,this.mapWellKnown("RPack",e),this.mapWellKnown("NetworkManager",e.getSerializationManager()),this.mapWellKnown("ProxyManager",e.getProxyManager()),this.mapWellKnown("RegistryManager",e.getRegistryManager())}mapWellKnown(e,t){this.wellKnownMap.set(t,{type:"well_known",kind:e}),this.wellKnownReverseMap.set(e,t)}getRPack(){return this.rpack}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 S||t instanceof E)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),length:t.length};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_data",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"registry":return this.rpack.getRegistryManager().__deserializeRegistry(t.registryId,e,t.options);case"registry_data":return new Proxy({},v.fromRegistryEntry(r,t));case"object":return new Proxy({},v.fromObject(r,t));case"function":return new Proxy(async()=>null,D.fromFunction(r,t));case"well_known":return this.wellKnownReverseMap.get(t.kind);case"undefined":case"json":case"error":return T.deserializeStatic(t);default:throw new Error("Failed to deserialize unknown type: "+n)}}}class H{constructor(e,t){this.threadId=e,this.messenger=t}getThreadId(){return this.threadId}getMessenger(){return this.messenger}}class W{constructor(e){if(this.map=new Map,this.unregisterMap=new Map,this.finalizer=new FinalizationRegistry(e=>{this.map.delete(e),this.unregisterMap.delete(e)}),e)for(const[t,r]of e)this.set(t,r)}set(e,t){this.map.set(e,new WeakRef(t));let r={};this.unregisterMap.set(e,r),this.finalizer.register(t,e,r)}get(e){const t=this.map.get(e);return t&&t.deref()}has(e){const t=this.map.get(e);return!(!t||!t.deref())}delete(e){if(!this.map.get(e))return!1;let t=this.unregisterMap.get(e);return this.finalizer.unregister(t),this.unregisterMap.delete(e),this.map.delete(e)}}class K{static CORE_THREAD_ID="core";constructor(e){this.rpack=e,this.threads=new W,this.currentThread=this.getLocalThread(e.getEnvironment().getThreadId()),e.isPluginThread()?this.rpack.addLateInitCallback(async()=>{let t=e.getEnvironment().getCoreMessenger();this.__handlePacketsOnPlugin(this.getCurrentThread(),t)}):this.localThreads=new Map}getLocalThread(e){return this.getThread(this.rpack.getEnvironment().getEnvironmentType(),e,this.rpack.getHostManager().getClientId())}getThread(e,t,r){let n,i,s;"string"==typeof e?(n=e,i=t,s=r):(n=e.environment,i=e.threadId,s=null===e.clientId?void 0:e.clientId),s===this.rpack.getHostManager().getClientId()&&(s=void 0);let a=JSON.stringify([i,s]),o=this.threads.get(a);return o||(o=new q(this.rpack,n,i,s),this.threads.set(a,o),o)}getCurrentThread(){return this.currentThread}getLocalCoreThread(){return this.getLocalThread(K.CORE_THREAD_ID)}__handleSharedPackets(e,t){this.rpack.getProxyManager().createRemote(e,A.cast(t)),this.rpack.getRegistryManager().__createRemote(e,A.cast(t))}__handlePacketsOnPlugin(e,t){this.__handleSharedPackets(e,A.cast(t)),t.addHandler("thread:shutdown_request",async e=>{await this.rpack.getPluginManager().__waitForPluginShutdown(),t.sendPacket({id:"thread:shutdown_response",nonce:e.nonce})})}__handlePacketsOnCore(e,t){this.__handleSharedPackets(e,A.cast(t)),this.rpack.getPermissionManager().__handlePackets(A.cast(t))}async __createThread(e,t){if(this.rpack.isPluginThread())throw new Error("Cannot create a Thread from a plugin thread!");let r=a.generateNonce();for(;this.localThreads.has(r);)r=a.generateNonce();console.debug("Starting new thread "+r+" for plugin "+e);let n=await this.rpack.getPlatform().createRPackThread(r,e),i=this.rpack.getThreadManager().getLocalThread(r);this.localThreads.set(r,n);let s=n.getMessenger(),o=null;for(let n=0;n<16;n++)try{console.debug("Waiting for thread "+r+" (attempt "+(n+1)+"/16, waiting "+Math.pow(2,n)+"ms)...");let h=a.generateNonce();s.sendPacket({id:"thread:hello_request",nonce:h,threadId:r,pluginKey:e,scriptUrl:t}),await s.addPromiseNonceHandler("thread:hello_response",h,Math.pow(2,n)),this.__handlePacketsOnCore(i,s),console.debug("Thread "+r+" started"),o=h;break}catch{console.debug("Thread "+r+" timed out. Trying again...")}if(null===o)throw console.debug("Thread "+r+" failed to start, aborting"),await n.terminate(),this.localThreads.delete(r),new Error("Thread "+r+" failed to start");return await s.addPromiseNonceHandler("thread:plugin_load",o),console.debug("Plugin loaded in thread "+r),r}}class q{constructor(e,t,r,n){this.rpack=e,this.environment=t,this.threadId=r,this.clientId=n}isHost(){return"host"===this.environment}isClient(){return"client"===this.environment}getEnvironmentType(){return this.environment}isLocal(){return this.rpack.getEnvironment().getEnvironmentType()===this.environment&&void 0===this.clientId}getClientId(){return"client"===this.environment&&void 0===this.clientId?this.rpack.getHostManager().getClientId():this.clientId}getThreadId(){return this.threadId}checkPermission(e){return this.rpack.getPermissionManager().checkPermission(e,this)}serialize(){return{environment:this.environment,threadId:this.threadId,clientId:this.getClientId()??null}}isCoreThread(){return this.threadId===K.CORE_THREAD_ID}isPluginThread(){return this.threadId!==K.CORE_THREAD_ID}isCurrent(){return this.rpack.getThreadManager().getCurrentThread()===this}}class Z{constructor(e,t,r,n){let i="canary",s="0.2.0-canary.4",a="https://github.com/rpack-dev/rpack-dev.git";this.rpackChannel=i.includes("___REPLACE_ME")?"dev":i,this.rpackVersion=s.includes("___REPLACE_ME")?"0.0.0":s,this.rpackRepository=a.includes("___REPLACE_ME")?"local repository":a,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 G{constructor(e){this.it=e,this.disposed=!1}[Symbol.asyncIterator](){return this}async next(...e){return this.disposed?{value:void 0,done:!0}:this.it.next(...e)}async return(e){return this.disposed=!0,"function"==typeof this.it.return?this.it.return(e):{value:e,done:!0}}async throw(e){if("function"==typeof this.it.throw)return this.it.throw(e);throw e}}class V{static wrap(e){return"function"==typeof e[Symbol.iterator]?new l(e[Symbol.iterator]()):new l(e)}static wrapAsync(e){return"function"==typeof e[Symbol.asyncIterator]?new h(e[Symbol.asyncIterator]()):new h(e)}static makeAsync(e){let t;return t="function"==typeof e[Symbol.iterator]?new G(e[Symbol.iterator]()):new G(e),new h(t)}}class Y{constructor(e,t,r){this.parent=e,this.rpack=e.getRPack(),this.thread=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))}getThread(){return this.thread}serialize(e,t){return this.parent.getRPack().getSerializationManager().serialize(this.thread,e,t)}deserialize(e){return this.parent.getRPack().getSerializationManager().deserialize(this.thread,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,{done:t.done??!1,value:t.value})},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(V.makeAsync(e))}declareLocalAsyncIterator(e){return this.iterators.addLocal(e)}declareFunction(e){return this.functions.addLocal(e)}declareRemoteIterator(e,t){this.iterators.registerRemote(e,t)}requestRemoteObjectIterator(e){let t=new n(this,async()=>{const r=await this.messenger.sendNoncePacket("proxy:create_iterator_request",{objectKey:e}).expect("proxy:create_iterator_response");if(r.error)throw this.deserialize(r.error);let n=r.iteratorKey;return this.declareRemoteIterator(n,t),n});return t}async requestRemoteIteratorNext(e,t){if(!this.iterators.hasRemote(e))return{done:!0,value:void 0};let r=await this.messenger.sendNoncePacket("proxy:iterator_next_request",{iteratorKey:e,value:void 0===t?void 0:this.serialize(t)}).expectResponse("proxy:iterator_next_response",void 0,this.rpack,this.thread);return{done:r.done,value:this.deserialize(r.value)}}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 J{constructor(e){this.rpack=e,this.remotes=new Map}createRemote(e,t){let r=new Y(this,e,t);return this.remotes.set(e,r),r}getRPack(){return this.rpack}getRemote(e){return this.remotes.get(e)}}class X{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(async e=>{let t=new X(e);return await r.performLateInit(),t});return e&&(this.instance=r),r}static getInstance(){return this.instance}constructor(e){this.environment=e.environment,this.loadPromise=e.loadPromise,this.platform=e.platform,this.version=e.version,this.lateInitCallbacks=[],this.hostManager=new c(this,e.localHostInstance),this.threadManager=new K(this),this.permissionManager=new u(this),this.proxyManager=new J(this),this.registryManager=new I(this),this.pluginManager=new j(this),this.serializationManager=new U(this)}getLoadPromise(){return this.loadPromise}getPlatform(){return this.platform}getVersion(){return this.version}getHostManager(){return this.hostManager}getThreadManager(){return this.threadManager}getPermissionManager(){return this.permissionManager}getProxyManager(){return this.proxyManager}getRegistryManager(){return this.registryManager}getPluginManager(){return this.pluginManager}getSerializationManager(){return this.serializationManager}getEnvironment(){return this.environment}isPluginThread(){return this.environment.isPluginThread()}isHost(){return this.environment.isHost()}isClient(){return this.environment.isClient()}getHost(){return this.hostManager.getHost()}getPlugin(e){return this.getPluginManager().getPlugin(e)}addLateInitCallback(e){if(null===this.lateInitCallbacks)throw new Error("Late init callbacks already added");this.lateInitCallbacks.push(e)}async performLateInit(){if(null!==this.lateInitCallbacks){for(let e of this.lateInitCallbacks)await e();this.lateInitCallbacks=null}}}export{F as ArrayUtils,h as AsyncIteratorHelper,G as AsyncIteratorMirror,x as DefaultPublicRegistryOptions,R as DefaultRegistryOptions,O as DevPluginServerClient,B as DevPluginSource,c as HostManager,l as IteratorHelper,V as IteratorUtils,k as JSONKeyedMap,z as LazyBatchedAsyncIterator,i as LazyPromise,S as LocalMapRegistry,b as LocalObject,o as LocalRemoteMap,A as Messenger,u as PermissionManager,p as PluginArchive,j as PluginManager,J as ProxyManager,f as RPPlatform,m as RPPlugin,Z as RPVersion,H as RPackLocalThread,I as RegistryManager,n as RemoteAsyncIterator,D as RemoteFunction,E as RemoteMapRegistry,v as RemoteObject,Y as RemoteProxyManager,P as RemoteRegistryManager,C as SentNoncePacket,U as SerializationManager,T as SerializationUtils,a as StringUtils,q as Thread,K as ThreadManager,s as Utils,W as ValueWeakMap,L as ZipPluginArchive,X as default};
|