Greasy Fork is available in English.

知乎下载器

一键复制知乎文章/回答为Markdown,下载文章/回答为zip(包含素材图片与文章/回答信息),备份你珍贵的回答与文章。

// ==UserScript==
// @name         知乎下载器
// @namespace    http://howardzhangdqs.eu.org/
// @source       https://github.com/Howardzhangdqs/zhihu-copy-as-markdown
// @version      0.3.26-4e0824
// @description  一键复制知乎文章/回答为Markdown,下载文章/回答为zip(包含素材图片与文章/回答信息),备份你珍贵的回答与文章。
// @author       HowardZhangdqs
// @match        *://www.zhihu.com/*
// @match        *://zhuanlan.zhihu.com/*
// @license      MIT
// @icon         https://static.zhihu.com/heifetz/favicon.ico
// @grant        none
// ==/UserScript==

/** 更新日志
 * 23.10.30: 脚本开写
 * 
 * 23.10.31:
 *     feat: 解析、渲染表格
 *     feat: 解析、渲染链接
 *     fix: 加了一个被忘掉的break,但是我忘了是哪忘了加了
 *     fix: 修复编辑框会被加上`复制为Markdown`的按钮
 *     doc: 给types加了完整的注释
 *     doc: 给Lexer和Parser函数添加完整的注释
 *     chore: 更改触发方式
 *     feat: 链接解析为直达链接
 *     feat: 下载内容为zip
 *     feat: 下载的zip中包含内容信息(`info.txt`)
 *     fix: 修复回答详情里图片无法下载
 *     fix: 首页按钮无法正常加载
 * 
 * 23.11.1:
 *     feat: `info.txt`加入作者信息
 *     chore: `info.txt`更名为`info.json`
 *     fix: 主页中`info.json > url`字段获取错误
 *     chore: `info.json`中`url`字段改为`link`
 *     fix: 主页文章作者信息获取错误
 *     chore: 发布在Github上
 *     fix: 无素材内容下来的zip中没有`index.md`
 * 
 * 23.11.3:
 *     feat: 解析想法
 *     feat: 解析、渲染、下载视频(回答/文章中的视频)
 * 
 * 23.11.4:
 *     fix: 按钮无法正常加载
 *     fix: 想法在未展开时就被解析
 *     fix: 修复部分内容同时出现一堆下载按钮以及不出现下载按钮的问题
 *     fix: 修复行内代码无法正确被解析的问题
 * 
 * 23.11.5:
 *     feat: 解析Gif
 *     chore: 更方便的测试
 * 
 * 23.12.5:
 *     feat: 单独成段的内联公式升级为行间公式 [来源](https://zhuanlan.zhihu.com/p/665008681#comment-10744866371)
 *     fix: 表格换行符解析错误
 * 
 * 24.1.19:
 *     feat: 回答批量下载 [Issue](https://github.com/Howardzhangdqs/zhihu-copy-as-markdown/issues/1)
 * 
 * 24.3.22:
 *     fix: 修复部分回答无法下载的问题 [Issue](https://github.com/Howardzhangdqs/zhihu-copy-as-markdown/issues/2)
 *     fix: 修改批量下载中问题描述文件夹名称为“问题描述” [Issue](https://github.com/Howardzhangdqs/zhihu-copy-as-markdown/issues/2#issuecomment-2014496716)
 */

(()=>{var e={434:function(e,t,r){var n;void 0!==(t="function"==typeof(n=function(){"use strict";function t(e,t,r){var n=new XMLHttpRequest;n.open("GET",e),n.responseType="blob",n.onload=function(){o(n.response,t,r)},n.onerror=function(){console.error("could not download file")},n.send()}function n(e){var t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch(e){}return 200<=t.status&&299>=t.status}function i(e){try{e.dispatchEvent(new MouseEvent("click"))}catch(r){var t=document.createEvent("MouseEvents");t.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var a="object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof r.g&&r.g.global===r.g?r.g:void 0,s=a.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),o=a.saveAs||("object"!=typeof window||window!==a?function(){}:"download"in HTMLAnchorElement.prototype&&!s?function(e,r,s){var o=a.URL||a.webkitURL,l=document.createElement("a");r=r||e.name||"download",l.download=r,l.rel="noopener","string"==typeof e?(l.href=e,l.origin===location.origin?i(l):n(l.href)?t(e,r,s):i(l,l.target="_blank")):(l.href=o.createObjectURL(e),setTimeout((function(){o.revokeObjectURL(l.href)}),4e4),setTimeout((function(){i(l)}),0))}:"msSaveOrOpenBlob"in navigator?function(e,r,a){if(r=r||e.name||"download","string"!=typeof e)navigator.msSaveOrOpenBlob(function(e,t){return void 0===t?t={autoBom:!1}:"object"!=typeof t&&(console.warn("Deprecated: Expected third argument to be a object"),t={autoBom:!t}),t.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\ufeff",e],{type:e.type}):e}(e,a),r);else if(n(e))t(e,r,a);else{var s=document.createElement("a");s.href=e,s.target="_blank",setTimeout((function(){i(s)}))}}:function(e,r,n,i){if((i=i||open("","_blank"))&&(i.document.title=i.document.body.innerText="downloading..."),"string"==typeof e)return t(e,r,n);var o="application/octet-stream"===e.type,l=/constructor/i.test(a.HTMLElement)||a.safari,u=/CriOS\/[\d]+/.test(navigator.userAgent);if((u||o&&l||s)&&"undefined"!=typeof FileReader){var h=new FileReader;h.onloadend=function(){var e=h.result;e=u?e:e.replace(/^data:[^;]*;/,"data:attachment/file;"),i?i.location.href=e:location=e,i=null},h.readAsDataURL(e)}else{var c=a.URL||a.webkitURL,d=c.createObjectURL(e);i?i.location=d:location.href=d,i=null,setTimeout((function(){c.revokeObjectURL(d)}),4e4)}});a.saveAs=o.saveAs=o,e.exports=o})?n.apply(t,[]):n)&&(e.exports=t)},905:(e,t,r)=>{e.exports=function e(t,r,n){function i(s,o){if(!r[s]){if(!t[s]){if(a)return a(s,!0);var l=new Error("Cannot find module '"+s+"'");throw l.code="MODULE_NOT_FOUND",l}l=r[s]={exports:{}},t[s][0].call(l.exports,(function(e){return i(t[s][1][e]||e)}),l,l.exports,e,t,r,n)}return r[s].exports}for(var a=void 0,s=0;s<n.length;s++)i(n[s]);return i}({1:[function(e,t,r){"use strict";var n=e("./utils"),i=e("./support"),a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";r.encode=function(e){for(var t,r,i,s,o,l,u=[],h=0,c=e.length,d="string"!==n.getTypeOf(e);h<e.length;)l=c-h,i=d?(t=e[h++],r=h<c?e[h++]:0,h<c?e[h++]:0):(t=e.charCodeAt(h++),r=h<c?e.charCodeAt(h++):0,h<c?e.charCodeAt(h++):0),s=(3&t)<<4|r>>4,o=1<l?(15&r)<<2|i>>6:64,l=2<l?63&i:64,u.push(a.charAt(t>>2)+a.charAt(s)+a.charAt(o)+a.charAt(l));return u.join("")},r.decode=function(e){var t,r,n,s,o,l=0,u=0;if("data:"===e.substr(0,5))throw new Error("Invalid base64 input, it looks like a data url.");var h,c=3*(e=e.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(e.charAt(e.length-1)===a.charAt(64)&&c--,e.charAt(e.length-2)===a.charAt(64)&&c--,c%1!=0)throw new Error("Invalid base64 input, bad content length.");for(h=new(i.uint8array?Uint8Array:Array)(0|c);l<e.length;)t=a.indexOf(e.charAt(l++))<<2|(s=a.indexOf(e.charAt(l++)))>>4,r=(15&s)<<4|(s=a.indexOf(e.charAt(l++)))>>2,n=(3&s)<<6|(o=a.indexOf(e.charAt(l++))),h[u++]=t,64!==s&&(h[u++]=r),64!==o&&(h[u++]=n);return h}},{"./support":30,"./utils":32}],2:[function(e,t,r){"use strict";var n=e("./external"),i=e("./stream/DataWorker"),a=e("./stream/Crc32Probe"),s=e("./stream/DataLengthProbe");function o(e,t,r,n,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=r,this.compression=n,this.compressedContent=i}o.prototype={getContentWorker:function(){var e=new i(n.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new s("data_length")),t=this;return e.on("end",(function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")})),e},getCompressedWorker:function(){return new i(n.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},o.createWorkerFrom=function(e,t,r){return e.pipe(new a).pipe(new s("uncompressedSize")).pipe(t.compressWorker(r)).pipe(new s("compressedSize")).withStreamInfo("compression",t)},t.exports=o},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,r){"use strict";var n=e("./stream/GenericWorker");r.STORE={magic:"\0\0",compressWorker:function(){return new n("STORE compression")},uncompressWorker:function(){return new n("STORE decompression")}},r.DEFLATE=e("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,r){"use strict";var n=e("./utils"),i=function(){for(var e=[],t=0;t<256;t++){for(var r=t,n=0;n<8;n++)r=1&r?3988292384^r>>>1:r>>>1;e[t]=r}return e}();t.exports=function(e,t){return void 0!==e&&e.length?("string"!==n.getTypeOf(e)?function(e,t,r){var n=i,a=0+r;e^=-1;for(var s=0;s<a;s++)e=e>>>8^n[255&(e^t[s])];return-1^e}:function(e,t,r){var n=i,a=0+r;e^=-1;for(var s=0;s<a;s++)e=e>>>8^n[255&(e^t.charCodeAt(s))];return-1^e})(0|t,e,e.length):0}},{"./utils":32}],5:[function(e,t,r){"use strict";r.base64=!1,r.binary=!1,r.dir=!1,r.createFolders=!0,r.date=null,r.compression=null,r.compressionOptions=null,r.comment=null,r.unixPermissions=null,r.dosPermissions=null},{}],6:[function(e,t,r){"use strict";e="undefined"!=typeof Promise?Promise:e("lie"),t.exports={Promise:e}},{lie:37}],7:[function(e,t,r){"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,i=e("pako"),a=e("./utils"),s=e("./stream/GenericWorker"),o=n?"uint8array":"array";function l(e,t){s.call(this,"FlateWorker/"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}r.magic="\b\0",a.inherits(l,s),l.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(a.transformTo(o,e.data),!1)},l.prototype.flush=function(){s.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},l.prototype.cleanUp=function(){s.prototype.cleanUp.call(this),this._pako=null},l.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},r.compressWorker=function(e){return new l("Deflate",e)},r.uncompressWorker=function(){return new l("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,r){"use strict";function n(e,t){for(var r="",n=0;n<t;n++)r+=String.fromCharCode(255&e),e>>>=8;return r}function i(e,t,r,i,s,h){var c=e.file,d=e.compression,f=h!==o.utf8encode,p=a.transformTo("string",h(c.name)),m=a.transformTo("string",o.utf8encode(c.name)),_=c.comment,g=(h=a.transformTo("string",h(_)),a.transformTo("string",o.utf8encode(_))),y=m.length!==c.name.length,b=(_=g.length!==_.length,""),v=c.dir,w=c.date,k={crc32:0,compressedSize:0,uncompressedSize:0};return t&&!r||(k.crc32=e.crc32,k.compressedSize=e.compressedSize,k.uncompressedSize=e.uncompressedSize),r=0,t&&(r|=8),f||!y&&!_||(r|=2048),e=0,t=0,v&&(e|=16),"UNIX"===s?(t=798,e|=(65535&((f=c.unixPermissions)?f:v?16893:33204))<<16):(t=20,e|=63&(c.dosPermissions||0)),s=w.getUTCHours(),s=(s=((s<<=6)|w.getUTCMinutes())<<5)|w.getUTCSeconds()/2,f=w.getUTCFullYear()-1980,f=(f=((f<<=4)|w.getUTCMonth()+1)<<5)|w.getUTCDate(),y&&(v=n(1,1)+n(l(p),4)+m,b+="up"+n(v.length,2)+v),_&&(c=n(1,1)+n(l(h),4)+g,b+="uc"+n(c.length,2)+c),w="",w=(w=(w=(w=(w=(w=(w=(w=(w=(w+="\n\0")+n(r,2))+d.magic)+n(s,2))+n(f,2))+n(k.crc32,4))+n(k.compressedSize,4))+n(k.uncompressedSize,4))+n(p.length,2))+n(b.length,2),{fileRecord:u.LOCAL_FILE_HEADER+w+p+b,dirRecord:u.CENTRAL_FILE_HEADER+n(t,2)+w+n(h.length,2)+"\0\0\0\0"+n(e,4)+n(i,4)+p+b+h}}var a=e("../utils"),s=e("../stream/GenericWorker"),o=e("../utf8"),l=e("../crc32"),u=e("../signature");function h(e,t,r,n){s.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=r,this.encodeFileName=n,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}a.inherits(h,s),h.prototype.push=function(e){var t=e.meta.percent||0,r=this.entriesCount,n=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,s.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:r?(t+100*(r-n-1))/r:100}}))},h.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;t?(e=i(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName),this.push({data:e.fileRecord,meta:{percent:0}})):this.accumulate=!0},h.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,r=i(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(r.dirRecord),t)this.push({data:(t=e,u.DATA_DESCRIPTOR+n(t.crc32,4)+n(t.compressedSize,4)+n(t.uncompressedSize,4)),meta:{percent:100}});else for(this.push({data:r.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},h.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t<this.dirRecords.length;t++)this.push({data:this.dirRecords[t],meta:{percent:100}});var r=this.bytesWritten-e;r=function(e,t,r,i,s){return s=a.transformTo("string",s(i)),u.CENTRAL_DIRECTORY_END+"\0\0\0\0"+n(e,2)+n(e,2)+n(t,4)+n(r,4)+n(s.length,2)+s}(this.dirRecords.length,r,e,this.zipComment,this.encodeFileName),this.push({data:r,meta:{percent:100}})},h.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},h.prototype.registerPrevious=function(e){this._sources.push(e);var t=this;return e.on("data",(function(e){t.processChunk(e)})),e.on("end",(function(){t.closedSource(t.previous.streamInfo),t._sources.length?t.prepareNextSource():t.end()})),e.on("error",(function(e){t.error(e)})),this},h.prototype.resume=function(){return!!s.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},h.prototype.error=function(e){var t=this._sources;if(!s.prototype.error.call(this,e))return!1;for(var r=0;r<t.length;r++)try{t[r].error(e)}catch(e){}return!0},h.prototype.lock=function(){s.prototype.lock.call(this);for(var e=this._sources,t=0;t<e.length;t++)e[t].lock()},t.exports=h},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(e,t,r){"use strict";var n=e("../compressions"),i=e("./ZipFileWorker");r.generateWorker=function(e,t,r){var a=new i(t.streamFiles,r,t.platform,t.encodeFileName),s=0;try{e.forEach((function(e,r){s++;var i=function(e,t){if(t=n[e=e||t])return t;throw new Error(e+" is not a valid compression method !")}(r.options.compression,t.compression),o=r.options.compressionOptions||t.compressionOptions||{},l=r.dir,u=r.date;r._compressWorker(i,o).withStreamInfo("file",{name:e,dir:l,date:u,comment:r.comment||"",unixPermissions:r.unixPermissions,dosPermissions:r.dosPermissions}).pipe(a)})),a.entriesCount=s}catch(e){a.error(e)}return a}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(e,t,r){"use strict";function n(){if(!(this instanceof n))return new n;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files=Object.create(null),this.comment=null,this.root="",this.clone=function(){var e,t=new n;for(e in this)"function"!=typeof this[e]&&(t[e]=this[e]);return t}}(n.prototype=e("./object")).loadAsync=e("./load"),n.support=e("./support"),n.defaults=e("./defaults"),n.version="3.10.1",n.loadAsync=function(e,t){return(new n).loadAsync(e,t)},n.external=e("./external"),t.exports=n},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(e,t,r){"use strict";var n=e("./utils"),i=e("./external"),a=e("./utf8"),s=e("./zipEntries"),o=e("./stream/Crc32Probe"),l=e("./nodejsUtils");t.exports=function(e,t){var r=this;return t=n.extend(t||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:a.utf8decode}),l.isNode&&l.isStream(e)?i.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):n.prepareContent("the loaded zip file",e,!0,t.optimizedBinaryString,t.base64).then((function(e){var r=new s(t);return r.load(e),r})).then((function(e){var r=[i.Promise.resolve(e)],n=e.files;if(t.checkCRC32)for(var a=0;a<n.length;a++)r.push(function(e){return new i.Promise((function(t,r){var n=e.decompressed.getContentWorker().pipe(new o);n.on("error",(function(e){r(e)})).on("end",(function(){n.streamInfo.crc32!==e.decompressed.crc32?r(new Error("Corrupted zip : CRC32 mismatch")):t()})).resume()}))}(n[a]));return i.Promise.all(r)})).then((function(e){for(var i=(e=e.shift()).files,a=0;a<i.length;a++){var s=i[a],o=s.fileNameStr,l=n.resolve(s.fileNameStr);r.file(l,s.decompressed,{binary:!0,optimizedBinaryString:!0,date:s.date,dir:s.dir,comment:s.fileCommentStr.length?s.fileCommentStr:null,unixPermissions:s.unixPermissions,dosPermissions:s.dosPermissions,createFolders:t.createFolders}),s.dir||(r.file(l).unsafeOriginalName=o)}return e.zipComment.length&&(r.comment=e.zipComment),r}))}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(e,t,r){"use strict";var n=e("../utils"),i=e("../stream/GenericWorker");function a(e,t){i.call(this,"Nodejs stream input adapter for "+e),this._upstreamEnded=!1,this._bindStream(t)}n.inherits(a,i),a.prototype._bindStream=function(e){var t=this;(this._stream=e).pause(),e.on("data",(function(e){t.push({data:e,meta:{percent:0}})})).on("error",(function(e){t.isPaused?this.generatedError=e:t.error(e)})).on("end",(function(){t.isPaused?t._upstreamEnded=!0:t.end()}))},a.prototype.pause=function(){return!!i.prototype.pause.call(this)&&(this._stream.pause(),!0)},a.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},t.exports=a},{"../stream/GenericWorker":28,"../utils":32}],13:[function(e,t,r){"use strict";var n=e("readable-stream").Readable;function i(e,t,r){n.call(this,t),this._helper=e;var i=this;e.on("data",(function(e,t){i.push(e)||i._helper.pause(),r&&r(t)})).on("error",(function(e){i.emit("error",e)})).on("end",(function(){i.push(null)}))}e("../utils").inherits(i,n),i.prototype._read=function(){this._helper.resume()},t.exports=i},{"../utils":32,"readable-stream":16}],14:[function(e,t,r){"use strict";t.exports={isNode:"undefined"!=typeof Buffer,newBufferFrom:function(e,t){if(Buffer.from&&Buffer.from!==Uint8Array.from)return Buffer.from(e,t);if("number"==typeof e)throw new Error('The "data" argument must not be a number');return new Buffer(e,t)},allocBuffer:function(e){return Buffer.alloc?Buffer.alloc(e):((e=new Buffer(e)).fill(0),e)},isBuffer:function(e){return Buffer.isBuffer(e)},isStream:function(e){return e&&"function"==typeof e.on&&"function"==typeof e.pause&&"function"==typeof e.resume}}},{}],15:[function(e,t,r){"use strict";function n(e,t,r){var n=s.getTypeOf(t),a=s.extend(r||{},u),l=(a.date=a.date||new Date,null!==a.compression&&(a.compression=a.compression.toUpperCase()),"string"==typeof a.unixPermissions&&(a.unixPermissions=parseInt(a.unixPermissions,8)),a.unixPermissions&&16384&a.unixPermissions&&(a.dir=!0),a.dosPermissions&&16&a.dosPermissions&&(a.dir=!0),a.dir&&(e=m(e)),a.createFolders&&(l=function(e){var t=(e="/"===e.slice(-1)?e.substring(0,e.length-1):e).lastIndexOf("/");return 0<t?e.substring(0,t):""}(e))&&i.call(this,l,!0),"string"===n&&!1===a.binary&&!1===a.base64);r&&void 0!==r.binary||(a.binary=!l),(t instanceof h&&0===t.uncompressedSize||a.dir||!t||0===t.length)&&(a.base64=!1,a.binary=!0,t="",a.compression="STORE"),n=t instanceof h||t instanceof o?t:f.isNode&&f.isStream(t)?new p(e,t):s.prepareContent(e,t,a.binary,a.optimizedBinaryString,a.base64),r=new c(e,n,a),this.files[e]=r}function i(e,t){return t=void 0!==t?t:u.createFolders,e=m(e),this.files[e]||n.call(this,e,null,{dir:!0,createFolders:t}),this.files[e]}var a=e("./utf8"),s=e("./utils"),o=e("./stream/GenericWorker"),l=e("./stream/StreamHelper"),u=e("./defaults"),h=e("./compressedObject"),c=e("./zipObject"),d=e("./generate"),f=e("./nodejsUtils"),p=e("./nodejs/NodejsStreamInputAdapter"),m=function(e){return"/"!==e.slice(-1)&&(e+="/"),e};function _(e){return"[object RegExp]"===Object.prototype.toString.call(e)}t.exports={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(e){var t,r,n;for(t in this.files)n=this.files[t],(r=t.slice(this.root.length,t.length))&&t.slice(0,this.root.length)===this.root&&e(r,n)},filter:function(e){var t=[];return this.forEach((function(r,n){e(r,n)&&t.push(n)})),t},file:function(e,t,r){var i;return 1!==arguments.length?(e=this.root+e,n.call(this,e,t,r),this):_(e)?(i=e,this.filter((function(e,t){return!t.dir&&i.test(e)}))):(t=this.files[this.root+e])&&!t.dir?t:null},folder:function(e){var t,r;return e?_(e)?this.filter((function(t,r){return r.dir&&e.test(t)})):(t=this.root+e,t=i.call(this,t),(r=this.clone()).root=t.name,r):this},remove:function(e){e=this.root+e;var t=this.files[e];if(t||("/"!==e.slice(-1)&&(e+="/"),t=this.files[e]),t&&!t.dir)delete this.files[e];else for(var r=this.filter((function(t,r){return r.name.slice(0,e.length)===e})),n=0;n<r.length;n++)delete this.files[r[n].name];return this},generate:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(e){var t={};try{if((t=s.extend(e||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:a.utf8encode})).type=t.type.toLowerCase(),t.compression=t.compression.toUpperCase(),"binarystring"===t.type&&(t.type="string"),!t.type)throw new Error("No output type specified.");s.checkSupport(t.type),"darwin"!==t.platform&&"freebsd"!==t.platform&&"linux"!==t.platform&&"sunos"!==t.platform||(t.platform="UNIX"),"win32"===t.platform&&(t.platform="DOS");var r=t.comment||this.comment||"",n=d.generateWorker(this,t,r)}catch(e){(n=new o("error")).error(e)}return new l(n,t.type||"string",t.mimeType)},generateAsync:function(e,t){return this.generateInternalStream(e).accumulate(t)},generateNodeStream:function(e,t){return(e=e||{}).type||(e.type="nodebuffer"),this.generateInternalStream(e).toNodejsStream(t)}}},{"./compressedObject":2,"./defaults":5,"./generate":9,"./nodejs/NodejsStreamInputAdapter":12,"./nodejsUtils":14,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31,"./utils":32,"./zipObject":35}],16:[function(e,t,r){"use strict";t.exports=e("stream")},{stream:void 0}],17:[function(e,t,r){"use strict";var n=e("./DataReader");function i(e){n.call(this,e);for(var t=0;t<this.data.length;t++)e[t]=255&e[t]}e("../utils").inherits(i,n),i.prototype.byteAt=function(e){return this.data[this.zero+e]},i.prototype.lastIndexOfSignature=function(e){for(var t=e.charCodeAt(0),r=e.charCodeAt(1),n=e.charCodeAt(2),i=e.charCodeAt(3),a=this.length-4;0<=a;--a)if(this.data[a]===t&&this.data[a+1]===r&&this.data[a+2]===n&&this.data[a+3]===i)return a-this.zero;return-1},i.prototype.readAndCheckSignature=function(e){var t=e.charCodeAt(0),r=e.charCodeAt(1),n=e.charCodeAt(2),i=(e=e.charCodeAt(3),this.readData(4));return t===i[0]&&r===i[1]&&n===i[2]&&e===i[3]},i.prototype.readData=function(e){var t;return this.checkOffset(e),0===e?[]:(t=this.data.slice(this.zero+this.index,this.zero+this.index+e),this.index+=e,t)},t.exports=i},{"../utils":32,"./DataReader":18}],18:[function(e,t,r){"use strict";var n=e("../utils");function i(e){this.data=e,this.length=e.length,this.index=0,this.zero=0}i.prototype={checkOffset:function(e){this.checkIndex(this.index+e)},checkIndex:function(e){if(this.length<this.zero+e||e<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+e+"). Corrupted zip ?")},setIndex:function(e){this.checkIndex(e),this.index=e},skip:function(e){this.setIndex(this.index+e)},byteAt:function(){},readInt:function(e){var t,r=0;for(this.checkOffset(e),t=this.index+e-1;t>=this.index;t--)r=(r<<8)+this.byteAt(t);return this.index+=e,r},readString:function(e){return n.transformTo("string",this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},t.exports=i},{"../utils":32}],19:[function(e,t,r){"use strict";var n=e("./Uint8ArrayReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(e,t,r){"use strict";var n=e("./DataReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},i.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},i.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./DataReader":18}],21:[function(e,t,r){"use strict";var n=e("./ArrayReader");function i(e){n.call(this,e)}e("../utils").inherits(i,n),i.prototype.readData=function(e){var t;return this.checkOffset(e),0===e?new Uint8Array(0):(t=this.data.subarray(this.zero+this.index,this.zero+this.index+e),this.index+=e,t)},t.exports=i},{"../utils":32,"./ArrayReader":17}],22:[function(e,t,r){"use strict";var n=e("../utils"),i=e("../support"),a=e("./ArrayReader"),s=e("./StringReader"),o=e("./NodeBufferReader"),l=e("./Uint8ArrayReader");t.exports=function(e){var t=n.getTypeOf(e);return n.checkSupport(t),"string"!==t||i.uint8array?"nodebuffer"===t?new o(e):i.uint8array?new l(n.transformTo("uint8array",e)):new a(n.transformTo("array",e)):new s(e)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(e,t,r){"use strict";r.LOCAL_FILE_HEADER="PK",r.CENTRAL_FILE_HEADER="PK",r.CENTRAL_DIRECTORY_END="PK",r.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",r.ZIP64_CENTRAL_DIRECTORY_END="PK",r.DATA_DESCRIPTOR="PK\b"},{}],24:[function(e,t,r){"use strict";var n=e("./GenericWorker"),i=e("../utils");function a(e){n.call(this,"ConvertWorker to "+e),this.destType=e}i.inherits(a,n),a.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},t.exports=a},{"../utils":32,"./GenericWorker":28}],25:[function(e,t,r){"use strict";var n=e("./GenericWorker"),i=e("../crc32");function a(){n.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}e("../utils").inherits(a,n),a.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},t.exports=a},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./GenericWorker");function a(e){i.call(this,"DataLengthProbe for "+e),this.propName=e,this.withStreamInfo(e,0)}n.inherits(a,i),a.prototype.processChunk=function(e){var t;e&&(t=this.streamInfo[this.propName]||0,this.streamInfo[this.propName]=t+e.data.length),i.prototype.processChunk.call(this,e)},t.exports=a},{"../utils":32,"./GenericWorker":28}],27:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./GenericWorker");function a(e){i.call(this,"DataWorker");var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,e.then((function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=n.getTypeOf(e),t.isPaused||t._tickAndRepeat()}),(function(e){t.error(e)}))}n.inherits(a,i),a.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},a.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,n.delay(this._tickAndRepeat,[],this)),!0)},a.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished)||(n.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0)},a.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":e=this.data.substring(this.index,t);break;case"uint8array":e=this.data.subarray(this.index,t);break;case"array":case"nodebuffer":e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=a},{"../utils":32,"./GenericWorker":28}],28:[function(e,t,r){"use strict";function n(e){this.name=e||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}n.prototype={push:function(e){this.emit("data",e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(e){this.emit("error",e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit("error",e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var r=0;r<this._listeners[e].length;r++)this._listeners[e][r].call(this,t)},pipe:function(e){return e.registerPrevious(this)},registerPrevious:function(e){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=e.streamInfo,this.mergeStreamInfo(),this.previous=e;var t=this;return e.on("data",(function(e){t.processChunk(e)})),e.on("end",(function(){t.end()})),e.on("error",(function(e){t.error(e)})),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){var e;return!(!this.isPaused||this.isFinished||(e=this.isPaused=!1,this.generatedError&&(this.error(this.generatedError),e=!0),this.previous&&this.previous.resume(),e))},flush:function(){},processChunk:function(e){this.push(e)},withStreamInfo:function(e,t){return this.extraStreamInfo[e]=t,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var e in this.extraStreamInfo)Object.prototype.hasOwnProperty.call(this.extraStreamInfo,e)&&(this.streamInfo[e]=this.extraStreamInfo[e])},lock:function(){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var e="Worker "+this.name;return this.previous?this.previous+" -> "+e:e}},t.exports=n},{}],29:[function(e,t,r){"use strict";var n=e("../utils"),i=e("./ConvertWorker"),a=e("./GenericWorker"),s=e("../base64"),o=e("../support"),l=e("../external"),u=null;if(o.nodestream)try{u=e("../nodejs/NodejsStreamOutputAdapter")}catch(e){}function h(e,t,r){var s=t;switch(t){case"blob":case"arraybuffer":s="uint8array";break;case"base64":s="string"}try{this._internalType=s,this._outputType=t,this._mimeType=r,n.checkSupport(s),this._worker=e.pipe(new i(s)),e.lock()}catch(e){this._worker=new a("error"),this._worker.error(e)}}h.prototype={accumulate:function(e){return t=this,r=e,new l.Promise((function(e,i){var a=[],o=t._internalType,l=t._outputType,u=t._mimeType;t.on("data",(function(e,t){a.push(e),r&&r(t)})).on("error",(function(e){a=[],i(e)})).on("end",(function(){try{var t=function(e,t,r){switch(e){case"blob":return n.newBlob(n.transformTo("arraybuffer",t),r);case"base64":return s.encode(t);default:return n.transformTo(e,t)}}(l,function(e,t){for(var r=0,n=null,i=0,a=0;a<t.length;a++)i+=t[a].length;switch(e){case"string":return t.join("");case"array":return Array.prototype.concat.apply([],t);case"uint8array":for(n=new Uint8Array(i),a=0;a<t.length;a++)n.set(t[a],r),r+=t[a].length;return n;case"nodebuffer":return Buffer.concat(t);default:throw new Error("concat : unsupported type '"+e+"'")}}(o,a),u);e(t)}catch(t){i(t)}a=[]})).resume()}));var t,r},on:function(e,t){var r=this;return"data"===e?this._worker.on(e,(function(e){t.call(r,e.data,e.meta)})):this._worker.on(e,(function(){n.delay(t,arguments,r)})),this},resume:function(){return n.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(e){if(n.checkSupport("nodestream"),"nodebuffer"!==this._outputType)throw new Error(this._outputType+" is not supported by this method");return new u(this,{objectMode:"nodebuffer"!==this._outputType},e)}},t.exports=h},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(e,t,r){"use strict";if(r.base64=!0,r.array=!0,r.string=!0,r.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,r.nodebuffer="undefined"!=typeof Buffer,r.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)r.blob=!1;else{var n=new ArrayBuffer(0);try{r.blob=0===new Blob([n],{type:"application/zip"}).size}catch(e){try{var i=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);i.append(n),r.blob=0===i.getBlob("application/zip").size}catch(e){r.blob=!1}}}try{r.nodestream=!!e("readable-stream").Readable}catch(e){r.nodestream=!1}},{"readable-stream":16}],31:[function(e,t,r){"use strict";for(var n=e("./utils"),i=e("./support"),a=e("./nodejsUtils"),s=e("./stream/GenericWorker"),o=new Array(256),l=0;l<256;l++)o[l]=252<=l?6:248<=l?5:240<=l?4:224<=l?3:192<=l?2:1;function u(){s.call(this,"utf-8 decode"),this.leftOver=null}function h(){s.call(this,"utf-8 encode")}o[254]=o[254]=1,r.utf8encode=function(e){if(i.nodebuffer)return a.newBufferFrom(e,"utf-8");for(var t,r,n,s,o=e,l=o.length,u=0,h=0;h<l;h++)55296==(64512&(r=o.charCodeAt(h)))&&h+1<l&&56320==(64512&(n=o.charCodeAt(h+1)))&&(r=65536+(r-55296<<10)+(n-56320),h++),u+=r<128?1:r<2048?2:r<65536?3:4;for(t=new(i.uint8array?Uint8Array:Array)(u),h=s=0;s<u;h++)55296==(64512&(r=o.charCodeAt(h)))&&h+1<l&&56320==(64512&(n=o.charCodeAt(h+1)))&&(r=65536+(r-55296<<10)+(n-56320),h++),r<128?t[s++]=r:(r<2048?t[s++]=192|r>>>6:(r<65536?t[s++]=224|r>>>12:(t[s++]=240|r>>>18,t[s++]=128|r>>>12&63),t[s++]=128|r>>>6&63),t[s++]=128|63&r);return t},r.utf8decode=function(e){if(i.nodebuffer)return n.transformTo("nodebuffer",e).toString("utf-8");for(var t,r,a,s=e=n.transformTo(i.uint8array?"uint8array":"array",e),l=s.length,u=new Array(2*l),h=t=0;h<l;)if((r=s[h++])<128)u[t++]=r;else if(4<(a=o[r]))u[t++]=65533,h+=a-1;else{for(r&=2===a?31:3===a?15:7;1<a&&h<l;)r=r<<6|63&s[h++],a--;1<a?u[t++]=65533:r<65536?u[t++]=r:(r-=65536,u[t++]=55296|r>>10&1023,u[t++]=56320|1023&r)}return u.length!==t&&(u.subarray?u=u.subarray(0,t):u.length=t),n.applyFromCharCode(u)},n.inherits(u,s),u.prototype.processChunk=function(e){var t=n.transformTo(i.uint8array?"uint8array":"array",e.data),a=(this.leftOver&&this.leftOver.length&&(i.uint8array?(a=t,(t=new Uint8Array(a.length+this.leftOver.length)).set(this.leftOver,0),t.set(a,this.leftOver.length)):t=this.leftOver.concat(t),this.leftOver=null),function(e,t){for(var r=(t=(t=t||e.length)>e.length?e.length:t)-1;0<=r&&128==(192&e[r]);)r--;return!(r<0)&&0!==r&&r+o[e[r]]>t?r:t}(t)),s=t;a!==t.length&&(i.uint8array?(s=t.subarray(0,a),this.leftOver=t.subarray(a,t.length)):(s=t.slice(0,a),this.leftOver=t.slice(a,t.length))),this.push({data:r.utf8decode(s),meta:e.meta})},u.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:r.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},r.Utf8DecodeWorker=u,n.inherits(h,s),h.prototype.processChunk=function(e){this.push({data:r.utf8encode(e.data),meta:e.meta})},r.Utf8EncodeWorker=h},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,r){"use strict";var n=e("./support"),i=e("./base64"),a=e("./nodejsUtils"),s=e("./external");function o(e){return e}function l(e,t){for(var r=0;r<e.length;++r)t[r]=255&e.charCodeAt(r);return t}e("setimmediate"),r.newBlob=function(e,t){r.checkSupport("blob");try{return new Blob([e],{type:t})}catch(r){try{var n=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return n.append(e),n.getBlob(t)}catch(e){throw new Error("Bug : can't construct the Blob.")}}};var u={stringifyByChunk:function(e,t,r){var n=[],i=0,a=e.length;if(a<=r)return String.fromCharCode.apply(null,e);for(;i<a;)n.push("array"===t||"nodebuffer"===t?String.fromCharCode.apply(null,e.slice(i,Math.min(i+r,a))):String.fromCharCode.apply(null,e.subarray(i,Math.min(i+r,a)))),i+=r;return n.join("")},stringifyByChar:function(e){for(var t="",r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},applyCanBeUsed:{uint8array:function(){try{return n.uint8array&&1===String.fromCharCode.apply(null,new Uint8Array(1)).length}catch(e){return!1}}(),nodebuffer:function(){try{return n.nodebuffer&&1===String.fromCharCode.apply(null,a.allocBuffer(1)).length}catch(e){return!1}}()}};function h(e){var t=65536,n=r.getTypeOf(e),i=!0;if("uint8array"===n?i=u.applyCanBeUsed.uint8array:"nodebuffer"===n&&(i=u.applyCanBeUsed.nodebuffer),i)for(;1<t;)try{return u.stringifyByChunk(e,n,t)}catch(e){t=Math.floor(t/2)}return u.stringifyByChar(e)}function c(e,t){for(var r=0;r<e.length;r++)t[r]=e[r];return t}r.applyFromCharCode=h;var d={};d.string={string:o,array:function(e){return l(e,new Array(e.length))},arraybuffer:function(e){return d.string.uint8array(e).buffer},uint8array:function(e){return l(e,new Uint8Array(e.length))},nodebuffer:function(e){return l(e,a.allocBuffer(e.length))}},d.array={string:h,array:o,arraybuffer:function(e){return new Uint8Array(e).buffer},uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(e)}},d.arraybuffer={string:function(e){return h(new Uint8Array(e))},array:function(e){return c(new Uint8Array(e),new Array(e.byteLength))},arraybuffer:o,uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(new Uint8Array(e))}},d.uint8array={string:h,array:function(e){return c(e,new Array(e.length))},arraybuffer:function(e){return e.buffer},uint8array:o,nodebuffer:function(e){return a.newBufferFrom(e)}},d.nodebuffer={string:h,array:function(e){return c(e,new Array(e.length))},arraybuffer:function(e){return d.nodebuffer.uint8array(e).buffer},uint8array:function(e){return c(e,new Uint8Array(e.length))},nodebuffer:o},r.transformTo=function(e,t){if(t=t||"",!e)return t;r.checkSupport(e);var n=r.getTypeOf(t);return d[n][e](t)},r.resolve=function(e){for(var t=e.split("/"),r=[],n=0;n<t.length;n++){var i=t[n];"."===i||""===i&&0!==n&&n!==t.length-1||(".."===i?r.pop():r.push(i))}return r.join("/")},r.getTypeOf=function(e){return"string"==typeof e?"string":"[object Array]"===Object.prototype.toString.call(e)?"array":n.nodebuffer&&a.isBuffer(e)?"nodebuffer":n.uint8array&&e instanceof Uint8Array?"uint8array":n.arraybuffer&&e instanceof ArrayBuffer?"arraybuffer":void 0},r.checkSupport=function(e){if(!n[e.toLowerCase()])throw new Error(e+" is not supported by this platform")},r.MAX_VALUE_16BITS=65535,r.MAX_VALUE_32BITS=-1,r.pretty=function(e){for(var t,r="",n=0;n<(e||"").length;n++)r+="\\x"+((t=e.charCodeAt(n))<16?"0":"")+t.toString(16).toUpperCase();return r},r.delay=function(e,t,r){setImmediate((function(){e.apply(r||null,t||[])}))},r.inherits=function(e,t){function r(){}r.prototype=t.prototype,e.prototype=new r},r.extend=function(){for(var e,t={},r=0;r<arguments.length;r++)for(e in arguments[r])Object.prototype.hasOwnProperty.call(arguments[r],e)&&void 0===t[e]&&(t[e]=arguments[r][e]);return t},r.prepareContent=function(e,t,a,o,u){return s.Promise.resolve(t).then((function(e){return n.blob&&(e instanceof Blob||-1!==["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(e)))&&"undefined"!=typeof FileReader?new s.Promise((function(t,r){var n=new FileReader;n.onload=function(e){t(e.target.result)},n.onerror=function(e){r(e.target.error)},n.readAsArrayBuffer(e)})):e})).then((function(t){var h=r.getTypeOf(t);return h?("arraybuffer"===h?t=r.transformTo("uint8array",t):"string"===h&&(u?t=i.decode(t):a&&!0!==o&&(t=l(h=t,new(n.uint8array?Uint8Array:Array)(h.length)))),t):s.Promise.reject(new Error("Can't read the data of '"+e+"'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))}))}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,setimmediate:54}],33:[function(e,t,r){"use strict";var n=e("./reader/readerFor"),i=e("./utils"),a=e("./signature"),s=e("./zipEntry"),o=e("./support");function l(e){this.files=[],this.loadOptions=e}l.prototype={checkSignature:function(e){var t;if(!this.reader.readAndCheckSignature(e))throw this.reader.index-=4,t=this.reader.readString(4),new Error("Corrupted zip or bug: unexpected signature ("+i.pretty(t)+", expected "+i.pretty(e)+")")},isSignature:function(e,t){var r=this.reader.index;return this.reader.setIndex(e),e=this.reader.readString(4)===t,this.reader.setIndex(r),e},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var e=this.reader.readData(this.zipCommentLength),t=o.uint8array?"uint8array":"array";t=i.transformTo(t,e),this.zipComment=this.loadOptions.decodeFileName(t)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var e,t,r,n=this.zip64EndOfCentralSize-44;0<n;)e=this.reader.readInt(2),t=this.reader.readInt(4),r=this.reader.readData(t),this.zip64ExtensibleData[e]={id:e,length:t,value:r}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),1<this.disksCount)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){for(var e,t=0;t<this.files.length;t++)e=this.files[t],this.reader.setIndex(e.localHeaderOffset),this.checkSignature(a.LOCAL_FILE_HEADER),e.readLocalPart(this.reader),e.handleUTF8(),e.processAttributes()},readCentralDir:function(){var e;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(a.CENTRAL_FILE_HEADER);)(e=new s({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(e);if(this.centralDirRecords!==this.files.length&&0!==this.centralDirRecords&&0===this.files.length)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var e=this.reader.lastIndexOfSignature(a.CENTRAL_DIRECTORY_END);if(e<0)throw this.isSignature(0,a.LOCAL_FILE_HEADER)?new Error("Corrupted zip: can't find end of central directory"):new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html");this.reader.setIndex(e);var t=e;if(this.checkSignature(a.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===i.MAX_VALUE_16BITS||this.diskWithCentralDirStart===i.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===i.MAX_VALUE_16BITS||this.centralDirRecords===i.MAX_VALUE_16BITS||this.centralDirSize===i.MAX_VALUE_32BITS||this.centralDirOffset===i.MAX_VALUE_32BITS){if(this.zip64=!0,(e=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(e),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,a.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}if(e=this.centralDirOffset+this.centralDirSize,0<(e=t-(e=this.zip64?e+20+(12+this.zip64EndOfCentralSize):e)))this.isSignature(t,a.CENTRAL_FILE_HEADER)||(this.reader.zero=e);else if(e<0)throw new Error("Corrupted zip: missing "+Math.abs(e)+" bytes.")},prepareReader:function(e){this.reader=n(e)},load:function(e){this.prepareReader(e),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},t.exports=l},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utils":32,"./zipEntry":34}],34:[function(e,t,r){"use strict";var n=e("./reader/readerFor"),i=e("./utils"),a=e("./compressedObject"),s=e("./crc32"),o=e("./utf8"),l=e("./compressions"),u=e("./support");function h(e,t){this.options=e,this.loadOptions=t}h.prototype={isEncrypted:function(){return 1==(1&this.bitFlag)},useUTF8:function(){return 2048==(2048&this.bitFlag)},readLocalPart:function(e){var t;if(e.skip(22),this.fileNameLength=e.readInt(2),t=e.readInt(2),this.fileName=e.readData(this.fileNameLength),e.skip(t),-1===this.compressedSize||-1===this.uncompressedSize)throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)");if(null===(t=function(e){for(var t in l)if(Object.prototype.hasOwnProperty.call(l,t)&&l[t].magic===e)return l[t];return null}(this.compressionMethod)))throw new Error("Corrupted zip : compression "+i.pretty(this.compressionMethod)+" unknown (inner file : "+i.transformTo("string",this.fileName)+")");this.decompressed=new a(this.compressedSize,this.uncompressedSize,this.crc32,t,e.readData(this.compressedSize))},readCentralPart:function(e){this.versionMadeBy=e.readInt(2),e.skip(2),this.bitFlag=e.readInt(2),this.compressionMethod=e.readString(2),this.date=e.readDate(),this.crc32=e.readInt(4),this.compressedSize=e.readInt(4),this.uncompressedSize=e.readInt(4);var t=e.readInt(2);if(this.extraFieldsLength=e.readInt(2),this.fileCommentLength=e.readInt(2),this.diskNumberStart=e.readInt(2),this.internalFileAttributes=e.readInt(2),this.externalFileAttributes=e.readInt(4),this.localHeaderOffset=e.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");e.skip(t),this.readExtraFields(e),this.parseZIP64ExtraField(e),this.fileComment=e.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var e=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),0==e&&(this.dosPermissions=63&this.externalFileAttributes),3==e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){var e;this.extraFields[1]&&(e=n(this.extraFields[1].value),this.uncompressedSize===i.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===i.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===i.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===i.MAX_VALUE_32BITS)&&(this.diskNumberStart=e.readInt(4))},readExtraFields:function(e){var t,r,n,i=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index+4<i;)t=e.readInt(2),r=e.readInt(2),n=e.readData(r),this.extraFields[t]={id:t,length:r,value:n};e.setIndex(i)},handleUTF8:function(){var e,t=u.uint8array?"uint8array":"array";this.useUTF8()?(this.fileNameStr=o.utf8decode(this.fileName),this.fileCommentStr=o.utf8decode(this.fileComment)):(null!==(e=this.findExtraFieldUnicodePath())?this.fileNameStr=e:(e=i.transformTo(t,this.fileName),this.fileNameStr=this.loadOptions.decodeFileName(e)),null!==(e=this.findExtraFieldUnicodeComment())?this.fileCommentStr=e:(e=i.transformTo(t,this.fileComment),this.fileCommentStr=this.loadOptions.decodeFileName(e)))},findExtraFieldUnicodePath:function(){var e,t=this.extraFields[28789];return t&&1===(e=n(t.value)).readInt(1)&&s(this.fileName)===e.readInt(4)?o.utf8decode(e.readData(t.length-5)):null},findExtraFieldUnicodeComment:function(){var e,t=this.extraFields[25461];return t&&1===(e=n(t.value)).readInt(1)&&s(this.fileComment)===e.readInt(4)?o.utf8decode(e.readData(t.length-5)):null}},t.exports=h},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(e,t,r){"use strict";function n(e,t,r){this.name=e,this.dir=r.dir,this.date=r.date,this.comment=r.comment,this.unixPermissions=r.unixPermissions,this.dosPermissions=r.dosPermissions,this._data=t,this._dataBinary=r.binary,this.options={compression:r.compression,compressionOptions:r.compressionOptions}}var i=e("./stream/StreamHelper"),a=e("./stream/DataWorker"),s=e("./utf8"),o=e("./compressedObject"),l=e("./stream/GenericWorker");n.prototype={internalStream:function(e){var t=null,r="string";try{if(!e)throw new Error("No output type specified.");var n="string"===(r=e.toLowerCase())||"text"===r,a=("binarystring"!==r&&"text"!==r||(r="string"),t=this._decompressWorker(),!this._dataBinary);a&&!n&&(t=t.pipe(new s.Utf8EncodeWorker)),!a&&n&&(t=t.pipe(new s.Utf8DecodeWorker))}catch(e){(t=new l("error")).error(e)}return new i(t,r,"")},async:function(e,t){return this.internalStream(e).accumulate(t)},nodeStream:function(e,t){return this.internalStream(e||"nodebuffer").toNodejsStream(t)},_compressWorker:function(e,t){var r;return this._data instanceof o&&this._data.compression.magic===e.magic?this._data.getCompressedWorker():(r=this._decompressWorker(),this._dataBinary||(r=r.pipe(new s.Utf8EncodeWorker)),o.createWorkerFrom(r,e,t))},_decompressWorker:function(){return this._data instanceof o?this._data.getContentWorker():this._data instanceof l?this._data:new a(this._data)}};for(var u=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],h=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},c=0;c<u.length;c++)n.prototype[u[c]]=h;t.exports=n},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(e,t,n){(function(e){"use strict";var r,n,i,a,s=e.MutationObserver||e.WebKitMutationObserver,o=s?(n=0,s=new s(u),i=e.document.createTextNode(""),s.observe(i,{characterData:!0}),function(){i.data=n=++n%2}):e.setImmediate||void 0===e.MessageChannel?"document"in e&&"onreadystatechange"in e.document.createElement("script")?function(){var t=e.document.createElement("script");t.onreadystatechange=function(){u(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(u,0)}:((a=new e.MessageChannel).port1.onmessage=u,function(){a.port2.postMessage(0)}),l=[];function u(){var e,t;r=!0;for(var n=l.length;n;){for(t=l,l=[],e=-1;++e<n;)t[e]();n=l.length}r=!1}t.exports=function(e){1!==l.push(e)||r||o()}}).call(this,void 0!==r.g?r.g:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],37:[function(e,t,r){"use strict";var n=e("immediate");function i(){}var a={},s=["REJECTED"],o=["FULFILLED"],l=["PENDING"];function u(e){if("function"!=typeof e)throw new TypeError("resolver must be a function");this.state=l,this.queue=[],this.outcome=void 0,e!==i&&f(this,e)}function h(e,t,r){this.promise=e,"function"==typeof t&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),"function"==typeof r&&(this.onRejected=r,this.callRejected=this.otherCallRejected)}function c(e,t,r){n((function(){var n;try{n=t(r)}catch(n){return a.reject(e,n)}n===e?a.reject(e,new TypeError("Cannot resolve promise with itself")):a.resolve(e,n)}))}function d(e){var t=e&&e.then;if(e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof t)return function(){t.apply(e,arguments)}}function f(e,t){var r=!1;function n(t){r||(r=!0,a.reject(e,t))}function i(t){r||(r=!0,a.resolve(e,t))}var s=p((function(){t(i,n)}));"error"===s.status&&n(s.value)}function p(e,t){var r={};try{r.value=e(t),r.status="success"}catch(e){r.status="error",r.value=e}return r}(t.exports=u).prototype.finally=function(e){var t;return"function"!=typeof e?this:(t=this.constructor,this.then((function(r){return t.resolve(e()).then((function(){return r}))}),(function(r){return t.resolve(e()).then((function(){throw r}))})))},u.prototype.catch=function(e){return this.then(null,e)},u.prototype.then=function(e,t){var r;return"function"!=typeof e&&this.state===o||"function"!=typeof t&&this.state===s?this:(r=new this.constructor(i),this.state!==l?c(r,this.state===o?e:t,this.outcome):this.queue.push(new h(r,e,t)),r)},h.prototype.callFulfilled=function(e){a.resolve(this.promise,e)},h.prototype.otherCallFulfilled=function(e){c(this.promise,this.onFulfilled,e)},h.prototype.callRejected=function(e){a.reject(this.promise,e)},h.prototype.otherCallRejected=function(e){c(this.promise,this.onRejected,e)},a.resolve=function(e,t){var r=p(d,t);if("error"===r.status)return a.reject(e,r.value);if(r=r.value)f(e,r);else{e.state=o,e.outcome=t;for(var n=-1,i=e.queue.length;++n<i;)e.queue[n].callFulfilled(t)}return e},a.reject=function(e,t){e.state=s,e.outcome=t;for(var r=-1,n=e.queue.length;++r<n;)e.queue[r].callRejected(t);return e},u.resolve=function(e){return e instanceof this?e:a.resolve(new this(i),e)},u.reject=function(e){var t=new this(i);return a.reject(t,e)},u.all=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var r=e.length,n=!1;if(!r)return this.resolve([]);for(var s=new Array(r),o=0,l=-1,u=new this(i);++l<r;)!function(e,i){t.resolve(e).then((function(e){s[i]=e,++o!==r||n||(n=!0,a.resolve(u,s))}),(function(e){n||(n=!0,a.reject(u,e))}))}(e[l],l);return u},u.race=function(e){if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var t=e.length,r=!1;if(!t)return this.resolve([]);for(var n,s=-1,o=new this(i);++s<t;)n=e[s],this.resolve(n).then((function(e){r||(r=!0,a.resolve(o,e))}),(function(e){r||(r=!0,a.reject(o,e))}));return o}},{immediate:36}],38:[function(e,t,r){"use strict";var n={};(0,e("./lib/utils/common").assign)(n,e("./lib/deflate"),e("./lib/inflate"),e("./lib/zlib/constants")),t.exports=n},{"./lib/deflate":39,"./lib/inflate":40,"./lib/utils/common":41,"./lib/zlib/constants":44}],39:[function(e,t,r){"use strict";var n=e("./zlib/deflate"),i=e("./utils/common"),a=e("./utils/strings"),s=e("./zlib/messages"),o=e("./zlib/zstream"),l=Object.prototype.toString;function u(e){if(!(this instanceof u))return new u(e);this.options=i.assign({level:-1,method:8,chunkSize:16384,windowBits:15,memLevel:8,strategy:0,to:""},e||{});var t=((e=this.options).raw&&0<e.windowBits?e.windowBits=-e.windowBits:e.gzip&&0<e.windowBits&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new o,this.strm.avail_out=0,n.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy));if(0!==t)throw new Error(s[t]);if(e.header&&n.deflateSetHeader(this.strm,e.header),e.dictionary){if(e="string"==typeof e.dictionary?a.string2buf(e.dictionary):"[object ArrayBuffer]"===l.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,0!==(t=n.deflateSetDictionary(this.strm,e)))throw new Error(s[t]);this._dict_set=!0}}function h(e,t){if((t=new u(t)).push(e,!0),t.err)throw t.msg||s[t.err];return t.result}u.prototype.push=function(e,t){var r,s,o=this.strm,u=this.options.chunkSize;if(this.ended)return!1;s=t===~~t?t:!0===t?4:0,"string"==typeof e?o.input=a.string2buf(e):"[object ArrayBuffer]"===l.call(e)?o.input=new Uint8Array(e):o.input=e,o.next_in=0,o.avail_in=o.input.length;do{if(0===o.avail_out&&(o.output=new i.Buf8(u),o.next_out=0,o.avail_out=u),1!==(r=n.deflate(o,s))&&0!==r)return this.onEnd(r),!(this.ended=!0)}while(0!==o.avail_out&&(0!==o.avail_in||4!==s&&2!==s)||("string"===this.options.to?this.onData(a.buf2binstring(i.shrinkBuf(o.output,o.next_out))):this.onData(i.shrinkBuf(o.output,o.next_out))),(0<o.avail_in||0===o.avail_out)&&1!==r);return 4===s?(r=n.deflateEnd(this.strm),this.onEnd(r),this.ended=!0,0===r):2!==s||(this.onEnd(0),!(o.avail_out=0))},u.prototype.onData=function(e){this.chunks.push(e)},u.prototype.onEnd=function(e){0===e&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},r.Deflate=u,r.deflate=h,r.deflateRaw=function(e,t){return(t=t||{}).raw=!0,h(e,t)},r.gzip=function(e,t){return(t=t||{}).gzip=!0,h(e,t)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(e,t,r){"use strict";var n=e("./zlib/inflate"),i=e("./utils/common"),a=e("./utils/strings"),s=e("./zlib/constants"),o=e("./zlib/messages"),l=e("./zlib/zstream"),u=e("./zlib/gzheader"),h=Object.prototype.toString;function c(e){if(!(this instanceof c))return new c(e);this.options=i.assign({chunkSize:16384,windowBits:0,to:""},e||{});var t=this.options;if(t.raw&&0<=t.windowBits&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits)&&(t.windowBits=-15),!(0<=t.windowBits&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),15<t.windowBits&&t.windowBits<48&&0==(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new l,this.strm.avail_out=0,(e=n.inflateInit2(this.strm,t.windowBits))!==s.Z_OK)throw new Error(o[e]);this.header=new u,n.inflateGetHeader(this.strm,this.header)}function d(e,t){if((t=new c(t)).push(e,!0),t.err)throw t.msg||o[t.err];return t.result}c.prototype.push=function(e,t){var r,o,l,u,c,d=this.strm,f=this.options.chunkSize,p=this.options.dictionary,m=!1;if(this.ended)return!1;o=t===~~t?t:!0===t?s.Z_FINISH:s.Z_NO_FLUSH,"string"==typeof e?d.input=a.binstring2buf(e):"[object ArrayBuffer]"===h.call(e)?d.input=new Uint8Array(e):d.input=e,d.next_in=0,d.avail_in=d.input.length;do{if(0===d.avail_out&&(d.output=new i.Buf8(f),d.next_out=0,d.avail_out=f),(r=n.inflate(d,s.Z_NO_FLUSH))===s.Z_NEED_DICT&&p&&(c="string"==typeof p?a.string2buf(p):"[object ArrayBuffer]"===h.call(p)?new Uint8Array(p):p,r=n.inflateSetDictionary(this.strm,c)),r===s.Z_BUF_ERROR&&!0===m&&(r=s.Z_OK,m=!1),r!==s.Z_STREAM_END&&r!==s.Z_OK)return this.onEnd(r),!(this.ended=!0)}while(!d.next_out||0!==d.avail_out&&r!==s.Z_STREAM_END&&(0!==d.avail_in||o!==s.Z_FINISH&&o!==s.Z_SYNC_FLUSH)||("string"===this.options.to?(c=a.utf8border(d.output,d.next_out),l=d.next_out-c,u=a.buf2string(d.output,c),d.next_out=l,d.avail_out=f-l,l&&i.arraySet(d.output,d.output,c,l,0),this.onData(u)):this.onData(i.shrinkBuf(d.output,d.next_out))),0===d.avail_in&&0===d.avail_out&&(m=!0),(0<d.avail_in||0===d.avail_out)&&r!==s.Z_STREAM_END);return(o=r===s.Z_STREAM_END?s.Z_FINISH:o)===s.Z_FINISH?(r=n.inflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===s.Z_OK):o!==s.Z_SYNC_FLUSH||(this.onEnd(s.Z_OK),!(d.avail_out=0))},c.prototype.onData=function(e){this.chunks.push(e)},c.prototype.onEnd=function(e){e===s.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},r.Inflate=c,r.inflate=d,r.inflateRaw=function(e,t){return(t=t||{}).raw=!0,d(e,t)},r.ungzip=d},{"./utils/common":41,"./utils/strings":42,"./zlib/constants":44,"./zlib/gzheader":47,"./zlib/inflate":49,"./zlib/messages":51,"./zlib/zstream":53}],41:[function(e,t,r){"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array,i=(r.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var r=t.shift();if(r){if("object"!=typeof r)throw new TypeError(r+"must be non-object");for(var n in r)r.hasOwnProperty(n)&&(e[n]=r[n])}}return e},r.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)},{arraySet:function(e,t,r,n,i){if(t.subarray&&e.subarray)e.set(t.subarray(r,r+n),i);else for(var a=0;a<n;a++)e[i+a]=t[r+a]},flattenChunks:function(e){for(var t,r,n,i,a=t=0,s=e.length;a<s;a++)t+=e[a].length;for(i=new Uint8Array(t),a=r=0,s=e.length;a<s;a++)n=e[a],i.set(n,r),r+=n.length;return i}}),a={arraySet:function(e,t,r,n,i){for(var a=0;a<n;a++)e[i+a]=t[r+a]},flattenChunks:function(e){return[].concat.apply([],e)}};r.setTyped=function(e){e?(r.Buf8=Uint8Array,r.Buf16=Uint16Array,r.Buf32=Int32Array,r.assign(r,i)):(r.Buf8=Array,r.Buf16=Array,r.Buf32=Array,r.assign(r,a))},r.setTyped(n)},{}],42:[function(e,t,r){"use strict";var n=e("./common"),i=!0,a=!0;try{String.fromCharCode.apply(null,[0])}catch(e){i=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){a=!1}for(var s=new n.Buf8(256),o=0;o<256;o++)s[o]=252<=o?6:248<=o?5:240<=o?4:224<=o?3:192<=o?2:1;function l(e,t){if(t<65537&&(e.subarray&&a||!e.subarray&&i))return String.fromCharCode.apply(null,n.shrinkBuf(e,t));for(var r="",s=0;s<t;s++)r+=String.fromCharCode(e[s]);return r}s[254]=s[254]=1,r.string2buf=function(e){for(var t,r,i,a,s=e.length,o=0,l=0;l<s;l++)55296==(64512&(r=e.charCodeAt(l)))&&l+1<s&&56320==(64512&(i=e.charCodeAt(l+1)))&&(r=65536+(r-55296<<10)+(i-56320),l++),o+=r<128?1:r<2048?2:r<65536?3:4;for(t=new n.Buf8(o),l=a=0;a<o;l++)55296==(64512&(r=e.charCodeAt(l)))&&l+1<s&&56320==(64512&(i=e.charCodeAt(l+1)))&&(r=65536+(r-55296<<10)+(i-56320),l++),r<128?t[a++]=r:(r<2048?t[a++]=192|r>>>6:(r<65536?t[a++]=224|r>>>12:(t[a++]=240|r>>>18,t[a++]=128|r>>>12&63),t[a++]=128|r>>>6&63),t[a++]=128|63&r);return t},r.buf2binstring=function(e){return l(e,e.length)},r.binstring2buf=function(e){for(var t=new n.Buf8(e.length),r=0,i=t.length;r<i;r++)t[r]=e.charCodeAt(r);return t},r.buf2string=function(e,t){for(var r,n,i,a=t||e.length,o=new Array(2*a),u=r=0;u<a;)if((n=e[u++])<128)o[r++]=n;else if(4<(i=s[n]))o[r++]=65533,u+=i-1;else{for(n&=2===i?31:3===i?15:7;1<i&&u<a;)n=n<<6|63&e[u++],i--;1<i?o[r++]=65533:n<65536?o[r++]=n:(n-=65536,o[r++]=55296|n>>10&1023,o[r++]=56320|1023&n)}return l(o,r)},r.utf8border=function(e,t){for(var r=(t=(t=t||e.length)>e.length?e.length:t)-1;0<=r&&128==(192&e[r]);)r--;return!(r<0)&&0!==r&&r+s[e[r]]>t?r:t}},{"./common":41}],43:[function(e,t,r){"use strict";t.exports=function(e,t,r,n){for(var i=65535&e|0,a=e>>>16&65535|0,s=0;0!==r;){for(r-=s=2e3<r?2e3:r;a=a+(i=i+t[n++]|0)|0,--s;);i%=65521,a%=65521}return i|a<<16|0}},{}],44:[function(e,t,r){"use strict";t.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],45:[function(e,t,r){"use strict";var n=function(){for(var e=[],t=0;t<256;t++){for(var r=t,n=0;n<8;n++)r=1&r?3988292384^r>>>1:r>>>1;e[t]=r}return e}();t.exports=function(e,t,r,i){var a=n,s=i+r;e^=-1;for(var o=i;o<s;o++)e=e>>>8^a[255&(e^t[o])];return-1^e}},{}],46:[function(e,t,r){"use strict";var n,i=e("../utils/common"),a=e("./trees"),s=e("./adler32"),o=e("./crc32"),l=e("./messages"),u=0,h=0,c=-2,d=2,f=8,p=286,m=30,_=19,g=2*p+1,y=15,b=3,v=258,w=v+b+1,k=42,x=113;function S(e,t){return e.msg=l[t],t}function z(e){return(e<<1)-(4<e?9:0)}function A(e){for(var t=e.length;0<=--t;)e[t]=0}function E(e){var t=e.state,r=t.pending;0!==(r=r>e.avail_out?e.avail_out:r)&&(i.arraySet(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending)&&(t.pending_out=0)}function C(e,t){a._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,E(e.strm)}function I(e,t){e.pending_buf[e.pending++]=t}function T(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function O(e,t){var r,n,i=e.max_chain_length,a=e.strstart,s=e.prev_length,o=e.nice_match,l=e.strstart>e.w_size-w?e.strstart-(e.w_size-w):0,u=e.window,h=e.w_mask,c=e.prev,d=e.strstart+v,f=u[a+s-1],p=u[a+s];e.prev_length>=e.good_match&&(i>>=2),o>e.lookahead&&(o=e.lookahead);do{if(u[(r=t)+s]===p&&u[r+s-1]===f&&u[r]===u[a]&&u[++r]===u[a+1]){for(a+=2,r++;u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&u[++a]===u[++r]&&a<d;);if(n=v-(d-a),a=d-v,s<n){if(e.match_start=t,o<=(s=n))break;f=u[a+s-1],p=u[a+s]}}}while((t=c[t&h])>l&&0!=--i);return s<=e.lookahead?s:e.lookahead}function R(e){var t,r,n,a,l,u,h,c,d,f=e.w_size;do{if(c=e.window_size-e.lookahead-e.strstart,e.strstart>=f+(f-w)){for(i.arraySet(e.window,e.window,f,f,0),e.match_start-=f,e.strstart-=f,e.block_start-=f,t=r=e.hash_size;n=e.head[--t],e.head[t]=f<=n?n-f:0,--r;);for(t=r=f;n=e.prev[--t],e.prev[t]=f<=n?n-f:0,--r;);c+=f}if(0===e.strm.avail_in)break;if(l=e.strm,u=e.window,h=e.strstart+e.lookahead,d=void 0,r=0===(d=c<(d=l.avail_in)?c:d)?0:(l.avail_in-=d,i.arraySet(u,l.input,l.next_in,d,h),1===l.state.wrap?l.adler=s(l.adler,u,d,h):2===l.state.wrap&&(l.adler=o(l.adler,u,d,h)),l.next_in+=d,l.total_in+=d,d),e.lookahead+=r,e.lookahead+e.insert>=b)for(a=e.strstart-e.insert,e.ins_h=e.window[a],e.ins_h=(e.ins_h<<e.hash_shift^e.window[a+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[a+b-1])&e.hash_mask,e.prev[a&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=a,a++,e.insert--,!(e.lookahead+e.insert<b)););}while(e.lookahead<w&&0!==e.strm.avail_in)}function B(e,t){for(var r,n;;){if(e.lookahead<w){if(R(e),e.lookahead<w&&t===u)return 1;if(0===e.lookahead)break}if(r=0,e.lookahead>=b&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+b-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==r&&e.strstart-r<=e.w_size-w&&(e.match_length=O(e,r)),e.match_length>=b)if(n=a._tr_tally(e,e.strstart-e.match_start,e.match_length-b),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=b){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+b-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart,0!=--e.match_length;);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(C(e,!1),0===e.strm.avail_out))return 1}return e.insert=e.strstart<b-1?e.strstart:b-1,4===t?(C(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(C(e,!1),0===e.strm.avail_out)?1:2}function L(e,t){for(var r,n,i;;){if(e.lookahead<w){if(R(e),e.lookahead<w&&t===u)return 1;if(0===e.lookahead)break}if(r=0,e.lookahead>=b&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+b-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=b-1,0!==r&&e.prev_length<e.max_lazy_match&&e.strstart-r<=e.w_size-w&&(e.match_length=O(e,r),e.match_length<=5)&&(1===e.strategy||e.match_length===b&&4096<e.strstart-e.match_start)&&(e.match_length=b-1),e.prev_length>=b&&e.match_length<=e.prev_length){for(i=e.strstart+e.lookahead-b,n=a._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-b),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=i&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+b-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!=--e.prev_length;);if(e.match_available=0,e.match_length=b-1,e.strstart++,n&&(C(e,!1),0===e.strm.avail_out))return 1}else if(e.match_available){if((n=a._tr_tally(e,0,e.window[e.strstart-1]))&&C(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return 1}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=a._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<b-1?e.strstart:b-1,4===t?(C(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(C(e,!1),0===e.strm.avail_out)?1:2}function D(e,t,r,n,i){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=n,this.func=i}function F(){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=f,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(2*g),this.dyn_dtree=new i.Buf16(2*(2*m+1)),this.bl_tree=new i.Buf16(2*(2*_+1)),A(this.dyn_ltree),A(this.dyn_dtree),A(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(y+1),this.heap=new i.Buf16(2*p+1),A(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(2*p+1),A(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function N(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=d,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?k:x,e.adler=2===t.wrap?0:1,t.last_flush=u,a._tr_init(t),h):S(e,c)}function U(e){var t=N(e);return t===h&&((e=e.state).window_size=2*e.w_size,A(e.head),e.max_lazy_match=n[e.level].max_lazy,e.good_match=n[e.level].good_length,e.nice_match=n[e.level].nice_length,e.max_chain_length=n[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=b-1,e.match_available=0,e.ins_h=0),t}function P(e,t,r,n,a,s){if(!e)return c;var o=1;if(-1===t&&(t=6),n<0?(o=0,n=-n):15<n&&(o=2,n-=16),a<1||9<a||r!==f||n<8||15<n||t<0||9<t||s<0||4<s)return S(e,c);8===n&&(n=9);var l=new F;return(e.state=l).strm=e,l.wrap=o,l.gzhead=null,l.w_bits=n,l.w_size=1<<l.w_bits,l.w_mask=l.w_size-1,l.hash_bits=a+7,l.hash_size=1<<l.hash_bits,l.hash_mask=l.hash_size-1,l.hash_shift=~~((l.hash_bits+b-1)/b),l.window=new i.Buf8(2*l.w_size),l.head=new i.Buf16(l.hash_size),l.prev=new i.Buf16(l.w_size),l.lit_bufsize=1<<a+6,l.pending_buf_size=4*l.lit_bufsize,l.pending_buf=new i.Buf8(l.pending_buf_size),l.d_buf=+l.lit_bufsize,l.l_buf=3*l.lit_bufsize,l.level=t,l.strategy=s,l.method=r,U(e)}n=[new D(0,0,0,0,(function(e,t){var r=65535;for(r>e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(R(e),0===e.lookahead&&t===u)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var n=e.block_start+r;if((0===e.strstart||e.strstart>=n)&&(e.lookahead=e.strstart-n,e.strstart=n,C(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-w&&(C(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(C(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(C(e,!1),e.strm.avail_out),1)})),new D(4,4,8,4,B),new D(4,5,16,8,B),new D(4,6,32,32,B),new D(4,4,16,16,L),new D(8,16,32,32,L),new D(8,16,128,128,L),new D(8,32,128,256,L),new D(32,128,258,1024,L),new D(32,258,258,4096,L)],r.deflateInit=function(e,t){return P(e,t,f,15,8,0)},r.deflateInit2=P,r.deflateReset=U,r.deflateResetKeep=N,r.deflateSetHeader=function(e,t){return e&&e.state&&2===e.state.wrap?(e.state.gzhead=t,h):c},r.deflate=function(e,t){var r,i,s,l;if(!e||!e.state||5<t||t<0)return e?S(e,c):c;if(i=e.state,!e.output||!e.input&&0!==e.avail_in||666===i.status&&4!==t)return S(e,0===e.avail_out?-5:c);if(i.strm=e,r=i.last_flush,i.last_flush=t,i.status===k&&(2===i.wrap?(e.adler=0,I(i,31),I(i,139),I(i,8),i.gzhead?(I(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),I(i,255&i.gzhead.time),I(i,i.gzhead.time>>8&255),I(i,i.gzhead.time>>16&255),I(i,i.gzhead.time>>24&255),I(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),I(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(I(i,255&i.gzhead.extra.length),I(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=o(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(I(i,0),I(i,0),I(i,0),I(i,0),I(i,0),I(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),I(i,3),i.status=x)):(d=f+(i.w_bits-8<<4)<<8,d|=(2<=i.strategy||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(d|=32),d+=31-d%31,i.status=x,T(i,d),0!==i.strstart&&(T(i,e.adler>>>16),T(i,65535&e.adler)),e.adler=1)),69===i.status)if(i.gzhead.extra){for(s=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>s&&(e.adler=o(e.adler,i.pending_buf,i.pending-s,s)),E(e),s=i.pending,i.pending!==i.pending_buf_size));)I(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>s&&(e.adler=o(e.adler,i.pending_buf,i.pending-s,s)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(73===i.status)if(i.gzhead.name){s=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>s&&(e.adler=o(e.adler,i.pending_buf,i.pending-s,s)),E(e),s=i.pending,i.pending===i.pending_buf_size)){l=1;break}}while(l=i.gzindex<i.gzhead.name.length?255&i.gzhead.name.charCodeAt(i.gzindex++):0,I(i,l),0!==l);i.gzhead.hcrc&&i.pending>s&&(e.adler=o(e.adler,i.pending_buf,i.pending-s,s)),0===l&&(i.gzindex=0,i.status=91)}else i.status=91;if(91===i.status)if(i.gzhead.comment){s=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>s&&(e.adler=o(e.adler,i.pending_buf,i.pending-s,s)),E(e),s=i.pending,i.pending===i.pending_buf_size)){l=1;break}}while(l=i.gzindex<i.gzhead.comment.length?255&i.gzhead.comment.charCodeAt(i.gzindex++):0,I(i,l),0!==l);i.gzhead.hcrc&&i.pending>s&&(e.adler=o(e.adler,i.pending_buf,i.pending-s,s)),0===l&&(i.status=103)}else i.status=103;if(103===i.status&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&E(e),i.pending+2<=i.pending_buf_size&&(I(i,255&e.adler),I(i,e.adler>>8&255),e.adler=0,i.status=x)):i.status=x),0!==i.pending){if(E(e),0===e.avail_out)return i.last_flush=-1,h}else if(0===e.avail_in&&z(t)<=z(r)&&4!==t)return S(e,-5);if(666===i.status&&0!==e.avail_in)return S(e,-5);if(0!==e.avail_in||0!==i.lookahead||t!==u&&666!==i.status){var d=2===i.strategy?function(e,t){for(var r;;){if(0===e.lookahead&&(R(e),0===e.lookahead)){if(t===u)return 1;break}if(e.match_length=0,r=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(C(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(C(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(C(e,!1),0===e.strm.avail_out)?1:2}(i,t):3===i.strategy?function(e,t){for(var r,n,i,s,o=e.window;;){if(e.lookahead<=v){if(R(e),e.lookahead<=v&&t===u)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=b&&0<e.strstart&&(n=o[i=e.strstart-1])===o[++i]&&n===o[++i]&&n===o[++i]){for(s=e.strstart+v;n===o[++i]&&n===o[++i]&&n===o[++i]&&n===o[++i]&&n===o[++i]&&n===o[++i]&&n===o[++i]&&n===o[++i]&&i<s;);e.match_length=v-(s-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=b?(r=a._tr_tally(e,1,e.match_length-b),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(C(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(C(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(C(e,!1),0===e.strm.avail_out)?1:2}(i,t):n[i.level].func(i,t);if(3!==d&&4!==d||(i.status=666),1===d||3===d)return 0===e.avail_out&&(i.last_flush=-1),h;if(2===d&&(1===t?a._tr_align(i):5!==t&&(a._tr_stored_block(i,0,0,!1),3===t)&&(A(i.head),0===i.lookahead)&&(i.strstart=0,i.block_start=0,i.insert=0),E(e),0===e.avail_out))return i.last_flush=-1,h}return 4===t&&(i.wrap<=0||(2===i.wrap?(I(i,255&e.adler),I(i,e.adler>>8&255),I(i,e.adler>>16&255),I(i,e.adler>>24&255),I(i,255&e.total_in),I(i,e.total_in>>8&255),I(i,e.total_in>>16&255),I(i,e.total_in>>24&255)):(T(i,e.adler>>>16),T(i,65535&e.adler)),E(e),0<i.wrap&&(i.wrap=-i.wrap),0===i.pending))?1:h},r.deflateEnd=function(e){var t;return e&&e.state?(t=e.state.status)!==k&&69!==t&&73!==t&&91!==t&&103!==t&&t!==x&&666!==t?S(e,c):(e.state=null,t===x?S(e,-3):h):c},r.deflateSetDictionary=function(e,t){var r,n,a,o,l,u,d,f=t.length;if(!e||!e.state)return c;if(2===(o=(r=e.state).wrap)||1===o&&r.status!==k||r.lookahead)return c;for(1===o&&(e.adler=s(e.adler,t,f,0)),r.wrap=0,f>=r.w_size&&(0===o&&(A(r.head),r.strstart=0,r.block_start=0,r.insert=0),d=new i.Buf8(r.w_size),i.arraySet(d,t,f-r.w_size,r.w_size,0),t=d,f=r.w_size),d=e.avail_in,l=e.next_in,u=e.input,e.avail_in=f,e.next_in=0,e.input=t,R(r);r.lookahead>=b;){for(n=r.strstart,a=r.lookahead-(b-1);r.ins_h=(r.ins_h<<r.hash_shift^r.window[n+b-1])&r.hash_mask,r.prev[n&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=n,n++,--a;);r.strstart=n,r.lookahead=b-1,R(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=b-1,r.match_available=0,e.next_in=l,e.input=u,e.avail_in=d,r.wrap=o,h},r.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./messages":51,"./trees":52}],47:[function(e,t,r){"use strict";t.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},{}],48:[function(e,t,r){"use strict";t.exports=function(e,t){var r,n,i,a,s,o,l=e.state,u=e.next_in,h=e.input,c=u+(e.avail_in-5),d=e.next_out,f=e.output,p=d-(t-e.avail_out),m=d+(e.avail_out-257),_=l.dmax,g=l.wsize,y=l.whave,b=l.wnext,v=l.window,w=l.hold,k=l.bits,x=l.lencode,S=l.distcode,z=(1<<l.lenbits)-1,A=(1<<l.distbits)-1;e:do{for(k<15&&(w+=h[u++]<<k,k+=8,w+=h[u++]<<k,k+=8),r=x[w&z];;){if(w>>>=n=r>>>24,k-=n,0==(n=r>>>16&255))f[d++]=65535&r;else{if(!(16&n)){if(0==(64&n)){r=x[(65535&r)+(w&(1<<n)-1)];continue}if(32&n){l.mode=12;break e}e.msg="invalid literal/length code",l.mode=30;break e}for(i=65535&r,(n&=15)&&(k<n&&(w+=h[u++]<<k,k+=8),i+=w&(1<<n)-1,w>>>=n,k-=n),k<15&&(w+=h[u++]<<k,k+=8,w+=h[u++]<<k,k+=8),r=S[w&A];;){if(w>>>=n=r>>>24,k-=n,!(16&(n=r>>>16&255))){if(0==(64&n)){r=S[(65535&r)+(w&(1<<n)-1)];continue}e.msg="invalid distance code",l.mode=30;break e}if(a=65535&r,k<(n&=15)&&(w+=h[u++]<<k,(k+=8)<n)&&(w+=h[u++]<<k,k+=8),_<(a+=w&(1<<n)-1)){e.msg="invalid distance too far back",l.mode=30;break e}if(w>>>=n,k-=n,(n=d-p)<a){if(y<(n=a-n)&&l.sane){e.msg="invalid distance too far back",l.mode=30;break e}if(o=v,(s=0)===b){if(s+=g-n,n<i){for(i-=n;f[d++]=v[s++],--n;);s=d-a,o=f}}else if(b<n){if(s+=g+b-n,(n-=b)<i){for(i-=n;f[d++]=v[s++],--n;);if(s=0,b<i){for(i-=n=b;f[d++]=v[s++],--n;);s=d-a,o=f}}}else if(s+=b-n,n<i){for(i-=n;f[d++]=v[s++],--n;);s=d-a,o=f}for(;2<i;)f[d++]=o[s++],f[d++]=o[s++],f[d++]=o[s++],i-=3;i&&(f[d++]=o[s++],1<i)&&(f[d++]=o[s++])}else{for(s=d-a;f[d++]=f[s++],f[d++]=f[s++],f[d++]=f[s++],2<(i-=3););i&&(f[d++]=f[s++],1<i)&&(f[d++]=f[s++])}break}}break}}while(u<c&&d<m);u-=i=k>>3,w&=(1<<(k-=i<<3))-1,e.next_in=u,e.next_out=d,e.avail_in=u<c?c-u+5:5-(u-c),e.avail_out=d<m?m-d+257:257-(d-m),l.hold=w,l.bits=k}},{}],49:[function(e,t,r){"use strict";var n=e("../utils/common"),i=e("./adler32"),a=e("./crc32"),s=e("./inffast"),o=e("./inftrees"),l=0,u=-2,h=1,c=852,d=592;function f(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function p(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new n.Buf16(320),this.work=new n.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function m(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=h,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new n.Buf32(c),t.distcode=t.distdyn=new n.Buf32(d),t.sane=1,t.back=-1,l):u}function _(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,m(e)):u}function g(e,t){var r,n;return!e||!e.state||(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15<t))?u:(null!==n.window&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,_(e))}function y(e,t){var r;return e?(r=new p,(e.state=r).window=null,(r=g(e,t))!==l&&(e.state=null),r):u}var b,v,w=!0;function k(e,t,r,i){var a;return null===(e=e.state).window&&(e.wsize=1<<e.wbits,e.wnext=0,e.whave=0,e.window=new n.Buf8(e.wsize)),i>=e.wsize?(n.arraySet(e.window,t,r-e.wsize,e.wsize,0),e.wnext=0,e.whave=e.wsize):(i<(a=e.wsize-e.wnext)&&(a=i),n.arraySet(e.window,t,r-i,a,e.wnext),(i-=a)?(n.arraySet(e.window,t,r-i,i,0),e.wnext=i,e.whave=e.wsize):(e.wnext+=a,e.wnext===e.wsize&&(e.wnext=0),e.whave<e.wsize&&(e.whave+=a))),0}r.inflateReset=_,r.inflateReset2=g,r.inflateResetKeep=m,r.inflateInit=function(e){return y(e,15)},r.inflateInit2=y,r.inflate=function(e,t){var r,c,d,p,m,_,g,y,x,S,z,A,E,C,I,T,O,R,B,L,D,F,N,U,P=0,j=new n.Buf8(4),M=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return u;12===(r=e.state).mode&&(r.mode=13),m=e.next_out,d=e.output,g=e.avail_out,p=e.next_in,c=e.input,_=e.avail_in,y=r.hold,x=r.bits,S=_,z=g,F=l;e:for(;;)switch(r.mode){case h:if(0===r.wrap)r.mode=13;else{for(;x<16;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}if(2&r.wrap&&35615===y)j[r.check=0]=255&y,j[1]=y>>>8&255,r.check=a(r.check,j,2,0),x=y=0,r.mode=2;else if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&y)<<8)+(y>>8))%31)e.msg="incorrect header check",r.mode=30;else if(8!=(15&y))e.msg="unknown compression method",r.mode=30;else{if(x-=4,D=8+(15&(y>>>=4)),0===r.wbits)r.wbits=D;else if(D>r.wbits){e.msg="invalid window size",r.mode=30;break}r.dmax=1<<D,e.adler=r.check=1,r.mode=512&y?10:12,x=y=0}}break;case 2:for(;x<16;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}if(r.flags=y,8!=(255&r.flags)){e.msg="unknown compression method",r.mode=30;break}if(57344&r.flags){e.msg="unknown header flags set",r.mode=30;break}r.head&&(r.head.text=y>>8&1),512&r.flags&&(j[0]=255&y,j[1]=y>>>8&255,r.check=a(r.check,j,2,0)),x=y=0,r.mode=3;case 3:for(;x<32;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}r.head&&(r.head.time=y),512&r.flags&&(j[0]=255&y,j[1]=y>>>8&255,j[2]=y>>>16&255,j[3]=y>>>24&255,r.check=a(r.check,j,4,0)),x=y=0,r.mode=4;case 4:for(;x<16;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}r.head&&(r.head.xflags=255&y,r.head.os=y>>8),512&r.flags&&(j[0]=255&y,j[1]=y>>>8&255,r.check=a(r.check,j,2,0)),x=y=0,r.mode=5;case 5:if(1024&r.flags){for(;x<16;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}r.length=y,r.head&&(r.head.extra_len=y),512&r.flags&&(j[0]=255&y,j[1]=y>>>8&255,r.check=a(r.check,j,2,0)),x=y=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&((A=_<(A=r.length)?_:A)&&(r.head&&(D=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),n.arraySet(r.head.extra,c,p,A,D)),512&r.flags&&(r.check=a(r.check,c,A,p)),_-=A,p+=A,r.length-=A),r.length))break e;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===_)break e;for(A=0;D=c[p+A++],r.head&&D&&r.length<65536&&(r.head.name+=String.fromCharCode(D)),D&&A<_;);if(512&r.flags&&(r.check=a(r.check,c,A,p)),_-=A,p+=A,D)break e}else r.head&&(r.head.name=null);r.length=0,r.mode=8;case 8:if(4096&r.flags){if(0===_)break e;for(A=0;D=c[p+A++],r.head&&D&&r.length<65536&&(r.head.comment+=String.fromCharCode(D)),D&&A<_;);if(512&r.flags&&(r.check=a(r.check,c,A,p)),_-=A,p+=A,D)break e}else r.head&&(r.head.comment=null);r.mode=9;case 9:if(512&r.flags){for(;x<16;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}if(y!==(65535&r.check)){e.msg="header crc mismatch",r.mode=30;break}x=y=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=12;break;case 10:for(;x<32;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}e.adler=r.check=f(y),x=y=0,r.mode=11;case 11:if(0===r.havedict)return e.next_out=m,e.avail_out=g,e.next_in=p,e.avail_in=_,r.hold=y,r.bits=x,2;e.adler=r.check=1,r.mode=12;case 12:if(5===t||6===t)break e;case 13:if(r.last)y>>>=7&x,x-=7&x,r.mode=27;else{for(;x<3;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}switch(r.last=1&y,--x,3&(y>>>=1)){case 0:r.mode=14;break;case 1:Z=W=void 0;var Z,W=r;if(w){for(b=new n.Buf32(512),v=new n.Buf32(32),Z=0;Z<144;)W.lens[Z++]=8;for(;Z<256;)W.lens[Z++]=9;for(;Z<280;)W.lens[Z++]=7;for(;Z<288;)W.lens[Z++]=8;for(o(1,W.lens,0,288,b,0,W.work,{bits:9}),Z=0;Z<32;)W.lens[Z++]=5;o(2,W.lens,0,32,v,0,W.work,{bits:5}),w=!1}if(W.lencode=b,W.lenbits=9,W.distcode=v,W.distbits=5,r.mode=20,6!==t)break;y>>>=2,x-=2;break e;case 2:r.mode=17;break;case 3:e.msg="invalid block type",r.mode=30}y>>>=2,x-=2}break;case 14:for(y>>>=7&x,x-=7&x;x<32;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}if((65535&y)!=(y>>>16^65535)){e.msg="invalid stored block lengths",r.mode=30;break}if(r.length=65535&y,x=y=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(A=r.length){if(0===(A=g<(A=_<A?_:A)?g:A))break e;n.arraySet(d,c,p,A,m),_-=A,p+=A,g-=A,m+=A,r.length-=A}else r.mode=12;break;case 17:for(;x<14;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}if(r.nlen=257+(31&y),y>>>=5,x-=5,r.ndist=1+(31&y),y>>>=5,x-=5,r.ncode=4+(15&y),y>>>=4,x-=4,286<r.nlen||30<r.ndist){e.msg="too many length or distance symbols",r.mode=30;break}r.have=0,r.mode=18;case 18:for(;r.have<r.ncode;){for(;x<3;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}r.lens[M[r.have++]]=7&y,y>>>=3,x-=3}for(;r.have<19;)r.lens[M[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,N={bits:r.lenbits},F=o(0,r.lens,0,19,r.lencode,0,r.work,N),r.lenbits=N.bits,F){e.msg="invalid code lengths set",r.mode=30;break}r.have=0,r.mode=19;case 19:for(;r.have<r.nlen+r.ndist;){for(;T=(P=r.lencode[y&(1<<r.lenbits)-1])>>>16&255,O=65535&P,!((I=P>>>24)<=x);){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}if(O<16)y>>>=I,x-=I,r.lens[r.have++]=O;else{if(16===O){for(U=I+2;x<U;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}if(y>>>=I,x-=I,0===r.have){e.msg="invalid bit length repeat",r.mode=30;break}D=r.lens[r.have-1],A=3+(3&y),y>>>=2,x-=2}else if(17===O){for(U=I+3;x<U;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}D=0,A=3+(7&(y>>>=I)),y>>>=3,x=x-I-3}else{for(U=I+7;x<U;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}D=0,A=11+(127&(y>>>=I)),y>>>=7,x=x-I-7}if(r.have+A>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=30;break}for(;A--;)r.lens[r.have++]=D}}if(30===r.mode)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=30;break}if(r.lenbits=9,N={bits:r.lenbits},F=o(1,r.lens,0,r.nlen,r.lencode,0,r.work,N),r.lenbits=N.bits,F){e.msg="invalid literal/lengths set",r.mode=30;break}if(r.distbits=6,r.distcode=r.distdyn,N={bits:r.distbits},F=o(2,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,N),r.distbits=N.bits,F){e.msg="invalid distances set",r.mode=30;break}if(r.mode=20,6===t)break e;case 20:r.mode=21;case 21:if(6<=_&&258<=g){e.next_out=m,e.avail_out=g,e.next_in=p,e.avail_in=_,r.hold=y,r.bits=x,s(e,z),m=e.next_out,d=e.output,g=e.avail_out,p=e.next_in,c=e.input,_=e.avail_in,y=r.hold,x=r.bits,12===r.mode&&(r.back=-1);break}for(r.back=0;T=(P=r.lencode[y&(1<<r.lenbits)-1])>>>16&255,O=65535&P,!((I=P>>>24)<=x);){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}if(T&&0==(240&T)){for(R=I,B=T,L=O;T=(P=r.lencode[L+((y&(1<<R+B)-1)>>R)])>>>16&255,O=65535&P,!(R+(I=P>>>24)<=x);){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}y>>>=R,x-=R,r.back+=R}if(y>>>=I,x-=I,r.back+=I,r.length=O,0===T){r.mode=26;break}if(32&T){r.back=-1,r.mode=12;break}if(64&T){e.msg="invalid literal/length code",r.mode=30;break}r.extra=15&T,r.mode=22;case 22:if(r.extra){for(U=r.extra;x<U;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}r.length+=y&(1<<r.extra)-1,y>>>=r.extra,x-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;T=(P=r.distcode[y&(1<<r.distbits)-1])>>>16&255,O=65535&P,!((I=P>>>24)<=x);){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}if(0==(240&T)){for(R=I,B=T,L=O;T=(P=r.distcode[L+((y&(1<<R+B)-1)>>R)])>>>16&255,O=65535&P,!(R+(I=P>>>24)<=x);){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}y>>>=R,x-=R,r.back+=R}if(y>>>=I,x-=I,r.back+=I,64&T){e.msg="invalid distance code",r.mode=30;break}r.offset=O,r.extra=15&T,r.mode=24;case 24:if(r.extra){for(U=r.extra;x<U;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}r.offset+=y&(1<<r.extra)-1,y>>>=r.extra,x-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=30;break}r.mode=25;case 25:if(0===g)break e;if(r.offset>(A=z-g)){if((A=r.offset-A)>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=30;break}E=A>r.wnext?(A-=r.wnext,r.wsize-A):r.wnext-A,A>r.length&&(A=r.length),C=r.window}else C=d,E=m-r.offset,A=r.length;for(g-=A=g<A?g:A,r.length-=A;d[m++]=C[E++],--A;);0===r.length&&(r.mode=21);break;case 26:if(0===g)break e;d[m++]=r.length,g--,r.mode=21;break;case 27:if(r.wrap){for(;x<32;){if(0===_)break e;_--,y|=c[p++]<<x,x+=8}if(z-=g,e.total_out+=z,r.total+=z,z&&(e.adler=r.check=(r.flags?a:i)(r.check,d,z,m-z)),z=g,(r.flags?y:f(y))!==r.check){e.msg="incorrect data check",r.mode=30;break}x=y=0}r.mode=28;case 28:if(r.wrap&&r.flags){for(;x<32;){if(0===_)break e;_--,y+=c[p++]<<x,x+=8}if(y!==(4294967295&r.total)){e.msg="incorrect length check",r.mode=30;break}x=y=0}r.mode=29;case 29:F=1;break e;case 30:F=-3;break e;case 31:return-4;default:return u}return e.next_out=m,e.avail_out=g,e.next_in=p,e.avail_in=_,r.hold=y,r.bits=x,(r.wsize||z!==e.avail_out&&r.mode<30&&(r.mode<27||4!==t))&&k(e,e.output,e.next_out,z-e.avail_out)?(r.mode=31,-4):(S-=e.avail_in,z-=e.avail_out,e.total_in+=S,e.total_out+=z,r.total+=z,r.wrap&&z&&(e.adler=r.check=(r.flags?a:i)(r.check,d,z,e.next_out-z)),e.data_type=r.bits+(r.last?64:0)+(12===r.mode?128:0)+(20===r.mode||15===r.mode?256:0),F=(0==S&&0===z||4===t)&&F===l?-5:F)},r.inflateEnd=function(e){var t;return e&&e.state?((t=e.state).window&&(t.window=null),e.state=null,l):u},r.inflateGetHeader=function(e,t){return e&&e.state&&0!=(2&(e=e.state).wrap)?((e.head=t).done=!1,l):u},r.inflateSetDictionary=function(e,t){var r,n=t.length;return!e||!e.state||0!==(r=e.state).wrap&&11!==r.mode?u:11===r.mode&&i(1,t,n,0)!==r.check?-3:k(e,t,n,n)?(r.mode=31,-4):(r.havedict=1,l)},r.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./inffast":48,"./inftrees":50}],50:[function(e,t,r){"use strict";var n=e("../utils/common"),i=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],a=[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],s=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],o=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];t.exports=function(e,t,r,l,u,h,c,d){var f,p,m,_,g,y,b,v,w,k=d.bits,x=0,S=0,z=0,A=0,E=0,C=0,I=0,T=0,O=0,R=0,B=null,L=0,D=new n.Buf16(16),F=new n.Buf16(16),N=null,U=0;for(x=0;x<=15;x++)D[x]=0;for(S=0;S<l;S++)D[t[r+S]]++;for(E=k,A=15;1<=A&&0===D[A];A--);if(A<E&&(E=A),0===A)u[h++]=20971520,u[h++]=20971520,d.bits=1;else{for(z=1;z<A&&0===D[z];z++);for(E<z&&(E=z),x=T=1;x<=15;x++)if((T=(T<<1)-D[x])<0)return-1;if(0<T&&(0===e||1!==A))return-1;for(F[1]=0,x=1;x<15;x++)F[x+1]=F[x]+D[x];for(S=0;S<l;S++)0!==t[r+S]&&(c[F[t[r+S]]++]=S);if(y=0===e?(B=N=c,19):1===e?(B=i,L-=257,N=a,U-=257,256):(B=s,N=o,-1),x=z,g=h,I=S=R=0,m=-1,_=(O=1<<(C=E))-1,1===e&&852<O||2===e&&592<O)return 1;for(;;){for(w=c[S]<y?(v=0,c[S]):c[S]>y?(v=N[U+c[S]],B[L+c[S]]):(v=96,0),f=1<<(b=x-I),z=p=1<<C;u[g+(R>>I)+(p-=f)]=b<<24|v<<16|w|0,0!==p;);for(f=1<<x-1;R&f;)f>>=1;if(R=0!==f?(R&f-1)+f:0,S++,0==--D[x]){if(x===A)break;x=t[r+c[S]]}if(E<x&&(R&_)!==m){for(g+=z,T=1<<(C=x-(I=0===I?E:I));C+I<A&&!((T-=D[C+I])<=0);)C++,T<<=1;if(O+=1<<C,1===e&&852<O||2===e&&592<O)return 1;u[m=R&_]=E<<24|C<<16|g-h|0}}0!==R&&(u[g+R]=x-I<<24|64<<16|0),d.bits=E}return 0}},{"../utils/common":41}],51:[function(e,t,r){"use strict";t.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],52:[function(e,t,r){"use strict";var n=e("../utils/common");function i(e){for(var t=e.length;0<=--t;)e[t]=0}var a=16,s=[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],o=[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],l=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],u=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],h=new Array(576),c=(i(h),new Array(60)),d=(i(c),new Array(512)),f=(i(d),new Array(256)),p=(i(f),new Array(29));i(p);var m,_,g,y=new Array(30);function b(e,t,r,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}function v(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function w(e){return e<256?d[e]:d[256+(e>>>7)]}function k(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function x(e,t,r){e.bi_valid>a-r?(e.bi_buf|=t<<e.bi_valid&65535,k(e,e.bi_buf),e.bi_buf=t>>a-e.bi_valid,e.bi_valid+=r-a):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=r)}function S(e,t,r){x(e,r[2*t],r[2*t+1])}function z(e,t){for(var r=0;r|=1&e,e>>>=1,r<<=1,0<--t;);return r>>>1}function A(e,t,r){for(var n,i=new Array(16),a=0,s=1;s<=15;s++)i[s]=a=a+r[s-1]<<1;for(n=0;n<=t;n++){var o=e[2*n+1];0!==o&&(e[2*n]=z(i[o]++,o))}}function E(e){for(var t=0;t<286;t++)e.dyn_ltree[2*t]=0;for(t=0;t<30;t++)e.dyn_dtree[2*t]=0;for(t=0;t<19;t++)e.bl_tree[2*t]=0;e.dyn_ltree[512]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function C(e){8<e.bi_valid?k(e,e.bi_buf):0<e.bi_valid&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function I(e,t,r,n){var i=2*t,a=2*r;return e[i]<e[a]||e[i]===e[a]&&n[t]<=n[r]}function T(e,t,r){for(var n=e.heap[r],i=r<<1;i<=e.heap_len&&(i<e.heap_len&&I(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!I(t,n,e.heap[i],e.depth));)e.heap[r]=e.heap[i],r=i,i<<=1;e.heap[r]=n}function O(e,t,r){var n,i,a,l,u=0;if(0!==e.last_lit)for(;n=e.pending_buf[e.d_buf+2*u]<<8|e.pending_buf[e.d_buf+2*u+1],i=e.pending_buf[e.l_buf+u],u++,0==n?S(e,i,t):(S(e,(a=f[i])+256+1,t),0!==(l=s[a])&&x(e,i-=p[a],l),S(e,a=w(--n),r),0!==(l=o[a])&&x(e,n-=y[a],l)),u<e.last_lit;);S(e,256,t)}function R(e,t){var r,n,i,a=t.dyn_tree,s=t.stat_desc.static_tree,o=t.stat_desc.has_stree,l=t.stat_desc.elems,u=-1;for(e.heap_len=0,e.heap_max=573,r=0;r<l;r++)0!==a[2*r]?(e.heap[++e.heap_len]=u=r,e.depth[r]=0):a[2*r+1]=0;for(;e.heap_len<2;)a[2*(i=e.heap[++e.heap_len]=u<2?++u:0)]=1,e.depth[i]=0,e.opt_len--,o&&(e.static_len-=s[2*i+1]);for(t.max_code=u,r=e.heap_len>>1;1<=r;r--)T(e,a,r);for(i=l;r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],T(e,a,1),n=e.heap[1],e.heap[--e.heap_max]=r,e.heap[--e.heap_max]=n,a[2*i]=a[2*r]+a[2*n],e.depth[i]=(e.depth[r]>=e.depth[n]?e.depth[r]:e.depth[n])+1,a[2*r+1]=a[2*n+1]=i,e.heap[1]=i++,T(e,a,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1];for(var h,c,d,f,p,m=e,_=t.dyn_tree,g=t.max_code,y=t.stat_desc.static_tree,b=t.stat_desc.has_stree,v=t.stat_desc.extra_bits,w=t.stat_desc.extra_base,k=t.stat_desc.max_length,x=0,S=0;S<=15;S++)m.bl_count[S]=0;for(_[2*m.heap[m.heap_max]+1]=0,h=m.heap_max+1;h<573;h++)k<(S=_[2*_[2*(c=m.heap[h])+1]+1]+1)&&(S=k,x++),_[2*c+1]=S,g<c||(m.bl_count[S]++,f=0,w<=c&&(f=v[c-w]),p=_[2*c],m.opt_len+=p*(S+f),b&&(m.static_len+=p*(y[2*c+1]+f)));if(0!==x){do{for(S=k-1;0===m.bl_count[S];)S--}while(m.bl_count[S]--,m.bl_count[S+1]+=2,m.bl_count[k]--,0<(x-=2));for(S=k;0!==S;S--)for(c=m.bl_count[S];0!==c;)g<(d=m.heap[--h])||(_[2*d+1]!==S&&(m.opt_len+=(S-_[2*d+1])*_[2*d],_[2*d+1]=S),c--)}A(a,u,e.bl_count)}function B(e,t,r){var n,i,a=-1,s=t[1],o=0,l=7,u=4;for(0===s&&(l=138,u=3),t[2*(r+1)+1]=65535,n=0;n<=r;n++)i=s,s=t[2*(n+1)+1],++o<l&&i===s||(o<u?e.bl_tree[2*i]+=o:0!==i?(i!==a&&e.bl_tree[2*i]++,e.bl_tree[32]++):o<=10?e.bl_tree[34]++:e.bl_tree[36]++,a=i,u=(o=0)===s?(l=138,3):i===s?(l=6,3):(l=7,4))}function L(e,t,r){var n,i,a=-1,s=t[1],o=0,l=7,u=4;for(0===s&&(l=138,u=3),n=0;n<=r;n++)if(i=s,s=t[2*(n+1)+1],!(++o<l&&i===s)){if(o<u)for(;S(e,i,e.bl_tree),0!=--o;);else 0!==i?(i!==a&&(S(e,i,e.bl_tree),o--),S(e,16,e.bl_tree),x(e,o-3,2)):o<=10?(S(e,17,e.bl_tree),x(e,o-3,3)):(S(e,18,e.bl_tree),x(e,o-11,7));a=i,u=(o=0)===s?(l=138,3):i===s?(l=6,3):(l=7,4)}}i(y);var D=!1;function F(e,t,r,i){x(e,0+(i?1:0),3),i=t,t=r,C(r=e),k(r,t),k(r,~t),n.arraySet(r.pending_buf,r.window,i,t,r.pending),r.pending+=t}r._tr_init=function(e){if(!D){for(var t,r,n,i,a=new Array(16),u=n=0;u<28;u++)for(p[u]=n,t=0;t<1<<s[u];t++)f[n++]=u;for(f[n-1]=u,u=i=0;u<16;u++)for(y[u]=i,t=0;t<1<<o[u];t++)d[i++]=u;for(i>>=7;u<30;u++)for(y[u]=i<<7,t=0;t<1<<o[u]-7;t++)d[256+i++]=u;for(r=0;r<=15;r++)a[r]=0;for(t=0;t<=143;)h[2*t+1]=8,t++,a[8]++;for(;t<=255;)h[2*t+1]=9,t++,a[9]++;for(;t<=279;)h[2*t+1]=7,t++,a[7]++;for(;t<=287;)h[2*t+1]=8,t++,a[8]++;for(A(h,287,a),t=0;t<30;t++)c[2*t+1]=5,c[2*t]=z(t,5);m=new b(h,s,257,286,15),_=new b(c,o,0,30,15),g=new b(new Array(0),l,0,19,7),D=!0}e.l_desc=new v(e.dyn_ltree,m),e.d_desc=new v(e.dyn_dtree,_),e.bl_desc=new v(e.bl_tree,g),e.bi_buf=0,e.bi_valid=0,E(e)},r._tr_stored_block=F,r._tr_flush_block=function(e,t,r,n){var i,a,s,o=0;if(0<e.level?(2===e.strm.data_type&&(e.strm.data_type=function(e){for(var t=4093624447,r=0;r<=31;r++,t>>>=1)if(1&t&&0!==e.dyn_ltree[2*r])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(r=32;r<256;r++)if(0!==e.dyn_ltree[2*r])return 1;return 0}(e)),R(e,e.l_desc),R(e,e.d_desc),o=function(e){var t;for(B(e,e.dyn_ltree,e.l_desc.max_code),B(e,e.dyn_dtree,e.d_desc.max_code),R(e,e.bl_desc),t=18;3<=t&&0===e.bl_tree[2*u[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),i=e.opt_len+3+7>>>3,(a=e.static_len+3+7>>>3)<=i&&(i=a)):i=a=r+5,r+4<=i&&-1!==t)F(e,t,r,n);else if(4===e.strategy||a===i)x(e,2+(n?1:0),3),O(e,h,c);else{x(e,4+(n?1:0),3);var l=e,d=(t=e.l_desc.max_code+1,r=e.d_desc.max_code+1,o+1);for(x(l,t-257,5),x(l,r-1,5),x(l,d-4,4),s=0;s<d;s++)x(l,l.bl_tree[2*u[s]+1],3);L(l,l.dyn_ltree,t-1),L(l,l.dyn_dtree,r-1),O(e,e.dyn_ltree,e.dyn_dtree)}E(e),n&&C(e)},r._tr_tally=function(e,t,r){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(f[r]+256+1)]++,e.dyn_dtree[2*w(t)]++),e.last_lit===e.lit_bufsize-1},r._tr_align=function(e){x(e,2,3),S(e,256,h),16===e.bi_valid?(k(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8<=e.bi_valid&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}},{"../utils/common":41}],53:[function(e,t,r){"use strict";t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,t,n){(function(e){!function(e,t){"use strict";var r,n,i,a,s,o,l,u,h;function c(e){delete s[e]}function d(e){if(o)setTimeout(d,0,e);else{var r=s[e];if(r){o=!0;try{var n=r.callback,i=r.args;switch(i.length){case 0:n();break;case 1:n(i[0]);break;case 2:n(i[0],i[1]);break;case 3:n(i[0],i[1],i[2]);break;default:n.apply(t,i)}}finally{c(e),o=!1}}}}function f(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(i)&&d(+t.data.slice(i.length))}e.setImmediate||(a=1,o=!(s={}),l=e.document,u=(u=Object.getPrototypeOf&&Object.getPrototypeOf(e))&&u.setTimeout?u:e,h="[object process]"==={}.toString.call(e.process)?function(e){process.nextTick((function(){d(e)}))}:function(){var t,r;if(e.postMessage&&!e.importScripts)return t=!0,r=e.onmessage,e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=r,t}()?(i="setImmediate$"+Math.random()+"$",e.addEventListener?e.addEventListener("message",f,!1):e.attachEvent("onmessage",f),function(t){e.postMessage(i+t,"*")}):e.MessageChannel?((n=new MessageChannel).port1.onmessage=function(e){d(e.data)},function(e){n.port2.postMessage(e)}):l&&"onreadystatechange"in l.createElement("script")?(r=l.documentElement,function(e){var t=l.createElement("script");t.onreadystatechange=function(){d(e),t.onreadystatechange=null,r.removeChild(t),t=null},r.appendChild(t)}):function(e){setTimeout(d,0,e)},u.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),r=0;r<t.length;r++)t[r]=arguments[r+1];return s[a]={callback:e,args:t},h(a),a++},u.clearImmediate=c)}("undefined"==typeof self?void 0===e?this:e:self)}).call(this,void 0!==r.g?r.g:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[10])(10)}},t={};function r(n){var i=t[n];return void 0!==i||(i=t[n]={exports:{}},e[n].call(i.exports,i,i.exports,r)),i.exports}r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),(()=>{"use strict";var e,t=r(434);const n=e=>{var t=new URL(e);return"link.zhihu.com"==t.hostname?(t=new URLSearchParams(t.search).get("target"),decodeURIComponent(t)):e},i=(e,t)=>null!=e&&(e.classList.contains(t)?e:i(e.parentElement,t)),a=e=>{let t;return(t=i(e,"AnswerItem"))&&null!=(t=t.querySelector(".ContentItem-title > div > a"))?t.innerText:(t=i(e,"QuestionPage"))&&null!=(t=t.querySelector("meta[itemprop=name]"))?t.content:(t=i(e,"ArticleItem"))&&null!=(t=t.querySelector("h2.ContentItem-title a"))||(t=i(e,"Post-NormalMain"))&&null!=(t=t.querySelector("header > h1.Post-Title"))?t.innerText:"无标题"},s=e=>{let t;try{if(t=(t=(t=(t=i(e,"AnswerItem"))||(t=i(e,"ArticleItem"))&&t.querySelector(".AuthorInfo-content"))||(t=i(e,"Post-Main"))&&t.querySelector(".Post-Author"))||(t=i(e,"PinItem"))&&t.querySelector(".PinItem-author")){var r=t.querySelector(".AuthorInfo-name .UserLink-link"),n=t.querySelector(".AuthorInfo-badgeText");if(null!=t)return{name:r.innerText||r.children[0].getAttribute("alt"),url:r.href,badge:n?n.innerText:""}}}catch(e){}return null},o=e=>{var t=window.location.origin+window.location.pathname;try{if("/"==window.location.pathname){let r=i(e,"AnswerItem");return(r=r||i(e,"ArticleItem"))?r.querySelector("a[data-za-detail-view-id]").href:t+"#WARNING_Failed_to_get_URL"}}catch{}return t},l=()=>{var e=document.createElement("button");return e.setAttribute("type","button"),e.classList.add("zhihucopier-button"),e.innerText="",e.style.right="0",e.style.top="-2em",e.style.zIndex="999",e.style.width="120px",e.style.height="2em",e.style.backgroundColor="rgba(85, 85, 85, 0.9)",e.style.color="white",e.style.outline="none",e.style.cursor="pointer",e.style.borderRadius="1em",e.style.margin="0 .2em 1em .2em",e.style.fontSize=".8em",e},u=((y=e=e||{})[y.H1=0]="H1",y[y.H2=1]="H2",y[y.Text=2]="Text",y[y.Figure=3]="Figure",y[y.Gif=4]="Gif",y[y.InlineLink=5]="InlineLink",y[y.InlineCode=6]="InlineCode",y[y.Math=7]="Math",y[y.Italic=8]="Italic",y[y.Bold=9]="Bold",y[y.PlainText=10]="PlainText",y[y.UList=11]="UList",y[y.Olist=12]="Olist",y[y.BR=13]="BR",y[y.HR=14]="HR",y[y.Blockquote=15]="Blockquote",y[y.Code=16]="Code",y[y.Link=17]="Link",y[y.Table=18]="Table",y[y.Video=19]="Video",t=>{var r=[];for(let u=0;u<t.length;u++){var i=t[u];switch(i.tagName.toLowerCase()){case"h2":r.push({type:e.H1,text:i.textContent,dom:i});break;case"h3":r.push({type:e.H2,text:i.textContent,dom:i});break;case"div":i.classList.contains("highlight")?r.push({type:e.Code,content:i.textContent,language:i.querySelector("pre > code").classList.value.slice(9),dom:i}):i.classList.contains("RichText-LinkCardContainer")?(s=i.firstChild,r.push({type:e.Link,text:s.getAttribute("data-text"),href:n(s.href),dom:i})):i.querySelector("video")&&r.push({type:e.Video,src:i.querySelector("video").getAttribute("src"),local:!1,dom:i});break;case"blockquote":r.push({type:e.Blockquote,content:h(i),dom:i});break;case"figure":var a,s=i.querySelector("img");s.classList.contains("ztext-gif")?(a=(s.getAttribute("src")||s.getAttribute("data-thumbnail")).replace(/\..{3,4}$/g,".gif"))&&r.push({type:e.Gif,src:a,local:!1,dom:i}):(a=s.getAttribute("data-actualsrc")||s.getAttribute("data-original"))&&r.push({type:e.Figure,src:a,local:!1,dom:i});break;case"ul":var o=Array.from(i.querySelectorAll("li"));r.push({type:e.UList,content:o.map((e=>h(e))),dom:i});break;case"ol":o=Array.from(i.querySelectorAll("li")),r.push({type:e.Olist,content:o.map((e=>h(e))),dom:i});break;case"p":r.push({type:e.Text,content:h(i),dom:i});break;case"hr":r.push({type:e.HR,dom:i});break;case"table":var l=(e=>{var t,r=[];for(t of Array.from(e.rows)){var n=Array.from(t.cells);r.push(n.map((e=>e.innerHTML.replace(/<a.*?href.*?>(.*?)<svg.*?>.*?<\/svg><\/a>/gms,"$1").replace(/<span>(.*?)<\/span>/gms,"$1"))))}return r})(i);r.push({type:e.Table,content:l,dom:i})}}return r}),h=t=>{if("string"==typeof t)return[{type:e.PlainText,text:t}];let r=Array.from(t.childNodes);var i,a=[];try{1==r.length&&"p"==r[0].tagName.toLowerCase()&&(r=Array.from(r[0].childNodes))}catch{}for(i of r)if(i.nodeType==i.TEXT_NODE)a.push({type:e.PlainText,text:i.textContent,dom:i});else{var s=i;switch(s.tagName.toLowerCase()){case"b":a.push({type:e.Bold,content:h(s),dom:s});break;case"i":a.push({type:e.Italic,content:h(s),dom:s});break;case"br":a.push({type:e.BR,dom:s});break;case"code":a.push({type:e.InlineCode,content:s.innerText,dom:s});break;case"span":try{s.classList.contains("ztext-math")?a.push({type:e.Math,content:s.getAttribute("data-tex"),dom:s}):s.children[0].classList.contains("RichContent-EntityWord")&&a.push({type:e.PlainText,text:s.innerText,dom:s})}catch{a.push({type:e.PlainText,text:s.innerText,dom:s})}break;case"a":a.push({type:e.InlineLink,text:s.textContent,href:n(s.href),dom:s})}}return a},c=t=>{var r=[];for(let h=0;h<t.length;h++){var n=t[h];switch(n.type){case e.Code:r.push(`\`\`\`${n.language||""}\n${n.content}${n.content.endsWith("\n")?"":"\n"}\`\`\``);break;case e.UList:r.push(n.content.map((e=>"- "+d(e))).join("\n"));break;case e.Olist:r.push(n.content.map(((e,t)=>t+1+". "+d(e))).join("\n"));break;case e.H1:r.push("# "+n.text);break;case e.H2:r.push("## "+n.text);break;case e.Blockquote:r.push(d(n.content,"> "));break;case e.Text:r.push(d(n.content));break;case e.HR:r.push("\n---\n");break;case e.Link:r.push(`[${n.text}](${n.href})`);break;case e.Figure:case e.Gif:r.push(`![](${n.local?n.localSrc:n.src})`);break;case e.Video:var i=document.createElement("video");i.setAttribute("src",n.local?n.localSrc:n.src),n.local||i.setAttribute("data-info","文件还未下载,随时可能失效,请使用`下载全文为Zip`将视频一同下载下来"),r.push(i.outerHTML);break;case e.Table:{var a=n.content;const e=a[0].length,t=new Array(e).fill(0);var s,o=[];for(s in a)for(var l in a[s])t[l]=Math.max(t[l],a[s][l].length);var u=r=>{let n="";for(let i=0;i<e;i++)n+=`| ${r[i].padEnd(t[i])} `;return n+"|"};o.push(u(a[0])),o.push((()=>{let r="";for(let n=0;n<e;n++)r+=`| ${"-".repeat(t[n])} `;return r+"|"})());for(let e=1;e<a.length;e++)o.push(u(a[e]));r.push(o.join("\n"));break}}}return r},d=(t,r="")=>{let n="";for(var i of t)switch(i.type){case e.Bold:n+=`**${d(i.content)}**`;break;case e.Italic:n+=`*${d(i.content)}*`;break;case e.InlineLink:n+=`[${i.text}](${i.href})`;break;case e.PlainText:n+=i.text;break;case e.BR:n+="\n"+r;break;case e.InlineCode:n+=`\`${i.content}\``;break;case e.Math:1==t.length?n+=`$$\n${i.content}\n$$`:n+=`$${i.content}$`}return r+n};var f=r(905);async function p(e,t){var r=await(await fetch(e)).arrayBuffer();return e=e.replace(/\?.*?$/g,"").split("/").pop(),t.file(e,r),{zip:t,file_name:e}}const m=async(t,r="assets")=>{var n,i=new f;let a=!1;for(n of t)if(n.type===e.Figure){a=!0;break}if(a){var s,o,l,u=i.folder(r);for(s of t)s.type===e.Figure||s.type===e.Video?(o=(await p(s.src,u)).file_name,s.localSrc=`./${r}/`+o,s.local=!0):s.type===e.Gif&&(l=(await p(s.src,u)).file_name,s.localSrc=`./${r}/`+l,s.local=!0)}return t=c(t).join("\n\n"),i.file("index.md",t),i},_=t=>{const r={type:e.Text,content:[]};return t.innerText.split("\n").forEach((t=>{r.content.push({type:e.PlainText,text:t}),r.content.push({type:e.BR})})),[r]},g=[];var y=async()=>{var r,n,h,d,p,y,b,v,w,k,x,S=Array.from(document.querySelectorAll(".RichText")),z=Array.from(document.getElementsByClassName("QuestionHeader-title"));for(r of S){try{var A=Array.from(r.children);for(let e=1;e<A.length;e++){var E=A[e];if(!E.classList.contains("zhihucopier-button"))break;E.remove()}}catch{}try{try{if(r.parentElement.classList.contains("Editable"))continue;if(r.children[0].classList.contains("zhihucopier-button"))continue;if(r.children[0].classList.contains("Image-Wrapper-Preview"))continue;if(i(r,"PinItem")){var C=i(r,"RichContent-inner");if(C&&C.querySelector(".ContentItem-more"))continue}}catch{}var I=document.createElement("div");let f;if(r.prepend(I),I.classList.add("zhihucopier-button"),i(r,"PinItem")){var T=i(r,"RichContent-inner");if(T&&T.querySelector(".ContentItem-more"))continue;var O=await(async t=>{const r=_(t);var n=((n=i(t,"PinItem"))&&Array.from(n.querySelectorAll(".Image-PreviewVague > img")).forEach((t=>{r.push({type:e.Figure,src:t.getAttribute("data-original")||t.getAttribute("data-actualsrc")})})),c(r)),{zop:a,zaExtra:o}=(()=>{var e=i(t,"PinItem");try{if(e)return{zop:JSON.parse(decodeURIComponent(e.getAttribute("data-zop"))),zaExtra:JSON.parse(decodeURIComponent(e.getAttribute("data-za-extra-module")))}}catch{}return{zop:null,zaExtra:null}})(),l=s(t),u=(a.itemId,await m(r));return u.file("info.json",JSON.stringify({author:l,url:"https://www.zhihu.com/pin/"+a.itemId,zop:a,"zop-extra-module":o},null,4)),{lex:r,markdown:n,zip:u,title:"想法",itemId:a.itemId}})(r);f={markdown:O.markdown,zip:O.zip,title:O.title,dom:r,itemId:O.itemId}}else{k=x=k=void 0,h=u((n=r).childNodes),d=c(h),p=(()=>{var e=document.querySelector("[data-zop-question]");try{if(e instanceof HTMLElement)return JSON.parse(decodeURIComponent(e.getAttribute("data-zop-question")))}catch{}return null})(),y=(()=>{let e=i(n,"AnswerItem");e=e||i(n,"Post-content");try{if(e instanceof HTMLElement)return JSON.parse(decodeURIComponent(e.getAttribute("data-zop")))}catch{}return null})(),b=(()=>{var e=document.querySelector("[data-za-extra-module]");try{if(e instanceof HTMLElement)return JSON.parse(decodeURIComponent(e.getAttribute("data-za-extra-module")))}catch{}return null})(),v=a(n),w=s(n),k=o(n),(x=await m(h)).file("info.json",JSON.stringify({title:v,url:k,author:w,zop:y,"zop-question":p,"zop-extra-module":b},null,4)),k=(y||{}).itemId||"xxxxxxxx".replace(/[xy]/g,(function(e){var t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)}));var R=await{lex:h,markdown:d,zip:x,title:v,itemId:k};f={markdown:R.markdown,zip:R.zip,title:R.title,dom:r,itemId:R.itemId},i(r,"QuestionRichText")&&(f.question=!0,f.itemId="问题描述")}(e=>{g.every((t=>t.dom!==e.dom))&&g.push(e)})(f);const S=l(),z=(S.innerHTML="下载全文为Zip",S.style.borderRadius="0 1em 1em 0",S.style.width="100px",S.style.paddingRight=".4em",I.prepend(S),S.addEventListener("click",(async()=>{try{var e=await f.zip.generateAsync({type:"blob"});(0,t.saveAs)(e,f.title+"-"+f.itemId+".zip"),S.innerHTML="下载成功✅",setTimeout((()=>{S.innerHTML="下载全文为Zip"}),1e3)}catch{S.innerHTML="发生未知错误<br>请联系开发者",S.style.height="4em",setTimeout((()=>{S.style.height="2em",S.innerHTML="下载全文为Zip"}),1e3)}})),l());z.innerHTML="复制为Markdown",z.style.borderRadius="1em 0 0 1em",z.style.paddingLeft=".4em",I.prepend(z),z.addEventListener("click",(()=>{try{navigator.clipboard.writeText(f.markdown.join("\n\n")),z.innerHTML="复制成功✅",setTimeout((()=>{z.innerHTML="复制为Markdown"}),1e3)}catch{z.innerHTML="发生未知错误<br>请联系开发者",z.style.height="4em",setTimeout((()=>{z.style.height="2em",z.innerHTML="复制为Markdown"}),1e3)}}))}catch(r){}}z.forEach((e=>{if(!e.querySelector(".zhihucopier-button")){const r=l();r.style.width="75px",r.style.fontSize="13px",r.style.lineHeight="13px",r.style.margin="0",r.innerHTML="批量下载",r.classList.add("zhihucopier-button"),i(e,"App-main")?e.append(r):(r.style.marginRight=".4em",e.prepend(r)),r.addEventListener("click",(e=>{e.stopPropagation(),e.preventDefault();try{(async()=>{const e=new f;g.forEach((t=>{const r=t.title+"-"+t.itemId;Object.keys(t.zip.files).forEach((n=>{e.files[r+"/"+n]=t.zip.files[n]}))})),(0,t.saveAs)(await e.generateAsync({type:"blob"}),`问题『${g[0].title}』下的${g.length}个回答.zip`)})(),r.style.width="90px",r.innerHTML="下载成功✅",setTimeout((()=>{r.innerHTML="批量下载",r.style.width="75px"}),1e3)}catch{r.style.width="190px",r.innerHTML="发生未知错误,请联系开发者",setTimeout((()=>{r.innerHTML="批量下载",r.style.width="75px"}),1e3)}}))}}))};setTimeout(y,300),setInterval(y,1e3)})()})();