build with wabac.js develop fix bulma import to help loading as module bump version to 1.2.0-beta.0
33 lines
1.1 MiB
Plaintext
33 lines
1.1 MiB
Plaintext
/*! sw.js is part of ReplayWeb.page (https://replayweb.page) Copyright (C) 2020, Webrecorder Software. Licensed under the Affero General Public License v3. */
|
||
!function(e,t){for(var n in t)e[n]=t[n]}(self,function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/",n(n.s=224)}([function(e,t,n){"use strict";function r(e,t){for(const n of t)if(e.startsWith(n))return!0;return!1}function i(e,t){for(const n of t)if(e.indexOf(n)>=0)return!0;return!1}function s(e){return e.replace(/[-:T]/g,"").slice(0,14)}function o(e){return e.replace(/[-:.TZ]/g,"")}function a(e){if(!e)return new Date;e.length<17&&(e+="00000101000000000".substr(e.length));const t=e.substring(0,4)+"-"+e.substring(4,6)+"-"+e.substring(6,8)+"T"+e.substring(8,10)+":"+e.substring(10,12)+":"+e.substring(12,14)+"."+e.substring(14)+"Z";return new Date(t)}function u(e){if(!e)return"";try{return""+parseInt(e.getTime()/1e3)}catch(e){return""}}async function l(e,t){const n="string"==typeof e?(new TextEncoder).encode(e):e,r=await crypto.subtle.digest(t,n);return t+":"+new Uint8Array(r).map(e=>e.toString(16).padStart(2,"0")).join("")}function c(e){try{return new Headers(e)}catch(t){for(let t of Object.keys(e)){const n=e[t],r=n.replace(/[\r\n]+/g,", ");n!=r&&(e[t]=r)}return new Headers(e)}}n.d(t,"l",(function(){return r})),n.d(t,"c",(function(){return i})),n.d(t,"f",(function(){return s})),n.d(t,"g",(function(){return o})),n.d(t,"m",(function(){return a})),n.d(t,"e",(function(){return u})),n.d(t,"d",(function(){return l})),n.d(t,"i",(function(){return d})),n.d(t,"j",(function(){return c})),n.d(t,"k",(function(){return f})),n.d(t,"h",(function(){return p})),n.d(t,"a",(function(){return m})),n.d(t,"b",(function(){return w}));const h=[101,204,205,304];function d(e){return h.includes(e)}function p(e){return"XMLHttpRequest"===e.headers.get("X-Pywb-Requested-With")}function f(e,t){let n,r;return t||(t="Sorry, this url was not found in the archive."),"script"===e.destination||e.headers.get("x-pywb-requested-with")?(n=JSON.stringify(t),r="application/json"):(n=t,r="text/html"),new Response(n,{status:404,statusText:"Not Found",headers:{"Content-Type":r}})}class m extends class{constructor(e,t){this.url=e,this.status=t}}{}class w{}},function(e,t,n){"use strict";n.d(t,"b",(function(){return o})),n.d(t,"a",(function(){return a})),n.d(t,"d",(function(){return y})),n.d(t,"f",(function(){return T})),n.d(t,"e",(function(){return b})),n.d(t,"c",(function(){return D}));var r=n(116);const i=new TextDecoder("utf-8");class s extends r.Inflate{constructor(e,t){super(e),this.reader=t}onEnd(e){this.err=e,this.err||(this.reader._rawOffset+=this.strm.total_in)}}class o{static concatChunks(e,t){if(1===e.length)return e[0];const n=new Uint8Array(t);let r=0;for(const t of e)n.set(t,r),r+=t.byteLength;return n}static splitChunk(e,t){return[e.slice(0,t),e.slice(t)]}static async readFully(e){const t=[];let n=0;for await(const r of e)t.push(r),n+=r.byteLength;return o.concatChunks(t,n)}getReadableStream(){const e=this[Symbol.asyncIterator]();return new ReadableStream({pull:t=>e.next().then(e=>{e.done||!e.value?t.close():t.enqueue(e.value)})})}readFully(){return o.readFully(this)}async readline(e=0){const t=await this.readlineRaw(e);return t?i.decode(t):""}async*iterLines(e=0){let t=null;for(;t=await this.readline(e);)yield t}}class a extends o{constructor(e,t="gzip",n=!1){if(super(),this.compressed=t,this.opts={raw:"deflateRaw"===t},this.inflator=t?new s(this.opts,this):null,"function"!=typeof e[Symbol.asyncIterator])if("function"==typeof e.getReader)e=a.fromReadable(e.getReader());else if("function"==typeof e.read)e=a.fromReadable(e);else{if("function"!=typeof e[Symbol.iterator])throw new TypeError("Invalid Stream Source");e=a.fromIter(e)}this._sourceIter=n?this.dechunk(e):e[Symbol.asyncIterator](),this.lastValue=null,this.errored=!1,this._savedChunk=null,this._rawOffset=0,this._readOffset=0,this.numChunks=0}async _loadNext(){const e=await this._sourceIter.next();return e.done?null:e.value}async*dechunk(e){const t=e instanceof a?e:new a(e,null);let n=-1,r=!0;for(;0!=n;){const e=await t.readlineRaw(64);let s=null;if(n=parseInt(i.decode(e),16),!n||n>2**32){if(Number.isNaN(n)||n>2**32){r||(this.errored=!0),yield e;break}}else if(s=await t.readSize(n),s.length!=n){r?yield e:this.errored=!0,yield s;break}const o=await t.readSize(2);if(13!=o[0]||10!=o[1]){r?yield e:this.errored=!0,yield s,yield o;break}if(r=!1,!s||0===n)return;yield s}yield*t}_unread(e){e.length&&(this._readOffset-=e.length,this._savedChunk&&console.log("Already have chunk!"),this._savedChunk=e)}async _next(){if(this._savedChunk){const e=this._savedChunk;return this._savedChunk=null,e}if(this.compressed){const e=this._getNextChunk();if(e)return e}let e=await this._loadNext();for(;this.compressed&&e;){this._push(e);const t=this._getNextChunk(e);if(t)return t;e=await this._loadNext()}return e}_push(e){this.lastValue=e,this.inflator.ended&&(this.inflator=new s(this.opts,this)),this.inflator.push(e),this.inflator.err&&this.inflator.ended&&"deflate"===this.compressed&&!1===this.opts.raw&&0===this.numChunks&&(this.opts.raw=!0,this.compressed="deflateRaw",this.inflator=new s(this.opts,this),this.inflator.push(e))}_getNextChunk(e){for(;;){if(this.inflator.chunks.length>0)return this.numChunks++,this.inflator.chunks.shift();if(this.inflator.ended){if(0!==this.inflator.err)return this.compressed=null,e;const t=this.inflator.strm.avail_in;if(t&&this.lastValue){this._push(this.lastValue.slice(-t));continue}}return null}}async*[Symbol.asyncIterator](){let e=null;for(;e=await this._next();)this._readOffset+=e.length,yield e}async readlineRaw(e){const t=[];let n,r=0,i=null;for await(const s of this){if(e&&r+s.byteLength>e){i=s,n=e-r-1;const t=s.slice(0,n+1).indexOf(10);t>=0&&(n=t);break}if(n=s.indexOf(10),n>=0){i=s;break}t.push(s),r+=s.byteLength}if(i){const[e,s]=a.splitChunk(i,n+1);t.push(e),r+=e.byteLength,this._unread(s)}else if(!t.length)return null;return a.concatChunks(t,r)}readFully(){return this.readSize()}async readSize(e=-1,t=!1){const n=[];let r=0;for await(const i of this){if(e>=0){if(i.length>e){const[s,o]=a.splitChunk(i,e);t||n.push(s),r+=s.byteLength,this._unread(o);break}if(i.length===e){t||n.push(i),r+=i.byteLength,e=0;break}e-=i.length}t||n.push(i),r+=i.byteLength}return t?r:a.concatChunks(n,r)}getReadOffset(){return this._readOffset}getRawOffset(){return this.compressed?this._rawOffset:this._readOffset}getRawLength(e){return this.compressed?this.inflator.strm.total_in:this._readOffset-e}static fromReadable(e){return{async*[Symbol.asyncIterator](){let t=null;for(;(t=await e.read())&&!t.done;)yield t.value}}}static fromIter(e){return{async*[Symbol.asyncIterator](){for(const t of e)yield t}}}}class u extends o{constructor(e,t,n=0){super(),this.sourceIter=e,this.length=t,this.limit=t,this.skip=n}setLimitSkip(e,t=0){this.limit=e,this.skip=t}async*[Symbol.asyncIterator](){if(!(this.limit<=0))for await(let e of this.sourceIter){if(this.skip>0){if(!(e.length>=this.skip)){this.skip-=e.length;continue}{const[t,n]=u.splitChunk(e,this.skip);e=n,this.skip=0}}if(e.length>this.limit){const[t,n]=u.splitChunk(e,this.limit);e=t,this.sourceIter._unread(n)}if(e.length&&(this.limit-=e.length,yield e),this.limit<=0)break}}async readlineRaw(e){if(this.limit<=0)return null;const t=await this.sourceIter.readlineRaw(e?Math.min(e,this.limit):this.limit);return this.limit-=t.length,t}async skipFully(){const e=this.limit;for(;this.limit>0;)this.limit-=await this.sourceIter.readSize(this.limit,!0);return e}}const l=new Uint8Array([13,10]),c=new Uint8Array([13,10,13,10]);class h{constructor({statusline:e,headers:t}){this.statusline=e,this.headers=t}toString(){const e=[this.statusline];for(const[t,n]of this.headers)e.push(`${t}: ${n}`);return e.join("\r\n")+"\r\n"}async*iterSerialize(e){yield e.encode(this.statusline),yield l;for(const[t,n]of this.headers)yield e.encode(`${t}: ${n}\r\n`)}_parseResponseStatusLine(){const e=p(this.statusline," ",2);this._protocol=e[0],this._statusCode=e.length>1?Number(e[1]):"",this._statusText=e.length>2?e[2]:""}get statusCode(){return void 0===this._statusCode&&this._parseResponseStatusLine(),this._statusCode}get protocol(){return void 0===this._protocol&&this._parseResponseStatusLine(),this._protocol}get statusText(){return void 0===this._statusText&&this._parseResponseStatusLine(),this._statusText}_parseRequestStatusLine(){const e=this.statusline.split(" ",2);this._method=e[0],this._requestPath=e.length>1?e[1]:""}get method(){return void 0===this._method&&this._parseRequestStatusLine(),this._method}get requestPath(){return void 0===this._requestPath&&this._parseRequestStatusLine(),this._requestPath}}class d{startsWithSpace(e){const t=e.charAt(0);return" "===t||"\t"===t}async parse(e,{headersClass:t=Map}={}){const n=await e.readline();if(!n)return null;let r=n.trimEnd();const i=new t;if(!r)return null;let s=(await e.readline()).trimEnd();for(;s;){let[t,n]=p(s,":",1);n&&(t=t.trimStart(),n=n.trim());let r=(await e.readline()).trimEnd();for(;this.startsWithSpace(r);)n&&(n+=r),r=(await e.readline()).trimEnd();if(n)try{i.set(t,n)}catch(e){}s=r}return new h({statusline:r,headers:i,totalRead:this.totalRead})}}function p(e,t,n){const r=e.split(t),i=r.slice(0,n);return r.slice(n).length>0&&i.push(r.slice(n).join(t)),i}var f=n(117),m=n.n(f);const w=new TextDecoder("utf-8"),g=new TextEncoder("utf-8"),_={warcinfo:"application/warc-fields",response:"application/http; msgtype=response",revisit:"application/http; msgtype=response",request:"application/http; msgtype=request",metadata:"application/warc-fields"};class b extends o{static create({url:e,date:t,type:n,warcHeaders:r={},filename:i="",httpHeaders:s={},statusline:o="HTTP/1.1 200 OK",warcVersion:a="WARC/1.0",keepHeadersCase:u=!0,refersToUrl:l,refersToDate:c}={},d){function p(e){return"WARC/1.0"===a&&"Z"!=(e=e.split(".")[0]).charAt(t.length-1)&&(e+="Z"),e}t||(t=(new Date).toISOString()),t=p(t),r={...r},"warcinfo"===n?i&&(r["WARC-Filename"]=i):r["WARC-Target-URI"]=e,r["WARC-Date"]=t,r["WARC-Type"]=n,"revisit"===n&&(r["WARC-Profile"]="WARC/1.1"===a?"http://netpreserve.org/warc/1.1/revisit/identical-payload-digest":"http://netpreserve.org/warc/1.0/revisit/identical-payload-digest",r["WARC-Refers-To-Target-URI"]=l,r["WARC-Refers-To-Date"]=p(c)),(r=new h({statusline:a,headers:u?new Map(Object.entries(r)):new Headers(r)})).headers.get("WARC-Record-ID")||r.headers.set("WARC-Record-ID",`<urn:uuid:${m()()}>`),!r.headers.get("Content-Type")&&_[n]&&r.headers.set("Content-Type",_[n]);const f=new b({warcHeaders:r,reader:d});switch(n){case"response":case"request":case"revisit":f.httpHeaders=new h({statusline:o,headers:u?new Map(Object.entries(s)):new Headers(s)})}return f}static createWARCInfo(e={},t){return e.type="warcinfo",b.create(e,async function*(){for(const[e,n]of Object.entries(t))yield g.encode(`${e}: ${n}\r\n`)}())}constructor({warcHeaders:e,reader:t}){super(),this.warcHeaders=e,this._reader=t,this._contentReader=null,this.payload=null,this.httpHeaders=null,this.consumed=!1,this.fixUp()}getResponseInfo(){const e=this.httpHeaders;return e?{headers:e.headers,status:e.statusCode,statusText:e.statusText}:null}fixUp(){const e=this.warcHeaders.headers.get("WARC-Target-URI");e&&e.startsWith("<")&&e.endsWith(">")&&this.warcHeaders.headers.set("WARC-Target-URI",e.slice(1,-1))}async readFully(e=!1){if(this.httpHeaders){if(this._contentReader&&!e)throw new TypeError("WARC Record decoding already started, but requesting raw payload");if(e&&"raw"===this.consumed&&this.payload)return await this._createDecodingReader([this.payload]).readFully()}return this.payload||(e?(this.payload=await super.readFully(),this.consumed="content"):(this.payload=await b.readFully(this._reader),this.consumed="raw")),this.payload}get reader(){if(this._contentReader)throw new TypeError("WARC Record decoding already started, but requesting raw payload");return this._reader}get contentReader(){return this.httpHeaders?(this._contentReader||(this._contentReader=this._createDecodingReader(this._reader)),this._contentReader):this._reader}_createDecodingReader(e){let t=this.httpHeaders.headers.get("content-encoding"),n=this.httpHeaders.headers.get("transfer-encoding");const r="chunked"===n;return t||r||(t=n),new a(e,t,r)}async readlineRaw(e){if(this.consumed)throw new Error("Record already consumed.. Perhaps a promise was not awaited?");return this.contentReader.readlineRaw(e)}async contentText(){const e=await this.readFully(!0);return w.decode(e)}async*[Symbol.asyncIterator](){for await(const e of this.contentReader)if(yield e,this.consumed)throw new Error("Record already consumed.. Perhaps a promise was not awaited?");this.consumed="content"}async skipFully(){if(this.consumed)return;const e=await this._reader.skipFully();return this.consumed="skipped",e}warcHeader(e){return this.warcHeaders.headers.get(e)}get warcType(){return this.warcHeaders.headers.get("WARC-Type")}get warcTargetURI(){return this.warcHeaders.headers.get("WARC-Target-URI")}get warcDate(){return this.warcHeaders.headers.get("WARC-Date")}get warcRefersToTargetURI(){return this.warcHeaders.headers.get("WARC-Refers-To-Target-URI")}get warcRefersToDate(){return this.warcHeaders.headers.get("WARC-Refers-To-Date")}get warcPayloadDigest(){return this.warcHeaders.headers.get("WARC-Payload-Digest")}get warcBlockDigest(){return this.warcHeaders.headers.get("WARC-Block-Digest")}get warcContentType(){return this.warcHeaders.headers.get("Content-Type")}get warcContentLength(){return Number(this.warcHeaders.headers.get("Content-Length"))}}class y{static parse(e,t){return new y(e,t).parse()}static iterRecords(e,t){return new y(e,t)[Symbol.asyncIterator]()}constructor(e,{keepHeadersCase:t=!1,parseHttp:n=!0}={}){this._offset=0,this._warcHeadersLength=0,this._headersClass=t?Map:Headers,this._parseHttp=n,this._atRecordBoundary=!0,e instanceof a||(e=new a(e)),this._reader=e,this._record=null}async readToNextRecord(){!this._atRecordBoundary&&this._reader&&this._record&&(await this._record.skipFully(),await this._reader.readSize(4,!0),this._atRecordBoundary=!0)}_initRecordReader(e){return new u(this._reader,Number(e.headers.get("Content-Length")||0))}async parse(){await this.readToNextRecord(),this._offset=this._reader.getRawOffset();const e=new d,t=await e.parse(this._reader,{headersClass:this._headersClass});if(!t)return null;this._warcHeadersLength=this._reader.getReadOffset();const n=new b({warcHeaders:t,reader:this._initRecordReader(t)});if(this._atRecordBoundary=!1,this._record=n,this._parseHttp)switch(n.warcType){case"response":case"request":await this._addHttpHeaders(n,e,this._reader);break;case"revisit":n.warcContentLength>0&&await this._addHttpHeaders(n,e,this._reader)}return n}get offset(){return this._offset}get recordLength(){return this._reader.getRawLength(this._offset)}async*[Symbol.asyncIterator](){let e=null;for(;e=await this.parse(this._reader);)yield e;this._record=null}async _addHttpHeaders(e,t){const n=await t.parse(this._reader,{headersClass:this._headersClass});e.httpHeaders=n;const r=this._reader.getReadOffset()-this._warcHeadersLength;e.reader.setLimitSkip&&e.reader.setLimitSkip(e.warcContentLength-r)}}var v=n(118),E=n.n(v),A=n(119);const x=new TextEncoder;class T extends o{static async serialize(e,t){const n=new T(e,t);return await n.readFully()}static base16(e){return Array.from(new Uint8Array(e)).map(e=>e.toString(16).padStart(2,"0")).join("")}constructor(e,t={}){super(),this.record=e,this.gzip=t.gzip;const n=t&&t.digest||{};"revisit"===e.warcType||"warcinfo"===e.warcType||e.warcPayloadDigest&&e.warcBlockDigest?this.digestAlgo=null:(this.digestAlgo=n.algo||"sha-256",this.digestAlgoPrefix=n.prefix||"sha-256:",this.digestBase32=n.base32||!1)}async*[Symbol.asyncIterator](){if(!this.gzip)return void(yield*this.generateRecord());const e=new A.Deflate({gzip:!0});let t=null;for await(const n of this.generateRecord())for(t&&t.length>0&&e.push(t),t=n;e.chunks.length;)yield e.chunks.shift();e.push(t,!0),yield e.result}async digestMessage(e){const t=await crypto.subtle.digest(this.digestAlgo,e);return this.digestAlgoPrefix+(this.digestBase32?E.a.encode(t):T.base16(t))}async*generateRecord(){let e=0,t=null;this.record.httpHeaders&&(t=x.encode(this.record.httpHeaders.toString()+"\r\n"),e+=t.length);const n=await this.record.readFully();if(e+=n.length,this.digestAlgo){const r=await this.digestMessage(n),i=t?await this.digestMessage(T.concatChunks([t,n],e)):r;this.record.warcHeaders.headers.set("WARC-Payload-Digest",r),this.record.warcHeaders.headers.set("WARC-Block-Digest",i)}this.record.warcHeaders.headers.set("Content-Length",e);const r=x.encode(this.record.warcHeaders.toString());yield r,yield l,t&&(yield t),yield n,yield c}}const S="offset,warc-type,warc-target-uri".split(",");const C="urlkey,timestamp,url,mime,status,digest,length,offset,filename".split(","),k="urlkey,timestamp,url,mime,status,digest,redirect,meta,length,offset,filename".split(",");class D extends class extends class{constructor(e,t){this.opts=e,this.out=t}serialize(e){return JSON.stringify(e)+"\n"}write(e){this.out.write(this.serialize(e))}async run(e){for await(const t of this.iterIndex(e))this.write(t)}async*iterIndex(e){const t={strictHeaders:!0,parseHttp:this.parseHttp};for(const{filename:n,reader:r}of e){if(!n||!r)continue;const e=new y(r,t);for await(const t of e){await t.skipFully();const r=this.indexRecord(t,e,n);r&&(yield r)}}}indexRecord(e,t,n){if(this.filterRecord&&!this.filterRecord(e))return null;const r={},i={offset:t.offset,length:t.recordLength,filename:n};for(const t of this.fields)null!=i[t]?r[t]=i[t]:this.setField(t,e,r);return r}setField(e,t,n){const r=this.getField(e,t);null!=r&&(n[e]=r)}getField(e,t){return"http:status"===e?!t.httpHeaders||"response"!==t.warcType&&"revisit"!==t.warcType?null:t.httpHeaders.statusCode:e.startsWith("http:")?t.httpHeaders?t.httpHeaders.headers.get(e.slice(5)):null:t.warcHeaders.headers.get(e)}}{constructor(e={},t=null){if(super(e,t),e.fields){this.fields=e.fields.split(","),this.parseHttp=!1;for(const e of this.fields)if(e.startsWith("http:")){this.parseHttp=!0;break}}else this.fields=S,this.parseHttp=!1}}{constructor(e={},t=null){switch(super(e,t),this.includeAll=e.all,this.fields=C,this.parseHttp=!0,e.format){case"cdxj":this.serialize=this.serializeCDXJ;break;case"cdx":this.serialize=this.serializeCDX11}}filterRecord(e){if(this.includeAll)return!0;const t=e.warcType;return"request"!==t&&"warcinfo"!==t}serializeCDXJ(e){const{urlkey:t,timestamp:n}=e;return delete e.urlkey,delete e.timestamp,`${t} ${n} ${JSON.stringify(e)}\n`}serializeCDX11(e){const t=[];for(const n of k)t.push(null!=e[n]?e[n]:"-");return t.join(" ")+"\n"}getField(e,t){let n=null;switch(e){case"urlkey":return this.getSurt(t.warcTargetURI);case"timestamp":return n=t.warcDate,n.replace(/[-:T]/g,"").slice(0,14);case"url":return t.warcTargetURI;case"mime":switch(t.warcType){case"revisit":return"warc/revisit";case"response":case"request":e="http:content-type";break;default:e="content-type"}return n=super.getField(e,t),n?n.split(";",1)[0].trim():null;case"status":return super.getField("http:status",t);case"digest":return n=t.warcPayloadDigest,n?n.split(":",2)[1]:null}}getSurt(e){try{const t=new URL(e);let n=t.hostname.split(".").reverse().join(",");return t.port&&(n+=":"+t.port),n+=")",n+=t.pathname,n.toLowerCase()}catch(t){return e}}}},function(e,t,n){"use strict";var r=n(25),i=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],s=["scalar","sequence","mapping"];e.exports=function(e,t){var n,o;if(t=t||{},Object.keys(t).forEach((function(t){if(-1===i.indexOf(t))throw new r('Unknown option "'+t+'" is met in definition of "'+e+'" YAML type.')})),this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(e){return e},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.defaultStyle=t.defaultStyle||null,this.styleAliases=(n=t.styleAliases||null,o={},null!==n&&Object.keys(n).forEach((function(e){n[e].forEach((function(t){o[String(t)]=e}))})),o),-1===s.indexOf(this.kind))throw new r('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}},function(e,t,n){"use strict";(function(e){
|
||
/*!
|
||
* The buffer module from node.js, for the browser.
|
||
*
|
||
* @author Feross Aboukhadijeh <http://feross.org>
|
||
* @license MIT
|
||
*/
|
||
var r=n(129),i=n(130),s=n(69);function o(){return u.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function a(e,t){if(o()<t)throw new RangeError("Invalid typed array length");return u.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t)).__proto__=u.prototype:(null===e&&(e=new u(t)),e.length=t),e}function u(e,t,n){if(!(u.TYPED_ARRAY_SUPPORT||this instanceof u))return new u(e,t,n);if("number"==typeof e){if("string"==typeof t)throw new Error("If encoding is specified then the first argument must be a string");return h(this,e)}return l(this,e,t,n)}function l(e,t,n,r){if("number"==typeof t)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer?function(e,t,n,r){if(t.byteLength,n<0||t.byteLength<n)throw new RangeError("'offset' is out of bounds");if(t.byteLength<n+(r||0))throw new RangeError("'length' is out of bounds");t=void 0===n&&void 0===r?new Uint8Array(t):void 0===r?new Uint8Array(t,n):new Uint8Array(t,n,r);u.TYPED_ARRAY_SUPPORT?(e=t).__proto__=u.prototype:e=d(e,t);return e}(e,t,n,r):"string"==typeof t?function(e,t,n){"string"==typeof n&&""!==n||(n="utf8");if(!u.isEncoding(n))throw new TypeError('"encoding" must be a valid string encoding');var r=0|f(t,n),i=(e=a(e,r)).write(t,n);i!==r&&(e=e.slice(0,i));return e}(e,t,n):function(e,t){if(u.isBuffer(t)){var n=0|p(t.length);return 0===(e=a(e,n)).length||t.copy(e,0,0,n),e}if(t){if("undefined"!=typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||"length"in t)return"number"!=typeof t.length||(r=t.length)!=r?a(e,0):d(e,t);if("Buffer"===t.type&&s(t.data))return d(e,t.data)}var r;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(e,t)}function c(e){if("number"!=typeof e)throw new TypeError('"size" argument must be a number');if(e<0)throw new RangeError('"size" argument must not be negative')}function h(e,t){if(c(t),e=a(e,t<0?0:0|p(t)),!u.TYPED_ARRAY_SUPPORT)for(var n=0;n<t;++n)e[n]=0;return e}function d(e,t){var n=t.length<0?0:0|p(t.length);e=a(e,n);for(var r=0;r<n;r+=1)e[r]=255&t[r];return e}function p(e){if(e>=o())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o().toString(16)+" bytes");return 0|e}function f(e,t){if(u.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return W(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return j(e).length;default:if(r)return W(e).length;t=(""+t).toLowerCase(),r=!0}}function m(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return D(this,t,n);case"utf8":case"utf-8":return S(this,t,n);case"ascii":return C(this,t,n);case"latin1":case"binary":return k(this,t,n);case"base64":return T(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return R(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function w(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function g(e,t,n,r,i){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof t&&(t=u.from(t,r)),u.isBuffer(t))return 0===t.length?-1:_(e,t,n,r,i);if("number"==typeof t)return t&=255,u.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):_(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function _(e,t,n,r,i){var s,o=1,a=e.length,u=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;o=2,a/=2,u/=2,n/=2}function l(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(i){var c=-1;for(s=n;s<a;s++)if(l(e,s)===l(t,-1===c?0:s-c)){if(-1===c&&(c=s),s-c+1===u)return c*o}else-1!==c&&(s-=s-c),c=-1}else for(n+u>a&&(n=a-u),s=n;s>=0;s--){for(var h=!0,d=0;d<u;d++)if(l(e,s+d)!==l(t,d)){h=!1;break}if(h)return s}return-1}function b(e,t,n,r){n=Number(n)||0;var i=e.length-n;r?(r=Number(r))>i&&(r=i):r=i;var s=t.length;if(s%2!=0)throw new TypeError("Invalid hex string");r>s/2&&(r=s/2);for(var o=0;o<r;++o){var a=parseInt(t.substr(2*o,2),16);if(isNaN(a))return o;e[n+o]=a}return o}function y(e,t,n,r){return z(W(t,e.length-n),e,n,r)}function v(e,t,n,r){return z(function(e){for(var t=[],n=0;n<e.length;++n)t.push(255&e.charCodeAt(n));return t}(t),e,n,r)}function E(e,t,n,r){return v(e,t,n,r)}function A(e,t,n,r){return z(j(t),e,n,r)}function x(e,t,n,r){return z(function(e,t){for(var n,r,i,s=[],o=0;o<e.length&&!((t-=2)<0);++o)n=e.charCodeAt(o),r=n>>8,i=n%256,s.push(i),s.push(r);return s}(t,e.length-n),e,n,r)}function T(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function S(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i<n;){var s,o,a,u,l=e[i],c=null,h=l>239?4:l>223?3:l>191?2:1;if(i+h<=n)switch(h){case 1:l<128&&(c=l);break;case 2:128==(192&(s=e[i+1]))&&(u=(31&l)<<6|63&s)>127&&(c=u);break;case 3:s=e[i+1],o=e[i+2],128==(192&s)&&128==(192&o)&&(u=(15&l)<<12|(63&s)<<6|63&o)>2047&&(u<55296||u>57343)&&(c=u);break;case 4:s=e[i+1],o=e[i+2],a=e[i+3],128==(192&s)&&128==(192&o)&&128==(192&a)&&(u=(15&l)<<18|(63&s)<<12|(63&o)<<6|63&a)>65535&&u<1114112&&(c=u)}null===c?(c=65533,h=1):c>65535&&(c-=65536,r.push(c>>>10&1023|55296),c=56320|1023&c),r.push(c),i+=h}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var n="",r=0;for(;r<t;)n+=String.fromCharCode.apply(String,e.slice(r,r+=4096));return n}(r)}t.Buffer=u,t.SlowBuffer=function(e){+e!=e&&(e=0);return u.alloc(+e)},t.INSPECT_MAX_BYTES=50,u.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e.TYPED_ARRAY_SUPPORT:function(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()&&"function"==typeof e.subarray&&0===e.subarray(1,1).byteLength}catch(e){return!1}}(),t.kMaxLength=o(),u.poolSize=8192,u._augment=function(e){return e.__proto__=u.prototype,e},u.from=function(e,t,n){return l(null,e,t,n)},u.TYPED_ARRAY_SUPPORT&&(u.prototype.__proto__=Uint8Array.prototype,u.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&u[Symbol.species]===u&&Object.defineProperty(u,Symbol.species,{value:null,configurable:!0})),u.alloc=function(e,t,n){return function(e,t,n,r){return c(t),t<=0?a(e,t):void 0!==n?"string"==typeof r?a(e,t).fill(n,r):a(e,t).fill(n):a(e,t)}(null,e,t,n)},u.allocUnsafe=function(e){return h(null,e)},u.allocUnsafeSlow=function(e){return h(null,e)},u.isBuffer=function(e){return!(null==e||!e._isBuffer)},u.compare=function(e,t){if(!u.isBuffer(e)||!u.isBuffer(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var n=e.length,r=t.length,i=0,s=Math.min(n,r);i<s;++i)if(e[i]!==t[i]){n=e[i],r=t[i];break}return n<r?-1:r<n?1:0},u.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},u.concat=function(e,t){if(!s(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return u.alloc(0);var n;if(void 0===t)for(t=0,n=0;n<e.length;++n)t+=e[n].length;var r=u.allocUnsafe(t),i=0;for(n=0;n<e.length;++n){var o=e[n];if(!u.isBuffer(o))throw new TypeError('"list" argument must be an Array of Buffers');o.copy(r,i),i+=o.length}return r},u.byteLength=f,u.prototype._isBuffer=!0,u.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)w(this,t,t+1);return this},u.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)w(this,t,t+3),w(this,t+1,t+2);return this},u.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)w(this,t,t+7),w(this,t+1,t+6),w(this,t+2,t+5),w(this,t+3,t+4);return this},u.prototype.toString=function(){var e=0|this.length;return 0===e?"":0===arguments.length?S(this,0,e):m.apply(this,arguments)},u.prototype.equals=function(e){if(!u.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===u.compare(this,e)},u.prototype.inspect=function(){var e="",n=t.INSPECT_MAX_BYTES;return this.length>0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),"<Buffer "+e+">"},u.prototype.compare=function(e,t,n,r,i){if(!u.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(this===e)return 0;for(var s=(i>>>=0)-(r>>>=0),o=(n>>>=0)-(t>>>=0),a=Math.min(s,o),l=this.slice(r,i),c=e.slice(t,n),h=0;h<a;++h)if(l[h]!==c[h]){s=l[h],o=c[h];break}return s<o?-1:o<s?1:0},u.prototype.includes=function(e,t,n){return-1!==this.indexOf(e,t,n)},u.prototype.indexOf=function(e,t,n){return g(this,e,t,n,!0)},u.prototype.lastIndexOf=function(e,t,n){return g(this,e,t,n,!1)},u.prototype.write=function(e,t,n,r){if(void 0===t)r="utf8",n=this.length,t=0;else if(void 0===n&&"string"==typeof t)r=t,n=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t|=0,isFinite(n)?(n|=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}var i=this.length-t;if((void 0===n||n>i)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var s=!1;;)switch(r){case"hex":return b(this,e,t,n);case"utf8":case"utf-8":return y(this,e,t,n);case"ascii":return v(this,e,t,n);case"latin1":case"binary":return E(this,e,t,n);case"base64":return A(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return x(this,e,t,n);default:if(s)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),s=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function C(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(127&e[i]);return r}function k(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(e[i]);return r}function D(e,t,n){var r=e.length;(!t||t<0)&&(t=0),(!n||n<0||n>r)&&(n=r);for(var i="",s=t;s<n;++s)i+=M(e[s]);return i}function R(e,t,n){for(var r=e.slice(t,n),i="",s=0;s<r.length;s+=2)i+=String.fromCharCode(r[s]+256*r[s+1]);return i}function O(e,t,n){if(e%1!=0||e<0)throw new RangeError("offset is not uint");if(e+t>n)throw new RangeError("Trying to access beyond buffer length")}function I(e,t,n,r,i,s){if(!u.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||t<s)throw new RangeError('"value" argument is out of bounds');if(n+r>e.length)throw new RangeError("Index out of range")}function N(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,s=Math.min(e.length-n,2);i<s;++i)e[n+i]=(t&255<<8*(r?i:1-i))>>>8*(r?i:1-i)}function F(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,s=Math.min(e.length-n,4);i<s;++i)e[n+i]=t>>>8*(r?i:3-i)&255}function P(e,t,n,r,i,s){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function L(e,t,n,r,s){return s||P(e,0,n,4),i.write(e,t,n,r,23,4),n+4}function B(e,t,n,r,s){return s||P(e,0,n,8),i.write(e,t,n,r,52,8),n+8}u.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t<e&&(t=e),u.TYPED_ARRAY_SUPPORT)(n=this.subarray(e,t)).__proto__=u.prototype;else{var i=t-e;n=new u(i,void 0);for(var s=0;s<i;++s)n[s]=this[s+e]}return n},u.prototype.readUIntLE=function(e,t,n){e|=0,t|=0,n||O(e,t,this.length);for(var r=this[e],i=1,s=0;++s<t&&(i*=256);)r+=this[e+s]*i;return r},u.prototype.readUIntBE=function(e,t,n){e|=0,t|=0,n||O(e,t,this.length);for(var r=this[e+--t],i=1;t>0&&(i*=256);)r+=this[e+--t]*i;return r},u.prototype.readUInt8=function(e,t){return t||O(e,1,this.length),this[e]},u.prototype.readUInt16LE=function(e,t){return t||O(e,2,this.length),this[e]|this[e+1]<<8},u.prototype.readUInt16BE=function(e,t){return t||O(e,2,this.length),this[e]<<8|this[e+1]},u.prototype.readUInt32LE=function(e,t){return t||O(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},u.prototype.readUInt32BE=function(e,t){return t||O(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},u.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||O(e,t,this.length);for(var r=this[e],i=1,s=0;++s<t&&(i*=256);)r+=this[e+s]*i;return r>=(i*=128)&&(r-=Math.pow(2,8*t)),r},u.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||O(e,t,this.length);for(var r=t,i=1,s=this[e+--r];r>0&&(i*=256);)s+=this[e+--r]*i;return s>=(i*=128)&&(s-=Math.pow(2,8*t)),s},u.prototype.readInt8=function(e,t){return t||O(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},u.prototype.readInt16LE=function(e,t){t||O(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt16BE=function(e,t){t||O(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt32LE=function(e,t){return t||O(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},u.prototype.readInt32BE=function(e,t){return t||O(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},u.prototype.readFloatLE=function(e,t){return t||O(e,4,this.length),i.read(this,e,!0,23,4)},u.prototype.readFloatBE=function(e,t){return t||O(e,4,this.length),i.read(this,e,!1,23,4)},u.prototype.readDoubleLE=function(e,t){return t||O(e,8,this.length),i.read(this,e,!0,52,8)},u.prototype.readDoubleBE=function(e,t){return t||O(e,8,this.length),i.read(this,e,!1,52,8)},u.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||I(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,s=0;for(this[t]=255&e;++s<n&&(i*=256);)this[t+s]=e/i&255;return t+n},u.prototype.writeUIntBE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||I(this,e,t,n,Math.pow(2,8*n)-1,0);var i=n-1,s=1;for(this[t+i]=255&e;--i>=0&&(s*=256);)this[t+i]=e/s&255;return t+n},u.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||I(this,e,t,1,255,0),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},u.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||I(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):N(this,e,t,!0),t+2},u.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||I(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):N(this,e,t,!1),t+2},u.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||I(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):F(this,e,t,!0),t+4},u.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||I(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):F(this,e,t,!1),t+4},u.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);I(this,e,t,n,i-1,-i)}var s=0,o=1,a=0;for(this[t]=255&e;++s<n&&(o*=256);)e<0&&0===a&&0!==this[t+s-1]&&(a=1),this[t+s]=(e/o>>0)-a&255;return t+n},u.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);I(this,e,t,n,i-1,-i)}var s=n-1,o=1,a=0;for(this[t+s]=255&e;--s>=0&&(o*=256);)e<0&&0===a&&0!==this[t+s+1]&&(a=1),this[t+s]=(e/o>>0)-a&255;return t+n},u.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||I(this,e,t,1,127,-128),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},u.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||I(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):N(this,e,t,!0),t+2},u.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||I(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):N(this,e,t,!1),t+2},u.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||I(this,e,t,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):F(this,e,t,!0),t+4},u.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||I(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):F(this,e,t,!1),t+4},u.prototype.writeFloatLE=function(e,t,n){return L(this,e,t,!0,n)},u.prototype.writeFloatBE=function(e,t,n){return L(this,e,t,!1,n)},u.prototype.writeDoubleLE=function(e,t,n){return B(this,e,t,!0,n)},u.prototype.writeDoubleBE=function(e,t,n){return B(this,e,t,!1,n)},u.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r<n&&(r=n),r===n)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);var i,s=r-n;if(this===e&&n<t&&t<r)for(i=s-1;i>=0;--i)e[i+t]=this[i+n];else if(s<1e3||!u.TYPED_ARRAY_SUPPORT)for(i=0;i<s;++i)e[i+t]=this[i+n];else Uint8Array.prototype.set.call(e,this.subarray(n,n+s),t);return s},u.prototype.fill=function(e,t,n,r){if("string"==typeof e){if("string"==typeof t?(r=t,t=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),1===e.length){var i=e.charCodeAt(0);i<256&&(e=i)}if(void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!u.isEncoding(r))throw new TypeError("Unknown encoding: "+r)}else"number"==typeof e&&(e&=255);if(t<0||this.length<t||this.length<n)throw new RangeError("Out of range index");if(n<=t)return this;var s;if(t>>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(s=t;s<n;++s)this[s]=e;else{var o=u.isBuffer(e)?e:W(new u(e,r).toString()),a=o.length;for(s=0;s<n-t;++s)this[s+t]=o[s%a]}return this};var U=/[^+\/0-9A-Za-z-_]/g;function M(e){return e<16?"0"+e.toString(16):e.toString(16)}function W(e,t){var n;t=t||1/0;for(var r=e.length,i=null,s=[],o=0;o<r;++o){if((n=e.charCodeAt(o))>55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&s.push(239,191,189);continue}if(o+1===r){(t-=3)>-1&&s.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&s.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&s.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;s.push(n)}else if(n<2048){if((t-=2)<0)break;s.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;s.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;s.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return s}function j(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(U,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function z(e,t,n,r){for(var i=0;i<r&&!(i+n>=t.length||i>=e.length);++i)t[i+n]=e[i];return i}}).call(this,n(6))},function(e,t,n){e.exports=i;var r=n(42).EventEmitter;function i(){r.call(this)}n(13)(i,r),i.Readable=n(43),i.Writable=n(138),i.Duplex=n(139),i.Transform=n(140),i.PassThrough=n(141),i.Stream=i,i.prototype.pipe=function(e,t){var n=this;function i(t){e.writable&&!1===e.write(t)&&n.pause&&n.pause()}function s(){n.readable&&n.resume&&n.resume()}n.on("data",i),e.on("drain",s),e._isStdio||t&&!1===t.end||(n.on("end",a),n.on("close",u));var o=!1;function a(){o||(o=!0,e.end())}function u(){o||(o=!0,"function"==typeof e.destroy&&e.destroy())}function l(e){if(c(),0===r.listenerCount(this,"error"))throw e}function c(){n.removeListener("data",i),e.removeListener("drain",s),n.removeListener("end",a),n.removeListener("close",u),n.removeListener("error",l),e.removeListener("error",l),n.removeListener("end",c),n.removeListener("close",c),e.removeListener("close",c)}return n.on("error",l),e.on("error",l),n.on("end",c),n.on("close",c),e.on("close",c),e.emit("pipe",n),e}},function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var r=n(1),i=n(0);const s=new TextDecoder("utf-8");class o{static fromResponse({url:e,response:t,date:n,noRW:i,isLive:s}){const a=t.body?new r.a(t.body.getReader(),!1):null,u=Number(t.headers.get("x-redirect-status")||t.status),l=t.statusText;let c=t.headers;const h=c.get("x-proxy-set-cookie");if(h){const e=[];h.split(",").forEach(t=>{const n=t.split(";",1)[0].trim();n.indexOf("=")>0&&e.push(n)}),e.length&&(c=new Headers(c),c.set("x-wabac-preset-cookie",e.join(";")),console.log("cookies",e.join(";")))}return new o({payload:a,status:u,statusText:l,headers:c,url:e,date:n,noRW:i,isLive:s})}constructor({payload:e,status:t,statusText:n,headers:r,url:i,date:s,extraOpts:o=null,noRW:a=!1,isLive:u=!1}){this.reader=null,this.buffer=null,e&&e[Symbol.asyncIterator]?this.reader=e:this.buffer=e,this.status=t,this.statusText=n,this.headers=r,this.url=i,this.date=s,this.extraOpts=o,this.noRW=a,this.isLive=u}async getText(){const e=await this.getBuffer();return"string"==typeof e?e:s.decode(e)}async getBuffer(){return this.buffer||(this.buffer=await this.reader.readFully()),this.buffer}async setContent(e){e instanceof r.b?(this.reader=e,this.buffer=null):e.getReader?(this.reader=new r.a(e.getReader()),this.buffer=null):(this.reader=null,this.buffer=e)}async*[Symbol.asyncIterator](){this.buffer?yield this.buffer:this.reader&&(yield*this.reader)}setRange(e){const t=e.match(/^bytes\=(\d+)\-(\d+)?$/);let n=0;if(this.buffer)n=this.buffer.length;else if(this.reader&&(n=Number(this.headers.get("content-length")),!n))return;if(!t)return this.status=416,this.statusText="Range Not Satisfiable",this.headers.set("Content-Range","*/"+n),!1;const r=Number(t[1]),i=Number(t[2])||n-1;return this.buffer?this.buffer=this.buffer.slice(r,i+1):this.reader&&(0===r&&i===n-1||this.reader.setLimitSkip(i-r+1,r)),this.headers.set("Content-Range",`bytes ${r}-${i}/${n}`),this.headers.set("Content-Length",i-r+1),this.status=206,this.statusText="Partial Content",!0}makeResponse(){let e=null;Object(i.i)(this.status)||(e=this.buffer||!this.reader?this.buffer:this.reader.getReadableStream());const t=new Response(e,{status:this.status,statusText:this.statusText,headers:this.headers});return t.date=this.date,t}}},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";const r=function(e,t){const n=t.exec(e);return!(null==n)};t.isExist=function(e){return void 0!==e},t.isEmptyObject=function(e){return 0===Object.keys(e).length},t.merge=function(e,t,n){if(t){const r=Object.keys(t),i=r.length;for(let s=0;s<i;s++)e[r[s]]="strict"===n?[t[r[s]]]:t[r[s]]}},t.getValue=function(e){return t.isExist(e)?e:""},t.buildOptions=function(e,t,n){var r={};if(!e)return t;for(let i=0;i<n.length;i++)void 0!==e[n[i]]?r[n[i]]=e[n[i]]:r[n[i]]=t[n[i]];return r},t.doesMatch=r,t.doesNotMatch=function(e,t){return!r(e,t)},t.getAllMatches=function(e,t){const n=[];let r=t.exec(e);for(;r;){const i=[],s=r.length;for(let e=0;e<s;e++)i.push(r[e]);n.push(i),r=t.exec(e)}return n}},,function(e,t,n){"use strict";var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;function i(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var n=t.shift();if(n){if("object"!=typeof n)throw new TypeError(n+"must be non-object");for(var r in n)i(n,r)&&(e[r]=n[r])}}return e},t.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var s={arraySet:function(e,t,n,r,i){if(t.subarray&&e.subarray)e.set(t.subarray(n,n+r),i);else for(var s=0;s<r;s++)e[i+s]=t[n+s]},flattenChunks:function(e){var t,n,r,i,s,o;for(r=0,t=0,n=e.length;t<n;t++)r+=e[t].length;for(o=new Uint8Array(r),i=0,t=0,n=e.length;t<n;t++)s=e[t],o.set(s,i),i+=s.length;return o}},o={arraySet:function(e,t,n,r,i){for(var s=0;s<r;s++)e[i+s]=t[n+s]},flattenChunks:function(e){return[].concat.apply([],e)}};t.setTyped=function(e){e?(t.Buf8=Uint8Array,t.Buf16=Uint16Array,t.Buf32=Int32Array,t.assign(t,s)):(t.Buf8=Array,t.Buf16=Array,t.Buf32=Array,t.assign(t,o))},t.setTyped(r)},function(e,t,n){"use strict";var r=n(33),i=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};e.exports=h;var s=Object.create(n(23));s.inherits=n(13);var o=n(68),a=n(45);s.inherits(h,o);for(var u=i(a.prototype),l=0;l<u.length;l++){var c=u[l];h.prototype[c]||(h.prototype[c]=a.prototype[c])}function h(e){if(!(this instanceof h))return new h(e);o.call(this,e),a.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",d)}function d(){this.allowHalfOpen||this._writableState.ended||r.nextTick(p,this)}function p(e){e.end()}Object.defineProperty(h.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(h.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),h.prototype._destroy=function(e,t){this.push(null),this.end(),r.nextTick(t,e)}},function(e,t,n){"use strict";var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;function i(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var n=t.shift();if(n){if("object"!=typeof n)throw new TypeError(n+"must be non-object");for(var r in n)i(n,r)&&(e[r]=n[r])}}return e},t.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var s={arraySet:function(e,t,n,r,i){if(t.subarray&&e.subarray)e.set(t.subarray(n,n+r),i);else for(var s=0;s<r;s++)e[i+s]=t[n+s]},flattenChunks:function(e){var t,n,r,i,s,o;for(r=0,t=0,n=e.length;t<n;t++)r+=e[t].length;for(o=new Uint8Array(r),i=0,t=0,n=e.length;t<n;t++)s=e[t],o.set(s,i),i+=s.length;return o}},o={arraySet:function(e,t,n,r,i){for(var s=0;s<r;s++)e[i+s]=t[n+s]},flattenChunks:function(e){return[].concat.apply([],e)}};t.setTyped=function(e){e?(t.Buf8=Uint8Array,t.Buf16=Uint16Array,t.Buf32=Int32Array,t.assign(t,s)):(t.Buf8=Array,t.Buf16=Array,t.Buf32=Array,t.assign(t,o))},t.setTyped(r)},function(e,t,n){"use strict";t.MT={POS_INT:0,NEG_INT:1,BYTE_STRING:2,UTF8_STRING:3,ARRAY:4,MAP:5,TAG:6,SIMPLE_FLOAT:7},t.TAG={DATE_STRING:0,DATE_EPOCH:1,POS_BIGINT:2,NEG_BIGINT:3,DECIMAL_FRAC:4,BIGFLOAT:5,BASE64URL_EXPECTED:21,BASE64_EXPECTED:22,BASE16_EXPECTED:23,CBOR:24,URI:32,BASE64URL:33,BASE64:34,REGEXP:35,MIME:36},t.NUMBYTES={ZERO:0,ONE:24,TWO:25,FOUR:26,EIGHT:27,INDEFINITE:31},t.SIMPLE={FALSE:20,TRUE:21,NULL:22,UNDEFINED:23},t.SYMS={NULL:Symbol("null"),UNDEFINED:Symbol("undef"),PARENT:Symbol("parent"),BREAK:Symbol("break"),STREAM:Symbol("stream")},t.SHIFT32=Math.pow(2,32)},function(e,t){"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}}},function(e,t){var n,r,i=e.exports={};function s(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function a(e){if(n===setTimeout)return setTimeout(e,0);if((n===s||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:s}catch(e){n=s}try{r="function"==typeof clearTimeout?clearTimeout:o}catch(e){r=o}}();var u,l=[],c=!1,h=-1;function d(){c&&u&&(c=!1,u.length?l=u.concat(l):h=-1,l.length&&p())}function p(){if(!c){var e=a(d);c=!0;for(var t=l.length;t;){for(u=l,l=[];++h<t;)u&&u[h].run();h=-1,t=l.length}u=null,c=!1,function(e){if(r===clearTimeout)return clearTimeout(e);if((r===o||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(e);try{r(e)}catch(t){try{return r.call(null,e)}catch(t){return r.call(this,e)}}}(e)}}function f(e,t){this.fun=e,this.array=t}function m(){}i.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];l.push(new f(e,t)),1!==l.length||c||a(p)},f.prototype.run=function(){this.fun.apply(null,this.array)},i.title="browser",i.browser=!0,i.env={},i.argv=[],i.version="",i.versions={},i.on=m,i.addListener=m,i.once=m,i.off=m,i.removeListener=m,i.removeAllListeners=m,i.emit=m,i.prependListener=m,i.prependOnceListener=m,i.listeners=function(e){return[]},i.binding=function(e){throw new Error("process.binding is not supported")},i.cwd=function(){return"/"},i.chdir=function(e){throw new Error("process.chdir is not supported")},i.umask=function(){return 0}},function(e,t,n){"use strict";function r(e){return null==e}e.exports.isNothing=r,e.exports.isObject=function(e){return"object"==typeof e&&null!==e},e.exports.toArray=function(e){return Array.isArray(e)?e:r(e)?[]:[e]},e.exports.repeat=function(e,t){var n,r="";for(n=0;n<t;n+=1)r+=e;return r},e.exports.isNegativeZero=function(e){return 0===e&&Number.NEGATIVE_INFINITY===1/e},e.exports.extend=function(e,t){var n,r,i,s;if(t)for(n=0,r=(s=Object.keys(t)).length;n<r;n+=1)e[i=s[n]]=t[i];return e}},function(e,t,n){"use strict";var r=n(15),i=n(25),s=n(2);function o(e,t,n){var r=[];return e.include.forEach((function(e){n=o(e,t,n)})),e[t].forEach((function(e){n.forEach((function(t,n){t.tag===e.tag&&t.kind===e.kind&&r.push(n)})),n.push(e)})),n.filter((function(e,t){return-1===r.indexOf(t)}))}function a(e){this.include=e.include||[],this.implicit=e.implicit||[],this.explicit=e.explicit||[],this.implicit.forEach((function(e){if(e.loadKind&&"scalar"!==e.loadKind)throw new i("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.")})),this.compiledImplicit=o(this,"implicit",[]),this.compiledExplicit=o(this,"explicit",[]),this.compiledTypeMap=function(){var e,t,n={scalar:{},sequence:{},mapping:{},fallback:{}};function r(e){n[e.kind][e.tag]=n.fallback[e.tag]=e}for(e=0,t=arguments.length;e<t;e+=1)arguments[e].forEach(r);return n}(this.compiledImplicit,this.compiledExplicit)}a.DEFAULT=null,a.create=function(){var e,t;switch(arguments.length){case 1:e=a.DEFAULT,t=arguments[0];break;case 2:e=arguments[0],t=arguments[1];break;default:throw new i("Wrong number of arguments for Schema.create function")}if(e=r.toArray(e),t=r.toArray(t),!e.every((function(e){return e instanceof a})))throw new i("Specified list of super schemas (or a single Schema object) contains a non-Schema object.");if(!t.every((function(e){return e instanceof s})))throw new i("Specified list of YAML types (or a single Type object) contains a non-Type object.");return new a({include:e,explicit:t})},e.exports=a},function(e,t,n){"use strict";(function(e){const r=n(27),i=n(18).BigNumber,s=n(12),o=s.NUMBYTES,a=s.SHIFT32;t.hasBigInt="function"==typeof BigInt;const u="function"==typeof TextDecoder?TextDecoder:r.TextDecoder;if(u){const e=new u("utf8",{fatal:!0,ignoreBOM:!0});t.utf8=t=>e.decode(t),t.utf8.checksUTF8=!0}else t.utf8=e=>e.toString("utf8"),t.utf8.checksUTF8=!1;t.parseCBORint=function(e,t){switch(e){case o.ONE:return t.readUInt8(0);case o.TWO:return t.readUInt16BE(0);case o.FOUR:return t.readUInt32BE(0);case o.EIGHT:const n=t.readUInt32BE(0),r=t.readUInt32BE(4);return n>2097151?new i(n).times(a).plus(r):n*a+r;default:throw new Error("Invalid additional info for int: "+e)}},t.writeHalf=function(t,n){const r=e.allocUnsafe(4);r.writeFloatBE(n,0);const i=r.readUInt32BE(0);if(0!=(8191&i))return!1;let s=i>>16&32768;const o=i>>23&255,a=8388607&i;if(o>=113&&o<=142)s+=(o-112<<10)+(a>>13);else{if(!(o>=103&&o<113))return!1;if(a&(1<<126-o)-1)return!1;s+=a+8388608>>126-o}return t.writeUInt16BE(s),!0},t.parseHalf=function(e){const t=128&e[0]?-1:1,n=(124&e[0])>>2,r=(3&e[0])<<8|e[1];return n?31===n?t*(r?NaN:Infinity):t*Math.pow(2,n-25)*(1024+r):5.960464477539063e-8*t*r},t.parseCBORfloat=function(e){switch(e.length){case 2:return t.parseHalf(e);case 4:return e.readFloatBE(0);case 8:return e.readDoubleBE(0);default:throw new Error("Invalid float size: "+e.length)}},t.hex=function(t){return e.from(t.replace(/^0x/,""),"hex")},t.bin=function(t){let n=0,r=(t=t.replace(/\s/g,"")).length%8||8;const i=[];for(;r<=t.length;)i.push(parseInt(t.slice(n,r),2)),n=r,r+=8;return e.from(i)},t.extend=function(e={},...t){const n=t.length;for(let r=0;r<n;r++){const n=t[r];for(const t in n){const r=n[t];e[t]=r}}return e},t.arrayEqual=function(e,t){return null==e&&null==t||null!=e&&null!=t&&(e.length===t.length&&e.every((e,n)=>e===t[n]))},t.bufferEqual=function(t,n){if(null==t&&null==n)return!0;if(null==t||null==n)return!1;if(!e.isBuffer(t)||!e.isBuffer(n)||t.length!==n.length)return!1;const r=t.length;let i,s,o=!0;for(i=s=0;s<r;i=++s){const e=t[i];o=o&&n[i]===e}return!!o},t.bufferToBignumber=function(e){return new i(e.toString("hex"),16)},t.bufferToBigInt=function(e){return BigInt("0x"+e.toString("hex"))},t.guessEncoding=function(t){if("string"==typeof t)return"hex";if(!e.isBuffer(t))throw new Error("Unknown input type")}}).call(this,n(3).Buffer)},function(e,t,n){var r;!function(i){"use strict";var s,o=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,a=Math.ceil,u=Math.floor,l="[BigNumber Error] ",c=l+"Number primitive has more than 15 significant digits: ",h=1e14,d=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],p=1e9;function f(e){var t=0|e;return e>0||e===t?t:t-1}function m(e){for(var t,n,r=1,i=e.length,s=e[0]+"";r<i;){for(n=14-(t=e[r++]+"").length;n--;t="0"+t);s+=t}for(i=s.length;48===s.charCodeAt(--i););return s.slice(0,i+1||1)}function w(e,t){var n,r,i=e.c,s=t.c,o=e.s,a=t.s,u=e.e,l=t.e;if(!o||!a)return null;if(n=i&&!i[0],r=s&&!s[0],n||r)return n?r?0:-a:o;if(o!=a)return o;if(n=o<0,r=u==l,!i||!s)return r?0:!i^n?1:-1;if(!r)return u>l^n?1:-1;for(a=(u=i.length)<(l=s.length)?u:l,o=0;o<a;o++)if(i[o]!=s[o])return i[o]>s[o]^n?1:-1;return u==l?0:u>l^n?1:-1}function g(e,t,n,r){if(e<t||e>n||e!==u(e))throw Error(l+(r||"Argument")+("number"==typeof e?e<t||e>n?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function _(e){var t=e.c.length-1;return f(e.e/14)==t&&e.c[t]%2!=0}function b(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function y(e,t,n){var r,i;if(t<0){for(i=n+".";++t;i+=n);e=i+e}else if(++t>(r=e.length)){for(i=n,t-=r;--t;i+=n);e+=i}else t<r&&(e=e.slice(0,t)+"."+e.slice(t));return e}(s=function e(t){var n,r,i,s,v,E,A,x,T,S=M.prototype={constructor:M,toString:null,valueOf:null},C=new M(1),k=20,D=4,R=-7,O=21,I=-1e7,N=1e7,F=!1,P=1,L=0,B={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:" ",suffix:""},U="0123456789abcdefghijklmnopqrstuvwxyz";function M(e,t){var n,s,a,l,h,d,p,f,m=this;if(!(m instanceof M))return new M(e,t);if(null==t){if(e&&!0===e._isBigNumber)return m.s=e.s,void(!e.c||e.e>N?m.c=m.e=null:e.e<I?m.c=[m.e=0]:(m.e=e.e,m.c=e.c.slice()));if((d="number"==typeof e)&&0*e==0){if(m.s=1/e<0?(e=-e,-1):1,e===~~e){for(l=0,h=e;h>=10;h/=10,l++);return void(l>N?m.c=m.e=null:(m.e=l,m.c=[e]))}f=String(e)}else{if(!o.test(f=String(e)))return i(m,f,d);m.s=45==f.charCodeAt(0)?(f=f.slice(1),-1):1}(l=f.indexOf("."))>-1&&(f=f.replace(".","")),(h=f.search(/e/i))>0?(l<0&&(l=h),l+=+f.slice(h+1),f=f.substring(0,h)):l<0&&(l=f.length)}else{if(g(t,2,U.length,"Base"),10==t)return H(m=new M(e),k+m.e+1,D);if(f=String(e),d="number"==typeof e){if(0*e!=0)return i(m,f,d,t);if(m.s=1/e<0?(f=f.slice(1),-1):1,M.DEBUG&&f.replace(/^0\.0*|\./,"").length>15)throw Error(c+e)}else m.s=45===f.charCodeAt(0)?(f=f.slice(1),-1):1;for(n=U.slice(0,t),l=h=0,p=f.length;h<p;h++)if(n.indexOf(s=f.charAt(h))<0){if("."==s){if(h>l){l=p;continue}}else if(!a&&(f==f.toUpperCase()&&(f=f.toLowerCase())||f==f.toLowerCase()&&(f=f.toUpperCase()))){a=!0,h=-1,l=0;continue}return i(m,String(e),d,t)}d=!1,(l=(f=r(f,t,10,m.s)).indexOf("."))>-1?f=f.replace(".",""):l=f.length}for(h=0;48===f.charCodeAt(h);h++);for(p=f.length;48===f.charCodeAt(--p););if(f=f.slice(h,++p)){if(p-=h,d&&M.DEBUG&&p>15&&(e>9007199254740991||e!==u(e)))throw Error(c+m.s*e);if((l=l-h-1)>N)m.c=m.e=null;else if(l<I)m.c=[m.e=0];else{if(m.e=l,m.c=[],h=(l+1)%14,l<0&&(h+=14),h<p){for(h&&m.c.push(+f.slice(0,h)),p-=14;h<p;)m.c.push(+f.slice(h,h+=14));h=14-(f=f.slice(h)).length}else h-=p;for(;h--;f+="0");m.c.push(+f)}}else m.c=[m.e=0]}function W(e,t,n,r){var i,s,o,a,u;if(null==n?n=D:g(n,0,8),!e.c)return e.toString();if(i=e.c[0],o=e.e,null==t)u=m(e.c),u=1==r||2==r&&(o<=R||o>=O)?b(u,o):y(u,o,"0");else if(s=(e=H(new M(e),t,n)).e,a=(u=m(e.c)).length,1==r||2==r&&(t<=s||s<=R)){for(;a<t;u+="0",a++);u=b(u,s)}else if(t-=o,u=y(u,s,"0"),s+1>a){if(--t>0)for(u+=".";t--;u+="0");}else if((t+=s-a)>0)for(s+1==a&&(u+=".");t--;u+="0");return e.s<0&&i?"-"+u:u}function j(e,t){for(var n,r=1,i=new M(e[0]);r<e.length;r++){if(!(n=new M(e[r])).s){i=n;break}t.call(i,n)&&(i=n)}return i}function z(e,t,n){for(var r=1,i=t.length;!t[--i];t.pop());for(i=t[0];i>=10;i/=10,r++);return(n=r+14*n-1)>N?e.c=e.e=null:n<I?e.c=[e.e=0]:(e.e=n,e.c=t),e}function H(e,t,n,r){var i,s,o,l,c,p,f,m=e.c,w=d;if(m){e:{for(i=1,l=m[0];l>=10;l/=10,i++);if((s=t-i)<0)s+=14,o=t,f=(c=m[p=0])/w[i-o-1]%10|0;else if((p=a((s+1)/14))>=m.length){if(!r)break e;for(;m.length<=p;m.push(0));c=f=0,i=1,o=(s%=14)-14+1}else{for(c=l=m[p],i=1;l>=10;l/=10,i++);f=(o=(s%=14)-14+i)<0?0:c/w[i-o-1]%10|0}if(r=r||t<0||null!=m[p+1]||(o<0?c:c%w[i-o-1]),r=n<4?(f||r)&&(0==n||n==(e.s<0?3:2)):f>5||5==f&&(4==n||r||6==n&&(s>0?o>0?c/w[i-o]:0:m[p-1])%10&1||n==(e.s<0?8:7)),t<1||!m[0])return m.length=0,r?(t-=e.e+1,m[0]=w[(14-t%14)%14],e.e=-t||0):m[0]=e.e=0,e;if(0==s?(m.length=p,l=1,p--):(m.length=p+1,l=w[14-s],m[p]=o>0?u(c/w[i-o]%w[o])*l:0),r)for(;;){if(0==p){for(s=1,o=m[0];o>=10;o/=10,s++);for(o=m[0]+=l,l=1;o>=10;o/=10,l++);s!=l&&(e.e++,m[0]==h&&(m[0]=1));break}if(m[p]+=l,m[p]!=h)break;m[p--]=0,l=1}for(s=m.length;0===m[--s];m.pop());}e.e>N?e.c=e.e=null:e.e<I&&(e.c=[e.e=0])}return e}function G(e){var t,n=e.e;return null===n?e.toString():(t=m(e.c),t=n<=R||n>=O?b(t,n):y(t,n,"0"),e.s<0?"-"+t:t)}return M.clone=e,M.ROUND_UP=0,M.ROUND_DOWN=1,M.ROUND_CEIL=2,M.ROUND_FLOOR=3,M.ROUND_HALF_UP=4,M.ROUND_HALF_DOWN=5,M.ROUND_HALF_EVEN=6,M.ROUND_HALF_CEIL=7,M.ROUND_HALF_FLOOR=8,M.EUCLID=9,M.config=M.set=function(e){var t,n;if(null!=e){if("object"!=typeof e)throw Error(l+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(g(n=e[t],0,p,t),k=n),e.hasOwnProperty(t="ROUNDING_MODE")&&(g(n=e[t],0,8,t),D=n),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((n=e[t])&&n.pop?(g(n[0],-p,0,t),g(n[1],0,p,t),R=n[0],O=n[1]):(g(n,-p,p,t),R=-(O=n<0?-n:n))),e.hasOwnProperty(t="RANGE"))if((n=e[t])&&n.pop)g(n[0],-p,-1,t),g(n[1],1,p,t),I=n[0],N=n[1];else{if(g(n,-p,p,t),!n)throw Error(l+t+" cannot be zero: "+n);I=-(N=n<0?-n:n)}if(e.hasOwnProperty(t="CRYPTO")){if((n=e[t])!==!!n)throw Error(l+t+" not true or false: "+n);if(n){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw F=!n,Error(l+"crypto unavailable");F=n}else F=n}if(e.hasOwnProperty(t="MODULO_MODE")&&(g(n=e[t],0,9,t),P=n),e.hasOwnProperty(t="POW_PRECISION")&&(g(n=e[t],0,p,t),L=n),e.hasOwnProperty(t="FORMAT")){if("object"!=typeof(n=e[t]))throw Error(l+t+" not an object: "+n);B=n}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(n=e[t])||/^.$|[+-.\s]|(.).*\1/.test(n))throw Error(l+t+" invalid: "+n);U=n}}return{DECIMAL_PLACES:k,ROUNDING_MODE:D,EXPONENTIAL_AT:[R,O],RANGE:[I,N],CRYPTO:F,MODULO_MODE:P,POW_PRECISION:L,FORMAT:B,ALPHABET:U}},M.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!M.DEBUG)return!0;var t,n,r=e.c,i=e.e,s=e.s;e:if("[object Array]"=={}.toString.call(r)){if((1===s||-1===s)&&i>=-p&&i<=p&&i===u(i)){if(0===r[0]){if(0===i&&1===r.length)return!0;break e}if((t=(i+1)%14)<1&&(t+=14),String(r[0]).length==t){for(t=0;t<r.length;t++)if((n=r[t])<0||n>=h||n!==u(n))break e;if(0!==n)return!0}}}else if(null===r&&null===i&&(null===s||1===s||-1===s))return!0;throw Error(l+"Invalid BigNumber: "+e)},M.maximum=M.max=function(){return j(arguments,S.lt)},M.minimum=M.min=function(){return j(arguments,S.gt)},M.random=(s=9007199254740992*Math.random()&2097151?function(){return u(9007199254740992*Math.random())}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(e){var t,n,r,i,o,c=0,h=[],f=new M(C);if(null==e?e=k:g(e,0,p),i=a(e/14),F)if(crypto.getRandomValues){for(t=crypto.getRandomValues(new Uint32Array(i*=2));c<i;)(o=131072*t[c]+(t[c+1]>>>11))>=9e15?(n=crypto.getRandomValues(new Uint32Array(2)),t[c]=n[0],t[c+1]=n[1]):(h.push(o%1e14),c+=2);c=i/2}else{if(!crypto.randomBytes)throw F=!1,Error(l+"crypto unavailable");for(t=crypto.randomBytes(i*=7);c<i;)(o=281474976710656*(31&t[c])+1099511627776*t[c+1]+4294967296*t[c+2]+16777216*t[c+3]+(t[c+4]<<16)+(t[c+5]<<8)+t[c+6])>=9e15?crypto.randomBytes(7).copy(t,c):(h.push(o%1e14),c+=7);c=i/7}if(!F)for(;c<i;)(o=s())<9e15&&(h[c++]=o%1e14);for(e%=14,(i=h[--c])&&e&&(o=d[14-e],h[c]=u(i/o)*o);0===h[c];h.pop(),c--);if(c<0)h=[r=0];else{for(r=-1;0===h[0];h.splice(0,1),r-=14);for(c=1,o=h[0];o>=10;o/=10,c++);c<14&&(r-=14-c)}return f.e=r,f.c=h,f}),M.sum=function(){for(var e=1,t=arguments,n=new M(t[0]);e<t.length;)n=n.plus(t[e++]);return n},r=function(){function e(e,t,n,r){for(var i,s,o=[0],a=0,u=e.length;a<u;){for(s=o.length;s--;o[s]*=t);for(o[0]+=r.indexOf(e.charAt(a++)),i=0;i<o.length;i++)o[i]>n-1&&(null==o[i+1]&&(o[i+1]=0),o[i+1]+=o[i]/n|0,o[i]%=n)}return o.reverse()}return function(t,r,i,s,o){var a,u,l,c,h,d,p,f,w=t.indexOf("."),g=k,_=D;for(w>=0&&(c=L,L=0,t=t.replace(".",""),d=(f=new M(r)).pow(t.length-w),L=c,f.c=e(y(m(d.c),d.e,"0"),10,i,"0123456789"),f.e=f.c.length),l=c=(p=e(t,r,i,o?(a=U,"0123456789"):(a="0123456789",U))).length;0==p[--c];p.pop());if(!p[0])return a.charAt(0);if(w<0?--l:(d.c=p,d.e=l,d.s=s,p=(d=n(d,f,g,_,i)).c,h=d.r,l=d.e),w=p[u=l+g+1],c=i/2,h=h||u<0||null!=p[u+1],h=_<4?(null!=w||h)&&(0==_||_==(d.s<0?3:2)):w>c||w==c&&(4==_||h||6==_&&1&p[u-1]||_==(d.s<0?8:7)),u<1||!p[0])t=h?y(a.charAt(1),-g,a.charAt(0)):a.charAt(0);else{if(p.length=u,h)for(--i;++p[--u]>i;)p[u]=0,u||(++l,p=[1].concat(p));for(c=p.length;!p[--c];);for(w=0,t="";w<=c;t+=a.charAt(p[w++]));t=y(t,l,a.charAt(0))}return t}}(),n=function(){function e(e,t,n){var r,i,s,o,a=0,u=e.length,l=t%1e7,c=t/1e7|0;for(e=e.slice();u--;)a=((i=l*(s=e[u]%1e7)+(r=c*s+(o=e[u]/1e7|0)*l)%1e7*1e7+a)/n|0)+(r/1e7|0)+c*o,e[u]=i%n;return a&&(e=[a].concat(e)),e}function t(e,t,n,r){var i,s;if(n!=r)s=n>r?1:-1;else for(i=s=0;i<n;i++)if(e[i]!=t[i]){s=e[i]>t[i]?1:-1;break}return s}function n(e,t,n,r){for(var i=0;n--;)e[n]-=i,i=e[n]<t[n]?1:0,e[n]=i*r+e[n]-t[n];for(;!e[0]&&e.length>1;e.splice(0,1));}return function(r,i,s,o,a){var l,c,d,p,m,w,g,_,b,y,v,E,A,x,T,S,C,k=r.s==i.s?1:-1,D=r.c,R=i.c;if(!(D&&D[0]&&R&&R[0]))return new M(r.s&&i.s&&(D?!R||D[0]!=R[0]:R)?D&&0==D[0]||!R?0*k:k/0:NaN);for(b=(_=new M(k)).c=[],k=s+(c=r.e-i.e)+1,a||(a=h,c=f(r.e/14)-f(i.e/14),k=k/14|0),d=0;R[d]==(D[d]||0);d++);if(R[d]>(D[d]||0)&&c--,k<0)b.push(1),p=!0;else{for(x=D.length,S=R.length,d=0,k+=2,(m=u(a/(R[0]+1)))>1&&(R=e(R,m,a),D=e(D,m,a),S=R.length,x=D.length),A=S,v=(y=D.slice(0,S)).length;v<S;y[v++]=0);C=R.slice(),C=[0].concat(C),T=R[0],R[1]>=a/2&&T++;do{if(m=0,(l=t(R,y,S,v))<0){if(E=y[0],S!=v&&(E=E*a+(y[1]||0)),(m=u(E/T))>1)for(m>=a&&(m=a-1),g=(w=e(R,m,a)).length,v=y.length;1==t(w,y,g,v);)m--,n(w,S<g?C:R,g,a),g=w.length,l=1;else 0==m&&(l=m=1),g=(w=R.slice()).length;if(g<v&&(w=[0].concat(w)),n(y,w,v,a),v=y.length,-1==l)for(;t(R,y,S,v)<1;)m++,n(y,S<v?C:R,v,a),v=y.length}else 0===l&&(m++,y=[0]);b[d++]=m,y[0]?y[v++]=D[A]||0:(y=[D[A]],v=1)}while((A++<x||null!=y[0])&&k--);p=null!=y[0],b[0]||b.splice(0,1)}if(a==h){for(d=1,k=b[0];k>=10;k/=10,d++);H(_,s+(_.e=d+14*c-1)+1,o,p)}else _.e=c,_.r=+p;return _}}(),v=/^(-?)0([xbo])(?=\w[\w.]*$)/i,E=/^([^.]+)\.$/,A=/^\.([^.]+)$/,x=/^-?(Infinity|NaN)$/,T=/^\s*\+(?=[\w.])|^\s+|\s+$/g,i=function(e,t,n,r){var i,s=n?t:t.replace(T,"");if(x.test(s))e.s=isNaN(s)?null:s<0?-1:1;else{if(!n&&(s=s.replace(v,(function(e,t,n){return i="x"==(n=n.toLowerCase())?16:"b"==n?2:8,r&&r!=i?e:t})),r&&(i=r,s=s.replace(E,"$1").replace(A,"0.$1")),t!=s))return new M(s,i);if(M.DEBUG)throw Error(l+"Not a"+(r?" base "+r:"")+" number: "+t);e.s=null}e.c=e.e=null},S.absoluteValue=S.abs=function(){var e=new M(this);return e.s<0&&(e.s=1),e},S.comparedTo=function(e,t){return w(this,new M(e,t))},S.decimalPlaces=S.dp=function(e,t){var n,r,i,s=this;if(null!=e)return g(e,0,p),null==t?t=D:g(t,0,8),H(new M(s),e+s.e+1,t);if(!(n=s.c))return null;if(r=14*((i=n.length-1)-f(this.e/14)),i=n[i])for(;i%10==0;i/=10,r--);return r<0&&(r=0),r},S.dividedBy=S.div=function(e,t){return n(this,new M(e,t),k,D)},S.dividedToIntegerBy=S.idiv=function(e,t){return n(this,new M(e,t),0,1)},S.exponentiatedBy=S.pow=function(e,t){var n,r,i,s,o,c,h,d,p=this;if((e=new M(e)).c&&!e.isInteger())throw Error(l+"Exponent not an integer: "+G(e));if(null!=t&&(t=new M(t)),o=e.e>14,!p.c||!p.c[0]||1==p.c[0]&&!p.e&&1==p.c.length||!e.c||!e.c[0])return d=new M(Math.pow(+G(p),o?2-_(e):+G(e))),t?d.mod(t):d;if(c=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new M(NaN);(r=!c&&p.isInteger()&&t.isInteger())&&(p=p.mod(t))}else{if(e.e>9&&(p.e>0||p.e<-1||(0==p.e?p.c[0]>1||o&&p.c[1]>=24e7:p.c[0]<8e13||o&&p.c[0]<=9999975e7)))return s=p.s<0&&_(e)?-0:0,p.e>-1&&(s=1/s),new M(c?1/s:s);L&&(s=a(L/14+2))}for(o?(n=new M(.5),c&&(e.s=1),h=_(e)):h=(i=Math.abs(+G(e)))%2,d=new M(C);;){if(h){if(!(d=d.times(p)).c)break;s?d.c.length>s&&(d.c.length=s):r&&(d=d.mod(t))}if(i){if(0===(i=u(i/2)))break;h=i%2}else if(H(e=e.times(n),e.e+1,1),e.e>14)h=_(e);else{if(0===(i=+G(e)))break;h=i%2}p=p.times(p),s?p.c&&p.c.length>s&&(p.c.length=s):r&&(p=p.mod(t))}return r?d:(c&&(d=C.div(d)),t?d.mod(t):s?H(d,L,D,void 0):d)},S.integerValue=function(e){var t=new M(this);return null==e?e=D:g(e,0,8),H(t,t.e+1,e)},S.isEqualTo=S.eq=function(e,t){return 0===w(this,new M(e,t))},S.isFinite=function(){return!!this.c},S.isGreaterThan=S.gt=function(e,t){return w(this,new M(e,t))>0},S.isGreaterThanOrEqualTo=S.gte=function(e,t){return 1===(t=w(this,new M(e,t)))||0===t},S.isInteger=function(){return!!this.c&&f(this.e/14)>this.c.length-2},S.isLessThan=S.lt=function(e,t){return w(this,new M(e,t))<0},S.isLessThanOrEqualTo=S.lte=function(e,t){return-1===(t=w(this,new M(e,t)))||0===t},S.isNaN=function(){return!this.s},S.isNegative=function(){return this.s<0},S.isPositive=function(){return this.s>0},S.isZero=function(){return!!this.c&&0==this.c[0]},S.minus=function(e,t){var n,r,i,s,o=this,a=o.s;if(t=(e=new M(e,t)).s,!a||!t)return new M(NaN);if(a!=t)return e.s=-t,o.plus(e);var u=o.e/14,l=e.e/14,c=o.c,d=e.c;if(!u||!l){if(!c||!d)return c?(e.s=-t,e):new M(d?o:NaN);if(!c[0]||!d[0])return d[0]?(e.s=-t,e):new M(c[0]?o:3==D?-0:0)}if(u=f(u),l=f(l),c=c.slice(),a=u-l){for((s=a<0)?(a=-a,i=c):(l=u,i=d),i.reverse(),t=a;t--;i.push(0));i.reverse()}else for(r=(s=(a=c.length)<(t=d.length))?a:t,a=t=0;t<r;t++)if(c[t]!=d[t]){s=c[t]<d[t];break}if(s&&(i=c,c=d,d=i,e.s=-e.s),(t=(r=d.length)-(n=c.length))>0)for(;t--;c[n++]=0);for(t=h-1;r>a;){if(c[--r]<d[r]){for(n=r;n&&!c[--n];c[n]=t);--c[n],c[r]+=h}c[r]-=d[r]}for(;0==c[0];c.splice(0,1),--l);return c[0]?z(e,c,l):(e.s=3==D?-1:1,e.c=[e.e=0],e)},S.modulo=S.mod=function(e,t){var r,i,s=this;return e=new M(e,t),!s.c||!e.s||e.c&&!e.c[0]?new M(NaN):!e.c||s.c&&!s.c[0]?new M(s):(9==P?(i=e.s,e.s=1,r=n(s,e,0,3),e.s=i,r.s*=i):r=n(s,e,0,P),(e=s.minus(r.times(e))).c[0]||1!=P||(e.s=s.s),e)},S.multipliedBy=S.times=function(e,t){var n,r,i,s,o,a,u,l,c,d,p,m,w,g,_=this,b=_.c,y=(e=new M(e,t)).c;if(!(b&&y&&b[0]&&y[0]))return!_.s||!e.s||b&&!b[0]&&!y||y&&!y[0]&&!b?e.c=e.e=e.s=null:(e.s*=_.s,b&&y?(e.c=[0],e.e=0):e.c=e.e=null),e;for(r=f(_.e/14)+f(e.e/14),e.s*=_.s,(u=b.length)<(d=y.length)&&(w=b,b=y,y=w,i=u,u=d,d=i),i=u+d,w=[];i--;w.push(0));for(g=h,1e7,i=d;--i>=0;){for(n=0,p=y[i]%1e7,m=y[i]/1e7|0,s=i+(o=u);s>i;)n=((l=p*(l=b[--o]%1e7)+(a=m*l+(c=b[o]/1e7|0)*p)%1e7*1e7+w[s]+n)/g|0)+(a/1e7|0)+m*c,w[s--]=l%g;w[s]=n}return n?++r:w.splice(0,1),z(e,w,r)},S.negated=function(){var e=new M(this);return e.s=-e.s||null,e},S.plus=function(e,t){var n,r=this,i=r.s;if(t=(e=new M(e,t)).s,!i||!t)return new M(NaN);if(i!=t)return e.s=-t,r.minus(e);var s=r.e/14,o=e.e/14,a=r.c,u=e.c;if(!s||!o){if(!a||!u)return new M(i/0);if(!a[0]||!u[0])return u[0]?e:new M(a[0]?r:0*i)}if(s=f(s),o=f(o),a=a.slice(),i=s-o){for(i>0?(o=s,n=u):(i=-i,n=a),n.reverse();i--;n.push(0));n.reverse()}for((i=a.length)-(t=u.length)<0&&(n=u,u=a,a=n,t=i),i=0;t;)i=(a[--t]=a[t]+u[t]+i)/h|0,a[t]=h===a[t]?0:a[t]%h;return i&&(a=[i].concat(a),++o),z(e,a,o)},S.precision=S.sd=function(e,t){var n,r,i,s=this;if(null!=e&&e!==!!e)return g(e,1,p),null==t?t=D:g(t,0,8),H(new M(s),e,t);if(!(n=s.c))return null;if(r=14*(i=n.length-1)+1,i=n[i]){for(;i%10==0;i/=10,r--);for(i=n[0];i>=10;i/=10,r++);}return e&&s.e+1>r&&(r=s.e+1),r},S.shiftedBy=function(e){return g(e,-9007199254740991,9007199254740991),this.times("1e"+e)},S.squareRoot=S.sqrt=function(){var e,t,r,i,s,o=this,a=o.c,u=o.s,l=o.e,c=k+4,h=new M("0.5");if(1!==u||!a||!a[0])return new M(!u||u<0&&(!a||a[0])?NaN:a?o:1/0);if(0==(u=Math.sqrt(+G(o)))||u==1/0?(((t=m(a)).length+l)%2==0&&(t+="0"),u=Math.sqrt(+t),l=f((l+1)/2)-(l<0||l%2),r=new M(t=u==1/0?"1e"+l:(t=u.toExponential()).slice(0,t.indexOf("e")+1)+l)):r=new M(u+""),r.c[0])for((u=(l=r.e)+c)<3&&(u=0);;)if(s=r,r=h.times(s.plus(n(o,s,c,1))),m(s.c).slice(0,u)===(t=m(r.c)).slice(0,u)){if(r.e<l&&--u,"9999"!=(t=t.slice(u-3,u+1))&&(i||"4999"!=t)){+t&&(+t.slice(1)||"5"!=t.charAt(0))||(H(r,r.e+k+2,1),e=!r.times(r).eq(o));break}if(!i&&(H(s,s.e+k+2,0),s.times(s).eq(o))){r=s;break}c+=4,u+=4,i=1}return H(r,r.e+k+1,D,e)},S.toExponential=function(e,t){return null!=e&&(g(e,0,p),e++),W(this,e,t,1)},S.toFixed=function(e,t){return null!=e&&(g(e,0,p),e=e+this.e+1),W(this,e,t)},S.toFormat=function(e,t,n){var r,i=this;if(null==n)null!=e&&t&&"object"==typeof t?(n=t,t=null):e&&"object"==typeof e?(n=e,e=t=null):n=B;else if("object"!=typeof n)throw Error(l+"Argument not an object: "+n);if(r=i.toFixed(e,t),i.c){var s,o=r.split("."),a=+n.groupSize,u=+n.secondaryGroupSize,c=n.groupSeparator||"",h=o[0],d=o[1],p=i.s<0,f=p?h.slice(1):h,m=f.length;if(u&&(s=a,a=u,u=s,m-=s),a>0&&m>0){for(s=m%a||a,h=f.substr(0,s);s<m;s+=a)h+=c+f.substr(s,a);u>0&&(h+=c+f.slice(s)),p&&(h="-"+h)}r=d?h+(n.decimalSeparator||"")+((u=+n.fractionGroupSize)?d.replace(new RegExp("\\d{"+u+"}\\B","g"),"$&"+(n.fractionGroupSeparator||"")):d):h}return(n.prefix||"")+r+(n.suffix||"")},S.toFraction=function(e){var t,r,i,s,o,a,u,c,h,p,f,w,g=this,_=g.c;if(null!=e&&(!(u=new M(e)).isInteger()&&(u.c||1!==u.s)||u.lt(C)))throw Error(l+"Argument "+(u.isInteger()?"out of range: ":"not an integer: ")+G(u));if(!_)return new M(g);for(t=new M(C),h=r=new M(C),i=c=new M(C),w=m(_),o=t.e=w.length-g.e-1,t.c[0]=d[(a=o%14)<0?14+a:a],e=!e||u.comparedTo(t)>0?o>0?t:h:u,a=N,N=1/0,u=new M(w),c.c[0]=0;p=n(u,t,0,1),1!=(s=r.plus(p.times(i))).comparedTo(e);)r=i,i=s,h=c.plus(p.times(s=h)),c=s,t=u.minus(p.times(s=t)),u=s;return s=n(e.minus(r),i,0,1),c=c.plus(s.times(h)),r=r.plus(s.times(i)),c.s=h.s=g.s,f=n(h,i,o*=2,D).minus(g).abs().comparedTo(n(c,r,o,D).minus(g).abs())<1?[h,i]:[c,r],N=a,f},S.toNumber=function(){return+G(this)},S.toPrecision=function(e,t){return null!=e&&g(e,1,p),W(this,e,t,2)},S.toString=function(e){var t,n=this,i=n.s,s=n.e;return null===s?i?(t="Infinity",i<0&&(t="-"+t)):t="NaN":(null==e?t=s<=R||s>=O?b(m(n.c),s):y(m(n.c),s,"0"):10===e?t=y(m((n=H(new M(n),k+s+1,D)).c),n.e,"0"):(g(e,2,U.length,"Base"),t=r(y(m(n.c),s,"0"),10,e,i,!0)),i<0&&n.c[0]&&(t="-"+t)),t},S.valueOf=S.toJSON=function(){return G(this)},S._isBigNumber=!0,null!=t&&M.set(t),M}()).default=s.BigNumber=s,void 0===(r=function(){return s}.call(t,n,t,e))||(e.exports=r)}()},,function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));class r{constructor(){this.promises=[],this.batch=[],this.count=0}addPage(e){this.promises.push(this.db.addPage(e))}addResource(e){this.batch.length>=1e3&&(this.promises.push(this.db.addResources(this.batch)),this.batch=[],console.log(`Read ${this.count+=1e3} records`)),this.batch.push(e)}async finishIndexing(){this.batch.length>0&&this.promises.push(this.db.addResources(this.batch)),console.log(`Indexed ${this.count+=this.batch.length} records`),this._finishLoad();try{await Promise.all(this.promises)}catch(e){console.warn(e)}this.promises=[]}_finishLoad(){}}},,,function(e,t,n){(function(e){function n(e){return Object.prototype.toString.call(e)}t.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===n(e)},t.isBoolean=function(e){return"boolean"==typeof e},t.isNull=function(e){return null===e},t.isNullOrUndefined=function(e){return null==e},t.isNumber=function(e){return"number"==typeof e},t.isString=function(e){return"string"==typeof e},t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=function(e){return void 0===e},t.isRegExp=function(e){return"[object RegExp]"===n(e)},t.isObject=function(e){return"object"==typeof e&&null!==e},t.isDate=function(e){return"[object Date]"===n(e)},t.isError=function(e){return"[object Error]"===n(e)||e instanceof Error},t.isFunction=function(e){return"function"==typeof e},t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=e.isBuffer}).call(this,n(3).Buffer)},function(e,t,n){"use strict";const r=t.NAMESPACES={HTML:"http://www.w3.org/1999/xhtml",MATHML:"http://www.w3.org/1998/Math/MathML",SVG:"http://www.w3.org/2000/svg",XLINK:"http://www.w3.org/1999/xlink",XML:"http://www.w3.org/XML/1998/namespace",XMLNS:"http://www.w3.org/2000/xmlns/"};t.ATTRS={TYPE:"type",ACTION:"action",ENCODING:"encoding",PROMPT:"prompt",NAME:"name",COLOR:"color",FACE:"face",SIZE:"size"},t.DOCUMENT_MODE={NO_QUIRKS:"no-quirks",QUIRKS:"quirks",LIMITED_QUIRKS:"limited-quirks"};const i=t.TAG_NAMES={A:"a",ADDRESS:"address",ANNOTATION_XML:"annotation-xml",APPLET:"applet",AREA:"area",ARTICLE:"article",ASIDE:"aside",B:"b",BASE:"base",BASEFONT:"basefont",BGSOUND:"bgsound",BIG:"big",BLOCKQUOTE:"blockquote",BODY:"body",BR:"br",BUTTON:"button",CAPTION:"caption",CENTER:"center",CODE:"code",COL:"col",COLGROUP:"colgroup",DD:"dd",DESC:"desc",DETAILS:"details",DIALOG:"dialog",DIR:"dir",DIV:"div",DL:"dl",DT:"dt",EM:"em",EMBED:"embed",FIELDSET:"fieldset",FIGCAPTION:"figcaption",FIGURE:"figure",FONT:"font",FOOTER:"footer",FOREIGN_OBJECT:"foreignObject",FORM:"form",FRAME:"frame",FRAMESET:"frameset",H1:"h1",H2:"h2",H3:"h3",H4:"h4",H5:"h5",H6:"h6",HEAD:"head",HEADER:"header",HGROUP:"hgroup",HR:"hr",HTML:"html",I:"i",IMG:"img",IMAGE:"image",INPUT:"input",IFRAME:"iframe",KEYGEN:"keygen",LABEL:"label",LI:"li",LINK:"link",LISTING:"listing",MAIN:"main",MALIGNMARK:"malignmark",MARQUEE:"marquee",MATH:"math",MENU:"menu",META:"meta",MGLYPH:"mglyph",MI:"mi",MO:"mo",MN:"mn",MS:"ms",MTEXT:"mtext",NAV:"nav",NOBR:"nobr",NOFRAMES:"noframes",NOEMBED:"noembed",NOSCRIPT:"noscript",OBJECT:"object",OL:"ol",OPTGROUP:"optgroup",OPTION:"option",P:"p",PARAM:"param",PLAINTEXT:"plaintext",PRE:"pre",RB:"rb",RP:"rp",RT:"rt",RTC:"rtc",RUBY:"ruby",S:"s",SCRIPT:"script",SECTION:"section",SELECT:"select",SOURCE:"source",SMALL:"small",SPAN:"span",STRIKE:"strike",STRONG:"strong",STYLE:"style",SUB:"sub",SUMMARY:"summary",SUP:"sup",TABLE:"table",TBODY:"tbody",TEMPLATE:"template",TEXTAREA:"textarea",TFOOT:"tfoot",TD:"td",TH:"th",THEAD:"thead",TITLE:"title",TR:"tr",TRACK:"track",TT:"tt",U:"u",UL:"ul",SVG:"svg",VAR:"var",WBR:"wbr",XMP:"xmp"};t.SPECIAL_ELEMENTS={[r.HTML]:{[i.ADDRESS]:!0,[i.APPLET]:!0,[i.AREA]:!0,[i.ARTICLE]:!0,[i.ASIDE]:!0,[i.BASE]:!0,[i.BASEFONT]:!0,[i.BGSOUND]:!0,[i.BLOCKQUOTE]:!0,[i.BODY]:!0,[i.BR]:!0,[i.BUTTON]:!0,[i.CAPTION]:!0,[i.CENTER]:!0,[i.COL]:!0,[i.COLGROUP]:!0,[i.DD]:!0,[i.DETAILS]:!0,[i.DIR]:!0,[i.DIV]:!0,[i.DL]:!0,[i.DT]:!0,[i.EMBED]:!0,[i.FIELDSET]:!0,[i.FIGCAPTION]:!0,[i.FIGURE]:!0,[i.FOOTER]:!0,[i.FORM]:!0,[i.FRAME]:!0,[i.FRAMESET]:!0,[i.H1]:!0,[i.H2]:!0,[i.H3]:!0,[i.H4]:!0,[i.H5]:!0,[i.H6]:!0,[i.HEAD]:!0,[i.HEADER]:!0,[i.HGROUP]:!0,[i.HR]:!0,[i.HTML]:!0,[i.IFRAME]:!0,[i.IMG]:!0,[i.INPUT]:!0,[i.LI]:!0,[i.LINK]:!0,[i.LISTING]:!0,[i.MAIN]:!0,[i.MARQUEE]:!0,[i.MENU]:!0,[i.META]:!0,[i.NAV]:!0,[i.NOEMBED]:!0,[i.NOFRAMES]:!0,[i.NOSCRIPT]:!0,[i.OBJECT]:!0,[i.OL]:!0,[i.P]:!0,[i.PARAM]:!0,[i.PLAINTEXT]:!0,[i.PRE]:!0,[i.SCRIPT]:!0,[i.SECTION]:!0,[i.SELECT]:!0,[i.SOURCE]:!0,[i.STYLE]:!0,[i.SUMMARY]:!0,[i.TABLE]:!0,[i.TBODY]:!0,[i.TD]:!0,[i.TEMPLATE]:!0,[i.TEXTAREA]:!0,[i.TFOOT]:!0,[i.TH]:!0,[i.THEAD]:!0,[i.TITLE]:!0,[i.TR]:!0,[i.TRACK]:!0,[i.UL]:!0,[i.WBR]:!0,[i.XMP]:!0},[r.MATHML]:{[i.MI]:!0,[i.MO]:!0,[i.MN]:!0,[i.MS]:!0,[i.MTEXT]:!0,[i.ANNOTATION_XML]:!0},[r.SVG]:{[i.TITLE]:!0,[i.FOREIGN_OBJECT]:!0,[i.DESC]:!0}}},function(e,t,n){"use strict";function r(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack||""}r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r.prototype.toString=function(e){var t=this.name+": ";return t+=this.reason||"(unknown reason)",!e&&this.mark&&(t+=" "+this.mark.toString()),t},e.exports=r},function(e,t,n){"use strict";var r=n(16);e.exports=new r({include:[n(90)],implicit:[n(193),n(194)],explicit:[n(195),n(196),n(197),n(198)]})},function(e,t,n){(function(e){var r=Object.getOwnPropertyDescriptors||function(e){for(var t=Object.keys(e),n={},r=0;r<t.length;r++)n[t[r]]=Object.getOwnPropertyDescriptor(e,t[r]);return n},i=/%[sdj%]/g;t.format=function(e){if(!g(e)){for(var t=[],n=0;n<arguments.length;n++)t.push(a(arguments[n]));return t.join(" ")}n=1;for(var r=arguments,s=r.length,o=String(e).replace(i,(function(e){if("%%"===e)return"%";if(n>=s)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),u=r[n];n<s;u=r[++n])m(u)||!y(u)?o+=" "+u:o+=" "+a(u);return o},t.deprecate=function(n,r){if(void 0!==e&&!0===e.noDeprecation)return n;if(void 0===e)return function(){return t.deprecate(n,r).apply(this,arguments)};var i=!1;return function(){if(!i){if(e.throwDeprecation)throw new Error(r);e.traceDeprecation?console.trace(r):console.error(r),i=!0}return n.apply(this,arguments)}};var s,o={};function a(e,n){var r={seen:[],stylize:l};return arguments.length>=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),f(n)?r.showHidden=n:n&&t._extend(r,n),_(r.showHidden)&&(r.showHidden=!1),_(r.depth)&&(r.depth=2),_(r.colors)&&(r.colors=!1),_(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=u),c(r,e,r.depth)}function u(e,t){var n=a.styles[t];return n?"["+a.colors[n][0]+"m"+e+"["+a.colors[n][1]+"m":e}function l(e,t){return e}function c(e,n,r){if(e.customInspect&&n&&A(n.inspect)&&n.inspect!==t.inspect&&(!n.constructor||n.constructor.prototype!==n)){var i=n.inspect(r,e);return g(i)||(i=c(e,i,r)),i}var s=function(e,t){if(_(t))return e.stylize("undefined","undefined");if(g(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}if(w(t))return e.stylize(""+t,"number");if(f(t))return e.stylize(""+t,"boolean");if(m(t))return e.stylize("null","null")}(e,n);if(s)return s;var o=Object.keys(n),a=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(n)),E(n)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return h(n);if(0===o.length){if(A(n)){var u=n.name?": "+n.name:"";return e.stylize("[Function"+u+"]","special")}if(b(n))return e.stylize(RegExp.prototype.toString.call(n),"regexp");if(v(n))return e.stylize(Date.prototype.toString.call(n),"date");if(E(n))return h(n)}var l,y="",x=!1,T=["{","}"];(p(n)&&(x=!0,T=["[","]"]),A(n))&&(y=" [Function"+(n.name?": "+n.name:"")+"]");return b(n)&&(y=" "+RegExp.prototype.toString.call(n)),v(n)&&(y=" "+Date.prototype.toUTCString.call(n)),E(n)&&(y=" "+h(n)),0!==o.length||x&&0!=n.length?r<0?b(n)?e.stylize(RegExp.prototype.toString.call(n),"regexp"):e.stylize("[Object]","special"):(e.seen.push(n),l=x?function(e,t,n,r,i){for(var s=[],o=0,a=t.length;o<a;++o)k(t,String(o))?s.push(d(e,t,n,r,String(o),!0)):s.push("");return i.forEach((function(i){i.match(/^\d+$/)||s.push(d(e,t,n,r,i,!0))})),s}(e,n,r,a,o):o.map((function(t){return d(e,n,r,a,t,x)})),e.seen.pop(),function(e,t,n){if(e.reduce((function(e,t){return t.indexOf("\n")>=0&&0,e+t.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1];return n[0]+t+" "+e.join(", ")+" "+n[1]}(l,y,T)):T[0]+y+T[1]}function h(e){return"["+Error.prototype.toString.call(e)+"]"}function d(e,t,n,r,i,s){var o,a,u;if((u=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?a=u.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):u.set&&(a=e.stylize("[Setter]","special")),k(r,i)||(o="["+i+"]"),a||(e.seen.indexOf(u.value)<0?(a=m(n)?c(e,u.value,null):c(e,u.value,n-1)).indexOf("\n")>-1&&(a=s?a.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+a.split("\n").map((function(e){return" "+e})).join("\n")):a=e.stylize("[Circular]","special")),_(o)){if(s&&i.match(/^\d+$/))return a;(o=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.substr(1,o.length-2),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+a}function p(e){return Array.isArray(e)}function f(e){return"boolean"==typeof e}function m(e){return null===e}function w(e){return"number"==typeof e}function g(e){return"string"==typeof e}function _(e){return void 0===e}function b(e){return y(e)&&"[object RegExp]"===x(e)}function y(e){return"object"==typeof e&&null!==e}function v(e){return y(e)&&"[object Date]"===x(e)}function E(e){return y(e)&&("[object Error]"===x(e)||e instanceof Error)}function A(e){return"function"==typeof e}function x(e){return Object.prototype.toString.call(e)}function T(e){return e<10?"0"+e.toString(10):e.toString(10)}t.debuglog=function(n){if(_(s)&&(s=e.env.NODE_DEBUG||""),n=n.toUpperCase(),!o[n])if(new RegExp("\\b"+n+"\\b","i").test(s)){var r=e.pid;o[n]=function(){var e=t.format.apply(t,arguments);console.error("%s %d: %s",n,r,e)}}else o[n]=function(){};return o[n]},t.inspect=a,a.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},a.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},t.isArray=p,t.isBoolean=f,t.isNull=m,t.isNullOrUndefined=function(e){return null==e},t.isNumber=w,t.isString=g,t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=_,t.isRegExp=b,t.isObject=y,t.isDate=v,t.isError=E,t.isFunction=A,t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=n(210);var S=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function C(){var e=new Date,t=[T(e.getHours()),T(e.getMinutes()),T(e.getSeconds())].join(":");return[e.getDate(),S[e.getMonth()],t].join(" ")}function k(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.log=function(){console.log("%s - %s",C(),t.format.apply(t,arguments))},t.inherits=n(211),t._extend=function(e,t){if(!t||!y(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e};var D="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function R(e,t){if(!e){var n=new Error("Promise was rejected with a falsy value");n.reason=e,e=n}return t(e)}t.promisify=function(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(D&&e[D]){var t;if("function"!=typeof(t=e[D]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,D,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),i=[],s=0;s<arguments.length;s++)i.push(arguments[s]);i.push((function(e,r){e?n(e):t(r)}));try{e.apply(this,i)}catch(e){n(e)}return r}return Object.setPrototypeOf(t,Object.getPrototypeOf(e)),D&&Object.defineProperty(t,D,{value:t,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(t,r(e))},t.promisify.custom=D,t.callbackify=function(t){if("function"!=typeof t)throw new TypeError('The "original" argument must be of type Function');function n(){for(var n=[],r=0;r<arguments.length;r++)n.push(arguments[r]);var i=n.pop();if("function"!=typeof i)throw new TypeError("The last argument must be of type Function");var s=this,o=function(){return i.apply(s,arguments)};t.apply(this,n).then((function(t){e.nextTick(o,null,t)}),(function(t){e.nextTick(R,t,o)}))}return Object.setPrototypeOf(n,Object.getPrototypeOf(t)),Object.defineProperties(n,r(t)),n}}).call(this,n(14))},function(e,t,n){"use strict";const r=n(27),i=n(12),s=i.MT,o=i.SIMPLE,a=i.SYMS;class u{constructor(e){if("number"!=typeof e)throw new Error("Invalid Simple type: "+typeof e);if(e<0||e>255||(0|e)!==e)throw new Error("value must be a small positive integer: "+e);this.value=e}toString(){return"simple("+this.value+")"}[r.inspect.custom](e,t){return"simple("+this.value+")"}inspect(e,t){return"simple("+this.value+")"}encodeCBOR(e){return e._pushInt(this.value,s.SIMPLE_FLOAT)}static isSimple(e){return e instanceof u}static decode(e,t=!0,n=!1){switch(e){case o.FALSE:return!1;case o.TRUE:return!0;case o.NULL:return t?null:a.NULL;case o.UNDEFINED:return t?void 0:a.UNDEFINED;case-1:if(!t||!n)throw new Error("Invalid BREAK");return a.BREAK;default:return new u(e)}}}e.exports=u},function(e,t,n){"use strict";(function(t){const r=n(4),i=n(27);class s extends r.Transform{constructor(e,n,r){let i,s;switch(null==r&&(r={}),typeof e){case"object":t.isBuffer(e)?(i=e,null!=n&&"object"==typeof n&&(r=n)):r=e;break;case"string":i=e,null!=n&&"object"==typeof n?r=n:s=n}null==r&&(r={}),null==i&&(i=r.input),null==s&&(s=r.inputEncoding),delete r.input,delete r.inputEncoding;const o=null==r.watchPipe||r.watchPipe;delete r.watchPipe;const a=!!r.readError;delete r.readError,super(r),this.readError=a,o&&this.on("pipe",e=>{const t=e._readableState.objectMode;if(this.length>0&&t!==this._readableState.objectMode)throw new Error("Do not switch objectMode in the middle of the stream");return this._readableState.objectMode=t,this._writableState.objectMode=t}),null!=i&&this.end(i,s)}static isNoFilter(e){return e instanceof this}static compare(e,t){if(!(e instanceof this))throw new TypeError("Arguments must be NoFilters");return e===t?0:e.compare(t)}static concat(e,n){if(!Array.isArray(e))throw new TypeError("list argument must be an Array of NoFilters");if(0===e.length||0===n)return t.alloc(0);null==n&&(n=e.reduce((e,t)=>{if(!(t instanceof s))throw new TypeError("list argument must be an Array of NoFilters");return e+t.length},0));let r=!0,i=!0;const o=e.map(e=>{if(!(e instanceof s))throw new TypeError("list argument must be an Array of NoFilters");const n=e.slice();return t.isBuffer(n)?i=!1:r=!1,n});if(r)return t.concat(o,n);if(i)return[].concat(...o).slice(0,n);throw new Error("Concatenating mixed object and byte streams not supported")}_transform(e,n,r){this._readableState.objectMode||t.isBuffer(e)||(e=t.from(e,n)),this.push(e),r()}_bufArray(){let e=this._readableState.buffer;if(!Array.isArray(e)){let t=e.head;for(e=[];null!=t;)e.push(t.data),t=t.next}return e}read(e){const t=super.read(e);if(null!=t){if(this.emit("read",t),this.readError&&t.length<e)throw new Error(`Read ${t.length}, wanted ${e}`)}else if(this.readError)throw new Error("No data available, wanted "+e);return t}promise(e){let t=!1;return new Promise((n,r)=>{this.on("finish",()=>{const r=this.read();null==e||t||(t=!0,e(null,r)),n(r)}),this.on("error",n=>{null==e||t||(t=!0,e(n)),r(n)})})}compare(e){if(!(e instanceof s))throw new TypeError("Arguments must be NoFilters");if(this===e)return 0;{const n=this.slice(),r=e.slice();if(t.isBuffer(n)&&t.isBuffer(r))return n.compare(r);throw new Error("Cannot compare streams in object mode")}}equals(e){return 0===this.compare(e)}slice(e,n){if(this._readableState.objectMode)return this._bufArray().slice(e,n);const r=this._bufArray();switch(r.length){case 0:return t.alloc(0);case 1:return r[0].slice(e,n);default:return t.concat(r).slice(e,n)}}get(e){return this.slice()[e]}toJSON(){const e=this.slice();return t.isBuffer(e)?e.toJSON():e}toString(e,n,r){const s=this.slice(n,r);if(!t.isBuffer(s))return JSON.stringify(s);if((!e||"utf8"===e)&&i.TextDecoder){return new i.TextDecoder("utf8",{fatal:!0,ignoreBOM:!0}).decode(s)}return s.toString(e,n,r)}inspect(e,t){return this[i.inspect.custom](e,t)}[i.inspect.custom](e,n){const r=this._bufArray().map(e=>t.isBuffer(e)?(null!=n?n.stylize:void 0)?n.stylize(e.toString("hex"),"string"):e.toString("hex"):i.inspect(e,n)).join(", ");return`${this.constructor.name} [${r}]`}get length(){return this._readableState.length}writeBigInt(e){let n=e.toString(16);if(e<0){const t=BigInt(Math.floor(n.length/2));n=(e=(BigInt(1)<<t*BigInt(8))+e).toString(16)}return n.length%2&&(n="0"+n),this.push(t.from(n,"hex"))}readUBigInt(e){const n=this.read(e);return t.isBuffer(n)?BigInt("0x"+n.toString("hex")):null}readBigInt(e){const n=this.read(e);if(!t.isBuffer(n))return null;let r=BigInt("0x"+n.toString("hex"));if(128&n[0]){r-=BigInt(1)<<BigInt(n.length)*BigInt(8)}return r}}function o(e,n){return function(r){const i=this.read(n);return t.isBuffer(i)?i[e].call(i,0,!0):null}}function a(e,n){return function(r){const i=t.alloc(n);return i[e].call(i,r,0,!0),this.push(i)}}Object.assign(s.prototype,{writeUInt8:a("writeUInt8",1),writeUInt16LE:a("writeUInt16LE",2),writeUInt16BE:a("writeUInt16BE",2),writeUInt32LE:a("writeUInt32LE",4),writeUInt32BE:a("writeUInt32BE",4),writeInt8:a("writeInt8",1),writeInt16LE:a("writeInt16LE",2),writeInt16BE:a("writeInt16BE",2),writeInt32LE:a("writeInt32LE",4),writeInt32BE:a("writeInt32BE",4),writeFloatLE:a("writeFloatLE",4),writeFloatBE:a("writeFloatBE",4),writeDoubleLE:a("writeDoubleLE",8),writeDoubleBE:a("writeDoubleBE",8),readUInt8:o("readUInt8",1),readUInt16LE:o("readUInt16LE",2),readUInt16BE:o("readUInt16BE",2),readUInt32LE:o("readUInt32LE",4),readUInt32BE:o("readUInt32BE",4),readInt8:o("readInt8",1),readInt16LE:o("readInt16LE",2),readInt16BE:o("readInt16BE",2),readInt32LE:o("readInt32LE",4),readInt32BE:o("readInt32BE",4),readFloatLE:o("readFloatLE",4),readFloatBE:o("readFloatBE",4),readDoubleLE:o("readDoubleLE",8),readDoubleBE:o("readDoubleBE",8)}),e.exports=s}).call(this,n(3).Buffer)},,,function(e,t,n){"use strict";var r=n(183);e.exports=r},function(e,t,n){"use strict";(function(t){void 0===t||!t.version||0===t.version.indexOf("v0.")||0===t.version.indexOf("v1.")&&0!==t.version.indexOf("v1.8.")?e.exports={nextTick:function(e,n,r,i){if("function"!=typeof e)throw new TypeError('"callback" argument must be a function');var s,o,a=arguments.length;switch(a){case 0:case 1:return t.nextTick(e);case 2:return t.nextTick((function(){e.call(null,n)}));case 3:return t.nextTick((function(){e.call(null,n,r)}));case 4:return t.nextTick((function(){e.call(null,n,r,i)}));default:for(s=new Array(a-1),o=0;o<s.length;)s[o++]=arguments[o];return t.nextTick((function(){e.apply(null,s)}))}}}:e.exports=t}).call(this,n(14))},function(e,t,n){"use strict";const r=n(142),i=n(46),s=n(143),o=n(75),a=i.CODE_POINTS,u=i.CODE_POINT_SEQUENCES,l={128:8364,130:8218,131:402,132:8222,133:8230,134:8224,135:8225,136:710,137:8240,138:352,139:8249,140:338,142:381,145:8216,146:8217,147:8220,148:8221,149:8226,150:8211,151:8212,152:732,153:8482,154:353,155:8250,156:339,158:382,159:376},c="DATA_STATE";function h(e){return e===a.SPACE||e===a.LINE_FEED||e===a.TABULATION||e===a.FORM_FEED}function d(e){return e>=a.DIGIT_0&&e<=a.DIGIT_9}function p(e){return e>=a.LATIN_CAPITAL_A&&e<=a.LATIN_CAPITAL_Z}function f(e){return e>=a.LATIN_SMALL_A&&e<=a.LATIN_SMALL_Z}function m(e){return f(e)||p(e)}function w(e){return m(e)||d(e)}function g(e){return e>=a.LATIN_CAPITAL_A&&e<=a.LATIN_CAPITAL_F}function _(e){return e>=a.LATIN_SMALL_A&&e<=a.LATIN_SMALL_F}function b(e){return e+32}function y(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode(e>>>10&1023|55296)+String.fromCharCode(56320|1023&e))}function v(e){return String.fromCharCode(b(e))}function E(e,t){const n=s[++e];let r=++e,i=r+n-1;for(;r<=i;){const e=r+i>>>1,o=s[e];if(o<t)r=e+1;else{if(!(o>t))return s[e+n];i=e-1}}return-1}class A{constructor(){this.preprocessor=new r,this.tokenQueue=[],this.allowCDATA=!1,this.state=c,this.returnState="",this.charRefCode=-1,this.tempBuff=[],this.lastStartTagName="",this.consumedAfterSnapshot=-1,this.active=!1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr=null}_err(){}_errOnNextCodePoint(e){this._consume(),this._err(e),this._unconsume()}getNextToken(){for(;!this.tokenQueue.length&&this.active;){this.consumedAfterSnapshot=0;const e=this._consume();this._ensureHibernation()||this[this.state](e)}return this.tokenQueue.shift()}write(e,t){this.active=!0,this.preprocessor.write(e,t)}insertHtmlAtCurrentPos(e){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(e)}_ensureHibernation(){if(this.preprocessor.endOfChunkHit){for(;this.consumedAfterSnapshot>0;this.consumedAfterSnapshot--)this.preprocessor.retreat();return this.active=!1,this.tokenQueue.push({type:A.HIBERNATION_TOKEN}),!0}return!1}_consume(){return this.consumedAfterSnapshot++,this.preprocessor.advance()}_unconsume(){this.consumedAfterSnapshot--,this.preprocessor.retreat()}_reconsumeInState(e){this.state=e,this._unconsume()}_consumeSequenceIfMatch(e,t,n){let r=0,i=!0;const s=e.length;let o=0,u=t,l=void 0;for(;o<s;o++){if(o>0&&(u=this._consume(),r++),u===a.EOF){i=!1;break}if(l=e[o],u!==l&&(n||u!==b(l))){i=!1;break}}if(!i)for(;r--;)this._unconsume();return i}_isTempBufferEqualToScriptString(){if(this.tempBuff.length!==u.SCRIPT_STRING.length)return!1;for(let e=0;e<this.tempBuff.length;e++)if(this.tempBuff[e]!==u.SCRIPT_STRING[e])return!1;return!0}_createStartTagToken(){this.currentToken={type:A.START_TAG_TOKEN,tagName:"",selfClosing:!1,ackSelfClosing:!1,attrs:[]}}_createEndTagToken(){this.currentToken={type:A.END_TAG_TOKEN,tagName:"",selfClosing:!1,attrs:[]}}_createCommentToken(){this.currentToken={type:A.COMMENT_TOKEN,data:""}}_createDoctypeToken(e){this.currentToken={type:A.DOCTYPE_TOKEN,name:e,forceQuirks:!1,publicId:null,systemId:null}}_createCharacterToken(e,t){this.currentCharacterToken={type:e,chars:t}}_createEOFToken(){this.currentToken={type:A.EOF_TOKEN}}_createAttr(e){this.currentAttr={name:e,value:""}}_leaveAttrName(e){null===A.getTokenAttr(this.currentToken,this.currentAttr.name)?this.currentToken.attrs.push(this.currentAttr):this._err(o.duplicateAttribute),this.state=e}_leaveAttrValue(e){this.state=e}_emitCurrentToken(){this._emitCurrentCharacterToken();const e=this.currentToken;this.currentToken=null,e.type===A.START_TAG_TOKEN?this.lastStartTagName=e.tagName:e.type===A.END_TAG_TOKEN&&(e.attrs.length>0&&this._err(o.endTagWithAttributes),e.selfClosing&&this._err(o.endTagWithTrailingSolidus)),this.tokenQueue.push(e)}_emitCurrentCharacterToken(){this.currentCharacterToken&&(this.tokenQueue.push(this.currentCharacterToken),this.currentCharacterToken=null)}_emitEOFToken(){this._createEOFToken(),this._emitCurrentToken()}_appendCharToCurrentCharacterToken(e,t){this.currentCharacterToken&&this.currentCharacterToken.type!==e&&this._emitCurrentCharacterToken(),this.currentCharacterToken?this.currentCharacterToken.chars+=t:this._createCharacterToken(e,t)}_emitCodePoint(e){let t=A.CHARACTER_TOKEN;h(e)?t=A.WHITESPACE_CHARACTER_TOKEN:e===a.NULL&&(t=A.NULL_CHARACTER_TOKEN),this._appendCharToCurrentCharacterToken(t,y(e))}_emitSeveralCodePoints(e){for(let t=0;t<e.length;t++)this._emitCodePoint(e[t])}_emitChars(e){this._appendCharToCurrentCharacterToken(A.CHARACTER_TOKEN,e)}_matchNamedCharacterReference(e){let t=null,n=1,r=E(0,e);for(this.tempBuff.push(e);r>-1;){const e=s[r],i=e<7;i&&1&e&&(t=2&e?[s[++r],s[++r]]:[s[++r]],n=0);const o=this._consume();if(this.tempBuff.push(o),n++,o===a.EOF)break;r=i?4&e?E(r,o):-1:o===e?++r:-1}for(;n--;)this.tempBuff.pop(),this._unconsume();return t}_isCharacterReferenceInAttribute(){return"ATTRIBUTE_VALUE_DOUBLE_QUOTED_STATE"===this.returnState||"ATTRIBUTE_VALUE_SINGLE_QUOTED_STATE"===this.returnState||"ATTRIBUTE_VALUE_UNQUOTED_STATE"===this.returnState}_isCharacterReferenceAttributeQuirk(e){if(!e&&this._isCharacterReferenceInAttribute()){const e=this._consume();return this._unconsume(),e===a.EQUALS_SIGN||w(e)}return!1}_flushCodePointsConsumedAsCharacterReference(){if(this._isCharacterReferenceInAttribute())for(let e=0;e<this.tempBuff.length;e++)this.currentAttr.value+=y(this.tempBuff[e]);else this._emitSeveralCodePoints(this.tempBuff);this.tempBuff=[]}[c](e){this.preprocessor.dropParsedChunk(),e===a.LESS_THAN_SIGN?this.state="TAG_OPEN_STATE":e===a.AMPERSAND?(this.returnState=c,this.state="CHARACTER_REFERENCE_STATE"):e===a.NULL?(this._err(o.unexpectedNullCharacter),this._emitCodePoint(e)):e===a.EOF?this._emitEOFToken():this._emitCodePoint(e)}RCDATA_STATE(e){this.preprocessor.dropParsedChunk(),e===a.AMPERSAND?(this.returnState="RCDATA_STATE",this.state="CHARACTER_REFERENCE_STATE"):e===a.LESS_THAN_SIGN?this.state="RCDATA_LESS_THAN_SIGN_STATE":e===a.NULL?(this._err(o.unexpectedNullCharacter),this._emitChars(i.REPLACEMENT_CHARACTER)):e===a.EOF?this._emitEOFToken():this._emitCodePoint(e)}RAWTEXT_STATE(e){this.preprocessor.dropParsedChunk(),e===a.LESS_THAN_SIGN?this.state="RAWTEXT_LESS_THAN_SIGN_STATE":e===a.NULL?(this._err(o.unexpectedNullCharacter),this._emitChars(i.REPLACEMENT_CHARACTER)):e===a.EOF?this._emitEOFToken():this._emitCodePoint(e)}SCRIPT_DATA_STATE(e){this.preprocessor.dropParsedChunk(),e===a.LESS_THAN_SIGN?this.state="SCRIPT_DATA_LESS_THAN_SIGN_STATE":e===a.NULL?(this._err(o.unexpectedNullCharacter),this._emitChars(i.REPLACEMENT_CHARACTER)):e===a.EOF?this._emitEOFToken():this._emitCodePoint(e)}PLAINTEXT_STATE(e){this.preprocessor.dropParsedChunk(),e===a.NULL?(this._err(o.unexpectedNullCharacter),this._emitChars(i.REPLACEMENT_CHARACTER)):e===a.EOF?this._emitEOFToken():this._emitCodePoint(e)}TAG_OPEN_STATE(e){e===a.EXCLAMATION_MARK?this.state="MARKUP_DECLARATION_OPEN_STATE":e===a.SOLIDUS?this.state="END_TAG_OPEN_STATE":m(e)?(this._createStartTagToken(),this._reconsumeInState("TAG_NAME_STATE")):e===a.QUESTION_MARK?(this._err(o.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(),this._reconsumeInState("BOGUS_COMMENT_STATE")):e===a.EOF?(this._err(o.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken()):(this._err(o.invalidFirstCharacterOfTagName),this._emitChars("<"),this._reconsumeInState(c))}END_TAG_OPEN_STATE(e){m(e)?(this._createEndTagToken(),this._reconsumeInState("TAG_NAME_STATE")):e===a.GREATER_THAN_SIGN?(this._err(o.missingEndTagName),this.state=c):e===a.EOF?(this._err(o.eofBeforeTagName),this._emitChars("</"),this._emitEOFToken()):(this._err(o.invalidFirstCharacterOfTagName),this._createCommentToken(),this._reconsumeInState("BOGUS_COMMENT_STATE"))}TAG_NAME_STATE(e){h(e)?this.state="BEFORE_ATTRIBUTE_NAME_STATE":e===a.SOLIDUS?this.state="SELF_CLOSING_START_TAG_STATE":e===a.GREATER_THAN_SIGN?(this.state=c,this._emitCurrentToken()):p(e)?this.currentToken.tagName+=v(e):e===a.NULL?(this._err(o.unexpectedNullCharacter),this.currentToken.tagName+=i.REPLACEMENT_CHARACTER):e===a.EOF?(this._err(o.eofInTag),this._emitEOFToken()):this.currentToken.tagName+=y(e)}RCDATA_LESS_THAN_SIGN_STATE(e){e===a.SOLIDUS?(this.tempBuff=[],this.state="RCDATA_END_TAG_OPEN_STATE"):(this._emitChars("<"),this._reconsumeInState("RCDATA_STATE"))}RCDATA_END_TAG_OPEN_STATE(e){m(e)?(this._createEndTagToken(),this._reconsumeInState("RCDATA_END_TAG_NAME_STATE")):(this._emitChars("</"),this._reconsumeInState("RCDATA_STATE"))}RCDATA_END_TAG_NAME_STATE(e){if(p(e))this.currentToken.tagName+=v(e),this.tempBuff.push(e);else if(f(e))this.currentToken.tagName+=y(e),this.tempBuff.push(e);else{if(this.lastStartTagName===this.currentToken.tagName){if(h(e))return void(this.state="BEFORE_ATTRIBUTE_NAME_STATE");if(e===a.SOLIDUS)return void(this.state="SELF_CLOSING_START_TAG_STATE");if(e===a.GREATER_THAN_SIGN)return this.state=c,void this._emitCurrentToken()}this._emitChars("</"),this._emitSeveralCodePoints(this.tempBuff),this._reconsumeInState("RCDATA_STATE")}}RAWTEXT_LESS_THAN_SIGN_STATE(e){e===a.SOLIDUS?(this.tempBuff=[],this.state="RAWTEXT_END_TAG_OPEN_STATE"):(this._emitChars("<"),this._reconsumeInState("RAWTEXT_STATE"))}RAWTEXT_END_TAG_OPEN_STATE(e){m(e)?(this._createEndTagToken(),this._reconsumeInState("RAWTEXT_END_TAG_NAME_STATE")):(this._emitChars("</"),this._reconsumeInState("RAWTEXT_STATE"))}RAWTEXT_END_TAG_NAME_STATE(e){if(p(e))this.currentToken.tagName+=v(e),this.tempBuff.push(e);else if(f(e))this.currentToken.tagName+=y(e),this.tempBuff.push(e);else{if(this.lastStartTagName===this.currentToken.tagName){if(h(e))return void(this.state="BEFORE_ATTRIBUTE_NAME_STATE");if(e===a.SOLIDUS)return void(this.state="SELF_CLOSING_START_TAG_STATE");if(e===a.GREATER_THAN_SIGN)return this._emitCurrentToken(),void(this.state=c)}this._emitChars("</"),this._emitSeveralCodePoints(this.tempBuff),this._reconsumeInState("RAWTEXT_STATE")}}SCRIPT_DATA_LESS_THAN_SIGN_STATE(e){e===a.SOLIDUS?(this.tempBuff=[],this.state="SCRIPT_DATA_END_TAG_OPEN_STATE"):e===a.EXCLAMATION_MARK?(this.state="SCRIPT_DATA_ESCAPE_START_STATE",this._emitChars("<!")):(this._emitChars("<"),this._reconsumeInState("SCRIPT_DATA_STATE"))}SCRIPT_DATA_END_TAG_OPEN_STATE(e){m(e)?(this._createEndTagToken(),this._reconsumeInState("SCRIPT_DATA_END_TAG_NAME_STATE")):(this._emitChars("</"),this._reconsumeInState("SCRIPT_DATA_STATE"))}SCRIPT_DATA_END_TAG_NAME_STATE(e){if(p(e))this.currentToken.tagName+=v(e),this.tempBuff.push(e);else if(f(e))this.currentToken.tagName+=y(e),this.tempBuff.push(e);else{if(this.lastStartTagName===this.currentToken.tagName){if(h(e))return void(this.state="BEFORE_ATTRIBUTE_NAME_STATE");if(e===a.SOLIDUS)return void(this.state="SELF_CLOSING_START_TAG_STATE");if(e===a.GREATER_THAN_SIGN)return this._emitCurrentToken(),void(this.state=c)}this._emitChars("</"),this._emitSeveralCodePoints(this.tempBuff),this._reconsumeInState("SCRIPT_DATA_STATE")}}SCRIPT_DATA_ESCAPE_START_STATE(e){e===a.HYPHEN_MINUS?(this.state="SCRIPT_DATA_ESCAPE_START_DASH_STATE",this._emitChars("-")):this._reconsumeInState("SCRIPT_DATA_STATE")}SCRIPT_DATA_ESCAPE_START_DASH_STATE(e){e===a.HYPHEN_MINUS?(this.state="SCRIPT_DATA_ESCAPED_DASH_DASH_STATE",this._emitChars("-")):this._reconsumeInState("SCRIPT_DATA_STATE")}SCRIPT_DATA_ESCAPED_STATE(e){e===a.HYPHEN_MINUS?(this.state="SCRIPT_DATA_ESCAPED_DASH_STATE",this._emitChars("-")):e===a.LESS_THAN_SIGN?this.state="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN_STATE":e===a.NULL?(this._err(o.unexpectedNullCharacter),this._emitChars(i.REPLACEMENT_CHARACTER)):e===a.EOF?(this._err(o.eofInScriptHtmlCommentLikeText),this._emitEOFToken()):this._emitCodePoint(e)}SCRIPT_DATA_ESCAPED_DASH_STATE(e){e===a.HYPHEN_MINUS?(this.state="SCRIPT_DATA_ESCAPED_DASH_DASH_STATE",this._emitChars("-")):e===a.LESS_THAN_SIGN?this.state="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN_STATE":e===a.NULL?(this._err(o.unexpectedNullCharacter),this.state="SCRIPT_DATA_ESCAPED_STATE",this._emitChars(i.REPLACEMENT_CHARACTER)):e===a.EOF?(this._err(o.eofInScriptHtmlCommentLikeText),this._emitEOFToken()):(this.state="SCRIPT_DATA_ESCAPED_STATE",this._emitCodePoint(e))}SCRIPT_DATA_ESCAPED_DASH_DASH_STATE(e){e===a.HYPHEN_MINUS?this._emitChars("-"):e===a.LESS_THAN_SIGN?this.state="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN_STATE":e===a.GREATER_THAN_SIGN?(this.state="SCRIPT_DATA_STATE",this._emitChars(">")):e===a.NULL?(this._err(o.unexpectedNullCharacter),this.state="SCRIPT_DATA_ESCAPED_STATE",this._emitChars(i.REPLACEMENT_CHARACTER)):e===a.EOF?(this._err(o.eofInScriptHtmlCommentLikeText),this._emitEOFToken()):(this.state="SCRIPT_DATA_ESCAPED_STATE",this._emitCodePoint(e))}SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN_STATE(e){e===a.SOLIDUS?(this.tempBuff=[],this.state="SCRIPT_DATA_ESCAPED_END_TAG_OPEN_STATE"):m(e)?(this.tempBuff=[],this._emitChars("<"),this._reconsumeInState("SCRIPT_DATA_DOUBLE_ESCAPE_START_STATE")):(this._emitChars("<"),this._reconsumeInState("SCRIPT_DATA_ESCAPED_STATE"))}SCRIPT_DATA_ESCAPED_END_TAG_OPEN_STATE(e){m(e)?(this._createEndTagToken(),this._reconsumeInState("SCRIPT_DATA_ESCAPED_END_TAG_NAME_STATE")):(this._emitChars("</"),this._reconsumeInState("SCRIPT_DATA_ESCAPED_STATE"))}SCRIPT_DATA_ESCAPED_END_TAG_NAME_STATE(e){if(p(e))this.currentToken.tagName+=v(e),this.tempBuff.push(e);else if(f(e))this.currentToken.tagName+=y(e),this.tempBuff.push(e);else{if(this.lastStartTagName===this.currentToken.tagName){if(h(e))return void(this.state="BEFORE_ATTRIBUTE_NAME_STATE");if(e===a.SOLIDUS)return void(this.state="SELF_CLOSING_START_TAG_STATE");if(e===a.GREATER_THAN_SIGN)return this._emitCurrentToken(),void(this.state=c)}this._emitChars("</"),this._emitSeveralCodePoints(this.tempBuff),this._reconsumeInState("SCRIPT_DATA_ESCAPED_STATE")}}SCRIPT_DATA_DOUBLE_ESCAPE_START_STATE(e){h(e)||e===a.SOLIDUS||e===a.GREATER_THAN_SIGN?(this.state=this._isTempBufferEqualToScriptString()?"SCRIPT_DATA_DOUBLE_ESCAPED_STATE":"SCRIPT_DATA_ESCAPED_STATE",this._emitCodePoint(e)):p(e)?(this.tempBuff.push(b(e)),this._emitCodePoint(e)):f(e)?(this.tempBuff.push(e),this._emitCodePoint(e)):this._reconsumeInState("SCRIPT_DATA_ESCAPED_STATE")}SCRIPT_DATA_DOUBLE_ESCAPED_STATE(e){e===a.HYPHEN_MINUS?(this.state="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_STATE",this._emitChars("-")):e===a.LESS_THAN_SIGN?(this.state="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN_STATE",this._emitChars("<")):e===a.NULL?(this._err(o.unexpectedNullCharacter),this._emitChars(i.REPLACEMENT_CHARACTER)):e===a.EOF?(this._err(o.eofInScriptHtmlCommentLikeText),this._emitEOFToken()):this._emitCodePoint(e)}SCRIPT_DATA_DOUBLE_ESCAPED_DASH_STATE(e){e===a.HYPHEN_MINUS?(this.state="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH_STATE",this._emitChars("-")):e===a.LESS_THAN_SIGN?(this.state="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN_STATE",this._emitChars("<")):e===a.NULL?(this._err(o.unexpectedNullCharacter),this.state="SCRIPT_DATA_DOUBLE_ESCAPED_STATE",this._emitChars(i.REPLACEMENT_CHARACTER)):e===a.EOF?(this._err(o.eofInScriptHtmlCommentLikeText),this._emitEOFToken()):(this.state="SCRIPT_DATA_DOUBLE_ESCAPED_STATE",this._emitCodePoint(e))}SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH_STATE(e){e===a.HYPHEN_MINUS?this._emitChars("-"):e===a.LESS_THAN_SIGN?(this.state="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN_STATE",this._emitChars("<")):e===a.GREATER_THAN_SIGN?(this.state="SCRIPT_DATA_STATE",this._emitChars(">")):e===a.NULL?(this._err(o.unexpectedNullCharacter),this.state="SCRIPT_DATA_DOUBLE_ESCAPED_STATE",this._emitChars(i.REPLACEMENT_CHARACTER)):e===a.EOF?(this._err(o.eofInScriptHtmlCommentLikeText),this._emitEOFToken()):(this.state="SCRIPT_DATA_DOUBLE_ESCAPED_STATE",this._emitCodePoint(e))}SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN_STATE(e){e===a.SOLIDUS?(this.tempBuff=[],this.state="SCRIPT_DATA_DOUBLE_ESCAPE_END_STATE",this._emitChars("/")):this._reconsumeInState("SCRIPT_DATA_DOUBLE_ESCAPED_STATE")}SCRIPT_DATA_DOUBLE_ESCAPE_END_STATE(e){h(e)||e===a.SOLIDUS||e===a.GREATER_THAN_SIGN?(this.state=this._isTempBufferEqualToScriptString()?"SCRIPT_DATA_ESCAPED_STATE":"SCRIPT_DATA_DOUBLE_ESCAPED_STATE",this._emitCodePoint(e)):p(e)?(this.tempBuff.push(b(e)),this._emitCodePoint(e)):f(e)?(this.tempBuff.push(e),this._emitCodePoint(e)):this._reconsumeInState("SCRIPT_DATA_DOUBLE_ESCAPED_STATE")}BEFORE_ATTRIBUTE_NAME_STATE(e){h(e)||(e===a.SOLIDUS||e===a.GREATER_THAN_SIGN||e===a.EOF?this._reconsumeInState("AFTER_ATTRIBUTE_NAME_STATE"):e===a.EQUALS_SIGN?(this._err(o.unexpectedEqualsSignBeforeAttributeName),this._createAttr("="),this.state="ATTRIBUTE_NAME_STATE"):(this._createAttr(""),this._reconsumeInState("ATTRIBUTE_NAME_STATE")))}ATTRIBUTE_NAME_STATE(e){h(e)||e===a.SOLIDUS||e===a.GREATER_THAN_SIGN||e===a.EOF?(this._leaveAttrName("AFTER_ATTRIBUTE_NAME_STATE"),this._unconsume()):e===a.EQUALS_SIGN?this._leaveAttrName("BEFORE_ATTRIBUTE_VALUE_STATE"):p(e)?this.currentAttr.name+=v(e):e===a.QUOTATION_MARK||e===a.APOSTROPHE||e===a.LESS_THAN_SIGN?(this._err(o.unexpectedCharacterInAttributeName),this.currentAttr.name+=y(e)):e===a.NULL?(this._err(o.unexpectedNullCharacter),this.currentAttr.name+=i.REPLACEMENT_CHARACTER):this.currentAttr.name+=y(e)}AFTER_ATTRIBUTE_NAME_STATE(e){h(e)||(e===a.SOLIDUS?this.state="SELF_CLOSING_START_TAG_STATE":e===a.EQUALS_SIGN?this.state="BEFORE_ATTRIBUTE_VALUE_STATE":e===a.GREATER_THAN_SIGN?(this.state=c,this._emitCurrentToken()):e===a.EOF?(this._err(o.eofInTag),this._emitEOFToken()):(this._createAttr(""),this._reconsumeInState("ATTRIBUTE_NAME_STATE")))}BEFORE_ATTRIBUTE_VALUE_STATE(e){h(e)||(e===a.QUOTATION_MARK?this.state="ATTRIBUTE_VALUE_DOUBLE_QUOTED_STATE":e===a.APOSTROPHE?this.state="ATTRIBUTE_VALUE_SINGLE_QUOTED_STATE":e===a.GREATER_THAN_SIGN?(this._err(o.missingAttributeValue),this.state=c,this._emitCurrentToken()):this._reconsumeInState("ATTRIBUTE_VALUE_UNQUOTED_STATE"))}ATTRIBUTE_VALUE_DOUBLE_QUOTED_STATE(e){e===a.QUOTATION_MARK?this.state="AFTER_ATTRIBUTE_VALUE_QUOTED_STATE":e===a.AMPERSAND?(this.returnState="ATTRIBUTE_VALUE_DOUBLE_QUOTED_STATE",this.state="CHARACTER_REFERENCE_STATE"):e===a.NULL?(this._err(o.unexpectedNullCharacter),this.currentAttr.value+=i.REPLACEMENT_CHARACTER):e===a.EOF?(this._err(o.eofInTag),this._emitEOFToken()):this.currentAttr.value+=y(e)}ATTRIBUTE_VALUE_SINGLE_QUOTED_STATE(e){e===a.APOSTROPHE?this.state="AFTER_ATTRIBUTE_VALUE_QUOTED_STATE":e===a.AMPERSAND?(this.returnState="ATTRIBUTE_VALUE_SINGLE_QUOTED_STATE",this.state="CHARACTER_REFERENCE_STATE"):e===a.NULL?(this._err(o.unexpectedNullCharacter),this.currentAttr.value+=i.REPLACEMENT_CHARACTER):e===a.EOF?(this._err(o.eofInTag),this._emitEOFToken()):this.currentAttr.value+=y(e)}ATTRIBUTE_VALUE_UNQUOTED_STATE(e){h(e)?this._leaveAttrValue("BEFORE_ATTRIBUTE_NAME_STATE"):e===a.AMPERSAND?(this.returnState="ATTRIBUTE_VALUE_UNQUOTED_STATE",this.state="CHARACTER_REFERENCE_STATE"):e===a.GREATER_THAN_SIGN?(this._leaveAttrValue(c),this._emitCurrentToken()):e===a.NULL?(this._err(o.unexpectedNullCharacter),this.currentAttr.value+=i.REPLACEMENT_CHARACTER):e===a.QUOTATION_MARK||e===a.APOSTROPHE||e===a.LESS_THAN_SIGN||e===a.EQUALS_SIGN||e===a.GRAVE_ACCENT?(this._err(o.unexpectedCharacterInUnquotedAttributeValue),this.currentAttr.value+=y(e)):e===a.EOF?(this._err(o.eofInTag),this._emitEOFToken()):this.currentAttr.value+=y(e)}AFTER_ATTRIBUTE_VALUE_QUOTED_STATE(e){h(e)?this._leaveAttrValue("BEFORE_ATTRIBUTE_NAME_STATE"):e===a.SOLIDUS?this._leaveAttrValue("SELF_CLOSING_START_TAG_STATE"):e===a.GREATER_THAN_SIGN?(this._leaveAttrValue(c),this._emitCurrentToken()):e===a.EOF?(this._err(o.eofInTag),this._emitEOFToken()):(this._err(o.missingWhitespaceBetweenAttributes),this._reconsumeInState("BEFORE_ATTRIBUTE_NAME_STATE"))}SELF_CLOSING_START_TAG_STATE(e){e===a.GREATER_THAN_SIGN?(this.currentToken.selfClosing=!0,this.state=c,this._emitCurrentToken()):e===a.EOF?(this._err(o.eofInTag),this._emitEOFToken()):(this._err(o.unexpectedSolidusInTag),this._reconsumeInState("BEFORE_ATTRIBUTE_NAME_STATE"))}BOGUS_COMMENT_STATE(e){e===a.GREATER_THAN_SIGN?(this.state=c,this._emitCurrentToken()):e===a.EOF?(this._emitCurrentToken(),this._emitEOFToken()):e===a.NULL?(this._err(o.unexpectedNullCharacter),this.currentToken.data+=i.REPLACEMENT_CHARACTER):this.currentToken.data+=y(e)}MARKUP_DECLARATION_OPEN_STATE(e){this._consumeSequenceIfMatch(u.DASH_DASH_STRING,e,!0)?(this._createCommentToken(),this.state="COMMENT_START_STATE"):this._consumeSequenceIfMatch(u.DOCTYPE_STRING,e,!1)?this.state="DOCTYPE_STATE":this._consumeSequenceIfMatch(u.CDATA_START_STRING,e,!0)?this.allowCDATA?this.state="CDATA_SECTION_STATE":(this._err(o.cdataInHtmlContent),this._createCommentToken(),this.currentToken.data="[CDATA[",this.state="BOGUS_COMMENT_STATE"):this._ensureHibernation()||(this._err(o.incorrectlyOpenedComment),this._createCommentToken(),this._reconsumeInState("BOGUS_COMMENT_STATE"))}COMMENT_START_STATE(e){e===a.HYPHEN_MINUS?this.state="COMMENT_START_DASH_STATE":e===a.GREATER_THAN_SIGN?(this._err(o.abruptClosingOfEmptyComment),this.state=c,this._emitCurrentToken()):this._reconsumeInState("COMMENT_STATE")}COMMENT_START_DASH_STATE(e){e===a.HYPHEN_MINUS?this.state="COMMENT_END_STATE":e===a.GREATER_THAN_SIGN?(this._err(o.abruptClosingOfEmptyComment),this.state=c,this._emitCurrentToken()):e===a.EOF?(this._err(o.eofInComment),this._emitCurrentToken(),this._emitEOFToken()):(this.currentToken.data+="-",this._reconsumeInState("COMMENT_STATE"))}COMMENT_STATE(e){e===a.HYPHEN_MINUS?this.state="COMMENT_END_DASH_STATE":e===a.LESS_THAN_SIGN?(this.currentToken.data+="<",this.state="COMMENT_LESS_THAN_SIGN_STATE"):e===a.NULL?(this._err(o.unexpectedNullCharacter),this.currentToken.data+=i.REPLACEMENT_CHARACTER):e===a.EOF?(this._err(o.eofInComment),this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.data+=y(e)}COMMENT_LESS_THAN_SIGN_STATE(e){e===a.EXCLAMATION_MARK?(this.currentToken.data+="!",this.state="COMMENT_LESS_THAN_SIGN_BANG_STATE"):e===a.LESS_THAN_SIGN?this.currentToken.data+="!":this._reconsumeInState("COMMENT_STATE")}COMMENT_LESS_THAN_SIGN_BANG_STATE(e){e===a.HYPHEN_MINUS?this.state="COMMENT_LESS_THAN_SIGN_BANG_DASH_STATE":this._reconsumeInState("COMMENT_STATE")}COMMENT_LESS_THAN_SIGN_BANG_DASH_STATE(e){e===a.HYPHEN_MINUS?this.state="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH_STATE":this._reconsumeInState("COMMENT_END_DASH_STATE")}COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH_STATE(e){e!==a.GREATER_THAN_SIGN&&e!==a.EOF&&this._err(o.nestedComment),this._reconsumeInState("COMMENT_END_STATE")}COMMENT_END_DASH_STATE(e){e===a.HYPHEN_MINUS?this.state="COMMENT_END_STATE":e===a.EOF?(this._err(o.eofInComment),this._emitCurrentToken(),this._emitEOFToken()):(this.currentToken.data+="-",this._reconsumeInState("COMMENT_STATE"))}COMMENT_END_STATE(e){e===a.GREATER_THAN_SIGN?(this.state=c,this._emitCurrentToken()):e===a.EXCLAMATION_MARK?this.state="COMMENT_END_BANG_STATE":e===a.HYPHEN_MINUS?this.currentToken.data+="-":e===a.EOF?(this._err(o.eofInComment),this._emitCurrentToken(),this._emitEOFToken()):(this.currentToken.data+="--",this._reconsumeInState("COMMENT_STATE"))}COMMENT_END_BANG_STATE(e){e===a.HYPHEN_MINUS?(this.currentToken.data+="--!",this.state="COMMENT_END_DASH_STATE"):e===a.GREATER_THAN_SIGN?(this._err(o.incorrectlyClosedComment),this.state=c,this._emitCurrentToken()):e===a.EOF?(this._err(o.eofInComment),this._emitCurrentToken(),this._emitEOFToken()):(this.currentToken.data+="--!",this._reconsumeInState("COMMENT_STATE"))}DOCTYPE_STATE(e){h(e)?this.state="BEFORE_DOCTYPE_NAME_STATE":e===a.GREATER_THAN_SIGN?this._reconsumeInState("BEFORE_DOCTYPE_NAME_STATE"):e===a.EOF?(this._err(o.eofInDoctype),this._createDoctypeToken(null),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.missingWhitespaceBeforeDoctypeName),this._reconsumeInState("BEFORE_DOCTYPE_NAME_STATE"))}BEFORE_DOCTYPE_NAME_STATE(e){h(e)||(p(e)?(this._createDoctypeToken(v(e)),this.state="DOCTYPE_NAME_STATE"):e===a.NULL?(this._err(o.unexpectedNullCharacter),this._createDoctypeToken(i.REPLACEMENT_CHARACTER),this.state="DOCTYPE_NAME_STATE"):e===a.GREATER_THAN_SIGN?(this._err(o.missingDoctypeName),this._createDoctypeToken(null),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this.state=c):e===a.EOF?(this._err(o.eofInDoctype),this._createDoctypeToken(null),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._createDoctypeToken(y(e)),this.state="DOCTYPE_NAME_STATE"))}DOCTYPE_NAME_STATE(e){h(e)?this.state="AFTER_DOCTYPE_NAME_STATE":e===a.GREATER_THAN_SIGN?(this.state=c,this._emitCurrentToken()):p(e)?this.currentToken.name+=v(e):e===a.NULL?(this._err(o.unexpectedNullCharacter),this.currentToken.name+=i.REPLACEMENT_CHARACTER):e===a.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.name+=y(e)}AFTER_DOCTYPE_NAME_STATE(e){h(e)||(e===a.GREATER_THAN_SIGN?(this.state=c,this._emitCurrentToken()):e===a.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this._consumeSequenceIfMatch(u.PUBLIC_STRING,e,!1)?this.state="AFTER_DOCTYPE_PUBLIC_KEYWORD_STATE":this._consumeSequenceIfMatch(u.SYSTEM_STRING,e,!1)?this.state="AFTER_DOCTYPE_SYSTEM_KEYWORD_STATE":this._ensureHibernation()||(this._err(o.invalidCharacterSequenceAfterDoctypeName),this.currentToken.forceQuirks=!0,this._reconsumeInState("BOGUS_DOCTYPE_STATE")))}AFTER_DOCTYPE_PUBLIC_KEYWORD_STATE(e){h(e)?this.state="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER_STATE":e===a.QUOTATION_MARK?(this._err(o.missingWhitespaceAfterDoctypePublicKeyword),this.currentToken.publicId="",this.state="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED_STATE"):e===a.APOSTROPHE?(this._err(o.missingWhitespaceAfterDoctypePublicKeyword),this.currentToken.publicId="",this.state="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED_STATE"):e===a.GREATER_THAN_SIGN?(this._err(o.missingDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this.state=c,this._emitCurrentToken()):e===a.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.missingQuoteBeforeDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState("BOGUS_DOCTYPE_STATE"))}BEFORE_DOCTYPE_PUBLIC_IDENTIFIER_STATE(e){h(e)||(e===a.QUOTATION_MARK?(this.currentToken.publicId="",this.state="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED_STATE"):e===a.APOSTROPHE?(this.currentToken.publicId="",this.state="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED_STATE"):e===a.GREATER_THAN_SIGN?(this._err(o.missingDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this.state=c,this._emitCurrentToken()):e===a.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.missingQuoteBeforeDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState("BOGUS_DOCTYPE_STATE")))}DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED_STATE(e){e===a.QUOTATION_MARK?this.state="AFTER_DOCTYPE_PUBLIC_IDENTIFIER_STATE":e===a.NULL?(this._err(o.unexpectedNullCharacter),this.currentToken.publicId+=i.REPLACEMENT_CHARACTER):e===a.GREATER_THAN_SIGN?(this._err(o.abruptDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this.state=c):e===a.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.publicId+=y(e)}DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED_STATE(e){e===a.APOSTROPHE?this.state="AFTER_DOCTYPE_PUBLIC_IDENTIFIER_STATE":e===a.NULL?(this._err(o.unexpectedNullCharacter),this.currentToken.publicId+=i.REPLACEMENT_CHARACTER):e===a.GREATER_THAN_SIGN?(this._err(o.abruptDoctypePublicIdentifier),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this.state=c):e===a.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.publicId+=y(e)}AFTER_DOCTYPE_PUBLIC_IDENTIFIER_STATE(e){h(e)?this.state="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS_STATE":e===a.GREATER_THAN_SIGN?(this.state=c,this._emitCurrentToken()):e===a.QUOTATION_MARK?(this._err(o.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),this.currentToken.systemId="",this.state="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED_STATE"):e===a.APOSTROPHE?(this._err(o.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),this.currentToken.systemId="",this.state="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED_STATE"):e===a.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.missingQuoteBeforeDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState("BOGUS_DOCTYPE_STATE"))}BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS_STATE(e){h(e)||(e===a.GREATER_THAN_SIGN?(this._emitCurrentToken(),this.state=c):e===a.QUOTATION_MARK?(this.currentToken.systemId="",this.state="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED_STATE"):e===a.APOSTROPHE?(this.currentToken.systemId="",this.state="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED_STATE"):e===a.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.missingQuoteBeforeDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState("BOGUS_DOCTYPE_STATE")))}AFTER_DOCTYPE_SYSTEM_KEYWORD_STATE(e){h(e)?this.state="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER_STATE":e===a.QUOTATION_MARK?(this._err(o.missingWhitespaceAfterDoctypeSystemKeyword),this.currentToken.systemId="",this.state="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED_STATE"):e===a.APOSTROPHE?(this._err(o.missingWhitespaceAfterDoctypeSystemKeyword),this.currentToken.systemId="",this.state="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED_STATE"):e===a.GREATER_THAN_SIGN?(this._err(o.missingDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this.state=c,this._emitCurrentToken()):e===a.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.missingQuoteBeforeDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState("BOGUS_DOCTYPE_STATE"))}BEFORE_DOCTYPE_SYSTEM_IDENTIFIER_STATE(e){h(e)||(e===a.QUOTATION_MARK?(this.currentToken.systemId="",this.state="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED_STATE"):e===a.APOSTROPHE?(this.currentToken.systemId="",this.state="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED_STATE"):e===a.GREATER_THAN_SIGN?(this._err(o.missingDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this.state=c,this._emitCurrentToken()):e===a.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.missingQuoteBeforeDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._reconsumeInState("BOGUS_DOCTYPE_STATE")))}DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED_STATE(e){e===a.QUOTATION_MARK?this.state="AFTER_DOCTYPE_SYSTEM_IDENTIFIER_STATE":e===a.NULL?(this._err(o.unexpectedNullCharacter),this.currentToken.systemId+=i.REPLACEMENT_CHARACTER):e===a.GREATER_THAN_SIGN?(this._err(o.abruptDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this.state=c):e===a.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.systemId+=y(e)}DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED_STATE(e){e===a.APOSTROPHE?this.state="AFTER_DOCTYPE_SYSTEM_IDENTIFIER_STATE":e===a.NULL?(this._err(o.unexpectedNullCharacter),this.currentToken.systemId+=i.REPLACEMENT_CHARACTER):e===a.GREATER_THAN_SIGN?(this._err(o.abruptDoctypeSystemIdentifier),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this.state=c):e===a.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):this.currentToken.systemId+=y(e)}AFTER_DOCTYPE_SYSTEM_IDENTIFIER_STATE(e){h(e)||(e===a.GREATER_THAN_SIGN?(this._emitCurrentToken(),this.state=c):e===a.EOF?(this._err(o.eofInDoctype),this.currentToken.forceQuirks=!0,this._emitCurrentToken(),this._emitEOFToken()):(this._err(o.unexpectedCharacterAfterDoctypeSystemIdentifier),this._reconsumeInState("BOGUS_DOCTYPE_STATE")))}BOGUS_DOCTYPE_STATE(e){e===a.GREATER_THAN_SIGN?(this._emitCurrentToken(),this.state=c):e===a.NULL?this._err(o.unexpectedNullCharacter):e===a.EOF&&(this._emitCurrentToken(),this._emitEOFToken())}CDATA_SECTION_STATE(e){e===a.RIGHT_SQUARE_BRACKET?this.state="CDATA_SECTION_BRACKET_STATE":e===a.EOF?(this._err(o.eofInCdata),this._emitEOFToken()):this._emitCodePoint(e)}CDATA_SECTION_BRACKET_STATE(e){e===a.RIGHT_SQUARE_BRACKET?this.state="CDATA_SECTION_END_STATE":(this._emitChars("]"),this._reconsumeInState("CDATA_SECTION_STATE"))}CDATA_SECTION_END_STATE(e){e===a.GREATER_THAN_SIGN?this.state=c:e===a.RIGHT_SQUARE_BRACKET?this._emitChars("]"):(this._emitChars("]]"),this._reconsumeInState("CDATA_SECTION_STATE"))}CHARACTER_REFERENCE_STATE(e){this.tempBuff=[a.AMPERSAND],e===a.NUMBER_SIGN?(this.tempBuff.push(e),this.state="NUMERIC_CHARACTER_REFERENCE_STATE"):w(e)?this._reconsumeInState("NAMED_CHARACTER_REFERENCE_STATE"):(this._flushCodePointsConsumedAsCharacterReference(),this._reconsumeInState(this.returnState))}NAMED_CHARACTER_REFERENCE_STATE(e){const t=this._matchNamedCharacterReference(e);if(this._ensureHibernation())this.tempBuff=[a.AMPERSAND];else if(t){const e=this.tempBuff[this.tempBuff.length-1]===a.SEMICOLON;this._isCharacterReferenceAttributeQuirk(e)||(e||this._errOnNextCodePoint(o.missingSemicolonAfterCharacterReference),this.tempBuff=t),this._flushCodePointsConsumedAsCharacterReference(),this.state=this.returnState}else this._flushCodePointsConsumedAsCharacterReference(),this.state="AMBIGUOS_AMPERSAND_STATE"}AMBIGUOS_AMPERSAND_STATE(e){w(e)?this._isCharacterReferenceInAttribute()?this.currentAttr.value+=y(e):this._emitCodePoint(e):(e===a.SEMICOLON&&this._err(o.unknownNamedCharacterReference),this._reconsumeInState(this.returnState))}NUMERIC_CHARACTER_REFERENCE_STATE(e){this.charRefCode=0,e===a.LATIN_SMALL_X||e===a.LATIN_CAPITAL_X?(this.tempBuff.push(e),this.state="HEXADEMICAL_CHARACTER_REFERENCE_START_STATE"):this._reconsumeInState("DECIMAL_CHARACTER_REFERENCE_START_STATE")}HEXADEMICAL_CHARACTER_REFERENCE_START_STATE(e){!function(e){return d(e)||g(e)||_(e)}(e)?(this._err(o.absenceOfDigitsInNumericCharacterReference),this._flushCodePointsConsumedAsCharacterReference(),this._reconsumeInState(this.returnState)):this._reconsumeInState("HEXADEMICAL_CHARACTER_REFERENCE_STATE")}DECIMAL_CHARACTER_REFERENCE_START_STATE(e){d(e)?this._reconsumeInState("DECIMAL_CHARACTER_REFERENCE_STATE"):(this._err(o.absenceOfDigitsInNumericCharacterReference),this._flushCodePointsConsumedAsCharacterReference(),this._reconsumeInState(this.returnState))}HEXADEMICAL_CHARACTER_REFERENCE_STATE(e){g(e)?this.charRefCode=16*this.charRefCode+e-55:_(e)?this.charRefCode=16*this.charRefCode+e-87:d(e)?this.charRefCode=16*this.charRefCode+e-48:e===a.SEMICOLON?this.state="NUMERIC_CHARACTER_REFERENCE_END_STATE":(this._err(o.missingSemicolonAfterCharacterReference),this._reconsumeInState("NUMERIC_CHARACTER_REFERENCE_END_STATE"))}DECIMAL_CHARACTER_REFERENCE_STATE(e){d(e)?this.charRefCode=10*this.charRefCode+e-48:e===a.SEMICOLON?this.state="NUMERIC_CHARACTER_REFERENCE_END_STATE":(this._err(o.missingSemicolonAfterCharacterReference),this._reconsumeInState("NUMERIC_CHARACTER_REFERENCE_END_STATE"))}NUMERIC_CHARACTER_REFERENCE_END_STATE(){if(this.charRefCode===a.NULL)this._err(o.nullCharacterReference),this.charRefCode=a.REPLACEMENT_CHARACTER;else if(this.charRefCode>1114111)this._err(o.characterReferenceOutsideUnicodeRange),this.charRefCode=a.REPLACEMENT_CHARACTER;else if(i.isSurrogate(this.charRefCode))this._err(o.surrogateCharacterReference),this.charRefCode=a.REPLACEMENT_CHARACTER;else if(i.isUndefinedCodePoint(this.charRefCode))this._err(o.noncharacterCharacterReference);else if(i.isControlCodePoint(this.charRefCode)||this.charRefCode===a.CARRIAGE_RETURN){this._err(o.controlCharacterReference);const e=l[this.charRefCode];e&&(this.charRefCode=e)}this.tempBuff=[this.charRefCode],this._flushCodePointsConsumedAsCharacterReference(),this._reconsumeInState(this.returnState)}}A.CHARACTER_TOKEN="CHARACTER_TOKEN",A.NULL_CHARACTER_TOKEN="NULL_CHARACTER_TOKEN",A.WHITESPACE_CHARACTER_TOKEN="WHITESPACE_CHARACTER_TOKEN",A.START_TAG_TOKEN="START_TAG_TOKEN",A.END_TAG_TOKEN="END_TAG_TOKEN",A.COMMENT_TOKEN="COMMENT_TOKEN",A.DOCTYPE_TOKEN="DOCTYPE_TOKEN",A.EOF_TOKEN="EOF_TOKEN",A.HIBERNATION_TOKEN="HIBERNATION_TOKEN",A.MODE={DATA:c,RCDATA:"RCDATA_STATE",RAWTEXT:"RAWTEXT_STATE",SCRIPT_DATA:"SCRIPT_DATA_STATE",PLAINTEXT:"PLAINTEXT_STATE"},A.getTokenAttr=function(e,t){for(let n=e.attrs.length-1;n>=0;n--)if(e.attrs[n].name===t)return e.attrs[n].value;return null},e.exports=A},function(e,t,n){"use strict";const r=n(7),i=n(7).buildOptions,s=n(177),o=1,a=2,u=3,l=4;let c="<((!\\[CDATA\\[([\\s\\S]*?)(]]>))|(([\\w:\\-._]*:)?([\\w:\\-._]+))([^>]*)>|((\\/)(([\\w:\\-._]*:)?([\\w:\\-._]+))\\s*>))([^<]*)";!Number.parseInt&&window.parseInt&&(Number.parseInt=window.parseInt),!Number.parseFloat&&window.parseFloat&&(Number.parseFloat=window.parseFloat);const h={attributeNamePrefix:"@_",attrNodeName:!1,textNodeName:"#text",ignoreAttributes:!0,ignoreNameSpace:!1,allowBooleanAttributes:!1,parseNodeValue:!0,parseAttributeValue:!1,arrayMode:!1,trimValues:!0,cdataTagName:!1,cdataPositionChar:"\\c",localeRange:"",tagValueProcessor:function(e,t){return e},attrValueProcessor:function(e,t){return e},stopNodes:[]};t.defaultOptions=h;const d=["attributeNamePrefix","attrNodeName","textNodeName","ignoreAttributes","ignoreNameSpace","allowBooleanAttributes","parseNodeValue","parseAttributeValue","arrayMode","trimValues","cdataTagName","cdataPositionChar","localeRange","tagValueProcessor","attrValueProcessor","parseTrueNumberOnly","stopNodes"];t.props=d;function p(e,t,n){const r=e[7]||n;let i=e[14];return i&&(t.trimValues&&(i=i.trim()),i=t.tagValueProcessor(i,r),i=w(i,t.parseNodeValue,t.parseTrueNumberOnly)),i}function f(e){return"]]>"===e[4]?l:"/"===e[10]?a:void 0!==e[8]&&"/"===e[8].substr(e[8].length-1)?u:o}function m(e,t){if(t.ignoreNameSpace){const t=e.split(":"),n="/"===e.charAt(0)?"/":"";if("xmlns"===t[0])return"";2===t.length&&(e=n+t[1])}return e}function w(e,t,n){if(t&&"string"==typeof e){let t;return""===e.trim()||isNaN(e)?t="true"===e||"false"!==e&&e:(-1!==e.indexOf("0x")?t=Number.parseInt(e,16):-1!==e.indexOf(".")?(t=Number.parseFloat(e),e=e.replace(/0+$/,"")):t=Number.parseInt(e,10),n&&(t=String(t)===e?t:e)),t}return r.isExist(e)?e:""}const g=new RegExp("([^\\s=]+)\\s*(=\\s*(['\"])(.*?)\\3)?","g");function _(e,t){if(!t.ignoreAttributes&&"string"==typeof e){e=e.replace(/\r?\n/g," ");const n=r.getAllMatches(e,g),i=n.length,s={};for(let e=0;e<i;e++){const r=m(n[e][1],t);r.length&&(void 0!==n[e][4]?(t.trimValues&&(n[e][4]=n[e][4].trim()),n[e][4]=t.attrValueProcessor(n[e][4],r),s[t.attributeNamePrefix+r]=w(n[e][4],t.parseAttributeValue,t.parseTrueNumberOnly)):t.allowBooleanAttributes&&(s[t.attributeNamePrefix+r]=!0))}if(!Object.keys(s).length)return;if(t.attrNodeName){const e={};return e[t.attrNodeName]=s,e}return s}}t.getTraversalObj=function(e,t){t=i(t,h,d),e=e.replace(/<!--[\s\S]*?-->/g,"");const n=new s("!xml");let o=n;c=c.replace(/\[\\w/g,"["+t.localeRange+"\\w");const m=new RegExp(c,"g");let w=m.exec(e),g=m.exec(e);for(;w;){const n=f(w);if(n===a)o.parent&&w[14]&&(o.parent.val=r.getValue(o.parent.val)+""+p(w,t,o.parent.tagname)),t.stopNodes.length&&t.stopNodes.includes(o.tagname)&&(o.child=[],null==o.attrsMap&&(o.attrsMap={}),o.val=e.substr(o.startIndex+1,w.index-o.startIndex-1)),o=o.parent;else if(n===l)if(t.cdataTagName){const e=new s(t.cdataTagName,o,w[3]);e.attrsMap=_(w[8],t),o.addChild(e),o.val=r.getValue(o.val)+t.cdataPositionChar,w[14]&&(o.val+=p(w,t))}else o.val=(o.val||"")+(w[3]||"")+p(w,t);else if(n===u){o&&w[14]&&(o.val=r.getValue(o.val)+""+p(w,t));const e=new s(t.ignoreNameSpace?w[7]:w[5],o,"");w[8]&&w[8].length>0&&(w[8]=w[8].substr(0,w[8].length-1)),e.attrsMap=_(w[8],t),o.addChild(e)}else{const e=new s(t.ignoreNameSpace?w[7]:w[5],o,p(w,t));t.stopNodes.length&&t.stopNodes.includes(e.tagname)&&(e.startIndex=w.index+w[1].length),e.attrsMap=_(w[8],t),o.addChild(e),o=e}w=g,g=m.exec(e)}return n}},function(e,t,n){"use strict";var r=n(16);e.exports=r.DEFAULT=new r({include:[n(26)],explicit:[n(199),n(200),n(201)]})},function(e,t,n){"use strict";(function(t){const r=n(212),i=n(54),s=n(28),o=n(17),a=n(18).BigNumber,u=n(29),l=n(12),c=l.MT,h=l.NUMBYTES,d=(l.SIMPLE,l.SYMS),p=new a(-1),f=p.minus(new a(Number.MAX_SAFE_INTEGER.toString(16),16)),m=Symbol("count"),w=(Symbol("pending_key"),Symbol("major type")),g=Symbol("error"),_=Symbol("not found");function b(e,t,n){const r=[];return r[m]=n,r[d.PARENT]=e,r[w]=t,r}function y(e,t){const n=new u;return n[m]=-1,n[d.PARENT]=e,n[w]=t,n}function v(e){return o.bufferToBigInt(e)}function E(e){return BigInt("-1")-o.bufferToBigInt(e)}class A extends r{constructor(e){const t=(e=e||{}).tags;delete e.tags;const n=null!=e.max_depth?e.max_depth:-1;delete e.max_depth;const r=!!o.hasBigInt&&!!e.bigint;delete e.bigint,super(e),this.running=!0,this.max_depth=n,this.tags=t,r&&(null==this.tags&&(this.tags={}),this.tags[2]=v,this.tags[3]=E)}static nullcheck(e){switch(e){case d.NULL:return null;case d.UNDEFINED:return;case _:throw new Error("Value not found");default:return e}}static decodeFirstSync(e,t){let n,r={};switch(typeof(t=t||{encoding:"hex"})){case"string":n=t;break;case"object":r=o.extend({},t),n=r.encoding,delete r.encoding}const i=new A(r),s=new u(e,null!=n?n:o.guessEncoding(e)),a=i._parse();let l=a.next();for(;!l.done;){const e=s.read(l.value);if(null==e||e.length!==l.value)throw new Error("Insufficient data");l=a.next(e)}return A.nullcheck(l.value)}static decodeAllSync(e,t){let n,r={};switch(typeof(t=t||{encoding:"hex"})){case"string":n=t;break;case"object":r=o.extend({},t),n=r.encoding,delete r.encoding}const i=new A(r),s=new u(e,null!=n?n:o.guessEncoding(e)),a=[];for(;s.length>0;){const e=i._parse();let t=e.next();for(;!t.done;){const n=s.read(t.value);if(null==n||n.length!==t.value)throw new Error("Insufficient data");t=e.next(n)}a.push(A.nullcheck(t.value))}return a}static decodeFirst(e,t,n){let r={},i=!1,s="hex";switch(typeof t){case"function":n=t,s=o.guessEncoding(e);break;case"string":s=t;break;case"object":r=o.extend({},t),s=null!=r.encoding?r.encoding:o.guessEncoding(e),delete r.encoding,i=null!=r.required&&r.required,delete r.required}const a=new A(r);let u,l=_;return a.on("data",e=>{l=A.nullcheck(e),a.close()}),"function"==typeof n?(a.once("error",e=>{const t=l;return l=g,a.close(),n(e,t)}),a.once("end",()=>{switch(l){case _:return i?n(new Error("No CBOR found")):n(null,l);case g:return;default:return n(null,l)}})):u=new Promise((e,t)=>(a.once("error",e=>(l=g,a.close(),t(e))),a.once("end",()=>{switch(l){case _:return i?t(new Error("No CBOR found")):e(l);case g:return;default:return e(l)}}))),a.end(e,s),u}static decodeAll(e,t,n){let r={},i="hex";switch(typeof t){case"function":n=t,i=o.guessEncoding(e);break;case"string":i=t;break;case"object":r=o.extend({},t),i=null!=r.encoding?r.encoding:o.guessEncoding(e),delete r.encoding}const s=new A(r);let a;const u=[];return s.on("data",e=>u.push(A.nullcheck(e))),"function"==typeof n?(s.on("error",n),s.on("end",()=>n(null,u))):a=new Promise((e,t)=>{s.on("error",t),s.on("end",()=>e(u))}),s.end(e,i),a}close(){this.running=!1,this.__fresh=!0}*_parse(){let e=null,n=0,r=null;for(;;){if(this.max_depth>=0&&n>this.max_depth)throw new Error("Maximum depth "+this.max_depth+" exceeded");const l=(yield 1)[0];if(!this.running)throw new Error("Unexpected data: 0x"+l.toString(16));const g=l>>5,_=31&l,v=null!=e?e[w]:void 0,E=null!=e?e.length:void 0;switch(_){case h.ONE:this.emit("more-bytes",g,1,v,E),r=(yield 1)[0];break;case h.TWO:case h.FOUR:case h.EIGHT:const e=1<<_-24;this.emit("more-bytes",g,e,v,E);const t=yield e;r=g===c.SIMPLE_FLOAT?t:o.parseCBORint(_,t);break;case 28:case 29:case 30:throw this.running=!1,new Error("Additional info not implemented: "+_);case h.INDEFINITE:switch(g){case c.POS_INT:case c.NEG_INT:case c.TAG:throw new Error("Invalid indefinite encoding for MT "+g)}r=-1;break;default:r=_}switch(g){case c.POS_INT:break;case c.NEG_INT:r=r===Number.MAX_SAFE_INTEGER?f:r instanceof a?p.minus(r):-1-r;break;case c.BYTE_STRING:case c.UTF8_STRING:switch(r){case 0:this.emit("start-string",g,r,v,E),r=g===c.BYTE_STRING?t.allocUnsafe(0):"";break;case-1:this.emit("start",g,d.STREAM,v,E),e=y(e,g),n++;continue;default:this.emit("start-string",g,r,v,E),r=yield r,g===c.UTF8_STRING&&(r=o.utf8(r))}break;case c.ARRAY:case c.MAP:switch(r){case 0:r=g===c.MAP?{}:[];break;case-1:this.emit("start",g,d.STREAM,v,E),e=b(e,g,-1),n++;continue;default:this.emit("start",g,r,v,E),e=b(e,g,r*(g-3)),n++;continue}break;case c.TAG:this.emit("start",g,r,v,E),e=b(e,g,1),e.push(r),n++;continue;case c.SIMPLE_FLOAT:if("number"==typeof r){if(_===h.ONE&&r<32)throw new Error("Invalid two-byte encoding of simple value "+r);const t=null!=e;r=s.decode(r,t,t&&e[m]<0)}else r=o.parseCBORfloat(r)}this.emit("value",r,v,E,_);let A=!1;for(;null!=e;){switch(!1){case r!==d.BREAK:e[m]=1;break;case!Array.isArray(e):e.push(r);break;case!(e instanceof u):const t=e[w];if(null!=t&&t!==g)throw this.running=!1,new Error("Invalid major type in indefinite encoding");e.write(r)}if(0!=--e[m]){A=!0;break}if(--n,delete e[m],this.emit("stop",e[w]),Array.isArray(e))switch(e[w]){case c.ARRAY:r=e;break;case c.MAP:let t=!0;if(e.length%2!=0)throw new Error("Invalid map length: "+e.length);for(let n=0,r=e.length;n<r;n+=2)if("string"!=typeof e[n]){t=!1;break}if(t){r={};for(let t=0,n=e.length;t<n;t+=2)r[e[t]]=e[t+1]}else{r=new Map;for(let t=0,n=e.length;t<n;t+=2)r.set(e[t],e[t+1])}break;case c.TAG:r=new i(e[0],e[1]).convert(this.tags)}else if(e instanceof u)switch(e[w]){case c.BYTE_STRING:r=e.slice();break;case c.UTF8_STRING:r=e.toString("utf-8")}const t=e;e=e[d.PARENT],delete t[d.PARENT],delete t[w]}if(!A)return r}}}A.NOT_FOUND=_,e.exports=A}).call(this,n(3).Buffer)},function(e,t,n){"use strict";n.d(t,"b",(function(){return a})),n.d(t,"a",(function(){return u}));var r=n(115),i=n.n(r),s=n(39),o=n(1);async function a(e,t,n,r){if(e.reader&&r&&("gzip"===t&&!n||!t&&"gzip"===n))return e.setContent(new o.a(e.reader)),e;const i=new Uint8Array(await e.getBuffer()),s=await u(i,t,n);return i!==s&&e.setContent(s),e}async function u(e,t,n){const r=e;try{"chunked"===n&&(e=function(e){let t=0,n=0;const r=new TextDecoder("utf-8");for(;t<e.length;){let s=t;for(;e[s]>=48&&e[s]<=57||e[s]>=65&&e[s]<=70||e[s]>=97&&e[s]<=102;)s++;if(0===s)return e;if(13!=e[s]||10!=e[s+1])return e;s+=2;var i=parseInt(r.decode(e.subarray(t,s)),16);if(0==i)break;e.set(e.subarray(s,s+i),n),s+=i,n+=i,13==e[s]&&10==e[s+1]&&(s+=2),t=s}return e.subarray(0,n)}(e))}catch(e){console.log("Chunk-Encoding Ignored: "+e)}try{if("br"===t)0===(e=i()(e)).length&&(e=r);else if("gzip"===t||"gzip"===n){const t=new s.Inflate;t.push(e,!0),t.result&&!t.err&&(e=t.result)}}catch(e){console.log("Content-Encoding Ignored: "+e)}return e}},function(e,t,n){"use strict";var r={};(0,n(9).assign)(r,n(159),n(162),n(85)),e.exports=r},function(e,t){var n={};n[t.ACCEPTED=202]="Accepted",n[t.BAD_GATEWAY=502]="Bad Gateway",n[t.BAD_REQUEST=400]="Bad Request",n[t.CONFLICT=409]="Conflict",n[t.CONTINUE=100]="Continue",n[t.CREATED=201]="Created",n[t.EXPECTATION_FAILED=417]="Expectation Failed",n[t.FAILED_DEPENDENCY=424]="Failed Dependency",n[t.FORBIDDEN=403]="Forbidden",n[t.GATEWAY_TIMEOUT=504]="Gateway Timeout",n[t.GONE=410]="Gone",n[t.HTTP_VERSION_NOT_SUPPORTED=505]="HTTP Version Not Supported",n[t.IM_A_TEAPOT=418]="I'm a teapot",n[t.INSUFFICIENT_SPACE_ON_RESOURCE=419]="Insufficient Space on Resource",n[t.INSUFFICIENT_STORAGE=507]="Insufficient Storage",n[t.INTERNAL_SERVER_ERROR=500]="Server Error",n[t.LENGTH_REQUIRED=411]="Length Required",n[t.LOCKED=423]="Locked",n[t.METHOD_FAILURE=420]="Method Failure",n[t.METHOD_NOT_ALLOWED=405]="Method Not Allowed",n[t.MOVED_PERMANENTLY=301]="Moved Permanently",n[t.MOVED_TEMPORARILY=302]="Moved Temporarily",n[t.MULTI_STATUS=207]="Multi-Status",n[t.MULTIPLE_CHOICES=300]="Multiple Choices",n[t.NETWORK_AUTHENTICATION_REQUIRED=511]="Network Authentication Required",n[t.NO_CONTENT=204]="No Content",n[t.NON_AUTHORITATIVE_INFORMATION=203]="Non Authoritative Information",n[t.NOT_ACCEPTABLE=406]="Not Acceptable",n[t.NOT_FOUND=404]="Not Found",n[t.NOT_IMPLEMENTED=501]="Not Implemented",n[t.NOT_MODIFIED=304]="Not Modified",n[t.OK=200]="OK",n[t.PARTIAL_CONTENT=206]="Partial Content",n[t.PAYMENT_REQUIRED=402]="Payment Required",n[t.PERMANENT_REDIRECT=308]="Permanent Redirect",n[t.PRECONDITION_FAILED=412]="Precondition Failed",n[t.PRECONDITION_REQUIRED=428]="Precondition Required",n[t.PROCESSING=102]="Processing",n[t.PROXY_AUTHENTICATION_REQUIRED=407]="Proxy Authentication Required",n[t.REQUEST_HEADER_FIELDS_TOO_LARGE=431]="Request Header Fields Too Large",n[t.REQUEST_TIMEOUT=408]="Request Timeout",n[t.REQUEST_TOO_LONG=413]="Request Entity Too Large",n[t.REQUEST_URI_TOO_LONG=414]="Request-URI Too Long",n[t.REQUESTED_RANGE_NOT_SATISFIABLE=416]="Requested Range Not Satisfiable",n[t.RESET_CONTENT=205]="Reset Content",n[t.SEE_OTHER=303]="See Other",n[t.SERVICE_UNAVAILABLE=503]="Service Unavailable",n[t.SWITCHING_PROTOCOLS=101]="Switching Protocols",n[t.TEMPORARY_REDIRECT=307]="Temporary Redirect",n[t.TOO_MANY_REQUESTS=429]="Too Many Requests",n[t.UNAUTHORIZED=401]="Unauthorized",n[t.UNPROCESSABLE_ENTITY=422]="Unprocessable Entity",n[t.UNSUPPORTED_MEDIA_TYPE=415]="Unsupported Media Type",n[t.USE_PROXY=305]="Use Proxy",t.getStatusText=function(e){if(n.hasOwnProperty(e))return n[e];throw new Error("Status code does not exist: "+e)},t.getStatusCode=function(e){for(key in n)if(n[key]===e)return parseInt(key,10);throw new Error("Reason phrase does not exist: "+e)}},function(e,t,n){"use strict";let{Json2Csv:r}=n(204),{Csv2Json:i}=n(207),s=n(53);function o(e,t,n,r){return s.convert({data:t,callback:n,options:r,converter:e})}function a(e,t,n){return new Promise((r,i)=>o(e,t,(e,t)=>e?i(e):r(t),n))}function u(e,t,n,r,i){return console.warn("WARNING: "+t+" is deprecated and will be removed soon. Please use "+n+" instead."),a(e,r,i)}e.exports={json2csv:(e,t,n)=>o(r,e,t,n),csv2json:(e,t,n)=>o(i,e,t,n),json2csvAsync:(e,t)=>a(r,e,t),csv2jsonAsync:(e,t)=>a(i,e,t),json2csvPromisified:(e,t)=>u(r,"json2csvPromisified()","json2csvAsync()",e,t),csv2jsonPromisified:(e,t)=>u(i,"csv2jsonPromisified()","csv2jsonAsync()",e,t)}},function(e,t,n){"use strict";var r,i="object"==typeof Reflect?Reflect:null,s=i&&"function"==typeof i.apply?i.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};r=i&&"function"==typeof i.ownKeys?i.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var o=Number.isNaN||function(e){return e!=e};function a(){a.init.call(this)}e.exports=a,a.EventEmitter=a,a.prototype._events=void 0,a.prototype._eventsCount=0,a.prototype._maxListeners=void 0;var u=10;function l(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function c(e){return void 0===e._maxListeners?a.defaultMaxListeners:e._maxListeners}function h(e,t,n,r){var i,s,o,a;if(l(n),void 0===(s=e._events)?(s=e._events=Object.create(null),e._eventsCount=0):(void 0!==s.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),s=e._events),o=s[t]),void 0===o)o=s[t]=n,++e._eventsCount;else if("function"==typeof o?o=s[t]=r?[n,o]:[o,n]:r?o.unshift(n):o.push(n),(i=c(e))>0&&o.length>i&&!o.warned){o.warned=!0;var u=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=e,u.type=t,u.count=o.length,a=u,console&&console.warn&&console.warn(a)}return e}function d(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function p(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},i=d.bind(r);return i.listener=n,r.wrapFn=i,i}function f(e,t,n){var r=e._events;if(void 0===r)return[];var i=r[t];return void 0===i?[]:"function"==typeof i?n?[i.listener||i]:[i]:n?function(e){for(var t=new Array(e.length),n=0;n<t.length;++n)t[n]=e[n].listener||e[n];return t}(i):w(i,i.length)}function m(e){var t=this._events;if(void 0!==t){var n=t[e];if("function"==typeof n)return 1;if(void 0!==n)return n.length}return 0}function w(e,t){for(var n=new Array(t),r=0;r<t;++r)n[r]=e[r];return n}Object.defineProperty(a,"defaultMaxListeners",{enumerable:!0,get:function(){return u},set:function(e){if("number"!=typeof e||e<0||o(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");u=e}}),a.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},a.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||o(e))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this},a.prototype.getMaxListeners=function(){return c(this)},a.prototype.emit=function(e){for(var t=[],n=1;n<arguments.length;n++)t.push(arguments[n]);var r="error"===e,i=this._events;if(void 0!==i)r=r&&void 0===i.error;else if(!r)return!1;if(r){var o;if(t.length>0&&(o=t[0]),o instanceof Error)throw o;var a=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw a.context=o,a}var u=i[e];if(void 0===u)return!1;if("function"==typeof u)s(u,this,t);else{var l=u.length,c=w(u,l);for(n=0;n<l;++n)s(c[n],this,t)}return!0},a.prototype.addListener=function(e,t){return h(this,e,t,!1)},a.prototype.on=a.prototype.addListener,a.prototype.prependListener=function(e,t){return h(this,e,t,!0)},a.prototype.once=function(e,t){return l(t),this.on(e,p(this,e,t)),this},a.prototype.prependOnceListener=function(e,t){return l(t),this.prependListener(e,p(this,e,t)),this},a.prototype.removeListener=function(e,t){var n,r,i,s,o;if(l(t),void 0===(r=this._events))return this;if(void 0===(n=r[e]))return this;if(n===t||n.listener===t)0==--this._eventsCount?this._events=Object.create(null):(delete r[e],r.removeListener&&this.emit("removeListener",e,n.listener||t));else if("function"!=typeof n){for(i=-1,s=n.length-1;s>=0;s--)if(n[s]===t||n[s].listener===t){o=n[s].listener,i=s;break}if(i<0)return this;0===i?n.shift():function(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}(n,i),1===n.length&&(r[e]=n[0]),void 0!==r.removeListener&&this.emit("removeListener",e,o||t)}return this},a.prototype.off=a.prototype.removeListener,a.prototype.removeAllListeners=function(e){var t,n,r;if(void 0===(n=this._events))return this;if(void 0===n.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==n[e]&&(0==--this._eventsCount?this._events=Object.create(null):delete n[e]),this;if(0===arguments.length){var i,s=Object.keys(n);for(r=0;r<s.length;++r)"removeListener"!==(i=s[r])&&this.removeAllListeners(i);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"==typeof(t=n[e]))this.removeListener(e,t);else if(void 0!==t)for(r=t.length-1;r>=0;r--)this.removeListener(e,t[r]);return this},a.prototype.listeners=function(e){return f(this,e,!0)},a.prototype.rawListeners=function(e){return f(this,e,!1)},a.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):m.call(e,t)},a.prototype.listenerCount=m,a.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},function(e,t,n){(t=e.exports=n(68)).Stream=t,t.Readable=t,t.Writable=n(45),t.Duplex=n(10),t.Transform=n(74),t.PassThrough=n(137)},function(e,t,n){var r=n(3),i=r.Buffer;function s(e,t){for(var n in e)t[n]=e[n]}function o(e,t,n){return i(e,t,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=r:(s(r,t),t.Buffer=o),s(i,o),o.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,n)},o.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=i(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},o.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},o.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){"use strict";(function(t,r,i){var s=n(33);function o(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;e.entry=null;for(;r;){var i=r.callback;t.pendingcb--,i(n),r=r.next}t.corkedRequestsFree?t.corkedRequestsFree.next=e:t.corkedRequestsFree=e}(t,e)}}e.exports=_;var a,u=!t.browser&&["v0.10","v0.9."].indexOf(t.version.slice(0,5))>-1?r:s.nextTick;_.WritableState=g;var l=Object.create(n(23));l.inherits=n(13);var c={deprecate:n(135)},h=n(70),d=n(44).Buffer,p=i.Uint8Array||function(){};var f,m=n(71);function w(){}function g(e,t){a=a||n(10),e=e||{};var r=t instanceof a;this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var i=e.highWaterMark,l=e.writableHighWaterMark,c=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(l||0===l)?l:c,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var h=!1===e.decodeStrings;this.decodeStrings=!h,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,i=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,i){--t.pendingcb,n?(s.nextTick(i,r),s.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",r)):(i(r),e._writableState.errorEmitted=!0,e.emit("error",r),x(e,t))}(e,n,r,t,i);else{var o=E(n);o||n.corked||n.bufferProcessing||!n.bufferedRequest||v(e,n),r?u(y,e,n,o,i):y(e,n,o,i)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function _(e){if(a=a||n(10),!(f.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),h.call(this)}function b(e,t,n,r,i,s,o){t.writelen=r,t.writecb=o,t.writing=!0,t.sync=!0,n?e._writev(i,t.onwrite):e._write(i,s,t.onwrite),t.sync=!1}function y(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,i=new Array(r),s=t.corkedRequestsFree;s.entry=n;for(var a=0,u=!0;n;)i[a]=n,n.isBuf||(u=!1),n=n.next,a+=1;i.allBuffers=u,b(e,t,!0,t.length,i,"",s.finish),t.pendingcb++,t.lastBufferedRequest=null,s.next?(t.corkedRequestsFree=s.next,s.next=null):t.corkedRequestsFree=new o(t),t.bufferedRequestCount=0}else{for(;n;){var l=n.chunk,c=n.encoding,h=n.callback;if(b(e,t,!1,t.objectMode?1:l.length,l,c,h),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function E(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function A(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var n=E(t);return n&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,s.nextTick(A,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}l.inherits(_,h),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(f=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!f.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):f=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,n){var r,i=this._writableState,o=!1,a=!i.objectMode&&(r=e,d.isBuffer(r)||r instanceof p);return a&&!d.isBuffer(e)&&(e=function(e){return d.from(e)}(e)),"function"==typeof t&&(n=t,t=null),a?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof n&&(n=w),i.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),s.nextTick(t,n)}(this,n):(a||function(e,t,n,r){var i=!0,o=!1;return null===n?o=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),s.nextTick(r,o),i=!1),i}(this,i,e,n))&&(i.pendingcb++,o=function(e,t,n,r,i,s){if(!n){var o=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=d.from(t,n));return t}(t,r,i);r!==o&&(n=!0,i="buffer",r=o)}var a=t.objectMode?1:r.length;t.length+=a;var u=t.length<t.highWaterMark;u||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:r,encoding:i,isBuf:n,callback:s,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else b(e,t,!1,a,r,i,s);return u}(this,i,a,e,t,n)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.finished||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(e,t,n){t.ending=!0,x(e,t),n&&(t.finished?s.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=m.destroy,_.prototype._undestroy=m.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this,n(14),n(72).setImmediate,n(6))},function(e,t,n){"use strict";const r=[65534,65535,131070,131071,196606,196607,262142,262143,327678,327679,393214,393215,458750,458751,524286,524287,589822,589823,655358,655359,720894,720895,786430,786431,851966,851967,917502,917503,983038,983039,1048574,1048575,1114110,1114111];t.REPLACEMENT_CHARACTER="�",t.CODE_POINTS={EOF:-1,NULL:0,TABULATION:9,CARRIAGE_RETURN:13,LINE_FEED:10,FORM_FEED:12,SPACE:32,EXCLAMATION_MARK:33,QUOTATION_MARK:34,NUMBER_SIGN:35,AMPERSAND:38,APOSTROPHE:39,HYPHEN_MINUS:45,SOLIDUS:47,DIGIT_0:48,DIGIT_9:57,SEMICOLON:59,LESS_THAN_SIGN:60,EQUALS_SIGN:61,GREATER_THAN_SIGN:62,QUESTION_MARK:63,LATIN_CAPITAL_A:65,LATIN_CAPITAL_F:70,LATIN_CAPITAL_X:88,LATIN_CAPITAL_Z:90,RIGHT_SQUARE_BRACKET:93,GRAVE_ACCENT:96,LATIN_SMALL_A:97,LATIN_SMALL_F:102,LATIN_SMALL_X:120,LATIN_SMALL_Z:122,REPLACEMENT_CHARACTER:65533},t.CODE_POINT_SEQUENCES={DASH_DASH_STRING:[45,45],DOCTYPE_STRING:[68,79,67,84,89,80,69],CDATA_START_STRING:[91,67,68,65,84,65,91],SCRIPT_STRING:[115,99,114,105,112,116],PUBLIC_STRING:[80,85,66,76,73,67],SYSTEM_STRING:[83,89,83,84,69,77]},t.isSurrogate=function(e){return e>=55296&&e<=57343},t.isSurrogatePair=function(e){return e>=56320&&e<=57343},t.getSurrogatePairCodePoint=function(e,t){return 1024*(e-55296)+9216+t},t.isControlCodePoint=function(e){return 32!==e&&10!==e&&13!==e&&9!==e&&12!==e&&e>=1&&e<=31||e>=127&&e<=159},t.isUndefinedCodePoint=function(e){return e>=64976&&e<=65007||r.indexOf(e)>-1}},function(e,t,n){"use strict";class r{constructor(e){const t={},n=this._getOverriddenMethods(this,t);for(const r of Object.keys(n))"function"==typeof n[r]&&(t[r]=e[r],e[r]=n[r])}_getOverriddenMethods(){throw new Error("Not implemented")}}r.install=function(e,t,n){e.__mixins||(e.__mixins=[]);for(let n=0;n<e.__mixins.length;n++)if(e.__mixins[n].constructor===t)return e.__mixins[n];const r=new t(e,n);return e.__mixins.push(r),r},e.exports=r},function(e,t,n){"use strict";e.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"}},function(e,t,n){"use strict";e.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"}},function(e,t,n){"use strict";var r=n(16);e.exports=new r({explicit:[n(186),n(187),n(188)]})},function(e,t,n){"use strict";function r(e){let t=e.indexOf(".");return{indexOfDot:t,currentKey:e.slice(0,t>=0?t:void 0),remainingKeyPath:e.slice(t+1)}}e.exports={evaluatePath:function e(t,n){if(!t)return null;let{indexOfDot:i,currentKey:s,remainingKeyPath:o}=r(n);if(i>=0&&!t[n])return Array.isArray(t[s])?t[s].map(t=>e(t,o)):e(t[s],o);if(Array.isArray(t))return t.map(t=>e(t,n));return t[n]},setPath:function e(t,n,i){if(!t)throw new Error("No document was provided.");let{indexOfDot:s,currentKey:o,remainingKeyPath:a}=r(n);if(s>=0){if(!t[o]&&Array.isArray(t))return t.forEach(t=>e(t,n,i));t[o]||(t[o]={}),e(t[o],a,i)}else{if(Array.isArray(t))return t.forEach(t=>e(t,a,i));t[n]=i}return t}}},function(e){e.exports=JSON.parse('{"errors":{"callbackRequired":"A callback is required!","optionsRequired":"Options were not passed and are required.","json2csv":{"cannotCallOn":"Cannot call json2csv on ","dataCheckFailure":"Data provided was not an array of documents.","notSameSchema":"Not all documents have the same schema."},"csv2json":{"cannotCallOn":"Cannot call csv2json on ","dataCheckFailure":"CSV is not a string."}},"defaultOptions":{"delimiter":{"field":",","wrap":"\\"","eol":"\\n"},"excelBOM":false,"prependHeader":true,"trimHeaderFields":false,"trimFieldValues":false,"sortHeader":false,"parseCsvNumbers":false,"keys":null,"checkSchemaDifferences":false,"expandArrayObjects":false,"unwindArrays":false,"useLocaleFormat":false},"values":{"excelBOM":"\ufeff"}}')},function(e,t,n){"use strict";let r=n(51),i=n(52);const s=/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z/;function o(e){return JSON.parse(JSON.stringify(e))}function a(e){return c(e)||l(e)||""===e}function u(e){return"object"==typeof e}function l(e){return null===e}function c(e){return void 0===e}function h(e,t){return e.filter(e=>!t.includes(e))}e.exports={isStringRepresentation:function(e,t){const n=e[0],r=e.length-1,i=e[r];return n===t.delimiter.wrap&&i===t.delimiter.wrap},isDateRepresentation:function(e){return s.test(e)},computeSchemaDifferences:function(e,t){return h(e,t).concat(h(t,e))},deepCopy:o,convert:function(e){let{options:t,callback:n}=function(e,t){if(u(e)&&(n=e,"function"!=typeof n))return{options:e,callback:t};var n;return{options:t,callback:e}}(e.callback,e.options);r=t,(r={...i.defaultOptions,...r||{}}).delimiter={...i.defaultOptions.delimiter,...r.delimiter},t=r;var r;let s=new e.converter(t);(function(e){if(!e.callback)throw new Error(i.errors.callbackRequired);if(!e.data)return e.callback(new Error(e.errorMessages.cannotCallOn+e.data+".")),!1;if(!e.dataCheckFn(e.data))return e.callback(new Error(e.errorMessages.dataCheckFailure)),!1;return!0})({data:e.data,callback:n,errorMessages:s.validationMessages,dataCheckFn:s.validationFn})&&s.convert(e.data,n)},isEmptyField:a,removeEmptyFields:function(e){return e.filter(e=>!a(e))},getNCharacters:function(e,t,n){return e.substring(t,t+n)},unwind:function(e,t){const n=[];return e.forEach(e=>{!function(e,t,n){const i=r.evaluatePath(t,n);let s=o(t);Array.isArray(i)?i.forEach(i=>{s=o(t),e.push(r.setPath(s,n,i))}):e.push(s)}(n,e,t)}),n},isInvalid:function(e){return e===1/0||e===-1/0},isString:function(e){return"string"==typeof e},isNull:l,isError:function(e){return"[object Error]"===Object.prototype.toString.call(e)},isDate:function(e){return e instanceof Date},isUndefined:c,isObject:u,unique:function(e){return[...new Set(e)]},flatten:function(e){return[].concat(...e)}}},function(e,t,n){"use strict";const r=n(18).BigNumber,i=n(17),s=n(55),o=new r(-1),a=new r(10),u=new r(2);class l{constructor(e,t,n){if(this.tag=e,this.value=t,this.err=n,"number"!=typeof this.tag)throw new Error("Invalid tag type ("+typeof this.tag+")");if(this.tag<0||(0|this.tag)!==this.tag)throw new Error("Tag must be a positive integer: "+this.tag)}toString(){return`${this.tag}(${JSON.stringify(this.value)})`}encodeCBOR(e){return e._pushTag(this.tag),e.pushAny(this.value)}convert(e){let t=null!=e?e[this.tag]:void 0;if("function"!=typeof t&&(t=l["_tag_"+this.tag],"function"!=typeof t))return this;try{return t.call(l,this.value)}catch(e){return this.err=e,this}}static _tag_0(e){return new Date(e)}static _tag_1(e){return new Date(1e3*e)}static _tag_2(e){return i.bufferToBignumber(e)}static _tag_3(e){return o.minus(i.bufferToBignumber(e))}static _tag_4(e){return a.pow(e[0]).times(e[1])}static _tag_5(e){return u.pow(e[0]).times(e[1])}static _tag_32(e){return s.parse(e)}static _tag_35(e){return new RegExp(e)}}e.exports=l},function(e,t,n){"use strict";var r=n(213),i=n(215);function s(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}t.parse=b,t.resolve=function(e,t){return b(e,!1,!0).resolve(t)},t.resolveObject=function(e,t){return e?b(e,!1,!0).resolveObject(t):t},t.format=function(e){i.isString(e)&&(e=b(e));return e instanceof s?e.format():s.prototype.format.call(e)},t.Url=s;var o=/^([a-z0-9.+-]+:)/i,a=/:[0-9]*$/,u=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,l=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),c=["'"].concat(l),h=["%","/","?",";","#"].concat(c),d=["/","?","#"],p=/^[+a-z0-9A-Z_-]{0,63}$/,f=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,m={javascript:!0,"javascript:":!0},w={javascript:!0,"javascript:":!0},g={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},_=n(216);function b(e,t,n){if(e&&i.isObject(e)&&e instanceof s)return e;var r=new s;return r.parse(e,t,n),r}s.prototype.parse=function(e,t,n){if(!i.isString(e))throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var s=e.indexOf("?"),a=-1!==s&&s<e.indexOf("#")?"?":"#",l=e.split(a);l[0]=l[0].replace(/\\/g,"/");var b=e=l.join(a);if(b=b.trim(),!n&&1===e.split("#").length){var y=u.exec(b);if(y)return this.path=b,this.href=b,this.pathname=y[1],y[2]?(this.search=y[2],this.query=t?_.parse(this.search.substr(1)):this.search.substr(1)):t&&(this.search="",this.query={}),this}var v=o.exec(b);if(v){var E=(v=v[0]).toLowerCase();this.protocol=E,b=b.substr(v.length)}if(n||v||b.match(/^\/\/[^@\/]+@[^@\/]+/)){var A="//"===b.substr(0,2);!A||v&&w[v]||(b=b.substr(2),this.slashes=!0)}if(!w[v]&&(A||v&&!g[v])){for(var x,T,S=-1,C=0;C<d.length;C++){-1!==(k=b.indexOf(d[C]))&&(-1===S||k<S)&&(S=k)}-1!==(T=-1===S?b.lastIndexOf("@"):b.lastIndexOf("@",S))&&(x=b.slice(0,T),b=b.slice(T+1),this.auth=decodeURIComponent(x)),S=-1;for(C=0;C<h.length;C++){var k;-1!==(k=b.indexOf(h[C]))&&(-1===S||k<S)&&(S=k)}-1===S&&(S=b.length),this.host=b.slice(0,S),b=b.slice(S),this.parseHost(),this.hostname=this.hostname||"";var D="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!D)for(var R=this.hostname.split(/\./),O=(C=0,R.length);C<O;C++){var I=R[C];if(I&&!I.match(p)){for(var N="",F=0,P=I.length;F<P;F++)I.charCodeAt(F)>127?N+="x":N+=I[F];if(!N.match(p)){var L=R.slice(0,C),B=R.slice(C+1),U=I.match(f);U&&(L.push(U[1]),B.unshift(U[2])),B.length&&(b="/"+B.join(".")+b),this.hostname=L.join(".");break}}}this.hostname.length>255?this.hostname="":this.hostname=this.hostname.toLowerCase(),D||(this.hostname=r.toASCII(this.hostname));var M=this.port?":"+this.port:"",W=this.hostname||"";this.host=W+M,this.href+=this.host,D&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==b[0]&&(b="/"+b))}if(!m[E])for(C=0,O=c.length;C<O;C++){var j=c[C];if(-1!==b.indexOf(j)){var z=encodeURIComponent(j);z===j&&(z=escape(j)),b=b.split(j).join(z)}}var H=b.indexOf("#");-1!==H&&(this.hash=b.substr(H),b=b.slice(0,H));var G=b.indexOf("?");if(-1!==G?(this.search=b.substr(G),this.query=b.substr(G+1),t&&(this.query=_.parse(this.query)),b=b.slice(0,G)):t&&(this.search="",this.query={}),b&&(this.pathname=b),g[E]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){M=this.pathname||"";var q=this.search||"";this.path=M+q}return this.href=this.format(),this},s.prototype.format=function(){var e=this.auth||"";e&&(e=(e=encodeURIComponent(e)).replace(/%3A/i,":"),e+="@");var t=this.protocol||"",n=this.pathname||"",r=this.hash||"",s=!1,o="";this.host?s=e+this.host:this.hostname&&(s=e+(-1===this.hostname.indexOf(":")?this.hostname:"["+this.hostname+"]"),this.port&&(s+=":"+this.port)),this.query&&i.isObject(this.query)&&Object.keys(this.query).length&&(o=_.stringify(this.query));var a=this.search||o&&"?"+o||"";return t&&":"!==t.substr(-1)&&(t+=":"),this.slashes||(!t||g[t])&&!1!==s?(s="//"+(s||""),n&&"/"!==n.charAt(0)&&(n="/"+n)):s||(s=""),r&&"#"!==r.charAt(0)&&(r="#"+r),a&&"?"!==a.charAt(0)&&(a="?"+a),t+s+(n=n.replace(/[?#]/g,(function(e){return encodeURIComponent(e)})))+(a=a.replace("#","%23"))+r},s.prototype.resolve=function(e){return this.resolveObject(b(e,!1,!0)).format()},s.prototype.resolveObject=function(e){if(i.isString(e)){var t=new s;t.parse(e,!1,!0),e=t}for(var n=new s,r=Object.keys(this),o=0;o<r.length;o++){var a=r[o];n[a]=this[a]}if(n.hash=e.hash,""===e.href)return n.href=n.format(),n;if(e.slashes&&!e.protocol){for(var u=Object.keys(e),l=0;l<u.length;l++){var c=u[l];"protocol"!==c&&(n[c]=e[c])}return g[n.protocol]&&n.hostname&&!n.pathname&&(n.path=n.pathname="/"),n.href=n.format(),n}if(e.protocol&&e.protocol!==n.protocol){if(!g[e.protocol]){for(var h=Object.keys(e),d=0;d<h.length;d++){var p=h[d];n[p]=e[p]}return n.href=n.format(),n}if(n.protocol=e.protocol,e.host||w[e.protocol])n.pathname=e.pathname;else{for(var f=(e.pathname||"").split("/");f.length&&!(e.host=f.shift()););e.host||(e.host=""),e.hostname||(e.hostname=""),""!==f[0]&&f.unshift(""),f.length<2&&f.unshift(""),n.pathname=f.join("/")}if(n.search=e.search,n.query=e.query,n.host=e.host||"",n.auth=e.auth,n.hostname=e.hostname||e.host,n.port=e.port,n.pathname||n.search){var m=n.pathname||"",_=n.search||"";n.path=m+_}return n.slashes=n.slashes||e.slashes,n.href=n.format(),n}var b=n.pathname&&"/"===n.pathname.charAt(0),y=e.host||e.pathname&&"/"===e.pathname.charAt(0),v=y||b||n.host&&e.pathname,E=v,A=n.pathname&&n.pathname.split("/")||[],x=(f=e.pathname&&e.pathname.split("/")||[],n.protocol&&!g[n.protocol]);if(x&&(n.hostname="",n.port=null,n.host&&(""===A[0]?A[0]=n.host:A.unshift(n.host)),n.host="",e.protocol&&(e.hostname=null,e.port=null,e.host&&(""===f[0]?f[0]=e.host:f.unshift(e.host)),e.host=null),v=v&&(""===f[0]||""===A[0])),y)n.host=e.host||""===e.host?e.host:n.host,n.hostname=e.hostname||""===e.hostname?e.hostname:n.hostname,n.search=e.search,n.query=e.query,A=f;else if(f.length)A||(A=[]),A.pop(),A=A.concat(f),n.search=e.search,n.query=e.query;else if(!i.isNullOrUndefined(e.search)){if(x)n.hostname=n.host=A.shift(),(D=!!(n.host&&n.host.indexOf("@")>0)&&n.host.split("@"))&&(n.auth=D.shift(),n.host=n.hostname=D.shift());return n.search=e.search,n.query=e.query,i.isNull(n.pathname)&&i.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.href=n.format(),n}if(!A.length)return n.pathname=null,n.search?n.path="/"+n.search:n.path=null,n.href=n.format(),n;for(var T=A.slice(-1)[0],S=(n.host||e.host||A.length>1)&&("."===T||".."===T)||""===T,C=0,k=A.length;k>=0;k--)"."===(T=A[k])?A.splice(k,1):".."===T?(A.splice(k,1),C++):C&&(A.splice(k,1),C--);if(!v&&!E)for(;C--;C)A.unshift("..");!v||""===A[0]||A[0]&&"/"===A[0].charAt(0)||A.unshift(""),S&&"/"!==A.join("/").substr(-1)&&A.push("");var D,R=""===A[0]||A[0]&&"/"===A[0].charAt(0);x&&(n.hostname=n.host=R?"":A.length?A.shift():"",(D=!!(n.host&&n.host.indexOf("@")>0)&&n.host.split("@"))&&(n.auth=D.shift(),n.host=n.hostname=D.shift()));return(v=v||n.host&&A.length)&&!R&&A.unshift(""),A.length?n.pathname=A.join("/"):(n.pathname=null,n.path=null),i.isNull(n.pathname)&&i.isNull(n.search)||(n.path=(n.pathname?n.pathname:"")+(n.search?n.search:"")),n.auth=e.auth||n.auth,n.slashes=n.slashes||e.slashes,n.href=n.format(),n},s.prototype.parseHost=function(){var e=this.host,t=a.exec(e);t&&(":"!==(t=t[0])&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)}},,function(e,t,n){"use strict";const{Transform:r}=n(4),i=n(34),s=n(144),o=n(47),a=n(76),u=n(146),l=n(147),c={sourceCodeLocationInfo:!1};const h={[i.START_TAG_TOKEN]:{eventName:"startTag",reshapeToken:e=>({tagName:e.tagName,attrs:e.attrs,selfClosing:e.selfClosing,sourceCodeLocation:e.location})},[i.END_TAG_TOKEN]:{eventName:"endTag",reshapeToken:e=>({tagName:e.tagName,sourceCodeLocation:e.location})},[i.COMMENT_TOKEN]:{eventName:"comment",reshapeToken:e=>({text:e.data,sourceCodeLocation:e.location})},[i.DOCTYPE_TOKEN]:{eventName:"doctype",reshapeToken:e=>({name:e.name,publicId:e.publicId,systemId:e.systemId,sourceCodeLocation:e.location})},[i.CHARACTER_TOKEN]:{eventName:"text",reshapeToken:e=>({text:e.chars,sourceCodeLocation:e.location})}};e.exports=class extends r{constructor(e){super({encoding:"utf8",decodeStrings:!1}),this.options=a(c,e),this.tokenizer=new i(e),this.locInfoMixin=null,this.options.sourceCodeLocationInfo&&(this.locInfoMixin=o.install(this.tokenizer,s)),this.parserFeedbackSimulator=new l(this.tokenizer),this.pendingText=null,this.lastChunkWritten=!1,this.stopped=!1,this.pipe(new u)}_transform(e,t,n){if("string"!=typeof e)throw new TypeError("Parser can work only with string streams.");n(null,this._transformChunk(e))}_final(e){this.lastChunkWritten=!0,e(null,this._transformChunk(""))}stop(){this.stopped=!0}_transformChunk(e){return this.stopped||(this.tokenizer.write(e,this.lastChunkWritten),this._runParsingLoop()),e}_runParsingLoop(){let e=null;do{if(e=this.parserFeedbackSimulator.getNextToken(),e.type===i.HIBERNATION_TOKEN)break;if(e.type===i.CHARACTER_TOKEN||e.type===i.WHITESPACE_CHARACTER_TOKEN||e.type===i.NULL_CHARACTER_TOKEN){if(null===this.pendingText)e.type=i.CHARACTER_TOKEN,this.pendingText=e;else if(this.pendingText.chars+=e.chars,this.options.sourceCodeLocationInfo){const{endLine:t,endCol:n,endOffset:r}=e.location;Object.assign(this.pendingText.location,{endLine:t,endCol:n,endOffset:r})}}else this._emitPendingText(),this._handleToken(e)}while(!this.stopped&&e.type!==i.EOF_TOKEN)}_handleToken(e){if(e.type===i.EOF_TOKEN)return!0;const{eventName:t,reshapeToken:n}=h[e.type];return 0!==this.listenerCount(t)&&(this._emitToken(t,n(e)),!0)}_emitToken(e,t){this.emit(e,t)}_emitPendingText(){null!==this.pendingText&&(this._handleToken(this.pendingText),this.pendingText=null)}}},function(e,t,n){"use strict";n.r(t),n.d(t,"CollectionLoader",(function(){return ye})),n.d(t,"WorkerLoader",(function(){return ve}));const r=(e,t)=>t.some(t=>e instanceof t);let i,s;const o=new WeakMap,a=new WeakMap,u=new WeakMap,l=new WeakMap,c=new WeakMap;let h={get(e,t,n){if(e instanceof IDBTransaction){if("done"===t)return a.get(e);if("objectStoreNames"===t)return e.objectStoreNames||u.get(e);if("store"===t)return n.objectStoreNames[1]?void 0:n.objectStore(n.objectStoreNames[0])}return m(e[t])},set:(e,t,n)=>(e[t]=n,!0),has:(e,t)=>e instanceof IDBTransaction&&("done"===t||"store"===t)||t in e};function d(e){h=e(h)}function p(e){return e!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?(s||(s=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(e)?function(...t){return e.apply(w(this),t),m(o.get(this))}:function(...t){return m(e.apply(w(this),t))}:function(t,...n){const r=e.call(w(this),t,...n);return u.set(r,t.sort?t.sort():[t]),m(r)}}function f(e){return"function"==typeof e?p(e):(e instanceof IDBTransaction&&function(e){if(a.has(e))return;const t=new Promise((t,n)=>{const r=()=>{e.removeEventListener("complete",i),e.removeEventListener("error",s),e.removeEventListener("abort",s)},i=()=>{t(),r()},s=()=>{n(e.error||new DOMException("AbortError","AbortError")),r()};e.addEventListener("complete",i),e.addEventListener("error",s),e.addEventListener("abort",s)});a.set(e,t)}(e),r(e,i||(i=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction]))?new Proxy(e,h):e)}function m(e){if(e instanceof IDBRequest)return function(e){const t=new Promise((t,n)=>{const r=()=>{e.removeEventListener("success",i),e.removeEventListener("error",s)},i=()=>{t(m(e.result)),r()},s=()=>{n(e.error),r()};e.addEventListener("success",i),e.addEventListener("error",s)});return t.then(t=>{t instanceof IDBCursor&&o.set(t,e)}).catch(()=>{}),c.set(t,e),t}(e);if(l.has(e))return l.get(e);const t=f(e);return t!==e&&(l.set(e,t),c.set(t,e)),t}const w=e=>c.get(e);function g(e,t,{blocked:n,upgrade:r,blocking:i,terminated:s}={}){const o=indexedDB.open(e,t),a=m(o);return r&&o.addEventListener("upgradeneeded",e=>{r(m(o.result),e.oldVersion,e.newVersion,m(o.transaction))}),n&&o.addEventListener("blocked",()=>n()),s&&o.addEventListener("close",()=>s()),i&&a.then(e=>e.addEventListener("versionchange",i)).catch(()=>{}),a}function _(e,{blocked:t}={}){const n=indexedDB.deleteDatabase(e);return t&&n.addEventListener("blocked",()=>t()),m(n).then(()=>{})}const b=["get","getKey","getAll","getAllKeys","count"],y=["put","add","delete","clear"],v=new Map;function E(e,t){if(!(e instanceof IDBDatabase)||t in e||"string"!=typeof t)return;if(v.get(t))return v.get(t);const n=t.replace(/FromIndex$/,""),r=t!==n,i=y.includes(n);if(!(n in(r?IDBIndex:IDBObjectStore).prototype)||!i&&!b.includes(n))return;const s=async function(e,...t){const s=this.transaction(e,i?"readwrite":"readonly");let o=s.store;r&&(o=o.index(t.shift()));const a=o[n](...t);return i&&await s.done,a};return v.set(t,s),s}d(e=>({...e,get:(t,n,r)=>E(t,n)||e.get(t,n,r),has:(t,n)=>!!E(t,n)||e.has(t,n)}));const A=["continue","continuePrimaryKey","advance"],x={},T=new WeakMap,S=new WeakMap,C={get(e,t){if(!A.includes(t))return e[t];let n=x[t];return n||(n=x[t]=function(...e){T.set(this,S.get(this)[t](...e))}),n}};async function*k(...e){let t=this;if(t instanceof IDBCursor||(t=await t.openCursor(...e)),!t)return;t=t;const n=new Proxy(t,C);for(S.set(n,t),c.set(n,w(t));t;)yield n,t=await(T.get(n)||t.continue()),T.delete(n)}function D(e,t){return t===Symbol.asyncIterator&&r(e,[IDBIndex,IDBObjectStore,IDBCursor])||"iterate"===t&&r(e,[IDBIndex,IDBObjectStore])}d(e=>({...e,get:(t,n,r)=>D(t,n)?k:e.get(t,n,r),has:(t,n)=>D(t,n)||e.has(t,n)}));var R=n(0),O=n(121),I=n.n(O);const N=[{match:/[?&](_|cb|_ga|\w*cache\w*)=[\d.-]+(?=$|&)/i,replace:""},{match:/([?&])utm_[^=]+=[^&]+(?=&|$)/g,replace:""},{match:/[?&](callback=jsonp)[^&]+(?=&|$)/i,replace:""},{match:/[?&]((?:\w+)=jquery)[\d]+_[\d]+/i,replace:""},{match:/\/\/.*(?:gcs-vimeo|vod|vod-progressive)\.akamaized\.net.*(\/[\d]+)\/[\d]+(.mp4)/,replace:"//video.vimeo.net$1$2",split:".net",last:!0},{match:/\/\/.*(player.vimeo.com\/video\/[\d]+)\?.*/i,replace:"$1"},{match:/www.\washingtonpost\.com\/wp-apps\/imrs.php/,args:[["src"]]},{match:/(\.(?:php|js|webm|mp4|gif|jpg|png|css|json|m3u8))\?.*/i,replace:"$1"},{match:/(\/\/.*www\.youtube\.com\/embed\/[^?]+)[?].*/i,replace:"$1"},{match:/(www\.)?youtube(-nocookie)?\.com\/get_video_info/i,args:[["video_id","html5"]]},{match:/\/\/.*(googlevideo.com\/videoplayback)/i,replace:"server.$1",args:[["id","itag"],["id"]]},{match:/facebook\.com\/ajax\/pagelet\/generic.php\/photoviewerinitpagelet/i,args:[[{arg:"data",keys:["query_type","fbid","v","cursor","data"]}]]},{match:/facebook\.com\/api\/graphql/i,args:[["variables","doc_id"]],fuzzyArgs:!0},{match:/facebook\.com\/api\/graphqlbatch/i,args:[["batch_name","queries"],["batch_name"]]},{match:/facebook\.com\/ajax\/navigation/i,args:[["route_url","__user"],["route_url"]]},{match:/facebook\.com\/ajax\/route-definition/i,args:[["route_url","__user"],["route_url"]]},{match:/facebook\.com\/ajax\/bulk-route-definitions/i,args:[["route_urls[0]","__user"],["route_urls[0]"]]},{match:/facebook\.com\/ajax\/relay-ef/i,args:[["queries[0]","__user"],["queries[0]"]]},{match:/facebook\.com\/videos\/vodcomments/i,args:[["eft_id"]]},{match:/facebook\.com\/ajax\.*/i,replaceQuery:/([?&][^_]\w+=[^&]+)/g},{match:/plus\.googleapis\.com\/u\/\/0\/_\/widget\/render\/comments/i,args:[["href","stream_id","substream_id"]]},{match:/(static.wixstatic.com\/.*\.[\w]+)\/v1\/fill\/w_.*/,replace:"$1"}];function F(e,t,n){if(!(n&&n.rule&&n.rule.replace&&n.rule.split))return function(e,t,n){try{e=new URL(e)}catch(e){return 0}const r=n&&n.args&&!n.fuzzyArgs?new Set(n.args[0]):null;let i=0,s=null;const o=new URLSearchParams(e.search);for(const e of t){if(204===e.mime)continue;let t="string"==typeof e?e:e.url;try{t=new URL(t)}catch(e){continue}const n=new URLSearchParams(t.search);let a=P(o,n,r);a+=P(n,o,r),a/=2,a>i&&(i=a,s=e)}return{score:i,result:s}}(e,t,n&&n.rule);const r=n.fuzzyUrl.endsWith("?")?n.fuzzyUrl.slice(0,-1):n.fuzzyUrl,i=n.rule.match,s=n.rule.replace;for(const e of t){if(r===("string"==typeof e?e:e.url).replace(i,s))return{score:1,result:e}}return{score:0,result:null}}function P(e,t,n){let r=1,i=1;for(const[s,o]of e){const e=t.get(s);if(n&&n.has(s)&&e!==o)return-1;let a;a="_"===s[0]?1:10;const u=Number(o),l=Number(e);if(i+=a,e===o)r+=a*o.length;else if(null===e)r-=1;else if(isNaN(u)||isNaN(l)){r+=a*(Math.min(e.length,o.length)-I()(e,o))}else r+=10-Math.log(Math.abs(u-l)+1)}return r/i}const L=new class{constructor(e){this.rules=e||N}*fuzzyUrls(e,t=!1){const n=e;function r(e,r){if(!t)return e;const i=r.split||"?",s=n.indexOf(i);return[e,{prefix:s>0?n.slice(0,s+i.length):n,rule:r,fuzzyUrl:e}]}-1===e.indexOf("?")&&(e+="?");for(const t of this.rules){if(e.match(t.match))if(void 0===t.args&&void 0!==t.replace){const n=e.replace(t.match,t.replace);if(n!=e&&(yield r(n,t),e=n),t.last)break}else{if(void 0!==t.args){void 0!==t.replace&&(e=e.replace(t.match,t.replace));for(let n of t.args){const i=this.getQueryUrl(e,n);e!=i&&(yield r(i,t))}break}if(t.replaceQuery){const n=e.match(t.replaceQuery),i=this.getQueryUrl(e,n?n.join(""):"");i!=e&&(yield r(i,t));break}}}}getQueryUrl(e,t){try{e=new URL(e)}catch(e){return null}if("string"==typeof t)return e.search=t,e.toString();const n=new URLSearchParams(e.search),r=new URLSearchParams;for(const e of t)if("string"==typeof e){const t=n.get(e);t&&r.set(e,t)}else"object"==typeof e&&this.setQueryJsonArg(n,r,e);return e.search="?"+r.toString(),e.toString()}setQueryJsonArg(e,t,n){let r;try{r=e.get(n.arg),r=JSON.parse(r)}catch(e){return void console.log("JSON parse error: "+r)}let i={};for(const e of n.keys){const t=r[e];null!=t&&(i[e]=t)}t.set(n.arg,JSON.stringify(i))}};var B=n(40),U=n(5);class M{constructor(e,t={}){this.name=e,this.db=null;const{minDedupSize:n}=t;this.minDedupSize=Number.isInteger(n)?n:1024,this.version=1,this.useRefCounts=!0,this.allowRepeats=!0,this.repeatTracker=this.allowRepeats?new W:null,this.fuzzyPrefixSearch=!0,this.initing=this.init()}async init(){this.db=await g(this.name,this.version,{upgrade:(e,t,n,r)=>this._initDB(e,t,n,r),blocking:e=>{e&&null!==e.newVersion||this.close()}})}_initDB(e,t,n,r){if(!t){const t=e.createObjectStore("pages",{keyPath:"id"});t.createIndex("url","url"),t.createIndex("ts","ts");e.createObjectStore("pageLists",{keyPath:"id",autoIncrement:!0});e.createObjectStore("curatedPages",{keyPath:"id",autoIncrement:!0}).createIndex("listPages",["list","pos"]);const n=e.createObjectStore("resources",{keyPath:["url","ts"]});n.createIndex("pageId","pageId"),n.createIndex("mimeStatusUrl",["mime","status","url"]);e.createObjectStore("payload",{keyPath:"digest",unique:!0}),e.createObjectStore("digestRef",{keyPath:"digest",unique:!0})}}async clearAll(){const e=["pages","resources","payload","digestRef"];for(const t of e)await this.db.clear(t)}close(){this.db&&(this.db.close(),this.db=null)}async delete(){this.close(),await _(this.name,{blocked(e){console.log("Unable to delete: "+e)}})}async addPage(e,t){const n=e.url,r=e.title||e.url,i=e.id||this.newPageId();let s=e.ts;s||!e.date&&!e.datetime||(s=new Date(e.date||e.datetime).getTime());const o={...e,url:n,ts:s,title:r,id:i};return t?(t.store.put(o),o.id):await this.db.put("pages",o)}async addPages(e){const t=this.db.transaction("pages","readwrite");for(const t of e)this.addPage(t);try{await t.done}catch(e){console.warn("addPages tx",e.toString())}}async addCPageList(e){const t={};return t.title=e.title,t.desc=e.desc,t.slug=e.slug,await this.db.put("pageLists",t)}async addCuratedPageLists(e,t="pages",n="public"){for(const r of e){if(n&&!r[n])continue;const e=await this.addCPageList(r),i=this.db.transaction("curatedPages","readwrite");let s=0;const o=r[t]||[];for(const t of o){const n={};n.pos=s++,n.list=e;const r=typeof t.page;n.page="string"===r?t.page:"object"===r?t.page.id:t.page_id||t.pageId,n.desc=t.desc,i.store.put(n)}try{await i.done}catch(e){console.warn("addCuratedPageLists tx",e.toString())}}}async getAllCuratedByList(){const e=await this.db.getAll("pageLists"),t=this.db.transaction("curatedPages","readonly");for await(const n of t.store.index("listPages").iterate()){const t=e[n.value.list-1];t&&(t.show=!0,t.pages||(t.pages=[]),t.pages.push(n.value))}return e}newPageId(){return Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15)}async getAllPages(){return await this.db.getAll("pages")}async getPages(e){const t=[];e.sort();for await(const n of this.matchAny("pages",null,e))t.push(n);return t}async dedupResource(e,t,n){const r=n.objectStore("digestRef"),i=!!e&&await r.get(e);let s=!0;if(i)++i.count,r.put(i),s=!1;else try{n.objectStore("payload").add({digest:e,payload:t});const i=1,s=t.length;r.put({digest:e,count:i,size:s})}catch(e){console.log(e)}return s}async addResources(e){const t=[],n=[];let r=this.db.transaction(["digestRef","payload"],"readwrite");for(const i of e)"warc/revisit"===i.mime?t.push(i):n.push(i),this.useRefCounts&&i.digest&&i.payload&&(await this.dedupResource(i.digest,i.payload,r),delete i.payload);try{await r.done}catch(e){console.log("Payload Bulk Add Failed: "+e)}const i=this.db.transaction("resources","readwrite");for(const e of t)i.store.put(e);for(const e of n)i.store.put(e),this._addUrlFuzzy(e,i);await i.done}async _addUrlFuzzy(e,t){if(e.status>=200&&e.status<300&&204!=e.status)for await(const n of L.fuzzyUrls(e.url)){if(n===e.url)continue;const r={url:n,ts:e.ts,origURL:e.url,origTS:e.ts,pageId:e.pageId,digest:e.digest};t.store.put(r)}}async addResource(e){let t=!1;if(e.payload&&e.payload.length>this.minDedupSize){e.digest||(e.digest=await Object(R.d)(e.payload,"sha-256"));const n=this.db.transaction(["digestRef","payload"],"readwrite");t=await this.dedupResource(e.digest,e.payload,n);try{await n.done}catch(e){console.log("Payload Add Failed: "+e)}delete e.payload}if("warc/revisit"===e.mime){try{await this.db.add("resources",e)}catch(t){console.log("Skip Duplicate revisit for: "+e.url)}return t}const n=this.db.transaction("resources","readwrite");n.store.put(e),this._addUrlFuzzy(e,n);try{await n.done}catch(t){console.log("Fuzzy Add Error for "+e.url),console.log(t)}return t}async getResource(e,t,n){const r=Object(R.m)(e.timestamp).getTime();let i=e.url,s=null;const o={skip:this.repeatTracker?this.repeatTracker.getSkipCount(n,i,e.request.method):0};if(i.startsWith("//")){let t=!1;s=await this.lookupUrl("https:"+i,r,o),s||(s=await this.lookupUrl("http:"+i,r,o),(s||e.request.referrer.indexOf("/http://",2)>0)&&(t=!0)),i=(t?"http:":"https:")+i}else s=await this.lookupUrl(i,r,o);let a;if(!s)for await(const[e,t]of L.fuzzyUrls(i,!0)){if(s=await this.lookupUrl(e),s)break;a||(a=t)}if(!s&&a&&this.fuzzyPrefixSearch&&(s=await this.lookupQueryPrefix(i,a)),s&&s.origURL){const e=await this.lookupUrl(s.origURL,s.origTS||s.ts);e&&(i=e.url,s=e)}if(!s)return null;const u=s.status,l=s.statusText||Object(B.getStatusText)(u);let c=null;if(!Object(R.i)()&&(c=await this.loadPayload(s),!c))return null;const h=Object(R.j)(s.respHeaders),d=new Date(s.ts),p=s.extraOpts||null;return new U.a({url:i,payload:c,status:u,statusText:l,headers:h,date:d,extraOpts:p})}async loadPayload(e){if(e.digest&&!e.payload){const t=await this.db.get("payload",e.digest);if(!t)return null;const{payload:n}=t;return n}return e.payload}async lookupUrl(e,t,n={}){const r=this.db.transaction("resources","readonly");if(t){const n=await r.store.get([e,t]);if(n)return n}let i=null,s=n.skip||0;for await(const n of r.store.iterate(this.getLookupRange(e))){if(i&&n.value.ts>t){if(0==s){return n.value.ts-t<t-i.ts?n.value:i}s--}i=n.value}return i}async lookupQueryPrefix(e,t){const n=this.db.transaction("resources","readonly");let r=[];for await(const e of n.store.iterate(this.getLookupRange(t.prefix,"prefix")))r.push(e.value);if(!r.length)return null;return F(e,r,t).result}resJson(e){const t=new Date(e.ts).toISOString();return{url:e.url,date:t,ts:Object(R.f)(t),mime:e.mime,status:e.status}}async resourcesByPage(e){return this.db.getAllFromIndex("resources","pageId",e)}async*resourcesByPages2(e){e.sort(),yield*this.matchAny("resources","pageId",e)}async*resourcesByPages(e){const t=this.db.transaction("resources","readonly");for await(const n of t.store.iterate())e.includes(n.value.pageId)&&(yield n.value)}async*matchAny(e,t,n,r){const i=this.db.transaction(e,"readonly"),s=IDBKeyRange.lowerBound(n[0],!0);let o=t?await i.store.index(t).openCursor(s):await i.store.openCursor(s),a=0;for(;o&&a<n.length;){let e,t,i;void 0!==r?(e=o.key[r],t=n[a][r],i=e.startsWith(t)):(e=o.key,t=n[a],i=e===t),!i&&e>t?++a:i?(yield o.value,o=await o.continue()):o=await o.continue(n[a])}}async resourcesByUrlAndMime(e,t,n=1e3,r=!0,i="",s=""){const o=t?null:n,a=await this.db.getAll("resources",this.getLookupRange(e,r?"prefix":"exact",i,s),o);t=t.split(",");const u=[];for(const e of a)for(const r of t)if(!r||e.mime&&e.mime.startsWith(r)){if(u.push(this.resJson(e)),u.length===n)return u;break}return u}async resourcesByMime(e,t=100,n="",r="",i=0){const s=[];(e=e.split(",")).sort();let o=[];n&&o.push([n,i,r]);for(const t of e)(!n||!t||t>n)&&o.push([t,0,""]);for await(const e of this.matchAny("resources","mimeStatusUrl",o,0))if(s.push(this.resJson(e)),s.length===t)break;return s}async deletePage(e){const t=this.db.transaction("pages","readwrite"),n=await t.store.get(e);await t.store.delete(e);const r=await this.deletePageResources(e);return{pageSize:n&&n.size||0,dedupSize:r}}async deletePageResources(e){const t={},n=this.db.transaction("resources","readwrite");let r=await n.store.index("pageId").openCursor(e),i=0;for(;r;){const e=r.value.digest;e?t[e]=(t[e]||0)+1:r.value.payload&&(i+=r.value.payload.length),n.store.delete(r.primaryKey),r=await r.continue()}await n.done;const s=this.db.transaction(["payload","digestRef"],"readwrite"),o=s.objectStore("digestRef");for(const e of Object.keys(t)){const n=await o.get(e);n&&(n.count-=t[e]),n&&n.count>=1?o.put(n):(i+=n?n.size:0,o.delete(e),s.objectStore("payload").delete(e))}return await s.done,i}getLookupRange(e,t,n,r){let i,s,o;switch(t){case"prefix":s=e.slice(0,-1)+String.fromCharCode(e.charCodeAt(e.length-1)+1),i=[e],s=[s];break;case"host":const t=new URL(e).origin;i=[t+"/"],s=[t+"0"];break;case"exact":default:i=[e],s=[e+"!"]}return n?(i=[n,r||""],o=!0):o=!1,IDBKeyRange.bound(i,s,o,!0)}}class W{constructor(){this.repeats={}}getSkipCount(e,t,n){if("POST"!==n)return 0;e.replacesClientId&&delete this.repeats[e.replacesClientId];const r=e.resultingClientId||e.clientId;return r?(void 0===this.repeats[r]&&(this.repeats[r]={}),void 0===this.repeats[r][t]?this.repeats[r][t]=0:this.repeats[r][t]++,this.repeats[r][t]):0}}var j=n(1),z=n(57),H=n.n(z),G=n(4),q=n(38);const V=["script","style","header","footer","banner-div","noscript"];var X=n(20);class K extends X.a{constructor(e,t=null,n=null){super(),this.reader=e,this.abort=t,this.loadId=n,this.anyPages=!1,this.detectPages=!1,this._lastRecord=null,this.metadata={},this.pageMap={},this.pages=[],this.lists=[]}parseWarcInfo(e){if(!e.payload)return;const t=new TextDecoder("utf-8").decode(e.payload);for(const e of t.split("\n"))if(e.startsWith("json-metadata:"))try{const t=JSON.parse(e.slice("json-metadata:".length));if("collection"===t.type&&(this.metadata.desc=t.desc,this.metadata.title=t.title),t.pages&&t.pages.length){this.pages=this.pages.concat(t.pages);for(const e of t.pages)e.ts=Object(R.m)(e.timestamp).getTime(),this.pageMap[e.ts+"/"+e.url]={page:e};this.anyPages=!0}t.lists&&t.lists.length&&(this.lists=this.lists.concat(t.lists))}catch(e){console.log("Page Add Error",e.toString())}}index(e){if("warcinfo"!==e.warcType){if(this._lastRecord)return this._lastRecord.warcTargetURI!=e.warcTargetURI?(this.indexReqResponse(this._lastRecord,null),void(this._lastRecord=e)):void("request"===e.warcType&&"response"===this._lastRecord.warcType?(this.indexReqResponse(this._lastRecord,e),this._lastRecord=null):"response"===e.warcType&&"request"===this._lastRecord.warcType?(this.indexReqResponse(e,this._lastRecord),this._lastRecord=null):(this.indexReqResponse(this._lastRecord,null),this._lastRecord=e));this._lastRecord=e}else this.parseWarcInfo(e)}indexDone(){this._lastRecord&&(this.indexReqResponse(this._lastRecord),this._lastRecord=null)}shouldIndexMetadataRecord(e){const t=e.warcTargetURI;return!(!t||!t.startsWith("metadata://"))}parseRevisitRecord(e){const t=e.warcTargetURI.split("#")[0],n=(e.warcDate,new Date(e.warcDate).getTime()),r=e.warcRefersToTargetURI,i=new Date(e.warcRefersToDate).getTime();return r===t&&i===n?null:{url:t,ts:n,origURL:r,origTS:i,digest:e.warcPayloadDigest,pageId:null}}indexReqResponse(e,t){const n=this.parseRecords(e,t);n&&this.addResource(n)}parseRecords(e,t){switch(e.warcType){case"revisit":return this.parseRevisitRecord(e);case"resource":t=null;break;case"response":break;case"metadata":if(!this.shouldIndexMetadataRecord(e))return null;break;default:return null}const n=e.warcTargetURI.split("#")[0],r=e.warcDate;let i,s=200,o="OK",a=0,u="";if(e.httpHeaders){if(s=Number(e.httpHeaders.statusCode)||200,t&&"OPTIONS"===t.httpHeaders.method)return null;if(o=e.httpHeaders.statusText,i=Object(R.j)(e.httpHeaders.headers),u=(i.get("content-type")||"").split(";")[0],a=parseInt(i.get("content-length")||0),206===s){const e=i.get("content-range"),t=`bytes 0-${a-1}/${a}`;if(e&&e!==t)return null}if(s>300&&s<400){const e=i.get("location");if(e&&new URL(e,n).href===n)return null}}else i=new Headers,i.set("content-type",e.warcContentType),i.set("content-length",e.warcContentLength),u=e.warcContentType,a=e.warcContentLength;let l=null;if(t&&t.httpHeaders.headers)try{const e=new Headers(t.httpHeaders.headers).get("cookie");e&&i.set("x-wabac-preset-cookie",e),l=t.httpHeaders.headers.get("Referer")}catch(e){console.warn(e)}if(void 0===this.detectPages&&(this.detectPages=!this.anyPages),this.detectPages&&function(e,t,n){if(200!=t)return!1;if(!e.startsWith("http:")&&!e.startsWith("https:")&&!e.startsWith("blob:"))return!1;if(e.endsWith("/robots.txt"))return!1;const r=e.split("?",2);if(2===r.length&&r[1].length>r[0].length)return!1;if(r[0].substring(r[0].lastIndexOf("/")+1).startsWith("."))return!1;if(n&&"text/html"!==n)return!1;return!0}(n,s,u)){const e=n;this.addPage({url:n,date:r,title:e})}const c=new Date(r).getTime(),h=Object.fromEntries(i.entries()),d=e.warcPayloadDigest,p=e.payload,f={url:n,ts:c,status:s,mime:u,respHeaders:h,digest:d,payload:p,reader:p?null:e.reader,referrer:l};this.pageMap[c+"/"+n]&&p&&u.startsWith("text/")&&(this.pageMap[c+"/"+n].textPromise=async function(e,t,n,r){const i=new H.a,s=[];let o=null;i.on("text",(e,t)=>{if(o)return;const n=e.text.trim();n&&s.push(n)}),i.on("startTag",e=>{!e.selfClosing&&V.includes(e.tagName)&&(o=e.tagName)}),i.on("endTag",e=>{e.tagName===o&&(o=null)});const a=new G.PassThrough({encoding:"utf8"});(n||r)&&(t=await Object(q.a)(t,n,r)),a.push(t),a.push(null),a.pipe(i);const u=new Promise(e=>{i.on("end",()=>{e(s.join(" "))})});return await u}(0,p,i.get("content-encoding"),i.get("transfer-encoding")));const m=e.warcHeader("WARC-JSON-Metadata");if(m)try{f.extraOpts=JSON.parse(m)}catch(e){}const w=e.warcHeader("WARC-Page-ID");return w&&(f.pageId=w),f}filterRecord(e){return null}async load(e,t,n){this.db=e;const r=new j.d(this.reader);let i=0,s=0;try{for await(const e of r){if(!e.warcType){console.log("skip empty record");continue}if(self.interruptLoads&&this.loadId&&self.interruptLoads[this.loadId])throw t(Math.round(r.offset/n*95),"Loading Canceled",r.offset,n),self.interruptLoads[this.loadId](),this.abort&&this.abort.abort(),new R.b;s=(new Date).getTime(),s-i>500&&(t(Math.round(r.offset/n*95),null,r.offset,n),i=s);const o=this.filterRecord(e);if("done"===o){this.abort&&this.abort.abort();break}if("skip"!==o){"skipContent"===o?await e.skipFully():await e.readFully(),this.index(e,r);try{await Promise.all(this.promises)}catch(e){console.warn(e.toString())}this.promises=[]}}}catch(e){if(e instanceof R.b)throw e;t(Math.round(r.offset/n*95),`Sorry there was an error downloading. Please try again (${e})`,r.offset,n),console.warn(e)}return this.indexDone(),t(95),await this.finishIndexing(),t(100),this.metadata}async _finishLoad(){if(this.pages.length){for(const{page:e,textPromise:t}of Object.values(this.pageMap))if(t)try{e.text=await t}catch(e){console.warn("Error adding text: "+e.toString())}this.promises.push(this.db.addPages(this.pages))}this.lists.length&&this.promises.push(this.db.addCuratedPageLists(this.lists,"bookmarks","public"))}}class Y extends K{constructor(e){super(e),this.detectPages=!1}addPage(){}async load(){const e=await new j.d(this.reader).parse();if(!e)return null;const t=this.parseRecords(e,null);return t&&"revisit"!==e.warcType||await e.readFully(),t}}class J extends K{filterRecord(e){if("warcinfo"!=e.warcType)return"done"}}const Z="https://helper-proxy.webrecorder.workers.dev";function Q(e,t,n,r,i){if(e.startsWith("blob:"))return new te(e,i,n);if(e.startsWith("http:")||e.startsWith("https:")||e.startsWith("file:"))return new $(e,t,n);if(e.startsWith("googledrive:"))return new ee(e,t,n,r);throw new Error("Invalid URL: "+e)}class ${constructor(e,t,n=null,r=!1){this.url=e,this.headers=t||{},this.length=n,this.canLoadOnDemand=r,this.isValid=!1}async doInitialFetch(e){const t=new Headers(this.headers);t.set("Range","bytes=0-"),this.isValid=!1;let n=null,r=null;if(e)try{r=await fetch(this.url,{headers:t,method:"HEAD"}),200!==r.status&&206!=r.status||(this.canLoadOnDemand=206===r.status||"bytes"===r.headers.get("Accept-Ranges"),this.isValid=!0)}catch(e){}if(!this.isValid){n=new AbortController;const e=n.signal;r=await fetch(this.url,{headers:t,signal:e}),this.canLoadOnDemand=206===r.status||"bytes"===r.headers.get("Accept-Ranges"),this.isValid=206===r.status||200===r.status}if(null===this.length&&(this.length=Number(r.headers.get("Content-Length")),!this.length&&206===r.status)){let e=r.headers.get("Content-Range");e&&(e=e.split("/"),2===e.length&&(this.length=e[1]))}if(null===this.length)try{const e=await fetch(`${Z}/c/${this.url}`),t=await e.json();t.size&&(this.length=t.size)}catch(e){console.log("Error fetching from helper: "+e.toString())}return this.length=Number(this.length||0),{response:r,abort:n}}async getLength(){if(null===this.length){const{response:e,abort:t}=await this.doInitialFetch(!0);t&&t.abort()}return this.length}async getRange(e,t,n=!1,r=null){const i=new Headers(this.headers);i.set("Range",`bytes=${e}-${e+t-1}`);const s={signal:r,headers:i};let o=null;try{o=await fetch(this.url,s)}catch(e){throw console.log(e),new RangeError(this.url)}if(206!=o.status)throw 401===o.status||403===o.status?new R.a(this.url,o.status):new RangeError(this.url,o.status);return n?o.body:new Uint8Array(await o.arrayBuffer())}}class ee{constructor(e,t,n,r){this.fileId=e.slice("googledrive://".length),this.apiUrl=`https://www.googleapis.com/drive/v3/files/${this.fileId}?alt=media`,this.canLoadOnDemand=!0,this.headers=t,r&&r.publicUrl?this.publicUrl=r.publicUrl:this.publicUrl=null,this.length=n,this.isValid=!1}async getLength(){return this.length}async doInitialFetch(e){let t=null,n=null;if(this.publicUrl){t=new $(this.publicUrl,null,this.length);try{n=await t.doInitialFetch(e)}catch(e){}if(!t.isValid&&(n&&n.abort&&n.abort.abort(),await this.refreshPublicUrl())){t=new $(this.publicUrl,null,this.length);try{n=await t.doInitialFetch(e)}catch(e){}!t.isValid&&n&&n.abort&&n.abort.abort()}}return t&&t.isValid||(this.publicUrl=null,t=new $(this.apiUrl,this.headers,this.length),n=await t.doInitialFetch(e)),this.isValid=t.isValid,this.length||(this.length=t.length),n}async getRange(e,t,n=!1,r){let i=null;if(this.publicUrl){i=new $(this.publicUrl,null,this.length);try{return await i.getRange(e,t,n,r)}catch(s){if(await this.refreshPublicUrl()){i=new $(this.publicUrl,null,this.length);try{return await i.getRange(e,t,n,r)}catch(e){}}}this.publicUrl=null}return i=new $(this.apiUrl,this.headers,this.length),await i.getRange(e,t,n,r)}async refreshPublicUrl(){try{const e=await fetch(`${Z}/g/${this.fileId}`),t=await e.json();if(t.url)return this.publicUrl=t.url,!0}catch(e){}return!1}}class te{constructor(e,t=null,n=null){this.url=e,this.blob=t,this.size=this.blob?this.blob.size:n,this.canLoadOnDemand=!1}get length(){return this.size}get isValid(){return!!this.blob}async doInitialFetch(e){if(!this.blob){const e=await fetch(this.url);this.blob=await e.blob()}let t=null;return e||(t=this.blob.stream?this.blob.stream():await this.getReadableStream(this.blob)),{response:new Response(t),stream:t}}async getLength(){if(!this.blob&&!this.blob.size){let e=await fetch(this.url);this.blob=await e.blob(),this.size=this.blob.size}return this.size}async getRange(e,t,n=!1,r){if(!this.blob){const r=new Headers;r.set("Range",`bytes=${e}-${e+t-1}`);const i=await fetch(this.url,{headers:r});if(i.headers.get("content-range"))return n?i.body:new Uint8Array(await i.arrayBuffer());this.blob=await i.blob()}const i=this.blob.slice(e,e+t,"application/octet-stream");if(n)return i.stream?i.stream():await this.getReadableStream(i);try{const e=i.arrayBuffer?await i.arrayBuffer():await this.getArrayBuffer(i);return new Uint8Array(e)}catch(e){return console.log("error reading blob",e),null}}getArrayBuffer(e){return new Promise(t=>{let n=new FileReader;n.onloadend=()=>{t(n.result)},n.readAsArrayBuffer(e)})}async getReadableStream(e){const t=await this.getArrayBuffer(e);return new ReadableStream({start(e){e.enqueue(new Uint8Array(t)),e.close()}})}}class ne extends M{constructor(e,t=!1){super(e),this.noCache=t,this.useRefCounts=!1}async loadRecordFromSource(e){const t=await this.loadSource(e.source),n=new Y(t);return await n.load()}async loadPayload(e,t=0){let n=await super.loadPayload(e);if(n&&e.respHeaders&&"warc/revisit"!==e.mime)return n;const r=await this.loadRecordFromSource(e);if(!r)return console.log("No WARC Record Loaded for: "+e.url),null;if(r.url!==e.url)return console.log(`Wrong url: expected ${e.url}, got ${r.url}`),null;if(r.ts!==e.ts){if(1e3*Math.floor(r.ts/1e3)!==e.ts)return console.log(`Wrong timestamp: expected ${e.ts}, got ${r.ts}`),null}if(r.digest!==e.digest&&console.log(`Wrong digest: expected ${e.digest}, got ${r.digest}`),r.origURL){const i=await this.lookupUrl(r.origURL,r.origTS,{noRevisits:!0});return i&&(n||(t<2?n=await this.loadPayload(i,t+1):console.warn("Avoiding revisit lookup loop for: "+JSON.stringify(r)),n))?(e.respHeaders=i.respHeaders,e.mime=i.mime,i.extraOpts&&(e.extraOpts=i.extraOpts),this.noCache||(delete e.payload,await this.db.put("resources",e)),n):null}const i=r.digest;if(!this.noCache&&r.reader&&i&&(r.reader=new se(this,r.reader,i,e.url)),n=r.payload,!n&&!r.reader)return null;try{n&&!this.noCache&&await this.commitPayload(n,i)}catch(t){console.warn("Payload Update Error: "+e.url),console.warn(t)}if(!(e.respHeaders&&e.digest||(e.respHeaders=r.respHeaders,e.digest=i,r.extraOpts&&(e.extraOpts=r.extraOpts),this.noCache)))try{await this.db.put("resources",e)}catch(t){console.warn("Resource Update Error: "+e.url),console.warn(t)}return n||r.reader}async commitPayload(e,t){if(!e||0===e.length)return;const n=this.db.transaction(["payload","digestRef"],"readwrite");try{if(n.objectStore("payload").put({payload:e,digest:t}),this.useRefCounts){const r=await n.objectStore("digestRef").get(t);r&&(r.size=e.length,n.objectStore("digestRef").put(r))}await n.done}catch(e){console.warn("Payload Commit Error: "+e)}}}class re extends ne{constructor(e,t,n=!1){super(e,n),this.loader=t}updateHeaders(e){this.loader.headers=e}async loadSource(e){const{start:t,length:n}=e;return await this.loader.getRange(t,n,!0)}}class ie extends ne{constructor(e,t,n,r=!1){super(e,r),this.remoteUrlPrefix=t,this.headers=n}updateHeaders(e){this.headers=e}async loadSource(e){const{start:t,length:n}=e,r=new Headers(this.headers),i=Q(new URL(e.path,this.remoteUrlPrefix).href,r);return await i.getRange(t,n,!0)}}class se extends j.b{constructor(e,t,n,r=""){super(),this.db=e,this.reader=t,this.digest=n,this.url=r,this.chunks=[],this.size=0,this.fullbuff=null,this.commit=!0,this.alreadyRead=!1}setLimitSkip(e=-1,t=0){(-1!=e||t>0)&&(this.commit=!1),this.reader.setLimitSkip(e,t)}async*[Symbol.asyncIterator](){if(!this.alreadyRead){for await(const e of this.reader)this.chunks.push(e),this.size+=e.byteLength,yield e;this.fullbuff=j.b.concatChunks(this.chunks,this.size),0!==this.reader.limit?console.warn(`Expected payload not consumed, ${this.reader.limit} bytes left`):this.commit&&await this.db.commitPayload(this.fullbuff,this.digest),this.chunks=[],this.alreadyRead=!0}}async readFully(){for await(const e of this);return this.fullbuff}}class oe extends K{constructor(e,t,n){super(e,t,n),this.cdxindexer=null}filterRecord(e){switch(e.warcType){case"warcinfo":case"revisit":return null;case"request":return"skipContent";case"metadata":return this.shouldIndexMetadataRecord(e)?null:"skipContent"}const t=e.warcTargetURI,n=new Date(e.warcDate).getTime();if(this.pageMap[n+"/"+t])return e._isPage=!0,null}index(e,t){if(e._isPage)return super.index(e,t);if("warcinfo"===e.warcType)return void this.parseWarcInfo(e);this.cdxindexer||(this.cdxindexer=new j.c({},null));const n=this.cdxindexer.indexRecord(e,t,"");n&&this.addCdx(n)}addCdx(e){const{url:t,mime:n}=e,r=Number(e.status)||200,i=Object(R.m)(e.timestamp).getTime(),s={path:e.filename,start:Number(e.offset),length:Number(e.length)};let{digest:o}=e;o&&-1===o.indexOf(":")&&(o="sha1:"+o);const a={url:t,ts:i,status:r,digest:o,mime:n,loaded:!1,source:s};this.batch.length>=3e3&&(this.promises.push(this.db.addResources(this.batch)),this.batch=[],console.log(`Read ${this.count+=3e3} records`)),this.batch.push(a)}}class ae extends oe{async load(e){this.db=e;let t=this.reader;t.iterLines||(t=new j.a(this.reader));for await(const e of t.iterLines()){let t,n,r,i=e.trimEnd();if(!i.startsWith("{")){const e=i.indexOf(" {");if(e<0)continue;[n,r]=i.split(" ",2),i=i.slice(e)}try{t=JSON.parse(i)}catch(e){console.log("JSON Parser error on: "+i);continue}t.timestamp=r,t.url||(t.url=n),this.addCdx(t)}this.indexDone(),await this.finishIndexing()}}const ue=/(?:([\d]+)[^\/]*\/)?(http.*)/;class le{constructor(e){this.sourceUrl=e.sourceUrl,this.type=e.extraConfig&&e.extraConfig.sourceType||"kiwix",this.notFoundPageUrl=e.extraConfig&&e.extraConfig.notFoundPageUrl}async getAllPages(){return[]}async getResource(e,t,n){const{url:r,headers:i}=de(e,t);let s=i;if("kiwix"===this.type){const t=await this.resolveHeaders(r);if(!t){if(this.notFoundPageUrl&&"navigate"===e.request.mode){const e=await fetch(this.notFoundPageUrl);if(200===e.status){const t={"Content-Type":"text/html"},n=await e.text();return new Response(n.replace("$URL",r),{status:404,headers:t})}}return null}let{headers:n,encodedUrl:i,date:o,status:a,statusText:u,hasPayload:l}=t;if(s.has("Range")){const e=s.get("Range");s={Range:e}}let c=null,h=null;l&&(h=await fetch(this.sourceUrl+"A/"+i,{headers:s}),h.body&&(c=new j.a(h.body.getReader(),!1))),c||(c=new Uint8Array([])),o||(o=new Date),n||(n=new Headers),206===h.status&&(a=206,u="Partial Content",n.set("Content-Length",h.headers.get("Content-Length")),n.set("Content-Range",h.headers.get("Content-Range")),n.set("Accept-Ranges","bytes"));const d=!1,p=!1;return new U.a({payload:c,status:a,statusText:u,headers:n,url:r,date:o,noRW:p,isLive:d})}}async resolveHeaders(e){const t=e.slice(e.indexOf("//")+2);let n=encodeURI(t);n=encodeURIComponent(t);let r=await fetch(this.sourceUrl+"H/"+n);if(200!==r.status)return null;let i=null,s=null,o=null,a=null,u=!1;try{const t=await j.d.parse(r.body);if("revisit"===t.warcType){const n=t.warcHeaders.headers.get("WARC-Refers-To-Target-URI");if(n&&n!==e)return await this.resolveHeaders(n)}s=new Date(t.warcDate),t.httpHeaders?(i=t.httpHeaders.headers,o=Number(t.httpHeaders.statusCode),a=t.httpHeaders.statusText,u="0"!==t.httpHeaders.headers.get("Content-Length")):"resource"===t.warcType&&(i=new Headers,i.set("Content-Type",t.warcContentType),i.set("Content-Length",t.warcContentLength),o=200,a="OK",u=t.warcContentLength>0),o||(o=200)}catch(t){console.warn(t),console.warn("Ignoring headers, error parsing headers response for: "+e)}return{encodedUrl:n,headers:i,date:s,status:o,statusText:a,hasPayload:u}}}class ce{constructor(e){this.replayPrefix=e.replayPrefix,this.idMod=void 0!==e.idMod?e.idMod:"id_",this.redirMod=void 0!==e.redirMod?e.redirMod:"mp_",this.redirectMode=this.idMod===this.redirMod?"follow":"manual"}async getAllPages(){return[]}getUrl(e,t){let n=this.replayPrefix;return(t||e.timestamp)&&(n+=e.timestamp+t+"/"),n+e.url}async getResource(e,t,n){let r=await fetch(this.getUrl(e,this.idMod),{credentials:"same-origin",redirect:this.redirectMode,mode:"cors"});if(r.status>=400&&!r.headers.get("memento-datetime"))return null;const i=await this.getRedirect(e,r,t);let s=null,o=!1;i?(r=Response.redirect(i.path,307),o=!0,s=i.timestamp):s=e.timestamp;const a=e.url,u=s?Object(R.m)(s):new Date;return U.a.fromResponse({url:a,response:r,date:u,noRW:o})}async getRedirect(e,t,n){if("opaqueredirect"===t.type)t=await fetch(this.getUrl(e,this.redirMod),{credentials:"same-origin",redirect:"follow",mode:"cors"});else if(!t.redirected)return null;const r=t.url.indexOf(this.replayPrefix)+this.replayPrefix.length,i=t.url.slice(r),s=i.match(ue);return s?{timestamp:s[1],path:n+s[1]+"mp_/"+s[2]}:{path:n+i}}}class he{constructor(e,t=!1,n=!0){this.prefix=e||"",this.proxyPathOnly=t,this.isLive=n}async getAllPages(){return[]}async getResource(e,t,n){const{headers:r,credentials:i,url:s}=de(e,t);let o;if(this.proxyPathOnly){const e=new URL(s);o=this.prefix+e.pathname+e.search}else o=this.prefix+s;const a=await fetch(o,{method:e.request.method,body:e.request.body,headers:r,credentials:i,mode:"cors",redirect:"follow"});return U.a.fromResponse({url:s,response:a,date:new Date,noRW:!1,isLive:this.isLive})}}function de(e,t,n=!0){let r,i,s;if(n){r=new Headers(e.request.headers),i=e.request.referrer;const n=i.indexOf("/http",t.length-1);n>0&&(i=i.slice(n+1),r.set("X-Proxy-Referer",i)),s=e.request.credentials}else r=new Headers,s="omit";let o=e.url;if(o.startsWith("//"))try{o=new URL(i).protocol+o}catch(e){o="https:"+o}return{referrer:i,headers:r,credentials:s,url:o}}var pe=n(32),fe=n.n(pe),me=n(41);class we extends re{constructor(e,t,n=null,r=!1,i){super(e,t,r),this.zipreader=new ge(t),this.externalSources=[],this.fuzzyUrlRules=[],this.useSurt=!0,this.fullConfig=i,this.textIndex=i&&i.metadata&&i.metadata.textIndex,t.canLoadOnDemand=!0,n&&this.initConfig(n)}_initDB(e,t,n,r){if(super._initDB(e,t,n,r),!t){e.createObjectStore("ziplines",{keyPath:"prefix"}),e.createObjectStore("zipEntries",{keyPath:"filename"})}}async init(){await super.init(),await this.loadZipEntries()}async close(){super.close(),caches.delete("cache:"+this.name.slice("db:".length))}async clearZipData(){const e=["zipEntries","ziplines"];for(const t of e)await this.db.clear(t)}async clearAll(){await super.clearAll(),await this.clearZipData()}updateHeaders(e){this.zipreader.loader.headers=e}async loadZipEntries(){const e=await this.db.getAll("zipEntries");if(!e.length)return;const t={};for(const n of e)t[n.filename]=n;this.zipreader.entries=t}async saveZipEntries(e){const t=this.db.transaction("zipEntries","readwrite");t.store.clear();for(const n of Object.values(e))t.store.put(n);await t.done,this.db.clear("ziplines")}async loadZiplinesIndex(e,t,n){let r=0,i=0,s=0,o=[],a="";for await(const u of e.iterLines()){if(r+=u.length,r===u.length&&u.startsWith("!meta")){const e=u.indexOf(" {");if(e<0){console.warn("Invalid Meta Line: "+u);continue}const t=JSON.parse(u.slice(e));t.filename&&(a=t.filename),"cdxj-gzip-1.0"!==t.format&&console.log(`Unknown CDXJ format "${t.format}", archive may not parse correctly`);continue}let e;if(u.indexOf("\t")>0){let[t,n,r,i]=u.split("\t");r=Number(r),i=Number(i),e={prefix:t,filename:n,offset:r,length:i,loaded:!1},this.useSurt=!0}else{const t=u.indexOf(" {");if(t<0){console.log("Invalid Index Line: "+u);continue}const n=u.slice(0,t);let{offset:r,length:i,filename:s}=JSON.parse(u.slice(t));s=s||a,e={prefix:n,filename:s,offset:r,length:i,loaded:!1}}s=(new Date).getTime(),s-i>500&&(t(Math.round(r/n*100),null,r,n),i=s),o.push(e)}const u=this.db.transaction("ziplines","readwrite");for(const e of o)u.store.put(e);try{await u.done}catch(e){console.log("Error loading ziplines index: ",e)}}async load(e,t,n){if(e!==this)return void console.error("wrong db");const r=await e.zipreader.load(!0);await e.saveZipEntries(r);const i=[];let s;r["webarchive.yaml"]&&(s=await this.loadMetadata(r,await e.zipreader.loadFile("webarchive.yaml")));for(const n of Object.keys(r))if(n.endsWith(".cdx")||n.endsWith(".cdxj")){console.log("Loading CDX "+n);const t=await e.zipreader.loadFile(n);i.push(new ae(t).load(e))}else if(n.endsWith(".idx")){if(this.loader.canLoadOnDemand){console.log("Loading IDX "+n);const r=e.zipreader.getCompressedSize(n);i.push(e.loadZiplinesIndex(await e.zipreader.loadFile(n),t,r))}}else if(n.endsWith(".warc.gz")||n.endsWith(".warc"))if(!s&&this.loader.canLoadOnDemand){const r=new AbortController,i=await e.zipreader.loadFile(n,{signal:r.signal,unzip:!0}),o=new J(i,r),a=e.zipreader.getCompressedSize(n);s=await o.load(e,t,a)}else if(!this.loader.canLoadOnDemand){const r=await e.zipreader.loadFile(n,{unzip:!0}),i=new K(r);i.detectPages=!1;const o=e.zipreader.getCompressedSize(n);s=await i.load(e,t,o)}return await Promise.all(i),s||{}}async loadPagesCSV(e){const t=(new TextDecoder).decode(await e.readFully()),n=await Object(me.csv2jsonAsync)(t);n&&n.length&&await this.addPages(n)}initConfig(e){if(void 0!==e.decodeResponses&&(this.fullConfig.decode=e.decodeResponses),void 0!==e.useSurt&&(this.useSurt=e.useSurt),e.es)for(const[t,n]of e.es){const e=new he(n,!0,!1);this.externalSources.push({prefix:t,external:e})}if(e.fuzzy)for(const[t,n]of e.fuzzy){const e=new RegExp(t);this.fuzzyUrlRules.push({match:e,replace:n})}e.textIndex&&(this.textIndex=e.textIndex)}async getTextIndex(){const e={"Content-Type":"application/ndjson"};if(!this.textIndex)return new Response("",{headers:e});const t=this.zipreader.getCompressedSize(this.textIndex);t>0&&(e["Content-Length"]=""+t);const n=await this.zipreader.loadFile(this.textIndex,{unzip:!0});return new Response(n.getReadableStream(),{headers:e})}async loadMetadata(e,t){const n=(new TextDecoder).decode(await t.readFully()),r=fe.a.safeLoad(n);void 0!==r.config&&this.initConfig(r.config);const i={desc:r.desc,title:r.title};r.textIndex&&(i.textIndex=r.textIndex);const s=r.pages||[];s&&s.length?await this.addPages(s):e["pages.csv"]&&await this.loadPagesCSV(await this.zipreader.loadFile("pages.csv"));const o=r.pageLists||[];return o&&o.length&&await this.addCuratedPageLists(o,"pages","show"),i}async loadRecordFromSource(e){let t,n=0,r=-1;const i=e.source;if("string"==typeof i)t=i;else{if("object"!=typeof i)return null;n=i.start,r=i.length,t=i.path}let s=null;const o=await this.zipreader.loadFileCheckDirs(t,n,r);return s=new Y(o),await s.load()}getSurt(e){try{e=e.replace(/www\d*\./,"");const t=new URL(e);let n=t.hostname.split(".").reverse().join(",");return t.port&&(n+=":"+t.port),n+=")",n+=t.pathname,t.search&&(t.searchParams.sort(),n+=t.search),n.toLowerCase()}catch(t){return e}}async loadFromZiplines(e,t){t&&Object(R.f)(new Date(t).toISOString());let n,r;const i=this.useSurt?this.getSurt(e):e;n=i+" 9",r=i;const s=this.db.transaction("ziplines","readonly"),o=[],a=IDBKeyRange.upperBound(n,!1);for await(const e of s.store.iterate(a,"prev"))if(o.unshift(e.value),!e.value.prefix.split(" ")[0].startsWith(r))break;await s.done;const u=[];for(const e of o){if(e.loaded)continue;const t="indexes/"+e.filename,n={offset:e.offset,length:e.length,unzip:!0},r=await this.zipreader.loadFile(t,n);u.push(new ae(r).load(this)),e.loaded=!0,await this.db.put("ziplines",e)}return await Promise.all(u),u.length>0}async getResource(e,t,n){if(this.externalSources.length)for(const{prefix:r,external:i}of this.externalSources)if(e.url.startsWith(r))try{return await i.getResource(e,t,n)}catch(e){console.warn("Upstream Error",e)}let r=await super.getResource(e,t,n);if(r)return r;if(this.fuzzyUrlRules.length)for(const{match:i,replace:s}of this.fuzzyUrlRules){const o=e.url.replace(i,s);if(o&&o!==e.url&&(e.url=o,r=await super.getResource(e,t,n),r))return r}return null}async lookupUrl(e,t,n={}){try{let r=await super.lookupUrl(e,t,n);return!r||n.noRevisits&&"warc/revisit"===r.mime?(await this.loadFromZiplines(e,t)&&(r=await super.lookupUrl(e,t,n)),r):r}catch(e){return console.warn(e),null}}async resourcesByUrlAndMime(e,...t){let n=await super.resourcesByUrlAndMime(e,...t);return n.length>0||await this.loadFromZiplines(e,"")&&(n=await super.resourcesByUrlAndMime(e,...t)),n}}class ge{constructor(e,t=null){this.loader=e,this.entries=t}async load(e=!1){if(!this.entries||e){const e=await this.loader.getLength(),t=Math.min(65558,e),n=e-t,r=await this.loader.getRange(n,t);this.entries=this._loadEntries(r,n)}return this.entries}_loadEntries(e,t){const n=e.byteLength,r=new DataView(e.buffer),i=new TextDecoder("utf8"),s=new TextDecoder("ascii"),o={};let a=0,u=0,l=n;for(let t=n-22,i=Math.max(0,t-65535);t>=i;--t)if(80===e[t]&&75===e[t+1]&&5===e[t+2]&&6===e[t+3]){l=t,u=r.getUint32(t+16,!0),a=r.getUint16(t+8,!0);break}if(4294967295===u||65535===a){if(117853008!==r.getUint32(l-20,!0))return void console.warn("invalid zip64 EOCD locator");const e=this.getUint64(r,l-12,!0)-t;if(101075792!==r.getUint32(e,!0))return void console.warn("invalid zip64 EOCD record");a=this.getUint64(r,e+32,!0),u=this.getUint64(r,e+48,!0)}if(t&&(u-=t),u>=n||u<=0)for(u=-1,a=65535;++u<n&&80!==e[u]&&75!==e[u+1]&&1!==e[u+2]&&2!==e[u+3];);for(l-=46;--a>=0&&u<l&&1347092738==r.getUint32(u);){const t=r.getUint16(u+8,!0);let n=r.getUint32(u+20,!0),a=r.getUint32(u+24,!0);const l=r.getUint16(u+28,!0),c=r.getUint16(u+30,!0),h=r.getUint16(u+32,!0),d=8===r.getUint16(u+10,!0);let p=r.getUint32(u+42,!0);const f=(2048&t?i:s).decode(e.subarray(u+46,u+46+l));if(4294967295===n||4294967295===a||4294967295===p){let e=u+46+l;const t=e+c-3;for(;e<t;){const t=r.getUint16(e,!0);let i=r.getUint16(e+2,!0);e+=4,1===t&&(4294967295===a&&i>=8&&(a=this.getUint64(r,e,!0),e+=8,i-=8),4294967295===n&&i>=8&&(n=this.getUint64(r,e,!0),e+=8,i-=8),4294967295===p&&i>=8&&(p=this.getUint64(r,e,!0),e+=8,i-=8)),e+=i}}f.endsWith("/")||(o[f]={filename:f,deflate:d,uncompressedSize:a,compressedSize:n,localEntryOffset:p}),u+=46+l+c+h}return o}async loadFileCheckDirs(e,t,n){if(null===this.entries&&await this.load(),this.entries["archive/"+e])e="archive/"+e;else if(this.entries["warcs/"+e])e="warcs/"+e;else for(const t of Object.keys(this.entries))if(t.endsWith("/"+e)){e=t;break}return await this.loadFile(e,{offset:t,length:n,unzip:!0})}getCompressedSize(e){if(null===this.entries)return-1;const t=this.entries[e];return t?t.compressedSize:-1}async loadFile(e,{offset:t=0,length:n=-1,signal:r=null,unzip:i=!1}={}){null===this.entries&&await this.load();const s=this.entries[e];if(!s)return null;if(void 0===s.offset){const e=await this.loader.getRange(s.localEntryOffset,30),t=new DataView(e.buffer),n=t.getUint16(26,!0),r=t.getUint16(28,!0);s.offset=30+n+r+s.localEntryOffset}n=n<0?s.compressedSize:Math.min(n,s.compressedSize-t),t+=s.offset;const o=await this.loader.getRange(t,n,!0,r);return i?s.deflate?new j.a(new j.a(o.getReader(),"deflate")):new j.a(o.getReader()):new j.a(o.getReader(),s.deflate?"deflate":null)}getUint64(e,t,n){const r=e.getUint32(t,n),i=e.getUint32(t+4,n),s=n?r+2**32*i:2**32*r+i;return Number.isSafeInteger(s)||console.warn(s,"exceeds MAX_SAFE_INTEGER. Precision may be lost"),s}}class _e extends X.a{constructor(e){super(),this.har=e,this.pageRefs={}}async load(e){return this.db=e,"string"==typeof this.har&&(this.har=JSON.parse(this.har)),this.parseEntries(this.har),this.parsePages(this.har),await this.finishIndexing(),{}}parsePages(e){for(const t of e.log.pages){if(!t.pageTimings||!t.pageTimings.onLoad)continue;let e;e=t.title&&(t.title.startsWith("http:")||t.title.startsWith("https:"))?t.title:this.pageRefs[t.id];const n=t.title||e,r=t.startedDateTime;this.addPage({url:e,date:r,title:n})}}parseEntries(e){for(const t of e.log.entries){if(!t.response.content||!t.response.content.text){console.log("Skipping: "+t.request.url);continue}let e=null;try{e=Uint8Array.from(atob(t.response.content.text),e=>e.charCodeAt(0))}catch(n){e=t.response.content.text}console.log("Added: "+t.request.url);const n=new Date(t.startedDateTime).getTime(),r={};for(const{name:e,value:n}of t.response.headers)r[e]=n;this.addResource({url:t.request.url,ts:n,status:t.response.status,respHeaders:r,payload:e}),t.pageref&&!this.pageRefs[t.pageref]&&(this.pageRefs[t.pageref]=t.request.url)}}}var be=n(122);self.interruptLoads={};class ye{constructor(){this.colldb=null,this.root=null,this._init_db=this._initDB()}async _initDB(){this.colldb=await g("collDB",1,{upgrade:(e,t,n,r)=>{e.createObjectStore("colls",{keyPath:"name"})}})}async loadAll(e){if(await this._init_db,e)for(const t of e.split(",")){const e=t.split(":");if(2===e.length){const t={dbname:e[1],sourceName:e[1],decode:!1},n={name:e[0],type:"archive",config:t};console.log("Adding Coll: "+JSON.stringify(n)),await this.colldb.put("colls",n)}}try{const e=(await this.listAll()).map(e=>this._initColl(e));await Promise.all(e)}catch(e){console.warn(e.toString())}return!0}async listAll(){return await this._init_db,await this.colldb.getAll("colls")}async loadColl(e){await this._init_db;const t=await this.colldb.get("colls",e);return t?await this._initColl(t):null}async deleteColl(e){await this._init_db;const t=await this.colldb.get("colls",e);if(!t)return!1;t.config.dbname&&await _(t.config.dbname,{blocked(e){console.log(`Unable to delete ${t.config.dbname}: ${e}`)}}),await this.colldb.delete("colls",e)}async updateAuth(e,t){await this._init_db;const n=await this.colldb.get("colls",e);return!!n&&(n.config.headers=t,await this.colldb.put("colls",n),!0)}async updateSize(e,t,n){await this._init_db;const r=await this.colldb.get("colls",e);if(!r)return!1;r.config.loadSize=(r.config.loadSize||0)+t,r.config.dedupSize=(r.config.dedupSize||0)+n,await this.colldb.put("colls",r)}async _initColl(e){let t=null,n=null;switch(e.type){case"archive":t=new M(e.config.dbname);break;case"remotesource":n=Q(e.config.loadUrl,e.config.headers,e.config.size,e.config.extra),t=new re(e.config.dbname,n,e.config.noCache);break;case"remoteprefix":t=new ie(e.config.dbname,e.config.remotePrefix,e.config.headers,e.config.noCache);break;case"remotezip":n=Q(e.config.loadUrl||e.config.sourceUrl,e.config.headers,e.config.extra),t=new we(e.config.dbname,n,e.config.extraConfig,e.config.noCache,e.config);break;case"remoteproxy":t=new ce(e.config);break;case"remotewarcproxy":t=new le(e.config);break;case"live":t=new he(e.config.prefix,e.config.proxyPathOnly,e.config.isLive)}if(!t)return console.log("no store found: "+e.type),null;t.initing&&await t.initing;const r=e.name,i=e.config;return e.config.root&&(this.root=r),this._createCollection({name:r,store:t,config:i})}_createCollection(e){return e}}class ve extends ye{constructor(e){super(),this.registerListener(e)}async hasCollection(e){return await this._init_db,null!=await this.colldb.getKey("colls",e)}registerListener(e){e.addEventListener("message",e=>this._handleMessage(e))}async _handleMessage(e){await this._init_db;const t=e.source||self;switch(e.data.msg_type){case"addColl":{const n=e.data.name,r=(e,r,i,s)=>{t.postMessage({msg_type:"collProgress",name:n,percent:e,error:r,currentSize:i,totalSize:s})};let i;try{if(await this.hasCollection(n)?e.data.skipExisting?i=!0:(await this.deleteCollection(n),i=await this.addCollection(e.data,r)):i=await this.addCollection(e.data,r),!i)return}catch(e){return console.warn(e),void r(0,"An unexpected error occured: "+e.toString())}t.postMessage({msg_type:"collAdded",name:n});break}case"cancelLoad":{const t=e.data.name,n=new Promise(e=>self.interruptLoads[t]=e);await n,await this.deleteCollection(t),delete self.interruptLoads[t];break}case"removeColl":{const n=e.data.name;await this.hasCollection(n)&&(await this.deleteCollection(n),this.doListAll(t));break}case"listAll":this.doListAll(t)}}async doListAll(e){const t=[],n=await this.listAll();for(const e of n)t.push({name:e.name,prefix:e.name,pageList:[],sourceName:e.config.sourceName});e.postMessage({msg_type:"listAll",colls:t})}async addCollection(e,t){const n=e.name;let r=null,i={root:e.root||!1},s=null;const o=e.file;if(!o||!o.sourceUrl)return t(0,"Invalid Load Request"),!1;if(o.sourceUrl.startsWith("proxy:"))i.sourceUrl=o.sourceUrl.slice("proxy:".length),i.extraConfig=e.extraConfig,i.topTemplateUrl=e.topTemplateUrl,r="remotewarcproxy";else{let a=null;r="archive",i.dbname="db:"+n;let u=o.loadUrl||o.sourceUrl;u.match(/[\w]+:\/\//)||(u=new URL(u,self.location.href).href),i.decode=!0,i.onDemand=!1,i.loadUrl=u,i.sourceUrl=o.sourceUrl,i.sourceName=o.name||o.sourceUrl;try{i.sourceName.match(/https?:\/\//)&&(i.sourceName=new URL(i.sourceName).pathname)}catch(e){}i.sourceName=i.sourceName.slice(i.sourceName.lastIndexOf("/")+1),i.headers=o.headers,i.size="number"==typeof o.size?o.size:null,i.extra=o.extra,i.extraConfig=e.extraConfig,i.noCache=u.startsWith("file:")||o.noCache;const l=Q(u,o.headers,o.size,i.extra,o.blob);let c=!1;(i.sourceName.endsWith(".wacz")||i.sourceName.endsWith(".zip"))&&(s=new we(i.dbname,l,i.extraConfig,i.noCache,i),r="remotezip",a=s,c=!0);let{abort:h,response:d,stream:p}=await l.doInitialFetch(c);if(p=p||d.body,!l.isValid){const e=l.length<=1e3?await d.text():"";return t(0,`Sorry, this URL could not be loaded.\nMake sure this is a valid URL and you have access to this file.\nStatus: ${d.status} ${d.statusText}\nError Details:\n${e}`),h&&h.abort(),!1}if(!l.length)return t(0,"Sorry, this URL could not be loaded because the size of the file is not accessible.\nMake sure this is a valid URL and you have access to this file."),h&&h.abort(),!1;const f=l.length;if(i.sourceName.endsWith(".warc")||i.sourceName.endsWith(".warc.gz")?f<25e6||!l.canLoadOnDemand?a=new K(p,h,n):(a=new oe(p,h,n),r="remotesource",s=new re(i.dbname,l,i.noCache)):i.sourceName.endsWith(".cdxj")||i.sourceName.endsWith(".cdx")?(i.remotePrefix=e.remotePrefix||u.slice(0,u.lastIndexOf("/")+1),a=new ae(p,h,n),r="remoteprefix",s=new ie(i.dbname,i.remotePrefix,i.headers,i.noCache)):i.sourceName.endsWith(".wbn")?(a=new be.a(await d.arrayBuffer()),i.decode=!1):i.sourceName.endsWith(".har")&&(a=new _e(await d.json()),i.decode=!1),!a)return t(0,`The ${i.sourceName} is not a known archive format that could be loaded.`),h&&h.abort(),!1;s||(s=new M(i.dbname)),await s.initing,i.onDemand=l.canLoadOnDemand;try{i.metadata=await a.load(s,t,f)}catch(e){return e instanceof R.b||t(0,"Unexpected Loading Error: "+e.toString()),!1}i.metadata.size||(i.metadata.size=f)}i.ctime=(new Date).getTime();const a={name:n,type:r,config:i};return await this.colldb.add("colls",a),!0}async deleteCollection(e){const t="db:"+e;try{await _(t,{blocked(e){console.log("Unable to delete: "+e)}})}catch(e){return console.warn(e),!1}return await this.colldb.delete("colls",e),!0}}},,,,,function(e,t,n){"use strict";const r=n(176),i=n(35),s=n(35),o=n(7).buildOptions,a=n(178);t.parse=function(e,t,n){if(n){!0===n&&(n={});const t=a.validate(e,n);if(!0!==t)throw Error(t.err.msg)}return t=o(t,s.defaultOptions,s.props),r.convertToJson(i.getTraversalObj(e,t),t)},t.convertTonimn=n(179).convert2nimn,t.getTraversalObj=i.getTraversalObj,t.convertToJson=r.convertToJson,t.convertToJsonString=n(180).convertToJsonString,t.validate=a.validate,t.j2xParser=n(181),t.parseToNimn=function(e,n,r){return t.convertTonimn(t.getTraversalObj(e,r),n,r)}},,,,,function(e,t,n){"use strict";(function(t,r){var i=n(33);e.exports=b;var s,o=n(69);b.ReadableState=_;n(42).EventEmitter;var a=function(e,t){return e.listeners(t).length},u=n(70),l=n(44).Buffer,c=t.Uint8Array||function(){};var h=Object.create(n(23));h.inherits=n(13);var d=n(131),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=n(132),w=n(71);h.inherits(b,u);var g=["error","close","destroy","pause","resume"];function _(e,t){e=e||{};var r=t instanceof(s=s||n(10));this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var i=e.highWaterMark,o=e.readableHighWaterMark,a=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(o||0===o)?o:a,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=n(73).StringDecoder),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function b(e){if(s=s||n(10),!(this instanceof b))return new b(e);this._readableState=new _(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),u.call(this)}function y(e,t,n,r,i){var s,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var n=t.decoder.end();n&&n.length&&(t.buffer.push(n),t.length+=t.objectMode?1:n.length)}t.ended=!0,A(e)}(e,o)):(i||(s=function(e,t){var n;r=t,l.isBuffer(r)||r instanceof c||"string"==typeof t||void 0===t||e.objectMode||(n=new TypeError("Invalid non-string/buffer chunk"));var r;return n}(o,t)),s?e.emit("error",s):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===l.prototype||(t=function(e){return l.from(e)}(t)),r?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):v(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!n?(t=o.decoder.write(t),o.objectMode||0!==t.length?v(e,o,t,!1):T(e,o)):v(e,o,t,!1))):r||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function v(e,t,n,r){t.flowing&&0===t.length&&!t.sync?(e.emit("data",n),e.read(0)):(t.length+=t.objectMode?1:n.length,r?t.buffer.unshift(n):t.buffer.push(n),t.needReadable&&A(e)),T(e,t)}Object.defineProperty(b.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),b.prototype.destroy=w.destroy,b.prototype._undestroy=w.undestroy,b.prototype._destroy=function(e,t){this.push(null),t(e)},b.prototype.push=function(e,t){var n,r=this._readableState;return r.objectMode?n=!0:"string"==typeof e&&((t=t||r.defaultEncoding)!==r.encoding&&(e=l.from(e,t),t=""),n=!0),y(this,e,t,!1,n)},b.prototype.unshift=function(e){return y(this,e,null,!0,!1)},b.prototype.isPaused=function(){return!1===this._readableState.flowing},b.prototype.setEncoding=function(e){return f||(f=n(73).StringDecoder),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};function E(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=8388608?e=8388608:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function A(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i.nextTick(x,e):x(e))}function x(e){p("emit readable"),e.emit("readable"),D(e)}function T(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(S,e,t))}function S(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),n!==t.length);)n=t.length;t.readingMore=!1}function C(e){p("readable nexttick read 0"),e.read(0)}function k(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),D(e),t.flowing&&!t.reading&&e.read(0)}function D(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function R(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;e<t.head.data.length?(r=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):r=e===t.head.data.length?t.shift():n?function(e,t){var n=t.head,r=1,i=n.data;e-=i.length;for(;n=n.next;){var s=n.data,o=e>s.length?s.length:e;if(o===s.length?i+=s:i+=s.slice(0,e),0===(e-=o)){o===s.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=s.slice(o));break}++r}return t.length-=r,i}(e,t):function(e,t){var n=l.allocUnsafe(e),r=t.head,i=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var s=r.data,o=e>s.length?s.length:e;if(s.copy(n,n.length-e,0,o),0===(e-=o)){o===s.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=s.slice(o));break}++i}return t.length-=i,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function O(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function N(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1}b.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,n=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?O(this):A(this),null;if(0===(e=E(e,t))&&t.ended)return 0===t.length&&O(this),null;var r,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=E(n,t))),null===(r=e>0?R(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&O(this)),null!==r&&this.emit("data",r),r},b.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},b.prototype.pipe=function(e,t){var n=this,s=this._readableState;switch(s.pipesCount){case 0:s.pipes=e;break;case 1:s.pipes=[s.pipes,e];break;default:s.pipes.push(e)}s.pipesCount+=1,p("pipe count=%d opts=%j",s.pipesCount,t);var u=(!t||!1!==t.end)&&e!==r.stdout&&e!==r.stderr?c:b;function l(t,r){p("onunpipe"),t===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,p("cleanup"),e.removeListener("close",g),e.removeListener("finish",_),e.removeListener("drain",h),e.removeListener("error",w),e.removeListener("unpipe",l),n.removeListener("end",c),n.removeListener("end",b),n.removeListener("data",m),d=!0,!s.awaitDrain||e._writableState&&!e._writableState.needDrain||h())}function c(){p("onend"),e.end()}s.endEmitted?i.nextTick(u):n.once("end",u),e.on("unpipe",l);var h=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,D(e))}}(n);e.on("drain",h);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===s.pipesCount&&s.pipes===e||s.pipesCount>1&&-1!==N(s.pipes,e))&&!d&&(p("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,f=!0),n.pause())}function w(t){p("onerror",t),b(),e.removeListener("error",w),0===a(e,"error")&&e.emit("error",t)}function g(){e.removeListener("finish",_),b()}function _(){p("onfinish"),e.removeListener("close",g),b()}function b(){p("unpipe"),n.unpipe(e)}return n.on("data",m),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?o(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",w),e.once("close",g),e.once("finish",_),e.emit("pipe",n),s.flowing||(p("pipe resume"),n.resume()),e},b.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var s=0;s<i;s++)r[s].emit("unpipe",this,n);return this}var o=N(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,n)),this},b.prototype.on=function(e,t){var n=u.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var r=this._readableState;r.endEmitted||r.readableListening||(r.readableListening=r.needReadable=!0,r.emittedReadable=!1,r.reading?r.length&&A(this):i.nextTick(C,this))}return n},b.prototype.addListener=b.prototype.on,b.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,i.nextTick(k,e,t))}(this,e)),this},b.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},b.prototype.wrap=function(e){var t=this,n=this._readableState,r=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),n.decoder&&(i=n.decoder.write(i)),n.objectMode&&null==i)||(n.objectMode||i&&i.length)&&(t.push(i)||(r=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var s=0;s<g.length;s++)e.on(g[s],this.emit.bind(this,g[s]));return this._read=function(t){p("wrapped _read",t),r&&(r=!1,e.resume())},this},Object.defineProperty(b.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),b._fromList=R}).call(this,n(6),n(14))},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){e.exports=n(42).EventEmitter},function(e,t,n){"use strict";var r=n(33);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var n=this,s=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return s||o?(t?t(e):!e||this._writableState&&this._writableState.errorEmitted||r.nextTick(i,this,e),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?(r.nextTick(i,n,e),n._writableState&&(n._writableState.errorEmitted=!0)):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},function(e,t,n){(function(e){var r=void 0!==e&&e||"undefined"!=typeof self&&self||window,i=Function.prototype.apply;function s(e,t){this._id=e,this._clearFn=t}t.setTimeout=function(){return new s(i.call(setTimeout,r,arguments),clearTimeout)},t.setInterval=function(){return new s(i.call(setInterval,r,arguments),clearInterval)},t.clearTimeout=t.clearInterval=function(e){e&&e.close()},s.prototype.unref=s.prototype.ref=function(){},s.prototype.close=function(){this._clearFn.call(r,this._id)},t.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},t.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},t._unrefActive=t.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},n(134),t.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==e&&e.setImmediate||this&&this.setImmediate,t.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==e&&e.clearImmediate||this&&this.clearImmediate}).call(this,n(6))},function(e,t,n){"use strict";var r=n(136).Buffer,i=r.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function s(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(r.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=u,this.end=l,t=4;break;case"utf8":this.fillLast=a,t=4;break;case"base64":this.text=c,this.end=h,t=3;break;default:return this.write=d,void(this.end=p)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function o(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function a(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function u(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function l(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function c(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function h(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function p(e){return e&&e.length?this.write(e):""}t.StringDecoder=s,s.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n<e.length?t?t+this.text(e,n):this.text(e,n):t||""},s.prototype.end=function(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"�":t},s.prototype.text=function(e,t){var n=function(e,t,n){var r=t.length-1;if(r<n)return 0;var i=o(t[r]);if(i>=0)return i>0&&(e.lastNeed=i-1),i;if(--r<n||-2===i)return 0;if((i=o(t[r]))>=0)return i>0&&(e.lastNeed=i-2),i;if(--r<n||-2===i)return 0;if((i=o(t[r]))>=0)return i>0&&(2===i?i=0:e.lastNeed=i-3),i;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},s.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},function(e,t,n){"use strict";e.exports=o;var r=n(10),i=Object.create(n(23));function s(e,t){var n=this._transformState;n.transforming=!1;var r=n.writecb;if(!r)return this.emit("error",new Error("write callback called multiple times"));n.writechunk=null,n.writecb=null,null!=t&&this.push(t),r(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);r.call(this,e),this._transformState={afterTransform:s.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",a)}function a(){var e=this;"function"==typeof this._flush?this._flush((function(t,n){u(e,t,n)})):u(this,null,null)}function u(e,t,n){if(t)return e.emit("error",t);if(null!=n&&e.push(n),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=n(13),i.inherits(o,r),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,r.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,n){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,n){var r=this._transformState;if(r.writecb=n,r.writechunk=e,r.writeencoding=t,!r.transforming){var i=this._readableState;(r.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var n=this;r.prototype._destroy.call(this,e,(function(e){t(e),n.emit("close")}))}},function(e,t,n){"use strict";e.exports={controlCharacterInInputStream:"control-character-in-input-stream",noncharacterInInputStream:"noncharacter-in-input-stream",surrogateInInputStream:"surrogate-in-input-stream",nonVoidHtmlElementStartTagWithTrailingSolidus:"non-void-html-element-start-tag-with-trailing-solidus",endTagWithAttributes:"end-tag-with-attributes",endTagWithTrailingSolidus:"end-tag-with-trailing-solidus",unexpectedSolidusInTag:"unexpected-solidus-in-tag",unexpectedNullCharacter:"unexpected-null-character",unexpectedQuestionMarkInsteadOfTagName:"unexpected-question-mark-instead-of-tag-name",invalidFirstCharacterOfTagName:"invalid-first-character-of-tag-name",unexpectedEqualsSignBeforeAttributeName:"unexpected-equals-sign-before-attribute-name",missingEndTagName:"missing-end-tag-name",unexpectedCharacterInAttributeName:"unexpected-character-in-attribute-name",unknownNamedCharacterReference:"unknown-named-character-reference",missingSemicolonAfterCharacterReference:"missing-semicolon-after-character-reference",unexpectedCharacterAfterDoctypeSystemIdentifier:"unexpected-character-after-doctype-system-identifier",unexpectedCharacterInUnquotedAttributeValue:"unexpected-character-in-unquoted-attribute-value",eofBeforeTagName:"eof-before-tag-name",eofInTag:"eof-in-tag",missingAttributeValue:"missing-attribute-value",missingWhitespaceBetweenAttributes:"missing-whitespace-between-attributes",missingWhitespaceAfterDoctypePublicKeyword:"missing-whitespace-after-doctype-public-keyword",missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers:"missing-whitespace-between-doctype-public-and-system-identifiers",missingWhitespaceAfterDoctypeSystemKeyword:"missing-whitespace-after-doctype-system-keyword",missingQuoteBeforeDoctypePublicIdentifier:"missing-quote-before-doctype-public-identifier",missingQuoteBeforeDoctypeSystemIdentifier:"missing-quote-before-doctype-system-identifier",missingDoctypePublicIdentifier:"missing-doctype-public-identifier",missingDoctypeSystemIdentifier:"missing-doctype-system-identifier",abruptDoctypePublicIdentifier:"abrupt-doctype-public-identifier",abruptDoctypeSystemIdentifier:"abrupt-doctype-system-identifier",cdataInHtmlContent:"cdata-in-html-content",incorrectlyOpenedComment:"incorrectly-opened-comment",eofInScriptHtmlCommentLikeText:"eof-in-script-html-comment-like-text",eofInDoctype:"eof-in-doctype",nestedComment:"nested-comment",abruptClosingOfEmptyComment:"abrupt-closing-of-empty-comment",eofInComment:"eof-in-comment",incorrectlyClosedComment:"incorrectly-closed-comment",eofInCdata:"eof-in-cdata",absenceOfDigitsInNumericCharacterReference:"absence-of-digits-in-numeric-character-reference",nullCharacterReference:"null-character-reference",surrogateCharacterReference:"surrogate-character-reference",characterReferenceOutsideUnicodeRange:"character-reference-outside-unicode-range",controlCharacterReference:"control-character-reference",noncharacterCharacterReference:"noncharacter-character-reference",missingWhitespaceBeforeDoctypeName:"missing-whitespace-before-doctype-name",missingDoctypeName:"missing-doctype-name",invalidCharacterSequenceAfterDoctypeName:"invalid-character-sequence-after-doctype-name",duplicateAttribute:"duplicate-attribute",nonConformingDoctype:"non-conforming-doctype",missingDoctype:"missing-doctype",misplacedDoctype:"misplaced-doctype",endTagWithoutMatchingOpenElement:"end-tag-without-matching-open-element",closingOfElementWithOpenChildElements:"closing-of-element-with-open-child-elements",disallowedContentInNoscriptInHead:"disallowed-content-in-noscript-in-head",openElementsLeftAfterEof:"open-elements-left-after-eof",abandonedHeadElementChild:"abandoned-head-element-child",misplacedStartTagForHeadElement:"misplaced-start-tag-for-head-element",nestedNoscriptInHead:"nested-noscript-in-head",eofInElementThatCanContainOnlyText:"eof-in-element-that-can-contain-only-text"}},function(e,t,n){"use strict";e.exports=function(e,t){return[e,t=t||Object.create(null)].reduce((e,t)=>(Object.keys(t).forEach(n=>{e[n]=t[n]}),e),Object.create(null))}},function(e,t,n){var r=n(78).BrotliInput,i=n(78).BrotliOutput,s=n(152),o=n(79),a=n(80).HuffmanCode,u=n(80).BrotliBuildHuffmanTable,l=n(156),c=n(157),h=n(158),d=new Uint8Array([1,2,3,4,0,5,17,6,16,7,8,9,10,11,12,13,14,15]),p=new Uint8Array([3,2,1,0,3,3,3,3,3,3,2,2,2,2,2,2]),f=new Int8Array([0,0,0,0,-1,1,-2,2,-3,3,-1,1,-2,2,-3,3]),m=new Uint16Array([256,402,436,468,500,534,566,598,630,662,694,726,758,790,822,854,886,920,952,984,1016,1048,1080]);function w(e){var t;return 0===e.readBits(1)?16:(t=e.readBits(3))>0?17+t:(t=e.readBits(3))>0?8+t:17}function g(e){if(e.readBits(1)){var t=e.readBits(3);return 0===t?1:e.readBits(t)+(1<<t)}return 0}function _(){this.meta_block_length=0,this.input_end=0,this.is_uncompressed=0,this.is_metadata=!1}function b(e){var t,n,r,i=new _;if(i.input_end=e.readBits(1),i.input_end&&e.readBits(1))return i;if(7===(t=e.readBits(2)+4)){if(i.is_metadata=!0,0!==e.readBits(1))throw new Error("Invalid reserved bit");if(0===(n=e.readBits(2)))return i;for(r=0;r<n;r++){var s=e.readBits(8);if(r+1===n&&n>1&&0===s)throw new Error("Invalid size byte");i.meta_block_length|=s<<8*r}}else for(r=0;r<t;++r){var o=e.readBits(4);if(r+1===t&&t>4&&0===o)throw new Error("Invalid size nibble");i.meta_block_length|=o<<4*r}return++i.meta_block_length,i.input_end||i.is_metadata||(i.is_uncompressed=e.readBits(1)),i}function y(e,t,n){var r;return n.fillBitWindow(),(r=e[t+=n.val_>>>n.bit_pos_&255].bits-8)>0&&(n.bit_pos_+=8,t+=e[t].value,t+=n.val_>>>n.bit_pos_&(1<<r)-1),n.bit_pos_+=e[t].bits,e[t].value}function v(e,t,n,r){var i,s,o=new Uint8Array(e);if(r.readMoreInput(),1===(s=r.readBits(2))){for(var l=e-1,c=0,h=new Int32Array(4),p=r.readBits(2)+1;l;)l>>=1,++c;for(f=0;f<p;++f)h[f]=r.readBits(c)%e,o[h[f]]=2;switch(o[h[0]]=1,p){case 1:break;case 3:if(h[0]===h[1]||h[0]===h[2]||h[1]===h[2])throw new Error("[ReadHuffmanCode] invalid symbols");break;case 2:if(h[0]===h[1])throw new Error("[ReadHuffmanCode] invalid symbols");o[h[1]]=1;break;case 4:if(h[0]===h[1]||h[0]===h[2]||h[0]===h[3]||h[1]===h[2]||h[1]===h[3]||h[2]===h[3])throw new Error("[ReadHuffmanCode] invalid symbols");r.readBits(1)?(o[h[2]]=3,o[h[3]]=3):o[h[0]]=2}}else{var f,m=new Uint8Array(18),w=32,g=0,_=[new a(2,0),new a(2,4),new a(2,3),new a(3,2),new a(2,0),new a(2,4),new a(2,3),new a(4,1),new a(2,0),new a(2,4),new a(2,3),new a(3,2),new a(2,0),new a(2,4),new a(2,3),new a(4,5)];for(f=s;f<18&&w>0;++f){var b,y=d[f],v=0;r.fillBitWindow(),v+=r.val_>>>r.bit_pos_&15,r.bit_pos_+=_[v].bits,b=_[v].value,m[y]=b,0!==b&&(w-=32>>b,++g)}if(1!==g&&0!==w)throw new Error("[ReadHuffmanCode] invalid num_codes or space");!function(e,t,n,r){for(var i=0,s=8,o=0,l=0,c=32768,h=[],d=0;d<32;d++)h.push(new a(0,0));for(u(h,0,5,e,18);i<t&&c>0;){var p,f=0;if(r.readMoreInput(),r.fillBitWindow(),f+=r.val_>>>r.bit_pos_&31,r.bit_pos_+=h[f].bits,(p=255&h[f].value)<16)o=0,n[i++]=p,0!==p&&(s=p,c-=32768>>p);else{var m,w,g=p-14,_=0;if(16===p&&(_=s),l!==_&&(o=0,l=_),m=o,o>0&&(o-=2,o<<=g),i+(w=(o+=r.readBits(g)+3)-m)>t)throw new Error("[ReadHuffmanCodeLengths] symbol + repeat_delta > num_symbols");for(var b=0;b<w;b++)n[i+b]=l;i+=w,0!==l&&(c-=w<<15-l)}}if(0!==c)throw new Error("[ReadHuffmanCodeLengths] space = "+c);for(;i<t;i++)n[i]=0}(m,e,o,r)}if(0===(i=u(t,n,8,o,e)))throw new Error("[ReadHuffmanCode] BuildHuffmanTable failed: ");return i}function E(e,t,n){var r,i;return r=y(e,t,n),i=c.kBlockLengthPrefixCode[r].nbits,c.kBlockLengthPrefixCode[r].offset+n.readBits(i)}function A(e,t,n){var r;return e<16?(n+=p[e],r=t[n&=3]+f[e]):r=e-16+1,r}function x(e,t){for(var n=e[t],r=t;r;--r)e[r]=e[r-1];e[0]=n}function T(e,t){this.alphabet_size=e,this.num_htrees=t,this.codes=new Array(t+t*m[e+31>>>5]),this.htrees=new Uint32Array(t)}function S(e,t){var n,r,i={num_htrees:null,context_map:null},s=0;t.readMoreInput();var o=i.num_htrees=g(t)+1,u=i.context_map=new Uint8Array(e);if(o<=1)return i;for(t.readBits(1)&&(s=t.readBits(4)+1),n=[],r=0;r<1080;r++)n[r]=new a(0,0);for(v(o+s,n,0,t),r=0;r<e;){var l;if(t.readMoreInput(),0===(l=y(n,0,t)))u[r]=0,++r;else if(l<=s)for(var c=1+(1<<l)+t.readBits(l);--c;){if(r>=e)throw new Error("[DecodeContextMap] i >= context_map_size");u[r]=0,++r}else u[r]=l-s,++r}return t.readBits(1)&&function(e,t){var n,r=new Uint8Array(256);for(n=0;n<256;++n)r[n]=n;for(n=0;n<t;++n){var i=e[n];e[n]=r[i],i&&x(r,i)}}(u,e),i}function C(e,t,n,r,i,s,o){var a,u=2*n,l=n,c=y(t,1080*n,o);(a=0===c?i[u+(1&s[l])]:1===c?i[u+(s[l]-1&1)]+1:c-2)>=e&&(a-=e),r[n]=a,i[u+(1&s[l])]=a,++s[l]}function k(e,t,n,r,i,o){var a,u=i+1,l=n&i,c=o.pos_&s.IBUF_MASK;if(t<8||o.bit_pos_+(t<<3)<o.bit_end_pos_)for(;t-- >0;)o.readMoreInput(),r[l++]=o.readBits(8),l===u&&(e.write(r,u),l=0);else{if(o.bit_end_pos_<32)throw new Error("[CopyUncompressedBlockToOutput] br.bit_end_pos_ < 32");for(;o.bit_pos_<32;)r[l]=o.val_>>>o.bit_pos_,o.bit_pos_+=8,++l,--t;if(c+(a=o.bit_end_pos_-o.bit_pos_>>3)>s.IBUF_MASK){for(var h=s.IBUF_MASK+1-c,d=0;d<h;d++)r[l+d]=o.buf_[c+d];a-=h,l+=h,t-=h,c=0}for(d=0;d<a;d++)r[l+d]=o.buf_[c+d];if(t-=a,(l+=a)>=u){e.write(r,u),l-=u;for(d=0;d<l;d++)r[d]=r[u+d]}for(;l+t>=u;){if(a=u-l,o.input_.read(r,l,a)<a)throw new Error("[CopyUncompressedBlockToOutput] not enough bytes");e.write(r,u),t-=a,l=0}if(o.input_.read(r,l,t)<t)throw new Error("[CopyUncompressedBlockToOutput] not enough bytes");o.reset()}}function D(e){var t=e.bit_pos_+7&-8;return 0==e.readBits(t-e.bit_pos_)}function R(e){var t=new r(e),n=new s(t);return w(n),b(n).meta_block_length}function O(e,t){var n,r,i,u,d,p,f,m,_,x,R=0,O=0,I=0,N=[16,15,11,4],F=0,P=0,L=0,B=[new T(0,0),new T(0,0),new T(0,0)],U=128+s.READ_SIZE;i=(1<<(r=w(x=new s(e))))-16,d=(u=1<<r)-1,p=new Uint8Array(u+U+o.maxDictionaryWordLength),f=u,m=[],_=[];for(var M=0;M<3240;M++)m[M]=new a(0,0),_[M]=new a(0,0);for(;!O;){var W,j,z,H,G,q,V,X,K,Y,J,Z=0,Q=[1<<28,1<<28,1<<28],$=[0],ee=[1,1,1],te=[0,1,0,1,0,1],ne=[0],re=null,ie=null,se=0,oe=null,ae=0,ue=0,le=0;for(n=0;n<3;++n)B[n].codes=null,B[n].htrees=null;x.readMoreInput();var ce=b(x);if(R+(Z=ce.meta_block_length)>t.buffer.length){var he=new Uint8Array(R+Z);he.set(t.buffer),t.buffer=he}if(O=ce.input_end,W=ce.is_uncompressed,ce.is_metadata)for(D(x);Z>0;--Z)x.readMoreInput(),x.readBits(8);else if(0!==Z)if(W)x.bit_pos_=x.bit_pos_+7&-8,k(t,Z,R,p,d,x),R+=Z;else{for(n=0;n<3;++n)ee[n]=g(x)+1,ee[n]>=2&&(v(ee[n]+2,m,1080*n,x),v(26,_,1080*n,x),Q[n]=E(_,1080*n,x),ne[n]=1);for(x.readMoreInput(),H=(1<<(j=x.readBits(2)))-1,G=(z=16+(x.readBits(4)<<j))+(48<<j),re=new Uint8Array(ee[0]),n=0;n<ee[0];++n)x.readMoreInput(),re[n]=x.readBits(2)<<1;var de=S(ee[0]<<6,x);V=de.num_htrees,q=de.context_map;var pe=S(ee[2]<<2,x);for(K=pe.num_htrees,X=pe.context_map,B[0]=new T(256,V),B[1]=new T(704,ee[1]),B[2]=new T(G,K),n=0;n<3;++n)B[n].decode(x);for(ie=0,oe=0,Y=re[$[0]],ue=l.lookupOffsets[Y],le=l.lookupOffsets[Y+1],J=B[1].htrees[0];Z>0;){var fe,me,we,ge,_e,be,ye,ve,Ee,Ae,xe,Te;for(x.readMoreInput(),0===Q[1]&&(C(ee[1],m,1,$,te,ne,x),Q[1]=E(_,1080,x),J=B[1].htrees[$[1]]),--Q[1],(me=(fe=y(B[1].codes,J,x))>>6)>=2?(me-=2,ye=-1):ye=0,we=c.kInsertRangeLut[me]+(fe>>3&7),ge=c.kCopyRangeLut[me]+(7&fe),_e=c.kInsertLengthPrefixCode[we].offset+x.readBits(c.kInsertLengthPrefixCode[we].nbits),be=c.kCopyLengthPrefixCode[ge].offset+x.readBits(c.kCopyLengthPrefixCode[ge].nbits),P=p[R-1&d],L=p[R-2&d],Ee=0;Ee<_e;++Ee)x.readMoreInput(),0===Q[0]&&(C(ee[0],m,0,$,te,ne,x),Q[0]=E(_,0,x),ie=$[0]<<6,Y=re[$[0]],ue=l.lookupOffsets[Y],le=l.lookupOffsets[Y+1]),se=q[ie+(l.lookup[ue+P]|l.lookup[le+L])],--Q[0],L=P,P=y(B[0].codes,B[0].htrees[se],x),p[R&d]=P,(R&d)===d&&t.write(p,u),++R;if((Z-=_e)<=0)break;if(ye<0)if(x.readMoreInput(),0===Q[2]&&(C(ee[2],m,2,$,te,ne,x),Q[2]=E(_,2160,x),oe=$[2]<<2),--Q[2],ae=X[oe+(255&(be>4?3:be-2))],(ye=y(B[2].codes,B[2].htrees[ae],x))>=z)Te=(ye-=z)&H,ye=z+((Se=(2+(1&(ye>>=j))<<(xe=1+(ye>>1)))-4)+x.readBits(xe)<<j)+Te;if((ve=A(ye,N,F))<0)throw new Error("[BrotliDecompress] invalid distance");if(Ae=R&d,ve>(I=R<i&&I!==i?R:i)){if(!(be>=o.minDictionaryWordLength&&be<=o.maxDictionaryWordLength))throw new Error("Invalid backward reference. pos: "+R+" distance: "+ve+" len: "+be+" bytes left: "+Z);var Se=o.offsetsByLength[be],Ce=ve-I-1,ke=o.sizeBitsByLength[be],De=Ce>>ke;if(Se+=(Ce&(1<<ke)-1)*be,!(De<h.kNumTransforms))throw new Error("Invalid backward reference. pos: "+R+" distance: "+ve+" len: "+be+" bytes left: "+Z);var Re=h.transformDictionaryWord(p,Ae,Se,be,De);if(R+=Re,Z-=Re,(Ae+=Re)>=f){t.write(p,u);for(var Oe=0;Oe<Ae-f;Oe++)p[Oe]=p[f+Oe]}}else{if(ye>0&&(N[3&F]=ve,++F),be>Z)throw new Error("Invalid backward reference. pos: "+R+" distance: "+ve+" len: "+be+" bytes left: "+Z);for(Ee=0;Ee<be;++Ee)p[R&d]=p[R-ve&d],(R&d)===d&&t.write(p,u),++R,--Z}P=p[R-1&d],L=p[R-2&d]}R&=1073741823}}t.write(p,R&d)}T.prototype.decode=function(e){var t,n=0;for(t=0;t<this.num_htrees;++t)this.htrees[t]=n,n+=v(this.alphabet_size,this.codes,n,e)},t.BrotliDecompressedSize=R,t.BrotliDecompressBuffer=function(e,t){var n=new r(e);null==t&&(t=R(e));var s=new Uint8Array(t),o=new i(s);return O(n,o),o.pos<o.buffer.length&&(o.buffer=o.buffer.subarray(0,o.pos)),o.buffer},t.BrotliDecompress=O,o.init()},function(e,t){function n(e){this.buffer=e,this.pos=0}function r(e){this.buffer=e,this.pos=0}n.prototype.read=function(e,t,n){this.pos+n>this.buffer.length&&(n=this.buffer.length-this.pos);for(var r=0;r<n;r++)e[t+r]=this.buffer[this.pos+r];return this.pos+=n,n},t.BrotliInput=n,r.prototype.write=function(e,t){if(this.pos+t>this.buffer.length)throw new Error("Output buffer is not large enough");return this.buffer.set(e.subarray(0,t),this.pos),this.pos+=t,t},t.BrotliOutput=r},function(e,t,n){var r=n(153);t.init=function(){t.dictionary=r.init()},t.offsetsByLength=new Uint32Array([0,0,0,0,0,4096,9216,21504,35840,44032,53248,63488,74752,87040,93696,100864,104704,106752,108928,113536,115968,118528,119872,121280,122016]),t.sizeBitsByLength=new Uint8Array([0,0,0,0,10,10,11,11,10,10,10,10,10,9,9,8,7,7,8,7,7,6,6,5,5]),t.minDictionaryWordLength=4,t.maxDictionaryWordLength=24},function(e,t){function n(e,t){this.bits=e,this.value=t}t.HuffmanCode=n;function r(e,t){for(var n=1<<t-1;e&n;)n>>=1;return(e&n-1)+n}function i(e,t,r,i,s){do{e[t+(i-=r)]=new n(s.bits,s.value)}while(i>0)}function s(e,t,n){for(var r=1<<t-n;t<15&&!((r-=e[t])<=0);)++t,r<<=1;return t-n}t.BrotliBuildHuffmanTable=function(e,t,o,a,u){var l,c,h,d,p,f,m,w,g,_,b=t,y=new Int32Array(16),v=new Int32Array(16);for(_=new Int32Array(u),c=0;c<u;c++)y[a[c]]++;for(v[1]=0,l=1;l<15;l++)v[l+1]=v[l]+y[l];for(c=0;c<u;c++)0!==a[c]&&(_[v[a[c]]++]=c);if(g=w=1<<(m=o),1===v[15]){for(h=0;h<g;++h)e[t+h]=new n(0,65535&_[0]);return g}for(h=0,c=0,l=1,d=2;l<=o;++l,d<<=1)for(;y[l]>0;--y[l])i(e,t+h,d,w,new n(255&l,65535&_[c++])),h=r(h,l);for(f=g-1,p=-1,l=o+1,d=2;l<=15;++l,d<<=1)for(;y[l]>0;--y[l])(h&f)!==p&&(t+=w,g+=w=1<<(m=s(y,l,o)),e[b+(p=h&f)]=new n(m+o&255,t-b-p&65535)),i(e,t+(h>>o),d,w,new n(l-o&255,65535&_[c++])),h=r(h,l);return g}},function(e,t,n){"use strict";e.exports=function(e,t,n,r){for(var i=65535&e|0,s=e>>>16&65535|0,o=0;0!==n;){n-=o=n>2e3?2e3:n;do{s=s+(i=i+t[r++]|0)|0}while(--o);i%=65521,s%=65521}return i|s<<16|0}},function(e,t,n){"use strict";var r=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();e.exports=function(e,t,n,i){var s=r,o=i+n;e^=-1;for(var a=i;a<o;a++)e=e>>>8^s[255&(e^t[a])];return-1^e}},function(e,t,n){"use strict";var r=n(9),i=!0,s=!0;try{String.fromCharCode.apply(null,[0])}catch(e){i=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){s=!1}for(var o=new r.Buf8(256),a=0;a<256;a++)o[a]=a>=252?6:a>=248?5:a>=240?4:a>=224?3:a>=192?2:1;function u(e,t){if(t<65534&&(e.subarray&&s||!e.subarray&&i))return String.fromCharCode.apply(null,r.shrinkBuf(e,t));for(var n="",o=0;o<t;o++)n+=String.fromCharCode(e[o]);return n}o[254]=o[254]=1,t.string2buf=function(e){var t,n,i,s,o,a=e.length,u=0;for(s=0;s<a;s++)55296==(64512&(n=e.charCodeAt(s)))&&s+1<a&&56320==(64512&(i=e.charCodeAt(s+1)))&&(n=65536+(n-55296<<10)+(i-56320),s++),u+=n<128?1:n<2048?2:n<65536?3:4;for(t=new r.Buf8(u),o=0,s=0;o<u;s++)55296==(64512&(n=e.charCodeAt(s)))&&s+1<a&&56320==(64512&(i=e.charCodeAt(s+1)))&&(n=65536+(n-55296<<10)+(i-56320),s++),n<128?t[o++]=n:n<2048?(t[o++]=192|n>>>6,t[o++]=128|63&n):n<65536?(t[o++]=224|n>>>12,t[o++]=128|n>>>6&63,t[o++]=128|63&n):(t[o++]=240|n>>>18,t[o++]=128|n>>>12&63,t[o++]=128|n>>>6&63,t[o++]=128|63&n);return t},t.buf2binstring=function(e){return u(e,e.length)},t.binstring2buf=function(e){for(var t=new r.Buf8(e.length),n=0,i=t.length;n<i;n++)t[n]=e.charCodeAt(n);return t},t.buf2string=function(e,t){var n,r,i,s,a=t||e.length,l=new Array(2*a);for(r=0,n=0;n<a;)if((i=e[n++])<128)l[r++]=i;else if((s=o[i])>4)l[r++]=65533,n+=s-1;else{for(i&=2===s?31:3===s?15:7;s>1&&n<a;)i=i<<6|63&e[n++],s--;s>1?l[r++]=65533:i<65536?l[r++]=i:(i-=65536,l[r++]=55296|i>>10&1023,l[r++]=56320|1023&i)}return u(l,r)},t.utf8border=function(e,t){var n;for((t=t||e.length)>e.length&&(t=e.length),n=t-1;n>=0&&128==(192&e[n]);)n--;return n<0||0===n?t:n+o[e[n]]>t?n:t}},function(e,t,n){"use strict";e.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}},function(e,t,n){"use strict";e.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}},function(e,t,n){"use strict";e.exports=function(e,t,n,r){for(var i=65535&e|0,s=e>>>16&65535|0,o=0;0!==n;){n-=o=n>2e3?2e3:n;do{s=s+(i=i+t[r++]|0)|0}while(--o);i%=65521,s%=65521}return i|s<<16|0}},function(e,t,n){"use strict";var r=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();e.exports=function(e,t,n,i){var s=r,o=i+n;e^=-1;for(var a=i;a<o;a++)e=e>>>8^s[255&(e^t[a])];return-1^e}},function(e,t,n){"use strict";var r=n(11),i=!0,s=!0;try{String.fromCharCode.apply(null,[0])}catch(e){i=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){s=!1}for(var o=new r.Buf8(256),a=0;a<256;a++)o[a]=a>=252?6:a>=248?5:a>=240?4:a>=224?3:a>=192?2:1;function u(e,t){if(t<65534&&(e.subarray&&s||!e.subarray&&i))return String.fromCharCode.apply(null,r.shrinkBuf(e,t));for(var n="",o=0;o<t;o++)n+=String.fromCharCode(e[o]);return n}o[254]=o[254]=1,t.string2buf=function(e){var t,n,i,s,o,a=e.length,u=0;for(s=0;s<a;s++)55296==(64512&(n=e.charCodeAt(s)))&&s+1<a&&56320==(64512&(i=e.charCodeAt(s+1)))&&(n=65536+(n-55296<<10)+(i-56320),s++),u+=n<128?1:n<2048?2:n<65536?3:4;for(t=new r.Buf8(u),o=0,s=0;o<u;s++)55296==(64512&(n=e.charCodeAt(s)))&&s+1<a&&56320==(64512&(i=e.charCodeAt(s+1)))&&(n=65536+(n-55296<<10)+(i-56320),s++),n<128?t[o++]=n:n<2048?(t[o++]=192|n>>>6,t[o++]=128|63&n):n<65536?(t[o++]=224|n>>>12,t[o++]=128|n>>>6&63,t[o++]=128|63&n):(t[o++]=240|n>>>18,t[o++]=128|n>>>12&63,t[o++]=128|n>>>6&63,t[o++]=128|63&n);return t},t.buf2binstring=function(e){return u(e,e.length)},t.binstring2buf=function(e){for(var t=new r.Buf8(e.length),n=0,i=t.length;n<i;n++)t[n]=e.charCodeAt(n);return t},t.buf2string=function(e,t){var n,r,i,s,a=t||e.length,l=new Array(2*a);for(r=0,n=0;n<a;)if((i=e[n++])<128)l[r++]=i;else if((s=o[i])>4)l[r++]=65533,n+=s-1;else{for(i&=2===s?31:3===s?15:7;s>1&&n<a;)i=i<<6|63&e[n++],s--;s>1?l[r++]=65533:i<65536?l[r++]=i:(i-=65536,l[r++]=55296|i>>10&1023,l[r++]=56320|1023&i)}return u(l,r)},t.utf8border=function(e,t){var n;for((t=t||e.length)>e.length&&(t=e.length),n=t-1;n>=0&&128==(192&e[n]);)n--;return n<0||0===n?t:n+o[e[n]]>t?n:t}},function(e,t,n){"use strict";e.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}},function(e,t,n){"use strict";var r=n(16);e.exports=new r({include:[n(91)]})},function(e,t,n){"use strict";var r=n(16);e.exports=new r({include:[n(50)],implicit:[n(189),n(190),n(191),n(192)]})},function(e,t,n){"use strict";t.Commented=n(209),t.Diagnose=n(219),t.Decoder=n(37),t.Encoder=n(93),t.Simple=n(28),t.Tagged=n(54),t.Map=n(220),t.comment=t.Commented.comment,t.decodeAll=t.Decoder.decodeAll,t.decodeFirst=t.Decoder.decodeFirst,t.decodeAllSync=t.Decoder.decodeAllSync,t.decodeFirstSync=t.Decoder.decodeFirstSync,t.diagnose=t.Diagnose.diagnose,t.encode=t.Encoder.encode,t.encodeCanonical=t.Encoder.encodeCanonical,t.encodeOne=t.Encoder.encodeOne,t.encodeAsync=t.Encoder.encodeAsync,t.decode=t.Decoder.decodeFirstSync,t.leveldb={decode:t.Decoder.decodeAllSync,encode:t.Encoder.encode,buffer:!0,name:"cbor"},t.hasBigInt=n(17).hasBigInt},function(e,t,n){"use strict";(function(t){const r=n(4),i=n(55),s=n(18).BigNumber,o=n(29),a=(n(54),n(28),n(17)),u=n(12),l=u.MT,c=u.NUMBYTES,h=u.SHIFT32,d=u.SYMS,p=u.TAG,f=u.MT.SIMPLE_FLOAT<<5|u.NUMBYTES.TWO,m=u.MT.SIMPLE_FLOAT<<5|u.NUMBYTES.FOUR,w=u.MT.SIMPLE_FLOAT<<5|u.NUMBYTES.EIGHT,g=u.MT.SIMPLE_FLOAT<<5|u.SIMPLE.TRUE,_=u.MT.SIMPLE_FLOAT<<5|u.SIMPLE.FALSE,b=u.MT.SIMPLE_FLOAT<<5|u.SIMPLE.UNDEFINED,y=u.MT.SIMPLE_FLOAT<<5|u.SIMPLE.NULL,v=new s("0x20000000000000"),E=t.from("f97e00","hex"),A=t.from("f9fc00","hex"),x=t.from("f97c00","hex"),T=t.from("f98000","hex"),S=Symbol("CBOR_LOOP_DETECT");class C extends r.Transform{constructor(e){const n=Object.assign({},e,{readableObjectMode:!1,writableObjectMode:!0});super(n),this.canonical=n.canonical,this.encodeUndefined=n.encodeUndefined,this.disallowUndefinedKeys=!!n.disallowUndefinedKeys,this.dateType=null!=n.dateType?n.dateType.toLowerCase():"number","symbol"==typeof n.detectLoops?this.detectLoops=n.detectLoops:this.detectLoops=n.detectLoops?Symbol("CBOR_DETECT"):null,this.semanticTypes=[Array,this._pushArray,Date,this._pushDate,t,this._pushBuffer,Map,this._pushMap,o,this._pushNoFilter,RegExp,this._pushRegexp,Set,this._pushSet,s,this._pushBigNumber,ArrayBuffer,this._pushUint8Array,Uint8ClampedArray,this._pushUint8Array,Uint8Array,this._pushUint8Array,Uint16Array,this._pushArray,Uint32Array,this._pushArray,Int8Array,this._pushArray,Int16Array,this._pushArray,Int32Array,this._pushArray,Float32Array,this._pushFloat32Array,Float64Array,this._pushFloat64Array],i.Url&&this.semanticTypes.push(i.Url,this._pushUrl),i.URL&&this.semanticTypes.push(i.URL,this._pushURL);const r=n.genTypes||[];for(let e=0,t=r.length;e<t;e+=2)this.addSemanticType(r[e],r[e+1])}_transform(e,t,n){return n(!1===this.pushAny(e)?new Error("Push Error"):void 0)}_flush(e){return e()}addSemanticType(e,t){for(let n=0,r=this.semanticTypes.length;n<r;n+=2){if(this.semanticTypes[n]===e){const e=this.semanticTypes[n+1];return this.semanticTypes[n+1]=t,e}}return this.semanticTypes.push(e,t),null}_pushUInt8(e){const n=t.allocUnsafe(1);return n.writeUInt8(e,0),this.push(n)}_pushUInt16BE(e){const n=t.allocUnsafe(2);return n.writeUInt16BE(e,0),this.push(n)}_pushUInt32BE(e){const n=t.allocUnsafe(4);return n.writeUInt32BE(e,0),this.push(n)}_pushFloatBE(e){const n=t.allocUnsafe(4);return n.writeFloatBE(e,0),this.push(n)}_pushDoubleBE(e){const n=t.allocUnsafe(8);return n.writeDoubleBE(e,0),this.push(n)}_pushNaN(){return this.push(E)}_pushInfinity(e){const t=e<0?A:x;return this.push(t)}_pushFloat(e){if(this.canonical){const n=t.allocUnsafe(2);if(a.writeHalf(n,e)&&a.parseHalf(n)===e)return this._pushUInt8(f)&&this.push(n)}return Math.fround(e)===e?this._pushUInt8(m)&&this._pushFloatBE(e):this._pushUInt8(w)&&this._pushDoubleBE(e)}_pushInt(e,t,n){const r=t<<5;switch(!1){case!(e<24):return this._pushUInt8(r|e);case!(e<=255):return this._pushUInt8(r|c.ONE)&&this._pushUInt8(e);case!(e<=65535):return this._pushUInt8(r|c.TWO)&&this._pushUInt16BE(e);case!(e<=4294967295):return this._pushUInt8(r|c.FOUR)&&this._pushUInt32BE(e);case!(e<=Number.MAX_SAFE_INTEGER):return this._pushUInt8(r|c.EIGHT)&&this._pushUInt32BE(Math.floor(e/h))&&this._pushUInt32BE(e%h);default:return t===l.NEG_INT?this._pushFloat(n):this._pushFloat(e)}}_pushIntNum(e){return Object.is(e,-0)?this.push(T):e<0?this._pushInt(-e-1,l.NEG_INT,e):this._pushInt(e,l.POS_INT)}_pushNumber(e){switch(!1){case!isNaN(e):return this._pushNaN();case isFinite(e):return this._pushInfinity(e);case Math.round(e)!==e:return this._pushIntNum(e);default:return this._pushFloat(e)}}_pushString(e){const n=t.byteLength(e,"utf8");return this._pushInt(n,l.UTF8_STRING)&&this.push(e,"utf8")}_pushBoolean(e){return this._pushUInt8(e?g:_)}_pushUndefined(e){switch(typeof this.encodeUndefined){case"undefined":return this._pushUInt8(b);case"function":return this.pushAny(this.encodeUndefined.call(this,e));case"object":if(t.isBuffer(this.encodeUndefined))return this.push(this.encodeUndefined)}return this.pushAny(this.encodeUndefined)}_pushNull(e){return this._pushUInt8(y)}_pushArray(e,t){const n=t.length;if(!e._pushInt(n,l.ARRAY))return!1;for(let r=0;r<n;r++)if(!e.pushAny(t[r]))return!1;return!0}_pushTag(e){return this._pushInt(e,l.TAG)}_pushDate(e,t){switch(e.dateType){case"string":return e._pushTag(p.DATE_STRING)&&e._pushString(t.toISOString());case"int":case"integer":return e._pushTag(p.DATE_EPOCH)&&e._pushIntNum(Math.round(t/1e3));case"float":return e._pushTag(p.DATE_EPOCH)&&e._pushFloat(t/1e3);case"number":default:return e._pushTag(p.DATE_EPOCH)&&e.pushAny(t/1e3)}}_pushBuffer(e,t){return e._pushInt(t.length,l.BYTE_STRING)&&e.push(t)}_pushNoFilter(e,t){return e._pushBuffer(e,t.slice())}_pushRegexp(e,t){return e._pushTag(p.REGEXP)&&e.pushAny(t.source)}_pushSet(e,t){if(!e._pushInt(t.size,l.ARRAY))return!1;for(const n of t)if(!e.pushAny(n))return!1;return!0}_pushUrl(e,t){return e._pushTag(p.URI)&&e.pushAny(t.format())}_pushURL(e,t){return e._pushTag(p.URI)&&e.pushAny(t.toString())}_pushBigint(e){let n=p.POS_BIGINT;e.isNegative()&&(e=e.negated().minus(1),n=p.NEG_BIGINT);let r=e.toString(16);r.length%2&&(r="0"+r);const i=t.from(r,"hex");return this._pushTag(n)&&this._pushBuffer(this,i)}_pushJSBigint(e){let n=p.POS_BIGINT;e<0&&(e=-e+BigInt("-1"),n=p.NEG_BIGINT);let r=e.toString(16);r.length%2&&(r="0"+r);const i=t.from(r,"hex");return this._pushTag(n)&&this._pushBuffer(this,i)}_pushBigNumber(e,t){if(t.isNaN())return e._pushNaN();if(!t.isFinite())return e._pushInfinity(t.isNegative()?-1/0:1/0);if(t.isInteger())return e._pushBigint(t);if(!e._pushTag(p.DECIMAL_FRAC)||!e._pushInt(2,l.ARRAY))return!1;const n=t.decimalPlaces(),r=t.times(new s(10).pow(n));return!!e._pushIntNum(-n)&&(r.abs().isLessThan(v)?e._pushIntNum(r.toNumber()):e._pushBigint(r))}_pushMap(e,t){if(!e._pushInt(t.size,l.MAP))return!1;if(e.canonical){const n=[...t.entries()],r=new C(this),i=new o({highWaterMark:this.readableHighWaterMark});r.pipe(i),n.sort(([e],[t])=>{r.pushAny(e);const n=i.read();r.pushAny(t);const s=i.read();return n.compare(s)});for(const[t,r]of n){if(e.disallowUndefinedKeys&&void 0===t)throw new Error("Invalid Map key: undefined");if(!e.pushAny(t)||!e.pushAny(r))return!1}}else for(const[n,r]of t){if(e.disallowUndefinedKeys&&void 0===n)throw new Error("Invalid Map key: undefined");if(!e.pushAny(n)||!e.pushAny(r))return!1}return!0}_pushUint8Array(e,n){return e._pushBuffer(e,t.from(n))}_pushFloat32Array(e,t){const n=t.length;if(!e._pushInt(n,l.ARRAY))return!1;for(let r=0;r<n;r++)if(!e._pushUInt8(m)||!e._pushFloatBE(t[r]))return!1;return!0}_pushFloat64Array(e,t){const n=t.length;if(!e._pushInt(n,l.ARRAY))return!1;for(let r=0;r<n;r++)if(!e._pushUInt8(w)||!e._pushDoubleBE(t[r]))return!1;return!0}removeLoopDetectors(e){if(!this.detectLoops||"object"!=typeof e||!e)return!1;const t=e[S];if(!t||t!==this.detectLoops)return!1;if(delete e[S],Array.isArray(e))for(const t of e)this.removeLoopDetectors(t);else for(const t in e)this.removeLoopDetectors(e[t]);return!0}_pushObject(e){if(!e)return this._pushNull(e);if(this.detectLoops){if(e[S]===this.detectLoops)throw new Error("Loop detected while CBOR encoding");e[S]=this.detectLoops}const t=e.encodeCBOR;if("function"==typeof t)return t.call(e,this);for(let t=0,n=this.semanticTypes.length;t<n;t+=2){if(e instanceof this.semanticTypes[t])return this.semanticTypes[t+1].call(e,this,e)}const n=Object.keys(e),r={};if(this.canonical&&n.sort((e,t)=>{const n=r[e]||(r[e]=C.encode(e)),i=r[t]||(r[t]=C.encode(t));return n.compare(i)}),!this._pushInt(n.length,l.MAP))return!1;let i;for(let t=0,s=n.length;t<s;t++){const s=n[t];if(this.canonical&&(i=r[s])){if(!this.push(i))return!1}else if(!this._pushString(s))return!1;if(!this.pushAny(e[s]))return!1}return!0}pushAny(e){switch(typeof e){case"number":return this._pushNumber(e);case"bigint":return this._pushJSBigint(e);case"string":return this._pushString(e);case"boolean":return this._pushBoolean(e);case"undefined":return this._pushUndefined(e);case"object":return this._pushObject(e);case"symbol":switch(e){case d.NULL:return this._pushNull(null);case d.UNDEFINED:return this._pushUndefined(void 0);default:throw new Error("Unknown symbol: "+e.toString())}default:throw new Error("Unknown type: "+typeof e+", "+(e?e.toString():""))}}_pushAny(e){return this.pushAny(e)}_encodeAll(e){const t=new o({highWaterMark:this.readableHighWaterMark});this.pipe(t);for(const t of e)this.pushAny(t);return this.end(),t.read()}static encode(...e){return(new C)._encodeAll(e)}static encodeCanonical(...e){return new C({canonical:!0})._encodeAll(e)}static encodeOne(e,t){return new C(t)._encodeAll([e])}static encodeAsync(e,n){return new Promise((r,i)=>{const s=[],o=new C(n);o.on("data",e=>s.push(e)),o.on("error",i),o.on("finish",()=>r(t.concat(s))),o.pushAny(e),o.end()})}}e.exports=C}).call(this,n(3).Buffer)},,,,,,,,,,,,,,,,,,,,,function(e,t,n){"use strict";const r=n(57),{escapeString:i}=n(149);e.exports=class extends r{constructor(){super({sourceCodeLocationInfo:!0}),this.posTracker=this.locInfoMixin.posTracker}_transformChunk(e){super._transformChunk(e)}_getRawHtml(e){const t=this.posTracker.droppedBufferSize,n=e.startOffset-t,r=e.endOffset-t;return this.tokenizer.preprocessor.html.slice(n,r)}_handleToken(e){super._handleToken(e)||this.emitRaw(this._getRawHtml(e.location)),this.parserFeedbackSimulator.skipNextNewLine=!1}_emitToken(e,t){this.emit(e,t,this._getRawHtml(t.sourceCodeLocation))}emitDoctype(e){let t="<!DOCTYPE "+e.name;null!==e.publicId?t+=` PUBLIC "${e.publicId}"`:null!==e.systemId&&(t+=" SYSTEM"),null!==e.systemId&&(t+=` "${e.systemId}"`),t+=">",this.push(t)}emitStartTag(e){let t="<"+e.tagName;const n=e.attrs;for(let e=0;e<n.length;e++)t+=` ${n[e].name}="${i(n[e].value,!0)}"`;t+=e.selfClosing?"/>":">",this.push(t)}emitEndTag(e){this.push(`</${e.tagName}>`)}emitText({text:e}){this.push(i(e,!1))}emitComment(e){this.push(`\x3c!--${e.text}--\x3e`)}emitRaw(e){this.push(e)}}},function(e,t,n){e.exports=n(77).BrotliDecompressBuffer},function(e,t,n){"use strict";var r=n(167),i=n(11),s=n(88),o=n(170),a=n(49),u=n(89),l=n(171),c=Object.prototype.toString;function h(e){if(!(this instanceof h))return new h(e);this.options=i.assign({chunkSize:16384,windowBits:0,to:""},e||{});var t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(t.windowBits>=0&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&0==(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new u,this.strm.avail_out=0;var n=r.inflateInit2(this.strm,t.windowBits);if(n!==o.Z_OK)throw new Error(a[n]);if(this.header=new l,r.inflateGetHeader(this.strm,this.header),t.dictionary&&("string"==typeof t.dictionary?t.dictionary=s.string2buf(t.dictionary):"[object ArrayBuffer]"===c.call(t.dictionary)&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(n=r.inflateSetDictionary(this.strm,t.dictionary))!==o.Z_OK))throw new Error(a[n])}function d(e,t){var n=new h(t);if(n.push(e,!0),n.err)throw n.msg||a[n.err];return n.result}h.prototype.push=function(e,t){var n,a,u,l,h,d=this.strm,p=this.options.chunkSize,f=this.options.dictionary,m=!1;if(this.ended)return!1;a=t===~~t?t:!0===t?o.Z_FINISH:o.Z_NO_FLUSH,"string"==typeof e?d.input=s.binstring2buf(e):"[object ArrayBuffer]"===c.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(p),d.next_out=0,d.avail_out=p),(n=r.inflate(d,o.Z_NO_FLUSH))===o.Z_NEED_DICT&&f&&(n=r.inflateSetDictionary(this.strm,f)),n===o.Z_BUF_ERROR&&!0===m&&(n=o.Z_OK,m=!1),n!==o.Z_STREAM_END&&n!==o.Z_OK)return this.onEnd(n),this.ended=!0,!1;d.next_out&&(0!==d.avail_out&&n!==o.Z_STREAM_END&&(0!==d.avail_in||a!==o.Z_FINISH&&a!==o.Z_SYNC_FLUSH)||("string"===this.options.to?(u=s.utf8border(d.output,d.next_out),l=d.next_out-u,h=s.buf2string(d.output,u),d.next_out=l,d.avail_out=p-l,l&&i.arraySet(d.output,d.output,u,l,0),this.onData(h)):this.onData(i.shrinkBuf(d.output,d.next_out)))),0===d.avail_in&&0===d.avail_out&&(m=!0)}while((d.avail_in>0||0===d.avail_out)&&n!==o.Z_STREAM_END);return n===o.Z_STREAM_END&&(a=o.Z_FINISH),a===o.Z_FINISH?(n=r.inflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===o.Z_OK):a!==o.Z_SYNC_FLUSH||(this.onEnd(o.Z_OK),d.avail_out=0,!0)},h.prototype.onData=function(e){this.chunks.push(e)},h.prototype.onEnd=function(e){e===o.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},t.Inflate=h,t.inflate=d,t.inflateRaw=function(e,t){return(t=t||{}).raw=!0,d(e,t)},t.ungzip=d},function(e,t,n){"use strict";!function(){var t,r,i,s=0,o=[];for(r=0;r<256;r++)o[r]=(r+256).toString(16).substr(1);function a(){var e,n=(e=16,(!t||s+e>u.BUFFER_SIZE)&&(s=0,t=u.randomBytes(u.BUFFER_SIZE)),t.slice(s,s+=e));return n[6]=15&n[6]|64,n[8]=63&n[8]|128,n}function u(){var e=a();return o[e[0]]+o[e[1]]+o[e[2]]+o[e[3]]+"-"+o[e[4]]+o[e[5]]+"-"+o[e[6]]+o[e[7]]+"-"+o[e[8]]+o[e[9]]+"-"+o[e[10]]+o[e[11]]+o[e[12]]+o[e[13]]+o[e[14]]+o[e[15]]}u.BUFFER_SIZE=4096,u.bin=a,u.clearBuffer=function(){t=null,s=0},u.test=function(e){return"string"==typeof e&&/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/.test(e)},"undefined"!=typeof crypto?i=crypto:"undefined"!=typeof window&&void 0!==window.msCrypto&&(i=window.msCrypto),i=i||n(172),e.exports=u,u.randomBytes=function(){if(i){if(i.randomBytes)return i.randomBytes;if(i.getRandomValues)return function(e){var t=new Uint8Array(e);return i.getRandomValues(t),t}}return function(e){var t,n=[];for(t=0;t<e;t++)n.push(Math.floor(256*Math.random()));return n}}()}()},function(e,t,n){(function(t,r){var i;
|
||
/*
|
||
* [hi-base32]{@link https://github.com/emn178/hi-base32}
|
||
*
|
||
* @version 0.5.0
|
||
* @author Chen, Yi-Cyuan [emn178@gmail.com]
|
||
* @copyright Chen, Yi-Cyuan 2015-2018
|
||
* @license MIT
|
||
*/!function(){"use strict";var s="object"==typeof window?window:{};!s.HI_BASE32_NO_NODE_JS&&"object"==typeof t&&t.versions&&t.versions.node&&(s=r);var o=!s.HI_BASE32_NO_COMMON_JS&&"object"==typeof e&&e.exports,a=n(173),u="ABCDEFGHIJKLMNOPQRSTUVWXYZ234567".split(""),l={A:0,B:1,C:2,D:3,E:4,F:5,G:6,H:7,I:8,J:9,K:10,L:11,M:12,N:13,O:14,P:15,Q:16,R:17,S:18,T:19,U:20,V:21,W:22,X:23,Y:24,Z:25,2:26,3:27,4:28,5:29,6:30,7:31},c=[0,0,0,0,0,0,0,0],h=function(e,t){t.length>10&&(t="..."+t.substr(-10));var n=new Error("Decoded data is not valid UTF-8. Maybe try base32.decode.asBytes()? Partial data after reading "+e+" bytes: "+t+" <-");throw n.position=e,n},d=function(e){if(!/^[A-Z2-7=]+$/.test(e))throw new Error("Invalid base32 characters");for(var t,n,r,i,s,o,a,u,c=[],h=0,d=(e=e.replace(/=/g,"")).length,p=0,f=d>>3<<3;p<f;)t=l[e.charAt(p++)],n=l[e.charAt(p++)],r=l[e.charAt(p++)],i=l[e.charAt(p++)],s=l[e.charAt(p++)],o=l[e.charAt(p++)],a=l[e.charAt(p++)],u=l[e.charAt(p++)],c[h++]=255&(t<<3|n>>>2),c[h++]=255&(n<<6|r<<1|i>>>4),c[h++]=255&(i<<4|s>>>1),c[h++]=255&(s<<7|o<<2|a>>>3),c[h++]=255&(a<<5|u);var m=d-f;return 2===m?(t=l[e.charAt(p++)],n=l[e.charAt(p++)],c[h++]=255&(t<<3|n>>>2)):4===m?(t=l[e.charAt(p++)],n=l[e.charAt(p++)],r=l[e.charAt(p++)],i=l[e.charAt(p++)],c[h++]=255&(t<<3|n>>>2),c[h++]=255&(n<<6|r<<1|i>>>4)):5===m?(t=l[e.charAt(p++)],n=l[e.charAt(p++)],r=l[e.charAt(p++)],i=l[e.charAt(p++)],s=l[e.charAt(p++)],c[h++]=255&(t<<3|n>>>2),c[h++]=255&(n<<6|r<<1|i>>>4),c[h++]=255&(i<<4|s>>>1)):7===m&&(t=l[e.charAt(p++)],n=l[e.charAt(p++)],r=l[e.charAt(p++)],i=l[e.charAt(p++)],s=l[e.charAt(p++)],o=l[e.charAt(p++)],a=l[e.charAt(p++)],c[h++]=255&(t<<3|n>>>2),c[h++]=255&(n<<6|r<<1|i>>>4),c[h++]=255&(i<<4|s>>>1),c[h++]=255&(s<<7|o<<2|a>>>3)),c},p=function(e,t){if(!t)return function(e){for(var t,n,r="",i=e.length,s=0,o=0;s<i;)if((t=e[s++])<=127)r+=String.fromCharCode(t);else{t>191&&t<=223?(n=31&t,o=1):t<=239?(n=15&t,o=2):t<=247?(n=7&t,o=3):h(s,r);for(var a=0;a<o;++a)((t=e[s++])<128||t>191)&&h(s,r),n<<=6,n+=63&t;n>=55296&&n<=57343&&h(s,r),n>1114111&&h(s,r),n<=65535?r+=String.fromCharCode(n):(n-=65536,r+=String.fromCharCode(55296+(n>>10)),r+=String.fromCharCode(56320+(1023&n)))}return r}(d(e));if(!/^[A-Z2-7=]+$/.test(e))throw new Error("Invalid base32 characters");var n,r,i,s,o,a,u,c,p="",f=e.indexOf("=");-1===f&&(f=e.length);for(var m=0,w=f>>3<<3;m<w;)n=l[e.charAt(m++)],r=l[e.charAt(m++)],i=l[e.charAt(m++)],s=l[e.charAt(m++)],o=l[e.charAt(m++)],a=l[e.charAt(m++)],u=l[e.charAt(m++)],c=l[e.charAt(m++)],p+=String.fromCharCode(255&(n<<3|r>>>2))+String.fromCharCode(255&(r<<6|i<<1|s>>>4))+String.fromCharCode(255&(s<<4|o>>>1))+String.fromCharCode(255&(o<<7|a<<2|u>>>3))+String.fromCharCode(255&(u<<5|c));var g=f-w;return 2===g?(n=l[e.charAt(m++)],r=l[e.charAt(m++)],p+=String.fromCharCode(255&(n<<3|r>>>2))):4===g?(n=l[e.charAt(m++)],r=l[e.charAt(m++)],i=l[e.charAt(m++)],s=l[e.charAt(m++)],p+=String.fromCharCode(255&(n<<3|r>>>2))+String.fromCharCode(255&(r<<6|i<<1|s>>>4))):5===g?(n=l[e.charAt(m++)],r=l[e.charAt(m++)],i=l[e.charAt(m++)],s=l[e.charAt(m++)],o=l[e.charAt(m++)],p+=String.fromCharCode(255&(n<<3|r>>>2))+String.fromCharCode(255&(r<<6|i<<1|s>>>4))+String.fromCharCode(255&(s<<4|o>>>1))):7===g&&(n=l[e.charAt(m++)],r=l[e.charAt(m++)],i=l[e.charAt(m++)],s=l[e.charAt(m++)],o=l[e.charAt(m++)],a=l[e.charAt(m++)],u=l[e.charAt(m++)],p+=String.fromCharCode(255&(n<<3|r>>>2))+String.fromCharCode(255&(r<<6|i<<1|s>>>4))+String.fromCharCode(255&(s<<4|o>>>1))+String.fromCharCode(255&(o<<7|a<<2|u>>>3))),p},f={encode:function(e,t){var n="string"!=typeof e;return n&&e.constructor===ArrayBuffer&&(e=new Uint8Array(e)),n?function(e){for(var t,n,r,i,s,o="",a=e.length,l=0,c=5*parseInt(a/5);l<c;)t=e[l++],n=e[l++],r=e[l++],i=e[l++],s=e[l++],o+=u[t>>>3]+u[31&(t<<2|n>>>6)]+u[n>>>1&31]+u[31&(n<<4|r>>>4)]+u[31&(r<<1|i>>>7)]+u[i>>>2&31]+u[31&(i<<3|s>>>5)]+u[31&s];var h=a-c;return 1===h?(t=e[l],o+=u[t>>>3]+u[t<<2&31]+"======"):2===h?(t=e[l++],n=e[l],o+=u[t>>>3]+u[31&(t<<2|n>>>6)]+u[n>>>1&31]+u[n<<4&31]+"===="):3===h?(t=e[l++],n=e[l++],r=e[l],o+=u[t>>>3]+u[31&(t<<2|n>>>6)]+u[n>>>1&31]+u[31&(n<<4|r>>>4)]+u[r<<1&31]+"==="):4===h&&(t=e[l++],n=e[l++],r=e[l++],i=e[l],o+=u[t>>>3]+u[31&(t<<2|n>>>6)]+u[n>>>1&31]+u[31&(n<<4|r>>>4)]+u[31&(r<<1|i>>>7)]+u[i>>>2&31]+u[i<<3&31]+"="),o}(e):t?function(e){for(var t,n,r,i,s,o="",a=e.length,l=0,c=5*parseInt(a/5);l<c;)t=e.charCodeAt(l++),n=e.charCodeAt(l++),r=e.charCodeAt(l++),i=e.charCodeAt(l++),s=e.charCodeAt(l++),o+=u[t>>>3]+u[31&(t<<2|n>>>6)]+u[n>>>1&31]+u[31&(n<<4|r>>>4)]+u[31&(r<<1|i>>>7)]+u[i>>>2&31]+u[31&(i<<3|s>>>5)]+u[31&s];var h=a-c;return 1===h?(t=e.charCodeAt(l),o+=u[t>>>3]+u[t<<2&31]+"======"):2===h?(t=e.charCodeAt(l++),n=e.charCodeAt(l),o+=u[t>>>3]+u[31&(t<<2|n>>>6)]+u[n>>>1&31]+u[n<<4&31]+"===="):3===h?(t=e.charCodeAt(l++),n=e.charCodeAt(l++),r=e.charCodeAt(l),o+=u[t>>>3]+u[31&(t<<2|n>>>6)]+u[n>>>1&31]+u[31&(n<<4|r>>>4)]+u[r<<1&31]+"==="):4===h&&(t=e.charCodeAt(l++),n=e.charCodeAt(l++),r=e.charCodeAt(l++),i=e.charCodeAt(l),o+=u[t>>>3]+u[31&(t<<2|n>>>6)]+u[n>>>1&31]+u[31&(n<<4|r>>>4)]+u[31&(r<<1|i>>>7)]+u[i>>>2&31]+u[i<<3&31]+"="),o}(e):function(e){var t,n,r,i,s,o,a,l=!1,h="",d=0,p=0,f=e.length;do{for(c[0]=c[5],c[1]=c[6],c[2]=c[7],a=p;d<f&&a<5;++d)(o=e.charCodeAt(d))<128?c[a++]=o:o<2048?(c[a++]=192|o>>6,c[a++]=128|63&o):o<55296||o>=57344?(c[a++]=224|o>>12,c[a++]=128|o>>6&63,c[a++]=128|63&o):(o=65536+((1023&o)<<10|1023&e.charCodeAt(++d)),c[a++]=240|o>>18,c[a++]=128|o>>12&63,c[a++]=128|o>>6&63,c[a++]=128|63&o);a-p,p=a-5,d===f&&++d,d>f&&a<6&&(l=!0),t=c[0],a>4?(n=c[1],r=c[2],i=c[3],s=c[4],h+=u[t>>>3]+u[31&(t<<2|n>>>6)]+u[n>>>1&31]+u[31&(n<<4|r>>>4)]+u[31&(r<<1|i>>>7)]+u[i>>>2&31]+u[31&(i<<3|s>>>5)]+u[31&s]):1===a?h+=u[t>>>3]+u[t<<2&31]+"======":2===a?(n=c[1],h+=u[t>>>3]+u[31&(t<<2|n>>>6)]+u[n>>>1&31]+u[n<<4&31]+"===="):3===a?(n=c[1],r=c[2],h+=u[t>>>3]+u[31&(t<<2|n>>>6)]+u[n>>>1&31]+u[31&(n<<4|r>>>4)]+u[r<<1&31]+"==="):(n=c[1],r=c[2],i=c[3],h+=u[t>>>3]+u[31&(t<<2|n>>>6)]+u[n>>>1&31]+u[31&(n<<4|r>>>4)]+u[31&(r<<1|i>>>7)]+u[i>>>2&31]+u[i<<3&31]+"=")}while(!l);return h}(e)},decode:p};p.asBytes=d,o?e.exports=f:(s.base32=f,a&&(void 0===(i=function(){return f}.call(f,n,f,e))||(e.exports=i)))}()}).call(this,n(14),n(6))},function(e,t,n){"use strict";var r=n(174),i=n(11),s=n(88),o=n(49),a=n(89),u=Object.prototype.toString;function l(e){if(!(this instanceof l))return new l(e);this.options=i.assign({level:-1,method:8,chunkSize:16384,windowBits:15,memLevel:8,strategy:0,to:""},e||{});var t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new a,this.strm.avail_out=0;var n=r.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(0!==n)throw new Error(o[n]);if(t.header&&r.deflateSetHeader(this.strm,t.header),t.dictionary){var c;if(c="string"==typeof t.dictionary?s.string2buf(t.dictionary):"[object ArrayBuffer]"===u.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,0!==(n=r.deflateSetDictionary(this.strm,c)))throw new Error(o[n]);this._dict_set=!0}}function c(e,t){var n=new l(t);if(n.push(e,!0),n.err)throw n.msg||o[n.err];return n.result}l.prototype.push=function(e,t){var n,o,a=this.strm,l=this.options.chunkSize;if(this.ended)return!1;o=t===~~t?t:!0===t?4:0,"string"==typeof e?a.input=s.string2buf(e):"[object ArrayBuffer]"===u.call(e)?a.input=new Uint8Array(e):a.input=e,a.next_in=0,a.avail_in=a.input.length;do{if(0===a.avail_out&&(a.output=new i.Buf8(l),a.next_out=0,a.avail_out=l),1!==(n=r.deflate(a,o))&&0!==n)return this.onEnd(n),this.ended=!0,!1;0!==a.avail_out&&(0!==a.avail_in||4!==o&&2!==o)||("string"===this.options.to?this.onData(s.buf2binstring(i.shrinkBuf(a.output,a.next_out))):this.onData(i.shrinkBuf(a.output,a.next_out)))}while((a.avail_in>0||0===a.avail_out)&&1!==n);return 4===o?(n=r.deflateEnd(this.strm),this.onEnd(n),this.ended=!0,0===n):2!==o||(this.onEnd(0),a.avail_out=0,!0)},l.prototype.onData=function(e){this.chunks.push(e)},l.prototype.onEnd=function(e){0===e&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},t.Deflate=l,t.deflate=c,t.deflateRaw=function(e,t){return(t=t||{}).raw=!0,c(e,t)},t.gzip=function(e,t){return(t=t||{}).gzip=!0,c(e,t)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(182);var r=/\\(u\{([0-9A-Fa-f]+)\}|u([0-9A-Fa-f]{4})|x([0-9A-Fa-f]{2})|([1-7][0-7]{0,2}|[0-7]{2,3})|(['"tbrnfv0\\]))|\\U([0-9A-Fa-f]{8})/g,i={0:"\0",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t",v:"\v","'":"'",'"':'"',"\\":"\\"},s=function(e){return String.fromCodePoint(parseInt(e,16))};t.default=function(e){return e.replace(r,(function(e,t,n,r,o,a,u,l){return void 0!==n?s(n):void 0!==r?s(r):void 0!==o?s(o):void 0!==a?(c=a,String.fromCodePoint(parseInt(c,8))):void 0!==l?s(l):i[u];var c}))},e.exports=t.default},function(e,t,n){"use strict";e.exports=function(){function e(e,t,n,r,i){return e<t||n<t?e>n?n+1:e+1:r===i?t:t+1}return function(t,n){if(t===n)return 0;if(t.length>n.length){var r=t;t=n,n=r}for(var i=t.length,s=n.length;i>0&&t.charCodeAt(i-1)===n.charCodeAt(s-1);)i--,s--;for(var o=0;o<i&&t.charCodeAt(o)===n.charCodeAt(o);)o++;if(s-=o,0===(i-=o)||s<3)return s;var a,u,l,c,h,d,p,f,m,w,g,_,b=0,y=[];for(a=0;a<i;a++)y.push(a+1),y.push(t.charCodeAt(o+a));for(var v=y.length-1;b<s-3;)for(m=n.charCodeAt(o+(u=b)),w=n.charCodeAt(o+(l=b+1)),g=n.charCodeAt(o+(c=b+2)),_=n.charCodeAt(o+(h=b+3)),d=b+=4,a=0;a<v;a+=2)u=e(p=y[a],u,l,m,f=y[a+1]),l=e(u,l,c,w,f),c=e(l,c,h,g,f),d=e(c,h,d,_,f),y[a]=d,h=c,c=l,l=u,u=p;for(;b<s;)for(m=n.charCodeAt(o+(u=b)),d=++b,a=0;a<v;a+=2)p=y[a],y[a]=d=e(p,u,d,m,y[a+1]),u=p;return d}}()},function(e,t,n){"use strict";(function(e){n.d(t,"a",(function(){return s}));var r=n(123),i=n(20);class s extends i.a{constructor(t){super(),this.bundle=new r.Bundle(e.from(t))}async load(e){this.db=e;const t=this.bundle.primaryURL,n=new Date,r=n.getTime(),i=t;this.addPage({url:t,date:n.toISOString(),title:i});for(const e of this.bundle.urls){const t=this.bundle.getResponse(e);this.addResource({url:e,ts:r,status:t.status,respHeaders:t.headers,payload:t.body})}return await this.finishIndexing(),{}}}}).call(this,n(3).Buffer)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(208);t.Bundle=r.Bundle,t.Response=r.Response;var i=n(221);t.BundleBuilder=i.BundleBuilder},function(e,t,n){(function(t,n,r){e.exports=function e(t,n,r){function i(o,a){if(!n[o]){if(!t[o]){if(s)return s(o,!0);var u=new Error("Cannot find module '"+o+"'");throw u.code="MODULE_NOT_FOUND",u}var l=n[o]={exports:{}};t[o][0].call(l.exports,(function(e){return i(t[o][1][e]||e)}),l,l.exports,e,t,n,r)}return n[o].exports}for(var s=!1,o=0;o<r.length;o++)i(r[o]);return i}({1:[function(e,t,n){"use strict";var r=e("./utils"),i=e("./support"),s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";n.encode=function(e){for(var t,n,i,o,a,u,l,c=[],h=0,d=e.length,p=d,f="string"!==r.getTypeOf(e);h<e.length;)p=d-h,i=f?(t=e[h++],n=h<d?e[h++]:0,h<d?e[h++]:0):(t=e.charCodeAt(h++),n=h<d?e.charCodeAt(h++):0,h<d?e.charCodeAt(h++):0),o=t>>2,a=(3&t)<<4|n>>4,u=1<p?(15&n)<<2|i>>6:64,l=2<p?63&i:64,c.push(s.charAt(o)+s.charAt(a)+s.charAt(u)+s.charAt(l));return c.join("")},n.decode=function(e){var t,n,r,o,a,u,l=0,c=0,h="data:";if(e.substr(0,h.length)===h)throw new Error("Invalid base64 input, it looks like a data url.");var d,p=3*(e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"")).length/4;if(e.charAt(e.length-1)===s.charAt(64)&&p--,e.charAt(e.length-2)===s.charAt(64)&&p--,p%1!=0)throw new Error("Invalid base64 input, bad content length.");for(d=i.uint8array?new Uint8Array(0|p):new Array(0|p);l<e.length;)t=s.indexOf(e.charAt(l++))<<2|(o=s.indexOf(e.charAt(l++)))>>4,n=(15&o)<<4|(a=s.indexOf(e.charAt(l++)))>>2,r=(3&a)<<6|(u=s.indexOf(e.charAt(l++))),d[c++]=t,64!==a&&(d[c++]=n),64!==u&&(d[c++]=r);return d}},{"./support":30,"./utils":32}],2:[function(e,t,n){"use strict";var r=e("./external"),i=e("./stream/DataWorker"),s=e("./stream/DataLengthProbe"),o=e("./stream/Crc32Probe");function a(e,t,n,r,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=n,this.compression=r,this.compressedContent=i}s=e("./stream/DataLengthProbe"),a.prototype={getContentWorker:function(){var e=new i(r.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(r.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},a.createWorkerFrom=function(e,t,n){return e.pipe(new o).pipe(new s("uncompressedSize")).pipe(t.compressWorker(n)).pipe(new s("compressedSize")).withStreamInfo("compression",t)},t.exports=a},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,n){"use strict";var r=e("./stream/GenericWorker");n.STORE={magic:"\0\0",compressWorker:function(e){return new r("STORE compression")},uncompressWorker:function(){return new r("STORE decompression")}},n.DEFLATE=e("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,n){"use strict";var r=e("./utils"),i=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();t.exports=function(e,t){return void 0!==e&&e.length?"string"!==r.getTypeOf(e)?function(e,t,n,r){var s=i,o=0+n;e^=-1;for(var a=0;a<o;a++)e=e>>>8^s[255&(e^t[a])];return-1^e}(0|t,e,e.length):function(e,t,n,r){var s=i,o=0+n;e^=-1;for(var a=0;a<o;a++)e=e>>>8^s[255&(e^t.charCodeAt(a))];return-1^e}(0|t,e,e.length):0}},{"./utils":32}],5:[function(e,t,n){"use strict";n.base64=!1,n.binary=!1,n.dir=!1,n.createFolders=!0,n.date=null,n.compression=null,n.compressionOptions=null,n.comment=null,n.unixPermissions=null,n.dosPermissions=null},{}],6:[function(e,t,n){"use strict";var r;r="undefined"!=typeof Promise?Promise:e("lie"),t.exports={Promise:r}},{lie:37}],7:[function(e,t,n){"use strict";var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,i=e("pako"),s=e("./utils"),o=e("./stream/GenericWorker"),a=r?"uint8array":"array";function u(e,t){o.call(this,"FlateWorker/"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}n.magic="\b\0",s.inherits(u,o),u.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(s.transformTo(a,e.data),!1)},u.prototype.flush=function(){o.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},u.prototype.cleanUp=function(){o.prototype.cleanUp.call(this),this._pako=null},u.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})}},n.compressWorker=function(e){return new u("Deflate",e)},n.uncompressWorker=function(){return new u("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,n){"use strict";function r(e,t){var n,r="";for(n=0;n<t;n++)r+=String.fromCharCode(255&e),e>>>=8;return r}function i(e,t,n,i,o,c){var h,d,p=e.file,f=e.compression,m=c!==a.utf8encode,w=s.transformTo("string",c(p.name)),g=s.transformTo("string",a.utf8encode(p.name)),_=p.comment,b=s.transformTo("string",c(_)),y=s.transformTo("string",a.utf8encode(_)),v=g.length!==p.name.length,E=y.length!==_.length,A="",x="",T="",S=p.dir,C=p.date,k={crc32:0,compressedSize:0,uncompressedSize:0};t&&!n||(k.crc32=e.crc32,k.compressedSize=e.compressedSize,k.uncompressedSize=e.uncompressedSize);var D=0;t&&(D|=8),m||!v&&!E||(D|=2048);var R=0,O=0;S&&(R|=16),"UNIX"===o?(O=798,R|=function(e,t){var n=e;return e||(n=t?16893:33204),(65535&n)<<16}(p.unixPermissions,S)):(O=20,R|=function(e){return 63&(e||0)}(p.dosPermissions)),h=C.getUTCHours(),h<<=6,h|=C.getUTCMinutes(),h<<=5,h|=C.getUTCSeconds()/2,d=C.getUTCFullYear()-1980,d<<=4,d|=C.getUTCMonth()+1,d<<=5,d|=C.getUTCDate(),v&&(x=r(1,1)+r(u(w),4)+g,A+="up"+r(x.length,2)+x),E&&(T=r(1,1)+r(u(b),4)+y,A+="uc"+r(T.length,2)+T);var I="";return I+="\n\0",I+=r(D,2),I+=f.magic,I+=r(h,2),I+=r(d,2),I+=r(k.crc32,4),I+=r(k.compressedSize,4),I+=r(k.uncompressedSize,4),I+=r(w.length,2),I+=r(A.length,2),{fileRecord:l.LOCAL_FILE_HEADER+I+w+A,dirRecord:l.CENTRAL_FILE_HEADER+r(O,2)+I+r(b.length,2)+"\0\0\0\0"+r(R,4)+r(i,4)+w+A+b}}var s=e("../utils"),o=e("../stream/GenericWorker"),a=e("../utf8"),u=e("../crc32"),l=e("../signature");function c(e,t,n,r){o.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=n,this.encodeFileName=r,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}s.inherits(c,o),c.prototype.push=function(e){var t=e.meta.percent||0,n=this.entriesCount,r=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,o.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:n?(t+100*(n-r-1))/n:100}}))},c.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var n=i(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:n.fileRecord,meta:{percent:0}})}else this.accumulate=!0},c.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,n=i(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(n.dirRecord),t)this.push({data:function(e){return l.DATA_DESCRIPTOR+r(e.crc32,4)+r(e.compressedSize,4)+r(e.uncompressedSize,4)}(e),meta:{percent:100}});else for(this.push({data:n.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},c.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t<this.dirRecords.length;t++)this.push({data:this.dirRecords[t],meta:{percent:100}});var n=this.bytesWritten-e,i=function(e,t,n,i,o){var a=s.transformTo("string",o(i));return l.CENTRAL_DIRECTORY_END+"\0\0\0\0"+r(e,2)+r(e,2)+r(t,4)+r(n,4)+r(a.length,2)+a}(this.dirRecords.length,n,e,this.zipComment,this.encodeFileName);this.push({data:i,meta:{percent:100}})},c.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},c.prototype.registerPrevious=function(e){this._sources.push(e);var t=this;return e.on("data",(function(e){t.processChunk(e)})),e.on("end",(function(){t.closedSource(t.previous.streamInfo),t._sources.length?t.prepareNextSource():t.end()})),e.on("error",(function(e){t.error(e)})),this},c.prototype.resume=function(){return!!o.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},c.prototype.error=function(e){var t=this._sources;if(!o.prototype.error.call(this,e))return!1;for(var n=0;n<t.length;n++)try{t[n].error(e)}catch(e){}return!0},c.prototype.lock=function(){o.prototype.lock.call(this);for(var e=this._sources,t=0;t<e.length;t++)e[t].lock()},t.exports=c},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(e,t,n){"use strict";var r=e("../compressions"),i=e("./ZipFileWorker");n.generateWorker=function(e,t,n){var s=new i(t.streamFiles,n,t.platform,t.encodeFileName),o=0;try{e.forEach((function(e,n){o++;var i=function(e,t){var n=e||t,i=r[n];if(!i)throw new Error(n+" is not a valid compression method !");return i}(n.options.compression,t.compression),a=n.options.compressionOptions||t.compressionOptions||{},u=n.dir,l=n.date;n._compressWorker(i,a).withStreamInfo("file",{name:e,dir:u,date:l,comment:n.comment||"",unixPermissions:n.unixPermissions,dosPermissions:n.dosPermissions}).pipe(s)})),s.entriesCount=o}catch(e){s.error(e)}return s}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(e,t,n){"use strict";function r(){if(!(this instanceof r))return new r;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files={},this.comment=null,this.root="",this.clone=function(){var e=new r;for(var t in this)"function"!=typeof this[t]&&(e[t]=this[t]);return e}}(r.prototype=e("./object")).loadAsync=e("./load"),r.support=e("./support"),r.defaults=e("./defaults"),r.version="3.4.0",r.loadAsync=function(e,t){return(new r).loadAsync(e,t)},r.external=e("./external"),t.exports=r},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(e,t,n){"use strict";var r=e("./utils"),i=e("./external"),s=e("./utf8"),o=(r=e("./utils"),e("./zipEntries")),a=e("./stream/Crc32Probe"),u=e("./nodejsUtils");function l(e){return new i.Promise((function(t,n){var r=e.decompressed.getContentWorker().pipe(new a);r.on("error",(function(e){n(e)})).on("end",(function(){r.streamInfo.crc32!==e.decompressed.crc32?n(new Error("Corrupted zip : CRC32 mismatch")):t()})).resume()}))}t.exports=function(e,t){var n=this;return t=r.extend(t||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:s.utf8decode}),u.isNode&&u.isStream(e)?i.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):r.prepareContent("the loaded zip file",e,!0,t.optimizedBinaryString,t.base64).then((function(e){var n=new o(t);return n.load(e),n})).then((function(e){var n=[i.Promise.resolve(e)],r=e.files;if(t.checkCRC32)for(var s=0;s<r.length;s++)n.push(l(r[s]));return i.Promise.all(n)})).then((function(e){for(var r=e.shift(),i=r.files,s=0;s<i.length;s++){var o=i[s];n.file(o.fileNameStr,o.decompressed,{binary:!0,optimizedBinaryString:!0,date:o.date,dir:o.dir,comment:o.fileCommentStr.length?o.fileCommentStr:null,unixPermissions:o.unixPermissions,dosPermissions:o.dosPermissions,createFolders:t.createFolders})}return r.zipComment.length&&(n.comment=r.zipComment),n}))}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(e,t,n){"use strict";var r=e("../utils"),i=e("../stream/GenericWorker");function s(e,t){i.call(this,"Nodejs stream input adapter for "+e),this._upstreamEnded=!1,this._bindStream(t)}r.inherits(s,i),s.prototype._bindStream=function(e){var t=this;(this._stream=e).pause(),e.on("data",(function(e){t.push({data:e,meta:{percent:0}})})).on("error",(function(e){t.isPaused?this.generatedError=e:t.error(e)})).on("end",(function(){t.isPaused?t._upstreamEnded=!0:t.end()}))},s.prototype.pause=function(){return!!i.prototype.pause.call(this)&&(this._stream.pause(),!0)},s.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},t.exports=s},{"../stream/GenericWorker":28,"../utils":32}],13:[function(e,t,n){"use strict";var r=e("readable-stream").Readable;function i(e,t,n){r.call(this,t),this._helper=e;var i=this;e.on("data",(function(e,t){i.push(e)||i._helper.pause(),n&&n(t)})).on("error",(function(e){i.emit("error",e)})).on("end",(function(){i.push(null)}))}e("../utils").inherits(i,r),i.prototype._read=function(){this._helper.resume()},t.exports=i},{"../utils":32,"readable-stream":16}],14:[function(e,n,r){"use strict";n.exports={isNode:void 0!==t,newBufferFrom:function(e,n){if(t.from&&t.from!==Uint8Array.from)return t.from(e,n);if("number"==typeof e)throw new Error('The "data" argument must not be a number');return new t(e,n)},allocBuffer:function(e){if(t.alloc)return t.alloc(e);var n=new t(e);return n.fill(0),n},isBuffer:function(e){return t.isBuffer(e)},isStream:function(e){return e&&"function"==typeof e.on&&"function"==typeof e.pause&&"function"==typeof e.resume}}},{}],15:[function(e,t,n){"use strict";function r(e,t,n){var r,i=s.getTypeOf(t),a=s.extend(n||{},u);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&&(r=f(e))&&w.call(this,r,!0);var h,g="string"===i&&!1===a.binary&&!1===a.base64;n&&void 0!==n.binary||(a.binary=!g),(t instanceof l&&0===t.uncompressedSize||a.dir||!t||0===t.length)&&(a.base64=!1,a.binary=!0,t="",a.compression="STORE",i="string"),h=t instanceof l||t instanceof o?t:d.isNode&&d.isStream(t)?new p(e,t):s.prepareContent(e,t,a.binary,a.optimizedBinaryString,a.base64);var _=new c(e,h,a);this.files[e]=_}var i=e("./utf8"),s=e("./utils"),o=e("./stream/GenericWorker"),a=e("./stream/StreamHelper"),u=e("./defaults"),l=e("./compressedObject"),c=e("./zipObject"),h=e("./generate"),d=e("./nodejsUtils"),p=e("./nodejs/NodejsStreamInputAdapter"),f=function(e){"/"===e.slice(-1)&&(e=e.substring(0,e.length-1));var t=e.lastIndexOf("/");return 0<t?e.substring(0,t):""},m=function(e){return"/"!==e.slice(-1)&&(e+="/"),e},w=function(e,t){return t=void 0!==t?t:u.createFolders,e=m(e),this.files[e]||r.call(this,e,null,{dir:!0,createFolders:t}),this.files[e]};function g(e){return"[object RegExp]"===Object.prototype.toString.call(e)}var _={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(e){var t,n,r;for(t in this.files)this.files.hasOwnProperty(t)&&(r=this.files[t],(n=t.slice(this.root.length,t.length))&&t.slice(0,this.root.length)===this.root&&e(n,r))},filter:function(e){var t=[];return this.forEach((function(n,r){e(n,r)&&t.push(r)})),t},file:function(e,t,n){if(1!==arguments.length)return e=this.root+e,r.call(this,e,t,n),this;if(g(e)){var i=e;return this.filter((function(e,t){return!t.dir&&i.test(e)}))}var s=this.files[this.root+e];return s&&!s.dir?s:null},folder:function(e){if(!e)return this;if(g(e))return this.filter((function(t,n){return n.dir&&e.test(t)}));var t=this.root+e,n=w.call(this,t),r=this.clone();return r.root=n.name,r},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 n=this.filter((function(t,n){return n.name.slice(0,e.length)===e})),r=0;r<n.length;r++)delete this.files[n[r].name];return this},generate:function(e){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(e){var t,n={};try{if((n=s.extend(e||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:i.utf8encode})).type=n.type.toLowerCase(),n.compression=n.compression.toUpperCase(),"binarystring"===n.type&&(n.type="string"),!n.type)throw new Error("No output type specified.");s.checkSupport(n.type),"darwin"!==n.platform&&"freebsd"!==n.platform&&"linux"!==n.platform&&"sunos"!==n.platform||(n.platform="UNIX"),"win32"===n.platform&&(n.platform="DOS");var r=n.comment||this.comment||"";t=h.generateWorker(this,n,r)}catch(e){(t=new o("error")).error(e)}return new a(t,n.type||"string",n.mimeType)},generateAsync:function(e,t){return this.generateInternalStream(e).accumulate(t)},generateNodeStream:function(e,t){return(e=e||{}).type||(e.type="nodebuffer"),this.generateInternalStream(e).toNodejsStream(t)}};t.exports=_},{"./compressedObject":2,"./defaults":5,"./generate":9,"./nodejs/NodejsStreamInputAdapter":12,"./nodejsUtils":14,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31,"./utils":32,"./zipObject":35}],16:[function(e,t,n){t.exports=e("stream")},{stream:void 0}],17:[function(e,t,n){"use strict";var r=e("./DataReader");function i(e){r.call(this,e);for(var t=0;t<this.data.length;t++)e[t]=255&e[t]}e("../utils").inherits(i,r),i.prototype.byteAt=function(e){return this.data[this.zero+e]},i.prototype.lastIndexOfSignature=function(e){for(var t=e.charCodeAt(0),n=e.charCodeAt(1),r=e.charCodeAt(2),i=e.charCodeAt(3),s=this.length-4;0<=s;--s)if(this.data[s]===t&&this.data[s+1]===n&&this.data[s+2]===r&&this.data[s+3]===i)return s-this.zero;return-1},i.prototype.readAndCheckSignature=function(e){var t=e.charCodeAt(0),n=e.charCodeAt(1),r=e.charCodeAt(2),i=e.charCodeAt(3),s=this.readData(4);return t===s[0]&&n===s[1]&&r===s[2]&&i===s[3]},i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return[];var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./DataReader":18}],18:[function(e,t,n){"use strict";var r=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(e){},readInt:function(e){var t,n=0;for(this.checkOffset(e),t=this.index+e-1;t>=this.index;t--)n=(n<<8)+this.byteAt(t);return this.index+=e,n},readString:function(e){return r.transformTo("string",this.readData(e))},readData:function(e){},lastIndexOfSignature:function(e){},readAndCheckSignature:function(e){},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,n){"use strict";var r=e("./Uint8ArrayReader");function i(e){r.call(this,e)}e("../utils").inherits(i,r),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,n){"use strict";var r=e("./DataReader");function i(e){r.call(this,e)}e("../utils").inherits(i,r),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,n){"use strict";var r=e("./ArrayReader");function i(e){r.call(this,e)}e("../utils").inherits(i,r),i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return new Uint8Array(0);var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./ArrayReader":17}],22:[function(e,t,n){"use strict";var r=e("../utils"),i=e("../support"),s=e("./ArrayReader"),o=e("./StringReader"),a=e("./NodeBufferReader"),u=e("./Uint8ArrayReader");t.exports=function(e){var t=r.getTypeOf(e);return r.checkSupport(t),"string"!==t||i.uint8array?"nodebuffer"===t?new a(e):i.uint8array?new u(r.transformTo("uint8array",e)):new s(r.transformTo("array",e)):new o(e)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(e,t,n){"use strict";n.LOCAL_FILE_HEADER="PK",n.CENTRAL_FILE_HEADER="PK",n.CENTRAL_DIRECTORY_END="PK",n.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",n.ZIP64_CENTRAL_DIRECTORY_END="PK",n.DATA_DESCRIPTOR="PK\b"},{}],24:[function(e,t,n){"use strict";var r=e("./GenericWorker"),i=e("../utils");function s(e){r.call(this,"ConvertWorker to "+e),this.destType=e}i.inherits(s,r),s.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},t.exports=s},{"../utils":32,"./GenericWorker":28}],25:[function(e,t,n){"use strict";var r=e("./GenericWorker"),i=e("../crc32");function s(){r.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}e("../utils").inherits(s,r),s.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},t.exports=s},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(e,t,n){"use strict";var r=e("../utils"),i=e("./GenericWorker");function s(e){i.call(this,"DataLengthProbe for "+e),this.propName=e,this.withStreamInfo(e,0)}r.inherits(s,i),s.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}i.prototype.processChunk.call(this,e)},t.exports=s},{"../utils":32,"./GenericWorker":28}],27:[function(e,t,n){"use strict";var r=e("../utils"),i=e("./GenericWorker");function s(e){i.call(this,"DataWorker");var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,e.then((function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=r.getTypeOf(e),t.isPaused||t._tickAndRepeat()}),(function(e){t.error(e)}))}r.inherits(s,i),s.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},s.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,r.delay(this._tickAndRepeat,[],this)),!0)},s.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(r.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},s.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":e=this.data.substring(this.index,t);break;case"uint8array":e=this.data.subarray(this.index,t);break;case"array":case"nodebuffer":e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=s},{"../utils":32,"./GenericWorker":28}],28:[function(e,t,n){"use strict";function r(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}r.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 n=0;n<this._listeners[e].length;n++)this._listeners[e][n].call(this,t)},pipe:function(e){return e.registerPrevious(this)},registerPrevious:function(e){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=e.streamInfo,this.mergeStreamInfo(),this.previous=e;var t=this;return e.on("data",(function(e){t.processChunk(e)})),e.on("end",(function(){t.end()})),e.on("error",(function(e){t.error(e)})),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;var e=this.isPaused=!1;return this.generatedError&&(this.error(this.generatedError),e=!0),this.previous&&this.previous.resume(),!e},flush:function(){},processChunk:function(e){this.push(e)},withStreamInfo:function(e,t){return this.extraStreamInfo[e]=t,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var e in this.extraStreamInfo)this.extraStreamInfo.hasOwnProperty(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=r},{}],29:[function(e,n,r){"use strict";var i=e("../utils"),s=e("./ConvertWorker"),o=e("./GenericWorker"),a=e("../base64"),u=e("../support"),l=e("../external"),c=null;if(u.nodestream)try{c=e("../nodejs/NodejsStreamOutputAdapter")}catch(e){}function h(e,t,n){var r=t;switch(t){case"blob":case"arraybuffer":r="uint8array";break;case"base64":r="string"}try{this._internalType=r,this._outputType=t,this._mimeType=n,i.checkSupport(r),this._worker=e.pipe(new s(r)),e.lock()}catch(e){this._worker=new o("error"),this._worker.error(e)}}h.prototype={accumulate:function(e){return function(e,n){return new l.Promise((function(r,s){var o=[],u=e._internalType,l=e._outputType,c=e._mimeType;e.on("data",(function(e,t){o.push(e),n&&n(t)})).on("error",(function(e){o=[],s(e)})).on("end",(function(){try{var e=function(e,t,n){switch(e){case"blob":return i.newBlob(i.transformTo("arraybuffer",t),n);case"base64":return a.encode(t);default:return i.transformTo(e,t)}}(l,function(e,n){var r,i=0,s=null,o=0;for(r=0;r<n.length;r++)o+=n[r].length;switch(e){case"string":return n.join("");case"array":return Array.prototype.concat.apply([],n);case"uint8array":for(s=new Uint8Array(o),r=0;r<n.length;r++)s.set(n[r],i),i+=n[r].length;return s;case"nodebuffer":return t.concat(n);default:throw new Error("concat : unsupported type '"+e+"'")}}(u,o),c);r(e)}catch(e){s(e)}o=[]})).resume()}))}(this,e)},on:function(e,t){var n=this;return"data"===e?this._worker.on(e,(function(e){t.call(n,e.data,e.meta)})):this._worker.on(e,(function(){i.delay(t,arguments,n)})),this},resume:function(){return i.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(e){if(i.checkSupport("nodestream"),"nodebuffer"!==this._outputType)throw new Error(this._outputType+" is not supported by this method");return new c(this,{objectMode:"nodebuffer"!==this._outputType},e)}},n.exports=h},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(e,n,r){"use strict";if(r.base64=!0,r.array=!0,r.string=!0,r.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,r.nodebuffer=void 0!==t,r.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)r.blob=!1;else{var i=new ArrayBuffer(0);try{r.blob=0===new Blob([i],{type:"application/zip"}).size}catch(e){try{var s=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);s.append(i),r.blob=0===s.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,n){"use strict";for(var r=e("./utils"),i=e("./support"),s=e("./nodejsUtils"),o=e("./stream/GenericWorker"),a=new Array(256),u=0;u<256;u++)a[u]=252<=u?6:248<=u?5:240<=u?4:224<=u?3:192<=u?2:1;function l(){o.call(this,"utf-8 decode"),this.leftOver=null}function c(){o.call(this,"utf-8 encode")}a[254]=a[254]=1,n.utf8encode=function(e){return i.nodebuffer?s.newBufferFrom(e,"utf-8"):function(e){var t,n,r,s,o,a=e.length,u=0;for(s=0;s<a;s++)55296==(64512&(n=e.charCodeAt(s)))&&s+1<a&&56320==(64512&(r=e.charCodeAt(s+1)))&&(n=65536+(n-55296<<10)+(r-56320),s++),u+=n<128?1:n<2048?2:n<65536?3:4;for(t=i.uint8array?new Uint8Array(u):new Array(u),s=o=0;o<u;s++)55296==(64512&(n=e.charCodeAt(s)))&&s+1<a&&56320==(64512&(r=e.charCodeAt(s+1)))&&(n=65536+(n-55296<<10)+(r-56320),s++),n<128?t[o++]=n:(n<2048?t[o++]=192|n>>>6:(n<65536?t[o++]=224|n>>>12:(t[o++]=240|n>>>18,t[o++]=128|n>>>12&63),t[o++]=128|n>>>6&63),t[o++]=128|63&n);return t}(e)},n.utf8decode=function(e){return i.nodebuffer?r.transformTo("nodebuffer",e).toString("utf-8"):function(e){var t,n,i,s,o=e.length,u=new Array(2*o);for(t=n=0;t<o;)if((i=e[t++])<128)u[n++]=i;else if(4<(s=a[i]))u[n++]=65533,t+=s-1;else{for(i&=2===s?31:3===s?15:7;1<s&&t<o;)i=i<<6|63&e[t++],s--;1<s?u[n++]=65533:i<65536?u[n++]=i:(i-=65536,u[n++]=55296|i>>10&1023,u[n++]=56320|1023&i)}return u.length!==n&&(u.subarray?u=u.subarray(0,n):u.length=n),r.applyFromCharCode(u)}(e=r.transformTo(i.uint8array?"uint8array":"array",e))},r.inherits(l,o),l.prototype.processChunk=function(e){var t=r.transformTo(i.uint8array?"uint8array":"array",e.data);if(this.leftOver&&this.leftOver.length){if(i.uint8array){var s=t;(t=new Uint8Array(s.length+this.leftOver.length)).set(this.leftOver,0),t.set(s,this.leftOver.length)}else t=this.leftOver.concat(t);this.leftOver=null}var o=function(e,t){var n;for((t=t||e.length)>e.length&&(t=e.length),n=t-1;0<=n&&128==(192&e[n]);)n--;return n<0||0===n?t:n+a[e[n]]>t?n:t}(t),u=t;o!==t.length&&(i.uint8array?(u=t.subarray(0,o),this.leftOver=t.subarray(o,t.length)):(u=t.slice(0,o),this.leftOver=t.slice(o,t.length))),this.push({data:n.utf8decode(u),meta:e.meta})},l.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:n.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},n.Utf8DecodeWorker=l,r.inherits(c,o),c.prototype.processChunk=function(e){this.push({data:n.utf8encode(e.data),meta:e.meta})},n.Utf8EncodeWorker=c},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,n){"use strict";var r=e("./support"),i=e("./base64"),s=e("./nodejsUtils"),o=e("set-immediate-shim"),a=e("./external");function u(e){return e}function l(e,t){for(var n=0;n<e.length;++n)t[n]=255&e.charCodeAt(n);return t}n.newBlob=function(e,t){n.checkSupport("blob");try{return new Blob([e],{type:t})}catch(n){try{var r=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return r.append(e),r.getBlob(t)}catch(e){throw new Error("Bug : can't construct the Blob.")}}};var c={stringifyByChunk:function(e,t,n){var r=[],i=0,s=e.length;if(s<=n)return String.fromCharCode.apply(null,e);for(;i<s;)"array"===t||"nodebuffer"===t?r.push(String.fromCharCode.apply(null,e.slice(i,Math.min(i+n,s)))):r.push(String.fromCharCode.apply(null,e.subarray(i,Math.min(i+n,s)))),i+=n;return r.join("")},stringifyByChar:function(e){for(var t="",n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return t},applyCanBeUsed:{uint8array:function(){try{return r.uint8array&&1===String.fromCharCode.apply(null,new Uint8Array(1)).length}catch(e){return!1}}(),nodebuffer:function(){try{return r.nodebuffer&&1===String.fromCharCode.apply(null,s.allocBuffer(1)).length}catch(e){return!1}}()}};function h(e){var t=65536,r=n.getTypeOf(e),i=!0;if("uint8array"===r?i=c.applyCanBeUsed.uint8array:"nodebuffer"===r&&(i=c.applyCanBeUsed.nodebuffer),i)for(;1<t;)try{return c.stringifyByChunk(e,r,t)}catch(e){t=Math.floor(t/2)}return c.stringifyByChar(e)}function d(e,t){for(var n=0;n<e.length;n++)t[n]=e[n];return t}n.applyFromCharCode=h;var p={};p.string={string:u,array:function(e){return l(e,new Array(e.length))},arraybuffer:function(e){return p.string.uint8array(e).buffer},uint8array:function(e){return l(e,new Uint8Array(e.length))},nodebuffer:function(e){return l(e,s.allocBuffer(e.length))}},p.array={string:h,array:u,arraybuffer:function(e){return new Uint8Array(e).buffer},uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return s.newBufferFrom(e)}},p.arraybuffer={string:function(e){return h(new Uint8Array(e))},array:function(e){return d(new Uint8Array(e),new Array(e.byteLength))},arraybuffer:u,uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return s.newBufferFrom(new Uint8Array(e))}},p.uint8array={string:h,array:function(e){return d(e,new Array(e.length))},arraybuffer:function(e){return e.buffer},uint8array:u,nodebuffer:function(e){return s.newBufferFrom(e)}},p.nodebuffer={string:h,array:function(e){return d(e,new Array(e.length))},arraybuffer:function(e){return p.nodebuffer.uint8array(e).buffer},uint8array:function(e){return d(e,new Uint8Array(e.length))},nodebuffer:u},n.transformTo=function(e,t){if(t=t||"",!e)return t;n.checkSupport(e);var r=n.getTypeOf(t);return p[r][e](t)},n.getTypeOf=function(e){return"string"==typeof e?"string":"[object Array]"===Object.prototype.toString.call(e)?"array":r.nodebuffer&&s.isBuffer(e)?"nodebuffer":r.uint8array&&e instanceof Uint8Array?"uint8array":r.arraybuffer&&e instanceof ArrayBuffer?"arraybuffer":void 0},n.checkSupport=function(e){if(!r[e.toLowerCase()])throw new Error(e+" is not supported by this platform")},n.MAX_VALUE_16BITS=65535,n.MAX_VALUE_32BITS=-1,n.pretty=function(e){var t,n,r="";for(n=0;n<(e||"").length;n++)r+="\\x"+((t=e.charCodeAt(n))<16?"0":"")+t.toString(16).toUpperCase();return r},n.delay=function(e,t,n){o((function(){e.apply(n||null,t||[])}))},n.inherits=function(e,t){function n(){}n.prototype=t.prototype,e.prototype=new n},n.extend=function(){var e,t,n={};for(e=0;e<arguments.length;e++)for(t in arguments[e])arguments[e].hasOwnProperty(t)&&void 0===n[t]&&(n[t]=arguments[e][t]);return n},n.prepareContent=function(e,t,s,o,u){return a.Promise.resolve(t).then((function(e){return r.blob&&(e instanceof Blob||-1!==["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(e)))&&"undefined"!=typeof FileReader?new a.Promise((function(t,n){var r=new FileReader;r.onload=function(e){t(e.target.result)},r.onerror=function(e){n(e.target.error)},r.readAsArrayBuffer(e)})):e})).then((function(t){var c=n.getTypeOf(t);return c?("arraybuffer"===c?t=n.transformTo("uint8array",t):"string"===c&&(u?t=i.decode(t):s&&!0!==o&&(t=function(e){return l(e,r.uint8array?new Uint8Array(e.length):new Array(e.length))}(t))),t):a.Promise.reject(new Error("Can't read the data of '"+e+"'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))}))}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,"set-immediate-shim":54}],33:[function(e,t,n){"use strict";var r=e("./reader/readerFor"),i=e("./utils"),s=e("./signature"),o=e("./zipEntry"),a=(e("./utf8"),e("./support"));function u(e){this.files=[],this.loadOptions=e}u.prototype={checkSignature:function(e){if(!this.reader.readAndCheckSignature(e)){this.reader.index-=4;var t=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature ("+i.pretty(t)+", expected "+i.pretty(e)+")")}},isSignature:function(e,t){var n=this.reader.index;this.reader.setIndex(e);var r=this.reader.readString(4)===t;return this.reader.setIndex(n),r},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=a.uint8array?"uint8array":"array",n=i.transformTo(t,e);this.zipComment=this.loadOptions.decodeFileName(n)},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,n,r=this.zip64EndOfCentralSize-44;0<r;)e=this.reader.readInt(2),t=this.reader.readInt(4),n=this.reader.readData(t),this.zip64ExtensibleData[e]={id:e,length:t,value:n}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),1<this.disksCount)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var e,t;for(e=0;e<this.files.length;e++)t=this.files[e],this.reader.setIndex(t.localHeaderOffset),this.checkSignature(s.LOCAL_FILE_HEADER),t.readLocalPart(this.reader),t.handleUTF8(),t.processAttributes()},readCentralDir:function(){var e;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(s.CENTRAL_FILE_HEADER);)(e=new o({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(e);if(this.centralDirRecords!==this.files.length&&0!==this.centralDirRecords&&0===this.files.length)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var e=this.reader.lastIndexOfSignature(s.CENTRAL_DIRECTORY_END);if(e<0)throw this.isSignature(0,s.LOCAL_FILE_HEADER)?new Error("Corrupted zip: can't find end of central directory"):new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html");this.reader.setIndex(e);var t=e;if(this.checkSignature(s.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===i.MAX_VALUE_16BITS||this.diskWithCentralDirStart===i.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===i.MAX_VALUE_16BITS||this.centralDirRecords===i.MAX_VALUE_16BITS||this.centralDirSize===i.MAX_VALUE_32BITS||this.centralDirOffset===i.MAX_VALUE_32BITS){if(this.zip64=!0,(e=this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(e),this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,s.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var n=this.centralDirOffset+this.centralDirSize;this.zip64&&(n+=20,n+=12+this.zip64EndOfCentralSize);var r=t-n;if(0<r)this.isSignature(t,s.CENTRAL_FILE_HEADER)||(this.reader.zero=r);else if(r<0)throw new Error("Corrupted zip: missing "+Math.abs(r)+" bytes.")},prepareReader:function(e){this.reader=r(e)},load:function(e){this.prepareReader(e),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},t.exports=u},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utf8":31,"./utils":32,"./zipEntry":34}],34:[function(e,t,n){"use strict";var r=e("./reader/readerFor"),i=e("./utils"),s=e("./compressedObject"),o=e("./crc32"),a=e("./utf8"),u=e("./compressions"),l=e("./support");function c(e,t){this.options=e,this.loadOptions=t}c.prototype={isEncrypted:function(){return 1==(1&this.bitFlag)},useUTF8:function(){return 2048==(2048&this.bitFlag)},readLocalPart:function(e){var t,n;if(e.skip(22),this.fileNameLength=e.readInt(2),n=e.readInt(2),this.fileName=e.readData(this.fileNameLength),e.skip(n),-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 u)if(u.hasOwnProperty(t)&&u[t].magic===e)return u[t];return null}(this.compressionMethod)))throw new Error("Corrupted zip : compression "+i.pretty(this.compressionMethod)+" unknown (inner file : "+i.transformTo("string",this.fileName)+")");this.decompressed=new s(this.compressedSize,this.uncompressedSize,this.crc32,t,e.readData(this.compressedSize))},readCentralPart:function(e){this.versionMadeBy=e.readInt(2),e.skip(2),this.bitFlag=e.readInt(2),this.compressionMethod=e.readString(2),this.date=e.readDate(),this.crc32=e.readInt(4),this.compressedSize=e.readInt(4),this.uncompressedSize=e.readInt(4);var t=e.readInt(2);if(this.extraFieldsLength=e.readInt(2),this.fileCommentLength=e.readInt(2),this.diskNumberStart=e.readInt(2),this.internalFileAttributes=e.readInt(2),this.externalFileAttributes=e.readInt(4),this.localHeaderOffset=e.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");e.skip(t),this.readExtraFields(e),this.parseZIP64ExtraField(e),this.fileComment=e.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var e=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),0==e&&(this.dosPermissions=63&this.externalFileAttributes),3==e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(e){if(this.extraFields[1]){var t=r(this.extraFields[1].value);this.uncompressedSize===i.MAX_VALUE_32BITS&&(this.uncompressedSize=t.readInt(8)),this.compressedSize===i.MAX_VALUE_32BITS&&(this.compressedSize=t.readInt(8)),this.localHeaderOffset===i.MAX_VALUE_32BITS&&(this.localHeaderOffset=t.readInt(8)),this.diskNumberStart===i.MAX_VALUE_32BITS&&(this.diskNumberStart=t.readInt(4))}},readExtraFields:function(e){var t,n,r,i=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index<i;)t=e.readInt(2),n=e.readInt(2),r=e.readData(n),this.extraFields[t]={id:t,length:n,value:r}},handleUTF8:function(){var e=l.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=a.utf8decode(this.fileName),this.fileCommentStr=a.utf8decode(this.fileComment);else{var t=this.findExtraFieldUnicodePath();if(null!==t)this.fileNameStr=t;else{var n=i.transformTo(e,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(n)}var r=this.findExtraFieldUnicodeComment();if(null!==r)this.fileCommentStr=r;else{var s=i.transformTo(e,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(s)}}},findExtraFieldUnicodePath:function(){var e=this.extraFields[28789];if(e){var t=r(e.value);return 1!==t.readInt(1)||o(this.fileName)!==t.readInt(4)?null:a.utf8decode(t.readData(e.length-5))}return null},findExtraFieldUnicodeComment:function(){var e=this.extraFields[25461];if(e){var t=r(e.value);return 1!==t.readInt(1)||o(this.fileComment)!==t.readInt(4)?null:a.utf8decode(t.readData(e.length-5))}return null}},t.exports=c},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(e,t,n){"use strict";function r(e,t,n){this.name=e,this.dir=n.dir,this.date=n.date,this.comment=n.comment,this.unixPermissions=n.unixPermissions,this.dosPermissions=n.dosPermissions,this._data=t,this._dataBinary=n.binary,this.options={compression:n.compression,compressionOptions:n.compressionOptions}}var i=e("./stream/StreamHelper"),s=e("./stream/DataWorker"),o=e("./utf8"),a=e("./compressedObject"),u=e("./stream/GenericWorker");r.prototype={internalStream:function(e){var t=null,n="string";try{if(!e)throw new Error("No output type specified.");var r="string"===(n=e.toLowerCase())||"text"===n;"binarystring"!==n&&"text"!==n||(n="string"),t=this._decompressWorker();var s=!this._dataBinary;s&&!r&&(t=t.pipe(new o.Utf8EncodeWorker)),!s&&r&&(t=t.pipe(new o.Utf8DecodeWorker))}catch(e){(t=new u("error")).error(e)}return new i(t,n,"")},async:function(e,t){return this.internalStream(e).accumulate(t)},nodeStream:function(e,t){return this.internalStream(e||"nodebuffer").toNodejsStream(t)},_compressWorker:function(e,t){if(this._data instanceof a&&this._data.compression.magic===e.magic)return this._data.getCompressedWorker();var n=this._decompressWorker();return this._dataBinary||(n=n.pipe(new o.Utf8EncodeWorker)),a.createWorkerFrom(n,e,t)},_decompressWorker:function(){return this._data instanceof a?this._data.getContentWorker():this._data instanceof u?this._data:new s(this._data)}};for(var l=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],c=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},h=0;h<l.length;h++)r.prototype[l[h]]=c;t.exports=r},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(e,t,r){(function(e){"use strict";var n,r,i=e.MutationObserver||e.WebKitMutationObserver;if(i){var s=0,o=new i(c),a=e.document.createTextNode("");o.observe(a,{characterData:!0}),n=function(){a.data=s=++s%2}}else if(e.setImmediate||void 0===e.MessageChannel)n="document"in e&&"onreadystatechange"in e.document.createElement("script")?function(){var t=e.document.createElement("script");t.onreadystatechange=function(){c(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(c,0)};else{var u=new e.MessageChannel;u.port1.onmessage=c,n=function(){u.port2.postMessage(0)}}var l=[];function c(){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||n()}}).call(this,void 0!==n?n:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],37:[function(e,t,n){"use strict";var r=e("immediate");function i(){}var s={},o=["REJECTED"],a=["FULFILLED"],u=["PENDING"];function l(e){if("function"!=typeof e)throw new TypeError("resolver must be a function");this.state=u,this.queue=[],this.outcome=void 0,e!==i&&p(this,e)}function c(e,t,n){this.promise=e,"function"==typeof t&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),"function"==typeof n&&(this.onRejected=n,this.callRejected=this.otherCallRejected)}function h(e,t,n){r((function(){var r;try{r=t(n)}catch(r){return s.reject(e,r)}r===e?s.reject(e,new TypeError("Cannot resolve promise with itself")):s.resolve(e,r)}))}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 p(e,t){var n=!1;function r(t){n||(n=!0,s.reject(e,t))}function i(t){n||(n=!0,s.resolve(e,t))}var o=f((function(){t(i,r)}));"error"===o.status&&r(o.value)}function f(e,t){var n={};try{n.value=e(t),n.status="success"}catch(e){n.status="error",n.value=e}return n}(t.exports=l).prototype.finally=function(e){if("function"!=typeof e)return this;var t=this.constructor;return this.then((function(n){return t.resolve(e()).then((function(){return n}))}),(function(n){return t.resolve(e()).then((function(){throw n}))}))},l.prototype.catch=function(e){return this.then(null,e)},l.prototype.then=function(e,t){if("function"!=typeof e&&this.state===a||"function"!=typeof t&&this.state===o)return this;var n=new this.constructor(i);return this.state!==u?h(n,this.state===a?e:t,this.outcome):this.queue.push(new c(n,e,t)),n},c.prototype.callFulfilled=function(e){s.resolve(this.promise,e)},c.prototype.otherCallFulfilled=function(e){h(this.promise,this.onFulfilled,e)},c.prototype.callRejected=function(e){s.reject(this.promise,e)},c.prototype.otherCallRejected=function(e){h(this.promise,this.onRejected,e)},s.resolve=function(e,t){var n=f(d,t);if("error"===n.status)return s.reject(e,n.value);var r=n.value;if(r)p(e,r);else{e.state=a,e.outcome=t;for(var i=-1,o=e.queue.length;++i<o;)e.queue[i].callFulfilled(t)}return e},s.reject=function(e,t){e.state=o,e.outcome=t;for(var n=-1,r=e.queue.length;++n<r;)e.queue[n].callRejected(t);return e},l.resolve=function(e){return e instanceof this?e:s.resolve(new this(i),e)},l.reject=function(e){var t=new this(i);return s.reject(t,e)},l.all=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var n=e.length,r=!1;if(!n)return this.resolve([]);for(var o=new Array(n),a=0,u=-1,l=new this(i);++u<n;)c(e[u],u);return l;function c(e,i){t.resolve(e).then((function(e){o[i]=e,++a!==n||r||(r=!0,s.resolve(l,o))}),(function(e){r||(r=!0,s.reject(l,e))}))}},l.race=function(e){if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var t=e.length,n=!1;if(!t)return this.resolve([]);for(var r,o=-1,a=new this(i);++o<t;)r=e[o],this.resolve(r).then((function(e){n||(n=!0,s.resolve(a,e))}),(function(e){n||(n=!0,s.reject(a,e))}));return a}},{immediate:36}],38:[function(e,t,n){"use strict";var r={};(0,e("./lib/utils/common").assign)(r,e("./lib/deflate"),e("./lib/inflate"),e("./lib/zlib/constants")),t.exports=r},{"./lib/deflate":39,"./lib/inflate":40,"./lib/utils/common":41,"./lib/zlib/constants":44}],39:[function(e,t,n){"use strict";var r=e("./zlib/deflate"),i=e("./utils/common"),s=e("./utils/strings"),o=e("./zlib/messages"),a=e("./zlib/zstream"),u=Object.prototype.toString;function l(e){if(!(this instanceof l))return new l(e);this.options=i.assign({level:-1,method:8,chunkSize:16384,windowBits:15,memLevel:8,strategy:0,to:""},e||{});var t=this.options;t.raw&&0<t.windowBits?t.windowBits=-t.windowBits:t.gzip&&0<t.windowBits&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new a,this.strm.avail_out=0;var n=r.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(0!==n)throw new Error(o[n]);if(t.header&&r.deflateSetHeader(this.strm,t.header),t.dictionary){var c;if(c="string"==typeof t.dictionary?s.string2buf(t.dictionary):"[object ArrayBuffer]"===u.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,0!==(n=r.deflateSetDictionary(this.strm,c)))throw new Error(o[n]);this._dict_set=!0}}function c(e,t){var n=new l(t);if(n.push(e,!0),n.err)throw n.msg||o[n.err];return n.result}l.prototype.push=function(e,t){var n,o,a=this.strm,l=this.options.chunkSize;if(this.ended)return!1;o=t===~~t?t:!0===t?4:0,"string"==typeof e?a.input=s.string2buf(e):"[object ArrayBuffer]"===u.call(e)?a.input=new Uint8Array(e):a.input=e,a.next_in=0,a.avail_in=a.input.length;do{if(0===a.avail_out&&(a.output=new i.Buf8(l),a.next_out=0,a.avail_out=l),1!==(n=r.deflate(a,o))&&0!==n)return this.onEnd(n),!(this.ended=!0);0!==a.avail_out&&(0!==a.avail_in||4!==o&&2!==o)||("string"===this.options.to?this.onData(s.buf2binstring(i.shrinkBuf(a.output,a.next_out))):this.onData(i.shrinkBuf(a.output,a.next_out)))}while((0<a.avail_in||0===a.avail_out)&&1!==n);return 4===o?(n=r.deflateEnd(this.strm),this.onEnd(n),this.ended=!0,0===n):2!==o||(this.onEnd(0),!(a.avail_out=0))},l.prototype.onData=function(e){this.chunks.push(e)},l.prototype.onEnd=function(e){0===e&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},n.Deflate=l,n.deflate=c,n.deflateRaw=function(e,t){return(t=t||{}).raw=!0,c(e,t)},n.gzip=function(e,t){return(t=t||{}).gzip=!0,c(e,t)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(e,t,n){"use strict";var r=e("./zlib/inflate"),i=e("./utils/common"),s=e("./utils/strings"),o=e("./zlib/constants"),a=e("./zlib/messages"),u=e("./zlib/zstream"),l=e("./zlib/gzheader"),c=Object.prototype.toString;function h(e){if(!(this instanceof h))return new h(e);this.options=i.assign({chunkSize:16384,windowBits:0,to:""},e||{});var t=this.options;t.raw&&0<=t.windowBits&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(0<=t.windowBits&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),15<t.windowBits&&t.windowBits<48&&0==(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new u,this.strm.avail_out=0;var n=r.inflateInit2(this.strm,t.windowBits);if(n!==o.Z_OK)throw new Error(a[n]);this.header=new l,r.inflateGetHeader(this.strm,this.header)}function d(e,t){var n=new h(t);if(n.push(e,!0),n.err)throw n.msg||a[n.err];return n.result}h.prototype.push=function(e,t){var n,a,u,l,h,d,p=this.strm,f=this.options.chunkSize,m=this.options.dictionary,w=!1;if(this.ended)return!1;a=t===~~t?t:!0===t?o.Z_FINISH:o.Z_NO_FLUSH,"string"==typeof e?p.input=s.binstring2buf(e):"[object ArrayBuffer]"===c.call(e)?p.input=new Uint8Array(e):p.input=e,p.next_in=0,p.avail_in=p.input.length;do{if(0===p.avail_out&&(p.output=new i.Buf8(f),p.next_out=0,p.avail_out=f),(n=r.inflate(p,o.Z_NO_FLUSH))===o.Z_NEED_DICT&&m&&(d="string"==typeof m?s.string2buf(m):"[object ArrayBuffer]"===c.call(m)?new Uint8Array(m):m,n=r.inflateSetDictionary(this.strm,d)),n===o.Z_BUF_ERROR&&!0===w&&(n=o.Z_OK,w=!1),n!==o.Z_STREAM_END&&n!==o.Z_OK)return this.onEnd(n),!(this.ended=!0);p.next_out&&(0!==p.avail_out&&n!==o.Z_STREAM_END&&(0!==p.avail_in||a!==o.Z_FINISH&&a!==o.Z_SYNC_FLUSH)||("string"===this.options.to?(u=s.utf8border(p.output,p.next_out),l=p.next_out-u,h=s.buf2string(p.output,u),p.next_out=l,p.avail_out=f-l,l&&i.arraySet(p.output,p.output,u,l,0),this.onData(h)):this.onData(i.shrinkBuf(p.output,p.next_out)))),0===p.avail_in&&0===p.avail_out&&(w=!0)}while((0<p.avail_in||0===p.avail_out)&&n!==o.Z_STREAM_END);return n===o.Z_STREAM_END&&(a=o.Z_FINISH),a===o.Z_FINISH?(n=r.inflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===o.Z_OK):a!==o.Z_SYNC_FLUSH||(this.onEnd(o.Z_OK),!(p.avail_out=0))},h.prototype.onData=function(e){this.chunks.push(e)},h.prototype.onEnd=function(e){e===o.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},n.Inflate=h,n.inflate=d,n.inflateRaw=function(e,t){return(t=t||{}).raw=!0,d(e,t)},n.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,n){"use strict";var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;n.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var n=t.shift();if(n){if("object"!=typeof n)throw new TypeError(n+"must be non-object");for(var r in n)n.hasOwnProperty(r)&&(e[r]=n[r])}}return e},n.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var i={arraySet:function(e,t,n,r,i){if(t.subarray&&e.subarray)e.set(t.subarray(n,n+r),i);else for(var s=0;s<r;s++)e[i+s]=t[n+s]},flattenChunks:function(e){var t,n,r,i,s,o;for(t=r=0,n=e.length;t<n;t++)r+=e[t].length;for(o=new Uint8Array(r),t=i=0,n=e.length;t<n;t++)s=e[t],o.set(s,i),i+=s.length;return o}},s={arraySet:function(e,t,n,r,i){for(var s=0;s<r;s++)e[i+s]=t[n+s]},flattenChunks:function(e){return[].concat.apply([],e)}};n.setTyped=function(e){e?(n.Buf8=Uint8Array,n.Buf16=Uint16Array,n.Buf32=Int32Array,n.assign(n,i)):(n.Buf8=Array,n.Buf16=Array,n.Buf32=Array,n.assign(n,s))},n.setTyped(r)},{}],42:[function(e,t,n){"use strict";var r=e("./common"),i=!0,s=!0;try{String.fromCharCode.apply(null,[0])}catch(e){i=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){s=!1}for(var o=new r.Buf8(256),a=0;a<256;a++)o[a]=252<=a?6:248<=a?5:240<=a?4:224<=a?3:192<=a?2:1;function u(e,t){if(t<65537&&(e.subarray&&s||!e.subarray&&i))return String.fromCharCode.apply(null,r.shrinkBuf(e,t));for(var n="",o=0;o<t;o++)n+=String.fromCharCode(e[o]);return n}o[254]=o[254]=1,n.string2buf=function(e){var t,n,i,s,o,a=e.length,u=0;for(s=0;s<a;s++)55296==(64512&(n=e.charCodeAt(s)))&&s+1<a&&56320==(64512&(i=e.charCodeAt(s+1)))&&(n=65536+(n-55296<<10)+(i-56320),s++),u+=n<128?1:n<2048?2:n<65536?3:4;for(t=new r.Buf8(u),s=o=0;o<u;s++)55296==(64512&(n=e.charCodeAt(s)))&&s+1<a&&56320==(64512&(i=e.charCodeAt(s+1)))&&(n=65536+(n-55296<<10)+(i-56320),s++),n<128?t[o++]=n:(n<2048?t[o++]=192|n>>>6:(n<65536?t[o++]=224|n>>>12:(t[o++]=240|n>>>18,t[o++]=128|n>>>12&63),t[o++]=128|n>>>6&63),t[o++]=128|63&n);return t},n.buf2binstring=function(e){return u(e,e.length)},n.binstring2buf=function(e){for(var t=new r.Buf8(e.length),n=0,i=t.length;n<i;n++)t[n]=e.charCodeAt(n);return t},n.buf2string=function(e,t){var n,r,i,s,a=t||e.length,l=new Array(2*a);for(n=r=0;n<a;)if((i=e[n++])<128)l[r++]=i;else if(4<(s=o[i]))l[r++]=65533,n+=s-1;else{for(i&=2===s?31:3===s?15:7;1<s&&n<a;)i=i<<6|63&e[n++],s--;1<s?l[r++]=65533:i<65536?l[r++]=i:(i-=65536,l[r++]=55296|i>>10&1023,l[r++]=56320|1023&i)}return u(l,r)},n.utf8border=function(e,t){var n;for((t=t||e.length)>e.length&&(t=e.length),n=t-1;0<=n&&128==(192&e[n]);)n--;return n<0||0===n?t:n+o[e[n]]>t?n:t}},{"./common":41}],43:[function(e,t,n){"use strict";t.exports=function(e,t,n,r){for(var i=65535&e|0,s=e>>>16&65535|0,o=0;0!==n;){for(n-=o=2e3<n?2e3:n;s=s+(i=i+t[r++]|0)|0,--o;);i%=65521,s%=65521}return i|s<<16|0}},{}],44:[function(e,t,n){"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,n){"use strict";var r=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();t.exports=function(e,t,n,i){var s=r,o=i+n;e^=-1;for(var a=i;a<o;a++)e=e>>>8^s[255&(e^t[a])];return-1^e}},{}],46:[function(e,t,n){"use strict";var r,i=e("../utils/common"),s=e("./trees"),o=e("./adler32"),a=e("./crc32"),u=e("./messages"),l=-2,c=258,h=262,d=113;function p(e,t){return e.msg=u[t],t}function f(e){return(e<<1)-(4<e?9:0)}function m(e){for(var t=e.length;0<=--t;)e[t]=0}function w(e){var t=e.state,n=t.pending;n>e.avail_out&&(n=e.avail_out),0!==n&&(i.arraySet(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,0===t.pending&&(t.pending_out=0))}function g(e,t){s._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,w(e.strm)}function _(e,t){e.pending_buf[e.pending++]=t}function b(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function y(e,t){var n,r,i=e.max_chain_length,s=e.strstart,o=e.prev_length,a=e.nice_match,u=e.strstart>e.w_size-h?e.strstart-(e.w_size-h):0,l=e.window,d=e.w_mask,p=e.prev,f=e.strstart+c,m=l[s+o-1],w=l[s+o];e.prev_length>=e.good_match&&(i>>=2),a>e.lookahead&&(a=e.lookahead);do{if(l[(n=t)+o]===w&&l[n+o-1]===m&&l[n]===l[s]&&l[++n]===l[s+1]){s+=2,n++;do{}while(l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&s<f);if(r=c-(f-s),s=f-c,o<r){if(e.match_start=t,a<=(o=r))break;m=l[s+o-1],w=l[s+o]}}}while((t=p[t&d])>u&&0!=--i);return o<=e.lookahead?o:e.lookahead}function v(e){var t,n,r,s,u,l,c,d,p,f,m=e.w_size;do{if(s=e.window_size-e.lookahead-e.strstart,e.strstart>=m+(m-h)){for(i.arraySet(e.window,e.window,m,m,0),e.match_start-=m,e.strstart-=m,e.block_start-=m,t=n=e.hash_size;r=e.head[--t],e.head[t]=m<=r?r-m:0,--n;);for(t=n=m;r=e.prev[--t],e.prev[t]=m<=r?r-m:0,--n;);s+=m}if(0===e.strm.avail_in)break;if(l=e.strm,c=e.window,d=e.strstart+e.lookahead,f=void 0,(p=s)<(f=l.avail_in)&&(f=p),n=0===f?0:(l.avail_in-=f,i.arraySet(c,l.input,l.next_in,f,d),1===l.state.wrap?l.adler=o(l.adler,c,f,d):2===l.state.wrap&&(l.adler=a(l.adler,c,f,d)),l.next_in+=f,l.total_in+=f,f),e.lookahead+=n,e.lookahead+e.insert>=3)for(u=e.strstart-e.insert,e.ins_h=e.window[u],e.ins_h=(e.ins_h<<e.hash_shift^e.window[u+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[u+3-1])&e.hash_mask,e.prev[u&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=u,u++,e.insert--,!(e.lookahead+e.insert<3)););}while(e.lookahead<h&&0!==e.strm.avail_in)}function E(e,t){for(var n,r;;){if(e.lookahead<h){if(v(e),e.lookahead<h&&0===t)return 1;if(0===e.lookahead)break}if(n=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==n&&e.strstart-n<=e.w_size-h&&(e.match_length=y(e,n)),e.match_length>=3)if(r=s._tr_tally(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=3){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=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 r=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(r&&(g(e,!1),0===e.strm.avail_out))return 1}return e.insert=e.strstart<2?e.strstart:2,4===t?(g(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(g(e,!1),0===e.strm.avail_out)?1:2}function A(e,t){for(var n,r,i;;){if(e.lookahead<h){if(v(e),e.lookahead<h&&0===t)return 1;if(0===e.lookahead)break}if(n=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=2,0!==n&&e.prev_length<e.max_lazy_match&&e.strstart-n<=e.w_size-h&&(e.match_length=y(e,n),e.match_length<=5&&(1===e.strategy||3===e.match_length&&4096<e.strstart-e.match_start)&&(e.match_length=2)),e.prev_length>=3&&e.match_length<=e.prev_length){for(i=e.strstart+e.lookahead-3,r=s._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=i&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!=--e.prev_length;);if(e.match_available=0,e.match_length=2,e.strstart++,r&&(g(e,!1),0===e.strm.avail_out))return 1}else if(e.match_available){if((r=s._tr_tally(e,0,e.window[e.strstart-1]))&&g(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&&(r=s._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<2?e.strstart:2,4===t?(g(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(g(e,!1),0===e.strm.avail_out)?1:2}function x(e,t,n,r,i){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=i}function T(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=8,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(1146),this.dyn_dtree=new i.Buf16(122),this.bl_tree=new i.Buf16(78),m(this.dyn_ltree),m(this.dyn_dtree),m(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(16),this.heap=new i.Buf16(573),m(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(573),m(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function S(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=2,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?42:d,e.adler=2===t.wrap?0:1,t.last_flush=0,s._tr_init(t),0):p(e,l)}function C(e){var t=S(e);return 0===t&&function(e){e.window_size=2*e.w_size,m(e.head),e.max_lazy_match=r[e.level].max_lazy,e.good_match=r[e.level].good_length,e.nice_match=r[e.level].nice_length,e.max_chain_length=r[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=2,e.match_available=0,e.ins_h=0}(e.state),t}function k(e,t,n,r,s,o){if(!e)return l;var a=1;if(-1===t&&(t=6),r<0?(a=0,r=-r):15<r&&(a=2,r-=16),s<1||9<s||8!==n||r<8||15<r||t<0||9<t||o<0||4<o)return p(e,l);8===r&&(r=9);var u=new T;return(e.state=u).strm=e,u.wrap=a,u.gzhead=null,u.w_bits=r,u.w_size=1<<u.w_bits,u.w_mask=u.w_size-1,u.hash_bits=s+7,u.hash_size=1<<u.hash_bits,u.hash_mask=u.hash_size-1,u.hash_shift=~~((u.hash_bits+3-1)/3),u.window=new i.Buf8(2*u.w_size),u.head=new i.Buf16(u.hash_size),u.prev=new i.Buf16(u.w_size),u.lit_bufsize=1<<s+6,u.pending_buf_size=4*u.lit_bufsize,u.pending_buf=new i.Buf8(u.pending_buf_size),u.d_buf=1*u.lit_bufsize,u.l_buf=3*u.lit_bufsize,u.level=t,u.strategy=o,u.method=n,C(e)}r=[new x(0,0,0,0,(function(e,t){var n=65535;for(n>e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(e.lookahead<=1){if(v(e),0===e.lookahead&&0===t)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((0===e.strstart||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,g(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-h&&(g(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(g(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(g(e,!1),e.strm.avail_out),1)})),new x(4,4,8,4,E),new x(4,5,16,8,E),new x(4,6,32,32,E),new x(4,4,16,16,A),new x(8,16,32,32,A),new x(8,16,128,128,A),new x(8,32,128,256,A),new x(32,128,258,1024,A),new x(32,258,258,4096,A)],n.deflateInit=function(e,t){return k(e,t,8,15,8,0)},n.deflateInit2=k,n.deflateReset=C,n.deflateResetKeep=S,n.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?l:(e.state.gzhead=t,0):l},n.deflate=function(e,t){var n,i,o,u;if(!e||!e.state||5<t||t<0)return e?p(e,l):l;if(i=e.state,!e.output||!e.input&&0!==e.avail_in||666===i.status&&4!==t)return p(e,0===e.avail_out?-5:l);if(i.strm=e,n=i.last_flush,i.last_flush=t,42===i.status)if(2===i.wrap)e.adler=0,_(i,31),_(i,139),_(i,8),i.gzhead?(_(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),_(i,255&i.gzhead.time),_(i,i.gzhead.time>>8&255),_(i,i.gzhead.time>>16&255),_(i,i.gzhead.time>>24&255),_(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),_(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(_(i,255&i.gzhead.extra.length),_(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=a(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(_(i,0),_(i,0),_(i,0),_(i,0),_(i,0),_(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),_(i,3),i.status=d);else{var h=8+(i.w_bits-8<<4)<<8;h|=(2<=i.strategy||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(h|=32),h+=31-h%31,i.status=d,b(i,h),0!==i.strstart&&(b(i,e.adler>>>16),b(i,65535&e.adler)),e.adler=1}if(69===i.status)if(i.gzhead.extra){for(o=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),w(e),o=i.pending,i.pending!==i.pending_buf_size));)_(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(73===i.status)if(i.gzhead.name){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),w(e),o=i.pending,i.pending===i.pending_buf_size)){u=1;break}u=i.gzindex<i.gzhead.name.length?255&i.gzhead.name.charCodeAt(i.gzindex++):0,_(i,u)}while(0!==u);i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),0===u&&(i.gzindex=0,i.status=91)}else i.status=91;if(91===i.status)if(i.gzhead.comment){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),w(e),o=i.pending,i.pending===i.pending_buf_size)){u=1;break}u=i.gzindex<i.gzhead.comment.length?255&i.gzhead.comment.charCodeAt(i.gzindex++):0,_(i,u)}while(0!==u);i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),0===u&&(i.status=103)}else i.status=103;if(103===i.status&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&w(e),i.pending+2<=i.pending_buf_size&&(_(i,255&e.adler),_(i,e.adler>>8&255),e.adler=0,i.status=d)):i.status=d),0!==i.pending){if(w(e),0===e.avail_out)return i.last_flush=-1,0}else if(0===e.avail_in&&f(t)<=f(n)&&4!==t)return p(e,-5);if(666===i.status&&0!==e.avail_in)return p(e,-5);if(0!==e.avail_in||0!==i.lookahead||0!==t&&666!==i.status){var y=2===i.strategy?function(e,t){for(var n;;){if(0===e.lookahead&&(v(e),0===e.lookahead)){if(0===t)return 1;break}if(e.match_length=0,n=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(g(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(g(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(g(e,!1),0===e.strm.avail_out)?1:2}(i,t):3===i.strategy?function(e,t){for(var n,r,i,o,a=e.window;;){if(e.lookahead<=c){if(v(e),e.lookahead<=c&&0===t)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&0<e.strstart&&(r=a[i=e.strstart-1])===a[++i]&&r===a[++i]&&r===a[++i]){o=e.strstart+c;do{}while(r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&i<o);e.match_length=c-(o-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=3?(n=s._tr_tally(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(g(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(g(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(g(e,!1),0===e.strm.avail_out)?1:2}(i,t):r[i.level].func(i,t);if(3!==y&&4!==y||(i.status=666),1===y||3===y)return 0===e.avail_out&&(i.last_flush=-1),0;if(2===y&&(1===t?s._tr_align(i):5!==t&&(s._tr_stored_block(i,0,0,!1),3===t&&(m(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),w(e),0===e.avail_out))return i.last_flush=-1,0}return 4!==t?0:i.wrap<=0?1:(2===i.wrap?(_(i,255&e.adler),_(i,e.adler>>8&255),_(i,e.adler>>16&255),_(i,e.adler>>24&255),_(i,255&e.total_in),_(i,e.total_in>>8&255),_(i,e.total_in>>16&255),_(i,e.total_in>>24&255)):(b(i,e.adler>>>16),b(i,65535&e.adler)),w(e),0<i.wrap&&(i.wrap=-i.wrap),0!==i.pending?0:1)},n.deflateEnd=function(e){var t;return e&&e.state?42!==(t=e.state.status)&&69!==t&&73!==t&&91!==t&&103!==t&&t!==d&&666!==t?p(e,l):(e.state=null,t===d?p(e,-3):0):l},n.deflateSetDictionary=function(e,t){var n,r,s,a,u,c,h,d,p=t.length;if(!e||!e.state)return l;if(2===(a=(n=e.state).wrap)||1===a&&42!==n.status||n.lookahead)return l;for(1===a&&(e.adler=o(e.adler,t,p,0)),n.wrap=0,p>=n.w_size&&(0===a&&(m(n.head),n.strstart=0,n.block_start=0,n.insert=0),d=new i.Buf8(n.w_size),i.arraySet(d,t,p-n.w_size,n.w_size,0),t=d,p=n.w_size),u=e.avail_in,c=e.next_in,h=e.input,e.avail_in=p,e.next_in=0,e.input=t,v(n);n.lookahead>=3;){for(r=n.strstart,s=n.lookahead-2;n.ins_h=(n.ins_h<<n.hash_shift^n.window[r+3-1])&n.hash_mask,n.prev[r&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=r,r++,--s;);n.strstart=r,n.lookahead=2,v(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=2,n.match_available=0,e.next_in=c,e.input=h,e.avail_in=u,n.wrap=a,0},n.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./messages":51,"./trees":52}],47:[function(e,t,n){"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,n){"use strict";t.exports=function(e,t){var n,r,i,s,o,a,u,l,c,h,d,p,f,m,w,g,_,b,y,v,E,A,x,T,S;n=e.state,r=e.next_in,T=e.input,i=r+(e.avail_in-5),s=e.next_out,S=e.output,o=s-(t-e.avail_out),a=s+(e.avail_out-257),u=n.dmax,l=n.wsize,c=n.whave,h=n.wnext,d=n.window,p=n.hold,f=n.bits,m=n.lencode,w=n.distcode,g=(1<<n.lenbits)-1,_=(1<<n.distbits)-1;e:do{f<15&&(p+=T[r++]<<f,f+=8,p+=T[r++]<<f,f+=8),b=m[p&g];t:for(;;){if(p>>>=y=b>>>24,f-=y,0==(y=b>>>16&255))S[s++]=65535&b;else{if(!(16&y)){if(0==(64&y)){b=m[(65535&b)+(p&(1<<y)-1)];continue t}if(32&y){n.mode=12;break e}e.msg="invalid literal/length code",n.mode=30;break e}v=65535&b,(y&=15)&&(f<y&&(p+=T[r++]<<f,f+=8),v+=p&(1<<y)-1,p>>>=y,f-=y),f<15&&(p+=T[r++]<<f,f+=8,p+=T[r++]<<f,f+=8),b=w[p&_];n:for(;;){if(p>>>=y=b>>>24,f-=y,!(16&(y=b>>>16&255))){if(0==(64&y)){b=w[(65535&b)+(p&(1<<y)-1)];continue n}e.msg="invalid distance code",n.mode=30;break e}if(E=65535&b,f<(y&=15)&&(p+=T[r++]<<f,(f+=8)<y&&(p+=T[r++]<<f,f+=8)),u<(E+=p&(1<<y)-1)){e.msg="invalid distance too far back",n.mode=30;break e}if(p>>>=y,f-=y,(y=s-o)<E){if(c<(y=E-y)&&n.sane){e.msg="invalid distance too far back",n.mode=30;break e}if(x=d,(A=0)===h){if(A+=l-y,y<v){for(v-=y;S[s++]=d[A++],--y;);A=s-E,x=S}}else if(h<y){if(A+=l+h-y,(y-=h)<v){for(v-=y;S[s++]=d[A++],--y;);if(A=0,h<v){for(v-=y=h;S[s++]=d[A++],--y;);A=s-E,x=S}}}else if(A+=h-y,y<v){for(v-=y;S[s++]=d[A++],--y;);A=s-E,x=S}for(;2<v;)S[s++]=x[A++],S[s++]=x[A++],S[s++]=x[A++],v-=3;v&&(S[s++]=x[A++],1<v&&(S[s++]=x[A++]))}else{for(A=s-E;S[s++]=S[A++],S[s++]=S[A++],S[s++]=S[A++],2<(v-=3););v&&(S[s++]=S[A++],1<v&&(S[s++]=S[A++]))}break}}break}}while(r<i&&s<a);r-=v=f>>3,p&=(1<<(f-=v<<3))-1,e.next_in=r,e.next_out=s,e.avail_in=r<i?i-r+5:5-(r-i),e.avail_out=s<a?a-s+257:257-(s-a),n.hold=p,n.bits=f}},{}],49:[function(e,t,n){"use strict";var r=e("../utils/common"),i=e("./adler32"),s=e("./crc32"),o=e("./inffast"),a=e("./inftrees"),u=-2;function l(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function c(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function h(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=1,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new r.Buf32(852),t.distcode=t.distdyn=new r.Buf32(592),t.sane=1,t.back=-1,0):u}function d(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,h(e)):u}function p(e,t){var n,r;return e&&e.state?(r=e.state,t<0?(n=0,t=-t):(n=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15<t)?u:(null!==r.window&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,d(e))):u}function f(e,t){var n,r;return e?(r=new c,(e.state=r).window=null,0!==(n=p(e,t))&&(e.state=null),n):u}var m,w,g=!0;function _(e){if(g){var t;for(m=new r.Buf32(512),w=new r.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(a(1,e.lens,0,288,m,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;a(2,e.lens,0,32,w,0,e.work,{bits:5}),g=!1}e.lencode=m,e.lenbits=9,e.distcode=w,e.distbits=5}function b(e,t,n,i){var s,o=e.state;return null===o.window&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new r.Buf8(o.wsize)),i>=o.wsize?(r.arraySet(o.window,t,n-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(i<(s=o.wsize-o.wnext)&&(s=i),r.arraySet(o.window,t,n-i,s,o.wnext),(i-=s)?(r.arraySet(o.window,t,n-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=s,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=s))),0}n.inflateReset=d,n.inflateReset2=p,n.inflateResetKeep=h,n.inflateInit=function(e){return f(e,15)},n.inflateInit2=f,n.inflate=function(e,t){var n,c,h,d,p,f,m,w,g,y,v,E,A,x,T,S,C,k,D,R,O,I,N,F,P=0,L=new r.Buf8(4),B=[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===(n=e.state).mode&&(n.mode=13),p=e.next_out,h=e.output,m=e.avail_out,d=e.next_in,c=e.input,f=e.avail_in,w=n.hold,g=n.bits,y=f,v=m,I=0;e:for(;;)switch(n.mode){case 1:if(0===n.wrap){n.mode=13;break}for(;g<16;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}if(2&n.wrap&&35615===w){L[n.check=0]=255&w,L[1]=w>>>8&255,n.check=s(n.check,L,2,0),g=w=0,n.mode=2;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&w)<<8)+(w>>8))%31){e.msg="incorrect header check",n.mode=30;break}if(8!=(15&w)){e.msg="unknown compression method",n.mode=30;break}if(g-=4,O=8+(15&(w>>>=4)),0===n.wbits)n.wbits=O;else if(O>n.wbits){e.msg="invalid window size",n.mode=30;break}n.dmax=1<<O,e.adler=n.check=1,n.mode=512&w?10:12,g=w=0;break;case 2:for(;g<16;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}if(n.flags=w,8!=(255&n.flags)){e.msg="unknown compression method",n.mode=30;break}if(57344&n.flags){e.msg="unknown header flags set",n.mode=30;break}n.head&&(n.head.text=w>>8&1),512&n.flags&&(L[0]=255&w,L[1]=w>>>8&255,n.check=s(n.check,L,2,0)),g=w=0,n.mode=3;case 3:for(;g<32;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}n.head&&(n.head.time=w),512&n.flags&&(L[0]=255&w,L[1]=w>>>8&255,L[2]=w>>>16&255,L[3]=w>>>24&255,n.check=s(n.check,L,4,0)),g=w=0,n.mode=4;case 4:for(;g<16;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}n.head&&(n.head.xflags=255&w,n.head.os=w>>8),512&n.flags&&(L[0]=255&w,L[1]=w>>>8&255,n.check=s(n.check,L,2,0)),g=w=0,n.mode=5;case 5:if(1024&n.flags){for(;g<16;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}n.length=w,n.head&&(n.head.extra_len=w),512&n.flags&&(L[0]=255&w,L[1]=w>>>8&255,n.check=s(n.check,L,2,0)),g=w=0}else n.head&&(n.head.extra=null);n.mode=6;case 6:if(1024&n.flags&&(f<(E=n.length)&&(E=f),E&&(n.head&&(O=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Array(n.head.extra_len)),r.arraySet(n.head.extra,c,d,E,O)),512&n.flags&&(n.check=s(n.check,c,E,d)),f-=E,d+=E,n.length-=E),n.length))break e;n.length=0,n.mode=7;case 7:if(2048&n.flags){if(0===f)break e;for(E=0;O=c[d+E++],n.head&&O&&n.length<65536&&(n.head.name+=String.fromCharCode(O)),O&&E<f;);if(512&n.flags&&(n.check=s(n.check,c,E,d)),f-=E,d+=E,O)break e}else n.head&&(n.head.name=null);n.length=0,n.mode=8;case 8:if(4096&n.flags){if(0===f)break e;for(E=0;O=c[d+E++],n.head&&O&&n.length<65536&&(n.head.comment+=String.fromCharCode(O)),O&&E<f;);if(512&n.flags&&(n.check=s(n.check,c,E,d)),f-=E,d+=E,O)break e}else n.head&&(n.head.comment=null);n.mode=9;case 9:if(512&n.flags){for(;g<16;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}if(w!==(65535&n.check)){e.msg="header crc mismatch",n.mode=30;break}g=w=0}n.head&&(n.head.hcrc=n.flags>>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=12;break;case 10:for(;g<32;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}e.adler=n.check=l(w),g=w=0,n.mode=11;case 11:if(0===n.havedict)return e.next_out=p,e.avail_out=m,e.next_in=d,e.avail_in=f,n.hold=w,n.bits=g,2;e.adler=n.check=1,n.mode=12;case 12:if(5===t||6===t)break e;case 13:if(n.last){w>>>=7&g,g-=7&g,n.mode=27;break}for(;g<3;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}switch(n.last=1&w,g-=1,3&(w>>>=1)){case 0:n.mode=14;break;case 1:if(_(n),n.mode=20,6!==t)break;w>>>=2,g-=2;break e;case 2:n.mode=17;break;case 3:e.msg="invalid block type",n.mode=30}w>>>=2,g-=2;break;case 14:for(w>>>=7&g,g-=7&g;g<32;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}if((65535&w)!=(w>>>16^65535)){e.msg="invalid stored block lengths",n.mode=30;break}if(n.length=65535&w,g=w=0,n.mode=15,6===t)break e;case 15:n.mode=16;case 16:if(E=n.length){if(f<E&&(E=f),m<E&&(E=m),0===E)break e;r.arraySet(h,c,d,E,p),f-=E,d+=E,m-=E,p+=E,n.length-=E;break}n.mode=12;break;case 17:for(;g<14;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}if(n.nlen=257+(31&w),w>>>=5,g-=5,n.ndist=1+(31&w),w>>>=5,g-=5,n.ncode=4+(15&w),w>>>=4,g-=4,286<n.nlen||30<n.ndist){e.msg="too many length or distance symbols",n.mode=30;break}n.have=0,n.mode=18;case 18:for(;n.have<n.ncode;){for(;g<3;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}n.lens[B[n.have++]]=7&w,w>>>=3,g-=3}for(;n.have<19;)n.lens[B[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,N={bits:n.lenbits},I=a(0,n.lens,0,19,n.lencode,0,n.work,N),n.lenbits=N.bits,I){e.msg="invalid code lengths set",n.mode=30;break}n.have=0,n.mode=19;case 19:for(;n.have<n.nlen+n.ndist;){for(;S=(P=n.lencode[w&(1<<n.lenbits)-1])>>>16&255,C=65535&P,!((T=P>>>24)<=g);){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}if(C<16)w>>>=T,g-=T,n.lens[n.have++]=C;else{if(16===C){for(F=T+2;g<F;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}if(w>>>=T,g-=T,0===n.have){e.msg="invalid bit length repeat",n.mode=30;break}O=n.lens[n.have-1],E=3+(3&w),w>>>=2,g-=2}else if(17===C){for(F=T+3;g<F;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}g-=T,O=0,E=3+(7&(w>>>=T)),w>>>=3,g-=3}else{for(F=T+7;g<F;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}g-=T,O=0,E=11+(127&(w>>>=T)),w>>>=7,g-=7}if(n.have+E>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=30;break}for(;E--;)n.lens[n.have++]=O}}if(30===n.mode)break;if(0===n.lens[256]){e.msg="invalid code -- missing end-of-block",n.mode=30;break}if(n.lenbits=9,N={bits:n.lenbits},I=a(1,n.lens,0,n.nlen,n.lencode,0,n.work,N),n.lenbits=N.bits,I){e.msg="invalid literal/lengths set",n.mode=30;break}if(n.distbits=6,n.distcode=n.distdyn,N={bits:n.distbits},I=a(2,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,N),n.distbits=N.bits,I){e.msg="invalid distances set",n.mode=30;break}if(n.mode=20,6===t)break e;case 20:n.mode=21;case 21:if(6<=f&&258<=m){e.next_out=p,e.avail_out=m,e.next_in=d,e.avail_in=f,n.hold=w,n.bits=g,o(e,v),p=e.next_out,h=e.output,m=e.avail_out,d=e.next_in,c=e.input,f=e.avail_in,w=n.hold,g=n.bits,12===n.mode&&(n.back=-1);break}for(n.back=0;S=(P=n.lencode[w&(1<<n.lenbits)-1])>>>16&255,C=65535&P,!((T=P>>>24)<=g);){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}if(S&&0==(240&S)){for(k=T,D=S,R=C;S=(P=n.lencode[R+((w&(1<<k+D)-1)>>k)])>>>16&255,C=65535&P,!(k+(T=P>>>24)<=g);){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}w>>>=k,g-=k,n.back+=k}if(w>>>=T,g-=T,n.back+=T,n.length=C,0===S){n.mode=26;break}if(32&S){n.back=-1,n.mode=12;break}if(64&S){e.msg="invalid literal/length code",n.mode=30;break}n.extra=15&S,n.mode=22;case 22:if(n.extra){for(F=n.extra;g<F;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}n.length+=w&(1<<n.extra)-1,w>>>=n.extra,g-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=23;case 23:for(;S=(P=n.distcode[w&(1<<n.distbits)-1])>>>16&255,C=65535&P,!((T=P>>>24)<=g);){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}if(0==(240&S)){for(k=T,D=S,R=C;S=(P=n.distcode[R+((w&(1<<k+D)-1)>>k)])>>>16&255,C=65535&P,!(k+(T=P>>>24)<=g);){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}w>>>=k,g-=k,n.back+=k}if(w>>>=T,g-=T,n.back+=T,64&S){e.msg="invalid distance code",n.mode=30;break}n.offset=C,n.extra=15&S,n.mode=24;case 24:if(n.extra){for(F=n.extra;g<F;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}n.offset+=w&(1<<n.extra)-1,w>>>=n.extra,g-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=30;break}n.mode=25;case 25:if(0===m)break e;if(E=v-m,n.offset>E){if((E=n.offset-E)>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=30;break}A=E>n.wnext?(E-=n.wnext,n.wsize-E):n.wnext-E,E>n.length&&(E=n.length),x=n.window}else x=h,A=p-n.offset,E=n.length;for(m<E&&(E=m),m-=E,n.length-=E;h[p++]=x[A++],--E;);0===n.length&&(n.mode=21);break;case 26:if(0===m)break e;h[p++]=n.length,m--,n.mode=21;break;case 27:if(n.wrap){for(;g<32;){if(0===f)break e;f--,w|=c[d++]<<g,g+=8}if(v-=m,e.total_out+=v,n.total+=v,v&&(e.adler=n.check=n.flags?s(n.check,h,v,p-v):i(n.check,h,v,p-v)),v=m,(n.flags?w:l(w))!==n.check){e.msg="incorrect data check",n.mode=30;break}g=w=0}n.mode=28;case 28:if(n.wrap&&n.flags){for(;g<32;){if(0===f)break e;f--,w+=c[d++]<<g,g+=8}if(w!==(4294967295&n.total)){e.msg="incorrect length check",n.mode=30;break}g=w=0}n.mode=29;case 29:I=1;break e;case 30:I=-3;break e;case 31:return-4;case 32:default:return u}return e.next_out=p,e.avail_out=m,e.next_in=d,e.avail_in=f,n.hold=w,n.bits=g,(n.wsize||v!==e.avail_out&&n.mode<30&&(n.mode<27||4!==t))&&b(e,e.output,e.next_out,v-e.avail_out)?(n.mode=31,-4):(y-=e.avail_in,v-=e.avail_out,e.total_in+=y,e.total_out+=v,n.total+=v,n.wrap&&v&&(e.adler=n.check=n.flags?s(n.check,h,v,e.next_out-v):i(n.check,h,v,e.next_out-v)),e.data_type=n.bits+(n.last?64:0)+(12===n.mode?128:0)+(20===n.mode||15===n.mode?256:0),(0==y&&0===v||4===t)&&0===I&&(I=-5),I)},n.inflateEnd=function(e){if(!e||!e.state)return u;var t=e.state;return t.window&&(t.window=null),e.state=null,0},n.inflateGetHeader=function(e,t){var n;return e&&e.state?0==(2&(n=e.state).wrap)?u:((n.head=t).done=!1,0):u},n.inflateSetDictionary=function(e,t){var n,r=t.length;return e&&e.state?0!==(n=e.state).wrap&&11!==n.mode?u:11===n.mode&&i(1,t,r,0)!==n.check?-3:b(e,t,r,r)?(n.mode=31,-4):(n.havedict=1,0):u},n.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./inffast":48,"./inftrees":50}],50:[function(e,t,n){"use strict";var r=e("../utils/common"),i=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],s=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],o=[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],a=[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,n,u,l,c,h,d){var p,f,m,w,g,_,b,y,v,E=d.bits,A=0,x=0,T=0,S=0,C=0,k=0,D=0,R=0,O=0,I=0,N=null,F=0,P=new r.Buf16(16),L=new r.Buf16(16),B=null,U=0;for(A=0;A<=15;A++)P[A]=0;for(x=0;x<u;x++)P[t[n+x]]++;for(C=E,S=15;1<=S&&0===P[S];S--);if(S<C&&(C=S),0===S)return l[c++]=20971520,l[c++]=20971520,d.bits=1,0;for(T=1;T<S&&0===P[T];T++);for(C<T&&(C=T),A=R=1;A<=15;A++)if(R<<=1,(R-=P[A])<0)return-1;if(0<R&&(0===e||1!==S))return-1;for(L[1]=0,A=1;A<15;A++)L[A+1]=L[A]+P[A];for(x=0;x<u;x++)0!==t[n+x]&&(h[L[t[n+x]]++]=x);if(_=0===e?(N=B=h,19):1===e?(N=i,F-=257,B=s,U-=257,256):(N=o,B=a,-1),A=T,g=c,D=x=I=0,m=-1,w=(O=1<<(k=C))-1,1===e&&852<O||2===e&&592<O)return 1;for(;;){for(b=A-D,v=h[x]<_?(y=0,h[x]):h[x]>_?(y=B[U+h[x]],N[F+h[x]]):(y=96,0),p=1<<A-D,T=f=1<<k;l[g+(I>>D)+(f-=p)]=b<<24|y<<16|v|0,0!==f;);for(p=1<<A-1;I&p;)p>>=1;if(0!==p?(I&=p-1,I+=p):I=0,x++,0==--P[A]){if(A===S)break;A=t[n+h[x]]}if(C<A&&(I&w)!==m){for(0===D&&(D=C),g+=T,R=1<<(k=A-D);k+D<S&&!((R-=P[k+D])<=0);)k++,R<<=1;if(O+=1<<k,1===e&&852<O||2===e&&592<O)return 1;l[m=I&w]=C<<24|k<<16|g-c|0}}return 0!==I&&(l[g+I]=A-D<<24|64<<16|0),d.bits=C,0}},{"../utils/common":41}],51:[function(e,t,n){"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,n){"use strict";var r=e("../utils/common");function i(e){for(var t=e.length;0<=--t;)e[t]=0}var s=256,o=286,a=30,u=15,l=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],c=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],h=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],d=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],p=new Array(576);i(p);var f=new Array(60);i(f);var m=new Array(512);i(m);var w=new Array(256);i(w);var g=new Array(29);i(g);var _,b,y,v=new Array(a);function E(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}function A(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function x(e){return e<256?m[e]:m[256+(e>>>7)]}function T(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function S(e,t,n){e.bi_valid>16-n?(e.bi_buf|=t<<e.bi_valid&65535,T(e,e.bi_buf),e.bi_buf=t>>16-e.bi_valid,e.bi_valid+=n-16):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=n)}function C(e,t,n){S(e,n[2*t],n[2*t+1])}function k(e,t){for(var n=0;n|=1&e,e>>>=1,n<<=1,0<--t;);return n>>>1}function D(e,t,n){var r,i,s=new Array(16),o=0;for(r=1;r<=u;r++)s[r]=o=o+n[r-1]<<1;for(i=0;i<=t;i++){var a=e[2*i+1];0!==a&&(e[2*i]=k(s[a]++,a))}}function R(e){var t;for(t=0;t<o;t++)e.dyn_ltree[2*t]=0;for(t=0;t<a;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 O(e){8<e.bi_valid?T(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,n,r){var i=2*t,s=2*n;return e[i]<e[s]||e[i]===e[s]&&r[t]<=r[n]}function N(e,t,n){for(var r=e.heap[n],i=n<<1;i<=e.heap_len&&(i<e.heap_len&&I(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!I(t,r,e.heap[i],e.depth));)e.heap[n]=e.heap[i],n=i,i<<=1;e.heap[n]=r}function F(e,t,n){var r,i,o,a,u=0;if(0!==e.last_lit)for(;r=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===r?C(e,i,t):(C(e,(o=w[i])+s+1,t),0!==(a=l[o])&&S(e,i-=g[o],a),C(e,o=x(--r),n),0!==(a=c[o])&&S(e,r-=v[o],a)),u<e.last_lit;);C(e,256,t)}function P(e,t){var n,r,i,s=t.dyn_tree,o=t.stat_desc.static_tree,a=t.stat_desc.has_stree,l=t.stat_desc.elems,c=-1;for(e.heap_len=0,e.heap_max=573,n=0;n<l;n++)0!==s[2*n]?(e.heap[++e.heap_len]=c=n,e.depth[n]=0):s[2*n+1]=0;for(;e.heap_len<2;)s[2*(i=e.heap[++e.heap_len]=c<2?++c:0)]=1,e.depth[i]=0,e.opt_len--,a&&(e.static_len-=o[2*i+1]);for(t.max_code=c,n=e.heap_len>>1;1<=n;n--)N(e,s,n);for(i=l;n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],N(e,s,1),r=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=r,s[2*i]=s[2*n]+s[2*r],e.depth[i]=(e.depth[n]>=e.depth[r]?e.depth[n]:e.depth[r])+1,s[2*n+1]=s[2*r+1]=i,e.heap[1]=i++,N(e,s,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1],function(e,t){var n,r,i,s,o,a,l=t.dyn_tree,c=t.max_code,h=t.stat_desc.static_tree,d=t.stat_desc.has_stree,p=t.stat_desc.extra_bits,f=t.stat_desc.extra_base,m=t.stat_desc.max_length,w=0;for(s=0;s<=u;s++)e.bl_count[s]=0;for(l[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;n<573;n++)m<(s=l[2*l[2*(r=e.heap[n])+1]+1]+1)&&(s=m,w++),l[2*r+1]=s,c<r||(e.bl_count[s]++,o=0,f<=r&&(o=p[r-f]),a=l[2*r],e.opt_len+=a*(s+o),d&&(e.static_len+=a*(h[2*r+1]+o)));if(0!==w){do{for(s=m-1;0===e.bl_count[s];)s--;e.bl_count[s]--,e.bl_count[s+1]+=2,e.bl_count[m]--,w-=2}while(0<w);for(s=m;0!==s;s--)for(r=e.bl_count[s];0!==r;)c<(i=e.heap[--n])||(l[2*i+1]!==s&&(e.opt_len+=(s-l[2*i+1])*l[2*i],l[2*i+1]=s),r--)}}(e,t),D(s,c,e.bl_count)}function L(e,t,n){var r,i,s=-1,o=t[1],a=0,u=7,l=4;for(0===o&&(u=138,l=3),t[2*(n+1)+1]=65535,r=0;r<=n;r++)i=o,o=t[2*(r+1)+1],++a<u&&i===o||(a<l?e.bl_tree[2*i]+=a:0!==i?(i!==s&&e.bl_tree[2*i]++,e.bl_tree[32]++):a<=10?e.bl_tree[34]++:e.bl_tree[36]++,s=i,l=(a=0)===o?(u=138,3):i===o?(u=6,3):(u=7,4))}function B(e,t,n){var r,i,s=-1,o=t[1],a=0,u=7,l=4;for(0===o&&(u=138,l=3),r=0;r<=n;r++)if(i=o,o=t[2*(r+1)+1],!(++a<u&&i===o)){if(a<l)for(;C(e,i,e.bl_tree),0!=--a;);else 0!==i?(i!==s&&(C(e,i,e.bl_tree),a--),C(e,16,e.bl_tree),S(e,a-3,2)):a<=10?(C(e,17,e.bl_tree),S(e,a-3,3)):(C(e,18,e.bl_tree),S(e,a-11,7));s=i,l=(a=0)===o?(u=138,3):i===o?(u=6,3):(u=7,4)}}i(v);var U=!1;function M(e,t,n,i){S(e,0+(i?1:0),3),function(e,t,n,i){O(e),T(e,n),T(e,~n),r.arraySet(e.pending_buf,e.window,t,n,e.pending),e.pending+=n}(e,t,n)}n._tr_init=function(e){U||(function(){var e,t,n,r,i,s=new Array(16);for(r=n=0;r<28;r++)for(g[r]=n,e=0;e<1<<l[r];e++)w[n++]=r;for(w[n-1]=r,r=i=0;r<16;r++)for(v[r]=i,e=0;e<1<<c[r];e++)m[i++]=r;for(i>>=7;r<a;r++)for(v[r]=i<<7,e=0;e<1<<c[r]-7;e++)m[256+i++]=r;for(t=0;t<=u;t++)s[t]=0;for(e=0;e<=143;)p[2*e+1]=8,e++,s[8]++;for(;e<=255;)p[2*e+1]=9,e++,s[9]++;for(;e<=279;)p[2*e+1]=7,e++,s[7]++;for(;e<=287;)p[2*e+1]=8,e++,s[8]++;for(D(p,287,s),e=0;e<a;e++)f[2*e+1]=5,f[2*e]=k(e,5);_=new E(p,l,257,o,u),b=new E(f,c,0,a,u),y=new E(new Array(0),h,0,19,7)}(),U=!0),e.l_desc=new A(e.dyn_ltree,_),e.d_desc=new A(e.dyn_dtree,b),e.bl_desc=new A(e.bl_tree,y),e.bi_buf=0,e.bi_valid=0,R(e)},n._tr_stored_block=M,n._tr_flush_block=function(e,t,n,r){var i,o,a=0;0<e.level?(2===e.strm.data_type&&(e.strm.data_type=function(e){var t,n=4093624447;for(t=0;t<=31;t++,n>>>=1)if(1&n&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;t<s;t++)if(0!==e.dyn_ltree[2*t])return 1;return 0}(e)),P(e,e.l_desc),P(e,e.d_desc),a=function(e){var t;for(L(e,e.dyn_ltree,e.l_desc.max_code),L(e,e.dyn_dtree,e.d_desc.max_code),P(e,e.bl_desc),t=18;3<=t&&0===e.bl_tree[2*d[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),i=e.opt_len+3+7>>>3,(o=e.static_len+3+7>>>3)<=i&&(i=o)):i=o=n+5,n+4<=i&&-1!==t?M(e,t,n,r):4===e.strategy||o===i?(S(e,2+(r?1:0),3),F(e,p,f)):(S(e,4+(r?1:0),3),function(e,t,n,r){var i;for(S(e,t-257,5),S(e,n-1,5),S(e,r-4,4),i=0;i<r;i++)S(e,e.bl_tree[2*d[i]+1],3);B(e,e.dyn_ltree,t-1),B(e,e.dyn_dtree,n-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,a+1),F(e,e.dyn_ltree,e.dyn_dtree)),R(e),r&&O(e)},n._tr_tally=function(e,t,n){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&n,e.last_lit++,0===t?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(w[n]+s+1)]++,e.dyn_dtree[2*x(t)]++),e.last_lit===e.lit_bufsize-1},n._tr_align=function(e){S(e,2,3),C(e,256,p),function(e){16===e.bi_valid?(T(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8<=e.bi_valid&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},{"../utils/common":41}],53:[function(e,t,n){"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){"use strict";t.exports="function"==typeof r?r:function(){var e=[].slice.apply(arguments);e.splice(1,0,0),setTimeout.apply(null,e)}},{}]},{},[10])(10)}).call(this,n(3).Buffer,n(6),n(72).setImmediate)},,,,,function(e,t,n){"use strict";t.byteLength=function(e){var t=l(e),n=t[0],r=t[1];return 3*(n+r)/4-r},t.toByteArray=function(e){var t,n,r=l(e),o=r[0],a=r[1],u=new s(function(e,t,n){return 3*(t+n)/4-n}(0,o,a)),c=0,h=a>0?o-4:o;for(n=0;n<h;n+=4)t=i[e.charCodeAt(n)]<<18|i[e.charCodeAt(n+1)]<<12|i[e.charCodeAt(n+2)]<<6|i[e.charCodeAt(n+3)],u[c++]=t>>16&255,u[c++]=t>>8&255,u[c++]=255&t;2===a&&(t=i[e.charCodeAt(n)]<<2|i[e.charCodeAt(n+1)]>>4,u[c++]=255&t);1===a&&(t=i[e.charCodeAt(n)]<<10|i[e.charCodeAt(n+1)]<<4|i[e.charCodeAt(n+2)]>>2,u[c++]=t>>8&255,u[c++]=255&t);return u},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,s=[],o=0,a=n-i;o<a;o+=16383)s.push(c(e,o,o+16383>a?a:o+16383));1===i?(t=e[n-1],s.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],s.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return s.join("")};for(var r=[],i=[],s="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0,u=o.length;a<u;++a)r[a]=o[a],i[o.charCodeAt(a)]=a;function l(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function c(e,t,n){for(var i,s,o=[],a=t;a<n;a+=3)i=(e[a]<<16&16711680)+(e[a+1]<<8&65280)+(255&e[a+2]),o.push(r[(s=i)>>18&63]+r[s>>12&63]+r[s>>6&63]+r[63&s]);return o.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(e,t){t.read=function(e,t,n,r,i){var s,o,a=8*i-r-1,u=(1<<a)-1,l=u>>1,c=-7,h=n?i-1:0,d=n?-1:1,p=e[t+h];for(h+=d,s=p&(1<<-c)-1,p>>=-c,c+=a;c>0;s=256*s+e[t+h],h+=d,c-=8);for(o=s&(1<<-c)-1,s>>=-c,c+=r;c>0;o=256*o+e[t+h],h+=d,c-=8);if(0===s)s=1-l;else{if(s===u)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,r),s-=l}return(p?-1:1)*o*Math.pow(2,s-r)},t.write=function(e,t,n,r,i,s){var o,a,u,l=8*s-i-1,c=(1<<l)-1,h=c>>1,d=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:s-1,f=r?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,o=c):(o=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-o))<1&&(o--,u*=2),(t+=o+h>=1?d/u:d*Math.pow(2,1-h))*u>=2&&(o++,u/=2),o+h>=c?(a=0,o=c):o+h>=1?(a=(t*u-1)*Math.pow(2,i),o+=h):(a=t*Math.pow(2,h-1)*Math.pow(2,i),o=0));i>=8;e[n+p]=255&a,p+=f,a/=256,i-=8);for(o=o<<i|a,l+=i;l>0;e[n+p]=255&o,p+=f,o/=256,l-=8);e[n+p-f]|=128*m}},function(e,t){},function(e,t,n){"use strict";var r=n(44).Buffer,i=n(133);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n},e.prototype.concat=function(e){if(0===this.length)return r.alloc(0);if(1===this.length)return this.head.data;for(var t,n,i,s=r.allocUnsafe(e>>>0),o=this.head,a=0;o;)t=o.data,n=s,i=a,t.copy(n,i),a+=o.data.length,o=o.next;return s},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},function(e,t){},function(e,t,n){(function(e,t){!function(e,n){"use strict";if(!e.setImmediate){var r,i,s,o,a,u=1,l={},c=!1,h=e.document,d=Object.getPrototypeOf&&Object.getPrototypeOf(e);d=d&&d.setTimeout?d:e,"[object process]"==={}.toString.call(e.process)?r=function(e){t.nextTick((function(){f(e)}))}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?e.MessageChannel?((s=new MessageChannel).port1.onmessage=function(e){f(e.data)},r=function(e){s.port2.postMessage(e)}):h&&"onreadystatechange"in h.createElement("script")?(i=h.documentElement,r=function(e){var t=h.createElement("script");t.onreadystatechange=function(){f(e),t.onreadystatechange=null,i.removeChild(t),t=null},i.appendChild(t)}):r=function(e){setTimeout(f,0,e)}:(o="setImmediate$"+Math.random()+"$",a=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(o)&&f(+t.data.slice(o.length))},e.addEventListener?e.addEventListener("message",a,!1):e.attachEvent("onmessage",a),r=function(t){e.postMessage(o+t,"*")}),d.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n<t.length;n++)t[n]=arguments[n+1];var i={callback:e,args:t};return l[u]=i,r(u),u++},d.clearImmediate=p}function p(e){delete l[e]}function f(e){if(c)setTimeout(f,0,e);else{var t=l[e];if(t){c=!0;try{!function(e){var t=e.callback,n=e.args;switch(n.length){case 0:t();break;case 1:t(n[0]);break;case 2:t(n[0],n[1]);break;case 3:t(n[0],n[1],n[2]);break;default:t.apply(void 0,n)}}(t)}finally{p(e),c=!1}}}}}("undefined"==typeof self?void 0===e?this:e:self)}).call(this,n(6),n(14))},function(e,t,n){(function(t){function n(e){try{if(!t.localStorage)return!1}catch(e){return!1}var n=t.localStorage[e];return null!=n&&"true"===String(n).toLowerCase()}e.exports=function(e,t){if(n("noDeprecation"))return e;var r=!1;return function(){if(!r){if(n("throwDeprecation"))throw new Error(t);n("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}}}).call(this,n(6))},function(e,t,n){var r=n(3),i=r.Buffer;function s(e,t){for(var n in e)t[n]=e[n]}function o(e,t,n){return i(e,t,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=r:(s(r,t),t.Buffer=o),o.prototype=Object.create(i.prototype),s(i,o),o.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,n)},o.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=i(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},o.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},o.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},function(e,t,n){"use strict";e.exports=s;var r=n(74),i=Object.create(n(23));function s(e){if(!(this instanceof s))return new s(e);r.call(this,e)}i.inherits=n(13),i.inherits(s,r),s.prototype._transform=function(e,t,n){n(null,e)}},function(e,t,n){e.exports=n(45)},function(e,t,n){e.exports=n(10)},function(e,t,n){e.exports=n(43).Transform},function(e,t,n){e.exports=n(43).PassThrough},function(e,t,n){"use strict";const r=n(46),i=n(75),s=r.CODE_POINTS;e.exports=class{constructor(){this.html=null,this.pos=-1,this.lastGapPos=-1,this.lastCharPos=-1,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=65536}_err(){}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(e){if(this.pos!==this.lastCharPos){const t=this.html.charCodeAt(this.pos+1);if(r.isSurrogatePair(t))return this.pos++,this._addGap(),r.getSurrogatePairCodePoint(e,t)}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,s.EOF;return this._err(i.surrogateInInputStream),e}dropParsedChunk(){this.pos>this.bufferWaterline&&(this.lastCharPos-=this.pos,this.html=this.html.substring(this.pos),this.pos=0,this.lastGapPos=-1,this.gapStack=[])}write(e,t){this.html?this.html+=e:this.html=e,this.lastCharPos=this.html.length-1,this.endOfChunkHit=!1,this.lastChunkWritten=t}insertHtmlAtCurrentPos(e){this.html=this.html.substring(0,this.pos+1)+e+this.html.substring(this.pos+1,this.html.length),this.lastCharPos=this.html.length-1,this.endOfChunkHit=!1}advance(){if(this.pos++,this.pos>this.lastCharPos)return this.endOfChunkHit=!this.lastChunkWritten,s.EOF;let e=this.html.charCodeAt(this.pos);if(this.skipNextNewLine&&e===s.LINE_FEED)return this.skipNextNewLine=!1,this._addGap(),this.advance();if(e===s.CARRIAGE_RETURN)return this.skipNextNewLine=!0,s.LINE_FEED;return this.skipNextNewLine=!1,r.isSurrogate(e)&&(e=this._processSurrogate(e)),e>31&&e<127||e===s.LINE_FEED||e===s.CARRIAGE_RETURN||e>159&&e<64976||this._checkForProblematicCharacters(e),e}_checkForProblematicCharacters(e){r.isControlCodePoint(e)?this._err(i.controlCharacterInInputStream):r.isUndefinedCodePoint(e)&&this._err(i.noncharacterInInputStream)}retreat(){this.pos===this.lastGapPos&&(this.lastGapPos=this.gapStack.pop(),this.pos--),this.pos--}}},function(e,t,n){"use strict";e.exports=new Uint16Array([4,52,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,106,303,412,810,1432,1701,1796,1987,2114,2360,2420,2484,3170,3251,4140,4393,4575,4610,5106,5512,5728,6117,6274,6315,6345,6427,6516,7002,7910,8733,9323,9870,10170,10631,10893,11318,11386,11467,12773,13092,14474,14922,15448,15542,16419,17666,18166,18611,19004,19095,19298,19397,4,16,69,77,97,98,99,102,103,108,109,110,111,112,114,115,116,117,140,150,158,169,176,194,199,210,216,222,226,242,256,266,283,294,108,105,103,5,198,1,59,148,1,198,80,5,38,1,59,156,1,38,99,117,116,101,5,193,1,59,167,1,193,114,101,118,101,59,1,258,4,2,105,121,182,191,114,99,5,194,1,59,189,1,194,59,1,1040,114,59,3,55349,56580,114,97,118,101,5,192,1,59,208,1,192,112,104,97,59,1,913,97,99,114,59,1,256,100,59,1,10835,4,2,103,112,232,237,111,110,59,1,260,102,59,3,55349,56632,112,108,121,70,117,110,99,116,105,111,110,59,1,8289,105,110,103,5,197,1,59,264,1,197,4,2,99,115,272,277,114,59,3,55349,56476,105,103,110,59,1,8788,105,108,100,101,5,195,1,59,292,1,195,109,108,5,196,1,59,301,1,196,4,8,97,99,101,102,111,114,115,117,321,350,354,383,388,394,400,405,4,2,99,114,327,336,107,115,108,97,115,104,59,1,8726,4,2,118,119,342,345,59,1,10983,101,100,59,1,8966,121,59,1,1041,4,3,99,114,116,362,369,379,97,117,115,101,59,1,8757,110,111,117,108,108,105,115,59,1,8492,97,59,1,914,114,59,3,55349,56581,112,102,59,3,55349,56633,101,118,101,59,1,728,99,114,59,1,8492,109,112,101,113,59,1,8782,4,14,72,79,97,99,100,101,102,104,105,108,111,114,115,117,442,447,456,504,542,547,569,573,577,616,678,784,790,796,99,121,59,1,1063,80,89,5,169,1,59,454,1,169,4,3,99,112,121,464,470,497,117,116,101,59,1,262,4,2,59,105,476,478,1,8914,116,97,108,68,105,102,102,101,114,101,110,116,105,97,108,68,59,1,8517,108,101,121,115,59,1,8493,4,4,97,101,105,111,514,520,530,535,114,111,110,59,1,268,100,105,108,5,199,1,59,528,1,199,114,99,59,1,264,110,105,110,116,59,1,8752,111,116,59,1,266,4,2,100,110,553,560,105,108,108,97,59,1,184,116,101,114,68,111,116,59,1,183,114,59,1,8493,105,59,1,935,114,99,108,101,4,4,68,77,80,84,591,596,603,609,111,116,59,1,8857,105,110,117,115,59,1,8854,108,117,115,59,1,8853,105,109,101,115,59,1,8855,111,4,2,99,115,623,646,107,119,105,115,101,67,111,110,116,111,117,114,73,110,116,101,103,114,97,108,59,1,8754,101,67,117,114,108,121,4,2,68,81,658,671,111,117,98,108,101,81,117,111,116,101,59,1,8221,117,111,116,101,59,1,8217,4,4,108,110,112,117,688,701,736,753,111,110,4,2,59,101,696,698,1,8759,59,1,10868,4,3,103,105,116,709,717,722,114,117,101,110,116,59,1,8801,110,116,59,1,8751,111,117,114,73,110,116,101,103,114,97,108,59,1,8750,4,2,102,114,742,745,59,1,8450,111,100,117,99,116,59,1,8720,110,116,101,114,67,108,111,99,107,119,105,115,101,67,111,110,116,111,117,114,73,110,116,101,103,114,97,108,59,1,8755,111,115,115,59,1,10799,99,114,59,3,55349,56478,112,4,2,59,67,803,805,1,8915,97,112,59,1,8781,4,11,68,74,83,90,97,99,101,102,105,111,115,834,850,855,860,865,888,903,916,921,1011,1415,4,2,59,111,840,842,1,8517,116,114,97,104,100,59,1,10513,99,121,59,1,1026,99,121,59,1,1029,99,121,59,1,1039,4,3,103,114,115,873,879,883,103,101,114,59,1,8225,114,59,1,8609,104,118,59,1,10980,4,2,97,121,894,900,114,111,110,59,1,270,59,1,1044,108,4,2,59,116,910,912,1,8711,97,59,1,916,114,59,3,55349,56583,4,2,97,102,927,998,4,2,99,109,933,992,114,105,116,105,99,97,108,4,4,65,68,71,84,950,957,978,985,99,117,116,101,59,1,180,111,4,2,116,117,964,967,59,1,729,98,108,101,65,99,117,116,101,59,1,733,114,97,118,101,59,1,96,105,108,100,101,59,1,732,111,110,100,59,1,8900,102,101,114,101,110,116,105,97,108,68,59,1,8518,4,4,112,116,117,119,1021,1026,1048,1249,102,59,3,55349,56635,4,3,59,68,69,1034,1036,1041,1,168,111,116,59,1,8412,113,117,97,108,59,1,8784,98,108,101,4,6,67,68,76,82,85,86,1065,1082,1101,1189,1211,1236,111,110,116,111,117,114,73,110,116,101,103,114,97,108,59,1,8751,111,4,2,116,119,1089,1092,59,1,168,110,65,114,114,111,119,59,1,8659,4,2,101,111,1107,1141,102,116,4,3,65,82,84,1117,1124,1136,114,114,111,119,59,1,8656,105,103,104,116,65,114,114,111,119,59,1,8660,101,101,59,1,10980,110,103,4,2,76,82,1149,1177,101,102,116,4,2,65,82,1158,1165,114,114,111,119,59,1,10232,105,103,104,116,65,114,114,111,119,59,1,10234,105,103,104,116,65,114,114,111,119,59,1,10233,105,103,104,116,4,2,65,84,1199,1206,114,114,111,119,59,1,8658,101,101,59,1,8872,112,4,2,65,68,1218,1225,114,114,111,119,59,1,8657,111,119,110,65,114,114,111,119,59,1,8661,101,114,116,105,99,97,108,66,97,114,59,1,8741,110,4,6,65,66,76,82,84,97,1264,1292,1299,1352,1391,1408,114,114,111,119,4,3,59,66,85,1276,1278,1283,1,8595,97,114,59,1,10515,112,65,114,114,111,119,59,1,8693,114,101,118,101,59,1,785,101,102,116,4,3,82,84,86,1310,1323,1334,105,103,104,116,86,101,99,116,111,114,59,1,10576,101,101,86,101,99,116,111,114,59,1,10590,101,99,116,111,114,4,2,59,66,1345,1347,1,8637,97,114,59,1,10582,105,103,104,116,4,2,84,86,1362,1373,101,101,86,101,99,116,111,114,59,1,10591,101,99,116,111,114,4,2,59,66,1384,1386,1,8641,97,114,59,1,10583,101,101,4,2,59,65,1399,1401,1,8868,114,114,111,119,59,1,8615,114,114,111,119,59,1,8659,4,2,99,116,1421,1426,114,59,3,55349,56479,114,111,107,59,1,272,4,16,78,84,97,99,100,102,103,108,109,111,112,113,115,116,117,120,1466,1470,1478,1489,1515,1520,1525,1536,1544,1593,1609,1617,1650,1664,1668,1677,71,59,1,330,72,5,208,1,59,1476,1,208,99,117,116,101,5,201,1,59,1487,1,201,4,3,97,105,121,1497,1503,1512,114,111,110,59,1,282,114,99,5,202,1,59,1510,1,202,59,1,1069,111,116,59,1,278,114,59,3,55349,56584,114,97,118,101,5,200,1,59,1534,1,200,101,109,101,110,116,59,1,8712,4,2,97,112,1550,1555,99,114,59,1,274,116,121,4,2,83,86,1563,1576,109,97,108,108,83,113,117,97,114,101,59,1,9723,101,114,121,83,109,97,108,108,83,113,117,97,114,101,59,1,9643,4,2,103,112,1599,1604,111,110,59,1,280,102,59,3,55349,56636,115,105,108,111,110,59,1,917,117,4,2,97,105,1624,1640,108,4,2,59,84,1631,1633,1,10869,105,108,100,101,59,1,8770,108,105,98,114,105,117,109,59,1,8652,4,2,99,105,1656,1660,114,59,1,8496,109,59,1,10867,97,59,1,919,109,108,5,203,1,59,1675,1,203,4,2,105,112,1683,1689,115,116,115,59,1,8707,111,110,101,110,116,105,97,108,69,59,1,8519,4,5,99,102,105,111,115,1713,1717,1722,1762,1791,121,59,1,1060,114,59,3,55349,56585,108,108,101,100,4,2,83,86,1732,1745,109,97,108,108,83,113,117,97,114,101,59,1,9724,101,114,121,83,109,97,108,108,83,113,117,97,114,101,59,1,9642,4,3,112,114,117,1770,1775,1781,102,59,3,55349,56637,65,108,108,59,1,8704,114,105,101,114,116,114,102,59,1,8497,99,114,59,1,8497,4,12,74,84,97,98,99,100,102,103,111,114,115,116,1822,1827,1834,1848,1855,1877,1882,1887,1890,1896,1978,1984,99,121,59,1,1027,5,62,1,59,1832,1,62,109,109,97,4,2,59,100,1843,1845,1,915,59,1,988,114,101,118,101,59,1,286,4,3,101,105,121,1863,1869,1874,100,105,108,59,1,290,114,99,59,1,284,59,1,1043,111,116,59,1,288,114,59,3,55349,56586,59,1,8921,112,102,59,3,55349,56638,101,97,116,101,114,4,6,69,70,71,76,83,84,1915,1933,1944,1953,1959,1971,113,117,97,108,4,2,59,76,1925,1927,1,8805,101,115,115,59,1,8923,117,108,108,69,113,117,97,108,59,1,8807,114,101,97,116,101,114,59,1,10914,101,115,115,59,1,8823,108,97,110,116,69,113,117,97,108,59,1,10878,105,108,100,101,59,1,8819,99,114,59,3,55349,56482,59,1,8811,4,8,65,97,99,102,105,111,115,117,2005,2012,2026,2032,2036,2049,2073,2089,82,68,99,121,59,1,1066,4,2,99,116,2018,2023,101,107,59,1,711,59,1,94,105,114,99,59,1,292,114,59,1,8460,108,98,101,114,116,83,112,97,99,101,59,1,8459,4,2,112,114,2055,2059,102,59,1,8461,105,122,111,110,116,97,108,76,105,110,101,59,1,9472,4,2,99,116,2079,2083,114,59,1,8459,114,111,107,59,1,294,109,112,4,2,68,69,2097,2107,111,119,110,72,117,109,112,59,1,8782,113,117,97,108,59,1,8783,4,14,69,74,79,97,99,100,102,103,109,110,111,115,116,117,2144,2149,2155,2160,2171,2189,2194,2198,2209,2245,2307,2329,2334,2341,99,121,59,1,1045,108,105,103,59,1,306,99,121,59,1,1025,99,117,116,101,5,205,1,59,2169,1,205,4,2,105,121,2177,2186,114,99,5,206,1,59,2184,1,206,59,1,1048,111,116,59,1,304,114,59,1,8465,114,97,118,101,5,204,1,59,2207,1,204,4,3,59,97,112,2217,2219,2238,1,8465,4,2,99,103,2225,2229,114,59,1,298,105,110,97,114,121,73,59,1,8520,108,105,101,115,59,1,8658,4,2,116,118,2251,2281,4,2,59,101,2257,2259,1,8748,4,2,103,114,2265,2271,114,97,108,59,1,8747,115,101,99,116,105,111,110,59,1,8898,105,115,105,98,108,101,4,2,67,84,2293,2300,111,109,109,97,59,1,8291,105,109,101,115,59,1,8290,4,3,103,112,116,2315,2320,2325,111,110,59,1,302,102,59,3,55349,56640,97,59,1,921,99,114,59,1,8464,105,108,100,101,59,1,296,4,2,107,109,2347,2352,99,121,59,1,1030,108,5,207,1,59,2358,1,207,4,5,99,102,111,115,117,2372,2386,2391,2397,2414,4,2,105,121,2378,2383,114,99,59,1,308,59,1,1049,114,59,3,55349,56589,112,102,59,3,55349,56641,4,2,99,101,2403,2408,114,59,3,55349,56485,114,99,121,59,1,1032,107,99,121,59,1,1028,4,7,72,74,97,99,102,111,115,2436,2441,2446,2452,2467,2472,2478,99,121,59,1,1061,99,121,59,1,1036,112,112,97,59,1,922,4,2,101,121,2458,2464,100,105,108,59,1,310,59,1,1050,114,59,3,55349,56590,112,102,59,3,55349,56642,99,114,59,3,55349,56486,4,11,74,84,97,99,101,102,108,109,111,115,116,2508,2513,2520,2562,2585,2981,2986,3004,3011,3146,3167,99,121,59,1,1033,5,60,1,59,2518,1,60,4,5,99,109,110,112,114,2532,2538,2544,2548,2558,117,116,101,59,1,313,98,100,97,59,1,923,103,59,1,10218,108,97,99,101,116,114,102,59,1,8466,114,59,1,8606,4,3,97,101,121,2570,2576,2582,114,111,110,59,1,317,100,105,108,59,1,315,59,1,1051,4,2,102,115,2591,2907,116,4,10,65,67,68,70,82,84,85,86,97,114,2614,2663,2672,2728,2735,2760,2820,2870,2888,2895,4,2,110,114,2620,2633,103,108,101,66,114,97,99,107,101,116,59,1,10216,114,111,119,4,3,59,66,82,2644,2646,2651,1,8592,97,114,59,1,8676,105,103,104,116,65,114,114,111,119,59,1,8646,101,105,108,105,110,103,59,1,8968,111,4,2,117,119,2679,2692,98,108,101,66,114,97,99,107,101,116,59,1,10214,110,4,2,84,86,2699,2710,101,101,86,101,99,116,111,114,59,1,10593,101,99,116,111,114,4,2,59,66,2721,2723,1,8643,97,114,59,1,10585,108,111,111,114,59,1,8970,105,103,104,116,4,2,65,86,2745,2752,114,114,111,119,59,1,8596,101,99,116,111,114,59,1,10574,4,2,101,114,2766,2792,101,4,3,59,65,86,2775,2777,2784,1,8867,114,114,111,119,59,1,8612,101,99,116,111,114,59,1,10586,105,97,110,103,108,101,4,3,59,66,69,2806,2808,2813,1,8882,97,114,59,1,10703,113,117,97,108,59,1,8884,112,4,3,68,84,86,2829,2841,2852,111,119,110,86,101,99,116,111,114,59,1,10577,101,101,86,101,99,116,111,114,59,1,10592,101,99,116,111,114,4,2,59,66,2863,2865,1,8639,97,114,59,1,10584,101,99,116,111,114,4,2,59,66,2881,2883,1,8636,97,114,59,1,10578,114,114,111,119,59,1,8656,105,103,104,116,97,114,114,111,119,59,1,8660,115,4,6,69,70,71,76,83,84,2922,2936,2947,2956,2962,2974,113,117,97,108,71,114,101,97,116,101,114,59,1,8922,117,108,108,69,113,117,97,108,59,1,8806,114,101,97,116,101,114,59,1,8822,101,115,115,59,1,10913,108,97,110,116,69,113,117,97,108,59,1,10877,105,108,100,101,59,1,8818,114,59,3,55349,56591,4,2,59,101,2992,2994,1,8920,102,116,97,114,114,111,119,59,1,8666,105,100,111,116,59,1,319,4,3,110,112,119,3019,3110,3115,103,4,4,76,82,108,114,3030,3058,3070,3098,101,102,116,4,2,65,82,3039,3046,114,114,111,119,59,1,10229,105,103,104,116,65,114,114,111,119,59,1,10231,105,103,104,116,65,114,114,111,119,59,1,10230,101,102,116,4,2,97,114,3079,3086,114,114,111,119,59,1,10232,105,103,104,116,97,114,114,111,119,59,1,10234,105,103,104,116,97,114,114,111,119,59,1,10233,102,59,3,55349,56643,101,114,4,2,76,82,3123,3134,101,102,116,65,114,114,111,119,59,1,8601,105,103,104,116,65,114,114,111,119,59,1,8600,4,3,99,104,116,3154,3158,3161,114,59,1,8466,59,1,8624,114,111,107,59,1,321,59,1,8810,4,8,97,99,101,102,105,111,115,117,3188,3192,3196,3222,3227,3237,3243,3248,112,59,1,10501,121,59,1,1052,4,2,100,108,3202,3213,105,117,109,83,112,97,99,101,59,1,8287,108,105,110,116,114,102,59,1,8499,114,59,3,55349,56592,110,117,115,80,108,117,115,59,1,8723,112,102,59,3,55349,56644,99,114,59,1,8499,59,1,924,4,9,74,97,99,101,102,111,115,116,117,3271,3276,3283,3306,3422,3427,4120,4126,4137,99,121,59,1,1034,99,117,116,101,59,1,323,4,3,97,101,121,3291,3297,3303,114,111,110,59,1,327,100,105,108,59,1,325,59,1,1053,4,3,103,115,119,3314,3380,3415,97,116,105,118,101,4,3,77,84,86,3327,3340,3365,101,100,105,117,109,83,112,97,99,101,59,1,8203,104,105,4,2,99,110,3348,3357,107,83,112,97,99,101,59,1,8203,83,112,97,99,101,59,1,8203,101,114,121,84,104,105,110,83,112,97,99,101,59,1,8203,116,101,100,4,2,71,76,3389,3405,114,101,97,116,101,114,71,114,101,97,116,101,114,59,1,8811,101,115,115,76,101,115,115,59,1,8810,76,105,110,101,59,1,10,114,59,3,55349,56593,4,4,66,110,112,116,3437,3444,3460,3464,114,101,97,107,59,1,8288,66,114,101,97,107,105,110,103,83,112,97,99,101,59,1,160,102,59,1,8469,4,13,59,67,68,69,71,72,76,78,80,82,83,84,86,3492,3494,3517,3536,3578,3657,3685,3784,3823,3860,3915,4066,4107,1,10988,4,2,111,117,3500,3510,110,103,114,117,101,110,116,59,1,8802,112,67,97,112,59,1,8813,111,117,98,108,101,86,101,114,116,105,99,97,108,66,97,114,59,1,8742,4,3,108,113,120,3544,3552,3571,101,109,101,110,116,59,1,8713,117,97,108,4,2,59,84,3561,3563,1,8800,105,108,100,101,59,3,8770,824,105,115,116,115,59,1,8708,114,101,97,116,101,114,4,7,59,69,70,71,76,83,84,3600,3602,3609,3621,3631,3637,3650,1,8815,113,117,97,108,59,1,8817,117,108,108,69,113,117,97,108,59,3,8807,824,114,101,97,116,101,114,59,3,8811,824,101,115,115,59,1,8825,108,97,110,116,69,113,117,97,108,59,3,10878,824,105,108,100,101,59,1,8821,117,109,112,4,2,68,69,3666,3677,111,119,110,72,117,109,112,59,3,8782,824,113,117,97,108,59,3,8783,824,101,4,2,102,115,3692,3724,116,84,114,105,97,110,103,108,101,4,3,59,66,69,3709,3711,3717,1,8938,97,114,59,3,10703,824,113,117,97,108,59,1,8940,115,4,6,59,69,71,76,83,84,3739,3741,3748,3757,3764,3777,1,8814,113,117,97,108,59,1,8816,114,101,97,116,101,114,59,1,8824,101,115,115,59,3,8810,824,108,97,110,116,69,113,117,97,108,59,3,10877,824,105,108,100,101,59,1,8820,101,115,116,101,100,4,2,71,76,3795,3812,114,101,97,116,101,114,71,114,101,97,116,101,114,59,3,10914,824,101,115,115,76,101,115,115,59,3,10913,824,114,101,99,101,100,101,115,4,3,59,69,83,3838,3840,3848,1,8832,113,117,97,108,59,3,10927,824,108,97,110,116,69,113,117,97,108,59,1,8928,4,2,101,105,3866,3881,118,101,114,115,101,69,108,101,109,101,110,116,59,1,8716,103,104,116,84,114,105,97,110,103,108,101,4,3,59,66,69,3900,3902,3908,1,8939,97,114,59,3,10704,824,113,117,97,108,59,1,8941,4,2,113,117,3921,3973,117,97,114,101,83,117,4,2,98,112,3933,3952,115,101,116,4,2,59,69,3942,3945,3,8847,824,113,117,97,108,59,1,8930,101,114,115,101,116,4,2,59,69,3963,3966,3,8848,824,113,117,97,108,59,1,8931,4,3,98,99,112,3981,4e3,4045,115,101,116,4,2,59,69,3990,3993,3,8834,8402,113,117,97,108,59,1,8840,99,101,101,100,115,4,4,59,69,83,84,4015,4017,4025,4037,1,8833,113,117,97,108,59,3,10928,824,108,97,110,116,69,113,117,97,108,59,1,8929,105,108,100,101,59,3,8831,824,101,114,115,101,116,4,2,59,69,4056,4059,3,8835,8402,113,117,97,108,59,1,8841,105,108,100,101,4,4,59,69,70,84,4080,4082,4089,4100,1,8769,113,117,97,108,59,1,8772,117,108,108,69,113,117,97,108,59,1,8775,105,108,100,101,59,1,8777,101,114,116,105,99,97,108,66,97,114,59,1,8740,99,114,59,3,55349,56489,105,108,100,101,5,209,1,59,4135,1,209,59,1,925,4,14,69,97,99,100,102,103,109,111,112,114,115,116,117,118,4170,4176,4187,4205,4212,4217,4228,4253,4259,4292,4295,4316,4337,4346,108,105,103,59,1,338,99,117,116,101,5,211,1,59,4185,1,211,4,2,105,121,4193,4202,114,99,5,212,1,59,4200,1,212,59,1,1054,98,108,97,99,59,1,336,114,59,3,55349,56594,114,97,118,101,5,210,1,59,4226,1,210,4,3,97,101,105,4236,4241,4246,99,114,59,1,332,103,97,59,1,937,99,114,111,110,59,1,927,112,102,59,3,55349,56646,101,110,67,117,114,108,121,4,2,68,81,4272,4285,111,117,98,108,101,81,117,111,116,101,59,1,8220,117,111,116,101,59,1,8216,59,1,10836,4,2,99,108,4301,4306,114,59,3,55349,56490,97,115,104,5,216,1,59,4314,1,216,105,4,2,108,109,4323,4332,100,101,5,213,1,59,4330,1,213,101,115,59,1,10807,109,108,5,214,1,59,4344,1,214,101,114,4,2,66,80,4354,4380,4,2,97,114,4360,4364,114,59,1,8254,97,99,4,2,101,107,4372,4375,59,1,9182,101,116,59,1,9140,97,114,101,110,116,104,101,115,105,115,59,1,9180,4,9,97,99,102,104,105,108,111,114,115,4413,4422,4426,4431,4435,4438,4448,4471,4561,114,116,105,97,108,68,59,1,8706,121,59,1,1055,114,59,3,55349,56595,105,59,1,934,59,1,928,117,115,77,105,110,117,115,59,1,177,4,2,105,112,4454,4467,110,99,97,114,101,112,108,97,110,101,59,1,8460,102,59,1,8473,4,4,59,101,105,111,4481,4483,4526,4531,1,10939,99,101,100,101,115,4,4,59,69,83,84,4498,4500,4507,4519,1,8826,113,117,97,108,59,1,10927,108,97,110,116,69,113,117,97,108,59,1,8828,105,108,100,101,59,1,8830,109,101,59,1,8243,4,2,100,112,4537,4543,117,99,116,59,1,8719,111,114,116,105,111,110,4,2,59,97,4555,4557,1,8759,108,59,1,8733,4,2,99,105,4567,4572,114,59,3,55349,56491,59,1,936,4,4,85,102,111,115,4585,4594,4599,4604,79,84,5,34,1,59,4592,1,34,114,59,3,55349,56596,112,102,59,1,8474,99,114,59,3,55349,56492,4,12,66,69,97,99,101,102,104,105,111,114,115,117,4636,4642,4650,4681,4704,4763,4767,4771,5047,5069,5081,5094,97,114,114,59,1,10512,71,5,174,1,59,4648,1,174,4,3,99,110,114,4658,4664,4668,117,116,101,59,1,340,103,59,1,10219,114,4,2,59,116,4675,4677,1,8608,108,59,1,10518,4,3,97,101,121,4689,4695,4701,114,111,110,59,1,344,100,105,108,59,1,342,59,1,1056,4,2,59,118,4710,4712,1,8476,101,114,115,101,4,2,69,85,4722,4748,4,2,108,113,4728,4736,101,109,101,110,116,59,1,8715,117,105,108,105,98,114,105,117,109,59,1,8651,112,69,113,117,105,108,105,98,114,105,117,109,59,1,10607,114,59,1,8476,111,59,1,929,103,104,116,4,8,65,67,68,70,84,85,86,97,4792,4840,4849,4905,4912,4972,5022,5040,4,2,110,114,4798,4811,103,108,101,66,114,97,99,107,101,116,59,1,10217,114,111,119,4,3,59,66,76,4822,4824,4829,1,8594,97,114,59,1,8677,101,102,116,65,114,114,111,119,59,1,8644,101,105,108,105,110,103,59,1,8969,111,4,2,117,119,4856,4869,98,108,101,66,114,97,99,107,101,116,59,1,10215,110,4,2,84,86,4876,4887,101,101,86,101,99,116,111,114,59,1,10589,101,99,116,111,114,4,2,59,66,4898,4900,1,8642,97,114,59,1,10581,108,111,111,114,59,1,8971,4,2,101,114,4918,4944,101,4,3,59,65,86,4927,4929,4936,1,8866,114,114,111,119,59,1,8614,101,99,116,111,114,59,1,10587,105,97,110,103,108,101,4,3,59,66,69,4958,4960,4965,1,8883,97,114,59,1,10704,113,117,97,108,59,1,8885,112,4,3,68,84,86,4981,4993,5004,111,119,110,86,101,99,116,111,114,59,1,10575,101,101,86,101,99,116,111,114,59,1,10588,101,99,116,111,114,4,2,59,66,5015,5017,1,8638,97,114,59,1,10580,101,99,116,111,114,4,2,59,66,5033,5035,1,8640,97,114,59,1,10579,114,114,111,119,59,1,8658,4,2,112,117,5053,5057,102,59,1,8477,110,100,73,109,112,108,105,101,115,59,1,10608,105,103,104,116,97,114,114,111,119,59,1,8667,4,2,99,104,5087,5091,114,59,1,8475,59,1,8625,108,101,68,101,108,97,121,101,100,59,1,10740,4,13,72,79,97,99,102,104,105,109,111,113,115,116,117,5134,5150,5157,5164,5198,5203,5259,5265,5277,5283,5374,5380,5385,4,2,67,99,5140,5146,72,99,121,59,1,1065,121,59,1,1064,70,84,99,121,59,1,1068,99,117,116,101,59,1,346,4,5,59,97,101,105,121,5176,5178,5184,5190,5195,1,10940,114,111,110,59,1,352,100,105,108,59,1,350,114,99,59,1,348,59,1,1057,114,59,3,55349,56598,111,114,116,4,4,68,76,82,85,5216,5227,5238,5250,111,119,110,65,114,114,111,119,59,1,8595,101,102,116,65,114,114,111,119,59,1,8592,105,103,104,116,65,114,114,111,119,59,1,8594,112,65,114,114,111,119,59,1,8593,103,109,97,59,1,931,97,108,108,67,105,114,99,108,101,59,1,8728,112,102,59,3,55349,56650,4,2,114,117,5289,5293,116,59,1,8730,97,114,101,4,4,59,73,83,85,5306,5308,5322,5367,1,9633,110,116,101,114,115,101,99,116,105,111,110,59,1,8851,117,4,2,98,112,5329,5347,115,101,116,4,2,59,69,5338,5340,1,8847,113,117,97,108,59,1,8849,101,114,115,101,116,4,2,59,69,5358,5360,1,8848,113,117,97,108,59,1,8850,110,105,111,110,59,1,8852,99,114,59,3,55349,56494,97,114,59,1,8902,4,4,98,99,109,112,5395,5420,5475,5478,4,2,59,115,5401,5403,1,8912,101,116,4,2,59,69,5411,5413,1,8912,113,117,97,108,59,1,8838,4,2,99,104,5426,5468,101,101,100,115,4,4,59,69,83,84,5440,5442,5449,5461,1,8827,113,117,97,108,59,1,10928,108,97,110,116,69,113,117,97,108,59,1,8829,105,108,100,101,59,1,8831,84,104,97,116,59,1,8715,59,1,8721,4,3,59,101,115,5486,5488,5507,1,8913,114,115,101,116,4,2,59,69,5498,5500,1,8835,113,117,97,108,59,1,8839,101,116,59,1,8913,4,11,72,82,83,97,99,102,104,105,111,114,115,5536,5546,5552,5567,5579,5602,5607,5655,5695,5701,5711,79,82,78,5,222,1,59,5544,1,222,65,68,69,59,1,8482,4,2,72,99,5558,5563,99,121,59,1,1035,121,59,1,1062,4,2,98,117,5573,5576,59,1,9,59,1,932,4,3,97,101,121,5587,5593,5599,114,111,110,59,1,356,100,105,108,59,1,354,59,1,1058,114,59,3,55349,56599,4,2,101,105,5613,5631,4,2,114,116,5619,5627,101,102,111,114,101,59,1,8756,97,59,1,920,4,2,99,110,5637,5647,107,83,112,97,99,101,59,3,8287,8202,83,112,97,99,101,59,1,8201,108,100,101,4,4,59,69,70,84,5668,5670,5677,5688,1,8764,113,117,97,108,59,1,8771,117,108,108,69,113,117,97,108,59,1,8773,105,108,100,101,59,1,8776,112,102,59,3,55349,56651,105,112,108,101,68,111,116,59,1,8411,4,2,99,116,5717,5722,114,59,3,55349,56495,114,111,107,59,1,358,4,14,97,98,99,100,102,103,109,110,111,112,114,115,116,117,5758,5789,5805,5823,5830,5835,5846,5852,5921,5937,6089,6095,6101,6108,4,2,99,114,5764,5774,117,116,101,5,218,1,59,5772,1,218,114,4,2,59,111,5781,5783,1,8607,99,105,114,59,1,10569,114,4,2,99,101,5796,5800,121,59,1,1038,118,101,59,1,364,4,2,105,121,5811,5820,114,99,5,219,1,59,5818,1,219,59,1,1059,98,108,97,99,59,1,368,114,59,3,55349,56600,114,97,118,101,5,217,1,59,5844,1,217,97,99,114,59,1,362,4,2,100,105,5858,5905,101,114,4,2,66,80,5866,5892,4,2,97,114,5872,5876,114,59,1,95,97,99,4,2,101,107,5884,5887,59,1,9183,101,116,59,1,9141,97,114,101,110,116,104,101,115,105,115,59,1,9181,111,110,4,2,59,80,5913,5915,1,8899,108,117,115,59,1,8846,4,2,103,112,5927,5932,111,110,59,1,370,102,59,3,55349,56652,4,8,65,68,69,84,97,100,112,115,5955,5985,5996,6009,6026,6033,6044,6075,114,114,111,119,4,3,59,66,68,5967,5969,5974,1,8593,97,114,59,1,10514,111,119,110,65,114,114,111,119,59,1,8645,111,119,110,65,114,114,111,119,59,1,8597,113,117,105,108,105,98,114,105,117,109,59,1,10606,101,101,4,2,59,65,6017,6019,1,8869,114,114,111,119,59,1,8613,114,114,111,119,59,1,8657,111,119,110,97,114,114,111,119,59,1,8661,101,114,4,2,76,82,6052,6063,101,102,116,65,114,114,111,119,59,1,8598,105,103,104,116,65,114,114,111,119,59,1,8599,105,4,2,59,108,6082,6084,1,978,111,110,59,1,933,105,110,103,59,1,366,99,114,59,3,55349,56496,105,108,100,101,59,1,360,109,108,5,220,1,59,6115,1,220,4,9,68,98,99,100,101,102,111,115,118,6137,6143,6148,6152,6166,6250,6255,6261,6267,97,115,104,59,1,8875,97,114,59,1,10987,121,59,1,1042,97,115,104,4,2,59,108,6161,6163,1,8873,59,1,10982,4,2,101,114,6172,6175,59,1,8897,4,3,98,116,121,6183,6188,6238,97,114,59,1,8214,4,2,59,105,6194,6196,1,8214,99,97,108,4,4,66,76,83,84,6209,6214,6220,6231,97,114,59,1,8739,105,110,101,59,1,124,101,112,97,114,97,116,111,114,59,1,10072,105,108,100,101,59,1,8768,84,104,105,110,83,112,97,99,101,59,1,8202,114,59,3,55349,56601,112,102,59,3,55349,56653,99,114,59,3,55349,56497,100,97,115,104,59,1,8874,4,5,99,101,102,111,115,6286,6292,6298,6303,6309,105,114,99,59,1,372,100,103,101,59,1,8896,114,59,3,55349,56602,112,102,59,3,55349,56654,99,114,59,3,55349,56498,4,4,102,105,111,115,6325,6330,6333,6339,114,59,3,55349,56603,59,1,926,112,102,59,3,55349,56655,99,114,59,3,55349,56499,4,9,65,73,85,97,99,102,111,115,117,6365,6370,6375,6380,6391,6405,6410,6416,6422,99,121,59,1,1071,99,121,59,1,1031,99,121,59,1,1070,99,117,116,101,5,221,1,59,6389,1,221,4,2,105,121,6397,6402,114,99,59,1,374,59,1,1067,114,59,3,55349,56604,112,102,59,3,55349,56656,99,114,59,3,55349,56500,109,108,59,1,376,4,8,72,97,99,100,101,102,111,115,6445,6450,6457,6472,6477,6501,6505,6510,99,121,59,1,1046,99,117,116,101,59,1,377,4,2,97,121,6463,6469,114,111,110,59,1,381,59,1,1047,111,116,59,1,379,4,2,114,116,6483,6497,111,87,105,100,116,104,83,112,97,99,101,59,1,8203,97,59,1,918,114,59,1,8488,112,102,59,1,8484,99,114,59,3,55349,56501,4,16,97,98,99,101,102,103,108,109,110,111,112,114,115,116,117,119,6550,6561,6568,6612,6622,6634,6645,6672,6699,6854,6870,6923,6933,6963,6974,6983,99,117,116,101,5,225,1,59,6559,1,225,114,101,118,101,59,1,259,4,6,59,69,100,105,117,121,6582,6584,6588,6591,6600,6609,1,8766,59,3,8766,819,59,1,8767,114,99,5,226,1,59,6598,1,226,116,101,5,180,1,59,6607,1,180,59,1,1072,108,105,103,5,230,1,59,6620,1,230,4,2,59,114,6628,6630,1,8289,59,3,55349,56606,114,97,118,101,5,224,1,59,6643,1,224,4,2,101,112,6651,6667,4,2,102,112,6657,6663,115,121,109,59,1,8501,104,59,1,8501,104,97,59,1,945,4,2,97,112,6678,6692,4,2,99,108,6684,6688,114,59,1,257,103,59,1,10815,5,38,1,59,6697,1,38,4,2,100,103,6705,6737,4,5,59,97,100,115,118,6717,6719,6724,6727,6734,1,8743,110,100,59,1,10837,59,1,10844,108,111,112,101,59,1,10840,59,1,10842,4,7,59,101,108,109,114,115,122,6753,6755,6758,6762,6814,6835,6848,1,8736,59,1,10660,101,59,1,8736,115,100,4,2,59,97,6770,6772,1,8737,4,8,97,98,99,100,101,102,103,104,6790,6793,6796,6799,6802,6805,6808,6811,59,1,10664,59,1,10665,59,1,10666,59,1,10667,59,1,10668,59,1,10669,59,1,10670,59,1,10671,116,4,2,59,118,6821,6823,1,8735,98,4,2,59,100,6830,6832,1,8894,59,1,10653,4,2,112,116,6841,6845,104,59,1,8738,59,1,197,97,114,114,59,1,9084,4,2,103,112,6860,6865,111,110,59,1,261,102,59,3,55349,56658,4,7,59,69,97,101,105,111,112,6886,6888,6891,6897,6900,6904,6908,1,8776,59,1,10864,99,105,114,59,1,10863,59,1,8778,100,59,1,8779,115,59,1,39,114,111,120,4,2,59,101,6917,6919,1,8776,113,59,1,8778,105,110,103,5,229,1,59,6931,1,229,4,3,99,116,121,6941,6946,6949,114,59,3,55349,56502,59,1,42,109,112,4,2,59,101,6957,6959,1,8776,113,59,1,8781,105,108,100,101,5,227,1,59,6972,1,227,109,108,5,228,1,59,6981,1,228,4,2,99,105,6989,6997,111,110,105,110,116,59,1,8755,110,116,59,1,10769,4,16,78,97,98,99,100,101,102,105,107,108,110,111,112,114,115,117,7036,7041,7119,7135,7149,7155,7219,7224,7347,7354,7463,7489,7786,7793,7814,7866,111,116,59,1,10989,4,2,99,114,7047,7094,107,4,4,99,101,112,115,7058,7064,7073,7080,111,110,103,59,1,8780,112,115,105,108,111,110,59,1,1014,114,105,109,101,59,1,8245,105,109,4,2,59,101,7088,7090,1,8765,113,59,1,8909,4,2,118,119,7100,7105,101,101,59,1,8893,101,100,4,2,59,103,7113,7115,1,8965,101,59,1,8965,114,107,4,2,59,116,7127,7129,1,9141,98,114,107,59,1,9142,4,2,111,121,7141,7146,110,103,59,1,8780,59,1,1073,113,117,111,59,1,8222,4,5,99,109,112,114,116,7167,7181,7188,7193,7199,97,117,115,4,2,59,101,7176,7178,1,8757,59,1,8757,112,116,121,118,59,1,10672,115,105,59,1,1014,110,111,117,59,1,8492,4,3,97,104,119,7207,7210,7213,59,1,946,59,1,8502,101,101,110,59,1,8812,114,59,3,55349,56607,103,4,7,99,111,115,116,117,118,119,7241,7262,7288,7305,7328,7335,7340,4,3,97,105,117,7249,7253,7258,112,59,1,8898,114,99,59,1,9711,112,59,1,8899,4,3,100,112,116,7270,7275,7281,111,116,59,1,10752,108,117,115,59,1,10753,105,109,101,115,59,1,10754,4,2,113,116,7294,7300,99,117,112,59,1,10758,97,114,59,1,9733,114,105,97,110,103,108,101,4,2,100,117,7318,7324,111,119,110,59,1,9661,112,59,1,9651,112,108,117,115,59,1,10756,101,101,59,1,8897,101,100,103,101,59,1,8896,97,114,111,119,59,1,10509,4,3,97,107,111,7362,7436,7458,4,2,99,110,7368,7432,107,4,3,108,115,116,7377,7386,7394,111,122,101,110,103,101,59,1,10731,113,117,97,114,101,59,1,9642,114,105,97,110,103,108,101,4,4,59,100,108,114,7411,7413,7419,7425,1,9652,111,119,110,59,1,9662,101,102,116,59,1,9666,105,103,104,116,59,1,9656,107,59,1,9251,4,2,49,51,7442,7454,4,2,50,52,7448,7451,59,1,9618,59,1,9617,52,59,1,9619,99,107,59,1,9608,4,2,101,111,7469,7485,4,2,59,113,7475,7478,3,61,8421,117,105,118,59,3,8801,8421,116,59,1,8976,4,4,112,116,119,120,7499,7504,7517,7523,102,59,3,55349,56659,4,2,59,116,7510,7512,1,8869,111,109,59,1,8869,116,105,101,59,1,8904,4,12,68,72,85,86,98,100,104,109,112,116,117,118,7549,7571,7597,7619,7655,7660,7682,7708,7715,7721,7728,7750,4,4,76,82,108,114,7559,7562,7565,7568,59,1,9559,59,1,9556,59,1,9558,59,1,9555,4,5,59,68,85,100,117,7583,7585,7588,7591,7594,1,9552,59,1,9574,59,1,9577,59,1,9572,59,1,9575,4,4,76,82,108,114,7607,7610,7613,7616,59,1,9565,59,1,9562,59,1,9564,59,1,9561,4,7,59,72,76,82,104,108,114,7635,7637,7640,7643,7646,7649,7652,1,9553,59,1,9580,59,1,9571,59,1,9568,59,1,9579,59,1,9570,59,1,9567,111,120,59,1,10697,4,4,76,82,108,114,7670,7673,7676,7679,59,1,9557,59,1,9554,59,1,9488,59,1,9484,4,5,59,68,85,100,117,7694,7696,7699,7702,7705,1,9472,59,1,9573,59,1,9576,59,1,9516,59,1,9524,105,110,117,115,59,1,8863,108,117,115,59,1,8862,105,109,101,115,59,1,8864,4,4,76,82,108,114,7738,7741,7744,7747,59,1,9563,59,1,9560,59,1,9496,59,1,9492,4,7,59,72,76,82,104,108,114,7766,7768,7771,7774,7777,7780,7783,1,9474,59,1,9578,59,1,9569,59,1,9566,59,1,9532,59,1,9508,59,1,9500,114,105,109,101,59,1,8245,4,2,101,118,7799,7804,118,101,59,1,728,98,97,114,5,166,1,59,7812,1,166,4,4,99,101,105,111,7824,7829,7834,7846,114,59,3,55349,56503,109,105,59,1,8271,109,4,2,59,101,7841,7843,1,8765,59,1,8909,108,4,3,59,98,104,7855,7857,7860,1,92,59,1,10693,115,117,98,59,1,10184,4,2,108,109,7872,7885,108,4,2,59,101,7879,7881,1,8226,116,59,1,8226,112,4,3,59,69,101,7894,7896,7899,1,8782,59,1,10926,4,2,59,113,7905,7907,1,8783,59,1,8783,4,15,97,99,100,101,102,104,105,108,111,114,115,116,117,119,121,7942,8021,8075,8080,8121,8126,8157,8279,8295,8430,8446,8485,8491,8707,8726,4,3,99,112,114,7950,7956,8007,117,116,101,59,1,263,4,6,59,97,98,99,100,115,7970,7972,7977,7984,7998,8003,1,8745,110,100,59,1,10820,114,99,117,112,59,1,10825,4,2,97,117,7990,7994,112,59,1,10827,112,59,1,10823,111,116,59,1,10816,59,3,8745,65024,4,2,101,111,8013,8017,116,59,1,8257,110,59,1,711,4,4,97,101,105,117,8031,8046,8056,8061,4,2,112,114,8037,8041,115,59,1,10829,111,110,59,1,269,100,105,108,5,231,1,59,8054,1,231,114,99,59,1,265,112,115,4,2,59,115,8069,8071,1,10828,109,59,1,10832,111,116,59,1,267,4,3,100,109,110,8088,8097,8104,105,108,5,184,1,59,8095,1,184,112,116,121,118,59,1,10674,116,5,162,2,59,101,8112,8114,1,162,114,100,111,116,59,1,183,114,59,3,55349,56608,4,3,99,101,105,8134,8138,8154,121,59,1,1095,99,107,4,2,59,109,8146,8148,1,10003,97,114,107,59,1,10003,59,1,967,114,4,7,59,69,99,101,102,109,115,8174,8176,8179,8258,8261,8268,8273,1,9675,59,1,10691,4,3,59,101,108,8187,8189,8193,1,710,113,59,1,8791,101,4,2,97,100,8200,8223,114,114,111,119,4,2,108,114,8210,8216,101,102,116,59,1,8634,105,103,104,116,59,1,8635,4,5,82,83,97,99,100,8235,8238,8241,8246,8252,59,1,174,59,1,9416,115,116,59,1,8859,105,114,99,59,1,8858,97,115,104,59,1,8861,59,1,8791,110,105,110,116,59,1,10768,105,100,59,1,10991,99,105,114,59,1,10690,117,98,115,4,2,59,117,8288,8290,1,9827,105,116,59,1,9827,4,4,108,109,110,112,8305,8326,8376,8400,111,110,4,2,59,101,8313,8315,1,58,4,2,59,113,8321,8323,1,8788,59,1,8788,4,2,109,112,8332,8344,97,4,2,59,116,8339,8341,1,44,59,1,64,4,3,59,102,108,8352,8354,8358,1,8705,110,59,1,8728,101,4,2,109,120,8365,8371,101,110,116,59,1,8705,101,115,59,1,8450,4,2,103,105,8382,8395,4,2,59,100,8388,8390,1,8773,111,116,59,1,10861,110,116,59,1,8750,4,3,102,114,121,8408,8412,8417,59,3,55349,56660,111,100,59,1,8720,5,169,2,59,115,8424,8426,1,169,114,59,1,8471,4,2,97,111,8436,8441,114,114,59,1,8629,115,115,59,1,10007,4,2,99,117,8452,8457,114,59,3,55349,56504,4,2,98,112,8463,8474,4,2,59,101,8469,8471,1,10959,59,1,10961,4,2,59,101,8480,8482,1,10960,59,1,10962,100,111,116,59,1,8943,4,7,100,101,108,112,114,118,119,8507,8522,8536,8550,8600,8697,8702,97,114,114,4,2,108,114,8516,8519,59,1,10552,59,1,10549,4,2,112,115,8528,8532,114,59,1,8926,99,59,1,8927,97,114,114,4,2,59,112,8545,8547,1,8630,59,1,10557,4,6,59,98,99,100,111,115,8564,8566,8573,8587,8592,8596,1,8746,114,99,97,112,59,1,10824,4,2,97,117,8579,8583,112,59,1,10822,112,59,1,10826,111,116,59,1,8845,114,59,1,10821,59,3,8746,65024,4,4,97,108,114,118,8610,8623,8663,8672,114,114,4,2,59,109,8618,8620,1,8631,59,1,10556,121,4,3,101,118,119,8632,8651,8656,113,4,2,112,115,8639,8645,114,101,99,59,1,8926,117,99,99,59,1,8927,101,101,59,1,8910,101,100,103,101,59,1,8911,101,110,5,164,1,59,8670,1,164,101,97,114,114,111,119,4,2,108,114,8684,8690,101,102,116,59,1,8630,105,103,104,116,59,1,8631,101,101,59,1,8910,101,100,59,1,8911,4,2,99,105,8713,8721,111,110,105,110,116,59,1,8754,110,116,59,1,8753,108,99,116,121,59,1,9005,4,19,65,72,97,98,99,100,101,102,104,105,106,108,111,114,115,116,117,119,122,8773,8778,8783,8821,8839,8854,8887,8914,8930,8944,9036,9041,9058,9197,9227,9258,9281,9297,9305,114,114,59,1,8659,97,114,59,1,10597,4,4,103,108,114,115,8793,8799,8805,8809,103,101,114,59,1,8224,101,116,104,59,1,8504,114,59,1,8595,104,4,2,59,118,8816,8818,1,8208,59,1,8867,4,2,107,108,8827,8834,97,114,111,119,59,1,10511,97,99,59,1,733,4,2,97,121,8845,8851,114,111,110,59,1,271,59,1,1076,4,3,59,97,111,8862,8864,8880,1,8518,4,2,103,114,8870,8876,103,101,114,59,1,8225,114,59,1,8650,116,115,101,113,59,1,10871,4,3,103,108,109,8895,8902,8907,5,176,1,59,8900,1,176,116,97,59,1,948,112,116,121,118,59,1,10673,4,2,105,114,8920,8926,115,104,116,59,1,10623,59,3,55349,56609,97,114,4,2,108,114,8938,8941,59,1,8643,59,1,8642,4,5,97,101,103,115,118,8956,8986,8989,8996,9001,109,4,3,59,111,115,8965,8967,8983,1,8900,110,100,4,2,59,115,8975,8977,1,8900,117,105,116,59,1,9830,59,1,9830,59,1,168,97,109,109,97,59,1,989,105,110,59,1,8946,4,3,59,105,111,9009,9011,9031,1,247,100,101,5,247,2,59,111,9020,9022,1,247,110,116,105,109,101,115,59,1,8903,110,120,59,1,8903,99,121,59,1,1106,99,4,2,111,114,9048,9053,114,110,59,1,8990,111,112,59,1,8973,4,5,108,112,116,117,119,9070,9076,9081,9130,9144,108,97,114,59,1,36,102,59,3,55349,56661,4,5,59,101,109,112,115,9093,9095,9109,9116,9122,1,729,113,4,2,59,100,9102,9104,1,8784,111,116,59,1,8785,105,110,117,115,59,1,8760,108,117,115,59,1,8724,113,117,97,114,101,59,1,8865,98,108,101,98,97,114,119,101,100,103,101,59,1,8966,110,4,3,97,100,104,9153,9160,9172,114,114,111,119,59,1,8595,111,119,110,97,114,114,111,119,115,59,1,8650,97,114,112,111,111,110,4,2,108,114,9184,9190,101,102,116,59,1,8643,105,103,104,116,59,1,8642,4,2,98,99,9203,9211,107,97,114,111,119,59,1,10512,4,2,111,114,9217,9222,114,110,59,1,8991,111,112,59,1,8972,4,3,99,111,116,9235,9248,9252,4,2,114,121,9241,9245,59,3,55349,56505,59,1,1109,108,59,1,10742,114,111,107,59,1,273,4,2,100,114,9264,9269,111,116,59,1,8945,105,4,2,59,102,9276,9278,1,9663,59,1,9662,4,2,97,104,9287,9292,114,114,59,1,8693,97,114,59,1,10607,97,110,103,108,101,59,1,10662,4,2,99,105,9311,9315,121,59,1,1119,103,114,97,114,114,59,1,10239,4,18,68,97,99,100,101,102,103,108,109,110,111,112,113,114,115,116,117,120,9361,9376,9398,9439,9444,9447,9462,9495,9531,9585,9598,9614,9659,9755,9771,9792,9808,9826,4,2,68,111,9367,9372,111,116,59,1,10871,116,59,1,8785,4,2,99,115,9382,9392,117,116,101,5,233,1,59,9390,1,233,116,101,114,59,1,10862,4,4,97,105,111,121,9408,9414,9430,9436,114,111,110,59,1,283,114,4,2,59,99,9421,9423,1,8790,5,234,1,59,9428,1,234,108,111,110,59,1,8789,59,1,1101,111,116,59,1,279,59,1,8519,4,2,68,114,9453,9458,111,116,59,1,8786,59,3,55349,56610,4,3,59,114,115,9470,9472,9482,1,10906,97,118,101,5,232,1,59,9480,1,232,4,2,59,100,9488,9490,1,10902,111,116,59,1,10904,4,4,59,105,108,115,9505,9507,9515,9518,1,10905,110,116,101,114,115,59,1,9191,59,1,8467,4,2,59,100,9524,9526,1,10901,111,116,59,1,10903,4,3,97,112,115,9539,9544,9564,99,114,59,1,275,116,121,4,3,59,115,118,9554,9556,9561,1,8709,101,116,59,1,8709,59,1,8709,112,4,2,49,59,9571,9583,4,2,51,52,9577,9580,59,1,8196,59,1,8197,1,8195,4,2,103,115,9591,9594,59,1,331,112,59,1,8194,4,2,103,112,9604,9609,111,110,59,1,281,102,59,3,55349,56662,4,3,97,108,115,9622,9635,9640,114,4,2,59,115,9629,9631,1,8917,108,59,1,10723,117,115,59,1,10865,105,4,3,59,108,118,9649,9651,9656,1,949,111,110,59,1,949,59,1,1013,4,4,99,115,117,118,9669,9686,9716,9747,4,2,105,111,9675,9680,114,99,59,1,8790,108,111,110,59,1,8789,4,2,105,108,9692,9696,109,59,1,8770,97,110,116,4,2,103,108,9705,9710,116,114,59,1,10902,101,115,115,59,1,10901,4,3,97,101,105,9724,9729,9734,108,115,59,1,61,115,116,59,1,8799,118,4,2,59,68,9741,9743,1,8801,68,59,1,10872,112,97,114,115,108,59,1,10725,4,2,68,97,9761,9766,111,116,59,1,8787,114,114,59,1,10609,4,3,99,100,105,9779,9783,9788,114,59,1,8495,111,116,59,1,8784,109,59,1,8770,4,2,97,104,9798,9801,59,1,951,5,240,1,59,9806,1,240,4,2,109,114,9814,9822,108,5,235,1,59,9820,1,235,111,59,1,8364,4,3,99,105,112,9834,9838,9843,108,59,1,33,115,116,59,1,8707,4,2,101,111,9849,9859,99,116,97,116,105,111,110,59,1,8496,110,101,110,116,105,97,108,101,59,1,8519,4,12,97,99,101,102,105,106,108,110,111,112,114,115,9896,9910,9914,9921,9954,9960,9967,9989,9994,10027,10036,10164,108,108,105,110,103,100,111,116,115,101,113,59,1,8786,121,59,1,1092,109,97,108,101,59,1,9792,4,3,105,108,114,9929,9935,9950,108,105,103,59,1,64259,4,2,105,108,9941,9945,103,59,1,64256,105,103,59,1,64260,59,3,55349,56611,108,105,103,59,1,64257,108,105,103,59,3,102,106,4,3,97,108,116,9975,9979,9984,116,59,1,9837,105,103,59,1,64258,110,115,59,1,9649,111,102,59,1,402,4,2,112,114,1e4,10005,102,59,3,55349,56663,4,2,97,107,10011,10016,108,108,59,1,8704,4,2,59,118,10022,10024,1,8916,59,1,10969,97,114,116,105,110,116,59,1,10765,4,2,97,111,10042,10159,4,2,99,115,10048,10155,4,6,49,50,51,52,53,55,10062,10102,10114,10135,10139,10151,4,6,50,51,52,53,54,56,10076,10083,10086,10093,10096,10099,5,189,1,59,10081,1,189,59,1,8531,5,188,1,59,10091,1,188,59,1,8533,59,1,8537,59,1,8539,4,2,51,53,10108,10111,59,1,8532,59,1,8534,4,3,52,53,56,10122,10129,10132,5,190,1,59,10127,1,190,59,1,8535,59,1,8540,53,59,1,8536,4,2,54,56,10145,10148,59,1,8538,59,1,8541,56,59,1,8542,108,59,1,8260,119,110,59,1,8994,99,114,59,3,55349,56507,4,17,69,97,98,99,100,101,102,103,105,106,108,110,111,114,115,116,118,10206,10217,10247,10254,10268,10273,10358,10363,10374,10380,10385,10406,10458,10464,10470,10497,10610,4,2,59,108,10212,10214,1,8807,59,1,10892,4,3,99,109,112,10225,10231,10244,117,116,101,59,1,501,109,97,4,2,59,100,10239,10241,1,947,59,1,989,59,1,10886,114,101,118,101,59,1,287,4,2,105,121,10260,10265,114,99,59,1,285,59,1,1075,111,116,59,1,289,4,4,59,108,113,115,10283,10285,10288,10308,1,8805,59,1,8923,4,3,59,113,115,10296,10298,10301,1,8805,59,1,8807,108,97,110,116,59,1,10878,4,4,59,99,100,108,10318,10320,10324,10345,1,10878,99,59,1,10921,111,116,4,2,59,111,10332,10334,1,10880,4,2,59,108,10340,10342,1,10882,59,1,10884,4,2,59,101,10351,10354,3,8923,65024,115,59,1,10900,114,59,3,55349,56612,4,2,59,103,10369,10371,1,8811,59,1,8921,109,101,108,59,1,8503,99,121,59,1,1107,4,4,59,69,97,106,10395,10397,10400,10403,1,8823,59,1,10898,59,1,10917,59,1,10916,4,4,69,97,101,115,10416,10419,10434,10453,59,1,8809,112,4,2,59,112,10426,10428,1,10890,114,111,120,59,1,10890,4,2,59,113,10440,10442,1,10888,4,2,59,113,10448,10450,1,10888,59,1,8809,105,109,59,1,8935,112,102,59,3,55349,56664,97,118,101,59,1,96,4,2,99,105,10476,10480,114,59,1,8458,109,4,3,59,101,108,10489,10491,10494,1,8819,59,1,10894,59,1,10896,5,62,6,59,99,100,108,113,114,10512,10514,10527,10532,10538,10545,1,62,4,2,99,105,10520,10523,59,1,10919,114,59,1,10874,111,116,59,1,8919,80,97,114,59,1,10645,117,101,115,116,59,1,10876,4,5,97,100,101,108,115,10557,10574,10579,10599,10605,4,2,112,114,10563,10570,112,114,111,120,59,1,10886,114,59,1,10616,111,116,59,1,8919,113,4,2,108,113,10586,10592,101,115,115,59,1,8923,108,101,115,115,59,1,10892,101,115,115,59,1,8823,105,109,59,1,8819,4,2,101,110,10616,10626,114,116,110,101,113,113,59,3,8809,65024,69,59,3,8809,65024,4,10,65,97,98,99,101,102,107,111,115,121,10653,10658,10713,10718,10724,10760,10765,10786,10850,10875,114,114,59,1,8660,4,4,105,108,109,114,10668,10674,10678,10684,114,115,112,59,1,8202,102,59,1,189,105,108,116,59,1,8459,4,2,100,114,10690,10695,99,121,59,1,1098,4,3,59,99,119,10703,10705,10710,1,8596,105,114,59,1,10568,59,1,8621,97,114,59,1,8463,105,114,99,59,1,293,4,3,97,108,114,10732,10748,10754,114,116,115,4,2,59,117,10741,10743,1,9829,105,116,59,1,9829,108,105,112,59,1,8230,99,111,110,59,1,8889,114,59,3,55349,56613,115,4,2,101,119,10772,10779,97,114,111,119,59,1,10533,97,114,111,119,59,1,10534,4,5,97,109,111,112,114,10798,10803,10809,10839,10844,114,114,59,1,8703,116,104,116,59,1,8763,107,4,2,108,114,10816,10827,101,102,116,97,114,114,111,119,59,1,8617,105,103,104,116,97,114,114,111,119,59,1,8618,102,59,3,55349,56665,98,97,114,59,1,8213,4,3,99,108,116,10858,10863,10869,114,59,3,55349,56509,97,115,104,59,1,8463,114,111,107,59,1,295,4,2,98,112,10881,10887,117,108,108,59,1,8259,104,101,110,59,1,8208,4,15,97,99,101,102,103,105,106,109,110,111,112,113,115,116,117,10925,10936,10958,10977,10990,11001,11039,11045,11101,11192,11220,11226,11237,11285,11299,99,117,116,101,5,237,1,59,10934,1,237,4,3,59,105,121,10944,10946,10955,1,8291,114,99,5,238,1,59,10953,1,238,59,1,1080,4,2,99,120,10964,10968,121,59,1,1077,99,108,5,161,1,59,10975,1,161,4,2,102,114,10983,10986,59,1,8660,59,3,55349,56614,114,97,118,101,5,236,1,59,10999,1,236,4,4,59,105,110,111,11011,11013,11028,11034,1,8520,4,2,105,110,11019,11024,110,116,59,1,10764,116,59,1,8749,102,105,110,59,1,10716,116,97,59,1,8489,108,105,103,59,1,307,4,3,97,111,112,11053,11092,11096,4,3,99,103,116,11061,11065,11088,114,59,1,299,4,3,101,108,112,11073,11076,11082,59,1,8465,105,110,101,59,1,8464,97,114,116,59,1,8465,104,59,1,305,102,59,1,8887,101,100,59,1,437,4,5,59,99,102,111,116,11113,11115,11121,11136,11142,1,8712,97,114,101,59,1,8453,105,110,4,2,59,116,11129,11131,1,8734,105,101,59,1,10717,100,111,116,59,1,305,4,5,59,99,101,108,112,11154,11156,11161,11179,11186,1,8747,97,108,59,1,8890,4,2,103,114,11167,11173,101,114,115,59,1,8484,99,97,108,59,1,8890,97,114,104,107,59,1,10775,114,111,100,59,1,10812,4,4,99,103,112,116,11202,11206,11211,11216,121,59,1,1105,111,110,59,1,303,102,59,3,55349,56666,97,59,1,953,114,111,100,59,1,10812,117,101,115,116,5,191,1,59,11235,1,191,4,2,99,105,11243,11248,114,59,3,55349,56510,110,4,5,59,69,100,115,118,11261,11263,11266,11271,11282,1,8712,59,1,8953,111,116,59,1,8949,4,2,59,118,11277,11279,1,8948,59,1,8947,59,1,8712,4,2,59,105,11291,11293,1,8290,108,100,101,59,1,297,4,2,107,109,11305,11310,99,121,59,1,1110,108,5,239,1,59,11316,1,239,4,6,99,102,109,111,115,117,11332,11346,11351,11357,11363,11380,4,2,105,121,11338,11343,114,99,59,1,309,59,1,1081,114,59,3,55349,56615,97,116,104,59,1,567,112,102,59,3,55349,56667,4,2,99,101,11369,11374,114,59,3,55349,56511,114,99,121,59,1,1112,107,99,121,59,1,1108,4,8,97,99,102,103,104,106,111,115,11404,11418,11433,11438,11445,11450,11455,11461,112,112,97,4,2,59,118,11413,11415,1,954,59,1,1008,4,2,101,121,11424,11430,100,105,108,59,1,311,59,1,1082,114,59,3,55349,56616,114,101,101,110,59,1,312,99,121,59,1,1093,99,121,59,1,1116,112,102,59,3,55349,56668,99,114,59,3,55349,56512,4,23,65,66,69,72,97,98,99,100,101,102,103,104,106,108,109,110,111,112,114,115,116,117,118,11515,11538,11544,11555,11560,11721,11780,11818,11868,12136,12160,12171,12203,12208,12246,12275,12327,12509,12523,12569,12641,12732,12752,4,3,97,114,116,11523,11528,11532,114,114,59,1,8666,114,59,1,8656,97,105,108,59,1,10523,97,114,114,59,1,10510,4,2,59,103,11550,11552,1,8806,59,1,10891,97,114,59,1,10594,4,9,99,101,103,109,110,112,113,114,116,11580,11586,11594,11600,11606,11624,11627,11636,11694,117,116,101,59,1,314,109,112,116,121,118,59,1,10676,114,97,110,59,1,8466,98,100,97,59,1,955,103,4,3,59,100,108,11615,11617,11620,1,10216,59,1,10641,101,59,1,10216,59,1,10885,117,111,5,171,1,59,11634,1,171,114,4,8,59,98,102,104,108,112,115,116,11655,11657,11669,11673,11677,11681,11685,11690,1,8592,4,2,59,102,11663,11665,1,8676,115,59,1,10527,115,59,1,10525,107,59,1,8617,112,59,1,8619,108,59,1,10553,105,109,59,1,10611,108,59,1,8610,4,3,59,97,101,11702,11704,11709,1,10923,105,108,59,1,10521,4,2,59,115,11715,11717,1,10925,59,3,10925,65024,4,3,97,98,114,11729,11734,11739,114,114,59,1,10508,114,107,59,1,10098,4,2,97,107,11745,11758,99,4,2,101,107,11752,11755,59,1,123,59,1,91,4,2,101,115,11764,11767,59,1,10635,108,4,2,100,117,11774,11777,59,1,10639,59,1,10637,4,4,97,101,117,121,11790,11796,11811,11815,114,111,110,59,1,318,4,2,100,105,11802,11807,105,108,59,1,316,108,59,1,8968,98,59,1,123,59,1,1083,4,4,99,113,114,115,11828,11832,11845,11864,97,59,1,10550,117,111,4,2,59,114,11840,11842,1,8220,59,1,8222,4,2,100,117,11851,11857,104,97,114,59,1,10599,115,104,97,114,59,1,10571,104,59,1,8626,4,5,59,102,103,113,115,11880,11882,12008,12011,12031,1,8804,116,4,5,97,104,108,114,116,11895,11913,11935,11947,11996,114,114,111,119,4,2,59,116,11905,11907,1,8592,97,105,108,59,1,8610,97,114,112,111,111,110,4,2,100,117,11925,11931,111,119,110,59,1,8637,112,59,1,8636,101,102,116,97,114,114,111,119,115,59,1,8647,105,103,104,116,4,3,97,104,115,11959,11974,11984,114,114,111,119,4,2,59,115,11969,11971,1,8596,59,1,8646,97,114,112,111,111,110,115,59,1,8651,113,117,105,103,97,114,114,111,119,59,1,8621,104,114,101,101,116,105,109,101,115,59,1,8907,59,1,8922,4,3,59,113,115,12019,12021,12024,1,8804,59,1,8806,108,97,110,116,59,1,10877,4,5,59,99,100,103,115,12043,12045,12049,12070,12083,1,10877,99,59,1,10920,111,116,4,2,59,111,12057,12059,1,10879,4,2,59,114,12065,12067,1,10881,59,1,10883,4,2,59,101,12076,12079,3,8922,65024,115,59,1,10899,4,5,97,100,101,103,115,12095,12103,12108,12126,12131,112,112,114,111,120,59,1,10885,111,116,59,1,8918,113,4,2,103,113,12115,12120,116,114,59,1,8922,103,116,114,59,1,10891,116,114,59,1,8822,105,109,59,1,8818,4,3,105,108,114,12144,12150,12156,115,104,116,59,1,10620,111,111,114,59,1,8970,59,3,55349,56617,4,2,59,69,12166,12168,1,8822,59,1,10897,4,2,97,98,12177,12198,114,4,2,100,117,12184,12187,59,1,8637,4,2,59,108,12193,12195,1,8636,59,1,10602,108,107,59,1,9604,99,121,59,1,1113,4,5,59,97,99,104,116,12220,12222,12227,12235,12241,1,8810,114,114,59,1,8647,111,114,110,101,114,59,1,8990,97,114,100,59,1,10603,114,105,59,1,9722,4,2,105,111,12252,12258,100,111,116,59,1,320,117,115,116,4,2,59,97,12267,12269,1,9136,99,104,101,59,1,9136,4,4,69,97,101,115,12285,12288,12303,12322,59,1,8808,112,4,2,59,112,12295,12297,1,10889,114,111,120,59,1,10889,4,2,59,113,12309,12311,1,10887,4,2,59,113,12317,12319,1,10887,59,1,8808,105,109,59,1,8934,4,8,97,98,110,111,112,116,119,122,12345,12359,12364,12421,12446,12467,12474,12490,4,2,110,114,12351,12355,103,59,1,10220,114,59,1,8701,114,107,59,1,10214,103,4,3,108,109,114,12373,12401,12409,101,102,116,4,2,97,114,12382,12389,114,114,111,119,59,1,10229,105,103,104,116,97,114,114,111,119,59,1,10231,97,112,115,116,111,59,1,10236,105,103,104,116,97,114,114,111,119,59,1,10230,112,97,114,114,111,119,4,2,108,114,12433,12439,101,102,116,59,1,8619,105,103,104,116,59,1,8620,4,3,97,102,108,12454,12458,12462,114,59,1,10629,59,3,55349,56669,117,115,59,1,10797,105,109,101,115,59,1,10804,4,2,97,98,12480,12485,115,116,59,1,8727,97,114,59,1,95,4,3,59,101,102,12498,12500,12506,1,9674,110,103,101,59,1,9674,59,1,10731,97,114,4,2,59,108,12517,12519,1,40,116,59,1,10643,4,5,97,99,104,109,116,12535,12540,12548,12561,12564,114,114,59,1,8646,111,114,110,101,114,59,1,8991,97,114,4,2,59,100,12556,12558,1,8651,59,1,10605,59,1,8206,114,105,59,1,8895,4,6,97,99,104,105,113,116,12583,12589,12594,12597,12614,12635,113,117,111,59,1,8249,114,59,3,55349,56513,59,1,8624,109,4,3,59,101,103,12606,12608,12611,1,8818,59,1,10893,59,1,10895,4,2,98,117,12620,12623,59,1,91,111,4,2,59,114,12630,12632,1,8216,59,1,8218,114,111,107,59,1,322,5,60,8,59,99,100,104,105,108,113,114,12660,12662,12675,12680,12686,12692,12698,12705,1,60,4,2,99,105,12668,12671,59,1,10918,114,59,1,10873,111,116,59,1,8918,114,101,101,59,1,8907,109,101,115,59,1,8905,97,114,114,59,1,10614,117,101,115,116,59,1,10875,4,2,80,105,12711,12716,97,114,59,1,10646,4,3,59,101,102,12724,12726,12729,1,9667,59,1,8884,59,1,9666,114,4,2,100,117,12739,12746,115,104,97,114,59,1,10570,104,97,114,59,1,10598,4,2,101,110,12758,12768,114,116,110,101,113,113,59,3,8808,65024,69,59,3,8808,65024,4,14,68,97,99,100,101,102,104,105,108,110,111,112,115,117,12803,12809,12893,12908,12914,12928,12933,12937,13011,13025,13032,13049,13052,13069,68,111,116,59,1,8762,4,4,99,108,112,114,12819,12827,12849,12887,114,5,175,1,59,12825,1,175,4,2,101,116,12833,12836,59,1,9794,4,2,59,101,12842,12844,1,10016,115,101,59,1,10016,4,2,59,115,12855,12857,1,8614,116,111,4,4,59,100,108,117,12869,12871,12877,12883,1,8614,111,119,110,59,1,8615,101,102,116,59,1,8612,112,59,1,8613,107,101,114,59,1,9646,4,2,111,121,12899,12905,109,109,97,59,1,10793,59,1,1084,97,115,104,59,1,8212,97,115,117,114,101,100,97,110,103,108,101,59,1,8737,114,59,3,55349,56618,111,59,1,8487,4,3,99,100,110,12945,12954,12985,114,111,5,181,1,59,12952,1,181,4,4,59,97,99,100,12964,12966,12971,12976,1,8739,115,116,59,1,42,105,114,59,1,10992,111,116,5,183,1,59,12983,1,183,117,115,4,3,59,98,100,12995,12997,13e3,1,8722,59,1,8863,4,2,59,117,13006,13008,1,8760,59,1,10794,4,2,99,100,13017,13021,112,59,1,10971,114,59,1,8230,112,108,117,115,59,1,8723,4,2,100,112,13038,13044,101,108,115,59,1,8871,102,59,3,55349,56670,59,1,8723,4,2,99,116,13058,13063,114,59,3,55349,56514,112,111,115,59,1,8766,4,3,59,108,109,13077,13079,13087,1,956,116,105,109,97,112,59,1,8888,97,112,59,1,8888,4,24,71,76,82,86,97,98,99,100,101,102,103,104,105,106,108,109,111,112,114,115,116,117,118,119,13142,13165,13217,13229,13247,13330,13359,13414,13420,13508,13513,13579,13602,13626,13631,13762,13767,13855,13936,13995,14214,14285,14312,14432,4,2,103,116,13148,13152,59,3,8921,824,4,2,59,118,13158,13161,3,8811,8402,59,3,8811,824,4,3,101,108,116,13173,13200,13204,102,116,4,2,97,114,13181,13188,114,114,111,119,59,1,8653,105,103,104,116,97,114,114,111,119,59,1,8654,59,3,8920,824,4,2,59,118,13210,13213,3,8810,8402,59,3,8810,824,105,103,104,116,97,114,114,111,119,59,1,8655,4,2,68,100,13235,13241,97,115,104,59,1,8879,97,115,104,59,1,8878,4,5,98,99,110,112,116,13259,13264,13270,13275,13308,108,97,59,1,8711,117,116,101,59,1,324,103,59,3,8736,8402,4,5,59,69,105,111,112,13287,13289,13293,13298,13302,1,8777,59,3,10864,824,100,59,3,8779,824,115,59,1,329,114,111,120,59,1,8777,117,114,4,2,59,97,13316,13318,1,9838,108,4,2,59,115,13325,13327,1,9838,59,1,8469,4,2,115,117,13336,13344,112,5,160,1,59,13342,1,160,109,112,4,2,59,101,13352,13355,3,8782,824,59,3,8783,824,4,5,97,101,111,117,121,13371,13385,13391,13407,13411,4,2,112,114,13377,13380,59,1,10819,111,110,59,1,328,100,105,108,59,1,326,110,103,4,2,59,100,13399,13401,1,8775,111,116,59,3,10861,824,112,59,1,10818,59,1,1085,97,115,104,59,1,8211,4,7,59,65,97,100,113,115,120,13436,13438,13443,13466,13472,13478,13494,1,8800,114,114,59,1,8663,114,4,2,104,114,13450,13454,107,59,1,10532,4,2,59,111,13460,13462,1,8599,119,59,1,8599,111,116,59,3,8784,824,117,105,118,59,1,8802,4,2,101,105,13484,13489,97,114,59,1,10536,109,59,3,8770,824,105,115,116,4,2,59,115,13503,13505,1,8708,59,1,8708,114,59,3,55349,56619,4,4,69,101,115,116,13523,13527,13563,13568,59,3,8807,824,4,3,59,113,115,13535,13537,13559,1,8817,4,3,59,113,115,13545,13547,13551,1,8817,59,3,8807,824,108,97,110,116,59,3,10878,824,59,3,10878,824,105,109,59,1,8821,4,2,59,114,13574,13576,1,8815,59,1,8815,4,3,65,97,112,13587,13592,13597,114,114,59,1,8654,114,114,59,1,8622,97,114,59,1,10994,4,3,59,115,118,13610,13612,13623,1,8715,4,2,59,100,13618,13620,1,8956,59,1,8954,59,1,8715,99,121,59,1,1114,4,7,65,69,97,100,101,115,116,13647,13652,13656,13661,13665,13737,13742,114,114,59,1,8653,59,3,8806,824,114,114,59,1,8602,114,59,1,8229,4,4,59,102,113,115,13675,13677,13703,13725,1,8816,116,4,2,97,114,13684,13691,114,114,111,119,59,1,8602,105,103,104,116,97,114,114,111,119,59,1,8622,4,3,59,113,115,13711,13713,13717,1,8816,59,3,8806,824,108,97,110,116,59,3,10877,824,4,2,59,115,13731,13734,3,10877,824,59,1,8814,105,109,59,1,8820,4,2,59,114,13748,13750,1,8814,105,4,2,59,101,13757,13759,1,8938,59,1,8940,105,100,59,1,8740,4,2,112,116,13773,13778,102,59,3,55349,56671,5,172,3,59,105,110,13787,13789,13829,1,172,110,4,4,59,69,100,118,13800,13802,13806,13812,1,8713,59,3,8953,824,111,116,59,3,8949,824,4,3,97,98,99,13820,13823,13826,59,1,8713,59,1,8951,59,1,8950,105,4,2,59,118,13836,13838,1,8716,4,3,97,98,99,13846,13849,13852,59,1,8716,59,1,8958,59,1,8957,4,3,97,111,114,13863,13892,13899,114,4,4,59,97,115,116,13874,13876,13883,13888,1,8742,108,108,101,108,59,1,8742,108,59,3,11005,8421,59,3,8706,824,108,105,110,116,59,1,10772,4,3,59,99,101,13907,13909,13914,1,8832,117,101,59,1,8928,4,2,59,99,13920,13923,3,10927,824,4,2,59,101,13929,13931,1,8832,113,59,3,10927,824,4,4,65,97,105,116,13946,13951,13971,13982,114,114,59,1,8655,114,114,4,3,59,99,119,13961,13963,13967,1,8603,59,3,10547,824,59,3,8605,824,103,104,116,97,114,114,111,119,59,1,8603,114,105,4,2,59,101,13990,13992,1,8939,59,1,8941,4,7,99,104,105,109,112,113,117,14011,14036,14060,14080,14085,14090,14106,4,4,59,99,101,114,14021,14023,14028,14032,1,8833,117,101,59,1,8929,59,3,10928,824,59,3,55349,56515,111,114,116,4,2,109,112,14045,14050,105,100,59,1,8740,97,114,97,108,108,101,108,59,1,8742,109,4,2,59,101,14067,14069,1,8769,4,2,59,113,14075,14077,1,8772,59,1,8772,105,100,59,1,8740,97,114,59,1,8742,115,117,4,2,98,112,14098,14102,101,59,1,8930,101,59,1,8931,4,3,98,99,112,14114,14157,14171,4,4,59,69,101,115,14124,14126,14130,14133,1,8836,59,3,10949,824,59,1,8840,101,116,4,2,59,101,14141,14144,3,8834,8402,113,4,2,59,113,14151,14153,1,8840,59,3,10949,824,99,4,2,59,101,14164,14166,1,8833,113,59,3,10928,824,4,4,59,69,101,115,14181,14183,14187,14190,1,8837,59,3,10950,824,59,1,8841,101,116,4,2,59,101,14198,14201,3,8835,8402,113,4,2,59,113,14208,14210,1,8841,59,3,10950,824,4,4,103,105,108,114,14224,14228,14238,14242,108,59,1,8825,108,100,101,5,241,1,59,14236,1,241,103,59,1,8824,105,97,110,103,108,101,4,2,108,114,14254,14269,101,102,116,4,2,59,101,14263,14265,1,8938,113,59,1,8940,105,103,104,116,4,2,59,101,14279,14281,1,8939,113,59,1,8941,4,2,59,109,14291,14293,1,957,4,3,59,101,115,14301,14303,14308,1,35,114,111,59,1,8470,112,59,1,8199,4,9,68,72,97,100,103,105,108,114,115,14332,14338,14344,14349,14355,14369,14376,14408,14426,97,115,104,59,1,8877,97,114,114,59,1,10500,112,59,3,8781,8402,97,115,104,59,1,8876,4,2,101,116,14361,14365,59,3,8805,8402,59,3,62,8402,110,102,105,110,59,1,10718,4,3,65,101,116,14384,14389,14393,114,114,59,1,10498,59,3,8804,8402,4,2,59,114,14399,14402,3,60,8402,105,101,59,3,8884,8402,4,2,65,116,14414,14419,114,114,59,1,10499,114,105,101,59,3,8885,8402,105,109,59,3,8764,8402,4,3,65,97,110,14440,14445,14468,114,114,59,1,8662,114,4,2,104,114,14452,14456,107,59,1,10531,4,2,59,111,14462,14464,1,8598,119,59,1,8598,101,97,114,59,1,10535,4,18,83,97,99,100,101,102,103,104,105,108,109,111,112,114,115,116,117,118,14512,14515,14535,14560,14597,14603,14618,14643,14657,14662,14701,14741,14747,14769,14851,14877,14907,14916,59,1,9416,4,2,99,115,14521,14531,117,116,101,5,243,1,59,14529,1,243,116,59,1,8859,4,2,105,121,14541,14557,114,4,2,59,99,14548,14550,1,8858,5,244,1,59,14555,1,244,59,1,1086,4,5,97,98,105,111,115,14572,14577,14583,14587,14591,115,104,59,1,8861,108,97,99,59,1,337,118,59,1,10808,116,59,1,8857,111,108,100,59,1,10684,108,105,103,59,1,339,4,2,99,114,14609,14614,105,114,59,1,10687,59,3,55349,56620,4,3,111,114,116,14626,14630,14640,110,59,1,731,97,118,101,5,242,1,59,14638,1,242,59,1,10689,4,2,98,109,14649,14654,97,114,59,1,10677,59,1,937,110,116,59,1,8750,4,4,97,99,105,116,14672,14677,14693,14698,114,114,59,1,8634,4,2,105,114,14683,14687,114,59,1,10686,111,115,115,59,1,10683,110,101,59,1,8254,59,1,10688,4,3,97,101,105,14709,14714,14719,99,114,59,1,333,103,97,59,1,969,4,3,99,100,110,14727,14733,14736,114,111,110,59,1,959,59,1,10678,117,115,59,1,8854,112,102,59,3,55349,56672,4,3,97,101,108,14755,14759,14764,114,59,1,10679,114,112,59,1,10681,117,115,59,1,8853,4,7,59,97,100,105,111,115,118,14785,14787,14792,14831,14837,14841,14848,1,8744,114,114,59,1,8635,4,4,59,101,102,109,14802,14804,14817,14824,1,10845,114,4,2,59,111,14811,14813,1,8500,102,59,1,8500,5,170,1,59,14822,1,170,5,186,1,59,14829,1,186,103,111,102,59,1,8886,114,59,1,10838,108,111,112,101,59,1,10839,59,1,10843,4,3,99,108,111,14859,14863,14873,114,59,1,8500,97,115,104,5,248,1,59,14871,1,248,108,59,1,8856,105,4,2,108,109,14884,14893,100,101,5,245,1,59,14891,1,245,101,115,4,2,59,97,14901,14903,1,8855,115,59,1,10806,109,108,5,246,1,59,14914,1,246,98,97,114,59,1,9021,4,12,97,99,101,102,104,105,108,109,111,114,115,117,14948,14992,14996,15033,15038,15068,15090,15189,15192,15222,15427,15441,114,4,4,59,97,115,116,14959,14961,14976,14989,1,8741,5,182,2,59,108,14968,14970,1,182,108,101,108,59,1,8741,4,2,105,108,14982,14986,109,59,1,10995,59,1,11005,59,1,8706,121,59,1,1087,114,4,5,99,105,109,112,116,15009,15014,15019,15024,15027,110,116,59,1,37,111,100,59,1,46,105,108,59,1,8240,59,1,8869,101,110,107,59,1,8241,114,59,3,55349,56621,4,3,105,109,111,15046,15057,15063,4,2,59,118,15052,15054,1,966,59,1,981,109,97,116,59,1,8499,110,101,59,1,9742,4,3,59,116,118,15076,15078,15087,1,960,99,104,102,111,114,107,59,1,8916,59,1,982,4,2,97,117,15096,15119,110,4,2,99,107,15103,15115,107,4,2,59,104,15110,15112,1,8463,59,1,8462,118,59,1,8463,115,4,9,59,97,98,99,100,101,109,115,116,15140,15142,15148,15151,15156,15168,15171,15179,15184,1,43,99,105,114,59,1,10787,59,1,8862,105,114,59,1,10786,4,2,111,117,15162,15165,59,1,8724,59,1,10789,59,1,10866,110,5,177,1,59,15177,1,177,105,109,59,1,10790,119,111,59,1,10791,59,1,177,4,3,105,112,117,15200,15208,15213,110,116,105,110,116,59,1,10773,102,59,3,55349,56673,110,100,5,163,1,59,15220,1,163,4,10,59,69,97,99,101,105,110,111,115,117,15244,15246,15249,15253,15258,15334,15347,15367,15416,15421,1,8826,59,1,10931,112,59,1,10935,117,101,59,1,8828,4,2,59,99,15264,15266,1,10927,4,6,59,97,99,101,110,115,15280,15282,15290,15299,15303,15329,1,8826,112,112,114,111,120,59,1,10935,117,114,108,121,101,113,59,1,8828,113,59,1,10927,4,3,97,101,115,15311,15319,15324,112,112,114,111,120,59,1,10937,113,113,59,1,10933,105,109,59,1,8936,105,109,59,1,8830,109,101,4,2,59,115,15342,15344,1,8242,59,1,8473,4,3,69,97,115,15355,15358,15362,59,1,10933,112,59,1,10937,105,109,59,1,8936,4,3,100,102,112,15375,15378,15404,59,1,8719,4,3,97,108,115,15386,15392,15398,108,97,114,59,1,9006,105,110,101,59,1,8978,117,114,102,59,1,8979,4,2,59,116,15410,15412,1,8733,111,59,1,8733,105,109,59,1,8830,114,101,108,59,1,8880,4,2,99,105,15433,15438,114,59,3,55349,56517,59,1,968,110,99,115,112,59,1,8200,4,6,102,105,111,112,115,117,15462,15467,15472,15478,15485,15491,114,59,3,55349,56622,110,116,59,1,10764,112,102,59,3,55349,56674,114,105,109,101,59,1,8279,99,114,59,3,55349,56518,4,3,97,101,111,15499,15520,15534,116,4,2,101,105,15506,15515,114,110,105,111,110,115,59,1,8461,110,116,59,1,10774,115,116,4,2,59,101,15528,15530,1,63,113,59,1,8799,116,5,34,1,59,15540,1,34,4,21,65,66,72,97,98,99,100,101,102,104,105,108,109,110,111,112,114,115,116,117,120,15586,15609,15615,15620,15796,15855,15893,15931,15977,16001,16039,16183,16204,16222,16228,16285,16312,16318,16363,16408,16416,4,3,97,114,116,15594,15599,15603,114,114,59,1,8667,114,59,1,8658,97,105,108,59,1,10524,97,114,114,59,1,10511,97,114,59,1,10596,4,7,99,100,101,110,113,114,116,15636,15651,15656,15664,15687,15696,15770,4,2,101,117,15642,15646,59,3,8765,817,116,101,59,1,341,105,99,59,1,8730,109,112,116,121,118,59,1,10675,103,4,4,59,100,101,108,15675,15677,15680,15683,1,10217,59,1,10642,59,1,10661,101,59,1,10217,117,111,5,187,1,59,15694,1,187,114,4,11,59,97,98,99,102,104,108,112,115,116,119,15721,15723,15727,15739,15742,15746,15750,15754,15758,15763,15767,1,8594,112,59,1,10613,4,2,59,102,15733,15735,1,8677,115,59,1,10528,59,1,10547,115,59,1,10526,107,59,1,8618,112,59,1,8620,108,59,1,10565,105,109,59,1,10612,108,59,1,8611,59,1,8605,4,2,97,105,15776,15781,105,108,59,1,10522,111,4,2,59,110,15788,15790,1,8758,97,108,115,59,1,8474,4,3,97,98,114,15804,15809,15814,114,114,59,1,10509,114,107,59,1,10099,4,2,97,107,15820,15833,99,4,2,101,107,15827,15830,59,1,125,59,1,93,4,2,101,115,15839,15842,59,1,10636,108,4,2,100,117,15849,15852,59,1,10638,59,1,10640,4,4,97,101,117,121,15865,15871,15886,15890,114,111,110,59,1,345,4,2,100,105,15877,15882,105,108,59,1,343,108,59,1,8969,98,59,1,125,59,1,1088,4,4,99,108,113,115,15903,15907,15914,15927,97,59,1,10551,100,104,97,114,59,1,10601,117,111,4,2,59,114,15922,15924,1,8221,59,1,8221,104,59,1,8627,4,3,97,99,103,15939,15966,15970,108,4,4,59,105,112,115,15950,15952,15957,15963,1,8476,110,101,59,1,8475,97,114,116,59,1,8476,59,1,8477,116,59,1,9645,5,174,1,59,15975,1,174,4,3,105,108,114,15985,15991,15997,115,104,116,59,1,10621,111,111,114,59,1,8971,59,3,55349,56623,4,2,97,111,16007,16028,114,4,2,100,117,16014,16017,59,1,8641,4,2,59,108,16023,16025,1,8640,59,1,10604,4,2,59,118,16034,16036,1,961,59,1,1009,4,3,103,110,115,16047,16167,16171,104,116,4,6,97,104,108,114,115,116,16063,16081,16103,16130,16143,16155,114,114,111,119,4,2,59,116,16073,16075,1,8594,97,105,108,59,1,8611,97,114,112,111,111,110,4,2,100,117,16093,16099,111,119,110,59,1,8641,112,59,1,8640,101,102,116,4,2,97,104,16112,16120,114,114,111,119,115,59,1,8644,97,114,112,111,111,110,115,59,1,8652,105,103,104,116,97,114,114,111,119,115,59,1,8649,113,117,105,103,97,114,114,111,119,59,1,8605,104,114,101,101,116,105,109,101,115,59,1,8908,103,59,1,730,105,110,103,100,111,116,115,101,113,59,1,8787,4,3,97,104,109,16191,16196,16201,114,114,59,1,8644,97,114,59,1,8652,59,1,8207,111,117,115,116,4,2,59,97,16214,16216,1,9137,99,104,101,59,1,9137,109,105,100,59,1,10990,4,4,97,98,112,116,16238,16252,16257,16278,4,2,110,114,16244,16248,103,59,1,10221,114,59,1,8702,114,107,59,1,10215,4,3,97,102,108,16265,16269,16273,114,59,1,10630,59,3,55349,56675,117,115,59,1,10798,105,109,101,115,59,1,10805,4,2,97,112,16291,16304,114,4,2,59,103,16298,16300,1,41,116,59,1,10644,111,108,105,110,116,59,1,10770,97,114,114,59,1,8649,4,4,97,99,104,113,16328,16334,16339,16342,113,117,111,59,1,8250,114,59,3,55349,56519,59,1,8625,4,2,98,117,16348,16351,59,1,93,111,4,2,59,114,16358,16360,1,8217,59,1,8217,4,3,104,105,114,16371,16377,16383,114,101,101,59,1,8908,109,101,115,59,1,8906,105,4,4,59,101,102,108,16394,16396,16399,16402,1,9657,59,1,8885,59,1,9656,116,114,105,59,1,10702,108,117,104,97,114,59,1,10600,59,1,8478,4,19,97,98,99,100,101,102,104,105,108,109,111,112,113,114,115,116,117,119,122,16459,16466,16472,16572,16590,16672,16687,16746,16844,16850,16924,16963,16988,17115,17121,17154,17206,17614,17656,99,117,116,101,59,1,347,113,117,111,59,1,8218,4,10,59,69,97,99,101,105,110,112,115,121,16494,16496,16499,16513,16518,16531,16536,16556,16564,16569,1,8827,59,1,10932,4,2,112,114,16505,16508,59,1,10936,111,110,59,1,353,117,101,59,1,8829,4,2,59,100,16524,16526,1,10928,105,108,59,1,351,114,99,59,1,349,4,3,69,97,115,16544,16547,16551,59,1,10934,112,59,1,10938,105,109,59,1,8937,111,108,105,110,116,59,1,10771,105,109,59,1,8831,59,1,1089,111,116,4,3,59,98,101,16582,16584,16587,1,8901,59,1,8865,59,1,10854,4,7,65,97,99,109,115,116,120,16606,16611,16634,16642,16646,16652,16668,114,114,59,1,8664,114,4,2,104,114,16618,16622,107,59,1,10533,4,2,59,111,16628,16630,1,8600,119,59,1,8600,116,5,167,1,59,16640,1,167,105,59,1,59,119,97,114,59,1,10537,109,4,2,105,110,16659,16665,110,117,115,59,1,8726,59,1,8726,116,59,1,10038,114,4,2,59,111,16679,16682,3,55349,56624,119,110,59,1,8994,4,4,97,99,111,121,16697,16702,16716,16739,114,112,59,1,9839,4,2,104,121,16708,16713,99,121,59,1,1097,59,1,1096,114,116,4,2,109,112,16724,16729,105,100,59,1,8739,97,114,97,108,108,101,108,59,1,8741,5,173,1,59,16744,1,173,4,2,103,109,16752,16770,109,97,4,3,59,102,118,16762,16764,16767,1,963,59,1,962,59,1,962,4,8,59,100,101,103,108,110,112,114,16788,16790,16795,16806,16817,16828,16832,16838,1,8764,111,116,59,1,10858,4,2,59,113,16801,16803,1,8771,59,1,8771,4,2,59,69,16812,16814,1,10910,59,1,10912,4,2,59,69,16823,16825,1,10909,59,1,10911,101,59,1,8774,108,117,115,59,1,10788,97,114,114,59,1,10610,97,114,114,59,1,8592,4,4,97,101,105,116,16860,16883,16891,16904,4,2,108,115,16866,16878,108,115,101,116,109,105,110,117,115,59,1,8726,104,112,59,1,10803,112,97,114,115,108,59,1,10724,4,2,100,108,16897,16900,59,1,8739,101,59,1,8995,4,2,59,101,16910,16912,1,10922,4,2,59,115,16918,16920,1,10924,59,3,10924,65024,4,3,102,108,112,16932,16938,16958,116,99,121,59,1,1100,4,2,59,98,16944,16946,1,47,4,2,59,97,16952,16954,1,10692,114,59,1,9023,102,59,3,55349,56676,97,4,2,100,114,16970,16985,101,115,4,2,59,117,16978,16980,1,9824,105,116,59,1,9824,59,1,8741,4,3,99,115,117,16996,17028,17089,4,2,97,117,17002,17015,112,4,2,59,115,17009,17011,1,8851,59,3,8851,65024,112,4,2,59,115,17022,17024,1,8852,59,3,8852,65024,117,4,2,98,112,17035,17062,4,3,59,101,115,17043,17045,17048,1,8847,59,1,8849,101,116,4,2,59,101,17056,17058,1,8847,113,59,1,8849,4,3,59,101,115,17070,17072,17075,1,8848,59,1,8850,101,116,4,2,59,101,17083,17085,1,8848,113,59,1,8850,4,3,59,97,102,17097,17099,17112,1,9633,114,4,2,101,102,17106,17109,59,1,9633,59,1,9642,59,1,9642,97,114,114,59,1,8594,4,4,99,101,109,116,17131,17136,17142,17148,114,59,3,55349,56520,116,109,110,59,1,8726,105,108,101,59,1,8995,97,114,102,59,1,8902,4,2,97,114,17160,17172,114,4,2,59,102,17167,17169,1,9734,59,1,9733,4,2,97,110,17178,17202,105,103,104,116,4,2,101,112,17188,17197,112,115,105,108,111,110,59,1,1013,104,105,59,1,981,115,59,1,175,4,5,98,99,109,110,112,17218,17351,17420,17423,17427,4,9,59,69,100,101,109,110,112,114,115,17238,17240,17243,17248,17261,17267,17279,17285,17291,1,8834,59,1,10949,111,116,59,1,10941,4,2,59,100,17254,17256,1,8838,111,116,59,1,10947,117,108,116,59,1,10945,4,2,69,101,17273,17276,59,1,10955,59,1,8842,108,117,115,59,1,10943,97,114,114,59,1,10617,4,3,101,105,117,17299,17335,17339,116,4,3,59,101,110,17308,17310,17322,1,8834,113,4,2,59,113,17317,17319,1,8838,59,1,10949,101,113,4,2,59,113,17330,17332,1,8842,59,1,10955,109,59,1,10951,4,2,98,112,17345,17348,59,1,10965,59,1,10963,99,4,6,59,97,99,101,110,115,17366,17368,17376,17385,17389,17415,1,8827,112,112,114,111,120,59,1,10936,117,114,108,121,101,113,59,1,8829,113,59,1,10928,4,3,97,101,115,17397,17405,17410,112,112,114,111,120,59,1,10938,113,113,59,1,10934,105,109,59,1,8937,105,109,59,1,8831,59,1,8721,103,59,1,9834,4,13,49,50,51,59,69,100,101,104,108,109,110,112,115,17455,17462,17469,17476,17478,17481,17496,17509,17524,17530,17536,17548,17554,5,185,1,59,17460,1,185,5,178,1,59,17467,1,178,5,179,1,59,17474,1,179,1,8835,59,1,10950,4,2,111,115,17487,17491,116,59,1,10942,117,98,59,1,10968,4,2,59,100,17502,17504,1,8839,111,116,59,1,10948,115,4,2,111,117,17516,17520,108,59,1,10185,98,59,1,10967,97,114,114,59,1,10619,117,108,116,59,1,10946,4,2,69,101,17542,17545,59,1,10956,59,1,8843,108,117,115,59,1,10944,4,3,101,105,117,17562,17598,17602,116,4,3,59,101,110,17571,17573,17585,1,8835,113,4,2,59,113,17580,17582,1,8839,59,1,10950,101,113,4,2,59,113,17593,17595,1,8843,59,1,10956,109,59,1,10952,4,2,98,112,17608,17611,59,1,10964,59,1,10966,4,3,65,97,110,17622,17627,17650,114,114,59,1,8665,114,4,2,104,114,17634,17638,107,59,1,10534,4,2,59,111,17644,17646,1,8601,119,59,1,8601,119,97,114,59,1,10538,108,105,103,5,223,1,59,17664,1,223,4,13,97,98,99,100,101,102,104,105,111,112,114,115,119,17694,17709,17714,17737,17742,17749,17754,17860,17905,17957,17964,18090,18122,4,2,114,117,17700,17706,103,101,116,59,1,8982,59,1,964,114,107,59,1,9140,4,3,97,101,121,17722,17728,17734,114,111,110,59,1,357,100,105,108,59,1,355,59,1,1090,111,116,59,1,8411,108,114,101,99,59,1,8981,114,59,3,55349,56625,4,4,101,105,107,111,17764,17805,17836,17851,4,2,114,116,17770,17786,101,4,2,52,102,17777,17780,59,1,8756,111,114,101,59,1,8756,97,4,3,59,115,118,17795,17797,17802,1,952,121,109,59,1,977,59,1,977,4,2,99,110,17811,17831,107,4,2,97,115,17818,17826,112,112,114,111,120,59,1,8776,105,109,59,1,8764,115,112,59,1,8201,4,2,97,115,17842,17846,112,59,1,8776,105,109,59,1,8764,114,110,5,254,1,59,17858,1,254,4,3,108,109,110,17868,17873,17901,100,101,59,1,732,101,115,5,215,3,59,98,100,17884,17886,17898,1,215,4,2,59,97,17892,17894,1,8864,114,59,1,10801,59,1,10800,116,59,1,8749,4,3,101,112,115,17913,17917,17953,97,59,1,10536,4,4,59,98,99,102,17927,17929,17934,17939,1,8868,111,116,59,1,9014,105,114,59,1,10993,4,2,59,111,17945,17948,3,55349,56677,114,107,59,1,10970,97,59,1,10537,114,105,109,101,59,1,8244,4,3,97,105,112,17972,17977,18082,100,101,59,1,8482,4,7,97,100,101,109,112,115,116,17993,18051,18056,18059,18066,18072,18076,110,103,108,101,4,5,59,100,108,113,114,18009,18011,18017,18032,18035,1,9653,111,119,110,59,1,9663,101,102,116,4,2,59,101,18026,18028,1,9667,113,59,1,8884,59,1,8796,105,103,104,116,4,2,59,101,18045,18047,1,9657,113,59,1,8885,111,116,59,1,9708,59,1,8796,105,110,117,115,59,1,10810,108,117,115,59,1,10809,98,59,1,10701,105,109,101,59,1,10811,101,122,105,117,109,59,1,9186,4,3,99,104,116,18098,18111,18116,4,2,114,121,18104,18108,59,3,55349,56521,59,1,1094,99,121,59,1,1115,114,111,107,59,1,359,4,2,105,111,18128,18133,120,116,59,1,8812,104,101,97,100,4,2,108,114,18143,18154,101,102,116,97,114,114,111,119,59,1,8606,105,103,104,116,97,114,114,111,119,59,1,8608,4,18,65,72,97,98,99,100,102,103,104,108,109,111,112,114,115,116,117,119,18204,18209,18214,18234,18250,18268,18292,18308,18319,18343,18379,18397,18413,18504,18547,18553,18584,18603,114,114,59,1,8657,97,114,59,1,10595,4,2,99,114,18220,18230,117,116,101,5,250,1,59,18228,1,250,114,59,1,8593,114,4,2,99,101,18241,18245,121,59,1,1118,118,101,59,1,365,4,2,105,121,18256,18265,114,99,5,251,1,59,18263,1,251,59,1,1091,4,3,97,98,104,18276,18281,18287,114,114,59,1,8645,108,97,99,59,1,369,97,114,59,1,10606,4,2,105,114,18298,18304,115,104,116,59,1,10622,59,3,55349,56626,114,97,118,101,5,249,1,59,18317,1,249,4,2,97,98,18325,18338,114,4,2,108,114,18332,18335,59,1,8639,59,1,8638,108,107,59,1,9600,4,2,99,116,18349,18374,4,2,111,114,18355,18369,114,110,4,2,59,101,18363,18365,1,8988,114,59,1,8988,111,112,59,1,8975,114,105,59,1,9720,4,2,97,108,18385,18390,99,114,59,1,363,5,168,1,59,18395,1,168,4,2,103,112,18403,18408,111,110,59,1,371,102,59,3,55349,56678,4,6,97,100,104,108,115,117,18427,18434,18445,18470,18475,18494,114,114,111,119,59,1,8593,111,119,110,97,114,114,111,119,59,1,8597,97,114,112,111,111,110,4,2,108,114,18457,18463,101,102,116,59,1,8639,105,103,104,116,59,1,8638,117,115,59,1,8846,105,4,3,59,104,108,18484,18486,18489,1,965,59,1,978,111,110,59,1,965,112,97,114,114,111,119,115,59,1,8648,4,3,99,105,116,18512,18537,18542,4,2,111,114,18518,18532,114,110,4,2,59,101,18526,18528,1,8989,114,59,1,8989,111,112,59,1,8974,110,103,59,1,367,114,105,59,1,9721,99,114,59,3,55349,56522,4,3,100,105,114,18561,18566,18572,111,116,59,1,8944,108,100,101,59,1,361,105,4,2,59,102,18579,18581,1,9653,59,1,9652,4,2,97,109,18590,18595,114,114,59,1,8648,108,5,252,1,59,18601,1,252,97,110,103,108,101,59,1,10663,4,15,65,66,68,97,99,100,101,102,108,110,111,112,114,115,122,18643,18648,18661,18667,18847,18851,18857,18904,18909,18915,18931,18937,18943,18949,18996,114,114,59,1,8661,97,114,4,2,59,118,18656,18658,1,10984,59,1,10985,97,115,104,59,1,8872,4,2,110,114,18673,18679,103,114,116,59,1,10652,4,7,101,107,110,112,114,115,116,18695,18704,18711,18720,18742,18754,18810,112,115,105,108,111,110,59,1,1013,97,112,112,97,59,1,1008,111,116,104,105,110,103,59,1,8709,4,3,104,105,114,18728,18732,18735,105,59,1,981,59,1,982,111,112,116,111,59,1,8733,4,2,59,104,18748,18750,1,8597,111,59,1,1009,4,2,105,117,18760,18766,103,109,97,59,1,962,4,2,98,112,18772,18791,115,101,116,110,101,113,4,2,59,113,18784,18787,3,8842,65024,59,3,10955,65024,115,101,116,110,101,113,4,2,59,113,18803,18806,3,8843,65024,59,3,10956,65024,4,2,104,114,18816,18822,101,116,97,59,1,977,105,97,110,103,108,101,4,2,108,114,18834,18840,101,102,116,59,1,8882,105,103,104,116,59,1,8883,121,59,1,1074,97,115,104,59,1,8866,4,3,101,108,114,18865,18884,18890,4,3,59,98,101,18873,18875,18880,1,8744,97,114,59,1,8891,113,59,1,8794,108,105,112,59,1,8942,4,2,98,116,18896,18901,97,114,59,1,124,59,1,124,114,59,3,55349,56627,116,114,105,59,1,8882,115,117,4,2,98,112,18923,18927,59,3,8834,8402,59,3,8835,8402,112,102,59,3,55349,56679,114,111,112,59,1,8733,116,114,105,59,1,8883,4,2,99,117,18955,18960,114,59,3,55349,56523,4,2,98,112,18966,18981,110,4,2,69,101,18973,18977,59,3,10955,65024,59,3,8842,65024,110,4,2,69,101,18988,18992,59,3,10956,65024,59,3,8843,65024,105,103,122,97,103,59,1,10650,4,7,99,101,102,111,112,114,115,19020,19026,19061,19066,19072,19075,19089,105,114,99,59,1,373,4,2,100,105,19032,19055,4,2,98,103,19038,19043,97,114,59,1,10847,101,4,2,59,113,19050,19052,1,8743,59,1,8793,101,114,112,59,1,8472,114,59,3,55349,56628,112,102,59,3,55349,56680,59,1,8472,4,2,59,101,19081,19083,1,8768,97,116,104,59,1,8768,99,114,59,3,55349,56524,4,14,99,100,102,104,105,108,109,110,111,114,115,117,118,119,19125,19146,19152,19157,19173,19176,19192,19197,19202,19236,19252,19269,19286,19291,4,3,97,105,117,19133,19137,19142,112,59,1,8898,114,99,59,1,9711,112,59,1,8899,116,114,105,59,1,9661,114,59,3,55349,56629,4,2,65,97,19163,19168,114,114,59,1,10234,114,114,59,1,10231,59,1,958,4,2,65,97,19182,19187,114,114,59,1,10232,114,114,59,1,10229,97,112,59,1,10236,105,115,59,1,8955,4,3,100,112,116,19210,19215,19230,111,116,59,1,10752,4,2,102,108,19221,19225,59,3,55349,56681,117,115,59,1,10753,105,109,101,59,1,10754,4,2,65,97,19242,19247,114,114,59,1,10233,114,114,59,1,10230,4,2,99,113,19258,19263,114,59,3,55349,56525,99,117,112,59,1,10758,4,2,112,116,19275,19281,108,117,115,59,1,10756,114,105,59,1,9651,101,101,59,1,8897,101,100,103,101,59,1,8896,4,8,97,99,101,102,105,111,115,117,19316,19335,19349,19357,19362,19367,19373,19379,99,4,2,117,121,19323,19332,116,101,5,253,1,59,19330,1,253,59,1,1103,4,2,105,121,19341,19346,114,99,59,1,375,59,1,1099,110,5,165,1,59,19355,1,165,114,59,3,55349,56630,99,121,59,1,1111,112,102,59,3,55349,56682,99,114,59,3,55349,56526,4,2,99,109,19385,19389,121,59,1,1102,108,5,255,1,59,19395,1,255,4,10,97,99,100,101,102,104,105,111,115,119,19419,19426,19441,19446,19462,19467,19472,19480,19486,19492,99,117,116,101,59,1,378,4,2,97,121,19432,19438,114,111,110,59,1,382,59,1,1079,111,116,59,1,380,4,2,101,116,19452,19458,116,114,102,59,1,8488,97,59,1,950,114,59,3,55349,56631,99,121,59,1,1078,103,114,97,114,114,59,1,8669,112,102,59,3,55349,56683,99,114,59,3,55349,56527,4,2,106,110,19498,19501,59,1,8205,106,59,1,8204])},function(e,t,n){"use strict";const r=n(47),i=n(34),s=n(145);e.exports=class extends r{constructor(e){super(e),this.tokenizer=e,this.posTracker=r.install(e.preprocessor,s),this.currentAttrLocation=null,this.ctLoc=null}_getCurrentLocation(){return{startLine:this.posTracker.line,startCol:this.posTracker.col,startOffset:this.posTracker.offset,endLine:-1,endCol:-1,endOffset:-1}}_attachCurrentAttrLocationInfo(){this.currentAttrLocation.endLine=this.posTracker.line,this.currentAttrLocation.endCol=this.posTracker.col,this.currentAttrLocation.endOffset=this.posTracker.offset;const e=this.tokenizer.currentToken,t=this.tokenizer.currentAttr;e.location.attrs||(e.location.attrs=Object.create(null)),e.location.attrs[t.name]=this.currentAttrLocation}_getOverriddenMethods(e,t){const n={_createStartTagToken(){t._createStartTagToken.call(this),this.currentToken.location=e.ctLoc},_createEndTagToken(){t._createEndTagToken.call(this),this.currentToken.location=e.ctLoc},_createCommentToken(){t._createCommentToken.call(this),this.currentToken.location=e.ctLoc},_createDoctypeToken(n){t._createDoctypeToken.call(this,n),this.currentToken.location=e.ctLoc},_createCharacterToken(n,r){t._createCharacterToken.call(this,n,r),this.currentCharacterToken.location=e.ctLoc},_createEOFToken(){t._createEOFToken.call(this),this.currentToken.location=e._getCurrentLocation()},_createAttr(n){t._createAttr.call(this,n),e.currentAttrLocation=e._getCurrentLocation()},_leaveAttrName(n){t._leaveAttrName.call(this,n),e._attachCurrentAttrLocationInfo()},_leaveAttrValue(n){t._leaveAttrValue.call(this,n),e._attachCurrentAttrLocationInfo()},_emitCurrentToken(){const n=this.currentToken.location;this.currentCharacterToken&&(this.currentCharacterToken.location.endLine=n.startLine,this.currentCharacterToken.location.endCol=n.startCol,this.currentCharacterToken.location.endOffset=n.startOffset),this.currentToken.type===i.EOF_TOKEN?(n.endLine=n.startLine,n.endCol=n.startCol,n.endOffset=n.startOffset):(n.endLine=e.posTracker.line,n.endCol=e.posTracker.col+1,n.endOffset=e.posTracker.offset+1),t._emitCurrentToken.call(this)},_emitCurrentCharacterToken(){const n=this.currentCharacterToken&&this.currentCharacterToken.location;n&&-1===n.endOffset&&(n.endLine=e.posTracker.line,n.endCol=e.posTracker.col,n.endOffset=e.posTracker.offset),t._emitCurrentCharacterToken.call(this)}};return Object.keys(i.MODE).forEach(r=>{const s=i.MODE[r];n[s]=function(n){e.ctLoc=e._getCurrentLocation(),t[s].call(this,n)}}),n}}},function(e,t,n){"use strict";const r=n(47);e.exports=class extends r{constructor(e){super(e),this.preprocessor=e,this.isEol=!1,this.lineStartPos=0,this.droppedBufferSize=0,this.offset=0,this.col=0,this.line=1}_getOverriddenMethods(e,t){return{advance(){const n=this.pos+1,r=this.html[n];return e.isEol&&(e.isEol=!1,e.line++,e.lineStartPos=n),("\n"===r||"\r"===r&&"\n"!==this.html[n+1])&&(e.isEol=!0),e.col=n-e.lineStartPos+1,e.offset=e.droppedBufferSize+n,t.advance.call(this)},retreat(){t.retreat.call(this),e.isEol=!1,e.col=this.pos-e.lineStartPos+1},dropParsedChunk(){const n=this.pos;t.dropParsedChunk.call(this);const r=n-this.pos;e.lineStartPos-=r,e.droppedBufferSize+=r,e.offset=e.droppedBufferSize+this.pos}}}}},function(e,t,n){"use strict";const{Writable:r}=n(4);e.exports=class extends r{_write(e,t,n){n()}}},function(e,t,n){"use strict";const r=n(34),i=n(148),s=n(46),o=n(24),a=o.TAG_NAMES,u=o.NAMESPACES;e.exports=class{constructor(e){this.tokenizer=e,this.namespaceStack=[],this.namespaceStackTop=-1,this._enterNamespace(u.HTML)}getNextToken(){const e=this.tokenizer.getNextToken();if(e.type===r.START_TAG_TOKEN)this._handleStartTagToken(e);else if(e.type===r.END_TAG_TOKEN)this._handleEndTagToken(e);else if(e.type===r.NULL_CHARACTER_TOKEN&&this.inForeignContent)e.type=r.CHARACTER_TOKEN,e.chars=s.REPLACEMENT_CHARACTER;else if(this.skipNextNewLine&&(e.type!==r.HIBERNATION_TOKEN&&(this.skipNextNewLine=!1),e.type===r.WHITESPACE_CHARACTER_TOKEN&&"\n"===e.chars[0])){if(1===e.chars.length)return this.getNextToken();e.chars=e.chars.substr(1)}return e}_enterNamespace(e){this.namespaceStackTop++,this.namespaceStack.push(e),this.inForeignContent=e!==u.HTML,this.currentNamespace=e,this.tokenizer.allowCDATA=this.inForeignContent}_leaveCurrentNamespace(){this.namespaceStackTop--,this.namespaceStack.pop(),this.currentNamespace=this.namespaceStack[this.namespaceStackTop],this.inForeignContent=this.currentNamespace!==u.HTML,this.tokenizer.allowCDATA=this.inForeignContent}_ensureTokenizerMode(e){e===a.TEXTAREA||e===a.TITLE?this.tokenizer.state=r.MODE.RCDATA:e===a.PLAINTEXT?this.tokenizer.state=r.MODE.PLAINTEXT:e===a.SCRIPT?this.tokenizer.state=r.MODE.SCRIPT_DATA:e!==a.STYLE&&e!==a.IFRAME&&e!==a.XMP&&e!==a.NOEMBED&&e!==a.NOFRAMES&&e!==a.NOSCRIPT||(this.tokenizer.state=r.MODE.RAWTEXT)}_handleStartTagToken(e){let t=e.tagName;if(t===a.SVG?this._enterNamespace(u.SVG):t===a.MATH&&this._enterNamespace(u.MATHML),this.inForeignContent){if(i.causesExit(e))return void this._leaveCurrentNamespace();const n=this.currentNamespace;n===u.MATHML?i.adjustTokenMathMLAttrs(e):n===u.SVG&&(i.adjustTokenSVGTagName(e),i.adjustTokenSVGAttrs(e)),i.adjustTokenXMLAttrs(e),t=e.tagName,!e.selfClosing&&i.isIntegrationPoint(t,n,e.attrs)&&this._enterNamespace(u.HTML)}else t===a.PRE||t===a.TEXTAREA||t===a.LISTING?this.skipNextNewLine=!0:t===a.IMAGE&&(e.tagName=a.IMG),this._ensureTokenizerMode(t)}_handleEndTagToken(e){let t=e.tagName;if(this.inForeignContent)(t===a.SVG&&this.currentNamespace===u.SVG||t===a.MATH&&this.currentNamespace===u.MATHML)&&this._leaveCurrentNamespace();else{const n=this.namespaceStack[this.namespaceStackTop-1];n===u.SVG&&i.SVG_TAG_NAMES_ADJUSTMENT_MAP[t]&&(t=i.SVG_TAG_NAMES_ADJUSTMENT_MAP[t]),i.isIntegrationPoint(t,n,e.attrs)&&this._leaveCurrentNamespace()}this.currentNamespace===u.SVG&&i.adjustTokenSVGTagName(e)}}},function(e,t,n){"use strict";const r=n(34),i=n(24),s=i.TAG_NAMES,o=i.NAMESPACES,a=i.ATTRS,u="text/html",l="application/xhtml+xml",c={attributename:"attributeName",attributetype:"attributeType",basefrequency:"baseFrequency",baseprofile:"baseProfile",calcmode:"calcMode",clippathunits:"clipPathUnits",diffuseconstant:"diffuseConstant",edgemode:"edgeMode",filterunits:"filterUnits",glyphref:"glyphRef",gradienttransform:"gradientTransform",gradientunits:"gradientUnits",kernelmatrix:"kernelMatrix",kernelunitlength:"kernelUnitLength",keypoints:"keyPoints",keysplines:"keySplines",keytimes:"keyTimes",lengthadjust:"lengthAdjust",limitingconeangle:"limitingConeAngle",markerheight:"markerHeight",markerunits:"markerUnits",markerwidth:"markerWidth",maskcontentunits:"maskContentUnits",maskunits:"maskUnits",numoctaves:"numOctaves",pathlength:"pathLength",patterncontentunits:"patternContentUnits",patterntransform:"patternTransform",patternunits:"patternUnits",pointsatx:"pointsAtX",pointsaty:"pointsAtY",pointsatz:"pointsAtZ",preservealpha:"preserveAlpha",preserveaspectratio:"preserveAspectRatio",primitiveunits:"primitiveUnits",refx:"refX",refy:"refY",repeatcount:"repeatCount",repeatdur:"repeatDur",requiredextensions:"requiredExtensions",requiredfeatures:"requiredFeatures",specularconstant:"specularConstant",specularexponent:"specularExponent",spreadmethod:"spreadMethod",startoffset:"startOffset",stddeviation:"stdDeviation",stitchtiles:"stitchTiles",surfacescale:"surfaceScale",systemlanguage:"systemLanguage",tablevalues:"tableValues",targetx:"targetX",targety:"targetY",textlength:"textLength",viewbox:"viewBox",viewtarget:"viewTarget",xchannelselector:"xChannelSelector",ychannelselector:"yChannelSelector",zoomandpan:"zoomAndPan"},h={"xlink:actuate":{prefix:"xlink",name:"actuate",namespace:o.XLINK},"xlink:arcrole":{prefix:"xlink",name:"arcrole",namespace:o.XLINK},"xlink:href":{prefix:"xlink",name:"href",namespace:o.XLINK},"xlink:role":{prefix:"xlink",name:"role",namespace:o.XLINK},"xlink:show":{prefix:"xlink",name:"show",namespace:o.XLINK},"xlink:title":{prefix:"xlink",name:"title",namespace:o.XLINK},"xlink:type":{prefix:"xlink",name:"type",namespace:o.XLINK},"xml:base":{prefix:"xml",name:"base",namespace:o.XML},"xml:lang":{prefix:"xml",name:"lang",namespace:o.XML},"xml:space":{prefix:"xml",name:"space",namespace:o.XML},xmlns:{prefix:"",name:"xmlns",namespace:o.XMLNS},"xmlns:xlink":{prefix:"xmlns",name:"xlink",namespace:o.XMLNS}},d=t.SVG_TAG_NAMES_ADJUSTMENT_MAP={altglyph:"altGlyph",altglyphdef:"altGlyphDef",altglyphitem:"altGlyphItem",animatecolor:"animateColor",animatemotion:"animateMotion",animatetransform:"animateTransform",clippath:"clipPath",feblend:"feBlend",fecolormatrix:"feColorMatrix",fecomponenttransfer:"feComponentTransfer",fecomposite:"feComposite",feconvolvematrix:"feConvolveMatrix",fediffuselighting:"feDiffuseLighting",fedisplacementmap:"feDisplacementMap",fedistantlight:"feDistantLight",feflood:"feFlood",fefunca:"feFuncA",fefuncb:"feFuncB",fefuncg:"feFuncG",fefuncr:"feFuncR",fegaussianblur:"feGaussianBlur",feimage:"feImage",femerge:"feMerge",femergenode:"feMergeNode",femorphology:"feMorphology",feoffset:"feOffset",fepointlight:"fePointLight",fespecularlighting:"feSpecularLighting",fespotlight:"feSpotLight",fetile:"feTile",feturbulence:"feTurbulence",foreignobject:"foreignObject",glyphref:"glyphRef",lineargradient:"linearGradient",radialgradient:"radialGradient",textpath:"textPath"},p={[s.B]:!0,[s.BIG]:!0,[s.BLOCKQUOTE]:!0,[s.BODY]:!0,[s.BR]:!0,[s.CENTER]:!0,[s.CODE]:!0,[s.DD]:!0,[s.DIV]:!0,[s.DL]:!0,[s.DT]:!0,[s.EM]:!0,[s.EMBED]:!0,[s.H1]:!0,[s.H2]:!0,[s.H3]:!0,[s.H4]:!0,[s.H5]:!0,[s.H6]:!0,[s.HEAD]:!0,[s.HR]:!0,[s.I]:!0,[s.IMG]:!0,[s.LI]:!0,[s.LISTING]:!0,[s.MENU]:!0,[s.META]:!0,[s.NOBR]:!0,[s.OL]:!0,[s.P]:!0,[s.PRE]:!0,[s.RUBY]:!0,[s.S]:!0,[s.SMALL]:!0,[s.SPAN]:!0,[s.STRONG]:!0,[s.STRIKE]:!0,[s.SUB]:!0,[s.SUP]:!0,[s.TABLE]:!0,[s.TT]:!0,[s.U]:!0,[s.UL]:!0,[s.VAR]:!0};t.causesExit=function(e){const t=e.tagName;return!!(t===s.FONT&&(null!==r.getTokenAttr(e,a.COLOR)||null!==r.getTokenAttr(e,a.SIZE)||null!==r.getTokenAttr(e,a.FACE)))||p[t]},t.adjustTokenMathMLAttrs=function(e){for(let t=0;t<e.attrs.length;t++)if("definitionurl"===e.attrs[t].name){e.attrs[t].name="definitionURL";break}},t.adjustTokenSVGAttrs=function(e){for(let t=0;t<e.attrs.length;t++){const n=c[e.attrs[t].name];n&&(e.attrs[t].name=n)}},t.adjustTokenXMLAttrs=function(e){for(let t=0;t<e.attrs.length;t++){const n=h[e.attrs[t].name];n&&(e.attrs[t].prefix=n.prefix,e.attrs[t].name=n.name,e.attrs[t].namespace=n.namespace)}},t.adjustTokenSVGTagName=function(e){const t=d[e.tagName];t&&(e.tagName=t)},t.isIntegrationPoint=function(e,t,n,r){return!(r&&r!==o.HTML||!function(e,t,n){if(t===o.MATHML&&e===s.ANNOTATION_XML)for(let e=0;e<n.length;e++)if(n[e].name===a.ENCODING){const t=n[e].value.toLowerCase();return t===u||t===l}return t===o.SVG&&(e===s.FOREIGN_OBJECT||e===s.DESC||e===s.TITLE)}(e,t,n))||!(r&&r!==o.MATHML||!function(e,t){return t===o.MATHML&&(e===s.MI||e===s.MO||e===s.MN||e===s.MS||e===s.MTEXT)}(e,t))}},function(e,t,n){"use strict";const r=n(150),i=n(76),s=n(151),o=n(24),a=o.TAG_NAMES,u=o.NAMESPACES,l={treeAdapter:r},c=/&/g,h=/\u00a0/g,d=/"/g,p=/</g,f=/>/g;class m{constructor(e,t){this.options=i(l,t),this.treeAdapter=this.options.treeAdapter,this.html="",this.startNode=e}serialize(){return this._serializeChildNodes(this.startNode),this.html}_serializeChildNodes(e){const t=this.treeAdapter.getChildNodes(e);if(t)for(let e=0,n=t.length;e<n;e++){const n=t[e];this.treeAdapter.isElementNode(n)?this._serializeElement(n):this.treeAdapter.isTextNode(n)?this._serializeTextNode(n):this.treeAdapter.isCommentNode(n)?this._serializeCommentNode(n):this.treeAdapter.isDocumentTypeNode(n)&&this._serializeDocumentTypeNode(n)}}_serializeElement(e){const t=this.treeAdapter.getTagName(e),n=this.treeAdapter.getNamespaceURI(e);if(this.html+="<"+t,this._serializeAttributes(e),this.html+=">",t!==a.AREA&&t!==a.BASE&&t!==a.BASEFONT&&t!==a.BGSOUND&&t!==a.BR&&t!==a.COL&&t!==a.EMBED&&t!==a.FRAME&&t!==a.HR&&t!==a.IMG&&t!==a.INPUT&&t!==a.KEYGEN&&t!==a.LINK&&t!==a.META&&t!==a.PARAM&&t!==a.SOURCE&&t!==a.TRACK&&t!==a.WBR){const r=t===a.TEMPLATE&&n===u.HTML?this.treeAdapter.getTemplateContent(e):e;this._serializeChildNodes(r),this.html+="</"+t+">"}}_serializeAttributes(e){const t=this.treeAdapter.getAttrList(e);for(let e=0,n=t.length;e<n;e++){const n=t[e],r=m.escapeString(n.value,!0);this.html+=" ",n.namespace?n.namespace===u.XML?this.html+="xml:"+n.name:n.namespace===u.XMLNS?("xmlns"!==n.name&&(this.html+="xmlns:"),this.html+=n.name):n.namespace===u.XLINK?this.html+="xlink:"+n.name:this.html+=n.prefix+":"+n.name:this.html+=n.name,this.html+='="'+r+'"'}}_serializeTextNode(e){const t=this.treeAdapter.getTextNodeContent(e),n=this.treeAdapter.getParentNode(e);let r=void 0;n&&this.treeAdapter.isElementNode(n)&&(r=this.treeAdapter.getTagName(n)),r===a.STYLE||r===a.SCRIPT||r===a.XMP||r===a.IFRAME||r===a.NOEMBED||r===a.NOFRAMES||r===a.PLAINTEXT||r===a.NOSCRIPT?this.html+=t:this.html+=m.escapeString(t,!1)}_serializeCommentNode(e){this.html+="\x3c!--"+this.treeAdapter.getCommentNodeContent(e)+"--\x3e"}_serializeDocumentTypeNode(e){const t=this.treeAdapter.getDocumentTypeNodeName(e);this.html+="<"+s.serializeContent(t,null,null)+">"}}m.escapeString=function(e,t){return e=e.replace(c,"&").replace(h," "),e=t?e.replace(d,"""):e.replace(p,"<").replace(f,">")},e.exports=m},function(e,t,n){"use strict";const{DOCUMENT_MODE:r}=n(24);t.createDocument=function(){return{nodeName:"#document",mode:r.NO_QUIRKS,childNodes:[]}},t.createDocumentFragment=function(){return{nodeName:"#document-fragment",childNodes:[]}},t.createElement=function(e,t,n){return{nodeName:e,tagName:e,attrs:n,namespaceURI:t,childNodes:[],parentNode:null}},t.createCommentNode=function(e){return{nodeName:"#comment",data:e,parentNode:null}};const i=function(e){return{nodeName:"#text",value:e,parentNode:null}},s=t.appendChild=function(e,t){e.childNodes.push(t),t.parentNode=e},o=t.insertBefore=function(e,t,n){const r=e.childNodes.indexOf(n);e.childNodes.splice(r,0,t),t.parentNode=e};t.setTemplateContent=function(e,t){e.content=t},t.getTemplateContent=function(e){return e.content},t.setDocumentType=function(e,t,n,r){let i=null;for(let t=0;t<e.childNodes.length;t++)if("#documentType"===e.childNodes[t].nodeName){i=e.childNodes[t];break}i?(i.name=t,i.publicId=n,i.systemId=r):s(e,{nodeName:"#documentType",name:t,publicId:n,systemId:r})},t.setDocumentMode=function(e,t){e.mode=t},t.getDocumentMode=function(e){return e.mode},t.detachNode=function(e){if(e.parentNode){const t=e.parentNode.childNodes.indexOf(e);e.parentNode.childNodes.splice(t,1),e.parentNode=null}},t.insertText=function(e,t){if(e.childNodes.length){const n=e.childNodes[e.childNodes.length-1];if("#text"===n.nodeName)return void(n.value+=t)}s(e,i(t))},t.insertTextBefore=function(e,t,n){const r=e.childNodes[e.childNodes.indexOf(n)-1];r&&"#text"===r.nodeName?r.value+=t:o(e,i(t),n)},t.adoptAttributes=function(e,t){const n=[];for(let t=0;t<e.attrs.length;t++)n.push(e.attrs[t].name);for(let r=0;r<t.length;r++)-1===n.indexOf(t[r].name)&&e.attrs.push(t[r])},t.getFirstChild=function(e){return e.childNodes[0]},t.getChildNodes=function(e){return e.childNodes},t.getParentNode=function(e){return e.parentNode},t.getAttrList=function(e){return e.attrs},t.getTagName=function(e){return e.tagName},t.getNamespaceURI=function(e){return e.namespaceURI},t.getTextNodeContent=function(e){return e.value},t.getCommentNodeContent=function(e){return e.data},t.getDocumentTypeNodeName=function(e){return e.name},t.getDocumentTypeNodePublicId=function(e){return e.publicId},t.getDocumentTypeNodeSystemId=function(e){return e.systemId},t.isTextNode=function(e){return"#text"===e.nodeName},t.isCommentNode=function(e){return"#comment"===e.nodeName},t.isDocumentTypeNode=function(e){return"#documentType"===e.nodeName},t.isElementNode=function(e){return!!e.tagName},t.setNodeSourceCodeLocation=function(e,t){e.sourceCodeLocation=t},t.getNodeSourceCodeLocation=function(e){return e.sourceCodeLocation},t.updateNodeSourceCodeLocation=function(e,t){e.sourceCodeLocation=Object.assign(e.sourceCodeLocation,t)}},function(e,t,n){"use strict";const{DOCUMENT_MODE:r}=n(24),i=["+//silmaril//dtd html pro v0r11 19970101//","-//as//dtd html 3.0 aswedit + extensions//","-//advasoft ltd//dtd html 3.0 aswedit + extensions//","-//ietf//dtd html 2.0 level 1//","-//ietf//dtd html 2.0 level 2//","-//ietf//dtd html 2.0 strict level 1//","-//ietf//dtd html 2.0 strict level 2//","-//ietf//dtd html 2.0 strict//","-//ietf//dtd html 2.0//","-//ietf//dtd html 2.1e//","-//ietf//dtd html 3.0//","-//ietf//dtd html 3.2 final//","-//ietf//dtd html 3.2//","-//ietf//dtd html 3//","-//ietf//dtd html level 0//","-//ietf//dtd html level 1//","-//ietf//dtd html level 2//","-//ietf//dtd html level 3//","-//ietf//dtd html strict level 0//","-//ietf//dtd html strict level 1//","-//ietf//dtd html strict level 2//","-//ietf//dtd html strict level 3//","-//ietf//dtd html strict//","-//ietf//dtd html//","-//metrius//dtd metrius presentational//","-//microsoft//dtd internet explorer 2.0 html strict//","-//microsoft//dtd internet explorer 2.0 html//","-//microsoft//dtd internet explorer 2.0 tables//","-//microsoft//dtd internet explorer 3.0 html strict//","-//microsoft//dtd internet explorer 3.0 html//","-//microsoft//dtd internet explorer 3.0 tables//","-//netscape comm. corp.//dtd html//","-//netscape comm. corp.//dtd strict html//","-//o'reilly and associates//dtd html 2.0//","-//o'reilly and associates//dtd html extended 1.0//","-//o'reilly and associates//dtd html extended relaxed 1.0//","-//sq//dtd html 2.0 hotmetal + extensions//","-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//","-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//","-//spyglass//dtd html 2.0 extended//","-//sun microsystems corp.//dtd hotjava html//","-//sun microsystems corp.//dtd hotjava strict html//","-//w3c//dtd html 3 1995-03-24//","-//w3c//dtd html 3.2 draft//","-//w3c//dtd html 3.2 final//","-//w3c//dtd html 3.2//","-//w3c//dtd html 3.2s draft//","-//w3c//dtd html 4.0 frameset//","-//w3c//dtd html 4.0 transitional//","-//w3c//dtd html experimental 19960712//","-//w3c//dtd html experimental 970421//","-//w3c//dtd w3 html//","-//w3o//dtd w3 html 3.0//","-//webtechs//dtd mozilla html 2.0//","-//webtechs//dtd mozilla html//"],s=i.concat(["-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"]),o=["-//w3o//dtd w3 html strict 3.0//en//","-/w3c/dtd html 4.0 transitional/en","html"],a=["-//w3c//dtd xhtml 1.0 frameset//","-//w3c//dtd xhtml 1.0 transitional//"],u=a.concat(["-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"]);function l(e){const t=-1!==e.indexOf('"')?"'":'"';return t+e+t}function c(e,t){for(let n=0;n<t.length;n++)if(0===e.indexOf(t[n]))return!0;return!1}t.isConforming=function(e){return"html"===e.name&&null===e.publicId&&(null===e.systemId||"about:legacy-compat"===e.systemId)},t.getDocumentMode=function(e){if("html"!==e.name)return r.QUIRKS;const t=e.systemId;if(t&&"http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd"===t.toLowerCase())return r.QUIRKS;let n=e.publicId;if(null!==n){if(n=n.toLowerCase(),o.indexOf(n)>-1)return r.QUIRKS;let e=null===t?s:i;if(c(n,e))return r.QUIRKS;if(e=null===t?a:u,c(n,e))return r.LIMITED_QUIRKS}return r.NO_QUIRKS},t.serializeContent=function(e,t,n){let r="!DOCTYPE ";return e&&(r+=e),t?r+=" PUBLIC "+l(t):n&&(r+=" SYSTEM"),null!==n&&(r+=" "+l(n)),r}},function(e,t){var n=new Uint32Array([0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535,131071,262143,524287,1048575,2097151,4194303,8388607,16777215]);function r(e){this.buf_=new Uint8Array(8224),this.input_=e,this.reset()}r.READ_SIZE=4096,r.IBUF_MASK=8191,r.prototype.reset=function(){this.buf_ptr_=0,this.val_=0,this.pos_=0,this.bit_pos_=0,this.bit_end_pos_=0,this.eos_=0,this.readMoreInput();for(var e=0;e<4;e++)this.val_|=this.buf_[this.pos_]<<8*e,++this.pos_;return this.bit_end_pos_>0},r.prototype.readMoreInput=function(){if(!(this.bit_end_pos_>256))if(this.eos_){if(this.bit_pos_>this.bit_end_pos_)throw new Error("Unexpected end of input "+this.bit_pos_+" "+this.bit_end_pos_)}else{var e=this.buf_ptr_,t=this.input_.read(this.buf_,e,4096);if(t<0)throw new Error("Unexpected end of input");if(t<4096){this.eos_=1;for(var n=0;n<32;n++)this.buf_[e+t+n]=0}if(0===e){for(n=0;n<32;n++)this.buf_[8192+n]=this.buf_[n];this.buf_ptr_=4096}else this.buf_ptr_=0;this.bit_end_pos_+=t<<3}},r.prototype.fillBitWindow=function(){for(;this.bit_pos_>=8;)this.val_>>>=8,this.val_|=this.buf_[8191&this.pos_]<<24,++this.pos_,this.bit_pos_=this.bit_pos_-8>>>0,this.bit_end_pos_=this.bit_end_pos_-8>>>0},r.prototype.readBits=function(e){32-this.bit_pos_<e&&this.fillBitWindow();var t=this.val_>>>this.bit_pos_&n[e];return this.bit_pos_+=e,t},e.exports=r},function(e,t,n){var r=n(154);t.init=function(){return(0,n(77).BrotliDecompressBuffer)(r.toByteArray(n(155)))}},function(e,t,n){"use strict";t.byteLength=function(e){var t=l(e),n=t[0],r=t[1];return 3*(n+r)/4-r},t.toByteArray=function(e){for(var t,n=l(e),r=n[0],o=n[1],a=new s(function(e,t,n){return 3*(t+n)/4-n}(0,r,o)),u=0,c=o>0?r-4:r,h=0;h<c;h+=4)t=i[e.charCodeAt(h)]<<18|i[e.charCodeAt(h+1)]<<12|i[e.charCodeAt(h+2)]<<6|i[e.charCodeAt(h+3)],a[u++]=t>>16&255,a[u++]=t>>8&255,a[u++]=255&t;2===o&&(t=i[e.charCodeAt(h)]<<2|i[e.charCodeAt(h+1)]>>4,a[u++]=255&t);1===o&&(t=i[e.charCodeAt(h)]<<10|i[e.charCodeAt(h+1)]<<4|i[e.charCodeAt(h+2)]>>2,a[u++]=t>>8&255,a[u++]=255&t);return a},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,s=[],o=0,a=n-i;o<a;o+=16383)s.push(c(e,o,o+16383>a?a:o+16383));1===i?(t=e[n-1],s.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],s.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return s.join("")};for(var r=[],i=[],s="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0,u=o.length;a<u;++a)r[a]=o[a],i[o.charCodeAt(a)]=a;function l(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function c(e,t,n){for(var i,s,o=[],a=t;a<n;a+=3)i=(e[a]<<16&16711680)+(e[a+1]<<8&65280)+(255&e[a+2]),o.push(r[(s=i)>>18&63]+r[s>>12&63]+r[s>>6&63]+r[63&s]);return o.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(e,t){e.exports="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"},function(e,t){t.lookup=new Uint8Array([0,0,0,0,0,0,0,0,0,4,4,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,12,16,12,12,20,12,16,24,28,12,12,32,12,36,12,44,44,44,44,44,44,44,44,44,44,32,32,24,40,28,12,12,48,52,52,52,48,52,52,52,48,52,52,52,52,52,48,52,52,52,52,52,48,52,52,52,52,52,24,12,28,12,12,12,56,60,60,60,56,60,60,60,56,60,60,60,60,60,56,60,60,60,60,60,56,60,60,60,60,60,24,12,28,12,0,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,0,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,56,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,8,9,9,9,9,10,10,10,10,11,11,11,11,12,12,12,12,13,13,13,13,14,14,14,14,15,15,15,15,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,22,22,22,22,23,23,23,23,24,24,24,24,25,25,25,25,26,26,26,26,27,27,27,27,28,28,28,28,29,29,29,29,30,30,30,30,31,31,31,31,32,32,32,32,33,33,33,33,34,34,34,34,35,35,35,35,36,36,36,36,37,37,37,37,38,38,38,38,39,39,39,39,40,40,40,40,41,41,41,41,42,42,42,42,43,43,43,43,44,44,44,44,45,45,45,45,46,46,46,46,47,47,47,47,48,48,48,48,49,49,49,49,50,50,50,50,51,51,51,51,52,52,52,52,53,53,53,53,54,54,54,54,55,55,55,55,56,56,56,56,57,57,57,57,58,58,58,58,59,59,59,59,60,60,60,60,61,61,61,61,62,62,62,62,63,63,63,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),t.lookupOffsets=new Uint16Array([1024,1536,1280,1536,0,256,768,512])},function(e,t){function n(e,t){this.offset=e,this.nbits=t}t.kBlockLengthPrefixCode=[new n(1,2),new n(5,2),new n(9,2),new n(13,2),new n(17,3),new n(25,3),new n(33,3),new n(41,3),new n(49,4),new n(65,4),new n(81,4),new n(97,4),new n(113,5),new n(145,5),new n(177,5),new n(209,5),new n(241,6),new n(305,6),new n(369,7),new n(497,8),new n(753,9),new n(1265,10),new n(2289,11),new n(4337,12),new n(8433,13),new n(16625,24)],t.kInsertLengthPrefixCode=[new n(0,0),new n(1,0),new n(2,0),new n(3,0),new n(4,0),new n(5,0),new n(6,1),new n(8,1),new n(10,2),new n(14,2),new n(18,3),new n(26,3),new n(34,4),new n(50,4),new n(66,5),new n(98,5),new n(130,6),new n(194,7),new n(322,8),new n(578,9),new n(1090,10),new n(2114,12),new n(6210,14),new n(22594,24)],t.kCopyLengthPrefixCode=[new n(2,0),new n(3,0),new n(4,0),new n(5,0),new n(6,0),new n(7,0),new n(8,0),new n(9,0),new n(10,1),new n(12,1),new n(14,2),new n(18,2),new n(22,3),new n(30,3),new n(38,4),new n(54,4),new n(70,5),new n(102,5),new n(134,6),new n(198,7),new n(326,8),new n(582,9),new n(1094,10),new n(2118,24)],t.kInsertRangeLut=[0,0,8,8,0,16,8,16,16],t.kCopyRangeLut=[0,8,0,8,16,0,16,8,16]},function(e,t,n){var r=n(79);function i(e,t,n){this.prefix=new Uint8Array(e.length),this.transform=t,this.suffix=new Uint8Array(n.length);for(var r=0;r<e.length;r++)this.prefix[r]=e.charCodeAt(r);for(r=0;r<n.length;r++)this.suffix[r]=n.charCodeAt(r)}var s=[new i("",0,""),new i("",0," "),new i(" ",0," "),new i("",12,""),new i("",10," "),new i("",0," the "),new i(" ",0,""),new i("s ",0," "),new i("",0," of "),new i("",10,""),new i("",0," and "),new i("",13,""),new i("",1,""),new i(", ",0," "),new i("",0,", "),new i(" ",10," "),new i("",0," in "),new i("",0," to "),new i("e ",0," "),new i("",0,'"'),new i("",0,"."),new i("",0,'">'),new i("",0,"\n"),new i("",3,""),new i("",0,"]"),new i("",0," for "),new i("",14,""),new i("",2,""),new i("",0," a "),new i("",0," that "),new i(" ",10,""),new i("",0,". "),new i(".",0,""),new i(" ",0,", "),new i("",15,""),new i("",0," with "),new i("",0,"'"),new i("",0," from "),new i("",0," by "),new i("",16,""),new i("",17,""),new i(" the ",0,""),new i("",4,""),new i("",0,". The "),new i("",11,""),new i("",0," on "),new i("",0," as "),new i("",0," is "),new i("",7,""),new i("",1,"ing "),new i("",0,"\n\t"),new i("",0,":"),new i(" ",0,". "),new i("",0,"ed "),new i("",20,""),new i("",18,""),new i("",6,""),new i("",0,"("),new i("",10,", "),new i("",8,""),new i("",0," at "),new i("",0,"ly "),new i(" the ",0," of "),new i("",5,""),new i("",9,""),new i(" ",10,", "),new i("",10,'"'),new i(".",0,"("),new i("",11," "),new i("",10,'">'),new i("",0,'="'),new i(" ",0,"."),new i(".com/",0,""),new i(" the ",0," of the "),new i("",10,"'"),new i("",0,". This "),new i("",0,","),new i(".",0," "),new i("",10,"("),new i("",10,"."),new i("",0," not "),new i(" ",0,'="'),new i("",0,"er "),new i(" ",11," "),new i("",0,"al "),new i(" ",11,""),new i("",0,"='"),new i("",11,'"'),new i("",10,". "),new i(" ",0,"("),new i("",0,"ful "),new i(" ",10,". "),new i("",0,"ive "),new i("",0,"less "),new i("",11,"'"),new i("",0,"est "),new i(" ",10,"."),new i("",11,'">'),new i(" ",0,"='"),new i("",10,","),new i("",0,"ize "),new i("",11,"."),new i("Â ",0,""),new i(" ",0,","),new i("",10,'="'),new i("",11,'="'),new i("",0,"ous "),new i("",11,", "),new i("",10,"='"),new i(" ",10,","),new i(" ",11,'="'),new i(" ",11,", "),new i("",11,","),new i("",11,"("),new i("",11,". "),new i(" ",11,"."),new i("",11,"='"),new i(" ",11,". "),new i(" ",10,'="'),new i(" ",11,"='"),new i(" ",10,"='")];function o(e,t){return e[t]<192?(e[t]>=97&&e[t]<=122&&(e[t]^=32),1):e[t]<224?(e[t+1]^=32,2):(e[t+2]^=5,3)}t.kTransforms=s,t.kNumTransforms=s.length,t.transformDictionaryWord=function(e,t,n,i,a){var u,l=s[a].prefix,c=s[a].suffix,h=s[a].transform,d=h<12?0:h-11,p=0,f=t;d>i&&(d=i);for(var m=0;m<l.length;)e[t++]=l[m++];for(n+=d,i-=d,h<=9&&(i-=h),p=0;p<i;p++)e[t++]=r.dictionary[n+p];if(u=t-i,10===h)o(e,u);else if(11===h)for(;i>0;){var w=o(e,u);u+=w,i-=w}for(var g=0;g<c.length;)e[t++]=c[g++];return t-f}},function(e,t,n){"use strict";var r=n(160),i=n(9),s=n(83),o=n(48),a=n(84),u=Object.prototype.toString;function l(e){if(!(this instanceof l))return new l(e);this.options=i.assign({level:-1,method:8,chunkSize:16384,windowBits:15,memLevel:8,strategy:0,to:""},e||{});var t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new a,this.strm.avail_out=0;var n=r.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(0!==n)throw new Error(o[n]);if(t.header&&r.deflateSetHeader(this.strm,t.header),t.dictionary){var c;if(c="string"==typeof t.dictionary?s.string2buf(t.dictionary):"[object ArrayBuffer]"===u.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,0!==(n=r.deflateSetDictionary(this.strm,c)))throw new Error(o[n]);this._dict_set=!0}}function c(e,t){var n=new l(t);if(n.push(e,!0),n.err)throw n.msg||o[n.err];return n.result}l.prototype.push=function(e,t){var n,o,a=this.strm,l=this.options.chunkSize;if(this.ended)return!1;o=t===~~t?t:!0===t?4:0,"string"==typeof e?a.input=s.string2buf(e):"[object ArrayBuffer]"===u.call(e)?a.input=new Uint8Array(e):a.input=e,a.next_in=0,a.avail_in=a.input.length;do{if(0===a.avail_out&&(a.output=new i.Buf8(l),a.next_out=0,a.avail_out=l),1!==(n=r.deflate(a,o))&&0!==n)return this.onEnd(n),this.ended=!0,!1;0!==a.avail_out&&(0!==a.avail_in||4!==o&&2!==o)||("string"===this.options.to?this.onData(s.buf2binstring(i.shrinkBuf(a.output,a.next_out))):this.onData(i.shrinkBuf(a.output,a.next_out)))}while((a.avail_in>0||0===a.avail_out)&&1!==n);return 4===o?(n=r.deflateEnd(this.strm),this.onEnd(n),this.ended=!0,0===n):2!==o||(this.onEnd(0),a.avail_out=0,!0)},l.prototype.onData=function(e){this.chunks.push(e)},l.prototype.onEnd=function(e){0===e&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},t.Deflate=l,t.deflate=c,t.deflateRaw=function(e,t){return(t=t||{}).raw=!0,c(e,t)},t.gzip=function(e,t){return(t=t||{}).gzip=!0,c(e,t)}},function(e,t,n){"use strict";var r,i=n(9),s=n(161),o=n(81),a=n(82),u=n(48);function l(e,t){return e.msg=u[t],t}function c(e){return(e<<1)-(e>4?9:0)}function h(e){for(var t=e.length;--t>=0;)e[t]=0}function d(e){var t=e.state,n=t.pending;n>e.avail_out&&(n=e.avail_out),0!==n&&(i.arraySet(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,0===t.pending&&(t.pending_out=0))}function p(e,t){s._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,d(e.strm)}function f(e,t){e.pending_buf[e.pending++]=t}function m(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function w(e,t){var n,r,i=e.max_chain_length,s=e.strstart,o=e.prev_length,a=e.nice_match,u=e.strstart>e.w_size-262?e.strstart-(e.w_size-262):0,l=e.window,c=e.w_mask,h=e.prev,d=e.strstart+258,p=l[s+o-1],f=l[s+o];e.prev_length>=e.good_match&&(i>>=2),a>e.lookahead&&(a=e.lookahead);do{if(l[(n=t)+o]===f&&l[n+o-1]===p&&l[n]===l[s]&&l[++n]===l[s+1]){s+=2,n++;do{}while(l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&s<d);if(r=258-(d-s),s=d-258,r>o){if(e.match_start=t,o=r,r>=a)break;p=l[s+o-1],f=l[s+o]}}}while((t=h[t&c])>u&&0!=--i);return o<=e.lookahead?o:e.lookahead}function g(e){var t,n,r,s,u,l,c,h,d,p,f=e.w_size;do{if(s=e.window_size-e.lookahead-e.strstart,e.strstart>=f+(f-262)){i.arraySet(e.window,e.window,f,f,0),e.match_start-=f,e.strstart-=f,e.block_start-=f,t=n=e.hash_size;do{r=e.head[--t],e.head[t]=r>=f?r-f:0}while(--n);t=n=f;do{r=e.prev[--t],e.prev[t]=r>=f?r-f:0}while(--n);s+=f}if(0===e.strm.avail_in)break;if(l=e.strm,c=e.window,h=e.strstart+e.lookahead,d=s,p=void 0,(p=l.avail_in)>d&&(p=d),n=0===p?0:(l.avail_in-=p,i.arraySet(c,l.input,l.next_in,p,h),1===l.state.wrap?l.adler=o(l.adler,c,p,h):2===l.state.wrap&&(l.adler=a(l.adler,c,p,h)),l.next_in+=p,l.total_in+=p,p),e.lookahead+=n,e.lookahead+e.insert>=3)for(u=e.strstart-e.insert,e.ins_h=e.window[u],e.ins_h=(e.ins_h<<e.hash_shift^e.window[u+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[u+3-1])&e.hash_mask,e.prev[u&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=u,u++,e.insert--,!(e.lookahead+e.insert<3)););}while(e.lookahead<262&&0!==e.strm.avail_in)}function _(e,t){for(var n,r;;){if(e.lookahead<262){if(g(e),e.lookahead<262&&0===t)return 1;if(0===e.lookahead)break}if(n=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==n&&e.strstart-n<=e.w_size-262&&(e.match_length=w(e,n)),e.match_length>=3)if(r=s._tr_tally(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=3){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart}while(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 r=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(r&&(p(e,!1),0===e.strm.avail_out))return 1}return e.insert=e.strstart<2?e.strstart:2,4===t?(p(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(p(e,!1),0===e.strm.avail_out)?1:2}function b(e,t){for(var n,r,i;;){if(e.lookahead<262){if(g(e),e.lookahead<262&&0===t)return 1;if(0===e.lookahead)break}if(n=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=2,0!==n&&e.prev_length<e.max_lazy_match&&e.strstart-n<=e.w_size-262&&(e.match_length=w(e,n),e.match_length<=5&&(1===e.strategy||3===e.match_length&&e.strstart-e.match_start>4096)&&(e.match_length=2)),e.prev_length>=3&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-3,r=s._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart)}while(0!=--e.prev_length);if(e.match_available=0,e.match_length=2,e.strstart++,r&&(p(e,!1),0===e.strm.avail_out))return 1}else if(e.match_available){if((r=s._tr_tally(e,0,e.window[e.strstart-1]))&&p(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&&(r=s._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<2?e.strstart:2,4===t?(p(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(p(e,!1),0===e.strm.avail_out)?1:2}function y(e,t,n,r,i){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=i}function v(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=8,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(1146),this.dyn_dtree=new i.Buf16(122),this.bl_tree=new i.Buf16(78),h(this.dyn_ltree),h(this.dyn_dtree),h(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(16),this.heap=new i.Buf16(573),h(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(573),h(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 E(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=2,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?42:113,e.adler=2===t.wrap?0:1,t.last_flush=0,s._tr_init(t),0):l(e,-2)}function A(e){var t,n=E(e);return 0===n&&((t=e.state).window_size=2*t.w_size,h(t.head),t.max_lazy_match=r[t.level].max_lazy,t.good_match=r[t.level].good_length,t.nice_match=r[t.level].nice_length,t.max_chain_length=r[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=2,t.match_available=0,t.ins_h=0),n}function x(e,t,n,r,s,o){if(!e)return-2;var a=1;if(-1===t&&(t=6),r<0?(a=0,r=-r):r>15&&(a=2,r-=16),s<1||s>9||8!==n||r<8||r>15||t<0||t>9||o<0||o>4)return l(e,-2);8===r&&(r=9);var u=new v;return e.state=u,u.strm=e,u.wrap=a,u.gzhead=null,u.w_bits=r,u.w_size=1<<u.w_bits,u.w_mask=u.w_size-1,u.hash_bits=s+7,u.hash_size=1<<u.hash_bits,u.hash_mask=u.hash_size-1,u.hash_shift=~~((u.hash_bits+3-1)/3),u.window=new i.Buf8(2*u.w_size),u.head=new i.Buf16(u.hash_size),u.prev=new i.Buf16(u.w_size),u.lit_bufsize=1<<s+6,u.pending_buf_size=4*u.lit_bufsize,u.pending_buf=new i.Buf8(u.pending_buf_size),u.d_buf=1*u.lit_bufsize,u.l_buf=3*u.lit_bufsize,u.level=t,u.strategy=o,u.method=n,A(e)}r=[new y(0,0,0,0,(function(e,t){var n=65535;for(n>e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(e.lookahead<=1){if(g(e),0===e.lookahead&&0===t)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((0===e.strstart||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,p(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-262&&(p(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(p(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(p(e,!1),e.strm.avail_out),1)})),new y(4,4,8,4,_),new y(4,5,16,8,_),new y(4,6,32,32,_),new y(4,4,16,16,b),new y(8,16,32,32,b),new y(8,16,128,128,b),new y(8,32,128,256,b),new y(32,128,258,1024,b),new y(32,258,258,4096,b)],t.deflateInit=function(e,t){return x(e,t,8,15,8,0)},t.deflateInit2=x,t.deflateReset=A,t.deflateResetKeep=E,t.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?-2:(e.state.gzhead=t,0):-2},t.deflate=function(e,t){var n,i,o,u;if(!e||!e.state||t>5||t<0)return e?l(e,-2):-2;if(i=e.state,!e.output||!e.input&&0!==e.avail_in||666===i.status&&4!==t)return l(e,0===e.avail_out?-5:-2);if(i.strm=e,n=i.last_flush,i.last_flush=t,42===i.status)if(2===i.wrap)e.adler=0,f(i,31),f(i,139),f(i,8),i.gzhead?(f(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)),f(i,255&i.gzhead.time),f(i,i.gzhead.time>>8&255),f(i,i.gzhead.time>>16&255),f(i,i.gzhead.time>>24&255),f(i,9===i.level?2:i.strategy>=2||i.level<2?4:0),f(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(f(i,255&i.gzhead.extra.length),f(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=a(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(f(i,0),f(i,0),f(i,0),f(i,0),f(i,0),f(i,9===i.level?2:i.strategy>=2||i.level<2?4:0),f(i,3),i.status=113);else{var w=8+(i.w_bits-8<<4)<<8;w|=(i.strategy>=2||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(w|=32),w+=31-w%31,i.status=113,m(i,w),0!==i.strstart&&(m(i,e.adler>>>16),m(i,65535&e.adler)),e.adler=1}if(69===i.status)if(i.gzhead.extra){for(o=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),d(e),o=i.pending,i.pending!==i.pending_buf_size));)f(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(73===i.status)if(i.gzhead.name){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),d(e),o=i.pending,i.pending===i.pending_buf_size)){u=1;break}u=i.gzindex<i.gzhead.name.length?255&i.gzhead.name.charCodeAt(i.gzindex++):0,f(i,u)}while(0!==u);i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),0===u&&(i.gzindex=0,i.status=91)}else i.status=91;if(91===i.status)if(i.gzhead.comment){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),d(e),o=i.pending,i.pending===i.pending_buf_size)){u=1;break}u=i.gzindex<i.gzhead.comment.length?255&i.gzhead.comment.charCodeAt(i.gzindex++):0,f(i,u)}while(0!==u);i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),0===u&&(i.status=103)}else i.status=103;if(103===i.status&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&d(e),i.pending+2<=i.pending_buf_size&&(f(i,255&e.adler),f(i,e.adler>>8&255),e.adler=0,i.status=113)):i.status=113),0!==i.pending){if(d(e),0===e.avail_out)return i.last_flush=-1,0}else if(0===e.avail_in&&c(t)<=c(n)&&4!==t)return l(e,-5);if(666===i.status&&0!==e.avail_in)return l(e,-5);if(0!==e.avail_in||0!==i.lookahead||0!==t&&666!==i.status){var _=2===i.strategy?function(e,t){for(var n;;){if(0===e.lookahead&&(g(e),0===e.lookahead)){if(0===t)return 1;break}if(e.match_length=0,n=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(p(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(p(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(p(e,!1),0===e.strm.avail_out)?1:2}(i,t):3===i.strategy?function(e,t){for(var n,r,i,o,a=e.window;;){if(e.lookahead<=258){if(g(e),e.lookahead<=258&&0===t)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&e.strstart>0&&(r=a[i=e.strstart-1])===a[++i]&&r===a[++i]&&r===a[++i]){o=e.strstart+258;do{}while(r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&i<o);e.match_length=258-(o-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=3?(n=s._tr_tally(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(p(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(p(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(p(e,!1),0===e.strm.avail_out)?1:2}(i,t):r[i.level].func(i,t);if(3!==_&&4!==_||(i.status=666),1===_||3===_)return 0===e.avail_out&&(i.last_flush=-1),0;if(2===_&&(1===t?s._tr_align(i):5!==t&&(s._tr_stored_block(i,0,0,!1),3===t&&(h(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),d(e),0===e.avail_out))return i.last_flush=-1,0}return 4!==t?0:i.wrap<=0?1:(2===i.wrap?(f(i,255&e.adler),f(i,e.adler>>8&255),f(i,e.adler>>16&255),f(i,e.adler>>24&255),f(i,255&e.total_in),f(i,e.total_in>>8&255),f(i,e.total_in>>16&255),f(i,e.total_in>>24&255)):(m(i,e.adler>>>16),m(i,65535&e.adler)),d(e),i.wrap>0&&(i.wrap=-i.wrap),0!==i.pending?0:1)},t.deflateEnd=function(e){var t;return e&&e.state?42!==(t=e.state.status)&&69!==t&&73!==t&&91!==t&&103!==t&&113!==t&&666!==t?l(e,-2):(e.state=null,113===t?l(e,-3):0):-2},t.deflateSetDictionary=function(e,t){var n,r,s,a,u,l,c,d,p=t.length;if(!e||!e.state)return-2;if(2===(a=(n=e.state).wrap)||1===a&&42!==n.status||n.lookahead)return-2;for(1===a&&(e.adler=o(e.adler,t,p,0)),n.wrap=0,p>=n.w_size&&(0===a&&(h(n.head),n.strstart=0,n.block_start=0,n.insert=0),d=new i.Buf8(n.w_size),i.arraySet(d,t,p-n.w_size,n.w_size,0),t=d,p=n.w_size),u=e.avail_in,l=e.next_in,c=e.input,e.avail_in=p,e.next_in=0,e.input=t,g(n);n.lookahead>=3;){r=n.strstart,s=n.lookahead-2;do{n.ins_h=(n.ins_h<<n.hash_shift^n.window[r+3-1])&n.hash_mask,n.prev[r&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=r,r++}while(--s);n.strstart=r,n.lookahead=2,g(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=2,n.match_available=0,e.next_in=l,e.input=c,e.avail_in=u,n.wrap=a,0},t.deflateInfo="pako deflate (from Nodeca project)"},function(e,t,n){"use strict";var r=n(9);function i(e){for(var t=e.length;--t>=0;)e[t]=0}var 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],a=[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],l=new Array(576);i(l);var c=new Array(60);i(c);var h=new Array(512);i(h);var d=new Array(256);i(d);var p=new Array(29);i(p);var f,m,w,g=new Array(30);function _(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}function b(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function y(e){return e<256?h[e]:h[256+(e>>>7)]}function v(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function E(e,t,n){e.bi_valid>16-n?(e.bi_buf|=t<<e.bi_valid&65535,v(e,e.bi_buf),e.bi_buf=t>>16-e.bi_valid,e.bi_valid+=n-16):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=n)}function A(e,t,n){E(e,n[2*t],n[2*t+1])}function x(e,t){var n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}function T(e,t,n){var r,i,s=new Array(16),o=0;for(r=1;r<=15;r++)s[r]=o=o+n[r-1]<<1;for(i=0;i<=t;i++){var a=e[2*i+1];0!==a&&(e[2*i]=x(s[a]++,a))}}function S(e){var t;for(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){e.bi_valid>8?v(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function k(e,t,n,r){var i=2*t,s=2*n;return e[i]<e[s]||e[i]===e[s]&&r[t]<=r[n]}function D(e,t,n){for(var r=e.heap[n],i=n<<1;i<=e.heap_len&&(i<e.heap_len&&k(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!k(t,r,e.heap[i],e.depth));)e.heap[n]=e.heap[i],n=i,i<<=1;e.heap[n]=r}function R(e,t,n){var r,i,a,u,l=0;if(0!==e.last_lit)do{r=e.pending_buf[e.d_buf+2*l]<<8|e.pending_buf[e.d_buf+2*l+1],i=e.pending_buf[e.l_buf+l],l++,0===r?A(e,i,t):(A(e,(a=d[i])+256+1,t),0!==(u=s[a])&&E(e,i-=p[a],u),A(e,a=y(--r),n),0!==(u=o[a])&&E(e,r-=g[a],u))}while(l<e.last_lit);A(e,256,t)}function O(e,t){var n,r,i,s=t.dyn_tree,o=t.stat_desc.static_tree,a=t.stat_desc.has_stree,u=t.stat_desc.elems,l=-1;for(e.heap_len=0,e.heap_max=573,n=0;n<u;n++)0!==s[2*n]?(e.heap[++e.heap_len]=l=n,e.depth[n]=0):s[2*n+1]=0;for(;e.heap_len<2;)s[2*(i=e.heap[++e.heap_len]=l<2?++l:0)]=1,e.depth[i]=0,e.opt_len--,a&&(e.static_len-=o[2*i+1]);for(t.max_code=l,n=e.heap_len>>1;n>=1;n--)D(e,s,n);i=u;do{n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],D(e,s,1),r=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=r,s[2*i]=s[2*n]+s[2*r],e.depth[i]=(e.depth[n]>=e.depth[r]?e.depth[n]:e.depth[r])+1,s[2*n+1]=s[2*r+1]=i,e.heap[1]=i++,D(e,s,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,t){var n,r,i,s,o,a,u=t.dyn_tree,l=t.max_code,c=t.stat_desc.static_tree,h=t.stat_desc.has_stree,d=t.stat_desc.extra_bits,p=t.stat_desc.extra_base,f=t.stat_desc.max_length,m=0;for(s=0;s<=15;s++)e.bl_count[s]=0;for(u[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;n<573;n++)(s=u[2*u[2*(r=e.heap[n])+1]+1]+1)>f&&(s=f,m++),u[2*r+1]=s,r>l||(e.bl_count[s]++,o=0,r>=p&&(o=d[r-p]),a=u[2*r],e.opt_len+=a*(s+o),h&&(e.static_len+=a*(c[2*r+1]+o)));if(0!==m){do{for(s=f-1;0===e.bl_count[s];)s--;e.bl_count[s]--,e.bl_count[s+1]+=2,e.bl_count[f]--,m-=2}while(m>0);for(s=f;0!==s;s--)for(r=e.bl_count[s];0!==r;)(i=e.heap[--n])>l||(u[2*i+1]!==s&&(e.opt_len+=(s-u[2*i+1])*u[2*i],u[2*i+1]=s),r--)}}(e,t),T(s,l,e.bl_count)}function I(e,t,n){var r,i,s=-1,o=t[1],a=0,u=7,l=4;for(0===o&&(u=138,l=3),t[2*(n+1)+1]=65535,r=0;r<=n;r++)i=o,o=t[2*(r+1)+1],++a<u&&i===o||(a<l?e.bl_tree[2*i]+=a:0!==i?(i!==s&&e.bl_tree[2*i]++,e.bl_tree[32]++):a<=10?e.bl_tree[34]++:e.bl_tree[36]++,a=0,s=i,0===o?(u=138,l=3):i===o?(u=6,l=3):(u=7,l=4))}function N(e,t,n){var r,i,s=-1,o=t[1],a=0,u=7,l=4;for(0===o&&(u=138,l=3),r=0;r<=n;r++)if(i=o,o=t[2*(r+1)+1],!(++a<u&&i===o)){if(a<l)do{A(e,i,e.bl_tree)}while(0!=--a);else 0!==i?(i!==s&&(A(e,i,e.bl_tree),a--),A(e,16,e.bl_tree),E(e,a-3,2)):a<=10?(A(e,17,e.bl_tree),E(e,a-3,3)):(A(e,18,e.bl_tree),E(e,a-11,7));a=0,s=i,0===o?(u=138,l=3):i===o?(u=6,l=3):(u=7,l=4)}}i(g);var F=!1;function P(e,t,n,i){E(e,0+(i?1:0),3),function(e,t,n,i){C(e),i&&(v(e,n),v(e,~n)),r.arraySet(e.pending_buf,e.window,t,n,e.pending),e.pending+=n}(e,t,n,!0)}t._tr_init=function(e){F||(!function(){var e,t,n,r,i,u=new Array(16);for(n=0,r=0;r<28;r++)for(p[r]=n,e=0;e<1<<s[r];e++)d[n++]=r;for(d[n-1]=r,i=0,r=0;r<16;r++)for(g[r]=i,e=0;e<1<<o[r];e++)h[i++]=r;for(i>>=7;r<30;r++)for(g[r]=i<<7,e=0;e<1<<o[r]-7;e++)h[256+i++]=r;for(t=0;t<=15;t++)u[t]=0;for(e=0;e<=143;)l[2*e+1]=8,e++,u[8]++;for(;e<=255;)l[2*e+1]=9,e++,u[9]++;for(;e<=279;)l[2*e+1]=7,e++,u[7]++;for(;e<=287;)l[2*e+1]=8,e++,u[8]++;for(T(l,287,u),e=0;e<30;e++)c[2*e+1]=5,c[2*e]=x(e,5);f=new _(l,s,257,286,15),m=new _(c,o,0,30,15),w=new _(new Array(0),a,0,19,7)}(),F=!0),e.l_desc=new b(e.dyn_ltree,f),e.d_desc=new b(e.dyn_dtree,m),e.bl_desc=new b(e.bl_tree,w),e.bi_buf=0,e.bi_valid=0,S(e)},t._tr_stored_block=P,t._tr_flush_block=function(e,t,n,r){var i,s,o=0;e.level>0?(2===e.strm.data_type&&(e.strm.data_type=function(e){var t,n=4093624447;for(t=0;t<=31;t++,n>>>=1)if(1&n&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;t<256;t++)if(0!==e.dyn_ltree[2*t])return 1;return 0}(e)),O(e,e.l_desc),O(e,e.d_desc),o=function(e){var t;for(I(e,e.dyn_ltree,e.l_desc.max_code),I(e,e.dyn_dtree,e.d_desc.max_code),O(e,e.bl_desc),t=18;t>=3&&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,(s=e.static_len+3+7>>>3)<=i&&(i=s)):i=s=n+5,n+4<=i&&-1!==t?P(e,t,n,r):4===e.strategy||s===i?(E(e,2+(r?1:0),3),R(e,l,c)):(E(e,4+(r?1:0),3),function(e,t,n,r){var i;for(E(e,t-257,5),E(e,n-1,5),E(e,r-4,4),i=0;i<r;i++)E(e,e.bl_tree[2*u[i]+1],3);N(e,e.dyn_ltree,t-1),N(e,e.dyn_dtree,n-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,o+1),R(e,e.dyn_ltree,e.dyn_dtree)),S(e),r&&C(e)},t._tr_tally=function(e,t,n){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&n,e.last_lit++,0===t?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(d[n]+256+1)]++,e.dyn_dtree[2*y(t)]++),e.last_lit===e.lit_bufsize-1},t._tr_align=function(e){E(e,2,3),A(e,256,l),function(e){16===e.bi_valid?(v(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},function(e,t,n){"use strict";var r=n(163),i=n(9),s=n(83),o=n(85),a=n(48),u=n(84),l=n(166),c=Object.prototype.toString;function h(e){if(!(this instanceof h))return new h(e);this.options=i.assign({chunkSize:16384,windowBits:0,to:""},e||{});var t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(t.windowBits>=0&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&0==(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new u,this.strm.avail_out=0;var n=r.inflateInit2(this.strm,t.windowBits);if(n!==o.Z_OK)throw new Error(a[n]);if(this.header=new l,r.inflateGetHeader(this.strm,this.header),t.dictionary&&("string"==typeof t.dictionary?t.dictionary=s.string2buf(t.dictionary):"[object ArrayBuffer]"===c.call(t.dictionary)&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(n=r.inflateSetDictionary(this.strm,t.dictionary))!==o.Z_OK))throw new Error(a[n])}function d(e,t){var n=new h(t);if(n.push(e,!0),n.err)throw n.msg||a[n.err];return n.result}h.prototype.push=function(e,t){var n,a,u,l,h,d=this.strm,p=this.options.chunkSize,f=this.options.dictionary,m=!1;if(this.ended)return!1;a=t===~~t?t:!0===t?o.Z_FINISH:o.Z_NO_FLUSH,"string"==typeof e?d.input=s.binstring2buf(e):"[object ArrayBuffer]"===c.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(p),d.next_out=0,d.avail_out=p),(n=r.inflate(d,o.Z_NO_FLUSH))===o.Z_NEED_DICT&&f&&(n=r.inflateSetDictionary(this.strm,f)),n===o.Z_BUF_ERROR&&!0===m&&(n=o.Z_OK,m=!1),n!==o.Z_STREAM_END&&n!==o.Z_OK)return this.onEnd(n),this.ended=!0,!1;d.next_out&&(0!==d.avail_out&&n!==o.Z_STREAM_END&&(0!==d.avail_in||a!==o.Z_FINISH&&a!==o.Z_SYNC_FLUSH)||("string"===this.options.to?(u=s.utf8border(d.output,d.next_out),l=d.next_out-u,h=s.buf2string(d.output,u),d.next_out=l,d.avail_out=p-l,l&&i.arraySet(d.output,d.output,u,l,0),this.onData(h)):this.onData(i.shrinkBuf(d.output,d.next_out)))),0===d.avail_in&&0===d.avail_out&&(m=!0)}while((d.avail_in>0||0===d.avail_out)&&n!==o.Z_STREAM_END);return n===o.Z_STREAM_END&&(a=o.Z_FINISH),a===o.Z_FINISH?(n=r.inflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===o.Z_OK):a!==o.Z_SYNC_FLUSH||(this.onEnd(o.Z_OK),d.avail_out=0,!0)},h.prototype.onData=function(e){this.chunks.push(e)},h.prototype.onEnd=function(e){e===o.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},t.Inflate=h,t.inflate=d,t.inflateRaw=function(e,t){return(t=t||{}).raw=!0,d(e,t)},t.ungzip=d},function(e,t,n){"use strict";var r=n(9),i=n(81),s=n(82),o=n(164),a=n(165);function u(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function l(){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 r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function c(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=1,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new r.Buf32(852),t.distcode=t.distdyn=new r.Buf32(592),t.sane=1,t.back=-1,0):-2}function h(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,c(e)):-2}function d(e,t){var n,r;return e&&e.state?(r=e.state,t<0?(n=0,t=-t):(n=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?-2:(null!==r.window&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,h(e))):-2}function p(e,t){var n,r;return e?(r=new l,e.state=r,r.window=null,0!==(n=d(e,t))&&(e.state=null),n):-2}var f,m,w=!0;function g(e){if(w){var t;for(f=new r.Buf32(512),m=new r.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(a(1,e.lens,0,288,f,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;a(2,e.lens,0,32,m,0,e.work,{bits:5}),w=!1}e.lencode=f,e.lenbits=9,e.distcode=m,e.distbits=5}function _(e,t,n,i){var s,o=e.state;return null===o.window&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new r.Buf8(o.wsize)),i>=o.wsize?(r.arraySet(o.window,t,n-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):((s=o.wsize-o.wnext)>i&&(s=i),r.arraySet(o.window,t,n-i,s,o.wnext),(i-=s)?(r.arraySet(o.window,t,n-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=s,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=s))),0}t.inflateReset=h,t.inflateReset2=d,t.inflateResetKeep=c,t.inflateInit=function(e){return p(e,15)},t.inflateInit2=p,t.inflate=function(e,t){var n,l,c,h,d,p,f,m,w,b,y,v,E,A,x,T,S,C,k,D,R,O,I,N,F=0,P=new r.Buf8(4),L=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return-2;12===(n=e.state).mode&&(n.mode=13),d=e.next_out,c=e.output,f=e.avail_out,h=e.next_in,l=e.input,p=e.avail_in,m=n.hold,w=n.bits,b=p,y=f,O=0;e:for(;;)switch(n.mode){case 1:if(0===n.wrap){n.mode=13;break}for(;w<16;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(2&n.wrap&&35615===m){n.check=0,P[0]=255&m,P[1]=m>>>8&255,n.check=s(n.check,P,2,0),m=0,w=0,n.mode=2;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&m)<<8)+(m>>8))%31){e.msg="incorrect header check",n.mode=30;break}if(8!=(15&m)){e.msg="unknown compression method",n.mode=30;break}if(w-=4,R=8+(15&(m>>>=4)),0===n.wbits)n.wbits=R;else if(R>n.wbits){e.msg="invalid window size",n.mode=30;break}n.dmax=1<<R,e.adler=n.check=1,n.mode=512&m?10:12,m=0,w=0;break;case 2:for(;w<16;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(n.flags=m,8!=(255&n.flags)){e.msg="unknown compression method",n.mode=30;break}if(57344&n.flags){e.msg="unknown header flags set",n.mode=30;break}n.head&&(n.head.text=m>>8&1),512&n.flags&&(P[0]=255&m,P[1]=m>>>8&255,n.check=s(n.check,P,2,0)),m=0,w=0,n.mode=3;case 3:for(;w<32;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}n.head&&(n.head.time=m),512&n.flags&&(P[0]=255&m,P[1]=m>>>8&255,P[2]=m>>>16&255,P[3]=m>>>24&255,n.check=s(n.check,P,4,0)),m=0,w=0,n.mode=4;case 4:for(;w<16;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}n.head&&(n.head.xflags=255&m,n.head.os=m>>8),512&n.flags&&(P[0]=255&m,P[1]=m>>>8&255,n.check=s(n.check,P,2,0)),m=0,w=0,n.mode=5;case 5:if(1024&n.flags){for(;w<16;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}n.length=m,n.head&&(n.head.extra_len=m),512&n.flags&&(P[0]=255&m,P[1]=m>>>8&255,n.check=s(n.check,P,2,0)),m=0,w=0}else n.head&&(n.head.extra=null);n.mode=6;case 6:if(1024&n.flags&&((v=n.length)>p&&(v=p),v&&(n.head&&(R=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Array(n.head.extra_len)),r.arraySet(n.head.extra,l,h,v,R)),512&n.flags&&(n.check=s(n.check,l,v,h)),p-=v,h+=v,n.length-=v),n.length))break e;n.length=0,n.mode=7;case 7:if(2048&n.flags){if(0===p)break e;v=0;do{R=l[h+v++],n.head&&R&&n.length<65536&&(n.head.name+=String.fromCharCode(R))}while(R&&v<p);if(512&n.flags&&(n.check=s(n.check,l,v,h)),p-=v,h+=v,R)break e}else n.head&&(n.head.name=null);n.length=0,n.mode=8;case 8:if(4096&n.flags){if(0===p)break e;v=0;do{R=l[h+v++],n.head&&R&&n.length<65536&&(n.head.comment+=String.fromCharCode(R))}while(R&&v<p);if(512&n.flags&&(n.check=s(n.check,l,v,h)),p-=v,h+=v,R)break e}else n.head&&(n.head.comment=null);n.mode=9;case 9:if(512&n.flags){for(;w<16;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(m!==(65535&n.check)){e.msg="header crc mismatch",n.mode=30;break}m=0,w=0}n.head&&(n.head.hcrc=n.flags>>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=12;break;case 10:for(;w<32;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}e.adler=n.check=u(m),m=0,w=0,n.mode=11;case 11:if(0===n.havedict)return e.next_out=d,e.avail_out=f,e.next_in=h,e.avail_in=p,n.hold=m,n.bits=w,2;e.adler=n.check=1,n.mode=12;case 12:if(5===t||6===t)break e;case 13:if(n.last){m>>>=7&w,w-=7&w,n.mode=27;break}for(;w<3;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}switch(n.last=1&m,w-=1,3&(m>>>=1)){case 0:n.mode=14;break;case 1:if(g(n),n.mode=20,6===t){m>>>=2,w-=2;break e}break;case 2:n.mode=17;break;case 3:e.msg="invalid block type",n.mode=30}m>>>=2,w-=2;break;case 14:for(m>>>=7&w,w-=7&w;w<32;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if((65535&m)!=(m>>>16^65535)){e.msg="invalid stored block lengths",n.mode=30;break}if(n.length=65535&m,m=0,w=0,n.mode=15,6===t)break e;case 15:n.mode=16;case 16:if(v=n.length){if(v>p&&(v=p),v>f&&(v=f),0===v)break e;r.arraySet(c,l,h,v,d),p-=v,h+=v,f-=v,d+=v,n.length-=v;break}n.mode=12;break;case 17:for(;w<14;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(n.nlen=257+(31&m),m>>>=5,w-=5,n.ndist=1+(31&m),m>>>=5,w-=5,n.ncode=4+(15&m),m>>>=4,w-=4,n.nlen>286||n.ndist>30){e.msg="too many length or distance symbols",n.mode=30;break}n.have=0,n.mode=18;case 18:for(;n.have<n.ncode;){for(;w<3;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}n.lens[L[n.have++]]=7&m,m>>>=3,w-=3}for(;n.have<19;)n.lens[L[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,I={bits:n.lenbits},O=a(0,n.lens,0,19,n.lencode,0,n.work,I),n.lenbits=I.bits,O){e.msg="invalid code lengths set",n.mode=30;break}n.have=0,n.mode=19;case 19:for(;n.have<n.nlen+n.ndist;){for(;T=(F=n.lencode[m&(1<<n.lenbits)-1])>>>16&255,S=65535&F,!((x=F>>>24)<=w);){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(S<16)m>>>=x,w-=x,n.lens[n.have++]=S;else{if(16===S){for(N=x+2;w<N;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(m>>>=x,w-=x,0===n.have){e.msg="invalid bit length repeat",n.mode=30;break}R=n.lens[n.have-1],v=3+(3&m),m>>>=2,w-=2}else if(17===S){for(N=x+3;w<N;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}w-=x,R=0,v=3+(7&(m>>>=x)),m>>>=3,w-=3}else{for(N=x+7;w<N;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}w-=x,R=0,v=11+(127&(m>>>=x)),m>>>=7,w-=7}if(n.have+v>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=30;break}for(;v--;)n.lens[n.have++]=R}}if(30===n.mode)break;if(0===n.lens[256]){e.msg="invalid code -- missing end-of-block",n.mode=30;break}if(n.lenbits=9,I={bits:n.lenbits},O=a(1,n.lens,0,n.nlen,n.lencode,0,n.work,I),n.lenbits=I.bits,O){e.msg="invalid literal/lengths set",n.mode=30;break}if(n.distbits=6,n.distcode=n.distdyn,I={bits:n.distbits},O=a(2,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,I),n.distbits=I.bits,O){e.msg="invalid distances set",n.mode=30;break}if(n.mode=20,6===t)break e;case 20:n.mode=21;case 21:if(p>=6&&f>=258){e.next_out=d,e.avail_out=f,e.next_in=h,e.avail_in=p,n.hold=m,n.bits=w,o(e,y),d=e.next_out,c=e.output,f=e.avail_out,h=e.next_in,l=e.input,p=e.avail_in,m=n.hold,w=n.bits,12===n.mode&&(n.back=-1);break}for(n.back=0;T=(F=n.lencode[m&(1<<n.lenbits)-1])>>>16&255,S=65535&F,!((x=F>>>24)<=w);){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(T&&0==(240&T)){for(C=x,k=T,D=S;T=(F=n.lencode[D+((m&(1<<C+k)-1)>>C)])>>>16&255,S=65535&F,!(C+(x=F>>>24)<=w);){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}m>>>=C,w-=C,n.back+=C}if(m>>>=x,w-=x,n.back+=x,n.length=S,0===T){n.mode=26;break}if(32&T){n.back=-1,n.mode=12;break}if(64&T){e.msg="invalid literal/length code",n.mode=30;break}n.extra=15&T,n.mode=22;case 22:if(n.extra){for(N=n.extra;w<N;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}n.length+=m&(1<<n.extra)-1,m>>>=n.extra,w-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=23;case 23:for(;T=(F=n.distcode[m&(1<<n.distbits)-1])>>>16&255,S=65535&F,!((x=F>>>24)<=w);){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(0==(240&T)){for(C=x,k=T,D=S;T=(F=n.distcode[D+((m&(1<<C+k)-1)>>C)])>>>16&255,S=65535&F,!(C+(x=F>>>24)<=w);){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}m>>>=C,w-=C,n.back+=C}if(m>>>=x,w-=x,n.back+=x,64&T){e.msg="invalid distance code",n.mode=30;break}n.offset=S,n.extra=15&T,n.mode=24;case 24:if(n.extra){for(N=n.extra;w<N;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}n.offset+=m&(1<<n.extra)-1,m>>>=n.extra,w-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=30;break}n.mode=25;case 25:if(0===f)break e;if(v=y-f,n.offset>v){if((v=n.offset-v)>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=30;break}v>n.wnext?(v-=n.wnext,E=n.wsize-v):E=n.wnext-v,v>n.length&&(v=n.length),A=n.window}else A=c,E=d-n.offset,v=n.length;v>f&&(v=f),f-=v,n.length-=v;do{c[d++]=A[E++]}while(--v);0===n.length&&(n.mode=21);break;case 26:if(0===f)break e;c[d++]=n.length,f--,n.mode=21;break;case 27:if(n.wrap){for(;w<32;){if(0===p)break e;p--,m|=l[h++]<<w,w+=8}if(y-=f,e.total_out+=y,n.total+=y,y&&(e.adler=n.check=n.flags?s(n.check,c,y,d-y):i(n.check,c,y,d-y)),y=f,(n.flags?m:u(m))!==n.check){e.msg="incorrect data check",n.mode=30;break}m=0,w=0}n.mode=28;case 28:if(n.wrap&&n.flags){for(;w<32;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(m!==(4294967295&n.total)){e.msg="incorrect length check",n.mode=30;break}m=0,w=0}n.mode=29;case 29:O=1;break e;case 30:O=-3;break e;case 31:return-4;case 32:default:return-2}return e.next_out=d,e.avail_out=f,e.next_in=h,e.avail_in=p,n.hold=m,n.bits=w,(n.wsize||y!==e.avail_out&&n.mode<30&&(n.mode<27||4!==t))&&_(e,e.output,e.next_out,y-e.avail_out)?(n.mode=31,-4):(b-=e.avail_in,y-=e.avail_out,e.total_in+=b,e.total_out+=y,n.total+=y,n.wrap&&y&&(e.adler=n.check=n.flags?s(n.check,c,y,e.next_out-y):i(n.check,c,y,e.next_out-y)),e.data_type=n.bits+(n.last?64:0)+(12===n.mode?128:0)+(20===n.mode||15===n.mode?256:0),(0===b&&0===y||4===t)&&0===O&&(O=-5),O)},t.inflateEnd=function(e){if(!e||!e.state)return-2;var t=e.state;return t.window&&(t.window=null),e.state=null,0},t.inflateGetHeader=function(e,t){var n;return e&&e.state?0==(2&(n=e.state).wrap)?-2:(n.head=t,t.done=!1,0):-2},t.inflateSetDictionary=function(e,t){var n,r=t.length;return e&&e.state?0!==(n=e.state).wrap&&11!==n.mode?-2:11===n.mode&&i(1,t,r,0)!==n.check?-3:_(e,t,r,r)?(n.mode=31,-4):(n.havedict=1,0):-2},t.inflateInfo="pako inflate (from Nodeca project)"},function(e,t,n){"use strict";e.exports=function(e,t){var n,r,i,s,o,a,u,l,c,h,d,p,f,m,w,g,_,b,y,v,E,A,x,T,S;n=e.state,r=e.next_in,T=e.input,i=r+(e.avail_in-5),s=e.next_out,S=e.output,o=s-(t-e.avail_out),a=s+(e.avail_out-257),u=n.dmax,l=n.wsize,c=n.whave,h=n.wnext,d=n.window,p=n.hold,f=n.bits,m=n.lencode,w=n.distcode,g=(1<<n.lenbits)-1,_=(1<<n.distbits)-1;e:do{f<15&&(p+=T[r++]<<f,f+=8,p+=T[r++]<<f,f+=8),b=m[p&g];t:for(;;){if(p>>>=y=b>>>24,f-=y,0===(y=b>>>16&255))S[s++]=65535&b;else{if(!(16&y)){if(0==(64&y)){b=m[(65535&b)+(p&(1<<y)-1)];continue t}if(32&y){n.mode=12;break e}e.msg="invalid literal/length code",n.mode=30;break e}v=65535&b,(y&=15)&&(f<y&&(p+=T[r++]<<f,f+=8),v+=p&(1<<y)-1,p>>>=y,f-=y),f<15&&(p+=T[r++]<<f,f+=8,p+=T[r++]<<f,f+=8),b=w[p&_];n:for(;;){if(p>>>=y=b>>>24,f-=y,!(16&(y=b>>>16&255))){if(0==(64&y)){b=w[(65535&b)+(p&(1<<y)-1)];continue n}e.msg="invalid distance code",n.mode=30;break e}if(E=65535&b,f<(y&=15)&&(p+=T[r++]<<f,(f+=8)<y&&(p+=T[r++]<<f,f+=8)),(E+=p&(1<<y)-1)>u){e.msg="invalid distance too far back",n.mode=30;break e}if(p>>>=y,f-=y,E>(y=s-o)){if((y=E-y)>c&&n.sane){e.msg="invalid distance too far back",n.mode=30;break e}if(A=0,x=d,0===h){if(A+=l-y,y<v){v-=y;do{S[s++]=d[A++]}while(--y);A=s-E,x=S}}else if(h<y){if(A+=l+h-y,(y-=h)<v){v-=y;do{S[s++]=d[A++]}while(--y);if(A=0,h<v){v-=y=h;do{S[s++]=d[A++]}while(--y);A=s-E,x=S}}}else if(A+=h-y,y<v){v-=y;do{S[s++]=d[A++]}while(--y);A=s-E,x=S}for(;v>2;)S[s++]=x[A++],S[s++]=x[A++],S[s++]=x[A++],v-=3;v&&(S[s++]=x[A++],v>1&&(S[s++]=x[A++]))}else{A=s-E;do{S[s++]=S[A++],S[s++]=S[A++],S[s++]=S[A++],v-=3}while(v>2);v&&(S[s++]=S[A++],v>1&&(S[s++]=S[A++]))}break}}break}}while(r<i&&s<a);r-=v=f>>3,p&=(1<<(f-=v<<3))-1,e.next_in=r,e.next_out=s,e.avail_in=r<i?i-r+5:5-(r-i),e.avail_out=s<a?a-s+257:257-(s-a),n.hold=p,n.bits=f}},function(e,t,n){"use strict";var r=n(9),i=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],s=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],o=[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],a=[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];e.exports=function(e,t,n,u,l,c,h,d){var p,f,m,w,g,_,b,y,v,E=d.bits,A=0,x=0,T=0,S=0,C=0,k=0,D=0,R=0,O=0,I=0,N=null,F=0,P=new r.Buf16(16),L=new r.Buf16(16),B=null,U=0;for(A=0;A<=15;A++)P[A]=0;for(x=0;x<u;x++)P[t[n+x]]++;for(C=E,S=15;S>=1&&0===P[S];S--);if(C>S&&(C=S),0===S)return l[c++]=20971520,l[c++]=20971520,d.bits=1,0;for(T=1;T<S&&0===P[T];T++);for(C<T&&(C=T),R=1,A=1;A<=15;A++)if(R<<=1,(R-=P[A])<0)return-1;if(R>0&&(0===e||1!==S))return-1;for(L[1]=0,A=1;A<15;A++)L[A+1]=L[A]+P[A];for(x=0;x<u;x++)0!==t[n+x]&&(h[L[t[n+x]]++]=x);if(0===e?(N=B=h,_=19):1===e?(N=i,F-=257,B=s,U-=257,_=256):(N=o,B=a,_=-1),I=0,x=0,A=T,g=c,k=C,D=0,m=-1,w=(O=1<<C)-1,1===e&&O>852||2===e&&O>592)return 1;for(;;){b=A-D,h[x]<_?(y=0,v=h[x]):h[x]>_?(y=B[U+h[x]],v=N[F+h[x]]):(y=96,v=0),p=1<<A-D,T=f=1<<k;do{l[g+(I>>D)+(f-=p)]=b<<24|y<<16|v|0}while(0!==f);for(p=1<<A-1;I&p;)p>>=1;if(0!==p?(I&=p-1,I+=p):I=0,x++,0==--P[A]){if(A===S)break;A=t[n+h[x]]}if(A>C&&(I&w)!==m){for(0===D&&(D=C),g+=T,R=1<<(k=A-D);k+D<S&&!((R-=P[k+D])<=0);)k++,R<<=1;if(O+=1<<k,1===e&&O>852||2===e&&O>592)return 1;l[m=I&w]=C<<24|k<<16|g-c|0}}return 0!==I&&(l[g+I]=A-D<<24|64<<16|0),d.bits=C,0}},function(e,t,n){"use strict";e.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}},function(e,t,n){"use strict";var r=n(11),i=n(86),s=n(87),o=n(168),a=n(169);function u(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function l(){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 r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function c(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=1,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new r.Buf32(852),t.distcode=t.distdyn=new r.Buf32(592),t.sane=1,t.back=-1,0):-2}function h(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,c(e)):-2}function d(e,t){var n,r;return e&&e.state?(r=e.state,t<0?(n=0,t=-t):(n=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?-2:(null!==r.window&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,h(e))):-2}function p(e,t){var n,r;return e?(r=new l,e.state=r,r.window=null,0!==(n=d(e,t))&&(e.state=null),n):-2}var f,m,w=!0;function g(e){if(w){var t;for(f=new r.Buf32(512),m=new r.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(a(1,e.lens,0,288,f,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;a(2,e.lens,0,32,m,0,e.work,{bits:5}),w=!1}e.lencode=f,e.lenbits=9,e.distcode=m,e.distbits=5}function _(e,t,n,i){var s,o=e.state;return null===o.window&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new r.Buf8(o.wsize)),i>=o.wsize?(r.arraySet(o.window,t,n-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):((s=o.wsize-o.wnext)>i&&(s=i),r.arraySet(o.window,t,n-i,s,o.wnext),(i-=s)?(r.arraySet(o.window,t,n-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=s,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=s))),0}t.inflateReset=h,t.inflateReset2=d,t.inflateResetKeep=c,t.inflateInit=function(e){return p(e,15)},t.inflateInit2=p,t.inflate=function(e,t){var n,l,c,h,d,p,f,m,w,b,y,v,E,A,x,T,S,C,k,D,R,O,I,N,F=0,P=new r.Buf8(4),L=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return-2;12===(n=e.state).mode&&(n.mode=13),d=e.next_out,c=e.output,f=e.avail_out,h=e.next_in,l=e.input,p=e.avail_in,m=n.hold,w=n.bits,b=p,y=f,O=0;e:for(;;)switch(n.mode){case 1:if(0===n.wrap){n.mode=13;break}for(;w<16;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(2&n.wrap&&35615===m){n.check=0,P[0]=255&m,P[1]=m>>>8&255,n.check=s(n.check,P,2,0),m=0,w=0,n.mode=2;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&m)<<8)+(m>>8))%31){e.msg="incorrect header check",n.mode=30;break}if(8!=(15&m)){e.msg="unknown compression method",n.mode=30;break}if(w-=4,R=8+(15&(m>>>=4)),0===n.wbits)n.wbits=R;else if(R>n.wbits){e.msg="invalid window size",n.mode=30;break}n.dmax=1<<R,e.adler=n.check=1,n.mode=512&m?10:12,m=0,w=0;break;case 2:for(;w<16;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(n.flags=m,8!=(255&n.flags)){e.msg="unknown compression method",n.mode=30;break}if(57344&n.flags){e.msg="unknown header flags set",n.mode=30;break}n.head&&(n.head.text=m>>8&1),512&n.flags&&(P[0]=255&m,P[1]=m>>>8&255,n.check=s(n.check,P,2,0)),m=0,w=0,n.mode=3;case 3:for(;w<32;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}n.head&&(n.head.time=m),512&n.flags&&(P[0]=255&m,P[1]=m>>>8&255,P[2]=m>>>16&255,P[3]=m>>>24&255,n.check=s(n.check,P,4,0)),m=0,w=0,n.mode=4;case 4:for(;w<16;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}n.head&&(n.head.xflags=255&m,n.head.os=m>>8),512&n.flags&&(P[0]=255&m,P[1]=m>>>8&255,n.check=s(n.check,P,2,0)),m=0,w=0,n.mode=5;case 5:if(1024&n.flags){for(;w<16;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}n.length=m,n.head&&(n.head.extra_len=m),512&n.flags&&(P[0]=255&m,P[1]=m>>>8&255,n.check=s(n.check,P,2,0)),m=0,w=0}else n.head&&(n.head.extra=null);n.mode=6;case 6:if(1024&n.flags&&((v=n.length)>p&&(v=p),v&&(n.head&&(R=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Array(n.head.extra_len)),r.arraySet(n.head.extra,l,h,v,R)),512&n.flags&&(n.check=s(n.check,l,v,h)),p-=v,h+=v,n.length-=v),n.length))break e;n.length=0,n.mode=7;case 7:if(2048&n.flags){if(0===p)break e;v=0;do{R=l[h+v++],n.head&&R&&n.length<65536&&(n.head.name+=String.fromCharCode(R))}while(R&&v<p);if(512&n.flags&&(n.check=s(n.check,l,v,h)),p-=v,h+=v,R)break e}else n.head&&(n.head.name=null);n.length=0,n.mode=8;case 8:if(4096&n.flags){if(0===p)break e;v=0;do{R=l[h+v++],n.head&&R&&n.length<65536&&(n.head.comment+=String.fromCharCode(R))}while(R&&v<p);if(512&n.flags&&(n.check=s(n.check,l,v,h)),p-=v,h+=v,R)break e}else n.head&&(n.head.comment=null);n.mode=9;case 9:if(512&n.flags){for(;w<16;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(m!==(65535&n.check)){e.msg="header crc mismatch",n.mode=30;break}m=0,w=0}n.head&&(n.head.hcrc=n.flags>>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=12;break;case 10:for(;w<32;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}e.adler=n.check=u(m),m=0,w=0,n.mode=11;case 11:if(0===n.havedict)return e.next_out=d,e.avail_out=f,e.next_in=h,e.avail_in=p,n.hold=m,n.bits=w,2;e.adler=n.check=1,n.mode=12;case 12:if(5===t||6===t)break e;case 13:if(n.last){m>>>=7&w,w-=7&w,n.mode=27;break}for(;w<3;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}switch(n.last=1&m,w-=1,3&(m>>>=1)){case 0:n.mode=14;break;case 1:if(g(n),n.mode=20,6===t){m>>>=2,w-=2;break e}break;case 2:n.mode=17;break;case 3:e.msg="invalid block type",n.mode=30}m>>>=2,w-=2;break;case 14:for(m>>>=7&w,w-=7&w;w<32;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if((65535&m)!=(m>>>16^65535)){e.msg="invalid stored block lengths",n.mode=30;break}if(n.length=65535&m,m=0,w=0,n.mode=15,6===t)break e;case 15:n.mode=16;case 16:if(v=n.length){if(v>p&&(v=p),v>f&&(v=f),0===v)break e;r.arraySet(c,l,h,v,d),p-=v,h+=v,f-=v,d+=v,n.length-=v;break}n.mode=12;break;case 17:for(;w<14;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(n.nlen=257+(31&m),m>>>=5,w-=5,n.ndist=1+(31&m),m>>>=5,w-=5,n.ncode=4+(15&m),m>>>=4,w-=4,n.nlen>286||n.ndist>30){e.msg="too many length or distance symbols",n.mode=30;break}n.have=0,n.mode=18;case 18:for(;n.have<n.ncode;){for(;w<3;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}n.lens[L[n.have++]]=7&m,m>>>=3,w-=3}for(;n.have<19;)n.lens[L[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,I={bits:n.lenbits},O=a(0,n.lens,0,19,n.lencode,0,n.work,I),n.lenbits=I.bits,O){e.msg="invalid code lengths set",n.mode=30;break}n.have=0,n.mode=19;case 19:for(;n.have<n.nlen+n.ndist;){for(;T=(F=n.lencode[m&(1<<n.lenbits)-1])>>>16&255,S=65535&F,!((x=F>>>24)<=w);){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(S<16)m>>>=x,w-=x,n.lens[n.have++]=S;else{if(16===S){for(N=x+2;w<N;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(m>>>=x,w-=x,0===n.have){e.msg="invalid bit length repeat",n.mode=30;break}R=n.lens[n.have-1],v=3+(3&m),m>>>=2,w-=2}else if(17===S){for(N=x+3;w<N;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}w-=x,R=0,v=3+(7&(m>>>=x)),m>>>=3,w-=3}else{for(N=x+7;w<N;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}w-=x,R=0,v=11+(127&(m>>>=x)),m>>>=7,w-=7}if(n.have+v>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=30;break}for(;v--;)n.lens[n.have++]=R}}if(30===n.mode)break;if(0===n.lens[256]){e.msg="invalid code -- missing end-of-block",n.mode=30;break}if(n.lenbits=9,I={bits:n.lenbits},O=a(1,n.lens,0,n.nlen,n.lencode,0,n.work,I),n.lenbits=I.bits,O){e.msg="invalid literal/lengths set",n.mode=30;break}if(n.distbits=6,n.distcode=n.distdyn,I={bits:n.distbits},O=a(2,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,I),n.distbits=I.bits,O){e.msg="invalid distances set",n.mode=30;break}if(n.mode=20,6===t)break e;case 20:n.mode=21;case 21:if(p>=6&&f>=258){e.next_out=d,e.avail_out=f,e.next_in=h,e.avail_in=p,n.hold=m,n.bits=w,o(e,y),d=e.next_out,c=e.output,f=e.avail_out,h=e.next_in,l=e.input,p=e.avail_in,m=n.hold,w=n.bits,12===n.mode&&(n.back=-1);break}for(n.back=0;T=(F=n.lencode[m&(1<<n.lenbits)-1])>>>16&255,S=65535&F,!((x=F>>>24)<=w);){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(T&&0==(240&T)){for(C=x,k=T,D=S;T=(F=n.lencode[D+((m&(1<<C+k)-1)>>C)])>>>16&255,S=65535&F,!(C+(x=F>>>24)<=w);){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}m>>>=C,w-=C,n.back+=C}if(m>>>=x,w-=x,n.back+=x,n.length=S,0===T){n.mode=26;break}if(32&T){n.back=-1,n.mode=12;break}if(64&T){e.msg="invalid literal/length code",n.mode=30;break}n.extra=15&T,n.mode=22;case 22:if(n.extra){for(N=n.extra;w<N;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}n.length+=m&(1<<n.extra)-1,m>>>=n.extra,w-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=23;case 23:for(;T=(F=n.distcode[m&(1<<n.distbits)-1])>>>16&255,S=65535&F,!((x=F>>>24)<=w);){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(0==(240&T)){for(C=x,k=T,D=S;T=(F=n.distcode[D+((m&(1<<C+k)-1)>>C)])>>>16&255,S=65535&F,!(C+(x=F>>>24)<=w);){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}m>>>=C,w-=C,n.back+=C}if(m>>>=x,w-=x,n.back+=x,64&T){e.msg="invalid distance code",n.mode=30;break}n.offset=S,n.extra=15&T,n.mode=24;case 24:if(n.extra){for(N=n.extra;w<N;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}n.offset+=m&(1<<n.extra)-1,m>>>=n.extra,w-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=30;break}n.mode=25;case 25:if(0===f)break e;if(v=y-f,n.offset>v){if((v=n.offset-v)>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=30;break}v>n.wnext?(v-=n.wnext,E=n.wsize-v):E=n.wnext-v,v>n.length&&(v=n.length),A=n.window}else A=c,E=d-n.offset,v=n.length;v>f&&(v=f),f-=v,n.length-=v;do{c[d++]=A[E++]}while(--v);0===n.length&&(n.mode=21);break;case 26:if(0===f)break e;c[d++]=n.length,f--,n.mode=21;break;case 27:if(n.wrap){for(;w<32;){if(0===p)break e;p--,m|=l[h++]<<w,w+=8}if(y-=f,e.total_out+=y,n.total+=y,y&&(e.adler=n.check=n.flags?s(n.check,c,y,d-y):i(n.check,c,y,d-y)),y=f,(n.flags?m:u(m))!==n.check){e.msg="incorrect data check",n.mode=30;break}m=0,w=0}n.mode=28;case 28:if(n.wrap&&n.flags){for(;w<32;){if(0===p)break e;p--,m+=l[h++]<<w,w+=8}if(m!==(4294967295&n.total)){e.msg="incorrect length check",n.mode=30;break}m=0,w=0}n.mode=29;case 29:O=1;break e;case 30:O=-3;break e;case 31:return-4;case 32:default:return-2}return e.next_out=d,e.avail_out=f,e.next_in=h,e.avail_in=p,n.hold=m,n.bits=w,(n.wsize||y!==e.avail_out&&n.mode<30&&(n.mode<27||4!==t))&&_(e,e.output,e.next_out,y-e.avail_out)?(n.mode=31,-4):(b-=e.avail_in,y-=e.avail_out,e.total_in+=b,e.total_out+=y,n.total+=y,n.wrap&&y&&(e.adler=n.check=n.flags?s(n.check,c,y,e.next_out-y):i(n.check,c,y,e.next_out-y)),e.data_type=n.bits+(n.last?64:0)+(12===n.mode?128:0)+(20===n.mode||15===n.mode?256:0),(0===b&&0===y||4===t)&&0===O&&(O=-5),O)},t.inflateEnd=function(e){if(!e||!e.state)return-2;var t=e.state;return t.window&&(t.window=null),e.state=null,0},t.inflateGetHeader=function(e,t){var n;return e&&e.state?0==(2&(n=e.state).wrap)?-2:(n.head=t,t.done=!1,0):-2},t.inflateSetDictionary=function(e,t){var n,r=t.length;return e&&e.state?0!==(n=e.state).wrap&&11!==n.mode?-2:11===n.mode&&i(1,t,r,0)!==n.check?-3:_(e,t,r,r)?(n.mode=31,-4):(n.havedict=1,0):-2},t.inflateInfo="pako inflate (from Nodeca project)"},function(e,t,n){"use strict";e.exports=function(e,t){var n,r,i,s,o,a,u,l,c,h,d,p,f,m,w,g,_,b,y,v,E,A,x,T,S;n=e.state,r=e.next_in,T=e.input,i=r+(e.avail_in-5),s=e.next_out,S=e.output,o=s-(t-e.avail_out),a=s+(e.avail_out-257),u=n.dmax,l=n.wsize,c=n.whave,h=n.wnext,d=n.window,p=n.hold,f=n.bits,m=n.lencode,w=n.distcode,g=(1<<n.lenbits)-1,_=(1<<n.distbits)-1;e:do{f<15&&(p+=T[r++]<<f,f+=8,p+=T[r++]<<f,f+=8),b=m[p&g];t:for(;;){if(p>>>=y=b>>>24,f-=y,0===(y=b>>>16&255))S[s++]=65535&b;else{if(!(16&y)){if(0==(64&y)){b=m[(65535&b)+(p&(1<<y)-1)];continue t}if(32&y){n.mode=12;break e}e.msg="invalid literal/length code",n.mode=30;break e}v=65535&b,(y&=15)&&(f<y&&(p+=T[r++]<<f,f+=8),v+=p&(1<<y)-1,p>>>=y,f-=y),f<15&&(p+=T[r++]<<f,f+=8,p+=T[r++]<<f,f+=8),b=w[p&_];n:for(;;){if(p>>>=y=b>>>24,f-=y,!(16&(y=b>>>16&255))){if(0==(64&y)){b=w[(65535&b)+(p&(1<<y)-1)];continue n}e.msg="invalid distance code",n.mode=30;break e}if(E=65535&b,f<(y&=15)&&(p+=T[r++]<<f,(f+=8)<y&&(p+=T[r++]<<f,f+=8)),(E+=p&(1<<y)-1)>u){e.msg="invalid distance too far back",n.mode=30;break e}if(p>>>=y,f-=y,E>(y=s-o)){if((y=E-y)>c&&n.sane){e.msg="invalid distance too far back",n.mode=30;break e}if(A=0,x=d,0===h){if(A+=l-y,y<v){v-=y;do{S[s++]=d[A++]}while(--y);A=s-E,x=S}}else if(h<y){if(A+=l+h-y,(y-=h)<v){v-=y;do{S[s++]=d[A++]}while(--y);if(A=0,h<v){v-=y=h;do{S[s++]=d[A++]}while(--y);A=s-E,x=S}}}else if(A+=h-y,y<v){v-=y;do{S[s++]=d[A++]}while(--y);A=s-E,x=S}for(;v>2;)S[s++]=x[A++],S[s++]=x[A++],S[s++]=x[A++],v-=3;v&&(S[s++]=x[A++],v>1&&(S[s++]=x[A++]))}else{A=s-E;do{S[s++]=S[A++],S[s++]=S[A++],S[s++]=S[A++],v-=3}while(v>2);v&&(S[s++]=S[A++],v>1&&(S[s++]=S[A++]))}break}}break}}while(r<i&&s<a);r-=v=f>>3,p&=(1<<(f-=v<<3))-1,e.next_in=r,e.next_out=s,e.avail_in=r<i?i-r+5:5-(r-i),e.avail_out=s<a?a-s+257:257-(s-a),n.hold=p,n.bits=f}},function(e,t,n){"use strict";var r=n(11),i=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],s=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],o=[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],a=[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];e.exports=function(e,t,n,u,l,c,h,d){var p,f,m,w,g,_,b,y,v,E=d.bits,A=0,x=0,T=0,S=0,C=0,k=0,D=0,R=0,O=0,I=0,N=null,F=0,P=new r.Buf16(16),L=new r.Buf16(16),B=null,U=0;for(A=0;A<=15;A++)P[A]=0;for(x=0;x<u;x++)P[t[n+x]]++;for(C=E,S=15;S>=1&&0===P[S];S--);if(C>S&&(C=S),0===S)return l[c++]=20971520,l[c++]=20971520,d.bits=1,0;for(T=1;T<S&&0===P[T];T++);for(C<T&&(C=T),R=1,A=1;A<=15;A++)if(R<<=1,(R-=P[A])<0)return-1;if(R>0&&(0===e||1!==S))return-1;for(L[1]=0,A=1;A<15;A++)L[A+1]=L[A]+P[A];for(x=0;x<u;x++)0!==t[n+x]&&(h[L[t[n+x]]++]=x);if(0===e?(N=B=h,_=19):1===e?(N=i,F-=257,B=s,U-=257,_=256):(N=o,B=a,_=-1),I=0,x=0,A=T,g=c,k=C,D=0,m=-1,w=(O=1<<C)-1,1===e&&O>852||2===e&&O>592)return 1;for(;;){b=A-D,h[x]<_?(y=0,v=h[x]):h[x]>_?(y=B[U+h[x]],v=N[F+h[x]]):(y=96,v=0),p=1<<A-D,T=f=1<<k;do{l[g+(I>>D)+(f-=p)]=b<<24|y<<16|v|0}while(0!==f);for(p=1<<A-1;I&p;)p>>=1;if(0!==p?(I&=p-1,I+=p):I=0,x++,0==--P[A]){if(A===S)break;A=t[n+h[x]]}if(A>C&&(I&w)!==m){for(0===D&&(D=C),g+=T,R=1<<(k=A-D);k+D<S&&!((R-=P[k+D])<=0);)k++,R<<=1;if(O+=1<<k,1===e&&O>852||2===e&&O>592)return 1;l[m=I&w]=C<<24|k<<16|g-c|0}}return 0!==I&&(l[g+I]=A-D<<24|64<<16|0),d.bits=C,0}},function(e,t,n){"use strict";e.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}},function(e,t,n){"use strict";e.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}},function(e,t){},function(e,t){(function(t){e.exports=t}).call(this,{})},function(e,t,n){"use strict";var r,i=n(11),s=n(175),o=n(86),a=n(87),u=n(49);function l(e,t){return e.msg=u[t],t}function c(e){return(e<<1)-(e>4?9:0)}function h(e){for(var t=e.length;--t>=0;)e[t]=0}function d(e){var t=e.state,n=t.pending;n>e.avail_out&&(n=e.avail_out),0!==n&&(i.arraySet(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,0===t.pending&&(t.pending_out=0))}function p(e,t){s._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,d(e.strm)}function f(e,t){e.pending_buf[e.pending++]=t}function m(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function w(e,t){var n,r,i=e.max_chain_length,s=e.strstart,o=e.prev_length,a=e.nice_match,u=e.strstart>e.w_size-262?e.strstart-(e.w_size-262):0,l=e.window,c=e.w_mask,h=e.prev,d=e.strstart+258,p=l[s+o-1],f=l[s+o];e.prev_length>=e.good_match&&(i>>=2),a>e.lookahead&&(a=e.lookahead);do{if(l[(n=t)+o]===f&&l[n+o-1]===p&&l[n]===l[s]&&l[++n]===l[s+1]){s+=2,n++;do{}while(l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&l[++s]===l[++n]&&s<d);if(r=258-(d-s),s=d-258,r>o){if(e.match_start=t,o=r,r>=a)break;p=l[s+o-1],f=l[s+o]}}}while((t=h[t&c])>u&&0!=--i);return o<=e.lookahead?o:e.lookahead}function g(e){var t,n,r,s,u,l,c,h,d,p,f=e.w_size;do{if(s=e.window_size-e.lookahead-e.strstart,e.strstart>=f+(f-262)){i.arraySet(e.window,e.window,f,f,0),e.match_start-=f,e.strstart-=f,e.block_start-=f,t=n=e.hash_size;do{r=e.head[--t],e.head[t]=r>=f?r-f:0}while(--n);t=n=f;do{r=e.prev[--t],e.prev[t]=r>=f?r-f:0}while(--n);s+=f}if(0===e.strm.avail_in)break;if(l=e.strm,c=e.window,h=e.strstart+e.lookahead,d=s,p=void 0,(p=l.avail_in)>d&&(p=d),n=0===p?0:(l.avail_in-=p,i.arraySet(c,l.input,l.next_in,p,h),1===l.state.wrap?l.adler=o(l.adler,c,p,h):2===l.state.wrap&&(l.adler=a(l.adler,c,p,h)),l.next_in+=p,l.total_in+=p,p),e.lookahead+=n,e.lookahead+e.insert>=3)for(u=e.strstart-e.insert,e.ins_h=e.window[u],e.ins_h=(e.ins_h<<e.hash_shift^e.window[u+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[u+3-1])&e.hash_mask,e.prev[u&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=u,u++,e.insert--,!(e.lookahead+e.insert<3)););}while(e.lookahead<262&&0!==e.strm.avail_in)}function _(e,t){for(var n,r;;){if(e.lookahead<262){if(g(e),e.lookahead<262&&0===t)return 1;if(0===e.lookahead)break}if(n=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==n&&e.strstart-n<=e.w_size-262&&(e.match_length=w(e,n)),e.match_length>=3)if(r=s._tr_tally(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=3){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart}while(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 r=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(r&&(p(e,!1),0===e.strm.avail_out))return 1}return e.insert=e.strstart<2?e.strstart:2,4===t?(p(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(p(e,!1),0===e.strm.avail_out)?1:2}function b(e,t){for(var n,r,i;;){if(e.lookahead<262){if(g(e),e.lookahead<262&&0===t)return 1;if(0===e.lookahead)break}if(n=0,e.lookahead>=3&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=2,0!==n&&e.prev_length<e.max_lazy_match&&e.strstart-n<=e.w_size-262&&(e.match_length=w(e,n),e.match_length<=5&&(1===e.strategy||3===e.match_length&&e.strstart-e.match_start>4096)&&(e.match_length=2)),e.prev_length>=3&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-3,r=s._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+3-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart)}while(0!=--e.prev_length);if(e.match_available=0,e.match_length=2,e.strstart++,r&&(p(e,!1),0===e.strm.avail_out))return 1}else if(e.match_available){if((r=s._tr_tally(e,0,e.window[e.strstart-1]))&&p(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&&(r=s._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<2?e.strstart:2,4===t?(p(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(p(e,!1),0===e.strm.avail_out)?1:2}function y(e,t,n,r,i){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=i}function v(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=8,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(1146),this.dyn_dtree=new i.Buf16(122),this.bl_tree=new i.Buf16(78),h(this.dyn_ltree),h(this.dyn_dtree),h(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(16),this.heap=new i.Buf16(573),h(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(573),h(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 E(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=2,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?42:113,e.adler=2===t.wrap?0:1,t.last_flush=0,s._tr_init(t),0):l(e,-2)}function A(e){var t,n=E(e);return 0===n&&((t=e.state).window_size=2*t.w_size,h(t.head),t.max_lazy_match=r[t.level].max_lazy,t.good_match=r[t.level].good_length,t.nice_match=r[t.level].nice_length,t.max_chain_length=r[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=2,t.match_available=0,t.ins_h=0),n}function x(e,t,n,r,s,o){if(!e)return-2;var a=1;if(-1===t&&(t=6),r<0?(a=0,r=-r):r>15&&(a=2,r-=16),s<1||s>9||8!==n||r<8||r>15||t<0||t>9||o<0||o>4)return l(e,-2);8===r&&(r=9);var u=new v;return e.state=u,u.strm=e,u.wrap=a,u.gzhead=null,u.w_bits=r,u.w_size=1<<u.w_bits,u.w_mask=u.w_size-1,u.hash_bits=s+7,u.hash_size=1<<u.hash_bits,u.hash_mask=u.hash_size-1,u.hash_shift=~~((u.hash_bits+3-1)/3),u.window=new i.Buf8(2*u.w_size),u.head=new i.Buf16(u.hash_size),u.prev=new i.Buf16(u.w_size),u.lit_bufsize=1<<s+6,u.pending_buf_size=4*u.lit_bufsize,u.pending_buf=new i.Buf8(u.pending_buf_size),u.d_buf=1*u.lit_bufsize,u.l_buf=3*u.lit_bufsize,u.level=t,u.strategy=o,u.method=n,A(e)}r=[new y(0,0,0,0,(function(e,t){var n=65535;for(n>e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(e.lookahead<=1){if(g(e),0===e.lookahead&&0===t)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((0===e.strstart||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,p(e,!1),0===e.strm.avail_out))return 1;if(e.strstart-e.block_start>=e.w_size-262&&(p(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(p(e,!0),0===e.strm.avail_out?3:4):(e.strstart>e.block_start&&(p(e,!1),e.strm.avail_out),1)})),new y(4,4,8,4,_),new y(4,5,16,8,_),new y(4,6,32,32,_),new y(4,4,16,16,b),new y(8,16,32,32,b),new y(8,16,128,128,b),new y(8,32,128,256,b),new y(32,128,258,1024,b),new y(32,258,258,4096,b)],t.deflateInit=function(e,t){return x(e,t,8,15,8,0)},t.deflateInit2=x,t.deflateReset=A,t.deflateResetKeep=E,t.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?-2:(e.state.gzhead=t,0):-2},t.deflate=function(e,t){var n,i,o,u;if(!e||!e.state||t>5||t<0)return e?l(e,-2):-2;if(i=e.state,!e.output||!e.input&&0!==e.avail_in||666===i.status&&4!==t)return l(e,0===e.avail_out?-5:-2);if(i.strm=e,n=i.last_flush,i.last_flush=t,42===i.status)if(2===i.wrap)e.adler=0,f(i,31),f(i,139),f(i,8),i.gzhead?(f(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)),f(i,255&i.gzhead.time),f(i,i.gzhead.time>>8&255),f(i,i.gzhead.time>>16&255),f(i,i.gzhead.time>>24&255),f(i,9===i.level?2:i.strategy>=2||i.level<2?4:0),f(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(f(i,255&i.gzhead.extra.length),f(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=a(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(f(i,0),f(i,0),f(i,0),f(i,0),f(i,0),f(i,9===i.level?2:i.strategy>=2||i.level<2?4:0),f(i,3),i.status=113);else{var w=8+(i.w_bits-8<<4)<<8;w|=(i.strategy>=2||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(w|=32),w+=31-w%31,i.status=113,m(i,w),0!==i.strstart&&(m(i,e.adler>>>16),m(i,65535&e.adler)),e.adler=1}if(69===i.status)if(i.gzhead.extra){for(o=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),d(e),o=i.pending,i.pending!==i.pending_buf_size));)f(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(73===i.status)if(i.gzhead.name){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),d(e),o=i.pending,i.pending===i.pending_buf_size)){u=1;break}u=i.gzindex<i.gzhead.name.length?255&i.gzhead.name.charCodeAt(i.gzindex++):0,f(i,u)}while(0!==u);i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),0===u&&(i.gzindex=0,i.status=91)}else i.status=91;if(91===i.status)if(i.gzhead.comment){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),d(e),o=i.pending,i.pending===i.pending_buf_size)){u=1;break}u=i.gzindex<i.gzhead.comment.length?255&i.gzhead.comment.charCodeAt(i.gzindex++):0,f(i,u)}while(0!==u);i.gzhead.hcrc&&i.pending>o&&(e.adler=a(e.adler,i.pending_buf,i.pending-o,o)),0===u&&(i.status=103)}else i.status=103;if(103===i.status&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&d(e),i.pending+2<=i.pending_buf_size&&(f(i,255&e.adler),f(i,e.adler>>8&255),e.adler=0,i.status=113)):i.status=113),0!==i.pending){if(d(e),0===e.avail_out)return i.last_flush=-1,0}else if(0===e.avail_in&&c(t)<=c(n)&&4!==t)return l(e,-5);if(666===i.status&&0!==e.avail_in)return l(e,-5);if(0!==e.avail_in||0!==i.lookahead||0!==t&&666!==i.status){var _=2===i.strategy?function(e,t){for(var n;;){if(0===e.lookahead&&(g(e),0===e.lookahead)){if(0===t)return 1;break}if(e.match_length=0,n=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(p(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(p(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(p(e,!1),0===e.strm.avail_out)?1:2}(i,t):3===i.strategy?function(e,t){for(var n,r,i,o,a=e.window;;){if(e.lookahead<=258){if(g(e),e.lookahead<=258&&0===t)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&e.strstart>0&&(r=a[i=e.strstart-1])===a[++i]&&r===a[++i]&&r===a[++i]){o=e.strstart+258;do{}while(r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&i<o);e.match_length=258-(o-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=3?(n=s._tr_tally(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=s._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(p(e,!1),0===e.strm.avail_out))return 1}return e.insert=0,4===t?(p(e,!0),0===e.strm.avail_out?3:4):e.last_lit&&(p(e,!1),0===e.strm.avail_out)?1:2}(i,t):r[i.level].func(i,t);if(3!==_&&4!==_||(i.status=666),1===_||3===_)return 0===e.avail_out&&(i.last_flush=-1),0;if(2===_&&(1===t?s._tr_align(i):5!==t&&(s._tr_stored_block(i,0,0,!1),3===t&&(h(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),d(e),0===e.avail_out))return i.last_flush=-1,0}return 4!==t?0:i.wrap<=0?1:(2===i.wrap?(f(i,255&e.adler),f(i,e.adler>>8&255),f(i,e.adler>>16&255),f(i,e.adler>>24&255),f(i,255&e.total_in),f(i,e.total_in>>8&255),f(i,e.total_in>>16&255),f(i,e.total_in>>24&255)):(m(i,e.adler>>>16),m(i,65535&e.adler)),d(e),i.wrap>0&&(i.wrap=-i.wrap),0!==i.pending?0:1)},t.deflateEnd=function(e){var t;return e&&e.state?42!==(t=e.state.status)&&69!==t&&73!==t&&91!==t&&103!==t&&113!==t&&666!==t?l(e,-2):(e.state=null,113===t?l(e,-3):0):-2},t.deflateSetDictionary=function(e,t){var n,r,s,a,u,l,c,d,p=t.length;if(!e||!e.state)return-2;if(2===(a=(n=e.state).wrap)||1===a&&42!==n.status||n.lookahead)return-2;for(1===a&&(e.adler=o(e.adler,t,p,0)),n.wrap=0,p>=n.w_size&&(0===a&&(h(n.head),n.strstart=0,n.block_start=0,n.insert=0),d=new i.Buf8(n.w_size),i.arraySet(d,t,p-n.w_size,n.w_size,0),t=d,p=n.w_size),u=e.avail_in,l=e.next_in,c=e.input,e.avail_in=p,e.next_in=0,e.input=t,g(n);n.lookahead>=3;){r=n.strstart,s=n.lookahead-2;do{n.ins_h=(n.ins_h<<n.hash_shift^n.window[r+3-1])&n.hash_mask,n.prev[r&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=r,r++}while(--s);n.strstart=r,n.lookahead=2,g(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=2,n.match_available=0,e.next_in=l,e.input=c,e.avail_in=u,n.wrap=a,0},t.deflateInfo="pako deflate (from Nodeca project)"},function(e,t,n){"use strict";var r=n(11);function i(e){for(var t=e.length;--t>=0;)e[t]=0}var 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],a=[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],l=new Array(576);i(l);var c=new Array(60);i(c);var h=new Array(512);i(h);var d=new Array(256);i(d);var p=new Array(29);i(p);var f,m,w,g=new Array(30);function _(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}function b(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function y(e){return e<256?h[e]:h[256+(e>>>7)]}function v(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function E(e,t,n){e.bi_valid>16-n?(e.bi_buf|=t<<e.bi_valid&65535,v(e,e.bi_buf),e.bi_buf=t>>16-e.bi_valid,e.bi_valid+=n-16):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=n)}function A(e,t,n){E(e,n[2*t],n[2*t+1])}function x(e,t){var n=0;do{n|=1&e,e>>>=1,n<<=1}while(--t>0);return n>>>1}function T(e,t,n){var r,i,s=new Array(16),o=0;for(r=1;r<=15;r++)s[r]=o=o+n[r-1]<<1;for(i=0;i<=t;i++){var a=e[2*i+1];0!==a&&(e[2*i]=x(s[a]++,a))}}function S(e){var t;for(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){e.bi_valid>8?v(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function k(e,t,n,r){var i=2*t,s=2*n;return e[i]<e[s]||e[i]===e[s]&&r[t]<=r[n]}function D(e,t,n){for(var r=e.heap[n],i=n<<1;i<=e.heap_len&&(i<e.heap_len&&k(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!k(t,r,e.heap[i],e.depth));)e.heap[n]=e.heap[i],n=i,i<<=1;e.heap[n]=r}function R(e,t,n){var r,i,a,u,l=0;if(0!==e.last_lit)do{r=e.pending_buf[e.d_buf+2*l]<<8|e.pending_buf[e.d_buf+2*l+1],i=e.pending_buf[e.l_buf+l],l++,0===r?A(e,i,t):(A(e,(a=d[i])+256+1,t),0!==(u=s[a])&&E(e,i-=p[a],u),A(e,a=y(--r),n),0!==(u=o[a])&&E(e,r-=g[a],u))}while(l<e.last_lit);A(e,256,t)}function O(e,t){var n,r,i,s=t.dyn_tree,o=t.stat_desc.static_tree,a=t.stat_desc.has_stree,u=t.stat_desc.elems,l=-1;for(e.heap_len=0,e.heap_max=573,n=0;n<u;n++)0!==s[2*n]?(e.heap[++e.heap_len]=l=n,e.depth[n]=0):s[2*n+1]=0;for(;e.heap_len<2;)s[2*(i=e.heap[++e.heap_len]=l<2?++l:0)]=1,e.depth[i]=0,e.opt_len--,a&&(e.static_len-=o[2*i+1]);for(t.max_code=l,n=e.heap_len>>1;n>=1;n--)D(e,s,n);i=u;do{n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],D(e,s,1),r=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=r,s[2*i]=s[2*n]+s[2*r],e.depth[i]=(e.depth[n]>=e.depth[r]?e.depth[n]:e.depth[r])+1,s[2*n+1]=s[2*r+1]=i,e.heap[1]=i++,D(e,s,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,t){var n,r,i,s,o,a,u=t.dyn_tree,l=t.max_code,c=t.stat_desc.static_tree,h=t.stat_desc.has_stree,d=t.stat_desc.extra_bits,p=t.stat_desc.extra_base,f=t.stat_desc.max_length,m=0;for(s=0;s<=15;s++)e.bl_count[s]=0;for(u[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;n<573;n++)(s=u[2*u[2*(r=e.heap[n])+1]+1]+1)>f&&(s=f,m++),u[2*r+1]=s,r>l||(e.bl_count[s]++,o=0,r>=p&&(o=d[r-p]),a=u[2*r],e.opt_len+=a*(s+o),h&&(e.static_len+=a*(c[2*r+1]+o)));if(0!==m){do{for(s=f-1;0===e.bl_count[s];)s--;e.bl_count[s]--,e.bl_count[s+1]+=2,e.bl_count[f]--,m-=2}while(m>0);for(s=f;0!==s;s--)for(r=e.bl_count[s];0!==r;)(i=e.heap[--n])>l||(u[2*i+1]!==s&&(e.opt_len+=(s-u[2*i+1])*u[2*i],u[2*i+1]=s),r--)}}(e,t),T(s,l,e.bl_count)}function I(e,t,n){var r,i,s=-1,o=t[1],a=0,u=7,l=4;for(0===o&&(u=138,l=3),t[2*(n+1)+1]=65535,r=0;r<=n;r++)i=o,o=t[2*(r+1)+1],++a<u&&i===o||(a<l?e.bl_tree[2*i]+=a:0!==i?(i!==s&&e.bl_tree[2*i]++,e.bl_tree[32]++):a<=10?e.bl_tree[34]++:e.bl_tree[36]++,a=0,s=i,0===o?(u=138,l=3):i===o?(u=6,l=3):(u=7,l=4))}function N(e,t,n){var r,i,s=-1,o=t[1],a=0,u=7,l=4;for(0===o&&(u=138,l=3),r=0;r<=n;r++)if(i=o,o=t[2*(r+1)+1],!(++a<u&&i===o)){if(a<l)do{A(e,i,e.bl_tree)}while(0!=--a);else 0!==i?(i!==s&&(A(e,i,e.bl_tree),a--),A(e,16,e.bl_tree),E(e,a-3,2)):a<=10?(A(e,17,e.bl_tree),E(e,a-3,3)):(A(e,18,e.bl_tree),E(e,a-11,7));a=0,s=i,0===o?(u=138,l=3):i===o?(u=6,l=3):(u=7,l=4)}}i(g);var F=!1;function P(e,t,n,i){E(e,0+(i?1:0),3),function(e,t,n,i){C(e),i&&(v(e,n),v(e,~n)),r.arraySet(e.pending_buf,e.window,t,n,e.pending),e.pending+=n}(e,t,n,!0)}t._tr_init=function(e){F||(!function(){var e,t,n,r,i,u=new Array(16);for(n=0,r=0;r<28;r++)for(p[r]=n,e=0;e<1<<s[r];e++)d[n++]=r;for(d[n-1]=r,i=0,r=0;r<16;r++)for(g[r]=i,e=0;e<1<<o[r];e++)h[i++]=r;for(i>>=7;r<30;r++)for(g[r]=i<<7,e=0;e<1<<o[r]-7;e++)h[256+i++]=r;for(t=0;t<=15;t++)u[t]=0;for(e=0;e<=143;)l[2*e+1]=8,e++,u[8]++;for(;e<=255;)l[2*e+1]=9,e++,u[9]++;for(;e<=279;)l[2*e+1]=7,e++,u[7]++;for(;e<=287;)l[2*e+1]=8,e++,u[8]++;for(T(l,287,u),e=0;e<30;e++)c[2*e+1]=5,c[2*e]=x(e,5);f=new _(l,s,257,286,15),m=new _(c,o,0,30,15),w=new _(new Array(0),a,0,19,7)}(),F=!0),e.l_desc=new b(e.dyn_ltree,f),e.d_desc=new b(e.dyn_dtree,m),e.bl_desc=new b(e.bl_tree,w),e.bi_buf=0,e.bi_valid=0,S(e)},t._tr_stored_block=P,t._tr_flush_block=function(e,t,n,r){var i,s,o=0;e.level>0?(2===e.strm.data_type&&(e.strm.data_type=function(e){var t,n=4093624447;for(t=0;t<=31;t++,n>>>=1)if(1&n&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;t<256;t++)if(0!==e.dyn_ltree[2*t])return 1;return 0}(e)),O(e,e.l_desc),O(e,e.d_desc),o=function(e){var t;for(I(e,e.dyn_ltree,e.l_desc.max_code),I(e,e.dyn_dtree,e.d_desc.max_code),O(e,e.bl_desc),t=18;t>=3&&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,(s=e.static_len+3+7>>>3)<=i&&(i=s)):i=s=n+5,n+4<=i&&-1!==t?P(e,t,n,r):4===e.strategy||s===i?(E(e,2+(r?1:0),3),R(e,l,c)):(E(e,4+(r?1:0),3),function(e,t,n,r){var i;for(E(e,t-257,5),E(e,n-1,5),E(e,r-4,4),i=0;i<r;i++)E(e,e.bl_tree[2*u[i]+1],3);N(e,e.dyn_ltree,t-1),N(e,e.dyn_dtree,n-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,o+1),R(e,e.dyn_ltree,e.dyn_dtree)),S(e),r&&C(e)},t._tr_tally=function(e,t,n){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&n,e.last_lit++,0===t?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(d[n]+256+1)]++,e.dyn_dtree[2*y(t)]++),e.last_lit===e.lit_bufsize-1},t._tr_align=function(e){E(e,2,3),A(e,256,l),function(e){16===e.bi_valid?(v(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},function(e,t,n){"use strict";const r=n(7),i=function(e,t){const n={};if(!(e.child&&!r.isEmptyObject(e.child)||e.attrsMap&&!r.isEmptyObject(e.attrsMap)))return r.isExist(e.val)?e.val:"";r.isExist(e.val)&&("string"!=typeof e.val||""!==e.val&&e.val!==t.cdataPositionChar)&&("strict"===t.arrayMode?n[t.textNodeName]=[e.val]:n[t.textNodeName]=e.val),r.merge(n,e.attrsMap,t.arrayMode);const s=Object.keys(e.child);for(let r=0;r<s.length;r++){var o=s[r];if(e.child[o]&&e.child[o].length>1)for(var a in n[o]=[],e.child[o])n[o].push(i(e.child[o][a],t));else if(!0===t.arrayMode){const r=i(e.child[o][0],t);n[o]="object"==typeof r?[r]:r}else"strict"===t.arrayMode?n[o]=[i(e.child[o][0],t)]:n[o]=i(e.child[o][0],t)}return n};t.convertToJson=i},function(e,t,n){"use strict";e.exports=function(e,t,n){this.tagname=e,this.parent=t,this.child={},this.attrsMap={},this.val=n,this.addChild=function(e){Array.isArray(this.child[e.tagname])?this.child[e.tagname].push(e):this.child[e.tagname]=[e]}}},function(e,t,n){"use strict";const r=n(7),i={allowBooleanAttributes:!1,localeRange:"a-zA-Z"},s=["allowBooleanAttributes","localeRange"];function o(e,t){for(var n=t;t<e.length;t++)if("?"!=e[t]&&" "!=e[t]);else{var r=e.substr(n,t-n);if(t>5&&"xml"===r)return h("InvalidXml","XML declaration allowed only at the start of the document.",f(e,t));if("?"==e[t]&&">"==e[t+1]){t++;break}}return t}function a(e,t){if(e.length>t+5&&"-"===e[t+1]&&"-"===e[t+2]){for(t+=3;t<e.length;t++)if("-"===e[t]&&"-"===e[t+1]&&">"===e[t+2]){t+=2;break}}else if(e.length>t+8&&"D"===e[t+1]&&"O"===e[t+2]&&"C"===e[t+3]&&"T"===e[t+4]&&"Y"===e[t+5]&&"P"===e[t+6]&&"E"===e[t+7]){let n=1;for(t+=8;t<e.length;t++)if("<"===e[t])n++;else if(">"===e[t]&&(n--,0===n))break}else if(e.length>t+9&&"["===e[t+1]&&"C"===e[t+2]&&"D"===e[t+3]&&"A"===e[t+4]&&"T"===e[t+5]&&"A"===e[t+6]&&"["===e[t+7])for(t+=8;t<e.length;t++)if("]"===e[t]&&"]"===e[t+1]&&">"===e[t+2]){t+=2;break}return t}t.validate=function(e,t){if(t=r.buildOptions(t,i,s),new RegExp(`[${t.localeRange}]`).test("<#$'\"\\/:0"))return h("InvalidOptions","Invalid localeRange",1);const n=[];let l=!1,d=!1;"\ufeff"===e[0]&&(e=e.substr(1));const m=new RegExp(`^[${t.localeRange}_][${t.localeRange}0-9\\-\\.:]*$`),w=new RegExp(`^([${t.localeRange}_])[${t.localeRange}0-9\\.\\-_:]*$`);for(let r=0;r<e.length;r++){if("<"!==e[r]){if(" "===e[r]||"\t"===e[r]||"\n"===e[r]||"\r"===e[r])continue;return h("InvalidChar",`char '${e[r]}' is not expected.`,f(e,r))}if(r++,"?"===e[r]){if(r=o(e,++r),r.err)return r}else{if("!"===e[r]){r=a(e,r);continue}{let i=!1;"/"===e[r]&&(i=!0,r++);let s="";for(;r<e.length&&">"!==e[r]&&" "!==e[r]&&"\t"!==e[r]&&"\n"!==e[r]&&"\r"!==e[r];r++)s+=e[r];if(s=s.trim(),"/"===s[s.length-1]&&(s=s.substring(0,s.length-1),r--),!p(s,w)){let t;return t=0===s.trim().length?"There is an unnecessary space between tag name and backward slash '</ ..'.":`Tag '${s}' is an invalid name.`,h("InvalidTag",t,f(e,r))}const o=u(e,r);if(!1===o)return h("InvalidAttr",`Attributes for '${s}' have open quote.`,f(e,r));let g=o.value;if(r=o.index,"/"===g[g.length-1]){g=g.substring(0,g.length-1);const n=c(g,t,m);if(!0!==n)return h(n.err.code,n.err.msg,f(e,r-g.length+n.err.line));l=!0}else if(i){if(!o.tagClosed)return h("InvalidTag",`Closing tag '${s}' doesn't have proper closing.`,f(e,r));if(g.trim().length>0)return h("InvalidTag",`Closing tag '${s}' can't have attributes or invalid starting.`,f(e,r));{const t=n.pop();if(s!==t)return h("InvalidTag",`Closing tag '${t}' is expected inplace of '${s}'.`,f(e,r));0==n.length&&(d=!0)}}else{const i=c(g,t,m);if(!0!==i)return h(i.err.code,i.err.msg,f(e,r-g.length+i.err.line));if(!0===d)return h("InvalidXml","Multiple possible root nodes found.",f(e,r));n.push(s),l=!0}for(r++;r<e.length;r++)if("<"===e[r]){if("!"===e[r+1]){r++,r=a(e,r);continue}break}"<"===e[r]&&r--}}}return l?!(n.length>0)||h("InvalidXml",`Invalid '${JSON.stringify(n,null,4).replace(/\r?\n/g,"")}' found.`,1):h("InvalidXml","Start tag expected.",1)};function u(e,t){let n="",r="",i=!1;for(;t<e.length;t++){if('"'===e[t]||"'"===e[t])if(""===r)r=e[t];else{if(r!==e[t])continue;r=""}else if(">"===e[t]&&""===r){i=!0;break}n+=e[t]}return""===r&&{value:n,index:t,tagClosed:i}}const l=new RegExp("(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['\"])(([\\s\\S])*?)\\5)?","g");function c(e,t,n){const i=r.getAllMatches(e,l),s={};for(let r=0;r<i.length;r++){if(0===i[r][1].length)return h("InvalidAttr",`Attribute '${i[r][2]}' has no space in starting.`,m(e,i[r][0]));if(void 0===i[r][3]&&!t.allowBooleanAttributes)return h("InvalidAttr",`boolean attribute '${i[r][2]}' is not allowed.`,m(e,i[r][0]));const o=i[r][2];if(!d(o,n))return h("InvalidAttr",`Attribute '${o}' is an invalid name.`,m(e,i[r][0]));if(s.hasOwnProperty(o))return h("InvalidAttr",`Attribute '${o}' is repeated.`,m(e,i[r][0]));s[o]=1}return!0}function h(e,t,n){return{err:{code:e,msg:t,line:n}}}function d(e,t){return r.doesMatch(e,t)}function p(e,t){return!r.doesNotMatch(e,t)}function f(e,t){return e.substring(0,t).split(/\r?\n/).length}function m(e,t){return e.indexOf(t)+t.length}},function(e,t,n){"use strict";const r=function(e){return String.fromCharCode(e)},i={nilChar:r(176),missingChar:r(201),nilPremitive:r(175),missingPremitive:r(200),emptyChar:r(178),emptyValue:r(177),boundryChar:r(179),objStart:r(198),arrStart:r(204),arrayEnd:r(185)},s=[i.nilChar,i.nilPremitive,i.missingChar,i.missingPremitive,i.boundryChar,i.emptyChar,i.emptyValue,i.arrayEnd,i.objStart,i.arrStart],o=function(e,t,n){if("string"==typeof t)return e&&e[0]&&void 0!==e[0].val?a(e[0].val,t):a(e,t);{const s=void 0===(r=e)?i.missingChar:null===r?i.nilChar:!(r.child&&0===Object.keys(r.child).length&&(!r.attrsMap||0===Object.keys(r.attrsMap).length))||i.emptyChar;if(!0===s){let r="";if(Array.isArray(t)){r+=i.arrStart;const s=t[0],l=e.length;if("string"==typeof s)for(let t=0;t<l;t++){const n=a(e[t].val,s);r=u(r,n)}else for(let t=0;t<l;t++){const i=o(e[t],s,n);r=u(r,i)}r+=i.arrayEnd}else{r+=i.objStart;const s=Object.keys(t);Array.isArray(e)&&(e=e[0]);for(let i in s){const a=s[i];let l;l=!n.ignoreAttributes&&e.attrsMap&&e.attrsMap[a]?o(e.attrsMap[a],t[a],n):a===n.textNodeName?o(e.val,t[a],n):o(e.child[a],t[a],n),r=u(r,l)}}return r}return s}var r},a=function(e){switch(e){case void 0:return i.missingPremitive;case null:return i.nilPremitive;case"":return i.emptyValue;default:return e}},u=function(e,t){return l(t[0])||l(e[e.length-1])||(e+=i.boundryChar),e+t},l=function(e){return-1!==s.indexOf(e)};const c=n(35),h=n(7).buildOptions;t.convert2nimn=function(e,t,n){return n=h(n,c.defaultOptions,c.props),o(e,t,n)}},function(e,t,n){"use strict";const r=n(7),i=n(7).buildOptions,s=n(35),o=function(e,t,n){let i="{";const s=Object.keys(e.child);for(let n=0;n<s.length;n++){var a=s[n];if(e.child[a]&&e.child[a].length>1){for(var u in i+='"'+a+'" : [ ',e.child[a])i+=o(e.child[a][u],t)+" , ";i=i.substr(0,i.length-1)+" ] "}else i+='"'+a+'" : '+o(e.child[a][0],t)+" ,"}return r.merge(i,e.attrsMap),r.isEmptyObject(i)?r.isExist(e.val)?e.val:"":(r.isExist(e.val)&&("string"!=typeof e.val||""!==e.val&&e.val!==t.cdataPositionChar)&&(i+='"'+t.textNodeName+'" : '+(!0!==(l=e.val)&&!1!==l&&isNaN(l)?'"'+l+'"':l)),","===i[i.length-1]&&(i=i.substr(0,i.length-2)),i+"}");var l};t.convertToJsonString=function(e,t){return(t=i(t,s.defaultOptions,s.props)).indentBy=t.indentBy||"",o(e,t,0)}},function(e,t,n){"use strict";const r=n(7).buildOptions,i={attributeNamePrefix:"@_",attrNodeName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataTagName:!1,cdataPositionChar:"\\c",format:!1,indentBy:" ",supressEmptyNode:!1,tagValueProcessor:function(e){return e},attrValueProcessor:function(e){return e}},s=["attributeNamePrefix","attrNodeName","textNodeName","ignoreAttributes","cdataTagName","cdataPositionChar","format","indentBy","supressEmptyNode","tagValueProcessor","attrValueProcessor"];function o(e){this.options=r(e,i,s),this.options.ignoreAttributes||this.options.attrNodeName?this.isAttribute=function(){return!1}:(this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=f),this.options.cdataTagName?this.isCDATA=m:this.isCDATA=function(){return!1},this.replaceCDATAstr=a,this.replaceCDATAarr=u,this.options.format?(this.indentate=p,this.tagEndChar=">\n",this.newLine="\n"):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine=""),this.options.supressEmptyNode?(this.buildTextNode=d,this.buildObjNode=c):(this.buildTextNode=h,this.buildObjNode=l),this.buildTextValNode=h,this.buildObjectNode=l}function a(e,t){return e=this.options.tagValueProcessor(""+e),""===this.options.cdataPositionChar||""===e?e+"<![CDATA["+t+"]]"+this.tagEndChar:e.replace(this.options.cdataPositionChar,"<![CDATA["+t+"]]"+this.tagEndChar)}function u(e,t){if(e=this.options.tagValueProcessor(""+e),""===this.options.cdataPositionChar||""===e)return e+"<![CDATA["+t.join("]]><![CDATA[")+"]]"+this.tagEndChar;for(let n in t)e=e.replace(this.options.cdataPositionChar,"<![CDATA["+t[n]+"]]>");return e+this.newLine}function l(e,t,n,r){return n&&!e.includes("<")?this.indentate(r)+"<"+t+n+">"+e+"</"+t+this.tagEndChar:this.indentate(r)+"<"+t+n+this.tagEndChar+e+this.indentate(r)+"</"+t+this.tagEndChar}function c(e,t,n,r){return""!==e?this.buildObjectNode(e,t,n,r):this.indentate(r)+"<"+t+n+"/"+this.tagEndChar}function h(e,t,n,r){return this.indentate(r)+"<"+t+n+">"+this.options.tagValueProcessor(e)+"</"+t+this.tagEndChar}function d(e,t,n,r){return""!==e?this.buildTextValNode(e,t,n,r):this.indentate(r)+"<"+t+n+"/"+this.tagEndChar}function p(e){return this.options.indentBy.repeat(e)}function f(e){return!!e.startsWith(this.options.attributeNamePrefix)&&e.substr(this.attrPrefixLen)}function m(e){return e===this.options.cdataTagName}o.prototype.parse=function(e){return this.j2x(e,0).val},o.prototype.j2x=function(e,t){let n="",r="";const i=Object.keys(e),s=i.length;for(let o=0;o<s;o++){const s=i[o];if(void 0===e[s]);else if(null===e[s])r+=this.indentate(t)+"<"+s+"/"+this.tagEndChar;else if(e[s]instanceof Date)r+=this.buildTextNode(e[s],s,"",t);else if("object"!=typeof e[s]){const i=this.isAttribute(s);i?n+=" "+i+'="'+this.options.attrValueProcessor(""+e[s])+'"':this.isCDATA(s)?e[this.options.textNodeName]?r+=this.replaceCDATAstr(e[this.options.textNodeName],e[s]):r+=this.replaceCDATAstr("",e[s]):s===this.options.textNodeName?e[this.options.cdataTagName]||(r+=this.options.tagValueProcessor(""+e[s])):r+=this.buildTextNode(e[s],s,"",t)}else if(Array.isArray(e[s]))if(this.isCDATA(s))r+=this.indentate(t),e[this.options.textNodeName]?r+=this.replaceCDATAarr(e[this.options.textNodeName],e[s]):r+=this.replaceCDATAarr("",e[s]);else{const n=e[s].length;for(let i=0;i<n;i++){const n=e[s][i];if(void 0===n);else if(null===n)r+=this.indentate(t)+"<"+s+"/"+this.tagEndChar;else if("object"==typeof n){const e=this.j2x(n,t+1);r+=this.buildObjNode(e.val,s,e.attrStr,t)}else r+=this.buildTextNode(n,s,"",t)}}else if(this.options.attrNodeName&&s===this.options.attrNodeName){const t=Object.keys(e[s]),r=t.length;for(let i=0;i<r;i++)n+=" "+t[i]+'="'+this.options.attrValueProcessor(""+e[s][t[i]])+'"'}else{const n=this.j2x(e[s],t+1);r+=this.buildObjNode(n.val,s,n.attrStr,t)}}return{attrStr:n,val:r}},e.exports=o},function(e,t){var n,r,i,s;
|
||
/*! http://mths.be/fromcodepoint v0.2.1 by @mathias */
|
||
String.fromCodePoint||(n=function(){try{var e={},t=Object.defineProperty,n=t(e,e,e)&&t}catch(e){}return n}(),r=String.fromCharCode,i=Math.floor,s=function(e){var t,n,s=16384,o=[],a=-1,u=arguments.length;if(!u)return"";for(var l="";++a<u;){var c=Number(arguments[a]);if(!isFinite(c)||c<0||c>1114111||i(c)!=c)throw RangeError("Invalid code point: "+c);c<=65535?o.push(c):(t=55296+((c-=65536)>>10),n=c%1024+56320,o.push(t,n)),(a+1==u||o.length>s)&&(l+=r.apply(null,o),o.length=0)}return l},n?n(String,"fromCodePoint",{value:s,configurable:!0,writable:!0}):String.fromCodePoint=s)},function(e,t,n){"use strict";var r=n(184),i=n(203);function s(e){return function(){throw new Error("Function "+e+" is deprecated and cannot be used.")}}e.exports.Type=n(2),e.exports.Schema=n(16),e.exports.FAILSAFE_SCHEMA=n(50),e.exports.JSON_SCHEMA=n(91),e.exports.CORE_SCHEMA=n(90),e.exports.DEFAULT_SAFE_SCHEMA=n(26),e.exports.DEFAULT_FULL_SCHEMA=n(36),e.exports.load=r.load,e.exports.loadAll=r.loadAll,e.exports.safeLoad=r.safeLoad,e.exports.safeLoadAll=r.safeLoadAll,e.exports.dump=i.dump,e.exports.safeDump=i.safeDump,e.exports.YAMLException=n(25),e.exports.MINIMAL_SCHEMA=n(50),e.exports.SAFE_SCHEMA=n(26),e.exports.DEFAULT_SCHEMA=n(36),e.exports.scan=s("scan"),e.exports.parse=s("parse"),e.exports.compose=s("compose"),e.exports.addConstructor=s("addConstructor")},function(e,t,n){"use strict";var r=n(15),i=n(25),s=n(185),o=n(26),a=n(36),u=Object.prototype.hasOwnProperty,l=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,c=/[\x85\u2028\u2029]/,h=/[,\[\]\{\}]/,d=/^(?:!|!!|![a-z\-]+!)$/i,p=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function f(e){return Object.prototype.toString.call(e)}function m(e){return 10===e||13===e}function w(e){return 9===e||32===e}function g(e){return 9===e||32===e||10===e||13===e}function _(e){return 44===e||91===e||93===e||123===e||125===e}function b(e){var t;return 48<=e&&e<=57?e-48:97<=(t=32|e)&&t<=102?t-97+10:-1}function y(e){return 48===e?"\0":97===e?"":98===e?"\b":116===e||9===e?"\t":110===e?"\n":118===e?"\v":102===e?"\f":114===e?"\r":101===e?"":32===e?" ":34===e?'"':47===e?"/":92===e?"\\":78===e?"
":95===e?" ":76===e?"\u2028":80===e?"\u2029":""}function v(e){return e<=65535?String.fromCharCode(e):String.fromCharCode(55296+(e-65536>>10),56320+(e-65536&1023))}for(var E=new Array(256),A=new Array(256),x=0;x<256;x++)E[x]=y(x)?1:0,A[x]=y(x);function T(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||a,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function S(e,t){return new i(t,new s(e.filename,e.input,e.position,e.line,e.position-e.lineStart))}function C(e,t){throw S(e,t)}function k(e,t){e.onWarning&&e.onWarning.call(null,S(e,t))}var D={YAML:function(e,t,n){var r,i,s;null!==e.version&&C(e,"duplication of %YAML directive"),1!==n.length&&C(e,"YAML directive accepts exactly one argument"),null===(r=/^([0-9]+)\.([0-9]+)$/.exec(n[0]))&&C(e,"ill-formed argument of the YAML directive"),i=parseInt(r[1],10),s=parseInt(r[2],10),1!==i&&C(e,"unacceptable YAML version of the document"),e.version=n[0],e.checkLineBreaks=s<2,1!==s&&2!==s&&k(e,"unsupported YAML version of the document")},TAG:function(e,t,n){var r,i;2!==n.length&&C(e,"TAG directive accepts exactly two arguments"),r=n[0],i=n[1],d.test(r)||C(e,"ill-formed tag handle (first argument) of the TAG directive"),u.call(e.tagMap,r)&&C(e,'there is a previously declared suffix for "'+r+'" tag handle'),p.test(i)||C(e,"ill-formed tag prefix (second argument) of the TAG directive"),e.tagMap[r]=i}};function R(e,t,n,r){var i,s,o,a;if(t<n){if(a=e.input.slice(t,n),r)for(i=0,s=a.length;i<s;i+=1)9===(o=a.charCodeAt(i))||32<=o&&o<=1114111||C(e,"expected valid JSON character");else l.test(a)&&C(e,"the stream contains non-printable characters");e.result+=a}}function O(e,t,n,i){var s,o,a,l;for(r.isObject(n)||C(e,"cannot merge mappings; the provided source object is unacceptable"),a=0,l=(s=Object.keys(n)).length;a<l;a+=1)o=s[a],u.call(t,o)||(t[o]=n[o],i[o]=!0)}function I(e,t,n,r,i,s,o,a){var l,c;if(Array.isArray(i))for(l=0,c=(i=Array.prototype.slice.call(i)).length;l<c;l+=1)Array.isArray(i[l])&&C(e,"nested arrays are not supported inside keys"),"object"==typeof i&&"[object Object]"===f(i[l])&&(i[l]="[object Object]");if("object"==typeof i&&"[object Object]"===f(i)&&(i="[object Object]"),i=String(i),null===t&&(t={}),"tag:yaml.org,2002:merge"===r)if(Array.isArray(s))for(l=0,c=s.length;l<c;l+=1)O(e,t,s[l],n);else O(e,t,s,n);else e.json||u.call(n,i)||!u.call(t,i)||(e.line=o||e.line,e.position=a||e.position,C(e,"duplicated mapping key")),t[i]=s,delete n[i];return t}function N(e){var t;10===(t=e.input.charCodeAt(e.position))?e.position++:13===t?(e.position++,10===e.input.charCodeAt(e.position)&&e.position++):C(e,"a line break is expected"),e.line+=1,e.lineStart=e.position}function F(e,t,n){for(var r=0,i=e.input.charCodeAt(e.position);0!==i;){for(;w(i);)i=e.input.charCodeAt(++e.position);if(t&&35===i)do{i=e.input.charCodeAt(++e.position)}while(10!==i&&13!==i&&0!==i);if(!m(i))break;for(N(e),i=e.input.charCodeAt(e.position),r++,e.lineIndent=0;32===i;)e.lineIndent++,i=e.input.charCodeAt(++e.position)}return-1!==n&&0!==r&&e.lineIndent<n&&k(e,"deficient indentation"),r}function P(e){var t,n=e.position;return!(45!==(t=e.input.charCodeAt(n))&&46!==t||t!==e.input.charCodeAt(n+1)||t!==e.input.charCodeAt(n+2)||(n+=3,0!==(t=e.input.charCodeAt(n))&&!g(t)))}function L(e,t){1===t?e.result+=" ":t>1&&(e.result+=r.repeat("\n",t-1))}function B(e,t){var n,r,i=e.tag,s=e.anchor,o=[],a=!1;for(null!==e.anchor&&(e.anchorMap[e.anchor]=o),r=e.input.charCodeAt(e.position);0!==r&&45===r&&g(e.input.charCodeAt(e.position+1));)if(a=!0,e.position++,F(e,!0,-1)&&e.lineIndent<=t)o.push(null),r=e.input.charCodeAt(e.position);else if(n=e.line,W(e,t,3,!1,!0),o.push(e.result),F(e,!0,-1),r=e.input.charCodeAt(e.position),(e.line===n||e.lineIndent>t)&&0!==r)C(e,"bad indentation of a sequence entry");else if(e.lineIndent<t)break;return!!a&&(e.tag=i,e.anchor=s,e.kind="sequence",e.result=o,!0)}function U(e){var t,n,r,i,s=!1,o=!1;if(33!==(i=e.input.charCodeAt(e.position)))return!1;if(null!==e.tag&&C(e,"duplication of a tag property"),60===(i=e.input.charCodeAt(++e.position))?(s=!0,i=e.input.charCodeAt(++e.position)):33===i?(o=!0,n="!!",i=e.input.charCodeAt(++e.position)):n="!",t=e.position,s){do{i=e.input.charCodeAt(++e.position)}while(0!==i&&62!==i);e.position<e.length?(r=e.input.slice(t,e.position),i=e.input.charCodeAt(++e.position)):C(e,"unexpected end of the stream within a verbatim tag")}else{for(;0!==i&&!g(i);)33===i&&(o?C(e,"tag suffix cannot contain exclamation marks"):(n=e.input.slice(t-1,e.position+1),d.test(n)||C(e,"named tag handle cannot contain such characters"),o=!0,t=e.position+1)),i=e.input.charCodeAt(++e.position);r=e.input.slice(t,e.position),h.test(r)&&C(e,"tag suffix cannot contain flow indicator characters")}return r&&!p.test(r)&&C(e,"tag name cannot contain such characters: "+r),s?e.tag=r:u.call(e.tagMap,n)?e.tag=e.tagMap[n]+r:"!"===n?e.tag="!"+r:"!!"===n?e.tag="tag:yaml.org,2002:"+r:C(e,'undeclared tag handle "'+n+'"'),!0}function M(e){var t,n;if(38!==(n=e.input.charCodeAt(e.position)))return!1;for(null!==e.anchor&&C(e,"duplication of an anchor property"),n=e.input.charCodeAt(++e.position),t=e.position;0!==n&&!g(n)&&!_(n);)n=e.input.charCodeAt(++e.position);return e.position===t&&C(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(t,e.position),!0}function W(e,t,n,i,s){var o,a,l,c,h,d,p,f,y=1,x=!1,T=!1;if(null!==e.listener&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,o=a=l=4===n||3===n,i&&F(e,!0,-1)&&(x=!0,e.lineIndent>t?y=1:e.lineIndent===t?y=0:e.lineIndent<t&&(y=-1)),1===y)for(;U(e)||M(e);)F(e,!0,-1)?(x=!0,l=o,e.lineIndent>t?y=1:e.lineIndent===t?y=0:e.lineIndent<t&&(y=-1)):l=!1;if(l&&(l=x||s),1!==y&&4!==n||(p=1===n||2===n?t:t+1,f=e.position-e.lineStart,1===y?l&&(B(e,f)||function(e,t,n){var r,i,s,o,a,u=e.tag,l=e.anchor,c={},h={},d=null,p=null,f=null,m=!1,_=!1;for(null!==e.anchor&&(e.anchorMap[e.anchor]=c),a=e.input.charCodeAt(e.position);0!==a;){if(r=e.input.charCodeAt(e.position+1),s=e.line,o=e.position,63!==a&&58!==a||!g(r)){if(!W(e,n,2,!1,!0))break;if(e.line===s){for(a=e.input.charCodeAt(e.position);w(a);)a=e.input.charCodeAt(++e.position);if(58===a)g(a=e.input.charCodeAt(++e.position))||C(e,"a whitespace character is expected after the key-value separator within a block mapping"),m&&(I(e,c,h,d,p,null),d=p=f=null),_=!0,m=!1,i=!1,d=e.tag,p=e.result;else{if(!_)return e.tag=u,e.anchor=l,!0;C(e,"can not read an implicit mapping pair; a colon is missed")}}else{if(!_)return e.tag=u,e.anchor=l,!0;C(e,"can not read a block mapping entry; a multiline key may not be an implicit key")}}else 63===a?(m&&(I(e,c,h,d,p,null),d=p=f=null),_=!0,m=!0,i=!0):m?(m=!1,i=!0):C(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,a=r;if((e.line===s||e.lineIndent>t)&&(W(e,t,4,!0,i)&&(m?p=e.result:f=e.result),m||(I(e,c,h,d,p,f,s,o),d=p=f=null),F(e,!0,-1),a=e.input.charCodeAt(e.position)),e.lineIndent>t&&0!==a)C(e,"bad indentation of a mapping entry");else if(e.lineIndent<t)break}return m&&I(e,c,h,d,p,null),_&&(e.tag=u,e.anchor=l,e.kind="mapping",e.result=c),_}(e,f,p))||function(e,t){var n,r,i,s,o,a,u,l,c,h,d=!0,p=e.tag,f=e.anchor,m={};if(91===(h=e.input.charCodeAt(e.position)))i=93,a=!1,r=[];else{if(123!==h)return!1;i=125,a=!0,r={}}for(null!==e.anchor&&(e.anchorMap[e.anchor]=r),h=e.input.charCodeAt(++e.position);0!==h;){if(F(e,!0,t),(h=e.input.charCodeAt(e.position))===i)return e.position++,e.tag=p,e.anchor=f,e.kind=a?"mapping":"sequence",e.result=r,!0;d||C(e,"missed comma between flow collection entries"),c=null,s=o=!1,63===h&&g(e.input.charCodeAt(e.position+1))&&(s=o=!0,e.position++,F(e,!0,t)),n=e.line,W(e,t,1,!1,!0),l=e.tag,u=e.result,F(e,!0,t),h=e.input.charCodeAt(e.position),!o&&e.line!==n||58!==h||(s=!0,h=e.input.charCodeAt(++e.position),F(e,!0,t),W(e,t,1,!1,!0),c=e.result),a?I(e,r,m,l,u,c):s?r.push(I(e,null,m,l,u,c)):r.push(u),F(e,!0,t),44===(h=e.input.charCodeAt(e.position))?(d=!0,h=e.input.charCodeAt(++e.position)):d=!1}C(e,"unexpected end of the stream within a flow collection")}(e,p)?T=!0:(a&&function(e,t){var n,i,s,o,a,u=1,l=!1,c=!1,h=t,d=0,p=!1;if(124===(o=e.input.charCodeAt(e.position)))i=!1;else{if(62!==o)return!1;i=!0}for(e.kind="scalar",e.result="";0!==o;)if(43===(o=e.input.charCodeAt(++e.position))||45===o)1===u?u=43===o?3:2:C(e,"repeat of a chomping mode identifier");else{if(!((s=48<=(a=o)&&a<=57?a-48:-1)>=0))break;0===s?C(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):c?C(e,"repeat of an indentation width identifier"):(h=t+s-1,c=!0)}if(w(o)){do{o=e.input.charCodeAt(++e.position)}while(w(o));if(35===o)do{o=e.input.charCodeAt(++e.position)}while(!m(o)&&0!==o)}for(;0!==o;){for(N(e),e.lineIndent=0,o=e.input.charCodeAt(e.position);(!c||e.lineIndent<h)&&32===o;)e.lineIndent++,o=e.input.charCodeAt(++e.position);if(!c&&e.lineIndent>h&&(h=e.lineIndent),m(o))d++;else{if(e.lineIndent<h){3===u?e.result+=r.repeat("\n",l?1+d:d):1===u&&l&&(e.result+="\n");break}for(i?w(o)?(p=!0,e.result+=r.repeat("\n",l?1+d:d)):p?(p=!1,e.result+=r.repeat("\n",d+1)):0===d?l&&(e.result+=" "):e.result+=r.repeat("\n",d):e.result+=r.repeat("\n",l?1+d:d),l=!0,c=!0,d=0,n=e.position;!m(o)&&0!==o;)o=e.input.charCodeAt(++e.position);R(e,n,e.position,!1)}}return!0}(e,p)||function(e,t){var n,r,i;if(39!==(n=e.input.charCodeAt(e.position)))return!1;for(e.kind="scalar",e.result="",e.position++,r=i=e.position;0!==(n=e.input.charCodeAt(e.position));)if(39===n){if(R(e,r,e.position,!0),39!==(n=e.input.charCodeAt(++e.position)))return!0;r=e.position,e.position++,i=e.position}else m(n)?(R(e,r,i,!0),L(e,F(e,!1,t)),r=i=e.position):e.position===e.lineStart&&P(e)?C(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);C(e,"unexpected end of the stream within a single quoted scalar")}(e,p)||function(e,t){var n,r,i,s,o,a,u;if(34!==(a=e.input.charCodeAt(e.position)))return!1;for(e.kind="scalar",e.result="",e.position++,n=r=e.position;0!==(a=e.input.charCodeAt(e.position));){if(34===a)return R(e,n,e.position,!0),e.position++,!0;if(92===a){if(R(e,n,e.position,!0),m(a=e.input.charCodeAt(++e.position)))F(e,!1,t);else if(a<256&&E[a])e.result+=A[a],e.position++;else if((o=120===(u=a)?2:117===u?4:85===u?8:0)>0){for(i=o,s=0;i>0;i--)(o=b(a=e.input.charCodeAt(++e.position)))>=0?s=(s<<4)+o:C(e,"expected hexadecimal character");e.result+=v(s),e.position++}else C(e,"unknown escape sequence");n=r=e.position}else m(a)?(R(e,n,r,!0),L(e,F(e,!1,t)),n=r=e.position):e.position===e.lineStart&&P(e)?C(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}C(e,"unexpected end of the stream within a double quoted scalar")}(e,p)?T=!0:!function(e){var t,n,r;if(42!==(r=e.input.charCodeAt(e.position)))return!1;for(r=e.input.charCodeAt(++e.position),t=e.position;0!==r&&!g(r)&&!_(r);)r=e.input.charCodeAt(++e.position);return e.position===t&&C(e,"name of an alias node must contain at least one character"),n=e.input.slice(t,e.position),e.anchorMap.hasOwnProperty(n)||C(e,'unidentified alias "'+n+'"'),e.result=e.anchorMap[n],F(e,!0,-1),!0}(e)?function(e,t,n){var r,i,s,o,a,u,l,c,h=e.kind,d=e.result;if(g(c=e.input.charCodeAt(e.position))||_(c)||35===c||38===c||42===c||33===c||124===c||62===c||39===c||34===c||37===c||64===c||96===c)return!1;if((63===c||45===c)&&(g(r=e.input.charCodeAt(e.position+1))||n&&_(r)))return!1;for(e.kind="scalar",e.result="",i=s=e.position,o=!1;0!==c;){if(58===c){if(g(r=e.input.charCodeAt(e.position+1))||n&&_(r))break}else if(35===c){if(g(e.input.charCodeAt(e.position-1)))break}else{if(e.position===e.lineStart&&P(e)||n&&_(c))break;if(m(c)){if(a=e.line,u=e.lineStart,l=e.lineIndent,F(e,!1,-1),e.lineIndent>=t){o=!0,c=e.input.charCodeAt(e.position);continue}e.position=s,e.line=a,e.lineStart=u,e.lineIndent=l;break}}o&&(R(e,i,s,!1),L(e,e.line-a),i=s=e.position,o=!1),w(c)||(s=e.position+1),c=e.input.charCodeAt(++e.position)}return R(e,i,s,!1),!!e.result||(e.kind=h,e.result=d,!1)}(e,p,1===n)&&(T=!0,null===e.tag&&(e.tag="?")):(T=!0,null===e.tag&&null===e.anchor||C(e,"alias node should not have any properties")),null!==e.anchor&&(e.anchorMap[e.anchor]=e.result)):0===y&&(T=l&&B(e,f))),null!==e.tag&&"!"!==e.tag)if("?"===e.tag){for(c=0,h=e.implicitTypes.length;c<h;c+=1)if((d=e.implicitTypes[c]).resolve(e.result)){e.result=d.construct(e.result),e.tag=d.tag,null!==e.anchor&&(e.anchorMap[e.anchor]=e.result);break}}else u.call(e.typeMap[e.kind||"fallback"],e.tag)?(d=e.typeMap[e.kind||"fallback"][e.tag],null!==e.result&&d.kind!==e.kind&&C(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+d.kind+'", not "'+e.kind+'"'),d.resolve(e.result)?(e.result=d.construct(e.result),null!==e.anchor&&(e.anchorMap[e.anchor]=e.result)):C(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")):C(e,"unknown tag !<"+e.tag+">");return null!==e.listener&&e.listener("close",e),null!==e.tag||null!==e.anchor||T}function j(e){var t,n,r,i,s=e.position,o=!1;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap={},e.anchorMap={};0!==(i=e.input.charCodeAt(e.position))&&(F(e,!0,-1),i=e.input.charCodeAt(e.position),!(e.lineIndent>0||37!==i));){for(o=!0,i=e.input.charCodeAt(++e.position),t=e.position;0!==i&&!g(i);)i=e.input.charCodeAt(++e.position);for(r=[],(n=e.input.slice(t,e.position)).length<1&&C(e,"directive name must not be less than one character in length");0!==i;){for(;w(i);)i=e.input.charCodeAt(++e.position);if(35===i){do{i=e.input.charCodeAt(++e.position)}while(0!==i&&!m(i));break}if(m(i))break;for(t=e.position;0!==i&&!g(i);)i=e.input.charCodeAt(++e.position);r.push(e.input.slice(t,e.position))}0!==i&&N(e),u.call(D,n)?D[n](e,n,r):k(e,'unknown document directive "'+n+'"')}F(e,!0,-1),0===e.lineIndent&&45===e.input.charCodeAt(e.position)&&45===e.input.charCodeAt(e.position+1)&&45===e.input.charCodeAt(e.position+2)?(e.position+=3,F(e,!0,-1)):o&&C(e,"directives end mark is expected"),W(e,e.lineIndent-1,4,!1,!0),F(e,!0,-1),e.checkLineBreaks&&c.test(e.input.slice(s,e.position))&&k(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&P(e)?46===e.input.charCodeAt(e.position)&&(e.position+=3,F(e,!0,-1)):e.position<e.length-1&&C(e,"end of the stream or a document separator is expected")}function z(e,t){t=t||{},0!==(e=String(e)).length&&(10!==e.charCodeAt(e.length-1)&&13!==e.charCodeAt(e.length-1)&&(e+="\n"),65279===e.charCodeAt(0)&&(e=e.slice(1)));var n=new T(e,t);for(n.input+="\0";32===n.input.charCodeAt(n.position);)n.lineIndent+=1,n.position+=1;for(;n.position<n.length-1;)j(n);return n.documents}function H(e,t,n){var r,i,s=z(e,n);if("function"!=typeof t)return s;for(r=0,i=s.length;r<i;r+=1)t(s[r])}function G(e,t){var n=z(e,t);if(0!==n.length){if(1===n.length)return n[0];throw new i("expected a single document in the stream, but found more")}}e.exports.loadAll=H,e.exports.load=G,e.exports.safeLoadAll=function(e,t,n){if("function"!=typeof t)return H(e,r.extend({schema:o},n));H(e,t,r.extend({schema:o},n))},e.exports.safeLoad=function(e,t){return G(e,r.extend({schema:o},t))}},function(e,t,n){"use strict";var r=n(15);function i(e,t,n,r,i){this.name=e,this.buffer=t,this.position=n,this.line=r,this.column=i}i.prototype.getSnippet=function(e,t){var n,i,s,o,a;if(!this.buffer)return null;for(e=e||4,t=t||75,n="",i=this.position;i>0&&-1==="\0\r\n
\u2028\u2029".indexOf(this.buffer.charAt(i-1));)if(i-=1,this.position-i>t/2-1){n=" ... ",i+=5;break}for(s="",o=this.position;o<this.buffer.length&&-1==="\0\r\n
\u2028\u2029".indexOf(this.buffer.charAt(o));)if((o+=1)-this.position>t/2-1){s=" ... ",o-=5;break}return a=this.buffer.slice(i,o),r.repeat(" ",e)+n+a+s+"\n"+r.repeat(" ",e+this.position-i+n.length)+"^"},i.prototype.toString=function(e){var t,n="";return this.name&&(n+='in "'+this.name+'" '),n+="at line "+(this.line+1)+", column "+(this.column+1),e||(t=this.getSnippet())&&(n+=":\n"+t),n},e.exports=i},function(e,t,n){"use strict";var r=n(2);e.exports=new r("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return null!==e?e:""}})},function(e,t,n){"use strict";var r=n(2);e.exports=new r("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return null!==e?e:[]}})},function(e,t,n){"use strict";var r=n(2);e.exports=new r("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return null!==e?e:{}}})},function(e,t,n){"use strict";var r=n(2);e.exports=new r("tag:yaml.org,2002:null",{kind:"scalar",resolve:function(e){if(null===e)return!0;var t=e.length;return 1===t&&"~"===e||4===t&&("null"===e||"Null"===e||"NULL"===e)},construct:function(){return null},predicate:function(e){return null===e},represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})},function(e,t,n){"use strict";var r=n(2);e.exports=new r("tag:yaml.org,2002:bool",{kind:"scalar",resolve:function(e){if(null===e)return!1;var t=e.length;return 4===t&&("true"===e||"True"===e||"TRUE"===e)||5===t&&("false"===e||"False"===e||"FALSE"===e)},construct:function(e){return"true"===e||"True"===e||"TRUE"===e},predicate:function(e){return"[object Boolean]"===Object.prototype.toString.call(e)},represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})},function(e,t,n){"use strict";var r=n(15),i=n(2);function s(e){return 48<=e&&e<=55}function o(e){return 48<=e&&e<=57}e.exports=new i("tag:yaml.org,2002:int",{kind:"scalar",resolve:function(e){if(null===e)return!1;var t,n,r=e.length,i=0,a=!1;if(!r)return!1;if("-"!==(t=e[i])&&"+"!==t||(t=e[++i]),"0"===t){if(i+1===r)return!0;if("b"===(t=e[++i])){for(i++;i<r;i++)if("_"!==(t=e[i])){if("0"!==t&&"1"!==t)return!1;a=!0}return a&&"_"!==t}if("x"===t){for(i++;i<r;i++)if("_"!==(t=e[i])){if(!(48<=(n=e.charCodeAt(i))&&n<=57||65<=n&&n<=70||97<=n&&n<=102))return!1;a=!0}return a&&"_"!==t}for(;i<r;i++)if("_"!==(t=e[i])){if(!s(e.charCodeAt(i)))return!1;a=!0}return a&&"_"!==t}if("_"===t)return!1;for(;i<r;i++)if("_"!==(t=e[i])){if(":"===t)break;if(!o(e.charCodeAt(i)))return!1;a=!0}return!(!a||"_"===t)&&(":"!==t||/^(:[0-5]?[0-9])+$/.test(e.slice(i)))},construct:function(e){var t,n,r=e,i=1,s=[];return-1!==r.indexOf("_")&&(r=r.replace(/_/g,"")),"-"!==(t=r[0])&&"+"!==t||("-"===t&&(i=-1),t=(r=r.slice(1))[0]),"0"===r?0:"0"===t?"b"===r[1]?i*parseInt(r.slice(2),2):"x"===r[1]?i*parseInt(r,16):i*parseInt(r,8):-1!==r.indexOf(":")?(r.split(":").forEach((function(e){s.unshift(parseInt(e,10))})),r=0,n=1,s.forEach((function(e){r+=e*n,n*=60})),i*r):i*parseInt(r,10)},predicate:function(e){return"[object Number]"===Object.prototype.toString.call(e)&&e%1==0&&!r.isNegativeZero(e)},represent:{binary:function(e){return e>=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0"+e.toString(8):"-0"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})},function(e,t,n){"use strict";var r=n(15),i=n(2),s=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");var o=/^[-+]?[0-9]+e/;e.exports=new i("tag:yaml.org,2002:float",{kind:"scalar",resolve:function(e){return null!==e&&!(!s.test(e)||"_"===e[e.length-1])},construct:function(e){var t,n,r,i;return n="-"===(t=e.replace(/_/g,"").toLowerCase())[0]?-1:1,i=[],"+-".indexOf(t[0])>=0&&(t=t.slice(1)),".inf"===t?1===n?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:".nan"===t?NaN:t.indexOf(":")>=0?(t.split(":").forEach((function(e){i.unshift(parseFloat(e,10))})),t=0,r=1,i.forEach((function(e){t+=e*r,r*=60})),n*t):n*parseFloat(t,10)},predicate:function(e){return"[object Number]"===Object.prototype.toString.call(e)&&(e%1!=0||r.isNegativeZero(e))},represent:function(e,t){var n;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(r.isNegativeZero(e))return"-0.0";return n=e.toString(10),o.test(n)?n.replace("e",".e"):n},defaultStyle:"lowercase"})},function(e,t,n){"use strict";var r=n(2),i=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),s=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");e.exports=new r("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:function(e){return null!==e&&(null!==i.exec(e)||null!==s.exec(e))},construct:function(e){var t,n,r,o,a,u,l,c,h=0,d=null;if(null===(t=i.exec(e))&&(t=s.exec(e)),null===t)throw new Error("Date resolve error");if(n=+t[1],r=+t[2]-1,o=+t[3],!t[4])return new Date(Date.UTC(n,r,o));if(a=+t[4],u=+t[5],l=+t[6],t[7]){for(h=t[7].slice(0,3);h.length<3;)h+="0";h=+h}return t[9]&&(d=6e4*(60*+t[10]+ +(t[11]||0)),"-"===t[9]&&(d=-d)),c=new Date(Date.UTC(n,r,o,a,u,l,h)),d&&c.setTime(c.getTime()-d),c},instanceOf:Date,represent:function(e){return e.toISOString()}})},function(e,t,n){"use strict";var r=n(2);e.exports=new r("tag:yaml.org,2002:merge",{kind:"scalar",resolve:function(e){return"<<"===e||null===e}})},function(e,t,n){"use strict";var r;try{r=n(3).Buffer}catch(e){}var i=n(2),s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r";e.exports=new i("tag:yaml.org,2002:binary",{kind:"scalar",resolve:function(e){if(null===e)return!1;var t,n,r=0,i=e.length,o=s;for(n=0;n<i;n++)if(!((t=o.indexOf(e.charAt(n)))>64)){if(t<0)return!1;r+=6}return r%8==0},construct:function(e){var t,n,i=e.replace(/[\r\n=]/g,""),o=i.length,a=s,u=0,l=[];for(t=0;t<o;t++)t%4==0&&t&&(l.push(u>>16&255),l.push(u>>8&255),l.push(255&u)),u=u<<6|a.indexOf(i.charAt(t));return 0===(n=o%4*6)?(l.push(u>>16&255),l.push(u>>8&255),l.push(255&u)):18===n?(l.push(u>>10&255),l.push(u>>2&255)):12===n&&l.push(u>>4&255),r?r.from?r.from(l):new r(l):l},predicate:function(e){return r&&r.isBuffer(e)},represent:function(e){var t,n,r="",i=0,o=e.length,a=s;for(t=0;t<o;t++)t%3==0&&t&&(r+=a[i>>18&63],r+=a[i>>12&63],r+=a[i>>6&63],r+=a[63&i]),i=(i<<8)+e[t];return 0===(n=o%3)?(r+=a[i>>18&63],r+=a[i>>12&63],r+=a[i>>6&63],r+=a[63&i]):2===n?(r+=a[i>>10&63],r+=a[i>>4&63],r+=a[i<<2&63],r+=a[64]):1===n&&(r+=a[i>>2&63],r+=a[i<<4&63],r+=a[64],r+=a[64]),r}})},function(e,t,n){"use strict";var r=n(2),i=Object.prototype.hasOwnProperty,s=Object.prototype.toString;e.exports=new r("tag:yaml.org,2002:omap",{kind:"sequence",resolve:function(e){if(null===e)return!0;var t,n,r,o,a,u=[],l=e;for(t=0,n=l.length;t<n;t+=1){if(r=l[t],a=!1,"[object Object]"!==s.call(r))return!1;for(o in r)if(i.call(r,o)){if(a)return!1;a=!0}if(!a)return!1;if(-1!==u.indexOf(o))return!1;u.push(o)}return!0},construct:function(e){return null!==e?e:[]}})},function(e,t,n){"use strict";var r=n(2),i=Object.prototype.toString;e.exports=new r("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:function(e){if(null===e)return!0;var t,n,r,s,o,a=e;for(o=new Array(a.length),t=0,n=a.length;t<n;t+=1){if(r=a[t],"[object Object]"!==i.call(r))return!1;if(1!==(s=Object.keys(r)).length)return!1;o[t]=[s[0],r[s[0]]]}return!0},construct:function(e){if(null===e)return[];var t,n,r,i,s,o=e;for(s=new Array(o.length),t=0,n=o.length;t<n;t+=1)r=o[t],i=Object.keys(r),s[t]=[i[0],r[i[0]]];return s}})},function(e,t,n){"use strict";var r=n(2),i=Object.prototype.hasOwnProperty;e.exports=new r("tag:yaml.org,2002:set",{kind:"mapping",resolve:function(e){if(null===e)return!0;var t,n=e;for(t in n)if(i.call(n,t)&&null!==n[t])return!1;return!0},construct:function(e){return null!==e?e:{}}})},function(e,t,n){"use strict";var r=n(2);e.exports=new r("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:function(){return!0},construct:function(){},predicate:function(e){return void 0===e},represent:function(){return""}})},function(e,t,n){"use strict";var r=n(2);e.exports=new r("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:function(e){if(null===e)return!1;if(0===e.length)return!1;var t=e,n=/\/([gim]*)$/.exec(e),r="";if("/"===t[0]){if(n&&(r=n[1]),r.length>3)return!1;if("/"!==t[t.length-r.length-1])return!1}return!0},construct:function(e){var t=e,n=/\/([gim]*)$/.exec(e),r="";return"/"===t[0]&&(n&&(r=n[1]),t=t.slice(1,t.length-r.length-1)),new RegExp(t,r)},predicate:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},represent:function(e){var t="/"+e.source+"/";return e.global&&(t+="g"),e.multiline&&(t+="m"),e.ignoreCase&&(t+="i"),t}})},function(e,t,n){"use strict";var r;try{r=n(202)}catch(e){"undefined"!=typeof window&&(r=window.esprima)}var i=n(2);e.exports=new i("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:function(e){if(null===e)return!1;try{var t="("+e+")",n=r.parse(t,{range:!0});return"Program"===n.type&&1===n.body.length&&"ExpressionStatement"===n.body[0].type&&("ArrowFunctionExpression"===n.body[0].expression.type||"FunctionExpression"===n.body[0].expression.type)}catch(e){return!1}},construct:function(e){var t,n="("+e+")",i=r.parse(n,{range:!0}),s=[];if("Program"!==i.type||1!==i.body.length||"ExpressionStatement"!==i.body[0].type||"ArrowFunctionExpression"!==i.body[0].expression.type&&"FunctionExpression"!==i.body[0].expression.type)throw new Error("Failed to resolve function");return i.body[0].expression.params.forEach((function(e){s.push(e.name)})),t=i.body[0].expression.body.range,"BlockStatement"===i.body[0].expression.body.type?new Function(s,n.slice(t[0]+1,t[1]-1)):new Function(s,"return "+n.slice(t[0],t[1]))},predicate:function(e){return"[object Function]"===Object.prototype.toString.call(e)},represent:function(e){return e.toString()}})},function(e,t,n){var r;r=function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={exports:{},id:r,loaded:!1};return e[r].call(i.exports,i,i.exports,n),i.loaded=!0,i.exports}return n.m=e,n.c=t,n.p="",n(0)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=n(3),s=n(8),o=n(15);function a(e,t,n){var o=null,a=function(e,t){n&&n(e,t),o&&o.visit(e,t)},u="function"==typeof n?a:null,l=!1;if(t){l="boolean"==typeof t.comment&&t.comment;var c="boolean"==typeof t.attachComment&&t.attachComment;(l||c)&&((o=new r.CommentHandler).attach=c,t.comment=!0,u=a)}var h,d=!1;t&&"string"==typeof t.sourceType&&(d="module"===t.sourceType),h=t&&"boolean"==typeof t.jsx&&t.jsx?new i.JSXParser(e,t,u):new s.Parser(e,t,u);var p=d?h.parseModule():h.parseScript();return l&&o&&(p.comments=o.comments),h.config.tokens&&(p.tokens=h.tokens),h.config.tolerant&&(p.errors=h.errorHandler.errors),p}t.parse=a,t.parseModule=function(e,t,n){var r=t||{};return r.sourceType="module",a(e,r,n)},t.parseScript=function(e,t,n){var r=t||{};return r.sourceType="script",a(e,r,n)},t.tokenize=function(e,t,n){var r,i=new o.Tokenizer(e,t);r=[];try{for(;;){var s=i.getNextToken();if(!s)break;n&&(s=n(s)),r.push(s)}}catch(e){i.errorHandler.tolerate(e)}return i.errorHandler.tolerant&&(r.errors=i.errors()),r};var u=n(2);t.Syntax=u.Syntax,t.version="4.0.1"},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=function(){function e(){this.attach=!1,this.comments=[],this.stack=[],this.leading=[],this.trailing=[]}return e.prototype.insertInnerComments=function(e,t){if(e.type===r.Syntax.BlockStatement&&0===e.body.length){for(var n=[],i=this.leading.length-1;i>=0;--i){var s=this.leading[i];t.end.offset>=s.start&&(n.unshift(s.comment),this.leading.splice(i,1),this.trailing.splice(i,1))}n.length&&(e.innerComments=n)}},e.prototype.findTrailingComments=function(e){var t=[];if(this.trailing.length>0){for(var n=this.trailing.length-1;n>=0;--n){var r=this.trailing[n];r.start>=e.end.offset&&t.unshift(r.comment)}return this.trailing.length=0,t}var i=this.stack[this.stack.length-1];if(i&&i.node.trailingComments){var s=i.node.trailingComments[0];s&&s.range[0]>=e.end.offset&&(t=i.node.trailingComments,delete i.node.trailingComments)}return t},e.prototype.findLeadingComments=function(e){for(var t,n=[];this.stack.length>0&&((s=this.stack[this.stack.length-1])&&s.start>=e.start.offset);)t=s.node,this.stack.pop();if(t){for(var r=(t.leadingComments?t.leadingComments.length:0)-1;r>=0;--r){var i=t.leadingComments[r];i.range[1]<=e.start.offset&&(n.unshift(i),t.leadingComments.splice(r,1))}return t.leadingComments&&0===t.leadingComments.length&&delete t.leadingComments,n}for(r=this.leading.length-1;r>=0;--r){var s;(s=this.leading[r]).start<=e.start.offset&&(n.unshift(s.comment),this.leading.splice(r,1))}return n},e.prototype.visitNode=function(e,t){if(!(e.type===r.Syntax.Program&&e.body.length>0)){this.insertInnerComments(e,t);var n=this.findTrailingComments(t),i=this.findLeadingComments(t);i.length>0&&(e.leadingComments=i),n.length>0&&(e.trailingComments=n),this.stack.push({node:e,start:t.start.offset})}},e.prototype.visitComment=function(e,t){var n="L"===e.type[0]?"Line":"Block",r={type:n,value:e.value};if(e.range&&(r.range=e.range),e.loc&&(r.loc=e.loc),this.comments.push(r),this.attach){var i={comment:{type:n,value:e.value,range:[t.start.offset,t.end.offset]},start:t.start.offset};e.loc&&(i.comment.loc=e.loc),e.type=n,this.leading.push(i),this.trailing.push(i)}},e.prototype.visit=function(e,t){"LineComment"===e.type||"BlockComment"===e.type?this.visitComment(e,t):this.attach&&this.visitNode(e,t)},e}();t.CommentHandler=i},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Syntax={AssignmentExpression:"AssignmentExpression",AssignmentPattern:"AssignmentPattern",ArrayExpression:"ArrayExpression",ArrayPattern:"ArrayPattern",ArrowFunctionExpression:"ArrowFunctionExpression",AwaitExpression:"AwaitExpression",BlockStatement:"BlockStatement",BinaryExpression:"BinaryExpression",BreakStatement:"BreakStatement",CallExpression:"CallExpression",CatchClause:"CatchClause",ClassBody:"ClassBody",ClassDeclaration:"ClassDeclaration",ClassExpression:"ClassExpression",ConditionalExpression:"ConditionalExpression",ContinueStatement:"ContinueStatement",DoWhileStatement:"DoWhileStatement",DebuggerStatement:"DebuggerStatement",EmptyStatement:"EmptyStatement",ExportAllDeclaration:"ExportAllDeclaration",ExportDefaultDeclaration:"ExportDefaultDeclaration",ExportNamedDeclaration:"ExportNamedDeclaration",ExportSpecifier:"ExportSpecifier",ExpressionStatement:"ExpressionStatement",ForStatement:"ForStatement",ForOfStatement:"ForOfStatement",ForInStatement:"ForInStatement",FunctionDeclaration:"FunctionDeclaration",FunctionExpression:"FunctionExpression",Identifier:"Identifier",IfStatement:"IfStatement",ImportDeclaration:"ImportDeclaration",ImportDefaultSpecifier:"ImportDefaultSpecifier",ImportNamespaceSpecifier:"ImportNamespaceSpecifier",ImportSpecifier:"ImportSpecifier",Literal:"Literal",LabeledStatement:"LabeledStatement",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",MetaProperty:"MetaProperty",MethodDefinition:"MethodDefinition",NewExpression:"NewExpression",ObjectExpression:"ObjectExpression",ObjectPattern:"ObjectPattern",Program:"Program",Property:"Property",RestElement:"RestElement",ReturnStatement:"ReturnStatement",SequenceExpression:"SequenceExpression",SpreadElement:"SpreadElement",Super:"Super",SwitchCase:"SwitchCase",SwitchStatement:"SwitchStatement",TaggedTemplateExpression:"TaggedTemplateExpression",TemplateElement:"TemplateElement",TemplateLiteral:"TemplateLiteral",ThisExpression:"ThisExpression",ThrowStatement:"ThrowStatement",TryStatement:"TryStatement",UnaryExpression:"UnaryExpression",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator",WhileStatement:"WhileStatement",WithStatement:"WithStatement",YieldExpression:"YieldExpression"}},function(e,t,n){"use strict";var r,i=this&&this.__extends||(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])},function(e,t){function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)});Object.defineProperty(t,"__esModule",{value:!0});var s=n(4),o=n(5),a=n(6),u=n(7),l=n(8),c=n(13),h=n(14);function d(e){var t;switch(e.type){case a.JSXSyntax.JSXIdentifier:t=e.name;break;case a.JSXSyntax.JSXNamespacedName:var n=e;t=d(n.namespace)+":"+d(n.name);break;case a.JSXSyntax.JSXMemberExpression:var r=e;t=d(r.object)+"."+d(r.property)}return t}c.TokenName[100]="JSXIdentifier",c.TokenName[101]="JSXText";var p=function(e){function t(t,n,r){return e.call(this,t,n,r)||this}return i(t,e),t.prototype.parsePrimaryExpression=function(){return this.match("<")?this.parseJSXRoot():e.prototype.parsePrimaryExpression.call(this)},t.prototype.startJSX=function(){this.scanner.index=this.startMarker.index,this.scanner.lineNumber=this.startMarker.line,this.scanner.lineStart=this.startMarker.index-this.startMarker.column},t.prototype.finishJSX=function(){this.nextToken()},t.prototype.reenterJSX=function(){this.startJSX(),this.expectJSX("}"),this.config.tokens&&this.tokens.pop()},t.prototype.createJSXNode=function(){return this.collectComments(),{index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}},t.prototype.createJSXChildNode=function(){return{index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}},t.prototype.scanXHTMLEntity=function(e){for(var t="&",n=!0,r=!1,i=!1,o=!1;!this.scanner.eof()&&n&&!r;){var a=this.scanner.source[this.scanner.index];if(a===e)break;if(r=";"===a,t+=a,++this.scanner.index,!r)switch(t.length){case 2:i="#"===a;break;case 3:i&&(n=(o="x"===a)||s.Character.isDecimalDigit(a.charCodeAt(0)),i=i&&!o);break;default:n=(n=n&&!(i&&!s.Character.isDecimalDigit(a.charCodeAt(0))))&&!(o&&!s.Character.isHexDigit(a.charCodeAt(0)))}}if(n&&r&&t.length>2){var u=t.substr(1,t.length-2);i&&u.length>1?t=String.fromCharCode(parseInt(u.substr(1),10)):o&&u.length>2?t=String.fromCharCode(parseInt("0"+u.substr(1),16)):i||o||!h.XHTMLEntities[u]||(t=h.XHTMLEntities[u])}return t},t.prototype.lexJSX=function(){var e=this.scanner.source.charCodeAt(this.scanner.index);if(60===e||62===e||47===e||58===e||61===e||123===e||125===e)return{type:7,value:a=this.scanner.source[this.scanner.index++],lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:this.scanner.index-1,end:this.scanner.index};if(34===e||39===e){for(var t=this.scanner.index,n=this.scanner.source[this.scanner.index++],r="";!this.scanner.eof()&&(u=this.scanner.source[this.scanner.index++])!==n;)r+="&"===u?this.scanXHTMLEntity(n):u;return{type:8,value:r,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:t,end:this.scanner.index}}if(46===e){var i=this.scanner.source.charCodeAt(this.scanner.index+1),o=this.scanner.source.charCodeAt(this.scanner.index+2),a=46===i&&46===o?"...":".";return t=this.scanner.index,this.scanner.index+=a.length,{type:7,value:a,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:t,end:this.scanner.index}}if(96===e)return{type:10,value:"",lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:this.scanner.index,end:this.scanner.index};if(s.Character.isIdentifierStart(e)&&92!==e){for(t=this.scanner.index,++this.scanner.index;!this.scanner.eof();){var u=this.scanner.source.charCodeAt(this.scanner.index);if(s.Character.isIdentifierPart(u)&&92!==u)++this.scanner.index;else{if(45!==u)break;++this.scanner.index}}return{type:100,value:this.scanner.source.slice(t,this.scanner.index),lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:t,end:this.scanner.index}}return this.scanner.lex()},t.prototype.nextJSXToken=function(){this.collectComments(),this.startMarker.index=this.scanner.index,this.startMarker.line=this.scanner.lineNumber,this.startMarker.column=this.scanner.index-this.scanner.lineStart;var e=this.lexJSX();return this.lastMarker.index=this.scanner.index,this.lastMarker.line=this.scanner.lineNumber,this.lastMarker.column=this.scanner.index-this.scanner.lineStart,this.config.tokens&&this.tokens.push(this.convertToken(e)),e},t.prototype.nextJSXText=function(){this.startMarker.index=this.scanner.index,this.startMarker.line=this.scanner.lineNumber,this.startMarker.column=this.scanner.index-this.scanner.lineStart;for(var e=this.scanner.index,t="";!this.scanner.eof();){var n=this.scanner.source[this.scanner.index];if("{"===n||"<"===n)break;++this.scanner.index,t+=n,s.Character.isLineTerminator(n.charCodeAt(0))&&(++this.scanner.lineNumber,"\r"===n&&"\n"===this.scanner.source[this.scanner.index]&&++this.scanner.index,this.scanner.lineStart=this.scanner.index)}this.lastMarker.index=this.scanner.index,this.lastMarker.line=this.scanner.lineNumber,this.lastMarker.column=this.scanner.index-this.scanner.lineStart;var r={type:101,value:t,lineNumber:this.scanner.lineNumber,lineStart:this.scanner.lineStart,start:e,end:this.scanner.index};return t.length>0&&this.config.tokens&&this.tokens.push(this.convertToken(r)),r},t.prototype.peekJSXToken=function(){var e=this.scanner.saveState();this.scanner.scanComments();var t=this.lexJSX();return this.scanner.restoreState(e),t},t.prototype.expectJSX=function(e){var t=this.nextJSXToken();7===t.type&&t.value===e||this.throwUnexpectedToken(t)},t.prototype.matchJSX=function(e){var t=this.peekJSXToken();return 7===t.type&&t.value===e},t.prototype.parseJSXIdentifier=function(){var e=this.createJSXNode(),t=this.nextJSXToken();return 100!==t.type&&this.throwUnexpectedToken(t),this.finalize(e,new o.JSXIdentifier(t.value))},t.prototype.parseJSXElementName=function(){var e=this.createJSXNode(),t=this.parseJSXIdentifier();if(this.matchJSX(":")){var n=t;this.expectJSX(":");var r=this.parseJSXIdentifier();t=this.finalize(e,new o.JSXNamespacedName(n,r))}else if(this.matchJSX("."))for(;this.matchJSX(".");){var i=t;this.expectJSX(".");var s=this.parseJSXIdentifier();t=this.finalize(e,new o.JSXMemberExpression(i,s))}return t},t.prototype.parseJSXAttributeName=function(){var e,t=this.createJSXNode(),n=this.parseJSXIdentifier();if(this.matchJSX(":")){var r=n;this.expectJSX(":");var i=this.parseJSXIdentifier();e=this.finalize(t,new o.JSXNamespacedName(r,i))}else e=n;return e},t.prototype.parseJSXStringLiteralAttribute=function(){var e=this.createJSXNode(),t=this.nextJSXToken();8!==t.type&&this.throwUnexpectedToken(t);var n=this.getTokenRaw(t);return this.finalize(e,new u.Literal(t.value,n))},t.prototype.parseJSXExpressionAttribute=function(){var e=this.createJSXNode();this.expectJSX("{"),this.finishJSX(),this.match("}")&&this.tolerateError("JSX attributes must only be assigned a non-empty expression");var t=this.parseAssignmentExpression();return this.reenterJSX(),this.finalize(e,new o.JSXExpressionContainer(t))},t.prototype.parseJSXAttributeValue=function(){return this.matchJSX("{")?this.parseJSXExpressionAttribute():this.matchJSX("<")?this.parseJSXElement():this.parseJSXStringLiteralAttribute()},t.prototype.parseJSXNameValueAttribute=function(){var e=this.createJSXNode(),t=this.parseJSXAttributeName(),n=null;return this.matchJSX("=")&&(this.expectJSX("="),n=this.parseJSXAttributeValue()),this.finalize(e,new o.JSXAttribute(t,n))},t.prototype.parseJSXSpreadAttribute=function(){var e=this.createJSXNode();this.expectJSX("{"),this.expectJSX("..."),this.finishJSX();var t=this.parseAssignmentExpression();return this.reenterJSX(),this.finalize(e,new o.JSXSpreadAttribute(t))},t.prototype.parseJSXAttributes=function(){for(var e=[];!this.matchJSX("/")&&!this.matchJSX(">");){var t=this.matchJSX("{")?this.parseJSXSpreadAttribute():this.parseJSXNameValueAttribute();e.push(t)}return e},t.prototype.parseJSXOpeningElement=function(){var e=this.createJSXNode();this.expectJSX("<");var t=this.parseJSXElementName(),n=this.parseJSXAttributes(),r=this.matchJSX("/");return r&&this.expectJSX("/"),this.expectJSX(">"),this.finalize(e,new o.JSXOpeningElement(t,r,n))},t.prototype.parseJSXBoundaryElement=function(){var e=this.createJSXNode();if(this.expectJSX("<"),this.matchJSX("/")){this.expectJSX("/");var t=this.parseJSXElementName();return this.expectJSX(">"),this.finalize(e,new o.JSXClosingElement(t))}var n=this.parseJSXElementName(),r=this.parseJSXAttributes(),i=this.matchJSX("/");return i&&this.expectJSX("/"),this.expectJSX(">"),this.finalize(e,new o.JSXOpeningElement(n,i,r))},t.prototype.parseJSXEmptyExpression=function(){var e=this.createJSXChildNode();return this.collectComments(),this.lastMarker.index=this.scanner.index,this.lastMarker.line=this.scanner.lineNumber,this.lastMarker.column=this.scanner.index-this.scanner.lineStart,this.finalize(e,new o.JSXEmptyExpression)},t.prototype.parseJSXExpressionContainer=function(){var e,t=this.createJSXNode();return this.expectJSX("{"),this.matchJSX("}")?(e=this.parseJSXEmptyExpression(),this.expectJSX("}")):(this.finishJSX(),e=this.parseAssignmentExpression(),this.reenterJSX()),this.finalize(t,new o.JSXExpressionContainer(e))},t.prototype.parseJSXChildren=function(){for(var e=[];!this.scanner.eof();){var t=this.createJSXChildNode(),n=this.nextJSXText();if(n.start<n.end){var r=this.getTokenRaw(n),i=this.finalize(t,new o.JSXText(n.value,r));e.push(i)}if("{"!==this.scanner.source[this.scanner.index])break;var s=this.parseJSXExpressionContainer();e.push(s)}return e},t.prototype.parseComplexJSXElement=function(e){for(var t=[];!this.scanner.eof();){e.children=e.children.concat(this.parseJSXChildren());var n=this.createJSXChildNode(),r=this.parseJSXBoundaryElement();if(r.type===a.JSXSyntax.JSXOpeningElement){var i=r;if(i.selfClosing){var s=this.finalize(n,new o.JSXElement(i,[],null));e.children.push(s)}else t.push(e),e={node:n,opening:i,closing:null,children:[]}}if(r.type===a.JSXSyntax.JSXClosingElement){e.closing=r;var u=d(e.opening.name);if(u!==d(e.closing.name)&&this.tolerateError("Expected corresponding JSX closing tag for %0",u),!(t.length>0))break;s=this.finalize(e.node,new o.JSXElement(e.opening,e.children,e.closing)),(e=t[t.length-1]).children.push(s),t.pop()}}return e},t.prototype.parseJSXElement=function(){var e=this.createJSXNode(),t=this.parseJSXOpeningElement(),n=[],r=null;if(!t.selfClosing){var i=this.parseComplexJSXElement({node:e,opening:t,closing:r,children:n});n=i.children,r=i.closing}return this.finalize(e,new o.JSXElement(t,n,r))},t.prototype.parseJSXRoot=function(){this.config.tokens&&this.tokens.pop(),this.startJSX();var e=this.parseJSXElement();return this.finishJSX(),e},t.prototype.isStartOfExpression=function(){return e.prototype.isStartOfExpression.call(this)||this.match("<")},t}(l.Parser);t.JSXParser=p},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n={NonAsciiIdentifierStart:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]/,NonAsciiIdentifierPart:/[\xAA\xB5\xB7\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u08A0-\u08B4\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D01-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1369-\u1371\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1CD0-\u1CD2\u1CD4-\u1CF6\u1CF8\u1CF9\u1D00-\u1DF5\u1DFC-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u200C\u200D\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C4\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF30-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDEC0-\uDEF8]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F]|\uD82C[\uDC00\uDC01]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/};t.Character={fromCodePoint:function(e){return e<65536?String.fromCharCode(e):String.fromCharCode(55296+(e-65536>>10))+String.fromCharCode(56320+(e-65536&1023))},isWhiteSpace:function(e){return 32===e||9===e||11===e||12===e||160===e||e>=5760&&[5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].indexOf(e)>=0},isLineTerminator:function(e){return 10===e||13===e||8232===e||8233===e},isIdentifierStart:function(e){return 36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||92===e||e>=128&&n.NonAsciiIdentifierStart.test(t.Character.fromCodePoint(e))},isIdentifierPart:function(e){return 36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||92===e||e>=128&&n.NonAsciiIdentifierPart.test(t.Character.fromCodePoint(e))},isDecimalDigit:function(e){return e>=48&&e<=57},isHexDigit:function(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102},isOctalDigit:function(e){return e>=48&&e<=55}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(6),i=function(e){this.type=r.JSXSyntax.JSXClosingElement,this.name=e};t.JSXClosingElement=i;var s=function(e,t,n){this.type=r.JSXSyntax.JSXElement,this.openingElement=e,this.children=t,this.closingElement=n};t.JSXElement=s;var o=function(){this.type=r.JSXSyntax.JSXEmptyExpression};t.JSXEmptyExpression=o;var a=function(e){this.type=r.JSXSyntax.JSXExpressionContainer,this.expression=e};t.JSXExpressionContainer=a;var u=function(e){this.type=r.JSXSyntax.JSXIdentifier,this.name=e};t.JSXIdentifier=u;var l=function(e,t){this.type=r.JSXSyntax.JSXMemberExpression,this.object=e,this.property=t};t.JSXMemberExpression=l;var c=function(e,t){this.type=r.JSXSyntax.JSXAttribute,this.name=e,this.value=t};t.JSXAttribute=c;var h=function(e,t){this.type=r.JSXSyntax.JSXNamespacedName,this.namespace=e,this.name=t};t.JSXNamespacedName=h;var d=function(e,t,n){this.type=r.JSXSyntax.JSXOpeningElement,this.name=e,this.selfClosing=t,this.attributes=n};t.JSXOpeningElement=d;var p=function(e){this.type=r.JSXSyntax.JSXSpreadAttribute,this.argument=e};t.JSXSpreadAttribute=p;var f=function(e,t){this.type=r.JSXSyntax.JSXText,this.value=e,this.raw=t};t.JSXText=f},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.JSXSyntax={JSXAttribute:"JSXAttribute",JSXClosingElement:"JSXClosingElement",JSXElement:"JSXElement",JSXEmptyExpression:"JSXEmptyExpression",JSXExpressionContainer:"JSXExpressionContainer",JSXIdentifier:"JSXIdentifier",JSXMemberExpression:"JSXMemberExpression",JSXNamespacedName:"JSXNamespacedName",JSXOpeningElement:"JSXOpeningElement",JSXSpreadAttribute:"JSXSpreadAttribute",JSXText:"JSXText"}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=function(e){this.type=r.Syntax.ArrayExpression,this.elements=e};t.ArrayExpression=i;var s=function(e){this.type=r.Syntax.ArrayPattern,this.elements=e};t.ArrayPattern=s;var o=function(e,t,n){this.type=r.Syntax.ArrowFunctionExpression,this.id=null,this.params=e,this.body=t,this.generator=!1,this.expression=n,this.async=!1};t.ArrowFunctionExpression=o;var a=function(e,t,n){this.type=r.Syntax.AssignmentExpression,this.operator=e,this.left=t,this.right=n};t.AssignmentExpression=a;var u=function(e,t){this.type=r.Syntax.AssignmentPattern,this.left=e,this.right=t};t.AssignmentPattern=u;var l=function(e,t,n){this.type=r.Syntax.ArrowFunctionExpression,this.id=null,this.params=e,this.body=t,this.generator=!1,this.expression=n,this.async=!0};t.AsyncArrowFunctionExpression=l;var c=function(e,t,n){this.type=r.Syntax.FunctionDeclaration,this.id=e,this.params=t,this.body=n,this.generator=!1,this.expression=!1,this.async=!0};t.AsyncFunctionDeclaration=c;var h=function(e,t,n){this.type=r.Syntax.FunctionExpression,this.id=e,this.params=t,this.body=n,this.generator=!1,this.expression=!1,this.async=!0};t.AsyncFunctionExpression=h;var d=function(e){this.type=r.Syntax.AwaitExpression,this.argument=e};t.AwaitExpression=d;var p=function(e,t,n){var i="||"===e||"&&"===e;this.type=i?r.Syntax.LogicalExpression:r.Syntax.BinaryExpression,this.operator=e,this.left=t,this.right=n};t.BinaryExpression=p;var f=function(e){this.type=r.Syntax.BlockStatement,this.body=e};t.BlockStatement=f;var m=function(e){this.type=r.Syntax.BreakStatement,this.label=e};t.BreakStatement=m;var w=function(e,t){this.type=r.Syntax.CallExpression,this.callee=e,this.arguments=t};t.CallExpression=w;var g=function(e,t){this.type=r.Syntax.CatchClause,this.param=e,this.body=t};t.CatchClause=g;var _=function(e){this.type=r.Syntax.ClassBody,this.body=e};t.ClassBody=_;var b=function(e,t,n){this.type=r.Syntax.ClassDeclaration,this.id=e,this.superClass=t,this.body=n};t.ClassDeclaration=b;var y=function(e,t,n){this.type=r.Syntax.ClassExpression,this.id=e,this.superClass=t,this.body=n};t.ClassExpression=y;var v=function(e,t){this.type=r.Syntax.MemberExpression,this.computed=!0,this.object=e,this.property=t};t.ComputedMemberExpression=v;var E=function(e,t,n){this.type=r.Syntax.ConditionalExpression,this.test=e,this.consequent=t,this.alternate=n};t.ConditionalExpression=E;var A=function(e){this.type=r.Syntax.ContinueStatement,this.label=e};t.ContinueStatement=A;var x=function(){this.type=r.Syntax.DebuggerStatement};t.DebuggerStatement=x;var T=function(e,t){this.type=r.Syntax.ExpressionStatement,this.expression=e,this.directive=t};t.Directive=T;var S=function(e,t){this.type=r.Syntax.DoWhileStatement,this.body=e,this.test=t};t.DoWhileStatement=S;var C=function(){this.type=r.Syntax.EmptyStatement};t.EmptyStatement=C;var k=function(e){this.type=r.Syntax.ExportAllDeclaration,this.source=e};t.ExportAllDeclaration=k;var D=function(e){this.type=r.Syntax.ExportDefaultDeclaration,this.declaration=e};t.ExportDefaultDeclaration=D;var R=function(e,t,n){this.type=r.Syntax.ExportNamedDeclaration,this.declaration=e,this.specifiers=t,this.source=n};t.ExportNamedDeclaration=R;var O=function(e,t){this.type=r.Syntax.ExportSpecifier,this.exported=t,this.local=e};t.ExportSpecifier=O;var I=function(e){this.type=r.Syntax.ExpressionStatement,this.expression=e};t.ExpressionStatement=I;var N=function(e,t,n){this.type=r.Syntax.ForInStatement,this.left=e,this.right=t,this.body=n,this.each=!1};t.ForInStatement=N;var F=function(e,t,n){this.type=r.Syntax.ForOfStatement,this.left=e,this.right=t,this.body=n};t.ForOfStatement=F;var P=function(e,t,n,i){this.type=r.Syntax.ForStatement,this.init=e,this.test=t,this.update=n,this.body=i};t.ForStatement=P;var L=function(e,t,n,i){this.type=r.Syntax.FunctionDeclaration,this.id=e,this.params=t,this.body=n,this.generator=i,this.expression=!1,this.async=!1};t.FunctionDeclaration=L;var B=function(e,t,n,i){this.type=r.Syntax.FunctionExpression,this.id=e,this.params=t,this.body=n,this.generator=i,this.expression=!1,this.async=!1};t.FunctionExpression=B;var U=function(e){this.type=r.Syntax.Identifier,this.name=e};t.Identifier=U;var M=function(e,t,n){this.type=r.Syntax.IfStatement,this.test=e,this.consequent=t,this.alternate=n};t.IfStatement=M;var W=function(e,t){this.type=r.Syntax.ImportDeclaration,this.specifiers=e,this.source=t};t.ImportDeclaration=W;var j=function(e){this.type=r.Syntax.ImportDefaultSpecifier,this.local=e};t.ImportDefaultSpecifier=j;var z=function(e){this.type=r.Syntax.ImportNamespaceSpecifier,this.local=e};t.ImportNamespaceSpecifier=z;var H=function(e,t){this.type=r.Syntax.ImportSpecifier,this.local=e,this.imported=t};t.ImportSpecifier=H;var G=function(e,t){this.type=r.Syntax.LabeledStatement,this.label=e,this.body=t};t.LabeledStatement=G;var q=function(e,t){this.type=r.Syntax.Literal,this.value=e,this.raw=t};t.Literal=q;var V=function(e,t){this.type=r.Syntax.MetaProperty,this.meta=e,this.property=t};t.MetaProperty=V;var X=function(e,t,n,i,s){this.type=r.Syntax.MethodDefinition,this.key=e,this.computed=t,this.value=n,this.kind=i,this.static=s};t.MethodDefinition=X;var K=function(e){this.type=r.Syntax.Program,this.body=e,this.sourceType="module"};t.Module=K;var Y=function(e,t){this.type=r.Syntax.NewExpression,this.callee=e,this.arguments=t};t.NewExpression=Y;var J=function(e){this.type=r.Syntax.ObjectExpression,this.properties=e};t.ObjectExpression=J;var Z=function(e){this.type=r.Syntax.ObjectPattern,this.properties=e};t.ObjectPattern=Z;var Q=function(e,t,n,i,s,o){this.type=r.Syntax.Property,this.key=t,this.computed=n,this.value=i,this.kind=e,this.method=s,this.shorthand=o};t.Property=Q;var $=function(e,t,n,i){this.type=r.Syntax.Literal,this.value=e,this.raw=t,this.regex={pattern:n,flags:i}};t.RegexLiteral=$;var ee=function(e){this.type=r.Syntax.RestElement,this.argument=e};t.RestElement=ee;var te=function(e){this.type=r.Syntax.ReturnStatement,this.argument=e};t.ReturnStatement=te;var ne=function(e){this.type=r.Syntax.Program,this.body=e,this.sourceType="script"};t.Script=ne;var re=function(e){this.type=r.Syntax.SequenceExpression,this.expressions=e};t.SequenceExpression=re;var ie=function(e){this.type=r.Syntax.SpreadElement,this.argument=e};t.SpreadElement=ie;var se=function(e,t){this.type=r.Syntax.MemberExpression,this.computed=!1,this.object=e,this.property=t};t.StaticMemberExpression=se;var oe=function(){this.type=r.Syntax.Super};t.Super=oe;var ae=function(e,t){this.type=r.Syntax.SwitchCase,this.test=e,this.consequent=t};t.SwitchCase=ae;var ue=function(e,t){this.type=r.Syntax.SwitchStatement,this.discriminant=e,this.cases=t};t.SwitchStatement=ue;var le=function(e,t){this.type=r.Syntax.TaggedTemplateExpression,this.tag=e,this.quasi=t};t.TaggedTemplateExpression=le;var ce=function(e,t){this.type=r.Syntax.TemplateElement,this.value=e,this.tail=t};t.TemplateElement=ce;var he=function(e,t){this.type=r.Syntax.TemplateLiteral,this.quasis=e,this.expressions=t};t.TemplateLiteral=he;var de=function(){this.type=r.Syntax.ThisExpression};t.ThisExpression=de;var pe=function(e){this.type=r.Syntax.ThrowStatement,this.argument=e};t.ThrowStatement=pe;var fe=function(e,t,n){this.type=r.Syntax.TryStatement,this.block=e,this.handler=t,this.finalizer=n};t.TryStatement=fe;var me=function(e,t){this.type=r.Syntax.UnaryExpression,this.operator=e,this.argument=t,this.prefix=!0};t.UnaryExpression=me;var we=function(e,t,n){this.type=r.Syntax.UpdateExpression,this.operator=e,this.argument=t,this.prefix=n};t.UpdateExpression=we;var ge=function(e,t){this.type=r.Syntax.VariableDeclaration,this.declarations=e,this.kind=t};t.VariableDeclaration=ge;var _e=function(e,t){this.type=r.Syntax.VariableDeclarator,this.id=e,this.init=t};t.VariableDeclarator=_e;var be=function(e,t){this.type=r.Syntax.WhileStatement,this.test=e,this.body=t};t.WhileStatement=be;var ye=function(e,t){this.type=r.Syntax.WithStatement,this.object=e,this.body=t};t.WithStatement=ye;var ve=function(e,t){this.type=r.Syntax.YieldExpression,this.argument=e,this.delegate=t};t.YieldExpression=ve},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(9),i=n(10),s=n(11),o=n(7),a=n(12),u=n(2),l=n(13),c=function(){function e(e,t,n){void 0===t&&(t={}),this.config={range:"boolean"==typeof t.range&&t.range,loc:"boolean"==typeof t.loc&&t.loc,source:null,tokens:"boolean"==typeof t.tokens&&t.tokens,comment:"boolean"==typeof t.comment&&t.comment,tolerant:"boolean"==typeof t.tolerant&&t.tolerant},this.config.loc&&t.source&&null!==t.source&&(this.config.source=String(t.source)),this.delegate=n,this.errorHandler=new i.ErrorHandler,this.errorHandler.tolerant=this.config.tolerant,this.scanner=new a.Scanner(e,this.errorHandler),this.scanner.trackComment=this.config.comment,this.operatorPrecedence={")":0,";":0,",":0,"=":0,"]":0,"||":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"===":6,"!==":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":11,"/":11,"%":11},this.lookahead={type:2,value:"",lineNumber:this.scanner.lineNumber,lineStart:0,start:0,end:0},this.hasLineTerminator=!1,this.context={isModule:!1,await:!1,allowIn:!0,allowStrictDirective:!0,allowYield:!0,firstCoverInitializedNameError:null,isAssignmentTarget:!1,isBindingElement:!1,inFunctionBody:!1,inIteration:!1,inSwitch:!1,labelSet:{},strict:!1},this.tokens=[],this.startMarker={index:0,line:this.scanner.lineNumber,column:0},this.lastMarker={index:0,line:this.scanner.lineNumber,column:0},this.nextToken(),this.lastMarker={index:this.scanner.index,line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}}return e.prototype.throwError=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=Array.prototype.slice.call(arguments,1),s=e.replace(/%(\d)/g,(function(e,t){return r.assert(t<i.length,"Message reference must be in range"),i[t]})),o=this.lastMarker.index,a=this.lastMarker.line,u=this.lastMarker.column+1;throw this.errorHandler.createError(o,a,u,s)},e.prototype.tolerateError=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=Array.prototype.slice.call(arguments,1),s=e.replace(/%(\d)/g,(function(e,t){return r.assert(t<i.length,"Message reference must be in range"),i[t]})),o=this.lastMarker.index,a=this.scanner.lineNumber,u=this.lastMarker.column+1;this.errorHandler.tolerateError(o,a,u,s)},e.prototype.unexpectedTokenError=function(e,t){var n,r=t||s.Messages.UnexpectedToken;if(e?(t||(r=2===e.type?s.Messages.UnexpectedEOS:3===e.type?s.Messages.UnexpectedIdentifier:6===e.type?s.Messages.UnexpectedNumber:8===e.type?s.Messages.UnexpectedString:10===e.type?s.Messages.UnexpectedTemplate:s.Messages.UnexpectedToken,4===e.type&&(this.scanner.isFutureReservedWord(e.value)?r=s.Messages.UnexpectedReserved:this.context.strict&&this.scanner.isStrictModeReservedWord(e.value)&&(r=s.Messages.StrictReservedWord))),n=e.value):n="ILLEGAL",r=r.replace("%0",n),e&&"number"==typeof e.lineNumber){var i=e.start,o=e.lineNumber,a=this.lastMarker.index-this.lastMarker.column,u=e.start-a+1;return this.errorHandler.createError(i,o,u,r)}return i=this.lastMarker.index,o=this.lastMarker.line,u=this.lastMarker.column+1,this.errorHandler.createError(i,o,u,r)},e.prototype.throwUnexpectedToken=function(e,t){throw this.unexpectedTokenError(e,t)},e.prototype.tolerateUnexpectedToken=function(e,t){this.errorHandler.tolerate(this.unexpectedTokenError(e,t))},e.prototype.collectComments=function(){if(this.config.comment){var e=this.scanner.scanComments();if(e.length>0&&this.delegate)for(var t=0;t<e.length;++t){var n=e[t],r=void 0;r={type:n.multiLine?"BlockComment":"LineComment",value:this.scanner.source.slice(n.slice[0],n.slice[1])},this.config.range&&(r.range=n.range),this.config.loc&&(r.loc=n.loc);var i={start:{line:n.loc.start.line,column:n.loc.start.column,offset:n.range[0]},end:{line:n.loc.end.line,column:n.loc.end.column,offset:n.range[1]}};this.delegate(r,i)}}else this.scanner.scanComments()},e.prototype.getTokenRaw=function(e){return this.scanner.source.slice(e.start,e.end)},e.prototype.convertToken=function(e){var t={type:l.TokenName[e.type],value:this.getTokenRaw(e)};if(this.config.range&&(t.range=[e.start,e.end]),this.config.loc&&(t.loc={start:{line:this.startMarker.line,column:this.startMarker.column},end:{line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart}}),9===e.type){var n=e.pattern,r=e.flags;t.regex={pattern:n,flags:r}}return t},e.prototype.nextToken=function(){var e=this.lookahead;this.lastMarker.index=this.scanner.index,this.lastMarker.line=this.scanner.lineNumber,this.lastMarker.column=this.scanner.index-this.scanner.lineStart,this.collectComments(),this.scanner.index!==this.startMarker.index&&(this.startMarker.index=this.scanner.index,this.startMarker.line=this.scanner.lineNumber,this.startMarker.column=this.scanner.index-this.scanner.lineStart);var t=this.scanner.lex();return this.hasLineTerminator=e.lineNumber!==t.lineNumber,t&&this.context.strict&&3===t.type&&this.scanner.isStrictModeReservedWord(t.value)&&(t.type=4),this.lookahead=t,this.config.tokens&&2!==t.type&&this.tokens.push(this.convertToken(t)),e},e.prototype.nextRegexToken=function(){this.collectComments();var e=this.scanner.scanRegExp();return this.config.tokens&&(this.tokens.pop(),this.tokens.push(this.convertToken(e))),this.lookahead=e,this.nextToken(),e},e.prototype.createNode=function(){return{index:this.startMarker.index,line:this.startMarker.line,column:this.startMarker.column}},e.prototype.startNode=function(e,t){void 0===t&&(t=0);var n=e.start-e.lineStart,r=e.lineNumber;return n<0&&(n+=t,r--),{index:e.start,line:r,column:n}},e.prototype.finalize=function(e,t){if(this.config.range&&(t.range=[e.index,this.lastMarker.index]),this.config.loc&&(t.loc={start:{line:e.line,column:e.column},end:{line:this.lastMarker.line,column:this.lastMarker.column}},this.config.source&&(t.loc.source=this.config.source)),this.delegate){var n={start:{line:e.line,column:e.column,offset:e.index},end:{line:this.lastMarker.line,column:this.lastMarker.column,offset:this.lastMarker.index}};this.delegate(t,n)}return t},e.prototype.expect=function(e){var t=this.nextToken();7===t.type&&t.value===e||this.throwUnexpectedToken(t)},e.prototype.expectCommaSeparator=function(){if(this.config.tolerant){var e=this.lookahead;7===e.type&&","===e.value?this.nextToken():7===e.type&&";"===e.value?(this.nextToken(),this.tolerateUnexpectedToken(e)):this.tolerateUnexpectedToken(e,s.Messages.UnexpectedToken)}else this.expect(",")},e.prototype.expectKeyword=function(e){var t=this.nextToken();4===t.type&&t.value===e||this.throwUnexpectedToken(t)},e.prototype.match=function(e){return 7===this.lookahead.type&&this.lookahead.value===e},e.prototype.matchKeyword=function(e){return 4===this.lookahead.type&&this.lookahead.value===e},e.prototype.matchContextualKeyword=function(e){return 3===this.lookahead.type&&this.lookahead.value===e},e.prototype.matchAssign=function(){if(7!==this.lookahead.type)return!1;var e=this.lookahead.value;return"="===e||"*="===e||"**="===e||"/="===e||"%="===e||"+="===e||"-="===e||"<<="===e||">>="===e||">>>="===e||"&="===e||"^="===e||"|="===e},e.prototype.isolateCoverGrammar=function(e){var t=this.context.isBindingElement,n=this.context.isAssignmentTarget,r=this.context.firstCoverInitializedNameError;this.context.isBindingElement=!0,this.context.isAssignmentTarget=!0,this.context.firstCoverInitializedNameError=null;var i=e.call(this);return null!==this.context.firstCoverInitializedNameError&&this.throwUnexpectedToken(this.context.firstCoverInitializedNameError),this.context.isBindingElement=t,this.context.isAssignmentTarget=n,this.context.firstCoverInitializedNameError=r,i},e.prototype.inheritCoverGrammar=function(e){var t=this.context.isBindingElement,n=this.context.isAssignmentTarget,r=this.context.firstCoverInitializedNameError;this.context.isBindingElement=!0,this.context.isAssignmentTarget=!0,this.context.firstCoverInitializedNameError=null;var i=e.call(this);return this.context.isBindingElement=this.context.isBindingElement&&t,this.context.isAssignmentTarget=this.context.isAssignmentTarget&&n,this.context.firstCoverInitializedNameError=r||this.context.firstCoverInitializedNameError,i},e.prototype.consumeSemicolon=function(){this.match(";")?this.nextToken():this.hasLineTerminator||(2===this.lookahead.type||this.match("}")||this.throwUnexpectedToken(this.lookahead),this.lastMarker.index=this.startMarker.index,this.lastMarker.line=this.startMarker.line,this.lastMarker.column=this.startMarker.column)},e.prototype.parsePrimaryExpression=function(){var e,t,n,r=this.createNode();switch(this.lookahead.type){case 3:(this.context.isModule||this.context.await)&&"await"===this.lookahead.value&&this.tolerateUnexpectedToken(this.lookahead),e=this.matchAsyncFunction()?this.parseFunctionExpression():this.finalize(r,new o.Identifier(this.nextToken().value));break;case 6:case 8:this.context.strict&&this.lookahead.octal&&this.tolerateUnexpectedToken(this.lookahead,s.Messages.StrictOctalLiteral),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,t=this.nextToken(),n=this.getTokenRaw(t),e=this.finalize(r,new o.Literal(t.value,n));break;case 1:this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,t=this.nextToken(),n=this.getTokenRaw(t),e=this.finalize(r,new o.Literal("true"===t.value,n));break;case 5:this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,t=this.nextToken(),n=this.getTokenRaw(t),e=this.finalize(r,new o.Literal(null,n));break;case 10:e=this.parseTemplateLiteral();break;case 7:switch(this.lookahead.value){case"(":this.context.isBindingElement=!1,e=this.inheritCoverGrammar(this.parseGroupExpression);break;case"[":e=this.inheritCoverGrammar(this.parseArrayInitializer);break;case"{":e=this.inheritCoverGrammar(this.parseObjectInitializer);break;case"/":case"/=":this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.scanner.index=this.startMarker.index,t=this.nextRegexToken(),n=this.getTokenRaw(t),e=this.finalize(r,new o.RegexLiteral(t.regex,n,t.pattern,t.flags));break;default:e=this.throwUnexpectedToken(this.nextToken())}break;case 4:!this.context.strict&&this.context.allowYield&&this.matchKeyword("yield")?e=this.parseIdentifierName():!this.context.strict&&this.matchKeyword("let")?e=this.finalize(r,new o.Identifier(this.nextToken().value)):(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.matchKeyword("function")?e=this.parseFunctionExpression():this.matchKeyword("this")?(this.nextToken(),e=this.finalize(r,new o.ThisExpression)):e=this.matchKeyword("class")?this.parseClassExpression():this.throwUnexpectedToken(this.nextToken()));break;default:e=this.throwUnexpectedToken(this.nextToken())}return e},e.prototype.parseSpreadElement=function(){var e=this.createNode();this.expect("...");var t=this.inheritCoverGrammar(this.parseAssignmentExpression);return this.finalize(e,new o.SpreadElement(t))},e.prototype.parseArrayInitializer=function(){var e=this.createNode(),t=[];for(this.expect("[");!this.match("]");)if(this.match(","))this.nextToken(),t.push(null);else if(this.match("...")){var n=this.parseSpreadElement();this.match("]")||(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1,this.expect(",")),t.push(n)}else t.push(this.inheritCoverGrammar(this.parseAssignmentExpression)),this.match("]")||this.expect(",");return this.expect("]"),this.finalize(e,new o.ArrayExpression(t))},e.prototype.parsePropertyMethod=function(e){this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var t=this.context.strict,n=this.context.allowStrictDirective;this.context.allowStrictDirective=e.simple;var r=this.isolateCoverGrammar(this.parseFunctionSourceElements);return this.context.strict&&e.firstRestricted&&this.tolerateUnexpectedToken(e.firstRestricted,e.message),this.context.strict&&e.stricted&&this.tolerateUnexpectedToken(e.stricted,e.message),this.context.strict=t,this.context.allowStrictDirective=n,r},e.prototype.parsePropertyMethodFunction=function(){var e=this.createNode(),t=this.context.allowYield;this.context.allowYield=!0;var n=this.parseFormalParameters(),r=this.parsePropertyMethod(n);return this.context.allowYield=t,this.finalize(e,new o.FunctionExpression(null,n.params,r,!1))},e.prototype.parsePropertyMethodAsyncFunction=function(){var e=this.createNode(),t=this.context.allowYield,n=this.context.await;this.context.allowYield=!1,this.context.await=!0;var r=this.parseFormalParameters(),i=this.parsePropertyMethod(r);return this.context.allowYield=t,this.context.await=n,this.finalize(e,new o.AsyncFunctionExpression(null,r.params,i))},e.prototype.parseObjectPropertyKey=function(){var e,t=this.createNode(),n=this.nextToken();switch(n.type){case 8:case 6:this.context.strict&&n.octal&&this.tolerateUnexpectedToken(n,s.Messages.StrictOctalLiteral);var r=this.getTokenRaw(n);e=this.finalize(t,new o.Literal(n.value,r));break;case 3:case 1:case 5:case 4:e=this.finalize(t,new o.Identifier(n.value));break;case 7:"["===n.value?(e=this.isolateCoverGrammar(this.parseAssignmentExpression),this.expect("]")):e=this.throwUnexpectedToken(n);break;default:e=this.throwUnexpectedToken(n)}return e},e.prototype.isPropertyKey=function(e,t){return e.type===u.Syntax.Identifier&&e.name===t||e.type===u.Syntax.Literal&&e.value===t},e.prototype.parseObjectProperty=function(e){var t,n=this.createNode(),r=this.lookahead,i=null,a=null,u=!1,l=!1,c=!1,h=!1;if(3===r.type){var d=r.value;this.nextToken(),u=this.match("["),i=(h=!(this.hasLineTerminator||"async"!==d||this.match(":")||this.match("(")||this.match("*")||this.match(",")))?this.parseObjectPropertyKey():this.finalize(n,new o.Identifier(d))}else this.match("*")?this.nextToken():(u=this.match("["),i=this.parseObjectPropertyKey());var p=this.qualifiedPropertyName(this.lookahead);if(3===r.type&&!h&&"get"===r.value&&p)t="get",u=this.match("["),i=this.parseObjectPropertyKey(),this.context.allowYield=!1,a=this.parseGetterMethod();else if(3===r.type&&!h&&"set"===r.value&&p)t="set",u=this.match("["),i=this.parseObjectPropertyKey(),a=this.parseSetterMethod();else if(7===r.type&&"*"===r.value&&p)t="init",u=this.match("["),i=this.parseObjectPropertyKey(),a=this.parseGeneratorMethod(),l=!0;else if(i||this.throwUnexpectedToken(this.lookahead),t="init",this.match(":")&&!h)!u&&this.isPropertyKey(i,"__proto__")&&(e.value&&this.tolerateError(s.Messages.DuplicateProtoProperty),e.value=!0),this.nextToken(),a=this.inheritCoverGrammar(this.parseAssignmentExpression);else if(this.match("("))a=h?this.parsePropertyMethodAsyncFunction():this.parsePropertyMethodFunction(),l=!0;else if(3===r.type)if(d=this.finalize(n,new o.Identifier(r.value)),this.match("=")){this.context.firstCoverInitializedNameError=this.lookahead,this.nextToken(),c=!0;var f=this.isolateCoverGrammar(this.parseAssignmentExpression);a=this.finalize(n,new o.AssignmentPattern(d,f))}else c=!0,a=d;else this.throwUnexpectedToken(this.nextToken());return this.finalize(n,new o.Property(t,i,u,a,l,c))},e.prototype.parseObjectInitializer=function(){var e=this.createNode();this.expect("{");for(var t=[],n={value:!1};!this.match("}");)t.push(this.parseObjectProperty(n)),this.match("}")||this.expectCommaSeparator();return this.expect("}"),this.finalize(e,new o.ObjectExpression(t))},e.prototype.parseTemplateHead=function(){r.assert(this.lookahead.head,"Template literal must start with a template head");var e=this.createNode(),t=this.nextToken(),n=t.value,i=t.cooked;return this.finalize(e,new o.TemplateElement({raw:n,cooked:i},t.tail))},e.prototype.parseTemplateElement=function(){10!==this.lookahead.type&&this.throwUnexpectedToken();var e=this.createNode(),t=this.nextToken(),n=t.value,r=t.cooked;return this.finalize(e,new o.TemplateElement({raw:n,cooked:r},t.tail))},e.prototype.parseTemplateLiteral=function(){var e=this.createNode(),t=[],n=[],r=this.parseTemplateHead();for(n.push(r);!r.tail;)t.push(this.parseExpression()),r=this.parseTemplateElement(),n.push(r);return this.finalize(e,new o.TemplateLiteral(n,t))},e.prototype.reinterpretExpressionAsPattern=function(e){switch(e.type){case u.Syntax.Identifier:case u.Syntax.MemberExpression:case u.Syntax.RestElement:case u.Syntax.AssignmentPattern:break;case u.Syntax.SpreadElement:e.type=u.Syntax.RestElement,this.reinterpretExpressionAsPattern(e.argument);break;case u.Syntax.ArrayExpression:e.type=u.Syntax.ArrayPattern;for(var t=0;t<e.elements.length;t++)null!==e.elements[t]&&this.reinterpretExpressionAsPattern(e.elements[t]);break;case u.Syntax.ObjectExpression:for(e.type=u.Syntax.ObjectPattern,t=0;t<e.properties.length;t++)this.reinterpretExpressionAsPattern(e.properties[t].value);break;case u.Syntax.AssignmentExpression:e.type=u.Syntax.AssignmentPattern,delete e.operator,this.reinterpretExpressionAsPattern(e.left)}},e.prototype.parseGroupExpression=function(){var e;if(this.expect("("),this.match(")"))this.nextToken(),this.match("=>")||this.expect("=>"),e={type:"ArrowParameterPlaceHolder",params:[],async:!1};else{var t=this.lookahead,n=[];if(this.match("..."))e=this.parseRestElement(n),this.expect(")"),this.match("=>")||this.expect("=>"),e={type:"ArrowParameterPlaceHolder",params:[e],async:!1};else{var r=!1;if(this.context.isBindingElement=!0,e=this.inheritCoverGrammar(this.parseAssignmentExpression),this.match(",")){var i=[];for(this.context.isAssignmentTarget=!1,i.push(e);2!==this.lookahead.type&&this.match(",");){if(this.nextToken(),this.match(")")){this.nextToken();for(var s=0;s<i.length;s++)this.reinterpretExpressionAsPattern(i[s]);r=!0,e={type:"ArrowParameterPlaceHolder",params:i,async:!1}}else if(this.match("...")){for(this.context.isBindingElement||this.throwUnexpectedToken(this.lookahead),i.push(this.parseRestElement(n)),this.expect(")"),this.match("=>")||this.expect("=>"),this.context.isBindingElement=!1,s=0;s<i.length;s++)this.reinterpretExpressionAsPattern(i[s]);r=!0,e={type:"ArrowParameterPlaceHolder",params:i,async:!1}}else i.push(this.inheritCoverGrammar(this.parseAssignmentExpression));if(r)break}r||(e=this.finalize(this.startNode(t),new o.SequenceExpression(i)))}if(!r){if(this.expect(")"),this.match("=>")&&(e.type===u.Syntax.Identifier&&"yield"===e.name&&(r=!0,e={type:"ArrowParameterPlaceHolder",params:[e],async:!1}),!r)){if(this.context.isBindingElement||this.throwUnexpectedToken(this.lookahead),e.type===u.Syntax.SequenceExpression)for(s=0;s<e.expressions.length;s++)this.reinterpretExpressionAsPattern(e.expressions[s]);else this.reinterpretExpressionAsPattern(e);e={type:"ArrowParameterPlaceHolder",params:e.type===u.Syntax.SequenceExpression?e.expressions:[e],async:!1}}this.context.isBindingElement=!1}}}return e},e.prototype.parseArguments=function(){this.expect("(");var e=[];if(!this.match(")"))for(;;){var t=this.match("...")?this.parseSpreadElement():this.isolateCoverGrammar(this.parseAssignmentExpression);if(e.push(t),this.match(")"))break;if(this.expectCommaSeparator(),this.match(")"))break}return this.expect(")"),e},e.prototype.isIdentifierName=function(e){return 3===e.type||4===e.type||1===e.type||5===e.type},e.prototype.parseIdentifierName=function(){var e=this.createNode(),t=this.nextToken();return this.isIdentifierName(t)||this.throwUnexpectedToken(t),this.finalize(e,new o.Identifier(t.value))},e.prototype.parseNewExpression=function(){var e,t=this.createNode(),n=this.parseIdentifierName();if(r.assert("new"===n.name,"New expression must start with `new`"),this.match("."))if(this.nextToken(),3===this.lookahead.type&&this.context.inFunctionBody&&"target"===this.lookahead.value){var i=this.parseIdentifierName();e=new o.MetaProperty(n,i)}else this.throwUnexpectedToken(this.lookahead);else{var s=this.isolateCoverGrammar(this.parseLeftHandSideExpression),a=this.match("(")?this.parseArguments():[];e=new o.NewExpression(s,a),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1}return this.finalize(t,e)},e.prototype.parseAsyncArgument=function(){var e=this.parseAssignmentExpression();return this.context.firstCoverInitializedNameError=null,e},e.prototype.parseAsyncArguments=function(){this.expect("(");var e=[];if(!this.match(")"))for(;;){var t=this.match("...")?this.parseSpreadElement():this.isolateCoverGrammar(this.parseAsyncArgument);if(e.push(t),this.match(")"))break;if(this.expectCommaSeparator(),this.match(")"))break}return this.expect(")"),e},e.prototype.parseLeftHandSideExpressionAllowCall=function(){var e,t=this.lookahead,n=this.matchContextualKeyword("async"),r=this.context.allowIn;for(this.context.allowIn=!0,this.matchKeyword("super")&&this.context.inFunctionBody?(e=this.createNode(),this.nextToken(),e=this.finalize(e,new o.Super),this.match("(")||this.match(".")||this.match("[")||this.throwUnexpectedToken(this.lookahead)):e=this.inheritCoverGrammar(this.matchKeyword("new")?this.parseNewExpression:this.parsePrimaryExpression);;)if(this.match(".")){this.context.isBindingElement=!1,this.context.isAssignmentTarget=!0,this.expect(".");var i=this.parseIdentifierName();e=this.finalize(this.startNode(t),new o.StaticMemberExpression(e,i))}else if(this.match("(")){var s=n&&t.lineNumber===this.lookahead.lineNumber;this.context.isBindingElement=!1,this.context.isAssignmentTarget=!1;var a=s?this.parseAsyncArguments():this.parseArguments();if(e=this.finalize(this.startNode(t),new o.CallExpression(e,a)),s&&this.match("=>")){for(var u=0;u<a.length;++u)this.reinterpretExpressionAsPattern(a[u]);e={type:"ArrowParameterPlaceHolder",params:a,async:!0}}}else if(this.match("["))this.context.isBindingElement=!1,this.context.isAssignmentTarget=!0,this.expect("["),i=this.isolateCoverGrammar(this.parseExpression),this.expect("]"),e=this.finalize(this.startNode(t),new o.ComputedMemberExpression(e,i));else{if(10!==this.lookahead.type||!this.lookahead.head)break;var l=this.parseTemplateLiteral();e=this.finalize(this.startNode(t),new o.TaggedTemplateExpression(e,l))}return this.context.allowIn=r,e},e.prototype.parseSuper=function(){var e=this.createNode();return this.expectKeyword("super"),this.match("[")||this.match(".")||this.throwUnexpectedToken(this.lookahead),this.finalize(e,new o.Super)},e.prototype.parseLeftHandSideExpression=function(){r.assert(this.context.allowIn,"callee of new expression always allow in keyword.");for(var e=this.startNode(this.lookahead),t=this.matchKeyword("super")&&this.context.inFunctionBody?this.parseSuper():this.inheritCoverGrammar(this.matchKeyword("new")?this.parseNewExpression:this.parsePrimaryExpression);;)if(this.match("[")){this.context.isBindingElement=!1,this.context.isAssignmentTarget=!0,this.expect("[");var n=this.isolateCoverGrammar(this.parseExpression);this.expect("]"),t=this.finalize(e,new o.ComputedMemberExpression(t,n))}else if(this.match("."))this.context.isBindingElement=!1,this.context.isAssignmentTarget=!0,this.expect("."),n=this.parseIdentifierName(),t=this.finalize(e,new o.StaticMemberExpression(t,n));else{if(10!==this.lookahead.type||!this.lookahead.head)break;var i=this.parseTemplateLiteral();t=this.finalize(e,new o.TaggedTemplateExpression(t,i))}return t},e.prototype.parseUpdateExpression=function(){var e,t=this.lookahead;if(this.match("++")||this.match("--")){var n=this.startNode(t),r=this.nextToken();e=this.inheritCoverGrammar(this.parseUnaryExpression),this.context.strict&&e.type===u.Syntax.Identifier&&this.scanner.isRestrictedWord(e.name)&&this.tolerateError(s.Messages.StrictLHSPrefix),this.context.isAssignmentTarget||this.tolerateError(s.Messages.InvalidLHSInAssignment);var i=!0;e=this.finalize(n,new o.UpdateExpression(r.value,e,i)),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1}else if(e=this.inheritCoverGrammar(this.parseLeftHandSideExpressionAllowCall),!this.hasLineTerminator&&7===this.lookahead.type&&(this.match("++")||this.match("--"))){this.context.strict&&e.type===u.Syntax.Identifier&&this.scanner.isRestrictedWord(e.name)&&this.tolerateError(s.Messages.StrictLHSPostfix),this.context.isAssignmentTarget||this.tolerateError(s.Messages.InvalidLHSInAssignment),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var a=this.nextToken().value;i=!1,e=this.finalize(this.startNode(t),new o.UpdateExpression(a,e,i))}return e},e.prototype.parseAwaitExpression=function(){var e=this.createNode();this.nextToken();var t=this.parseUnaryExpression();return this.finalize(e,new o.AwaitExpression(t))},e.prototype.parseUnaryExpression=function(){var e;if(this.match("+")||this.match("-")||this.match("~")||this.match("!")||this.matchKeyword("delete")||this.matchKeyword("void")||this.matchKeyword("typeof")){var t=this.startNode(this.lookahead),n=this.nextToken();e=this.inheritCoverGrammar(this.parseUnaryExpression),e=this.finalize(t,new o.UnaryExpression(n.value,e)),this.context.strict&&"delete"===e.operator&&e.argument.type===u.Syntax.Identifier&&this.tolerateError(s.Messages.StrictDelete),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1}else e=this.context.await&&this.matchContextualKeyword("await")?this.parseAwaitExpression():this.parseUpdateExpression();return e},e.prototype.parseExponentiationExpression=function(){var e=this.lookahead,t=this.inheritCoverGrammar(this.parseUnaryExpression);if(t.type!==u.Syntax.UnaryExpression&&this.match("**")){this.nextToken(),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var n=t,r=this.isolateCoverGrammar(this.parseExponentiationExpression);t=this.finalize(this.startNode(e),new o.BinaryExpression("**",n,r))}return t},e.prototype.binaryPrecedence=function(e){var t=e.value;return 7===e.type?this.operatorPrecedence[t]||0:4===e.type&&("instanceof"===t||this.context.allowIn&&"in"===t)?7:0},e.prototype.parseBinaryExpression=function(){var e=this.lookahead,t=this.inheritCoverGrammar(this.parseExponentiationExpression),n=this.lookahead,r=this.binaryPrecedence(n);if(r>0){this.nextToken(),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;for(var i=[e,this.lookahead],s=t,a=this.isolateCoverGrammar(this.parseExponentiationExpression),u=[s,n.value,a],l=[r];!((r=this.binaryPrecedence(this.lookahead))<=0);){for(;u.length>2&&r<=l[l.length-1];){a=u.pop();var c=u.pop();l.pop(),s=u.pop(),i.pop();var h=this.startNode(i[i.length-1]);u.push(this.finalize(h,new o.BinaryExpression(c,s,a)))}u.push(this.nextToken().value),l.push(r),i.push(this.lookahead),u.push(this.isolateCoverGrammar(this.parseExponentiationExpression))}var d=u.length-1;t=u[d];for(var p=i.pop();d>1;){var f=i.pop(),m=p&&p.lineStart;h=this.startNode(f,m),c=u[d-1],t=this.finalize(h,new o.BinaryExpression(c,u[d-2],t)),d-=2,p=f}}return t},e.prototype.parseConditionalExpression=function(){var e=this.lookahead,t=this.inheritCoverGrammar(this.parseBinaryExpression);if(this.match("?")){this.nextToken();var n=this.context.allowIn;this.context.allowIn=!0;var r=this.isolateCoverGrammar(this.parseAssignmentExpression);this.context.allowIn=n,this.expect(":");var i=this.isolateCoverGrammar(this.parseAssignmentExpression);t=this.finalize(this.startNode(e),new o.ConditionalExpression(t,r,i)),this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1}return t},e.prototype.checkPatternParam=function(e,t){switch(t.type){case u.Syntax.Identifier:this.validateParam(e,t,t.name);break;case u.Syntax.RestElement:this.checkPatternParam(e,t.argument);break;case u.Syntax.AssignmentPattern:this.checkPatternParam(e,t.left);break;case u.Syntax.ArrayPattern:for(var n=0;n<t.elements.length;n++)null!==t.elements[n]&&this.checkPatternParam(e,t.elements[n]);break;case u.Syntax.ObjectPattern:for(n=0;n<t.properties.length;n++)this.checkPatternParam(e,t.properties[n].value)}e.simple=e.simple&&t instanceof o.Identifier},e.prototype.reinterpretAsCoverFormalsList=function(e){var t,n=[e],r=!1;switch(e.type){case u.Syntax.Identifier:break;case"ArrowParameterPlaceHolder":n=e.params,r=e.async;break;default:return null}t={simple:!0,paramSet:{}};for(var i=0;i<n.length;++i)(o=n[i]).type===u.Syntax.AssignmentPattern?o.right.type===u.Syntax.YieldExpression&&(o.right.argument&&this.throwUnexpectedToken(this.lookahead),o.right.type=u.Syntax.Identifier,o.right.name="yield",delete o.right.argument,delete o.right.delegate):r&&o.type===u.Syntax.Identifier&&"await"===o.name&&this.throwUnexpectedToken(this.lookahead),this.checkPatternParam(t,o),n[i]=o;if(this.context.strict||!this.context.allowYield)for(i=0;i<n.length;++i){var o;(o=n[i]).type===u.Syntax.YieldExpression&&this.throwUnexpectedToken(this.lookahead)}if(t.message===s.Messages.StrictParamDupe){var a=this.context.strict?t.stricted:t.firstRestricted;this.throwUnexpectedToken(a,t.message)}return{simple:t.simple,params:n,stricted:t.stricted,firstRestricted:t.firstRestricted,message:t.message}},e.prototype.parseAssignmentExpression=function(){var e;if(!this.context.allowYield&&this.matchKeyword("yield"))e=this.parseYieldExpression();else{var t=this.lookahead,n=t;if(e=this.parseConditionalExpression(),3===n.type&&n.lineNumber===this.lookahead.lineNumber&&"async"===n.value&&(3===this.lookahead.type||this.matchKeyword("yield"))){var r=this.parsePrimaryExpression();this.reinterpretExpressionAsPattern(r),e={type:"ArrowParameterPlaceHolder",params:[r],async:!0}}if("ArrowParameterPlaceHolder"===e.type||this.match("=>")){this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1;var i=e.async,a=this.reinterpretAsCoverFormalsList(e);if(a){this.hasLineTerminator&&this.tolerateUnexpectedToken(this.lookahead),this.context.firstCoverInitializedNameError=null;var l=this.context.strict,c=this.context.allowStrictDirective;this.context.allowStrictDirective=a.simple;var h=this.context.allowYield,d=this.context.await;this.context.allowYield=!0,this.context.await=i;var p=this.startNode(t);this.expect("=>");var f=void 0;if(this.match("{")){var m=this.context.allowIn;this.context.allowIn=!0,f=this.parseFunctionSourceElements(),this.context.allowIn=m}else f=this.isolateCoverGrammar(this.parseAssignmentExpression);var w=f.type!==u.Syntax.BlockStatement;this.context.strict&&a.firstRestricted&&this.throwUnexpectedToken(a.firstRestricted,a.message),this.context.strict&&a.stricted&&this.tolerateUnexpectedToken(a.stricted,a.message),e=i?this.finalize(p,new o.AsyncArrowFunctionExpression(a.params,f,w)):this.finalize(p,new o.ArrowFunctionExpression(a.params,f,w)),this.context.strict=l,this.context.allowStrictDirective=c,this.context.allowYield=h,this.context.await=d}}else if(this.matchAssign()){if(this.context.isAssignmentTarget||this.tolerateError(s.Messages.InvalidLHSInAssignment),this.context.strict&&e.type===u.Syntax.Identifier){var g=e;this.scanner.isRestrictedWord(g.name)&&this.tolerateUnexpectedToken(n,s.Messages.StrictLHSAssignment),this.scanner.isStrictModeReservedWord(g.name)&&this.tolerateUnexpectedToken(n,s.Messages.StrictReservedWord)}this.match("=")?this.reinterpretExpressionAsPattern(e):(this.context.isAssignmentTarget=!1,this.context.isBindingElement=!1);var _=(n=this.nextToken()).value,b=this.isolateCoverGrammar(this.parseAssignmentExpression);e=this.finalize(this.startNode(t),new o.AssignmentExpression(_,e,b)),this.context.firstCoverInitializedNameError=null}}return e},e.prototype.parseExpression=function(){var e=this.lookahead,t=this.isolateCoverGrammar(this.parseAssignmentExpression);if(this.match(",")){var n=[];for(n.push(t);2!==this.lookahead.type&&this.match(",");)this.nextToken(),n.push(this.isolateCoverGrammar(this.parseAssignmentExpression));t=this.finalize(this.startNode(e),new o.SequenceExpression(n))}return t},e.prototype.parseStatementListItem=function(){var e;if(this.context.isAssignmentTarget=!0,this.context.isBindingElement=!0,4===this.lookahead.type)switch(this.lookahead.value){case"export":this.context.isModule||this.tolerateUnexpectedToken(this.lookahead,s.Messages.IllegalExportDeclaration),e=this.parseExportDeclaration();break;case"import":this.context.isModule||this.tolerateUnexpectedToken(this.lookahead,s.Messages.IllegalImportDeclaration),e=this.parseImportDeclaration();break;case"const":e=this.parseLexicalDeclaration({inFor:!1});break;case"function":e=this.parseFunctionDeclaration();break;case"class":e=this.parseClassDeclaration();break;case"let":e=this.isLexicalDeclaration()?this.parseLexicalDeclaration({inFor:!1}):this.parseStatement();break;default:e=this.parseStatement()}else e=this.parseStatement();return e},e.prototype.parseBlock=function(){var e=this.createNode();this.expect("{");for(var t=[];!this.match("}");)t.push(this.parseStatementListItem());return this.expect("}"),this.finalize(e,new o.BlockStatement(t))},e.prototype.parseLexicalBinding=function(e,t){var n=this.createNode(),r=this.parsePattern([],e);this.context.strict&&r.type===u.Syntax.Identifier&&this.scanner.isRestrictedWord(r.name)&&this.tolerateError(s.Messages.StrictVarName);var i=null;return"const"===e?this.matchKeyword("in")||this.matchContextualKeyword("of")||(this.match("=")?(this.nextToken(),i=this.isolateCoverGrammar(this.parseAssignmentExpression)):this.throwError(s.Messages.DeclarationMissingInitializer,"const")):(!t.inFor&&r.type!==u.Syntax.Identifier||this.match("="))&&(this.expect("="),i=this.isolateCoverGrammar(this.parseAssignmentExpression)),this.finalize(n,new o.VariableDeclarator(r,i))},e.prototype.parseBindingList=function(e,t){for(var n=[this.parseLexicalBinding(e,t)];this.match(",");)this.nextToken(),n.push(this.parseLexicalBinding(e,t));return n},e.prototype.isLexicalDeclaration=function(){var e=this.scanner.saveState();this.scanner.scanComments();var t=this.scanner.lex();return this.scanner.restoreState(e),3===t.type||7===t.type&&"["===t.value||7===t.type&&"{"===t.value||4===t.type&&"let"===t.value||4===t.type&&"yield"===t.value},e.prototype.parseLexicalDeclaration=function(e){var t=this.createNode(),n=this.nextToken().value;r.assert("let"===n||"const"===n,"Lexical declaration must be either let or const");var i=this.parseBindingList(n,e);return this.consumeSemicolon(),this.finalize(t,new o.VariableDeclaration(i,n))},e.prototype.parseBindingRestElement=function(e,t){var n=this.createNode();this.expect("...");var r=this.parsePattern(e,t);return this.finalize(n,new o.RestElement(r))},e.prototype.parseArrayPattern=function(e,t){var n=this.createNode();this.expect("[");for(var r=[];!this.match("]");)if(this.match(","))this.nextToken(),r.push(null);else{if(this.match("...")){r.push(this.parseBindingRestElement(e,t));break}r.push(this.parsePatternWithDefault(e,t)),this.match("]")||this.expect(",")}return this.expect("]"),this.finalize(n,new o.ArrayPattern(r))},e.prototype.parsePropertyPattern=function(e,t){var n,r,i=this.createNode(),s=!1,a=!1;if(3===this.lookahead.type){var u=this.lookahead;n=this.parseVariableIdentifier();var l=this.finalize(i,new o.Identifier(u.value));if(this.match("=")){e.push(u),a=!0,this.nextToken();var c=this.parseAssignmentExpression();r=this.finalize(this.startNode(u),new o.AssignmentPattern(l,c))}else this.match(":")?(this.expect(":"),r=this.parsePatternWithDefault(e,t)):(e.push(u),a=!0,r=l)}else s=this.match("["),n=this.parseObjectPropertyKey(),this.expect(":"),r=this.parsePatternWithDefault(e,t);return this.finalize(i,new o.Property("init",n,s,r,!1,a))},e.prototype.parseObjectPattern=function(e,t){var n=this.createNode(),r=[];for(this.expect("{");!this.match("}");)r.push(this.parsePropertyPattern(e,t)),this.match("}")||this.expect(",");return this.expect("}"),this.finalize(n,new o.ObjectPattern(r))},e.prototype.parsePattern=function(e,t){var n;return this.match("[")?n=this.parseArrayPattern(e,t):this.match("{")?n=this.parseObjectPattern(e,t):(!this.matchKeyword("let")||"const"!==t&&"let"!==t||this.tolerateUnexpectedToken(this.lookahead,s.Messages.LetInLexicalBinding),e.push(this.lookahead),n=this.parseVariableIdentifier(t)),n},e.prototype.parsePatternWithDefault=function(e,t){var n=this.lookahead,r=this.parsePattern(e,t);if(this.match("=")){this.nextToken();var i=this.context.allowYield;this.context.allowYield=!0;var s=this.isolateCoverGrammar(this.parseAssignmentExpression);this.context.allowYield=i,r=this.finalize(this.startNode(n),new o.AssignmentPattern(r,s))}return r},e.prototype.parseVariableIdentifier=function(e){var t=this.createNode(),n=this.nextToken();return 4===n.type&&"yield"===n.value?this.context.strict?this.tolerateUnexpectedToken(n,s.Messages.StrictReservedWord):this.context.allowYield||this.throwUnexpectedToken(n):3!==n.type?this.context.strict&&4===n.type&&this.scanner.isStrictModeReservedWord(n.value)?this.tolerateUnexpectedToken(n,s.Messages.StrictReservedWord):(this.context.strict||"let"!==n.value||"var"!==e)&&this.throwUnexpectedToken(n):(this.context.isModule||this.context.await)&&3===n.type&&"await"===n.value&&this.tolerateUnexpectedToken(n),this.finalize(t,new o.Identifier(n.value))},e.prototype.parseVariableDeclaration=function(e){var t=this.createNode(),n=this.parsePattern([],"var");this.context.strict&&n.type===u.Syntax.Identifier&&this.scanner.isRestrictedWord(n.name)&&this.tolerateError(s.Messages.StrictVarName);var r=null;return this.match("=")?(this.nextToken(),r=this.isolateCoverGrammar(this.parseAssignmentExpression)):n.type===u.Syntax.Identifier||e.inFor||this.expect("="),this.finalize(t,new o.VariableDeclarator(n,r))},e.prototype.parseVariableDeclarationList=function(e){var t={inFor:e.inFor},n=[];for(n.push(this.parseVariableDeclaration(t));this.match(",");)this.nextToken(),n.push(this.parseVariableDeclaration(t));return n},e.prototype.parseVariableStatement=function(){var e=this.createNode();this.expectKeyword("var");var t=this.parseVariableDeclarationList({inFor:!1});return this.consumeSemicolon(),this.finalize(e,new o.VariableDeclaration(t,"var"))},e.prototype.parseEmptyStatement=function(){var e=this.createNode();return this.expect(";"),this.finalize(e,new o.EmptyStatement)},e.prototype.parseExpressionStatement=function(){var e=this.createNode(),t=this.parseExpression();return this.consumeSemicolon(),this.finalize(e,new o.ExpressionStatement(t))},e.prototype.parseIfClause=function(){return this.context.strict&&this.matchKeyword("function")&&this.tolerateError(s.Messages.StrictFunction),this.parseStatement()},e.prototype.parseIfStatement=function(){var e,t=this.createNode(),n=null;this.expectKeyword("if"),this.expect("(");var r=this.parseExpression();return!this.match(")")&&this.config.tolerant?(this.tolerateUnexpectedToken(this.nextToken()),e=this.finalize(this.createNode(),new o.EmptyStatement)):(this.expect(")"),e=this.parseIfClause(),this.matchKeyword("else")&&(this.nextToken(),n=this.parseIfClause())),this.finalize(t,new o.IfStatement(r,e,n))},e.prototype.parseDoWhileStatement=function(){var e=this.createNode();this.expectKeyword("do");var t=this.context.inIteration;this.context.inIteration=!0;var n=this.parseStatement();this.context.inIteration=t,this.expectKeyword("while"),this.expect("(");var r=this.parseExpression();return!this.match(")")&&this.config.tolerant?this.tolerateUnexpectedToken(this.nextToken()):(this.expect(")"),this.match(";")&&this.nextToken()),this.finalize(e,new o.DoWhileStatement(n,r))},e.prototype.parseWhileStatement=function(){var e,t=this.createNode();this.expectKeyword("while"),this.expect("(");var n=this.parseExpression();if(!this.match(")")&&this.config.tolerant)this.tolerateUnexpectedToken(this.nextToken()),e=this.finalize(this.createNode(),new o.EmptyStatement);else{this.expect(")");var r=this.context.inIteration;this.context.inIteration=!0,e=this.parseStatement(),this.context.inIteration=r}return this.finalize(t,new o.WhileStatement(n,e))},e.prototype.parseForStatement=function(){var e,t,n,r=null,i=null,a=null,l=!0,c=this.createNode();if(this.expectKeyword("for"),this.expect("("),this.match(";"))this.nextToken();else if(this.matchKeyword("var")){r=this.createNode(),this.nextToken();var h=this.context.allowIn;this.context.allowIn=!1;var d=this.parseVariableDeclarationList({inFor:!0});if(this.context.allowIn=h,1===d.length&&this.matchKeyword("in")){var p=d[0];p.init&&(p.id.type===u.Syntax.ArrayPattern||p.id.type===u.Syntax.ObjectPattern||this.context.strict)&&this.tolerateError(s.Messages.ForInOfLoopInitializer,"for-in"),r=this.finalize(r,new o.VariableDeclaration(d,"var")),this.nextToken(),e=r,t=this.parseExpression(),r=null}else 1===d.length&&null===d[0].init&&this.matchContextualKeyword("of")?(r=this.finalize(r,new o.VariableDeclaration(d,"var")),this.nextToken(),e=r,t=this.parseAssignmentExpression(),r=null,l=!1):(r=this.finalize(r,new o.VariableDeclaration(d,"var")),this.expect(";"))}else if(this.matchKeyword("const")||this.matchKeyword("let")){r=this.createNode();var f=this.nextToken().value;this.context.strict||"in"!==this.lookahead.value?(h=this.context.allowIn,this.context.allowIn=!1,d=this.parseBindingList(f,{inFor:!0}),this.context.allowIn=h,1===d.length&&null===d[0].init&&this.matchKeyword("in")?(r=this.finalize(r,new o.VariableDeclaration(d,f)),this.nextToken(),e=r,t=this.parseExpression(),r=null):1===d.length&&null===d[0].init&&this.matchContextualKeyword("of")?(r=this.finalize(r,new o.VariableDeclaration(d,f)),this.nextToken(),e=r,t=this.parseAssignmentExpression(),r=null,l=!1):(this.consumeSemicolon(),r=this.finalize(r,new o.VariableDeclaration(d,f)))):(r=this.finalize(r,new o.Identifier(f)),this.nextToken(),e=r,t=this.parseExpression(),r=null)}else{var m=this.lookahead;if(h=this.context.allowIn,this.context.allowIn=!1,r=this.inheritCoverGrammar(this.parseAssignmentExpression),this.context.allowIn=h,this.matchKeyword("in"))this.context.isAssignmentTarget&&r.type!==u.Syntax.AssignmentExpression||this.tolerateError(s.Messages.InvalidLHSInForIn),this.nextToken(),this.reinterpretExpressionAsPattern(r),e=r,t=this.parseExpression(),r=null;else if(this.matchContextualKeyword("of"))this.context.isAssignmentTarget&&r.type!==u.Syntax.AssignmentExpression||this.tolerateError(s.Messages.InvalidLHSInForLoop),this.nextToken(),this.reinterpretExpressionAsPattern(r),e=r,t=this.parseAssignmentExpression(),r=null,l=!1;else{if(this.match(",")){for(var w=[r];this.match(",");)this.nextToken(),w.push(this.isolateCoverGrammar(this.parseAssignmentExpression));r=this.finalize(this.startNode(m),new o.SequenceExpression(w))}this.expect(";")}}if(void 0===e&&(this.match(";")||(i=this.parseExpression()),this.expect(";"),this.match(")")||(a=this.parseExpression())),!this.match(")")&&this.config.tolerant)this.tolerateUnexpectedToken(this.nextToken()),n=this.finalize(this.createNode(),new o.EmptyStatement);else{this.expect(")");var g=this.context.inIteration;this.context.inIteration=!0,n=this.isolateCoverGrammar(this.parseStatement),this.context.inIteration=g}return void 0===e?this.finalize(c,new o.ForStatement(r,i,a,n)):l?this.finalize(c,new o.ForInStatement(e,t,n)):this.finalize(c,new o.ForOfStatement(e,t,n))},e.prototype.parseContinueStatement=function(){var e=this.createNode();this.expectKeyword("continue");var t=null;if(3===this.lookahead.type&&!this.hasLineTerminator){var n=this.parseVariableIdentifier();t=n;var r="$"+n.name;Object.prototype.hasOwnProperty.call(this.context.labelSet,r)||this.throwError(s.Messages.UnknownLabel,n.name)}return this.consumeSemicolon(),null!==t||this.context.inIteration||this.throwError(s.Messages.IllegalContinue),this.finalize(e,new o.ContinueStatement(t))},e.prototype.parseBreakStatement=function(){var e=this.createNode();this.expectKeyword("break");var t=null;if(3===this.lookahead.type&&!this.hasLineTerminator){var n=this.parseVariableIdentifier(),r="$"+n.name;Object.prototype.hasOwnProperty.call(this.context.labelSet,r)||this.throwError(s.Messages.UnknownLabel,n.name),t=n}return this.consumeSemicolon(),null!==t||this.context.inIteration||this.context.inSwitch||this.throwError(s.Messages.IllegalBreak),this.finalize(e,new o.BreakStatement(t))},e.prototype.parseReturnStatement=function(){this.context.inFunctionBody||this.tolerateError(s.Messages.IllegalReturn);var e=this.createNode();this.expectKeyword("return");var t=(this.match(";")||this.match("}")||this.hasLineTerminator||2===this.lookahead.type)&&8!==this.lookahead.type&&10!==this.lookahead.type?null:this.parseExpression();return this.consumeSemicolon(),this.finalize(e,new o.ReturnStatement(t))},e.prototype.parseWithStatement=function(){this.context.strict&&this.tolerateError(s.Messages.StrictModeWith);var e,t=this.createNode();this.expectKeyword("with"),this.expect("(");var n=this.parseExpression();return!this.match(")")&&this.config.tolerant?(this.tolerateUnexpectedToken(this.nextToken()),e=this.finalize(this.createNode(),new o.EmptyStatement)):(this.expect(")"),e=this.parseStatement()),this.finalize(t,new o.WithStatement(n,e))},e.prototype.parseSwitchCase=function(){var e,t=this.createNode();this.matchKeyword("default")?(this.nextToken(),e=null):(this.expectKeyword("case"),e=this.parseExpression()),this.expect(":");for(var n=[];!(this.match("}")||this.matchKeyword("default")||this.matchKeyword("case"));)n.push(this.parseStatementListItem());return this.finalize(t,new o.SwitchCase(e,n))},e.prototype.parseSwitchStatement=function(){var e=this.createNode();this.expectKeyword("switch"),this.expect("(");var t=this.parseExpression();this.expect(")");var n=this.context.inSwitch;this.context.inSwitch=!0;var r=[],i=!1;for(this.expect("{");!this.match("}");){var a=this.parseSwitchCase();null===a.test&&(i&&this.throwError(s.Messages.MultipleDefaultsInSwitch),i=!0),r.push(a)}return this.expect("}"),this.context.inSwitch=n,this.finalize(e,new o.SwitchStatement(t,r))},e.prototype.parseLabelledStatement=function(){var e,t=this.createNode(),n=this.parseExpression();if(n.type===u.Syntax.Identifier&&this.match(":")){this.nextToken();var r=n,i="$"+r.name;Object.prototype.hasOwnProperty.call(this.context.labelSet,i)&&this.throwError(s.Messages.Redeclaration,"Label",r.name),this.context.labelSet[i]=!0;var a=void 0;if(this.matchKeyword("class"))this.tolerateUnexpectedToken(this.lookahead),a=this.parseClassDeclaration();else if(this.matchKeyword("function")){var l=this.lookahead,c=this.parseFunctionDeclaration();this.context.strict?this.tolerateUnexpectedToken(l,s.Messages.StrictFunction):c.generator&&this.tolerateUnexpectedToken(l,s.Messages.GeneratorInLegacyContext),a=c}else a=this.parseStatement();delete this.context.labelSet[i],e=new o.LabeledStatement(r,a)}else this.consumeSemicolon(),e=new o.ExpressionStatement(n);return this.finalize(t,e)},e.prototype.parseThrowStatement=function(){var e=this.createNode();this.expectKeyword("throw"),this.hasLineTerminator&&this.throwError(s.Messages.NewlineAfterThrow);var t=this.parseExpression();return this.consumeSemicolon(),this.finalize(e,new o.ThrowStatement(t))},e.prototype.parseCatchClause=function(){var e=this.createNode();this.expectKeyword("catch"),this.expect("("),this.match(")")&&this.throwUnexpectedToken(this.lookahead);for(var t=[],n=this.parsePattern(t),r={},i=0;i<t.length;i++){var a="$"+t[i].value;Object.prototype.hasOwnProperty.call(r,a)&&this.tolerateError(s.Messages.DuplicateBinding,t[i].value),r[a]=!0}this.context.strict&&n.type===u.Syntax.Identifier&&this.scanner.isRestrictedWord(n.name)&&this.tolerateError(s.Messages.StrictCatchVariable),this.expect(")");var l=this.parseBlock();return this.finalize(e,new o.CatchClause(n,l))},e.prototype.parseFinallyClause=function(){return this.expectKeyword("finally"),this.parseBlock()},e.prototype.parseTryStatement=function(){var e=this.createNode();this.expectKeyword("try");var t=this.parseBlock(),n=this.matchKeyword("catch")?this.parseCatchClause():null,r=this.matchKeyword("finally")?this.parseFinallyClause():null;return n||r||this.throwError(s.Messages.NoCatchOrFinally),this.finalize(e,new o.TryStatement(t,n,r))},e.prototype.parseDebuggerStatement=function(){var e=this.createNode();return this.expectKeyword("debugger"),this.consumeSemicolon(),this.finalize(e,new o.DebuggerStatement)},e.prototype.parseStatement=function(){var e;switch(this.lookahead.type){case 1:case 5:case 6:case 8:case 10:case 9:e=this.parseExpressionStatement();break;case 7:var t=this.lookahead.value;e="{"===t?this.parseBlock():"("===t?this.parseExpressionStatement():";"===t?this.parseEmptyStatement():this.parseExpressionStatement();break;case 3:e=this.matchAsyncFunction()?this.parseFunctionDeclaration():this.parseLabelledStatement();break;case 4:switch(this.lookahead.value){case"break":e=this.parseBreakStatement();break;case"continue":e=this.parseContinueStatement();break;case"debugger":e=this.parseDebuggerStatement();break;case"do":e=this.parseDoWhileStatement();break;case"for":e=this.parseForStatement();break;case"function":e=this.parseFunctionDeclaration();break;case"if":e=this.parseIfStatement();break;case"return":e=this.parseReturnStatement();break;case"switch":e=this.parseSwitchStatement();break;case"throw":e=this.parseThrowStatement();break;case"try":e=this.parseTryStatement();break;case"var":e=this.parseVariableStatement();break;case"while":e=this.parseWhileStatement();break;case"with":e=this.parseWithStatement();break;default:e=this.parseExpressionStatement()}break;default:e=this.throwUnexpectedToken(this.lookahead)}return e},e.prototype.parseFunctionSourceElements=function(){var e=this.createNode();this.expect("{");var t=this.parseDirectivePrologues(),n=this.context.labelSet,r=this.context.inIteration,i=this.context.inSwitch,s=this.context.inFunctionBody;for(this.context.labelSet={},this.context.inIteration=!1,this.context.inSwitch=!1,this.context.inFunctionBody=!0;2!==this.lookahead.type&&!this.match("}");)t.push(this.parseStatementListItem());return this.expect("}"),this.context.labelSet=n,this.context.inIteration=r,this.context.inSwitch=i,this.context.inFunctionBody=s,this.finalize(e,new o.BlockStatement(t))},e.prototype.validateParam=function(e,t,n){var r="$"+n;this.context.strict?(this.scanner.isRestrictedWord(n)&&(e.stricted=t,e.message=s.Messages.StrictParamName),Object.prototype.hasOwnProperty.call(e.paramSet,r)&&(e.stricted=t,e.message=s.Messages.StrictParamDupe)):e.firstRestricted||(this.scanner.isRestrictedWord(n)?(e.firstRestricted=t,e.message=s.Messages.StrictParamName):this.scanner.isStrictModeReservedWord(n)?(e.firstRestricted=t,e.message=s.Messages.StrictReservedWord):Object.prototype.hasOwnProperty.call(e.paramSet,r)&&(e.stricted=t,e.message=s.Messages.StrictParamDupe)),"function"==typeof Object.defineProperty?Object.defineProperty(e.paramSet,r,{value:!0,enumerable:!0,writable:!0,configurable:!0}):e.paramSet[r]=!0},e.prototype.parseRestElement=function(e){var t=this.createNode();this.expect("...");var n=this.parsePattern(e);return this.match("=")&&this.throwError(s.Messages.DefaultRestParameter),this.match(")")||this.throwError(s.Messages.ParameterAfterRestParameter),this.finalize(t,new o.RestElement(n))},e.prototype.parseFormalParameter=function(e){for(var t=[],n=this.match("...")?this.parseRestElement(t):this.parsePatternWithDefault(t),r=0;r<t.length;r++)this.validateParam(e,t[r],t[r].value);e.simple=e.simple&&n instanceof o.Identifier,e.params.push(n)},e.prototype.parseFormalParameters=function(e){var t;if(t={simple:!0,params:[],firstRestricted:e},this.expect("("),!this.match(")"))for(t.paramSet={};2!==this.lookahead.type&&(this.parseFormalParameter(t),!this.match(")"))&&(this.expect(","),!this.match(")")););return this.expect(")"),{simple:t.simple,params:t.params,stricted:t.stricted,firstRestricted:t.firstRestricted,message:t.message}},e.prototype.matchAsyncFunction=function(){var e=this.matchContextualKeyword("async");if(e){var t=this.scanner.saveState();this.scanner.scanComments();var n=this.scanner.lex();this.scanner.restoreState(t),e=t.lineNumber===n.lineNumber&&4===n.type&&"function"===n.value}return e},e.prototype.parseFunctionDeclaration=function(e){var t=this.createNode(),n=this.matchContextualKeyword("async");n&&this.nextToken(),this.expectKeyword("function");var r,i=!n&&this.match("*");i&&this.nextToken();var a=null,u=null;if(!e||!this.match("(")){var l=this.lookahead;a=this.parseVariableIdentifier(),this.context.strict?this.scanner.isRestrictedWord(l.value)&&this.tolerateUnexpectedToken(l,s.Messages.StrictFunctionName):this.scanner.isRestrictedWord(l.value)?(u=l,r=s.Messages.StrictFunctionName):this.scanner.isStrictModeReservedWord(l.value)&&(u=l,r=s.Messages.StrictReservedWord)}var c=this.context.await,h=this.context.allowYield;this.context.await=n,this.context.allowYield=!i;var d=this.parseFormalParameters(u),p=d.params,f=d.stricted;u=d.firstRestricted,d.message&&(r=d.message);var m=this.context.strict,w=this.context.allowStrictDirective;this.context.allowStrictDirective=d.simple;var g=this.parseFunctionSourceElements();return this.context.strict&&u&&this.throwUnexpectedToken(u,r),this.context.strict&&f&&this.tolerateUnexpectedToken(f,r),this.context.strict=m,this.context.allowStrictDirective=w,this.context.await=c,this.context.allowYield=h,n?this.finalize(t,new o.AsyncFunctionDeclaration(a,p,g)):this.finalize(t,new o.FunctionDeclaration(a,p,g,i))},e.prototype.parseFunctionExpression=function(){var e=this.createNode(),t=this.matchContextualKeyword("async");t&&this.nextToken(),this.expectKeyword("function");var n,r=!t&&this.match("*");r&&this.nextToken();var i,a=null,u=this.context.await,l=this.context.allowYield;if(this.context.await=t,this.context.allowYield=!r,!this.match("(")){var c=this.lookahead;a=this.context.strict||r||!this.matchKeyword("yield")?this.parseVariableIdentifier():this.parseIdentifierName(),this.context.strict?this.scanner.isRestrictedWord(c.value)&&this.tolerateUnexpectedToken(c,s.Messages.StrictFunctionName):this.scanner.isRestrictedWord(c.value)?(i=c,n=s.Messages.StrictFunctionName):this.scanner.isStrictModeReservedWord(c.value)&&(i=c,n=s.Messages.StrictReservedWord)}var h=this.parseFormalParameters(i),d=h.params,p=h.stricted;i=h.firstRestricted,h.message&&(n=h.message);var f=this.context.strict,m=this.context.allowStrictDirective;this.context.allowStrictDirective=h.simple;var w=this.parseFunctionSourceElements();return this.context.strict&&i&&this.throwUnexpectedToken(i,n),this.context.strict&&p&&this.tolerateUnexpectedToken(p,n),this.context.strict=f,this.context.allowStrictDirective=m,this.context.await=u,this.context.allowYield=l,t?this.finalize(e,new o.AsyncFunctionExpression(a,d,w)):this.finalize(e,new o.FunctionExpression(a,d,w,r))},e.prototype.parseDirective=function(){var e=this.lookahead,t=this.createNode(),n=this.parseExpression(),r=n.type===u.Syntax.Literal?this.getTokenRaw(e).slice(1,-1):null;return this.consumeSemicolon(),this.finalize(t,r?new o.Directive(n,r):new o.ExpressionStatement(n))},e.prototype.parseDirectivePrologues=function(){for(var e=null,t=[];;){var n=this.lookahead;if(8!==n.type)break;var r=this.parseDirective();t.push(r);var i=r.directive;if("string"!=typeof i)break;"use strict"===i?(this.context.strict=!0,e&&this.tolerateUnexpectedToken(e,s.Messages.StrictOctalLiteral),this.context.allowStrictDirective||this.tolerateUnexpectedToken(n,s.Messages.IllegalLanguageModeDirective)):!e&&n.octal&&(e=n)}return t},e.prototype.qualifiedPropertyName=function(e){switch(e.type){case 3:case 8:case 1:case 5:case 6:case 4:return!0;case 7:return"["===e.value}return!1},e.prototype.parseGetterMethod=function(){var e=this.createNode(),t=this.context.allowYield;this.context.allowYield=!0;var n=this.parseFormalParameters();n.params.length>0&&this.tolerateError(s.Messages.BadGetterArity);var r=this.parsePropertyMethod(n);return this.context.allowYield=t,this.finalize(e,new o.FunctionExpression(null,n.params,r,!1))},e.prototype.parseSetterMethod=function(){var e=this.createNode(),t=this.context.allowYield;this.context.allowYield=!0;var n=this.parseFormalParameters();1!==n.params.length?this.tolerateError(s.Messages.BadSetterArity):n.params[0]instanceof o.RestElement&&this.tolerateError(s.Messages.BadSetterRestParameter);var r=this.parsePropertyMethod(n);return this.context.allowYield=t,this.finalize(e,new o.FunctionExpression(null,n.params,r,!1))},e.prototype.parseGeneratorMethod=function(){var e=this.createNode(),t=this.context.allowYield;this.context.allowYield=!0;var n=this.parseFormalParameters();this.context.allowYield=!1;var r=this.parsePropertyMethod(n);return this.context.allowYield=t,this.finalize(e,new o.FunctionExpression(null,n.params,r,!0))},e.prototype.isStartOfExpression=function(){var e=!0,t=this.lookahead.value;switch(this.lookahead.type){case 7:e="["===t||"("===t||"{"===t||"+"===t||"-"===t||"!"===t||"~"===t||"++"===t||"--"===t||"/"===t||"/="===t;break;case 4:e="class"===t||"delete"===t||"function"===t||"let"===t||"new"===t||"super"===t||"this"===t||"typeof"===t||"void"===t||"yield"===t}return e},e.prototype.parseYieldExpression=function(){var e=this.createNode();this.expectKeyword("yield");var t=null,n=!1;if(!this.hasLineTerminator){var r=this.context.allowYield;this.context.allowYield=!1,(n=this.match("*"))?(this.nextToken(),t=this.parseAssignmentExpression()):this.isStartOfExpression()&&(t=this.parseAssignmentExpression()),this.context.allowYield=r}return this.finalize(e,new o.YieldExpression(t,n))},e.prototype.parseClassElement=function(e){var t=this.lookahead,n=this.createNode(),r="",i=null,a=null,u=!1,l=!1,c=!1,h=!1;if(this.match("*"))this.nextToken();else if(u=this.match("["),"static"===(i=this.parseObjectPropertyKey()).name&&(this.qualifiedPropertyName(this.lookahead)||this.match("*"))&&(t=this.lookahead,c=!0,u=this.match("["),this.match("*")?this.nextToken():i=this.parseObjectPropertyKey()),3===t.type&&!this.hasLineTerminator&&"async"===t.value){var d=this.lookahead.value;":"!==d&&"("!==d&&"*"!==d&&(h=!0,t=this.lookahead,i=this.parseObjectPropertyKey(),3===t.type&&"constructor"===t.value&&this.tolerateUnexpectedToken(t,s.Messages.ConstructorIsAsync))}var p=this.qualifiedPropertyName(this.lookahead);return 3===t.type?"get"===t.value&&p?(r="get",u=this.match("["),i=this.parseObjectPropertyKey(),this.context.allowYield=!1,a=this.parseGetterMethod()):"set"===t.value&&p&&(r="set",u=this.match("["),i=this.parseObjectPropertyKey(),a=this.parseSetterMethod()):7===t.type&&"*"===t.value&&p&&(r="init",u=this.match("["),i=this.parseObjectPropertyKey(),a=this.parseGeneratorMethod(),l=!0),!r&&i&&this.match("(")&&(r="init",a=h?this.parsePropertyMethodAsyncFunction():this.parsePropertyMethodFunction(),l=!0),r||this.throwUnexpectedToken(this.lookahead),"init"===r&&(r="method"),u||(c&&this.isPropertyKey(i,"prototype")&&this.throwUnexpectedToken(t,s.Messages.StaticPrototype),!c&&this.isPropertyKey(i,"constructor")&&(("method"!==r||!l||a&&a.generator)&&this.throwUnexpectedToken(t,s.Messages.ConstructorSpecialMethod),e.value?this.throwUnexpectedToken(t,s.Messages.DuplicateConstructor):e.value=!0,r="constructor")),this.finalize(n,new o.MethodDefinition(i,u,a,r,c))},e.prototype.parseClassElementList=function(){var e=[],t={value:!1};for(this.expect("{");!this.match("}");)this.match(";")?this.nextToken():e.push(this.parseClassElement(t));return this.expect("}"),e},e.prototype.parseClassBody=function(){var e=this.createNode(),t=this.parseClassElementList();return this.finalize(e,new o.ClassBody(t))},e.prototype.parseClassDeclaration=function(e){var t=this.createNode(),n=this.context.strict;this.context.strict=!0,this.expectKeyword("class");var r=e&&3!==this.lookahead.type?null:this.parseVariableIdentifier(),i=null;this.matchKeyword("extends")&&(this.nextToken(),i=this.isolateCoverGrammar(this.parseLeftHandSideExpressionAllowCall));var s=this.parseClassBody();return this.context.strict=n,this.finalize(t,new o.ClassDeclaration(r,i,s))},e.prototype.parseClassExpression=function(){var e=this.createNode(),t=this.context.strict;this.context.strict=!0,this.expectKeyword("class");var n=3===this.lookahead.type?this.parseVariableIdentifier():null,r=null;this.matchKeyword("extends")&&(this.nextToken(),r=this.isolateCoverGrammar(this.parseLeftHandSideExpressionAllowCall));var i=this.parseClassBody();return this.context.strict=t,this.finalize(e,new o.ClassExpression(n,r,i))},e.prototype.parseModule=function(){this.context.strict=!0,this.context.isModule=!0,this.scanner.isModule=!0;for(var e=this.createNode(),t=this.parseDirectivePrologues();2!==this.lookahead.type;)t.push(this.parseStatementListItem());return this.finalize(e,new o.Module(t))},e.prototype.parseScript=function(){for(var e=this.createNode(),t=this.parseDirectivePrologues();2!==this.lookahead.type;)t.push(this.parseStatementListItem());return this.finalize(e,new o.Script(t))},e.prototype.parseModuleSpecifier=function(){var e=this.createNode();8!==this.lookahead.type&&this.throwError(s.Messages.InvalidModuleSpecifier);var t=this.nextToken(),n=this.getTokenRaw(t);return this.finalize(e,new o.Literal(t.value,n))},e.prototype.parseImportSpecifier=function(){var e,t,n=this.createNode();return 3===this.lookahead.type?(t=e=this.parseVariableIdentifier(),this.matchContextualKeyword("as")&&(this.nextToken(),t=this.parseVariableIdentifier())):(t=e=this.parseIdentifierName(),this.matchContextualKeyword("as")?(this.nextToken(),t=this.parseVariableIdentifier()):this.throwUnexpectedToken(this.nextToken())),this.finalize(n,new o.ImportSpecifier(t,e))},e.prototype.parseNamedImports=function(){this.expect("{");for(var e=[];!this.match("}");)e.push(this.parseImportSpecifier()),this.match("}")||this.expect(",");return this.expect("}"),e},e.prototype.parseImportDefaultSpecifier=function(){var e=this.createNode(),t=this.parseIdentifierName();return this.finalize(e,new o.ImportDefaultSpecifier(t))},e.prototype.parseImportNamespaceSpecifier=function(){var e=this.createNode();this.expect("*"),this.matchContextualKeyword("as")||this.throwError(s.Messages.NoAsAfterImportNamespace),this.nextToken();var t=this.parseIdentifierName();return this.finalize(e,new o.ImportNamespaceSpecifier(t))},e.prototype.parseImportDeclaration=function(){this.context.inFunctionBody&&this.throwError(s.Messages.IllegalImportDeclaration);var e,t=this.createNode();this.expectKeyword("import");var n=[];if(8===this.lookahead.type)e=this.parseModuleSpecifier();else{if(this.match("{")?n=n.concat(this.parseNamedImports()):this.match("*")?n.push(this.parseImportNamespaceSpecifier()):this.isIdentifierName(this.lookahead)&&!this.matchKeyword("default")?(n.push(this.parseImportDefaultSpecifier()),this.match(",")&&(this.nextToken(),this.match("*")?n.push(this.parseImportNamespaceSpecifier()):this.match("{")?n=n.concat(this.parseNamedImports()):this.throwUnexpectedToken(this.lookahead))):this.throwUnexpectedToken(this.nextToken()),!this.matchContextualKeyword("from")){var r=this.lookahead.value?s.Messages.UnexpectedToken:s.Messages.MissingFromClause;this.throwError(r,this.lookahead.value)}this.nextToken(),e=this.parseModuleSpecifier()}return this.consumeSemicolon(),this.finalize(t,new o.ImportDeclaration(n,e))},e.prototype.parseExportSpecifier=function(){var e=this.createNode(),t=this.parseIdentifierName(),n=t;return this.matchContextualKeyword("as")&&(this.nextToken(),n=this.parseIdentifierName()),this.finalize(e,new o.ExportSpecifier(t,n))},e.prototype.parseExportDeclaration=function(){this.context.inFunctionBody&&this.throwError(s.Messages.IllegalExportDeclaration);var e,t=this.createNode();if(this.expectKeyword("export"),this.matchKeyword("default"))if(this.nextToken(),this.matchKeyword("function")){var n=this.parseFunctionDeclaration(!0);e=this.finalize(t,new o.ExportDefaultDeclaration(n))}else this.matchKeyword("class")?(n=this.parseClassDeclaration(!0),e=this.finalize(t,new o.ExportDefaultDeclaration(n))):this.matchContextualKeyword("async")?(n=this.matchAsyncFunction()?this.parseFunctionDeclaration(!0):this.parseAssignmentExpression(),e=this.finalize(t,new o.ExportDefaultDeclaration(n))):(this.matchContextualKeyword("from")&&this.throwError(s.Messages.UnexpectedToken,this.lookahead.value),n=this.match("{")?this.parseObjectInitializer():this.match("[")?this.parseArrayInitializer():this.parseAssignmentExpression(),this.consumeSemicolon(),e=this.finalize(t,new o.ExportDefaultDeclaration(n)));else if(this.match("*")){if(this.nextToken(),!this.matchContextualKeyword("from")){var r=this.lookahead.value?s.Messages.UnexpectedToken:s.Messages.MissingFromClause;this.throwError(r,this.lookahead.value)}this.nextToken();var i=this.parseModuleSpecifier();this.consumeSemicolon(),e=this.finalize(t,new o.ExportAllDeclaration(i))}else if(4===this.lookahead.type){switch(n=void 0,this.lookahead.value){case"let":case"const":n=this.parseLexicalDeclaration({inFor:!1});break;case"var":case"class":case"function":n=this.parseStatementListItem();break;default:this.throwUnexpectedToken(this.lookahead)}e=this.finalize(t,new o.ExportNamedDeclaration(n,[],null))}else if(this.matchAsyncFunction())n=this.parseFunctionDeclaration(),e=this.finalize(t,new o.ExportNamedDeclaration(n,[],null));else{var a=[],u=null,l=!1;for(this.expect("{");!this.match("}");)l=l||this.matchKeyword("default"),a.push(this.parseExportSpecifier()),this.match("}")||this.expect(",");this.expect("}"),this.matchContextualKeyword("from")?(this.nextToken(),u=this.parseModuleSpecifier(),this.consumeSemicolon()):l?(r=this.lookahead.value?s.Messages.UnexpectedToken:s.Messages.MissingFromClause,this.throwError(r,this.lookahead.value)):this.consumeSemicolon(),e=this.finalize(t,new o.ExportNamedDeclaration(null,a,u))}return e},e}();t.Parser=c},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.assert=function(e,t){if(!e)throw new Error("ASSERT: "+t)}},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(){this.errors=[],this.tolerant=!1}return e.prototype.recordError=function(e){this.errors.push(e)},e.prototype.tolerate=function(e){if(!this.tolerant)throw e;this.recordError(e)},e.prototype.constructError=function(e,t){var n=new Error(e);try{throw n}catch(e){Object.create&&Object.defineProperty&&(n=Object.create(e),Object.defineProperty(n,"column",{value:t}))}return n},e.prototype.createError=function(e,t,n,r){var i="Line "+t+": "+r,s=this.constructError(i,n);return s.index=e,s.lineNumber=t,s.description=r,s},e.prototype.throwError=function(e,t,n,r){throw this.createError(e,t,n,r)},e.prototype.tolerateError=function(e,t,n,r){var i=this.createError(e,t,n,r);if(!this.tolerant)throw i;this.recordError(i)},e}();t.ErrorHandler=n},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Messages={BadGetterArity:"Getter must not have any formal parameters",BadSetterArity:"Setter must have exactly one formal parameter",BadSetterRestParameter:"Setter function argument must not be a rest parameter",ConstructorIsAsync:"Class constructor may not be an async method",ConstructorSpecialMethod:"Class constructor may not be an accessor",DeclarationMissingInitializer:"Missing initializer in %0 declaration",DefaultRestParameter:"Unexpected token =",DuplicateBinding:"Duplicate binding %0",DuplicateConstructor:"A class may only have one constructor",DuplicateProtoProperty:"Duplicate __proto__ fields are not allowed in object literals",ForInOfLoopInitializer:"%0 loop variable declaration may not have an initializer",GeneratorInLegacyContext:"Generator declarations are not allowed in legacy contexts",IllegalBreak:"Illegal break statement",IllegalContinue:"Illegal continue statement",IllegalExportDeclaration:"Unexpected token",IllegalImportDeclaration:"Unexpected token",IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list",IllegalReturn:"Illegal return statement",InvalidEscapedReservedWord:"Keyword must not contain escaped characters",InvalidHexEscapeSequence:"Invalid hexadecimal escape sequence",InvalidLHSInAssignment:"Invalid left-hand side in assignment",InvalidLHSInForIn:"Invalid left-hand side in for-in",InvalidLHSInForLoop:"Invalid left-hand side in for-loop",InvalidModuleSpecifier:"Unexpected token",InvalidRegExp:"Invalid regular expression",LetInLexicalBinding:"let is disallowed as a lexically bound name",MissingFromClause:"Unexpected token",MultipleDefaultsInSwitch:"More than one default clause in switch statement",NewlineAfterThrow:"Illegal newline after throw",NoAsAfterImportNamespace:"Unexpected token",NoCatchOrFinally:"Missing catch or finally after try",ParameterAfterRestParameter:"Rest parameter must be last formal parameter",Redeclaration:"%0 '%1' has already been declared",StaticPrototype:"Classes may not have static property named prototype",StrictCatchVariable:"Catch variable may not be eval or arguments in strict mode",StrictDelete:"Delete of an unqualified identifier in strict mode.",StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block",StrictFunctionName:"Function name may not be eval or arguments in strict mode",StrictLHSAssignment:"Assignment to eval or arguments is not allowed in strict mode",StrictLHSPostfix:"Postfix increment/decrement may not have eval or arguments operand in strict mode",StrictLHSPrefix:"Prefix increment/decrement may not have eval or arguments operand in strict mode",StrictModeWith:"Strict mode code may not include a with statement",StrictOctalLiteral:"Octal literals are not allowed in strict mode.",StrictParamDupe:"Strict mode function may not have duplicate parameter names",StrictParamName:"Parameter name eval or arguments is not allowed in strict mode",StrictReservedWord:"Use of future reserved word in strict mode",StrictVarName:"Variable name may not be eval or arguments in strict mode",TemplateOctalLiteral:"Octal literals are not allowed in template strings.",UnexpectedEOS:"Unexpected end of input",UnexpectedIdentifier:"Unexpected identifier",UnexpectedNumber:"Unexpected number",UnexpectedReserved:"Unexpected reserved word",UnexpectedString:"Unexpected string",UnexpectedTemplate:"Unexpected quasi %0",UnexpectedToken:"Unexpected token %0",UnexpectedTokenIllegal:"Unexpected token ILLEGAL",UnknownLabel:"Undefined label '%0'",UnterminatedRegExp:"Invalid regular expression: missing /"}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(9),i=n(4),s=n(11);function o(e){return"0123456789abcdef".indexOf(e.toLowerCase())}function a(e){return"01234567".indexOf(e)}var u=function(){function e(e,t){this.source=e,this.errorHandler=t,this.trackComment=!1,this.isModule=!1,this.length=e.length,this.index=0,this.lineNumber=e.length>0?1:0,this.lineStart=0,this.curlyStack=[]}return e.prototype.saveState=function(){return{index:this.index,lineNumber:this.lineNumber,lineStart:this.lineStart}},e.prototype.restoreState=function(e){this.index=e.index,this.lineNumber=e.lineNumber,this.lineStart=e.lineStart},e.prototype.eof=function(){return this.index>=this.length},e.prototype.throwUnexpectedToken=function(e){return void 0===e&&(e=s.Messages.UnexpectedTokenIllegal),this.errorHandler.throwError(this.index,this.lineNumber,this.index-this.lineStart+1,e)},e.prototype.tolerateUnexpectedToken=function(e){void 0===e&&(e=s.Messages.UnexpectedTokenIllegal),this.errorHandler.tolerateError(this.index,this.lineNumber,this.index-this.lineStart+1,e)},e.prototype.skipSingleLineComment=function(e){var t,n,r=[];for(this.trackComment&&(r=[],t=this.index-e,n={start:{line:this.lineNumber,column:this.index-this.lineStart-e},end:{}});!this.eof();){var s=this.source.charCodeAt(this.index);if(++this.index,i.Character.isLineTerminator(s)){if(this.trackComment){n.end={line:this.lineNumber,column:this.index-this.lineStart-1};var o={multiLine:!1,slice:[t+e,this.index-1],range:[t,this.index-1],loc:n};r.push(o)}return 13===s&&10===this.source.charCodeAt(this.index)&&++this.index,++this.lineNumber,this.lineStart=this.index,r}}return this.trackComment&&(n.end={line:this.lineNumber,column:this.index-this.lineStart},o={multiLine:!1,slice:[t+e,this.index],range:[t,this.index],loc:n},r.push(o)),r},e.prototype.skipMultiLineComment=function(){var e,t,n=[];for(this.trackComment&&(n=[],e=this.index-2,t={start:{line:this.lineNumber,column:this.index-this.lineStart-2},end:{}});!this.eof();){var r=this.source.charCodeAt(this.index);if(i.Character.isLineTerminator(r))13===r&&10===this.source.charCodeAt(this.index+1)&&++this.index,++this.lineNumber,++this.index,this.lineStart=this.index;else if(42===r){if(47===this.source.charCodeAt(this.index+1)){if(this.index+=2,this.trackComment){t.end={line:this.lineNumber,column:this.index-this.lineStart};var s={multiLine:!0,slice:[e+2,this.index-2],range:[e,this.index],loc:t};n.push(s)}return n}++this.index}else++this.index}return this.trackComment&&(t.end={line:this.lineNumber,column:this.index-this.lineStart},s={multiLine:!0,slice:[e+2,this.index],range:[e,this.index],loc:t},n.push(s)),this.tolerateUnexpectedToken(),n},e.prototype.scanComments=function(){var e;this.trackComment&&(e=[]);for(var t=0===this.index;!this.eof();){var n=this.source.charCodeAt(this.index);if(i.Character.isWhiteSpace(n))++this.index;else if(i.Character.isLineTerminator(n))++this.index,13===n&&10===this.source.charCodeAt(this.index)&&++this.index,++this.lineNumber,this.lineStart=this.index,t=!0;else if(47===n)if(47===(n=this.source.charCodeAt(this.index+1))){this.index+=2;var r=this.skipSingleLineComment(2);this.trackComment&&(e=e.concat(r)),t=!0}else{if(42!==n)break;this.index+=2,r=this.skipMultiLineComment(),this.trackComment&&(e=e.concat(r))}else if(t&&45===n){if(45!==this.source.charCodeAt(this.index+1)||62!==this.source.charCodeAt(this.index+2))break;this.index+=3,r=this.skipSingleLineComment(3),this.trackComment&&(e=e.concat(r))}else{if(60!==n||this.isModule)break;if("!--"!==this.source.slice(this.index+1,this.index+4))break;this.index+=4,r=this.skipSingleLineComment(4),this.trackComment&&(e=e.concat(r))}}return e},e.prototype.isFutureReservedWord=function(e){switch(e){case"enum":case"export":case"import":case"super":return!0;default:return!1}},e.prototype.isStrictModeReservedWord=function(e){switch(e){case"implements":case"interface":case"package":case"private":case"protected":case"public":case"static":case"yield":case"let":return!0;default:return!1}},e.prototype.isRestrictedWord=function(e){return"eval"===e||"arguments"===e},e.prototype.isKeyword=function(e){switch(e.length){case 2:return"if"===e||"in"===e||"do"===e;case 3:return"var"===e||"for"===e||"new"===e||"try"===e||"let"===e;case 4:return"this"===e||"else"===e||"case"===e||"void"===e||"with"===e||"enum"===e;case 5:return"while"===e||"break"===e||"catch"===e||"throw"===e||"const"===e||"yield"===e||"class"===e||"super"===e;case 6:return"return"===e||"typeof"===e||"delete"===e||"switch"===e||"export"===e||"import"===e;case 7:return"default"===e||"finally"===e||"extends"===e;case 8:return"function"===e||"continue"===e||"debugger"===e;case 10:return"instanceof"===e;default:return!1}},e.prototype.codePointAt=function(e){var t=this.source.charCodeAt(e);if(t>=55296&&t<=56319){var n=this.source.charCodeAt(e+1);n>=56320&&n<=57343&&(t=1024*(t-55296)+n-56320+65536)}return t},e.prototype.scanHexEscape=function(e){for(var t="u"===e?4:2,n=0,r=0;r<t;++r){if(this.eof()||!i.Character.isHexDigit(this.source.charCodeAt(this.index)))return null;n=16*n+o(this.source[this.index++])}return String.fromCharCode(n)},e.prototype.scanUnicodeCodePointEscape=function(){var e=this.source[this.index],t=0;for("}"===e&&this.throwUnexpectedToken();!this.eof()&&(e=this.source[this.index++],i.Character.isHexDigit(e.charCodeAt(0)));)t=16*t+o(e);return(t>1114111||"}"!==e)&&this.throwUnexpectedToken(),i.Character.fromCodePoint(t)},e.prototype.getIdentifier=function(){for(var e=this.index++;!this.eof();){var t=this.source.charCodeAt(this.index);if(92===t)return this.index=e,this.getComplexIdentifier();if(t>=55296&&t<57343)return this.index=e,this.getComplexIdentifier();if(!i.Character.isIdentifierPart(t))break;++this.index}return this.source.slice(e,this.index)},e.prototype.getComplexIdentifier=function(){var e,t=this.codePointAt(this.index),n=i.Character.fromCodePoint(t);for(this.index+=n.length,92===t&&(117!==this.source.charCodeAt(this.index)&&this.throwUnexpectedToken(),++this.index,"{"===this.source[this.index]?(++this.index,e=this.scanUnicodeCodePointEscape()):null!==(e=this.scanHexEscape("u"))&&"\\"!==e&&i.Character.isIdentifierStart(e.charCodeAt(0))||this.throwUnexpectedToken(),n=e);!this.eof()&&(t=this.codePointAt(this.index),i.Character.isIdentifierPart(t));)n+=e=i.Character.fromCodePoint(t),this.index+=e.length,92===t&&(n=n.substr(0,n.length-1),117!==this.source.charCodeAt(this.index)&&this.throwUnexpectedToken(),++this.index,"{"===this.source[this.index]?(++this.index,e=this.scanUnicodeCodePointEscape()):null!==(e=this.scanHexEscape("u"))&&"\\"!==e&&i.Character.isIdentifierPart(e.charCodeAt(0))||this.throwUnexpectedToken(),n+=e);return n},e.prototype.octalToDecimal=function(e){var t="0"!==e,n=a(e);return!this.eof()&&i.Character.isOctalDigit(this.source.charCodeAt(this.index))&&(t=!0,n=8*n+a(this.source[this.index++]),"0123".indexOf(e)>=0&&!this.eof()&&i.Character.isOctalDigit(this.source.charCodeAt(this.index))&&(n=8*n+a(this.source[this.index++]))),{code:n,octal:t}},e.prototype.scanIdentifier=function(){var e,t=this.index,n=92===this.source.charCodeAt(t)?this.getComplexIdentifier():this.getIdentifier();if(3!=(e=1===n.length?3:this.isKeyword(n)?4:"null"===n?5:"true"===n||"false"===n?1:3)&&t+n.length!==this.index){var r=this.index;this.index=t,this.tolerateUnexpectedToken(s.Messages.InvalidEscapedReservedWord),this.index=r}return{type:e,value:n,lineNumber:this.lineNumber,lineStart:this.lineStart,start:t,end:this.index}},e.prototype.scanPunctuator=function(){var e=this.index,t=this.source[this.index];switch(t){case"(":case"{":"{"===t&&this.curlyStack.push("{"),++this.index;break;case".":++this.index,"."===this.source[this.index]&&"."===this.source[this.index+1]&&(this.index+=2,t="...");break;case"}":++this.index,this.curlyStack.pop();break;case")":case";":case",":case"[":case"]":case":":case"?":case"~":++this.index;break;default:">>>="===(t=this.source.substr(this.index,4))?this.index+=4:"==="===(t=t.substr(0,3))||"!=="===t||">>>"===t||"<<="===t||">>="===t||"**="===t?this.index+=3:"&&"===(t=t.substr(0,2))||"||"===t||"=="===t||"!="===t||"+="===t||"-="===t||"*="===t||"/="===t||"++"===t||"--"===t||"<<"===t||">>"===t||"&="===t||"|="===t||"^="===t||"%="===t||"<="===t||">="===t||"=>"===t||"**"===t?this.index+=2:(t=this.source[this.index],"<>=!+-*%&|^/".indexOf(t)>=0&&++this.index)}return this.index===e&&this.throwUnexpectedToken(),{type:7,value:t,lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}},e.prototype.scanHexLiteral=function(e){for(var t="";!this.eof()&&i.Character.isHexDigit(this.source.charCodeAt(this.index));)t+=this.source[this.index++];return 0===t.length&&this.throwUnexpectedToken(),i.Character.isIdentifierStart(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(),{type:6,value:parseInt("0x"+t,16),lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}},e.prototype.scanBinaryLiteral=function(e){for(var t,n="";!this.eof()&&("0"===(t=this.source[this.index])||"1"===t);)n+=this.source[this.index++];return 0===n.length&&this.throwUnexpectedToken(),this.eof()||(t=this.source.charCodeAt(this.index),(i.Character.isIdentifierStart(t)||i.Character.isDecimalDigit(t))&&this.throwUnexpectedToken()),{type:6,value:parseInt(n,2),lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}},e.prototype.scanOctalLiteral=function(e,t){var n="",r=!1;for(i.Character.isOctalDigit(e.charCodeAt(0))?(r=!0,n="0"+this.source[this.index++]):++this.index;!this.eof()&&i.Character.isOctalDigit(this.source.charCodeAt(this.index));)n+=this.source[this.index++];return r||0!==n.length||this.throwUnexpectedToken(),(i.Character.isIdentifierStart(this.source.charCodeAt(this.index))||i.Character.isDecimalDigit(this.source.charCodeAt(this.index)))&&this.throwUnexpectedToken(),{type:6,value:parseInt(n,8),octal:r,lineNumber:this.lineNumber,lineStart:this.lineStart,start:t,end:this.index}},e.prototype.isImplicitOctalLiteral=function(){for(var e=this.index+1;e<this.length;++e){var t=this.source[e];if("8"===t||"9"===t)return!1;if(!i.Character.isOctalDigit(t.charCodeAt(0)))return!0}return!0},e.prototype.scanNumericLiteral=function(){var e=this.index,t=this.source[e];r.assert(i.Character.isDecimalDigit(t.charCodeAt(0))||"."===t,"Numeric literal must start with a decimal digit or a decimal point");var n="";if("."!==t){if(n=this.source[this.index++],t=this.source[this.index],"0"===n){if("x"===t||"X"===t)return++this.index,this.scanHexLiteral(e);if("b"===t||"B"===t)return++this.index,this.scanBinaryLiteral(e);if("o"===t||"O"===t)return this.scanOctalLiteral(t,e);if(t&&i.Character.isOctalDigit(t.charCodeAt(0))&&this.isImplicitOctalLiteral())return this.scanOctalLiteral(t,e)}for(;i.Character.isDecimalDigit(this.source.charCodeAt(this.index));)n+=this.source[this.index++];t=this.source[this.index]}if("."===t){for(n+=this.source[this.index++];i.Character.isDecimalDigit(this.source.charCodeAt(this.index));)n+=this.source[this.index++];t=this.source[this.index]}if("e"===t||"E"===t)if(n+=this.source[this.index++],"+"!==(t=this.source[this.index])&&"-"!==t||(n+=this.source[this.index++]),i.Character.isDecimalDigit(this.source.charCodeAt(this.index)))for(;i.Character.isDecimalDigit(this.source.charCodeAt(this.index));)n+=this.source[this.index++];else this.throwUnexpectedToken();return i.Character.isIdentifierStart(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(),{type:6,value:parseFloat(n),lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}},e.prototype.scanStringLiteral=function(){var e=this.index,t=this.source[e];r.assert("'"===t||'"'===t,"String literal must starts with a quote"),++this.index;for(var n=!1,o="";!this.eof();){var a=this.source[this.index++];if(a===t){t="";break}if("\\"===a)if((a=this.source[this.index++])&&i.Character.isLineTerminator(a.charCodeAt(0)))++this.lineNumber,"\r"===a&&"\n"===this.source[this.index]&&++this.index,this.lineStart=this.index;else switch(a){case"u":if("{"===this.source[this.index])++this.index,o+=this.scanUnicodeCodePointEscape();else{var u=this.scanHexEscape(a);null===u&&this.throwUnexpectedToken(),o+=u}break;case"x":var l=this.scanHexEscape(a);null===l&&this.throwUnexpectedToken(s.Messages.InvalidHexEscapeSequence),o+=l;break;case"n":o+="\n";break;case"r":o+="\r";break;case"t":o+="\t";break;case"b":o+="\b";break;case"f":o+="\f";break;case"v":o+="\v";break;case"8":case"9":o+=a,this.tolerateUnexpectedToken();break;default:if(a&&i.Character.isOctalDigit(a.charCodeAt(0))){var c=this.octalToDecimal(a);n=c.octal||n,o+=String.fromCharCode(c.code)}else o+=a}else{if(i.Character.isLineTerminator(a.charCodeAt(0)))break;o+=a}}return""!==t&&(this.index=e,this.throwUnexpectedToken()),{type:8,value:o,octal:n,lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}},e.prototype.scanTemplate=function(){var e="",t=!1,n=this.index,r="`"===this.source[n],o=!1,a=2;for(++this.index;!this.eof();){var u=this.source[this.index++];if("`"===u){a=1,o=!0,t=!0;break}if("$"===u){if("{"===this.source[this.index]){this.curlyStack.push("${"),++this.index,t=!0;break}e+=u}else if("\\"===u)if(u=this.source[this.index++],i.Character.isLineTerminator(u.charCodeAt(0)))++this.lineNumber,"\r"===u&&"\n"===this.source[this.index]&&++this.index,this.lineStart=this.index;else switch(u){case"n":e+="\n";break;case"r":e+="\r";break;case"t":e+="\t";break;case"u":if("{"===this.source[this.index])++this.index,e+=this.scanUnicodeCodePointEscape();else{var l=this.index,c=this.scanHexEscape(u);null!==c?e+=c:(this.index=l,e+=u)}break;case"x":var h=this.scanHexEscape(u);null===h&&this.throwUnexpectedToken(s.Messages.InvalidHexEscapeSequence),e+=h;break;case"b":e+="\b";break;case"f":e+="\f";break;case"v":e+="\v";break;default:"0"===u?(i.Character.isDecimalDigit(this.source.charCodeAt(this.index))&&this.throwUnexpectedToken(s.Messages.TemplateOctalLiteral),e+="\0"):i.Character.isOctalDigit(u.charCodeAt(0))?this.throwUnexpectedToken(s.Messages.TemplateOctalLiteral):e+=u}else i.Character.isLineTerminator(u.charCodeAt(0))?(++this.lineNumber,"\r"===u&&"\n"===this.source[this.index]&&++this.index,this.lineStart=this.index,e+="\n"):e+=u}return t||this.throwUnexpectedToken(),r||this.curlyStack.pop(),{type:10,value:this.source.slice(n+1,this.index-a),cooked:e,head:r,tail:o,lineNumber:this.lineNumber,lineStart:this.lineStart,start:n,end:this.index}},e.prototype.testRegExp=function(e,t){var n=e,r=this;t.indexOf("u")>=0&&(n=n.replace(/\\u\{([0-9a-fA-F]+)\}|\\u([a-fA-F0-9]{4})/g,(function(e,t,n){var i=parseInt(t||n,16);return i>1114111&&r.throwUnexpectedToken(s.Messages.InvalidRegExp),i<=65535?String.fromCharCode(i):""})).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,""));try{RegExp(n)}catch(e){this.throwUnexpectedToken(s.Messages.InvalidRegExp)}try{return new RegExp(e,t)}catch(e){return null}},e.prototype.scanRegExpBody=function(){var e=this.source[this.index];r.assert("/"===e,"Regular expression literal must start with a slash");for(var t=this.source[this.index++],n=!1,o=!1;!this.eof();)if(t+=e=this.source[this.index++],"\\"===e)e=this.source[this.index++],i.Character.isLineTerminator(e.charCodeAt(0))&&this.throwUnexpectedToken(s.Messages.UnterminatedRegExp),t+=e;else if(i.Character.isLineTerminator(e.charCodeAt(0)))this.throwUnexpectedToken(s.Messages.UnterminatedRegExp);else if(n)"]"===e&&(n=!1);else{if("/"===e){o=!0;break}"["===e&&(n=!0)}return o||this.throwUnexpectedToken(s.Messages.UnterminatedRegExp),t.substr(1,t.length-2)},e.prototype.scanRegExpFlags=function(){for(var e="";!this.eof();){var t=this.source[this.index];if(!i.Character.isIdentifierPart(t.charCodeAt(0)))break;if(++this.index,"\\"!==t||this.eof())e+=t;else if("u"===(t=this.source[this.index])){++this.index;var n=this.index,r=this.scanHexEscape("u");if(null!==r)for(e+=r;n<this.index;++n)this.source[n];else this.index=n,e+="u";this.tolerateUnexpectedToken()}else this.tolerateUnexpectedToken()}return e},e.prototype.scanRegExp=function(){var e=this.index,t=this.scanRegExpBody(),n=this.scanRegExpFlags();return{type:9,value:"",pattern:t,flags:n,regex:this.testRegExp(t,n),lineNumber:this.lineNumber,lineStart:this.lineStart,start:e,end:this.index}},e.prototype.lex=function(){if(this.eof())return{type:2,value:"",lineNumber:this.lineNumber,lineStart:this.lineStart,start:this.index,end:this.index};var e=this.source.charCodeAt(this.index);return i.Character.isIdentifierStart(e)?this.scanIdentifier():40===e||41===e||59===e?this.scanPunctuator():39===e||34===e?this.scanStringLiteral():46===e?i.Character.isDecimalDigit(this.source.charCodeAt(this.index+1))?this.scanNumericLiteral():this.scanPunctuator():i.Character.isDecimalDigit(e)?this.scanNumericLiteral():96===e||125===e&&"${"===this.curlyStack[this.curlyStack.length-1]?this.scanTemplate():e>=55296&&e<57343&&i.Character.isIdentifierStart(this.codePointAt(this.index))?this.scanIdentifier():this.scanPunctuator()},e}();t.Scanner=u},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TokenName={},t.TokenName[1]="Boolean",t.TokenName[2]="<end>",t.TokenName[3]="Identifier",t.TokenName[4]="Keyword",t.TokenName[5]="Null",t.TokenName[6]="Numeric",t.TokenName[7]="Punctuator",t.TokenName[8]="String",t.TokenName[9]="RegularExpression",t.TokenName[10]="Template"},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.XHTMLEntities={quot:'"',amp:"&",apos:"'",gt:">",nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",times:"×",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",divide:"÷",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",fnof:"ƒ",circ:"ˆ",tilde:"˜",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",ensp:" ",emsp:" ",thinsp:" ",zwnj:"",zwj:"",lrm:"",rlm:"",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",bull:"•",hellip:"…",permil:"‰",prime:"′",Prime:"″",lsaquo:"‹",rsaquo:"›",oline:"‾",frasl:"⁄",euro:"€",image:"ℑ",weierp:"℘",real:"ℜ",trade:"™",alefsym:"ℵ",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lArr:"⇐",uArr:"⇑",rArr:"⇒",dArr:"⇓",hArr:"⇔",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦",lang:"⟨",rang:"⟩"}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(10),i=n(12),s=n(13),o=function(){function e(){this.values=[],this.curly=this.paren=-1}return e.prototype.beforeFunctionExpression=function(e){return["(","{","[","in","typeof","instanceof","new","return","case","delete","throw","void","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=",",","+","-","*","**","/","%","++","--","<<",">>",">>>","&","|","^","!","~","&&","||","?",":","===","==",">=","<=","<",">","!=","!=="].indexOf(e)>=0},e.prototype.isRegexStart=function(){var e=this.values[this.values.length-1],t=null!==e;switch(e){case"this":case"]":t=!1;break;case")":var n=this.values[this.paren-1];t="if"===n||"while"===n||"for"===n||"with"===n;break;case"}":if(t=!1,"function"===this.values[this.curly-3])t=!!(r=this.values[this.curly-4])&&!this.beforeFunctionExpression(r);else if("function"===this.values[this.curly-4]){var r;t=!(r=this.values[this.curly-5])||!this.beforeFunctionExpression(r)}}return t},e.prototype.push=function(e){7===e.type||4===e.type?("{"===e.value?this.curly=this.values.length:"("===e.value&&(this.paren=this.values.length),this.values.push(e.value)):this.values.push(null)},e}(),a=function(){function e(e,t){this.errorHandler=new r.ErrorHandler,this.errorHandler.tolerant=!!t&&"boolean"==typeof t.tolerant&&t.tolerant,this.scanner=new i.Scanner(e,this.errorHandler),this.scanner.trackComment=!!t&&"boolean"==typeof t.comment&&t.comment,this.trackRange=!!t&&"boolean"==typeof t.range&&t.range,this.trackLoc=!!t&&"boolean"==typeof t.loc&&t.loc,this.buffer=[],this.reader=new o}return e.prototype.errors=function(){return this.errorHandler.errors},e.prototype.getNextToken=function(){if(0===this.buffer.length){var e=this.scanner.scanComments();if(this.scanner.trackComment)for(var t=0;t<e.length;++t){var n=e[t],r=this.scanner.source.slice(n.slice[0],n.slice[1]),i={type:n.multiLine?"BlockComment":"LineComment",value:r};this.trackRange&&(i.range=n.range),this.trackLoc&&(i.loc=n.loc),this.buffer.push(i)}if(!this.scanner.eof()){var o=void 0;this.trackLoc&&(o={start:{line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart},end:{}});var a="/"===this.scanner.source[this.scanner.index]&&this.reader.isRegexStart()?this.scanner.scanRegExp():this.scanner.lex();this.reader.push(a);var u={type:s.TokenName[a.type],value:this.scanner.source.slice(a.start,a.end)};if(this.trackRange&&(u.range=[a.start,a.end]),this.trackLoc&&(o.end={line:this.scanner.lineNumber,column:this.scanner.index-this.scanner.lineStart},u.loc=o),9===a.type){var l=a.pattern,c=a.flags;u.regex={pattern:l,flags:c}}this.buffer.push(u)}}return this.buffer.shift()},e}();t.Tokenizer=a}])},e.exports=r()},function(e,t,n){"use strict";var r=n(15),i=n(25),s=n(36),o=n(26),a=Object.prototype.toString,u=Object.prototype.hasOwnProperty,l={0:"\\0",7:"\\a",8:"\\b",9:"\\t",10:"\\n",11:"\\v",12:"\\f",13:"\\r",27:"\\e",34:'\\"',92:"\\\\",133:"\\N",160:"\\_",8232:"\\L",8233:"\\P"},c=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function h(e){var t,n,s;if(t=e.toString(16).toUpperCase(),e<=255)n="x",s=2;else if(e<=65535)n="u",s=4;else{if(!(e<=4294967295))throw new i("code point within a string may not be greater than 0xFFFFFFFF");n="U",s=8}return"\\"+n+r.repeat("0",s-t.length)+t}function d(e){this.schema=e.schema||s,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=r.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=function(e,t){var n,r,i,s,o,a,l;if(null===t)return{};for(n={},i=0,s=(r=Object.keys(t)).length;i<s;i+=1)o=r[i],a=String(t[o]),"!!"===o.slice(0,2)&&(o="tag:yaml.org,2002:"+o.slice(2)),(l=e.compiledTypeMap.fallback[o])&&u.call(l.styleAliases,a)&&(a=l.styleAliases[a]),n[o]=a;return n}(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function p(e,t){for(var n,i=r.repeat(" ",t),s=0,o=-1,a="",u=e.length;s<u;)-1===(o=e.indexOf("\n",s))?(n=e.slice(s),s=u):(n=e.slice(s,o+1),s=o+1),n.length&&"\n"!==n&&(a+=i),a+=n;return a}function f(e,t){return"\n"+r.repeat(" ",e.indent*t)}function m(e){return 32===e||9===e}function w(e){return 32<=e&&e<=126||161<=e&&e<=55295&&8232!==e&&8233!==e||57344<=e&&e<=65533&&65279!==e||65536<=e&&e<=1114111}function g(e){return w(e)&&65279!==e&&44!==e&&91!==e&&93!==e&&123!==e&&125!==e&&58!==e&&35!==e}function _(e){return/^\n* /.test(e)}function b(e,t,n,r,i){var s,o,a,u=!1,l=!1,c=-1!==r,h=-1,d=w(a=e.charCodeAt(0))&&65279!==a&&!m(a)&&45!==a&&63!==a&&58!==a&&44!==a&&91!==a&&93!==a&&123!==a&&125!==a&&35!==a&&38!==a&&42!==a&&33!==a&&124!==a&&62!==a&&39!==a&&34!==a&&37!==a&&64!==a&&96!==a&&!m(e.charCodeAt(e.length-1));if(t)for(s=0;s<e.length;s++){if(!w(o=e.charCodeAt(s)))return 5;d=d&&g(o)}else{for(s=0;s<e.length;s++){if(10===(o=e.charCodeAt(s)))u=!0,c&&(l=l||s-h-1>r&&" "!==e[h+1],h=s);else if(!w(o))return 5;d=d&&g(o)}l=l||c&&s-h-1>r&&" "!==e[h+1]}return u||l?n>9&&_(e)?5:l?4:3:d&&!i(e)?1:2}function y(e,t,n,r){e.dump=function(){if(0===t.length)return"''";if(!e.noCompatMode&&-1!==c.indexOf(t))return"'"+t+"'";var s=e.indent*Math.max(1,n),o=-1===e.lineWidth?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-s),a=r||e.flowLevel>-1&&n>=e.flowLevel;switch(b(t,a,e.indent,o,(function(t){return function(e,t){var n,r;for(n=0,r=e.implicitTypes.length;n<r;n+=1)if(e.implicitTypes[n].resolve(t))return!0;return!1}(e,t)}))){case 1:return t;case 2:return"'"+t.replace(/'/g,"''")+"'";case 3:return"|"+v(t,e.indent)+E(p(t,s));case 4:return">"+v(t,e.indent)+E(p(function(e,t){var n,r,i=/(\n+)([^\n]*)/g,s=(a=e.indexOf("\n"),a=-1!==a?a:e.length,i.lastIndex=a,A(e.slice(0,a),t)),o="\n"===e[0]||" "===e[0];var a;for(;r=i.exec(e);){var u=r[1],l=r[2];n=" "===l[0],s+=u+(o||n||""===l?"":"\n")+A(l,t),o=n}return s}(t,o),s));case 5:return'"'+function(e){for(var t,n,r,i="",s=0;s<e.length;s++)(t=e.charCodeAt(s))>=55296&&t<=56319&&(n=e.charCodeAt(s+1))>=56320&&n<=57343?(i+=h(1024*(t-55296)+n-56320+65536),s++):(r=l[t],i+=!r&&w(t)?e[s]:r||h(t));return i}(t)+'"';default:throw new i("impossible error: invalid scalar style")}}()}function v(e,t){var n=_(e)?String(t):"",r="\n"===e[e.length-1];return n+(r&&("\n"===e[e.length-2]||"\n"===e)?"+":r?"":"-")+"\n"}function E(e){return"\n"===e[e.length-1]?e.slice(0,-1):e}function A(e,t){if(""===e||" "===e[0])return e;for(var n,r,i=/ [^ ]/g,s=0,o=0,a=0,u="";n=i.exec(e);)(a=n.index)-s>t&&(r=o>s?o:a,u+="\n"+e.slice(s,r),s=r+1),o=a;return u+="\n",e.length-s>t&&o>s?u+=e.slice(s,o)+"\n"+e.slice(o+1):u+=e.slice(s),u.slice(1)}function x(e,t,n){var r,s,o,l,c,h;for(o=0,l=(s=n?e.explicitTypes:e.implicitTypes).length;o<l;o+=1)if(((c=s[o]).instanceOf||c.predicate)&&(!c.instanceOf||"object"==typeof t&&t instanceof c.instanceOf)&&(!c.predicate||c.predicate(t))){if(e.tag=n?c.tag:"?",c.represent){if(h=e.styleMap[c.tag]||c.defaultStyle,"[object Function]"===a.call(c.represent))r=c.represent(t,h);else{if(!u.call(c.represent,h))throw new i("!<"+c.tag+'> tag resolver accepts not "'+h+'" style');r=c.represent[h](t,h)}e.dump=r}return!0}return!1}function T(e,t,n,r,s,o){e.tag=null,e.dump=n,x(e,n,!1)||x(e,n,!0);var u=a.call(e.dump);r&&(r=e.flowLevel<0||e.flowLevel>t);var l,c,h="[object Object]"===u||"[object Array]"===u;if(h&&(c=-1!==(l=e.duplicates.indexOf(n))),(null!==e.tag&&"?"!==e.tag||c||2!==e.indent&&t>0)&&(s=!1),c&&e.usedDuplicates[l])e.dump="*ref_"+l;else{if(h&&c&&!e.usedDuplicates[l]&&(e.usedDuplicates[l]=!0),"[object Object]"===u)r&&0!==Object.keys(e.dump).length?(!function(e,t,n,r){var s,o,a,u,l,c,h="",d=e.tag,p=Object.keys(n);if(!0===e.sortKeys)p.sort();else if("function"==typeof e.sortKeys)p.sort(e.sortKeys);else if(e.sortKeys)throw new i("sortKeys must be a boolean or a function");for(s=0,o=p.length;s<o;s+=1)c="",r&&0===s||(c+=f(e,t)),u=n[a=p[s]],T(e,t+1,a,!0,!0,!0)&&((l=null!==e.tag&&"?"!==e.tag||e.dump&&e.dump.length>1024)&&(e.dump&&10===e.dump.charCodeAt(0)?c+="?":c+="? "),c+=e.dump,l&&(c+=f(e,t)),T(e,t+1,u,!0,l)&&(e.dump&&10===e.dump.charCodeAt(0)?c+=":":c+=": ",h+=c+=e.dump));e.tag=d,e.dump=h||"{}"}(e,t,e.dump,s),c&&(e.dump="&ref_"+l+e.dump)):(!function(e,t,n){var r,i,s,o,a,u="",l=e.tag,c=Object.keys(n);for(r=0,i=c.length;r<i;r+=1)a=e.condenseFlow?'"':"",0!==r&&(a+=", "),o=n[s=c[r]],T(e,t,s,!1,!1)&&(e.dump.length>1024&&(a+="? "),a+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),T(e,t,o,!1,!1)&&(u+=a+=e.dump));e.tag=l,e.dump="{"+u+"}"}(e,t,e.dump),c&&(e.dump="&ref_"+l+" "+e.dump));else if("[object Array]"===u){var d=e.noArrayIndent&&t>0?t-1:t;r&&0!==e.dump.length?(!function(e,t,n,r){var i,s,o="",a=e.tag;for(i=0,s=n.length;i<s;i+=1)T(e,t+1,n[i],!0,!0)&&(r&&0===i||(o+=f(e,t)),e.dump&&10===e.dump.charCodeAt(0)?o+="-":o+="- ",o+=e.dump);e.tag=a,e.dump=o||"[]"}(e,d,e.dump,s),c&&(e.dump="&ref_"+l+e.dump)):(!function(e,t,n){var r,i,s="",o=e.tag;for(r=0,i=n.length;r<i;r+=1)T(e,t,n[r],!1,!1)&&(0!==r&&(s+=","+(e.condenseFlow?"":" ")),s+=e.dump);e.tag=o,e.dump="["+s+"]"}(e,d,e.dump),c&&(e.dump="&ref_"+l+" "+e.dump))}else{if("[object String]"!==u){if(e.skipInvalid)return!1;throw new i("unacceptable kind of an object to dump "+u)}"?"!==e.tag&&y(e,e.dump,t,o)}null!==e.tag&&"?"!==e.tag&&(e.dump="!<"+e.tag+"> "+e.dump)}return!0}function S(e,t){var n,r,i=[],s=[];for(function e(t,n,r){var i,s,o;if(null!==t&&"object"==typeof t)if(-1!==(s=n.indexOf(t)))-1===r.indexOf(s)&&r.push(s);else if(n.push(t),Array.isArray(t))for(s=0,o=t.length;s<o;s+=1)e(t[s],n,r);else for(i=Object.keys(t),s=0,o=i.length;s<o;s+=1)e(t[i[s]],n,r)}(e,i,s),n=0,r=s.length;n<r;n+=1)t.duplicates.push(i[s[n]]);t.usedDuplicates=new Array(r)}function C(e,t){var n=new d(t=t||{});return n.noRefs||S(e,n),T(n,0,e,!0,!0)?n.dump+"\n":""}e.exports.dump=C,e.exports.safeDump=function(e,t){return C(e,r.extend({schema:o},t))}},function(e,t,n){"use strict";let r=n(51),i=n(205),s=n(52),o=n(53);e.exports={Json2Csv:function(e){const t=new RegExp(e.delimiter.wrap,"g"),n=/\r?\n|\r/,a=e.expandArrayObjects&&!e.unwindArrays,u={expandArrayObjects:a,ignoreEmptyArraysWhenExpanding:a};function l(t){if(e.checkSchemaDifferences)return function(e){let t=e[0],n=e.slice(1);if(function(e,t){return t.reduce((t,n)=>o.computeSchemaDifferences(e,n).length>0?t+1:t,0)}(t,n))return Promise.reject(new Error(s.errors.json2csv.notSameSchema));return Promise.resolve(t)}(t);{let e=o.unique(o.flatten(t));return Promise.resolve(e)}}function c(t){return e.sortHeader?t.sort():t}function h(t){return e.trimHeaderFields&&(t.headerFields=t.headerFields.map(e=>e.split(".").map(e=>e.trim()).join("."))),t}function d(t){return e.prependHeader&&(t.headerFields=t.headerFields.map((function(e){return _(e)}))),t}function p(t){return t.header=t.headerFields.join(e.delimiter.field),t}function f(t){return e.keys&&!e.unwindArrays?Promise.resolve(e.keys).then(c):function(e){return Promise.resolve(i.deepKeysFromList(e,u))}(t).then(l).then(c)}function m(t){if(e.unwindArrays){const n=t.records.length;return t.headerFields.forEach(e=>{t.records=o.unwind(t.records,e)}),f(t.records).then(r=>(t.headerFields=r,n!==t.records.length?m(t):(e.keys&&(t.headerFields=e.keys),t)))}return t}function w(t){return t.records=t.records.map(n=>{let i=function(t,n){let i=[];return n.forEach(n=>{let s=r.evaluatePath(t,n);!o.isUndefined(e.emptyFieldValue)&&o.isEmptyField(s)?s=e.emptyFieldValue:e.expandArrayObjects&&Array.isArray(s)&&(s=function(t){let n=o.removeEmptyFields(t);if(!t.length||!n.length)return e.emptyFieldValue||"";if(1===n.length)return n[0];return t}(s)),i.push(s)}),i}(n,t.headerFields).map(t=>t=_(t=function(t){return Array.isArray(t)||o.isObject(t)&&!o.isDate(t)?JSON.stringify(t):o.isUndefined(t)?"undefined":o.isNull(t)?"null":e.useLocaleFormat?t.toLocaleString():t.toString()}(t=g(t))));return i.join(e.delimiter.field)}).join(e.delimiter.eol),t}function g(t){return e.trimFieldValues?Array.isArray(t)?t.map(g):o.isString(t)?t.trim():t:t}function _(r){const i=e.delimiter.wrap;return r.includes(e.delimiter.wrap)&&(r=r.replace(t,i+i)),(r.includes(e.delimiter.field)||r.includes(e.delimiter.wrap)||r.match(n))&&(r=i+r+i),r}function b(t){let n=t.header,r=t.records,i=(e.excelBOM?s.values.excelBOM:"")+(e.prependHeader?n+e.delimiter.eol:"")+r;return t.callback(null,i)}return{convert:function(e,t){o.isObject(e)&&!e.length&&(e=[e]),f(e).then(n=>({headerFields:n,callback:t,records:e})).then(m).then(w).then(d).then(h).then(p).then(b).catch(t)},validationFn:o.isObject,validationMessages:s.errors.json2csv}}}},function(e,t,n){"use strict";const r=n(206);function i(e,t){return t=a(t),r.isObject(e)?function e(t,n,i){let a=Object.keys(n).map(a=>{let u=o(t,a);return l=n[a],r.isObject(l)&&!r.isNull(l)&&!Array.isArray(l)&&Object.keys(l).length?e(u,n[a],i):i.expandArrayObjects&&function(e){return Array.isArray(e)}(n[a])?function(e,t,n){let i=s(e);return e.length?e.length&&0===r.flatten(i).length?[t]:(i=i.map(e=>{return n=e,Array.isArray(n)&&!n.length?[t]:e.map(e=>o(t,e));var n}),r.unique(r.flatten(i))):n.ignoreEmptyArraysWhenExpanding?[]:[t]}(n[a],a,i):u;var l});return r.flatten(a)}("",e,t):[]}function s(e,t){return t=a(t),e.map(e=>r.isObject(e)?i(e,t):[])}function o(e,t){return e?e+"."+t:t}function a(e){return{expandArrayObjects:!1,ignoreEmptyArraysWhenExpanding:!1,...e||{}}}e.exports={deepKeys:i,deepKeysFromList:s}},function(e,t,n){"use strict";e.exports={isString:function(e){return"string"==typeof e},isNull:function(e){return null===e},isError:function(e){return"[object Error]"===Object.prototype.toString.call(e)},isDate:function(e){return e instanceof Date},isFunction:function(e){return"function"==typeof e},isUndefined:function(e){return void 0===e},isObject:function(e){return"object"==typeof e},unique:function(e){return[...new Set(e)]},flatten:function(e){return[].concat(...e)}}},function(e,t,n){"use strict";let r=n(51),i=n(52),s=n(53);e.exports={Csv2Json:function(e){const t=new RegExp(e.delimiter.wrap+e.delimiter.wrap,"g"),n=new RegExp("^"+i.values.excelBOM);function o(t){return t=d(t),e.trimHeaderFields?t.split(".").map(e=>e.trim()).join("."):t}function a(t){let n={lines:t},r=n.lines[0];return n.headerFields=r.map((e,t)=>({value:o(e),index:t})),e.keys&&(n.headerFields=n.headerFields.filter(t=>e.keys.includes(t.value))),n}function u(t){return Promise.resolve(function(t){let n,r,i,o,a=[],u=[],l=t.length-1,c=e.delimiter.eol.length,h={insideWrapDelimiter:!1,parsingValue:!0,justParsedDoubleQuote:!1,startIndex:0},d=0;for(;d<t.length;){if(n=t[d],r=d?t[d-1]:"",i=d<l?t[d+1]:"",o=s.getNCharacters(t,d,c),(o!==e.delimiter.eol||h.insideWrapDelimiter)&&d!==l||r!==e.delimiter.field)if(d===l||o===e.delimiter.eol&&(!h.insideWrapDelimiter||h.insideWrapDelimiter&&r===e.delimiter.wrap&&!h.justParsedDoubleQuote)){let n=d!==l||r===e.delimiter.wrap?d:void 0;u.push(t.substring(h.startIndex,n)),a.push(u),u=[],h.startIndex=d+c,h.parsingValue=!0,h.insideWrapDelimiter=i===e.delimiter.wrap}else if((r!==e.delimiter.wrap||h.justParsedDoubleQuote&&r===e.delimiter.wrap)&&n===e.delimiter.wrap&&s.getNCharacters(t,d+1,c)===e.delimiter.eol)h.insideWrapDelimiter=!1,h.parsingValue=!1;else if(n!==e.delimiter.wrap||0!==d&&s.getNCharacters(t,d-1,c)!==e.delimiter.eol)if(n===e.delimiter.wrap&&i===e.delimiter.field)u.push(t.substring(h.startIndex,d+1)),h.startIndex=d+2,h.insideWrapDelimiter=!1,h.parsingValue=!1;else if(n!==e.delimiter.wrap||r!==e.delimiter.field||h.insideWrapDelimiter||h.parsingValue)if(n===e.delimiter.wrap&&r===e.delimiter.field&&!h.insideWrapDelimiter&&h.parsingValue)u.push(t.substring(h.startIndex,d-1)),h.insideWrapDelimiter=!0,h.parsingValue=!0,h.startIndex=d;else{if(n===e.delimiter.wrap&&i===e.delimiter.wrap){d+=2,h.justParsedDoubleQuote=!0;continue}n===e.delimiter.field&&r!==e.delimiter.wrap&&i!==e.delimiter.wrap&&!h.insideWrapDelimiter&&h.parsingValue?(u.push(t.substring(h.startIndex,d)),h.startIndex=d+1):n!==e.delimiter.field||r!==e.delimiter.wrap||i===e.delimiter.wrap||h.parsingValue||(h.insideWrapDelimiter=!1,h.parsingValue=!0,h.startIndex=d+1)}else h.startIndex=d,h.insideWrapDelimiter=!0,h.parsingValue=!0;else h.insideWrapDelimiter=!0,h.parsingValue=!0,h.startIndex=d;else{let n=o===e.delimiter.eol&&h.startIndex===d?"":t.substr(h.startIndex);u.push(n),u.push(""),a.push(u),u=[],h.startIndex=d+c,h.parsingValue=!0,h.insideWrapDelimiter=i===e.delimiter.wrap}d++,h.justParsedDoubleQuote=!1}return a}(t))}function l(e){return e.recordLines=e.lines.splice(1),e}function c(t,n){return function(t){let n=function(t){try{if(s.isStringRepresentation(t,e)&&!s.isDateRepresentation(t))return t;let n=JSON.parse(t);return Array.isArray(n)?n.map(h):n}catch(e){return e}}(t);s.isError(n)||s.isInvalid(n)?"undefined"===t&&(t=void 0):t=n;return t}(t[n.index])}function h(t){return e.trimFieldValues&&!s.isNull(t)?t.trim():t}function d(t){let n=t[0],r=t.length-1,i=t[r];return n===e.delimiter.wrap&&i===e.delimiter.wrap?t.substr(1,r-1):t}function p(n){return n.json=n.recordLines.reduce((i,s)=>{s=s.map(n=>n=h(n=function(n){return n.replace(t,e.delimiter.wrap)}(n=d(n))));let o=function(e,t){return e.reduce((e,n)=>{let i=c(t,n);return r.setPath(e,n.value,i)},{})}(n.headerFields,s);return i.concat(o)},[]),n}return{convert:function(t,r){var i;(i=t,e.excelBOM?Promise.resolve(i.replace(n,"")):Promise.resolve(i)).then(u).then(a).then(l).then(p).then(e=>r(null,e.json)).catch(r)},validationFn:s.isString,validationMessages:i.errors.csv2json}}}},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0});const r=n(92);t.Bundle=class{constructor(e){this.sections={},this.responses={};const t=o(r.decode(e));if(6!==t.length)throw new Error("Wrong toplevel structure");const[n,c,h,d,p,f]=t;if("🌐📦"!==l(n))throw new Error("Wrong magic");this.version=l(c).replace(/\0+$/,""),this.primaryURL=a(h);const m=o(r.decode(u(d))),w=o(p);if(m.length!==2*w.length)throw new Error("Number of elements in section-lengths and in sections don't match");for(let e=0;e<w.length;e++)this.sections[a(m[2*e])]=w[e];const g=o(this.sections.responses);let _=s(g.length);for(const e of g)this.responses[_]=new i(o(e)),_+=s(e)}get manifestURL(){return this.sections.manifest?a(this.sections.manifest):null}get urls(){return Object.keys(this.indexSection)}getResponse(e){const t=o(this.indexSection[e]);if(!t)throw new Error("No entry for "+e);const[n,r,i]=t;if(0!==u(n).length)throw new Error("Variants are not supported");if(3!==t.length)throw new Error("Unexpected length of index entry for "+e);const s=this.responses[function(e){if("number"==typeof e)return e;throw new Error("Number expected, but got "+typeof e)}(r)];if(!s)throw new Error(`Response for ${e} is not found (broken index)`);return s}get indexSection(){return function(e){if("object"==typeof e&&null!==e&&!(e instanceof Array))return e;throw new Error("Map expected, but got "+typeof e)}(this.sections.index)}};class i{constructor(e){if(2!==e.length)throw new Error("Wrong response structure");const{status:t,headers:n}=function(e){const t=r.decode(e);if(!(t instanceof Map))throw new Error("Wrong header map structure");let n=null;const i={};for(let[e,r]of t.entries())if(e=l(e),r=l(r),":status"===e)n=Number(r);else{if(e.startsWith(":"))throw new Error("Unknown psuedo header "+e);i[e]=r}if(!n)throw new Error("No :status in response header map");return{status:n,headers:i}}(u(e[0]));this.status=t,this.headers=n,this.body=u(e[1])}}function s(e){return r.encode(e).byteLength}function o(e){if(e instanceof Array)return e;throw new Error("Array expected, but got "+typeof e)}function a(e){if("string"==typeof e)return e;throw new Error("String expected, but got "+typeof e)}function u(t){if(t instanceof e)return t;throw new Error("Bytestring expected, but got "+typeof t)}function l(t){if(!(t instanceof e))throw new Error("Bytestring expected");return t.toString("utf-8")}t.Response=i}).call(this,n(3).Buffer)},function(e,t,n){"use strict";(function(t){const r=n(4),i=n(27),s=(n(17),n(28),n(37)),o=n(12),a=n(18).BigNumber,u=n(29),l=o.MT,c=o.NUMBYTES,h=o.SYMS;function d(e){return e>1?"s":""}class p extends r.Transform{constructor(e){const t=Object.assign({max_depth:10},e,{readableObjectMode:!1,writableObjectMode:!1}),n=t.max_depth;delete t.max_depth,super(t),this.depth=1,this.max_depth=n,this.all=new u,this.parser=new s(t),this.parser.on("value",this._on_value.bind(this)),this.parser.on("start",this._on_start.bind(this)),this.parser.on("start-string",this._on_start_string.bind(this)),this.parser.on("stop",this._on_stop.bind(this)),this.parser.on("more-bytes",this._on_more.bind(this)),this.parser.on("error",this._on_error.bind(this)),this.parser.on("data",this._on_data.bind(this)),this.parser.bs.on("read",this._on_read.bind(this))}_transform(e,t,n){this.parser.write(e,t,n)}_flush(e){return this.parser._flush(e)}static comment(e,t,n){if(null==e)throw new Error("input required");let r="string"==typeof e?"hex":void 0,i=10;switch(typeof t){case"function":n=t;break;case"string":r=t;break;case"number":i=t;break;case"object":const e=t.encoding,s=t.max_depth;r=null!=e?e:r,i=null!=s?s:i;break;case"undefined":break;default:throw new Error("Unknown option type")}const s=new u,o=new p({max_depth:i});let a=null;return"function"==typeof n?(o.on("end",()=>{n(null,s.toString("utf8"))}),o.on("error",n)):a=new Promise((e,t)=>(o.on("end",()=>{e(s.toString("utf8"))}),o.on("error",t))),o.pipe(s),o.end(e,r),a}_on_error(e){return this.push("ERROR: ")&&this.push(e.toString())&&this.push("\n")}_on_read(e){this.all.write(e);const t=e.toString("hex");this.push(new Array(this.depth+1).join(" ")),this.push(t);let n=2*(this.max_depth-this.depth);return n-=t.length,n<1&&(n=1),this.push(new Array(n+1).join(" ")),this.push("-- ")}_on_more(e,t,n,r){this.depth++;let i="";switch(e){case l.POS_INT:i="Positive number,";break;case l.NEG_INT:i="Negative number,";break;case l.ARRAY:i="Array, length";break;case l.MAP:i="Map, count";break;case l.BYTE_STRING:i="Bytes, length";break;case l.UTF8_STRING:i="String, length";break;case l.SIMPLE_FLOAT:i=1===t?"Simple value,":"Float,"}return this.push(i+" next "+t+" byte"+d(t)+"\n")}_on_start_string(e,t,n,r){this.depth++;let i="";switch(e){case l.BYTE_STRING:i="Bytes, length: "+t;break;case l.UTF8_STRING:i="String, length: "+t.toString()}return this.push(i+"\n")}_on_start(e,t,n,r){if(this.depth++,t!==h.BREAK)switch(n){case l.ARRAY:this.push(`[${r}], `);break;case l.MAP:r%2?this.push(`{Val:${Math.floor(r/2)}}, `):this.push(`{Key:${Math.floor(r/2)}}, `)}switch(e){case l.TAG:this.push("Tag #"+t);break;case l.ARRAY:t===h.STREAM?this.push("Array (streaming)"):this.push(`Array, ${t} item${d(t)}`);break;case l.MAP:t===h.STREAM?this.push("Map (streaming)"):this.push(`Map, ${t} pair${d(t)}`);break;case l.BYTE_STRING:this.push("Bytes (streaming)");break;case l.UTF8_STRING:this.push("String (streaming)")}return this.push("\n")}_on_stop(e){return this.depth--}_on_value(e,n,r,s){if(e!==h.BREAK)switch(n){case l.ARRAY:this.push(`[${r}], `);break;case l.MAP:r%2?this.push(`{Val:${Math.floor(r/2)}}, `):this.push(`{Key:${Math.floor(r/2)}}, `)}switch(e===h.BREAK?this.push("BREAK\n"):e===h.NULL?this.push("null\n"):e===h.UNDEFINED?this.push("undefined\n"):"string"==typeof e?(this.depth--,e.length>0&&(this.push(JSON.stringify(e)),this.push("\n"))):t.isBuffer(e)?(this.depth--,e.length>0&&(this.push(e.toString("hex")),this.push("\n"))):e instanceof a?(this.push(e.toString()),this.push("\n")):(this.push(i.inspect(e)),this.push("\n")),s){case c.ONE:case c.TWO:case c.FOUR:case c.EIGHT:this.depth--}}_on_data(){return this.push("0x"),this.push(this.all.read().toString("hex")),this.push("\n")}}e.exports=p}).call(this,n(3).Buffer)},function(e,t){e.exports=function(e){return e&&"object"==typeof e&&"function"==typeof e.copy&&"function"==typeof e.fill&&"function"==typeof e.readUInt8}},function(e,t){"function"==typeof Object.create?e.exports=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:e.exports=function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}},function(e,t,n){"use strict";const r=n(4),i=n(29),s=r.Transform;e.exports=class extends s{constructor(e){super(e),this._writableState.objectMode=!1,this._readableState.objectMode=!0,this.bs=new i,this.__restart()}_transform(e,t,n){for(this.bs.write(e);this.bs.length>=this.__needed;){let e;const t=null===this.__needed?void 0:this.bs.read(this.__needed);try{e=this.__parser.next(t)}catch(e){return n(e)}this.__needed&&(this.__fresh=!1),e.done?(this.push(e.value),this.__restart()):this.__needed=e.value||0}return n()}*_parse(){throw new Error("Must be implemented in subclass")}__restart(){this.__needed=null,this.__parser=this._parse(),this.__fresh=!0}_flush(e){e(this.__fresh?null:new Error("unexpected end of input"))}}},function(e,t,n){(function(e,r){var i;/*! https://mths.be/punycode v1.4.1 by @mathias */!function(s){t&&t.nodeType,e&&e.nodeType;var o="object"==typeof r&&r;o.global!==o&&o.window!==o&&o.self;var a,u=2147483647,l=/^xn--/,c=/[^\x20-\x7E]/,h=/[\x2E\u3002\uFF0E\uFF61]/g,d={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},p=Math.floor,f=String.fromCharCode;function m(e){throw new RangeError(d[e])}function w(e,t){for(var n=e.length,r=[];n--;)r[n]=t(e[n]);return r}function g(e,t){var n=e.split("@"),r="";return n.length>1&&(r=n[0]+"@",e=n[1]),r+w((e=e.replace(h,".")).split("."),t).join(".")}function _(e){for(var t,n,r=[],i=0,s=e.length;i<s;)(t=e.charCodeAt(i++))>=55296&&t<=56319&&i<s?56320==(64512&(n=e.charCodeAt(i++)))?r.push(((1023&t)<<10)+(1023&n)+65536):(r.push(t),i--):r.push(t);return r}function b(e){return w(e,(function(e){var t="";return e>65535&&(t+=f((e-=65536)>>>10&1023|55296),e=56320|1023&e),t+=f(e)})).join("")}function y(e,t){return e+22+75*(e<26)-((0!=t)<<5)}function v(e,t,n){var r=0;for(e=n?p(e/700):e>>1,e+=p(e/t);e>455;r+=36)e=p(e/35);return p(r+36*e/(e+38))}function E(e){var t,n,r,i,s,o,a,l,c,h,d,f=[],w=e.length,g=0,_=128,y=72;for((n=e.lastIndexOf("-"))<0&&(n=0),r=0;r<n;++r)e.charCodeAt(r)>=128&&m("not-basic"),f.push(e.charCodeAt(r));for(i=n>0?n+1:0;i<w;){for(s=g,o=1,a=36;i>=w&&m("invalid-input"),((l=(d=e.charCodeAt(i++))-48<10?d-22:d-65<26?d-65:d-97<26?d-97:36)>=36||l>p((u-g)/o))&&m("overflow"),g+=l*o,!(l<(c=a<=y?1:a>=y+26?26:a-y));a+=36)o>p(u/(h=36-c))&&m("overflow"),o*=h;y=v(g-s,t=f.length+1,0==s),p(g/t)>u-_&&m("overflow"),_+=p(g/t),g%=t,f.splice(g++,0,_)}return b(f)}function A(e){var t,n,r,i,s,o,a,l,c,h,d,w,g,b,E,A=[];for(w=(e=_(e)).length,t=128,n=0,s=72,o=0;o<w;++o)(d=e[o])<128&&A.push(f(d));for(r=i=A.length,i&&A.push("-");r<w;){for(a=u,o=0;o<w;++o)(d=e[o])>=t&&d<a&&(a=d);for(a-t>p((u-n)/(g=r+1))&&m("overflow"),n+=(a-t)*g,t=a,o=0;o<w;++o)if((d=e[o])<t&&++n>u&&m("overflow"),d==t){for(l=n,c=36;!(l<(h=c<=s?1:c>=s+26?26:c-s));c+=36)E=l-h,b=36-h,A.push(f(y(h+E%b,0))),l=p(E/b);A.push(f(y(l,0))),s=v(n,g,r==i),n=0,++r}++n,++t}return A.join("")}a={version:"1.4.1",ucs2:{decode:_,encode:b},decode:E,encode:A,toASCII:function(e){return g(e,(function(e){return c.test(e)?"xn--"+A(e):e}))},toUnicode:function(e){return g(e,(function(e){return l.test(e)?E(e.slice(4).toLowerCase()):e}))}},void 0===(i=function(){return a}.call(t,n,t,e))||(e.exports=i)}()}).call(this,n(214)(e),n(6))},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){"use strict";e.exports={isString:function(e){return"string"==typeof e},isObject:function(e){return"object"==typeof e&&null!==e},isNull:function(e){return null===e},isNullOrUndefined:function(e){return null==e}}},function(e,t,n){"use strict";t.decode=t.parse=n(217),t.encode=t.stringify=n(218)},function(e,t,n){"use strict";function r(e,t){return Object.prototype.hasOwnProperty.call(e,t)}e.exports=function(e,t,n,s){t=t||"&",n=n||"=";var o={};if("string"!=typeof e||0===e.length)return o;var a=/\+/g;e=e.split(t);var u=1e3;s&&"number"==typeof s.maxKeys&&(u=s.maxKeys);var l=e.length;u>0&&l>u&&(l=u);for(var c=0;c<l;++c){var h,d,p,f,m=e[c].replace(a,"%20"),w=m.indexOf(n);w>=0?(h=m.substr(0,w),d=m.substr(w+1)):(h=m,d=""),p=decodeURIComponent(h),f=decodeURIComponent(d),r(o,p)?i(o[p])?o[p].push(f):o[p]=[o[p],f]:o[p]=f}return o};var i=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)}},function(e,t,n){"use strict";var r=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}};e.exports=function(e,t,n,a){return t=t||"&",n=n||"=",null===e&&(e=void 0),"object"==typeof e?s(o(e),(function(o){var a=encodeURIComponent(r(o))+n;return i(e[o])?s(e[o],(function(e){return a+encodeURIComponent(r(e))})).join(t):a+encodeURIComponent(r(e[o]))})).join(t):a?encodeURIComponent(r(a))+n+encodeURIComponent(r(e)):""};var i=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)};function s(e,t){if(e.map)return e.map(t);for(var n=[],r=0;r<e.length;r++)n.push(t(e[r],r));return n}var o=Object.keys||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.push(n);return t}},function(e,t,n){"use strict";(function(t){const r=n(4),i=n(27),s=n(37),o=(n(28),n(17)),a=n(12),u=n(18).BigNumber,l=n(29),c=a.MT,h=a.SYMS;class d extends r.Transform{constructor(e){const t=Object.assign({separator:"\n",stream_errors:!1},e,{readableObjectMode:!1,writableObjectMode:!1}),n=t.separator;delete t.separator;const r=t.stream_errors;delete t.stream_errors,super(t),this.float_bytes=-1,this.separator=n,this.stream_errors=r,this.parser=new s(t),this.parser.on("more-bytes",this._on_more.bind(this)),this.parser.on("value",this._on_value.bind(this)),this.parser.on("start",this._on_start.bind(this)),this.parser.on("stop",this._on_stop.bind(this)),this.parser.on("data",this._on_data.bind(this)),this.parser.on("error",this._on_error.bind(this))}_transform(e,t,n){return this.parser.write(e,t,n)}_flush(e){return this.parser._flush(t=>this.stream_errors?(t&&this._on_error(t),e()):e(t))}static diagnose(e,t,n){if(null==e)throw new Error("input required");let r={},i="hex";switch(typeof t){case"function":n=t,i=o.guessEncoding(e);break;case"object":r=o.extend({},t),i=null!=r.encoding?r.encoding:o.guessEncoding(e),delete r.encoding;break;default:i=null!=t?t:"hex"}const s=new l,a=new d(r);let u=null;return"function"==typeof n?(a.on("end",()=>n(null,s.toString("utf8"))),a.on("error",n)):u=new Promise((e,t)=>(a.on("end",()=>e(s.toString("utf8"))),a.on("error",t))),a.pipe(s),a.end(e,i),u}_on_error(e){return this.stream_errors?this.push(e.toString()):this.emit("error",e)}_on_more(e,t,n,r){if(e===c.SIMPLE_FLOAT)return this.float_bytes={2:1,4:2,8:3}[t]}_fore(e,t){switch(e){case c.BYTE_STRING:case c.UTF8_STRING:case c.ARRAY:if(t>0)return this.push(", ");break;case c.MAP:if(t>0)return t%2?this.push(": "):this.push(", ")}}_on_value(e,n,r){if(e!==h.BREAK)return this._fore(n,r),this.push((()=>{switch(!1){case e!==h.NULL:return"null";case e!==h.UNDEFINED:return"undefined";case"string"!=typeof e:return JSON.stringify(e);case!(this.float_bytes>0):const n=this.float_bytes;return this.float_bytes=-1,i.inspect(e)+"_"+n;case!t.isBuffer(e):return"h'"+e.toString("hex")+"'";case!(e instanceof u):return e.toString();default:return i.inspect(e)}})())}_on_start(e,t,n,r){switch(this._fore(n,r),e){case c.TAG:this.push(t+"(");break;case c.ARRAY:this.push("[");break;case c.MAP:this.push("{");break;case c.BYTE_STRING:case c.UTF8_STRING:this.push("(")}if(t===h.STREAM)return this.push("_ ")}_on_stop(e){switch(e){case c.TAG:return this.push(")");case c.ARRAY:return this.push("]");case c.MAP:return this.push("}");case c.BYTE_STRING:case c.UTF8_STRING:return this.push(")")}}_on_data(){return this.push(this.separator)}}e.exports=d}).call(this,n(3).Buffer)},function(e,t,n){"use strict";(function(t){const r=n(93),i=n(37),s=n(12).MT;class o extends Map{constructor(e){super(e)}static _encode(e){return r.encodeCanonical(e).toString("base64")}static _decode(e){return i.decodeFirstSync(e,"base64")}get(e){return super.get(o._encode(e))}set(e,t){return super.set(o._encode(e),t)}delete(e){return super.delete(o._encode(e))}has(e){return super.has(o._encode(e))}*keys(){for(const e of super.keys())yield o._decode(e)}*entries(){for(const e of super.entries())yield[o._decode(e[0]),e[1]]}[Symbol.iterator](){return this.entries()}forEach(e,t){if("function"!=typeof e)throw new TypeError("Must be function");for(const t of super.entries())e.call(this,t[1],o._decode(t[0]),this)}encodeCBOR(e){if(!e._pushInt(this.size,s.MAP))return!1;if(e.canonical){const n=Array.from(super.entries()).map(e=>[t.from(e[0],"base64"),e[1]]);n.sort((e,t)=>e[0].compare(t[0]));for(const t of n)if(!e.push(t[0])||!e.pushAny(t[1]))return!1}else for(const n of super.entries())if(!e.push(t.from(n[0],"base64"))||!e.pushAny(n[1]))return!1;return!0}}e.exports=o}).call(this,n(3).Buffer)},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0});const r=n(92),i=n(55);t.BundleBuilder=class{constructor(e){this.primaryURL=e,this.sectionLengths=[],this.sections=[],this.responses=[],this.index=new Map,this.currentResponsesOffset=0,o(e)}createBundle(){if(!this.index.has(this.primaryURL))throw new Error(`Exchange for primary URL (${this.primaryURL}) does not exist`);this.addSection("index",this.fixupIndex()),this.addSection("responses",this.responses);const e=this.sectionLengths.reduce((e,t)=>e+t.length,16384),t=a(this.createTopLevel(),e),n=new DataView(t.buffer,t.byteOffset+t.length-8);return n.setUint32(0,Math.floor(t.length/4294967296)),n.setUint32(4,4294967295&t.length),t}addExchange(e,t,n,r){o(e),"string"==typeof r&&(r=l(r)),this.addIndexEntry(e,this.addResponse(new s(t,n),r))}setManifestURL(e){o(e),this.addSection("manifest",e)}addSection(e,t){if(this.sectionLengths.some(t=>t.name===e))throw new Error("Duplicated section: "+e);let n;n="responses"===e?this.currentResponsesOffset+u(this.responses.length):u(t),this.sectionLengths.push({name:e,length:n}),this.sections.push(t)}addResponse(e,t){if(t.length>0&&!e.has("content-type"))throw new Error("Non-empty exchange must have Content-Type header");const n=[new Uint8Array(a(e)),t];return this.responses.push(n),n.reduce((e,t)=>e+u(t.length)+t.length,1)}addIndexEntry(e,t){this.index.set(e,[new Uint8Array(0),this.currentResponsesOffset,t]),this.currentResponsesOffset+=t}fixupIndex(){const e=u(this.responses.length);for(const t of this.index.values())t[1]+=e;return this.index}createTopLevel(){const e=[];for(const t of this.sectionLengths)e.push(t.name,t.length);return[l("🌐📦"),l("b1\0\0"),this.primaryURL,new Uint8Array(a(e)),this.sections,new Uint8Array(8)]}};class s extends Map{constructor(e,t){if(super(),e<100||e>999)throw new Error("Invalid status code");this.set(":status",e.toString());for(const e of Object.keys(t))this.set(e.toLowerCase(),t[e])}encodeCBOR(e){const t=new Map;for(const[e,n]of this.entries())t.set(l(e),l(n));return e.pushAny(t)}}function o(e){const t=new i.URL(e);if("http:"!==t.protocol&&"https:"!==t.protocol)throw new Error("Exchange URL's protocol must be http(s): "+e);if(""!==t.username||""!==t.password)throw new Error("Exchange URL must not have credentials: "+e);if(""!==t.hash)throw new Error("Exchange URL must not have a hash: "+e)}function a(e,t=1048576){const n=r.encodeOne(e,{canonical:!0,highWaterMark:t});if(n.length>=t)throw new Error("CBOR encode error: insufficient buffer size");return n}function u(e,t=1048576){const n=r.encodeOne(e,{highWaterMark:t}).byteLength;if(n>=t)throw new Error("CBOR encode error: insufficient buffer size");return n}function l(t){return e.from(t,"utf-8")}}).call(this,n(3).Buffer)},,function(e,t,n){"use strict";n.r(t),n.d(t,"SWReplay",(function(){return me}));var r=n(4),i=n(114),s=n.n(i),o=n(0),a=n(38),u=n(5),l=n(63),c=n.n(l);function h(e={}){let t,n;const r=e&&e.response&&e.response.extraOpts;if(r&&(t=r.adaptive_max_resolution||r.maxRes,n=r.adaptive_max_bandwidth||r.maxBand,t&&n))return{maxRes:t,maxBand:n};let i;return i=e&&e.response&&!e.response.isLive?{maxRes:921600,maxBand:2e6}:{maxRes:412800,maxBand:1e6},e&&e.save&&(e.save.maxRes=i.maxRes,e.save.maxBand=i.maxBand),i}function d(e,t){const n=/#EXT-X-STREAM-INF:(?:.*[,])?BANDWIDTH=([\d]+)/,r=/RESOLUTION=([\d]+)x([\d]+)/,{maxRes:i,maxBand:s}=h(t);let o=[],a=0,u=null,l=0,c=0,d=e.trimEnd().split("\n");for(const e of d){const h=e.match(n);if(!h){t&&t.rewriteUrl&&!e.startsWith("#")&&(d[a]=t.rewriteUrl(e)),a+=1;continue}o.push(a);const p=Number(h[1]),f=e.match(r),m=f?Number(f[1])*Number(f[2]):0;m&&i?m<=i&&m>c&&(c=m,l=p,u=a):p<=s&&p>l&&(c=m,l=p,u=a),a+=1}o.reverse();for(const e of o)e!==u&&d.splice(e,2);return d.join("\n")}const p={ignoreAttributes:!1,ignoreNameSpace:!1,format:!1,supressEmptyNode:!0};function f(e,t,n){try{return function(e,t,n){const r=p,i=c.a.parse(e,r),{maxRes:s,maxBand:o}=h(t);let a=null,u=0,l=0,d=null;d=Array.isArray(i.MPD.Period.AdaptationSet)?i.MPD.Period.AdaptationSet:[i.MPD.Period.AdaptationSet];for(const e of d){a=null,u=0,l=0;let t=null;t=Array.isArray(e.Representation)?e.Representation:[e.Representation];for(const e of t){const t=Number(e["@_width"]||"0")*Number(e["@_height"]||"0"),n=Number(e["@_bandwidth"]||"0");t&&s?t<=s&&t>u&&(u=t,l=n,a=e):n<=o&&n>l&&(u=t,l=n,a=e)}a&&Array.isArray(n)&&n.push(a["@_id"]),a&&(e.Representation=[a])}return"<?xml version='1.0' encoding='UTF-8'?>\n"+new c.a.j2xParser(r).parse(i).trim()}(e,t,n)}catch(t){return console.log(t),e}}n(120);const m=[{contains:["youtube.com","youtube-nocookie.com"],rxRules:[[/ytplayer.load\(\);/,w('ytplayer.config.args.dash = "0"; ytplayer.config.args.dashmpd = ""; {0}')],[/yt\.setConfig.*PLAYER_CONFIG.*args":\s*{/,w('{0} "dash": "0", dashmpd: "", ')],[/(?:"player":|ytplayer\.config).*"args":\s*{/,w('{0}"dash":"0","dashmpd":"",')]]},{contains:["vimeo.com/video"],rxRules:[[/\"dash\"[:]/,w('"__dash":')],[/\"hls\"[:]/,w('"__hls":')]]},{contains:["facebook.com/"],rxRules:[[/"dash_/,w('"__nodash__')],[/_dash"/,w('__nodash__"')],[/_dash_/,w("__nodash__")]]},{contains:["api.twitter.com/2/"],rxRules:[[/"video_info".*?}]}/,function(e){const t=e;try{const t='"video_info":';e=e.slice(t.length);const n=JSON.parse(e);let r=null,i=0;for(const e of n.variants)"video/mp4"===e.content_type&&e.bitrate&&e.bitrate>i&&e.bitrate<=1e6&&(r=e,i=e.bitrate);return r&&(n.variants=[r]),t+JSON.stringify(n)}catch(e){return t}}]]}];function w(e){return t=>e.replace("{0}",t)}class g{constructor(e,t){this.rwRules=t||m,this.RewriterCls=e,this._initRules()}_initRules(){this.rewriters=new Map;for(const e of this.rwRules)e.rxRules&&this.rewriters.set(e,new this.RewriterCls(e.rxRules));this.defaultRewriter=new this.RewriterCls}getRewriter(e){for(const t of this.rwRules)if(t.contains)for(const n of t.contains)if(e.indexOf(n)>=0){const e=this.rewriters.get(t);if(e)return e}return this.defaultRewriter}}class _{constructor(e){this.rules=e||null,this.rules?this.compileRules():this.rx=null}compileRules(){let e="";for(let t of this.rules)e&&(e+="|"),e+=`(${t[0].source})`;const t=`(?:${e})`;this.rx=new RegExp(t,"gm")}doReplace(e){const t=e[e.length-2],n=e[e.length-1];for(let r=0;r<this.rules.length;r++){const i=e[r];if(!i)continue;const s=this.rules[r][1].call(this,i,t,n);if(s)return s}}rewrite(e){return this.rx?e.replace(this.rx,(e,...t)=>this.doReplace(t)):e}}const b=/(url\s*\(\s*[\\"']*)([^)'"]+)([\\"']*\s*\))/gi,y=/(@import\s*[\\"']*)([^)'";]+)([\\"']*\s*;?)/gi,v=/([\d.]+\s*;\s*url\s*=\s*)(.+)(\s*)/im,E=/WB_wombat_/g,A=/^(?:\s*(?:(?:\/\*[^\*]*\*\/)|(?:\/\/[^\n]+[\n])))*\s*(\w+)\(\{/,x=/[?].*callback=([^&]+)/,T=["callback=jQuery","callback=jsonp",".json?"],S=["http://","https://","//"],C=new g(class extends _{constructor(e){super(),this.thisRw="_____WB$wombat$check$this$function_____(this)";const t=["window","self","document","location","top","parent","frames","opener"],n=t.join("|");this.rules=[[/[^$]\beval\s*\(/,this.addPrefixAfter1("WB_wombat_runEval(function _____evalIsEvil(_______eval_arg$$) { return eval(_______eval_arg$$); }.bind(this)).")],[/[^$]\beval\b/,this.addPrefixAfter1("WB_wombat_")],[/\.postMessage\b\(/,this.addPrefix(".__WB_pmw(self)")],[/[^$.]\s*\blocation\b\s*[=]\s*(?![=])/,this.addSuffix("((self.__WB_check_loc && self.__WB_check_loc(location)) || {}).href = ")],[/\breturn\s+this\b\s*(?![.$])/,this.replaceThis()],[new RegExp(`[^$.]\\s*\\bthis\\b(?=(?:\\.(?:${n})\\b))`),this.replaceThisProp()],[/[=,]\s*\bthis\b\s*(?![:.$])/,this.replaceThis()],[/\}(?:\s*\))?\s*\(this\)/,this.replaceThis()],[/[^|&][|&]{2}\s*this\b\s*(?)/,this.replaceThis()]],e&&(this.rules=this.rules.concat(e)),this.compileRules(),this.firstBuff=this.initLocalDecl(t),this.lastBuff="\n\n}"}addPrefix(e){return t=>e+t}addPrefixAfter1(e){return t=>t[0]+e+t.slice(1)}addSuffix(e){return(t,n,r)=>{if(n>0){const e=r[n-1];if("."===e||"$"===e)return t}return t+e}}replaceThis(){return e=>e.replace("this",this.thisRw)}replaceThisProp(){return(e,t,n)=>{const r=t>0?n[t-1]:"";return"\n"===r?e.replace("this",";"+this.thisRw):"."!==r&&"$"!==r?e.replace("this",this.thisRw):e}}initLocalDecl(e){const t="_____WB$wombat$assign$function_____";let n=` var ${t} = function(name) {return (self._wb_wombat && self._wb_wombat.local_init && self._wb_wombat.local_init(name)) || self[name]; };\n if (!self.__WB_pmw) { self.__WB_pmw = function(obj) { this.__WB_source = obj; return this; } }\n { `;for(let r of e)n+=`let ${r} = ${t}("${r}");\n`;return n+"\n"}rewrite(e,t){let n=e.replace(this.rx,(e,...t)=>this.doReplace(t));return n=this.firstBuff+n+this.lastBuff,t?n.replace(/\n/g," "):n}}),k=new g(_);class D{constructor({baseUrl:e,prefix:t,responseUrl:n,workerInsertFunc:r,headInsertFunc:i=null,urlRewrite:s=!0,contentRewrite:o=!0,decode:a=!0,useBaseRules:u=!1}={}){if(this.urlRewrite=s,this.contentRewrite=o,this.dsRules=s&&!u?C:k,this.decode=a,this.prefix=t||"",this.prefix&&s){const e=new URL(this.prefix);this.relPrefix=e.pathname,this.schemeRelPrefix=this.prefix.slice(e.protocol.length)}const l=new URL(n||e);this.scheme=l.protocol,e.startsWith("//")&&(e=this.scheme+e),this.url=this.baseUrl=e,this.headInsertFunc=i,this.workerInsertFunc=r}getRewriteMode(e,t,n="",r=null){if(!r&&t&&(r=(r=t.headers.get("Content-Type")||"").split(";",1)[0]),e)switch(e.destination){case"style":return"css";case"script":return Object(o.c)(n,T)?"jsonp":"js";case"worker":return"js-worker"}switch(r){case"text/html":return"html";case"text/javascript":case"application/javascript":case"application/x-javascript":return Object(o.c)(n,T)?"jsonp":n.endsWith(".json")?"json":"js";case"application/json":return"json";case"text/css":return"css";case"application/x-mpegURL":case"application/vnd.apple.mpegurl":return"hls";case"application/dash+xml":return"dash"}return null}async rewrite(e,t){const n=this.contentRewrite?this.getRewriteMode(t,e,this.baseUrl):null,r=this.urlRewrite&&!Object(o.h)(t),i=this.rewriteHeaders(e.headers,this.urlRewrite,!!n),s=e.headers.get("content-encoding"),u=e.headers.get("transfer-encoding");e.headers=i,this.decode&&(s||u)&&(e=await Object(a.b)(e,s,u,null===n));let l=null;switch(n){case"html":if(r)return await this.rewriteHtml(e);break;case"css":this.urlRewrite&&(l=this.rewriteCSS);break;case"js":l=this.rewriteJS;break;case"json":l=this.rewriteJSON;break;case"js-worker":l=this.workerInsertFunc;break;case"jsonp":l=this.rewriteJSONP;break;case"hls":l=d;break;case"dash":l=f}const c={response:e};if(r&&(c.rewriteUrl=e=>this.rewriteUrl(e)),l){let t=await e.getText();t=l.call(this,t,c),e.setContent(t)}return e}normalizeBaseUrl(e,t){if(e&&t!=e)try{return new URL(e).href}catch(t){if(e.startsWith("//"))return(e=new URL("https:"+e).href).slice("https:".length)}return e}isRewritableUrl(e){const t=["#","javascript:","data:","mailto:","about:","file:","blob:","{"];for(let n of t)if(e.startsWith(n))return!1;return!0}rewriteUrl(e,t=!1){if(!this.urlRewrite)return e;var n=e;return!(e=e.trim())||!this.isRewritableUrl(e)||e.startsWith(this.prefix)||e.startsWith(this.relPrefix)?n:e.startsWith("http:")||e.startsWith("https:")||e.startsWith("https\\3a/")?this.prefix+e:e.startsWith("//")||e.startsWith("\\/\\/")?this.schemeRelPrefix+e:e.startsWith("/")?(e=new URL(e,this.baseUrl).href,this.relPrefix+e):t||e.indexOf("../")>=0?(e=new URL(e,this.baseUrl).href,this.prefix+e):n}rewriteMetaContent(e,t){let n=this.getAttr(e,"http-equiv");if(n&&(n=n.toLowerCase()),"content-security-policy"===n)t.name="_"+t.name;else{if("refresh"===n)return t.value.replace(v,(e,t,n,r)=>t+this.rewriteUrl(n)+r);if("referrer"===this.getAttr(e,"name"))return"no-referrer-when-downgrade";if(Object(o.l)(t.value,S))return this.rewriteUrl(t.value)}return t.value}rewriteSrcSet(e){const t=/\s*(\S*\s+[\d\.]+[wx]),|(?:\s*,(?:\s+|(?=https?:)))/;let n=[];for(let r of e.split(t))if(r){const e=r.trim().split(" ");e[0]=this.rewriteUrl(e[0]),n.push(e.join(" "))}return n.join(", ")}rewriteAttrs(e,t){const n=e=>Object(o.l)(e,S);for(let r of e.attrs){const i=r.name,s=r.value;if(i.startsWith("on")&&s.startsWith("javascript:")&&"-"!=i.slice(2,3))r.value="javascript:"+this.rewriteJS(s.slice("javascript:".length),{},!0);else if("style"===i)r.value=this.rewriteCSS(r.value);else if("background"===i)r.value=this.rewriteUrl(s);else if("srcset"===i)r.value=this.rewriteSrcSet(s);else if("crossorigin"===i||"integrity"===i)r.name="_"+r.name;else if("meta"===e.tagName&&"content"===i)r.value=this.rewriteMetaContent(e.attrs,r);else if("param"===e.tagName&&n(s))r.value=this.rewriteUrl(r.value);else if(i.startsWith("data-")&&n(s))r.value=this.rewriteUrl(r.value);else if("base"===e.tagName&&"href"===i)try{this.baseUrl=new URL(r.value,this.baseUrl).href,r.value=this.rewriteUrl(this.normalizeBaseUrl(r.value,this.baseUrl))}catch(e){console.warn("Invalid <base>: "+r.value)}else if("script"===e.tagName&&"src"===i){const t=this.rewriteUrl(r.value);t===r.value?(e.attrs.push({name:"__wb_orig_src",value:r.value}),r.value=this.rewriteUrl(r.value,!0)):r.value=t}else if("object"===e.tagName&&"data"===i){"application/pdf"===this.getAttr(e.attrs,"type")&&(r.name="src",e.tagName="iframe")}else("href"===i||"src"===i||t[r.name])&&(r.value=this.rewriteUrl(r.value))}}getAttr(e,t){for(let n of e)if(n.name===t)return n.value;return null}async rewriteHtml(e){if(!e.buffer&&!e.reader)return e;const t={a:{href:"mp_"},base:{href:"mp_"},applet:{codebase:"oe_",archive:"oe_"},area:{href:"mp_"},audio:{src:"oe_"},base:{href:"mp_"},blockquote:{cite:"mp_"},body:{background:"im_"},button:{formaction:"mp_"},command:{icon:"im_"},del:{cite:"mp_"},embed:{src:"oe_"},iframe:{src:"if_"},image:{src:"im_","xlink:href":"im_",href:"im_"},img:{src:"im_",srcset:"im_"},ins:{cite:"mp_"},input:{src:"im_",formaction:"mp_"},form:{action:"mp_"},frame:{src:"fr_"},link:{href:"oe_"},meta:{content:"mp_"},object:{codebase:"oe_",data:"oe_"},param:{value:"oe_"},q:{cite:"mp_"},ref:{href:"oe_"},script:{src:"js_","xlink:href":"js_"},source:{src:"oe_",srcset:"oe_"},video:{src:"oe_",poster:"im_"}},n=new s.a;let i=!1,o=!1,a="",u=!1;const l=()=>{if(!i&&o&&this.headInsertFunc){const e=this.headInsertFunc(this.url);e&&n.emitRaw(e),i=!0}};n.on("startTag",e=>{const r=t[e.tagName];switch(this.rewriteAttrs(e,r||{}),i||["head","html"].includes(e.tagName)||(o=!0,l()),n.emitStartTag(e),e.tagName){case"script":if(e.selfClosing)break;a=e.tagName;const t=this.getAttr(e.attrs,"type");u=!t||t.indexOf("javascript")>=0||t.indexOf("ecmascript")>=0;break;case"style":e.selfClosing||(a=e.tagName)}}),n.on("endTag",e=>{e.tagName===a&&(a=""),n.emitEndTag(e)}),n.on("text",(e,t)=>{"script"===a?n.emitRaw(u?this.rewriteJS(e.text):e.text):"style"===a?n.emitRaw(this.rewriteCSS(e.text)):n.emitRaw(t)});const c=new r.PassThrough({encoding:"utf-8"});c.pipe(n),c.on("end",l);const h=new TextEncoder("utf-8"),d=(e[Symbol.asyncIterator](),new ReadableStream({start(e){n.on("data",t=>e.enqueue(h.encode(t))),n.on("end",()=>e.close())}}));for await(const t of e)c.push(t),o=!0;return c.push(null),e.setContent(d),e}rewriteCSS(e){const t=this;function n(e,n,r,i,s,o){return r=r.replace(/\s+/g,""),n+t.rewriteUrl(r)+i}return e.replace(b,n).replace(y,n).replace(E,"")}rewriteJS(e,t,n){const r=t&&!t.rewriteUrl,i=r?k:this.dsRules,s=i.getRewriter(this.baseUrl);if(s===i.defaultRewriter){if(r)return e;const t=["window","self","document","location","top","parent","frames","opener","this","eval","postMessage"];let n=!1;for(let r of t)if(e.indexOf(r)>=0){n=!0;break}if(!n)return e}return s.rewrite(e,n)}rewriteJSON(e){e=this.rewriteJSONP(e);const t=k.getRewriter(this.baseUrl);return t!==k.defaultRewriter?t.rewrite(e):e}rewriteJSONP(e){const t=e.match(A);if(!t)return e;const n=this.baseUrl.match(x);return n&&"?"!==n[1]?n[1]+e.slice(e.indexOf(t[1])+t[1].length):e}rewriteHeaders(e,t,n){const r={"access-control-allow-origin":"prefix-if-url-rewrite","access-control-allow-credentials":"prefix-if-url-rewrite","access-control-expose-headers":"prefix-if-url-rewrite","access-control-max-age":"prefix-if-url-rewrite","access-control-allow-methods":"prefix-if-url-rewrite","access-control-allow-headers":"prefix-if-url-rewrite","accept-patch":"keep","accept-ranges":"keep",age:"prefix",allow:"keep","alt-svc":"prefix","cache-control":"prefix",connection:"prefix","content-base":"url-rewrite","content-disposition":"keep","content-encoding":"prefix-if-content-rewrite","content-language":"keep","content-length":"content-length","content-location":"url-rewrite","content-md5":"prefix","content-range":"keep","content-security-policy":"prefix","content-security-policy-report-only":"prefix","content-type":"keep",date:"keep",etag:"prefix",expires:"prefix","last-modified":"prefix",link:"keep",location:"url-rewrite",p3p:"prefix",pragma:"prefix","proxy-authenticate":"keep","public-key-pins":"prefix","retry-after":"prefix",server:"prefix","set-cookie":"cookie",status:"prefix","strict-transport-security":"prefix",trailer:"prefix","transfer-encoding":"transfer-encoding",tk:"prefix",upgrade:"prefix","upgrade-insecure-requests":"prefix",vary:"prefix",via:"prefix",warning:"prefix","www-authenticate":"keep","x-frame-options":"prefix","x-xss-protection":"prefix"};let i=new Headers;for(let s of e.entries()){switch(r[s[0]]){case"keep":i.append(s[0],s[1]);break;case"url-rewrite":t?i.append(s[0],this.rewriteUrl(s[1])):i.append(s[0],s[1]);break;case"prefix-if-content-rewrite":n?i.append("X-Archive-Orig-"+s[0],s[1]):i.append(s[0],s[1]);break;case"prefix-if-url-rewrite":t?i.append("X-Archive-Orig-"+s[0],s[1]):i.append(s[0],s[1]);break;case"content-length":if("0"==s[1]){i.append(s[0],s[1]);continue}if(n)try{if(parseInt(s[1])>=0){i.append(s[0],s[1]);continue}}catch(e){}i.append(s[0],s[1]);break;case"transfer-encoding":case"prefix":i.append("X-Archive-Orig-"+s[0],s[1]);break;case"cookie":i.append(s[0],s[1]);break;default:i.append(s[0],s[1])}}return i}}const R="default-src 'unsafe-eval' 'unsafe-inline' 'self' data: blob: mediastream: ws: wss: ; form-action 'self'",O=/^(\d*)([a-z]+_|[$][a-z0-9:.-]+)?(?:\/|\||%7C|%7c)(.+)/;class I{constructor(e,t){const{name:n,store:r,config:i}=e;this.name=n,this.store=r,this.config=i,this.metadata=this.config.metadata?this.config.metadata:{},this.rootPrefix=t.root||t.main,this.prefix=t.main,this.config.root?this.isRoot=!0:(this.prefix+=this.name+"/",this.isRoot=!1),this.staticPrefix=t.static}async handleRequest(e,t){let n=e.url;if(!n.startsWith(this.prefix))return null;n=n.substring(this.prefix.length);const r={status:200,statusText:"OK",headers:{"Content-Type":"text/html"}};let i=null;if(""==n){i="<html><body><h2>Available Pages</h2><ul>";const e=await this.store.getAllPages();for(const t of e){let e=this.prefix;t.date&&(e+=t.date+"/"),e+=t.url,i+=`<li><a href="${e}">${t.url}</a></li>`}return i+="</ul></body></html>",new Response(i,r)}const s=O.exec(n);let a="",u="",l="";if(!s&&(n.startsWith("https:")||n.startsWith("http:")||n.startsWith("blob:")))u=n;else if(!s&&this.isRoot)u="https://"+n;else{if(!s)return Object(o.k)(e,`Replay URL ${n} not found`);a=s[1],l=s[2],u=s[3]}if(!l)return await this.makeTopFrame(u,a);const c=u.indexOf("#");c>0&&(u=u.substring(0,c));const h={url:u,method:e.method,request:e,timestamp:a};let d=null;try{if(u.startsWith("srcdoc:"))d=this.getSrcDocResponse(u,u.slice("srcdoc:".length));else if(u.startsWith("blob:"))d=await this.getBlobResponse(u);else if("about:blank"===u)d=await this.getSrcDocResponse(u);else{if(d=this.checkSlash(u,a,l),d)return d;d=await this.store.getResource(h,this.prefix,t)}}catch(t){if(t instanceof o.a){const t=await self.clients.matchAll({type:"window"});for(const e of t){new URL(e.url).searchParams.get("source")===this.config.sourceUrl&&e.postMessage({source:this.config.sourceUrl,coll:this.name,type:"authneeded"})}return Object(o.k)(e,"<p>Sorry, this URL requires authentication from the source.</p>")}}if(!d){const t=`\n <p>Sorry, the URL <b>${u}</b> is not in this archive.</p>\n <p><a target="_blank" href="${u}">Try Live Version?</a></p>`;return Object(o.k)(e,t)}if(d instanceof Response)return d;if(!d.noRW){const t=t=>{const n=d.headers.get("x-wabac-preset-cookie");return this.makeHeadInsert(t,a,d.date,n,d.isLive,e.referrer)},n=e=>`\n (function() { self.importScripts('${this.staticPrefix}wombatWorkers.js'); new WBWombat({'prefix': '${this.prefix+a}/', 'prefixMod': '${this.prefix+a}wkrf_/', 'originalURL': '${u}'}); })();`+e,r="id_"===l||"wkrf_"===l,i=this.prefix+a+l+"/",s={baseUrl:u,responseUrl:d.url,prefix:i,headInsertFunc:t,workerInsertFunc:n,urlRewrite:!r,contentRewrite:!r,decode:this.config.decode},o=new D(s);d=await o.rewrite(d,e),"id_"!==l&&d.headers.append("Content-Security-Policy",R)}const p=e.headers.get("range");return p&&200===d.status&&"bytes=0-"!=p&&d.setRange(p),d.makeResponse()}checkSlash(e,t,n){try{const r=new URL(e);if("/"===r.pathname&&r.href!==e){let e=this.prefix+t+n;return(t||n)&&(e+="/"),e+=r.href,Response.redirect(e,301)}}catch(e){}return null}getSrcDocResponse(e,t){const n=t?decodeURIComponent(atob(t)):"<!DOCTYPE html><html><head></head><body></body></html>",r=(new TextEncoder).encode(n),i=new Headers({"Content-Type":"text/html"}),s=new Date;return new u.a({payload:r,status:200,statusText:"OK",headers:i,url:e,date:s})}async getBlobResponse(e){const t=await fetch(e),n=t.status,r=t.statusText,i=new Headers(t.headers);"application/xhtml+xml"===i.get("content-type")&&i.set("content-type","text/html");const s=new Date,o=new Uint8Array(await t.arrayBuffer());return new u.a({payload:o,status:n,statusText:r,headers:i,url:e,date:s})}async makeTopFrame(e,t,n){let r=null;if(this.config.extraConfig&&this.config.extraConfig.baseUrl?r=this.config.extraConfig.baseUrl:!this.isRoot&&this.config.sourceUrl&&(r="/?source="+this.config.sourceUrl),r){const n=new URLSearchParams({url:e,ts:t,view:"replay"}).toString();return Response.redirect(r+"#"+n)}let i=null;if(this.config.topTemplateUrl){const n=await fetch(this.config.topTemplateUrl);i=(await n.text()).replace("$URL",e).replace("$TS",t).replace("$PREFIX",this.prefix)}else i=`\n<!DOCTYPE html>\n<html>\n<head>\n<style>\nhtml, body\n{\n height: 100%;\n margin: 0px;\n padding: 0px;\n border: 0px;\n overflow: hidden;\n}\n\n</style>\n<script src='${this.staticPrefix}wb_frame.js'> <\/script>\n\n<script>\nwindow.home = "${this.rootPrefix}";\n<\/script>\n\n<script src='${this.staticPrefix}default_banner.js'> <\/script>\n<link rel='stylesheet' href='${this.staticPrefix}default_banner.css'/>\n\n</head>\n<body style="margin: 0px; padding: 0px;">\n<div id="wb_iframe_div">\n<iframe id="replay_iframe" frameborder="0" seamless="seamless" scrolling="yes" class="wb_iframe" allow="autoplay; fullscreen"></iframe>\n</div>\n<script>\n var cframe = new ContentFrame({"url": "${e}",\n "app_prefix": "${this.prefix}",\n "content_prefix": "${this.prefix}",\n "request_ts": "${t}",\n "iframe": "#replay_iframe"});\n\n<\/script>\n</body>\n</html>\n`;return new Response(i,{status:200,statusText:"OK",headers:{"Content-Type":"text/html","Content-Security-Policy":R}})}makeHeadInsert(e,t,n,r,i,s){const a=this.prefix,u=a+t+(t?"/":"")+e,l=this.name,c=Object(o.e)(n),h=Object(o.f)(n.toISOString()),d=new URL(e);let p;p="https:"!==d.protocol&&"http:"!==d.protocol?s&&s.indexOf("/http://")>0?"http":"https":d.protocol.slice(0,-1);const f=r?JSON.stringify(r):'""';return`\n\x3c!-- WB Insert --\x3e\n<style>\nbody {\n font-family: inherit;\n font-size: inherit;\n}\n</style>\n<script>\n wbinfo = {};\n wbinfo.top_url = "${u}";\n // Fast Top-Frame Redirect\n if (window == window.top && wbinfo.top_url) {\n var loc = window.location.href.replace(window.location.hash, "");\n loc = decodeURI(loc);\n\n if (loc != decodeURI(wbinfo.top_url)) {\n window.location.href = wbinfo.top_url + window.location.hash;\n }\n }\n wbinfo.url = "${e}";\n wbinfo.timestamp = "${h}";\n wbinfo.request_ts = "${t}";\n wbinfo.prefix = decodeURI("${a}");\n wbinfo.mod = "mp_";\n wbinfo.is_framed = true;\n wbinfo.is_live = ${i?"true":"false"};\n wbinfo.coll = "${l}";\n wbinfo.proxy_magic = "";\n wbinfo.static_prefix = "${this.staticPrefix}";\n wbinfo.enable_auto_fetch = true;\n wbinfo.presetCookie = ${f};\n wbinfo.isSW = true;\n<\/script>\n<script src='${this.staticPrefix}wombat.js'> <\/script>\n<script>\n wbinfo.wombat_ts = "${i?h:t}";\n wbinfo.wombat_sec = "${c}";\n wbinfo.wombat_scheme = "${p}";\n wbinfo.wombat_host = "${d.host}";\n\n wbinfo.wombat_opts = {};\n\n if (window && window._WBWombatInit) {\n window._WBWombatInit(wbinfo);\n }\n<\/script>\n `}}var N=n(58);class F{constructor(){this.timeRanges={}}updateStats(e,t,n,r){const i=r.clientId||r.resultingClientId;if(!i||!e)return;if(!n.url||n.url.indexOf("mp_/")<0)return;if("document"===n.destination&&t>300&&t<400)return;let s=null;void 0===this.timeRanges[i]?(s={count:0,children:[]},this.timeRanges[i]=s,n.referrer.indexOf("mp_/")>0&&self.clients.matchAll({type:"window"}).then(e=>this.updateStatsParent(i,n.referrer,e))):s=this.timeRanges[i];const o=e.getTime();(!s.min||o<s.min)&&(s.min=o),(!s.max||o>s.max)&&(s.max=o),s.count++}updateStatsParent(e,t,n){for(let r of n)if(r.url===t){this.timeRanges[r.id]?this.timeRanges[r.id].children[e]=1:this.timeRanges[r.id]={count:0,children:{id:1}};break}}async getStats(e){const t=new URL(e.request.url);let n=0;const r=new URLSearchParams(t.search).get("url"),i=await self.clients.matchAll({type:"window"}),s={};for(let e of i)e.url===r&&(n=e.id),s[e.id]=1;const o=this.timeRanges[n]||{},a={count:o.count||0,min:o.min,max:o.max},u=this.timeRanges[n]&&Object.keys(this.timeRanges[n].children)||[];for(let e of u){const t=this.timeRanges[e];t&&((!a.min||t.min<a.min)&&(a.min=t.min),(!a.max||t.max>a.max)&&(a.max=t.max),a.count+=t.count)}for(let e of Object.keys(this.timeRanges))s[e]||delete this.timeRanges[e];return new Response(JSON.stringify(a),{headers:{"Content-Type":"application/json"}})}}
|
||
/*! *****************************************************************************
|
||
Copyright (c) Microsoft Corporation. All rights reserved.
|
||
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
||
this file except in compliance with the License. You may obtain a copy of the
|
||
License at http://www.apache.org/licenses/LICENSE-2.0
|
||
|
||
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
|
||
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
|
||
MERCHANTABLITY OR NON-INFRINGEMENT.
|
||
|
||
See the Apache Version 2.0 License for specific language governing permissions
|
||
and limitations under the License.
|
||
***************************************************************************** */var P=function(){return(P=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)};var L=function(e){return void 0===e&&(e={}),{arrayFormat:e.arrayFormat||"none",booleanFormat:e.booleanFormat||"none",nullFormat:e.nullFormat||"default"}},B=function(e){return encodeURIComponent(e)},U=function(e){return decodeURIComponent(e)},M=function(e,t,n){return null===t?function(e,t){return"hidden"===t.nullFormat?"":"string"===t.nullFormat?e+"=null":e}(e,n):"boolean"==typeof t?function(e,t,n){return"empty-true"===n.booleanFormat&&t?e:e+"="+("unicode"===n.booleanFormat?t?"✓":"✗":t.toString())}(e,t,n):Array.isArray(t)?function(e,t,n){var r=function(e){return"index"===e.arrayFormat?function(e,t){return e+"["+t+"]"}:"brackets"===e.arrayFormat?function(e){return e+"[]"}:function(e){return e}}(n);return t.map((function(t,n){return r(e,n)+"="+B(t)})).join("&")}(e,t,n):e+"="+B(t)},W=function(e){var t=e.indexOf("?");return-1===t?e:e.slice(t+1)},j=function(e){var t=e.indexOf("["),n=-1!==t;return{hasBrackets:n,name:n?e.slice(0,t):e}},z=function(e,t){var n=L(t);return W(e).split("&").reduce((function(e,t){var r=t.split("="),i=r[0],s=r[1],o=j(i),a=o.hasBrackets,u=o.name,l=e[u],c=function(e,t){if(void 0===e)return"empty-true"===t.booleanFormat||null;if("string"===t.booleanFormat){if("true"===e)return!0;if("false"===e)return!1}if("unicode"===t.booleanFormat){if("✓"===U(e))return!0;if("✗"===U(e))return!1}return"string"===t.nullFormat&&"null"===e?null:U(e)}(s,n);return e[u]=void 0===l?a?[c]:c:(Array.isArray(l)?l:[l]).concat(c),e}),{})},H=/[^!$'()*+,;|:]/g,G=function(e){return e.replace(H,(function(e){return encodeURIComponent(e)}))},q={default:G,uri:encodeURI,uriComponent:encodeURIComponent,none:function(e){return e},legacy:encodeURI},V={default:decodeURIComponent,uri:decodeURI,uriComponent:decodeURIComponent,none:function(e){return e},legacy:decodeURIComponent},X=function(e,t,n){var r=q[t]||G;return n?String(e).split("/").map(r).join("/"):r(String(e))},K=function(e){return"("+(e?e.replace(/(^<|>$)/g,""):"[a-zA-Z0-9-_.~%':|=+\\*@$]+")+")"},Y=[{name:"url-parameter",pattern:/^:([a-zA-Z0-9-_]*[a-zA-Z0-9]{1})(<(.+?)>)?/,regex:function(e){return new RegExp(K(e[2]))}},{name:"url-parameter-splat",pattern:/^\*([a-zA-Z0-9-_]*[a-zA-Z0-9]{1})/,regex:/([^?]*)/},{name:"url-parameter-matrix",pattern:/^;([a-zA-Z0-9-_]*[a-zA-Z0-9]{1})(<(.+?)>)?/,regex:function(e){return new RegExp(";"+e[1]+"="+K(e[2]))}},{name:"query-parameter",pattern:/^(?:\?|&)(?::)?([a-zA-Z0-9-_]*[a-zA-Z0-9]{1})/},{name:"delimiter",pattern:/^(\/|\?)/,regex:function(e){return new RegExp("\\"+e[0])}},{name:"sub-delimiter",pattern:/^(!|&|-|_|\.|;)/,regex:function(e){return new RegExp(e[0])}},{name:"fragment",pattern:/^([0-9a-zA-Z]+)/,regex:function(e){return new RegExp(e[0])}}],J=function(e){return null!=e},Z={urlParamsEncoding:"default"},Q=function(){function e(e,t){if(!e)throw new Error("Missing path in Path constructor");this.path=e,this.options=P(P({},Z),t),this.tokens=function e(t,n){if(void 0===n&&(n=[]),!Y.some((function(r){var i=t.match(r.pattern);return!!i&&(n.push({type:r.name,match:i[0],val:i.slice(1,2),otherVal:i.slice(2),regex:r.regex instanceof Function?r.regex(i):r.regex}),i[0].length<t.length&&(n=e(t.substr(i[0].length),n)),!0)})))throw new Error("Could not parse path '"+t+"'");return n}(e),this.hasUrlParams=this.tokens.filter((function(e){return/^url-parameter/.test(e.type)})).length>0,this.hasSpatParam=this.tokens.filter((function(e){return/splat$/.test(e.type)})).length>0,this.hasMatrixParams=this.tokens.filter((function(e){return/matrix$/.test(e.type)})).length>0,this.hasQueryParams=this.tokens.filter((function(e){return/^query-parameter/.test(e.type)})).length>0,this.spatParams=this.getParams("url-parameter-splat"),this.urlParams=this.getParams(/^url-parameter/),this.queryParams=this.getParams("query-parameter"),this.params=this.urlParams.concat(this.queryParams),this.source=this.tokens.filter((function(e){return void 0!==e.regex})).map((function(e){return e.regex.source})).join("")}return e.createPath=function(t,n){return new e(t,n)},e.prototype.isQueryParam=function(e){return-1!==this.queryParams.indexOf(e)},e.prototype.isSpatParam=function(e){return-1!==this.spatParams.indexOf(e)},e.prototype.test=function(e,t){var n=this,r=P(P({caseSensitive:!1,strictTrailingSlash:!1},this.options),t),i=function(e,t){return t||"\\/"===e?e:e.replace(/\\\/$/,"")+"(?:\\/)?"}(this.source,r.strictTrailingSlash),s=this.urlTest(e,i+(this.hasQueryParams?"(\\?.*$|$)":"$"),r.caseSensitive,r.urlParamsEncoding);if(!s||!this.hasQueryParams)return s;var o=z(e,r.queryParams);return 0===Object.keys(o).filter((function(e){return!n.isQueryParam(e)})).length?(Object.keys(o).forEach((function(e){return s[e]=o[e]})),s):null},e.prototype.partialTest=function(e,t){var n=this,r=P(P({caseSensitive:!1,delimited:!0},this.options),t),i=function(e,t){return t?/(\/)$/.test(e)?e:e+"(\\/|\\?|\\.|;|$)":e}(this.source,r.delimited),s=this.urlTest(e,i,r.caseSensitive,r.urlParamsEncoding);if(!s)return s;if(!this.hasQueryParams)return s;var o=z(e,r.queryParams);return Object.keys(o).filter((function(e){return n.isQueryParam(e)})).forEach((function(e){return function(e,t,n){void 0===n&&(n="");var r=e[t];return e[t]=void 0===r?n:Array.isArray(r)?r.concat(n):[r,n],e}(s,e,o[e])})),s},e.prototype.build=function(e,t){var n=this;void 0===e&&(e={});var r=P(P({ignoreConstraints:!1,ignoreSearch:!1,queryParams:{}},this.options),t),i=Object.keys(e).filter((function(e){return!n.isQueryParam(e)})).reduce((function(t,i){if(!J(e[i]))return t;var s=e[i],o=n.isSpatParam(i);return"boolean"==typeof s?t[i]=s:Array.isArray(s)?t[i]=s.map((function(e){return X(e,r.urlParamsEncoding,o)})):t[i]=X(s,r.urlParamsEncoding,o),t}),{});if(this.urlParams.some((function(t){return!J(e[t])}))){var s=this.urlParams.filter((function(t){return!J(e[t])}));throw new Error("Cannot build path: '"+this.path+"' requires missing parameters { "+s.join(", ")+" }")}if(!r.ignoreConstraints&&!this.tokens.filter((function(e){return/^url-parameter/.test(e.type)&&!/-splat$/.test(e.type)})).every((function(e){return new RegExp("^"+K(e.otherVal[0])+"$").test(i[e.val])})))throw new Error("Some parameters of '"+this.path+"' are of invalid format");var o=this.tokens.filter((function(e){return!1===/^query-parameter/.test(e.type)})).map((function(e){return"url-parameter-matrix"===e.type?";"+e.val+"="+i[e.val[0]]:/^url-parameter/.test(e.type)?i[e.val[0]]:e.match})).join("");if(r.ignoreSearch)return o;var a=function(e,t){var n=L(t);return Object.keys(e).filter((function(t){return void 0!==e[t]})).map((function(t){return M(t,e[t],n)})).filter(Boolean).join("&")}(this.queryParams.filter((function(t){return-1!==Object.keys(e).indexOf(t)})).reduce((function(t,n){return t[n]=e[n],t}),{}),r.queryParams);return a?o+"?"+a:o},e.prototype.getParams=function(e){var t=e instanceof RegExp?function(t){return e.test(t.type)}:function(t){return t.type===e};return this.tokens.filter(t).map((function(e){return e.val[0]}))},e.prototype.urlTest=function(e,t,n,r){var i=this,s=new RegExp("^"+t,n?"":"i"),o=e.match(s);return o?this.urlParams.length?o.slice(1,this.urlParams.length+1).reduce((function(e,t,n){return e[i.urlParams[n]]=(V[r]||decodeURIComponent)(t),e}),{}):{}:null},e}(),$=n(124),ee=n.n($),te=n(32),ne=n.n(te),re=n(39),ie=n(41),se=n(1),oe=n(40);const ae=new TextEncoder,ue=new Uint8Array([]);async function*le(e){yield e}class ce extends r.PassThrough{constructor(e){super(),this.gen=e}resume(){super.resume(),this._started||(this.start(),this._started=!0)}async start(){for await(const e of this.gen)this.push(e);this.push(null)}}class he{constructor(e,t,n,r){this.db=e,this.pageList=t,this.collId=n,this.metadata=r,this.offset=0,this.resources=[],this.textResources=[],this.indexLines=[],this.linesPerBlock=2048,this.digestsVisted={}}downloadWARC(e){const t=this;e=(e||"webarchive").split(".")[0]+".warc";const n=new ReadableStream({start(n){t.queueWARC(n,e)}});return new Response(n,{headers:{"Content-Disposition":`attachment; filename="${e}"`,"Content-Type":"application/octet-stream"}})}async queueWARC(e,t){const n=await this.getMetadata();for await(const r of this.generateWARC(t,n))e.enqueue(r);for await(const n of this.generateTextWARC(t))e.enqueue(n);e.close()}addFile(e,t,n,r=!1){const i="string"==typeof n?n:new ce(n);e.file(t,i,{compression:r?"DEFLATE":"STORE",binary:!r})}async downloadWACZ(e){const t=new ee.a;e=(e||"webarchive").split(".")[0]+".wacz";const n=await this.getMetadata(),r=n.pages;delete n.pages,this.addFile(t,"pages.csv",await Object(ie.json2csvAsync)(r),!0),this.addFile(t,"webarchive.yaml",ne.a.safeDump(n,{skipInvalid:!0}),!0),this.addFile(t,"archive/data.warc",this.generateWARC(e+"#/archive/data.warc"),!1),this.addFile(t,"archive/text.warc",this.generateTextWARC(e+"#/archive/text.warc"),!1),this.resources.length<=this.linesPerBlock?this.addFile(t,"indexes/index.cdx",this.generateCDX(),!0):(this.addFile(t,"indexes/index.cdx.gz",this.generateCompressedCDX("index.cdx.gz"),!1),this.addFile(t,"indexes/index.idx",this.generateIDX(),!0));const i=new ReadableStream({start(e){t.generateInternalStream({type:"uint8array"}).on("data",(t,n)=>{e.enqueue(t)}).on("error",t=>{console.log(t),e.close()}).on("end",()=>{e.close()}).resume()}});return new Response(i,{headers:{"Content-Disposition":`attachment; filename="${e}"`,"Content-Type":"application/zip"}})}async*generateWARC(e,t){try{let n=0;if(e){const r=await this.createWARCInfo(e,t);yield r,n+=r.length}for(const e of this.resources){e.offset=n;const t=await this.createWARCRecord(e);t?(yield t[0],n+=t[0].length,e.length=n,t.length>1&&(yield t[1],n+=t[1].length)):e.skipped=!0}}catch(e){console.warn(e)}}async*generateTextWARC(e){try{let t=0;if(e){const n=await this.createWARCInfo(e);yield n,t+=n.length}for(const e of this.textResources){e.offset=t;const n=await this.createTextWARCRecord(e);yield n,t+=n.length,e.length=t}}catch(e){console.warn(e)}}async*generateCDX(e=!1){function t(e,t,n){const r={digest:e.digest,mime:e.mime,offset:e.offset,length:e.length,filename:t,status:e.status},i=`${e.url} ${e.timestamp} ${JSON.stringify(r)}\n`;return n?[e,i]:i}try{for await(const n of this.resources)n.skipped||(yield t(n,"data.warc",e));for await(const n of this.textResources)n.mime="text/plain",n.status=200,yield t(n,"text.warc",e)}catch(e){console.warn(e)}}async*generateCompressedCDX(e){let t=0,n=null,r=0,i=null;const s=this;function o(){const o=n.result,a=o.length,u=i+" "+JSON.stringify({offset:t,length:a,filename:e});return s.indexLines.push(u),t+=a,n=null,r=0,i=null,o}for await(const[e,t]of this.generateCDX(!0))n||(n=new re.Deflate({gzip:!0})),i||(i=e.url+" "+e.timestamp),++r===this.linesPerBlock?(n.push(t,!0),yield o()):n.push(t);n&&(n.push(ue,!0),yield o())}async getMetadata(){if(this.pageList)for await(const e of this.db.resourcesByPages(this.pageList))this.resources.push(e);else this.resources=await this.db.db.getAll("resources");const e={...this.metadata};e.pages=[];const t=this.pageList?await this.db.getPages(this.pageList):await this.db.getAllPages();for(const n of t){const{url:t,ts:r,title:i,id:s,text:o,favIconUrl:a}=n,u={title:i,url:t,date:new Date(r).toISOString(),id:s};a&&(u.favIconUrl=a),e.pages.push(u),n.text&&this.textResources.push({url:t,ts:r,text:o})}return e.pageLists=await this.db.getAllCuratedByList(),e.config={useSurt:!1,decodeResponses:!1},e}async getLists(){try{const e=await this.db.getAllCuratedByList();return console.log(e),ne.a.safeDump(e,{skipInvalid:!0})}catch(e){console.log(e)}}async*generateIDX(){yield this.indexLines.join("\n")}async createWARCInfo(e,t){const n={software:"Webrecorder wabac.js/warcio.js",format:"WARC File Format 1.1",isPartOf:this.metadata.title||this.collId};t&&(n["json-metadata"]=JSON.stringify(t));const r=await se.e.createWARCInfo({filename:e,type:"warcinfo",warcVersion:"WARC/1.1"},n);return await se.f.serialize(r,{gzip:!0})}async createWARCRecord(e){const t=e.url,n=new Date(e.ts).toISOString();e.timestamp=Object(o.g)(n);const r=e.respHeaders,i=e.pageId,s={"WARC-Page-ID":i};e.extraOpts&&Object.keys(e.extraOpts).length&&(s["WARC-JSON-Metadata"]=JSON.stringify(e.extraOpts)),e.digest&&(s["WARC-Payload-Digest"]=e.digest);let a,u,l=e.payload,c=null;const h=this.digestsVisted[e.digest];if(e.digest&&h){if(t===this.lastUrl&&i===this.lastPageId)return null;c="revisit",e.mime="warc/revisit",l=ue,a=h.url,u=h.date}else if(e.origURL&&e.origTS){if(!e.digest)return null;c="revisit",e.mime="warc/revisit",l=ue,a=e.origURL,u=e.origTS}else{if(c="response",l||(l=await this.db.loadPayload(e)),!l)return null;this.digestsVisted[e.digest]={url:t,date:n}}const d=e.status||200,p=`HTTP/1.1 ${d} ${e.statusText||Object(oe.getStatusText)(d)}`,f=await se.e.create({url:t,date:n,type:c,warcVersion:"WARC/1.1",warcHeaders:s,statusline:p,httpHeaders:r,refersToUrl:a,refersToDate:u},le(l)),m=await se.f.serialize(f,{gzip:!0});e.digest||(e.digest=f.warcPayloadDigest),this.lastPageId=i,this.lastUrl=t;const w=[m];if(e.reqHeaders){const r={"WARC-Page-ID":i,"WARC-Concurrent-To":f.warcHeader("WARC-Record-ID")},s=e.method||"GET",o=new URL(t),a=s+" "+t.slice(o.origin.length),u=await se.e.create({url:t,date:n,warcVersion:"WARC/1.1",type:"request",warcHeaders:r,httpHeaders:e.reqHeaders,statusline:a},le(new Uint8Array([])));w.push(await se.f.serialize(u,{gzip:!0}))}return w}async createTextWARCRecord(e){const t=new Date(e.ts).toISOString(),n=Object(o.g)(t);e.timestamp=n;const r=`urn:text:${n}/${e.url}`;e.url=r;const i=le(ae.encode(e.text)),s=await se.e.create({url:r,date:t,warcHeaders:{"Content-Type":'text/plain; charset="UTF-8"'},warcVersion:"WARC/1.1",type:"resource"},i),a=await se.f.serialize(s,{gzip:!0});return e.digest||(e.digest=s.warcPayloadDigest),a}}class de{constructor(e){this.routes={};for(const[t,n]of Object.entries(e)){let e,r;n instanceof Array?(e=n[0],r=n[1]||"GET"):(e=n,r="GET"),this.routes[r]=this.routes[r]||{},this.routes[r][t]=new Q(e)}}match(e,t="GET"){for(const[n,r]of Object.entries(this.routes[t]||[])){const t=e.split("?",2),i=t[0],s=r.test(i);if(s)return s._route=n,s._query=new URLSearchParams(2===t.length?t[1]:""),s}return{_route:null}}}class pe{constructor(e){this.router=new de({index:"index",coll:":coll",urls:":coll/urls",deleteColl:[":coll","DELETE"],updateAuth:[":coll/updateAuth","POST"],curated:":coll/curated/:list",pages:":coll/pages",textIndex:":coll/textIndex",deletePage:[":coll/page/:page","DELETE"],downloadPages:":coll/dl"}),this.collections=e}async apiResponse(e,t,n){const r=await this.handleApi(e,t,n);if(r instanceof Response)return r;const i=r.error?404:200;return this.makeResponse(r,i)}getCollData(e){const t=e.config.metadata?e.config.metadata:{};return{title:t.title||"",desc:t.desc||"",size:t.size||0,filename:e.config.sourceName,sourceUrl:e.config.sourceUrl,id:e.name,ctime:e.config.ctime,onDemand:e.config.onDemand}}async handleApi(e,t,n){let r,i,s,o=this.router.match(e,t);switch(o._route){case"index":return await this.listAll();case"coll":if(r=await this.collections.getColl(o.coll),!r)return{error:"collection_not_found"};const e=this.getCollData(r);return"1"===o._query.get("all")?(e.pages=await r.store.getAllPages(),r.store.db?(e.lists=await r.store.db.getAll("pageLists"),e.curatedPages=await r.store.db.getAll("curatedPages")):(e.lists=[],e.curatedPages=[])):(e.numLists=await r.store.db.count("pageLists"),e.numPages=await r.store.db.count("pages")),e;case"deleteColl":return await this.collections.deleteColl(o.coll)?await this.listAll():{error:"collection_not_found"};case"updateAuth":const t=await n.json();return{success:await this.collections.updateAuth(o.coll,t.headers)};case"urls":if(r=await this.collections.getColl(o.coll),!r)return{error:"collection_not_found"};const a=o._query.get("url");i=Number(o._query.get("count")||100);const u=o._query.get("mime"),l="1"===o._query.get("prefix"),c=o._query.get("fromUrl"),h=o._query.get("fromTs"),d=o._query.get("fromMime"),p=Number(o._query.get("fromStatus")||0);return r.store.resourcesByMime?(s=a?await r.store.resourcesByUrlAndMime(a,u,i,l,c,h):await r.store.resourcesByMime(u,i,d,c,p),{urls:s}):{urls:[]};case"pages":if(r=await this.collections.getColl(o.coll),!r)return{error:"collection_not_found"};return{pages:await r.store.getAllPages()};case"textIndex":return r=await this.collections.getColl(o.coll),r?r.store.getTextIndex?await r.store.getTextIndex():{}:{error:"collection_not_found"};case"curated":if(r=await this.collections.getColl(o.coll),!r)return{error:"collection_not_found"};const f=Number(o.list);return{curated:await r.store.db.getAllFromIndex("curatedPages","listPages",IDBKeyRange.bound([f],[f+1]))};case"deletePage":if(r=await this.collections.getColl(o.coll),!r)return{error:"collection_not_found"};const{pageSize:m,deleteSize:w}=r.store.deletePage(o.page);return this.collections.updateSize(o.coll,m,w),{pageSize:m,deleteSize:w};case"downloadPages":if(r=await this.collections.getColl(o.coll),!r)return{error:"collection_not_found"};const g=o._query.get("pages"),_="all"===g?null:g.split(","),b=new he(r.store,_,o.coll,r.config.metadata),y=o._query.get("format")||"wacz",v=o._query.get("filename")||"webarchive";return"wacz"===y?b.downloadWACZ(v):"warc"===y?b.downloadWARC(v):{error:"invalid 'format': must be wacz or warc"};default:return{error:"not_found"}}}async listAll(){const e=await this.collections.listAll(),t=[];return e.forEach(e=>{"live"!==e.type&&"remoteproxy"!==e.type&&t.push(this.getCollData(e))}),{colls:t}}makeResponse(e,t=200){return new Response(JSON.stringify(e),{status:t,headers:{"Content-Type":"application/json"}})}}class fe extends N.CollectionLoader{constructor(e,t=null){super(),this.prefixes=e,this.colls=null,this.inited=null,this.root=t}_createCollection(e){return new I(e,this.prefixes)}loadAll(e){return this.colls={},this.inited=super.loadAll(e),this.inited}async getColl(e){return this.colls[e]||(this.colls[e]=await this.loadColl(e)),this.colls[e]}async deleteColl(e){return this.colls[e]&&await this.colls[e].store.delete(),await super.deleteColl(e),delete this.colls[e],!0}async updateAuth(e,t){this.colls[e]&&this.colls[e].store.updateHeaders&&this.colls[e].store.updateHeaders(t),await super.updateAuth(e,t)}}class me{constructor(e=null){this.prefix=self.registration?self.registration.scope:"",this.replayPrefix=this.prefix;const t=new URLSearchParams(self.location.search);let n="wabac";t.has("replayPrefix")&&(n=t.get("replayPrefix")),n&&(this.replayPrefix+=n+"/"),this.staticPrefix=this.prefix+"static/",this.distPrefix=this.prefix+"dist/";const r={static:this.staticPrefix,root:this.prefix,main:this.replayPrefix};this.staticData=e||new Map,this.staticData.set(this.staticPrefix+"wombat.js",{type:"application/javascript",content:"/*! wombat.js is part of Webrecorder project. Copyright (C) 2020, Webrecorder Software. Licensed under the Affero General Public License v3. */\n(function(e, a) { for(var i in a) e[i] = a[i]; }(self, /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// define __esModule on exports\n/******/ \t__webpack_require__.r = function(exports) {\n/******/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t}\n/******/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t};\n/******/\n/******/ \t// create a fake namespace object\n/******/ \t// mode & 1: value is a module id, require it\n/******/ \t// mode & 2: merge all properties of value into the ns\n/******/ \t// mode & 4: return value when already ns object\n/******/ \t// mode & 8|1: behave like require\n/******/ \t__webpack_require__.t = function(value, mode) {\n/******/ \t\tif(mode & 1) value = __webpack_require__(value);\n/******/ \t\tif(mode & 8) return value;\n/******/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/******/ \t\tvar ns = Object.create(null);\n/******/ \t\t__webpack_require__.r(ns);\n/******/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/******/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/******/ \t\treturn ns;\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"/dist/\";\n/******/\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = \"./node_modules/wombat/src/wbWombat.js\");\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ \"./node_modules/wombat/src/autoFetcher.js\":\n/*!************************************************!*\\\n !*** ./node_modules/wombat/src/autoFetcher.js ***!\n \\************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return AutoFetcher; });\\n/* harmony import */ var _wombatUtils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./wombatUtils */ \\\"./node_modules/wombat/src/wombatUtils.js\\\");\\n/* eslint-disable camelcase */\\n\\n\\n/**\\n * Create a new instance of AutoFetcher\\n * @param {Wombat} wombat\\n * @param {{isTop: boolean, workerURL: string}} config\\n */\\nfunction AutoFetcher(wombat, config) {\\n if (!(this instanceof AutoFetcher)) {\\n return new AutoFetcher(wombat, config);\\n }\\n // specifically target the elements we desire\\n this.elemSelector =\\n 'img[srcset], img[data-srcset], img[data-src], video[srcset], video[data-srcset], video[data-src], audio[srcset], audio[data-srcset], audio[data-src], ' +\\n 'picture > source[srcset], picture > source[data-srcset], picture > source[data-src], ' +\\n 'video > source[srcset], video > source[data-srcset], video > source[data-src], ' +\\n 'audio > source[srcset], audio > source[data-srcset], audio > source[data-src]';\\n\\n /** @type {Wombat} */\\n this.wombat = wombat;\\n /** @type {Window} */\\n this.$wbwindow = wombat.$wbwindow;\\n\\n /** @type {?Worker|Object} */\\n this.worker = null;\\n Object(_wombatUtils__WEBPACK_IMPORTED_MODULE_0__[\\\"autobind\\\"])(this);\\n this._initWorker(config);\\n}\\n\\n/**\\n * Initializes the backing worker IFF the execution context we are in is\\n * the replay tops otherwise creates a dummy worker that simply bounces the\\n * message that would have been sent to the backing worker to replay top.\\n *\\n * If creation of the worker fails, likely due to the execution context we\\n * are currently in having an null origin, we fallback to dummy worker creation.\\n * @param {{isTop: boolean, workerURL: string}} config\\n * @private\\n */\\nAutoFetcher.prototype._initWorker = function(config) {\\n var wombat = this.wombat;\\n if (config.isTop) {\\n // we are top and can will own this worker\\n // setup URL for the kewl case\\n // Normal replay and preservation mode pworker setup, its all one origin so YAY!\\n try {\\n this.worker = new Worker(config.workerURL, {\\n type: 'classic',\\n credentials: 'include'\\n });\\n } catch (e) {\\n // it is likely we are in some kind of horrid iframe setup\\n // and the execution context we are currently in has a null origin\\n console.error('Failed to create auto fetch worker\\\\n', e);\\n }\\n return;\\n }\\n\\n // add only the portions of the worker interface we use since we are not top\\n // and if in proxy mode start check polling\\n this.worker = {\\n postMessage: function(msg) {\\n if (!msg.wb_type) {\\n msg = { wb_type: 'aaworker', msg: msg };\\n }\\n wombat.$wbwindow.__WB_replay_top.__orig_postMessage(msg, '*');\\n },\\n terminate: function() {}\\n };\\n};\\n\\n/**\\n * Extracts the media rules from the supplied CSSStyleSheet object if any\\n * are present and returns an array of the media cssText\\n * @param {CSSStyleSheet} sheet\\n * @return {Array<string>}\\n */\\nAutoFetcher.prototype.extractMediaRulesFromSheet = function(sheet) {\\n var rules;\\n var media = [];\\n try {\\n rules = sheet.cssRules || sheet.rules;\\n } catch (e) {\\n return media;\\n }\\n\\n // loop through each rule of the stylesheet\\n for (var i = 0; i < rules.length; ++i) {\\n var rule = rules[i];\\n if (rule.type === CSSRule.MEDIA_RULE) {\\n // we are a media rule so get its text\\n media.push(rule.cssText);\\n }\\n }\\n return media;\\n};\\n\\n/**\\n * Extracts the media rules from the supplied CSSStyleSheet object if any\\n * are present after a tick of the event loop sending the results of the\\n * extraction to the backing worker\\n * @param {CSSStyleSheet|StyleSheet} sheet\\n */\\nAutoFetcher.prototype.deferredSheetExtraction = function(sheet) {\\n var afw = this;\\n // defer things until next time the Promise.resolve Qs are cleared\\n Promise.resolve().then(function() {\\n // loop through each rule of the stylesheet\\n var media = afw.extractMediaRulesFromSheet(sheet);\\n if (media.length > 0) {\\n // we have some media rules to preserve\\n afw.preserveMedia(media);\\n }\\n });\\n};\\n\\n/**\\n * Terminates the backing worker. This is a no op when we are not\\n * operating in the execution context of replay top\\n */\\nAutoFetcher.prototype.terminate = function() {\\n // terminate the worker, a no op when not replay top\\n this.worker.terminate();\\n};\\n\\n/**\\n * Sends the supplied array of URLs to the backing worker\\n * @param {Array<string>} urls\\n */\\nAutoFetcher.prototype.justFetch = function(urls) {\\n this.worker.postMessage({ type: 'fetch-all', values: urls });\\n};\\n\\n/**\\n * Sends the supplied url with extra options to indicate\\n * that this is a page to backing worker\\n * @param {string} url\\n * @param {string} originalUrl\\n * @param {string} [title]\\n */\\nAutoFetcher.prototype.fetchAsPage = function(url, originalUrl, title) {\\n if (!url) {\\n return;\\n }\\n\\n var headers = { 'X-Wombat-History-Page': originalUrl };\\n if (title) {\\n var encodedTitle = encodeURIComponent(title.trim());\\n if (title) {\\n headers['X-Wombat-History-Title'] = encodedTitle;\\n }\\n }\\n\\n var fetchData = {\\n url: url,\\n options: { headers: headers, cache: 'no-store' }\\n };\\n\\n this.justFetch([fetchData]);\\n};\\n\\n/**\\n * Sends a message to backing worker. If deferred is true\\n * the message is sent after one tick of the event loop\\n * @param {Object} msg\\n * @param {boolean} [deferred]\\n */\\nAutoFetcher.prototype.postMessage = function(msg, deferred) {\\n if (deferred) {\\n var afWorker = this;\\n Promise.resolve().then(function() {\\n afWorker.worker.postMessage(msg);\\n });\\n return;\\n }\\n this.worker.postMessage(msg);\\n};\\n\\n/**\\n * Sends the supplied srcset value to the backing worker for preservation\\n * @param {string|Array<string>} srcset\\n * @param {string} [mod]\\n */\\nAutoFetcher.prototype.preserveSrcset = function(srcset, mod) {\\n // send values from rewriteSrcset to the worker\\n this.postMessage(\\n {\\n type: 'values',\\n srcset: { value: srcset, mod: mod, presplit: true }\\n },\\n true\\n );\\n};\\n\\n/**\\n * Send the value of the supplied elements data-srcset attribute to the\\n * backing worker for preservation\\n * @param {Node} elem\\n */\\nAutoFetcher.prototype.preserveDataSrcset = function(elem) {\\n // send values from rewriteAttr srcset to the worker deferred\\n // to ensure the page viewer sees the images first\\n this.postMessage(\\n {\\n type: 'values',\\n srcset: {\\n value: elem.dataset.srcset,\\n mod: this.rwMod(elem),\\n presplit: false\\n }\\n },\\n true\\n );\\n};\\n\\n/**\\n * Sends the supplied array of cssText from media rules to the backing worker\\n * @param {Array<string>} media\\n */\\nAutoFetcher.prototype.preserveMedia = function(media) {\\n // send CSSMediaRule values to the worker\\n this.postMessage({ type: 'values', media: media }, true);\\n};\\n\\n/**\\n * Extracts the value of the srcset property if it exists from the supplied\\n * element\\n * @param {Element} elem\\n * @return {?string}\\n */\\nAutoFetcher.prototype.getSrcset = function(elem) {\\n if (this.wombat.wb_getAttribute) {\\n return this.wombat.wb_getAttribute.call(elem, 'srcset');\\n }\\n return elem.getAttribute('srcset');\\n};\\n\\n/**\\n * Returns the correct rewrite modifier for the supplied element\\n * @param {Element} elem\\n * @return {string}\\n */\\nAutoFetcher.prototype.rwMod = function(elem) {\\n switch (elem.tagName) {\\n case 'SOURCE':\\n if (elem.parentElement && elem.parentElement.tagName === 'PICTURE') {\\n return 'im_';\\n }\\n return 'oe_';\\n case 'IMG':\\n return 'im_';\\n }\\n return 'oe_';\\n};\\n\\n/**\\n * Extracts the media rules from stylesheets and the (data-)srcset URLs from\\n * image elements the current context's document contains\\n */\\nAutoFetcher.prototype.extractFromLocalDoc = function() {\\n // get the values to be preserved from the documents stylesheets\\n // and all img, video, audio elements with (data-)?srcset or data-src\\n var afw = this;\\n Promise.resolve().then(function() {\\n var msg = {\\n type: 'values',\\n context: { docBaseURI: document.baseURI }\\n };\\n var media = [];\\n var i = 0;\\n var sheets = document.styleSheets;\\n for (; i < sheets.length; ++i) {\\n media = media.concat(afw.extractMediaRulesFromSheet(sheets[i]));\\n }\\n var elems = document.querySelectorAll(afw.elemSelector);\\n var srcset = { values: [], presplit: false };\\n var src = { values: [] };\\n var elem, srcv, mod;\\n for (i = 0; i < elems.length; ++i) {\\n elem = elems[i];\\n // we want the original src value in order to resolve URLs in the worker when needed\\n srcv = elem.src ? elem.src : null;\\n // a from value of 1 indicates images and a 2 indicates audio/video\\n mod = afw.rwMod(elem);\\n if (elem.srcset) {\\n srcset.values.push({\\n srcset: afw.getSrcset(elem),\\n mod: mod,\\n tagSrc: srcv\\n });\\n }\\n if (elem.dataset.srcset) {\\n srcset.values.push({\\n srcset: elem.dataset.srcset,\\n mod: mod,\\n tagSrc: srcv\\n });\\n }\\n if (elem.dataset.src) {\\n src.values.push({ src: elem.dataset.src, mod: mod });\\n }\\n if (elem.tagName === 'SOURCE' && srcv) {\\n src.values.push({ src: srcv, mod: mod });\\n }\\n }\\n if (media.length) {\\n msg.media = media;\\n }\\n if (srcset.values.length) {\\n msg.srcset = srcset;\\n }\\n if (src.values.length) {\\n msg.src = src;\\n }\\n if (msg.media || msg.srcset || msg.src) {\\n afw.postMessage(msg);\\n }\\n });\\n};\\n\\n\\n//# sourceURL=webpack:///./node_modules/wombat/src/autoFetcher.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/wombat/src/customStorage.js\":\n/*!**************************************************!*\\\n !*** ./node_modules/wombat/src/customStorage.js ***!\n \\**************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return Storage; });\\n/* harmony import */ var _wombatUtils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./wombatUtils */ \\\"./node_modules/wombat/src/wombatUtils.js\\\");\\n\\n\\n/**\\n * A re-implementation of the Storage interface.\\n * This re-implementation is required for replay in order to ensure\\n * that web pages that require local or session storage work as expected as\\n * there is sometimes a limit on the amount of storage space that can be used.\\n * This re-implementation ensures that limit is unlimited as it would be in\\n * the live-web.\\n * @param {Wombat} wombat\\n * @param {string} proxying\\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Storage\\n * @see https://html.spec.whatwg.org/multipage/webstorage.html#the-storage-interface\\n */\\nfunction Storage(wombat, proxying) {\\n if (_wombatUtils__WEBPACK_IMPORTED_MODULE_0__[\\\"ThrowExceptions\\\"].yes) {\\n // there is no constructor exposed for this interface however there is an\\n // interface object exposed, thus we must throw an TypeError if userland\\n // attempts to create us\\n throw new TypeError('Illegal constructor');\\n }\\n // hide our values from enumeration, spreed, et al\\n Object.defineProperties(this, {\\n data: {\\n enumerable: false,\\n value: {}\\n },\\n wombat: {\\n enumerable: false,\\n value: wombat\\n },\\n proxying: {\\n enumerable: false,\\n value: proxying\\n },\\n _deleteItem: {\\n enumerable: false,\\n value: function(item) {\\n delete this.data[item];\\n }\\n }\\n });\\n}\\n\\n/**\\n * When passed a key name, will return that key's value\\n * @param {string} name\\n * @return {*}\\n */\\nStorage.prototype.getItem = function getItem(name) {\\n return this.data.hasOwnProperty(name) ? this.data[name] : null;\\n};\\n\\n/**\\n * When passed a key name and value, will add that key to the storage,\\n * or update that key's value if it already exists\\n * @param {string} name\\n * @param {*} value\\n * @return {*}\\n */\\nStorage.prototype.setItem = function setItem(name, value) {\\n var sname = String(name);\\n var svalue = String(value);\\n var old = this.getItem(sname);\\n this.data[sname] = value;\\n this.fireEvent(sname, old, svalue);\\n return undefined;\\n};\\n\\n/**\\n * When passed a key name, will remove that key from the storage\\n * @param {string} name\\n * @return {undefined}\\n */\\nStorage.prototype.removeItem = function removeItem(name) {\\n var old = this.getItem(name);\\n this._deleteItem(name);\\n this.fireEvent(name, old, null);\\n return undefined;\\n};\\n\\n/**\\n * When invoked, will empty all keys out of the storage\\n * @return {undefined}\\n */\\nStorage.prototype.clear = function clear() {\\n this.data = {};\\n this.fireEvent(null, null, null);\\n return undefined;\\n};\\n\\n/**\\n * When passed a number n, this method will return the name of the nth key in the storage\\n * @param {number} index\\n * @return {*}\\n */\\nStorage.prototype.key = function key(index) {\\n var n = Object(_wombatUtils__WEBPACK_IMPORTED_MODULE_0__[\\\"ensureNumber\\\"])(index);\\n if (n == null || n < 0) return null;\\n var keys = Object.keys(this.data);\\n if (n < keys.length) return keys[n];\\n return null;\\n};\\n\\n/**\\n * Because we are re-implementing the storage interface we must fire StorageEvent\\n * ourselves, this function does just that.\\n * @param {?string} key\\n * @param {*} oldValue\\n * @param {*} newValue\\n * @see https://html.spec.whatwg.org/multipage/webstorage.html#send-a-storage-notification\\n */\\nStorage.prototype.fireEvent = function fireEvent(key, oldValue, newValue) {\\n var sevent = new StorageEvent('storage', {\\n key: key,\\n newValue: newValue,\\n oldValue: oldValue,\\n url: this.wombat.$wbwindow.WB_wombat_location.href\\n });\\n // storage is a read only property of StorageEvent\\n // that must be on the fired instance of the event\\n Object.defineProperty(sevent, 'storageArea', {\\n value: this,\\n writable: false,\\n configurable: false\\n });\\n sevent._storageArea = this;\\n this.wombat.storage_listeners.map(sevent);\\n};\\n\\n/**\\n * An override of the valueOf function that returns wombat's Proxy for the\\n * specific storage this class is for, either local or session storage.\\n * @return {Proxy<Storage>}\\n */\\nStorage.prototype.valueOf = function valueOf() {\\n return this.wombat.$wbwindow[this.proxying];\\n};\\n\\n// the length getter is on the prototype (__proto__ modern browsers)\\nObject.defineProperty(Storage.prototype, 'length', {\\n enumerable: false,\\n get: function length() {\\n return Object.keys(this.data).length;\\n }\\n});\\n\\nObject(_wombatUtils__WEBPACK_IMPORTED_MODULE_0__[\\\"addToStringTagToClass\\\"])(Storage, 'Storage');\\n\\n\\n//# sourceURL=webpack:///./node_modules/wombat/src/customStorage.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/wombat/src/funcMap.js\":\n/*!********************************************!*\\\n !*** ./node_modules/wombat/src/funcMap.js ***!\n \\********************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return FuncMap; });\\n/**\\n * A class that manages event listeners for the override applied to\\n * EventTarget.[addEventListener, removeEventListener]\\n */\\nfunction FuncMap() {\\n /**\\n * @type {Array<Function[]>}\\n * @private\\n */\\n this._map = [];\\n}\\n\\n/**\\n * Adds a mapping of original listener -> wrapped original listener\\n * @param {Function} fnKey - The original listener function\\n * @param {Function} fnValue - The wrapped original listener function\\n */\\nFuncMap.prototype.set = function(fnKey, fnValue) {\\n this._map.push([fnKey, fnValue]);\\n};\\n\\n/**\\n * Returns the wrapped original listener that is mapped to the supplied function\\n * if it exists in the FuncMap's mapping\\n * @param {Function} fnKey - The original listener function\\n * @return {?Function}\\n */\\nFuncMap.prototype.get = function(fnKey) {\\n for (var i = 0; i < this._map.length; i++) {\\n if (this._map[i][0] === fnKey) {\\n return this._map[i][1];\\n }\\n }\\n return null;\\n};\\n\\n/**\\n * Returns the index of the wrapper for the supplied original function\\n * if it exists in the FuncMap's mapping\\n * @param {Function} fnKey - The original listener function\\n * @return {number}\\n */\\nFuncMap.prototype.find = function(fnKey) {\\n for (var i = 0; i < this._map.length; i++) {\\n if (this._map[i][0] === fnKey) {\\n return i;\\n }\\n }\\n return -1;\\n};\\n\\n/**\\n * Returns the wrapped original listener function for the supplied original\\n * listener function. If the wrapped original listener does not exist in\\n * FuncMap's mapping it is added.\\n * @param {Function} func - The original listener function\\n * @param {Function} initter - The a function that returns a wrapped version\\n * of the original listener function\\n * @return {?Function}\\n */\\nFuncMap.prototype.add_or_get = function(func, initter) {\\n var fnValue = this.get(func);\\n if (!fnValue) {\\n fnValue = initter();\\n this.set(func, fnValue);\\n }\\n return fnValue;\\n};\\n\\n/**\\n * Removes the mapping of the original listener function to its wrapped counter part\\n * @param {Function} func - The original listener function\\n * @return {?Function}\\n */\\nFuncMap.prototype.remove = function(func) {\\n var idx = this.find(func);\\n if (idx >= 0) {\\n var fnMapping = this._map.splice(idx, 1);\\n return fnMapping[0][1];\\n }\\n return null;\\n};\\n\\n/**\\n * Calls all wrapped listener functions contained in the FuncMap's mapping\\n * with the supplied param\\n * @param {*} param\\n */\\nFuncMap.prototype.map = function(param) {\\n for (var i = 0; i < this._map.length; i++) {\\n this._map[i][1](param);\\n }\\n};\\n\\n\\n//# sourceURL=webpack:///./node_modules/wombat/src/funcMap.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/wombat/src/listeners.js\":\n/*!**********************************************!*\\\n !*** ./node_modules/wombat/src/listeners.js ***!\n \\**********************************************/\n/*! exports provided: wrapSameOriginEventListener, wrapEventListener */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"wrapSameOriginEventListener\\\", function() { return wrapSameOriginEventListener; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"wrapEventListener\\\", function() { return wrapEventListener; });\\n/* eslint-disable camelcase */\\n\\n/**\\n *\\n * @param {Function} origListener\\n * @param {Window} win\\n * @return {Function}\\n */\\nfunction wrapSameOriginEventListener(origListener, win) {\\n return function wrappedSameOriginEventListener(event) {\\n if (window != win) {\\n return;\\n }\\n return origListener(event);\\n };\\n}\\n\\n/**\\n * @param {Function} origListener\\n * @param {Object} obj\\n * @param {Wombat} wombat\\n * @return {Function}\\n */\\nfunction wrapEventListener(origListener, obj, wombat) {\\n var origListenerFunc;\\n\\n // if a function, just use that\\n if (typeof(origListener) === \\\"function\\\") {\\n origListenerFunc = origListener;\\n // if an EventHandler object, use its handleEvent() bound method\\n } else if (typeof(origListener) === \\\"object\\\") {\\n origListenerFunc = origListener.handleEvent.bind(origListener);\\n // else do nothing!\\n } else {\\n origListenerFunc = function() {}\\n }\\n\\n return function wrappedEventListener(event) {\\n var ne;\\n\\n if (event.data && event.data.from && event.data.message) {\\n if (\\n event.data.to_origin !== '*' &&\\n obj.WB_wombat_location &&\\n !wombat.startsWith(event.data.to_origin, obj.WB_wombat_location.origin)\\n ) {\\n console.warn(\\n 'Skipping message event to ' +\\n event.data.to_origin +\\n \\\" doesn't start with origin \\\" +\\n obj.WB_wombat_location.origin\\n );\\n return;\\n }\\n\\n var source = event.source;\\n\\n if (event.data.from_top) {\\n source = obj.__WB_top_frame;\\n } else if (\\n event.data.src_id &&\\n obj.__WB_win_id &&\\n obj.__WB_win_id[event.data.src_id]\\n ) {\\n source = obj.__WB_win_id[event.data.src_id];\\n }\\n\\n ne = new MessageEvent('message', {\\n bubbles: event.bubbles,\\n cancelable: event.cancelable,\\n data: event.data.message,\\n origin: event.data.from,\\n lastEventId: event.lastEventId,\\n source: wombat.proxyToObj(source),\\n ports: event.ports\\n });\\n\\n ne._target = event.target;\\n ne._srcElement = event.srcElement;\\n ne._currentTarget = event.currentTarget;\\n ne._eventPhase = event.eventPhase;\\n ne._path = event.path;\\n } else {\\n ne = event;\\n }\\n\\n return origListenerFunc(ne);\\n };\\n}\\n\\n\\n//# sourceURL=webpack:///./node_modules/wombat/src/listeners.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/wombat/src/wbWombat.js\":\n/*!*********************************************!*\\\n !*** ./node_modules/wombat/src/wbWombat.js ***!\n \\*********************************************/\n/*! no exports provided */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _wombat__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./wombat */ \\\"./node_modules/wombat/src/wombat.js\\\");\\n\\n\\nwindow._WBWombat = _wombat__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"];\\nwindow._WBWombatInit = function(wbinfo) {\\n if (!this._wb_wombat || !this._wb_wombat.actual) {\\n var wombat = new _wombat__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"](this, wbinfo);\\n wombat.actual = true;\\n this._wb_wombat = wombat.wombatInit();\\n this._wb_wombat.actual = true;\\n } else if (!this._wb_wombat) {\\n console.warn('_wb_wombat missing!');\\n }\\n};\\n\\n\\n//# sourceURL=webpack:///./node_modules/wombat/src/wbWombat.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/wombat/src/wombat.js\":\n/*!*******************************************!*\\\n !*** ./node_modules/wombat/src/wombat.js ***!\n \\*******************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _funcMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./funcMap */ \\\"./node_modules/wombat/src/funcMap.js\\\");\\n/* harmony import */ var _customStorage__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./customStorage */ \\\"./node_modules/wombat/src/customStorage.js\\\");\\n/* harmony import */ var _wombatLocation__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./wombatLocation */ \\\"./node_modules/wombat/src/wombatLocation.js\\\");\\n/* harmony import */ var _autoFetcher__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./autoFetcher */ \\\"./node_modules/wombat/src/autoFetcher.js\\\");\\n/* harmony import */ var _listeners__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./listeners */ \\\"./node_modules/wombat/src/listeners.js\\\");\\n/* harmony import */ var _wombatUtils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./wombatUtils */ \\\"./node_modules/wombat/src/wombatUtils.js\\\");\\n/* eslint-disable camelcase */\\n\\n\\n\\n\\n\\n\\n\\n/**\\n * @param {Window} $wbwindow\\n * @param {Object} wbinfo\\n */\\nfunction Wombat($wbwindow, wbinfo) {\\n if (!(this instanceof Wombat)) return new Wombat($wbwindow, wbinfo);\\n\\n /** @type {boolean} */\\n this.actual = false;\\n\\n /** @type {boolean} */\\n this.debug_rw = false;\\n\\n /** @type {Window} */\\n this.$wbwindow = $wbwindow;\\n\\n /** @type {string} */\\n this.HTTP_PREFIX = 'http://';\\n\\n /** @type {string} */\\n this.HTTPS_PREFIX = 'https://';\\n\\n /** @type {string} */\\n this.REL_PREFIX = '//';\\n\\n /** @type {Array<string>} */\\n this.VALID_PREFIXES = [this.HTTP_PREFIX, this.HTTPS_PREFIX, this.REL_PREFIX];\\n\\n /** @type {Array<string>} */\\n this.IGNORE_PREFIXES = [\\n '#',\\n 'about:',\\n 'data:',\\n 'blob:',\\n 'mailto:',\\n 'javascript:',\\n '{',\\n '*'\\n ];\\n if ('ignore_prefixes' in wbinfo) {\\n this.IGNORE_PREFIXES = this.IGNORE_PREFIXES.concat(wbinfo.ignore_prefixes);\\n }\\n\\n this.WB_CHECK_THIS_FUNC = '_____WB$wombat$check$this$function_____';\\n this.WB_ASSIGN_FUNC = '_____WB$wombat$assign$function_____';\\n\\n /** @type {function(qualifiedName: string, value: string): void} */\\n this.wb_setAttribute = $wbwindow.Element.prototype.setAttribute;\\n\\n /** @type {function(qualifiedName: string): ?string} */\\n this.wb_getAttribute = $wbwindow.Element.prototype.getAttribute;\\n\\n /** @type {function(): string} */\\n this.wb_funToString = Function.prototype.toString;\\n\\n /** @type {AutoFetcher} */\\n this.WBAutoFetchWorker = null;\\n\\n /** @type {boolean} */\\n this.wbUseAFWorker =\\n wbinfo.enable_auto_fetch && $wbwindow.Worker != null && wbinfo.is_live;\\n\\n /** @type {string} */\\n this.wb_rel_prefix = '';\\n\\n /** @type {boolean} */\\n this.wb_wombat_updating = false;\\n\\n /** @type {FuncMap} */\\n this.message_listeners = new _funcMap__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"]();\\n\\n /** @type {FuncMap} */\\n this.storage_listeners = new _funcMap__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"]();\\n\\n /**\\n * rewrite modifiers for <link href=\\\"URL\\\" rel=\\\"import|preload\\\" as=\\\"x\\\">\\n * expressed as as-value -> modifier\\n * @type {Object}\\n */\\n this.linkAsTypes = {\\n script: 'js_',\\n worker: 'js_',\\n style: 'cs_',\\n image: 'im_',\\n document: 'if_',\\n fetch: 'mp_',\\n font: 'oe_',\\n audio: 'oe_',\\n video: 'oe_',\\n embed: 'oe_',\\n object: 'oe_',\\n track: 'oe_',\\n // the following cover the default case\\n '': 'mp_',\\n null: 'mp_',\\n undefined: 'mp_'\\n };\\n\\n /**\\n * rewrite modifiers for <link href=\\\"URL\\\" rel=\\\"x\\\"> and or\\n * <link href=\\\"URL\\\" rel=\\\"x\\\" as=\\\"y\\\"> expressed as a mapping of\\n * rel -> modifier or rel -> as -> modifier\\n * @type {Object}\\n */\\n this.linkTagMods = {\\n linkRelToAs: {\\n import: this.linkAsTypes,\\n preload: this.linkAsTypes\\n },\\n stylesheet: 'cs_',\\n // the following cover the default case\\n null: 'mp_',\\n undefined: 'mp_',\\n '': 'mp_'\\n };\\n\\n /**\\n * pre-computed modifiers for each tag\\n * @type {Object}\\n */\\n this.tagToMod = {\\n A: { href: 'mp_' },\\n AREA: { href: 'mp_' },\\n AUDIO: { src: 'oe_', poster: 'im_' },\\n BASE: { href: 'mp_' },\\n EMBED: { src: 'oe_' },\\n FORM: { action: 'mp_' },\\n FRAME: { src: 'fr_' },\\n IFRAME: { src: 'if_' },\\n IMAGE: { href: 'im_', 'xlink:href': 'im_' },\\n IMG: { src: 'im_', srcset: 'im_' },\\n INPUT: { src: 'oe_' },\\n INS: { cite: 'mp_' },\\n META: { content: 'mp_' },\\n OBJECT: { data: 'oe_', codebase: 'oe_' },\\n Q: { cite: 'mp_' },\\n // covers both HTML and SVG script element,\\n SCRIPT: { src: 'js_', 'xlink:href': 'js_' },\\n SOURCE: { src: 'oe_', srcset: 'oe_' },\\n TRACK: { src: 'oe_' },\\n VIDEO: { src: 'oe_', poster: 'im_' },\\n image: { href: 'im_', 'xlink:href': 'im_' }\\n };\\n\\n /** @type {Array<string>} */\\n this.URL_PROPS = [\\n 'href',\\n 'hash',\\n 'pathname',\\n 'host',\\n 'hostname',\\n 'protocol',\\n 'origin',\\n 'search',\\n 'port'\\n ];\\n\\n /** @type {Object} */\\n this.wb_info = wbinfo;\\n\\n /**\\n * custom options\\n * @type {Object}\\n */\\n this.wb_opts = wbinfo.wombat_opts;\\n\\n /** @type {string} */\\n this.wb_replay_prefix = wbinfo.prefix;\\n\\n /** @type {boolean} */\\n this.wb_is_proxy = this.wb_info.proxy_magic || !this.wb_replay_prefix;\\n\\n /** @type {string} */\\n this.wb_info.top_host = this.wb_info.top_host || '*';\\n\\n /** @type {string} */\\n this.wb_curr_host =\\n $wbwindow.location.protocol + '//' + $wbwindow.location.host;\\n\\n /** @type {Object} */\\n this.wb_info.wombat_opts = this.wb_info.wombat_opts || {};\\n\\n /** @type {string} */\\n this.wb_orig_scheme = this.wb_info.wombat_scheme + '://';\\n /** @type {string} */\\n this.wb_orig_origin = this.wb_orig_scheme + this.wb_info.wombat_host;\\n\\n /** @type {string} */\\n this.wb_abs_prefix = this.wb_replay_prefix;\\n\\n /** @type {string} */\\n this.wb_capture_date_part = '';\\n if (!this.wb_info.is_live && this.wb_info.wombat_ts) {\\n this.wb_capture_date_part = '/' + this.wb_info.wombat_ts + '/';\\n }\\n\\n /** @type {Array<string>} */\\n this.BAD_PREFIXES = [\\n 'http:' + this.wb_replay_prefix,\\n 'https:' + this.wb_replay_prefix,\\n 'http:/' + this.wb_replay_prefix,\\n 'https:/' + this.wb_replay_prefix\\n ];\\n\\n /** @type {RegExp} */\\n this.hostnamePortRe = /^[\\\\w-]+(\\\\.[\\\\w-_]+)+(:\\\\d+)(\\\\/|$)/;\\n\\n /** @type {RegExp} */\\n this.ipPortRe = /^\\\\d+\\\\.\\\\d+\\\\.\\\\d+\\\\.\\\\d+(:\\\\d+)?(\\\\/|$)/;\\n\\n /** @type {RegExp} */\\n this.workerBlobRe = /__WB_pmw\\\\(.*?\\\\)\\\\.(?=postMessage\\\\()/g;\\n /** @type {RegExp} */\\n this.rmCheckThisInjectRe = /_____WB\\\\$wombat\\\\$check\\\\$this\\\\$function_____\\\\(.*?\\\\)/g;\\n\\n /** @type {RegExp} */\\n this.STYLE_REGEX = /(url\\\\s*\\\\(\\\\s*[\\\\\\\\\\\"']*)([^)'\\\"]+)([\\\\\\\\\\\"']*\\\\s*\\\\))/gi;\\n\\n /** @type {RegExp} */\\n this.IMPORT_REGEX = /(@import\\\\s*[\\\\\\\\\\\"']*)([^)'\\\";]+)([\\\\\\\\\\\"']*\\\\s*;?)/gi;\\n\\n /** @type {RegExp} */\\n this.no_wombatRe = /WB_wombat_/g;\\n\\n /** @type {RegExp} */\\n this.srcsetRe = /\\\\s*(\\\\S*\\\\s+[\\\\d.]+[wx]),|(?:\\\\s*,(?:\\\\s+|(?=https?:)))/;\\n\\n /** @type {RegExp} */\\n this.cookie_path_regex = /\\\\bPath='?\\\"?([^;'\\\"\\\\s]+)/i;\\n\\n /** @type {RegExp} */\\n this.cookie_domain_regex = /\\\\bDomain=([^;'\\\"\\\\s]+)/i;\\n\\n /** @type {RegExp} */\\n this.cookie_expires_regex = /\\\\bExpires=([^;'\\\"]+)/gi;\\n\\n /** @type {RegExp} */\\n this.SetCookieRe = /,(?![|])/;\\n\\n /** @type {RegExp} */\\n this.IP_RX = /^(\\\\d)+\\\\.(\\\\d)+\\\\.(\\\\d)+\\\\.(\\\\d)+$/;\\n\\n /** @type {RegExp} */\\n this.FullHTMLRegex = /^\\\\s*<(?:html|head|body|!doctype html)/i;\\n\\n /** @type {RegExp} */\\n this.IsTagRegex = /^\\\\s*</;\\n\\n /** @type {RegExp} */\\n this.DotPostMessageRe = /(.postMessage\\\\s*\\\\()/;\\n\\n /** @type {RegExp} */\\n this.extractPageUnderModiferRE = /\\\\/(?:[0-9]{14})?([a-z]{2, 3}_)\\\\//;\\n\\n /** @type {string} */\\n this.write_buff = '';\\n\\n var eTargetProto = ($wbwindow.EventTarget || {}).prototype;\\n /** @type {Object} */\\n this.utilFns = {\\n cspViolationListener: function(e) {\\n console.group('CSP Violation');\\n console.log('Replayed Page URL', window.WB_wombat_location.href);\\n console.log('The documentURI', e.documentURI);\\n console.log('The blocked URL', e.blockedURI);\\n console.log('The directive violated', e.violatedDirective);\\n console.log('Our policy', e.originalPolicy);\\n if (e.sourceFile) {\\n var fileInfo = 'File: ' + e.sourceFile;\\n if (e.lineNumber && e.columnNumber) {\\n fileInfo += ' @ ' + e.lineNumber + ':' + e.columnNumber;\\n } else if (e.lineNumber) {\\n fileInfo += ' @ ' + e.lineNumber;\\n }\\n console.log(fileInfo);\\n }\\n console.groupEnd();\\n },\\n addEventListener: eTargetProto.addEventListener,\\n removeEventListener: eTargetProto.removeEventListener,\\n // some sites do funky things with the toString function\\n // (e.g. if used throw error or deny operation) hence we\\n // need a surefire and safe way to tell us what an object\\n // or function is hence Objects native toString\\n objToString: Object.prototype.toString,\\n wbSheetMediaQChecker: null,\\n XHRopen: null\\n };\\n /**\\n * @type {{yesNo: boolean, added: boolean}}\\n */\\n this.showCSPViolations = { yesNo: false, added: false };\\n Object(_wombatUtils__WEBPACK_IMPORTED_MODULE_5__[\\\"autobind\\\"])(this);\\n // this._addRemoveCSPViolationListener(true);\\n}\\n\\n/**\\n * Performs the initialization of wombat's internals:\\n * - {@link initTopFrame}\\n * - {@link initWombatLoc}\\n * - {@link initWombatTop}\\n * - {@link initAutoFetchWorker}\\n * - initializes the wb_rel_prefix property\\n * - initializes the wb_unrewrite_rx property\\n * - if we are in framed replay mode and the wb_info mod is not bn_\\n * {@link initTopFrameNotify} is called\\n * @private\\n */\\nWombat.prototype._internalInit = function() {\\n this.initTopFrame(this.$wbwindow);\\n this.initWombatLoc(this.$wbwindow);\\n this.initWombatTop(this.$wbwindow);\\n // updated wb_unrewrite_rx for imgur.com\\n var wb_origin = this.$wbwindow.__WB_replay_top.location.origin;\\n var wb_host = this.$wbwindow.__WB_replay_top.location.host;\\n var wb_proto = this.$wbwindow.__WB_replay_top.location.protocol;\\n if (this.wb_replay_prefix && this.wb_replay_prefix.indexOf(wb_origin) === 0) {\\n this.wb_rel_prefix = this.wb_replay_prefix.substring(wb_origin.length);\\n } else {\\n this.wb_rel_prefix = this.wb_replay_prefix;\\n }\\n\\n // make the protocol and host optional now\\n var rx =\\n '((' + wb_proto + ')?//' + wb_host + ')?' + this.wb_rel_prefix + '[^/]+/';\\n this.wb_unrewrite_rx = new RegExp(rx, 'g');\\n\\n if (this.wb_info.is_framed && this.wb_info.mod !== 'bn_') {\\n this.initTopFrameNotify(this.wb_info);\\n }\\n this.initAutoFetchWorker();\\n};\\n\\n/**\\n * Internal function that adds a \\\"securitypolicyviolation\\\" event listener\\n * to the document that will log any CSP violations in a nicer way than\\n * is the default\\n *\\n * If the yesNo argument is true, the event listener is added, otherwise\\n * it is removed\\n * @param {boolean} yesNo\\n * @private\\n */\\nWombat.prototype._addRemoveCSPViolationListener = function(yesNo) {\\n this.showCSPViolations.yesNo = yesNo;\\n if (this.showCSPViolations.yesNo && !this.showCSPViolations.added) {\\n this.showCSPViolations.added = true;\\n this._addEventListener(\\n document,\\n 'securitypolicyviolation',\\n this.utilFns.cspViolationListener\\n );\\n } else {\\n this.showCSPViolations.added = false;\\n this._removeEventListener(\\n document,\\n 'securitypolicyviolation',\\n this.utilFns.cspViolationListener\\n );\\n }\\n};\\n\\n/**\\n * Adds the supplied event listener on the supplied event target\\n * @param {Object} obj\\n * @param {string} event\\n * @param {Function} fun\\n * @return {*}\\n * @private\\n */\\nWombat.prototype._addEventListener = function(obj, event, fun) {\\n if (this.utilFns.addEventListener) {\\n return this.utilFns.addEventListener.call(obj, event, fun);\\n }\\n obj.addEventListener(event, fun);\\n};\\n\\n/**\\n * Removes the supplied event listener on the supplied event target\\n * @param {Object} obj\\n * @param {string} event\\n * @param {Function} fun\\n * @return {*}\\n * @private\\n */\\nWombat.prototype._removeEventListener = function(obj, event, fun) {\\n if (this.utilFns.removeEventListener) {\\n return this.utilFns.removeEventListener.call(obj, event, fun);\\n }\\n obj.removeEventListener(event, fun);\\n};\\n\\n/**\\n * Extracts the modifier (i.e. mp\\\\_, if\\\\_, ...) the page is under that wombat is\\n * operating in. If extracting the modifier fails for some reason mp\\\\_ is returned.\\n * Used to ensure the correct modifier is used for rewriting the service workers scope.\\n * @return {string}\\n */\\nWombat.prototype.getPageUnderModifier = function() {\\n try {\\n var pageUnderModifier = this.extractPageUnderModiferRE.exec(\\n location.pathname\\n );\\n if (pageUnderModifier && pageUnderModifier[1]) {\\n var mod = pageUnderModifier[1].trim();\\n return mod || 'mp_';\\n }\\n } catch (e) {}\\n return 'mp_';\\n};\\n\\n/**\\n * Returns T/F indicating if the supplied function is a native function\\n * or not. The test checks for the presence of the substring `'[native code]'`\\n * in the result of calling `toString` on the function\\n * @param {Function} funToTest - The function to be tested\\n * @return {boolean}\\n */\\nWombat.prototype.isNativeFunction = function(funToTest) {\\n if (!funToTest || typeof funToTest !== 'function') return false;\\n return this.wb_funToString.call(funToTest).indexOf('[native code]') >= 0;\\n};\\n\\n/**\\n * Returns T/F indicating if the supplied argument is a string or not\\n * @param {*} arg\\n * @return {boolean}\\n */\\nWombat.prototype.isString = function(arg) {\\n return arg != null && Object.getPrototypeOf(arg) === String.prototype;\\n};\\n\\n/**\\n * Returns T/F indicating if the supplied element may have attributes that\\n * are auto-fetched\\n * @param {Element} elem\\n * @return {boolean}\\n */\\nWombat.prototype.isSavedSrcSrcset = function(elem) {\\n switch (elem.tagName) {\\n case 'IMG':\\n case 'VIDEO':\\n case 'AUDIO':\\n return true;\\n case 'SOURCE':\\n if (!elem.parentElement) return false;\\n switch (elem.parentElement.tagName) {\\n case 'PICTURE':\\n case 'VIDEO':\\n case 'AUDIO':\\n return true;\\n default:\\n return false;\\n }\\n default:\\n return false;\\n }\\n};\\n\\n/**\\n * Returns T/F indicating if the supplied element is an Image element that\\n * may have srcset values to be sent to the backing auto-fetch worker\\n * @param {Element} elem\\n * @return {boolean}\\n */\\nWombat.prototype.isSavedDataSrcSrcset = function(elem) {\\n if (elem.dataset && elem.dataset.srcset != null) {\\n return this.isSavedSrcSrcset(elem);\\n }\\n return false;\\n};\\n\\n/**\\n * Determines if the supplied string is an host URL\\n * @param {string} str\\n * @return {boolean}\\n */\\nWombat.prototype.isHostUrl = function(str) {\\n // Good guess that's its a hostname\\n if (str.indexOf('www.') === 0) {\\n return true;\\n }\\n\\n // hostname:port (port required)\\n var matches = str.match(this.hostnamePortRe);\\n if (matches && matches[0].length < 64) {\\n return true;\\n }\\n\\n // ip:port\\n matches = str.match(this.ipPortRe);\\n if (matches) {\\n return matches[0].length < 64;\\n }\\n return false;\\n};\\n\\n/**\\n * Returns T/F indicating if the supplied object is the arguments object\\n * @param {*} maybeArgumentsObj\\n * @return {boolean}\\n */\\nWombat.prototype.isArgumentsObj = function(maybeArgumentsObj) {\\n if (\\n !maybeArgumentsObj ||\\n !(typeof maybeArgumentsObj.toString === 'function')\\n ) {\\n return false;\\n }\\n try {\\n return (\\n this.utilFns.objToString.call(maybeArgumentsObj) === '[object Arguments]'\\n );\\n } catch (e) {\\n return false;\\n }\\n};\\n\\n/**\\n * Ensures that each element in the supplied arguments object or\\n * array is deproxied handling cases where we can not modify the\\n * supplied object returning a new or modified object with the\\n * exect elements/properties\\n * @param {*} maybeArgumentsObj\\n * @return {*}\\n */\\nWombat.prototype.deproxyArrayHandlingArgumentsObj = function(\\n maybeArgumentsObj\\n) {\\n if (\\n !maybeArgumentsObj ||\\n maybeArgumentsObj instanceof NodeList ||\\n !maybeArgumentsObj.length\\n ) {\\n return maybeArgumentsObj;\\n }\\n var args = this.isArgumentsObj(maybeArgumentsObj)\\n ? new Array(maybeArgumentsObj.length)\\n : maybeArgumentsObj;\\n for (var i = 0; i < maybeArgumentsObj.length; ++i) {\\n const res = this.proxyToObj(maybeArgumentsObj[i]);\\n if (res !== args[i]) {\\n args[i] = res;\\n }\\n }\\n return args;\\n};\\n\\n/**\\n * Determines if a string starts with the supplied prefix.\\n * If it does the matching prefix is returned otherwise undefined.\\n * @param {?string} string\\n * @param {string} prefix\\n * @return {?string}\\n */\\nWombat.prototype.startsWith = function(string, prefix) {\\n if (!string) return undefined;\\n return string.indexOf(prefix) === 0 ? prefix : undefined;\\n};\\n\\n/**\\n * Determines if a string starts with the supplied array of prefixes.\\n * If it does the matching prefix is returned otherwise undefined.\\n * @param {?string} string\\n * @param {Array<string>} prefixes\\n * @return {?string}\\n */\\nWombat.prototype.startsWithOneOf = function(string, prefixes) {\\n if (!string) return undefined;\\n for (var i = 0; i < prefixes.length; i++) {\\n if (string.indexOf(prefixes[i]) === 0) {\\n return prefixes[i];\\n }\\n }\\n return undefined;\\n};\\n\\n/**\\n * Determines if a string ends with the supplied suffix.\\n * If it does the suffix is returned otherwise undefined.\\n * @param {?string} str\\n * @param {string} suffix\\n * @return {?string}\\n */\\nWombat.prototype.endsWith = function(str, suffix) {\\n if (!str) return undefined;\\n if (str.indexOf(suffix, str.length - suffix.length) !== -1) {\\n return suffix;\\n }\\n return undefined;\\n};\\n\\n/**\\n * Returns T/F indicating if the supplied tag name and attribute name\\n * combination are to be rewritten\\n * @param {string} tagName\\n * @param {string} attr\\n * @return {boolean}\\n */\\nWombat.prototype.shouldRewriteAttr = function(tagName, attr) {\\n switch (attr) {\\n case 'href':\\n case 'src':\\n case 'xlink:href':\\n return true;\\n }\\n if (\\n tagName &&\\n this.tagToMod[tagName] &&\\n this.tagToMod[tagName][attr] !== undefined\\n ) {\\n return true;\\n }\\n return (\\n (tagName === 'VIDEO' && attr === 'poster') ||\\n (tagName === 'META' && attr === 'content')\\n );\\n};\\n\\n/**\\n * Returns T/F indicating if the script tag being rewritten should not\\n * have its text contents wrapped based on the supplied script type.\\n * @param {?string} scriptType\\n * @return {boolean}\\n */\\nWombat.prototype.skipWrapScriptBasedOnType = function(scriptType) {\\n if (!scriptType) return false;\\n if (scriptType.indexOf('json') >= 0) return true;\\n return scriptType.indexOf('text/template') >= 0;\\n};\\n\\n/**\\n * Returns T/F indicating if the script tag being rewritten should not\\n * have its text contents wrapped based on heuristic analysis of its\\n * text contents.\\n * @param {?string} text\\n * @return {boolean}\\n */\\nWombat.prototype.skipWrapScriptTextBasedOnText = function(text) {\\n if (\\n !text ||\\n text.indexOf(this.WB_ASSIGN_FUNC) >= 0 ||\\n text.indexOf('<') === 0\\n ) {\\n return true;\\n }\\n var override_props = [\\n 'window',\\n 'self',\\n 'document',\\n 'location',\\n 'top',\\n 'parent',\\n 'frames',\\n 'opener'\\n ];\\n\\n for (var i = 0; i < override_props.length; i++) {\\n if (text.indexOf(override_props[i]) >= 0) {\\n return false;\\n }\\n }\\n\\n return true;\\n};\\n\\n/**\\n * Returns T/F indicating if the supplied DOM Node has child Elements/Nodes.\\n * Note this function should be used when the Node(s) being considered can\\n * be null/undefined.\\n * @param {Node} node\\n * @return {boolean}\\n */\\nWombat.prototype.nodeHasChildren = function(node) {\\n if (!node) return false;\\n if (typeof node.hasChildNodes === 'function') return node.hasChildNodes();\\n var kids = node.children || node.childNodes;\\n if (kids) return kids.length > 0;\\n return false;\\n};\\n\\n/**\\n * Returns the correct rewrite modifier for the supplied element and\\n * attribute combination if one exists otherwise mp_.\\n * Used by\\n * - {@link performAttributeRewrite}\\n * - {@link rewriteFrameSrc}\\n * - {@link initElementGetSetAttributeOverride}\\n * - {@link overrideHrefAttr}\\n *\\n * @param {*} elem\\n * @param {string} attrName\\n * @return {?string}\\n */\\nWombat.prototype.rwModForElement = function(elem, attrName) {\\n if (!elem) return undefined;\\n // the default modifier, if none is supplied to rewrite_url, is mp_\\n var mod = 'mp_';\\n if (elem.tagName === 'LINK' && attrName === 'href') {\\n // link types are always ASCII case-insensitive, and must be compared as such.\\n // https://html.spec.whatwg.org/multipage/links.html#linkTypes\\n if (elem.rel) {\\n var relV = elem.rel.trim().toLowerCase();\\n var asV = this.wb_getAttribute.call(elem, 'as');\\n if (asV && this.linkTagMods.linkRelToAs[relV] != null) {\\n var asMods = this.linkTagMods.linkRelToAs[relV];\\n mod = asMods[asV.toLowerCase()];\\n } else if (this.linkTagMods[relV] != null) {\\n mod = this.linkTagMods[relV];\\n }\\n }\\n } else {\\n // check if this element has an rewrite modifiers and set mod to it if it does\\n var maybeMod = this.tagToMod[elem.tagName];\\n if (maybeMod != null) {\\n mod = maybeMod[attrName];\\n }\\n }\\n return mod;\\n};\\n\\n/**\\n * If the supplied element is a script tag and has the server-side rewrite added\\n * property \\\"__wb_orig_src\\\" it is removed and the \\\"__$removedWBOSRC$__\\\" property\\n * is added to element as an internal flag indicating no further checks are to be\\n * made.\\n *\\n * See also {@link retrieveWBOSRC}\\n * @param {Element} elem\\n */\\nWombat.prototype.removeWBOSRC = function(elem) {\\n if (elem.tagName === 'SCRIPT' && !elem.__$removedWBOSRC$__) {\\n if (elem.hasAttribute('__wb_orig_src')) {\\n elem.removeAttribute('__wb_orig_src');\\n }\\n elem.__$removedWBOSRC$__ = true;\\n }\\n};\\n\\n/**\\n * If the supplied element is a script tag and has the server-side rewrite added\\n * property \\\"__wb_orig_src\\\" its value is returned otherwise undefined is returned.\\n * If the element did not have the \\\"__wb_orig_src\\\" property the\\n * \\\"__$removedWBOSRC$__\\\" property is added to element as an internal flag\\n * indicating no further checks are to be made.\\n *\\n * See also {@link removeWBOSRC}\\n * @param {Element} elem\\n * @return {?string}\\n */\\nWombat.prototype.retrieveWBOSRC = function(elem) {\\n if (elem.tagName === 'SCRIPT' && !elem.__$removedWBOSRC$__) {\\n var maybeWBOSRC;\\n if (this.wb_getAttribute) {\\n maybeWBOSRC = this.wb_getAttribute.call(elem, '__wb_orig_src');\\n } else {\\n maybeWBOSRC = elem.getAttribute('__wb_orig_src');\\n }\\n if (maybeWBOSRC == null) elem.__$removedWBOSRC$__ = true;\\n return maybeWBOSRC;\\n }\\n return undefined;\\n};\\n\\n/**\\n * Wraps the supplied text contents of a script tag with the required Wombat setup\\n * @param {?string} scriptText\\n * @return {string}\\n */\\nWombat.prototype.wrapScriptTextJsProxy = function(scriptText) {\\n return (\\n 'var _____WB$wombat$assign$function_____ = function(name) {return ' +\\n '(self._wb_wombat && self._wb_wombat.local_init && self._wb_wombat.local_init(name)) || self[name]; };\\\\n' +\\n 'if (!self.__WB_pmw) { self.__WB_pmw = function(obj) { ' +\\n 'this.__WB_source = obj; return this; } }\\\\n{\\\\n' +\\n 'let window = _____WB$wombat$assign$function_____(\\\"window\\\");\\\\n' +\\n 'let self = _____WB$wombat$assign$function_____(\\\"self\\\");\\\\n' +\\n 'let document = _____WB$wombat$assign$function_____(\\\"document\\\");\\\\n' +\\n 'let location = _____WB$wombat$assign$function_____(\\\"location\\\");\\\\n' +\\n 'let top = _____WB$wombat$assign$function_____(\\\"top\\\");\\\\n' +\\n 'let parent = _____WB$wombat$assign$function_____(\\\"parent\\\");\\\\n' +\\n 'let frames = _____WB$wombat$assign$function_____(\\\"frames\\\");\\\\n' +\\n 'let opener = _____WB$wombat$assign$function_____(\\\"opener\\\");\\\\n' +\\n scriptText.replace(this.DotPostMessageRe, '.__WB_pmw(self.window)$1') +\\n '\\\\n\\\\n}'\\n );\\n};\\n\\n/**\\n * Calls the supplied function when the supplied element undergoes mutations\\n * @param elem\\n * @param func\\n * @return {boolean}\\n */\\nWombat.prototype.watchElem = function(elem, func) {\\n if (!this.$wbwindow.MutationObserver) {\\n return false;\\n }\\n var m = new this.$wbwindow.MutationObserver(function(records, observer) {\\n for (var i = 0; i < records.length; i++) {\\n var r = records[i];\\n if (r.type === 'childList') {\\n for (var j = 0; j < r.addedNodes.length; j++) {\\n func(r.addedNodes[j]);\\n }\\n }\\n }\\n });\\n\\n m.observe(elem, {\\n childList: true,\\n subtree: true\\n });\\n};\\n\\n/**\\n * Reconstructs the doctype string if the supplied doctype object\\n * is non null/undefined. This function is used by {@link rewriteHtmlFull}\\n * in order to ensure correctness of rewriting full string of HTML that\\n * started with <!doctype ...> since the innerHTML and outerHTML properties\\n * do not include that.\\n * @param {DocumentType} doctype\\n * @return {string}\\n */\\nWombat.prototype.reconstructDocType = function(doctype) {\\n if (doctype == null) return '';\\n return (\\n '<!doctype ' +\\n doctype.name +\\n (doctype.publicId ? ' PUBLIC \\\"' + doctype.publicId + '\\\"' : '') +\\n (!doctype.publicId && doctype.systemId ? ' SYSTEM' : '') +\\n (doctype.systemId ? ' \\\"' + doctype.systemId + '\\\"' : '') +\\n '>'\\n );\\n};\\n\\n/**\\n * Constructs the final URL for the URL rewriting process\\n * @param {boolean} useRel\\n * @param {string} mod\\n * @param {string} url\\n * @return {string}\\n */\\nWombat.prototype.getFinalUrl = function(useRel, mod, url) {\\n var prefix = useRel ? this.wb_rel_prefix : this.wb_abs_prefix;\\n\\n if (mod == null) {\\n mod = this.wb_info.mod;\\n }\\n\\n // if live, don't add the timestamp\\n if (!this.wb_info.is_live) {\\n prefix += this.wb_info.wombat_ts;\\n }\\n\\n prefix += mod;\\n\\n if (prefix[prefix.length - 1] !== '/') {\\n prefix += '/';\\n }\\n\\n return prefix + url;\\n};\\n\\n/**\\n * Converts the supplied relative URL to an absolute URL using an A tag\\n * @param {string} url\\n * @param {?Document} doc\\n * @return {string}\\n */\\nWombat.prototype.resolveRelUrl = function(url, doc) {\\n var docObj = doc || this.$wbwindow.document;\\n var parser = this.makeParser(docObj.baseURI, docObj);\\n var hash = parser.href.lastIndexOf('#');\\n var href = hash >= 0 ? parser.href.substring(0, hash) : parser.href;\\n var lastslash = href.lastIndexOf('/');\\n\\n if (lastslash >= 0 && lastslash !== href.length - 1) {\\n parser.href = href.substring(0, lastslash + 1) + url;\\n } else {\\n parser.href = href + url;\\n }\\n return parser.href;\\n};\\n\\n/**\\n * Extracts the original URL from the supplied rewritten URL\\n * @param {?string} rewrittenUrl\\n * @return {string}\\n */\\nWombat.prototype.extractOriginalURL = function(rewrittenUrl) {\\n if (!rewrittenUrl) {\\n return '';\\n } else if (this.wb_is_proxy) {\\n // proxy mode: no extraction needed\\n return rewrittenUrl;\\n }\\n\\n var rwURLString = rewrittenUrl.toString();\\n\\n var url = rwURLString;\\n\\n // ignore certain urls\\n if (this.startsWithOneOf(url, this.IGNORE_PREFIXES)) {\\n return url;\\n }\\n\\n var start;\\n\\n if (this.startsWith(url, this.wb_abs_prefix)) {\\n start = this.wb_abs_prefix.length;\\n } else if (this.wb_rel_prefix && this.startsWith(url, this.wb_rel_prefix)) {\\n start = this.wb_rel_prefix.length;\\n } else {\\n // if no coll, start from beginning, otherwise could be part of coll..\\n start = this.wb_rel_prefix ? 1 : 0;\\n }\\n\\n var index = url.indexOf('/http', start);\\n if (index < 0) {\\n index = url.indexOf('///', start);\\n }\\n if (index < 0) {\\n index = url.indexOf('/blob:', start);\\n }\\n if (index < 0) {\\n index = url.indexOf('/about:blank', start);\\n }\\n\\n // extract original url from wburl\\n if (index >= 0) {\\n url = url.substr(index + 1);\\n } else {\\n index = url.indexOf(this.wb_replay_prefix);\\n if (index >= 0) {\\n url = url.substr(index + this.wb_replay_prefix.length);\\n }\\n if (url.length > 4 && url.charAt(2) === '_' && url.charAt(3) === '/') {\\n url = url.substr(4);\\n }\\n\\n if (\\n url !== rwURLString &&\\n !this.startsWithOneOf(url, this.VALID_PREFIXES) && !this.startsWith(url, 'blob:')\\n ) {\\n url = this.wb_orig_scheme + url;\\n }\\n }\\n\\n if (\\n rwURLString.charAt(0) === '/' &&\\n rwURLString.charAt(1) !== '/' &&\\n this.startsWith(url, this.wb_orig_origin)\\n ) {\\n url = url.substr(this.wb_orig_origin.length);\\n }\\n\\n if (this.startsWith(url, this.REL_PREFIX)) {\\n return this.wb_info.wombat_scheme + ':' + url;\\n }\\n\\n return url;\\n};\\n\\n/**\\n * Creates and returns an A tag ready for parsing the original URL\\n * part of the supplied URL.\\n * @param {string} maybeRewrittenURL\\n * @param {?Document} doc\\n * @return {HTMLAnchorElement}\\n */\\nWombat.prototype.makeParser = function(maybeRewrittenURL, doc) {\\n var originalURL = this.extractOriginalURL(maybeRewrittenURL);\\n var docElem = doc;\\n if (!doc) {\\n // special case: for newly opened blank windows, use the opener\\n // to create parser to have the proper baseURI\\n if (\\n this.$wbwindow.location.href === 'about:blank' &&\\n this.$wbwindow.opener\\n ) {\\n docElem = this.$wbwindow.opener.document;\\n } else {\\n docElem = this.$wbwindow.document;\\n }\\n }\\n\\n return this._makeURLParser(originalURL, docElem);\\n\\n};\\n\\nWombat.prototype._makeURLParser = function(url, docElem) {\\n try {\\n return new this.$wbwindow.URL(url, docElem.baseURI);\\n } catch (e) {}\\n\\n var p = docElem.createElement('a');\\n p._no_rewrite = true;\\n p.href = url;\\n return p;\\n}\\n\\n/**\\n * Defines a new getter and optional setter for the property on the supplied\\n * object returning T/F to indicate if the new property was successfully defined\\n * @param {Object} obj\\n * @param {string} prop\\n * @param {?function(value: *): *} setFunc\\n * @param {function(): *} getFunc\\n * @param {?boolean} [enumerable]\\n * @return {boolean}\\n */\\nWombat.prototype.defProp = function(obj, prop, setFunc, getFunc, enumerable) {\\n // if the property is marked as non-configurable in the current\\n // browser, skip the override\\n var existingDescriptor = Object.getOwnPropertyDescriptor(obj, prop);\\n if (existingDescriptor && !existingDescriptor.configurable) {\\n return false;\\n }\\n\\n // if no getter function was supplied, skip the override.\\n // See https://github.com/webrecorder/pywb/issues/147 for context\\n if (!getFunc) {\\n return false;\\n }\\n\\n var descriptor = {\\n configurable: true,\\n enumerable: enumerable || false,\\n get: getFunc\\n };\\n\\n if (setFunc) {\\n descriptor.set = setFunc;\\n }\\n\\n try {\\n Object.defineProperty(obj, prop, descriptor);\\n return true;\\n } catch (e) {\\n console.warn('Failed to redefine property %s', prop, e.message);\\n return false;\\n }\\n};\\n\\n/**\\n * Defines a new getter for the property on the supplied object returning\\n * T/F to indicate if the new property was successfully defined\\n * @param {Object} obj\\n * @param {string} prop\\n * @param {function(): *} getFunc\\n * @param {?boolean} [enumerable]\\n * @return {boolean}\\n */\\nWombat.prototype.defGetterProp = function(obj, prop, getFunc, enumerable) {\\n var existingDescriptor = Object.getOwnPropertyDescriptor(obj, prop);\\n if (existingDescriptor && !existingDescriptor.configurable) {\\n return false;\\n }\\n // if no getter function was supplied, skip the override.\\n // See https://github.com/webrecorder/pywb/issues/147 for context\\n if (!getFunc) return false;\\n\\n try {\\n Object.defineProperty(obj, prop, {\\n configurable: true,\\n enumerable: enumerable || false,\\n get: getFunc\\n });\\n return true;\\n } catch (e) {\\n console.warn('Failed to redefine property %s', prop, e.message);\\n return false;\\n }\\n};\\n\\n/**\\n * Returns the original getter function for the supplied object's property\\n * @param {Object} obj\\n * @param {string} prop\\n * @return {function(): *}\\n */\\nWombat.prototype.getOrigGetter = function(obj, prop) {\\n var orig_getter;\\n\\n if (obj.__lookupGetter__) {\\n orig_getter = obj.__lookupGetter__(prop);\\n }\\n\\n if (!orig_getter && Object.getOwnPropertyDescriptor) {\\n var props = Object.getOwnPropertyDescriptor(obj, prop);\\n if (props) {\\n orig_getter = props.get;\\n }\\n }\\n\\n return orig_getter;\\n};\\n\\n/**\\n * Returns the original setter function for the supplied object's property\\n * @param {Object} obj\\n * @param {string} prop\\n * @return {function(): *}\\n */\\nWombat.prototype.getOrigSetter = function(obj, prop) {\\n var orig_setter;\\n\\n if (obj.__lookupSetter__) {\\n orig_setter = obj.__lookupSetter__(prop);\\n }\\n\\n if (!orig_setter && Object.getOwnPropertyDescriptor) {\\n var props = Object.getOwnPropertyDescriptor(obj, prop);\\n if (props) {\\n orig_setter = props.set;\\n }\\n }\\n\\n return orig_setter;\\n};\\n\\n/**\\n * Returns an array containing the names of all the properties\\n * that exist on the supplied object\\n * @param {Object} obj\\n * @return {Array<string>}\\n */\\nWombat.prototype.getAllOwnProps = function(obj) {\\n /** @type {Array<string>} */\\n var ownProps = [];\\n\\n var props = Object.getOwnPropertyNames(obj);\\n var i = 0;\\n for (; i < props.length; i++) {\\n var prop = props[i];\\n\\n try {\\n if (obj[prop] && !obj[prop].prototype) {\\n ownProps.push(prop);\\n }\\n } catch (e) {}\\n }\\n\\n var traverseObj = Object.getPrototypeOf(obj);\\n\\n while (traverseObj) {\\n props = Object.getOwnPropertyNames(traverseObj);\\n for (i = 0; i < props.length; i++) {\\n ownProps.push(props[i]);\\n }\\n traverseObj = Object.getPrototypeOf(traverseObj);\\n }\\n\\n return ownProps;\\n};\\n\\n/**\\n * Sends the supplied message to __WB_top_frame\\n * @param {*} message\\n * @param {boolean} [skipTopCheck]\\n */\\nWombat.prototype.sendTopMessage = function(message, skipTopCheck, win) {\\n win = win || this.$wbwindow;\\n if (!win.__WB_top_frame) return;\\n if (!skipTopCheck && win != win.__WB_replay_top) {\\n return;\\n }\\n win.__WB_top_frame.postMessage(message, this.wb_info.top_host);\\n};\\n\\n/**\\n * Notifies __WB_top_frame of an history update\\n * @param {?string} url\\n * @param {?string} title\\n */\\nWombat.prototype.sendHistoryUpdate = function(url, title, win) {\\n this.sendTopMessage(\\n {\\n url: url,\\n ts: this.wb_info.timestamp,\\n request_ts: this.wb_info.request_ts,\\n is_live: this.wb_info.is_live,\\n title: title,\\n wb_type: 'replace-url'\\n },\\n false,\\n win\\n );\\n};\\n\\n/**\\n * Updates the real location object with the results of rewriting the supplied URL\\n * @param {?string} reqHref\\n * @param {string} origHref\\n * @param {Location} actualLocation\\n */\\nWombat.prototype.updateLocation = function(reqHref, origHref, actualLocation) {\\n if (!reqHref || reqHref === origHref) return;\\n\\n var ext_orig = this.extractOriginalURL(origHref);\\n var ext_req = this.extractOriginalURL(reqHref);\\n\\n if (!ext_orig || ext_orig === ext_req) return;\\n\\n var final_href = this.rewriteUrl(reqHref);\\n\\n console.log(actualLocation.href + ' -> ' + final_href);\\n\\n actualLocation.href = final_href;\\n};\\n\\n/**\\n * Updates the real location with a change\\n * @param {*} wombatLoc\\n * @param {boolean} isTop\\n */\\nWombat.prototype.checkLocationChange = function(wombatLoc, isTop) {\\n var locType = typeof wombatLoc;\\n\\n var actual_location = isTop\\n ? this.$wbwindow.__WB_replay_top.location\\n : this.$wbwindow.location;\\n\\n // String has been assigned to location, so assign it\\n if (locType === 'string') {\\n this.updateLocation(wombatLoc, actual_location.href, actual_location);\\n } else if (locType === 'object') {\\n this.updateLocation(wombatLoc.href, wombatLoc._orig_href, actual_location);\\n }\\n};\\n\\n/**\\n * Checks for a location change, either this browser context or top and updates\\n * accordingly\\n * @return {boolean}\\n */\\nWombat.prototype.checkAllLocations = function() {\\n if (this.wb_wombat_updating) {\\n return false;\\n }\\n\\n this.wb_wombat_updating = true;\\n\\n this.checkLocationChange(this.$wbwindow.WB_wombat_location, false);\\n\\n // Only check top if its a different $wbwindow\\n if (\\n this.$wbwindow.WB_wombat_location !=\\n this.$wbwindow.__WB_replay_top.WB_wombat_location\\n ) {\\n this.checkLocationChange(\\n this.$wbwindow.__WB_replay_top.WB_wombat_location,\\n true\\n );\\n }\\n\\n this.wb_wombat_updating = false;\\n};\\n\\n/**\\n * Returns the Object the Proxy was proxying if it exists otherwise\\n * the original object\\n * @param {*} source\\n * @return {?Object}\\n */\\nWombat.prototype.proxyToObj = function(source) {\\n if (source) {\\n try {\\n var proxyRealObj = source.__WBProxyRealObj__;\\n if (proxyRealObj) return proxyRealObj;\\n } catch (e) {}\\n }\\n return source;\\n};\\n\\n/**\\n * Returns the Proxy object for the supplied Object if it exists otherwise\\n * the original object\\n * @param {?Object} obj\\n * @return {Proxy|?Object}\\n */\\nWombat.prototype.objToProxy = function(obj) {\\n if (obj) {\\n try {\\n var maybeWbProxy = obj._WB_wombat_obj_proxy;\\n if (maybeWbProxy) return maybeWbProxy;\\n } catch (e) {}\\n }\\n return obj;\\n};\\n\\n/**\\n * Returns the value of supplied object that is being Proxied\\n * @param {*} obj\\n * @param {*} prop\\n * @param {Array<string>} ownProps\\n * @param {Object} fnCache\\n * @return {*}\\n */\\nWombat.prototype.defaultProxyGet = function(obj, prop, ownProps, fnCache) {\\n switch (prop) {\\n case '__WBProxyRealObj__':\\n return obj;\\n case 'location':\\n case 'WB_wombat_location':\\n return obj.WB_wombat_location;\\n case '_WB_wombat_obj_proxy':\\n return obj._WB_wombat_obj_proxy;\\n case '__WB_pmw':\\n case 'WB_wombat_eval':\\n case this.WB_ASSIGN_FUNC:\\n case this.WB_CHECK_THIS_FUNC:\\n return obj[prop];\\n\\n case 'origin':\\n return obj.WB_wombat_location.origin;\\n\\n case 'constructor':\\n // allow tests such as self.constructor === Window to work\\n // you can't create a new instance of window using its constructor\\n if (obj.constructor === Window) return obj.constructor;\\n break;\\n }\\n var retVal = obj[prop];\\n\\n var type = typeof retVal;\\n\\n if (type === 'function' && ownProps.indexOf(prop) !== -1) {\\n // certain sites (e.g. facebook) are applying polyfills to native functions\\n // treating the polyfill as a native function [fn.bind(obj)] causes incorrect execution of the polyfill\\n // also depending on the site, the site can detect we \\\"tampered\\\" with the polyfill by binding it to obj\\n // to avoid these situations, we do not bind the returned fn if we detect they were polyfilled\\n switch (prop) {\\n case 'requestAnimationFrame':\\n case 'cancelAnimationFrame': {\\n if (!this.isNativeFunction(retVal)) {\\n return retVal;\\n }\\n break;\\n }\\n }\\n // due to specific use cases involving native functions\\n // we must return the\\n var cachedFN = fnCache[prop];\\n if (!cachedFN || cachedFN.original !== retVal) {\\n cachedFN = {\\n original: retVal,\\n boundFn: retVal.bind(obj)\\n };\\n fnCache[prop] = cachedFN;\\n }\\n return cachedFN.boundFn;\\n } else if (type === 'object' && retVal && retVal._WB_wombat_obj_proxy) {\\n if (retVal instanceof Window) {\\n this.initNewWindowWombat(retVal);\\n }\\n return retVal._WB_wombat_obj_proxy;\\n }\\n\\n return retVal;\\n};\\n\\n/**\\n * Set the location properties for either an instance of WombatLocation\\n * or an anchor tag\\n * @param {HTMLAnchorElement|WombatLocation} loc\\n * @param {string} originalURL\\n */\\nWombat.prototype.setLoc = function(loc, originalURL) {\\n var parser = this.makeParser(originalURL, loc.ownerDocument);\\n\\n loc._orig_href = originalURL;\\n loc._parser = parser;\\n\\n var href = parser.href;\\n loc._hash = parser.hash;\\n\\n loc._href = href;\\n\\n loc._host = parser.host;\\n loc._hostname = parser.hostname;\\n\\n if (parser.origin) {\\n loc._origin = parser.host ? parser.origin : \\\"null\\\";\\n } else {\\n loc._origin =\\n parser.protocol +\\n '//' +\\n parser.hostname +\\n (parser.port ? ':' + parser.port : '');\\n }\\n\\n loc._pathname = parser.pathname;\\n loc._port = parser.port;\\n // this.protocol = parser.protocol;\\n loc._protocol = parser.protocol;\\n loc._search = parser.search;\\n\\n if (!Object.defineProperty) {\\n loc.href = href;\\n loc.hash = parser.hash;\\n\\n loc.host = loc._host;\\n loc.hostname = loc._hostname;\\n loc.origin = loc._origin;\\n loc.pathname = loc._pathname;\\n loc.port = loc._port;\\n loc.protocol = loc._protocol;\\n loc.search = loc._search;\\n }\\n};\\n\\n/**\\n * Returns a function for retrieving some property on an instance of either\\n * WombatLocation or an anchor tag\\n * @param {string} prop\\n * @param {function(): string} origGetter\\n * @return {function(): string}\\n */\\nWombat.prototype.makeGetLocProp = function(prop, origGetter) {\\n var wombat = this;\\n return function newGetLocProp() {\\n if (this._no_rewrite) return origGetter.call(this, prop);\\n\\n var curr_orig_href = origGetter.call(this, 'href');\\n\\n if (prop === 'href') {\\n return wombat.extractOriginalURL(curr_orig_href);\\n }\\n\\n if (prop === 'ancestorOrigins') {\\n return [];\\n }\\n\\n if (this._orig_href !== curr_orig_href) {\\n wombat.setLoc(this, curr_orig_href);\\n }\\n return this['_' + prop];\\n };\\n};\\n\\n/**\\n * Returns a function for setting some property on an instance of either\\n * WombatLocation or an anchor tag\\n * @param {string} prop\\n * @param {function (value: *): *} origSetter\\n * @param {function(): *} origGetter\\n * @return {function (value: *): *}\\n */\\nWombat.prototype.makeSetLocProp = function(prop, origSetter, origGetter) {\\n var wombat = this;\\n return function newSetLocProp(value) {\\n if (this._no_rewrite) {\\n return origSetter.call(this, prop, value);\\n }\\n if (this['_' + prop] === value) return;\\n\\n this['_' + prop] = value;\\n\\n if (!this._parser) {\\n var href = origGetter.call(this);\\n this._parser = wombat.makeParser(href, this.ownerDocument);\\n }\\n\\n var rel = false;\\n\\n // Special case for href=\\\".\\\" assignment\\n if (prop === 'href' && typeof value === 'string') {\\n if (value) {\\n if (value[0] === '.') {\\n value = wombat.resolveRelUrl(value, this.ownerDocument);\\n } else if (\\n value[0] === '/' &&\\n (value.length <= 1 || value[1] !== '/')\\n ) {\\n rel = true;\\n value = WB_wombat_location.origin + value;\\n }\\n }\\n }\\n\\n try {\\n this._parser[prop] = value;\\n } catch (e) {\\n console.log('Error setting ' + prop + ' = ' + value);\\n }\\n\\n if (prop === 'hash') {\\n value = this._parser[prop];\\n origSetter.call(this, 'hash', value);\\n } else {\\n rel = rel || value === this._parser.pathname;\\n value = wombat.rewriteUrl(this._parser.href, rel);\\n origSetter.call(this, 'href', value);\\n }\\n };\\n};\\n\\n/**\\n * Function used for rewriting URL's contained in CSS style definitions\\n * @param {Object} match\\n * @param {string} n1\\n * @param {string} n2\\n * @param {string} n3\\n * @param {number} offset\\n * @param {string} string\\n * @return {string}\\n */\\nWombat.prototype.styleReplacer = function(match, n1, n2, n3, offset, string) {\\n return n1 + this.rewriteUrl(n2) + n3;\\n};\\n\\n\\n/**\\n * Due to the fact that we override specific DOM constructors, e.g. Worker,\\n * the normal TypeErrors are not thrown if the pre-conditions for those\\n * constructors are not met.\\n *\\n * Code that performs polyfills or browser feature detection based\\n * on those TypeErrors will not work as expected if we do not perform\\n * those checks ourselves (Note we use Chrome's error messages)\\n *\\n * This function checks for those pre-conditions and throws an TypeError\\n * with the appropriate message if a pre-condition is not met\\n * - `this` instanceof Window is false (requires new)\\n * - supplied required arguments\\n *\\n * @param {Object} thisObj\\n * @param {string} what\\n * @param {Object} [args]\\n * @param {number} [numRequiredArgs]\\n */\\nWombat.prototype.domConstructorErrorChecker = function(\\n thisObj,\\n what,\\n args,\\n numRequiredArgs\\n) {\\n var needArgs = typeof numRequiredArgs === 'number' ? numRequiredArgs : 1;\\n var erorMsg;\\n if (thisObj instanceof Window) {\\n erorMsg =\\n \\\"Failed to construct '\\\" +\\n what +\\n \\\"': Please use the 'new' operator, this DOM object constructor cannot be called as a function.\\\";\\n } else if (args && args.length < needArgs) {\\n erorMsg =\\n \\\"Failed to construct '\\\" +\\n what +\\n \\\"': \\\" +\\n needArgs +\\n ' argument required, but only 0 present.';\\n }\\n if (erorMsg) {\\n throw new TypeError(erorMsg);\\n }\\n};\\n\\n/**\\n * Rewrites the arguments supplied to an function of the Node interface\\n * @param {Object} fnThis\\n * @param {function} originalFn\\n * @param {Node} newNode\\n * @param {Node} [oldNode]\\n */\\nWombat.prototype.rewriteNodeFuncArgs = function(\\n fnThis,\\n originalFn,\\n newNode,\\n oldNode\\n) {\\n if (newNode) {\\n switch (newNode.nodeType) {\\n case Node.ELEMENT_NODE:\\n this.rewriteElemComplete(newNode);\\n break;\\n case Node.TEXT_NODE:\\n // newNode is the new child of fnThis (the parent node)\\n if (\\n fnThis.tagName === 'STYLE' ||\\n (newNode.parentNode && newNode.parentNode.tagName === 'STYLE')\\n ) {\\n newNode.textContent = this.rewriteStyle(newNode.textContent);\\n }\\n break;\\n case Node.DOCUMENT_FRAGMENT_NODE:\\n this.recurseRewriteElem(newNode);\\n break;\\n }\\n }\\n var created = originalFn.call(fnThis, newNode, oldNode);\\n if (created && created.tagName === 'IFRAME') {\\n created.allow = \\\"autoplay 'self'; fullscreen 'self'\\\";\\n this.initIframeWombat(created);\\n }\\n return created;\\n};\\n\\n/**\\n * Mini url rewriter specifically for rewriting web sockets\\n * @param {?string} originalURL\\n * @return {string}\\n */\\nWombat.prototype.rewriteWSURL = function(originalURL) {\\n // If undefined, just return it\\n if (!originalURL) return originalURL;\\n\\n var urltype_ = typeof originalURL;\\n var url = originalURL;\\n\\n // If object, use toString\\n if (urltype_ === 'object') {\\n url = originalURL.toString();\\n } else if (urltype_ !== 'string') {\\n return originalURL;\\n }\\n\\n // empty string check\\n if (!url) return url;\\n\\n var wsScheme = 'ws://';\\n var wssScheme = 'wss://';\\n\\n // proxy mode: If no wb_replay_prefix, only rewrite scheme\\n // proxy mode: If no wb_replay_prefix, only rewrite scheme\\n if (this.wb_is_proxy) {\\n if (\\n this.wb_orig_scheme === this.HTTP_PREFIX &&\\n this.startsWith(url, wssScheme)\\n ) {\\n return wsScheme + url.substr(wssScheme.length);\\n } else if (\\n this.wb_orig_scheme === this.HTTPS_PREFIX &&\\n this.startsWith(url, wsScheme)\\n ) {\\n return wssScheme + url.substr(wsScheme.length);\\n } else {\\n return url;\\n }\\n }\\n\\n var wbSecure = this.wb_abs_prefix.indexOf(this.HTTPS_PREFIX) === 0;\\n var wbPrefix = this.wb_abs_prefix.replace(\\n wbSecure ? this.HTTPS_PREFIX : this.HTTP_PREFIX,\\n wbSecure ? wssScheme : wsScheme\\n );\\n wbPrefix += this.wb_info.wombat_ts + 'ws_';\\n if (url[url.length - 1] !== '/') {\\n wbPrefix += '/';\\n }\\n return wbPrefix + url.replace('WB_wombat_', '');\\n};\\n\\n/**\\n * Rewrites the supplied URL returning the rewritten URL\\n * @param {?string} originalURL\\n * @param {?boolean} [useRel]\\n * @param {?string} [mod]\\n * @param {?Document} [doc]\\n * @return {?string}\\n * @private\\n */\\nWombat.prototype.rewriteUrl_ = function(originalURL, useRel, mod, doc) {\\n // If undefined, just return it\\n if (!originalURL) return originalURL;\\n\\n var urltype_ = typeof originalURL;\\n var url;\\n\\n // If object, use toString\\n if (urltype_ === 'object') {\\n url = originalURL.toString();\\n } else if (urltype_ !== 'string') {\\n return originalURL;\\n } else {\\n url = originalURL;\\n }\\n\\n // empty string check\\n if (!url) return url;\\n\\n // proxy mode: If no wb_replay_prefix, only rewrite scheme\\n if (this.wb_is_proxy) {\\n if (\\n this.wb_orig_scheme === this.HTTP_PREFIX &&\\n this.startsWith(url, this.HTTPS_PREFIX)\\n ) {\\n return this.HTTP_PREFIX + url.substr(this.HTTPS_PREFIX.length);\\n } else if (\\n this.wb_orig_scheme === this.HTTPS_PREFIX &&\\n this.startsWith(url, this.HTTP_PREFIX)\\n ) {\\n return this.HTTPS_PREFIX + url.substr(this.HTTP_PREFIX.length);\\n } else {\\n return url;\\n }\\n }\\n\\n // just in case _wombat reference made it into url!\\n url = url.replace('WB_wombat_', '');\\n\\n if (mod === \\\"if_\\\" && this.wb_info.isSW && this.startsWith(url, \\\"blob:\\\")) {\\n return this.wb_info.prefix + this.wb_info.timestamp + \\\"if_/\\\" + url;\\n }\\n\\n // ignore anchors, about, data\\n if (this.startsWithOneOf(url.toLowerCase(), this.IGNORE_PREFIXES)) {\\n return url;\\n }\\n\\n // OPTS: additional ignore prefixes\\n if (\\n this.wb_opts.no_rewrite_prefixes &&\\n this.startsWithOneOf(url, this.wb_opts.no_rewrite_prefixes)\\n ) {\\n return url;\\n }\\n\\n // If starts with prefix, no rewriting needed\\n // Only check replay prefix (no date) as date may be different for each\\n // capture\\n\\n // if scheme relative, prepend current scheme\\n var check_url;\\n\\n if (url.indexOf('//') === 0) {\\n check_url = window.location.protocol + url;\\n } else {\\n check_url = url;\\n }\\n\\n var originalLoc = this.$wbwindow.location;\\n if (\\n this.startsWith(check_url, this.wb_replay_prefix) ||\\n this.startsWith(check_url, originalLoc.origin + this.wb_replay_prefix)\\n ) {\\n return url;\\n }\\n\\n // A special case where the port somehow gets dropped\\n // Check for this and add it back in, eg http://localhost/path/ -> http://localhost:8080/path/\\n if (\\n originalLoc.host !== originalLoc.hostname &&\\n this.startsWith(\\n url,\\n originalLoc.protocol + '//' + originalLoc.hostname + '/'\\n )\\n ) {\\n return url.replace(\\n '/' + originalLoc.hostname + '/',\\n '/' + originalLoc.host + '/'\\n );\\n }\\n\\n // If server relative url, add prefix and original host\\n if (url.charAt(0) === '/' && !this.startsWith(url, this.REL_PREFIX)) {\\n // Already a relative url, don't make any changes!\\n if (\\n this.wb_capture_date_part &&\\n url.indexOf(this.wb_capture_date_part) >= 0\\n ) {\\n return url;\\n }\\n\\n // relative collection\\n if (url.indexOf(this.wb_rel_prefix) === 0 && url.indexOf('http') > 1) {\\n var scheme_sep = url.indexOf(':/');\\n if (scheme_sep > 0 && url[scheme_sep + 2] !== '/') {\\n return (\\n url.substring(0, scheme_sep + 2) + '/' + url.substring(scheme_sep + 2)\\n );\\n }\\n return url;\\n }\\n\\n return this.getFinalUrl(true, mod, this.wb_orig_origin + url);\\n }\\n\\n // Use a parser\\n if (url.charAt(0) === '.') {\\n url = this.resolveRelUrl(url, doc);\\n }\\n\\n // If full url starting with http://, https:// or //\\n // add rewrite prefix, we convert to lower case for this check\\n // due to the fact that the URL's scheme could be HTTP(S) LUL\\n var prefix = this.startsWithOneOf(url.toLowerCase(), this.VALID_PREFIXES);\\n\\n if (prefix) {\\n var orig_host = this.$wbwindow.__WB_replay_top.location.host;\\n var orig_protocol = this.$wbwindow.__WB_replay_top.location.protocol;\\n\\n var prefix_host = prefix + orig_host + '/';\\n\\n // if already rewritten url, must still check scheme\\n if (this.startsWith(url, prefix_host)) {\\n if (this.startsWith(url, this.wb_replay_prefix)) {\\n return url;\\n }\\n\\n var curr_scheme = orig_protocol + '//';\\n var path = url.substring(prefix_host.length);\\n var rebuild = false;\\n\\n if (path.indexOf(this.wb_rel_prefix) < 0 && url.indexOf('/static/') < 0) {\\n path = this.getFinalUrl(\\n true,\\n mod,\\n WB_wombat_location.origin + '/' + path\\n );\\n rebuild = true;\\n }\\n\\n // replace scheme to ensure using the correct server scheme\\n // if (starts_with(url, wb_orig_scheme) && (wb_orig_scheme != curr_scheme)) {\\n if (prefix !== curr_scheme && prefix !== this.REL_PREFIX) {\\n rebuild = true;\\n }\\n\\n if (rebuild) {\\n if (!useRel) {\\n url = curr_scheme + orig_host;\\n } else {\\n url = '';\\n }\\n if (path && path[0] !== '/') {\\n url += '/';\\n }\\n url += path;\\n }\\n\\n return url;\\n }\\n return this.getFinalUrl(useRel, mod, url);\\n }\\n // Check for common bad prefixes and remove them\\n prefix = this.startsWithOneOf(url, this.BAD_PREFIXES);\\n\\n if (prefix) {\\n return this.getFinalUrl(useRel, mod, this.extractOriginalURL(url));\\n }\\n\\n // May or may not be a hostname, call function to determine\\n // If it is, add the prefix and make sure port is removed\\n if (this.isHostUrl(url) && !this.startsWith(url, originalLoc.host + '/')) {\\n return this.getFinalUrl(useRel, mod, this.wb_orig_scheme + url);\\n }\\n\\n return url;\\n};\\n\\n/**\\n * Rewrites the supplied URL returning the rewritten URL.\\n * If wombat is in debug mode the rewrite is logged to the console\\n * @param {*} url\\n * @param {?boolean} [useRel]\\n * @param {?string} [mod]\\n * @param {?Document} [doc]\\n * @return {?string}\\n */\\nWombat.prototype.rewriteUrl = function(url, useRel, mod, doc) {\\n var rewritten = this.rewriteUrl_(url, useRel, mod, doc);\\n if (this.debug_rw) {\\n if (url !== rewritten) {\\n console.log('REWRITE: ' + url + ' -> ' + rewritten);\\n } else {\\n console.log('NOT REWRITTEN ' + url);\\n }\\n }\\n return rewritten;\\n};\\n\\n/**\\n * Rewrites the value of the supplied elements attribute returning its rewritten value.\\n * Used by {@link newAttrObjGetSet} and {@link rewriteAttr}\\n *\\n * @param {Element} elem\\n * @param {string} name\\n * @param {*} value\\n * @param {boolean} [absUrlOnly]\\n * @return {*}\\n */\\nWombat.prototype.performAttributeRewrite = function(\\n elem,\\n name,\\n value,\\n absUrlOnly\\n) {\\n switch (name) {\\n // inner and outer HTML are for the overrides applied by newAttrObjGetSet\\n case 'innerHTML':\\n case 'outerHTML':\\n return this.rewriteHtml(value);\\n case 'filter': // for svg filter attribute which is url(...)\\n return this.rewriteInlineStyle(value);\\n case 'style':\\n return this.rewriteStyle(value);\\n case 'srcset':\\n return this.rewriteSrcset(value, elem);\\n }\\n // Only rewrite if absolute url\\n if (absUrlOnly && !this.startsWithOneOf(value, this.VALID_PREFIXES)) {\\n return value;\\n }\\n var mod = this.rwModForElement(elem, name);\\n if (\\n this.wbUseAFWorker &&\\n this.WBAutoFetchWorker &&\\n this.isSavedDataSrcSrcset(elem)\\n ) {\\n this.WBAutoFetchWorker.preserveDataSrcset(elem);\\n }\\n return this.rewriteUrl(value, false, mod, elem.ownerDocument);\\n};\\n\\n/**\\n * Rewrites an element attribute's value\\n * @param {Element} elem\\n * @param {string} name\\n * @param {boolean} [absUrlOnly]\\n * @return {boolean}\\n */\\nWombat.prototype.rewriteAttr = function(elem, name, absUrlOnly) {\\n var changed = false;\\n if (!elem || !elem.getAttribute || elem._no_rewrite || elem['_' + name]) {\\n return changed;\\n }\\n\\n var value = this.wb_getAttribute.call(elem, name);\\n\\n if (!value || this.startsWith(value, 'javascript:')) return changed;\\n\\n var new_value = this.performAttributeRewrite(elem, name, value, absUrlOnly);\\n\\n if (new_value !== value) {\\n this.removeWBOSRC(elem);\\n this.wb_setAttribute.call(elem, name, new_value);\\n changed = true;\\n }\\n\\n return changed;\\n};\\n\\n/**\\n * {@link rewriteStyle} wrapped in a try catch\\n * @param {string|Object} style\\n * @return {string|Object|null}\\n */\\nWombat.prototype.noExceptRewriteStyle = function(style) {\\n try {\\n return this.rewriteStyle(style);\\n } catch (e) {\\n return style;\\n }\\n};\\n\\n/**\\n * Rewrites the supplied CSS style definitions\\n * @param {string|Object} style\\n * @return {string|Object|null}\\n */\\nWombat.prototype.rewriteStyle = function(style) {\\n if (!style) return style;\\n\\n var value = style;\\n if (typeof style === 'object') {\\n value = style.toString();\\n }\\n\\n if (typeof value === 'string') {\\n return value\\n .replace(this.STYLE_REGEX, this.styleReplacer)\\n .replace(this.IMPORT_REGEX, this.styleReplacer)\\n .replace(this.no_wombatRe, '');\\n }\\n\\n return value;\\n};\\n\\n/**\\n * Rewrites the supplied srcset string returning the rewritten results.\\n * If the element is one the srcset values are auto-fetched they are sent\\n * to the backing auto-fetch worker\\n * @param {string} value\\n * @param {Element} elem\\n * @return {string}\\n */\\nWombat.prototype.rewriteSrcset = function(value, elem) {\\n if (!value) return '';\\n\\n var split = value.split(this.srcsetRe);\\n var values = [];\\n var mod = this.rwModForElement(elem, 'srcset');\\n for (var i = 0; i < split.length; i++) {\\n // Filter removes non-truthy values like null, undefined, and \\\"\\\"\\n if (split[i]) {\\n var trimmed = split[i].trim();\\n if (trimmed) values.push(this.rewriteUrl(trimmed, true, mod));\\n }\\n }\\n\\n if (\\n this.wbUseAFWorker &&\\n this.WBAutoFetchWorker &&\\n this.isSavedSrcSrcset(elem)\\n ) {\\n // send post split values to preservation worker\\n this.WBAutoFetchWorker.preserveSrcset(\\n values,\\n this.WBAutoFetchWorker.rwMod(elem)\\n );\\n }\\n\\n return values.join(', ');\\n};\\n\\n/**\\n * Rewrites the URL supplied to the setter of an (i)frame's src attribute\\n * @param {Element} elem\\n * @param {string} attrName\\n * @return {boolean}\\n */\\nWombat.prototype.rewriteFrameSrc = function(elem, attrName) {\\n var value = this.wb_getAttribute.call(elem, attrName);\\n var new_value;\\n\\n // special case for rewriting javascript: urls that contain WB_wombat_\\n // must insert _wombat init first!\\n if (this.startsWith(value, 'javascript:')) {\\n if (value.indexOf('WB_wombat_') >= 0) {\\n var JS = 'javascript:';\\n new_value =\\n JS +\\n 'window.parent._wb_wombat.initNewWindowWombat(window);' +\\n value.substr(JS.length);\\n }\\n }\\n\\n if (!new_value) {\\n new_value = this.rewriteUrl(\\n value,\\n false,\\n this.rwModForElement(elem, attrName)\\n );\\n }\\n\\n if (new_value !== value) {\\n this.wb_setAttribute.call(elem, attrName, new_value);\\n return true;\\n }\\n\\n return false;\\n};\\n\\n/**\\n * Rewrites either the URL contained in the src attribute or the text contents\\n * of the supplied script element. Returns T/F indicating if a rewrite occurred\\n * @param elem\\n * @return {boolean}\\n */\\nWombat.prototype.rewriteScript = function(elem) {\\n if (elem.hasAttribute('src') || !elem.textContent || !this.$wbwindow.Proxy) {\\n return this.rewriteAttr(elem, 'src');\\n }\\n if (this.skipWrapScriptBasedOnType(elem.type)) return false;\\n var text = elem.textContent.trim();\\n if (this.skipWrapScriptTextBasedOnText(text)) return false;\\n elem.textContent = this.wrapScriptTextJsProxy(text);\\n return true;\\n};\\n\\n/**\\n * Rewrites the supplied SVG element returning T/F indicating if a rewrite occurred\\n * @param {SVGElement} elem\\n * @return {boolean}\\n */\\nWombat.prototype.rewriteSVGElem = function(elem) {\\n var changed = this.rewriteAttr(elem, 'filter');\\n changed = this.rewriteAttr(elem, 'style') || changed;\\n // xlink:href is deprecated since SVG 2 in favor of href\\n // https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/xlink:href\\n changed = this.rewriteAttr(elem, 'xlink:href') || changed;\\n changed = this.rewriteAttr(elem, 'href') || changed;\\n changed = this.rewriteAttr(elem, 'src') || changed;\\n return changed;\\n};\\n\\n/**\\n * Rewrites the supplied element returning T/F indicating if a rewrite occured\\n * @param {Element|Node} elem - The element to be rewritten\\n * @return {boolean}\\n */\\nWombat.prototype.rewriteElem = function(elem) {\\n var changed = false;\\n if (!elem) return changed;\\n if (elem instanceof SVGElement) {\\n changed = this.rewriteSVGElem(elem);\\n } else {\\n switch (elem.tagName) {\\n case 'META':\\n var maybeCSP = this.wb_getAttribute.call(elem, 'http-equiv');\\n if (maybeCSP && maybeCSP.toLowerCase() === 'content-security-policy') {\\n this.wb_setAttribute.call(elem, 'http-equiv', '_' + maybeCSP);\\n changed = true;\\n }\\n break;\\n case 'STYLE':\\n var new_content = this.rewriteStyle(elem.textContent);\\n if (elem.textContent !== new_content) {\\n elem.textContent = new_content;\\n changed = true;\\n if (\\n this.wbUseAFWorker &&\\n this.WBAutoFetchWorker &&\\n elem.sheet != null\\n ) {\\n // we have a stylesheet so lets be nice to UI thread\\n // and defer extraction\\n this.WBAutoFetchWorker.deferredSheetExtraction(elem.sheet);\\n }\\n }\\n break;\\n case 'LINK':\\n changed = this.rewriteAttr(elem, 'href');\\n if (this.wbUseAFWorker && elem.rel === 'stylesheet') {\\n // we can only check link[rel='stylesheet'] when it loads\\n this._addEventListener(\\n elem,\\n 'load',\\n this.utilFns.wbSheetMediaQChecker\\n );\\n }\\n break;\\n case 'IMG':\\n changed = this.rewriteAttr(elem, 'src');\\n changed = this.rewriteAttr(elem, 'srcset') || changed;\\n changed = this.rewriteAttr(elem, 'style') || changed;\\n if (\\n this.wbUseAFWorker &&\\n this.WBAutoFetchWorker &&\\n elem.dataset.srcset\\n ) {\\n this.WBAutoFetchWorker.preserveDataSrcset(elem);\\n }\\n break;\\n case 'OBJECT':\\n if (this.wb_info.isSW && elem.parentElement && elem.getAttribute('type') === \\\"application/pdf\\\") {\\n var iframe = this.$wbwindow.document.createElement(\\\"IFRAME\\\");\\n for (var i = 0; i < elem.attributes.length; i++) {\\n var attr = elem.attributes[i];\\n var name = attr.name;\\n if (name === \\\"data\\\") {\\n name = \\\"src\\\";\\n }\\n this.wb_setAttribute.call(iframe, name, attr.value);\\n }\\n\\n elem.parentElement.replaceChild(iframe, elem);\\n changed = true;\\n break;\\n }\\n\\n changed = this.rewriteAttr(elem, 'data', true);\\n changed = this.rewriteAttr(elem, 'style') || changed;\\n break;\\n case 'FORM':\\n changed = this.rewriteAttr(elem, 'poster');\\n changed = this.rewriteAttr(elem, 'action') || changed;\\n changed = this.rewriteAttr(elem, 'style') || changed;\\n break;\\n case 'IFRAME':\\n changed = this.rewriteFrameSrc(elem, 'src');\\n if (this.wb_info.isSW && !changed) {\\n var srcdoc = elem.getAttribute(\\\"srcdoc\\\");\\n if (srcdoc) {\\n elem.removeAttribute(\\\"srcdoc\\\");\\n elem.src = this.wb_info.prefix + this.wb_info.timestamp + \\\"id_/srcdoc:\\\" + btoa(encodeURIComponent(srcdoc));\\n } else {\\n var src = elem.getAttribute(\\\"src\\\");\\n if (!src || src === \\\"about:blank\\\") {\\n if (!src) {\\n elem.__WB_blank = true;\\n }\\n elem.src = this.wb_info.prefix + this.wb_info.timestamp + \\\"mp_/about:blank\\\";\\n }\\n }\\n }\\n changed = this.rewriteAttr(elem, 'style') || changed;\\n break;\\n case 'FRAME':\\n changed = this.rewriteFrameSrc(elem, 'src');\\n changed = this.rewriteAttr(elem, 'style') || changed;\\n break;\\n case 'SCRIPT':\\n changed = this.rewriteScript(elem);\\n break;\\n default: {\\n changed = this.rewriteAttr(elem, 'src');\\n changed = this.rewriteAttr(elem, 'srcset') || changed;\\n changed = this.rewriteAttr(elem, 'href') || changed;\\n changed = this.rewriteAttr(elem, 'style') || changed;\\n changed = this.rewriteAttr(elem, 'poster') || changed;\\n break;\\n }\\n }\\n }\\n\\n if (elem.hasAttribute && elem.removeAttribute) {\\n if (elem.hasAttribute('crossorigin')) {\\n elem.removeAttribute('crossorigin');\\n changed = true;\\n }\\n\\n if (elem.hasAttribute('integrity')) {\\n elem.removeAttribute('integrity');\\n changed = true;\\n }\\n }\\n return changed;\\n};\\n\\n/**\\n * Rewrites all the children and there descendants of the supplied Node\\n * returning T/F if a rewrite occurred\\n * @param {Node} curr\\n * @return {boolean}\\n */\\nWombat.prototype.recurseRewriteElem = function(curr) {\\n if (!this.nodeHasChildren(curr)) return false;\\n var changed = false;\\n var rewriteQ = [curr.children || curr.childNodes];\\n\\n while (rewriteQ.length > 0) {\\n var children = rewriteQ.shift();\\n for (var i = 0; i < children.length; i++) {\\n var child = children[i];\\n if (child.nodeType === Node.ELEMENT_NODE) {\\n changed = this.rewriteElem(child) || changed;\\n if (this.nodeHasChildren(child)) {\\n rewriteQ.push(child.children || child.childNodes);\\n }\\n }\\n }\\n }\\n\\n return changed;\\n};\\n\\n/**\\n * Rewrites the supplied element and all its children if any.\\n * See {@link rewriteElem} and {@link recurseRewriteElem} for more details\\n * @param {Node} elem\\n * @return {boolean}\\n */\\nWombat.prototype.rewriteElemComplete = function(elem) {\\n if (!elem) return false;\\n var changed = this.rewriteElem(elem);\\n var changedRecursively = this.recurseRewriteElem(elem);\\n return changed || changedRecursively;\\n};\\n\\n/**\\n * Rewrites any elements found in the supplied arguments object returning\\n * a new array containing the original contents of the supplied arguments\\n * object after rewriting.\\n * @param {Object} originalArguments\\n * @return {Array<*>}\\n */\\nWombat.prototype.rewriteElementsInArguments = function(originalArguments) {\\n var argArr = new Array(originalArguments.length);\\n for (var i = 0; i < originalArguments.length; i++) {\\n var argElem = originalArguments[i];\\n if (argElem instanceof Node) {\\n this.rewriteElemComplete(argElem);\\n argArr[i] = argElem;\\n } else if (typeof argElem === 'string') {\\n argArr[i] = this.rewriteHtml(argElem);\\n } else {\\n argArr[i] = argElem;\\n }\\n }\\n return argArr;\\n};\\n\\n/**\\n * Rewrites the supplied string containing HTML, if the supplied string\\n * is full HTML (starts with <HTML, <DOCUMENT...) the string is rewritten\\n * using {@link Wombat#rewriteHtmlFull}\\n * @param {string} string\\n * @param {boolean} [checkEndTag]\\n * @return {?string}\\n */\\nWombat.prototype.rewriteHtml = function(string, checkEndTag) {\\n if (!string) {\\n return string;\\n }\\n var rwString = string;\\n if (typeof string !== 'string') {\\n rwString = string.toString();\\n }\\n\\n if (this.write_buff) {\\n rwString = this.write_buff + rwString;\\n this.write_buff = '';\\n }\\n\\n if (rwString.indexOf('<script') <= 0) {\\n // string = string.replace(/WB_wombat_/g, \\\"\\\");\\n rwString = rwString.replace(/((id|class)=\\\".*)WB_wombat_([^\\\"]+)/, '$1$3');\\n }\\n\\n if (\\n !this.$wbwindow.HTMLTemplateElement ||\\n this.FullHTMLRegex.test(rwString)\\n ) {\\n return this.rewriteHtmlFull(rwString, checkEndTag);\\n }\\n\\n var inner_doc = new DOMParser().parseFromString(\\n '<template>' + rwString + '</template>',\\n 'text/html'\\n );\\n\\n if (\\n !inner_doc ||\\n !this.nodeHasChildren(inner_doc.head) ||\\n !inner_doc.head.children[0].content\\n ) {\\n return rwString;\\n }\\n\\n var template = inner_doc.head.children[0];\\n template._no_rewrite = true;\\n if (this.recurseRewriteElem(template.content)) {\\n var new_html = template.innerHTML;\\n if (checkEndTag) {\\n var first_elem =\\n template.content.children && template.content.children[0];\\n if (first_elem) {\\n var end_tag = '</' + first_elem.tagName.toLowerCase() + '>';\\n if (\\n this.endsWith(new_html, end_tag) &&\\n !this.endsWith(rwString.toLowerCase(), end_tag)\\n ) {\\n new_html = new_html.substring(0, new_html.length - end_tag.length);\\n }\\n } else if (rwString[0] !== '<' || rwString[rwString.length - 1] !== '>') {\\n this.write_buff += rwString;\\n return undefined;\\n }\\n }\\n return new_html;\\n }\\n\\n return rwString;\\n};\\n\\n/**\\n * Rewrites the supplied string containing full HTML\\n * @param {string} string\\n * @param {boolean} [checkEndTag]\\n * @return {?string}\\n */\\nWombat.prototype.rewriteHtmlFull = function(string, checkEndTag) {\\n var inner_doc = new DOMParser().parseFromString(string, 'text/html');\\n if (!inner_doc) return string;\\n\\n var changed = false;\\n\\n for (var i = 0; i < inner_doc.all.length; i++) {\\n changed = this.rewriteElem(inner_doc.all[i]) || changed;\\n }\\n\\n if (changed) {\\n var new_html;\\n // if original had <html> tag, add full document HTML\\n if (string && string.indexOf('<html') >= 0) {\\n inner_doc.documentElement._no_rewrite = true;\\n new_html =\\n this.reconstructDocType(inner_doc.doctype) +\\n inner_doc.documentElement.outerHTML;\\n } else {\\n //\\n inner_doc.head._no_rewrite = true;\\n inner_doc.body._no_rewrite = true;\\n // hasChildNodes includes text nodes\\n var headHasKids = this.nodeHasChildren(inner_doc.head);\\n var bodyHasKids = this.nodeHasChildren(inner_doc.body);\\n new_html =\\n (headHasKids ? inner_doc.head.outerHTML : '') +\\n (bodyHasKids ? inner_doc.body.outerHTML : '');\\n if (checkEndTag) {\\n if (inner_doc.all.length > 3) {\\n var end_tag = '</' + inner_doc.all[3].tagName.toLowerCase() + '>';\\n if (\\n this.endsWith(new_html, end_tag) &&\\n !this.endsWith(string.toLowerCase(), end_tag)\\n ) {\\n new_html = new_html.substring(0, new_html.length - end_tag.length);\\n }\\n } else if (string[0] !== '<' || string[string.length - 1] !== '>') {\\n this.write_buff += string;\\n return;\\n }\\n }\\n new_html = this.reconstructDocType(inner_doc.doctype) + new_html;\\n }\\n\\n return new_html;\\n }\\n\\n return string;\\n};\\n\\n/**\\n * Rewrites a CSS style string found in the style property of an element or\\n * FontFace\\n * @param {string} orig\\n * @return {string}\\n */\\nWombat.prototype.rewriteInlineStyle = function(orig) {\\n var decoded;\\n\\n try {\\n decoded = decodeURIComponent(orig);\\n } catch (e) {\\n decoded = orig;\\n }\\n\\n if (decoded !== orig) {\\n var parts = this.rewriteStyle(decoded).split(',', 2);\\n return parts[0] + ',' + encodeURIComponent(parts[1]);\\n }\\n\\n return this.rewriteStyle(orig);\\n};\\n\\n/**\\n * Rewrites the supplied cookie\\n * @param {string} cookie\\n * @return {string}\\n */\\nWombat.prototype.rewriteCookie = function(cookie) {\\n var wombat = this;\\n var rwCookie = cookie\\n .replace(this.wb_abs_prefix, '')\\n .replace(this.wb_rel_prefix, '');\\n rwCookie = rwCookie\\n .replace(this.cookie_domain_regex, function(m, m1) {\\n // rewrite domain\\n var message = {\\n domain: m1,\\n cookie: rwCookie,\\n wb_type: 'cookie'\\n };\\n\\n // norify of cookie setting to allow server-side tracking\\n wombat.sendTopMessage(message, true);\\n\\n // if no subdomain, eg. \\\"localhost\\\", just remove domain altogether\\n if (\\n wombat.$wbwindow.location.hostname.indexOf('.') >= 0 &&\\n !wombat.IP_RX.test(wombat.$wbwindow.location.hostname)\\n ) {\\n return 'Domain=.' + wombat.$wbwindow.location.hostname;\\n }\\n return '';\\n })\\n .replace(this.cookie_path_regex, function(m, m1) {\\n // rewrite path\\n var rewritten = wombat.rewriteUrl(m1);\\n\\n if (rewritten.indexOf(wombat.wb_curr_host) === 0) {\\n rewritten = rewritten.substring(wombat.wb_curr_host.length);\\n }\\n\\n return 'Path=' + rewritten;\\n });\\n\\n // rewrite secure, if needed\\n if (wombat.$wbwindow.location.protocol !== 'https:') {\\n rwCookie = rwCookie.replace('secure', '');\\n }\\n\\n return rwCookie.replace(',|', ',');\\n};\\n\\n/**\\n * Rewrites the supplied web worker URL\\n * @param {string} workerUrl\\n * @return {string}\\n */\\nWombat.prototype.rewriteWorker = function(workerUrl) {\\n if (!workerUrl) return workerUrl;\\n var isBlob = workerUrl.indexOf('blob:') === 0;\\n var isJS = workerUrl.indexOf('javascript:') === 0;\\n if (!isBlob && !isJS) {\\n if (\\n !this.startsWithOneOf(workerUrl, this.VALID_PREFIXES) &&\\n !this.startsWith(workerUrl, '/') &&\\n !this.startsWithOneOf(workerUrl, this.BAD_PREFIXES)\\n ) {\\n // super relative url assets/js/xyz.js\\n var rurl = this.resolveRelUrl(workerUrl, this.$wbwindow.document);\\n return this.rewriteUrl(rurl, false, 'wkr_', this.$wbwindow.document);\\n }\\n return this.rewriteUrl(workerUrl, false, 'wkr_', this.$wbwindow.document);\\n }\\n\\n var workerCode = isJS ? workerUrl.replace('javascript:', '') : null;\\n if (isBlob) {\\n // fetching only skipped if it was JS url\\n var x = new XMLHttpRequest();\\n // use sync ajax request to get the contents, remove postMessage() rewriting\\n this.utilFns.XHRopen.call(x, 'GET', workerUrl, false);\\n x.send();\\n workerCode = x.responseText\\n .replace(this.workerBlobRe, '')\\n // resolving blobs hit our sever side rewriting so we gotta\\n // ensure we good\\n .replace(this.rmCheckThisInjectRe, 'this');\\n }\\n\\n if (this.wb_info.static_prefix || this.wb_info.ww_rw_script) {\\n var originalURL = this.$wbwindow.document.baseURI;\\n // if we are here we can must return blob so set makeBlob to true\\n var ww_rw =\\n this.wb_info.ww_rw_script ||\\n this.wb_info.static_prefix + 'wombatWorkers.js';\\n var rw =\\n \\\"(function() { self.importScripts('\\\" +\\n ww_rw +\\n \\\"'); new WBWombat({'prefix': '\\\" +\\n this.wb_abs_prefix +\\n \\\"', 'prefixMod': '\\\" +\\n this.wb_abs_prefix +\\n \\\"wkrf_/', 'originalURL': '\\\" +\\n originalURL +\\n \\\"'}); })();\\\";\\n\\n workerCode = rw + workerCode;\\n }\\n var blob = new Blob([workerCode], { type: 'application/javascript' });\\n return URL.createObjectURL(blob);\\n};\\n\\n/**\\n * Rewrite the arguments supplied to a function of the Text interface in order\\n * to ensure CSS is rewritten when a text node is the child of the style tag\\n * @param {Object} fnThis\\n * @param {function} originalFn\\n * @param {Object} argsObj\\n */\\nWombat.prototype.rewriteTextNodeFn = function(fnThis, originalFn, argsObj) {\\n var deproxiedThis = this.proxyToObj(fnThis);\\n var args;\\n if (\\n argsObj.length > 0 &&\\n deproxiedThis.parentElement &&\\n deproxiedThis.parentElement.tagName === 'STYLE'\\n ) {\\n // appendData(DOMString data); dataIndex = 0\\n // insertData(unsigned long offset, DOMString data); dataIndex = 1\\n // replaceData(unsigned long offset, unsigned long count, DOMString data); dataIndex = 2\\n args = new Array(argsObj.length);\\n var dataIndex = argsObj.length - 1;\\n if (dataIndex === 2) {\\n args[0] = argsObj[0];\\n args[1] = argsObj[1];\\n } else if (dataIndex === 1) {\\n args[0] = argsObj[0];\\n }\\n args[dataIndex] = this.rewriteStyle(argsObj[dataIndex]);\\n } else {\\n args = argsObj;\\n }\\n if (originalFn.__WB_orig_apply) {\\n return originalFn.__WB_orig_apply(deproxiedThis, args);\\n }\\n return originalFn.apply(deproxiedThis, args);\\n};\\n\\n/**\\n * Rewrite the arguments supplied to document.[write, writeln] in order\\n * to ensure that the string of HTML is rewritten\\n * @param {Object} fnThis\\n * @param {function} originalFn\\n * @param {Object} argsObj\\n */\\nWombat.prototype.rewriteDocWriteWriteln = function(\\n fnThis,\\n originalFn,\\n argsObj\\n) {\\n var thisObj = this.proxyToObj(fnThis);\\n var argLen = argsObj.length;\\n var string;\\n if (argLen === 0) {\\n return originalFn.call(thisObj);\\n }\\n if (argLen === 1) {\\n string = argsObj[0];\\n } else {\\n // use Array.join rather than Array.apply because join works with array like objects\\n string = Array.prototype.join.call(argsObj, '');\\n }\\n var new_buff = this.rewriteHtml(string, true);\\n var res = originalFn.call(thisObj, new_buff);\\n this.initNewWindowWombat(thisObj.defaultView);\\n return res;\\n};\\n\\n/**\\n * Rewrite the arguments supplied to a function of the ChildNode interface\\n * in order to ensure that elements are rewritten\\n * @param {Object} fnThis\\n * @param {function} originalFn\\n * @param {Object} argsObj\\n */\\nWombat.prototype.rewriteChildNodeFn = function(fnThis, originalFn, argsObj) {\\n var thisObj = this.proxyToObj(fnThis);\\n if (argsObj.length === 0) return originalFn.call(thisObj);\\n var newArgs = this.rewriteElementsInArguments(argsObj);\\n if (originalFn.__WB_orig_apply) {\\n return originalFn.__WB_orig_apply(thisObj, newArgs);\\n }\\n return originalFn.apply(thisObj, newArgs);\\n};\\n\\n/**\\n * Rewrites the arguments supplied to Element.[insertAdjacentElement, insertAdjacentHTML].\\n * If rwHTML is true the rewrite performed is done by {@link rewriteHtml} other wise\\n * {@link rewriteElemComplete}\\n * @param {Object} fnThis\\n * @param {function} originalFn\\n * @param {number} position\\n * @param {string|Node} textOrElem\\n * @param {boolean} rwHTML\\n * @return {*}\\n */\\nWombat.prototype.rewriteInsertAdjHTMLOrElemArgs = function(\\n fnThis,\\n originalFn,\\n position,\\n textOrElem,\\n rwHTML\\n) {\\n var fnThisObj = this.proxyToObj(fnThis);\\n if (fnThisObj._no_rewrite) {\\n return originalFn.call(fnThisObj, position, textOrElem);\\n }\\n if (rwHTML) {\\n return originalFn.call(fnThisObj, position, this.rewriteHtml(textOrElem));\\n }\\n this.rewriteElemComplete(textOrElem);\\n return originalFn.call(fnThisObj, position, textOrElem);\\n};\\n\\n/**\\n * Rewrites the arguments of either setTimeout or setInterval because\\n * [setTimeout|setInterval]('document.location.href = \\\"xyz.com\\\"', time)\\n * is legal and used\\n * @param {Object} fnThis\\n * @param {function} originalFn\\n * @param {Object} argsObj\\n * @return {*}\\n */\\nWombat.prototype.rewriteSetTimeoutInterval = function(\\n fnThis,\\n originalFn,\\n argsObj\\n) {\\n // strings are primitives with a prototype or __proto__ of String depending on the browser\\n var rw = this.isString(argsObj[0]);\\n // do not mess with the arguments object unless you want instant de-optimization\\n var args = rw ? new Array(argsObj.length) : argsObj;\\n if (rw) {\\n if (this.$wbwindow.Proxy) {\\n args[0] = this.wrapScriptTextJsProxy(argsObj[0]);\\n } else {\\n args[0] = argsObj[0].replace(/\\\\blocation\\\\b/g, 'WB_wombat_$&');\\n }\\n for (var i = 1; i < argsObj.length; ++i) {\\n args[i] = this.proxyToObj(argsObj[i]);\\n }\\n }\\n // setTimeout|setInterval does not require its this arg to be window so just in case\\n // someone got funky with it\\n var thisObj = this.proxyToObj(fnThis);\\n if (originalFn.__WB_orig_apply) {\\n return originalFn.__WB_orig_apply(thisObj, args);\\n }\\n return originalFn.apply(thisObj, args);\\n};\\n\\n/**\\n * Rewrites the value of used in to set SomeElement.[innerHTML|outerHTML]\\n * iframe.srcdoc, or style.textContent handling edge cases e.g. script tags.\\n *\\n * If the element is a style tag and it has a sheet after the new value is set\\n * it, the sheet, is checked for media rules.\\n *\\n * @param {Object} thisObj\\n * @param {Function} oSetter\\n * @param {?string} newValue\\n */\\nWombat.prototype.rewriteHTMLAssign = function(thisObj, oSetter, newValue) {\\n var res = newValue;\\n var tagName = thisObj.tagName;\\n if (!thisObj._no_rewrite && !(thisObj instanceof this.$wbwindow.HTMLTemplateElement)) {\\n if (tagName === 'STYLE') {\\n res = this.rewriteStyle(newValue);\\n } else if (tagName === \\\"SCRIPT\\\") {\\n // script tags are used to hold HTML for later use\\n // check if this contains tags or a script\\n\\n if (newValue && this.IsTagRegex.test(newValue)) {\\n res = this.rewriteHtml(newValue);\\n }\\n\\n // likely actual JS, not tags\\n if (res === newValue) {\\n if (\\n !this.skipWrapScriptBasedOnType(thisObj.type) &&\\n !this.skipWrapScriptTextBasedOnText(newValue)\\n ) {\\n res = this.wrapScriptTextJsProxy(res);\\n }\\n }\\n } else {\\n res = this.rewriteHtml(newValue);\\n }\\n }\\n oSetter.call(thisObj, res);\\n if (\\n this.wbUseAFWorker &&\\n this.WBAutoFetchWorker &&\\n tagName === 'STYLE' &&\\n thisObj.sheet != null\\n ) {\\n // got to preserve all the things\\n this.WBAutoFetchWorker.deferredSheetExtraction(thisObj.sheet);\\n }\\n};\\n\\n/**\\n * Rewrites the value to be supplied to eval or our injected wrapper\\n * @param {Function} rawEvalOrWrapper\\n * @param {*} evalArg\\n * @return {*}\\n */\\nWombat.prototype.rewriteEvalArg = function(rawEvalOrWrapper, evalArg) {\\n var toBeEvald =\\n this.isString(evalArg) && !this.skipWrapScriptTextBasedOnText(evalArg)\\n ? this.wrapScriptTextJsProxy(evalArg)\\n : evalArg;\\n return rawEvalOrWrapper(toBeEvald);\\n};\\n\\n/**\\n * Applies an Event property getter override for the supplied property\\n * @param {string} attr\\n * @param {Object} [eventProto]\\n */\\nWombat.prototype.addEventOverride = function(attr, eventProto) {\\n var theProto = eventProto;\\n if (!eventProto) {\\n theProto = this.$wbwindow.MessageEvent.prototype;\\n }\\n var origGetter = this.getOrigGetter(theProto, attr);\\n if (!origGetter) return;\\n this.defGetterProp(theProto, attr, function() {\\n if (this['_' + attr] != null) {\\n return this['_' + attr];\\n }\\n return origGetter.call(this);\\n });\\n};\\n\\n/**\\n * Returns T/F indicating if the supplied attribute node is to be rewritten\\n * @param {Object} attr\\n * @return {boolean}\\n */\\nWombat.prototype.isAttrObjRewrite = function(attr) {\\n if (!attr) return false;\\n var tagName = attr.ownerElement && attr.ownerElement.tagName;\\n return this.shouldRewriteAttr(tagName, attr.nodeName);\\n};\\n\\n/**\\n * Defines a new getter and setter function for the supplied\\n * property of the Attr interface\\n * @param {Object} attrProto\\n * @param {string} prop\\n */\\nWombat.prototype.newAttrObjGetSet = function(attrProto, prop) {\\n var wombat = this;\\n var oGetter = this.getOrigGetter(attrProto, prop);\\n var oSetter = this.getOrigSetter(attrProto, prop);\\n this.defProp(\\n attrProto,\\n prop,\\n function newAttrObjSetter(newValue) {\\n var obj = wombat.proxyToObj(this);\\n var res = newValue;\\n if (wombat.isAttrObjRewrite(obj)) {\\n res = wombat.performAttributeRewrite(\\n obj.ownerElement,\\n obj.name,\\n newValue,\\n false\\n );\\n }\\n return oSetter.call(obj, res);\\n },\\n function newAttrObjGetter() {\\n var obj = wombat.proxyToObj(this);\\n var res = oGetter.call(obj);\\n if (wombat.isAttrObjRewrite(obj)) {\\n return wombat.extractOriginalURL(res);\\n }\\n return res;\\n }\\n );\\n};\\n\\n/**\\n * Overrides the nodeValue property of the Attr interface\\n */\\nWombat.prototype.overrideAttrProps = function() {\\n var attrProto = this.$wbwindow.Attr.prototype;\\n this.newAttrObjGetSet(attrProto, 'value');\\n this.newAttrObjGetSet(attrProto, 'nodeValue');\\n this.newAttrObjGetSet(attrProto, 'textContent');\\n};\\n\\n/**\\n * Applies an override the attribute get/set override\\n * @param {Object} obj\\n * @param {string} attr\\n * @param {string} mod\\n */\\nWombat.prototype.overrideAttr = function(obj, attr, mod) {\\n var orig_getter = this.getOrigGetter(obj, attr);\\n var orig_setter = this.getOrigSetter(obj, attr);\\n var wombat = this;\\n\\n var setter = function newAttrPropSetter(orig) {\\n if (mod === 'js_' && !this.__$removedWBOSRC$__) {\\n wombat.removeWBOSRC(this);\\n }\\n var val = wombat.rewriteUrl(orig, false, mod);\\n if (orig_setter) {\\n return orig_setter.call(this, val);\\n } else if (wombat.wb_setAttribute) {\\n return wombat.wb_setAttribute.call(this, attr, val);\\n }\\n };\\n\\n var getter = function newAttrPropGetter() {\\n var res;\\n if (orig_getter) {\\n res = orig_getter.call(this);\\n } else if (wombat.wb_getAttribute) {\\n res = wombat.wb_getAttribute.call(this, attr);\\n }\\n res = wombat.extractOriginalURL(res);\\n if (this.__WB_blank && res === \\\"about:blank\\\") {\\n return \\\"\\\";\\n }\\n return res;\\n };\\n\\n this.defProp(obj, attr, setter, getter);\\n};\\n\\n/**\\n * Applies an attribute getter override IFF an original getter exists\\n * @param {Object} proto\\n * @param {string} prop\\n * @param {*} [cond]\\n */\\nWombat.prototype.overridePropExtract = function(proto, prop, cond) {\\n var orig_getter = this.getOrigGetter(proto, prop);\\n var wombat = this;\\n if (orig_getter) {\\n var new_getter = function overridePropExtractNewGetter() {\\n var obj = wombat.proxyToObj(this);\\n var res = orig_getter.call(obj);\\n if (!cond || cond(obj)) {\\n return wombat.extractOriginalURL(res);\\n }\\n return res;\\n };\\n this.defGetterProp(proto, prop, new_getter);\\n }\\n};\\n\\n\\n/**\\n * Overrides referer -- if top-replay frame, referrer should be \\\"\\\", otherwise extractOriginURL\\n * @param {Object} proto\\n * @param {string} prop\\n * @param {*} [cond]\\n */\\nWombat.prototype.overrideReferrer = function($document) {\\n var orig_getter = this.getOrigGetter($document, \\\"referrer\\\");\\n var wombat = this;\\n if (orig_getter) {\\n var new_getter = function overridePropExtractNewGetter() {\\n var obj = wombat.proxyToObj(this);\\n\\n var $win = this.defaultView;\\n\\n // if top replay-frame, referrer should always be \\\"\\\"\\n if ($win === $win.__WB_replay_top) {\\n return \\\"\\\";\\n }\\n\\n var res = orig_getter.call(obj);\\n\\n return wombat.extractOriginalURL(res);\\n };\\n this.defGetterProp($document, \\\"referrer\\\", new_getter);\\n }\\n};\\n\\n\\n/**\\n * Applies an attribute getter override IFF an original getter exists that\\n * ensures that the results of retrieving the attributes value is not a\\n * wombat Proxy\\n * @param {Object} proto\\n * @param {string} prop\\n */\\nWombat.prototype.overridePropToProxy = function(proto, prop) {\\n var orig_getter = this.getOrigGetter(proto, prop);\\n if (orig_getter) {\\n var wombat = this;\\n var new_getter = function overridePropToProxyNewGetter() {\\n return wombat.objToProxy(orig_getter.call(this));\\n };\\n this.defGetterProp(proto, prop, new_getter);\\n }\\n};\\n\\n/**\\n * Applies an override to supplied history function name IFF it exists\\n * @param {string} funcName\\n * @return {?function}\\n */\\nWombat.prototype.overrideHistoryFunc = function(funcName) {\\n if (!this.$wbwindow.history) return undefined;\\n var orig_func = this.$wbwindow.history[funcName];\\n if (!orig_func) return undefined;\\n\\n this.$wbwindow.history['_orig_' + funcName] = orig_func;\\n\\n this.$wbwindow.history.___wb_ownWindow = this.$wbwindow;\\n\\n var wombat = this;\\n\\n var rewrittenFunc = function histNewFunc(stateObj, title, url) {\\n // in case functions rebound to different history obj!\\n var historyWin = this.___wb_ownWindow || wombat.$wbwindow;\\n\\n var wombatLocation = historyWin.WB_wombat_location;\\n var rewritten_url;\\n var resolvedURL;\\n if (url) {\\n var parser = wombat._makeURLParser(url, historyWin.document);\\n resolvedURL = parser.href;\\n\\n rewritten_url = wombat.rewriteUrl(resolvedURL);\\n\\n if (\\n resolvedURL !== wombatLocation.origin &&\\n wombatLocation.href !== 'about:blank' &&\\n !wombat.startsWith(resolvedURL, wombatLocation.origin + '/')\\n ) {\\n throw new DOMException('Invalid history change: ' + resolvedURL);\\n }\\n } else {\\n resolvedURL = wombatLocation.href;\\n }\\n\\n orig_func.call(this, stateObj, title, rewritten_url);\\n\\n var origTitle = historyWin.document.title;\\n\\n if (wombat.WBAutoFetchWorker) {\\n historyWin.setTimeout(function() {\\n if (!title && historyWin.document.title !== origTitle) {\\n title = historyWin.document.title;\\n }\\n\\n wombat.WBAutoFetchWorker.fetchAsPage(rewritten_url, resolvedURL, title);\\n }, 100);\\n }\\n\\n wombat.sendHistoryUpdate(resolvedURL, title, historyWin);\\n };\\n\\n this.$wbwindow.history[funcName] = rewrittenFunc;\\n if (this.$wbwindow.History && this.$wbwindow.History.prototype) {\\n this.$wbwindow.History.prototype[funcName] = rewrittenFunc;\\n }\\n\\n return rewrittenFunc;\\n};\\n\\n/**\\n * Applies an getter/setter override to the supplied style interface's attribute\\n * and prop name combination\\n * @param {Object} obj\\n * @param {string} attr\\n * @param {string} [propName]\\n */\\nWombat.prototype.overrideStyleAttr = function(obj, attr, propName) {\\n var orig_getter = this.getOrigGetter(obj, attr);\\n var orig_setter = this.getOrigSetter(obj, attr);\\n\\n var wombat = this;\\n\\n var setter = function overrideStyleAttrSetter(orig) {\\n var val = wombat.rewriteStyle(orig);\\n if (orig_setter) {\\n orig_setter.call(this, val);\\n } else {\\n this.setProperty(propName, val);\\n }\\n return val;\\n };\\n\\n var getter = orig_getter;\\n\\n if (!orig_getter) {\\n getter = function overrideStyleAttrGetter() {\\n return this.getPropertyValue(propName);\\n };\\n }\\n\\n if ((orig_setter && orig_getter) || propName) {\\n this.defProp(obj, attr, setter, getter);\\n }\\n};\\n\\n/**\\n * Applies an override to the setProperty function\\n * @param style_proto\\n */\\nWombat.prototype.overrideStyleSetProp = function(style_proto) {\\n var orig_setProp = style_proto.setProperty;\\n var wombat = this;\\n style_proto.setProperty = function rwSetProperty(name, value, priority) {\\n var rwvalue = wombat.rewriteStyle(value);\\n return orig_setProp.call(this, name, rwvalue, priority);\\n };\\n};\\n\\n/**\\n * Overrides the getter and setter functions for the properties listed in\\n * {@link Wombat#URL_PROPS} for the `a` and `area` tags\\n * @param {Object} whichObj\\n */\\nWombat.prototype.overrideAnchorAreaElem = function(whichObj) {\\n if (!whichObj || !whichObj.prototype) return;\\n var originalGetSets = {};\\n var originalProto = whichObj.prototype;\\n\\n var anchorAreaSetter = function anchorAreaSetter(prop, value) {\\n var func = originalGetSets['set_' + prop];\\n if (func) return func.call(this, value);\\n return '';\\n };\\n\\n var anchorAreaGetter = function anchorAreaGetter(prop) {\\n var func = originalGetSets['get_' + prop];\\n if (func) return func.call(this);\\n return '';\\n };\\n\\n for (var i = 0; i < this.URL_PROPS.length; i++) {\\n var prop = this.URL_PROPS[i];\\n originalGetSets['get_' + prop] = this.getOrigGetter(originalProto, prop);\\n originalGetSets['set_' + prop] = this.getOrigSetter(originalProto, prop);\\n if (Object.defineProperty) {\\n this.defProp(\\n originalProto,\\n prop,\\n this.makeSetLocProp(prop, anchorAreaSetter, anchorAreaGetter),\\n this.makeGetLocProp(prop, anchorAreaGetter),\\n true\\n );\\n }\\n }\\n\\n originalProto.toString = function toString() {\\n return this.href;\\n };\\n};\\n\\n/**\\n * Overrides the getter and setter functions for the `innerHTML` and `outerHTML`\\n * properties of the supplied element\\n * @param {Object} elem\\n * @param {string} prop\\n * @param {boolean} [rewriteGetter]\\n */\\nWombat.prototype.overrideHtmlAssign = function(elem, prop, rewriteGetter) {\\n if (!this.$wbwindow.DOMParser || !elem || !elem.prototype) {\\n return;\\n }\\n\\n var obj = elem.prototype;\\n\\n var orig_getter = this.getOrigGetter(obj, prop);\\n var orig_setter = this.getOrigSetter(obj, prop);\\n\\n if (!orig_setter) return;\\n\\n var rewriteFn = this.rewriteHTMLAssign;\\n\\n var setter = function overrideHTMLAssignSetter(orig) {\\n return rewriteFn(this, orig_setter, orig);\\n };\\n\\n var wb_unrewrite_rx = this.wb_unrewrite_rx;\\n\\n var getter = function overrideHTMLAssignGetter() {\\n var res = orig_getter.call(this);\\n if (!this._no_rewrite) {\\n return res.replace(wb_unrewrite_rx, '');\\n }\\n return res;\\n };\\n\\n this.defProp(obj, prop, setter, rewriteGetter ? getter : orig_getter);\\n};\\n\\n/**\\n * Overrides the getter and setter functions for the supplied property\\n * on the HTMLIFrameElement\\n * @param {string} prop\\n */\\nWombat.prototype.overrideIframeContentAccess = function(prop) {\\n if (\\n !this.$wbwindow.HTMLIFrameElement ||\\n !this.$wbwindow.HTMLIFrameElement.prototype\\n ) {\\n return;\\n }\\n\\n var obj = this.$wbwindow.HTMLIFrameElement.prototype;\\n var orig_getter = this.getOrigGetter(obj, prop);\\n\\n if (!orig_getter) return;\\n\\n var orig_setter = this.getOrigSetter(obj, prop);\\n var wombat = this;\\n var getter = function overrideIframeContentAccessGetter() {\\n wombat.initIframeWombat(this);\\n return wombat.objToProxy(orig_getter.call(this));\\n };\\n\\n this.defProp(obj, prop, orig_setter, getter);\\n obj['_get_' + prop] = orig_getter;\\n};\\n\\n/**\\n * Applies an override to the gettter function for the frames property of\\n * the supplied window in order to ensure that wombat is initialized in\\n * all frames.\\n * * @param {Window} $wbwindow\\n */\\nWombat.prototype.overrideFramesAccess = function($wbwindow) {\\n // If $wbwindow.frames is the window itself, nothing to override\\n // This can be handled in the Obj Proxy\\n if ($wbwindow.Proxy && $wbwindow === $wbwindow.frames) {\\n return;\\n }\\n $wbwindow.__wb_frames = $wbwindow.frames;\\n var wombat = this;\\n var getter = function overrideFramesAccessGetter() {\\n for (var i = 0; i < this.__wb_frames.length; i++) {\\n try {\\n wombat.initNewWindowWombat(this.__wb_frames[i]);\\n } catch (e) {}\\n }\\n return this.__wb_frames;\\n };\\n\\n this.defGetterProp($wbwindow, 'frames', getter);\\n this.defGetterProp($wbwindow.Window.prototype, 'frames', getter);\\n};\\n\\n\\nWombat.prototype.overrideSWAccess = function($wbwindow) {\\n if (!$wbwindow.navigator.serviceWorker || !$wbwindow.navigator.serviceWorker.controller) {\\n return;\\n }\\n\\n $wbwindow._WB_wombat_sw = $wbwindow.navigator.serviceWorker;\\n\\n\\n var overrideSW = {\\n \\\"controller\\\": null,\\n \\\"ready\\\": Promise.resolve({\\\"unregister\\\": function() {} }),\\n \\\"register\\\": function() { return Promise.reject(); },\\n \\\"addEventListener\\\": function() {},\\n \\\"removeEventListener\\\": function() {},\\n }\\n\\n this.defGetterProp($wbwindow.navigator, \\\"serviceWorker\\\", function() { return overrideSW; });\\n}\\n\\n\\n\\n/**\\n * Overrides the supplied method in order to ensure that the `this` argument\\n * of the function is not one of the JS Proxy objects used by wombat.\\n * @param {object} cls\\n * @param {string} method\\n * @param {Object} [obj]\\n */\\nWombat.prototype.overrideFuncThisProxyToObj = function(cls, method, obj) {\\n if (!cls) return;\\n\\n var ovrObj = obj;\\n if (!obj && cls.prototype && cls.prototype[method]) {\\n ovrObj = cls.prototype;\\n } else if (!obj && cls[method]) {\\n ovrObj = cls;\\n }\\n\\n if (!ovrObj) return;\\n\\n var wombat = this;\\n var orig = ovrObj[method];\\n ovrObj[method] = function deproxyThis() {\\n return orig.apply(wombat.proxyToObj(this), arguments);\\n };\\n};\\n\\n/**\\n * Applies an function override that ensures that the argument the supplied index\\n * is not one of the JS Proxy objects used by wombat.\\n * @param {Object} cls\\n * @param {string} method\\n * @param {number} [argumentIdx]\\n */\\nWombat.prototype.overrideFuncArgProxyToObj = function(\\n cls,\\n method,\\n argumentIdx\\n) {\\n if (!cls || !cls.prototype) return;\\n var argIndex = argumentIdx || 0;\\n var orig = cls.prototype[method];\\n if (!orig) return;\\n var wombat = this;\\n cls.prototype[method] = function deproxyFnArg() {\\n var args = new Array(arguments.length);\\n for (var i = 0; i < args.length; i++) {\\n if (i === argIndex) {\\n args[i] = wombat.proxyToObj(arguments[i]);\\n } else {\\n args[i] = arguments[i];\\n }\\n }\\n var thisObj = wombat.proxyToObj(this);\\n if (orig.__WB_orig_apply) {\\n return orig.__WB_orig_apply(thisObj, args);\\n }\\n return orig.apply(thisObj, args);\\n };\\n};\\n\\n/**\\n * Overrides Function.prototype.apply in order to ensure that none of the\\n * arguments of `native` functions are one of the JS Proxy objects used by wombat.\\n * @param {Window} $wbwindow\\n */\\nWombat.prototype.overrideFunctionApply = function($wbwindow) {\\n if ($wbwindow.Function.prototype.__WB_orig_apply) {\\n return;\\n }\\n var orig_apply = $wbwindow.Function.prototype.apply;\\n $wbwindow.Function.prototype.__WB_orig_apply = orig_apply;\\n var wombat = this;\\n $wbwindow.Function.prototype.apply = function apply(obj, args) {\\n if (wombat.isNativeFunction(this)) {\\n obj = wombat.proxyToObj(obj);\\n args = wombat.deproxyArrayHandlingArgumentsObj(args);\\n }\\n return this.__WB_orig_apply(obj, args);\\n };\\n this.wb_funToString.apply = orig_apply;\\n};\\n\\n\\n/**\\n * Override Function.prototype.bind to deproxy the param target\\n * in case of native functions\\n *\\n */\\nWombat.prototype.overrideFunctionBind = function($wbwindow) {\\n if ($wbwindow.Function.prototype.__WB_orig_bind) {\\n return;\\n }\\n var orig_bind = $wbwindow.Function.prototype.bind;\\n $wbwindow.Function.prototype.__WB_orig_bind = orig_bind;\\n var wombat = this;\\n $wbwindow.Function.prototype.bind = function bind(obj) {\\n return this.__WB_orig_bind.apply(this, arguments);\\n };\\n};\\n\\n\\n\\n\\n/**\\n * Overrides the getter and setter functions for the `srcset` property\\n * of the supplied Object in order to rewrite accesses and retrievals\\n * @param {Object} obj\\n * @param {string} [mod]\\n */\\nWombat.prototype.overrideSrcsetAttr = function(obj, mod) {\\n var prop = 'srcset';\\n var orig_getter = this.getOrigGetter(obj, prop);\\n var orig_setter = this.getOrigSetter(obj, prop);\\n var wombat = this;\\n\\n var setter = function srcset(orig) {\\n var val = wombat.rewriteSrcset(orig, this);\\n if (orig_setter) {\\n return orig_setter.call(this, val);\\n } else if (wombat.wb_setAttribute) {\\n return wombat.wb_setAttribute.call(this, prop, val);\\n }\\n };\\n\\n var getter = function srcset() {\\n var res;\\n if (orig_getter) {\\n res = orig_getter.call(this);\\n } else if (wombat.wb_getAttribute) {\\n res = wombat.wb_getAttribute.call(this, prop);\\n }\\n res = wombat.extractOriginalURL(res);\\n return res;\\n };\\n\\n this.defProp(obj, prop, setter, getter);\\n};\\n\\n/**\\n * Overrides the getter and setter functions for the `href` property\\n * of the supplied Object in order to rewrite accesses and retrievals\\n * @param {Object} obj\\n * @param {string} mod\\n */\\nWombat.prototype.overrideHrefAttr = function(obj, mod) {\\n var orig_getter = this.getOrigGetter(obj, 'href');\\n var orig_setter = this.getOrigSetter(obj, 'href');\\n\\n var wombat = this;\\n\\n var setter = function href(orig) {\\n var val;\\n if (mod === 'cs_' && orig.indexOf('data:text/css') === 0) {\\n val = wombat.rewriteInlineStyle(orig);\\n } else if (this.tagName === 'LINK') {\\n val = wombat.rewriteUrl(\\n orig,\\n false,\\n wombat.rwModForElement(this, 'href')\\n );\\n } else {\\n val = wombat.rewriteUrl(orig, false, mod, this.ownerDocument);\\n }\\n if (orig_setter) {\\n return orig_setter.call(this, val);\\n } else if (wombat.wb_setAttribute) {\\n return wombat.wb_setAttribute.call(this, 'href', val);\\n }\\n };\\n\\n var getter = function href() {\\n var res;\\n if (orig_getter) {\\n res = orig_getter.call(this);\\n } else if (wombat.wb_getAttribute) {\\n res = wombat.wb_getAttribute.call(this, 'href');\\n }\\n if (!this._no_rewrite) return wombat.extractOriginalURL(res);\\n return res;\\n };\\n\\n this.defProp(obj, 'href', setter, getter);\\n};\\n\\n/**\\n * Overrides the getter and setter functions for a property of the Text\\n * interface in order to rewrite accesses and retrievals when a text node\\n * is the child of the style tag\\n * @param {Object} textProto\\n * @param {string} whichProp\\n */\\nWombat.prototype.overrideTextProtoGetSet = function(textProto, whichProp) {\\n var orig_getter = this.getOrigGetter(textProto, whichProp);\\n var wombat = this;\\n var setter;\\n // data, from CharacterData, is both readable and writable whereas wholeText, from Text, is not\\n if (whichProp === 'data') {\\n var orig_setter = this.getOrigSetter(textProto, whichProp);\\n setter = function rwTextProtoSetter(orig) {\\n var res = orig;\\n if (\\n !this._no_rewrite &&\\n this.parentElement &&\\n this.parentElement.tagName === 'STYLE'\\n ) {\\n res = wombat.rewriteStyle(orig);\\n }\\n return orig_setter.call(this, res);\\n };\\n }\\n var getter = function rwTextProtoGetter() {\\n var res = orig_getter.call(this);\\n if (\\n !this._no_rewrite &&\\n this.parentElement &&\\n this.parentElement.tagName === 'STYLE'\\n ) {\\n return res.replace(wombat.wb_unrewrite_rx, '');\\n }\\n return res;\\n };\\n this.defProp(textProto, whichProp, setter, getter);\\n};\\n\\n/**\\n * Overrides the constructor of an UIEvent object in order to ensure\\n * that the `view`, `relatedTarget`, and `target` arguments of the\\n * constructor are not a JS Proxy used by wombat.\\n * @param {string} which\\n */\\nWombat.prototype.overrideAnUIEvent = function(which) {\\n var didOverrideKey = '__wb_' + which + '_overridden';\\n var ConstructorFN = this.$wbwindow[which];\\n if (\\n !ConstructorFN ||\\n !ConstructorFN.prototype ||\\n ConstructorFN.prototype[didOverrideKey]\\n )\\n return;\\n // ensure if and when view is accessed it is proxied\\n var wombat = this;\\n this.overridePropToProxy(ConstructorFN.prototype, 'view');\\n var initFNKey = 'init' + which;\\n if (ConstructorFN.prototype[initFNKey]) {\\n var originalInitFn = ConstructorFN.prototype[initFNKey];\\n ConstructorFN.prototype[initFNKey] = function() {\\n var thisObj = wombat.proxyToObj(this);\\n if (arguments.length === 0 || arguments.length < 3) {\\n if (originalInitFn.__WB_orig_apply) {\\n return originalInitFn.__WB_orig_apply(thisObj, arguments);\\n }\\n return originalInitFn.apply(thisObj, arguments);\\n }\\n var newArgs = new Array(arguments.length);\\n for (var i = 0; i < arguments.length; i++) {\\n if (i === 3) {\\n newArgs[i] = wombat.proxyToObj(arguments[i]);\\n } else {\\n newArgs[i] = arguments[i];\\n }\\n }\\n if (originalInitFn.__WB_orig_apply) {\\n return originalInitFn.__WB_orig_apply(thisObj, newArgs);\\n }\\n return originalInitFn.apply(thisObj, newArgs);\\n };\\n }\\n this.$wbwindow[which] = (function(EventConstructor) {\\n return function NewEventConstructor(type, init) {\\n wombat.domConstructorErrorChecker(this, which, arguments);\\n if (init) {\\n if (init.view != null) {\\n init.view = wombat.proxyToObj(init.view);\\n }\\n if (init.relatedTarget != null) {\\n init.relatedTarget = wombat.proxyToObj(init.relatedTarget);\\n }\\n if (init.target != null) {\\n init.target = wombat.proxyToObj(init.target);\\n }\\n }\\n return new EventConstructor(type, init);\\n };\\n })(ConstructorFN);\\n this.$wbwindow[which].prototype = ConstructorFN.prototype;\\n Object.defineProperty(this.$wbwindow[which].prototype, 'constructor', {\\n value: this.$wbwindow[which]\\n });\\n this.$wbwindow[which].prototype[didOverrideKey] = true;\\n};\\n\\n/**\\n * Rewrites the arguments supplied to the functions of the ParentNode interface\\n * @param {Object} fnThis\\n * @param {function} originalFn\\n * @param {Object} argsObj\\n * @return {*}\\n */\\nWombat.prototype.rewriteParentNodeFn = function(fnThis, originalFn, argsObj) {\\n var argArr = this._no_rewrite\\n ? argsObj\\n : this.rewriteElementsInArguments(argsObj);\\n var thisObj = this.proxyToObj(fnThis);\\n if (originalFn.__WB_orig_apply) {\\n return originalFn.__WB_orig_apply(thisObj, argArr);\\n }\\n return originalFn.apply(thisObj, argArr);\\n};\\n\\n/**\\n * Overrides the append and prepend functions on the supplied object in order\\n * to ensure that the elements or string of HTML supplied as arguments to these\\n * functions are rewritten\\n * @param {Object} obj\\n * @see https://developer.mozilla.org/en-US/docs/Web/API/ParentNode/append\\n * @see https://developer.mozilla.org/en-US/docs/Web/API/ParentNode/prepend\\n */\\nWombat.prototype.overrideParentNodeAppendPrepend = function(obj) {\\n var rewriteParentNodeFn = this.rewriteParentNodeFn;\\n if (obj.prototype.append) {\\n var originalAppend = obj.prototype.append;\\n obj.prototype.append = function append() {\\n return rewriteParentNodeFn(this, originalAppend, arguments);\\n };\\n }\\n if (obj.prototype.prepend) {\\n var originalPrepend = obj.prototype.prepend;\\n obj.prototype.prepend = function prepend() {\\n return rewriteParentNodeFn(this, originalPrepend, arguments);\\n };\\n }\\n};\\n\\n/**\\n * Overrides the `innerHTML` property and `append`, `prepend` functions\\n * on the ShadowRoot interface in order to ensure any HTML elements\\n * added via these methods are rewritten\\n * @see https://developer.mozilla.org/en-US/docs/Web/API/ShadowRoot\\n */\\nWombat.prototype.overrideShadowDom = function() {\\n if (!this.$wbwindow.ShadowRoot || !this.$wbwindow.ShadowRoot.prototype) {\\n return;\\n }\\n // shadow root inherits from DocumentFragment, Node, and ParentNode not Element\\n this.overrideHtmlAssign(this.$wbwindow.ShadowRoot, 'innerHTML', true);\\n this.overrideParentNodeAppendPrepend(this.$wbwindow.ShadowRoot);\\n};\\n\\n/**\\n * Applies an override to the ChildNode interface that is inherited by\\n * the supplied Object. If the textIface argument is truthy the rewrite function\\n * used is {@link rewriteChildNodeFn} otherwise {@link rewriteTextNodeFn}\\n * @param {*} ifaceWithChildNode\\n * @param {boolean} [textIface]\\n */\\nWombat.prototype.overrideChildNodeInterface = function(\\n ifaceWithChildNode,\\n textIface\\n) {\\n if (!ifaceWithChildNode || !ifaceWithChildNode.prototype) return;\\n var rewriteFn = textIface ? this.rewriteTextNodeFn : this.rewriteChildNodeFn;\\n if (ifaceWithChildNode.prototype.before) {\\n var originalBefore = ifaceWithChildNode.prototype.before;\\n ifaceWithChildNode.prototype.before = function before() {\\n return rewriteFn(this, originalBefore, arguments);\\n };\\n }\\n if (ifaceWithChildNode.prototype.after) {\\n var originalAfter = ifaceWithChildNode.prototype.after;\\n ifaceWithChildNode.prototype.after = function after() {\\n return rewriteFn(this, originalAfter, arguments);\\n };\\n }\\n if (ifaceWithChildNode.prototype.replaceWith) {\\n var originalReplaceWith = ifaceWithChildNode.prototype.replaceWith;\\n ifaceWithChildNode.prototype.replaceWith = function replaceWith() {\\n return rewriteFn(this, originalReplaceWith, arguments);\\n };\\n }\\n};\\n\\n/**\\n * Applies overrides to the `appendData`, `insertData`, and `replaceData` functions\\n * and `data` and `wholeText` properties on the Text interface in order to ensure\\n * CSS strings are rewritten when Text nodes are children of the style tag\\n */\\nWombat.prototype.initTextNodeOverrides = function() {\\n var Text = this.$wbwindow.Text;\\n if (!Text || !Text.prototype) return;\\n // https://dom.spec.whatwg.org/#characterdata and https://dom.spec.whatwg.org/#interface-text\\n // depending on the JS frameworks used some pages include JS that will append a single text node child\\n // to a style tag and then progressively modify that text nodes data for changing the css values that\\n // style tag contains\\n var textProto = Text.prototype;\\n // override inherited CharacterData functions\\n var rewriteTextProtoFunction = this.rewriteTextNodeFn;\\n if (textProto.appendData) {\\n var originalAppendData = textProto.appendData;\\n textProto.appendData = function appendData() {\\n return rewriteTextProtoFunction(this, originalAppendData, arguments);\\n };\\n }\\n if (textProto.insertData) {\\n var originalInsertData = textProto.insertData;\\n textProto.insertData = function insertData() {\\n return rewriteTextProtoFunction(this, originalInsertData, arguments);\\n };\\n }\\n if (textProto.replaceData) {\\n var originalReplaceData = textProto.replaceData;\\n textProto.replaceData = function replaceData() {\\n return rewriteTextProtoFunction(this, originalReplaceData, arguments);\\n };\\n }\\n this.overrideChildNodeInterface(Text, true);\\n // override property getters and setters\\n this.overrideTextProtoGetSet(textProto, 'data');\\n this.overrideTextProtoGetSet(textProto, 'wholeText');\\n};\\n\\n/**\\n * Applies attribute getter and setter function overrides to the HTML elements\\n * and CSS properties that are URLs are rewritten\\n */\\nWombat.prototype.initAttrOverrides = function() {\\n // href attr overrides\\n this.overrideHrefAttr(this.$wbwindow.HTMLLinkElement.prototype, 'cs_');\\n this.overrideHrefAttr(this.$wbwindow.CSSStyleSheet.prototype, 'cs_');\\n this.overrideHrefAttr(this.$wbwindow.HTMLBaseElement.prototype, 'mp_');\\n // srcset attr overrides\\n this.overrideSrcsetAttr(this.$wbwindow.HTMLImageElement.prototype, 'im_');\\n this.overrideSrcsetAttr(this.$wbwindow.HTMLSourceElement.prototype, 'oe_');\\n // poster attr overrides\\n this.overrideAttr(this.$wbwindow.HTMLVideoElement.prototype, 'poster', 'im_');\\n this.overrideAttr(this.$wbwindow.HTMLAudioElement.prototype, 'poster', 'im_');\\n // src attr overrides\\n this.overrideAttr(this.$wbwindow.HTMLImageElement.prototype, 'src', 'im_');\\n this.overrideAttr(this.$wbwindow.HTMLInputElement.prototype, 'src', 'oe_');\\n this.overrideAttr(this.$wbwindow.HTMLEmbedElement.prototype, 'src', 'oe_');\\n this.overrideAttr(this.$wbwindow.HTMLVideoElement.prototype, 'src', 'oe_');\\n this.overrideAttr(this.$wbwindow.HTMLAudioElement.prototype, 'src', 'oe_');\\n this.overrideAttr(this.$wbwindow.HTMLSourceElement.prototype, 'src', 'oe_');\\n if (window.HTMLTrackElement && window.HTMLTrackElement.prototype) {\\n this.overrideAttr(this.$wbwindow.HTMLTrackElement.prototype, 'src', 'oe_');\\n }\\n this.overrideAttr(this.$wbwindow.HTMLIFrameElement.prototype, 'src', 'if_');\\n if (\\n this.$wbwindow.HTMLFrameElement &&\\n this.$wbwindow.HTMLFrameElement.prototype\\n ) {\\n this.overrideAttr(this.$wbwindow.HTMLFrameElement.prototype, 'src', 'fr_');\\n }\\n this.overrideAttr(this.$wbwindow.HTMLScriptElement.prototype, 'src', 'js_');\\n // other attr overrides\\n this.overrideAttr(this.$wbwindow.HTMLObjectElement.prototype, 'data', 'oe_');\\n this.overrideAttr(\\n this.$wbwindow.HTMLObjectElement.prototype,\\n 'codebase',\\n 'oe_'\\n );\\n this.overrideAttr(this.$wbwindow.HTMLMetaElement.prototype, 'content', 'mp_');\\n this.overrideAttr(this.$wbwindow.HTMLFormElement.prototype, 'action', 'mp_');\\n this.overrideAttr(this.$wbwindow.HTMLQuoteElement.prototype, 'cite', 'mp_');\\n this.overrideAttr(this.$wbwindow.HTMLModElement.prototype, 'cite', 'mp_');\\n // a, area tag overrides\\n this.overrideAnchorAreaElem(this.$wbwindow.HTMLAnchorElement);\\n this.overrideAnchorAreaElem(this.$wbwindow.HTMLAreaElement);\\n\\n var style_proto = this.$wbwindow.CSSStyleDeclaration.prototype;\\n\\n // For FF\\n if (this.$wbwindow.CSS2Properties) {\\n style_proto = this.$wbwindow.CSS2Properties.prototype;\\n }\\n\\n this.overrideStyleAttr(style_proto, 'cssText');\\n this.overrideStyleAttr(style_proto, 'background', 'background');\\n this.overrideStyleAttr(style_proto, 'backgroundImage', 'background-image');\\n this.overrideStyleAttr(style_proto, 'cursor', 'cursor');\\n this.overrideStyleAttr(style_proto, 'listStyle', 'list-style');\\n this.overrideStyleAttr(style_proto, 'listStyleImage', 'list-style-image');\\n this.overrideStyleAttr(style_proto, 'border', 'border');\\n this.overrideStyleAttr(style_proto, 'borderImage', 'border-image');\\n this.overrideStyleAttr(\\n style_proto,\\n 'borderImageSource',\\n 'border-image-source'\\n );\\n this.overrideStyleAttr(style_proto, 'maskImage', 'mask-image');\\n\\n this.overrideStyleSetProp(style_proto);\\n\\n if (this.$wbwindow.CSSStyleSheet && this.$wbwindow.CSSStyleSheet.prototype) {\\n // https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet/insertRule\\n // ruleText is a string of raw css....\\n var wombat = this;\\n var oInsertRule = this.$wbwindow.CSSStyleSheet.prototype.insertRule;\\n this.$wbwindow.CSSStyleSheet.prototype.insertRule = function insertRule(\\n ruleText,\\n index\\n ) {\\n return oInsertRule.call(this, wombat.rewriteStyle(ruleText), index);\\n };\\n }\\n\\n if (this.$wbwindow.CSSRule && this.$wbwindow.CSSRule.prototype) {\\n this.overrideStyleAttr(this.$wbwindow.CSSRule.prototype, 'cssText');\\n }\\n};\\n\\n/**\\n * Applies overrides to CSSStyleValue.[parse,parseAll], CSSKeywordValue, and\\n * StylePropertyMap in order to ensure the URLs these interfaces operate on\\n * are rewritten. Gotta love Chrome.\\n * @see https://drafts.css-houdini.org/css-typed-om-1/\\n */\\nWombat.prototype.initCSSOMOverrides = function() {\\n var wombat = this;\\n if (this.$wbwindow.CSSStyleValue) {\\n var cssStyleValueOverride = function(CSSSV, which) {\\n var oFN = CSSSV[which];\\n CSSSV[which] = function parseOrParseAllOverride(property, cssText) {\\n if (cssText == null) return oFN.call(this, property, cssText);\\n var rwCSSText = wombat.noExceptRewriteStyle(cssText);\\n return oFN.call(this, property, rwCSSText);\\n };\\n };\\n\\n if (\\n this.$wbwindow.CSSStyleValue.parse &&\\n this.$wbwindow.CSSStyleValue.parse.toString().indexOf('[native code]') > 0\\n ) {\\n cssStyleValueOverride(this.$wbwindow.CSSStyleValue, 'parse');\\n }\\n\\n if (\\n this.$wbwindow.CSSStyleValue.parseAll &&\\n this.$wbwindow.CSSStyleValue.parseAll\\n .toString()\\n .indexOf('[native code]') > 0\\n ) {\\n cssStyleValueOverride(this.$wbwindow.CSSStyleValue, 'parseAll');\\n }\\n }\\n\\n if (\\n this.$wbwindow.CSSKeywordValue &&\\n this.$wbwindow.CSSKeywordValue.prototype\\n ) {\\n var oCSSKV = this.$wbwindow.CSSKeywordValue;\\n this.$wbwindow.CSSKeywordValue = (function(CSSKeywordValue_) {\\n return function CSSKeywordValue(cssValue) {\\n wombat.domConstructorErrorChecker(this, 'CSSKeywordValue', arguments);\\n return new CSSKeywordValue_(wombat.rewriteStyle(cssValue));\\n };\\n })(this.$wbwindow.CSSKeywordValue);\\n this.$wbwindow.CSSKeywordValue.prototype = oCSSKV.prototype;\\n Object.defineProperty(\\n this.$wbwindow.CSSKeywordValue.prototype,\\n 'constructor',\\n {\\n value: this.$wbwindow.CSSKeywordValue\\n }\\n );\\n Object(_wombatUtils__WEBPACK_IMPORTED_MODULE_5__[\\\"addToStringTagToClass\\\"])(this.$wbwindow.CSSKeywordValue, 'CSSKeywordValue');\\n }\\n\\n if (\\n this.$wbwindow.StylePropertyMap &&\\n this.$wbwindow.StylePropertyMap.prototype\\n ) {\\n var originalSet = this.$wbwindow.StylePropertyMap.prototype.set;\\n this.$wbwindow.StylePropertyMap.prototype.set = function set() {\\n if (arguments.length <= 1) {\\n if (originalSet.__WB_orig_apply) {\\n return originalSet.__WB_orig_apply(this, arguments);\\n }\\n return originalSet.apply(this, arguments);\\n }\\n var newArgs = new Array(arguments.length);\\n newArgs[0] = arguments[0];\\n for (var i = 1; i < arguments.length; i++) {\\n newArgs[i] = wombat.noExceptRewriteStyle(arguments[i]);\\n }\\n if (originalSet.__WB_orig_apply) {\\n return originalSet.__WB_orig_apply(this, newArgs);\\n }\\n return originalSet.apply(this, newArgs);\\n };\\n\\n var originalAppend = this.$wbwindow.StylePropertyMap.prototype.append;\\n this.$wbwindow.StylePropertyMap.prototype.append = function append() {\\n if (arguments.length <= 1) {\\n if (originalSet.__WB_orig_apply) {\\n return originalAppend.__WB_orig_apply(this, arguments);\\n }\\n return originalAppend.apply(this, arguments);\\n }\\n var newArgs = new Array(arguments.length);\\n newArgs[0] = arguments[0];\\n for (var i = 1; i < arguments.length; i++) {\\n newArgs[i] = wombat.noExceptRewriteStyle(arguments[i]);\\n }\\n if (originalAppend.__WB_orig_apply) {\\n return originalAppend.__WB_orig_apply(this, newArgs);\\n }\\n return originalAppend.apply(this, newArgs);\\n };\\n }\\n};\\n\\n/**\\n * Applies an overrides to the Audio constructor in order to ensure its URL\\n * argument is rewritten\\n */\\nWombat.prototype.initAudioOverride = function() {\\n if (!this.$wbwindow.Audio) return;\\n var orig_audio = this.$wbwindow.Audio;\\n var wombat = this;\\n this.$wbwindow.Audio = (function(Audio_) {\\n return function Audio(url) {\\n wombat.domConstructorErrorChecker(this, 'Audio');\\n return new Audio_(wombat.rewriteUrl(url, true, 'oe_'));\\n };\\n })(this.$wbwindow.Audio);\\n\\n this.$wbwindow.Audio.prototype = orig_audio.prototype;\\n Object.defineProperty(this.$wbwindow.Audio.prototype, 'constructor', {\\n value: this.$wbwindow.Audio\\n });\\n Object(_wombatUtils__WEBPACK_IMPORTED_MODULE_5__[\\\"addToStringTagToClass\\\"])(this.$wbwindow.Audio, 'HTMLAudioElement');\\n};\\n\\n/**\\n * Initializes the BAD_PREFIXES array using the supplied prefix\\n * @param {string} prefix\\n */\\nWombat.prototype.initBadPrefixes = function(prefix) {\\n this.BAD_PREFIXES = [\\n 'http:' + prefix,\\n 'https:' + prefix,\\n 'http:/' + prefix,\\n 'https:/' + prefix\\n ];\\n};\\n\\n/**\\n * Applies an override to crypto.getRandomValues in order to make\\n * the values it returns are deterministic during replay\\n */\\nWombat.prototype.initCryptoRandom = function() {\\n if (!this.$wbwindow.crypto || !this.$wbwindow.Crypto) return;\\n var wombat = this;\\n var new_getrandom = function getRandomValues(array) {\\n for (var i = 0; i < array.length; i++) {\\n array[i] = parseInt(wombat.$wbwindow.Math.random() * 4294967296);\\n }\\n return array;\\n };\\n this.$wbwindow.Crypto.prototype.getRandomValues = new_getrandom;\\n this.$wbwindow.crypto.getRandomValues = new_getrandom;\\n};\\n\\n/**\\n * Applies an override to the Date object in order to ensure that\\n * all Dates used during replay are in the datetime of replay\\n * @param {string} timestamp\\n */\\nWombat.prototype.initDateOverride = function(timestamp) {\\n if (this.$wbwindow.__wb_Date_now) return;\\n var newTimestamp = parseInt(timestamp) * 1000;\\n // var timezone = new Date().getTimezoneOffset() * 60 * 1000;\\n // Already UTC!\\n var timezone = 0;\\n var start_now = this.$wbwindow.Date.now();\\n var timediff = start_now - (newTimestamp - timezone);\\n\\n var orig_date = this.$wbwindow.Date;\\n\\n var orig_utc = this.$wbwindow.Date.UTC;\\n var orig_parse = this.$wbwindow.Date.parse;\\n var orig_now = this.$wbwindow.Date.now;\\n\\n this.$wbwindow.__wb_Date_now = orig_now;\\n\\n this.$wbwindow.Date = (function(Date_) {\\n return function Date(A, B, C, D, E, F, G) {\\n // [native code]\\n // Apply doesn't work for constructors and Date doesn't\\n // seem to like undefined args, so must explicitly\\n // call constructor for each possible args 0..7\\n if (A === undefined) {\\n return new Date_(orig_now() - timediff);\\n } else if (B === undefined) {\\n return new Date_(A);\\n } else if (C === undefined) {\\n return new Date_(A, B);\\n } else if (D === undefined) {\\n return new Date_(A, B, C);\\n } else if (E === undefined) {\\n return new Date_(A, B, C, D);\\n } else if (F === undefined) {\\n return new Date_(A, B, C, D, E);\\n } else if (G === undefined) {\\n return new Date_(A, B, C, D, E, F);\\n } else {\\n return new Date_(A, B, C, D, E, F, G);\\n }\\n };\\n })(this.$wbwindow.Date);\\n\\n this.$wbwindow.Date.prototype = orig_date.prototype;\\n\\n this.$wbwindow.Date.now = function now() {\\n return orig_now() - timediff;\\n };\\n\\n this.$wbwindow.Date.UTC = orig_utc;\\n this.$wbwindow.Date.parse = orig_parse;\\n\\n this.$wbwindow.Date.__WB_timediff = timediff;\\n\\n this.$wbwindow.Date.prototype.getTimezoneOffset = function() {\\n return 0;\\n }\\n\\n var orig_toString = this.$wbwindow.Date.prototype.toString;\\n this.$wbwindow.Date.prototype.toString = function() {\\n var string = orig_toString.call(this).split(\\\" GMT\\\")[0];\\n return string + \\\" GMT+0000 (Coordinated Universal Time)\\\";\\n }\\n\\n var orig_toTimeString = this.$wbwindow.Date.prototype.toTimeString;\\n this.$wbwindow.Date.prototype.toTimeString = function() {\\n var string = orig_toTimeString.call(this).split(\\\" GMT\\\")[0];\\n return string + \\\" GMT+0000 (Coordinated Universal Time)\\\";\\n }\\n\\n Object.defineProperty(this.$wbwindow.Date.prototype, 'constructor', {\\n value: this.$wbwindow.Date\\n });\\n};\\n\\n\\nWombat.prototype.initBlobOverride = function() {\\n // don't use for SW replay as blob: iframes won't have access to SW\\n if (!this.$wbwindow.Blob || this.wb_info.isSW) {\\n return;\\n }\\n\\n var orig_blob = this.$wbwindow.Blob;\\n\\n var wombat = this;\\n\\n this.$wbwindow.Blob = (function(Blob_) {\\n return function Blob(array, options) {\\n\\n if (options && options.type === \\\"application/xhtml+xml\\\" || options.type === \\\"text/html\\\") {\\n // for now, just handle single string case\\n if (array.length === 1 && typeof(array[0]) === \\\"string\\\" && wombat.startsWith(array[0], \\\"<!DOCTYPE html>\\\")) {\\n array[0] = wombat.rewriteHtml(array[0]);\\n options.type = \\\"text/html\\\";\\n }\\n }\\n\\n return new Blob_(array, options);\\n }\\n })(this.$wbwindow.Blob);\\n\\n this.$wbwindow.Blob.prototype = orig_blob.prototype;\\n}\\n \\n/**\\n * Applies an override to the document.title property in order to ensure\\n * that actual top (archive top frame containing the replay iframe) receives\\n * document.title updates\\n */\\nWombat.prototype.initDocTitleOverride = function() {\\n var orig_get_title = this.getOrigGetter(this.$wbwindow.document, 'title');\\n var orig_set_title = this.getOrigSetter(this.$wbwindow.document, 'title');\\n var wombat = this;\\n var set_title = function title(value) {\\n var res = orig_set_title.call(this, value);\\n var message = { wb_type: 'title', title: value };\\n wombat.sendTopMessage(message);\\n return res;\\n };\\n this.defProp(this.$wbwindow.document, 'title', set_title, orig_get_title);\\n};\\n\\n/**\\n * Applies an override to the FontFace constructor in order to ensure font URLs\\n * are rewritten\\n * @see https://drafts.csswg.org/css-font-loading/#FontFace-interface\\n */\\nWombat.prototype.initFontFaceOverride = function() {\\n if (!this.$wbwindow.FontFace || this.$wbwindow.FontFace.__wboverriden__) {\\n return;\\n }\\n var wombat = this;\\n var origFontFace = this.$wbwindow.FontFace;\\n this.$wbwindow.FontFace = (function(FontFace_) {\\n return function FontFace(family, source, descriptors) {\\n wombat.domConstructorErrorChecker(this, 'FontFace', arguments, 2);\\n var rwSource = source;\\n if (source != null) {\\n if (typeof source !== 'string') {\\n // is CSSOMString or ArrayBuffer or ArrayBufferView\\n rwSource = wombat.rewriteInlineStyle(source.toString());\\n } else {\\n rwSource = wombat.rewriteInlineStyle(source);\\n }\\n }\\n return new FontFace_(family, rwSource, descriptors);\\n };\\n })(this.$wbwindow.FontFace);\\n this.$wbwindow.FontFace.prototype = origFontFace.prototype;\\n Object.defineProperty(this.$wbwindow.FontFace.prototype, 'constructor', {\\n value: this.$wbwindow.FontFace\\n });\\n this.$wbwindow.FontFace.__wboverriden__ = true;\\n Object(_wombatUtils__WEBPACK_IMPORTED_MODULE_5__[\\\"addToStringTagToClass\\\"])(this.$wbwindow.FontFace, 'FontFace');\\n};\\n\\n/**\\n * Forces, when possible, the devicePixelRatio property of window to 1\\n * in order to ensure deterministic replay\\n */\\nWombat.prototype.initFixedRatio = function() {\\n try {\\n // otherwise, just set it\\n this.$wbwindow.devicePixelRatio = 1;\\n } catch (e) {}\\n\\n // prevent changing, if possible\\n if (Object.defineProperty) {\\n try {\\n // fixed pix ratio\\n Object.defineProperty(this.$wbwindow, 'devicePixelRatio', {\\n value: 1,\\n writable: false\\n });\\n } catch (e) {}\\n }\\n};\\n\\n/**\\n * Initializes wombats path information from the supplied wbinfo object\\n * @param {Object} wbinfo\\n */\\nWombat.prototype.initPaths = function(wbinfo) {\\n wbinfo.wombat_opts = wbinfo.wombat_opts || {};\\n this.wb_info = wbinfo;\\n this.wb_opts = wbinfo.wombat_opts;\\n this.wb_replay_prefix = wbinfo.prefix;\\n this.wb_is_proxy = wbinfo.proxy_magic || !this.wb_replay_prefix;\\n this.wb_info.top_host = this.wb_info.top_host || '*';\\n this.wb_curr_host =\\n this.$wbwindow.location.protocol + '//' + this.$wbwindow.location.host;\\n this.wb_orig_scheme = wbinfo.wombat_scheme + '://';\\n this.wb_orig_origin = this.wb_orig_scheme + wbinfo.wombat_host;\\n this.wb_abs_prefix = this.wb_replay_prefix;\\n if (!wbinfo.is_live && wbinfo.wombat_ts) {\\n this.wb_capture_date_part = '/' + wbinfo.wombat_ts + '/';\\n } else {\\n this.wb_capture_date_part = '';\\n }\\n this.initBadPrefixes(this.wb_replay_prefix);\\n};\\n\\n/**\\n * Applies an override to Math.seed and Math.random using the supplied\\n * seed in order to ensure that random numbers are deterministic during\\n * replay\\n * @param {string} seed\\n */\\nWombat.prototype.initSeededRandom = function(seed) {\\n // Adapted from:\\n // http://indiegamr.com/generate-repeatable-random-numbers-in-js/\\n this.$wbwindow.Math.seed = parseInt(seed);\\n var wombat = this;\\n this.$wbwindow.Math.random = function random() {\\n wombat.$wbwindow.Math.seed =\\n (wombat.$wbwindow.Math.seed * 9301 + 49297) % 233280;\\n return wombat.$wbwindow.Math.seed / 233280;\\n };\\n};\\n\\n/**\\n * Applies overrides to history.pushState and history.replaceState in order\\n * to ensure that URLs used for browser history manipulation are rewritten.\\n * Also adds a `popstate` listener to window of the browser context wombat is in\\n * in order to ensure that actual top (archive top frame containing the replay iframe)\\n * browser history is updated IFF the history manipulation happens in the replay top\\n */\\nWombat.prototype.initHistoryOverrides = function() {\\n this.overrideHistoryFunc('pushState');\\n this.overrideHistoryFunc('replaceState');\\n var wombat = this;\\n this.$wbwindow.addEventListener('popstate', function(event) {\\n wombat.sendHistoryUpdate(\\n wombat.$wbwindow.WB_wombat_location.href,\\n wombat.$wbwindow.document.title\\n );\\n });\\n};\\n\\n/**\\n * Applies overrides to the XMLHttpRequest.open and XMLHttpRequest.responseURL\\n * in order to ensure URLs are rewritten.\\n *\\n * Applies an override to window.fetch in order to rewrite URLs and URLs of\\n * the supplied Request objects used as arguments to fetch.\\n *\\n * Applies overrides to window.Request, window.Response, window.EventSource,\\n * and window.WebSocket in order to ensure URLs they operate on are rewritten.\\n *\\n * @see https://xhr.spec.whatwg.org/\\n * @see https://fetch.spec.whatwg.org/\\n * @see https://html.spec.whatwg.org/multipage/web-sockets.html#websocket\\n * @see https://html.spec.whatwg.org/multipage/server-sent-events.html#the-eventsource-interface\\n */\\nWombat.prototype.initHTTPOverrides = function() {\\n var wombat = this;\\n\\n if (!this.wb_info.isSW) {\\n if (this.$wbwindow.XMLHttpRequest.prototype.open) {\\n var origXMLHttpOpen = this.$wbwindow.XMLHttpRequest.prototype.open;\\n this.utilFns.XHRopen = origXMLHttpOpen;\\n this.$wbwindow.XMLHttpRequest.prototype.open = function open(\\n method,\\n url,\\n async,\\n user,\\n password\\n ) {\\n var rwURL = !this._no_rewrite ? wombat.rewriteUrl(url) : url;\\n var openAsync = true;\\n if (async != null && !async) openAsync = false;\\n origXMLHttpOpen.call(this, method, rwURL, openAsync, user, password);\\n if (!wombat.startsWith(rwURL, 'data:')) {\\n this.setRequestHeader('X-Pywb-Requested-With', 'XMLHttpRequest');\\n }\\n };\\n }\\n }\\n\\n // responseURL override\\n this.overridePropExtract(\\n this.$wbwindow.XMLHttpRequest.prototype,\\n 'responseURL'\\n );\\n\\n\\n if (this.wb_info.isSW) {\\n var origOpen = this.$wbwindow.XMLHttpRequest.prototype.open;\\n var origSetRequestHeader = this.$wbwindow.XMLHttpRequest.prototype.setRequestHeader;\\n var origSend = this.$wbwindow.XMLHttpRequest.prototype.send;\\n\\n this.$wbwindow.XMLHttpRequest.prototype.open = function() {\\n this.__WB_xhr_open_arguments = arguments;\\n this.__WB_xhr_headers = new Headers();\\n }\\n\\n this.$wbwindow.XMLHttpRequest.prototype.setRequestHeader = function(name, value) {\\n this.__WB_xhr_headers.set(name, value);\\n }\\n\\n var wombat = this;\\n\\n this.$wbwindow.XMLHttpRequest.prototype.send = function(value) {\\n if (this.__WB_xhr_open_arguments[0] === \\\"POST\\\") {\\n if ((typeof(value) === \\\"string\\\" && this.__WB_xhr_headers.get(\\\"Content-Type\\\") === \\\"application/x-www-form-urlencoded\\\")\\n || value instanceof URLSearchParams) {\\n this.__WB_xhr_open_arguments[0] = \\\"GET\\\";\\n this.__WB_xhr_open_arguments[1] += (this.__WB_xhr_open_arguments[1].indexOf(\\\"?\\\") > 0 ? \\\"&\\\" : \\\"?\\\") + value.toString();\\n value = null;\\n }\\n }\\n\\n if (this.__WB_xhr_open_arguments.length > 2) {\\n this.__WB_xhr_open_arguments[2] = true;\\n }\\n\\n if (!this._no_rewrite) {\\n this.__WB_xhr_open_arguments[1] = wombat.rewriteUrl(this.__WB_xhr_open_arguments[1]);\\n }\\n\\n origOpen.apply(this, this.__WB_xhr_open_arguments);\\n\\n if (!wombat.startsWith(this.__WB_xhr_open_arguments[1], 'data:')) {\\n for (const [name, value] of this.__WB_xhr_headers.entries()) {\\n origSetRequestHeader.call(this, name, value);\\n }\\n\\n origSetRequestHeader.call(this, 'X-Pywb-Requested-With', 'XMLHttpRequest');\\n }\\n\\n origSend.call(this, value);\\n }\\n }\\n\\n if (this.$wbwindow.fetch) {\\n var orig_fetch = this.$wbwindow.fetch;\\n this.$wbwindow.fetch = function fetch(input, init_opts) {\\n var rwInput = input;\\n var inputType = typeof input;\\n if (inputType === 'string') {\\n rwInput = wombat.rewriteUrl(input);\\n } else if (inputType === 'object' && input.url) {\\n var new_url = wombat.rewriteUrl(input.url);\\n if (new_url !== input.url) {\\n rwInput = new Request(new_url, input);\\n }\\n } else if (inputType === 'object' && input.href) {\\n // it is likely that input is either window.location or window.URL\\n rwInput = wombat.rewriteUrl(input.href);\\n }\\n\\n init_opts = init_opts || {};\\n init_opts['credentials'] = 'include';\\n\\n return orig_fetch.call(wombat.proxyToObj(this), rwInput, init_opts);\\n };\\n }\\n\\n if (this.$wbwindow.Request && this.$wbwindow.Request.prototype) {\\n var orig_request = this.$wbwindow.Request;\\n this.$wbwindow.Request = (function(Request_) {\\n return function Request(input, init_opts) {\\n wombat.domConstructorErrorChecker(this, 'Request', arguments);\\n var newInitOpts = init_opts || {};\\n var newInput = input;\\n var inputType = typeof input;\\n switch (inputType) {\\n case 'string':\\n newInput = wombat.rewriteUrl(input);\\n break;\\n case 'object':\\n newInput = input;\\n if (input.url) {\\n var new_url = wombat.rewriteUrl(input.url);\\n if (new_url !== input.url) {\\n // not much we can do here Request.url is read only\\n // https://developer.mozilla.org/en-US/docs/Web/API/Request/url\\n newInput = new Request_(new_url, input);\\n }\\n } else if (input.href) {\\n // it is likely that input is either window.location or window.URL\\n newInput = wombat.rewriteUrl(input.toString(), true);\\n }\\n break;\\n }\\n newInitOpts['credentials'] = 'include';\\n return new Request_(newInput, newInitOpts);\\n };\\n })(this.$wbwindow.Request);\\n\\n this.$wbwindow.Request.prototype = orig_request.prototype;\\n Object.defineProperty(this.$wbwindow.Request.prototype, 'constructor', {\\n value: this.$wbwindow.Request\\n });\\n }\\n\\n if (this.$wbwindow.Response && this.$wbwindow.Response.prototype) {\\n // https://developer.mozilla.org/en-US/docs/Web/API/Response/redirect\\n var originalRedirect = this.$wbwindow.Response.prototype.redirect;\\n this.$wbwindow.Response.prototype.redirect = function redirect(\\n url,\\n status\\n ) {\\n var rwURL = wombat.rewriteUrl(url, true, null, wombat.$wbwindow.document);\\n return originalRedirect.call(this, rwURL, status);\\n };\\n }\\n\\n if (this.$wbwindow.EventSource && this.$wbwindow.EventSource.prototype) {\\n var origEventSource = this.$wbwindow.EventSource;\\n this.$wbwindow.EventSource = (function(EventSource_) {\\n return function EventSource(url, configuration) {\\n wombat.domConstructorErrorChecker(this, 'EventSource', arguments);\\n var rwURL = url;\\n if (url != null) {\\n rwURL = wombat.rewriteUrl(url);\\n }\\n return new EventSource_(rwURL, configuration);\\n };\\n })(this.$wbwindow.EventSource);\\n this.$wbwindow.EventSource.prototype = origEventSource.prototype;\\n Object.defineProperty(this.$wbwindow.EventSource.prototype, 'constructor', {\\n value: this.$wbwindow.EventSource\\n });\\n Object(_wombatUtils__WEBPACK_IMPORTED_MODULE_5__[\\\"addToStringTagToClass\\\"])(this.$wbwindow.EventSource, 'EventSource');\\n }\\n\\n if (this.$wbwindow.WebSocket && this.$wbwindow.WebSocket.prototype) {\\n var origWebSocket = this.$wbwindow.WebSocket;\\n this.$wbwindow.WebSocket = (function(WebSocket_) {\\n return function WebSocket(url, configuration) {\\n wombat.domConstructorErrorChecker(this, 'WebSocket', arguments);\\n var rwURL = url;\\n if (url != null) {\\n rwURL = wombat.rewriteWSURL(url);\\n }\\n return new WebSocket_(rwURL, configuration);\\n };\\n })(this.$wbwindow.WebSocket);\\n this.$wbwindow.WebSocket.prototype = origWebSocket.prototype;\\n Object.defineProperty(this.$wbwindow.WebSocket.prototype, 'constructor', {\\n value: this.$wbwindow.WebSocket\\n });\\n Object(_wombatUtils__WEBPACK_IMPORTED_MODULE_5__[\\\"addToStringTagToClass\\\"])(this.$wbwindow.WebSocket, 'WebSocket');\\n }\\n};\\n\\n/**\\n * Applies an override to Element.[getAttribute, setAttribute] in order to\\n * ensure that operations on properties that contain URLs are rewritten\\n * @see https://www.w3.org/TR/dom/#interface-element\\n */\\nWombat.prototype.initElementGetSetAttributeOverride = function() {\\n if (\\n this.wb_opts.skip_setAttribute ||\\n (!this.$wbwindow.Element || !this.$wbwindow.Element.prototype)\\n ) {\\n return;\\n }\\n\\n var wombat = this;\\n var ElementProto = this.$wbwindow.Element.prototype;\\n\\n if (ElementProto.setAttribute) {\\n var orig_setAttribute = ElementProto.setAttribute;\\n ElementProto._orig_setAttribute = orig_setAttribute;\\n ElementProto.setAttribute = function setAttribute(name, value) {\\n var rwValue = value;\\n if (name && typeof rwValue === 'string') {\\n var lowername = name.toLowerCase();\\n if (\\n this.tagName === 'LINK' &&\\n lowername === 'href' &&\\n rwValue.indexOf('data:text/css') === 0\\n ) {\\n rwValue = wombat.rewriteInlineStyle(value);\\n } else if (lowername === 'style') {\\n rwValue = wombat.rewriteStyle(value);\\n } else if (lowername === 'srcset') {\\n rwValue = wombat.rewriteSrcset(value, this);\\n } else {\\n var shouldRW = wombat.shouldRewriteAttr(this.tagName, lowername);\\n if (shouldRW) {\\n wombat.removeWBOSRC(this);\\n if (!this._no_rewrite) {\\n rwValue = wombat.rewriteUrl(\\n value,\\n false,\\n wombat.rwModForElement(this, lowername)\\n );\\n }\\n }\\n }\\n }\\n return orig_setAttribute.call(this, name, rwValue);\\n };\\n }\\n\\n if (ElementProto.getAttribute) {\\n var orig_getAttribute = ElementProto.getAttribute;\\n this.wb_getAttribute = orig_getAttribute;\\n ElementProto.getAttribute = function getAttribute(name) {\\n var result = orig_getAttribute.call(this, name);\\n var lowerName = name;\\n if (name) {\\n lowerName = name.toLowerCase();\\n }\\n if (wombat.shouldRewriteAttr(this.tagName, lowerName)) {\\n var maybeWBOSRC = wombat.retrieveWBOSRC(this);\\n if (maybeWBOSRC) return maybeWBOSRC;\\n return wombat.extractOriginalURL(result);\\n } else if (\\n wombat.startsWith(lowerName, 'data-') &&\\n wombat.startsWithOneOf(result, wombat.VALID_PREFIXES)\\n ) {\\n return wombat.extractOriginalURL(result);\\n }\\n\\n return result;\\n };\\n }\\n};\\n\\n/**\\n * Applies an override to the getAttribute[NS] and setAttribute[NS] functions\\n * of the SVGImageElement interface in order to ensure that the URLs of the\\n * href and xlink:href properties are rewritten\\n */\\nWombat.prototype.initSvgImageOverrides = function() {\\n if (!this.$wbwindow.SVGImageElement) {\\n return;\\n }\\n var svgImgProto = this.$wbwindow.SVGImageElement.prototype;\\n\\n var orig_getAttr = svgImgProto.getAttribute;\\n var orig_getAttrNS = svgImgProto.getAttributeNS;\\n var orig_setAttr = svgImgProto.setAttribute;\\n var orig_setAttrNS = svgImgProto.setAttributeNS;\\n var wombat = this;\\n\\n svgImgProto.getAttribute = function getAttribute(name) {\\n var value = orig_getAttr.call(this, name);\\n if (name.indexOf('xlink:href') >= 0 || name === 'href') {\\n return wombat.extractOriginalURL(value);\\n }\\n return value;\\n };\\n\\n svgImgProto.getAttributeNS = function getAttributeNS(ns, name) {\\n var value = orig_getAttrNS.call(this, ns, name);\\n if (name.indexOf('xlink:href') >= 0 || name === 'href') {\\n return wombat.extractOriginalURL(value);\\n }\\n return value;\\n };\\n\\n svgImgProto.setAttribute = function setAttribute(name, value) {\\n var rwValue = value;\\n if (name.indexOf('xlink:href') >= 0 || name === 'href') {\\n rwValue = wombat.rewriteUrl(value);\\n }\\n return orig_setAttr.call(this, name, rwValue);\\n };\\n\\n svgImgProto.setAttributeNS = function setAttributeNS(ns, name, value) {\\n var rwValue = value;\\n if (name.indexOf('xlink:href') >= 0 || name === 'href') {\\n rwValue = wombat.rewriteUrl(value);\\n }\\n return orig_setAttrNS.call(this, ns, name, rwValue);\\n };\\n};\\n\\n/**\\n * Applies an override to document.createElementNS in order to ensure that the\\n * nameSpaceURI argument is un-rewritten\\n */\\nWombat.prototype.initCreateElementNSFix = function() {\\n if (\\n !this.$wbwindow.document.createElementNS ||\\n !this.$wbwindow.Document.prototype.createElementNS\\n ) {\\n return;\\n }\\n var orig_createElementNS = this.$wbwindow.document.createElementNS;\\n var wombat = this;\\n\\n var createElementNS = function createElementNS(namespaceURI, qualifiedName) {\\n return orig_createElementNS.call(\\n wombat.proxyToObj(this),\\n wombat.extractOriginalURL(namespaceURI),\\n qualifiedName\\n );\\n };\\n\\n this.$wbwindow.Document.prototype.createElementNS = createElementNS;\\n this.$wbwindow.document.createElementNS = createElementNS;\\n};\\n\\n/**\\n * Applies an override to Element.insertAdjacentHTML in order to ensure\\n * that the strings of HTML to be inserted are rewritten and to\\n * Element.insertAdjacentElement in order to ensure that the Elements to\\n * be inserted are rewritten\\n */\\nWombat.prototype.initInsertAdjacentElementHTMLOverrides = function() {\\n var Element = this.$wbwindow.Element;\\n if (!Element || !Element.prototype) return;\\n var elementProto = Element.prototype;\\n var rewriteFn = this.rewriteInsertAdjHTMLOrElemArgs;\\n if (elementProto.insertAdjacentHTML) {\\n var origInsertAdjacentHTML = elementProto.insertAdjacentHTML;\\n elementProto.insertAdjacentHTML = function insertAdjacentHTML(\\n position,\\n text\\n ) {\\n return rewriteFn(this, origInsertAdjacentHTML, position, text, true);\\n };\\n }\\n if (elementProto.insertAdjacentElement) {\\n var origIAdjElem = elementProto.insertAdjacentElement;\\n elementProto.insertAdjacentElement = function insertAdjacentElement(\\n position,\\n element\\n ) {\\n return rewriteFn(this, origIAdjElem, position, element, false);\\n };\\n }\\n};\\n\\n/**\\n * Applies overrides to Node.[appendChild, insertBefore, replaceChild] and\\n * [Element, DocumentFragment].[append, prepend) in order to ensure the that\\n * the elements added by these functions are rewritten.\\n * Also applies an override to the Node.ownerDocument, HTMLHtmlElement.parentNode,\\n * and Event.target getter functions do not return a JS Proxy object used by wombat\\n * @see https://www.w3.org/TR/dom/#node\\n */\\nWombat.prototype.initDomOverride = function() {\\n var Node = this.$wbwindow.Node;\\n if (Node && Node.prototype) {\\n var rewriteFn = this.rewriteNodeFuncArgs;\\n if (Node.prototype.appendChild) {\\n var originalAppendChild = Node.prototype.appendChild;\\n Node.prototype.appendChild = function appendChild(newNode, oldNode) {\\n return rewriteFn(this, originalAppendChild, newNode, oldNode);\\n };\\n }\\n if (Node.prototype.insertBefore) {\\n var originalInsertBefore = Node.prototype.insertBefore;\\n Node.prototype.insertBefore = function insertBefore(newNode, oldNode) {\\n return rewriteFn(this, originalInsertBefore, newNode, oldNode);\\n };\\n }\\n if (Node.prototype.replaceChild) {\\n var originalReplaceChild = Node.prototype.replaceChild;\\n Node.prototype.replaceChild = function replaceChild(newNode, oldNode) {\\n return rewriteFn(this, originalReplaceChild, newNode, oldNode);\\n };\\n }\\n this.overridePropToProxy(Node.prototype, 'ownerDocument');\\n this.overridePropToProxy(\\n this.$wbwindow.HTMLHtmlElement.prototype,\\n 'parentNode'\\n );\\n this.overridePropToProxy(this.$wbwindow.Event.prototype, 'target');\\n }\\n\\n if (this.$wbwindow.Element && this.$wbwindow.Element.prototype) {\\n this.overrideParentNodeAppendPrepend(this.$wbwindow.Element);\\n this.overrideChildNodeInterface(this.$wbwindow.Element, false);\\n }\\n\\n if (\\n this.$wbwindow.DocumentFragment &&\\n this.$wbwindow.DocumentFragment.prototype\\n ) {\\n this.overrideParentNodeAppendPrepend(this.$wbwindow.DocumentFragment);\\n }\\n};\\n\\n/**\\n * Applies overrides to document.referrer, document.origin, document.domain, and\\n * window.origin in order to ensure their getters and setters behave as expected\\n * on the live web\\n * @param {Document} $document\\n */\\nWombat.prototype.initDocOverrides = function($document) {\\n if (!Object.defineProperty) return;\\n\\n // referrer\\n //this.overridePropExtract($document, 'referrer');\\n this.overrideReferrer($document);\\n\\n // origin\\n this.defGetterProp($document, 'origin', function origin() {\\n return this.WB_wombat_location.origin;\\n });\\n // https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/origin, chrome 59+ and ff 54+\\n this.defGetterProp(this.$wbwindow, 'origin', function origin() {\\n return this.WB_wombat_location.origin;\\n });\\n\\n var wombat = this;\\n // domain\\n var domain_setter = function domain(val) {\\n var loc = this.WB_wombat_location;\\n if (loc && wombat.endsWith(loc.hostname, val)) {\\n this.__wb_domain = val;\\n }\\n };\\n\\n var domain_getter = function domain() {\\n return this.__wb_domain || this.WB_wombat_location.hostname;\\n };\\n\\n this.defProp($document, 'domain', domain_setter, domain_getter);\\n};\\n\\n/**\\n * Apples overrides to document.[write, writeln, open, close] in order\\n * to ensure that the values they operate on or create are rewritten and\\n * wombat is initialized in the new documents/windows.\\n * @see https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html\\n * @see https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#dom-document-open-window\\n * @see https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#dom-document-close\\n * @see https://html.spec.whatwg.org/multipage/dom.html#dom-document-body\\n */\\nWombat.prototype.initDocWriteOpenCloseOverride = function() {\\n if (!this.$wbwindow.DOMParser) {\\n return;\\n }\\n\\n // for both document.write and document.writeln, all arguments are treated as a string and concatenated together\\n // https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html\\n\\n var DocumentProto = this.$wbwindow.Document.prototype;\\n var $wbDocument = this.$wbwindow.document;\\n var docWriteWritelnRWFn = this.rewriteDocWriteWriteln;\\n\\n // Write\\n var orig_doc_write = $wbDocument.write;\\n var new_write = function write() {\\n return docWriteWritelnRWFn(this, orig_doc_write, arguments);\\n };\\n $wbDocument.write = new_write;\\n DocumentProto.write = new_write;\\n\\n // Writeln\\n var orig_doc_writeln = $wbDocument.writeln;\\n var new_writeln = function writeln() {\\n return docWriteWritelnRWFn(this, orig_doc_writeln, arguments);\\n };\\n $wbDocument.writeln = new_writeln;\\n DocumentProto.writeln = new_writeln;\\n\\n var wombat = this;\\n\\n // Open\\n var orig_doc_open = $wbDocument.open;\\n var new_open = function open() {\\n var thisObj = wombat.proxyToObj(this);\\n var res;\\n if (arguments.length === 3) {\\n // we have the case where a new window will be opened\\n // https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#dom-document-open-window\\n var rwUrl = wombat.rewriteUrl(arguments[0], false, 'mp_');\\n res = orig_doc_open.call(thisObj, rwUrl, arguments[1], arguments[2]);\\n wombat.initNewWindowWombat(res, rwUrl);\\n } else {\\n res = orig_doc_open.call(thisObj);\\n wombat.initNewWindowWombat(thisObj.defaultView);\\n }\\n return res;\\n };\\n\\n $wbDocument.open = new_open;\\n DocumentProto.open = new_open;\\n\\n // we override close in order to ensure wombat is init'd\\n // https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#dom-document-close\\n var originalClose = $wbDocument.close;\\n var newClose = function close() {\\n var thisObj = wombat.proxyToObj(this);\\n wombat.initNewWindowWombat(thisObj.defaultView);\\n if (originalClose.__WB_orig_apply) {\\n return originalClose.__WB_orig_apply(thisObj, arguments);\\n }\\n return originalClose.apply(thisObj, arguments);\\n };\\n\\n $wbDocument.close = newClose;\\n DocumentProto.close = newClose;\\n\\n // we override the setter for document.body because it is settable\\n // to either an instance of HTMLBodyElement or HTMLFrameSetElement and\\n // there are ways to get un-rewritten elements into replay we must allow\\n // https://html.spec.whatwg.org/multipage/dom.html#dom-document-body\\n var oBodyGetter = this.getOrigGetter(DocumentProto, 'body');\\n var oBodySetter = this.getOrigSetter(DocumentProto, 'body');\\n if (oBodyGetter && oBodySetter) {\\n this.defProp(\\n DocumentProto,\\n 'body',\\n function body(newBody) {\\n if (\\n newBody &&\\n (newBody instanceof HTMLBodyElement ||\\n newBody instanceof HTMLFrameSetElement)\\n ) {\\n wombat.rewriteElemComplete(newBody);\\n }\\n return oBodySetter.call(wombat.proxyToObj(this), newBody);\\n },\\n oBodyGetter\\n );\\n }\\n};\\n\\n/**\\n * Inits wombat in the supplied iframe\\n * @param {HTMLIFrameElement} iframe\\n */\\nWombat.prototype.initIframeWombat = function(iframe) {\\n var win;\\n\\n if (iframe._get_contentWindow) {\\n win = iframe._get_contentWindow.call(iframe); // eslint-disable-line no-useless-call\\n } else {\\n win = iframe.contentWindow;\\n }\\n\\n try {\\n if (!win || win === this.$wbwindow || win._skip_wombat || win._wb_wombat) {\\n return;\\n }\\n } catch (e) {\\n return;\\n }\\n\\n // var src = iframe.src;\\n var src = this.wb_getAttribute.call(iframe, 'src');\\n\\n this.initNewWindowWombat(win, src);\\n};\\n\\n/**\\n * Initializes wombat in the supplied window IFF the src URL of the window is\\n * not the empty string, about:blank, or a \\\"javascript:\\\" URL\\n * @param {Window} win\\n * @param {string} [src]\\n */\\nWombat.prototype.initNewWindowWombat = function(win, src) {\\n var fullWombat = false;\\n\\n if (!win || win._wb_wombat) return;\\n\\n if (\\n !src ||\\n src === '' ||\\n this.startsWith(src, 'about:') ||\\n src.indexOf('javascript:') >= 0\\n ) {\\n fullWombat = true;\\n }\\n\\n\\n if (this.wb_info.isSW) {\\n var origURL = this.extractOriginalURL(src);\\n if (origURL === \\\"about:blank\\\" || origURL.startsWith(\\\"srcdoc:\\\") || origURL.startsWith(\\\"blob:\\\")) {\\n fullWombat = true;\\n }\\n }\\n\\n if (fullWombat) {\\n // win._WBWombat = wombat_internal(win);\\n // win._wb_wombat = new win._WBWombat(wb_info);\\n var wombat = new Wombat(win, this.wb_info);\\n win._wb_wombat = wombat.wombatInit();\\n } else {\\n // These should get overriden when content is loaded, but just in case...\\n // win._WB_wombat_location = win.location;\\n // win.document.WB_wombat_location = win.document.location;\\n // win._WB_wombat_top = $wbwindow.WB_wombat_top;\\n\\n this.initProtoPmOrigin(win);\\n this.initPostMessageOverride(win);\\n this.initMessageEventOverride(win);\\n this.initCheckThisFunc(win);\\n }\\n};\\n\\n/**\\n * Applies an override to either window.[setTimeout, setInterval] functions\\n * in order to ensure that usage such as [setTimeout|setInterval]('document.location.href = \\\"xyz.com\\\"', time)\\n * behaves as expected during replay.\\n *\\n * In this case the supplied string is eval'd in the current context skipping\\n * the surrounding scope\\n */\\nWombat.prototype.initTimeoutIntervalOverrides = function() {\\n var rewriteFn = this.rewriteSetTimeoutInterval;\\n if (this.$wbwindow.setTimeout && !this.$wbwindow.setTimeout.__$wbpatched$__) {\\n var originalSetTimeout = this.$wbwindow.setTimeout;\\n this.$wbwindow.setTimeout = function setTimeout() {\\n return rewriteFn(this, originalSetTimeout, arguments);\\n };\\n this.$wbwindow.setTimeout.__$wbpatched$__ = true;\\n }\\n\\n if (\\n this.$wbwindow.setInterval &&\\n !this.$wbwindow.setInterval.__$wbpatched$__\\n ) {\\n var originalSetInterval = this.$wbwindow.setInterval;\\n this.$wbwindow.setInterval = function setInterval() {\\n return rewriteFn(this, originalSetInterval, arguments);\\n };\\n this.$wbwindow.setInterval.__$wbpatched$__ = true;\\n }\\n};\\n\\n/**\\n * Applies an overrides to the constructor of window.[Worker, SharedWorker] in\\n * order to ensure that the URL argument is rewritten.\\n *\\n * Applies an override to ServiceWorkerContainer.register in order to ensure\\n * that the URLs used in ServiceWorker registration are rewritten.\\n *\\n * Applies an override to Worklet.addModule in order to ensure that URL\\n * to the worklet module is rewritten\\n * @see https://html.spec.whatwg.org/multipage/workers.html\\n * @see https://w3c.github.io/ServiceWorker/\\n * @see https://drafts.css-houdini.org/worklets/#worklet\\n */\\nWombat.prototype.initWorkerOverrides = function() {\\n var wombat = this;\\n\\n if (this.$wbwindow.Worker && !this.$wbwindow.Worker._wb_worker_overriden) {\\n // Worker unrewrite postMessage\\n var orig_worker = this.$wbwindow.Worker;\\n this.$wbwindow.Worker = (function(Worker_) {\\n return function Worker(url, options) {\\n wombat.domConstructorErrorChecker(this, 'Worker', arguments);\\n return new Worker_(wombat.rewriteWorker(url), options);\\n };\\n })(orig_worker);\\n\\n this.$wbwindow.Worker.prototype = orig_worker.prototype;\\n Object.defineProperty(this.$wbwindow.Worker.prototype, 'constructor', {\\n value: this.$wbwindow.Worker\\n });\\n this.$wbwindow.Worker._wb_worker_overriden = true;\\n }\\n\\n if (\\n this.$wbwindow.SharedWorker &&\\n !this.$wbwindow.SharedWorker.__wb_sharedWorker_overriden\\n ) {\\n // per https://html.spec.whatwg.org/multipage/workers.html#sharedworker\\n var oSharedWorker = this.$wbwindow.SharedWorker;\\n this.$wbwindow.SharedWorker = (function(SharedWorker_) {\\n return function SharedWorker(url, options) {\\n wombat.domConstructorErrorChecker(this, 'SharedWorker', arguments);\\n return new SharedWorker_(wombat.rewriteWorker(url), options);\\n };\\n })(oSharedWorker);\\n\\n this.$wbwindow.SharedWorker.prototype = oSharedWorker.prototype;\\n Object.defineProperty(\\n this.$wbwindow.SharedWorker.prototype,\\n 'constructor',\\n {\\n value: this.$wbwindow.SharedWorker\\n }\\n );\\n this.$wbwindow.SharedWorker.__wb_sharedWorker_overriden = true;\\n }\\n\\n if (\\n this.$wbwindow.ServiceWorkerContainer &&\\n this.$wbwindow.ServiceWorkerContainer.prototype &&\\n this.$wbwindow.ServiceWorkerContainer.prototype.register\\n ) {\\n // https://w3c.github.io/ServiceWorker/\\n var orig_register = this.$wbwindow.ServiceWorkerContainer.prototype\\n .register;\\n this.$wbwindow.ServiceWorkerContainer.prototype.register = function register(\\n scriptURL,\\n options\\n ) {\\n var newScriptURL = new URL(scriptURL, wombat.$wbwindow.document.baseURI)\\n .href;\\n var mod = wombat.getPageUnderModifier();\\n if (options && options.scope) {\\n options.scope = wombat.rewriteUrl(options.scope, false, mod);\\n } else {\\n options = { scope: wombat.rewriteUrl('/', false, mod) };\\n }\\n return orig_register.call(\\n this,\\n wombat.rewriteUrl(newScriptURL, false, 'sw_'),\\n options\\n );\\n };\\n }\\n\\n if (\\n this.$wbwindow.Worklet &&\\n this.$wbwindow.Worklet.prototype &&\\n this.$wbwindow.Worklet.prototype.addModule &&\\n !this.$wbwindow.Worklet.__wb_workerlet_overriden\\n ) {\\n // https://developer.mozilla.org/en-US/docs/Web/API/Worklet/addModule\\n var oAddModule = this.$wbwindow.Worklet.prototype.addModule;\\n this.$wbwindow.Worklet.prototype.addModule = function addModule(\\n moduleURL,\\n options\\n ) {\\n var rwModuleURL = wombat.rewriteUrl(moduleURL, false, 'js_');\\n return oAddModule.call(this, rwModuleURL, options);\\n };\\n this.$wbwindow.Worklet.__wb_workerlet_overriden = true;\\n }\\n};\\n\\n/**\\n * Applies overrides to the getter setter functions of the supplied object\\n * for the properties defined in {@link Wombat#URL_PROPS} IFF\\n * Object.defineProperty is defined\\n * @param {Object} loc\\n * @param {function} oSetter\\n * @param {function} oGetter\\n */\\nWombat.prototype.initLocOverride = function(loc, oSetter, oGetter) {\\n if (Object.defineProperty) {\\n for (var i = 0; i < this.URL_PROPS.length; i++) {\\n var prop = this.URL_PROPS[i];\\n this.defProp(\\n loc,\\n prop,\\n this.makeSetLocProp(prop, oSetter, oGetter),\\n this.makeGetLocProp(prop, oGetter),\\n true\\n );\\n }\\n }\\n};\\n\\n/**\\n * Initialized WombatLocation on the supplied window object and adds the\\n * __WB_pmw function on the window, as well as, defines WB_wombat_location\\n * as property on the prototype of Object and adds the _WB_wombat_location\\n * and __WB_check_loc properties to the supplied window\\n * @param {Window} win\\n */\\nWombat.prototype.initWombatLoc = function(win) {\\n if (!win || (win.WB_wombat_location && win.document.WB_wombat_location)) {\\n return;\\n }\\n\\n // Location\\n var wombat_location = new _wombatLocation__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"](win.location, this);\\n\\n if (Object.defineProperty) {\\n var setter = function location(value) {\\n var loc =\\n this._WB_wombat_location ||\\n (this.defaultView && this.defaultView._WB_wombat_location) ||\\n this.location;\\n\\n if (loc) {\\n loc.href = value;\\n }\\n };\\n\\n var getter = function location() {\\n return (\\n this._WB_wombat_location ||\\n (this.defaultView && this.defaultView._WB_wombat_location) ||\\n this.location\\n );\\n };\\n\\n this.defProp(win.Object.prototype, 'WB_wombat_location', setter, getter);\\n\\n this.initProtoPmOrigin(win);\\n\\n win._WB_wombat_location = wombat_location;\\n } else {\\n win.WB_wombat_location = wombat_location;\\n\\n // Check quickly after page load\\n setTimeout(this.checkAllLocations, 500);\\n\\n // Check periodically every few seconds\\n setInterval(this.checkAllLocations, 500);\\n }\\n};\\n\\n/**\\n * Adds the __WB_pmw property to prototype of Object and adds the\\n * __WB_check_loc property to window\\n * @param {Window} win\\n */\\nWombat.prototype.initProtoPmOrigin = function(win) {\\n if (win.Object.prototype.__WB_pmw) return;\\n\\n var pm_origin = function pm_origin(origin_window) {\\n this.__WB_source = origin_window;\\n return this;\\n };\\n\\n try {\\n win.Object.defineProperty(win.Object.prototype, '__WB_pmw', {\\n get: function() {\\n return pm_origin;\\n },\\n set: function() {},\\n configurable: true,\\n enumerable: false\\n });\\n } catch (e) {}\\n\\n win.__WB_check_loc = function(loc) {\\n if (loc instanceof Location || loc instanceof _wombatLocation__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"]) {\\n return this.WB_wombat_location;\\n } else {\\n return {};\\n }\\n };\\n};\\n\\n/**\\n * Add proxy object globals, assign func and 'this' wrapper, to global Object.prototype\\n *\\n */\\n\\nWombat.prototype.initCheckThisFunc = function(win) {\\n try {\\n if (!win.Object.prototype[this.WB_CHECK_THIS_FUNC]) {\\n win.Object.defineProperty(win.Object.prototype, this.WB_CHECK_THIS_FUNC, {\\n configutable: false,\\n enumerable: false,\\n value: function(thisObj) {\\n return (thisObj && thisObj._WB_wombat_obj_proxy ? thisObj._WB_wombat_obj_proxy : thisObj);\\n },\\n });\\n }\\n } catch(e) {}\\n}\\n\\n/**\\n * Override Object.getOwnPropertyNames() to filter out special wombat-added properties\\n *\\n */\\n\\nWombat.prototype.overrideGetOwnPropertyNames = function(win) {\\n var orig_getOwnPropertyNames = win.Object.getOwnPropertyNames;\\n\\n var removeProps = [\\n this.WB_CHECK_THIS_FUNC,\\n \\\"WB_wombat_location\\\",\\n \\\"__WB_pmw\\\",\\n \\\"WB_wombat_top\\\",\\n \\\"WB_wombat_eval\\\",\\n \\\"WB_wombat_runEval\\\"\\n ];\\n\\n try {\\n win.Object.defineProperty(win.Object, \\\"getOwnPropertyNames\\\", {\\n value: function(object) {\\n var props = orig_getOwnPropertyNames(object);\\n\\n for (var i = 0; i < removeProps.length; i++) {\\n var foundInx = props.indexOf(removeProps[i]);\\n if (foundInx >= 0) {\\n props.splice(foundInx, 1);\\n }\\n }\\n\\n return props;\\n }\\n });\\n } catch (e) {\\n console.log(e);\\n }\\n}\\n\\n/**\\n * Adds listeners for `message` and `hashchange` to window of the browser context wombat is in\\n * in order to ensure that actual top (archive top frame containing the replay iframe)\\n * browser history is updated IFF the history manipulation happens in the replay top\\n */\\nWombat.prototype.initHashChange = function() {\\n if (!this.$wbwindow.__WB_top_frame) return;\\n\\n var wombat = this;\\n\\n var receive_hash_change = function receive_hash_change(event) {\\n if (!event.data || !event.data.from_top) {\\n return;\\n }\\n\\n var message = event.data.message;\\n\\n if (!message.wb_type) return;\\n\\n if (message.wb_type === 'outer_hashchange') {\\n if (wombat.$wbwindow.location.hash != message.hash) {\\n wombat.$wbwindow.location.hash = message.hash;\\n }\\n }\\n };\\n\\n var send_hash_change = function send_hash_change() {\\n var message = {\\n wb_type: 'hashchange',\\n hash: wombat.$wbwindow.location.hash\\n };\\n\\n wombat.sendTopMessage(message);\\n };\\n\\n this.$wbwindow.addEventListener('message', receive_hash_change);\\n\\n this.$wbwindow.addEventListener('hashchange', send_hash_change);\\n};\\n\\n/**\\n * Overrides window.postMessage in order to ensure that messages sent\\n * via this function are routed to the correct window, especially that\\n * messages sent to the \\\"top frame\\\" do not go to archive top but replay top.\\n *\\n * This function also applies an override to EventTarget.[addEventListener, removeEventListener]\\n * to ensure that listening to events behaves correctly during replay.\\n *\\n * This function is the place where the `onmessage` and `onstorage` setter functions\\n * are overriden.\\n * @param {Window} $wbwindow\\n */\\nWombat.prototype.initPostMessageOverride = function($wbwindow) {\\n if (!$wbwindow.postMessage || $wbwindow.__orig_postMessage) {\\n return;\\n }\\n\\n var orig = $wbwindow.postMessage;\\n var wombat = this;\\n\\n $wbwindow.__orig_postMessage = orig;\\n\\n // use this_obj.__WB_source not window to fix google calendar embeds, pm_origin sets this.__WB_source\\n var postmessage_rewritten = function postMessage(\\n message,\\n targetOrigin,\\n transfer,\\n from_top\\n ) {\\n var from;\\n var src_id;\\n var this_obj = wombat.proxyToObj(this);\\n if (this_obj.__WB_source && this_obj.__WB_source.WB_wombat_location) {\\n var source = this_obj.__WB_source;\\n\\n from = source.WB_wombat_location.origin;\\n if (!this_obj.__WB_win_id) {\\n this_obj.__WB_win_id = {};\\n this_obj.__WB_counter = 0;\\n }\\n\\n if (!source.__WB_id) {\\n var id = this_obj.__WB_counter;\\n source.__WB_id = id + source.WB_wombat_location.href;\\n this_obj.__WB_counter += 1;\\n }\\n this_obj.__WB_win_id[source.__WB_id] = source;\\n\\n src_id = source.__WB_id;\\n\\n this_obj.__WB_source = undefined;\\n } else {\\n from = window.WB_wombat_location.origin;\\n }\\n\\n var to_origin = targetOrigin;\\n\\n // if passed in origin is the replay (rewriting missed somewhere?)\\n // set origin to current 'from' origin\\n if (to_origin === this_obj.location.origin) {\\n to_origin = from;\\n }\\n\\n var new_message = {\\n from: from,\\n to_origin: to_origin,\\n src_id: src_id,\\n message: message,\\n from_top: from_top\\n };\\n\\n // set to 'real' origin if not '*'\\n if (targetOrigin !== '*') {\\n // if target origin is null (about:blank) or empty, don't pass event at all\\n // as it would never succeed\\n if (\\n this_obj.location.origin === 'null' ||\\n this_obj.location.origin === ''\\n ) {\\n return;\\n }\\n // set to actual (rewritten) origin\\n targetOrigin = this_obj.location.origin;\\n }\\n\\n // console.log(`Sending ${from} -> ${to_origin} (${targetOrigin}) ${message}`);\\n\\n return orig.call(this_obj, new_message, targetOrigin, transfer);\\n };\\n\\n $wbwindow.postMessage = postmessage_rewritten;\\n $wbwindow.Window.prototype.postMessage = postmessage_rewritten;\\n\\n var eventTarget = null;\\n if ($wbwindow.EventTarget && $wbwindow.EventTarget.prototype) {\\n eventTarget = $wbwindow.EventTarget.prototype;\\n } else {\\n eventTarget = $wbwindow;\\n }\\n\\n // ADD\\n var _oAddEventListener = eventTarget.addEventListener;\\n eventTarget.addEventListener = function addEventListener(\\n type,\\n listener,\\n useCapture\\n ) {\\n var obj = wombat.proxyToObj(this);\\n var rwListener;\\n if (type === 'message') {\\n rwListener = wombat.message_listeners.add_or_get(listener, function() {\\n return Object(_listeners__WEBPACK_IMPORTED_MODULE_4__[\\\"wrapEventListener\\\"])(listener, obj, wombat);\\n });\\n } else if (type === 'storage') {\\n wombat.storage_listeners.add_or_get(listener, function() {\\n return Object(_listeners__WEBPACK_IMPORTED_MODULE_4__[\\\"wrapSameOriginEventListener\\\"])(listener, obj);\\n });\\n } else {\\n rwListener = listener;\\n }\\n if (rwListener) {\\n return _oAddEventListener.call(obj, type, rwListener, useCapture);\\n }\\n };\\n\\n // REMOVE\\n var _oRemoveEventListener = eventTarget.removeEventListener;\\n eventTarget.removeEventListener = function removeEventListener(\\n type,\\n listener,\\n useCapture\\n ) {\\n var obj = wombat.proxyToObj(this);\\n var rwListener;\\n\\n if (type === 'message') {\\n rwListener = wombat.message_listeners.remove(listener);\\n } else if (type === 'storage') {\\n wombat.storage_listeners.remove(listener);\\n } else {\\n rwListener = listener;\\n }\\n\\n if (rwListener) {\\n return _oRemoveEventListener.call(obj, type, rwListener, useCapture);\\n }\\n };\\n\\n // ONMESSAGE & ONSTORAGE\\n var override_on_prop = function(onevent, wrapperFN) {\\n // var orig_getter = _wombat.getOrigGetter($wbwindow, onevent)\\n var orig_setter = wombat.getOrigSetter($wbwindow, onevent);\\n\\n var setter = function(value) {\\n this['__orig_' + onevent] = value;\\n var obj = wombat.proxyToObj(this);\\n var listener = value ? wrapperFN(value, obj, wombat) : value;\\n return orig_setter.call(obj, listener);\\n };\\n\\n var getter = function() {\\n return this['__orig_' + onevent];\\n };\\n\\n wombat.defProp($wbwindow, onevent, setter, getter);\\n };\\n override_on_prop('onmessage', _listeners__WEBPACK_IMPORTED_MODULE_4__[\\\"wrapEventListener\\\"]);\\n override_on_prop('onstorage', _listeners__WEBPACK_IMPORTED_MODULE_4__[\\\"wrapSameOriginEventListener\\\"]);\\n};\\n\\n/**\\n * Applies overrides to the MessageEvent.[target, srcElement, currentTarget, eventPhase, path, source]\\n * in order to ensure they are not a JS Proxy used by wombat\\n * @param {Window} $wbwindow\\n */\\nWombat.prototype.initMessageEventOverride = function($wbwindow) {\\n if (!$wbwindow.MessageEvent || $wbwindow.MessageEvent.prototype.__extended) {\\n return;\\n }\\n this.addEventOverride('target');\\n this.addEventOverride('srcElement');\\n this.addEventOverride('currentTarget');\\n this.addEventOverride('eventPhase');\\n this.addEventOverride('path');\\n this.overridePropToProxy($wbwindow.MessageEvent.prototype, 'source');\\n $wbwindow.MessageEvent.prototype.__extended = true;\\n};\\n\\n/**\\n * Applies overrides to the constructors\\n * - UIEvent\\n * - MouseEvent\\n * - TouchEvent\\n * - KeyboardEvent\\n * - WheelEvent\\n * - InputEvent\\n * - CompositionEvent\\n *\\n * in order to ensure the proper behavior of the events when wombat is using\\n * an JS Proxy\\n */\\nWombat.prototype.initUIEventsOverrides = function() {\\n this.overrideAnUIEvent('UIEvent');\\n this.overrideAnUIEvent('MouseEvent');\\n this.overrideAnUIEvent('TouchEvent');\\n this.overrideAnUIEvent('FocusEvent');\\n this.overrideAnUIEvent('KeyboardEvent');\\n this.overrideAnUIEvent('WheelEvent');\\n this.overrideAnUIEvent('InputEvent');\\n this.overrideAnUIEvent('CompositionEvent');\\n};\\n\\n/**\\n * Applies an override to window.open in order to ensure the URL argument is rewritten.\\n * Also applies the same override to the open function of all frames returned by\\n * window.frames\\n */\\nWombat.prototype.initOpenOverride = function() {\\n var orig = this.$wbwindow.open;\\n\\n if (this.$wbwindow.Window.prototype.open) {\\n orig = this.$wbwindow.Window.prototype.open;\\n }\\n\\n var wombat = this;\\n\\n var open_rewritten = function open(strUrl, strWindowName, strWindowFeatures) {\\n var rwStrUrl = wombat.rewriteUrl(strUrl, false, '');\\n var res = orig.call(\\n wombat.proxyToObj(this),\\n rwStrUrl,\\n strWindowName,\\n strWindowFeatures\\n );\\n wombat.initNewWindowWombat(res, rwStrUrl);\\n return res;\\n };\\n\\n this.$wbwindow.open = open_rewritten;\\n\\n if (this.$wbwindow.Window.prototype.open) {\\n this.$wbwindow.Window.prototype.open = open_rewritten;\\n }\\n\\n for (var i = 0; i < this.$wbwindow.frames.length; i++) {\\n try {\\n this.$wbwindow.frames[i].open = open_rewritten;\\n } catch (e) {\\n console.log(e);\\n }\\n }\\n};\\n\\n/**\\n * Applies an override to the getter and setter functions of document.cookie\\n * in order to ensure that cookies are rewritten\\n */\\nWombat.prototype.initCookiesOverride = function() {\\n var orig_get_cookie = this.getOrigGetter(this.$wbwindow.document, 'cookie');\\n var orig_set_cookie = this.getOrigSetter(this.$wbwindow.document, 'cookie');\\n\\n if (!orig_get_cookie) {\\n orig_get_cookie = this.getOrigGetter(\\n this.$wbwindow.Document.prototype,\\n 'cookie'\\n );\\n }\\n if (!orig_set_cookie) {\\n orig_set_cookie = this.getOrigSetter(\\n this.$wbwindow.Document.prototype,\\n 'cookie'\\n );\\n }\\n\\n var rwCookieReplacer = function(m, d1) {\\n var date = new Date(d1);\\n if (isNaN(date.getTime())) {\\n return 'Expires=Thu,| 01 Jan 1970 00:00:00 GMT';\\n }\\n var finalDate = new Date(date.getTime() + Date.__WB_timediff);\\n return 'Expires=' + finalDate.toUTCString().replace(',', ',|');\\n };\\n\\n var wombat = this;\\n var set_cookie = function cookie(value) {\\n if (!value) return;\\n var newValue = value.replace(wombat.cookie_expires_regex, rwCookieReplacer);\\n var cookies = newValue.split(wombat.SetCookieRe);\\n for (var i = 0; i < cookies.length; i++) {\\n cookies[i] = wombat.rewriteCookie(cookies[i]);\\n }\\n return orig_set_cookie.call(wombat.proxyToObj(this), cookies.join(','));\\n };\\n\\n var get_cookie = function cookie() {\\n return orig_get_cookie.call(wombat.proxyToObj(this));\\n };\\n\\n this.defProp(this.$wbwindow.document, 'cookie', set_cookie, get_cookie);\\n};\\n\\n/**\\n * Applies an override to navigator.[registerProtocolHandler, unregisterProtocolHandler] in order to\\n * ensure that the URI argument is rewritten\\n */\\nWombat.prototype.initRegisterUnRegPHOverride = function() {\\n var wombat = this;\\n var winNavigator = this.$wbwindow.navigator;\\n if (winNavigator.registerProtocolHandler) {\\n var orig_registerPH = winNavigator.registerProtocolHandler;\\n winNavigator.registerProtocolHandler = function registerProtocolHandler(\\n protocol,\\n uri,\\n title\\n ) {\\n return orig_registerPH.call(\\n this,\\n protocol,\\n wombat.rewriteUrl(uri),\\n title\\n );\\n };\\n }\\n\\n if (winNavigator.unregisterProtocolHandler) {\\n var origUnregPH = winNavigator.unregisterProtocolHandler;\\n winNavigator.unregisterProtocolHandler = function unregisterProtocolHandler(\\n scheme,\\n url\\n ) {\\n return origUnregPH.call(this, scheme, wombat.rewriteUrl(url));\\n };\\n }\\n};\\n\\n/**\\n * Applies an override to navigator.sendBeacon in order to ensure that\\n * the URL argument is rewritten. This ensures that when a page is rewritten\\n * no information about who is viewing is leaked to the outside world\\n */\\nWombat.prototype.initBeaconOverride = function() {\\n if (!this.$wbwindow.navigator.sendBeacon) return;\\n var orig_sendBeacon = this.$wbwindow.navigator.sendBeacon;\\n var wombat = this;\\n this.$wbwindow.navigator.sendBeacon = function sendBeacon(url, data) {\\n try {\\n return orig_sendBeacon.call(this, wombat.rewriteUrl(url), data);\\n } catch(e) {\\n return true;\\n }\\n };\\n};\\n\\n/**\\n * Applies an override to the constructor of the PresentationRequest interface object\\n * in order to rewrite its URL(s) arguments\\n * @see https://w3c.github.io/presentation-api/#constructing-a-presentationrequest\\n */\\nWombat.prototype.initPresentationRequestOverride = function() {\\n if (\\n this.$wbwindow.PresentationRequest &&\\n this.$wbwindow.PresentationRequest.prototype\\n ) {\\n var wombat = this;\\n var origPresentationRequest = this.$wbwindow.PresentationRequest;\\n this.$wbwindow.PresentationRequest = (function(PresentationRequest_) {\\n return function PresentationRequest(url) {\\n wombat.domConstructorErrorChecker(\\n this,\\n 'PresentationRequest',\\n arguments\\n );\\n var rwURL = url;\\n if (url != null) {\\n if (Array.isArray(rwURL)) {\\n for (var i = 0; i < rwURL.length; i++) {\\n rwURL[i] = wombat.rewriteUrl(rwURL[i], true, 'mp_');\\n }\\n } else {\\n rwURL = wombat.rewriteUrl(url, true, 'mp_');\\n }\\n }\\n return new PresentationRequest_(rwURL);\\n };\\n })(this.$wbwindow.PresentationRequest);\\n this.$wbwindow.PresentationRequest.prototype =\\n origPresentationRequest.prototype;\\n Object.defineProperty(\\n this.$wbwindow.PresentationRequest.prototype,\\n 'constructor',\\n {\\n value: this.$wbwindow.PresentationRequest\\n }\\n );\\n }\\n};\\n\\n/**\\n * Applies an override that disables the pages ability to send OS native\\n * notifications. Also disables the ability of the replayed page to retrieve the geolocation\\n * of the view.\\n *\\n * This is done in order to ensure that no malicious abuse of these functions\\n * can happen during replay.\\n */\\nWombat.prototype.initDisableNotificationsGeoLocation = function() {\\n if (window.Notification) {\\n window.Notification.requestPermission = function requestPermission(\\n callback\\n ) {\\n if (callback) {\\n callback('denied');\\n }\\n\\n return Promise.resolve('denied');\\n };\\n }\\n\\n var applyOverride = function(on) {\\n if (!on) return;\\n if (on.getCurrentPosition) {\\n on.getCurrentPosition = function getCurrentPosition(\\n success,\\n error,\\n options\\n ) {\\n if (error) {\\n error({ code: 2, message: 'not available' });\\n }\\n };\\n }\\n if (on.watchPosition) {\\n on.watchPosition = function watchPosition(success, error, options) {\\n if (error) {\\n error({ code: 2, message: 'not available' });\\n }\\n };\\n }\\n };\\n if (window.geolocation) {\\n applyOverride(window.geolocation);\\n }\\n if (window.navigator.geolocation) {\\n applyOverride(window.navigator.geolocation);\\n }\\n};\\n\\n/**\\n * Applies an override to window.[localStorage, sessionStorage] storage in order to ensure\\n * that the replayed page can use both interfaces as expected during replay.\\n */\\nWombat.prototype.initStorageOverride = function() {\\n this.addEventOverride('storageArea', this.$wbwindow.StorageEvent.prototype);\\n\\n var local;\\n var session;\\n var pLocal = 'localStorage';\\n var pSession = 'sessionStorage';\\n _wombatUtils__WEBPACK_IMPORTED_MODULE_5__[\\\"ThrowExceptions\\\"].yes = false;\\n if (this.$wbwindow.Proxy) {\\n var storageProxyHandler = function() {\\n return {\\n get: function(target, prop) {\\n if (prop in target) return target[prop];\\n return target.getItem(prop);\\n },\\n set: function(target, prop, value) {\\n if (target.hasOwnProperty(prop)) return false;\\n target.setItem(prop, value);\\n return true;\\n },\\n getOwnPropertyDescriptor: function(target, prop) {\\n return Object.getOwnPropertyDescriptor(target, prop);\\n }\\n };\\n };\\n local = new this.$wbwindow.Proxy(\\n new _customStorage__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"](this, pLocal),\\n storageProxyHandler()\\n );\\n session = new this.$wbwindow.Proxy(\\n new _customStorage__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"](this, pSession),\\n storageProxyHandler()\\n );\\n } else {\\n local = new _customStorage__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"](this, pLocal);\\n session = new _customStorage__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"](this, pSession);\\n }\\n\\n this.defGetterProp(this.$wbwindow, pLocal, function localStorage() {\\n return local;\\n });\\n\\n this.defGetterProp(this.$wbwindow, pSession, function sessionStorage() {\\n return session;\\n });\\n // ensure localStorage instanceof Storage works\\n this.$wbwindow.Storage = _customStorage__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"];\\n _wombatUtils__WEBPACK_IMPORTED_MODULE_5__[\\\"ThrowExceptions\\\"].yes = true;\\n};\\n\\n\\nWombat.prototype.initIndexedDBOverride = function() {\\n if (!this.$wbwindow.IDBFactory) {\\n return;\\n }\\n\\n var proto = this.$wbwindow.IDBFactory.prototype;\\n\\n var prefix = \\\"wb-\\\" + this.wb_orig_origin + \\\"-\\\";\\n\\n var orig_open = proto.open;\\n proto.open = function(dbName, version) {\\n return orig_open.call(this, prefix + dbName, version);\\n }\\n\\n var orig_delete = proto.deleteDatabase;\\n proto.delete = function(dbName) {\\n return orig_delete.call(this, prefix + dbName, options);\\n }\\n\\n var orig_databases = proto.databases;\\n proto.databases = function() {\\n var func = this;\\n return new Promise(function (resolve, reject) {\\n orig_databases.call(func).then(function(dbList) {\\n var keys = [];\\n for (var i = 0; i < dbList.length; i++) {\\n if (dbList[i].name.indexOf(prefix) === 0) {\\n keys.push({name: dbList[i].name.substring(prefix.length), version: dbList[i].version});\\n }\\n }\\n resolve(keys);\\n }).catch(function(err) { reject(err); });\\n });\\n }\\n}\\n\\nWombat.prototype.initCachesOverride = function() {\\n if (!this.$wbwindow.CacheStorage) {\\n return;\\n }\\n\\n // disable access to extension apis\\n if (this.$wbwindow.chrome) {\\n this.$wbwindow.chrome = {};\\n }\\n\\n var proto = this.$wbwindow.CacheStorage.prototype;\\n\\n var prefix = \\\"wb-\\\" + this.wb_orig_origin + \\\"-\\\";\\n\\n var orig_open = proto.open;\\n proto.open = function(cacheName) {\\n return orig_open.call(this, prefix + cacheName);\\n }\\n\\n var orig_has = proto.has;\\n proto.has = function(cacheName) {\\n return orig_has.call(this, prefix + cacheName);\\n }\\n\\n var orig_delete = proto.delete;\\n proto.delete = function(cacheName) {\\n return orig_delete.call(this, prefix + cacheName);\\n }\\n\\n var orig_keys = proto.keys;\\n proto.keys = function() {\\n var func = this;\\n return new Promise(function (resolve, reject) {\\n orig_keys.call(func).then(function(keyList) {\\n var keys = [];\\n for (var i = 0; i < keyList.length; i++) {\\n if (keyList[i].indexOf(prefix) === 0) {\\n keys.push(keyList[i].substring(prefix.length));\\n }\\n }\\n resolve(keys);\\n }).catch(function(err) { reject(err); });\\n });\\n }\\n\\n var orig_match = proto.match;\\n proto.match = function match(request, opts) {\\n var caches = this;\\n\\n return this.keys().then(function(cacheNames) {\\n var match;\\n\\n return cacheNames.reduce(function(chain, cacheName) {\\n return chain.then(function() {\\n return match || caches.open(cacheName).then(function(cache) {\\n return cache.match(request, opts);\\n }).then(function(response) {\\n match = response;\\n return match;\\n });\\n });\\n }, Promise.resolve());\\n });\\n };\\n}\\n\\n/**\\n * Initializes the wombat window JS Proxy object IFF JS Proxies are available.\\n * @param {Window} $wbwindow\\n * @return {Proxy<Window>}\\n */\\nWombat.prototype.initWindowObjProxy = function($wbwindow) {\\n if (!$wbwindow.Proxy) return undefined;\\n\\n var ownProps = this.getAllOwnProps($wbwindow);\\n var funCache = {};\\n var wombat = this;\\n var windowProxy = new $wbwindow.Proxy(\\n {},\\n {\\n get: function(target, prop) {\\n switch (prop) {\\n case 'top':\\n return wombat.$wbwindow.WB_wombat_top._WB_wombat_obj_proxy;\\n case 'parent':\\n // if at replay top, return the top object proxy\\n if (wombat.$wbwindow === wombat.$wbwindow.WB_wombat_top) {\\n return wombat.$wbwindow.WB_wombat_top._WB_wombat_obj_proxy;\\n }\\n // attempt to get the object proxy from parent, may throw if cross-origin\\n try {\\n var parentProxy = wombat.$wbwindow.parent._WB_wombat_obj_proxy;\\n if (parentProxy) return parentProxy;\\n } catch (e) {}\\n\\n // default to replay-top object proxy if all else fails\\n return wombat.$wbwindow.WB_wombat_top._WB_wombat_obj_proxy;\\n\\n }\\n return wombat.defaultProxyGet($wbwindow, prop, ownProps, funCache);\\n },\\n set: function(target, prop, value) {\\n switch (prop) {\\n case 'location':\\n $wbwindow.WB_wombat_location = value;\\n return true;\\n case 'postMessage':\\n case 'document':\\n return true;\\n }\\n try {\\n if (!Reflect.set(target, prop, value)) {\\n return false;\\n }\\n } catch (e) {}\\n return Reflect.set($wbwindow, prop, value);\\n },\\n has: function(target, prop) {\\n return prop in $wbwindow;\\n },\\n ownKeys: function(target) {\\n return Object.getOwnPropertyNames($wbwindow).concat(\\n Object.getOwnPropertySymbols($wbwindow)\\n );\\n },\\n getOwnPropertyDescriptor: function(target, key) {\\n // first try the underlying object's descriptor\\n // (to match defineProperty() behavior)\\n var descriptor = Object.getOwnPropertyDescriptor(target, key);\\n if (!descriptor) {\\n descriptor = Object.getOwnPropertyDescriptor($wbwindow, key);\\n // if using window's descriptor, must ensure it's configurable\\n if (descriptor) {\\n descriptor.configurable = true;\\n }\\n }\\n return descriptor;\\n },\\n getPrototypeOf: function(target) {\\n return Object.getPrototypeOf($wbwindow);\\n },\\n setPrototypeOf: function(target, newProto) {\\n return false;\\n },\\n isExtensible: function(target) {\\n return Object.isExtensible($wbwindow);\\n },\\n preventExtensions: function(target) {\\n Object.preventExtensions($wbwindow);\\n return true;\\n },\\n deleteProperty: function(target, prop) {\\n var propDescriptor = Object.getOwnPropertyDescriptor($wbwindow, prop);\\n if (propDescriptor === undefined) {\\n return true;\\n }\\n if (propDescriptor.configurable === false) {\\n return false;\\n }\\n delete target[prop];\\n delete $wbwindow[prop];\\n return true;\\n },\\n defineProperty: function(target, prop, desc) {\\n var ndesc = desc || {};\\n if (!ndesc.value && !ndesc.get) {\\n ndesc.value = $wbwindow[prop];\\n }\\n Reflect.defineProperty($wbwindow, prop, ndesc);\\n return Reflect.defineProperty(target, prop, ndesc);\\n }\\n }\\n );\\n $wbwindow._WB_wombat_obj_proxy = windowProxy;\\n return windowProxy;\\n};\\n\\n/**\\n * Initializes the wombat document JS Proxy object IFF JS Proxies are available.\\n * This function also applies the {@link initDocOverrides} overrides regardless\\n * if JS Proxies are available.\\n * @param {Document} $document\\n * @return {Proxy<Document>}\\n */\\nWombat.prototype.initDocumentObjProxy = function($document) {\\n this.initDocOverrides($document);\\n if (!this.$wbwindow.Proxy) return undefined;\\n var funCache = {};\\n var ownProps = this.getAllOwnProps($document);\\n var wombat = this;\\n var documentProxy = new this.$wbwindow.Proxy($document, {\\n get: function(target, prop) {\\n return wombat.defaultProxyGet($document, prop, ownProps, funCache);\\n },\\n set: function(target, prop, value) {\\n if (prop === 'location') {\\n $document.WB_wombat_location = value;\\n } else {\\n target[prop] = value;\\n }\\n return true;\\n }\\n });\\n $document._WB_wombat_obj_proxy = documentProxy;\\n return documentProxy;\\n};\\n\\n/**\\n * Initializes and starts the auto-fetch worker IFF wbUseAFWorker is true\\n */\\nWombat.prototype.initAutoFetchWorker = function() {\\n if (!this.wbUseAFWorker) return;\\n var af = new _autoFetcher__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"](this, {\\n isTop: this.$wbwindow === this.$wbwindow.__WB_replay_top,\\n workerURL:\\n (this.wb_info.auto_fetch_worker_prefix || this.wb_info.static_prefix) +\\n 'autoFetchWorker.js?init=' +\\n encodeURIComponent(\\n JSON.stringify({\\n mod: this.wb_info.mod,\\n prefix: this.wb_abs_prefix,\\n rwRe: this.wb_unrewrite_rx.source\\n })\\n )\\n });\\n this.WBAutoFetchWorker = af;\\n this.$wbwindow.$WBAutoFetchWorker$ = af;\\n var wombat = this;\\n this.utilFns.wbSheetMediaQChecker = function checkStyle() {\\n // used only for link[rel='stylesheet'] so we remove our listener\\n wombat._removeEventListener(\\n this,\\n 'load',\\n wombat.utilFns.wbSheetMediaQChecker\\n );\\n // check no op condition\\n if (this.sheet == null) return;\\n // defer extraction to be nice :)\\n if (wombat.WBAutoFetchWorker) {\\n wombat.WBAutoFetchWorker.deferredSheetExtraction(this.sheet);\\n }\\n };\\n};\\n\\n/**\\n * Initializes the listener for when the document.readyState is \\\"complete\\\" in\\n * order to send archive top the information about the title of the page and\\n * have it add any favicons of the replayed page to its own markup.\\n *\\n * The wb_type=\\\"load\\\" message is sent to archive top IFF the page it originates\\n * is replay top\\n * @param {Object} wbinfo\\n */\\nWombat.prototype.initTopFrameNotify = function(wbinfo) {\\n var wombat = this;\\n\\n var notify_top = function notify_top(event) {\\n if (!wombat.$wbwindow.__WB_top_frame) {\\n var hash = wombat.$wbwindow.location.hash;\\n wombat.$wbwindow.location.replace(wbinfo.top_url + hash);\\n return;\\n }\\n\\n if (!wombat.$wbwindow.WB_wombat_location) return;\\n\\n var url = wombat.$wbwindow.WB_wombat_location.href;\\n\\n if (\\n typeof url !== 'string' ||\\n url === 'about:blank' ||\\n url.indexOf('javascript:') === 0\\n ) {\\n return;\\n }\\n\\n if (\\n wombat.$wbwindow.document.readyState === 'complete' &&\\n wombat.wbUseAFWorker &&\\n wombat.WBAutoFetchWorker\\n ) {\\n wombat.WBAutoFetchWorker.extractFromLocalDoc();\\n }\\n\\n if (wombat.$wbwindow !== wombat.$wbwindow.__WB_replay_top) {\\n return;\\n }\\n\\n var icons = [];\\n var hicons = wombat.$wbwindow.document.querySelectorAll(\\n \\\"link[rel*='icon']\\\"\\n );\\n\\n for (var i = 0; i < hicons.length; i++) {\\n var hicon = hicons[i];\\n icons.push({\\n rel: hicon.rel,\\n href: wombat.wb_getAttribute.call(hicon, 'href')\\n });\\n }\\n\\n var message = {\\n icons: icons,\\n url: wombat.$wbwindow.WB_wombat_location.href,\\n ts: wombat.wb_info.timestamp,\\n request_ts: wombat.wb_info.request_ts,\\n is_live: wombat.wb_info.is_live,\\n title: wombat.$wbwindow.document ? wombat.$wbwindow.document.title : '',\\n readyState: wombat.$wbwindow.document.readyState,\\n wb_type: 'load'\\n };\\n\\n wombat.sendTopMessage(message);\\n };\\n\\n if (this.$wbwindow.document.readyState === 'complete') {\\n notify_top();\\n } else if (this.$wbwindow.addEventListener) {\\n this.$wbwindow.document.addEventListener('readystatechange', notify_top);\\n } else if (this.$wbwindow.attachEvent) {\\n this.$wbwindow.document.attachEvent('onreadystatechange', notify_top);\\n }\\n};\\n\\n/**\\n * Initialises the _WB_replay_top and _WB_top_frame properties on window\\n * @param {Window} $wbwindow\\n */\\nWombat.prototype.initTopFrame = function($wbwindow) {\\n // proxy mode\\n if (this.wb_is_proxy) {\\n $wbwindow.__WB_replay_top = $wbwindow.top;\\n $wbwindow.__WB_top_frame = undefined;\\n return;\\n }\\n\\n var next_parent = function(win) {\\n try {\\n if (!win) return false;\\n // if no wbinfo, see if _wb_wombat was set (eg. if about:blank page)\\n if (!win.wbinfo) {\\n return win._wb_wombat != null;\\n } else {\\n // otherwise, ensure that it is not a top container frame\\n return win.wbinfo.is_framed;\\n }\\n } catch (e) {\\n return false;\\n }\\n };\\n\\n var replay_top = $wbwindow;\\n while (replay_top.parent != replay_top && next_parent(replay_top.parent)) {\\n replay_top = replay_top.parent;\\n }\\n\\n $wbwindow.__WB_replay_top = replay_top;\\n\\n var real_parent = replay_top.parent;\\n // Check to ensure top frame is different window and directly accessible (later refactor to support postMessage)\\n if (real_parent == $wbwindow || !this.wb_info.is_framed) {\\n real_parent = undefined;\\n }\\n\\n if (real_parent) {\\n $wbwindow.__WB_top_frame = real_parent;\\n this.initFrameElementOverride($wbwindow);\\n } else {\\n $wbwindow.__WB_top_frame = undefined;\\n }\\n\\n // if not top-replay frame and using auto-fetch workers, register listener\\n // messaging here\\n if (!this.wb_opts.embedded && replay_top == $wbwindow) {\\n if (this.wbUseAFWorker) {\\n var wombat = this;\\n this.$wbwindow.addEventListener(\\n 'message',\\n function(event) {\\n if (\\n event.data &&\\n event.data.wb_type === 'aaworker' &&\\n wombat.WBAutoFetchWorker\\n ) {\\n wombat.WBAutoFetchWorker.postMessage(event.data.msg);\\n }\\n },\\n false\\n );\\n }\\n //removed to rely on proxy object override to ensure 'parent' and 'top' overriden together\\n //$wbwindow.__WB_orig_parent = $wbwindow.parent;\\n //$wbwindow.parent = replay_top;\\n }\\n};\\n\\n/**\\n * Applies an override to window.frameElement IFF the supplied windows\\n * __WB_replay_top property is equal to the window object of the browser context\\n * wombat is currently operating in\\n * @param {Window} $wbwindow\\n */\\nWombat.prototype.initFrameElementOverride = function($wbwindow) {\\n if (!Object.defineProperty) return;\\n // Also try disabling frameElement directly, though may no longer be supported in all browsers\\n if (\\n this.proxyToObj($wbwindow.__WB_replay_top) == this.proxyToObj($wbwindow)\\n ) {\\n try {\\n Object.defineProperty($wbwindow, 'frameElement', {\\n value: null,\\n configurable: false\\n });\\n } catch (e) {}\\n }\\n};\\n\\n/**\\n * Adds the WB_wombat_top property to the prototype of Object\\n * @param {Window} $wbwindow\\n */\\nWombat.prototype.initWombatTop = function($wbwindow) {\\n if (!Object.defineProperty) return;\\n\\n // from http://stackoverflow.com/a/6229603\\n var isWindow = function isWindow(obj) {\\n if (typeof window.constructor === 'undefined') {\\n return obj instanceof window.constructor;\\n }\\n return obj.window == obj;\\n };\\n\\n var getter = function top() {\\n if (this.__WB_replay_top) {\\n return this.__WB_replay_top;\\n } else if (isWindow(this)) {\\n return this;\\n }\\n return this.top;\\n };\\n\\n var setter = function top(val) {\\n this.top = val;\\n };\\n\\n this.defProp($wbwindow.Object.prototype, 'WB_wombat_top', setter, getter);\\n};\\n\\n/**\\n * There is evil in this world because this is it.\\n * To quote the MDN / every sane person 'Do not ever use eval'.\\n * Why cause we gotta otherwise infinite loops.\\n */\\nWombat.prototype.initEvalOverride = function() {\\n var rewriteEvalArg = this.rewriteEvalArg;\\n var setNoop = function() {};\\n var wrappedEval = function wrappedEval(arg) {\\n return rewriteEvalArg(eval, arg);\\n };\\n this.defProp(\\n this.$wbwindow.Object.prototype,\\n 'WB_wombat_eval',\\n setNoop,\\n function() {\\n return wrappedEval;\\n }\\n );\\n var runEval = function runEval(func) {\\n return {\\n eval: function(arg) {\\n return rewriteEvalArg(func, arg);\\n }\\n };\\n };\\n this.defProp(\\n this.$wbwindow.Object.prototype,\\n 'WB_wombat_runEval',\\n setNoop,\\n function() {\\n return runEval;\\n }\\n );\\n};\\n\\n/**\\n * Initialize wombat's internal state and apply all overrides\\n * @return {Object}\\n */\\nWombat.prototype.wombatInit = function() {\\n // wombat init\\n this._internalInit();\\n\\n if (this.wb_info.presetCookie) {\\n var splitCookies = this.wb_info.presetCookie.split(\\\";\\\");\\n for (var i = 0; i < splitCookies.length; i++) {\\n this.$wbwindow.document.cookie = splitCookies[i].trim();\\n }\\n }\\n\\n // History\\n this.initHistoryOverrides();\\n\\n this.overrideFunctionApply(this.$wbwindow);\\n this.overrideFunctionBind(this.$wbwindow);\\n\\n // Doc Title\\n this.initDocTitleOverride();\\n this.initHashChange();\\n\\n // postMessage\\n // OPT skip\\n if (!this.wb_opts.skip_postmessage) {\\n this.initPostMessageOverride(this.$wbwindow);\\n this.initMessageEventOverride(this.$wbwindow);\\n }\\n\\n // proxy check this func\\n this.initCheckThisFunc(this.$wbwindow);\\n\\n // override getOwnPropertyNames\\n this.overrideGetOwnPropertyNames(this.$wbwindow);\\n\\n\\n this.initUIEventsOverrides();\\n\\n // write\\n this.initDocWriteOpenCloseOverride();\\n\\n // eval\\n this.initEvalOverride();\\n\\n // Ajax, Fetch, Request, Response, EventSource, WebSocket\\n this.initHTTPOverrides();\\n\\n // Audio\\n this.initAudioOverride();\\n\\n // FontFace\\n this.initFontFaceOverride(this.$wbwindow);\\n\\n // Worker override (experimental)\\n this.initWorkerOverrides();\\n\\n // text node overrides for js frameworks doing funky things with CSS\\n this.initTextNodeOverrides();\\n this.initCSSOMOverrides();\\n\\n // innerHTML & outerHTML can be overriden on prototype!\\n // we must override innerHTML & outerHTML on Element otherwise un-rewritten HTML\\n // can get into replay\\n this.overrideHtmlAssign(this.$wbwindow.Element, 'innerHTML', true);\\n this.overrideHtmlAssign(this.$wbwindow.Element, 'outerHTML', true);\\n this.overrideHtmlAssign(this.$wbwindow.HTMLIFrameElement, 'srcdoc', true);\\n this.overrideHtmlAssign(this.$wbwindow.HTMLStyleElement, 'textContent');\\n this.overrideShadowDom();\\n\\n // Document.URL override\\n this.overridePropExtract(this.$wbwindow.Document.prototype, 'URL');\\n this.overridePropExtract(this.$wbwindow.Document.prototype, 'documentURI');\\n\\n // Node.baseURI override\\n this.overridePropExtract(this.$wbwindow.Node.prototype, 'baseURI');\\n\\n // Attr nodeValue and value\\n this.overrideAttrProps();\\n\\n // init insertAdjacent[Element, HTML] override\\n this.initInsertAdjacentElementHTMLOverrides();\\n\\n // iframe.contentWindow and iframe.contentDocument overrides to\\n // ensure _wombat is inited on the iframe $wbwindow!\\n this.overrideIframeContentAccess('contentWindow');\\n this.overrideIframeContentAccess('contentDocument');\\n\\n // override funcs to convert first arg proxy->obj\\n this.overrideFuncArgProxyToObj(this.$wbwindow.MutationObserver, 'observe');\\n this.overrideFuncArgProxyToObj(\\n this.$wbwindow.Node,\\n 'compareDocumentPosition'\\n );\\n this.overrideFuncArgProxyToObj(this.$wbwindow.Node, 'contains');\\n this.overrideFuncArgProxyToObj(this.$wbwindow.Document, 'createTreeWalker');\\n this.overrideFuncArgProxyToObj(this.$wbwindow.Document, 'evaluate', 1);\\n this.overrideFuncArgProxyToObj(\\n this.$wbwindow.XSLTProcessor,\\n 'transformToFragment',\\n 1\\n );\\n\\n this.overrideFuncThisProxyToObj(\\n this.$wbwindow,\\n 'getComputedStyle',\\n this.$wbwindow\\n );\\n\\n this.overrideFuncThisProxyToObj(this.$wbwindow, 'clearTimeout');\\n this.overrideFuncThisProxyToObj(this.$wbwindow, 'clearInterval');\\n\\n this.overrideFuncThisProxyToObj(\\n this.$wbwindow.EventTarget.prototype,\\n 'dispatchEvent'\\n );\\n\\n this.initTimeoutIntervalOverrides();\\n\\n this.overrideFramesAccess(this.$wbwindow);\\n\\n this.overrideSWAccess(this.$wbwindow);\\n\\n // setAttribute\\n this.initElementGetSetAttributeOverride();\\n\\n this.initSvgImageOverrides();\\n\\n // override href and src attrs\\n this.initAttrOverrides();\\n\\n // Cookies\\n this.initCookiesOverride();\\n\\n // ensure namespace urls are NOT rewritten\\n this.initCreateElementNSFix();\\n\\n // DOM\\n // OPT skip\\n if (!this.wb_opts.skip_dom) {\\n this.initDomOverride();\\n }\\n\\n // registerProtocolHandler override\\n this.initRegisterUnRegPHOverride();\\n this.initPresentationRequestOverride();\\n\\n // sendBeacon override\\n this.initBeaconOverride();\\n\\n // other overrides\\n // proxy mode: only using these overrides\\n\\n // Random\\n this.initSeededRandom(this.wb_info.wombat_sec);\\n\\n // Crypto Random\\n this.initCryptoRandom();\\n\\n // set fixed pixel ratio\\n this.initFixedRatio();\\n\\n // Date\\n this.initDateOverride(this.wb_info.wombat_sec);\\n\\n // Blob\\n this.initBlobOverride();\\n\\n // open\\n this.initOpenOverride();\\n\\n // disable notifications\\n this.initDisableNotificationsGeoLocation();\\n\\n // custom storage\\n this.initStorageOverride();\\n\\n // wrap caches to ensure only host sandboxed caches are available\\n this.initCachesOverride();\\n\\n // wraps indexeddb access to ensure only host sandboxed dbs are available\\n this.initIndexedDBOverride();\\n\\n // add window and document obj proxies, if available\\n this.initWindowObjProxy(this.$wbwindow);\\n this.initDocumentObjProxy(this.$wbwindow.document);\\n\\n var wombat = this;\\n return {\\n actual: false,\\n extract_orig: this.extractOriginalURL,\\n rewrite_url: this.rewriteUrl,\\n watch_elem: this.watchElem,\\n init_new_window_wombat: this.initNewWindowWombat,\\n init_paths: this.initPaths,\\n local_init: function(name) {\\n var res = wombat.$wbwindow._WB_wombat_obj_proxy[name];\\n if (name === 'document' && res && !res._WB_wombat_obj_proxy) {\\n return wombat.initDocumentObjProxy(res) || res;\\n }\\n return res;\\n },\\n showCSPViolations: function(yesNo) {\\n wombat._addRemoveCSPViolationListener(yesNo);\\n }\\n };\\n};\\n\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Wombat);\\n\\n\\n//# sourceURL=webpack:///./node_modules/wombat/src/wombat.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/wombat/src/wombatLocation.js\":\n/*!***************************************************!*\\\n !*** ./node_modules/wombat/src/wombatLocation.js ***!\n \\***************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return WombatLocation; });\\n/* harmony import */ var _wombatUtils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./wombatUtils */ \\\"./node_modules/wombat/src/wombatUtils.js\\\");\\n/* eslint-disable camelcase */\\n\\n\\n/**\\n * A re-implementation of the Location interface that ensure that operations\\n * on the location interface behaves as expected during replay.\\n * @param {Location} orig_loc\\n * @param {Wombat} wombat\\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Location\\n * @see https://html.spec.whatwg.org/multipage/browsers.html#the-location-interface\\n */\\nfunction WombatLocation(orig_loc, wombat) {\\n // hide our values from enumeration, spreed, et al\\n Object.defineProperties(this, {\\n _orig_loc: {\\n configurable: true,\\n enumerable: false,\\n value: orig_loc\\n },\\n wombat: {\\n configurable: true,\\n enumerable: false,\\n value: wombat\\n },\\n orig_getter: {\\n enumerable: false,\\n value: function(prop) {\\n return this._orig_loc[prop];\\n }\\n },\\n orig_setter: {\\n enumerable: false,\\n value: function(prop, value) {\\n this._orig_loc[prop] = value;\\n }\\n }\\n });\\n\\n wombat.initLocOverride(this, this.orig_setter, this.orig_getter);\\n\\n wombat.setLoc(this, orig_loc.href);\\n\\n for (var prop in orig_loc) {\\n if (!this.hasOwnProperty(prop) && typeof orig_loc[prop] !== 'function') {\\n this[prop] = orig_loc[prop];\\n }\\n }\\n}\\n\\n/**\\n * Replaces the current resource with the one at the provided URL.\\n * The difference from the assign() method is that after using replace() the\\n * current page will not be saved in session History, meaning the user won't\\n * be able to use the back button to navigate to it.\\n * @param {string} url\\n * @return {*}\\n */\\nWombatLocation.prototype.replace = function replace(url) {\\n var new_url = this.wombat.rewriteUrl(url);\\n var orig = this.wombat.extractOriginalURL(new_url);\\n if (orig === this.href) {\\n return orig;\\n }\\n return this._orig_loc.replace(new_url);\\n};\\n\\n/**\\n * Loads the resource at the URL provided in parameter\\n * @param {string} url\\n * @return {*}\\n */\\nWombatLocation.prototype.assign = function assign(url) {\\n var new_url = this.wombat.rewriteUrl(url);\\n var orig = this.wombat.extractOriginalURL(new_url);\\n if (orig === this.href) {\\n return orig;\\n }\\n return this._orig_loc.assign(new_url);\\n};\\n\\n/**\\n * Reloads the resource from the current URL. Its optional unique parameter\\n * is a Boolean, which, when it is true, causes the page to always be reloaded\\n * from the server. If it is false or not specified, the browser may reload\\n * the page from its cache.\\n * @param {boolean} [forcedReload = false]\\n * @return {*}\\n */\\nWombatLocation.prototype.reload = function reload(forcedReload) {\\n return this._orig_loc.reload(forcedReload || false);\\n};\\n\\n/**\\n * @return {string}\\n */\\nWombatLocation.prototype.toString = function toString() {\\n return this.href;\\n};\\n\\n/**\\n * @return {WombatLocation}\\n */\\nWombatLocation.prototype.valueOf = function valueOf() {\\n return this;\\n};\\n\\nObject(_wombatUtils__WEBPACK_IMPORTED_MODULE_0__[\\\"addToStringTagToClass\\\"])(WombatLocation, 'Location');\\n\\n\\n//# sourceURL=webpack:///./node_modules/wombat/src/wombatLocation.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/wombat/src/wombatUtils.js\":\n/*!************************************************!*\\\n !*** ./node_modules/wombat/src/wombatUtils.js ***!\n \\************************************************/\n/*! exports provided: ensureNumber, addToStringTagToClass, autobind, ThrowExceptions */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"ensureNumber\\\", function() { return ensureNumber; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"addToStringTagToClass\\\", function() { return addToStringTagToClass; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"autobind\\\", function() { return autobind; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"ThrowExceptions\\\", function() { return ThrowExceptions; });\\n/**\\n * Ensures the supplied argument is a number or if it is not (can not be coerced to a number)\\n * this function returns null.\\n * @param {*} maybeNumber\\n * @return {?number}\\n */\\nfunction ensureNumber(maybeNumber) {\\n try {\\n switch (typeof maybeNumber) {\\n case 'number':\\n case 'bigint':\\n return maybeNumber;\\n }\\n var converted = Number(maybeNumber);\\n return !isNaN(converted) ? converted : null;\\n } catch (e) {}\\n return null;\\n}\\n\\n/**\\n * Sets the supplied object's toStringTag IFF\\n * self.Symbol && self.Symbol.toStringTag are defined\\n * @param {Object} clazz\\n * @param {string} tag\\n */\\nfunction addToStringTagToClass(clazz, tag) {\\n if (\\n typeof self.Symbol !== 'undefined' &&\\n typeof self.Symbol.toStringTag !== 'undefined'\\n ) {\\n Object.defineProperty(clazz.prototype, self.Symbol.toStringTag, {\\n value: tag,\\n enumerable: false\\n });\\n }\\n}\\n\\n/**\\n * Binds every function this, except the constructor, of the supplied object\\n * to the instance of the supplied object\\n * @param {Object} clazz\\n */\\nfunction autobind(clazz) {\\n var proto = clazz.__proto__ || clazz.constructor.prototype || clazz.prototype;\\n var clazzProps = Object.getOwnPropertyNames(proto);\\n var len = clazzProps.length;\\n var prop;\\n var propValue;\\n for (var i = 0; i < len; i++) {\\n prop = clazzProps[i];\\n propValue = clazz[prop];\\n if (prop !== 'constructor' && typeof propValue === 'function') {\\n clazz[prop] = propValue.bind(clazz);\\n }\\n }\\n}\\n\\n/**\\n * Because we overriding specific interfaces (e.g. Storage) that do not expose\\n * an constructor only an interface object with our own we must have a way\\n * to indicate to our overrides when it is proper to throw exceptions\\n * @type {{yes: boolean}}\\n */\\nvar ThrowExceptions = { yes: false };\\n\\n\\n//# sourceURL=webpack:///./node_modules/wombat/src/wombatUtils.js?\");\n\n/***/ })\n\n/******/ })));"}),this.staticData.set(this.staticPrefix+"wombatWorkers.js",{type:"application/javascript",content:"/**\n * Mini wombat for performing URL rewriting within the\n * Web/Shared/Service Worker context\n * @param {Object} info\n * @return {WBWombat}\n */\nfunction WBWombat(info) {\n if (!(this instanceof WBWombat)) return new WBWombat(info);\n /** @type {Object} */\n this.info = info;\n this.initImportScriptsRewrite();\n this.initHTTPOverrides();\n this.initClientApisOverride();\n this.initCacheApisOverride();\n}\n\n/**\n * Returns T/F indicating if the supplied URL is not to be rewritten\n * @param {string} url\n * @return {boolean}\n */\nWBWombat.prototype.noRewrite = function(url) {\n return (\n !url ||\n url.indexOf('blob:') === 0 ||\n url.indexOf('javascript:') === 0 ||\n url.indexOf('data:') === 0 ||\n url.indexOf(this.info.prefix) === 0\n );\n};\n\n/**\n * Returns T/F indicating if the supplied URL is an relative URL\n * @param {string} url\n * @return {boolean}\n */\nWBWombat.prototype.isRelURL = function(url) {\n return url.indexOf('/') === 0 || url.indexOf('http:') !== 0;\n};\n\n/**\n * Attempts to resolve the supplied relative URL against\n * the origin this worker was created on\n * @param {string} maybeRelURL\n * @param {string} against\n * @return {string}\n */\nWBWombat.prototype.maybeResolveURL = function(maybeRelURL, against) {\n if (!against) return maybeRelURL;\n try {\n var resolved = new URL(maybeRelURL, against);\n return resolved.href;\n } catch (e) {}\n return maybeRelURL;\n};\n\n/**\n * Returns null to indicate that the supplied URL is not to be rewritten.\n * Otherwise returns a URL that can be rewritten\n * @param {*} url\n * @param {string} resolveAgainst\n * @return {?string}\n */\nWBWombat.prototype.ensureURL = function(url, resolveAgainst) {\n if (!url) return url;\n var newURL;\n switch (typeof url) {\n case 'string':\n newURL = url;\n break;\n case 'object':\n newURL = url.toString();\n break;\n default:\n return null;\n }\n if (this.noRewrite(newURL)) return null;\n if (this.isRelURL(newURL)) {\n return this.maybeResolveURL(newURL, resolveAgainst);\n }\n\n // if url starts with current origin, but not properly rewritten, rewrite against current baseUr\n if (newURL.indexOf(self.location.origin) === 0) {\n return this.maybeResolveURL(newURL.slice(self.location.origin.length), resolveAgainst);\n }\n return newURL;\n};\n\n/**\n * Rewrites the supplied URL\n * @param {string} url\n * @return {string}\n */\nWBWombat.prototype.rewriteURL = function(url) {\n var rwURL = this.ensureURL(url, this.info.originalURL);\n if (!rwURL) return url;\n if (this.info.prefixMod) {\n return this.info.prefixMod + rwURL;\n }\n return rwURL;\n};\n\n/**\n * Rewrites the supplied URL of an controlled page using the mp\\_ modifier\n * @param {string} url\n * @param {WindowClient} [client]\n * @return {string}\n */\nWBWombat.prototype.rewriteClientWindowURL = function(url, client) {\n var rwURL = this.ensureURL(url, client ? client.url : this.info.originalURL);\n if (!rwURL) return url;\n if (this.info.prefix) {\n return this.info.prefix + 'mp_/' + rwURL;\n }\n return rwURL;\n};\n\n/**\n * Mini url rewriter specifically for rewriting web sockets\n * @param {?string} originalURL\n * @return {string}\n */\nWBWombat.prototype.rewriteWSURL = function(originalURL) {\n // If undefined, just return it\n if (!originalURL) return originalURL;\n\n var urltype_ = typeof originalURL;\n var url = originalURL;\n\n // If object, use toString\n if (urltype_ === 'object') {\n url = originalURL.toString();\n } else if (urltype_ !== 'string') {\n return originalURL;\n }\n\n // empty string check\n if (!url) return url;\n\n var wsScheme = 'ws://';\n var wssScheme = 'wss://';\n var https = 'https://';\n\n var wbSecure = this.info.prefix.indexOf(https) === 0;\n var wbPrefix =\n this.info.prefix.replace(\n wbSecure ? https : 'http://',\n wbSecure ? wssScheme : wsScheme\n ) + 'ws_/';\n return wbPrefix + url;\n};\n\n/**\n * Rewrites all URLs in the supplied arguments object\n * @param {Object} argsObj\n * @return {Array<string>}\n */\nWBWombat.prototype.rewriteArgs = function(argsObj) {\n // recreate the original arguments object just with URLs rewritten\n var newArgObj = new Array(argsObj.length);\n for (var i = 0; i < newArgObj.length; i++) {\n newArgObj[i] = this.rewriteURL(argsObj[i]);\n }\n return newArgObj;\n};\n\n/**\n * Rewrites the input to one of the Fetch APIs\n * @param {*|string|Request} input\n * @return {*|string|Request}\n */\nWBWombat.prototype.rewriteFetchApi = function(input) {\n var rwInput = input;\n switch (typeof input) {\n case 'string':\n rwInput = this.rewriteURL(input);\n break;\n case 'object':\n if (input.url) {\n var new_url = this.rewriteURL(input.url);\n if (new_url !== input.url) {\n // not much we can do here Request.url is read only\n // https://developer.mozilla.org/en-US/docs/Web/API/Request/url\n rwInput = new Request(new_url, input);\n }\n } else if (input.href) {\n // it is likely that input is either self.location or self.URL\n // we cant do anything here so just let it go\n rwInput = input.href;\n }\n break;\n }\n return rwInput;\n};\n\n/**\n * Rewrites the input to one of the Cache APIs\n * @param {*|string|Request} request\n * @return {*|string|Request}\n */\nWBWombat.prototype.rewriteCacheApi = function(request) {\n var rwRequest = request;\n if (typeof request === 'string') {\n rwRequest = this.rewriteURL(request);\n }\n return rwRequest;\n};\n\n/**\n * Applies an override to the importScripts function\n * @see https://html.spec.whatwg.org/multipage/workers.html#dom-workerglobalscope-importscripts\n */\nWBWombat.prototype.initImportScriptsRewrite = function() {\n if (!self.importScripts) return;\n var wombat = this;\n var origImportScripts = self.importScripts;\n self.importScripts = function importScripts() {\n // rewrite the arguments object and call original function via fn.apply\n var rwArgs = wombat.rewriteArgs(arguments);\n return origImportScripts.apply(this, rwArgs);\n };\n};\n\n/**\n * Applies overrides to the XMLHttpRequest.open and XMLHttpRequest.responseURL\n * in order to ensure URLs are rewritten.\n *\n * Applies an override to window.fetch in order to rewrite URLs and URLs of\n * the supplied Request objects used as arguments to fetch.\n *\n * Applies overrides to window.Request, window.Response, window.EventSource,\n * and window.WebSocket in order to ensure URLs they operate on are rewritten.\n *\n * @see https://xhr.spec.whatwg.org/\n * @see https://fetch.spec.whatwg.org/\n * @see https://html.spec.whatwg.org/multipage/web-sockets.html#websocket\n * @see https://html.spec.whatwg.org/multipage/server-sent-events.html#the-eventsource-interface\n */\nWBWombat.prototype.initHTTPOverrides = function() {\n var wombat = this;\n if (\n self.XMLHttpRequest &&\n self.XMLHttpRequest.prototype &&\n self.XMLHttpRequest.prototype.open\n ) {\n var oXHROpen = self.XMLHttpRequest.prototype.open;\n self.XMLHttpRequest.prototype.open = function open(\n method,\n url,\n async,\n user,\n password\n ) {\n var rwURL = wombat.rewriteURL(url);\n var openAsync = true;\n if (async != null && !async) openAsync = false;\n oXHROpen.call(this, method, rwURL, openAsync, user, password);\n if (rwURL.indexOf('data:') === -1) {\n this.setRequestHeader('X-Pywb-Requested-With', 'XMLHttpRequest');\n }\n };\n }\n\n if (self.fetch != null) {\n // this fetch is Worker.fetch\n var orig_fetch = self.fetch;\n self.fetch = function fetch(input, init_opts) {\n var rwInput = wombat.rewriteFetchApi(input);\n var newInitOpts = init_opts || {};\n newInitOpts['credentials'] = 'include';\n return orig_fetch.call(this, rwInput, newInitOpts);\n };\n }\n\n if (self.Request && self.Request.prototype) {\n var orig_request = self.Request;\n self.Request = (function(Request_) {\n return function Request(input, init_opts) {\n var newInitOpts = init_opts || {};\n var newInput = wombat.rewriteFetchApi(input);\n newInitOpts['credentials'] = 'include';\n return new Request_(newInput, newInitOpts);\n };\n })(self.Request);\n self.Request.prototype = orig_request.prototype;\n }\n\n if (self.Response && self.Response.prototype) {\n var originalRedirect = self.Response.prototype.redirect;\n self.Response.prototype.redirect = function redirect(url, status) {\n var rwURL = wombat.rewriteUrl(url);\n return originalRedirect.call(this, rwURL, status);\n };\n }\n\n if (self.EventSource && self.EventSource.prototype) {\n var origEventSource = self.EventSource;\n self.EventSource = (function(EventSource_) {\n return function EventSource(url, configuration) {\n var rwURL = url;\n if (url != null) {\n rwURL = wombat.rewriteUrl(url);\n }\n return new EventSource_(rwURL, configuration);\n };\n })(self.EventSource);\n self.EventSource.prototype = origEventSource.prototype;\n Object.defineProperty(self.EventSource.prototype, 'constructor', {\n value: self.EventSource\n });\n }\n\n if (self.WebSocket && self.WebSocket.prototype) {\n var origWebSocket = self.WebSocket;\n self.WebSocket = (function(WebSocket_) {\n return function WebSocket(url, configuration) {\n var rwURL = url;\n if (url != null) {\n rwURL = wombat.rewriteWSURL(url);\n }\n return new WebSocket_(rwURL, configuration);\n };\n })(self.WebSocket);\n self.WebSocket.prototype = origWebSocket.prototype;\n Object.defineProperty(self.WebSocket.prototype, 'constructor', {\n value: self.WebSocket\n });\n }\n};\n\n/**\n * Applies an override to Clients.openWindow and WindowClient.navigate that rewrites\n * the supplied URL that represents a controlled window\n * @see https://w3c.github.io/ServiceWorker/#window-client-interface\n * @see https://w3c.github.io/ServiceWorker/#clients-interface\n */\nWBWombat.prototype.initClientApisOverride = function() {\n var wombat = this;\n if (\n self.Clients &&\n self.Clients.prototype &&\n self.Clients.prototype.openWindow\n ) {\n var oClientsOpenWindow = self.Clients.prototype.openWindow;\n self.Clients.prototype.openWindow = function openWindow(url) {\n var rwURL = wombat.rewriteClientWindowURL(url);\n return oClientsOpenWindow.call(this, rwURL);\n };\n }\n\n if (\n self.WindowClient &&\n self.WindowClient.prototype &&\n self.WindowClient.prototype.navigate\n ) {\n var oWinClientNavigate = self.WindowClient.prototype.navigate;\n self.WindowClient.prototype.navigate = function navigate(url) {\n var rwURL = wombat.rewriteClientWindowURL(url, this);\n return oWinClientNavigate.call(this, rwURL);\n };\n }\n};\n\n/**\n * Applies overrides to the CachStorage and Cache interfaces in order\n * to rewrite the URLs they operate on\n * @see https://w3c.github.io/ServiceWorker/#cachestorage\n * @see https://w3c.github.io/ServiceWorker/#cache-interface\n */\nWBWombat.prototype.initCacheApisOverride = function() {\n var wombat = this;\n if (\n self.CacheStorage &&\n self.CacheStorage.prototype &&\n self.CacheStorage.prototype.match\n ) {\n var oCacheStorageMatch = self.CacheStorage.prototype.match;\n self.CacheStorage.prototype.match = function match(request, options) {\n var rwRequest = wombat.rewriteCacheApi(request);\n return oCacheStorageMatch.call(this, rwRequest, options);\n };\n }\n\n if (self.Cache && self.Cache.prototype) {\n if (self.Cache.prototype.match) {\n var oCacheMatch = self.Cache.prototype.match;\n self.Cache.prototype.match = function match(request, options) {\n var rwRequest = wombat.rewriteCacheApi(request);\n return oCacheMatch.call(this, rwRequest, options);\n };\n }\n\n if (self.Cache.prototype.matchAll) {\n var oCacheMatchAll = self.Cache.prototype.matchAll;\n self.Cache.prototype.matchAll = function matchAll(request, options) {\n var rwRequest = wombat.rewriteCacheApi(request);\n return oCacheMatchAll.call(this, rwRequest, options);\n };\n }\n\n if (self.Cache.prototype.add) {\n var oCacheAdd = self.Cache.prototype.add;\n self.Cache.prototype.add = function add(request, options) {\n var rwRequest = wombat.rewriteCacheApi(request);\n return oCacheAdd.call(this, rwRequest, options);\n };\n }\n\n if (self.Cache.prototype.addAll) {\n var oCacheAddAll = self.Cache.prototype.addAll;\n self.Cache.prototype.addAll = function addAll(requests) {\n var rwRequests = requests;\n if (Array.isArray(requests)) {\n rwRequests = new Array(requests.length);\n for (var i = 0; i < requests.length; i++) {\n rwRequests[i] = wombat.rewriteCacheApi(requests[i]);\n }\n }\n return oCacheAddAll.call(this, rwRequests);\n };\n }\n\n if (self.Cache.prototype.put) {\n var oCachePut = self.Cache.prototype.put;\n self.Cache.prototype.put = function put(request, response) {\n var rwRequest = wombat.rewriteCacheApi(request);\n return oCachePut.call(this, rwRequest, response);\n };\n }\n\n if (self.Cache.prototype.delete) {\n var oCacheDelete = self.Cache.prototype.delete;\n self.Cache.prototype.delete = function newCacheDelete(request, options) {\n var rwRequest = wombat.rewriteCacheApi(request);\n return oCacheDelete.call(this, rwRequest, options);\n };\n }\n\n if (self.Cache.prototype.keys) {\n var oCacheKeys = self.Cache.prototype.keys;\n self.Cache.prototype.keys = function keys(request, options) {\n var rwRequest = wombat.rewriteCacheApi(request);\n return oCacheKeys.call(this, rwRequest, options);\n };\n }\n }\n};\n\nself.WBWombat = WBWombat;\n"}),this.collections=new fe(r,t.get("root")),this.collections.loadAll(t.get("dbColl")),this.api=new pe(this.collections),this.apiPrefix=this.replayPrefix+"api/",this.allowRewrittenCache=!!t.get("allowCache"),this.stats=t.get("stats")?new F:null,self.addEventListener("install",e=>{self.skipWaiting()}),self.addEventListener("activate",e=>{e.waitUntil(self.clients.claim()),console.log("Activate!")}),self.addEventListener("fetch",e=>{e.respondWith(this.handleFetch(e))}),self.addEventListener("message",e=>{"reload_all"===e.data.msg_type&&this.collections.loadAll()})}handleFetch(e){const t=e.request.url;if(!t.startsWith(this.prefix))return this.defaultFetch(e.request);if(this.collections.root&&t.slice(this.prefix.length).indexOf("/")<0)return this.defaultFetch(e.request);if(t.startsWith(this.replayPrefix)&&!t.startsWith(this.staticPrefix))return this.getResponseFor(e.request,e);const n=new URL(t);n.search="",n.hash="";const r=n.href;for(const e of this.staticData.keys())if(e===r){const{content:t,type:n}=this.staticData.get(e);return new Response(t,{headers:{"Content-Type":n}})}return("http:"==n.protocol||"https:"==n.protocol)&&n.pathname.indexOf("/",1)<0?this.handleOffline(e.request):this.defaultFetch(e.request)}defaultFetch(e){const t={};return"only-if-cached"===e.cache&&"same-origin"!==e.mode&&(t.cache="default"),self.fetch(e,t)}async ensureCached(e){const t=await caches.open("wabac-offline");for(let n of e){n=new URL(n,self.location.href).href;let e=await t.match(n,{ignoreSearch:!0});if(!e)try{e=await this.defaultFetch(n),await t.put(n,e)}catch(e){console.warn("Failed to Auto Cache: "+n,e)}}}async handleOffline(e){let t=null;const n=await caches.open("wabac-offline");try{t=await this.defaultFetch(e)}catch(r){return t=await n.match(e,{ignoreSearch:!0}),t||(t=Object(o.k)(e,"Sorry, this url was not cached for offline use")),t}if(e.url.startsWith(this.prefix+"?"))return t;if(200===t.status){const r=t.clone();await n.put(e,r)}else console.warn(`Not Cacheing ${e.url} - Status ${t.status}`);return t}async getResponseFor(e,t){if(e.url.startsWith(this.apiPrefix))return this.stats&&e.url.startsWith(this.apiPrefix+"stats.json")?await this.stats.getStats(t):await this.api.apiResponse(e.url.slice(this.apiPrefix.length),e.method,e);"POST"===e.method&&(e=await this.toGetRequest(e)),await this.collections.inited;let n=null;const r=Object(o.h)(e),i=e.headers.get("range");try{if(this.allowRewrittenCache&&!i&&(n=await self.caches.match(e),n&&!!n.headers.get("x-wabac-is-ajax-req")===r))return n}catch(e){n=null}let s=this.collections.root;s||(s=e.url.slice(this.replayPrefix.length).split("/",1)[0]);const a=await this.collections.getColl(s);if(a&&(n=await a.handleRequest(e,t))){if(this.stats&&this.stats.updateStats(n.date,n.status,e,t),this.allowRewrittenCache&&200===n.status)try{const e=await self.caches.open("wabac-"+a.name);r&&n.headers.set("x-wabac-is-ajax-req","true");const t=n.clone();await e.put(getRequest,t)}catch(e){console.warn(e)}return n}return i&&console.log("Not Found Range!: "+i),Object(o.k)(e)}async toGetRequest(e){let t=null;const n=e.headers.get("Content-Type");if("POST"===e.method||"PUT"===e.method)switch(n){case"application/x-www-form-urlencoded":t=await e.text()}const r=e.url+(e.url.indexOf("?")>=0?"&":"?")+t,i={method:"GET",headers:e.headers,mode:"navigate"===e.mode?"same-origin":e.mode,credentials:e.credentials,cache:e.cache,redirect:e.redirect,referrer:e.referrer,integrity:e.integrity};return new Request(r,i)}}},function(e,t,n){"use strict";n.r(t);var r='<!doctype html>\n<html class="no-overflow">\n<head>\n<link rel="manifest" href="/webmanifest.json">\n<link rel="icon" href="build/icon.png" type="image/png" />\n<title>ReplayWeb.page</title>\n<meta name="viewport" content="width=device-width, initial-scale=1">\n<script src="./ui.js"><\/script>\n</head>\n<body>\n<replay-app-main></replay-app-main>\n</body>\n</html>\n';if(self.registration){const e=new Map,t=self.registration.scope;e.set(t,{type:"text/html",content:r}),e.set(t+"index.html",{type:"text/html",content:r});const{SWReplay:i}=n(223);self.sw=new i(e)}else if(self.postMessage){const{WorkerLoader:e}=n(58);new e(self)}}])); |