1/*! 2 3JSZip v3.10.1 - A JavaScript class for generating and reading zip files 4<http://stuartk.com/jszip> 5 6(c) 2009-2016 Stuart Knightley <stuart [at] stuartk.com> 7Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/main/LICENSE.markdown. 8 9JSZip uses the library pako released under the MIT license : 10https://github.com/nodeca/pako/blob/main/LICENSE 11*/ 12(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.JSZip=f()}})(function(){var define,module,exports;return(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){"use strict";var utils=require("./utils");var support=require("./support");var _keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";exports.encode=function(input){var output=[];var chr1,chr2,chr3,enc1,enc2,enc3,enc4;var i=0,len=input.length,remainingBytes=len;var isArray=utils.getTypeOf(input)!=="string";while(i<input.length){remainingBytes=len-i;if(!isArray){chr1=input.charCodeAt(i++);chr2=i<len?input.charCodeAt(i++):0;chr3=i<len?input.charCodeAt(i++):0}else{chr1=input[i++];chr2=i<len?input[i++]:0;chr3=i<len?input[i++]:0} 13enc1=chr1>>2;enc2=((chr1&3)<<4)|(chr2>>4);enc3=remainingBytes>1?(((chr2&15)<<2)|(chr3>>6)):64;enc4=remainingBytes>2?(chr3&63):64;output.push(_keyStr.charAt(enc1)+_keyStr.charAt(enc2)+_keyStr.charAt(enc3)+_keyStr.charAt(enc4))} 14return output.join("")};exports.decode=function(input){var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0,resultIndex=0;var dataUrlPrefix="data:";if(input.substr(0,dataUrlPrefix.length)===dataUrlPrefix){throw new Error("Invalid base64 input, it looks like a data url.")} 15input=input.replace(/[^A-Za-z0-9+/=]/g,"");var totalLength=input.length*3/4;if(input.charAt(input.length-1)===_keyStr.charAt(64)){totalLength--} 16if(input.charAt(input.length-2)===_keyStr.charAt(64)){totalLength--} 17if(totalLength%1!==0){throw new Error("Invalid base64 input, bad content length.")} 18var output;if(support.uint8array){output=new Uint8Array(totalLength|0)}else{output=new Array(totalLength|0)} 19while(i<input.length){enc1=_keyStr.indexOf(input.charAt(i++));enc2=_keyStr.indexOf(input.charAt(i++));enc3=_keyStr.indexOf(input.charAt(i++));enc4=_keyStr.indexOf(input.charAt(i++));chr1=(enc1<<2)|(enc2>>4);chr2=((enc2&15)<<4)|(enc3>>2);chr3=((enc3&3)<<6)|enc4;output[resultIndex++]=chr1;if(enc3!==64){output[resultIndex++]=chr2} 20if(enc4!==64){output[resultIndex++]=chr3}} 21return output}},{"./support":30,"./utils":32}],2:[function(require,module,exports){"use strict";var external=require("./external");var DataWorker=require("./stream/DataWorker");var Crc32Probe=require("./stream/Crc32Probe");var DataLengthProbe=require("./stream/DataLengthProbe");function CompressedObject(compressedSize,uncompressedSize,crc32,compression,data){this.compressedSize=compressedSize;this.uncompressedSize=uncompressedSize;this.crc32=crc32;this.compression=compression;this.compressedContent=data} 22CompressedObject.prototype={getContentWorker:function(){var worker=new DataWorker(external.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new DataLengthProbe("data_length"));var that=this;worker.on("end",function(){if(this.streamInfo.data_length!==that.uncompressedSize){throw new Error("Bug : uncompressed data size mismatch")}});return worker},getCompressedWorker:function(){return new DataWorker(external.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}};CompressedObject.createWorkerFrom=function(uncompressedWorker,compression,compressionOptions){return uncompressedWorker.pipe(new Crc32Probe()).pipe(new DataLengthProbe("uncompressedSize")).pipe(compression.compressWorker(compressionOptions)).pipe(new DataLengthProbe("compressedSize")).withStreamInfo("compression",compression)};module.exports=CompressedObject},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(require,module,exports){"use strict";var GenericWorker=require("./stream/GenericWorker");exports.STORE={magic:"\x00\x00",compressWorker:function(){return new GenericWorker("STORE compression")},uncompressWorker:function(){return new GenericWorker("STORE decompression")}};exports.DEFLATE=require("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(require,module,exports){"use strict";var utils=require("./utils");function makeTable(){var c,table=[];for(var n=0;n<256;n++){c=n;for(var k=0;k<8;k++){c=((c&1)?(0xEDB88320^(c>>>1)):(c>>>1))} 23table[n]=c} 24return table} 25var crcTable=makeTable();function crc32(crc,buf,len,pos){var t=crcTable,end=pos+len;crc=crc^(-1);for(var i=pos;i<end;i++){crc=(crc>>>8)^t[(crc^buf[i])&0xFF]} 26return(crc^(-1))}
27function crc32str(crc,str,len,pos){var t=crcTable,end=pos+len;crc=crc^(-1);for(var i=pos;i<end;i++){crc=(crc>>>8)^t[(crc^str.charCodeAt(i))&0xFF]} 28return(crc^(-1))} 29module.exports=function crc32wrapper(input,crc){if(typeof input==="undefined"||!input.length){return 0} 30var isArray=utils.getTypeOf(input)!=="string";if(isArray){return crc32(crc|0,input,input.length,0)}else{return crc32str(crc|0,input,input.length,0)}}},{"./utils":32}],5:[function(require,module,exports){"use strict";exports.base64=!1;exports.binary=!1;exports.dir=!1;exports.createFolders=!0;exports.date=null;exports.compression=null;exports.compressionOptions=null;exports.comment=null;exports.unixPermissions=null;exports.dosPermissions=null},{}],6:[function(require,module,exports){"use strict";var ES6Promise=null;if(typeof Promise!=="undefined"){ES6Promise=Promise}else{ES6Promise=require("lie")} 31module.exports={Promise:ES6Promise}},{"lie":37}],7:[function(require,module,exports){"use strict";var USE_TYPEDARRAY=(typeof Uint8Array!=="undefined")&&(typeof Uint16Array!=="undefined")&&(typeof Uint32Array!=="undefined");var pako=require("pako");var utils=require("./utils");var GenericWorker=require("./stream/GenericWorker");var ARRAY_TYPE=USE_TYPEDARRAY?"uint8array":"array";exports.magic="\x08\x00";function FlateWorker(action,options){GenericWorker.call(this,"FlateWorker/"+action);this._pako=null;this._pakoAction=action;this._pakoOptions=options;this.meta={}} 32utils.inherits(FlateWorker,GenericWorker);FlateWorker.prototype.processChunk=function(chunk){this.meta=chunk.meta;if(this._pako===null){this._createPako()} 33this._pako.push(utils.transformTo(ARRAY_TYPE,chunk.data),!1)};FlateWorker.prototype.flush=function(){GenericWorker.prototype.flush.call(this);if(this._pako===null){this._createPako()} 34this._pako.push([],!0)};FlateWorker.prototype.cleanUp=function(){GenericWorker.prototype.cleanUp.call(this);this._pako=null};FlateWorker.prototype._createPako=function(){this._pako=new pako[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var self=this;this._pako.onData=function(data){self.push({data:data,meta:self.meta})}};exports.compressWorker=function(compressionOptions){return new FlateWorker("Deflate",compressionOptions)};exports.uncompressWorker=function(){return new FlateWorker("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,"pako":38}],8:[function(require,module,exports){"use strict";var utils=require("../utils");var GenericWorker=require("../stream/GenericWorker");var utf8=require("../utf8");var crc32=require("../crc32");var signature=require("../signature");var decToHex=function(dec,bytes){var hex="",i;for(i=0;i<bytes;i++){hex+=String.fromCharCode(dec&0xff);dec=dec>>>8} 35return hex};var generateUnixExternalFileAttr=function(unixPermissions,isDir){var result=unixPermissions;
35if(!unixPermissions){result=isDir?0x41fd:0x81b4} 36return(result&0xFFFF)<<16};var generateDosExternalFileAttr=function(dosPermissions){return(dosPermissions||0)&0x3F};var generateZipParts=function(streamInfo,streamedContent,streamingEnded,offset,platform,encodeFileName){var file=streamInfo.file,compression=streamInfo.compression,useCustomEncoding=encodeFileName!==utf8.utf8encode,encodedFileName=utils.transformTo("string",encodeFileName(file.name)),utfEncodedFileName=utils.transformTo("string",utf8.utf8encode(file.name)),comment=file.comment,encodedComment=utils.transformTo("string",encodeFileName(comment)),utfEncodedComment=utils.transformTo("string",utf8.utf8encode(comment)),useUTF8ForFileName=utfEncodedFileName.length!==file.name.length,useUTF8ForComment=utfEncodedComment.length!==comment.length,dosTime,dosDate,extraFields="",unicodePathExtraField="",unicodeCommentExtraField="",dir=file.dir,date=file.date;var dataInfo={crc32:0,compressedSize:0,uncompressedSize:0};if(!streamedContent||streamingEnded){dataInfo.crc32=streamInfo.crc32;dataInfo.compressedSize=streamInfo.compressedSize;dataInfo.uncompressedSize=streamInfo.uncompressedSize} 37var bitflag=0;if(streamedContent){bitflag|=0x0008} 38if(!useCustomEncoding&&(useUTF8ForFileName||useUTF8ForComment)){bitflag|=0x0800} 39var extFileAttr=0;var versionMadeBy=0;if(dir){extFileAttr|=0x00010} 40if(platform==="UNIX"){versionMadeBy=0x031E;extFileAttr|=generateUnixExternalFileAttr(file.unixPermissions,dir)}else{versionMadeBy=0x0014;extFileAttr|=generateDosExternalFileAttr(file.dosPermissions,dir)} 41dosTime=date.getUTCHours();dosTime=dosTime<<6;dosTime=dosTime|date.getUTCMinutes();dosTime=dosTime<<5;dosTime=dosTime|date.getUTCSeconds()/2;dosDate=date.getUTCFullYear()-1980;dosDate=dosDate<<4;dosDate=dosDate|(date.getUTCMonth()+1);dosDate=dosDate<<5;dosDate=dosDate|date.getUTCDate();if(useUTF8ForFileName){unicodePathExtraField=decToHex(1,1)+decToHex(crc32(encodedFileName),4)+utfEncodedFileName;extraFields+="\x75\x70"+decToHex(unicodePathExtraField.length,2)+unicodePathExtraField} 42if(useUTF8ForComment){unicodeCommentExtraField=decToHex(1,1)+decToHex(crc32(encodedComment),4)+utfEncodedComment;extraFields+="\x75\x63"+decToHex(unicodeCommentExtraField.length,2)+unicodeCommentExtraField} 43var header="";header+="\x0A\x00";header+=decToHex(bitflag,2);header+=compression.magic;header+=decToHex(dosTime,2);header+=decToHex(dosDate,2);header+=decToHex(dataInfo.crc32,4);header+=decToHex(dataInfo.compressedSize,4);header+=decToHex(dataInfo.uncompressedSize,4);header+=decToHex(encodedFileName.length,2);header+=decToHex(extraFields.length,2);var fileRecord=signature.LOCAL_FILE_HEADER+header+encodedFileName+extraFields;var dirRecord=signature.CENTRAL_FILE_HEADER+decToHex(versionMadeBy,2)+header+decToHex(encodedComment.length,2)+"\x00\x00"+"\x00\x00"+decToHex(extFileAttr,4)+decToHex(offset,4)+encodedFileName+extraFields+encodedComment;return{fileRecord:fileRecord,dirRecord:dirRecord}};var generateCentralDirectoryEnd=function(entriesCount,centralDirLength,localDirLength,comment,encodeFileName){var dirEnd="";var encodedComment=utils.transformTo("string",encodeFileName(comment));dirEnd=signature.CENTRAL_DIRECTORY_END+"\x00\x00"+"\x00\x00"+decToHex(entriesCount,2)+decToHex(entriesCount,2)+decToHex(centralDirLength,4)+decToHex(localDirLength,4)+decToHex(encodedComment.length,2)+encodedComment;return dirEnd};var generateDataDescriptors=function(streamInfo){var descriptor="";descriptor=signature.DATA_DESCRIPTOR+decToHex(streamInfo.crc32,4)+decToHex(streamInfo.compressedSize,4)+decToHex(streamInfo.uncompressedSize,4);return descriptor};function ZipFileWorker(streamFiles,comment,platform,encodeFileName){GenericWorker.call(this,"ZipFileWorker");this.bytesWritten=0;this.zipComment=comment;this.zipPlatform=platform;this.encodeFileName=encodeFileName;this.streamFiles=streamFiles;this.accumulate=!1;this.contentBuffer=[];this.dirRecords=[];this.currentSourceOffset=0;this.entriesCount=0;this.currentFile=null;this._sources=[]} 44utils.inherits(ZipFileWorker,GenericWorker);ZipFileWorker.prototype.push=function(chunk){var currentFilePercent=chunk.meta.percent||0;var entriesCount=this.entriesCount;var remainingFiles=this._sources.length;if(this.accumulate){this.contentBuffer.push(chunk)}else{this.bytesWritten+=chunk.data.length;GenericWorker.prototype.push.call(this,{data:chunk.data,meta:{currentFile:this.currentFile,percent:entriesCount?(currentFilePercent+100*(entriesCount-remainingFiles-1))/entriesCount:100}})}};ZipFileWorker.prototype.openedSource=function(streamInfo){this.currentSourceOffset=this.bytesWritten;this.currentFile=streamInfo.file.name;var streamedContent=this.streamFiles&&!streamInfo.file.dir;if(streamedContent){var record=generateZipParts(streamInfo,streamedContent,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:record.fileRecord,meta:{percent:0}})}else{this.accumulate=!0}};ZipFileWorker.prototype.closedSource=function(streamInfo){this.accumulate=!1;var streamedContent=this.streamFiles&&!streamInfo.file.dir;var record=generateZipParts(streamInfo,streamedContent,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.dirRecords.push(record.dirRecord);if(streamedContent){this.push({data:generateDataDescriptors(streamInfo),meta:{percent:100}})}else{this.push({data:record.fileRecord,meta:{percent:0}});while(this.contentBuffer.length){this.push(this.contentBuffer.shift())}} 45this.currentFile=null};ZipFileWorker.prototype.flush=function(){var localDirLength=this.bytesWritten;for(var i=0;i<this.dirRecords.length;i++){this.push({data:this.dirRecords[i],meta:{percent:100}})} 46var centralDirLength=this.bytesWritten-localDirLength;var dirEnd=generateCentralDirectoryEnd(this.dirRecords.length,centralDirLength,localDirLength,this.zipComment,this.encodeFileName);this.push({data:dirEnd,meta:{percent:100}})};ZipFileWorker.prototype.prepareNextSource=function(){this.previous=this._sources.shift();this.openedSource(this.previous.streamInfo);if(this.isPaused){this.previous.pause()}else{this.previous.resume()}};ZipFileWorker.prototype.registerPrevious=function(previous){this._sources.push(previous);var self=this;previous.on("data",function(chunk){self.processChunk(chunk)});previous.on("end",function(){self.closedSource(self.previous.streamInfo);if(self._sources.length){self.prepareNextSource()}else{self.end()}});previous.on("error",function(e){self.error(e)});return this};ZipFileWorker.prototype.resume=function(){if(!GenericWorker.prototype.resume.call(this)){return!1} 47if(!this.previous&&this._sources.length){this.prepareNextSource();return!0} 48if(!this.previous&&!this._sources.length&&!this.generatedError){this.end();return!0}};ZipFileWorker.prototype.error=function(e){var sources=this._sources;if(!GenericWorker.prototype.error.call(this,e)){return!1} 49for(var i=0;i<sources.length;
49i++){try{sources[i].error(e)}catch(e){}} 50return!0};ZipFileWorker.prototype.lock=function(){GenericWorker.prototype.lock.call(this);var sources=this._sources;for(var i=0;i<sources.length;i++){sources[i].lock()}};module.exports=ZipFileWorker},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(require,module,exports){"use strict";var compressions=require("../compressions");var ZipFileWorker=require("./ZipFileWorker");var getCompression=function(fileCompression,zipCompression){var compressionName=fileCompression||zipCompression;var compression=compressions[compressionName];if(!compression){throw new Error(compressionName+" is not a valid compression method !")} 51return compression};exports.generateWorker=function(zip,options,comment){var zipFileWorker=new ZipFileWorker(options.streamFiles,comment,options.platform,options.encodeFileName);var entriesCount=0;try{zip.forEach(function(relativePath,file){entriesCount++;var compression=getCompression(file.options.compression,options.compression);var compressionOptions=file.options.compressionOptions||options.compressionOptions||{};var dir=file.dir,date=file.date;file._compressWorker(compression,compressionOptions).withStreamInfo("file",{name:relativePath,dir:dir,date:date,comment:file.comment||"",unixPermissions:file.unixPermissions,dosPermissions:file.dosPermissions}).pipe(zipFileWorker)});zipFileWorker.entriesCount=entriesCount}catch(e){zipFileWorker.error(e)} 52return zipFileWorker}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(require,module,exports){"use strict";function JSZip(){if(!(this instanceof JSZip)){return new JSZip()} 53if(arguments.length){throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.")} 54this.files=Object.create(null);this.comment=null;this.root="";this.clone=function(){var newObj=new JSZip();for(var i in this){if(typeof this[i]!=="function"){newObj[i]=this[i]}} 55return newObj}} 56JSZip.prototype=require("./object");JSZip.prototype.loadAsync=require("./load");JSZip.support=require("./support");JSZip.defaults=require("./defaults");JSZip.version="3.10.1";JSZip.loadAsync=function(content,options){return new JSZip().loadAsync(content,options)};JSZip.external=require("./external");module.exports=JSZip},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(require,module,exports){"use strict";var utils=require("./utils");var external=require("./external");var utf8=require("./utf8");var ZipEntries=require("./zipEntries");var Crc32Probe=require("./stream/Crc32Probe");var nodejsUtils=require("./nodejsUtils");function checkEntryCRC32(zipEntry){return new external.Promise(function(resolve,reject){var worker=zipEntry.decompressed.getContentWorker().pipe(new Crc32Probe());worker.on("error",function(e){reject(e)}).on("end",function(){if(worker.streamInfo.crc32!==zipEntry.decompressed.crc32){reject(new Error("Corrupted zip : CRC32 mismatch"))}else{resolve()}}).resume()})} 57module.exports=function(data,options){var zip=this;options=utils.extend(options||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:utf8.utf8decode});if(nodejsUtils.isNode&&nodejsUtils.isStream(data)){return external.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file."))} 58return utils.prepareContent("the loaded zip file",data,!0,options.optimizedBinaryString,options.base64).then(function(data){var zipEntries=new ZipEntries(options);zipEntries.load(data);return zipEntries}).then(function checkCRC32(zipEntries){var promises=[external.Promise.resolve(zipEntries)];var files=zipEntries.files;if(options.checkCRC32){for(var i=0;i<files.length;i++){promises.push(checkEntryCRC32(files[i]))}} 59return external.Promise.all(promises)}).then(function addFiles(results){var zipEntries=results.shift();var files=zipEntries.files;for(var i=0;i<files.length;i++){var input=files[i];var unsafeName=input.fileNameStr;var safeName=utils.resolve(input.fileNameStr);zip.file(safeName,input.decompressed,{binary:!0,optimizedBinaryString:!0,date:input.date,dir:input.dir,comment:input.fileCommentStr.length?
59input.fileCommentStr:null,unixPermissions:input.unixPermissions,dosPermissions:input.dosPermissions,createFolders:options.createFolders});if(!input.dir){zip.file(safeName).unsafeOriginalName=unsafeName}} 60if(zipEntries.zipComment.length){zip.comment=zipEntries.zipComment} 61return zip})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(require,module,exports){"use strict";var utils=require("../utils");var GenericWorker=require("../stream/GenericWorker");function NodejsStreamInputAdapter(filename,stream){GenericWorker.call(this,"Nodejs stream input adapter for "+filename);this._upstreamEnded=!1;this._bindStream(stream)} 62utils.inherits(NodejsStreamInputAdapter,GenericWorker);NodejsStreamInputAdapter.prototype._bindStream=function(stream){var self=this;this._stream=stream;stream.pause();stream.on("data",function(chunk){self.push({data:chunk,meta:{percent:0}})}).on("error",function(e){if(self.isPaused){this.generatedError=e}else{self.error(e)}}).on("end",function(){if(self.isPaused){self._upstreamEnded=!0}else{self.end()}})};NodejsStreamInputAdapter.prototype.pause=function(){if(!GenericWorker.prototype.pause.call(this)){return!1} 63this._stream.pause();return!0};NodejsStreamInputAdapter.prototype.resume=function(){if(!GenericWorker.prototype.resume.call(this)){return!1} 64if(this._upstreamEnded){this.end()}else{this._stream.resume()} 65return!0};module.exports=NodejsStreamInputAdapter},{"../stream/GenericWorker":28,"../utils":32}],13:[function(require,module,exports){"use strict";var Readable=require("readable-stream").Readable;var utils=require("../utils");utils.inherits(NodejsStreamOutputAdapter,Readable);function NodejsStreamOutputAdapter(helper,options,updateCb){Readable.call(this,options);this._helper=helper;var self=this;helper.on("data",function(data,meta){if(!self.push(data)){self._helper.pause()} 66if(updateCb){updateCb(meta)}}).on("error",function(e){self.emit("error",e)}).on("end",function(){self.push(null)})} 67NodejsStreamOutputAdapter.prototype._read=function(){this._helper.resume()};module.exports=NodejsStreamOutputAdapter},{"../utils":32,"readable-stream":16}],14:[function(require,module,exports){"use strict";module.exports={isNode:typeof Buffer!=="undefined",newBufferFrom:function(data,encoding){if(Buffer.from&&Buffer.from!==Uint8Array.from){return Buffer.from(data,encoding)}else{if(typeof data==="number"){throw new Error("The \"data\" argument must not be a number")} 68return new Buffer(data,encoding)}},allocBuffer:function(size){if(Buffer.alloc){return Buffer.alloc(size)}else{var buf=new Buffer(size);buf.fill(0);return buf}},isBuffer:function(b){return Buffer.isBuffer(b)},isStream:function(obj){return obj&&typeof obj.on==="function"&&typeof obj.pause==="function"&&typeof obj.resume==="function"}}},{}],15:[function(require,module,exports){"use strict";var utf8=require("./utf8");var utils=require("./utils");var GenericWorker=require("./stream/GenericWorker");var StreamHelper=require("./stream/StreamHelper");var defaults=require("./defaults");var CompressedObject=require("./compressedObject");var ZipObject=require("./zipObject");var generate=require("./generate");var nodejsUtils=require("./nodejsUtils");var NodejsStreamInputAdapter=require("./nodejs/NodejsStreamInputAdapter");var fileAdd=function(name,data,originalOptions){var dataType=utils.getTypeOf(data),parent;var o=utils.extend(originalOptions||{},defaults);o.date=o.date||new Date();if(o.compression!==null){o.compression=o.compression.toUpperCase()} 69if(typeof o.unixPermissions==="string"){o.unixPermissions=parseInt(o.unixPermissions,8)} 70if(o.unixPermissions&&(o.unixPermissions&0x4000)){o.dir=!0} 71if(o.dosPermissions&&(o.dosPermissions&0x0010)){o.dir=!0} 72if(o.dir){name=forceTrailingSlash(name)} 73if(o.createFolders&&(parent=parentFolder(name))){folderAdd.call(this,parent,!0)} 74var isUnicodeString=dataType==="string"&&o.binary===!1&&o.base64===!1;if(!originalOptions||typeof originalOptions.binary==="undefined"){o.binary=!isUnicodeString} 75var isCompressedEmpty=(data instanceof CompressedObject)&&data.uncompressedSize===0;if(isCompressedEmpty||o.dir||!data||data.length===0){o.base64=!1;o.binary=!0;data="";o.compression="STORE";dataType="string"}
76var zipObjectContent=null;if(data instanceof CompressedObject||data instanceof GenericWorker){zipObjectContent=data}else if(nodejsUtils.isNode&&nodejsUtils.isStream(data)){zipObjectContent=new NodejsStreamInputAdapter(name,data)}else{zipObjectContent=utils.prepareContent(name,data,o.binary,o.optimizedBinaryString,o.base64)} 77var object=new ZipObject(name,zipObjectContent,o);this.files[name]=object};var parentFolder=function(path){if(path.slice(-1)==="/"){path=path.substring(0,path.length-1)} 78var lastSlash=path.lastIndexOf("/");return(lastSlash>0)?path.substring(0,lastSlash):""};var forceTrailingSlash=function(path){if(path.slice(-1)!=="/"){path+="/"} 79return path};var folderAdd=function(name,createFolders){createFolders=(typeof createFolders!=="undefined")?createFolders:defaults.createFolders;name=forceTrailingSlash(name);if(!this.files[name]){fileAdd.call(this,name,null,{dir:!0,createFolders:createFolders})} 80return this.files[name]};function isRegExp(object){return Object.prototype.toString.call(object)==="[object RegExp]"} 81var out={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(cb){var filename,relativePath,file;for(filename in this.files){file=this.files[filename];relativePath=filename.slice(this.root.length,filename.length);if(relativePath&&filename.slice(0,this.root.length)===this.root){cb(relativePath,file)}}},filter:function(search){var result=[];this.forEach(function(relativePath,entry){if(search(relativePath,entry)){result.push(entry)}});return result},file:function(name,data,o){if(arguments.length===1){if(isRegExp(name)){var regexp=name;return this.filter(function(relativePath,file){return!file.dir&®exp.test(relativePath)})}else{var obj=this.files[this.root+name];if(obj&&!obj.dir){return obj}else{return null}}}else{name=this.root+name;fileAdd.call(this,name,data,o)} 82return this},folder:function(arg){if(!arg){return this} 83if(isRegExp(arg)){return this.filter(function(relativePath,file){return file.dir&&arg.test(relativePath)})} 84var name=this.root+arg;var newFolder=folderAdd.call(this,name);var ret=this.clone();ret.root=newFolder.name;return ret},remove:function(name){name=this.root+name;var file=this.files[name];if(!file){if(name.slice(-1)!=="/"){name+="/"} 85file=this.files[name]} 86if(file&&!file.dir){delete this.files[name]}else{var kids=this.filter(function(relativePath,file){return file.name.slice(0,name.length)===name});for(var i=0;i<kids.length;i++){delete this.files[kids[i].name]}} 87return this},generate:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(options){var worker,opts={};try{opts=utils.extend(options||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:utf8.utf8encode});opts.type=opts.type.toLowerCase();opts.compression=opts.compression.toUpperCase();if(opts.type==="binarystring"){opts.type="string"} 88if(!opts.type){throw new Error("No output type specified.")} 89utils.checkSupport(opts.type);if(opts.platform==="darwin"||opts.platform==="freebsd"||opts.platform==="linux"||opts.platform==="sunos"){opts.platform="UNIX"} 90if(opts.platform==="win32"){opts.platform="DOS"} 91var comment=opts.comment||this.comment||"";worker=generate.generateWorker(this,opts,comment)}catch(e){worker=new GenericWorker("error");worker.error(e)} 92return new StreamHelper(worker,opts.type||"string",opts.mimeType)},generateAsync:function(options,onUpdate){return this.generateInternalStream(options).accumulate(onUpdate)},generateNodeStream:function(options,onUpdate){options=options||{};if(!options.type){options.type="nodebuffer"} 93return this.generateInternalStream(options).toNodejsStream(onUpdate)}};module.exports=out},{"./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(require,module,exports){"use strict";module.exports=require("stream")},{"stream":undefined}],17:[function(require,module,exports){"use strict";var DataReader=require("./DataReader");var utils=require("../utils");function ArrayReader(data){DataReader.call(this,data);for(var i=0;i<this.data.length;i++){data[i]=data[i]&0xFF}} 94utils.inherits(ArrayReader,DataReader);ArrayReader.prototype.byteAt=function(i){return this.data[this.zero+i]};ArrayReader.prototype.lastIndexOfSignature=function(sig){var sig0=sig.charCodeAt(0),sig1=sig.charCodeAt(1),sig2=sig.charCodeAt(2),sig3=sig.charCodeAt(3);for(var i=this.length-4;i>=0;--i){if(this.data[i]===sig0&&this.data[i+1]===sig1&&this.data[i+2]===sig2&&this.data[i+3]===sig3){return i-this.zero}} 95return-1};ArrayReader.prototype.readAndCheckSignature=function(sig){var sig0=sig.charCodeAt(0),sig1=sig.charCodeAt(1),sig2=sig.charCodeAt(2),sig3=sig.charCodeAt(3),data=this.readData(4);return sig0===data[0]&&sig1===data[1]&&sig2===data[2]&&sig3===data[3]};ArrayReader.prototype.readData=function(size){this.checkOffset(size);if(size===0){return[]} 96var result=this.data.slice(this.zero+this.index,this.zero+this.index+size);this.index+=size;return result};module.exports=ArrayReader},{"../utils":32,"./DataReader":18}],18:[function(require,module,exports){"use strict";var utils=require("../utils");function DataReader(data){this.data=data;this.length=data.length;this.index=0;this.zero=0} 97DataReader.prototype={checkOffset:function(offset){this.checkIndex(this.index+offset)},checkIndex:function(newIndex){if(this.length<this.zero+newIndex||newIndex<0){throw new Error("End of data reached (data length = "+this.length+", asked index = "+(newIndex)+"). Corrupted zip ?")}},setIndex:function(newIndex){this.checkIndex(newIndex);this.index=newIndex},skip:function(n){this.setIndex(this.index+n)},byteAt:function(){},readInt:function(size){var result=0,i;this.checkOffset(size);for(i=this.index+size-1;i>=this.index;i--){result=(result<<8)+this.byteAt(i)} 98this.index+=size;return result},readString:function(size){return utils.transformTo("string",this.readData(size))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var dostime=this.readInt(4);return new Date(Date.UTC(((dostime>>25)&0x7f)+1980,((dostime>>21)&0x0f)-1,(dostime>>16)&0x1f,(dostime>>11)&0x1f,(dostime>>5)&0x3f,(dostime&0x1f)<<1))}};module.exports=DataReader},{"../utils":32}],19:[function(require,module,exports){"use strict";var Uint8ArrayReader=require("./Uint8ArrayReader");var utils=require("../utils");function NodeBufferReader(data){Uint8ArrayReader.call(this,data)} 99utils.inherits(NodeBufferReader,Uint8ArrayReader);NodeBufferReader.prototype.readData=function(size){this.checkOffset(size);var result=this.data.slice(this.zero+this.index,this.zero+this.index+size);this.index+=size;return result};module.exports=NodeBufferReader},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(require,module,exports){"use strict";var DataReader=require("./DataReader");var utils=require("../utils");function StringReader(data){DataReader.call(this,data)} 100utils.inherits(StringReader,DataReader);StringReader.prototype.byteAt=function(i){return this.data.charCodeAt(this.zero+i)};StringReader.prototype.lastIndexOfSignature=function(sig){return this.data.lastIndexOf(sig)-this.zero};StringReader.prototype.readAndCheckSignature=function(sig){var data=this.readData(4);return sig===data};StringReader.prototype.readData=function(size){this.checkOffset(size);var result=this.data.slice(this.zero+this.index,this.zero+this.index+size);this.index+=size;return result};module.exports=StringReader},{"../utils":32,"./DataReader":18}],21:[function(require,module,exports){"use strict";var ArrayReader=require("./ArrayReader");var utils=require("../utils");function Uint8ArrayReader(data){ArrayReader.call(this,data)} 101utils.inherits(Uint8ArrayReader,ArrayReader);Uint8ArrayReader.prototype.readData=function(size){this.checkOffset(size);if(size===0){return new Uint8Array(0)} 102var result=this.data.subarray(this.zero+this.index,this.zero+this.index+size);this.index+=size;return result};module.exports=Uint8ArrayReader},{"../utils":32,"./ArrayReader":17}],22:[function(require,module,exports){"use strict";var utils=require("../utils");var support=require("../support");var ArrayReader=require("./ArrayReader");var StringReader=require("./StringReader");var NodeBufferReader=require("./NodeBufferReader");var Uint8ArrayReader=require("./Uint8ArrayReader");module.exports=function(data){var type=utils.getTypeOf(data);utils.checkSupport(type);if(type==="string"&&!support.uint8array){return new StringReader(data)} 103if(type==="nodebuffer"){return new NodeBufferReader(data)} 104if(support.uint8array){return new Uint8ArrayReader(utils.transformTo("uint8array",data))} 105return new ArrayReader(utils.transformTo("array",data))}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(require,module,exports){"use strict";exports.LOCAL_FILE_HEADER="PK\x03\x04";exports.CENTRAL_FILE_HEADER="PK\x01\x02";exports.CENTRAL_DIRECTORY_END="PK\x05\x06";exports.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK\x06\x07";exports.ZIP64_CENTRAL_DIRECTORY_END="PK\x06\x06";exports.DATA_DESCRIPTOR="PK\x07\x08"},{}],24:[function(require,module,exports){"use strict";var GenericWorker=require("./GenericWorker");var utils=require("../utils");function ConvertWorker(destType){GenericWorker.call(this,"ConvertWorker to "+destType);this.destType=destType} 106utils.inherits(ConvertWorker,GenericWorker);ConvertWorker.prototype.processChunk=function(chunk){this.push({data:utils.transformTo(this.destType,chunk.data),meta:chunk.meta})};module.exports=ConvertWorker},{"../utils":32,"./GenericWorker":28}],25:[function(require,module,exports){"use strict";var GenericWorker=require("./GenericWorker");var crc32=require("../crc32");var utils=require("../utils");function Crc32Probe(){GenericWorker.call(this,"Crc32Probe");this.withStreamInfo("crc32",0)} 107utils.inherits(Crc32Probe,GenericWorker);Crc32Probe.prototype.processChunk=function(chunk){this.streamInfo.crc32=crc32(chunk.data,this.streamInfo.crc32||0);this.push(chunk)};module.exports=Crc32Probe},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(require,module,exports){"use strict";var utils=require("../utils");var GenericWorker=require("./GenericWorker");function DataLengthProbe(propName){GenericWorker.call(this,"DataLengthProbe for "+propName);this.propName=propName;this.withStreamInfo(propName,0)} 108utils.inherits(DataLengthProbe,GenericWorker);DataLengthProbe.prototype.processChunk=function(chunk){if(chunk){var length=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=length+chunk.data.length} 109GenericWorker.prototype.processChunk.call(this,chunk)};module.exports=DataLengthProbe},{"../utils":32,"./GenericWorker":28}],27:[function(require,module,exports){"use strict";var utils=require("../utils");var GenericWorker=require("./GenericWorker");var DEFAULT_BLOCK_SIZE=16*1024;function DataWorker(dataP){GenericWorker.call(this,"DataWorker");var self=this;this.dataIsReady=!1;this.index=0;this.max=0;this.data=null;this.type="";this._tickScheduled=!1;dataP.then(function(data){self.dataIsReady=!0;self.data=data;self.max=data&&data.length||0;self.type=utils.getTypeOf(data);if(!self.isPaused){self._tickAndRepeat()}},function(e){self.error(e)})} 110utils.inherits(DataWorker,GenericWorker);DataWorker.prototype.cleanUp=function(){GenericWorker.prototype.cleanUp.c
110all(this);this.data=null};DataWorker.prototype.resume=function(){if(!GenericWorker.prototype.resume.call(this)){return!1} 111if(!this._tickScheduled&&this.dataIsReady){this._tickScheduled=!0;utils.delay(this._tickAndRepeat,[],this)} 112return!0};DataWorker.prototype._tickAndRepeat=function(){this._tickScheduled=!1;if(this.isPaused||this.isFinished){return} 113this._tick();if(!this.isFinished){utils.delay(this._tickAndRepeat,[],this);this._tickScheduled=!0}};DataWorker.prototype._tick=function(){if(this.isPaused||this.isFinished){return!1} 114var size=DEFAULT_BLOCK_SIZE;var data=null,nextIndex=Math.min(this.max,this.index+size);if(this.index>=this.max){return this.end()}else{switch(this.type){case "string":data=this.data.substring(this.index,nextIndex);break;case "uint8array":data=this.data.subarray(this.index,nextIndex);break;case "array":case "nodebuffer":data=this.data.slice(this.index,nextIndex);break} 115this.index=nextIndex;return this.push({data:data,meta:{percent:this.max?this.index/this.max*100:0}})}};module.exports=DataWorker},{"../utils":32,"./GenericWorker":28}],28:[function(require,module,exports){"use strict";function GenericWorker(name){this.name=name||"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} 116GenericWorker.prototype={push:function(chunk){this.emit("data",chunk)},end:function(){if(this.isFinished){return!1} 117this.flush();try{this.emit("end");this.cleanUp();this.isFinished=!0}catch(e){this.emit("error",e)} 118return!0},error:function(e){if(this.isFinished){return!1} 119if(this.isPaused){this.generatedError=e}else{this.isFinished=!0;this.emit("error",e);if(this.previous){this.previous.error(e)} 120this.cleanUp()} 121return!0},on:function(name,listener){this._listeners[name].push(listener);return this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null;this._listeners=[]},emit:function(name,arg){if(this._listeners[name]){for(var i=0;i<this._listeners[name].length;i++){this._listeners[name][i].call(this,arg)}}},pipe:function(next){return next.registerPrevious(this)},registerPrevious:function(previous){if(this.isLocked){throw new Error("The stream '"+this+"' has already been used.")} 122this.streamInfo=previous.streamInfo;this.mergeStreamInfo();this.previous=previous;var self=this;previous.on("data",function(chunk){self.processChunk(chunk)});previous.on("end",function(){self.end()});previous.on("error",function(e){self.error(e)});return this},pause:function(){if(this.isPaused||this.isFinished){return!1} 123this.isPaused=!0;if(this.previous){this.previous.pause()} 124return!0},resume:function(){if(!this.isPaused||this.isFinished){return!1} 125this.isPaused=!1;var withError=!1;if(this.generatedError){this.error(this.generatedError);withError=!0} 126if(this.previous){this.previous.resume()} 127return!withError},flush:function(){},processChunk:function(chunk){this.push(chunk)}
127,withStreamInfo:function(key,value){this.extraStreamInfo[key]=value;this.mergeStreamInfo();return this},mergeStreamInfo:function(){for(var key in this.extraStreamInfo){if(!Object.prototype.hasOwnProperty.call(this.extraStreamInfo,key)){continue} 128this.streamInfo[key]=this.extraStreamInfo[key]}},lock:function(){if(this.isLocked){throw new Error("The stream '"+this+"' has already been used.")} 129this.isLocked=!0;if(this.previous){this.previous.lock()}},toString:function(){var me="Worker "+this.name;if(this.previous){return this.previous+" -> "+me}else{return me}}};module.exports=GenericWorker},{}],29:[function(require,module,exports){"use strict";var utils=require("../utils");var ConvertWorker=require("./ConvertWorker");var GenericWorker=require("./GenericWorker");var base64=require("../base64");var support=require("../support");var external=require("../external");var NodejsStreamOutputAdapter=null;if(support.nodestream){try{NodejsStreamOutputAdapter=require("../nodejs/NodejsStreamOutputAdapter")}catch(e){}} 130function transformZipOutput(type,content,mimeType){switch(type){case "blob":return utils.newBlob(utils.transformTo("arraybuffer",content),mimeType);case "base64":return base64.encode(content);default:return utils.transformTo(type,content)}} 131function concat(type,dataArray){var i,index=0,res=null,totalLength=0;for(i=0;i<dataArray.length;i++){totalLength+=dataArray[i].length} 132switch(type){case "string":return dataArray.join("");case "array":return Array.prototype.concat.apply([],dataArray);case "uint8array":res=new Uint8Array(totalLength);for(i=0;i<dataArray.length;i++){res.set(dataArray[i],index);index+=dataArray[i].length} 133return res;case "nodebuffer":return Buffer.concat(dataArray);default:throw new Error("concat : unsupported type '"+type+"'")}} 134function accumulate(helper,updateCallback){return new external.Promise(function(resolve,reject){var dataArray=[];var chunkType=helper._internalType,resultType=helper._outputType,mimeType=helper._mimeType;helper.on("data",function(data,meta){dataArray.push(data);if(updateCallback){updateCallback(meta)}}).on("error",function(err){dataArray=[];reject(err)}).on("end",function(){try{var result=transformZipOutput(resultType,concat(chunkType,dataArray),mimeType);resolve(result)}catch(e){reject(e)} 135dataArray=[]}).resume()})} 136function StreamHelper(worker,outputType,mimeType){var internalType=outputType;switch(outputType){case "blob":case "arraybuffer":internalType="uint8array";break;case "base64":internalType="string";break} 137try{this._internalType=internalType;this._outputType=outputType;this._mimeType=mimeType;utils.checkSupport(internalType);this._worker=worker.pipe(new ConvertWorker(internalType));worker.lock()}catch(e){this._worker=new GenericWorker("error");this._worker.error(e)}} 138StreamHelper.prototype={accumulate:function(updateCb){return accumulate(this,updateCb)},on:function(evt,fn){var self=this;if(evt==="data"){this._worker.on(evt,function(chunk){fn.call(self,chunk.data,chunk.meta)})}else{this._worker.on(evt,function(){utils.delay(fn,arguments,self)})} 139return this},resume:function(){utils.delay(this._worker.resume,[],this._worker);return this},pause:function(){this._worker.pause();return this},toNodejsStream:function(updateCb){utils.checkSupport("nodestream");if(this._outputType!=="nodebuffer"){throw new Error(this._outputType+" is not supported by this method")} 140return new NodejsStreamOutputAdapter(this,{objectMode:this._outputType!=="nodebuffer"},updateCb)}};module.exports=StreamHelper},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(require,module,exports){"use strict";exports.base64=!0;exports.array=!0;exports.string=!0;exports.arraybuffer=typeof ArrayBuffer!=="undefined"&&typeof Uint8Array!=="undefined";exports.nodebuffer=typeof Buffer!=="undefined";exports.uint8array=typeof Uint8Array!=="undefined";if(typeof ArrayBuffer==="undefined"){exports.blob=!1}else{var buffer=new ArrayBuffer(0);try{exports.blob=new Blob([buffer],{type:"application/zip"}).size===0}catch(e){try{var Builder=self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder;var builder=new Builder();builder.append(buffer);exports.blob=builder.getBlob("application/zip").size===0}catch(e){exports.blob=!1}}} 141try{exports.nodestream=!!require("readable-stream").Readable}catch(e){exports.nodestream=!1}},{"readable-stream":16}],31:[function(require,module,exports){"use strict";var utils=require("./utils");var support=require("./support");var nodejsUtils=require("./nodejsUtils");var GenericWorker=require("./stream/GenericWorker");var _utf8len=new Array(256);for(var i=0;i<256;i++){_utf8len[i]=(i>=252?6:i>=248?5:i>=240?4:i>=224?3:i>=192?2:1)} 142_utf8len[254]=_utf8len[254]=1;var string2buf=function(str){var buf,c,c2,m_pos,i,str_len=str.length,buf_len=0;for(m_pos=0;m_pos<str_len;m_pos++){c=str.charCodeAt(m_pos);
142if((c&0xfc00)===0xd800&&(m_pos+1<str_len)){c2=str.charCodeAt(m_pos+1);if((c2&0xfc00)===0xdc00){c=0x10000+((c-0xd800)<<10)+(c2-0xdc00);m_pos++}} 143buf_len+=c<0x80?1:c<0x800?2:c<0x10000?3:4} 144if(support.uint8array){buf=new Uint8Array(buf_len)}else{buf=new Array(buf_len)} 145for(i=0,m_pos=0;i<buf_len;m_pos++){c=str.charCodeAt(m_pos);if((c&0xfc00)===0xd800&&(m_pos+1<str_len)){c2=str.charCodeAt(m_pos+1);if((c2&0xfc00)===0xdc00){c=0x10000+((c-0xd800)<<10)+(c2-0xdc00);m_pos++}} 146if(c<0x80){buf[i++]=c}else if(c<0x800){buf[i++]=0xC0|(c>>>6);buf[i++]=0x80|(c&0x3f)}else if(c<0x10000){buf[i++]=0xE0|(c>>>12);buf[i++]=0x80|(c>>>6&0x3f);buf[i++]=0x80|(c&0x3f)}else{buf[i++]=0xf0|(c>>>18);buf[i++]=0x80|(c>>>12&0x3f);buf[i++]=0x80|(c>>>6&0x3f);buf[i++]=0x80|(c&0x3f)}} 147return buf};var utf8border=function(buf,max){var pos;max=max||buf.length;if(max>buf.length){max=buf.length} 148pos=max-1;while(pos>=0&&(buf[pos]&0xC0)===0x80){pos--} 149if(pos<0){return max} 150if(pos===0){return max} 151return(pos+_utf8len[buf[pos]]>max)?pos:max};var buf2string=function(buf){var i,out,c,c_len;var len=buf.length;var utf16buf=new Array(len*2);for(out=0,i=0;i<len;){c=buf[i++];if(c<0x80){utf16buf[out++]=c;continue} 152c_len=_utf8len[c];if(c_len>4){utf16buf[out++]=0xfffd;i+=c_len-1;continue} 153c&=c_len===2?0x1f:c_len===3?0x0f:0x07;while(c_len>1&&i<len){c=(c<<6)|(buf[i++]&0x3f);c_len--} 154if(c_len>1){utf16buf[out++]=0xfffd;continue} 155if(c<0x10000){utf16buf[out++]=c}else{c-=0x10000;utf16buf[out++]=0xd800|((c>>10)&0x3ff);utf16buf[out++]=0xdc00|(c&0x3ff)}} 156if(utf16buf.length!==out){if(utf16buf.subarray){utf16buf=utf16buf.subarray(0,out)}else{utf16buf.length=out}} 157return utils.applyFromCharCode(utf16buf)};exports.utf8encode=function utf8encode(str){if(support.nodebuffer){return nodejsUtils.newBufferFrom(str,"utf-8")} 158return string2buf(str)};exports.utf8decode=function utf8decode(buf){if(support.nodebuffer){return utils.transformTo("nodebuffer",buf).toString("utf-8")} 159buf=utils.transformTo(support.uint8array?"uint8array":"array",buf);return buf2string(buf)};function Utf8DecodeWorker(){GenericWorker.call(this,"utf-8 decode");this.leftOver=null} 160utils.inherits(Utf8DecodeWorker,GenericWorker);Utf8DecodeWorker.prototype.processChunk=function(chunk){var data=utils.transformTo(support.uint8array?"uint8array":"array",chunk.data);if(this.leftOver&&this.leftOver.length){if(support.uint8array){var previousData=data;data=new Uint8Array(previousData.length+this.leftOver.length);data.set(this.leftOver,0);data.set(previousData,this.leftOver.length)}else{data=this.leftOver.concat(data)} 161this.leftOver=null} 162var nextBoundary=utf8border(data);var usableData=data;if(nextBoundary!==data.length){if(support.uint8array){usableData=data.subarray(0,nextBoundary);this.leftOver=data.subarray(nextBoundary,data.length)}else{usableData=data.slice(0,nextBoundary);this.leftOver=data.slice(nextBoundary,data.length)}} 163this.push({data:exports.utf8decode(usableData),meta:chunk.meta})};Utf8DecodeWorker.prototype.flush=function(){if(this.leftOver&&this.leftOver.length){this.push({data:exports.utf8decode(this.leftOver),meta:{}});this.leftOver=null}};exports.Utf8DecodeWorker=Utf8DecodeWorker;function Utf8EncodeWorker(){GenericWorker.call(this,"utf-8 encode")} 164utils.inherits(Utf8EncodeWorker,GenericWorker);Utf8EncodeWorker.prototype.processChunk=function(chunk){this.push({data:exports.utf8encode(chunk.data),meta:chunk.meta})};exports.Utf8EncodeWorker=Utf8EncodeWorker},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(require,module,exports){"use strict";var support=require("./support");var base64=require("./base64");var nodejsUtils=require("./nodejsUtils");var external=require("./external");require("setimmediate");function string2binary(str){var result=null;if(support.uint8array){result=new Uint8Array(str.length)}else{result=new Array(str.length)} 165return stringToArrayLike(str,result)} 166exports.newBlob=function(part,type){exports.checkSupport("blob");try{return new Blob([part],{type:type})}catch(e){try{var Builder=self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder;var builder=new Builder();builder.append(part);return builder.getBlob(type)}catch(e){throw new Error("Bug : can't construct the Blob.")}}};
166function identity(input){return input} 167function stringToArrayLike(str,array){for(var i=0;i<str.length;++i){array[i]=str.charCodeAt(i)&0xFF} 168return array} 169var arrayToStringHelper={stringifyByChunk:function(array,type,chunk){var result=[],k=0,len=array.length;if(len<=chunk){return String.fromCharCode.apply(null,array)} 170while(k<len){if(type==="array"||type==="nodebuffer"){result.push(String.fromCharCode.apply(null,array.slice(k,Math.min(k+chunk,len))))}else{result.push(String.fromCharCode.apply(null,array.subarray(k,Math.min(k+chunk,len))))} 171k+=chunk} 172return result.join("")},stringifyByChar:function(array){var resultStr="";for(var i=0;i<array.length;i++){resultStr+=String.fromCharCode(array[i])} 173return resultStr},applyCanBeUsed:{uint8array:(function(){try{return support.uint8array&&String.fromCharCode.apply(null,new Uint8Array(1)).length===1}catch(e){return!1}})(),nodebuffer:(function(){try{return support.nodebuffer&&String.fromCharCode.apply(null,nodejsUtils.allocBuffer(1)).length===1}catch(e){return!1}})()}};function arrayLikeToString(array){var chunk=65536,type=exports.getTypeOf(array),canUseApply=!0;if(type==="uint8array"){canUseApply=arrayToStringHelper.applyCanBeUsed.uint8array}else if(type==="nodebuffer"){canUseApply=arrayToStringHelper.applyCanBeUsed.nodebuffer} 174if(canUseApply){while(chunk>1){try{return arrayToStringHelper.stringifyByChunk(array,type,chunk)}catch(e){chunk=Math.floor(chunk/2)}}} 175return arrayToStringHelper.stringifyByChar(array)} 176exports.applyFromCharCode=arrayLikeToString;function arrayLikeToArrayLike(arrayFrom,arrayTo){for(var i=0;i<arrayFrom.length;i++){arrayTo[i]=arrayFrom[i]} 177return arrayTo} 178var transform={};transform.string={"string":identity,"array":function(input){return stringToArrayLike(input,new Array(input.length))},"arraybuffer":function(input){return transform.string.uint8array(input).buffer},"uint8array":function(input){return stringToArrayLike(input,new Uint8Array(input.length))},"nodebuffer":function(input){return stringToArrayLike(input,nodejsUtils.allocBuffer(input.length))}};transform.array={"string":arrayLikeToString,"array":identity,"arraybuffer":function(input){return(new Uint8Array(input)).buffer},"uint8array":function(input){return new Uint8Array(input)},"nodebuffer":function(input){return nodejsUtils.newBufferFrom(input)}};transform.arraybuffer={"string":function(input){return arrayLikeToString(new Uint8Array(input))},"array":function(input){return arrayLikeToArrayLike(new Uint8Array(input),new Array(input.byteLength))},"arraybuffer":identity,"uint8array":function(input){return new Uint8Array(input)},"nodebuffer":function(input){return nodejsUtils.newBufferFrom(new Uint8Array(input))}};transform.uint8array={"string":arrayLikeToString,"array":function(input){return arrayLikeToArrayLike(input,new Array(input.length))},"arraybuffer":function(input){return input.buffer},"uint8array":identity,"nodebuffer":function(input){return nodejsUtils.newBufferFrom(input)}};transform.nodebuffer={"string":arrayLikeToString,"array":function(input){return arrayLikeToArrayLike(input,new Array(input.length))},"arraybuffer":function(input){return transform.nodebuffer.uint8array(input).buffer},"uint8array":function(input){return arrayLikeToArrayLike(input,new Uint8Array(input.length))},"nodebuffer":identity};
178exports.transformTo=function(outputType,input){if(!input){input=""} 179if(!outputType){return input} 180exports.checkSupport(outputType);var inputType=exports.getTypeOf(input);var result=transform[inputType][outputType](input);return result};exports.resolve=function(path){var parts=path.split("/");var result=[];for(var index=0;index<parts.length;index++){var part=parts[index];if(part==="."||(part===""&&index!==0&&index!==parts.length-1)){continue}else if(part===".."){result.pop()}else{result.push(part)}} 181return result.join("/")};exports.getTypeOf=function(input){if(typeof input==="string"){return"string"} 182if(Object.prototype.toString.call(input)==="[object Array]"){return"array"} 183if(support.nodebuffer&&nodejsUtils.isBuffer(input)){return"nodebuffer"} 184if(support.uint8array&&input instanceof Uint8Array){return"uint8array"} 185if(support.arraybuffer&&input instanceof ArrayBuffer){return"arraybuffer"}};exports.checkSupport=function(type){var supported=support[type.toLowerCase()];if(!supported){throw new Error(type+" is not supported by this platform")}};exports.MAX_VALUE_16BITS=65535;exports.MAX_VALUE_32BITS=-1;exports.pretty=function(str){var res="",code,i;for(i=0;i<(str||"").length;i++){code=str.charCodeAt(i);res+="\\x"+(code<16?"0":"")+code.toString(16).toUpperCase()} 186return res};exports.delay=function(callback,args,self){setImmediate(function(){callback.apply(self||null,args||[])})};exports.inherits=function(ctor,superCtor){var Obj=function(){};Obj.prototype=superCtor.prototype;ctor.prototype=new Obj()};exports.extend=function(){var result={},i,attr;for(i=0;i<arguments.length;i++){for(attr in arguments[i]){if(Object.prototype.hasOwnProperty.call(arguments[i],attr)&&typeof result[attr]==="undefined"){result[attr]=arguments[i][attr]}}} 187return result};exports.prepareContent=function(name,inputData,isBinary,isOptimizedBinaryString,isBase64){var promise=external.Promise.resolve(inputData).then(function(data){var isBlob=support.blob&&(data instanceof Blob||["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(data))!==-1);if(isBlob&&typeof FileReader!=="undefined"){return new external.Promise(function(resolve,reject){var reader=new FileReader();reader.onload=function(e){resolve(e.target.result)};reader.onerror=function(e){reject(e.target.error)};reader.readAsArrayBuffer(data)})}else{return data}});return promise.then(function(data){var dataType=exports.getTypeOf(data);if(!dataType){return external.Promise.reject(new Error("Can't read the data of '"+name+"'. Is it "+"in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))} 188if(dataType==="arraybuffer"){data=exports.transformTo("uint8array",data)}else if(dataType==="string"){if(isBase64){data=base64.decode(data)}else if(isBinary){if(isOptimizedBinaryString!==!0){data=string2binary(data)}}} 189return data})}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,"setimmediate":54}],33:[function(require,module,exports){"use strict";var readerFor=require("./reader/readerFor");var utils=require("./utils");var sig=require("./signature");var ZipEntry=require("./zipEntry");var support=require("./support");function ZipEntries(loadOptions){this.files=[];this.loadOptions=loadOptions} 190ZipEntries.prototype={checkSignature:function(expectedSignature){if(!this.reader.readAndCheckSignature(expectedSignature)){this.reader.index-=4;var signature=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature "+"("+utils.pretty(signature)+", expected "+utils.pretty(expectedSignature)+")")}},isSignature:function(askedIndex,expectedSignature){var currentIndex=this.reader.index;this.reader.setIndex(askedIndex);var signature=this.reader.readString(4);var result=signature===expectedSignature;this.reader.setIndex(currentIndex);return result},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 zipComment=this.reader.readData(this.zipCommentLength);var decodeParamType=support.uint8array?"uint8array":"array";var decodeContent=utils.transformTo(decodeParamType,zipComment);this.zipComment=this.loadOptions.decodeFileName(decodeContent)},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={};var extraDataSize=this.zip64EndOfCentralSize-44,index=0,extraFieldId,extraFieldLength,extraFieldValue;while(index<extraDataSize){extraFieldId=this.reader.readInt(2);extraFieldLength=this.reader.readInt(4);extraFieldValue=this.reader.readData(extraFieldLength);this.zip64ExtensibleData[extraFieldId]={id:extraFieldId,length:extraFieldLength,value:extraFieldValue}}},readBlockZip64EndOfCentralLocator:function(){this.diskWithZip64CentralDirStart=this.reader.readInt(4);this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8);this.disksCount=this.reader.readInt(4);if(this.disksCount>1){throw new Error("Multi-volumes zip are not supported")}},readLocalFiles:function(){var i,file;for(i=0;i<this.files.length;i++){file=this.files[i];this.reader.setIndex(file.localHeaderOffset);this.checkSignature(sig.LOCAL_FILE_HEADER);file.readLocalPart(this.reader);file.handleUTF8();file.processAttributes()}},readCentralDir:function(){var file;this.reader.setIndex(this.centralDirOffset);while(this.reader.readAndCheckSignature(sig.CENTRAL_FILE_HEADER)
190){file=new ZipEntry({zip64:this.zip64},this.loadOptions);file.readCentralPart(this.reader);this.files.push(file)} 191if(this.centralDirRecords!==this.files.length){if(this.centralDirRecords!==0&&this.files.length===0){throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)}else{}}},readEndOfCentral:function(){var offset=this.reader.lastIndexOfSignature(sig.CENTRAL_DIRECTORY_END);if(offset<0){var isGarbage=!this.isSignature(0,sig.LOCAL_FILE_HEADER);if(isGarbage){throw 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")}else{throw new Error("Corrupted zip: can't find end of central directory")}} 192this.reader.setIndex(offset);var endOfCentralDirOffset=offset;this.checkSignature(sig.CENTRAL_DIRECTORY_END);this.readBlockEndOfCentral();if(this.diskNumber===utils.MAX_VALUE_16BITS||this.diskWithCentralDirStart===utils.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===utils.MAX_VALUE_16BITS||this.centralDirRecords===utils.MAX_VALUE_16BITS||this.centralDirSize===utils.MAX_VALUE_32BITS||this.centralDirOffset===utils.MAX_VALUE_32BITS){this.zip64=!0;offset=this.reader.lastIndexOfSignature(sig.ZIP64_CENTRAL_DIRECTORY_LOCATOR);if(offset<0){throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator")} 193this.reader.setIndex(offset);this.checkSignature(sig.ZIP64_CENTRAL_DIRECTORY_LOCATOR);this.readBlockZip64EndOfCentralLocator();if(!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,sig.ZIP64_CENTRAL_DIRECTORY_END)){this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(sig.ZIP64_CENTRAL_DIRECTORY_END);if(this.relativeOffsetEndOfZip64CentralDir<0){throw new Error("Corrupted zip: can't find the ZIP64 end of central directory")}} 194this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir);this.checkSignature(sig.ZIP64_CENTRAL_DIRECTORY_END);this.readBlockZip64EndOfCentral()} 195var expectedEndOfCentralDirOffset=this.centralDirOffset+this.centralDirSize;if(this.zip64){expectedEndOfCentralDirOffset+=20;expectedEndOfCentralDirOffset+=12+this.zip64EndOfCentralSize} 196var extraBytes=endOfCentralDirOffset-expectedEndOfCentralDirOffset;if(extraBytes>0){if(this.isSignature(endOfCentralDirOffset,sig.CENTRAL_FILE_HEADER)){}else{this.reader.zero=extraBytes}}else if(extraBytes<0){throw new Error("Corrupted zip: missing "+Math.abs(extraBytes)+" bytes.")}},prepareReader:function(data){this.reader=readerFor(data)},load:function(data){this.prepareReader(data);this.readEndOfCentral();this.readCentralDir();this.readLocalFiles()}};module.exports=ZipEntries},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utils":32,"./zipEntry":34}],34:[function(require,module,exports){"use strict";var readerFor=require("./reader/readerFor");var utils=require("./utils");var CompressedObject=require("./compressedObject");var crc32fn=require("./crc32");var utf8=require("./utf8");var compressions=require("./compressions");var support=require("./support");var MADE_BY_DOS=0x00;var MADE_BY_UNIX=0x03;var findCompression=function(compressionMethod){for(var method in compressions){if(!Object.prototype.hasOwnProperty.call(compressions,method)){continue} 197if(compressions[method].magic===compressionMethod){return compressions[method]}} 198return null};function ZipEntry(options,loadOptions){this.options=options;this.loadOptions=loadOptions} 199ZipEntry.prototype={isEncrypted:function(){return(this.bitFlag&0x0001)===0x0001},useUTF8:function(){return(this.bitFlag&0x0800)===0x0800},readLocalPart:function(reader){var compression,localExtraFieldsLength;reader.skip(22);this.fileNameLength=reader.readInt(2);localExtraFieldsLength=reader.readInt(2);this.fileName=reader.readData(this.fileNameLength);reader.skip(localExtraFieldsLength);if(this.compressedSize===-1||this.uncompressedSize===-1){throw new Error("Bug or corrupted zip : didn't get enough information from the central directory "+"(compressedSize === -1 || uncompressedSize === -1)")} 200compression=findCompression(this.compressionMethod);if(compression===null){throw new Error("Corrupted zip : compression "+utils.pretty(this.compressionMethod)+" unknown (inner file : "+utils.transformTo("string",this.fileName)+")")} 201this.decompressed=new CompressedObject(this.compressedSize,this.uncompressedSize,this.crc32,compression,reader.readData(this.compressedSize))},readCentralPart:function(reader){this.versionMadeBy=reader.readInt(2);reader.skip(2);this.bitFlag=reader.readInt(2);this.compressionMethod=reader.readString(2);this.date=reader.readDate();this.crc32=reader.readInt(4);this.compressedSize=reader.readInt(4);this.uncompressedSize=reader.readInt(4);var fileNameLength=reader.readInt(2);this.extraFieldsLength=reader.readInt(2);this.fileCommentLength=reader.readInt(2);this.diskNumberStart=reader.readInt(2);this.internalFileAttributes=reader.readInt(2);this.externalFileAttributes=reader.readInt(4);this.localHeaderOffset=reader.readInt(4);if(this.isEncrypted()){throw new Error("Encrypted zip are not supported")} 202reader.skip(fileNameLength);this.readExtraFields(reader);this.parseZIP64ExtraField(reader);this.fileComment=reader.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null;this.dosPermissions=null;var madeBy=this.versionMadeBy>>8;this.dir=this.externalFileAttributes&0x0010?!0:!1;if(madeBy===MADE_BY_DOS){this.dosPermissions=this.externalFileAttributes&0x3F} 203if(madeBy===MADE_BY_UNIX){this.unixPermissions=(this.externalFileAttributes>>16)&0xFFFF} 204if(!this.dir&&this.fileNameStr.slice(-1)==="/"){this.dir=!0}},parseZIP64ExtraField:function(){if(!this.extraFields[0x0001]){return} 205var extraReader=readerFor(this.extraFields[0x0001].value);if(this.uncompressedSize===utils.MAX_VALUE_32BITS){this.uncompressedSize=extraReader.readInt(8)} 206if(this.compressedSize===utils.MAX_VALUE_32BITS){this.compressedSize=extraReader.readInt(8)} 207if(this.localHeaderOffset===utils.MAX_VALUE_32BITS){this.localHeaderOffset=extraReader.readInt(8)} 208if(this.diskNumberStart===utils.MAX_VALUE_32BITS){this.diskNumberStart=extraReader.readInt(4)}},readExtraFields:function(reader){var end=reader.index+this.extraFieldsLength,extraFieldId,extraFieldLength,extraFieldValue;if(!this.extraFields){this.extraFields={}} 209while(reader.index+4<end){extraFieldId=reader.readInt(2);extraFieldLength=reader.readInt(2);extraFieldValue=reader.readData(extraFieldLength);this.extraFields[extraFieldId]={id:extraFieldId,length:extraFieldLength,value:extraFieldValue}} 210reader.setIndex(end)},handleUTF8:function(){var decodeParamType=support.uint8array?"uint8array":"array";if(this.useUTF8()){this.fileNameStr=utf8.utf8decode(this.fileName);this.fileCommentStr=utf8.utf8decode(this.fileComment)}else{var upath=this.findExtraFieldUnicodePath();if(upath!==null){this.fileNameStr=upath}else{var fileNameByteArray=utils.transformTo(decodeParamType,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(fileNameByteArray)} 211var ucomment=this.findExtraFieldUnicodeComment();if(ucomment!==null){this.fileCommentStr=ucomment}else{var commentByteArray=utils.transformTo(decodeParamType,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(commentByteArray)}}},findExtraFieldUnicodePath:function(){var upathField=this.extraFields[0x7075];if(upathField){var extraReader=readerFor(upathField.value);if(extraReader.readInt(1)!==1){return null} 212if(crc32fn(this.fileName)!==extraReader.readInt(4)){return null} 213return utf8.utf8decode(extraReader.readData(upathField.length-5))} 214return null},findExtraFieldUnicodeComment:function(){var ucommentField=this.extraFields[0x6375];if(ucommentField){var extraReader=readerFor(ucommentField.value);if(extraReader.readInt(1)!==1){return null} 215if(crc32fn(this.fileComment)!==extraReader.readInt(4)){return null} 216return utf8.utf8decode(extraReader.readData(ucommentField.length-5))} 217return null}};module.exports=ZipEntry},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(require,module,exports){"use strict";var StreamHelper=require("./stream/StreamHelper");var DataWorker=require("./stream/DataWorker");var utf8=require("./utf8");var CompressedObject=require("./compressedObject");var GenericWorker=require("./stream/GenericWorker");var ZipObject=function(name,data,options){this.name=name;this.dir=options.dir;this.date=options.date;this.comment=options.comment;this.unixPermissions=options.unixPermissions;this.dosPermissions=options.dosPermissions;this._data=data;this._dataBinary=options.binary;this.options={compression:options.compression,compressionOptions:options.compressionOptions}};
217ZipObject.prototype={internalStream:function(type){var result=null,outputType="string";try{if(!type){throw new Error("No output type specified.")} 218outputType=type.toLowerCase();var askUnicodeString=outputType==="string"||outputType==="text";if(outputType==="binarystring"||outputType==="text"){outputType="string"} 219result=this._decompressWorker();var isUnicodeString=!this._dataBinary;if(isUnicodeString&&!askUnicodeString){result=result.pipe(new utf8.Utf8EncodeWorker())} 220if(!isUnicodeString&&askUnicodeString){result=result.pipe(new utf8.Utf8DecodeWorker())}}catch(e){result=new GenericWorker("error");result.error(e)} 221return new StreamHelper(result,outputType,"")},async:function(type,onUpdate){return this.internalStream(type).accumulate(onUpdate)},nodeStream:function(type,onUpdate){return this.internalStream(type||"nodebuffer").toNodejsStream(onUpdate)},_compressWorker:function(compression,compressionOptions){if(this._data instanceof CompressedObject&&this._data.compression.magic===compression.magic){return this._data.getCompressedWorker()}else{var result=this._decompressWorker();if(!this._dataBinary){result=result.pipe(new utf8.Utf8EncodeWorker())} 222return CompressedObject.createWorkerFrom(result,compression,compressionOptions)}},_decompressWorker:function(){if(this._data instanceof CompressedObject){return this._data.getContentWorker()}else if(this._data instanceof GenericWorker){return this._data}else{return new DataWorker(this._data)}}};var removedMethods=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"];var removedFn=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")};for(var i=0;i<removedMethods.length;i++){ZipObject.prototype[removedMethods[i]]=removedFn} 223module.exports=ZipObject},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(require,module,exports){(function(global){'use strict';var Mutation=global.MutationObserver||global.WebKitMutationObserver;var scheduleDrain;{if(Mutation){var called=0;var observer=new Mutation(nextTick);var element=global.document.createTextNode('');observer.observe(element,{characterData:!0});scheduleDrain=function(){element.data=(called=++called%2)}}else if(!global.setImmediate&&typeof global.MessageChannel!=='undefined'){var channel=new global.MessageChannel();channel.port1.onmessage=nextTick;scheduleDrain=function(){channel.port2.postMessage(0)}}else if('document' in global&&'onreadystatechange' in global.document.createElement('script')){scheduleDrain=function(){var scriptEl=global.document.createElement('script');scriptEl.onreadystatechange=function(){nextTick();scriptEl.onreadystatechange=null;scriptEl.parentNode.removeChild(scriptEl);scriptEl=null};global.document.documentElement.appendChild(scriptEl)}}else{scheduleDrain=function(){setTimeout(nextTick,0)}}} 224var draining;var queue=[];function nextTick(){draining=!0;var i,oldQueue;var len=queue.length;while(len){oldQueue=queue;queue=[];i=-1;while(++i<len){oldQueue[i]()} 225len=queue.length} 226draining=!1} 227module.exports=immediate;function immediate(task){if(queue.push(task)===1&&!draining){scheduleDrain()}}}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}],37:[function(require,module,exports){'use strict';var immediate=require('immediate');function INTERNAL(){} 228var handlers={};var REJECTED=['REJECTED'];var FULFILLED=['FULFILLED'];var PENDING=['PENDING'];module.exports=Promise;function Promise(resolver){if(typeof resolver!=='function'){throw new TypeError('resolver must be a function')} 229this.state=PENDING;this.queue=[];this.outcome=void 0;if(resolver!==INTERNAL){safelyResolveThenable(this,resolver)}}
230Promise.prototype["finally"]=function(callback){if(typeof callback!=='function'){return this} 231var p=this.constructor;return this.then(resolve,reject);function resolve(value){function yes(){return value} 232return p.resolve(callback()).then(yes)} 233function reject(reason){function no(){throw reason} 234return p.resolve(callback()).then(no)}};Promise.prototype["catch"]=function(onRejected){return this.then(null,onRejected)};Promise.prototype.then=function(onFulfilled,onRejected){if(typeof onFulfilled!=='function'&&this.state===FULFILLED||typeof onRejected!=='function'&&this.state===REJECTED){return this} 235var promise=new this.constructor(INTERNAL);if(this.state!==PENDING){var resolver=this.state===FULFILLED?onFulfilled:onRejected;unwrap(promise,resolver,this.outcome)}else{this.queue.push(new QueueItem(promise,onFulfilled,onRejected))} 236return promise};function QueueItem(promise,onFulfilled,onRejected){this.promise=promise;if(typeof onFulfilled==='function'){this.onFulfilled=onFulfilled;this.callFulfilled=this.otherCallFulfilled} 237if(typeof onRejected==='function'){this.onRejected=onRejected;this.callRejected=this.otherCallRejected}} 238QueueItem.prototype.callFulfilled=function(value){handlers.resolve(this.promise,value)};QueueItem.prototype.otherCallFulfilled=function(value){unwrap(this.promise,this.onFulfilled,value)};QueueItem.prototype.callRejected=function(value){handlers.reject(this.promise,value)};QueueItem.prototype.otherCallRejected=function(value){unwrap(this.promise,this.onRejected,value)};function unwrap(promise,func,value){immediate(function(){var returnValue;try{returnValue=func(value)}catch(e){return handlers.reject(promise,e)} 239if(returnValue===promise){handlers.reject(promise,new TypeError('Cannot resolve promise with itself'))}else{handlers.resolve(promise,returnValue)}})} 240handlers.resolve=function(self,value){var result=tryCatch(getThen,value);if(result.status==='error'){return handlers.reject(self,result.value)} 241var thenable=result.value;if(thenable){safelyResolveThenable(self,thenable)}else{self.state=FULFILLED;self.outcome=value;var i=-1;var len=self.queue.length;while(++i<len){self.queue[i].callFulfilled(value)}} 242return self};handlers.reject=function(self,error){self.state=REJECTED;self.outcome=error;var i=-1;var len=self.queue.length;while(++i<len){self.queue[i].callRejected(error)} 243return self};function getThen(obj){var then=obj&&obj.then;if(obj&&(typeof obj==='object'||typeof obj==='function')&&typeof then==='function'){return function appyThen(){then.apply(obj,arguments)}}} 244function safelyResolveThenable(self,thenable){var called=!1;function onError(value){if(called){return} 245called=!0;handlers.reject(self,value)} 246function onSuccess(value){if(called){return} 247called=!0;handlers.resolve(self,value)} 248function tryToUnwrap(){thenable(onSuccess,onError)} 249var result=tryCatch(tryToUnwrap);if(result.status==='error'){onError(result.value)}} 250function tryCatch(func,value){var out={};try{out.value=func(value);out.status='success'}catch(e){out.status='error';out.value=e} 251return out} 252Promise.resolve=resolve;function resolve(value){if(value instanceof this){return value} 253return handlers.resolve(new this(INTERNAL),value)} 254Promise.reject=reject;function reject(reason){var promise=new this(INTERNAL);return handlers.reject(promise,reason)} 255Promise.all=all;function all(iterable){var self=this;if(Object.prototype.toString.call(iterable)!=='[object Array]'){return this.reject(new TypeError('must be an array'))} 256var len=iterable.length;var called=!1;if(!len){return this.resolve([])} 257var values=new Array(len);var resolved=0;var i=-1;var promise=new this(INTERNAL);while(++i<len){allResolver(iterable[i],i)} 258return promise;function allResolver(value,i){self.resolve(value).then(resolveFromAll,function(error){if(!called){called=!0;handlers.reject(promise,error)}});function resolveFromAll(outValue){values[i]=outValue;if(++resolved===len&&!called){called=!0;handlers.resolve(promise,values)}}}} 259Promise.race=race;function race(iterable){var self=this;if(Object.prototype.toString.call(iterable)!=='[object Array]'){return this.reject(new TypeError('must be an array'))} 260var len=iterable.length;var called=!1;if(!len){return this.resolve([])} 261var i=-1;var promise=new this(INTERNAL);while(++i<len){resolver(iterable[i])} 262return promise;function resolver(value){self.resolve(value).then(function(response){if(!called){called=!0;handlers.resolve(promise,response)}},function(error){if(!called){called=!0;handlers.reject(promise,error)}})}}},{"immediate":36}],38:[function(require,module,exports){'use strict';var assign=require('./lib/utils/common').assign;var deflate=require('./lib/deflate');var inflate=require('./lib/inflate');var constants=require('./lib/zlib/constants');var pako={};assign(pako,deflate,inflate,constants);
262module.exports=pako},{"./lib/deflate":39,"./lib/inflate":40,"./lib/utils/common":41,"./lib/zlib/constants":44}],39:[function(require,module,exports){'use strict';var zlib_deflate=require('./zlib/deflate');var utils=require('./utils/common');var strings=require('./utils/strings');var msg=require('./zlib/messages');var ZStream=require('./zlib/zstream');var toString=Object.prototype.toString;var Z_NO_FLUSH=0;var Z_FINISH=4;var Z_OK=0;var Z_STREAM_END=1;var Z_SYNC_FLUSH=2;var Z_DEFAULT_COMPRESSION=-1;var Z_DEFAULT_STRATEGY=0;var Z_DEFLATED=8;function Deflate(options){if(!(this instanceof Deflate))return new Deflate(options);this.options=utils.assign({level:Z_DEFAULT_COMPRESSION,method:Z_DEFLATED,chunkSize:16384,windowBits:15,memLevel:8,strategy:Z_DEFAULT_STRATEGY,to:''},options||{});var opt=this.options;if(opt.raw&&(opt.windowBits>0)){opt.windowBits=-opt.windowBits}else if(opt.gzip&&(opt.windowBits>0)&&(opt.windowBits<16)){opt.windowBits+=16} 263this.err=0;this.msg='';this.ended=!1;this.chunks=[];this.strm=new ZStream();this.strm.avail_out=0;var status=zlib_deflate.deflateInit2(this.strm,opt.level,opt.method,opt.windowBits,opt.memLevel,opt.strategy);if(status!==Z_OK){throw new Error(msg[status])} 264if(opt.header){zlib_deflate.deflateSetHeader(this.strm,opt.header)} 265if(opt.dictionary){var dict;if(typeof opt.dictionary==='string'){dict=strings.string2buf(opt.dictionary)}else if(toString.call(opt.dictionary)==='[object ArrayBuffer]'){dict=new Uint8Array(opt.dictionary)}else{dict=opt.dictionary} 266status=zlib_deflate.deflateSetDictionary(this.strm,dict);if(status!==Z_OK){throw new Error(msg[status])} 267this._dict_set=!0}} 268Deflate.prototype.push=function(data,mode){var strm=this.strm;var chunkSize=this.options.chunkSize;var status,_mode;if(this.ended){return!1} 269_mode=(mode===~~mode)?mode:((mode===!0)?Z_FINISH:Z_NO_FLUSH);if(typeof data==='string'){strm.input=strings.string2buf(data)}else if(toString.call(data)==='[object ArrayBuffer]'){strm.input=new Uint8Array(data)}else{strm.input=data} 270strm.next_in=0;strm.avail_in=strm.input.length;do{if(strm.avail_out===0){strm.output=new utils.Buf8(chunkSize);strm.next_out=0;strm.avail_out=chunkSize} 271status=zlib_deflate.deflate(strm,_mode);if(status!==Z_STREAM_END&&status!==Z_OK){this.onEnd(status);this.ended=!0;return!1} 272if(strm.avail_out===0||(strm.avail_in===0&&(_mode===Z_FINISH||_mode===Z_SYNC_FLUSH))){if(this.options.to==='string'){this.onData(strings.buf2binstring(utils.shrinkBuf(strm.output,strm.next_out)))}else{this.onData(utils.shrinkBuf(strm.output,strm.next_out))}}}while((strm.avail_in>0||strm.avail_out===0)&&status!==Z_STREAM_END);if(_mode===Z_FINISH){status=zlib_deflate.deflateEnd(this.strm);this.onEnd(status);this.ended=!0;return status===Z_OK} 273if(_mode===Z_SYNC_FLUSH){this.onEnd(Z_OK);strm.avail_out=0;return!0} 274return!0};Deflate.prototype.onData=function(chunk){this.chunks.push(chunk)};Deflate.prototype.onEnd=function(status){if(status===Z_OK){if(this.options.to==='string'){this.result=this.chunks.join('')}else{this.result=utils.flattenChunks(this.chunks)}} 275this.chunks=[];this.err=status;this.msg=this.strm.msg};function deflate(input,options){var deflator=new Deflate(options);deflator.push(input,!0);if(deflator.err){throw deflator.msg||msg[deflator.err]} 276return deflator.result} 277function deflateRaw(input,options){options=options||{};options.raw=!0;return deflate(input,options)} 278function gzip(input,options){options=options||{};options.gzip=!0;return deflate(input,options)} 279exports.Deflate=Deflate;exports.deflate=deflate;exports.deflateRaw=deflateRaw;exports.gzip=gzip},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(require,module,exports){'use strict';var zlib_inflate=require('./zlib/inflate');var utils=require('./utils/common');var strings=require('./utils/strings');var c=require('./zlib/constants');var msg=require('./zlib/messages');var ZStream=require('./zlib/zstream');var GZheader=require('./zlib/gzheader');var toString=Object.prototype.toString;function Inflate(options){if(!(this instanceof Inflate))return new Inflate(options);this.options=utils.assign({chunkSize:16384,windowBits:0,to:''},options||{});var opt=this.options;if(opt.raw&&(opt.windowBits>=0)&&(opt.windowBits<16)){opt.windowBits=-opt.windowBits;if(opt.windowBits===0){opt.windowBits=-15}} 280if((opt.windowBits>=0)&&(opt.windowBits<16)&&!(options&&options.windowBits)){opt.windowBits+=32} 281if((opt.windowBits>15)&&(opt.windowBits<48)){if((opt.windowBits&15)===0){opt.windowBits|=15}} 282this.err=0;this.msg='';this.ended=!1;this.chunks=[];this.strm=new ZStream();this.strm.avail_out=0;var status=zlib_inflate.inflateInit2(this.strm,opt.windowBits);if(status!==c.Z_OK){throw new Error(msg[status])} 283this.header=new GZheader();zlib_inflate.inflateGetHeader(this.strm,this.header)} 284Inflate.prototype.push=function(data,mode){var strm=this.strm;var chunkSize=this.options.chunkSize;var dictionary=this.options.dictionary;var status,_mode;var next_out_utf8,tail,utf8str;var dict;var allowBufError=!1;if(this.ended){return!1} 285_mode=(mode===~~mode)?mode:((mode===!0)?c.Z_FINISH:c.Z_NO_FLUSH);if(typeof data==='string'){strm.input=strings.binstring2buf(data)}else if(toString.call(data)==='[object ArrayBuffer]'){strm.input=new
285Uint8Array(data)}else{strm.input=data} 286strm.next_in=0;strm.avail_in=strm.input.length;do{if(strm.avail_out===0){strm.output=new utils.Buf8(chunkSize);strm.next_out=0;strm.avail_out=chunkSize} 287status=zlib_inflate.inflate(strm,c.Z_NO_FLUSH);if(status===c.Z_NEED_DICT&&dictionary){if(typeof dictionary==='string'){dict=strings.string2buf(dictionary)}else if(toString.call(dictionary)==='[object ArrayBuffer]'){dict=new Uint8Array(dictionary)}else{dict=dictionary} 288status=zlib_inflate.inflateSetDictionary(this.strm,dict)} 289if(status===c.Z_BUF_ERROR&&allowBufError===!0){status=c.Z_OK;allowBufError=!1} 290if(status!==c.Z_STREAM_END&&status!==c.Z_OK){this.onEnd(status);this.ended=!0;return!1} 291if(strm.next_out){if(strm.avail_out===0||status===c.Z_STREAM_END||(strm.avail_in===0&&(_mode===c.Z_FINISH||_mode===c.Z_SYNC_FLUSH))){if(this.options.to==='string'){next_out_utf8=strings.utf8border(strm.output,strm.next_out);tail=strm.next_out-next_out_utf8;utf8str=strings.buf2string(strm.output,next_out_utf8);strm.next_out=tail;strm.avail_out=chunkSize-tail;if(tail){utils.arraySet(strm.output,strm.output,next_out_utf8,tail,0)} 292this.onData(utf8str)}else{this.onData(utils.shrinkBuf(strm.output,strm.next_out))}}} 293if(strm.avail_in===0&&strm.avail_out===0){allowBufError=!0}}while((strm.avail_in>0||strm.avail_out===0)&&status!==c.Z_STREAM_END);if(status===c.Z_STREAM_END){_mode=c.Z_FINISH} 294if(_mode===c.Z_FINISH){status=zlib_inflate.inflateEnd(this.strm);this.onEnd(status);this.ended=!0;return status===c.Z_OK} 295if(_mode===c.Z_SYNC_FLUSH){this.onEnd(c.Z_OK);strm.avail_out=0;return!0} 296return!0};Inflate.prototype.onData=function(chunk){this.chunks.push(chunk)};Inflate.prototype.onEnd=function(status){if(status===c.Z_OK){if(this.options.to==='string'){this.result=this.chunks.join('')}else{this.result=utils.flattenChunks(this.chunks)}} 297this.chunks=[];this.err=status;this.msg=this.strm.msg};function inflate(input,options){var inflator=new Inflate(options);inflator.push(input,!0);if(inflator.err){throw inflator.msg||msg[inflator.err]} 298return inflator.result} 299function inflateRaw(input,options){options=options||{};options.raw=!0;return inflate(input,options)} 300exports.Inflate=Inflate;exports.inflate=inflate;exports.inflateRaw=inflateRaw;exports.ungzip=inflate},{"./utils/common":41,"./utils/strings":42,"./zlib/constants":44,"./zlib/gzheader":47,"./zlib/inflate":49,"./zlib/messages":51,"./zlib/zstream":53}],41:[function(require,module,exports){'use strict';var TYPED_OK=(typeof Uint8Array!=='undefined')&&(typeof Uint16Array!=='undefined')&&(typeof Int32Array!=='undefined');exports.assign=function(obj){var sources=Array.prototype.slice.call(arguments,1);while(sources.length){var source=sources.shift();if(!source){continue} 301if(typeof source!=='object'){throw new TypeError(source+'must be non-object')} 302for(var p in source){if(source.hasOwnProperty(p)){obj[p]=source[p]}}} 303return obj};exports.shrinkBuf=function(buf,size){if(buf.length===size){return buf} 304if(buf.subarray){return buf.subarray(0,size)} 305buf.length=size;return buf};var fnTyped={arraySet:function(dest,src,src_offs,len,dest_offs){if(src.subarray&&dest.subarray){dest.set(src.subarray(src_offs,src_offs+len),dest_offs);return} 306for(var i=0;i<len;i++){dest[dest_offs+i]=src[src_offs+i]}},flattenChunks:function(chunks){var i,l,len,pos,chunk,result;len=0;for(i=0,l=chunks.length;i<l;i++){len+=chunks[i].length} 307result=new Uint8Array(len);pos=0;for(i=0,l=chunks.length;i<l;i++){chunk=chunks[i];result.set(chunk,pos);pos+=chunk.length} 308return result}};var fnUntyped={arraySet:function(dest,src,src_offs,len,dest_offs){for(var i=0;i<len;i++){dest[dest_offs+i]=src[src_offs+i]}},flattenChunks:function(chunks){return[].concat.apply([],chunks)}};exports.setTyped=function(on){if(on){exports.Buf8=Uint8Array;exports.Buf16=Uint16Array;exports.Buf32=Int32Array;exports.assign(exports,fnTyped)}else{exports.Buf8=Array;exports.Buf16=Array;exports.Buf32=Array;exports.assign(exports,fnUntyped)}};exports.setTyped(TYPED_OK)},{}],42:[function(require,module,exports){'use strict';var utils=require('./common');var STR_APPLY_OK=!0;var STR_APPLY_UIA_OK=!0;try{String.fromCharCode.apply(null,[0])}catch(__){STR_APPLY_OK=!1} 309try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(__){STR_APPLY_UIA_OK=!1} 310var _utf8len=new utils.Buf8(256);for(var q=0;q<256;q++){_utf8len[q]=(q>=252?6:q>=248?5:q>=240?4:q>=224?3:q>=192?2:1)} 311_utf8len[254]=_utf8len[254]=1;exports.string2buf=function(str){var buf,c,c2,m_pos,i,str_len=str.length,buf_len=0;for(m_pos=0;m_pos<str_len;m_pos++){c=str.charCodeAt(m_pos);
311if((c&0xfc00)===0xd800&&(m_pos+1<str_len)){c2=str.charCodeAt(m_pos+1);if((c2&0xfc00)===0xdc00){c=0x10000+((c-0xd800)<<10)+(c2-0xdc00);m_pos++}} 312buf_len+=c<0x80?1:c<0x800?2:c<0x10000?3:4} 313buf=new utils.Buf8(buf_len);for(i=0,m_pos=0;i<buf_len;m_pos++){c=str.charCodeAt(m_pos);if((c&0xfc00)===0xd800&&(m_pos+1<str_len)){c2=str.charCodeAt(m_pos+1);if((c2&0xfc00)===0xdc00){c=0x10000+((c-0xd800)<<10)+(c2-0xdc00);m_pos++}} 314if(c<0x80){buf[i++]=c}else if(c<0x800){buf[i++]=0xC0|(c>>>6);buf[i++]=0x80|(c&0x3f)}else if(c<0x10000){buf[i++]=0xE0|(c>>>12);buf[i++]=0x80|(c>>>6&0x3f);buf[i++]=0x80|(c&0x3f)}else{buf[i++]=0xf0|(c>>>18);buf[i++]=0x80|(c>>>12&0x3f);buf[i++]=0x80|(c>>>6&0x3f);buf[i++]=0x80|(c&0x3f)}} 315return buf};function buf2binstring(buf,len){if(len<65537){if((buf.subarray&&STR_APPLY_UIA_OK)||(!buf.subarray&&STR_APPLY_OK)){return String.fromCharCode.apply(null,utils.shrinkBuf(buf,len))}} 316var result='';for(var i=0;i<len;i++){result+=String.fromCharCode(buf[i])} 317return result} 318exports.buf2binstring=function(buf){return buf2binstring(buf,buf.length)};exports.binstring2buf=function(str){var buf=new utils.Buf8(str.length);for(var i=0,len=buf.length;i<len;i++){buf[i]=str.charCodeAt(i)} 319return buf};exports.buf2string=function(buf,max){var i,out,c,c_len;var len=max||buf.length;var utf16buf=new Array(len*2);for(out=0,i=0;i<len;){c=buf[i++];if(c<0x80){utf16buf[out++]=c;continue} 320c_len=_utf8len[c];if(c_len>4){utf16buf[out++]=0xfffd;i+=c_len-1;continue} 321c&=c_len===2?0x1f:c_len===3?0x0f:0x07;while(c_len>1&&i<len){c=(c<<6)|(buf[i++]&0x3f);c_len--} 322if(c_len>1){utf16buf[out++]=0xfffd;continue} 323if(c<0x10000){utf16buf[out++]=c}else{c-=0x10000;utf16buf[out++]=0xd800|((c>>10)&0x3ff);utf16buf[out++]=0xdc00|(c&0x3ff)}} 324return buf2binstring(utf16buf,out)};exports.utf8border=function(buf,max){var pos;max=max||buf.length;if(max>buf.length){max=buf.length} 325pos=max-1;while(pos>=0&&(buf[pos]&0xC0)===0x80){pos--} 326if(pos<0){return max} 327if(pos===0){return max} 328return(pos+_utf8len[buf[pos]]>max)?pos:max}},{"./common":41}],43:[function(require,module,exports){'use strict';function adler32(adler,buf,len,pos){var s1=(adler&0xffff)|0,s2=((adler>>>16)&0xffff)|0,n=0;while(len!==0){n=len>2000?2000:len;len-=n;do{s1=(s1+buf[pos++])|0;s2=(s2+s1)|0}while(--n);s1%=65521;s2%=65521} 329return(s1|(s2<<16))|0} 330module.exports=adler32},{}],44:[function(require,module,exports){'use strict';module.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(require,module,exports){'use strict';function makeTable(){var c,table=[];for(var n=0;n<256;n++){c=n;for(var k=0;k<8;k++){c=((c&1)?(0xEDB88320^(c>>>1)):(c>>>1))} 331table[n]=c} 332return table} 333var crcTable=makeTable();function crc32(crc,buf,len,pos){var t=crcTable,end=pos+len;crc^=-1;for(var i=pos;i<end;i++){crc=(crc>>>8)^t[(crc^buf[i])&0xFF]} 334return(crc^(-1))} 335module.exports=crc32},{}],46:[function(require,module,exports){'use strict';var utils=require('../utils/common');var trees=require('./trees');var adler32=require('./adler32');var crc32=require('./crc32');var msg=require('./messages');var Z_NO_FLUSH=0;var Z_PARTIAL_FLUSH=1;var Z_FULL_FLUSH=3;var Z_FINISH=4;var Z_BLOCK=5;var Z_OK=0;var Z_STREAM_END=1;var Z_STREAM_ERROR=-2;var Z_DATA_ERROR=-3;var Z_BUF_ERROR=-5;var Z_DEFAULT_COMPRESSION=-1;var Z_FILTERED=1;var Z_HUFFMAN_ONLY=2;var Z_RLE=3;var Z_FIXED=4;var Z_DEFAULT_STRATEGY=0;var Z_UNKNOWN=2;var Z_DEFLATED=8;var MAX_MEM_LEVEL=9;var MAX_WBITS=15;var DEF_MEM_LEVEL=8;var LENGTH_CODES=29;var LITERALS=256;var L_CODES=LITERALS+1+LENGTH_CODES;var D_CODES=30;var BL_CODES=19;var HEAP_SIZE=2*L_CODES+1;var MAX_BITS=15;var MIN_MATCH=3;var MAX_MATCH=258;var MIN_LOOKAHEAD=(MAX_MATCH+MIN_MATCH+1);var PRESET_DICT=0x20;var INIT_STATE=42;var EXTRA_STATE=69;var NAME_STATE=73;var COMMENT_STATE=91;var HCRC_STATE=103;var BUSY_STATE=113;var FINISH_STATE=666;var BS_NEED_MORE=1;var BS_BLOCK_DONE=2;var BS_FINISH_STARTED=3;var BS_FINISH_DONE=4;var OS_CODE=0x03;function err(strm,errorCode){strm.msg=msg[errorCode];return errorCode} 336function rank(f){return((f)<<1)-((f)>4?9:0)} 337function zero(buf){var len=buf.length;while(--len>=0){buf[len]=0}} 338function flush_pending(strm){var s=strm.state;var len=s.pending;if(len>strm.avail_out){len=strm.avail_out} 339if(len===0){return} 340utils.arraySet(strm.output,s.pending_buf,s.pending_out,len,strm.next_out);strm.next_out+=len;s.pending_out+=len;strm.total_out+=len;strm.avail_out-=len;s.pending-=len;if(s.pending===0){s.pending_out=0}} 341function flush_block_only(s,last){trees._tr_flush_block(s,(s.block_start>=0?s.block_start:-1),s.strstart-s.block_start,last);s.block_start=s.strstart;flush_pending(s.strm)} 342function put_byte(s,b){s.pending_buf[s.pending++]=b} 343function putShortMSB(s,b){s.pending_buf[s.pending++]=(b>>>8)&0xff;s.pending_buf[s.pending++]=b&0xff} 344function read_buf(strm,buf,start,size){var len=strm.avail_in;if(len>size){len=size} 345if(len===0){return 0} 346strm.avail_in-=len;utils.arraySet(buf,strm.input,strm.next_in,len,start);if(strm.state.wrap===1){strm.adler=adler32(strm.adler,buf,len,start)}else if(strm.state.wrap===2){strm.adler=crc32(strm.adler,buf,len,start)} 347strm.next_in+=len;strm.total_in+=len;return len} 348function longest_match(s,cur_match){var chain_length=s.max_chain_length;var scan=s.strstart;var match;var len;var best_len=s.prev_length;var nice_match=s.nice_match;var limit=(s.strstart>(s.w_size-MIN_LOOKAHEAD))?s.strstart-(s.w_size-MIN_LOOKAHEAD):0;var _win=s.window;var wmask=s.w_mask;var prev=s.prev;var strend=s.strstart+MAX_MATCH;var scan_end1=_win[scan+best_len-1];var scan_end=_win[scan+best_len];if(s.prev_length>=s.good_match){chain_length>>=2} 349if(nice_match>s.lookahead){nice_match=s.lookahead} 350do{match=cur_match;if(_win[match+best_len]!==scan_end||_win[match+best_len-1]!==scan_end1||_win[match]!==_win[scan]||_win[++match]!==_win[scan+1]){continue} 351scan+=2;match++;do{}while(_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&_win[++scan]===_win[++match]&&scan<strend
vendor: 15,556 bytes, lines 351-447
351);len=MAX_MATCH-(strend-scan);scan=strend-MAX_MATCH;if(len>best_len){s.match_start=cur_match;best_len=len;if(len>=nice_match){break} 352scan_end1=_win[scan+best_len-1];scan_end=_win[scan+best_len]}}while((cur_match=prev[cur_match&wmask])>limit&&--chain_length!==0);if(best_len<=s.lookahead){return best_len} 353return s.lookahead} 354function fill_window(s){var _w_size=s.w_size;var p,n,m,more,str;do{more=s.window_size-s.lookahead-s.strstart;if(s.strstart>=_w_size+(_w_size-MIN_LOOKAHEAD)){utils.arraySet(s.window,s.window,_w_size,_w_size,0);s.match_start-=_w_size;s.strstart-=_w_size;s.block_start-=_w_size;n=s.hash_size;p=n;do{m=s.head[--p];s.head[p]=(m>=_w_size?m-_w_size:0)}while(--n);n=_w_size;p=n;do{m=s.prev[--p];s.prev[p]=(m>=_w_size?m-_w_size:0)}while(--n);more+=_w_size} 355if(s.strm.avail_in===0){break} 356n=read_buf(s.strm,s.window,s.strstart+s.lookahead,more);s.lookahead+=n;if(s.lookahead+s.insert>=MIN_MATCH){str=s.strstart-s.insert;s.ins_h=s.window[str];s.ins_h=((s.ins_h<<s.hash_shift)^s.window[str+1])&s.hash_mask;while(s.insert){s.ins_h=((s.ins_h<<s.hash_shift)^s.window[str+MIN_MATCH-1])&s.hash_mask;s.prev[str&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=str;str++;s.insert--;if(s.lookahead+s.insert<MIN_MATCH){break}}}}while(s.lookahead<MIN_LOOKAHEAD&&s.strm.avail_in!==0);} 357function deflate_stored(s,flush){var max_block_size=0xffff;if(max_block_size>s.pending_buf_size-5){max_block_size=s.pending_buf_size-5} 358for(;;){if(s.lookahead<=1){fill_window(s);if(s.lookahead===0&&flush===Z_NO_FLUSH){return BS_NEED_MORE} 359if(s.lookahead===0){break}} 360s.strstart+=s.lookahead;s.lookahead=0;var max_start=s.block_start+max_block_size;if(s.strstart===0||s.strstart>=max_start){s.lookahead=s.strstart-max_start;s.strstart=max_start;flush_block_only(s,!1);if(s.strm.avail_out===0){return BS_NEED_MORE}} 361if(s.strstart-s.block_start>=(s.w_size-MIN_LOOKAHEAD)){flush_block_only(s,!1);if(s.strm.avail_out===0){return BS_NEED_MORE}}} 362s.insert=0;if(flush===Z_FINISH){flush_block_only(s,!0);if(s.strm.avail_out===0){return BS_FINISH_STARTED} 363return BS_FINISH_DONE} 364if(s.strstart>s.block_start){flush_block_only(s,!1);if(s.strm.avail_out===0){return BS_NEED_MORE}} 365return BS_NEED_MORE} 366function deflate_fast(s,flush){var hash_head;var bflush;for(;;){if(s.lookahead<MIN_LOOKAHEAD){fill_window(s);if(s.lookahead<MIN_LOOKAHEAD&&flush===Z_NO_FLUSH){return BS_NEED_MORE} 367if(s.lookahead===0){break}} 368hash_head=0;if(s.lookahead>=MIN_MATCH){s.ins_h=((s.ins_h<<s.hash_shift)^s.window[s.strstart+MIN_MATCH-1])&s.hash_mask;hash_head=s.prev[s.strstart&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=s.strstart} 369if(hash_head!==0&&((s.strstart-hash_head)<=(s.w_size-MIN_LOOKAHEAD))){s.match_length=longest_match(s,hash_head)} 370if(s.match_length>=MIN_MATCH){bflush=trees._tr_tally(s,s.strstart-s.match_start,s.match_length-MIN_MATCH);s.lookahead-=s.match_length;if(s.match_length<=s.max_lazy_match&&s.lookahead>=MIN_MATCH){s.match_length--;do{s.strstart++;s.ins_h=((s.ins_h<<s.hash_shift)^s.window[s.strstart+MIN_MATCH-1])&s.hash_mask;hash_head=s.prev[s.strstart&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=s.strstart}while(--s.match_length!==0);s.strstart++}else{s.strstart+=s.match_length;s.match_length=0;s.ins_h=s.window[s.strstart];s.ins_h=((s.ins_h<<s.hash_shift)^s.window[s.strstart+1])&s.hash_mask}}else{bflush=trees._tr_tally(s,0,s.window[s.strstart]);s.lookahead--;s.strstart++} 371if(bflush){flush_block_only(s,!1);if(s.strm.avail_out===0){return BS_NEED_MORE}}} 372s.insert=((s.strstart<(MIN_MATCH-1))?s.strstart:MIN_MATCH-1);if(flush===Z_FINISH){flush_block_only(s,!0);if(s.strm.avail_out===0){return BS_FINISH_STARTED} 373return BS_FINISH_DONE} 374if(s.last_lit){flush_block_only(s,!1);if(s.strm.avail_out===0){return BS_NEED_MORE}} 375return BS_BLOCK_DONE} 376function deflate_slow(s,flush){var hash_head;var bflush;var max_insert;for(;;){if(s.lookahead<MIN_LOOKAHEAD){fill_window(s);if(s.lookahead<MIN_LOOKAHEAD&&flush===Z_NO_FLUSH){return BS_NEED_MORE} 377if(s.lookahead===0){break}} 378hash_head=0;if(s.lookahead>=MIN_MATCH){s.ins_h=((s.ins_h<<s.hash_shift)^s.window[s.strstart+MIN_MATCH-1])&s.hash_mask;hash_head=s.prev[s.strstart&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=s.strstart} 379s.prev_length=s.match_length;s.prev_match=s.match_start;s.match_length=MIN_MATCH-1;if(hash_head!==0&&s.prev_length<s.max_lazy_match&&s.strstart-hash_head<=(s.w_size-MIN_LOOKAHEAD)){s.match_length=longest_match(s,hash_head);if(s.match_length<=5&&(s.strategy===Z_FILTERED||(s.match_length===MIN_MATCH&&s.strstart-s.match_start>4096))){s.match_length=MIN_MATCH-1}} 380if(s.prev_length>=MIN_MATCH&&s.match_length<=s.prev_length){max_insert=s.strstart+s.lookahead-MIN_MATCH;bflush=trees._tr_tally(s,s.strstart-1-s.prev_match,s.prev_length-MIN_MATCH);s.lookahead-=s.prev_length-1;s.prev_length-=2;do{if(++s.strstart<=max_insert){s.ins_h=((s.ins_h<<s.hash_shift)^s.window[s.strstart+MIN_MATCH-1])&s.hash_mask;hash_head=s.prev[s.strstart&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=s.strstart}}while(--s.prev_length!==0);s.match_available=0;s.match_length=MIN_MATCH-1;s.strstart++;if(bflush){flush_block_only(s,!1);if(s.strm.avail_out===0){return BS_NEED_MORE}}}else if(s.match_available){bflush=trees._tr_tally(s,0,s.window[s.strstart-1]);if(bflush){flush_block_only(s,!1)} 381s.strstart++;s.lookahead--;if(s.strm.avail_out===0){return BS_NEED_MORE}}else{s.match_available=1;s.strstart++;s.lookahead--}} 382if(s.match_available){bflush=trees._tr_tally(s,0,s.window[s.strstart-1]);s.match_available=0} 383s.insert=s.strstart<MIN_MATCH-1?s.strstart:MIN_MATCH-1;if(flush===Z_FINISH){flush_block_only(s,!0);if(s.strm.avail_out===0){return BS_FINISH_STARTED} 384return BS_FINISH_DONE} 385if(s.last_lit){flush_block_only(s,!1);if(s.strm.avail_out===0){return BS_NEED_MORE}} 386return BS_BLOCK_DONE} 387function deflate_rle(s,flush){var bflush;var prev;var scan,strend;var _win=s.window;for(;;){if(s.lookahead<=MAX_MATCH){fill_window(s);if(s.lookahead<=MAX_MATCH&&flush===Z_NO_FLUSH){return BS_NEED_MORE} 388if(s.lookahead===0){break}} 389s.match_length=0;if(s.lookahead>=MIN_MATCH&&s.strstart>0){scan=s.strstart-1;prev=_win[scan];if(prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]){strend=s.strstart+MAX_MATCH;do{}while(prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&prev===_win[++scan]&&scan<strend);s.match_length=MAX_MATCH-(strend-scan);if(s.match_length>s.lookahead){s.match_length=s.lookahead}}} 390if(s.match_length>=MIN_MATCH){bflush=trees._tr_tally(s,1,s.match_length-MIN_MATCH);s.lookahead-=s.match_length;s.strstart+=s.match_length;s.match_length=0}else{bflush=trees._tr_tally(s,0,s.window[s.strstart]);s.lookahead--;s.strstart++} 391if(bflush){flush_block_only(s,!1);if(s.strm.avail_out===0){return BS_NEED_MORE}}} 392s.insert=0;if(flush===Z_FINISH){flush_block_only(s,!0);if(s.strm.avail_out===0){return BS_FINISH_STARTED} 393return BS_FINISH_DONE} 394if(s.last_lit){flush_block_only(s,!1);if(s.strm.avail_out===0){return BS_NEED_MORE}} 395return BS_BLOCK_DONE} 396function deflate_huff(s,flush){var bflush;for(;;){if(s.lookahead===0){fill_window(s);if(s.lookahead===0){if(flush===Z_NO_FLUSH){return BS_NEED_MORE} 397break}} 398s.match_length=0;bflush=trees._tr_tally(s,0,s.window[s.strstart]);s.lookahead--;s.strstart++;if(bflush){flush_block_only(s,!1);if(s.strm.avail_out===0){return BS_NEED_MORE}}} 399s.insert=0;if(flush===Z_FINISH){flush_block_only(s,!0);if(s.strm.avail_out===0){return BS_FINISH_STARTED} 400return BS_FINISH_DONE} 401if(s.last_lit){flush_block_only(s,!1);if(s.strm.avail_out===0){return BS_NEED_MORE}} 402return BS_BLOCK_DONE} 403function Config(good_length,max_lazy,nice_length,max_chain,func){this.good_length=good_length;this.max_lazy=max_lazy;this.nice_length=nice_length;this.max_chain=max_chain;this.func=func} 404var configuration_table;configuration_table=[new Config(0,0,0,0,deflate_stored),new Config(4,4,8,4,deflate_fast),new Config(4,5,16,8,deflate_fast),new Config(4,6,32,32,deflate_fast),new Config(4,4,16,16,deflate_slow),new Config(8,16,32,32,deflate_slow),new Config(8,16,128,128,deflate_slow),new Config(8,32,128,256,deflate_slow),new Config(32,128,258,1024,deflate_slow),new Config(32,258,258,4096,deflate_slow)];function lm_init(s){s.window_size=2*s.w_size;zero(s.head);s.max_lazy_match=configuration_table[s.level].max_lazy;s.good_match=configuration_table[s.level].good_length;s.nice_match=configuration_table[s.level].nice_length;s.max_chain_length=configuration_table[s.level].max_chain;s.strstart=0;s.block_start=0;s.lookahead=0;s.insert=0;s.match_length=s.prev_length=MIN_MATCH-1;s.match_available=0;s.ins_h=0} 405function DeflateState(){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=Z_DEFLATED;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 utils.Buf16(HEAP_SIZE*2);this.dyn_dtree=new utils.Buf16((2*D_CODES+1)*2);this.bl_tree=new utils.Buf16((2*BL_CODES+1)*2);zero(this.dyn_ltree);zero(this.dyn_dtree);zero(this.bl_tree);this.l_desc=null;this.d_desc=null;this.bl_desc=null;this.bl_count=new utils.Buf16(MAX_BITS+1);this.heap=new utils.Buf16(2*L_CODES+1);zero(this.heap);this.heap_len=0;this.heap_max=0;this.depth=new utils.Buf16(2*L_CODES+1);zero(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} 406function deflateResetKeep(strm){var s;if(!strm||!strm.state){return err(strm,Z_STREAM_ERROR)} 407strm.total_in=strm.total_out=0;strm.data_type=Z_UNKNOWN;s=strm.state;s.pending=0;s.pending_out=0;if(s.wrap<0){s.wrap=-s.wrap} 408s.status=(s.wrap?INIT_STATE:BUSY_STATE);strm.adler=(s.wrap===2)?0:1;s.last_flush=Z_NO_FLUSH;trees._tr_init(s);return Z_OK} 409function deflateReset(strm){var ret=deflateResetKeep(strm);if(ret===Z_OK){lm_init(strm.state)} 410return ret} 411function deflateSetHeader(strm,head){if(!strm||!strm.state){return Z_STREAM_ERROR} 412if(strm.state.wrap!==2){return Z_STREAM_ERROR} 413strm.state.gzhead=head;return Z_OK} 414function deflateInit2(strm,level,method,windowBits,memLevel,strategy){if(!strm){return Z_STREAM_ERROR} 415var wrap=1;if(level===Z_DEFAULT_COMPRESSION){level=6} 416if(windowBits<0){wrap=0;windowBits=-windowBits}else if(windowBits>15){wrap=2;windowBits-=16} 417if(memLevel<1||memLevel>MAX_MEM_LEVEL||method!==Z_DEFLATED||windowBits<8||windowBits>15||level<0||level>9||strategy<0||strategy>Z_FIXED){return err(strm,Z_STREAM_ERROR)} 418if(windowBits===8){windowBits=9} 419var s=new DeflateState();strm.state=s;s.strm=strm;s.wrap=wrap;s.gzhead=null;s.w_bits=windowBits;s.w_size=1<<s.w_bits;s.w_mask=s.w_size-1;s.hash_bits=memLevel+7;s.hash_size=1<<s.hash_bits;s.hash_mask=s.hash_size-1;s.hash_shift=~~((s.hash_bits+MIN_MATCH-1)/MIN_MATCH);s.window=new utils.Buf8(s.w_size*2);s.head=new utils.Buf16(s.hash_size);s.prev=new utils.Buf16(s.w_size);s.lit_bufsize=1<<(memLevel+6);s.pending_buf_size=s.lit_bufsize*4;s.pending_buf=new utils.Buf8(s.pending_buf_size);s.d_buf=1*s.lit_bufsize;s.l_buf=(1+2)*s.lit_bufsize;s.level=level;s.strategy=strategy;s.method=method;return deflateReset(strm)} 420function deflateInit(strm,level){return deflateInit2(strm,level,Z_DEFLATED,MAX_WBITS,DEF_MEM_LEVEL,Z_DEFAULT_STRATEGY)} 421function deflate(strm,flush){var old_flush,s;var beg,val;if(!strm||!strm.state||flush>Z_BLOCK||flush<0){return strm?err(strm,Z_STREAM_ERROR):Z_STREAM_ERROR} 422s=strm.state;if(!strm.output||(!strm.input&&strm.avail_in!==0)||(s.status===FINISH_STATE&&flush!==Z_FINISH)){return err(strm,(strm.avail_out===0)?Z_BUF_ERROR:Z_STREAM_ERROR)} 423s.strm=strm;old_flush=s.last_flush;s.last_flush=flush;if(s.status===INIT_STATE){if(s.wrap===2){strm.adler=0;put_byte(s,31);put_byte(s,139);put_byte(s,8);if(!s.gzhead){put_byte(s,0);put_byte(s,0);put_byte(s,0);put_byte(s,0);put_byte(s,0);put_byte(s,s.level===9?2:(s.strategy>=Z_HUFFMAN_ONLY||s.level<2?4:0));put_byte(s,OS_CODE);s.status=BUSY_STATE}else{put_byte(s,(s.gzhead.text?1:0)+(s.gzhead.hcrc?2:0)+(!s.gzhead.extra?0:4)+(!s.gzhead.name?0:8)+(!s.gzhead.comment?0:16));put_byte(s,s.gzhead.time&0xff);put_byte(s,(s.gzhead.time>>8)&0xff);put_byte(s,(s.gzhead.time>>16)&0xff);put_byte(s,(s.gzhead.time>>24)&0xff);put_byte(s,s.level===9?2:(s.strategy>=Z_HUFFMAN_ONLY||s.level<2?4:0));put_byte(s,s.gzhead.os&0xff);if(s.gzhead.extra&&s.gzhead.extra.length){put_byte(s,s.gzhead.extra.length&0xff);put_byte(s,(s.gzhead.extra.length>>8)&0xff)} 424if(s.gzhead.hcrc){strm.adler=crc32(strm.adler,s.pending_buf,s.pending,0)} 425s.gzindex=0;s.status=EXTRA_STATE}}else{var header=(Z_DEFLATED+((s.w_bits-8)<<4))<<8;var level_flags=-1;if(s.strategy>=Z_HUFFMAN_ONLY||s.level<2){level_flags=0}else if(s.level<6){level_flags=1}else if(s.level===6){level_flags=2}else{level_flags=3} 426header|=(level_flags<<6);if(s.strstart!==0){header|=PRESET_DICT} 427header+=31-(header%31);s.status=BUSY_STATE;putShortMSB(s,header);if(s.strstart!==0){putShortMSB(s,strm.adler>>>16);putShortMSB(s,strm.adler&0xffff)} 428strm.adler=1}} 429if(s.status===EXTRA_STATE){if(s.gzhead.extra){beg=s.pending;while(s.gzindex<(s.gzhead.extra.length&0xffff)){if(s.pending===s.pending_buf_size){if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)} 430flush_pending(strm);beg=s.pending;if(s.pending===s.pending_buf_size){break}} 431put_byte(s,s.gzhead.extra[s.gzindex]&0xff);s.gzindex++} 432if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)} 433if(s.gzindex===s.gzhead.extra.length){s.gzindex=0;s.status=NAME_STATE}}else{s.status=NAME_STATE}} 434if(s.status===NAME_STATE){if(s.gzhead.name){beg=s.pending;do{if(s.pending===s.pending_buf_size){if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)} 435flush_pending(strm);beg=s.pending;if(s.pending===s.pending_buf_size){val=1;break}} 436if(s.gzindex<s.gzhead.name.length){val=s.gzhead.name.charCodeAt(s.gzindex++)&0xff}else{val=0} 437put_byte(s,val)}while(val!==0);if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)} 438if(val===0){s.gzindex=0;s.status=COMMENT_STATE}}else{s.status=COMMENT_STATE}} 439if(s.status===COMMENT_STATE){if(s.gzhead.comment){beg=s.pending;do{if(s.pending===s.pending_buf_size){if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)} 440flush_pending(strm);beg=s.pending;if(s.pending===s.pending_buf_size){val=1;break}} 441if(s.gzindex<s.gzhead.comment.length){val=s.gzhead.comment.charCodeAt(s.gzindex++)&0xff}else{val=0} 442put_byte(s,val)}while(val!==0);if(s.gzhead.hcrc&&s.pending>beg){strm.adler=crc32(strm.adler,s.pending_buf,s.pending-beg,beg)} 443if(val===0){s.status=HCRC_STATE}}else{s.status=HCRC_STATE}} 444if(s.status===HCRC_STATE){if(s.gzhead.hcrc){if(s.pending+2>s.pending_buf_size){flush_pending(strm)} 445if(s.pending+2<=s.pending_buf_size){put_byte(s,strm.adler&0xff);put_byte(s,(strm.adler>>8)&0xff);strm.adler=0;s.status=BUSY_STATE}}else{s.status=BUSY_STATE}} 446if(s.pending!==0){flush_pending(strm);if(strm.avail_out===0){s.last_flush=-1;return Z_OK}}else if(strm.avail_in===0&&rank(flush)<=rank(old_flush)&&flush!==Z_FINISH){return err(strm,Z_BUF_ERROR)} 447if(s.status===FINISH_STATE&&strm.avail_in!==0){return err(strm,Z_BUF_ERROR)}
448if(strm.avail_in!==0||s.lookahead!==0||(flush!==Z_NO_FLUSH&&s.status!==FINISH_STATE)){var bstate=(s.strategy===Z_HUFFMAN_ONLY)?deflate_huff(s,flush):(s.strategy===Z_RLE?deflate_rle(s,flush):configuration_table[s.level].func(s,flush));if(bstate===BS_FINISH_STARTED||bstate===BS_FINISH_DONE){s.status=FINISH_STATE} 449if(bstate===BS_NEED_MORE||bstate===BS_FINISH_STARTED){if(strm.avail_out===0){s.last_flush=-1} 450return Z_OK} 451if(bstate===BS_BLOCK_DONE){if(flush===Z_PARTIAL_FLUSH){trees._tr_align(s)}else if(flush!==Z_BLOCK){trees._tr_stored_block(s,0,0,!1);if(flush===Z_FULL_FLUSH){zero(s.head);if(s.lookahead===0){s.strstart=0;s.block_start=0;s.insert=0}}} 452flush_pending(strm);if(strm.avail_out===0){s.last_flush=-1;return Z_OK}}} 453if(flush!==Z_FINISH){return Z_OK} 454if(s.wrap<=0){return Z_STREAM_END} 455if(s.wrap===2){put_byte(s,strm.adler&0xff);put_byte(s,(strm.adler>>8)&0xff);put_byte(s,(strm.adler>>16)&0xff);put_byte(s,(strm.adler>>24)&0xff);put_byte(s,strm.total_in&0xff);put_byte(s,(strm.total_in>>8)&0xff);put_byte(s,(strm.total_in>>16)&0xff);put_byte(s,(strm.total_in>>24)&0xff)}else{putShortMSB(s,strm.adler>>>16);putShortMSB(s,strm.adler&0xffff)} 456flush_pending(strm);if(s.wrap>0){s.wrap=-s.wrap} 457return s.pending!==0?Z_OK:Z_STREAM_END} 458function deflateEnd(strm){var status;if(!strm||!strm.state){return Z_STREAM_ERROR} 459status=strm.state.status;if(status!==INIT_STATE&&status!==EXTRA_STATE&&status!==NAME_STATE&&status!==COMMENT_STATE&&status!==HCRC_STATE&&status!==BUSY_STATE&&status!==FINISH_STATE){return err(strm,Z_STREAM_ERROR)} 460strm.state=null;return status===BUSY_STATE?err(strm,Z_DATA_ERROR):Z_OK} 461function deflateSetDictionary(strm,dictionary){var dictLength=dictionary.length;var s;var str,n;var wrap;var avail;var next;var input;var tmpDict;if(!strm||!strm.state){return Z_STREAM_ERROR} 462s=strm.state;wrap=s.wrap;if(wrap===2||(wrap===1&&s.status!==INIT_STATE)||s.lookahead){return Z_STREAM_ERROR} 463if(wrap===1){strm.adler=adler32(strm.adler,dictionary,dictLength,0)} 464s.wrap=0;if(dictLength>=s.w_size){if(wrap===0){zero(s.head);s.strstart=0;s.block_start=0;s.insert=0} 465tmpDict=new utils.Buf8(s.w_size);utils.arraySet(tmpDict,dictionary,dictLength-s.w_size,s.w_size,0);dictionary=tmpDict;dictLength=s.w_size} 466avail=strm.avail_in;next=strm.next_in;input=strm.input;strm.avail_in=dictLength;strm.next_in=0;strm.input=dictionary;fill_window(s);while(s.lookahead>=MIN_MATCH){str=s.strstart;n=s.lookahead-(MIN_MATCH-1);do{s.ins_h=((s.ins_h<<s.hash_shift)^s.window[str+MIN_MATCH-1])&s.hash_mask;s.prev[str&s.w_mask]=s.head[s.ins_h];s.head[s.ins_h]=str;str++}while(--n);s.strstart=str;s.lookahead=MIN_MATCH-1;fill_window(s)} 467s.strstart+=s.lookahead;s.block_start=s.strstart;s.insert=s.lookahead;s.lookahead=0;s.match_length=s.prev_length=MIN_MATCH-1;s.match_available=0;strm.next_in=next;strm.input=input;strm.avail_in=avail;s.wrap=wrap;return Z_OK} 468exports.deflateInit=deflateInit;exports.deflateInit2=deflateInit2;exports.deflateReset=deflateReset;exports.deflateResetKeep=deflateResetKeep;exports.deflateSetHeader=deflateSetHeader;exports.deflate=deflate;exports.deflateEnd=deflateEnd;exports.deflateSetDictionary=deflateSetDictionary;exports.deflateInfo='pako deflate (from Nodeca project)'},{"../utils/common":41,"./adler32":43,"./crc32":45,"./messages":51,"./trees":52}],47:[function(require,module,exports){'use strict';function GZheader(){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} 469module.exports=GZheader},{}],48:[function(require,module,exports){'use strict';var BAD=30;var TYPE=12;module.exports=function inflate_fast(strm,start){var state;var _in;var last;var _out;var beg;var end;var dmax;var wsize;var whave;var wnext;var s_window;var hold;var bits;var lcode;var dcode;var lmask;var dmask;var here;var op;var len;var dist;var from;var from_source;var input,output;state=strm.state;_in=strm.next_in;input=strm.input;last=_in+(strm.avail_in-5);_out=strm.next_out;output=strm.output;beg=_out-(start-strm.avail_out);end=_out+(strm.avail_out-257);dmax=state.dmax;wsize=state.wsize;
vendor: 8,141 bytes, lines 469-517
469whave=state.whave;wnext=state.wnext;s_window=state.window;hold=state.hold;bits=state.bits;lcode=state.lencode;dcode=state.distcode;lmask=(1<<state.lenbits)-1;dmask=(1<<state.distbits)-1;top:do{if(bits<15){hold+=input[_in++]<<bits;bits+=8;hold+=input[_in++]<<bits;bits+=8} 470here=lcode[hold&lmask];dolen:for(;;){op=here>>>24;hold>>>=op;bits-=op;op=(here>>>16)&0xff;if(op===0){output[_out++]=here&0xffff}else if(op&16){len=here&0xffff;op&=15;if(op){if(bits<op){hold+=input[_in++]<<bits;bits+=8} 471len+=hold&((1<<op)-1);hold>>>=op;bits-=op} 472if(bits<15){hold+=input[_in++]<<bits;bits+=8;hold+=input[_in++]<<bits;bits+=8} 473here=dcode[hold&dmask];dodist:for(;;){op=here>>>24;hold>>>=op;bits-=op;op=(here>>>16)&0xff;if(op&16){dist=here&0xffff;op&=15;if(bits<op){hold+=input[_in++]<<bits;bits+=8;if(bits<op){hold+=input[_in++]<<bits;bits+=8}} 474dist+=hold&((1<<op)-1);if(dist>dmax){strm.msg='invalid distance too far back';state.mode=BAD;break top} 475hold>>>=op;bits-=op;op=_out-beg;if(dist>op){op=dist-op;if(op>whave){if(state.sane){strm.msg='invalid distance too far back';state.mode=BAD;break top}} 476from=0;from_source=s_window;if(wnext===0){from+=wsize-op;if(op<len){len-=op;do{output[_out++]=s_window[from++]}while(--op);from=_out-dist;from_source=output}}else if(wnext<op){from+=wsize+wnext-op;op-=wnext;if(op<len){len-=op;do{output[_out++]=s_window[from++]}while(--op);from=0;if(wnext<len){op=wnext;len-=op;do{output[_out++]=s_window[from++]}while(--op);from=_out-dist;from_source=output}}}else{from+=wnext-op;if(op<len){len-=op;do{output[_out++]=s_window[from++]}while(--op);from=_out-dist;from_source=output}} 477while(len>2){output[_out++]=from_source[from++];output[_out++]=from_source[from++];output[_out++]=from_source[from++];len-=3} 478if(len){output[_out++]=from_source[from++];if(len>1){output[_out++]=from_source[from++]}}}else{from=_out-dist;do{output[_out++]=output[from++];output[_out++]=output[from++];output[_out++]=output[from++];len-=3}while(len>2);if(len){output[_out++]=output[from++];if(len>1){output[_out++]=output[from++]}}}}else if((op&64)===0){here=dcode[(here&0xffff)+(hold&((1<<op)-1))];continue dodist}else{strm.msg='invalid distance code';state.mode=BAD;break top} 479break}}else if((op&64)===0){here=lcode[(here&0xffff)+(hold&((1<<op)-1))];continue dolen}else if(op&32){state.mode=TYPE;break top}else{strm.msg='invalid literal/length code';state.mode=BAD;break top} 480break}}while(_in<last&&_out<end);len=bits>>3;_in-=len;bits-=len<<3;hold&=(1<<bits)-1;strm.next_in=_in;strm.next_out=_out;strm.avail_in=(_in<last?5+(last-_in):5-(_in-last));strm.avail_out=(_out<end?257+(end-_out):257-(_out-end));state.hold=hold;state.bits=bits;return}},{}],49:[function(require,module,exports){'use strict';var utils=require('../utils/common');var adler32=require('./adler32');var crc32=require('./crc32');var inflate_fast=require('./inffast');var inflate_table=require('./inftrees');var CODES=0;var LENS=1;var DISTS=2;var Z_FINISH=4;var Z_BLOCK=5;var Z_TREES=6;var Z_OK=0;var Z_STREAM_END=1;var Z_NEED_DICT=2;var Z_STREAM_ERROR=-2;var Z_DATA_ERROR=-3;var Z_MEM_ERROR=-4;var Z_BUF_ERROR=-5;var Z_DEFLATED=8;var HEAD=1;var FLAGS=2;var TIME=3;var OS=4;var EXLEN=5;var EXTRA=6;var NAME=7;var COMMENT=8;var HCRC=9;var DICTID=10;var DICT=11;var TYPE=12;var TYPEDO=13;var STORED=14;var COPY_=15;var COPY=16;var TABLE=17;var LENLENS=18;var CODELENS=19;var LEN_=20;var LEN=21;var LENEXT=22;var DIST=23;var DISTEXT=24;var MATCH=25;var LIT=26;var CHECK=27;var LENGTH=28;var DONE=29;var BAD=30;var MEM=31;var SYNC=32;var ENOUGH_LENS=852;var ENOUGH_DISTS=592;var MAX_WBITS=15;var DEF_WBITS=MAX_WBITS;function zswap32(q){return(((q>>>24)&0xff)+((q>>>8)&0xff00)+((q&0xff00)<<8)+((q&0xff)<<24))} 481function InflateState(){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 utils.Buf16(320);this.work=new utils.Buf16(288);this.lendyn=null;this.distdyn=null;this.sane=0;this.back=0;this.was=0} 482function inflateResetKeep(strm){var state;if(!strm||!strm.state){return Z_STREAM_ERROR} 483state=strm.state;strm.total_in=strm.total_out=state.total=0;strm.msg='';if(state.wrap){strm.adler=state.wrap&1} 484state.mode=HEAD;state.last=0;state.havedict=0;state.dmax=32768;state.head=null;state.hold=0;state.bits=0;state.lencode=state.lendyn=new utils.Buf32(ENOUGH_LENS);state.distcode=state.distdyn=new utils.Buf32(ENOUGH_DISTS);state.sane=1;state.back=-1;return Z_OK} 485function inflateReset(strm){var state;if(!strm||!strm.state){return Z_STREAM_ERROR} 486state=strm.state;state.wsize=0;state.whave=0;state.wnext=0;return inflateResetKeep(strm)} 487function inflateReset2(strm,windowBits){var wrap;var state;if(!strm||!strm.state){return Z_STREAM_ERROR} 488state=strm.state;if(windowBits<0){wrap=0;windowBits=-windowBits}else{wrap=(windowBits>>4)+1;if(windowBits<48){windowBits&=15}} 489if(windowBits&&(windowBits<8||windowBits>15)){return Z_STREAM_ERROR} 490if(state.window!==null&&state.wbits!==windowBits){state.window=null} 491state.wrap=wrap;state.wbits=windowBits;return inflateReset(strm)} 492function inflateInit2(strm,windowBits){var ret;var state;if(!strm){return Z_STREAM_ERROR} 493state=new InflateState();strm.state=state;state.window=null;ret=inflateReset2(strm,windowBits);if(ret!==Z_OK){strm.state=null} 494return ret} 495function inflateInit(strm){return inflateInit2(strm,DEF_WBITS)} 496var virgin=!0;var lenfix,distfix;function fixedtables(state){if(virgin){var sym;lenfix=new utils.Buf32(512);distfix=new utils.Buf32(32);sym=0;while(sym<144){state.lens[sym++]=8} 497while(sym<256){state.lens[sym++]=9} 498while(sym<280){state.lens[sym++]=7} 499while(sym<288){state.lens[sym++]=8} 500inflate_table(LENS,state.lens,0,288,lenfix,0,state.work,{bits:9});sym=0;while(sym<32){state.lens[sym++]=5} 501inflate_table(DISTS,state.lens,0,32,distfix,0,state.work,{bits:5});virgin=!1} 502state.lencode=lenfix;state.lenbits=9;state.distcode=distfix;state.distbits=5} 503function updatewindow(strm,src,end,copy){var dist;var state=strm.state;if(state.window===null){state.wsize=1<<state.wbits;state.wnext=0;state.whave=0;state.window=new utils.Buf8(state.wsize)} 504if(copy>=state.wsize){utils.arraySet(state.window,src,end-state.wsize,state.wsize,0);state.wnext=0;state.whave=state.wsize}else{dist=state.wsize-state.wnext;if(dist>copy){dist=copy} 505utils.arraySet(state.window,src,end-copy,dist,state.wnext);copy-=dist;if(copy){utils.arraySet(state.window,src,end-copy,copy,0);state.wnext=copy;state.whave=state.wsize}else{state.wnext+=dist;if(state.wnext===state.wsize){state.wnext=0} 506if(state.whave<state.wsize){state.whave+=dist}}} 507return 0} 508function inflate(strm,flush){var state;var input,output;var next;var put;var have,left;var hold;var bits;var _in,_out;var copy;var from;var from_source;var here=0;var here_bits,here_op,here_val;var last_bits,last_op,last_val;var len;var ret;var hbuf=new utils.Buf8(4);var opts;var n;var order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!strm||!strm.state||!strm.output||(!strm.input&&strm.avail_in!==0)){return Z_STREAM_ERROR} 509state=strm.state;if(state.mode===TYPE){state.mode=TYPEDO} 510put=strm.next_out;output=strm.output;left=strm.avail_out;next=strm.next_in;input=strm.input;have=strm.avail_in;hold=state.hold;bits=state.bits;_in=have;_out=left;ret=Z_OK;inf_leave:for(;;){switch(state.mode){case HEAD:if(state.wrap===0){state.mode=TYPEDO;break} 511while(bits<16){if(have===0){break inf_leave} 512have--;hold+=input[next++]<<bits;bits+=8} 513if((state.wrap&2)&&hold===0x8b1f){state.check=0;hbuf[0]=hold&0xff;hbuf[1]=(hold>>>8)&0xff;state.check=crc32(state.check,hbuf,2,0);hold=0;bits=0;state.mode=FLAGS;break} 514state.flags=0;if(state.head){state.head.done=!1} 515if(!(state.wrap&1)||(((hold&0xff)<<8)+(hold>>8))%31){strm.msg='incorrect header check';state.mode=BAD;break} 516if((hold&0x0f)!==Z_DEFLATED){strm.msg='unknown compression method';state.mode=BAD;break} 517hold>>>=4;bits-=4;len=(hold&0x0f)+8;if(state.wbits===0){state.wbits=len}else if(len>
vendor: 14,840 bytes, lines 517-658
517state.wbits){strm.msg='invalid window size';state.mode=BAD;break} 518state.dmax=1<<len;strm.adler=state.check=1;state.mode=hold&0x200?DICTID:TYPE;hold=0;bits=0;break;case FLAGS:while(bits<16){if(have===0){break inf_leave} 519have--;hold+=input[next++]<<bits;bits+=8} 520state.flags=hold;if((state.flags&0xff)!==Z_DEFLATED){strm.msg='unknown compression method';state.mode=BAD;break} 521if(state.flags&0xe000){strm.msg='unknown header flags set';state.mode=BAD;break} 522if(state.head){state.head.text=((hold>>8)&1)} 523if(state.flags&0x0200){hbuf[0]=hold&0xff;hbuf[1]=(hold>>>8)&0xff;state.check=crc32(state.check,hbuf,2,0)} 524hold=0;bits=0;state.mode=TIME;case TIME:while(bits<32){if(have===0){break inf_leave} 525have--;hold+=input[next++]<<bits;bits+=8} 526if(state.head){state.head.time=hold} 527if(state.flags&0x0200){hbuf[0]=hold&0xff;hbuf[1]=(hold>>>8)&0xff;hbuf[2]=(hold>>>16)&0xff;hbuf[3]=(hold>>>24)&0xff;state.check=crc32(state.check,hbuf,4,0)} 528hold=0;bits=0;state.mode=OS;case OS:while(bits<16){if(have===0){break inf_leave} 529have--;hold+=input[next++]<<bits;bits+=8} 530if(state.head){state.head.xflags=(hold&0xff);state.head.os=(hold>>8)} 531if(state.flags&0x0200){hbuf[0]=hold&0xff;hbuf[1]=(hold>>>8)&0xff;state.check=crc32(state.check,hbuf,2,0)} 532hold=0;bits=0;state.mode=EXLEN;case EXLEN:if(state.flags&0x0400){while(bits<16){if(have===0){break inf_leave} 533have--;hold+=input[next++]<<bits;bits+=8} 534state.length=hold;if(state.head){state.head.extra_len=hold} 535if(state.flags&0x0200){hbuf[0]=hold&0xff;hbuf[1]=(hold>>>8)&0xff;state.check=crc32(state.check,hbuf,2,0)} 536hold=0;bits=0}else if(state.head){state.head.extra=null} 537state.mode=EXTRA;case EXTRA:if(state.flags&0x0400){copy=state.length;if(copy>have){copy=have} 538if(copy){if(state.head){len=state.head.extra_len-state.length;if(!state.head.extra){state.head.extra=new Array(state.head.extra_len)} 539utils.arraySet(state.head.extra,input,next,copy,len)} 540if(state.flags&0x0200){state.check=crc32(state.check,input,copy,next)} 541have-=copy;next+=copy;state.length-=copy} 542if(state.length){break inf_leave}} 543state.length=0;state.mode=NAME;case NAME:if(state.flags&0x0800){if(have===0){break inf_leave} 544copy=0;do{len=input[next+copy++];if(state.head&&len&&(state.length<65536)){state.head.name+=String.fromCharCode(len)}}while(len&©<have);if(state.flags&0x0200){state.check=crc32(state.check,input,copy,next)} 545have-=copy;next+=copy;if(len){break inf_leave}}else if(state.head){state.head.name=null} 546state.length=0;state.mode=COMMENT;case COMMENT:if(state.flags&0x1000){if(have===0){break inf_leave} 547copy=0;do{len=input[next+copy++];if(state.head&&len&&(state.length<65536)){state.head.comment+=String.fromCharCode(len)}}while(len&©<have);if(state.flags&0x0200){state.check=crc32(state.check,input,copy,next)} 548have-=copy;next+=copy;if(len){break inf_leave}}else if(state.head){state.head.comment=null} 549state.mode=HCRC;case HCRC:if(state.flags&0x0200){while(bits<16){if(have===0){break inf_leave} 550have--;hold+=input[next++]<<bits;bits+=8} 551if(hold!==(state.check&0xffff)){strm.msg='header crc mismatch';state.mode=BAD;break} 552hold=0;bits=0} 553if(state.head){state.head.hcrc=((state.flags>>9)&1);state.head.done=!0} 554strm.adler=state.check=0;state.mode=TYPE;break;case DICTID:while(bits<32){if(have===0){break inf_leave} 555have--;hold+=input[next++]<<bits;bits+=8} 556strm.adler=state.check=zswap32(hold);hold=0;bits=0;state.mode=DICT;case DICT:if(state.havedict===0){strm.next_out=put;strm.avail_out=left;strm.next_in=next;strm.avail_in=have;state.hold=hold;state.bits=bits;return Z_NEED_DICT} 557strm.adler=state.check=1;state.mode=TYPE;case TYPE:if(flush===Z_BLOCK||flush===Z_TREES){break inf_leave} 558case TYPEDO:if(state.last){hold>>>=bits&7;bits-=bits&7;state.mode=CHECK;break} 559while(bits<3){if(have===0){break inf_leave} 560have--;hold+=input[next++]<<bits;bits+=8} 561state.last=(hold&0x01);hold>>>=1;bits-=1;switch((hold&0x03)){case 0:state.mode=STORED;break;case 1:fixedtables(state);state.mode=LEN_;if(flush===Z_TREES){hold>>>=2;bits-=2;break inf_leave} 562break;case 2:state.mode=TABLE;break;case 3:strm.msg='invalid block type';state.mode=BAD} 563hold>>>=2;bits-=2;break;case STORED:hold>>>=bits&7;bits-=bits&7;while(bits<32){if(have===0){break inf_leave} 564have--;hold+=input[next++]<<bits;bits+=8} 565if((hold&0xffff)!==((hold>>>16)^0xffff)){strm.msg='invalid stored block lengths';state.mode=BAD;break} 566state.length=hold&0xffff;hold=0;bits=0;state.mode=COPY_;if(flush===Z_TREES){break inf_leave} 567case COPY_:state.mode=COPY;case COPY:copy=state.length;if(copy){if(copy>have){copy=have} 568if(copy>left){copy=left} 569if(copy===0){break inf_leave} 570utils.arraySet(output,input,next,copy,put);have-=copy;next+=copy;left-=copy;put+=copy;state.length-=copy;break} 571state.mode=TYPE;break;case TABLE:while(bits<14){if(have===0){break inf_leave} 572have--;hold+=input[next++]<<bits;bits+=8} 573state.nlen=(hold&0x1f)+257;hold>>>=5;bits-=5;state.ndist=(hold&0x1f)+1;hold>>>=5;bits-=5;state.ncode=(hold&0x0f)+4;hold>>>=4;bits-=4;if(state.nlen>286||state.ndist>30){strm.msg='too many length or distance symbols';state.mode=BAD;break} 574state.have=0;state.mode=LENLENS;case LENLENS:while(state.have<state.ncode){while(bits<3){if(have===0){break inf_leave} 575have--;hold+=input[next++]<<bits;bits+=8} 576state.lens[order[state.have++]]=(hold&0x07);hold>>>=3;bits-=3} 577while(state.have<19){state.lens[order[state.have++]]=0} 578state.lencode=state.lendyn;state.lenbits=7;opts={bits:state.lenbits};ret=inflate_table(CODES,state.lens,0,19,state.lencode,0,state.work,opts);state.lenbits=opts.bits;if(ret){strm.msg='invalid code lengths set';state.mode=BAD;break} 579state.have=0;state.mode=CODELENS;case CODELENS:while(state.have<state.nlen+state.ndist){for(;;){here=state.lencode[hold&((1<<state.lenbits)-1)];here_bits=here>>>24;here_op=(here>>>16)&0xff;here_val=here&0xffff;if((here_bits)<=bits){break} 580if(have===0){break inf_leave} 581have--;hold+=input[next++]<<bits;bits+=8} 582if(here_val<16){hold>>>=here_bits;bits-=here_bits;state.lens[state.have++]=here_val}else{if(here_val===16){n=here_bits+2;while(bits<n){if(have===0){break inf_leave} 583have--;hold+=input[next++]<<bits;bits+=8} 584hold>>>=here_bits;bits-=here_bits;if(state.have===0){strm.msg='invalid bit length repeat';state.mode=BAD;break} 585len=state.lens[state.have-1];copy=3+(hold&0x03);hold>>>=2;bits-=2}else if(here_val===17){n=here_bits+3;while(bits<n){if(have===0){break inf_leave} 586have--;hold+=input[next++]<<bits;bits+=8} 587hold>>>=here_bits;bits-=here_bits;len=0;copy=3+(hold&0x07);hold>>>=3;bits-=3}else{n=here_bits+7;while(bits<n){if(have===0){break inf_leave} 588have--;hold+=input[next++]<<bits;bits+=8} 589hold>>>=here_bits;bits-=here_bits;len=0;copy=11+(hold&0x7f);hold>>>=7;bits-=7} 590if(state.have+copy>state.nlen+state.ndist){strm.msg='invalid bit length repeat';state.mode=BAD;break} 591while(copy--){state.lens[state.have++]=len}}} 592if(state.mode===BAD){break} 593if(state.lens[256]===0){strm.msg='invalid code -- missing end-of-block';state.mode=BAD;break} 594state.lenbits=9;opts={bits:state.lenbits};ret=inflate_table(LENS,state.lens,0,state.nlen,state.lencode,0,state.work,opts);state.lenbits=opts.bits;if(ret){strm.msg='invalid literal/lengths set';state.mode=BAD;break} 595state.distbits=6;state.distcode=state.distdyn;opts={bits:state.distbits};ret=inflate_table(DISTS,state.lens,state.nlen,state.ndist,state.distcode,0,state.work,opts);state.distbits=opts.bits;if(ret){strm.msg='invalid distances set';state.mode=BAD;break} 596state.mode=LEN_;if(flush===Z_TREES){break inf_leave} 597case LEN_:state.mode=LEN;case LEN:if(have>=6&&left>=258){strm.next_out=put;strm.avail_out=left;strm.next_in=next;strm.avail_in=have;state.hold=hold;state.bits=bits;inflate_fast(strm,_out);put=strm.next_out;output=strm.output;left=strm.avail_out;next=strm.next_in;input=strm.input;have=strm.avail_in;hold=state.hold;bits=state.bits;if(state.mode===TYPE){state.back=-1} 598break} 599state.back=0;for(;;){here=state.lencode[hold&((1<<state.lenbits)-1)];here_bits=here>>>24;here_op=(here>>>16)&0xff;here_val=here&0xffff;if(here_bits<=bits){break} 600if(have===0){break inf_leave} 601have--;hold+=input[next++]<<bits;bits+=8} 602if(here_op&&(here_op&0xf0)===0){last_bits=here_bits;last_op=here_op;last_val=here_val;for(;;){here=state.lencode[last_val+((hold&((1<<(last_bits+last_op))-1))>>last_bits)];here_bits=here>>>24;here_op=(here>>>16)&0xff;here_val=here&0xffff;if((last_bits+here_bits)<=bits){break} 603if(have===0){break inf_leave} 604have--;hold+=input[next++]<<bits;bits+=8} 605hold>>>=last_bits;bits-=last_bits;state.back+=last_bits} 606hold>>>=here_bits;bits-=here_bits;state.back+=here_bits;state.length=here_val;if(here_op===0){state.mode=LIT;break} 607if(here_op&32){state.back=-1;state.mode=TYPE;break} 608if(here_op&64){strm.msg='invalid literal/length code';state.mode=BAD;break} 609state.extra=here_op&15;state.mode=LENEXT;case LENEXT:if(state.extra){n=state.extra;while(bits<n){if(have===0){break inf_leave} 610have--;hold+=input[next++]<<bits;bits+=8} 611state.length+=hold&((1<<state.extra)-1);hold>>>=state.extra;bits-=state.extra;state.back+=state.extra} 612state.was=state.length;state.mode=DIST;case DIST:for(;;){here=state.distcode[hold&((1<<state.distbits)-1)];here_bits=here>>>24;here_op=(here>>>16)&0xff;here_val=here&0xffff;if((here_bits)<=bits){break} 613if(have===0){break inf_leave} 614have--;hold+=input[next++]<<bits;bits+=8} 615if((here_op&0xf0)===0){last_bits=here_bits;last_op=here_op;last_val=here_val;for(;;){here=state.distcode[last_val+((hold&((1<<(last_bits+last_op))-1))>>last_bits)];here_bits=here>>>24;here_op=(here>>>16)&0xff;here_val=here&0xffff;if((last_bits+here_bits)<=bits){break} 616if(have===0){break inf_leave} 617have--;hold+=input[next++]<<bits;bits+=8} 618hold>>>=last_bits;bits-=last_bits;state.back+=last_bits} 619hold>>>=here_bits;bits-=here_bits;state.back+=here_bits;if(here_op&64){strm.msg='invalid distance code';state.mode=BAD;break} 620state.offset=here_val;state.extra=(here_op)&15;state.mode=DISTEXT;case DISTEXT:if(state.extra){n=state.extra;while(bits<n){if(have===0){break inf_leave} 621have--;hold+=input[next++]<<bits;bits+=8} 622state.offset+=hold&((1<<state.extra)-1);hold>>>=state.extra;bits-=state.extra;state.back+=state.extra} 623if(state.offset>state.dmax){strm.msg='invalid distance too far back';state.mode=BAD;break} 624state.mode=MATCH;case MATCH:if(left===0){break inf_leave} 625copy=_out-left;if(state.offset>copy){copy=state.offset-copy;if(copy>state.whave){if(state.sane){strm.msg='invalid distance too far back';state.mode=BAD;break}} 626if(copy>state.wnext){copy-=state.wnext;from=state.wsize-copy}else{from=state.wnext-copy} 627if(copy>state.length){copy=state.length} 628from_source=state.window}else{from_source=output;from=put-state.offset;copy=state.length} 629if(copy>left){copy=left} 630left-=copy;state.length-=copy;do{output[put++]=from_source[from++]}while(--copy);if(state.length===0){state.mode=LEN} 631break;case LIT:if(left===0){break inf_leave} 632output[put++]=state.length;left--;state.mode=LEN;break;case CHECK:if(state.wrap){while(bits<32){if(have===0){break inf_leave} 633have--;hold|=input[next++]<<bits;bits+=8} 634_out-=left;strm.total_out+=_out;state.total+=_out;if(_out){strm.adler=state.check=(state.flags?crc32(state.check,output,_out,put-_out):adler32(state.check,output,_out,put-_out))} 635_out=left;if((state.flags?hold:zswap32(hold))!==state.check){strm.msg='incorrect data check';state.mode=BAD;break} 636hold=0;bits=0} 637state.mode=LENGTH;case LENGTH:if(state.wrap&&state.flags){while(bits<32){if(have===0){break inf_leave} 638have--;hold+=input[next++]<<bits;bits+=8} 639if(hold!==(state.total&0xffffffff)){strm.msg='incorrect length check';state.mode=BAD;break} 640hold=0;bits=0} 641state.mode=DONE;case DONE:ret=Z_STREAM_END;break inf_leave;case BAD:ret=Z_DATA_ERROR;break inf_leave;case MEM:return Z_MEM_ERROR;case SYNC:default:return Z_STREAM_ERROR}} 642strm.next_out=put;strm.avail_out=left;strm.next_in=next;strm.avail_in=have;state.hold=hold;state.bits=bits;if(state.wsize||(_out!==strm.avail_out&&state.mode<BAD&&(state.mode<CHECK||flush!==Z_FINISH))){if(updatewindow(strm,strm.output,strm.next_out,_out-strm.avail_out)){state.mode=MEM;return Z_MEM_ERROR}} 643_in-=strm.avail_in;_out-=strm.avail_out;strm.total_in+=_in;strm.total_out+=_out;state.total+=_out;if(state.wrap&&_out){strm.adler=state.check=(state.flags?crc32(state.check,output,_out,strm.next_out-_out):adler32(state.check,output,_out,strm.next_out-_out))} 644strm.data_type=state.bits+(state.last?64:0)+(state.mode===TYPE?128:0)+(state.mode===LEN_||state.mode===COPY_?256:0);if(((_in===0&&_out===0)||flush===Z_FINISH)&&ret===Z_OK){ret=Z_BUF_ERROR} 645return ret} 646function inflateEnd(strm){if(!strm||!strm.state){return Z_STREAM_ERROR} 647var state=strm.state;if(state.window){state.window=null} 648strm.state=null;return Z_OK} 649function inflateGetHeader(strm,head){var state;if(!strm||!strm.state){return Z_STREAM_ERROR} 650state=strm.state;if((state.wrap&2)===0){return Z_STREAM_ERROR} 651state.head=head;head.done=!1;return Z_OK} 652function inflateSetDictionary(strm,dictionary){var dictLength=dictionary.length;var state;var dictid;var ret;if(!strm||!strm.state){return Z_STREAM_ERROR} 653state=strm.state;if(state.wrap!==0&&state.mode!==DICT){return Z_STREAM_ERROR} 654if(state.mode===DICT){dictid=1;dictid=adler32(dictid,dictionary,dictLength,0);if(dictid!==state.check){return Z_DATA_ERROR}} 655ret=updatewindow(strm,dictionary,dictLength,dictLength);if(ret){state.mode=MEM;return Z_MEM_ERROR} 656state.havedict=1;return Z_OK} 657exports.inflateReset=inflateReset;exports.inflateReset2=inflateReset2;exports.inflateResetKeep=inflateResetKeep;exports.inflateInit=inflateInit;exports.inflateInit2=inflateInit2;exports.inflate=inflate;exports.inflateEnd=inflateEnd;exports.inflateGetHeader=inflateGetHeader;exports.inflateSetDictionary=inflateSetDictionary;exports.inflateInfo='pako inflate (from Nodeca project)'},{"../utils/common":41,"./adler32":43,"./crc32":45,"./inffast":48,"./inftrees":50}],50:[function(require,module,exports){'use strict';var utils=require('../utils/common');var MAXBITS=15;var ENOUGH_LENS=852;var ENOUGH_DISTS=592;var CODES=0;var LENS=1;var DISTS=2;var lbase=[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];var lext=[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];var dbase=[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];var dext=[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];module.exports=function inflate_table(type,lens,lens_index,codes,table,table_index,work,opts){var bits=opts.bits;var len=0;var sym=0;var min=0,max=0;var root=0;var curr=0;var drop=0;var left=0;var used=0;var huff=0;var incr;var fill;var low;var mask;var next;var base=null;var base_index=0;var end;var count=new utils.Buf16(MAXBITS+1);var offs=new utils.Buf16(MAXBITS+1);var extra=null;var extra_index=0;var here_bits,here_op,here_val;for(len=0;len<=MAXBITS;len++){count[len]=0} 658for(sym=0;sym<codes;
658sym++){count[lens[lens_index+sym]]++} 659root=bits;for(max=MAXBITS;max>=1;max--){if(count[max]!==0){break}} 660if(root>max){root=max} 661if(max===0){table[table_index++]=(1<<24)|(64<<16)|0;table[table_index++]=(1<<24)|(64<<16)|0;opts.bits=1;return 0} 662for(min=1;min<max;min++){if(count[min]!==0){break}} 663if(root<min){root=min} 664left=1;for(len=1;len<=MAXBITS;len++){left<<=1;left-=count[len];if(left<0){return-1}} 665if(left>0&&(type===CODES||max!==1)){return-1} 666offs[1]=0;for(len=1;len<MAXBITS;len++){offs[len+1]=offs[len]+count[len]} 667for(sym=0;sym<codes;sym++){if(lens[lens_index+sym]!==0){work[offs[lens[lens_index+sym]]++]=sym}} 668if(type===CODES){base=extra=work;end=19}else if(type===LENS){base=lbase;base_index-=257;extra=lext;extra_index-=257;end=256}else{base=dbase;extra=dext;end=-1} 669huff=0;sym=0;len=min;next=table_index;curr=root;drop=0;low=-1;used=1<<root;mask=used-1;if((type===LENS&&used>ENOUGH_LENS)||(type===DISTS&&used>ENOUGH_DISTS)){return 1} 670for(;;){here_bits=len-drop;if(work[sym]<end){here_op=0;here_val=work[sym]}else if(work[sym]>end){here_op=extra[extra_index+work[sym]];here_val=base[base_index+work[sym]]}else{here_op=32+64;here_val=0} 671incr=1<<(len-drop);fill=1<<curr;min=fill;do{fill-=incr;table[next+(huff>>drop)+fill]=(here_bits<<24)|(here_op<<16)|here_val|0}while(fill!==0);incr=1<<(len-1);while(huff&incr){incr>>=1} 672if(incr!==0){huff&=incr-1;huff+=incr}else{huff=0} 673sym++;if(--count[len]===0){if(len===max){break} 674len=lens[lens_index+work[sym]]} 675if(len>root&&(huff&mask)!==low){if(drop===0){drop=root} 676next+=min;curr=len-drop;left=1<<curr;while(curr+drop<max){left-=count[curr+drop];if(left<=0){break} 677curr++;left<<=1} 678used+=1<<curr;if((type===LENS&&used>ENOUGH_LENS)||(type===DISTS&&used>ENOUGH_DISTS)){return 1} 679low=huff&mask;table[low]=(root<<24)|(curr<<16)|(next-table_index)|0}} 680if(huff!==0){table[next+huff]=((len-drop)<<24)|(64<<16)|0} 681opts.bits=root;return 0}},{"../utils/common":41}],51:[function(require,module,exports){'use strict';module.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(require,module,exports){'use strict';var utils=require('../utils/common');var Z_FIXED=4;var Z_BINARY=0;var Z_TEXT=1;var Z_UNKNOWN=2;function zero(buf){var len=buf.length;while(--len>=0){buf[len]=0}} 682var STORED_BLOCK=0;var STATIC_TREES=1;var DYN_TREES=2;var MIN_MATCH=3;var MAX_MATCH=258;var LENGTH_CODES=29;var LITERALS=256;var L_CODES=LITERALS+1+LENGTH_CODES;var D_CODES=30;var BL_CODES=19;var HEAP_SIZE=2*L_CODES+1;var MAX_BITS=15;var Buf_size=16;var MAX_BL_BITS=7;var END_BLOCK=256;var REP_3_6=16;var REPZ_3_10=17;var REPZ_11_138=18;var extra_lbits=[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];var extra_dbits=[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];var extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7];var bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];var DIST_CODE_LEN=512;var static_ltree=new Array((L_CODES+2)*2);zero(static_ltree);var static_dtree=new Array(D_CODES*2);zero(static_dtree);var _dist_code=new Array(DIST_CODE_LEN);zero(_dist_code);var _length_code=new Array(MAX_MATCH-MIN_MATCH+1);zero(_length_code);var base_length=new Array(LENGTH_CODES);zero(base_length);var base_dist=new Array(D_CODES);zero(base_dist);function StaticTreeDesc(static_tree,extra_bits,extra_base,elems,max_length){this.static_tree=static_tree;this.extra_bits=extra_bits;this.extra_base=extra_base;this.elems=elems;this.max_length=max_length;this.has_stree=static_tree&&static_tree.length} 683var static_l_desc;var static_d_desc;var static_bl_desc;function TreeDesc(dyn_tree,stat_desc){this.dyn_tree=dyn_tree;this.max_code=0;this.stat_desc=stat_desc} 684function d_code(dist){return dist<256?_dist_code[dist]:_dist_code[256+(dist>>>7)]} 685function put_short(s,w){s.pending_buf[s.pending++]=(w)&0xff;s.pending_buf[s.pending++]=(w>>>8)&0xff} 686function send_bits(s,value,length){if(s.bi_valid>(Buf_size-length)){s.bi_buf|=(value<<s.bi_valid)&0xffff;put_short(s,s.bi_buf);s.bi_buf=value>>(Buf_size-s.bi_valid);s.bi_valid+=length-Buf_size}else{s.bi_buf|=(value<<s.bi_valid)&0xffff;s.bi_valid+=length}} 687function send_code(s,c,tree){send_bits(s,tree[c*2],tree[c*2+1])} 688function bi_reverse(code,len){var res=0;do{res|=code&1;code>>>=1;res<<=1}while(--len>0);return res>>>1} 689function bi_flush(s){if(s.bi_valid===16){put_short(s,s.bi_buf);s.bi_buf=0;s.bi_valid=0}else if(s.bi_valid>=8){s.pending_buf[s.pending++]=s.bi_buf&0xff;s.bi_buf>>=8;s.bi_valid-=8}}
vendor: 6,829 bytes, lines 690-742
690function gen_bitlen(s,desc){var tree=desc.dyn_tree;var max_code=desc.max_code;var stree=desc.stat_desc.static_tree;var has_stree=desc.stat_desc.has_stree;var extra=desc.stat_desc.extra_bits;var base=desc.stat_desc.extra_base;var max_length=desc.stat_desc.max_length;var h;var n,m;var bits;var xbits;var f;var overflow=0;for(bits=0;bits<=MAX_BITS;bits++){s.bl_count[bits]=0} 691tree[s.heap[s.heap_max]*2+1]=0;for(h=s.heap_max+1;h<HEAP_SIZE;h++){n=s.heap[h];bits=tree[tree[n*2+1]*2+1]+1;if(bits>max_length){bits=max_length;overflow++} 692tree[n*2+1]=bits;if(n>max_code){continue} 693s.bl_count[bits]++;xbits=0;if(n>=base){xbits=extra[n-base]} 694f=tree[n*2];s.opt_len+=f*(bits+xbits);if(has_stree){s.static_len+=f*(stree[n*2+1]+xbits)}} 695if(overflow===0){return} 696do{bits=max_length-1;while(s.bl_count[bits]===0){bits--} 697s.bl_count[bits]--;s.bl_count[bits+1]+=2;s.bl_count[max_length]--;overflow-=2}while(overflow>0);for(bits=max_length;bits!==0;bits--){n=s.bl_count[bits];while(n!==0){m=s.heap[--h];if(m>max_code){continue} 698if(tree[m*2+1]!==bits){s.opt_len+=(bits-tree[m*2+1])*tree[m*2];tree[m*2+1]=bits} 699n--}}} 700function gen_codes(tree,max_code,bl_count){var next_code=new Array(MAX_BITS+1);var code=0;var bits;var n;for(bits=1;bits<=MAX_BITS;bits++){next_code[bits]=code=(code+bl_count[bits-1])<<1} 701for(n=0;n<=max_code;n++){var len=tree[n*2+1];if(len===0){continue} 702tree[n*2]=bi_reverse(next_code[len]++,len)}} 703function tr_static_init(){var n;var bits;var length;var code;var dist;var bl_count=new Array(MAX_BITS+1);length=0;for(code=0;code<LENGTH_CODES-1;code++){base_length[code]=length;for(n=0;n<(1<<extra_lbits[code]);n++){_length_code[length++]=code}} 704_length_code[length-1]=code;dist=0;for(code=0;code<16;code++){base_dist[code]=dist;for(n=0;n<(1<<extra_dbits[code]);n++){_dist_code[dist++]=code}} 705dist>>=7;for(;code<D_CODES;code++){base_dist[code]=dist<<7;for(n=0;n<(1<<(extra_dbits[code]-7));n++){_dist_code[256+dist++]=code}} 706for(bits=0;bits<=MAX_BITS;bits++){bl_count[bits]=0} 707n=0;while(n<=143){static_ltree[n*2+1]=8;n++;bl_count[8]++} 708while(n<=255){static_ltree[n*2+1]=9;n++;bl_count[9]++} 709while(n<=279){static_ltree[n*2+1]=7;n++;bl_count[7]++} 710while(n<=287){static_ltree[n*2+1]=8;n++;bl_count[8]++} 711gen_codes(static_ltree,L_CODES+1,bl_count);for(n=0;n<D_CODES;n++){static_dtree[n*2+1]=5;static_dtree[n*2]=bi_reverse(n,5)} 712static_l_desc=new StaticTreeDesc(static_ltree,extra_lbits,LITERALS+1,L_CODES,MAX_BITS);static_d_desc=new StaticTreeDesc(static_dtree,extra_dbits,0,D_CODES,MAX_BITS);static_bl_desc=new StaticTreeDesc(new Array(0),extra_blbits,0,BL_CODES,MAX_BL_BITS)} 713function init_block(s){var n;for(n=0;n<L_CODES;n++){s.dyn_ltree[n*2]=0} 714for(n=0;n<D_CODES;n++){s.dyn_dtree[n*2]=0} 715for(n=0;n<BL_CODES;n++){s.bl_tree[n*2]=0} 716s.dyn_ltree[END_BLOCK*2]=1;s.opt_len=s.static_len=0;s.last_lit=s.matches=0} 717function bi_windup(s){if(s.bi_valid>8){put_short(s,s.bi_buf)}else if(s.bi_valid>0){s.pending_buf[s.pending++]=s.bi_buf} 718s.bi_buf=0;s.bi_valid=0} 719function copy_block(s,buf,len,header){bi_windup(s);if(header){put_short(s,len);put_short(s,~len)} 720utils.arraySet(s.pending_buf,s.window,buf,len,s.pending);s.pending+=len} 721function smaller(tree,n,m,depth){var _n2=n*2;var _m2=m*2;return(tree[_n2]<tree[_m2]||(tree[_n2]===tree[_m2]&&depth[n]<=depth[m]))} 722function pqdownheap(s,tree,k){var v=s.heap[k];var j=k<<1;while(j<=s.heap_len){if(j<s.heap_len&&smaller(tree,s.heap[j+1],s.heap[j],s.depth)){j++} 723if(smaller(tree,v,s.heap[j],s.depth)){break} 724s.heap[k]=s.heap[j];k=j;j<<=1} 725s.heap[k]=v} 726function compress_block(s,ltree,dtree){var dist;var lc;var lx=0;var code;var extra;if(s.last_lit!==0){do{dist=(s.pending_buf[s.d_buf+lx*2]<<8)|(s.pending_buf[s.d_buf+lx*2+1]);lc=s.pending_buf[s.l_buf+lx];lx++;if(dist===0){send_code(s,lc,ltree)}else{code=_length_code[lc];send_code(s,code+LITERALS+1,ltree);extra=extra_lbits[code];if(extra!==0){lc-=base_length[code];send_bits(s,lc,extra)} 727dist--;code=d_code(dist);send_code(s,code,dtree);extra=extra_dbits[code];if(extra!==0){dist-=base_dist[code];send_bits(s,dist,extra)}}}while(lx<s.last_lit);} 728send_code(s,END_BLOCK,ltree)} 729function build_tree(s,desc){var tree=desc.dyn_tree;var stree=desc.stat_desc.static_tree;var has_stree=desc.stat_desc.has_stree;var elems=desc.stat_desc.elems;var n,m;var max_code=-1;var node;s.heap_len=0;s.heap_max=HEAP_SIZE;for(n=0;n<elems;n++){if(tree[n*2]!==0){s.heap[++s.heap_len]=max_code=n;s.depth[n]=0}else{tree[n*2+1]=0}} 730while(s.heap_len<2){node=s.heap[++s.heap_len]=(max_code<2?++max_code:0);tree[node*2]=1;s.depth[node]=0;s.opt_len--;if(has_stree){s.static_len-=stree[node*2+1]}} 731desc.max_code=max_code;for(n=(s.heap_len>>1);n>=1;n--){pqdownheap(s,tree,n)} 732node=elems;do{n=s.heap[1];s.heap[1]=s.heap[s.heap_len--];pqdownheap(s,tree,1);m=s.heap[1];s.heap[--s.heap_max]=n;s.heap[--s.heap_max]=m;tree[node*2]=tree[n*2]+tree[m*2];s.depth[node]=(s.depth[n]>=s.depth[m]?s.depth[n]:s.depth[m])+1;tree[n*2+1]=tree[m*2+1]=node;s.heap[1]=node++;pqdownheap(s,tree,1)}while(s.heap_len>=2);s.heap[--s.heap_max]=s.heap[1];gen_bitlen(s,desc);gen_codes(tree,max_code,s.bl_count)} 733function scan_tree(s,tree,max_code){var n;var prevlen=-1;var curlen;var nextlen=tree[0*2+1];var count=0;var max_count=7;var min_count=4;if(nextlen===0){max_count=138;min_count=3} 734tree[(max_code+1)*2+1]=0xffff;for(n=0;n<=max_code;n++){curlen=nextlen;nextlen=tree[(n+1)*2+1];if(++count<max_count&&curlen===nextlen){continue}else if(count<min_count){s.bl_tree[curlen*2]+=count}else if(curlen!==0){if(curlen!==prevlen){s.bl_tree[curlen*2]++} 735s.bl_tree[REP_3_6*2]++}else if(count<=10){s.bl_tree[REPZ_3_10*2]++}else{s.bl_tree[REPZ_11_138*2]++} 736count=0;prevlen=curlen;if(nextlen===0){max_count=138;min_count=3}else if(curlen===nextlen){max_count=6;min_count=3}else{max_count=7;min_count=4}}} 737function send_tree(s,tree,max_code){var n;var prevlen=-1;var curlen;var nextlen=tree[0*2+1];var count=0;var max_count=7;var min_count=4;if(nextlen===0){max_count=138;min_count=3} 738for(n=0;n<=max_code;n++){curlen=nextlen;nextlen=tree[(n+1)*2+1];if(++count<max_count&&curlen===nextlen){continue}else if(count<min_count){do{send_code(s,curlen,s.bl_tree)}while(--count!==0);}else if(curlen!==0){if(curlen!==prevlen){send_code(s,curlen,s.bl_tree);count--} 739send_code(s,REP_3_6,s.bl_tree);send_bits(s,count-3,2)}else if(count<=10){send_code(s,REPZ_3_10,s.bl_tree);send_bits(s,count-3,3)}else{send_code(s,REPZ_11_138,s.bl_tree);send_bits(s,count-11,7)} 740count=0;prevlen=curlen;if(nextlen===0){max_count=138;min_count=3}else if(curlen===nextlen){max_count=6;min_count=3}else{max_count=7;min_count=4}}} 741function build_bl_tree(s){var max_blindex;scan_tree(s,s.dyn_ltree,s.l_desc.max_code);scan_tree(s,s.dyn_dtree,s.d_desc.max_code);build_tree(s,s.bl_desc);for(max_blindex=BL_CODES-1;max_blindex>=3;max_blindex--){if(s.bl_tree[bl_order[max_blindex]*2+1]!==0){break}} 742s.opt_len+=3*(max_blindex+1)+5+5+4;return max_blindex}
743function send_all_trees(s,lcodes,dcodes,blcodes){var rank;send_bits(s,lcodes-257,5);send_bits(s,dcodes-1,5);send_bits(s,blcodes-4,4);for(rank=0;rank<blcodes;rank++){send_bits(s,s.bl_tree[bl_order[rank]*2+1],3)} 744send_tree(s,s.dyn_ltree,lcodes-1);send_tree(s,s.dyn_dtree,dcodes-1)} 745function detect_data_type(s){var black_mask=0xf3ffc07f;var n;for(n=0;n<=31;n++,black_mask>>>=1){if((black_mask&1)&&(s.dyn_ltree[n*2]!==0)){return Z_BINARY}} 746if(s.dyn_ltree[9*2]!==0||s.dyn_ltree[10*2]!==0||s.dyn_ltree[13*2]!==0){return Z_TEXT} 747for(n=32;n<LITERALS;n++){if(s.dyn_ltree[n*2]!==0){return Z_TEXT}} 748return Z_BINARY} 749var static_init_done=!1;function _tr_init(s){if(!static_init_done){tr_static_init();static_init_done=!0} 750s.l_desc=new TreeDesc(s.dyn_ltree,static_l_desc);s.d_desc=new TreeDesc(s.dyn_dtree,static_d_desc);s.bl_desc=new TreeDesc(s.bl_tree,static_bl_desc);s.bi_buf=0;s.bi_valid=0;init_block(s)} 751function _tr_stored_block(s,buf,stored_len,last){send_bits(s,(STORED_BLOCK<<1)+(last?1:0),3);copy_block(s,buf,stored_len,!0)} 752function _tr_align(s){send_bits(s,STATIC_TREES<<1,3);send_code(s,END_BLOCK,static_ltree);bi_flush(s)} 753function _tr_flush_block(s,buf,stored_len,last){var opt_lenb,static_lenb;var max_blindex=0;if(s.level>0){if(s.strm.data_type===Z_UNKNOWN){s.strm.data_type=detect_data_type(s)} 754build_tree(s,s.l_desc);build_tree(s,s.d_desc);max_blindex=build_bl_tree(s);opt_lenb=(s.opt_len+3+7)>>>3;static_lenb=(s.static_len+3+7)>>>3;if(static_lenb<=opt_lenb){opt_lenb=static_lenb}}else{opt_lenb=static_lenb=stored_len+5} 755if((stored_len+4<=opt_lenb)&&(buf!==-1)){_tr_stored_block(s,buf,stored_len,last)}else if(s.strategy===Z_FIXED||static_lenb===opt_lenb){send_bits(s,(STATIC_TREES<<1)+(last?1:0),3);compress_block(s,static_ltree,static_dtree)}else{send_bits(s,(DYN_TREES<<1)+(last?1:0),3);send_all_trees(s,s.l_desc.max_code+1,s.d_desc.max_code+1,max_blindex+1);compress_block(s,s.dyn_ltree,s.dyn_dtree)} 756init_block(s);if(last){bi_windup(s)}} 757function _tr_tally(s,dist,lc){s.pending_buf[s.d_buf+s.last_lit*2]=(dist>>>8)&0xff;s.pending_buf[s.d_buf+s.last_lit*2+1]=dist&0xff;s.pending_buf[s.l_buf+s.last_lit]=lc&0xff;s.last_lit++;if(dist===0){s.dyn_ltree[lc*2]++}else{s.matches++;dist--;s.dyn_ltree[(_length_code[lc]+LITERALS+1)*2]++;s.dyn_dtree[d_code(dist)*2]++} 758return(s.last_lit===s.lit_bufsize-1)} 759exports._tr_init=_tr_init;exports._tr_stored_block=_tr_stored_block;exports._tr_flush_block=_tr_flush_block;exports._tr_tally=_tr_tally;exports._tr_align=_tr_align},{"../utils/common":41}],53:[function(require,module,exports){'use strict';function ZStream(){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} 760module.exports=ZStream},{}],54:[function(require,module,exports){(function(global){(function(global,undefined){"use strict";if(global.setImmediate){return} 761var nextHandle=1;var tasksByHandle={};var currentlyRunningATask=!1;var doc=global.document;var registerImmediate;function setImmediate(callback){if(typeof callback!=="function"){callback=new Function(""+callback)} 762var args=new Array(arguments.length-1);for(var i=0;i<args.length;i++){args[i]=arguments[i+1]} 763var task={callback:callback,args:args};tasksByHandle[nextHandle]=task;registerImmediate(nextHandle);return nextHandle++} 764function clearImmediate(handle){delete tasksByHandle[handle]} 765function run(task){var callback=task.callback;var args=task.args;switch(args.length){case 0:callback();break;case 1:callback(args[0]);break;case 2:callback(args[0],args[1]);break;case 3:callback(args[0],args[1],args[2]);break;default:callback.apply(undefined,args);break}} 766function runIfPresent(handle){if(currentlyRunningATask){setTimeout(runIfPresent,0,handle)}else{var task=tasksByHandle[handle];if(task){currentlyRunningATask=!0;try{run(task)}finally{clearImmediate(handle);currentlyRunningATask=!1}}}} 767function installNextTickImplementation(){registerImmediate=function(handle){process.nextTick(function(){runIfPresent(handle)})}} 768function canUsePostMessage(){if(global.postMessage&&!global.importScripts){var postMessageIsAsynchronous=!0;var oldOnMessage=global.onmessage;global.onmessage=function(){postMessageIsAsynchronous=!1};global.postMessage("","*");global.onmessage=oldOnMessage;return postMessageIsAsynchronous}} 769function installPostMessageImplementation(){var messagePrefix="setImmediate$"+Math.random()+"$";var onGlobalMessage=function(event){if(event.source===global&&typeof event.data==="string"&&event.data.indexOf(messagePrefix)===0){runIfPresent(+event.data.slice(messagePrefix.length))}};if(global.addEventListener){global.addEventListener("message",onGlobalMessage,!1)}else{global.attachEvent("onmessage",onGlobalMessage)} 770registerImmediate=function(handle){global.postMessage(messagePrefix+handle,"*")}} 771function installMessageChannelImplementation(){var channel=new MessageChannel();channel.port1.onmessage=function(event){var handle=event.data;runIfPresent(handle)};registerImmediate=function(handle){channel.port2.postMessage(handle)}} 772function installReadyStateChangeImplementation(){var html=doc.documentElement;registerImmediate=function(handle){var script=doc.createElement("script");script.onreadystatechange=function(){runIfPresent(handle);script.onreadystatechange=null;html.removeChild(script);script=null};html.appendChild(script)}} 773function installSetTimeoutImplementation(){registerImmediate=function(handle){setTimeout(runIfPresent,0,handle)}} 774var attachTo=Object.getPrototypeOf&&Object.getPrototypeOf(global);attachTo=attachTo&&attachTo.setTimeout?attachTo:global;if({}.toString.call(global.process)==="[object process]"){installNextTickImplementation()}else if(canUsePostMessage()){installPostMessageImplementation()}
774else if(global.MessageChannel){installMessageChannelImplementation()}else if(doc&&"onreadystatechange" in doc.createElement("script")){installReadyStateChangeImplementation()}else{installSetTimeoutImplementation()} 775attachTo.setImmediate=setImmediate;attachTo.clearImmediate=clearImmediate}(typeof self==="undefined"?typeof global==="undefined"?this:global:self))}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}]},{},[10])(10)})
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.