replaywebpage 2.2.2 → 2.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/sw.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! sw.js (wabac.js 2.20.3) is part of Webrecorder project. Copyright (C) 2020-2024, Webrecorder Software. Licensed under the Affero General Public License v3. */var t={9742:(t,e)=>{e.byteLength=function(t){var e=a(t),r=e[0],i=e[1];return 3*(r+i)/4-i},e.toByteArray=function(t){var e,r,s=a(t),o=s[0],c=s[1],l=new n(function(t,e,r){return 3*(e+r)/4-r}(0,o,c)),h=0,u=c>0?o-4:o;for(r=0;r<u;r+=4)e=i[t.charCodeAt(r)]<<18|i[t.charCodeAt(r+1)]<<12|i[t.charCodeAt(r+2)]<<6|i[t.charCodeAt(r+3)],l[h++]=e>>16&255,l[h++]=e>>8&255,l[h++]=255&e;return 2===c&&(e=i[t.charCodeAt(r)]<<2|i[t.charCodeAt(r+1)]>>4,l[h++]=255&e),1===c&&(e=i[t.charCodeAt(r)]<<10|i[t.charCodeAt(r+1)]<<4|i[t.charCodeAt(r+2)]>>2,l[h++]=e>>8&255,l[h++]=255&e),l},e.fromByteArray=function(t){for(var e,i=t.length,n=i%3,s=[],o=16383,a=0,l=i-n;a<l;a+=o)s.push(c(t,a,a+o>l?l:a+o));return 1===n?(e=t[i-1],s.push(r[e>>2]+r[e<<4&63]+"==")):2===n&&(e=(t[i-2]<<8)+t[i-1],s.push(r[e>>10]+r[e>>4&63]+r[e<<2&63]+"=")),s.join("")};for(var r=[],i=[],n="undefined"!=typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0;o<64;++o)r[o]=s[o],i[s.charCodeAt(o)]=o;function a(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function c(t,e,i){for(var n,s,o=[],a=e;a<i;a+=3)n=(t[a]<<16&16711680)+(t[a+1]<<8&65280)+(255&t[a+2]),o.push(r[(s=n)>>18&63]+r[s>>12&63]+r[s>>6&63]+r[63&s]);return o.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},4181:t=>{var e=4096,r=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 i(t){this.buf_=new Uint8Array(8224),this.input_=t,this.reset()}i.READ_SIZE=e,i.IBUF_MASK=8191,i.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 t=0;t<4;t++)this.val_|=this.buf_[this.pos_]<<8*t,++this.pos_;return this.bit_end_pos_>0},i.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 t=this.buf_ptr_,r=this.input_.read(this.buf_,t,e);if(r<0)throw new Error("Unexpected end of input");if(r<e){this.eos_=1;for(var i=0;i<32;i++)this.buf_[t+r+i]=0}if(0===t){for(i=0;i<32;i++)this.buf_[8192+i]=this.buf_[i];this.buf_ptr_=e}else this.buf_ptr_=0;this.bit_end_pos_+=r<<3}},i.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},i.prototype.readBits=function(t){32-this.bit_pos_<t&&this.fillBitWindow();var e=this.val_>>>this.bit_pos_&r[t];return this.bit_pos_+=t,e},t.exports=i},7080:(t,e)=>{e.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]),e.lookupOffsets=new Uint16Array([1024,1536,1280,1536,0,256,768,512])},6450:(t,e,r)=>{var i=r(6154).g,n=r(6154).j,s=r(4181),o=r(5139),a=r(966).h,c=r(966).g,l=r(7080),h=r(8435),u=r(2973),p=1080,d=new Uint8Array([1,2,3,4,0,5,17,6,16,7,8,9,10,11,12,13,14,15]),f=new Uint8Array([3,2,1,0,3,3,3,3,3,3,2,2,2,2,2,2]),g=new Int8Array([0,0,0,0,-1,1,-2,2,-3,3,-1,1,-2,2,-3,3]),y=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 m(t){var e;return 0===t.readBits(1)?16:(e=t.readBits(3))>0?17+e:(e=t.readBits(3))>0?8+e:17}function w(t){if(t.readBits(1)){var e=t.readBits(3);return 0===e?1:t.readBits(e)+(1<<e)}return 0}function b(){this.meta_block_length=0,this.input_end=0,this.is_uncompressed=0,this.is_metadata=!1}function A(t){var e,r,i,n=new b;if(n.input_end=t.readBits(1),n.input_end&&t.readBits(1))return n;if(7===(e=t.readBits(2)+4)){if(n.is_metadata=!0,0!==t.readBits(1))throw new Error("Invalid reserved bit");if(0===(r=t.readBits(2)))return n;for(i=0;i<r;i++){var s=t.readBits(8);if(i+1===r&&r>1&&0===s)throw new Error("Invalid size byte");n.meta_block_length|=s<<8*i}}else for(i=0;i<e;++i){var o=t.readBits(4);if(i+1===e&&e>4&&0===o)throw new Error("Invalid size nibble");n.meta_block_length|=o<<4*i}return++n.meta_block_length,n.input_end||n.is_metadata||(n.is_uncompressed=t.readBits(1)),n}function v(t,e,r){var i;return r.fillBitWindow(),(i=t[e+=r.val_>>>r.bit_pos_&255].bits-8)>0&&(r.bit_pos_+=8,e+=t[e].value,e+=r.val_>>>r.bit_pos_&(1<<i)-1),r.bit_pos_+=t[e].bits,t[e].value}function _(t,e,r,i){var n,s,o=new Uint8Array(t);if(i.readMoreInput(),1===(s=i.readBits(2))){for(var l=t-1,h=0,u=new Int32Array(4),p=i.readBits(2)+1;l;)l>>=1,++h;for(f=0;f<p;++f)u[f]=i.readBits(h)%t,o[u[f]]=2;switch(o[u[0]]=1,p){case 1:break;case 3:if(u[0]===u[1]||u[0]===u[2]||u[1]===u[2])throw new Error("[ReadHuffmanCode] invalid symbols");break;case 2:if(u[0]===u[1])throw new Error("[ReadHuffmanCode] invalid symbols");o[u[1]]=1;break;case 4:if(u[0]===u[1]||u[0]===u[2]||u[0]===u[3]||u[1]===u[2]||u[1]===u[3]||u[2]===u[3])throw new Error("[ReadHuffmanCode] invalid symbols");i.readBits(1)?(o[u[2]]=3,o[u[3]]=3):o[u[0]]=2}}else{var f,g=new Uint8Array(18),y=32,m=0,w=[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&&y>0;++f){var b,A=d[f],v=0;i.fillBitWindow(),v+=i.val_>>>i.bit_pos_&15,i.bit_pos_+=w[v].bits,b=w[v].value,g[A]=b,0!==b&&(y-=32>>b,++m)}if(1!==m&&0!==y)throw new Error("[ReadHuffmanCode] invalid num_codes or space");!function(t,e,r,i){for(var n=0,s=8,o=0,l=0,h=32768,u=[],p=0;p<32;p++)u.push(new a(0,0));for(c(u,0,5,t,18);n<e&&h>0;){var d,f=0;if(i.readMoreInput(),i.fillBitWindow(),f+=i.val_>>>i.bit_pos_&31,i.bit_pos_+=u[f].bits,(d=255&u[f].value)<16)o=0,r[n++]=d,0!==d&&(s=d,h-=32768>>d);else{var g,y,m=d-14,w=0;if(16===d&&(w=s),l!==w&&(o=0,l=w),g=o,o>0&&(o-=2,o<<=m),n+(y=(o+=i.readBits(m)+3)-g)>e)throw new Error("[ReadHuffmanCodeLengths] symbol + repeat_delta > num_symbols");for(var b=0;b<y;b++)r[n+b]=l;n+=y,0!==l&&(h-=y<<15-l)}}if(0!==h)throw new Error("[ReadHuffmanCodeLengths] space = "+h);for(;n<e;n++)r[n]=0}(g,t,o,i)}if(0===(n=c(e,r,8,o,t)))throw new Error("[ReadHuffmanCode] BuildHuffmanTable failed: ");return n}function E(t,e,r){var i,n;return i=v(t,e,r),n=h.kBlockLengthPrefixCode[i].nbits,h.kBlockLengthPrefixCode[i].offset+r.readBits(n)}function S(t,e,r){var i;return t<16?(r+=f[t],i=e[r&=3]+g[t]):i=t-16+1,i}function T(t,e){for(var r=t[e],i=e;i;--i)t[i]=t[i-1];t[0]=r}function x(t,e){this.alphabet_size=t,this.num_htrees=e,this.codes=new Array(e+e*y[t+31>>>5]),this.htrees=new Uint32Array(e)}function C(t,e){var r,i,n={num_htrees:null,context_map:null},s=0;e.readMoreInput();var o=n.num_htrees=w(e)+1,c=n.context_map=new Uint8Array(t);if(o<=1)return n;for(e.readBits(1)&&(s=e.readBits(4)+1),r=[],i=0;i<p;i++)r[i]=new a(0,0);for(_(o+s,r,0,e),i=0;i<t;){var l;if(e.readMoreInput(),0===(l=v(r,0,e)))c[i]=0,++i;else if(l<=s)for(var h=1+(1<<l)+e.readBits(l);--h;){if(i>=t)throw new Error("[DecodeContextMap] i >= context_map_size");c[i]=0,++i}else c[i]=l-s,++i}return e.readBits(1)&&function(t,e){var r,i=new Uint8Array(256);for(r=0;r<256;++r)i[r]=r;for(r=0;r<e;++r){var n=t[r];t[r]=i[n],n&&T(i,n)}}(c,t),n}function I(t,e,r,i,n,s,o){var a,c=2*r,l=r,h=v(e,r*p,o);(a=0===h?n[c+(1&s[l])]:1===h?n[c+(s[l]-1&1)]+1:h-2)>=t&&(a-=t),i[r]=a,n[c+(1&s[l])]=a,++s[l]}function R(t,e,r,i,n,o){var a,c=n+1,l=r&n,h=o.pos_&s.IBUF_MASK;if(e<8||o.bit_pos_+(e<<3)<o.bit_end_pos_)for(;e-- >0;)o.readMoreInput(),i[l++]=o.readBits(8),l===c&&(t.write(i,c),l=0);else{if(o.bit_end_pos_<32)throw new Error("[CopyUncompressedBlockToOutput] br.bit_end_pos_ < 32");for(;o.bit_pos_<32;)i[l]=o.val_>>>o.bit_pos_,o.bit_pos_+=8,++l,--e;if(h+(a=o.bit_end_pos_-o.bit_pos_>>3)>s.IBUF_MASK){for(var u=s.IBUF_MASK+1-h,p=0;p<u;p++)i[l+p]=o.buf_[h+p];a-=u,l+=u,e-=u,h=0}for(p=0;p<a;p++)i[l+p]=o.buf_[h+p];if(e-=a,(l+=a)>=c)for(t.write(i,c),l-=c,p=0;p<l;p++)i[p]=i[c+p];for(;l+e>=c;){if(a=c-l,o.input_.read(i,l,a)<a)throw new Error("[CopyUncompressedBlockToOutput] not enough bytes");t.write(i,c),e-=a,l=0}if(o.input_.read(i,l,e)<e)throw new Error("[CopyUncompressedBlockToOutput] not enough bytes");o.reset()}}function k(t){var e=t.bit_pos_+7&-8;return 0==t.readBits(e-t.bit_pos_)}function N(t){var e=new i(t),r=new s(e);return m(r),A(r).meta_block_length}function O(t,e){var r,i,n,c,d,f,g,y,b,T,N=0,O=0,B=0,P=[16,15,11,4],D=0,L=0,U=0,M=[new x(0,0),new x(0,0),new x(0,0)],F=128+s.READ_SIZE;n=(1<<(i=m(T=new s(t))))-16,d=(c=1<<i)-1,f=new Uint8Array(c+F+o.maxDictionaryWordLength),g=c,y=[],b=[];for(var H=0;H<3240;H++)y[H]=new a(0,0),b[H]=new a(0,0);for(;!O;){var j,W,V,G,z,q,Q,K,Y,J,X,Z=0,$=[1<<28,1<<28,1<<28],tt=[0],et=[1,1,1],rt=[0,1,0,1,0,1],it=[0],nt=null,st=null,ot=0,at=null,ct=0,lt=0,ht=0;for(r=0;r<3;++r)M[r].codes=null,M[r].htrees=null;T.readMoreInput();var ut=A(T);if(N+(Z=ut.meta_block_length)>e.buffer.length){var pt=new Uint8Array(N+Z);pt.set(e.buffer),e.buffer=pt}if(O=ut.input_end,j=ut.is_uncompressed,ut.is_metadata)for(k(T);Z>0;--Z)T.readMoreInput(),T.readBits(8);else if(0!==Z)if(j)T.bit_pos_=T.bit_pos_+7&-8,R(e,Z,N,f,d,T),N+=Z;else{for(r=0;r<3;++r)et[r]=w(T)+1,et[r]>=2&&(_(et[r]+2,y,r*p,T),_(26,b,r*p,T),$[r]=E(b,r*p,T),it[r]=1);for(T.readMoreInput(),G=(1<<(W=T.readBits(2)))-1,z=(V=16+(T.readBits(4)<<W))+(48<<W),nt=new Uint8Array(et[0]),r=0;r<et[0];++r)T.readMoreInput(),nt[r]=T.readBits(2)<<1;var dt=C(et[0]<<6,T);Q=dt.num_htrees,q=dt.context_map;var ft=C(et[2]<<2,T);for(Y=ft.num_htrees,K=ft.context_map,M[0]=new x(256,Q),M[1]=new x(704,et[1]),M[2]=new x(z,Y),r=0;r<3;++r)M[r].decode(T);for(st=0,at=0,J=nt[tt[0]],lt=l.lookupOffsets[J],ht=l.lookupOffsets[J+1],X=M[1].htrees[0];Z>0;){var gt,yt,mt,wt,bt,At,vt,_t,Et,St,Tt,xt;for(T.readMoreInput(),0===$[1]&&(I(et[1],y,1,tt,rt,it,T),$[1]=E(b,p,T),X=M[1].htrees[tt[1]]),--$[1],(yt=(gt=v(M[1].codes,X,T))>>6)>=2?(yt-=2,vt=-1):vt=0,mt=h.kInsertRangeLut[yt]+(gt>>3&7),wt=h.kCopyRangeLut[yt]+(7&gt),bt=h.kInsertLengthPrefixCode[mt].offset+T.readBits(h.kInsertLengthPrefixCode[mt].nbits),At=h.kCopyLengthPrefixCode[wt].offset+T.readBits(h.kCopyLengthPrefixCode[wt].nbits),L=f[N-1&d],U=f[N-2&d],Et=0;Et<bt;++Et)T.readMoreInput(),0===$[0]&&(I(et[0],y,0,tt,rt,it,T),$[0]=E(b,0,T),st=tt[0]<<6,J=nt[tt[0]],lt=l.lookupOffsets[J],ht=l.lookupOffsets[J+1]),ot=q[st+(l.lookup[lt+L]|l.lookup[ht+U])],--$[0],U=L,L=v(M[0].codes,M[0].htrees[ot],T),f[N&d]=L,(N&d)===d&&e.write(f,c),++N;if((Z-=bt)<=0)break;if(vt<0&&(T.readMoreInput(),0===$[2]&&(I(et[2],y,2,tt,rt,it,T),$[2]=E(b,2160,T),at=tt[2]<<2),--$[2],ct=K[at+(255&(At>4?3:At-2))],(vt=v(M[2].codes,M[2].htrees[ct],T))>=V&&(xt=(vt-=V)&G,vt=V+((Ct=(2+(1&(vt>>=W))<<(Tt=1+(vt>>1)))-4)+T.readBits(Tt)<<W)+xt)),(_t=S(vt,P,D))<0)throw new Error("[BrotliDecompress] invalid distance");if(St=N&d,_t>(B=N<n&&B!==n?N:n)){if(!(At>=o.minDictionaryWordLength&&At<=o.maxDictionaryWordLength))throw new Error("Invalid backward reference. pos: "+N+" distance: "+_t+" len: "+At+" bytes left: "+Z);var Ct=o.offsetsByLength[At],It=_t-B-1,Rt=o.sizeBitsByLength[At],kt=It>>Rt;if(Ct+=(It&(1<<Rt)-1)*At,!(kt<u.kNumTransforms))throw new Error("Invalid backward reference. pos: "+N+" distance: "+_t+" len: "+At+" bytes left: "+Z);var Nt=u.transformDictionaryWord(f,St,Ct,At,kt);if(N+=Nt,Z-=Nt,(St+=Nt)>=g){e.write(f,c);for(var Ot=0;Ot<St-g;Ot++)f[Ot]=f[g+Ot]}}else{if(vt>0&&(P[3&D]=_t,++D),At>Z)throw new Error("Invalid backward reference. pos: "+N+" distance: "+_t+" len: "+At+" bytes left: "+Z);for(Et=0;Et<At;++Et)f[N&d]=f[N-_t&d],(N&d)===d&&e.write(f,c),++N,--Z}L=f[N-1&d],U=f[N-2&d]}N&=1073741823}}e.write(f,N&d)}x.prototype.decode=function(t){var e,r=0;for(e=0;e<this.num_htrees;++e)this.htrees[e]=r,r+=_(this.alphabet_size,this.codes,r,t)},e.BrotliDecompressBuffer=function(t,e){var r=new i(t);null==e&&(e=N(t));var s=new Uint8Array(e),o=new n(s);return O(r,o),o.pos<o.buffer.length&&(o.buffer=o.buffer.subarray(0,o.pos)),o.buffer},o.init()},5340:(t,e,r)=>{var i=r(4789);e.init=function(){return(0,r(6450).BrotliDecompressBuffer)(i.toByteArray(r(2722)))}},2722:t=>{t.exports="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"},5139:(t,e,r)=>{var i=r(5340);e.init=function(){e.dictionary=i.init()},e.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]),e.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]),e.minDictionaryWordLength=4,e.maxDictionaryWordLength=24},966:(t,e)=>{function r(t,e){this.bits=t,this.value=e}e.h=r;function i(t,e){for(var r=1<<e-1;t&r;)r>>=1;return(t&r-1)+r}function n(t,e,i,n,s){do{t[e+(n-=i)]=new r(s.bits,s.value)}while(n>0)}function s(t,e,r){for(var i=1<<e-r;e<15&&!((i-=t[e])<=0);)++e,i<<=1;return e-r}e.g=function(t,e,o,a,c){var l,h,u,p,d,f,g,y,m,w,b=e,A=new Int32Array(16),v=new Int32Array(16);for(w=new Int32Array(c),h=0;h<c;h++)A[a[h]]++;for(v[1]=0,l=1;l<15;l++)v[l+1]=v[l]+A[l];for(h=0;h<c;h++)0!==a[h]&&(w[v[a[h]]++]=h);if(m=y=1<<(g=o),1===v[15]){for(u=0;u<m;++u)t[e+u]=new r(0,65535&w[0]);return m}for(u=0,h=0,l=1,p=2;l<=o;++l,p<<=1)for(;A[l]>0;--A[l])n(t,e+u,p,y,new r(255&l,65535&w[h++])),u=i(u,l);for(f=m-1,d=-1,l=o+1,p=2;l<=15;++l,p<<=1)for(;A[l]>0;--A[l])(u&f)!==d&&(e+=y,m+=y=1<<(g=s(A,l,o)),t[b+(d=u&f)]=new r(g+o&255,e-b-d&65535)),n(t,e+(u>>o),p,y,new r(l-o&255,65535&w[h++])),u=i(u,l);return m}},8435:(t,e)=>{function r(t,e){this.offset=t,this.nbits=e}e.kBlockLengthPrefixCode=[new r(1,2),new r(5,2),new r(9,2),new r(13,2),new r(17,3),new r(25,3),new r(33,3),new r(41,3),new r(49,4),new r(65,4),new r(81,4),new r(97,4),new r(113,5),new r(145,5),new r(177,5),new r(209,5),new r(241,6),new r(305,6),new r(369,7),new r(497,8),new r(753,9),new r(1265,10),new r(2289,11),new r(4337,12),new r(8433,13),new r(16625,24)],e.kInsertLengthPrefixCode=[new r(0,0),new r(1,0),new r(2,0),new r(3,0),new r(4,0),new r(5,0),new r(6,1),new r(8,1),new r(10,2),new r(14,2),new r(18,3),new r(26,3),new r(34,4),new r(50,4),new r(66,5),new r(98,5),new r(130,6),new r(194,7),new r(322,8),new r(578,9),new r(1090,10),new r(2114,12),new r(6210,14),new r(22594,24)],e.kCopyLengthPrefixCode=[new r(2,0),new r(3,0),new r(4,0),new r(5,0),new r(6,0),new r(7,0),new r(8,0),new r(9,0),new r(10,1),new r(12,1),new r(14,2),new r(18,2),new r(22,3),new r(30,3),new r(38,4),new r(54,4),new r(70,5),new r(102,5),new r(134,6),new r(198,7),new r(326,8),new r(582,9),new r(1094,10),new r(2118,24)],e.kInsertRangeLut=[0,0,8,8,0,16,8,16,16],e.kCopyRangeLut=[0,8,0,8,16,0,16,8,16]},6154:(t,e)=>{function r(t){this.buffer=t,this.pos=0}function i(t){this.buffer=t,this.pos=0}r.prototype.read=function(t,e,r){this.pos+r>this.buffer.length&&(r=this.buffer.length-this.pos);for(var i=0;i<r;i++)t[e+i]=this.buffer[this.pos+i];return this.pos+=r,r},e.g=r,i.prototype.write=function(t,e){if(this.pos+e>this.buffer.length)throw new Error("Output buffer is not large enough");return this.buffer.set(t.subarray(0,e),this.pos),this.pos+=e,e},e.j=i},2973:(t,e,r)=>{var i=r(5139),n=10,s=11;function o(t,e,r){this.prefix=new Uint8Array(t.length),this.transform=e,this.suffix=new Uint8Array(r.length);for(var i=0;i<t.length;i++)this.prefix[i]=t.charCodeAt(i);for(i=0;i<r.length;i++)this.suffix[i]=r.charCodeAt(i)}var a=[new o("",0,""),new o("",0," "),new o(" ",0," "),new o("",12,""),new o("",n," "),new o("",0," the "),new o(" ",0,""),new o("s ",0," "),new o("",0," of "),new o("",n,""),new o("",0," and "),new o("",13,""),new o("",1,""),new o(", ",0," "),new o("",0,", "),new o(" ",n," "),new o("",0," in "),new o("",0," to "),new o("e ",0," "),new o("",0,'"'),new o("",0,"."),new o("",0,'">'),new o("",0,"\n"),new o("",3,""),new o("",0,"]"),new o("",0," for "),new o("",14,""),new o("",2,""),new o("",0," a "),new o("",0," that "),new o(" ",n,""),new o("",0,". "),new o(".",0,""),new o(" ",0,", "),new o("",15,""),new o("",0," with "),new o("",0,"'"),new o("",0," from "),new o("",0," by "),new o("",16,""),new o("",17,""),new o(" the ",0,""),new o("",4,""),new o("",0,". The "),new o("",s,""),new o("",0," on "),new o("",0," as "),new o("",0," is "),new o("",7,""),new o("",1,"ing "),new o("",0,"\n\t"),new o("",0,":"),new o(" ",0,". "),new o("",0,"ed "),new o("",20,""),new o("",18,""),new o("",6,""),new o("",0,"("),new o("",n,", "),new o("",8,""),new o("",0," at "),new o("",0,"ly "),new o(" the ",0," of "),new o("",5,""),new o("",9,""),new o(" ",n,", "),new o("",n,'"'),new o(".",0,"("),new o("",s," "),new o("",n,'">'),new o("",0,'="'),new o(" ",0,"."),new o(".com/",0,""),new o(" the ",0," of the "),new o("",n,"'"),new o("",0,". This "),new o("",0,","),new o(".",0," "),new o("",n,"("),new o("",n,"."),new o("",0," not "),new o(" ",0,'="'),new o("",0,"er "),new o(" ",s," "),new o("",0,"al "),new o(" ",s,""),new o("",0,"='"),new o("",s,'"'),new o("",n,". "),new o(" ",0,"("),new o("",0,"ful "),new o(" ",n,". "),new o("",0,"ive "),new o("",0,"less "),new o("",s,"'"),new o("",0,"est "),new o(" ",n,"."),new o("",s,'">'),new o(" ",0,"='"),new o("",n,","),new o("",0,"ize "),new o("",s,"."),new o(" ",0,""),new o(" ",0,","),new o("",n,'="'),new o("",s,'="'),new o("",0,"ous "),new o("",s,", "),new o("",n,"='"),new o(" ",n,","),new o(" ",s,'="'),new o(" ",s,", "),new o("",s,","),new o("",s,"("),new o("",s,". "),new o(" ",s,"."),new o("",s,"='"),new o(" ",s,". "),new o(" ",n,'="'),new o(" ",s,"='"),new o(" ",n,"='")];function c(t,e){return t[e]<192?(t[e]>=97&&t[e]<=122&&(t[e]^=32),1):t[e]<224?(t[e+1]^=32,2):(t[e+2]^=5,3)}e.kTransforms=a,e.kNumTransforms=a.length,e.transformDictionaryWord=function(t,e,r,o,l){var h,u=a[l].prefix,p=a[l].suffix,d=a[l].transform,f=d<12?0:d-11,g=0,y=e;f>o&&(f=o);for(var m=0;m<u.length;)t[e++]=u[m++];for(r+=f,o-=f,d<=9&&(o-=d),g=0;g<o;g++)t[e++]=i.dictionary[r+g];if(h=e-o,d===n)c(t,h);else if(d===s)for(;o>0;){var w=c(t,h);h+=w,o-=w}for(var b=0;b<p.length;)t[e++]=p[b++];return e-y}},7709:(t,e,r)=>{t.exports=r(6450).BrotliDecompressBuffer},4789:(t,e)=>{e.byteLength=function(t){var e=a(t),r=e[0],i=e[1];return 3*(r+i)/4-i},e.toByteArray=function(t){for(var e,r=a(t),s=r[0],o=r[1],c=new n(function(t,e,r){return 3*(e+r)/4-r}(0,s,o)),l=0,h=o>0?s-4:s,u=0;u<h;u+=4)e=i[t.charCodeAt(u)]<<18|i[t.charCodeAt(u+1)]<<12|i[t.charCodeAt(u+2)]<<6|i[t.charCodeAt(u+3)],c[l++]=e>>16&255,c[l++]=e>>8&255,c[l++]=255&e;return 2===o&&(e=i[t.charCodeAt(u)]<<2|i[t.charCodeAt(u+1)]>>4,c[l++]=255&e),1===o&&(e=i[t.charCodeAt(u)]<<10|i[t.charCodeAt(u+1)]<<4|i[t.charCodeAt(u+2)]>>2,c[l++]=e>>8&255,c[l++]=255&e),c},e.fromByteArray=function(t){for(var e,i=t.length,n=i%3,s=[],o=16383,a=0,l=i-n;a<l;a+=o)s.push(c(t,a,a+o>l?l:a+o));return 1===n?(e=t[i-1],s.push(r[e>>2]+r[e<<4&63]+"==")):2===n&&(e=(t[i-2]<<8)+t[i-1],s.push(r[e>>10]+r[e>>4&63]+r[e<<2&63]+"=")),s.join("")};for(var r=[],i=[],n="undefined"!=typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0;o<64;++o)r[o]=s[o],i[s.charCodeAt(o)]=o;function a(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function c(t,e,i){for(var n,s,o=[],a=e;a<i;a+=3)n=(t[a]<<16&16711680)+(t[a+1]<<8&65280)+(255&t[a+2]),o.push(r[(s=n)>>18&63]+r[s>>12&63]+r[s>>6&63]+r[63&s]);return o.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},8764:(t,e,r)=>{
1
+ /*! sw.js (wabac.js 2.20.6) is part of Webrecorder project. Copyright (C) 2020-2024, Webrecorder Software. Licensed under the Affero General Public License v3. */var t={9742:(t,e)=>{e.byteLength=function(t){var e=a(t),r=e[0],i=e[1];return 3*(r+i)/4-i},e.toByteArray=function(t){var e,r,s=a(t),o=s[0],c=s[1],l=new n(function(t,e,r){return 3*(e+r)/4-r}(0,o,c)),h=0,u=c>0?o-4:o;for(r=0;r<u;r+=4)e=i[t.charCodeAt(r)]<<18|i[t.charCodeAt(r+1)]<<12|i[t.charCodeAt(r+2)]<<6|i[t.charCodeAt(r+3)],l[h++]=e>>16&255,l[h++]=e>>8&255,l[h++]=255&e;return 2===c&&(e=i[t.charCodeAt(r)]<<2|i[t.charCodeAt(r+1)]>>4,l[h++]=255&e),1===c&&(e=i[t.charCodeAt(r)]<<10|i[t.charCodeAt(r+1)]<<4|i[t.charCodeAt(r+2)]>>2,l[h++]=e>>8&255,l[h++]=255&e),l},e.fromByteArray=function(t){for(var e,i=t.length,n=i%3,s=[],o=16383,a=0,l=i-n;a<l;a+=o)s.push(c(t,a,a+o>l?l:a+o));return 1===n?(e=t[i-1],s.push(r[e>>2]+r[e<<4&63]+"==")):2===n&&(e=(t[i-2]<<8)+t[i-1],s.push(r[e>>10]+r[e>>4&63]+r[e<<2&63]+"=")),s.join("")};for(var r=[],i=[],n="undefined"!=typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0;o<64;++o)r[o]=s[o],i[s.charCodeAt(o)]=o;function a(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function c(t,e,i){for(var n,s,o=[],a=e;a<i;a+=3)n=(t[a]<<16&16711680)+(t[a+1]<<8&65280)+(255&t[a+2]),o.push(r[(s=n)>>18&63]+r[s>>12&63]+r[s>>6&63]+r[63&s]);return o.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},4181:t=>{var e=4096,r=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 i(t){this.buf_=new Uint8Array(8224),this.input_=t,this.reset()}i.READ_SIZE=e,i.IBUF_MASK=8191,i.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 t=0;t<4;t++)this.val_|=this.buf_[this.pos_]<<8*t,++this.pos_;return this.bit_end_pos_>0},i.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 t=this.buf_ptr_,r=this.input_.read(this.buf_,t,e);if(r<0)throw new Error("Unexpected end of input");if(r<e){this.eos_=1;for(var i=0;i<32;i++)this.buf_[t+r+i]=0}if(0===t){for(i=0;i<32;i++)this.buf_[8192+i]=this.buf_[i];this.buf_ptr_=e}else this.buf_ptr_=0;this.bit_end_pos_+=r<<3}},i.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},i.prototype.readBits=function(t){32-this.bit_pos_<t&&this.fillBitWindow();var e=this.val_>>>this.bit_pos_&r[t];return this.bit_pos_+=t,e},t.exports=i},7080:(t,e)=>{e.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]),e.lookupOffsets=new Uint16Array([1024,1536,1280,1536,0,256,768,512])},6450:(t,e,r)=>{var i=r(6154).g,n=r(6154).j,s=r(4181),o=r(5139),a=r(966).h,c=r(966).g,l=r(7080),h=r(8435),u=r(2973),p=1080,d=new Uint8Array([1,2,3,4,0,5,17,6,16,7,8,9,10,11,12,13,14,15]),f=new Uint8Array([3,2,1,0,3,3,3,3,3,3,2,2,2,2,2,2]),g=new Int8Array([0,0,0,0,-1,1,-2,2,-3,3,-1,1,-2,2,-3,3]),y=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 m(t){var e;return 0===t.readBits(1)?16:(e=t.readBits(3))>0?17+e:(e=t.readBits(3))>0?8+e:17}function w(t){if(t.readBits(1)){var e=t.readBits(3);return 0===e?1:t.readBits(e)+(1<<e)}return 0}function b(){this.meta_block_length=0,this.input_end=0,this.is_uncompressed=0,this.is_metadata=!1}function A(t){var e,r,i,n=new b;if(n.input_end=t.readBits(1),n.input_end&&t.readBits(1))return n;if(7===(e=t.readBits(2)+4)){if(n.is_metadata=!0,0!==t.readBits(1))throw new Error("Invalid reserved bit");if(0===(r=t.readBits(2)))return n;for(i=0;i<r;i++){var s=t.readBits(8);if(i+1===r&&r>1&&0===s)throw new Error("Invalid size byte");n.meta_block_length|=s<<8*i}}else for(i=0;i<e;++i){var o=t.readBits(4);if(i+1===e&&e>4&&0===o)throw new Error("Invalid size nibble");n.meta_block_length|=o<<4*i}return++n.meta_block_length,n.input_end||n.is_metadata||(n.is_uncompressed=t.readBits(1)),n}function v(t,e,r){var i;return r.fillBitWindow(),(i=t[e+=r.val_>>>r.bit_pos_&255].bits-8)>0&&(r.bit_pos_+=8,e+=t[e].value,e+=r.val_>>>r.bit_pos_&(1<<i)-1),r.bit_pos_+=t[e].bits,t[e].value}function _(t,e,r,i){var n,s,o=new Uint8Array(t);if(i.readMoreInput(),1===(s=i.readBits(2))){for(var l=t-1,h=0,u=new Int32Array(4),p=i.readBits(2)+1;l;)l>>=1,++h;for(f=0;f<p;++f)u[f]=i.readBits(h)%t,o[u[f]]=2;switch(o[u[0]]=1,p){case 1:break;case 3:if(u[0]===u[1]||u[0]===u[2]||u[1]===u[2])throw new Error("[ReadHuffmanCode] invalid symbols");break;case 2:if(u[0]===u[1])throw new Error("[ReadHuffmanCode] invalid symbols");o[u[1]]=1;break;case 4:if(u[0]===u[1]||u[0]===u[2]||u[0]===u[3]||u[1]===u[2]||u[1]===u[3]||u[2]===u[3])throw new Error("[ReadHuffmanCode] invalid symbols");i.readBits(1)?(o[u[2]]=3,o[u[3]]=3):o[u[0]]=2}}else{var f,g=new Uint8Array(18),y=32,m=0,w=[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&&y>0;++f){var b,A=d[f],v=0;i.fillBitWindow(),v+=i.val_>>>i.bit_pos_&15,i.bit_pos_+=w[v].bits,b=w[v].value,g[A]=b,0!==b&&(y-=32>>b,++m)}if(1!==m&&0!==y)throw new Error("[ReadHuffmanCode] invalid num_codes or space");!function(t,e,r,i){for(var n=0,s=8,o=0,l=0,h=32768,u=[],p=0;p<32;p++)u.push(new a(0,0));for(c(u,0,5,t,18);n<e&&h>0;){var d,f=0;if(i.readMoreInput(),i.fillBitWindow(),f+=i.val_>>>i.bit_pos_&31,i.bit_pos_+=u[f].bits,(d=255&u[f].value)<16)o=0,r[n++]=d,0!==d&&(s=d,h-=32768>>d);else{var g,y,m=d-14,w=0;if(16===d&&(w=s),l!==w&&(o=0,l=w),g=o,o>0&&(o-=2,o<<=m),n+(y=(o+=i.readBits(m)+3)-g)>e)throw new Error("[ReadHuffmanCodeLengths] symbol + repeat_delta > num_symbols");for(var b=0;b<y;b++)r[n+b]=l;n+=y,0!==l&&(h-=y<<15-l)}}if(0!==h)throw new Error("[ReadHuffmanCodeLengths] space = "+h);for(;n<e;n++)r[n]=0}(g,t,o,i)}if(0===(n=c(e,r,8,o,t)))throw new Error("[ReadHuffmanCode] BuildHuffmanTable failed: ");return n}function E(t,e,r){var i,n;return i=v(t,e,r),n=h.kBlockLengthPrefixCode[i].nbits,h.kBlockLengthPrefixCode[i].offset+r.readBits(n)}function S(t,e,r){var i;return t<16?(r+=f[t],i=e[r&=3]+g[t]):i=t-16+1,i}function T(t,e){for(var r=t[e],i=e;i;--i)t[i]=t[i-1];t[0]=r}function x(t,e){this.alphabet_size=t,this.num_htrees=e,this.codes=new Array(e+e*y[t+31>>>5]),this.htrees=new Uint32Array(e)}function C(t,e){var r,i,n={num_htrees:null,context_map:null},s=0;e.readMoreInput();var o=n.num_htrees=w(e)+1,c=n.context_map=new Uint8Array(t);if(o<=1)return n;for(e.readBits(1)&&(s=e.readBits(4)+1),r=[],i=0;i<p;i++)r[i]=new a(0,0);for(_(o+s,r,0,e),i=0;i<t;){var l;if(e.readMoreInput(),0===(l=v(r,0,e)))c[i]=0,++i;else if(l<=s)for(var h=1+(1<<l)+e.readBits(l);--h;){if(i>=t)throw new Error("[DecodeContextMap] i >= context_map_size");c[i]=0,++i}else c[i]=l-s,++i}return e.readBits(1)&&function(t,e){var r,i=new Uint8Array(256);for(r=0;r<256;++r)i[r]=r;for(r=0;r<e;++r){var n=t[r];t[r]=i[n],n&&T(i,n)}}(c,t),n}function I(t,e,r,i,n,s,o){var a,c=2*r,l=r,h=v(e,r*p,o);(a=0===h?n[c+(1&s[l])]:1===h?n[c+(s[l]-1&1)]+1:h-2)>=t&&(a-=t),i[r]=a,n[c+(1&s[l])]=a,++s[l]}function R(t,e,r,i,n,o){var a,c=n+1,l=r&n,h=o.pos_&s.IBUF_MASK;if(e<8||o.bit_pos_+(e<<3)<o.bit_end_pos_)for(;e-- >0;)o.readMoreInput(),i[l++]=o.readBits(8),l===c&&(t.write(i,c),l=0);else{if(o.bit_end_pos_<32)throw new Error("[CopyUncompressedBlockToOutput] br.bit_end_pos_ < 32");for(;o.bit_pos_<32;)i[l]=o.val_>>>o.bit_pos_,o.bit_pos_+=8,++l,--e;if(h+(a=o.bit_end_pos_-o.bit_pos_>>3)>s.IBUF_MASK){for(var u=s.IBUF_MASK+1-h,p=0;p<u;p++)i[l+p]=o.buf_[h+p];a-=u,l+=u,e-=u,h=0}for(p=0;p<a;p++)i[l+p]=o.buf_[h+p];if(e-=a,(l+=a)>=c)for(t.write(i,c),l-=c,p=0;p<l;p++)i[p]=i[c+p];for(;l+e>=c;){if(a=c-l,o.input_.read(i,l,a)<a)throw new Error("[CopyUncompressedBlockToOutput] not enough bytes");t.write(i,c),e-=a,l=0}if(o.input_.read(i,l,e)<e)throw new Error("[CopyUncompressedBlockToOutput] not enough bytes");o.reset()}}function k(t){var e=t.bit_pos_+7&-8;return 0==t.readBits(e-t.bit_pos_)}function N(t){var e=new i(t),r=new s(e);return m(r),A(r).meta_block_length}function O(t,e){var r,i,n,c,d,f,g,y,b,T,N=0,O=0,B=0,P=[16,15,11,4],D=0,L=0,U=0,M=[new x(0,0),new x(0,0),new x(0,0)],F=128+s.READ_SIZE;n=(1<<(i=m(T=new s(t))))-16,d=(c=1<<i)-1,f=new Uint8Array(c+F+o.maxDictionaryWordLength),g=c,y=[],b=[];for(var H=0;H<3240;H++)y[H]=new a(0,0),b[H]=new a(0,0);for(;!O;){var j,W,V,G,z,q,Q,K,Y,J,X,Z=0,$=[1<<28,1<<28,1<<28],tt=[0],et=[1,1,1],rt=[0,1,0,1,0,1],it=[0],nt=null,st=null,ot=0,at=null,ct=0,lt=0,ht=0;for(r=0;r<3;++r)M[r].codes=null,M[r].htrees=null;T.readMoreInput();var ut=A(T);if(N+(Z=ut.meta_block_length)>e.buffer.length){var pt=new Uint8Array(N+Z);pt.set(e.buffer),e.buffer=pt}if(O=ut.input_end,j=ut.is_uncompressed,ut.is_metadata)for(k(T);Z>0;--Z)T.readMoreInput(),T.readBits(8);else if(0!==Z)if(j)T.bit_pos_=T.bit_pos_+7&-8,R(e,Z,N,f,d,T),N+=Z;else{for(r=0;r<3;++r)et[r]=w(T)+1,et[r]>=2&&(_(et[r]+2,y,r*p,T),_(26,b,r*p,T),$[r]=E(b,r*p,T),it[r]=1);for(T.readMoreInput(),G=(1<<(W=T.readBits(2)))-1,z=(V=16+(T.readBits(4)<<W))+(48<<W),nt=new Uint8Array(et[0]),r=0;r<et[0];++r)T.readMoreInput(),nt[r]=T.readBits(2)<<1;var dt=C(et[0]<<6,T);Q=dt.num_htrees,q=dt.context_map;var ft=C(et[2]<<2,T);for(Y=ft.num_htrees,K=ft.context_map,M[0]=new x(256,Q),M[1]=new x(704,et[1]),M[2]=new x(z,Y),r=0;r<3;++r)M[r].decode(T);for(st=0,at=0,J=nt[tt[0]],lt=l.lookupOffsets[J],ht=l.lookupOffsets[J+1],X=M[1].htrees[0];Z>0;){var gt,yt,mt,wt,bt,At,vt,_t,Et,St,Tt,xt;for(T.readMoreInput(),0===$[1]&&(I(et[1],y,1,tt,rt,it,T),$[1]=E(b,p,T),X=M[1].htrees[tt[1]]),--$[1],(yt=(gt=v(M[1].codes,X,T))>>6)>=2?(yt-=2,vt=-1):vt=0,mt=h.kInsertRangeLut[yt]+(gt>>3&7),wt=h.kCopyRangeLut[yt]+(7&gt),bt=h.kInsertLengthPrefixCode[mt].offset+T.readBits(h.kInsertLengthPrefixCode[mt].nbits),At=h.kCopyLengthPrefixCode[wt].offset+T.readBits(h.kCopyLengthPrefixCode[wt].nbits),L=f[N-1&d],U=f[N-2&d],Et=0;Et<bt;++Et)T.readMoreInput(),0===$[0]&&(I(et[0],y,0,tt,rt,it,T),$[0]=E(b,0,T),st=tt[0]<<6,J=nt[tt[0]],lt=l.lookupOffsets[J],ht=l.lookupOffsets[J+1]),ot=q[st+(l.lookup[lt+L]|l.lookup[ht+U])],--$[0],U=L,L=v(M[0].codes,M[0].htrees[ot],T),f[N&d]=L,(N&d)===d&&e.write(f,c),++N;if((Z-=bt)<=0)break;if(vt<0&&(T.readMoreInput(),0===$[2]&&(I(et[2],y,2,tt,rt,it,T),$[2]=E(b,2160,T),at=tt[2]<<2),--$[2],ct=K[at+(255&(At>4?3:At-2))],(vt=v(M[2].codes,M[2].htrees[ct],T))>=V&&(xt=(vt-=V)&G,vt=V+((Ct=(2+(1&(vt>>=W))<<(Tt=1+(vt>>1)))-4)+T.readBits(Tt)<<W)+xt)),(_t=S(vt,P,D))<0)throw new Error("[BrotliDecompress] invalid distance");if(St=N&d,_t>(B=N<n&&B!==n?N:n)){if(!(At>=o.minDictionaryWordLength&&At<=o.maxDictionaryWordLength))throw new Error("Invalid backward reference. pos: "+N+" distance: "+_t+" len: "+At+" bytes left: "+Z);var Ct=o.offsetsByLength[At],It=_t-B-1,Rt=o.sizeBitsByLength[At],kt=It>>Rt;if(Ct+=(It&(1<<Rt)-1)*At,!(kt<u.kNumTransforms))throw new Error("Invalid backward reference. pos: "+N+" distance: "+_t+" len: "+At+" bytes left: "+Z);var Nt=u.transformDictionaryWord(f,St,Ct,At,kt);if(N+=Nt,Z-=Nt,(St+=Nt)>=g){e.write(f,c);for(var Ot=0;Ot<St-g;Ot++)f[Ot]=f[g+Ot]}}else{if(vt>0&&(P[3&D]=_t,++D),At>Z)throw new Error("Invalid backward reference. pos: "+N+" distance: "+_t+" len: "+At+" bytes left: "+Z);for(Et=0;Et<At;++Et)f[N&d]=f[N-_t&d],(N&d)===d&&e.write(f,c),++N,--Z}L=f[N-1&d],U=f[N-2&d]}N&=1073741823}}e.write(f,N&d)}x.prototype.decode=function(t){var e,r=0;for(e=0;e<this.num_htrees;++e)this.htrees[e]=r,r+=_(this.alphabet_size,this.codes,r,t)},e.BrotliDecompressBuffer=function(t,e){var r=new i(t);null==e&&(e=N(t));var s=new Uint8Array(e),o=new n(s);return O(r,o),o.pos<o.buffer.length&&(o.buffer=o.buffer.subarray(0,o.pos)),o.buffer},o.init()},5340:(t,e,r)=>{var i=r(4789);e.init=function(){return(0,r(6450).BrotliDecompressBuffer)(i.toByteArray(r(2722)))}},2722:t=>{t.exports="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"},5139:(t,e,r)=>{var i=r(5340);e.init=function(){e.dictionary=i.init()},e.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]),e.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]),e.minDictionaryWordLength=4,e.maxDictionaryWordLength=24},966:(t,e)=>{function r(t,e){this.bits=t,this.value=e}e.h=r;function i(t,e){for(var r=1<<e-1;t&r;)r>>=1;return(t&r-1)+r}function n(t,e,i,n,s){do{t[e+(n-=i)]=new r(s.bits,s.value)}while(n>0)}function s(t,e,r){for(var i=1<<e-r;e<15&&!((i-=t[e])<=0);)++e,i<<=1;return e-r}e.g=function(t,e,o,a,c){var l,h,u,p,d,f,g,y,m,w,b=e,A=new Int32Array(16),v=new Int32Array(16);for(w=new Int32Array(c),h=0;h<c;h++)A[a[h]]++;for(v[1]=0,l=1;l<15;l++)v[l+1]=v[l]+A[l];for(h=0;h<c;h++)0!==a[h]&&(w[v[a[h]]++]=h);if(m=y=1<<(g=o),1===v[15]){for(u=0;u<m;++u)t[e+u]=new r(0,65535&w[0]);return m}for(u=0,h=0,l=1,p=2;l<=o;++l,p<<=1)for(;A[l]>0;--A[l])n(t,e+u,p,y,new r(255&l,65535&w[h++])),u=i(u,l);for(f=m-1,d=-1,l=o+1,p=2;l<=15;++l,p<<=1)for(;A[l]>0;--A[l])(u&f)!==d&&(e+=y,m+=y=1<<(g=s(A,l,o)),t[b+(d=u&f)]=new r(g+o&255,e-b-d&65535)),n(t,e+(u>>o),p,y,new r(l-o&255,65535&w[h++])),u=i(u,l);return m}},8435:(t,e)=>{function r(t,e){this.offset=t,this.nbits=e}e.kBlockLengthPrefixCode=[new r(1,2),new r(5,2),new r(9,2),new r(13,2),new r(17,3),new r(25,3),new r(33,3),new r(41,3),new r(49,4),new r(65,4),new r(81,4),new r(97,4),new r(113,5),new r(145,5),new r(177,5),new r(209,5),new r(241,6),new r(305,6),new r(369,7),new r(497,8),new r(753,9),new r(1265,10),new r(2289,11),new r(4337,12),new r(8433,13),new r(16625,24)],e.kInsertLengthPrefixCode=[new r(0,0),new r(1,0),new r(2,0),new r(3,0),new r(4,0),new r(5,0),new r(6,1),new r(8,1),new r(10,2),new r(14,2),new r(18,3),new r(26,3),new r(34,4),new r(50,4),new r(66,5),new r(98,5),new r(130,6),new r(194,7),new r(322,8),new r(578,9),new r(1090,10),new r(2114,12),new r(6210,14),new r(22594,24)],e.kCopyLengthPrefixCode=[new r(2,0),new r(3,0),new r(4,0),new r(5,0),new r(6,0),new r(7,0),new r(8,0),new r(9,0),new r(10,1),new r(12,1),new r(14,2),new r(18,2),new r(22,3),new r(30,3),new r(38,4),new r(54,4),new r(70,5),new r(102,5),new r(134,6),new r(198,7),new r(326,8),new r(582,9),new r(1094,10),new r(2118,24)],e.kInsertRangeLut=[0,0,8,8,0,16,8,16,16],e.kCopyRangeLut=[0,8,0,8,16,0,16,8,16]},6154:(t,e)=>{function r(t){this.buffer=t,this.pos=0}function i(t){this.buffer=t,this.pos=0}r.prototype.read=function(t,e,r){this.pos+r>this.buffer.length&&(r=this.buffer.length-this.pos);for(var i=0;i<r;i++)t[e+i]=this.buffer[this.pos+i];return this.pos+=r,r},e.g=r,i.prototype.write=function(t,e){if(this.pos+e>this.buffer.length)throw new Error("Output buffer is not large enough");return this.buffer.set(t.subarray(0,e),this.pos),this.pos+=e,e},e.j=i},2973:(t,e,r)=>{var i=r(5139),n=10,s=11;function o(t,e,r){this.prefix=new Uint8Array(t.length),this.transform=e,this.suffix=new Uint8Array(r.length);for(var i=0;i<t.length;i++)this.prefix[i]=t.charCodeAt(i);for(i=0;i<r.length;i++)this.suffix[i]=r.charCodeAt(i)}var a=[new o("",0,""),new o("",0," "),new o(" ",0," "),new o("",12,""),new o("",n," "),new o("",0," the "),new o(" ",0,""),new o("s ",0," "),new o("",0," of "),new o("",n,""),new o("",0," and "),new o("",13,""),new o("",1,""),new o(", ",0," "),new o("",0,", "),new o(" ",n," "),new o("",0," in "),new o("",0," to "),new o("e ",0," "),new o("",0,'"'),new o("",0,"."),new o("",0,'">'),new o("",0,"\n"),new o("",3,""),new o("",0,"]"),new o("",0," for "),new o("",14,""),new o("",2,""),new o("",0," a "),new o("",0," that "),new o(" ",n,""),new o("",0,". "),new o(".",0,""),new o(" ",0,", "),new o("",15,""),new o("",0," with "),new o("",0,"'"),new o("",0," from "),new o("",0," by "),new o("",16,""),new o("",17,""),new o(" the ",0,""),new o("",4,""),new o("",0,". The "),new o("",s,""),new o("",0," on "),new o("",0," as "),new o("",0," is "),new o("",7,""),new o("",1,"ing "),new o("",0,"\n\t"),new o("",0,":"),new o(" ",0,". "),new o("",0,"ed "),new o("",20,""),new o("",18,""),new o("",6,""),new o("",0,"("),new o("",n,", "),new o("",8,""),new o("",0," at "),new o("",0,"ly "),new o(" the ",0," of "),new o("",5,""),new o("",9,""),new o(" ",n,", "),new o("",n,'"'),new o(".",0,"("),new o("",s," "),new o("",n,'">'),new o("",0,'="'),new o(" ",0,"."),new o(".com/",0,""),new o(" the ",0," of the "),new o("",n,"'"),new o("",0,". This "),new o("",0,","),new o(".",0," "),new o("",n,"("),new o("",n,"."),new o("",0," not "),new o(" ",0,'="'),new o("",0,"er "),new o(" ",s," "),new o("",0,"al "),new o(" ",s,""),new o("",0,"='"),new o("",s,'"'),new o("",n,". "),new o(" ",0,"("),new o("",0,"ful "),new o(" ",n,". "),new o("",0,"ive "),new o("",0,"less "),new o("",s,"'"),new o("",0,"est "),new o(" ",n,"."),new o("",s,'">'),new o(" ",0,"='"),new o("",n,","),new o("",0,"ize "),new o("",s,"."),new o(" ",0,""),new o(" ",0,","),new o("",n,'="'),new o("",s,'="'),new o("",0,"ous "),new o("",s,", "),new o("",n,"='"),new o(" ",n,","),new o(" ",s,'="'),new o(" ",s,", "),new o("",s,","),new o("",s,"("),new o("",s,". "),new o(" ",s,"."),new o("",s,"='"),new o(" ",s,". "),new o(" ",n,'="'),new o(" ",s,"='"),new o(" ",n,"='")];function c(t,e){return t[e]<192?(t[e]>=97&&t[e]<=122&&(t[e]^=32),1):t[e]<224?(t[e+1]^=32,2):(t[e+2]^=5,3)}e.kTransforms=a,e.kNumTransforms=a.length,e.transformDictionaryWord=function(t,e,r,o,l){var h,u=a[l].prefix,p=a[l].suffix,d=a[l].transform,f=d<12?0:d-11,g=0,y=e;f>o&&(f=o);for(var m=0;m<u.length;)t[e++]=u[m++];for(r+=f,o-=f,d<=9&&(o-=d),g=0;g<o;g++)t[e++]=i.dictionary[r+g];if(h=e-o,d===n)c(t,h);else if(d===s)for(;o>0;){var w=c(t,h);h+=w,o-=w}for(var b=0;b<p.length;)t[e++]=p[b++];return e-y}},7709:(t,e,r)=>{t.exports=r(6450).BrotliDecompressBuffer},4789:(t,e)=>{e.byteLength=function(t){var e=a(t),r=e[0],i=e[1];return 3*(r+i)/4-i},e.toByteArray=function(t){for(var e,r=a(t),s=r[0],o=r[1],c=new n(function(t,e,r){return 3*(e+r)/4-r}(0,s,o)),l=0,h=o>0?s-4:s,u=0;u<h;u+=4)e=i[t.charCodeAt(u)]<<18|i[t.charCodeAt(u+1)]<<12|i[t.charCodeAt(u+2)]<<6|i[t.charCodeAt(u+3)],c[l++]=e>>16&255,c[l++]=e>>8&255,c[l++]=255&e;return 2===o&&(e=i[t.charCodeAt(u)]<<2|i[t.charCodeAt(u+1)]>>4,c[l++]=255&e),1===o&&(e=i[t.charCodeAt(u)]<<10|i[t.charCodeAt(u+1)]<<4|i[t.charCodeAt(u+2)]>>2,c[l++]=e>>8&255,c[l++]=255&e),c},e.fromByteArray=function(t){for(var e,i=t.length,n=i%3,s=[],o=16383,a=0,l=i-n;a<l;a+=o)s.push(c(t,a,a+o>l?l:a+o));return 1===n?(e=t[i-1],s.push(r[e>>2]+r[e<<4&63]+"==")):2===n&&(e=(t[i-2]<<8)+t[i-1],s.push(r[e>>10]+r[e>>4&63]+r[e<<2&63]+"=")),s.join("")};for(var r=[],i=[],n="undefined"!=typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0;o<64;++o)r[o]=s[o],i[s.charCodeAt(o)]=o;function a(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function c(t,e,i){for(var n,s,o=[],a=e;a<i;a+=3)n=(t[a]<<16&16711680)+(t[a+1]<<8&65280)+(255&t[a+2]),o.push(r[(s=n)>>18&63]+r[s>>12&63]+r[s>>6&63]+r[63&s]);return o.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},8764:(t,e,r)=>{
2
2
  /*!
3
3
  * The buffer module from node.js, for the browser.
4
4
  *
@@ -23,7 +23,7 @@ See the Apache Version 2.0 License for specific language governing permissions
23
23
  and limitations under the License.
24
24
  ***************************************************************************** */!function(t){!function(e){var i="object"==typeof r.g?r.g:"object"==typeof self?self:"object"==typeof this?this:Function("return this;")(),s=o(t);function o(t,e){return function(r,i){"function"!=typeof t[r]&&Object.defineProperty(t,r,{configurable:!0,writable:!0,value:i}),e&&e(r,i)}}void 0===i.Reflect?i.Reflect=t:s=o(i.Reflect,s),function(t){var e=Object.prototype.hasOwnProperty,r="function"==typeof Symbol,i=r&&void 0!==Symbol.toPrimitive?Symbol.toPrimitive:"@@toPrimitive",s=r&&void 0!==Symbol.iterator?Symbol.iterator:"@@iterator",o="function"==typeof Object.create,a={__proto__:[]}instanceof Array,c=!o&&!a,l={create:o?function(){return M(Object.create(null))}:a?function(){return M({__proto__:null})}:function(){return M({})},has:c?function(t,r){return e.call(t,r)}:function(t,e){return e in t},get:c?function(t,r){return e.call(t,r)?t[r]:void 0}:function(t,e){return t[e]}},h=Object.getPrototypeOf(Function),u="object"==typeof n&&n.env&&"true"===n.env.REFLECT_METADATA_USE_MAP_POLYFILL,p=u||"function"!=typeof Map||"function"!=typeof Map.prototype.entries?function(){var t={},e=[],r=function(){function t(t,e,r){this._index=0,this._keys=t,this._values=e,this._selector=r}return t.prototype["@@iterator"]=function(){return this},t.prototype[s]=function(){return this},t.prototype.next=function(){var t=this._index;if(t>=0&&t<this._keys.length){var r=this._selector(this._keys[t],this._values[t]);return t+1>=this._keys.length?(this._index=-1,this._keys=e,this._values=e):this._index++,{value:r,done:!1}}return{value:void 0,done:!0}},t.prototype.throw=function(t){throw this._index>=0&&(this._index=-1,this._keys=e,this._values=e),t},t.prototype.return=function(t){return this._index>=0&&(this._index=-1,this._keys=e,this._values=e),{value:t,done:!0}},t}();return function(){function e(){this._keys=[],this._values=[],this._cacheKey=t,this._cacheIndex=-2}return Object.defineProperty(e.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),e.prototype.has=function(t){return this._find(t,!1)>=0},e.prototype.get=function(t){var e=this._find(t,!1);return e>=0?this._values[e]:void 0},e.prototype.set=function(t,e){var r=this._find(t,!0);return this._values[r]=e,this},e.prototype.delete=function(e){var r=this._find(e,!1);if(r>=0){for(var i=this._keys.length,n=r+1;n<i;n++)this._keys[n-1]=this._keys[n],this._values[n-1]=this._values[n];return this._keys.length--,this._values.length--,e===this._cacheKey&&(this._cacheKey=t,this._cacheIndex=-2),!0}return!1},e.prototype.clear=function(){this._keys.length=0,this._values.length=0,this._cacheKey=t,this._cacheIndex=-2},e.prototype.keys=function(){return new r(this._keys,this._values,i)},e.prototype.values=function(){return new r(this._keys,this._values,n)},e.prototype.entries=function(){return new r(this._keys,this._values,o)},e.prototype["@@iterator"]=function(){return this.entries()},e.prototype[s]=function(){return this.entries()},e.prototype._find=function(t,e){return this._cacheKey!==t&&(this._cacheIndex=this._keys.indexOf(this._cacheKey=t)),this._cacheIndex<0&&e&&(this._cacheIndex=this._keys.length,this._keys.push(t),this._values.push(void 0)),this._cacheIndex},e}();function i(t,e){return t}function n(t,e){return e}function o(t,e){return[t,e]}}():Map,d=u||"function"!=typeof Set||"function"!=typeof Set.prototype.entries?function(){function t(){this._map=new p}return Object.defineProperty(t.prototype,"size",{get:function(){return this._map.size},enumerable:!0,configurable:!0}),t.prototype.has=function(t){return this._map.has(t)},t.prototype.add=function(t){return this._map.set(t,t),this},t.prototype.delete=function(t){return this._map.delete(t)},t.prototype.clear=function(){this._map.clear()},t.prototype.keys=function(){return this._map.keys()},t.prototype.values=function(){return this._map.values()},t.prototype.entries=function(){return this._map.entries()},t.prototype["@@iterator"]=function(){return this.keys()},t.prototype[s]=function(){return this.keys()},t}():Set,f=new(u||"function"!=typeof WeakMap?function(){var t=16,r=l.create(),i=n();return function(){function t(){this._key=n()}return t.prototype.has=function(t){var e=s(t,!1);return void 0!==e&&l.has(e,this._key)},t.prototype.get=function(t){var e=s(t,!1);return void 0!==e?l.get(e,this._key):void 0},t.prototype.set=function(t,e){return s(t,!0)[this._key]=e,this},t.prototype.delete=function(t){var e=s(t,!1);return void 0!==e&&delete e[this._key]},t.prototype.clear=function(){this._key=n()},t}();function n(){var t;do{t="@@WeakMap@@"+a()}while(l.has(r,t));return r[t]=!0,t}function s(t,r){if(!e.call(t,i)){if(!r)return;Object.defineProperty(t,i,{value:l.create()})}return t[i]}function o(t,e){for(var r=0;r<e;++r)t[r]=255*Math.random()|0;return t}function a(){var e=function(t){return"function"==typeof Uint8Array?"undefined"!=typeof crypto?crypto.getRandomValues(new Uint8Array(t)):"undefined"!=typeof msCrypto?msCrypto.getRandomValues(new Uint8Array(t)):o(new Uint8Array(t),t):o(new Array(t),t)}(t);e[6]=79&e[6]|64,e[8]=191&e[8]|128;for(var r="",i=0;i<t;++i){var n=e[i];4!==i&&6!==i&&8!==i||(r+="-"),n<16&&(r+="0"),r+=n.toString(16).toLowerCase()}return r}}():WeakMap);function g(t,e,r){var i=f.get(t);if(S(i)){if(!r)return;i=new p,f.set(t,i)}var n=i.get(e);if(S(n)){if(!r)return;n=new p,i.set(e,n)}return n}function y(t,e,r){if(m(t,e,r))return!0;var i=U(e);return!T(i)&&y(t,i,r)}function m(t,e,r){var i=g(e,r,!1);return!S(i)&&function(t){return!!t}(i.has(t))}function w(t,e,r){if(m(t,e,r))return b(t,e,r);var i=U(e);return T(i)?void 0:w(t,i,r)}function b(t,e,r){var i=g(e,r,!1);if(!S(i))return i.get(t)}function A(t,e,r,i){g(r,i,!0).set(t,e)}function v(t,e){var r=_(t,e),i=U(t);if(null===i)return r;var n=v(i,e);if(n.length<=0)return r;if(r.length<=0)return n;for(var s=new d,o=[],a=0,c=r;a<c.length;a++){var l=c[a];s.has(l)||(s.add(l),o.push(l))}for(var h=0,u=n;h<u.length;h++)l=u[h],s.has(l)||(s.add(l),o.push(l));return o}function _(t,e){var r=[],i=g(t,e,!1);if(S(i))return r;for(var n=B(i.keys()),s=0;;){var o=D(n);if(!o)return r.length=s,r;var a=P(o);try{r[s]=a}catch(t){try{L(n)}finally{throw t}}s++}}function E(t){if(null===t)return 1;switch(typeof t){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":return null===t?1:6;default:return 6}}function S(t){return void 0===t}function T(t){return null===t}function x(t){return"object"==typeof t?null!==t:"function"==typeof t}function C(t,e){switch(E(t)){case 0:case 1:case 2:case 3:case 4:case 5:return t}var r=3===e?"string":5===e?"number":"default",n=O(t,i);if(void 0!==n){var s=n.call(t,r);if(x(s))throw new TypeError;return s}return function(t,e){if("string"===e){var r=t.toString;if(k(r)&&!x(n=r.call(t)))return n;if(k(i=t.valueOf)&&!x(n=i.call(t)))return n}else{var i;if(k(i=t.valueOf)&&!x(n=i.call(t)))return n;var n,s=t.toString;if(k(s)&&!x(n=s.call(t)))return n}throw new TypeError}(t,"default"===r?"number":r)}function I(t){var e=C(t,3);return function(t){return"symbol"==typeof t}(e)?e:function(t){return""+t}(e)}function R(t){return Array.isArray?Array.isArray(t):t instanceof Object?t instanceof Array:"[object Array]"===Object.prototype.toString.call(t)}function k(t){return"function"==typeof t}function N(t){return"function"==typeof t}function O(t,e){var r=t[e];if(null!=r){if(!k(r))throw new TypeError;return r}}function B(t){var e=O(t,s);if(!k(e))throw new TypeError;var r=e.call(t);if(!x(r))throw new TypeError;return r}function P(t){return t.value}function D(t){var e=t.next();return!e.done&&e}function L(t){var e=t.return;e&&e.call(t)}function U(t){var e=Object.getPrototypeOf(t);if("function"!=typeof t||t===h)return e;if(e!==h)return e;var r=t.prototype,i=r&&Object.getPrototypeOf(r);if(null==i||i===Object.prototype)return e;var n=i.constructor;return"function"!=typeof n||n===t?e:n}function M(t){return t.__=void 0,delete t.__,t}t("decorate",(function(t,e,r,i){if(S(r)){if(!R(t))throw new TypeError;if(!N(e))throw new TypeError;return function(t,e){for(var r=t.length-1;r>=0;--r){var i=(0,t[r])(e);if(!S(i)&&!T(i)){if(!N(i))throw new TypeError;e=i}}return e}(t,e)}if(!R(t))throw new TypeError;if(!x(e))throw new TypeError;if(!x(i)&&!S(i)&&!T(i))throw new TypeError;return T(i)&&(i=void 0),function(t,e,r,i){for(var n=t.length-1;n>=0;--n){var s=(0,t[n])(e,r,i);if(!S(s)&&!T(s)){if(!x(s))throw new TypeError;i=s}}return i}(t,e,r=I(r),i)})),t("metadata",(function(t,e){return function(r,i){if(!x(r))throw new TypeError;if(!S(i)&&!function(t){switch(E(t)){case 3:case 4:return!0;default:return!1}}(i))throw new TypeError;A(t,e,r,i)}})),t("defineMetadata",(function(t,e,r,i){if(!x(r))throw new TypeError;return S(i)||(i=I(i)),A(t,e,r,i)})),t("hasMetadata",(function(t,e,r){if(!x(e))throw new TypeError;return S(r)||(r=I(r)),y(t,e,r)})),t("hasOwnMetadata",(function(t,e,r){if(!x(e))throw new TypeError;return S(r)||(r=I(r)),m(t,e,r)})),t("getMetadata",(function(t,e,r){if(!x(e))throw new TypeError;return S(r)||(r=I(r)),w(t,e,r)})),t("getOwnMetadata",(function(t,e,r){if(!x(e))throw new TypeError;return S(r)||(r=I(r)),b(t,e,r)})),t("getMetadataKeys",(function(t,e){if(!x(t))throw new TypeError;return S(e)||(e=I(e)),v(t,e)})),t("getOwnMetadataKeys",(function(t,e){if(!x(t))throw new TypeError;return S(e)||(e=I(e)),_(t,e)})),t("deleteMetadata",(function(t,e,r){if(!x(e))throw new TypeError;S(r)||(r=I(r));var i=g(e,r,!1);if(S(i))return!1;if(!i.delete(t))return!1;if(i.size>0)return!0;var n=f.get(e);return n.delete(r),n.size>0||f.delete(e),!0}))}(s)}()}(i||(i={}))},9509:(t,e,r)=>{
25
25
  /*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */
26
- var i=r(8764),n=i.Buffer;function s(t,e){for(var r in t)e[r]=t[r]}function o(t,e,r){return n(t,e,r)}n.from&&n.alloc&&n.allocUnsafe&&n.allocUnsafeSlow?t.exports=i:(s(i,e),e.Buffer=o),o.prototype=Object.create(n.prototype),s(n,o),o.from=function(t,e,r){if("number"==typeof t)throw new TypeError("Argument must not be a number");return n(t,e,r)},o.alloc=function(t,e,r){if("number"!=typeof t)throw new TypeError("Argument must be a number");var i=n(t);return void 0!==e?"string"==typeof r?i.fill(e,r):i.fill(e):i.fill(0),i},o.allocUnsafe=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return n(t)},o.allocUnsafeSlow=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return i.SlowBuffer(t)}},2830:(t,e,r)=>{t.exports=n;var i=r(7187).EventEmitter;function n(){i.call(this)}r(5717)(n,i),n.Readable=r(9481),n.Writable=r(4229),n.Duplex=r(6753),n.Transform=r(4605),n.PassThrough=r(2725),n.finished=r(8610),n.pipeline=r(9946),n.Stream=n,n.prototype.pipe=function(t,e){var r=this;function n(e){t.writable&&!1===t.write(e)&&r.pause&&r.pause()}function s(){r.readable&&r.resume&&r.resume()}r.on("data",n),t.on("drain",s),t._isStdio||e&&!1===e.end||(r.on("end",a),r.on("close",c));var o=!1;function a(){o||(o=!0,t.end())}function c(){o||(o=!0,"function"==typeof t.destroy&&t.destroy())}function l(t){if(h(),0===i.listenerCount(this,"error"))throw t}function h(){r.removeListener("data",n),t.removeListener("drain",s),r.removeListener("end",a),r.removeListener("close",c),r.removeListener("error",l),t.removeListener("error",l),r.removeListener("end",h),r.removeListener("close",h),t.removeListener("close",h)}return r.on("error",l),t.on("error",l),r.on("end",h),r.on("close",h),t.on("close",h),t.emit("pipe",r),t}},2553:(t,e,r)=>{var i=r(9509).Buffer,n=i.isEncoding||function(t){switch((t=""+t)&&t.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(t){var e;switch(this.encoding=function(t){var e=function(t){if(!t)return"utf8";for(var e;;)switch(t){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 t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}(t);if("string"!=typeof e&&(i.isEncoding===n||!n(t)))throw new Error("Unknown encoding: "+t);return e||t}(t),this.encoding){case"utf16le":this.text=c,this.end=l,e=4;break;case"utf8":this.fillLast=a,e=4;break;case"base64":this.text=h,this.end=u,e=3;break;default:return this.write=p,void(this.end=d)}this.lastNeed=0,this.lastTotal=0,this.lastChar=i.allocUnsafe(e)}function o(t){return t<=127?0:t>>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function a(t){var e=this.lastTotal-this.lastNeed,r=function(t,e,r){if(128!=(192&e[0]))return t.lastNeed=0,"�";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,"�";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,"�"}}(this,t);return void 0!==r?r:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function c(t,e){if((t.length-e)%2==0){var r=t.toString("utf16le",e);if(r){var i=r.charCodeAt(r.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function l(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function h(t,e){var r=(t.length-e)%3;return 0===r?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function u(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function p(t){return t.toString(this.encoding)}function d(t){return t&&t.length?this.write(t):""}e.s=s,s.prototype.write=function(t){if(0===t.length)return"";var e,r;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r<t.length?e?e+this.text(t,r):this.text(t,r):e||""},s.prototype.end=function(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+"�":e},s.prototype.text=function(t,e){var r=function(t,e,r){var i=e.length-1;if(i<r)return 0;var n=o(e[i]);return n>=0?(n>0&&(t.lastNeed=n-1),n):--i<r||-2===n?0:(n=o(e[i]))>=0?(n>0&&(t.lastNeed=n-2),n):--i<r||-2===n?0:(n=o(e[i]))>=0?(n>0&&(2===n?n=0:t.lastNeed=n-3),n):0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var i=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,i),t.toString("utf8",e,i)},s.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},4153:t=>{const e=/^[-+]?0x[a-fA-F0-9]+$/,r=/^([\-\+])?(0*)(\.[0-9]+([eE]\-?[0-9]+)?|[0-9]+(\.[0-9]+([eE]\-?[0-9]+)?)?)$/;!Number.parseInt&&window.parseInt&&(Number.parseInt=window.parseInt),!Number.parseFloat&&window.parseFloat&&(Number.parseFloat=window.parseFloat);const i={hex:!0,leadingZeros:!0,decimalPoint:".",eNotation:!0};t.exports=function(t,n={}){if(n=Object.assign({},i,n),!t||"string"!=typeof t)return t;let s=t.trim();if(void 0!==n.skipLike&&n.skipLike.test(s))return t;if(n.hex&&e.test(s))return Number.parseInt(s,16);{const e=r.exec(s);if(e){const r=e[1],i=e[2];let o=function(t){return t&&-1!==t.indexOf(".")?("."===(t=t.replace(/0+$/,""))?t="0":"."===t[0]?t="0"+t:"."===t[t.length-1]&&(t=t.substr(0,t.length-1)),t):t}(e[3]);const a=e[4]||e[6];if(!n.leadingZeros&&i.length>0&&r&&"."!==s[2])return t;if(!n.leadingZeros&&i.length>0&&!r&&"."!==s[1])return t;{const e=Number(s),c=""+e;return-1!==c.search(/[eE]/)||a?n.eNotation?e:t:-1!==s.indexOf(".")?"0"===c&&""===o||c===o||r&&c==="-"+o?e:t:i?o===c||r+o===c?e:t:s===c||s===r+c?e:t}}return t}}},4927:(t,e,r)=>{function i(t){try{if(!r.g.localStorage)return!1}catch(t){return!1}var e=r.g.localStorage[t];return null!=e&&"true"===String(e).toLowerCase()}t.exports=function(t,e){if(i("noDeprecation"))return t;var r=!1;return function(){if(!r){if(i("throwDeprecation"))throw new Error(e);i("traceDeprecation")?console.trace(e):console.warn(e),r=!0}return t.apply(this,arguments)}}},2043:(t,e,r)=>{!function(){var e,i,n,s=0,o=[];for(i=0;i<256;i++)o[i]=(i+256).toString(16).substr(1);function a(){var t=(16,(!e||s+16>c.BUFFER_SIZE)&&(s=0,e=c.randomBytes(c.BUFFER_SIZE)),e.slice(s,s+=16));return t[6]=15&t[6]|64,t[8]=63&t[8]|128,t}function c(){var t=a();return o[t[0]]+o[t[1]]+o[t[2]]+o[t[3]]+"-"+o[t[4]]+o[t[5]]+"-"+o[t[6]]+o[t[7]]+"-"+o[t[8]]+o[t[9]]+"-"+o[t[10]]+o[t[11]]+o[t[12]]+o[t[13]]+o[t[14]]+o[t[15]]}c.BUFFER_SIZE=4096,c.bin=a,c.clearBuffer=function(){e=null,s=0},c.test=function(t){return"string"==typeof t&&/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(t)},"undefined"!=typeof crypto?n=crypto:"undefined"!=typeof window&&void 0!==window.msCrypto&&(n=window.msCrypto),n=n||r(9061),t.exports=c,c.randomBytes=function(){if(n){if(n.randomBytes)return n.randomBytes;if(n.getRandomValues)return"function"!=typeof Uint8Array.prototype.slice?function(t){var e=new Uint8Array(t);return n.getRandomValues(e),Array.from(e)}:function(t){var e=new Uint8Array(t);return n.getRandomValues(e),e}}return function(t){var e,r=[];for(e=0;e<t;e++)r.push(Math.floor(256*Math.random()));return r}}()}()},2361:()=>{},4616:()=>{},9061:()=>{}},e={};function r(i){var n=e[i];if(void 0!==n)return n.exports;var s=e[i]={exports:{}};return t[i].call(s.exports,s,s.exports,r),s.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var i in e)r.o(e,i)&&!r.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},(()=>{var t={};r.r(t),r.d(t,{Any:()=>kh,BaseBlock:()=>qc,BaseStringBlock:()=>Kc,BitString:()=>Gl,BmpString:()=>uh,Boolean:()=>Hl,CharacterString:()=>_h,Choice:()=>Nh,Constructed:()=>Dl,DATE:()=>Th,DateTime:()=>Ch,Duration:()=>Ih,EndOfContent:()=>Ul,Enumerated:()=>Jl,GeneralString:()=>vh,GeneralizedTime:()=>Sh,GraphicString:()=>bh,HexBlock:()=>Hc,IA5String:()=>wh,Integer:()=>Yl,Null:()=>Ml,NumericString:()=>fh,ObjectIdentifier:()=>$l,OctetString:()=>Wl,Primitive:()=>Nl,PrintableString:()=>gh,RawData:()=>Bh,RelativeObjectIdentifier:()=>rh,Repeated:()=>Oh,Sequence:()=>ih,Set:()=>nh,TIME:()=>Rh,TeletexString:()=>yh,TimeOfDay:()=>xh,UTCTime:()=>Eh,UniversalString:()=>dh,Utf8String:()=>lh,ValueBlock:()=>Wc,VideotexString:()=>mh,ViewWriter:()=>Rc,VisibleString:()=>Ah,compareSchema:()=>Ph,fromBER:()=>Bl,verifySchema:()=>Dh});var e=r(2475),i=r.n(e),n={202:"Accepted",502:"Bad Gateway",400:"Bad Request",409:"Conflict",100:"Continue",201:"Created",417:"Expectation Failed",424:"Failed Dependency",403:"Forbidden",504:"Gateway Timeout",410:"Gone",505:"HTTP Version Not Supported",418:"I'm a teapot",419:"Insufficient Space on Resource",507:"Insufficient Storage",500:"Internal Server Error",411:"Length Required",423:"Locked",420:"Method Failure",405:"Method Not Allowed",301:"Moved Permanently",302:"Moved Temporarily",207:"Multi-Status",300:"Multiple Choices",511:"Network Authentication Required",204:"No Content",203:"Non Authoritative Information",406:"Not Acceptable",404:"Not Found",501:"Not Implemented",304:"Not Modified",200:"OK",206:"Partial Content",402:"Payment Required",308:"Permanent Redirect",412:"Precondition Failed",428:"Precondition Required",102:"Processing",407:"Proxy Authentication Required",431:"Request Header Fields Too Large",408:"Request Timeout",413:"Request Entity Too Large",414:"Request-URI Too Long",416:"Requested Range Not Satisfiable",205:"Reset Content",303:"See Other",503:"Service Unavailable",101:"Switching Protocols",307:"Temporary Redirect",429:"Too Many Requests",401:"Unauthorized",451:"Unavailable For Legal Reasons",422:"Unprocessable Entity",415:"Unsupported Media Type",305:"Use Proxy"};const s=25e6,o=262144,a=/Expires=\w{3},\s\d[^;,]+(?:;\s*)?/gi;function c(t,e){for(const r of e)if(t.startsWith(r))return!0;return!1}function l(t){return t.replace(/[-:T]/g,"").slice(0,14)}function h(t){if(!t)return new Date;t.length<17&&(t+="00000101000000000".substring(t.length));const e=t.substring(0,4)+"-"+t.substring(4,6)+"-"+t.substring(6,8)+"T"+t.substring(8,10)+":"+t.substring(10,12)+":"+t.substring(12,14)+"."+t.substring(14)+"Z";return new Date(e)}function u(t){return Array.from(new Uint8Array(t)).map((t=>t.toString(16).padStart(2,"0"))).join("")}async function p(t,e,r=null){const i="string"==typeof t?(new TextEncoder).encode(t):t,n=await crypto.subtle.digest(e,i);return""===r?u(n):(r||e)+":"+u(n)}function d(t){let e="";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e}function f(t){const e=new Uint8Array(t.length);for(let r=0;r<t.length;r++)e[r]=255&t.charCodeAt(r);return e}function g(){return Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15)}function y(t){try{return new Headers(t)}catch(e){if("object"==typeof t){const e=t;for(const r of Object.keys(t)){const t=e[r],i=t.replace(/[\r\n]+/g,", ");t!=i&&(e[r]=i)}}else{const e=t;for(const r of Object.keys(t)){const t=e.get(r)||"",i=t.replace(/[\r\n]+/g,", ");t!=i&&e.set(r,i)}}return new Headers(t)}}const m=[101,204,205,304];function w(t){return m.includes(t)}function b(t){try{return function(t){var e=n[t.toString()];if(!e)throw new Error("Status code does not exist: "+t);return e}(t)}catch(t){return"Unknown Status"}}function A(t){return"XMLHttpRequest"===t.headers.get("X-Pywb-Requested-With")||"cors"===t.mode&&("script"!==t.destination||"esm_"!==t.mod)}async function v(t,e){if(t instanceof T){const r=await self.clients.matchAll({type:"window"});for(const i of r)new URL(i.url).searchParams.get("source")===e.sourceUrl&&i.postMessage({source:e.sourceUrl,coll:e.dbname.slice(3),type:"authneeded",fileHandle:t.info.fileHandle});return!0}return!1}function _(t,e,r=404){let i,n;e||(e="Sorry, this url was not found in the archive."),"script"===t.destination||t.headers.get("x-pywb-requested-with")?(i=JSON.stringify(e),n="application/json"):(i=e,n="text/html");const s={status:r,statusText:b(r),headers:{"Content-Type":n}};return new Response(i,s)}function E(t){const e=t.config.metadata?t.config.metadata:{},r={...e,title:e.title||"",desc:e.desc||"",size:e.size||0,filename:t.config.sourceName,loadUrl:t.config.loadUrl,sourceUrl:t.config.sourceUrl,id:t.name,ctime:t.config.ctime,mtime:e.mtime||t.config.ctime,onDemand:t.config.onDemand};return e.ipfsPins&&(r.ipfsPins=e.ipfsPins),r}class S{info;constructor(t={}){this.info=t}toString(){return JSON.stringify(this.info)}}class T extends S{}class x extends S{}class C{}async function I(t){return new Promise((e=>setTimeout(e,t)))}var R,k=r(7709),N=r.n(k),O=r(9591),B=r.n(O),P=r(2043);
26
+ var i=r(8764),n=i.Buffer;function s(t,e){for(var r in t)e[r]=t[r]}function o(t,e,r){return n(t,e,r)}n.from&&n.alloc&&n.allocUnsafe&&n.allocUnsafeSlow?t.exports=i:(s(i,e),e.Buffer=o),o.prototype=Object.create(n.prototype),s(n,o),o.from=function(t,e,r){if("number"==typeof t)throw new TypeError("Argument must not be a number");return n(t,e,r)},o.alloc=function(t,e,r){if("number"!=typeof t)throw new TypeError("Argument must be a number");var i=n(t);return void 0!==e?"string"==typeof r?i.fill(e,r):i.fill(e):i.fill(0),i},o.allocUnsafe=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return n(t)},o.allocUnsafeSlow=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return i.SlowBuffer(t)}},2830:(t,e,r)=>{t.exports=n;var i=r(7187).EventEmitter;function n(){i.call(this)}r(5717)(n,i),n.Readable=r(9481),n.Writable=r(4229),n.Duplex=r(6753),n.Transform=r(4605),n.PassThrough=r(2725),n.finished=r(8610),n.pipeline=r(9946),n.Stream=n,n.prototype.pipe=function(t,e){var r=this;function n(e){t.writable&&!1===t.write(e)&&r.pause&&r.pause()}function s(){r.readable&&r.resume&&r.resume()}r.on("data",n),t.on("drain",s),t._isStdio||e&&!1===e.end||(r.on("end",a),r.on("close",c));var o=!1;function a(){o||(o=!0,t.end())}function c(){o||(o=!0,"function"==typeof t.destroy&&t.destroy())}function l(t){if(h(),0===i.listenerCount(this,"error"))throw t}function h(){r.removeListener("data",n),t.removeListener("drain",s),r.removeListener("end",a),r.removeListener("close",c),r.removeListener("error",l),t.removeListener("error",l),r.removeListener("end",h),r.removeListener("close",h),t.removeListener("close",h)}return r.on("error",l),t.on("error",l),r.on("end",h),r.on("close",h),t.on("close",h),t.emit("pipe",r),t}},2553:(t,e,r)=>{var i=r(9509).Buffer,n=i.isEncoding||function(t){switch((t=""+t)&&t.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(t){var e;switch(this.encoding=function(t){var e=function(t){if(!t)return"utf8";for(var e;;)switch(t){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 t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}(t);if("string"!=typeof e&&(i.isEncoding===n||!n(t)))throw new Error("Unknown encoding: "+t);return e||t}(t),this.encoding){case"utf16le":this.text=c,this.end=l,e=4;break;case"utf8":this.fillLast=a,e=4;break;case"base64":this.text=h,this.end=u,e=3;break;default:return this.write=p,void(this.end=d)}this.lastNeed=0,this.lastTotal=0,this.lastChar=i.allocUnsafe(e)}function o(t){return t<=127?0:t>>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function a(t){var e=this.lastTotal-this.lastNeed,r=function(t,e,r){if(128!=(192&e[0]))return t.lastNeed=0,"�";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,"�";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,"�"}}(this,t);return void 0!==r?r:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function c(t,e){if((t.length-e)%2==0){var r=t.toString("utf16le",e);if(r){var i=r.charCodeAt(r.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function l(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function h(t,e){var r=(t.length-e)%3;return 0===r?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function u(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function p(t){return t.toString(this.encoding)}function d(t){return t&&t.length?this.write(t):""}e.s=s,s.prototype.write=function(t){if(0===t.length)return"";var e,r;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r<t.length?e?e+this.text(t,r):this.text(t,r):e||""},s.prototype.end=function(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+"�":e},s.prototype.text=function(t,e){var r=function(t,e,r){var i=e.length-1;if(i<r)return 0;var n=o(e[i]);return n>=0?(n>0&&(t.lastNeed=n-1),n):--i<r||-2===n?0:(n=o(e[i]))>=0?(n>0&&(t.lastNeed=n-2),n):--i<r||-2===n?0:(n=o(e[i]))>=0?(n>0&&(2===n?n=0:t.lastNeed=n-3),n):0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var i=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,i),t.toString("utf8",e,i)},s.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},4153:t=>{const e=/^[-+]?0x[a-fA-F0-9]+$/,r=/^([\-\+])?(0*)(\.[0-9]+([eE]\-?[0-9]+)?|[0-9]+(\.[0-9]+([eE]\-?[0-9]+)?)?)$/;!Number.parseInt&&window.parseInt&&(Number.parseInt=window.parseInt),!Number.parseFloat&&window.parseFloat&&(Number.parseFloat=window.parseFloat);const i={hex:!0,leadingZeros:!0,decimalPoint:".",eNotation:!0};t.exports=function(t,n={}){if(n=Object.assign({},i,n),!t||"string"!=typeof t)return t;let s=t.trim();if(void 0!==n.skipLike&&n.skipLike.test(s))return t;if(n.hex&&e.test(s))return Number.parseInt(s,16);{const e=r.exec(s);if(e){const r=e[1],i=e[2];let o=function(t){return t&&-1!==t.indexOf(".")?("."===(t=t.replace(/0+$/,""))?t="0":"."===t[0]?t="0"+t:"."===t[t.length-1]&&(t=t.substr(0,t.length-1)),t):t}(e[3]);const a=e[4]||e[6];if(!n.leadingZeros&&i.length>0&&r&&"."!==s[2])return t;if(!n.leadingZeros&&i.length>0&&!r&&"."!==s[1])return t;{const e=Number(s),c=""+e;return-1!==c.search(/[eE]/)||a?n.eNotation?e:t:-1!==s.indexOf(".")?"0"===c&&""===o||c===o||r&&c==="-"+o?e:t:i?o===c||r+o===c?e:t:s===c||s===r+c?e:t}}return t}}},4927:(t,e,r)=>{function i(t){try{if(!r.g.localStorage)return!1}catch(t){return!1}var e=r.g.localStorage[t];return null!=e&&"true"===String(e).toLowerCase()}t.exports=function(t,e){if(i("noDeprecation"))return t;var r=!1;return function(){if(!r){if(i("throwDeprecation"))throw new Error(e);i("traceDeprecation")?console.trace(e):console.warn(e),r=!0}return t.apply(this,arguments)}}},2043:(t,e,r)=>{!function(){var e,i,n,s=0,o=[];for(i=0;i<256;i++)o[i]=(i+256).toString(16).substr(1);function a(){var t=(16,(!e||s+16>c.BUFFER_SIZE)&&(s=0,e=c.randomBytes(c.BUFFER_SIZE)),e.slice(s,s+=16));return t[6]=15&t[6]|64,t[8]=63&t[8]|128,t}function c(){var t=a();return o[t[0]]+o[t[1]]+o[t[2]]+o[t[3]]+"-"+o[t[4]]+o[t[5]]+"-"+o[t[6]]+o[t[7]]+"-"+o[t[8]]+o[t[9]]+"-"+o[t[10]]+o[t[11]]+o[t[12]]+o[t[13]]+o[t[14]]+o[t[15]]}c.BUFFER_SIZE=4096,c.bin=a,c.clearBuffer=function(){e=null,s=0},c.test=function(t){return"string"==typeof t&&/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(t)},"undefined"!=typeof crypto?n=crypto:"undefined"!=typeof window&&void 0!==window.msCrypto&&(n=window.msCrypto),n=n||r(9061),t.exports=c,c.randomBytes=function(){if(n){if(n.randomBytes)return n.randomBytes;if(n.getRandomValues)return"function"!=typeof Uint8Array.prototype.slice?function(t){var e=new Uint8Array(t);return n.getRandomValues(e),Array.from(e)}:function(t){var e=new Uint8Array(t);return n.getRandomValues(e),e}}return function(t){var e,r=[];for(e=0;e<t;e++)r.push(Math.floor(256*Math.random()));return r}}()}()},2361:()=>{},4616:()=>{},9061:()=>{}},e={};function r(i){var n=e[i];if(void 0!==n)return n.exports;var s=e[i]={exports:{}};return t[i].call(s.exports,s,s.exports,r),s.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var i in e)r.o(e,i)&&!r.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},(()=>{var t={};r.r(t),r.d(t,{Any:()=>Nh,BaseBlock:()=>Qc,BaseStringBlock:()=>Yc,BitString:()=>zl,BmpString:()=>ph,Boolean:()=>jl,CharacterString:()=>Eh,Choice:()=>Oh,Constructed:()=>Ll,DATE:()=>xh,DateTime:()=>Ih,Duration:()=>Rh,EndOfContent:()=>Ml,Enumerated:()=>Xl,GeneralString:()=>_h,GeneralizedTime:()=>Th,GraphicString:()=>Ah,HexBlock:()=>jc,IA5String:()=>bh,Integer:()=>Jl,Null:()=>Fl,NumericString:()=>gh,ObjectIdentifier:()=>th,OctetString:()=>Vl,Primitive:()=>Ol,PrintableString:()=>yh,RawData:()=>Ph,RelativeObjectIdentifier:()=>ih,Repeated:()=>Bh,Sequence:()=>nh,Set:()=>sh,TIME:()=>kh,TeletexString:()=>mh,TimeOfDay:()=>Ch,UTCTime:()=>Sh,UniversalString:()=>fh,Utf8String:()=>hh,ValueBlock:()=>Vc,VideotexString:()=>wh,ViewWriter:()=>kc,VisibleString:()=>vh,compareSchema:()=>Dh,fromBER:()=>Pl,verifySchema:()=>Lh});var e=r(2475),i=r.n(e),n={202:"Accepted",502:"Bad Gateway",400:"Bad Request",409:"Conflict",100:"Continue",201:"Created",417:"Expectation Failed",424:"Failed Dependency",403:"Forbidden",504:"Gateway Timeout",410:"Gone",505:"HTTP Version Not Supported",418:"I'm a teapot",419:"Insufficient Space on Resource",507:"Insufficient Storage",500:"Internal Server Error",411:"Length Required",423:"Locked",420:"Method Failure",405:"Method Not Allowed",301:"Moved Permanently",302:"Moved Temporarily",207:"Multi-Status",300:"Multiple Choices",511:"Network Authentication Required",204:"No Content",203:"Non Authoritative Information",406:"Not Acceptable",404:"Not Found",501:"Not Implemented",304:"Not Modified",200:"OK",206:"Partial Content",402:"Payment Required",308:"Permanent Redirect",412:"Precondition Failed",428:"Precondition Required",102:"Processing",407:"Proxy Authentication Required",431:"Request Header Fields Too Large",408:"Request Timeout",413:"Request Entity Too Large",414:"Request-URI Too Long",416:"Requested Range Not Satisfiable",205:"Reset Content",303:"See Other",503:"Service Unavailable",101:"Switching Protocols",307:"Temporary Redirect",429:"Too Many Requests",401:"Unauthorized",451:"Unavailable For Legal Reasons",422:"Unprocessable Entity",415:"Unsupported Media Type",305:"Use Proxy"};const s=25e6,o=262144,a=/Expires=\w{3},\s\d[^;,]+(?:;\s*)?/gi;function c(t,e){for(const r of e)if(t.startsWith(r))return!0;return!1}function l(t){return t.replace(/[-:T]/g,"").slice(0,14)}function h(t){if(!t)return new Date;t.length<17&&(t+="00000101000000000".substring(t.length));const e=t.substring(0,4)+"-"+t.substring(4,6)+"-"+t.substring(6,8)+"T"+t.substring(8,10)+":"+t.substring(10,12)+":"+t.substring(12,14)+"."+t.substring(14)+"Z";return new Date(e)}function u(t){return Array.from(new Uint8Array(t)).map((t=>t.toString(16).padStart(2,"0"))).join("")}async function p(t,e,r=null){const i="string"==typeof t?(new TextEncoder).encode(t):t,n=await crypto.subtle.digest(e,i);return""===r?u(n):(r||e)+":"+u(n)}function d(t){let e="";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e}function f(t){const e=new Uint8Array(t.length);for(let r=0;r<t.length;r++)e[r]=255&t.charCodeAt(r);return e}function g(){return Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15)}function y(t){try{return new Headers(t)}catch(e){if("object"==typeof t){const e=t;for(const r of Object.keys(t)){const t=e[r],i=t.replace(/[\r\n]+/g,", ");t!=i&&(e[r]=i)}}else{const e=t;for(const r of Object.keys(t)){const t=e.get(r)||"",i=t.replace(/[\r\n]+/g,", ");t!=i&&e.set(r,i)}}return new Headers(t)}}const m=[101,204,205,304];function w(t){return m.includes(t)}function b(t){try{return function(t){var e=n[t.toString()];if(!e)throw new Error("Status code does not exist: "+t);return e}(t)}catch(t){return"Unknown Status"}}function A(t){return"XMLHttpRequest"===t.headers.get("X-Pywb-Requested-With")||"cors"===t.mode&&("script"!==t.destination||"esm_"!==t.mod)}async function v(t,e){if(t instanceof T){const r=await self.clients.matchAll({type:"window"});for(const i of r)new URL(i.url).searchParams.get("source")===e.sourceUrl&&i.postMessage({source:e.sourceUrl,coll:e.dbname.slice(3),type:"authneeded",fileHandle:t.info.fileHandle});return!0}return!1}function _(t,e,r=404){let i,n;e||(e="Sorry, this url was not found in the archive."),"script"===t.destination||t.headers.get("x-pywb-requested-with")?(i=JSON.stringify(e),n="application/json"):(i=e,n="text/html");const s={status:r,statusText:b(r),headers:{"Content-Type":n}};return new Response(i,s)}function E(t){const e=t.config.metadata?t.config.metadata:{},r={...e,title:e.title||"",desc:e.desc||"",size:e.size||0,filename:t.config.sourceName,loadUrl:t.config.loadUrl,sourceUrl:t.config.sourceUrl,id:t.name,ctime:t.config.ctime,mtime:e.mtime||t.config.ctime,onDemand:t.config.onDemand};return e.ipfsPins&&(r.ipfsPins=e.ipfsPins),r}class S{info;constructor(t={}){this.info=t}toString(){return JSON.stringify(this.info)}}class T extends S{}class x extends S{}class C{}async function I(t){return new Promise((e=>setTimeout(e,t)))}var R,k=r(7709),N=r.n(k),O=r(9591),B=r.n(O),P=r(2043);
27
27
  /*!
28
28
  * hash-wasm (https://www.npmjs.com/package/hash-wasm)
29
29
  * (c) Dani Biro
@@ -42,8 +42,8 @@ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
42
42
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
43
43
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
44
44
  PERFORMANCE OF THIS SOFTWARE.
45
- ***************************************************************************** */function D(t,e,r,i){return new(r||(r=Promise))((function(n,s){function o(t){try{c(i.next(t))}catch(t){s(t)}}function a(t){try{c(i.throw(t))}catch(t){s(t)}}function c(t){var e;t.done?n(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(o,a)}c((i=i.apply(t,e||[])).next())}))}class L{constructor(){this.mutex=Promise.resolve()}lock(){let t=()=>{};return this.mutex=this.mutex.then((()=>new Promise(t))),new Promise((e=>{t=e}))}dispatch(t){return D(this,void 0,void 0,(function*(){const e=yield this.lock();try{return yield Promise.resolve(t())}finally{e()}}))}}const U="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:r.g,M=null!==(R=U.Buffer)&&void 0!==R?R:null,F=U.TextEncoder?new U.TextEncoder:null;function H(t,e){return(15&t)+(t>>6|t>>3&8)<<4|(15&e)+(e>>6|e>>3&8)}const j="a".charCodeAt(0)-10,W="0".charCodeAt(0);function V(t,e,r){let i=0;for(let n=0;n<r;n++){let r=e[n]>>>4;t[i++]=r>9?r+j:r+W,r=15&e[n],t[i++]=r>9?r+j:r+W}return String.fromCharCode.apply(null,t)}const G=null!==M?t=>{if("string"==typeof t){const e=M.from(t,"utf8");return new Uint8Array(e.buffer,e.byteOffset,e.length)}if(M.isBuffer(t))return new Uint8Array(t.buffer,t.byteOffset,t.length);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Invalid data type!")}:t=>{if("string"==typeof t)return F.encode(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Invalid data type!")},z="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",q=new Uint8Array(256);for(let t=0;t<64;t++)q[z.charCodeAt(t)]=t;function Q(t){const e=function(t){let e=Math.floor(.75*t.length);const r=t.length;return"="===t[r-1]&&(e-=1,"="===t[r-2]&&(e-=1)),e}(t),r=t.length,i=new Uint8Array(e);let n=0;for(let e=0;e<r;e+=4){const r=q[t.charCodeAt(e)],s=q[t.charCodeAt(e+1)],o=q[t.charCodeAt(e+2)],a=q[t.charCodeAt(e+3)];i[n]=r<<2|s>>4,n+=1,i[n]=(15&s)<<4|o>>2,n+=1,i[n]=(3&o)<<6|63&a,n+=1}return i}const K=16384,Y=new L,J=new Map;function X(t,e){return D(this,void 0,void 0,(function*(){let r=null,i=null,n=!1;if("undefined"==typeof WebAssembly)throw new Error("WebAssembly is not supported in this environment!");const s=()=>new DataView(r.exports.memory.buffer).getUint32(r.exports.STATE_SIZE,!0),o=Y.dispatch((()=>D(this,void 0,void 0,(function*(){if(!J.has(t.name)){const e=Q(t.data),r=WebAssembly.compile(e);J.set(t.name,r)}const e=yield J.get(t.name);r=yield WebAssembly.instantiate(e,{})})))),a=(t=null)=>{n=!0,r.exports.Hash_Init(t)},c=t=>{if(!n)throw new Error("update() called before init()");(t=>{let e=0;for(;e<t.length;){const n=t.subarray(e,e+K);e+=n.length,i.set(n),r.exports.Hash_Update(n.length)}})(G(t))},l=new Uint8Array(2*e),h=(t,s=null)=>{if(!n)throw new Error("digest() called before init()");return n=!1,r.exports.Hash_Final(s),"binary"===t?i.slice(0,e):V(l,i,e)},u=t=>"string"==typeof t?t.length<4096:t.byteLength<K;let p=u;switch(t.name){case"argon2":case"scrypt":p=()=>!0;break;case"blake2b":case"blake2s":p=(t,e)=>e<=512&&u(t);break;case"blake3":p=(t,e)=>0===e&&u(t);break;case"xxhash64":case"xxhash3":case"xxhash128":p=()=>!1}return yield(()=>D(this,void 0,void 0,(function*(){r||(yield o);const t=r.exports.Hash_GetBuffer(),e=r.exports.memory.buffer;i=new Uint8Array(e,t,K)})))(),{getMemory:()=>i,writeMemory:(t,e=0)=>{i.set(t,e)},getExports:()=>r.exports,setMemorySize:t=>{r.exports.Hash_SetMemorySize(t);const e=r.exports.Hash_GetBuffer(),n=r.exports.memory.buffer;i=new Uint8Array(n,e,t)},init:a,update:c,digest:h,save:()=>{if(!n)throw new Error("save() can only be called after init() and before digest()");const e=r.exports.Hash_GetState(),i=s(),o=r.exports.memory.buffer,a=new Uint8Array(o,e,i),c=new Uint8Array(4+i);return function(t,e){const r=e.length>>1;for(let i=0;i<r;i++){const r=i<<1;t[i]=H(e.charCodeAt(r),e.charCodeAt(r+1))}}(c,t.hash),c.set(a,4),c},load:e=>{if(!(e instanceof Uint8Array))throw new Error("load() expects an Uint8Array generated by save()");const i=r.exports.Hash_GetState(),o=s(),a=4+o,c=r.exports.memory.buffer;if(e.length!==a)throw new Error(`Bad state length (expected ${a} bytes, got ${e.length})`);if(!function(t,e){if(t.length!==2*e.length)return!1;for(let r=0;r<e.length;r++){const i=r<<1;if(e[r]!==H(t.charCodeAt(i),t.charCodeAt(i+1)))return!1}return!0}(t.hash,e.subarray(0,4)))throw new Error("This state was written by an incompatible hash implementation");const l=e.subarray(4);new Uint8Array(c,i,o).set(l),n=!0},calculate:(t,n=null,s=null)=>{if(!p(t,n))return a(n),c(t),h("hex",s);const o=G(t);return i.set(o),r.exports.Hash_Calculate(o.length,n,s),V(l,i,e)},hashLength:e}}))}new L,new L,new DataView(new ArrayBuffer(4)),new L,new L,new L,new L,new L,new L,new L,new L,new L;var Z={name:"sha256",data:"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",hash:"817d957e"};function $(t){let e;e="string"==typeof t?t:t?.length?t.reduce(((t,e)=>t+String.fromCharCode(e)),""):t?t.toString():"";try{return"__wb_post_data="+btoa(e)}catch{return"__wb_post_data="}}function tt(t){try{if(!t.startsWith("https:")&&!t.startsWith("http:"))return t;let e=(t=t.replace(/^(https?:\/\/)www\d*\./,"$1")).toLowerCase(),r=new URL(e),i=r.hostname.split(".").reverse().join(",");if(r.port&&(i+=":"+r.port),i+=")",i+=r.pathname,r.search){let t=r.search.slice(1).split("&");t.sort(),i+="?"+t.join("&")}return i}catch{return t}}function et(t){let{method:e,headers:r,postData:i=""}=t;if("GET"===e)return!1;let n=(t=>{let e=t.get("content-type");if(e)return e;if(!(t instanceof Headers))for(let[e,r]of t.entries())if(e&&"content-type"===e.toLowerCase())return r;return""})(r);function s(t){return t instanceof Uint8Array&&(t=(new TextDecoder).decode(t)),t}let o="";switch(n.split(";")[0]){case"application/x-www-form-urlencoded":o=s(i);break;case"application/json":o=nt(s(i));break;case"text/plain":try{o=nt(s(i),!1)}catch{o=$(i)}break;case"multipart/form-data":if(!n)throw new Error("utils cannot call postToGetURL when missing content-type header");o=function(t,e){return function(t="",e){let r=new URLSearchParams;t instanceof Uint8Array&&(t=(new TextDecoder).decode(t));try{let i=e.split("boundary=")[1],n=t.split(new RegExp("-*"+i+"-*","mi"));for(let t of n){let e=t.trim().match(/name="([^"]+)"\r\n\r\n(.*)/im);e&&r.set(e[1],e[2])}}catch{}return r}(t,e).toString()}(s(i),n);break;default:o=$(i)}return null!=o&&(t.url=rt(t.url,decodeURI(o),t.method),t.method="GET",t.requestBody=o,!0)}function rt(t,e,r){if(!r)return t;let i=t.indexOf("?")>0?"&":"?";return`${t}${i}__wb_method=${r}&${e}`}function it(t,e=!0){if("string"==typeof t)try{t=JSON.parse(t)}catch{t={}}let r=new URLSearchParams,i={},n=(t,e="")=>{let s="";if("object"!=typeof t||t instanceof Array){if(t instanceof Array)for(let r=0;r<t.length;r++)n(t[r],e)}else try{for(let[e,r]of Object.entries(t))n(r,e)}catch{null===t&&(s="null")}["string","number","boolean"].includes(typeof t)&&(s=t.toString()),s&&r.set((t=>r.has(t)?(t in i||(i[t]=1),t+"."+ ++i[t]+"_"):t)(e),s)};try{n(t)}catch(t){if(!e)throw t}return r}function nt(t="",e=!0){return it(t,e).toString()}function st(t,e){if(1===t.length)return t[0];let r=new Uint8Array(e),i=0;for(let e of t)r.set(e,i),i+=e.byteLength;return r}function ot(t,e){return[t.slice(0,e),t.slice(e)]}new L,new L,new L,new L,new L,new L,new ArrayBuffer(8),new L,new ArrayBuffer(8),new L,new ArrayBuffer(8),new L,new L,new L;var at=["set-cookie","warc-concurrent-to","warc-protocol"],ct=",,,",lt=class extends Map{constructor(t){if(t instanceof Array){super();for(let e of t)if(e instanceof Array){let t=e[0],r=e[1];this.append(t,r)}}else super(t?Object.entries(t):void 0)}getMultiple(t){let e=super.get(t);if(e)return at.includes(t.toLowerCase())?e.split(ct):[e]}append(t,e){if(at.includes(t.toLowerCase())){let r=this.get(t);this.set(t,void 0!==r?r+ct+e:e)}else this.set(t,e)}*[Symbol.iterator](){for(let[t,e]of super[Symbol.iterator]())if(at.includes(t.toLowerCase()))for(let r of e.split(ct))yield[t,r];else yield[t,e]}},ht=new TextDecoder("utf-8"),ut=class extends O.Inflate{constructor(t,e){super(t),this.ended=!1,this.chunks=[],this.reader=e}onEnd(t){this.err=t,this.err||(this.reader._rawOffset+=this.strm.total_in)}},pt=class t{static async readFully(t){let e=[],r=0;for await(let i of t)e.push(i),r+=i.byteLength;return st(e,r)}getReadableStream(){let t=this[Symbol.asyncIterator]();return new ReadableStream({pull:async e=>t.next().then((t=>{t.done||!t.value?e.close():e.enqueue(t.value)}))})}async readFully(){return await t.readFully(this)}async readline(t=0){let e=await this.readlineRaw(t);return e?ht.decode(e):""}async*iterLines(t=0){let e=null;for(;e=await this.readline(t);)yield e}},dt=class t extends pt{constructor(e,r="gzip",i=!1){let n;if(super(),this.compressed=r,this.opts={raw:"deflateRaw"===r},this.inflator=r?new ut(this.opts,this):null,function(t){return!(!t||!(Symbol.asyncIterator in Object(t)))}(e))n=e;else if("object"==typeof e&&"read"in e&&"function"==typeof e.read)n=t.fromReadable(e);else if(e instanceof ReadableStream)n=t.fromReadable(e.getReader());else{if(!function(t){return!(!t||!(Symbol.iterator in Object(t)))}(e))throw new TypeError("Invalid Stream Source");n=t.fromIter(e)}this._sourceIter=i?this.dechunk(n):n[Symbol.asyncIterator](),this.lastValue=null,this.errored=!1,this._savedChunk=null,this._rawOffset=0,this._readOffset=0,this.numChunks=0}async _loadNext(){let t=await this._sourceIter.next();return t.done?null:t.value}async*dechunk(e){let r=e instanceof t?e:new t(e,null),i=-1,n=!0;for(;0!=i;){let t=await r.readlineRaw(64),e=new Uint8Array;if(i=t?parseInt(ht.decode(t),16):0,!i||i>2**32){if(Number.isNaN(i)||i>2**32){n||(this.errored=!0),yield t;break}}else if(e=await r.readSize(i),e.length!=i){n?yield t:this.errored=!0,yield e;break}let s=await r.readSize(2);if(13!=s[0]||10!=s[1]){n?yield t:this.errored=!0,yield e,yield s;break}if(n=!1,!e||0===i)return;yield e}yield*r}unread(t){t.length&&(this._readOffset-=t.length,this._savedChunk&&console.log("Already have chunk!"),this._savedChunk=t)}async _next(){if(this._savedChunk){let t=this._savedChunk;return this._savedChunk=null,t}if(this.compressed){let t=this._getNextChunk();if(t)return t}let t=await this._loadNext();for(;this.compressed&&t;){this._push(t);let e=this._getNextChunk(t);if(e)return e;t=await this._loadNext()}return t}_push(t){if(!this.inflator)throw new Error("AsyncIterReader cannot call _push when this.compressed is null");this.lastValue=t,this.inflator.ended&&(this.inflator=new ut(this.opts,this)),this.inflator.push(t),this.inflator.err&&this.inflator.ended&&"deflate"===this.compressed&&!this.opts.raw&&0===this.numChunks&&(this.opts.raw=!0,this.compressed="deflateRaw",this.inflator=new ut(this.opts,this),this.inflator.push(t))}_getNextChunk(t){if(!this.inflator)throw new Error("AsyncIterReader cannot call _getNextChunk when this.compressed is null");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,t;let e=this.inflator.strm.avail_in;if(e&&this.lastValue){this._push(this.lastValue.slice(-e));continue}}return null}}async*[Symbol.asyncIterator](){let t=null;for(;t=await this._next();)this._readOffset+=t.length,yield t}async readlineRaw(t){let e=[],r=0,i=-1,n=null;for await(let s of this){if(t&&r+s.byteLength>t){n=s,i=t-r-1;let e=s.slice(0,i+1).indexOf(10);e>=0&&(i=e);break}if(i=s.indexOf(10),i>=0){n=s;break}e.push(s),r+=s.byteLength}if(n){let[t,s]=ot(n,i+1);e.push(t),r+=t.byteLength,this.unread(s)}else if(!e.length)return null;return st(e,r)}async readFully(){return(await this._readOrSkip())[1]}async readSize(t){return(await this._readOrSkip(t))[1]}async skipSize(t){return(await this._readOrSkip(t,!0))[0]}async _readOrSkip(t=-1,e=!1){let r=[],i=0;for await(let n of this){if(t>=0){if(n.length>t){let[s,o]=ot(n,t);e||r.push(s),i+=s.byteLength,this.unread(o);break}if(n.length===t){e||r.push(n),i+=n.byteLength,t=0;break}t-=n.length}e||r.push(n),i+=n.byteLength}return e?[i,new Uint8Array]:[i,st(r,i)]}getReadOffset(){return this._readOffset}getRawOffset(){return this.compressed?this._rawOffset:this._readOffset}getRawLength(t){return this.compressed?this.inflator.strm.total_in:this._readOffset-t}static fromReadable(t){return{async*[Symbol.asyncIterator](){let e=null;for(;(e=await t.read())&&!e.done;)yield e.value}}}static fromIter(t){return{async*[Symbol.asyncIterator](){for(let e of t)yield e}}}},ft=class extends pt{constructor(t,e,r=0){super(),this.sourceIter=t,this.length=e,this.limit=e,this.skip=r}setLimitSkip(t,e=0){this.limit=t,this.skip=e}async*[Symbol.asyncIterator](){if(!(this.limit<=0))for await(let t of this.sourceIter){if(this.skip>0){if(!(t.length>=this.skip)){this.skip-=t.length;continue}{let[,e]=ot(t,this.skip);t=e,this.skip=0}}if(t.length>this.limit){let[e,r]=ot(t,this.limit);t=e,this.sourceIter.unread&&this.sourceIter.unread(r)}if(t.length&&(this.limit-=t.length,yield t),this.limit<=0)break}}async readlineRaw(t){if(this.limit<=0)return null;let e=await this.sourceIter.readlineRaw(t?Math.min(t,this.limit):this.limit);return this.limit-=e?.length||0,e}async skipFully(){let t=this.limit;for(;this.limit>0;)this.limit-=await this.sourceIter.skipSize(this.limit);return t}},gt=new Uint8Array([13,10]),yt=(new Uint8Array([13,10,13,10]),new TextDecoder("utf-8")),mt=class{constructor({statusline:t,headers:e,reencodeHeaders:r}){this.statusline=t,this.headers=e,this.reencodeHeaders=r}toString(){let t=[this.statusline],e=this.headers instanceof Headers;for(let[r,i]of this.headers)e&&this.reencodeHeaders?.has(r)?t.push(`${r}: ${wt(i)}`):t.push(`${r}: ${i}`);return t.join("\r\n")+"\r\n"}async*iterSerialize(t){yield t.encode(this.statusline),yield gt;for(let[e,r]of this.headers)yield t.encode(`${e}: ${r}\r\n`)}_parseResponseStatusLine(){let t=function(t,e,r){let i=t.split(" "),n=i.slice(0,2);return i.slice(2).length>0&&n.push(i.slice(2).join(" ")),n}(this.statusline);this._protocol=t[0]??"",this._statusCode=t.length>1?Number(t[1]):"",this._statusText=t.length>2?t[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(){let t=this.statusline.split(" ",2);this._method=t[0]??"",this._requestPath=t.length>1?t[1]:""}get method(){return void 0===this._method&&this._parseRequestStatusLine(),this._method}get requestPath(){return void 0===this._requestPath&&this._parseRequestStatusLine(),this._requestPath}};function wt(t){let e=new Uint8Array(t.length);for(let r=0;r<t.length;r++)e[r]=255&t.charCodeAt(r);return(new TextDecoder).decode(e)}async function bt(t,e){let r=0;for(let i=0;i<t.length-4;i++){let i=t.indexOf(13,r);if(i<0)break;if(i+3>=t.length){let{value:r}=await e.next();if(!r)break;let i=new Uint8Array(r.length+t.length);i.set(t,0),i.set(r,t.length),t=i}if(10===t[i+1]&&13===t[i+2]&&10===t[i+3])return[i+3,t];r=i+1}return[-1,t]}var At=new TextDecoder("utf-8"),vt=new TextEncoder,_t="WARC/1.0",Et={warcinfo:"application/warc-fields",response:"application/http; msgtype=response",revisit:"application/http; msgtype=response",request:"application/http; msgtype=request",metadata:"application/warc-fields"},St=class t extends pt{constructor({warcHeaders:t,reader:e}){super(),this._offset=0,this._length=0,this._urlkey="",this.warcHeaders=t,this._reader=e,this._contentReader=null,this.payload=null,this.httpHeaders=null,this.consumed="",this.fixUp()}static create({url:e,date:r,type:i,warcHeaders:n={},filename:s="",httpHeaders:o={},statusline:a="HTTP/1.1 200 OK",warcVersion:c=_t,keepHeadersCase:l=!0,refersToUrl:h,refersToDate:u}={},p){function d(t){let e=t;return c===_t&&"Z"!=(t=t.split(".")[0]).charAt(e.length-1)&&(t+="Z"),t}r=d(r||(new Date).toISOString());let f=new lt(n);if("warcinfo"===i)s&&f.set("WARC-Filename",s);else if(e)try{f.set("WARC-Target-URI",new URL(e).href)}catch{f.set("WARC-Target-URI",e)}f.set("WARC-Date",r),i&&f.set("WARC-Type",i),"revisit"===i&&(f.set("WARC-Profile","WARC/1.1"===c?"http://netpreserve.org/warc/1.1/revisit/identical-payload-digest":"http://netpreserve.org/warc/1.0/revisit/identical-payload-digest"),h&&(f.set("WARC-Refers-To-Target-URI",h),f.set("WARC-Refers-To-Date",d(u||(new Date).toISOString()))));let g=new mt({statusline:c,headers:f});g.headers.get("WARC-Record-ID")||g.headers.set("WARC-Record-ID",`<urn:uuid:${P()}>`),g.headers.get("Content-Type")||g.headers.set("Content-Type",i&&Et[i]||"application/octet-stream"),p||(p=Tt());let y=new t({warcHeaders:g,reader:p}),m=null,w=!1;switch(i){case"response":case"request":case"revisit":l?(m=new lt(o),w=!m.size):(m=new Headers(o),w=!Object.entries(o).length),(!w||"revisit"!==i)&&(y.httpHeaders=new mt({statusline:a,headers:m}))}return y}static createWARCInfo(e={},r){return e.type="warcinfo",t.create(e,async function*(){for(let[t,e]of Object.entries(r))yield vt.encode(`${t}: ${e}\r\n`)}())}getResponseInfo(){let t=this.httpHeaders;return t?{headers:t.headers,status:t.statusCode,statusText:t.statusText}:null}fixUp(){let t=this.warcHeaders.headers.get("WARC-Target-URI");t&&t.startsWith("<")&&t.endsWith(">")&&this.warcHeaders.headers.set("WARC-Target-URI",t.slice(1,-1))}async readFully(t=!1){if(this.httpHeaders){if(this.payload&&!this.payload.length)return this.payload;if(this._contentReader&&!t)throw new TypeError("WARC Record decoding already started, but requesting raw payload");if(t&&"raw"===this.consumed&&this.payload)return await this._createDecodingReader([this.payload]).readFully()}return this.payload||(t?(this.payload=await super.readFully(),this.consumed="content"):(this.payload=await pt.readFully(this._reader),this.consumed="raw")),this.payload}get reader(){if(this.payload&&!this.payload.length)return Tt();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(t){if(!this.httpHeaders)throw new Error("WARCRecord cannot call _createDecodingReader when this.httpHeaders === null");let e=this.httpHeaders.headers.get("Content-Encoding"),r=this.httpHeaders.headers.get("Transfer-Encoding"),i="chunked"===r;return!e&&!i&&(e=r),new dt(t,e,i)}async readlineRaw(t){if(this.consumed)throw new Error("Record already consumed.. Perhaps a promise was not awaited?");if(this.contentReader instanceof pt)return this.contentReader.readlineRaw(t);throw new Error("WARCRecord cannot call readlineRaw on this.contentReader if it does not extend BaseAsyncIterReader")}async contentText(){let t=await this.readFully(!0);return At.decode(t)}async*[Symbol.asyncIterator](){for await(let t of this.contentReader)if(yield t,this.consumed)throw new Error("Record already consumed.. Perhaps a promise was not awaited?");this.consumed="content"}async skipFully(){if(!this.consumed){if(this._reader instanceof ft){let t=await this._reader.skipFully();return this.consumed="skipped",t}throw new Error("WARCRecord cannot call skipFully on this._reader if it is not a LimitReader")}}warcHeader(t){return this.warcHeaders.headers.get(t)}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"))}get warcConcurrentTo(){if(this.warcHeaders.headers instanceof lt)return this.warcHeaders.headers.getMultiple("WARC-Concurrent-To");{let t=this.warcHeaders.headers.get("WARC-Concurrent-To");return t?t.split(","):[]}}};async function*Tt(){}var xt=new TextDecoder,Ct=new Uint8Array([]),It=class t{static async parse(e,r){return new t(e,r).parse()}static iterRecords(e,r){return new t(e,r)[Symbol.asyncIterator]()}constructor(t,{keepHeadersCase:e=!1,parseHttp:r=!0}={}){this._offset=0,this._warcHeadersLength=0,this._headersClass=e?lt:Headers,this._parseHttp=r,this._reader=t instanceof dt?t:new dt(t),this._record=null}async readToNextRecord(){if(!this._reader||!this._record)return Ct;await this._record.skipFully(),this._reader.compressed&&(this._offset=this._reader.getRawOffset());let t=await this._reader.readlineRaw(),e=0;if(t){if(e=t.byteLength-1,9===e&&xt.decode(t).startsWith("WARC/"))return t;for(;e>0;){let r=t[e-1];if(10!==r&&13!==r)break;e--}e&&console.warn(`Content-Length Too Small: Record not followed by newline, Remainder Length: ${e}, Offset: ${this._reader.getRawOffset()-t.byteLength}`)}else t=Ct;if(this._reader.compressed)await this._reader.skipSize(2),t=Ct;else{for(t=await this._reader.readlineRaw();t&&2===t.byteLength;)t=await this._reader.readlineRaw();this._offset=this._reader.getRawOffset(),t&&(this._offset-=t.length)}return t}_initRecordReader(t){return new ft(this._reader,Number(t.headers.get("Content-Length")||0))}async parse(){let t=await this.readToNextRecord(),e=t?xt.decode(t):"",r=new class{constructor(){this.reencodeHeaders=new Set}async parse(t,{headersClass:e,firstLine:r}={headersClass:lt}){let i=r||await t.readline();if(!i)return null;let n=i.trimEnd();if(!n)return null;let s,o,a,c,l=new e,h=await async function(t){let e=[],r=0,i=0,n=null,s=t[Symbol.asyncIterator]();for await(let t of s){if([i,t]=await bt(t,s),i>=0){n=t;break}e.push(t),r+=t.byteLength}if(n){let[s,o]=ot(n,i+1);e.push(s),r+=s.byteLength,t.unread(o)}else if(!e.length)return"";return yt.decode(st(e,r))}(t),u=0,p="";for(;u<h.length&&(a=h.indexOf("\n",u),!c||" "!==h[u]&&"\t"!==h[u]?(c&&(this.setHeader(p,c,l),c=null),s=h.indexOf(":",u),o=s<0?u:s+1,s>=0&&s<a?(p=h.slice(u,s).trimStart(),c=h.slice(o,a<0?void 0:a).trim()):c=null):c+=h.slice(u,a<0?void 0:a).trimEnd(),!(a<0));)u=a+1;return c&&this.setHeader(p,c,l),new mt({statusline:n,headers:l,reencodeHeaders:this.reencodeHeaders})}setHeader(t,e,r,i=!1){try{r.append(t,e),r instanceof Headers&&i&&this.reencodeHeaders.add(t.toLowerCase())}catch{i||this.setHeader(t,function(t){let e=(new TextEncoder).encode(t),r="";return e.forEach((t=>r+=String.fromCharCode(t))),r}(e),r,!0)}}},i=await r.parse(this._reader,{firstLine:e,headersClass:this._headersClass});if(!i)return null;this._warcHeadersLength=this._reader.getReadOffset();let n=new St({warcHeaders:i,reader:this._initRecordReader(i)});if(this._record=n,this._parseHttp)switch(n.warcType){case"response":case"request":await this._addHttpHeaders(n,r);break;case"revisit":n.warcContentLength>0&&await this._addHttpHeaders(n,r)}return n}get offset(){return this._offset}get recordLength(){return this._reader.getRawLength(this._offset)}async*[Symbol.asyncIterator](){let t=null;for(;null!==(t=await this.parse());)yield t;this._record=null}async _addHttpHeaders(t,e){let r=await e.parse(this._reader,{headersClass:this._headersClass});t.httpHeaders=r;let i=this._reader.getReadOffset()-this._warcHeadersLength;t.reader instanceof ft&&t.reader.setLimitSkip(t.warcContentLength-i)}};new TextEncoder;var Rt=(Symbol.asyncIterator,["offset","warc-type","warc-target-uri"]),kt="urlkey,timestamp,url,mime,status,digest,length,offset,filename".split(","),Nt="urlkey,timestamp,url,mime,status,digest,redirect,meta,length,offset,filename".split(","),Ot=class extends class extends class{constructor(t={},e=Rt){this.opts=t,t.fields?(this.fields=t.fields,this.reqFields=this.fields.filter((t=>{return(e=t).startsWith("req.")||"referrer"===e.toLowerCase();var e}))):(this.fields=e,this.reqFields=[]),this.parseHttp=!1}serialize(t){return JSON.stringify(t)+"\n"}write(t,e){e.write(this.serialize(t))}async writeAll(t,e){for await(let r of this.iterIndex(t))this.write(r,e)}async*iterIndex(t){let e={strictHeaders:!0,parseHttp:this.parseHttp};for(let{filename:r,reader:i}of t){let t=new It(i,e);yield*this.iterRecords(t,r)}}async*iterRecords(t,e){for await(let r of t){await r.skipFully();let i=this.indexRecord(r,t,e);i&&(yield i)}}indexRecord(t,e,r){if(this.filterRecord&&!this.filterRecord(t))return null;let i={},{offset:n,recordLength:s}=e,o={offset:n,length:s,filename:r};for(let e of this.fields)e in o?i[e]=o[e]:this.setField(e,t,i);return i}setField(t,e,r){let i=this.getField(t,e);null!==i&&(r[t]=i)}getField(t,e){if(t.startsWith("req.")){if("request"!==e.warcType)return null;t=t.slice(4)}if("http:status"===t)return!e.httpHeaders||"response"!==e.warcType&&"revisit"!==e.warcType?null:e.httpHeaders.statusCode;if(t.startsWith("http:")){if(e.httpHeaders){let r=e.httpHeaders.headers,i=t.slice(5),n=r.get(i);if(r instanceof Map){let t=i.toLowerCase();for(let e of r.keys())t===e.toLowerCase()&&(n=r.get(e))}return n}return null}return e.warcHeaders.headers.get(t)||null}}{constructor(t,e){super(t,e);for(let t of this.fields)if(t.startsWith("http:")){this.parseHttp=!0;break}}}{constructor(t){switch(super(t,kt),this.includeAll=!!t?.all,this.overrideIndexForAll=!!t?.all,this.parseHttp=!0,this.noSurt=!!t?.noSurt,this._lastRecord=null,t?.format){case"cdxj":this.serialize=this.serializeCDXJ;break;case"cdx":this.serialize=this.serializeCDX11}}async*iterRecords(t,e){this._lastRecord=null;for await(let r of t){await r.readFully();let i=this.indexRecord(r,t,e);i&&(yield i)}let r=this.indexRecord(null,t,e);r&&(yield r)}filterRecord(t){if(this.includeAll)return!0;let e=t.warcType;return!("request"===e||"warcinfo"===e||("metadata"===e||"resource"===e)&&"application/warc-fields"===t.warcContentType)}indexRecord(t,e,r){if(this.overrideIndexForAll)return t?super.indexRecord(t,e,r):null;let i=this._lastRecord;if(this._lastRecord=t,t&&(t._offset=e.offset,t._length=e.recordLength),!i)return null;if(!t||i.warcTargetURI!=t.warcTargetURI)return this.indexRecordPair(i,null,e,r);let n=t.warcType,s=i.warcType;return"request"!==n||"response"!==s&&"revisit"!==s?"response"!==n&&"revisit"!==n||"request"!==s?this.indexRecordPair(i,null,e,r):(this._lastRecord=null,this.indexRecordPair(t,i,e,r)):(this._lastRecord=null,this.indexRecordPair(i,t,e,r))}indexRecordPair(t,e,r,i){let n,s,o=t.warcTargetURI||"";if(e?.httpHeaders&&"GET"!==e.httpHeaders.method){let t={url:o,method:e.httpHeaders.method,headers:e.httpHeaders.headers,postData:e.payload};n=t.method,et(t)&&(s=t.requestBody,o=t.url)}t._urlkey=o;let a=super.indexRecord(t,r,i);if(a&&(void 0!==t._offset&&(a.offset=t._offset,a.length=t._length),n&&(a.method=n),s&&(a.requestBody=s),e&&this.reqFields.length))for(let t of this.reqFields)this.setField(t,e,a);return a}serializeCDXJ(t){let{urlkey:e,timestamp:r}=t;return delete t.urlkey,delete t.timestamp,`${e} ${r} ${JSON.stringify(t,((t,e)=>["offset","length","status"].includes(t)?null==e?"":""+e:e))}\n`}serializeCDX11(t){let e=[];for(let r of Nt)e.push(null!=t[r]?t[r]:"-");return e.join(" ")+"\n"}getField(t,e){let r=null;switch(t){case"urlkey":return r=e._urlkey||e.warcTargetURI||null,this.noSurt||null===r?r:tt(r);case"timestamp":return r=e.warcDate??"",r.replace(/[-:T]/g,"").slice(0,14);case"url":return e.warcTargetURI;case"mime":switch(e.warcType){case"revisit":return"warc/revisit";case"response":case"request":t="http:content-type";break;default:return e.warcContentType}return r=super.getField(t,e),r?r.toString().split(";",1)[0]?.trim():null;case"status":return super.getField("http:status",e);case"referrer":return super.getField("req.http:referer",e);case"digest":return r=e.warcPayloadDigest,r?r.split(":",2)[1]:null;default:return super.getField(t,e)}}};async function Bt(t,e,r){const i=t;try{"chunked"===r&&(t=function(t){let e=0,r=0;const i=new TextDecoder("utf-8");for(;e<t.length;){let n=e;for(;t[n]>=48&&t[n]<=57||t[n]>=65&&t[n]<=70||t[n]>=97&&t[n]<=102;)n++;if(0===n)return t;if(13!=t[n]||10!=t[n+1])return t;n+=2;const s=parseInt(i.decode(t.subarray(e,n)),16);if(0==s)break;t.set(t.subarray(n,n+s),r),n+=s,r+=s,13==t[n]&&10==t[n+1]&&(n+=2),e=n}return t.subarray(0,r)}(t))}catch(t){console.log("Chunk-Encoding Ignored: "+t)}try{if("br"===e)0===(t=N()(t)).length&&(t=i);else if("gzip"===e||"gzip"===r){const e=new(B().Inflate);e.push(t,!0),e.result&&!e.err&&(t=e.result)}}catch(t){console.log("Content-Encoding Ignored: "+t)}return t}var Pt=r(6932);function Dt(t={}){let e,r;const i=t.response?.extraOpts;if(i&&(e=i.adaptive_max_resolution||i.maxRes,r=i.adaptive_max_bandwidth||i.maxBand,e&&r))return{maxRes:e,maxBand:r};let n;return n=t.response&&!t.response.isLive?{maxRes:921600,maxBand:2e6}:{maxRes:412800,maxBand:1e6},t.save&&(t.save.maxRes=n.maxRes,t.save.maxBand=n.maxBand),n}function Lt(t,e){const r=/#EXT-X-STREAM-INF:(?:.*[,])?BANDWIDTH=([\d]+)/,i=/RESOLUTION=([\d]+)x([\d]+)/,{maxRes:n,maxBand:s}=Dt(e),o=[];let a=0,c=null,l=0,h=0;const u=t.trimEnd().split("\n");for(const t of u){const p=t.match(r);if(!p){e.rewriteUrl&&!t.startsWith("#")&&(u[a]=e.rewriteUrl(t)),a+=1;continue}o.push(a);const d=Number(p[1]),f=t.match(i),g=f?Number(f[1])*Number(f[2]):0;g&&n?g<=n&&g>h&&(h=g,l=d,c=a):d<=s&&d>l&&(h=g,l=d,c=a),a+=1}o.reverse();for(const t of o)t!==c&&u.splice(t,2);return u.join("\n")}const Ut={ignoreAttributes:!1,removeNSPrefix:!1,format:!1,suppressEmptyNode:!0,suppressBooleanAttributes:!1};function Mt(t,e,r){try{return function(t,e,r){const i=new Pt.XMLParser(Ut).parse(t),{maxRes:n,maxBand:s}=Dt(e);let o,a=null,c=0,l=0;o=Array.isArray(i.MPD.Period.AdaptationSet)?i.MPD.Period.AdaptationSet:[i.MPD.Period.AdaptationSet];for(const t of o){let e;a=null,c=0,l=0,e=Array.isArray(t.Representation)?t.Representation:[t.Representation];for(const t of e){const e=Number(t["@_width"]||"0")*Number(t["@_height"]||"0"),r=Number(t["@_bandwidth"]||"0");e&&n&&e<=n?e>c&&(c=e,l=r,a=t):r<=s&&r>l&&(c=e,l=r,a=t)}a&&Array.isArray(r)&&r.push(a["@_id"]),a&&(t.Representation=[a])}const h=new Pt.XMLBuilder(Ut).build(i).trim();return h.slice(0,5).toLowerCase().startsWith("<?xml")?h:"<?xml version='1.0' encoding='UTF-8'?>\n"+h}(t,e,r)}catch(e){return console.log(e),t}}const Ft=[{contains:["youtube.com","youtube-nocookie.com"],rxRules:[[/ytplayer.load\(\);/,jt('ytplayer.config.args.dash = "0"; ytplayer.config.args.dashmpd = ""; {0}')],[/yt\.setConfig.*PLAYER_CONFIG.*args":\s*{/,jt('{0} "dash": "0", dashmpd: "", ')],[/(?:"player":|ytplayer\.config).*"args":\s*{/,jt('{0}"dash":"0","dashmpd":"",')],[/yt\.setConfig.*PLAYER_VARS.*?{/,jt('{0}"dash":"0","dashmpd":"",')],[/ytplayer.config={args:\s*{/,jt('{0}"dash":"0","dashmpd":"",')],[/"0"\s*?==\s*?\w+\.dash&&/m,jt("1&&")]]},{contains:["player.vimeo.com/video/"],rxRules:[[/^\{.+\}$/,function(t){let e;try{e=JSON.parse(t)}catch(e){return t}if(e?.request?.files){const t=e.request.files;if("object"==typeof t.progressive&&t.progressive.length)return t.dash&&(t.__dash=t.dash,delete t.dash),t.hls&&(t.__hls=t.hls,delete t.hls),JSON.stringify(e)}return t.replace(/query_string_ranges=1/g,"query_string_ranges=0")}]]},{contains:["master.json?query_string_ranges=0","master.json?base64"],rxRules:[[/^\{.+\}$/,function(t,e){if(!e)return t;let r=null;const i=Wt(e);try{r=JSON.parse(t),console.log("manifest",r)}catch(e){return t}function n(t,e,r){if(!t)return null;let i=null,n=0;for(const s of t)s.mime_type==r&&s.bitrate>n&&s.bitrate<=e&&(n=s.bitrate,i=s);return i?[i]:t}return r.video=n(r.video,i,"video/mp4"),r.audio=n(r.audio,i,"audio/mp4"),JSON.stringify(r)}]]},{contains:["facebook.com/","fbsbx.com/"],rxRules:[[/"dash_/,jt('"__nodash__')],[/_dash"/,jt('__nodash__"')],[/_dash_/,jt("__nodash__")],[/"playlist/,jt('"__playlist__')],[/"debugNoBatching\s?":(?:false|0)/,jt('"debugNoBatching":true')],[/"bulkRouteFetchBatchSize\s?":(?:[^{},]+)/,jt('"bulkRouteFetchBatchSize":1')],[/"maxBatchSize\s?":(?:[^{},]+)/,jt('"maxBatchSize":1')]]},{contains:["instagram.com/"],rxRules:[[/"is_dash_eligible":(?:true|1)/,jt('"is_dash_eligible":false')],[/"debugNoBatching\s?":(?:false|0)/,jt('"debugNoBatching":true')],[/"bulkRouteFetchBatchSize\s?":(?:[^{},]+)/,jt('"bulkRouteFetchBatchSize":1')],[/"maxBatchSize\s?":(?:[^{},]+)/,jt('"maxBatchSize":1')]]},{contains:["api.twitter.com/2/","twitter.com/i/api/2/","twitter.com/i/api/graphql/","api.x.com/2/","x.com/i/api/2/","x.com/i/api/graphql/"],rxRules:[[/"video_info":.*?}]}/,Vt('"video_info":')]]},{contains:["cdn.syndication.twimg.com/tweet-result"],rxRules:[[/"video":.*?viewCount":\d+}/,Vt('"video":')]]},{contains:["/vqlweb.js"],rxRules:[[/\b\w+\.updatePortSize\(\);this\.updateApplicationSize\(\)(?![*])/gim,jt("/*{0}*/")]]}],Ht=[{contains:["youtube.com","youtube-nocookie.com"],rxRules:[[/[^"]<head.*?>/,t=>`\n ${t}<script>window.MediaSource.isTypeSupported = () => false;<\/script>\n `]]},...Ft];function jt(t){return e=>t.replace("{0}",e)}function Wt(t){let e=5e6;const r=t.response?.extraOpts;return t.save?t.save.maxBitrate=e:r?.maxBitrate&&(e=r.maxBitrate),e}function Vt(t){return(e,r)=>{if(!r)return e;const i=e;try{const i=/([\d]+)x([\d]+)/,n=Wt(r);e=e.slice(t.length);const s=JSON.parse(e);let o=null,a=0;for(const t of s.variants)if(!(t.content_type&&"video/mp4"!==t.content_type||t.type&&"video/mp4"!==t.type))if(t.bitrate&&t.bitrate>a&&t.bitrate<=n)o=t,a=t.bitrate;else if(t.src){const e=i.exec(t.src);if(e){const r=Number(e[1])*Number(e[2]);r>a&&(a=r,o=t)}}return o&&(s.variants=[o]),t+JSON.stringify(s)}catch(t){return console.warn("rewriter error: ",t),i}}}class Gt{rwRules;RewriterCls;rewriters=new Map;defaultRewriter;constructor(t,e){this.rwRules=e||Ft,this.RewriterCls=t,this._initRules()}_initRules(){this.rewriters=new Map;for(const t of this.rwRules)t.rxRules&&this.rewriters.set(t,new this.RewriterCls(t.rxRules));this.defaultRewriter=new this.RewriterCls}getCustomRewriter(t){for(const e of this.rwRules)if(e.contains)for(const r of e.contains)if(t.indexOf(r)>=0){const t=this.rewriters.get(e);if(t)return t}return null}getRewriter(t){return this.getCustomRewriter(t)||this.defaultRewriter}}class zt{rules;rx=null;constructor(t){this.rules=t||null,this.rules&&this.compileRules()}compileRules(){let t="";if(!this.rules)return;for(const e of this.rules)t&&(t+="|"),t+=`(${e[0].source})`;const e=`(?:${t})`;this.rx=new RegExp(e,"gm")}doReplace(t,e,r){const i=e[e.length-2],n=e[e.length-1];for(let t=0;t<this.rules.length;t++){const s=e[t];if(!s)continue;const o=this.rules[t][1].call(this,s,r,i,n);if(o)return o}return console.warn(`rx no match found for ${t} - rx rule contains extra matching group?`),t}rewrite(t,e){return this.rx?t.replace(this.rx,((t,...r)=>this.doReplace(t,r,e))):t}}var qt=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,370,1,81,2,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,9,5351,0,7,14,13835,9,87,9,39,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,4706,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,983,6,110,6,6,9,4759,9,787719,239],Qt=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,68,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,4026,582,8634,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,757,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,3104,541,1507,4938,6,4191],Kt="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",Yt={3:"abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile",5:"class enum extends super const export import",6:"enum",strict:"implements interface let package private protected public static yield",strictBind:"eval arguments"},Jt="break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this",Xt={5:Jt,"5module":Jt+" export import",6:Jt+" const class extends export import super"},Zt=/^in(stanceof)?$/,$t=new RegExp("["+Kt+"]"),te=new RegExp("["+Kt+"‌‍·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࢘-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-ᫎᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_]");function ee(t,e){for(var r=65536,i=0;i<e.length;i+=2){if((r+=e[i])>t)return!1;if((r+=e[i+1])>=t)return!0}return!1}function re(t,e){return t<65?36===t:t<91||(t<97?95===t:t<123||(t<=65535?t>=170&&$t.test(String.fromCharCode(t)):!1!==e&&ee(t,Qt)))}function ie(t,e){return t<48?36===t:t<58||!(t<65)&&(t<91||(t<97?95===t:t<123||(t<=65535?t>=170&&te.test(String.fromCharCode(t)):!1!==e&&(ee(t,Qt)||ee(t,qt)))))}var ne=function(t,e){void 0===e&&(e={}),this.label=t,this.keyword=e.keyword,this.beforeExpr=!!e.beforeExpr,this.startsExpr=!!e.startsExpr,this.isLoop=!!e.isLoop,this.isAssign=!!e.isAssign,this.prefix=!!e.prefix,this.postfix=!!e.postfix,this.binop=e.binop||null,this.updateContext=null};function se(t,e){return new ne(t,{beforeExpr:!0,binop:e})}var oe={beforeExpr:!0},ae={startsExpr:!0},ce={};function le(t,e){return void 0===e&&(e={}),e.keyword=t,ce[t]=new ne(t,e)}var he={num:new ne("num",ae),regexp:new ne("regexp",ae),string:new ne("string",ae),name:new ne("name",ae),privateId:new ne("privateId",ae),eof:new ne("eof"),bracketL:new ne("[",{beforeExpr:!0,startsExpr:!0}),bracketR:new ne("]"),braceL:new ne("{",{beforeExpr:!0,startsExpr:!0}),braceR:new ne("}"),parenL:new ne("(",{beforeExpr:!0,startsExpr:!0}),parenR:new ne(")"),comma:new ne(",",oe),semi:new ne(";",oe),colon:new ne(":",oe),dot:new ne("."),question:new ne("?",oe),questionDot:new ne("?."),arrow:new ne("=>",oe),template:new ne("template"),invalidTemplate:new ne("invalidTemplate"),ellipsis:new ne("...",oe),backQuote:new ne("`",ae),dollarBraceL:new ne("${",{beforeExpr:!0,startsExpr:!0}),eq:new ne("=",{beforeExpr:!0,isAssign:!0}),assign:new ne("_=",{beforeExpr:!0,isAssign:!0}),incDec:new ne("++/--",{prefix:!0,postfix:!0,startsExpr:!0}),prefix:new ne("!/~",{beforeExpr:!0,prefix:!0,startsExpr:!0}),logicalOR:se("||",1),logicalAND:se("&&",2),bitwiseOR:se("|",3),bitwiseXOR:se("^",4),bitwiseAND:se("&",5),equality:se("==/!=/===/!==",6),relational:se("</>/<=/>=",7),bitShift:se("<</>>/>>>",8),plusMin:new ne("+/-",{beforeExpr:!0,binop:9,prefix:!0,startsExpr:!0}),modulo:se("%",10),star:se("*",10),slash:se("/",10),starstar:new ne("**",{beforeExpr:!0}),coalesce:se("??",1),_break:le("break"),_case:le("case",oe),_catch:le("catch"),_continue:le("continue"),_debugger:le("debugger"),_default:le("default",oe),_do:le("do",{isLoop:!0,beforeExpr:!0}),_else:le("else",oe),_finally:le("finally"),_for:le("for",{isLoop:!0}),_function:le("function",ae),_if:le("if"),_return:le("return",oe),_switch:le("switch"),_throw:le("throw",oe),_try:le("try"),_var:le("var"),_const:le("const"),_while:le("while",{isLoop:!0}),_with:le("with"),_new:le("new",{beforeExpr:!0,startsExpr:!0}),_this:le("this",ae),_super:le("super",ae),_class:le("class",ae),_extends:le("extends",oe),_export:le("export"),_import:le("import",ae),_null:le("null",ae),_true:le("true",ae),_false:le("false",ae),_in:le("in",{beforeExpr:!0,binop:7}),_instanceof:le("instanceof",{beforeExpr:!0,binop:7}),_typeof:le("typeof",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_void:le("void",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_delete:le("delete",{beforeExpr:!0,prefix:!0,startsExpr:!0})},ue=/\r\n?|\n|\u2028|\u2029/,pe=new RegExp(ue.source,"g");function de(t){return 10===t||13===t||8232===t||8233===t}function fe(t,e,r){void 0===r&&(r=t.length);for(var i=e;i<r;i++){var n=t.charCodeAt(i);if(de(n))return i<r-1&&13===n&&10===t.charCodeAt(i+1)?i+2:i+1}return-1}var ge=/[\u1680\u2000-\u200a\u202f\u205f\u3000\ufeff]/,ye=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,me=Object.prototype,we=me.hasOwnProperty,be=me.toString,Ae=Object.hasOwn||function(t,e){return we.call(t,e)},ve=Array.isArray||function(t){return"[object Array]"===be.call(t)};function _e(t){return new RegExp("^(?:"+t.replace(/ /g,"|")+")$")}function Ee(t){return t<=65535?String.fromCharCode(t):(t-=65536,String.fromCharCode(55296+(t>>10),56320+(1023&t)))}var Se=/(?:[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/,Te=function(t,e){this.line=t,this.column=e};Te.prototype.offset=function(t){return new Te(this.line,this.column+t)};var xe=function(t,e,r){this.start=e,this.end=r,null!==t.sourceFile&&(this.source=t.sourceFile)};function Ce(t,e){for(var r=1,i=0;;){var n=fe(t,i,e);if(n<0)return new Te(r,e-i);++r,i=n}}var Ie={ecmaVersion:null,sourceType:"script",onInsertedSemicolon:null,onTrailingComma:null,allowReserved:null,allowReturnOutsideFunction:!1,allowImportExportEverywhere:!1,allowAwaitOutsideFunction:null,allowSuperOutsideMethod:null,allowHashBang:!1,checkPrivateFields:!0,locations:!1,onToken:null,onComment:null,ranges:!1,program:null,sourceFile:null,directSourceFile:null,preserveParens:!1},Re=!1;function ke(t,e){return 2|(t?4:0)|(e?8:0)}var Ne=function(t,e,r){this.options=t=function(t){var e={};for(var r in Ie)e[r]=t&&Ae(t,r)?t[r]:Ie[r];if("latest"===e.ecmaVersion?e.ecmaVersion=1e8:null==e.ecmaVersion?(!Re&&"object"==typeof console&&console.warn&&(Re=!0,console.warn("Since Acorn 8.0.0, options.ecmaVersion is required.\nDefaulting to 2020, but this will stop working in the future.")),e.ecmaVersion=11):e.ecmaVersion>=2015&&(e.ecmaVersion-=2009),null==e.allowReserved&&(e.allowReserved=e.ecmaVersion<5),t&&null!=t.allowHashBang||(e.allowHashBang=e.ecmaVersion>=14),ve(e.onToken)){var i=e.onToken;e.onToken=function(t){return i.push(t)}}return ve(e.onComment)&&(e.onComment=function(t,e){return function(r,i,n,s,o,a){var c={type:r?"Block":"Line",value:i,start:n,end:s};t.locations&&(c.loc=new xe(this,o,a)),t.ranges&&(c.range=[n,s]),e.push(c)}}(e,e.onComment)),e}(t),this.sourceFile=t.sourceFile,this.keywords=_e(Xt[t.ecmaVersion>=6?6:"module"===t.sourceType?"5module":5]);var i="";!0!==t.allowReserved&&(i=Yt[t.ecmaVersion>=6?6:5===t.ecmaVersion?5:3],"module"===t.sourceType&&(i+=" await")),this.reservedWords=_e(i);var n=(i?i+" ":"")+Yt.strict;this.reservedWordsStrict=_e(n),this.reservedWordsStrictBind=_e(n+" "+Yt.strictBind),this.input=String(e),this.containsEsc=!1,r?(this.pos=r,this.lineStart=this.input.lastIndexOf("\n",r-1)+1,this.curLine=this.input.slice(0,this.lineStart).split(ue).length):(this.pos=this.lineStart=0,this.curLine=1),this.type=he.eof,this.value=null,this.start=this.end=this.pos,this.startLoc=this.endLoc=this.curPosition(),this.lastTokEndLoc=this.lastTokStartLoc=null,this.lastTokStart=this.lastTokEnd=this.pos,this.context=this.initialContext(),this.exprAllowed=!0,this.inModule="module"===t.sourceType,this.strict=this.inModule||this.strictDirective(this.pos),this.potentialArrowAt=-1,this.potentialArrowInForAwait=!1,this.yieldPos=this.awaitPos=this.awaitIdentPos=0,this.labels=[],this.undefinedExports=Object.create(null),0===this.pos&&t.allowHashBang&&"#!"===this.input.slice(0,2)&&this.skipLineComment(2),this.scopeStack=[],this.enterScope(1),this.regexpState=null,this.privateNameStack=[]},Oe={inFunction:{configurable:!0},inGenerator:{configurable:!0},inAsync:{configurable:!0},canAwait:{configurable:!0},allowSuper:{configurable:!0},allowDirectSuper:{configurable:!0},treatFunctionsAsVar:{configurable:!0},allowNewDotTarget:{configurable:!0},inClassStaticBlock:{configurable:!0}};Ne.prototype.parse=function(){var t=this.options.program||this.startNode();return this.nextToken(),this.parseTopLevel(t)},Oe.inFunction.get=function(){return(2&this.currentVarScope().flags)>0},Oe.inGenerator.get=function(){return(8&this.currentVarScope().flags)>0&&!this.currentVarScope().inClassFieldInit},Oe.inAsync.get=function(){return(4&this.currentVarScope().flags)>0&&!this.currentVarScope().inClassFieldInit},Oe.canAwait.get=function(){for(var t=this.scopeStack.length-1;t>=0;t--){var e=this.scopeStack[t];if(e.inClassFieldInit||256&e.flags)return!1;if(2&e.flags)return(4&e.flags)>0}return this.inModule&&this.options.ecmaVersion>=13||this.options.allowAwaitOutsideFunction},Oe.allowSuper.get=function(){var t=this.currentThisScope(),e=t.flags,r=t.inClassFieldInit;return(64&e)>0||r||this.options.allowSuperOutsideMethod},Oe.allowDirectSuper.get=function(){return(128&this.currentThisScope().flags)>0},Oe.treatFunctionsAsVar.get=function(){return this.treatFunctionsAsVarInScope(this.currentScope())},Oe.allowNewDotTarget.get=function(){var t=this.currentThisScope(),e=t.flags,r=t.inClassFieldInit;return(258&e)>0||r},Oe.inClassStaticBlock.get=function(){return(256&this.currentVarScope().flags)>0},Ne.extend=function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];for(var r=this,i=0;i<t.length;i++)r=t[i](r);return r},Ne.parse=function(t,e){return new this(e,t).parse()},Ne.parseExpressionAt=function(t,e,r){var i=new this(r,t,e);return i.nextToken(),i.parseExpression()},Ne.tokenizer=function(t,e){return new this(e,t)},Object.defineProperties(Ne.prototype,Oe);var Be=Ne.prototype,Pe=/^(?:'((?:\\.|[^'\\])*?)'|"((?:\\.|[^"\\])*?)")/;Be.strictDirective=function(t){if(this.options.ecmaVersion<5)return!1;for(;;){ye.lastIndex=t,t+=ye.exec(this.input)[0].length;var e=Pe.exec(this.input.slice(t));if(!e)return!1;if("use strict"===(e[1]||e[2])){ye.lastIndex=t+e[0].length;var r=ye.exec(this.input),i=r.index+r[0].length,n=this.input.charAt(i);return";"===n||"}"===n||ue.test(r[0])&&!(/[(`.[+\-/*%<>=,?^&]/.test(n)||"!"===n&&"="===this.input.charAt(i+1))}t+=e[0].length,ye.lastIndex=t,t+=ye.exec(this.input)[0].length,";"===this.input[t]&&t++}},Be.eat=function(t){return this.type===t&&(this.next(),!0)},Be.isContextual=function(t){return this.type===he.name&&this.value===t&&!this.containsEsc},Be.eatContextual=function(t){return!!this.isContextual(t)&&(this.next(),!0)},Be.expectContextual=function(t){this.eatContextual(t)||this.unexpected()},Be.canInsertSemicolon=function(){return this.type===he.eof||this.type===he.braceR||ue.test(this.input.slice(this.lastTokEnd,this.start))},Be.insertSemicolon=function(){if(this.canInsertSemicolon())return this.options.onInsertedSemicolon&&this.options.onInsertedSemicolon(this.lastTokEnd,this.lastTokEndLoc),!0},Be.semicolon=function(){this.eat(he.semi)||this.insertSemicolon()||this.unexpected()},Be.afterTrailingComma=function(t,e){if(this.type===t)return this.options.onTrailingComma&&this.options.onTrailingComma(this.lastTokStart,this.lastTokStartLoc),e||this.next(),!0},Be.expect=function(t){this.eat(t)||this.unexpected()},Be.unexpected=function(t){this.raise(null!=t?t:this.start,"Unexpected token")};var De=function(){this.shorthandAssign=this.trailingComma=this.parenthesizedAssign=this.parenthesizedBind=this.doubleProto=-1};Be.checkPatternErrors=function(t,e){if(t){t.trailingComma>-1&&this.raiseRecoverable(t.trailingComma,"Comma is not permitted after the rest element");var r=e?t.parenthesizedAssign:t.parenthesizedBind;r>-1&&this.raiseRecoverable(r,e?"Assigning to rvalue":"Parenthesized pattern")}},Be.checkExpressionErrors=function(t,e){if(!t)return!1;var r=t.shorthandAssign,i=t.doubleProto;if(!e)return r>=0||i>=0;r>=0&&this.raise(r,"Shorthand property assignments are valid only in destructuring patterns"),i>=0&&this.raiseRecoverable(i,"Redefinition of __proto__ property")},Be.checkYieldAwaitInDefaultParams=function(){this.yieldPos&&(!this.awaitPos||this.yieldPos<this.awaitPos)&&this.raise(this.yieldPos,"Yield expression cannot be a default value"),this.awaitPos&&this.raise(this.awaitPos,"Await expression cannot be a default value")},Be.isSimpleAssignTarget=function(t){return"ParenthesizedExpression"===t.type?this.isSimpleAssignTarget(t.expression):"Identifier"===t.type||"MemberExpression"===t.type};var Le=Ne.prototype;Le.parseTopLevel=function(t){var e=Object.create(null);for(t.body||(t.body=[]);this.type!==he.eof;){var r=this.parseStatement(null,!0,e);t.body.push(r)}if(this.inModule)for(var i=0,n=Object.keys(this.undefinedExports);i<n.length;i+=1){var s=n[i];this.raiseRecoverable(this.undefinedExports[s].start,"Export '"+s+"' is not defined")}return this.adaptDirectivePrologue(t.body),this.next(),t.sourceType=this.options.sourceType,this.finishNode(t,"Program")};var Ue={kind:"loop"},Me={kind:"switch"};Le.isLet=function(t){if(this.options.ecmaVersion<6||!this.isContextual("let"))return!1;ye.lastIndex=this.pos;var e=ye.exec(this.input),r=this.pos+e[0].length,i=this.input.charCodeAt(r);if(91===i||92===i)return!0;if(t)return!1;if(123===i||i>55295&&i<56320)return!0;if(re(i,!0)){for(var n=r+1;ie(i=this.input.charCodeAt(n),!0);)++n;if(92===i||i>55295&&i<56320)return!0;var s=this.input.slice(r,n);if(!Zt.test(s))return!0}return!1},Le.isAsyncFunction=function(){if(this.options.ecmaVersion<8||!this.isContextual("async"))return!1;ye.lastIndex=this.pos;var t,e=ye.exec(this.input),r=this.pos+e[0].length;return!(ue.test(this.input.slice(this.pos,r))||"function"!==this.input.slice(r,r+8)||r+8!==this.input.length&&(ie(t=this.input.charCodeAt(r+8))||t>55295&&t<56320))},Le.parseStatement=function(t,e,r){var i,n=this.type,s=this.startNode();switch(this.isLet(t)&&(n=he._var,i="let"),n){case he._break:case he._continue:return this.parseBreakContinueStatement(s,n.keyword);case he._debugger:return this.parseDebuggerStatement(s);case he._do:return this.parseDoStatement(s);case he._for:return this.parseForStatement(s);case he._function:return t&&(this.strict||"if"!==t&&"label"!==t)&&this.options.ecmaVersion>=6&&this.unexpected(),this.parseFunctionStatement(s,!1,!t);case he._class:return t&&this.unexpected(),this.parseClass(s,!0);case he._if:return this.parseIfStatement(s);case he._return:return this.parseReturnStatement(s);case he._switch:return this.parseSwitchStatement(s);case he._throw:return this.parseThrowStatement(s);case he._try:return this.parseTryStatement(s);case he._const:case he._var:return i=i||this.value,t&&"var"!==i&&this.unexpected(),this.parseVarStatement(s,i);case he._while:return this.parseWhileStatement(s);case he._with:return this.parseWithStatement(s);case he.braceL:return this.parseBlock(!0,s);case he.semi:return this.parseEmptyStatement(s);case he._export:case he._import:if(this.options.ecmaVersion>10&&n===he._import){ye.lastIndex=this.pos;var o=ye.exec(this.input),a=this.pos+o[0].length,c=this.input.charCodeAt(a);if(40===c||46===c)return this.parseExpressionStatement(s,this.parseExpression())}return this.options.allowImportExportEverywhere||(e||this.raise(this.start,"'import' and 'export' may only appear at the top level"),this.inModule||this.raise(this.start,"'import' and 'export' may appear only with 'sourceType: module'")),n===he._import?this.parseImport(s):this.parseExport(s,r);default:if(this.isAsyncFunction())return t&&this.unexpected(),this.next(),this.parseFunctionStatement(s,!0,!t);var l=this.value,h=this.parseExpression();return n===he.name&&"Identifier"===h.type&&this.eat(he.colon)?this.parseLabeledStatement(s,l,h,t):this.parseExpressionStatement(s,h)}},Le.parseBreakContinueStatement=function(t,e){var r="break"===e;this.next(),this.eat(he.semi)||this.insertSemicolon()?t.label=null:this.type!==he.name?this.unexpected():(t.label=this.parseIdent(),this.semicolon());for(var i=0;i<this.labels.length;++i){var n=this.labels[i];if(null==t.label||n.name===t.label.name){if(null!=n.kind&&(r||"loop"===n.kind))break;if(t.label&&r)break}}return i===this.labels.length&&this.raise(t.start,"Unsyntactic "+e),this.finishNode(t,r?"BreakStatement":"ContinueStatement")},Le.parseDebuggerStatement=function(t){return this.next(),this.semicolon(),this.finishNode(t,"DebuggerStatement")},Le.parseDoStatement=function(t){return this.next(),this.labels.push(Ue),t.body=this.parseStatement("do"),this.labels.pop(),this.expect(he._while),t.test=this.parseParenExpression(),this.options.ecmaVersion>=6?this.eat(he.semi):this.semicolon(),this.finishNode(t,"DoWhileStatement")},Le.parseForStatement=function(t){this.next();var e=this.options.ecmaVersion>=9&&this.canAwait&&this.eatContextual("await")?this.lastTokStart:-1;if(this.labels.push(Ue),this.enterScope(0),this.expect(he.parenL),this.type===he.semi)return e>-1&&this.unexpected(e),this.parseFor(t,null);var r=this.isLet();if(this.type===he._var||this.type===he._const||r){var i=this.startNode(),n=r?"let":this.value;return this.next(),this.parseVar(i,!0,n),this.finishNode(i,"VariableDeclaration"),(this.type===he._in||this.options.ecmaVersion>=6&&this.isContextual("of"))&&1===i.declarations.length?(this.options.ecmaVersion>=9&&(this.type===he._in?e>-1&&this.unexpected(e):t.await=e>-1),this.parseForIn(t,i)):(e>-1&&this.unexpected(e),this.parseFor(t,i))}var s=this.isContextual("let"),o=!1,a=new De,c=this.parseExpression(!(e>-1)||"await",a);return this.type===he._in||(o=this.options.ecmaVersion>=6&&this.isContextual("of"))?(this.options.ecmaVersion>=9&&(this.type===he._in?e>-1&&this.unexpected(e):t.await=e>-1),s&&o&&this.raise(c.start,"The left-hand side of a for-of loop may not start with 'let'."),this.toAssignable(c,!1,a),this.checkLValPattern(c),this.parseForIn(t,c)):(this.checkExpressionErrors(a,!0),e>-1&&this.unexpected(e),this.parseFor(t,c))},Le.parseFunctionStatement=function(t,e,r){return this.next(),this.parseFunction(t,He|(r?0:je),!1,e)},Le.parseIfStatement=function(t){return this.next(),t.test=this.parseParenExpression(),t.consequent=this.parseStatement("if"),t.alternate=this.eat(he._else)?this.parseStatement("if"):null,this.finishNode(t,"IfStatement")},Le.parseReturnStatement=function(t){return this.inFunction||this.options.allowReturnOutsideFunction||this.raise(this.start,"'return' outside of function"),this.next(),this.eat(he.semi)||this.insertSemicolon()?t.argument=null:(t.argument=this.parseExpression(),this.semicolon()),this.finishNode(t,"ReturnStatement")},Le.parseSwitchStatement=function(t){var e;this.next(),t.discriminant=this.parseParenExpression(),t.cases=[],this.expect(he.braceL),this.labels.push(Me),this.enterScope(0);for(var r=!1;this.type!==he.braceR;)if(this.type===he._case||this.type===he._default){var i=this.type===he._case;e&&this.finishNode(e,"SwitchCase"),t.cases.push(e=this.startNode()),e.consequent=[],this.next(),i?e.test=this.parseExpression():(r&&this.raiseRecoverable(this.lastTokStart,"Multiple default clauses"),r=!0,e.test=null),this.expect(he.colon)}else e||this.unexpected(),e.consequent.push(this.parseStatement(null));return this.exitScope(),e&&this.finishNode(e,"SwitchCase"),this.next(),this.labels.pop(),this.finishNode(t,"SwitchStatement")},Le.parseThrowStatement=function(t){return this.next(),ue.test(this.input.slice(this.lastTokEnd,this.start))&&this.raise(this.lastTokEnd,"Illegal newline after throw"),t.argument=this.parseExpression(),this.semicolon(),this.finishNode(t,"ThrowStatement")};var Fe=[];Le.parseCatchClauseParam=function(){var t=this.parseBindingAtom(),e="Identifier"===t.type;return this.enterScope(e?32:0),this.checkLValPattern(t,e?4:2),this.expect(he.parenR),t},Le.parseTryStatement=function(t){if(this.next(),t.block=this.parseBlock(),t.handler=null,this.type===he._catch){var e=this.startNode();this.next(),this.eat(he.parenL)?e.param=this.parseCatchClauseParam():(this.options.ecmaVersion<10&&this.unexpected(),e.param=null,this.enterScope(0)),e.body=this.parseBlock(!1),this.exitScope(),t.handler=this.finishNode(e,"CatchClause")}return t.finalizer=this.eat(he._finally)?this.parseBlock():null,t.handler||t.finalizer||this.raise(t.start,"Missing catch or finally clause"),this.finishNode(t,"TryStatement")},Le.parseVarStatement=function(t,e,r){return this.next(),this.parseVar(t,!1,e,r),this.semicolon(),this.finishNode(t,"VariableDeclaration")},Le.parseWhileStatement=function(t){return this.next(),t.test=this.parseParenExpression(),this.labels.push(Ue),t.body=this.parseStatement("while"),this.labels.pop(),this.finishNode(t,"WhileStatement")},Le.parseWithStatement=function(t){return this.strict&&this.raise(this.start,"'with' in strict mode"),this.next(),t.object=this.parseParenExpression(),t.body=this.parseStatement("with"),this.finishNode(t,"WithStatement")},Le.parseEmptyStatement=function(t){return this.next(),this.finishNode(t,"EmptyStatement")},Le.parseLabeledStatement=function(t,e,r,i){for(var n=0,s=this.labels;n<s.length;n+=1)s[n].name===e&&this.raise(r.start,"Label '"+e+"' is already declared");for(var o=this.type.isLoop?"loop":this.type===he._switch?"switch":null,a=this.labels.length-1;a>=0;a--){var c=this.labels[a];if(c.statementStart!==t.start)break;c.statementStart=this.start,c.kind=o}return this.labels.push({name:e,kind:o,statementStart:this.start}),t.body=this.parseStatement(i?-1===i.indexOf("label")?i+"label":i:"label"),this.labels.pop(),t.label=r,this.finishNode(t,"LabeledStatement")},Le.parseExpressionStatement=function(t,e){return t.expression=e,this.semicolon(),this.finishNode(t,"ExpressionStatement")},Le.parseBlock=function(t,e,r){for(void 0===t&&(t=!0),void 0===e&&(e=this.startNode()),e.body=[],this.expect(he.braceL),t&&this.enterScope(0);this.type!==he.braceR;){var i=this.parseStatement(null);e.body.push(i)}return r&&(this.strict=!1),this.next(),t&&this.exitScope(),this.finishNode(e,"BlockStatement")},Le.parseFor=function(t,e){return t.init=e,this.expect(he.semi),t.test=this.type===he.semi?null:this.parseExpression(),this.expect(he.semi),t.update=this.type===he.parenR?null:this.parseExpression(),this.expect(he.parenR),t.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(t,"ForStatement")},Le.parseForIn=function(t,e){var r=this.type===he._in;return this.next(),"VariableDeclaration"===e.type&&null!=e.declarations[0].init&&(!r||this.options.ecmaVersion<8||this.strict||"var"!==e.kind||"Identifier"!==e.declarations[0].id.type)&&this.raise(e.start,(r?"for-in":"for-of")+" loop variable declaration may not have an initializer"),t.left=e,t.right=r?this.parseExpression():this.parseMaybeAssign(),this.expect(he.parenR),t.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(t,r?"ForInStatement":"ForOfStatement")},Le.parseVar=function(t,e,r,i){for(t.declarations=[],t.kind=r;;){var n=this.startNode();if(this.parseVarId(n,r),this.eat(he.eq)?n.init=this.parseMaybeAssign(e):i||"const"!==r||this.type===he._in||this.options.ecmaVersion>=6&&this.isContextual("of")?i||"Identifier"===n.id.type||e&&(this.type===he._in||this.isContextual("of"))?n.init=null:this.raise(this.lastTokEnd,"Complex binding patterns require an initialization value"):this.unexpected(),t.declarations.push(this.finishNode(n,"VariableDeclarator")),!this.eat(he.comma))break}return t},Le.parseVarId=function(t,e){t.id=this.parseBindingAtom(),this.checkLValPattern(t.id,"var"===e?1:2,!1)};var He=1,je=2;function We(t,e){var r=e.key.name,i=t[r],n="true";return"MethodDefinition"!==e.type||"get"!==e.kind&&"set"!==e.kind||(n=(e.static?"s":"i")+e.kind),"iget"===i&&"iset"===n||"iset"===i&&"iget"===n||"sget"===i&&"sset"===n||"sset"===i&&"sget"===n?(t[r]="true",!1):!!i||(t[r]=n,!1)}function Ve(t,e){var r=t.computed,i=t.key;return!r&&("Identifier"===i.type&&i.name===e||"Literal"===i.type&&i.value===e)}Le.parseFunction=function(t,e,r,i,n){this.initFunction(t),(this.options.ecmaVersion>=9||this.options.ecmaVersion>=6&&!i)&&(this.type===he.star&&e&je&&this.unexpected(),t.generator=this.eat(he.star)),this.options.ecmaVersion>=8&&(t.async=!!i),e&He&&(t.id=4&e&&this.type!==he.name?null:this.parseIdent(),!t.id||e&je||this.checkLValSimple(t.id,this.strict||t.generator||t.async?this.treatFunctionsAsVar?1:2:3));var s=this.yieldPos,o=this.awaitPos,a=this.awaitIdentPos;return this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(ke(t.async,t.generator)),e&He||(t.id=this.type===he.name?this.parseIdent():null),this.parseFunctionParams(t),this.parseFunctionBody(t,r,!1,n),this.yieldPos=s,this.awaitPos=o,this.awaitIdentPos=a,this.finishNode(t,e&He?"FunctionDeclaration":"FunctionExpression")},Le.parseFunctionParams=function(t){this.expect(he.parenL),t.params=this.parseBindingList(he.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams()},Le.parseClass=function(t,e){this.next();var r=this.strict;this.strict=!0,this.parseClassId(t,e),this.parseClassSuper(t);var i=this.enterClassBody(),n=this.startNode(),s=!1;for(n.body=[],this.expect(he.braceL);this.type!==he.braceR;){var o=this.parseClassElement(null!==t.superClass);o&&(n.body.push(o),"MethodDefinition"===o.type&&"constructor"===o.kind?(s&&this.raiseRecoverable(o.start,"Duplicate constructor in the same class"),s=!0):o.key&&"PrivateIdentifier"===o.key.type&&We(i,o)&&this.raiseRecoverable(o.key.start,"Identifier '#"+o.key.name+"' has already been declared"))}return this.strict=r,this.next(),t.body=this.finishNode(n,"ClassBody"),this.exitClassBody(),this.finishNode(t,e?"ClassDeclaration":"ClassExpression")},Le.parseClassElement=function(t){if(this.eat(he.semi))return null;var e=this.options.ecmaVersion,r=this.startNode(),i="",n=!1,s=!1,o="method",a=!1;if(this.eatContextual("static")){if(e>=13&&this.eat(he.braceL))return this.parseClassStaticBlock(r),r;this.isClassElementNameStart()||this.type===he.star?a=!0:i="static"}if(r.static=a,!i&&e>=8&&this.eatContextual("async")&&(!this.isClassElementNameStart()&&this.type!==he.star||this.canInsertSemicolon()?i="async":s=!0),!i&&(e>=9||!s)&&this.eat(he.star)&&(n=!0),!i&&!s&&!n){var c=this.value;(this.eatContextual("get")||this.eatContextual("set"))&&(this.isClassElementNameStart()?o=c:i=c)}if(i?(r.computed=!1,r.key=this.startNodeAt(this.lastTokStart,this.lastTokStartLoc),r.key.name=i,this.finishNode(r.key,"Identifier")):this.parseClassElementName(r),e<13||this.type===he.parenL||"method"!==o||n||s){var l=!r.static&&Ve(r,"constructor"),h=l&&t;l&&"method"!==o&&this.raise(r.key.start,"Constructor can't have get/set modifier"),r.kind=l?"constructor":o,this.parseClassMethod(r,n,s,h)}else this.parseClassField(r);return r},Le.isClassElementNameStart=function(){return this.type===he.name||this.type===he.privateId||this.type===he.num||this.type===he.string||this.type===he.bracketL||this.type.keyword},Le.parseClassElementName=function(t){this.type===he.privateId?("constructor"===this.value&&this.raise(this.start,"Classes can't have an element named '#constructor'"),t.computed=!1,t.key=this.parsePrivateIdent()):this.parsePropertyName(t)},Le.parseClassMethod=function(t,e,r,i){var n=t.key;"constructor"===t.kind?(e&&this.raise(n.start,"Constructor can't be a generator"),r&&this.raise(n.start,"Constructor can't be an async method")):t.static&&Ve(t,"prototype")&&this.raise(n.start,"Classes may not have a static property named prototype");var s=t.value=this.parseMethod(e,r,i);return"get"===t.kind&&0!==s.params.length&&this.raiseRecoverable(s.start,"getter should have no params"),"set"===t.kind&&1!==s.params.length&&this.raiseRecoverable(s.start,"setter should have exactly one param"),"set"===t.kind&&"RestElement"===s.params[0].type&&this.raiseRecoverable(s.params[0].start,"Setter cannot use rest params"),this.finishNode(t,"MethodDefinition")},Le.parseClassField=function(t){if(Ve(t,"constructor")?this.raise(t.key.start,"Classes can't have a field named 'constructor'"):t.static&&Ve(t,"prototype")&&this.raise(t.key.start,"Classes can't have a static field named 'prototype'"),this.eat(he.eq)){var e=this.currentThisScope(),r=e.inClassFieldInit;e.inClassFieldInit=!0,t.value=this.parseMaybeAssign(),e.inClassFieldInit=r}else t.value=null;return this.semicolon(),this.finishNode(t,"PropertyDefinition")},Le.parseClassStaticBlock=function(t){t.body=[];var e=this.labels;for(this.labels=[],this.enterScope(320);this.type!==he.braceR;){var r=this.parseStatement(null);t.body.push(r)}return this.next(),this.exitScope(),this.labels=e,this.finishNode(t,"StaticBlock")},Le.parseClassId=function(t,e){this.type===he.name?(t.id=this.parseIdent(),e&&this.checkLValSimple(t.id,2,!1)):(!0===e&&this.unexpected(),t.id=null)},Le.parseClassSuper=function(t){t.superClass=this.eat(he._extends)?this.parseExprSubscripts(null,!1):null},Le.enterClassBody=function(){var t={declared:Object.create(null),used:[]};return this.privateNameStack.push(t),t.declared},Le.exitClassBody=function(){var t=this.privateNameStack.pop(),e=t.declared,r=t.used;if(this.options.checkPrivateFields)for(var i=this.privateNameStack.length,n=0===i?null:this.privateNameStack[i-1],s=0;s<r.length;++s){var o=r[s];Ae(e,o.name)||(n?n.used.push(o):this.raiseRecoverable(o.start,"Private field '#"+o.name+"' must be declared in an enclosing class"))}},Le.parseExportAllDeclaration=function(t,e){return this.options.ecmaVersion>=11&&(this.eatContextual("as")?(t.exported=this.parseModuleExportName(),this.checkExport(e,t.exported,this.lastTokStart)):t.exported=null),this.expectContextual("from"),this.type!==he.string&&this.unexpected(),t.source=this.parseExprAtom(),this.semicolon(),this.finishNode(t,"ExportAllDeclaration")},Le.parseExport=function(t,e){if(this.next(),this.eat(he.star))return this.parseExportAllDeclaration(t,e);if(this.eat(he._default))return this.checkExport(e,"default",this.lastTokStart),t.declaration=this.parseExportDefaultDeclaration(),this.finishNode(t,"ExportDefaultDeclaration");if(this.shouldParseExportStatement())t.declaration=this.parseExportDeclaration(t),"VariableDeclaration"===t.declaration.type?this.checkVariableExport(e,t.declaration.declarations):this.checkExport(e,t.declaration.id,t.declaration.id.start),t.specifiers=[],t.source=null;else{if(t.declaration=null,t.specifiers=this.parseExportSpecifiers(e),this.eatContextual("from"))this.type!==he.string&&this.unexpected(),t.source=this.parseExprAtom();else{for(var r=0,i=t.specifiers;r<i.length;r+=1){var n=i[r];this.checkUnreserved(n.local),this.checkLocalExport(n.local),"Literal"===n.local.type&&this.raise(n.local.start,"A string literal cannot be used as an exported binding without `from`.")}t.source=null}this.semicolon()}return this.finishNode(t,"ExportNamedDeclaration")},Le.parseExportDeclaration=function(t){return this.parseStatement(null)},Le.parseExportDefaultDeclaration=function(){var t;if(this.type===he._function||(t=this.isAsyncFunction())){var e=this.startNode();return this.next(),t&&this.next(),this.parseFunction(e,4|He,!1,t)}if(this.type===he._class){var r=this.startNode();return this.parseClass(r,"nullableID")}var i=this.parseMaybeAssign();return this.semicolon(),i},Le.checkExport=function(t,e,r){t&&("string"!=typeof e&&(e="Identifier"===e.type?e.name:e.value),Ae(t,e)&&this.raiseRecoverable(r,"Duplicate export '"+e+"'"),t[e]=!0)},Le.checkPatternExport=function(t,e){var r=e.type;if("Identifier"===r)this.checkExport(t,e,e.start);else if("ObjectPattern"===r)for(var i=0,n=e.properties;i<n.length;i+=1){var s=n[i];this.checkPatternExport(t,s)}else if("ArrayPattern"===r)for(var o=0,a=e.elements;o<a.length;o+=1){var c=a[o];c&&this.checkPatternExport(t,c)}else"Property"===r?this.checkPatternExport(t,e.value):"AssignmentPattern"===r?this.checkPatternExport(t,e.left):"RestElement"===r?this.checkPatternExport(t,e.argument):"ParenthesizedExpression"===r&&this.checkPatternExport(t,e.expression)},Le.checkVariableExport=function(t,e){if(t)for(var r=0,i=e;r<i.length;r+=1){var n=i[r];this.checkPatternExport(t,n.id)}},Le.shouldParseExportStatement=function(){return"var"===this.type.keyword||"const"===this.type.keyword||"class"===this.type.keyword||"function"===this.type.keyword||this.isLet()||this.isAsyncFunction()},Le.parseExportSpecifier=function(t){var e=this.startNode();return e.local=this.parseModuleExportName(),e.exported=this.eatContextual("as")?this.parseModuleExportName():e.local,this.checkExport(t,e.exported,e.exported.start),this.finishNode(e,"ExportSpecifier")},Le.parseExportSpecifiers=function(t){var e=[],r=!0;for(this.expect(he.braceL);!this.eat(he.braceR);){if(r)r=!1;else if(this.expect(he.comma),this.afterTrailingComma(he.braceR))break;e.push(this.parseExportSpecifier(t))}return e},Le.parseImport=function(t){return this.next(),this.type===he.string?(t.specifiers=Fe,t.source=this.parseExprAtom()):(t.specifiers=this.parseImportSpecifiers(),this.expectContextual("from"),t.source=this.type===he.string?this.parseExprAtom():this.unexpected()),this.semicolon(),this.finishNode(t,"ImportDeclaration")},Le.parseImportSpecifier=function(){var t=this.startNode();return t.imported=this.parseModuleExportName(),this.eatContextual("as")?t.local=this.parseIdent():(this.checkUnreserved(t.imported),t.local=t.imported),this.checkLValSimple(t.local,2),this.finishNode(t,"ImportSpecifier")},Le.parseImportDefaultSpecifier=function(){var t=this.startNode();return t.local=this.parseIdent(),this.checkLValSimple(t.local,2),this.finishNode(t,"ImportDefaultSpecifier")},Le.parseImportNamespaceSpecifier=function(){var t=this.startNode();return this.next(),this.expectContextual("as"),t.local=this.parseIdent(),this.checkLValSimple(t.local,2),this.finishNode(t,"ImportNamespaceSpecifier")},Le.parseImportSpecifiers=function(){var t=[],e=!0;if(this.type===he.name&&(t.push(this.parseImportDefaultSpecifier()),!this.eat(he.comma)))return t;if(this.type===he.star)return t.push(this.parseImportNamespaceSpecifier()),t;for(this.expect(he.braceL);!this.eat(he.braceR);){if(e)e=!1;else if(this.expect(he.comma),this.afterTrailingComma(he.braceR))break;t.push(this.parseImportSpecifier())}return t},Le.parseModuleExportName=function(){if(this.options.ecmaVersion>=13&&this.type===he.string){var t=this.parseLiteral(this.value);return Se.test(t.value)&&this.raise(t.start,"An export name cannot include a lone surrogate."),t}return this.parseIdent(!0)},Le.adaptDirectivePrologue=function(t){for(var e=0;e<t.length&&this.isDirectiveCandidate(t[e]);++e)t[e].directive=t[e].expression.raw.slice(1,-1)},Le.isDirectiveCandidate=function(t){return this.options.ecmaVersion>=5&&"ExpressionStatement"===t.type&&"Literal"===t.expression.type&&"string"==typeof t.expression.value&&('"'===this.input[t.start]||"'"===this.input[t.start])};var Ge=Ne.prototype;Ge.toAssignable=function(t,e,r){if(this.options.ecmaVersion>=6&&t)switch(t.type){case"Identifier":this.inAsync&&"await"===t.name&&this.raise(t.start,"Cannot use 'await' as identifier inside an async function");break;case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":t.type="ObjectPattern",r&&this.checkPatternErrors(r,!0);for(var i=0,n=t.properties;i<n.length;i+=1){var s=n[i];this.toAssignable(s,e),"RestElement"!==s.type||"ArrayPattern"!==s.argument.type&&"ObjectPattern"!==s.argument.type||this.raise(s.argument.start,"Unexpected token")}break;case"Property":"init"!==t.kind&&this.raise(t.key.start,"Object pattern can't contain getter or setter"),this.toAssignable(t.value,e);break;case"ArrayExpression":t.type="ArrayPattern",r&&this.checkPatternErrors(r,!0),this.toAssignableList(t.elements,e);break;case"SpreadElement":t.type="RestElement",this.toAssignable(t.argument,e),"AssignmentPattern"===t.argument.type&&this.raise(t.argument.start,"Rest elements cannot have a default value");break;case"AssignmentExpression":"="!==t.operator&&this.raise(t.left.end,"Only '=' operator can be used for specifying default value."),t.type="AssignmentPattern",delete t.operator,this.toAssignable(t.left,e);break;case"ParenthesizedExpression":this.toAssignable(t.expression,e,r);break;case"ChainExpression":this.raiseRecoverable(t.start,"Optional chaining cannot appear in left-hand side");break;case"MemberExpression":if(!e)break;default:this.raise(t.start,"Assigning to rvalue")}else r&&this.checkPatternErrors(r,!0);return t},Ge.toAssignableList=function(t,e){for(var r=t.length,i=0;i<r;i++){var n=t[i];n&&this.toAssignable(n,e)}if(r){var s=t[r-1];6===this.options.ecmaVersion&&e&&s&&"RestElement"===s.type&&"Identifier"!==s.argument.type&&this.unexpected(s.argument.start)}return t},Ge.parseSpread=function(t){var e=this.startNode();return this.next(),e.argument=this.parseMaybeAssign(!1,t),this.finishNode(e,"SpreadElement")},Ge.parseRestBinding=function(){var t=this.startNode();return this.next(),6===this.options.ecmaVersion&&this.type!==he.name&&this.unexpected(),t.argument=this.parseBindingAtom(),this.finishNode(t,"RestElement")},Ge.parseBindingAtom=function(){if(this.options.ecmaVersion>=6)switch(this.type){case he.bracketL:var t=this.startNode();return this.next(),t.elements=this.parseBindingList(he.bracketR,!0,!0),this.finishNode(t,"ArrayPattern");case he.braceL:return this.parseObj(!0)}return this.parseIdent()},Ge.parseBindingList=function(t,e,r,i){for(var n=[],s=!0;!this.eat(t);)if(s?s=!1:this.expect(he.comma),e&&this.type===he.comma)n.push(null);else{if(r&&this.afterTrailingComma(t))break;if(this.type===he.ellipsis){var o=this.parseRestBinding();this.parseBindingListItem(o),n.push(o),this.type===he.comma&&this.raiseRecoverable(this.start,"Comma is not permitted after the rest element"),this.expect(t);break}n.push(this.parseAssignableListItem(i))}return n},Ge.parseAssignableListItem=function(t){var e=this.parseMaybeDefault(this.start,this.startLoc);return this.parseBindingListItem(e),e},Ge.parseBindingListItem=function(t){return t},Ge.parseMaybeDefault=function(t,e,r){if(r=r||this.parseBindingAtom(),this.options.ecmaVersion<6||!this.eat(he.eq))return r;var i=this.startNodeAt(t,e);return i.left=r,i.right=this.parseMaybeAssign(),this.finishNode(i,"AssignmentPattern")},Ge.checkLValSimple=function(t,e,r){void 0===e&&(e=0);var i=0!==e;switch(t.type){case"Identifier":this.strict&&this.reservedWordsStrictBind.test(t.name)&&this.raiseRecoverable(t.start,(i?"Binding ":"Assigning to ")+t.name+" in strict mode"),i&&(2===e&&"let"===t.name&&this.raiseRecoverable(t.start,"let is disallowed as a lexically bound name"),r&&(Ae(r,t.name)&&this.raiseRecoverable(t.start,"Argument name clash"),r[t.name]=!0),5!==e&&this.declareName(t.name,e,t.start));break;case"ChainExpression":this.raiseRecoverable(t.start,"Optional chaining cannot appear in left-hand side");break;case"MemberExpression":i&&this.raiseRecoverable(t.start,"Binding member expression");break;case"ParenthesizedExpression":return i&&this.raiseRecoverable(t.start,"Binding parenthesized expression"),this.checkLValSimple(t.expression,e,r);default:this.raise(t.start,(i?"Binding":"Assigning to")+" rvalue")}},Ge.checkLValPattern=function(t,e,r){switch(void 0===e&&(e=0),t.type){case"ObjectPattern":for(var i=0,n=t.properties;i<n.length;i+=1){var s=n[i];this.checkLValInnerPattern(s,e,r)}break;case"ArrayPattern":for(var o=0,a=t.elements;o<a.length;o+=1){var c=a[o];c&&this.checkLValInnerPattern(c,e,r)}break;default:this.checkLValSimple(t,e,r)}},Ge.checkLValInnerPattern=function(t,e,r){switch(void 0===e&&(e=0),t.type){case"Property":this.checkLValInnerPattern(t.value,e,r);break;case"AssignmentPattern":this.checkLValPattern(t.left,e,r);break;case"RestElement":this.checkLValPattern(t.argument,e,r);break;default:this.checkLValPattern(t,e,r)}};var ze=function(t,e,r,i,n){this.token=t,this.isExpr=!!e,this.preserveSpace=!!r,this.override=i,this.generator=!!n},qe={b_stat:new ze("{",!1),b_expr:new ze("{",!0),b_tmpl:new ze("${",!1),p_stat:new ze("(",!1),p_expr:new ze("(",!0),q_tmpl:new ze("`",!0,!0,(function(t){return t.tryReadTemplateToken()})),f_stat:new ze("function",!1),f_expr:new ze("function",!0),f_expr_gen:new ze("function",!0,!1,null,!0),f_gen:new ze("function",!1,!1,null,!0)},Qe=Ne.prototype;Qe.initialContext=function(){return[qe.b_stat]},Qe.curContext=function(){return this.context[this.context.length-1]},Qe.braceIsBlock=function(t){var e=this.curContext();return e===qe.f_expr||e===qe.f_stat||(t!==he.colon||e!==qe.b_stat&&e!==qe.b_expr?t===he._return||t===he.name&&this.exprAllowed?ue.test(this.input.slice(this.lastTokEnd,this.start)):t===he._else||t===he.semi||t===he.eof||t===he.parenR||t===he.arrow||(t===he.braceL?e===qe.b_stat:t!==he._var&&t!==he._const&&t!==he.name&&!this.exprAllowed):!e.isExpr)},Qe.inGeneratorContext=function(){for(var t=this.context.length-1;t>=1;t--){var e=this.context[t];if("function"===e.token)return e.generator}return!1},Qe.updateContext=function(t){var e,r=this.type;r.keyword&&t===he.dot?this.exprAllowed=!1:(e=r.updateContext)?e.call(this,t):this.exprAllowed=r.beforeExpr},Qe.overrideContext=function(t){this.curContext()!==t&&(this.context[this.context.length-1]=t)},he.parenR.updateContext=he.braceR.updateContext=function(){if(1!==this.context.length){var t=this.context.pop();t===qe.b_stat&&"function"===this.curContext().token&&(t=this.context.pop()),this.exprAllowed=!t.isExpr}else this.exprAllowed=!0},he.braceL.updateContext=function(t){this.context.push(this.braceIsBlock(t)?qe.b_stat:qe.b_expr),this.exprAllowed=!0},he.dollarBraceL.updateContext=function(){this.context.push(qe.b_tmpl),this.exprAllowed=!0},he.parenL.updateContext=function(t){var e=t===he._if||t===he._for||t===he._with||t===he._while;this.context.push(e?qe.p_stat:qe.p_expr),this.exprAllowed=!0},he.incDec.updateContext=function(){},he._function.updateContext=he._class.updateContext=function(t){!t.beforeExpr||t===he._else||t===he.semi&&this.curContext()!==qe.p_stat||t===he._return&&ue.test(this.input.slice(this.lastTokEnd,this.start))||(t===he.colon||t===he.braceL)&&this.curContext()===qe.b_stat?this.context.push(qe.f_stat):this.context.push(qe.f_expr),this.exprAllowed=!1},he.backQuote.updateContext=function(){this.curContext()===qe.q_tmpl?this.context.pop():this.context.push(qe.q_tmpl),this.exprAllowed=!1},he.star.updateContext=function(t){if(t===he._function){var e=this.context.length-1;this.context[e]===qe.f_expr?this.context[e]=qe.f_expr_gen:this.context[e]=qe.f_gen}this.exprAllowed=!0},he.name.updateContext=function(t){var e=!1;this.options.ecmaVersion>=6&&t!==he.dot&&("of"===this.value&&!this.exprAllowed||"yield"===this.value&&this.inGeneratorContext())&&(e=!0),this.exprAllowed=e};var Ke=Ne.prototype;function Ye(t){return"MemberExpression"===t.type&&"PrivateIdentifier"===t.property.type||"ChainExpression"===t.type&&Ye(t.expression)}Ke.checkPropClash=function(t,e,r){if(!(this.options.ecmaVersion>=9&&"SpreadElement"===t.type||this.options.ecmaVersion>=6&&(t.computed||t.method||t.shorthand))){var i,n=t.key;switch(n.type){case"Identifier":i=n.name;break;case"Literal":i=String(n.value);break;default:return}var s=t.kind;if(this.options.ecmaVersion>=6)"__proto__"===i&&"init"===s&&(e.proto&&(r?r.doubleProto<0&&(r.doubleProto=n.start):this.raiseRecoverable(n.start,"Redefinition of __proto__ property")),e.proto=!0);else{var o=e[i="$"+i];o?("init"===s?this.strict&&o.init||o.get||o.set:o.init||o[s])&&this.raiseRecoverable(n.start,"Redefinition of property"):o=e[i]={init:!1,get:!1,set:!1},o[s]=!0}}},Ke.parseExpression=function(t,e){var r=this.start,i=this.startLoc,n=this.parseMaybeAssign(t,e);if(this.type===he.comma){var s=this.startNodeAt(r,i);for(s.expressions=[n];this.eat(he.comma);)s.expressions.push(this.parseMaybeAssign(t,e));return this.finishNode(s,"SequenceExpression")}return n},Ke.parseMaybeAssign=function(t,e,r){if(this.isContextual("yield")){if(this.inGenerator)return this.parseYield(t);this.exprAllowed=!1}var i=!1,n=-1,s=-1,o=-1;e?(n=e.parenthesizedAssign,s=e.trailingComma,o=e.doubleProto,e.parenthesizedAssign=e.trailingComma=-1):(e=new De,i=!0);var a=this.start,c=this.startLoc;this.type!==he.parenL&&this.type!==he.name||(this.potentialArrowAt=this.start,this.potentialArrowInForAwait="await"===t);var l=this.parseMaybeConditional(t,e);if(r&&(l=r.call(this,l,a,c)),this.type.isAssign){var h=this.startNodeAt(a,c);return h.operator=this.value,this.type===he.eq&&(l=this.toAssignable(l,!1,e)),i||(e.parenthesizedAssign=e.trailingComma=e.doubleProto=-1),e.shorthandAssign>=l.start&&(e.shorthandAssign=-1),this.type===he.eq?this.checkLValPattern(l):this.checkLValSimple(l),h.left=l,this.next(),h.right=this.parseMaybeAssign(t),o>-1&&(e.doubleProto=o),this.finishNode(h,"AssignmentExpression")}return i&&this.checkExpressionErrors(e,!0),n>-1&&(e.parenthesizedAssign=n),s>-1&&(e.trailingComma=s),l},Ke.parseMaybeConditional=function(t,e){var r=this.start,i=this.startLoc,n=this.parseExprOps(t,e);if(this.checkExpressionErrors(e))return n;if(this.eat(he.question)){var s=this.startNodeAt(r,i);return s.test=n,s.consequent=this.parseMaybeAssign(),this.expect(he.colon),s.alternate=this.parseMaybeAssign(t),this.finishNode(s,"ConditionalExpression")}return n},Ke.parseExprOps=function(t,e){var r=this.start,i=this.startLoc,n=this.parseMaybeUnary(e,!1,!1,t);return this.checkExpressionErrors(e)||n.start===r&&"ArrowFunctionExpression"===n.type?n:this.parseExprOp(n,r,i,-1,t)},Ke.parseExprOp=function(t,e,r,i,n){var s=this.type.binop;if(null!=s&&(!n||this.type!==he._in)&&s>i){var o=this.type===he.logicalOR||this.type===he.logicalAND,a=this.type===he.coalesce;a&&(s=he.logicalAND.binop);var c=this.value;this.next();var l=this.start,h=this.startLoc,u=this.parseExprOp(this.parseMaybeUnary(null,!1,!1,n),l,h,s,n),p=this.buildBinary(e,r,t,u,c,o||a);return(o&&this.type===he.coalesce||a&&(this.type===he.logicalOR||this.type===he.logicalAND))&&this.raiseRecoverable(this.start,"Logical expressions and coalesce expressions cannot be mixed. Wrap either by parentheses"),this.parseExprOp(p,e,r,i,n)}return t},Ke.buildBinary=function(t,e,r,i,n,s){"PrivateIdentifier"===i.type&&this.raise(i.start,"Private identifier can only be left side of binary expression");var o=this.startNodeAt(t,e);return o.left=r,o.operator=n,o.right=i,this.finishNode(o,s?"LogicalExpression":"BinaryExpression")},Ke.parseMaybeUnary=function(t,e,r,i){var n,s=this.start,o=this.startLoc;if(this.isContextual("await")&&this.canAwait)n=this.parseAwait(i),e=!0;else if(this.type.prefix){var a=this.startNode(),c=this.type===he.incDec;a.operator=this.value,a.prefix=!0,this.next(),a.argument=this.parseMaybeUnary(null,!0,c,i),this.checkExpressionErrors(t,!0),c?this.checkLValSimple(a.argument):this.strict&&"delete"===a.operator&&"Identifier"===a.argument.type?this.raiseRecoverable(a.start,"Deleting local variable in strict mode"):"delete"===a.operator&&Ye(a.argument)?this.raiseRecoverable(a.start,"Private fields can not be deleted"):e=!0,n=this.finishNode(a,c?"UpdateExpression":"UnaryExpression")}else if(e||this.type!==he.privateId){if(n=this.parseExprSubscripts(t,i),this.checkExpressionErrors(t))return n;for(;this.type.postfix&&!this.canInsertSemicolon();){var l=this.startNodeAt(s,o);l.operator=this.value,l.prefix=!1,l.argument=n,this.checkLValSimple(n),this.next(),n=this.finishNode(l,"UpdateExpression")}}else(i||0===this.privateNameStack.length)&&this.options.checkPrivateFields&&this.unexpected(),n=this.parsePrivateIdent(),this.type!==he._in&&this.unexpected();return r||!this.eat(he.starstar)?n:e?void this.unexpected(this.lastTokStart):this.buildBinary(s,o,n,this.parseMaybeUnary(null,!1,!1,i),"**",!1)},Ke.parseExprSubscripts=function(t,e){var r=this.start,i=this.startLoc,n=this.parseExprAtom(t,e);if("ArrowFunctionExpression"===n.type&&")"!==this.input.slice(this.lastTokStart,this.lastTokEnd))return n;var s=this.parseSubscripts(n,r,i,!1,e);return t&&"MemberExpression"===s.type&&(t.parenthesizedAssign>=s.start&&(t.parenthesizedAssign=-1),t.parenthesizedBind>=s.start&&(t.parenthesizedBind=-1),t.trailingComma>=s.start&&(t.trailingComma=-1)),s},Ke.parseSubscripts=function(t,e,r,i,n){for(var s=this.options.ecmaVersion>=8&&"Identifier"===t.type&&"async"===t.name&&this.lastTokEnd===t.end&&!this.canInsertSemicolon()&&t.end-t.start==5&&this.potentialArrowAt===t.start,o=!1;;){var a=this.parseSubscript(t,e,r,i,s,o,n);if(a.optional&&(o=!0),a===t||"ArrowFunctionExpression"===a.type){if(o){var c=this.startNodeAt(e,r);c.expression=a,a=this.finishNode(c,"ChainExpression")}return a}t=a}},Ke.shouldParseAsyncArrow=function(){return!this.canInsertSemicolon()&&this.eat(he.arrow)},Ke.parseSubscriptAsyncArrow=function(t,e,r,i){return this.parseArrowExpression(this.startNodeAt(t,e),r,!0,i)},Ke.parseSubscript=function(t,e,r,i,n,s,o){var a=this.options.ecmaVersion>=11,c=a&&this.eat(he.questionDot);i&&c&&this.raise(this.lastTokStart,"Optional chaining cannot appear in the callee of new expressions");var l=this.eat(he.bracketL);if(l||c&&this.type!==he.parenL&&this.type!==he.backQuote||this.eat(he.dot)){var h=this.startNodeAt(e,r);h.object=t,l?(h.property=this.parseExpression(),this.expect(he.bracketR)):this.type===he.privateId&&"Super"!==t.type?h.property=this.parsePrivateIdent():h.property=this.parseIdent("never"!==this.options.allowReserved),h.computed=!!l,a&&(h.optional=c),t=this.finishNode(h,"MemberExpression")}else if(!i&&this.eat(he.parenL)){var u=new De,p=this.yieldPos,d=this.awaitPos,f=this.awaitIdentPos;this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0;var g=this.parseExprList(he.parenR,this.options.ecmaVersion>=8,!1,u);if(n&&!c&&this.shouldParseAsyncArrow())return this.checkPatternErrors(u,!1),this.checkYieldAwaitInDefaultParams(),this.awaitIdentPos>0&&this.raise(this.awaitIdentPos,"Cannot use 'await' as identifier inside an async function"),this.yieldPos=p,this.awaitPos=d,this.awaitIdentPos=f,this.parseSubscriptAsyncArrow(e,r,g,o);this.checkExpressionErrors(u,!0),this.yieldPos=p||this.yieldPos,this.awaitPos=d||this.awaitPos,this.awaitIdentPos=f||this.awaitIdentPos;var y=this.startNodeAt(e,r);y.callee=t,y.arguments=g,a&&(y.optional=c),t=this.finishNode(y,"CallExpression")}else if(this.type===he.backQuote){(c||s)&&this.raise(this.start,"Optional chaining cannot appear in the tag of tagged template expressions");var m=this.startNodeAt(e,r);m.tag=t,m.quasi=this.parseTemplate({isTagged:!0}),t=this.finishNode(m,"TaggedTemplateExpression")}return t},Ke.parseExprAtom=function(t,e,r){this.type===he.slash&&this.readRegexp();var i,n=this.potentialArrowAt===this.start;switch(this.type){case he._super:return this.allowSuper||this.raise(this.start,"'super' keyword outside a method"),i=this.startNode(),this.next(),this.type!==he.parenL||this.allowDirectSuper||this.raise(i.start,"super() call outside constructor of a subclass"),this.type!==he.dot&&this.type!==he.bracketL&&this.type!==he.parenL&&this.unexpected(),this.finishNode(i,"Super");case he._this:return i=this.startNode(),this.next(),this.finishNode(i,"ThisExpression");case he.name:var s=this.start,o=this.startLoc,a=this.containsEsc,c=this.parseIdent(!1);if(this.options.ecmaVersion>=8&&!a&&"async"===c.name&&!this.canInsertSemicolon()&&this.eat(he._function))return this.overrideContext(qe.f_expr),this.parseFunction(this.startNodeAt(s,o),0,!1,!0,e);if(n&&!this.canInsertSemicolon()){if(this.eat(he.arrow))return this.parseArrowExpression(this.startNodeAt(s,o),[c],!1,e);if(this.options.ecmaVersion>=8&&"async"===c.name&&this.type===he.name&&!a&&(!this.potentialArrowInForAwait||"of"!==this.value||this.containsEsc))return c=this.parseIdent(!1),!this.canInsertSemicolon()&&this.eat(he.arrow)||this.unexpected(),this.parseArrowExpression(this.startNodeAt(s,o),[c],!0,e)}return c;case he.regexp:var l=this.value;return(i=this.parseLiteral(l.value)).regex={pattern:l.pattern,flags:l.flags},i;case he.num:case he.string:return this.parseLiteral(this.value);case he._null:case he._true:case he._false:return(i=this.startNode()).value=this.type===he._null?null:this.type===he._true,i.raw=this.type.keyword,this.next(),this.finishNode(i,"Literal");case he.parenL:var h=this.start,u=this.parseParenAndDistinguishExpression(n,e);return t&&(t.parenthesizedAssign<0&&!this.isSimpleAssignTarget(u)&&(t.parenthesizedAssign=h),t.parenthesizedBind<0&&(t.parenthesizedBind=h)),u;case he.bracketL:return i=this.startNode(),this.next(),i.elements=this.parseExprList(he.bracketR,!0,!0,t),this.finishNode(i,"ArrayExpression");case he.braceL:return this.overrideContext(qe.b_expr),this.parseObj(!1,t);case he._function:return i=this.startNode(),this.next(),this.parseFunction(i,0);case he._class:return this.parseClass(this.startNode(),!1);case he._new:return this.parseNew();case he.backQuote:return this.parseTemplate();case he._import:return this.options.ecmaVersion>=11?this.parseExprImport(r):this.unexpected();default:return this.parseExprAtomDefault()}},Ke.parseExprAtomDefault=function(){this.unexpected()},Ke.parseExprImport=function(t){var e=this.startNode();this.containsEsc&&this.raiseRecoverable(this.start,"Escape sequence in keyword import");var r=this.parseIdent(!0);return this.type!==he.parenL||t?this.type===he.dot?(e.meta=r,this.parseImportMeta(e)):void this.unexpected():this.parseDynamicImport(e)},Ke.parseDynamicImport=function(t){if(this.next(),t.source=this.parseMaybeAssign(),!this.eat(he.parenR)){var e=this.start;this.eat(he.comma)&&this.eat(he.parenR)?this.raiseRecoverable(e,"Trailing comma is not allowed in import()"):this.unexpected(e)}return this.finishNode(t,"ImportExpression")},Ke.parseImportMeta=function(t){this.next();var e=this.containsEsc;return t.property=this.parseIdent(!0),"meta"!==t.property.name&&this.raiseRecoverable(t.property.start,"The only valid meta property for import is 'import.meta'"),e&&this.raiseRecoverable(t.start,"'import.meta' must not contain escaped characters"),"module"===this.options.sourceType||this.options.allowImportExportEverywhere||this.raiseRecoverable(t.start,"Cannot use 'import.meta' outside a module"),this.finishNode(t,"MetaProperty")},Ke.parseLiteral=function(t){var e=this.startNode();return e.value=t,e.raw=this.input.slice(this.start,this.end),110===e.raw.charCodeAt(e.raw.length-1)&&(e.bigint=e.raw.slice(0,-1).replace(/_/g,"")),this.next(),this.finishNode(e,"Literal")},Ke.parseParenExpression=function(){this.expect(he.parenL);var t=this.parseExpression();return this.expect(he.parenR),t},Ke.shouldParseArrow=function(t){return!this.canInsertSemicolon()},Ke.parseParenAndDistinguishExpression=function(t,e){var r,i=this.start,n=this.startLoc,s=this.options.ecmaVersion>=8;if(this.options.ecmaVersion>=6){this.next();var o,a=this.start,c=this.startLoc,l=[],h=!0,u=!1,p=new De,d=this.yieldPos,f=this.awaitPos;for(this.yieldPos=0,this.awaitPos=0;this.type!==he.parenR;){if(h?h=!1:this.expect(he.comma),s&&this.afterTrailingComma(he.parenR,!0)){u=!0;break}if(this.type===he.ellipsis){o=this.start,l.push(this.parseParenItem(this.parseRestBinding())),this.type===he.comma&&this.raiseRecoverable(this.start,"Comma is not permitted after the rest element");break}l.push(this.parseMaybeAssign(!1,p,this.parseParenItem))}var g=this.lastTokEnd,y=this.lastTokEndLoc;if(this.expect(he.parenR),t&&this.shouldParseArrow(l)&&this.eat(he.arrow))return this.checkPatternErrors(p,!1),this.checkYieldAwaitInDefaultParams(),this.yieldPos=d,this.awaitPos=f,this.parseParenArrowList(i,n,l,e);l.length&&!u||this.unexpected(this.lastTokStart),o&&this.unexpected(o),this.checkExpressionErrors(p,!0),this.yieldPos=d||this.yieldPos,this.awaitPos=f||this.awaitPos,l.length>1?((r=this.startNodeAt(a,c)).expressions=l,this.finishNodeAt(r,"SequenceExpression",g,y)):r=l[0]}else r=this.parseParenExpression();if(this.options.preserveParens){var m=this.startNodeAt(i,n);return m.expression=r,this.finishNode(m,"ParenthesizedExpression")}return r},Ke.parseParenItem=function(t){return t},Ke.parseParenArrowList=function(t,e,r,i){return this.parseArrowExpression(this.startNodeAt(t,e),r,!1,i)};var Je=[];Ke.parseNew=function(){this.containsEsc&&this.raiseRecoverable(this.start,"Escape sequence in keyword new");var t=this.startNode(),e=this.parseIdent(!0);if(this.options.ecmaVersion>=6&&this.eat(he.dot)){t.meta=e;var r=this.containsEsc;return t.property=this.parseIdent(!0),"target"!==t.property.name&&this.raiseRecoverable(t.property.start,"The only valid meta property for new is 'new.target'"),r&&this.raiseRecoverable(t.start,"'new.target' must not contain escaped characters"),this.allowNewDotTarget||this.raiseRecoverable(t.start,"'new.target' can only be used in functions and class static block"),this.finishNode(t,"MetaProperty")}var i=this.start,n=this.startLoc;return t.callee=this.parseSubscripts(this.parseExprAtom(null,!1,!0),i,n,!0,!1),this.eat(he.parenL)?t.arguments=this.parseExprList(he.parenR,this.options.ecmaVersion>=8,!1):t.arguments=Je,this.finishNode(t,"NewExpression")},Ke.parseTemplateElement=function(t){var e=t.isTagged,r=this.startNode();return this.type===he.invalidTemplate?(e||this.raiseRecoverable(this.start,"Bad escape sequence in untagged template literal"),r.value={raw:this.value,cooked:null}):r.value={raw:this.input.slice(this.start,this.end).replace(/\r\n?/g,"\n"),cooked:this.value},this.next(),r.tail=this.type===he.backQuote,this.finishNode(r,"TemplateElement")},Ke.parseTemplate=function(t){void 0===t&&(t={});var e=t.isTagged;void 0===e&&(e=!1);var r=this.startNode();this.next(),r.expressions=[];var i=this.parseTemplateElement({isTagged:e});for(r.quasis=[i];!i.tail;)this.type===he.eof&&this.raise(this.pos,"Unterminated template literal"),this.expect(he.dollarBraceL),r.expressions.push(this.parseExpression()),this.expect(he.braceR),r.quasis.push(i=this.parseTemplateElement({isTagged:e}));return this.next(),this.finishNode(r,"TemplateLiteral")},Ke.isAsyncProp=function(t){return!t.computed&&"Identifier"===t.key.type&&"async"===t.key.name&&(this.type===he.name||this.type===he.num||this.type===he.string||this.type===he.bracketL||this.type.keyword||this.options.ecmaVersion>=9&&this.type===he.star)&&!ue.test(this.input.slice(this.lastTokEnd,this.start))},Ke.parseObj=function(t,e){var r=this.startNode(),i=!0,n={};for(r.properties=[],this.next();!this.eat(he.braceR);){if(i)i=!1;else if(this.expect(he.comma),this.options.ecmaVersion>=5&&this.afterTrailingComma(he.braceR))break;var s=this.parseProperty(t,e);t||this.checkPropClash(s,n,e),r.properties.push(s)}return this.finishNode(r,t?"ObjectPattern":"ObjectExpression")},Ke.parseProperty=function(t,e){var r,i,n,s,o=this.startNode();if(this.options.ecmaVersion>=9&&this.eat(he.ellipsis))return t?(o.argument=this.parseIdent(!1),this.type===he.comma&&this.raiseRecoverable(this.start,"Comma is not permitted after the rest element"),this.finishNode(o,"RestElement")):(o.argument=this.parseMaybeAssign(!1,e),this.type===he.comma&&e&&e.trailingComma<0&&(e.trailingComma=this.start),this.finishNode(o,"SpreadElement"));this.options.ecmaVersion>=6&&(o.method=!1,o.shorthand=!1,(t||e)&&(n=this.start,s=this.startLoc),t||(r=this.eat(he.star)));var a=this.containsEsc;return this.parsePropertyName(o),!t&&!a&&this.options.ecmaVersion>=8&&!r&&this.isAsyncProp(o)?(i=!0,r=this.options.ecmaVersion>=9&&this.eat(he.star),this.parsePropertyName(o)):i=!1,this.parsePropertyValue(o,t,r,i,n,s,e,a),this.finishNode(o,"Property")},Ke.parseGetterSetter=function(t){t.kind=t.key.name,this.parsePropertyName(t),t.value=this.parseMethod(!1);var e="get"===t.kind?0:1;if(t.value.params.length!==e){var r=t.value.start;"get"===t.kind?this.raiseRecoverable(r,"getter should have no params"):this.raiseRecoverable(r,"setter should have exactly one param")}else"set"===t.kind&&"RestElement"===t.value.params[0].type&&this.raiseRecoverable(t.value.params[0].start,"Setter cannot use rest params")},Ke.parsePropertyValue=function(t,e,r,i,n,s,o,a){(r||i)&&this.type===he.colon&&this.unexpected(),this.eat(he.colon)?(t.value=e?this.parseMaybeDefault(this.start,this.startLoc):this.parseMaybeAssign(!1,o),t.kind="init"):this.options.ecmaVersion>=6&&this.type===he.parenL?(e&&this.unexpected(),t.kind="init",t.method=!0,t.value=this.parseMethod(r,i)):e||a||!(this.options.ecmaVersion>=5)||t.computed||"Identifier"!==t.key.type||"get"!==t.key.name&&"set"!==t.key.name||this.type===he.comma||this.type===he.braceR||this.type===he.eq?this.options.ecmaVersion>=6&&!t.computed&&"Identifier"===t.key.type?((r||i)&&this.unexpected(),this.checkUnreserved(t.key),"await"!==t.key.name||this.awaitIdentPos||(this.awaitIdentPos=n),t.kind="init",e?t.value=this.parseMaybeDefault(n,s,this.copyNode(t.key)):this.type===he.eq&&o?(o.shorthandAssign<0&&(o.shorthandAssign=this.start),t.value=this.parseMaybeDefault(n,s,this.copyNode(t.key))):t.value=this.copyNode(t.key),t.shorthand=!0):this.unexpected():((r||i)&&this.unexpected(),this.parseGetterSetter(t))},Ke.parsePropertyName=function(t){if(this.options.ecmaVersion>=6){if(this.eat(he.bracketL))return t.computed=!0,t.key=this.parseMaybeAssign(),this.expect(he.bracketR),t.key;t.computed=!1}return t.key=this.type===he.num||this.type===he.string?this.parseExprAtom():this.parseIdent("never"!==this.options.allowReserved)},Ke.initFunction=function(t){t.id=null,this.options.ecmaVersion>=6&&(t.generator=t.expression=!1),this.options.ecmaVersion>=8&&(t.async=!1)},Ke.parseMethod=function(t,e,r){var i=this.startNode(),n=this.yieldPos,s=this.awaitPos,o=this.awaitIdentPos;return this.initFunction(i),this.options.ecmaVersion>=6&&(i.generator=t),this.options.ecmaVersion>=8&&(i.async=!!e),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(64|ke(e,i.generator)|(r?128:0)),this.expect(he.parenL),i.params=this.parseBindingList(he.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams(),this.parseFunctionBody(i,!1,!0,!1),this.yieldPos=n,this.awaitPos=s,this.awaitIdentPos=o,this.finishNode(i,"FunctionExpression")},Ke.parseArrowExpression=function(t,e,r,i){var n=this.yieldPos,s=this.awaitPos,o=this.awaitIdentPos;return this.enterScope(16|ke(r,!1)),this.initFunction(t),this.options.ecmaVersion>=8&&(t.async=!!r),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,t.params=this.toAssignableList(e,!0),this.parseFunctionBody(t,!0,!1,i),this.yieldPos=n,this.awaitPos=s,this.awaitIdentPos=o,this.finishNode(t,"ArrowFunctionExpression")},Ke.parseFunctionBody=function(t,e,r,i){var n=e&&this.type!==he.braceL,s=this.strict,o=!1;if(n)t.body=this.parseMaybeAssign(i),t.expression=!0,this.checkParams(t,!1);else{var a=this.options.ecmaVersion>=7&&!this.isSimpleParamList(t.params);s&&!a||(o=this.strictDirective(this.end))&&a&&this.raiseRecoverable(t.start,"Illegal 'use strict' directive in function with non-simple parameter list");var c=this.labels;this.labels=[],o&&(this.strict=!0),this.checkParams(t,!s&&!o&&!e&&!r&&this.isSimpleParamList(t.params)),this.strict&&t.id&&this.checkLValSimple(t.id,5),t.body=this.parseBlock(!1,void 0,o&&!s),t.expression=!1,this.adaptDirectivePrologue(t.body.body),this.labels=c}this.exitScope()},Ke.isSimpleParamList=function(t){for(var e=0,r=t;e<r.length;e+=1)if("Identifier"!==r[e].type)return!1;return!0},Ke.checkParams=function(t,e){for(var r=Object.create(null),i=0,n=t.params;i<n.length;i+=1){var s=n[i];this.checkLValInnerPattern(s,1,e?null:r)}},Ke.parseExprList=function(t,e,r,i){for(var n=[],s=!0;!this.eat(t);){if(s)s=!1;else if(this.expect(he.comma),e&&this.afterTrailingComma(t))break;var o=void 0;r&&this.type===he.comma?o=null:this.type===he.ellipsis?(o=this.parseSpread(i),i&&this.type===he.comma&&i.trailingComma<0&&(i.trailingComma=this.start)):o=this.parseMaybeAssign(!1,i),n.push(o)}return n},Ke.checkUnreserved=function(t){var e=t.start,r=t.end,i=t.name;this.inGenerator&&"yield"===i&&this.raiseRecoverable(e,"Cannot use 'yield' as identifier inside a generator"),this.inAsync&&"await"===i&&this.raiseRecoverable(e,"Cannot use 'await' as identifier inside an async function"),this.currentThisScope().inClassFieldInit&&"arguments"===i&&this.raiseRecoverable(e,"Cannot use 'arguments' in class field initializer"),!this.inClassStaticBlock||"arguments"!==i&&"await"!==i||this.raise(e,"Cannot use "+i+" in class static initialization block"),this.keywords.test(i)&&this.raise(e,"Unexpected keyword '"+i+"'"),this.options.ecmaVersion<6&&-1!==this.input.slice(e,r).indexOf("\\")||(this.strict?this.reservedWordsStrict:this.reservedWords).test(i)&&(this.inAsync||"await"!==i||this.raiseRecoverable(e,"Cannot use keyword 'await' outside an async function"),this.raiseRecoverable(e,"The keyword '"+i+"' is reserved"))},Ke.parseIdent=function(t){var e=this.parseIdentNode();return this.next(!!t),this.finishNode(e,"Identifier"),t||(this.checkUnreserved(e),"await"!==e.name||this.awaitIdentPos||(this.awaitIdentPos=e.start)),e},Ke.parseIdentNode=function(){var t=this.startNode();return this.type===he.name?t.name=this.value:this.type.keyword?(t.name=this.type.keyword,"class"!==t.name&&"function"!==t.name||this.lastTokEnd===this.lastTokStart+1&&46===this.input.charCodeAt(this.lastTokStart)||this.context.pop()):this.unexpected(),t},Ke.parsePrivateIdent=function(){var t=this.startNode();return this.type===he.privateId?t.name=this.value:this.unexpected(),this.next(),this.finishNode(t,"PrivateIdentifier"),this.options.checkPrivateFields&&(0===this.privateNameStack.length?this.raise(t.start,"Private field '#"+t.name+"' must be declared in an enclosing class"):this.privateNameStack[this.privateNameStack.length-1].used.push(t)),t},Ke.parseYield=function(t){this.yieldPos||(this.yieldPos=this.start);var e=this.startNode();return this.next(),this.type===he.semi||this.canInsertSemicolon()||this.type!==he.star&&!this.type.startsExpr?(e.delegate=!1,e.argument=null):(e.delegate=this.eat(he.star),e.argument=this.parseMaybeAssign(t)),this.finishNode(e,"YieldExpression")},Ke.parseAwait=function(t){this.awaitPos||(this.awaitPos=this.start);var e=this.startNode();return this.next(),e.argument=this.parseMaybeUnary(null,!0,!1,t),this.finishNode(e,"AwaitExpression")};var Xe=Ne.prototype;Xe.raise=function(t,e){var r=Ce(this.input,t);e+=" ("+r.line+":"+r.column+")";var i=new SyntaxError(e);throw i.pos=t,i.loc=r,i.raisedAt=this.pos,i},Xe.raiseRecoverable=Xe.raise,Xe.curPosition=function(){if(this.options.locations)return new Te(this.curLine,this.pos-this.lineStart)};var Ze=Ne.prototype,$e=function(t){this.flags=t,this.var=[],this.lexical=[],this.functions=[],this.inClassFieldInit=!1};Ze.enterScope=function(t){this.scopeStack.push(new $e(t))},Ze.exitScope=function(){this.scopeStack.pop()},Ze.treatFunctionsAsVarInScope=function(t){return 2&t.flags||!this.inModule&&1&t.flags},Ze.declareName=function(t,e,r){var i=!1;if(2===e){var n=this.currentScope();i=n.lexical.indexOf(t)>-1||n.functions.indexOf(t)>-1||n.var.indexOf(t)>-1,n.lexical.push(t),this.inModule&&1&n.flags&&delete this.undefinedExports[t]}else if(4===e)this.currentScope().lexical.push(t);else if(3===e){var s=this.currentScope();i=this.treatFunctionsAsVar?s.lexical.indexOf(t)>-1:s.lexical.indexOf(t)>-1||s.var.indexOf(t)>-1,s.functions.push(t)}else for(var o=this.scopeStack.length-1;o>=0;--o){var a=this.scopeStack[o];if(a.lexical.indexOf(t)>-1&&!(32&a.flags&&a.lexical[0]===t)||!this.treatFunctionsAsVarInScope(a)&&a.functions.indexOf(t)>-1){i=!0;break}if(a.var.push(t),this.inModule&&1&a.flags&&delete this.undefinedExports[t],259&a.flags)break}i&&this.raiseRecoverable(r,"Identifier '"+t+"' has already been declared")},Ze.checkLocalExport=function(t){-1===this.scopeStack[0].lexical.indexOf(t.name)&&-1===this.scopeStack[0].var.indexOf(t.name)&&(this.undefinedExports[t.name]=t)},Ze.currentScope=function(){return this.scopeStack[this.scopeStack.length-1]},Ze.currentVarScope=function(){for(var t=this.scopeStack.length-1;;t--){var e=this.scopeStack[t];if(259&e.flags)return e}},Ze.currentThisScope=function(){for(var t=this.scopeStack.length-1;;t--){var e=this.scopeStack[t];if(259&e.flags&&!(16&e.flags))return e}};var tr=function(t,e,r){this.type="",this.start=e,this.end=0,t.options.locations&&(this.loc=new xe(t,r)),t.options.directSourceFile&&(this.sourceFile=t.options.directSourceFile),t.options.ranges&&(this.range=[e,0])},er=Ne.prototype;function rr(t,e,r,i){return t.type=e,t.end=r,this.options.locations&&(t.loc.end=i),this.options.ranges&&(t.range[1]=r),t}er.startNode=function(){return new tr(this,this.start,this.startLoc)},er.startNodeAt=function(t,e){return new tr(this,t,e)},er.finishNode=function(t,e){return rr.call(this,t,e,this.lastTokEnd,this.lastTokEndLoc)},er.finishNodeAt=function(t,e,r,i){return rr.call(this,t,e,r,i)},er.copyNode=function(t){var e=new tr(this,t.start,this.startLoc);for(var r in t)e[r]=t[r];return e};var ir="ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS",nr=ir+" Extended_Pictographic",sr=nr+" EBase EComp EMod EPres ExtPict",or={9:ir,10:nr,11:nr,12:sr,13:sr,14:"ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS Extended_Pictographic EBase EComp EMod EPres ExtPict"},ar={9:"",10:"",11:"",12:"",13:"",14:"Basic_Emoji Emoji_Keycap_Sequence RGI_Emoji_Modifier_Sequence RGI_Emoji_Flag_Sequence RGI_Emoji_Tag_Sequence RGI_Emoji_ZWJ_Sequence RGI_Emoji"},cr="Cased_Letter LC Close_Punctuation Pe Connector_Punctuation Pc Control Cc cntrl Currency_Symbol Sc Dash_Punctuation Pd Decimal_Number Nd digit Enclosing_Mark Me Final_Punctuation Pf Format Cf Initial_Punctuation Pi Letter L Letter_Number Nl Line_Separator Zl Lowercase_Letter Ll Mark M Combining_Mark Math_Symbol Sm Modifier_Letter Lm Modifier_Symbol Sk Nonspacing_Mark Mn Number N Open_Punctuation Ps Other C Other_Letter Lo Other_Number No Other_Punctuation Po Other_Symbol So Paragraph_Separator Zp Private_Use Co Punctuation P punct Separator Z Space_Separator Zs Spacing_Mark Mc Surrogate Cs Symbol S Titlecase_Letter Lt Unassigned Cn Uppercase_Letter Lu",lr="Adlam Adlm Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb",hr=lr+" Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd",ur=hr+" Elymaic Elym Nandinagari Nand Nyiakeng_Puachue_Hmong Hmnp Wancho Wcho",pr=ur+" Chorasmian Chrs Diak Dives_Akuru Khitan_Small_Script Kits Yezi Yezidi",dr={9:lr,10:hr,11:ur,12:pr,13:pr+" Cypro_Minoan Cpmn Old_Uyghur Ougr Tangsa Tnsa Toto Vithkuqi Vith",14:"Adlam Adlm Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd Elymaic Elym Nandinagari Nand Nyiakeng_Puachue_Hmong Hmnp Wancho Wcho Chorasmian Chrs Diak Dives_Akuru Khitan_Small_Script Kits Yezi Yezidi Cypro_Minoan Cpmn Old_Uyghur Ougr Tangsa Tnsa Toto Vithkuqi Vith Hrkt Katakana_Or_Hiragana Kawi Nag_Mundari Nagm Unknown Zzzz"},fr={};function gr(t){var e=fr[t]={binary:_e(or[t]+" "+cr),binaryOfStrings:_e(ar[t]),nonBinary:{General_Category:_e(cr),Script:_e(dr[t])}};e.nonBinary.Script_Extensions=e.nonBinary.Script,e.nonBinary.gc=e.nonBinary.General_Category,e.nonBinary.sc=e.nonBinary.Script,e.nonBinary.scx=e.nonBinary.Script_Extensions}for(var yr=0,mr=[9,10,11,12,13,14];yr<mr.length;yr+=1)gr(mr[yr]);var wr=Ne.prototype,br=function(t){this.parser=t,this.validFlags="gim"+(t.options.ecmaVersion>=6?"uy":"")+(t.options.ecmaVersion>=9?"s":"")+(t.options.ecmaVersion>=13?"d":"")+(t.options.ecmaVersion>=15?"v":""),this.unicodeProperties=fr[t.options.ecmaVersion>=14?14:t.options.ecmaVersion],this.source="",this.flags="",this.start=0,this.switchU=!1,this.switchV=!1,this.switchN=!1,this.pos=0,this.lastIntValue=0,this.lastStringValue="",this.lastAssertionIsQuantifiable=!1,this.numCapturingParens=0,this.maxBackReference=0,this.groupNames=[],this.backReferenceNames=[]};function Ar(t){return 36===t||t>=40&&t<=43||46===t||63===t||t>=91&&t<=94||t>=123&&t<=125}function vr(t){return t>=65&&t<=90||t>=97&&t<=122}function _r(t){return vr(t)||95===t}function Er(t){return _r(t)||Sr(t)}function Sr(t){return t>=48&&t<=57}function Tr(t){return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}function xr(t){return t>=65&&t<=70?t-65+10:t>=97&&t<=102?t-97+10:t-48}function Cr(t){return t>=48&&t<=55}br.prototype.reset=function(t,e,r){var i=-1!==r.indexOf("v"),n=-1!==r.indexOf("u");this.start=0|t,this.source=e+"",this.flags=r,i&&this.parser.options.ecmaVersion>=15?(this.switchU=!0,this.switchV=!0,this.switchN=!0):(this.switchU=n&&this.parser.options.ecmaVersion>=6,this.switchV=!1,this.switchN=n&&this.parser.options.ecmaVersion>=9)},br.prototype.raise=function(t){this.parser.raiseRecoverable(this.start,"Invalid regular expression: /"+this.source+"/: "+t)},br.prototype.at=function(t,e){void 0===e&&(e=!1);var r=this.source,i=r.length;if(t>=i)return-1;var n=r.charCodeAt(t);if(!e&&!this.switchU||n<=55295||n>=57344||t+1>=i)return n;var s=r.charCodeAt(t+1);return s>=56320&&s<=57343?(n<<10)+s-56613888:n},br.prototype.nextIndex=function(t,e){void 0===e&&(e=!1);var r=this.source,i=r.length;if(t>=i)return i;var n,s=r.charCodeAt(t);return!e&&!this.switchU||s<=55295||s>=57344||t+1>=i||(n=r.charCodeAt(t+1))<56320||n>57343?t+1:t+2},br.prototype.current=function(t){return void 0===t&&(t=!1),this.at(this.pos,t)},br.prototype.lookahead=function(t){return void 0===t&&(t=!1),this.at(this.nextIndex(this.pos,t),t)},br.prototype.advance=function(t){void 0===t&&(t=!1),this.pos=this.nextIndex(this.pos,t)},br.prototype.eat=function(t,e){return void 0===e&&(e=!1),this.current(e)===t&&(this.advance(e),!0)},br.prototype.eatChars=function(t,e){void 0===e&&(e=!1);for(var r=this.pos,i=0,n=t;i<n.length;i+=1){var s=n[i],o=this.at(r,e);if(-1===o||o!==s)return!1;r=this.nextIndex(r,e)}return this.pos=r,!0},wr.validateRegExpFlags=function(t){for(var e=t.validFlags,r=t.flags,i=!1,n=!1,s=0;s<r.length;s++){var o=r.charAt(s);-1===e.indexOf(o)&&this.raise(t.start,"Invalid regular expression flag"),r.indexOf(o,s+1)>-1&&this.raise(t.start,"Duplicate regular expression flag"),"u"===o&&(i=!0),"v"===o&&(n=!0)}this.options.ecmaVersion>=15&&i&&n&&this.raise(t.start,"Invalid regular expression flag")},wr.validateRegExpPattern=function(t){this.regexp_pattern(t),!t.switchN&&this.options.ecmaVersion>=9&&t.groupNames.length>0&&(t.switchN=!0,this.regexp_pattern(t))},wr.regexp_pattern=function(t){t.pos=0,t.lastIntValue=0,t.lastStringValue="",t.lastAssertionIsQuantifiable=!1,t.numCapturingParens=0,t.maxBackReference=0,t.groupNames.length=0,t.backReferenceNames.length=0,this.regexp_disjunction(t),t.pos!==t.source.length&&(t.eat(41)&&t.raise("Unmatched ')'"),(t.eat(93)||t.eat(125))&&t.raise("Lone quantifier brackets")),t.maxBackReference>t.numCapturingParens&&t.raise("Invalid escape");for(var e=0,r=t.backReferenceNames;e<r.length;e+=1){var i=r[e];-1===t.groupNames.indexOf(i)&&t.raise("Invalid named capture referenced")}},wr.regexp_disjunction=function(t){for(this.regexp_alternative(t);t.eat(124);)this.regexp_alternative(t);this.regexp_eatQuantifier(t,!0)&&t.raise("Nothing to repeat"),t.eat(123)&&t.raise("Lone quantifier brackets")},wr.regexp_alternative=function(t){for(;t.pos<t.source.length&&this.regexp_eatTerm(t););},wr.regexp_eatTerm=function(t){return this.regexp_eatAssertion(t)?(t.lastAssertionIsQuantifiable&&this.regexp_eatQuantifier(t)&&t.switchU&&t.raise("Invalid quantifier"),!0):!!(t.switchU?this.regexp_eatAtom(t):this.regexp_eatExtendedAtom(t))&&(this.regexp_eatQuantifier(t),!0)},wr.regexp_eatAssertion=function(t){var e=t.pos;if(t.lastAssertionIsQuantifiable=!1,t.eat(94)||t.eat(36))return!0;if(t.eat(92)){if(t.eat(66)||t.eat(98))return!0;t.pos=e}if(t.eat(40)&&t.eat(63)){var r=!1;if(this.options.ecmaVersion>=9&&(r=t.eat(60)),t.eat(61)||t.eat(33))return this.regexp_disjunction(t),t.eat(41)||t.raise("Unterminated group"),t.lastAssertionIsQuantifiable=!r,!0}return t.pos=e,!1},wr.regexp_eatQuantifier=function(t,e){return void 0===e&&(e=!1),!!this.regexp_eatQuantifierPrefix(t,e)&&(t.eat(63),!0)},wr.regexp_eatQuantifierPrefix=function(t,e){return t.eat(42)||t.eat(43)||t.eat(63)||this.regexp_eatBracedQuantifier(t,e)},wr.regexp_eatBracedQuantifier=function(t,e){var r=t.pos;if(t.eat(123)){var i=0,n=-1;if(this.regexp_eatDecimalDigits(t)&&(i=t.lastIntValue,t.eat(44)&&this.regexp_eatDecimalDigits(t)&&(n=t.lastIntValue),t.eat(125)))return-1!==n&&n<i&&!e&&t.raise("numbers out of order in {} quantifier"),!0;t.switchU&&!e&&t.raise("Incomplete quantifier"),t.pos=r}return!1},wr.regexp_eatAtom=function(t){return this.regexp_eatPatternCharacters(t)||t.eat(46)||this.regexp_eatReverseSolidusAtomEscape(t)||this.regexp_eatCharacterClass(t)||this.regexp_eatUncapturingGroup(t)||this.regexp_eatCapturingGroup(t)},wr.regexp_eatReverseSolidusAtomEscape=function(t){var e=t.pos;if(t.eat(92)){if(this.regexp_eatAtomEscape(t))return!0;t.pos=e}return!1},wr.regexp_eatUncapturingGroup=function(t){var e=t.pos;if(t.eat(40)){if(t.eat(63)&&t.eat(58)){if(this.regexp_disjunction(t),t.eat(41))return!0;t.raise("Unterminated group")}t.pos=e}return!1},wr.regexp_eatCapturingGroup=function(t){if(t.eat(40)){if(this.options.ecmaVersion>=9?this.regexp_groupSpecifier(t):63===t.current()&&t.raise("Invalid group"),this.regexp_disjunction(t),t.eat(41))return t.numCapturingParens+=1,!0;t.raise("Unterminated group")}return!1},wr.regexp_eatExtendedAtom=function(t){return t.eat(46)||this.regexp_eatReverseSolidusAtomEscape(t)||this.regexp_eatCharacterClass(t)||this.regexp_eatUncapturingGroup(t)||this.regexp_eatCapturingGroup(t)||this.regexp_eatInvalidBracedQuantifier(t)||this.regexp_eatExtendedPatternCharacter(t)},wr.regexp_eatInvalidBracedQuantifier=function(t){return this.regexp_eatBracedQuantifier(t,!0)&&t.raise("Nothing to repeat"),!1},wr.regexp_eatSyntaxCharacter=function(t){var e=t.current();return!!Ar(e)&&(t.lastIntValue=e,t.advance(),!0)},wr.regexp_eatPatternCharacters=function(t){for(var e=t.pos,r=0;-1!==(r=t.current())&&!Ar(r);)t.advance();return t.pos!==e},wr.regexp_eatExtendedPatternCharacter=function(t){var e=t.current();return!(-1===e||36===e||e>=40&&e<=43||46===e||63===e||91===e||94===e||124===e||(t.advance(),0))},wr.regexp_groupSpecifier=function(t){if(t.eat(63)){if(this.regexp_eatGroupName(t))return-1!==t.groupNames.indexOf(t.lastStringValue)&&t.raise("Duplicate capture group name"),void t.groupNames.push(t.lastStringValue);t.raise("Invalid group")}},wr.regexp_eatGroupName=function(t){if(t.lastStringValue="",t.eat(60)){if(this.regexp_eatRegExpIdentifierName(t)&&t.eat(62))return!0;t.raise("Invalid capture group name")}return!1},wr.regexp_eatRegExpIdentifierName=function(t){if(t.lastStringValue="",this.regexp_eatRegExpIdentifierStart(t)){for(t.lastStringValue+=Ee(t.lastIntValue);this.regexp_eatRegExpIdentifierPart(t);)t.lastStringValue+=Ee(t.lastIntValue);return!0}return!1},wr.regexp_eatRegExpIdentifierStart=function(t){var e=t.pos,r=this.options.ecmaVersion>=11,i=t.current(r);return t.advance(r),92===i&&this.regexp_eatRegExpUnicodeEscapeSequence(t,r)&&(i=t.lastIntValue),function(t){return re(t,!0)||36===t||95===t}(i)?(t.lastIntValue=i,!0):(t.pos=e,!1)},wr.regexp_eatRegExpIdentifierPart=function(t){var e=t.pos,r=this.options.ecmaVersion>=11,i=t.current(r);return t.advance(r),92===i&&this.regexp_eatRegExpUnicodeEscapeSequence(t,r)&&(i=t.lastIntValue),function(t){return ie(t,!0)||36===t||95===t||8204===t||8205===t}(i)?(t.lastIntValue=i,!0):(t.pos=e,!1)},wr.regexp_eatAtomEscape=function(t){return!!(this.regexp_eatBackReference(t)||this.regexp_eatCharacterClassEscape(t)||this.regexp_eatCharacterEscape(t)||t.switchN&&this.regexp_eatKGroupName(t))||(t.switchU&&(99===t.current()&&t.raise("Invalid unicode escape"),t.raise("Invalid escape")),!1)},wr.regexp_eatBackReference=function(t){var e=t.pos;if(this.regexp_eatDecimalEscape(t)){var r=t.lastIntValue;if(t.switchU)return r>t.maxBackReference&&(t.maxBackReference=r),!0;if(r<=t.numCapturingParens)return!0;t.pos=e}return!1},wr.regexp_eatKGroupName=function(t){if(t.eat(107)){if(this.regexp_eatGroupName(t))return t.backReferenceNames.push(t.lastStringValue),!0;t.raise("Invalid named reference")}return!1},wr.regexp_eatCharacterEscape=function(t){return this.regexp_eatControlEscape(t)||this.regexp_eatCControlLetter(t)||this.regexp_eatZero(t)||this.regexp_eatHexEscapeSequence(t)||this.regexp_eatRegExpUnicodeEscapeSequence(t,!1)||!t.switchU&&this.regexp_eatLegacyOctalEscapeSequence(t)||this.regexp_eatIdentityEscape(t)},wr.regexp_eatCControlLetter=function(t){var e=t.pos;if(t.eat(99)){if(this.regexp_eatControlLetter(t))return!0;t.pos=e}return!1},wr.regexp_eatZero=function(t){return 48===t.current()&&!Sr(t.lookahead())&&(t.lastIntValue=0,t.advance(),!0)},wr.regexp_eatControlEscape=function(t){var e=t.current();return 116===e?(t.lastIntValue=9,t.advance(),!0):110===e?(t.lastIntValue=10,t.advance(),!0):118===e?(t.lastIntValue=11,t.advance(),!0):102===e?(t.lastIntValue=12,t.advance(),!0):114===e&&(t.lastIntValue=13,t.advance(),!0)},wr.regexp_eatControlLetter=function(t){var e=t.current();return!!vr(e)&&(t.lastIntValue=e%32,t.advance(),!0)},wr.regexp_eatRegExpUnicodeEscapeSequence=function(t,e){void 0===e&&(e=!1);var r,i=t.pos,n=e||t.switchU;if(t.eat(117)){if(this.regexp_eatFixedHexDigits(t,4)){var s=t.lastIntValue;if(n&&s>=55296&&s<=56319){var o=t.pos;if(t.eat(92)&&t.eat(117)&&this.regexp_eatFixedHexDigits(t,4)){var a=t.lastIntValue;if(a>=56320&&a<=57343)return t.lastIntValue=1024*(s-55296)+(a-56320)+65536,!0}t.pos=o,t.lastIntValue=s}return!0}if(n&&t.eat(123)&&this.regexp_eatHexDigits(t)&&t.eat(125)&&(r=t.lastIntValue)>=0&&r<=1114111)return!0;n&&t.raise("Invalid unicode escape"),t.pos=i}return!1},wr.regexp_eatIdentityEscape=function(t){if(t.switchU)return!!this.regexp_eatSyntaxCharacter(t)||!!t.eat(47)&&(t.lastIntValue=47,!0);var e=t.current();return!(99===e||t.switchN&&107===e||(t.lastIntValue=e,t.advance(),0))},wr.regexp_eatDecimalEscape=function(t){t.lastIntValue=0;var e=t.current();if(e>=49&&e<=57){do{t.lastIntValue=10*t.lastIntValue+(e-48),t.advance()}while((e=t.current())>=48&&e<=57);return!0}return!1},wr.regexp_eatCharacterClassEscape=function(t){var e=t.current();if(function(t){return 100===t||68===t||115===t||83===t||119===t||87===t}(e))return t.lastIntValue=-1,t.advance(),1;var r=!1;if(t.switchU&&this.options.ecmaVersion>=9&&((r=80===e)||112===e)){var i;if(t.lastIntValue=-1,t.advance(),t.eat(123)&&(i=this.regexp_eatUnicodePropertyValueExpression(t))&&t.eat(125))return r&&2===i&&t.raise("Invalid property name"),i;t.raise("Invalid property name")}return 0},wr.regexp_eatUnicodePropertyValueExpression=function(t){var e=t.pos;if(this.regexp_eatUnicodePropertyName(t)&&t.eat(61)){var r=t.lastStringValue;if(this.regexp_eatUnicodePropertyValue(t)){var i=t.lastStringValue;return this.regexp_validateUnicodePropertyNameAndValue(t,r,i),1}}if(t.pos=e,this.regexp_eatLoneUnicodePropertyNameOrValue(t)){var n=t.lastStringValue;return this.regexp_validateUnicodePropertyNameOrValue(t,n)}return 0},wr.regexp_validateUnicodePropertyNameAndValue=function(t,e,r){Ae(t.unicodeProperties.nonBinary,e)||t.raise("Invalid property name"),t.unicodeProperties.nonBinary[e].test(r)||t.raise("Invalid property value")},wr.regexp_validateUnicodePropertyNameOrValue=function(t,e){return t.unicodeProperties.binary.test(e)?1:t.switchV&&t.unicodeProperties.binaryOfStrings.test(e)?2:void t.raise("Invalid property name")},wr.regexp_eatUnicodePropertyName=function(t){var e=0;for(t.lastStringValue="";_r(e=t.current());)t.lastStringValue+=Ee(e),t.advance();return""!==t.lastStringValue},wr.regexp_eatUnicodePropertyValue=function(t){var e=0;for(t.lastStringValue="";Er(e=t.current());)t.lastStringValue+=Ee(e),t.advance();return""!==t.lastStringValue},wr.regexp_eatLoneUnicodePropertyNameOrValue=function(t){return this.regexp_eatUnicodePropertyValue(t)},wr.regexp_eatCharacterClass=function(t){if(t.eat(91)){var e=t.eat(94),r=this.regexp_classContents(t);return t.eat(93)||t.raise("Unterminated character class"),e&&2===r&&t.raise("Negated character class may contain strings"),!0}return!1},wr.regexp_classContents=function(t){return 93===t.current()?1:t.switchV?this.regexp_classSetExpression(t):(this.regexp_nonEmptyClassRanges(t),1)},wr.regexp_nonEmptyClassRanges=function(t){for(;this.regexp_eatClassAtom(t);){var e=t.lastIntValue;if(t.eat(45)&&this.regexp_eatClassAtom(t)){var r=t.lastIntValue;!t.switchU||-1!==e&&-1!==r||t.raise("Invalid character class"),-1!==e&&-1!==r&&e>r&&t.raise("Range out of order in character class")}}},wr.regexp_eatClassAtom=function(t){var e=t.pos;if(t.eat(92)){if(this.regexp_eatClassEscape(t))return!0;if(t.switchU){var r=t.current();(99===r||Cr(r))&&t.raise("Invalid class escape"),t.raise("Invalid escape")}t.pos=e}var i=t.current();return 93!==i&&(t.lastIntValue=i,t.advance(),!0)},wr.regexp_eatClassEscape=function(t){var e=t.pos;if(t.eat(98))return t.lastIntValue=8,!0;if(t.switchU&&t.eat(45))return t.lastIntValue=45,!0;if(!t.switchU&&t.eat(99)){if(this.regexp_eatClassControlLetter(t))return!0;t.pos=e}return this.regexp_eatCharacterClassEscape(t)||this.regexp_eatCharacterEscape(t)},wr.regexp_classSetExpression=function(t){var e,r=1;if(this.regexp_eatClassSetRange(t));else if(e=this.regexp_eatClassSetOperand(t)){2===e&&(r=2);for(var i=t.pos;t.eatChars([38,38]);)38!==t.current()&&(e=this.regexp_eatClassSetOperand(t))?2!==e&&(r=1):t.raise("Invalid character in character class");if(i!==t.pos)return r;for(;t.eatChars([45,45]);)this.regexp_eatClassSetOperand(t)||t.raise("Invalid character in character class");if(i!==t.pos)return r}else t.raise("Invalid character in character class");for(;;)if(!this.regexp_eatClassSetRange(t)){if(!(e=this.regexp_eatClassSetOperand(t)))return r;2===e&&(r=2)}},wr.regexp_eatClassSetRange=function(t){var e=t.pos;if(this.regexp_eatClassSetCharacter(t)){var r=t.lastIntValue;if(t.eat(45)&&this.regexp_eatClassSetCharacter(t)){var i=t.lastIntValue;return-1!==r&&-1!==i&&r>i&&t.raise("Range out of order in character class"),!0}t.pos=e}return!1},wr.regexp_eatClassSetOperand=function(t){return this.regexp_eatClassSetCharacter(t)?1:this.regexp_eatClassStringDisjunction(t)||this.regexp_eatNestedClass(t)},wr.regexp_eatNestedClass=function(t){var e=t.pos;if(t.eat(91)){var r=t.eat(94),i=this.regexp_classContents(t);if(t.eat(93))return r&&2===i&&t.raise("Negated character class may contain strings"),i;t.pos=e}if(t.eat(92)){var n=this.regexp_eatCharacterClassEscape(t);if(n)return n;t.pos=e}return null},wr.regexp_eatClassStringDisjunction=function(t){var e=t.pos;if(t.eatChars([92,113])){if(t.eat(123)){var r=this.regexp_classStringDisjunctionContents(t);if(t.eat(125))return r}else t.raise("Invalid escape");t.pos=e}return null},wr.regexp_classStringDisjunctionContents=function(t){for(var e=this.regexp_classString(t);t.eat(124);)2===this.regexp_classString(t)&&(e=2);return e},wr.regexp_classString=function(t){for(var e=0;this.regexp_eatClassSetCharacter(t);)e++;return 1===e?1:2},wr.regexp_eatClassSetCharacter=function(t){var e=t.pos;if(t.eat(92))return!(!this.regexp_eatCharacterEscape(t)&&!this.regexp_eatClassSetReservedPunctuator(t)&&(t.eat(98)?(t.lastIntValue=8,0):(t.pos=e,1)));var r=t.current();return!(r<0||r===t.lookahead()&&function(t){return 33===t||t>=35&&t<=38||t>=42&&t<=44||46===t||t>=58&&t<=64||94===t||96===t||126===t}(r)||function(t){return 40===t||41===t||45===t||47===t||t>=91&&t<=93||t>=123&&t<=125}(r)||(t.advance(),t.lastIntValue=r,0))},wr.regexp_eatClassSetReservedPunctuator=function(t){var e=t.current();return!!function(t){return 33===t||35===t||37===t||38===t||44===t||45===t||t>=58&&t<=62||64===t||96===t||126===t}(e)&&(t.lastIntValue=e,t.advance(),!0)},wr.regexp_eatClassControlLetter=function(t){var e=t.current();return!(!Sr(e)&&95!==e||(t.lastIntValue=e%32,t.advance(),0))},wr.regexp_eatHexEscapeSequence=function(t){var e=t.pos;if(t.eat(120)){if(this.regexp_eatFixedHexDigits(t,2))return!0;t.switchU&&t.raise("Invalid escape"),t.pos=e}return!1},wr.regexp_eatDecimalDigits=function(t){var e=t.pos,r=0;for(t.lastIntValue=0;Sr(r=t.current());)t.lastIntValue=10*t.lastIntValue+(r-48),t.advance();return t.pos!==e},wr.regexp_eatHexDigits=function(t){var e=t.pos,r=0;for(t.lastIntValue=0;Tr(r=t.current());)t.lastIntValue=16*t.lastIntValue+xr(r),t.advance();return t.pos!==e},wr.regexp_eatLegacyOctalEscapeSequence=function(t){if(this.regexp_eatOctalDigit(t)){var e=t.lastIntValue;if(this.regexp_eatOctalDigit(t)){var r=t.lastIntValue;e<=3&&this.regexp_eatOctalDigit(t)?t.lastIntValue=64*e+8*r+t.lastIntValue:t.lastIntValue=8*e+r}else t.lastIntValue=e;return!0}return!1},wr.regexp_eatOctalDigit=function(t){var e=t.current();return Cr(e)?(t.lastIntValue=e-48,t.advance(),!0):(t.lastIntValue=0,!1)},wr.regexp_eatFixedHexDigits=function(t,e){var r=t.pos;t.lastIntValue=0;for(var i=0;i<e;++i){var n=t.current();if(!Tr(n))return t.pos=r,!1;t.lastIntValue=16*t.lastIntValue+xr(n),t.advance()}return!0};var Ir=function(t){this.type=t.type,this.value=t.value,this.start=t.start,this.end=t.end,t.options.locations&&(this.loc=new xe(t,t.startLoc,t.endLoc)),t.options.ranges&&(this.range=[t.start,t.end])},Rr=Ne.prototype;function kr(t){return"function"!=typeof BigInt?null:BigInt(t.replace(/_/g,""))}Rr.next=function(t){!t&&this.type.keyword&&this.containsEsc&&this.raiseRecoverable(this.start,"Escape sequence in keyword "+this.type.keyword),this.options.onToken&&this.options.onToken(new Ir(this)),this.lastTokEnd=this.end,this.lastTokStart=this.start,this.lastTokEndLoc=this.endLoc,this.lastTokStartLoc=this.startLoc,this.nextToken()},Rr.getToken=function(){return this.next(),new Ir(this)},"undefined"!=typeof Symbol&&(Rr[Symbol.iterator]=function(){var t=this;return{next:function(){var e=t.getToken();return{done:e.type===he.eof,value:e}}}}),Rr.nextToken=function(){var t=this.curContext();return t&&t.preserveSpace||this.skipSpace(),this.start=this.pos,this.options.locations&&(this.startLoc=this.curPosition()),this.pos>=this.input.length?this.finishToken(he.eof):t.override?t.override(this):void this.readToken(this.fullCharCodeAtPos())},Rr.readToken=function(t){return re(t,this.options.ecmaVersion>=6)||92===t?this.readWord():this.getTokenFromCode(t)},Rr.fullCharCodeAtPos=function(){var t=this.input.charCodeAt(this.pos);if(t<=55295||t>=56320)return t;var e=this.input.charCodeAt(this.pos+1);return e<=56319||e>=57344?t:(t<<10)+e-56613888},Rr.skipBlockComment=function(){var t=this.options.onComment&&this.curPosition(),e=this.pos,r=this.input.indexOf("*/",this.pos+=2);if(-1===r&&this.raise(this.pos-2,"Unterminated comment"),this.pos=r+2,this.options.locations)for(var i=void 0,n=e;(i=fe(this.input,n,this.pos))>-1;)++this.curLine,n=this.lineStart=i;this.options.onComment&&this.options.onComment(!0,this.input.slice(e+2,r),e,this.pos,t,this.curPosition())},Rr.skipLineComment=function(t){for(var e=this.pos,r=this.options.onComment&&this.curPosition(),i=this.input.charCodeAt(this.pos+=t);this.pos<this.input.length&&!de(i);)i=this.input.charCodeAt(++this.pos);this.options.onComment&&this.options.onComment(!1,this.input.slice(e+t,this.pos),e,this.pos,r,this.curPosition())},Rr.skipSpace=function(){t:for(;this.pos<this.input.length;){var t=this.input.charCodeAt(this.pos);switch(t){case 32:case 160:++this.pos;break;case 13:10===this.input.charCodeAt(this.pos+1)&&++this.pos;case 10:case 8232:case 8233:++this.pos,this.options.locations&&(++this.curLine,this.lineStart=this.pos);break;case 47:switch(this.input.charCodeAt(this.pos+1)){case 42:this.skipBlockComment();break;case 47:this.skipLineComment(2);break;default:break t}break;default:if(!(t>8&&t<14||t>=5760&&ge.test(String.fromCharCode(t))))break t;++this.pos}}},Rr.finishToken=function(t,e){this.end=this.pos,this.options.locations&&(this.endLoc=this.curPosition());var r=this.type;this.type=t,this.value=e,this.updateContext(r)},Rr.readToken_dot=function(){var t=this.input.charCodeAt(this.pos+1);if(t>=48&&t<=57)return this.readNumber(!0);var e=this.input.charCodeAt(this.pos+2);return this.options.ecmaVersion>=6&&46===t&&46===e?(this.pos+=3,this.finishToken(he.ellipsis)):(++this.pos,this.finishToken(he.dot))},Rr.readToken_slash=function(){var t=this.input.charCodeAt(this.pos+1);return this.exprAllowed?(++this.pos,this.readRegexp()):61===t?this.finishOp(he.assign,2):this.finishOp(he.slash,1)},Rr.readToken_mult_modulo_exp=function(t){var e=this.input.charCodeAt(this.pos+1),r=1,i=42===t?he.star:he.modulo;return this.options.ecmaVersion>=7&&42===t&&42===e&&(++r,i=he.starstar,e=this.input.charCodeAt(this.pos+2)),61===e?this.finishOp(he.assign,r+1):this.finishOp(i,r)},Rr.readToken_pipe_amp=function(t){var e=this.input.charCodeAt(this.pos+1);return e===t?this.options.ecmaVersion>=12&&61===this.input.charCodeAt(this.pos+2)?this.finishOp(he.assign,3):this.finishOp(124===t?he.logicalOR:he.logicalAND,2):61===e?this.finishOp(he.assign,2):this.finishOp(124===t?he.bitwiseOR:he.bitwiseAND,1)},Rr.readToken_caret=function(){return 61===this.input.charCodeAt(this.pos+1)?this.finishOp(he.assign,2):this.finishOp(he.bitwiseXOR,1)},Rr.readToken_plus_min=function(t){var e=this.input.charCodeAt(this.pos+1);return e===t?45!==e||this.inModule||62!==this.input.charCodeAt(this.pos+2)||0!==this.lastTokEnd&&!ue.test(this.input.slice(this.lastTokEnd,this.pos))?this.finishOp(he.incDec,2):(this.skipLineComment(3),this.skipSpace(),this.nextToken()):61===e?this.finishOp(he.assign,2):this.finishOp(he.plusMin,1)},Rr.readToken_lt_gt=function(t){var e=this.input.charCodeAt(this.pos+1),r=1;return e===t?(r=62===t&&62===this.input.charCodeAt(this.pos+2)?3:2,61===this.input.charCodeAt(this.pos+r)?this.finishOp(he.assign,r+1):this.finishOp(he.bitShift,r)):33!==e||60!==t||this.inModule||45!==this.input.charCodeAt(this.pos+2)||45!==this.input.charCodeAt(this.pos+3)?(61===e&&(r=2),this.finishOp(he.relational,r)):(this.skipLineComment(4),this.skipSpace(),this.nextToken())},Rr.readToken_eq_excl=function(t){var e=this.input.charCodeAt(this.pos+1);return 61===e?this.finishOp(he.equality,61===this.input.charCodeAt(this.pos+2)?3:2):61===t&&62===e&&this.options.ecmaVersion>=6?(this.pos+=2,this.finishToken(he.arrow)):this.finishOp(61===t?he.eq:he.prefix,1)},Rr.readToken_question=function(){var t=this.options.ecmaVersion;if(t>=11){var e=this.input.charCodeAt(this.pos+1);if(46===e){var r=this.input.charCodeAt(this.pos+2);if(r<48||r>57)return this.finishOp(he.questionDot,2)}if(63===e)return t>=12&&61===this.input.charCodeAt(this.pos+2)?this.finishOp(he.assign,3):this.finishOp(he.coalesce,2)}return this.finishOp(he.question,1)},Rr.readToken_numberSign=function(){var t=35;if(this.options.ecmaVersion>=13&&(++this.pos,re(t=this.fullCharCodeAtPos(),!0)||92===t))return this.finishToken(he.privateId,this.readWord1());this.raise(this.pos,"Unexpected character '"+Ee(t)+"'")},Rr.getTokenFromCode=function(t){switch(t){case 46:return this.readToken_dot();case 40:return++this.pos,this.finishToken(he.parenL);case 41:return++this.pos,this.finishToken(he.parenR);case 59:return++this.pos,this.finishToken(he.semi);case 44:return++this.pos,this.finishToken(he.comma);case 91:return++this.pos,this.finishToken(he.bracketL);case 93:return++this.pos,this.finishToken(he.bracketR);case 123:return++this.pos,this.finishToken(he.braceL);case 125:return++this.pos,this.finishToken(he.braceR);case 58:return++this.pos,this.finishToken(he.colon);case 96:if(this.options.ecmaVersion<6)break;return++this.pos,this.finishToken(he.backQuote);case 48:var e=this.input.charCodeAt(this.pos+1);if(120===e||88===e)return this.readRadixNumber(16);if(this.options.ecmaVersion>=6){if(111===e||79===e)return this.readRadixNumber(8);if(98===e||66===e)return this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.readNumber(!1);case 34:case 39:return this.readString(t);case 47:return this.readToken_slash();case 37:case 42:return this.readToken_mult_modulo_exp(t);case 124:case 38:return this.readToken_pipe_amp(t);case 94:return this.readToken_caret();case 43:case 45:return this.readToken_plus_min(t);case 60:case 62:return this.readToken_lt_gt(t);case 61:case 33:return this.readToken_eq_excl(t);case 63:return this.readToken_question();case 126:return this.finishOp(he.prefix,1);case 35:return this.readToken_numberSign()}this.raise(this.pos,"Unexpected character '"+Ee(t)+"'")},Rr.finishOp=function(t,e){var r=this.input.slice(this.pos,this.pos+e);return this.pos+=e,this.finishToken(t,r)},Rr.readRegexp=function(){for(var t,e,r=this.pos;;){this.pos>=this.input.length&&this.raise(r,"Unterminated regular expression");var i=this.input.charAt(this.pos);if(ue.test(i)&&this.raise(r,"Unterminated regular expression"),t)t=!1;else{if("["===i)e=!0;else if("]"===i&&e)e=!1;else if("/"===i&&!e)break;t="\\"===i}++this.pos}var n=this.input.slice(r,this.pos);++this.pos;var s=this.pos,o=this.readWord1();this.containsEsc&&this.unexpected(s);var a=this.regexpState||(this.regexpState=new br(this));a.reset(r,n,o),this.validateRegExpFlags(a),this.validateRegExpPattern(a);var c=null;try{c=new RegExp(n,o)}catch(t){}return this.finishToken(he.regexp,{pattern:n,flags:o,value:c})},Rr.readInt=function(t,e,r){for(var i=this.options.ecmaVersion>=12&&void 0===e,n=r&&48===this.input.charCodeAt(this.pos),s=this.pos,o=0,a=0,c=0,l=null==e?1/0:e;c<l;++c,++this.pos){var h=this.input.charCodeAt(this.pos),u=void 0;if(i&&95===h)n&&this.raiseRecoverable(this.pos,"Numeric separator is not allowed in legacy octal numeric literals"),95===a&&this.raiseRecoverable(this.pos,"Numeric separator must be exactly one underscore"),0===c&&this.raiseRecoverable(this.pos,"Numeric separator is not allowed at the first of digits"),a=h;else{if((u=h>=97?h-97+10:h>=65?h-65+10:h>=48&&h<=57?h-48:1/0)>=t)break;a=h,o=o*t+u}}return i&&95===a&&this.raiseRecoverable(this.pos-1,"Numeric separator is not allowed at the last of digits"),this.pos===s||null!=e&&this.pos-s!==e?null:o},Rr.readRadixNumber=function(t){var e=this.pos;this.pos+=2;var r=this.readInt(t);return null==r&&this.raise(this.start+2,"Expected number in radix "+t),this.options.ecmaVersion>=11&&110===this.input.charCodeAt(this.pos)?(r=kr(this.input.slice(e,this.pos)),++this.pos):re(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(he.num,r)},Rr.readNumber=function(t){var e=this.pos;t||null!==this.readInt(10,void 0,!0)||this.raise(e,"Invalid number");var r=this.pos-e>=2&&48===this.input.charCodeAt(e);r&&this.strict&&this.raise(e,"Invalid number");var i=this.input.charCodeAt(this.pos);if(!r&&!t&&this.options.ecmaVersion>=11&&110===i){var n=kr(this.input.slice(e,this.pos));return++this.pos,re(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(he.num,n)}r&&/[89]/.test(this.input.slice(e,this.pos))&&(r=!1),46!==i||r||(++this.pos,this.readInt(10),i=this.input.charCodeAt(this.pos)),69!==i&&101!==i||r||(43!==(i=this.input.charCodeAt(++this.pos))&&45!==i||++this.pos,null===this.readInt(10)&&this.raise(e,"Invalid number")),re(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number");var s=function(t,e){return e?parseInt(t,8):parseFloat(t.replace(/_/g,""))}(this.input.slice(e,this.pos),r);return this.finishToken(he.num,s)},Rr.readCodePoint=function(){var t;if(123===this.input.charCodeAt(this.pos)){this.options.ecmaVersion<6&&this.unexpected();var e=++this.pos;t=this.readHexChar(this.input.indexOf("}",this.pos)-this.pos),++this.pos,t>1114111&&this.invalidStringToken(e,"Code point out of bounds")}else t=this.readHexChar(4);return t},Rr.readString=function(t){for(var e="",r=++this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated string constant");var i=this.input.charCodeAt(this.pos);if(i===t)break;92===i?(e+=this.input.slice(r,this.pos),e+=this.readEscapedChar(!1),r=this.pos):8232===i||8233===i?(this.options.ecmaVersion<10&&this.raise(this.start,"Unterminated string constant"),++this.pos,this.options.locations&&(this.curLine++,this.lineStart=this.pos)):(de(i)&&this.raise(this.start,"Unterminated string constant"),++this.pos)}return e+=this.input.slice(r,this.pos++),this.finishToken(he.string,e)};var Nr={};Rr.tryReadTemplateToken=function(){this.inTemplateElement=!0;try{this.readTmplToken()}catch(t){if(t!==Nr)throw t;this.readInvalidTemplateToken()}this.inTemplateElement=!1},Rr.invalidStringToken=function(t,e){if(this.inTemplateElement&&this.options.ecmaVersion>=9)throw Nr;this.raise(t,e)},Rr.readTmplToken=function(){for(var t="",e=this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated template");var r=this.input.charCodeAt(this.pos);if(96===r||36===r&&123===this.input.charCodeAt(this.pos+1))return this.pos!==this.start||this.type!==he.template&&this.type!==he.invalidTemplate?(t+=this.input.slice(e,this.pos),this.finishToken(he.template,t)):36===r?(this.pos+=2,this.finishToken(he.dollarBraceL)):(++this.pos,this.finishToken(he.backQuote));if(92===r)t+=this.input.slice(e,this.pos),t+=this.readEscapedChar(!0),e=this.pos;else if(de(r)){switch(t+=this.input.slice(e,this.pos),++this.pos,r){case 13:10===this.input.charCodeAt(this.pos)&&++this.pos;case 10:t+="\n";break;default:t+=String.fromCharCode(r)}this.options.locations&&(++this.curLine,this.lineStart=this.pos),e=this.pos}else++this.pos}},Rr.readInvalidTemplateToken=function(){for(;this.pos<this.input.length;this.pos++)switch(this.input[this.pos]){case"\\":++this.pos;break;case"$":if("{"!==this.input[this.pos+1])break;case"`":return this.finishToken(he.invalidTemplate,this.input.slice(this.start,this.pos))}this.raise(this.start,"Unterminated template")},Rr.readEscapedChar=function(t){var e=this.input.charCodeAt(++this.pos);switch(++this.pos,e){case 110:return"\n";case 114:return"\r";case 120:return String.fromCharCode(this.readHexChar(2));case 117:return Ee(this.readCodePoint());case 116:return"\t";case 98:return"\b";case 118:return"\v";case 102:return"\f";case 13:10===this.input.charCodeAt(this.pos)&&++this.pos;case 10:return this.options.locations&&(this.lineStart=this.pos,++this.curLine),"";case 56:case 57:if(this.strict&&this.invalidStringToken(this.pos-1,"Invalid escape sequence"),t){var r=this.pos-1;this.invalidStringToken(r,"Invalid escape sequence in template string")}default:if(e>=48&&e<=55){var i=this.input.substr(this.pos-1,3).match(/^[0-7]+/)[0],n=parseInt(i,8);return n>255&&(i=i.slice(0,-1),n=parseInt(i,8)),this.pos+=i.length-1,e=this.input.charCodeAt(this.pos),"0"===i&&56!==e&&57!==e||!this.strict&&!t||this.invalidStringToken(this.pos-1-i.length,t?"Octal literal in template string":"Octal literal in strict mode"),String.fromCharCode(n)}return de(e)?"":String.fromCharCode(e)}},Rr.readHexChar=function(t){var e=this.pos,r=this.readInt(16,t);return null===r&&this.invalidStringToken(e,"Bad character escape sequence"),r},Rr.readWord1=function(){this.containsEsc=!1;for(var t="",e=!0,r=this.pos,i=this.options.ecmaVersion>=6;this.pos<this.input.length;){var n=this.fullCharCodeAtPos();if(ie(n,i))this.pos+=n<=65535?1:2;else{if(92!==n)break;this.containsEsc=!0,t+=this.input.slice(r,this.pos);var s=this.pos;117!==this.input.charCodeAt(++this.pos)&&this.invalidStringToken(this.pos,"Expecting Unicode escape sequence \\uXXXX"),++this.pos;var o=this.readCodePoint();(e?re:ie)(o,i)||this.invalidStringToken(s,"Invalid Unicode escape"),t+=Ee(o),r=this.pos}e=!1}return t+this.input.slice(r,this.pos)},Rr.readWord=function(){var t=this.readWord1(),e=he.name;return this.keywords.test(t)&&(e=ce[t]),this.finishToken(e,t)},Ne.acorn={Parser:Ne,version:"8.10.0",defaultOptions:Ie,Position:Te,SourceLocation:xe,getLineInfo:Ce,Node:tr,TokenType:ne,tokTypes:he,keywordTypes:ce,TokContext:ze,tokContexts:qe,isIdentifierChar:ie,isIdentifierStart:re,Token:Ir,isNewLine:de,lineBreak:ue,lineBreakG:pe,nonASCIIwhitespace:ge};const Or=/^\s*?import\s*?[{"'*]/,Br=/^\s*?export\s*?({([\s\w,$\n]+?)}[\s;]*|default|class)\s+/m,Pr=/^\s*?import(?:['"\s]*(?:[\w*${}\s,]+from\s*)?['"\s]?['"\s])(?:.*?)['"\s]/,Dr=/(import(?:['"\s]*(?:[\w*${}\s,]+from\s*)?['"\s]?['"\s]))((?:https?|[./]).*?)(['"\s])/,Lr=["window","globalThis","self","document","location","top","parent","frames","opener"],Ur=Lr.map((t=>`(?:^|[^$.])\\b${t}\\b(?:$|[^$])`)).join("|"),Mr=new RegExp(`(${Ur})`),Fr=(()=>{const t="_____WB$wombat$check$this$function_____(this)",e="WB_wombat_runEval2((_______eval_arg, isGlobal) => { var ge = eval; return isGlobal ? ge(_______eval_arg) : eval(_______eval_arg); }).eval(this, (function() { return arguments })(),";function r(){return(e,r,i,n)=>function(t,e){let r=t.lastIndexOf('"',e);return r<0&&(r=t.indexOf('"',e)),r>0&&"\\"===t[r-1]}(n,i)?e:e.replace("this",t)}function i(t,e){return r=>r.replace(t,e)}return[[/(?:^|\s)\beval\s*\(/,(n=e,"eval",t=>{const e=t.indexOf("eval");return 0===e?n:t.slice(0,e)+n})],[/\([\w]+,\s*eval\)\(/,()=>" "+e],[/[=]\s*\beval\b(?![(:.$])/,i("eval","self.eval")],[/var\s+self/,i("var","let")],[/\.postMessage\b\(/,t=>".__WB_pmw(self)"+t],[/(?:^|[^$.+*/%^-])\s?\blocation\b\s*[=]\s*(?![\s\d=])/,("((self.__WB_check_loc && self.__WB_check_loc(location, arguments)) || {}).href = ",(t,e,r,i)=>{if(r>0){const e=i[r-1];if("."===e||"$"===e)return t}return t+"((self.__WB_check_loc && self.__WB_check_loc(location, arguments)) || {}).href = "})],[/\breturn\s+this\b\s*(?![\s\w.$])/,r()],[new RegExp(`[^$.]\\s?\\bthis\\b(?=(?:\\.(?:${Lr.join("|")})\\b))`),(e,r,i,n)=>{const s=n[i];return"\n"===s?e.replace("this",";"+t):"."!==s&&"$"!==s?e.replace("this",t):e}],[/[=,]\s*\bthis\b\s*(?![\s\w:.$])/,r()],[/\}(?:\s*\))?\s*\(this\)/,r()],[/[^|&][|&]{2}\s*this\b\s*(?![|\s&.$](?:[^|&]|$))/,r()],[/async\s+import\s*\(/,t=>t],[/[^$.]\bimport\s*\([^)]*\)\s*\{/,t=>t],[/[^$.]\bimport\s*\(/,("import","____wb_rewrite_import__",(t,e)=>{let r=t.replace("import","____wb_rewrite_import__");return r+=e.isModule?"import.meta.url, ":"null, ",r})]];var n})(),Hr=new Set([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]),jr="�";var Wr;!function(t){t[t.EOF=-1]="EOF",t[t.NULL=0]="NULL",t[t.TABULATION=9]="TABULATION",t[t.CARRIAGE_RETURN=13]="CARRIAGE_RETURN",t[t.LINE_FEED=10]="LINE_FEED",t[t.FORM_FEED=12]="FORM_FEED",t[t.SPACE=32]="SPACE",t[t.EXCLAMATION_MARK=33]="EXCLAMATION_MARK",t[t.QUOTATION_MARK=34]="QUOTATION_MARK",t[t.NUMBER_SIGN=35]="NUMBER_SIGN",t[t.AMPERSAND=38]="AMPERSAND",t[t.APOSTROPHE=39]="APOSTROPHE",t[t.HYPHEN_MINUS=45]="HYPHEN_MINUS",t[t.SOLIDUS=47]="SOLIDUS",t[t.DIGIT_0=48]="DIGIT_0",t[t.DIGIT_9=57]="DIGIT_9",t[t.SEMICOLON=59]="SEMICOLON",t[t.LESS_THAN_SIGN=60]="LESS_THAN_SIGN",t[t.EQUALS_SIGN=61]="EQUALS_SIGN",t[t.GREATER_THAN_SIGN=62]="GREATER_THAN_SIGN",t[t.QUESTION_MARK=63]="QUESTION_MARK",t[t.LATIN_CAPITAL_A=65]="LATIN_CAPITAL_A",t[t.LATIN_CAPITAL_F=70]="LATIN_CAPITAL_F",t[t.LATIN_CAPITAL_X=88]="LATIN_CAPITAL_X",t[t.LATIN_CAPITAL_Z=90]="LATIN_CAPITAL_Z",t[t.RIGHT_SQUARE_BRACKET=93]="RIGHT_SQUARE_BRACKET",t[t.GRAVE_ACCENT=96]="GRAVE_ACCENT",t[t.LATIN_SMALL_A=97]="LATIN_SMALL_A",t[t.LATIN_SMALL_F=102]="LATIN_SMALL_F",t[t.LATIN_SMALL_X=120]="LATIN_SMALL_X",t[t.LATIN_SMALL_Z=122]="LATIN_SMALL_Z",t[t.REPLACEMENT_CHARACTER=65533]="REPLACEMENT_CHARACTER"}(Wr=Wr||(Wr={}));const Vr="[CDATA[",Gr="doctype",zr="script";function qr(t){return t>=55296&&t<=57343}function Qr(t){return 32!==t&&10!==t&&13!==t&&9!==t&&12!==t&&t>=1&&t<=31||t>=127&&t<=159}function Kr(t){return t>=64976&&t<=65007||Hr.has(t)}var Yr,Jr;!function(t){t.controlCharacterInInputStream="control-character-in-input-stream",t.noncharacterInInputStream="noncharacter-in-input-stream",t.surrogateInInputStream="surrogate-in-input-stream",t.nonVoidHtmlElementStartTagWithTrailingSolidus="non-void-html-element-start-tag-with-trailing-solidus",t.endTagWithAttributes="end-tag-with-attributes",t.endTagWithTrailingSolidus="end-tag-with-trailing-solidus",t.unexpectedSolidusInTag="unexpected-solidus-in-tag",t.unexpectedNullCharacter="unexpected-null-character",t.unexpectedQuestionMarkInsteadOfTagName="unexpected-question-mark-instead-of-tag-name",t.invalidFirstCharacterOfTagName="invalid-first-character-of-tag-name",t.unexpectedEqualsSignBeforeAttributeName="unexpected-equals-sign-before-attribute-name",t.missingEndTagName="missing-end-tag-name",t.unexpectedCharacterInAttributeName="unexpected-character-in-attribute-name",t.unknownNamedCharacterReference="unknown-named-character-reference",t.missingSemicolonAfterCharacterReference="missing-semicolon-after-character-reference",t.unexpectedCharacterAfterDoctypeSystemIdentifier="unexpected-character-after-doctype-system-identifier",t.unexpectedCharacterInUnquotedAttributeValue="unexpected-character-in-unquoted-attribute-value",t.eofBeforeTagName="eof-before-tag-name",t.eofInTag="eof-in-tag",t.missingAttributeValue="missing-attribute-value",t.missingWhitespaceBetweenAttributes="missing-whitespace-between-attributes",t.missingWhitespaceAfterDoctypePublicKeyword="missing-whitespace-after-doctype-public-keyword",t.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers="missing-whitespace-between-doctype-public-and-system-identifiers",t.missingWhitespaceAfterDoctypeSystemKeyword="missing-whitespace-after-doctype-system-keyword",t.missingQuoteBeforeDoctypePublicIdentifier="missing-quote-before-doctype-public-identifier",t.missingQuoteBeforeDoctypeSystemIdentifier="missing-quote-before-doctype-system-identifier",t.missingDoctypePublicIdentifier="missing-doctype-public-identifier",t.missingDoctypeSystemIdentifier="missing-doctype-system-identifier",t.abruptDoctypePublicIdentifier="abrupt-doctype-public-identifier",t.abruptDoctypeSystemIdentifier="abrupt-doctype-system-identifier",t.cdataInHtmlContent="cdata-in-html-content",t.incorrectlyOpenedComment="incorrectly-opened-comment",t.eofInScriptHtmlCommentLikeText="eof-in-script-html-comment-like-text",t.eofInDoctype="eof-in-doctype",t.nestedComment="nested-comment",t.abruptClosingOfEmptyComment="abrupt-closing-of-empty-comment",t.eofInComment="eof-in-comment",t.incorrectlyClosedComment="incorrectly-closed-comment",t.eofInCdata="eof-in-cdata",t.absenceOfDigitsInNumericCharacterReference="absence-of-digits-in-numeric-character-reference",t.nullCharacterReference="null-character-reference",t.surrogateCharacterReference="surrogate-character-reference",t.characterReferenceOutsideUnicodeRange="character-reference-outside-unicode-range",t.controlCharacterReference="control-character-reference",t.noncharacterCharacterReference="noncharacter-character-reference",t.missingWhitespaceBeforeDoctypeName="missing-whitespace-before-doctype-name",t.missingDoctypeName="missing-doctype-name",t.invalidCharacterSequenceAfterDoctypeName="invalid-character-sequence-after-doctype-name",t.duplicateAttribute="duplicate-attribute",t.nonConformingDoctype="non-conforming-doctype",t.missingDoctype="missing-doctype",t.misplacedDoctype="misplaced-doctype",t.endTagWithoutMatchingOpenElement="end-tag-without-matching-open-element",t.closingOfElementWithOpenChildElements="closing-of-element-with-open-child-elements",t.disallowedContentInNoscriptInHead="disallowed-content-in-noscript-in-head",t.openElementsLeftAfterEof="open-elements-left-after-eof",t.abandonedHeadElementChild="abandoned-head-element-child",t.misplacedStartTagForHeadElement="misplaced-start-tag-for-head-element",t.nestedNoscriptInHead="nested-noscript-in-head",t.eofInElementThatCanContainOnlyText="eof-in-element-that-can-contain-only-text"}(Yr=Yr||(Yr={}));class Xr{constructor(t){this.handler=t,this.html="",this.pos=-1,this.lastGapPos=-2,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=65536,this.isEol=!1,this.lineStartPos=0,this.droppedBufferSize=0,this.line=1,this.lastErrOffset=-1}get col(){return this.pos-this.lineStartPos+Number(this.lastGapPos!==this.pos)}get offset(){return this.droppedBufferSize+this.pos}getError(t){const{line:e,col:r,offset:i}=this;return{code:t,startLine:e,endLine:e,startCol:r,endCol:r,startOffset:i,endOffset:i}}_err(t){this.handler.onParseError&&this.lastErrOffset!==this.offset&&(this.lastErrOffset=this.offset,this.handler.onParseError(this.getError(t)))}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(t){if(this.pos!==this.html.length-1){const e=this.html.charCodeAt(this.pos+1);if(function(t){return t>=56320&&t<=57343}(e))return this.pos++,this._addGap(),1024*(t-55296)+9216+e}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,Wr.EOF;return this._err(Yr.surrogateInInputStream),t}willDropParsedChunk(){return this.pos>this.bufferWaterline}dropParsedChunk(){this.willDropParsedChunk()&&(this.html=this.html.substring(this.pos),this.lineStartPos-=this.pos,this.droppedBufferSize+=this.pos,this.pos=0,this.lastGapPos=-2,this.gapStack.length=0)}write(t,e){this.html.length>0?this.html+=t:this.html=t,this.endOfChunkHit=!1,this.lastChunkWritten=e}insertHtmlAtCurrentPos(t){this.html=this.html.substring(0,this.pos+1)+t+this.html.substring(this.pos+1),this.endOfChunkHit=!1}startsWith(t,e){if(this.pos+t.length>this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,!1;if(e)return this.html.startsWith(t,this.pos);for(let e=0;e<t.length;e++)if((32|this.html.charCodeAt(this.pos+e))!==t.charCodeAt(e))return!1;return!0}peek(t){const e=this.pos+t;if(e>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,Wr.EOF;const r=this.html.charCodeAt(e);return r===Wr.CARRIAGE_RETURN?Wr.LINE_FEED:r}advance(){if(this.pos++,this.isEol&&(this.isEol=!1,this.line++,this.lineStartPos=this.pos),this.pos>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,Wr.EOF;let t=this.html.charCodeAt(this.pos);return t===Wr.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,Wr.LINE_FEED):t===Wr.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,qr(t)&&(t=this._processSurrogate(t)),null===this.handler.onParseError||t>31&&t<127||t===Wr.LINE_FEED||t===Wr.CARRIAGE_RETURN||t>159&&t<64976||this._checkForProblematicCharacters(t),t)}_checkForProblematicCharacters(t){Qr(t)?this._err(Yr.controlCharacterInInputStream):Kr(t)&&this._err(Yr.noncharacterInInputStream)}retreat(t){for(this.pos-=t;this.pos<this.lastGapPos;)this.lastGapPos=this.gapStack.pop(),this.pos--;this.isEol=!1}}!function(t){t[t.CHARACTER=0]="CHARACTER",t[t.NULL_CHARACTER=1]="NULL_CHARACTER",t[t.WHITESPACE_CHARACTER=2]="WHITESPACE_CHARACTER",t[t.START_TAG=3]="START_TAG",t[t.END_TAG=4]="END_TAG",t[t.COMMENT=5]="COMMENT",t[t.DOCTYPE=6]="DOCTYPE",t[t.EOF=7]="EOF",t[t.HIBERNATION=8]="HIBERNATION"}(Jr=Jr||(Jr={}));const Zr=new Uint16Array('ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms„‹•˜¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegraìȹoɴ͹\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱cò׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘ë૙eryThiî૙tedĀGL૸ଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻Ó䃓Āiy෎ීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬื฼de耻Õ䃕es;樷ml耻Ö䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»࿝pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗Āeiቻ኉Dzኀ\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0᏿ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0጖y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtè૙a;䎖r;愨pf;愤cr;쀀𝒵௡ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;e዁ᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀𝔟g΀costuvwឍឝឳេ៕៛៞ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t»᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭍᭒\0᯽\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇᫔᫺\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ᫙\0\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁îᅠeĀmx᫱᫶ent»᫩eóɍǧ᫾\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍rò΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴoôᲉĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»Ṻƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙ῜ῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧‪‬\0‮耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0↎proø₞r;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼rò৆òΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonó྘quigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roø඄urĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨í஘istĀ;s஠டr;쀀𝔫ȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lanô௢ií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs఻⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lleì୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉uå൅;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭å೸åഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñ೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥ⵲ⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀𝔬ͯ⵹\0\0⵼\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨrò᪀Āir⶝ⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ⹞\0⹽\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ⹧⹲຅脀¶;l⹭⹮䂶leìЃɩ⹸\0\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴ï໻rel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei⿾々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ì࿲âヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowó࿪arpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓rò࿪aòՑ;怏oustĀ;a㈞㈟掱che»㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼਴t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì⹯耻­䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫ਩war;椪lig耻ß䃟௡㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rë๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproø዁im»ኬsðኞĀas㚺㚮ð዁rn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xô᝷headĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roð໻tré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜ៟tré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split("").map((t=>t.charCodeAt(0)))),$r=new Uint16Array("Ȁaglq\tɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map((t=>t.charCodeAt(0))));var ti;const ei=new Map([[0,65533],[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]]),ri=null!==(ti=String.fromCodePoint)&&void 0!==ti?ti:function(t){let e="";return t>65535&&(t-=65536,e+=String.fromCharCode(t>>>10&1023|55296),t=56320|1023&t),e+=String.fromCharCode(t),e};function ii(t){return ri(function(t){var e;return t>=55296&&t<=57343||t>1114111?65533:null!==(e=ei.get(t))&&void 0!==e?e:t}(t))}var ni,si,oi,ai,ci,li,hi;function ui(t){return function(e,r){let i="",n=0,s=0;for(;(s=e.indexOf("&",s))>=0;){if(i+=e.slice(n,s),n=s,s+=1,e.charCodeAt(s)===ni.NUM){let t=s+1,o=10,a=e.charCodeAt(t);(a|ni.To_LOWER_BIT)===ni.LOWER_X&&(o=16,s+=1,t+=1);do{a=e.charCodeAt(++s)}while(a>=ni.ZERO&&a<=ni.NINE||16===o&&(a|ni.To_LOWER_BIT)>=ni.LOWER_A&&(a|ni.To_LOWER_BIT)<=ni.LOWER_F);if(t!==s){const a=e.substring(t,s),c=parseInt(a,o);if(e.charCodeAt(s)===ni.SEMI)s+=1;else if(r)continue;i+=ii(c),n=s}continue}let o=0,a=1,c=0,l=t[c];for(;s<e.length&&(c=pi(t,l,c+1,e.charCodeAt(s)),!(c<0));s++,a++){l=t[c];const i=l&si.VALUE_LENGTH;if(i){r&&e.charCodeAt(s)!==ni.SEMI||(o=c,a=0);const t=(i>>14)-1;if(0===t)break;c+=t}}if(0!==o){const e=(t[o]&si.VALUE_LENGTH)>>14;i+=1===e?String.fromCharCode(t[o]&~si.VALUE_LENGTH):2===e?String.fromCharCode(t[o+1]):String.fromCharCode(t[o+1],t[o+2]),n=s-a+1}}return i+e.slice(n)}}function pi(t,e,r,i){const n=(e&si.BRANCH_LENGTH)>>7,s=e&si.JUMP_TABLE;if(0===n)return 0!==s&&i===s?r:-1;if(s){const e=i-s;return e<0||e>=n?-1:t[r+e]-1}let o=r,a=o+n-1;for(;o<=a;){const e=o+a>>>1,r=t[e];if(r<i)o=e+1;else{if(!(r>i))return t[e+n];a=e-1}}return-1}!function(t){t[t.NUM=35]="NUM",t[t.SEMI=59]="SEMI",t[t.ZERO=48]="ZERO",t[t.NINE=57]="NINE",t[t.LOWER_A=97]="LOWER_A",t[t.LOWER_F=102]="LOWER_F",t[t.LOWER_X=120]="LOWER_X",t[t.To_LOWER_BIT=32]="To_LOWER_BIT"}(ni||(ni={})),function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"}(si||(si={})),ui(Zr),ui($r),function(t){t.HTML="http://www.w3.org/1999/xhtml",t.MATHML="http://www.w3.org/1998/Math/MathML",t.SVG="http://www.w3.org/2000/svg",t.XLINK="http://www.w3.org/1999/xlink",t.XML="http://www.w3.org/XML/1998/namespace",t.XMLNS="http://www.w3.org/2000/xmlns/"}(oi=oi||(oi={})),function(t){t.TYPE="type",t.ACTION="action",t.ENCODING="encoding",t.PROMPT="prompt",t.NAME="name",t.COLOR="color",t.FACE="face",t.SIZE="size"}(ai=ai||(ai={})),function(t){t.NO_QUIRKS="no-quirks",t.QUIRKS="quirks",t.LIMITED_QUIRKS="limited-quirks"}(ci=ci||(ci={})),function(t){t.A="a",t.ADDRESS="address",t.ANNOTATION_XML="annotation-xml",t.APPLET="applet",t.AREA="area",t.ARTICLE="article",t.ASIDE="aside",t.B="b",t.BASE="base",t.BASEFONT="basefont",t.BGSOUND="bgsound",t.BIG="big",t.BLOCKQUOTE="blockquote",t.BODY="body",t.BR="br",t.BUTTON="button",t.CAPTION="caption",t.CENTER="center",t.CODE="code",t.COL="col",t.COLGROUP="colgroup",t.DD="dd",t.DESC="desc",t.DETAILS="details",t.DIALOG="dialog",t.DIR="dir",t.DIV="div",t.DL="dl",t.DT="dt",t.EM="em",t.EMBED="embed",t.FIELDSET="fieldset",t.FIGCAPTION="figcaption",t.FIGURE="figure",t.FONT="font",t.FOOTER="footer",t.FOREIGN_OBJECT="foreignObject",t.FORM="form",t.FRAME="frame",t.FRAMESET="frameset",t.H1="h1",t.H2="h2",t.H3="h3",t.H4="h4",t.H5="h5",t.H6="h6",t.HEAD="head",t.HEADER="header",t.HGROUP="hgroup",t.HR="hr",t.HTML="html",t.I="i",t.IMG="img",t.IMAGE="image",t.INPUT="input",t.IFRAME="iframe",t.KEYGEN="keygen",t.LABEL="label",t.LI="li",t.LINK="link",t.LISTING="listing",t.MAIN="main",t.MALIGNMARK="malignmark",t.MARQUEE="marquee",t.MATH="math",t.MENU="menu",t.META="meta",t.MGLYPH="mglyph",t.MI="mi",t.MO="mo",t.MN="mn",t.MS="ms",t.MTEXT="mtext",t.NAV="nav",t.NOBR="nobr",t.NOFRAMES="noframes",t.NOEMBED="noembed",t.NOSCRIPT="noscript",t.OBJECT="object",t.OL="ol",t.OPTGROUP="optgroup",t.OPTION="option",t.P="p",t.PARAM="param",t.PLAINTEXT="plaintext",t.PRE="pre",t.RB="rb",t.RP="rp",t.RT="rt",t.RTC="rtc",t.RUBY="ruby",t.S="s",t.SCRIPT="script",t.SECTION="section",t.SELECT="select",t.SOURCE="source",t.SMALL="small",t.SPAN="span",t.STRIKE="strike",t.STRONG="strong",t.STYLE="style",t.SUB="sub",t.SUMMARY="summary",t.SUP="sup",t.TABLE="table",t.TBODY="tbody",t.TEMPLATE="template",t.TEXTAREA="textarea",t.TFOOT="tfoot",t.TD="td",t.TH="th",t.THEAD="thead",t.TITLE="title",t.TR="tr",t.TRACK="track",t.TT="tt",t.U="u",t.UL="ul",t.SVG="svg",t.VAR="var",t.WBR="wbr",t.XMP="xmp"}(li=li||(li={})),function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.A=1]="A",t[t.ADDRESS=2]="ADDRESS",t[t.ANNOTATION_XML=3]="ANNOTATION_XML",t[t.APPLET=4]="APPLET",t[t.AREA=5]="AREA",t[t.ARTICLE=6]="ARTICLE",t[t.ASIDE=7]="ASIDE",t[t.B=8]="B",t[t.BASE=9]="BASE",t[t.BASEFONT=10]="BASEFONT",t[t.BGSOUND=11]="BGSOUND",t[t.BIG=12]="BIG",t[t.BLOCKQUOTE=13]="BLOCKQUOTE",t[t.BODY=14]="BODY",t[t.BR=15]="BR",t[t.BUTTON=16]="BUTTON",t[t.CAPTION=17]="CAPTION",t[t.CENTER=18]="CENTER",t[t.CODE=19]="CODE",t[t.COL=20]="COL",t[t.COLGROUP=21]="COLGROUP",t[t.DD=22]="DD",t[t.DESC=23]="DESC",t[t.DETAILS=24]="DETAILS",t[t.DIALOG=25]="DIALOG",t[t.DIR=26]="DIR",t[t.DIV=27]="DIV",t[t.DL=28]="DL",t[t.DT=29]="DT",t[t.EM=30]="EM",t[t.EMBED=31]="EMBED",t[t.FIELDSET=32]="FIELDSET",t[t.FIGCAPTION=33]="FIGCAPTION",t[t.FIGURE=34]="FIGURE",t[t.FONT=35]="FONT",t[t.FOOTER=36]="FOOTER",t[t.FOREIGN_OBJECT=37]="FOREIGN_OBJECT",t[t.FORM=38]="FORM",t[t.FRAME=39]="FRAME",t[t.FRAMESET=40]="FRAMESET",t[t.H1=41]="H1",t[t.H2=42]="H2",t[t.H3=43]="H3",t[t.H4=44]="H4",t[t.H5=45]="H5",t[t.H6=46]="H6",t[t.HEAD=47]="HEAD",t[t.HEADER=48]="HEADER",t[t.HGROUP=49]="HGROUP",t[t.HR=50]="HR",t[t.HTML=51]="HTML",t[t.I=52]="I",t[t.IMG=53]="IMG",t[t.IMAGE=54]="IMAGE",t[t.INPUT=55]="INPUT",t[t.IFRAME=56]="IFRAME",t[t.KEYGEN=57]="KEYGEN",t[t.LABEL=58]="LABEL",t[t.LI=59]="LI",t[t.LINK=60]="LINK",t[t.LISTING=61]="LISTING",t[t.MAIN=62]="MAIN",t[t.MALIGNMARK=63]="MALIGNMARK",t[t.MARQUEE=64]="MARQUEE",t[t.MATH=65]="MATH",t[t.MENU=66]="MENU",t[t.META=67]="META",t[t.MGLYPH=68]="MGLYPH",t[t.MI=69]="MI",t[t.MO=70]="MO",t[t.MN=71]="MN",t[t.MS=72]="MS",t[t.MTEXT=73]="MTEXT",t[t.NAV=74]="NAV",t[t.NOBR=75]="NOBR",t[t.NOFRAMES=76]="NOFRAMES",t[t.NOEMBED=77]="NOEMBED",t[t.NOSCRIPT=78]="NOSCRIPT",t[t.OBJECT=79]="OBJECT",t[t.OL=80]="OL",t[t.OPTGROUP=81]="OPTGROUP",t[t.OPTION=82]="OPTION",t[t.P=83]="P",t[t.PARAM=84]="PARAM",t[t.PLAINTEXT=85]="PLAINTEXT",t[t.PRE=86]="PRE",t[t.RB=87]="RB",t[t.RP=88]="RP",t[t.RT=89]="RT",t[t.RTC=90]="RTC",t[t.RUBY=91]="RUBY",t[t.S=92]="S",t[t.SCRIPT=93]="SCRIPT",t[t.SECTION=94]="SECTION",t[t.SELECT=95]="SELECT",t[t.SOURCE=96]="SOURCE",t[t.SMALL=97]="SMALL",t[t.SPAN=98]="SPAN",t[t.STRIKE=99]="STRIKE",t[t.STRONG=100]="STRONG",t[t.STYLE=101]="STYLE",t[t.SUB=102]="SUB",t[t.SUMMARY=103]="SUMMARY",t[t.SUP=104]="SUP",t[t.TABLE=105]="TABLE",t[t.TBODY=106]="TBODY",t[t.TEMPLATE=107]="TEMPLATE",t[t.TEXTAREA=108]="TEXTAREA",t[t.TFOOT=109]="TFOOT",t[t.TD=110]="TD",t[t.TH=111]="TH",t[t.THEAD=112]="THEAD",t[t.TITLE=113]="TITLE",t[t.TR=114]="TR",t[t.TRACK=115]="TRACK",t[t.TT=116]="TT",t[t.U=117]="U",t[t.UL=118]="UL",t[t.SVG=119]="SVG",t[t.VAR=120]="VAR",t[t.WBR=121]="WBR",t[t.XMP=122]="XMP"}(hi=hi||(hi={}));const di=new Map([[li.A,hi.A],[li.ADDRESS,hi.ADDRESS],[li.ANNOTATION_XML,hi.ANNOTATION_XML],[li.APPLET,hi.APPLET],[li.AREA,hi.AREA],[li.ARTICLE,hi.ARTICLE],[li.ASIDE,hi.ASIDE],[li.B,hi.B],[li.BASE,hi.BASE],[li.BASEFONT,hi.BASEFONT],[li.BGSOUND,hi.BGSOUND],[li.BIG,hi.BIG],[li.BLOCKQUOTE,hi.BLOCKQUOTE],[li.BODY,hi.BODY],[li.BR,hi.BR],[li.BUTTON,hi.BUTTON],[li.CAPTION,hi.CAPTION],[li.CENTER,hi.CENTER],[li.CODE,hi.CODE],[li.COL,hi.COL],[li.COLGROUP,hi.COLGROUP],[li.DD,hi.DD],[li.DESC,hi.DESC],[li.DETAILS,hi.DETAILS],[li.DIALOG,hi.DIALOG],[li.DIR,hi.DIR],[li.DIV,hi.DIV],[li.DL,hi.DL],[li.DT,hi.DT],[li.EM,hi.EM],[li.EMBED,hi.EMBED],[li.FIELDSET,hi.FIELDSET],[li.FIGCAPTION,hi.FIGCAPTION],[li.FIGURE,hi.FIGURE],[li.FONT,hi.FONT],[li.FOOTER,hi.FOOTER],[li.FOREIGN_OBJECT,hi.FOREIGN_OBJECT],[li.FORM,hi.FORM],[li.FRAME,hi.FRAME],[li.FRAMESET,hi.FRAMESET],[li.H1,hi.H1],[li.H2,hi.H2],[li.H3,hi.H3],[li.H4,hi.H4],[li.H5,hi.H5],[li.H6,hi.H6],[li.HEAD,hi.HEAD],[li.HEADER,hi.HEADER],[li.HGROUP,hi.HGROUP],[li.HR,hi.HR],[li.HTML,hi.HTML],[li.I,hi.I],[li.IMG,hi.IMG],[li.IMAGE,hi.IMAGE],[li.INPUT,hi.INPUT],[li.IFRAME,hi.IFRAME],[li.KEYGEN,hi.KEYGEN],[li.LABEL,hi.LABEL],[li.LI,hi.LI],[li.LINK,hi.LINK],[li.LISTING,hi.LISTING],[li.MAIN,hi.MAIN],[li.MALIGNMARK,hi.MALIGNMARK],[li.MARQUEE,hi.MARQUEE],[li.MATH,hi.MATH],[li.MENU,hi.MENU],[li.META,hi.META],[li.MGLYPH,hi.MGLYPH],[li.MI,hi.MI],[li.MO,hi.MO],[li.MN,hi.MN],[li.MS,hi.MS],[li.MTEXT,hi.MTEXT],[li.NAV,hi.NAV],[li.NOBR,hi.NOBR],[li.NOFRAMES,hi.NOFRAMES],[li.NOEMBED,hi.NOEMBED],[li.NOSCRIPT,hi.NOSCRIPT],[li.OBJECT,hi.OBJECT],[li.OL,hi.OL],[li.OPTGROUP,hi.OPTGROUP],[li.OPTION,hi.OPTION],[li.P,hi.P],[li.PARAM,hi.PARAM],[li.PLAINTEXT,hi.PLAINTEXT],[li.PRE,hi.PRE],[li.RB,hi.RB],[li.RP,hi.RP],[li.RT,hi.RT],[li.RTC,hi.RTC],[li.RUBY,hi.RUBY],[li.S,hi.S],[li.SCRIPT,hi.SCRIPT],[li.SECTION,hi.SECTION],[li.SELECT,hi.SELECT],[li.SOURCE,hi.SOURCE],[li.SMALL,hi.SMALL],[li.SPAN,hi.SPAN],[li.STRIKE,hi.STRIKE],[li.STRONG,hi.STRONG],[li.STYLE,hi.STYLE],[li.SUB,hi.SUB],[li.SUMMARY,hi.SUMMARY],[li.SUP,hi.SUP],[li.TABLE,hi.TABLE],[li.TBODY,hi.TBODY],[li.TEMPLATE,hi.TEMPLATE],[li.TEXTAREA,hi.TEXTAREA],[li.TFOOT,hi.TFOOT],[li.TD,hi.TD],[li.TH,hi.TH],[li.THEAD,hi.THEAD],[li.TITLE,hi.TITLE],[li.TR,hi.TR],[li.TRACK,hi.TRACK],[li.TT,hi.TT],[li.U,hi.U],[li.UL,hi.UL],[li.SVG,hi.SVG],[li.VAR,hi.VAR],[li.WBR,hi.WBR],[li.XMP,hi.XMP]]);function fi(t){var e;return null!==(e=di.get(t))&&void 0!==e?e:hi.UNKNOWN}const gi=hi;oi.HTML,new Set([gi.ADDRESS,gi.APPLET,gi.AREA,gi.ARTICLE,gi.ASIDE,gi.BASE,gi.BASEFONT,gi.BGSOUND,gi.BLOCKQUOTE,gi.BODY,gi.BR,gi.BUTTON,gi.CAPTION,gi.CENTER,gi.COL,gi.COLGROUP,gi.DD,gi.DETAILS,gi.DIR,gi.DIV,gi.DL,gi.DT,gi.EMBED,gi.FIELDSET,gi.FIGCAPTION,gi.FIGURE,gi.FOOTER,gi.FORM,gi.FRAME,gi.FRAMESET,gi.H1,gi.H2,gi.H3,gi.H4,gi.H5,gi.H6,gi.HEAD,gi.HEADER,gi.HGROUP,gi.HR,gi.HTML,gi.IFRAME,gi.IMG,gi.INPUT,gi.LI,gi.LINK,gi.LISTING,gi.MAIN,gi.MARQUEE,gi.MENU,gi.META,gi.NAV,gi.NOEMBED,gi.NOFRAMES,gi.NOSCRIPT,gi.OBJECT,gi.OL,gi.P,gi.PARAM,gi.PLAINTEXT,gi.PRE,gi.SCRIPT,gi.SECTION,gi.SELECT,gi.SOURCE,gi.STYLE,gi.SUMMARY,gi.TABLE,gi.TBODY,gi.TD,gi.TEMPLATE,gi.TEXTAREA,gi.TFOOT,gi.TH,gi.THEAD,gi.TITLE,gi.TR,gi.TRACK,gi.UL,gi.WBR,gi.XMP]),oi.MATHML,new Set([gi.MI,gi.MO,gi.MN,gi.MS,gi.MTEXT,gi.ANNOTATION_XML]),oi.SVG,new Set([gi.TITLE,gi.FOREIGN_OBJECT,gi.DESC]),oi.XLINK,new Set,oi.XML,new Set,oi.XMLNS,new Set;const yi=new Set([li.STYLE,li.SCRIPT,li.XMP,li.IFRAME,li.NOEMBED,li.NOFRAMES,li.PLAINTEXT]),mi=new Map([[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]]);var wi;!function(t){t[t.DATA=0]="DATA",t[t.RCDATA=1]="RCDATA",t[t.RAWTEXT=2]="RAWTEXT",t[t.SCRIPT_DATA=3]="SCRIPT_DATA",t[t.PLAINTEXT=4]="PLAINTEXT",t[t.TAG_OPEN=5]="TAG_OPEN",t[t.END_TAG_OPEN=6]="END_TAG_OPEN",t[t.TAG_NAME=7]="TAG_NAME",t[t.RCDATA_LESS_THAN_SIGN=8]="RCDATA_LESS_THAN_SIGN",t[t.RCDATA_END_TAG_OPEN=9]="RCDATA_END_TAG_OPEN",t[t.RCDATA_END_TAG_NAME=10]="RCDATA_END_TAG_NAME",t[t.RAWTEXT_LESS_THAN_SIGN=11]="RAWTEXT_LESS_THAN_SIGN",t[t.RAWTEXT_END_TAG_OPEN=12]="RAWTEXT_END_TAG_OPEN",t[t.RAWTEXT_END_TAG_NAME=13]="RAWTEXT_END_TAG_NAME",t[t.SCRIPT_DATA_LESS_THAN_SIGN=14]="SCRIPT_DATA_LESS_THAN_SIGN",t[t.SCRIPT_DATA_END_TAG_OPEN=15]="SCRIPT_DATA_END_TAG_OPEN",t[t.SCRIPT_DATA_END_TAG_NAME=16]="SCRIPT_DATA_END_TAG_NAME",t[t.SCRIPT_DATA_ESCAPE_START=17]="SCRIPT_DATA_ESCAPE_START",t[t.SCRIPT_DATA_ESCAPE_START_DASH=18]="SCRIPT_DATA_ESCAPE_START_DASH",t[t.SCRIPT_DATA_ESCAPED=19]="SCRIPT_DATA_ESCAPED",t[t.SCRIPT_DATA_ESCAPED_DASH=20]="SCRIPT_DATA_ESCAPED_DASH",t[t.SCRIPT_DATA_ESCAPED_DASH_DASH=21]="SCRIPT_DATA_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN=22]="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_OPEN=23]="SCRIPT_DATA_ESCAPED_END_TAG_OPEN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_NAME=24]="SCRIPT_DATA_ESCAPED_END_TAG_NAME",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_START=25]="SCRIPT_DATA_DOUBLE_ESCAPE_START",t[t.SCRIPT_DATA_DOUBLE_ESCAPED=26]="SCRIPT_DATA_DOUBLE_ESCAPED",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH=27]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH=28]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN=29]="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_END=30]="SCRIPT_DATA_DOUBLE_ESCAPE_END",t[t.BEFORE_ATTRIBUTE_NAME=31]="BEFORE_ATTRIBUTE_NAME",t[t.ATTRIBUTE_NAME=32]="ATTRIBUTE_NAME",t[t.AFTER_ATTRIBUTE_NAME=33]="AFTER_ATTRIBUTE_NAME",t[t.BEFORE_ATTRIBUTE_VALUE=34]="BEFORE_ATTRIBUTE_VALUE",t[t.ATTRIBUTE_VALUE_DOUBLE_QUOTED=35]="ATTRIBUTE_VALUE_DOUBLE_QUOTED",t[t.ATTRIBUTE_VALUE_SINGLE_QUOTED=36]="ATTRIBUTE_VALUE_SINGLE_QUOTED",t[t.ATTRIBUTE_VALUE_UNQUOTED=37]="ATTRIBUTE_VALUE_UNQUOTED",t[t.AFTER_ATTRIBUTE_VALUE_QUOTED=38]="AFTER_ATTRIBUTE_VALUE_QUOTED",t[t.SELF_CLOSING_START_TAG=39]="SELF_CLOSING_START_TAG",t[t.BOGUS_COMMENT=40]="BOGUS_COMMENT",t[t.MARKUP_DECLARATION_OPEN=41]="MARKUP_DECLARATION_OPEN",t[t.COMMENT_START=42]="COMMENT_START",t[t.COMMENT_START_DASH=43]="COMMENT_START_DASH",t[t.COMMENT=44]="COMMENT",t[t.COMMENT_LESS_THAN_SIGN=45]="COMMENT_LESS_THAN_SIGN",t[t.COMMENT_LESS_THAN_SIGN_BANG=46]="COMMENT_LESS_THAN_SIGN_BANG",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH=47]="COMMENT_LESS_THAN_SIGN_BANG_DASH",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH=48]="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH",t[t.COMMENT_END_DASH=49]="COMMENT_END_DASH",t[t.COMMENT_END=50]="COMMENT_END",t[t.COMMENT_END_BANG=51]="COMMENT_END_BANG",t[t.DOCTYPE=52]="DOCTYPE",t[t.BEFORE_DOCTYPE_NAME=53]="BEFORE_DOCTYPE_NAME",t[t.DOCTYPE_NAME=54]="DOCTYPE_NAME",t[t.AFTER_DOCTYPE_NAME=55]="AFTER_DOCTYPE_NAME",t[t.AFTER_DOCTYPE_PUBLIC_KEYWORD=56]="AFTER_DOCTYPE_PUBLIC_KEYWORD",t[t.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER=57]="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER",t[t.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED=58]="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED=59]="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_PUBLIC_IDENTIFIER=60]="AFTER_DOCTYPE_PUBLIC_IDENTIFIER",t[t.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS=61]="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS",t[t.AFTER_DOCTYPE_SYSTEM_KEYWORD=62]="AFTER_DOCTYPE_SYSTEM_KEYWORD",t[t.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER=63]="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER",t[t.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED=64]="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED=65]="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_SYSTEM_IDENTIFIER=66]="AFTER_DOCTYPE_SYSTEM_IDENTIFIER",t[t.BOGUS_DOCTYPE=67]="BOGUS_DOCTYPE",t[t.CDATA_SECTION=68]="CDATA_SECTION",t[t.CDATA_SECTION_BRACKET=69]="CDATA_SECTION_BRACKET",t[t.CDATA_SECTION_END=70]="CDATA_SECTION_END",t[t.CHARACTER_REFERENCE=71]="CHARACTER_REFERENCE",t[t.NAMED_CHARACTER_REFERENCE=72]="NAMED_CHARACTER_REFERENCE",t[t.AMBIGUOUS_AMPERSAND=73]="AMBIGUOUS_AMPERSAND",t[t.NUMERIC_CHARACTER_REFERENCE=74]="NUMERIC_CHARACTER_REFERENCE",t[t.HEXADEMICAL_CHARACTER_REFERENCE_START=75]="HEXADEMICAL_CHARACTER_REFERENCE_START",t[t.HEXADEMICAL_CHARACTER_REFERENCE=76]="HEXADEMICAL_CHARACTER_REFERENCE",t[t.DECIMAL_CHARACTER_REFERENCE=77]="DECIMAL_CHARACTER_REFERENCE",t[t.NUMERIC_CHARACTER_REFERENCE_END=78]="NUMERIC_CHARACTER_REFERENCE_END"}(wi||(wi={}));const bi={DATA:wi.DATA,RCDATA:wi.RCDATA,RAWTEXT:wi.RAWTEXT,SCRIPT_DATA:wi.SCRIPT_DATA,PLAINTEXT:wi.PLAINTEXT,CDATA_SECTION:wi.CDATA_SECTION};function Ai(t){return t>=Wr.DIGIT_0&&t<=Wr.DIGIT_9}function vi(t){return t>=Wr.LATIN_CAPITAL_A&&t<=Wr.LATIN_CAPITAL_Z}function _i(t){return function(t){return t>=Wr.LATIN_SMALL_A&&t<=Wr.LATIN_SMALL_Z}(t)||vi(t)}function Ei(t){return _i(t)||Ai(t)}function Si(t){return t>=Wr.LATIN_CAPITAL_A&&t<=Wr.LATIN_CAPITAL_F}function Ti(t){return t>=Wr.LATIN_SMALL_A&&t<=Wr.LATIN_SMALL_F}function xi(t){return t+32}function Ci(t){return t===Wr.SPACE||t===Wr.LINE_FEED||t===Wr.TABULATION||t===Wr.FORM_FEED}function Ii(t){return Ci(t)||t===Wr.SOLIDUS||t===Wr.GREATER_THAN_SIGN}class Ri{constructor(t,e){this.options=t,this.handler=e,this.paused=!1,this.inLoop=!1,this.inForeignNode=!1,this.lastStartTagName="",this.active=!1,this.state=wi.DATA,this.returnState=wi.DATA,this.charRefCode=-1,this.consumedAfterSnapshot=-1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr={name:"",value:""},this.preprocessor=new Xr(e),this.currentLocation=this.getCurrentLocation(-1)}_err(t){var e,r;null===(r=(e=this.handler).onParseError)||void 0===r||r.call(e,this.preprocessor.getError(t))}getCurrentLocation(t){return this.options.sourceCodeLocationInfo?{startLine:this.preprocessor.line,startCol:this.preprocessor.col-t,startOffset:this.preprocessor.offset-t,endLine:-1,endCol:-1,endOffset:-1}:null}_runParsingLoop(){if(!this.inLoop){for(this.inLoop=!0;this.active&&!this.paused;){this.consumedAfterSnapshot=0;const t=this._consume();this._ensureHibernation()||this._callState(t)}this.inLoop=!1}}pause(){this.paused=!0}resume(t){if(!this.paused)throw new Error("Parser was already resumed");this.paused=!1,this.inLoop||(this._runParsingLoop(),this.paused||null==t||t())}write(t,e,r){this.active=!0,this.preprocessor.write(t,e),this._runParsingLoop(),this.paused||null==r||r()}insertHtmlAtCurrentPos(t){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(t),this._runParsingLoop()}_ensureHibernation(){return!!this.preprocessor.endOfChunkHit&&(this._unconsume(this.consumedAfterSnapshot),this.active=!1,!0)}_consume(){return this.consumedAfterSnapshot++,this.preprocessor.advance()}_unconsume(t){this.consumedAfterSnapshot-=t,this.preprocessor.retreat(t)}_reconsumeInState(t,e){this.state=t,this._callState(e)}_advanceBy(t){this.consumedAfterSnapshot+=t;for(let e=0;e<t;e++)this.preprocessor.advance()}_consumeSequenceIfMatch(t,e){return!!this.preprocessor.startsWith(t,e)&&(this._advanceBy(t.length-1),!0)}_createStartTagToken(){this.currentToken={type:Jr.START_TAG,tagName:"",tagID:hi.UNKNOWN,selfClosing:!1,ackSelfClosing:!1,attrs:[],location:this.getCurrentLocation(1)}}_createEndTagToken(){this.currentToken={type:Jr.END_TAG,tagName:"",tagID:hi.UNKNOWN,selfClosing:!1,ackSelfClosing:!1,attrs:[],location:this.getCurrentLocation(2)}}_createCommentToken(t){this.currentToken={type:Jr.COMMENT,data:"",location:this.getCurrentLocation(t)}}_createDoctypeToken(t){this.currentToken={type:Jr.DOCTYPE,name:t,forceQuirks:!1,publicId:null,systemId:null,location:this.currentLocation}}_createCharacterToken(t,e){this.currentCharacterToken={type:t,chars:e,location:this.currentLocation}}_createAttr(t){this.currentAttr={name:t,value:""},this.currentLocation=this.getCurrentLocation(0)}_leaveAttrName(){var t,e;const r=this.currentToken;null===function(t,e){for(let r=t.attrs.length-1;r>=0;r--)if(t.attrs[r].name===e)return t.attrs[r].value;return null}(r,this.currentAttr.name)?(r.attrs.push(this.currentAttr),r.location&&this.currentLocation&&((null!==(t=(e=r.location).attrs)&&void 0!==t?t:e.attrs=Object.create(null))[this.currentAttr.name]=this.currentLocation,this._leaveAttrValue())):this._err(Yr.duplicateAttribute)}_leaveAttrValue(){this.currentLocation&&(this.currentLocation.endLine=this.preprocessor.line,this.currentLocation.endCol=this.preprocessor.col,this.currentLocation.endOffset=this.preprocessor.offset)}prepareToken(t){this._emitCurrentCharacterToken(t.location),this.currentToken=null,t.location&&(t.location.endLine=this.preprocessor.line,t.location.endCol=this.preprocessor.col+1,t.location.endOffset=this.preprocessor.offset+1),this.currentLocation=this.getCurrentLocation(-1)}emitCurrentTagToken(){const t=this.currentToken;this.prepareToken(t),t.tagID=fi(t.tagName),t.type===Jr.START_TAG?(this.lastStartTagName=t.tagName,this.handler.onStartTag(t)):(t.attrs.length>0&&this._err(Yr.endTagWithAttributes),t.selfClosing&&this._err(Yr.endTagWithTrailingSolidus),this.handler.onEndTag(t)),this.preprocessor.dropParsedChunk()}emitCurrentComment(t){this.prepareToken(t),this.handler.onComment(t),this.preprocessor.dropParsedChunk()}emitCurrentDoctype(t){this.prepareToken(t),this.handler.onDoctype(t),this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(t){if(this.currentCharacterToken){switch(t&&this.currentCharacterToken.location&&(this.currentCharacterToken.location.endLine=t.startLine,this.currentCharacterToken.location.endCol=t.startCol,this.currentCharacterToken.location.endOffset=t.startOffset),this.currentCharacterToken.type){case Jr.CHARACTER:this.handler.onCharacter(this.currentCharacterToken);break;case Jr.NULL_CHARACTER:this.handler.onNullCharacter(this.currentCharacterToken);break;case Jr.WHITESPACE_CHARACTER:this.handler.onWhitespaceCharacter(this.currentCharacterToken)}this.currentCharacterToken=null}}_emitEOFToken(){const t=this.getCurrentLocation(0);t&&(t.endLine=t.startLine,t.endCol=t.startCol,t.endOffset=t.startOffset),this._emitCurrentCharacterToken(t),this.handler.onEof({type:Jr.EOF,location:t}),this.active=!1}_appendCharToCurrentCharacterToken(t,e){if(this.currentCharacterToken){if(this.currentCharacterToken.type===t)return void(this.currentCharacterToken.chars+=e);this.currentLocation=this.getCurrentLocation(0),this._emitCurrentCharacterToken(this.currentLocation),this.preprocessor.dropParsedChunk()}this._createCharacterToken(t,e)}_emitCodePoint(t){const e=Ci(t)?Jr.WHITESPACE_CHARACTER:t===Wr.NULL?Jr.NULL_CHARACTER:Jr.CHARACTER;this._appendCharToCurrentCharacterToken(e,String.fromCodePoint(t))}_emitChars(t){this._appendCharToCurrentCharacterToken(Jr.CHARACTER,t)}_matchNamedCharacterReference(t){let e=null,r=0,i=!1;for(let s=0,o=Zr[0];s>=0&&(s=pi(Zr,o,s+1,t),!(s<0));t=this._consume()){r+=1,o=Zr[s];const a=o&si.VALUE_LENGTH;if(a){const o=(a>>14)-1;if(t!==Wr.SEMICOLON&&this._isCharacterReferenceInAttribute()&&((n=this.preprocessor.peek(1))===Wr.EQUALS_SIGN||Ei(n))?(e=[Wr.AMPERSAND],s+=o):(e=0===o?[Zr[s]&~si.VALUE_LENGTH]:1===o?[Zr[++s]]:[Zr[++s],Zr[++s]],r=0,i=t!==Wr.SEMICOLON),0===o){this._consume();break}}}var n;return this._unconsume(r),i&&!this.preprocessor.endOfChunkHit&&this._err(Yr.missingSemicolonAfterCharacterReference),this._unconsume(1),e}_isCharacterReferenceInAttribute(){return this.returnState===wi.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===wi.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===wi.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(t){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(t):this._emitCodePoint(t)}_callState(t){switch(this.state){case wi.DATA:this._stateData(t);break;case wi.RCDATA:this._stateRcdata(t);break;case wi.RAWTEXT:this._stateRawtext(t);break;case wi.SCRIPT_DATA:this._stateScriptData(t);break;case wi.PLAINTEXT:this._statePlaintext(t);break;case wi.TAG_OPEN:this._stateTagOpen(t);break;case wi.END_TAG_OPEN:this._stateEndTagOpen(t);break;case wi.TAG_NAME:this._stateTagName(t);break;case wi.RCDATA_LESS_THAN_SIGN:this._stateRcdataLessThanSign(t);break;case wi.RCDATA_END_TAG_OPEN:this._stateRcdataEndTagOpen(t);break;case wi.RCDATA_END_TAG_NAME:this._stateRcdataEndTagName(t);break;case wi.RAWTEXT_LESS_THAN_SIGN:this._stateRawtextLessThanSign(t);break;case wi.RAWTEXT_END_TAG_OPEN:this._stateRawtextEndTagOpen(t);break;case wi.RAWTEXT_END_TAG_NAME:this._stateRawtextEndTagName(t);break;case wi.SCRIPT_DATA_LESS_THAN_SIGN:this._stateScriptDataLessThanSign(t);break;case wi.SCRIPT_DATA_END_TAG_OPEN:this._stateScriptDataEndTagOpen(t);break;case wi.SCRIPT_DATA_END_TAG_NAME:this._stateScriptDataEndTagName(t);break;case wi.SCRIPT_DATA_ESCAPE_START:this._stateScriptDataEscapeStart(t);break;case wi.SCRIPT_DATA_ESCAPE_START_DASH:this._stateScriptDataEscapeStartDash(t);break;case wi.SCRIPT_DATA_ESCAPED:this._stateScriptDataEscaped(t);break;case wi.SCRIPT_DATA_ESCAPED_DASH:this._stateScriptDataEscapedDash(t);break;case wi.SCRIPT_DATA_ESCAPED_DASH_DASH:this._stateScriptDataEscapedDashDash(t);break;case wi.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:this._stateScriptDataEscapedLessThanSign(t);break;case wi.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:this._stateScriptDataEscapedEndTagOpen(t);break;case wi.SCRIPT_DATA_ESCAPED_END_TAG_NAME:this._stateScriptDataEscapedEndTagName(t);break;case wi.SCRIPT_DATA_DOUBLE_ESCAPE_START:this._stateScriptDataDoubleEscapeStart(t);break;case wi.SCRIPT_DATA_DOUBLE_ESCAPED:this._stateScriptDataDoubleEscaped(t);break;case wi.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:this._stateScriptDataDoubleEscapedDash(t);break;case wi.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:this._stateScriptDataDoubleEscapedDashDash(t);break;case wi.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:this._stateScriptDataDoubleEscapedLessThanSign(t);break;case wi.SCRIPT_DATA_DOUBLE_ESCAPE_END:this._stateScriptDataDoubleEscapeEnd(t);break;case wi.BEFORE_ATTRIBUTE_NAME:this._stateBeforeAttributeName(t);break;case wi.ATTRIBUTE_NAME:this._stateAttributeName(t);break;case wi.AFTER_ATTRIBUTE_NAME:this._stateAfterAttributeName(t);break;case wi.BEFORE_ATTRIBUTE_VALUE:this._stateBeforeAttributeValue(t);break;case wi.ATTRIBUTE_VALUE_DOUBLE_QUOTED:this._stateAttributeValueDoubleQuoted(t);break;case wi.ATTRIBUTE_VALUE_SINGLE_QUOTED:this._stateAttributeValueSingleQuoted(t);break;case wi.ATTRIBUTE_VALUE_UNQUOTED:this._stateAttributeValueUnquoted(t);break;case wi.AFTER_ATTRIBUTE_VALUE_QUOTED:this._stateAfterAttributeValueQuoted(t);break;case wi.SELF_CLOSING_START_TAG:this._stateSelfClosingStartTag(t);break;case wi.BOGUS_COMMENT:this._stateBogusComment(t);break;case wi.MARKUP_DECLARATION_OPEN:this._stateMarkupDeclarationOpen(t);break;case wi.COMMENT_START:this._stateCommentStart(t);break;case wi.COMMENT_START_DASH:this._stateCommentStartDash(t);break;case wi.COMMENT:this._stateComment(t);break;case wi.COMMENT_LESS_THAN_SIGN:this._stateCommentLessThanSign(t);break;case wi.COMMENT_LESS_THAN_SIGN_BANG:this._stateCommentLessThanSignBang(t);break;case wi.COMMENT_LESS_THAN_SIGN_BANG_DASH:this._stateCommentLessThanSignBangDash(t);break;case wi.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:this._stateCommentLessThanSignBangDashDash(t);break;case wi.COMMENT_END_DASH:this._stateCommentEndDash(t);break;case wi.COMMENT_END:this._stateCommentEnd(t);break;case wi.COMMENT_END_BANG:this._stateCommentEndBang(t);break;case wi.DOCTYPE:this._stateDoctype(t);break;case wi.BEFORE_DOCTYPE_NAME:this._stateBeforeDoctypeName(t);break;case wi.DOCTYPE_NAME:this._stateDoctypeName(t);break;case wi.AFTER_DOCTYPE_NAME:this._stateAfterDoctypeName(t);break;case wi.AFTER_DOCTYPE_PUBLIC_KEYWORD:this._stateAfterDoctypePublicKeyword(t);break;case wi.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:this._stateBeforeDoctypePublicIdentifier(t);break;case wi.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:this._stateDoctypePublicIdentifierDoubleQuoted(t);break;case wi.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:this._stateDoctypePublicIdentifierSingleQuoted(t);break;case wi.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:this._stateAfterDoctypePublicIdentifier(t);break;case wi.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:this._stateBetweenDoctypePublicAndSystemIdentifiers(t);break;case wi.AFTER_DOCTYPE_SYSTEM_KEYWORD:this._stateAfterDoctypeSystemKeyword(t);break;case wi.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:this._stateBeforeDoctypeSystemIdentifier(t);break;case wi.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:this._stateDoctypeSystemIdentifierDoubleQuoted(t);break;case wi.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:this._stateDoctypeSystemIdentifierSingleQuoted(t);break;case wi.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:this._stateAfterDoctypeSystemIdentifier(t);break;case wi.BOGUS_DOCTYPE:this._stateBogusDoctype(t);break;case wi.CDATA_SECTION:this._stateCdataSection(t);break;case wi.CDATA_SECTION_BRACKET:this._stateCdataSectionBracket(t);break;case wi.CDATA_SECTION_END:this._stateCdataSectionEnd(t);break;case wi.CHARACTER_REFERENCE:this._stateCharacterReference(t);break;case wi.NAMED_CHARACTER_REFERENCE:this._stateNamedCharacterReference(t);break;case wi.AMBIGUOUS_AMPERSAND:this._stateAmbiguousAmpersand(t);break;case wi.NUMERIC_CHARACTER_REFERENCE:this._stateNumericCharacterReference(t);break;case wi.HEXADEMICAL_CHARACTER_REFERENCE_START:this._stateHexademicalCharacterReferenceStart(t);break;case wi.HEXADEMICAL_CHARACTER_REFERENCE:this._stateHexademicalCharacterReference(t);break;case wi.DECIMAL_CHARACTER_REFERENCE:this._stateDecimalCharacterReference(t);break;case wi.NUMERIC_CHARACTER_REFERENCE_END:this._stateNumericCharacterReferenceEnd(t);break;default:throw new Error("Unknown state")}}_stateData(t){switch(t){case Wr.LESS_THAN_SIGN:this.state=wi.TAG_OPEN;break;case Wr.AMPERSAND:this.returnState=wi.DATA,this.state=wi.CHARACTER_REFERENCE;break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this._emitCodePoint(t);break;case Wr.EOF:this._emitEOFToken();break;default:this._emitCodePoint(t)}}_stateRcdata(t){switch(t){case Wr.AMPERSAND:this.returnState=wi.RCDATA,this.state=wi.CHARACTER_REFERENCE;break;case Wr.LESS_THAN_SIGN:this.state=wi.RCDATA_LESS_THAN_SIGN;break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this._emitChars(jr);break;case Wr.EOF:this._emitEOFToken();break;default:this._emitCodePoint(t)}}_stateRawtext(t){switch(t){case Wr.LESS_THAN_SIGN:this.state=wi.RAWTEXT_LESS_THAN_SIGN;break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this._emitChars(jr);break;case Wr.EOF:this._emitEOFToken();break;default:this._emitCodePoint(t)}}_stateScriptData(t){switch(t){case Wr.LESS_THAN_SIGN:this.state=wi.SCRIPT_DATA_LESS_THAN_SIGN;break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this._emitChars(jr);break;case Wr.EOF:this._emitEOFToken();break;default:this._emitCodePoint(t)}}_statePlaintext(t){switch(t){case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this._emitChars(jr);break;case Wr.EOF:this._emitEOFToken();break;default:this._emitCodePoint(t)}}_stateTagOpen(t){if(_i(t))this._createStartTagToken(),this.state=wi.TAG_NAME,this._stateTagName(t);else switch(t){case Wr.EXCLAMATION_MARK:this.state=wi.MARKUP_DECLARATION_OPEN;break;case Wr.SOLIDUS:this.state=wi.END_TAG_OPEN;break;case Wr.QUESTION_MARK:this._err(Yr.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=wi.BOGUS_COMMENT,this._stateBogusComment(t);break;case Wr.EOF:this._err(Yr.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken();break;default:this._err(Yr.invalidFirstCharacterOfTagName),this._emitChars("<"),this.state=wi.DATA,this._stateData(t)}}_stateEndTagOpen(t){if(_i(t))this._createEndTagToken(),this.state=wi.TAG_NAME,this._stateTagName(t);else switch(t){case Wr.GREATER_THAN_SIGN:this._err(Yr.missingEndTagName),this.state=wi.DATA;break;case Wr.EOF:this._err(Yr.eofBeforeTagName),this._emitChars("</"),this._emitEOFToken();break;default:this._err(Yr.invalidFirstCharacterOfTagName),this._createCommentToken(2),this.state=wi.BOGUS_COMMENT,this._stateBogusComment(t)}}_stateTagName(t){const e=this.currentToken;switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:this.state=wi.BEFORE_ATTRIBUTE_NAME;break;case Wr.SOLIDUS:this.state=wi.SELF_CLOSING_START_TAG;break;case Wr.GREATER_THAN_SIGN:this.state=wi.DATA,this.emitCurrentTagToken();break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),e.tagName+=jr;break;case Wr.EOF:this._err(Yr.eofInTag),this._emitEOFToken();break;default:e.tagName+=String.fromCodePoint(vi(t)?xi(t):t)}}_stateRcdataLessThanSign(t){t===Wr.SOLIDUS?this.state=wi.RCDATA_END_TAG_OPEN:(this._emitChars("<"),this.state=wi.RCDATA,this._stateRcdata(t))}_stateRcdataEndTagOpen(t){_i(t)?(this.state=wi.RCDATA_END_TAG_NAME,this._stateRcdataEndTagName(t)):(this._emitChars("</"),this.state=wi.RCDATA,this._stateRcdata(t))}handleSpecialEndTag(t){if(!this.preprocessor.startsWith(this.lastStartTagName,!1))return!this._ensureHibernation();switch(this._createEndTagToken(),this.currentToken.tagName=this.lastStartTagName,this.preprocessor.peek(this.lastStartTagName.length)){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:return this._advanceBy(this.lastStartTagName.length),this.state=wi.BEFORE_ATTRIBUTE_NAME,!1;case Wr.SOLIDUS:return this._advanceBy(this.lastStartTagName.length),this.state=wi.SELF_CLOSING_START_TAG,!1;case Wr.GREATER_THAN_SIGN:return this._advanceBy(this.lastStartTagName.length),this.emitCurrentTagToken(),this.state=wi.DATA,!1;default:return!this._ensureHibernation()}}_stateRcdataEndTagName(t){this.handleSpecialEndTag(t)&&(this._emitChars("</"),this.state=wi.RCDATA,this._stateRcdata(t))}_stateRawtextLessThanSign(t){t===Wr.SOLIDUS?this.state=wi.RAWTEXT_END_TAG_OPEN:(this._emitChars("<"),this.state=wi.RAWTEXT,this._stateRawtext(t))}_stateRawtextEndTagOpen(t){_i(t)?(this.state=wi.RAWTEXT_END_TAG_NAME,this._stateRawtextEndTagName(t)):(this._emitChars("</"),this.state=wi.RAWTEXT,this._stateRawtext(t))}_stateRawtextEndTagName(t){this.handleSpecialEndTag(t)&&(this._emitChars("</"),this.state=wi.RAWTEXT,this._stateRawtext(t))}_stateScriptDataLessThanSign(t){switch(t){case Wr.SOLIDUS:this.state=wi.SCRIPT_DATA_END_TAG_OPEN;break;case Wr.EXCLAMATION_MARK:this.state=wi.SCRIPT_DATA_ESCAPE_START,this._emitChars("<!");break;default:this._emitChars("<"),this.state=wi.SCRIPT_DATA,this._stateScriptData(t)}}_stateScriptDataEndTagOpen(t){_i(t)?(this.state=wi.SCRIPT_DATA_END_TAG_NAME,this._stateScriptDataEndTagName(t)):(this._emitChars("</"),this.state=wi.SCRIPT_DATA,this._stateScriptData(t))}_stateScriptDataEndTagName(t){this.handleSpecialEndTag(t)&&(this._emitChars("</"),this.state=wi.SCRIPT_DATA,this._stateScriptData(t))}_stateScriptDataEscapeStart(t){t===Wr.HYPHEN_MINUS?(this.state=wi.SCRIPT_DATA_ESCAPE_START_DASH,this._emitChars("-")):(this.state=wi.SCRIPT_DATA,this._stateScriptData(t))}_stateScriptDataEscapeStartDash(t){t===Wr.HYPHEN_MINUS?(this.state=wi.SCRIPT_DATA_ESCAPED_DASH_DASH,this._emitChars("-")):(this.state=wi.SCRIPT_DATA,this._stateScriptData(t))}_stateScriptDataEscaped(t){switch(t){case Wr.HYPHEN_MINUS:this.state=wi.SCRIPT_DATA_ESCAPED_DASH,this._emitChars("-");break;case Wr.LESS_THAN_SIGN:this.state=wi.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this._emitChars(jr);break;case Wr.EOF:this._err(Yr.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this._emitCodePoint(t)}}_stateScriptDataEscapedDash(t){switch(t){case Wr.HYPHEN_MINUS:this.state=wi.SCRIPT_DATA_ESCAPED_DASH_DASH,this._emitChars("-");break;case Wr.LESS_THAN_SIGN:this.state=wi.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this.state=wi.SCRIPT_DATA_ESCAPED,this._emitChars(jr);break;case Wr.EOF:this._err(Yr.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=wi.SCRIPT_DATA_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataEscapedDashDash(t){switch(t){case Wr.HYPHEN_MINUS:this._emitChars("-");break;case Wr.LESS_THAN_SIGN:this.state=wi.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break;case Wr.GREATER_THAN_SIGN:this.state=wi.SCRIPT_DATA,this._emitChars(">");break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this.state=wi.SCRIPT_DATA_ESCAPED,this._emitChars(jr);break;case Wr.EOF:this._err(Yr.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=wi.SCRIPT_DATA_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataEscapedLessThanSign(t){t===Wr.SOLIDUS?this.state=wi.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:_i(t)?(this._emitChars("<"),this.state=wi.SCRIPT_DATA_DOUBLE_ESCAPE_START,this._stateScriptDataDoubleEscapeStart(t)):(this._emitChars("<"),this.state=wi.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(t))}_stateScriptDataEscapedEndTagOpen(t){_i(t)?(this.state=wi.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(t)):(this._emitChars("</"),this.state=wi.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(t))}_stateScriptDataEscapedEndTagName(t){this.handleSpecialEndTag(t)&&(this._emitChars("</"),this.state=wi.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(t))}_stateScriptDataDoubleEscapeStart(t){if(this.preprocessor.startsWith(zr,!1)&&Ii(this.preprocessor.peek(6))){this._emitCodePoint(t);for(let t=0;t<6;t++)this._emitCodePoint(this._consume());this.state=wi.SCRIPT_DATA_DOUBLE_ESCAPED}else this._ensureHibernation()||(this.state=wi.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(t))}_stateScriptDataDoubleEscaped(t){switch(t){case Wr.HYPHEN_MINUS:this.state=wi.SCRIPT_DATA_DOUBLE_ESCAPED_DASH,this._emitChars("-");break;case Wr.LESS_THAN_SIGN:this.state=wi.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this._emitChars(jr);break;case Wr.EOF:this._err(Yr.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this._emitCodePoint(t)}}_stateScriptDataDoubleEscapedDash(t){switch(t){case Wr.HYPHEN_MINUS:this.state=wi.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH,this._emitChars("-");break;case Wr.LESS_THAN_SIGN:this.state=wi.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this.state=wi.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(jr);break;case Wr.EOF:this._err(Yr.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=wi.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataDoubleEscapedDashDash(t){switch(t){case Wr.HYPHEN_MINUS:this._emitChars("-");break;case Wr.LESS_THAN_SIGN:this.state=wi.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break;case Wr.GREATER_THAN_SIGN:this.state=wi.SCRIPT_DATA,this._emitChars(">");break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this.state=wi.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(jr);break;case Wr.EOF:this._err(Yr.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=wi.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataDoubleEscapedLessThanSign(t){t===Wr.SOLIDUS?(this.state=wi.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars("/")):(this.state=wi.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(t))}_stateScriptDataDoubleEscapeEnd(t){if(this.preprocessor.startsWith(zr,!1)&&Ii(this.preprocessor.peek(6))){this._emitCodePoint(t);for(let t=0;t<6;t++)this._emitCodePoint(this._consume());this.state=wi.SCRIPT_DATA_ESCAPED}else this._ensureHibernation()||(this.state=wi.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(t))}_stateBeforeAttributeName(t){switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:break;case Wr.SOLIDUS:case Wr.GREATER_THAN_SIGN:case Wr.EOF:this.state=wi.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(t);break;case Wr.EQUALS_SIGN:this._err(Yr.unexpectedEqualsSignBeforeAttributeName),this._createAttr("="),this.state=wi.ATTRIBUTE_NAME;break;default:this._createAttr(""),this.state=wi.ATTRIBUTE_NAME,this._stateAttributeName(t)}}_stateAttributeName(t){switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:case Wr.SOLIDUS:case Wr.GREATER_THAN_SIGN:case Wr.EOF:this._leaveAttrName(),this.state=wi.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(t);break;case Wr.EQUALS_SIGN:this._leaveAttrName(),this.state=wi.BEFORE_ATTRIBUTE_VALUE;break;case Wr.QUOTATION_MARK:case Wr.APOSTROPHE:case Wr.LESS_THAN_SIGN:this._err(Yr.unexpectedCharacterInAttributeName),this.currentAttr.name+=String.fromCodePoint(t);break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this.currentAttr.name+=jr;break;default:this.currentAttr.name+=String.fromCodePoint(vi(t)?xi(t):t)}}_stateAfterAttributeName(t){switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:break;case Wr.SOLIDUS:this.state=wi.SELF_CLOSING_START_TAG;break;case Wr.EQUALS_SIGN:this.state=wi.BEFORE_ATTRIBUTE_VALUE;break;case Wr.GREATER_THAN_SIGN:this.state=wi.DATA,this.emitCurrentTagToken();break;case Wr.EOF:this._err(Yr.eofInTag),this._emitEOFToken();break;default:this._createAttr(""),this.state=wi.ATTRIBUTE_NAME,this._stateAttributeName(t)}}_stateBeforeAttributeValue(t){switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:break;case Wr.QUOTATION_MARK:this.state=wi.ATTRIBUTE_VALUE_DOUBLE_QUOTED;break;case Wr.APOSTROPHE:this.state=wi.ATTRIBUTE_VALUE_SINGLE_QUOTED;break;case Wr.GREATER_THAN_SIGN:this._err(Yr.missingAttributeValue),this.state=wi.DATA,this.emitCurrentTagToken();break;default:this.state=wi.ATTRIBUTE_VALUE_UNQUOTED,this._stateAttributeValueUnquoted(t)}}_stateAttributeValueDoubleQuoted(t){switch(t){case Wr.QUOTATION_MARK:this.state=wi.AFTER_ATTRIBUTE_VALUE_QUOTED;break;case Wr.AMPERSAND:this.returnState=wi.ATTRIBUTE_VALUE_DOUBLE_QUOTED,this.state=wi.CHARACTER_REFERENCE;break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this.currentAttr.value+=jr;break;case Wr.EOF:this._err(Yr.eofInTag),this._emitEOFToken();break;default:this.currentAttr.value+=String.fromCodePoint(t)}}_stateAttributeValueSingleQuoted(t){switch(t){case Wr.APOSTROPHE:this.state=wi.AFTER_ATTRIBUTE_VALUE_QUOTED;break;case Wr.AMPERSAND:this.returnState=wi.ATTRIBUTE_VALUE_SINGLE_QUOTED,this.state=wi.CHARACTER_REFERENCE;break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this.currentAttr.value+=jr;break;case Wr.EOF:this._err(Yr.eofInTag),this._emitEOFToken();break;default:this.currentAttr.value+=String.fromCodePoint(t)}}_stateAttributeValueUnquoted(t){switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:this._leaveAttrValue(),this.state=wi.BEFORE_ATTRIBUTE_NAME;break;case Wr.AMPERSAND:this.returnState=wi.ATTRIBUTE_VALUE_UNQUOTED,this.state=wi.CHARACTER_REFERENCE;break;case Wr.GREATER_THAN_SIGN:this._leaveAttrValue(),this.state=wi.DATA,this.emitCurrentTagToken();break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this.currentAttr.value+=jr;break;case Wr.QUOTATION_MARK:case Wr.APOSTROPHE:case Wr.LESS_THAN_SIGN:case Wr.EQUALS_SIGN:case Wr.GRAVE_ACCENT:this._err(Yr.unexpectedCharacterInUnquotedAttributeValue),this.currentAttr.value+=String.fromCodePoint(t);break;case Wr.EOF:this._err(Yr.eofInTag),this._emitEOFToken();break;default:this.currentAttr.value+=String.fromCodePoint(t)}}_stateAfterAttributeValueQuoted(t){switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:this._leaveAttrValue(),this.state=wi.BEFORE_ATTRIBUTE_NAME;break;case Wr.SOLIDUS:this._leaveAttrValue(),this.state=wi.SELF_CLOSING_START_TAG;break;case Wr.GREATER_THAN_SIGN:this._leaveAttrValue(),this.state=wi.DATA,this.emitCurrentTagToken();break;case Wr.EOF:this._err(Yr.eofInTag),this._emitEOFToken();break;default:this._err(Yr.missingWhitespaceBetweenAttributes),this.state=wi.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(t)}}_stateSelfClosingStartTag(t){switch(t){case Wr.GREATER_THAN_SIGN:this.currentToken.selfClosing=!0,this.state=wi.DATA,this.emitCurrentTagToken();break;case Wr.EOF:this._err(Yr.eofInTag),this._emitEOFToken();break;default:this._err(Yr.unexpectedSolidusInTag),this.state=wi.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(t)}}_stateBogusComment(t){const e=this.currentToken;switch(t){case Wr.GREATER_THAN_SIGN:this.state=wi.DATA,this.emitCurrentComment(e);break;case Wr.EOF:this.emitCurrentComment(e),this._emitEOFToken();break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),e.data+=jr;break;default:e.data+=String.fromCodePoint(t)}}_stateMarkupDeclarationOpen(t){this._consumeSequenceIfMatch("--",!0)?(this._createCommentToken(3),this.state=wi.COMMENT_START):this._consumeSequenceIfMatch(Gr,!1)?(this.currentLocation=this.getCurrentLocation(8),this.state=wi.DOCTYPE):this._consumeSequenceIfMatch(Vr,!0)?this.inForeignNode?this.state=wi.CDATA_SECTION:(this._err(Yr.cdataInHtmlContent),this._createCommentToken(8),this.currentToken.data="[CDATA[",this.state=wi.BOGUS_COMMENT):this._ensureHibernation()||(this._err(Yr.incorrectlyOpenedComment),this._createCommentToken(2),this.state=wi.BOGUS_COMMENT,this._stateBogusComment(t))}_stateCommentStart(t){switch(t){case Wr.HYPHEN_MINUS:this.state=wi.COMMENT_START_DASH;break;case Wr.GREATER_THAN_SIGN:{this._err(Yr.abruptClosingOfEmptyComment),this.state=wi.DATA;const t=this.currentToken;this.emitCurrentComment(t);break}default:this.state=wi.COMMENT,this._stateComment(t)}}_stateCommentStartDash(t){const e=this.currentToken;switch(t){case Wr.HYPHEN_MINUS:this.state=wi.COMMENT_END;break;case Wr.GREATER_THAN_SIGN:this._err(Yr.abruptClosingOfEmptyComment),this.state=wi.DATA,this.emitCurrentComment(e);break;case Wr.EOF:this._err(Yr.eofInComment),this.emitCurrentComment(e),this._emitEOFToken();break;default:e.data+="-",this.state=wi.COMMENT,this._stateComment(t)}}_stateComment(t){const e=this.currentToken;switch(t){case Wr.HYPHEN_MINUS:this.state=wi.COMMENT_END_DASH;break;case Wr.LESS_THAN_SIGN:e.data+="<",this.state=wi.COMMENT_LESS_THAN_SIGN;break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),e.data+=jr;break;case Wr.EOF:this._err(Yr.eofInComment),this.emitCurrentComment(e),this._emitEOFToken();break;default:e.data+=String.fromCodePoint(t)}}_stateCommentLessThanSign(t){const e=this.currentToken;switch(t){case Wr.EXCLAMATION_MARK:e.data+="!",this.state=wi.COMMENT_LESS_THAN_SIGN_BANG;break;case Wr.LESS_THAN_SIGN:e.data+="<";break;default:this.state=wi.COMMENT,this._stateComment(t)}}_stateCommentLessThanSignBang(t){t===Wr.HYPHEN_MINUS?this.state=wi.COMMENT_LESS_THAN_SIGN_BANG_DASH:(this.state=wi.COMMENT,this._stateComment(t))}_stateCommentLessThanSignBangDash(t){t===Wr.HYPHEN_MINUS?this.state=wi.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:(this.state=wi.COMMENT_END_DASH,this._stateCommentEndDash(t))}_stateCommentLessThanSignBangDashDash(t){t!==Wr.GREATER_THAN_SIGN&&t!==Wr.EOF&&this._err(Yr.nestedComment),this.state=wi.COMMENT_END,this._stateCommentEnd(t)}_stateCommentEndDash(t){const e=this.currentToken;switch(t){case Wr.HYPHEN_MINUS:this.state=wi.COMMENT_END;break;case Wr.EOF:this._err(Yr.eofInComment),this.emitCurrentComment(e),this._emitEOFToken();break;default:e.data+="-",this.state=wi.COMMENT,this._stateComment(t)}}_stateCommentEnd(t){const e=this.currentToken;switch(t){case Wr.GREATER_THAN_SIGN:this.state=wi.DATA,this.emitCurrentComment(e);break;case Wr.EXCLAMATION_MARK:this.state=wi.COMMENT_END_BANG;break;case Wr.HYPHEN_MINUS:e.data+="-";break;case Wr.EOF:this._err(Yr.eofInComment),this.emitCurrentComment(e),this._emitEOFToken();break;default:e.data+="--",this.state=wi.COMMENT,this._stateComment(t)}}_stateCommentEndBang(t){const e=this.currentToken;switch(t){case Wr.HYPHEN_MINUS:e.data+="--!",this.state=wi.COMMENT_END_DASH;break;case Wr.GREATER_THAN_SIGN:this._err(Yr.incorrectlyClosedComment),this.state=wi.DATA,this.emitCurrentComment(e);break;case Wr.EOF:this._err(Yr.eofInComment),this.emitCurrentComment(e),this._emitEOFToken();break;default:e.data+="--!",this.state=wi.COMMENT,this._stateComment(t)}}_stateDoctype(t){switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:this.state=wi.BEFORE_DOCTYPE_NAME;break;case Wr.GREATER_THAN_SIGN:this.state=wi.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(t);break;case Wr.EOF:{this._err(Yr.eofInDoctype),this._createDoctypeToken(null);const t=this.currentToken;t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break}default:this._err(Yr.missingWhitespaceBeforeDoctypeName),this.state=wi.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(t)}}_stateBeforeDoctypeName(t){if(vi(t))this._createDoctypeToken(String.fromCharCode(xi(t))),this.state=wi.DOCTYPE_NAME;else switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),this._createDoctypeToken(jr),this.state=wi.DOCTYPE_NAME;break;case Wr.GREATER_THAN_SIGN:{this._err(Yr.missingDoctypeName),this._createDoctypeToken(null);const t=this.currentToken;t.forceQuirks=!0,this.emitCurrentDoctype(t),this.state=wi.DATA;break}case Wr.EOF:{this._err(Yr.eofInDoctype),this._createDoctypeToken(null);const t=this.currentToken;t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break}default:this._createDoctypeToken(String.fromCodePoint(t)),this.state=wi.DOCTYPE_NAME}}_stateDoctypeName(t){const e=this.currentToken;switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:this.state=wi.AFTER_DOCTYPE_NAME;break;case Wr.GREATER_THAN_SIGN:this.state=wi.DATA,this.emitCurrentDoctype(e);break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),e.name+=jr;break;case Wr.EOF:this._err(Yr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:e.name+=String.fromCodePoint(vi(t)?xi(t):t)}}_stateAfterDoctypeName(t){const e=this.currentToken;switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:break;case Wr.GREATER_THAN_SIGN:this.state=wi.DATA,this.emitCurrentDoctype(e);break;case Wr.EOF:this._err(Yr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._consumeSequenceIfMatch("public",!1)?this.state=wi.AFTER_DOCTYPE_PUBLIC_KEYWORD:this._consumeSequenceIfMatch("system",!1)?this.state=wi.AFTER_DOCTYPE_SYSTEM_KEYWORD:this._ensureHibernation()||(this._err(Yr.invalidCharacterSequenceAfterDoctypeName),e.forceQuirks=!0,this.state=wi.BOGUS_DOCTYPE,this._stateBogusDoctype(t))}}_stateAfterDoctypePublicKeyword(t){const e=this.currentToken;switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:this.state=wi.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER;break;case Wr.QUOTATION_MARK:this._err(Yr.missingWhitespaceAfterDoctypePublicKeyword),e.publicId="",this.state=wi.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break;case Wr.APOSTROPHE:this._err(Yr.missingWhitespaceAfterDoctypePublicKeyword),e.publicId="",this.state=wi.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break;case Wr.GREATER_THAN_SIGN:this._err(Yr.missingDoctypePublicIdentifier),e.forceQuirks=!0,this.state=wi.DATA,this.emitCurrentDoctype(e);break;case Wr.EOF:this._err(Yr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._err(Yr.missingQuoteBeforeDoctypePublicIdentifier),e.forceQuirks=!0,this.state=wi.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateBeforeDoctypePublicIdentifier(t){const e=this.currentToken;switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:break;case Wr.QUOTATION_MARK:e.publicId="",this.state=wi.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break;case Wr.APOSTROPHE:e.publicId="",this.state=wi.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break;case Wr.GREATER_THAN_SIGN:this._err(Yr.missingDoctypePublicIdentifier),e.forceQuirks=!0,this.state=wi.DATA,this.emitCurrentDoctype(e);break;case Wr.EOF:this._err(Yr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._err(Yr.missingQuoteBeforeDoctypePublicIdentifier),e.forceQuirks=!0,this.state=wi.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateDoctypePublicIdentifierDoubleQuoted(t){const e=this.currentToken;switch(t){case Wr.QUOTATION_MARK:this.state=wi.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),e.publicId+=jr;break;case Wr.GREATER_THAN_SIGN:this._err(Yr.abruptDoctypePublicIdentifier),e.forceQuirks=!0,this.emitCurrentDoctype(e),this.state=wi.DATA;break;case Wr.EOF:this._err(Yr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:e.publicId+=String.fromCodePoint(t)}}_stateDoctypePublicIdentifierSingleQuoted(t){const e=this.currentToken;switch(t){case Wr.APOSTROPHE:this.state=wi.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),e.publicId+=jr;break;case Wr.GREATER_THAN_SIGN:this._err(Yr.abruptDoctypePublicIdentifier),e.forceQuirks=!0,this.emitCurrentDoctype(e),this.state=wi.DATA;break;case Wr.EOF:this._err(Yr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:e.publicId+=String.fromCodePoint(t)}}_stateAfterDoctypePublicIdentifier(t){const e=this.currentToken;switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:this.state=wi.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS;break;case Wr.GREATER_THAN_SIGN:this.state=wi.DATA,this.emitCurrentDoctype(e);break;case Wr.QUOTATION_MARK:this._err(Yr.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),e.systemId="",this.state=wi.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Wr.APOSTROPHE:this._err(Yr.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),e.systemId="",this.state=wi.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Wr.EOF:this._err(Yr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._err(Yr.missingQuoteBeforeDoctypeSystemIdentifier),e.forceQuirks=!0,this.state=wi.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateBetweenDoctypePublicAndSystemIdentifiers(t){const e=this.currentToken;switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:break;case Wr.GREATER_THAN_SIGN:this.emitCurrentDoctype(e),this.state=wi.DATA;break;case Wr.QUOTATION_MARK:e.systemId="",this.state=wi.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Wr.APOSTROPHE:e.systemId="",this.state=wi.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Wr.EOF:this._err(Yr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._err(Yr.missingQuoteBeforeDoctypeSystemIdentifier),e.forceQuirks=!0,this.state=wi.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateAfterDoctypeSystemKeyword(t){const e=this.currentToken;switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:this.state=wi.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER;break;case Wr.QUOTATION_MARK:this._err(Yr.missingWhitespaceAfterDoctypeSystemKeyword),e.systemId="",this.state=wi.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Wr.APOSTROPHE:this._err(Yr.missingWhitespaceAfterDoctypeSystemKeyword),e.systemId="",this.state=wi.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Wr.GREATER_THAN_SIGN:this._err(Yr.missingDoctypeSystemIdentifier),e.forceQuirks=!0,this.state=wi.DATA,this.emitCurrentDoctype(e);break;case Wr.EOF:this._err(Yr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._err(Yr.missingQuoteBeforeDoctypeSystemIdentifier),e.forceQuirks=!0,this.state=wi.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateBeforeDoctypeSystemIdentifier(t){const e=this.currentToken;switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:break;case Wr.QUOTATION_MARK:e.systemId="",this.state=wi.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Wr.APOSTROPHE:e.systemId="",this.state=wi.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Wr.GREATER_THAN_SIGN:this._err(Yr.missingDoctypeSystemIdentifier),e.forceQuirks=!0,this.state=wi.DATA,this.emitCurrentDoctype(e);break;case Wr.EOF:this._err(Yr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._err(Yr.missingQuoteBeforeDoctypeSystemIdentifier),e.forceQuirks=!0,this.state=wi.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateDoctypeSystemIdentifierDoubleQuoted(t){const e=this.currentToken;switch(t){case Wr.QUOTATION_MARK:this.state=wi.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),e.systemId+=jr;break;case Wr.GREATER_THAN_SIGN:this._err(Yr.abruptDoctypeSystemIdentifier),e.forceQuirks=!0,this.emitCurrentDoctype(e),this.state=wi.DATA;break;case Wr.EOF:this._err(Yr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:e.systemId+=String.fromCodePoint(t)}}_stateDoctypeSystemIdentifierSingleQuoted(t){const e=this.currentToken;switch(t){case Wr.APOSTROPHE:this.state=wi.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter),e.systemId+=jr;break;case Wr.GREATER_THAN_SIGN:this._err(Yr.abruptDoctypeSystemIdentifier),e.forceQuirks=!0,this.emitCurrentDoctype(e),this.state=wi.DATA;break;case Wr.EOF:this._err(Yr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:e.systemId+=String.fromCodePoint(t)}}_stateAfterDoctypeSystemIdentifier(t){const e=this.currentToken;switch(t){case Wr.SPACE:case Wr.LINE_FEED:case Wr.TABULATION:case Wr.FORM_FEED:break;case Wr.GREATER_THAN_SIGN:this.emitCurrentDoctype(e),this.state=wi.DATA;break;case Wr.EOF:this._err(Yr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._err(Yr.unexpectedCharacterAfterDoctypeSystemIdentifier),this.state=wi.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateBogusDoctype(t){const e=this.currentToken;switch(t){case Wr.GREATER_THAN_SIGN:this.emitCurrentDoctype(e),this.state=wi.DATA;break;case Wr.NULL:this._err(Yr.unexpectedNullCharacter);break;case Wr.EOF:this.emitCurrentDoctype(e),this._emitEOFToken()}}_stateCdataSection(t){switch(t){case Wr.RIGHT_SQUARE_BRACKET:this.state=wi.CDATA_SECTION_BRACKET;break;case Wr.EOF:this._err(Yr.eofInCdata),this._emitEOFToken();break;default:this._emitCodePoint(t)}}_stateCdataSectionBracket(t){t===Wr.RIGHT_SQUARE_BRACKET?this.state=wi.CDATA_SECTION_END:(this._emitChars("]"),this.state=wi.CDATA_SECTION,this._stateCdataSection(t))}_stateCdataSectionEnd(t){switch(t){case Wr.GREATER_THAN_SIGN:this.state=wi.DATA;break;case Wr.RIGHT_SQUARE_BRACKET:this._emitChars("]");break;default:this._emitChars("]]"),this.state=wi.CDATA_SECTION,this._stateCdataSection(t)}}_stateCharacterReference(t){t===Wr.NUMBER_SIGN?this.state=wi.NUMERIC_CHARACTER_REFERENCE:Ei(t)?(this.state=wi.NAMED_CHARACTER_REFERENCE,this._stateNamedCharacterReference(t)):(this._flushCodePointConsumedAsCharacterReference(Wr.AMPERSAND),this._reconsumeInState(this.returnState,t))}_stateNamedCharacterReference(t){const e=this._matchNamedCharacterReference(t);if(this._ensureHibernation());else if(e){for(let t=0;t<e.length;t++)this._flushCodePointConsumedAsCharacterReference(e[t]);this.state=this.returnState}else this._flushCodePointConsumedAsCharacterReference(Wr.AMPERSAND),this.state=wi.AMBIGUOUS_AMPERSAND}_stateAmbiguousAmpersand(t){Ei(t)?this._flushCodePointConsumedAsCharacterReference(t):(t===Wr.SEMICOLON&&this._err(Yr.unknownNamedCharacterReference),this._reconsumeInState(this.returnState,t))}_stateNumericCharacterReference(t){this.charRefCode=0,t===Wr.LATIN_SMALL_X||t===Wr.LATIN_CAPITAL_X?this.state=wi.HEXADEMICAL_CHARACTER_REFERENCE_START:Ai(t)?(this.state=wi.DECIMAL_CHARACTER_REFERENCE,this._stateDecimalCharacterReference(t)):(this._err(Yr.absenceOfDigitsInNumericCharacterReference),this._flushCodePointConsumedAsCharacterReference(Wr.AMPERSAND),this._flushCodePointConsumedAsCharacterReference(Wr.NUMBER_SIGN),this._reconsumeInState(this.returnState,t))}_stateHexademicalCharacterReferenceStart(t){!function(t){return Ai(t)||Si(t)||Ti(t)}(t)?(this._err(Yr.absenceOfDigitsInNumericCharacterReference),this._flushCodePointConsumedAsCharacterReference(Wr.AMPERSAND),this._flushCodePointConsumedAsCharacterReference(Wr.NUMBER_SIGN),this._unconsume(2),this.state=this.returnState):(this.state=wi.HEXADEMICAL_CHARACTER_REFERENCE,this._stateHexademicalCharacterReference(t))}_stateHexademicalCharacterReference(t){Si(t)?this.charRefCode=16*this.charRefCode+t-55:Ti(t)?this.charRefCode=16*this.charRefCode+t-87:Ai(t)?this.charRefCode=16*this.charRefCode+t-48:t===Wr.SEMICOLON?this.state=wi.NUMERIC_CHARACTER_REFERENCE_END:(this._err(Yr.missingSemicolonAfterCharacterReference),this.state=wi.NUMERIC_CHARACTER_REFERENCE_END,this._stateNumericCharacterReferenceEnd(t))}_stateDecimalCharacterReference(t){Ai(t)?this.charRefCode=10*this.charRefCode+t-48:t===Wr.SEMICOLON?this.state=wi.NUMERIC_CHARACTER_REFERENCE_END:(this._err(Yr.missingSemicolonAfterCharacterReference),this.state=wi.NUMERIC_CHARACTER_REFERENCE_END,this._stateNumericCharacterReferenceEnd(t))}_stateNumericCharacterReferenceEnd(t){if(this.charRefCode===Wr.NULL)this._err(Yr.nullCharacterReference),this.charRefCode=Wr.REPLACEMENT_CHARACTER;else if(this.charRefCode>1114111)this._err(Yr.characterReferenceOutsideUnicodeRange),this.charRefCode=Wr.REPLACEMENT_CHARACTER;else if(qr(this.charRefCode))this._err(Yr.surrogateCharacterReference),this.charRefCode=Wr.REPLACEMENT_CHARACTER;else if(Kr(this.charRefCode))this._err(Yr.noncharacterCharacterReference);else if(Qr(this.charRefCode)||this.charRefCode===Wr.CARRIAGE_RETURN){this._err(Yr.controlCharacterReference);const t=mi.get(this.charRefCode);void 0!==t&&(this.charRefCode=t)}this._flushCodePointConsumedAsCharacterReference(this.charRefCode),this._reconsumeInState(this.returnState,t)}}const ki=new Set([hi.DD,hi.DT,hi.LI,hi.OPTGROUP,hi.OPTION,hi.P,hi.RB,hi.RP,hi.RT,hi.RTC]);var Ni;new Set([...ki,hi.CAPTION,hi.COLGROUP,hi.TBODY,hi.TD,hi.TFOOT,hi.TH,hi.THEAD,hi.TR]),new Map([[hi.APPLET,oi.HTML],[hi.CAPTION,oi.HTML],[hi.HTML,oi.HTML],[hi.MARQUEE,oi.HTML],[hi.OBJECT,oi.HTML],[hi.TABLE,oi.HTML],[hi.TD,oi.HTML],[hi.TEMPLATE,oi.HTML],[hi.TH,oi.HTML],[hi.ANNOTATION_XML,oi.MATHML],[hi.MI,oi.MATHML],[hi.MN,oi.MATHML],[hi.MO,oi.MATHML],[hi.MS,oi.MATHML],[hi.MTEXT,oi.MATHML],[hi.DESC,oi.SVG],[hi.FOREIGN_OBJECT,oi.SVG],[hi.TITLE,oi.SVG]]),hi.H1,hi.H2,hi.H3,hi.H4,hi.H5,hi.H6,hi.TR,hi.TEMPLATE,hi.HTML,hi.TBODY,hi.TFOOT,hi.THEAD,hi.TEMPLATE,hi.HTML,hi.TABLE,hi.TEMPLATE,hi.HTML,hi.TD,hi.TH,function(t){t[t.Marker=0]="Marker",t[t.Element=1]="Element"}(Ni=Ni||(Ni={})),Ni.Marker;new Set(["-//w3o//dtd w3 html strict 3.0//en//","-/w3c/dtd html 4.0 transitional/en","html"]);const Oi=new Map(["attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map((t=>[t.toLowerCase(),t]))),Bi=new Map([["xlink:actuate",{prefix:"xlink",name:"actuate",namespace:oi.XLINK}],["xlink:arcrole",{prefix:"xlink",name:"arcrole",namespace:oi.XLINK}],["xlink:href",{prefix:"xlink",name:"href",namespace:oi.XLINK}],["xlink:role",{prefix:"xlink",name:"role",namespace:oi.XLINK}],["xlink:show",{prefix:"xlink",name:"show",namespace:oi.XLINK}],["xlink:title",{prefix:"xlink",name:"title",namespace:oi.XLINK}],["xlink:type",{prefix:"xlink",name:"type",namespace:oi.XLINK}],["xml:base",{prefix:"xml",name:"base",namespace:oi.XML}],["xml:lang",{prefix:"xml",name:"lang",namespace:oi.XML}],["xml:space",{prefix:"xml",name:"space",namespace:oi.XML}],["xmlns",{prefix:"",name:"xmlns",namespace:oi.XMLNS}],["xmlns:xlink",{prefix:"xmlns",name:"xlink",namespace:oi.XMLNS}]]),Pi=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map((t=>[t.toLowerCase(),t]))),Di=new Set([hi.B,hi.BIG,hi.BLOCKQUOTE,hi.BODY,hi.BR,hi.CENTER,hi.CODE,hi.DD,hi.DIV,hi.DL,hi.DT,hi.EM,hi.EMBED,hi.H1,hi.H2,hi.H3,hi.H4,hi.H5,hi.H6,hi.HEAD,hi.HR,hi.I,hi.IMG,hi.LI,hi.LISTING,hi.MENU,hi.META,hi.NOBR,hi.OL,hi.P,hi.PRE,hi.RUBY,hi.S,hi.SMALL,hi.SPAN,hi.STRONG,hi.STRIKE,hi.SUB,hi.SUP,hi.TABLE,hi.TT,hi.U,hi.UL,hi.VAR]);function Li(t){const e=Pi.get(t.tagName);null!=e&&(t.tagName=e,t.tagID=fi(t.tagName))}function Ui(t,e,r,i){return(!i||i===oi.HTML)&&function(t,e,r){if(e===oi.MATHML&&t===hi.ANNOTATION_XML)for(let t=0;t<r.length;t++)if(r[t].name===ai.ENCODING){const e=r[t].value.toLowerCase();return"text/html"===e||"application/xhtml+xml"===e}return e===oi.SVG&&(t===hi.FOREIGN_OBJECT||t===hi.DESC||t===hi.TITLE)}(t,e,r)||(!i||i===oi.MATHML)&&function(t,e){return e===oi.MATHML&&(t===hi.MI||t===hi.MO||t===hi.MN||t===hi.MS||t===hi.MTEXT)}(t,e)}var Mi;!function(t){t[t.INITIAL=0]="INITIAL",t[t.BEFORE_HTML=1]="BEFORE_HTML",t[t.BEFORE_HEAD=2]="BEFORE_HEAD",t[t.IN_HEAD=3]="IN_HEAD",t[t.IN_HEAD_NO_SCRIPT=4]="IN_HEAD_NO_SCRIPT",t[t.AFTER_HEAD=5]="AFTER_HEAD",t[t.IN_BODY=6]="IN_BODY",t[t.TEXT=7]="TEXT",t[t.IN_TABLE=8]="IN_TABLE",t[t.IN_TABLE_TEXT=9]="IN_TABLE_TEXT",t[t.IN_CAPTION=10]="IN_CAPTION",t[t.IN_COLUMN_GROUP=11]="IN_COLUMN_GROUP",t[t.IN_TABLE_BODY=12]="IN_TABLE_BODY",t[t.IN_ROW=13]="IN_ROW",t[t.IN_CELL=14]="IN_CELL",t[t.IN_SELECT=15]="IN_SELECT",t[t.IN_SELECT_IN_TABLE=16]="IN_SELECT_IN_TABLE",t[t.IN_TEMPLATE=17]="IN_TEMPLATE",t[t.AFTER_BODY=18]="AFTER_BODY",t[t.IN_FRAMESET=19]="IN_FRAMESET",t[t.AFTER_FRAMESET=20]="AFTER_FRAMESET",t[t.AFTER_AFTER_BODY=21]="AFTER_AFTER_BODY",t[t.AFTER_AFTER_FRAMESET=22]="AFTER_AFTER_FRAMESET"}(Mi||(Mi={})),new Set([hi.TABLE,hi.TBODY,hi.TFOOT,hi.THEAD,hi.TR]),new Set([hi.CAPTION,hi.COL,hi.COLGROUP,hi.TBODY,hi.TD,hi.TFOOT,hi.TH,hi.THEAD,hi.TR]);const Fi=new Map([[34,"&quot;"],[38,"&amp;"],[39,"&apos;"],[60,"&lt;"],[62,"&gt;"]]);function Hi(t,e){return function(r){let i,n=0,s="";for(;i=t.exec(r);)n!==i.index&&(s+=r.substring(n,i.index)),s+=e.get(i[0].charCodeAt(0)),n=i.index+1;return s+r.substring(n)}}String.prototype.codePointAt,Hi(/[&<>'"]/g,Fi);const ji=Hi(/["&\u00A0]/g,new Map([[34,"&quot;"],[38,"&amp;"],[160,"&nbsp;"]])),Wi=Hi(/[&<>\u00A0]/g,new Map([[38,"&amp;"],[60,"&lt;"],[62,"&gt;"],[160,"&nbsp;"]]));new Set([li.AREA,li.BASE,li.BASEFONT,li.BGSOUND,li.BR,li.COL,li.EMBED,li.FRAME,li.HR,li.IMG,li.INPUT,li.KEYGEN,li.LINK,li.META,li.PARAM,li.SOURCE,li.TRACK,li.WBR]);var Vi=r(2830);class Gi extends Vi.Writable{_write(t,e,r){r()}}const zi=hi;class qi{constructor(t,e){this.handler=e,this.namespaceStack=[],this.inForeignContent=!1,this.skipNextNewLine=!1,this.tokenizer=new Ri(t,this),this._enterNamespace(oi.HTML)}onNullCharacter(t){this.skipNextNewLine=!1,this.inForeignContent?this.handler.onCharacter({type:Jr.CHARACTER,chars:"�",location:t.location}):this.handler.onNullCharacter(t)}onWhitespaceCharacter(t){if(this.skipNextNewLine&&10===t.chars.charCodeAt(0)){if(this.skipNextNewLine=!1,1===t.chars.length)return;t.chars=t.chars.substr(1)}this.handler.onWhitespaceCharacter(t)}onCharacter(t){this.skipNextNewLine=!1,this.handler.onCharacter(t)}onComment(t){this.skipNextNewLine=!1,this.handler.onComment(t)}onDoctype(t){this.skipNextNewLine=!1,this.handler.onDoctype(t)}onEof(t){this.skipNextNewLine=!1,this.handler.onEof(t)}_enterNamespace(t){this.namespaceStack.unshift(t),this.inForeignContent=t!==oi.HTML,this.tokenizer.inForeignNode=this.inForeignContent}_leaveCurrentNamespace(){this.namespaceStack.shift(),this.inForeignContent=this.namespaceStack[0]!==oi.HTML,this.tokenizer.inForeignNode=this.inForeignContent}_ensureTokenizerMode(t){switch(t){case zi.TEXTAREA:case zi.TITLE:this.tokenizer.state=bi.RCDATA;break;case zi.PLAINTEXT:this.tokenizer.state=bi.PLAINTEXT;break;case zi.SCRIPT:this.tokenizer.state=bi.SCRIPT_DATA;break;case zi.STYLE:case zi.IFRAME:case zi.XMP:case zi.NOEMBED:case zi.NOFRAMES:case zi.NOSCRIPT:this.tokenizer.state=bi.RAWTEXT}}onStartTag(t){let e=t.tagID;switch(e){case zi.SVG:this._enterNamespace(oi.SVG);break;case zi.MATH:this._enterNamespace(oi.MATHML)}if(this.inForeignContent)if(function(t){const e=t.tagID;return e===hi.FONT&&t.attrs.some((({name:t})=>t===ai.COLOR||t===ai.SIZE||t===ai.FACE))||Di.has(e)}(t))this._leaveCurrentNamespace();else{const r=this.namespaceStack[0];r===oi.MATHML?function(t){for(let e=0;e<t.attrs.length;e++)if("definitionurl"===t.attrs[e].name){t.attrs[e].name="definitionURL";break}}(t):r===oi.SVG&&(Li(t),function(t){for(let e=0;e<t.attrs.length;e++){const r=Oi.get(t.attrs[e].name);null!=r&&(t.attrs[e].name=r)}}(t)),function(t){for(let e=0;e<t.attrs.length;e++){const r=Bi.get(t.attrs[e].name);r&&(t.attrs[e].prefix=r.prefix,t.attrs[e].name=r.name,t.attrs[e].namespace=r.namespace)}}(t),e=t.tagID,!t.selfClosing&&Ui(e,r,t.attrs)&&this._enterNamespace(oi.HTML)}else{switch(e){case zi.PRE:case zi.TEXTAREA:case zi.LISTING:this.skipNextNewLine=!0;break;case zi.IMAGE:t.tagName=li.IMG,t.tagID=zi.IMG}this._ensureTokenizerMode(e)}this.handler.onStartTag(t)}onEndTag(t){let e=t.tagID;if(this.inForeignContent)(e===zi.SVG&&this.namespaceStack[0]===oi.SVG||e===zi.MATH&&this.namespaceStack[0]===oi.MATHML)&&this._leaveCurrentNamespace();else{const r=this.namespaceStack[1];if(r===oi.SVG){const r=Pi.get(t.tagName);r&&(e=fi(r))}Ui(e,r,t.attrs)&&this._leaveCurrentNamespace()}this.namespaceStack[0]===oi.SVG&&Li(t),this.handler.onEndTag(t)}}class Qi extends Vi.Transform{constructor(t={}){super({encoding:"utf8",decodeStrings:!1}),this.pendingText=null,this.lastChunkWritten=!1,this.stopped=!1,this.options={sourceCodeLocationInfo:!1,...t},this.parserFeedbackSimulator=new qi(this.options,this),this.tokenizer=this.parserFeedbackSimulator.tokenizer,this.pipe(new Gi)}_transform(t,e,r){if("string"!=typeof t)throw new TypeError("Parser can work only with string streams.");r(null,this._transformChunk(t))}_final(t){this.lastChunkWritten=!0,t(null,this._transformChunk(""))}stop(){this.stopped=!0,this.tokenizer.pause()}_transformChunk(t){return this.stopped||this.tokenizer.write(t,this.lastChunkWritten),t}onCharacter({chars:t,location:e}){if(null===this.pendingText)this.pendingText={text:t,sourceCodeLocation:e};else if(this.pendingText.text+=t,e&&this.pendingText.sourceCodeLocation){const{endLine:t,endCol:r,endOffset:i}=e;this.pendingText.sourceCodeLocation={...this.pendingText.sourceCodeLocation,endLine:t,endCol:r,endOffset:i}}this.tokenizer.preprocessor.willDropParsedChunk()&&this._emitPendingText()}onWhitespaceCharacter(t){this.onCharacter(t)}onNullCharacter(t){this.onCharacter(t)}onEof(){this._emitPendingText(),this.stopped=!0}onStartTag(t){this._emitPendingText();const e={tagName:t.tagName,attrs:t.attrs,selfClosing:t.selfClosing,sourceCodeLocation:t.location};this.emitIfListenerExists("startTag",e)}onEndTag(t){this._emitPendingText();const e={tagName:t.tagName,sourceCodeLocation:t.location};this.emitIfListenerExists("endTag",e)}onDoctype(t){this._emitPendingText();const e={name:t.name,publicId:t.publicId,systemId:t.systemId,sourceCodeLocation:t.location};this.emitIfListenerExists("doctype",e)}onComment(t){this._emitPendingText();const e={text:t.data,sourceCodeLocation:t.location};this.emitIfListenerExists("comment",e)}emitIfListenerExists(t,e){return 0!==this.listenerCount(t)&&(this._emitToken(t,e),!0)}_emitToken(t,e){this.emit(t,e)}_emitPendingText(){null!==this.pendingText&&(this.emitIfListenerExists("text",this.pendingText),this.pendingText=null)}}class Ki extends Qi{constructor(){super({sourceCodeLocationInfo:!0})}_transformChunk(t){return super._transformChunk(t),""}_getRawHtml(t){const{droppedBufferSize:e,html:r}=this.tokenizer.preprocessor,i=t.startOffset-e,n=t.endOffset-e;return r.slice(i,n)}emitIfListenerExists(t,e){return super.emitIfListenerExists(t,e)||this.emitRaw(this._getRawHtml(e.sourceCodeLocation)),this.parserFeedbackSimulator.skipNextNewLine=!1,!0}_emitToken(t,e){this.emit(t,e,this._getRawHtml(e.sourceCodeLocation))}emitDoctype(t){let e=`<!DOCTYPE ${t.name}`;null!==t.publicId?e+=` PUBLIC "${t.publicId}"`:null!==t.systemId&&(e+=" SYSTEM"),null!==t.systemId&&(e+=` "${t.systemId}"`),e+=">",this.push(e)}emitStartTag(t){let e=`<${t.tagName}`;for(const r of t.attrs)e+=` ${r.name}="${ji(r.value)}"`;e+=t.selfClosing?"/>":">",this.push(e)}emitEndTag(t){this.push(`</${t.tagName}>`)}emitText({text:t}){var e;this.push(!this.parserFeedbackSimulator.inForeignContent&&(e=this.tokenizer.lastStartTagName,!0,yi.has(e)||e===li.NOSCRIPT)?t:Wi(t))}emitComment(t){this.push(`\x3c!--${t.text}--\x3e`)}emitRaw(t){this.push(t)}}const Yi=new TextEncoder,Ji=new TextDecoder,Xi=/([\d.]+\s*;\s*url\s*=\s*)(.+)(\s*)/im,Zi=["http://","https://","//"],$i="mp_",tn={a:{href:$i},applet:{codebase:"oe_",archive:"oe_"},area:{href:$i},audio:{src:"oe_"},base:{href:$i},blockquote:{cite:$i},body:{background:"im_"},button:{formaction:$i},command:{icon:"im_"},del:{cite:$i},embed:{src:"oe_"},iframe:{src:"if_"},image:{src:"im_","xlink:href":"im_",href:"im_"},img:{src:"im_",srcset:"im_"},ins:{cite:$i},input:{src:"im_",formaction:$i},form:{action:$i},frame:{src:"fr_"},link:{href:"oe_"},meta:{content:$i},object:{codebase:"oe_",data:"oe_"},param:{value:"oe_"},q:{cite:$i},ref:{href:"oe_"},script:{src:"js_","xlink:href":"js_"},source:{src:"oe_",srcset:"oe_"},video:{src:"oe_",poster:"im_"}},en=[{match:/youtube.com\/v\/([^&]+)[&]/,replace:"youtube.com/embed/$1?"}],rn=[{urlMatch:/[?&]:loadOrderID=([\d]+)/,match:/(loadOrderID&(quot;&)?#x[^;]+?;)([\d]+)/gi,replace:"$1$U1"}];class nn{rewriter;rule=null;ruleMatch=null;isCharsetUTF8;constructor(t,e=!1){this.rewriter=t,this.rule=null;for(const t of rn){const e=this.rewriter.url.match(t.urlMatch);if(e){this.ruleMatch=e,this.rule=t;break}}this.isCharsetUTF8=e}rewriteMetaContent(t,e,r){let i=this.getAttr(t,"http-equiv");if(i&&(i=i.toLowerCase()),"content-security-policy"===i)e.name="_"+e.name;else{if("refresh"===i)return e.value.replace(Xi,((t,e,i,n)=>e+this.rewriteUrl(r,i)+n));if("referrer"===this.getAttr(t,"name"))return"no-referrer-when-downgrade";if(c(e.value,Zi))return this.rewriteUrl(r,e.value)}return e.value}rewriteSrcSet(t,e){const r=/\s*(\S*\s+[\d.]+[wx]),|(?:\s*,(?:\s+|(?=https?:)))/,i=[];for(const n of t.split(r))if(n){const t=n.trim().split(" ");t[0]=this.rewriteUrl(e,t[0]),i.push(t.join(" "))}return i.join(", ")}rewriteTagAndAttrs(t,e,r){const i=t=>c(t,Zi),n=t.tagName;if(!(n.indexOf("-")>0))for(const s of t.attrs){const o=s.name||"",a=s.value||"";if(a.startsWith("javascript:"))s.value="javascript:"+r.rewriteJS(a.slice(11),{inline:!0});else if(o.startsWith("on")&&"-"!=o.slice(2,3))s.value=r.rewriteJS(a,{inline:!0});else if("style"===o)s.value=r.rewriteCSS(s.value);else if("background"===o)s.value=this.rewriteUrl(r,a);else if("srcset"===o||"imagesrcset"===o&&"link"===n)s.value=this.rewriteSrcSet(a,r);else if("crossorigin"===o||"integrity"===o||"download"===o)s.name="_"+s.name;else if("meta"===n&&"content"===o)s.value=this.rewriteMetaContent(t.attrs,s,r);else if("param"===n&&i(a))s.value=this.rewriteUrl(r,s.value);else if(o.startsWith("data-")&&i(a))s.value=this.rewriteUrl(r,s.value);else if("base"===n&&"href"===o)try{s.value=this.rewriter.updateBaseUrl(s.value)}catch(t){console.warn("Invalid <base>: "+s.value)}else if("script"===n&&"src"===o){const e="module"===this.getScriptRWType(t)?"esm_":"",i=this.rewriteUrl(r,s.value,!1,e);i===s.value?(t.attrs.push({name:"__wb_orig_src",value:s.value}),s.value&&s.value.startsWith("data:text/javascript;base64")?s.value=this.rewriteJSBase64(s.value,r):s.value=this.rewriteUrl(r,s.value,!0,e)):s.value=i}else if("object"===n&&"data"===o){const e=this.getAttr(t.attrs,"type");if("application/pdf"===e)s.name="src",s.value=this.rewriteUrl(r,s.value,!1,"if_"),t.tagName="iframe";else if("image/svg+xml"===e)s.name="src",s.value=this.rewriteUrl(r,s.value),t.tagName="img";else if("application/x-shockwave-flash"===e)for(const e of en){const i=s.value.replace(e.match,e.replace);if(i!==s.value){s.name="src",s.value=this.rewriteUrl(r,i,!1,"if_"),t.tagName="iframe";break}}}else if("target"===o){const t=s.value;"_blank"!==t&&"_parent"!==t&&"_top"!==t&&"new"!==t||(s.value="___wb_replay_top_frame")}else if("src"!==o||"iframe"!==n&&"frame"!==n)("href"===o||"src"===o||e[s.name])&&(s.value=this.rewriteUrl(r,s.value));else{const t=e[o];s.value=this.rewriteUrl(r,s.value,!1,t)}}}getAttr(t,e){for(const r of t)if(r.name===e)return r.value;return null}getScriptRWType(t){const e=this.getAttr(t.attrs,"type");return"module"===e?"module":"application/json"===e?"json":!e||e.indexOf("javascript")>=0||e.indexOf("ecmascript")>=0?"js":e.startsWith("text/")?"text":"importmap"===e?"importmap":""}async rewrite(t){if(!t.buffer&&!t.reader)return t;if(t.expectedLength()>5e7)return console.warn("Skipping rewriting, HTML file too big: "+t.expectedLength()),t;const e=this.rewriter,r=new Ki;r.tokenizer.preprocessor.bufferWaterline=1/0;let i=!1,n=!1,s=!0,a="",c="",l="";const h=()=>{if(!i&&e.headInsertFunc){const t=e.headInsertFunc(e.url);t&&r.emitRaw(t),i=!0}};r.on("startTag",(t=>{const o=tn[t.tagName],u=t.tagName;switch(this.rewriteTagAndAttrs(t,o||{},e),i||["head","html"].includes(t.tagName)||h(),r.emitStartTag(t),t.tagName){case"script":if(t.selfClosing)break;a=t.tagName,s=!0,c=this.getScriptRWType(t);break;case"style":t.selfClosing||(a=t.tagName);break;case"head":h();break;case"body":n=!0}t.tagName!==u&&(a=u,l=t.tagName)})),r.on("endTag",(t=>{if(t.tagName===a){switch(l&&(t.tagName=l,l=""),a){case"head":n=!0;break;case"script":n&&!s&&"js"===c&&r.emitRaw(";document.close();")}a=""}r.emitEndTag(t)})),r.on("text",((t,i)=>{const n=(()=>{if("script"===a){const r=e.prefix,i="module"===c;return s=s&&0===t.text.trim().length,"js"===c||i?e.rewriteJS(t.text,{isModule:i,prefix:r}):"json"===c?e.rewriteJSON(t.text,{prefix:r}):"importmap"===c?e.rewriteImportmap(t.text):t.text}return"style"===a?e.rewriteCSS(t.text):this.rewriteHTMLText(i)})();for(let t=0;t<n.length;t+=o)r.emitRaw(n.slice(t,t+o))}));const u=t.createIter();let p=!1;const g=this.isCharsetUTF8;return t.setReader(new ReadableStream({async start(t){r.on("data",(e=>{t.enqueue(g?Yi.encode(e):f(e))})),r.on("end",(()=>{t.close()}));for await(const t of u)g?r.write(Ji.decode(t),"utf8"):r.write(d(t),"latin1"),p=!0;p&&h(),r.end()}})),t}rewriteUrl(t,e,r=!1,i=""){this.isCharsetUTF8||(e=Ji.decode(f(e)));const n=t.rewriteUrl(e,r);return i&&i!==$i?n.replace("mp_/",i+"/"):n}rewriteHTMLText(t){if(this.rule&&this.ruleMatch){const e=this.rule.replace.replace("$U1",this.ruleMatch[1]),r=t.replace(this.rule.match,e);if(t!==r)return r}return t}rewriteJSBase64(t,e){const r=t.split(","),i=e.rewriteJS(atob(r[1]),{isModule:!1});return r[1]=btoa(i),r.join(",")}}var sn=r(8764);const on=new TextEncoder,an=new TextDecoder;class cn{static fromResponse({url:t,response:e,date:r,noRW:i,isLive:n,archivePrefix:s}){const o=e.body?new dt(e.body.getReader(),null,!1):null,a=Number(e.headers.get("x-redirect-status")||e.status),c=e.headers.get("x-redirect-statusText")||e.statusText,l=new Headers(e.headers);let u=l.get("x-orig-location");if(u){if(u.startsWith(self.location.origin)&&(u=u.slice(self.location.origin.length)),s&&u.startsWith(s)){const t=u.indexOf("/http");t>0&&(u=u.slice(t+1))}l.set("location",u),l.delete("x-orig-location"),l.delete("x-redirect-status"),l.delete("x-redirect-statusText")}let p=null;const d=l.get("x-orig-ts");d&&(r=h(d),l.delete("x-orig-ts"),d&&u&&(p=d));const f=l.get("memento-datetime");f&&(r=new Date(f));const g=l.get("x-proxy-set-cookie");if(g){const t=[];g.split(",").forEach((e=>{const r=e.split(";",1)[0].trim();r.indexOf("=")>0&&t.push(r)})),l.delete("x-proxy-set-cookie"),t.length&&l.set("x-wabac-preset-cookie",t.join(";"))}return new cn({payload:o,status:a,statusText:c,headers:l,url:t,date:r,noRW:i,isLive:n,updateTS:p})}reader;buffer;status;statusText;url;date;extraOpts;headers;noRW;isLive;updateTS;clonedResponse=null;constructor({payload:t,status:e,statusText:r,headers:i,url:n,date:s,extraOpts:o=null,noRW:a=!1,isLive:c=!1,updateTS:l=null}){this.reader=null,this.buffer=null,t&&t instanceof pt?this.reader=t:this.buffer=t,this.status=e,this.statusText=r||b(e),this.headers=i,this.url=n,this.date=s,this.extraOpts=o,this.noRW=a,this.isLive=c,this.updateTS=l}async getText(t=!1){const e=await this.getBuffer();return"string"==typeof e?{bomFound:!1,text:e}:e?239===e[0]&&187===e[1]&&191===e[2]?{bomFound:!0,text:an.decode(e.slice(3))}:254===e[0]&&255===e[1]?{bomFound:!0,text:sn.Buffer.from(e.slice(2)).swap16().toString("utf16le")}:255===e[0]&&254===e[1]?{bomFound:!0,text:sn.Buffer.from(e.slice(2)).toString("utf16le")}:{bomFound:!1,text:t?an.decode(e):d(e)}:{bomFound:!1,text:""}}setText(t,e=!1){this.setBuffer(e?on.encode(t):f(t))}async getBuffer(){return this.buffer||!this.reader||(this.buffer=await this.reader.readFully()),this.buffer}setBuffer(t){this.buffer=t,this.reader=null}setReader(t){t instanceof pt?(this.reader=t,this.buffer=null):t.getReader&&(this.reader=new dt(t.getReader()),this.buffer=null)}expectedLength(){return this.buffer?this.buffer.length:0}createIter(){const t=this.buffer,e=this.reader;return async function*(){if(t)for(let e=0;e<t.length;e+=o)yield t.slice(e,e+o);else e&&(yield*e)}()}async*[Symbol.asyncIterator](){yield*this.createIter()}setRange(t){if(206===this.status){const t=this.headers.get("Content-Range");if(t&&!t.startsWith("bytes 0-"))return!1}const e=t.match(/^bytes=(\d+)-(\d+)?$/);let r=0;if(this.buffer)r=this.buffer.length;else if(this.reader&&(r=Number(this.headers.get("content-length")),!r))return!1;if(!e)return this.status=416,this.statusText="Range Not Satisfiable",this.headers.set("Content-Range",`*/${r}`),!1;const i=Number(e[1]),n=Number(e[2])||r-1;if(this.buffer)this.buffer=this.buffer.slice(i,n+1);else if(this.reader){if(!(this.reader instanceof ft&&this.reader.setLimitSkip))return!1;0===i&&n===r-1||this.reader.setLimitSkip(n-i+1,i)}return this.headers.set("Content-Range",`bytes ${i}-${n}/${r}`),this.headers.set("Content-Length",String(n-i+1)),this.status=206,this.statusText="Partial Content",!0}makeResponse(t=!1,e=!1){let r=null;w(this.status)||(r=this.buffer||!this.reader?this.buffer:this.reader.getReadableStream());const i=new Response(r,{status:this.status,statusText:this.statusText,headers:this.headers});return i.date=this.date,t&&(i.headers.set("Cross-Origin-Opener-Policy","same-origin"),i.headers.set("Cross-Origin-Embedder-Policy","require-corp")),e&&i.headers.set("content-disposition","inline"),i}}const ln=/(url\s*\(\s*[\\"']*)([^)'"]+)([\\"']*\s*\))/gi,hn=/(@import\s*[\\"']*)([^)'";]+)([\\"']*\s*;?)/gi,un=/WB_wombat_/g,pn=/^(?:\s*(?:(?:\/\*[^*]*\*\/)|(?:\/\/[^\n]+[\n])))*\s*([\w.]+)\([{[]/,dn=/[?].*(?:callback|jsonp)=([^&]+)/i,fn=new Gt(class extends zt{extraRules;firstBuff;lastBuff;constructor(t){super(),this.extraRules=t,this.firstBuff=this.initLocalDecl(Lr),this.lastBuff="\n\n}"}initLocalDecl(t){const e="_____WB$wombat$assign$function_____";let r=`var ${e} = function(name) {return (self._wb_wombat && self._wb_wombat.local_init && self._wb_wombat.local_init(name)) || self[name]; };\nif (!self.__WB_pmw) { self.__WB_pmw = function(obj) { this.__WB_source = obj; return this; } }\n{\n`;for(const i of t)r+=`let ${i} = ${e}("${i}");\n`;return r+="let arguments;\n",r+"\n"}getModuleDecl(t,e){return`import { ${t.join(", ")} } from "${e}__wb_module_decl.js";\n`}detectIsModule(t){return!!(t.indexOf("import")>=0&&t.match(Or))||!!(t.indexOf("export")>=0&&t.match(Br))}parseGlobals(t){const e=Ne.parse(t,{ecmaVersion:"latest"});let r=!1;const i=[],n=new Set;for(const t of e.body){const{type:e}=t;if("VariableDeclaration"===e){const{kind:e,declarations:r}=t;for(const t of r)if(t&&"VariableDeclarator"===t.type&&t.id&&"Identifier"===t.id.type){const r=t.id.name;Lr.includes(r)?n.add(r):"const"!==e&&"let"!==e||i.push(`self.${r} = ${r};`)}}else if(!r&&"ExpressionStatement"===e){const{expression:e}=t;if(e&&"CallExpression"===e.type){const{callee:t}=e;if(t&&"MemberExpression"===t.type){const{object:e,property:i}=t;"Identifier"===e.type&&"document"===e.name&&"Identifier"===i.type&&"write"===i.name&&(r=!0)}}}}if(n.size){const t=Lr.filter((t=>!n.has(t)));this.firstBuff=this.initLocalDecl(t)}return r&&(this.lastBuff=";document.close();"+this.lastBuff),i.length?"\n"+i.join("\n"):""}rewrite(t,e){void 0!==(e=e||{}).isModule&&null!==e.isModule||(e.isModule=this.detectIsModule(t));let r=Fr;e.isModule&&(r=[...r,this.getESMImportRule()]),this.extraRules&&this.extraRules.length?this.rules=[...r,...this.extraRules]:this.rules=r,this.compileRules();let i=super.rewrite(t,e);if(e.isModule)return this.getModuleDecl(Lr,e.prefix)+i;const n=Mr.exec(t);if(e.inline&&(i=i.replace(/\n/g," ")),n){let r="";if(i)try{r=this.parseGlobals(i)}catch(t){console.warn(`acorn parsing failed, script len ${i.length}`)}i=this.firstBuff+i+r+this.lastBuff,e.inline&&(i=i.replace(/\n/g," "))}return i}getESMImportRule(){return[Pr,(t,e)=>{const r=e.prefix.replace("mp_/","esm_/");return t.replace(Dr,((t,i,n,s)=>{try{n=new URL(n,e.baseUrl).href,n=r+n}catch(t){}return i+n+s}))}]}}),gn=new Gt(zt);new Gt(zt,Ht);class yn{urlRewrite;contentRewrite;baseUrl;dsRules;decode;prefix;relPrefix="";schemeRelPrefix="";scheme;url;responseUrl;isCharsetUTF8;headInsertFunc;workerInsertFunc;_jsonpCallback;constructor({baseUrl:t,prefix:e,responseUrl:r,workerInsertFunc:i=null,headInsertFunc:n=null,urlRewrite:s=!0,contentRewrite:o=!0,decode:a=!0,useBaseRules:c=!1}){if(this.urlRewrite=s,this.contentRewrite=o,this.dsRules=s&&!c?fn:gn,this.decode=a,this.prefix=e||"",this.prefix&&s){const t=new URL(this.prefix);this.relPrefix=t.pathname,this.schemeRelPrefix=this.prefix.slice(t.protocol.length)}const l=new URL(r||t);this.scheme=l.protocol,t.startsWith("//")&&(t=this.scheme+t),this.url=this.baseUrl=t,this.headInsertFunc=n,this.workerInsertFunc=i,this.responseUrl=r||t,this.isCharsetUTF8=!1,this._jsonpCallback=null}getRewriteMode(t,e,r="",i=""){if(!i&&e){const t=(i=e.headers.get("Content-Type")||"").split(";");i=t[0],t.length>1&&(this.isCharsetUTF8="utf8"===t[1].trim().toLowerCase().replace("charset=","").replace("-",""))}if(i=i.toLowerCase(),"esm_"===t.mod&&(this.isCharsetUTF8=!0),t)switch(t.destination){case"style":return"css";case"script":return this.getScriptRewriteMode(i,r,"js");case"worker":return"js-worker"}switch(i){case"text/html":return t.destination||"application/json"!==t.headers.get("Accept")?"html":"json";case"text/css":return"css";case"application/x-mpegurl":case"application/vnd.apple.mpegurl":return"hls";case"application/dash+xml":return"dash";default:return this.getScriptRewriteMode(i,r)}}getScriptRewriteMode(t,e,r=""){switch(t){case"text/javascript":case"application/javascript":case"application/x-javascript":return this.parseJSONPCallback(e)?"jsonp":e.endsWith(".json")?"json":"js";case"application/json":return"json";default:return r}}async rewrite(t,e){const r=this.contentRewrite?this.getRewriteMode(e,t,this.baseUrl):null,i=A(e),n=this.urlRewrite&&!i,s=this.rewriteHeaders(t.headers,this.urlRewrite,!!r,i),o=t.headers.get("content-encoding"),a=t.headers.get("transfer-encoding");t.headers=s,this.decode&&(o||a)&&(t=await async function(t,e,r,i){if(t.reader&&i&&("gzip"===e&&!r||!e&&"gzip"===r))return t.setReader(new dt(t.reader)),t;const n=await t.getBuffer()||[],s=new Uint8Array(n),o=await Bt(s,e,r);return s!==o&&t.setBuffer(o),t}(t,o,a,null===r));const c={response:t,prefix:this.prefix,baseUrl:this.baseUrl};let l=null;switch(r){case"html":if(n)return await this.rewriteHtml(t);break;case"css":this.urlRewrite&&(l=this.rewriteCSS);break;case"js":l=this.rewriteJS,"esm_"===e.mod&&(c.isModule=!0);break;case"json":l=this.rewriteJSON;break;case"js-worker":l=this.workerInsertFunc;break;case"jsonp":l=this.rewriteJSONP;break;case"hls":l=Lt;break;case"dash":l=Mt}if(n&&(c.rewriteUrl=t=>this.rewriteUrl(t)),l){let{bomFound:e,text:r}=await t.getText(this.isCharsetUTF8);if(r=l.call(this,r,c),e&&!this.isCharsetUTF8){let t=s.get("Content-Type")||"";const e=t.split(";");t=e[0],t&&s.set("Content-Type",t+"; charset=utf-8"),this.isCharsetUTF8=!0}t.setText(r,this.isCharsetUTF8)}return t}updateBaseUrl(t){if(this.baseUrl=new URL(t,this.baseUrl).href,t&&this.baseUrl!=t)try{t=new URL(t).href}catch(e){t.startsWith("//")&&(t=(t=new URL("https:"+t).href).slice(6))}return this.rewriteUrl(t)}isRewritableUrl(t){const e=["#","javascript:","data:","mailto:","about:","file:","blob:","{"];for(const r of e)if(t.startsWith(r))return!1;return!0}rewriteUrl(t,e=!1){if(!this.urlRewrite)return t;const r=t;return!(t=t.trim())||!this.isRewritableUrl(t)||t.startsWith(this.prefix)||t.startsWith(this.relPrefix)?r:t.startsWith("http:")||t.startsWith("https:")||t.startsWith("https\\3a/")?this.prefix+t:t.startsWith("//")||t.startsWith("\\/\\/")?this.schemeRelPrefix+t:t.startsWith("/")?(t=new URL(t,this.baseUrl).href,this.relPrefix+t):e||t.indexOf("../")>=0?(t=new URL(t,this.baseUrl).href,this.prefix+t):r}async rewriteHtml(t){return new nn(this,this.isCharsetUTF8).rewrite(t)}rewriteCSS(t){const e=this;function r(t,r,i,n){return i=i.trim(),r+e.rewriteUrl(i)+n}return t.replace(ln,r).replace(hn,r).replace(un,"")}rewriteJS(t,e){const r=e&&!e.rewriteUrl&&void 0===e.isModule&&!e.inline,i=r?gn:this.dsRules,n=i.getRewriter(this.baseUrl);return n===i.defaultRewriter&&r?t:n.rewrite(t,e)}rewriteJSON(t,e){t=this.rewriteJSONP(t);const r=gn.getRewriter(this.baseUrl);return r!==gn.defaultRewriter?r.rewrite(t,e):t}rewriteImportmap(t){try{const e=JSON.parse(t),r={},i={imports:r};for(const[t,i]of Object.entries(e.imports||{}))r[this.rewriteUrl(t).replace("mp_/","esm_/")]=i;if(e.scopes){const t={};for(const[r,i]of Object.entries(e.scopes||{})){const e={};for(const[t,r]of Object.entries(i))e[this.rewriteUrl(t).replace("mp_/","esm_/")]=r;t[this.rewriteUrl(r).replace("mp_/","esm_/")]=e}i.scopes=t}return JSON.stringify(i,null,2)}catch(e){return console.warn("Error parsing importmap",e),t}}parseJSONPCallback(t){const e=t.match(dn);return e&&"?"!==e[1]?(this._jsonpCallback=e[1],!0):(this._jsonpCallback=!1,!1)}rewriteJSONP(t){const e=t.match(pn);return e?(null===this._jsonpCallback&&this.parseJSONPCallback(this.baseUrl),!1===this._jsonpCallback?t:this._jsonpCallback+t.slice(t.indexOf(e[1])+e[1].length)):t}rewriteHeaders(t,e,r,i){const n={"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:"link",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","origin-agent-cluster":"prefix"},s="X-Archive-Orig-",o=new Headers;for(let[a,c]of t.entries())switch(n[a]){case"keep":case"cookie":default:o.append(a,c);break;case"url-rewrite":if(e){if("location"===a&&this.url!==this.responseUrl){const t="http:"===this.scheme?"https:":"http:";c===t+this.responseUrl.slice(this.scheme.length)&&(c=t+this.url.slice(this.url.indexOf("//")))}o.append(a,this.rewriteUrl(c))}else o.append(a,c);break;case"prefix-if-content-rewrite":r?o.append(s+a,c):o.append(a,c);break;case"prefix-if-url-rewrite":e?o.append(s+a,c):o.append(a,c);break;case"content-length":if("0"==c){o.append(a,c);continue}if(r)try{if(parseInt(c)>=0){o.append(a,c);continue}}catch(t){}o.append(a,c);break;case"transfer-encoding":case"prefix":o.append(s+a,c);break;case"link":e&&!i?o.append(a,this.rewriteLinkHeader(c)):o.append(a,c)}return o}rewriteLinkHeader(t){try{const e=i().parse(t);for(const t of e.refs)t.uri&&(t.uri=this.rewriteUrl(t.uri));return e.toString()}catch(e){return console.warn("Error parsing link header: "+t),t}}}class mn{_buffer=[];_lastChunkEndedWithCR=!1;decoder=new TextDecoder;transform(t,e){const r=this.decoder.decode(t),i=r.split(/\r\n|[\n\v\f\r\x85\u2028\u2029]/g),n=this._buffer;for(this._lastChunkEndedWithCR&&r.startsWith("\n")&&i.shift(),n.length>0&&(n[n.length-1]+=i[0],i.shift()),this._lastChunkEndedWithCR=r.endsWith("\r");n.length>1;){const t=n.shift();t?.length&&e.enqueue(t)}for(;i.length>1;){const t=i.shift();t?.length&&e.enqueue(t)}}flush(t){const e=this._buffer;for(;e.length;){const r=e.shift();r?.length&&t.enqueue(r)}}}class wn extends TransformStream{constructor(){super(new mn)}}function bn(t,e,r=200){const i=(new TextEncoder).encode(t),n={status:r,statusText:b(r),headers:{"Content-Type":e,"Content-Length":i.length+""}};return new Response(i,n)}function An(t,e,r){return`/* \n ${t} Not Found\n URL: ${e}\n TS: ${r}\n*/\n `}class vn{name;store;config;metadata;injectScripts;noRewritePrefixes;noPostToGet;convertPostToGet;coHeaders;csp;injectRelCanon;baseFramePrefix;baseFrameUrl;baseFrameHashReplay=!1;liveRedirectOnNotFound=!1;rootPrefix;isRoot;prefix;adblockUrl;staticPrefix;constructor(t,e,r={}){const{name:i,store:n,config:s}=t;this.name=i,this.store=n,this.config=s,this.metadata=this.config.metadata?this.config.metadata:{};const o={...r,...this.config.extraConfig};this.injectScripts=o.injectScripts||[],this.noRewritePrefixes=o.noRewritePrefixes||null,this.noPostToGet=!!o.noPostToGet,this.convertPostToGet=!!o.convertPostToGet,this.coHeaders=o.coHeaders||!1,this.csp=o.csp||"default-src 'unsafe-eval' 'unsafe-inline' 'self' data: blob: mediastream: ws: wss: ; form-action 'self'",this.injectRelCanon=o.injectRelCanon||!1,this.baseFramePrefix=o.baseUrlSourcePrefix,this.baseFrameUrl=o.baseUrl,this.baseFrameHashReplay=o.baseUrlHashReplay||!1,this.liveRedirectOnNotFound=o.liveRedirectOnNotFound||!1,this.rootPrefix=e.root||e.main,this.adblockUrl=o.adblockUrl,this.prefix=e.main,this.config.root?this.isRoot=!0:(this.prefix+=this.name+"/",this.isRoot=!1),this.staticPrefix=e.static}async handleRequest(t,e){let r=t.url,i=t.timestamp;if(!t.mod)return await this.makeTopFrame(r,i);this.noPostToGet||(r=await t.convertPostToGet());let n=null,s=r;try{if(r.startsWith("srcdoc:"))n=this.getSrcDocResponse(r,r.slice(7));else if(r.startsWith("blob:")){const t=r.indexOf("/"),e=r.slice(5,t),i=`blob:${self.location.origin}/${e}`;s=r.slice(t+1),n=await this.getBlobResponse(i)}else"about:blank"===r?n=await this.getSrcDocResponse(r):"__wb_module_decl.js"===r?n=await this.getWrappedModuleDecl():this.adblockUrl&&r.startsWith("adblock:")?n=await async function(t,e){const r=t.split("."),i=[];for(let t=0;t<r.length-1;t++)"www"!==r[t]&&i.push(r.slice(t).join("."));const n=i.length?i[i.length-1]:"";let s=(await fetch(e)).body;const o=new Headers({"Content-Type":"text/css"});if(!s)return new Response("",{status:400,headers:o,statusText:"Not Found"});e.endsWith(".gz")&&(s=s.pipeThrough(new self.DecompressionStream("gzip")));const a=s.pipeThrough(new wn),c=new TextEncoder,l=async function*(){for await(const t of async function*(t){try{let e;const r=t.getReader();for(;(e=await r.read())&&!e.done;){const t=e.value;if(n&&t.indexOf(n)>=0){const e=t.split("##");if(e.length<2)continue;if(e[0].endsWith("#@"))continue;const r=e[0].split(",");for(const t of i)if(r.includes(t)){yield e[1];break}}else!n&&t.startsWith("##")&&(yield t.slice(2))}}catch(t){console.warn(t)}}(a))yield c.encode(`${t} {\n display: none !important;\n}\n\n`)}(),h=new ReadableStream({pull:async t=>l.next().then((e=>{e.done||!e.value?t.close():t.enqueue(e.value)}))});return new Response(h,{status:200,statusText:"OK",headers:o})}(r.slice(8),this.adblockUrl):(n=await this.getReplayResponse(t,e),r=t.url,n&&n instanceof cn&&n.updateTS&&(i=n.updateTS))}catch(e){if(await v(e,this.config))return _(t.request,'<p style="margin: auto">Please wait, this page will reload after authentication...</p>',401)}if(!n){try{r=decodeURIComponent(r),r+=t.hash}catch(t){}return function(t,e,r,i=!1,n=404){let s,o;switch(t.destination){case"json":case"":s=function(t,e,r="not_found"){return JSON.stringify({error:r,URL:t,TS:e})}(e,r),o="application/json; charset=utf-8";break;case"script":s=An("Script",e,r),o="text/javascript; charset=utf-8";break;case"style":s=An("CSS",e,r),o="text/css; charset=utf-8";break;default:s=function(t,e,r,i){return`\n <!doctype html>\n <html>\n <head>\n <script>\n window.requestURL = "${e}";\n <\/script>\n </head>\n <body style="font-family: sans-serif">\n <h2>Archived Page Not Found</h2>\n <p>Sorry, this page was not found in this archive:</p>\n <p><code id="url" style="word-break: break-all; font-size: larger"></code></p>\n ${i&&"navigate"===t.mode?"\n <p>Redirecting to live page now... (If this URL is a file download, the download should have started).</p>\n <script>\n window.top.location.href = window.requestURL;\n <\/script>\n ":"\n "}\n <p id="goback" style="display: none"><a href="#" onclick="window.history.back()">Go Back</a> to the previous page.</a></p>\n \n <p>\n <a id="livelink" target="_blank" href="">Load the live page</a> in a new tab (or download the file, if this URL points to a file).\n </p>\n\n <script>\n document.querySelector("#url").innerText = window.requestURL;\n document.querySelector("#livelink").href = window.requestURL;\n let isTop = true;\n try {\n if (window.parent._WB_wombat_location) {\n isTop = false;\n }\n } catch (e) {\n\n }\n if (isTop) {\n document.querySelector("#goback").style.display = "";\n\n window.parent.postMessage({\n wb_type: "archive-not-found",\n url: window.requestURL,\n ts: "${r}"\n }, "*");\n }\n <\/script>\n </body>\n </html>\n `}(t,e,r,i),o="text/html; charset=utf-8"}return bn(s,o,n)}(t,r,i,this.liveRedirectOnNotFound)}if(n instanceof Response)return n;if(!n.noRW){const e=this.prefix+(t.pageId?`:${t.pageId}/`:""),o=e+i,a=n,c=r=>{const n=a.headers.get("x-wabac-preset-cookie")||"",s=a.headers.get("Set-Cookie"),c=o+(i?"/":"")+r;return this.makeHeadInsert(r,i,a.date,c,e,n,s,a.isLive,t.referrer,a.extraOpts)},l=t=>`\n (function() { self.importScripts('${this.staticPrefix}wombatWorkers.js'); new WBWombat({'prefix': '${o}/', 'prefixMod': '${o}wkrf_/', 'originalURL': '${r}'}); })();`+t,h=t.mod,u="id_"===h||"wkrf_"===h,p=o+h+"/",d={baseUrl:s,responseUrl:n.url,prefix:p,headInsertFunc:c,workerInsertFunc:l,urlRewrite:!u,contentRewrite:!u,decode:this.config.decode},f=new yn(d);n=await f.rewrite(n,t),"id_"!==h&&n.headers.append("Content-Security-Policy",this.csp)}const o=t.headers.get("range");!o||200!==n.status&&206!==n.status||n.setRange(o);const a="iframe"===t.destination||"document"===t.destination;return n.makeResponse(this.coHeaders,a)}getCanonRedirect(t){let{url:e,timestamp:r,mod:i,referrer:n}=t;const s=e.startsWith("//");s&&(e=(n&&n.indexOf("/http://")>0?"http:":"https:")+e);try{const n=new URL(e);if(n.href!==e){if("/"===n.pathname){let t=this.prefix+r+i;return(r||i)&&(t+="/"),t+=n.href,Response.redirect(t,301)}(!s&&e.indexOf(":443")||e.indexOf(":80"))&&(t.url=n.href)}}catch(t){}return null}getWrappedModuleDecl(){const t=(new TextEncoder).encode('\n var wrapObj = 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\n const window = wrapObj("window");\n const document = wrapObj("document");\n const location = wrapObj("location");\n const top = wrapObj("top");\n const parent = wrapObj("parent");\n const frames = wrapObj("frames");\n const opener = wrapObj("opener");\n const __self = wrapObj("self");\n const __globalThis = wrapObj("globalThis");\n\n export { window, document, location, top, parent, frames, opener, __self as self, __globalThis as globalThis };\n '),e=new Headers({"Content-Type":"application/javascript"});return new Response(t,{headers:e,status:200,statusText:"OK"})}getSrcDocResponse(t,e){const r=e?decodeURIComponent(atob(e)):"<html><head></head><body></body></html>",i=(new TextEncoder).encode(r),n=new Headers({"Content-Type":"text/html"}),s=new Date;return new cn({payload:i,status:200,statusText:"OK",headers:n,url:t,date:s})}async getBlobResponse(t){const e=await fetch(t),r=e.status,i=e.statusText,n=new Headers(e.headers);"application/xhtml+xml"===n.get("content-type")&&n.set("content-type","text/html");const s=new Date,o=new Uint8Array(await e.arrayBuffer());return new cn({payload:o,status:r,statusText:i,headers:n,url:t,date:s})}async getReplayResponse(t,e){let r=this.getCanonRedirect(t);if(r)return r;const i={pageId:t.pageId,noRedirect:t.isProxyOrigin};return r=await this.store.getResource(t,this.prefix,e,i),r}async makeTopFrame(t,e){let r="";if(this.baseFrameUrl&&!this.baseFramePrefix?r=this.baseFrameUrl:!this.isRoot&&this.config.sourceUrl&&(r=this.baseFramePrefix||"./",r+=`?source=${this.config.sourceUrl}`),r)return this.baseFrameHashReplay?r+=`#${e}/${t}`:r+="#"+new URLSearchParams({url:t,ts:e,view:"replay"}).toString(),Response.redirect(r);let i="";if(this.config.topTemplateUrl){const r=await fetch(this.config.topTemplateUrl);i=(await r.text()).replace("$URL",t).replace("$TS",e).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" name="___wb_replay_top_frame" frameborder="0" seamless="seamless" scrolling="yes" class="wb_iframe" allow="autoplay; fullscreen"></iframe>\n</div>\n<script>\n var cframe = new ContentFrame({"url": "${t}",\n "app_prefix": "${this.prefix}",\n "content_prefix": "${this.prefix}",\n "request_ts": "${e}",\n "iframe": "#replay_iframe"});\n\n<\/script>\n</body>\n</html>\n`;const n={status:200,statusText:"OK",headers:{"Content-Type":"text/html","Content-Security-Policy":this.csp}};return new Response(i,n)}makeHeadInsert(t,e,r,i,n,s,o,c,h,u){const p=this.name,d=function(t){if(!t)return"";try{return""+t.getTime()/1e3}catch(t){return""}}(r),f=l(r.toISOString()),g=new URL(t);let y;y="https:"!==g.protocol&&"http:"!==g.protocol?h&&h.indexOf("/http://")>0?"http":"https":g.protocol.slice(0,-1),o&&(s=function(t,e){t=t.replace(a,"");const r=[];for(const i of t.split(",")){const t=i.split(";",1)[0];if(t!==i){const r=i.slice(t.length).toLowerCase();if(r.indexOf("httponly")>0)continue;if("http"===e&&r.indexOf("secure")>0)continue}r.push(t)}return r.join(";")}(o,y)+";"+s);const m=u&&Number(u.pixelRatio)?u.pixelRatio:1,w=u?.storage?btoa(u.storage):"",b=s?JSON.stringify(s):'""';return`\n\x3c!-- WB Insert --\x3e\n${this.adblockUrl?`\n<link rel='stylesheet' href="${n}mp_/adblock:${g.hostname}"/>\n<link rel='stylesheet' href="${n}mp_/adblock:"/>\n`:""}\n<style>\nbody {\n font-family: inherit;\n font-size: inherit;\n}\n</style>\n${this.injectRelCanon?`<link rel="canonical" href="${t}"/>`:""}\n<script>\n wbinfo = {};\n wbinfo.top_url = "${i}";\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 = "${t}";\n wbinfo.timestamp = "${f}";\n wbinfo.request_ts = "${e}";\n wbinfo.prefix = decodeURI("${n}");\n wbinfo.mod = "mp_";\n wbinfo.is_framed = true;\n wbinfo.is_live = ${c?"true":"false"};\n wbinfo.coll = "${p}";\n wbinfo.proxy_magic = "";\n wbinfo.static_prefix = "${this.staticPrefix}";\n wbinfo.enable_auto_fetch = true;\n wbinfo.presetCookie = ${b};\n wbinfo.storage = "${w}";\n wbinfo.isSW = true;\n wbinfo.injectDocClose = true;\n wbinfo.pixel_ratio = ${m};\n wbinfo.convert_post_to_get = ${this.convertPostToGet};\n wbinfo.target_frame = "___wb_replay_top_frame";\n<\/script>\n<script src='${this.staticPrefix}wombat.js'> <\/script>\n<script>\n wbinfo.wombat_ts = "${c?f:e}";\n wbinfo.wombat_sec = "${d}";\n wbinfo.wombat_scheme = "${y}";\n wbinfo.wombat_host = "${g.host}";\n\n ${this.noRewritePrefixes?`\n wbinfo.wombat_opts = {"no_rewrite_prefixes": ${JSON.stringify(this.noRewritePrefixes)}}`:"\n wbinfo.wombat_opts = {}\n "}\n\n if (window && window._WBWombatInit) {\n window._WBWombatInit(wbinfo);\n }\n<\/script>\n${this.injectScripts.map((t=>`<script src='${t}'> <\/script>`)).join("")}\n `}}const _n=(t,e)=>e.some((e=>t instanceof e));let En,Sn;const Tn=new WeakMap,xn=new WeakMap,Cn=new WeakMap,In=new WeakMap,Rn=new WeakMap;let kn={get(t,e,r){if(t instanceof IDBTransaction){if("done"===e)return xn.get(t);if("objectStoreNames"===e)return t.objectStoreNames||Cn.get(t);if("store"===e)return r.objectStoreNames[1]?void 0:r.objectStore(r.objectStoreNames[0])}return Bn(t[e])},set:(t,e,r)=>(t[e]=r,!0),has:(t,e)=>t instanceof IDBTransaction&&("done"===e||"store"===e)||e in t};function Nn(t){kn=t(kn)}function On(t){return"function"==typeof t?function(t){return t!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?(Sn||(Sn=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(t)?function(...e){return t.apply(Pn(this),e),Bn(Tn.get(this))}:function(...e){return Bn(t.apply(Pn(this),e))}:function(e,...r){const i=t.call(Pn(this),e,...r);return Cn.set(i,e.sort?e.sort():[e]),Bn(i)}}(t):(t instanceof IDBTransaction&&function(t){if(xn.has(t))return;const e=new Promise(((e,r)=>{const i=()=>{t.removeEventListener("complete",n),t.removeEventListener("error",s),t.removeEventListener("abort",s)},n=()=>{e(),i()},s=()=>{r(t.error||new DOMException("AbortError","AbortError")),i()};t.addEventListener("complete",n),t.addEventListener("error",s),t.addEventListener("abort",s)}));xn.set(t,e)}(t),_n(t,En||(En=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction]))?new Proxy(t,kn):t)}function Bn(t){if(t instanceof IDBRequest)return function(t){const e=new Promise(((e,r)=>{const i=()=>{t.removeEventListener("success",n),t.removeEventListener("error",s)},n=()=>{e(Bn(t.result)),i()},s=()=>{r(t.error),i()};t.addEventListener("success",n),t.addEventListener("error",s)}));return e.then((e=>{e instanceof IDBCursor&&Tn.set(e,t)})).catch((()=>{})),Rn.set(e,t),e}(t);if(In.has(t))return In.get(t);const e=On(t);return e!==t&&(In.set(t,e),Rn.set(e,t)),e}const Pn=t=>Rn.get(t);function Dn(t,e,{blocked:r,upgrade:i,blocking:n,terminated:s}={}){const o=indexedDB.open(t,e),a=Bn(o);return i&&o.addEventListener("upgradeneeded",(t=>{i(Bn(o.result),t.oldVersion,t.newVersion,Bn(o.transaction),t)})),r&&o.addEventListener("blocked",(t=>r(t.oldVersion,t.newVersion,t))),a.then((t=>{s&&t.addEventListener("close",(()=>s())),n&&t.addEventListener("versionchange",(t=>n(t.oldVersion,t.newVersion,t)))})).catch((()=>{})),a}function Ln(t,{blocked:e}={}){const r=indexedDB.deleteDatabase(t);return e&&r.addEventListener("blocked",(t=>e(t.oldVersion,t))),Bn(r).then((()=>{}))}const Un=["get","getKey","getAll","getAllKeys","count"],Mn=["put","add","delete","clear"],Fn=new Map;function Hn(t,e){if(!(t instanceof IDBDatabase)||e in t||"string"!=typeof e)return;if(Fn.get(e))return Fn.get(e);const r=e.replace(/FromIndex$/,""),i=e!==r,n=Mn.includes(r);if(!(r in(i?IDBIndex:IDBObjectStore).prototype)||!n&&!Un.includes(r))return;const s=async function(t,...e){const s=this.transaction(t,n?"readwrite":"readonly");let o=s.store;return i&&(o=o.index(e.shift())),(await Promise.all([o[r](...e),n&&s.done]))[0]};return Fn.set(e,s),s}Nn((t=>({...t,get:(e,r,i)=>Hn(e,r)||t.get(e,r,i),has:(e,r)=>!!Hn(e,r)||t.has(e,r)})));const jn=["continue","continuePrimaryKey","advance"],Wn={},Vn=new WeakMap,Gn=new WeakMap,zn={get(t,e){if(!jn.includes(e))return t[e];let r=Wn[e];return r||(r=Wn[e]=function(...t){Vn.set(this,Gn.get(this)[e](...t))}),r}};async function*qn(...t){let e=this;if(e instanceof IDBCursor||(e=await e.openCursor(...t)),!e)return;const r=new Proxy(e,zn);for(Gn.set(r,e),Rn.set(r,Pn(e));e;)yield r,e=await(Vn.get(r)||e.continue()),Vn.delete(r)}function Qn(t,e){return e===Symbol.asyncIterator&&_n(t,[IDBIndex,IDBObjectStore,IDBCursor])||"iterate"===e&&_n(t,[IDBIndex,IDBObjectStore])}Nn((t=>({...t,get:(e,r,i)=>Qn(e,r)?qn:t.get(e,r,i),has:(e,r)=>Qn(e,r)||t.has(e,r)})));var Kn=r(9991),Yn=r.n(Kn);const Jn=1024,Xn=/\[\d]+/,Zn=[{match:/\/\/.*(?:gcs-vimeo|vod|vod-progressive|vod-adaptive)\.akamaized\.net.*?\/([\d/]+\.mp4)/,fuzzyCanonReplace:"//vimeo-cdn.fuzzy.replayweb.page/$1",split:".net"},{match:/\/\/.*player.vimeo.com\/(video\/[\d]+)\?.*/i,fuzzyCanonReplace:"//vimeo.fuzzy.replayweb.page/$1"},{match:/www.\washingtonpost\.com\/wp-apps\/imrs.php/,args:[["src"]]},{match:/(static.wixstatic.com\/.*\.[\w]+\/v1\/fill\/)(w_.*)/,replace:"$1?_args=$2",split:"/v1/fill"},{match:/(twimg.com\/profile_images\/[^/]+\/[^_]+)_([\w]+\.[\w]+)/,replace:"$1=_args=$2",split:"_",splitLast:!0},{match:/^https?:\/\/(?:www\.)?(youtube\.com\/embed\/[^?]+)[?].*/i,replace:"$1"},{match:/^(https?:\/\/(?:www\.)?)(youtube\.com\/@[^?]+)[?].*/i,fuzzyCanonReplace:"$1$2"},{match:/\/\/(?:www\.)?youtube(?:-nocookie)?\.com\/(get_video_info)/i,fuzzyCanonReplace:"//youtube.fuzzy.replayweb.page/$1",args:[["video_id"]]},{match:/\/\/(?:www\.)?youtube(?:-nocookie)?\.com\/(youtubei\/v1\/[^?]+\?).*(videoId[^&]+).*/i,fuzzyCanonReplace:"//youtube.fuzzy.replayweb.page/$1$2",args:[["videoId"]]},{match:/\/\/.*googlevideo.com\/(videoplayback)/i,fuzzyCanonReplace:"//youtube.fuzzy.replayweb.page/$1",args:[["id","itag"],["id"]],fuzzyArgs:!0},{match:/facebook\.com\/ajax\/pagelet\/generic.php\/photoviewerinitpagelet/i,args:[[{arg:"data",keys:["query_type","fbid","v","cursor","data"]}]]},{match:/((?:twitter|x)\.com\/[^/]+\/status\/[^?]+)(\?.*)/,fuzzyCanonReplace:"$1"},{match:/((?:twitter|x)\.com\/i\/api\/graphql\/.*)/,args:[["cursor"]],fuzzyArgs:!0},{match:/facebook\.com\/ajax\//i,fuzzySet:!0},{match:($n=["(callback=jsonp)[^&]+(?=&|$)","((?:\\w+)=jquery)[\\d]+_[\\d]+","utm_[^=]+=[^&]+(?=&|$)","(_|cb|_ga|\\w*cache\\w*)=[\\d.-]+(?=$|&)"],new RegExp("[?&]"+$n.map((t=>"("+t+")")).join("|"),"gi")),replace:""},{match:/(\.(?:js|webm|mp4|gif|jpg|png|css|json|m3u8))\?.*/i,replace:"$1",maxResults:2}];var $n;const ts=new class{rules;constructor(t){this.rules=t||Zn}getRuleFor(t){let e;const r=-1===t.indexOf("?")?t+"?":t;for(const t of this.rules)if(r.length<4096&&r.match(t.match)){e=t;break}let i=t;e?.fuzzyCanonReplace&&(i=t.replace(e.match,e.fuzzyCanonReplace));const n=e?.split||"?",s=e?.splitLast?t.lastIndexOf(n):t.indexOf(n);return{prefix:s>0?t.slice(0,s+n.length):t,rule:e,fuzzyCanonUrl:i}}getFuzzyCanonsWithArgs(t){let{fuzzyCanonUrl:e,prefix:r,rule:i}=this.getRuleFor(t);e===t&&(e=r);const n=[];if(i?.args){const r=new URL(e),s=new URL(t);for(const t of i.args){const e=new URLSearchParams;for(const r of t)e.set(r,s.searchParams.get(r)||"");r.search=e.toString(),n.push(r.href)}return n}return[e]}fuzzyCompareUrls(t,e,r){if(!e?.length)return null;if(void 0!==r?.replace&&void 0!==r.match&&(!r.maxResults||e.length<=r.maxResults)){const i=r.match,n=r.replace,s=t.replace(i,n),o=[];for(const t of e){const e=t.url.replace(i,n);if(s===e)return t;t.fuzzyMatchUrl=e,o.push(t)}e=o,t=s}return this.fuzzyBestMatchQuery(t,e,r)}fuzzyBestMatchQuery(t,e,r){let i;try{i=new URL(t)}catch(t){return null}const n=r?.args&&!r.fuzzyArgs?new Set(r.args[0]):null;let s=0,o=null;const a=new URLSearchParams(i.search);for(const i of e){if(204===i.status||304===i.status)continue;let e;try{e=new URL(i.fuzzyMatchUrl||i.url)}catch(t){continue}const c=new URLSearchParams(e.search);let l=this.getMatch(a,c,n,r?.fuzzySet);l+=this.getMatch(c,a,n),l/=2,i.status>200&&(l*=10**(1e-4*(200-i.status))),l>s&&(s=l,o=i)}return o}getMatch(t,e,r=null,i=!1){let n=1,s=1;const o={};for(let[a,c]of t){let t,l=e.get(a);if(r&&r.has(a)&&l!==c)return-1e3;t=a.startsWith("_")?.1:10,null!==l&&(n+=.5*t,l.length>Jn&&(l=l.slice(0,Jn))),c&&c.length>Jn&&(c=c.slice(0,Jn));const h=Number(c),u=Number(l);if(s+=t,i&&l&&this.addSetMatch(o,a,c,l),l===c)n+=t*c.length;else if(null===l||null===c)n+=0;else if(isNaN(h)||isNaN(u))if(c.startsWith("{")&&l.startsWith("{"))try{const e=it(c),r=it(l);n+=this.getMatch(e,r)*t*2}catch(e){n+=.5*t*this.levScore(c,l)}else i||(n+=t*this.levScore(c,l));else n+=10-Math.log(Math.abs(h-u)+1)}return n/s+(i?this.paramSetMatch(o,100):0)}addSetMatch(t,e,r,i){if(!(r&&i&&r.startsWith("/")&&i.startsWith("/")))return;const n=e.split(Xn);if(n.length<=1)return;const s=r.indexOf("?"),o=i.indexOf("?"),a=n[0],c=s>0?r.slice(0,s):r,l=o>0?i.slice(0,o):i;t[a]||(t[a]={value:[],found:new Set}),t[a].value.push(c),t[a].found.add(l)}paramSetMatch(t,e){let r=0;for(const i of Object.values(t)){let t=e;for(const e of i.value)i.found.has(e)&&(r+=t),t*=.33}return r}levScore(t,e){const r=Math.min(t.length,e.length),i=Yn()(t,e);return i<r?r-i:0}},es=new Date("9999-01-01").getTime(),rs="warc/revisit";class is{name;minDedupSize;version;autoHttpsCheck=!0;useRefCounts=!1;allowRepeats=!0;repeatTracker=null;fuzzyPrefixSearch=!0;initing;db=null;constructor(t,e={}){this.name=t,this.db=null;const{minDedupSize:r,noRefCounts:i}=e;this.minDedupSize=Number.isInteger(r)?r:1024,this.version=4,this.autoHttpsCheck=!0,this.useRefCounts=!i,this.allowRepeats=!0,this.repeatTracker=new ns,this.fuzzyPrefixSearch=!0,this.initing=this.init()}async init(){let t=0;this.db=await Dn(this.name,this.version,{upgrade:(e,r,i,n)=>{t=r,this._initDB(e,r,i,n)},blocking:(t,e)=>{e||this.close()}}),1===t&&await this.convertCuratedPagesToV2(this.db)}_initDB(t,e,r,i){if(!e){const e=t.createObjectStore("pages",{keyPath:"id"});e.createIndex("url","url"),e.createIndex("ts","ts"),e.createIndex("state","state"),t.createObjectStore("pageLists",{keyPath:"id",autoIncrement:!0}),t.createObjectStore("curatedPages",{keyPath:"id",autoIncrement:!0}).createIndex("listPages",["list","pos"]);const r=t.createObjectStore("resources",{keyPath:["url","ts"]});r.createIndex("pageId","pageId"),r.createIndex("mimeStatusUrl",["mime","status","url"]),t.createObjectStore("payload",{keyPath:"digest"}).createIndex("digest","digest",{unique:!0}),t.createObjectStore("digestRef",{keyPath:"digest"}).createIndex("digest","digest",{unique:!0})}}async clearAll(){const t=["pages","resources","payload","digestRef"];if(this.db)for(const e of t)await this.db.clear(e)}close(){this.db&&(this.db.close(),this.db=null)}async delete(){this.close(),await Ln(this.name,{blocked(t,e){console.log("Unable to delete: "+e)}})}async addPage(t,e){const r=t.url,i=t.title||t.url,n=t.id||this.newPageId(),s=t.state||17;let o=t.ts;if("number"!=typeof o)if(t.timestamp)o=h(t.timestamp).getTime();else{const e=t.ts||t.date||t.datetime;e&&(o=new Date(e).getTime())}const a={...t,url:r,ts:o,title:i,id:n,state:s};return e?(e.store.put(a),a.id):await this.db.put("pages",a)}async addPages(t,e="pages",r=!1){const i=this.db.transaction(e,"readwrite");for(const e of t)r?i.store.put(e):this.addPage(e,i);try{await i.done}catch(t){console.warn("addPages tx",String(t))}}async createPageList(t){const e={title:t.title,desc:t.desc||t.description,slug:t.id||t.slug};return await this.db.put("pageLists",e)}async addCuratedPageList(t,e){const r=await this.createPageList(t);let i=0;for(const t of e)t.pos=i++,t.list=r;await this.addPages(e,"curatedPages")}async addCuratedPageLists(t,e="pages",r="public"){for(const i of t){if(r&&!i[r])continue;const t=i[e]||[];await this.addCuratedPageList(i,t)}}async convertCuratedPagesToV2(t){const e=await t.getAll("curatedPages");if(!e?.length)return;const r=await t.getAll("pages"),i=new Map;for(const t of r)i.set(t.id,t);for(const t of e)if(t.page){const e=i.get(t.page);e&&(t.id=this.newPageId(),t.url=e.url,t.ts=e.ts,!t.title&&e.title&&(t.title=e.title)),delete t.page}await t.clear("curatedPages");const n=t.transaction("curatedPages","readwrite");for(const t of e)n.store.put(t);try{await n.done}catch(t){console.warn("Conversion Failed",t)}}async getCuratedPagesByList(){const t=await this.db.getAll("pageLists"),e=this.db.transaction("curatedPages","readonly");for await(const r of e.store.index("listPages").iterate()){const e=t[r.value.list-1];e&&(e.show=!0,e.pages||(e.pages=[]),e.pages.push(r.value))}return t}newPageId(){return g()}async getAllPages(){return await this.db.getAll("pages")}async getPages(t){const e=[];t.sort();for await(const r of this.matchAny("pages",null,t))e.push(r);return e}async getTimestampsByURL(t){const e=this.db.transaction("resources"),r=IDBKeyRange.bound([t],[t,es]),i=[];for await(const t of e.store.iterate(r))i.push(t.key[1]);return i}async getPagesWithState(t){return await this.db.getAllFromIndex("pages","state",t)}async getVerifyInfo(){return{}}async addVerifyData(t="",e,r,i=null,n=!1){}async addVerifyDataList(t,e){}async dedupResource(t,e,r,i=1){const n=r.objectStore("digestRef"),s=await n.get(t);if(s)return++s.count,s;if(e)try{return r.objectStore("payload").put({digest:t,payload:e}),{digest:t,count:i,size:e.length}}catch(t){console.log(t)}return null}async addResources(t){const e=[],r=[],i=[],n={},s=new Set,o=this.db.transaction(["digestRef","payload"],"readwrite");for(const a of t){let t=1;const c=a.status||200,l=a.mime===rs?e:c>=300?r:i;l.push(a);const h=this.getFuzzyUrl(a);if(h&&(l.push(h),t=2),this.useRefCounts&&a.digest){const e=n[a.digest];e?(e.count+=t,s.add(a.digest)):n[a.digest]=await this.dedupResource(a.digest,a.payload,o,t),delete a.payload}}if(this.useRefCounts){const t=o.objectStore("digestRef");for(const e of s)t.put(n[e])}try{await o.done}catch(t){console.error("Payload and Ref Count Bulk Add Failed: ",t)}const a=this.db.transaction("resources","readwrite");for(const t of e)a.store.put(t);for(const t of r)a.store.put(t);for(const t of i)a.store.put(t);try{await a.done}catch(t){console.error("Resources Bulk Add Failed",t)}}getFuzzyUrl(t){if(t.status&&t.status>=200&&t.status<400&&304!==t.status&&204!==t.status){const{fuzzyCanonUrl:e}=ts.getRuleFor(t.url);return e&&e!==t.url?{url:e,ts:t.ts,origURL:t.url,origTS:t.ts,pageId:t.pageId,digest:t.digest}:null}return null}async addResource(t){t.payload&&t.payload.length>this.minDedupSize&&(t.digest||(t.digest=await p(t.payload,"sha-256")));let e=null,r=!1;const i=this.db.transaction(["resources","digestRef","payload"],"readwrite");if(t.payload&&t.payload.length>this.minDedupSize?(e=await this.dedupResource(t.digest||"",t.payload,i),r=!!e&&1===e.count,delete t.payload):t.payload&&(r=!0),t.mime!==rs){i.objectStore("resources").put(t);const r=this.getFuzzyUrl(t);r&&(i.objectStore("resources").put(r),e&&e.count++)}else i.objectStore("resources").add(t);e&&i.objectStore("digestRef").put(e);try{await i.done}catch(e){t.mime===rs?console.log("Skip Duplicate revisit for: "+t.url):console.log("Add Error for "+t.url),console.log(e)}return r}async getResource(t,e,r,i={}){const n=h(t.timestamp).getTime();let s=t.url,o=null;const a=this.repeatTracker?this.repeatTracker.getSkipCount(r,s,t.request.method):0,c={...i,skip:a};if(s.startsWith("//")){let e=!1;o=await this.lookupUrl("https:"+s,n,c),o||(o=await this.lookupUrl("http:"+s,n,c),(o||t.request.referrer.indexOf("/http://",2)>0)&&(e=!0)),s=(e?"http:":"https:")+s}else if(o=await this.lookupUrl(s,n,c),!o&&this.autoHttpsCheck&&s.startsWith("http://")){const t=s.replace("http://","https://");o=await this.lookupUrl(t,n,c),o&&(s=t)}if(o||!this.fuzzyPrefixSearch||i.noFuzzyCheck||(o=await this.lookupQueryPrefix(s,i)),o?.origURL){const t=await this.lookupUrl(o.origURL,o.origTS||o.ts,i);t&&(s=t.url,o=t)}if(!o)return null;const l=o.status||0,u=o.statusText||b(l);let p=null;if(!w(l)&&(p=await this.loadPayload(o,i),!p))return null;const d=o.respHeaders?y(o.respHeaders):new Headers,f=new Date(o.ts),g=o.extraOpts||null;return s=o.url,s!==t.url&&d.set("Content-Location",s),new cn({url:s,payload:p,status:l,statusText:u,headers:d,date:f,extraOpts:g})}async loadPayload(t,e){if(t.digest&&!t.payload){if("sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"===t.digest||"sha1:3I42H3S6NNFQ2MSVX7XZKYAYSCX5QBYJ"===t.digest)return new Uint8Array([]);const e=await this.db.get("payload",t.digest);if(!e)return null;const{payload:r}=e;return r}return t.payload||null}isSelfRedirect(t,e){try{if(e?.respHeaders&&e.status&&e.status>=300&&e.status<400){const r=new Headers(e.respHeaders).get("location")||"";if(new URL(r,t).href===t)return!0}}catch(t){}return!1}async lookupUrl(t,e,r={}){const i=this.db.transaction("resources","readonly");if(e){const n=IDBKeyRange.bound([t,e],[t,es]);if(r.noRevisits||r.pageId){let e=await i.store.getAll(n,16);e=e||[];for(const i of e)if(!(r.pageId&&i.pageId&&i.pageId!==r.pageId||r.noRevisits&&i.mime===rs||this.isSelfRedirect(t,i)))return i}else{const r=await i.store.get(n);if(r&&this.isSelfRedirect(t,r))e+=1e4;else if(r)return r}}const n=IDBKeyRange.bound([t],[t,e||es]);for await(const e of i.store.iterate(n,"prev")){const i=e.value;if(!(r.pageId&&i.pageId&&i.pageId!==r.pageId||r.noRevisits&&i.mime===rs||this.isSelfRedirect(t,i)))return i}return null}async lookupQueryPrefix(t,e){const{rule:r,prefix:i,fuzzyCanonUrl:n}=ts.getRuleFor(t);if(n!==t){const t=await this.lookupUrl(n,0,e);if(t)return t}if(!r&&i===t&&i===n&&!t.endsWith("?"))return null;const s=await this.db.getAll("resources",this.getLookupRange(i,"prefix"),128e3);return ts.fuzzyCompareUrls(t,s,r)}resJson(t){const e=new Date(t.ts).toISOString();return{url:t.url,date:e,ts:l(e),mime:t.mime||"",status:t.status||0}}async resourcesByPage(t){return this.db.getAllFromIndex("resources","pageId",t)}async*resourcesByPages2(t){t.sort(),yield*this.matchAny("resources","pageId",t)}async*resourcesByPages(t){const e=this.db.transaction("resources","readonly");for await(const r of e.store.iterate())t.includes(r.value.pageId)&&(yield r.value)}async*matchAny(t,e,r,i,n=!1){const s=this.db.transaction(t,"readonly"),o=IDBKeyRange.lowerBound(r[0],n);let a=e?await s.store.index(e).openCursor(o):await s.store.openCursor(o),c=0;for(;a&&c<r.length;){let t,e,n;void 0!==i?(t=a.key[i],e=r[c][i],n=t.startsWith(e)):(t=a.key,e=r[c],n=t===e),!n&&t>e?++c:n?(yield a.value,a=await a.continue()):a=await a.continue(r[c])}}async resourcesByUrlAndMime(t,e,r=1e3,i=!0,n="",s=""){const o=e?0:r,a=await this.db.getAll("resources",this.getLookupRange(t,i?"prefix":"exact",n,s),o),c=e.split(","),l=[];for(const t of a)for(const e of c)if(!e||t.mime?.startsWith(e)){if(l.push(this.resJson(t)),l.length===r)return l;break}return l}async resourcesByMime(t,e=100,r="",i="",n=0){const s=t.split(","),o=[];s.sort();const a=[];r&&a.push([r,n,i]);for(const t of s)(!r||!t||t>r)&&a.push([t,0,""]);for await(const t of this.matchAny("resources","mimeStatusUrl",a,0,!0))if(o.push(this.resJson(t)),o.length===e)break;return o}async deletePage(t){const e=this.db.transaction("pages","readwrite"),r=await e.store.get(t);await e.store.delete(t);const i=await this.deletePageResources(t);return{pageSize:r?.size||0,dedupSize:i}}async deletePageResources(t){const e={},r=this.db.transaction("resources","readwrite");let i=await r.store.index("pageId").openCursor(t),n=0;for(;i;){const t=i.value.digest;t?e[t]=(e[t]||0)+1:i.value.payload&&(n+=i.value.payload.length),r.store.delete(i.primaryKey),i=await i.continue()}await r.done;const s=this.db.transaction(["payload","digestRef"],"readwrite"),o=s.objectStore("digestRef");for(const t of Object.keys(e)){const r=await o.get(t);r&&(r.count-=e[t]),r&&r.count>=1?o.put(r):(n+=r?r.size:0,o.delete(t),s.objectStore("payload").delete(t))}return await s.done,n}prefixUpperBound(t){return t.slice(0,-1)+String.fromCharCode(t.charCodeAt(t.length-1)+1)}getLookupRange(t,e,r,i){let n,s,o;switch(e){case"prefix":n=[t],s=[this.prefixUpperBound(t)];break;case"host":{const e=new URL(t).origin;n=[e+"/"],s=[e+"0"];break}default:n=[t],s=[t,Number.MAX_SAFE_INTEGER]}return r?(n=[r,i||""],o=!0):o=!1,IDBKeyRange.bound(n,s,o,!0)}}class ns{repeats={};getSkipCount(t,e,r){if("POST"!==r&&!e.endsWith(".m3u8"))return 0;t.replacesClientId&&delete this.repeats[t.replacesClientId];const i=t.resultingClientId||t.clientId;return i?(void 0===this.repeats[i]&&(this.repeats[i]={}),void 0===this.repeats[i][e]?this.repeats[i][e]=0:this.repeats[i][e]++,this.repeats[i][e]):0}}const ss=["script","style","header","footer","banner-div","noscript"];class os{batchSize;promises=[];batch=[];count=0;dupeSet=new Set;db;constructor(t=1e3){this.batchSize=t}addPage(t){this.promises.push(this.db.addPage(t))}isBatchFull(){return this.batch.length>=this.batchSize}addResource(t){if(this.isBatchFull()&&this.flush(),Number.isNaN(t.ts))return void console.warn("Skipping resource with missing/invalid ts: "+t.url);const e=t.url+" "+t.ts;if("warc/revisit"===t.mime){if(this.dupeSet.has(e))return void console.warn("Skipping duplicate revisit, prevent overriding non-revisit")}else this.dupeSet.add(e);this.batch.push(t)}flush(){this.batch.length>0&&this.promises.push(this.db.addResources(this.batch)),console.log(`Read ${this.count+=this.batch.length} records`),this.batch=[]}async finishIndexing(){this.flush(),this._finishLoad();try{await Promise.all(this.promises)}catch(t){console.warn(t)}this.promises=[]}_finishLoad(){}}class as extends os{reader;abort;loadId;sourceExtra;anyPages=!1;detectPages=!1;_lastRecord=null;metadata={};pages=[];lists=[];pageMap={};constructor(t,e=null,r=null,i=null){super(),this.reader=t,this.abort=e,this.loadId=r,this._lastRecord=null,this.metadata={},this.pageMap={},this.pages=[],this.lists=[],this.sourceExtra=i}parseWarcInfo(t){if(!t.payload)return;const e=new TextDecoder("utf-8").decode(t.payload);for(const r of e.split("\n"))if(r.startsWith("json-metadata:"))try{const t=JSON.parse(r.slice(14));if("collection"===t.type&&(this.metadata.desc=t.desc,this.metadata.title=t.title),t.pages?.length){this.pages=this.pages.concat(t.pages);for(const e of t.pages)e.ts=h(e.timestamp).getTime(),this.pageMap[e.ts+"/"+e.url]={page:e};this.anyPages=!0}t.lists?.length&&(this.lists=this.lists.concat(t.lists))}catch(t){console.log("Page Add Error",t.toString())}}index(t,e){if("warcinfo"!==t.warcType){if(this._lastRecord)return this._lastRecord.warcTargetURI!=t.warcTargetURI?(this.indexReqResponse(this._lastRecord,null,e),void(this._lastRecord=t)):void("request"===t.warcType&&"response"===this._lastRecord.warcType?(this.indexReqResponse(this._lastRecord,t,e),this._lastRecord=null):"response"===t.warcType&&"request"===this._lastRecord.warcType?(this.indexReqResponse(t,this._lastRecord,e),this._lastRecord=null):(this.indexReqResponse(this._lastRecord,null,e),this._lastRecord=t));this._lastRecord=t}else this.parseWarcInfo(t)}indexDone(t){this._lastRecord&&(this.indexReqResponse(this._lastRecord,null,t),this._lastRecord=null)}shouldIndexMetadataRecord(t){return!!t.warcTargetURI?.startsWith("metadata://")}parseRevisitRecord(t,e){const r=t.warcTargetURI.split("#")[0],i=t.warcDate,n=i?new Date(i).getTime():Date.now();let s,o=null;if(t.httpHeaders){const i=this.parseResponseHttpHeaders(t,r,e);i&&(o=Object.fromEntries(i.headers.entries()),s=i.status)}const a=t.warcRefersToTargetURI,c=new Date(t.warcRefersToDate).getTime();return a===r&&c===n?null:{url:r,ts:n,origURL:a,origTS:c,digest:t.warcPayloadDigest||null,pageId:null,respHeaders:o,status:s}}parseResponseHttpHeaders(t,e,r){let i=200,n=null,s="";const o=r?.httpHeaders?.method;if(t.httpHeaders){if(i=Number(t.httpHeaders.statusCode)||200,"OPTIONS"===o||"HEAD"===o)return null;if(n=y(t.httpHeaders.headers),s=(n.get("content-type")||"").split(";")[0],206===i&&!this.isFullRangeRequest(n))return null}else n=new Headers,n.set("content-type",t.warcContentType),n.set("content-length",String(t.warcContentLength)),s=t.warcContentType||"";return{status:i,method:o,headers:n,mime:s}}indexReqResponse(t,e,r){const i=this.parseRecords(t,e);i&&this.addResource(i)}parseRecords(t,e){switch(t.warcType){case"revisit":return this.parseRevisitRecord(t,e);case"resource":e=null;break;case"response":break;case"metadata":if(!this.shouldIndexMetadataRecord(t))return null;break;default:return null}let r=t.warcTargetURI.split("#")[0];const i=t.warcDate,n=this.parseResponseHttpHeaders(t,r,e);if(!n)return null;const{status:s,method:o,headers:a,mime:c}=n;let l,h,u=null,p=null;if(e?.httpHeaders?.headers){let t=null;try{t=new Headers(e.httpHeaders.headers);const r=t.get("cookie");r&&a.set("x-wabac-preset-cookie",r),u=e.httpHeaders.headers.get("Referer")||null}catch(e){t=new Headers,console.warn(e)}if(h=Object.fromEntries(t.entries()),"GET"!==o){const i={headers:t,method:o||"GET",url:r,postData:e.payload};et(i)&&(l=r,r=i.url,p=e.payload)}}if(void 0===this.detectPages&&(this.detectPages=!this.anyPages),this.detectPages&&function(t,e,r){if(200!=e)return!1;if(!t.startsWith("http:")&&!t.startsWith("https:")&&!t.startsWith("blob:"))return!1;if(t.endsWith("/robots.txt"))return!1;const i=t.split("?",2);return!(2===i.length&&i[1].length>i[0].length)&&(!i[0].substring(i[0].lastIndexOf("/")+1).startsWith(".")&&(!r||"text/html"===r))}(r,s,c)){const t=r;this.addPage({url:r,date:i,title:t})}const d=i?new Date(i).getTime():Date.now(),f=Object.fromEntries(a.entries()),g=t.warcPayloadDigest||null,y=t.payload,m={url:r,ts:d,status:s,mime:c,respHeaders:f,reqHeaders:h,digest:g,payload:y,reader:y?null:t.reader,referrer:u};this.pageMap[d+"/"+r]&&y&&c.startsWith("text/")&&(this.pageMap[d+"/"+r].textPromise=async function(t,e,r,i){const n=new Qi,s=[];let o=null;n.on("text",(t=>{if(o)return;const e=t.text.trim();e&&s.push(e)})),n.on("startTag",(t=>{!t.selfClosing&&ss.includes(t.tagName)&&(o=t.tagName)})),n.on("endTag",(t=>{t.tagName===o&&(o=null)})),(r||i)&&(e=await Bt(e,r,i)),n.end((new TextDecoder).decode(e));const a=new Promise((t=>{n.on("end",(()=>{t(s.join(" "))}))}));return await a}(0,y,a.get("content-encoding"),a.get("transfer-encoding")));const w=t.warcHeader("WARC-JSON-Metadata");if(w)try{m.extraOpts=JSON.parse(w)}catch(t){}const b=t.warcHeader("WARC-Page-ID");return b&&(m.pageId=b),this.sourceExtra&&(m.source=this.sourceExtra),"GET"!==o&&l&&(m.requestUrl=l,m.method=o,m.requestBody=p||new Uint8Array([])),m}isFullRangeRequest(t){const e=t.get("content-range"),r=parseInt(t.get("content-length")||"0");return e&&e===`bytes 0-${r-1}/${r}`}filterRecord(t){return null}async load(t,e,r=0){if(e&&!r)throw new Error("totalSize is required");this.db=t;const i=new It(this.reader);let n=0,s=0,o=0;try{for await(const a of i){if(o++,!a.warcType){console.log("skip empty record");continue}const c=self.interruptLoads;if(e&&this.loadId&&c[this.loadId])throw e(Math.round(i.offset/r*95),"Loading Canceled",i.offset,r),c[this.loadId](),this.abort&&this.abort.abort(),new C;if(s=(new Date).getTime(),s-n>500){const t=`Processed ${o} records`;e(Math.round(i.offset/r*95),null,i.offset,r,null,t),n=s}const l=this.filterRecord(a);if("done"===l){this.abort&&this.abort.abort();break}if("skip"!==l&&("skipContent"===l?await a.skipFully():await a.readFully(),o++,this.index(a,i),this.promises.length>0)){try{await Promise.all(this.promises)}catch(t){console.warn(t.toString())}this.promises=[]}}}catch(t){if(t instanceof C)throw t;e(Math.round(i.offset/r*95),`Sorry there was an error downloading. Please try again (${t})`,i.offset,r),console.warn(t)}return this.indexDone(i),e(95,null,i.offset,r),await this.finishIndexing(),e(100,null,r,r),this.metadata}async _finishLoad(){if(this.pages.length){for(const{page:t,textPromise:e}of Object.values(this.pageMap))if(e)try{t.text=await e}catch(t){console.warn("Error adding text: "+t.toString())}this.promises.push(this.db.addPages(this.pages))}this.lists.length&&this.promises.push(this.db.addCuratedPageLists(this.lists,"bookmarks","public"))}}class cs extends as{constructor(t){super(t),this.detectPages=!1}addPage(){}async load(){const t=await new It(this.reader).parse();if(!t)return null;const e=this.parseRecords(t,null);return e&&"revisit"!==t.warcType||await t.readFully(),e}}const ls="https://w3s.link/";function hs(t){const{hostname:e,protocol:r,pathname:i}=new URL(t),n=r.slice(0,-1);if(!e){const[t,...e]=i.slice(2).split("/");return{type:n,cid:t,path:"/"+e.join("/")}}return{type:n,cid:e,path:i}}async function us(t){return ms(t)?t:ws(t)?fs(t):t}async function ps(t){return new Response(t).blob()}async function*ds(t){const e=await t.getReader();try{for(;;){const{done:t,value:r}=await e.read();if(t)return;yield r}}finally{e.releaseLock()}}function fs(t){let e=t;e.next||(e=t[Symbol.asyncIterator]());const r=new TextEncoder;return new ReadableStream({async pull(t){const{value:i,done:n}=await e.next();if(n)await t.close();else{let e=i;"string"==typeof e&&(e=r.encode(e)),await t.enqueue(e)}}})}async function gs(t){if(!t.ok){const e=await t.text(),r=t.status;throw new Error(`HTTP Error ${r}: ${e}`)}}async function ys({url:t,file:e,fileName:r="",parameterName:i="file",fetch:n=globalThis.fetch,signal:s}){const o=new FormData,a=new Headers;bs(t,a);const c=await async function(t){if(ms(t))return await ps(t);if(ws(t)){const e=fs(t);return await ps(e)}return t instanceof Blob?t:new Blob([t])}(e);r?o.append(i,c,r):o.append(i,c);const l=await n(t,{method:"POST",body:o,headers:a,signal:s});return await gs(l),l}function ms(t){return"function"==typeof t.getReader}function ws(t){return t[Symbol.asyncIterator]}function bs(t,e){if(t.password)if(t.username){const r=`Basic ${btoa(`${unescape(t.username)}:${unescape(t.password)}`)}`;e.append("Authorization",unescape(r)),t.username="",t.password=""}else{const r=`Bearer ${t.password}`;e.append("Authorization",unescape(r)),t.password=""}}async function As({url:t,fetch:e=globalThis.fetch,signal:r}){const i=await e(t,{method:"HEAD",signal:r});await gs(i);const n=i.headers.get("x-ipfs-datasize")||i.headers.get("Content-Length");return parseInt(n,10)}async function*vs({url:t,start:e,end:r,format:i,signal:n,fetch:s=globalThis.fetch}){const o=new Headers;Number.isInteger(e)&&(Number.isInteger(r)?o.set("Range",`bytes=${e}-${r}`):o.set("Range",`bytes=${e}-`));const a=new URL(t);i&&(o.set("Accept",`application/vnd.ipld.${i}`),o.set("cache-control","no-cache"));const c=await s(a.href,{headers:o,signal:n});await gs(c),yield*ds(c.body)}function _s(){if(!globalThis.location)return ls;const{pathname:t,hostname:e,protocol:r}=globalThis.location;if(t.startsWith("/ipfs/")||t.startsWith("/ipns/"))return`${r}//${e}/`;const[i,...n]=e.split(".");return 59===i.length&&n.length>=2?`${r}//${n.join(".")}/`:ls}let Es=!1;const Ss=[5001,45001,45002,45003,45004,45005],Ts="https://api.web3.storage/",xs="https://api.estuary.tech/",Cs="http://localhost:5001/",Is="agregore",Rs="daemon",ks="web3.storage",Ns="estuary",Os="readonly",Bs=[Is,Rs,ks,Ns,Os];class Ps{get type(){return"invalid"}async*get(t,{start:e,end:r,signal:i=null,format:n=null}={}){throw new Error("Not Implemented")}async getSize(t,e=null){throw new Error("Not Implemented")}async uploadCAR(t,e=null){throw new Error("Not Implemented")}async uploadFile(t,e,r=null){throw new Error("Not Implemented")}async clear(t,e=null){throw new Error("Not Implemented")}}async function Ds({chooseOrder:t=Bs,...e}={}){const r=function(t,e=Bs){const r=t.filter((({type:t})=>e.includes(t))).sort((({type:t},{type:r})=>e.indexOf(t)-e.indexOf(r)))[0];if(!r)throw new Error("Unable to find valid type");return r}(await async function({daemonURL:t,web3StorageToken:e,web3StorageURL:r=Ts,estuaryToken:i,estuaryURL:n=xs,publicGatewayURL:s=_s(),readonly:o=!0,timeout:a=1e3,fetch:c=globalThis.fetch}={}){const l=[],h=[];if(h.push(async function(t=globalThis.fetch){try{return await t("ipfs://localhost/"),!0}catch(t){return Es&&console.warn("Unable to detect Agregore",t),!1}}(c).then((t=>t&&l.push({type:Is,fetch:c})))),h.push(async function(){const t=Ss.map((t=>`http://localhost:${t}`));try{const r=await Promise.any(t.map((t=>Vs(t).then((e=>{if(e)return t;throw new Error("Not found")})))));return!!r&&(Ws&&!js&&(e=r,js=!0,globalThis.chrome.webRequest.onBeforeSendHeaders.addListener((t=>{const{requestHeaders:r}=t;for(const t of r)if("origin"===t.name.toLowerCase())return t.value=e,{requestHeaders:r};return t.requestHeaders.push({name:"Origin",value:e}),{requestHeaders:r}}),{urls:[e+"/*"]},["blocking","requestHeaders","extraHeaders"])),r)}catch{return!1}var e}().then((t=>t&&l.push({type:Rs,url:t,fetch:c})))),t&&h.push(Vs(t,a,c).then((e=>e&&l.push({type:Rs,url:t,fetch:c})))),i){const t=n,e=i;l.push({type:Ns,url:t,authorization:e,fetch:c,publicGatewayURL:s})}if(e){const t=r,i=e;l.push({type:ks,url:t,authorization:i,fetch:c,publicGatewayURL:s})}return o&&s&&l.push({type:Os,fetch:c,publicGatewayURL:s}),await Promise.allSettled(h),l}(e),t);return async function(t){const{type:e}=t;let r=null;if(e===Is)r=new Ms(t.fetch||globalThis.fetch);else if(e===Rs)r=new Hs(t.url);else if(e===ks)r=new Fs(t.authorization,t.url,t.publicGatewayURL);else if(e===Ns)r=new Us(t.authorization,t.url,t.publicGatewayURL);else{if(e!==Os)throw new TypeError(`Unknown API type: ${e}.`);r=new Ls(t.publicGatewayURL)}return r}(r)}class Ls extends Ps{constructor(t=_s()){super(),this.gatewayURL=t}get type(){return Os}async*get(t,{start:e,end:r,signal:i=null,format:n=null}={}){yield*async function*({url:t,start:e,end:r,format:i,signal:n,gatewayURL:s=_s()}){const o=function(t,e=_s()){const{cid:r,path:i,type:n}=hs(t);return new URL(`/${n}/${r}${i}`,e)}(t,s);yield*vs({url:o,start:e,end:r,format:i,signal:n})}({url:t,start:e,end:r,format:n,gatewayURL:this.gatewayURL,signal:i})}async getSize(t,e=null){const{cid:r,path:i,type:n}=hs(t);return As({url:new URL(`/${n}/${r}${i}`,this.gatewayURL),signal:e})}}class Us extends Ls{constructor(t,e=xs,r=_s()){super(r),this.authorization=t,this.url=e}get type(){return Ns}async uploadCAR(t,e=null){throw new Error("Not Implemented")}async uploadFile(t,e,r=null){const i=new URL("/content/add",this.url);i.password=this.authorization;const n=await ys({url:i,file:t,fileName:e,parameterName:"data",signal:r}),{cid:s}=await n.json();return`ipfs://${s}/`}}class Ms extends Ps{constructor(t=globalThis.fetch){super(),this.fetch=t}get type(){return Is}async*get(t,{start:e,end:r,signal:i=null,format:n=null}={}){const{fetch:s}=this;yield*vs({url:t,start:e,end:r,format:n,fetch:s,signal:i})}async getSize(t,e=null){const{fetch:r}=this;return As({url:t,fetch:r,signal:e})}async uploadCAR(t,e=null){const r=await us(t),{fetch:i}=this,n=await i("ipfs://localhost",{method:"POST",headers:{"Content-Type":"application/vnd.ipld.car"},signal:e,body:r});return await gs(n),(await n.text()).split("\n")}async uploadFile(t,e=null){const r=await us(t),{fetch:i}=this,n=await i("ipfs://localhost",{method:"POST",headers:{"Content-Type":"application/octet-stream"},signal:e,body:r});return await gs(n),n.headers.get("Location")}}class Fs extends Ls{constructor(t,e=Ts,r=_s()){super(r),this.authorization=t,this.url=e}get type(){return ks}async uploadCAR(t,e=null){const r=new URL("/car",this.url);r.password=this.authorization;const i=await async function({url:t,fileIterator:e,signal:r}){const i=new Headers;i.set("Content-Type","application/octet-stream"),bs(t,i);const n=await us(e),s=await fetch(t,{method:"POST",signal:r,body:n,headers:i,duplex:"half"});return await gs(s),s}({url:r,fileIterator:t,signal:e});return(await i.text()).split("\n").filter((t=>t)).map((t=>{const{cid:e}=JSON.parse(t);return`ipfs://${e}/`}))}async uploadFile(t,{fileName:e="",signal:r=null}={}){const i=new URL("/upload",this.url);i.password=this.authorization;const n=await ys({url:i,file:t,fileName:e,signal:r}),{cid:s}=await n.json();return`ipfs://${s}/`}}class Hs extends Ps{constructor(t=Cs){super(),this.url=t}get type(){return Rs}async*get(t,{start:e,end:r,signal:i=null,format:n=null}={}){const{cid:s,path:o,type:a}=hs(t),c=new URL(`/api/v0/cat?arg=/${a}/${s}${o}`,this.url);if(e&&c.searchParams.set("offset",e),r&&c.searchParams.set("length",r-(e||0)+1),n)throw new Error("Format is unsupported on Kubo Daemons for now");const l=await fetch(c,{method:"POST",signal:i});await gs(l),yield*ds(l.body)}async getSize(t,e=null){try{const{cid:r,path:i,type:n}=hs(t),s=`/api/v0/file/ls?arg=/${n}/${r}${i}&size=true`,o=new URL(s,this.url),a=await fetch(o,{method:"POST",signal:e});await gs(a);const{Objects:c}=await a.json(),[{Size:l}]=Object.values(c);return l}catch(r){return Es&&console.warn(r),this._getSizeWithDag(t,e)}}async _getSizeWithDag(t,e=null){const{cid:r,path:i,type:n}=hs(t),s=new URL(`/api/v0/dag/stat?arg=/${n}/${r}${i}`,this.url),o=await fetch(s,{method:"POST",signal:e});await gs(o);const{Size:a}=await o.json();return parseInt(a,10)}async _pin(t,e=null){const{cid:r,path:i,type:n}=hs(t),s=new URL(`/api/v0/pin/add?arg=/${n}/${r}${i}`,this.url),o=await fetch(s,{method:"POST",signal:e});await gs(o)}async _unpin(t,e=null){const{cid:r,path:i,type:n}=hs(t),s=new URL(`/api/v0/pin/rm?arg=/${n}/${r}${i}`,this.url),o=await fetch(s,{method:"POST",signal:e});await gs(o)}async clear(t,e=null){return this._unpin(t,e)}async uploadCAR(t,e=null){const r=new URL("/api/v0/dag/import?allow-big-block=true&pin-roots=true",this.url),i=await ys({url:r,file:t,signal:e});return(await i.text()).split("\n").filter((t=>t)).map((t=>{const{Root:e}=JSON.parse(t);return`ipfs://${e.Cid["/"]}/`}))}async uploadFile(t,e="",r=null){const i=new URL("/api/v0/add?pin=true&cid-version=1&inline=false&raw-leaves=true",this.url),n=t.name&&t instanceof Blob;(e||n)&&i.searchParams.set("wrap-with-directory","true");const s=await ys({url:i,file:t,fileName:e,signal:r}),o=await s.text(),[a]=o.split("\n"),{Hash:c}=JSON.parse(a),l=`ipfs://${c}/`;return await this._pin(l,r),l}}let js=!1;const Ws=!!(globalThis&&globalThis.chrome&&globalThis.chrome.webRequest&&globalThis.chrome.webRequest.onBeforeSendHeaders&&globalThis.chrome.webRequest.onBeforeSendHeaders.addListener);async function Vs(t=Cs,e=1e3,r=globalThis.fetch){try{const i=new AbortController,{signal:n}=i;setTimeout((()=>i.abort()),e);const s=await r(new URL("/api/v0/version",t),{method:"POST",signal:n});return!!s.ok||!(!s.status||404===s.status)}catch(e){return Es&&console.warn("Unable to detect Kubo Daemon",e,t),!1}}let Gs=null;async function zs(t){return Gs||(Gs=await Ds(t)),Gs}const qs="https://helper-proxy.webrecorder.workers.dev";async function Qs(t){const{url:e}=t;if(t.extra?.arrayBuffer)return new Xs(t.extra.arrayBuffer);const r=e.split(":",1)[0];switch(r){case"blob":return new Zs(t);case"http":case"https":return new Ys(t);case"file":return new $s(t);case"googledrive":return new Js(t);case"ipfs":return new to(t)}try{if(self.location&&r===self.location.protocol.split(":")[0])return new Ys(t)}catch(t){}try{return await fetch(`${r}://localhost`,{method:"HEAD"}),new Ys(t)}catch(t){}throw new Error("Invalid URL: "+e)}class Ks{canLoadOnDemand=!0;headers={};length=null;constructor(t){this.canLoadOnDemand=t}}class Ys extends Ks{url;length;isValid=!1;ipfsAPI=null;loadingIPFS=null;constructor({url:t,headers:e,length:r=null,canLoadOnDemand:i=!1}){super(i),this.url=t,this.headers=e||{},this.length=r,this.canLoadOnDemand=i}async doInitialFetch(t,e=!1){const r=new Headers(this.headers);e||r.set("Range","bytes=0-"),this.isValid=!1;let i=null,n=null;if(t)try{n=await this.retryFetch(this.url,{headers:r,method:"HEAD",cache:"no-store"}),200!==n.status&&206!=n.status||(this.canLoadOnDemand=206===n.status||"bytes"===n.headers.get("Accept-Ranges"),this.isValid=!0)}catch(t){}if(!this.isValid||!this.canLoadOnDemand){i=new AbortController;const e=i.signal;n=await this.retryFetch(this.url,{headers:r,signal:e,cache:"no-store"}),this.canLoadOnDemand=206===n.status||"bytes"===n.headers.get("Accept-Ranges"),this.isValid=206===n.status||200===n.status,t&&(i.abort(),i=null)}if(null===this.length&&n&&(this.length=Number(n.headers.get("Content-Length")),!this.length&&206===n.status)){const t=n.headers.get("Content-Range");if(t){const e=t.split("/");2===e.length&&(this.length=parseInt(e[1]))}}if(null===this.length)try{const t=await fetch(`${qs}/c/${this.url}`),e=await t.json();e.size&&(this.length=e.size)}catch(t){console.log("Error fetching from helper: "+t.toString())}return this.length=Number(this.length||0),{response:n,abort:i}}async getLength(){if(null===this.length){const{abort:t}=await this.doInitialFetch(!0);t&&t.abort()}return this.length||0}async getRange(t,e,r=!1,i=null){const n=new Headers(this.headers);n.set("Range",`bytes=${t}-${t+e-1}`);const s={signal:i,headers:n,cache:"no-store"};let o;try{o=await this.retryFetch(this.url,s)}catch(t){throw console.log(t),new S(this.url)}if(206!=o.status){const t={url:this.url,status:o.status,resp:o};throw 401===o.status?new T(t):403==o.status?new x(t):new S(t)}return r?o.body||new Uint8Array:new Uint8Array(await o.arrayBuffer())}async retryFetch(t,e){let r=1e3;for(let i=0;i<20;i++){const i=await fetch(t,e);if(429!==i.status)return i;await I(r),r+=2e3}throw new Error("retryFetch failed")}}class Js extends Ks{fileId;apiUrl;length;publicUrl=null;isValid=!1;constructor({url:t,headers:e,size:r,extra:i}){super(!0),this.fileId=t.slice(14),this.apiUrl=`https://www.googleapis.com/drive/v3/files/${this.fileId}?alt=media`,this.headers=e||{},i?.publicUrl&&(this.publicUrl=i.publicUrl),this.length=r||0}async getLength(){return this.length}async doInitialFetch(t){let e=null,r=null;if(this.publicUrl){e=new Ys({url:this.publicUrl,length:this.length});try{r=await e.doInitialFetch(t)}catch(t){}if(!e.isValid&&(r&&r.abort&&r.abort.abort(),await this.refreshPublicUrl())){e=new Ys({url:this.publicUrl,length:this.length});try{r=await e.doInitialFetch(t)}catch(t){}!e.isValid&&r&&r.abort&&r.abort.abort()}}return e?.isValid||(this.publicUrl=null,e=new Ys({url:this.apiUrl,headers:this.headers,length:this.length}),r=await e.doInitialFetch(t)),this.isValid=e.isValid,!this.length&&e.length&&(this.length=e.length),r}async getRange(t,e,r=!1,i){let n=null;if(this.publicUrl){n=new Ys({url:this.publicUrl,length:this.length});try{return await n.getRange(t,e,r,i)}catch(s){if(await this.refreshPublicUrl()){n=new Ys({url:this.publicUrl,length:this.length});try{return await n.getRange(t,e,r,i)}catch(t){}}}this.publicUrl=null}n=new Ys({url:this.apiUrl,headers:this.headers,length:this.length});let s=50;for(;s<2e3;)try{return await n.getRange(t,e,r,i)}catch(t){if(t instanceof x&&t.info.resp?.headers.get("content-type").startsWith("application/json")){const e=await t.info.resp.json();if(e.error?.errors&&"userRateLimitExceeded"===e.error.errors[0].reason){console.log(`Exponential backoff, waiting for: ${s}`),await I(s),s*=2;continue}}throw t}throw new S("not found")}async refreshPublicUrl(){try{const t=await fetch(`${qs}/g/${this.fileId}`),e=await t.json();if(e.url)return this.publicUrl=e.url,!0}catch(t){}return!1}}class Xs extends Ks{arrayBuffer;size;constructor(t){super(!0),this.arrayBuffer=t,this.size=t.length,this.length=this.size}get isValid(){return!!this.arrayBuffer}async getLength(){return this.size}async doInitialFetch(t=!1){const e=t?null:ro(this.arrayBuffer);return{response:new Response(e),abort:null}}async getRange(t,e,r=!1){const i=this.arrayBuffer.slice(t,t+e);return r?ro(i):i}}class Zs extends Ks{url;blob;size;arrayBuffer=null;constructor({url:t,blob:e=null,size:r=null}){super(!0),this.url=t,this.blob=e,this.size=this.blob?this.blob.size:r||0,this.length=this.size}get isValid(){return!!this.blob}async getLength(){if(!this.blob?.size){const t=await fetch(this.url);this.blob=await t.blob(),this.size=this.blob.size,this.length=this.size}return this.size}async doInitialFetch(t=!1){if(!this.blob)try{const t=await fetch(this.url);this.blob=await t.blob(),this.size=this.blob.size,this.length=this.size}catch(t){throw console.warn(t),t}const e=this.blob.arrayBuffer?await this.blob.arrayBuffer():await this._getArrayBuffer();this.arrayBuffer=new Uint8Array(e);const r=t?null:ro(this.arrayBuffer);return{response:new Response(r),abort:null}}async getRange(t,e,r=!1){this.arrayBuffer||await this.doInitialFetch(!0);const i=this.arrayBuffer.slice(t,t+e);return r?ro(i):i}async _getArrayBuffer(){return new Promise(((t,e)=>{const r=new FileReader;r.onloadend=()=>{r.result instanceof ArrayBuffer?t(r.result):e(r.result)},this.blob&&r.readAsArrayBuffer(this.blob)}))}}class $s extends Ks{url;file;size;fileHandle;constructor({blob:t,size:e,extra:r,url:i}){super(!0),this.url=i,this.file=null,this.size=t?t.size:e||0,this.length=this.size,this.fileHandle=r.fileHandle}get isValid(){return!!this.file}async getLength(){return void 0===this.size&&await this.initFileObject(),this.size}async initFileObject(){const t={mode:"read"};if("granted"!==await this.fileHandle.queryPermission(t)&&"granted"!==await this.fileHandle.requestPermission(t))throw new T({fileHandle:this.fileHandle});this.file=await this.fileHandle.getFile(),this.size=this.file.size,this.length=this.size}async doInitialFetch(t=!1){this.file||await this.initFileObject();const e=t?null:this.file.stream();return{response:new Response(e),abort:null}}async getRange(t,e,r=!1){this.file||await this.initFileObject();const i=this.file.slice(t,t+e);return r?i.stream():new Uint8Array(await i.arrayBuffer())}}class to extends Ks{url;opts;length;isValid=!1;constructor({url:t,headers:e,...r}){super(!0),this.url=t,this.opts=r,this.headers=e||{},this.length=null}async getLength(){return null===this.length&&await this.doInitialFetch(!0),this.length}async doInitialFetch(t){const e=await zs(this.opts);try{this.length=await e.getSize(this.url),this.isValid=null!==this.length}catch(t){console.warn(t),this.length=null,this.isValid=!1}let r=206;this.isValid||(r=404);const i=new AbortController,n=i.signal;let s;return s=t||!this.isValid?new Uint8Array([]):eo(e.get(this.url,{signal:n})),{response:new Response(s,{status:r}),abort:i}}async getRange(t,e,r=!1,i=null){const n=(await zs(this.opts)).get(this.url,{start:t,end:t+e-1,signal:i});if(r)return eo(n);{const t=[];let e=0;for await(const r of n)t.push(r),e+=r.byteLength;return st(t,e)}}}function eo(t){return new ReadableStream({start:async e=>{try{for await(const r of t)e.enqueue(r)}catch(t){console.log(t)}e.close()}})}function ro(t){return new ReadableStream({start(e){e.enqueue(t),e.close()}})}class io extends is{noCache;streamMap;constructor(t,e=!1){super(t),this.noCache=e,this.useRefCounts=!e,this.streamMap=new Map}isSameUrl(t,e,r){if(t===e)return!0;const i=decodeURIComponent(t),n=decodeURIComponent(e);return i===n||!(!r||!n.startsWith(i))}async loadPayload(t,e){let r=await super.loadPayload(t,e);if(r&&t.respHeaders&&("warc/revisit"!==t.mime||t.status>=300&&t.status<400))return r;const i=this.streamMap.get(t.url);if(i)return console.log(`Reuse stream for ${t.url}`),new ao(i);const{remote:n,hasher:s}=await this.loadRecordFromSource(t);if(!n)return console.log(`No WARC Record Loaded for: ${t.url}`),null;if(!this.isSameUrl(n.url,t.url,t.method))return console.log(`Wrong url: expected ${t.url}, got ${n.url}`),null;if(n.ts!==t.ts&&1e3*Math.floor(n.ts/1e3)!==t.ts)return console.log(`Wrong timestamp: expected ${t.ts}, got ${n.ts}`),null;if(n.digest!==t.digest&&t.digest&&n.digest){const e=n.digest.split(":"),r=t.digest.split(":");2===e.length&&2===r.length&&r[1]===e[1]?t.digest=e[0]+":"+r[1]:console.log(`Wrong digest: expected ${t.digest}, got ${n.digest}`)}if(n.origURL){if(!r&&t.status>=300&&t.status<400&&n.respHeaders){if(t.respHeaders=n.respHeaders,!this.noCache)try{await this.db.put("resources",t)}catch(t){console.log(t)}return new Uint8Array([])}const i=await this.lookupUrl(n.origURL,n.origTS||0,{...e,noRevisits:!0});if(!i)return null;const s=e.depth||0;if(!r&&(s<2?r=await this.loadPayload(i,{...e,depth:s+1}):console.warn("Avoiding revisit lookup loop for: "+JSON.stringify(n)),!r))return null;if(n.respHeaders&&i.respHeaders?(t.respHeaders=n.respHeaders,i.respHeaders["content-length"]&&(t.respHeaders["content-length"]=i.respHeaders["content-length"])):t.respHeaders=i.respHeaders,t.mime=i.mime,t.digest=i.digest,i.extraOpts&&(t.extraOpts=i.extraOpts),!this.noCache){delete t.payload;try{await this.db.put("resources",t)}catch(t){console.log(t)}i.digest!==n.digest&&n.digest&&r instanceof Uint8Array&&await this.commitPayload(r,n.digest)}return r}const o=n.digest,a=t.source.length>=25e6;if(!this.noCache&&!a&&n.reader&&o&&(n.reader=new lo(this,n.reader,o,t.url,this.streamMap,s||null,t.recordDigest,t.source)),a&&console.log("Not cacheing, too big: "+t.url),r=n.payload||null,!r&&!n.reader)return null;try{r&&!this.noCache&&!a&&o&&await this.commitPayload(r,o)}catch(e){console.warn(`Payload Update Error: ${t.url}`),console.warn(e)}if(!(t.respHeaders&&t.digest||(t.respHeaders=n.respHeaders,t.digest=o,n.extraOpts&&(t.extraOpts=n.extraOpts),this.noCache||a)))try{await this.db.put("resources",t)}catch(e){console.warn(`Resource Update Error: ${t.url}`),console.warn(e)}return r||n.reader||null}async commitPayload(t,e){if(!t||0===t.length)return;const r=this.db.transaction(["payload","digestRef"],"readwrite");try{if(r.objectStore("payload").put({payload:t,digest:e}),this.useRefCounts){const i=await r.objectStore("digestRef").get(e);i&&(i.size=t.length,r.objectStore("digestRef").put(i))}await r.done}catch(t){console.warn("Payload Commit Error: "+t)}}}class no extends io{async loadRecordFromSource(t){const e=await this.loadSource(t.source),r=new cs(e);return{remote:await r.load()}}}class so extends no{loader;constructor(t,e,r=!1){super(t,r),this.loader=e}updateHeaders(t){this.loader.headers=t}async loadSource(t){const{start:e,length:r}=t;return await this.loader.getRange(e,r,!0)}}class oo extends no{remoteUrlPrefix;headers;constructor(t,e,r,i=!1){super(t,i),this.remoteUrlPrefix=e,this.headers=r}updateHeaders(t){this.headers=t}async loadSource(t){const{start:e,length:r}=t,i=new Headers(this.headers),n=new URL(t.path,this.remoteUrlPrefix).href,s=await Qs({url:n,headers:i});return await s.getRange(e,r,!0)}}class ao extends pt{chunkstore;offset;size;constructor(t){super(),this.chunkstore=t,this.offset=0,this.size=this.chunkstore.totalLength}setLimitSkip(t=-1,e=0){this.offset=e,t>0&&(this.size=t)}setRangeAll(t){this.size=t}async*[Symbol.asyncIterator](){yield*this.chunkstore.getChunkIter()}getReadableStream(){console.log(`Offset: ${this.offset}, Size: ${this.size}`);const t=this.chunkstore.getChunkIter();return new ft(t,this.size,this.offset).getReadableStream()}async readlineRaw(t){throw new Error("Method not implemented.")}}class co{chunks;size=0;done=!1;totalLength;nextChunk;_nextResolve=()=>{};constructor(t){this.chunks=[],this.size=0,this.done=!1,this.totalLength=t,this.nextChunk=new Promise((t=>this._nextResolve=t))}add(t){this.chunks.push(t),this.size+=t.byteLength,this._nextResolve(!0),this.nextChunk=new Promise((t=>this._nextResolve=t))}concatChunks(){return this._nextResolve(!1),this.done=!0,st(this.chunks,this.size)}async*getChunkIter(){for(const t of this.chunks)yield t;let t=this.chunks.length;for(;!this.done&&await this.nextChunk;)for(;t<this.chunks.length;t++)yield this.chunks[t]}}class lo extends pt{db;reader;digest;url;commit=!0;fullbuff=null;hasher;expectedHash;source;isRange=!1;totalLength=-1;fixedSize=0;streamMap;constructor(t,e,r,i="",n,s,o,a){super(),this.db=t,this.reader=e,this.digest=r,this.url=i,this.commit=!0,this.fullbuff=null,this.hasher=s,this.expectedHash=o,this.source=a,this.isRange=!1,this.totalLength=-1,this.streamMap=n}setRangeAll(t){this.isRange=!0,this.totalLength=t}setLimitSkip(t=-1,e=0){this.isRange=!0,2!==t||0!==e?((-1!=t||e>0)&&(this.commit=!1),this.reader.setLimitSkip(t,e)):this.fixedSize=2}async*[Symbol.asyncIterator](){let t=null;this.commit&&(t=new co(this.totalLength),this.isRange&&(console.log(`Store stream for ${this.url}, ${this.totalLength}`),this.streamMap.set(this.url,t)));for await(const e of this.reader)t&&t.add(e),yield e;if(0!==this.reader.limit)console.warn(`Expected payload not consumed, ${this.reader.limit} bytes left`);else{if(!this.isRange&&this.hasher&&this.expectedHash&&this.source){const t=this.hasher.getHash(),{path:e,start:r,length:i}=this.source,n=`${e}:${r}-${i}`;this.db.addVerifyData(n,this.expectedHash,t)}this.commit&&(this.fullbuff=t.concatChunks(),await this.db.commitPayload(this.fullbuff,this.digest))}this.commit&&this.isRange&&(this.streamMap.delete(this.url),console.log(`Delete stream for ${this.url}`))}async _consumeIter(t){for await(const e of t);}async readFully(){return this.fullbuff||await this._consumeIter(this),this.fullbuff}getReadableStream(){const t=super.getReadableStream();if(!this.commit)return t;const e=t.tee();return this._consumeIter(dt.fromReadable(e[1].getReader())),this.fixedSize?this.getFixedSizeReader(e[0].getReader(),this.fixedSize):e[0]}getFixedSizeReader(t,e){return new ReadableStream({async start(r){const{value:i,done:n}=await t.read();n||r.enqueue(i.slice(0,e)),r.close()}})}async readlineRaw(t){throw new Error("Method not implemented.")}}class ho extends os{har;pageRefs;constructor(t){super(),this.har="string"==typeof t?JSON.parse(t):t,this.pageRefs={}}async load(t){this.db=t,this.parseEntries(this.har),this.parsePages(this.har),await this.finishIndexing()}parsePages(t){for(const e of t.log.pages){if(!e.pageTimings?.onLoad)continue;let t;t=e.title&&(e.title.startsWith("http:")||e.title.startsWith("https:"))?e.title:this.pageRefs[e.id];const r=e.title||t,i=e.startedDateTime;this.addPage({url:t,date:i,title:r})}}parseEntries(t){for(const e of t.log.entries){const r=new Date(e.startedDateTime).getTime(),i={};for(const{name:t,value:r}of e.response.headers)i[t]=r;let n=null;const s=new TextEncoder;if(e.response.content?.text)try{n=Uint8Array.from(atob(e.response.content.text),(t=>t.charCodeAt(0)))}catch(t){n=e.response.content.text}else{const t=i["Content-Length"];t&&"0"!==t?(console.log(`Warning: Content-Length ${t} but no content found for ${e.request.url}`),n=s.encode("Sorry, the HAR file did not include the content for this resource.")):n=Uint8Array.from([])}this.addResource({url:e.request.url,ts:r,status:e.response.status,respHeaders:i,payload:n}),e.pageref&&!this.pageRefs[e.pageref]&&(this.pageRefs[e.pageref]=e.request.url)}}}const uo="req.http:cookie";class po extends as{cdxindexer=null;sourceExtra;shaPrefix;constructor(t,e,r,i={},n="sha256:"){super(t,e,r),this.sourceExtra=i,this.shaPrefix=n}filterRecord(t){switch(t.warcType){case"warcinfo":case"revisit":case"request":return null;case"metadata":return this.shouldIndexMetadataRecord(t)?null:"skip"}const e=t.warcTargetURI,r=t.warcDate?new Date(t.warcDate).getTime():Date.now();return this.pageMap[r+"/"+e]?(t._isPage=!0,null):null}index(t,e){return t&&(t._offset=e.offset,t._length=e.recordLength),super.index(t,e)}indexReqResponse(t,e,r){if(t._isPage)return super.indexReqResponse(t,e,r);if("warcinfo"===t.warcType)return void this.parseWarcInfo(t);this.cdxindexer||(this.cdxindexer=new Ot({noSurt:!0}));const i=this.cdxindexer.indexRecordPair(t,e,r,"");if(i){if(206===i.status){const e=t.httpHeaders?.headers;if(e&&!this.isFullRangeRequest(e))return}if(e&&e.httpHeaders){const t=e.httpHeaders.headers.get("cookie");t&&(i[uo]=t)}this.addCdx(i)}}getSource(t){return{...this.sourceExtra,path:t.filename,start:Number(t.offset),length:Number(t.length)}}addCdx(t){const{url:e,mime:r}=t,i=Number(t.status)||200,n=h(t.timestamp).getTime(),s=this.getSource(t);let{digest:o,recordDigest:a}=t;o&&-1===o.indexOf(":")&&(o=this.shaPrefix+o);const c={url:e,ts:n,status:i,digest:o,recordDigest:a,mime:r,loaded:!1,source:s};if(t.method){if("HEAD"===t.method||"OPTIONS"===t.method)return;c.method=t.method}t[uo]&&(c[uo]=t[uo]),t.method&&"GET"!==t.method&&(c.url=rt(t.url,t.requestBody||"",t.method)),this.addResource(c)}}class fo extends po{async load(t,e,r){this.db=t;let i=this.reader;i.iterLines||(i=new dt(this.reader));let n=0;for await(const s of i.iterLines()){let i,o,a;n+=s.length;let c=s.trimEnd();if(!c.startsWith("{")){const t=c.indexOf(" {");if(t<0)continue;[o,a]=c.split(" ",2),c=c.slice(t)}try{i=JSON.parse(c)}catch(t){console.log("JSON Parser error on: "+c);continue}i.timestamp=a,i.url||(i.url=o,console.warn(`URL missing, using urlkey ${o}`)),e&&r&&this.isBatchFull()&&e(Math.round(n/r*100),null,n,r),this.addCdx(i)}return await this.finishIndexing(),e&&e(100,null,r,r),{}}}const go=4294967295,yo=65535;class mo{start;length;constructor(t,e){this.start=t,this.length=e}}class wo extends dt{hasher=null;hashInited=!1;hash="";constructor(t,e="gzip",r=!1){super(t,e,r)}async initHasher(){try{this.hasher=await X(Z,32).then((t=>{t.init(256);const e={init:()=>(t.init(256),e),update:r=>(t.update(r),e),digest:e=>t.digest(e),save:()=>t.save(),load:r=>(t.load(r),e),blockSize:64,digestSize:32};return e}))}catch(t){console.warn("Hasher init failed, not hashing",t)}finally{this.hashInited=!0}}async _loadNext(){const t=await super._loadNext();return t?(this.hashInited||await this.initHasher(),this.hasher.update(t)):this.hasher&&(this.hash="sha256:"+this.hasher.digest("hex"),this.hasher=null),t}getHash(){return this.hash}}class bo{loader;entriesUpdated=!1;enableHashing=!1;entries=null;constructor(t,e=null){this.loader=t,this.entries=e,this.entriesUpdated=!1,this.enableHashing=!0}async load(t=!1){if(!this.entries||t){const e=await this.loader.getLength(),r=Math.min(65558,e),i=e-r,n=await this.loader.getRange(i,r,!1);try{this.entries=this._loadEntries(n,i)}catch(t){if(t instanceof mo){const e=st([await this.loader.getRange(t.start,t.length,!1),n],t.length+r);this.entries=this._loadEntries(e,t.start)}}this.entriesUpdated=!0}return this.entries}_loadEntries(t,e){const r=t.byteLength;if(!r)return null;const i=new DataView(t.buffer,t.byteOffset,t.byteLength),n=new TextDecoder("utf8"),s=new TextDecoder("ascii"),o={};let a=0,c=0,l=r;for(let e=r-22,n=Math.max(0,e-yo);e>=n;--e)if(80===t[e]&&75===t[e+1]&&5===t[e+2]&&6===t[e+3]){l=e,c=i.getUint32(e+16,!0),a=i.getUint16(e+8,!0);break}if(c===go||a===yo){if(117853008!==i.getUint32(l-20,!0))return console.warn("invalid zip64 EOCD locator"),null;const t=this.getUint64(i,l-12,!0)-e;if(101075792!==i.getUint32(t,!0))return console.warn("invalid zip64 EOCD record"),null;a=this.getUint64(i,t+32,!0),c=this.getUint64(i,t+48,!0)}if(c>=e)c-=e;else if(c<e&&c>0)throw new mo(c,e-c);if(c>=r||c<0)for(c=-1,a=yo;++c<r&&80!==t[c]&&75!==t[c+1]&&1!==t[c+2]&&2!==t[c+3];);for(l-=46;--a>=0&&c<l&&1347092738==i.getUint32(c);){const e=i.getUint16(c+8,!0);let r=i.getUint32(c+20,!0),a=i.getUint32(c+24,!0);const l=i.getUint16(c+28,!0),h=i.getUint16(c+30,!0),u=i.getUint16(c+32,!0),p=8===i.getUint16(c+10,!0);let d=i.getUint32(c+42,!0);const f=(2048&e?n:s).decode(t.subarray(c+46,c+46+l));if(r===go||a===go||d===go){let t=c+46+l;const e=t+h-3;for(;t<e;){const e=i.getUint16(t,!0);let n=i.getUint16(t+2,!0);t+=4,1===e&&(a===go&&n>=8&&(a=this.getUint64(i,t,!0),t+=8,n-=8),r===go&&n>=8&&(r=this.getUint64(i,t,!0),t+=8,n-=8),d===go&&n>=8&&(d=this.getUint64(i,t,!0),t+=8,n-=8)),t+=n}}f.endsWith("/")||(o[f]={filename:f,deflate:p,uncompressedSize:a,compressedSize:r,localEntryOffset:d},h||(o[f].offset=30+l+d)),c+=46+l+h+u}return o}getCompressedSize(t){if(null===this.entries)return 0;const e=this.entries[t];return e?isNaN(e.compressedSize)?0:e.compressedSize:0}async loadFile(t,{offset:e=0,length:r=-1,signal:i=null,unzip:n=!1,computeHash:s=!1}={}){if(null===this.entries&&await this.load(),!this.entries)throw new Error("entries not loaded");const o=this.entries[t];if(!o)throw new Error("file not found in zip: "+t);if(void 0===o.offset){const t=await this.loader.getRange(o.localEntryOffset,30,!1),e=new DataView(t.buffer,t.byteOffset,t.byteLength),r=e.getUint16(26,!0),i=e.getUint16(28,!0);o.offset=30+r+i+o.localEntryOffset,this.entriesUpdated=!0}r=r<0?o.compressedSize:Math.min(r,o.compressedSize-e),e+=o.offset;const a=(await this.loader.getRange(e,r,!0,i)).getReader();let c,l=null;return c=n?o.deflate?new dt(new dt(a,"deflate")):new dt(a):new dt(a,o.deflate?"deflate":null),c=(t=>s&&this.enableHashing?(l=new wo(t),l):t)(c),{reader:c,hasher:l}}getUint64(t,e,r){const i=t.getUint32(e,r),n=t.getUint32(e+4,r),s=r?i+2**32*n:2**32*i+n;return Number.isSafeInteger(s)||console.warn(s,"exceeds MAX_SAFE_INTEGER. Precision may be lost"),s}}class Ao extends Ks{zipreader;filename;size=0;constructor(t,e){super(!0),this.zipreader=t,this.filename=e}get isValid(){return!0}async doInitialFetch(t=!1){await this.zipreader.load(),this.size=this.zipreader.getCompressedSize(this.filename);let e=null;if(!t){const{reader:t}=await this.zipreader.loadFile(this.filename,{unzip:!0});e=eo(t)}return{response:new Response(e),abort:null}}async getLength(){return null===this.size&&await this.doInitialFetch(!0),this.size}async getRange(t,e,r=!1,i=null){const{reader:n}=await this.zipreader.loadFile(this.filename,{offset:t,length:e,signal:i,unzip:!0});return r?eo(n):await n.readFully()}}class vo{waczname;hash;path;parent;fileType;indexType;entries;nonSurt;loader;zipreader;constructor({waczname:t,hash:e,path:r,parent:i=null,entries:n=null,fileType:s="wacz",indexType:o=0,nonSurt:a=!1,loader:c=null}){this.waczname=t,this.hash=e,this.path=r,this.loader=c,this.parent=i,this.zipreader=null,this.entries=n,this.indexType=o,this.fileType=s,this.nonSurt=a}markAsMultiWACZ(){this.fileType="multi-wacz"}async init(t){if(t&&(this.path=t),this.loader)return await this.initFromLoader(this.loader);if(!this.parent)throw new Error("must have either loader or parent");const e=await this.parent.createLoader({url:this.path});return await this.initFromLoader(e)}async initFromLoader(t){return this.zipreader=new bo(t,this.entries),this.entries||(this.entries=await this.zipreader.load()||{}),this.entries}async loadFile(t,e){return this.zipreader||await this.init(),await this.zipreader.loadFile(t,e)}containsFile(t){return this.entries&&!!this.entries[t]}getSizeOf(t){return this.zipreader?this.zipreader.getCompressedSize(t):0}serialize(){return{waczname:this.waczname,hash:this.hash,path:this.path,entries:this.entries,indexType:this.indexType,nonSurt:this.nonSurt}}async save(t,e=!1){const r=this.zipreader;(e||r&&r.entriesUpdated)&&(await t.put("waczfiles",this.serialize()),r&&(r.entriesUpdated=!1))}iterContainedFiles(){return this.entries?Object.keys(this.entries):[]}getLoadPath(t){return this.waczname+"#!/"+t}getName(t){return this.waczname+"#!/"+t}async createLoader(t){const{url:e}=t,r=e.lastIndexOf("#!/");if(this.zipreader||await this.init(),r>=0)return new Ao(this.zipreader,e.slice(r+3));throw new Error("invalid wacz url: "+e)}}
46
- /*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function _o(t){return null==t}var Eo={isNothing:_o,isObject:function(t){return"object"==typeof t&&null!==t},toArray:function(t){return Array.isArray(t)?t:_o(t)?[]:[t]},repeat:function(t,e){var r,i="";for(r=0;r<e;r+=1)i+=t;return i},isNegativeZero:function(t){return 0===t&&Number.NEGATIVE_INFINITY===1/t},extend:function(t,e){var r,i,n,s;if(e)for(r=0,i=(s=Object.keys(e)).length;r<i;r+=1)t[n=s[r]]=e[n];return t}};function So(t,e){var r="",i=t.reason||"(unknown reason)";return t.mark?(t.mark.name&&(r+='in "'+t.mark.name+'" '),r+="("+(t.mark.line+1)+":"+(t.mark.column+1)+")",!e&&t.mark.snippet&&(r+="\n\n"+t.mark.snippet),i+" "+r):i}function To(t,e){Error.call(this),this.name="YAMLException",this.reason=t,this.mark=e,this.message=So(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack||""}To.prototype=Object.create(Error.prototype),To.prototype.constructor=To,To.prototype.toString=function(t){return this.name+": "+So(this,t)};var xo=To;function Co(t,e,r,i,n){var s="",o="",a=Math.floor(n/2)-1;return i-e>a&&(e=i-a+(s=" ... ").length),r-i>a&&(r=i+a-(o=" ...").length),{str:s+t.slice(e,r).replace(/\t/g,"→")+o,pos:i-e+s.length}}function Io(t,e){return Eo.repeat(" ",e-t.length)+t}var Ro=function(t,e){if(e=Object.create(e||null),!t.buffer)return null;e.maxLength||(e.maxLength=79),"number"!=typeof e.indent&&(e.indent=1),"number"!=typeof e.linesBefore&&(e.linesBefore=3),"number"!=typeof e.linesAfter&&(e.linesAfter=2);for(var r,i=/\r?\n|\r|\0/g,n=[0],s=[],o=-1;r=i.exec(t.buffer);)s.push(r.index),n.push(r.index+r[0].length),t.position<=r.index&&o<0&&(o=n.length-2);o<0&&(o=n.length-1);var a,c,l="",h=Math.min(t.line+e.linesAfter,s.length).toString().length,u=e.maxLength-(e.indent+h+3);for(a=1;a<=e.linesBefore&&!(o-a<0);a++)c=Co(t.buffer,n[o-a],s[o-a],t.position-(n[o]-n[o-a]),u),l=Eo.repeat(" ",e.indent)+Io((t.line-a+1).toString(),h)+" | "+c.str+"\n"+l;for(c=Co(t.buffer,n[o],s[o],t.position,u),l+=Eo.repeat(" ",e.indent)+Io((t.line+1).toString(),h)+" | "+c.str+"\n",l+=Eo.repeat("-",e.indent+h+3+c.pos)+"^\n",a=1;a<=e.linesAfter&&!(o+a>=s.length);a++)c=Co(t.buffer,n[o+a],s[o+a],t.position-(n[o]-n[o+a]),u),l+=Eo.repeat(" ",e.indent)+Io((t.line+a+1).toString(),h)+" | "+c.str+"\n";return l.replace(/\n$/,"")},ko=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],No=["scalar","sequence","mapping"],Oo=function(t,e){if(e=e||{},Object.keys(e).forEach((function(e){if(-1===ko.indexOf(e))throw new xo('Unknown option "'+e+'" is met in definition of "'+t+'" YAML type.')})),this.options=e,this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(t){return t},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=function(t){var e={};return null!==t&&Object.keys(t).forEach((function(r){t[r].forEach((function(t){e[String(t)]=r}))})),e}(e.styleAliases||null),-1===No.indexOf(this.kind))throw new xo('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')};function Bo(t,e){var r=[];return t[e].forEach((function(t){var e=r.length;r.forEach((function(r,i){r.tag===t.tag&&r.kind===t.kind&&r.multi===t.multi&&(e=i)})),r[e]=t})),r}function Po(t){return this.extend(t)}Po.prototype.extend=function(t){var e=[],r=[];if(t instanceof Oo)r.push(t);else if(Array.isArray(t))r=r.concat(t);else{if(!t||!Array.isArray(t.implicit)&&!Array.isArray(t.explicit))throw new xo("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");t.implicit&&(e=e.concat(t.implicit)),t.explicit&&(r=r.concat(t.explicit))}e.forEach((function(t){if(!(t instanceof Oo))throw new xo("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(t.loadKind&&"scalar"!==t.loadKind)throw new xo("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(t.multi)throw new xo("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")})),r.forEach((function(t){if(!(t instanceof Oo))throw new xo("Specified list of YAML types (or a single Type object) contains a non-Type object.")}));var i=Object.create(Po.prototype);return i.implicit=(this.implicit||[]).concat(e),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=Bo(i,"implicit"),i.compiledExplicit=Bo(i,"explicit"),i.compiledTypeMap=function(){var t,e,r={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}};function i(t){t.multi?(r.multi[t.kind].push(t),r.multi.fallback.push(t)):r[t.kind][t.tag]=r.fallback[t.tag]=t}for(t=0,e=arguments.length;t<e;t+=1)arguments[t].forEach(i);return r}(i.compiledImplicit,i.compiledExplicit),i};var Do=Po,Lo=new Oo("tag:yaml.org,2002:str",{kind:"scalar",construct:function(t){return null!==t?t:""}}),Uo=new Oo("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(t){return null!==t?t:[]}}),Mo=new Oo("tag:yaml.org,2002:map",{kind:"mapping",construct:function(t){return null!==t?t:{}}}),Fo=new Do({explicit:[Lo,Uo,Mo]}),Ho=new Oo("tag:yaml.org,2002:null",{kind:"scalar",resolve:function(t){if(null===t)return!0;var e=t.length;return 1===e&&"~"===t||4===e&&("null"===t||"Null"===t||"NULL"===t)},construct:function(){return null},predicate:function(t){return null===t},represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"}),jo=new Oo("tag:yaml.org,2002:bool",{kind:"scalar",resolve:function(t){if(null===t)return!1;var e=t.length;return 4===e&&("true"===t||"True"===t||"TRUE"===t)||5===e&&("false"===t||"False"===t||"FALSE"===t)},construct:function(t){return"true"===t||"True"===t||"TRUE"===t},predicate:function(t){return"[object Boolean]"===Object.prototype.toString.call(t)},represent:{lowercase:function(t){return t?"true":"false"},uppercase:function(t){return t?"TRUE":"FALSE"},camelcase:function(t){return t?"True":"False"}},defaultStyle:"lowercase"});function Wo(t){return 48<=t&&t<=55}function Vo(t){return 48<=t&&t<=57}var Go=new Oo("tag:yaml.org,2002:int",{kind:"scalar",resolve:function(t){if(null===t)return!1;var e,r,i=t.length,n=0,s=!1;if(!i)return!1;if("-"!==(e=t[n])&&"+"!==e||(e=t[++n]),"0"===e){if(n+1===i)return!0;if("b"===(e=t[++n])){for(n++;n<i;n++)if("_"!==(e=t[n])){if("0"!==e&&"1"!==e)return!1;s=!0}return s&&"_"!==e}if("x"===e){for(n++;n<i;n++)if("_"!==(e=t[n])){if(!(48<=(r=t.charCodeAt(n))&&r<=57||65<=r&&r<=70||97<=r&&r<=102))return!1;s=!0}return s&&"_"!==e}if("o"===e){for(n++;n<i;n++)if("_"!==(e=t[n])){if(!Wo(t.charCodeAt(n)))return!1;s=!0}return s&&"_"!==e}}if("_"===e)return!1;for(;n<i;n++)if("_"!==(e=t[n])){if(!Vo(t.charCodeAt(n)))return!1;s=!0}return!(!s||"_"===e)},construct:function(t){var e,r=t,i=1;if(-1!==r.indexOf("_")&&(r=r.replace(/_/g,"")),"-"!==(e=r[0])&&"+"!==e||("-"===e&&(i=-1),e=(r=r.slice(1))[0]),"0"===r)return 0;if("0"===e){if("b"===r[1])return i*parseInt(r.slice(2),2);if("x"===r[1])return i*parseInt(r.slice(2),16);if("o"===r[1])return i*parseInt(r.slice(2),8)}return i*parseInt(r,10)},predicate:function(t){return"[object Number]"===Object.prototype.toString.call(t)&&t%1==0&&!Eo.isNegativeZero(t)},represent:{binary:function(t){return t>=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},octal:function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)},decimal:function(t){return t.toString(10)},hexadecimal:function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),zo=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),qo=/^[-+]?[0-9]+e/,Qo=new Oo("tag:yaml.org,2002:float",{kind:"scalar",resolve:function(t){return null!==t&&!(!zo.test(t)||"_"===t[t.length-1])},construct:function(t){var e,r;return r="-"===(e=t.replace(/_/g,"").toLowerCase())[0]?-1:1,"+-".indexOf(e[0])>=0&&(e=e.slice(1)),".inf"===e?1===r?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:".nan"===e?NaN:r*parseFloat(e,10)},predicate:function(t){return"[object Number]"===Object.prototype.toString.call(t)&&(t%1!=0||Eo.isNegativeZero(t))},represent:function(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Eo.isNegativeZero(t))return"-0.0";return r=t.toString(10),qo.test(r)?r.replace("e",".e"):r},defaultStyle:"lowercase"}),Ko=Fo.extend({implicit:[Ho,jo,Go,Qo]}),Yo=Ko,Jo=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Xo=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]))?))?$"),Zo=new Oo("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:function(t){return null!==t&&(null!==Jo.exec(t)||null!==Xo.exec(t))},construct:function(t){var e,r,i,n,s,o,a,c,l=0,h=null;if(null===(e=Jo.exec(t))&&(e=Xo.exec(t)),null===e)throw new Error("Date resolve error");if(r=+e[1],i=+e[2]-1,n=+e[3],!e[4])return new Date(Date.UTC(r,i,n));if(s=+e[4],o=+e[5],a=+e[6],e[7]){for(l=e[7].slice(0,3);l.length<3;)l+="0";l=+l}return e[9]&&(h=6e4*(60*+e[10]+ +(e[11]||0)),"-"===e[9]&&(h=-h)),c=new Date(Date.UTC(r,i,n,s,o,a,l)),h&&c.setTime(c.getTime()-h),c},instanceOf:Date,represent:function(t){return t.toISOString()}}),$o=new Oo("tag:yaml.org,2002:merge",{kind:"scalar",resolve:function(t){return"<<"===t||null===t}}),ta="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r",ea=new Oo("tag:yaml.org,2002:binary",{kind:"scalar",resolve:function(t){if(null===t)return!1;var e,r,i=0,n=t.length,s=ta;for(r=0;r<n;r++)if(!((e=s.indexOf(t.charAt(r)))>64)){if(e<0)return!1;i+=6}return i%8==0},construct:function(t){var e,r,i=t.replace(/[\r\n=]/g,""),n=i.length,s=ta,o=0,a=[];for(e=0;e<n;e++)e%4==0&&e&&(a.push(o>>16&255),a.push(o>>8&255),a.push(255&o)),o=o<<6|s.indexOf(i.charAt(e));return 0==(r=n%4*6)?(a.push(o>>16&255),a.push(o>>8&255),a.push(255&o)):18===r?(a.push(o>>10&255),a.push(o>>2&255)):12===r&&a.push(o>>4&255),new Uint8Array(a)},predicate:function(t){return"[object Uint8Array]"===Object.prototype.toString.call(t)},represent:function(t){var e,r,i="",n=0,s=t.length,o=ta;for(e=0;e<s;e++)e%3==0&&e&&(i+=o[n>>18&63],i+=o[n>>12&63],i+=o[n>>6&63],i+=o[63&n]),n=(n<<8)+t[e];return 0==(r=s%3)?(i+=o[n>>18&63],i+=o[n>>12&63],i+=o[n>>6&63],i+=o[63&n]):2===r?(i+=o[n>>10&63],i+=o[n>>4&63],i+=o[n<<2&63],i+=o[64]):1===r&&(i+=o[n>>2&63],i+=o[n<<4&63],i+=o[64],i+=o[64]),i}}),ra=Object.prototype.hasOwnProperty,ia=Object.prototype.toString,na=new Oo("tag:yaml.org,2002:omap",{kind:"sequence",resolve:function(t){if(null===t)return!0;var e,r,i,n,s,o=[],a=t;for(e=0,r=a.length;e<r;e+=1){if(i=a[e],s=!1,"[object Object]"!==ia.call(i))return!1;for(n in i)if(ra.call(i,n)){if(s)return!1;s=!0}if(!s)return!1;if(-1!==o.indexOf(n))return!1;o.push(n)}return!0},construct:function(t){return null!==t?t:[]}}),sa=Object.prototype.toString,oa=new Oo("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:function(t){if(null===t)return!0;var e,r,i,n,s,o=t;for(s=new Array(o.length),e=0,r=o.length;e<r;e+=1){if(i=o[e],"[object Object]"!==sa.call(i))return!1;if(1!==(n=Object.keys(i)).length)return!1;s[e]=[n[0],i[n[0]]]}return!0},construct:function(t){if(null===t)return[];var e,r,i,n,s,o=t;for(s=new Array(o.length),e=0,r=o.length;e<r;e+=1)i=o[e],n=Object.keys(i),s[e]=[n[0],i[n[0]]];return s}}),aa=Object.prototype.hasOwnProperty,ca=new Oo("tag:yaml.org,2002:set",{kind:"mapping",resolve:function(t){if(null===t)return!0;var e,r=t;for(e in r)if(aa.call(r,e)&&null!==r[e])return!1;return!0},construct:function(t){return null!==t?t:{}}}),la=Yo.extend({implicit:[Zo,$o],explicit:[ea,na,oa,ca]}),ha=Object.prototype.hasOwnProperty,ua=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,pa=/[\x85\u2028\u2029]/,da=/[,\[\]\{\}]/,fa=/^(?:!|!!|![a-z\-]+!)$/i,ga=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function ya(t){return Object.prototype.toString.call(t)}function ma(t){return 10===t||13===t}function wa(t){return 9===t||32===t}function ba(t){return 9===t||32===t||10===t||13===t}function Aa(t){return 44===t||91===t||93===t||123===t||125===t}function va(t){var e;return 48<=t&&t<=57?t-48:97<=(e=32|t)&&e<=102?e-97+10:-1}function _a(t){return 48===t?"\0":97===t?"":98===t?"\b":116===t||9===t?"\t":110===t?"\n":118===t?"\v":102===t?"\f":114===t?"\r":101===t?"":32===t?" ":34===t?'"':47===t?"/":92===t?"\\":78===t?"…":95===t?" ":76===t?"\u2028":80===t?"\u2029":""}function Ea(t){return t<=65535?String.fromCharCode(t):String.fromCharCode(55296+(t-65536>>10),56320+(t-65536&1023))}for(var Sa=new Array(256),Ta=new Array(256),xa=0;xa<256;xa++)Sa[xa]=_a(xa)?1:0,Ta[xa]=_a(xa);function Ca(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||la,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function Ia(t,e){var r={name:t.filename,buffer:t.input.slice(0,-1),position:t.position,line:t.line,column:t.position-t.lineStart};return r.snippet=Ro(r),new xo(e,r)}function Ra(t,e){throw Ia(t,e)}function ka(t,e){t.onWarning&&t.onWarning.call(null,Ia(t,e))}var Na={YAML:function(t,e,r){var i,n,s;null!==t.version&&Ra(t,"duplication of %YAML directive"),1!==r.length&&Ra(t,"YAML directive accepts exactly one argument"),null===(i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]))&&Ra(t,"ill-formed argument of the YAML directive"),n=parseInt(i[1],10),s=parseInt(i[2],10),1!==n&&Ra(t,"unacceptable YAML version of the document"),t.version=r[0],t.checkLineBreaks=s<2,1!==s&&2!==s&&ka(t,"unsupported YAML version of the document")},TAG:function(t,e,r){var i,n;2!==r.length&&Ra(t,"TAG directive accepts exactly two arguments"),i=r[0],n=r[1],fa.test(i)||Ra(t,"ill-formed tag handle (first argument) of the TAG directive"),ha.call(t.tagMap,i)&&Ra(t,'there is a previously declared suffix for "'+i+'" tag handle'),ga.test(n)||Ra(t,"ill-formed tag prefix (second argument) of the TAG directive");try{n=decodeURIComponent(n)}catch(e){Ra(t,"tag prefix is malformed: "+n)}t.tagMap[i]=n}};function Oa(t,e,r,i){var n,s,o,a;if(e<r){if(a=t.input.slice(e,r),i)for(n=0,s=a.length;n<s;n+=1)9===(o=a.charCodeAt(n))||32<=o&&o<=1114111||Ra(t,"expected valid JSON character");else ua.test(a)&&Ra(t,"the stream contains non-printable characters");t.result+=a}}function Ba(t,e,r,i){var n,s,o,a;for(Eo.isObject(r)||Ra(t,"cannot merge mappings; the provided source object is unacceptable"),o=0,a=(n=Object.keys(r)).length;o<a;o+=1)s=n[o],ha.call(e,s)||(e[s]=r[s],i[s]=!0)}function Pa(t,e,r,i,n,s,o,a,c){var l,h;if(Array.isArray(n))for(l=0,h=(n=Array.prototype.slice.call(n)).length;l<h;l+=1)Array.isArray(n[l])&&Ra(t,"nested arrays are not supported inside keys"),"object"==typeof n&&"[object Object]"===ya(n[l])&&(n[l]="[object Object]");if("object"==typeof n&&"[object Object]"===ya(n)&&(n="[object Object]"),n=String(n),null===e&&(e={}),"tag:yaml.org,2002:merge"===i)if(Array.isArray(s))for(l=0,h=s.length;l<h;l+=1)Ba(t,e,s[l],r);else Ba(t,e,s,r);else t.json||ha.call(r,n)||!ha.call(e,n)||(t.line=o||t.line,t.lineStart=a||t.lineStart,t.position=c||t.position,Ra(t,"duplicated mapping key")),"__proto__"===n?Object.defineProperty(e,n,{configurable:!0,enumerable:!0,writable:!0,value:s}):e[n]=s,delete r[n];return e}function Da(t){var e;10===(e=t.input.charCodeAt(t.position))?t.position++:13===e?(t.position++,10===t.input.charCodeAt(t.position)&&t.position++):Ra(t,"a line break is expected"),t.line+=1,t.lineStart=t.position,t.firstTabInLine=-1}function La(t,e,r){for(var i=0,n=t.input.charCodeAt(t.position);0!==n;){for(;wa(n);)9===n&&-1===t.firstTabInLine&&(t.firstTabInLine=t.position),n=t.input.charCodeAt(++t.position);if(e&&35===n)do{n=t.input.charCodeAt(++t.position)}while(10!==n&&13!==n&&0!==n);if(!ma(n))break;for(Da(t),n=t.input.charCodeAt(t.position),i++,t.lineIndent=0;32===n;)t.lineIndent++,n=t.input.charCodeAt(++t.position)}return-1!==r&&0!==i&&t.lineIndent<r&&ka(t,"deficient indentation"),i}function Ua(t){var e,r=t.position;return!(45!==(e=t.input.charCodeAt(r))&&46!==e||e!==t.input.charCodeAt(r+1)||e!==t.input.charCodeAt(r+2)||(r+=3,0!==(e=t.input.charCodeAt(r))&&!ba(e)))}function Ma(t,e){1===e?t.result+=" ":e>1&&(t.result+=Eo.repeat("\n",e-1))}function Fa(t,e){var r,i,n=t.tag,s=t.anchor,o=[],a=!1;if(-1!==t.firstTabInLine)return!1;for(null!==t.anchor&&(t.anchorMap[t.anchor]=o),i=t.input.charCodeAt(t.position);0!==i&&(-1!==t.firstTabInLine&&(t.position=t.firstTabInLine,Ra(t,"tab characters must not be used in indentation")),45===i)&&ba(t.input.charCodeAt(t.position+1));)if(a=!0,t.position++,La(t,!0,-1)&&t.lineIndent<=e)o.push(null),i=t.input.charCodeAt(t.position);else if(r=t.line,Wa(t,e,3,!1,!0),o.push(t.result),La(t,!0,-1),i=t.input.charCodeAt(t.position),(t.line===r||t.lineIndent>e)&&0!==i)Ra(t,"bad indentation of a sequence entry");else if(t.lineIndent<e)break;return!!a&&(t.tag=n,t.anchor=s,t.kind="sequence",t.result=o,!0)}function Ha(t){var e,r,i,n,s=!1,o=!1;if(33!==(n=t.input.charCodeAt(t.position)))return!1;if(null!==t.tag&&Ra(t,"duplication of a tag property"),60===(n=t.input.charCodeAt(++t.position))?(s=!0,n=t.input.charCodeAt(++t.position)):33===n?(o=!0,r="!!",n=t.input.charCodeAt(++t.position)):r="!",e=t.position,s){do{n=t.input.charCodeAt(++t.position)}while(0!==n&&62!==n);t.position<t.length?(i=t.input.slice(e,t.position),n=t.input.charCodeAt(++t.position)):Ra(t,"unexpected end of the stream within a verbatim tag")}else{for(;0!==n&&!ba(n);)33===n&&(o?Ra(t,"tag suffix cannot contain exclamation marks"):(r=t.input.slice(e-1,t.position+1),fa.test(r)||Ra(t,"named tag handle cannot contain such characters"),o=!0,e=t.position+1)),n=t.input.charCodeAt(++t.position);i=t.input.slice(e,t.position),da.test(i)&&Ra(t,"tag suffix cannot contain flow indicator characters")}i&&!ga.test(i)&&Ra(t,"tag name cannot contain such characters: "+i);try{i=decodeURIComponent(i)}catch(e){Ra(t,"tag name is malformed: "+i)}return s?t.tag=i:ha.call(t.tagMap,r)?t.tag=t.tagMap[r]+i:"!"===r?t.tag="!"+i:"!!"===r?t.tag="tag:yaml.org,2002:"+i:Ra(t,'undeclared tag handle "'+r+'"'),!0}function ja(t){var e,r;if(38!==(r=t.input.charCodeAt(t.position)))return!1;for(null!==t.anchor&&Ra(t,"duplication of an anchor property"),r=t.input.charCodeAt(++t.position),e=t.position;0!==r&&!ba(r)&&!Aa(r);)r=t.input.charCodeAt(++t.position);return t.position===e&&Ra(t,"name of an anchor node must contain at least one character"),t.anchor=t.input.slice(e,t.position),!0}function Wa(t,e,r,i,n){var s,o,a,c,l,h,u,p,d,f=1,g=!1,y=!1;if(null!==t.listener&&t.listener("open",t),t.tag=null,t.anchor=null,t.kind=null,t.result=null,s=o=a=4===r||3===r,i&&La(t,!0,-1)&&(g=!0,t.lineIndent>e?f=1:t.lineIndent===e?f=0:t.lineIndent<e&&(f=-1)),1===f)for(;Ha(t)||ja(t);)La(t,!0,-1)?(g=!0,a=s,t.lineIndent>e?f=1:t.lineIndent===e?f=0:t.lineIndent<e&&(f=-1)):a=!1;if(a&&(a=g||n),1!==f&&4!==r||(p=1===r||2===r?e:e+1,d=t.position-t.lineStart,1===f?a&&(Fa(t,d)||function(t,e,r){var i,n,s,o,a,c,l,h=t.tag,u=t.anchor,p={},d=Object.create(null),f=null,g=null,y=null,m=!1,w=!1;if(-1!==t.firstTabInLine)return!1;for(null!==t.anchor&&(t.anchorMap[t.anchor]=p),l=t.input.charCodeAt(t.position);0!==l;){if(m||-1===t.firstTabInLine||(t.position=t.firstTabInLine,Ra(t,"tab characters must not be used in indentation")),i=t.input.charCodeAt(t.position+1),s=t.line,63!==l&&58!==l||!ba(i)){if(o=t.line,a=t.lineStart,c=t.position,!Wa(t,r,2,!1,!0))break;if(t.line===s){for(l=t.input.charCodeAt(t.position);wa(l);)l=t.input.charCodeAt(++t.position);if(58===l)ba(l=t.input.charCodeAt(++t.position))||Ra(t,"a whitespace character is expected after the key-value separator within a block mapping"),m&&(Pa(t,p,d,f,g,null,o,a,c),f=g=y=null),w=!0,m=!1,n=!1,f=t.tag,g=t.result;else{if(!w)return t.tag=h,t.anchor=u,!0;Ra(t,"can not read an implicit mapping pair; a colon is missed")}}else{if(!w)return t.tag=h,t.anchor=u,!0;Ra(t,"can not read a block mapping entry; a multiline key may not be an implicit key")}}else 63===l?(m&&(Pa(t,p,d,f,g,null,o,a,c),f=g=y=null),w=!0,m=!0,n=!0):m?(m=!1,n=!0):Ra(t,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),t.position+=1,l=i;if((t.line===s||t.lineIndent>e)&&(m&&(o=t.line,a=t.lineStart,c=t.position),Wa(t,e,4,!0,n)&&(m?g=t.result:y=t.result),m||(Pa(t,p,d,f,g,y,o,a,c),f=g=y=null),La(t,!0,-1),l=t.input.charCodeAt(t.position)),(t.line===s||t.lineIndent>e)&&0!==l)Ra(t,"bad indentation of a mapping entry");else if(t.lineIndent<e)break}return m&&Pa(t,p,d,f,g,null,o,a,c),w&&(t.tag=h,t.anchor=u,t.kind="mapping",t.result=p),w}(t,d,p))||function(t,e){var r,i,n,s,o,a,c,l,h,u,p,d,f=!0,g=t.tag,y=t.anchor,m=Object.create(null);if(91===(d=t.input.charCodeAt(t.position)))o=93,l=!1,s=[];else{if(123!==d)return!1;o=125,l=!0,s={}}for(null!==t.anchor&&(t.anchorMap[t.anchor]=s),d=t.input.charCodeAt(++t.position);0!==d;){if(La(t,!0,e),(d=t.input.charCodeAt(t.position))===o)return t.position++,t.tag=g,t.anchor=y,t.kind=l?"mapping":"sequence",t.result=s,!0;f?44===d&&Ra(t,"expected the node content, but found ','"):Ra(t,"missed comma between flow collection entries"),p=null,a=c=!1,63===d&&ba(t.input.charCodeAt(t.position+1))&&(a=c=!0,t.position++,La(t,!0,e)),r=t.line,i=t.lineStart,n=t.position,Wa(t,e,1,!1,!0),u=t.tag,h=t.result,La(t,!0,e),d=t.input.charCodeAt(t.position),!c&&t.line!==r||58!==d||(a=!0,d=t.input.charCodeAt(++t.position),La(t,!0,e),Wa(t,e,1,!1,!0),p=t.result),l?Pa(t,s,m,u,h,p,r,i,n):a?s.push(Pa(t,null,m,u,h,p,r,i,n)):s.push(h),La(t,!0,e),44===(d=t.input.charCodeAt(t.position))?(f=!0,d=t.input.charCodeAt(++t.position)):f=!1}Ra(t,"unexpected end of the stream within a flow collection")}(t,p)?y=!0:(o&&function(t,e){var r,i,n,s,o,a=1,c=!1,l=!1,h=e,u=0,p=!1;if(124===(s=t.input.charCodeAt(t.position)))i=!1;else{if(62!==s)return!1;i=!0}for(t.kind="scalar",t.result="";0!==s;)if(43===(s=t.input.charCodeAt(++t.position))||45===s)1===a?a=43===s?3:2:Ra(t,"repeat of a chomping mode identifier");else{if(!((n=48<=(o=s)&&o<=57?o-48:-1)>=0))break;0===n?Ra(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?Ra(t,"repeat of an indentation width identifier"):(h=e+n-1,l=!0)}if(wa(s)){do{s=t.input.charCodeAt(++t.position)}while(wa(s));if(35===s)do{s=t.input.charCodeAt(++t.position)}while(!ma(s)&&0!==s)}for(;0!==s;){for(Da(t),t.lineIndent=0,s=t.input.charCodeAt(t.position);(!l||t.lineIndent<h)&&32===s;)t.lineIndent++,s=t.input.charCodeAt(++t.position);if(!l&&t.lineIndent>h&&(h=t.lineIndent),ma(s))u++;else{if(t.lineIndent<h){3===a?t.result+=Eo.repeat("\n",c?1+u:u):1===a&&c&&(t.result+="\n");break}for(i?wa(s)?(p=!0,t.result+=Eo.repeat("\n",c?1+u:u)):p?(p=!1,t.result+=Eo.repeat("\n",u+1)):0===u?c&&(t.result+=" "):t.result+=Eo.repeat("\n",u):t.result+=Eo.repeat("\n",c?1+u:u),c=!0,l=!0,u=0,r=t.position;!ma(s)&&0!==s;)s=t.input.charCodeAt(++t.position);Oa(t,r,t.position,!1)}}return!0}(t,p)||function(t,e){var r,i,n;if(39!==(r=t.input.charCodeAt(t.position)))return!1;for(t.kind="scalar",t.result="",t.position++,i=n=t.position;0!==(r=t.input.charCodeAt(t.position));)if(39===r){if(Oa(t,i,t.position,!0),39!==(r=t.input.charCodeAt(++t.position)))return!0;i=t.position,t.position++,n=t.position}else ma(r)?(Oa(t,i,n,!0),Ma(t,La(t,!1,e)),i=n=t.position):t.position===t.lineStart&&Ua(t)?Ra(t,"unexpected end of the document within a single quoted scalar"):(t.position++,n=t.position);Ra(t,"unexpected end of the stream within a single quoted scalar")}(t,p)||function(t,e){var r,i,n,s,o,a,c;if(34!==(a=t.input.charCodeAt(t.position)))return!1;for(t.kind="scalar",t.result="",t.position++,r=i=t.position;0!==(a=t.input.charCodeAt(t.position));){if(34===a)return Oa(t,r,t.position,!0),t.position++,!0;if(92===a){if(Oa(t,r,t.position,!0),ma(a=t.input.charCodeAt(++t.position)))La(t,!1,e);else if(a<256&&Sa[a])t.result+=Ta[a],t.position++;else if((o=120===(c=a)?2:117===c?4:85===c?8:0)>0){for(n=o,s=0;n>0;n--)(o=va(a=t.input.charCodeAt(++t.position)))>=0?s=(s<<4)+o:Ra(t,"expected hexadecimal character");t.result+=Ea(s),t.position++}else Ra(t,"unknown escape sequence");r=i=t.position}else ma(a)?(Oa(t,r,i,!0),Ma(t,La(t,!1,e)),r=i=t.position):t.position===t.lineStart&&Ua(t)?Ra(t,"unexpected end of the document within a double quoted scalar"):(t.position++,i=t.position)}Ra(t,"unexpected end of the stream within a double quoted scalar")}(t,p)?y=!0:function(t){var e,r,i;if(42!==(i=t.input.charCodeAt(t.position)))return!1;for(i=t.input.charCodeAt(++t.position),e=t.position;0!==i&&!ba(i)&&!Aa(i);)i=t.input.charCodeAt(++t.position);return t.position===e&&Ra(t,"name of an alias node must contain at least one character"),r=t.input.slice(e,t.position),ha.call(t.anchorMap,r)||Ra(t,'unidentified alias "'+r+'"'),t.result=t.anchorMap[r],La(t,!0,-1),!0}(t)?(y=!0,null===t.tag&&null===t.anchor||Ra(t,"alias node should not have any properties")):function(t,e,r){var i,n,s,o,a,c,l,h,u=t.kind,p=t.result;if(ba(h=t.input.charCodeAt(t.position))||Aa(h)||35===h||38===h||42===h||33===h||124===h||62===h||39===h||34===h||37===h||64===h||96===h)return!1;if((63===h||45===h)&&(ba(i=t.input.charCodeAt(t.position+1))||r&&Aa(i)))return!1;for(t.kind="scalar",t.result="",n=s=t.position,o=!1;0!==h;){if(58===h){if(ba(i=t.input.charCodeAt(t.position+1))||r&&Aa(i))break}else if(35===h){if(ba(t.input.charCodeAt(t.position-1)))break}else{if(t.position===t.lineStart&&Ua(t)||r&&Aa(h))break;if(ma(h)){if(a=t.line,c=t.lineStart,l=t.lineIndent,La(t,!1,-1),t.lineIndent>=e){o=!0,h=t.input.charCodeAt(t.position);continue}t.position=s,t.line=a,t.lineStart=c,t.lineIndent=l;break}}o&&(Oa(t,n,s,!1),Ma(t,t.line-a),n=s=t.position,o=!1),wa(h)||(s=t.position+1),h=t.input.charCodeAt(++t.position)}return Oa(t,n,s,!1),!!t.result||(t.kind=u,t.result=p,!1)}(t,p,1===r)&&(y=!0,null===t.tag&&(t.tag="?")),null!==t.anchor&&(t.anchorMap[t.anchor]=t.result)):0===f&&(y=a&&Fa(t,d))),null===t.tag)null!==t.anchor&&(t.anchorMap[t.anchor]=t.result);else if("?"===t.tag){for(null!==t.result&&"scalar"!==t.kind&&Ra(t,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+t.kind+'"'),c=0,l=t.implicitTypes.length;c<l;c+=1)if((u=t.implicitTypes[c]).resolve(t.result)){t.result=u.construct(t.result),t.tag=u.tag,null!==t.anchor&&(t.anchorMap[t.anchor]=t.result);break}}else if("!"!==t.tag){if(ha.call(t.typeMap[t.kind||"fallback"],t.tag))u=t.typeMap[t.kind||"fallback"][t.tag];else for(u=null,c=0,l=(h=t.typeMap.multi[t.kind||"fallback"]).length;c<l;c+=1)if(t.tag.slice(0,h[c].tag.length)===h[c].tag){u=h[c];break}u||Ra(t,"unknown tag !<"+t.tag+">"),null!==t.result&&u.kind!==t.kind&&Ra(t,"unacceptable node kind for !<"+t.tag+'> tag; it should be "'+u.kind+'", not "'+t.kind+'"'),u.resolve(t.result,t.tag)?(t.result=u.construct(t.result,t.tag),null!==t.anchor&&(t.anchorMap[t.anchor]=t.result)):Ra(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")}return null!==t.listener&&t.listener("close",t),null!==t.tag||null!==t.anchor||y}function Va(t){var e,r,i,n,s=t.position,o=!1;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap=Object.create(null),t.anchorMap=Object.create(null);0!==(n=t.input.charCodeAt(t.position))&&(La(t,!0,-1),n=t.input.charCodeAt(t.position),!(t.lineIndent>0||37!==n));){for(o=!0,n=t.input.charCodeAt(++t.position),e=t.position;0!==n&&!ba(n);)n=t.input.charCodeAt(++t.position);for(i=[],(r=t.input.slice(e,t.position)).length<1&&Ra(t,"directive name must not be less than one character in length");0!==n;){for(;wa(n);)n=t.input.charCodeAt(++t.position);if(35===n){do{n=t.input.charCodeAt(++t.position)}while(0!==n&&!ma(n));break}if(ma(n))break;for(e=t.position;0!==n&&!ba(n);)n=t.input.charCodeAt(++t.position);i.push(t.input.slice(e,t.position))}0!==n&&Da(t),ha.call(Na,r)?Na[r](t,r,i):ka(t,'unknown document directive "'+r+'"')}La(t,!0,-1),0===t.lineIndent&&45===t.input.charCodeAt(t.position)&&45===t.input.charCodeAt(t.position+1)&&45===t.input.charCodeAt(t.position+2)?(t.position+=3,La(t,!0,-1)):o&&Ra(t,"directives end mark is expected"),Wa(t,t.lineIndent-1,4,!1,!0),La(t,!0,-1),t.checkLineBreaks&&pa.test(t.input.slice(s,t.position))&&ka(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&Ua(t)?46===t.input.charCodeAt(t.position)&&(t.position+=3,La(t,!0,-1)):t.position<t.length-1&&Ra(t,"end of the stream or a document separator is expected")}function Ga(t,e){e=e||{},0!==(t=String(t)).length&&(10!==t.charCodeAt(t.length-1)&&13!==t.charCodeAt(t.length-1)&&(t+="\n"),65279===t.charCodeAt(0)&&(t=t.slice(1)));var r=new Ca(t,e),i=t.indexOf("\0");for(-1!==i&&(r.position=i,Ra(r,"null byte is not allowed in input")),r.input+="\0";32===r.input.charCodeAt(r.position);)r.lineIndent+=1,r.position+=1;for(;r.position<r.length-1;)Va(r);return r.documents}var za={loadAll:function(t,e,r){null!==e&&"object"==typeof e&&void 0===r&&(r=e,e=null);var i=Ga(t,r);if("function"!=typeof e)return i;for(var n=0,s=i.length;n<s;n+=1)e(i[n])},load:function(t,e){var r=Ga(t,e);if(0!==r.length){if(1===r.length)return r[0];throw new xo("expected a single document in the stream, but found more")}}},qa=Object.prototype.toString,Qa=Object.prototype.hasOwnProperty,Ka=65279,Ya={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"},Ja=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],Xa=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function Za(t){var e,r,i;if(e=t.toString(16).toUpperCase(),t<=255)r="x",i=2;else if(t<=65535)r="u",i=4;else{if(!(t<=4294967295))throw new xo("code point within a string may not be greater than 0xFFFFFFFF");r="U",i=8}return"\\"+r+Eo.repeat("0",i-e.length)+e}function $a(t){this.schema=t.schema||la,this.indent=Math.max(1,t.indent||2),this.noArrayIndent=t.noArrayIndent||!1,this.skipInvalid=t.skipInvalid||!1,this.flowLevel=Eo.isNothing(t.flowLevel)?-1:t.flowLevel,this.styleMap=function(t,e){var r,i,n,s,o,a,c;if(null===e)return{};for(r={},n=0,s=(i=Object.keys(e)).length;n<s;n+=1)o=i[n],a=String(e[o]),"!!"===o.slice(0,2)&&(o="tag:yaml.org,2002:"+o.slice(2)),(c=t.compiledTypeMap.fallback[o])&&Qa.call(c.styleAliases,a)&&(a=c.styleAliases[a]),r[o]=a;return r}(this.schema,t.styles||null),this.sortKeys=t.sortKeys||!1,this.lineWidth=t.lineWidth||80,this.noRefs=t.noRefs||!1,this.noCompatMode=t.noCompatMode||!1,this.condenseFlow=t.condenseFlow||!1,this.quotingType='"'===t.quotingType?2:1,this.forceQuotes=t.forceQuotes||!1,this.replacer="function"==typeof t.replacer?t.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function tc(t,e){for(var r,i=Eo.repeat(" ",e),n=0,s=-1,o="",a=t.length;n<a;)-1===(s=t.indexOf("\n",n))?(r=t.slice(n),n=a):(r=t.slice(n,s+1),n=s+1),r.length&&"\n"!==r&&(o+=i),o+=r;return o}function ec(t,e){return"\n"+Eo.repeat(" ",t.indent*e)}function rc(t){return 32===t||9===t}function ic(t){return 32<=t&&t<=126||161<=t&&t<=55295&&8232!==t&&8233!==t||57344<=t&&t<=65533&&t!==Ka||65536<=t&&t<=1114111}function nc(t){return ic(t)&&t!==Ka&&13!==t&&10!==t}function sc(t,e,r){var i=nc(t),n=i&&!rc(t);return(r?i:i&&44!==t&&91!==t&&93!==t&&123!==t&&125!==t)&&35!==t&&!(58===e&&!n)||nc(e)&&!rc(e)&&35===t||58===e&&n}function oc(t,e){var r,i=t.charCodeAt(e);return i>=55296&&i<=56319&&e+1<t.length&&(r=t.charCodeAt(e+1))>=56320&&r<=57343?1024*(i-55296)+r-56320+65536:i}function ac(t){return/^\n* /.test(t)}function cc(t,e,r,i,n){t.dump=function(){if(0===e.length)return 2===t.quotingType?'""':"''";if(!t.noCompatMode&&(-1!==Ja.indexOf(e)||Xa.test(e)))return 2===t.quotingType?'"'+e+'"':"'"+e+"'";var s=t.indent*Math.max(1,r),o=-1===t.lineWidth?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-s),a=i||t.flowLevel>-1&&r>=t.flowLevel;switch(function(t,e,r,i,n,s,o,a){var c,l,h=0,u=null,p=!1,d=!1,f=-1!==i,g=-1,y=ic(l=oc(t,0))&&l!==Ka&&!rc(l)&&45!==l&&63!==l&&58!==l&&44!==l&&91!==l&&93!==l&&123!==l&&125!==l&&35!==l&&38!==l&&42!==l&&33!==l&&124!==l&&61!==l&&62!==l&&39!==l&&34!==l&&37!==l&&64!==l&&96!==l&&function(t){return!rc(t)&&58!==t}(oc(t,t.length-1));if(e||o)for(c=0;c<t.length;h>=65536?c+=2:c++){if(!ic(h=oc(t,c)))return 5;y=y&&sc(h,u,a),u=h}else{for(c=0;c<t.length;h>=65536?c+=2:c++){if(10===(h=oc(t,c)))p=!0,f&&(d=d||c-g-1>i&&" "!==t[g+1],g=c);else if(!ic(h))return 5;y=y&&sc(h,u,a),u=h}d=d||f&&c-g-1>i&&" "!==t[g+1]}return p||d?r>9&&ac(t)?5:o?2===s?5:2:d?4:3:!y||o||n(t)?2===s?5:2:1}(e,a,t.indent,o,(function(e){return function(t,e){var r,i;for(r=0,i=t.implicitTypes.length;r<i;r+=1)if(t.implicitTypes[r].resolve(e))return!0;return!1}(t,e)}),t.quotingType,t.forceQuotes&&!i,n)){case 1:return e;case 2:return"'"+e.replace(/'/g,"''")+"'";case 3:return"|"+lc(e,t.indent)+hc(tc(e,s));case 4:return">"+lc(e,t.indent)+hc(tc(function(t,e){for(var r,i,n,s=/(\n+)([^\n]*)/g,o=(n=-1!==(n=t.indexOf("\n"))?n:t.length,s.lastIndex=n,uc(t.slice(0,n),e)),a="\n"===t[0]||" "===t[0];i=s.exec(t);){var c=i[1],l=i[2];r=" "===l[0],o+=c+(a||r||""===l?"":"\n")+uc(l,e),a=r}return o}(e,o),s));case 5:return'"'+function(t){for(var e,r="",i=0,n=0;n<t.length;i>=65536?n+=2:n++)i=oc(t,n),!(e=Ya[i])&&ic(i)?(r+=t[n],i>=65536&&(r+=t[n+1])):r+=e||Za(i);return r}(e)+'"';default:throw new xo("impossible error: invalid scalar style")}}()}function lc(t,e){var r=ac(t)?String(e):"",i="\n"===t[t.length-1];return r+(!i||"\n"!==t[t.length-2]&&"\n"!==t?i?"":"-":"+")+"\n"}function hc(t){return"\n"===t[t.length-1]?t.slice(0,-1):t}function uc(t,e){if(""===t||" "===t[0])return t;for(var r,i,n=/ [^ ]/g,s=0,o=0,a=0,c="";r=n.exec(t);)(a=r.index)-s>e&&(i=o>s?o:a,c+="\n"+t.slice(s,i),s=i+1),o=a;return c+="\n",t.length-s>e&&o>s?c+=t.slice(s,o)+"\n"+t.slice(o+1):c+=t.slice(s),c.slice(1)}function pc(t,e,r,i){var n,s,o,a="",c=t.tag;for(n=0,s=r.length;n<s;n+=1)o=r[n],t.replacer&&(o=t.replacer.call(r,String(n),o)),(fc(t,e+1,o,!0,!0,!1,!0)||void 0===o&&fc(t,e+1,null,!0,!0,!1,!0))&&(i&&""===a||(a+=ec(t,e)),t.dump&&10===t.dump.charCodeAt(0)?a+="-":a+="- ",a+=t.dump);t.tag=c,t.dump=a||"[]"}function dc(t,e,r){var i,n,s,o,a,c;for(s=0,o=(n=r?t.explicitTypes:t.implicitTypes).length;s<o;s+=1)if(((a=n[s]).instanceOf||a.predicate)&&(!a.instanceOf||"object"==typeof e&&e instanceof a.instanceOf)&&(!a.predicate||a.predicate(e))){if(r?a.multi&&a.representName?t.tag=a.representName(e):t.tag=a.tag:t.tag="?",a.represent){if(c=t.styleMap[a.tag]||a.defaultStyle,"[object Function]"===qa.call(a.represent))i=a.represent(e,c);else{if(!Qa.call(a.represent,c))throw new xo("!<"+a.tag+'> tag resolver accepts not "'+c+'" style');i=a.represent[c](e,c)}t.dump=i}return!0}return!1}function fc(t,e,r,i,n,s,o){t.tag=null,t.dump=r,dc(t,r,!1)||dc(t,r,!0);var a,c=qa.call(t.dump),l=i;i&&(i=t.flowLevel<0||t.flowLevel>e);var h,u,p="[object Object]"===c||"[object Array]"===c;if(p&&(u=-1!==(h=t.duplicates.indexOf(r))),(null!==t.tag&&"?"!==t.tag||u||2!==t.indent&&e>0)&&(n=!1),u&&t.usedDuplicates[h])t.dump="*ref_"+h;else{if(p&&u&&!t.usedDuplicates[h]&&(t.usedDuplicates[h]=!0),"[object Object]"===c)i&&0!==Object.keys(t.dump).length?(function(t,e,r,i){var n,s,o,a,c,l,h="",u=t.tag,p=Object.keys(r);if(!0===t.sortKeys)p.sort();else if("function"==typeof t.sortKeys)p.sort(t.sortKeys);else if(t.sortKeys)throw new xo("sortKeys must be a boolean or a function");for(n=0,s=p.length;n<s;n+=1)l="",i&&""===h||(l+=ec(t,e)),a=r[o=p[n]],t.replacer&&(a=t.replacer.call(r,o,a)),fc(t,e+1,o,!0,!0,!0)&&((c=null!==t.tag&&"?"!==t.tag||t.dump&&t.dump.length>1024)&&(t.dump&&10===t.dump.charCodeAt(0)?l+="?":l+="? "),l+=t.dump,c&&(l+=ec(t,e)),fc(t,e+1,a,!0,c)&&(t.dump&&10===t.dump.charCodeAt(0)?l+=":":l+=": ",h+=l+=t.dump));t.tag=u,t.dump=h||"{}"}(t,e,t.dump,n),u&&(t.dump="&ref_"+h+t.dump)):(function(t,e,r){var i,n,s,o,a,c="",l=t.tag,h=Object.keys(r);for(i=0,n=h.length;i<n;i+=1)a="",""!==c&&(a+=", "),t.condenseFlow&&(a+='"'),o=r[s=h[i]],t.replacer&&(o=t.replacer.call(r,s,o)),fc(t,e,s,!1,!1)&&(t.dump.length>1024&&(a+="? "),a+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),fc(t,e,o,!1,!1)&&(c+=a+=t.dump));t.tag=l,t.dump="{"+c+"}"}(t,e,t.dump),u&&(t.dump="&ref_"+h+" "+t.dump));else if("[object Array]"===c)i&&0!==t.dump.length?(t.noArrayIndent&&!o&&e>0?pc(t,e-1,t.dump,n):pc(t,e,t.dump,n),u&&(t.dump="&ref_"+h+t.dump)):(function(t,e,r){var i,n,s,o="",a=t.tag;for(i=0,n=r.length;i<n;i+=1)s=r[i],t.replacer&&(s=t.replacer.call(r,String(i),s)),(fc(t,e,s,!1,!1)||void 0===s&&fc(t,e,null,!1,!1))&&(""!==o&&(o+=","+(t.condenseFlow?"":" ")),o+=t.dump);t.tag=a,t.dump="["+o+"]"}(t,e,t.dump),u&&(t.dump="&ref_"+h+" "+t.dump));else{if("[object String]"!==c){if("[object Undefined]"===c)return!1;if(t.skipInvalid)return!1;throw new xo("unacceptable kind of an object to dump "+c)}"?"!==t.tag&&cc(t,t.dump,e,s,l)}null!==t.tag&&"?"!==t.tag&&(a=encodeURI("!"===t.tag[0]?t.tag.slice(1):t.tag).replace(/!/g,"%21"),a="!"===t.tag[0]?"!"+a:"tag:yaml.org,2002:"===a.slice(0,18)?"!!"+a.slice(18):"!<"+a+">",t.dump=a+" "+t.dump)}return!0}function gc(t,e){var r,i,n=[],s=[];for(yc(t,n,s),r=0,i=s.length;r<i;r+=1)e.duplicates.push(n[s[r]]);e.usedDuplicates=new Array(i)}function yc(t,e,r){var i,n,s;if(null!==t&&"object"==typeof t)if(-1!==(n=e.indexOf(t)))-1===r.indexOf(n)&&r.push(n);else if(e.push(t),Array.isArray(t))for(n=0,s=t.length;n<s;n+=1)yc(t[n],e,r);else for(n=0,s=(i=Object.keys(t)).length;n<s;n+=1)yc(t[i[n]],e,r)}function mc(t,e){return function(){throw new Error("Function yaml."+t+" is removed in js-yaml 4. Use yaml."+e+" instead, which is now safe by default.")}}const wc={Type:Oo,Schema:Do,FAILSAFE_SCHEMA:Fo,JSON_SCHEMA:Ko,CORE_SCHEMA:Yo,DEFAULT_SCHEMA:la,load:za.load,loadAll:za.loadAll,dump:function(t,e){var r=new $a(e=e||{});r.noRefs||gc(t,r);var i=t;return r.replacer&&(i=r.replacer.call({"":i},"",i)),fc(r,0,i,!0,!0)?r.dump+"\n":""},YAMLException:xo,types:{binary:ea,float:Qo,map:Mo,null:Ho,pairs:oa,set:ca,timestamp:Zo,bool:jo,int:Go,merge:$o,omap:na,seq:Uo,str:Lo},safeLoad:mc("safeLoad","load"),safeLoadAll:mc("safeLoadAll","loadAll"),safeDump:mc("safeDump","dump")};var bc=r(9742),Ac=(r(8660),r(4585));function vc(t,e){let r=0;if(1===t.length)return t[0];for(let i=t.length-1;i>=0;i--)r+=t[t.length-1-i]*Math.pow(2,e*i);return r}function _c(t,e,r=-1){const i=r;let n=t,s=0,o=Math.pow(2,e);for(let r=1;r<8;r++){if(t<o){let t;if(i<0)t=new ArrayBuffer(r),s=r;else{if(i<r)return new ArrayBuffer(0);t=new ArrayBuffer(i),s=i}const o=new Uint8Array(t);for(let t=r-1;t>=0;t--){const r=Math.pow(2,t*e);o[s-t-1]=Math.floor(n/r),n-=o[s-t-1]*r}return t}o*=Math.pow(2,e)}return new ArrayBuffer(0)}function Ec(...t){let e=0,r=0;for(const r of t)e+=r.length;const i=new ArrayBuffer(e),n=new Uint8Array(i);for(const e of t)n.set(e,r),r+=e.length;return n}function Sc(){const t=new Uint8Array(this.valueHex);if(this.valueHex.byteLength>=2){const e=255===t[0]&&128&t[1],r=0===t[0]&&!(128&t[1]);(e||r)&&this.warnings.push("Needlessly long format")}const e=new ArrayBuffer(this.valueHex.byteLength),r=new Uint8Array(e);for(let t=0;t<this.valueHex.byteLength;t++)r[t]=0;r[0]=128&t[0];const i=vc(r,8),n=new ArrayBuffer(this.valueHex.byteLength),s=new Uint8Array(n);for(let e=0;e<this.valueHex.byteLength;e++)s[e]=t[e];return s[0]&=127,vc(s,8)-i}function Tc(t,e){const r=t.toString(10);if(e<r.length)return"";const i=e-r.length,n=new Array(i);for(let t=0;t<i;t++)n[t]="0";return n.join("").concat(r)}
45
+ ***************************************************************************** */function D(t,e,r,i){return new(r||(r=Promise))((function(n,s){function o(t){try{c(i.next(t))}catch(t){s(t)}}function a(t){try{c(i.throw(t))}catch(t){s(t)}}function c(t){var e;t.done?n(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(o,a)}c((i=i.apply(t,e||[])).next())}))}class L{constructor(){this.mutex=Promise.resolve()}lock(){let t=()=>{};return this.mutex=this.mutex.then((()=>new Promise(t))),new Promise((e=>{t=e}))}dispatch(t){return D(this,void 0,void 0,(function*(){const e=yield this.lock();try{return yield Promise.resolve(t())}finally{e()}}))}}const U="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:r.g,M=null!==(R=U.Buffer)&&void 0!==R?R:null,F=U.TextEncoder?new U.TextEncoder:null;function H(t,e){return(15&t)+(t>>6|t>>3&8)<<4|(15&e)+(e>>6|e>>3&8)}const j="a".charCodeAt(0)-10,W="0".charCodeAt(0);function V(t,e,r){let i=0;for(let n=0;n<r;n++){let r=e[n]>>>4;t[i++]=r>9?r+j:r+W,r=15&e[n],t[i++]=r>9?r+j:r+W}return String.fromCharCode.apply(null,t)}const G=null!==M?t=>{if("string"==typeof t){const e=M.from(t,"utf8");return new Uint8Array(e.buffer,e.byteOffset,e.length)}if(M.isBuffer(t))return new Uint8Array(t.buffer,t.byteOffset,t.length);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Invalid data type!")}:t=>{if("string"==typeof t)return F.encode(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Invalid data type!")},z="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",q=new Uint8Array(256);for(let t=0;t<64;t++)q[z.charCodeAt(t)]=t;function Q(t){const e=function(t){let e=Math.floor(.75*t.length);const r=t.length;return"="===t[r-1]&&(e-=1,"="===t[r-2]&&(e-=1)),e}(t),r=t.length,i=new Uint8Array(e);let n=0;for(let e=0;e<r;e+=4){const r=q[t.charCodeAt(e)],s=q[t.charCodeAt(e+1)],o=q[t.charCodeAt(e+2)],a=q[t.charCodeAt(e+3)];i[n]=r<<2|s>>4,n+=1,i[n]=(15&s)<<4|o>>2,n+=1,i[n]=(3&o)<<6|63&a,n+=1}return i}const K=16384,Y=new L,J=new Map;function X(t,e){return D(this,void 0,void 0,(function*(){let r=null,i=null,n=!1;if("undefined"==typeof WebAssembly)throw new Error("WebAssembly is not supported in this environment!");const s=()=>new DataView(r.exports.memory.buffer).getUint32(r.exports.STATE_SIZE,!0),o=Y.dispatch((()=>D(this,void 0,void 0,(function*(){if(!J.has(t.name)){const e=Q(t.data),r=WebAssembly.compile(e);J.set(t.name,r)}const e=yield J.get(t.name);r=yield WebAssembly.instantiate(e,{})})))),a=(t=null)=>{n=!0,r.exports.Hash_Init(t)},c=t=>{if(!n)throw new Error("update() called before init()");(t=>{let e=0;for(;e<t.length;){const n=t.subarray(e,e+K);e+=n.length,i.set(n),r.exports.Hash_Update(n.length)}})(G(t))},l=new Uint8Array(2*e),h=(t,s=null)=>{if(!n)throw new Error("digest() called before init()");return n=!1,r.exports.Hash_Final(s),"binary"===t?i.slice(0,e):V(l,i,e)},u=t=>"string"==typeof t?t.length<4096:t.byteLength<K;let p=u;switch(t.name){case"argon2":case"scrypt":p=()=>!0;break;case"blake2b":case"blake2s":p=(t,e)=>e<=512&&u(t);break;case"blake3":p=(t,e)=>0===e&&u(t);break;case"xxhash64":case"xxhash3":case"xxhash128":p=()=>!1}return yield(()=>D(this,void 0,void 0,(function*(){r||(yield o);const t=r.exports.Hash_GetBuffer(),e=r.exports.memory.buffer;i=new Uint8Array(e,t,K)})))(),{getMemory:()=>i,writeMemory:(t,e=0)=>{i.set(t,e)},getExports:()=>r.exports,setMemorySize:t=>{r.exports.Hash_SetMemorySize(t);const e=r.exports.Hash_GetBuffer(),n=r.exports.memory.buffer;i=new Uint8Array(n,e,t)},init:a,update:c,digest:h,save:()=>{if(!n)throw new Error("save() can only be called after init() and before digest()");const e=r.exports.Hash_GetState(),i=s(),o=r.exports.memory.buffer,a=new Uint8Array(o,e,i),c=new Uint8Array(4+i);return function(t,e){const r=e.length>>1;for(let i=0;i<r;i++){const r=i<<1;t[i]=H(e.charCodeAt(r),e.charCodeAt(r+1))}}(c,t.hash),c.set(a,4),c},load:e=>{if(!(e instanceof Uint8Array))throw new Error("load() expects an Uint8Array generated by save()");const i=r.exports.Hash_GetState(),o=s(),a=4+o,c=r.exports.memory.buffer;if(e.length!==a)throw new Error(`Bad state length (expected ${a} bytes, got ${e.length})`);if(!function(t,e){if(t.length!==2*e.length)return!1;for(let r=0;r<e.length;r++){const i=r<<1;if(e[r]!==H(t.charCodeAt(i),t.charCodeAt(i+1)))return!1}return!0}(t.hash,e.subarray(0,4)))throw new Error("This state was written by an incompatible hash implementation");const l=e.subarray(4);new Uint8Array(c,i,o).set(l),n=!0},calculate:(t,n=null,s=null)=>{if(!p(t,n))return a(n),c(t),h("hex",s);const o=G(t);return i.set(o),r.exports.Hash_Calculate(o.length,n,s),V(l,i,e)},hashLength:e}}))}new L,new L,new DataView(new ArrayBuffer(4)),new L,new L,new L,new L,new L,new L,new L,new L,new L;var Z={name:"sha256",data:"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",hash:"817d957e"};function $(t){let e;e="string"==typeof t?t:t?.length?t.reduce(((t,e)=>t+String.fromCharCode(e)),""):t?t.toString():"";try{return"__wb_post_data="+btoa(e)}catch{return"__wb_post_data="}}function tt(t){try{if(!t.startsWith("https:")&&!t.startsWith("http:"))return t;let e=(t=t.replace(/^(https?:\/\/)www\d*\./,"$1")).toLowerCase(),r=new URL(e),i=r.hostname.split(".").reverse().join(",");if(r.port&&(i+=":"+r.port),i+=")",i+=r.pathname,r.search){let t=r.search.slice(1).split("&");t.sort(),i+="?"+t.join("&")}return i}catch{return t}}function et(t){let{method:e,headers:r,postData:i=""}=t;if("GET"===e)return!1;let n=(t=>{let e=t.get("content-type");if(e)return e;if(!(t instanceof Headers))for(let[e,r]of t.entries())if(e&&"content-type"===e.toLowerCase())return r;return""})(r);function s(t){return t instanceof Uint8Array&&(t=(new TextDecoder).decode(t)),t}let o="";switch(n.split(";")[0]){case"application/x-www-form-urlencoded":o=s(i);break;case"application/json":o=nt(s(i));break;case"text/plain":try{o=nt(s(i),!1)}catch{o=$(i)}break;case"multipart/form-data":if(!n)throw new Error("utils cannot call postToGetURL when missing content-type header");o=function(t,e){return function(t="",e){let r=new URLSearchParams;t instanceof Uint8Array&&(t=(new TextDecoder).decode(t));try{let i=e.split("boundary=")[1],n=t.split(new RegExp("-*"+i+"-*","mi"));for(let t of n){let e=t.trim().match(/name="([^"]+)"\r\n\r\n(.*)/im);e&&r.set(e[1],e[2])}}catch{}return r}(t,e).toString()}(s(i),n);break;default:o=$(i)}return null!=o&&(t.url=rt(t.url,decodeURI(o),t.method),t.method="GET",t.requestBody=o,!0)}function rt(t,e,r){if(!r)return t;let i=t.indexOf("?")>0?"&":"?";return`${t}${i}__wb_method=${r}&${e}`}function it(t,e=!0){if("string"==typeof t)try{t=JSON.parse(t)}catch{t={}}let r=new URLSearchParams,i={},n=(t,e="")=>{let s="";if("object"!=typeof t||t instanceof Array){if(t instanceof Array)for(let r=0;r<t.length;r++)n(t[r],e)}else try{for(let[e,r]of Object.entries(t))n(r,e)}catch{null===t&&(s="null")}["string","number","boolean"].includes(typeof t)&&(s=t.toString()),s&&r.set((t=>r.has(t)?(t in i||(i[t]=1),t+"."+ ++i[t]+"_"):t)(e),s)};try{n(t)}catch(t){if(!e)throw t}return r}function nt(t="",e=!0){return it(t,e).toString()}function st(t,e){if(1===t.length)return t[0];let r=new Uint8Array(e),i=0;for(let e of t)r.set(e,i),i+=e.byteLength;return r}function ot(t,e){return[t.slice(0,e),t.slice(e)]}function at(t){let e=new Uint8Array(t.length);for(let r=0;r<t.length;r++)e[r]=255&t.charCodeAt(r);return(new TextDecoder).decode(e)}new L,new L,new L,new L,new L,new L,new ArrayBuffer(8),new L,new ArrayBuffer(8),new L,new ArrayBuffer(8),new L,new L,new L;var ct=["set-cookie","warc-concurrent-to","warc-protocol"],lt=",,,",ht=class extends Map{constructor(t){if(t instanceof Array){super();for(let e of t)if(e instanceof Array){let t=e[0],r=e[1];this.append(t,r)}}else super(t?Object.entries(t):void 0)}getMultiple(t){let e=super.get(t);if(e)return ct.includes(t.toLowerCase())?e.split(lt):[e]}append(t,e){if(ct.includes(t.toLowerCase())){let r=this.get(t);this.set(t,void 0!==r?r+lt+e:e)}else this.set(t,e)}*[Symbol.iterator](){for(let[t,e]of super[Symbol.iterator]())if(ct.includes(t.toLowerCase()))for(let r of e.split(lt))yield[t,r];else yield[t,e]}},ut=new TextDecoder("utf-8"),pt=class extends O.Inflate{constructor(t,e){super(t),this.ended=!1,this.chunks=[],this.reader=e}onEnd(t){this.err=t,this.err||(this.reader._rawOffset+=this.strm.total_in)}},dt=class t{static async readFully(t){let e=[],r=0;for await(let i of t)e.push(i),r+=i.byteLength;return st(e,r)}getReadableStream(){let t=this[Symbol.asyncIterator]();return new ReadableStream({pull:async e=>t.next().then((t=>{t.done||!t.value?e.close():e.enqueue(t.value)}))})}async readFully(){return await t.readFully(this)}async readline(t=0){let e=await this.readlineRaw(t);return e?ut.decode(e):""}async*iterLines(t=0){let e=null;for(;e=await this.readline(t);)yield e}},ft=class t extends dt{constructor(e,r="gzip",i=!1){let n;if(super(),this.compressed=r,this.opts={raw:"deflateRaw"===r},this.inflator=r?new pt(this.opts,this):null,function(t){return!(!t||!(Symbol.asyncIterator in Object(t)))}(e))n=e;else if("object"==typeof e&&"read"in e&&"function"==typeof e.read)n=t.fromReadable(e);else if(e instanceof ReadableStream)n=t.fromReadable(e.getReader());else{if(!function(t){return!(!t||!(Symbol.iterator in Object(t)))}(e))throw new TypeError("Invalid Stream Source");n=t.fromIter(e)}this._sourceIter=i?this.dechunk(n):n[Symbol.asyncIterator](),this.lastValue=null,this.errored=!1,this._savedChunk=null,this._rawOffset=0,this._readOffset=0,this.numChunks=0}async _loadNext(){let t=await this._sourceIter.next();return t.done?null:t.value}async*dechunk(e){let r=e instanceof t?e:new t(e,null),i=-1,n=!0;for(;0!=i;){let t=await r.readlineRaw(64),e=new Uint8Array;if(i=t?parseInt(ut.decode(t),16):0,!i||i>2**32){if(Number.isNaN(i)||i>2**32){n||(this.errored=!0),yield t;break}}else if(e=await r.readSize(i),e.length!=i){n?yield t:this.errored=!0,yield e;break}let s=await r.readSize(2);if(13!=s[0]||10!=s[1]){n?yield t:this.errored=!0,yield e,yield s;break}if(n=!1,!e||0===i)return;yield e}yield*r}unread(t){t.length&&(this._readOffset-=t.length,this._savedChunk&&console.log("Already have chunk!"),this._savedChunk=t)}async _next(){if(this._savedChunk){let t=this._savedChunk;return this._savedChunk=null,t}if(this.compressed){let t=this._getNextChunk();if(t)return t}let t=await this._loadNext();for(;this.compressed&&t;){this._push(t);let e=this._getNextChunk(t);if(e)return e;t=await this._loadNext()}return t}_push(t){if(!this.inflator)throw new Error("AsyncIterReader cannot call _push when this.compressed is null");this.lastValue=t,this.inflator.ended&&(this.inflator=new pt(this.opts,this)),this.inflator.push(t),this.inflator.err&&this.inflator.ended&&"deflate"===this.compressed&&!this.opts.raw&&0===this.numChunks&&(this.opts.raw=!0,this.compressed="deflateRaw",this.inflator=new pt(this.opts,this),this.inflator.push(t))}_getNextChunk(t){if(!this.inflator)throw new Error("AsyncIterReader cannot call _getNextChunk when this.compressed is null");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,t;let e=this.inflator.strm.avail_in;if(e&&this.lastValue){this._push(this.lastValue.slice(-e));continue}}return null}}async*[Symbol.asyncIterator](){let t=null;for(;t=await this._next();)this._readOffset+=t.length,yield t}async readlineRaw(t){let e=[],r=0,i=-1,n=null;for await(let s of this){if(t&&r+s.byteLength>t){n=s,i=t-r-1;let e=s.slice(0,i+1).indexOf(10);e>=0&&(i=e);break}if(i=s.indexOf(10),i>=0){n=s;break}e.push(s),r+=s.byteLength}if(n){let[t,s]=ot(n,i+1);e.push(t),r+=t.byteLength,this.unread(s)}else if(!e.length)return null;return st(e,r)}async readFully(){return(await this._readOrSkip())[1]}async readSize(t){return(await this._readOrSkip(t))[1]}async skipSize(t){return(await this._readOrSkip(t,!0))[0]}async _readOrSkip(t=-1,e=!1){let r=[],i=0;for await(let n of this){if(t>=0){if(n.length>t){let[s,o]=ot(n,t);e||r.push(s),i+=s.byteLength,this.unread(o);break}if(n.length===t){e||r.push(n),i+=n.byteLength,t=0;break}t-=n.length}e||r.push(n),i+=n.byteLength}return e?[i,new Uint8Array]:[i,st(r,i)]}getReadOffset(){return this._readOffset}getRawOffset(){return this.compressed?this._rawOffset:this._readOffset}getRawLength(t){return this.compressed?this.inflator.strm.total_in:this._readOffset-t}static fromReadable(t){return{async*[Symbol.asyncIterator](){let e=null;for(;(e=await t.read())&&!e.done;)yield e.value}}}static fromIter(t){return{async*[Symbol.asyncIterator](){for(let e of t)yield e}}}},gt=class extends dt{constructor(t,e,r=0){super(),this.sourceIter=t,this.length=e,this.limit=e,this.skip=r}setLimitSkip(t,e=0){this.limit=t,this.skip=e}async*[Symbol.asyncIterator](){if(!(this.limit<=0))for await(let t of this.sourceIter){if(this.skip>0){if(!(t.length>=this.skip)){this.skip-=t.length;continue}{let[,e]=ot(t,this.skip);t=e,this.skip=0}}if(t.length>this.limit){let[e,r]=ot(t,this.limit);t=e,this.sourceIter.unread&&this.sourceIter.unread(r)}if(t.length&&(this.limit-=t.length,yield t),this.limit<=0)break}}async readlineRaw(t){if(this.limit<=0)return null;let e=await this.sourceIter.readlineRaw(t?Math.min(t,this.limit):this.limit);return this.limit-=e?.length||0,e}async skipFully(){let t=this.limit;for(;this.limit>0;)this.limit-=await this.sourceIter.skipSize(this.limit);return t}},yt=new Uint8Array([13,10]),mt=(new Uint8Array([13,10,13,10]),new TextDecoder("utf-8")),wt=class{constructor({statusline:t,headers:e,reencodeHeaders:r}){this.statusline=t,this.headers=e,this.reencodeHeaders=r}toString(){let t=[this.statusline],e=this.headers instanceof Headers;for(let[r,i]of this.headers)e&&this.reencodeHeaders?.has(r)?t.push(`${r}: ${at(i)}`):t.push(`${r}: ${i}`);return t.join("\r\n")+"\r\n"}async*iterSerialize(t){yield t.encode(this.statusline),yield yt;for(let[e,r]of this.headers)yield t.encode(`${e}: ${r}\r\n`)}_parseResponseStatusLine(){let t=function(t,e,r){let i=t.split(" "),n=i.slice(0,2);return i.slice(2).length>0&&n.push(i.slice(2).join(" ")),n}(this.statusline);this._protocol=t[0]??"",this._statusCode=t.length>1?Number(t[1]):"",this._statusText=t.length>2?t[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(){let t=this.statusline.split(" ",2);this._method=t[0]??"",this._requestPath=t.length>1?t[1]:""}get method(){return void 0===this._method&&this._parseRequestStatusLine(),this._method}get requestPath(){return void 0===this._requestPath&&this._parseRequestStatusLine(),this._requestPath}};async function bt(t,e){let r=0;for(let i=0;i<t.length-4;i++){let i=t.indexOf(13,r);if(i<0)break;if(i+3>=t.length){let{value:r}=await e.next();if(!r)break;let i=new Uint8Array(r.length+t.length);i.set(t,0),i.set(r,t.length),t=i}if(10===t[i+1]&&13===t[i+2]&&10===t[i+3])return[i+3,t];r=i+1}return[-1,t]}var At=new TextDecoder("utf-8"),vt=new TextEncoder,_t="WARC/1.0",Et={warcinfo:"application/warc-fields",response:"application/http; msgtype=response",revisit:"application/http; msgtype=response",request:"application/http; msgtype=request",metadata:"application/warc-fields"},St=class t extends dt{constructor({warcHeaders:t,reader:e}){super(),this._offset=0,this._length=0,this._urlkey="",this.warcHeaders=t,this._reader=e,this._contentReader=null,this.payload=null,this.httpHeaders=null,this.consumed="",this.fixUp()}static create({url:e,date:r,type:i,warcHeaders:n={},filename:s="",httpHeaders:o={},statusline:a="HTTP/1.1 200 OK",warcVersion:c=_t,keepHeadersCase:l=!0,refersToUrl:h,refersToDate:u}={},p){function d(t){let e=t;return c===_t&&"Z"!=(t=t.split(".")[0]).charAt(e.length-1)&&(t+="Z"),t}r=d(r||(new Date).toISOString());let f=new ht(n);if("warcinfo"===i)s&&f.set("WARC-Filename",s);else if(e)try{f.set("WARC-Target-URI",new URL(e).href)}catch{f.set("WARC-Target-URI",e)}f.set("WARC-Date",r),i&&f.set("WARC-Type",i),"revisit"===i&&(f.set("WARC-Profile","WARC/1.1"===c?"http://netpreserve.org/warc/1.1/revisit/identical-payload-digest":"http://netpreserve.org/warc/1.0/revisit/identical-payload-digest"),h&&(f.set("WARC-Refers-To-Target-URI",h),f.set("WARC-Refers-To-Date",d(u||(new Date).toISOString()))));let g=new wt({statusline:c,headers:f});g.headers.get("WARC-Record-ID")||g.headers.set("WARC-Record-ID",`<urn:uuid:${P()}>`),g.headers.get("Content-Type")||g.headers.set("Content-Type",i&&Et[i]||"application/octet-stream"),p||(p=Tt());let y=new t({warcHeaders:g,reader:p}),m=null,w=!1;switch(i){case"response":case"request":case"revisit":l?(m=new ht(o),w=!m.size):(m=new Headers(o),w=!Object.entries(o).length),(!w||"revisit"!==i)&&(y.httpHeaders=new wt({statusline:a,headers:m}))}return y}static createWARCInfo(e={},r){return e.type="warcinfo",t.create(e,async function*(){for(let[t,e]of Object.entries(r))yield vt.encode(`${t}: ${e}\r\n`)}())}getResponseInfo(){let t=this.httpHeaders;return t?{headers:t.headers,status:t.statusCode,statusText:t.statusText}:null}fixUp(){let t=this.warcHeaders.headers.get("WARC-Target-URI");t&&t.startsWith("<")&&t.endsWith(">")&&this.warcHeaders.headers.set("WARC-Target-URI",t.slice(1,-1))}async readFully(t=!1){if(this.httpHeaders){if(this.payload&&!this.payload.length)return this.payload;if(this._contentReader&&!t)throw new TypeError("WARC Record decoding already started, but requesting raw payload");if(t&&"raw"===this.consumed&&this.payload)return await this._createDecodingReader([this.payload]).readFully()}return this.payload||(t?(this.payload=await super.readFully(),this.consumed="content"):(this.payload=await dt.readFully(this._reader),this.consumed="raw")),this.payload}get reader(){if(this.payload&&!this.payload.length)return Tt();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(t){if(!this.httpHeaders)throw new Error("WARCRecord cannot call _createDecodingReader when this.httpHeaders === null");let e=this.httpHeaders.headers.get("Content-Encoding"),r=this.httpHeaders.headers.get("Transfer-Encoding"),i="chunked"===r;return!e&&!i&&(e=r),new ft(t,e,i)}async readlineRaw(t){if(this.consumed)throw new Error("Record already consumed.. Perhaps a promise was not awaited?");if(this.contentReader instanceof dt)return this.contentReader.readlineRaw(t);throw new Error("WARCRecord cannot call readlineRaw on this.contentReader if it does not extend BaseAsyncIterReader")}async contentText(){let t=await this.readFully(!0);return At.decode(t)}async*[Symbol.asyncIterator](){for await(let t of this.contentReader)if(yield t,this.consumed)throw new Error("Record already consumed.. Perhaps a promise was not awaited?");this.consumed="content"}async skipFully(){if(!this.consumed){if(this._reader instanceof gt){let t=await this._reader.skipFully();return this.consumed="skipped",t}throw new Error("WARCRecord cannot call skipFully on this._reader if it is not a LimitReader")}}warcHeader(t){return this.warcHeaders.headers.get(t)}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"))}get warcConcurrentTo(){if(this.warcHeaders.headers instanceof ht)return this.warcHeaders.headers.getMultiple("WARC-Concurrent-To");{let t=this.warcHeaders.headers.get("WARC-Concurrent-To");return t?t.split(","):[]}}};async function*Tt(){}var xt=new TextDecoder,Ct=new Uint8Array([]),It=class t{static async parse(e,r){return new t(e,r).parse()}static iterRecords(e,r){return new t(e,r)[Symbol.asyncIterator]()}constructor(t,{keepHeadersCase:e=!1,parseHttp:r=!0}={}){this._offset=0,this._warcHeadersLength=0,this._headersClass=e?ht:Headers,this._parseHttp=r,this._reader=t instanceof ft?t:new ft(t),this._record=null}async readToNextRecord(){if(!this._reader||!this._record)return Ct;await this._record.skipFully(),this._reader.compressed&&(this._offset=this._reader.getRawOffset());let t=await this._reader.readlineRaw(),e=0;if(t){if(e=t.byteLength-1,9===e&&xt.decode(t).startsWith("WARC/"))return t;for(;e>0;){let r=t[e-1];if(10!==r&&13!==r)break;e--}e&&console.warn(`Content-Length Too Small: Record not followed by newline, Remainder Length: ${e}, Offset: ${this._reader.getRawOffset()-t.byteLength}`)}else t=Ct;if(this._reader.compressed)await this._reader.skipSize(2),t=Ct;else{for(t=await this._reader.readlineRaw();t&&2===t.byteLength;)t=await this._reader.readlineRaw();this._offset=this._reader.getRawOffset(),t&&(this._offset-=t.length)}return t}_initRecordReader(t){return new gt(this._reader,Number(t.headers.get("Content-Length")||0))}async parse(){let t=await this.readToNextRecord(),e=t?xt.decode(t):"",r=new class{constructor(){this.reencodeHeaders=new Set}async parse(t,{headersClass:e,firstLine:r}={headersClass:ht}){let i=r||await t.readline();if(!i)return null;let n=i.trimEnd();if(!n)return null;let s,o,a,c,l=new e,h=await async function(t){let e=[],r=0,i=0,n=null,s=t[Symbol.asyncIterator]();for await(let t of s){if([i,t]=await bt(t,s),i>=0){n=t;break}e.push(t),r+=t.byteLength}if(n){let[s,o]=ot(n,i+1);e.push(s),r+=s.byteLength,t.unread(o)}else if(!e.length)return"";return mt.decode(st(e,r))}(t),u=0,p="";for(;u<h.length&&(a=h.indexOf("\n",u),!c||" "!==h[u]&&"\t"!==h[u]?(c&&(this.setHeader(p,c,l),c=null),s=h.indexOf(":",u),o=s<0?u:s+1,s>=0&&s<a?(p=h.slice(u,s).trimStart(),c=h.slice(o,a<0?void 0:a).trim()):c=null):c+=h.slice(u,a<0?void 0:a).trimEnd(),!(a<0));)u=a+1;return c&&this.setHeader(p,c,l),new wt({statusline:n,headers:l,reencodeHeaders:this.reencodeHeaders})}setHeader(t,e,r,i=!1){try{r.append(t,e),r instanceof Headers&&i&&this.reencodeHeaders.add(t.toLowerCase())}catch{i||this.setHeader(t,function(t){let e=(new TextEncoder).encode(t),r="";return e.forEach((t=>r+=String.fromCharCode(t))),r}(e),r,!0)}}},i=await r.parse(this._reader,{firstLine:e,headersClass:this._headersClass});if(!i)return null;this._warcHeadersLength=this._reader.getReadOffset();let n=new St({warcHeaders:i,reader:this._initRecordReader(i)});if(this._record=n,this._parseHttp)switch(n.warcType){case"response":case"request":await this._addHttpHeaders(n,r);break;case"revisit":n.warcContentLength>0&&await this._addHttpHeaders(n,r)}return n}get offset(){return this._offset}get recordLength(){return this._reader.getRawLength(this._offset)}async*[Symbol.asyncIterator](){let t=null;for(;null!==(t=await this.parse());)yield t;this._record=null}async _addHttpHeaders(t,e){let r=await e.parse(this._reader,{headersClass:this._headersClass});t.httpHeaders=r;let i=this._reader.getReadOffset()-this._warcHeadersLength;t.reader instanceof gt&&t.reader.setLimitSkip(t.warcContentLength-i)}};new TextEncoder;var Rt=(Symbol.asyncIterator,["offset","warc-type","warc-target-uri"]),kt="urlkey,timestamp,url,mime,status,digest,length,offset,filename".split(","),Nt="urlkey,timestamp,url,mime,status,digest,redirect,meta,length,offset,filename".split(","),Ot=class extends class extends class{constructor(t={},e=Rt){this.opts=t,t.fields?(this.fields=t.fields,this.reqFields=this.fields.filter((t=>{return(e=t).startsWith("req.")||"referrer"===e.toLowerCase();var e}))):(this.fields=e,this.reqFields=[]),this.parseHttp=!1}serialize(t){return JSON.stringify(t)+"\n"}write(t,e){e.write(this.serialize(t))}async writeAll(t,e){for await(let r of this.iterIndex(t))this.write(r,e)}async*iterIndex(t){let e={strictHeaders:!0,parseHttp:this.parseHttp};for(let{filename:r,reader:i}of t){let t=new It(i,e);yield*this.iterRecords(t,r)}}async*iterRecords(t,e){for await(let r of t){await r.skipFully();let i=this.indexRecord(r,t,e);i&&(yield i)}}indexRecord(t,e,r){if(this.filterRecord&&!this.filterRecord(t))return null;let i={},{offset:n,recordLength:s}=e,o={offset:n,length:s,filename:r};for(let e of this.fields)e in o?i[e]=o[e]:this.setField(e,t,i);return i}setField(t,e,r){let i=this.getField(t,e);null!==i&&(r[t]=i)}getField(t,e){if(t.startsWith("req.")){if("request"!==e.warcType)return null;t=t.slice(4)}if("http:status"===t)return!e.httpHeaders||"response"!==e.warcType&&"revisit"!==e.warcType?null:e.httpHeaders.statusCode;if(t.startsWith("http:")){if(e.httpHeaders){let r=e.httpHeaders.headers,i=t.slice(5),n=r.get(i);if(r instanceof Map){let t=i.toLowerCase();for(let e of r.keys())t===e.toLowerCase()&&(n=r.get(e))}return n}return null}return e.warcHeaders.headers.get(t)||null}}{constructor(t,e){super(t,e);for(let t of this.fields)if(t.startsWith("http:")){this.parseHttp=!0;break}}}{constructor(t){switch(super(t,kt),this.includeAll=!!t?.all,this.overrideIndexForAll=!!t?.all,this.parseHttp=!0,this.noSurt=!!t?.noSurt,this._lastRecord=null,t?.format){case"cdxj":this.serialize=this.serializeCDXJ;break;case"cdx":this.serialize=this.serializeCDX11}}async*iterRecords(t,e){this._lastRecord=null;for await(let r of t){await r.readFully();let i=this.indexRecord(r,t,e);i&&(yield i)}let r=this.indexRecord(null,t,e);r&&(yield r)}filterRecord(t){if(this.includeAll)return!0;let e=t.warcType;return!("request"===e||"warcinfo"===e||("metadata"===e||"resource"===e)&&"application/warc-fields"===t.warcContentType)}indexRecord(t,e,r){if(this.overrideIndexForAll)return t?super.indexRecord(t,e,r):null;let i=this._lastRecord;if(this._lastRecord=t,t&&(t._offset=e.offset,t._length=e.recordLength),!i)return null;if(!t||i.warcTargetURI!=t.warcTargetURI)return this.indexRecordPair(i,null,e,r);let n=t.warcType,s=i.warcType;return"request"!==n||"response"!==s&&"revisit"!==s?"response"!==n&&"revisit"!==n||"request"!==s?this.indexRecordPair(i,null,e,r):(this._lastRecord=null,this.indexRecordPair(t,i,e,r)):(this._lastRecord=null,this.indexRecordPair(i,t,e,r))}indexRecordPair(t,e,r,i){let n,s,o=t.warcTargetURI||"";if(e?.httpHeaders&&"GET"!==e.httpHeaders.method){let t={url:o,method:e.httpHeaders.method,headers:e.httpHeaders.headers,postData:e.payload};n=t.method,et(t)&&(s=t.requestBody,o=t.url)}t._urlkey=o;let a=super.indexRecord(t,r,i);if(a&&(void 0!==t._offset&&(a.offset=t._offset,a.length=t._length),n&&(a.method=n),s&&(a.requestBody=s),e&&this.reqFields.length))for(let t of this.reqFields)this.setField(t,e,a);return a}serializeCDXJ(t){let{urlkey:e,timestamp:r}=t;return delete t.urlkey,delete t.timestamp,`${e} ${r} ${JSON.stringify(t,((t,e)=>["offset","length","status"].includes(t)?null==e?"":""+e:e))}\n`}serializeCDX11(t){let e=[];for(let r of Nt)e.push(null!=t[r]?t[r]:"-");return e.join(" ")+"\n"}getField(t,e){let r=null;switch(t){case"urlkey":return r=e._urlkey||e.warcTargetURI||null,this.noSurt||null===r?r:tt(r);case"timestamp":return r=e.warcDate??"",r.replace(/[-:T]/g,"").slice(0,14);case"url":return e.warcTargetURI;case"mime":switch(e.warcType){case"revisit":return"warc/revisit";case"response":case"request":t="http:content-type";break;default:return e.warcContentType}return r=super.getField(t,e),r?r.toString().split(";",1)[0]?.trim():null;case"status":return super.getField("http:status",e);case"referrer":return super.getField("req.http:referer",e);case"digest":return r=e.warcPayloadDigest,r?r.split(":",2)[1]:null;default:return super.getField(t,e)}}};async function Bt(t,e,r){const i=t;try{"chunked"===r&&(t=function(t){let e=0,r=0;const i=new TextDecoder("utf-8");for(;e<t.length;){let n=e;for(;t[n]>=48&&t[n]<=57||t[n]>=65&&t[n]<=70||t[n]>=97&&t[n]<=102;)n++;if(0===n)return t;if(13!=t[n]||10!=t[n+1])return t;n+=2;const s=parseInt(i.decode(t.subarray(e,n)),16);if(0==s)break;t.set(t.subarray(n,n+s),r),n+=s,r+=s,13==t[n]&&10==t[n+1]&&(n+=2),e=n}return t.subarray(0,r)}(t))}catch(t){console.log("Chunk-Encoding Ignored: "+t)}try{if("br"===e)0===(t=N()(t)).length&&(t=i);else if("gzip"===e||"gzip"===r){const e=new(B().Inflate);e.push(t,!0),e.result&&!e.err&&(t=e.result)}}catch(t){console.log("Content-Encoding Ignored: "+t)}return t}var Pt=r(6932);function Dt(t={}){let e,r;const i=t.response?.extraOpts;if(i&&(e=i.adaptive_max_resolution||i.maxRes,r=i.adaptive_max_bandwidth||i.maxBand,e&&r))return{maxRes:e,maxBand:r};let n;return n=t.response&&!t.response.isLive?{maxRes:921600,maxBand:2e6}:{maxRes:412800,maxBand:1e6},t.save&&(t.save.maxRes=n.maxRes,t.save.maxBand=n.maxBand),n}function Lt(t,e){const r=/#EXT-X-STREAM-INF:(?:.*[,])?BANDWIDTH=([\d]+)/,i=/RESOLUTION=([\d]+)x([\d]+)/,{maxRes:n,maxBand:s}=Dt(e),o=[];let a=0,c=null,l=0,h=0;const u=t.trimEnd().split("\n");for(const t of u){const p=t.match(r);if(!p){e.rewriteUrl&&!t.startsWith("#")&&(u[a]=e.rewriteUrl(t)),a+=1;continue}o.push(a);const d=Number(p[1]),f=t.match(i),g=f?Number(f[1])*Number(f[2]):0;g&&n?g<=n&&g>h&&(h=g,l=d,c=a):d<=s&&d>l&&(h=g,l=d,c=a),a+=1}o.reverse();for(const t of o)t!==c&&u.splice(t,2);return u.join("\n")}const Ut={ignoreAttributes:!1,removeNSPrefix:!1,format:!1,suppressEmptyNode:!0,suppressBooleanAttributes:!1};function Mt(t,e,r){try{return function(t,e,r){const i=new Pt.XMLParser(Ut).parse(t),{maxRes:n,maxBand:s}=Dt(e);let o,a=null,c=0,l=0;o=Array.isArray(i.MPD.Period.AdaptationSet)?i.MPD.Period.AdaptationSet:[i.MPD.Period.AdaptationSet];for(const t of o){let e;a=null,c=0,l=0,e=Array.isArray(t.Representation)?t.Representation:[t.Representation];for(const t of e){const e=Number(t["@_width"]||"0")*Number(t["@_height"]||"0"),r=Number(t["@_bandwidth"]||"0");e&&n&&e<=n?e>c&&(c=e,l=r,a=t):r<=s&&r>l&&(c=e,l=r,a=t)}a&&Array.isArray(r)&&r.push(a["@_id"]),a&&(t.Representation=[a])}const h=new Pt.XMLBuilder(Ut).build(i).trim();return h.slice(0,5).toLowerCase().startsWith("<?xml")?h:"<?xml version='1.0' encoding='UTF-8'?>\n"+h}(t,e,r)}catch(e){return console.log(e),t}}const Ft=[{contains:["youtube.com","youtube-nocookie.com"],rxRules:[[/ytplayer.load\(\);/,Wt('ytplayer.config.args.dash = "0"; ytplayer.config.args.dashmpd = ""; {0}')],[/yt\.setConfig.*PLAYER_CONFIG.*args":\s*{/,Wt('{0} "dash": "0", dashmpd: "", ')],[/(?:"player":|ytplayer\.config).*"args":\s*{/,Wt('{0}"dash":"0","dashmpd":"",')],[/yt\.setConfig.*PLAYER_VARS.*?{/,Wt('{0}"dash":"0","dashmpd":"",')],[/ytplayer.config={args:\s*{/,Wt('{0}"dash":"0","dashmpd":"",')],[/"0"\s*?==\s*?\w+\.dash&&/m,Wt("1&&")]]},{contains:["player.vimeo.com/video/"],rxRules:[[/^\{.+\}$/,function(t){let e;try{e=JSON.parse(t)}catch(e){return t}if(e?.request?.files){const t=e.request.files;if("object"==typeof t.progressive&&t.progressive.length)return t.dash&&(t.__dash=t.dash,delete t.dash),t.hls&&(t.__hls=t.hls,delete t.hls),JSON.stringify(e)}return t.replace(/query_string_ranges=1/g,"query_string_ranges=0")}]]},{contains:["master.json?query_string_ranges=0","master.json?base64"],rxRules:[[/^\{.+\}$/,function(t,e){if(!e)return t;let r=null;const i=Vt(e);try{r=JSON.parse(t),console.log("manifest",r)}catch(e){return t}function n(t,e,r){if(!t)return null;let i=null,n=0;for(const s of t)s.mime_type==r&&s.bitrate>n&&s.bitrate<=e&&(n=s.bitrate,i=s);return i?[i]:t}return r.video=n(r.video,i,"video/mp4"),r.audio=n(r.audio,i,"audio/mp4"),JSON.stringify(r)}]]},{contains:["facebook.com/","fbsbx.com/"],rxRules:[[/"dash_manifests.*?,"failure_reason":null}]/,function(t,e){const r="/MPD>",i=t.indexOf("\\u003C?xml"),n=t.indexOf(r,i)+5;if(n<5)return t;let s=Mt(JSON.parse('"'+t.slice(i,n)+'"'),e);return s=JSON.stringify(s).replaceAll("<","\\u003C").slice(1,-1),t.slice(0,i)+s+t.slice(n)}],[/"playlist/,Wt('"__playlist__')],[/"debugNoBatching\s?":(?:false|0)/,Wt('"debugNoBatching":true')],[/"bulkRouteFetchBatchSize\s?":(?:[^{},]+)/,Wt('"bulkRouteFetchBatchSize":1')],[/"maxBatchSize\s?":(?:[^{},]+)/,Wt('"maxBatchSize":1')]]},{contains:["instagram.com/"],rxRules:[[/"is_dash_eligible":(?:true|1)/,Wt('"is_dash_eligible":false')],[/"debugNoBatching\s?":(?:false|0)/,Wt('"debugNoBatching":true')],[/"bulkRouteFetchBatchSize\s?":(?:[^{},]+)/,Wt('"bulkRouteFetchBatchSize":1')],[/"maxBatchSize\s?":(?:[^{},]+)/,Wt('"maxBatchSize":1')]]},{contains:["api.twitter.com/2/","twitter.com/i/api/2/","twitter.com/i/api/graphql/","api.x.com/2/","x.com/i/api/2/","x.com/i/api/graphql/"],rxRules:[[/"video_info":.*?}]}/,Gt('"video_info":')]]},{contains:["cdn.syndication.twimg.com/tweet-result"],rxRules:[[/"video":.*?viewCount":\d+}/,Gt('"video":')]]},{contains:["/vqlweb.js"],rxRules:[[/\b\w+\.updatePortSize\(\);this\.updateApplicationSize\(\)(?![*])/gim,Wt("/*{0}*/")]]}],Ht=[{contains:["youtube.com","youtube-nocookie.com"],rxRules:[[/[^"]<head.*?>/,t=>`\n ${t}<script>window.MediaSource.isTypeSupported = () => false;<\/script>\n `]]},...Ft],jt=[{contains:/video.*fbcdn.net/,start:"bytestart",end:"byteend"}];function Wt(t){return e=>t.replace("{0}",e)}function Vt(t){let e=5e6;const r=t.response?.extraOpts;return t.save?t.save.maxBitrate=e:r?.maxBitrate&&(e=r.maxBitrate),e}function Gt(t){return(e,r)=>{if(!r)return e;const i=e;try{const i=/([\d]+)x([\d]+)/,n=Vt(r);e=e.slice(t.length);const s=JSON.parse(e);let o=null,a=0;for(const t of s.variants)if(!(t.content_type&&"video/mp4"!==t.content_type||t.type&&"video/mp4"!==t.type))if(t.bitrate&&t.bitrate>a&&t.bitrate<=n)o=t,a=t.bitrate;else if(t.src){const e=i.exec(t.src);if(e){const r=Number(e[1])*Number(e[2]);r>a&&(a=r,o=t)}}return o&&(s.variants=[o]),t+JSON.stringify(s)}catch(t){return console.warn("rewriter error: ",t),i}}}class zt{rwRules;RewriterCls;rewriters=new Map;defaultRewriter;constructor(t,e){this.rwRules=e||Ft,this.RewriterCls=t,this._initRules()}_initRules(){this.rewriters=new Map;for(const t of this.rwRules)t.rxRules&&this.rewriters.set(t,new this.RewriterCls(t.rxRules));this.defaultRewriter=new this.RewriterCls}getCustomRewriter(t){for(const e of this.rwRules)if(e.contains)for(const r of e.contains)if(t.indexOf(r)>=0){const t=this.rewriters.get(e);if(t)return t}return null}getRewriter(t){return this.getCustomRewriter(t)||this.defaultRewriter}}class qt{rules;rx=null;constructor(t){this.rules=t||null,this.rules&&this.compileRules()}compileRules(){let t="";if(!this.rules)return;for(const e of this.rules)t&&(t+="|"),t+=`(${e[0].source})`;const e=`(?:${t})`;this.rx=new RegExp(e,"gm")}doReplace(t,e,r){const i=e[e.length-2],n=e[e.length-1];for(let t=0;t<this.rules.length;t++){const s=e[t];if(!s)continue;const o=this.rules[t][1].call(this,s,r,i,n);if(o)return o}return console.warn(`rx no match found for ${t} - rx rule contains extra matching group?`),t}rewrite(t,e){return this.rx?t.replace(this.rx,((t,...r)=>this.doReplace(t,r,e))):t}}var Qt=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,370,1,81,2,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,9,5351,0,7,14,13835,9,87,9,39,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,4706,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,983,6,110,6,6,9,4759,9,787719,239],Kt=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,68,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,4026,582,8634,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,757,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,3104,541,1507,4938,6,4191],Yt="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",Jt={3:"abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile",5:"class enum extends super const export import",6:"enum",strict:"implements interface let package private protected public static yield",strictBind:"eval arguments"},Xt="break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this",Zt={5:Xt,"5module":Xt+" export import",6:Xt+" const class extends export import super"},$t=/^in(stanceof)?$/,te=new RegExp("["+Yt+"]"),ee=new RegExp("["+Yt+"‌‍·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࢘-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-ᫎᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_]");function re(t,e){for(var r=65536,i=0;i<e.length;i+=2){if((r+=e[i])>t)return!1;if((r+=e[i+1])>=t)return!0}return!1}function ie(t,e){return t<65?36===t:t<91||(t<97?95===t:t<123||(t<=65535?t>=170&&te.test(String.fromCharCode(t)):!1!==e&&re(t,Kt)))}function ne(t,e){return t<48?36===t:t<58||!(t<65)&&(t<91||(t<97?95===t:t<123||(t<=65535?t>=170&&ee.test(String.fromCharCode(t)):!1!==e&&(re(t,Kt)||re(t,Qt)))))}var se=function(t,e){void 0===e&&(e={}),this.label=t,this.keyword=e.keyword,this.beforeExpr=!!e.beforeExpr,this.startsExpr=!!e.startsExpr,this.isLoop=!!e.isLoop,this.isAssign=!!e.isAssign,this.prefix=!!e.prefix,this.postfix=!!e.postfix,this.binop=e.binop||null,this.updateContext=null};function oe(t,e){return new se(t,{beforeExpr:!0,binop:e})}var ae={beforeExpr:!0},ce={startsExpr:!0},le={};function he(t,e){return void 0===e&&(e={}),e.keyword=t,le[t]=new se(t,e)}var ue={num:new se("num",ce),regexp:new se("regexp",ce),string:new se("string",ce),name:new se("name",ce),privateId:new se("privateId",ce),eof:new se("eof"),bracketL:new se("[",{beforeExpr:!0,startsExpr:!0}),bracketR:new se("]"),braceL:new se("{",{beforeExpr:!0,startsExpr:!0}),braceR:new se("}"),parenL:new se("(",{beforeExpr:!0,startsExpr:!0}),parenR:new se(")"),comma:new se(",",ae),semi:new se(";",ae),colon:new se(":",ae),dot:new se("."),question:new se("?",ae),questionDot:new se("?."),arrow:new se("=>",ae),template:new se("template"),invalidTemplate:new se("invalidTemplate"),ellipsis:new se("...",ae),backQuote:new se("`",ce),dollarBraceL:new se("${",{beforeExpr:!0,startsExpr:!0}),eq:new se("=",{beforeExpr:!0,isAssign:!0}),assign:new se("_=",{beforeExpr:!0,isAssign:!0}),incDec:new se("++/--",{prefix:!0,postfix:!0,startsExpr:!0}),prefix:new se("!/~",{beforeExpr:!0,prefix:!0,startsExpr:!0}),logicalOR:oe("||",1),logicalAND:oe("&&",2),bitwiseOR:oe("|",3),bitwiseXOR:oe("^",4),bitwiseAND:oe("&",5),equality:oe("==/!=/===/!==",6),relational:oe("</>/<=/>=",7),bitShift:oe("<</>>/>>>",8),plusMin:new se("+/-",{beforeExpr:!0,binop:9,prefix:!0,startsExpr:!0}),modulo:oe("%",10),star:oe("*",10),slash:oe("/",10),starstar:new se("**",{beforeExpr:!0}),coalesce:oe("??",1),_break:he("break"),_case:he("case",ae),_catch:he("catch"),_continue:he("continue"),_debugger:he("debugger"),_default:he("default",ae),_do:he("do",{isLoop:!0,beforeExpr:!0}),_else:he("else",ae),_finally:he("finally"),_for:he("for",{isLoop:!0}),_function:he("function",ce),_if:he("if"),_return:he("return",ae),_switch:he("switch"),_throw:he("throw",ae),_try:he("try"),_var:he("var"),_const:he("const"),_while:he("while",{isLoop:!0}),_with:he("with"),_new:he("new",{beforeExpr:!0,startsExpr:!0}),_this:he("this",ce),_super:he("super",ce),_class:he("class",ce),_extends:he("extends",ae),_export:he("export"),_import:he("import",ce),_null:he("null",ce),_true:he("true",ce),_false:he("false",ce),_in:he("in",{beforeExpr:!0,binop:7}),_instanceof:he("instanceof",{beforeExpr:!0,binop:7}),_typeof:he("typeof",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_void:he("void",{beforeExpr:!0,prefix:!0,startsExpr:!0}),_delete:he("delete",{beforeExpr:!0,prefix:!0,startsExpr:!0})},pe=/\r\n?|\n|\u2028|\u2029/,de=new RegExp(pe.source,"g");function fe(t){return 10===t||13===t||8232===t||8233===t}function ge(t,e,r){void 0===r&&(r=t.length);for(var i=e;i<r;i++){var n=t.charCodeAt(i);if(fe(n))return i<r-1&&13===n&&10===t.charCodeAt(i+1)?i+2:i+1}return-1}var ye=/[\u1680\u2000-\u200a\u202f\u205f\u3000\ufeff]/,me=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,we=Object.prototype,be=we.hasOwnProperty,Ae=we.toString,ve=Object.hasOwn||function(t,e){return be.call(t,e)},_e=Array.isArray||function(t){return"[object Array]"===Ae.call(t)};function Ee(t){return new RegExp("^(?:"+t.replace(/ /g,"|")+")$")}function Se(t){return t<=65535?String.fromCharCode(t):(t-=65536,String.fromCharCode(55296+(t>>10),56320+(1023&t)))}var Te=/(?:[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/,xe=function(t,e){this.line=t,this.column=e};xe.prototype.offset=function(t){return new xe(this.line,this.column+t)};var Ce=function(t,e,r){this.start=e,this.end=r,null!==t.sourceFile&&(this.source=t.sourceFile)};function Ie(t,e){for(var r=1,i=0;;){var n=ge(t,i,e);if(n<0)return new xe(r,e-i);++r,i=n}}var Re={ecmaVersion:null,sourceType:"script",onInsertedSemicolon:null,onTrailingComma:null,allowReserved:null,allowReturnOutsideFunction:!1,allowImportExportEverywhere:!1,allowAwaitOutsideFunction:null,allowSuperOutsideMethod:null,allowHashBang:!1,checkPrivateFields:!0,locations:!1,onToken:null,onComment:null,ranges:!1,program:null,sourceFile:null,directSourceFile:null,preserveParens:!1},ke=!1;function Ne(t,e){return 2|(t?4:0)|(e?8:0)}var Oe=function(t,e,r){this.options=t=function(t){var e={};for(var r in Re)e[r]=t&&ve(t,r)?t[r]:Re[r];if("latest"===e.ecmaVersion?e.ecmaVersion=1e8:null==e.ecmaVersion?(!ke&&"object"==typeof console&&console.warn&&(ke=!0,console.warn("Since Acorn 8.0.0, options.ecmaVersion is required.\nDefaulting to 2020, but this will stop working in the future.")),e.ecmaVersion=11):e.ecmaVersion>=2015&&(e.ecmaVersion-=2009),null==e.allowReserved&&(e.allowReserved=e.ecmaVersion<5),t&&null!=t.allowHashBang||(e.allowHashBang=e.ecmaVersion>=14),_e(e.onToken)){var i=e.onToken;e.onToken=function(t){return i.push(t)}}return _e(e.onComment)&&(e.onComment=function(t,e){return function(r,i,n,s,o,a){var c={type:r?"Block":"Line",value:i,start:n,end:s};t.locations&&(c.loc=new Ce(this,o,a)),t.ranges&&(c.range=[n,s]),e.push(c)}}(e,e.onComment)),e}(t),this.sourceFile=t.sourceFile,this.keywords=Ee(Zt[t.ecmaVersion>=6?6:"module"===t.sourceType?"5module":5]);var i="";!0!==t.allowReserved&&(i=Jt[t.ecmaVersion>=6?6:5===t.ecmaVersion?5:3],"module"===t.sourceType&&(i+=" await")),this.reservedWords=Ee(i);var n=(i?i+" ":"")+Jt.strict;this.reservedWordsStrict=Ee(n),this.reservedWordsStrictBind=Ee(n+" "+Jt.strictBind),this.input=String(e),this.containsEsc=!1,r?(this.pos=r,this.lineStart=this.input.lastIndexOf("\n",r-1)+1,this.curLine=this.input.slice(0,this.lineStart).split(pe).length):(this.pos=this.lineStart=0,this.curLine=1),this.type=ue.eof,this.value=null,this.start=this.end=this.pos,this.startLoc=this.endLoc=this.curPosition(),this.lastTokEndLoc=this.lastTokStartLoc=null,this.lastTokStart=this.lastTokEnd=this.pos,this.context=this.initialContext(),this.exprAllowed=!0,this.inModule="module"===t.sourceType,this.strict=this.inModule||this.strictDirective(this.pos),this.potentialArrowAt=-1,this.potentialArrowInForAwait=!1,this.yieldPos=this.awaitPos=this.awaitIdentPos=0,this.labels=[],this.undefinedExports=Object.create(null),0===this.pos&&t.allowHashBang&&"#!"===this.input.slice(0,2)&&this.skipLineComment(2),this.scopeStack=[],this.enterScope(1),this.regexpState=null,this.privateNameStack=[]},Be={inFunction:{configurable:!0},inGenerator:{configurable:!0},inAsync:{configurable:!0},canAwait:{configurable:!0},allowSuper:{configurable:!0},allowDirectSuper:{configurable:!0},treatFunctionsAsVar:{configurable:!0},allowNewDotTarget:{configurable:!0},inClassStaticBlock:{configurable:!0}};Oe.prototype.parse=function(){var t=this.options.program||this.startNode();return this.nextToken(),this.parseTopLevel(t)},Be.inFunction.get=function(){return(2&this.currentVarScope().flags)>0},Be.inGenerator.get=function(){return(8&this.currentVarScope().flags)>0&&!this.currentVarScope().inClassFieldInit},Be.inAsync.get=function(){return(4&this.currentVarScope().flags)>0&&!this.currentVarScope().inClassFieldInit},Be.canAwait.get=function(){for(var t=this.scopeStack.length-1;t>=0;t--){var e=this.scopeStack[t];if(e.inClassFieldInit||256&e.flags)return!1;if(2&e.flags)return(4&e.flags)>0}return this.inModule&&this.options.ecmaVersion>=13||this.options.allowAwaitOutsideFunction},Be.allowSuper.get=function(){var t=this.currentThisScope(),e=t.flags,r=t.inClassFieldInit;return(64&e)>0||r||this.options.allowSuperOutsideMethod},Be.allowDirectSuper.get=function(){return(128&this.currentThisScope().flags)>0},Be.treatFunctionsAsVar.get=function(){return this.treatFunctionsAsVarInScope(this.currentScope())},Be.allowNewDotTarget.get=function(){var t=this.currentThisScope(),e=t.flags,r=t.inClassFieldInit;return(258&e)>0||r},Be.inClassStaticBlock.get=function(){return(256&this.currentVarScope().flags)>0},Oe.extend=function(){for(var t=[],e=arguments.length;e--;)t[e]=arguments[e];for(var r=this,i=0;i<t.length;i++)r=t[i](r);return r},Oe.parse=function(t,e){return new this(e,t).parse()},Oe.parseExpressionAt=function(t,e,r){var i=new this(r,t,e);return i.nextToken(),i.parseExpression()},Oe.tokenizer=function(t,e){return new this(e,t)},Object.defineProperties(Oe.prototype,Be);var Pe=Oe.prototype,De=/^(?:'((?:\\.|[^'\\])*?)'|"((?:\\.|[^"\\])*?)")/;Pe.strictDirective=function(t){if(this.options.ecmaVersion<5)return!1;for(;;){me.lastIndex=t,t+=me.exec(this.input)[0].length;var e=De.exec(this.input.slice(t));if(!e)return!1;if("use strict"===(e[1]||e[2])){me.lastIndex=t+e[0].length;var r=me.exec(this.input),i=r.index+r[0].length,n=this.input.charAt(i);return";"===n||"}"===n||pe.test(r[0])&&!(/[(`.[+\-/*%<>=,?^&]/.test(n)||"!"===n&&"="===this.input.charAt(i+1))}t+=e[0].length,me.lastIndex=t,t+=me.exec(this.input)[0].length,";"===this.input[t]&&t++}},Pe.eat=function(t){return this.type===t&&(this.next(),!0)},Pe.isContextual=function(t){return this.type===ue.name&&this.value===t&&!this.containsEsc},Pe.eatContextual=function(t){return!!this.isContextual(t)&&(this.next(),!0)},Pe.expectContextual=function(t){this.eatContextual(t)||this.unexpected()},Pe.canInsertSemicolon=function(){return this.type===ue.eof||this.type===ue.braceR||pe.test(this.input.slice(this.lastTokEnd,this.start))},Pe.insertSemicolon=function(){if(this.canInsertSemicolon())return this.options.onInsertedSemicolon&&this.options.onInsertedSemicolon(this.lastTokEnd,this.lastTokEndLoc),!0},Pe.semicolon=function(){this.eat(ue.semi)||this.insertSemicolon()||this.unexpected()},Pe.afterTrailingComma=function(t,e){if(this.type===t)return this.options.onTrailingComma&&this.options.onTrailingComma(this.lastTokStart,this.lastTokStartLoc),e||this.next(),!0},Pe.expect=function(t){this.eat(t)||this.unexpected()},Pe.unexpected=function(t){this.raise(null!=t?t:this.start,"Unexpected token")};var Le=function(){this.shorthandAssign=this.trailingComma=this.parenthesizedAssign=this.parenthesizedBind=this.doubleProto=-1};Pe.checkPatternErrors=function(t,e){if(t){t.trailingComma>-1&&this.raiseRecoverable(t.trailingComma,"Comma is not permitted after the rest element");var r=e?t.parenthesizedAssign:t.parenthesizedBind;r>-1&&this.raiseRecoverable(r,e?"Assigning to rvalue":"Parenthesized pattern")}},Pe.checkExpressionErrors=function(t,e){if(!t)return!1;var r=t.shorthandAssign,i=t.doubleProto;if(!e)return r>=0||i>=0;r>=0&&this.raise(r,"Shorthand property assignments are valid only in destructuring patterns"),i>=0&&this.raiseRecoverable(i,"Redefinition of __proto__ property")},Pe.checkYieldAwaitInDefaultParams=function(){this.yieldPos&&(!this.awaitPos||this.yieldPos<this.awaitPos)&&this.raise(this.yieldPos,"Yield expression cannot be a default value"),this.awaitPos&&this.raise(this.awaitPos,"Await expression cannot be a default value")},Pe.isSimpleAssignTarget=function(t){return"ParenthesizedExpression"===t.type?this.isSimpleAssignTarget(t.expression):"Identifier"===t.type||"MemberExpression"===t.type};var Ue=Oe.prototype;Ue.parseTopLevel=function(t){var e=Object.create(null);for(t.body||(t.body=[]);this.type!==ue.eof;){var r=this.parseStatement(null,!0,e);t.body.push(r)}if(this.inModule)for(var i=0,n=Object.keys(this.undefinedExports);i<n.length;i+=1){var s=n[i];this.raiseRecoverable(this.undefinedExports[s].start,"Export '"+s+"' is not defined")}return this.adaptDirectivePrologue(t.body),this.next(),t.sourceType=this.options.sourceType,this.finishNode(t,"Program")};var Me={kind:"loop"},Fe={kind:"switch"};Ue.isLet=function(t){if(this.options.ecmaVersion<6||!this.isContextual("let"))return!1;me.lastIndex=this.pos;var e=me.exec(this.input),r=this.pos+e[0].length,i=this.input.charCodeAt(r);if(91===i||92===i)return!0;if(t)return!1;if(123===i||i>55295&&i<56320)return!0;if(ie(i,!0)){for(var n=r+1;ne(i=this.input.charCodeAt(n),!0);)++n;if(92===i||i>55295&&i<56320)return!0;var s=this.input.slice(r,n);if(!$t.test(s))return!0}return!1},Ue.isAsyncFunction=function(){if(this.options.ecmaVersion<8||!this.isContextual("async"))return!1;me.lastIndex=this.pos;var t,e=me.exec(this.input),r=this.pos+e[0].length;return!(pe.test(this.input.slice(this.pos,r))||"function"!==this.input.slice(r,r+8)||r+8!==this.input.length&&(ne(t=this.input.charCodeAt(r+8))||t>55295&&t<56320))},Ue.parseStatement=function(t,e,r){var i,n=this.type,s=this.startNode();switch(this.isLet(t)&&(n=ue._var,i="let"),n){case ue._break:case ue._continue:return this.parseBreakContinueStatement(s,n.keyword);case ue._debugger:return this.parseDebuggerStatement(s);case ue._do:return this.parseDoStatement(s);case ue._for:return this.parseForStatement(s);case ue._function:return t&&(this.strict||"if"!==t&&"label"!==t)&&this.options.ecmaVersion>=6&&this.unexpected(),this.parseFunctionStatement(s,!1,!t);case ue._class:return t&&this.unexpected(),this.parseClass(s,!0);case ue._if:return this.parseIfStatement(s);case ue._return:return this.parseReturnStatement(s);case ue._switch:return this.parseSwitchStatement(s);case ue._throw:return this.parseThrowStatement(s);case ue._try:return this.parseTryStatement(s);case ue._const:case ue._var:return i=i||this.value,t&&"var"!==i&&this.unexpected(),this.parseVarStatement(s,i);case ue._while:return this.parseWhileStatement(s);case ue._with:return this.parseWithStatement(s);case ue.braceL:return this.parseBlock(!0,s);case ue.semi:return this.parseEmptyStatement(s);case ue._export:case ue._import:if(this.options.ecmaVersion>10&&n===ue._import){me.lastIndex=this.pos;var o=me.exec(this.input),a=this.pos+o[0].length,c=this.input.charCodeAt(a);if(40===c||46===c)return this.parseExpressionStatement(s,this.parseExpression())}return this.options.allowImportExportEverywhere||(e||this.raise(this.start,"'import' and 'export' may only appear at the top level"),this.inModule||this.raise(this.start,"'import' and 'export' may appear only with 'sourceType: module'")),n===ue._import?this.parseImport(s):this.parseExport(s,r);default:if(this.isAsyncFunction())return t&&this.unexpected(),this.next(),this.parseFunctionStatement(s,!0,!t);var l=this.value,h=this.parseExpression();return n===ue.name&&"Identifier"===h.type&&this.eat(ue.colon)?this.parseLabeledStatement(s,l,h,t):this.parseExpressionStatement(s,h)}},Ue.parseBreakContinueStatement=function(t,e){var r="break"===e;this.next(),this.eat(ue.semi)||this.insertSemicolon()?t.label=null:this.type!==ue.name?this.unexpected():(t.label=this.parseIdent(),this.semicolon());for(var i=0;i<this.labels.length;++i){var n=this.labels[i];if(null==t.label||n.name===t.label.name){if(null!=n.kind&&(r||"loop"===n.kind))break;if(t.label&&r)break}}return i===this.labels.length&&this.raise(t.start,"Unsyntactic "+e),this.finishNode(t,r?"BreakStatement":"ContinueStatement")},Ue.parseDebuggerStatement=function(t){return this.next(),this.semicolon(),this.finishNode(t,"DebuggerStatement")},Ue.parseDoStatement=function(t){return this.next(),this.labels.push(Me),t.body=this.parseStatement("do"),this.labels.pop(),this.expect(ue._while),t.test=this.parseParenExpression(),this.options.ecmaVersion>=6?this.eat(ue.semi):this.semicolon(),this.finishNode(t,"DoWhileStatement")},Ue.parseForStatement=function(t){this.next();var e=this.options.ecmaVersion>=9&&this.canAwait&&this.eatContextual("await")?this.lastTokStart:-1;if(this.labels.push(Me),this.enterScope(0),this.expect(ue.parenL),this.type===ue.semi)return e>-1&&this.unexpected(e),this.parseFor(t,null);var r=this.isLet();if(this.type===ue._var||this.type===ue._const||r){var i=this.startNode(),n=r?"let":this.value;return this.next(),this.parseVar(i,!0,n),this.finishNode(i,"VariableDeclaration"),(this.type===ue._in||this.options.ecmaVersion>=6&&this.isContextual("of"))&&1===i.declarations.length?(this.options.ecmaVersion>=9&&(this.type===ue._in?e>-1&&this.unexpected(e):t.await=e>-1),this.parseForIn(t,i)):(e>-1&&this.unexpected(e),this.parseFor(t,i))}var s=this.isContextual("let"),o=!1,a=new Le,c=this.parseExpression(!(e>-1)||"await",a);return this.type===ue._in||(o=this.options.ecmaVersion>=6&&this.isContextual("of"))?(this.options.ecmaVersion>=9&&(this.type===ue._in?e>-1&&this.unexpected(e):t.await=e>-1),s&&o&&this.raise(c.start,"The left-hand side of a for-of loop may not start with 'let'."),this.toAssignable(c,!1,a),this.checkLValPattern(c),this.parseForIn(t,c)):(this.checkExpressionErrors(a,!0),e>-1&&this.unexpected(e),this.parseFor(t,c))},Ue.parseFunctionStatement=function(t,e,r){return this.next(),this.parseFunction(t,je|(r?0:We),!1,e)},Ue.parseIfStatement=function(t){return this.next(),t.test=this.parseParenExpression(),t.consequent=this.parseStatement("if"),t.alternate=this.eat(ue._else)?this.parseStatement("if"):null,this.finishNode(t,"IfStatement")},Ue.parseReturnStatement=function(t){return this.inFunction||this.options.allowReturnOutsideFunction||this.raise(this.start,"'return' outside of function"),this.next(),this.eat(ue.semi)||this.insertSemicolon()?t.argument=null:(t.argument=this.parseExpression(),this.semicolon()),this.finishNode(t,"ReturnStatement")},Ue.parseSwitchStatement=function(t){var e;this.next(),t.discriminant=this.parseParenExpression(),t.cases=[],this.expect(ue.braceL),this.labels.push(Fe),this.enterScope(0);for(var r=!1;this.type!==ue.braceR;)if(this.type===ue._case||this.type===ue._default){var i=this.type===ue._case;e&&this.finishNode(e,"SwitchCase"),t.cases.push(e=this.startNode()),e.consequent=[],this.next(),i?e.test=this.parseExpression():(r&&this.raiseRecoverable(this.lastTokStart,"Multiple default clauses"),r=!0,e.test=null),this.expect(ue.colon)}else e||this.unexpected(),e.consequent.push(this.parseStatement(null));return this.exitScope(),e&&this.finishNode(e,"SwitchCase"),this.next(),this.labels.pop(),this.finishNode(t,"SwitchStatement")},Ue.parseThrowStatement=function(t){return this.next(),pe.test(this.input.slice(this.lastTokEnd,this.start))&&this.raise(this.lastTokEnd,"Illegal newline after throw"),t.argument=this.parseExpression(),this.semicolon(),this.finishNode(t,"ThrowStatement")};var He=[];Ue.parseCatchClauseParam=function(){var t=this.parseBindingAtom(),e="Identifier"===t.type;return this.enterScope(e?32:0),this.checkLValPattern(t,e?4:2),this.expect(ue.parenR),t},Ue.parseTryStatement=function(t){if(this.next(),t.block=this.parseBlock(),t.handler=null,this.type===ue._catch){var e=this.startNode();this.next(),this.eat(ue.parenL)?e.param=this.parseCatchClauseParam():(this.options.ecmaVersion<10&&this.unexpected(),e.param=null,this.enterScope(0)),e.body=this.parseBlock(!1),this.exitScope(),t.handler=this.finishNode(e,"CatchClause")}return t.finalizer=this.eat(ue._finally)?this.parseBlock():null,t.handler||t.finalizer||this.raise(t.start,"Missing catch or finally clause"),this.finishNode(t,"TryStatement")},Ue.parseVarStatement=function(t,e,r){return this.next(),this.parseVar(t,!1,e,r),this.semicolon(),this.finishNode(t,"VariableDeclaration")},Ue.parseWhileStatement=function(t){return this.next(),t.test=this.parseParenExpression(),this.labels.push(Me),t.body=this.parseStatement("while"),this.labels.pop(),this.finishNode(t,"WhileStatement")},Ue.parseWithStatement=function(t){return this.strict&&this.raise(this.start,"'with' in strict mode"),this.next(),t.object=this.parseParenExpression(),t.body=this.parseStatement("with"),this.finishNode(t,"WithStatement")},Ue.parseEmptyStatement=function(t){return this.next(),this.finishNode(t,"EmptyStatement")},Ue.parseLabeledStatement=function(t,e,r,i){for(var n=0,s=this.labels;n<s.length;n+=1)s[n].name===e&&this.raise(r.start,"Label '"+e+"' is already declared");for(var o=this.type.isLoop?"loop":this.type===ue._switch?"switch":null,a=this.labels.length-1;a>=0;a--){var c=this.labels[a];if(c.statementStart!==t.start)break;c.statementStart=this.start,c.kind=o}return this.labels.push({name:e,kind:o,statementStart:this.start}),t.body=this.parseStatement(i?-1===i.indexOf("label")?i+"label":i:"label"),this.labels.pop(),t.label=r,this.finishNode(t,"LabeledStatement")},Ue.parseExpressionStatement=function(t,e){return t.expression=e,this.semicolon(),this.finishNode(t,"ExpressionStatement")},Ue.parseBlock=function(t,e,r){for(void 0===t&&(t=!0),void 0===e&&(e=this.startNode()),e.body=[],this.expect(ue.braceL),t&&this.enterScope(0);this.type!==ue.braceR;){var i=this.parseStatement(null);e.body.push(i)}return r&&(this.strict=!1),this.next(),t&&this.exitScope(),this.finishNode(e,"BlockStatement")},Ue.parseFor=function(t,e){return t.init=e,this.expect(ue.semi),t.test=this.type===ue.semi?null:this.parseExpression(),this.expect(ue.semi),t.update=this.type===ue.parenR?null:this.parseExpression(),this.expect(ue.parenR),t.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(t,"ForStatement")},Ue.parseForIn=function(t,e){var r=this.type===ue._in;return this.next(),"VariableDeclaration"===e.type&&null!=e.declarations[0].init&&(!r||this.options.ecmaVersion<8||this.strict||"var"!==e.kind||"Identifier"!==e.declarations[0].id.type)&&this.raise(e.start,(r?"for-in":"for-of")+" loop variable declaration may not have an initializer"),t.left=e,t.right=r?this.parseExpression():this.parseMaybeAssign(),this.expect(ue.parenR),t.body=this.parseStatement("for"),this.exitScope(),this.labels.pop(),this.finishNode(t,r?"ForInStatement":"ForOfStatement")},Ue.parseVar=function(t,e,r,i){for(t.declarations=[],t.kind=r;;){var n=this.startNode();if(this.parseVarId(n,r),this.eat(ue.eq)?n.init=this.parseMaybeAssign(e):i||"const"!==r||this.type===ue._in||this.options.ecmaVersion>=6&&this.isContextual("of")?i||"Identifier"===n.id.type||e&&(this.type===ue._in||this.isContextual("of"))?n.init=null:this.raise(this.lastTokEnd,"Complex binding patterns require an initialization value"):this.unexpected(),t.declarations.push(this.finishNode(n,"VariableDeclarator")),!this.eat(ue.comma))break}return t},Ue.parseVarId=function(t,e){t.id=this.parseBindingAtom(),this.checkLValPattern(t.id,"var"===e?1:2,!1)};var je=1,We=2;function Ve(t,e){var r=e.key.name,i=t[r],n="true";return"MethodDefinition"!==e.type||"get"!==e.kind&&"set"!==e.kind||(n=(e.static?"s":"i")+e.kind),"iget"===i&&"iset"===n||"iset"===i&&"iget"===n||"sget"===i&&"sset"===n||"sset"===i&&"sget"===n?(t[r]="true",!1):!!i||(t[r]=n,!1)}function Ge(t,e){var r=t.computed,i=t.key;return!r&&("Identifier"===i.type&&i.name===e||"Literal"===i.type&&i.value===e)}Ue.parseFunction=function(t,e,r,i,n){this.initFunction(t),(this.options.ecmaVersion>=9||this.options.ecmaVersion>=6&&!i)&&(this.type===ue.star&&e&We&&this.unexpected(),t.generator=this.eat(ue.star)),this.options.ecmaVersion>=8&&(t.async=!!i),e&je&&(t.id=4&e&&this.type!==ue.name?null:this.parseIdent(),!t.id||e&We||this.checkLValSimple(t.id,this.strict||t.generator||t.async?this.treatFunctionsAsVar?1:2:3));var s=this.yieldPos,o=this.awaitPos,a=this.awaitIdentPos;return this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(Ne(t.async,t.generator)),e&je||(t.id=this.type===ue.name?this.parseIdent():null),this.parseFunctionParams(t),this.parseFunctionBody(t,r,!1,n),this.yieldPos=s,this.awaitPos=o,this.awaitIdentPos=a,this.finishNode(t,e&je?"FunctionDeclaration":"FunctionExpression")},Ue.parseFunctionParams=function(t){this.expect(ue.parenL),t.params=this.parseBindingList(ue.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams()},Ue.parseClass=function(t,e){this.next();var r=this.strict;this.strict=!0,this.parseClassId(t,e),this.parseClassSuper(t);var i=this.enterClassBody(),n=this.startNode(),s=!1;for(n.body=[],this.expect(ue.braceL);this.type!==ue.braceR;){var o=this.parseClassElement(null!==t.superClass);o&&(n.body.push(o),"MethodDefinition"===o.type&&"constructor"===o.kind?(s&&this.raiseRecoverable(o.start,"Duplicate constructor in the same class"),s=!0):o.key&&"PrivateIdentifier"===o.key.type&&Ve(i,o)&&this.raiseRecoverable(o.key.start,"Identifier '#"+o.key.name+"' has already been declared"))}return this.strict=r,this.next(),t.body=this.finishNode(n,"ClassBody"),this.exitClassBody(),this.finishNode(t,e?"ClassDeclaration":"ClassExpression")},Ue.parseClassElement=function(t){if(this.eat(ue.semi))return null;var e=this.options.ecmaVersion,r=this.startNode(),i="",n=!1,s=!1,o="method",a=!1;if(this.eatContextual("static")){if(e>=13&&this.eat(ue.braceL))return this.parseClassStaticBlock(r),r;this.isClassElementNameStart()||this.type===ue.star?a=!0:i="static"}if(r.static=a,!i&&e>=8&&this.eatContextual("async")&&(!this.isClassElementNameStart()&&this.type!==ue.star||this.canInsertSemicolon()?i="async":s=!0),!i&&(e>=9||!s)&&this.eat(ue.star)&&(n=!0),!i&&!s&&!n){var c=this.value;(this.eatContextual("get")||this.eatContextual("set"))&&(this.isClassElementNameStart()?o=c:i=c)}if(i?(r.computed=!1,r.key=this.startNodeAt(this.lastTokStart,this.lastTokStartLoc),r.key.name=i,this.finishNode(r.key,"Identifier")):this.parseClassElementName(r),e<13||this.type===ue.parenL||"method"!==o||n||s){var l=!r.static&&Ge(r,"constructor"),h=l&&t;l&&"method"!==o&&this.raise(r.key.start,"Constructor can't have get/set modifier"),r.kind=l?"constructor":o,this.parseClassMethod(r,n,s,h)}else this.parseClassField(r);return r},Ue.isClassElementNameStart=function(){return this.type===ue.name||this.type===ue.privateId||this.type===ue.num||this.type===ue.string||this.type===ue.bracketL||this.type.keyword},Ue.parseClassElementName=function(t){this.type===ue.privateId?("constructor"===this.value&&this.raise(this.start,"Classes can't have an element named '#constructor'"),t.computed=!1,t.key=this.parsePrivateIdent()):this.parsePropertyName(t)},Ue.parseClassMethod=function(t,e,r,i){var n=t.key;"constructor"===t.kind?(e&&this.raise(n.start,"Constructor can't be a generator"),r&&this.raise(n.start,"Constructor can't be an async method")):t.static&&Ge(t,"prototype")&&this.raise(n.start,"Classes may not have a static property named prototype");var s=t.value=this.parseMethod(e,r,i);return"get"===t.kind&&0!==s.params.length&&this.raiseRecoverable(s.start,"getter should have no params"),"set"===t.kind&&1!==s.params.length&&this.raiseRecoverable(s.start,"setter should have exactly one param"),"set"===t.kind&&"RestElement"===s.params[0].type&&this.raiseRecoverable(s.params[0].start,"Setter cannot use rest params"),this.finishNode(t,"MethodDefinition")},Ue.parseClassField=function(t){if(Ge(t,"constructor")?this.raise(t.key.start,"Classes can't have a field named 'constructor'"):t.static&&Ge(t,"prototype")&&this.raise(t.key.start,"Classes can't have a static field named 'prototype'"),this.eat(ue.eq)){var e=this.currentThisScope(),r=e.inClassFieldInit;e.inClassFieldInit=!0,t.value=this.parseMaybeAssign(),e.inClassFieldInit=r}else t.value=null;return this.semicolon(),this.finishNode(t,"PropertyDefinition")},Ue.parseClassStaticBlock=function(t){t.body=[];var e=this.labels;for(this.labels=[],this.enterScope(320);this.type!==ue.braceR;){var r=this.parseStatement(null);t.body.push(r)}return this.next(),this.exitScope(),this.labels=e,this.finishNode(t,"StaticBlock")},Ue.parseClassId=function(t,e){this.type===ue.name?(t.id=this.parseIdent(),e&&this.checkLValSimple(t.id,2,!1)):(!0===e&&this.unexpected(),t.id=null)},Ue.parseClassSuper=function(t){t.superClass=this.eat(ue._extends)?this.parseExprSubscripts(null,!1):null},Ue.enterClassBody=function(){var t={declared:Object.create(null),used:[]};return this.privateNameStack.push(t),t.declared},Ue.exitClassBody=function(){var t=this.privateNameStack.pop(),e=t.declared,r=t.used;if(this.options.checkPrivateFields)for(var i=this.privateNameStack.length,n=0===i?null:this.privateNameStack[i-1],s=0;s<r.length;++s){var o=r[s];ve(e,o.name)||(n?n.used.push(o):this.raiseRecoverable(o.start,"Private field '#"+o.name+"' must be declared in an enclosing class"))}},Ue.parseExportAllDeclaration=function(t,e){return this.options.ecmaVersion>=11&&(this.eatContextual("as")?(t.exported=this.parseModuleExportName(),this.checkExport(e,t.exported,this.lastTokStart)):t.exported=null),this.expectContextual("from"),this.type!==ue.string&&this.unexpected(),t.source=this.parseExprAtom(),this.semicolon(),this.finishNode(t,"ExportAllDeclaration")},Ue.parseExport=function(t,e){if(this.next(),this.eat(ue.star))return this.parseExportAllDeclaration(t,e);if(this.eat(ue._default))return this.checkExport(e,"default",this.lastTokStart),t.declaration=this.parseExportDefaultDeclaration(),this.finishNode(t,"ExportDefaultDeclaration");if(this.shouldParseExportStatement())t.declaration=this.parseExportDeclaration(t),"VariableDeclaration"===t.declaration.type?this.checkVariableExport(e,t.declaration.declarations):this.checkExport(e,t.declaration.id,t.declaration.id.start),t.specifiers=[],t.source=null;else{if(t.declaration=null,t.specifiers=this.parseExportSpecifiers(e),this.eatContextual("from"))this.type!==ue.string&&this.unexpected(),t.source=this.parseExprAtom();else{for(var r=0,i=t.specifiers;r<i.length;r+=1){var n=i[r];this.checkUnreserved(n.local),this.checkLocalExport(n.local),"Literal"===n.local.type&&this.raise(n.local.start,"A string literal cannot be used as an exported binding without `from`.")}t.source=null}this.semicolon()}return this.finishNode(t,"ExportNamedDeclaration")},Ue.parseExportDeclaration=function(t){return this.parseStatement(null)},Ue.parseExportDefaultDeclaration=function(){var t;if(this.type===ue._function||(t=this.isAsyncFunction())){var e=this.startNode();return this.next(),t&&this.next(),this.parseFunction(e,4|je,!1,t)}if(this.type===ue._class){var r=this.startNode();return this.parseClass(r,"nullableID")}var i=this.parseMaybeAssign();return this.semicolon(),i},Ue.checkExport=function(t,e,r){t&&("string"!=typeof e&&(e="Identifier"===e.type?e.name:e.value),ve(t,e)&&this.raiseRecoverable(r,"Duplicate export '"+e+"'"),t[e]=!0)},Ue.checkPatternExport=function(t,e){var r=e.type;if("Identifier"===r)this.checkExport(t,e,e.start);else if("ObjectPattern"===r)for(var i=0,n=e.properties;i<n.length;i+=1){var s=n[i];this.checkPatternExport(t,s)}else if("ArrayPattern"===r)for(var o=0,a=e.elements;o<a.length;o+=1){var c=a[o];c&&this.checkPatternExport(t,c)}else"Property"===r?this.checkPatternExport(t,e.value):"AssignmentPattern"===r?this.checkPatternExport(t,e.left):"RestElement"===r?this.checkPatternExport(t,e.argument):"ParenthesizedExpression"===r&&this.checkPatternExport(t,e.expression)},Ue.checkVariableExport=function(t,e){if(t)for(var r=0,i=e;r<i.length;r+=1){var n=i[r];this.checkPatternExport(t,n.id)}},Ue.shouldParseExportStatement=function(){return"var"===this.type.keyword||"const"===this.type.keyword||"class"===this.type.keyword||"function"===this.type.keyword||this.isLet()||this.isAsyncFunction()},Ue.parseExportSpecifier=function(t){var e=this.startNode();return e.local=this.parseModuleExportName(),e.exported=this.eatContextual("as")?this.parseModuleExportName():e.local,this.checkExport(t,e.exported,e.exported.start),this.finishNode(e,"ExportSpecifier")},Ue.parseExportSpecifiers=function(t){var e=[],r=!0;for(this.expect(ue.braceL);!this.eat(ue.braceR);){if(r)r=!1;else if(this.expect(ue.comma),this.afterTrailingComma(ue.braceR))break;e.push(this.parseExportSpecifier(t))}return e},Ue.parseImport=function(t){return this.next(),this.type===ue.string?(t.specifiers=He,t.source=this.parseExprAtom()):(t.specifiers=this.parseImportSpecifiers(),this.expectContextual("from"),t.source=this.type===ue.string?this.parseExprAtom():this.unexpected()),this.semicolon(),this.finishNode(t,"ImportDeclaration")},Ue.parseImportSpecifier=function(){var t=this.startNode();return t.imported=this.parseModuleExportName(),this.eatContextual("as")?t.local=this.parseIdent():(this.checkUnreserved(t.imported),t.local=t.imported),this.checkLValSimple(t.local,2),this.finishNode(t,"ImportSpecifier")},Ue.parseImportDefaultSpecifier=function(){var t=this.startNode();return t.local=this.parseIdent(),this.checkLValSimple(t.local,2),this.finishNode(t,"ImportDefaultSpecifier")},Ue.parseImportNamespaceSpecifier=function(){var t=this.startNode();return this.next(),this.expectContextual("as"),t.local=this.parseIdent(),this.checkLValSimple(t.local,2),this.finishNode(t,"ImportNamespaceSpecifier")},Ue.parseImportSpecifiers=function(){var t=[],e=!0;if(this.type===ue.name&&(t.push(this.parseImportDefaultSpecifier()),!this.eat(ue.comma)))return t;if(this.type===ue.star)return t.push(this.parseImportNamespaceSpecifier()),t;for(this.expect(ue.braceL);!this.eat(ue.braceR);){if(e)e=!1;else if(this.expect(ue.comma),this.afterTrailingComma(ue.braceR))break;t.push(this.parseImportSpecifier())}return t},Ue.parseModuleExportName=function(){if(this.options.ecmaVersion>=13&&this.type===ue.string){var t=this.parseLiteral(this.value);return Te.test(t.value)&&this.raise(t.start,"An export name cannot include a lone surrogate."),t}return this.parseIdent(!0)},Ue.adaptDirectivePrologue=function(t){for(var e=0;e<t.length&&this.isDirectiveCandidate(t[e]);++e)t[e].directive=t[e].expression.raw.slice(1,-1)},Ue.isDirectiveCandidate=function(t){return this.options.ecmaVersion>=5&&"ExpressionStatement"===t.type&&"Literal"===t.expression.type&&"string"==typeof t.expression.value&&('"'===this.input[t.start]||"'"===this.input[t.start])};var ze=Oe.prototype;ze.toAssignable=function(t,e,r){if(this.options.ecmaVersion>=6&&t)switch(t.type){case"Identifier":this.inAsync&&"await"===t.name&&this.raise(t.start,"Cannot use 'await' as identifier inside an async function");break;case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":t.type="ObjectPattern",r&&this.checkPatternErrors(r,!0);for(var i=0,n=t.properties;i<n.length;i+=1){var s=n[i];this.toAssignable(s,e),"RestElement"!==s.type||"ArrayPattern"!==s.argument.type&&"ObjectPattern"!==s.argument.type||this.raise(s.argument.start,"Unexpected token")}break;case"Property":"init"!==t.kind&&this.raise(t.key.start,"Object pattern can't contain getter or setter"),this.toAssignable(t.value,e);break;case"ArrayExpression":t.type="ArrayPattern",r&&this.checkPatternErrors(r,!0),this.toAssignableList(t.elements,e);break;case"SpreadElement":t.type="RestElement",this.toAssignable(t.argument,e),"AssignmentPattern"===t.argument.type&&this.raise(t.argument.start,"Rest elements cannot have a default value");break;case"AssignmentExpression":"="!==t.operator&&this.raise(t.left.end,"Only '=' operator can be used for specifying default value."),t.type="AssignmentPattern",delete t.operator,this.toAssignable(t.left,e);break;case"ParenthesizedExpression":this.toAssignable(t.expression,e,r);break;case"ChainExpression":this.raiseRecoverable(t.start,"Optional chaining cannot appear in left-hand side");break;case"MemberExpression":if(!e)break;default:this.raise(t.start,"Assigning to rvalue")}else r&&this.checkPatternErrors(r,!0);return t},ze.toAssignableList=function(t,e){for(var r=t.length,i=0;i<r;i++){var n=t[i];n&&this.toAssignable(n,e)}if(r){var s=t[r-1];6===this.options.ecmaVersion&&e&&s&&"RestElement"===s.type&&"Identifier"!==s.argument.type&&this.unexpected(s.argument.start)}return t},ze.parseSpread=function(t){var e=this.startNode();return this.next(),e.argument=this.parseMaybeAssign(!1,t),this.finishNode(e,"SpreadElement")},ze.parseRestBinding=function(){var t=this.startNode();return this.next(),6===this.options.ecmaVersion&&this.type!==ue.name&&this.unexpected(),t.argument=this.parseBindingAtom(),this.finishNode(t,"RestElement")},ze.parseBindingAtom=function(){if(this.options.ecmaVersion>=6)switch(this.type){case ue.bracketL:var t=this.startNode();return this.next(),t.elements=this.parseBindingList(ue.bracketR,!0,!0),this.finishNode(t,"ArrayPattern");case ue.braceL:return this.parseObj(!0)}return this.parseIdent()},ze.parseBindingList=function(t,e,r,i){for(var n=[],s=!0;!this.eat(t);)if(s?s=!1:this.expect(ue.comma),e&&this.type===ue.comma)n.push(null);else{if(r&&this.afterTrailingComma(t))break;if(this.type===ue.ellipsis){var o=this.parseRestBinding();this.parseBindingListItem(o),n.push(o),this.type===ue.comma&&this.raiseRecoverable(this.start,"Comma is not permitted after the rest element"),this.expect(t);break}n.push(this.parseAssignableListItem(i))}return n},ze.parseAssignableListItem=function(t){var e=this.parseMaybeDefault(this.start,this.startLoc);return this.parseBindingListItem(e),e},ze.parseBindingListItem=function(t){return t},ze.parseMaybeDefault=function(t,e,r){if(r=r||this.parseBindingAtom(),this.options.ecmaVersion<6||!this.eat(ue.eq))return r;var i=this.startNodeAt(t,e);return i.left=r,i.right=this.parseMaybeAssign(),this.finishNode(i,"AssignmentPattern")},ze.checkLValSimple=function(t,e,r){void 0===e&&(e=0);var i=0!==e;switch(t.type){case"Identifier":this.strict&&this.reservedWordsStrictBind.test(t.name)&&this.raiseRecoverable(t.start,(i?"Binding ":"Assigning to ")+t.name+" in strict mode"),i&&(2===e&&"let"===t.name&&this.raiseRecoverable(t.start,"let is disallowed as a lexically bound name"),r&&(ve(r,t.name)&&this.raiseRecoverable(t.start,"Argument name clash"),r[t.name]=!0),5!==e&&this.declareName(t.name,e,t.start));break;case"ChainExpression":this.raiseRecoverable(t.start,"Optional chaining cannot appear in left-hand side");break;case"MemberExpression":i&&this.raiseRecoverable(t.start,"Binding member expression");break;case"ParenthesizedExpression":return i&&this.raiseRecoverable(t.start,"Binding parenthesized expression"),this.checkLValSimple(t.expression,e,r);default:this.raise(t.start,(i?"Binding":"Assigning to")+" rvalue")}},ze.checkLValPattern=function(t,e,r){switch(void 0===e&&(e=0),t.type){case"ObjectPattern":for(var i=0,n=t.properties;i<n.length;i+=1){var s=n[i];this.checkLValInnerPattern(s,e,r)}break;case"ArrayPattern":for(var o=0,a=t.elements;o<a.length;o+=1){var c=a[o];c&&this.checkLValInnerPattern(c,e,r)}break;default:this.checkLValSimple(t,e,r)}},ze.checkLValInnerPattern=function(t,e,r){switch(void 0===e&&(e=0),t.type){case"Property":this.checkLValInnerPattern(t.value,e,r);break;case"AssignmentPattern":this.checkLValPattern(t.left,e,r);break;case"RestElement":this.checkLValPattern(t.argument,e,r);break;default:this.checkLValPattern(t,e,r)}};var qe=function(t,e,r,i,n){this.token=t,this.isExpr=!!e,this.preserveSpace=!!r,this.override=i,this.generator=!!n},Qe={b_stat:new qe("{",!1),b_expr:new qe("{",!0),b_tmpl:new qe("${",!1),p_stat:new qe("(",!1),p_expr:new qe("(",!0),q_tmpl:new qe("`",!0,!0,(function(t){return t.tryReadTemplateToken()})),f_stat:new qe("function",!1),f_expr:new qe("function",!0),f_expr_gen:new qe("function",!0,!1,null,!0),f_gen:new qe("function",!1,!1,null,!0)},Ke=Oe.prototype;Ke.initialContext=function(){return[Qe.b_stat]},Ke.curContext=function(){return this.context[this.context.length-1]},Ke.braceIsBlock=function(t){var e=this.curContext();return e===Qe.f_expr||e===Qe.f_stat||(t!==ue.colon||e!==Qe.b_stat&&e!==Qe.b_expr?t===ue._return||t===ue.name&&this.exprAllowed?pe.test(this.input.slice(this.lastTokEnd,this.start)):t===ue._else||t===ue.semi||t===ue.eof||t===ue.parenR||t===ue.arrow||(t===ue.braceL?e===Qe.b_stat:t!==ue._var&&t!==ue._const&&t!==ue.name&&!this.exprAllowed):!e.isExpr)},Ke.inGeneratorContext=function(){for(var t=this.context.length-1;t>=1;t--){var e=this.context[t];if("function"===e.token)return e.generator}return!1},Ke.updateContext=function(t){var e,r=this.type;r.keyword&&t===ue.dot?this.exprAllowed=!1:(e=r.updateContext)?e.call(this,t):this.exprAllowed=r.beforeExpr},Ke.overrideContext=function(t){this.curContext()!==t&&(this.context[this.context.length-1]=t)},ue.parenR.updateContext=ue.braceR.updateContext=function(){if(1!==this.context.length){var t=this.context.pop();t===Qe.b_stat&&"function"===this.curContext().token&&(t=this.context.pop()),this.exprAllowed=!t.isExpr}else this.exprAllowed=!0},ue.braceL.updateContext=function(t){this.context.push(this.braceIsBlock(t)?Qe.b_stat:Qe.b_expr),this.exprAllowed=!0},ue.dollarBraceL.updateContext=function(){this.context.push(Qe.b_tmpl),this.exprAllowed=!0},ue.parenL.updateContext=function(t){var e=t===ue._if||t===ue._for||t===ue._with||t===ue._while;this.context.push(e?Qe.p_stat:Qe.p_expr),this.exprAllowed=!0},ue.incDec.updateContext=function(){},ue._function.updateContext=ue._class.updateContext=function(t){!t.beforeExpr||t===ue._else||t===ue.semi&&this.curContext()!==Qe.p_stat||t===ue._return&&pe.test(this.input.slice(this.lastTokEnd,this.start))||(t===ue.colon||t===ue.braceL)&&this.curContext()===Qe.b_stat?this.context.push(Qe.f_stat):this.context.push(Qe.f_expr),this.exprAllowed=!1},ue.backQuote.updateContext=function(){this.curContext()===Qe.q_tmpl?this.context.pop():this.context.push(Qe.q_tmpl),this.exprAllowed=!1},ue.star.updateContext=function(t){if(t===ue._function){var e=this.context.length-1;this.context[e]===Qe.f_expr?this.context[e]=Qe.f_expr_gen:this.context[e]=Qe.f_gen}this.exprAllowed=!0},ue.name.updateContext=function(t){var e=!1;this.options.ecmaVersion>=6&&t!==ue.dot&&("of"===this.value&&!this.exprAllowed||"yield"===this.value&&this.inGeneratorContext())&&(e=!0),this.exprAllowed=e};var Ye=Oe.prototype;function Je(t){return"MemberExpression"===t.type&&"PrivateIdentifier"===t.property.type||"ChainExpression"===t.type&&Je(t.expression)}Ye.checkPropClash=function(t,e,r){if(!(this.options.ecmaVersion>=9&&"SpreadElement"===t.type||this.options.ecmaVersion>=6&&(t.computed||t.method||t.shorthand))){var i,n=t.key;switch(n.type){case"Identifier":i=n.name;break;case"Literal":i=String(n.value);break;default:return}var s=t.kind;if(this.options.ecmaVersion>=6)"__proto__"===i&&"init"===s&&(e.proto&&(r?r.doubleProto<0&&(r.doubleProto=n.start):this.raiseRecoverable(n.start,"Redefinition of __proto__ property")),e.proto=!0);else{var o=e[i="$"+i];o?("init"===s?this.strict&&o.init||o.get||o.set:o.init||o[s])&&this.raiseRecoverable(n.start,"Redefinition of property"):o=e[i]={init:!1,get:!1,set:!1},o[s]=!0}}},Ye.parseExpression=function(t,e){var r=this.start,i=this.startLoc,n=this.parseMaybeAssign(t,e);if(this.type===ue.comma){var s=this.startNodeAt(r,i);for(s.expressions=[n];this.eat(ue.comma);)s.expressions.push(this.parseMaybeAssign(t,e));return this.finishNode(s,"SequenceExpression")}return n},Ye.parseMaybeAssign=function(t,e,r){if(this.isContextual("yield")){if(this.inGenerator)return this.parseYield(t);this.exprAllowed=!1}var i=!1,n=-1,s=-1,o=-1;e?(n=e.parenthesizedAssign,s=e.trailingComma,o=e.doubleProto,e.parenthesizedAssign=e.trailingComma=-1):(e=new Le,i=!0);var a=this.start,c=this.startLoc;this.type!==ue.parenL&&this.type!==ue.name||(this.potentialArrowAt=this.start,this.potentialArrowInForAwait="await"===t);var l=this.parseMaybeConditional(t,e);if(r&&(l=r.call(this,l,a,c)),this.type.isAssign){var h=this.startNodeAt(a,c);return h.operator=this.value,this.type===ue.eq&&(l=this.toAssignable(l,!1,e)),i||(e.parenthesizedAssign=e.trailingComma=e.doubleProto=-1),e.shorthandAssign>=l.start&&(e.shorthandAssign=-1),this.type===ue.eq?this.checkLValPattern(l):this.checkLValSimple(l),h.left=l,this.next(),h.right=this.parseMaybeAssign(t),o>-1&&(e.doubleProto=o),this.finishNode(h,"AssignmentExpression")}return i&&this.checkExpressionErrors(e,!0),n>-1&&(e.parenthesizedAssign=n),s>-1&&(e.trailingComma=s),l},Ye.parseMaybeConditional=function(t,e){var r=this.start,i=this.startLoc,n=this.parseExprOps(t,e);if(this.checkExpressionErrors(e))return n;if(this.eat(ue.question)){var s=this.startNodeAt(r,i);return s.test=n,s.consequent=this.parseMaybeAssign(),this.expect(ue.colon),s.alternate=this.parseMaybeAssign(t),this.finishNode(s,"ConditionalExpression")}return n},Ye.parseExprOps=function(t,e){var r=this.start,i=this.startLoc,n=this.parseMaybeUnary(e,!1,!1,t);return this.checkExpressionErrors(e)||n.start===r&&"ArrowFunctionExpression"===n.type?n:this.parseExprOp(n,r,i,-1,t)},Ye.parseExprOp=function(t,e,r,i,n){var s=this.type.binop;if(null!=s&&(!n||this.type!==ue._in)&&s>i){var o=this.type===ue.logicalOR||this.type===ue.logicalAND,a=this.type===ue.coalesce;a&&(s=ue.logicalAND.binop);var c=this.value;this.next();var l=this.start,h=this.startLoc,u=this.parseExprOp(this.parseMaybeUnary(null,!1,!1,n),l,h,s,n),p=this.buildBinary(e,r,t,u,c,o||a);return(o&&this.type===ue.coalesce||a&&(this.type===ue.logicalOR||this.type===ue.logicalAND))&&this.raiseRecoverable(this.start,"Logical expressions and coalesce expressions cannot be mixed. Wrap either by parentheses"),this.parseExprOp(p,e,r,i,n)}return t},Ye.buildBinary=function(t,e,r,i,n,s){"PrivateIdentifier"===i.type&&this.raise(i.start,"Private identifier can only be left side of binary expression");var o=this.startNodeAt(t,e);return o.left=r,o.operator=n,o.right=i,this.finishNode(o,s?"LogicalExpression":"BinaryExpression")},Ye.parseMaybeUnary=function(t,e,r,i){var n,s=this.start,o=this.startLoc;if(this.isContextual("await")&&this.canAwait)n=this.parseAwait(i),e=!0;else if(this.type.prefix){var a=this.startNode(),c=this.type===ue.incDec;a.operator=this.value,a.prefix=!0,this.next(),a.argument=this.parseMaybeUnary(null,!0,c,i),this.checkExpressionErrors(t,!0),c?this.checkLValSimple(a.argument):this.strict&&"delete"===a.operator&&"Identifier"===a.argument.type?this.raiseRecoverable(a.start,"Deleting local variable in strict mode"):"delete"===a.operator&&Je(a.argument)?this.raiseRecoverable(a.start,"Private fields can not be deleted"):e=!0,n=this.finishNode(a,c?"UpdateExpression":"UnaryExpression")}else if(e||this.type!==ue.privateId){if(n=this.parseExprSubscripts(t,i),this.checkExpressionErrors(t))return n;for(;this.type.postfix&&!this.canInsertSemicolon();){var l=this.startNodeAt(s,o);l.operator=this.value,l.prefix=!1,l.argument=n,this.checkLValSimple(n),this.next(),n=this.finishNode(l,"UpdateExpression")}}else(i||0===this.privateNameStack.length)&&this.options.checkPrivateFields&&this.unexpected(),n=this.parsePrivateIdent(),this.type!==ue._in&&this.unexpected();return r||!this.eat(ue.starstar)?n:e?void this.unexpected(this.lastTokStart):this.buildBinary(s,o,n,this.parseMaybeUnary(null,!1,!1,i),"**",!1)},Ye.parseExprSubscripts=function(t,e){var r=this.start,i=this.startLoc,n=this.parseExprAtom(t,e);if("ArrowFunctionExpression"===n.type&&")"!==this.input.slice(this.lastTokStart,this.lastTokEnd))return n;var s=this.parseSubscripts(n,r,i,!1,e);return t&&"MemberExpression"===s.type&&(t.parenthesizedAssign>=s.start&&(t.parenthesizedAssign=-1),t.parenthesizedBind>=s.start&&(t.parenthesizedBind=-1),t.trailingComma>=s.start&&(t.trailingComma=-1)),s},Ye.parseSubscripts=function(t,e,r,i,n){for(var s=this.options.ecmaVersion>=8&&"Identifier"===t.type&&"async"===t.name&&this.lastTokEnd===t.end&&!this.canInsertSemicolon()&&t.end-t.start==5&&this.potentialArrowAt===t.start,o=!1;;){var a=this.parseSubscript(t,e,r,i,s,o,n);if(a.optional&&(o=!0),a===t||"ArrowFunctionExpression"===a.type){if(o){var c=this.startNodeAt(e,r);c.expression=a,a=this.finishNode(c,"ChainExpression")}return a}t=a}},Ye.shouldParseAsyncArrow=function(){return!this.canInsertSemicolon()&&this.eat(ue.arrow)},Ye.parseSubscriptAsyncArrow=function(t,e,r,i){return this.parseArrowExpression(this.startNodeAt(t,e),r,!0,i)},Ye.parseSubscript=function(t,e,r,i,n,s,o){var a=this.options.ecmaVersion>=11,c=a&&this.eat(ue.questionDot);i&&c&&this.raise(this.lastTokStart,"Optional chaining cannot appear in the callee of new expressions");var l=this.eat(ue.bracketL);if(l||c&&this.type!==ue.parenL&&this.type!==ue.backQuote||this.eat(ue.dot)){var h=this.startNodeAt(e,r);h.object=t,l?(h.property=this.parseExpression(),this.expect(ue.bracketR)):this.type===ue.privateId&&"Super"!==t.type?h.property=this.parsePrivateIdent():h.property=this.parseIdent("never"!==this.options.allowReserved),h.computed=!!l,a&&(h.optional=c),t=this.finishNode(h,"MemberExpression")}else if(!i&&this.eat(ue.parenL)){var u=new Le,p=this.yieldPos,d=this.awaitPos,f=this.awaitIdentPos;this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0;var g=this.parseExprList(ue.parenR,this.options.ecmaVersion>=8,!1,u);if(n&&!c&&this.shouldParseAsyncArrow())return this.checkPatternErrors(u,!1),this.checkYieldAwaitInDefaultParams(),this.awaitIdentPos>0&&this.raise(this.awaitIdentPos,"Cannot use 'await' as identifier inside an async function"),this.yieldPos=p,this.awaitPos=d,this.awaitIdentPos=f,this.parseSubscriptAsyncArrow(e,r,g,o);this.checkExpressionErrors(u,!0),this.yieldPos=p||this.yieldPos,this.awaitPos=d||this.awaitPos,this.awaitIdentPos=f||this.awaitIdentPos;var y=this.startNodeAt(e,r);y.callee=t,y.arguments=g,a&&(y.optional=c),t=this.finishNode(y,"CallExpression")}else if(this.type===ue.backQuote){(c||s)&&this.raise(this.start,"Optional chaining cannot appear in the tag of tagged template expressions");var m=this.startNodeAt(e,r);m.tag=t,m.quasi=this.parseTemplate({isTagged:!0}),t=this.finishNode(m,"TaggedTemplateExpression")}return t},Ye.parseExprAtom=function(t,e,r){this.type===ue.slash&&this.readRegexp();var i,n=this.potentialArrowAt===this.start;switch(this.type){case ue._super:return this.allowSuper||this.raise(this.start,"'super' keyword outside a method"),i=this.startNode(),this.next(),this.type!==ue.parenL||this.allowDirectSuper||this.raise(i.start,"super() call outside constructor of a subclass"),this.type!==ue.dot&&this.type!==ue.bracketL&&this.type!==ue.parenL&&this.unexpected(),this.finishNode(i,"Super");case ue._this:return i=this.startNode(),this.next(),this.finishNode(i,"ThisExpression");case ue.name:var s=this.start,o=this.startLoc,a=this.containsEsc,c=this.parseIdent(!1);if(this.options.ecmaVersion>=8&&!a&&"async"===c.name&&!this.canInsertSemicolon()&&this.eat(ue._function))return this.overrideContext(Qe.f_expr),this.parseFunction(this.startNodeAt(s,o),0,!1,!0,e);if(n&&!this.canInsertSemicolon()){if(this.eat(ue.arrow))return this.parseArrowExpression(this.startNodeAt(s,o),[c],!1,e);if(this.options.ecmaVersion>=8&&"async"===c.name&&this.type===ue.name&&!a&&(!this.potentialArrowInForAwait||"of"!==this.value||this.containsEsc))return c=this.parseIdent(!1),!this.canInsertSemicolon()&&this.eat(ue.arrow)||this.unexpected(),this.parseArrowExpression(this.startNodeAt(s,o),[c],!0,e)}return c;case ue.regexp:var l=this.value;return(i=this.parseLiteral(l.value)).regex={pattern:l.pattern,flags:l.flags},i;case ue.num:case ue.string:return this.parseLiteral(this.value);case ue._null:case ue._true:case ue._false:return(i=this.startNode()).value=this.type===ue._null?null:this.type===ue._true,i.raw=this.type.keyword,this.next(),this.finishNode(i,"Literal");case ue.parenL:var h=this.start,u=this.parseParenAndDistinguishExpression(n,e);return t&&(t.parenthesizedAssign<0&&!this.isSimpleAssignTarget(u)&&(t.parenthesizedAssign=h),t.parenthesizedBind<0&&(t.parenthesizedBind=h)),u;case ue.bracketL:return i=this.startNode(),this.next(),i.elements=this.parseExprList(ue.bracketR,!0,!0,t),this.finishNode(i,"ArrayExpression");case ue.braceL:return this.overrideContext(Qe.b_expr),this.parseObj(!1,t);case ue._function:return i=this.startNode(),this.next(),this.parseFunction(i,0);case ue._class:return this.parseClass(this.startNode(),!1);case ue._new:return this.parseNew();case ue.backQuote:return this.parseTemplate();case ue._import:return this.options.ecmaVersion>=11?this.parseExprImport(r):this.unexpected();default:return this.parseExprAtomDefault()}},Ye.parseExprAtomDefault=function(){this.unexpected()},Ye.parseExprImport=function(t){var e=this.startNode();this.containsEsc&&this.raiseRecoverable(this.start,"Escape sequence in keyword import");var r=this.parseIdent(!0);return this.type!==ue.parenL||t?this.type===ue.dot?(e.meta=r,this.parseImportMeta(e)):void this.unexpected():this.parseDynamicImport(e)},Ye.parseDynamicImport=function(t){if(this.next(),t.source=this.parseMaybeAssign(),!this.eat(ue.parenR)){var e=this.start;this.eat(ue.comma)&&this.eat(ue.parenR)?this.raiseRecoverable(e,"Trailing comma is not allowed in import()"):this.unexpected(e)}return this.finishNode(t,"ImportExpression")},Ye.parseImportMeta=function(t){this.next();var e=this.containsEsc;return t.property=this.parseIdent(!0),"meta"!==t.property.name&&this.raiseRecoverable(t.property.start,"The only valid meta property for import is 'import.meta'"),e&&this.raiseRecoverable(t.start,"'import.meta' must not contain escaped characters"),"module"===this.options.sourceType||this.options.allowImportExportEverywhere||this.raiseRecoverable(t.start,"Cannot use 'import.meta' outside a module"),this.finishNode(t,"MetaProperty")},Ye.parseLiteral=function(t){var e=this.startNode();return e.value=t,e.raw=this.input.slice(this.start,this.end),110===e.raw.charCodeAt(e.raw.length-1)&&(e.bigint=e.raw.slice(0,-1).replace(/_/g,"")),this.next(),this.finishNode(e,"Literal")},Ye.parseParenExpression=function(){this.expect(ue.parenL);var t=this.parseExpression();return this.expect(ue.parenR),t},Ye.shouldParseArrow=function(t){return!this.canInsertSemicolon()},Ye.parseParenAndDistinguishExpression=function(t,e){var r,i=this.start,n=this.startLoc,s=this.options.ecmaVersion>=8;if(this.options.ecmaVersion>=6){this.next();var o,a=this.start,c=this.startLoc,l=[],h=!0,u=!1,p=new Le,d=this.yieldPos,f=this.awaitPos;for(this.yieldPos=0,this.awaitPos=0;this.type!==ue.parenR;){if(h?h=!1:this.expect(ue.comma),s&&this.afterTrailingComma(ue.parenR,!0)){u=!0;break}if(this.type===ue.ellipsis){o=this.start,l.push(this.parseParenItem(this.parseRestBinding())),this.type===ue.comma&&this.raiseRecoverable(this.start,"Comma is not permitted after the rest element");break}l.push(this.parseMaybeAssign(!1,p,this.parseParenItem))}var g=this.lastTokEnd,y=this.lastTokEndLoc;if(this.expect(ue.parenR),t&&this.shouldParseArrow(l)&&this.eat(ue.arrow))return this.checkPatternErrors(p,!1),this.checkYieldAwaitInDefaultParams(),this.yieldPos=d,this.awaitPos=f,this.parseParenArrowList(i,n,l,e);l.length&&!u||this.unexpected(this.lastTokStart),o&&this.unexpected(o),this.checkExpressionErrors(p,!0),this.yieldPos=d||this.yieldPos,this.awaitPos=f||this.awaitPos,l.length>1?((r=this.startNodeAt(a,c)).expressions=l,this.finishNodeAt(r,"SequenceExpression",g,y)):r=l[0]}else r=this.parseParenExpression();if(this.options.preserveParens){var m=this.startNodeAt(i,n);return m.expression=r,this.finishNode(m,"ParenthesizedExpression")}return r},Ye.parseParenItem=function(t){return t},Ye.parseParenArrowList=function(t,e,r,i){return this.parseArrowExpression(this.startNodeAt(t,e),r,!1,i)};var Xe=[];Ye.parseNew=function(){this.containsEsc&&this.raiseRecoverable(this.start,"Escape sequence in keyword new");var t=this.startNode(),e=this.parseIdent(!0);if(this.options.ecmaVersion>=6&&this.eat(ue.dot)){t.meta=e;var r=this.containsEsc;return t.property=this.parseIdent(!0),"target"!==t.property.name&&this.raiseRecoverable(t.property.start,"The only valid meta property for new is 'new.target'"),r&&this.raiseRecoverable(t.start,"'new.target' must not contain escaped characters"),this.allowNewDotTarget||this.raiseRecoverable(t.start,"'new.target' can only be used in functions and class static block"),this.finishNode(t,"MetaProperty")}var i=this.start,n=this.startLoc;return t.callee=this.parseSubscripts(this.parseExprAtom(null,!1,!0),i,n,!0,!1),this.eat(ue.parenL)?t.arguments=this.parseExprList(ue.parenR,this.options.ecmaVersion>=8,!1):t.arguments=Xe,this.finishNode(t,"NewExpression")},Ye.parseTemplateElement=function(t){var e=t.isTagged,r=this.startNode();return this.type===ue.invalidTemplate?(e||this.raiseRecoverable(this.start,"Bad escape sequence in untagged template literal"),r.value={raw:this.value,cooked:null}):r.value={raw:this.input.slice(this.start,this.end).replace(/\r\n?/g,"\n"),cooked:this.value},this.next(),r.tail=this.type===ue.backQuote,this.finishNode(r,"TemplateElement")},Ye.parseTemplate=function(t){void 0===t&&(t={});var e=t.isTagged;void 0===e&&(e=!1);var r=this.startNode();this.next(),r.expressions=[];var i=this.parseTemplateElement({isTagged:e});for(r.quasis=[i];!i.tail;)this.type===ue.eof&&this.raise(this.pos,"Unterminated template literal"),this.expect(ue.dollarBraceL),r.expressions.push(this.parseExpression()),this.expect(ue.braceR),r.quasis.push(i=this.parseTemplateElement({isTagged:e}));return this.next(),this.finishNode(r,"TemplateLiteral")},Ye.isAsyncProp=function(t){return!t.computed&&"Identifier"===t.key.type&&"async"===t.key.name&&(this.type===ue.name||this.type===ue.num||this.type===ue.string||this.type===ue.bracketL||this.type.keyword||this.options.ecmaVersion>=9&&this.type===ue.star)&&!pe.test(this.input.slice(this.lastTokEnd,this.start))},Ye.parseObj=function(t,e){var r=this.startNode(),i=!0,n={};for(r.properties=[],this.next();!this.eat(ue.braceR);){if(i)i=!1;else if(this.expect(ue.comma),this.options.ecmaVersion>=5&&this.afterTrailingComma(ue.braceR))break;var s=this.parseProperty(t,e);t||this.checkPropClash(s,n,e),r.properties.push(s)}return this.finishNode(r,t?"ObjectPattern":"ObjectExpression")},Ye.parseProperty=function(t,e){var r,i,n,s,o=this.startNode();if(this.options.ecmaVersion>=9&&this.eat(ue.ellipsis))return t?(o.argument=this.parseIdent(!1),this.type===ue.comma&&this.raiseRecoverable(this.start,"Comma is not permitted after the rest element"),this.finishNode(o,"RestElement")):(o.argument=this.parseMaybeAssign(!1,e),this.type===ue.comma&&e&&e.trailingComma<0&&(e.trailingComma=this.start),this.finishNode(o,"SpreadElement"));this.options.ecmaVersion>=6&&(o.method=!1,o.shorthand=!1,(t||e)&&(n=this.start,s=this.startLoc),t||(r=this.eat(ue.star)));var a=this.containsEsc;return this.parsePropertyName(o),!t&&!a&&this.options.ecmaVersion>=8&&!r&&this.isAsyncProp(o)?(i=!0,r=this.options.ecmaVersion>=9&&this.eat(ue.star),this.parsePropertyName(o)):i=!1,this.parsePropertyValue(o,t,r,i,n,s,e,a),this.finishNode(o,"Property")},Ye.parseGetterSetter=function(t){t.kind=t.key.name,this.parsePropertyName(t),t.value=this.parseMethod(!1);var e="get"===t.kind?0:1;if(t.value.params.length!==e){var r=t.value.start;"get"===t.kind?this.raiseRecoverable(r,"getter should have no params"):this.raiseRecoverable(r,"setter should have exactly one param")}else"set"===t.kind&&"RestElement"===t.value.params[0].type&&this.raiseRecoverable(t.value.params[0].start,"Setter cannot use rest params")},Ye.parsePropertyValue=function(t,e,r,i,n,s,o,a){(r||i)&&this.type===ue.colon&&this.unexpected(),this.eat(ue.colon)?(t.value=e?this.parseMaybeDefault(this.start,this.startLoc):this.parseMaybeAssign(!1,o),t.kind="init"):this.options.ecmaVersion>=6&&this.type===ue.parenL?(e&&this.unexpected(),t.kind="init",t.method=!0,t.value=this.parseMethod(r,i)):e||a||!(this.options.ecmaVersion>=5)||t.computed||"Identifier"!==t.key.type||"get"!==t.key.name&&"set"!==t.key.name||this.type===ue.comma||this.type===ue.braceR||this.type===ue.eq?this.options.ecmaVersion>=6&&!t.computed&&"Identifier"===t.key.type?((r||i)&&this.unexpected(),this.checkUnreserved(t.key),"await"!==t.key.name||this.awaitIdentPos||(this.awaitIdentPos=n),t.kind="init",e?t.value=this.parseMaybeDefault(n,s,this.copyNode(t.key)):this.type===ue.eq&&o?(o.shorthandAssign<0&&(o.shorthandAssign=this.start),t.value=this.parseMaybeDefault(n,s,this.copyNode(t.key))):t.value=this.copyNode(t.key),t.shorthand=!0):this.unexpected():((r||i)&&this.unexpected(),this.parseGetterSetter(t))},Ye.parsePropertyName=function(t){if(this.options.ecmaVersion>=6){if(this.eat(ue.bracketL))return t.computed=!0,t.key=this.parseMaybeAssign(),this.expect(ue.bracketR),t.key;t.computed=!1}return t.key=this.type===ue.num||this.type===ue.string?this.parseExprAtom():this.parseIdent("never"!==this.options.allowReserved)},Ye.initFunction=function(t){t.id=null,this.options.ecmaVersion>=6&&(t.generator=t.expression=!1),this.options.ecmaVersion>=8&&(t.async=!1)},Ye.parseMethod=function(t,e,r){var i=this.startNode(),n=this.yieldPos,s=this.awaitPos,o=this.awaitIdentPos;return this.initFunction(i),this.options.ecmaVersion>=6&&(i.generator=t),this.options.ecmaVersion>=8&&(i.async=!!e),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,this.enterScope(64|Ne(e,i.generator)|(r?128:0)),this.expect(ue.parenL),i.params=this.parseBindingList(ue.parenR,!1,this.options.ecmaVersion>=8),this.checkYieldAwaitInDefaultParams(),this.parseFunctionBody(i,!1,!0,!1),this.yieldPos=n,this.awaitPos=s,this.awaitIdentPos=o,this.finishNode(i,"FunctionExpression")},Ye.parseArrowExpression=function(t,e,r,i){var n=this.yieldPos,s=this.awaitPos,o=this.awaitIdentPos;return this.enterScope(16|Ne(r,!1)),this.initFunction(t),this.options.ecmaVersion>=8&&(t.async=!!r),this.yieldPos=0,this.awaitPos=0,this.awaitIdentPos=0,t.params=this.toAssignableList(e,!0),this.parseFunctionBody(t,!0,!1,i),this.yieldPos=n,this.awaitPos=s,this.awaitIdentPos=o,this.finishNode(t,"ArrowFunctionExpression")},Ye.parseFunctionBody=function(t,e,r,i){var n=e&&this.type!==ue.braceL,s=this.strict,o=!1;if(n)t.body=this.parseMaybeAssign(i),t.expression=!0,this.checkParams(t,!1);else{var a=this.options.ecmaVersion>=7&&!this.isSimpleParamList(t.params);s&&!a||(o=this.strictDirective(this.end))&&a&&this.raiseRecoverable(t.start,"Illegal 'use strict' directive in function with non-simple parameter list");var c=this.labels;this.labels=[],o&&(this.strict=!0),this.checkParams(t,!s&&!o&&!e&&!r&&this.isSimpleParamList(t.params)),this.strict&&t.id&&this.checkLValSimple(t.id,5),t.body=this.parseBlock(!1,void 0,o&&!s),t.expression=!1,this.adaptDirectivePrologue(t.body.body),this.labels=c}this.exitScope()},Ye.isSimpleParamList=function(t){for(var e=0,r=t;e<r.length;e+=1)if("Identifier"!==r[e].type)return!1;return!0},Ye.checkParams=function(t,e){for(var r=Object.create(null),i=0,n=t.params;i<n.length;i+=1){var s=n[i];this.checkLValInnerPattern(s,1,e?null:r)}},Ye.parseExprList=function(t,e,r,i){for(var n=[],s=!0;!this.eat(t);){if(s)s=!1;else if(this.expect(ue.comma),e&&this.afterTrailingComma(t))break;var o=void 0;r&&this.type===ue.comma?o=null:this.type===ue.ellipsis?(o=this.parseSpread(i),i&&this.type===ue.comma&&i.trailingComma<0&&(i.trailingComma=this.start)):o=this.parseMaybeAssign(!1,i),n.push(o)}return n},Ye.checkUnreserved=function(t){var e=t.start,r=t.end,i=t.name;this.inGenerator&&"yield"===i&&this.raiseRecoverable(e,"Cannot use 'yield' as identifier inside a generator"),this.inAsync&&"await"===i&&this.raiseRecoverable(e,"Cannot use 'await' as identifier inside an async function"),this.currentThisScope().inClassFieldInit&&"arguments"===i&&this.raiseRecoverable(e,"Cannot use 'arguments' in class field initializer"),!this.inClassStaticBlock||"arguments"!==i&&"await"!==i||this.raise(e,"Cannot use "+i+" in class static initialization block"),this.keywords.test(i)&&this.raise(e,"Unexpected keyword '"+i+"'"),this.options.ecmaVersion<6&&-1!==this.input.slice(e,r).indexOf("\\")||(this.strict?this.reservedWordsStrict:this.reservedWords).test(i)&&(this.inAsync||"await"!==i||this.raiseRecoverable(e,"Cannot use keyword 'await' outside an async function"),this.raiseRecoverable(e,"The keyword '"+i+"' is reserved"))},Ye.parseIdent=function(t){var e=this.parseIdentNode();return this.next(!!t),this.finishNode(e,"Identifier"),t||(this.checkUnreserved(e),"await"!==e.name||this.awaitIdentPos||(this.awaitIdentPos=e.start)),e},Ye.parseIdentNode=function(){var t=this.startNode();return this.type===ue.name?t.name=this.value:this.type.keyword?(t.name=this.type.keyword,"class"!==t.name&&"function"!==t.name||this.lastTokEnd===this.lastTokStart+1&&46===this.input.charCodeAt(this.lastTokStart)||this.context.pop()):this.unexpected(),t},Ye.parsePrivateIdent=function(){var t=this.startNode();return this.type===ue.privateId?t.name=this.value:this.unexpected(),this.next(),this.finishNode(t,"PrivateIdentifier"),this.options.checkPrivateFields&&(0===this.privateNameStack.length?this.raise(t.start,"Private field '#"+t.name+"' must be declared in an enclosing class"):this.privateNameStack[this.privateNameStack.length-1].used.push(t)),t},Ye.parseYield=function(t){this.yieldPos||(this.yieldPos=this.start);var e=this.startNode();return this.next(),this.type===ue.semi||this.canInsertSemicolon()||this.type!==ue.star&&!this.type.startsExpr?(e.delegate=!1,e.argument=null):(e.delegate=this.eat(ue.star),e.argument=this.parseMaybeAssign(t)),this.finishNode(e,"YieldExpression")},Ye.parseAwait=function(t){this.awaitPos||(this.awaitPos=this.start);var e=this.startNode();return this.next(),e.argument=this.parseMaybeUnary(null,!0,!1,t),this.finishNode(e,"AwaitExpression")};var Ze=Oe.prototype;Ze.raise=function(t,e){var r=Ie(this.input,t);e+=" ("+r.line+":"+r.column+")";var i=new SyntaxError(e);throw i.pos=t,i.loc=r,i.raisedAt=this.pos,i},Ze.raiseRecoverable=Ze.raise,Ze.curPosition=function(){if(this.options.locations)return new xe(this.curLine,this.pos-this.lineStart)};var $e=Oe.prototype,tr=function(t){this.flags=t,this.var=[],this.lexical=[],this.functions=[],this.inClassFieldInit=!1};$e.enterScope=function(t){this.scopeStack.push(new tr(t))},$e.exitScope=function(){this.scopeStack.pop()},$e.treatFunctionsAsVarInScope=function(t){return 2&t.flags||!this.inModule&&1&t.flags},$e.declareName=function(t,e,r){var i=!1;if(2===e){var n=this.currentScope();i=n.lexical.indexOf(t)>-1||n.functions.indexOf(t)>-1||n.var.indexOf(t)>-1,n.lexical.push(t),this.inModule&&1&n.flags&&delete this.undefinedExports[t]}else if(4===e)this.currentScope().lexical.push(t);else if(3===e){var s=this.currentScope();i=this.treatFunctionsAsVar?s.lexical.indexOf(t)>-1:s.lexical.indexOf(t)>-1||s.var.indexOf(t)>-1,s.functions.push(t)}else for(var o=this.scopeStack.length-1;o>=0;--o){var a=this.scopeStack[o];if(a.lexical.indexOf(t)>-1&&!(32&a.flags&&a.lexical[0]===t)||!this.treatFunctionsAsVarInScope(a)&&a.functions.indexOf(t)>-1){i=!0;break}if(a.var.push(t),this.inModule&&1&a.flags&&delete this.undefinedExports[t],259&a.flags)break}i&&this.raiseRecoverable(r,"Identifier '"+t+"' has already been declared")},$e.checkLocalExport=function(t){-1===this.scopeStack[0].lexical.indexOf(t.name)&&-1===this.scopeStack[0].var.indexOf(t.name)&&(this.undefinedExports[t.name]=t)},$e.currentScope=function(){return this.scopeStack[this.scopeStack.length-1]},$e.currentVarScope=function(){for(var t=this.scopeStack.length-1;;t--){var e=this.scopeStack[t];if(259&e.flags)return e}},$e.currentThisScope=function(){for(var t=this.scopeStack.length-1;;t--){var e=this.scopeStack[t];if(259&e.flags&&!(16&e.flags))return e}};var er=function(t,e,r){this.type="",this.start=e,this.end=0,t.options.locations&&(this.loc=new Ce(t,r)),t.options.directSourceFile&&(this.sourceFile=t.options.directSourceFile),t.options.ranges&&(this.range=[e,0])},rr=Oe.prototype;function ir(t,e,r,i){return t.type=e,t.end=r,this.options.locations&&(t.loc.end=i),this.options.ranges&&(t.range[1]=r),t}rr.startNode=function(){return new er(this,this.start,this.startLoc)},rr.startNodeAt=function(t,e){return new er(this,t,e)},rr.finishNode=function(t,e){return ir.call(this,t,e,this.lastTokEnd,this.lastTokEndLoc)},rr.finishNodeAt=function(t,e,r,i){return ir.call(this,t,e,r,i)},rr.copyNode=function(t){var e=new er(this,t.start,this.startLoc);for(var r in t)e[r]=t[r];return e};var nr="ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS",sr=nr+" Extended_Pictographic",or=sr+" EBase EComp EMod EPres ExtPict",ar={9:nr,10:sr,11:sr,12:or,13:or,14:"ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS Extended_Pictographic EBase EComp EMod EPres ExtPict"},cr={9:"",10:"",11:"",12:"",13:"",14:"Basic_Emoji Emoji_Keycap_Sequence RGI_Emoji_Modifier_Sequence RGI_Emoji_Flag_Sequence RGI_Emoji_Tag_Sequence RGI_Emoji_ZWJ_Sequence RGI_Emoji"},lr="Cased_Letter LC Close_Punctuation Pe Connector_Punctuation Pc Control Cc cntrl Currency_Symbol Sc Dash_Punctuation Pd Decimal_Number Nd digit Enclosing_Mark Me Final_Punctuation Pf Format Cf Initial_Punctuation Pi Letter L Letter_Number Nl Line_Separator Zl Lowercase_Letter Ll Mark M Combining_Mark Math_Symbol Sm Modifier_Letter Lm Modifier_Symbol Sk Nonspacing_Mark Mn Number N Open_Punctuation Ps Other C Other_Letter Lo Other_Number No Other_Punctuation Po Other_Symbol So Paragraph_Separator Zp Private_Use Co Punctuation P punct Separator Z Space_Separator Zs Spacing_Mark Mc Surrogate Cs Symbol S Titlecase_Letter Lt Unassigned Cn Uppercase_Letter Lu",hr="Adlam Adlm Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb",ur=hr+" Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd",pr=ur+" Elymaic Elym Nandinagari Nand Nyiakeng_Puachue_Hmong Hmnp Wancho Wcho",dr=pr+" Chorasmian Chrs Diak Dives_Akuru Khitan_Small_Script Kits Yezi Yezidi",fr={9:hr,10:ur,11:pr,12:dr,13:dr+" Cypro_Minoan Cpmn Old_Uyghur Ougr Tangsa Tnsa Toto Vithkuqi Vith",14:"Adlam Adlm Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd Elymaic Elym Nandinagari Nand Nyiakeng_Puachue_Hmong Hmnp Wancho Wcho Chorasmian Chrs Diak Dives_Akuru Khitan_Small_Script Kits Yezi Yezidi Cypro_Minoan Cpmn Old_Uyghur Ougr Tangsa Tnsa Toto Vithkuqi Vith Hrkt Katakana_Or_Hiragana Kawi Nag_Mundari Nagm Unknown Zzzz"},gr={};function yr(t){var e=gr[t]={binary:Ee(ar[t]+" "+lr),binaryOfStrings:Ee(cr[t]),nonBinary:{General_Category:Ee(lr),Script:Ee(fr[t])}};e.nonBinary.Script_Extensions=e.nonBinary.Script,e.nonBinary.gc=e.nonBinary.General_Category,e.nonBinary.sc=e.nonBinary.Script,e.nonBinary.scx=e.nonBinary.Script_Extensions}for(var mr=0,wr=[9,10,11,12,13,14];mr<wr.length;mr+=1)yr(wr[mr]);var br=Oe.prototype,Ar=function(t){this.parser=t,this.validFlags="gim"+(t.options.ecmaVersion>=6?"uy":"")+(t.options.ecmaVersion>=9?"s":"")+(t.options.ecmaVersion>=13?"d":"")+(t.options.ecmaVersion>=15?"v":""),this.unicodeProperties=gr[t.options.ecmaVersion>=14?14:t.options.ecmaVersion],this.source="",this.flags="",this.start=0,this.switchU=!1,this.switchV=!1,this.switchN=!1,this.pos=0,this.lastIntValue=0,this.lastStringValue="",this.lastAssertionIsQuantifiable=!1,this.numCapturingParens=0,this.maxBackReference=0,this.groupNames=[],this.backReferenceNames=[]};function vr(t){return 36===t||t>=40&&t<=43||46===t||63===t||t>=91&&t<=94||t>=123&&t<=125}function _r(t){return t>=65&&t<=90||t>=97&&t<=122}function Er(t){return _r(t)||95===t}function Sr(t){return Er(t)||Tr(t)}function Tr(t){return t>=48&&t<=57}function xr(t){return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}function Cr(t){return t>=65&&t<=70?t-65+10:t>=97&&t<=102?t-97+10:t-48}function Ir(t){return t>=48&&t<=55}Ar.prototype.reset=function(t,e,r){var i=-1!==r.indexOf("v"),n=-1!==r.indexOf("u");this.start=0|t,this.source=e+"",this.flags=r,i&&this.parser.options.ecmaVersion>=15?(this.switchU=!0,this.switchV=!0,this.switchN=!0):(this.switchU=n&&this.parser.options.ecmaVersion>=6,this.switchV=!1,this.switchN=n&&this.parser.options.ecmaVersion>=9)},Ar.prototype.raise=function(t){this.parser.raiseRecoverable(this.start,"Invalid regular expression: /"+this.source+"/: "+t)},Ar.prototype.at=function(t,e){void 0===e&&(e=!1);var r=this.source,i=r.length;if(t>=i)return-1;var n=r.charCodeAt(t);if(!e&&!this.switchU||n<=55295||n>=57344||t+1>=i)return n;var s=r.charCodeAt(t+1);return s>=56320&&s<=57343?(n<<10)+s-56613888:n},Ar.prototype.nextIndex=function(t,e){void 0===e&&(e=!1);var r=this.source,i=r.length;if(t>=i)return i;var n,s=r.charCodeAt(t);return!e&&!this.switchU||s<=55295||s>=57344||t+1>=i||(n=r.charCodeAt(t+1))<56320||n>57343?t+1:t+2},Ar.prototype.current=function(t){return void 0===t&&(t=!1),this.at(this.pos,t)},Ar.prototype.lookahead=function(t){return void 0===t&&(t=!1),this.at(this.nextIndex(this.pos,t),t)},Ar.prototype.advance=function(t){void 0===t&&(t=!1),this.pos=this.nextIndex(this.pos,t)},Ar.prototype.eat=function(t,e){return void 0===e&&(e=!1),this.current(e)===t&&(this.advance(e),!0)},Ar.prototype.eatChars=function(t,e){void 0===e&&(e=!1);for(var r=this.pos,i=0,n=t;i<n.length;i+=1){var s=n[i],o=this.at(r,e);if(-1===o||o!==s)return!1;r=this.nextIndex(r,e)}return this.pos=r,!0},br.validateRegExpFlags=function(t){for(var e=t.validFlags,r=t.flags,i=!1,n=!1,s=0;s<r.length;s++){var o=r.charAt(s);-1===e.indexOf(o)&&this.raise(t.start,"Invalid regular expression flag"),r.indexOf(o,s+1)>-1&&this.raise(t.start,"Duplicate regular expression flag"),"u"===o&&(i=!0),"v"===o&&(n=!0)}this.options.ecmaVersion>=15&&i&&n&&this.raise(t.start,"Invalid regular expression flag")},br.validateRegExpPattern=function(t){this.regexp_pattern(t),!t.switchN&&this.options.ecmaVersion>=9&&t.groupNames.length>0&&(t.switchN=!0,this.regexp_pattern(t))},br.regexp_pattern=function(t){t.pos=0,t.lastIntValue=0,t.lastStringValue="",t.lastAssertionIsQuantifiable=!1,t.numCapturingParens=0,t.maxBackReference=0,t.groupNames.length=0,t.backReferenceNames.length=0,this.regexp_disjunction(t),t.pos!==t.source.length&&(t.eat(41)&&t.raise("Unmatched ')'"),(t.eat(93)||t.eat(125))&&t.raise("Lone quantifier brackets")),t.maxBackReference>t.numCapturingParens&&t.raise("Invalid escape");for(var e=0,r=t.backReferenceNames;e<r.length;e+=1){var i=r[e];-1===t.groupNames.indexOf(i)&&t.raise("Invalid named capture referenced")}},br.regexp_disjunction=function(t){for(this.regexp_alternative(t);t.eat(124);)this.regexp_alternative(t);this.regexp_eatQuantifier(t,!0)&&t.raise("Nothing to repeat"),t.eat(123)&&t.raise("Lone quantifier brackets")},br.regexp_alternative=function(t){for(;t.pos<t.source.length&&this.regexp_eatTerm(t););},br.regexp_eatTerm=function(t){return this.regexp_eatAssertion(t)?(t.lastAssertionIsQuantifiable&&this.regexp_eatQuantifier(t)&&t.switchU&&t.raise("Invalid quantifier"),!0):!!(t.switchU?this.regexp_eatAtom(t):this.regexp_eatExtendedAtom(t))&&(this.regexp_eatQuantifier(t),!0)},br.regexp_eatAssertion=function(t){var e=t.pos;if(t.lastAssertionIsQuantifiable=!1,t.eat(94)||t.eat(36))return!0;if(t.eat(92)){if(t.eat(66)||t.eat(98))return!0;t.pos=e}if(t.eat(40)&&t.eat(63)){var r=!1;if(this.options.ecmaVersion>=9&&(r=t.eat(60)),t.eat(61)||t.eat(33))return this.regexp_disjunction(t),t.eat(41)||t.raise("Unterminated group"),t.lastAssertionIsQuantifiable=!r,!0}return t.pos=e,!1},br.regexp_eatQuantifier=function(t,e){return void 0===e&&(e=!1),!!this.regexp_eatQuantifierPrefix(t,e)&&(t.eat(63),!0)},br.regexp_eatQuantifierPrefix=function(t,e){return t.eat(42)||t.eat(43)||t.eat(63)||this.regexp_eatBracedQuantifier(t,e)},br.regexp_eatBracedQuantifier=function(t,e){var r=t.pos;if(t.eat(123)){var i=0,n=-1;if(this.regexp_eatDecimalDigits(t)&&(i=t.lastIntValue,t.eat(44)&&this.regexp_eatDecimalDigits(t)&&(n=t.lastIntValue),t.eat(125)))return-1!==n&&n<i&&!e&&t.raise("numbers out of order in {} quantifier"),!0;t.switchU&&!e&&t.raise("Incomplete quantifier"),t.pos=r}return!1},br.regexp_eatAtom=function(t){return this.regexp_eatPatternCharacters(t)||t.eat(46)||this.regexp_eatReverseSolidusAtomEscape(t)||this.regexp_eatCharacterClass(t)||this.regexp_eatUncapturingGroup(t)||this.regexp_eatCapturingGroup(t)},br.regexp_eatReverseSolidusAtomEscape=function(t){var e=t.pos;if(t.eat(92)){if(this.regexp_eatAtomEscape(t))return!0;t.pos=e}return!1},br.regexp_eatUncapturingGroup=function(t){var e=t.pos;if(t.eat(40)){if(t.eat(63)&&t.eat(58)){if(this.regexp_disjunction(t),t.eat(41))return!0;t.raise("Unterminated group")}t.pos=e}return!1},br.regexp_eatCapturingGroup=function(t){if(t.eat(40)){if(this.options.ecmaVersion>=9?this.regexp_groupSpecifier(t):63===t.current()&&t.raise("Invalid group"),this.regexp_disjunction(t),t.eat(41))return t.numCapturingParens+=1,!0;t.raise("Unterminated group")}return!1},br.regexp_eatExtendedAtom=function(t){return t.eat(46)||this.regexp_eatReverseSolidusAtomEscape(t)||this.regexp_eatCharacterClass(t)||this.regexp_eatUncapturingGroup(t)||this.regexp_eatCapturingGroup(t)||this.regexp_eatInvalidBracedQuantifier(t)||this.regexp_eatExtendedPatternCharacter(t)},br.regexp_eatInvalidBracedQuantifier=function(t){return this.regexp_eatBracedQuantifier(t,!0)&&t.raise("Nothing to repeat"),!1},br.regexp_eatSyntaxCharacter=function(t){var e=t.current();return!!vr(e)&&(t.lastIntValue=e,t.advance(),!0)},br.regexp_eatPatternCharacters=function(t){for(var e=t.pos,r=0;-1!==(r=t.current())&&!vr(r);)t.advance();return t.pos!==e},br.regexp_eatExtendedPatternCharacter=function(t){var e=t.current();return!(-1===e||36===e||e>=40&&e<=43||46===e||63===e||91===e||94===e||124===e||(t.advance(),0))},br.regexp_groupSpecifier=function(t){if(t.eat(63)){if(this.regexp_eatGroupName(t))return-1!==t.groupNames.indexOf(t.lastStringValue)&&t.raise("Duplicate capture group name"),void t.groupNames.push(t.lastStringValue);t.raise("Invalid group")}},br.regexp_eatGroupName=function(t){if(t.lastStringValue="",t.eat(60)){if(this.regexp_eatRegExpIdentifierName(t)&&t.eat(62))return!0;t.raise("Invalid capture group name")}return!1},br.regexp_eatRegExpIdentifierName=function(t){if(t.lastStringValue="",this.regexp_eatRegExpIdentifierStart(t)){for(t.lastStringValue+=Se(t.lastIntValue);this.regexp_eatRegExpIdentifierPart(t);)t.lastStringValue+=Se(t.lastIntValue);return!0}return!1},br.regexp_eatRegExpIdentifierStart=function(t){var e=t.pos,r=this.options.ecmaVersion>=11,i=t.current(r);return t.advance(r),92===i&&this.regexp_eatRegExpUnicodeEscapeSequence(t,r)&&(i=t.lastIntValue),function(t){return ie(t,!0)||36===t||95===t}(i)?(t.lastIntValue=i,!0):(t.pos=e,!1)},br.regexp_eatRegExpIdentifierPart=function(t){var e=t.pos,r=this.options.ecmaVersion>=11,i=t.current(r);return t.advance(r),92===i&&this.regexp_eatRegExpUnicodeEscapeSequence(t,r)&&(i=t.lastIntValue),function(t){return ne(t,!0)||36===t||95===t||8204===t||8205===t}(i)?(t.lastIntValue=i,!0):(t.pos=e,!1)},br.regexp_eatAtomEscape=function(t){return!!(this.regexp_eatBackReference(t)||this.regexp_eatCharacterClassEscape(t)||this.regexp_eatCharacterEscape(t)||t.switchN&&this.regexp_eatKGroupName(t))||(t.switchU&&(99===t.current()&&t.raise("Invalid unicode escape"),t.raise("Invalid escape")),!1)},br.regexp_eatBackReference=function(t){var e=t.pos;if(this.regexp_eatDecimalEscape(t)){var r=t.lastIntValue;if(t.switchU)return r>t.maxBackReference&&(t.maxBackReference=r),!0;if(r<=t.numCapturingParens)return!0;t.pos=e}return!1},br.regexp_eatKGroupName=function(t){if(t.eat(107)){if(this.regexp_eatGroupName(t))return t.backReferenceNames.push(t.lastStringValue),!0;t.raise("Invalid named reference")}return!1},br.regexp_eatCharacterEscape=function(t){return this.regexp_eatControlEscape(t)||this.regexp_eatCControlLetter(t)||this.regexp_eatZero(t)||this.regexp_eatHexEscapeSequence(t)||this.regexp_eatRegExpUnicodeEscapeSequence(t,!1)||!t.switchU&&this.regexp_eatLegacyOctalEscapeSequence(t)||this.regexp_eatIdentityEscape(t)},br.regexp_eatCControlLetter=function(t){var e=t.pos;if(t.eat(99)){if(this.regexp_eatControlLetter(t))return!0;t.pos=e}return!1},br.regexp_eatZero=function(t){return 48===t.current()&&!Tr(t.lookahead())&&(t.lastIntValue=0,t.advance(),!0)},br.regexp_eatControlEscape=function(t){var e=t.current();return 116===e?(t.lastIntValue=9,t.advance(),!0):110===e?(t.lastIntValue=10,t.advance(),!0):118===e?(t.lastIntValue=11,t.advance(),!0):102===e?(t.lastIntValue=12,t.advance(),!0):114===e&&(t.lastIntValue=13,t.advance(),!0)},br.regexp_eatControlLetter=function(t){var e=t.current();return!!_r(e)&&(t.lastIntValue=e%32,t.advance(),!0)},br.regexp_eatRegExpUnicodeEscapeSequence=function(t,e){void 0===e&&(e=!1);var r,i=t.pos,n=e||t.switchU;if(t.eat(117)){if(this.regexp_eatFixedHexDigits(t,4)){var s=t.lastIntValue;if(n&&s>=55296&&s<=56319){var o=t.pos;if(t.eat(92)&&t.eat(117)&&this.regexp_eatFixedHexDigits(t,4)){var a=t.lastIntValue;if(a>=56320&&a<=57343)return t.lastIntValue=1024*(s-55296)+(a-56320)+65536,!0}t.pos=o,t.lastIntValue=s}return!0}if(n&&t.eat(123)&&this.regexp_eatHexDigits(t)&&t.eat(125)&&(r=t.lastIntValue)>=0&&r<=1114111)return!0;n&&t.raise("Invalid unicode escape"),t.pos=i}return!1},br.regexp_eatIdentityEscape=function(t){if(t.switchU)return!!this.regexp_eatSyntaxCharacter(t)||!!t.eat(47)&&(t.lastIntValue=47,!0);var e=t.current();return!(99===e||t.switchN&&107===e||(t.lastIntValue=e,t.advance(),0))},br.regexp_eatDecimalEscape=function(t){t.lastIntValue=0;var e=t.current();if(e>=49&&e<=57){do{t.lastIntValue=10*t.lastIntValue+(e-48),t.advance()}while((e=t.current())>=48&&e<=57);return!0}return!1},br.regexp_eatCharacterClassEscape=function(t){var e=t.current();if(function(t){return 100===t||68===t||115===t||83===t||119===t||87===t}(e))return t.lastIntValue=-1,t.advance(),1;var r=!1;if(t.switchU&&this.options.ecmaVersion>=9&&((r=80===e)||112===e)){var i;if(t.lastIntValue=-1,t.advance(),t.eat(123)&&(i=this.regexp_eatUnicodePropertyValueExpression(t))&&t.eat(125))return r&&2===i&&t.raise("Invalid property name"),i;t.raise("Invalid property name")}return 0},br.regexp_eatUnicodePropertyValueExpression=function(t){var e=t.pos;if(this.regexp_eatUnicodePropertyName(t)&&t.eat(61)){var r=t.lastStringValue;if(this.regexp_eatUnicodePropertyValue(t)){var i=t.lastStringValue;return this.regexp_validateUnicodePropertyNameAndValue(t,r,i),1}}if(t.pos=e,this.regexp_eatLoneUnicodePropertyNameOrValue(t)){var n=t.lastStringValue;return this.regexp_validateUnicodePropertyNameOrValue(t,n)}return 0},br.regexp_validateUnicodePropertyNameAndValue=function(t,e,r){ve(t.unicodeProperties.nonBinary,e)||t.raise("Invalid property name"),t.unicodeProperties.nonBinary[e].test(r)||t.raise("Invalid property value")},br.regexp_validateUnicodePropertyNameOrValue=function(t,e){return t.unicodeProperties.binary.test(e)?1:t.switchV&&t.unicodeProperties.binaryOfStrings.test(e)?2:void t.raise("Invalid property name")},br.regexp_eatUnicodePropertyName=function(t){var e=0;for(t.lastStringValue="";Er(e=t.current());)t.lastStringValue+=Se(e),t.advance();return""!==t.lastStringValue},br.regexp_eatUnicodePropertyValue=function(t){var e=0;for(t.lastStringValue="";Sr(e=t.current());)t.lastStringValue+=Se(e),t.advance();return""!==t.lastStringValue},br.regexp_eatLoneUnicodePropertyNameOrValue=function(t){return this.regexp_eatUnicodePropertyValue(t)},br.regexp_eatCharacterClass=function(t){if(t.eat(91)){var e=t.eat(94),r=this.regexp_classContents(t);return t.eat(93)||t.raise("Unterminated character class"),e&&2===r&&t.raise("Negated character class may contain strings"),!0}return!1},br.regexp_classContents=function(t){return 93===t.current()?1:t.switchV?this.regexp_classSetExpression(t):(this.regexp_nonEmptyClassRanges(t),1)},br.regexp_nonEmptyClassRanges=function(t){for(;this.regexp_eatClassAtom(t);){var e=t.lastIntValue;if(t.eat(45)&&this.regexp_eatClassAtom(t)){var r=t.lastIntValue;!t.switchU||-1!==e&&-1!==r||t.raise("Invalid character class"),-1!==e&&-1!==r&&e>r&&t.raise("Range out of order in character class")}}},br.regexp_eatClassAtom=function(t){var e=t.pos;if(t.eat(92)){if(this.regexp_eatClassEscape(t))return!0;if(t.switchU){var r=t.current();(99===r||Ir(r))&&t.raise("Invalid class escape"),t.raise("Invalid escape")}t.pos=e}var i=t.current();return 93!==i&&(t.lastIntValue=i,t.advance(),!0)},br.regexp_eatClassEscape=function(t){var e=t.pos;if(t.eat(98))return t.lastIntValue=8,!0;if(t.switchU&&t.eat(45))return t.lastIntValue=45,!0;if(!t.switchU&&t.eat(99)){if(this.regexp_eatClassControlLetter(t))return!0;t.pos=e}return this.regexp_eatCharacterClassEscape(t)||this.regexp_eatCharacterEscape(t)},br.regexp_classSetExpression=function(t){var e,r=1;if(this.regexp_eatClassSetRange(t));else if(e=this.regexp_eatClassSetOperand(t)){2===e&&(r=2);for(var i=t.pos;t.eatChars([38,38]);)38!==t.current()&&(e=this.regexp_eatClassSetOperand(t))?2!==e&&(r=1):t.raise("Invalid character in character class");if(i!==t.pos)return r;for(;t.eatChars([45,45]);)this.regexp_eatClassSetOperand(t)||t.raise("Invalid character in character class");if(i!==t.pos)return r}else t.raise("Invalid character in character class");for(;;)if(!this.regexp_eatClassSetRange(t)){if(!(e=this.regexp_eatClassSetOperand(t)))return r;2===e&&(r=2)}},br.regexp_eatClassSetRange=function(t){var e=t.pos;if(this.regexp_eatClassSetCharacter(t)){var r=t.lastIntValue;if(t.eat(45)&&this.regexp_eatClassSetCharacter(t)){var i=t.lastIntValue;return-1!==r&&-1!==i&&r>i&&t.raise("Range out of order in character class"),!0}t.pos=e}return!1},br.regexp_eatClassSetOperand=function(t){return this.regexp_eatClassSetCharacter(t)?1:this.regexp_eatClassStringDisjunction(t)||this.regexp_eatNestedClass(t)},br.regexp_eatNestedClass=function(t){var e=t.pos;if(t.eat(91)){var r=t.eat(94),i=this.regexp_classContents(t);if(t.eat(93))return r&&2===i&&t.raise("Negated character class may contain strings"),i;t.pos=e}if(t.eat(92)){var n=this.regexp_eatCharacterClassEscape(t);if(n)return n;t.pos=e}return null},br.regexp_eatClassStringDisjunction=function(t){var e=t.pos;if(t.eatChars([92,113])){if(t.eat(123)){var r=this.regexp_classStringDisjunctionContents(t);if(t.eat(125))return r}else t.raise("Invalid escape");t.pos=e}return null},br.regexp_classStringDisjunctionContents=function(t){for(var e=this.regexp_classString(t);t.eat(124);)2===this.regexp_classString(t)&&(e=2);return e},br.regexp_classString=function(t){for(var e=0;this.regexp_eatClassSetCharacter(t);)e++;return 1===e?1:2},br.regexp_eatClassSetCharacter=function(t){var e=t.pos;if(t.eat(92))return!(!this.regexp_eatCharacterEscape(t)&&!this.regexp_eatClassSetReservedPunctuator(t)&&(t.eat(98)?(t.lastIntValue=8,0):(t.pos=e,1)));var r=t.current();return!(r<0||r===t.lookahead()&&function(t){return 33===t||t>=35&&t<=38||t>=42&&t<=44||46===t||t>=58&&t<=64||94===t||96===t||126===t}(r)||function(t){return 40===t||41===t||45===t||47===t||t>=91&&t<=93||t>=123&&t<=125}(r)||(t.advance(),t.lastIntValue=r,0))},br.regexp_eatClassSetReservedPunctuator=function(t){var e=t.current();return!!function(t){return 33===t||35===t||37===t||38===t||44===t||45===t||t>=58&&t<=62||64===t||96===t||126===t}(e)&&(t.lastIntValue=e,t.advance(),!0)},br.regexp_eatClassControlLetter=function(t){var e=t.current();return!(!Tr(e)&&95!==e||(t.lastIntValue=e%32,t.advance(),0))},br.regexp_eatHexEscapeSequence=function(t){var e=t.pos;if(t.eat(120)){if(this.regexp_eatFixedHexDigits(t,2))return!0;t.switchU&&t.raise("Invalid escape"),t.pos=e}return!1},br.regexp_eatDecimalDigits=function(t){var e=t.pos,r=0;for(t.lastIntValue=0;Tr(r=t.current());)t.lastIntValue=10*t.lastIntValue+(r-48),t.advance();return t.pos!==e},br.regexp_eatHexDigits=function(t){var e=t.pos,r=0;for(t.lastIntValue=0;xr(r=t.current());)t.lastIntValue=16*t.lastIntValue+Cr(r),t.advance();return t.pos!==e},br.regexp_eatLegacyOctalEscapeSequence=function(t){if(this.regexp_eatOctalDigit(t)){var e=t.lastIntValue;if(this.regexp_eatOctalDigit(t)){var r=t.lastIntValue;e<=3&&this.regexp_eatOctalDigit(t)?t.lastIntValue=64*e+8*r+t.lastIntValue:t.lastIntValue=8*e+r}else t.lastIntValue=e;return!0}return!1},br.regexp_eatOctalDigit=function(t){var e=t.current();return Ir(e)?(t.lastIntValue=e-48,t.advance(),!0):(t.lastIntValue=0,!1)},br.regexp_eatFixedHexDigits=function(t,e){var r=t.pos;t.lastIntValue=0;for(var i=0;i<e;++i){var n=t.current();if(!xr(n))return t.pos=r,!1;t.lastIntValue=16*t.lastIntValue+Cr(n),t.advance()}return!0};var Rr=function(t){this.type=t.type,this.value=t.value,this.start=t.start,this.end=t.end,t.options.locations&&(this.loc=new Ce(t,t.startLoc,t.endLoc)),t.options.ranges&&(this.range=[t.start,t.end])},kr=Oe.prototype;function Nr(t){return"function"!=typeof BigInt?null:BigInt(t.replace(/_/g,""))}kr.next=function(t){!t&&this.type.keyword&&this.containsEsc&&this.raiseRecoverable(this.start,"Escape sequence in keyword "+this.type.keyword),this.options.onToken&&this.options.onToken(new Rr(this)),this.lastTokEnd=this.end,this.lastTokStart=this.start,this.lastTokEndLoc=this.endLoc,this.lastTokStartLoc=this.startLoc,this.nextToken()},kr.getToken=function(){return this.next(),new Rr(this)},"undefined"!=typeof Symbol&&(kr[Symbol.iterator]=function(){var t=this;return{next:function(){var e=t.getToken();return{done:e.type===ue.eof,value:e}}}}),kr.nextToken=function(){var t=this.curContext();return t&&t.preserveSpace||this.skipSpace(),this.start=this.pos,this.options.locations&&(this.startLoc=this.curPosition()),this.pos>=this.input.length?this.finishToken(ue.eof):t.override?t.override(this):void this.readToken(this.fullCharCodeAtPos())},kr.readToken=function(t){return ie(t,this.options.ecmaVersion>=6)||92===t?this.readWord():this.getTokenFromCode(t)},kr.fullCharCodeAtPos=function(){var t=this.input.charCodeAt(this.pos);if(t<=55295||t>=56320)return t;var e=this.input.charCodeAt(this.pos+1);return e<=56319||e>=57344?t:(t<<10)+e-56613888},kr.skipBlockComment=function(){var t=this.options.onComment&&this.curPosition(),e=this.pos,r=this.input.indexOf("*/",this.pos+=2);if(-1===r&&this.raise(this.pos-2,"Unterminated comment"),this.pos=r+2,this.options.locations)for(var i=void 0,n=e;(i=ge(this.input,n,this.pos))>-1;)++this.curLine,n=this.lineStart=i;this.options.onComment&&this.options.onComment(!0,this.input.slice(e+2,r),e,this.pos,t,this.curPosition())},kr.skipLineComment=function(t){for(var e=this.pos,r=this.options.onComment&&this.curPosition(),i=this.input.charCodeAt(this.pos+=t);this.pos<this.input.length&&!fe(i);)i=this.input.charCodeAt(++this.pos);this.options.onComment&&this.options.onComment(!1,this.input.slice(e+t,this.pos),e,this.pos,r,this.curPosition())},kr.skipSpace=function(){t:for(;this.pos<this.input.length;){var t=this.input.charCodeAt(this.pos);switch(t){case 32:case 160:++this.pos;break;case 13:10===this.input.charCodeAt(this.pos+1)&&++this.pos;case 10:case 8232:case 8233:++this.pos,this.options.locations&&(++this.curLine,this.lineStart=this.pos);break;case 47:switch(this.input.charCodeAt(this.pos+1)){case 42:this.skipBlockComment();break;case 47:this.skipLineComment(2);break;default:break t}break;default:if(!(t>8&&t<14||t>=5760&&ye.test(String.fromCharCode(t))))break t;++this.pos}}},kr.finishToken=function(t,e){this.end=this.pos,this.options.locations&&(this.endLoc=this.curPosition());var r=this.type;this.type=t,this.value=e,this.updateContext(r)},kr.readToken_dot=function(){var t=this.input.charCodeAt(this.pos+1);if(t>=48&&t<=57)return this.readNumber(!0);var e=this.input.charCodeAt(this.pos+2);return this.options.ecmaVersion>=6&&46===t&&46===e?(this.pos+=3,this.finishToken(ue.ellipsis)):(++this.pos,this.finishToken(ue.dot))},kr.readToken_slash=function(){var t=this.input.charCodeAt(this.pos+1);return this.exprAllowed?(++this.pos,this.readRegexp()):61===t?this.finishOp(ue.assign,2):this.finishOp(ue.slash,1)},kr.readToken_mult_modulo_exp=function(t){var e=this.input.charCodeAt(this.pos+1),r=1,i=42===t?ue.star:ue.modulo;return this.options.ecmaVersion>=7&&42===t&&42===e&&(++r,i=ue.starstar,e=this.input.charCodeAt(this.pos+2)),61===e?this.finishOp(ue.assign,r+1):this.finishOp(i,r)},kr.readToken_pipe_amp=function(t){var e=this.input.charCodeAt(this.pos+1);return e===t?this.options.ecmaVersion>=12&&61===this.input.charCodeAt(this.pos+2)?this.finishOp(ue.assign,3):this.finishOp(124===t?ue.logicalOR:ue.logicalAND,2):61===e?this.finishOp(ue.assign,2):this.finishOp(124===t?ue.bitwiseOR:ue.bitwiseAND,1)},kr.readToken_caret=function(){return 61===this.input.charCodeAt(this.pos+1)?this.finishOp(ue.assign,2):this.finishOp(ue.bitwiseXOR,1)},kr.readToken_plus_min=function(t){var e=this.input.charCodeAt(this.pos+1);return e===t?45!==e||this.inModule||62!==this.input.charCodeAt(this.pos+2)||0!==this.lastTokEnd&&!pe.test(this.input.slice(this.lastTokEnd,this.pos))?this.finishOp(ue.incDec,2):(this.skipLineComment(3),this.skipSpace(),this.nextToken()):61===e?this.finishOp(ue.assign,2):this.finishOp(ue.plusMin,1)},kr.readToken_lt_gt=function(t){var e=this.input.charCodeAt(this.pos+1),r=1;return e===t?(r=62===t&&62===this.input.charCodeAt(this.pos+2)?3:2,61===this.input.charCodeAt(this.pos+r)?this.finishOp(ue.assign,r+1):this.finishOp(ue.bitShift,r)):33!==e||60!==t||this.inModule||45!==this.input.charCodeAt(this.pos+2)||45!==this.input.charCodeAt(this.pos+3)?(61===e&&(r=2),this.finishOp(ue.relational,r)):(this.skipLineComment(4),this.skipSpace(),this.nextToken())},kr.readToken_eq_excl=function(t){var e=this.input.charCodeAt(this.pos+1);return 61===e?this.finishOp(ue.equality,61===this.input.charCodeAt(this.pos+2)?3:2):61===t&&62===e&&this.options.ecmaVersion>=6?(this.pos+=2,this.finishToken(ue.arrow)):this.finishOp(61===t?ue.eq:ue.prefix,1)},kr.readToken_question=function(){var t=this.options.ecmaVersion;if(t>=11){var e=this.input.charCodeAt(this.pos+1);if(46===e){var r=this.input.charCodeAt(this.pos+2);if(r<48||r>57)return this.finishOp(ue.questionDot,2)}if(63===e)return t>=12&&61===this.input.charCodeAt(this.pos+2)?this.finishOp(ue.assign,3):this.finishOp(ue.coalesce,2)}return this.finishOp(ue.question,1)},kr.readToken_numberSign=function(){var t=35;if(this.options.ecmaVersion>=13&&(++this.pos,ie(t=this.fullCharCodeAtPos(),!0)||92===t))return this.finishToken(ue.privateId,this.readWord1());this.raise(this.pos,"Unexpected character '"+Se(t)+"'")},kr.getTokenFromCode=function(t){switch(t){case 46:return this.readToken_dot();case 40:return++this.pos,this.finishToken(ue.parenL);case 41:return++this.pos,this.finishToken(ue.parenR);case 59:return++this.pos,this.finishToken(ue.semi);case 44:return++this.pos,this.finishToken(ue.comma);case 91:return++this.pos,this.finishToken(ue.bracketL);case 93:return++this.pos,this.finishToken(ue.bracketR);case 123:return++this.pos,this.finishToken(ue.braceL);case 125:return++this.pos,this.finishToken(ue.braceR);case 58:return++this.pos,this.finishToken(ue.colon);case 96:if(this.options.ecmaVersion<6)break;return++this.pos,this.finishToken(ue.backQuote);case 48:var e=this.input.charCodeAt(this.pos+1);if(120===e||88===e)return this.readRadixNumber(16);if(this.options.ecmaVersion>=6){if(111===e||79===e)return this.readRadixNumber(8);if(98===e||66===e)return this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.readNumber(!1);case 34:case 39:return this.readString(t);case 47:return this.readToken_slash();case 37:case 42:return this.readToken_mult_modulo_exp(t);case 124:case 38:return this.readToken_pipe_amp(t);case 94:return this.readToken_caret();case 43:case 45:return this.readToken_plus_min(t);case 60:case 62:return this.readToken_lt_gt(t);case 61:case 33:return this.readToken_eq_excl(t);case 63:return this.readToken_question();case 126:return this.finishOp(ue.prefix,1);case 35:return this.readToken_numberSign()}this.raise(this.pos,"Unexpected character '"+Se(t)+"'")},kr.finishOp=function(t,e){var r=this.input.slice(this.pos,this.pos+e);return this.pos+=e,this.finishToken(t,r)},kr.readRegexp=function(){for(var t,e,r=this.pos;;){this.pos>=this.input.length&&this.raise(r,"Unterminated regular expression");var i=this.input.charAt(this.pos);if(pe.test(i)&&this.raise(r,"Unterminated regular expression"),t)t=!1;else{if("["===i)e=!0;else if("]"===i&&e)e=!1;else if("/"===i&&!e)break;t="\\"===i}++this.pos}var n=this.input.slice(r,this.pos);++this.pos;var s=this.pos,o=this.readWord1();this.containsEsc&&this.unexpected(s);var a=this.regexpState||(this.regexpState=new Ar(this));a.reset(r,n,o),this.validateRegExpFlags(a),this.validateRegExpPattern(a);var c=null;try{c=new RegExp(n,o)}catch(t){}return this.finishToken(ue.regexp,{pattern:n,flags:o,value:c})},kr.readInt=function(t,e,r){for(var i=this.options.ecmaVersion>=12&&void 0===e,n=r&&48===this.input.charCodeAt(this.pos),s=this.pos,o=0,a=0,c=0,l=null==e?1/0:e;c<l;++c,++this.pos){var h=this.input.charCodeAt(this.pos),u=void 0;if(i&&95===h)n&&this.raiseRecoverable(this.pos,"Numeric separator is not allowed in legacy octal numeric literals"),95===a&&this.raiseRecoverable(this.pos,"Numeric separator must be exactly one underscore"),0===c&&this.raiseRecoverable(this.pos,"Numeric separator is not allowed at the first of digits"),a=h;else{if((u=h>=97?h-97+10:h>=65?h-65+10:h>=48&&h<=57?h-48:1/0)>=t)break;a=h,o=o*t+u}}return i&&95===a&&this.raiseRecoverable(this.pos-1,"Numeric separator is not allowed at the last of digits"),this.pos===s||null!=e&&this.pos-s!==e?null:o},kr.readRadixNumber=function(t){var e=this.pos;this.pos+=2;var r=this.readInt(t);return null==r&&this.raise(this.start+2,"Expected number in radix "+t),this.options.ecmaVersion>=11&&110===this.input.charCodeAt(this.pos)?(r=Nr(this.input.slice(e,this.pos)),++this.pos):ie(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(ue.num,r)},kr.readNumber=function(t){var e=this.pos;t||null!==this.readInt(10,void 0,!0)||this.raise(e,"Invalid number");var r=this.pos-e>=2&&48===this.input.charCodeAt(e);r&&this.strict&&this.raise(e,"Invalid number");var i=this.input.charCodeAt(this.pos);if(!r&&!t&&this.options.ecmaVersion>=11&&110===i){var n=Nr(this.input.slice(e,this.pos));return++this.pos,ie(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number"),this.finishToken(ue.num,n)}r&&/[89]/.test(this.input.slice(e,this.pos))&&(r=!1),46!==i||r||(++this.pos,this.readInt(10),i=this.input.charCodeAt(this.pos)),69!==i&&101!==i||r||(43!==(i=this.input.charCodeAt(++this.pos))&&45!==i||++this.pos,null===this.readInt(10)&&this.raise(e,"Invalid number")),ie(this.fullCharCodeAtPos())&&this.raise(this.pos,"Identifier directly after number");var s=function(t,e){return e?parseInt(t,8):parseFloat(t.replace(/_/g,""))}(this.input.slice(e,this.pos),r);return this.finishToken(ue.num,s)},kr.readCodePoint=function(){var t;if(123===this.input.charCodeAt(this.pos)){this.options.ecmaVersion<6&&this.unexpected();var e=++this.pos;t=this.readHexChar(this.input.indexOf("}",this.pos)-this.pos),++this.pos,t>1114111&&this.invalidStringToken(e,"Code point out of bounds")}else t=this.readHexChar(4);return t},kr.readString=function(t){for(var e="",r=++this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated string constant");var i=this.input.charCodeAt(this.pos);if(i===t)break;92===i?(e+=this.input.slice(r,this.pos),e+=this.readEscapedChar(!1),r=this.pos):8232===i||8233===i?(this.options.ecmaVersion<10&&this.raise(this.start,"Unterminated string constant"),++this.pos,this.options.locations&&(this.curLine++,this.lineStart=this.pos)):(fe(i)&&this.raise(this.start,"Unterminated string constant"),++this.pos)}return e+=this.input.slice(r,this.pos++),this.finishToken(ue.string,e)};var Or={};kr.tryReadTemplateToken=function(){this.inTemplateElement=!0;try{this.readTmplToken()}catch(t){if(t!==Or)throw t;this.readInvalidTemplateToken()}this.inTemplateElement=!1},kr.invalidStringToken=function(t,e){if(this.inTemplateElement&&this.options.ecmaVersion>=9)throw Or;this.raise(t,e)},kr.readTmplToken=function(){for(var t="",e=this.pos;;){this.pos>=this.input.length&&this.raise(this.start,"Unterminated template");var r=this.input.charCodeAt(this.pos);if(96===r||36===r&&123===this.input.charCodeAt(this.pos+1))return this.pos!==this.start||this.type!==ue.template&&this.type!==ue.invalidTemplate?(t+=this.input.slice(e,this.pos),this.finishToken(ue.template,t)):36===r?(this.pos+=2,this.finishToken(ue.dollarBraceL)):(++this.pos,this.finishToken(ue.backQuote));if(92===r)t+=this.input.slice(e,this.pos),t+=this.readEscapedChar(!0),e=this.pos;else if(fe(r)){switch(t+=this.input.slice(e,this.pos),++this.pos,r){case 13:10===this.input.charCodeAt(this.pos)&&++this.pos;case 10:t+="\n";break;default:t+=String.fromCharCode(r)}this.options.locations&&(++this.curLine,this.lineStart=this.pos),e=this.pos}else++this.pos}},kr.readInvalidTemplateToken=function(){for(;this.pos<this.input.length;this.pos++)switch(this.input[this.pos]){case"\\":++this.pos;break;case"$":if("{"!==this.input[this.pos+1])break;case"`":return this.finishToken(ue.invalidTemplate,this.input.slice(this.start,this.pos))}this.raise(this.start,"Unterminated template")},kr.readEscapedChar=function(t){var e=this.input.charCodeAt(++this.pos);switch(++this.pos,e){case 110:return"\n";case 114:return"\r";case 120:return String.fromCharCode(this.readHexChar(2));case 117:return Se(this.readCodePoint());case 116:return"\t";case 98:return"\b";case 118:return"\v";case 102:return"\f";case 13:10===this.input.charCodeAt(this.pos)&&++this.pos;case 10:return this.options.locations&&(this.lineStart=this.pos,++this.curLine),"";case 56:case 57:if(this.strict&&this.invalidStringToken(this.pos-1,"Invalid escape sequence"),t){var r=this.pos-1;this.invalidStringToken(r,"Invalid escape sequence in template string")}default:if(e>=48&&e<=55){var i=this.input.substr(this.pos-1,3).match(/^[0-7]+/)[0],n=parseInt(i,8);return n>255&&(i=i.slice(0,-1),n=parseInt(i,8)),this.pos+=i.length-1,e=this.input.charCodeAt(this.pos),"0"===i&&56!==e&&57!==e||!this.strict&&!t||this.invalidStringToken(this.pos-1-i.length,t?"Octal literal in template string":"Octal literal in strict mode"),String.fromCharCode(n)}return fe(e)?"":String.fromCharCode(e)}},kr.readHexChar=function(t){var e=this.pos,r=this.readInt(16,t);return null===r&&this.invalidStringToken(e,"Bad character escape sequence"),r},kr.readWord1=function(){this.containsEsc=!1;for(var t="",e=!0,r=this.pos,i=this.options.ecmaVersion>=6;this.pos<this.input.length;){var n=this.fullCharCodeAtPos();if(ne(n,i))this.pos+=n<=65535?1:2;else{if(92!==n)break;this.containsEsc=!0,t+=this.input.slice(r,this.pos);var s=this.pos;117!==this.input.charCodeAt(++this.pos)&&this.invalidStringToken(this.pos,"Expecting Unicode escape sequence \\uXXXX"),++this.pos;var o=this.readCodePoint();(e?ie:ne)(o,i)||this.invalidStringToken(s,"Invalid Unicode escape"),t+=Se(o),r=this.pos}e=!1}return t+this.input.slice(r,this.pos)},kr.readWord=function(){var t=this.readWord1(),e=ue.name;return this.keywords.test(t)&&(e=le[t]),this.finishToken(e,t)},Oe.acorn={Parser:Oe,version:"8.10.0",defaultOptions:Re,Position:xe,SourceLocation:Ce,getLineInfo:Ie,Node:er,TokenType:se,tokTypes:ue,keywordTypes:le,TokContext:qe,tokContexts:Qe,isIdentifierChar:ne,isIdentifierStart:ie,Token:Rr,isNewLine:fe,lineBreak:pe,lineBreakG:de,nonASCIIwhitespace:ye};const Br=/^\s*?import\s*?[{"'*]/,Pr=/^\s*?export\s*?({([\s\w,$\n]+?)}[\s;]*|default|class)\s+/m,Dr=/^\s*?import(?:['"\s]*(?:[\w*${}\s,]+from\s*)?['"\s]?['"\s])(?:.*?)['"\s]/,Lr=/(import(?:['"\s]*(?:[\w*${}\s,]+from\s*)?['"\s]?['"\s]))((?:https?|[./]).*?)(['"\s])/,Ur=["window","globalThis","self","document","location","top","parent","frames","opener"],Mr=Ur.map((t=>`(?:^|[^$.])\\b${t}\\b(?:$|[^$])`)).join("|"),Fr=new RegExp(`(${Mr})`),Hr=(()=>{const t="_____WB$wombat$check$this$function_____(this)",e="WB_wombat_runEval2((_______eval_arg, isGlobal) => { var ge = eval; return isGlobal ? ge(_______eval_arg) : eval(_______eval_arg); }).eval(this, (function() { return arguments })(),";function r(){return(e,r,i,n)=>function(t,e){let r=t.lastIndexOf('"',e);return r<0&&(r=t.indexOf('"',e)),r>0&&"\\"===t[r-1]}(n,i)?e:e.replace("this",t)}function i(t,e){return r=>r.replace(t,e)}return[[/(?:^|\s)\beval\s*\(/,(n=e,"eval",t=>{const e=t.indexOf("eval");return 0===e?n:t.slice(0,e)+n})],[/\([\w]+,\s*eval\)\(/,()=>" "+e],[/[=]\s*\beval\b(?![(:.$])/,i("eval","self.eval")],[/var\s+self/,i("var","let")],[/\.postMessage\b\(/,t=>".__WB_pmw(self)"+t],[/(?:^|[^$.+*/%^-])\s?\blocation\b\s*[=]\s*(?![\s\d=])/,("((self.__WB_check_loc && self.__WB_check_loc(location, arguments)) || {}).href = ",(t,e,r,i)=>{if(r>0){const e=i[r-1];if("."===e||"$"===e)return t}return t+"((self.__WB_check_loc && self.__WB_check_loc(location, arguments)) || {}).href = "})],[/\breturn\s+this\b\s*(?![\s\w.$])/,r()],[new RegExp(`[^$.]\\s?\\bthis\\b(?=(?:\\.(?:${Ur.join("|")})\\b))`),(e,r,i,n)=>{const s=n[i];return"\n"===s?e.replace("this",";"+t):"."!==s&&"$"!==s?e.replace("this",t):e}],[/[=,]\s*\bthis\b\s*(?![\s\w:.$])/,r()],[/\}(?:\s*\))?\s*\(this\)/,r()],[/[^|&][|&]{2}\s*this\b\s*(?![|\s&.$](?:[^|&]|$))/,r()],[/async\s+import\s*\(/,t=>t],[/[^$.]\bimport\s*\([^)]*\)\s*\{/,t=>t],[/[^$.]\bimport\s*\(/,("import","____wb_rewrite_import__",(t,e)=>{let r=t.replace("import","____wb_rewrite_import__");return r+=e.isModule?"import.meta.url, ":"null, ",r})]];var n})(),jr=new Set([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]),Wr="�";var Vr;!function(t){t[t.EOF=-1]="EOF",t[t.NULL=0]="NULL",t[t.TABULATION=9]="TABULATION",t[t.CARRIAGE_RETURN=13]="CARRIAGE_RETURN",t[t.LINE_FEED=10]="LINE_FEED",t[t.FORM_FEED=12]="FORM_FEED",t[t.SPACE=32]="SPACE",t[t.EXCLAMATION_MARK=33]="EXCLAMATION_MARK",t[t.QUOTATION_MARK=34]="QUOTATION_MARK",t[t.NUMBER_SIGN=35]="NUMBER_SIGN",t[t.AMPERSAND=38]="AMPERSAND",t[t.APOSTROPHE=39]="APOSTROPHE",t[t.HYPHEN_MINUS=45]="HYPHEN_MINUS",t[t.SOLIDUS=47]="SOLIDUS",t[t.DIGIT_0=48]="DIGIT_0",t[t.DIGIT_9=57]="DIGIT_9",t[t.SEMICOLON=59]="SEMICOLON",t[t.LESS_THAN_SIGN=60]="LESS_THAN_SIGN",t[t.EQUALS_SIGN=61]="EQUALS_SIGN",t[t.GREATER_THAN_SIGN=62]="GREATER_THAN_SIGN",t[t.QUESTION_MARK=63]="QUESTION_MARK",t[t.LATIN_CAPITAL_A=65]="LATIN_CAPITAL_A",t[t.LATIN_CAPITAL_F=70]="LATIN_CAPITAL_F",t[t.LATIN_CAPITAL_X=88]="LATIN_CAPITAL_X",t[t.LATIN_CAPITAL_Z=90]="LATIN_CAPITAL_Z",t[t.RIGHT_SQUARE_BRACKET=93]="RIGHT_SQUARE_BRACKET",t[t.GRAVE_ACCENT=96]="GRAVE_ACCENT",t[t.LATIN_SMALL_A=97]="LATIN_SMALL_A",t[t.LATIN_SMALL_F=102]="LATIN_SMALL_F",t[t.LATIN_SMALL_X=120]="LATIN_SMALL_X",t[t.LATIN_SMALL_Z=122]="LATIN_SMALL_Z",t[t.REPLACEMENT_CHARACTER=65533]="REPLACEMENT_CHARACTER"}(Vr=Vr||(Vr={}));const Gr="[CDATA[",zr="doctype",qr="script";function Qr(t){return t>=55296&&t<=57343}function Kr(t){return 32!==t&&10!==t&&13!==t&&9!==t&&12!==t&&t>=1&&t<=31||t>=127&&t<=159}function Yr(t){return t>=64976&&t<=65007||jr.has(t)}var Jr,Xr;!function(t){t.controlCharacterInInputStream="control-character-in-input-stream",t.noncharacterInInputStream="noncharacter-in-input-stream",t.surrogateInInputStream="surrogate-in-input-stream",t.nonVoidHtmlElementStartTagWithTrailingSolidus="non-void-html-element-start-tag-with-trailing-solidus",t.endTagWithAttributes="end-tag-with-attributes",t.endTagWithTrailingSolidus="end-tag-with-trailing-solidus",t.unexpectedSolidusInTag="unexpected-solidus-in-tag",t.unexpectedNullCharacter="unexpected-null-character",t.unexpectedQuestionMarkInsteadOfTagName="unexpected-question-mark-instead-of-tag-name",t.invalidFirstCharacterOfTagName="invalid-first-character-of-tag-name",t.unexpectedEqualsSignBeforeAttributeName="unexpected-equals-sign-before-attribute-name",t.missingEndTagName="missing-end-tag-name",t.unexpectedCharacterInAttributeName="unexpected-character-in-attribute-name",t.unknownNamedCharacterReference="unknown-named-character-reference",t.missingSemicolonAfterCharacterReference="missing-semicolon-after-character-reference",t.unexpectedCharacterAfterDoctypeSystemIdentifier="unexpected-character-after-doctype-system-identifier",t.unexpectedCharacterInUnquotedAttributeValue="unexpected-character-in-unquoted-attribute-value",t.eofBeforeTagName="eof-before-tag-name",t.eofInTag="eof-in-tag",t.missingAttributeValue="missing-attribute-value",t.missingWhitespaceBetweenAttributes="missing-whitespace-between-attributes",t.missingWhitespaceAfterDoctypePublicKeyword="missing-whitespace-after-doctype-public-keyword",t.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers="missing-whitespace-between-doctype-public-and-system-identifiers",t.missingWhitespaceAfterDoctypeSystemKeyword="missing-whitespace-after-doctype-system-keyword",t.missingQuoteBeforeDoctypePublicIdentifier="missing-quote-before-doctype-public-identifier",t.missingQuoteBeforeDoctypeSystemIdentifier="missing-quote-before-doctype-system-identifier",t.missingDoctypePublicIdentifier="missing-doctype-public-identifier",t.missingDoctypeSystemIdentifier="missing-doctype-system-identifier",t.abruptDoctypePublicIdentifier="abrupt-doctype-public-identifier",t.abruptDoctypeSystemIdentifier="abrupt-doctype-system-identifier",t.cdataInHtmlContent="cdata-in-html-content",t.incorrectlyOpenedComment="incorrectly-opened-comment",t.eofInScriptHtmlCommentLikeText="eof-in-script-html-comment-like-text",t.eofInDoctype="eof-in-doctype",t.nestedComment="nested-comment",t.abruptClosingOfEmptyComment="abrupt-closing-of-empty-comment",t.eofInComment="eof-in-comment",t.incorrectlyClosedComment="incorrectly-closed-comment",t.eofInCdata="eof-in-cdata",t.absenceOfDigitsInNumericCharacterReference="absence-of-digits-in-numeric-character-reference",t.nullCharacterReference="null-character-reference",t.surrogateCharacterReference="surrogate-character-reference",t.characterReferenceOutsideUnicodeRange="character-reference-outside-unicode-range",t.controlCharacterReference="control-character-reference",t.noncharacterCharacterReference="noncharacter-character-reference",t.missingWhitespaceBeforeDoctypeName="missing-whitespace-before-doctype-name",t.missingDoctypeName="missing-doctype-name",t.invalidCharacterSequenceAfterDoctypeName="invalid-character-sequence-after-doctype-name",t.duplicateAttribute="duplicate-attribute",t.nonConformingDoctype="non-conforming-doctype",t.missingDoctype="missing-doctype",t.misplacedDoctype="misplaced-doctype",t.endTagWithoutMatchingOpenElement="end-tag-without-matching-open-element",t.closingOfElementWithOpenChildElements="closing-of-element-with-open-child-elements",t.disallowedContentInNoscriptInHead="disallowed-content-in-noscript-in-head",t.openElementsLeftAfterEof="open-elements-left-after-eof",t.abandonedHeadElementChild="abandoned-head-element-child",t.misplacedStartTagForHeadElement="misplaced-start-tag-for-head-element",t.nestedNoscriptInHead="nested-noscript-in-head",t.eofInElementThatCanContainOnlyText="eof-in-element-that-can-contain-only-text"}(Jr=Jr||(Jr={}));class Zr{constructor(t){this.handler=t,this.html="",this.pos=-1,this.lastGapPos=-2,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=65536,this.isEol=!1,this.lineStartPos=0,this.droppedBufferSize=0,this.line=1,this.lastErrOffset=-1}get col(){return this.pos-this.lineStartPos+Number(this.lastGapPos!==this.pos)}get offset(){return this.droppedBufferSize+this.pos}getError(t){const{line:e,col:r,offset:i}=this;return{code:t,startLine:e,endLine:e,startCol:r,endCol:r,startOffset:i,endOffset:i}}_err(t){this.handler.onParseError&&this.lastErrOffset!==this.offset&&(this.lastErrOffset=this.offset,this.handler.onParseError(this.getError(t)))}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(t){if(this.pos!==this.html.length-1){const e=this.html.charCodeAt(this.pos+1);if(function(t){return t>=56320&&t<=57343}(e))return this.pos++,this._addGap(),1024*(t-55296)+9216+e}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,Vr.EOF;return this._err(Jr.surrogateInInputStream),t}willDropParsedChunk(){return this.pos>this.bufferWaterline}dropParsedChunk(){this.willDropParsedChunk()&&(this.html=this.html.substring(this.pos),this.lineStartPos-=this.pos,this.droppedBufferSize+=this.pos,this.pos=0,this.lastGapPos=-2,this.gapStack.length=0)}write(t,e){this.html.length>0?this.html+=t:this.html=t,this.endOfChunkHit=!1,this.lastChunkWritten=e}insertHtmlAtCurrentPos(t){this.html=this.html.substring(0,this.pos+1)+t+this.html.substring(this.pos+1),this.endOfChunkHit=!1}startsWith(t,e){if(this.pos+t.length>this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,!1;if(e)return this.html.startsWith(t,this.pos);for(let e=0;e<t.length;e++)if((32|this.html.charCodeAt(this.pos+e))!==t.charCodeAt(e))return!1;return!0}peek(t){const e=this.pos+t;if(e>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,Vr.EOF;const r=this.html.charCodeAt(e);return r===Vr.CARRIAGE_RETURN?Vr.LINE_FEED:r}advance(){if(this.pos++,this.isEol&&(this.isEol=!1,this.line++,this.lineStartPos=this.pos),this.pos>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,Vr.EOF;let t=this.html.charCodeAt(this.pos);return t===Vr.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,Vr.LINE_FEED):t===Vr.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,Qr(t)&&(t=this._processSurrogate(t)),null===this.handler.onParseError||t>31&&t<127||t===Vr.LINE_FEED||t===Vr.CARRIAGE_RETURN||t>159&&t<64976||this._checkForProblematicCharacters(t),t)}_checkForProblematicCharacters(t){Kr(t)?this._err(Jr.controlCharacterInInputStream):Yr(t)&&this._err(Jr.noncharacterInInputStream)}retreat(t){for(this.pos-=t;this.pos<this.lastGapPos;)this.lastGapPos=this.gapStack.pop(),this.pos--;this.isEol=!1}}!function(t){t[t.CHARACTER=0]="CHARACTER",t[t.NULL_CHARACTER=1]="NULL_CHARACTER",t[t.WHITESPACE_CHARACTER=2]="WHITESPACE_CHARACTER",t[t.START_TAG=3]="START_TAG",t[t.END_TAG=4]="END_TAG",t[t.COMMENT=5]="COMMENT",t[t.DOCTYPE=6]="DOCTYPE",t[t.EOF=7]="EOF",t[t.HIBERNATION=8]="HIBERNATION"}(Xr=Xr||(Xr={}));const $r=new Uint16Array('ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms„‹•˜¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegraìȹoɴ͹\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱cò׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘ë૙eryThiî૙tedĀGL૸ଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻Ó䃓Āiy෎ීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬื฼de耻Õ䃕es;樷ml耻Ö䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»࿝pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗Āeiቻ኉Dzኀ\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0᏿ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0጖y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtè૙a;䎖r;愨pf;愤cr;쀀𝒵௡ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;e዁ᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀𝔟g΀costuvwឍឝឳេ៕៛៞ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t»᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭍᭒\0᯽\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇᫔᫺\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ᫙\0\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁îᅠeĀmx᫱᫶ent»᫩eóɍǧ᫾\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍rò΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴoôᲉĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»Ṻƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙ῜ῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧‪‬\0‮耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0↎proø₞r;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼rò৆òΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonó྘quigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roø඄urĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨í஘istĀ;s஠டr;쀀𝔫ȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lanô௢ií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs఻⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lleì୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉uå൅;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭å೸åഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñ೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥ⵲ⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀𝔬ͯ⵹\0\0⵼\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨrò᪀Āir⶝ⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ⹞\0⹽\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ⹧⹲຅脀¶;l⹭⹮䂶leìЃɩ⹸\0\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴ï໻rel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei⿾々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ì࿲âヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowó࿪arpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓rò࿪aòՑ;怏oustĀ;a㈞㈟掱che»㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼਴t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì⹯耻­䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫ਩war;椪lig耻ß䃟௡㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rë๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproø዁im»ኬsðኞĀas㚺㚮ð዁rn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xô᝷headĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roð໻tré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜ៟tré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split("").map((t=>t.charCodeAt(0)))),ti=new Uint16Array("Ȁaglq\tɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map((t=>t.charCodeAt(0))));var ei;const ri=new Map([[0,65533],[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]]),ii=null!==(ei=String.fromCodePoint)&&void 0!==ei?ei:function(t){let e="";return t>65535&&(t-=65536,e+=String.fromCharCode(t>>>10&1023|55296),t=56320|1023&t),e+=String.fromCharCode(t),e};function ni(t){return ii(function(t){var e;return t>=55296&&t<=57343||t>1114111?65533:null!==(e=ri.get(t))&&void 0!==e?e:t}(t))}var si,oi,ai,ci,li,hi,ui;function pi(t){return function(e,r){let i="",n=0,s=0;for(;(s=e.indexOf("&",s))>=0;){if(i+=e.slice(n,s),n=s,s+=1,e.charCodeAt(s)===si.NUM){let t=s+1,o=10,a=e.charCodeAt(t);(a|si.To_LOWER_BIT)===si.LOWER_X&&(o=16,s+=1,t+=1);do{a=e.charCodeAt(++s)}while(a>=si.ZERO&&a<=si.NINE||16===o&&(a|si.To_LOWER_BIT)>=si.LOWER_A&&(a|si.To_LOWER_BIT)<=si.LOWER_F);if(t!==s){const a=e.substring(t,s),c=parseInt(a,o);if(e.charCodeAt(s)===si.SEMI)s+=1;else if(r)continue;i+=ni(c),n=s}continue}let o=0,a=1,c=0,l=t[c];for(;s<e.length&&(c=di(t,l,c+1,e.charCodeAt(s)),!(c<0));s++,a++){l=t[c];const i=l&oi.VALUE_LENGTH;if(i){r&&e.charCodeAt(s)!==si.SEMI||(o=c,a=0);const t=(i>>14)-1;if(0===t)break;c+=t}}if(0!==o){const e=(t[o]&oi.VALUE_LENGTH)>>14;i+=1===e?String.fromCharCode(t[o]&~oi.VALUE_LENGTH):2===e?String.fromCharCode(t[o+1]):String.fromCharCode(t[o+1],t[o+2]),n=s-a+1}}return i+e.slice(n)}}function di(t,e,r,i){const n=(e&oi.BRANCH_LENGTH)>>7,s=e&oi.JUMP_TABLE;if(0===n)return 0!==s&&i===s?r:-1;if(s){const e=i-s;return e<0||e>=n?-1:t[r+e]-1}let o=r,a=o+n-1;for(;o<=a;){const e=o+a>>>1,r=t[e];if(r<i)o=e+1;else{if(!(r>i))return t[e+n];a=e-1}}return-1}!function(t){t[t.NUM=35]="NUM",t[t.SEMI=59]="SEMI",t[t.ZERO=48]="ZERO",t[t.NINE=57]="NINE",t[t.LOWER_A=97]="LOWER_A",t[t.LOWER_F=102]="LOWER_F",t[t.LOWER_X=120]="LOWER_X",t[t.To_LOWER_BIT=32]="To_LOWER_BIT"}(si||(si={})),function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"}(oi||(oi={})),pi($r),pi(ti),function(t){t.HTML="http://www.w3.org/1999/xhtml",t.MATHML="http://www.w3.org/1998/Math/MathML",t.SVG="http://www.w3.org/2000/svg",t.XLINK="http://www.w3.org/1999/xlink",t.XML="http://www.w3.org/XML/1998/namespace",t.XMLNS="http://www.w3.org/2000/xmlns/"}(ai=ai||(ai={})),function(t){t.TYPE="type",t.ACTION="action",t.ENCODING="encoding",t.PROMPT="prompt",t.NAME="name",t.COLOR="color",t.FACE="face",t.SIZE="size"}(ci=ci||(ci={})),function(t){t.NO_QUIRKS="no-quirks",t.QUIRKS="quirks",t.LIMITED_QUIRKS="limited-quirks"}(li=li||(li={})),function(t){t.A="a",t.ADDRESS="address",t.ANNOTATION_XML="annotation-xml",t.APPLET="applet",t.AREA="area",t.ARTICLE="article",t.ASIDE="aside",t.B="b",t.BASE="base",t.BASEFONT="basefont",t.BGSOUND="bgsound",t.BIG="big",t.BLOCKQUOTE="blockquote",t.BODY="body",t.BR="br",t.BUTTON="button",t.CAPTION="caption",t.CENTER="center",t.CODE="code",t.COL="col",t.COLGROUP="colgroup",t.DD="dd",t.DESC="desc",t.DETAILS="details",t.DIALOG="dialog",t.DIR="dir",t.DIV="div",t.DL="dl",t.DT="dt",t.EM="em",t.EMBED="embed",t.FIELDSET="fieldset",t.FIGCAPTION="figcaption",t.FIGURE="figure",t.FONT="font",t.FOOTER="footer",t.FOREIGN_OBJECT="foreignObject",t.FORM="form",t.FRAME="frame",t.FRAMESET="frameset",t.H1="h1",t.H2="h2",t.H3="h3",t.H4="h4",t.H5="h5",t.H6="h6",t.HEAD="head",t.HEADER="header",t.HGROUP="hgroup",t.HR="hr",t.HTML="html",t.I="i",t.IMG="img",t.IMAGE="image",t.INPUT="input",t.IFRAME="iframe",t.KEYGEN="keygen",t.LABEL="label",t.LI="li",t.LINK="link",t.LISTING="listing",t.MAIN="main",t.MALIGNMARK="malignmark",t.MARQUEE="marquee",t.MATH="math",t.MENU="menu",t.META="meta",t.MGLYPH="mglyph",t.MI="mi",t.MO="mo",t.MN="mn",t.MS="ms",t.MTEXT="mtext",t.NAV="nav",t.NOBR="nobr",t.NOFRAMES="noframes",t.NOEMBED="noembed",t.NOSCRIPT="noscript",t.OBJECT="object",t.OL="ol",t.OPTGROUP="optgroup",t.OPTION="option",t.P="p",t.PARAM="param",t.PLAINTEXT="plaintext",t.PRE="pre",t.RB="rb",t.RP="rp",t.RT="rt",t.RTC="rtc",t.RUBY="ruby",t.S="s",t.SCRIPT="script",t.SECTION="section",t.SELECT="select",t.SOURCE="source",t.SMALL="small",t.SPAN="span",t.STRIKE="strike",t.STRONG="strong",t.STYLE="style",t.SUB="sub",t.SUMMARY="summary",t.SUP="sup",t.TABLE="table",t.TBODY="tbody",t.TEMPLATE="template",t.TEXTAREA="textarea",t.TFOOT="tfoot",t.TD="td",t.TH="th",t.THEAD="thead",t.TITLE="title",t.TR="tr",t.TRACK="track",t.TT="tt",t.U="u",t.UL="ul",t.SVG="svg",t.VAR="var",t.WBR="wbr",t.XMP="xmp"}(hi=hi||(hi={})),function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.A=1]="A",t[t.ADDRESS=2]="ADDRESS",t[t.ANNOTATION_XML=3]="ANNOTATION_XML",t[t.APPLET=4]="APPLET",t[t.AREA=5]="AREA",t[t.ARTICLE=6]="ARTICLE",t[t.ASIDE=7]="ASIDE",t[t.B=8]="B",t[t.BASE=9]="BASE",t[t.BASEFONT=10]="BASEFONT",t[t.BGSOUND=11]="BGSOUND",t[t.BIG=12]="BIG",t[t.BLOCKQUOTE=13]="BLOCKQUOTE",t[t.BODY=14]="BODY",t[t.BR=15]="BR",t[t.BUTTON=16]="BUTTON",t[t.CAPTION=17]="CAPTION",t[t.CENTER=18]="CENTER",t[t.CODE=19]="CODE",t[t.COL=20]="COL",t[t.COLGROUP=21]="COLGROUP",t[t.DD=22]="DD",t[t.DESC=23]="DESC",t[t.DETAILS=24]="DETAILS",t[t.DIALOG=25]="DIALOG",t[t.DIR=26]="DIR",t[t.DIV=27]="DIV",t[t.DL=28]="DL",t[t.DT=29]="DT",t[t.EM=30]="EM",t[t.EMBED=31]="EMBED",t[t.FIELDSET=32]="FIELDSET",t[t.FIGCAPTION=33]="FIGCAPTION",t[t.FIGURE=34]="FIGURE",t[t.FONT=35]="FONT",t[t.FOOTER=36]="FOOTER",t[t.FOREIGN_OBJECT=37]="FOREIGN_OBJECT",t[t.FORM=38]="FORM",t[t.FRAME=39]="FRAME",t[t.FRAMESET=40]="FRAMESET",t[t.H1=41]="H1",t[t.H2=42]="H2",t[t.H3=43]="H3",t[t.H4=44]="H4",t[t.H5=45]="H5",t[t.H6=46]="H6",t[t.HEAD=47]="HEAD",t[t.HEADER=48]="HEADER",t[t.HGROUP=49]="HGROUP",t[t.HR=50]="HR",t[t.HTML=51]="HTML",t[t.I=52]="I",t[t.IMG=53]="IMG",t[t.IMAGE=54]="IMAGE",t[t.INPUT=55]="INPUT",t[t.IFRAME=56]="IFRAME",t[t.KEYGEN=57]="KEYGEN",t[t.LABEL=58]="LABEL",t[t.LI=59]="LI",t[t.LINK=60]="LINK",t[t.LISTING=61]="LISTING",t[t.MAIN=62]="MAIN",t[t.MALIGNMARK=63]="MALIGNMARK",t[t.MARQUEE=64]="MARQUEE",t[t.MATH=65]="MATH",t[t.MENU=66]="MENU",t[t.META=67]="META",t[t.MGLYPH=68]="MGLYPH",t[t.MI=69]="MI",t[t.MO=70]="MO",t[t.MN=71]="MN",t[t.MS=72]="MS",t[t.MTEXT=73]="MTEXT",t[t.NAV=74]="NAV",t[t.NOBR=75]="NOBR",t[t.NOFRAMES=76]="NOFRAMES",t[t.NOEMBED=77]="NOEMBED",t[t.NOSCRIPT=78]="NOSCRIPT",t[t.OBJECT=79]="OBJECT",t[t.OL=80]="OL",t[t.OPTGROUP=81]="OPTGROUP",t[t.OPTION=82]="OPTION",t[t.P=83]="P",t[t.PARAM=84]="PARAM",t[t.PLAINTEXT=85]="PLAINTEXT",t[t.PRE=86]="PRE",t[t.RB=87]="RB",t[t.RP=88]="RP",t[t.RT=89]="RT",t[t.RTC=90]="RTC",t[t.RUBY=91]="RUBY",t[t.S=92]="S",t[t.SCRIPT=93]="SCRIPT",t[t.SECTION=94]="SECTION",t[t.SELECT=95]="SELECT",t[t.SOURCE=96]="SOURCE",t[t.SMALL=97]="SMALL",t[t.SPAN=98]="SPAN",t[t.STRIKE=99]="STRIKE",t[t.STRONG=100]="STRONG",t[t.STYLE=101]="STYLE",t[t.SUB=102]="SUB",t[t.SUMMARY=103]="SUMMARY",t[t.SUP=104]="SUP",t[t.TABLE=105]="TABLE",t[t.TBODY=106]="TBODY",t[t.TEMPLATE=107]="TEMPLATE",t[t.TEXTAREA=108]="TEXTAREA",t[t.TFOOT=109]="TFOOT",t[t.TD=110]="TD",t[t.TH=111]="TH",t[t.THEAD=112]="THEAD",t[t.TITLE=113]="TITLE",t[t.TR=114]="TR",t[t.TRACK=115]="TRACK",t[t.TT=116]="TT",t[t.U=117]="U",t[t.UL=118]="UL",t[t.SVG=119]="SVG",t[t.VAR=120]="VAR",t[t.WBR=121]="WBR",t[t.XMP=122]="XMP"}(ui=ui||(ui={}));const fi=new Map([[hi.A,ui.A],[hi.ADDRESS,ui.ADDRESS],[hi.ANNOTATION_XML,ui.ANNOTATION_XML],[hi.APPLET,ui.APPLET],[hi.AREA,ui.AREA],[hi.ARTICLE,ui.ARTICLE],[hi.ASIDE,ui.ASIDE],[hi.B,ui.B],[hi.BASE,ui.BASE],[hi.BASEFONT,ui.BASEFONT],[hi.BGSOUND,ui.BGSOUND],[hi.BIG,ui.BIG],[hi.BLOCKQUOTE,ui.BLOCKQUOTE],[hi.BODY,ui.BODY],[hi.BR,ui.BR],[hi.BUTTON,ui.BUTTON],[hi.CAPTION,ui.CAPTION],[hi.CENTER,ui.CENTER],[hi.CODE,ui.CODE],[hi.COL,ui.COL],[hi.COLGROUP,ui.COLGROUP],[hi.DD,ui.DD],[hi.DESC,ui.DESC],[hi.DETAILS,ui.DETAILS],[hi.DIALOG,ui.DIALOG],[hi.DIR,ui.DIR],[hi.DIV,ui.DIV],[hi.DL,ui.DL],[hi.DT,ui.DT],[hi.EM,ui.EM],[hi.EMBED,ui.EMBED],[hi.FIELDSET,ui.FIELDSET],[hi.FIGCAPTION,ui.FIGCAPTION],[hi.FIGURE,ui.FIGURE],[hi.FONT,ui.FONT],[hi.FOOTER,ui.FOOTER],[hi.FOREIGN_OBJECT,ui.FOREIGN_OBJECT],[hi.FORM,ui.FORM],[hi.FRAME,ui.FRAME],[hi.FRAMESET,ui.FRAMESET],[hi.H1,ui.H1],[hi.H2,ui.H2],[hi.H3,ui.H3],[hi.H4,ui.H4],[hi.H5,ui.H5],[hi.H6,ui.H6],[hi.HEAD,ui.HEAD],[hi.HEADER,ui.HEADER],[hi.HGROUP,ui.HGROUP],[hi.HR,ui.HR],[hi.HTML,ui.HTML],[hi.I,ui.I],[hi.IMG,ui.IMG],[hi.IMAGE,ui.IMAGE],[hi.INPUT,ui.INPUT],[hi.IFRAME,ui.IFRAME],[hi.KEYGEN,ui.KEYGEN],[hi.LABEL,ui.LABEL],[hi.LI,ui.LI],[hi.LINK,ui.LINK],[hi.LISTING,ui.LISTING],[hi.MAIN,ui.MAIN],[hi.MALIGNMARK,ui.MALIGNMARK],[hi.MARQUEE,ui.MARQUEE],[hi.MATH,ui.MATH],[hi.MENU,ui.MENU],[hi.META,ui.META],[hi.MGLYPH,ui.MGLYPH],[hi.MI,ui.MI],[hi.MO,ui.MO],[hi.MN,ui.MN],[hi.MS,ui.MS],[hi.MTEXT,ui.MTEXT],[hi.NAV,ui.NAV],[hi.NOBR,ui.NOBR],[hi.NOFRAMES,ui.NOFRAMES],[hi.NOEMBED,ui.NOEMBED],[hi.NOSCRIPT,ui.NOSCRIPT],[hi.OBJECT,ui.OBJECT],[hi.OL,ui.OL],[hi.OPTGROUP,ui.OPTGROUP],[hi.OPTION,ui.OPTION],[hi.P,ui.P],[hi.PARAM,ui.PARAM],[hi.PLAINTEXT,ui.PLAINTEXT],[hi.PRE,ui.PRE],[hi.RB,ui.RB],[hi.RP,ui.RP],[hi.RT,ui.RT],[hi.RTC,ui.RTC],[hi.RUBY,ui.RUBY],[hi.S,ui.S],[hi.SCRIPT,ui.SCRIPT],[hi.SECTION,ui.SECTION],[hi.SELECT,ui.SELECT],[hi.SOURCE,ui.SOURCE],[hi.SMALL,ui.SMALL],[hi.SPAN,ui.SPAN],[hi.STRIKE,ui.STRIKE],[hi.STRONG,ui.STRONG],[hi.STYLE,ui.STYLE],[hi.SUB,ui.SUB],[hi.SUMMARY,ui.SUMMARY],[hi.SUP,ui.SUP],[hi.TABLE,ui.TABLE],[hi.TBODY,ui.TBODY],[hi.TEMPLATE,ui.TEMPLATE],[hi.TEXTAREA,ui.TEXTAREA],[hi.TFOOT,ui.TFOOT],[hi.TD,ui.TD],[hi.TH,ui.TH],[hi.THEAD,ui.THEAD],[hi.TITLE,ui.TITLE],[hi.TR,ui.TR],[hi.TRACK,ui.TRACK],[hi.TT,ui.TT],[hi.U,ui.U],[hi.UL,ui.UL],[hi.SVG,ui.SVG],[hi.VAR,ui.VAR],[hi.WBR,ui.WBR],[hi.XMP,ui.XMP]]);function gi(t){var e;return null!==(e=fi.get(t))&&void 0!==e?e:ui.UNKNOWN}const yi=ui;ai.HTML,new Set([yi.ADDRESS,yi.APPLET,yi.AREA,yi.ARTICLE,yi.ASIDE,yi.BASE,yi.BASEFONT,yi.BGSOUND,yi.BLOCKQUOTE,yi.BODY,yi.BR,yi.BUTTON,yi.CAPTION,yi.CENTER,yi.COL,yi.COLGROUP,yi.DD,yi.DETAILS,yi.DIR,yi.DIV,yi.DL,yi.DT,yi.EMBED,yi.FIELDSET,yi.FIGCAPTION,yi.FIGURE,yi.FOOTER,yi.FORM,yi.FRAME,yi.FRAMESET,yi.H1,yi.H2,yi.H3,yi.H4,yi.H5,yi.H6,yi.HEAD,yi.HEADER,yi.HGROUP,yi.HR,yi.HTML,yi.IFRAME,yi.IMG,yi.INPUT,yi.LI,yi.LINK,yi.LISTING,yi.MAIN,yi.MARQUEE,yi.MENU,yi.META,yi.NAV,yi.NOEMBED,yi.NOFRAMES,yi.NOSCRIPT,yi.OBJECT,yi.OL,yi.P,yi.PARAM,yi.PLAINTEXT,yi.PRE,yi.SCRIPT,yi.SECTION,yi.SELECT,yi.SOURCE,yi.STYLE,yi.SUMMARY,yi.TABLE,yi.TBODY,yi.TD,yi.TEMPLATE,yi.TEXTAREA,yi.TFOOT,yi.TH,yi.THEAD,yi.TITLE,yi.TR,yi.TRACK,yi.UL,yi.WBR,yi.XMP]),ai.MATHML,new Set([yi.MI,yi.MO,yi.MN,yi.MS,yi.MTEXT,yi.ANNOTATION_XML]),ai.SVG,new Set([yi.TITLE,yi.FOREIGN_OBJECT,yi.DESC]),ai.XLINK,new Set,ai.XML,new Set,ai.XMLNS,new Set;const mi=new Set([hi.STYLE,hi.SCRIPT,hi.XMP,hi.IFRAME,hi.NOEMBED,hi.NOFRAMES,hi.PLAINTEXT]),wi=new Map([[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]]);var bi;!function(t){t[t.DATA=0]="DATA",t[t.RCDATA=1]="RCDATA",t[t.RAWTEXT=2]="RAWTEXT",t[t.SCRIPT_DATA=3]="SCRIPT_DATA",t[t.PLAINTEXT=4]="PLAINTEXT",t[t.TAG_OPEN=5]="TAG_OPEN",t[t.END_TAG_OPEN=6]="END_TAG_OPEN",t[t.TAG_NAME=7]="TAG_NAME",t[t.RCDATA_LESS_THAN_SIGN=8]="RCDATA_LESS_THAN_SIGN",t[t.RCDATA_END_TAG_OPEN=9]="RCDATA_END_TAG_OPEN",t[t.RCDATA_END_TAG_NAME=10]="RCDATA_END_TAG_NAME",t[t.RAWTEXT_LESS_THAN_SIGN=11]="RAWTEXT_LESS_THAN_SIGN",t[t.RAWTEXT_END_TAG_OPEN=12]="RAWTEXT_END_TAG_OPEN",t[t.RAWTEXT_END_TAG_NAME=13]="RAWTEXT_END_TAG_NAME",t[t.SCRIPT_DATA_LESS_THAN_SIGN=14]="SCRIPT_DATA_LESS_THAN_SIGN",t[t.SCRIPT_DATA_END_TAG_OPEN=15]="SCRIPT_DATA_END_TAG_OPEN",t[t.SCRIPT_DATA_END_TAG_NAME=16]="SCRIPT_DATA_END_TAG_NAME",t[t.SCRIPT_DATA_ESCAPE_START=17]="SCRIPT_DATA_ESCAPE_START",t[t.SCRIPT_DATA_ESCAPE_START_DASH=18]="SCRIPT_DATA_ESCAPE_START_DASH",t[t.SCRIPT_DATA_ESCAPED=19]="SCRIPT_DATA_ESCAPED",t[t.SCRIPT_DATA_ESCAPED_DASH=20]="SCRIPT_DATA_ESCAPED_DASH",t[t.SCRIPT_DATA_ESCAPED_DASH_DASH=21]="SCRIPT_DATA_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN=22]="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_OPEN=23]="SCRIPT_DATA_ESCAPED_END_TAG_OPEN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_NAME=24]="SCRIPT_DATA_ESCAPED_END_TAG_NAME",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_START=25]="SCRIPT_DATA_DOUBLE_ESCAPE_START",t[t.SCRIPT_DATA_DOUBLE_ESCAPED=26]="SCRIPT_DATA_DOUBLE_ESCAPED",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH=27]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH=28]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN=29]="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_END=30]="SCRIPT_DATA_DOUBLE_ESCAPE_END",t[t.BEFORE_ATTRIBUTE_NAME=31]="BEFORE_ATTRIBUTE_NAME",t[t.ATTRIBUTE_NAME=32]="ATTRIBUTE_NAME",t[t.AFTER_ATTRIBUTE_NAME=33]="AFTER_ATTRIBUTE_NAME",t[t.BEFORE_ATTRIBUTE_VALUE=34]="BEFORE_ATTRIBUTE_VALUE",t[t.ATTRIBUTE_VALUE_DOUBLE_QUOTED=35]="ATTRIBUTE_VALUE_DOUBLE_QUOTED",t[t.ATTRIBUTE_VALUE_SINGLE_QUOTED=36]="ATTRIBUTE_VALUE_SINGLE_QUOTED",t[t.ATTRIBUTE_VALUE_UNQUOTED=37]="ATTRIBUTE_VALUE_UNQUOTED",t[t.AFTER_ATTRIBUTE_VALUE_QUOTED=38]="AFTER_ATTRIBUTE_VALUE_QUOTED",t[t.SELF_CLOSING_START_TAG=39]="SELF_CLOSING_START_TAG",t[t.BOGUS_COMMENT=40]="BOGUS_COMMENT",t[t.MARKUP_DECLARATION_OPEN=41]="MARKUP_DECLARATION_OPEN",t[t.COMMENT_START=42]="COMMENT_START",t[t.COMMENT_START_DASH=43]="COMMENT_START_DASH",t[t.COMMENT=44]="COMMENT",t[t.COMMENT_LESS_THAN_SIGN=45]="COMMENT_LESS_THAN_SIGN",t[t.COMMENT_LESS_THAN_SIGN_BANG=46]="COMMENT_LESS_THAN_SIGN_BANG",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH=47]="COMMENT_LESS_THAN_SIGN_BANG_DASH",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH=48]="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH",t[t.COMMENT_END_DASH=49]="COMMENT_END_DASH",t[t.COMMENT_END=50]="COMMENT_END",t[t.COMMENT_END_BANG=51]="COMMENT_END_BANG",t[t.DOCTYPE=52]="DOCTYPE",t[t.BEFORE_DOCTYPE_NAME=53]="BEFORE_DOCTYPE_NAME",t[t.DOCTYPE_NAME=54]="DOCTYPE_NAME",t[t.AFTER_DOCTYPE_NAME=55]="AFTER_DOCTYPE_NAME",t[t.AFTER_DOCTYPE_PUBLIC_KEYWORD=56]="AFTER_DOCTYPE_PUBLIC_KEYWORD",t[t.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER=57]="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER",t[t.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED=58]="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED=59]="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_PUBLIC_IDENTIFIER=60]="AFTER_DOCTYPE_PUBLIC_IDENTIFIER",t[t.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS=61]="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS",t[t.AFTER_DOCTYPE_SYSTEM_KEYWORD=62]="AFTER_DOCTYPE_SYSTEM_KEYWORD",t[t.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER=63]="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER",t[t.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED=64]="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED=65]="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_SYSTEM_IDENTIFIER=66]="AFTER_DOCTYPE_SYSTEM_IDENTIFIER",t[t.BOGUS_DOCTYPE=67]="BOGUS_DOCTYPE",t[t.CDATA_SECTION=68]="CDATA_SECTION",t[t.CDATA_SECTION_BRACKET=69]="CDATA_SECTION_BRACKET",t[t.CDATA_SECTION_END=70]="CDATA_SECTION_END",t[t.CHARACTER_REFERENCE=71]="CHARACTER_REFERENCE",t[t.NAMED_CHARACTER_REFERENCE=72]="NAMED_CHARACTER_REFERENCE",t[t.AMBIGUOUS_AMPERSAND=73]="AMBIGUOUS_AMPERSAND",t[t.NUMERIC_CHARACTER_REFERENCE=74]="NUMERIC_CHARACTER_REFERENCE",t[t.HEXADEMICAL_CHARACTER_REFERENCE_START=75]="HEXADEMICAL_CHARACTER_REFERENCE_START",t[t.HEXADEMICAL_CHARACTER_REFERENCE=76]="HEXADEMICAL_CHARACTER_REFERENCE",t[t.DECIMAL_CHARACTER_REFERENCE=77]="DECIMAL_CHARACTER_REFERENCE",t[t.NUMERIC_CHARACTER_REFERENCE_END=78]="NUMERIC_CHARACTER_REFERENCE_END"}(bi||(bi={}));const Ai={DATA:bi.DATA,RCDATA:bi.RCDATA,RAWTEXT:bi.RAWTEXT,SCRIPT_DATA:bi.SCRIPT_DATA,PLAINTEXT:bi.PLAINTEXT,CDATA_SECTION:bi.CDATA_SECTION};function vi(t){return t>=Vr.DIGIT_0&&t<=Vr.DIGIT_9}function _i(t){return t>=Vr.LATIN_CAPITAL_A&&t<=Vr.LATIN_CAPITAL_Z}function Ei(t){return function(t){return t>=Vr.LATIN_SMALL_A&&t<=Vr.LATIN_SMALL_Z}(t)||_i(t)}function Si(t){return Ei(t)||vi(t)}function Ti(t){return t>=Vr.LATIN_CAPITAL_A&&t<=Vr.LATIN_CAPITAL_F}function xi(t){return t>=Vr.LATIN_SMALL_A&&t<=Vr.LATIN_SMALL_F}function Ci(t){return t+32}function Ii(t){return t===Vr.SPACE||t===Vr.LINE_FEED||t===Vr.TABULATION||t===Vr.FORM_FEED}function Ri(t){return Ii(t)||t===Vr.SOLIDUS||t===Vr.GREATER_THAN_SIGN}class ki{constructor(t,e){this.options=t,this.handler=e,this.paused=!1,this.inLoop=!1,this.inForeignNode=!1,this.lastStartTagName="",this.active=!1,this.state=bi.DATA,this.returnState=bi.DATA,this.charRefCode=-1,this.consumedAfterSnapshot=-1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr={name:"",value:""},this.preprocessor=new Zr(e),this.currentLocation=this.getCurrentLocation(-1)}_err(t){var e,r;null===(r=(e=this.handler).onParseError)||void 0===r||r.call(e,this.preprocessor.getError(t))}getCurrentLocation(t){return this.options.sourceCodeLocationInfo?{startLine:this.preprocessor.line,startCol:this.preprocessor.col-t,startOffset:this.preprocessor.offset-t,endLine:-1,endCol:-1,endOffset:-1}:null}_runParsingLoop(){if(!this.inLoop){for(this.inLoop=!0;this.active&&!this.paused;){this.consumedAfterSnapshot=0;const t=this._consume();this._ensureHibernation()||this._callState(t)}this.inLoop=!1}}pause(){this.paused=!0}resume(t){if(!this.paused)throw new Error("Parser was already resumed");this.paused=!1,this.inLoop||(this._runParsingLoop(),this.paused||null==t||t())}write(t,e,r){this.active=!0,this.preprocessor.write(t,e),this._runParsingLoop(),this.paused||null==r||r()}insertHtmlAtCurrentPos(t){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(t),this._runParsingLoop()}_ensureHibernation(){return!!this.preprocessor.endOfChunkHit&&(this._unconsume(this.consumedAfterSnapshot),this.active=!1,!0)}_consume(){return this.consumedAfterSnapshot++,this.preprocessor.advance()}_unconsume(t){this.consumedAfterSnapshot-=t,this.preprocessor.retreat(t)}_reconsumeInState(t,e){this.state=t,this._callState(e)}_advanceBy(t){this.consumedAfterSnapshot+=t;for(let e=0;e<t;e++)this.preprocessor.advance()}_consumeSequenceIfMatch(t,e){return!!this.preprocessor.startsWith(t,e)&&(this._advanceBy(t.length-1),!0)}_createStartTagToken(){this.currentToken={type:Xr.START_TAG,tagName:"",tagID:ui.UNKNOWN,selfClosing:!1,ackSelfClosing:!1,attrs:[],location:this.getCurrentLocation(1)}}_createEndTagToken(){this.currentToken={type:Xr.END_TAG,tagName:"",tagID:ui.UNKNOWN,selfClosing:!1,ackSelfClosing:!1,attrs:[],location:this.getCurrentLocation(2)}}_createCommentToken(t){this.currentToken={type:Xr.COMMENT,data:"",location:this.getCurrentLocation(t)}}_createDoctypeToken(t){this.currentToken={type:Xr.DOCTYPE,name:t,forceQuirks:!1,publicId:null,systemId:null,location:this.currentLocation}}_createCharacterToken(t,e){this.currentCharacterToken={type:t,chars:e,location:this.currentLocation}}_createAttr(t){this.currentAttr={name:t,value:""},this.currentLocation=this.getCurrentLocation(0)}_leaveAttrName(){var t,e;const r=this.currentToken;null===function(t,e){for(let r=t.attrs.length-1;r>=0;r--)if(t.attrs[r].name===e)return t.attrs[r].value;return null}(r,this.currentAttr.name)?(r.attrs.push(this.currentAttr),r.location&&this.currentLocation&&((null!==(t=(e=r.location).attrs)&&void 0!==t?t:e.attrs=Object.create(null))[this.currentAttr.name]=this.currentLocation,this._leaveAttrValue())):this._err(Jr.duplicateAttribute)}_leaveAttrValue(){this.currentLocation&&(this.currentLocation.endLine=this.preprocessor.line,this.currentLocation.endCol=this.preprocessor.col,this.currentLocation.endOffset=this.preprocessor.offset)}prepareToken(t){this._emitCurrentCharacterToken(t.location),this.currentToken=null,t.location&&(t.location.endLine=this.preprocessor.line,t.location.endCol=this.preprocessor.col+1,t.location.endOffset=this.preprocessor.offset+1),this.currentLocation=this.getCurrentLocation(-1)}emitCurrentTagToken(){const t=this.currentToken;this.prepareToken(t),t.tagID=gi(t.tagName),t.type===Xr.START_TAG?(this.lastStartTagName=t.tagName,this.handler.onStartTag(t)):(t.attrs.length>0&&this._err(Jr.endTagWithAttributes),t.selfClosing&&this._err(Jr.endTagWithTrailingSolidus),this.handler.onEndTag(t)),this.preprocessor.dropParsedChunk()}emitCurrentComment(t){this.prepareToken(t),this.handler.onComment(t),this.preprocessor.dropParsedChunk()}emitCurrentDoctype(t){this.prepareToken(t),this.handler.onDoctype(t),this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(t){if(this.currentCharacterToken){switch(t&&this.currentCharacterToken.location&&(this.currentCharacterToken.location.endLine=t.startLine,this.currentCharacterToken.location.endCol=t.startCol,this.currentCharacterToken.location.endOffset=t.startOffset),this.currentCharacterToken.type){case Xr.CHARACTER:this.handler.onCharacter(this.currentCharacterToken);break;case Xr.NULL_CHARACTER:this.handler.onNullCharacter(this.currentCharacterToken);break;case Xr.WHITESPACE_CHARACTER:this.handler.onWhitespaceCharacter(this.currentCharacterToken)}this.currentCharacterToken=null}}_emitEOFToken(){const t=this.getCurrentLocation(0);t&&(t.endLine=t.startLine,t.endCol=t.startCol,t.endOffset=t.startOffset),this._emitCurrentCharacterToken(t),this.handler.onEof({type:Xr.EOF,location:t}),this.active=!1}_appendCharToCurrentCharacterToken(t,e){if(this.currentCharacterToken){if(this.currentCharacterToken.type===t)return void(this.currentCharacterToken.chars+=e);this.currentLocation=this.getCurrentLocation(0),this._emitCurrentCharacterToken(this.currentLocation),this.preprocessor.dropParsedChunk()}this._createCharacterToken(t,e)}_emitCodePoint(t){const e=Ii(t)?Xr.WHITESPACE_CHARACTER:t===Vr.NULL?Xr.NULL_CHARACTER:Xr.CHARACTER;this._appendCharToCurrentCharacterToken(e,String.fromCodePoint(t))}_emitChars(t){this._appendCharToCurrentCharacterToken(Xr.CHARACTER,t)}_matchNamedCharacterReference(t){let e=null,r=0,i=!1;for(let s=0,o=$r[0];s>=0&&(s=di($r,o,s+1,t),!(s<0));t=this._consume()){r+=1,o=$r[s];const a=o&oi.VALUE_LENGTH;if(a){const o=(a>>14)-1;if(t!==Vr.SEMICOLON&&this._isCharacterReferenceInAttribute()&&((n=this.preprocessor.peek(1))===Vr.EQUALS_SIGN||Si(n))?(e=[Vr.AMPERSAND],s+=o):(e=0===o?[$r[s]&~oi.VALUE_LENGTH]:1===o?[$r[++s]]:[$r[++s],$r[++s]],r=0,i=t!==Vr.SEMICOLON),0===o){this._consume();break}}}var n;return this._unconsume(r),i&&!this.preprocessor.endOfChunkHit&&this._err(Jr.missingSemicolonAfterCharacterReference),this._unconsume(1),e}_isCharacterReferenceInAttribute(){return this.returnState===bi.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===bi.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===bi.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(t){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(t):this._emitCodePoint(t)}_callState(t){switch(this.state){case bi.DATA:this._stateData(t);break;case bi.RCDATA:this._stateRcdata(t);break;case bi.RAWTEXT:this._stateRawtext(t);break;case bi.SCRIPT_DATA:this._stateScriptData(t);break;case bi.PLAINTEXT:this._statePlaintext(t);break;case bi.TAG_OPEN:this._stateTagOpen(t);break;case bi.END_TAG_OPEN:this._stateEndTagOpen(t);break;case bi.TAG_NAME:this._stateTagName(t);break;case bi.RCDATA_LESS_THAN_SIGN:this._stateRcdataLessThanSign(t);break;case bi.RCDATA_END_TAG_OPEN:this._stateRcdataEndTagOpen(t);break;case bi.RCDATA_END_TAG_NAME:this._stateRcdataEndTagName(t);break;case bi.RAWTEXT_LESS_THAN_SIGN:this._stateRawtextLessThanSign(t);break;case bi.RAWTEXT_END_TAG_OPEN:this._stateRawtextEndTagOpen(t);break;case bi.RAWTEXT_END_TAG_NAME:this._stateRawtextEndTagName(t);break;case bi.SCRIPT_DATA_LESS_THAN_SIGN:this._stateScriptDataLessThanSign(t);break;case bi.SCRIPT_DATA_END_TAG_OPEN:this._stateScriptDataEndTagOpen(t);break;case bi.SCRIPT_DATA_END_TAG_NAME:this._stateScriptDataEndTagName(t);break;case bi.SCRIPT_DATA_ESCAPE_START:this._stateScriptDataEscapeStart(t);break;case bi.SCRIPT_DATA_ESCAPE_START_DASH:this._stateScriptDataEscapeStartDash(t);break;case bi.SCRIPT_DATA_ESCAPED:this._stateScriptDataEscaped(t);break;case bi.SCRIPT_DATA_ESCAPED_DASH:this._stateScriptDataEscapedDash(t);break;case bi.SCRIPT_DATA_ESCAPED_DASH_DASH:this._stateScriptDataEscapedDashDash(t);break;case bi.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:this._stateScriptDataEscapedLessThanSign(t);break;case bi.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:this._stateScriptDataEscapedEndTagOpen(t);break;case bi.SCRIPT_DATA_ESCAPED_END_TAG_NAME:this._stateScriptDataEscapedEndTagName(t);break;case bi.SCRIPT_DATA_DOUBLE_ESCAPE_START:this._stateScriptDataDoubleEscapeStart(t);break;case bi.SCRIPT_DATA_DOUBLE_ESCAPED:this._stateScriptDataDoubleEscaped(t);break;case bi.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:this._stateScriptDataDoubleEscapedDash(t);break;case bi.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:this._stateScriptDataDoubleEscapedDashDash(t);break;case bi.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:this._stateScriptDataDoubleEscapedLessThanSign(t);break;case bi.SCRIPT_DATA_DOUBLE_ESCAPE_END:this._stateScriptDataDoubleEscapeEnd(t);break;case bi.BEFORE_ATTRIBUTE_NAME:this._stateBeforeAttributeName(t);break;case bi.ATTRIBUTE_NAME:this._stateAttributeName(t);break;case bi.AFTER_ATTRIBUTE_NAME:this._stateAfterAttributeName(t);break;case bi.BEFORE_ATTRIBUTE_VALUE:this._stateBeforeAttributeValue(t);break;case bi.ATTRIBUTE_VALUE_DOUBLE_QUOTED:this._stateAttributeValueDoubleQuoted(t);break;case bi.ATTRIBUTE_VALUE_SINGLE_QUOTED:this._stateAttributeValueSingleQuoted(t);break;case bi.ATTRIBUTE_VALUE_UNQUOTED:this._stateAttributeValueUnquoted(t);break;case bi.AFTER_ATTRIBUTE_VALUE_QUOTED:this._stateAfterAttributeValueQuoted(t);break;case bi.SELF_CLOSING_START_TAG:this._stateSelfClosingStartTag(t);break;case bi.BOGUS_COMMENT:this._stateBogusComment(t);break;case bi.MARKUP_DECLARATION_OPEN:this._stateMarkupDeclarationOpen(t);break;case bi.COMMENT_START:this._stateCommentStart(t);break;case bi.COMMENT_START_DASH:this._stateCommentStartDash(t);break;case bi.COMMENT:this._stateComment(t);break;case bi.COMMENT_LESS_THAN_SIGN:this._stateCommentLessThanSign(t);break;case bi.COMMENT_LESS_THAN_SIGN_BANG:this._stateCommentLessThanSignBang(t);break;case bi.COMMENT_LESS_THAN_SIGN_BANG_DASH:this._stateCommentLessThanSignBangDash(t);break;case bi.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:this._stateCommentLessThanSignBangDashDash(t);break;case bi.COMMENT_END_DASH:this._stateCommentEndDash(t);break;case bi.COMMENT_END:this._stateCommentEnd(t);break;case bi.COMMENT_END_BANG:this._stateCommentEndBang(t);break;case bi.DOCTYPE:this._stateDoctype(t);break;case bi.BEFORE_DOCTYPE_NAME:this._stateBeforeDoctypeName(t);break;case bi.DOCTYPE_NAME:this._stateDoctypeName(t);break;case bi.AFTER_DOCTYPE_NAME:this._stateAfterDoctypeName(t);break;case bi.AFTER_DOCTYPE_PUBLIC_KEYWORD:this._stateAfterDoctypePublicKeyword(t);break;case bi.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:this._stateBeforeDoctypePublicIdentifier(t);break;case bi.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:this._stateDoctypePublicIdentifierDoubleQuoted(t);break;case bi.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:this._stateDoctypePublicIdentifierSingleQuoted(t);break;case bi.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:this._stateAfterDoctypePublicIdentifier(t);break;case bi.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:this._stateBetweenDoctypePublicAndSystemIdentifiers(t);break;case bi.AFTER_DOCTYPE_SYSTEM_KEYWORD:this._stateAfterDoctypeSystemKeyword(t);break;case bi.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:this._stateBeforeDoctypeSystemIdentifier(t);break;case bi.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:this._stateDoctypeSystemIdentifierDoubleQuoted(t);break;case bi.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:this._stateDoctypeSystemIdentifierSingleQuoted(t);break;case bi.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:this._stateAfterDoctypeSystemIdentifier(t);break;case bi.BOGUS_DOCTYPE:this._stateBogusDoctype(t);break;case bi.CDATA_SECTION:this._stateCdataSection(t);break;case bi.CDATA_SECTION_BRACKET:this._stateCdataSectionBracket(t);break;case bi.CDATA_SECTION_END:this._stateCdataSectionEnd(t);break;case bi.CHARACTER_REFERENCE:this._stateCharacterReference(t);break;case bi.NAMED_CHARACTER_REFERENCE:this._stateNamedCharacterReference(t);break;case bi.AMBIGUOUS_AMPERSAND:this._stateAmbiguousAmpersand(t);break;case bi.NUMERIC_CHARACTER_REFERENCE:this._stateNumericCharacterReference(t);break;case bi.HEXADEMICAL_CHARACTER_REFERENCE_START:this._stateHexademicalCharacterReferenceStart(t);break;case bi.HEXADEMICAL_CHARACTER_REFERENCE:this._stateHexademicalCharacterReference(t);break;case bi.DECIMAL_CHARACTER_REFERENCE:this._stateDecimalCharacterReference(t);break;case bi.NUMERIC_CHARACTER_REFERENCE_END:this._stateNumericCharacterReferenceEnd(t);break;default:throw new Error("Unknown state")}}_stateData(t){switch(t){case Vr.LESS_THAN_SIGN:this.state=bi.TAG_OPEN;break;case Vr.AMPERSAND:this.returnState=bi.DATA,this.state=bi.CHARACTER_REFERENCE;break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this._emitCodePoint(t);break;case Vr.EOF:this._emitEOFToken();break;default:this._emitCodePoint(t)}}_stateRcdata(t){switch(t){case Vr.AMPERSAND:this.returnState=bi.RCDATA,this.state=bi.CHARACTER_REFERENCE;break;case Vr.LESS_THAN_SIGN:this.state=bi.RCDATA_LESS_THAN_SIGN;break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this._emitChars(Wr);break;case Vr.EOF:this._emitEOFToken();break;default:this._emitCodePoint(t)}}_stateRawtext(t){switch(t){case Vr.LESS_THAN_SIGN:this.state=bi.RAWTEXT_LESS_THAN_SIGN;break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this._emitChars(Wr);break;case Vr.EOF:this._emitEOFToken();break;default:this._emitCodePoint(t)}}_stateScriptData(t){switch(t){case Vr.LESS_THAN_SIGN:this.state=bi.SCRIPT_DATA_LESS_THAN_SIGN;break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this._emitChars(Wr);break;case Vr.EOF:this._emitEOFToken();break;default:this._emitCodePoint(t)}}_statePlaintext(t){switch(t){case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this._emitChars(Wr);break;case Vr.EOF:this._emitEOFToken();break;default:this._emitCodePoint(t)}}_stateTagOpen(t){if(Ei(t))this._createStartTagToken(),this.state=bi.TAG_NAME,this._stateTagName(t);else switch(t){case Vr.EXCLAMATION_MARK:this.state=bi.MARKUP_DECLARATION_OPEN;break;case Vr.SOLIDUS:this.state=bi.END_TAG_OPEN;break;case Vr.QUESTION_MARK:this._err(Jr.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=bi.BOGUS_COMMENT,this._stateBogusComment(t);break;case Vr.EOF:this._err(Jr.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken();break;default:this._err(Jr.invalidFirstCharacterOfTagName),this._emitChars("<"),this.state=bi.DATA,this._stateData(t)}}_stateEndTagOpen(t){if(Ei(t))this._createEndTagToken(),this.state=bi.TAG_NAME,this._stateTagName(t);else switch(t){case Vr.GREATER_THAN_SIGN:this._err(Jr.missingEndTagName),this.state=bi.DATA;break;case Vr.EOF:this._err(Jr.eofBeforeTagName),this._emitChars("</"),this._emitEOFToken();break;default:this._err(Jr.invalidFirstCharacterOfTagName),this._createCommentToken(2),this.state=bi.BOGUS_COMMENT,this._stateBogusComment(t)}}_stateTagName(t){const e=this.currentToken;switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:this.state=bi.BEFORE_ATTRIBUTE_NAME;break;case Vr.SOLIDUS:this.state=bi.SELF_CLOSING_START_TAG;break;case Vr.GREATER_THAN_SIGN:this.state=bi.DATA,this.emitCurrentTagToken();break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),e.tagName+=Wr;break;case Vr.EOF:this._err(Jr.eofInTag),this._emitEOFToken();break;default:e.tagName+=String.fromCodePoint(_i(t)?Ci(t):t)}}_stateRcdataLessThanSign(t){t===Vr.SOLIDUS?this.state=bi.RCDATA_END_TAG_OPEN:(this._emitChars("<"),this.state=bi.RCDATA,this._stateRcdata(t))}_stateRcdataEndTagOpen(t){Ei(t)?(this.state=bi.RCDATA_END_TAG_NAME,this._stateRcdataEndTagName(t)):(this._emitChars("</"),this.state=bi.RCDATA,this._stateRcdata(t))}handleSpecialEndTag(t){if(!this.preprocessor.startsWith(this.lastStartTagName,!1))return!this._ensureHibernation();switch(this._createEndTagToken(),this.currentToken.tagName=this.lastStartTagName,this.preprocessor.peek(this.lastStartTagName.length)){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:return this._advanceBy(this.lastStartTagName.length),this.state=bi.BEFORE_ATTRIBUTE_NAME,!1;case Vr.SOLIDUS:return this._advanceBy(this.lastStartTagName.length),this.state=bi.SELF_CLOSING_START_TAG,!1;case Vr.GREATER_THAN_SIGN:return this._advanceBy(this.lastStartTagName.length),this.emitCurrentTagToken(),this.state=bi.DATA,!1;default:return!this._ensureHibernation()}}_stateRcdataEndTagName(t){this.handleSpecialEndTag(t)&&(this._emitChars("</"),this.state=bi.RCDATA,this._stateRcdata(t))}_stateRawtextLessThanSign(t){t===Vr.SOLIDUS?this.state=bi.RAWTEXT_END_TAG_OPEN:(this._emitChars("<"),this.state=bi.RAWTEXT,this._stateRawtext(t))}_stateRawtextEndTagOpen(t){Ei(t)?(this.state=bi.RAWTEXT_END_TAG_NAME,this._stateRawtextEndTagName(t)):(this._emitChars("</"),this.state=bi.RAWTEXT,this._stateRawtext(t))}_stateRawtextEndTagName(t){this.handleSpecialEndTag(t)&&(this._emitChars("</"),this.state=bi.RAWTEXT,this._stateRawtext(t))}_stateScriptDataLessThanSign(t){switch(t){case Vr.SOLIDUS:this.state=bi.SCRIPT_DATA_END_TAG_OPEN;break;case Vr.EXCLAMATION_MARK:this.state=bi.SCRIPT_DATA_ESCAPE_START,this._emitChars("<!");break;default:this._emitChars("<"),this.state=bi.SCRIPT_DATA,this._stateScriptData(t)}}_stateScriptDataEndTagOpen(t){Ei(t)?(this.state=bi.SCRIPT_DATA_END_TAG_NAME,this._stateScriptDataEndTagName(t)):(this._emitChars("</"),this.state=bi.SCRIPT_DATA,this._stateScriptData(t))}_stateScriptDataEndTagName(t){this.handleSpecialEndTag(t)&&(this._emitChars("</"),this.state=bi.SCRIPT_DATA,this._stateScriptData(t))}_stateScriptDataEscapeStart(t){t===Vr.HYPHEN_MINUS?(this.state=bi.SCRIPT_DATA_ESCAPE_START_DASH,this._emitChars("-")):(this.state=bi.SCRIPT_DATA,this._stateScriptData(t))}_stateScriptDataEscapeStartDash(t){t===Vr.HYPHEN_MINUS?(this.state=bi.SCRIPT_DATA_ESCAPED_DASH_DASH,this._emitChars("-")):(this.state=bi.SCRIPT_DATA,this._stateScriptData(t))}_stateScriptDataEscaped(t){switch(t){case Vr.HYPHEN_MINUS:this.state=bi.SCRIPT_DATA_ESCAPED_DASH,this._emitChars("-");break;case Vr.LESS_THAN_SIGN:this.state=bi.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this._emitChars(Wr);break;case Vr.EOF:this._err(Jr.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this._emitCodePoint(t)}}_stateScriptDataEscapedDash(t){switch(t){case Vr.HYPHEN_MINUS:this.state=bi.SCRIPT_DATA_ESCAPED_DASH_DASH,this._emitChars("-");break;case Vr.LESS_THAN_SIGN:this.state=bi.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this.state=bi.SCRIPT_DATA_ESCAPED,this._emitChars(Wr);break;case Vr.EOF:this._err(Jr.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=bi.SCRIPT_DATA_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataEscapedDashDash(t){switch(t){case Vr.HYPHEN_MINUS:this._emitChars("-");break;case Vr.LESS_THAN_SIGN:this.state=bi.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break;case Vr.GREATER_THAN_SIGN:this.state=bi.SCRIPT_DATA,this._emitChars(">");break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this.state=bi.SCRIPT_DATA_ESCAPED,this._emitChars(Wr);break;case Vr.EOF:this._err(Jr.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=bi.SCRIPT_DATA_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataEscapedLessThanSign(t){t===Vr.SOLIDUS?this.state=bi.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:Ei(t)?(this._emitChars("<"),this.state=bi.SCRIPT_DATA_DOUBLE_ESCAPE_START,this._stateScriptDataDoubleEscapeStart(t)):(this._emitChars("<"),this.state=bi.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(t))}_stateScriptDataEscapedEndTagOpen(t){Ei(t)?(this.state=bi.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(t)):(this._emitChars("</"),this.state=bi.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(t))}_stateScriptDataEscapedEndTagName(t){this.handleSpecialEndTag(t)&&(this._emitChars("</"),this.state=bi.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(t))}_stateScriptDataDoubleEscapeStart(t){if(this.preprocessor.startsWith(qr,!1)&&Ri(this.preprocessor.peek(6))){this._emitCodePoint(t);for(let t=0;t<6;t++)this._emitCodePoint(this._consume());this.state=bi.SCRIPT_DATA_DOUBLE_ESCAPED}else this._ensureHibernation()||(this.state=bi.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(t))}_stateScriptDataDoubleEscaped(t){switch(t){case Vr.HYPHEN_MINUS:this.state=bi.SCRIPT_DATA_DOUBLE_ESCAPED_DASH,this._emitChars("-");break;case Vr.LESS_THAN_SIGN:this.state=bi.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this._emitChars(Wr);break;case Vr.EOF:this._err(Jr.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this._emitCodePoint(t)}}_stateScriptDataDoubleEscapedDash(t){switch(t){case Vr.HYPHEN_MINUS:this.state=bi.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH,this._emitChars("-");break;case Vr.LESS_THAN_SIGN:this.state=bi.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this.state=bi.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(Wr);break;case Vr.EOF:this._err(Jr.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=bi.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataDoubleEscapedDashDash(t){switch(t){case Vr.HYPHEN_MINUS:this._emitChars("-");break;case Vr.LESS_THAN_SIGN:this.state=bi.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break;case Vr.GREATER_THAN_SIGN:this.state=bi.SCRIPT_DATA,this._emitChars(">");break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this.state=bi.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(Wr);break;case Vr.EOF:this._err(Jr.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=bi.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataDoubleEscapedLessThanSign(t){t===Vr.SOLIDUS?(this.state=bi.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars("/")):(this.state=bi.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(t))}_stateScriptDataDoubleEscapeEnd(t){if(this.preprocessor.startsWith(qr,!1)&&Ri(this.preprocessor.peek(6))){this._emitCodePoint(t);for(let t=0;t<6;t++)this._emitCodePoint(this._consume());this.state=bi.SCRIPT_DATA_ESCAPED}else this._ensureHibernation()||(this.state=bi.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(t))}_stateBeforeAttributeName(t){switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:break;case Vr.SOLIDUS:case Vr.GREATER_THAN_SIGN:case Vr.EOF:this.state=bi.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(t);break;case Vr.EQUALS_SIGN:this._err(Jr.unexpectedEqualsSignBeforeAttributeName),this._createAttr("="),this.state=bi.ATTRIBUTE_NAME;break;default:this._createAttr(""),this.state=bi.ATTRIBUTE_NAME,this._stateAttributeName(t)}}_stateAttributeName(t){switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:case Vr.SOLIDUS:case Vr.GREATER_THAN_SIGN:case Vr.EOF:this._leaveAttrName(),this.state=bi.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(t);break;case Vr.EQUALS_SIGN:this._leaveAttrName(),this.state=bi.BEFORE_ATTRIBUTE_VALUE;break;case Vr.QUOTATION_MARK:case Vr.APOSTROPHE:case Vr.LESS_THAN_SIGN:this._err(Jr.unexpectedCharacterInAttributeName),this.currentAttr.name+=String.fromCodePoint(t);break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this.currentAttr.name+=Wr;break;default:this.currentAttr.name+=String.fromCodePoint(_i(t)?Ci(t):t)}}_stateAfterAttributeName(t){switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:break;case Vr.SOLIDUS:this.state=bi.SELF_CLOSING_START_TAG;break;case Vr.EQUALS_SIGN:this.state=bi.BEFORE_ATTRIBUTE_VALUE;break;case Vr.GREATER_THAN_SIGN:this.state=bi.DATA,this.emitCurrentTagToken();break;case Vr.EOF:this._err(Jr.eofInTag),this._emitEOFToken();break;default:this._createAttr(""),this.state=bi.ATTRIBUTE_NAME,this._stateAttributeName(t)}}_stateBeforeAttributeValue(t){switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:break;case Vr.QUOTATION_MARK:this.state=bi.ATTRIBUTE_VALUE_DOUBLE_QUOTED;break;case Vr.APOSTROPHE:this.state=bi.ATTRIBUTE_VALUE_SINGLE_QUOTED;break;case Vr.GREATER_THAN_SIGN:this._err(Jr.missingAttributeValue),this.state=bi.DATA,this.emitCurrentTagToken();break;default:this.state=bi.ATTRIBUTE_VALUE_UNQUOTED,this._stateAttributeValueUnquoted(t)}}_stateAttributeValueDoubleQuoted(t){switch(t){case Vr.QUOTATION_MARK:this.state=bi.AFTER_ATTRIBUTE_VALUE_QUOTED;break;case Vr.AMPERSAND:this.returnState=bi.ATTRIBUTE_VALUE_DOUBLE_QUOTED,this.state=bi.CHARACTER_REFERENCE;break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this.currentAttr.value+=Wr;break;case Vr.EOF:this._err(Jr.eofInTag),this._emitEOFToken();break;default:this.currentAttr.value+=String.fromCodePoint(t)}}_stateAttributeValueSingleQuoted(t){switch(t){case Vr.APOSTROPHE:this.state=bi.AFTER_ATTRIBUTE_VALUE_QUOTED;break;case Vr.AMPERSAND:this.returnState=bi.ATTRIBUTE_VALUE_SINGLE_QUOTED,this.state=bi.CHARACTER_REFERENCE;break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this.currentAttr.value+=Wr;break;case Vr.EOF:this._err(Jr.eofInTag),this._emitEOFToken();break;default:this.currentAttr.value+=String.fromCodePoint(t)}}_stateAttributeValueUnquoted(t){switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:this._leaveAttrValue(),this.state=bi.BEFORE_ATTRIBUTE_NAME;break;case Vr.AMPERSAND:this.returnState=bi.ATTRIBUTE_VALUE_UNQUOTED,this.state=bi.CHARACTER_REFERENCE;break;case Vr.GREATER_THAN_SIGN:this._leaveAttrValue(),this.state=bi.DATA,this.emitCurrentTagToken();break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this.currentAttr.value+=Wr;break;case Vr.QUOTATION_MARK:case Vr.APOSTROPHE:case Vr.LESS_THAN_SIGN:case Vr.EQUALS_SIGN:case Vr.GRAVE_ACCENT:this._err(Jr.unexpectedCharacterInUnquotedAttributeValue),this.currentAttr.value+=String.fromCodePoint(t);break;case Vr.EOF:this._err(Jr.eofInTag),this._emitEOFToken();break;default:this.currentAttr.value+=String.fromCodePoint(t)}}_stateAfterAttributeValueQuoted(t){switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:this._leaveAttrValue(),this.state=bi.BEFORE_ATTRIBUTE_NAME;break;case Vr.SOLIDUS:this._leaveAttrValue(),this.state=bi.SELF_CLOSING_START_TAG;break;case Vr.GREATER_THAN_SIGN:this._leaveAttrValue(),this.state=bi.DATA,this.emitCurrentTagToken();break;case Vr.EOF:this._err(Jr.eofInTag),this._emitEOFToken();break;default:this._err(Jr.missingWhitespaceBetweenAttributes),this.state=bi.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(t)}}_stateSelfClosingStartTag(t){switch(t){case Vr.GREATER_THAN_SIGN:this.currentToken.selfClosing=!0,this.state=bi.DATA,this.emitCurrentTagToken();break;case Vr.EOF:this._err(Jr.eofInTag),this._emitEOFToken();break;default:this._err(Jr.unexpectedSolidusInTag),this.state=bi.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(t)}}_stateBogusComment(t){const e=this.currentToken;switch(t){case Vr.GREATER_THAN_SIGN:this.state=bi.DATA,this.emitCurrentComment(e);break;case Vr.EOF:this.emitCurrentComment(e),this._emitEOFToken();break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),e.data+=Wr;break;default:e.data+=String.fromCodePoint(t)}}_stateMarkupDeclarationOpen(t){this._consumeSequenceIfMatch("--",!0)?(this._createCommentToken(3),this.state=bi.COMMENT_START):this._consumeSequenceIfMatch(zr,!1)?(this.currentLocation=this.getCurrentLocation(8),this.state=bi.DOCTYPE):this._consumeSequenceIfMatch(Gr,!0)?this.inForeignNode?this.state=bi.CDATA_SECTION:(this._err(Jr.cdataInHtmlContent),this._createCommentToken(8),this.currentToken.data="[CDATA[",this.state=bi.BOGUS_COMMENT):this._ensureHibernation()||(this._err(Jr.incorrectlyOpenedComment),this._createCommentToken(2),this.state=bi.BOGUS_COMMENT,this._stateBogusComment(t))}_stateCommentStart(t){switch(t){case Vr.HYPHEN_MINUS:this.state=bi.COMMENT_START_DASH;break;case Vr.GREATER_THAN_SIGN:{this._err(Jr.abruptClosingOfEmptyComment),this.state=bi.DATA;const t=this.currentToken;this.emitCurrentComment(t);break}default:this.state=bi.COMMENT,this._stateComment(t)}}_stateCommentStartDash(t){const e=this.currentToken;switch(t){case Vr.HYPHEN_MINUS:this.state=bi.COMMENT_END;break;case Vr.GREATER_THAN_SIGN:this._err(Jr.abruptClosingOfEmptyComment),this.state=bi.DATA,this.emitCurrentComment(e);break;case Vr.EOF:this._err(Jr.eofInComment),this.emitCurrentComment(e),this._emitEOFToken();break;default:e.data+="-",this.state=bi.COMMENT,this._stateComment(t)}}_stateComment(t){const e=this.currentToken;switch(t){case Vr.HYPHEN_MINUS:this.state=bi.COMMENT_END_DASH;break;case Vr.LESS_THAN_SIGN:e.data+="<",this.state=bi.COMMENT_LESS_THAN_SIGN;break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),e.data+=Wr;break;case Vr.EOF:this._err(Jr.eofInComment),this.emitCurrentComment(e),this._emitEOFToken();break;default:e.data+=String.fromCodePoint(t)}}_stateCommentLessThanSign(t){const e=this.currentToken;switch(t){case Vr.EXCLAMATION_MARK:e.data+="!",this.state=bi.COMMENT_LESS_THAN_SIGN_BANG;break;case Vr.LESS_THAN_SIGN:e.data+="<";break;default:this.state=bi.COMMENT,this._stateComment(t)}}_stateCommentLessThanSignBang(t){t===Vr.HYPHEN_MINUS?this.state=bi.COMMENT_LESS_THAN_SIGN_BANG_DASH:(this.state=bi.COMMENT,this._stateComment(t))}_stateCommentLessThanSignBangDash(t){t===Vr.HYPHEN_MINUS?this.state=bi.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:(this.state=bi.COMMENT_END_DASH,this._stateCommentEndDash(t))}_stateCommentLessThanSignBangDashDash(t){t!==Vr.GREATER_THAN_SIGN&&t!==Vr.EOF&&this._err(Jr.nestedComment),this.state=bi.COMMENT_END,this._stateCommentEnd(t)}_stateCommentEndDash(t){const e=this.currentToken;switch(t){case Vr.HYPHEN_MINUS:this.state=bi.COMMENT_END;break;case Vr.EOF:this._err(Jr.eofInComment),this.emitCurrentComment(e),this._emitEOFToken();break;default:e.data+="-",this.state=bi.COMMENT,this._stateComment(t)}}_stateCommentEnd(t){const e=this.currentToken;switch(t){case Vr.GREATER_THAN_SIGN:this.state=bi.DATA,this.emitCurrentComment(e);break;case Vr.EXCLAMATION_MARK:this.state=bi.COMMENT_END_BANG;break;case Vr.HYPHEN_MINUS:e.data+="-";break;case Vr.EOF:this._err(Jr.eofInComment),this.emitCurrentComment(e),this._emitEOFToken();break;default:e.data+="--",this.state=bi.COMMENT,this._stateComment(t)}}_stateCommentEndBang(t){const e=this.currentToken;switch(t){case Vr.HYPHEN_MINUS:e.data+="--!",this.state=bi.COMMENT_END_DASH;break;case Vr.GREATER_THAN_SIGN:this._err(Jr.incorrectlyClosedComment),this.state=bi.DATA,this.emitCurrentComment(e);break;case Vr.EOF:this._err(Jr.eofInComment),this.emitCurrentComment(e),this._emitEOFToken();break;default:e.data+="--!",this.state=bi.COMMENT,this._stateComment(t)}}_stateDoctype(t){switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:this.state=bi.BEFORE_DOCTYPE_NAME;break;case Vr.GREATER_THAN_SIGN:this.state=bi.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(t);break;case Vr.EOF:{this._err(Jr.eofInDoctype),this._createDoctypeToken(null);const t=this.currentToken;t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break}default:this._err(Jr.missingWhitespaceBeforeDoctypeName),this.state=bi.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(t)}}_stateBeforeDoctypeName(t){if(_i(t))this._createDoctypeToken(String.fromCharCode(Ci(t))),this.state=bi.DOCTYPE_NAME;else switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),this._createDoctypeToken(Wr),this.state=bi.DOCTYPE_NAME;break;case Vr.GREATER_THAN_SIGN:{this._err(Jr.missingDoctypeName),this._createDoctypeToken(null);const t=this.currentToken;t.forceQuirks=!0,this.emitCurrentDoctype(t),this.state=bi.DATA;break}case Vr.EOF:{this._err(Jr.eofInDoctype),this._createDoctypeToken(null);const t=this.currentToken;t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break}default:this._createDoctypeToken(String.fromCodePoint(t)),this.state=bi.DOCTYPE_NAME}}_stateDoctypeName(t){const e=this.currentToken;switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:this.state=bi.AFTER_DOCTYPE_NAME;break;case Vr.GREATER_THAN_SIGN:this.state=bi.DATA,this.emitCurrentDoctype(e);break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),e.name+=Wr;break;case Vr.EOF:this._err(Jr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:e.name+=String.fromCodePoint(_i(t)?Ci(t):t)}}_stateAfterDoctypeName(t){const e=this.currentToken;switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:break;case Vr.GREATER_THAN_SIGN:this.state=bi.DATA,this.emitCurrentDoctype(e);break;case Vr.EOF:this._err(Jr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._consumeSequenceIfMatch("public",!1)?this.state=bi.AFTER_DOCTYPE_PUBLIC_KEYWORD:this._consumeSequenceIfMatch("system",!1)?this.state=bi.AFTER_DOCTYPE_SYSTEM_KEYWORD:this._ensureHibernation()||(this._err(Jr.invalidCharacterSequenceAfterDoctypeName),e.forceQuirks=!0,this.state=bi.BOGUS_DOCTYPE,this._stateBogusDoctype(t))}}_stateAfterDoctypePublicKeyword(t){const e=this.currentToken;switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:this.state=bi.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER;break;case Vr.QUOTATION_MARK:this._err(Jr.missingWhitespaceAfterDoctypePublicKeyword),e.publicId="",this.state=bi.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break;case Vr.APOSTROPHE:this._err(Jr.missingWhitespaceAfterDoctypePublicKeyword),e.publicId="",this.state=bi.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break;case Vr.GREATER_THAN_SIGN:this._err(Jr.missingDoctypePublicIdentifier),e.forceQuirks=!0,this.state=bi.DATA,this.emitCurrentDoctype(e);break;case Vr.EOF:this._err(Jr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._err(Jr.missingQuoteBeforeDoctypePublicIdentifier),e.forceQuirks=!0,this.state=bi.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateBeforeDoctypePublicIdentifier(t){const e=this.currentToken;switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:break;case Vr.QUOTATION_MARK:e.publicId="",this.state=bi.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break;case Vr.APOSTROPHE:e.publicId="",this.state=bi.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break;case Vr.GREATER_THAN_SIGN:this._err(Jr.missingDoctypePublicIdentifier),e.forceQuirks=!0,this.state=bi.DATA,this.emitCurrentDoctype(e);break;case Vr.EOF:this._err(Jr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._err(Jr.missingQuoteBeforeDoctypePublicIdentifier),e.forceQuirks=!0,this.state=bi.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateDoctypePublicIdentifierDoubleQuoted(t){const e=this.currentToken;switch(t){case Vr.QUOTATION_MARK:this.state=bi.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),e.publicId+=Wr;break;case Vr.GREATER_THAN_SIGN:this._err(Jr.abruptDoctypePublicIdentifier),e.forceQuirks=!0,this.emitCurrentDoctype(e),this.state=bi.DATA;break;case Vr.EOF:this._err(Jr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:e.publicId+=String.fromCodePoint(t)}}_stateDoctypePublicIdentifierSingleQuoted(t){const e=this.currentToken;switch(t){case Vr.APOSTROPHE:this.state=bi.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),e.publicId+=Wr;break;case Vr.GREATER_THAN_SIGN:this._err(Jr.abruptDoctypePublicIdentifier),e.forceQuirks=!0,this.emitCurrentDoctype(e),this.state=bi.DATA;break;case Vr.EOF:this._err(Jr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:e.publicId+=String.fromCodePoint(t)}}_stateAfterDoctypePublicIdentifier(t){const e=this.currentToken;switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:this.state=bi.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS;break;case Vr.GREATER_THAN_SIGN:this.state=bi.DATA,this.emitCurrentDoctype(e);break;case Vr.QUOTATION_MARK:this._err(Jr.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),e.systemId="",this.state=bi.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Vr.APOSTROPHE:this._err(Jr.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),e.systemId="",this.state=bi.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Vr.EOF:this._err(Jr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._err(Jr.missingQuoteBeforeDoctypeSystemIdentifier),e.forceQuirks=!0,this.state=bi.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateBetweenDoctypePublicAndSystemIdentifiers(t){const e=this.currentToken;switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:break;case Vr.GREATER_THAN_SIGN:this.emitCurrentDoctype(e),this.state=bi.DATA;break;case Vr.QUOTATION_MARK:e.systemId="",this.state=bi.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Vr.APOSTROPHE:e.systemId="",this.state=bi.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Vr.EOF:this._err(Jr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._err(Jr.missingQuoteBeforeDoctypeSystemIdentifier),e.forceQuirks=!0,this.state=bi.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateAfterDoctypeSystemKeyword(t){const e=this.currentToken;switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:this.state=bi.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER;break;case Vr.QUOTATION_MARK:this._err(Jr.missingWhitespaceAfterDoctypeSystemKeyword),e.systemId="",this.state=bi.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Vr.APOSTROPHE:this._err(Jr.missingWhitespaceAfterDoctypeSystemKeyword),e.systemId="",this.state=bi.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Vr.GREATER_THAN_SIGN:this._err(Jr.missingDoctypeSystemIdentifier),e.forceQuirks=!0,this.state=bi.DATA,this.emitCurrentDoctype(e);break;case Vr.EOF:this._err(Jr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._err(Jr.missingQuoteBeforeDoctypeSystemIdentifier),e.forceQuirks=!0,this.state=bi.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateBeforeDoctypeSystemIdentifier(t){const e=this.currentToken;switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:break;case Vr.QUOTATION_MARK:e.systemId="",this.state=bi.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Vr.APOSTROPHE:e.systemId="",this.state=bi.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Vr.GREATER_THAN_SIGN:this._err(Jr.missingDoctypeSystemIdentifier),e.forceQuirks=!0,this.state=bi.DATA,this.emitCurrentDoctype(e);break;case Vr.EOF:this._err(Jr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._err(Jr.missingQuoteBeforeDoctypeSystemIdentifier),e.forceQuirks=!0,this.state=bi.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateDoctypeSystemIdentifierDoubleQuoted(t){const e=this.currentToken;switch(t){case Vr.QUOTATION_MARK:this.state=bi.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),e.systemId+=Wr;break;case Vr.GREATER_THAN_SIGN:this._err(Jr.abruptDoctypeSystemIdentifier),e.forceQuirks=!0,this.emitCurrentDoctype(e),this.state=bi.DATA;break;case Vr.EOF:this._err(Jr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:e.systemId+=String.fromCodePoint(t)}}_stateDoctypeSystemIdentifierSingleQuoted(t){const e=this.currentToken;switch(t){case Vr.APOSTROPHE:this.state=bi.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter),e.systemId+=Wr;break;case Vr.GREATER_THAN_SIGN:this._err(Jr.abruptDoctypeSystemIdentifier),e.forceQuirks=!0,this.emitCurrentDoctype(e),this.state=bi.DATA;break;case Vr.EOF:this._err(Jr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:e.systemId+=String.fromCodePoint(t)}}_stateAfterDoctypeSystemIdentifier(t){const e=this.currentToken;switch(t){case Vr.SPACE:case Vr.LINE_FEED:case Vr.TABULATION:case Vr.FORM_FEED:break;case Vr.GREATER_THAN_SIGN:this.emitCurrentDoctype(e),this.state=bi.DATA;break;case Vr.EOF:this._err(Jr.eofInDoctype),e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break;default:this._err(Jr.unexpectedCharacterAfterDoctypeSystemIdentifier),this.state=bi.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateBogusDoctype(t){const e=this.currentToken;switch(t){case Vr.GREATER_THAN_SIGN:this.emitCurrentDoctype(e),this.state=bi.DATA;break;case Vr.NULL:this._err(Jr.unexpectedNullCharacter);break;case Vr.EOF:this.emitCurrentDoctype(e),this._emitEOFToken()}}_stateCdataSection(t){switch(t){case Vr.RIGHT_SQUARE_BRACKET:this.state=bi.CDATA_SECTION_BRACKET;break;case Vr.EOF:this._err(Jr.eofInCdata),this._emitEOFToken();break;default:this._emitCodePoint(t)}}_stateCdataSectionBracket(t){t===Vr.RIGHT_SQUARE_BRACKET?this.state=bi.CDATA_SECTION_END:(this._emitChars("]"),this.state=bi.CDATA_SECTION,this._stateCdataSection(t))}_stateCdataSectionEnd(t){switch(t){case Vr.GREATER_THAN_SIGN:this.state=bi.DATA;break;case Vr.RIGHT_SQUARE_BRACKET:this._emitChars("]");break;default:this._emitChars("]]"),this.state=bi.CDATA_SECTION,this._stateCdataSection(t)}}_stateCharacterReference(t){t===Vr.NUMBER_SIGN?this.state=bi.NUMERIC_CHARACTER_REFERENCE:Si(t)?(this.state=bi.NAMED_CHARACTER_REFERENCE,this._stateNamedCharacterReference(t)):(this._flushCodePointConsumedAsCharacterReference(Vr.AMPERSAND),this._reconsumeInState(this.returnState,t))}_stateNamedCharacterReference(t){const e=this._matchNamedCharacterReference(t);if(this._ensureHibernation());else if(e){for(let t=0;t<e.length;t++)this._flushCodePointConsumedAsCharacterReference(e[t]);this.state=this.returnState}else this._flushCodePointConsumedAsCharacterReference(Vr.AMPERSAND),this.state=bi.AMBIGUOUS_AMPERSAND}_stateAmbiguousAmpersand(t){Si(t)?this._flushCodePointConsumedAsCharacterReference(t):(t===Vr.SEMICOLON&&this._err(Jr.unknownNamedCharacterReference),this._reconsumeInState(this.returnState,t))}_stateNumericCharacterReference(t){this.charRefCode=0,t===Vr.LATIN_SMALL_X||t===Vr.LATIN_CAPITAL_X?this.state=bi.HEXADEMICAL_CHARACTER_REFERENCE_START:vi(t)?(this.state=bi.DECIMAL_CHARACTER_REFERENCE,this._stateDecimalCharacterReference(t)):(this._err(Jr.absenceOfDigitsInNumericCharacterReference),this._flushCodePointConsumedAsCharacterReference(Vr.AMPERSAND),this._flushCodePointConsumedAsCharacterReference(Vr.NUMBER_SIGN),this._reconsumeInState(this.returnState,t))}_stateHexademicalCharacterReferenceStart(t){!function(t){return vi(t)||Ti(t)||xi(t)}(t)?(this._err(Jr.absenceOfDigitsInNumericCharacterReference),this._flushCodePointConsumedAsCharacterReference(Vr.AMPERSAND),this._flushCodePointConsumedAsCharacterReference(Vr.NUMBER_SIGN),this._unconsume(2),this.state=this.returnState):(this.state=bi.HEXADEMICAL_CHARACTER_REFERENCE,this._stateHexademicalCharacterReference(t))}_stateHexademicalCharacterReference(t){Ti(t)?this.charRefCode=16*this.charRefCode+t-55:xi(t)?this.charRefCode=16*this.charRefCode+t-87:vi(t)?this.charRefCode=16*this.charRefCode+t-48:t===Vr.SEMICOLON?this.state=bi.NUMERIC_CHARACTER_REFERENCE_END:(this._err(Jr.missingSemicolonAfterCharacterReference),this.state=bi.NUMERIC_CHARACTER_REFERENCE_END,this._stateNumericCharacterReferenceEnd(t))}_stateDecimalCharacterReference(t){vi(t)?this.charRefCode=10*this.charRefCode+t-48:t===Vr.SEMICOLON?this.state=bi.NUMERIC_CHARACTER_REFERENCE_END:(this._err(Jr.missingSemicolonAfterCharacterReference),this.state=bi.NUMERIC_CHARACTER_REFERENCE_END,this._stateNumericCharacterReferenceEnd(t))}_stateNumericCharacterReferenceEnd(t){if(this.charRefCode===Vr.NULL)this._err(Jr.nullCharacterReference),this.charRefCode=Vr.REPLACEMENT_CHARACTER;else if(this.charRefCode>1114111)this._err(Jr.characterReferenceOutsideUnicodeRange),this.charRefCode=Vr.REPLACEMENT_CHARACTER;else if(Qr(this.charRefCode))this._err(Jr.surrogateCharacterReference),this.charRefCode=Vr.REPLACEMENT_CHARACTER;else if(Yr(this.charRefCode))this._err(Jr.noncharacterCharacterReference);else if(Kr(this.charRefCode)||this.charRefCode===Vr.CARRIAGE_RETURN){this._err(Jr.controlCharacterReference);const t=wi.get(this.charRefCode);void 0!==t&&(this.charRefCode=t)}this._flushCodePointConsumedAsCharacterReference(this.charRefCode),this._reconsumeInState(this.returnState,t)}}const Ni=new Set([ui.DD,ui.DT,ui.LI,ui.OPTGROUP,ui.OPTION,ui.P,ui.RB,ui.RP,ui.RT,ui.RTC]);var Oi;new Set([...Ni,ui.CAPTION,ui.COLGROUP,ui.TBODY,ui.TD,ui.TFOOT,ui.TH,ui.THEAD,ui.TR]),new Map([[ui.APPLET,ai.HTML],[ui.CAPTION,ai.HTML],[ui.HTML,ai.HTML],[ui.MARQUEE,ai.HTML],[ui.OBJECT,ai.HTML],[ui.TABLE,ai.HTML],[ui.TD,ai.HTML],[ui.TEMPLATE,ai.HTML],[ui.TH,ai.HTML],[ui.ANNOTATION_XML,ai.MATHML],[ui.MI,ai.MATHML],[ui.MN,ai.MATHML],[ui.MO,ai.MATHML],[ui.MS,ai.MATHML],[ui.MTEXT,ai.MATHML],[ui.DESC,ai.SVG],[ui.FOREIGN_OBJECT,ai.SVG],[ui.TITLE,ai.SVG]]),ui.H1,ui.H2,ui.H3,ui.H4,ui.H5,ui.H6,ui.TR,ui.TEMPLATE,ui.HTML,ui.TBODY,ui.TFOOT,ui.THEAD,ui.TEMPLATE,ui.HTML,ui.TABLE,ui.TEMPLATE,ui.HTML,ui.TD,ui.TH,function(t){t[t.Marker=0]="Marker",t[t.Element=1]="Element"}(Oi=Oi||(Oi={})),Oi.Marker;new Set(["-//w3o//dtd w3 html strict 3.0//en//","-/w3c/dtd html 4.0 transitional/en","html"]);const Bi=new Map(["attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map((t=>[t.toLowerCase(),t]))),Pi=new Map([["xlink:actuate",{prefix:"xlink",name:"actuate",namespace:ai.XLINK}],["xlink:arcrole",{prefix:"xlink",name:"arcrole",namespace:ai.XLINK}],["xlink:href",{prefix:"xlink",name:"href",namespace:ai.XLINK}],["xlink:role",{prefix:"xlink",name:"role",namespace:ai.XLINK}],["xlink:show",{prefix:"xlink",name:"show",namespace:ai.XLINK}],["xlink:title",{prefix:"xlink",name:"title",namespace:ai.XLINK}],["xlink:type",{prefix:"xlink",name:"type",namespace:ai.XLINK}],["xml:base",{prefix:"xml",name:"base",namespace:ai.XML}],["xml:lang",{prefix:"xml",name:"lang",namespace:ai.XML}],["xml:space",{prefix:"xml",name:"space",namespace:ai.XML}],["xmlns",{prefix:"",name:"xmlns",namespace:ai.XMLNS}],["xmlns:xlink",{prefix:"xmlns",name:"xlink",namespace:ai.XMLNS}]]),Di=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map((t=>[t.toLowerCase(),t]))),Li=new Set([ui.B,ui.BIG,ui.BLOCKQUOTE,ui.BODY,ui.BR,ui.CENTER,ui.CODE,ui.DD,ui.DIV,ui.DL,ui.DT,ui.EM,ui.EMBED,ui.H1,ui.H2,ui.H3,ui.H4,ui.H5,ui.H6,ui.HEAD,ui.HR,ui.I,ui.IMG,ui.LI,ui.LISTING,ui.MENU,ui.META,ui.NOBR,ui.OL,ui.P,ui.PRE,ui.RUBY,ui.S,ui.SMALL,ui.SPAN,ui.STRONG,ui.STRIKE,ui.SUB,ui.SUP,ui.TABLE,ui.TT,ui.U,ui.UL,ui.VAR]);function Ui(t){const e=Di.get(t.tagName);null!=e&&(t.tagName=e,t.tagID=gi(t.tagName))}function Mi(t,e,r,i){return(!i||i===ai.HTML)&&function(t,e,r){if(e===ai.MATHML&&t===ui.ANNOTATION_XML)for(let t=0;t<r.length;t++)if(r[t].name===ci.ENCODING){const e=r[t].value.toLowerCase();return"text/html"===e||"application/xhtml+xml"===e}return e===ai.SVG&&(t===ui.FOREIGN_OBJECT||t===ui.DESC||t===ui.TITLE)}(t,e,r)||(!i||i===ai.MATHML)&&function(t,e){return e===ai.MATHML&&(t===ui.MI||t===ui.MO||t===ui.MN||t===ui.MS||t===ui.MTEXT)}(t,e)}var Fi;!function(t){t[t.INITIAL=0]="INITIAL",t[t.BEFORE_HTML=1]="BEFORE_HTML",t[t.BEFORE_HEAD=2]="BEFORE_HEAD",t[t.IN_HEAD=3]="IN_HEAD",t[t.IN_HEAD_NO_SCRIPT=4]="IN_HEAD_NO_SCRIPT",t[t.AFTER_HEAD=5]="AFTER_HEAD",t[t.IN_BODY=6]="IN_BODY",t[t.TEXT=7]="TEXT",t[t.IN_TABLE=8]="IN_TABLE",t[t.IN_TABLE_TEXT=9]="IN_TABLE_TEXT",t[t.IN_CAPTION=10]="IN_CAPTION",t[t.IN_COLUMN_GROUP=11]="IN_COLUMN_GROUP",t[t.IN_TABLE_BODY=12]="IN_TABLE_BODY",t[t.IN_ROW=13]="IN_ROW",t[t.IN_CELL=14]="IN_CELL",t[t.IN_SELECT=15]="IN_SELECT",t[t.IN_SELECT_IN_TABLE=16]="IN_SELECT_IN_TABLE",t[t.IN_TEMPLATE=17]="IN_TEMPLATE",t[t.AFTER_BODY=18]="AFTER_BODY",t[t.IN_FRAMESET=19]="IN_FRAMESET",t[t.AFTER_FRAMESET=20]="AFTER_FRAMESET",t[t.AFTER_AFTER_BODY=21]="AFTER_AFTER_BODY",t[t.AFTER_AFTER_FRAMESET=22]="AFTER_AFTER_FRAMESET"}(Fi||(Fi={})),new Set([ui.TABLE,ui.TBODY,ui.TFOOT,ui.THEAD,ui.TR]),new Set([ui.CAPTION,ui.COL,ui.COLGROUP,ui.TBODY,ui.TD,ui.TFOOT,ui.TH,ui.THEAD,ui.TR]);const Hi=new Map([[34,"&quot;"],[38,"&amp;"],[39,"&apos;"],[60,"&lt;"],[62,"&gt;"]]);function ji(t,e){return function(r){let i,n=0,s="";for(;i=t.exec(r);)n!==i.index&&(s+=r.substring(n,i.index)),s+=e.get(i[0].charCodeAt(0)),n=i.index+1;return s+r.substring(n)}}String.prototype.codePointAt,ji(/[&<>'"]/g,Hi);const Wi=ji(/["&\u00A0]/g,new Map([[34,"&quot;"],[38,"&amp;"],[160,"&nbsp;"]])),Vi=ji(/[&<>\u00A0]/g,new Map([[38,"&amp;"],[60,"&lt;"],[62,"&gt;"],[160,"&nbsp;"]]));new Set([hi.AREA,hi.BASE,hi.BASEFONT,hi.BGSOUND,hi.BR,hi.COL,hi.EMBED,hi.FRAME,hi.HR,hi.IMG,hi.INPUT,hi.KEYGEN,hi.LINK,hi.META,hi.PARAM,hi.SOURCE,hi.TRACK,hi.WBR]);var Gi=r(2830);class zi extends Gi.Writable{_write(t,e,r){r()}}const qi=ui;class Qi{constructor(t,e){this.handler=e,this.namespaceStack=[],this.inForeignContent=!1,this.skipNextNewLine=!1,this.tokenizer=new ki(t,this),this._enterNamespace(ai.HTML)}onNullCharacter(t){this.skipNextNewLine=!1,this.inForeignContent?this.handler.onCharacter({type:Xr.CHARACTER,chars:"�",location:t.location}):this.handler.onNullCharacter(t)}onWhitespaceCharacter(t){if(this.skipNextNewLine&&10===t.chars.charCodeAt(0)){if(this.skipNextNewLine=!1,1===t.chars.length)return;t.chars=t.chars.substr(1)}this.handler.onWhitespaceCharacter(t)}onCharacter(t){this.skipNextNewLine=!1,this.handler.onCharacter(t)}onComment(t){this.skipNextNewLine=!1,this.handler.onComment(t)}onDoctype(t){this.skipNextNewLine=!1,this.handler.onDoctype(t)}onEof(t){this.skipNextNewLine=!1,this.handler.onEof(t)}_enterNamespace(t){this.namespaceStack.unshift(t),this.inForeignContent=t!==ai.HTML,this.tokenizer.inForeignNode=this.inForeignContent}_leaveCurrentNamespace(){this.namespaceStack.shift(),this.inForeignContent=this.namespaceStack[0]!==ai.HTML,this.tokenizer.inForeignNode=this.inForeignContent}_ensureTokenizerMode(t){switch(t){case qi.TEXTAREA:case qi.TITLE:this.tokenizer.state=Ai.RCDATA;break;case qi.PLAINTEXT:this.tokenizer.state=Ai.PLAINTEXT;break;case qi.SCRIPT:this.tokenizer.state=Ai.SCRIPT_DATA;break;case qi.STYLE:case qi.IFRAME:case qi.XMP:case qi.NOEMBED:case qi.NOFRAMES:case qi.NOSCRIPT:this.tokenizer.state=Ai.RAWTEXT}}onStartTag(t){let e=t.tagID;switch(e){case qi.SVG:this._enterNamespace(ai.SVG);break;case qi.MATH:this._enterNamespace(ai.MATHML)}if(this.inForeignContent)if(function(t){const e=t.tagID;return e===ui.FONT&&t.attrs.some((({name:t})=>t===ci.COLOR||t===ci.SIZE||t===ci.FACE))||Li.has(e)}(t))this._leaveCurrentNamespace();else{const r=this.namespaceStack[0];r===ai.MATHML?function(t){for(let e=0;e<t.attrs.length;e++)if("definitionurl"===t.attrs[e].name){t.attrs[e].name="definitionURL";break}}(t):r===ai.SVG&&(Ui(t),function(t){for(let e=0;e<t.attrs.length;e++){const r=Bi.get(t.attrs[e].name);null!=r&&(t.attrs[e].name=r)}}(t)),function(t){for(let e=0;e<t.attrs.length;e++){const r=Pi.get(t.attrs[e].name);r&&(t.attrs[e].prefix=r.prefix,t.attrs[e].name=r.name,t.attrs[e].namespace=r.namespace)}}(t),e=t.tagID,!t.selfClosing&&Mi(e,r,t.attrs)&&this._enterNamespace(ai.HTML)}else{switch(e){case qi.PRE:case qi.TEXTAREA:case qi.LISTING:this.skipNextNewLine=!0;break;case qi.IMAGE:t.tagName=hi.IMG,t.tagID=qi.IMG}this._ensureTokenizerMode(e)}this.handler.onStartTag(t)}onEndTag(t){let e=t.tagID;if(this.inForeignContent)(e===qi.SVG&&this.namespaceStack[0]===ai.SVG||e===qi.MATH&&this.namespaceStack[0]===ai.MATHML)&&this._leaveCurrentNamespace();else{const r=this.namespaceStack[1];if(r===ai.SVG){const r=Di.get(t.tagName);r&&(e=gi(r))}Mi(e,r,t.attrs)&&this._leaveCurrentNamespace()}this.namespaceStack[0]===ai.SVG&&Ui(t),this.handler.onEndTag(t)}}class Ki extends Gi.Transform{constructor(t={}){super({encoding:"utf8",decodeStrings:!1}),this.pendingText=null,this.lastChunkWritten=!1,this.stopped=!1,this.options={sourceCodeLocationInfo:!1,...t},this.parserFeedbackSimulator=new Qi(this.options,this),this.tokenizer=this.parserFeedbackSimulator.tokenizer,this.pipe(new zi)}_transform(t,e,r){if("string"!=typeof t)throw new TypeError("Parser can work only with string streams.");r(null,this._transformChunk(t))}_final(t){this.lastChunkWritten=!0,t(null,this._transformChunk(""))}stop(){this.stopped=!0,this.tokenizer.pause()}_transformChunk(t){return this.stopped||this.tokenizer.write(t,this.lastChunkWritten),t}onCharacter({chars:t,location:e}){if(null===this.pendingText)this.pendingText={text:t,sourceCodeLocation:e};else if(this.pendingText.text+=t,e&&this.pendingText.sourceCodeLocation){const{endLine:t,endCol:r,endOffset:i}=e;this.pendingText.sourceCodeLocation={...this.pendingText.sourceCodeLocation,endLine:t,endCol:r,endOffset:i}}this.tokenizer.preprocessor.willDropParsedChunk()&&this._emitPendingText()}onWhitespaceCharacter(t){this.onCharacter(t)}onNullCharacter(t){this.onCharacter(t)}onEof(){this._emitPendingText(),this.stopped=!0}onStartTag(t){this._emitPendingText();const e={tagName:t.tagName,attrs:t.attrs,selfClosing:t.selfClosing,sourceCodeLocation:t.location};this.emitIfListenerExists("startTag",e)}onEndTag(t){this._emitPendingText();const e={tagName:t.tagName,sourceCodeLocation:t.location};this.emitIfListenerExists("endTag",e)}onDoctype(t){this._emitPendingText();const e={name:t.name,publicId:t.publicId,systemId:t.systemId,sourceCodeLocation:t.location};this.emitIfListenerExists("doctype",e)}onComment(t){this._emitPendingText();const e={text:t.data,sourceCodeLocation:t.location};this.emitIfListenerExists("comment",e)}emitIfListenerExists(t,e){return 0!==this.listenerCount(t)&&(this._emitToken(t,e),!0)}_emitToken(t,e){this.emit(t,e)}_emitPendingText(){null!==this.pendingText&&(this.emitIfListenerExists("text",this.pendingText),this.pendingText=null)}}class Yi extends Ki{constructor(){super({sourceCodeLocationInfo:!0})}_transformChunk(t){return super._transformChunk(t),""}_getRawHtml(t){const{droppedBufferSize:e,html:r}=this.tokenizer.preprocessor,i=t.startOffset-e,n=t.endOffset-e;return r.slice(i,n)}emitIfListenerExists(t,e){return super.emitIfListenerExists(t,e)||this.emitRaw(this._getRawHtml(e.sourceCodeLocation)),this.parserFeedbackSimulator.skipNextNewLine=!1,!0}_emitToken(t,e){this.emit(t,e,this._getRawHtml(e.sourceCodeLocation))}emitDoctype(t){let e=`<!DOCTYPE ${t.name}`;null!==t.publicId?e+=` PUBLIC "${t.publicId}"`:null!==t.systemId&&(e+=" SYSTEM"),null!==t.systemId&&(e+=` "${t.systemId}"`),e+=">",this.push(e)}emitStartTag(t){let e=`<${t.tagName}`;for(const r of t.attrs)e+=` ${r.name}="${Wi(r.value)}"`;e+=t.selfClosing?"/>":">",this.push(e)}emitEndTag(t){this.push(`</${t.tagName}>`)}emitText({text:t}){var e;this.push(!this.parserFeedbackSimulator.inForeignContent&&(e=this.tokenizer.lastStartTagName,!0,mi.has(e)||e===hi.NOSCRIPT)?t:Vi(t))}emitComment(t){this.push(`\x3c!--${t.text}--\x3e`)}emitRaw(t){this.push(t)}}const Ji=new TextEncoder,Xi=new TextDecoder,Zi=/([\d.]+\s*;\s*url\s*=\s*)(.+)(\s*)/im,$i=["http://","https://","//"],tn="mp_",en={a:{href:tn},applet:{codebase:"oe_",archive:"oe_"},area:{href:tn},audio:{src:"oe_"},base:{href:tn},blockquote:{cite:tn},body:{background:"im_"},button:{formaction:tn},command:{icon:"im_"},del:{cite:tn},embed:{src:"oe_"},iframe:{src:"if_"},image:{src:"im_","xlink:href":"im_",href:"im_"},img:{src:"im_",srcset:"im_"},ins:{cite:tn},input:{src:"im_",formaction:tn},form:{action:tn},frame:{src:"fr_"},link:{href:"oe_"},meta:{content:tn},object:{codebase:"oe_",data:"oe_"},param:{value:"oe_"},q:{cite:tn},ref:{href:"oe_"},script:{src:"js_","xlink:href":"js_"},source:{src:"oe_",srcset:"oe_"},video:{src:"oe_",poster:"im_"}},rn=[{match:/youtube.com\/v\/([^&]+)[&]/,replace:"youtube.com/embed/$1?"}],nn=[{urlMatch:/[?&]:loadOrderID=([\d]+)/,match:/(loadOrderID&(quot;&)?#x[^;]+?;)([\d]+)/gi,replace:"$1$U1"}];class sn{rewriter;rule=null;ruleMatch=null;isCharsetUTF8;constructor(t,e=!1){this.rewriter=t,this.rule=null;for(const t of nn){const e=this.rewriter.url.match(t.urlMatch);if(e){this.ruleMatch=e,this.rule=t;break}}this.isCharsetUTF8=e}rewriteMetaContent(t,e,r){let i=this.getAttr(t,"http-equiv");if(i&&(i=i.toLowerCase()),"content-security-policy"===i)e.name="_"+e.name;else{if("refresh"===i)return e.value.replace(Zi,((t,e,i,n)=>e+this.rewriteUrl(r,i)+n));if("referrer"===this.getAttr(t,"name"))return"no-referrer-when-downgrade";if(c(e.value,$i))return this.rewriteUrl(r,e.value)}return e.value}rewriteSrcSet(t,e){const r=/\s*(\S*\s+[\d.]+[wx]),|(?:\s*,(?:\s+|(?=https?:)))/,i=[];for(const n of t.split(r))if(n){const t=n.trim().split(" ");t[0]=this.rewriteUrl(e,t[0]),i.push(t.join(" "))}return i.join(", ")}rewriteTagAndAttrs(t,e,r){const i=t=>c(t,$i),n=t.tagName;if(!(n.indexOf("-")>0))for(const s of t.attrs){const o=s.name||"",a=s.value||"";if(a.startsWith("javascript:"))s.value="javascript:"+r.rewriteJS(a.slice(11),{inline:!0});else if(o.startsWith("on")&&"-"!=o.slice(2,3))s.value=r.rewriteJS(a,{inline:!0});else if("style"===o)s.value=r.rewriteCSS(s.value);else if("background"===o)s.value=this.rewriteUrl(r,a);else if("srcset"===o||"imagesrcset"===o&&"link"===n)s.value=this.rewriteSrcSet(a,r);else if("crossorigin"===o||"integrity"===o||"download"===o)s.name="_"+s.name;else if("meta"===n&&"content"===o)s.value=this.rewriteMetaContent(t.attrs,s,r);else if("param"===n&&i(a))s.value=this.rewriteUrl(r,s.value);else if(o.startsWith("data-")&&i(a))s.value=this.rewriteUrl(r,s.value);else if("base"===n&&"href"===o)try{s.value=this.rewriter.updateBaseUrl(s.value)}catch(t){console.warn("Invalid <base>: "+s.value)}else if("script"===n&&"src"===o){const e="module"===this.getScriptRWType(t)?"esm_":"",i=this.rewriteUrl(r,s.value,!1,e);i===s.value?(t.attrs.push({name:"__wb_orig_src",value:s.value}),s.value&&s.value.startsWith("data:text/javascript;base64")?s.value=this.rewriteJSBase64(s.value,r):s.value=this.rewriteUrl(r,s.value,!0,e)):s.value=i}else if("object"===n&&"data"===o){const e=this.getAttr(t.attrs,"type");if("application/pdf"===e)s.name="src",s.value=this.rewriteUrl(r,s.value,!1,"if_"),t.tagName="iframe";else if("image/svg+xml"===e)s.name="src",s.value=this.rewriteUrl(r,s.value),t.tagName="img";else if("application/x-shockwave-flash"===e)for(const e of rn){const i=s.value.replace(e.match,e.replace);if(i!==s.value){s.name="src",s.value=this.rewriteUrl(r,i,!1,"if_"),t.tagName="iframe";break}}}else if("target"===o){const t=s.value;"_blank"!==t&&"_parent"!==t&&"_top"!==t&&"new"!==t||(s.value="___wb_replay_top_frame")}else if("src"!==o||"iframe"!==n&&"frame"!==n)("href"===o||"src"===o||e[s.name])&&(s.value=this.rewriteUrl(r,s.value));else{const t=e[o];s.value=this.rewriteUrl(r,s.value,!1,t)}}}getAttr(t,e){for(const r of t)if(r.name===e)return r.value;return null}getScriptRWType(t){const e=this.getAttr(t.attrs,"type");return"module"===e?"module":"application/json"===e?"json":!e||e.indexOf("javascript")>=0||e.indexOf("ecmascript")>=0?"js":e.startsWith("text/")?"text":"importmap"===e?"importmap":""}async rewrite(t){if(!t.buffer&&!t.reader)return t;if(t.expectedLength()>5e7)return console.warn("Skipping rewriting, HTML file too big: "+t.expectedLength()),t;const e=this.rewriter,r=new Yi;r.tokenizer.preprocessor.bufferWaterline=1/0;let i=!1,n=!1,s=!0,a="",c="",l="";const h=()=>{if(!i&&e.headInsertFunc){const t=e.headInsertFunc(e.url);t&&r.emitRaw(t),i=!0}};r.on("startTag",(t=>{const o=en[t.tagName],u=t.tagName;switch(this.rewriteTagAndAttrs(t,o||{},e),i||["head","html"].includes(t.tagName)||h(),r.emitStartTag(t),t.tagName){case"script":if(t.selfClosing)break;a=t.tagName,s=!0,c=this.getScriptRWType(t);break;case"style":t.selfClosing||(a=t.tagName);break;case"head":h();break;case"body":n=!0}t.tagName!==u&&(a=u,l=t.tagName)})),r.on("endTag",(t=>{if(t.tagName===a){switch(l&&(t.tagName=l,l=""),a){case"head":n=!0;break;case"script":n&&!s&&"js"===c&&r.emitRaw(";document.close();")}a=""}r.emitEndTag(t)})),r.on("text",((t,i)=>{const n=(()=>{if("script"===a){const r=e.prefix,i="module"===c;return s=s&&0===t.text.trim().length,"js"===c||i?e.rewriteJS(t.text,{isModule:i,prefix:r}):"json"===c?e.rewriteJSON(t.text,{prefix:r}):"importmap"===c?e.rewriteImportmap(t.text):t.text}return"style"===a?e.rewriteCSS(t.text):this.rewriteHTMLText(i)})();for(let t=0;t<n.length;t+=o)r.emitRaw(n.slice(t,t+o))}));const u=t.createIter();let p=!1;const g=this.isCharsetUTF8;return t.setReader(new ReadableStream({async start(t){r.on("data",(e=>{t.enqueue(g?Ji.encode(e):f(e))})),r.on("end",(()=>{t.close()}));for await(const t of u)g?r.write(Xi.decode(t),"utf8"):r.write(d(t),"latin1"),p=!0;p&&h(),r.end()}})),t}rewriteUrl(t,e,r=!1,i=""){this.isCharsetUTF8||(e=Xi.decode(f(e)));const n=t.rewriteUrl(e,r);return i&&i!==tn?n.replace("mp_/",i+"/"):n}rewriteHTMLText(t){if(this.rule&&this.ruleMatch){const e=this.rule.replace.replace("$U1",this.ruleMatch[1]),r=t.replace(this.rule.match,e);if(t!==r)return r}return t}rewriteJSBase64(t,e){const r=t.split(","),i=e.rewriteJS(atob(r[1]),{isModule:!1});return r[1]=btoa(i),r.join(",")}}var on=r(8764);const an=new TextEncoder,cn=new TextDecoder;class ln{static fromResponse({url:t,response:e,date:r,noRW:i,isLive:n,archivePrefix:s}){const o=e.body?new ft(e.body.getReader(),null,!1):null,a=Number(e.headers.get("x-redirect-status")||e.status),c=e.headers.get("x-redirect-statusText")||e.statusText,l=new Headers(e.headers);let u=l.get("x-orig-location");if(u){if(u.startsWith(self.location.origin)&&(u=u.slice(self.location.origin.length)),s&&u.startsWith(s)){const t=u.indexOf("/http");t>0&&(u=u.slice(t+1))}l.set("location",u),l.delete("x-orig-location"),l.delete("x-redirect-status"),l.delete("x-redirect-statusText")}let p=null;const d=l.get("x-orig-ts");d&&(r=h(d),l.delete("x-orig-ts"),d&&u&&(p=d));const f=l.get("memento-datetime");f&&(r=new Date(f));const g=l.get("x-proxy-set-cookie");if(g){const t=[];g.split(",").forEach((e=>{const r=e.split(";",1)[0].trim();r.indexOf("=")>0&&t.push(r)})),l.delete("x-proxy-set-cookie"),t.length&&l.set("x-wabac-preset-cookie",t.join(";"))}return new ln({payload:o,status:a,statusText:c,headers:l,url:t,date:r,noRW:i,isLive:n,updateTS:p})}reader;buffer;status;statusText;url;date;extraOpts;headers;noRW;isLive;updateTS;clonedResponse=null;constructor({payload:t,status:e,statusText:r,headers:i,url:n,date:s,extraOpts:o=null,noRW:a=!1,isLive:c=!1,updateTS:l=null}){this.reader=null,this.buffer=null,t&&t instanceof dt?this.reader=t:this.buffer=t,this.status=e,this.statusText=r||b(e),this.headers=i,this.url=n,this.date=s,this.extraOpts=o,this.noRW=a,this.isLive=c,this.updateTS=l}async getText(t=!1){const e=await this.getBuffer();return"string"==typeof e?{bomFound:!1,text:e}:e?239===e[0]&&187===e[1]&&191===e[2]?{bomFound:!0,text:cn.decode(e.slice(3))}:254===e[0]&&255===e[1]?{bomFound:!0,text:on.Buffer.from(e.slice(2)).swap16().toString("utf16le")}:255===e[0]&&254===e[1]?{bomFound:!0,text:on.Buffer.from(e.slice(2)).toString("utf16le")}:{bomFound:!1,text:t?cn.decode(e):d(e)}:{bomFound:!1,text:""}}setText(t,e=!1){this.setBuffer(e?an.encode(t):f(t))}async getBuffer(){return this.buffer||!this.reader||(this.buffer=await this.reader.readFully()),this.buffer}setBuffer(t){this.buffer=t,this.reader=null}setReader(t){t instanceof dt?(this.reader=t,this.buffer=null):t.getReader&&(this.reader=new ft(t.getReader()),this.buffer=null)}expectedLength(){return this.buffer?this.buffer.length:0}createIter(){const t=this.buffer,e=this.reader;return async function*(){if(t)for(let e=0;e<t.length;e+=o)yield t.slice(e,e+o);else e&&(yield*e)}()}async*[Symbol.asyncIterator](){yield*this.createIter()}setRange(t){if(206===this.status){const t=this.headers.get("Content-Range");if(t&&!t.startsWith("bytes 0-"))return!1}const e=t.match(/^bytes=(\d+)-(\d+)?$/);let r=0;if(this.buffer)r=this.buffer.length;else if(this.reader&&(r=Number(this.headers.get("content-length")),!r))return!1;if(!e)return this.status=416,this.statusText="Range Not Satisfiable",this.headers.set("Content-Range",`*/${r}`),!1;const i=Number(e[1]),n=Number(e[2])||r-1;return!!this.setRawRange(i,n)&&(this.headers.set("Content-Range",`bytes ${i}-${n}/${r}`),this.headers.set("Content-Length",String(n-i+1)),this.status=206,this.statusText="Partial Content",!0)}setRawRange(t,e){const r=this.reader;return this.buffer?(this.buffer=this.buffer.slice(t,e+1),!0):!!r?.setLimitSkip&&(r.setLimitSkip(e-t+1,t),!0)}makeResponse(t=!1,e=!1){let r=null;w(this.status)||(r=this.buffer||!this.reader?this.buffer:this.reader.getReadableStream());const i=new Response(r,{status:this.status,statusText:this.statusText,headers:this.headers});return i.date=this.date,t&&(i.headers.set("Cross-Origin-Opener-Policy","same-origin"),i.headers.set("Cross-Origin-Embedder-Policy","require-corp")),e&&i.headers.set("content-disposition","inline"),i}}const hn=/(url\s*\(\s*[\\"']*)([^)'"]+)([\\"']*\s*\))/gi,un=/(@import\s*[\\"']*)([^)'";]+)([\\"']*\s*;?)/gi,pn=/WB_wombat_/g,dn=/^(?:\s*(?:(?:\/\*[^*]*\*\/)|(?:\/\/[^\n]+[\n])))*\s*([\w.]+)\([{[]/,fn=/[?].*(?:callback|jsonp)=([^&]+)/i,gn=new zt(class extends qt{extraRules;firstBuff;lastBuff;constructor(t){super(),this.extraRules=t,this.firstBuff=this.initLocalDecl(Ur),this.lastBuff="\n\n}"}initLocalDecl(t){const e="_____WB$wombat$assign$function_____";let r=`var ${e} = function(name) {return (self._wb_wombat && self._wb_wombat.local_init && self._wb_wombat.local_init(name)) || self[name]; };\nif (!self.__WB_pmw) { self.__WB_pmw = function(obj) { this.__WB_source = obj; return this; } }\n{\n`;for(const i of t)r+=`let ${i} = ${e}("${i}");\n`;return r+="let arguments;\n",r+"\n"}getModuleDecl(t,e){return`import { ${t.join(", ")} } from "${e}__wb_module_decl.js";\n`}detectIsModule(t){return!!(t.indexOf("import")>=0&&t.match(Br))||!!(t.indexOf("export")>=0&&t.match(Pr))}parseGlobals(t){const e=Oe.parse(t,{ecmaVersion:"latest"});let r=!1;const i=[],n=new Set;for(const t of e.body){const{type:e}=t;if("VariableDeclaration"===e){const{kind:e,declarations:r}=t;for(const t of r)if(t&&"VariableDeclarator"===t.type&&t.id&&"Identifier"===t.id.type){const r=t.id.name;Ur.includes(r)?n.add(r):"const"!==e&&"let"!==e||i.push(`self.${r} = ${r};`)}}else if(!r&&"ExpressionStatement"===e){const{expression:e}=t;if(e&&"CallExpression"===e.type){const{callee:t}=e;if(t&&"MemberExpression"===t.type){const{object:e,property:i}=t;"Identifier"===e.type&&"document"===e.name&&"Identifier"===i.type&&"write"===i.name&&(r=!0)}}}}if(n.size){const t=Ur.filter((t=>!n.has(t)));this.firstBuff=this.initLocalDecl(t)}return r&&(this.lastBuff=";document.close();"+this.lastBuff),i.length?"\n"+i.join("\n"):""}rewrite(t,e){void 0!==(e=e||{}).isModule&&null!==e.isModule||(e.isModule=this.detectIsModule(t));let r=Hr;e.isModule&&(r=[...r,this.getESMImportRule()]),this.extraRules&&this.extraRules.length?this.rules=[...r,...this.extraRules]:this.rules=r,this.compileRules();let i=super.rewrite(t,e);if(e.isModule)return this.getModuleDecl(Ur,e.prefix)+i;const n=Fr.exec(t);if(e.inline&&(i=i.replace(/\n/g," ")),n){let r="";if(i)try{r=this.parseGlobals(i)}catch(t){console.warn(`acorn parsing failed, script len ${i.length}`)}i=this.firstBuff+i+r+this.lastBuff,e.inline&&(i=i.replace(/\n/g," "))}return i}getESMImportRule(){return[Dr,(t,e)=>{const r=e.prefix.replace("mp_/","esm_/");return t.replace(Lr,((t,i,n,s)=>{try{n=new URL(n,e.baseUrl).href,n=r+n}catch(t){}return i+n+s}))}]}}),yn=new zt(qt);new zt(qt,Ht);class mn{urlRewrite;contentRewrite;baseUrl;dsRules;decode;prefix;relPrefix="";schemeRelPrefix="";scheme;url;responseUrl;isCharsetUTF8;headInsertFunc;workerInsertFunc;_jsonpCallback;constructor({baseUrl:t,prefix:e,responseUrl:r,workerInsertFunc:i=null,headInsertFunc:n=null,urlRewrite:s=!0,contentRewrite:o=!0,decode:a=!0,useBaseRules:c=!1}){if(this.urlRewrite=s,this.contentRewrite=o,this.dsRules=s&&!c?gn:yn,this.decode=a,this.prefix=e||"",this.prefix&&s){const t=new URL(this.prefix);this.relPrefix=t.pathname,this.schemeRelPrefix=this.prefix.slice(t.protocol.length)}const l=new URL(r||t);this.scheme=l.protocol,t.startsWith("//")&&(t=this.scheme+t),this.url=this.baseUrl=t,this.headInsertFunc=n,this.workerInsertFunc=i,this.responseUrl=r||t,this.isCharsetUTF8=!1,this._jsonpCallback=null}getRewriteMode(t,e,r="",i=""){if(!i&&e){const t=(i=e.headers.get("Content-Type")||"").split(";");i=t[0],t.length>1&&(this.isCharsetUTF8="utf8"===t[1].trim().toLowerCase().replace("charset=","").replace("-",""))}if(i=i.toLowerCase(),"esm_"===t.mod&&(this.isCharsetUTF8=!0),t)switch(t.destination){case"style":return"css";case"script":return this.getScriptRewriteMode(i,r,"js");case"worker":return"js-worker"}switch(i){case"text/html":return t.destination||"application/json"!==t.headers.get("Accept")?"html":"json";case"text/css":return"css";case"application/x-mpegurl":case"application/vnd.apple.mpegurl":return"hls";case"application/dash+xml":return"dash";default:return this.getScriptRewriteMode(i,r)}}getScriptRewriteMode(t,e,r=""){switch(t){case"text/javascript":case"application/javascript":case"application/x-javascript":return this.parseJSONPCallback(e)?"jsonp":e.endsWith(".json")?"json":"js";case"application/json":return"json";default:return r}}async rewrite(t,e){const r=this.contentRewrite?this.getRewriteMode(e,t,this.baseUrl):null,i=A(e),n=this.urlRewrite&&!i,s=this.rewriteHeaders(t.headers,this.urlRewrite,!!r,i),o=t.headers.get("content-encoding"),a=t.headers.get("transfer-encoding");t.headers=s,this.decode&&(o||a)&&(t=await async function(t,e,r,i){if(t.reader&&i&&("gzip"===e&&!r||!e&&"gzip"===r))return t.setReader(new ft(t.reader)),t;const n=await t.getBuffer()||[],s=new Uint8Array(n),o=await Bt(s,e,r);return s!==o&&t.setBuffer(o),t}(t,o,a,null===r));const c={response:t,prefix:this.prefix,baseUrl:this.baseUrl};let l=null;switch(r){case"html":if(n)return await this.rewriteHtml(t);break;case"css":this.urlRewrite&&(l=this.rewriteCSS);break;case"js":l=this.rewriteJS,"esm_"===e.mod&&(c.isModule=!0);break;case"json":l=this.rewriteJSON;break;case"js-worker":l=this.workerInsertFunc;break;case"jsonp":l=this.rewriteJSONP;break;case"hls":l=Lt;break;case"dash":l=Mt}if(n&&(c.rewriteUrl=t=>this.rewriteUrl(t)),l){let{bomFound:e,text:r}=await t.getText(this.isCharsetUTF8);if(r=l.call(this,r,c),e&&!this.isCharsetUTF8){let t=s.get("Content-Type")||"";const e=t.split(";");t=e[0],t&&s.set("Content-Type",t+"; charset=utf-8"),this.isCharsetUTF8=!0}t.setText(r,this.isCharsetUTF8)}else{const r=function(t){if(!t)return null;for(const e of jt){const{contains:r,start:i,end:n}=e;if(t.match(r))return{start:i,end:n}}return null}(e.url);if(r){const i=new URL(e.url),n=parseInt(i.searchParams.get(r.start)||""),s=parseInt(i.searchParams.get(r.end)||"");if(!isNaN(n)&&!isNaN(s)){const e=Number(t.headers.get("Content-Length")),r=s-n+1;e!==r&&(isNaN(e)||e>r)&&t.setRawRange(n,s)&&t.headers.set("Content-Length",String(r))}}}return t}updateBaseUrl(t){if(this.baseUrl=new URL(t,this.baseUrl).href,t&&this.baseUrl!=t)try{t=new URL(t).href}catch(e){t.startsWith("//")&&(t=(t=new URL("https:"+t).href).slice(6))}return this.rewriteUrl(t)}isRewritableUrl(t){const e=["#","javascript:","data:","mailto:","about:","file:","blob:","{"];for(const r of e)if(t.startsWith(r))return!1;return!0}rewriteUrl(t,e=!1){if(!this.urlRewrite)return t;const r=t;return!(t=t.trim())||!this.isRewritableUrl(t)||t.startsWith(this.prefix)||t.startsWith(this.relPrefix)?r:t.startsWith("http:")||t.startsWith("https:")||t.startsWith("https\\3a/")?this.prefix+t:t.startsWith("//")||t.startsWith("\\/\\/")?this.schemeRelPrefix+t:t.startsWith("/")?(t=new URL(t,this.baseUrl).href,this.relPrefix+t):e||t.indexOf("../")>=0?(t=new URL(t,this.baseUrl).href,this.prefix+t):r}async rewriteHtml(t){return new sn(this,this.isCharsetUTF8).rewrite(t)}rewriteCSS(t){const e=this;function r(t,r,i,n){return i=i.trim(),r+e.rewriteUrl(i)+n}return t.replace(hn,r).replace(un,r).replace(pn,"")}rewriteJS(t,e){const r=e&&!e.rewriteUrl&&void 0===e.isModule&&!e.inline,i=r?yn:this.dsRules,n=i.getRewriter(this.baseUrl);return n===i.defaultRewriter&&r?t:n.rewrite(t,e)}rewriteJSON(t,e){t=this.rewriteJSONP(t);const r=yn.getRewriter(this.baseUrl);return r!==yn.defaultRewriter?r.rewrite(t,e):t}rewriteImportmap(t){try{const e=JSON.parse(t),r={},i={imports:r};for(const[t,i]of Object.entries(e.imports||{}))r[this.rewriteUrl(t).replace("mp_/","esm_/")]=i;if(e.scopes){const t={};for(const[r,i]of Object.entries(e.scopes||{})){const e={};for(const[t,r]of Object.entries(i))e[this.rewriteUrl(t).replace("mp_/","esm_/")]=r;t[this.rewriteUrl(r).replace("mp_/","esm_/")]=e}i.scopes=t}return JSON.stringify(i,null,2)}catch(e){return console.warn("Error parsing importmap",e),t}}parseJSONPCallback(t){const e=t.match(fn);return e&&"?"!==e[1]?(this._jsonpCallback=e[1],!0):(this._jsonpCallback=!1,!1)}rewriteJSONP(t){const e=t.match(dn);return e?(null===this._jsonpCallback&&this.parseJSONPCallback(this.baseUrl),!1===this._jsonpCallback?t:this._jsonpCallback+t.slice(t.indexOf(e[1])+e[1].length)):t}rewriteHeaders(t,e,r,i){const n={"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:"link",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","origin-agent-cluster":"prefix"},s="X-Archive-Orig-",o=new Headers;for(let[a,c]of t.entries())switch(n[a]){case"keep":case"cookie":default:o.append(a,c);break;case"url-rewrite":if(e){if("location"===a&&this.url!==this.responseUrl){const t="http:"===this.scheme?"https:":"http:";c===t+this.responseUrl.slice(this.scheme.length)&&(c=t+this.url.slice(this.url.indexOf("//")))}o.append(a,this.rewriteUrl(c))}else o.append(a,c);break;case"prefix-if-content-rewrite":r?o.append(s+a,c):o.append(a,c);break;case"prefix-if-url-rewrite":e?o.append(s+a,c):o.append(a,c);break;case"content-length":if("0"==c){o.append(a,c);continue}if(r)try{if(parseInt(c)>=0){o.append(a,c);continue}}catch(t){}o.append(a,c);break;case"transfer-encoding":case"prefix":o.append(s+a,c);break;case"link":e&&!i?o.append(a,this.rewriteLinkHeader(c)):o.append(a,c)}return o}rewriteLinkHeader(t){try{const e=i().parse(t);for(const t of e.refs)t.uri&&(t.uri=this.rewriteUrl(t.uri));return e.toString()}catch(e){return console.warn("Error parsing link header: "+t),t}}}class wn{_buffer=[];_lastChunkEndedWithCR=!1;decoder=new TextDecoder;transform(t,e){const r=this.decoder.decode(t),i=r.split(/\r\n|[\n\v\f\r\x85\u2028\u2029]/g),n=this._buffer;for(this._lastChunkEndedWithCR&&r.startsWith("\n")&&i.shift(),n.length>0&&(n[n.length-1]+=i[0],i.shift()),this._lastChunkEndedWithCR=r.endsWith("\r");n.length>1;){const t=n.shift();t?.length&&e.enqueue(t)}for(;i.length>1;){const t=i.shift();t?.length&&e.enqueue(t)}}flush(t){const e=this._buffer;for(;e.length;){const r=e.shift();r?.length&&t.enqueue(r)}}}class bn extends TransformStream{constructor(){super(new wn)}}function An(t,e,r=200){const i=(new TextEncoder).encode(t),n={status:r,statusText:b(r),headers:{"Content-Type":e,"Content-Length":i.length+""}};return new Response(i,n)}function vn(t,e,r){return`/* \n ${t} Not Found\n URL: ${e}\n TS: ${r}\n*/\n `}class _n{name;store;config;metadata;injectScripts;noRewritePrefixes;noPostToGet;convertPostToGet;coHeaders;csp;injectRelCanon;baseFramePrefix;baseFrameUrl;baseFrameHashReplay=!1;liveRedirectOnNotFound=!1;rootPrefix;isRoot;prefix;adblockUrl;staticPrefix;constructor(t,e,r={}){const{name:i,store:n,config:s}=t;this.name=i,this.store=n,this.config=s,this.metadata=this.config.metadata?this.config.metadata:{};const o={...r,...this.config.extraConfig};this.injectScripts=o.injectScripts||[],this.noRewritePrefixes=o.noRewritePrefixes||null,this.noPostToGet=!!o.noPostToGet,this.convertPostToGet=!!o.convertPostToGet,this.coHeaders=o.coHeaders||!1,this.csp=o.csp||"default-src 'unsafe-eval' 'unsafe-inline' 'self' data: blob: mediastream: ws: wss: ; form-action 'self'",this.injectRelCanon=o.injectRelCanon||!1,this.baseFramePrefix=o.baseUrlSourcePrefix,this.baseFrameUrl=o.baseUrl,this.baseFrameHashReplay=o.baseUrlHashReplay||!1,this.liveRedirectOnNotFound=o.liveRedirectOnNotFound||!1,this.rootPrefix=e.root||e.main,this.adblockUrl=o.adblockUrl,this.prefix=e.main,this.config.root?this.isRoot=!0:(this.prefix+=this.name+"/",this.isRoot=!1),this.staticPrefix=e.static}async handleRequest(t,e){let r=t.url,i=t.timestamp;if(!t.mod)return await this.makeTopFrame(r,i);this.noPostToGet||(r=await t.convertPostToGet());let n=null,s=r;try{if(r.startsWith("srcdoc:"))n=this.getSrcDocResponse(r,r.slice(7));else if(r.startsWith("blob:")){const t=r.indexOf("/"),e=r.slice(5,t),i=`blob:${self.location.origin}/${e}`;s=r.slice(t+1),n=await this.getBlobResponse(i)}else"about:blank"===r?n=await this.getSrcDocResponse(r):"__wb_module_decl.js"===r?n=await this.getWrappedModuleDecl():this.adblockUrl&&r.startsWith("adblock:")?n=await async function(t,e){const r=t.split("."),i=[];for(let t=0;t<r.length-1;t++)"www"!==r[t]&&i.push(r.slice(t).join("."));const n=i.length?i[i.length-1]:"";let s=(await fetch(e)).body;const o=new Headers({"Content-Type":"text/css"});if(!s)return new Response("",{status:400,headers:o,statusText:"Not Found"});e.endsWith(".gz")&&(s=s.pipeThrough(new self.DecompressionStream("gzip")));const a=s.pipeThrough(new bn),c=new TextEncoder,l=async function*(){for await(const t of async function*(t){try{let e;const r=t.getReader();for(;(e=await r.read())&&!e.done;){const t=e.value;if(n&&t.indexOf(n)>=0){const e=t.split("##");if(e.length<2)continue;if(e[0].endsWith("#@"))continue;const r=e[0].split(",");for(const t of i)if(r.includes(t)){yield e[1];break}}else!n&&t.startsWith("##")&&(yield t.slice(2))}}catch(t){console.warn(t)}}(a))yield c.encode(`${t} {\n display: none !important;\n}\n\n`)}(),h=new ReadableStream({pull:async t=>l.next().then((e=>{e.done||!e.value?t.close():t.enqueue(e.value)}))});return new Response(h,{status:200,statusText:"OK",headers:o})}(r.slice(8),this.adblockUrl):(n=await this.getReplayResponse(t,e),r=t.url,n&&n instanceof ln&&n.updateTS&&(i=n.updateTS))}catch(e){if(await v(e,this.config))return _(t.request,'<p style="margin: auto">Please wait, this page will reload after authentication...</p>',401)}if(!n){try{r=decodeURIComponent(r),r+=t.hash}catch(t){}return function(t,e,r,i=!1,n=404){let s,o;switch(t.destination){case"json":case"":s=function(t,e,r="not_found"){return JSON.stringify({error:r,URL:t,TS:e})}(e,r),o="application/json; charset=utf-8";break;case"script":s=vn("Script",e,r),o="text/javascript; charset=utf-8";break;case"style":s=vn("CSS",e,r),o="text/css; charset=utf-8";break;default:s=function(t,e,r,i){return`\n <!doctype html>\n <html>\n <head>\n <script>\n window.requestURL = "${e}";\n <\/script>\n </head>\n <body style="font-family: sans-serif">\n <h2>Archived Page Not Found</h2>\n <p>Sorry, this page was not found in this archive:</p>\n <p><code id="url" style="word-break: break-all; font-size: larger"></code></p>\n ${i&&"navigate"===t.mode?"\n <p>Redirecting to live page now... (If this URL is a file download, the download should have started).</p>\n <script>\n window.top.location.href = window.requestURL;\n <\/script>\n ":"\n "}\n <p id="goback" style="display: none"><a href="#" onclick="window.history.back()">Go Back</a> to the previous page.</a></p>\n \n <p>\n <a id="livelink" target="_blank" href="">Load the live page</a> in a new tab (or download the file, if this URL points to a file).\n </p>\n\n <script>\n document.querySelector("#url").innerText = window.requestURL;\n document.querySelector("#livelink").href = window.requestURL;\n let isTop = true;\n try {\n if (window.parent._WB_wombat_location) {\n isTop = false;\n }\n } catch (e) {\n\n }\n if (isTop) {\n document.querySelector("#goback").style.display = "";\n\n window.parent.postMessage({\n wb_type: "archive-not-found",\n url: window.requestURL,\n ts: "${r}"\n }, "*");\n }\n <\/script>\n </body>\n </html>\n `}(t,e,r,i),o="text/html; charset=utf-8"}return An(s,o,n)}(t,r,i,this.liveRedirectOnNotFound)}if(n instanceof Response)return n;if(!n.noRW){const e=this.prefix+(t.pageId?`:${t.pageId}/`:""),o=e+i,a=n,c=r=>{const n=a.headers.get("x-wabac-preset-cookie")||"",s=a.headers.get("Set-Cookie"),c=o+(i?"/":"")+r;return this.makeHeadInsert(r,i,a.date,c,e,n,s,a.isLive,t.referrer,a.extraOpts)},l=t=>`\n (function() { self.importScripts('${this.staticPrefix}wombatWorkers.js'); new WBWombat({'prefix': '${o}/', 'prefixMod': '${o}wkrf_/', 'originalURL': '${r}'}); })();`+t,h=t.mod,u="id_"===h||"wkrf_"===h,p=o+h+"/",d={baseUrl:s,responseUrl:n.url,prefix:p,headInsertFunc:c,workerInsertFunc:l,urlRewrite:!u,contentRewrite:!u,decode:this.config.decode},f=new mn(d);n=await f.rewrite(n,t),"id_"!==h&&n.headers.append("Content-Security-Policy",this.csp)}const o=t.headers.get("range");!o||200!==n.status&&206!==n.status||n.setRange(o);const a="iframe"===t.destination||"document"===t.destination;return n.makeResponse(this.coHeaders,a)}getCanonRedirect(t){let{url:e,timestamp:r,mod:i,referrer:n}=t;const s=e.startsWith("//");s&&(e=(n&&n.indexOf("/http://")>0?"http:":"https:")+e);try{const n=new URL(e);if(n.href!==e){if("/"===n.pathname){let t=this.prefix+r+i;return(r||i)&&(t+="/"),t+=n.href,Response.redirect(t,301)}(!s&&e.indexOf(":443")||e.indexOf(":80"))&&(t.url=n.href)}}catch(t){}return null}getWrappedModuleDecl(){const t=(new TextEncoder).encode('\n var wrapObj = 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\n const window = wrapObj("window");\n const document = wrapObj("document");\n const location = wrapObj("location");\n const top = wrapObj("top");\n const parent = wrapObj("parent");\n const frames = wrapObj("frames");\n const opener = wrapObj("opener");\n const __self = wrapObj("self");\n const __globalThis = wrapObj("globalThis");\n\n export { window, document, location, top, parent, frames, opener, __self as self, __globalThis as globalThis };\n '),e=new Headers({"Content-Type":"application/javascript"});return new Response(t,{headers:e,status:200,statusText:"OK"})}getSrcDocResponse(t,e){const r=e?decodeURIComponent(atob(e)):"<html><head></head><body></body></html>",i=(new TextEncoder).encode(r),n=new Headers({"Content-Type":"text/html"}),s=new Date;return new ln({payload:i,status:200,statusText:"OK",headers:n,url:t,date:s})}async getBlobResponse(t){const e=await fetch(t),r=e.status,i=e.statusText,n=new Headers(e.headers);"application/xhtml+xml"===n.get("content-type")&&n.set("content-type","text/html");const s=new Date,o=new Uint8Array(await e.arrayBuffer());return new ln({payload:o,status:r,statusText:i,headers:n,url:t,date:s})}async getReplayResponse(t,e){let r=this.getCanonRedirect(t);if(r)return r;const i={pageId:t.pageId,noRedirect:t.isProxyOrigin};return r=await this.store.getResource(t,this.prefix,e,i),r}async makeTopFrame(t,e){let r="";if(this.baseFrameUrl&&!this.baseFramePrefix?r=this.baseFrameUrl:!this.isRoot&&this.config.sourceUrl&&(r=this.baseFramePrefix||"./",r+=`?source=${this.config.sourceUrl}`),r)return this.baseFrameHashReplay?r+=`#${e}/${t}`:r+="#"+new URLSearchParams({url:t,ts:e,view:"replay"}).toString(),Response.redirect(r);let i="";if(this.config.topTemplateUrl){const r=await fetch(this.config.topTemplateUrl);i=(await r.text()).replace("$URL",t).replace("$TS",e).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" name="___wb_replay_top_frame" frameborder="0" seamless="seamless" scrolling="yes" class="wb_iframe" allow="autoplay; fullscreen"></iframe>\n</div>\n<script>\n var cframe = new ContentFrame({"url": "${t}",\n "app_prefix": "${this.prefix}",\n "content_prefix": "${this.prefix}",\n "request_ts": "${e}",\n "iframe": "#replay_iframe"});\n\n<\/script>\n</body>\n</html>\n`;const n={status:200,statusText:"OK",headers:{"Content-Type":"text/html","Content-Security-Policy":this.csp}};return new Response(i,n)}makeHeadInsert(t,e,r,i,n,s,o,c,h,u){const p=this.name,d=function(t){if(!t)return"";try{return""+t.getTime()/1e3}catch(t){return""}}(r),f=l(r.toISOString()),g=new URL(t);let y;y="https:"!==g.protocol&&"http:"!==g.protocol?h&&h.indexOf("/http://")>0?"http":"https":g.protocol.slice(0,-1),o&&(s=function(t,e){t=t.replace(a,"");const r=[];for(const i of t.split(",")){const t=i.split(";",1)[0];if(t!==i){const r=i.slice(t.length).toLowerCase();if(r.indexOf("httponly")>0)continue;if("http"===e&&r.indexOf("secure")>0)continue}r.push(t)}return r.join(";")}(o,y)+";"+s);const m=u&&Number(u.pixelRatio)?u.pixelRatio:1,w=u?.storage?JSON.stringify(u.storage):'""',b=s?JSON.stringify(s):'""';return`\n\x3c!-- WB Insert --\x3e\n${this.adblockUrl?`\n<link rel='stylesheet' href="${n}mp_/adblock:${g.hostname}"/>\n<link rel='stylesheet' href="${n}mp_/adblock:"/>\n`:""}\n<style>\nbody {\n font-family: inherit;\n font-size: inherit;\n}\n</style>\n${this.injectRelCanon?`<link rel="canonical" href="${t}"/>`:""}\n<script>\n wbinfo = {};\n wbinfo.top_url = "${i}";\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 = "${t}";\n wbinfo.timestamp = "${f}";\n wbinfo.request_ts = "${e}";\n wbinfo.prefix = decodeURI("${n}");\n wbinfo.mod = "mp_";\n wbinfo.is_framed = true;\n wbinfo.is_live = ${c?"true":"false"};\n wbinfo.coll = "${p}";\n wbinfo.proxy_magic = "";\n wbinfo.static_prefix = "${this.staticPrefix}";\n wbinfo.enable_auto_fetch = true;\n wbinfo.presetCookie = ${b};\n wbinfo.storage = ${w};\n wbinfo.isSW = true;\n wbinfo.injectDocClose = true;\n wbinfo.pixel_ratio = ${m};\n wbinfo.convert_post_to_get = ${this.convertPostToGet};\n wbinfo.target_frame = "___wb_replay_top_frame";\n<\/script>\n<script src='${this.staticPrefix}wombat.js'> <\/script>\n<script>\n wbinfo.wombat_ts = "${c?f:e}";\n wbinfo.wombat_sec = "${d}";\n wbinfo.wombat_scheme = "${y}";\n wbinfo.wombat_host = "${g.host}";\n\n ${this.noRewritePrefixes?`\n wbinfo.wombat_opts = {"no_rewrite_prefixes": ${JSON.stringify(this.noRewritePrefixes)}}`:"\n wbinfo.wombat_opts = {}\n "}\n\n if (window && window._WBWombatInit) {\n window._WBWombatInit(wbinfo);\n }\n<\/script>\n${this.injectScripts.map((t=>`<script src='${t}'> <\/script>`)).join("")}\n `}}const En=(t,e)=>e.some((e=>t instanceof e));let Sn,Tn;const xn=new WeakMap,Cn=new WeakMap,In=new WeakMap,Rn=new WeakMap,kn=new WeakMap;let Nn={get(t,e,r){if(t instanceof IDBTransaction){if("done"===e)return Cn.get(t);if("objectStoreNames"===e)return t.objectStoreNames||In.get(t);if("store"===e)return r.objectStoreNames[1]?void 0:r.objectStore(r.objectStoreNames[0])}return Pn(t[e])},set:(t,e,r)=>(t[e]=r,!0),has:(t,e)=>t instanceof IDBTransaction&&("done"===e||"store"===e)||e in t};function On(t){Nn=t(Nn)}function Bn(t){return"function"==typeof t?function(t){return t!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?(Tn||(Tn=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])).includes(t)?function(...e){return t.apply(Dn(this),e),Pn(xn.get(this))}:function(...e){return Pn(t.apply(Dn(this),e))}:function(e,...r){const i=t.call(Dn(this),e,...r);return In.set(i,e.sort?e.sort():[e]),Pn(i)}}(t):(t instanceof IDBTransaction&&function(t){if(Cn.has(t))return;const e=new Promise(((e,r)=>{const i=()=>{t.removeEventListener("complete",n),t.removeEventListener("error",s),t.removeEventListener("abort",s)},n=()=>{e(),i()},s=()=>{r(t.error||new DOMException("AbortError","AbortError")),i()};t.addEventListener("complete",n),t.addEventListener("error",s),t.addEventListener("abort",s)}));Cn.set(t,e)}(t),En(t,Sn||(Sn=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction]))?new Proxy(t,Nn):t)}function Pn(t){if(t instanceof IDBRequest)return function(t){const e=new Promise(((e,r)=>{const i=()=>{t.removeEventListener("success",n),t.removeEventListener("error",s)},n=()=>{e(Pn(t.result)),i()},s=()=>{r(t.error),i()};t.addEventListener("success",n),t.addEventListener("error",s)}));return e.then((e=>{e instanceof IDBCursor&&xn.set(e,t)})).catch((()=>{})),kn.set(e,t),e}(t);if(Rn.has(t))return Rn.get(t);const e=Bn(t);return e!==t&&(Rn.set(t,e),kn.set(e,t)),e}const Dn=t=>kn.get(t);function Ln(t,e,{blocked:r,upgrade:i,blocking:n,terminated:s}={}){const o=indexedDB.open(t,e),a=Pn(o);return i&&o.addEventListener("upgradeneeded",(t=>{i(Pn(o.result),t.oldVersion,t.newVersion,Pn(o.transaction),t)})),r&&o.addEventListener("blocked",(t=>r(t.oldVersion,t.newVersion,t))),a.then((t=>{s&&t.addEventListener("close",(()=>s())),n&&t.addEventListener("versionchange",(t=>n(t.oldVersion,t.newVersion,t)))})).catch((()=>{})),a}function Un(t,{blocked:e}={}){const r=indexedDB.deleteDatabase(t);return e&&r.addEventListener("blocked",(t=>e(t.oldVersion,t))),Pn(r).then((()=>{}))}const Mn=["get","getKey","getAll","getAllKeys","count"],Fn=["put","add","delete","clear"],Hn=new Map;function jn(t,e){if(!(t instanceof IDBDatabase)||e in t||"string"!=typeof e)return;if(Hn.get(e))return Hn.get(e);const r=e.replace(/FromIndex$/,""),i=e!==r,n=Fn.includes(r);if(!(r in(i?IDBIndex:IDBObjectStore).prototype)||!n&&!Mn.includes(r))return;const s=async function(t,...e){const s=this.transaction(t,n?"readwrite":"readonly");let o=s.store;return i&&(o=o.index(e.shift())),(await Promise.all([o[r](...e),n&&s.done]))[0]};return Hn.set(e,s),s}On((t=>({...t,get:(e,r,i)=>jn(e,r)||t.get(e,r,i),has:(e,r)=>!!jn(e,r)||t.has(e,r)})));const Wn=["continue","continuePrimaryKey","advance"],Vn={},Gn=new WeakMap,zn=new WeakMap,qn={get(t,e){if(!Wn.includes(e))return t[e];let r=Vn[e];return r||(r=Vn[e]=function(...t){Gn.set(this,zn.get(this)[e](...t))}),r}};async function*Qn(...t){let e=this;if(e instanceof IDBCursor||(e=await e.openCursor(...t)),!e)return;const r=new Proxy(e,qn);for(zn.set(r,e),kn.set(r,Dn(e));e;)yield r,e=await(Gn.get(r)||e.continue()),Gn.delete(r)}function Kn(t,e){return e===Symbol.asyncIterator&&En(t,[IDBIndex,IDBObjectStore,IDBCursor])||"iterate"===e&&En(t,[IDBIndex,IDBObjectStore])}On((t=>({...t,get:(e,r,i)=>Kn(e,r)?Qn:t.get(e,r,i),has:(e,r)=>Kn(e,r)||t.has(e,r)})));var Yn=r(9991),Jn=r.n(Yn);const Xn=1024,Zn=/\[\d]+/,$n=[{match:/\/\/.*(?:gcs-vimeo|vod|vod-progressive|vod-adaptive)\.akamaized\.net.*?\/([\d/]+\.mp4)/,fuzzyCanonReplace:"//vimeo-cdn.fuzzy.replayweb.page/$1",split:".net"},{match:/\/\/.*player.vimeo.com\/(video\/[\d]+)\?.*/i,fuzzyCanonReplace:"//vimeo.fuzzy.replayweb.page/$1"},{match:/www.\washingtonpost\.com\/wp-apps\/imrs.php/,args:[["src"]]},{match:/(static.wixstatic.com\/.*\.[\w]+\/v1\/fill\/)(w_.*)/,replace:"$1?_args=$2",split:"/v1/fill"},{match:/(twimg.com\/profile_images\/[^/]+\/[^_]+)_([\w]+\.[\w]+)/,replace:"$1=_args=$2",split:"_",splitLast:!0},{match:/^https?:\/\/(?:www\.)?(youtube\.com\/embed\/[^?]+)[?].*/i,replace:"$1"},{match:/^(https?:\/\/(?:www\.)?)(youtube\.com\/@[^?]+)[?].*/i,fuzzyCanonReplace:"$1$2"},{match:/\/\/(?:www\.)?youtube(?:-nocookie)?\.com\/(get_video_info)/i,fuzzyCanonReplace:"//youtube.fuzzy.replayweb.page/$1",args:[["video_id"]]},{match:/\/\/(?:www\.)?youtube(?:-nocookie)?\.com\/(youtubei\/v1\/[^?]+\?).*(videoId[^&]+).*/i,fuzzyCanonReplace:"//youtube.fuzzy.replayweb.page/$1$2",args:[["videoId"]]},{match:/\/\/.*googlevideo.com\/(videoplayback)/i,fuzzyCanonReplace:"//youtube.fuzzy.replayweb.page/$1",args:[["id","itag"],["id"]],fuzzyArgs:!0},{match:/facebook\.com\/ajax\/pagelet\/generic.php\/photoviewerinitpagelet/i,args:[[{arg:"data",keys:["query_type","fbid","v","cursor","data"]}]]},{match:/((?:twitter|x)\.com\/[^/]+\/status\/[^?]+)(\?.*)/,fuzzyCanonReplace:"$1"},{match:/((?:twitter|x)\.com\/i\/api\/graphql\/.*)/,args:[["cursor"]],fuzzyArgs:!0},{match:/facebook\.com\/ajax\//i,fuzzySet:!0},{match:(ts=["(callback=jsonp)[^&]+(?=&|$)","((?:\\w+)=jquery)[\\d]+_[\\d]+","utm_[^=]+=[^&]+(?=&|$)","(_|cb|_ga|\\w*cache\\w*)=[\\d.-]+(?=$|&)"],new RegExp("[?&]"+ts.map((t=>"("+t+")")).join("|"),"gi")),replace:""},{match:/(\.(?:js|webm|mp4|gif|jpg|png|css|json|m3u8))\?.*/i,replace:"$1",maxResults:2}];var ts;const es=new class{rules;constructor(t){this.rules=t||$n}getRuleFor(t){let e;const r=-1===t.indexOf("?")?t+"?":t;for(const t of this.rules)if(r.length<4096&&r.match(t.match)){e=t;break}let i=t;e?.fuzzyCanonReplace&&(i=t.replace(e.match,e.fuzzyCanonReplace));const n=e?.split||"?",s=e?.splitLast?t.lastIndexOf(n):t.indexOf(n);return{prefix:s>0?t.slice(0,s+n.length):t,rule:e,fuzzyCanonUrl:i}}getFuzzyCanonsWithArgs(t){let{fuzzyCanonUrl:e,prefix:r,rule:i}=this.getRuleFor(t);e===t&&(e=r);const n=[];if(i?.args){const r=new URL(e),s=new URL(t);for(const t of i.args){const e=new URLSearchParams;for(const r of t)e.set(r,s.searchParams.get(r)||"");r.search=e.toString(),n.push(r.href)}return n}return[e]}fuzzyCompareUrls(t,e,r){if(!e?.length)return null;if(void 0!==r?.replace&&void 0!==r.match&&(!r.maxResults||e.length<=r.maxResults)){const i=r.match,n=r.replace,s=t.replace(i,n),o=[];for(const t of e){const e=t.url.replace(i,n);if(s===e)return t;t.fuzzyMatchUrl=e,o.push(t)}e=o,t=s}return this.fuzzyBestMatchQuery(t,e,r)}fuzzyBestMatchQuery(t,e,r){let i;try{i=new URL(t)}catch(t){return null}const n=r?.args&&!r.fuzzyArgs?new Set(r.args[0]):null;let s=0,o=null;const a=new URLSearchParams(i.search);for(const i of e){if(204===i.status||304===i.status)continue;let e;try{e=new URL(i.fuzzyMatchUrl||i.url)}catch(t){continue}const c=new URLSearchParams(e.search);let l=this.getMatch(a,c,n,r?.fuzzySet);l+=this.getMatch(c,a,n),l/=2,i.status>200&&(l*=10**(1e-4*(200-i.status))),l>s&&(s=l,o=i)}return o}getMatch(t,e,r=null,i=!1){let n=1,s=1;const o={};for(let[a,c]of t){let t,l=e.get(a);if(r&&r.has(a)&&l!==c)return-1e3;t=a.startsWith("_")?.1:10,null!==l&&(n+=.5*t,l.length>Xn&&(l=l.slice(0,Xn))),c&&c.length>Xn&&(c=c.slice(0,Xn));const h=Number(c),u=Number(l);if(s+=t,i&&l&&this.addSetMatch(o,a,c,l),l===c)n+=t*c.length;else if(null===l||null===c)n+=0;else if(isNaN(h)||isNaN(u))if(c.startsWith("{")&&l.startsWith("{"))try{const e=it(c),r=it(l);n+=this.getMatch(e,r)*t*2}catch(e){n+=.5*t*this.levScore(c,l)}else i||(n+=t*this.levScore(c,l));else n+=10-Math.log(Math.abs(h-u)+1)}return n/s+(i?this.paramSetMatch(o,100):0)}addSetMatch(t,e,r,i){if(!(r&&i&&r.startsWith("/")&&i.startsWith("/")))return;const n=e.split(Zn);if(n.length<=1)return;const s=r.indexOf("?"),o=i.indexOf("?"),a=n[0],c=s>0?r.slice(0,s):r,l=o>0?i.slice(0,o):i;t[a]||(t[a]={value:[],found:new Set}),t[a].value.push(c),t[a].found.add(l)}paramSetMatch(t,e){let r=0;for(const i of Object.values(t)){let t=e;for(const e of i.value)i.found.has(e)&&(r+=t),t*=.33}return r}levScore(t,e){const r=Math.min(t.length,e.length),i=Jn()(t,e);return i<r?r-i:0}},rs=new Date("9999-01-01").getTime(),is="warc/revisit";class ns{name;minDedupSize;version;autoHttpsCheck=!0;useRefCounts=!1;allowRepeats=!0;repeatTracker=null;fuzzyPrefixSearch=!0;initing;db=null;constructor(t,e={}){this.name=t,this.db=null;const{minDedupSize:r,noRefCounts:i}=e;this.minDedupSize=Number.isInteger(r)?r:1024,this.version=4,this.autoHttpsCheck=!0,this.useRefCounts=!i,this.allowRepeats=!0,this.repeatTracker=new ss,this.fuzzyPrefixSearch=!0,this.initing=this.init()}async init(){let t=0;this.db=await Ln(this.name,this.version,{upgrade:(e,r,i,n)=>{t=r,this._initDB(e,r,i,n)},blocking:(t,e)=>{e||this.close()}}),1===t&&await this.convertCuratedPagesToV2(this.db)}_initDB(t,e,r,i){if(!e){const e=t.createObjectStore("pages",{keyPath:"id"});e.createIndex("url","url"),e.createIndex("ts","ts"),e.createIndex("state","state"),t.createObjectStore("pageLists",{keyPath:"id",autoIncrement:!0}),t.createObjectStore("curatedPages",{keyPath:"id",autoIncrement:!0}).createIndex("listPages",["list","pos"]);const r=t.createObjectStore("resources",{keyPath:["url","ts"]});r.createIndex("pageId","pageId"),r.createIndex("mimeStatusUrl",["mime","status","url"]),t.createObjectStore("payload",{keyPath:"digest"}).createIndex("digest","digest",{unique:!0}),t.createObjectStore("digestRef",{keyPath:"digest"}).createIndex("digest","digest",{unique:!0})}}async clearAll(){const t=["pages","resources","payload","digestRef"];if(this.db)for(const e of t)await this.db.clear(e)}close(){this.db&&(this.db.close(),this.db=null)}async delete(){this.close(),await Un(this.name,{blocked(t,e){console.log("Unable to delete: "+e)}})}async addPage(t,e){const r=t.url,i=t.title||t.url,n=t.id||this.newPageId(),s=t.state||17;let o=t.ts;if("number"!=typeof o)if(t.timestamp)o=h(t.timestamp).getTime();else{const e=t.ts||t.date||t.datetime;e&&(o=new Date(e).getTime())}const a={...t,url:r,ts:o,title:i,id:n,state:s};return e?(e.store.put(a),a.id):await this.db.put("pages",a)}async addPages(t,e="pages",r=!1){const i=this.db.transaction(e,"readwrite");for(const e of t)r?i.store.put(e):this.addPage(e,i);try{await i.done}catch(t){console.warn("addPages tx",String(t))}}async createPageList(t){const e={title:t.title,desc:t.desc||t.description,slug:t.id||t.slug};return await this.db.put("pageLists",e)}async addCuratedPageList(t,e){const r=await this.createPageList(t);let i=0;for(const t of e)t.pos=i++,t.list=r;await this.addPages(e,"curatedPages")}async addCuratedPageLists(t,e="pages",r="public"){for(const i of t){if(r&&!i[r])continue;const t=i[e]||[];await this.addCuratedPageList(i,t)}}async convertCuratedPagesToV2(t){const e=await t.getAll("curatedPages");if(!e?.length)return;const r=await t.getAll("pages"),i=new Map;for(const t of r)i.set(t.id,t);for(const t of e)if(t.page){const e=i.get(t.page);e&&(t.id=this.newPageId(),t.url=e.url,t.ts=e.ts,!t.title&&e.title&&(t.title=e.title)),delete t.page}await t.clear("curatedPages");const n=t.transaction("curatedPages","readwrite");for(const t of e)n.store.put(t);try{await n.done}catch(t){console.warn("Conversion Failed",t)}}async getCuratedPagesByList(){const t=await this.db.getAll("pageLists"),e=this.db.transaction("curatedPages","readonly");for await(const r of e.store.index("listPages").iterate()){const e=t[r.value.list-1];e&&(e.show=!0,e.pages||(e.pages=[]),e.pages.push(r.value))}return t}newPageId(){return g()}async getAllPages(){return await this.db.getAll("pages")}async getPages(t){const e=[];t.sort();for await(const r of this.matchAny("pages",null,t))e.push(r);return e}async getTimestampsByURL(t){const e=this.db.transaction("resources"),r=IDBKeyRange.bound([t],[t,rs]),i=[];for await(const t of e.store.iterate(r))i.push(t.key[1]);return i}async getPagesWithState(t){return await this.db.getAllFromIndex("pages","state",t)}async getVerifyInfo(){return{}}async addVerifyData(t="",e,r,i=null,n=!1){}async addVerifyDataList(t,e){}async dedupResource(t,e,r,i=1){const n=r.objectStore("digestRef"),s=await n.get(t);if(s)return++s.count,s;if(e)try{return r.objectStore("payload").put({digest:t,payload:e}),{digest:t,count:i,size:e.length}}catch(t){console.log(t)}return null}async addResources(t){const e=[],r=[],i=[],n={},s=new Set,o=this.db.transaction(["digestRef","payload"],"readwrite");for(const a of t){let t=1;const c=a.status||200,l=a.mime===is?e:c>=300?r:i;l.push(a);const h=this.getFuzzyUrl(a);if(h&&(l.push(h),t=2),this.useRefCounts&&a.digest){const e=n[a.digest];e?(e.count+=t,s.add(a.digest)):n[a.digest]=await this.dedupResource(a.digest,a.payload,o,t),delete a.payload}}if(this.useRefCounts){const t=o.objectStore("digestRef");for(const e of s)t.put(n[e])}try{await o.done}catch(t){console.error("Payload and Ref Count Bulk Add Failed: ",t)}const a=this.db.transaction("resources","readwrite");for(const t of e)a.store.put(t);for(const t of r)a.store.put(t);for(const t of i)a.store.put(t);try{await a.done}catch(t){console.error("Resources Bulk Add Failed",t)}}getFuzzyUrl(t){if(t.status&&t.status>=200&&t.status<400&&304!==t.status&&204!==t.status){const{fuzzyCanonUrl:e}=es.getRuleFor(t.url);return e&&e!==t.url?{url:e,ts:t.ts,origURL:t.url,origTS:t.ts,pageId:t.pageId,digest:t.digest}:null}return null}async addResource(t){t.payload&&t.payload.length>this.minDedupSize&&(t.digest||(t.digest=await p(t.payload,"sha-256")));let e=null,r=!1;const i=this.db.transaction(["resources","digestRef","payload"],"readwrite");if(t.payload&&t.payload.length>this.minDedupSize?(e=await this.dedupResource(t.digest||"",t.payload,i),r=!!e&&1===e.count,delete t.payload):t.payload&&(r=!0),t.mime!==is){i.objectStore("resources").put(t);const r=this.getFuzzyUrl(t);r&&(i.objectStore("resources").put(r),e&&e.count++)}else i.objectStore("resources").add(t);e&&i.objectStore("digestRef").put(e);try{await i.done}catch(e){t.mime===is?console.log("Skip Duplicate revisit for: "+t.url):console.log("Add Error for "+t.url),console.log(e)}return r}async getResource(t,e,r,i={}){const n=h(t.timestamp).getTime();let s=t.url,o=null;const a=this.repeatTracker?this.repeatTracker.getSkipCount(r,s,t.request.method):0,c={...i,skip:a};if(s.startsWith("//")){let e=!1;o=await this.lookupUrl("https:"+s,n,c),o||(o=await this.lookupUrl("http:"+s,n,c),(o||t.request.referrer.indexOf("/http://",2)>0)&&(e=!0)),s=(e?"http:":"https:")+s}else if(o=await this.lookupUrl(s,n,c),!o&&this.autoHttpsCheck&&s.startsWith("http://")){const t=s.replace("http://","https://");o=await this.lookupUrl(t,n,c),o&&(s=t)}if(o||!this.fuzzyPrefixSearch||i.noFuzzyCheck||(o=await this.lookupQueryPrefix(s,i)),o?.origURL){const t=await this.lookupUrl(o.origURL,o.origTS||o.ts,i);t&&(s=t.url,o=t)}if(!o)return null;const l=o.status||0,u=o.statusText||b(l);let p=null;if(!w(l)&&(p=await this.loadPayload(o,i),!p))return null;const d=o.respHeaders?y(o.respHeaders):new Headers,f=new Date(o.ts),g=o.extraOpts||null;return s=o.url,s!==t.url&&d.set("Content-Location",s),new ln({url:s,payload:p,status:l,statusText:u,headers:d,date:f,extraOpts:g})}async loadPayload(t,e){if(t.digest&&!t.payload){if("sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"===t.digest||"sha1:3I42H3S6NNFQ2MSVX7XZKYAYSCX5QBYJ"===t.digest)return new Uint8Array([]);const e=await this.db.get("payload",t.digest);if(!e)return null;const{payload:r}=e;return r}return t.payload||null}isSelfRedirect(t,e){try{if(e?.respHeaders&&e.status&&e.status>=300&&e.status<400){const r=new Headers(e.respHeaders).get("location")||"";if(new URL(r,t).href===t)return!0}}catch(t){}return!1}async lookupUrl(t,e,r={}){const i=this.db.transaction("resources","readonly");if(e){const n=IDBKeyRange.bound([t,e],[t,rs]);if(r.noRevisits||r.pageId){let e=await i.store.getAll(n,16);e=e||[];for(const i of e)if(!(r.pageId&&i.pageId&&i.pageId!==r.pageId||r.noRevisits&&i.mime===is||this.isSelfRedirect(t,i)))return i}else{const r=await i.store.get(n);if(r&&this.isSelfRedirect(t,r))e+=1e4;else if(r)return r}}const n=IDBKeyRange.bound([t],[t,e||rs]);for await(const e of i.store.iterate(n,"prev")){const i=e.value;if(!(r.pageId&&i.pageId&&i.pageId!==r.pageId||r.noRevisits&&i.mime===is||this.isSelfRedirect(t,i)))return i}return null}async lookupQueryPrefix(t,e){const{rule:r,prefix:i,fuzzyCanonUrl:n}=es.getRuleFor(t);if(n!==t){const t=await this.lookupUrl(n,0,e);if(t)return t}if(!r&&i===t&&i===n&&!t.endsWith("?"))return null;const s=await this.db.getAll("resources",this.getLookupRange(i,"prefix"),128e3);return es.fuzzyCompareUrls(t,s,r)}resJson(t){const e=new Date(t.ts).toISOString();return{url:t.url,date:e,ts:l(e),mime:t.mime||"",status:t.status||0}}async resourcesByPage(t){return this.db.getAllFromIndex("resources","pageId",t)}async*resourcesByPages2(t){t.sort(),yield*this.matchAny("resources","pageId",t)}async*resourcesByPages(t){const e=this.db.transaction("resources","readonly");for await(const r of e.store.iterate())t.includes(r.value.pageId)&&(yield r.value)}async*matchAny(t,e,r,i,n=!1){const s=this.db.transaction(t,"readonly"),o=IDBKeyRange.lowerBound(r[0],n);let a=e?await s.store.index(e).openCursor(o):await s.store.openCursor(o),c=0;for(;a&&c<r.length;){let t,e,n;void 0!==i?(t=a.key[i],e=r[c][i],n=t.startsWith(e)):(t=a.key,e=r[c],n=t===e),!n&&t>e?++c:n?(yield a.value,a=await a.continue()):a=await a.continue(r[c])}}async resourcesByUrlAndMime(t,e,r=1e3,i=!0,n="",s=""){const o=e?0:r,a=await this.db.getAll("resources",this.getLookupRange(t,i?"prefix":"exact",n,s),o),c=e.split(","),l=[];for(const t of a)for(const e of c)if(!e||t.mime?.startsWith(e)){if(l.push(this.resJson(t)),l.length===r)return l;break}return l}async resourcesByMime(t,e=100,r="",i="",n=0){const s=t.split(","),o=[];s.sort();const a=[];r&&a.push([r,n,i]);for(const t of s)(!r||!t||t>r)&&a.push([t,0,""]);for await(const t of this.matchAny("resources","mimeStatusUrl",a,0,!0))if(o.push(this.resJson(t)),o.length===e)break;return o}async deletePage(t){const e=this.db.transaction("pages","readwrite"),r=await e.store.get(t);await e.store.delete(t);const i=await this.deletePageResources(t);return{pageSize:r?.size||0,dedupSize:i}}async deletePageResources(t){const e={},r=this.db.transaction("resources","readwrite");let i=await r.store.index("pageId").openCursor(t),n=0;for(;i;){const t=i.value.digest;t?e[t]=(e[t]||0)+1:i.value.payload&&(n+=i.value.payload.length),r.store.delete(i.primaryKey),i=await i.continue()}await r.done;const s=this.db.transaction(["payload","digestRef"],"readwrite"),o=s.objectStore("digestRef");for(const t of Object.keys(e)){const r=await o.get(t);r&&(r.count-=e[t]),r&&r.count>=1?o.put(r):(n+=r?r.size:0,o.delete(t),s.objectStore("payload").delete(t))}return await s.done,n}prefixUpperBound(t){return t.slice(0,-1)+String.fromCharCode(t.charCodeAt(t.length-1)+1)}getLookupRange(t,e,r,i){let n,s,o;switch(e){case"prefix":n=[t],s=[this.prefixUpperBound(t)];break;case"host":{const e=new URL(t).origin;n=[e+"/"],s=[e+"0"];break}default:n=[t],s=[t,Number.MAX_SAFE_INTEGER]}return r?(n=[r,i||""],o=!0):o=!1,IDBKeyRange.bound(n,s,o,!0)}}class ss{repeats={};getSkipCount(t,e,r){if("POST"!==r&&!e.endsWith(".m3u8"))return 0;t.replacesClientId&&delete this.repeats[t.replacesClientId];const i=t.resultingClientId||t.clientId;return i?(void 0===this.repeats[i]&&(this.repeats[i]={}),void 0===this.repeats[i][e]?this.repeats[i][e]=0:this.repeats[i][e]++,this.repeats[i][e]):0}}const os=["script","style","header","footer","banner-div","noscript"];class as{batchSize;promises=[];batch=[];count=0;dupeSet=new Set;db;constructor(t=1e3){this.batchSize=t}addPage(t){this.promises.push(this.db.addPage(t))}isBatchFull(){return this.batch.length>=this.batchSize}addResource(t){if(this.isBatchFull()&&this.flush(),Number.isNaN(t.ts))return void console.warn("Skipping resource with missing/invalid ts: "+t.url);const e=t.url+" "+t.ts;if("warc/revisit"===t.mime){if(this.dupeSet.has(e))return void console.warn("Skipping duplicate revisit, prevent overriding non-revisit")}else this.dupeSet.add(e);this.batch.push(t)}flush(){this.batch.length>0&&this.promises.push(this.db.addResources(this.batch)),console.log(`Read ${this.count+=this.batch.length} records`),this.batch=[]}async finishIndexing(){this.flush(),this._finishLoad();try{await Promise.all(this.promises)}catch(t){console.warn(t)}this.promises=[]}_finishLoad(){}}class cs extends as{reader;abort;loadId;sourceExtra;anyPages=!1;detectPages=!1;_lastRecord=null;metadata={};pages=[];lists=[];pageMap={};constructor(t,e=null,r=null,i=null){super(),this.reader=t,this.abort=e,this.loadId=r,this._lastRecord=null,this.metadata={},this.pageMap={},this.pages=[],this.lists=[],this.sourceExtra=i}parseWarcInfo(t){if(!t.payload)return;const e=new TextDecoder("utf-8").decode(t.payload);for(const r of e.split("\n"))if(r.startsWith("json-metadata:"))try{const t=JSON.parse(r.slice(14));if("collection"===t.type&&(this.metadata.desc=t.desc,this.metadata.title=t.title),t.pages?.length){this.pages=this.pages.concat(t.pages);for(const e of t.pages)e.ts=h(e.timestamp).getTime(),this.pageMap[e.ts+"/"+e.url]={page:e};this.anyPages=!0}t.lists?.length&&(this.lists=this.lists.concat(t.lists))}catch(t){console.log("Page Add Error",t.toString())}}index(t,e){if("warcinfo"!==t.warcType){if(this._lastRecord)return this._lastRecord.warcTargetURI!=t.warcTargetURI?(this.indexReqResponse(this._lastRecord,null,e),void(this._lastRecord=t)):void("request"===t.warcType&&"response"===this._lastRecord.warcType?(this.indexReqResponse(this._lastRecord,t,e),this._lastRecord=null):"response"===t.warcType&&"request"===this._lastRecord.warcType?(this.indexReqResponse(t,this._lastRecord,e),this._lastRecord=null):(this.indexReqResponse(this._lastRecord,null,e),this._lastRecord=t));this._lastRecord=t}else this.parseWarcInfo(t)}indexDone(t){this._lastRecord&&(this.indexReqResponse(this._lastRecord,null,t),this._lastRecord=null)}shouldIndexMetadataRecord(t){return!!t.warcTargetURI?.startsWith("metadata://")}parseRevisitRecord(t,e){const r=t.warcTargetURI.split("#")[0],i=t.warcDate,n=i?new Date(i).getTime():Date.now();let s,o=null;if(t.httpHeaders){const i=this.parseResponseHttpHeaders(t,r,e);i&&(o=Object.fromEntries(i.headers.entries()),s=i.status)}const a=t.warcRefersToTargetURI,c=new Date(t.warcRefersToDate).getTime();return a===r&&c===n?null:{url:r,ts:n,origURL:a,origTS:c,digest:t.warcPayloadDigest||null,pageId:null,respHeaders:o,status:s}}parseResponseHttpHeaders(t,e,r){let i=200,n=null,s="";const o=r?.httpHeaders?.method;if(t.httpHeaders){if(i=Number(t.httpHeaders.statusCode)||200,"OPTIONS"===o||"HEAD"===o)return null;if(n=y(t.httpHeaders.headers),s=(n.get("content-type")||"").split(";")[0],206===i&&!this.isFullRangeRequest(n))return null}else n=new Headers,n.set("content-type",t.warcContentType),n.set("content-length",String(t.warcContentLength)),s=t.warcContentType||"";return{status:i,method:o,headers:n,mime:s}}indexReqResponse(t,e,r){const i=this.parseRecords(t,e);i&&this.addResource(i)}parseRecords(t,e){switch(t.warcType){case"revisit":return this.parseRevisitRecord(t,e);case"resource":e=null;break;case"response":break;case"metadata":if(!this.shouldIndexMetadataRecord(t))return null;break;default:return null}let r=t.warcTargetURI.split("#")[0];const i=t.warcDate,n=this.parseResponseHttpHeaders(t,r,e);if(!n)return null;const{status:s,method:o,headers:a,mime:c}=n;let l,h,u=null,p=null;if(e?.httpHeaders?.headers){let t=null;try{t=new Headers(e.httpHeaders.headers);const r=t.get("cookie");r&&a.set("x-wabac-preset-cookie",r),u=e.httpHeaders.headers.get("Referer")||null}catch(e){t=new Headers,console.warn(e)}if(h=Object.fromEntries(t.entries()),"GET"!==o){const i={headers:t,method:o||"GET",url:r,postData:e.payload};et(i)&&(l=r,r=i.url,p=e.payload)}}if(void 0===this.detectPages&&(this.detectPages=!this.anyPages),this.detectPages&&function(t,e,r){if(200!=e)return!1;if(!t.startsWith("http:")&&!t.startsWith("https:")&&!t.startsWith("blob:"))return!1;if(t.endsWith("/robots.txt"))return!1;const i=t.split("?",2);return!(2===i.length&&i[1].length>i[0].length)&&(!i[0].substring(i[0].lastIndexOf("/")+1).startsWith(".")&&(!r||"text/html"===r))}(r,s,c)){const t=r;this.addPage({url:r,date:i,title:t})}const d=i?new Date(i).getTime():Date.now(),f=Object.fromEntries(a.entries()),g=t.warcPayloadDigest||null,y=t.payload,m={url:r,ts:d,status:s,mime:c,respHeaders:f,reqHeaders:h,digest:g,payload:y,reader:y?null:t.reader,referrer:u};this.pageMap[d+"/"+r]&&y&&c.startsWith("text/")&&(this.pageMap[d+"/"+r].textPromise=async function(t,e,r,i){const n=new Ki,s=[];let o=null;n.on("text",(t=>{if(o)return;const e=t.text.trim();e&&s.push(e)})),n.on("startTag",(t=>{!t.selfClosing&&os.includes(t.tagName)&&(o=t.tagName)})),n.on("endTag",(t=>{t.tagName===o&&(o=null)})),(r||i)&&(e=await Bt(e,r,i)),n.end((new TextDecoder).decode(e));const a=new Promise((t=>{n.on("end",(()=>{t(s.join(" "))}))}));return await a}(0,y,a.get("content-encoding"),a.get("transfer-encoding")));const w=t.warcHeader("WARC-JSON-Metadata");if(w)try{m.extraOpts=JSON.parse(w)}catch(t){}const b=t.warcHeader("WARC-Page-ID");return b&&(m.pageId=b),this.sourceExtra&&(m.source=this.sourceExtra),"GET"!==o&&l&&(m.requestUrl=l,m.method=o,m.requestBody=p||new Uint8Array([])),m}isFullRangeRequest(t){const e=t.get("content-range"),r=parseInt(t.get("content-length")||"0");return e&&e===`bytes 0-${r-1}/${r}`}filterRecord(t){return null}async load(t,e,r=0){if(e&&!r)throw new Error("totalSize is required");this.db=t;const i=new It(this.reader);let n=0,s=0,o=0;try{for await(const a of i){if(o++,!a.warcType){console.log("skip empty record");continue}const c=self.interruptLoads;if(e&&this.loadId&&c[this.loadId])throw e(Math.round(i.offset/r*95),"Loading Canceled",i.offset,r),c[this.loadId](),this.abort&&this.abort.abort(),new C;if(s=(new Date).getTime(),s-n>500){const t=`Processed ${o} records`;e(Math.round(i.offset/r*95),null,i.offset,r,null,t),n=s}const l=this.filterRecord(a);if("done"===l){this.abort&&this.abort.abort();break}if("skip"!==l&&("skipContent"===l?await a.skipFully():await a.readFully(),o++,this.index(a,i),this.promises.length>0)){try{await Promise.all(this.promises)}catch(t){console.warn(t.toString())}this.promises=[]}}}catch(t){if(t instanceof C)throw t;e(Math.round(i.offset/r*95),`Sorry there was an error downloading. Please try again (${t})`,i.offset,r),console.warn(t)}return this.indexDone(i),e(95,null,i.offset,r),await this.finishIndexing(),e(100,null,r,r),this.metadata}async _finishLoad(){if(this.pages.length){for(const{page:t,textPromise:e}of Object.values(this.pageMap))if(e)try{t.text=await e}catch(t){console.warn("Error adding text: "+t.toString())}this.promises.push(this.db.addPages(this.pages))}this.lists.length&&this.promises.push(this.db.addCuratedPageLists(this.lists,"bookmarks","public"))}}class ls extends cs{constructor(t){super(t),this.detectPages=!1}addPage(){}async load(){const t=await new It(this.reader).parse();if(!t)return null;const e=this.parseRecords(t,null);return e&&"revisit"!==t.warcType||await t.readFully(),e}}const hs="https://w3s.link/";function us(t){const{hostname:e,protocol:r,pathname:i}=new URL(t),n=r.slice(0,-1);if(!e){const[t,...e]=i.slice(2).split("/");return{type:n,cid:t,path:"/"+e.join("/")}}return{type:n,cid:e,path:i}}async function ps(t){return ws(t)?t:bs(t)?gs(t):t}async function ds(t){return new Response(t).blob()}async function*fs(t){const e=await t.getReader();try{for(;;){const{done:t,value:r}=await e.read();if(t)return;yield r}}finally{e.releaseLock()}}function gs(t){let e=t;e.next||(e=t[Symbol.asyncIterator]());const r=new TextEncoder;return new ReadableStream({async pull(t){const{value:i,done:n}=await e.next();if(n)await t.close();else{let e=i;"string"==typeof e&&(e=r.encode(e)),await t.enqueue(e)}}})}async function ys(t){if(!t.ok){const e=await t.text(),r=t.status;throw new Error(`HTTP Error ${r}: ${e}`)}}async function ms({url:t,file:e,fileName:r="",parameterName:i="file",fetch:n=globalThis.fetch,signal:s}){const o=new FormData,a=new Headers;As(t,a);const c=await async function(t){if(ws(t))return await ds(t);if(bs(t)){const e=gs(t);return await ds(e)}return t instanceof Blob?t:new Blob([t])}(e);r?o.append(i,c,r):o.append(i,c);const l=await n(t,{method:"POST",body:o,headers:a,signal:s});return await ys(l),l}function ws(t){return"function"==typeof t.getReader}function bs(t){return t[Symbol.asyncIterator]}function As(t,e){if(t.password)if(t.username){const r=`Basic ${btoa(`${unescape(t.username)}:${unescape(t.password)}`)}`;e.append("Authorization",unescape(r)),t.username="",t.password=""}else{const r=`Bearer ${t.password}`;e.append("Authorization",unescape(r)),t.password=""}}async function vs({url:t,fetch:e=globalThis.fetch,signal:r}){const i=await e(t,{method:"HEAD",signal:r});await ys(i);const n=i.headers.get("x-ipfs-datasize")||i.headers.get("Content-Length");return parseInt(n,10)}async function*_s({url:t,start:e,end:r,format:i,signal:n,fetch:s=globalThis.fetch}){const o=new Headers;Number.isInteger(e)&&(Number.isInteger(r)?o.set("Range",`bytes=${e}-${r}`):o.set("Range",`bytes=${e}-`));const a=new URL(t);i&&(o.set("Accept",`application/vnd.ipld.${i}`),o.set("cache-control","no-cache"));const c=await s(a.href,{headers:o,signal:n});await ys(c),yield*fs(c.body)}function Es(){if(!globalThis.location)return hs;const{pathname:t,hostname:e,protocol:r}=globalThis.location;if(t.startsWith("/ipfs/")||t.startsWith("/ipns/"))return`${r}//${e}/`;const[i,...n]=e.split(".");return 59===i.length&&n.length>=2?`${r}//${n.join(".")}/`:hs}let Ss=!1;const Ts=[5001,45001,45002,45003,45004,45005],xs="https://api.web3.storage/",Cs="https://api.estuary.tech/",Is="http://localhost:5001/",Rs="agregore",ks="daemon",Ns="web3.storage",Os="estuary",Bs="readonly",Ps=[Rs,ks,Ns,Os,Bs];class Ds{get type(){return"invalid"}async*get(t,{start:e,end:r,signal:i=null,format:n=null}={}){throw new Error("Not Implemented")}async getSize(t,e=null){throw new Error("Not Implemented")}async uploadCAR(t,e=null){throw new Error("Not Implemented")}async uploadFile(t,e,r=null){throw new Error("Not Implemented")}async clear(t,e=null){throw new Error("Not Implemented")}}async function Ls({chooseOrder:t=Ps,...e}={}){const r=function(t,e=Ps){const r=t.filter((({type:t})=>e.includes(t))).sort((({type:t},{type:r})=>e.indexOf(t)-e.indexOf(r)))[0];if(!r)throw new Error("Unable to find valid type");return r}(await async function({daemonURL:t,web3StorageToken:e,web3StorageURL:r=xs,estuaryToken:i,estuaryURL:n=Cs,publicGatewayURL:s=Es(),readonly:o=!0,timeout:a=1e3,fetch:c=globalThis.fetch}={}){const l=[],h=[];if(h.push(async function(t=globalThis.fetch){try{return await t("ipfs://localhost/"),!0}catch(t){return Ss&&console.warn("Unable to detect Agregore",t),!1}}(c).then((t=>t&&l.push({type:Rs,fetch:c})))),h.push(async function(){const t=Ts.map((t=>`http://localhost:${t}`));try{const r=await Promise.any(t.map((t=>Gs(t).then((e=>{if(e)return t;throw new Error("Not found")})))));return!!r&&(Vs&&!Ws&&(e=r,Ws=!0,globalThis.chrome.webRequest.onBeforeSendHeaders.addListener((t=>{const{requestHeaders:r}=t;for(const t of r)if("origin"===t.name.toLowerCase())return t.value=e,{requestHeaders:r};return t.requestHeaders.push({name:"Origin",value:e}),{requestHeaders:r}}),{urls:[e+"/*"]},["blocking","requestHeaders","extraHeaders"])),r)}catch{return!1}var e}().then((t=>t&&l.push({type:ks,url:t,fetch:c})))),t&&h.push(Gs(t,a,c).then((e=>e&&l.push({type:ks,url:t,fetch:c})))),i){const t=n,e=i;l.push({type:Os,url:t,authorization:e,fetch:c,publicGatewayURL:s})}if(e){const t=r,i=e;l.push({type:Ns,url:t,authorization:i,fetch:c,publicGatewayURL:s})}return o&&s&&l.push({type:Bs,fetch:c,publicGatewayURL:s}),await Promise.allSettled(h),l}(e),t);return async function(t){const{type:e}=t;let r=null;if(e===Rs)r=new Fs(t.fetch||globalThis.fetch);else if(e===ks)r=new js(t.url);else if(e===Ns)r=new Hs(t.authorization,t.url,t.publicGatewayURL);else if(e===Os)r=new Ms(t.authorization,t.url,t.publicGatewayURL);else{if(e!==Bs)throw new TypeError(`Unknown API type: ${e}.`);r=new Us(t.publicGatewayURL)}return r}(r)}class Us extends Ds{constructor(t=Es()){super(),this.gatewayURL=t}get type(){return Bs}async*get(t,{start:e,end:r,signal:i=null,format:n=null}={}){yield*async function*({url:t,start:e,end:r,format:i,signal:n,gatewayURL:s=Es()}){const o=function(t,e=Es()){const{cid:r,path:i,type:n}=us(t);return new URL(`/${n}/${r}${i}`,e)}(t,s);yield*_s({url:o,start:e,end:r,format:i,signal:n})}({url:t,start:e,end:r,format:n,gatewayURL:this.gatewayURL,signal:i})}async getSize(t,e=null){const{cid:r,path:i,type:n}=us(t);return vs({url:new URL(`/${n}/${r}${i}`,this.gatewayURL),signal:e})}}class Ms extends Us{constructor(t,e=Cs,r=Es()){super(r),this.authorization=t,this.url=e}get type(){return Os}async uploadCAR(t,e=null){throw new Error("Not Implemented")}async uploadFile(t,e,r=null){const i=new URL("/content/add",this.url);i.password=this.authorization;const n=await ms({url:i,file:t,fileName:e,parameterName:"data",signal:r}),{cid:s}=await n.json();return`ipfs://${s}/`}}class Fs extends Ds{constructor(t=globalThis.fetch){super(),this.fetch=t}get type(){return Rs}async*get(t,{start:e,end:r,signal:i=null,format:n=null}={}){const{fetch:s}=this;yield*_s({url:t,start:e,end:r,format:n,fetch:s,signal:i})}async getSize(t,e=null){const{fetch:r}=this;return vs({url:t,fetch:r,signal:e})}async uploadCAR(t,e=null){const r=await ps(t),{fetch:i}=this,n=await i("ipfs://localhost",{method:"POST",headers:{"Content-Type":"application/vnd.ipld.car"},signal:e,body:r});return await ys(n),(await n.text()).split("\n")}async uploadFile(t,e=null){const r=await ps(t),{fetch:i}=this,n=await i("ipfs://localhost",{method:"POST",headers:{"Content-Type":"application/octet-stream"},signal:e,body:r});return await ys(n),n.headers.get("Location")}}class Hs extends Us{constructor(t,e=xs,r=Es()){super(r),this.authorization=t,this.url=e}get type(){return Ns}async uploadCAR(t,e=null){const r=new URL("/car",this.url);r.password=this.authorization;const i=await async function({url:t,fileIterator:e,signal:r}){const i=new Headers;i.set("Content-Type","application/octet-stream"),As(t,i);const n=await ps(e),s=await fetch(t,{method:"POST",signal:r,body:n,headers:i,duplex:"half"});return await ys(s),s}({url:r,fileIterator:t,signal:e});return(await i.text()).split("\n").filter((t=>t)).map((t=>{const{cid:e}=JSON.parse(t);return`ipfs://${e}/`}))}async uploadFile(t,{fileName:e="",signal:r=null}={}){const i=new URL("/upload",this.url);i.password=this.authorization;const n=await ms({url:i,file:t,fileName:e,signal:r}),{cid:s}=await n.json();return`ipfs://${s}/`}}class js extends Ds{constructor(t=Is){super(),this.url=t}get type(){return ks}async*get(t,{start:e,end:r,signal:i=null,format:n=null}={}){const{cid:s,path:o,type:a}=us(t),c=new URL(`/api/v0/cat?arg=/${a}/${s}${o}`,this.url);if(e&&c.searchParams.set("offset",e),r&&c.searchParams.set("length",r-(e||0)+1),n)throw new Error("Format is unsupported on Kubo Daemons for now");const l=await fetch(c,{method:"POST",signal:i});await ys(l),yield*fs(l.body)}async getSize(t,e=null){try{const{cid:r,path:i,type:n}=us(t),s=`/api/v0/file/ls?arg=/${n}/${r}${i}&size=true`,o=new URL(s,this.url),a=await fetch(o,{method:"POST",signal:e});await ys(a);const{Objects:c}=await a.json(),[{Size:l}]=Object.values(c);return l}catch(r){return Ss&&console.warn(r),this._getSizeWithDag(t,e)}}async _getSizeWithDag(t,e=null){const{cid:r,path:i,type:n}=us(t),s=new URL(`/api/v0/dag/stat?arg=/${n}/${r}${i}`,this.url),o=await fetch(s,{method:"POST",signal:e});await ys(o);const{Size:a}=await o.json();return parseInt(a,10)}async _pin(t,e=null){const{cid:r,path:i,type:n}=us(t),s=new URL(`/api/v0/pin/add?arg=/${n}/${r}${i}`,this.url),o=await fetch(s,{method:"POST",signal:e});await ys(o)}async _unpin(t,e=null){const{cid:r,path:i,type:n}=us(t),s=new URL(`/api/v0/pin/rm?arg=/${n}/${r}${i}`,this.url),o=await fetch(s,{method:"POST",signal:e});await ys(o)}async clear(t,e=null){return this._unpin(t,e)}async uploadCAR(t,e=null){const r=new URL("/api/v0/dag/import?allow-big-block=true&pin-roots=true",this.url),i=await ms({url:r,file:t,signal:e});return(await i.text()).split("\n").filter((t=>t)).map((t=>{const{Root:e}=JSON.parse(t);return`ipfs://${e.Cid["/"]}/`}))}async uploadFile(t,e="",r=null){const i=new URL("/api/v0/add?pin=true&cid-version=1&inline=false&raw-leaves=true",this.url),n=t.name&&t instanceof Blob;(e||n)&&i.searchParams.set("wrap-with-directory","true");const s=await ms({url:i,file:t,fileName:e,signal:r}),o=await s.text(),[a]=o.split("\n"),{Hash:c}=JSON.parse(a),l=`ipfs://${c}/`;return await this._pin(l,r),l}}let Ws=!1;const Vs=!!(globalThis&&globalThis.chrome&&globalThis.chrome.webRequest&&globalThis.chrome.webRequest.onBeforeSendHeaders&&globalThis.chrome.webRequest.onBeforeSendHeaders.addListener);async function Gs(t=Is,e=1e3,r=globalThis.fetch){try{const i=new AbortController,{signal:n}=i;setTimeout((()=>i.abort()),e);const s=await r(new URL("/api/v0/version",t),{method:"POST",signal:n});return!!s.ok||!(!s.status||404===s.status)}catch(e){return Ss&&console.warn("Unable to detect Kubo Daemon",e,t),!1}}let zs=null;async function qs(t){return zs||(zs=await Ls(t)),zs}const Qs="https://helper-proxy.webrecorder.workers.dev";async function Ks(t){const{url:e}=t;if(t.extra?.arrayBuffer)return new Zs(t.extra.arrayBuffer);const r=e.split(":",1)[0];switch(r){case"blob":return new $s(t);case"http":case"https":return new Js(t);case"file":return new to(t);case"googledrive":return new Xs(t);case"ipfs":return new eo(t)}try{if(self.location&&r===self.location.protocol.split(":")[0])return new Js(t)}catch(t){}try{return await fetch(`${r}://localhost`,{method:"HEAD"}),new Js(t)}catch(t){}throw new Error("Invalid URL: "+e)}class Ys{canLoadOnDemand=!0;headers={};length=null;constructor(t){this.canLoadOnDemand=t}}class Js extends Ys{url;length;isValid=!1;ipfsAPI=null;loadingIPFS=null;constructor({url:t,headers:e,length:r=null,canLoadOnDemand:i=!1}){super(i),this.url=t,this.headers=e||{},this.length=r,this.canLoadOnDemand=i}async doInitialFetch(t,e=!1){const r=new Headers(this.headers);e||r.set("Range","bytes=0-"),this.isValid=!1;let i=null,n=null;if(t)try{n=await this.retryFetch(this.url,{headers:r,method:"HEAD",cache:"no-store"}),200!==n.status&&206!=n.status||(this.canLoadOnDemand=206===n.status||"bytes"===n.headers.get("Accept-Ranges"),this.isValid=!0)}catch(t){}if(!this.isValid||!this.canLoadOnDemand){i=new AbortController;const e=i.signal;n=await this.retryFetch(this.url,{headers:r,signal:e,cache:"no-store"}),this.canLoadOnDemand=206===n.status||"bytes"===n.headers.get("Accept-Ranges"),this.isValid=206===n.status||200===n.status,t&&(i.abort(),i=null)}if(null===this.length&&n&&(this.length=Number(n.headers.get("Content-Length")),!this.length&&206===n.status)){const t=n.headers.get("Content-Range");if(t){const e=t.split("/");2===e.length&&(this.length=parseInt(e[1]))}}if(null===this.length)try{const t=await fetch(`${Qs}/c/${this.url}`),e=await t.json();e.size&&(this.length=e.size)}catch(t){console.log("Error fetching from helper: "+t.toString())}return this.length=Number(this.length||0),{response:n,abort:i}}async getLength(){if(null===this.length){const{abort:t}=await this.doInitialFetch(!0);t&&t.abort()}return this.length||0}async getRange(t,e,r=!1,i=null){const n=new Headers(this.headers);n.set("Range",`bytes=${t}-${t+e-1}`);const s={signal:i,headers:n,cache:"no-store"};let o;try{o=await this.retryFetch(this.url,s)}catch(t){throw console.log(t),new S(this.url)}if(206!=o.status){const t={url:this.url,status:o.status,resp:o};throw 401===o.status?new T(t):403==o.status?new x(t):new S(t)}return r?o.body||new Uint8Array:new Uint8Array(await o.arrayBuffer())}async retryFetch(t,e){let r=1e3;for(let i=0;i<20;i++){const i=await fetch(t,e);if(429!==i.status)return i;await I(r),r+=2e3}throw new Error("retryFetch failed")}}class Xs extends Ys{fileId;apiUrl;length;publicUrl=null;isValid=!1;constructor({url:t,headers:e,size:r,extra:i}){super(!0),this.fileId=t.slice(14),this.apiUrl=`https://www.googleapis.com/drive/v3/files/${this.fileId}?alt=media`,this.headers=e||{},i?.publicUrl&&(this.publicUrl=i.publicUrl),this.length=r||0}async getLength(){return this.length}async doInitialFetch(t){let e=null,r=null;if(this.publicUrl){e=new Js({url:this.publicUrl,length:this.length});try{r=await e.doInitialFetch(t)}catch(t){}if(!e.isValid&&(r&&r.abort&&r.abort.abort(),await this.refreshPublicUrl())){e=new Js({url:this.publicUrl,length:this.length});try{r=await e.doInitialFetch(t)}catch(t){}!e.isValid&&r&&r.abort&&r.abort.abort()}}return e?.isValid||(this.publicUrl=null,e=new Js({url:this.apiUrl,headers:this.headers,length:this.length}),r=await e.doInitialFetch(t)),this.isValid=e.isValid,!this.length&&e.length&&(this.length=e.length),r}async getRange(t,e,r=!1,i){let n=null;if(this.publicUrl){n=new Js({url:this.publicUrl,length:this.length});try{return await n.getRange(t,e,r,i)}catch(s){if(await this.refreshPublicUrl()){n=new Js({url:this.publicUrl,length:this.length});try{return await n.getRange(t,e,r,i)}catch(t){}}}this.publicUrl=null}n=new Js({url:this.apiUrl,headers:this.headers,length:this.length});let s=50;for(;s<2e3;)try{return await n.getRange(t,e,r,i)}catch(t){if(t instanceof x&&t.info.resp?.headers.get("content-type").startsWith("application/json")){const e=await t.info.resp.json();if(e.error?.errors&&"userRateLimitExceeded"===e.error.errors[0].reason){console.log(`Exponential backoff, waiting for: ${s}`),await I(s),s*=2;continue}}throw t}throw new S("not found")}async refreshPublicUrl(){try{const t=await fetch(`${Qs}/g/${this.fileId}`),e=await t.json();if(e.url)return this.publicUrl=e.url,!0}catch(t){}return!1}}class Zs extends Ys{arrayBuffer;size;constructor(t){super(!0),this.arrayBuffer=t,this.size=t.length,this.length=this.size}get isValid(){return!!this.arrayBuffer}async getLength(){return this.size}async doInitialFetch(t=!1){const e=t?null:io(this.arrayBuffer);return{response:new Response(e),abort:null}}async getRange(t,e,r=!1){const i=this.arrayBuffer.slice(t,t+e);return r?io(i):i}}class $s extends Ys{url;blob;size;arrayBuffer=null;constructor({url:t,blob:e=null,size:r=null}){super(!0),this.url=t,this.blob=e,this.size=this.blob?this.blob.size:r||0,this.length=this.size}get isValid(){return!!this.blob}async getLength(){if(!this.blob?.size){const t=await fetch(this.url);this.blob=await t.blob(),this.size=this.blob.size,this.length=this.size}return this.size}async doInitialFetch(t=!1){if(!this.blob)try{const t=await fetch(this.url);this.blob=await t.blob(),this.size=this.blob.size,this.length=this.size}catch(t){throw console.warn(t),t}const e=this.blob.arrayBuffer?await this.blob.arrayBuffer():await this._getArrayBuffer();this.arrayBuffer=new Uint8Array(e);const r=t?null:io(this.arrayBuffer);return{response:new Response(r),abort:null}}async getRange(t,e,r=!1){this.arrayBuffer||await this.doInitialFetch(!0);const i=this.arrayBuffer.slice(t,t+e);return r?io(i):i}async _getArrayBuffer(){return new Promise(((t,e)=>{const r=new FileReader;r.onloadend=()=>{r.result instanceof ArrayBuffer?t(r.result):e(r.result)},this.blob&&r.readAsArrayBuffer(this.blob)}))}}class to extends Ys{url;file;size;fileHandle;constructor({blob:t,size:e,extra:r,url:i}){super(!0),this.url=i,this.file=null,this.size=t?t.size:e||0,this.length=this.size,this.fileHandle=r.fileHandle}get isValid(){return!!this.file}async getLength(){return void 0===this.size&&await this.initFileObject(),this.size}async initFileObject(){const t={mode:"read"};if("granted"!==await this.fileHandle.queryPermission(t)&&"granted"!==await this.fileHandle.requestPermission(t))throw new T({fileHandle:this.fileHandle});this.file=await this.fileHandle.getFile(),this.size=this.file.size,this.length=this.size}async doInitialFetch(t=!1){this.file||await this.initFileObject();const e=t?null:this.file.stream();return{response:new Response(e),abort:null}}async getRange(t,e,r=!1){this.file||await this.initFileObject();const i=this.file.slice(t,t+e);return r?i.stream():new Uint8Array(await i.arrayBuffer())}}class eo extends Ys{url;opts;length;isValid=!1;constructor({url:t,headers:e,...r}){super(!0),this.url=t,this.opts=r,this.headers=e||{},this.length=null}async getLength(){return null===this.length&&await this.doInitialFetch(!0),this.length}async doInitialFetch(t){const e=await qs(this.opts);try{this.length=await e.getSize(this.url),this.isValid=null!==this.length}catch(t){console.warn(t),this.length=null,this.isValid=!1}let r=206;this.isValid||(r=404);const i=new AbortController,n=i.signal;let s;return s=t||!this.isValid?new Uint8Array([]):ro(e.get(this.url,{signal:n})),{response:new Response(s,{status:r}),abort:i}}async getRange(t,e,r=!1,i=null){const n=(await qs(this.opts)).get(this.url,{start:t,end:t+e-1,signal:i});if(r)return ro(n);{const t=[];let e=0;for await(const r of n)t.push(r),e+=r.byteLength;return st(t,e)}}}function ro(t){return new ReadableStream({start:async e=>{try{for await(const r of t)e.enqueue(r)}catch(t){console.log(t)}e.close()}})}function io(t){return new ReadableStream({start(e){e.enqueue(t),e.close()}})}class no extends ns{noCache;streamMap;constructor(t,e=!1){super(t),this.noCache=e,this.useRefCounts=!e,this.streamMap=new Map}isSameUrl(t,e,r){if(t===e)return!0;const i=decodeURIComponent(t),n=decodeURIComponent(e);return i===n||!(!r||!n.startsWith(i))}async loadPayload(t,e){let r=await super.loadPayload(t,e);if(r&&t.respHeaders&&("warc/revisit"!==t.mime||t.status>=300&&t.status<400))return r;const i=this.streamMap.get(t.url);if(i)return console.log(`Reuse stream for ${t.url}`),new co(i);const{remote:n,hasher:s}=await this.loadRecordFromSource(t);if(!n)return console.log(`No WARC Record Loaded for: ${t.url}`),null;if(!this.isSameUrl(n.url,t.url,t.method))return console.log(`Wrong url: expected ${t.url}, got ${n.url}`),null;if(n.ts!==t.ts&&1e3*Math.floor(n.ts/1e3)!==t.ts)return console.log(`Wrong timestamp: expected ${t.ts}, got ${n.ts}`),null;if(n.digest!==t.digest&&t.digest&&n.digest){const e=n.digest.split(":"),r=t.digest.split(":");2===e.length&&2===r.length&&r[1]===e[1]?t.digest=e[0]+":"+r[1]:console.log(`Wrong digest: expected ${t.digest}, got ${n.digest}`)}if(n.origURL){if(!r&&t.status>=300&&t.status<400&&n.respHeaders){if(t.respHeaders=n.respHeaders,!this.noCache)try{await this.db.put("resources",t)}catch(t){console.log(t)}return new Uint8Array([])}const i=await this.lookupUrl(n.origURL,n.origTS||0,{...e,noRevisits:!0});if(!i)return null;const s=e.depth||0;if(!r&&(s<2?r=await this.loadPayload(i,{...e,depth:s+1}):console.warn("Avoiding revisit lookup loop for: "+JSON.stringify(n)),!r))return null;if(n.respHeaders&&i.respHeaders?(t.respHeaders=n.respHeaders,i.respHeaders["content-length"]&&(t.respHeaders["content-length"]=i.respHeaders["content-length"])):t.respHeaders=i.respHeaders,t.mime=i.mime,t.digest=i.digest,i.extraOpts&&(t.extraOpts=i.extraOpts),!this.noCache){delete t.payload;try{await this.db.put("resources",t)}catch(t){console.log(t)}i.digest!==n.digest&&n.digest&&r instanceof Uint8Array&&await this.commitPayload(r,n.digest)}return r}const o=n.digest,a=t.source.length>=25e6;if(!this.noCache&&!a&&n.reader&&o&&(n.reader=new ho(this,n.reader,o,t.url,this.streamMap,s||null,t.recordDigest,t.source)),a&&console.log("Not cacheing, too big: "+t.url),r=n.payload||null,!r&&!n.reader)return null;try{r&&!this.noCache&&!a&&o&&await this.commitPayload(r,o)}catch(e){console.warn(`Payload Update Error: ${t.url}`),console.warn(e)}if(!(t.respHeaders&&t.digest||(t.respHeaders=n.respHeaders,t.digest=o,n.extraOpts&&(t.extraOpts=n.extraOpts),this.noCache||a)))try{await this.db.put("resources",t)}catch(e){console.warn(`Resource Update Error: ${t.url}`),console.warn(e)}return r||n.reader||null}async commitPayload(t,e){if(!t||0===t.length)return;const r=this.db.transaction(["payload","digestRef"],"readwrite");try{if(r.objectStore("payload").put({payload:t,digest:e}),this.useRefCounts){const i=await r.objectStore("digestRef").get(e);i&&(i.size=t.length,r.objectStore("digestRef").put(i))}await r.done}catch(t){console.warn("Payload Commit Error: "+t)}}}class so extends no{async loadRecordFromSource(t){const e=await this.loadSource(t.source),r=new ls(e);return{remote:await r.load()}}}class oo extends so{loader;constructor(t,e,r=!1){super(t,r),this.loader=e}updateHeaders(t){this.loader.headers=t}async loadSource(t){const{start:e,length:r}=t;return await this.loader.getRange(e,r,!0)}}class ao extends so{remoteUrlPrefix;headers;constructor(t,e,r,i=!1){super(t,i),this.remoteUrlPrefix=e,this.headers=r}updateHeaders(t){this.headers=t}async loadSource(t){const{start:e,length:r}=t,i=new Headers(this.headers),n=new URL(t.path,this.remoteUrlPrefix).href,s=await Ks({url:n,headers:i});return await s.getRange(e,r,!0)}}class co extends dt{chunkstore;offset;size;constructor(t){super(),this.chunkstore=t,this.offset=0,this.size=this.chunkstore.totalLength}setLimitSkip(t=-1,e=0){this.offset=e,t>0&&(this.size=t)}setRangeAll(t){this.size=t}async*[Symbol.asyncIterator](){yield*this.chunkstore.getChunkIter()}getReadableStream(){console.log(`Offset: ${this.offset}, Size: ${this.size}`);const t=this.chunkstore.getChunkIter();return new gt(t,this.size,this.offset).getReadableStream()}async readlineRaw(t){throw new Error("Method not implemented.")}}class lo{chunks;size=0;done=!1;totalLength;nextChunk;_nextResolve=()=>{};constructor(t){this.chunks=[],this.size=0,this.done=!1,this.totalLength=t,this.nextChunk=new Promise((t=>this._nextResolve=t))}add(t){this.chunks.push(t),this.size+=t.byteLength,this._nextResolve(!0),this.nextChunk=new Promise((t=>this._nextResolve=t))}concatChunks(){return this._nextResolve(!1),this.done=!0,st(this.chunks,this.size)}async*getChunkIter(){for(const t of this.chunks)yield t;let t=this.chunks.length;for(;!this.done&&await this.nextChunk;)for(;t<this.chunks.length;t++)yield this.chunks[t]}}class ho extends dt{db;reader;digest;url;commit=!0;fullbuff=null;hasher;expectedHash;source;isRange=!1;totalLength=-1;fixedSize=0;streamMap;constructor(t,e,r,i="",n,s,o,a){super(),this.db=t,this.reader=e,this.digest=r,this.url=i,this.commit=!0,this.fullbuff=null,this.hasher=s,this.expectedHash=o,this.source=a,this.isRange=!1,this.totalLength=-1,this.streamMap=n}setRangeAll(t){this.isRange=!0,this.totalLength=t}setLimitSkip(t=-1,e=0){this.isRange=!0,2!==t||0!==e?((-1!=t||e>0)&&(this.commit=!1),this.reader.setLimitSkip(t,e)):this.fixedSize=2}async*[Symbol.asyncIterator](){let t=null;this.commit&&(t=new lo(this.totalLength),this.isRange&&(console.log(`Store stream for ${this.url}, ${this.totalLength}`),this.streamMap.set(this.url,t)));for await(const e of this.reader)t&&t.add(e),yield e;if(0!==this.reader.limit)console.warn(`Expected payload not consumed, ${this.reader.limit} bytes left`);else{if(!this.isRange&&this.hasher&&this.expectedHash&&this.source){const t=this.hasher.getHash(),{path:e,start:r,length:i}=this.source,n=`${e}:${r}-${i}`;this.db.addVerifyData(n,this.expectedHash,t)}this.commit&&(this.fullbuff=t.concatChunks(),await this.db.commitPayload(this.fullbuff,this.digest))}this.commit&&this.isRange&&(this.streamMap.delete(this.url),console.log(`Delete stream for ${this.url}`))}async _consumeIter(t){for await(const e of t);}async readFully(){return this.fullbuff||await this._consumeIter(this),this.fullbuff}getReadableStream(){const t=super.getReadableStream();if(!this.commit)return t;const e=t.tee();return this._consumeIter(ft.fromReadable(e[1].getReader())),this.fixedSize?this.getFixedSizeReader(e[0].getReader(),this.fixedSize):e[0]}getFixedSizeReader(t,e){return new ReadableStream({async start(r){const{value:i,done:n}=await t.read();n||r.enqueue(i.slice(0,e)),r.close()}})}async readlineRaw(t){throw new Error("Method not implemented.")}}class uo extends as{har;pageRefs;constructor(t){super(),this.har="string"==typeof t?JSON.parse(t):t,this.pageRefs={}}async load(t){this.db=t,this.parseEntries(this.har),this.parsePages(this.har),await this.finishIndexing()}parsePages(t){for(const e of t.log.pages){if(!e.pageTimings?.onLoad)continue;let t;t=e.title&&(e.title.startsWith("http:")||e.title.startsWith("https:"))?e.title:this.pageRefs[e.id];const r=e.title||t,i=e.startedDateTime;this.addPage({url:t,date:i,title:r})}}parseEntries(t){for(const e of t.log.entries){const r=new Date(e.startedDateTime).getTime(),i={};for(const{name:t,value:r}of e.response.headers)i[t]=r;let n=null;const s=new TextEncoder;if(e.response.content?.text)try{n=Uint8Array.from(atob(e.response.content.text),(t=>t.charCodeAt(0)))}catch(t){n=e.response.content.text}else{const t=i["Content-Length"];t&&"0"!==t?(console.log(`Warning: Content-Length ${t} but no content found for ${e.request.url}`),n=s.encode("Sorry, the HAR file did not include the content for this resource.")):n=Uint8Array.from([])}this.addResource({url:e.request.url,ts:r,status:e.response.status,respHeaders:i,payload:n}),e.pageref&&!this.pageRefs[e.pageref]&&(this.pageRefs[e.pageref]=e.request.url)}}}const po="req.http:cookie";class fo extends cs{cdxindexer=null;sourceExtra;shaPrefix;constructor(t,e,r,i={},n="sha256:"){super(t,e,r),this.sourceExtra=i,this.shaPrefix=n}filterRecord(t){switch(t.warcType){case"warcinfo":case"revisit":case"request":return null;case"metadata":return this.shouldIndexMetadataRecord(t)?null:"skip"}const e=t.warcTargetURI,r=t.warcDate?new Date(t.warcDate).getTime():Date.now();return this.pageMap[r+"/"+e]?(t._isPage=!0,null):null}index(t,e){return t&&(t._offset=e.offset,t._length=e.recordLength),super.index(t,e)}indexReqResponse(t,e,r){if(t._isPage)return super.indexReqResponse(t,e,r);if("warcinfo"===t.warcType)return void this.parseWarcInfo(t);this.cdxindexer||(this.cdxindexer=new Ot({noSurt:!0}));const i=this.cdxindexer.indexRecordPair(t,e,r,"");if(i){if(206===i.status){const e=t.httpHeaders?.headers;if(e&&!this.isFullRangeRequest(e))return}if(e&&e.httpHeaders){const t=e.httpHeaders.headers.get("cookie");t&&(i[po]=t)}this.addCdx(i)}}getSource(t){return{...this.sourceExtra,path:t.filename,start:Number(t.offset),length:Number(t.length)}}addCdx(t){const{url:e,mime:r}=t,i=Number(t.status)||200,n=h(t.timestamp).getTime(),s=this.getSource(t);let{digest:o,recordDigest:a}=t;o&&-1===o.indexOf(":")&&(o=this.shaPrefix+o);const c={url:e,ts:n,status:i,digest:o,recordDigest:a,mime:r,loaded:!1,source:s};if(t.method){if("HEAD"===t.method||"OPTIONS"===t.method)return;c.method=t.method}t[po]&&(c[po]=t[po]),t.method&&"GET"!==t.method&&(c.url=rt(t.url,t.requestBody||"",t.method)),this.addResource(c)}}class go extends fo{async load(t,e,r){this.db=t;let i=this.reader;i.iterLines||(i=new ft(this.reader));let n=0;for await(const s of i.iterLines()){let i,o,a;n+=s.length;let c=s.trimEnd();if(!c.startsWith("{")){const t=c.indexOf(" {");if(t<0)continue;[o,a]=c.split(" ",2),c=c.slice(t)}try{i=JSON.parse(c)}catch(t){console.log("JSON Parser error on: "+c);continue}i.timestamp=a,i.url||(i.url=o,console.warn(`URL missing, using urlkey ${o}`)),e&&r&&this.isBatchFull()&&e(Math.round(n/r*100),null,n,r),this.addCdx(i)}return await this.finishIndexing(),e&&e(100,null,r,r),{}}}const yo=4294967295,mo=65535;class wo{start;length;constructor(t,e){this.start=t,this.length=e}}class bo extends ft{hasher=null;hashInited=!1;hash="";constructor(t,e="gzip",r=!1){super(t,e,r)}async initHasher(){try{this.hasher=await X(Z,32).then((t=>{t.init(256);const e={init:()=>(t.init(256),e),update:r=>(t.update(r),e),digest:e=>t.digest(e),save:()=>t.save(),load:r=>(t.load(r),e),blockSize:64,digestSize:32};return e}))}catch(t){console.warn("Hasher init failed, not hashing",t)}finally{this.hashInited=!0}}async _loadNext(){const t=await super._loadNext();return t?(this.hashInited||await this.initHasher(),this.hasher.update(t)):this.hasher&&(this.hash="sha256:"+this.hasher.digest("hex"),this.hasher=null),t}getHash(){return this.hash}}class Ao{loader;entriesUpdated=!1;enableHashing=!1;entries=null;constructor(t,e=null){this.loader=t,this.entries=e,this.entriesUpdated=!1,this.enableHashing=!0}async load(t=!1){if(!this.entries||t){const e=await this.loader.getLength(),r=Math.min(65558,e),i=e-r,n=await this.loader.getRange(i,r,!1);try{this.entries=this._loadEntries(n,i)}catch(t){if(t instanceof wo){const e=st([await this.loader.getRange(t.start,t.length,!1),n],t.length+r);this.entries=this._loadEntries(e,t.start)}}this.entriesUpdated=!0}return this.entries}_loadEntries(t,e){const r=t.byteLength;if(!r)return null;const i=new DataView(t.buffer,t.byteOffset,t.byteLength),n=new TextDecoder("utf8"),s=new TextDecoder("ascii"),o={};let a=0,c=0,l=r;for(let e=r-22,n=Math.max(0,e-mo);e>=n;--e)if(80===t[e]&&75===t[e+1]&&5===t[e+2]&&6===t[e+3]){l=e,c=i.getUint32(e+16,!0),a=i.getUint16(e+8,!0);break}if(c===yo||a===mo){if(117853008!==i.getUint32(l-20,!0))return console.warn("invalid zip64 EOCD locator"),null;const t=this.getUint64(i,l-12,!0)-e;if(101075792!==i.getUint32(t,!0))return console.warn("invalid zip64 EOCD record"),null;a=this.getUint64(i,t+32,!0),c=this.getUint64(i,t+48,!0)}if(c>=e)c-=e;else if(c<e&&c>0)throw new wo(c,e-c);if(c>=r||c<0)for(c=-1,a=mo;++c<r&&80!==t[c]&&75!==t[c+1]&&1!==t[c+2]&&2!==t[c+3];);for(l-=46;--a>=0&&c<l&&1347092738==i.getUint32(c);){const e=i.getUint16(c+8,!0);let r=i.getUint32(c+20,!0),a=i.getUint32(c+24,!0);const l=i.getUint16(c+28,!0),h=i.getUint16(c+30,!0),u=i.getUint16(c+32,!0),p=8===i.getUint16(c+10,!0);let d=i.getUint32(c+42,!0);const f=(2048&e?n:s).decode(t.subarray(c+46,c+46+l));if(r===yo||a===yo||d===yo){let t=c+46+l;const e=t+h-3;for(;t<e;){const e=i.getUint16(t,!0);let n=i.getUint16(t+2,!0);t+=4,1===e&&(a===yo&&n>=8&&(a=this.getUint64(i,t,!0),t+=8,n-=8),r===yo&&n>=8&&(r=this.getUint64(i,t,!0),t+=8,n-=8),d===yo&&n>=8&&(d=this.getUint64(i,t,!0),t+=8,n-=8)),t+=n}}f.endsWith("/")||(o[f]={filename:f,deflate:p,uncompressedSize:a,compressedSize:r,localEntryOffset:d},h||(o[f].offset=30+l+d)),c+=46+l+h+u}return o}getCompressedSize(t){if(null===this.entries)return 0;const e=this.entries[t];return e?isNaN(e.compressedSize)?0:e.compressedSize:0}async loadFile(t,{offset:e=0,length:r=-1,signal:i=null,unzip:n=!1,computeHash:s=!1}={}){if(null===this.entries&&await this.load(),!this.entries)throw new Error("entries not loaded");const o=this.entries[t];if(!o)throw new Error("file not found in zip: "+t);if(void 0===o.offset){const t=await this.loader.getRange(o.localEntryOffset,30,!1),e=new DataView(t.buffer,t.byteOffset,t.byteLength),r=e.getUint16(26,!0),i=e.getUint16(28,!0);o.offset=30+r+i+o.localEntryOffset,this.entriesUpdated=!0}r=r<0?o.compressedSize:Math.min(r,o.compressedSize-e),e+=o.offset;const a=(await this.loader.getRange(e,r,!0,i)).getReader();let c,l=null;return c=n?o.deflate?new ft(new ft(a,"deflate")):new ft(a):new ft(a,o.deflate?"deflate":null),c=(t=>s&&this.enableHashing?(l=new bo(t),l):t)(c),{reader:c,hasher:l}}getUint64(t,e,r){const i=t.getUint32(e,r),n=t.getUint32(e+4,r),s=r?i+2**32*n:2**32*i+n;return Number.isSafeInteger(s)||console.warn(s,"exceeds MAX_SAFE_INTEGER. Precision may be lost"),s}}class vo extends Ys{zipreader;filename;size=0;constructor(t,e){super(!0),this.zipreader=t,this.filename=e}get isValid(){return!0}async doInitialFetch(t=!1){await this.zipreader.load(),this.size=this.zipreader.getCompressedSize(this.filename);let e=null;if(!t){const{reader:t}=await this.zipreader.loadFile(this.filename,{unzip:!0});e=ro(t)}return{response:new Response(e),abort:null}}async getLength(){return null===this.size&&await this.doInitialFetch(!0),this.size}async getRange(t,e,r=!1,i=null){const{reader:n}=await this.zipreader.loadFile(this.filename,{offset:t,length:e,signal:i,unzip:!0});return r?ro(n):await n.readFully()}}class _o{waczname;hash;path;parent;fileType;indexType;entries;nonSurt;loader;zipreader;constructor({waczname:t,hash:e,path:r,parent:i=null,entries:n=null,fileType:s="wacz",indexType:o=0,nonSurt:a=!1,loader:c=null}){this.waczname=t,this.hash=e,this.path=r,this.loader=c,this.parent=i,this.zipreader=null,this.entries=n,this.indexType=o,this.fileType=s,this.nonSurt=a}markAsMultiWACZ(){this.fileType="multi-wacz"}async init(t){if(t&&(this.path=t),this.loader)return await this.initFromLoader(this.loader);if(!this.parent)throw new Error("must have either loader or parent");const e=await this.parent.createLoader({url:this.path});return await this.initFromLoader(e)}async initFromLoader(t){return this.zipreader=new Ao(t,this.entries),this.entries||(this.entries=await this.zipreader.load()||{}),this.entries}async loadFile(t,e){return this.zipreader||await this.init(),await this.zipreader.loadFile(t,e)}containsFile(t){return this.entries&&!!this.entries[t]}getSizeOf(t){return this.zipreader?this.zipreader.getCompressedSize(t):0}serialize(){return{waczname:this.waczname,hash:this.hash,path:this.path,entries:this.entries,indexType:this.indexType,nonSurt:this.nonSurt}}async save(t,e=!1){const r=this.zipreader;(e||r&&r.entriesUpdated)&&(await t.put("waczfiles",this.serialize()),r&&(r.entriesUpdated=!1))}iterContainedFiles(){return this.entries?Object.keys(this.entries):[]}getLoadPath(t){return this.waczname+"#!/"+t}getName(t){return this.waczname+"#!/"+t}async createLoader(t){const{url:e}=t,r=e.lastIndexOf("#!/");if(this.zipreader||await this.init(),r>=0)return new vo(this.zipreader,e.slice(r+3));throw new Error("invalid wacz url: "+e)}}
46
+ /*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function Eo(t){return null==t}var So={isNothing:Eo,isObject:function(t){return"object"==typeof t&&null!==t},toArray:function(t){return Array.isArray(t)?t:Eo(t)?[]:[t]},repeat:function(t,e){var r,i="";for(r=0;r<e;r+=1)i+=t;return i},isNegativeZero:function(t){return 0===t&&Number.NEGATIVE_INFINITY===1/t},extend:function(t,e){var r,i,n,s;if(e)for(r=0,i=(s=Object.keys(e)).length;r<i;r+=1)t[n=s[r]]=e[n];return t}};function To(t,e){var r="",i=t.reason||"(unknown reason)";return t.mark?(t.mark.name&&(r+='in "'+t.mark.name+'" '),r+="("+(t.mark.line+1)+":"+(t.mark.column+1)+")",!e&&t.mark.snippet&&(r+="\n\n"+t.mark.snippet),i+" "+r):i}function xo(t,e){Error.call(this),this.name="YAMLException",this.reason=t,this.mark=e,this.message=To(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack||""}xo.prototype=Object.create(Error.prototype),xo.prototype.constructor=xo,xo.prototype.toString=function(t){return this.name+": "+To(this,t)};var Co=xo;function Io(t,e,r,i,n){var s="",o="",a=Math.floor(n/2)-1;return i-e>a&&(e=i-a+(s=" ... ").length),r-i>a&&(r=i+a-(o=" ...").length),{str:s+t.slice(e,r).replace(/\t/g,"→")+o,pos:i-e+s.length}}function Ro(t,e){return So.repeat(" ",e-t.length)+t}var ko=function(t,e){if(e=Object.create(e||null),!t.buffer)return null;e.maxLength||(e.maxLength=79),"number"!=typeof e.indent&&(e.indent=1),"number"!=typeof e.linesBefore&&(e.linesBefore=3),"number"!=typeof e.linesAfter&&(e.linesAfter=2);for(var r,i=/\r?\n|\r|\0/g,n=[0],s=[],o=-1;r=i.exec(t.buffer);)s.push(r.index),n.push(r.index+r[0].length),t.position<=r.index&&o<0&&(o=n.length-2);o<0&&(o=n.length-1);var a,c,l="",h=Math.min(t.line+e.linesAfter,s.length).toString().length,u=e.maxLength-(e.indent+h+3);for(a=1;a<=e.linesBefore&&!(o-a<0);a++)c=Io(t.buffer,n[o-a],s[o-a],t.position-(n[o]-n[o-a]),u),l=So.repeat(" ",e.indent)+Ro((t.line-a+1).toString(),h)+" | "+c.str+"\n"+l;for(c=Io(t.buffer,n[o],s[o],t.position,u),l+=So.repeat(" ",e.indent)+Ro((t.line+1).toString(),h)+" | "+c.str+"\n",l+=So.repeat("-",e.indent+h+3+c.pos)+"^\n",a=1;a<=e.linesAfter&&!(o+a>=s.length);a++)c=Io(t.buffer,n[o+a],s[o+a],t.position-(n[o]-n[o+a]),u),l+=So.repeat(" ",e.indent)+Ro((t.line+a+1).toString(),h)+" | "+c.str+"\n";return l.replace(/\n$/,"")},No=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],Oo=["scalar","sequence","mapping"],Bo=function(t,e){if(e=e||{},Object.keys(e).forEach((function(e){if(-1===No.indexOf(e))throw new Co('Unknown option "'+e+'" is met in definition of "'+t+'" YAML type.')})),this.options=e,this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(t){return t},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=function(t){var e={};return null!==t&&Object.keys(t).forEach((function(r){t[r].forEach((function(t){e[String(t)]=r}))})),e}(e.styleAliases||null),-1===Oo.indexOf(this.kind))throw new Co('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')};function Po(t,e){var r=[];return t[e].forEach((function(t){var e=r.length;r.forEach((function(r,i){r.tag===t.tag&&r.kind===t.kind&&r.multi===t.multi&&(e=i)})),r[e]=t})),r}function Do(t){return this.extend(t)}Do.prototype.extend=function(t){var e=[],r=[];if(t instanceof Bo)r.push(t);else if(Array.isArray(t))r=r.concat(t);else{if(!t||!Array.isArray(t.implicit)&&!Array.isArray(t.explicit))throw new Co("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");t.implicit&&(e=e.concat(t.implicit)),t.explicit&&(r=r.concat(t.explicit))}e.forEach((function(t){if(!(t instanceof Bo))throw new Co("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(t.loadKind&&"scalar"!==t.loadKind)throw new Co("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(t.multi)throw new Co("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")})),r.forEach((function(t){if(!(t instanceof Bo))throw new Co("Specified list of YAML types (or a single Type object) contains a non-Type object.")}));var i=Object.create(Do.prototype);return i.implicit=(this.implicit||[]).concat(e),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=Po(i,"implicit"),i.compiledExplicit=Po(i,"explicit"),i.compiledTypeMap=function(){var t,e,r={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}};function i(t){t.multi?(r.multi[t.kind].push(t),r.multi.fallback.push(t)):r[t.kind][t.tag]=r.fallback[t.tag]=t}for(t=0,e=arguments.length;t<e;t+=1)arguments[t].forEach(i);return r}(i.compiledImplicit,i.compiledExplicit),i};var Lo=Do,Uo=new Bo("tag:yaml.org,2002:str",{kind:"scalar",construct:function(t){return null!==t?t:""}}),Mo=new Bo("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(t){return null!==t?t:[]}}),Fo=new Bo("tag:yaml.org,2002:map",{kind:"mapping",construct:function(t){return null!==t?t:{}}}),Ho=new Lo({explicit:[Uo,Mo,Fo]}),jo=new Bo("tag:yaml.org,2002:null",{kind:"scalar",resolve:function(t){if(null===t)return!0;var e=t.length;return 1===e&&"~"===t||4===e&&("null"===t||"Null"===t||"NULL"===t)},construct:function(){return null},predicate:function(t){return null===t},represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"}),Wo=new Bo("tag:yaml.org,2002:bool",{kind:"scalar",resolve:function(t){if(null===t)return!1;var e=t.length;return 4===e&&("true"===t||"True"===t||"TRUE"===t)||5===e&&("false"===t||"False"===t||"FALSE"===t)},construct:function(t){return"true"===t||"True"===t||"TRUE"===t},predicate:function(t){return"[object Boolean]"===Object.prototype.toString.call(t)},represent:{lowercase:function(t){return t?"true":"false"},uppercase:function(t){return t?"TRUE":"FALSE"},camelcase:function(t){return t?"True":"False"}},defaultStyle:"lowercase"});function Vo(t){return 48<=t&&t<=55}function Go(t){return 48<=t&&t<=57}var zo=new Bo("tag:yaml.org,2002:int",{kind:"scalar",resolve:function(t){if(null===t)return!1;var e,r,i=t.length,n=0,s=!1;if(!i)return!1;if("-"!==(e=t[n])&&"+"!==e||(e=t[++n]),"0"===e){if(n+1===i)return!0;if("b"===(e=t[++n])){for(n++;n<i;n++)if("_"!==(e=t[n])){if("0"!==e&&"1"!==e)return!1;s=!0}return s&&"_"!==e}if("x"===e){for(n++;n<i;n++)if("_"!==(e=t[n])){if(!(48<=(r=t.charCodeAt(n))&&r<=57||65<=r&&r<=70||97<=r&&r<=102))return!1;s=!0}return s&&"_"!==e}if("o"===e){for(n++;n<i;n++)if("_"!==(e=t[n])){if(!Vo(t.charCodeAt(n)))return!1;s=!0}return s&&"_"!==e}}if("_"===e)return!1;for(;n<i;n++)if("_"!==(e=t[n])){if(!Go(t.charCodeAt(n)))return!1;s=!0}return!(!s||"_"===e)},construct:function(t){var e,r=t,i=1;if(-1!==r.indexOf("_")&&(r=r.replace(/_/g,"")),"-"!==(e=r[0])&&"+"!==e||("-"===e&&(i=-1),e=(r=r.slice(1))[0]),"0"===r)return 0;if("0"===e){if("b"===r[1])return i*parseInt(r.slice(2),2);if("x"===r[1])return i*parseInt(r.slice(2),16);if("o"===r[1])return i*parseInt(r.slice(2),8)}return i*parseInt(r,10)},predicate:function(t){return"[object Number]"===Object.prototype.toString.call(t)&&t%1==0&&!So.isNegativeZero(t)},represent:{binary:function(t){return t>=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},octal:function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)},decimal:function(t){return t.toString(10)},hexadecimal:function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),qo=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"),Qo=/^[-+]?[0-9]+e/,Ko=new Bo("tag:yaml.org,2002:float",{kind:"scalar",resolve:function(t){return null!==t&&!(!qo.test(t)||"_"===t[t.length-1])},construct:function(t){var e,r;return r="-"===(e=t.replace(/_/g,"").toLowerCase())[0]?-1:1,"+-".indexOf(e[0])>=0&&(e=e.slice(1)),".inf"===e?1===r?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:".nan"===e?NaN:r*parseFloat(e,10)},predicate:function(t){return"[object Number]"===Object.prototype.toString.call(t)&&(t%1!=0||So.isNegativeZero(t))},represent:function(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(So.isNegativeZero(t))return"-0.0";return r=t.toString(10),Qo.test(r)?r.replace("e",".e"):r},defaultStyle:"lowercase"}),Yo=Ho.extend({implicit:[jo,Wo,zo,Ko]}),Jo=Yo,Xo=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Zo=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]))?))?$"),$o=new Bo("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:function(t){return null!==t&&(null!==Xo.exec(t)||null!==Zo.exec(t))},construct:function(t){var e,r,i,n,s,o,a,c,l=0,h=null;if(null===(e=Xo.exec(t))&&(e=Zo.exec(t)),null===e)throw new Error("Date resolve error");if(r=+e[1],i=+e[2]-1,n=+e[3],!e[4])return new Date(Date.UTC(r,i,n));if(s=+e[4],o=+e[5],a=+e[6],e[7]){for(l=e[7].slice(0,3);l.length<3;)l+="0";l=+l}return e[9]&&(h=6e4*(60*+e[10]+ +(e[11]||0)),"-"===e[9]&&(h=-h)),c=new Date(Date.UTC(r,i,n,s,o,a,l)),h&&c.setTime(c.getTime()-h),c},instanceOf:Date,represent:function(t){return t.toISOString()}}),ta=new Bo("tag:yaml.org,2002:merge",{kind:"scalar",resolve:function(t){return"<<"===t||null===t}}),ea="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r",ra=new Bo("tag:yaml.org,2002:binary",{kind:"scalar",resolve:function(t){if(null===t)return!1;var e,r,i=0,n=t.length,s=ea;for(r=0;r<n;r++)if(!((e=s.indexOf(t.charAt(r)))>64)){if(e<0)return!1;i+=6}return i%8==0},construct:function(t){var e,r,i=t.replace(/[\r\n=]/g,""),n=i.length,s=ea,o=0,a=[];for(e=0;e<n;e++)e%4==0&&e&&(a.push(o>>16&255),a.push(o>>8&255),a.push(255&o)),o=o<<6|s.indexOf(i.charAt(e));return 0==(r=n%4*6)?(a.push(o>>16&255),a.push(o>>8&255),a.push(255&o)):18===r?(a.push(o>>10&255),a.push(o>>2&255)):12===r&&a.push(o>>4&255),new Uint8Array(a)},predicate:function(t){return"[object Uint8Array]"===Object.prototype.toString.call(t)},represent:function(t){var e,r,i="",n=0,s=t.length,o=ea;for(e=0;e<s;e++)e%3==0&&e&&(i+=o[n>>18&63],i+=o[n>>12&63],i+=o[n>>6&63],i+=o[63&n]),n=(n<<8)+t[e];return 0==(r=s%3)?(i+=o[n>>18&63],i+=o[n>>12&63],i+=o[n>>6&63],i+=o[63&n]):2===r?(i+=o[n>>10&63],i+=o[n>>4&63],i+=o[n<<2&63],i+=o[64]):1===r&&(i+=o[n>>2&63],i+=o[n<<4&63],i+=o[64],i+=o[64]),i}}),ia=Object.prototype.hasOwnProperty,na=Object.prototype.toString,sa=new Bo("tag:yaml.org,2002:omap",{kind:"sequence",resolve:function(t){if(null===t)return!0;var e,r,i,n,s,o=[],a=t;for(e=0,r=a.length;e<r;e+=1){if(i=a[e],s=!1,"[object Object]"!==na.call(i))return!1;for(n in i)if(ia.call(i,n)){if(s)return!1;s=!0}if(!s)return!1;if(-1!==o.indexOf(n))return!1;o.push(n)}return!0},construct:function(t){return null!==t?t:[]}}),oa=Object.prototype.toString,aa=new Bo("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:function(t){if(null===t)return!0;var e,r,i,n,s,o=t;for(s=new Array(o.length),e=0,r=o.length;e<r;e+=1){if(i=o[e],"[object Object]"!==oa.call(i))return!1;if(1!==(n=Object.keys(i)).length)return!1;s[e]=[n[0],i[n[0]]]}return!0},construct:function(t){if(null===t)return[];var e,r,i,n,s,o=t;for(s=new Array(o.length),e=0,r=o.length;e<r;e+=1)i=o[e],n=Object.keys(i),s[e]=[n[0],i[n[0]]];return s}}),ca=Object.prototype.hasOwnProperty,la=new Bo("tag:yaml.org,2002:set",{kind:"mapping",resolve:function(t){if(null===t)return!0;var e,r=t;for(e in r)if(ca.call(r,e)&&null!==r[e])return!1;return!0},construct:function(t){return null!==t?t:{}}}),ha=Jo.extend({implicit:[$o,ta],explicit:[ra,sa,aa,la]}),ua=Object.prototype.hasOwnProperty,pa=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,da=/[\x85\u2028\u2029]/,fa=/[,\[\]\{\}]/,ga=/^(?:!|!!|![a-z\-]+!)$/i,ya=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function ma(t){return Object.prototype.toString.call(t)}function wa(t){return 10===t||13===t}function ba(t){return 9===t||32===t}function Aa(t){return 9===t||32===t||10===t||13===t}function va(t){return 44===t||91===t||93===t||123===t||125===t}function _a(t){var e;return 48<=t&&t<=57?t-48:97<=(e=32|t)&&e<=102?e-97+10:-1}function Ea(t){return 48===t?"\0":97===t?"":98===t?"\b":116===t||9===t?"\t":110===t?"\n":118===t?"\v":102===t?"\f":114===t?"\r":101===t?"":32===t?" ":34===t?'"':47===t?"/":92===t?"\\":78===t?"…":95===t?" ":76===t?"\u2028":80===t?"\u2029":""}function Sa(t){return t<=65535?String.fromCharCode(t):String.fromCharCode(55296+(t-65536>>10),56320+(t-65536&1023))}for(var Ta=new Array(256),xa=new Array(256),Ca=0;Ca<256;Ca++)Ta[Ca]=Ea(Ca)?1:0,xa[Ca]=Ea(Ca);function Ia(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||ha,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function Ra(t,e){var r={name:t.filename,buffer:t.input.slice(0,-1),position:t.position,line:t.line,column:t.position-t.lineStart};return r.snippet=ko(r),new Co(e,r)}function ka(t,e){throw Ra(t,e)}function Na(t,e){t.onWarning&&t.onWarning.call(null,Ra(t,e))}var Oa={YAML:function(t,e,r){var i,n,s;null!==t.version&&ka(t,"duplication of %YAML directive"),1!==r.length&&ka(t,"YAML directive accepts exactly one argument"),null===(i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]))&&ka(t,"ill-formed argument of the YAML directive"),n=parseInt(i[1],10),s=parseInt(i[2],10),1!==n&&ka(t,"unacceptable YAML version of the document"),t.version=r[0],t.checkLineBreaks=s<2,1!==s&&2!==s&&Na(t,"unsupported YAML version of the document")},TAG:function(t,e,r){var i,n;2!==r.length&&ka(t,"TAG directive accepts exactly two arguments"),i=r[0],n=r[1],ga.test(i)||ka(t,"ill-formed tag handle (first argument) of the TAG directive"),ua.call(t.tagMap,i)&&ka(t,'there is a previously declared suffix for "'+i+'" tag handle'),ya.test(n)||ka(t,"ill-formed tag prefix (second argument) of the TAG directive");try{n=decodeURIComponent(n)}catch(e){ka(t,"tag prefix is malformed: "+n)}t.tagMap[i]=n}};function Ba(t,e,r,i){var n,s,o,a;if(e<r){if(a=t.input.slice(e,r),i)for(n=0,s=a.length;n<s;n+=1)9===(o=a.charCodeAt(n))||32<=o&&o<=1114111||ka(t,"expected valid JSON character");else pa.test(a)&&ka(t,"the stream contains non-printable characters");t.result+=a}}function Pa(t,e,r,i){var n,s,o,a;for(So.isObject(r)||ka(t,"cannot merge mappings; the provided source object is unacceptable"),o=0,a=(n=Object.keys(r)).length;o<a;o+=1)s=n[o],ua.call(e,s)||(e[s]=r[s],i[s]=!0)}function Da(t,e,r,i,n,s,o,a,c){var l,h;if(Array.isArray(n))for(l=0,h=(n=Array.prototype.slice.call(n)).length;l<h;l+=1)Array.isArray(n[l])&&ka(t,"nested arrays are not supported inside keys"),"object"==typeof n&&"[object Object]"===ma(n[l])&&(n[l]="[object Object]");if("object"==typeof n&&"[object Object]"===ma(n)&&(n="[object Object]"),n=String(n),null===e&&(e={}),"tag:yaml.org,2002:merge"===i)if(Array.isArray(s))for(l=0,h=s.length;l<h;l+=1)Pa(t,e,s[l],r);else Pa(t,e,s,r);else t.json||ua.call(r,n)||!ua.call(e,n)||(t.line=o||t.line,t.lineStart=a||t.lineStart,t.position=c||t.position,ka(t,"duplicated mapping key")),"__proto__"===n?Object.defineProperty(e,n,{configurable:!0,enumerable:!0,writable:!0,value:s}):e[n]=s,delete r[n];return e}function La(t){var e;10===(e=t.input.charCodeAt(t.position))?t.position++:13===e?(t.position++,10===t.input.charCodeAt(t.position)&&t.position++):ka(t,"a line break is expected"),t.line+=1,t.lineStart=t.position,t.firstTabInLine=-1}function Ua(t,e,r){for(var i=0,n=t.input.charCodeAt(t.position);0!==n;){for(;ba(n);)9===n&&-1===t.firstTabInLine&&(t.firstTabInLine=t.position),n=t.input.charCodeAt(++t.position);if(e&&35===n)do{n=t.input.charCodeAt(++t.position)}while(10!==n&&13!==n&&0!==n);if(!wa(n))break;for(La(t),n=t.input.charCodeAt(t.position),i++,t.lineIndent=0;32===n;)t.lineIndent++,n=t.input.charCodeAt(++t.position)}return-1!==r&&0!==i&&t.lineIndent<r&&Na(t,"deficient indentation"),i}function Ma(t){var e,r=t.position;return!(45!==(e=t.input.charCodeAt(r))&&46!==e||e!==t.input.charCodeAt(r+1)||e!==t.input.charCodeAt(r+2)||(r+=3,0!==(e=t.input.charCodeAt(r))&&!Aa(e)))}function Fa(t,e){1===e?t.result+=" ":e>1&&(t.result+=So.repeat("\n",e-1))}function Ha(t,e){var r,i,n=t.tag,s=t.anchor,o=[],a=!1;if(-1!==t.firstTabInLine)return!1;for(null!==t.anchor&&(t.anchorMap[t.anchor]=o),i=t.input.charCodeAt(t.position);0!==i&&(-1!==t.firstTabInLine&&(t.position=t.firstTabInLine,ka(t,"tab characters must not be used in indentation")),45===i)&&Aa(t.input.charCodeAt(t.position+1));)if(a=!0,t.position++,Ua(t,!0,-1)&&t.lineIndent<=e)o.push(null),i=t.input.charCodeAt(t.position);else if(r=t.line,Va(t,e,3,!1,!0),o.push(t.result),Ua(t,!0,-1),i=t.input.charCodeAt(t.position),(t.line===r||t.lineIndent>e)&&0!==i)ka(t,"bad indentation of a sequence entry");else if(t.lineIndent<e)break;return!!a&&(t.tag=n,t.anchor=s,t.kind="sequence",t.result=o,!0)}function ja(t){var e,r,i,n,s=!1,o=!1;if(33!==(n=t.input.charCodeAt(t.position)))return!1;if(null!==t.tag&&ka(t,"duplication of a tag property"),60===(n=t.input.charCodeAt(++t.position))?(s=!0,n=t.input.charCodeAt(++t.position)):33===n?(o=!0,r="!!",n=t.input.charCodeAt(++t.position)):r="!",e=t.position,s){do{n=t.input.charCodeAt(++t.position)}while(0!==n&&62!==n);t.position<t.length?(i=t.input.slice(e,t.position),n=t.input.charCodeAt(++t.position)):ka(t,"unexpected end of the stream within a verbatim tag")}else{for(;0!==n&&!Aa(n);)33===n&&(o?ka(t,"tag suffix cannot contain exclamation marks"):(r=t.input.slice(e-1,t.position+1),ga.test(r)||ka(t,"named tag handle cannot contain such characters"),o=!0,e=t.position+1)),n=t.input.charCodeAt(++t.position);i=t.input.slice(e,t.position),fa.test(i)&&ka(t,"tag suffix cannot contain flow indicator characters")}i&&!ya.test(i)&&ka(t,"tag name cannot contain such characters: "+i);try{i=decodeURIComponent(i)}catch(e){ka(t,"tag name is malformed: "+i)}return s?t.tag=i:ua.call(t.tagMap,r)?t.tag=t.tagMap[r]+i:"!"===r?t.tag="!"+i:"!!"===r?t.tag="tag:yaml.org,2002:"+i:ka(t,'undeclared tag handle "'+r+'"'),!0}function Wa(t){var e,r;if(38!==(r=t.input.charCodeAt(t.position)))return!1;for(null!==t.anchor&&ka(t,"duplication of an anchor property"),r=t.input.charCodeAt(++t.position),e=t.position;0!==r&&!Aa(r)&&!va(r);)r=t.input.charCodeAt(++t.position);return t.position===e&&ka(t,"name of an anchor node must contain at least one character"),t.anchor=t.input.slice(e,t.position),!0}function Va(t,e,r,i,n){var s,o,a,c,l,h,u,p,d,f=1,g=!1,y=!1;if(null!==t.listener&&t.listener("open",t),t.tag=null,t.anchor=null,t.kind=null,t.result=null,s=o=a=4===r||3===r,i&&Ua(t,!0,-1)&&(g=!0,t.lineIndent>e?f=1:t.lineIndent===e?f=0:t.lineIndent<e&&(f=-1)),1===f)for(;ja(t)||Wa(t);)Ua(t,!0,-1)?(g=!0,a=s,t.lineIndent>e?f=1:t.lineIndent===e?f=0:t.lineIndent<e&&(f=-1)):a=!1;if(a&&(a=g||n),1!==f&&4!==r||(p=1===r||2===r?e:e+1,d=t.position-t.lineStart,1===f?a&&(Ha(t,d)||function(t,e,r){var i,n,s,o,a,c,l,h=t.tag,u=t.anchor,p={},d=Object.create(null),f=null,g=null,y=null,m=!1,w=!1;if(-1!==t.firstTabInLine)return!1;for(null!==t.anchor&&(t.anchorMap[t.anchor]=p),l=t.input.charCodeAt(t.position);0!==l;){if(m||-1===t.firstTabInLine||(t.position=t.firstTabInLine,ka(t,"tab characters must not be used in indentation")),i=t.input.charCodeAt(t.position+1),s=t.line,63!==l&&58!==l||!Aa(i)){if(o=t.line,a=t.lineStart,c=t.position,!Va(t,r,2,!1,!0))break;if(t.line===s){for(l=t.input.charCodeAt(t.position);ba(l);)l=t.input.charCodeAt(++t.position);if(58===l)Aa(l=t.input.charCodeAt(++t.position))||ka(t,"a whitespace character is expected after the key-value separator within a block mapping"),m&&(Da(t,p,d,f,g,null,o,a,c),f=g=y=null),w=!0,m=!1,n=!1,f=t.tag,g=t.result;else{if(!w)return t.tag=h,t.anchor=u,!0;ka(t,"can not read an implicit mapping pair; a colon is missed")}}else{if(!w)return t.tag=h,t.anchor=u,!0;ka(t,"can not read a block mapping entry; a multiline key may not be an implicit key")}}else 63===l?(m&&(Da(t,p,d,f,g,null,o,a,c),f=g=y=null),w=!0,m=!0,n=!0):m?(m=!1,n=!0):ka(t,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),t.position+=1,l=i;if((t.line===s||t.lineIndent>e)&&(m&&(o=t.line,a=t.lineStart,c=t.position),Va(t,e,4,!0,n)&&(m?g=t.result:y=t.result),m||(Da(t,p,d,f,g,y,o,a,c),f=g=y=null),Ua(t,!0,-1),l=t.input.charCodeAt(t.position)),(t.line===s||t.lineIndent>e)&&0!==l)ka(t,"bad indentation of a mapping entry");else if(t.lineIndent<e)break}return m&&Da(t,p,d,f,g,null,o,a,c),w&&(t.tag=h,t.anchor=u,t.kind="mapping",t.result=p),w}(t,d,p))||function(t,e){var r,i,n,s,o,a,c,l,h,u,p,d,f=!0,g=t.tag,y=t.anchor,m=Object.create(null);if(91===(d=t.input.charCodeAt(t.position)))o=93,l=!1,s=[];else{if(123!==d)return!1;o=125,l=!0,s={}}for(null!==t.anchor&&(t.anchorMap[t.anchor]=s),d=t.input.charCodeAt(++t.position);0!==d;){if(Ua(t,!0,e),(d=t.input.charCodeAt(t.position))===o)return t.position++,t.tag=g,t.anchor=y,t.kind=l?"mapping":"sequence",t.result=s,!0;f?44===d&&ka(t,"expected the node content, but found ','"):ka(t,"missed comma between flow collection entries"),p=null,a=c=!1,63===d&&Aa(t.input.charCodeAt(t.position+1))&&(a=c=!0,t.position++,Ua(t,!0,e)),r=t.line,i=t.lineStart,n=t.position,Va(t,e,1,!1,!0),u=t.tag,h=t.result,Ua(t,!0,e),d=t.input.charCodeAt(t.position),!c&&t.line!==r||58!==d||(a=!0,d=t.input.charCodeAt(++t.position),Ua(t,!0,e),Va(t,e,1,!1,!0),p=t.result),l?Da(t,s,m,u,h,p,r,i,n):a?s.push(Da(t,null,m,u,h,p,r,i,n)):s.push(h),Ua(t,!0,e),44===(d=t.input.charCodeAt(t.position))?(f=!0,d=t.input.charCodeAt(++t.position)):f=!1}ka(t,"unexpected end of the stream within a flow collection")}(t,p)?y=!0:(o&&function(t,e){var r,i,n,s,o,a=1,c=!1,l=!1,h=e,u=0,p=!1;if(124===(s=t.input.charCodeAt(t.position)))i=!1;else{if(62!==s)return!1;i=!0}for(t.kind="scalar",t.result="";0!==s;)if(43===(s=t.input.charCodeAt(++t.position))||45===s)1===a?a=43===s?3:2:ka(t,"repeat of a chomping mode identifier");else{if(!((n=48<=(o=s)&&o<=57?o-48:-1)>=0))break;0===n?ka(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?ka(t,"repeat of an indentation width identifier"):(h=e+n-1,l=!0)}if(ba(s)){do{s=t.input.charCodeAt(++t.position)}while(ba(s));if(35===s)do{s=t.input.charCodeAt(++t.position)}while(!wa(s)&&0!==s)}for(;0!==s;){for(La(t),t.lineIndent=0,s=t.input.charCodeAt(t.position);(!l||t.lineIndent<h)&&32===s;)t.lineIndent++,s=t.input.charCodeAt(++t.position);if(!l&&t.lineIndent>h&&(h=t.lineIndent),wa(s))u++;else{if(t.lineIndent<h){3===a?t.result+=So.repeat("\n",c?1+u:u):1===a&&c&&(t.result+="\n");break}for(i?ba(s)?(p=!0,t.result+=So.repeat("\n",c?1+u:u)):p?(p=!1,t.result+=So.repeat("\n",u+1)):0===u?c&&(t.result+=" "):t.result+=So.repeat("\n",u):t.result+=So.repeat("\n",c?1+u:u),c=!0,l=!0,u=0,r=t.position;!wa(s)&&0!==s;)s=t.input.charCodeAt(++t.position);Ba(t,r,t.position,!1)}}return!0}(t,p)||function(t,e){var r,i,n;if(39!==(r=t.input.charCodeAt(t.position)))return!1;for(t.kind="scalar",t.result="",t.position++,i=n=t.position;0!==(r=t.input.charCodeAt(t.position));)if(39===r){if(Ba(t,i,t.position,!0),39!==(r=t.input.charCodeAt(++t.position)))return!0;i=t.position,t.position++,n=t.position}else wa(r)?(Ba(t,i,n,!0),Fa(t,Ua(t,!1,e)),i=n=t.position):t.position===t.lineStart&&Ma(t)?ka(t,"unexpected end of the document within a single quoted scalar"):(t.position++,n=t.position);ka(t,"unexpected end of the stream within a single quoted scalar")}(t,p)||function(t,e){var r,i,n,s,o,a,c;if(34!==(a=t.input.charCodeAt(t.position)))return!1;for(t.kind="scalar",t.result="",t.position++,r=i=t.position;0!==(a=t.input.charCodeAt(t.position));){if(34===a)return Ba(t,r,t.position,!0),t.position++,!0;if(92===a){if(Ba(t,r,t.position,!0),wa(a=t.input.charCodeAt(++t.position)))Ua(t,!1,e);else if(a<256&&Ta[a])t.result+=xa[a],t.position++;else if((o=120===(c=a)?2:117===c?4:85===c?8:0)>0){for(n=o,s=0;n>0;n--)(o=_a(a=t.input.charCodeAt(++t.position)))>=0?s=(s<<4)+o:ka(t,"expected hexadecimal character");t.result+=Sa(s),t.position++}else ka(t,"unknown escape sequence");r=i=t.position}else wa(a)?(Ba(t,r,i,!0),Fa(t,Ua(t,!1,e)),r=i=t.position):t.position===t.lineStart&&Ma(t)?ka(t,"unexpected end of the document within a double quoted scalar"):(t.position++,i=t.position)}ka(t,"unexpected end of the stream within a double quoted scalar")}(t,p)?y=!0:function(t){var e,r,i;if(42!==(i=t.input.charCodeAt(t.position)))return!1;for(i=t.input.charCodeAt(++t.position),e=t.position;0!==i&&!Aa(i)&&!va(i);)i=t.input.charCodeAt(++t.position);return t.position===e&&ka(t,"name of an alias node must contain at least one character"),r=t.input.slice(e,t.position),ua.call(t.anchorMap,r)||ka(t,'unidentified alias "'+r+'"'),t.result=t.anchorMap[r],Ua(t,!0,-1),!0}(t)?(y=!0,null===t.tag&&null===t.anchor||ka(t,"alias node should not have any properties")):function(t,e,r){var i,n,s,o,a,c,l,h,u=t.kind,p=t.result;if(Aa(h=t.input.charCodeAt(t.position))||va(h)||35===h||38===h||42===h||33===h||124===h||62===h||39===h||34===h||37===h||64===h||96===h)return!1;if((63===h||45===h)&&(Aa(i=t.input.charCodeAt(t.position+1))||r&&va(i)))return!1;for(t.kind="scalar",t.result="",n=s=t.position,o=!1;0!==h;){if(58===h){if(Aa(i=t.input.charCodeAt(t.position+1))||r&&va(i))break}else if(35===h){if(Aa(t.input.charCodeAt(t.position-1)))break}else{if(t.position===t.lineStart&&Ma(t)||r&&va(h))break;if(wa(h)){if(a=t.line,c=t.lineStart,l=t.lineIndent,Ua(t,!1,-1),t.lineIndent>=e){o=!0,h=t.input.charCodeAt(t.position);continue}t.position=s,t.line=a,t.lineStart=c,t.lineIndent=l;break}}o&&(Ba(t,n,s,!1),Fa(t,t.line-a),n=s=t.position,o=!1),ba(h)||(s=t.position+1),h=t.input.charCodeAt(++t.position)}return Ba(t,n,s,!1),!!t.result||(t.kind=u,t.result=p,!1)}(t,p,1===r)&&(y=!0,null===t.tag&&(t.tag="?")),null!==t.anchor&&(t.anchorMap[t.anchor]=t.result)):0===f&&(y=a&&Ha(t,d))),null===t.tag)null!==t.anchor&&(t.anchorMap[t.anchor]=t.result);else if("?"===t.tag){for(null!==t.result&&"scalar"!==t.kind&&ka(t,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+t.kind+'"'),c=0,l=t.implicitTypes.length;c<l;c+=1)if((u=t.implicitTypes[c]).resolve(t.result)){t.result=u.construct(t.result),t.tag=u.tag,null!==t.anchor&&(t.anchorMap[t.anchor]=t.result);break}}else if("!"!==t.tag){if(ua.call(t.typeMap[t.kind||"fallback"],t.tag))u=t.typeMap[t.kind||"fallback"][t.tag];else for(u=null,c=0,l=(h=t.typeMap.multi[t.kind||"fallback"]).length;c<l;c+=1)if(t.tag.slice(0,h[c].tag.length)===h[c].tag){u=h[c];break}u||ka(t,"unknown tag !<"+t.tag+">"),null!==t.result&&u.kind!==t.kind&&ka(t,"unacceptable node kind for !<"+t.tag+'> tag; it should be "'+u.kind+'", not "'+t.kind+'"'),u.resolve(t.result,t.tag)?(t.result=u.construct(t.result,t.tag),null!==t.anchor&&(t.anchorMap[t.anchor]=t.result)):ka(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")}return null!==t.listener&&t.listener("close",t),null!==t.tag||null!==t.anchor||y}function Ga(t){var e,r,i,n,s=t.position,o=!1;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap=Object.create(null),t.anchorMap=Object.create(null);0!==(n=t.input.charCodeAt(t.position))&&(Ua(t,!0,-1),n=t.input.charCodeAt(t.position),!(t.lineIndent>0||37!==n));){for(o=!0,n=t.input.charCodeAt(++t.position),e=t.position;0!==n&&!Aa(n);)n=t.input.charCodeAt(++t.position);for(i=[],(r=t.input.slice(e,t.position)).length<1&&ka(t,"directive name must not be less than one character in length");0!==n;){for(;ba(n);)n=t.input.charCodeAt(++t.position);if(35===n){do{n=t.input.charCodeAt(++t.position)}while(0!==n&&!wa(n));break}if(wa(n))break;for(e=t.position;0!==n&&!Aa(n);)n=t.input.charCodeAt(++t.position);i.push(t.input.slice(e,t.position))}0!==n&&La(t),ua.call(Oa,r)?Oa[r](t,r,i):Na(t,'unknown document directive "'+r+'"')}Ua(t,!0,-1),0===t.lineIndent&&45===t.input.charCodeAt(t.position)&&45===t.input.charCodeAt(t.position+1)&&45===t.input.charCodeAt(t.position+2)?(t.position+=3,Ua(t,!0,-1)):o&&ka(t,"directives end mark is expected"),Va(t,t.lineIndent-1,4,!1,!0),Ua(t,!0,-1),t.checkLineBreaks&&da.test(t.input.slice(s,t.position))&&Na(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&Ma(t)?46===t.input.charCodeAt(t.position)&&(t.position+=3,Ua(t,!0,-1)):t.position<t.length-1&&ka(t,"end of the stream or a document separator is expected")}function za(t,e){e=e||{},0!==(t=String(t)).length&&(10!==t.charCodeAt(t.length-1)&&13!==t.charCodeAt(t.length-1)&&(t+="\n"),65279===t.charCodeAt(0)&&(t=t.slice(1)));var r=new Ia(t,e),i=t.indexOf("\0");for(-1!==i&&(r.position=i,ka(r,"null byte is not allowed in input")),r.input+="\0";32===r.input.charCodeAt(r.position);)r.lineIndent+=1,r.position+=1;for(;r.position<r.length-1;)Ga(r);return r.documents}var qa={loadAll:function(t,e,r){null!==e&&"object"==typeof e&&void 0===r&&(r=e,e=null);var i=za(t,r);if("function"!=typeof e)return i;for(var n=0,s=i.length;n<s;n+=1)e(i[n])},load:function(t,e){var r=za(t,e);if(0!==r.length){if(1===r.length)return r[0];throw new Co("expected a single document in the stream, but found more")}}},Qa=Object.prototype.toString,Ka=Object.prototype.hasOwnProperty,Ya=65279,Ja={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"},Xa=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],Za=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function $a(t){var e,r,i;if(e=t.toString(16).toUpperCase(),t<=255)r="x",i=2;else if(t<=65535)r="u",i=4;else{if(!(t<=4294967295))throw new Co("code point within a string may not be greater than 0xFFFFFFFF");r="U",i=8}return"\\"+r+So.repeat("0",i-e.length)+e}function tc(t){this.schema=t.schema||ha,this.indent=Math.max(1,t.indent||2),this.noArrayIndent=t.noArrayIndent||!1,this.skipInvalid=t.skipInvalid||!1,this.flowLevel=So.isNothing(t.flowLevel)?-1:t.flowLevel,this.styleMap=function(t,e){var r,i,n,s,o,a,c;if(null===e)return{};for(r={},n=0,s=(i=Object.keys(e)).length;n<s;n+=1)o=i[n],a=String(e[o]),"!!"===o.slice(0,2)&&(o="tag:yaml.org,2002:"+o.slice(2)),(c=t.compiledTypeMap.fallback[o])&&Ka.call(c.styleAliases,a)&&(a=c.styleAliases[a]),r[o]=a;return r}(this.schema,t.styles||null),this.sortKeys=t.sortKeys||!1,this.lineWidth=t.lineWidth||80,this.noRefs=t.noRefs||!1,this.noCompatMode=t.noCompatMode||!1,this.condenseFlow=t.condenseFlow||!1,this.quotingType='"'===t.quotingType?2:1,this.forceQuotes=t.forceQuotes||!1,this.replacer="function"==typeof t.replacer?t.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function ec(t,e){for(var r,i=So.repeat(" ",e),n=0,s=-1,o="",a=t.length;n<a;)-1===(s=t.indexOf("\n",n))?(r=t.slice(n),n=a):(r=t.slice(n,s+1),n=s+1),r.length&&"\n"!==r&&(o+=i),o+=r;return o}function rc(t,e){return"\n"+So.repeat(" ",t.indent*e)}function ic(t){return 32===t||9===t}function nc(t){return 32<=t&&t<=126||161<=t&&t<=55295&&8232!==t&&8233!==t||57344<=t&&t<=65533&&t!==Ya||65536<=t&&t<=1114111}function sc(t){return nc(t)&&t!==Ya&&13!==t&&10!==t}function oc(t,e,r){var i=sc(t),n=i&&!ic(t);return(r?i:i&&44!==t&&91!==t&&93!==t&&123!==t&&125!==t)&&35!==t&&!(58===e&&!n)||sc(e)&&!ic(e)&&35===t||58===e&&n}function ac(t,e){var r,i=t.charCodeAt(e);return i>=55296&&i<=56319&&e+1<t.length&&(r=t.charCodeAt(e+1))>=56320&&r<=57343?1024*(i-55296)+r-56320+65536:i}function cc(t){return/^\n* /.test(t)}function lc(t,e,r,i,n){t.dump=function(){if(0===e.length)return 2===t.quotingType?'""':"''";if(!t.noCompatMode&&(-1!==Xa.indexOf(e)||Za.test(e)))return 2===t.quotingType?'"'+e+'"':"'"+e+"'";var s=t.indent*Math.max(1,r),o=-1===t.lineWidth?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-s),a=i||t.flowLevel>-1&&r>=t.flowLevel;switch(function(t,e,r,i,n,s,o,a){var c,l,h=0,u=null,p=!1,d=!1,f=-1!==i,g=-1,y=nc(l=ac(t,0))&&l!==Ya&&!ic(l)&&45!==l&&63!==l&&58!==l&&44!==l&&91!==l&&93!==l&&123!==l&&125!==l&&35!==l&&38!==l&&42!==l&&33!==l&&124!==l&&61!==l&&62!==l&&39!==l&&34!==l&&37!==l&&64!==l&&96!==l&&function(t){return!ic(t)&&58!==t}(ac(t,t.length-1));if(e||o)for(c=0;c<t.length;h>=65536?c+=2:c++){if(!nc(h=ac(t,c)))return 5;y=y&&oc(h,u,a),u=h}else{for(c=0;c<t.length;h>=65536?c+=2:c++){if(10===(h=ac(t,c)))p=!0,f&&(d=d||c-g-1>i&&" "!==t[g+1],g=c);else if(!nc(h))return 5;y=y&&oc(h,u,a),u=h}d=d||f&&c-g-1>i&&" "!==t[g+1]}return p||d?r>9&&cc(t)?5:o?2===s?5:2:d?4:3:!y||o||n(t)?2===s?5:2:1}(e,a,t.indent,o,(function(e){return function(t,e){var r,i;for(r=0,i=t.implicitTypes.length;r<i;r+=1)if(t.implicitTypes[r].resolve(e))return!0;return!1}(t,e)}),t.quotingType,t.forceQuotes&&!i,n)){case 1:return e;case 2:return"'"+e.replace(/'/g,"''")+"'";case 3:return"|"+hc(e,t.indent)+uc(ec(e,s));case 4:return">"+hc(e,t.indent)+uc(ec(function(t,e){for(var r,i,n,s=/(\n+)([^\n]*)/g,o=(n=-1!==(n=t.indexOf("\n"))?n:t.length,s.lastIndex=n,pc(t.slice(0,n),e)),a="\n"===t[0]||" "===t[0];i=s.exec(t);){var c=i[1],l=i[2];r=" "===l[0],o+=c+(a||r||""===l?"":"\n")+pc(l,e),a=r}return o}(e,o),s));case 5:return'"'+function(t){for(var e,r="",i=0,n=0;n<t.length;i>=65536?n+=2:n++)i=ac(t,n),!(e=Ja[i])&&nc(i)?(r+=t[n],i>=65536&&(r+=t[n+1])):r+=e||$a(i);return r}(e)+'"';default:throw new Co("impossible error: invalid scalar style")}}()}function hc(t,e){var r=cc(t)?String(e):"",i="\n"===t[t.length-1];return r+(!i||"\n"!==t[t.length-2]&&"\n"!==t?i?"":"-":"+")+"\n"}function uc(t){return"\n"===t[t.length-1]?t.slice(0,-1):t}function pc(t,e){if(""===t||" "===t[0])return t;for(var r,i,n=/ [^ ]/g,s=0,o=0,a=0,c="";r=n.exec(t);)(a=r.index)-s>e&&(i=o>s?o:a,c+="\n"+t.slice(s,i),s=i+1),o=a;return c+="\n",t.length-s>e&&o>s?c+=t.slice(s,o)+"\n"+t.slice(o+1):c+=t.slice(s),c.slice(1)}function dc(t,e,r,i){var n,s,o,a="",c=t.tag;for(n=0,s=r.length;n<s;n+=1)o=r[n],t.replacer&&(o=t.replacer.call(r,String(n),o)),(gc(t,e+1,o,!0,!0,!1,!0)||void 0===o&&gc(t,e+1,null,!0,!0,!1,!0))&&(i&&""===a||(a+=rc(t,e)),t.dump&&10===t.dump.charCodeAt(0)?a+="-":a+="- ",a+=t.dump);t.tag=c,t.dump=a||"[]"}function fc(t,e,r){var i,n,s,o,a,c;for(s=0,o=(n=r?t.explicitTypes:t.implicitTypes).length;s<o;s+=1)if(((a=n[s]).instanceOf||a.predicate)&&(!a.instanceOf||"object"==typeof e&&e instanceof a.instanceOf)&&(!a.predicate||a.predicate(e))){if(r?a.multi&&a.representName?t.tag=a.representName(e):t.tag=a.tag:t.tag="?",a.represent){if(c=t.styleMap[a.tag]||a.defaultStyle,"[object Function]"===Qa.call(a.represent))i=a.represent(e,c);else{if(!Ka.call(a.represent,c))throw new Co("!<"+a.tag+'> tag resolver accepts not "'+c+'" style');i=a.represent[c](e,c)}t.dump=i}return!0}return!1}function gc(t,e,r,i,n,s,o){t.tag=null,t.dump=r,fc(t,r,!1)||fc(t,r,!0);var a,c=Qa.call(t.dump),l=i;i&&(i=t.flowLevel<0||t.flowLevel>e);var h,u,p="[object Object]"===c||"[object Array]"===c;if(p&&(u=-1!==(h=t.duplicates.indexOf(r))),(null!==t.tag&&"?"!==t.tag||u||2!==t.indent&&e>0)&&(n=!1),u&&t.usedDuplicates[h])t.dump="*ref_"+h;else{if(p&&u&&!t.usedDuplicates[h]&&(t.usedDuplicates[h]=!0),"[object Object]"===c)i&&0!==Object.keys(t.dump).length?(function(t,e,r,i){var n,s,o,a,c,l,h="",u=t.tag,p=Object.keys(r);if(!0===t.sortKeys)p.sort();else if("function"==typeof t.sortKeys)p.sort(t.sortKeys);else if(t.sortKeys)throw new Co("sortKeys must be a boolean or a function");for(n=0,s=p.length;n<s;n+=1)l="",i&&""===h||(l+=rc(t,e)),a=r[o=p[n]],t.replacer&&(a=t.replacer.call(r,o,a)),gc(t,e+1,o,!0,!0,!0)&&((c=null!==t.tag&&"?"!==t.tag||t.dump&&t.dump.length>1024)&&(t.dump&&10===t.dump.charCodeAt(0)?l+="?":l+="? "),l+=t.dump,c&&(l+=rc(t,e)),gc(t,e+1,a,!0,c)&&(t.dump&&10===t.dump.charCodeAt(0)?l+=":":l+=": ",h+=l+=t.dump));t.tag=u,t.dump=h||"{}"}(t,e,t.dump,n),u&&(t.dump="&ref_"+h+t.dump)):(function(t,e,r){var i,n,s,o,a,c="",l=t.tag,h=Object.keys(r);for(i=0,n=h.length;i<n;i+=1)a="",""!==c&&(a+=", "),t.condenseFlow&&(a+='"'),o=r[s=h[i]],t.replacer&&(o=t.replacer.call(r,s,o)),gc(t,e,s,!1,!1)&&(t.dump.length>1024&&(a+="? "),a+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),gc(t,e,o,!1,!1)&&(c+=a+=t.dump));t.tag=l,t.dump="{"+c+"}"}(t,e,t.dump),u&&(t.dump="&ref_"+h+" "+t.dump));else if("[object Array]"===c)i&&0!==t.dump.length?(t.noArrayIndent&&!o&&e>0?dc(t,e-1,t.dump,n):dc(t,e,t.dump,n),u&&(t.dump="&ref_"+h+t.dump)):(function(t,e,r){var i,n,s,o="",a=t.tag;for(i=0,n=r.length;i<n;i+=1)s=r[i],t.replacer&&(s=t.replacer.call(r,String(i),s)),(gc(t,e,s,!1,!1)||void 0===s&&gc(t,e,null,!1,!1))&&(""!==o&&(o+=","+(t.condenseFlow?"":" ")),o+=t.dump);t.tag=a,t.dump="["+o+"]"}(t,e,t.dump),u&&(t.dump="&ref_"+h+" "+t.dump));else{if("[object String]"!==c){if("[object Undefined]"===c)return!1;if(t.skipInvalid)return!1;throw new Co("unacceptable kind of an object to dump "+c)}"?"!==t.tag&&lc(t,t.dump,e,s,l)}null!==t.tag&&"?"!==t.tag&&(a=encodeURI("!"===t.tag[0]?t.tag.slice(1):t.tag).replace(/!/g,"%21"),a="!"===t.tag[0]?"!"+a:"tag:yaml.org,2002:"===a.slice(0,18)?"!!"+a.slice(18):"!<"+a+">",t.dump=a+" "+t.dump)}return!0}function yc(t,e){var r,i,n=[],s=[];for(mc(t,n,s),r=0,i=s.length;r<i;r+=1)e.duplicates.push(n[s[r]]);e.usedDuplicates=new Array(i)}function mc(t,e,r){var i,n,s;if(null!==t&&"object"==typeof t)if(-1!==(n=e.indexOf(t)))-1===r.indexOf(n)&&r.push(n);else if(e.push(t),Array.isArray(t))for(n=0,s=t.length;n<s;n+=1)mc(t[n],e,r);else for(n=0,s=(i=Object.keys(t)).length;n<s;n+=1)mc(t[i[n]],e,r)}function wc(t,e){return function(){throw new Error("Function yaml."+t+" is removed in js-yaml 4. Use yaml."+e+" instead, which is now safe by default.")}}const bc={Type:Bo,Schema:Lo,FAILSAFE_SCHEMA:Ho,JSON_SCHEMA:Yo,CORE_SCHEMA:Jo,DEFAULT_SCHEMA:ha,load:qa.load,loadAll:qa.loadAll,dump:function(t,e){var r=new tc(e=e||{});r.noRefs||yc(t,r);var i=t;return r.replacer&&(i=r.replacer.call({"":i},"",i)),gc(r,0,i,!0,!0)?r.dump+"\n":""},YAMLException:Co,types:{binary:ra,float:Ko,map:Fo,null:jo,pairs:aa,set:la,timestamp:$o,bool:Wo,int:zo,merge:ta,omap:sa,seq:Mo,str:Uo},safeLoad:wc("safeLoad","load"),safeLoadAll:wc("safeLoadAll","loadAll"),safeDump:wc("safeDump","dump")};var Ac=r(9742),vc=(r(8660),r(4585));function _c(t,e){let r=0;if(1===t.length)return t[0];for(let i=t.length-1;i>=0;i--)r+=t[t.length-1-i]*Math.pow(2,e*i);return r}function Ec(t,e,r=-1){const i=r;let n=t,s=0,o=Math.pow(2,e);for(let r=1;r<8;r++){if(t<o){let t;if(i<0)t=new ArrayBuffer(r),s=r;else{if(i<r)return new ArrayBuffer(0);t=new ArrayBuffer(i),s=i}const o=new Uint8Array(t);for(let t=r-1;t>=0;t--){const r=Math.pow(2,t*e);o[s-t-1]=Math.floor(n/r),n-=o[s-t-1]*r}return t}o*=Math.pow(2,e)}return new ArrayBuffer(0)}function Sc(...t){let e=0,r=0;for(const r of t)e+=r.length;const i=new ArrayBuffer(e),n=new Uint8Array(i);for(const e of t)n.set(e,r),r+=e.length;return n}function Tc(){const t=new Uint8Array(this.valueHex);if(this.valueHex.byteLength>=2){const e=255===t[0]&&128&t[1],r=0===t[0]&&!(128&t[1]);(e||r)&&this.warnings.push("Needlessly long format")}const e=new ArrayBuffer(this.valueHex.byteLength),r=new Uint8Array(e);for(let t=0;t<this.valueHex.byteLength;t++)r[t]=0;r[0]=128&t[0];const i=_c(r,8),n=new ArrayBuffer(this.valueHex.byteLength),s=new Uint8Array(n);for(let e=0;e<this.valueHex.byteLength;e++)s[e]=t[e];return s[0]&=127,_c(s,8)-i}function xc(t,e){const r=t.toString(10);if(e<r.length)return"";const i=e-r.length,n=new Array(i);for(let t=0;t<i;t++)n[t]="0";return n.join("").concat(r)}
47
47
  /*!
48
48
  * Copyright (c) 2014, GMO GlobalSign
49
49
  * Copyright (c) 2015-2022, Peculiar Ventures
@@ -77,7 +77,7 @@ PERFORMANCE OF THIS SOFTWARE.
77
77
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
78
78
  *
79
79
  */
80
- function xc(){if("undefined"==typeof BigInt)throw new Error("BigInt is not defined. Your environment doesn't implement BigInt.")}function Cc(t){let e=0,r=0;for(let r=0;r<t.length;r++)e+=t[r].byteLength;const i=new Uint8Array(e);for(let e=0;e<t.length;e++){const n=t[e];i.set(new Uint8Array(n),r),r+=n.byteLength}return i.buffer}function Ic(t,e,r,i){return e instanceof Uint8Array?e.byteLength?r<0?(t.error="Wrong parameter: inputOffset less than zero",!1):i<0?(t.error="Wrong parameter: inputLength less than zero",!1):!(e.byteLength-r-i<0&&(t.error="End of input reached before message was fully decoded (inconsistent offset and length values)",1)):(t.error="Wrong parameter: inputBuffer has zero length",!1):(t.error="Wrong parameter: inputBuffer must be 'Uint8Array'",!1)}Math.log(2);class Rc{constructor(){this.items=[]}write(t){this.items.push(t)}final(){return Cc(this.items)}}const kc=[new Uint8Array([1])],Nc="0123456789",Oc="name",Bc="valueHexView",Pc="",Dc=new ArrayBuffer(0),Lc=new Uint8Array(0),Uc="EndOfContent",Mc="OCTET STRING",Fc="BIT STRING";function Hc(t){var e;return(e=class extends t{constructor(...t){var e;super(...t);const r=t[0]||{};this.isHexOnly=null!==(e=r.isHexOnly)&&void 0!==e&&e,this.valueHexView=r.valueHex?Ac.vJ.toUint8Array(r.valueHex):Lc}get valueHex(){return this.valueHexView.slice().buffer}set valueHex(t){this.valueHexView=new Uint8Array(t)}fromBER(t,e,r){const i=t instanceof ArrayBuffer?new Uint8Array(t):t;if(!Ic(this,i,e,r))return-1;const n=e+r;return this.valueHexView=i.subarray(e,n),this.valueHexView.length?(this.blockLength=r,n):(this.warnings.push("Zero buffer length"),e)}toBER(t=!1){return this.isHexOnly?t?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.byteLength===this.valueHexView.buffer.byteLength?this.valueHexView.buffer:this.valueHexView.slice().buffer:(this.error="Flag 'isHexOnly' is not set, abort",Dc)}toJSON(){return{...super.toJSON(),isHexOnly:this.isHexOnly,valueHex:Ac.ep.ToHex(this.valueHexView)}}}).NAME="hexBlock",e}class jc{constructor({blockLength:t=0,error:e="",warnings:r=[],valueBeforeDecode:i=Lc}={}){this.blockLength=t,this.error=e,this.warnings=r,this.valueBeforeDecodeView=Ac.vJ.toUint8Array(i)}static blockName(){return this.NAME}get valueBeforeDecode(){return this.valueBeforeDecodeView.slice().buffer}set valueBeforeDecode(t){this.valueBeforeDecodeView=new Uint8Array(t)}toJSON(){return{blockName:this.constructor.NAME,blockLength:this.blockLength,error:this.error,warnings:this.warnings,valueBeforeDecode:Ac.ep.ToHex(this.valueBeforeDecodeView)}}}jc.NAME="baseBlock";class Wc extends jc{fromBER(t,e,r){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}toBER(t,e){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}}Wc.NAME="valueBlock";class Vc extends(Hc(jc)){constructor({idBlock:t={}}={}){var e,r,i,n;super(),t?(this.isHexOnly=null!==(e=t.isHexOnly)&&void 0!==e&&e,this.valueHexView=t.valueHex?Ac.vJ.toUint8Array(t.valueHex):Lc,this.tagClass=null!==(r=t.tagClass)&&void 0!==r?r:-1,this.tagNumber=null!==(i=t.tagNumber)&&void 0!==i?i:-1,this.isConstructed=null!==(n=t.isConstructed)&&void 0!==n&&n):(this.tagClass=-1,this.tagNumber=-1,this.isConstructed=!1)}toBER(t=!1){let e=0;switch(this.tagClass){case 1:e|=0;break;case 2:e|=64;break;case 3:e|=128;break;case 4:e|=192;break;default:return this.error="Unknown tag class",Dc}if(this.isConstructed&&(e|=32),this.tagNumber<31&&!this.isHexOnly){const r=new Uint8Array(1);if(!t){let t=this.tagNumber;t&=31,e|=t,r[0]=e}return r.buffer}if(!this.isHexOnly){const r=_c(this.tagNumber,7),i=new Uint8Array(r),n=r.byteLength,s=new Uint8Array(n+1);if(s[0]=31|e,!t){for(let t=0;t<n-1;t++)s[t+1]=128|i[t];s[n]=i[n-1]}return s.buffer}const r=new Uint8Array(this.valueHexView.byteLength+1);if(r[0]=31|e,!t){const t=this.valueHexView;for(let e=0;e<t.length-1;e++)r[e+1]=128|t[e];r[this.valueHexView.byteLength]=t[t.length-1]}return r.buffer}fromBER(t,e,r){const i=Ac.vJ.toUint8Array(t);if(!Ic(this,i,e,r))return-1;const n=i.subarray(e,e+r);if(0===n.length)return this.error="Zero buffer length",-1;switch(192&n[0]){case 0:this.tagClass=1;break;case 64:this.tagClass=2;break;case 128:this.tagClass=3;break;case 192:this.tagClass=4;break;default:return this.error="Unknown tag class",-1}this.isConstructed=!(32&~n[0]),this.isHexOnly=!1;const s=31&n[0];if(31!==s)this.tagNumber=s,this.blockLength=1;else{let t=1,e=this.valueHexView=new Uint8Array(255),r=255;for(;128&n[t];){if(e[t-1]=127&n[t],t++,t>=n.length)return this.error="End of input reached before message was fully decoded",-1;if(t===r){r+=255;const t=new Uint8Array(r);for(let r=0;r<e.length;r++)t[r]=e[r];e=this.valueHexView=new Uint8Array(r)}}this.blockLength=t+1,e[t-1]=127&n[t];const i=new Uint8Array(t);for(let r=0;r<t;r++)i[r]=e[r];e=this.valueHexView=new Uint8Array(t),e.set(i),this.blockLength<=9?this.tagNumber=vc(e,7):(this.isHexOnly=!0,this.warnings.push("Tag too long, represented as hex-coded"))}if(1===this.tagClass&&this.isConstructed)switch(this.tagNumber){case 1:case 2:case 5:case 6:case 9:case 13:case 14:case 23:case 24:case 31:case 32:case 33:case 34:return this.error="Constructed encoding used for primitive type",-1}return e+this.blockLength}toJSON(){return{...super.toJSON(),tagClass:this.tagClass,tagNumber:this.tagNumber,isConstructed:this.isConstructed}}}Vc.NAME="identificationBlock";class Gc extends jc{constructor({lenBlock:t={}}={}){var e,r,i;super(),this.isIndefiniteForm=null!==(e=t.isIndefiniteForm)&&void 0!==e&&e,this.longFormUsed=null!==(r=t.longFormUsed)&&void 0!==r&&r,this.length=null!==(i=t.length)&&void 0!==i?i:0}fromBER(t,e,r){const i=Ac.vJ.toUint8Array(t);if(!Ic(this,i,e,r))return-1;const n=i.subarray(e,e+r);if(0===n.length)return this.error="Zero buffer length",-1;if(255===n[0])return this.error="Length block 0xFF is reserved by standard",-1;if(this.isIndefiniteForm=128===n[0],this.isIndefiniteForm)return this.blockLength=1,e+this.blockLength;if(this.longFormUsed=!!(128&n[0]),!1===this.longFormUsed)return this.length=n[0],this.blockLength=1,e+this.blockLength;const s=127&n[0];if(s>8)return this.error="Too big integer",-1;if(s+1>n.length)return this.error="End of input reached before message was fully decoded",-1;const o=e+1,a=i.subarray(o,o+s);return 0===a[s-1]&&this.warnings.push("Needlessly long encoded length"),this.length=vc(a,8),this.longFormUsed&&this.length<=127&&this.warnings.push("Unnecessary usage of long length form"),this.blockLength=s+1,e+this.blockLength}toBER(t=!1){let e,r;if(this.length>127&&(this.longFormUsed=!0),this.isIndefiniteForm)return e=new ArrayBuffer(1),!1===t&&(r=new Uint8Array(e),r[0]=128),e;if(this.longFormUsed){const i=_c(this.length,8);if(i.byteLength>127)return this.error="Too big length",Dc;if(e=new ArrayBuffer(i.byteLength+1),t)return e;const n=new Uint8Array(i);r=new Uint8Array(e),r[0]=128|i.byteLength;for(let t=0;t<i.byteLength;t++)r[t+1]=n[t];return e}return e=new ArrayBuffer(1),!1===t&&(r=new Uint8Array(e),r[0]=this.length),e}toJSON(){return{...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,longFormUsed:this.longFormUsed,length:this.length}}}Gc.NAME="lengthBlock";const zc={};class qc extends jc{constructor({name:t="",optional:e=!1,primitiveSchema:r,...i}={},n){super(i),this.name=t,this.optional=e,r&&(this.primitiveSchema=r),this.idBlock=new Vc(i),this.lenBlock=new Gc(i),this.valueBlock=n?new n(i):new Wc(i)}fromBER(t,e,r){const i=this.valueBlock.fromBER(t,e,this.lenBlock.isIndefiniteForm?r:this.lenBlock.length);return-1===i?(this.error=this.valueBlock.error,i):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),i)}toBER(t,e){const r=e||new Rc;e||Qc(this);const i=this.idBlock.toBER(t);if(r.write(i),this.lenBlock.isIndefiniteForm)r.write(new Uint8Array([128]).buffer),this.valueBlock.toBER(t,r),r.write(new ArrayBuffer(2));else{const e=this.valueBlock.toBER(t);this.lenBlock.length=e.byteLength;const i=this.lenBlock.toBER(t);r.write(i),r.write(e)}return e?Dc:r.final()}toJSON(){const t={...super.toJSON(),idBlock:this.idBlock.toJSON(),lenBlock:this.lenBlock.toJSON(),valueBlock:this.valueBlock.toJSON(),name:this.name,optional:this.optional};return this.primitiveSchema&&(t.primitiveSchema=this.primitiveSchema.toJSON()),t}toString(t="ascii"){return"ascii"===t?this.onAsciiEncoding():Ac.ep.ToHex(this.toBER())}onAsciiEncoding(){return`${this.constructor.NAME} : ${Ac.ep.ToHex(this.valueBlock.valueBeforeDecodeView)}`}isEqual(t){return this===t||t instanceof this.constructor&&function(t,e){if(t.byteLength!==e.byteLength)return!1;const r=new Uint8Array(t),i=new Uint8Array(e);for(let t=0;t<r.length;t++)if(r[t]!==i[t])return!1;return!0}(this.toBER(),t.toBER())}}function Qc(t){if(t instanceof zc.Constructed)for(const e of t.valueBlock.value)Qc(e)&&(t.lenBlock.isIndefiniteForm=!0);return!!t.lenBlock.isIndefiniteForm}qc.NAME="BaseBlock";class Kc extends qc{constructor({value:t="",...e}={},r){super(e,r),t&&this.fromString(t)}getValue(){return this.valueBlock.value}setValue(t){this.valueBlock.value=t}fromBER(t,e,r){const i=this.valueBlock.fromBER(t,e,this.lenBlock.isIndefiniteForm?r:this.lenBlock.length);return-1===i?(this.error=this.valueBlock.error,i):(this.fromBuffer(this.valueBlock.valueHexView),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),i)}onAsciiEncoding(){return`${this.constructor.NAME} : '${this.valueBlock.value}'`}}Kc.NAME="BaseStringBlock";class Yc extends(Hc(Wc)){constructor({isHexOnly:t=!0,...e}={}){super(e),this.isHexOnly=t}}var Jc,Xc,Zc,$c,tl,el,rl,il,nl,sl,ol,al,cl,ll,hl,ul,pl,dl,fl,gl,yl,ml,wl,bl,Al,vl,_l,El,Sl,Tl,xl,Cl,Il,Rl,kl;Yc.NAME="PrimitiveValueBlock";class Nl extends qc{constructor(t={}){super(t,Yc),this.idBlock.isConstructed=!1}}function Ol(t,e=0,r=t.length){const i=e;let n=new qc({},Wc);const s=new jc;if(!Ic(s,t,e,r))return n.error=s.error,{offset:-1,result:n};if(!t.subarray(e,e+r).length)return n.error="Zero buffer length",{offset:-1,result:n};let o=n.idBlock.fromBER(t,e,r);if(n.idBlock.warnings.length&&n.warnings.concat(n.idBlock.warnings),-1===o)return n.error=n.idBlock.error,{offset:-1,result:n};if(e=o,r-=n.idBlock.blockLength,o=n.lenBlock.fromBER(t,e,r),n.lenBlock.warnings.length&&n.warnings.concat(n.lenBlock.warnings),-1===o)return n.error=n.lenBlock.error,{offset:-1,result:n};if(e=o,r-=n.lenBlock.blockLength,!n.idBlock.isConstructed&&n.lenBlock.isIndefiniteForm)return n.error="Indefinite length form used for primitive encoding form",{offset:-1,result:n};let a=qc;if(1===n.idBlock.tagClass){if(n.idBlock.tagNumber>=37&&!1===n.idBlock.isHexOnly)return n.error="UNIVERSAL 37 and upper tags are reserved by ASN.1 standard",{offset:-1,result:n};switch(n.idBlock.tagNumber){case 0:if(n.idBlock.isConstructed&&n.lenBlock.length>0)return n.error="Type [UNIVERSAL 0] is reserved",{offset:-1,result:n};a=zc.EndOfContent;break;case 1:a=zc.Boolean;break;case 2:a=zc.Integer;break;case 3:a=zc.BitString;break;case 4:a=zc.OctetString;break;case 5:a=zc.Null;break;case 6:a=zc.ObjectIdentifier;break;case 10:a=zc.Enumerated;break;case 12:a=zc.Utf8String;break;case 13:a=zc.RelativeObjectIdentifier;break;case 14:a=zc.TIME;break;case 15:return n.error="[UNIVERSAL 15] is reserved by ASN.1 standard",{offset:-1,result:n};case 16:a=zc.Sequence;break;case 17:a=zc.Set;break;case 18:a=zc.NumericString;break;case 19:a=zc.PrintableString;break;case 20:a=zc.TeletexString;break;case 21:a=zc.VideotexString;break;case 22:a=zc.IA5String;break;case 23:a=zc.UTCTime;break;case 24:a=zc.GeneralizedTime;break;case 25:a=zc.GraphicString;break;case 26:a=zc.VisibleString;break;case 27:a=zc.GeneralString;break;case 28:a=zc.UniversalString;break;case 29:a=zc.CharacterString;break;case 30:a=zc.BmpString;break;case 31:a=zc.DATE;break;case 32:a=zc.TimeOfDay;break;case 33:a=zc.DateTime;break;case 34:a=zc.Duration;break;default:{const t=n.idBlock.isConstructed?new zc.Constructed:new zc.Primitive;t.idBlock=n.idBlock,t.lenBlock=n.lenBlock,t.warnings=n.warnings,n=t}}}else a=n.idBlock.isConstructed?zc.Constructed:zc.Primitive;return n=function(t,e){if(t instanceof e)return t;const r=new e;return r.idBlock=t.idBlock,r.lenBlock=t.lenBlock,r.warnings=t.warnings,r.valueBeforeDecodeView=t.valueBeforeDecodeView,r}(n,a),o=n.fromBER(t,e,n.lenBlock.isIndefiniteForm?r:n.lenBlock.length),n.valueBeforeDecodeView=t.subarray(i,i+n.blockLength),{offset:o,result:n}}function Bl(t){if(!t.byteLength){const t=new qc({},Wc);return t.error="Input buffer has zero length",{offset:-1,result:t}}return Ol(Ac.vJ.toUint8Array(t).slice(),0,t.byteLength)}Jc=Nl,zc.Primitive=Jc,Nl.NAME="PRIMITIVE";class Pl extends Wc{constructor({value:t=[],isIndefiniteForm:e=!1,...r}={}){super(r),this.value=t,this.isIndefiniteForm=e}fromBER(t,e,r){const i=Ac.vJ.toUint8Array(t);if(!Ic(this,i,e,r))return-1;if(this.valueBeforeDecodeView=i.subarray(e,e+r),0===this.valueBeforeDecodeView.length)return this.warnings.push("Zero buffer length"),e;let n=e;for(;(this.isIndefiniteForm?1:r)>0;){const t=Ol(i,n,r);if(-1===t.offset)return this.error=t.result.error,this.warnings.concat(t.result.warnings),-1;if(n=t.offset,this.blockLength+=t.result.blockLength,r-=t.result.blockLength,this.value.push(t.result),this.isIndefiniteForm&&t.result.constructor.NAME===Uc)break}return this.isIndefiniteForm&&(this.value[this.value.length-1].constructor.NAME===Uc?this.value.pop():this.warnings.push("No EndOfContent block encoded")),n}toBER(t,e){const r=e||new Rc;for(let e=0;e<this.value.length;e++)this.value[e].toBER(t,r);return e?Dc:r.final()}toJSON(){const t={...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,value:[]};for(const e of this.value)t.value.push(e.toJSON());return t}}Pl.NAME="ConstructedValueBlock";class Dl extends qc{constructor(t={}){super(t,Pl),this.idBlock.isConstructed=!0}fromBER(t,e,r){this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm;const i=this.valueBlock.fromBER(t,e,this.lenBlock.isIndefiniteForm?r:this.lenBlock.length);return-1===i?(this.error=this.valueBlock.error,i):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),i)}onAsciiEncoding(){const t=[];for(const e of this.valueBlock.value)t.push(e.toString("ascii").split("\n").map((t=>` ${t}`)).join("\n"));const e=3===this.idBlock.tagClass?`[${this.idBlock.tagNumber}]`:this.constructor.NAME;return t.length?`${e} :\n${t.join("\n")}`:`${e} :`}}Xc=Dl,zc.Constructed=Xc,Dl.NAME="CONSTRUCTED";class Ll extends Wc{fromBER(t,e,r){return e}toBER(t){return Dc}}Ll.override="EndOfContentValueBlock";class Ul extends qc{constructor(t={}){super(t,Ll),this.idBlock.tagClass=1,this.idBlock.tagNumber=0}}Zc=Ul,zc.EndOfContent=Zc,Ul.NAME=Uc;class Ml extends qc{constructor(t={}){super(t,Wc),this.idBlock.tagClass=1,this.idBlock.tagNumber=5}fromBER(t,e,r){return this.lenBlock.length>0&&this.warnings.push("Non-zero length of value block for Null type"),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.blockLength+=r,e+r>t.byteLength?(this.error="End of input reached before message was fully decoded (inconsistent offset and length values)",-1):e+r}toBER(t,e){const r=new ArrayBuffer(2);if(!t){const t=new Uint8Array(r);t[0]=5,t[1]=0}return e&&e.write(r),r}onAsciiEncoding(){return`${this.constructor.NAME}`}}$c=Ml,zc.Null=$c,Ml.NAME="NULL";class Fl extends(Hc(Wc)){constructor({value:t,...e}={}){super(e),e.valueHex?this.valueHexView=Ac.vJ.toUint8Array(e.valueHex):this.valueHexView=new Uint8Array(1),t&&(this.value=t)}get value(){for(const t of this.valueHexView)if(t>0)return!0;return!1}set value(t){this.valueHexView[0]=t?255:0}fromBER(t,e,r){const i=Ac.vJ.toUint8Array(t);return Ic(this,i,e,r)?(this.valueHexView=i.subarray(e,e+r),r>1&&this.warnings.push("Boolean value encoded in more then 1 octet"),this.isHexOnly=!0,Sc.call(this),this.blockLength=r,e+r):-1}toBER(){return this.valueHexView.slice()}toJSON(){return{...super.toJSON(),value:this.value}}}Fl.NAME="BooleanValueBlock";class Hl extends qc{constructor(t={}){super(t,Fl),this.idBlock.tagClass=1,this.idBlock.tagNumber=1}getValue(){return this.valueBlock.value}setValue(t){this.valueBlock.value=t}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.getValue}`}}tl=Hl,zc.Boolean=tl,Hl.NAME="BOOLEAN";class jl extends(Hc(Pl)){constructor({isConstructed:t=!1,...e}={}){super(e),this.isConstructed=t}fromBER(t,e,r){let i=0;if(this.isConstructed){if(this.isHexOnly=!1,i=Pl.prototype.fromBER.call(this,t,e,r),-1===i)return i;for(let t=0;t<this.value.length;t++){const e=this.value[t].constructor.NAME;if(e===Uc){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, OCTET STRING may consists of OCTET STRINGs only",-1}if(e!==Mc)return this.error="OCTET STRING may consists of OCTET STRINGs only",-1}}else this.isHexOnly=!0,i=super.fromBER(t,e,r),this.blockLength=r;return i}toBER(t,e){return this.isConstructed?Pl.prototype.toBER.call(this,t,e):t?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),isConstructed:this.isConstructed}}}jl.NAME="OctetStringValueBlock";class Wl extends qc{constructor({idBlock:t={},lenBlock:e={},...r}={}){var i,n;null!==(i=r.isConstructed)&&void 0!==i||(r.isConstructed=!!(null===(n=r.value)||void 0===n?void 0:n.length)),super({idBlock:{isConstructed:r.isConstructed,...t},lenBlock:{...e,isIndefiniteForm:!!r.isIndefiniteForm},...r},jl),this.idBlock.tagClass=1,this.idBlock.tagNumber=4}fromBER(t,e,r){if(this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,0===r)return 0===this.idBlock.error.length&&(this.blockLength+=this.idBlock.blockLength),0===this.lenBlock.error.length&&(this.blockLength+=this.lenBlock.blockLength),e;if(!this.valueBlock.isConstructed){const i=(t instanceof ArrayBuffer?new Uint8Array(t):t).subarray(e,e+r);try{if(i.byteLength){const t=Ol(i,0,i.byteLength);-1!==t.offset&&t.offset===r&&(this.valueBlock.value=[t.result])}}catch(t){}}return super.fromBER(t,e,r)}onAsciiEncoding(){return this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length?Dl.prototype.onAsciiEncoding.call(this):`${this.constructor.NAME} : ${Ac.ep.ToHex(this.valueBlock.valueHexView)}`}getValue(){if(!this.idBlock.isConstructed)return this.valueBlock.valueHexView.slice().buffer;const t=[];for(const e of this.valueBlock.value)e instanceof Wl&&t.push(e.valueBlock.valueHexView);return Ac.vJ.concat(t)}}el=Wl,zc.OctetString=el,Wl.NAME=Mc;class Vl extends(Hc(Pl)){constructor({unusedBits:t=0,isConstructed:e=!1,...r}={}){super(r),this.unusedBits=t,this.isConstructed=e,this.blockLength=this.valueHexView.byteLength}fromBER(t,e,r){if(!r)return e;let i=-1;if(this.isConstructed){if(i=Pl.prototype.fromBER.call(this,t,e,r),-1===i)return i;for(const t of this.value){const e=t.constructor.NAME;if(e===Uc){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, BIT STRING may consists of BIT STRINGs only",-1}if(e!==Fc)return this.error="BIT STRING may consists of BIT STRINGs only",-1;const r=t.valueBlock;if(this.unusedBits>0&&r.unusedBits>0)return this.error='Using of "unused bits" inside constructive BIT STRING allowed for least one only',-1;this.unusedBits=r.unusedBits}return i}const n=Ac.vJ.toUint8Array(t);if(!Ic(this,n,e,r))return-1;const s=n.subarray(e,e+r);if(this.unusedBits=s[0],this.unusedBits>7)return this.error="Unused bits for BitString must be in range 0-7",-1;if(!this.unusedBits){const e=s.subarray(1);try{if(e.byteLength){const t=Ol(e,0,e.byteLength);-1!==t.offset&&t.offset===r-1&&(this.value=[t.result])}}catch(t){}}return this.valueHexView=s.subarray(1),this.blockLength=s.length,e+r}toBER(t,e){if(this.isConstructed)return Pl.prototype.toBER.call(this,t,e);if(t)return new ArrayBuffer(this.valueHexView.byteLength+1);if(!this.valueHexView.byteLength)return Dc;const r=new Uint8Array(this.valueHexView.length+1);return r[0]=this.unusedBits,r.set(this.valueHexView,1),r.buffer}toJSON(){return{...super.toJSON(),unusedBits:this.unusedBits,isConstructed:this.isConstructed}}}Vl.NAME="BitStringValueBlock";class Gl extends qc{constructor({idBlock:t={},lenBlock:e={},...r}={}){var i,n;null!==(i=r.isConstructed)&&void 0!==i||(r.isConstructed=!!(null===(n=r.value)||void 0===n?void 0:n.length)),super({idBlock:{isConstructed:r.isConstructed,...t},lenBlock:{...e,isIndefiniteForm:!!r.isIndefiniteForm},...r},Vl),this.idBlock.tagClass=1,this.idBlock.tagNumber=3}fromBER(t,e,r){return this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,super.fromBER(t,e,r)}onAsciiEncoding(){if(this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length)return Dl.prototype.onAsciiEncoding.call(this);{const t=[],e=this.valueBlock.valueHexView;for(const r of e)t.push(r.toString(2).padStart(8,"0"));const r=t.join("");return`${this.constructor.NAME} : ${r.substring(0,r.length-this.valueBlock.unusedBits)}`}}}function zl(t,e){const r=new Uint8Array([0]),i=new Uint8Array(t),n=new Uint8Array(e);let s=i.slice(0);const o=s.length-1,a=n.slice(0),c=a.length-1;let l=0,h=0;for(let t=c<o?o:c;t>=0;t--,h++)l=1==h<a.length?s[o-h]+a[c-h]+r[0]:s[o-h]+r[0],r[0]=l/10,1==h>=s.length?s=Ec(new Uint8Array([l%10]),s):s[o-h]=l%10;return r[0]>0&&(s=Ec(r,s)),s}function ql(t){if(t>=kc.length)for(let e=kc.length;e<=t;e++){const t=new Uint8Array([0]);let r=kc[e-1].slice(0);for(let e=r.length-1;e>=0;e--){const i=new Uint8Array([(r[e]<<1)+t[0]]);t[0]=i[0]/10,r[e]=i[0]%10}t[0]>0&&(r=Ec(t,r)),kc.push(r)}return kc[t]}function Ql(t,e){let r=0;const i=new Uint8Array(t),n=new Uint8Array(e),s=i.slice(0),o=s.length-1,a=n.slice(0),c=a.length-1;let l,h=0;for(let t=c;t>=0;t--,h++)l=s[o-h]-a[c-h]-r,1==l<0?(r=1,s[o-h]=l+10):(r=0,s[o-h]=l);if(r>0)for(let t=o-c+1;t>=0;t--,h++){if(l=s[o-h]-r,!(l<0)){r=0,s[o-h]=l;break}r=1,s[o-h]=l+10}return s.slice()}rl=Gl,zc.BitString=rl,Gl.NAME=Fc;class Kl extends(Hc(Wc)){constructor({value:t,...e}={}){super(e),this._valueDec=0,e.valueHex&&this.setValueHex(),void 0!==t&&(this.valueDec=t)}setValueHex(){this.valueHexView.length>=4?(this.warnings.push("Too big Integer for decoding, hex only"),this.isHexOnly=!0,this._valueDec=0):(this.isHexOnly=!1,this.valueHexView.length>0&&(this._valueDec=Sc.call(this)))}set valueDec(t){this._valueDec=t,this.isHexOnly=!1,this.valueHexView=new Uint8Array(function(t){const e=t<0?-1*t:t;let r=128;for(let i=1;i<8;i++){if(e<=r){if(t<0){const t=_c(r-e,8,i);return new Uint8Array(t)[0]|=128,t}let n=_c(e,8,i),s=new Uint8Array(n);if(128&s[0]){const t=n.slice(0),e=new Uint8Array(t);n=new ArrayBuffer(n.byteLength+1),s=new Uint8Array(n);for(let r=0;r<t.byteLength;r++)s[r+1]=e[r];s[0]=0}return n}r*=Math.pow(2,8)}return new ArrayBuffer(0)}(t))}get valueDec(){return this._valueDec}fromDER(t,e,r,i=0){const n=this.fromBER(t,e,r);if(-1===n)return n;const s=this.valueHexView;return 0===s[0]&&128&s[1]?this.valueHexView=s.subarray(1):0!==i&&s.length<i&&(i-s.length>1&&(i=s.length+1),this.valueHexView=s.subarray(i-s.length)),n}toDER(t=!1){const e=this.valueHexView;switch(!0){case!!(128&e[0]):{const t=new Uint8Array(this.valueHexView.length+1);t[0]=0,t.set(e,1),this.valueHexView=t}break;case 0===e[0]&&!(128&e[1]):this.valueHexView=this.valueHexView.subarray(1)}return this.toBER(t)}fromBER(t,e,r){const i=super.fromBER(t,e,r);return-1===i||this.setValueHex(),i}toBER(t){return t?new ArrayBuffer(this.valueHexView.length):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}toString(){const t=8*this.valueHexView.length-1;let e,r=new Uint8Array(8*this.valueHexView.length/3),i=0;const n=this.valueHexView;let s="",o=!1;for(let o=n.byteLength-1;o>=0;o--){e=n[o];for(let n=0;n<8;n++)1&~e||(i===t?(r=Ql(ql(i),r),s="-"):r=zl(r,ql(i))),i++,e>>=1}for(let t=0;t<r.length;t++)r[t]&&(o=!0),o&&(s+=Nc.charAt(r[t]));return!1===o&&(s+=Nc.charAt(0)),s}}il=Kl,Kl.NAME="IntegerValueBlock",Object.defineProperty(il.prototype,"valueHex",{set:function(t){this.valueHexView=new Uint8Array(t),this.setValueHex()},get:function(){return this.valueHexView.slice().buffer}});class Yl extends qc{constructor(t={}){super(t,Kl),this.idBlock.tagClass=1,this.idBlock.tagNumber=2}toBigInt(){return xc(),BigInt(this.valueBlock.toString())}static fromBigInt(t){xc();const e=BigInt(t),r=new Rc,i=e.toString(16).replace(/^-/,""),n=new Uint8Array(Ac.ep.FromHex(i));if(e<0){const t=new Uint8Array(n.length+(128&n[0]?1:0));t[0]|=128;const i=BigInt(`0x${Ac.ep.ToHex(t)}`)+e,s=Ac.vJ.toUint8Array(Ac.ep.FromHex(i.toString(16)));s[0]|=128,r.write(s)}else 128&n[0]&&r.write(new Uint8Array([0])),r.write(n);return new Yl({valueHex:r.final()})}convertToDER(){const t=new Yl({valueHex:this.valueBlock.valueHexView});return t.valueBlock.toDER(),t}convertFromDER(){return new Yl({valueHex:0===this.valueBlock.valueHexView[0]?this.valueBlock.valueHexView.subarray(1):this.valueBlock.valueHexView})}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()}`}}nl=Yl,zc.Integer=nl,Yl.NAME="INTEGER";class Jl extends Yl{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=10}}sl=Jl,zc.Enumerated=sl,Jl.NAME="ENUMERATED";class Xl extends(Hc(Wc)){constructor({valueDec:t=-1,isFirstSid:e=!1,...r}={}){super(r),this.valueDec=t,this.isFirstSid=e}fromBER(t,e,r){if(!r)return e;const i=Ac.vJ.toUint8Array(t);if(!Ic(this,i,e,r))return-1;const n=i.subarray(e,e+r);this.valueHexView=new Uint8Array(r);for(let t=0;t<r&&(this.valueHexView[t]=127&n[t],this.blockLength++,128&n[t]);t++);const s=new Uint8Array(this.blockLength);for(let t=0;t<this.blockLength;t++)s[t]=this.valueHexView[t];return this.valueHexView=s,128&n[this.blockLength-1]?(this.error="End of input reached before message was fully decoded",-1):(0===this.valueHexView[0]&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=vc(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),e+this.blockLength)}set valueBigInt(t){xc();let e=BigInt(t).toString(2);for(;e.length%7;)e="0"+e;const r=new Uint8Array(e.length/7);for(let t=0;t<r.length;t++)r[t]=parseInt(e.slice(7*t,7*t+7),2)+(t+1<r.length?128:0);this.fromBER(r.buffer,0,r.length)}toBER(t){if(this.isHexOnly){if(t)return new ArrayBuffer(this.valueHexView.byteLength);const e=this.valueHexView,r=new Uint8Array(this.blockLength);for(let t=0;t<this.blockLength-1;t++)r[t]=128|e[t];return r[this.blockLength-1]=e[this.blockLength-1],r.buffer}const e=_c(this.valueDec,7);if(0===e.byteLength)return this.error="Error during encoding SID value",Dc;const r=new Uint8Array(e.byteLength);if(!t){const t=new Uint8Array(e),i=e.byteLength-1;for(let e=0;e<i;e++)r[e]=128|t[e];r[i]=t[i]}return r}toString(){let t="";if(this.isHexOnly)t=Ac.ep.ToHex(this.valueHexView);else if(this.isFirstSid){let e=this.valueDec;this.valueDec<=39?t="0.":this.valueDec<=79?(t="1.",e-=40):(t="2.",e-=80),t+=e.toString()}else t=this.valueDec.toString();return t}toJSON(){return{...super.toJSON(),valueDec:this.valueDec,isFirstSid:this.isFirstSid}}}Xl.NAME="sidBlock";class Zl extends Wc{constructor({value:t="",...e}={}){super(e),this.value=[],t&&this.fromString(t)}fromBER(t,e,r){let i=e;for(;r>0;){const e=new Xl;if(i=e.fromBER(t,i,r),-1===i)return this.blockLength=0,this.error=e.error,i;0===this.value.length&&(e.isFirstSid=!0),this.blockLength+=e.blockLength,r-=e.blockLength,this.value.push(e)}return i}toBER(t){const e=[];for(let r=0;r<this.value.length;r++){const i=this.value[r].toBER(t);if(0===i.byteLength)return this.error=this.value[r].error,Dc;e.push(i)}return Cc(e)}fromString(t){this.value=[];let e=0,r=0,i="",n=!1;do{if(r=t.indexOf(".",e),i=-1===r?t.substring(e):t.substring(e,r),e=r+1,n){const t=this.value[0];let e=0;switch(t.valueDec){case 0:break;case 1:e=40;break;case 2:e=80;break;default:return void(this.value=[])}const r=parseInt(i,10);if(isNaN(r))return;t.valueDec=r+e,n=!1}else{const t=new Xl;if(i>Number.MAX_SAFE_INTEGER){xc();const e=BigInt(i);t.valueBigInt=e}else if(t.valueDec=parseInt(i,10),isNaN(t.valueDec))return;this.value.length||(t.isFirstSid=!0,n=!0),this.value.push(t)}}while(-1!==r)}toString(){let t="",e=!1;for(let r=0;r<this.value.length;r++){e=this.value[r].isHexOnly;let i=this.value[r].toString();0!==r&&(t=`${t}.`),e?(i=`{${i}}`,this.value[r].isFirstSid?t=`2.{${i} - 80}`:t+=i):t+=i}return t}toJSON(){const t={...super.toJSON(),value:this.toString(),sidArray:[]};for(let e=0;e<this.value.length;e++)t.sidArray.push(this.value[e].toJSON());return t}}Zl.NAME="ObjectIdentifierValueBlock";class $l extends qc{constructor(t={}){super(t,Zl),this.idBlock.tagClass=1,this.idBlock.tagNumber=6}getValue(){return this.valueBlock.toString()}setValue(t){this.valueBlock.fromString(t)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}}ol=$l,zc.ObjectIdentifier=ol,$l.NAME="OBJECT IDENTIFIER";class th extends(Hc(jc)){constructor({valueDec:t=0,...e}={}){super(e),this.valueDec=t}fromBER(t,e,r){if(0===r)return e;const i=Ac.vJ.toUint8Array(t);if(!Ic(this,i,e,r))return-1;const n=i.subarray(e,e+r);this.valueHexView=new Uint8Array(r);for(let t=0;t<r&&(this.valueHexView[t]=127&n[t],this.blockLength++,128&n[t]);t++);const s=new Uint8Array(this.blockLength);for(let t=0;t<this.blockLength;t++)s[t]=this.valueHexView[t];return this.valueHexView=s,128&n[this.blockLength-1]?(this.error="End of input reached before message was fully decoded",-1):(0===this.valueHexView[0]&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=vc(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),e+this.blockLength)}toBER(t){if(this.isHexOnly){if(t)return new ArrayBuffer(this.valueHexView.byteLength);const e=this.valueHexView,r=new Uint8Array(this.blockLength);for(let t=0;t<this.blockLength-1;t++)r[t]=128|e[t];return r[this.blockLength-1]=e[this.blockLength-1],r.buffer}const e=_c(this.valueDec,7);if(0===e.byteLength)return this.error="Error during encoding SID value",Dc;const r=new Uint8Array(e.byteLength);if(!t){const t=new Uint8Array(e),i=e.byteLength-1;for(let e=0;e<i;e++)r[e]=128|t[e];r[i]=t[i]}return r.buffer}toString(){let t="";return t=this.isHexOnly?Ac.ep.ToHex(this.valueHexView):this.valueDec.toString(),t}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}}th.NAME="relativeSidBlock";class eh extends Wc{constructor({value:t="",...e}={}){super(e),this.value=[],t&&this.fromString(t)}fromBER(t,e,r){let i=e;for(;r>0;){const e=new th;if(i=e.fromBER(t,i,r),-1===i)return this.blockLength=0,this.error=e.error,i;this.blockLength+=e.blockLength,r-=e.blockLength,this.value.push(e)}return i}toBER(t,e){const r=[];for(let e=0;e<this.value.length;e++){const i=this.value[e].toBER(t);if(0===i.byteLength)return this.error=this.value[e].error,Dc;r.push(i)}return Cc(r)}fromString(t){this.value=[];let e=0,r=0,i="";do{r=t.indexOf(".",e),i=-1===r?t.substring(e):t.substring(e,r),e=r+1;const n=new th;if(n.valueDec=parseInt(i,10),isNaN(n.valueDec))return!0;this.value.push(n)}while(-1!==r);return!0}toString(){let t="",e=!1;for(let r=0;r<this.value.length;r++){e=this.value[r].isHexOnly;let i=this.value[r].toString();0!==r&&(t=`${t}.`),e?(i=`{${i}}`,t+=i):t+=i}return t}toJSON(){const t={...super.toJSON(),value:this.toString(),sidArray:[]};for(let e=0;e<this.value.length;e++)t.sidArray.push(this.value[e].toJSON());return t}}eh.NAME="RelativeObjectIdentifierValueBlock";class rh extends qc{constructor(t={}){super(t,eh),this.idBlock.tagClass=1,this.idBlock.tagNumber=13}getValue(){return this.valueBlock.toString()}setValue(t){this.valueBlock.fromString(t)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}}al=rh,zc.RelativeObjectIdentifier=al,rh.NAME="RelativeObjectIdentifier";class ih extends Dl{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=16}}cl=ih,zc.Sequence=cl,ih.NAME="SEQUENCE";class nh extends Dl{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=17}}ll=nh,zc.Set=ll,nh.NAME="SET";class sh extends(Hc(Wc)){constructor({...t}={}){super(t),this.isHexOnly=!0,this.value=Pc}toJSON(){return{...super.toJSON(),value:this.value}}}sh.NAME="StringValueBlock";class oh extends sh{}oh.NAME="SimpleStringValueBlock";class ah extends Kc{constructor({...t}={}){super(t,oh)}fromBuffer(t){this.valueBlock.value=String.fromCharCode.apply(null,Ac.vJ.toUint8Array(t))}fromString(t){const e=t.length,r=this.valueBlock.valueHexView=new Uint8Array(e);for(let i=0;i<e;i++)r[i]=t.charCodeAt(i);this.valueBlock.value=t}}ah.NAME="SIMPLE STRING";class ch extends ah{fromBuffer(t){this.valueBlock.valueHexView=Ac.vJ.toUint8Array(t);try{this.valueBlock.value=Ac.ep.ToUtf8String(t)}catch(e){this.warnings.push(`Error during "decodeURIComponent": ${e}, using raw string`),this.valueBlock.value=Ac.ep.ToBinary(t)}}fromString(t){this.valueBlock.valueHexView=new Uint8Array(Ac.ep.FromUtf8String(t)),this.valueBlock.value=t}}ch.NAME="Utf8StringValueBlock";class lh extends ch{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=12}}hl=lh,zc.Utf8String=hl,lh.NAME="UTF8String";class hh extends ah{fromBuffer(t){this.valueBlock.value=Ac.ep.ToUtf16String(t),this.valueBlock.valueHexView=Ac.vJ.toUint8Array(t)}fromString(t){this.valueBlock.value=t,this.valueBlock.valueHexView=new Uint8Array(Ac.ep.FromUtf16String(t))}}hh.NAME="BmpStringValueBlock";class uh extends hh{constructor({...t}={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=30}}ul=uh,zc.BmpString=ul,uh.NAME="BMPString";class ph extends ah{fromBuffer(t){const e=ArrayBuffer.isView(t)?t.slice().buffer:t.slice(0),r=new Uint8Array(e);for(let t=0;t<r.length;t+=4)r[t]=r[t+3],r[t+1]=r[t+2],r[t+2]=0,r[t+3]=0;this.valueBlock.value=String.fromCharCode.apply(null,new Uint32Array(e))}fromString(t){const e=t.length,r=this.valueBlock.valueHexView=new Uint8Array(4*e);for(let i=0;i<e;i++){const e=_c(t.charCodeAt(i),8),n=new Uint8Array(e);if(n.length>4)continue;const s=4-n.length;for(let t=n.length-1;t>=0;t--)r[4*i+t+s]=n[t]}this.valueBlock.value=t}}ph.NAME="UniversalStringValueBlock";class dh extends ph{constructor({...t}={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=28}}pl=dh,zc.UniversalString=pl,dh.NAME="UniversalString";class fh extends ah{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=18}}dl=fh,zc.NumericString=dl,fh.NAME="NumericString";class gh extends ah{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=19}}fl=gh,zc.PrintableString=fl,gh.NAME="PrintableString";class yh extends ah{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=20}}gl=yh,zc.TeletexString=gl,yh.NAME="TeletexString";class mh extends ah{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=21}}yl=mh,zc.VideotexString=yl,mh.NAME="VideotexString";class wh extends ah{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=22}}ml=wh,zc.IA5String=ml,wh.NAME="IA5String";class bh extends ah{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=25}}wl=bh,zc.GraphicString=wl,bh.NAME="GraphicString";class Ah extends ah{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=26}}bl=Ah,zc.VisibleString=bl,Ah.NAME="VisibleString";class vh extends ah{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=27}}Al=vh,zc.GeneralString=Al,vh.NAME="GeneralString";class _h extends ah{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=29}}vl=_h,zc.CharacterString=vl,_h.NAME="CharacterString";class Eh extends Ah{constructor({value:t,valueDate:e,...r}={}){if(super(r),this.year=0,this.month=0,this.day=0,this.hour=0,this.minute=0,this.second=0,t){this.fromString(t),this.valueBlock.valueHexView=new Uint8Array(t.length);for(let e=0;e<t.length;e++)this.valueBlock.valueHexView[e]=t.charCodeAt(e)}e&&(this.fromDate(e),this.valueBlock.valueHexView=new Uint8Array(this.toBuffer())),this.idBlock.tagClass=1,this.idBlock.tagNumber=23}fromBuffer(t){this.fromString(String.fromCharCode.apply(null,Ac.vJ.toUint8Array(t)))}toBuffer(){const t=this.toString(),e=new ArrayBuffer(t.length),r=new Uint8Array(e);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);return e}fromDate(t){this.year=t.getUTCFullYear(),this.month=t.getUTCMonth()+1,this.day=t.getUTCDate(),this.hour=t.getUTCHours(),this.minute=t.getUTCMinutes(),this.second=t.getUTCSeconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second))}fromString(t){const e=/(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})Z/gi.exec(t);if(null===e)return void(this.error="Wrong input string for conversion");const r=parseInt(e[1],10);this.year=r>=50?1900+r:2e3+r,this.month=parseInt(e[2],10),this.day=parseInt(e[3],10),this.hour=parseInt(e[4],10),this.minute=parseInt(e[5],10),this.second=parseInt(e[6],10)}toString(t="iso"){if("iso"===t){const t=new Array(7);return t[0]=Tc(this.year<2e3?this.year-1900:this.year-2e3,2),t[1]=Tc(this.month,2),t[2]=Tc(this.day,2),t[3]=Tc(this.hour,2),t[4]=Tc(this.minute,2),t[5]=Tc(this.second,2),t[6]="Z",t.join("")}return super.toString(t)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.toDate().toISOString()}`}toJSON(){return{...super.toJSON(),year:this.year,month:this.month,day:this.day,hour:this.hour,minute:this.minute,second:this.second}}}_l=Eh,zc.UTCTime=_l,Eh.NAME="UTCTime";class Sh extends Eh{constructor(t={}){var e;super(t),null!==(e=this.millisecond)&&void 0!==e||(this.millisecond=0),this.idBlock.tagClass=1,this.idBlock.tagNumber=24}fromDate(t){super.fromDate(t),this.millisecond=t.getUTCMilliseconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second,this.millisecond))}fromString(t){let e,r=!1,i="",n="",s=0,o=0,a=0;if("Z"===t[t.length-1])i=t.substring(0,t.length-1),r=!0;else{const e=new Number(t[t.length-1]);if(isNaN(e.valueOf()))throw new Error("Wrong input string for conversion");i=t}if(r){if(-1!==i.indexOf("+"))throw new Error("Wrong input string for conversion");if(-1!==i.indexOf("-"))throw new Error("Wrong input string for conversion")}else{let t=1,e=i.indexOf("+"),r="";if(-1===e&&(e=i.indexOf("-"),t=-1),-1!==e){if(r=i.substring(e+1),i=i.substring(0,e),2!==r.length&&4!==r.length)throw new Error("Wrong input string for conversion");let n=parseInt(r.substring(0,2),10);if(isNaN(n.valueOf()))throw new Error("Wrong input string for conversion");if(o=t*n,4===r.length){if(n=parseInt(r.substring(2,4),10),isNaN(n.valueOf()))throw new Error("Wrong input string for conversion");a=t*n}}}let c=i.indexOf(".");if(-1===c&&(c=i.indexOf(",")),-1!==c){const t=new Number(`0${i.substring(c)}`);if(isNaN(t.valueOf()))throw new Error("Wrong input string for conversion");s=t.valueOf(),n=i.substring(0,c)}else n=i;switch(!0){case 8===n.length:if(e=/(\d{4})(\d{2})(\d{2})/gi,-1!==c)throw new Error("Wrong input string for conversion");break;case 10===n.length:if(e=/(\d{4})(\d{2})(\d{2})(\d{2})/gi,-1!==c){let t=60*s;this.minute=Math.floor(t),t=60*(t-this.minute),this.second=Math.floor(t),t=1e3*(t-this.second),this.millisecond=Math.floor(t)}break;case 12===n.length:if(e=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})/gi,-1!==c){let t=60*s;this.second=Math.floor(t),t=1e3*(t-this.second),this.millisecond=Math.floor(t)}break;case 14===n.length:if(e=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/gi,-1!==c){const t=1e3*s;this.millisecond=Math.floor(t)}break;default:throw new Error("Wrong input string for conversion")}const l=e.exec(n);if(null===l)throw new Error("Wrong input string for conversion");for(let t=1;t<l.length;t++)switch(t){case 1:this.year=parseInt(l[t],10);break;case 2:this.month=parseInt(l[t],10);break;case 3:this.day=parseInt(l[t],10);break;case 4:this.hour=parseInt(l[t],10)+o;break;case 5:this.minute=parseInt(l[t],10)+a;break;case 6:this.second=parseInt(l[t],10);break;default:throw new Error("Wrong input string for conversion")}if(!1===r){const t=new Date(this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond);this.year=t.getUTCFullYear(),this.month=t.getUTCMonth(),this.day=t.getUTCDay(),this.hour=t.getUTCHours(),this.minute=t.getUTCMinutes(),this.second=t.getUTCSeconds(),this.millisecond=t.getUTCMilliseconds()}}toString(t="iso"){if("iso"===t){const t=[];return t.push(Tc(this.year,4)),t.push(Tc(this.month,2)),t.push(Tc(this.day,2)),t.push(Tc(this.hour,2)),t.push(Tc(this.minute,2)),t.push(Tc(this.second,2)),0!==this.millisecond&&(t.push("."),t.push(Tc(this.millisecond,3))),t.push("Z"),t.join("")}return super.toString(t)}toJSON(){return{...super.toJSON(),millisecond:this.millisecond}}}El=Sh,zc.GeneralizedTime=El,Sh.NAME="GeneralizedTime";class Th extends lh{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=31}}Sl=Th,zc.DATE=Sl,Th.NAME="DATE";class xh extends lh{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=32}}Tl=xh,zc.TimeOfDay=Tl,xh.NAME="TimeOfDay";class Ch extends lh{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=33}}xl=Ch,zc.DateTime=xl,Ch.NAME="DateTime";class Ih extends lh{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=34}}Cl=Ih,zc.Duration=Cl,Ih.NAME="Duration";class Rh extends lh{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=14}}Il=Rh,zc.TIME=Il,Rh.NAME="TIME";class kh{constructor({name:t="",optional:e=!1}={}){this.name=t,this.optional=e}}class Nh extends kh{constructor({value:t=[],...e}={}){super(e),this.value=t}}class Oh extends kh{constructor({value:t=new kh,local:e=!1,...r}={}){super(r),this.value=t,this.local=e}}class Bh{constructor({data:t=Lc}={}){this.dataView=Ac.vJ.toUint8Array(t)}get data(){return this.dataView.slice().buffer}set data(t){this.dataView=Ac.vJ.toUint8Array(t)}fromBER(t,e,r){const i=e+r;return this.dataView=Ac.vJ.toUint8Array(t).subarray(e,i),i}toBER(t){return this.dataView.slice().buffer}}function Ph(t,e,r){if(r instanceof Nh){for(let i=0;i<r.value.length;i++)if(Ph(t,e,r.value[i]).verified)return{verified:!0,result:t};{const t={verified:!1,result:{error:"Wrong values for Choice type"}};return r.hasOwnProperty(Oc)&&(t.name=r.name),t}}if(r instanceof kh)return r.hasOwnProperty(Oc)&&(t[r.name]=e),{verified:!0,result:t};if(t instanceof Object==0)return{verified:!1,result:{error:"Wrong root object"}};if(e instanceof Object==0)return{verified:!1,result:{error:"Wrong ASN.1 data"}};if(r instanceof Object==0)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if("idBlock"in r==0)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if("fromBER"in r.idBlock==0)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if("toBER"in r.idBlock==0)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};const i=r.idBlock.toBER(!1);if(0===i.byteLength)return{verified:!1,result:{error:"Error encoding idBlock for ASN.1 schema"}};if(-1===r.idBlock.fromBER(i,0,i.byteLength))return{verified:!1,result:{error:"Error decoding idBlock for ASN.1 schema"}};if(!1===r.idBlock.hasOwnProperty("tagClass"))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(r.idBlock.tagClass!==e.idBlock.tagClass)return{verified:!1,result:t};if(!1===r.idBlock.hasOwnProperty("tagNumber"))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(r.idBlock.tagNumber!==e.idBlock.tagNumber)return{verified:!1,result:t};if(!1===r.idBlock.hasOwnProperty("isConstructed"))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(r.idBlock.isConstructed!==e.idBlock.isConstructed)return{verified:!1,result:t};if(!("isHexOnly"in r.idBlock))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(r.idBlock.isHexOnly!==e.idBlock.isHexOnly)return{verified:!1,result:t};if(r.idBlock.isHexOnly){if(Bc in r.idBlock==0)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};const i=r.idBlock.valueHexView,n=e.idBlock.valueHexView;if(i.length!==n.length)return{verified:!1,result:t};for(let e=0;e<i.length;e++)if(i[e]!==n[1])return{verified:!1,result:t}}if(r.name&&(r.name=r.name.replace(/^\s+|\s+$/g,Pc),r.name&&(t[r.name]=e)),r instanceof zc.Constructed){let i=0,n={verified:!1,result:{error:"Unknown error"}},s=r.valueBlock.value.length;if(s>0&&r.valueBlock.value[0]instanceof Oh&&(s=e.valueBlock.value.length),0===s)return{verified:!0,result:t};if(0===e.valueBlock.value.length&&0!==r.valueBlock.value.length){let e=!0;for(let t=0;t<r.valueBlock.value.length;t++)e=e&&(r.valueBlock.value[t].optional||!1);return e?{verified:!0,result:t}:(r.name&&(r.name=r.name.replace(/^\s+|\s+$/g,Pc),r.name&&delete t[r.name]),t.error="Inconsistent object length",{verified:!1,result:t})}for(let o=0;o<s;o++)if(o-i>=e.valueBlock.value.length){if(!1===r.valueBlock.value[o].optional){const e={verified:!1,result:t};return t.error="Inconsistent length between ASN.1 data and schema",r.name&&(r.name=r.name.replace(/^\s+|\s+$/g,Pc),r.name&&(delete t[r.name],e.name=r.name)),e}}else if(r.valueBlock.value[0]instanceof Oh){if(n=Ph(t,e.valueBlock.value[o],r.valueBlock.value[0].value),!1===n.verified){if(!r.valueBlock.value[0].optional)return r.name&&(r.name=r.name.replace(/^\s+|\s+$/g,Pc),r.name&&delete t[r.name]),n;i++}if(Oc in r.valueBlock.value[0]&&r.valueBlock.value[0].name.length>0){let i={};i="local"in r.valueBlock.value[0]&&r.valueBlock.value[0].local?e:t,void 0===i[r.valueBlock.value[0].name]&&(i[r.valueBlock.value[0].name]=[]),i[r.valueBlock.value[0].name].push(e.valueBlock.value[o])}}else if(n=Ph(t,e.valueBlock.value[o-i],r.valueBlock.value[o]),!1===n.verified){if(!r.valueBlock.value[o].optional)return r.name&&(r.name=r.name.replace(/^\s+|\s+$/g,Pc),r.name&&delete t[r.name]),n;i++}if(!1===n.verified){const e={verified:!1,result:t};return r.name&&(r.name=r.name.replace(/^\s+|\s+$/g,Pc),r.name&&(delete t[r.name],e.name=r.name)),e}return{verified:!0,result:t}}if(r.primitiveSchema&&Bc in e.valueBlock){const i=Ol(e.valueBlock.valueHexView);if(-1===i.offset){const e={verified:!1,result:i.result};return r.name&&(r.name=r.name.replace(/^\s+|\s+$/g,Pc),r.name&&(delete t[r.name],e.name=r.name)),e}return Ph(t,i.result,r.primitiveSchema)}return{verified:!0,result:t}}function Dh(t,e){if(e instanceof Object==0)return{verified:!1,result:{error:"Wrong ASN.1 schema type"}};const r=Ol(Ac.vJ.toUint8Array(t));return-1===r.offset?{verified:!1,result:r.result}:Ph(r.result,r.result,e)}!function(t){t[t.Sequence=0]="Sequence",t[t.Set=1]="Set",t[t.Choice=2]="Choice"}(Rl||(Rl={})),function(t){t[t.Any=1]="Any",t[t.Boolean=2]="Boolean",t[t.OctetString=3]="OctetString",t[t.BitString=4]="BitString",t[t.Integer=5]="Integer",t[t.Enumerated=6]="Enumerated",t[t.ObjectIdentifier=7]="ObjectIdentifier",t[t.Utf8String=8]="Utf8String",t[t.BmpString=9]="BmpString",t[t.UniversalString=10]="UniversalString",t[t.NumericString=11]="NumericString",t[t.PrintableString=12]="PrintableString",t[t.TeletexString=13]="TeletexString",t[t.VideotexString=14]="VideotexString",t[t.IA5String=15]="IA5String",t[t.GraphicString=16]="GraphicString",t[t.VisibleString=17]="VisibleString",t[t.GeneralString=18]="GeneralString",t[t.CharacterString=19]="CharacterString",t[t.UTCTime=20]="UTCTime",t[t.GeneralizedTime=21]="GeneralizedTime",t[t.DATE=22]="DATE",t[t.TimeOfDay=23]="TimeOfDay",t[t.DateTime=24]="DateTime",t[t.Duration=25]="Duration",t[t.TIME=26]="TIME",t[t.Null=27]="Null"}(kl||(kl={}));class Lh{constructor(t,e=0){if(this.unusedBits=0,this.value=new ArrayBuffer(0),t)if("number"==typeof t)this.fromNumber(t);else{if(!Ac.vJ.isBufferSource(t))throw TypeError("Unsupported type of 'params' argument for BitString");this.unusedBits=e,this.value=Ac.vJ.toArrayBuffer(t)}}fromASN(t){if(!(t instanceof Gl))throw new TypeError("Argument 'asn' is not instance of ASN.1 BitString");return this.unusedBits=t.valueBlock.unusedBits,this.value=t.valueBlock.valueHex,this}toASN(){return new Gl({unusedBits:this.unusedBits,valueHex:this.value})}toSchema(t){return new Gl({name:t})}toNumber(){let t="";const e=new Uint8Array(this.value);for(const r of e)t+=r.toString(2).padStart(8,"0");return t=t.split("").reverse().join(""),this.unusedBits&&(t=t.slice(this.unusedBits).padStart(this.unusedBits,"0")),parseInt(t,2)}fromNumber(t){let e=t.toString(2);const r=e.length+7>>3;this.unusedBits=(r<<3)-e.length;const i=new Uint8Array(r);e=e.padStart(r<<3,"0").split("").reverse().join("");let n=0;for(;n<r;)i[n]=parseInt(e.slice(n<<3,8+(n<<3)),2),n++;this.value=i.buffer}}class Uh{constructor(t){"number"==typeof t?this.buffer=new ArrayBuffer(t):Ac.vJ.isBufferSource(t)?this.buffer=Ac.vJ.toArrayBuffer(t):Array.isArray(t)?this.buffer=new Uint8Array(t):this.buffer=new ArrayBuffer(0)}get byteLength(){return this.buffer.byteLength}get byteOffset(){return 0}fromASN(t){if(!(t instanceof Wl))throw new TypeError("Argument 'asn' is not instance of ASN.1 OctetString");return this.buffer=t.valueBlock.valueHex,this}toASN(){return new Wl({valueHex:this.buffer})}toSchema(t){return new Wl({name:t})}}const Mh={fromASN:t=>t instanceof Ml?null:t.valueBeforeDecodeView,toASN:t=>{if(null===t)return new Ml;const e=Bl(t);if(e.result.error)throw new Error(e.result.error);return e.result}},Fh={fromASN:t=>t.valueBlock.valueHexView.byteLength>=4?t.valueBlock.toString():t.valueBlock.valueDec,toASN:t=>new Yl({value:+t})},Hh={fromASN:t=>t.valueBlock.valueDec,toASN:t=>new Jl({value:t})},jh={fromASN:t=>t.valueBlock.valueHexView,toASN:t=>new Yl({valueHex:t})},Wh={fromASN:t=>t.valueBlock.valueHexView,toASN:t=>new Gl({valueHex:t})},Vh={fromASN:t=>t.valueBlock.toString(),toASN:t=>new $l({value:t})},Gh={fromASN:t=>t.valueBlock.value,toASN:t=>new Hl({value:t})},zh={fromASN:t=>t.valueBlock.valueHexView,toASN:t=>new Wl({valueHex:t})},qh={fromASN:t=>new Uh(t.getValue()),toASN:t=>t.toASN()};function Qh(t){return{fromASN:t=>t.valueBlock.value,toASN:e=>new t({value:e})}}const Kh=Qh(lh),Yh=Qh(uh),Jh=Qh(dh),Xh=Qh(fh),Zh=Qh(gh),$h=Qh(yh),tu=Qh(mh),eu=Qh(wh),ru=Qh(bh),iu=Qh(Ah),nu=Qh(vh),su=Qh(_h),ou={fromASN:t=>t.toDate(),toASN:t=>new Eh({valueDate:t})},au={fromASN:t=>t.toDate(),toASN:t=>new Sh({valueDate:t})},cu={fromASN:()=>null,toASN:()=>new Ml};function lu(t){switch(t){case kl.Any:return Mh;case kl.BitString:return Wh;case kl.BmpString:return Yh;case kl.Boolean:return Gh;case kl.CharacterString:return su;case kl.Enumerated:return Hh;case kl.GeneralString:return nu;case kl.GeneralizedTime:return au;case kl.GraphicString:return ru;case kl.IA5String:return eu;case kl.Integer:return Fh;case kl.Null:return cu;case kl.NumericString:return Xh;case kl.ObjectIdentifier:return Vh;case kl.OctetString:return zh;case kl.PrintableString:return Zh;case kl.TeletexString:return $h;case kl.UTCTime:return ou;case kl.UniversalString:return Jh;case kl.Utf8String:return Kh;case kl.VideotexString:return tu;case kl.VisibleString:return iu;default:return null}}function hu(t){return"function"==typeof t&&t.prototype?!(!t.prototype.toASN||!t.prototype.fromASN)||hu(t.prototype):!!(t&&"object"==typeof t&&"toASN"in t&&"fromASN"in t)}function uu(t){var e;if(t){const r=Object.getPrototypeOf(t);return(null===(e=null==r?void 0:r.prototype)||void 0===e?void 0:e.constructor)===Array||uu(r)}return!1}function pu(t,e){if(!t||!e)return!1;if(t.byteLength!==e.byteLength)return!1;const r=new Uint8Array(t),i=new Uint8Array(e);for(let e=0;e<t.byteLength;e++)if(r[e]!==i[e])return!1;return!0}const du=new class{constructor(){this.items=new WeakMap}has(t){return this.items.has(t)}get(t,e=!1){const r=this.items.get(t);if(!r)throw new Error(`Cannot get schema for '${t.prototype.constructor.name}' target`);if(e&&!r.schema)throw new Error(`Schema '${t.prototype.constructor.name}' doesn't contain ASN.1 schema. Call 'AsnSchemaStorage.cache'.`);return r}cache(t){const e=this.get(t);e.schema||(e.schema=this.create(t,!0))}createDefault(t){const e={type:Rl.Sequence,items:{}},r=this.findParentSchema(t);return r&&(Object.assign(e,r),e.items=Object.assign({},e.items,r.items)),e}create(e,r){const i=this.items.get(e)||this.createDefault(e),n=[];for(const e in i.items){const s=i.items[e],o=r?e:"";let a;if("number"==typeof s.type){const e=kl[s.type],r=t[e];if(!r)throw new Error(`Cannot get ASN1 class by name '${e}'`);a=new r({name:o})}else hu(s.type)?a=(new s.type).toSchema(o):s.optional?this.get(s.type).type===Rl.Choice?a=new kh({name:o}):(a=this.create(s.type,!1),a.name=o):a=new kh({name:o});const c=!!s.optional||void 0!==s.defaultValue;if(s.repeated&&(a.name="",a=new("set"===s.repeated?nh:ih)({name:"",value:[new Oh({name:o,value:a})]})),null!==s.context&&void 0!==s.context)if(s.implicit)if("number"==typeof s.type||hu(s.type)){const t=s.repeated?Dl:Nl;n.push(new t({name:o,optional:c,idBlock:{tagClass:3,tagNumber:s.context}}))}else{this.cache(s.type);const t=!!s.repeated;let e=t?a:this.get(s.type,!0).schema;e="valueBlock"in e?e.valueBlock.value:e.value,n.push(new Dl({name:t?"":o,optional:c,idBlock:{tagClass:3,tagNumber:s.context},value:e}))}else n.push(new Dl({optional:c,idBlock:{tagClass:3,tagNumber:s.context},value:[a]}));else a.optional=c,n.push(a)}switch(i.type){case Rl.Sequence:return new ih({value:n,name:""});case Rl.Set:return new nh({value:n,name:""});case Rl.Choice:return new Nh({value:n,name:""});default:throw new Error("Unsupported ASN1 type in use")}}set(t,e){return this.items.set(t,e),this}findParentSchema(t){const e=Object.getPrototypeOf(t);return e?this.items.get(e)||this.findParentSchema(e):null}},fu=t=>e=>{let r;du.has(e)?r=du.get(e):(r=du.createDefault(e),du.set(e,r)),Object.assign(r,t)},gu=t=>(e,r)=>{let i;du.has(e.constructor)?i=du.get(e.constructor):(i=du.createDefault(e.constructor),du.set(e.constructor,i));const n=Object.assign({},t);if("number"==typeof n.type&&!n.converter){const i=lu(t.type);if(!i)throw new Error(`Cannot get default converter for property '${r}' of ${e.constructor.name}`);n.converter=i}i.items[r]=n};class yu extends Error{constructor(){super(...arguments),this.schemas=[]}}class mu{static serialize(t){return t instanceof qc?t.toBER(!1):this.toASN(t).toBER(!1)}static toASN(t){if(t&&"object"==typeof t&&hu(t))return t.toASN();if(!t||"object"!=typeof t)throw new TypeError("Parameter 1 should be type of Object.");const e=t.constructor,r=du.get(e);du.cache(e);let i,n=[];if(r.itemType){if(!Array.isArray(t))throw new TypeError("Parameter 1 should be type of Array.");if("number"==typeof r.itemType){const i=lu(r.itemType);if(!i)throw new Error(`Cannot get default converter for array item of ${e.name} ASN1 schema`);n=t.map((t=>i.toASN(t)))}else n=t.map((t=>this.toAsnItem({type:r.itemType},"[]",e,t)))}else for(const i in r.items){const s=r.items[i],o=t[i];if(void 0===o||s.defaultValue===o||"object"==typeof s.defaultValue&&"object"==typeof o&&pu(this.serialize(s.defaultValue),this.serialize(o)))continue;const a=mu.toAsnItem(s,i,e,o);if("number"==typeof s.context)if(s.implicit)if(s.repeated||"number"!=typeof s.type&&!hu(s.type))n.push(new Dl({optional:s.optional,idBlock:{tagClass:3,tagNumber:s.context},value:a.valueBlock.value}));else{const t={};t.valueHex=a instanceof Ml?a.valueBeforeDecodeView:a.valueBlock.toBER(),n.push(new Nl({optional:s.optional,idBlock:{tagClass:3,tagNumber:s.context},...t}))}else n.push(new Dl({optional:s.optional,idBlock:{tagClass:3,tagNumber:s.context},value:[a]}));else s.repeated?n=n.concat(a):n.push(a)}switch(r.type){case Rl.Sequence:i=new ih({value:n});break;case Rl.Set:i=new nh({value:n});break;case Rl.Choice:if(!n[0])throw new Error(`Schema '${e.name}' has wrong data. Choice cannot be empty.`);i=n[0]}return i}static toAsnItem(t,e,r,i){let n;if("number"==typeof t.type){const s=t.converter;if(!s)throw new Error(`Property '${e}' doesn't have converter for type ${kl[t.type]} in schema '${r.name}'`);if(t.repeated){if(!Array.isArray(i))throw new TypeError("Parameter 'objProp' should be type of Array.");const e=Array.from(i,(t=>s.toASN(t)));n=new("sequence"===t.repeated?ih:nh)({value:e})}else n=s.toASN(i)}else if(t.repeated){if(!Array.isArray(i))throw new TypeError("Parameter 'objProp' should be type of Array.");const e=Array.from(i,(t=>this.toASN(t)));n=new("sequence"===t.repeated?ih:nh)({value:e})}else n=this.toASN(i);return n}}class wu extends Array{constructor(t=[]){if("number"==typeof t)super(t);else{super();for(const e of t)this.push(e)}}}class bu{static serialize(t){return mu.serialize(t)}static parse(e,r){return class{static parse(t,e){const r=Bl(t);if(r.result.error)throw new Error(r.result.error);return this.fromASN(r.result,e)}static fromASN(e,r){var i;try{if(hu(r))return(new r).fromASN(e);const n=du.get(r);du.cache(r);let s=n.schema;if(e.constructor===Dl&&n.type!==Rl.Choice){s=new Dl({idBlock:{tagClass:3,tagNumber:e.idBlock.tagNumber},value:n.schema.valueBlock.value});for(const t in n.items)delete e[t]}const o=Ph({},e,s);if(!o.verified)throw new yu(`Data does not match to ${r.name} ASN1 schema. ${o.result.error}`);const a=new r;if(uu(r)){if(!("value"in e.valueBlock)||!Array.isArray(e.valueBlock.value))throw new Error("Cannot get items from the ASN.1 parsed value. ASN.1 object is not constructed.");const t=n.itemType;if("number"==typeof t){const i=lu(t);if(!i)throw new Error(`Cannot get default converter for array item of ${r.name} ASN1 schema`);return r.from(e.valueBlock.value,(t=>i.fromASN(t)))}return r.from(e.valueBlock.value,(e=>this.fromASN(e,t)))}for(const e in n.items){const r=o.result[e];if(!r)continue;const s=n.items[e],c=s.type;if("number"==typeof c||hu(c)){const n=null!==(i=s.converter)&&void 0!==i?i:hu(c)?new c:null;if(!n)throw new Error("Converter is empty");if(s.repeated)if(s.implicit){const t=new("sequence"===s.repeated?ih:nh);t.valueBlock=r.valueBlock;const i=Bl(t.toBER(!1));if(-1===i.offset)throw new Error(`Cannot parse the child item. ${i.result.error}`);if(!("value"in i.result.valueBlock)||!Array.isArray(i.result.valueBlock.value))throw new Error("Cannot get items from the ASN.1 parsed value. ASN.1 object is not constructed.");const o=i.result.valueBlock.value;a[e]=Array.from(o,(t=>n.fromASN(t)))}else a[e]=Array.from(r,(t=>n.fromASN(t)));else{let i=r;if(s.implicit){let e;if(hu(c))e=(new c).toSchema("");else{const r=kl[c],i=t[r];if(!i)throw new Error(`Cannot get '${r}' class from asn1js module`);e=new i}e.valueBlock=i.valueBlock,i=Bl(e.toBER(!1)).result}a[e]=n.fromASN(i)}}else if(s.repeated){if(!Array.isArray(r))throw new Error("Cannot get list of items from the ASN.1 parsed value. ASN.1 value should be iterable.");a[e]=Array.from(r,(t=>this.fromASN(t,c)))}else a[e]=this.fromASN(r,c)}return a}catch(t){throw t instanceof yu&&t.schemas.push(r.name),t}}}.parse(e,r)}static toString(t){const e=Bl(Ac.vJ.isBufferSource(t)?Ac.vJ.toArrayBuffer(t):bu.serialize(t));if(-1===e.offset)throw new Error(`Cannot decode ASN.1 data. ${e.result.error}`);return e.result.toString()}}function Au(t,e,r,i){var n,s=arguments.length,o=s<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,r,i);else for(var a=t.length-1;a>=0;a--)(n=t[a])&&(o=(s<3?n(o):s>3?n(e,r,o):n(e,r))||o);return s>3&&o&&Object.defineProperty(e,r,o),o}Object.create,Object.create;var vu,_u,Eu,Su=r(6512);class Tu{static decodeIP(t){if(64===t.length&&0===parseInt(t,16))return"::/0";if(16!==t.length)return t;const e=parseInt(t.slice(8),16).toString(2).split("").reduce(((t,e)=>t+ +e),0);let r=t.slice(0,8).replace(/(.{2})/g,(t=>`${parseInt(t,16)}.`));return r=r.slice(0,-1),`${r}/${e}`}static toString(t){if(4===t.byteLength||16===t.byteLength){const e=new Uint8Array(t);return Su.fromByteArray(Array.from(e)).toString()}return this.decodeIP(Ac.ep.ToHex(t))}static fromString(t){const e=Su.parse(t);return new Uint8Array(e.toByteArray()).buffer}}let xu=class{constructor(t={}){Object.assign(this,t)}toString(){return this.bmpString||this.printableString||this.teletexString||this.universalString||this.utf8String||""}};Au([gu({type:kl.TeletexString})],xu.prototype,"teletexString",void 0),Au([gu({type:kl.PrintableString})],xu.prototype,"printableString",void 0),Au([gu({type:kl.UniversalString})],xu.prototype,"universalString",void 0),Au([gu({type:kl.Utf8String})],xu.prototype,"utf8String",void 0),Au([gu({type:kl.BmpString})],xu.prototype,"bmpString",void 0),xu=Au([fu({type:Rl.Choice})],xu);let Cu=class extends xu{constructor(t={}){super(t),Object.assign(this,t)}toString(){return this.ia5String||(this.anyValue?Ac.ep.ToHex(this.anyValue):super.toString())}};Au([gu({type:kl.IA5String})],Cu.prototype,"ia5String",void 0),Au([gu({type:kl.Any})],Cu.prototype,"anyValue",void 0),Cu=Au([fu({type:Rl.Choice})],Cu);class Iu{constructor(t={}){this.type="",this.value=new Cu,Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],Iu.prototype,"type",void 0),Au([gu({type:Cu})],Iu.prototype,"value",void 0);let Ru=vu=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,vu.prototype)}};Ru=vu=Au([fu({type:Rl.Set,itemType:Iu})],Ru);let ku=_u=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,_u.prototype)}};ku=_u=Au([fu({type:Rl.Sequence,itemType:Ru})],ku);let Nu=Eu=class extends ku{constructor(t){super(t),Object.setPrototypeOf(this,Eu.prototype)}};Nu=Eu=Au([fu({type:Rl.Sequence})],Nu);const Ou={fromASN:t=>Tu.toString(zh.fromASN(t)),toASN:t=>zh.toASN(Tu.fromString(t))};class Bu{constructor(t={}){this.typeId="",this.value=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],Bu.prototype,"typeId",void 0),Au([gu({type:kl.Any,context:0})],Bu.prototype,"value",void 0);class Pu{constructor(t={}){this.partyName=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:xu,optional:!0,context:0,implicit:!0})],Pu.prototype,"nameAssigner",void 0),Au([gu({type:xu,context:1,implicit:!0})],Pu.prototype,"partyName",void 0);let Du=class{constructor(t={}){Object.assign(this,t)}};Au([gu({type:Bu,context:0,implicit:!0})],Du.prototype,"otherName",void 0),Au([gu({type:kl.IA5String,context:1,implicit:!0})],Du.prototype,"rfc822Name",void 0),Au([gu({type:kl.IA5String,context:2,implicit:!0})],Du.prototype,"dNSName",void 0),Au([gu({type:kl.Any,context:3,implicit:!0})],Du.prototype,"x400Address",void 0),Au([gu({type:Nu,context:4,implicit:!1})],Du.prototype,"directoryName",void 0),Au([gu({type:Pu,context:5})],Du.prototype,"ediPartyName",void 0),Au([gu({type:kl.IA5String,context:6,implicit:!0})],Du.prototype,"uniformResourceIdentifier",void 0),Au([gu({type:kl.OctetString,context:7,implicit:!0,converter:Ou})],Du.prototype,"iPAddress",void 0),Au([gu({type:kl.ObjectIdentifier,context:8,implicit:!0})],Du.prototype,"registeredID",void 0),Du=Au([fu({type:Rl.Choice})],Du);const Lu="1.3.6.1.5.5.7.3";var Uu;class Mu{constructor(t={}){this.accessMethod="",this.accessLocation=new Du,Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],Mu.prototype,"accessMethod",void 0),Au([gu({type:Du})],Mu.prototype,"accessLocation",void 0);let Fu=Uu=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,Uu.prototype)}};Fu=Uu=Au([fu({type:Rl.Sequence,itemType:Mu})],Fu);const Hu="2.5.29.35";class ju extends Uh{}class Wu{constructor(t={}){t&&Object.assign(this,t)}}Au([gu({type:ju,context:0,optional:!0,implicit:!0})],Wu.prototype,"keyIdentifier",void 0),Au([gu({type:Du,context:1,optional:!0,implicit:!0,repeated:"sequence"})],Wu.prototype,"authorityCertIssuer",void 0),Au([gu({type:kl.Integer,context:2,optional:!0,implicit:!0,converter:jh})],Wu.prototype,"authorityCertSerialNumber",void 0);const Vu="2.5.29.19";class Gu{constructor(t={}){this.cA=!1,Object.assign(this,t)}}var zu;Au([gu({type:kl.Boolean,defaultValue:!1})],Gu.prototype,"cA",void 0),Au([gu({type:kl.Integer,optional:!0})],Gu.prototype,"pathLenConstraint",void 0);let qu=zu=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,zu.prototype)}};var Qu;qu=zu=Au([fu({type:Rl.Sequence,itemType:Du})],qu);let Ku=Qu=class extends qu{constructor(t){super(t),Object.setPrototypeOf(this,Qu.prototype)}};var Yu;Ku=Qu=Au([fu({type:Rl.Sequence})],Ku);const Ju="2.5.29.32";let Xu=class{constructor(t={}){Object.assign(this,t)}toString(){return this.ia5String||this.visibleString||this.bmpString||this.utf8String||""}};Au([gu({type:kl.IA5String})],Xu.prototype,"ia5String",void 0),Au([gu({type:kl.VisibleString})],Xu.prototype,"visibleString",void 0),Au([gu({type:kl.BmpString})],Xu.prototype,"bmpString",void 0),Au([gu({type:kl.Utf8String})],Xu.prototype,"utf8String",void 0),Xu=Au([fu({type:Rl.Choice})],Xu);class Zu{constructor(t={}){this.organization=new Xu,this.noticeNumbers=[],Object.assign(this,t)}}Au([gu({type:Xu})],Zu.prototype,"organization",void 0),Au([gu({type:kl.Integer,repeated:"sequence"})],Zu.prototype,"noticeNumbers",void 0);class $u{constructor(t={}){Object.assign(this,t)}}Au([gu({type:Zu,optional:!0})],$u.prototype,"noticeRef",void 0),Au([gu({type:Xu,optional:!0})],$u.prototype,"explicitText",void 0);let tp=class{constructor(t={}){Object.assign(this,t)}};Au([gu({type:kl.IA5String})],tp.prototype,"cPSuri",void 0),Au([gu({type:$u})],tp.prototype,"userNotice",void 0),tp=Au([fu({type:Rl.Choice})],tp);class ep{constructor(t={}){this.policyQualifierId="",this.qualifier=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],ep.prototype,"policyQualifierId",void 0),Au([gu({type:kl.Any})],ep.prototype,"qualifier",void 0);class rp{constructor(t={}){this.policyIdentifier="",Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],rp.prototype,"policyIdentifier",void 0),Au([gu({type:ep,repeated:"sequence",optional:!0})],rp.prototype,"policyQualifiers",void 0);let ip=Yu=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,Yu.prototype)}};ip=Yu=Au([fu({type:Rl.Sequence,itemType:rp})],ip);let np=class{constructor(t=0){this.value=t}};Au([gu({type:kl.Integer})],np.prototype,"value",void 0),np=Au([fu({type:Rl.Choice})],np);let sp=class extends np{};var op,ap;sp=Au([fu({type:Rl.Choice})],sp),function(t){t[t.unused=1]="unused",t[t.keyCompromise=2]="keyCompromise",t[t.cACompromise=4]="cACompromise",t[t.affiliationChanged=8]="affiliationChanged",t[t.superseded=16]="superseded",t[t.cessationOfOperation=32]="cessationOfOperation",t[t.certificateHold=64]="certificateHold",t[t.privilegeWithdrawn=128]="privilegeWithdrawn",t[t.aACompromise=256]="aACompromise"}(ap||(ap={}));class cp extends Lh{toJSON(){const t=[],e=this.toNumber();return e&ap.aACompromise&&t.push("aACompromise"),e&ap.affiliationChanged&&t.push("affiliationChanged"),e&ap.cACompromise&&t.push("cACompromise"),e&ap.certificateHold&&t.push("certificateHold"),e&ap.cessationOfOperation&&t.push("cessationOfOperation"),e&ap.keyCompromise&&t.push("keyCompromise"),e&ap.privilegeWithdrawn&&t.push("privilegeWithdrawn"),e&ap.superseded&&t.push("superseded"),e&ap.unused&&t.push("unused"),t}toString(){return`[${this.toJSON().join(", ")}]`}}let lp=class{constructor(t={}){Object.assign(this,t)}};Au([gu({type:Du,context:0,repeated:"sequence",implicit:!0})],lp.prototype,"fullName",void 0),Au([gu({type:Ru,context:1,implicit:!0})],lp.prototype,"nameRelativeToCRLIssuer",void 0),lp=Au([fu({type:Rl.Choice})],lp);class hp{constructor(t={}){Object.assign(this,t)}}Au([gu({type:lp,context:0,optional:!0})],hp.prototype,"distributionPoint",void 0),Au([gu({type:cp,context:1,optional:!0,implicit:!0})],hp.prototype,"reasons",void 0),Au([gu({type:Du,context:2,optional:!0,repeated:"sequence",implicit:!0})],hp.prototype,"cRLIssuer",void 0);let up=op=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,op.prototype)}};var pp;up=op=Au([fu({type:Rl.Sequence,itemType:hp})],up);let dp=pp=class extends up{constructor(t){super(t),Object.setPrototypeOf(this,pp.prototype)}};dp=pp=Au([fu({type:Rl.Sequence,itemType:hp})],dp);class fp{constructor(t={}){this.onlyContainsUserCerts=fp.ONLY,this.onlyContainsCACerts=fp.ONLY,this.indirectCRL=fp.ONLY,this.onlyContainsAttributeCerts=fp.ONLY,Object.assign(this,t)}}var gp;fp.ONLY=!1,Au([gu({type:lp,context:0,optional:!0})],fp.prototype,"distributionPoint",void 0),Au([gu({type:kl.Boolean,context:1,defaultValue:fp.ONLY,implicit:!0})],fp.prototype,"onlyContainsUserCerts",void 0),Au([gu({type:kl.Boolean,context:2,defaultValue:fp.ONLY,implicit:!0})],fp.prototype,"onlyContainsCACerts",void 0),Au([gu({type:cp,context:3,optional:!0,implicit:!0})],fp.prototype,"onlySomeReasons",void 0),Au([gu({type:kl.Boolean,context:4,defaultValue:fp.ONLY,implicit:!0})],fp.prototype,"indirectCRL",void 0),Au([gu({type:kl.Boolean,context:5,defaultValue:fp.ONLY,implicit:!0})],fp.prototype,"onlyContainsAttributeCerts",void 0),function(t){t[t.unspecified=0]="unspecified",t[t.keyCompromise=1]="keyCompromise",t[t.cACompromise=2]="cACompromise",t[t.affiliationChanged=3]="affiliationChanged",t[t.superseded=4]="superseded",t[t.cessationOfOperation=5]="cessationOfOperation",t[t.certificateHold=6]="certificateHold",t[t.removeFromCRL=8]="removeFromCRL",t[t.privilegeWithdrawn=9]="privilegeWithdrawn",t[t.aACompromise=10]="aACompromise"}(gp||(gp={}));let yp=class{constructor(t=gp.unspecified){this.reason=gp.unspecified,this.reason=t}toJSON(){return gp[this.reason]}toString(){return this.toJSON()}};var mp;Au([gu({type:kl.Enumerated})],yp.prototype,"reason",void 0),yp=Au([fu({type:Rl.Choice})],yp);const wp="2.5.29.37";let bp=mp=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,mp.prototype)}};bp=mp=Au([fu({type:Rl.Sequence,itemType:kl.ObjectIdentifier})],bp);const Ap=`${Lu}.1`,vp=`${Lu}.2`,_p=`${Lu}.3`,Ep=`${Lu}.4`,Sp=`${Lu}.8`,Tp=`${Lu}.9`;let xp=class{constructor(t=new ArrayBuffer(0)){this.value=t}};Au([gu({type:kl.Integer,converter:jh})],xp.prototype,"value",void 0),xp=Au([fu({type:Rl.Choice})],xp);let Cp=class{constructor(t){this.value=new Date,t&&(this.value=t)}};var Ip;Au([gu({type:kl.GeneralizedTime})],Cp.prototype,"value",void 0),Cp=Au([fu({type:Rl.Choice})],Cp);let Rp=Ip=class extends qu{constructor(t){super(t),Object.setPrototypeOf(this,Ip.prototype)}};Rp=Ip=Au([fu({type:Rl.Sequence})],Rp);const kp="2.5.29.15";var Np,Op;!function(t){t[t.digitalSignature=1]="digitalSignature",t[t.nonRepudiation=2]="nonRepudiation",t[t.keyEncipherment=4]="keyEncipherment",t[t.dataEncipherment=8]="dataEncipherment",t[t.keyAgreement=16]="keyAgreement",t[t.keyCertSign=32]="keyCertSign",t[t.cRLSign=64]="cRLSign",t[t.encipherOnly=128]="encipherOnly",t[t.decipherOnly=256]="decipherOnly"}(Np||(Np={}));class Bp extends Lh{toJSON(){const t=this.toNumber(),e=[];return t&Np.cRLSign&&e.push("crlSign"),t&Np.dataEncipherment&&e.push("dataEncipherment"),t&Np.decipherOnly&&e.push("decipherOnly"),t&Np.digitalSignature&&e.push("digitalSignature"),t&Np.encipherOnly&&e.push("encipherOnly"),t&Np.keyAgreement&&e.push("keyAgreement"),t&Np.keyCertSign&&e.push("keyCertSign"),t&Np.keyEncipherment&&e.push("keyEncipherment"),t&Np.nonRepudiation&&e.push("nonRepudiation"),e}toString(){return`[${this.toJSON().join(", ")}]`}}class Pp{constructor(t={}){this.base=new Du,this.minimum=0,Object.assign(this,t)}}Au([gu({type:Du})],Pp.prototype,"base",void 0),Au([gu({type:kl.Integer,context:0,defaultValue:0,implicit:!0})],Pp.prototype,"minimum",void 0),Au([gu({type:kl.Integer,context:1,optional:!0,implicit:!0})],Pp.prototype,"maximum",void 0);let Dp=Op=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,Op.prototype)}};Dp=Op=Au([fu({type:Rl.Sequence,itemType:Pp})],Dp);class Lp{constructor(t={}){Object.assign(this,t)}}Au([gu({type:Dp,context:0,optional:!0,implicit:!0})],Lp.prototype,"permittedSubtrees",void 0),Au([gu({type:Dp,context:1,optional:!0,implicit:!0})],Lp.prototype,"excludedSubtrees",void 0);class Up{constructor(t={}){Object.assign(this,t)}}var Mp;Au([gu({type:kl.Integer,context:0,implicit:!0,optional:!0,converter:jh})],Up.prototype,"requireExplicitPolicy",void 0),Au([gu({type:kl.Integer,context:1,implicit:!0,optional:!0,converter:jh})],Up.prototype,"inhibitPolicyMapping",void 0);class Fp{constructor(t={}){this.issuerDomainPolicy="",this.subjectDomainPolicy="",Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],Fp.prototype,"issuerDomainPolicy",void 0),Au([gu({type:kl.ObjectIdentifier})],Fp.prototype,"subjectDomainPolicy",void 0);let Hp=Mp=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,Mp.prototype)}};var jp;Hp=Mp=Au([fu({type:Rl.Sequence,itemType:Fp})],Hp);const Wp="2.5.29.17";let Vp=jp=class extends qu{constructor(t){super(t),Object.setPrototypeOf(this,jp.prototype)}};Vp=jp=Au([fu({type:Rl.Sequence})],Vp);class Gp{constructor(t={}){this.type="",this.values=[],Object.assign(this,t)}}var zp;Au([gu({type:kl.ObjectIdentifier})],Gp.prototype,"type",void 0),Au([gu({type:kl.Any,repeated:"set"})],Gp.prototype,"values",void 0);let qp=zp=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,zp.prototype)}};qp=zp=Au([fu({type:Rl.Sequence,itemType:Gp})],qp);const Qp="2.5.29.14";class Kp extends ju{}class Yp{constructor(t={}){Object.assign(this,t)}}var Jp,Xp;Au([gu({type:kl.GeneralizedTime,context:0,implicit:!0,optional:!0})],Yp.prototype,"notBefore",void 0),Au([gu({type:kl.GeneralizedTime,context:1,implicit:!0,optional:!0})],Yp.prototype,"notAfter",void 0),function(t){t[t.keyUpdateAllowed=1]="keyUpdateAllowed",t[t.newExtensions=2]="newExtensions",t[t.pKIXCertificate=4]="pKIXCertificate"}(Jp||(Jp={}));class Zp extends Lh{toJSON(){const t=[],e=this.toNumber();return e&Jp.pKIXCertificate&&t.push("pKIXCertificate"),e&Jp.newExtensions&&t.push("newExtensions"),e&Jp.keyUpdateAllowed&&t.push("keyUpdateAllowed"),t}toString(){return`[${this.toJSON().join(", ")}]`}}class $p{constructor(t={}){this.entrustVers="",this.entrustInfoFlags=new Zp,Object.assign(this,t)}}Au([gu({type:kl.GeneralString})],$p.prototype,"entrustVers",void 0),Au([gu({type:Zp})],$p.prototype,"entrustInfoFlags",void 0);let td=Xp=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,Xp.prototype)}};td=Xp=Au([fu({type:Rl.Sequence,itemType:Mu})],td);class ed{constructor(t={}){this.algorithm="",Object.assign(this,t)}isEqual(t){return t instanceof ed&&t.algorithm==this.algorithm&&(t.parameters&&this.parameters&&Ac.Xy(t.parameters,this.parameters)||t.parameters===this.parameters)}}Au([gu({type:kl.ObjectIdentifier})],ed.prototype,"algorithm",void 0),Au([gu({type:kl.Any,optional:!0})],ed.prototype,"parameters",void 0);class rd{constructor(t={}){this.algorithm=new ed,this.subjectPublicKey=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:ed})],rd.prototype,"algorithm",void 0),Au([gu({type:kl.BitString})],rd.prototype,"subjectPublicKey",void 0);let id=class{constructor(t){if(t)if("string"==typeof t||"number"==typeof t||t instanceof Date){const e=new Date(t);e.getUTCFullYear()>2049?this.generalTime=e:this.utcTime=e}else Object.assign(this,t)}getTime(){const t=this.utcTime||this.generalTime;if(!t)throw new Error("Cannot get time from CHOICE object");return t}};Au([gu({type:kl.UTCTime})],id.prototype,"utcTime",void 0),Au([gu({type:kl.GeneralizedTime})],id.prototype,"generalTime",void 0),id=Au([fu({type:Rl.Choice})],id);class nd{constructor(t){this.notBefore=new id(new Date),this.notAfter=new id(new Date),t&&(this.notBefore=new id(t.notBefore),this.notAfter=new id(t.notAfter))}}var sd;Au([gu({type:id})],nd.prototype,"notBefore",void 0),Au([gu({type:id})],nd.prototype,"notAfter",void 0);class od{constructor(t={}){this.extnID="",this.critical=od.CRITICAL,this.extnValue=new Uh,Object.assign(this,t)}}od.CRITICAL=!1,Au([gu({type:kl.ObjectIdentifier})],od.prototype,"extnID",void 0),Au([gu({type:kl.Boolean,defaultValue:od.CRITICAL})],od.prototype,"critical",void 0),Au([gu({type:Uh})],od.prototype,"extnValue",void 0);let ad=sd=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,sd.prototype)}};var cd,ld;ad=sd=Au([fu({type:Rl.Sequence,itemType:od})],ad),function(t){t[t.v1=0]="v1",t[t.v2=1]="v2",t[t.v3=2]="v3"}(cd||(cd={}));class hd{constructor(t={}){this.version=cd.v1,this.serialNumber=new ArrayBuffer(0),this.signature=new ed,this.issuer=new Nu,this.validity=new nd,this.subject=new Nu,this.subjectPublicKeyInfo=new rd,Object.assign(this,t)}}Au([gu({type:kl.Integer,context:0,defaultValue:cd.v1})],hd.prototype,"version",void 0),Au([gu({type:kl.Integer,converter:jh})],hd.prototype,"serialNumber",void 0),Au([gu({type:ed})],hd.prototype,"signature",void 0),Au([gu({type:Nu})],hd.prototype,"issuer",void 0),Au([gu({type:nd})],hd.prototype,"validity",void 0),Au([gu({type:Nu})],hd.prototype,"subject",void 0),Au([gu({type:rd})],hd.prototype,"subjectPublicKeyInfo",void 0),Au([gu({type:kl.BitString,context:1,implicit:!0,optional:!0})],hd.prototype,"issuerUniqueID",void 0),Au([gu({type:kl.BitString,context:2,implicit:!0,optional:!0})],hd.prototype,"subjectUniqueID",void 0),Au([gu({type:ad,context:3,optional:!0})],hd.prototype,"extensions",void 0);class ud{constructor(t={}){this.tbsCertificate=new hd,this.signatureAlgorithm=new ed,this.signatureValue=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:hd})],ud.prototype,"tbsCertificate",void 0),Au([gu({type:ed})],ud.prototype,"signatureAlgorithm",void 0),Au([gu({type:kl.BitString})],ud.prototype,"signatureValue",void 0);class pd{constructor(t={}){this.userCertificate=new ArrayBuffer(0),this.revocationDate=new id,Object.assign(this,t)}}Au([gu({type:kl.Integer,converter:jh})],pd.prototype,"userCertificate",void 0),Au([gu({type:id})],pd.prototype,"revocationDate",void 0),Au([gu({type:od,optional:!0,repeated:"sequence"})],pd.prototype,"crlEntryExtensions",void 0);class dd{constructor(t={}){this.signature=new ed,this.issuer=new Nu,this.thisUpdate=new id,Object.assign(this,t)}}Au([gu({type:kl.Integer,optional:!0})],dd.prototype,"version",void 0),Au([gu({type:ed})],dd.prototype,"signature",void 0),Au([gu({type:Nu})],dd.prototype,"issuer",void 0),Au([gu({type:id})],dd.prototype,"thisUpdate",void 0),Au([gu({type:id,optional:!0})],dd.prototype,"nextUpdate",void 0),Au([gu({type:pd,repeated:"sequence",optional:!0})],dd.prototype,"revokedCertificates",void 0),Au([gu({type:od,optional:!0,context:0,repeated:"sequence"})],dd.prototype,"crlExtensions",void 0);class fd{constructor(t={}){this.tbsCertList=new dd,this.signatureAlgorithm=new ed,this.signature=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:dd})],fd.prototype,"tbsCertList",void 0),Au([gu({type:ed})],fd.prototype,"signatureAlgorithm",void 0),Au([gu({type:kl.BitString})],fd.prototype,"signature",void 0);class gd{constructor(t={}){this.attrType="",this.attrValues=[],Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],gd.prototype,"attrType",void 0),Au([gu({type:kl.Any,repeated:"set"})],gd.prototype,"attrValues",void 0);class yd{constructor(t={}){this.acIssuer=new Du,this.acSerial=0,this.attrs=[],Object.assign(this,t)}}Au([gu({type:Du})],yd.prototype,"acIssuer",void 0),Au([gu({type:kl.Integer})],yd.prototype,"acSerial",void 0),Au([gu({type:Gp,repeated:"sequence"})],yd.prototype,"attrs",void 0);let md=ld=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,ld.prototype)}};md=ld=Au([fu({type:Rl.Sequence,itemType:kl.ObjectIdentifier})],md);class wd{constructor(t={}){this.permitUnSpecified=!0,Object.assign(this,t)}}Au([gu({type:kl.Integer,optional:!0})],wd.prototype,"pathLenConstraint",void 0),Au([gu({type:md,implicit:!0,context:0,optional:!0})],wd.prototype,"permittedAttrs",void 0),Au([gu({type:md,implicit:!0,context:1,optional:!0})],wd.prototype,"excludedAttrs",void 0),Au([gu({type:kl.Boolean,defaultValue:!0})],wd.prototype,"permitUnSpecified",void 0);class bd{constructor(t={}){this.issuer=new qu,this.serial=new ArrayBuffer(0),this.issuerUID=new ArrayBuffer(0),Object.assign(this,t)}}var Ad;Au([gu({type:qu})],bd.prototype,"issuer",void 0),Au([gu({type:kl.Integer,converter:jh})],bd.prototype,"serial",void 0),Au([gu({type:kl.BitString,optional:!0})],bd.prototype,"issuerUID",void 0),function(t){t[t.publicKey=0]="publicKey",t[t.publicKeyCert=1]="publicKeyCert",t[t.otherObjectTypes=2]="otherObjectTypes"}(Ad||(Ad={}));class vd{constructor(t={}){this.digestedObjectType=Ad.publicKey,this.digestAlgorithm=new ed,this.objectDigest=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:kl.Enumerated})],vd.prototype,"digestedObjectType",void 0),Au([gu({type:kl.ObjectIdentifier,optional:!0})],vd.prototype,"otherObjectTypeID",void 0),Au([gu({type:ed})],vd.prototype,"digestAlgorithm",void 0),Au([gu({type:kl.BitString})],vd.prototype,"objectDigest",void 0);class _d{constructor(t={}){Object.assign(this,t)}}Au([gu({type:qu,optional:!0})],_d.prototype,"issuerName",void 0),Au([gu({type:bd,context:0,implicit:!0,optional:!0})],_d.prototype,"baseCertificateID",void 0),Au([gu({type:vd,context:1,implicit:!0,optional:!0})],_d.prototype,"objectDigestInfo",void 0);let Ed=class{constructor(t={}){Object.assign(this,t)}};Au([gu({type:Du,repeated:"sequence"})],Ed.prototype,"v1Form",void 0),Au([gu({type:_d,context:0,implicit:!0})],Ed.prototype,"v2Form",void 0),Ed=Au([fu({type:Rl.Choice})],Ed);class Sd{constructor(t={}){this.notBeforeTime=new Date,this.notAfterTime=new Date,Object.assign(this,t)}}Au([gu({type:kl.GeneralizedTime})],Sd.prototype,"notBeforeTime",void 0),Au([gu({type:kl.GeneralizedTime})],Sd.prototype,"notAfterTime",void 0);class Td{constructor(t={}){Object.assign(this,t)}}var xd,Cd,Id;Au([gu({type:bd,implicit:!0,context:0,optional:!0})],Td.prototype,"baseCertificateID",void 0),Au([gu({type:qu,implicit:!0,context:1,optional:!0})],Td.prototype,"entityName",void 0),Au([gu({type:vd,implicit:!0,context:2,optional:!0})],Td.prototype,"objectDigestInfo",void 0),function(t){t[t.v2=1]="v2"}(xd||(xd={}));class Rd{constructor(t={}){this.version=xd.v2,this.holder=new Td,this.issuer=new Ed,this.signature=new ed,this.serialNumber=new ArrayBuffer(0),this.attrCertValidityPeriod=new Sd,this.attributes=[],Object.assign(this,t)}}Au([gu({type:kl.Integer})],Rd.prototype,"version",void 0),Au([gu({type:Td})],Rd.prototype,"holder",void 0),Au([gu({type:Ed})],Rd.prototype,"issuer",void 0),Au([gu({type:ed})],Rd.prototype,"signature",void 0),Au([gu({type:kl.Integer,converter:jh})],Rd.prototype,"serialNumber",void 0),Au([gu({type:Sd})],Rd.prototype,"attrCertValidityPeriod",void 0),Au([gu({type:Gp,repeated:"sequence"})],Rd.prototype,"attributes",void 0),Au([gu({type:kl.BitString,optional:!0})],Rd.prototype,"issuerUniqueID",void 0),Au([gu({type:ad,optional:!0})],Rd.prototype,"extensions",void 0);class kd{constructor(t={}){this.acinfo=new Rd,this.signatureAlgorithm=new ed,this.signatureValue=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:Rd})],kd.prototype,"acinfo",void 0),Au([gu({type:ed})],kd.prototype,"signatureAlgorithm",void 0),Au([gu({type:kl.BitString})],kd.prototype,"signatureValue",void 0),function(t){t[t.unmarked=1]="unmarked",t[t.unclassified=2]="unclassified",t[t.restricted=4]="restricted",t[t.confidential=8]="confidential",t[t.secret=16]="secret",t[t.topSecret=32]="topSecret"}(Cd||(Cd={}));class Nd extends Lh{}class Od{constructor(t={}){this.type="",this.value=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier,implicit:!0,context:0})],Od.prototype,"type",void 0),Au([gu({type:kl.Any,implicit:!0,context:1})],Od.prototype,"value",void 0);class Bd{constructor(t={}){this.policyId="",this.classList=new Nd(Cd.unclassified),Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],Bd.prototype,"policyId",void 0),Au([gu({type:Nd,defaultValue:new Nd(Cd.unclassified)})],Bd.prototype,"classList",void 0),Au([gu({type:Od,repeated:"set"})],Bd.prototype,"securityCategories",void 0);class Pd{constructor(t={}){Object.assign(this,t)}}Au([gu({type:Uh})],Pd.prototype,"cotets",void 0),Au([gu({type:kl.ObjectIdentifier})],Pd.prototype,"oid",void 0),Au([gu({type:kl.Utf8String})],Pd.prototype,"string",void 0);class Dd{constructor(t={}){this.values=[],Object.assign(this,t)}}Au([gu({type:qu,implicit:!0,context:0,optional:!0})],Dd.prototype,"policyAuthority",void 0),Au([gu({type:Pd,repeated:"sequence"})],Dd.prototype,"values",void 0);class Ld{constructor(t={}){this.targetCertificate=new bd,Object.assign(this,t)}}Au([gu({type:bd})],Ld.prototype,"targetCertificate",void 0),Au([gu({type:Du,optional:!0})],Ld.prototype,"targetName",void 0),Au([gu({type:vd,optional:!0})],Ld.prototype,"certDigestInfo",void 0);let Ud=class{constructor(t={}){Object.assign(this,t)}};Au([gu({type:Du,context:0,implicit:!0})],Ud.prototype,"targetName",void 0),Au([gu({type:Du,context:1,implicit:!0})],Ud.prototype,"targetGroup",void 0),Au([gu({type:Ld,context:2,implicit:!0})],Ud.prototype,"targetCert",void 0),Ud=Au([fu({type:Rl.Choice})],Ud);let Md=Id=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,Id.prototype)}};var Fd;Md=Id=Au([fu({type:Rl.Sequence,itemType:Ud})],Md);let Hd=Fd=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,Fd.prototype)}};Hd=Fd=Au([fu({type:Rl.Sequence,itemType:Md})],Hd);class jd{constructor(t={}){Object.assign(this,t)}}Au([gu({type:qu,implicit:!0,context:0,optional:!0})],jd.prototype,"roleAuthority",void 0),Au([gu({type:Du,implicit:!0,context:1})],jd.prototype,"roleName",void 0);class Wd{constructor(t={}){this.service=new Du,this.ident=new Du,Object.assign(this,t)}}var Vd;Au([gu({type:Du})],Wd.prototype,"service",void 0),Au([gu({type:Du})],Wd.prototype,"ident",void 0),Au([gu({type:Uh,optional:!0})],Wd.prototype,"authInfo",void 0);class Gd{constructor(t={}){this.otherCertFormat="",this.otherCert=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],Gd.prototype,"otherCertFormat",void 0),Au([gu({type:kl.Any})],Gd.prototype,"otherCert",void 0);let zd=class{constructor(t={}){Object.assign(this,t)}};Au([gu({type:ud})],zd.prototype,"certificate",void 0),Au([gu({type:kd,context:2,implicit:!0})],zd.prototype,"v2AttrCert",void 0),Au([gu({type:Gd,context:3,implicit:!0})],zd.prototype,"other",void 0),zd=Au([fu({type:Rl.Choice})],zd);let qd=Vd=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,Vd.prototype)}};qd=Vd=Au([fu({type:Rl.Set,itemType:zd})],qd);class Qd{constructor(t={}){this.contentType="",this.content=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],Qd.prototype,"contentType",void 0),Au([gu({type:kl.Any,context:0})],Qd.prototype,"content",void 0);let Kd=class{constructor(t={}){Object.assign(this,t)}};Au([gu({type:Uh})],Kd.prototype,"single",void 0),Au([gu({type:kl.Any})],Kd.prototype,"any",void 0),Kd=Au([fu({type:Rl.Choice})],Kd);class Yd{constructor(t={}){this.eContentType="",Object.assign(this,t)}}var Jd;Au([gu({type:kl.ObjectIdentifier})],Yd.prototype,"eContentType",void 0),Au([gu({type:Kd,context:0,optional:!0})],Yd.prototype,"eContent",void 0),function(t){t[t.v0=0]="v0",t[t.v1=1]="v1",t[t.v2=2]="v2",t[t.v3=3]="v3",t[t.v4=4]="v4",t[t.v5=5]="v5"}(Jd||(Jd={}));let Xd=class extends ed{};Xd=Au([fu({type:Rl.Sequence})],Xd);let Zd=class extends ed{};Zd=Au([fu({type:Rl.Sequence})],Zd);let $d=class extends ed{};$d=Au([fu({type:Rl.Sequence})],$d);let tf=class extends ed{};tf=Au([fu({type:Rl.Sequence})],tf);let ef=class extends ed{};ef=Au([fu({type:Rl.Sequence})],ef);let rf=class extends ed{};rf=Au([fu({type:Rl.Sequence})],rf);let nf=class{constructor(t={}){Object.assign(this,t)}};Au([gu({type:Uh,context:0,implicit:!0,optional:!0})],nf.prototype,"value",void 0),Au([gu({type:Uh,converter:qh,context:0,implicit:!0,optional:!0,repeated:"sequence"})],nf.prototype,"constructedValue",void 0),nf=Au([fu({type:Rl.Choice})],nf);class sf{constructor(t={}){this.contentType="",this.contentEncryptionAlgorithm=new tf,Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],sf.prototype,"contentType",void 0),Au([gu({type:tf})],sf.prototype,"contentEncryptionAlgorithm",void 0),Au([gu({type:nf,optional:!0})],sf.prototype,"encryptedContent",void 0);class of{constructor(t={}){this.issuer=new Nu,this.serialNumber=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:Nu})],of.prototype,"issuer",void 0),Au([gu({type:kl.Integer,converter:jh})],of.prototype,"serialNumber",void 0);class af{constructor(t={}){this.keyAttrId="",Object.assign(this,t)}}var cf;Au([gu({type:kl.ObjectIdentifier})],af.prototype,"keyAttrId",void 0),Au([gu({type:kl.Any,optional:!0})],af.prototype,"keyAttr",void 0);class lf{constructor(t={}){this.subjectKeyIdentifier=new Kp,Object.assign(this,t)}}Au([gu({type:Kp})],lf.prototype,"subjectKeyIdentifier",void 0),Au([gu({type:kl.GeneralizedTime,optional:!0})],lf.prototype,"date",void 0),Au([gu({type:af,optional:!0})],lf.prototype,"other",void 0);let hf=class{constructor(t={}){Object.assign(this,t)}};Au([gu({type:lf,context:0,implicit:!0,optional:!0})],hf.prototype,"rKeyId",void 0),Au([gu({type:of,optional:!0})],hf.prototype,"issuerAndSerialNumber",void 0),hf=Au([fu({type:Rl.Choice})],hf);class uf{constructor(t={}){this.rid=new hf,this.encryptedKey=new Uh,Object.assign(this,t)}}Au([gu({type:hf})],uf.prototype,"rid",void 0),Au([gu({type:Uh})],uf.prototype,"encryptedKey",void 0);let pf=cf=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,cf.prototype)}};pf=cf=Au([fu({type:Rl.Sequence,itemType:uf})],pf);class df{constructor(t={}){this.algorithm=new ed,this.publicKey=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:ed})],df.prototype,"algorithm",void 0),Au([gu({type:kl.BitString})],df.prototype,"publicKey",void 0);let ff=class{constructor(t={}){Object.assign(this,t)}};Au([gu({type:Kp,context:0,implicit:!0,optional:!0})],ff.prototype,"subjectKeyIdentifier",void 0),Au([gu({type:df,context:1,implicit:!0,optional:!0})],ff.prototype,"originatorKey",void 0),Au([gu({type:of,optional:!0})],ff.prototype,"issuerAndSerialNumber",void 0),ff=Au([fu({type:Rl.Choice})],ff);class gf{constructor(t={}){this.version=Jd.v3,this.originator=new ff,this.keyEncryptionAlgorithm=new $d,this.recipientEncryptedKeys=new pf,Object.assign(this,t)}}Au([gu({type:kl.Integer})],gf.prototype,"version",void 0),Au([gu({type:ff,context:0})],gf.prototype,"originator",void 0),Au([gu({type:Uh,context:1,optional:!0})],gf.prototype,"ukm",void 0),Au([gu({type:$d})],gf.prototype,"keyEncryptionAlgorithm",void 0),Au([gu({type:pf})],gf.prototype,"recipientEncryptedKeys",void 0);let yf=class{constructor(t={}){Object.assign(this,t)}};Au([gu({type:Kp,context:0,implicit:!0})],yf.prototype,"subjectKeyIdentifier",void 0),Au([gu({type:of})],yf.prototype,"issuerAndSerialNumber",void 0),yf=Au([fu({type:Rl.Choice})],yf);class mf{constructor(t={}){this.version=Jd.v0,this.rid=new yf,this.keyEncryptionAlgorithm=new $d,this.encryptedKey=new Uh,Object.assign(this,t)}}Au([gu({type:kl.Integer})],mf.prototype,"version",void 0),Au([gu({type:yf})],mf.prototype,"rid",void 0),Au([gu({type:$d})],mf.prototype,"keyEncryptionAlgorithm",void 0),Au([gu({type:Uh})],mf.prototype,"encryptedKey",void 0);class wf{constructor(t={}){this.keyIdentifier=new Uh,Object.assign(this,t)}}Au([gu({type:Uh})],wf.prototype,"keyIdentifier",void 0),Au([gu({type:kl.GeneralizedTime,optional:!0})],wf.prototype,"date",void 0),Au([gu({type:af,optional:!0})],wf.prototype,"other",void 0);class bf{constructor(t={}){this.version=Jd.v4,this.kekid=new wf,this.keyEncryptionAlgorithm=new $d,this.encryptedKey=new Uh,Object.assign(this,t)}}Au([gu({type:kl.Integer})],bf.prototype,"version",void 0),Au([gu({type:wf})],bf.prototype,"kekid",void 0),Au([gu({type:$d})],bf.prototype,"keyEncryptionAlgorithm",void 0),Au([gu({type:Uh})],bf.prototype,"encryptedKey",void 0);class Af{constructor(t={}){this.version=Jd.v0,this.keyEncryptionAlgorithm=new $d,this.encryptedKey=new Uh,Object.assign(this,t)}}Au([gu({type:kl.Integer})],Af.prototype,"version",void 0),Au([gu({type:rf,context:0,optional:!0})],Af.prototype,"keyDerivationAlgorithm",void 0),Au([gu({type:$d})],Af.prototype,"keyEncryptionAlgorithm",void 0),Au([gu({type:Uh})],Af.prototype,"encryptedKey",void 0);class vf{constructor(t={}){this.oriType="",this.oriValue=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],vf.prototype,"oriType",void 0),Au([gu({type:kl.Any})],vf.prototype,"oriValue",void 0);let _f=class{constructor(t={}){Object.assign(this,t)}};var Ef;Au([gu({type:mf,optional:!0})],_f.prototype,"ktri",void 0),Au([gu({type:gf,context:1,implicit:!0,optional:!0})],_f.prototype,"kari",void 0),Au([gu({type:bf,context:2,implicit:!0,optional:!0})],_f.prototype,"kekri",void 0),Au([gu({type:Af,context:3,implicit:!0,optional:!0})],_f.prototype,"pwri",void 0),Au([gu({type:vf,context:4,implicit:!0,optional:!0})],_f.prototype,"ori",void 0),_f=Au([fu({type:Rl.Choice})],_f);let Sf=Ef=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,Ef.prototype)}};var Tf;Sf=Ef=Au([fu({type:Rl.Set,itemType:_f})],Sf);class xf{constructor(t={}){this.otherRevInfoFormat="",this.otherRevInfo=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],xf.prototype,"otherRevInfoFormat",void 0),Au([gu({type:kl.Any})],xf.prototype,"otherRevInfo",void 0);let Cf=class{constructor(t={}){this.other=new xf,Object.assign(this,t)}};Au([gu({type:xf,context:1,implicit:!0})],Cf.prototype,"other",void 0),Cf=Au([fu({type:Rl.Choice})],Cf);let If=Tf=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,Tf.prototype)}};If=Tf=Au([fu({type:Rl.Set,itemType:Cf})],If);class Rf{constructor(t={}){Object.assign(this,t)}}var kf;Au([gu({type:qd,context:0,implicit:!0,optional:!0})],Rf.prototype,"certs",void 0),Au([gu({type:If,context:1,implicit:!0,optional:!0})],Rf.prototype,"crls",void 0);let Nf=kf=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,kf.prototype)}};Nf=kf=Au([fu({type:Rl.Set,itemType:gd})],Nf);class Of{constructor(t={}){this.version=Jd.v0,this.recipientInfos=new Sf,this.encryptedContentInfo=new sf,Object.assign(this,t)}}Au([gu({type:kl.Integer})],Of.prototype,"version",void 0),Au([gu({type:Rf,context:0,implicit:!0,optional:!0})],Of.prototype,"originatorInfo",void 0),Au([gu({type:Sf})],Of.prototype,"recipientInfos",void 0),Au([gu({type:sf})],Of.prototype,"encryptedContentInfo",void 0),Au([gu({type:Nf,context:1,implicit:!0,optional:!0})],Of.prototype,"unprotectedAttrs",void 0);let Bf=class{constructor(t={}){Object.assign(this,t)}};var Pf;Au([gu({type:Kp,context:0,implicit:!0})],Bf.prototype,"subjectKeyIdentifier",void 0),Au([gu({type:of})],Bf.prototype,"issuerAndSerialNumber",void 0),Bf=Au([fu({type:Rl.Choice})],Bf);class Df{constructor(t={}){this.version=Jd.v0,this.sid=new Bf,this.digestAlgorithm=new Xd,this.signatureAlgorithm=new Zd,this.signature=new Uh,Object.assign(this,t)}}Au([gu({type:kl.Integer})],Df.prototype,"version",void 0),Au([gu({type:Bf})],Df.prototype,"sid",void 0),Au([gu({type:Xd})],Df.prototype,"digestAlgorithm",void 0),Au([gu({type:gd,repeated:"set",context:0,implicit:!0,optional:!0})],Df.prototype,"signedAttrs",void 0),Au([gu({type:Zd})],Df.prototype,"signatureAlgorithm",void 0),Au([gu({type:Uh})],Df.prototype,"signature",void 0),Au([gu({type:gd,repeated:"set",context:1,implicit:!0,optional:!0})],Df.prototype,"unsignedAttrs",void 0);let Lf=Pf=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,Pf.prototype)}};var Uf;Lf=Pf=Au([fu({type:Rl.Set,itemType:Df})],Lf);let Mf=Uf=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,Uf.prototype)}};Mf=Uf=Au([fu({type:Rl.Set,itemType:Xd})],Mf);class Ff{constructor(t={}){this.version=Jd.v0,this.digestAlgorithms=new Mf,this.encapContentInfo=new Yd,this.signerInfos=new Lf,Object.assign(this,t)}}Au([gu({type:kl.Integer})],Ff.prototype,"version",void 0),Au([gu({type:Mf})],Ff.prototype,"digestAlgorithms",void 0),Au([gu({type:Yd})],Ff.prototype,"encapContentInfo",void 0),Au([gu({type:qd,context:0,implicit:!0,optional:!0})],Ff.prototype,"certificates",void 0),Au([gu({type:Cf,context:1,implicit:!0,optional:!0})],Ff.prototype,"crls",void 0),Au([gu({type:Lf})],Ff.prototype,"signerInfos",void 0);const Hf="1.2.840.10045.2.1",jf="1.2.840.10045.4.1",Wf="1.2.840.10045.4.3.1",Vf="1.2.840.10045.4.3.2",Gf="1.2.840.10045.4.3.3",zf="1.2.840.10045.4.3.4",qf="1.2.840.10045.3.1.7",Qf="1.3.132.0.34",Kf="1.3.132.0.35";function Yf(t){return new ed({algorithm:t})}const Jf=Yf(jf),Xf=(Yf(Wf),Yf(Vf)),Zf=Yf(Gf),$f=Yf(zf);let tg=class{constructor(t={}){Object.assign(this,t)}};Au([gu({type:kl.ObjectIdentifier})],tg.prototype,"namedCurve",void 0),tg=Au([fu({type:Rl.Choice})],tg);class eg{constructor(t={}){this.version=1,this.privateKey=new Uh,Object.assign(this,t)}}Au([gu({type:kl.Integer})],eg.prototype,"version",void 0),Au([gu({type:Uh})],eg.prototype,"privateKey",void 0),Au([gu({type:tg,context:0,optional:!0})],eg.prototype,"parameters",void 0),Au([gu({type:kl.BitString,context:1,optional:!0})],eg.prototype,"publicKey",void 0);class rg{constructor(t={}){this.r=new ArrayBuffer(0),this.s=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:kl.Integer,converter:jh})],rg.prototype,"r",void 0),Au([gu({type:kl.Integer,converter:jh})],rg.prototype,"s",void 0);const ig="1.2.840.113549.1.1",ng=`${ig}.1`,sg=`${ig}.7`,og=`${ig}.9`,ag=`${ig}.10`,cg=`${ig}.2`,lg=`${ig}.4`,hg=`${ig}.5`,ug=`${ig}.14`,pg=`${ig}.11`,dg=`${ig}.12`,fg=`${ig}.13`,gg=`${ig}.15`,yg=`${ig}.16`,mg="1.3.14.3.2.26",wg="2.16.840.1.101.3.4.2.4",bg="2.16.840.1.101.3.4.2.1",Ag="2.16.840.1.101.3.4.2.2",vg="2.16.840.1.101.3.4.2.3",_g=`${ig}.8`;function Eg(t){return new ed({algorithm:t,parameters:null})}Eg("1.2.840.113549.2.2"),Eg("1.2.840.113549.2.5");const Sg=Eg(mg),Tg=(Eg(wg),Eg(bg),Eg(Ag),Eg(vg),Eg("2.16.840.1.101.3.4.2.5"),Eg("2.16.840.1.101.3.4.2.6"),new ed({algorithm:_g,parameters:bu.serialize(Sg)})),xg=new ed({algorithm:og,parameters:bu.serialize(zh.toASN(new Uint8Array([218,57,163,238,94,107,75,13,50,85,191,239,149,96,24,144,175,216,7,9]).buffer))});Eg(ng),Eg(cg),Eg(lg),Eg(hg),Eg(gg),Eg(yg),Eg(dg),Eg(fg),Eg(gg),Eg(yg);class Cg{constructor(t={}){this.hashAlgorithm=new ed(Sg),this.maskGenAlgorithm=new ed({algorithm:_g,parameters:bu.serialize(Sg)}),this.pSourceAlgorithm=new ed(xg),Object.assign(this,t)}}Au([gu({type:ed,context:0,defaultValue:Sg})],Cg.prototype,"hashAlgorithm",void 0),Au([gu({type:ed,context:1,defaultValue:Tg})],Cg.prototype,"maskGenAlgorithm",void 0),Au([gu({type:ed,context:2,defaultValue:xg})],Cg.prototype,"pSourceAlgorithm",void 0),new ed({algorithm:sg,parameters:bu.serialize(new Cg)});class Ig{constructor(t={}){this.hashAlgorithm=new ed(Sg),this.maskGenAlgorithm=new ed({algorithm:_g,parameters:bu.serialize(Sg)}),this.saltLength=20,this.trailerField=1,Object.assign(this,t)}}Au([gu({type:ed,context:0,defaultValue:Sg})],Ig.prototype,"hashAlgorithm",void 0),Au([gu({type:ed,context:1,defaultValue:Tg})],Ig.prototype,"maskGenAlgorithm",void 0),Au([gu({type:kl.Integer,context:2,defaultValue:20})],Ig.prototype,"saltLength",void 0),Au([gu({type:kl.Integer,context:3,defaultValue:1})],Ig.prototype,"trailerField",void 0),new ed({algorithm:ag,parameters:bu.serialize(new Ig)});class Rg{constructor(t={}){this.digestAlgorithm=new ed,this.digest=new Uh,Object.assign(this,t)}}var kg;Au([gu({type:ed})],Rg.prototype,"digestAlgorithm",void 0),Au([gu({type:Uh})],Rg.prototype,"digest",void 0);class Ng{constructor(t={}){this.prime=new ArrayBuffer(0),this.exponent=new ArrayBuffer(0),this.coefficient=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:kl.Integer,converter:jh})],Ng.prototype,"prime",void 0),Au([gu({type:kl.Integer,converter:jh})],Ng.prototype,"exponent",void 0),Au([gu({type:kl.Integer,converter:jh})],Ng.prototype,"coefficient",void 0);let Og=kg=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,kg.prototype)}};Og=kg=Au([fu({type:Rl.Sequence,itemType:Ng})],Og);class Bg{constructor(t={}){this.version=0,this.modulus=new ArrayBuffer(0),this.publicExponent=new ArrayBuffer(0),this.privateExponent=new ArrayBuffer(0),this.prime1=new ArrayBuffer(0),this.prime2=new ArrayBuffer(0),this.exponent1=new ArrayBuffer(0),this.exponent2=new ArrayBuffer(0),this.coefficient=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:kl.Integer})],Bg.prototype,"version",void 0),Au([gu({type:kl.Integer,converter:jh})],Bg.prototype,"modulus",void 0),Au([gu({type:kl.Integer,converter:jh})],Bg.prototype,"publicExponent",void 0),Au([gu({type:kl.Integer,converter:jh})],Bg.prototype,"privateExponent",void 0),Au([gu({type:kl.Integer,converter:jh})],Bg.prototype,"prime1",void 0),Au([gu({type:kl.Integer,converter:jh})],Bg.prototype,"prime2",void 0),Au([gu({type:kl.Integer,converter:jh})],Bg.prototype,"exponent1",void 0),Au([gu({type:kl.Integer,converter:jh})],Bg.prototype,"exponent2",void 0),Au([gu({type:kl.Integer,converter:jh})],Bg.prototype,"coefficient",void 0),Au([gu({type:Og,optional:!0})],Bg.prototype,"otherPrimeInfos",void 0);class Pg{constructor(t={}){this.modulus=new ArrayBuffer(0),this.publicExponent=new ArrayBuffer(0),Object.assign(this,t)}}function Dg(t,e,r,i){var n,s=arguments.length,o=s<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,r,i);else for(var a=t.length-1;a>=0;a--)(n=t[a])&&(o=(s<3?n(o):s>3?n(e,r,o):n(e,r))||o);return s>3&&o&&Object.defineProperty(e,r,o),o}var Lg;Au([gu({type:kl.Integer,converter:jh})],Pg.prototype,"modulus",void 0),Au([gu({type:kl.Integer,converter:jh})],Pg.prototype,"publicExponent",void 0),Object.create,Object.create,function(t){t[t.Transient=0]="Transient",t[t.Singleton=1]="Singleton",t[t.ResolutionScoped=2]="ResolutionScoped",t[t.ContainerScoped=3]="ContainerScoped"}(Lg||(Lg={}));const Ug=Lg;
80
+ function Cc(){if("undefined"==typeof BigInt)throw new Error("BigInt is not defined. Your environment doesn't implement BigInt.")}function Ic(t){let e=0,r=0;for(let r=0;r<t.length;r++)e+=t[r].byteLength;const i=new Uint8Array(e);for(let e=0;e<t.length;e++){const n=t[e];i.set(new Uint8Array(n),r),r+=n.byteLength}return i.buffer}function Rc(t,e,r,i){return e instanceof Uint8Array?e.byteLength?r<0?(t.error="Wrong parameter: inputOffset less than zero",!1):i<0?(t.error="Wrong parameter: inputLength less than zero",!1):!(e.byteLength-r-i<0&&(t.error="End of input reached before message was fully decoded (inconsistent offset and length values)",1)):(t.error="Wrong parameter: inputBuffer has zero length",!1):(t.error="Wrong parameter: inputBuffer must be 'Uint8Array'",!1)}Math.log(2);class kc{constructor(){this.items=[]}write(t){this.items.push(t)}final(){return Ic(this.items)}}const Nc=[new Uint8Array([1])],Oc="0123456789",Bc="name",Pc="valueHexView",Dc="",Lc=new ArrayBuffer(0),Uc=new Uint8Array(0),Mc="EndOfContent",Fc="OCTET STRING",Hc="BIT STRING";function jc(t){var e;return(e=class extends t{constructor(...t){var e;super(...t);const r=t[0]||{};this.isHexOnly=null!==(e=r.isHexOnly)&&void 0!==e&&e,this.valueHexView=r.valueHex?vc.vJ.toUint8Array(r.valueHex):Uc}get valueHex(){return this.valueHexView.slice().buffer}set valueHex(t){this.valueHexView=new Uint8Array(t)}fromBER(t,e,r){const i=t instanceof ArrayBuffer?new Uint8Array(t):t;if(!Rc(this,i,e,r))return-1;const n=e+r;return this.valueHexView=i.subarray(e,n),this.valueHexView.length?(this.blockLength=r,n):(this.warnings.push("Zero buffer length"),e)}toBER(t=!1){return this.isHexOnly?t?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.byteLength===this.valueHexView.buffer.byteLength?this.valueHexView.buffer:this.valueHexView.slice().buffer:(this.error="Flag 'isHexOnly' is not set, abort",Lc)}toJSON(){return{...super.toJSON(),isHexOnly:this.isHexOnly,valueHex:vc.ep.ToHex(this.valueHexView)}}}).NAME="hexBlock",e}class Wc{constructor({blockLength:t=0,error:e="",warnings:r=[],valueBeforeDecode:i=Uc}={}){this.blockLength=t,this.error=e,this.warnings=r,this.valueBeforeDecodeView=vc.vJ.toUint8Array(i)}static blockName(){return this.NAME}get valueBeforeDecode(){return this.valueBeforeDecodeView.slice().buffer}set valueBeforeDecode(t){this.valueBeforeDecodeView=new Uint8Array(t)}toJSON(){return{blockName:this.constructor.NAME,blockLength:this.blockLength,error:this.error,warnings:this.warnings,valueBeforeDecode:vc.ep.ToHex(this.valueBeforeDecodeView)}}}Wc.NAME="baseBlock";class Vc extends Wc{fromBER(t,e,r){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}toBER(t,e){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}}Vc.NAME="valueBlock";class Gc extends(jc(Wc)){constructor({idBlock:t={}}={}){var e,r,i,n;super(),t?(this.isHexOnly=null!==(e=t.isHexOnly)&&void 0!==e&&e,this.valueHexView=t.valueHex?vc.vJ.toUint8Array(t.valueHex):Uc,this.tagClass=null!==(r=t.tagClass)&&void 0!==r?r:-1,this.tagNumber=null!==(i=t.tagNumber)&&void 0!==i?i:-1,this.isConstructed=null!==(n=t.isConstructed)&&void 0!==n&&n):(this.tagClass=-1,this.tagNumber=-1,this.isConstructed=!1)}toBER(t=!1){let e=0;switch(this.tagClass){case 1:e|=0;break;case 2:e|=64;break;case 3:e|=128;break;case 4:e|=192;break;default:return this.error="Unknown tag class",Lc}if(this.isConstructed&&(e|=32),this.tagNumber<31&&!this.isHexOnly){const r=new Uint8Array(1);if(!t){let t=this.tagNumber;t&=31,e|=t,r[0]=e}return r.buffer}if(!this.isHexOnly){const r=Ec(this.tagNumber,7),i=new Uint8Array(r),n=r.byteLength,s=new Uint8Array(n+1);if(s[0]=31|e,!t){for(let t=0;t<n-1;t++)s[t+1]=128|i[t];s[n]=i[n-1]}return s.buffer}const r=new Uint8Array(this.valueHexView.byteLength+1);if(r[0]=31|e,!t){const t=this.valueHexView;for(let e=0;e<t.length-1;e++)r[e+1]=128|t[e];r[this.valueHexView.byteLength]=t[t.length-1]}return r.buffer}fromBER(t,e,r){const i=vc.vJ.toUint8Array(t);if(!Rc(this,i,e,r))return-1;const n=i.subarray(e,e+r);if(0===n.length)return this.error="Zero buffer length",-1;switch(192&n[0]){case 0:this.tagClass=1;break;case 64:this.tagClass=2;break;case 128:this.tagClass=3;break;case 192:this.tagClass=4;break;default:return this.error="Unknown tag class",-1}this.isConstructed=!(32&~n[0]),this.isHexOnly=!1;const s=31&n[0];if(31!==s)this.tagNumber=s,this.blockLength=1;else{let t=1,e=this.valueHexView=new Uint8Array(255),r=255;for(;128&n[t];){if(e[t-1]=127&n[t],t++,t>=n.length)return this.error="End of input reached before message was fully decoded",-1;if(t===r){r+=255;const t=new Uint8Array(r);for(let r=0;r<e.length;r++)t[r]=e[r];e=this.valueHexView=new Uint8Array(r)}}this.blockLength=t+1,e[t-1]=127&n[t];const i=new Uint8Array(t);for(let r=0;r<t;r++)i[r]=e[r];e=this.valueHexView=new Uint8Array(t),e.set(i),this.blockLength<=9?this.tagNumber=_c(e,7):(this.isHexOnly=!0,this.warnings.push("Tag too long, represented as hex-coded"))}if(1===this.tagClass&&this.isConstructed)switch(this.tagNumber){case 1:case 2:case 5:case 6:case 9:case 13:case 14:case 23:case 24:case 31:case 32:case 33:case 34:return this.error="Constructed encoding used for primitive type",-1}return e+this.blockLength}toJSON(){return{...super.toJSON(),tagClass:this.tagClass,tagNumber:this.tagNumber,isConstructed:this.isConstructed}}}Gc.NAME="identificationBlock";class zc extends Wc{constructor({lenBlock:t={}}={}){var e,r,i;super(),this.isIndefiniteForm=null!==(e=t.isIndefiniteForm)&&void 0!==e&&e,this.longFormUsed=null!==(r=t.longFormUsed)&&void 0!==r&&r,this.length=null!==(i=t.length)&&void 0!==i?i:0}fromBER(t,e,r){const i=vc.vJ.toUint8Array(t);if(!Rc(this,i,e,r))return-1;const n=i.subarray(e,e+r);if(0===n.length)return this.error="Zero buffer length",-1;if(255===n[0])return this.error="Length block 0xFF is reserved by standard",-1;if(this.isIndefiniteForm=128===n[0],this.isIndefiniteForm)return this.blockLength=1,e+this.blockLength;if(this.longFormUsed=!!(128&n[0]),!1===this.longFormUsed)return this.length=n[0],this.blockLength=1,e+this.blockLength;const s=127&n[0];if(s>8)return this.error="Too big integer",-1;if(s+1>n.length)return this.error="End of input reached before message was fully decoded",-1;const o=e+1,a=i.subarray(o,o+s);return 0===a[s-1]&&this.warnings.push("Needlessly long encoded length"),this.length=_c(a,8),this.longFormUsed&&this.length<=127&&this.warnings.push("Unnecessary usage of long length form"),this.blockLength=s+1,e+this.blockLength}toBER(t=!1){let e,r;if(this.length>127&&(this.longFormUsed=!0),this.isIndefiniteForm)return e=new ArrayBuffer(1),!1===t&&(r=new Uint8Array(e),r[0]=128),e;if(this.longFormUsed){const i=Ec(this.length,8);if(i.byteLength>127)return this.error="Too big length",Lc;if(e=new ArrayBuffer(i.byteLength+1),t)return e;const n=new Uint8Array(i);r=new Uint8Array(e),r[0]=128|i.byteLength;for(let t=0;t<i.byteLength;t++)r[t+1]=n[t];return e}return e=new ArrayBuffer(1),!1===t&&(r=new Uint8Array(e),r[0]=this.length),e}toJSON(){return{...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,longFormUsed:this.longFormUsed,length:this.length}}}zc.NAME="lengthBlock";const qc={};class Qc extends Wc{constructor({name:t="",optional:e=!1,primitiveSchema:r,...i}={},n){super(i),this.name=t,this.optional=e,r&&(this.primitiveSchema=r),this.idBlock=new Gc(i),this.lenBlock=new zc(i),this.valueBlock=n?new n(i):new Vc(i)}fromBER(t,e,r){const i=this.valueBlock.fromBER(t,e,this.lenBlock.isIndefiniteForm?r:this.lenBlock.length);return-1===i?(this.error=this.valueBlock.error,i):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),i)}toBER(t,e){const r=e||new kc;e||Kc(this);const i=this.idBlock.toBER(t);if(r.write(i),this.lenBlock.isIndefiniteForm)r.write(new Uint8Array([128]).buffer),this.valueBlock.toBER(t,r),r.write(new ArrayBuffer(2));else{const e=this.valueBlock.toBER(t);this.lenBlock.length=e.byteLength;const i=this.lenBlock.toBER(t);r.write(i),r.write(e)}return e?Lc:r.final()}toJSON(){const t={...super.toJSON(),idBlock:this.idBlock.toJSON(),lenBlock:this.lenBlock.toJSON(),valueBlock:this.valueBlock.toJSON(),name:this.name,optional:this.optional};return this.primitiveSchema&&(t.primitiveSchema=this.primitiveSchema.toJSON()),t}toString(t="ascii"){return"ascii"===t?this.onAsciiEncoding():vc.ep.ToHex(this.toBER())}onAsciiEncoding(){return`${this.constructor.NAME} : ${vc.ep.ToHex(this.valueBlock.valueBeforeDecodeView)}`}isEqual(t){return this===t||t instanceof this.constructor&&function(t,e){if(t.byteLength!==e.byteLength)return!1;const r=new Uint8Array(t),i=new Uint8Array(e);for(let t=0;t<r.length;t++)if(r[t]!==i[t])return!1;return!0}(this.toBER(),t.toBER())}}function Kc(t){if(t instanceof qc.Constructed)for(const e of t.valueBlock.value)Kc(e)&&(t.lenBlock.isIndefiniteForm=!0);return!!t.lenBlock.isIndefiniteForm}Qc.NAME="BaseBlock";class Yc extends Qc{constructor({value:t="",...e}={},r){super(e,r),t&&this.fromString(t)}getValue(){return this.valueBlock.value}setValue(t){this.valueBlock.value=t}fromBER(t,e,r){const i=this.valueBlock.fromBER(t,e,this.lenBlock.isIndefiniteForm?r:this.lenBlock.length);return-1===i?(this.error=this.valueBlock.error,i):(this.fromBuffer(this.valueBlock.valueHexView),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),i)}onAsciiEncoding(){return`${this.constructor.NAME} : '${this.valueBlock.value}'`}}Yc.NAME="BaseStringBlock";class Jc extends(jc(Vc)){constructor({isHexOnly:t=!0,...e}={}){super(e),this.isHexOnly=t}}var Xc,Zc,$c,tl,el,rl,il,nl,sl,ol,al,cl,ll,hl,ul,pl,dl,fl,gl,yl,ml,wl,bl,Al,vl,_l,El,Sl,Tl,xl,Cl,Il,Rl,kl,Nl;Jc.NAME="PrimitiveValueBlock";class Ol extends Qc{constructor(t={}){super(t,Jc),this.idBlock.isConstructed=!1}}function Bl(t,e=0,r=t.length){const i=e;let n=new Qc({},Vc);const s=new Wc;if(!Rc(s,t,e,r))return n.error=s.error,{offset:-1,result:n};if(!t.subarray(e,e+r).length)return n.error="Zero buffer length",{offset:-1,result:n};let o=n.idBlock.fromBER(t,e,r);if(n.idBlock.warnings.length&&n.warnings.concat(n.idBlock.warnings),-1===o)return n.error=n.idBlock.error,{offset:-1,result:n};if(e=o,r-=n.idBlock.blockLength,o=n.lenBlock.fromBER(t,e,r),n.lenBlock.warnings.length&&n.warnings.concat(n.lenBlock.warnings),-1===o)return n.error=n.lenBlock.error,{offset:-1,result:n};if(e=o,r-=n.lenBlock.blockLength,!n.idBlock.isConstructed&&n.lenBlock.isIndefiniteForm)return n.error="Indefinite length form used for primitive encoding form",{offset:-1,result:n};let a=Qc;if(1===n.idBlock.tagClass){if(n.idBlock.tagNumber>=37&&!1===n.idBlock.isHexOnly)return n.error="UNIVERSAL 37 and upper tags are reserved by ASN.1 standard",{offset:-1,result:n};switch(n.idBlock.tagNumber){case 0:if(n.idBlock.isConstructed&&n.lenBlock.length>0)return n.error="Type [UNIVERSAL 0] is reserved",{offset:-1,result:n};a=qc.EndOfContent;break;case 1:a=qc.Boolean;break;case 2:a=qc.Integer;break;case 3:a=qc.BitString;break;case 4:a=qc.OctetString;break;case 5:a=qc.Null;break;case 6:a=qc.ObjectIdentifier;break;case 10:a=qc.Enumerated;break;case 12:a=qc.Utf8String;break;case 13:a=qc.RelativeObjectIdentifier;break;case 14:a=qc.TIME;break;case 15:return n.error="[UNIVERSAL 15] is reserved by ASN.1 standard",{offset:-1,result:n};case 16:a=qc.Sequence;break;case 17:a=qc.Set;break;case 18:a=qc.NumericString;break;case 19:a=qc.PrintableString;break;case 20:a=qc.TeletexString;break;case 21:a=qc.VideotexString;break;case 22:a=qc.IA5String;break;case 23:a=qc.UTCTime;break;case 24:a=qc.GeneralizedTime;break;case 25:a=qc.GraphicString;break;case 26:a=qc.VisibleString;break;case 27:a=qc.GeneralString;break;case 28:a=qc.UniversalString;break;case 29:a=qc.CharacterString;break;case 30:a=qc.BmpString;break;case 31:a=qc.DATE;break;case 32:a=qc.TimeOfDay;break;case 33:a=qc.DateTime;break;case 34:a=qc.Duration;break;default:{const t=n.idBlock.isConstructed?new qc.Constructed:new qc.Primitive;t.idBlock=n.idBlock,t.lenBlock=n.lenBlock,t.warnings=n.warnings,n=t}}}else a=n.idBlock.isConstructed?qc.Constructed:qc.Primitive;return n=function(t,e){if(t instanceof e)return t;const r=new e;return r.idBlock=t.idBlock,r.lenBlock=t.lenBlock,r.warnings=t.warnings,r.valueBeforeDecodeView=t.valueBeforeDecodeView,r}(n,a),o=n.fromBER(t,e,n.lenBlock.isIndefiniteForm?r:n.lenBlock.length),n.valueBeforeDecodeView=t.subarray(i,i+n.blockLength),{offset:o,result:n}}function Pl(t){if(!t.byteLength){const t=new Qc({},Vc);return t.error="Input buffer has zero length",{offset:-1,result:t}}return Bl(vc.vJ.toUint8Array(t).slice(),0,t.byteLength)}Xc=Ol,qc.Primitive=Xc,Ol.NAME="PRIMITIVE";class Dl extends Vc{constructor({value:t=[],isIndefiniteForm:e=!1,...r}={}){super(r),this.value=t,this.isIndefiniteForm=e}fromBER(t,e,r){const i=vc.vJ.toUint8Array(t);if(!Rc(this,i,e,r))return-1;if(this.valueBeforeDecodeView=i.subarray(e,e+r),0===this.valueBeforeDecodeView.length)return this.warnings.push("Zero buffer length"),e;let n=e;for(;(this.isIndefiniteForm?1:r)>0;){const t=Bl(i,n,r);if(-1===t.offset)return this.error=t.result.error,this.warnings.concat(t.result.warnings),-1;if(n=t.offset,this.blockLength+=t.result.blockLength,r-=t.result.blockLength,this.value.push(t.result),this.isIndefiniteForm&&t.result.constructor.NAME===Mc)break}return this.isIndefiniteForm&&(this.value[this.value.length-1].constructor.NAME===Mc?this.value.pop():this.warnings.push("No EndOfContent block encoded")),n}toBER(t,e){const r=e||new kc;for(let e=0;e<this.value.length;e++)this.value[e].toBER(t,r);return e?Lc:r.final()}toJSON(){const t={...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,value:[]};for(const e of this.value)t.value.push(e.toJSON());return t}}Dl.NAME="ConstructedValueBlock";class Ll extends Qc{constructor(t={}){super(t,Dl),this.idBlock.isConstructed=!0}fromBER(t,e,r){this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm;const i=this.valueBlock.fromBER(t,e,this.lenBlock.isIndefiniteForm?r:this.lenBlock.length);return-1===i?(this.error=this.valueBlock.error,i):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),i)}onAsciiEncoding(){const t=[];for(const e of this.valueBlock.value)t.push(e.toString("ascii").split("\n").map((t=>` ${t}`)).join("\n"));const e=3===this.idBlock.tagClass?`[${this.idBlock.tagNumber}]`:this.constructor.NAME;return t.length?`${e} :\n${t.join("\n")}`:`${e} :`}}Zc=Ll,qc.Constructed=Zc,Ll.NAME="CONSTRUCTED";class Ul extends Vc{fromBER(t,e,r){return e}toBER(t){return Lc}}Ul.override="EndOfContentValueBlock";class Ml extends Qc{constructor(t={}){super(t,Ul),this.idBlock.tagClass=1,this.idBlock.tagNumber=0}}$c=Ml,qc.EndOfContent=$c,Ml.NAME=Mc;class Fl extends Qc{constructor(t={}){super(t,Vc),this.idBlock.tagClass=1,this.idBlock.tagNumber=5}fromBER(t,e,r){return this.lenBlock.length>0&&this.warnings.push("Non-zero length of value block for Null type"),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.blockLength+=r,e+r>t.byteLength?(this.error="End of input reached before message was fully decoded (inconsistent offset and length values)",-1):e+r}toBER(t,e){const r=new ArrayBuffer(2);if(!t){const t=new Uint8Array(r);t[0]=5,t[1]=0}return e&&e.write(r),r}onAsciiEncoding(){return`${this.constructor.NAME}`}}tl=Fl,qc.Null=tl,Fl.NAME="NULL";class Hl extends(jc(Vc)){constructor({value:t,...e}={}){super(e),e.valueHex?this.valueHexView=vc.vJ.toUint8Array(e.valueHex):this.valueHexView=new Uint8Array(1),t&&(this.value=t)}get value(){for(const t of this.valueHexView)if(t>0)return!0;return!1}set value(t){this.valueHexView[0]=t?255:0}fromBER(t,e,r){const i=vc.vJ.toUint8Array(t);return Rc(this,i,e,r)?(this.valueHexView=i.subarray(e,e+r),r>1&&this.warnings.push("Boolean value encoded in more then 1 octet"),this.isHexOnly=!0,Tc.call(this),this.blockLength=r,e+r):-1}toBER(){return this.valueHexView.slice()}toJSON(){return{...super.toJSON(),value:this.value}}}Hl.NAME="BooleanValueBlock";class jl extends Qc{constructor(t={}){super(t,Hl),this.idBlock.tagClass=1,this.idBlock.tagNumber=1}getValue(){return this.valueBlock.value}setValue(t){this.valueBlock.value=t}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.getValue}`}}el=jl,qc.Boolean=el,jl.NAME="BOOLEAN";class Wl extends(jc(Dl)){constructor({isConstructed:t=!1,...e}={}){super(e),this.isConstructed=t}fromBER(t,e,r){let i=0;if(this.isConstructed){if(this.isHexOnly=!1,i=Dl.prototype.fromBER.call(this,t,e,r),-1===i)return i;for(let t=0;t<this.value.length;t++){const e=this.value[t].constructor.NAME;if(e===Mc){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, OCTET STRING may consists of OCTET STRINGs only",-1}if(e!==Fc)return this.error="OCTET STRING may consists of OCTET STRINGs only",-1}}else this.isHexOnly=!0,i=super.fromBER(t,e,r),this.blockLength=r;return i}toBER(t,e){return this.isConstructed?Dl.prototype.toBER.call(this,t,e):t?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),isConstructed:this.isConstructed}}}Wl.NAME="OctetStringValueBlock";class Vl extends Qc{constructor({idBlock:t={},lenBlock:e={},...r}={}){var i,n;null!==(i=r.isConstructed)&&void 0!==i||(r.isConstructed=!!(null===(n=r.value)||void 0===n?void 0:n.length)),super({idBlock:{isConstructed:r.isConstructed,...t},lenBlock:{...e,isIndefiniteForm:!!r.isIndefiniteForm},...r},Wl),this.idBlock.tagClass=1,this.idBlock.tagNumber=4}fromBER(t,e,r){if(this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,0===r)return 0===this.idBlock.error.length&&(this.blockLength+=this.idBlock.blockLength),0===this.lenBlock.error.length&&(this.blockLength+=this.lenBlock.blockLength),e;if(!this.valueBlock.isConstructed){const i=(t instanceof ArrayBuffer?new Uint8Array(t):t).subarray(e,e+r);try{if(i.byteLength){const t=Bl(i,0,i.byteLength);-1!==t.offset&&t.offset===r&&(this.valueBlock.value=[t.result])}}catch(t){}}return super.fromBER(t,e,r)}onAsciiEncoding(){return this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length?Ll.prototype.onAsciiEncoding.call(this):`${this.constructor.NAME} : ${vc.ep.ToHex(this.valueBlock.valueHexView)}`}getValue(){if(!this.idBlock.isConstructed)return this.valueBlock.valueHexView.slice().buffer;const t=[];for(const e of this.valueBlock.value)e instanceof Vl&&t.push(e.valueBlock.valueHexView);return vc.vJ.concat(t)}}rl=Vl,qc.OctetString=rl,Vl.NAME=Fc;class Gl extends(jc(Dl)){constructor({unusedBits:t=0,isConstructed:e=!1,...r}={}){super(r),this.unusedBits=t,this.isConstructed=e,this.blockLength=this.valueHexView.byteLength}fromBER(t,e,r){if(!r)return e;let i=-1;if(this.isConstructed){if(i=Dl.prototype.fromBER.call(this,t,e,r),-1===i)return i;for(const t of this.value){const e=t.constructor.NAME;if(e===Mc){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, BIT STRING may consists of BIT STRINGs only",-1}if(e!==Hc)return this.error="BIT STRING may consists of BIT STRINGs only",-1;const r=t.valueBlock;if(this.unusedBits>0&&r.unusedBits>0)return this.error='Using of "unused bits" inside constructive BIT STRING allowed for least one only',-1;this.unusedBits=r.unusedBits}return i}const n=vc.vJ.toUint8Array(t);if(!Rc(this,n,e,r))return-1;const s=n.subarray(e,e+r);if(this.unusedBits=s[0],this.unusedBits>7)return this.error="Unused bits for BitString must be in range 0-7",-1;if(!this.unusedBits){const e=s.subarray(1);try{if(e.byteLength){const t=Bl(e,0,e.byteLength);-1!==t.offset&&t.offset===r-1&&(this.value=[t.result])}}catch(t){}}return this.valueHexView=s.subarray(1),this.blockLength=s.length,e+r}toBER(t,e){if(this.isConstructed)return Dl.prototype.toBER.call(this,t,e);if(t)return new ArrayBuffer(this.valueHexView.byteLength+1);if(!this.valueHexView.byteLength)return Lc;const r=new Uint8Array(this.valueHexView.length+1);return r[0]=this.unusedBits,r.set(this.valueHexView,1),r.buffer}toJSON(){return{...super.toJSON(),unusedBits:this.unusedBits,isConstructed:this.isConstructed}}}Gl.NAME="BitStringValueBlock";class zl extends Qc{constructor({idBlock:t={},lenBlock:e={},...r}={}){var i,n;null!==(i=r.isConstructed)&&void 0!==i||(r.isConstructed=!!(null===(n=r.value)||void 0===n?void 0:n.length)),super({idBlock:{isConstructed:r.isConstructed,...t},lenBlock:{...e,isIndefiniteForm:!!r.isIndefiniteForm},...r},Gl),this.idBlock.tagClass=1,this.idBlock.tagNumber=3}fromBER(t,e,r){return this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,super.fromBER(t,e,r)}onAsciiEncoding(){if(this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length)return Ll.prototype.onAsciiEncoding.call(this);{const t=[],e=this.valueBlock.valueHexView;for(const r of e)t.push(r.toString(2).padStart(8,"0"));const r=t.join("");return`${this.constructor.NAME} : ${r.substring(0,r.length-this.valueBlock.unusedBits)}`}}}function ql(t,e){const r=new Uint8Array([0]),i=new Uint8Array(t),n=new Uint8Array(e);let s=i.slice(0);const o=s.length-1,a=n.slice(0),c=a.length-1;let l=0,h=0;for(let t=c<o?o:c;t>=0;t--,h++)l=1==h<a.length?s[o-h]+a[c-h]+r[0]:s[o-h]+r[0],r[0]=l/10,1==h>=s.length?s=Sc(new Uint8Array([l%10]),s):s[o-h]=l%10;return r[0]>0&&(s=Sc(r,s)),s}function Ql(t){if(t>=Nc.length)for(let e=Nc.length;e<=t;e++){const t=new Uint8Array([0]);let r=Nc[e-1].slice(0);for(let e=r.length-1;e>=0;e--){const i=new Uint8Array([(r[e]<<1)+t[0]]);t[0]=i[0]/10,r[e]=i[0]%10}t[0]>0&&(r=Sc(t,r)),Nc.push(r)}return Nc[t]}function Kl(t,e){let r=0;const i=new Uint8Array(t),n=new Uint8Array(e),s=i.slice(0),o=s.length-1,a=n.slice(0),c=a.length-1;let l,h=0;for(let t=c;t>=0;t--,h++)l=s[o-h]-a[c-h]-r,1==l<0?(r=1,s[o-h]=l+10):(r=0,s[o-h]=l);if(r>0)for(let t=o-c+1;t>=0;t--,h++){if(l=s[o-h]-r,!(l<0)){r=0,s[o-h]=l;break}r=1,s[o-h]=l+10}return s.slice()}il=zl,qc.BitString=il,zl.NAME=Hc;class Yl extends(jc(Vc)){constructor({value:t,...e}={}){super(e),this._valueDec=0,e.valueHex&&this.setValueHex(),void 0!==t&&(this.valueDec=t)}setValueHex(){this.valueHexView.length>=4?(this.warnings.push("Too big Integer for decoding, hex only"),this.isHexOnly=!0,this._valueDec=0):(this.isHexOnly=!1,this.valueHexView.length>0&&(this._valueDec=Tc.call(this)))}set valueDec(t){this._valueDec=t,this.isHexOnly=!1,this.valueHexView=new Uint8Array(function(t){const e=t<0?-1*t:t;let r=128;for(let i=1;i<8;i++){if(e<=r){if(t<0){const t=Ec(r-e,8,i);return new Uint8Array(t)[0]|=128,t}let n=Ec(e,8,i),s=new Uint8Array(n);if(128&s[0]){const t=n.slice(0),e=new Uint8Array(t);n=new ArrayBuffer(n.byteLength+1),s=new Uint8Array(n);for(let r=0;r<t.byteLength;r++)s[r+1]=e[r];s[0]=0}return n}r*=Math.pow(2,8)}return new ArrayBuffer(0)}(t))}get valueDec(){return this._valueDec}fromDER(t,e,r,i=0){const n=this.fromBER(t,e,r);if(-1===n)return n;const s=this.valueHexView;return 0===s[0]&&128&s[1]?this.valueHexView=s.subarray(1):0!==i&&s.length<i&&(i-s.length>1&&(i=s.length+1),this.valueHexView=s.subarray(i-s.length)),n}toDER(t=!1){const e=this.valueHexView;switch(!0){case!!(128&e[0]):{const t=new Uint8Array(this.valueHexView.length+1);t[0]=0,t.set(e,1),this.valueHexView=t}break;case 0===e[0]&&!(128&e[1]):this.valueHexView=this.valueHexView.subarray(1)}return this.toBER(t)}fromBER(t,e,r){const i=super.fromBER(t,e,r);return-1===i||this.setValueHex(),i}toBER(t){return t?new ArrayBuffer(this.valueHexView.length):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}toString(){const t=8*this.valueHexView.length-1;let e,r=new Uint8Array(8*this.valueHexView.length/3),i=0;const n=this.valueHexView;let s="",o=!1;for(let o=n.byteLength-1;o>=0;o--){e=n[o];for(let n=0;n<8;n++)1&~e||(i===t?(r=Kl(Ql(i),r),s="-"):r=ql(r,Ql(i))),i++,e>>=1}for(let t=0;t<r.length;t++)r[t]&&(o=!0),o&&(s+=Oc.charAt(r[t]));return!1===o&&(s+=Oc.charAt(0)),s}}nl=Yl,Yl.NAME="IntegerValueBlock",Object.defineProperty(nl.prototype,"valueHex",{set:function(t){this.valueHexView=new Uint8Array(t),this.setValueHex()},get:function(){return this.valueHexView.slice().buffer}});class Jl extends Qc{constructor(t={}){super(t,Yl),this.idBlock.tagClass=1,this.idBlock.tagNumber=2}toBigInt(){return Cc(),BigInt(this.valueBlock.toString())}static fromBigInt(t){Cc();const e=BigInt(t),r=new kc,i=e.toString(16).replace(/^-/,""),n=new Uint8Array(vc.ep.FromHex(i));if(e<0){const t=new Uint8Array(n.length+(128&n[0]?1:0));t[0]|=128;const i=BigInt(`0x${vc.ep.ToHex(t)}`)+e,s=vc.vJ.toUint8Array(vc.ep.FromHex(i.toString(16)));s[0]|=128,r.write(s)}else 128&n[0]&&r.write(new Uint8Array([0])),r.write(n);return new Jl({valueHex:r.final()})}convertToDER(){const t=new Jl({valueHex:this.valueBlock.valueHexView});return t.valueBlock.toDER(),t}convertFromDER(){return new Jl({valueHex:0===this.valueBlock.valueHexView[0]?this.valueBlock.valueHexView.subarray(1):this.valueBlock.valueHexView})}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()}`}}sl=Jl,qc.Integer=sl,Jl.NAME="INTEGER";class Xl extends Jl{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=10}}ol=Xl,qc.Enumerated=ol,Xl.NAME="ENUMERATED";class Zl extends(jc(Vc)){constructor({valueDec:t=-1,isFirstSid:e=!1,...r}={}){super(r),this.valueDec=t,this.isFirstSid=e}fromBER(t,e,r){if(!r)return e;const i=vc.vJ.toUint8Array(t);if(!Rc(this,i,e,r))return-1;const n=i.subarray(e,e+r);this.valueHexView=new Uint8Array(r);for(let t=0;t<r&&(this.valueHexView[t]=127&n[t],this.blockLength++,128&n[t]);t++);const s=new Uint8Array(this.blockLength);for(let t=0;t<this.blockLength;t++)s[t]=this.valueHexView[t];return this.valueHexView=s,128&n[this.blockLength-1]?(this.error="End of input reached before message was fully decoded",-1):(0===this.valueHexView[0]&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=_c(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),e+this.blockLength)}set valueBigInt(t){Cc();let e=BigInt(t).toString(2);for(;e.length%7;)e="0"+e;const r=new Uint8Array(e.length/7);for(let t=0;t<r.length;t++)r[t]=parseInt(e.slice(7*t,7*t+7),2)+(t+1<r.length?128:0);this.fromBER(r.buffer,0,r.length)}toBER(t){if(this.isHexOnly){if(t)return new ArrayBuffer(this.valueHexView.byteLength);const e=this.valueHexView,r=new Uint8Array(this.blockLength);for(let t=0;t<this.blockLength-1;t++)r[t]=128|e[t];return r[this.blockLength-1]=e[this.blockLength-1],r.buffer}const e=Ec(this.valueDec,7);if(0===e.byteLength)return this.error="Error during encoding SID value",Lc;const r=new Uint8Array(e.byteLength);if(!t){const t=new Uint8Array(e),i=e.byteLength-1;for(let e=0;e<i;e++)r[e]=128|t[e];r[i]=t[i]}return r}toString(){let t="";if(this.isHexOnly)t=vc.ep.ToHex(this.valueHexView);else if(this.isFirstSid){let e=this.valueDec;this.valueDec<=39?t="0.":this.valueDec<=79?(t="1.",e-=40):(t="2.",e-=80),t+=e.toString()}else t=this.valueDec.toString();return t}toJSON(){return{...super.toJSON(),valueDec:this.valueDec,isFirstSid:this.isFirstSid}}}Zl.NAME="sidBlock";class $l extends Vc{constructor({value:t="",...e}={}){super(e),this.value=[],t&&this.fromString(t)}fromBER(t,e,r){let i=e;for(;r>0;){const e=new Zl;if(i=e.fromBER(t,i,r),-1===i)return this.blockLength=0,this.error=e.error,i;0===this.value.length&&(e.isFirstSid=!0),this.blockLength+=e.blockLength,r-=e.blockLength,this.value.push(e)}return i}toBER(t){const e=[];for(let r=0;r<this.value.length;r++){const i=this.value[r].toBER(t);if(0===i.byteLength)return this.error=this.value[r].error,Lc;e.push(i)}return Ic(e)}fromString(t){this.value=[];let e=0,r=0,i="",n=!1;do{if(r=t.indexOf(".",e),i=-1===r?t.substring(e):t.substring(e,r),e=r+1,n){const t=this.value[0];let e=0;switch(t.valueDec){case 0:break;case 1:e=40;break;case 2:e=80;break;default:return void(this.value=[])}const r=parseInt(i,10);if(isNaN(r))return;t.valueDec=r+e,n=!1}else{const t=new Zl;if(i>Number.MAX_SAFE_INTEGER){Cc();const e=BigInt(i);t.valueBigInt=e}else if(t.valueDec=parseInt(i,10),isNaN(t.valueDec))return;this.value.length||(t.isFirstSid=!0,n=!0),this.value.push(t)}}while(-1!==r)}toString(){let t="",e=!1;for(let r=0;r<this.value.length;r++){e=this.value[r].isHexOnly;let i=this.value[r].toString();0!==r&&(t=`${t}.`),e?(i=`{${i}}`,this.value[r].isFirstSid?t=`2.{${i} - 80}`:t+=i):t+=i}return t}toJSON(){const t={...super.toJSON(),value:this.toString(),sidArray:[]};for(let e=0;e<this.value.length;e++)t.sidArray.push(this.value[e].toJSON());return t}}$l.NAME="ObjectIdentifierValueBlock";class th extends Qc{constructor(t={}){super(t,$l),this.idBlock.tagClass=1,this.idBlock.tagNumber=6}getValue(){return this.valueBlock.toString()}setValue(t){this.valueBlock.fromString(t)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}}al=th,qc.ObjectIdentifier=al,th.NAME="OBJECT IDENTIFIER";class eh extends(jc(Wc)){constructor({valueDec:t=0,...e}={}){super(e),this.valueDec=t}fromBER(t,e,r){if(0===r)return e;const i=vc.vJ.toUint8Array(t);if(!Rc(this,i,e,r))return-1;const n=i.subarray(e,e+r);this.valueHexView=new Uint8Array(r);for(let t=0;t<r&&(this.valueHexView[t]=127&n[t],this.blockLength++,128&n[t]);t++);const s=new Uint8Array(this.blockLength);for(let t=0;t<this.blockLength;t++)s[t]=this.valueHexView[t];return this.valueHexView=s,128&n[this.blockLength-1]?(this.error="End of input reached before message was fully decoded",-1):(0===this.valueHexView[0]&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=_c(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),e+this.blockLength)}toBER(t){if(this.isHexOnly){if(t)return new ArrayBuffer(this.valueHexView.byteLength);const e=this.valueHexView,r=new Uint8Array(this.blockLength);for(let t=0;t<this.blockLength-1;t++)r[t]=128|e[t];return r[this.blockLength-1]=e[this.blockLength-1],r.buffer}const e=Ec(this.valueDec,7);if(0===e.byteLength)return this.error="Error during encoding SID value",Lc;const r=new Uint8Array(e.byteLength);if(!t){const t=new Uint8Array(e),i=e.byteLength-1;for(let e=0;e<i;e++)r[e]=128|t[e];r[i]=t[i]}return r.buffer}toString(){let t="";return t=this.isHexOnly?vc.ep.ToHex(this.valueHexView):this.valueDec.toString(),t}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}}eh.NAME="relativeSidBlock";class rh extends Vc{constructor({value:t="",...e}={}){super(e),this.value=[],t&&this.fromString(t)}fromBER(t,e,r){let i=e;for(;r>0;){const e=new eh;if(i=e.fromBER(t,i,r),-1===i)return this.blockLength=0,this.error=e.error,i;this.blockLength+=e.blockLength,r-=e.blockLength,this.value.push(e)}return i}toBER(t,e){const r=[];for(let e=0;e<this.value.length;e++){const i=this.value[e].toBER(t);if(0===i.byteLength)return this.error=this.value[e].error,Lc;r.push(i)}return Ic(r)}fromString(t){this.value=[];let e=0,r=0,i="";do{r=t.indexOf(".",e),i=-1===r?t.substring(e):t.substring(e,r),e=r+1;const n=new eh;if(n.valueDec=parseInt(i,10),isNaN(n.valueDec))return!0;this.value.push(n)}while(-1!==r);return!0}toString(){let t="",e=!1;for(let r=0;r<this.value.length;r++){e=this.value[r].isHexOnly;let i=this.value[r].toString();0!==r&&(t=`${t}.`),e?(i=`{${i}}`,t+=i):t+=i}return t}toJSON(){const t={...super.toJSON(),value:this.toString(),sidArray:[]};for(let e=0;e<this.value.length;e++)t.sidArray.push(this.value[e].toJSON());return t}}rh.NAME="RelativeObjectIdentifierValueBlock";class ih extends Qc{constructor(t={}){super(t,rh),this.idBlock.tagClass=1,this.idBlock.tagNumber=13}getValue(){return this.valueBlock.toString()}setValue(t){this.valueBlock.fromString(t)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}}cl=ih,qc.RelativeObjectIdentifier=cl,ih.NAME="RelativeObjectIdentifier";class nh extends Ll{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=16}}ll=nh,qc.Sequence=ll,nh.NAME="SEQUENCE";class sh extends Ll{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=17}}hl=sh,qc.Set=hl,sh.NAME="SET";class oh extends(jc(Vc)){constructor({...t}={}){super(t),this.isHexOnly=!0,this.value=Dc}toJSON(){return{...super.toJSON(),value:this.value}}}oh.NAME="StringValueBlock";class ah extends oh{}ah.NAME="SimpleStringValueBlock";class ch extends Yc{constructor({...t}={}){super(t,ah)}fromBuffer(t){this.valueBlock.value=String.fromCharCode.apply(null,vc.vJ.toUint8Array(t))}fromString(t){const e=t.length,r=this.valueBlock.valueHexView=new Uint8Array(e);for(let i=0;i<e;i++)r[i]=t.charCodeAt(i);this.valueBlock.value=t}}ch.NAME="SIMPLE STRING";class lh extends ch{fromBuffer(t){this.valueBlock.valueHexView=vc.vJ.toUint8Array(t);try{this.valueBlock.value=vc.ep.ToUtf8String(t)}catch(e){this.warnings.push(`Error during "decodeURIComponent": ${e}, using raw string`),this.valueBlock.value=vc.ep.ToBinary(t)}}fromString(t){this.valueBlock.valueHexView=new Uint8Array(vc.ep.FromUtf8String(t)),this.valueBlock.value=t}}lh.NAME="Utf8StringValueBlock";class hh extends lh{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=12}}ul=hh,qc.Utf8String=ul,hh.NAME="UTF8String";class uh extends ch{fromBuffer(t){this.valueBlock.value=vc.ep.ToUtf16String(t),this.valueBlock.valueHexView=vc.vJ.toUint8Array(t)}fromString(t){this.valueBlock.value=t,this.valueBlock.valueHexView=new Uint8Array(vc.ep.FromUtf16String(t))}}uh.NAME="BmpStringValueBlock";class ph extends uh{constructor({...t}={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=30}}pl=ph,qc.BmpString=pl,ph.NAME="BMPString";class dh extends ch{fromBuffer(t){const e=ArrayBuffer.isView(t)?t.slice().buffer:t.slice(0),r=new Uint8Array(e);for(let t=0;t<r.length;t+=4)r[t]=r[t+3],r[t+1]=r[t+2],r[t+2]=0,r[t+3]=0;this.valueBlock.value=String.fromCharCode.apply(null,new Uint32Array(e))}fromString(t){const e=t.length,r=this.valueBlock.valueHexView=new Uint8Array(4*e);for(let i=0;i<e;i++){const e=Ec(t.charCodeAt(i),8),n=new Uint8Array(e);if(n.length>4)continue;const s=4-n.length;for(let t=n.length-1;t>=0;t--)r[4*i+t+s]=n[t]}this.valueBlock.value=t}}dh.NAME="UniversalStringValueBlock";class fh extends dh{constructor({...t}={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=28}}dl=fh,qc.UniversalString=dl,fh.NAME="UniversalString";class gh extends ch{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=18}}fl=gh,qc.NumericString=fl,gh.NAME="NumericString";class yh extends ch{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=19}}gl=yh,qc.PrintableString=gl,yh.NAME="PrintableString";class mh extends ch{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=20}}yl=mh,qc.TeletexString=yl,mh.NAME="TeletexString";class wh extends ch{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=21}}ml=wh,qc.VideotexString=ml,wh.NAME="VideotexString";class bh extends ch{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=22}}wl=bh,qc.IA5String=wl,bh.NAME="IA5String";class Ah extends ch{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=25}}bl=Ah,qc.GraphicString=bl,Ah.NAME="GraphicString";class vh extends ch{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=26}}Al=vh,qc.VisibleString=Al,vh.NAME="VisibleString";class _h extends ch{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=27}}vl=_h,qc.GeneralString=vl,_h.NAME="GeneralString";class Eh extends ch{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=29}}_l=Eh,qc.CharacterString=_l,Eh.NAME="CharacterString";class Sh extends vh{constructor({value:t,valueDate:e,...r}={}){if(super(r),this.year=0,this.month=0,this.day=0,this.hour=0,this.minute=0,this.second=0,t){this.fromString(t),this.valueBlock.valueHexView=new Uint8Array(t.length);for(let e=0;e<t.length;e++)this.valueBlock.valueHexView[e]=t.charCodeAt(e)}e&&(this.fromDate(e),this.valueBlock.valueHexView=new Uint8Array(this.toBuffer())),this.idBlock.tagClass=1,this.idBlock.tagNumber=23}fromBuffer(t){this.fromString(String.fromCharCode.apply(null,vc.vJ.toUint8Array(t)))}toBuffer(){const t=this.toString(),e=new ArrayBuffer(t.length),r=new Uint8Array(e);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);return e}fromDate(t){this.year=t.getUTCFullYear(),this.month=t.getUTCMonth()+1,this.day=t.getUTCDate(),this.hour=t.getUTCHours(),this.minute=t.getUTCMinutes(),this.second=t.getUTCSeconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second))}fromString(t){const e=/(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})Z/gi.exec(t);if(null===e)return void(this.error="Wrong input string for conversion");const r=parseInt(e[1],10);this.year=r>=50?1900+r:2e3+r,this.month=parseInt(e[2],10),this.day=parseInt(e[3],10),this.hour=parseInt(e[4],10),this.minute=parseInt(e[5],10),this.second=parseInt(e[6],10)}toString(t="iso"){if("iso"===t){const t=new Array(7);return t[0]=xc(this.year<2e3?this.year-1900:this.year-2e3,2),t[1]=xc(this.month,2),t[2]=xc(this.day,2),t[3]=xc(this.hour,2),t[4]=xc(this.minute,2),t[5]=xc(this.second,2),t[6]="Z",t.join("")}return super.toString(t)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.toDate().toISOString()}`}toJSON(){return{...super.toJSON(),year:this.year,month:this.month,day:this.day,hour:this.hour,minute:this.minute,second:this.second}}}El=Sh,qc.UTCTime=El,Sh.NAME="UTCTime";class Th extends Sh{constructor(t={}){var e;super(t),null!==(e=this.millisecond)&&void 0!==e||(this.millisecond=0),this.idBlock.tagClass=1,this.idBlock.tagNumber=24}fromDate(t){super.fromDate(t),this.millisecond=t.getUTCMilliseconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second,this.millisecond))}fromString(t){let e,r=!1,i="",n="",s=0,o=0,a=0;if("Z"===t[t.length-1])i=t.substring(0,t.length-1),r=!0;else{const e=new Number(t[t.length-1]);if(isNaN(e.valueOf()))throw new Error("Wrong input string for conversion");i=t}if(r){if(-1!==i.indexOf("+"))throw new Error("Wrong input string for conversion");if(-1!==i.indexOf("-"))throw new Error("Wrong input string for conversion")}else{let t=1,e=i.indexOf("+"),r="";if(-1===e&&(e=i.indexOf("-"),t=-1),-1!==e){if(r=i.substring(e+1),i=i.substring(0,e),2!==r.length&&4!==r.length)throw new Error("Wrong input string for conversion");let n=parseInt(r.substring(0,2),10);if(isNaN(n.valueOf()))throw new Error("Wrong input string for conversion");if(o=t*n,4===r.length){if(n=parseInt(r.substring(2,4),10),isNaN(n.valueOf()))throw new Error("Wrong input string for conversion");a=t*n}}}let c=i.indexOf(".");if(-1===c&&(c=i.indexOf(",")),-1!==c){const t=new Number(`0${i.substring(c)}`);if(isNaN(t.valueOf()))throw new Error("Wrong input string for conversion");s=t.valueOf(),n=i.substring(0,c)}else n=i;switch(!0){case 8===n.length:if(e=/(\d{4})(\d{2})(\d{2})/gi,-1!==c)throw new Error("Wrong input string for conversion");break;case 10===n.length:if(e=/(\d{4})(\d{2})(\d{2})(\d{2})/gi,-1!==c){let t=60*s;this.minute=Math.floor(t),t=60*(t-this.minute),this.second=Math.floor(t),t=1e3*(t-this.second),this.millisecond=Math.floor(t)}break;case 12===n.length:if(e=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})/gi,-1!==c){let t=60*s;this.second=Math.floor(t),t=1e3*(t-this.second),this.millisecond=Math.floor(t)}break;case 14===n.length:if(e=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/gi,-1!==c){const t=1e3*s;this.millisecond=Math.floor(t)}break;default:throw new Error("Wrong input string for conversion")}const l=e.exec(n);if(null===l)throw new Error("Wrong input string for conversion");for(let t=1;t<l.length;t++)switch(t){case 1:this.year=parseInt(l[t],10);break;case 2:this.month=parseInt(l[t],10);break;case 3:this.day=parseInt(l[t],10);break;case 4:this.hour=parseInt(l[t],10)+o;break;case 5:this.minute=parseInt(l[t],10)+a;break;case 6:this.second=parseInt(l[t],10);break;default:throw new Error("Wrong input string for conversion")}if(!1===r){const t=new Date(this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond);this.year=t.getUTCFullYear(),this.month=t.getUTCMonth(),this.day=t.getUTCDay(),this.hour=t.getUTCHours(),this.minute=t.getUTCMinutes(),this.second=t.getUTCSeconds(),this.millisecond=t.getUTCMilliseconds()}}toString(t="iso"){if("iso"===t){const t=[];return t.push(xc(this.year,4)),t.push(xc(this.month,2)),t.push(xc(this.day,2)),t.push(xc(this.hour,2)),t.push(xc(this.minute,2)),t.push(xc(this.second,2)),0!==this.millisecond&&(t.push("."),t.push(xc(this.millisecond,3))),t.push("Z"),t.join("")}return super.toString(t)}toJSON(){return{...super.toJSON(),millisecond:this.millisecond}}}Sl=Th,qc.GeneralizedTime=Sl,Th.NAME="GeneralizedTime";class xh extends hh{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=31}}Tl=xh,qc.DATE=Tl,xh.NAME="DATE";class Ch extends hh{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=32}}xl=Ch,qc.TimeOfDay=xl,Ch.NAME="TimeOfDay";class Ih extends hh{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=33}}Cl=Ih,qc.DateTime=Cl,Ih.NAME="DateTime";class Rh extends hh{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=34}}Il=Rh,qc.Duration=Il,Rh.NAME="Duration";class kh extends hh{constructor(t={}){super(t),this.idBlock.tagClass=1,this.idBlock.tagNumber=14}}Rl=kh,qc.TIME=Rl,kh.NAME="TIME";class Nh{constructor({name:t="",optional:e=!1}={}){this.name=t,this.optional=e}}class Oh extends Nh{constructor({value:t=[],...e}={}){super(e),this.value=t}}class Bh extends Nh{constructor({value:t=new Nh,local:e=!1,...r}={}){super(r),this.value=t,this.local=e}}class Ph{constructor({data:t=Uc}={}){this.dataView=vc.vJ.toUint8Array(t)}get data(){return this.dataView.slice().buffer}set data(t){this.dataView=vc.vJ.toUint8Array(t)}fromBER(t,e,r){const i=e+r;return this.dataView=vc.vJ.toUint8Array(t).subarray(e,i),i}toBER(t){return this.dataView.slice().buffer}}function Dh(t,e,r){if(r instanceof Oh){for(let i=0;i<r.value.length;i++)if(Dh(t,e,r.value[i]).verified)return{verified:!0,result:t};{const t={verified:!1,result:{error:"Wrong values for Choice type"}};return r.hasOwnProperty(Bc)&&(t.name=r.name),t}}if(r instanceof Nh)return r.hasOwnProperty(Bc)&&(t[r.name]=e),{verified:!0,result:t};if(t instanceof Object==0)return{verified:!1,result:{error:"Wrong root object"}};if(e instanceof Object==0)return{verified:!1,result:{error:"Wrong ASN.1 data"}};if(r instanceof Object==0)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if("idBlock"in r==0)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if("fromBER"in r.idBlock==0)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if("toBER"in r.idBlock==0)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};const i=r.idBlock.toBER(!1);if(0===i.byteLength)return{verified:!1,result:{error:"Error encoding idBlock for ASN.1 schema"}};if(-1===r.idBlock.fromBER(i,0,i.byteLength))return{verified:!1,result:{error:"Error decoding idBlock for ASN.1 schema"}};if(!1===r.idBlock.hasOwnProperty("tagClass"))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(r.idBlock.tagClass!==e.idBlock.tagClass)return{verified:!1,result:t};if(!1===r.idBlock.hasOwnProperty("tagNumber"))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(r.idBlock.tagNumber!==e.idBlock.tagNumber)return{verified:!1,result:t};if(!1===r.idBlock.hasOwnProperty("isConstructed"))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(r.idBlock.isConstructed!==e.idBlock.isConstructed)return{verified:!1,result:t};if(!("isHexOnly"in r.idBlock))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(r.idBlock.isHexOnly!==e.idBlock.isHexOnly)return{verified:!1,result:t};if(r.idBlock.isHexOnly){if(Pc in r.idBlock==0)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};const i=r.idBlock.valueHexView,n=e.idBlock.valueHexView;if(i.length!==n.length)return{verified:!1,result:t};for(let e=0;e<i.length;e++)if(i[e]!==n[1])return{verified:!1,result:t}}if(r.name&&(r.name=r.name.replace(/^\s+|\s+$/g,Dc),r.name&&(t[r.name]=e)),r instanceof qc.Constructed){let i=0,n={verified:!1,result:{error:"Unknown error"}},s=r.valueBlock.value.length;if(s>0&&r.valueBlock.value[0]instanceof Bh&&(s=e.valueBlock.value.length),0===s)return{verified:!0,result:t};if(0===e.valueBlock.value.length&&0!==r.valueBlock.value.length){let e=!0;for(let t=0;t<r.valueBlock.value.length;t++)e=e&&(r.valueBlock.value[t].optional||!1);return e?{verified:!0,result:t}:(r.name&&(r.name=r.name.replace(/^\s+|\s+$/g,Dc),r.name&&delete t[r.name]),t.error="Inconsistent object length",{verified:!1,result:t})}for(let o=0;o<s;o++)if(o-i>=e.valueBlock.value.length){if(!1===r.valueBlock.value[o].optional){const e={verified:!1,result:t};return t.error="Inconsistent length between ASN.1 data and schema",r.name&&(r.name=r.name.replace(/^\s+|\s+$/g,Dc),r.name&&(delete t[r.name],e.name=r.name)),e}}else if(r.valueBlock.value[0]instanceof Bh){if(n=Dh(t,e.valueBlock.value[o],r.valueBlock.value[0].value),!1===n.verified){if(!r.valueBlock.value[0].optional)return r.name&&(r.name=r.name.replace(/^\s+|\s+$/g,Dc),r.name&&delete t[r.name]),n;i++}if(Bc in r.valueBlock.value[0]&&r.valueBlock.value[0].name.length>0){let i={};i="local"in r.valueBlock.value[0]&&r.valueBlock.value[0].local?e:t,void 0===i[r.valueBlock.value[0].name]&&(i[r.valueBlock.value[0].name]=[]),i[r.valueBlock.value[0].name].push(e.valueBlock.value[o])}}else if(n=Dh(t,e.valueBlock.value[o-i],r.valueBlock.value[o]),!1===n.verified){if(!r.valueBlock.value[o].optional)return r.name&&(r.name=r.name.replace(/^\s+|\s+$/g,Dc),r.name&&delete t[r.name]),n;i++}if(!1===n.verified){const e={verified:!1,result:t};return r.name&&(r.name=r.name.replace(/^\s+|\s+$/g,Dc),r.name&&(delete t[r.name],e.name=r.name)),e}return{verified:!0,result:t}}if(r.primitiveSchema&&Pc in e.valueBlock){const i=Bl(e.valueBlock.valueHexView);if(-1===i.offset){const e={verified:!1,result:i.result};return r.name&&(r.name=r.name.replace(/^\s+|\s+$/g,Dc),r.name&&(delete t[r.name],e.name=r.name)),e}return Dh(t,i.result,r.primitiveSchema)}return{verified:!0,result:t}}function Lh(t,e){if(e instanceof Object==0)return{verified:!1,result:{error:"Wrong ASN.1 schema type"}};const r=Bl(vc.vJ.toUint8Array(t));return-1===r.offset?{verified:!1,result:r.result}:Dh(r.result,r.result,e)}!function(t){t[t.Sequence=0]="Sequence",t[t.Set=1]="Set",t[t.Choice=2]="Choice"}(kl||(kl={})),function(t){t[t.Any=1]="Any",t[t.Boolean=2]="Boolean",t[t.OctetString=3]="OctetString",t[t.BitString=4]="BitString",t[t.Integer=5]="Integer",t[t.Enumerated=6]="Enumerated",t[t.ObjectIdentifier=7]="ObjectIdentifier",t[t.Utf8String=8]="Utf8String",t[t.BmpString=9]="BmpString",t[t.UniversalString=10]="UniversalString",t[t.NumericString=11]="NumericString",t[t.PrintableString=12]="PrintableString",t[t.TeletexString=13]="TeletexString",t[t.VideotexString=14]="VideotexString",t[t.IA5String=15]="IA5String",t[t.GraphicString=16]="GraphicString",t[t.VisibleString=17]="VisibleString",t[t.GeneralString=18]="GeneralString",t[t.CharacterString=19]="CharacterString",t[t.UTCTime=20]="UTCTime",t[t.GeneralizedTime=21]="GeneralizedTime",t[t.DATE=22]="DATE",t[t.TimeOfDay=23]="TimeOfDay",t[t.DateTime=24]="DateTime",t[t.Duration=25]="Duration",t[t.TIME=26]="TIME",t[t.Null=27]="Null"}(Nl||(Nl={}));class Uh{constructor(t,e=0){if(this.unusedBits=0,this.value=new ArrayBuffer(0),t)if("number"==typeof t)this.fromNumber(t);else{if(!vc.vJ.isBufferSource(t))throw TypeError("Unsupported type of 'params' argument for BitString");this.unusedBits=e,this.value=vc.vJ.toArrayBuffer(t)}}fromASN(t){if(!(t instanceof zl))throw new TypeError("Argument 'asn' is not instance of ASN.1 BitString");return this.unusedBits=t.valueBlock.unusedBits,this.value=t.valueBlock.valueHex,this}toASN(){return new zl({unusedBits:this.unusedBits,valueHex:this.value})}toSchema(t){return new zl({name:t})}toNumber(){let t="";const e=new Uint8Array(this.value);for(const r of e)t+=r.toString(2).padStart(8,"0");return t=t.split("").reverse().join(""),this.unusedBits&&(t=t.slice(this.unusedBits).padStart(this.unusedBits,"0")),parseInt(t,2)}fromNumber(t){let e=t.toString(2);const r=e.length+7>>3;this.unusedBits=(r<<3)-e.length;const i=new Uint8Array(r);e=e.padStart(r<<3,"0").split("").reverse().join("");let n=0;for(;n<r;)i[n]=parseInt(e.slice(n<<3,8+(n<<3)),2),n++;this.value=i.buffer}}class Mh{constructor(t){"number"==typeof t?this.buffer=new ArrayBuffer(t):vc.vJ.isBufferSource(t)?this.buffer=vc.vJ.toArrayBuffer(t):Array.isArray(t)?this.buffer=new Uint8Array(t):this.buffer=new ArrayBuffer(0)}get byteLength(){return this.buffer.byteLength}get byteOffset(){return 0}fromASN(t){if(!(t instanceof Vl))throw new TypeError("Argument 'asn' is not instance of ASN.1 OctetString");return this.buffer=t.valueBlock.valueHex,this}toASN(){return new Vl({valueHex:this.buffer})}toSchema(t){return new Vl({name:t})}}const Fh={fromASN:t=>t instanceof Fl?null:t.valueBeforeDecodeView,toASN:t=>{if(null===t)return new Fl;const e=Pl(t);if(e.result.error)throw new Error(e.result.error);return e.result}},Hh={fromASN:t=>t.valueBlock.valueHexView.byteLength>=4?t.valueBlock.toString():t.valueBlock.valueDec,toASN:t=>new Jl({value:+t})},jh={fromASN:t=>t.valueBlock.valueDec,toASN:t=>new Xl({value:t})},Wh={fromASN:t=>t.valueBlock.valueHexView,toASN:t=>new Jl({valueHex:t})},Vh={fromASN:t=>t.valueBlock.valueHexView,toASN:t=>new zl({valueHex:t})},Gh={fromASN:t=>t.valueBlock.toString(),toASN:t=>new th({value:t})},zh={fromASN:t=>t.valueBlock.value,toASN:t=>new jl({value:t})},qh={fromASN:t=>t.valueBlock.valueHexView,toASN:t=>new Vl({valueHex:t})},Qh={fromASN:t=>new Mh(t.getValue()),toASN:t=>t.toASN()};function Kh(t){return{fromASN:t=>t.valueBlock.value,toASN:e=>new t({value:e})}}const Yh=Kh(hh),Jh=Kh(ph),Xh=Kh(fh),Zh=Kh(gh),$h=Kh(yh),tu=Kh(mh),eu=Kh(wh),ru=Kh(bh),iu=Kh(Ah),nu=Kh(vh),su=Kh(_h),ou=Kh(Eh),au={fromASN:t=>t.toDate(),toASN:t=>new Sh({valueDate:t})},cu={fromASN:t=>t.toDate(),toASN:t=>new Th({valueDate:t})},lu={fromASN:()=>null,toASN:()=>new Fl};function hu(t){switch(t){case Nl.Any:return Fh;case Nl.BitString:return Vh;case Nl.BmpString:return Jh;case Nl.Boolean:return zh;case Nl.CharacterString:return ou;case Nl.Enumerated:return jh;case Nl.GeneralString:return su;case Nl.GeneralizedTime:return cu;case Nl.GraphicString:return iu;case Nl.IA5String:return ru;case Nl.Integer:return Hh;case Nl.Null:return lu;case Nl.NumericString:return Zh;case Nl.ObjectIdentifier:return Gh;case Nl.OctetString:return qh;case Nl.PrintableString:return $h;case Nl.TeletexString:return tu;case Nl.UTCTime:return au;case Nl.UniversalString:return Xh;case Nl.Utf8String:return Yh;case Nl.VideotexString:return eu;case Nl.VisibleString:return nu;default:return null}}function uu(t){return"function"==typeof t&&t.prototype?!(!t.prototype.toASN||!t.prototype.fromASN)||uu(t.prototype):!!(t&&"object"==typeof t&&"toASN"in t&&"fromASN"in t)}function pu(t){var e;if(t){const r=Object.getPrototypeOf(t);return(null===(e=null==r?void 0:r.prototype)||void 0===e?void 0:e.constructor)===Array||pu(r)}return!1}function du(t,e){if(!t||!e)return!1;if(t.byteLength!==e.byteLength)return!1;const r=new Uint8Array(t),i=new Uint8Array(e);for(let e=0;e<t.byteLength;e++)if(r[e]!==i[e])return!1;return!0}const fu=new class{constructor(){this.items=new WeakMap}has(t){return this.items.has(t)}get(t,e=!1){const r=this.items.get(t);if(!r)throw new Error(`Cannot get schema for '${t.prototype.constructor.name}' target`);if(e&&!r.schema)throw new Error(`Schema '${t.prototype.constructor.name}' doesn't contain ASN.1 schema. Call 'AsnSchemaStorage.cache'.`);return r}cache(t){const e=this.get(t);e.schema||(e.schema=this.create(t,!0))}createDefault(t){const e={type:kl.Sequence,items:{}},r=this.findParentSchema(t);return r&&(Object.assign(e,r),e.items=Object.assign({},e.items,r.items)),e}create(e,r){const i=this.items.get(e)||this.createDefault(e),n=[];for(const e in i.items){const s=i.items[e],o=r?e:"";let a;if("number"==typeof s.type){const e=Nl[s.type],r=t[e];if(!r)throw new Error(`Cannot get ASN1 class by name '${e}'`);a=new r({name:o})}else uu(s.type)?a=(new s.type).toSchema(o):s.optional?this.get(s.type).type===kl.Choice?a=new Nh({name:o}):(a=this.create(s.type,!1),a.name=o):a=new Nh({name:o});const c=!!s.optional||void 0!==s.defaultValue;if(s.repeated&&(a.name="",a=new("set"===s.repeated?sh:nh)({name:"",value:[new Bh({name:o,value:a})]})),null!==s.context&&void 0!==s.context)if(s.implicit)if("number"==typeof s.type||uu(s.type)){const t=s.repeated?Ll:Ol;n.push(new t({name:o,optional:c,idBlock:{tagClass:3,tagNumber:s.context}}))}else{this.cache(s.type);const t=!!s.repeated;let e=t?a:this.get(s.type,!0).schema;e="valueBlock"in e?e.valueBlock.value:e.value,n.push(new Ll({name:t?"":o,optional:c,idBlock:{tagClass:3,tagNumber:s.context},value:e}))}else n.push(new Ll({optional:c,idBlock:{tagClass:3,tagNumber:s.context},value:[a]}));else a.optional=c,n.push(a)}switch(i.type){case kl.Sequence:return new nh({value:n,name:""});case kl.Set:return new sh({value:n,name:""});case kl.Choice:return new Oh({value:n,name:""});default:throw new Error("Unsupported ASN1 type in use")}}set(t,e){return this.items.set(t,e),this}findParentSchema(t){const e=Object.getPrototypeOf(t);return e?this.items.get(e)||this.findParentSchema(e):null}},gu=t=>e=>{let r;fu.has(e)?r=fu.get(e):(r=fu.createDefault(e),fu.set(e,r)),Object.assign(r,t)},yu=t=>(e,r)=>{let i;fu.has(e.constructor)?i=fu.get(e.constructor):(i=fu.createDefault(e.constructor),fu.set(e.constructor,i));const n=Object.assign({},t);if("number"==typeof n.type&&!n.converter){const i=hu(t.type);if(!i)throw new Error(`Cannot get default converter for property '${r}' of ${e.constructor.name}`);n.converter=i}i.items[r]=n};class mu extends Error{constructor(){super(...arguments),this.schemas=[]}}class wu{static serialize(t){return t instanceof Qc?t.toBER(!1):this.toASN(t).toBER(!1)}static toASN(t){if(t&&"object"==typeof t&&uu(t))return t.toASN();if(!t||"object"!=typeof t)throw new TypeError("Parameter 1 should be type of Object.");const e=t.constructor,r=fu.get(e);fu.cache(e);let i,n=[];if(r.itemType){if(!Array.isArray(t))throw new TypeError("Parameter 1 should be type of Array.");if("number"==typeof r.itemType){const i=hu(r.itemType);if(!i)throw new Error(`Cannot get default converter for array item of ${e.name} ASN1 schema`);n=t.map((t=>i.toASN(t)))}else n=t.map((t=>this.toAsnItem({type:r.itemType},"[]",e,t)))}else for(const i in r.items){const s=r.items[i],o=t[i];if(void 0===o||s.defaultValue===o||"object"==typeof s.defaultValue&&"object"==typeof o&&du(this.serialize(s.defaultValue),this.serialize(o)))continue;const a=wu.toAsnItem(s,i,e,o);if("number"==typeof s.context)if(s.implicit)if(s.repeated||"number"!=typeof s.type&&!uu(s.type))n.push(new Ll({optional:s.optional,idBlock:{tagClass:3,tagNumber:s.context},value:a.valueBlock.value}));else{const t={};t.valueHex=a instanceof Fl?a.valueBeforeDecodeView:a.valueBlock.toBER(),n.push(new Ol({optional:s.optional,idBlock:{tagClass:3,tagNumber:s.context},...t}))}else n.push(new Ll({optional:s.optional,idBlock:{tagClass:3,tagNumber:s.context},value:[a]}));else s.repeated?n=n.concat(a):n.push(a)}switch(r.type){case kl.Sequence:i=new nh({value:n});break;case kl.Set:i=new sh({value:n});break;case kl.Choice:if(!n[0])throw new Error(`Schema '${e.name}' has wrong data. Choice cannot be empty.`);i=n[0]}return i}static toAsnItem(t,e,r,i){let n;if("number"==typeof t.type){const s=t.converter;if(!s)throw new Error(`Property '${e}' doesn't have converter for type ${Nl[t.type]} in schema '${r.name}'`);if(t.repeated){if(!Array.isArray(i))throw new TypeError("Parameter 'objProp' should be type of Array.");const e=Array.from(i,(t=>s.toASN(t)));n=new("sequence"===t.repeated?nh:sh)({value:e})}else n=s.toASN(i)}else if(t.repeated){if(!Array.isArray(i))throw new TypeError("Parameter 'objProp' should be type of Array.");const e=Array.from(i,(t=>this.toASN(t)));n=new("sequence"===t.repeated?nh:sh)({value:e})}else n=this.toASN(i);return n}}class bu extends Array{constructor(t=[]){if("number"==typeof t)super(t);else{super();for(const e of t)this.push(e)}}}class Au{static serialize(t){return wu.serialize(t)}static parse(e,r){return class{static parse(t,e){const r=Pl(t);if(r.result.error)throw new Error(r.result.error);return this.fromASN(r.result,e)}static fromASN(e,r){var i;try{if(uu(r))return(new r).fromASN(e);const n=fu.get(r);fu.cache(r);let s=n.schema;if(e.constructor===Ll&&n.type!==kl.Choice){s=new Ll({idBlock:{tagClass:3,tagNumber:e.idBlock.tagNumber},value:n.schema.valueBlock.value});for(const t in n.items)delete e[t]}const o=Dh({},e,s);if(!o.verified)throw new mu(`Data does not match to ${r.name} ASN1 schema. ${o.result.error}`);const a=new r;if(pu(r)){if(!("value"in e.valueBlock)||!Array.isArray(e.valueBlock.value))throw new Error("Cannot get items from the ASN.1 parsed value. ASN.1 object is not constructed.");const t=n.itemType;if("number"==typeof t){const i=hu(t);if(!i)throw new Error(`Cannot get default converter for array item of ${r.name} ASN1 schema`);return r.from(e.valueBlock.value,(t=>i.fromASN(t)))}return r.from(e.valueBlock.value,(e=>this.fromASN(e,t)))}for(const e in n.items){const r=o.result[e];if(!r)continue;const s=n.items[e],c=s.type;if("number"==typeof c||uu(c)){const n=null!==(i=s.converter)&&void 0!==i?i:uu(c)?new c:null;if(!n)throw new Error("Converter is empty");if(s.repeated)if(s.implicit){const t=new("sequence"===s.repeated?nh:sh);t.valueBlock=r.valueBlock;const i=Pl(t.toBER(!1));if(-1===i.offset)throw new Error(`Cannot parse the child item. ${i.result.error}`);if(!("value"in i.result.valueBlock)||!Array.isArray(i.result.valueBlock.value))throw new Error("Cannot get items from the ASN.1 parsed value. ASN.1 object is not constructed.");const o=i.result.valueBlock.value;a[e]=Array.from(o,(t=>n.fromASN(t)))}else a[e]=Array.from(r,(t=>n.fromASN(t)));else{let i=r;if(s.implicit){let e;if(uu(c))e=(new c).toSchema("");else{const r=Nl[c],i=t[r];if(!i)throw new Error(`Cannot get '${r}' class from asn1js module`);e=new i}e.valueBlock=i.valueBlock,i=Pl(e.toBER(!1)).result}a[e]=n.fromASN(i)}}else if(s.repeated){if(!Array.isArray(r))throw new Error("Cannot get list of items from the ASN.1 parsed value. ASN.1 value should be iterable.");a[e]=Array.from(r,(t=>this.fromASN(t,c)))}else a[e]=this.fromASN(r,c)}return a}catch(t){throw t instanceof mu&&t.schemas.push(r.name),t}}}.parse(e,r)}static toString(t){const e=Pl(vc.vJ.isBufferSource(t)?vc.vJ.toArrayBuffer(t):Au.serialize(t));if(-1===e.offset)throw new Error(`Cannot decode ASN.1 data. ${e.result.error}`);return e.result.toString()}}function vu(t,e,r,i){var n,s=arguments.length,o=s<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,r,i);else for(var a=t.length-1;a>=0;a--)(n=t[a])&&(o=(s<3?n(o):s>3?n(e,r,o):n(e,r))||o);return s>3&&o&&Object.defineProperty(e,r,o),o}Object.create,Object.create;var _u,Eu,Su,Tu=r(6512);class xu{static decodeIP(t){if(64===t.length&&0===parseInt(t,16))return"::/0";if(16!==t.length)return t;const e=parseInt(t.slice(8),16).toString(2).split("").reduce(((t,e)=>t+ +e),0);let r=t.slice(0,8).replace(/(.{2})/g,(t=>`${parseInt(t,16)}.`));return r=r.slice(0,-1),`${r}/${e}`}static toString(t){if(4===t.byteLength||16===t.byteLength){const e=new Uint8Array(t);return Tu.fromByteArray(Array.from(e)).toString()}return this.decodeIP(vc.ep.ToHex(t))}static fromString(t){const e=Tu.parse(t);return new Uint8Array(e.toByteArray()).buffer}}let Cu=class{constructor(t={}){Object.assign(this,t)}toString(){return this.bmpString||this.printableString||this.teletexString||this.universalString||this.utf8String||""}};vu([yu({type:Nl.TeletexString})],Cu.prototype,"teletexString",void 0),vu([yu({type:Nl.PrintableString})],Cu.prototype,"printableString",void 0),vu([yu({type:Nl.UniversalString})],Cu.prototype,"universalString",void 0),vu([yu({type:Nl.Utf8String})],Cu.prototype,"utf8String",void 0),vu([yu({type:Nl.BmpString})],Cu.prototype,"bmpString",void 0),Cu=vu([gu({type:kl.Choice})],Cu);let Iu=class extends Cu{constructor(t={}){super(t),Object.assign(this,t)}toString(){return this.ia5String||(this.anyValue?vc.ep.ToHex(this.anyValue):super.toString())}};vu([yu({type:Nl.IA5String})],Iu.prototype,"ia5String",void 0),vu([yu({type:Nl.Any})],Iu.prototype,"anyValue",void 0),Iu=vu([gu({type:kl.Choice})],Iu);class Ru{constructor(t={}){this.type="",this.value=new Iu,Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],Ru.prototype,"type",void 0),vu([yu({type:Iu})],Ru.prototype,"value",void 0);let ku=_u=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,_u.prototype)}};ku=_u=vu([gu({type:kl.Set,itemType:Ru})],ku);let Nu=Eu=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,Eu.prototype)}};Nu=Eu=vu([gu({type:kl.Sequence,itemType:ku})],Nu);let Ou=Su=class extends Nu{constructor(t){super(t),Object.setPrototypeOf(this,Su.prototype)}};Ou=Su=vu([gu({type:kl.Sequence})],Ou);const Bu={fromASN:t=>xu.toString(qh.fromASN(t)),toASN:t=>qh.toASN(xu.fromString(t))};class Pu{constructor(t={}){this.typeId="",this.value=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],Pu.prototype,"typeId",void 0),vu([yu({type:Nl.Any,context:0})],Pu.prototype,"value",void 0);class Du{constructor(t={}){this.partyName=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Cu,optional:!0,context:0,implicit:!0})],Du.prototype,"nameAssigner",void 0),vu([yu({type:Cu,context:1,implicit:!0})],Du.prototype,"partyName",void 0);let Lu=class{constructor(t={}){Object.assign(this,t)}};vu([yu({type:Pu,context:0,implicit:!0})],Lu.prototype,"otherName",void 0),vu([yu({type:Nl.IA5String,context:1,implicit:!0})],Lu.prototype,"rfc822Name",void 0),vu([yu({type:Nl.IA5String,context:2,implicit:!0})],Lu.prototype,"dNSName",void 0),vu([yu({type:Nl.Any,context:3,implicit:!0})],Lu.prototype,"x400Address",void 0),vu([yu({type:Ou,context:4,implicit:!1})],Lu.prototype,"directoryName",void 0),vu([yu({type:Du,context:5})],Lu.prototype,"ediPartyName",void 0),vu([yu({type:Nl.IA5String,context:6,implicit:!0})],Lu.prototype,"uniformResourceIdentifier",void 0),vu([yu({type:Nl.OctetString,context:7,implicit:!0,converter:Bu})],Lu.prototype,"iPAddress",void 0),vu([yu({type:Nl.ObjectIdentifier,context:8,implicit:!0})],Lu.prototype,"registeredID",void 0),Lu=vu([gu({type:kl.Choice})],Lu);const Uu="1.3.6.1.5.5.7.3";var Mu;class Fu{constructor(t={}){this.accessMethod="",this.accessLocation=new Lu,Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],Fu.prototype,"accessMethod",void 0),vu([yu({type:Lu})],Fu.prototype,"accessLocation",void 0);let Hu=Mu=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,Mu.prototype)}};Hu=Mu=vu([gu({type:kl.Sequence,itemType:Fu})],Hu);const ju="2.5.29.35";class Wu extends Mh{}class Vu{constructor(t={}){t&&Object.assign(this,t)}}vu([yu({type:Wu,context:0,optional:!0,implicit:!0})],Vu.prototype,"keyIdentifier",void 0),vu([yu({type:Lu,context:1,optional:!0,implicit:!0,repeated:"sequence"})],Vu.prototype,"authorityCertIssuer",void 0),vu([yu({type:Nl.Integer,context:2,optional:!0,implicit:!0,converter:Wh})],Vu.prototype,"authorityCertSerialNumber",void 0);const Gu="2.5.29.19";class zu{constructor(t={}){this.cA=!1,Object.assign(this,t)}}var qu;vu([yu({type:Nl.Boolean,defaultValue:!1})],zu.prototype,"cA",void 0),vu([yu({type:Nl.Integer,optional:!0})],zu.prototype,"pathLenConstraint",void 0);let Qu=qu=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,qu.prototype)}};var Ku;Qu=qu=vu([gu({type:kl.Sequence,itemType:Lu})],Qu);let Yu=Ku=class extends Qu{constructor(t){super(t),Object.setPrototypeOf(this,Ku.prototype)}};var Ju;Yu=Ku=vu([gu({type:kl.Sequence})],Yu);const Xu="2.5.29.32";let Zu=class{constructor(t={}){Object.assign(this,t)}toString(){return this.ia5String||this.visibleString||this.bmpString||this.utf8String||""}};vu([yu({type:Nl.IA5String})],Zu.prototype,"ia5String",void 0),vu([yu({type:Nl.VisibleString})],Zu.prototype,"visibleString",void 0),vu([yu({type:Nl.BmpString})],Zu.prototype,"bmpString",void 0),vu([yu({type:Nl.Utf8String})],Zu.prototype,"utf8String",void 0),Zu=vu([gu({type:kl.Choice})],Zu);class $u{constructor(t={}){this.organization=new Zu,this.noticeNumbers=[],Object.assign(this,t)}}vu([yu({type:Zu})],$u.prototype,"organization",void 0),vu([yu({type:Nl.Integer,repeated:"sequence"})],$u.prototype,"noticeNumbers",void 0);class tp{constructor(t={}){Object.assign(this,t)}}vu([yu({type:$u,optional:!0})],tp.prototype,"noticeRef",void 0),vu([yu({type:Zu,optional:!0})],tp.prototype,"explicitText",void 0);let ep=class{constructor(t={}){Object.assign(this,t)}};vu([yu({type:Nl.IA5String})],ep.prototype,"cPSuri",void 0),vu([yu({type:tp})],ep.prototype,"userNotice",void 0),ep=vu([gu({type:kl.Choice})],ep);class rp{constructor(t={}){this.policyQualifierId="",this.qualifier=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],rp.prototype,"policyQualifierId",void 0),vu([yu({type:Nl.Any})],rp.prototype,"qualifier",void 0);class ip{constructor(t={}){this.policyIdentifier="",Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],ip.prototype,"policyIdentifier",void 0),vu([yu({type:rp,repeated:"sequence",optional:!0})],ip.prototype,"policyQualifiers",void 0);let np=Ju=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,Ju.prototype)}};np=Ju=vu([gu({type:kl.Sequence,itemType:ip})],np);let sp=class{constructor(t=0){this.value=t}};vu([yu({type:Nl.Integer})],sp.prototype,"value",void 0),sp=vu([gu({type:kl.Choice})],sp);let op=class extends sp{};var ap,cp;op=vu([gu({type:kl.Choice})],op),function(t){t[t.unused=1]="unused",t[t.keyCompromise=2]="keyCompromise",t[t.cACompromise=4]="cACompromise",t[t.affiliationChanged=8]="affiliationChanged",t[t.superseded=16]="superseded",t[t.cessationOfOperation=32]="cessationOfOperation",t[t.certificateHold=64]="certificateHold",t[t.privilegeWithdrawn=128]="privilegeWithdrawn",t[t.aACompromise=256]="aACompromise"}(cp||(cp={}));class lp extends Uh{toJSON(){const t=[],e=this.toNumber();return e&cp.aACompromise&&t.push("aACompromise"),e&cp.affiliationChanged&&t.push("affiliationChanged"),e&cp.cACompromise&&t.push("cACompromise"),e&cp.certificateHold&&t.push("certificateHold"),e&cp.cessationOfOperation&&t.push("cessationOfOperation"),e&cp.keyCompromise&&t.push("keyCompromise"),e&cp.privilegeWithdrawn&&t.push("privilegeWithdrawn"),e&cp.superseded&&t.push("superseded"),e&cp.unused&&t.push("unused"),t}toString(){return`[${this.toJSON().join(", ")}]`}}let hp=class{constructor(t={}){Object.assign(this,t)}};vu([yu({type:Lu,context:0,repeated:"sequence",implicit:!0})],hp.prototype,"fullName",void 0),vu([yu({type:ku,context:1,implicit:!0})],hp.prototype,"nameRelativeToCRLIssuer",void 0),hp=vu([gu({type:kl.Choice})],hp);class up{constructor(t={}){Object.assign(this,t)}}vu([yu({type:hp,context:0,optional:!0})],up.prototype,"distributionPoint",void 0),vu([yu({type:lp,context:1,optional:!0,implicit:!0})],up.prototype,"reasons",void 0),vu([yu({type:Lu,context:2,optional:!0,repeated:"sequence",implicit:!0})],up.prototype,"cRLIssuer",void 0);let pp=ap=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,ap.prototype)}};var dp;pp=ap=vu([gu({type:kl.Sequence,itemType:up})],pp);let fp=dp=class extends pp{constructor(t){super(t),Object.setPrototypeOf(this,dp.prototype)}};fp=dp=vu([gu({type:kl.Sequence,itemType:up})],fp);class gp{constructor(t={}){this.onlyContainsUserCerts=gp.ONLY,this.onlyContainsCACerts=gp.ONLY,this.indirectCRL=gp.ONLY,this.onlyContainsAttributeCerts=gp.ONLY,Object.assign(this,t)}}var yp;gp.ONLY=!1,vu([yu({type:hp,context:0,optional:!0})],gp.prototype,"distributionPoint",void 0),vu([yu({type:Nl.Boolean,context:1,defaultValue:gp.ONLY,implicit:!0})],gp.prototype,"onlyContainsUserCerts",void 0),vu([yu({type:Nl.Boolean,context:2,defaultValue:gp.ONLY,implicit:!0})],gp.prototype,"onlyContainsCACerts",void 0),vu([yu({type:lp,context:3,optional:!0,implicit:!0})],gp.prototype,"onlySomeReasons",void 0),vu([yu({type:Nl.Boolean,context:4,defaultValue:gp.ONLY,implicit:!0})],gp.prototype,"indirectCRL",void 0),vu([yu({type:Nl.Boolean,context:5,defaultValue:gp.ONLY,implicit:!0})],gp.prototype,"onlyContainsAttributeCerts",void 0),function(t){t[t.unspecified=0]="unspecified",t[t.keyCompromise=1]="keyCompromise",t[t.cACompromise=2]="cACompromise",t[t.affiliationChanged=3]="affiliationChanged",t[t.superseded=4]="superseded",t[t.cessationOfOperation=5]="cessationOfOperation",t[t.certificateHold=6]="certificateHold",t[t.removeFromCRL=8]="removeFromCRL",t[t.privilegeWithdrawn=9]="privilegeWithdrawn",t[t.aACompromise=10]="aACompromise"}(yp||(yp={}));let mp=class{constructor(t=yp.unspecified){this.reason=yp.unspecified,this.reason=t}toJSON(){return yp[this.reason]}toString(){return this.toJSON()}};var wp;vu([yu({type:Nl.Enumerated})],mp.prototype,"reason",void 0),mp=vu([gu({type:kl.Choice})],mp);const bp="2.5.29.37";let Ap=wp=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,wp.prototype)}};Ap=wp=vu([gu({type:kl.Sequence,itemType:Nl.ObjectIdentifier})],Ap);const vp=`${Uu}.1`,_p=`${Uu}.2`,Ep=`${Uu}.3`,Sp=`${Uu}.4`,Tp=`${Uu}.8`,xp=`${Uu}.9`;let Cp=class{constructor(t=new ArrayBuffer(0)){this.value=t}};vu([yu({type:Nl.Integer,converter:Wh})],Cp.prototype,"value",void 0),Cp=vu([gu({type:kl.Choice})],Cp);let Ip=class{constructor(t){this.value=new Date,t&&(this.value=t)}};var Rp;vu([yu({type:Nl.GeneralizedTime})],Ip.prototype,"value",void 0),Ip=vu([gu({type:kl.Choice})],Ip);let kp=Rp=class extends Qu{constructor(t){super(t),Object.setPrototypeOf(this,Rp.prototype)}};kp=Rp=vu([gu({type:kl.Sequence})],kp);const Np="2.5.29.15";var Op,Bp;!function(t){t[t.digitalSignature=1]="digitalSignature",t[t.nonRepudiation=2]="nonRepudiation",t[t.keyEncipherment=4]="keyEncipherment",t[t.dataEncipherment=8]="dataEncipherment",t[t.keyAgreement=16]="keyAgreement",t[t.keyCertSign=32]="keyCertSign",t[t.cRLSign=64]="cRLSign",t[t.encipherOnly=128]="encipherOnly",t[t.decipherOnly=256]="decipherOnly"}(Op||(Op={}));class Pp extends Uh{toJSON(){const t=this.toNumber(),e=[];return t&Op.cRLSign&&e.push("crlSign"),t&Op.dataEncipherment&&e.push("dataEncipherment"),t&Op.decipherOnly&&e.push("decipherOnly"),t&Op.digitalSignature&&e.push("digitalSignature"),t&Op.encipherOnly&&e.push("encipherOnly"),t&Op.keyAgreement&&e.push("keyAgreement"),t&Op.keyCertSign&&e.push("keyCertSign"),t&Op.keyEncipherment&&e.push("keyEncipherment"),t&Op.nonRepudiation&&e.push("nonRepudiation"),e}toString(){return`[${this.toJSON().join(", ")}]`}}class Dp{constructor(t={}){this.base=new Lu,this.minimum=0,Object.assign(this,t)}}vu([yu({type:Lu})],Dp.prototype,"base",void 0),vu([yu({type:Nl.Integer,context:0,defaultValue:0,implicit:!0})],Dp.prototype,"minimum",void 0),vu([yu({type:Nl.Integer,context:1,optional:!0,implicit:!0})],Dp.prototype,"maximum",void 0);let Lp=Bp=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,Bp.prototype)}};Lp=Bp=vu([gu({type:kl.Sequence,itemType:Dp})],Lp);class Up{constructor(t={}){Object.assign(this,t)}}vu([yu({type:Lp,context:0,optional:!0,implicit:!0})],Up.prototype,"permittedSubtrees",void 0),vu([yu({type:Lp,context:1,optional:!0,implicit:!0})],Up.prototype,"excludedSubtrees",void 0);class Mp{constructor(t={}){Object.assign(this,t)}}var Fp;vu([yu({type:Nl.Integer,context:0,implicit:!0,optional:!0,converter:Wh})],Mp.prototype,"requireExplicitPolicy",void 0),vu([yu({type:Nl.Integer,context:1,implicit:!0,optional:!0,converter:Wh})],Mp.prototype,"inhibitPolicyMapping",void 0);class Hp{constructor(t={}){this.issuerDomainPolicy="",this.subjectDomainPolicy="",Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],Hp.prototype,"issuerDomainPolicy",void 0),vu([yu({type:Nl.ObjectIdentifier})],Hp.prototype,"subjectDomainPolicy",void 0);let jp=Fp=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,Fp.prototype)}};var Wp;jp=Fp=vu([gu({type:kl.Sequence,itemType:Hp})],jp);const Vp="2.5.29.17";let Gp=Wp=class extends Qu{constructor(t){super(t),Object.setPrototypeOf(this,Wp.prototype)}};Gp=Wp=vu([gu({type:kl.Sequence})],Gp);class zp{constructor(t={}){this.type="",this.values=[],Object.assign(this,t)}}var qp;vu([yu({type:Nl.ObjectIdentifier})],zp.prototype,"type",void 0),vu([yu({type:Nl.Any,repeated:"set"})],zp.prototype,"values",void 0);let Qp=qp=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,qp.prototype)}};Qp=qp=vu([gu({type:kl.Sequence,itemType:zp})],Qp);const Kp="2.5.29.14";class Yp extends Wu{}class Jp{constructor(t={}){Object.assign(this,t)}}var Xp,Zp;vu([yu({type:Nl.GeneralizedTime,context:0,implicit:!0,optional:!0})],Jp.prototype,"notBefore",void 0),vu([yu({type:Nl.GeneralizedTime,context:1,implicit:!0,optional:!0})],Jp.prototype,"notAfter",void 0),function(t){t[t.keyUpdateAllowed=1]="keyUpdateAllowed",t[t.newExtensions=2]="newExtensions",t[t.pKIXCertificate=4]="pKIXCertificate"}(Xp||(Xp={}));class $p extends Uh{toJSON(){const t=[],e=this.toNumber();return e&Xp.pKIXCertificate&&t.push("pKIXCertificate"),e&Xp.newExtensions&&t.push("newExtensions"),e&Xp.keyUpdateAllowed&&t.push("keyUpdateAllowed"),t}toString(){return`[${this.toJSON().join(", ")}]`}}class td{constructor(t={}){this.entrustVers="",this.entrustInfoFlags=new $p,Object.assign(this,t)}}vu([yu({type:Nl.GeneralString})],td.prototype,"entrustVers",void 0),vu([yu({type:$p})],td.prototype,"entrustInfoFlags",void 0);let ed=Zp=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,Zp.prototype)}};ed=Zp=vu([gu({type:kl.Sequence,itemType:Fu})],ed);class rd{constructor(t={}){this.algorithm="",Object.assign(this,t)}isEqual(t){return t instanceof rd&&t.algorithm==this.algorithm&&(t.parameters&&this.parameters&&vc.Xy(t.parameters,this.parameters)||t.parameters===this.parameters)}}vu([yu({type:Nl.ObjectIdentifier})],rd.prototype,"algorithm",void 0),vu([yu({type:Nl.Any,optional:!0})],rd.prototype,"parameters",void 0);class id{constructor(t={}){this.algorithm=new rd,this.subjectPublicKey=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:rd})],id.prototype,"algorithm",void 0),vu([yu({type:Nl.BitString})],id.prototype,"subjectPublicKey",void 0);let nd=class{constructor(t){if(t)if("string"==typeof t||"number"==typeof t||t instanceof Date){const e=new Date(t);e.getUTCFullYear()>2049?this.generalTime=e:this.utcTime=e}else Object.assign(this,t)}getTime(){const t=this.utcTime||this.generalTime;if(!t)throw new Error("Cannot get time from CHOICE object");return t}};vu([yu({type:Nl.UTCTime})],nd.prototype,"utcTime",void 0),vu([yu({type:Nl.GeneralizedTime})],nd.prototype,"generalTime",void 0),nd=vu([gu({type:kl.Choice})],nd);class sd{constructor(t){this.notBefore=new nd(new Date),this.notAfter=new nd(new Date),t&&(this.notBefore=new nd(t.notBefore),this.notAfter=new nd(t.notAfter))}}var od;vu([yu({type:nd})],sd.prototype,"notBefore",void 0),vu([yu({type:nd})],sd.prototype,"notAfter",void 0);class ad{constructor(t={}){this.extnID="",this.critical=ad.CRITICAL,this.extnValue=new Mh,Object.assign(this,t)}}ad.CRITICAL=!1,vu([yu({type:Nl.ObjectIdentifier})],ad.prototype,"extnID",void 0),vu([yu({type:Nl.Boolean,defaultValue:ad.CRITICAL})],ad.prototype,"critical",void 0),vu([yu({type:Mh})],ad.prototype,"extnValue",void 0);let cd=od=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,od.prototype)}};var ld,hd;cd=od=vu([gu({type:kl.Sequence,itemType:ad})],cd),function(t){t[t.v1=0]="v1",t[t.v2=1]="v2",t[t.v3=2]="v3"}(ld||(ld={}));class ud{constructor(t={}){this.version=ld.v1,this.serialNumber=new ArrayBuffer(0),this.signature=new rd,this.issuer=new Ou,this.validity=new sd,this.subject=new Ou,this.subjectPublicKeyInfo=new id,Object.assign(this,t)}}vu([yu({type:Nl.Integer,context:0,defaultValue:ld.v1})],ud.prototype,"version",void 0),vu([yu({type:Nl.Integer,converter:Wh})],ud.prototype,"serialNumber",void 0),vu([yu({type:rd})],ud.prototype,"signature",void 0),vu([yu({type:Ou})],ud.prototype,"issuer",void 0),vu([yu({type:sd})],ud.prototype,"validity",void 0),vu([yu({type:Ou})],ud.prototype,"subject",void 0),vu([yu({type:id})],ud.prototype,"subjectPublicKeyInfo",void 0),vu([yu({type:Nl.BitString,context:1,implicit:!0,optional:!0})],ud.prototype,"issuerUniqueID",void 0),vu([yu({type:Nl.BitString,context:2,implicit:!0,optional:!0})],ud.prototype,"subjectUniqueID",void 0),vu([yu({type:cd,context:3,optional:!0})],ud.prototype,"extensions",void 0);class pd{constructor(t={}){this.tbsCertificate=new ud,this.signatureAlgorithm=new rd,this.signatureValue=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:ud})],pd.prototype,"tbsCertificate",void 0),vu([yu({type:rd})],pd.prototype,"signatureAlgorithm",void 0),vu([yu({type:Nl.BitString})],pd.prototype,"signatureValue",void 0);class dd{constructor(t={}){this.userCertificate=new ArrayBuffer(0),this.revocationDate=new nd,Object.assign(this,t)}}vu([yu({type:Nl.Integer,converter:Wh})],dd.prototype,"userCertificate",void 0),vu([yu({type:nd})],dd.prototype,"revocationDate",void 0),vu([yu({type:ad,optional:!0,repeated:"sequence"})],dd.prototype,"crlEntryExtensions",void 0);class fd{constructor(t={}){this.signature=new rd,this.issuer=new Ou,this.thisUpdate=new nd,Object.assign(this,t)}}vu([yu({type:Nl.Integer,optional:!0})],fd.prototype,"version",void 0),vu([yu({type:rd})],fd.prototype,"signature",void 0),vu([yu({type:Ou})],fd.prototype,"issuer",void 0),vu([yu({type:nd})],fd.prototype,"thisUpdate",void 0),vu([yu({type:nd,optional:!0})],fd.prototype,"nextUpdate",void 0),vu([yu({type:dd,repeated:"sequence",optional:!0})],fd.prototype,"revokedCertificates",void 0),vu([yu({type:ad,optional:!0,context:0,repeated:"sequence"})],fd.prototype,"crlExtensions",void 0);class gd{constructor(t={}){this.tbsCertList=new fd,this.signatureAlgorithm=new rd,this.signature=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:fd})],gd.prototype,"tbsCertList",void 0),vu([yu({type:rd})],gd.prototype,"signatureAlgorithm",void 0),vu([yu({type:Nl.BitString})],gd.prototype,"signature",void 0);class yd{constructor(t={}){this.attrType="",this.attrValues=[],Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],yd.prototype,"attrType",void 0),vu([yu({type:Nl.Any,repeated:"set"})],yd.prototype,"attrValues",void 0);class md{constructor(t={}){this.acIssuer=new Lu,this.acSerial=0,this.attrs=[],Object.assign(this,t)}}vu([yu({type:Lu})],md.prototype,"acIssuer",void 0),vu([yu({type:Nl.Integer})],md.prototype,"acSerial",void 0),vu([yu({type:zp,repeated:"sequence"})],md.prototype,"attrs",void 0);let wd=hd=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,hd.prototype)}};wd=hd=vu([gu({type:kl.Sequence,itemType:Nl.ObjectIdentifier})],wd);class bd{constructor(t={}){this.permitUnSpecified=!0,Object.assign(this,t)}}vu([yu({type:Nl.Integer,optional:!0})],bd.prototype,"pathLenConstraint",void 0),vu([yu({type:wd,implicit:!0,context:0,optional:!0})],bd.prototype,"permittedAttrs",void 0),vu([yu({type:wd,implicit:!0,context:1,optional:!0})],bd.prototype,"excludedAttrs",void 0),vu([yu({type:Nl.Boolean,defaultValue:!0})],bd.prototype,"permitUnSpecified",void 0);class Ad{constructor(t={}){this.issuer=new Qu,this.serial=new ArrayBuffer(0),this.issuerUID=new ArrayBuffer(0),Object.assign(this,t)}}var vd;vu([yu({type:Qu})],Ad.prototype,"issuer",void 0),vu([yu({type:Nl.Integer,converter:Wh})],Ad.prototype,"serial",void 0),vu([yu({type:Nl.BitString,optional:!0})],Ad.prototype,"issuerUID",void 0),function(t){t[t.publicKey=0]="publicKey",t[t.publicKeyCert=1]="publicKeyCert",t[t.otherObjectTypes=2]="otherObjectTypes"}(vd||(vd={}));class _d{constructor(t={}){this.digestedObjectType=vd.publicKey,this.digestAlgorithm=new rd,this.objectDigest=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Nl.Enumerated})],_d.prototype,"digestedObjectType",void 0),vu([yu({type:Nl.ObjectIdentifier,optional:!0})],_d.prototype,"otherObjectTypeID",void 0),vu([yu({type:rd})],_d.prototype,"digestAlgorithm",void 0),vu([yu({type:Nl.BitString})],_d.prototype,"objectDigest",void 0);class Ed{constructor(t={}){Object.assign(this,t)}}vu([yu({type:Qu,optional:!0})],Ed.prototype,"issuerName",void 0),vu([yu({type:Ad,context:0,implicit:!0,optional:!0})],Ed.prototype,"baseCertificateID",void 0),vu([yu({type:_d,context:1,implicit:!0,optional:!0})],Ed.prototype,"objectDigestInfo",void 0);let Sd=class{constructor(t={}){Object.assign(this,t)}};vu([yu({type:Lu,repeated:"sequence"})],Sd.prototype,"v1Form",void 0),vu([yu({type:Ed,context:0,implicit:!0})],Sd.prototype,"v2Form",void 0),Sd=vu([gu({type:kl.Choice})],Sd);class Td{constructor(t={}){this.notBeforeTime=new Date,this.notAfterTime=new Date,Object.assign(this,t)}}vu([yu({type:Nl.GeneralizedTime})],Td.prototype,"notBeforeTime",void 0),vu([yu({type:Nl.GeneralizedTime})],Td.prototype,"notAfterTime",void 0);class xd{constructor(t={}){Object.assign(this,t)}}var Cd,Id,Rd;vu([yu({type:Ad,implicit:!0,context:0,optional:!0})],xd.prototype,"baseCertificateID",void 0),vu([yu({type:Qu,implicit:!0,context:1,optional:!0})],xd.prototype,"entityName",void 0),vu([yu({type:_d,implicit:!0,context:2,optional:!0})],xd.prototype,"objectDigestInfo",void 0),function(t){t[t.v2=1]="v2"}(Cd||(Cd={}));class kd{constructor(t={}){this.version=Cd.v2,this.holder=new xd,this.issuer=new Sd,this.signature=new rd,this.serialNumber=new ArrayBuffer(0),this.attrCertValidityPeriod=new Td,this.attributes=[],Object.assign(this,t)}}vu([yu({type:Nl.Integer})],kd.prototype,"version",void 0),vu([yu({type:xd})],kd.prototype,"holder",void 0),vu([yu({type:Sd})],kd.prototype,"issuer",void 0),vu([yu({type:rd})],kd.prototype,"signature",void 0),vu([yu({type:Nl.Integer,converter:Wh})],kd.prototype,"serialNumber",void 0),vu([yu({type:Td})],kd.prototype,"attrCertValidityPeriod",void 0),vu([yu({type:zp,repeated:"sequence"})],kd.prototype,"attributes",void 0),vu([yu({type:Nl.BitString,optional:!0})],kd.prototype,"issuerUniqueID",void 0),vu([yu({type:cd,optional:!0})],kd.prototype,"extensions",void 0);class Nd{constructor(t={}){this.acinfo=new kd,this.signatureAlgorithm=new rd,this.signatureValue=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:kd})],Nd.prototype,"acinfo",void 0),vu([yu({type:rd})],Nd.prototype,"signatureAlgorithm",void 0),vu([yu({type:Nl.BitString})],Nd.prototype,"signatureValue",void 0),function(t){t[t.unmarked=1]="unmarked",t[t.unclassified=2]="unclassified",t[t.restricted=4]="restricted",t[t.confidential=8]="confidential",t[t.secret=16]="secret",t[t.topSecret=32]="topSecret"}(Id||(Id={}));class Od extends Uh{}class Bd{constructor(t={}){this.type="",this.value=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier,implicit:!0,context:0})],Bd.prototype,"type",void 0),vu([yu({type:Nl.Any,implicit:!0,context:1})],Bd.prototype,"value",void 0);class Pd{constructor(t={}){this.policyId="",this.classList=new Od(Id.unclassified),Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],Pd.prototype,"policyId",void 0),vu([yu({type:Od,defaultValue:new Od(Id.unclassified)})],Pd.prototype,"classList",void 0),vu([yu({type:Bd,repeated:"set"})],Pd.prototype,"securityCategories",void 0);class Dd{constructor(t={}){Object.assign(this,t)}}vu([yu({type:Mh})],Dd.prototype,"cotets",void 0),vu([yu({type:Nl.ObjectIdentifier})],Dd.prototype,"oid",void 0),vu([yu({type:Nl.Utf8String})],Dd.prototype,"string",void 0);class Ld{constructor(t={}){this.values=[],Object.assign(this,t)}}vu([yu({type:Qu,implicit:!0,context:0,optional:!0})],Ld.prototype,"policyAuthority",void 0),vu([yu({type:Dd,repeated:"sequence"})],Ld.prototype,"values",void 0);class Ud{constructor(t={}){this.targetCertificate=new Ad,Object.assign(this,t)}}vu([yu({type:Ad})],Ud.prototype,"targetCertificate",void 0),vu([yu({type:Lu,optional:!0})],Ud.prototype,"targetName",void 0),vu([yu({type:_d,optional:!0})],Ud.prototype,"certDigestInfo",void 0);let Md=class{constructor(t={}){Object.assign(this,t)}};vu([yu({type:Lu,context:0,implicit:!0})],Md.prototype,"targetName",void 0),vu([yu({type:Lu,context:1,implicit:!0})],Md.prototype,"targetGroup",void 0),vu([yu({type:Ud,context:2,implicit:!0})],Md.prototype,"targetCert",void 0),Md=vu([gu({type:kl.Choice})],Md);let Fd=Rd=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,Rd.prototype)}};var Hd;Fd=Rd=vu([gu({type:kl.Sequence,itemType:Md})],Fd);let jd=Hd=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,Hd.prototype)}};jd=Hd=vu([gu({type:kl.Sequence,itemType:Fd})],jd);class Wd{constructor(t={}){Object.assign(this,t)}}vu([yu({type:Qu,implicit:!0,context:0,optional:!0})],Wd.prototype,"roleAuthority",void 0),vu([yu({type:Lu,implicit:!0,context:1})],Wd.prototype,"roleName",void 0);class Vd{constructor(t={}){this.service=new Lu,this.ident=new Lu,Object.assign(this,t)}}var Gd;vu([yu({type:Lu})],Vd.prototype,"service",void 0),vu([yu({type:Lu})],Vd.prototype,"ident",void 0),vu([yu({type:Mh,optional:!0})],Vd.prototype,"authInfo",void 0);class zd{constructor(t={}){this.otherCertFormat="",this.otherCert=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],zd.prototype,"otherCertFormat",void 0),vu([yu({type:Nl.Any})],zd.prototype,"otherCert",void 0);let qd=class{constructor(t={}){Object.assign(this,t)}};vu([yu({type:pd})],qd.prototype,"certificate",void 0),vu([yu({type:Nd,context:2,implicit:!0})],qd.prototype,"v2AttrCert",void 0),vu([yu({type:zd,context:3,implicit:!0})],qd.prototype,"other",void 0),qd=vu([gu({type:kl.Choice})],qd);let Qd=Gd=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,Gd.prototype)}};Qd=Gd=vu([gu({type:kl.Set,itemType:qd})],Qd);class Kd{constructor(t={}){this.contentType="",this.content=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],Kd.prototype,"contentType",void 0),vu([yu({type:Nl.Any,context:0})],Kd.prototype,"content",void 0);let Yd=class{constructor(t={}){Object.assign(this,t)}};vu([yu({type:Mh})],Yd.prototype,"single",void 0),vu([yu({type:Nl.Any})],Yd.prototype,"any",void 0),Yd=vu([gu({type:kl.Choice})],Yd);class Jd{constructor(t={}){this.eContentType="",Object.assign(this,t)}}var Xd;vu([yu({type:Nl.ObjectIdentifier})],Jd.prototype,"eContentType",void 0),vu([yu({type:Yd,context:0,optional:!0})],Jd.prototype,"eContent",void 0),function(t){t[t.v0=0]="v0",t[t.v1=1]="v1",t[t.v2=2]="v2",t[t.v3=3]="v3",t[t.v4=4]="v4",t[t.v5=5]="v5"}(Xd||(Xd={}));let Zd=class extends rd{};Zd=vu([gu({type:kl.Sequence})],Zd);let $d=class extends rd{};$d=vu([gu({type:kl.Sequence})],$d);let tf=class extends rd{};tf=vu([gu({type:kl.Sequence})],tf);let ef=class extends rd{};ef=vu([gu({type:kl.Sequence})],ef);let rf=class extends rd{};rf=vu([gu({type:kl.Sequence})],rf);let nf=class extends rd{};nf=vu([gu({type:kl.Sequence})],nf);let sf=class{constructor(t={}){Object.assign(this,t)}};vu([yu({type:Mh,context:0,implicit:!0,optional:!0})],sf.prototype,"value",void 0),vu([yu({type:Mh,converter:Qh,context:0,implicit:!0,optional:!0,repeated:"sequence"})],sf.prototype,"constructedValue",void 0),sf=vu([gu({type:kl.Choice})],sf);class of{constructor(t={}){this.contentType="",this.contentEncryptionAlgorithm=new ef,Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],of.prototype,"contentType",void 0),vu([yu({type:ef})],of.prototype,"contentEncryptionAlgorithm",void 0),vu([yu({type:sf,optional:!0})],of.prototype,"encryptedContent",void 0);class af{constructor(t={}){this.issuer=new Ou,this.serialNumber=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Ou})],af.prototype,"issuer",void 0),vu([yu({type:Nl.Integer,converter:Wh})],af.prototype,"serialNumber",void 0);class cf{constructor(t={}){this.keyAttrId="",Object.assign(this,t)}}var lf;vu([yu({type:Nl.ObjectIdentifier})],cf.prototype,"keyAttrId",void 0),vu([yu({type:Nl.Any,optional:!0})],cf.prototype,"keyAttr",void 0);class hf{constructor(t={}){this.subjectKeyIdentifier=new Yp,Object.assign(this,t)}}vu([yu({type:Yp})],hf.prototype,"subjectKeyIdentifier",void 0),vu([yu({type:Nl.GeneralizedTime,optional:!0})],hf.prototype,"date",void 0),vu([yu({type:cf,optional:!0})],hf.prototype,"other",void 0);let uf=class{constructor(t={}){Object.assign(this,t)}};vu([yu({type:hf,context:0,implicit:!0,optional:!0})],uf.prototype,"rKeyId",void 0),vu([yu({type:af,optional:!0})],uf.prototype,"issuerAndSerialNumber",void 0),uf=vu([gu({type:kl.Choice})],uf);class pf{constructor(t={}){this.rid=new uf,this.encryptedKey=new Mh,Object.assign(this,t)}}vu([yu({type:uf})],pf.prototype,"rid",void 0),vu([yu({type:Mh})],pf.prototype,"encryptedKey",void 0);let df=lf=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,lf.prototype)}};df=lf=vu([gu({type:kl.Sequence,itemType:pf})],df);class ff{constructor(t={}){this.algorithm=new rd,this.publicKey=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:rd})],ff.prototype,"algorithm",void 0),vu([yu({type:Nl.BitString})],ff.prototype,"publicKey",void 0);let gf=class{constructor(t={}){Object.assign(this,t)}};vu([yu({type:Yp,context:0,implicit:!0,optional:!0})],gf.prototype,"subjectKeyIdentifier",void 0),vu([yu({type:ff,context:1,implicit:!0,optional:!0})],gf.prototype,"originatorKey",void 0),vu([yu({type:af,optional:!0})],gf.prototype,"issuerAndSerialNumber",void 0),gf=vu([gu({type:kl.Choice})],gf);class yf{constructor(t={}){this.version=Xd.v3,this.originator=new gf,this.keyEncryptionAlgorithm=new tf,this.recipientEncryptedKeys=new df,Object.assign(this,t)}}vu([yu({type:Nl.Integer})],yf.prototype,"version",void 0),vu([yu({type:gf,context:0})],yf.prototype,"originator",void 0),vu([yu({type:Mh,context:1,optional:!0})],yf.prototype,"ukm",void 0),vu([yu({type:tf})],yf.prototype,"keyEncryptionAlgorithm",void 0),vu([yu({type:df})],yf.prototype,"recipientEncryptedKeys",void 0);let mf=class{constructor(t={}){Object.assign(this,t)}};vu([yu({type:Yp,context:0,implicit:!0})],mf.prototype,"subjectKeyIdentifier",void 0),vu([yu({type:af})],mf.prototype,"issuerAndSerialNumber",void 0),mf=vu([gu({type:kl.Choice})],mf);class wf{constructor(t={}){this.version=Xd.v0,this.rid=new mf,this.keyEncryptionAlgorithm=new tf,this.encryptedKey=new Mh,Object.assign(this,t)}}vu([yu({type:Nl.Integer})],wf.prototype,"version",void 0),vu([yu({type:mf})],wf.prototype,"rid",void 0),vu([yu({type:tf})],wf.prototype,"keyEncryptionAlgorithm",void 0),vu([yu({type:Mh})],wf.prototype,"encryptedKey",void 0);class bf{constructor(t={}){this.keyIdentifier=new Mh,Object.assign(this,t)}}vu([yu({type:Mh})],bf.prototype,"keyIdentifier",void 0),vu([yu({type:Nl.GeneralizedTime,optional:!0})],bf.prototype,"date",void 0),vu([yu({type:cf,optional:!0})],bf.prototype,"other",void 0);class Af{constructor(t={}){this.version=Xd.v4,this.kekid=new bf,this.keyEncryptionAlgorithm=new tf,this.encryptedKey=new Mh,Object.assign(this,t)}}vu([yu({type:Nl.Integer})],Af.prototype,"version",void 0),vu([yu({type:bf})],Af.prototype,"kekid",void 0),vu([yu({type:tf})],Af.prototype,"keyEncryptionAlgorithm",void 0),vu([yu({type:Mh})],Af.prototype,"encryptedKey",void 0);class vf{constructor(t={}){this.version=Xd.v0,this.keyEncryptionAlgorithm=new tf,this.encryptedKey=new Mh,Object.assign(this,t)}}vu([yu({type:Nl.Integer})],vf.prototype,"version",void 0),vu([yu({type:nf,context:0,optional:!0})],vf.prototype,"keyDerivationAlgorithm",void 0),vu([yu({type:tf})],vf.prototype,"keyEncryptionAlgorithm",void 0),vu([yu({type:Mh})],vf.prototype,"encryptedKey",void 0);class _f{constructor(t={}){this.oriType="",this.oriValue=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],_f.prototype,"oriType",void 0),vu([yu({type:Nl.Any})],_f.prototype,"oriValue",void 0);let Ef=class{constructor(t={}){Object.assign(this,t)}};var Sf;vu([yu({type:wf,optional:!0})],Ef.prototype,"ktri",void 0),vu([yu({type:yf,context:1,implicit:!0,optional:!0})],Ef.prototype,"kari",void 0),vu([yu({type:Af,context:2,implicit:!0,optional:!0})],Ef.prototype,"kekri",void 0),vu([yu({type:vf,context:3,implicit:!0,optional:!0})],Ef.prototype,"pwri",void 0),vu([yu({type:_f,context:4,implicit:!0,optional:!0})],Ef.prototype,"ori",void 0),Ef=vu([gu({type:kl.Choice})],Ef);let Tf=Sf=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,Sf.prototype)}};var xf;Tf=Sf=vu([gu({type:kl.Set,itemType:Ef})],Tf);class Cf{constructor(t={}){this.otherRevInfoFormat="",this.otherRevInfo=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],Cf.prototype,"otherRevInfoFormat",void 0),vu([yu({type:Nl.Any})],Cf.prototype,"otherRevInfo",void 0);let If=class{constructor(t={}){this.other=new Cf,Object.assign(this,t)}};vu([yu({type:Cf,context:1,implicit:!0})],If.prototype,"other",void 0),If=vu([gu({type:kl.Choice})],If);let Rf=xf=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,xf.prototype)}};Rf=xf=vu([gu({type:kl.Set,itemType:If})],Rf);class kf{constructor(t={}){Object.assign(this,t)}}var Nf;vu([yu({type:Qd,context:0,implicit:!0,optional:!0})],kf.prototype,"certs",void 0),vu([yu({type:Rf,context:1,implicit:!0,optional:!0})],kf.prototype,"crls",void 0);let Of=Nf=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,Nf.prototype)}};Of=Nf=vu([gu({type:kl.Set,itemType:yd})],Of);class Bf{constructor(t={}){this.version=Xd.v0,this.recipientInfos=new Tf,this.encryptedContentInfo=new of,Object.assign(this,t)}}vu([yu({type:Nl.Integer})],Bf.prototype,"version",void 0),vu([yu({type:kf,context:0,implicit:!0,optional:!0})],Bf.prototype,"originatorInfo",void 0),vu([yu({type:Tf})],Bf.prototype,"recipientInfos",void 0),vu([yu({type:of})],Bf.prototype,"encryptedContentInfo",void 0),vu([yu({type:Of,context:1,implicit:!0,optional:!0})],Bf.prototype,"unprotectedAttrs",void 0);let Pf=class{constructor(t={}){Object.assign(this,t)}};var Df;vu([yu({type:Yp,context:0,implicit:!0})],Pf.prototype,"subjectKeyIdentifier",void 0),vu([yu({type:af})],Pf.prototype,"issuerAndSerialNumber",void 0),Pf=vu([gu({type:kl.Choice})],Pf);class Lf{constructor(t={}){this.version=Xd.v0,this.sid=new Pf,this.digestAlgorithm=new Zd,this.signatureAlgorithm=new $d,this.signature=new Mh,Object.assign(this,t)}}vu([yu({type:Nl.Integer})],Lf.prototype,"version",void 0),vu([yu({type:Pf})],Lf.prototype,"sid",void 0),vu([yu({type:Zd})],Lf.prototype,"digestAlgorithm",void 0),vu([yu({type:yd,repeated:"set",context:0,implicit:!0,optional:!0})],Lf.prototype,"signedAttrs",void 0),vu([yu({type:$d})],Lf.prototype,"signatureAlgorithm",void 0),vu([yu({type:Mh})],Lf.prototype,"signature",void 0),vu([yu({type:yd,repeated:"set",context:1,implicit:!0,optional:!0})],Lf.prototype,"unsignedAttrs",void 0);let Uf=Df=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,Df.prototype)}};var Mf;Uf=Df=vu([gu({type:kl.Set,itemType:Lf})],Uf);let Ff=Mf=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,Mf.prototype)}};Ff=Mf=vu([gu({type:kl.Set,itemType:Zd})],Ff);class Hf{constructor(t={}){this.version=Xd.v0,this.digestAlgorithms=new Ff,this.encapContentInfo=new Jd,this.signerInfos=new Uf,Object.assign(this,t)}}vu([yu({type:Nl.Integer})],Hf.prototype,"version",void 0),vu([yu({type:Ff})],Hf.prototype,"digestAlgorithms",void 0),vu([yu({type:Jd})],Hf.prototype,"encapContentInfo",void 0),vu([yu({type:Qd,context:0,implicit:!0,optional:!0})],Hf.prototype,"certificates",void 0),vu([yu({type:If,context:1,implicit:!0,optional:!0})],Hf.prototype,"crls",void 0),vu([yu({type:Uf})],Hf.prototype,"signerInfos",void 0);const jf="1.2.840.10045.2.1",Wf="1.2.840.10045.4.1",Vf="1.2.840.10045.4.3.1",Gf="1.2.840.10045.4.3.2",zf="1.2.840.10045.4.3.3",qf="1.2.840.10045.4.3.4",Qf="1.2.840.10045.3.1.7",Kf="1.3.132.0.34",Yf="1.3.132.0.35";function Jf(t){return new rd({algorithm:t})}const Xf=Jf(Wf),Zf=(Jf(Vf),Jf(Gf)),$f=Jf(zf),tg=Jf(qf);let eg=class{constructor(t={}){Object.assign(this,t)}};vu([yu({type:Nl.ObjectIdentifier})],eg.prototype,"namedCurve",void 0),eg=vu([gu({type:kl.Choice})],eg);class rg{constructor(t={}){this.version=1,this.privateKey=new Mh,Object.assign(this,t)}}vu([yu({type:Nl.Integer})],rg.prototype,"version",void 0),vu([yu({type:Mh})],rg.prototype,"privateKey",void 0),vu([yu({type:eg,context:0,optional:!0})],rg.prototype,"parameters",void 0),vu([yu({type:Nl.BitString,context:1,optional:!0})],rg.prototype,"publicKey",void 0);class ig{constructor(t={}){this.r=new ArrayBuffer(0),this.s=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Nl.Integer,converter:Wh})],ig.prototype,"r",void 0),vu([yu({type:Nl.Integer,converter:Wh})],ig.prototype,"s",void 0);const ng="1.2.840.113549.1.1",sg=`${ng}.1`,og=`${ng}.7`,ag=`${ng}.9`,cg=`${ng}.10`,lg=`${ng}.2`,hg=`${ng}.4`,ug=`${ng}.5`,pg=`${ng}.14`,dg=`${ng}.11`,fg=`${ng}.12`,gg=`${ng}.13`,yg=`${ng}.15`,mg=`${ng}.16`,wg="1.3.14.3.2.26",bg="2.16.840.1.101.3.4.2.4",Ag="2.16.840.1.101.3.4.2.1",vg="2.16.840.1.101.3.4.2.2",_g="2.16.840.1.101.3.4.2.3",Eg=`${ng}.8`;function Sg(t){return new rd({algorithm:t,parameters:null})}Sg("1.2.840.113549.2.2"),Sg("1.2.840.113549.2.5");const Tg=Sg(wg),xg=(Sg(bg),Sg(Ag),Sg(vg),Sg(_g),Sg("2.16.840.1.101.3.4.2.5"),Sg("2.16.840.1.101.3.4.2.6"),new rd({algorithm:Eg,parameters:Au.serialize(Tg)})),Cg=new rd({algorithm:ag,parameters:Au.serialize(qh.toASN(new Uint8Array([218,57,163,238,94,107,75,13,50,85,191,239,149,96,24,144,175,216,7,9]).buffer))});Sg(sg),Sg(lg),Sg(hg),Sg(ug),Sg(yg),Sg(mg),Sg(fg),Sg(gg),Sg(yg),Sg(mg);class Ig{constructor(t={}){this.hashAlgorithm=new rd(Tg),this.maskGenAlgorithm=new rd({algorithm:Eg,parameters:Au.serialize(Tg)}),this.pSourceAlgorithm=new rd(Cg),Object.assign(this,t)}}vu([yu({type:rd,context:0,defaultValue:Tg})],Ig.prototype,"hashAlgorithm",void 0),vu([yu({type:rd,context:1,defaultValue:xg})],Ig.prototype,"maskGenAlgorithm",void 0),vu([yu({type:rd,context:2,defaultValue:Cg})],Ig.prototype,"pSourceAlgorithm",void 0),new rd({algorithm:og,parameters:Au.serialize(new Ig)});class Rg{constructor(t={}){this.hashAlgorithm=new rd(Tg),this.maskGenAlgorithm=new rd({algorithm:Eg,parameters:Au.serialize(Tg)}),this.saltLength=20,this.trailerField=1,Object.assign(this,t)}}vu([yu({type:rd,context:0,defaultValue:Tg})],Rg.prototype,"hashAlgorithm",void 0),vu([yu({type:rd,context:1,defaultValue:xg})],Rg.prototype,"maskGenAlgorithm",void 0),vu([yu({type:Nl.Integer,context:2,defaultValue:20})],Rg.prototype,"saltLength",void 0),vu([yu({type:Nl.Integer,context:3,defaultValue:1})],Rg.prototype,"trailerField",void 0),new rd({algorithm:cg,parameters:Au.serialize(new Rg)});class kg{constructor(t={}){this.digestAlgorithm=new rd,this.digest=new Mh,Object.assign(this,t)}}var Ng;vu([yu({type:rd})],kg.prototype,"digestAlgorithm",void 0),vu([yu({type:Mh})],kg.prototype,"digest",void 0);class Og{constructor(t={}){this.prime=new ArrayBuffer(0),this.exponent=new ArrayBuffer(0),this.coefficient=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Nl.Integer,converter:Wh})],Og.prototype,"prime",void 0),vu([yu({type:Nl.Integer,converter:Wh})],Og.prototype,"exponent",void 0),vu([yu({type:Nl.Integer,converter:Wh})],Og.prototype,"coefficient",void 0);let Bg=Ng=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,Ng.prototype)}};Bg=Ng=vu([gu({type:kl.Sequence,itemType:Og})],Bg);class Pg{constructor(t={}){this.version=0,this.modulus=new ArrayBuffer(0),this.publicExponent=new ArrayBuffer(0),this.privateExponent=new ArrayBuffer(0),this.prime1=new ArrayBuffer(0),this.prime2=new ArrayBuffer(0),this.exponent1=new ArrayBuffer(0),this.exponent2=new ArrayBuffer(0),this.coefficient=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Nl.Integer})],Pg.prototype,"version",void 0),vu([yu({type:Nl.Integer,converter:Wh})],Pg.prototype,"modulus",void 0),vu([yu({type:Nl.Integer,converter:Wh})],Pg.prototype,"publicExponent",void 0),vu([yu({type:Nl.Integer,converter:Wh})],Pg.prototype,"privateExponent",void 0),vu([yu({type:Nl.Integer,converter:Wh})],Pg.prototype,"prime1",void 0),vu([yu({type:Nl.Integer,converter:Wh})],Pg.prototype,"prime2",void 0),vu([yu({type:Nl.Integer,converter:Wh})],Pg.prototype,"exponent1",void 0),vu([yu({type:Nl.Integer,converter:Wh})],Pg.prototype,"exponent2",void 0),vu([yu({type:Nl.Integer,converter:Wh})],Pg.prototype,"coefficient",void 0),vu([yu({type:Bg,optional:!0})],Pg.prototype,"otherPrimeInfos",void 0);class Dg{constructor(t={}){this.modulus=new ArrayBuffer(0),this.publicExponent=new ArrayBuffer(0),Object.assign(this,t)}}function Lg(t,e,r,i){var n,s=arguments.length,o=s<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,r,i);else for(var a=t.length-1;a>=0;a--)(n=t[a])&&(o=(s<3?n(o):s>3?n(e,r,o):n(e,r))||o);return s>3&&o&&Object.defineProperty(e,r,o),o}var Ug;vu([yu({type:Nl.Integer,converter:Wh})],Dg.prototype,"modulus",void 0),vu([yu({type:Nl.Integer,converter:Wh})],Dg.prototype,"publicExponent",void 0),Object.create,Object.create,function(t){t[t.Transient=0]="Transient",t[t.Singleton=1]="Singleton",t[t.ResolutionScoped=2]="ResolutionScoped",t[t.ContainerScoped=3]="ContainerScoped"}(Ug||(Ug={}));const Mg=Ug;
81
81
  /*! *****************************************************************************
82
82
  Copyright (c) Microsoft Corporation.
83
83
 
@@ -91,7 +91,7 @@ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
91
91
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
92
92
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
93
93
  PERFORMANCE OF THIS SOFTWARE.
94
- ***************************************************************************** */var Mg=function(t,e){return Mg=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},Mg(t,e)};function Fg(t,e){function r(){this.constructor=t}Mg(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}function Hg(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],i=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function jg(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var i,n,s=r.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(i=s.next()).done;)o.push(i.value)}catch(t){n={error:t}}finally{try{i&&!i.done&&(r=s.return)&&r.call(s)}finally{if(n)throw n.error}}return o}function Wg(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(jg(arguments[e]));return t}function Vg(t){return!!t.useClass}function Gg(t){return!!t.useFactory}var zg=function(){function t(t){this.wrap=t,this.reflectMethods=["get","getPrototypeOf","setPrototypeOf","getOwnPropertyDescriptor","defineProperty","has","set","deleteProperty","apply","construct","ownKeys"]}return t.prototype.createProxy=function(t){var e,r=this,i=!1;return new Proxy({},this.createHandler((function(){return i||(e=t(r.wrap()),i=!0),e})))},t.prototype.createHandler=function(t){var e={};return this.reflectMethods.forEach((function(r){e[r]=function(){for(var e=[],i=0;i<arguments.length;i++)e[i]=arguments[i];return e[0]=t(),Reflect[r].apply(void 0,Wg(e))}})),e},t}();function qg(t){return"string"==typeof t||"symbol"==typeof t}function Qg(t){return"object"==typeof t&&"token"in t&&"transform"in t}function Kg(t){return!!t.useToken}function Yg(t){return null!=t.useValue}const Jg=function(){function t(){this._registryMap=new Map}return t.prototype.entries=function(){return this._registryMap.entries()},t.prototype.getAll=function(t){return this.ensure(t),this._registryMap.get(t)},t.prototype.get=function(t){this.ensure(t);var e=this._registryMap.get(t);return e[e.length-1]||null},t.prototype.set=function(t,e){this.ensure(t),this._registryMap.get(t).push(e)},t.prototype.setAll=function(t,e){this._registryMap.set(t,e)},t.prototype.has=function(t){return this.ensure(t),this._registryMap.get(t).length>0},t.prototype.clear=function(){this._registryMap.clear()},t.prototype.ensure=function(t){this._registryMap.has(t)||this._registryMap.set(t,[])},t}(),Xg=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Fg(e,t),e}(Jg),Zg=function(){this.scopedResolutions=new Map};var $g=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Fg(e,t),e}(Jg),ty=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Fg(e,t),e}(Jg);const ey=function(){this.preResolution=new $g,this.postResolution=new ty};var ry=new Map,iy=function(){function t(t){this.parent=t,this._registry=new Xg,this.interceptors=new ey,this.disposed=!1,this.disposables=new Set}return t.prototype.register=function(t,e,r){var i;if(void 0===r&&(r={lifecycle:Ug.Transient}),this.ensureNotDisposed(),i=function(t){return Vg(t)||Yg(t)||Kg(t)||Gg(t)}(e)?e:{useClass:e},Kg(i))for(var n=[t],s=i;null!=s;){var o=s.useToken;if(n.includes(o))throw new Error("Token registration cycle detected! "+Wg(n,[o]).join(" -> "));n.push(o);var a=this._registry.get(o);s=a&&Kg(a.provider)?a.provider:null}if((r.lifecycle===Ug.Singleton||r.lifecycle==Ug.ContainerScoped||r.lifecycle==Ug.ResolutionScoped)&&(Yg(i)||Gg(i)))throw new Error('Cannot use lifecycle "'+Ug[r.lifecycle]+'" with ValueProviders or FactoryProviders');return this._registry.set(t,{provider:i,options:r}),this},t.prototype.registerType=function(t,e){return this.ensureNotDisposed(),qg(e)?this.register(t,{useToken:e}):this.register(t,{useClass:e})},t.prototype.registerInstance=function(t,e){return this.ensureNotDisposed(),this.register(t,{useValue:e})},t.prototype.registerSingleton=function(t,e){if(this.ensureNotDisposed(),qg(t)){if(qg(e))return this.register(t,{useToken:e},{lifecycle:Ug.Singleton});if(e)return this.register(t,{useClass:e},{lifecycle:Ug.Singleton});throw new Error('Cannot register a type name as a singleton without a "to" token')}var r=t;return e&&!qg(e)&&(r=e),this.register(t,{useClass:r},{lifecycle:Ug.Singleton})},t.prototype.resolve=function(t,e){void 0===e&&(e=new Zg),this.ensureNotDisposed();var r=this.getRegistration(t);if(!r&&qg(t))throw new Error('Attempted to resolve unregistered dependency token: "'+t.toString()+'"');if(this.executePreResolutionInterceptor(t,"Single"),r){var i=this.resolveRegistration(r,e);return this.executePostResolutionInterceptor(t,i,"Single"),i}if(function(t){return"function"==typeof t||t instanceof zg}(t))return i=this.construct(t,e),this.executePostResolutionInterceptor(t,i,"Single"),i;throw new Error("Attempted to construct an undefined constructor. Could mean a circular dependency problem. Try using `delay` function.")},t.prototype.executePreResolutionInterceptor=function(t,e){var r,i;if(this.interceptors.preResolution.has(t)){var n=[];try{for(var s=Hg(this.interceptors.preResolution.getAll(t)),o=s.next();!o.done;o=s.next()){var a=o.value;"Once"!=a.options.frequency&&n.push(a),a.callback(t,e)}}catch(t){r={error:t}}finally{try{o&&!o.done&&(i=s.return)&&i.call(s)}finally{if(r)throw r.error}}this.interceptors.preResolution.setAll(t,n)}},t.prototype.executePostResolutionInterceptor=function(t,e,r){var i,n;if(this.interceptors.postResolution.has(t)){var s=[];try{for(var o=Hg(this.interceptors.postResolution.getAll(t)),a=o.next();!a.done;a=o.next()){var c=a.value;"Once"!=c.options.frequency&&s.push(c),c.callback(t,e,r)}}catch(t){i={error:t}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}this.interceptors.postResolution.setAll(t,s)}},t.prototype.resolveRegistration=function(t,e){if(this.ensureNotDisposed(),t.options.lifecycle===Ug.ResolutionScoped&&e.scopedResolutions.has(t))return e.scopedResolutions.get(t);var r,i=t.options.lifecycle===Ug.Singleton,n=t.options.lifecycle===Ug.ContainerScoped,s=i||n;return r=Yg(t.provider)?t.provider.useValue:Kg(t.provider)?s?t.instance||(t.instance=this.resolve(t.provider.useToken,e)):this.resolve(t.provider.useToken,e):Vg(t.provider)?s?t.instance||(t.instance=this.construct(t.provider.useClass,e)):this.construct(t.provider.useClass,e):Gg(t.provider)?t.provider.useFactory(this):this.construct(t.provider,e),t.options.lifecycle===Ug.ResolutionScoped&&e.scopedResolutions.set(t,r),r},t.prototype.resolveAll=function(t,e){var r=this;void 0===e&&(e=new Zg),this.ensureNotDisposed();var i=this.getAllRegistrations(t);if(!i&&qg(t))throw new Error('Attempted to resolve unregistered dependency token: "'+t.toString()+'"');if(this.executePreResolutionInterceptor(t,"All"),i){var n=i.map((function(t){return r.resolveRegistration(t,e)}));return this.executePostResolutionInterceptor(t,n,"All"),n}var s=[this.construct(t,e)];return this.executePostResolutionInterceptor(t,s,"All"),s},t.prototype.isRegistered=function(t,e){return void 0===e&&(e=!1),this.ensureNotDisposed(),this._registry.has(t)||e&&(this.parent||!1)&&this.parent.isRegistered(t,!0)},t.prototype.reset=function(){this.ensureNotDisposed(),this._registry.clear(),this.interceptors.preResolution.clear(),this.interceptors.postResolution.clear()},t.prototype.clearInstances=function(){var t,e;this.ensureNotDisposed();try{for(var r=Hg(this._registry.entries()),i=r.next();!i.done;i=r.next()){var n=jg(i.value,2),s=n[0],o=n[1];this._registry.setAll(s,o.filter((function(t){return!Yg(t.provider)})).map((function(t){return t.instance=void 0,t})))}}catch(e){t={error:e}}finally{try{i&&!i.done&&(e=r.return)&&e.call(r)}finally{if(t)throw t.error}}},t.prototype.createChildContainer=function(){var e,r;this.ensureNotDisposed();var i=new t(this);try{for(var n=Hg(this._registry.entries()),s=n.next();!s.done;s=n.next()){var o=jg(s.value,2),a=o[0],c=o[1];c.some((function(t){return t.options.lifecycle===Ug.ContainerScoped}))&&i._registry.setAll(a,c.map((function(t){return t.options.lifecycle===Ug.ContainerScoped?{provider:t.provider,options:t.options}:t})))}}catch(t){e={error:t}}finally{try{s&&!s.done&&(r=n.return)&&r.call(n)}finally{if(e)throw e.error}}return i},t.prototype.beforeResolution=function(t,e,r){void 0===r&&(r={frequency:"Always"}),this.interceptors.preResolution.set(t,{callback:e,options:r})},t.prototype.afterResolution=function(t,e,r){void 0===r&&(r={frequency:"Always"}),this.interceptors.postResolution.set(t,{callback:e,options:r})},t.prototype.dispose=function(){return function(t,e,r,i){return new(r||(r=Promise))((function(n,s){function o(t){try{c(i.next(t))}catch(t){s(t)}}function a(t){try{c(i.throw(t))}catch(t){s(t)}}function c(t){var e;t.done?n(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(o,a)}c((i=i.apply(t,e||[])).next())}))}(this,void 0,void 0,(function(){var t;return function(t,e){var r,i,n,s,o={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(s){return function(a){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;o;)try{if(r=1,i&&(n=2&s[0]?i.return:s[0]?i.throw||((n=i.return)&&n.call(i),0):i.next)&&!(n=n.call(i,s[1])).done)return n;switch(i=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,i=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!((n=(n=o.trys).length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){o.label=s[1];break}if(6===s[0]&&o.label<n[1]){o.label=n[1],n=s;break}if(n&&o.label<n[2]){o.label=n[2],o.ops.push(s);break}n[2]&&o.ops.pop(),o.trys.pop();continue}s=e.call(t,o)}catch(t){s=[6,t],i=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,a])}}}(this,(function(e){switch(e.label){case 0:return this.disposed=!0,t=[],this.disposables.forEach((function(e){var r=e.dispose();r&&t.push(r)})),[4,Promise.all(t)];case 1:return e.sent(),[2]}}))}))},t.prototype.getRegistration=function(t){return this.isRegistered(t)?this._registry.get(t):this.parent?this.parent.getRegistration(t):null},t.prototype.getAllRegistrations=function(t){return this.isRegistered(t)?this._registry.getAll(t):this.parent?this.parent.getAllRegistrations(t):null},t.prototype.construct=function(t,e){var r=this;if(t instanceof zg)return t.createProxy((function(t){return r.resolve(t,e)}));var i,n=function(){var i=ry.get(t);if(!i||0===i.length){if(0===t.length)return new t;throw new Error('TypeInfo not known for "'+t.name+'"')}var n=i.map(r.resolveParams(e,t));return new(t.bind.apply(t,Wg([void 0],n)))}();return"function"!=typeof(i=n).dispose||i.dispose.length>0||this.disposables.add(n),n},t.prototype.resolveParams=function(t,e){var r=this;return function(i,n){var s,o,a,c;try{return"object"==typeof(c=i)&&"token"in c&&"multiple"in c?Qg(i)?i.multiple?(s=r.resolve(i.transform)).transform.apply(s,Wg([r.resolveAll(i.token)],i.transformArgs)):(o=r.resolve(i.transform)).transform.apply(o,Wg([r.resolve(i.token,t)],i.transformArgs)):i.multiple?r.resolveAll(i.token):r.resolve(i.token,t):Qg(i)?(a=r.resolve(i.transform,t)).transform.apply(a,Wg([r.resolve(i.token,t)],i.transformArgs)):r.resolve(i,t)}catch(t){throw new Error(function(t,e,r){var i,n,s=jg(t.toString().match(/constructor\(([\w, ]+)\)/)||[],2)[1],o=function(t,e){return null===t?"at position #"+e:'"'+t.split(",")[e].trim()+'" at position #'+e}(void 0===s?null:s,e);return i="Cannot inject the dependency "+o+' of "'+t.name+'" constructor. Reason:',void 0===n&&(n=" "),Wg([i],r.message.split("\n").map((function(t){return n+t}))).join("\n")}(e,n,t))}}},t.prototype.ensureNotDisposed=function(){if(this.disposed)throw new Error("This container has been disposed, you cannot interact with a disposed container")},t}(),ny=new iy;const sy=function(){return function(t){ry.set(t,function(t){var e=Reflect.getMetadata("design:paramtypes",t)||[],r=Reflect.getOwnMetadata("injectionTokens",t)||{};return Object.keys(r).forEach((function(t){e[+t]=r[t]})),e}(t))}};if("undefined"==typeof Reflect||!Reflect.getMetadata)throw new Error("tsyringe requires a reflect polyfill. Please add 'import \"reflect-metadata\"' to the top of your entry point.");var oy;class ay{constructor(t={}){this.attrId="",this.attrValues=[],Object.assign(t)}}Au([gu({type:kl.ObjectIdentifier})],ay.prototype,"attrId",void 0),Au([gu({type:kl.Any,repeated:"set"})],ay.prototype,"attrValues",void 0);let cy=oy=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,oy.prototype)}};var ly;cy=oy=Au([fu({type:Rl.Sequence,itemType:ay})],cy);let hy=ly=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,ly.prototype)}};hy=ly=Au([fu({type:Rl.Sequence,itemType:Qd})],hy);class uy{constructor(t={}){this.certId="",this.certValue=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],uy.prototype,"certId",void 0),Au([gu({type:kl.Any,context:0})],uy.prototype,"certValue",void 0);class py{constructor(t={}){this.crlId="",this.crltValue=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],py.prototype,"crlId",void 0),Au([gu({type:kl.Any,context:0})],py.prototype,"crltValue",void 0);class dy extends Uh{}class fy{constructor(t={}){this.encryptionAlgorithm=new ed,this.encryptedData=new dy,Object.assign(this,t)}}var gy,yy;Au([gu({type:ed})],fy.prototype,"encryptionAlgorithm",void 0),Au([gu({type:dy})],fy.prototype,"encryptedData",void 0),function(t){t[t.v1=0]="v1"}(yy||(yy={}));class my extends Uh{}let wy=gy=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,gy.prototype)}};wy=gy=Au([fu({type:Rl.Sequence,itemType:Gp})],wy);class by{constructor(t={}){this.version=yy.v1,this.privateKeyAlgorithm=new ed,this.privateKey=new my,Object.assign(this,t)}}Au([gu({type:kl.Integer})],by.prototype,"version",void 0),Au([gu({type:ed})],by.prototype,"privateKeyAlgorithm",void 0),Au([gu({type:my})],by.prototype,"privateKey",void 0),Au([gu({type:wy,implicit:!0,context:0,optional:!0})],by.prototype,"attributes",void 0);let Ay=class extends by{};Ay=Au([fu({type:Rl.Sequence})],Ay);let vy=class extends fy{};vy=Au([fu({type:Rl.Sequence})],vy);class _y{constructor(t={}){this.secretTypeId="",this.secretValue=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],_y.prototype,"secretTypeId",void 0),Au([gu({type:kl.Any,context:0})],_y.prototype,"secretValue",void 0);class Ey{constructor(t={}){this.mac=new Rg,this.macSalt=new Uh,this.iterations=1,Object.assign(this,t)}}Au([gu({type:Rg})],Ey.prototype,"mac",void 0),Au([gu({type:Uh})],Ey.prototype,"macSalt",void 0),Au([gu({type:kl.Integer,defaultValue:1})],Ey.prototype,"iterations",void 0);class Sy{constructor(t={}){this.version=3,this.authSafe=new Qd,this.macData=new Ey,Object.assign(this,t)}}var Ty;Au([gu({type:kl.Integer})],Sy.prototype,"version",void 0),Au([gu({type:Qd})],Sy.prototype,"authSafe",void 0),Au([gu({type:Ey,optional:!0})],Sy.prototype,"macData",void 0);class xy{constructor(t={}){this.bagId="",this.bagValue=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:kl.ObjectIdentifier})],xy.prototype,"bagId",void 0),Au([gu({type:kl.Any,context:0})],xy.prototype,"bagValue",void 0),Au([gu({type:ay,repeated:"set",optional:!0})],xy.prototype,"bagAttributes",void 0);let Cy=Ty=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,Ty.prototype)}};var Iy,Ry,ky;Cy=Ty=Au([fu({type:Rl.Sequence,itemType:xy})],Cy);const Ny="1.2.840.113549.1.9",Oy=`${Ny}.7`,By=`${Ny}.14`;let Py=class extends xu{constructor(t={}){super(t)}toString(){return{}.toString(),this.ia5String||super.toString()}};Au([gu({type:kl.IA5String})],Py.prototype,"ia5String",void 0),Py=Au([fu({type:Rl.Choice})],Py);let Dy=class extends Qd{};Dy=Au([fu({type:Rl.Sequence})],Dy);let Ly=class extends Sy{};Ly=Au([fu({type:Rl.Sequence})],Ly);let Uy=class extends fy{};Uy=Au([fu({type:Rl.Sequence})],Uy);let My=class{constructor(t=""){this.value=t}toString(){return this.value}};Au([gu({type:kl.IA5String})],My.prototype,"value",void 0),My=Au([fu({type:Rl.Choice})],My);let Fy=class extends Py{};Fy=Au([fu({type:Rl.Choice})],Fy);let Hy=class extends xu{};Hy=Au([fu({type:Rl.Choice})],Hy);let jy=class{constructor(t=new Date){this.value=t}};Au([gu({type:kl.GeneralizedTime})],jy.prototype,"value",void 0),jy=Au([fu({type:Rl.Choice})],jy);let Wy=class extends xu{};Wy=Au([fu({type:Rl.Choice})],Wy);let Vy=class{constructor(t="M"){this.value=t}toString(){return this.value}};Au([gu({type:kl.PrintableString})],Vy.prototype,"value",void 0),Vy=Au([fu({type:Rl.Choice})],Vy);let Gy=class{constructor(t=""){this.value=t}toString(){return this.value}};Au([gu({type:kl.PrintableString})],Gy.prototype,"value",void 0),Gy=Au([fu({type:Rl.Choice})],Gy);let zy=class extends Gy{};zy=Au([fu({type:Rl.Choice})],zy);let qy=class extends xu{};qy=Au([fu({type:Rl.Choice})],qy);let Qy=class{constructor(t=""){this.value=t}toString(){return this.value}};Au([gu({type:kl.ObjectIdentifier})],Qy.prototype,"value",void 0),Qy=Au([fu({type:Rl.Choice})],Qy);let Ky=class extends id{};Ky=Au([fu({type:Rl.Choice})],Ky);let Yy=class{constructor(t=0){this.value=t}toString(){return this.value.toString()}};Au([gu({type:kl.Integer})],Yy.prototype,"value",void 0),Yy=Au([fu({type:Rl.Choice})],Yy);let Jy=class extends Df{};Jy=Au([fu({type:Rl.Sequence})],Jy);let Xy=class extends xu{};Xy=Au([fu({type:Rl.Choice})],Xy);let Zy=Iy=class extends ad{constructor(t){super(t),Object.setPrototypeOf(this,Iy.prototype)}};Zy=Iy=Au([fu({type:Rl.Sequence})],Zy);let $y=Ry=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,Ry.prototype)}};$y=Ry=Au([fu({type:Rl.Set,itemType:gd})],$y);let tm=class{constructor(t=""){this.value=t}toString(){return this.value}};Au([gu({type:kl.BmpString})],tm.prototype,"value",void 0),tm=Au([fu({type:Rl.Choice})],tm);let em=class extends ed{};em=Au([fu({type:Rl.Sequence})],em);let rm=ky=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,ky.prototype)}};var im;rm=ky=Au([fu({type:Rl.Sequence,itemType:em})],rm);let nm=im=class extends wu{constructor(t){super(t),Object.setPrototypeOf(this,im.prototype)}};nm=im=Au([fu({type:Rl.Sequence,itemType:Gp})],nm);class sm{constructor(t={}){this.version=0,this.subject=new Nu,this.subjectPKInfo=new rd,this.attributes=new nm,Object.assign(this,t)}}Au([gu({type:kl.Integer})],sm.prototype,"version",void 0),Au([gu({type:Nu})],sm.prototype,"subject",void 0),Au([gu({type:rd})],sm.prototype,"subjectPKInfo",void 0),Au([gu({type:nm,implicit:!0,context:0})],sm.prototype,"attributes",void 0);class om{constructor(t={}){this.certificationRequestInfo=new sm,this.signatureAlgorithm=new ed,this.signature=new ArrayBuffer(0),Object.assign(this,t)}}Au([gu({type:sm})],om.prototype,"certificationRequestInfo",void 0),Au([gu({type:ed})],om.prototype,"signatureAlgorithm",void 0),Au([gu({type:kl.BitString})],om.prototype,"signature",void 0);
94
+ ***************************************************************************** */var Fg=function(t,e){return Fg=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},Fg(t,e)};function Hg(t,e){function r(){this.constructor=t}Fg(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}function jg(t){var e="function"==typeof Symbol&&Symbol.iterator,r=e&&t[e],i=0;if(r)return r.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Wg(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var i,n,s=r.call(t),o=[];try{for(;(void 0===e||e-- >0)&&!(i=s.next()).done;)o.push(i.value)}catch(t){n={error:t}}finally{try{i&&!i.done&&(r=s.return)&&r.call(s)}finally{if(n)throw n.error}}return o}function Vg(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(Wg(arguments[e]));return t}function Gg(t){return!!t.useClass}function zg(t){return!!t.useFactory}var qg=function(){function t(t){this.wrap=t,this.reflectMethods=["get","getPrototypeOf","setPrototypeOf","getOwnPropertyDescriptor","defineProperty","has","set","deleteProperty","apply","construct","ownKeys"]}return t.prototype.createProxy=function(t){var e,r=this,i=!1;return new Proxy({},this.createHandler((function(){return i||(e=t(r.wrap()),i=!0),e})))},t.prototype.createHandler=function(t){var e={};return this.reflectMethods.forEach((function(r){e[r]=function(){for(var e=[],i=0;i<arguments.length;i++)e[i]=arguments[i];return e[0]=t(),Reflect[r].apply(void 0,Vg(e))}})),e},t}();function Qg(t){return"string"==typeof t||"symbol"==typeof t}function Kg(t){return"object"==typeof t&&"token"in t&&"transform"in t}function Yg(t){return!!t.useToken}function Jg(t){return null!=t.useValue}const Xg=function(){function t(){this._registryMap=new Map}return t.prototype.entries=function(){return this._registryMap.entries()},t.prototype.getAll=function(t){return this.ensure(t),this._registryMap.get(t)},t.prototype.get=function(t){this.ensure(t);var e=this._registryMap.get(t);return e[e.length-1]||null},t.prototype.set=function(t,e){this.ensure(t),this._registryMap.get(t).push(e)},t.prototype.setAll=function(t,e){this._registryMap.set(t,e)},t.prototype.has=function(t){return this.ensure(t),this._registryMap.get(t).length>0},t.prototype.clear=function(){this._registryMap.clear()},t.prototype.ensure=function(t){this._registryMap.has(t)||this._registryMap.set(t,[])},t}(),Zg=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Hg(e,t),e}(Xg),$g=function(){this.scopedResolutions=new Map};var ty=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Hg(e,t),e}(Xg),ey=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Hg(e,t),e}(Xg);const ry=function(){this.preResolution=new ty,this.postResolution=new ey};var iy=new Map,ny=function(){function t(t){this.parent=t,this._registry=new Zg,this.interceptors=new ry,this.disposed=!1,this.disposables=new Set}return t.prototype.register=function(t,e,r){var i;if(void 0===r&&(r={lifecycle:Mg.Transient}),this.ensureNotDisposed(),i=function(t){return Gg(t)||Jg(t)||Yg(t)||zg(t)}(e)?e:{useClass:e},Yg(i))for(var n=[t],s=i;null!=s;){var o=s.useToken;if(n.includes(o))throw new Error("Token registration cycle detected! "+Vg(n,[o]).join(" -> "));n.push(o);var a=this._registry.get(o);s=a&&Yg(a.provider)?a.provider:null}if((r.lifecycle===Mg.Singleton||r.lifecycle==Mg.ContainerScoped||r.lifecycle==Mg.ResolutionScoped)&&(Jg(i)||zg(i)))throw new Error('Cannot use lifecycle "'+Mg[r.lifecycle]+'" with ValueProviders or FactoryProviders');return this._registry.set(t,{provider:i,options:r}),this},t.prototype.registerType=function(t,e){return this.ensureNotDisposed(),Qg(e)?this.register(t,{useToken:e}):this.register(t,{useClass:e})},t.prototype.registerInstance=function(t,e){return this.ensureNotDisposed(),this.register(t,{useValue:e})},t.prototype.registerSingleton=function(t,e){if(this.ensureNotDisposed(),Qg(t)){if(Qg(e))return this.register(t,{useToken:e},{lifecycle:Mg.Singleton});if(e)return this.register(t,{useClass:e},{lifecycle:Mg.Singleton});throw new Error('Cannot register a type name as a singleton without a "to" token')}var r=t;return e&&!Qg(e)&&(r=e),this.register(t,{useClass:r},{lifecycle:Mg.Singleton})},t.prototype.resolve=function(t,e){void 0===e&&(e=new $g),this.ensureNotDisposed();var r=this.getRegistration(t);if(!r&&Qg(t))throw new Error('Attempted to resolve unregistered dependency token: "'+t.toString()+'"');if(this.executePreResolutionInterceptor(t,"Single"),r){var i=this.resolveRegistration(r,e);return this.executePostResolutionInterceptor(t,i,"Single"),i}if(function(t){return"function"==typeof t||t instanceof qg}(t))return i=this.construct(t,e),this.executePostResolutionInterceptor(t,i,"Single"),i;throw new Error("Attempted to construct an undefined constructor. Could mean a circular dependency problem. Try using `delay` function.")},t.prototype.executePreResolutionInterceptor=function(t,e){var r,i;if(this.interceptors.preResolution.has(t)){var n=[];try{for(var s=jg(this.interceptors.preResolution.getAll(t)),o=s.next();!o.done;o=s.next()){var a=o.value;"Once"!=a.options.frequency&&n.push(a),a.callback(t,e)}}catch(t){r={error:t}}finally{try{o&&!o.done&&(i=s.return)&&i.call(s)}finally{if(r)throw r.error}}this.interceptors.preResolution.setAll(t,n)}},t.prototype.executePostResolutionInterceptor=function(t,e,r){var i,n;if(this.interceptors.postResolution.has(t)){var s=[];try{for(var o=jg(this.interceptors.postResolution.getAll(t)),a=o.next();!a.done;a=o.next()){var c=a.value;"Once"!=c.options.frequency&&s.push(c),c.callback(t,e,r)}}catch(t){i={error:t}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}this.interceptors.postResolution.setAll(t,s)}},t.prototype.resolveRegistration=function(t,e){if(this.ensureNotDisposed(),t.options.lifecycle===Mg.ResolutionScoped&&e.scopedResolutions.has(t))return e.scopedResolutions.get(t);var r,i=t.options.lifecycle===Mg.Singleton,n=t.options.lifecycle===Mg.ContainerScoped,s=i||n;return r=Jg(t.provider)?t.provider.useValue:Yg(t.provider)?s?t.instance||(t.instance=this.resolve(t.provider.useToken,e)):this.resolve(t.provider.useToken,e):Gg(t.provider)?s?t.instance||(t.instance=this.construct(t.provider.useClass,e)):this.construct(t.provider.useClass,e):zg(t.provider)?t.provider.useFactory(this):this.construct(t.provider,e),t.options.lifecycle===Mg.ResolutionScoped&&e.scopedResolutions.set(t,r),r},t.prototype.resolveAll=function(t,e){var r=this;void 0===e&&(e=new $g),this.ensureNotDisposed();var i=this.getAllRegistrations(t);if(!i&&Qg(t))throw new Error('Attempted to resolve unregistered dependency token: "'+t.toString()+'"');if(this.executePreResolutionInterceptor(t,"All"),i){var n=i.map((function(t){return r.resolveRegistration(t,e)}));return this.executePostResolutionInterceptor(t,n,"All"),n}var s=[this.construct(t,e)];return this.executePostResolutionInterceptor(t,s,"All"),s},t.prototype.isRegistered=function(t,e){return void 0===e&&(e=!1),this.ensureNotDisposed(),this._registry.has(t)||e&&(this.parent||!1)&&this.parent.isRegistered(t,!0)},t.prototype.reset=function(){this.ensureNotDisposed(),this._registry.clear(),this.interceptors.preResolution.clear(),this.interceptors.postResolution.clear()},t.prototype.clearInstances=function(){var t,e;this.ensureNotDisposed();try{for(var r=jg(this._registry.entries()),i=r.next();!i.done;i=r.next()){var n=Wg(i.value,2),s=n[0],o=n[1];this._registry.setAll(s,o.filter((function(t){return!Jg(t.provider)})).map((function(t){return t.instance=void 0,t})))}}catch(e){t={error:e}}finally{try{i&&!i.done&&(e=r.return)&&e.call(r)}finally{if(t)throw t.error}}},t.prototype.createChildContainer=function(){var e,r;this.ensureNotDisposed();var i=new t(this);try{for(var n=jg(this._registry.entries()),s=n.next();!s.done;s=n.next()){var o=Wg(s.value,2),a=o[0],c=o[1];c.some((function(t){return t.options.lifecycle===Mg.ContainerScoped}))&&i._registry.setAll(a,c.map((function(t){return t.options.lifecycle===Mg.ContainerScoped?{provider:t.provider,options:t.options}:t})))}}catch(t){e={error:t}}finally{try{s&&!s.done&&(r=n.return)&&r.call(n)}finally{if(e)throw e.error}}return i},t.prototype.beforeResolution=function(t,e,r){void 0===r&&(r={frequency:"Always"}),this.interceptors.preResolution.set(t,{callback:e,options:r})},t.prototype.afterResolution=function(t,e,r){void 0===r&&(r={frequency:"Always"}),this.interceptors.postResolution.set(t,{callback:e,options:r})},t.prototype.dispose=function(){return function(t,e,r,i){return new(r||(r=Promise))((function(n,s){function o(t){try{c(i.next(t))}catch(t){s(t)}}function a(t){try{c(i.throw(t))}catch(t){s(t)}}function c(t){var e;t.done?n(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(o,a)}c((i=i.apply(t,e||[])).next())}))}(this,void 0,void 0,(function(){var t;return function(t,e){var r,i,n,s,o={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(s){return function(a){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;o;)try{if(r=1,i&&(n=2&s[0]?i.return:s[0]?i.throw||((n=i.return)&&n.call(i),0):i.next)&&!(n=n.call(i,s[1])).done)return n;switch(i=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,i=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!((n=(n=o.trys).length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){o.label=s[1];break}if(6===s[0]&&o.label<n[1]){o.label=n[1],n=s;break}if(n&&o.label<n[2]){o.label=n[2],o.ops.push(s);break}n[2]&&o.ops.pop(),o.trys.pop();continue}s=e.call(t,o)}catch(t){s=[6,t],i=0}finally{r=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,a])}}}(this,(function(e){switch(e.label){case 0:return this.disposed=!0,t=[],this.disposables.forEach((function(e){var r=e.dispose();r&&t.push(r)})),[4,Promise.all(t)];case 1:return e.sent(),[2]}}))}))},t.prototype.getRegistration=function(t){return this.isRegistered(t)?this._registry.get(t):this.parent?this.parent.getRegistration(t):null},t.prototype.getAllRegistrations=function(t){return this.isRegistered(t)?this._registry.getAll(t):this.parent?this.parent.getAllRegistrations(t):null},t.prototype.construct=function(t,e){var r=this;if(t instanceof qg)return t.createProxy((function(t){return r.resolve(t,e)}));var i,n=function(){var i=iy.get(t);if(!i||0===i.length){if(0===t.length)return new t;throw new Error('TypeInfo not known for "'+t.name+'"')}var n=i.map(r.resolveParams(e,t));return new(t.bind.apply(t,Vg([void 0],n)))}();return"function"!=typeof(i=n).dispose||i.dispose.length>0||this.disposables.add(n),n},t.prototype.resolveParams=function(t,e){var r=this;return function(i,n){var s,o,a,c;try{return"object"==typeof(c=i)&&"token"in c&&"multiple"in c?Kg(i)?i.multiple?(s=r.resolve(i.transform)).transform.apply(s,Vg([r.resolveAll(i.token)],i.transformArgs)):(o=r.resolve(i.transform)).transform.apply(o,Vg([r.resolve(i.token,t)],i.transformArgs)):i.multiple?r.resolveAll(i.token):r.resolve(i.token,t):Kg(i)?(a=r.resolve(i.transform,t)).transform.apply(a,Vg([r.resolve(i.token,t)],i.transformArgs)):r.resolve(i,t)}catch(t){throw new Error(function(t,e,r){var i,n,s=Wg(t.toString().match(/constructor\(([\w, ]+)\)/)||[],2)[1],o=function(t,e){return null===t?"at position #"+e:'"'+t.split(",")[e].trim()+'" at position #'+e}(void 0===s?null:s,e);return i="Cannot inject the dependency "+o+' of "'+t.name+'" constructor. Reason:',void 0===n&&(n=" "),Vg([i],r.message.split("\n").map((function(t){return n+t}))).join("\n")}(e,n,t))}}},t.prototype.ensureNotDisposed=function(){if(this.disposed)throw new Error("This container has been disposed, you cannot interact with a disposed container")},t}(),sy=new ny;const oy=function(){return function(t){iy.set(t,function(t){var e=Reflect.getMetadata("design:paramtypes",t)||[],r=Reflect.getOwnMetadata("injectionTokens",t)||{};return Object.keys(r).forEach((function(t){e[+t]=r[t]})),e}(t))}};if("undefined"==typeof Reflect||!Reflect.getMetadata)throw new Error("tsyringe requires a reflect polyfill. Please add 'import \"reflect-metadata\"' to the top of your entry point.");var ay;class cy{constructor(t={}){this.attrId="",this.attrValues=[],Object.assign(t)}}vu([yu({type:Nl.ObjectIdentifier})],cy.prototype,"attrId",void 0),vu([yu({type:Nl.Any,repeated:"set"})],cy.prototype,"attrValues",void 0);let ly=ay=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,ay.prototype)}};var hy;ly=ay=vu([gu({type:kl.Sequence,itemType:cy})],ly);let uy=hy=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,hy.prototype)}};uy=hy=vu([gu({type:kl.Sequence,itemType:Kd})],uy);class py{constructor(t={}){this.certId="",this.certValue=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],py.prototype,"certId",void 0),vu([yu({type:Nl.Any,context:0})],py.prototype,"certValue",void 0);class dy{constructor(t={}){this.crlId="",this.crltValue=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],dy.prototype,"crlId",void 0),vu([yu({type:Nl.Any,context:0})],dy.prototype,"crltValue",void 0);class fy extends Mh{}class gy{constructor(t={}){this.encryptionAlgorithm=new rd,this.encryptedData=new fy,Object.assign(this,t)}}var yy,my;vu([yu({type:rd})],gy.prototype,"encryptionAlgorithm",void 0),vu([yu({type:fy})],gy.prototype,"encryptedData",void 0),function(t){t[t.v1=0]="v1"}(my||(my={}));class wy extends Mh{}let by=yy=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,yy.prototype)}};by=yy=vu([gu({type:kl.Sequence,itemType:zp})],by);class Ay{constructor(t={}){this.version=my.v1,this.privateKeyAlgorithm=new rd,this.privateKey=new wy,Object.assign(this,t)}}vu([yu({type:Nl.Integer})],Ay.prototype,"version",void 0),vu([yu({type:rd})],Ay.prototype,"privateKeyAlgorithm",void 0),vu([yu({type:wy})],Ay.prototype,"privateKey",void 0),vu([yu({type:by,implicit:!0,context:0,optional:!0})],Ay.prototype,"attributes",void 0);let vy=class extends Ay{};vy=vu([gu({type:kl.Sequence})],vy);let _y=class extends gy{};_y=vu([gu({type:kl.Sequence})],_y);class Ey{constructor(t={}){this.secretTypeId="",this.secretValue=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],Ey.prototype,"secretTypeId",void 0),vu([yu({type:Nl.Any,context:0})],Ey.prototype,"secretValue",void 0);class Sy{constructor(t={}){this.mac=new kg,this.macSalt=new Mh,this.iterations=1,Object.assign(this,t)}}vu([yu({type:kg})],Sy.prototype,"mac",void 0),vu([yu({type:Mh})],Sy.prototype,"macSalt",void 0),vu([yu({type:Nl.Integer,defaultValue:1})],Sy.prototype,"iterations",void 0);class Ty{constructor(t={}){this.version=3,this.authSafe=new Kd,this.macData=new Sy,Object.assign(this,t)}}var xy;vu([yu({type:Nl.Integer})],Ty.prototype,"version",void 0),vu([yu({type:Kd})],Ty.prototype,"authSafe",void 0),vu([yu({type:Sy,optional:!0})],Ty.prototype,"macData",void 0);class Cy{constructor(t={}){this.bagId="",this.bagValue=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:Nl.ObjectIdentifier})],Cy.prototype,"bagId",void 0),vu([yu({type:Nl.Any,context:0})],Cy.prototype,"bagValue",void 0),vu([yu({type:cy,repeated:"set",optional:!0})],Cy.prototype,"bagAttributes",void 0);let Iy=xy=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,xy.prototype)}};var Ry,ky,Ny;Iy=xy=vu([gu({type:kl.Sequence,itemType:Cy})],Iy);const Oy="1.2.840.113549.1.9",By=`${Oy}.7`,Py=`${Oy}.14`;let Dy=class extends Cu{constructor(t={}){super(t)}toString(){return{}.toString(),this.ia5String||super.toString()}};vu([yu({type:Nl.IA5String})],Dy.prototype,"ia5String",void 0),Dy=vu([gu({type:kl.Choice})],Dy);let Ly=class extends Kd{};Ly=vu([gu({type:kl.Sequence})],Ly);let Uy=class extends Ty{};Uy=vu([gu({type:kl.Sequence})],Uy);let My=class extends gy{};My=vu([gu({type:kl.Sequence})],My);let Fy=class{constructor(t=""){this.value=t}toString(){return this.value}};vu([yu({type:Nl.IA5String})],Fy.prototype,"value",void 0),Fy=vu([gu({type:kl.Choice})],Fy);let Hy=class extends Dy{};Hy=vu([gu({type:kl.Choice})],Hy);let jy=class extends Cu{};jy=vu([gu({type:kl.Choice})],jy);let Wy=class{constructor(t=new Date){this.value=t}};vu([yu({type:Nl.GeneralizedTime})],Wy.prototype,"value",void 0),Wy=vu([gu({type:kl.Choice})],Wy);let Vy=class extends Cu{};Vy=vu([gu({type:kl.Choice})],Vy);let Gy=class{constructor(t="M"){this.value=t}toString(){return this.value}};vu([yu({type:Nl.PrintableString})],Gy.prototype,"value",void 0),Gy=vu([gu({type:kl.Choice})],Gy);let zy=class{constructor(t=""){this.value=t}toString(){return this.value}};vu([yu({type:Nl.PrintableString})],zy.prototype,"value",void 0),zy=vu([gu({type:kl.Choice})],zy);let qy=class extends zy{};qy=vu([gu({type:kl.Choice})],qy);let Qy=class extends Cu{};Qy=vu([gu({type:kl.Choice})],Qy);let Ky=class{constructor(t=""){this.value=t}toString(){return this.value}};vu([yu({type:Nl.ObjectIdentifier})],Ky.prototype,"value",void 0),Ky=vu([gu({type:kl.Choice})],Ky);let Yy=class extends nd{};Yy=vu([gu({type:kl.Choice})],Yy);let Jy=class{constructor(t=0){this.value=t}toString(){return this.value.toString()}};vu([yu({type:Nl.Integer})],Jy.prototype,"value",void 0),Jy=vu([gu({type:kl.Choice})],Jy);let Xy=class extends Lf{};Xy=vu([gu({type:kl.Sequence})],Xy);let Zy=class extends Cu{};Zy=vu([gu({type:kl.Choice})],Zy);let $y=Ry=class extends cd{constructor(t){super(t),Object.setPrototypeOf(this,Ry.prototype)}};$y=Ry=vu([gu({type:kl.Sequence})],$y);let tm=ky=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,ky.prototype)}};tm=ky=vu([gu({type:kl.Set,itemType:yd})],tm);let em=class{constructor(t=""){this.value=t}toString(){return this.value}};vu([yu({type:Nl.BmpString})],em.prototype,"value",void 0),em=vu([gu({type:kl.Choice})],em);let rm=class extends rd{};rm=vu([gu({type:kl.Sequence})],rm);let im=Ny=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,Ny.prototype)}};var nm;im=Ny=vu([gu({type:kl.Sequence,itemType:rm})],im);let sm=nm=class extends bu{constructor(t){super(t),Object.setPrototypeOf(this,nm.prototype)}};sm=nm=vu([gu({type:kl.Sequence,itemType:zp})],sm);class om{constructor(t={}){this.version=0,this.subject=new Ou,this.subjectPKInfo=new id,this.attributes=new sm,Object.assign(this,t)}}vu([yu({type:Nl.Integer})],om.prototype,"version",void 0),vu([yu({type:Ou})],om.prototype,"subject",void 0),vu([yu({type:id})],om.prototype,"subjectPKInfo",void 0),vu([yu({type:sm,implicit:!0,context:0})],om.prototype,"attributes",void 0);class am{constructor(t={}){this.certificationRequestInfo=new om,this.signatureAlgorithm=new rd,this.signature=new ArrayBuffer(0),Object.assign(this,t)}}vu([yu({type:om})],am.prototype,"certificationRequestInfo",void 0),vu([yu({type:rd})],am.prototype,"signatureAlgorithm",void 0),vu([yu({type:Nl.BitString})],am.prototype,"signature",void 0);
95
95
  /*!
96
96
  * MIT License
97
97
  *
@@ -116,4 +116,4 @@ PERFORMANCE OF THIS SOFTWARE.
116
116
  * SOFTWARE.
117
117
  *
118
118
  */
119
- const am="crypto.algorithm",cm="crypto.algorithmProvider";var lm;ny.registerSingleton(cm,class{getAlgorithms(){return ny.resolveAll(am)}toAsnAlgorithm(t){for(const e of this.getAlgorithms()){const r=e.toAsnAlgorithm(t);if(r)return r}if(/[0-9.]+/.test(t.name)){const e=new ed({algorithm:t.name});if("parameters"in t){const r=t;e.parameters=r.parameters}return e}throw new Error("Cannot convert WebCrypto algorithm to ASN.1 algorithm")}toWebAlgorithm(t){for(const e of this.getAlgorithms()){const r=e.toWebAlgorithm(t);if(r)return r}return{name:t.algorithm,parameters:t.parameters}}});const hm="1.3.36.3.3.2.8.1.1",um=`${hm}.1`,pm=`${hm}.2`,dm=`${hm}.3`,fm=`${hm}.4`,gm=`${hm}.5`,ym=`${hm}.6`,mm=`${hm}.7`,wm=`${hm}.8`,bm=`${hm}.9`,Am=`${hm}.10`,vm=`${hm}.11`,_m=`${hm}.12`,Em=`${hm}.13`,Sm=`${hm}.14`,Tm="brainpoolP160r1",xm="brainpoolP160t1",Cm="brainpoolP192r1",Im="brainpoolP192t1",Rm="brainpoolP224r1",km="brainpoolP224t1",Nm="brainpoolP256r1",Om="brainpoolP256t1",Bm="brainpoolP320r1",Pm="brainpoolP320t1",Dm="brainpoolP384r1",Lm="brainpoolP384t1",Um="brainpoolP512r1",Mm="brainpoolP512t1",Fm="ECDSA";let Hm=lm=class{toAsnAlgorithm(t){if(t.name.toLowerCase()===Fm.toLowerCase())if("hash"in t)switch(("string"==typeof t.hash?t.hash:t.hash.name).toLowerCase()){case"sha-1":return Jf;case"sha-256":return Xf;case"sha-384":return Zf;case"sha-512":return $f}else if("namedCurve"in t){let e="";switch(t.namedCurve){case"P-256":e=qf;break;case"K-256":e=lm.SECP256K1;break;case"P-384":e=Qf;break;case"P-521":e=Kf;break;case Tm:e=um;break;case xm:e=pm;break;case Cm:e=dm;break;case Im:e=fm;break;case Rm:e=gm;break;case km:e=ym;break;case Nm:e=mm;break;case Om:e=wm;break;case Bm:e=bm;break;case Pm:e=Am;break;case Dm:e=vm;break;case Lm:e=_m;break;case Um:e=Em;break;case Mm:e=Sm}if(e)return new ed({algorithm:Hf,parameters:bu.serialize(new tg({namedCurve:e}))})}return null}toWebAlgorithm(t){switch(t.algorithm){case jf:return{name:Fm,hash:{name:"SHA-1"}};case Vf:return{name:Fm,hash:{name:"SHA-256"}};case Gf:return{name:Fm,hash:{name:"SHA-384"}};case zf:return{name:Fm,hash:{name:"SHA-512"}};case Hf:if(!t.parameters)throw new TypeError("Cannot get required parameters from EC algorithm");switch(bu.parse(t.parameters,tg).namedCurve){case qf:return{name:Fm,namedCurve:"P-256"};case lm.SECP256K1:return{name:Fm,namedCurve:"K-256"};case Qf:return{name:Fm,namedCurve:"P-384"};case Kf:return{name:Fm,namedCurve:"P-521"};case um:return{name:Fm,namedCurve:Tm};case pm:return{name:Fm,namedCurve:xm};case dm:return{name:Fm,namedCurve:Cm};case fm:return{name:Fm,namedCurve:Im};case gm:return{name:Fm,namedCurve:Rm};case ym:return{name:Fm,namedCurve:km};case mm:return{name:Fm,namedCurve:Nm};case wm:return{name:Fm,namedCurve:Om};case bm:return{name:Fm,namedCurve:Bm};case Am:return{name:Fm,namedCurve:Pm};case vm:return{name:Fm,namedCurve:Dm};case _m:return{name:Fm,namedCurve:Lm};case Em:return{name:Fm,namedCurve:Um};case Sm:return{name:Fm,namedCurve:Mm}}}return null}};Hm.SECP256K1="1.3.132.0.10",Hm=lm=Dg([sy()],Hm),ny.registerSingleton(am,Hm);const jm=Symbol("name"),Wm=Symbol("value");class Vm{constructor(t,e={},r=""){this[jm]=t,this[Wm]=r;for(const t in e)this[t]=e[t]}}Vm.NAME=jm,Vm.VALUE=Wm;class Gm{static toString(t){return this.items[t]||t}}Gm.items={[mg]:"sha1",[wg]:"sha224",[bg]:"sha256",[Ag]:"sha384",[vg]:"sha512",[ng]:"rsaEncryption",[hg]:"sha1WithRSAEncryption",[ug]:"sha224WithRSAEncryption",[pg]:"sha256WithRSAEncryption",[dg]:"sha384WithRSAEncryption",[fg]:"sha512WithRSAEncryption",[Hf]:"ecPublicKey",[jf]:"ecdsaWithSHA1",[Wf]:"ecdsaWithSHA224",[Vf]:"ecdsaWithSHA256",[Gf]:"ecdsaWithSHA384",[zf]:"ecdsaWithSHA512",[Ap]:"TLS WWW server authentication",[vp]:"TLS WWW client authentication",[_p]:"Code Signing",[Ep]:"E-mail Protection",[Sp]:"Time Stamping",[Tp]:"OCSP Signing","1.2.840.113549.1.7.2":"Signed Data"};class zm{static serialize(t){return this.serializeObj(t).join("\n")}static pad(t=0){return"".padStart(2*t," ")}static serializeObj(t,e=0){const r=[];let i=this.pad(e++),n="";const s=t[Vm.VALUE];s&&(n=` ${s}`),r.push(`${i}${t[Vm.NAME]}:${n}`),i=this.pad(e);for(const n in t){if("symbol"==typeof n)continue;const s=t[n],o=n?`${n}: `:"";if("string"==typeof s||"number"==typeof s||"boolean"==typeof s)r.push(`${i}${o}${s}`);else if(s instanceof Date)r.push(`${i}${o}${s.toUTCString()}`);else if(Array.isArray(s))for(const t of s)t[Vm.NAME]=n,r.push(...this.serializeObj(t,e));else if(s instanceof Vm)s[Vm.NAME]=n,r.push(...this.serializeObj(s,e));else if(Ac.vJ.isBufferSource(s))n?(r.push(`${i}${o}`),r.push(...this.serializeBufferSource(s,e+1))):r.push(...this.serializeBufferSource(s,e));else{if(!("toTextObject"in s))throw new TypeError("Cannot serialize data in text format. Unsupported type.");{const t=s.toTextObject();t[Vm.NAME]=n,r.push(...this.serializeObj(t,e))}}}return r}static serializeBufferSource(t,e=0){const r=this.pad(e),i=Ac.vJ.toUint8Array(t),n=[];for(let t=0;t<i.length;){const e=[];for(let r=0;r<16&&t<i.length;r++){8===r&&e.push("");const n=i[t++].toString(16).padStart(2,"0");e.push(n)}n.push(`${r}${e.join(" ")}`)}return n}static serializeAlgorithm(t){return this.algorithmSerializer.toTextObject(t)}}zm.oidSerializer=Gm,zm.algorithmSerializer=class{static toTextObject(t){const e=new Vm("Algorithm Identifier",{},Gm.toString(t.algorithm));if(t.parameters)switch(t.algorithm){case Hf:{const r=(new Hm).toWebAlgorithm(t);r&&"namedCurve"in r?e["Named Curve"]=r.namedCurve:e.Parameters=t.parameters;break}default:e.Parameters=t.parameters}return e}};class qm{constructor(...t){if(1===t.length){const e=t[0];this.rawData=bu.serialize(e),this.onInit(e)}else{const e=bu.parse(t[0],t[1]);this.rawData=Ac.vJ.toArrayBuffer(t[0]),this.onInit(e)}}equal(t){return t instanceof qm&&(0,Ac.Xy)(t.rawData,this.rawData)}toString(t="text"){switch(t){case"asn":return bu.toString(this.rawData);case"text":return zm.serialize(this.toTextObject());case"hex":return Ac.ep.ToHex(this.rawData);case"base64":return Ac.ep.ToBase64(this.rawData);case"base64url":return Ac.ep.ToBase64Url(this.rawData);default:throw TypeError("Argument 'format' is unsupported value")}}getTextName(){return this.constructor.NAME}toTextObject(){const t=this.toTextObjectEmpty();return t[""]=this.rawData,t}toTextObjectEmpty(t){return new Vm(this.getTextName(),{},t)}}qm.NAME="ASN";class Qm extends qm{constructor(...t){let e;e=Ac.vJ.isBufferSource(t[0])?Ac.vJ.toArrayBuffer(t[0]):bu.serialize(new od({extnID:t[0],critical:t[1],extnValue:new Uh(Ac.vJ.toArrayBuffer(t[2]))})),super(e,od)}onInit(t){this.type=t.extnID,this.critical=t.critical,this.value=t.extnValue.buffer}toTextObject(){const t=this.toTextObjectWithoutValue();return t[""]=this.value,t}toTextObjectWithoutValue(){const t=this.toTextObjectEmpty(this.critical?"critical":void 0);return t[Vm.NAME]===Qm.NAME&&(t[Vm.NAME]=Gm.toString(this.type)),t}}var Km;class Ym{constructor(){this.items=new Map,this[Km]="CryptoProvider","undefined"!=typeof self&&"undefined"!=typeof crypto&&this.set(Ym.DEFAULT,crypto)}static isCryptoKeyPair(t){return t&&t.privateKey&&t.publicKey}static isCryptoKey(t){return t&&t.usages&&t.type&&t.algorithm&&void 0!==t.extractable}clear(){this.items.clear()}delete(t){return this.items.delete(t)}forEach(t,e){return this.items.forEach(t,e)}has(t){return this.items.has(t)}get size(){return this.items.size}entries(){return this.items.entries()}keys(){return this.items.keys()}values(){return this.items.values()}[Symbol.iterator](){return this.items[Symbol.iterator]()}get(t=Ym.DEFAULT){const e=this.items.get(t.toLowerCase());if(!e)throw new Error(`Cannot get Crypto by name '${t}'`);return e}set(t,e){if("string"==typeof t){if(!e)throw new TypeError("Argument 'value' is required");this.items.set(t.toLowerCase(),e)}else this.items.set(Ym.DEFAULT,t);return this}}Km=Symbol.toStringTag,Ym.DEFAULT="default";const Jm=new Ym,Xm=/^[0-2](?:\.[1-9][0-9]*)+$/;class Zm{constructor(t={}){this.items={};for(const e in t)this.register(e,t[e])}get(t){return this.items[t]||null}findId(t){return e=t,new RegExp(Xm).test(e)?t:this.get(t);var e}register(t,e){this.items[t]=e,this.items[e]=t}}const $m=new Zm;function tw(t,e){return`\\${Ac.ep.ToHex(Ac.ep.FromUtf8String(e)).toUpperCase()}`}$m.register("CN","2.5.4.3"),$m.register("L","2.5.4.7"),$m.register("ST","2.5.4.8"),$m.register("O","2.5.4.10"),$m.register("OU","2.5.4.11"),$m.register("C","2.5.4.6"),$m.register("DC","0.9.2342.19200300.100.1.25"),$m.register("E","1.2.840.113549.1.9.1"),$m.register("G","2.5.4.42"),$m.register("I","2.5.4.43"),$m.register("SN","2.5.4.4"),$m.register("T","2.5.4.12");class ew{constructor(t,e={}){this.extraNames=new Zm,this.asn=new Nu;for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)){const r=e[t];this.extraNames.register(t,r)}"string"==typeof t?this.asn=this.fromString(t):t instanceof Nu?this.asn=t:Ac.vJ.isBufferSource(t)?this.asn=bu.parse(t,Nu):this.asn=this.fromJSON(t)}static isASCII(t){for(let e=0;e<t.length;e++)if(t.charCodeAt(e)>255)return!1;return!0}getField(t){const e=this.extraNames.findId(t)||$m.findId(t),r=[];for(const t of this.asn)for(const i of t)i.type===e&&r.push(i.value.toString());return r}getName(t){return this.extraNames.get(t)||$m.get(t)}toString(){return this.asn.map((t=>t.map((t=>`${this.getName(t.type)||t.type}=${t.value.anyValue?`#${Ac.ep.ToHex(t.value.anyValue)}`:function(t){return t.replace(/([,+"\\<>;])/g,"\\$1").replace(/^([ #])/,"\\$1").replace(/([ ]$)/,"\\$1").replace(/([\r\n\t])/,tw)}(t.value.toString())}`)).join("+"))).join(", ")}toJSON(){var t;const e=[];for(const r of this.asn){const i={};for(const e of r){const r=this.getName(e.type)||e.type;null!==(t=i[r])&&void 0!==t||(i[r]=[]),i[r].push(e.value.anyValue?`#${Ac.ep.ToHex(e.value.anyValue)}`:e.value.toString())}e.push(i)}return e}fromString(t){const e=new Nu,r=/(\d\.[\d.]*\d|[A-Za-z]+)=((?:"")|(?:".*?[^\\]")|(?:[^,+].*?(?:[^\\][,+]))|(?:))([,+])?/g;let i=null,n=",";for(;i=r.exec(`${t},`);){let[,t,r]=i;const s=r[r.length-1];","!==s&&"+"!==s||(r=r.slice(0,r.length-1),i[3]=s);const o=i[3];if(/[\d.]+/.test(t)||(t=this.getName(t)||""),!t)throw new Error(`Cannot get OID for name type '${t}'`);const a=new Iu({type:t});if("#"===r.charAt(0))a.value.anyValue=Ac.ep.FromHex(r.slice(1));else{const e=/"(.*?[^\\])?"/.exec(r);e&&(r=e[1]),r=r.replace(/\\0a/gi,"\n").replace(/\\0d/gi,"\r").replace(/\\0g/gi,"\t").replace(/\\(.)/g,"$1"),t===this.getName("E")||t===this.getName("DC")?a.value.ia5String=r:ew.isASCII(r)?a.value.printableString=r:a.value.utf8String=r}"+"===n?e[e.length-1].push(a):e.push(new Ru([a])),n=o}return e}fromJSON(t){const e=new Nu;for(const r of t){const t=new Ru;for(const e in r){let i=e;if(/[\d.]+/.test(e)||(i=this.getName(e)||""),!i)throw new Error(`Cannot get OID for name type '${e}'`);const n=r[e];for(const e of n){const r=new Iu({type:i});if("object"==typeof e)for(const t in e)switch(t){case"ia5String":r.value.ia5String=e[t];break;case"utf8String":r.value.utf8String=e[t];break;case"universalString":r.value.universalString=e[t];break;case"bmpString":r.value.bmpString=e[t];break;case"printableString":r.value.printableString=e[t]}else"#"===e[0]?r.value.anyValue=Ac.ep.FromHex(e.slice(1)):i===this.getName("E")||i===this.getName("DC")?r.value.ia5String=e:r.value.printableString=e;t.push(r)}}e.push(t)}return e}toArrayBuffer(){return bu.serialize(this.asn)}async getThumbprint(...t){var e;let r,i="SHA-1";return t.length>=1&&!(null===(e=t[0])||void 0===e?void 0:e.subtle)?(i=t[0]||i,r=t[1]||Jm.get()):r=t[0]||Jm.get(),await r.subtle.digest(i,this.toArrayBuffer())}}const rw="Cannot initialize GeneralName from ASN.1 data.",iw=`${rw} Unsupported string format in use.`,nw=`${rw} Value doesn't match to GUID regular expression.`,sw=/^([0-9a-f]{8})-?([0-9a-f]{4})-?([0-9a-f]{4})-?([0-9a-f]{4})-?([0-9a-f]{12})$/i,ow="1.3.6.1.4.1.311.25.1",aw="1.3.6.1.4.1.311.20.2.3",cw="dns",lw="dn",hw="email",uw="ip",pw="url",dw="guid",fw="upn",gw="id";class yw extends qm{constructor(...t){let e;if(2===t.length)switch(t[0]){case lw:{const r=new ew(t[1]).toArrayBuffer(),i=bu.parse(r,Nu);e=new Du({directoryName:i});break}case cw:e=new Du({dNSName:t[1]});break;case hw:e=new Du({rfc822Name:t[1]});break;case dw:{const r=new RegExp(sw,"i").exec(t[1]);if(!r)throw new Error("Cannot parse GUID value. Value doesn't match to regular expression");const i=r.slice(1).map(((t,e)=>e<3?Ac.ep.ToHex(new Uint8Array(Ac.ep.FromHex(t)).reverse()):t)).join("");e=new Du({otherName:new Bu({typeId:ow,value:bu.serialize(new Uh(Ac.ep.FromHex(i)))})});break}case uw:e=new Du({iPAddress:t[1]});break;case gw:e=new Du({registeredID:t[1]});break;case fw:e=new Du({otherName:new Bu({typeId:aw,value:bu.serialize(Kh.toASN(t[1]))})});break;case pw:e=new Du({uniformResourceIdentifier:t[1]});break;default:throw new Error("Cannot create GeneralName. Unsupported type of the name")}else e=Ac.vJ.isBufferSource(t[0])?bu.parse(t[0],Du):t[0];super(e)}onInit(t){if(null!=t.dNSName)this.type=cw,this.value=t.dNSName;else if(null!=t.rfc822Name)this.type=hw,this.value=t.rfc822Name;else if(null!=t.iPAddress)this.type=uw,this.value=t.iPAddress;else if(null!=t.uniformResourceIdentifier)this.type=pw,this.value=t.uniformResourceIdentifier;else if(null!=t.registeredID)this.type=gw,this.value=t.registeredID;else if(null!=t.directoryName)this.type=lw,this.value=new ew(t.directoryName).toString();else{if(null==t.otherName)throw new Error(iw);if(t.otherName.typeId===ow){this.type=dw;const e=bu.parse(t.otherName.value,Uh),r=new RegExp(sw,"i").exec(Ac.ep.ToHex(e));if(!r)throw new Error(nw);this.value=r.slice(1).map(((t,e)=>e<3?Ac.ep.ToHex(new Uint8Array(Ac.ep.FromHex(t)).reverse()):t)).join("-")}else{if(t.otherName.typeId!==aw)throw new Error(iw);this.type=fw,this.value=bu.parse(t.otherName.value,xu).toString()}}}toJSON(){return{type:this.type,value:this.value}}toTextObject(){let t;switch(this.type){case lw:case cw:case dw:case uw:case gw:case fw:case pw:t=this.type.toUpperCase();break;case hw:t="Email";break;default:throw new Error("Unsupported GeneralName type")}let e=this.value;return this.type===gw&&(e=Gm.toString(e)),new Vm(t,void 0,e)}}class mw extends qm{constructor(t){let e;if(t instanceof qu)e=t;else if(Array.isArray(t)){const r=[];for(const e of t)if(e instanceof Du)r.push(e);else{const t=bu.parse(new yw(e.type,e.value).rawData,Du);r.push(t)}e=new qu(r)}else{if(!Ac.vJ.isBufferSource(t))throw new Error("Cannot initialize GeneralNames. Incorrect incoming arguments");e=bu.parse(t,qu)}super(e)}onInit(t){const e=[];for(const r of t){let t=null;try{t=new yw(r)}catch{continue}e.push(t)}this.items=e}toJSON(){return this.items.map((t=>t.toJSON()))}toTextObject(){const t=super.toTextObjectEmpty();for(const e of this.items){const r=e.toTextObject();let i=t[r[Vm.NAME]];Array.isArray(i)||(i=[],t[r[Vm.NAME]]=i),i.push(r)}return t}}mw.NAME="GeneralNames";const ww="-{5}BEGIN ([^\\n]+(?=-{5}))-{5}\\n(?:((?:[^:\\n]+: (?:[^\\n]+\\n(?: +[^\\n]+\\n)*))+))?\\n?((?:[a-zA-Z0-9=+/]+\\n)+)-{5}END \\1-{5}";class bw{static isPem(t){return"string"==typeof t&&new RegExp(ww,"g").test(t)}static decodeWithHeaders(t){t=t.replace(/\r/g,"");const e=new RegExp(ww,"g"),r=[];let i=null;for(;i=e.exec(t);){const t=i[3].replace(new RegExp("[\\n]+","g"),""),e={type:i[1],headers:[],rawData:Ac.ep.FromBase64(t)},n=i[2];if(n){const t=n.split(new RegExp("\\n","g"));let r=null;for(const i of t){const[t,n]=i.split(/:(.*)/);if(void 0===n){if(!r)throw new Error("Cannot parse PEM string. Incorrect header value");r.value+=t.trim()}else r&&e.headers.push(r),r={key:t,value:n.trim()}}r&&e.headers.push(r)}r.push(e)}return r}static decode(t){return this.decodeWithHeaders(t).map((t=>t.rawData))}static decodeFirst(t){const e=this.decode(t);if(!e.length)throw new RangeError("PEM string doesn't contain any objects");return e[0]}static encode(t,e){if(Array.isArray(t)){const r=new Array;return e?t.forEach((t=>{if(!Ac.vJ.isBufferSource(t))throw new TypeError("Cannot encode array of BufferSource in PEM format. Not all items of the array are BufferSource");r.push(this.encodeStruct({type:e,rawData:Ac.vJ.toArrayBuffer(t)}))})):t.forEach((t=>{if(!("type"in t))throw new TypeError("Cannot encode array of PemStruct in PEM format. Not all items of the array are PemStrut");r.push(this.encodeStruct(t))})),r.join("\n")}if(!e)throw new Error("Required argument 'tag' is missed");return this.encodeStruct({type:e,rawData:Ac.vJ.toArrayBuffer(t)})}static encodeStruct(t){var e;const r=t.type.toLocaleUpperCase(),i=[];if(i.push(`-----BEGIN ${r}-----`),null===(e=t.headers)||void 0===e?void 0:e.length){for(const e of t.headers)i.push(`${e.key}: ${e.value}`);i.push("")}const n=Ac.ep.ToBase64(t.rawData);let s,o=0;const a=Array();for(;o<n.length&&(n.length-o<64?s=n.substring(o):(s=n.substring(o,o+64),o+=64),0!==s.length)&&(a.push(s),!(s.length<64)););return i.push(...a),i.push(`-----END ${r}-----`),i.join("\n")}}bw.CertificateTag="CERTIFICATE",bw.CrlTag="CRL",bw.CertificateRequestTag="CERTIFICATE REQUEST",bw.PublicKeyTag="PUBLIC KEY",bw.PrivateKeyTag="PRIVATE KEY";class Aw extends qm{static isAsnEncoded(t){return Ac.vJ.isBufferSource(t)||"string"==typeof t}static toArrayBuffer(t){if("string"==typeof t){if(bw.isPem(t))return bw.decode(t)[0];if(Ac.ep.isHex(t))return Ac.ep.FromHex(t);if(Ac.ep.isBase64(t))return Ac.ep.FromBase64(t);if(Ac.ep.isBase64Url(t))return Ac.ep.FromBase64Url(t);throw new TypeError("Unsupported format of 'raw' argument. Must be one of DER, PEM, HEX, Base64, or Base4Url")}{const e=Ac.ep.ToBinary(t);return bw.isPem(e)?bw.decode(e)[0]:Ac.ep.isHex(e)?Ac.ep.FromHex(e):Ac.ep.isBase64(e)?Ac.ep.FromBase64(e):Ac.ep.isBase64Url(e)?Ac.ep.FromBase64Url(e):Ac.vJ.toArrayBuffer(t)}}constructor(...t){Aw.isAsnEncoded(t[0])?super(Aw.toArrayBuffer(t[0]),t[1]):super(t[0])}toString(t="pem"){return"pem"===t?bw.encode(this.rawData,this.tag):super.toString(t)}}class vw extends Aw{constructor(t){Aw.isAsnEncoded(t)?super(t,rd):super(t),this.tag=bw.PublicKeyTag}async export(...t){let e,r=["verify"],i={hash:"SHA-256",...this.algorithm};return t.length>1?(i=t[0]||i,r=t[1]||r,e=t[2]||Jm.get()):e=t[0]||Jm.get(),e.subtle.importKey("spki",this.rawData,i,!0,r)}onInit(t){const e=ny.resolve(cm),r=this.algorithm=e.toWebAlgorithm(t.algorithm);switch(t.algorithm.algorithm){case ng:{const e=bu.parse(t.subjectPublicKey,Pg),i=Ac.vJ.toUint8Array(e.modulus);r.publicExponent=Ac.vJ.toUint8Array(e.publicExponent),r.modulusLength=(i[0]?i:i.slice(1)).byteLength<<3;break}}}async getThumbprint(...t){var e;let r,i="SHA-1";return t.length>=1&&!(null===(e=t[0])||void 0===e?void 0:e.subtle)?(i=t[0]||i,r=t[1]||Jm.get()):r=t[0]||Jm.get(),await r.subtle.digest(i,this.rawData)}async getKeyIdentifier(t){t||(t=Jm.get());const e=bu.parse(this.rawData,rd);return await t.subtle.digest("SHA-1",e.subjectPublicKey)}toTextObject(){const t=this.toTextObjectEmpty(),e=bu.parse(this.rawData,rd);return t.Algorithm=zm.serializeAlgorithm(e.algorithm),e.algorithm.algorithm===Hf?t["EC Point"]=e.subjectPublicKey:t["Raw Data"]=e.subjectPublicKey,t}}class _w{static register(t,e){this.items.set(t,e)}static create(t){const e=new Qm(t),r=this.items.get(e.type);return r?new r(t):e}}_w.items=new Map;const Ew="crypto.signatureFormatter";class Sw extends Aw{constructor(t){Aw.isAsnEncoded(t)?super(t,ud):super(t),this.tag=bw.CertificateTag}onInit(t){const e=t.tbsCertificate;this.tbs=bu.serialize(e),this.serialNumber=Ac.ep.ToHex(e.serialNumber),this.subjectName=new ew(e.subject),this.subject=new ew(e.subject).toString(),this.issuerName=new ew(e.issuer),this.issuer=this.issuerName.toString();const r=ny.resolve(cm);this.signatureAlgorithm=r.toWebAlgorithm(t.signatureAlgorithm),this.signature=t.signatureValue;const i=e.validity.notBefore.utcTime||e.validity.notBefore.generalTime;if(!i)throw new Error("Cannot get 'notBefore' value");this.notBefore=i;const n=e.validity.notAfter.utcTime||e.validity.notAfter.generalTime;if(!n)throw new Error("Cannot get 'notAfter' value");this.notAfter=n,this.extensions=[],e.extensions&&(this.extensions=e.extensions.map((t=>_w.create(bu.serialize(t))))),this.publicKey=new vw(e.subjectPublicKeyInfo)}getExtension(t){for(const e of this.extensions)if("string"==typeof t){if(e.type===t)return e}else if(e instanceof t)return e;return null}getExtensions(t){return this.extensions.filter((e=>"string"==typeof t?e.type===t:e instanceof t))}async verify(t={},e=Jm.get()){let r,i;const n=t.publicKey;try{if(n)if("publicKey"in n)r={...n.publicKey.algorithm,...this.signatureAlgorithm},i=await n.publicKey.export(r,["verify"]);else if(n instanceof vw)r={...n.algorithm,...this.signatureAlgorithm},i=await n.export(r,["verify"]);else if(Ac.vJ.isBufferSource(n)){const t=new vw(n);r={...t.algorithm,...this.signatureAlgorithm},i=await t.export(r,["verify"])}else r={...n.algorithm,...this.signatureAlgorithm},i=n;else r={...this.publicKey.algorithm,...this.signatureAlgorithm},i=await this.publicKey.export(r,["verify"],e)}catch(t){return!1}const s=ny.resolveAll(Ew).reverse();let o=null;for(const t of s)if(o=t.toWebSignature(r,this.signature),o)break;if(!o)throw Error("Cannot convert ASN.1 signature value to WebCrypto format");const a=await e.subtle.verify(this.signatureAlgorithm,i,o,this.tbs);if(t.signatureOnly)return a;{const e=(t.date||new Date).getTime();return a&&this.notBefore.getTime()<e&&e<this.notAfter.getTime()}}async getThumbprint(...t){let e,r="SHA-1";return t[0]&&(t[0].subtle?e=t[0]:(r=t[0]||r,e=t[1])),null!=e||(e=Jm.get()),await e.subtle.digest(r,this.rawData)}async isSelfSigned(t=Jm.get()){return this.subject===this.issuer&&await this.verify({signatureOnly:!0},t)}toTextObject(){const t=this.toTextObjectEmpty(),e=bu.parse(this.rawData,ud),r=e.tbsCertificate,i=new Vm("",{Version:`${cd[r.version]} (${r.version})`,"Serial Number":r.serialNumber,"Signature Algorithm":zm.serializeAlgorithm(r.signature),Issuer:this.issuer,Validity:new Vm("",{"Not Before":r.validity.notBefore.getTime(),"Not After":r.validity.notAfter.getTime()}),Subject:this.subject,"Subject Public Key Info":this.publicKey});if(r.issuerUniqueID&&(i["Issuer Unique ID"]=r.issuerUniqueID),r.subjectUniqueID&&(i["Subject Unique ID"]=r.subjectUniqueID),this.extensions.length){const t=new Vm("");for(const e of this.extensions){const r=e.toTextObject();t[r[Vm.NAME]]=r}i.Extensions=t}return t.Data=i,t.Signature=new Vm("",{Algorithm:zm.serializeAlgorithm(e.signatureAlgorithm),"":e.signatureValue}),t}}Sw.NAME="Certificate";class Tw extends Qm{constructor(...t){if(Ac.vJ.isBufferSource(t[0]))super(t[0]);else if("string"==typeof t[0]){const e=new Wu({keyIdentifier:new ju(Ac.ep.FromHex(t[0]))});super(Hu,t[1],bu.serialize(e))}else{const e=t[0],r=e.name instanceof mw?bu.parse(e.name.rawData,qu):e.name,i=new Wu({authorityCertIssuer:r,authorityCertSerialNumber:Ac.ep.FromHex(e.serialNumber)});super(Hu,t[1],bu.serialize(i))}}static async create(t,e=!1,r=Jm.get()){if(t instanceof Sw||Ym.isCryptoKey(t)){const i=t instanceof Sw?await t.publicKey.export(r):t,n=await r.subtle.exportKey("spki",i),s=new vw(n),o=await s.getKeyIdentifier(r);return new Tw(Ac.ep.ToHex(o),e)}return new Tw(t,e)}onInit(t){super.onInit(t);const e=bu.parse(t.extnValue,Wu);e.keyIdentifier&&(this.keyId=Ac.ep.ToHex(e.keyIdentifier)),e.authorityCertIssuer&&e.authorityCertSerialNumber&&(this.certId={name:e.authorityCertIssuer,serialNumber:Ac.ep.ToHex(e.authorityCertSerialNumber)})}toTextObject(){const t=this.toTextObjectWithoutValue(),e=bu.parse(this.value,Wu);return e.authorityCertIssuer&&(t["Authority Issuer"]=new mw(e.authorityCertIssuer).toTextObject()),e.authorityCertSerialNumber&&(t["Authority Serial Number"]=e.authorityCertSerialNumber),e.keyIdentifier&&(t[""]=e.keyIdentifier),t}}Tw.NAME="Authority Key Identifier";class xw extends Qm{constructor(...t){if(Ac.vJ.isBufferSource(t[0])){super(t[0]);const e=bu.parse(this.value,Gu);this.ca=e.cA,this.pathLength=e.pathLenConstraint}else{const e=new Gu({cA:t[0],pathLenConstraint:t[1]});super(Vu,t[2],bu.serialize(e)),this.ca=t[0],this.pathLength=t[1]}}toTextObject(){const t=this.toTextObjectWithoutValue();return this.ca&&(t.CA=this.ca),void 0!==this.pathLength&&(t["Path Length"]=this.pathLength),t}}var Cw,Iw;xw.NAME="Basic Constraints",function(t){t.serverAuth="1.3.6.1.5.5.7.3.1",t.clientAuth="1.3.6.1.5.5.7.3.2",t.codeSigning="1.3.6.1.5.5.7.3.3",t.emailProtection="1.3.6.1.5.5.7.3.4",t.timeStamping="1.3.6.1.5.5.7.3.8",t.ocspSigning="1.3.6.1.5.5.7.3.9"}(Cw||(Cw={}));class Rw extends Qm{constructor(...t){if(Ac.vJ.isBufferSource(t[0])){super(t[0]);const e=bu.parse(this.value,bp);this.usages=e.map((t=>t))}else{const e=new bp(t[0]);super(wp,t[1],bu.serialize(e)),this.usages=t[0]}}toTextObject(){const t=this.toTextObjectWithoutValue();return t[""]=this.usages.map((t=>Gm.toString(t))).join(", "),t}}Rw.NAME="Extended Key Usages",function(t){t[t.digitalSignature=1]="digitalSignature",t[t.nonRepudiation=2]="nonRepudiation",t[t.keyEncipherment=4]="keyEncipherment",t[t.dataEncipherment=8]="dataEncipherment",t[t.keyAgreement=16]="keyAgreement",t[t.keyCertSign=32]="keyCertSign",t[t.cRLSign=64]="cRLSign",t[t.encipherOnly=128]="encipherOnly",t[t.decipherOnly=256]="decipherOnly"}(Iw||(Iw={}));class kw extends Qm{constructor(...t){if(Ac.vJ.isBufferSource(t[0])){super(t[0]);const e=bu.parse(this.value,Bp);this.usages=e.toNumber()}else{const e=new Bp(t[0]);super(kp,t[1],bu.serialize(e)),this.usages=t[0]}}toTextObject(){const t=this.toTextObjectWithoutValue(),e=bu.parse(this.value,Bp);return t[""]=e.toJSON().join(", "),t}}kw.NAME="Key Usages";class Nw extends Qm{constructor(...t){if(Ac.vJ.isBufferSource(t[0])){super(t[0]);const e=bu.parse(this.value,Kp);this.keyId=Ac.ep.ToHex(e)}else{const e="string"==typeof t[0]?Ac.ep.FromHex(t[0]):t[0],r=new Kp(e);super(Qp,t[1],bu.serialize(r)),this.keyId=Ac.ep.ToHex(e)}}static async create(t,e=!1,r=Jm.get()){let i;i=t instanceof vw?t.rawData:"publicKey"in t?t.publicKey.rawData:Ac.vJ.isBufferSource(t)?t:await r.subtle.exportKey("spki",t);const n=new vw(i),s=await n.getKeyIdentifier(r);return new Nw(Ac.ep.ToHex(s),e)}toTextObject(){const t=this.toTextObjectWithoutValue(),e=bu.parse(this.value,Kp);return t[""]=e,t}}Nw.NAME="Subject Key Identifier";class Ow extends Qm{constructor(...t){Ac.vJ.isBufferSource(t[0])?super(t[0]):super(Wp,t[1],new mw(t[0]||[]).rawData)}onInit(t){super.onInit(t);const e=bu.parse(t.extnValue,Vp);this.names=new mw(e)}toTextObject(){const t=this.toTextObjectWithoutValue(),e=this.names.toTextObject();for(const r in e)t[r]=e[r];return t}}Ow.NAME="Subject Alternative Name";class Bw extends Qm{constructor(...t){var e;if(Ac.vJ.isBufferSource(t[0])){super(t[0]);const e=bu.parse(this.value,ip);this.policies=e.map((t=>t.policyIdentifier))}else{const r=t[0],i=null!==(e=t[1])&&void 0!==e&&e,n=new ip(r.map((t=>new rp({policyIdentifier:t}))));super(Ju,i,bu.serialize(n)),this.policies=r}}toTextObject(){const t=this.toTextObjectWithoutValue();return t.Policy=this.policies.map((t=>new Vm("",{},Gm.toString(t)))),t}}Bw.NAME="Certificate Policies",_w.register(Ju,Bw);class Pw extends qm{constructor(...t){let e;if(Ac.vJ.isBufferSource(t[0]))e=Ac.vJ.toArrayBuffer(t[0]);else{const r=t[0],i=Array.isArray(t[1])?t[1].map((t=>Ac.vJ.toArrayBuffer(t))):[];e=bu.serialize(new Gp({type:r,values:i}))}super(e,Gp)}onInit(t){this.type=t.type,this.values=t.values}toTextObject(){const t=this.toTextObjectWithoutValue();return t.Value=this.values.map((t=>new Vm("",{"":t}))),t}toTextObjectWithoutValue(){const t=this.toTextObjectEmpty();return t[Vm.NAME]===Pw.NAME&&(t[Vm.NAME]=Gm.toString(this.type)),t}}Pw.NAME="Attribute";class Dw extends Pw{constructor(...t){var e;if(Ac.vJ.isBufferSource(t[0]))super(t[0]);else{const e=new Xy({printableString:t[0]});super(Oy,[bu.serialize(e)])}null!==(e=this.password)&&void 0!==e||(this.password="")}onInit(t){if(super.onInit(t),this.values[0]){const t=bu.parse(this.values[0],Xy);this.password=t.toString()}}toTextObject(){const t=this.toTextObjectWithoutValue();return t[Vm.VALUE]=this.password,t}}Dw.NAME="Challenge Password";class Lw extends Pw{constructor(...t){var e;if(Ac.vJ.isBufferSource(t[0]))super(t[0]);else{const e=t[0],r=new ad;for(const t of e)r.push(bu.parse(t.rawData,od));super(By,[bu.serialize(r)])}null!==(e=this.items)&&void 0!==e||(this.items=[])}onInit(t){if(super.onInit(t),this.values[0]){const t=bu.parse(this.values[0],ad);this.items=t.map((t=>_w.create(bu.serialize(t))))}}toTextObject(){const t=this.toTextObjectWithoutValue(),e=this.items.map((t=>t.toTextObject()));for(const r of e)t[r[Vm.NAME]]=r;return t}}Lw.NAME="Extensions";class Uw{static register(t,e){this.items.set(t,e)}static create(t){const e=new Pw(t),r=this.items.get(e.type);return r?new r(t):e}}Uw.items=new Map;let Mw=class{toAsnAlgorithm(t){if("rsassa-pkcs1-v1_5"===t.name.toLowerCase()){if(!t.hash)return new ed({algorithm:ng,parameters:null});switch(t.hash.name.toLowerCase()){case"sha-1":return new ed({algorithm:hg,parameters:null});case"sha-256":return new ed({algorithm:pg,parameters:null});case"sha-384":return new ed({algorithm:dg,parameters:null});case"sha-512":return new ed({algorithm:fg,parameters:null})}}return null}toWebAlgorithm(t){switch(t.algorithm){case ng:return{name:"RSASSA-PKCS1-v1_5"};case hg:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-1"}};case pg:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}};case dg:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-384"}};case fg:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-512"}}}return null}};Mw=Dg([sy()],Mw),ny.registerSingleton(am,Mw);class Fw{addPadding(t,e){const r=Ac.vJ.toUint8Array(e),i=new Uint8Array(t);return i.set(r,t-r.length),i}removePadding(t,e=!1){let r=Ac.vJ.toUint8Array(t);for(let t=0;t<r.length;t++)if(r[t]){r=r.slice(t);break}if(e&&r[0]>127){const t=new Uint8Array(r.length+1);return t.set(r,1),t.buffer}return r.buffer}toAsnSignature(t,e){if("ECDSA"===t.name){const r=t.namedCurve,i=Fw.namedCurveSize.get(r)||Fw.defaultNamedCurveSize,n=new rg,s=Ac.vJ.toUint8Array(e);return n.r=this.removePadding(s.slice(0,i),!0),n.s=this.removePadding(s.slice(i,i+i),!0),bu.serialize(n)}return null}toWebSignature(t,e){if("ECDSA"===t.name){const r=bu.parse(e,rg),i=t.namedCurve,n=Fw.namedCurveSize.get(i)||Fw.defaultNamedCurveSize,s=this.addPadding(n,this.removePadding(r.r)),o=this.addPadding(n,this.removePadding(r.s));return(0,Ac.$e)(s,o)}return null}}Fw.namedCurveSize=new Map,Fw.defaultNamedCurveSize=32;const Hw="1.3.101.110",jw="1.3.101.111",Ww="1.3.101.112",Vw="1.3.101.113";let Gw=class{toAsnAlgorithm(t){let e=null;switch(t.name.toLowerCase()){case"eddsa":switch(t.namedCurve.toLowerCase()){case"ed25519":e=Ww;break;case"ed448":e=Vw}break;case"ecdh-es":switch(t.namedCurve.toLowerCase()){case"x25519":e=Hw;break;case"x448":e=jw}}return e?new ed({algorithm:e}):null}toWebAlgorithm(t){switch(t.algorithm){case Ww:return{name:"EdDSA",namedCurve:"Ed25519"};case Vw:return{name:"EdDSA",namedCurve:"Ed448"};case Hw:return{name:"ECDH-ES",namedCurve:"X25519"};case jw:return{name:"ECDH-ES",namedCurve:"X448"}}return null}};Gw=Dg([sy()],Gw),ny.registerSingleton(am,Gw);var zw;(class extends Aw{constructor(t){Aw.isAsnEncoded(t)?super(t,om):super(t),this.tag=bw.CertificateRequestTag}onInit(t){this.tbs=bu.serialize(t.certificationRequestInfo),this.publicKey=new vw(t.certificationRequestInfo.subjectPKInfo);const e=ny.resolve(cm);this.signatureAlgorithm=e.toWebAlgorithm(t.signatureAlgorithm),this.signature=t.signature,this.attributes=t.certificationRequestInfo.attributes.map((t=>Uw.create(bu.serialize(t))));const r=this.getAttribute(By);this.extensions=[],r instanceof Lw&&(this.extensions=r.items),this.subjectName=new ew(t.certificationRequestInfo.subject),this.subject=this.subjectName.toString()}getAttribute(t){for(const e of this.attributes)if(e.type===t)return e;return null}getAttributes(t){return this.attributes.filter((e=>e.type===t))}getExtension(t){for(const e of this.extensions)if(e.type===t)return e;return null}getExtensions(t){return this.extensions.filter((e=>e.type===t))}async verify(t=Jm.get()){const e={...this.publicKey.algorithm,...this.signatureAlgorithm},r=await this.publicKey.export(e,["verify"],t),i=ny.resolveAll(Ew).reverse();let n=null;for(const t of i)if(n=t.toWebSignature(e,this.signature),n)break;if(!n)throw Error("Cannot convert WebCrypto signature value to ASN.1 format");return await t.subtle.verify(this.signatureAlgorithm,r,n,this.tbs)}toTextObject(){const t=this.toTextObjectEmpty(),e=bu.parse(this.rawData,om),r=e.certificationRequestInfo,i=new Vm("",{Version:`${cd[r.version]} (${r.version})`,Subject:this.subject,"Subject Public Key Info":this.publicKey});if(this.attributes.length){const t=new Vm("");for(const e of this.attributes){const r=e.toTextObject();t[r[Vm.NAME]]=r}i.Attributes=t}return t.Data=i,t.Signature=new Vm("",{Algorithm:zm.serializeAlgorithm(e.signatureAlgorithm),"":e.signature}),t}}).NAME="PKCS#10 Certificate Request",function(t){t[t.unspecified=0]="unspecified",t[t.keyCompromise=1]="keyCompromise",t[t.cACompromise=2]="cACompromise",t[t.affiliationChanged=3]="affiliationChanged",t[t.superseded=4]="superseded",t[t.cessationOfOperation=5]="cessationOfOperation",t[t.certificateHold=6]="certificateHold",t[t.removeFromCRL=8]="removeFromCRL",t[t.privilegeWithdrawn=9]="privilegeWithdrawn",t[t.aACompromise=10]="aACompromise"}(zw||(zw={})),_w.register(Vu,xw),_w.register(wp,Rw),_w.register(kp,kw),_w.register(Qp,Nw),_w.register(Hu,Tw),_w.register(Wp,Ow),Uw.register(Oy,Dw),Uw.register(By,Lw),ny.registerSingleton(Ew,class{toAsnSignature(t,e){return Ac.vJ.toArrayBuffer(e)}toWebSignature(t,e){return Ac.vJ.toArrayBuffer(e)}}),ny.registerSingleton(Ew,Fw),Fw.namedCurveSize.set("P-256",32),Fw.namedCurveSize.set("K-256",32),Fw.namedCurveSize.set("P-384",48),Fw.namedCurveSize.set("P-521",66);const qw=/-{5}(BEGIN|END) .*-{5}/gm,Qw="pages/pages.jsonl",Kw="pages/extraPages.jsonl",Yw="datapackage.json",Jw="datapackage-digest.json",Xw="webarchive.yaml";class Zw{store;file;isRoot;waczname;constructor(t,e,r=!0){this.file=e,this.waczname=e.waczname||"",this.store=t,this.isRoot=r}async loadFileFromWACZ(t,e){return this.store.loadFileFromWACZ?await this.store.loadFileFromWACZ(this.file,t,e):await this.file.loadFile(t,e)}async load(){let t,e=null;return this.file.containsFile(Jw)&&(e=await this.loadDigestData(Jw)),this.file.containsFile(Yw)?t=await this.loadPackage(Yw,e):this.file.containsFile(Xw)&&(t=await this.loadOldPackageYAML(Xw)),t||{}}async loadTextFileFromWACZ(t,e=""){const{reader:r,hasher:i}=await this.loadFileFromWACZ(t,{computeHash:!!e});if(!r)return"";const n=(new TextDecoder).decode(await r.readFully());return e&&i&&await this.store.addVerifyData(this.waczname,t,e,i.getHash()),n}async loadDigestData(t){try{const e=JSON.parse(await this.loadTextFileFromWACZ(t));let r;e.path===Yw&&e.hash&&(r=e.hash);const i=this.store,n=this.isRoot?"":this.waczname+":";if(!e.signedData||e.signedData.hash!==r)return void await i.addVerifyData(n,"signature","");await i.addVerifyData(n,"datapackageHash",r);const s=await async function({hash:t,signature:e,publicKey:r,domain:i,domainCert:n,created:s,software:o}){let a;const c=[],l=(0,bc.toByteArray)(e);let h;if(n&&i&&!r){const t=n.split("\n\n"),e=(0,bc.toByteArray)(t[0].replace(qw,"").replace(/\s/gm,"")),r=u(await crypto.subtle.digest("SHA-256",e));c.push({id:"certFingerprint",expected:r,matched:null});const i=new Sw(e);h=await i.publicKey.export();const s=(0,bc.fromByteArray)(new Uint8Array(i.publicKey.rawData));c.push({id:"publicKey",expected:s,matched:null}),i.subject&&i.subject.startsWith("CN=")&&(a=i.subject.substring(3))}else{const t={name:"ECDSA",namedCurve:"P-384"};c.push({id:"publicKey",expected:r,matched:null}),h=await crypto.subtle.importKey("spki",(0,bc.toByteArray)(r),t,!0,["verify"])}const p=new TextEncoder,d=await crypto.subtle.verify({name:"ECDSA",hash:"SHA-256"},h,l,p.encode(t));return c.push({id:"signature",expected:!0,matched:d}),s&&c.push({id:"created",expected:s,matched:null}),o&&c.push({id:"software",expected:o,matched:null}),i&&c.push({id:"domain",expected:i,matched:a}),c}(e.signedData);return await i.addVerifyDataList(n,s),r}catch(t){console.warn(t)}}async loadPackage(t,e){const r=await this.loadTextFileFromWACZ(t,e),i=JSON.parse(r);switch(this.isRoot&&void 0!==i.config&&this.store.initConfig(i.config),i.profile){case"data-package":case"wacz-package":case void 0:case null:return await this.loadLeafWACZPackage(i);case"multi-wacz-package":return await this.loadMultiWACZPackage(i);default:throw new Error(`Unknown package profile: ${i.profile}`)}}async loadMultiWACZPackage(t){return this.file.markAsMultiWACZ(),await this.store.loadWACZFiles(t,this.file),t}async loadLeafWACZPackage(t){const e=t.metadata||{};let r=null;for(const e of t.resources)e.path===Qw?(r=e.hash,await this.store.addVerifyData(this.waczname,e.path,e.hash)):(e.path.endsWith(".idx")||e.path.endsWith(".cdx"))&&await this.store.addVerifyData(this.waczname,e.path,e.hash);return this.file.containsFile(Qw)&&(await this.loadPages(Qw,r)).hasText&&(this.store.textIndex=e.textIndex=Qw),this.file.containsFile(Kw)&&(this.store.textIndex=e.textIndex=Kw),e}async loadOldPackageYAML(t){const e=await this.loadTextFileFromWACZ(t),r=wc.load(e),i={desc:r.desc,title:r.title};r.textIndex&&(i.textIndex=r.textIndex,r.config||(r.config={}),r.config.textIndex=r.textIndex),this.isRoot&&void 0!==r.config&&this.store.initConfig(r.config),i.title||(i.title=this.store.config.sourceName);const n=r.pages||[];n?.length&&await this.store.addPages(n);const s=r.pageLists||[];return s?.length&&await this.store.addCuratedPageLists(s,"pages","show"),i}async loadPages(t=Qw,e=null){const{reader:r,hasher:i}=await this.loadFileFromWACZ(t,{unzip:!0,computeHash:!0});if(!r)return[];let n=null,s=[];for await(const t of r.iterLines()){const e=JSON.parse(t);this.waczname&&(e.wacz=this.waczname),n?(s.push(e),500===s.length&&(await this.store.addPages(s),s=[])):n=e}return s.length&&await this.store.addPages(s),i&&e&&await this.store.addVerifyData(this.waczname,t,e,i.getHash()),n}}class $w{loader;loadId=null;loadUrl;constructor(t,e,r=null){this.loader=t,this.loadId=r,this.loadUrl=e.loadUrl}async load(t){const e=this.loader;t.fullConfig&&e.arrayBuffer&&e.arrayBuffer.byteLength<=s&&(t.fullConfig.extra||(t.fullConfig.extra={}),t.fullConfig.extra.arrayBuffer=e.arrayBuffer);const r=this.loadUrl;return await t.addNewWACZ({name:"default",path:r,loader:e})}}class tb{loader;loadId=null;config;constructor(t,e,r=null){this.config=e,this.loadId=r,this.loader=t}async load(t,e=null,r=0){const i=new vo({loader:this.loader});await i.init();const n=i.zipreader,s=new Zw(t,i),o=await s.load();let a=0;const c=(t,i,n)=>{n+=a,e&&r&&e(Math.round(100*n/r),null,n,r)};for(const e of i.iterContainedFiles()){const r=n.getCompressedSize(e);(e.endsWith(".warc.gz")||e.endsWith(".warc"))&&await this.loadWARC(t,n,e,c,r),a+=r}return o||{}}async loadWARC(t,e,r,i,n){const{reader:s}=await e.loadFile(r,{unzip:!0});if(!s)throw new Error("no WARC found");const o=new as(s,null,r);return o.detectPages=!1,await o.load(t,i,n)}}class eb{response;constructor(t){this.response=t}async load(t){return await t.loadFromJSON(this.response)}}class rb{prefix;proxyPathOnly;isLive;archivePrefix;cloneResponse;allowBody;hostProxy;hostProxyOnly;messageOnProxyErrors;constructor(t,{cloneResponse:e=!1,allowBody:r=!1,hostProxyOnly:i=!1}={}){if(t=t||{},this.prefix=t.prefix||"",this.proxyPathOnly=t.proxyPathOnly||!1,this.isLive=void 0===t.isLive||t.isLive,this.archivePrefix=t.archivePrefix||"",this.cloneResponse=e,this.allowBody=r||this.isLive,this.messageOnProxyErrors=t.messageOnProxyErrors||!1,this.hostProxy=t.hostProxy,this.hostProxy instanceof Array){const t={};for(const e of this.hostProxy)t[e.host]=e;this.hostProxy=t}this.hostProxyOnly=i}async getAllPages(){return[]}getFetchUrl(t,e,r){let i;if(this.hostProxy){i=new URL(t);const e=this.hostProxy[i.host];if(e)return r.set("X-Proxy-Host",i.host),e.prefix+(e.pathOnly?i.pathname+i.search:t)}return this.hostProxyOnly?null:this.proxyPathOnly?(i||(i=new URL(t)),this.prefix+i.pathname+i.search):this.isLive||!e.timestamp?this.prefix+t:this.prefix+this.archivePrefix+e.timestamp+"id_/"+t}async getResource(t,e){const{headers:r,credentials:i,url:n}=t.prepareProxyRequest(e,!0),s=this.getFetchUrl(n,t,r);if(!s)return null;let o=null;const a="POST"===t.method||"PUT"===t.method||"DELETE"===t.method;a&&(this.allowBody?o=await t.getBody():this.sendProxyError("post-request-attempt",n,t.method));let c=await fetch(s,{method:t.method,body:o,headers:r,credentials:i,mode:"cors",redirect:"follow"}),l=!1;a&&c.status>=400?this.sendProxyError("post-request-failed",n,t.method,c.status):429===c.status&&this.sendProxyError("rate-limited",n,t.method,c.status),c.status>400&&404!==c.status&&["","document","iframe"].includes(t.destination)&&(c=function(t,e){return bn(function(t,e){return`\n <!doctype html>\n <html>\n <head>\n <script>\n window.requestURL = "${t}";\n <\/script>\n </head>\n <body style="font-family: sans-serif">\n <h2>Live page could not be loaded</h2>\n <p>Sorry, this page was could not be loaded through the archiving proxy. Check the URL and try again.</p>\n <p><code id="url" style="word-break: break-all; font-size: larger">Status Code: ${e}</code></p>\n <p id="goback" style="display: none"><a href="#" onclick="window.history.back()">Go Back</a> to the previous page.</a></p>\n\n <script>\n let isTop = true;\n try {\n if (window.parent._WB_wombat_location) {\n isTop = false;\n }\n } catch (e) {\n\n }\n if (isTop) {\n document.querySelector("#goback").style.display = "";\n\n window.parent.postMessage({\n wb_type: "live-proxy-url-error",\n url: window.requestURL,\n status: ${e},\n }, "*");\n }\n <\/script>\n </body>\n </html>\n `}(t,e),"text/html",e)}(n,c.status),l=!0);let h=null;this.cloneResponse&&(h=c.clone());const u=cn.fromResponse({url:n,response:c,date:new Date,noRW:l,isLive:this.isLive,archivePrefix:this.archivePrefix});return h&&(u.clonedResponse=h),u}async sendProxyError(t,e,r,i){if(!this.messageOnProxyErrors)return;const n=await self.clients.matchAll({type:"window"});for(const s of n)if(new URL(s.url).searchParams.get("source")===this.prefix){s.postMessage({type:t,url:e,method:r,status:i});break}}}const ib=/^([\w-]+,)*[\w-]+(:\d+)?,?\)\//;class nb extends io{config;waczfiles;waczNameForHash;ziploadercache;updating;rootSourceType;sourceLoader;externalSource;textIndex;fuzzyUrlRules;constructor(t,e,r="wacz"){super(t.dbname,t.noCache),this.config=t,this.waczfiles={},this.waczNameForHash={},this.ziploadercache={},this.updating=null,this.rootSourceType=r,this.sourceLoader=e,this.externalSource=null,this.fuzzyUrlRules=[],this.textIndex=t.metadata?.textIndex||Kw,t.extraConfig&&this.initConfig(t.extraConfig)}initConfig(t){if(void 0!==t.decodeResponses&&(this.config.decode=!!t.decodeResponses),t.hostProxy&&(this.externalSource=new rb(t,{hostProxyOnly:!0})),t.fuzzy)for(const[e,r]of t.fuzzy){const t=new RegExp(e);this.fuzzyUrlRules.push({match:t,replace:r})}t.textIndex&&(this.textIndex=t.textIndex)}updateHeaders(t){this.sourceLoader&&(this.sourceLoader.headers=t)}_initDB(t,e,r,i){super._initDB(t,e,r,i),e||(t.createObjectStore("ziplines",{keyPath:["waczname","prefix"]}),t.createObjectStore("waczfiles",{keyPath:"waczname"}),t.createObjectStore("verification",{keyPath:"id"})),2===e&&this.convertV2WACZDB(t,i),3===e&&t.createObjectStore("verification",{keyPath:"id"})}async convertV2WACZDB(t,e){try{const r=await e.objectStore("ziplines").getAll(),i=await e.objectStore("zipEntries").getAll();t.deleteObjectStore("ziplines"),t.deleteObjectStore("zipEntries"),t.createObjectStore("ziplines",{keyPath:["waczname","prefix"]}),t.createObjectStore("waczfiles",{keyPath:"waczname"}),t.createObjectStore("verification",{keyPath:"id"});const n=this.config.loadUrl;for(const t of r)t.waczname=n,e.objectStore("ziplines").put(t);const s=r.length>0?2:1,o=await this.computeFileHash(n,""),a=new vo({waczname:n,hash:o,path:n,entries:i,indexType:s});e.objectStore("waczfiles").put(a.serialize()),await e.done}catch(t){console.warn(t)}}addWACZFile(t){return this.waczfiles[t.waczname]=new vo(t),this.waczNameForHash[t.hash]=t.waczname,this.waczfiles[t.waczname]}async init(){await super.init();const t=await this.db.getAll("waczfiles")||[];for(const e of t)this.addWACZFile({...e,parent:this});for(const[t,e]of Object.entries(this.waczfiles)){e.path=e.path||t;const r=e.path.lastIndexOf("#!/");if(r>0){const t=e.path.slice(0,r),i=this.waczfiles[t];e.parent=i}else"json"!==this.rootSourceType&&(e.loader=this.sourceLoader)}await this.checkUpdates()}async close(){super.close(),caches.delete("cache:"+this.name.slice(3))}async clearZipData(){const t=["waczfiles","ziplines"];for(const e of t)await this.db.clear(e)}async addVerifyData(t="",e,r,i=null,n=!1){let s=!1;t&&(e=t+e),i&&(s=r===i,n&&console.log(`verify ${e}: ${s}`)),await this.db.put("verification",{id:e,expected:r,matched:s})}async addVerifyDataList(t,e){const r=this.db.transaction("verification","readwrite");for(const i of e)t&&(i.id=t+i.id),r.store.put(i);try{await r.done}catch(t){console.warn(t)}}async getVerifyInfo(){const t=await this.db.getAll("verification");let e=0,r=0;const i={},n=["domain","created","certFingerprint","software","datapackageHash","publicKey"];for(const s of t)n.includes(s.id)?i[s.id]=s.expected:"signature"===s.id||!0===s.matched?e++:!1===s.matched&&r++;return i.numInvalid=r,i.numValid=e,i}async getVerifyExpected(t){return(await this.db.get("verification",t))?.expected}async clearAll(){await super.clearAll(),await this.clearZipData()}async loadRecordFromSource(t){const{start:e,length:r,path:i,wacz:n}=t.source,s={offset:e,length:r,unzip:!0,computeHash:!0},o=n,{reader:a,hasher:c}=await this.loadFileFromNamedWACZ(o,"archive/"+i,s),l=new cs(a);await this.waczfiles[o].save(this.db);const h=await l.load();return t[uo]&&h?.respHeaders&&(h.respHeaders["x-wabac-preset-cookie"]=t[uo]),{remote:h,hasher:c}}async loadIndex(t){if(!this.waczfiles[t])throw new Error("unknown waczfile: "+t);if(this.waczfiles[t].indexType)return{indexType:this.waczfiles[t].indexType,isNew:!1};let e=0;for(const r of this.waczfiles[t].iterContainedFiles())r.endsWith(".cdx")||r.endsWith(".cdxj")?(console.log(`Loading CDX for ${t}`),await this.loadCDX(r,t),e=1):r.endsWith(".idx")&&(console.log(`Loading IDX for ${t}`),await this.loadIDX(r,t),e=2);return this.waczfiles[t].indexType=e,await this.waczfiles[t].save(this.db,!0),{indexType:e,isNew:!0}}async loadCDX(t,e,r,i){const{reader:n,hasher:s}=await this.loadFileFromNamedWACZ(e,t,{computeHash:!0}),o=new fo(n,null,e,{wacz:e}),a=await o.load(this,r,i);if(s){const r=await this.getVerifyExpected(t);r&&this.addVerifyData(e,t,r,s.getHash())}return a}async loadIDX(t,e,r,i){const{reader:n,hasher:s}=await this.loadFileFromNamedWACZ(e,t,{computeHash:!0}),o=[];let a="",c=!0,l=0;for await(const t of n.iterLines()){if(l+=t.length,l===t.length&&t.startsWith("!meta")){const e=t.indexOf(" {");if(e<0){console.warn("Invalid Meta Line: "+t);continue}const r=JSON.parse(t.slice(e));r.filename&&(a=r.filename),"cdxj-gzip-1.0"!==r.format&&console.log(`Unknown CDXJ format "${r.format}", archive may not parse correctly`);continue}let n;if(t.indexOf("\t")>0){const[r,i,s,o]=t.split("\t");n={waczname:e,prefix:r,filename:i,offset:Number(s),length:Number(o),loaded:!1},c=!1}else{const r=t.indexOf(" {");if(r<0){console.log("Invalid Index Line: "+t);continue}const i=t.slice(0,r);let{offset:s,length:o,filename:l,digest:h}=JSON.parse(t.slice(r));c=c&&!ib.test(i),l=l||a,n={waczname:e,prefix:i,filename:l,offset:s,length:o,digest:h,loaded:!1}}r&&i&&r(l/i,l,i),o.push(n)}if(s){const r=await this.getVerifyExpected(t);r&&this.addVerifyData(e,t,r,s.getHash())}const h=this.db.transaction("ziplines","readwrite");for(const t of o)h.store.put(t);try{await h.done}catch(t){console.log("Error loading ziplines index: ",t)}c&&c!==this.waczfiles[e].nonSurt&&(this.waczfiles[e].nonSurt=c,await this.waczfiles[e].save(this.db,!0))}async loadCDXFromIDX(t,e,r=0,i=!1){const n=this.waczfiles[t].nonSurt?e:tt(e),s=i?this.prefixUpperBound(n):n+" 9999",o=IDBKeyRange.upperBound([t,s],!0),a=this.db.transaction("ziplines","readonly"),c=[];for await(const e of a.store.iterate(o,"prev")){if(e.value.waczname!==t)break;if(c.unshift(e.value),!e.value.prefix.split(" ")[0].startsWith(n))break}await a.done;const l=[];c.length>3&&r&&c.sort(((t,e)=>{const i=t.prefix.split(" ")[1],n=e.prefix.split(" ")[1];if(!i||!n)return 0;const s=Math.abs(h(i).getTime()-r),o=Math.abs(h(n).getTime()-r);return s===o?0:s<o?-1:1}));let u=0;for(const e of c){if(e.loaded)continue;const r=t+":"+e.filename+":"+e.offset;let i=this.ziploadercache[r];if(i||(i=this.doCDXLoad(r,e,t),this.ziploadercache[r]=i),l.push(i),++u>3)break}return l.length&&await Promise.allSettled(l),await this.waczfiles[t].save(this.db),l.length>0}async doCDXLoad(t,e,r){try{const t="indexes/"+e.filename,i={offset:e.offset,length:e.length,unzip:!0,computeHash:!!e.digest},{reader:n,hasher:s}=await this.loadFileFromNamedWACZ(r,t,i),o=new fo(n,null,"",{wacz:r});if(await o.load(this),s){const i=s.getHash(),n=`${t}:${e.offset}-${e.length}`;await this.addVerifyData(r,n,e.digest||"",i)}e.loaded=!0,await this.db.put("ziplines",e)}catch(t){await v(t,this.config)||console.warn(t)}finally{delete this.ziploadercache[t]}}async findPageAtUrl(t,e){const r=await this.db.getAllFromIndex("pages","url",t);let i=null,n=Number.MAX_SAFE_INTEGER;for(const t of r){const r=Math.abs(t.ts-e);if(r<1e3)return t;r<n&&(i=t,n=r)}return i}async lookupUrl(t,e,r={}){try{const{waczname:i}=r;let n;return i&&"local"!==i&&(n=await this.lookupUrlForWACZ(i,t,e,r)),!n||r.noRevisits&&"warc/revisit"===n.mime?(n=await super.lookupUrl(t,e,r),n):n}catch(t){return console.warn(t),null}}async lookupUrlForWACZ(t,e,r,i){const{indexType:n,isNew:s}=await this.loadIndex(t);switch(n){case 2:if(!await this.loadCDXFromIDX(t,e,r,!1))return null;break;case 1:if(!s)return null;break;default:return null}return await super.lookupUrl(e,r,i)}async resourcesByUrlAndMime(t,...e){let r=await super.resourcesByUrlAndMime(t,...e);if(r.length>0)return r;for(const i of Object.keys(this.waczfiles))if(i&&"local"!==i){const{indexType:n,isNew:s}=await this.loadIndex(i);switch(n){case 2:if(!await this.loadCDXFromIDX(i,t,0,!0))continue;break;case 1:if(!s)continue;break;default:continue}const o=await super.resourcesByUrlAndMime(t,...e);o&&o.length&&(r=r.concat(o))}return r}async loadFileFromWACZ(t,e,r){try{return await t.loadFile(e,r)}catch(i){if(await this.retryLoad(i))return await t.loadFile(e,r);throw i}}async loadFileFromNamedWACZ(t,e,r){const i=this.waczfiles[t];if(!i)throw new Error("No WACZ Found for: "+t);return await this.loadFileFromWACZ(i,e,r)}async computeFileHash(t,e){return e?e.indexOf(":")>0&&(e=e.split(":")[1]):e=await p(t,"sha-256",""),e}async addNewWACZ({name:t,hash:e,path:r,parent:i,loader:n=null}){const s=t||r||"";e=await this.computeFileHash(s,e);const o=this.addWACZFile({waczname:s,hash:e,path:r,parent:i,loader:n});await o.init(),await o.save(this.db,!0);const a=new Zw(this,o,!i);return await a.load()}async loadWACZFiles(t,e=this){const r=[],i=async(t,e)=>{await this.waczfiles[t].init(e),await this.waczfiles[t].save(this.db,!0)},n=t.resources.map((t=>{const r=e.getLoadPath(t.path);return{name:e.getName(t.name),hash:t.hash,path:r}}));for(const{name:t,hash:s,path:o}of n)this.waczfiles[t]?this.waczfiles[t].path!==o&&r.push(i(t,o)):r.push(this.addNewWACZ({name:t,hash:s,path:o,parent:e}));r.length&&await Promise.allSettled(r)}async getTextIndex(){const t={"Content-Type":"application/ndjson"},e=Object.keys(this.waczfiles);if(!this.textIndex||!e.length)return new Response("",{headers:t});if(1===e.length){const r=e[0];let i;try{i=await this.loadFileFromNamedWACZ(r,this.textIndex,{unzip:!0})}catch(e){return new Response("",{headers:t})}const{reader:n}=i,s=this.waczfiles[r].getSizeOf(this.textIndex);return s>0&&(t["Content-Length"]=""+s),new Response(n.getReadableStream(),{headers:t})}{const r=[];for(const i of e)try{const{reader:t}=await this.loadFileFromNamedWACZ(i,this.textIndex,{unzip:!0});t&&r.push(t)}catch(t){continue}const i=new ReadableStream({async pull(t){for(const e of r)for await(const r of e)t.enqueue(r);t.close()}});return new Response(i,{headers:t})}}async getResource(t,e,r,{pageId:i,noRedirect:n}={}){if(await this.initing,this.externalSource){const r=await this.externalSource.getResource(t,e);if(r)return r}const s=i;let o=null,a=null;if(s){if(o=this.waczNameForHash[s],!o)return null;if(a=await super.getResource(t,e,r,{waczname:o}),a)return a}const c=new Map;for(const[i,o]of Object.entries(this.waczfiles))if("wacz"===o.fileType&&o.hash!==s&&(a=await super.getResource(t,e,r,{waczname:i,noFuzzyCheck:!0,loadFirst:!0}),a)){if(n)return a;c.set(a.date,{name:i,hash:o.hash})}if(c.size>0){const r=h(t.timestamp);let i,n,s=-1;for(const t of c.keys()){const e=Math.abs(t.getTime()-r.getTime());if(s<0||e<s){const{name:r,hash:a}=c.get(t);o=r,n=a,i=l(t.toISOString()),s=e}}return Response.redirect(`${e}:${n}/${i}mp_/${t.url}`)}if(this.fuzzyUrlRules.length)for(const{match:i,replace:n}of this.fuzzyUrlRules){const s=decodeURIComponent(t.url.replace(i,n));if(s&&s!==t.url){t.url=s;const i=await super.getResource(t,e,r);if(i)return i}}return null}async retryLoad(t){return"json"===this.rootSourceType&&(t instanceof x?(this.updating||(this.updating=this.checkUpdates()),await this.updating,this.updating=null,!0):await v(t,this.config))}async checkUpdates(){"json"===this.rootSourceType&&await this.loadFromJSON()}async loadFromJSON(t=null){if(!t){const e=await this.sourceLoader.doInitialFetch(!1,!1);t=e&&e.response}if(!t||206!==t.status&&200!==t.status)return console.warn("WACZ update failed from: "+this.config.loadUrl),{};const e=await t.json();return e.profile,await this.loadWACZFiles(e),e}getLoadPath(t){return new URL(t,this.config.loadUrl).href}getName(t){return t}async createLoader(t){return await Qs(t)}}class sb{sourceUrl;type;notFoundPageUrl;constructor(t){const e=t.extraConfig||{};this.sourceUrl=e.prefix,this.type=e.sourceType||"kiwix",this.notFoundPageUrl=e.notFoundPageUrl}async getAllPages(){return[]}async getResource(t,e){const{url:r,headers:i}=t.prepareProxyRequest(e);let n=i;if("kiwix"===this.type){let e=await this.resolveHeaders(r);if(!e)for(const t of ts.getFuzzyCanonsWithArgs(r))if(t!==r&&(e=await this.resolveHeaders(t),e))break;if(!e){if(this.notFoundPageUrl&&"navigate"===t.mode){const t=await fetch(this.notFoundPageUrl);if(200===t.status){const e={"Content-Type":"text/html"},i=await t.text();return new Response(i.replace("$URL",r),{status:404,headers:e})}}return null}let{headers:i,encodedUrl:s,date:o,status:a,statusText:c,hasPayload:l}=e;if(n.has("Range")){const t=n.get("Range");t&&(n={Range:t})}let h=null,u=null;if(i||(i=new Headers),l&&(u=await fetch(this.sourceUrl+"A/"+s,{headers:n}),u.body&&(h=new dt(u.body.getReader(),null,!1)),206===u.status)){const t=u.headers.get("Content-Length"),e=u.headers.get("Content-Range");t&&e&&(a=206,c="Partial Content",i.set("Content-Length",t),i.set("Content-Range",e),i.set("Accept-Ranges","bytes"))}return h||(h=new Uint8Array([])),o||(o=new Date),new cn({payload:h,status:a,statusText:c,headers:i,url:r,date:o,noRW:!1,isLive:!1})}return null}async resolveHeaders(t){const e=t.slice(t.indexOf("//")+2);let r=encodeURI(e);r=encodeURIComponent(e);const i=await fetch(this.sourceUrl+"H/"+r);if(200!==i.status)return null;let n=null,s=null,o=200,a="OK",c=!1;try{const e=await It.parse(i.body);if(!e)return null;if("revisit"===e.warcType){const r=e.warcHeaders.headers.get("WARC-Refers-To-Target-URI");if(r&&r!==t)return await this.resolveHeaders(r)}s=new Date(e.warcDate),e.httpHeaders?(n=e.httpHeaders.headers,o=Number(e.httpHeaders.statusCode),a=e.httpHeaders.statusText||"",c="0"!==e.httpHeaders.headers.get("Content-Length")):"resource"===e.warcType&&(n=new Headers,n.set("Content-Type",e.warcContentType||""),n.set("Content-Length",e.warcContentLength+""),o=200,a="OK",c=e.warcContentLength>0),o||(o=200)}catch(e){console.warn(e),console.warn("Ignoring headers, error parsing headers response for: "+t)}return{encodedUrl:r,headers:n,date:s,status:o,statusText:a,hasPayload:c}}}const ob=lb([80,75,3,4]),ab=lb([31,139,8]),cb=lb([87,65,82,67]);function lb(t){return e=>{for(const[r,i]of t.entries())if(i!==e[r])return!1;return!0}}globalThis.self||(globalThis.self=globalThis);const hb={};self.interruptLoads=hb;class ub extends class{root=null;colldb=null;checkIpfs=!0;_init_db;_fileHandles=null;constructor(){this._init_db=this._initDB()}async _initDB(){this.colldb=await Dn("collDB",1,{upgrade:t=>{t.createObjectStore("colls",{keyPath:"name"}).createIndex("type","type")}})}async loadAll(t){if(await this._init_db,t)for(const e of t.split(",")){const t=e.split(":");if(2===t.length){const e={dbname:t[1],sourceName:t[1],decode:!1,sourceUrl:""},r={name:t[0],type:"archive",config:e};console.log("Adding Coll: "+JSON.stringify(r)),await this.colldb.put("colls",r)}}try{const t=(await this.listAll()).map((async t=>this._initColl(t)));await Promise.all(t)}catch(t){console.warn(t.toString())}return!0}async listAll(){return await this._init_db,await this.colldb.getAll("colls")}async loadColl(t){await this._init_db;const e=await this.colldb.get("colls",t);return e?await this._initColl(e):null}async reload(t){return this.loadColl(t)}async deleteColl(t){await this._init_db;const e=await this.colldb.get("colls",t);if(!e)return!1;if(e.config.dbname)try{await Ln(e.config.dbname,{blocked(t,r){console.log(`Unable to delete ${e.config.dbname}, blocked: ${r}`)}})}catch(t){return console.warn(t),!1}return await this.colldb.delete("colls",t),!0}async updateAuth(t,e){await this._init_db;const r=await this.colldb.get("colls",t);return!!r&&(r.config.headers=e,await this.colldb.put("colls",r),!0)}async updateMetadata(t,e){await this._init_db;const r=await this.colldb.get("colls",t);return!!r&&(r.config.metadata={...r.config.metadata,...e},await this.colldb.put("colls",r),r.config.metadata)}async updateSize(t,e,r,i){await this._init_db;const n=await this.colldb.get("colls",t);if(!n)return!1;const s=n.config.metadata||{};return s.fullSize=(s.fullSize||0)+e,s.size=(s.size||0)+r,s.mtime=(new Date).getTime(),void 0!==i&&(n.config.decode=i),await this.colldb.put("colls",n),s}async initNewColl(t,e={},r="archive"){await this._init_db;const i=g(),n="local://"+i,s={name:i,type:r,config:{dbname:"db:"+i,ctime:(new Date).getTime(),decode:!1,metadata:t,sourceUrl:n,extraConfig:e}},o=await this._initColl(s);return await this.colldb.put("colls",s),o}async _initColl(t){const e=await this._initStore(t.type||"",t.config),r=t.name,i=t.config;return t.config.root&&!this.root&&(this.root=r||null),this._createCollection({name:r,store:e,config:i})}async _initStore(t,e){let r,i=null;switch(t){case"archive":i=new is(e.dbname);break;case"remotesource":r=await Qs({url:e.loadUrl,headers:e.headers,size:e.size,extra:e.extra}),i=new so(e.dbname,r,e.noCache);break;case"remoteprefix":i=new oo(e.dbname,e.remotePrefix,e.headers,e.noCache);break;case"wacz":case"remotezip":case"multiwacz":r=await Qs({url:e.loadUrl||e.sourceUrl,headers:e.headers,extra:e.extra}),i=new nb(e,r,"multiwacz"===t?"json":"wacz");break;case"remotewarcproxy":i=new sb(e);break;case"live":i=new rb(e.extraConfig)}return i?(i.initing&&await i.initing,i):(console.log("no store found: "+t),null)}_createCollection(t){return t}}{constructor(t){super(),this.registerListener(t)}async hasCollection(t){return await this._init_db,null!=await this.colldb.getKey("colls",t)}registerListener(t){t.addEventListener("message",(t=>{t.waitUntil?t.waitUntil(this._handleMessage(t)):this._handleMessage(t)}))}async _handleMessage(t){await this._init_db;const e=t.source||self;switch(t.data.msg_type){case"addColl":{const r=t.data.name,i=(t,i,n,s,o=null,a=null)=>{e.postMessage({msg_type:"collProgress",name:r,percent:t,error:i,currentSize:n,totalSize:s,fileHandle:o,extraMsg:a})};let n;try{if(n=await this.colldb.get("colls",r),n?t.data.skipExisting||(await this.deleteColl(r),n=await this.addCollection(t.data,i)):n=await this.addCollection(t.data,i),!n){if(t.data.name)try{await Ln("db:"+t.data.name,{blocked(e,r){console.log(`Load failed and unable to delete ${t.data.name}: ${r}`)}})}catch(t){console.warn(t)}return}}catch(t){if(t instanceof T)return console.warn(t),void i(0,"permission_needed",null,null,t.info?.fileHandle);if("ConstraintError"!==t.name)return console.warn(t),void i(0,"An unexpected error occured: "+t.toString(),null,null);console.log("already being added, just continue..."),n=await this.colldb.get("colls",r)}e.postMessage({msg_type:"collAdded",name:r,sourceUrl:n?.config.sourceUrl});break}case"cancelLoad":{const e=t.data.name,r=new Promise((t=>hb[e]=t));await r,await this.deleteColl(e),delete hb[e];break}case"removeColl":{const r=t.data.name;await this.hasCollection(r)&&(await this.deleteColl(r),this.doListAll(e));break}case"listAll":this.doListAll(e);break;case"reload":this.reload(t.data.name)}}async doListAll(t){const e=[],r=await this.listAll();for(const t of r)e.push({name:t.name,prefix:t.name,pageList:[],sourceName:t.config.sourceName});t.postMessage({msg_type:"listAll",colls:e})}async addCollection(t,e){let r=t.name,i="";const n={root:t.root||!1};let o=null,a=null;const c=t.file;if(!c?.sourceUrl)return e(0,"Invalid Load Request"),!1;if(n.dbname="db:"+r,c.sourceUrl.startsWith("proxy:"))n.sourceUrl=c.sourceUrl.slice(6),n.extraConfig=t.extraConfig,n.extraConfig.prefix||(n.extraConfig.prefix=n.sourceUrl),n.topTemplateUrl=t.topTemplateUrl,n.metadata={},i=t.type||n.extraConfig.type||"remotewarcproxy",o=await this._initStore(i,n);else{let l=null,h=null;if(c.newFullImport&&(r=g(),c.loadUrl=c.loadUrl||c.sourceUrl,c.name=c.name||c.sourceUrl,c.sourceUrl="local://"+r),i="archive",c.newFullImport&&c.importCollId){const t=await this.colldb.get("colls",c.importCollId);if(!t||"archive"!==t.type)return e(0,"Invalid Existing Collection: "+c.importCollId),!1;n.dbname=t.config.dbname,a=t.config,a&&(a.decode=!0)}let u=c.loadUrl||c.sourceUrl;u.match(/[\w]+:\/\//)||(u=new URL(u,self.location.href).href),n.decode=!0,n.onDemand=!1,n.loadUrl=u,n.sourceUrl=c.sourceUrl;let p=c.name||c.sourceUrl;try{if(p.match(/https?:\/\//)){const t=new URL(p);p=t.pathname+t.hash}}catch(t){}if(n.sourceName=p.slice(p.lastIndexOf("/")+1),n.size="number"==typeof c.size?c.size:null,n.extra=c.extra,n.loadUrl.startsWith("file://")&&!c.blob&&!n.extra){if(!this._fileHandles||!this._fileHandles[n.sourceUrl])return e(0,"missing_local_file"),!1;n.extra={fileHandle:this._fileHandles[n.sourceUrl]}}n.extraConfig=t.extraConfig,n.headers=c.headers||n.extraConfig?.headers,n.noCache=c.noCache;let d=await Qs({url:u,headers:n.headers,size:c.size,extra:n.extra,blob:c.blob});if(c.loadEager){const{response:t}=await d.doInitialFetch(!1,!0),e={arrayBuffer:new Uint8Array(await t.arrayBuffer())};c.newFullImport=!0,d=await Qs({url:u,headers:n.headers,size:c.size,extra:e})}let f=function(t){const e=[".warc",".warc.gz",".cdx",".cdxj",".har",".json",".wacz",".zip"];for(const r of e)if(t.endsWith(r))return r}(n.sourceName);const{abort:y,response:m}=await d.doInitialFetch(".wacz"===f,!1);f||(f=await async function(t){const e=t.body.getReader();let r="";const{value:i,done:n}=await e.read();var s;return!n&&i.length>=4&&(s=i.slice(0,4),r=ob(s)?".wacz":cb(s)?".warc":ab(s)?".warc.gz":void 0,r||(r=function(t){try{const e=(new TextDecoder).decode(t).split("\n");if(e.length>1&&e.indexOf(" {")>=0)return".cdxj"}catch(t){return""}}(i))),n||e.cancel(),r}(await m.clone()));const w=m.body;if(n.onDemand=d.canLoadOnDemand&&!c.newFullImport,!d.isValid){const t=d.length&&d.length<=1e3?await m.text():"";return e(0,`Sorry, this URL could not be loaded.\nMake sure this is a valid URL and you have access to this file.\nStatus: ${m.status} ${m.statusText}\nError Details:\n${t}`),y&&y.abort(),!1}if(!d.length)return e(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."),y&&y.abort(),!1;const b=d.length;if(".wacz"===f)if(n.onDemand)l=new $w(d,n,r),h=new nb(n,d,"wacz"),i="wacz";else{if(!d.canLoadOnDemand||!c.newFullImport)return e(0,"Sorry, can't load this WACZ file due to lack of range request support on the server"),y&&y.abort(),!1;l=new tb(d,n,r),h=null,delete n.extra}else!w||".warc"!==f&&".warc.gz"!==f?!w||".cdx"!==f&&".cdxj"!==f?".har"===f?(l=new ho(await m.json()),n.decode=!1):".json"===f&&(h=new nb(n,d,"json"),l=new eb(m),i="multiwacz"):(n.remotePrefix=t.remotePrefix||u.slice(0,u.lastIndexOf("/")+1),l=new fo(w,y,r),i="remoteprefix",h=new oo(n.dbname,n.remotePrefix,n.headers,n.noCache)):n.noCache||!(b<s)&&n.onDemand?(l=new po(w,y,r),i="remotesource",h=new so(n.dbname,d,n.noCache)):l=new as(w,y,r);if(!l)return e(0,`The ${n.sourceName} is not a known archive format that could be loaded.`),y&&y.abort(),!1;h||(h=new is(n.dbname)),await h.initing;try{n.metadata=await l.load(h,e,b)}catch(t){return t instanceof C||(e(0,`Unexpected Loading Error: ${t.toString()}`),console.warn(t)),!1}if(a)return await this.updateSize(c.importCollId,b,b,a.decode),{config:a,type:"",name:""};n.metadata.size||(n.metadata.size=b),n.metadata.title||(n.metadata.title=n.sourceName),o=h}n.ctime=(new Date).getTime(),this._fileHandles&&n.extra?.fileHandle&&delete this._fileHandles[n.sourceUrl];const l={name:r,type:i,config:n};return await this.colldb.add("colls",l),l.store=o,l}}let pb;class db{timeRanges={};updateStats(t,e,r,i){const n=i.clientId||i.resultingClientId;if(!n||!t)return;if(!r.url||r.url.indexOf("mp_/")<0)return;if("document"===r.destination&&e>300&&e<400)return;let s;void 0===this.timeRanges[n]?(s={count:0,children:new Set},this.timeRanges[n]=s,r.referrer.indexOf("mp_/")>0&&pb.clients.matchAll({type:"window"}).then((t=>this.updateStatsParent(n,r.referrer,t)))):s=this.timeRanges[n];const o=t.getTime();(!s.min||o<s.min)&&(s.min=o),(!s.max||o>s.max)&&(s.max=o),s.count++}updateStatsParent(t,e,r){for(const i of r)if(i.url===e){this.timeRanges[i.id]||(this.timeRanges[i.id]={count:0,children:new Set}),this.timeRanges[i.id].children.add(t);break}}async getStats(t){const e=new URL(t.request.url);let r="";const i=new URLSearchParams(e.search).get("url"),n=await pb.clients.matchAll({type:"window"}),s={};for(const t of n)t.url===i&&(r=t.id),s[t.id]=1;const o=this.timeRanges[r]||{},a={count:o.count||0,min:o.min,max:o.max},c=this.timeRanges[r]&&this.timeRanges[r].children;for(const t of c.values()){const e=this.timeRanges[t];e&&(e.min&&(!a.min||e.min<a.min)&&(a.min=e.min),e.max&&(!a.max||e.max>a.max)&&(a.max=e.max),a.count+=e.count)}for(const t of Object.keys(this.timeRanges))s[t]||delete this.timeRanges[t];return new Response(JSON.stringify(a),{headers:{"Content-Type":"application/json"}})}}var fb=function(){return fb=Object.assign||function(t){for(var e,r=1,i=arguments.length;r<i;r++)for(var n in e=arguments[r])Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t},fb.apply(this,arguments)},gb=function(t){return void 0===t&&(t={}),{arrayFormat:t.arrayFormat||"none",booleanFormat:t.booleanFormat||"none",nullFormat:t.nullFormat||"default"}},yb=function(t){return encodeURIComponent(t)},mb=function(t){return decodeURIComponent(t)},wb=function(t,e){var r=gb(e);return function(t){var e=t.indexOf("?");return-1===e?t:t.slice(e+1)}(t).split("&").reduce((function(t,e){var i=e.split("="),n=i[0],s=i[1],o=function(t){var e=t.indexOf("["),r=-1!==e;return{hasBrackets:r,name:r?t.slice(0,e):t}}(n),a=o.hasBrackets,c=o.name,l=t[c],h=function(t,e){if(void 0===t)return"empty-true"===e.booleanFormat||null;if("string"===e.booleanFormat){if("true"===t)return!0;if("false"===t)return!1}if("unicode"===e.booleanFormat){if("✓"===mb(t))return!0;if("✗"===mb(t))return!1}return"string"===e.nullFormat&&"null"===t?null:mb(t)}(s,r);return t[c]=void 0===l?a?[h]:h:(Array.isArray(l)?l:[l]).concat(h),t}),{})},bb=/[^!$'()*+,;|:]/g,Ab=function(t){return t.replace(bb,(function(t){return encodeURIComponent(t)}))},vb={default:Ab,uri:encodeURI,uriComponent:encodeURIComponent,none:function(t){return t},legacy:encodeURI},_b={default:decodeURIComponent,uri:decodeURI,uriComponent:decodeURIComponent,none:function(t){return t},legacy:decodeURIComponent},Eb=function(t,e,r){var i=vb[e]||Ab;return r?String(t).split("/").map(i).join("/"):i(String(t))},Sb=function(t){return"("+(t?t.replace(/(^<|>$)/g,""):"[a-zA-Z0-9-_.~%':|=+\\*@$]+")+")"},Tb=[{name:"url-parameter",pattern:/^:([a-zA-Z0-9-_]*[a-zA-Z0-9]{1})(<(.+?)>)?/,regex:function(t){return new RegExp(Sb(t[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(t){return new RegExp(";"+t[1]+"="+Sb(t[2]))}},{name:"query-parameter",pattern:/^(?:\?|&)(?::)?([a-zA-Z0-9-_]*[a-zA-Z0-9]{1})/},{name:"delimiter",pattern:/^(\/|\?)/,regex:function(t){return new RegExp("\\"+t[0])}},{name:"sub-delimiter",pattern:/^(!|&|-|_|\.|;)/,regex:function(t){return new RegExp(t[0])}},{name:"fragment",pattern:/^([0-9a-zA-Z]+)/,regex:function(t){return new RegExp(t[0])}}],xb=function t(e,r){if(void 0===r&&(r=[]),!Tb.some((function(i){var n=e.match(i.pattern);return!!n&&(r.push({type:i.name,match:n[0],val:n.slice(1,2),otherVal:n.slice(2),regex:i.regex instanceof Function?i.regex(n):i.regex}),n[0].length<e.length&&(r=t(e.substr(n[0].length),r)),!0)})))throw new Error("Could not parse path '"+e+"'");return r},Cb=function(t){return null!=t},Ib={urlParamsEncoding:"default"},Rb=function(){function t(t,e){if(!t)throw new Error("Missing path in Path constructor");this.path=t,this.options=fb(fb({},Ib),e),this.tokens=xb(t),this.hasUrlParams=this.tokens.filter((function(t){return/^url-parameter/.test(t.type)})).length>0,this.hasSpatParam=this.tokens.filter((function(t){return/splat$/.test(t.type)})).length>0,this.hasMatrixParams=this.tokens.filter((function(t){return/matrix$/.test(t.type)})).length>0,this.hasQueryParams=this.tokens.filter((function(t){return/^query-parameter/.test(t.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(t){return void 0!==t.regex})).map((function(t){return t.regex.source})).join("")}return t.createPath=function(e,r){return new t(e,r)},t.prototype.isQueryParam=function(t){return-1!==this.queryParams.indexOf(t)},t.prototype.isSpatParam=function(t){return-1!==this.spatParams.indexOf(t)},t.prototype.test=function(t,e){var r=this,i=fb(fb({caseSensitive:!1,strictTrailingSlash:!1},this.options),e),n=function(t,e){return e||"\\/"===t?t:t.replace(/\\\/$/,"")+"(?:\\/)?"}(this.source,i.strictTrailingSlash),s=this.urlTest(t,n+(this.hasQueryParams?"(\\?.*$|$)":"$"),i.caseSensitive,i.urlParamsEncoding);if(!s||!this.hasQueryParams)return s;var o=wb(t,i.queryParams),a=Object.keys(o).filter((function(t){return!r.isQueryParam(t)}));return 0===a.length?(Object.keys(o).forEach((function(t){return s[t]=o[t]})),s):null},t.prototype.partialTest=function(t,e){var r=this,i=fb(fb({caseSensitive:!1,delimited:!0},this.options),e),n=function(t,e){return e?/(\/)$/.test(t)?t:t+"(\\/|\\?|\\.|;|$)":t}(this.source,i.delimited),s=this.urlTest(t,n,i.caseSensitive,i.urlParamsEncoding);if(!s)return s;if(!this.hasQueryParams)return s;var o=wb(t,i.queryParams);return Object.keys(o).filter((function(t){return r.isQueryParam(t)})).forEach((function(t){return function(t,e,r){void 0===r&&(r="");var i=t[e];return t[e]=void 0===i?r:Array.isArray(i)?i.concat(r):[i,r],t}(s,t,o[t])})),s},t.prototype.build=function(t,e){var r=this;void 0===t&&(t={});var i=fb(fb({ignoreConstraints:!1,ignoreSearch:!1,queryParams:{}},this.options),e),n=Object.keys(t).filter((function(t){return!r.isQueryParam(t)})).reduce((function(e,n){if(!Cb(t[n]))return e;var s=t[n],o=r.isSpatParam(n);return"boolean"==typeof s?e[n]=s:Array.isArray(s)?e[n]=s.map((function(t){return Eb(t,i.urlParamsEncoding,o)})):e[n]=Eb(s,i.urlParamsEncoding,o),e}),{});if(this.urlParams.some((function(e){return!Cb(t[e])}))){var s=this.urlParams.filter((function(e){return!Cb(t[e])}));throw new Error("Cannot build path: '"+this.path+"' requires missing parameters { "+s.join(", ")+" }")}if(!i.ignoreConstraints&&!this.tokens.filter((function(t){return/^url-parameter/.test(t.type)&&!/-splat$/.test(t.type)})).every((function(t){return new RegExp("^"+Sb(t.otherVal[0])+"$").test(n[t.val])})))throw new Error("Some parameters of '"+this.path+"' are of invalid format");var o=this.tokens.filter((function(t){return!1===/^query-parameter/.test(t.type)})).map((function(t){return"url-parameter-matrix"===t.type?";"+t.val+"="+n[t.val[0]]:/^url-parameter/.test(t.type)?n[t.val[0]]:t.match})).join("");if(i.ignoreSearch)return o;var a=this.queryParams.filter((function(e){return-1!==Object.keys(t).indexOf(e)})).reduce((function(e,r){return e[r]=t[r],e}),{}),c=function(t,e){var r=gb(e);return Object.keys(t).filter((function(e){return function(t){return void 0!==t}(t[e])})).map((function(e){return function(t,e,r){return null===e?function(t,e){return"hidden"===e.nullFormat?"":"string"===e.nullFormat?t+"=null":t}(t,r):"boolean"==typeof e?function(t,e,r){return"empty-true"===r.booleanFormat&&e?t:t+"="+("unicode"===r.booleanFormat?e?"✓":"✗":e.toString())}(t,e,r):Array.isArray(e)?function(t,e,r){var i=function(t){return"index"===t.arrayFormat?function(t,e){return t+"["+e+"]"}:"brackets"===t.arrayFormat?function(t){return t+"[]"}:function(t){return t}}(r);return e.map((function(e,r){return i(t,r)+"="+yb(e)})).join("&")}(t,e,r):t+"="+yb(e)}(e,t[e],r)})).filter(Boolean).join("&")}(a,i.queryParams);return c?o+"?"+c:o},t.prototype.getParams=function(t){var e=t instanceof RegExp?function(e){return t.test(e.type)}:function(e){return e.type===t};return this.tokens.filter(e).map((function(t){return t.val[0]}))},t.prototype.urlTest=function(t,e,r,i){var n=this,s=new RegExp("^"+e,r?"":"i"),o=t.match(s);return o?this.urlParams.length?o.slice(1,this.urlParams.length+1).reduce((function(t,e,r){return t[n.urlParams[r]]=(_b[i]||decodeURIComponent)(e),t}),{}):{}:null},t}();class kb{routes={};constructor(t){for(const[e,r]of Object.entries(t)){let t,i;r instanceof Array?(t=r[0],i=r[1]||"GET"):(t=r,i="GET"),this.routes[i]=this.routes[i]||{},this.routes[i][e]=new Rb(t)}}match(t,e="GET"){for(const[r,i]of Object.entries(this.routes[e]||[])){const e=t.split("?",2),n=e[0],s=i.test(n);if(s)return s._route=r,s._query=new URLSearchParams(2===e.length?e[1]:""),s}return{_route:null}}}class Nb{router;collections;constructor(t){this.router=new kb(this.routes),this.collections=t}get routes(){return{index:"coll-index",coll:"c/:coll",urls:"c/:coll/urls",urlsTs:"c/:coll/ts/",createColl:["c/create","POST"],deleteColl:["c/:coll","DELETE"],updateAuth:["c/:coll/updateAuth","POST"],updateMetadata:["c/:coll/metadata","POST"],curated:"c/:coll/curated/:list",pages:"c/:coll/pages",textIndex:"c/:coll/textIndex",deletePage:["c/:coll/page/:page","DELETE"]}}async apiResponse(t,e,r){const i=this.router.match(t,e.method),n=await this.handleApi(e,i,r);if(n instanceof Response)return n;const s=n.error?404:200;return this.makeResponse(n,s)}async handleApi(t,e,r){switch(e._route){case"index":return await this.listAll(e._query.get("filter"));case"createColl":{const e=await t.json();return E(await this.collections.initNewColl(e.metadata||{},e.extraConfig||{}))}case"coll":{const t=await this.collections.getColl(e.coll);if(!t)return{error:"collection_not_found"};const r=E(t);return"1"===e._query.get("all")?(t.store.db?(r.pages=await t.store.getAllPages(),r.lists=await t.store.db.getAll("pageLists"),r.curatedPages=await t.store.db.getAll("curatedPages")):(r.pages=[],r.lists=[],r.curatedPages=[]),r.verify=await t.store.getVerifyInfo()):t.store.db?(r.numLists=await t.store.db.count("pageLists"),r.numPages=await t.store.db.count("pages")):(r.numLists=0,r.numPages=0),t.config.metadata.ipfsPins&&(r.ipfsPins=t.config.metadata.ipfsPins),r}case"deleteColl":{const t="1"===e._query.get("reload");return await this.collections.deleteColl(e.coll,t)?await this.listAll():{error:"collection_not_found"}}case"updateAuth":{const r=await t.json();return{success:await this.collections.updateAuth(e.coll,r.headers)}}case"updateMetadata":{const r=await t.json();return{metadata:await this.collections.updateMetadata(e.coll,r)}}case"urls":{const t=await this.collections.getColl(e.coll);if(!t)return{error:"collection_not_found"};const r=e._query.get("url"),i=Number(e._query.get("count")||100),n=e._query.get("mime"),s="1"===e._query.get("prefix"),o=e._query.get("fromUrl"),a=e._query.get("fromTs"),c=e._query.get("fromMime"),l=Number(e._query.get("fromStatus")||0);if(!t.store.resourcesByMime)return{urls:[]};let h;return h=r?await t.store.resourcesByUrlAndMime(r,n,i,s,o,a):await t.store.resourcesByMime(n,i,c,o,l),h=h||[],{urls:h}}case"urlsTs":{const t=await this.collections.getColl(e.coll);if(!t)return{error:"collection_not_found"};const r=e._query.get("url");return{timestamps:await t.store.getTimestampsByURL(r)}}case"pages":{const t=await this.collections.getColl(e.coll);return t?{pages:await t.store.getAllPages()}:{error:"collection_not_found"}}case"textIndex":{const t=await this.collections.getColl(e.coll);return t?t.store.getTextIndex?await t.store.getTextIndex():{}:{error:"collection_not_found"}}case"curated":{const t=await this.collections.getColl(e.coll);if(!t)return{error:"collection_not_found"};const r=Number(e.list);return t.store.db?{curated:await t.store.db.getAllFromIndex("curatedPages","listPages",IDBKeyRange.bound([r],[r+1]))}:{curated:[]}}case"deletePage":{const t=await this.collections.getColl(e.coll);if(!t)return{error:"collection_not_found"};const{pageSize:r,dedupSize:i}=await t.store.deletePage(e.page);return this.collections.updateSize(e.coll,r,i),{pageSize:r,dedupSize:i}}default:return{error:"not_found"}}}async listAll(t){const e=await this.collections.listAll(),r=[];return e.forEach((e=>{"live"!==e.type&&"remoteproxy"!==e.type&&(t&&!e.type.startsWith(t)||r.push(E(e)))})),{colls:r}}makeResponse(t,e=200){return new Response(JSON.stringify(t),{status:e,headers:{"Content-Type":"application/json"}})}}const Ob=/^(?::([\w-]+)\/)?(\d*)([a-z]+_|[$][a-z0-9:.-]+)?(?:\/|\||%7C|%7c)(.+)/;class Bb{url="";timestamp="";mod="";pageId="";hash="";cookie="";isProxyOrigin=!1;request;method;mode;_postToGetConverted=!1;constructor(t,e,{isRoot:r=!1,mod:i="",ts:n="",proxyOrigin:s=null,localOrigin:o=null}={}){const a=Ob.exec(t);if(this.timestamp=n,this.mod=i,this.request=e,this.method=e.method,this.mode=e.mode,!a&&(t.startsWith("https:")||t.startsWith("http:")||t.startsWith("blob:")))this.url=t;else if(!a&&r)this.url="https://"+t;else{if(!a)return void(this.url="");this.pageId=a[1]||"",this.timestamp=a[2],this.mod=a[3],this.url=a[4]}if(s&&o){const t=new URL(this.url);t.origin===o&&(this.url=s+t.pathname+(t.search?t.search:"")),this.isProxyOrigin=!0}const c=this.url.indexOf("#");c>0&&(this.hash=this.url.slice(c),this.url=this.url.substring(0,c))}get headers(){return this.request.headers}get destination(){return this.request.destination}get referrer(){return this.request.referrer}async convertPostToGet(){if(this._postToGetConverted)return this.url;const t=this.request;if("POST"!==t.method&&"PUT"!==t.method)return this.url;const e={method:t.method,postData:await t.text(),headers:t.headers,url:this.url};return et(e)&&(this.url=e.url,this.method="GET",this.mode="navigate"===this.request.mode?"same-origin":this.request.mode,this._postToGetConverted=!0),this.url}prepareProxyRequest(t,e=!0){let r,i,n;if(e){r=new Headers(this.request.headers),i=this.request.referrer;const e=i.indexOf("/http",t.length-1);e>0&&(i=i.slice(e+1),r.set("X-Proxy-Referer",i)),n=this.request.credentials,this.cookie&&r.set("X-Proxy-Cookie",this.cookie)}else r=new Headers,n="omit";let s=this.url;if(s.startsWith("//")&&i)try{s=new URL(i).protocol+s}catch(t){s="https:"+s}return{referrer:i,headers:r,credentials:n,url:s}}async getBody(){const t=this.request.clone();return new Uint8Array(await t.arrayBuffer())}}const Pb="x-wabac-is-ajax-req";class Db extends ub{prefixes;colls;inited;root;defaultConfig;constructor(t,e=null,r={}){super(self),this.prefixes=t,this.colls={},this.inited=null,this.root=e,this.defaultConfig=r,this._fileHandles={}}_createCollection(t){return new vn(t,this.prefixes,this.defaultConfig)}async loadAll(t){return this.colls={},this.inited=super.loadAll(t),this.inited}async getColl(t){return this.colls[t]||(this.colls[t]=await this.loadColl(t)),this.colls[t]}async reload(t){delete this.colls[t],await this.getColl(t)}async addCollection(t,e){const r=await super.addCollection(t,e);return r&&r.name&&(this.colls[r.name]=this._createCollection(r)),r}async deleteColl(t,e=!1){return this.colls[t]&&(this.colls[t].store&&await this.colls[t].store.delete(),this._fileHandles&&e&&this.colls[t].config.extra?.fileHandle&&(this._fileHandles[this.colls[t].config.sourceUrl]=this.colls[t].config.extra.fileHandle)),!!await super.deleteColl(t)&&(delete this.colls[t],!0)}async initNewColl(t,e={},r="archive"){const i=await super.initNewColl(t,e,r);return i&&(this.colls[i.name]=i),i}async updateAuth(t,e){return this.colls[t]&&this.colls[t].store.updateHeaders&&this.colls[t].store.updateHeaders(e),await super.updateAuth(t,e)}async updateMetadata(t,e){const r=await super.updateMetadata(t,e);return this.colls[t]&&r&&(this.colls[t].config.metadata=r,this.colls[t].metadata=r),r}async updateSize(t,e,r,i){const n=await super.updateSize(t,e,r,i);return this.colls[t]&&n&&(this.colls[t].config.metadata=n,this.colls[t].metadata=n),void 0!==i&&this.colls[t]&&(this.colls[t].config.decode=i),n}}self.registration?(self.sw=new class{prefix;replayPrefix;staticPrefix;distPrefix;staticData;collections;proxyOriginMode;api;apiPrefix;allowRewrittenCache;stats;constructor({staticData:t=null,ApiClass:e=Nb,defaultConfig:r={},CollectionsClass:i=Db}={}){this.prefix=self.registration?self.registration.scope:"",this.replayPrefix=this.prefix;const n=new URLSearchParams(self.location.search);let s="w";n.has("replayPrefix")&&(s=n.get("replayPrefix")),s&&(this.replayPrefix+=s+"/"),this.staticPrefix=this.prefix+"static/",this.distPrefix=this.prefix+"dist/";const o={static:this.staticPrefix,root:this.prefix,main:this.replayPrefix};if(this.staticData=t||new Map,this.staticData.set(this.staticPrefix+"wombat.js",{type:"application/javascript",content:'(()=>{"use strict";function t(){this._map=[]}function e(t,e){void 0!==self.Symbol&&void 0!==self.Symbol.toStringTag&&Object.defineProperty(t.prototype,self.Symbol.toStringTag,{value:e,enumerable:!1})}function r(t){for(var e,r,i=t.__proto__||t.constructor.prototype||t.prototype,o=Object.getOwnPropertyNames(i),n=o.length,s=0;s<n;s++)r=t[e=o[s]],"constructor"!==e&&"function"==typeof r&&(t[e]=r.bind(t))}t.prototype.set=function(t,e){this._map.push([t,e])},t.prototype.get=function(t){for(var e=0;e<this._map.length;e++)if(this._map[e][0]===t)return this._map[e][1];return null},t.prototype.find=function(t){for(var e=0;e<this._map.length;e++)if(this._map[e][0]===t)return e;return-1},t.prototype.add_or_get=function(t,e){var r=this.get(t);return r||(r=e(),this.set(t,r)),r},t.prototype.remove=function(t){var e=this.find(t);return e>=0?this._map.splice(e,1)[0][1]:null},t.prototype.map=function(t){for(var e=0;e<this._map.length;e++)this._map[e][1](t)};var i={yes:!1},o=Symbol("__wb__storage_WOMBAT"),n=Symbol("__wb__storage_TYPE");function s(t,e,r){if(i.yes)throw new TypeError("Illegal constructor");if(r&&r.length)for(var s=0;s<r.length;s++)this[r[s][0]]=r[s][1].toString();Object.defineProperty(this,o,{value:t,enumerable:!1}),Object.defineProperty(this,n,{value:e,enumerable:!1})}function a(t,e,r){var i=new s(t,e,r);return t.$wbwindow.Proxy&&(i=new t.$wbwindow.Proxy(i,{get:function(t,e){var r=t.__proto__;if("__proto__"===e)return r;if(r.hasOwnProperty(e)||r.__proto__&&r.__proto__.hasOwnProperty(e)){var i=t[e];return"function"==typeof i&&(i=i.bind(t)),i}return t.hasOwnProperty(e)?t.getItem(e):void 0},set:function(t,e,r){return t.__proto__.hasOwnProperty(e)?(t[e]=r,!0):(t.setItem(e,r),!0)}})),t.defGetterProp(t.$wbwindow,e,(function(){return i})),i}function w(t,e){for(var r in Object.defineProperties(this,{_orig_loc:{configurable:!0,enumerable:!1,value:t},wombat:{configurable:!0,enumerable:!1,value:e},orig_getter:{enumerable:!1,value:function(t){return this._orig_loc[t]}},orig_setter:{enumerable:!1,value:function(t,e){this._orig_loc[t]!=e&&(this._orig_loc[t]=e)}}}),e.initLocOverride(this,this.orig_setter,this.orig_getter),e.setLoc(this,t.href),t)this.hasOwnProperty(r)||"function"==typeof t[r]||(this[r]=t[r])}function h(t,e){if(!(this instanceof h))return new h(t,e);this.elemSelector="img[srcset], img[data-srcset], img[data-src], video[srcset], video[data-srcset], video[data-src], audio[srcset], audio[data-srcset], audio[data-src], picture > source[srcset], picture > source[data-srcset], picture > source[data-src], video > source[srcset], video > source[data-srcset], video > source[data-src], audio > source[srcset], audio > source[data-srcset], audio > source[data-src]",this.wombat=t,this.$wbwindow=t.$wbwindow,this.worker=null,r(this),this._initWorker(e)}function p(t,e){return function(r){if(window==e)return t(r)}}function c(t,e,r){var i;return i="function"==typeof t?t:"object"==typeof t?t.handleEvent.bind(t):function(){},function(t){var o;if(t.data&&t.data.from&&t.data.message){if("*"!==t.data.to_origin&&e.WB_wombat_location&&!r.startsWith(t.data.to_origin,e.WB_wombat_location.origin))return void console.warn("Skipping message event to "+t.data.to_origin+" doesn\'t start with origin "+e.WB_wombat_location.origin);var n=t.source;t.data.from_top?n=e.__WB_top_frame:t.data.src_id&&e.__WB_win_id&&e.__WB_win_id[t.data.src_id]&&(n=e.__WB_win_id[t.data.src_id]),(o=new MessageEvent("message",{bubbles:t.bubbles,cancelable:t.cancelable,data:t.data.message,origin:t.data.from,lastEventId:t.lastEventId,source:r.proxyToObj(n),ports:t.ports}))._target=t.target,o._srcElement=t.srcElement,o._currentTarget=t.currentTarget,o._eventPhase=t.eventPhase}else o=t;return i(o)}}function l(t){let e;e="string"==typeof t?t:t?.length?t.reduce(((t,e)=>t+=String.fromCharCode(e)),""):t?t.toString():"";try{return"__wb_post_data="+btoa(e)}catch{return"__wb_post_data="}}function u(t){let{method:e,headers:r,postData:i=""}=t;if("GET"===e)return!1;let o=(t=>{let e=t.get("content-type");if(e)return e;if(!(t instanceof Headers))for(let[e,r]of t.entries())if(e&&"content-type"===e.toLowerCase())return r;return""})(r);function n(t){return t instanceof Uint8Array&&(t=(new TextDecoder).decode(t)),t}let s="";switch(o.split(";")[0]){case"application/x-www-form-urlencoded":s=n(i);break;case"application/json":s=d(n(i));break;case"text/plain":try{s=d(n(i),!1)}catch{s=l(i)}break;case"multipart/form-data":if(!o)throw new Error("utils cannot call postToGetURL when missing content-type header");s=function(t,e){return function(t="",e){let r=new URLSearchParams;t instanceof Uint8Array&&(t=(new TextDecoder).decode(t));try{let i=e.split("boundary=")[1],o=t.split(new RegExp("-*"+i+"-*","mi"));for(let t of o){let e=t.trim().match(/name="([^"]+)"\\r\\n\\r\\n(.*)/im);e&&r.set(e[1],e[2])}}catch{}return r}(t,e).toString()}(n(i),o);break;default:s=l(i)}return null!=s&&(t.url=function(t,e,r){if(!r)return t;let i=t.indexOf("?")>0?"&":"?";return`${t}${i}__wb_method=${r}&${e}`}(t.url,decodeURI(s),t.method),t.method="GET",t.requestBody=s,!0)}function _(t,e=!0){if("string"==typeof t)try{t=JSON.parse(t)}catch{t={}}let r=new URLSearchParams,i={},o=(t,e="")=>{let n="";if("object"!=typeof t||t instanceof Array){if(t instanceof Array)for(let r=0;r<t.length;r++)o(t[r],e)}else try{for(let[e,r]of Object.entries(t))o(r,e)}catch{null===t&&(n="null")}["string","number","boolean"].includes(typeof t)&&(n=t.toString()),n&&r.set((t=>r.has(t)?(t in i||(i[t]=1),t+"."+ ++i[t]+"_"):t)(e),n)};try{o(t)}catch(t){if(!e)throw t}return r}function d(t="",e=!0){return _(t,e).toString()}s.prototype.getItem=function(t){return this.hasOwnProperty(t)?this[t]:null},s.prototype.setItem=function(t,e){var r=String(t),i=String(e),o=this.getItem(r);this[r]=e,this.fireEvent(r,o,i)},s.prototype._deleteItem=function(t){delete this[t]},s.prototype.removeItem=function(t){var e=this.getItem(t);this._deleteItem(t),this.fireEvent(t,e,null)},s.prototype.clear=function(){for(var t in this)delete this[t];this.fireEvent(null,null,null)},s.prototype.key=function(t){var e=function(t){try{switch(typeof t){case"number":case"bigint":return t}var e=Number(t);return isNaN(e)?null:e}catch(t){}return null}(t);if(null==e||e<0)return null;var r=Object.keys(this);return e<r.length?r[e]:null},s.prototype.fireEvent=function(t,e,r){var i=new StorageEvent("storage",{key:t,newValue:r,oldValue:e,url:this[o].$wbwindow.WB_wombat_location.href});Object.defineProperty(i,"storageArea",{value:this,writable:!1,configurable:!1}),i._storageArea=this,this[o].storage_listeners.map(i)},s.prototype.valueOf=function(){return this[o].$wbwindow[this[n]]},s.prototype.toString=function(){return"[object Storage]"},Object.defineProperty(s.prototype,"length",{enumerable:!1,get:function(){return Object.keys(this).length}}),e(s,"Storage"),w.prototype.replace=function(t){var e=this.wombat.rewriteUrl(t),r=this.wombat.extractOriginalURL(e);return r===this.href?r:this._orig_loc.replace(e)},w.prototype.assign=function(t){var e=this.wombat.rewriteUrl(t),r=this.wombat.extractOriginalURL(e);return r===this.href?r:this._orig_loc.assign(e)},w.prototype.reload=function(t){},w.prototype.toString=function(){return this.href},w.prototype.valueOf=function(){return this},e(w,"Location"),h.prototype._initWorker=function(t){var e=this.wombat;if(t.isTop)try{this.worker=new Worker(t.workerURL,{type:"classic",credentials:"include"})}catch(t){console.error("Failed to create auto fetch worker\\n",t)}else this.worker={postMessage:function(t){t.wb_type||(t={wb_type:"aaworker",msg:t}),e.$wbwindow.__WB_replay_top.__orig_postMessage(t,"*")},terminate:function(){}}},h.prototype.extractMediaRulesFromSheet=function(t){var e,r=[];try{e=t.cssRules||t.rules}catch(t){return r}for(var i=0;i<e.length;++i){var o=e[i];o.type===CSSRule.MEDIA_RULE&&r.push(o.cssText)}return r},h.prototype.deferredSheetExtraction=function(t){var e=this;Promise.resolve().then((function(){var r=e.extractMediaRulesFromSheet(t);r.length>0&&e.preserveMedia(r)}))},h.prototype.terminate=function(){this.worker.terminate()},h.prototype.justFetch=function(t){this.worker.postMessage({type:"fetch-all",values:t})},h.prototype.fetchAsPage=function(t,e,r){if(t){var i={"X-Wombat-History-Page":e};if(r){var o=encodeURIComponent(r.trim());r&&(i["X-Wombat-History-Title"]=o)}var n={url:t,options:{headers:i,cache:"no-store"}};this.justFetch([n])}},h.prototype.postMessage=function(t,e){if(e){var r=this;Promise.resolve().then((function(){r.worker.postMessage(t)}))}else this.worker.postMessage(t)},h.prototype.preserveSrcset=function(t,e){this.postMessage({type:"values",srcset:{value:t,mod:e,presplit:!0}},!0)},h.prototype.preserveDataSrcset=function(t){this.postMessage({type:"values",srcset:{value:t.dataset.srcset,mod:this.rwMod(t),presplit:!1}},!0)},h.prototype.preserveMedia=function(t){this.postMessage({type:"values",media:t},!0)},h.prototype.getSrcset=function(t){return this.wombat.wb_getAttribute?this.wombat.wb_getAttribute.call(t,"srcset"):t.getAttribute("srcset")},h.prototype.rwMod=function(t){switch(t.tagName){case"SOURCE":return t.parentElement&&"PICTURE"===t.parentElement.tagName?"im_":"oe_";case"IMG":return"im_"}return"oe_"},h.prototype.extractFromLocalDoc=function(){var t=this;Promise.resolve().then((function(){for(var e={type:"values",context:{docBaseURI:document.baseURI}},r=[],i=0,o=document.styleSheets;i<o.length;++i)r=r.concat(t.extractMediaRulesFromSheet(o[i]));var n,s,a,w=document.querySelectorAll(t.elemSelector),h={values:[],presplit:!1},p={values:[]};for(i=0;i<w.length;++i)s=(n=w[i]).src?n.src:null,a=t.rwMod(n),n.srcset&&h.values.push({srcset:t.getSrcset(n),mod:a,tagSrc:s}),n.dataset.srcset&&h.values.push({srcset:n.dataset.srcset,mod:a,tagSrc:s}),n.dataset.src&&p.values.push({src:n.dataset.src,mod:a}),"SOURCE"===n.tagName&&s&&p.values.push({src:s,mod:a});r.length&&(e.media=r),h.values.length&&(e.srcset=h),p.values.length&&(e.src=p),(e.media||e.srcset||e.src)&&t.postMessage(e)}))};var f=null,b=",,,";Map,Symbol.iterator;function y(e,i){if(!(this instanceof y))return new y(e,i);this.debug_rw=!1,this.$wbwindow=e,this.WBWindow=Window,this.URL=URL,this.origHost=e.location.host,this.origHostname=e.location.hostname,this.origProtocol=e.location.protocol,this.HTTP_PREFIX="http://",this.HTTPS_PREFIX="https://",this.REL_PREFIX="//",this.VALID_PREFIXES=[this.HTTP_PREFIX,this.HTTPS_PREFIX,this.REL_PREFIX],this.IGNORE_PREFIXES=["#","about:","data:","blob:","mailto:","javascript:","{","*"],"ignore_prefixes"in i&&(this.IGNORE_PREFIXES=this.IGNORE_PREFIXES.concat(i.ignore_prefixes)),this.WB_CHECK_THIS_FUNC="_____WB$wombat$check$this$function_____",this.WB_ASSIGN_FUNC="_____WB$wombat$assign$function_____",this.SKIP_OWN_FUNC_PROPS=["name","length","__WB_is_native_func__","arguments","caller","callee","prototype"],this.OVERRIDE_PROPS=["window","self","document","location","top","parent","frames","opener"],this.wb_setAttribute=e.Element.prototype.setAttribute,this.wb_getAttribute=e.Element.prototype.getAttribute,this.wb_funToString=Function.prototype.toString,this.WBAutoFetchWorker=null,this.wbUseAFWorker=i.enable_auto_fetch&&null!=e.Worker&&i.is_live,this.wb_rel_prefix="",this.wb_wombat_updating=!1,this.message_listeners=new t,this.storage_listeners=new t,this.linkAsTypes={script:"js_",worker:"js_",style:"cs_",image:"im_",document:"if_",fetch:"mp_",font:"oe_",audio:"oe_",video:"oe_",embed:"oe_",object:"oe_",track:"oe_","":"mp_",null:"mp_",undefined:"mp_"},this.linkTagMods={linkRelToAs:{import:this.linkAsTypes,preload:this.linkAsTypes},stylesheet:"cs_",null:"mp_",undefined:"mp_","":"mp_"},this.tagToMod={A:{href:"mp_"},AREA:{href:"mp_"},AUDIO:{src:"oe_",poster:"im_"},BASE:{href:"mp_"},EMBED:{src:"oe_"},FORM:{action:"mp_"},FRAME:{src:"fr_"},IFRAME:{src:"if_"},IMAGE:{href:"im_","xlink:href":"im_"},IMG:{src:"im_",srcset:"im_"},INPUT:{src:"oe_"},INS:{cite:"mp_"},META:{content:"mp_"},OBJECT:{data:"oe_",codebase:"oe_"},Q:{cite:"mp_"},SCRIPT:{src:"js_","xlink:href":"js_"},SOURCE:{src:"oe_",srcset:"oe_"},TRACK:{src:"oe_"},VIDEO:{src:"oe_",poster:"im_"},image:{href:"im_","xlink:href":"im_"}},this.URL_PROPS=["href","hash","pathname","host","hostname","protocol","origin","search","port"],this.wb_info=i,this.wb_opts=i.wombat_opts,this.wb_replay_prefix=i.prefix,this.wb_is_proxy=this.wb_info.proxy_magic||!this.wb_replay_prefix,this.wb_info.top_host=this.wb_info.top_host||"*",this.wb_curr_host=e.location.protocol+"//"+e.location.host,this.wb_info.wombat_opts=this.wb_info.wombat_opts||{},this.wb_orig_scheme=this.wb_info.wombat_scheme+"://",this.wb_orig_origin=this.wb_orig_scheme+this.wb_info.wombat_host,this.wb_abs_prefix=this.wb_replay_prefix,this.wb_capture_date_part="",!this.wb_info.is_live&&this.wb_info.wombat_ts&&(this.wb_capture_date_part="/"+this.wb_info.wombat_ts+"/"),this.BAD_PREFIXES=["http:"+this.wb_replay_prefix,"https:"+this.wb_replay_prefix,"http:/"+this.wb_replay_prefix,"https:/"+this.wb_replay_prefix],this.hostnamePortRe=/^[\\w-]+(\\.[\\w-_]+)+(:\\d+)(\\/|$)/,this.ipPortRe=/^\\d+\\.\\d+\\.\\d+\\.\\d+(:\\d+)?(\\/|$)/,this.workerBlobRe=/__WB_pmw\\(.*?\\)\\.(?=postMessage\\()/g,this.rmCheckThisInjectRe=/_____WB\\$wombat\\$check\\$this\\$function_____\\(.*?\\)/g,this.STYLE_REGEX=/(url\\s*\\(\\s*[\\\\"\']*)([^)\'"]+)([\\\\"\']*\\s*\\))/gi,this.IMPORT_REGEX=/(@import\\s*[\\\\"\']*)([^)\'";]+)([\\\\"\']*\\s*;?)/gi,this.IMPORT_JS_REGEX=/^(import\\s*\\([\'"]+)([^\'"]+)(["\'])/i,this.no_wombatRe=/WB_wombat_/g,this.srcsetRe=/\\s*(\\S*\\s+[\\d.]+[wx]),|(?:\\s*,(?:\\s+|(?=https?:)))/,this.cookie_path_regex=/\\bPath=\'?"?([^;\'"\\s]+)/i,this.cookie_domain_regex=/\\bDomain=([^;\'"\\s]+)/i,this.cookie_expires_regex=/\\bExpires=([^;\'"]+)/gi,this.SetCookieRe=/,(?![|])/,this.IP_RX=/^(\\d)+\\.(\\d)+\\.(\\d)+\\.(\\d)+$/,this.FullHTMLRegex=/^\\s*<(?:html|head|body|frameset|frame|!doctype html)/i,this.IsTagRegex=/^\\s*</,this.DotPostMessageRe=/(\\.postMessage\\s*\\()/,this.extractPageUnderModifierRE=/\\/(?:[0-9]{14})?([a-z]{2, 3}_)\\//,this.write_buff="";var o=(e.EventTarget||{}).prototype;this.utilFns={cspViolationListener:function(t){if(console.group("CSP Violation"),console.log("Replayed Page URL",window.WB_wombat_location.href),console.log("The documentURI",t.documentURI),console.log("The blocked URL",t.blockedURI),console.log("The directive violated",t.violatedDirective),console.log("Our policy",t.originalPolicy),t.sourceFile){var e="File: "+t.sourceFile;t.lineNumber&&t.columnNumber?e+=" @ "+t.lineNumber+":"+t.columnNumber:t.lineNumber&&(e+=" @ "+t.lineNumber),console.log(e)}console.groupEnd()},addEventListener:o.addEventListener,removeEventListener:o.removeEventListener,objToString:Object.prototype.toString,wbSheetMediaQChecker:null,XHRopen:null,XHRsend:null},this.showCSPViolations={yesNo:!1,added:!1},r(this)}y.prototype._internalInit=function(){this.initTopFrame(this.$wbwindow),this.initWombatLoc(this.$wbwindow),this.initWombatTop(this.$wbwindow);var t=this.$wbwindow.__WB_replay_top.location.origin,e=this.$wbwindow.__WB_replay_top.location.host,r=this.$wbwindow.__WB_replay_top.location.protocol;this.wb_replay_prefix&&0===this.wb_replay_prefix.indexOf(t)?this.wb_rel_prefix=this.wb_replay_prefix.substring(t.length):this.wb_rel_prefix=this.wb_replay_prefix,this.wb_prefixes=[this.wb_abs_prefix,this.wb_rel_prefix];var i="(("+r+")?//"+e+")?"+this.wb_rel_prefix+"[^/]+/";this.wb_unrewrite_rx=new RegExp(i,"g"),this.wb_info.is_framed&&"bn_"!==this.wb_info.mod&&this.initTopFrameNotify(this.wb_info),this.initAutoFetchWorker()},y.prototype._addRemoveCSPViolationListener=function(t){this.showCSPViolations.yesNo=t,this.showCSPViolations.yesNo&&!this.showCSPViolations.added?(this.showCSPViolations.added=!0,this._addEventListener(document,"securitypolicyviolation",this.utilFns.cspViolationListener)):(this.showCSPViolations.added=!1,this._removeEventListener(document,"securitypolicyviolation",this.utilFns.cspViolationListener))},y.prototype._addEventListener=function(t,e,r){if(this.utilFns.addEventListener)return this.utilFns.addEventListener.call(t,e,r);t.addEventListener(e,r)},y.prototype._removeEventListener=function(t,e,r){if(this.utilFns.removeEventListener)return this.utilFns.removeEventListener.call(t,e,r);t.removeEventListener(e,r)},y.prototype.getPageUnderModifier=function(){try{var t=this.extractPageUnderModifierRE.exec(location.pathname);if(t&&t[1])return t[1].trim()||"mp_"}catch(t){}return"mp_"},y.prototype.isNativeFunction=function(t){return!(!t||"function"!=typeof t)&&(-1!=this.wb_funToString.call(t).indexOf("[native code]")&&(void 0===t.__WB_is_native_func__||!!t.__WB_is_native_func__))},y.prototype.isString=function(t){return null!=t&&Object.getPrototypeOf(t)===String.prototype},y.prototype.blobUrlForIframe=function(t,e){var r=new Blob([e],{type:"text/html"}),i=this.URL.createObjectURL(r),o=this.URL;t.__wb_blobSrc=i,t.addEventListener("load",(function(){t.__wb_blobSrc&&(o.revokeObjectURL(t.__wb_blobSrc),t.__wb_blobSrc=null)}),{once:!0}),t.__wb_origSrc=t.src;var n=i.slice(i.lastIndexOf("/")+1)+"/"+this.wb_info.url;t.src=this.wb_info.prefix+this.wb_info.request_ts+"mp_/blob:"+n},y.prototype.isSavedSrcSrcset=function(t){switch(t.tagName){case"IMG":case"VIDEO":case"AUDIO":return!0;case"SOURCE":if(!t.parentElement)return!1;switch(t.parentElement.tagName){case"PICTURE":case"VIDEO":case"AUDIO":return!0;default:return!1}default:return!1}},y.prototype.isSavedDataSrcSrcset=function(t){return!(!t.dataset||null==t.dataset.srcset)&&this.isSavedSrcSrcset(t)},y.prototype.isHostUrl=function(t){if(0===t.indexOf("www."))return!0;var e=t.match(this.hostnamePortRe);return!!(e&&e[0].length<64)||!!(e=t.match(this.ipPortRe))&&e[0].length<64},y.prototype.isArgumentsObj=function(t){if(!t||"function"!=typeof t.toString)return!1;try{return"[object Arguments]"===this.utilFns.objToString.call(t)}catch(t){return!1}},y.prototype.deproxyArrayHandlingArgumentsObj=function(t){if(!t||t instanceof NodeList||!t.length)return t;for(var e=this.isArgumentsObj(t)?new Array(t.length):t,r=0;r<t.length;++r){const i=this.proxyToObj(t[r]);i!==e[r]&&(e[r]=i)}return e},y.prototype.startsWith=function(t,e){if(t)return 0===t.indexOf(e)?e:void 0},y.prototype.startsWithOneOf=function(t,e){if(t)for(var r=0;r<e.length;r++)if(0===t.indexOf(e[r]))return e[r]},y.prototype.endsWith=function(t,e){if(t)return-1!==t.indexOf(e,t.length-e.length)?e:void 0},y.prototype.shouldRewriteAttr=function(t,e){switch(e){case"href":case"src":case"xlink:href":return!0}return!(!t||!this.tagToMod[t]||void 0===this.tagToMod[t][e])||("VIDEO"===t&&"poster"===e||"META"===t&&"content"===e)},y.prototype.skipWrapScriptBasedOnType=function(t){return!!t&&(!(t.indexOf("javascript")>=0||t.indexOf("ecmascript")>=0)&&(t.indexOf("json")>=0||t.indexOf("text/")>=0))},y.prototype.skipWrapScriptTextBasedOnText=function(t,e){if(!t||t.indexOf(this.WB_ASSIGN_FUNC)>=0||0===t.indexOf("<"))return!0;let r=!1;for(const i of this.OVERRIDE_PROPS){t.indexOf(i)>=0&&(t.indexOf("var "+i)>=0&&e.push(i),r=!0)}return!r},y.prototype.nodeHasChildren=function(t){if(!t)return!1;if("function"==typeof t.hasChildNodes)return t.hasChildNodes();var e=t.children||t.childNodes;return!!e&&e.length>0},y.prototype.rwModForElement=function(t,e){if(t){var r="mp_";if("LINK"===t.tagName&&"href"===e){if(t.rel){var i=t.rel.trim().toLowerCase(),o=this.wb_getAttribute.call(t,"as");if(o&&null!=this.linkTagMods.linkRelToAs[i])r=this.linkTagMods.linkRelToAs[i][o.toLowerCase()];else null!=this.linkTagMods[i]&&(r=this.linkTagMods[i])}}else{if("SCRIPT"===t.tagName)return"module"===t.type?"esm_":"js_";var n=this.tagToMod[t.tagName];null!=n&&(r=n[e])}return r}},y.prototype.removeWBOSRC=function(t){"SCRIPT"!==t.tagName||t.__$removedWBOSRC$__||(t.hasAttribute("__wb_orig_src")&&t.removeAttribute("__wb_orig_src"),t.__$removedWBOSRC$__=!0)},y.prototype.retrieveWBOSRC=function(t){var e;if("SCRIPT"===t.tagName&&!t.__$removedWBOSRC$__)return null==(e=this.wb_getAttribute?this.wb_getAttribute.call(t,"__wb_orig_src"):t.getAttribute("__wb_orig_src"))&&(t.__$removedWBOSRC$__=!0),e},y.prototype.wrapScriptTextJsProxy=function(t,e=[]){let r="var _____WB$wombat$assign$function_____ = function(name) {return (self._wb_wombat && self._wb_wombat.local_init && self._wb_wombat.local_init(name)) || self[name]; };\\nif (!self.__WB_pmw) { self.__WB_pmw = function(obj) { this.__WB_source = obj; return this; } }\\n{\\n";for(const t of this.OVERRIDE_PROPS)e.includes(t)||(r+=`let ${t} = _____WB$wombat$assign$function_____("${t}");\\n`);return r+="{\\n",r+t.replace(this.DotPostMessageRe,".__WB_pmw(self.window)$1")+"\\n\\n}}"},y.prototype.watchElem=function(t,e){if(!this.$wbwindow.MutationObserver)return!1;new this.$wbwindow.MutationObserver((function(t,r){for(var i=0;i<t.length;i++){var o=t[i];if("childList"===o.type)for(var n=0;n<o.addedNodes.length;n++)e(o.addedNodes[n])}})).observe(t,{childList:!0,subtree:!0})},y.prototype.reconstructDocType=function(t){return null==t?"":"<!doctype "+t.name+(t.publicId?\' PUBLIC "\'+t.publicId+\'"\':"")+(!t.publicId&&t.systemId?" SYSTEM":"")+(t.systemId?\' "\'+t.systemId+\'"\':"")+">"},y.prototype.getFinalUrl=function(t,e,r){var i=t?this.wb_rel_prefix:this.wb_abs_prefix;return null==e&&(e=this.wb_info.mod),this.wb_info.is_live||(i+=this.wb_info.wombat_ts),"/"!==(i+=e)[i.length-1]&&(i+="/"),i+r},y.prototype.resolveRelUrl=function(t,e){var r=this;function i(t){return!(!t||!t.baseURI)&&(t.baseURI.startsWith(r.HTTPS_PREFIX)||t.baseURI.startsWith(r.HTTP_PREFIX))}var o=null;return o=i(e)?e.baseURI:i(this.$wbwindow.document)?this.$wbwindow.document.baseURI:this.$wbwindow.__WB_replay_top.document.baseURI,new this.URL(t,o).href},y.prototype.extractOriginalURL=function(t){if(!t)return"";if(this.wb_is_proxy)return t;var e,r=t.toString(),i=r;if(this.startsWithOneOf(i,this.IGNORE_PREFIXES))return i;if(i.startsWith(this.wb_info.static_prefix))return i;e=this.startsWith(i,this.wb_abs_prefix)?this.wb_abs_prefix.length:this.wb_rel_prefix&&this.startsWith(i,this.wb_rel_prefix)?this.wb_rel_prefix.length:this.wb_rel_prefix?1:0;var o=i.indexOf("/http",e);return o<0&&(o=i.indexOf("///",e)),o<0&&(o=i.indexOf("/blob:",e)),o<0&&(o=i.indexOf("/about:blank",e)),o>=0?i=i.substr(o+1):((o=i.indexOf(this.wb_replay_prefix))>=0&&(i=i.substr(o+this.wb_replay_prefix.length)),i.length>4&&"_"===i.charAt(2)&&"/"===i.charAt(3)&&(i=i.substr(4)),i===r||this.startsWithOneOf(i,this.VALID_PREFIXES)||this.startsWith(i,"blob:")||(i=this.wb_orig_scheme+i)),"/"===r.charAt(0)&&"/"!==r.charAt(1)&&this.startsWith(i,this.wb_orig_origin)&&(i=i.substr(this.wb_orig_origin.length)),this.startsWith(i,this.REL_PREFIX)?this.wb_info.wombat_scheme+":"+i:i},y.prototype.makeParser=function(t,e){var r=this.extractOriginalURL(t),i=e;return e||(i="about:blank"===this.$wbwindow.location.href&&this.$wbwindow.opener?this.$wbwindow.opener.document:this.$wbwindow.document),this._makeURLParser(r,i)},y.prototype._makeURLParser=function(t,e){try{return new this.URL(t,e.baseURI)}catch(t){}var r=e.createElement("a");return r._no_rewrite=!0,r.href=t,r},y.prototype.defProp=function(t,e,r,i,o){var n=Object.getOwnPropertyDescriptor(t,e);if(n&&!n.configurable)return!1;if(!i)return!1;var s={configurable:!0,enumerable:o||!1,get:i};r&&(s.set=r);try{return Object.defineProperty(t,e,s),!0}catch(t){return console.warn("Failed to redefine property %s",e,t.message),!1}},y.prototype.defGetterProp=function(t,e,r,i){var o=Object.getOwnPropertyDescriptor(t,e);if(o&&!o.configurable)return!1;if(!r)return!1;try{return Object.defineProperty(t,e,{configurable:!0,enumerable:i||!1,get:r}),!0}catch(t){return console.warn("Failed to redefine property %s",e,t.message),!1}},y.prototype.getOrigGetter=function(t,e){var r;if(t.__lookupGetter__&&(r=t.__lookupGetter__(e)),!r&&Object.getOwnPropertyDescriptor){var i=Object.getOwnPropertyDescriptor(t,e);i&&(r=i.get)}return r},y.prototype.getOrigSetter=function(t,e){var r;if(t.__lookupSetter__&&(r=t.__lookupSetter__(e)),!r&&Object.getOwnPropertyDescriptor){var i=Object.getOwnPropertyDescriptor(t,e);i&&(r=i.set)}return r},y.prototype.getAllOwnProps=function(t){for(var e=[],r=Object.getOwnPropertyNames(t),i=0;i<r.length;i++){var o=r[i];try{t[o]&&!t[o].prototype&&e.push(o)}catch(t){}}for(var n=Object.getPrototypeOf(t);n;){for(r=Object.getOwnPropertyNames(n),i=0;i<r.length;i++)e.push(r[i]);n=Object.getPrototypeOf(n)}return e},y.prototype.sendTopMessage=function(t,e,r){(r=r||this.$wbwindow).__WB_top_frame&&(e||r==r.__WB_replay_top)&&r.__WB_top_frame.postMessage(t,this.wb_info.top_host)},y.prototype.sendHistoryUpdate=function(t,e,r){this.sendTopMessage({url:t,ts:this.wb_info.timestamp,request_ts:this.wb_info.request_ts,is_live:this.wb_info.is_live,title:e,wb_type:"replace-url"},!1,r)},y.prototype.updateLocation=function(t,e,r){if(t&&t!==e){var i=this.extractOriginalURL(e),o=this.extractOriginalURL(t);if(i&&i!==o){var n=this.rewriteUrl(t);console.log(r.href+" -> "+n),r.href=n}}},y.prototype.checkLocationChange=function(t,e){var r=typeof t,i=e?this.$wbwindow.__WB_replay_top.location:this.$wbwindow.location;"string"===r?this.updateLocation(t,i.href,i):"object"===r&&this.updateLocation(t.href,t._orig_href,i)},y.prototype.checkAllLocations=function(){if(this.wb_wombat_updating)return!1;this.wb_wombat_updating=!0,this.checkLocationChange(this.$wbwindow.WB_wombat_location,!1),this.$wbwindow.WB_wombat_location!=this.$wbwindow.__WB_replay_top.WB_wombat_location&&this.checkLocationChange(this.$wbwindow.__WB_replay_top.WB_wombat_location,!0),this.wb_wombat_updating=!1},y.prototype.proxyToObj=function(t){if(t)try{var e=t.__WBProxyRealObj__;if(e)return e}catch(t){}return t},y.prototype.objToProxy=function(t){if(t)try{var e=t._WB_wombat_obj_proxy;if(e)return e}catch(t){}return t},y.prototype.defaultProxyGet=function(t,e,r,i){switch(e){case"__WBProxyRealObj__":return t;case"location":case"WB_wombat_location":return t.WB_wombat_location;case"_WB_wombat_obj_proxy":return t._WB_wombat_obj_proxy;case"__WB_pmw":case this.WB_ASSIGN_FUNC:case this.WB_CHECK_THIS_FUNC:return t[e];case"origin":return t.WB_wombat_location.origin;case"constructor":return t.constructor}var o=Reflect.get(t,e),n=typeof o;if("string"===n&&o){var s=parseInt(e);if(o&&!isNaN(s))try{return this.initNewWindowWombat(o),o._WB_wombat_obj_proxy}catch(t){}}else{if("function"===n&&-1!==r.indexOf(e)){switch(e){case"requestAnimationFrame":case"cancelAnimationFrame":if(!this.isNativeFunction(o))return o;break;case"eval":if(this.isNativeFunction(o))return this.wrappedEval(o)}var a=i[e];if(!a||a.original!==o){const r=o.bind(t);for(const t of Object.getOwnPropertyNames(o))if(!this.SKIP_OWN_FUNC_PROPS.includes(t))try{r[t]=o[t]}catch(t){}return i[e]={original:o,boundFn:r},r}return a.boundFn}if("object"===n&&o&&o._WB_wombat_obj_proxy)return o instanceof this.WBWindow&&this.initNewWindowWombat(o),o._WB_wombat_obj_proxy}return o},y.prototype.setLoc=function(t,e){var r=this.makeParser(e,t.ownerDocument);t._orig_href=e,t._parser=r;var i=r.href;t._hash=r.hash,t._href=i,t._host=r.host,t._hostname=r.hostname,r.origin?t._origin=r.host?r.origin:"null":t._origin=r.protocol+"//"+r.hostname+(r.port?":"+r.port:""),t._pathname=r.pathname,t._port=r.port,t._protocol=r.protocol,t._search=r.search,Object.defineProperty||(t.href=i,t.hash=r.hash,t.host=t._host,t.hostname=t._hostname,t.origin=t._origin,t.pathname=t._pathname,t.port=t._port,t.protocol=t._protocol,t.search=t._search)},y.prototype.makeGetLocProp=function(t,e){var r=this;return function(){if(this._no_rewrite)return e.call(this,t);var i=e.call(this,"href");return"href"===t?r.extractOriginalURL(i):"ancestorOrigins"===t?[]:(this._orig_href!==i&&r.setLoc(this,i),this["_"+t])}},y.prototype.makeSetLocProp=function(t,e,r){var i=this;return function(o){if(this._no_rewrite)return e.call(this,t,o);if(this["_"+t]!==o){this["_"+t]=o;var n=r.call(this),s=i.makeParser(n,this.ownerDocument),a=!1;if("href"===t&&"string"==typeof o)if(o&&s instanceof i.URL)try{o=new i.URL(o,s).href}catch(t){console.warn("Error resolving URL",t)}else o&&("."===o[0]||"#"===o[0]?o=i.resolveRelUrl(o,this.ownerDocument):"/"===o[0]&&(o.length>1&&"/"===o[1]?o=s.protocol+o:(a=!0,o=WB_wombat_location.origin+o)));try{s[t]=o}catch(e){console.log("Error setting "+t+" = "+o)}"hash"===t?(o=s[t],e.call(this,"hash",o)):(a=a||o===s.pathname,o=i.rewriteUrl(s.href,a),e.call(this,"href",o))}}},y.prototype.styleReplacer=function(t,e,r,i,o,n){return e+this.rewriteUrl(r)+i},y.prototype.domConstructorErrorChecker=function(t,e,r,i){var o,n="number"==typeof i?i:1;if(t instanceof this.WBWindow?o="Failed to construct \'"+e+"\': Please use the \'new\' operator, this DOM object constructor cannot be called as a function.":r&&r.length<n&&(o="Failed to construct \'"+e+"\': "+n+" argument required, but only 0 present."),o)throw new TypeError(o)},y.prototype.rewriteNodeFuncArgs=function(t,e,r,i){if(r)switch(r.nodeType){case Node.ELEMENT_NODE:this.rewriteElemComplete(r);break;case Node.TEXT_NODE:("STYLE"===t.tagName||r.parentNode&&"STYLE"===r.parentNode.tagName)&&(r.textContent=this.rewriteStyle(r.textContent));break;case Node.DOCUMENT_FRAGMENT_NODE:this.recurseRewriteElem(r)}var o=e.call(t,r,i);if(o&&"IFRAME"===o.tagName){const t=o.allow?`; ${o.allow}`:"";o.allow=`autoplay \'self\'; fullscreen \'self\'${t}`,this.initIframeWombat(o)}return o},y.prototype.rewriteWSURL=function(t){if(!t)return t;var e=typeof t,r=t;if("object"===e)r=t.toString();else if("string"!==e)return t;if(!r)return r;var i="ws://",o="wss://";if(this.wb_is_proxy)return this.wb_orig_scheme===this.HTTP_PREFIX&&this.startsWith(r,o)?i+r.substr(o.length):this.wb_orig_scheme===this.HTTPS_PREFIX&&this.startsWith(r,i)?o+r.substr(i.length):r;var n=0===this.wb_abs_prefix.indexOf(this.HTTPS_PREFIX),s=this.wb_abs_prefix.replace(n?this.HTTPS_PREFIX:this.HTTP_PREFIX,n?o:i);return s+=this.wb_info.wombat_ts+"ws_","/"!==r[r.length-1]&&(s+="/"),s+r.replace("WB_wombat_","")},y.prototype.rewriteUrl_=function(t,e,r,i){if(!t)return t;var o,n,s=typeof t;if("object"===s)o=t.toString();else{if("string"!==s)return t;o=t}if(!o)return o;if(this.wb_is_proxy)return this.wb_orig_scheme===this.HTTP_PREFIX&&this.startsWith(o,this.HTTPS_PREFIX)?this.HTTP_PREFIX+o.substr(this.HTTPS_PREFIX.length):this.wb_orig_scheme===this.HTTPS_PREFIX&&this.startsWith(o,this.HTTP_PREFIX)?this.HTTPS_PREFIX+o.substr(this.HTTP_PREFIX.length):o;if(o=o.replace("WB_wombat_",""),"if_"===r&&this.wb_info.isSW&&this.startsWith(o,"blob:"))return this.wb_info.prefix+this.wb_info.request_ts+"if_/"+o;if(this.startsWithOneOf(o.toLowerCase(),this.IGNORE_PREFIXES))return o;if(this.wb_opts.no_rewrite_prefixes&&this.startsWithOneOf(o,this.wb_opts.no_rewrite_prefixes))return o;if(n=0===o.indexOf("//")?this.origProtocol+o:o,this.startsWith(n,this.wb_abs_prefix)||this.startsWith(n,this.wb_rel_prefix))return o;if(this.origHost!==this.origHostname&&this.startsWith(o,this.origProtocol+"//"+this.origHostname+"/"))return o.replace("/"+this.origHostname+"/","/"+this.origHost+"/");if("/"===o.charAt(0)&&!this.startsWith(o,this.REL_PREFIX)){if(this.wb_capture_date_part&&o.indexOf(this.wb_capture_date_part)>=0)return o;if(0===o.indexOf(this.wb_rel_prefix)&&o.indexOf("http")>1){var a=o.indexOf(":/");return a>0&&"/"!==o[a+2]?o.substring(0,a+2)+"/"+o.substring(a+2):o}return this.getFinalUrl(!0,r,this.wb_orig_origin+o)}"."===o.charAt(0)&&(o=this.resolveRelUrl(o,i));var w=this.startsWithOneOf(o.toLowerCase(),this.VALID_PREFIXES);if(w){var h=this.replayTopHost,p=this.replayTopProtocol,c=w+h+"/";if(this.startsWith(o,c)){if(this.startsWith(o,this.wb_replay_prefix))return o;var l=p+"//",u=o.substring(c.length),_=!1;return u.indexOf(this.wb_rel_prefix)<0&&o.indexOf("/static/")<0&&(u=this.getFinalUrl(!0,r,WB_wombat_location.origin+"/"+u),_=!0),w!==l&&w!==this.REL_PREFIX&&(_=!0),_&&(o=e?"":l+h,u&&"/"!==u[0]&&(o+="/"),o+=u),o}return this.getFinalUrl(e,r,o)}return(w=this.startsWithOneOf(o,this.BAD_PREFIXES))?this.getFinalUrl(e,r,this.extractOriginalURL(o)):o},y.prototype.rewriteUrl=function(t,e,r,i){var o;return o=this.wb_info.rewrite_function?this.wb_info.rewrite_function(t,e,r,i):this.rewriteUrl_(t,e,r,i),this.debug_rw&&(t!==o?console.log("REWRITE: "+t+" -> "+o):console.log("NOT REWRITTEN "+t)),o},y.prototype.performAttributeRewrite=function(t,e,r,i,o){switch(e){case"innerHTML":case"outerHTML":return this.rewriteHtml(r);case"filter":return this.rewriteInlineStyle(r);case"style":return this.rewriteStyle(r);case"srcset":return this.rewriteSrcset(r,t)}if(o&&!this.startsWithOneOf(r,this.VALID_PREFIXES))return r;var n=this.rwModForElement(t,e);t&&this.wbUseAFWorker&&this.WBAutoFetchWorker&&this.isSavedDataSrcSrcset(t)&&this.WBAutoFetchWorker.preserveDataSrcset(t);var s=this.rewriteUrl(r,!1,n,i);return"esm_"===n&&s&&s.indexOf("esm_/")<0&&(s=s.replace(/(\\/[\\d]*)([\\w]+_)(?=\\/)/,"$1esm_")),s},y.prototype.rewriteAttr=function(t,e,r){var i=!1;if(!t||!t.getAttribute||t._no_rewrite||t["_"+e]||t.tagName&&t.tagName.indexOf("-")>0)return i;var o=this.wb_getAttribute.call(this.proxyToObj(t),e);if(!o||this.startsWith(o,"javascript:"))return i;var n=this.performAttributeRewrite(t,e,o,t.ownerDocument,r);return n!==o&&(this.removeWBOSRC(t),this.wb_setAttribute.call(t,e,n),i=!0),i},y.prototype.noExceptRewriteStyle=function(t){try{return this.rewriteStyle(t)}catch(e){return t}},y.prototype.rewriteStyle=function(t){if(!t)return t;var e=t;return"object"==typeof t&&(e=t.toString()),"string"==typeof e?e.replace(this.STYLE_REGEX,this.styleReplacer).replace(this.IMPORT_REGEX,this.styleReplacer).replace(this.no_wombatRe,""):e},y.prototype.rewriteSrcset=function(t,e){if(!t)return"";for(var r=t.split(this.srcsetRe),i=[],o=this.rwModForElement(e,"srcset"),n=0;n<r.length;n++){var s=r[n];if(s){var a=s.trim().split(" ");a[0]=this.rewriteUrl(a[0],!0,o),i.push(a.join(" "))}}return this.wbUseAFWorker&&this.WBAutoFetchWorker&&this.isSavedSrcSrcset(e)&&this.WBAutoFetchWorker.preserveSrcset(i,this.WBAutoFetchWorker.rwMod(e)),i.join(", ")},y.prototype.rewriteFrameSrc=function(t,e){var r,i=this.wb_getAttribute.call(t,e);if(this.startsWith(i,"javascript:")&&i.indexOf("WB_wombat_")>=0){var o="javascript:";r=o+"window.parent._wb_wombat.initNewWindowWombat(window);"+i.substr(o.length)}return r||(r=this.rewriteUrl(i,!1,this.rwModForElement(t,e))),r!==i&&(this.wb_setAttribute.call(t,e,r),!0)},y.prototype.rewriteScript=function(t){if(t.hasAttribute("src")||!t.textContent||!this.$wbwindow.Proxy)return this.rewriteAttr(t,"src");if(this.skipWrapScriptBasedOnType(t.type))return!1;var e=t.textContent.trim(),r=[];return!this.skipWrapScriptTextBasedOnText(e,r)&&(t.textContent=this.wrapScriptTextJsProxy(e,r),this.wb_info.injectDocClose&&t.textContent.trim().length&&(t.textContent+=";document.close();"),!0)},y.prototype.rewriteSVGElem=function(t){var e=this.rewriteAttr(t,"filter");return e=this.rewriteAttr(t,"style")||e,e=this.rewriteAttr(t,"xlink:href")||e,e=this.rewriteAttr(t,"href")||e,e=this.rewriteAttr(t,"src")||e},y.prototype.rewriteElem=function(t){var e=!1;if(!t)return e;if(t instanceof SVGElement)e=this.rewriteSVGElem(t);else switch(t.tagName){case"META":var r=this.wb_getAttribute.call(t,"http-equiv");r&&"content-security-policy"===r.toLowerCase()&&(this.wb_setAttribute.call(t,"http-equiv","_"+r),e=!0);break;case"STYLE":var i=this.rewriteStyle(t.textContent);t.textContent!==i&&(t.textContent=i,e=!0,this.wbUseAFWorker&&this.WBAutoFetchWorker&&null!=t.sheet&&this.WBAutoFetchWorker.deferredSheetExtraction(t.sheet));break;case"LINK":e=this.rewriteAttr(t,"href"),this.wbUseAFWorker&&"stylesheet"===t.rel&&this._addEventListener(t,"load",this.utilFns.wbSheetMediaQChecker);break;case"IMG":e=this.rewriteAttr(t,"src"),e=this.rewriteAttr(t,"srcset")||e,e=this.rewriteAttr(t,"style")||e,this.wbUseAFWorker&&this.WBAutoFetchWorker&&t.dataset.srcset&&this.WBAutoFetchWorker.preserveDataSrcset(t);break;case"OBJECT":var o;if(this.wb_info.isSW&&t.parentElement)if("application/pdf"===t.getAttribute("type")?o="IFRAME":"image/svg+xml"===t.getAttribute("type")&&(o="IMG"),o){for(var n=this.$wbwindow.document.createElement(o),s=0;s<t.attributes.length;s++){var a=t.attributes[s],w=a.name;"data"===w&&(w="src"),this.wb_setAttribute.call(n,w,a.value)}t.parentElement.replaceChild(n,t),e=!0;break}e=this.rewriteAttr(t,"data",!0),e=this.rewriteAttr(t,"style")||e;break;case"FORM":e=this.rewriteAttr(t,"poster"),e=this.rewriteAttr(t,"action")||e,e=this.rewriteAttr(t,"style")||e;break;case"IFRAME":if(e=this.rewriteFrameSrc(t,"src"),this.wb_info.isSW&&!e){var h=t.getAttribute("srcdoc");if(t.hasAttribute("srcdoc")&&t.removeAttribute("srcdoc"),h)this.blobUrlForIframe(t,h);else{var p=t.getAttribute("src");p&&"about:blank"!==p||(p||(t.__WB_blank=!0),t.src=this.wb_info.prefix+this.wb_info.request_ts+"mp_/about:blank")}}e=this.rewriteAttr(t,"style")||e;break;case"FRAME":e=this.rewriteFrameSrc(t,"src"),e=this.rewriteAttr(t,"style")||e;break;case"SCRIPT":e=this.rewriteScript(t);break;case"A":if(e=this.rewriteAttr(t,"href")||e,e=this.rewriteAttr(t,"style")||e,t.hasAttribute("target")){var c=this.rewriteAttrTarget(t.target);c!==t.target&&(t.target=c,e=!0)}break;default:e=this.rewriteAttr(t,"src"),e=this.rewriteAttr(t,"srcset")||e,e=this.rewriteAttr(t,"href")||e,e=this.rewriteAttr(t,"style")||e,e=this.rewriteAttr(t,"poster")||e,e=this.rewriteAttr(t,"background")||e}return t.hasAttribute&&t.removeAttribute&&(t.hasAttribute("crossorigin")&&(t.removeAttribute("crossorigin"),e=!0),t.hasAttribute("integrity")&&(t.removeAttribute("integrity"),e=!0)),e},y.prototype.recurseRewriteElem=function(t){if(!this.nodeHasChildren(t))return!1;for(var e=!1,r=[t.children||t.childNodes];r.length>0;)for(var i=r.shift(),o=0;o<i.length;o++){var n=i[o];n.nodeType===Node.ELEMENT_NODE&&(e=this.rewriteElem(n)||e,this.nodeHasChildren(n)&&r.push(n.children||n.childNodes))}return e},y.prototype.rewriteElemComplete=function(t){if(!t)return!1;var e=this.rewriteElem(t),r=this.recurseRewriteElem(t);return e||r},y.prototype.rewriteElementsInArguments=function(t){for(var e=new Array(t.length),r=0;r<t.length;r++){var i=t[r];i instanceof Node?(this.rewriteElemComplete(i),e[r]=i):e[r]="string"==typeof i?this.rewriteHtml(i):i}return e},y.prototype.rewriteHtml=function(t,e){if(!t)return t;var r=t;if("string"!=typeof t&&(r=t.toString()),this.write_buff&&(r=this.write_buff+r,this.write_buff=""),r.indexOf("<script")<=0&&r.indexOf("WB_wombat_")>=0&&(r=r.replace(/((id|class)=".*)WB_wombat_([^"]+)/,"$1$3")),!this.$wbwindow.HTMLTemplateElement||this.FullHTMLRegex.test(r))return this.rewriteHtmlFull(r,e);var i=(new DOMParser).parseFromString("<template>"+r+"</template>","text/html");if(!i||!this.nodeHasChildren(i.head)||!i.head.children[0].content)return r;var o=i.head.children[0];if(o._no_rewrite=!0,this.recurseRewriteElem(o.content)){var n=o.innerHTML;if(e){var s=o.content.children&&o.content.children[0];if(s){var a="</"+s.tagName.toLowerCase()+">";if(this.endsWith(n,a)&&!this.endsWith(r.toLowerCase(),a))n=n.substring(0,n.length-a.length);else if(n.trimEnd().endsWith(a)&&!r.trimEnd().endsWith(a)){var w=r.lastIndexOf(a);w>0&&(n+=r.slice(w+a.length))}}else if("<"!==r[0]||">"!==r[r.length-1])return void(this.write_buff+=r)}return n}return r},y.prototype.rewriteHtmlFull=function(t,e){var r=(new DOMParser).parseFromString(t,"text/html");if(!r)return t;for(var i=!1,o=0;o<r.all.length;o++)i=this.rewriteElem(r.all[o])||i;if(i){var n;if(t&&t.indexOf("<html")>=0)r.documentElement._no_rewrite=!0,n=this.reconstructDocType(r.doctype)+r.documentElement.outerHTML;else{r.head._no_rewrite=!0,r.body._no_rewrite=!0;var s=this.nodeHasChildren(r.head),a=this.nodeHasChildren(r.body);if(n=(s?r.head.outerHTML:"")+(a?r.body.outerHTML:""),e)if(r.all.length>3){var w="</"+r.all[3].tagName.toLowerCase()+">";this.endsWith(n,w)&&!this.endsWith(t.toLowerCase(),w)&&(n=n.substring(0,n.length-w.length))}else if("<"!==t[0]||">"!==t[t.length-1])return void(this.write_buff+=t);n=this.reconstructDocType(r.doctype)+n}return n}return t},y.prototype.rewriteInlineStyle=function(t){var e;try{e=decodeURIComponent(t)}catch(r){e=t}if(e!==t){var r=this.rewriteStyle(e).split(",",2);return r[0]+","+encodeURIComponent(r[1])}return this.rewriteStyle(t)},y.prototype.rewriteCookie=function(t){var e=this,r=t.replace(this.wb_abs_prefix,"").replace(this.wb_rel_prefix,"");return r=r.replace(this.cookie_domain_regex,(function(t,i){var o={domain:i,cookie:r,wb_type:"cookie"};return e.sendTopMessage(o,!0),e.$wbwindow.location.hostname.indexOf(".")>=0&&!e.IP_RX.test(e.$wbwindow.location.hostname)?"Domain=."+e.$wbwindow.location.hostname:""})).replace(this.cookie_path_regex,(function(t,r){var i=e.rewriteUrl(r);return 0===i.indexOf(e.wb_curr_host)&&(i=i.substring(e.wb_curr_host.length)),"Path="+i})),"https:"!==e.$wbwindow.location.protocol&&(r=r.replace("secure","")),r.replace(",|",",")},y.prototype.rewriteWorker=function(t){if(!t)return t;var e=0===(t=t.toString()).indexOf("blob:"),r=0===t.indexOf("javascript:");if(!e&&!r){if(!this.startsWithOneOf(t,this.VALID_PREFIXES)&&!this.startsWith(t,"/")&&!this.startsWithOneOf(t,this.BAD_PREFIXES)){var i=this.resolveRelUrl(t,this.$wbwindow.document);return this.rewriteUrl(i,!1,"wkr_",this.$wbwindow.document)}return this.rewriteUrl(t,!1,"wkr_",this.$wbwindow.document)}var o=r?t.replace("javascript:",""):null;if(e){var n=new XMLHttpRequest;this.utilFns.XHRopen.call(n,"GET",t,!1),this.utilFns.XHRsend.call(n),o=n.responseText.replace(this.workerBlobRe,"").replace(this.rmCheckThisInjectRe,"this")}if(this.wb_info.static_prefix||this.wb_info.ww_rw_script){var s=this.$wbwindow.document.baseURI;o="(function() { self.importScripts(\'"+(this.wb_info.ww_rw_script||this.wb_info.static_prefix+"wombatWorkers.js")+"\'); new WBWombat({\'prefix\': \'"+this.wb_abs_prefix+"\', \'prefixMod\': \'"+this.wb_abs_prefix+"wkrf_/\', \'originalURL\': "+JSON.stringify(s)+"}); })();"+o}var a=new Blob([o],{type:"application/javascript"});return this.URL.createObjectURL(a)},y.prototype.rewriteTextNodeFn=function(t,e,r){var i,o=this.proxyToObj(t);if(r.length>0&&o.parentElement&&"STYLE"===o.parentElement.tagName){i=new Array(r.length);var n=r.length-1;2===n?(i[0]=r[0],i[1]=r[1]):1===n&&(i[0]=r[0]),i[n]=this.rewriteStyle(r[n])}else i=r;return e.__WB_orig_apply?e.__WB_orig_apply(o,i):e.apply(o,i)},y.prototype.rewriteChildNodeFn=function(t,e,r){var i=this.proxyToObj(t);if(0===r.length)return e.call(i);var o=this.rewriteElementsInArguments(r);return e.__WB_orig_apply?e.__WB_orig_apply(i,o):e.apply(i,o)},y.prototype.rewriteInsertAdjHTMLOrElemArgs=function(t,e,r,i,o){var n=this.proxyToObj(t);return n._no_rewrite?e.call(n,r,i):o?e.call(n,r,this.rewriteHtml(i)):(this.rewriteElemComplete(i),e.call(n,r,i))},y.prototype.rewriteSetTimeoutInterval=function(t,e,r){var i=this.isString(r[0]),o=i?new Array(r.length):r;if(i){this.$wbwindow.Proxy?o[0]=this.wrapScriptTextJsProxy(r[0]):o[0]=r[0].replace(/\\blocation\\b/g,"WB_wombat_$&");for(var n=1;n<r.length;++n)o[n]=this.proxyToObj(r[n])}var s=this.proxyToObj(t);return e.__WB_orig_apply?e.__WB_orig_apply(s,o):e.apply(s,o)},y.prototype.rewriteHTMLAssign=function(t,e,r){var i=r,o=t.tagName;if(!(t._no_rewrite||t instanceof this.$wbwindow.HTMLTemplateElement))if("STYLE"===o)i=this.rewriteStyle(r);else if("SCRIPT"===o){r&&this.IsTagRegex.test(r)&&(i=this.rewriteHtml(r));var n=[];i===r&&(this.skipWrapScriptBasedOnType(t.type)||this.skipWrapScriptTextBasedOnText(r,n)||(i=this.wrapScriptTextJsProxy(i,n)))}else i=this.rewriteHtml(r);e.call(t,i),this.wbUseAFWorker&&this.WBAutoFetchWorker&&"STYLE"===o&&null!=t.sheet&&this.WBAutoFetchWorker.deferredSheetExtraction(t.sheet)},y.prototype.rewriteEvalArg=function(t,e,r){this.$wbwindow.TrustedScript&&e instanceof this.$wbwindow.TrustedScript&&(e=e.toString());var i=[];return t(this.isString(e)&&!this.skipWrapScriptTextBasedOnText(e,i)?this.wrapScriptTextJsProxy(e,i):this.otherEvalRewrite(e),r)},y.prototype.otherEvalRewrite=function(t){return"string"!=typeof t?t:t.replace(this.IMPORT_JS_REGEX,this.styleReplacer)},y.prototype.addEventOverride=function(t,e){var r=e;e||(r=this.$wbwindow.MessageEvent.prototype);var i=this.getOrigGetter(r,t);i&&this.defGetterProp(r,t,(function(){return null!=this["_"+t]?this["_"+t]:i.call(this)}))},y.prototype.isAttrObjRewrite=function(t){if(!t)return!1;var e=t.ownerElement&&t.ownerElement.tagName;return this.shouldRewriteAttr(e,t.nodeName)},y.prototype.newAttrObjGetSet=function(t,e){var r=this,i=this.getOrigGetter(t,e),o=this.getOrigSetter(t,e);this.defProp(t,e,(function(t){var e=r.proxyToObj(this),i=t;return r.isAttrObjRewrite(e)&&(i=r.performAttributeRewrite(e.ownerElement,e.name,t,e.ownerDocument,!1)),o.call(e,i)}),(function(){var t=r.proxyToObj(this),e=i.call(t);return r.isAttrObjRewrite(t)?r.extractOriginalURL(e):e}))},y.prototype.overrideAttrProps=function(){var t=this.$wbwindow.Attr.prototype;this.newAttrObjGetSet(t,"value"),this.newAttrObjGetSet(t,"nodeValue"),this.newAttrObjGetSet(t,"textContent")},y.prototype.overrideAttr=function(t,e,r){var i=this.getOrigGetter(t,e),o=this.getOrigSetter(t,e),n=this;this.defProp(t,e,(function(t){"js_"===r&&(this.__$removedWBOSRC$__||n.removeWBOSRC(this),"module"===this.type&&(r="esm_"));var i=n.rewriteUrl(t,!1,r);return o?o.call(this,i):n.wb_setAttribute?n.wb_setAttribute.call(this,e,i):void 0}),(function(){var t;return i?t=i.call(this):n.wb_getAttribute&&(t=n.wb_getAttribute.call(this,e)),t=n.extractOriginalURL(t),this.__WB_blank&&"about:blank"===t?"":t}))},y.prototype.overridePropExtract=function(t,e){var r=this.getOrigGetter(t,e),i=this;if(r){this.defGetterProp(t,e,(function(){var t=i.proxyToObj(this),e=r.call(t);return t.__WB_no_unrewrite?e:i.extractOriginalURL(e)}))}},y.prototype.overrideDeProxyPropAssign=function(t,e){var r=this.getOrigSetter(t,e),i=this.getOrigGetter(t,e),o=this;if(r){this.defProp(t,e,(function(t){return r.call(o.proxyToObj(this),o.proxyToObj(t))}),i)}},y.prototype.overrideReferrer=function(t){var e=this.getOrigGetter(t,"referrer"),r=this;if(e){this.defGetterProp(t,"referrer",(function(){var t=r.proxyToObj(this),i=this.defaultView;if(i===i.__WB_replay_top)return"";var o=e.call(t);return r.extractOriginalURL(o)}))}},y.prototype.overridePropToProxy=function(t,e){var r=this.getOrigGetter(t,e);if(r){var i=this;this.defGetterProp(t,e,(function(){return i.objToProxy(r.call(this))}))}},y.prototype.overrideHistoryFunc=function(t){if(this.$wbwindow.history){var e=this.$wbwindow.history[t];if(e){this.$wbwindow.history["_orig_"+t]=e,this.$wbwindow.history.___wb_ownWindow=this.$wbwindow;var r=this,i=function(t,i,o){var n=this.___wb_ownWindow||r.$wbwindow;o=r.extractOriginalURL(o);var s,a,w=n.WB_wombat_location;if(o){var h=r._makeURLParser(o,n.document);if(a=h.href,s=r.rewriteUrl(a),a!==w.origin&&"about:blank"!==w.href&&!r.startsWith(a,w.origin+"/"))throw new DOMException("Invalid history change: "+a)}else a=w.href;e.call(this,t,i,s);var p=n.document.title;r.WBAutoFetchWorker&&n.setTimeout((function(){i||n.document.title===p||(i=n.document.title),r.WBAutoFetchWorker.fetchAsPage(s,a,i)}),100),r.sendHistoryUpdate(a,i,n)};return this.$wbwindow.history[t]=i,this.$wbwindow.History&&this.$wbwindow.History.prototype&&(this.$wbwindow.History.prototype[t]=i),i}}},y.prototype.overrideStyleAttr=function(t,e,r){var i=this.getOrigGetter(t,e),o=this.getOrigSetter(t,e),n=this,s=i,a=function(t,e,r,i,o){return e+(r||"")+n.extractOriginalURL(i)+o},w=/(url\\()([\'"])?(.*?)(\\2\\))/;i||(s=function(){var t=this.getPropertyValue(r);return t&&t.startsWith("url(")&&(t=t.replace(w,a)),t}),(o&&i||r)&&this.defProp(t,e,(function(t){var e=n.rewriteStyle(t);return o?o.call(this,e):this.setProperty(r,e),e}),s)},y.prototype.overrideStyleSetProp=function(t){var e=t.setProperty,r=this;t.setProperty=function(t,i,o){var n=r.rewriteStyle(i);return e.call(this,t,n,o)}},y.prototype.overrideAnchorAreaElem=function(t){if(t&&t.prototype){for(var e={},r=t.prototype,i=function(t,r){var i=e["set_"+t];return i?i.call(this,r):""},o=function(t){var r=e["get_"+t];return r?r.call(this):""},n=0;n<this.URL_PROPS.length;n++){var s=this.URL_PROPS[n];e["get_"+s]=this.getOrigGetter(r,s),e["set_"+s]=this.getOrigSetter(r,s),Object.defineProperty&&this.defProp(r,s,this.makeSetLocProp(s,i,o),this.makeGetLocProp(s,o),!0)}r.toString=function(){return this.href}}},y.prototype.overrideHtmlAssign=function(t,e,r){if(this.$wbwindow.DOMParser&&t&&t.prototype){var i=t.prototype,o=this.getOrigGetter(i,e),n=this.getOrigSetter(i,e);if(n){var s=this.rewriteHTMLAssign,a=this.wb_unrewrite_rx;this.defProp(i,e,(function(t){return s(this,n,t)}),r?function(){var t=o.call(this);return this._no_rewrite?t:t.replace(a,"")}:o)}}},y.prototype.overrideHtmlAssignSrcDoc=function(t,e){var r=t.prototype,i=(this.getOrigGetter(r,e),this.getOrigSetter(r,e)),o=this;this.defProp(r,e,(function(t){return this.__wb_srcdoc=t,o.wb_info.isSW?(o.blobUrlForIframe(this,t),t):o.rewriteHTMLAssign(this,i,t)}),(function(){return this.__wb_srcdoc}))},y.prototype.overrideDataSet=function(){var t=this.$wbwindow.HTMLElement.prototype,e=this.getOrigGetter(t,"dataset"),r=this;this.defProp(t,"dataset",null,(function(){var t=e.call(this);return new Proxy(t,{get(t,e,i){var o=t[e];return"string"==typeof o&&r.startsWithOneOf(o,r.wb_prefixes)?r.extractOriginalURL(o):o}})}))},y.prototype.overrideStyleProxy=function(t){var e=this.$wbwindow.HTMLElement.prototype,r=this.getOrigSetter(e,"style"),i=this.getOrigGetter(e,"style"),o=this;this.defProp(e,"style",r,(function(){var e=i.call(this),r={};return new Proxy(e,{set:(e,r,i)=>(t.includes(r)&&(i=o.rewriteStyle(i)),e[r]=i,!0),get(t,i,n){var s=t[i];return"function"!=typeof s||"setProperty"!==i&&!o.isNativeFunction(s)?s:(r[i]||(r[i]=s.bind(e)),r[i])}})}))},y.prototype.overrideIframeContentAccess=function(t){if(this.$wbwindow.HTMLIFrameElement&&this.$wbwindow.HTMLIFrameElement.prototype){var e=this.$wbwindow.HTMLIFrameElement.prototype,r=this.getOrigGetter(e,t);if(r){var i=this.getOrigSetter(e,t),o=this;this.defProp(e,t,i,(function(){return o.initIframeWombat(this),o.objToProxy(r.call(this))})),e["_get_"+t]=r}}},y.prototype.overrideSWAccess=function(t){if(t.navigator.serviceWorker&&t.navigator.serviceWorker.controller){t._WB_wombat_sw=t.navigator.serviceWorker;var e={controller:null,ready:Promise.resolve({unregister:function(){}}),register:function(){return Promise.reject()},addEventListener:function(){},removeEventListener:function(){},onmessage:null,oncontrollerchange:null,getRegistrations:function(){return Promise.resolve([])},getRegistration:function(){return Promise.resolve(void 0)},startMessages:function(){}};this.defGetterProp(t.navigator,"serviceWorker",(function(){return e}))}},y.prototype.overrideFuncThisProxyToObj=function(t,e,r){if(t){var i=r;if(!r&&t.prototype&&t.prototype[e]?i=t.prototype:!r&&t[e]&&(i=t),i){var o=this,n=i[e];i[e]=function(){return n.apply(o.proxyToObj(this),arguments)}}}},y.prototype.overrideFuncArgProxyToObj=function(t,e,r){if(t&&t.prototype){var i=r||0,o=t.prototype[e];if(o){var n=this;t.prototype[e]=function(){for(var t=new Array(arguments.length),e=0;e<t.length;e++)t[e]=e===i?n.proxyToObj(arguments[e]):arguments[e];var r=n.proxyToObj(this);return o.__WB_orig_apply?o.__WB_orig_apply(r,t):o.apply(r,t)}}}},y.prototype.overrideFunctionApply=function(t){if(!t.Function.prototype.__WB_orig_apply){var e=t.Function.prototype.apply;t.Function.prototype.__WB_orig_apply=e;var r=this;t.Function.prototype.apply=function(t,e){return r.isNativeFunction(this)&&(t=r.proxyToObj(t),e=r.deproxyArrayHandlingArgumentsObj(e)),this.__WB_orig_apply(t,e)},this.wb_funToString.apply=e}},y.prototype.overrideFunctionCall=function(t){if(!t.Function.prototype.__WB_orig_call){var e=t.Function.prototype.call;t.Function.prototype.__WB_orig_call=e;var r=this;t.Function.prototype.call=function(t,...e){return r.isNativeFunction(this)&&(t=r.proxyToObj(t),e=r.deproxyArrayHandlingArgumentsObj(e)),this.__WB_orig_call(t,...e)},this.wb_funToString.call=e}},y.prototype.overrideFunctionBind=function(t){if(!t.Function.prototype.__WB_orig_bind){var e=t.Function.prototype.bind;t.Function.prototype.__WB_orig_bind=e;var r=this;t.Function.prototype.bind=function(t){var e=r.isNativeFunction(this),i=e?this.__WB_orig_bind.apply(this,arguments):this.__WB_orig_bind.__WB_orig_apply(this,arguments);return i.__WB_is_native_func__=e,i}}},y.prototype.overrideSrcsetAttr=function(t,e){var r="srcset",i=this.getOrigGetter(t,r),o=this.getOrigSetter(t,r),n=this;this.defProp(t,r,(function(t){var e=n.rewriteSrcset(t,this);return o?o.call(this,e):n.wb_setAttribute?n.wb_setAttribute.call(this,r,e):void 0}),(function(){var t;return i?t=i.call(this):n.wb_getAttribute&&(t=n.wb_getAttribute.call(this,r)),t=n.extractOriginalURL(t)}))},y.prototype.overrideHrefAttr=function(t,e){var r=this.getOrigGetter(t,"href"),i=this.getOrigSetter(t,"href"),o=this;this.defProp(t,"href",(function(t){var r;return r="cs_"===e&&0===t.indexOf("data:text/css")?o.rewriteInlineStyle(t):"LINK"===this.tagName?o.rewriteUrl(t,!1,o.rwModForElement(this,"href")):o.rewriteUrl(t,!1,e,this.ownerDocument),i?i.call(this,r):o.wb_setAttribute?o.wb_setAttribute.call(this,"href",r):void 0}),(function(){var t;return r?t=r.call(this):o.wb_getAttribute&&(t=o.wb_getAttribute.call(this,"href")),this._no_rewrite?t:o.extractOriginalURL(t)}))},y.prototype.overrideTextProtoGetSet=function(t,e){var r,i=this.getOrigGetter(t,e),o=this;if("data"===e){var n=this.getOrigSetter(t,e);r=function(t){var e=t;return!this._no_rewrite&&this.parentElement&&"STYLE"===this.parentElement.tagName&&(e=o.rewriteStyle(t)),n.call(this,e)}}this.defProp(t,e,r,(function(){var t=i.call(this);return!this._no_rewrite&&this.parentElement&&"STYLE"===this.parentElement.tagName?t.replace(o.wb_unrewrite_rx,""):t}))},y.prototype.overrideAnUIEvent=function(t){var e="__wb_"+t+"_overridden",r=this.$wbwindow[t];if(r&&r.prototype&&!r.prototype[e]){var i=this;this.overridePropToProxy(r.prototype,"view");var o,n="init"+t;if(r.prototype[n]){var s=r.prototype[n];r.prototype[n]=function(){var t=i.proxyToObj(this);if(0===arguments.length||arguments.length<3)return s.__WB_orig_apply?s.__WB_orig_apply(t,arguments):s.apply(t,arguments);for(var e=new Array(arguments.length),r=0;r<arguments.length;r++)e[r]=3===r?i.proxyToObj(arguments[r]):arguments[r];return s.__WB_orig_apply?s.__WB_orig_apply(t,e):s.apply(t,e)}}this.$wbwindow[t]=(o=r,function(e,r){return i.domConstructorErrorChecker(this,t,arguments),r&&(null!=r.view&&(r.view=i.proxyToObj(r.view)),null!=r.relatedTarget&&(r.relatedTarget=i.proxyToObj(r.relatedTarget)),null!=r.target&&(r.target=i.proxyToObj(r.target))),new o(e,r)}),this.$wbwindow[t].prototype=r.prototype,Object.defineProperty(this.$wbwindow[t].prototype,"constructor",{value:this.$wbwindow[t]}),this.$wbwindow[t].prototype[e]=!0}},y.prototype.rewriteParentNodeFn=function(t,e,r){var i=this._no_rewrite?r:this.rewriteElementsInArguments(r),o=this.proxyToObj(t);return e.__WB_orig_apply?e.__WB_orig_apply(o,i):e.apply(o,i)},y.prototype.overrideParentNodeAppendPrepend=function(t){var e=this.rewriteParentNodeFn;if(t.prototype.append){var r=t.prototype.append;t.prototype.append=function(){return e(this,r,arguments)}}if(t.prototype.prepend){var i=t.prototype.prepend;t.prototype.prepend=function(){return e(this,i,arguments)}}},y.prototype.overrideShadowDom=function(){this.$wbwindow.ShadowRoot&&this.$wbwindow.ShadowRoot.prototype&&(this.overrideHtmlAssign(this.$wbwindow.ShadowRoot,"innerHTML",!0),this.overrideParentNodeAppendPrepend(this.$wbwindow.ShadowRoot))},y.prototype.overrideChildNodeInterface=function(t,e){if(t&&t.prototype){var r=e?this.rewriteTextNodeFn:this.rewriteChildNodeFn;if(t.prototype.before){var i=t.prototype.before;t.prototype.before=function(){return r(this,i,arguments)}}if(t.prototype.after){var o=t.prototype.after;t.prototype.after=function(){return r(this,o,arguments)}}if(t.prototype.replaceWith){var n=t.prototype.replaceWith;t.prototype.replaceWith=function(){return r(this,n,arguments)}}}},y.prototype.initTextNodeOverrides=function(){var t=this.$wbwindow.Text;if(t&&t.prototype){var e=t.prototype,r=this.rewriteTextNodeFn;if(e.appendData){var i=e.appendData;e.appendData=function(){return r(this,i,arguments)}}if(e.insertData){var o=e.insertData;e.insertData=function(){return r(this,o,arguments)}}if(e.replaceData){var n=e.replaceData;e.replaceData=function(){return r(this,n,arguments)}}this.overrideChildNodeInterface(t,!0),this.overrideTextProtoGetSet(e,"data"),this.overrideTextProtoGetSet(e,"wholeText")}},y.prototype.initAttrOverrides=function(){this.overrideHrefAttr(this.$wbwindow.HTMLLinkElement.prototype,"cs_"),this.overrideHrefAttr(this.$wbwindow.CSSStyleSheet.prototype,"cs_"),this.overrideHrefAttr(this.$wbwindow.HTMLBaseElement.prototype,"mp_"),this.overrideSrcsetAttr(this.$wbwindow.HTMLImageElement.prototype,"im_"),this.overrideSrcsetAttr(this.$wbwindow.HTMLSourceElement.prototype,"oe_"),this.overrideAttr(this.$wbwindow.HTMLVideoElement.prototype,"poster","im_"),this.overrideAttr(this.$wbwindow.HTMLAudioElement.prototype,"poster","im_"),this.overrideAttr(this.$wbwindow.HTMLImageElement.prototype,"src","im_"),this.overrideAttr(this.$wbwindow.HTMLInputElement.prototype,"src","oe_"),this.overrideAttr(this.$wbwindow.HTMLEmbedElement.prototype,"src","oe_"),this.overrideAttr(this.$wbwindow.HTMLMediaElement.prototype,"src","oe_"),this.overrideAttr(this.$wbwindow.HTMLVideoElement.prototype,"src","oe_"),this.overrideAttr(this.$wbwindow.HTMLAudioElement.prototype,"src","oe_"),this.overrideAttr(this.$wbwindow.HTMLSourceElement.prototype,"src","oe_"),window.HTMLTrackElement&&window.HTMLTrackElement.prototype&&this.overrideAttr(this.$wbwindow.HTMLTrackElement.prototype,"src","oe_"),this.overrideAttr(this.$wbwindow.HTMLIFrameElement.prototype,"src","if_"),this.$wbwindow.HTMLFrameElement&&this.$wbwindow.HTMLFrameElement.prototype&&this.overrideAttr(this.$wbwindow.HTMLFrameElement.prototype,"src","fr_"),this.overrideAttr(this.$wbwindow.HTMLScriptElement.prototype,"src","js_"),this.overrideAttr(this.$wbwindow.HTMLObjectElement.prototype,"data","oe_"),this.overrideAttr(this.$wbwindow.HTMLObjectElement.prototype,"codebase","oe_"),this.overrideAttr(this.$wbwindow.HTMLMetaElement.prototype,"content","mp_"),this.overrideAttr(this.$wbwindow.HTMLFormElement.prototype,"action","mp_"),this.overrideAttr(this.$wbwindow.HTMLQuoteElement.prototype,"cite","mp_"),this.overrideAttr(this.$wbwindow.HTMLModElement.prototype,"cite","mp_"),this.overrideAnchorAreaElem(this.$wbwindow.HTMLAnchorElement),this.overrideAnchorAreaElem(this.$wbwindow.HTMLAreaElement);var t=this.$wbwindow.CSSStyleDeclaration.prototype,e={background:"background",backgroundImage:"background-image",cursor:"cursor",listStyle:"list-style",listStyleImage:"list-style-image",border:"border",borderImage:"border-image",borderImageSource:"border-image-source",maskImage:"mask-image"};for(var[r,i]of(this.overrideStyleProxy(Object.values(e)),this.$wbwindow.CSS2Properties&&(t=this.$wbwindow.CSS2Properties.prototype),this.overrideStyleAttr(t,"cssText"),Object.entries(e)))this.overrideStyleAttr(t,r,i);if(this.overrideStyleSetProp(t),this.$wbwindow.CSSStyleSheet&&this.$wbwindow.CSSStyleSheet.prototype){var o=this,n=this.$wbwindow.CSSStyleSheet.prototype.insertRule;this.$wbwindow.CSSStyleSheet.prototype.insertRule=function(t,e){return n.call(this,o.rewriteStyle(t),e)}}this.$wbwindow.CSSRule&&this.$wbwindow.CSSRule.prototype&&this.overrideStyleAttr(this.$wbwindow.CSSRule.prototype,"cssText")},y.prototype.initCSSOMOverrides=function(){var t,r=this;if(this.$wbwindow.CSSStyleValue){var i=function(t,e){var i=t[e];t[e]=function(t,e){if(null==e)return i.call(this,t,e);var o=r.noExceptRewriteStyle(e);return i.call(this,t,o)}};this.$wbwindow.CSSStyleValue.parse&&this.$wbwindow.CSSStyleValue.parse.toString().indexOf("[native code]")>0&&i(this.$wbwindow.CSSStyleValue,"parse"),this.$wbwindow.CSSStyleValue.parseAll&&this.$wbwindow.CSSStyleValue.parseAll.toString().indexOf("[native code]")>0&&i(this.$wbwindow.CSSStyleValue,"parseAll")}if(this.$wbwindow.CSSKeywordValue&&this.$wbwindow.CSSKeywordValue.prototype){var o=this.$wbwindow.CSSKeywordValue;this.$wbwindow.CSSKeywordValue=(t=this.$wbwindow.CSSKeywordValue,function(e){return r.domConstructorErrorChecker(this,"CSSKeywordValue",arguments),new t(r.rewriteStyle(e))}),this.$wbwindow.CSSKeywordValue.prototype=o.prototype,Object.defineProperty(this.$wbwindow.CSSKeywordValue.prototype,"constructor",{value:this.$wbwindow.CSSKeywordValue}),e(this.$wbwindow.CSSKeywordValue,"CSSKeywordValue")}if(this.$wbwindow.StylePropertyMap&&this.$wbwindow.StylePropertyMap.prototype){var n=this.$wbwindow.StylePropertyMap.prototype.set;this.$wbwindow.StylePropertyMap.prototype.set=function(){if(arguments.length<=1)return n.__WB_orig_apply?n.__WB_orig_apply(this,arguments):n.apply(this,arguments);var t=new Array(arguments.length);t[0]=arguments[0];for(var e=1;e<arguments.length;e++)t[e]=r.noExceptRewriteStyle(arguments[e]);return n.__WB_orig_apply?n.__WB_orig_apply(this,t):n.apply(this,t)};var s=this.$wbwindow.StylePropertyMap.prototype.append;this.$wbwindow.StylePropertyMap.prototype.append=function(){if(arguments.length<=1)return n.__WB_orig_apply?s.__WB_orig_apply(this,arguments):s.apply(this,arguments);var t=new Array(arguments.length);t[0]=arguments[0];for(var e=1;e<arguments.length;e++)t[e]=r.noExceptRewriteStyle(arguments[e]);return s.__WB_orig_apply?s.__WB_orig_apply(this,t):s.apply(this,t)}}},y.prototype.initAudioOverride=function(){if(this.$wbwindow.Audio){var t,r=this.$wbwindow.Audio,i=this;this.$wbwindow.Audio=(t=this.$wbwindow.Audio,function(e){return i.domConstructorErrorChecker(this,"Audio"),new t(i.rewriteUrl(e,!0,"oe_"))}),this.$wbwindow.Audio.prototype=r.prototype,Object.defineProperty(this.$wbwindow.Audio.prototype,"constructor",{value:this.$wbwindow.Audio}),e(this.$wbwindow.Audio,"HTMLAudioElement")}},y.prototype.initBadPrefixes=function(t){this.BAD_PREFIXES=["http:"+t,"https:"+t,"http:/"+t,"https:/"+t]},y.prototype.initCryptoRandom=function(){if(this.$wbwindow.crypto&&this.$wbwindow.Crypto){var t=this,e=function(e){for(var r=0;r<e.length;r++)e[r]=parseInt(4294967296*t.$wbwindow.Math.random());return e};this.$wbwindow.Crypto.prototype.getRandomValues=e,this.$wbwindow.crypto.getRandomValues=e}},y.prototype.initDateOverride=function(t){if(!this.$wbwindow.__wb_Date_now){var e,r=1e3*parseInt(t),i=this.$wbwindow.Date.now()-(r-0),o=this.$wbwindow.Date,n=this.$wbwindow.Date.UTC,s=this.$wbwindow.Date.parse,a=this.$wbwindow.Date.now;this.$wbwindow.__wb_Date_now=a,this.$wbwindow.Date=(e=this.$wbwindow.Date,function(t,r,o,n,s,w,h){return void 0===t?new e(a()-i):void 0===r?new e(t):void 0===o?new e(t,r):void 0===n?new e(t,r,o):void 0===s?new e(t,r,o,n):void 0===w?new e(t,r,o,n,s):void 0===h?new e(t,r,o,n,s,w):new e(t,r,o,n,s,w,h)}),this.$wbwindow.Date.prototype=o.prototype,this.$wbwindow.Date.now=function(){return a()-i},this.$wbwindow.Date.UTC=n,this.$wbwindow.Date.parse=s,this.$wbwindow.Date.__WB_timediff=i,this.$wbwindow.Date.prototype.getTimezoneOffset=function(){return 0};var w=this.$wbwindow.Date.prototype.toString;this.$wbwindow.Date.prototype.toString=function(){return w.call(this).split(" GMT")[0]+" GMT+0000 (Coordinated Universal Time)"};var h=this.$wbwindow.Date.prototype.toTimeString;this.$wbwindow.Date.prototype.toTimeString=function(){return h.call(this).split(" GMT")[0]+" GMT+0000 (Coordinated Universal Time)"},Object.defineProperty(this.$wbwindow.Date.prototype,"constructor",{value:this.$wbwindow.Date})}},y.prototype.initBlobOverride=function(){if(this.$wbwindow.Blob&&!this.wb_info.isSW){var t,e=this.$wbwindow.Blob,r=this;this.$wbwindow.Blob=(t=this.$wbwindow.Blob,function(e,i){return!i||"application/xhtml+xml"!==i.type&&"text/html"!==i.type||1===e.length&&"string"==typeof e[0]&&r.startsWith(e[0],"<!DOCTYPE html>")&&(e[0]=r.rewriteHtml(e[0]),i.type="text/html"),new t(e,i)}),this.$wbwindow.Blob.prototype=e.prototype}},y.prototype.initIntersectionObsOverride=function(){var t,e=this.$wbwindow.IntersectionObserver,r=this;this.$wbwindow.IntersectionObserver=(t=this.$wbwindow.IntersectionObserver,function(e,i){return i&&i.root&&(i.root=r.proxyToObj(i.root)),new t(e,i)}),this.$wbwindow.IntersectionObserver.prototype=e.prototype,Object.defineProperty(this.$wbwindow.IntersectionObserver.prototype,"constructor",{value:this.$wbwindow.IntersectionObserver})},y.prototype.initWSOverride=function(){this.$wbwindow.WebSocket&&this.$wbwindow.WebSocket.prototype&&(this.$wbwindow.WebSocket=function(t){function e(t,r){this.openCallbacks=[],this.addEventListener=function(t,r){"open"===t&&e.openCallbacks.push(r)},this.removeEventListener=function(){},this.close=function(){},this.send=function(t){console.log("ws send",t)},this.protocol=r&&r.length?r[0]:"",this.url=t,this.readyState=1;var i=this;setTimeout((function(){var t=new CustomEvent("open");i.onopen&&i.onopen(t),i.openCallbacks.forEach((e=>e(t)))}),500)}return e.CONNECTING=0,e.OPEN=1,e.CLOSING=2,e.CLOSED=3,e}(this.$wbwindow.WebSocket),Object.defineProperty(this.$wbwindow.WebSocket.prototype,"constructor",{value:this.$wbwindow.WebSocket}),e(this.$wbwindow.WebSocket,"WebSocket"))},y.prototype.initDocTitleOverride=function(){var t=this.getOrigGetter(this.$wbwindow.document,"title"),e=this.getOrigSetter(this.$wbwindow.document,"title"),r=this;this.defProp(this.$wbwindow.document,"title",(function(t){var i=e.call(this,t),o={wb_type:"title",title:t};return r.sendTopMessage(o),i}),t)},y.prototype.initFontFaceOverride=function(){if(this.$wbwindow.FontFace){var t,r=this,i=this.$wbwindow.FontFace;this.$wbwindow.FontFace=(t=this.$wbwindow.FontFace,function(e,i,o){r.domConstructorErrorChecker(this,"FontFace",arguments,2);var n=i;return null!=i&&(n="string"!=typeof i?r.rewriteInlineStyle(i.toString()):r.rewriteInlineStyle(i)),new t(e,n,o)}),this.$wbwindow.FontFace.prototype=i.prototype,Object.defineProperty(this.$wbwindow.FontFace.prototype,"constructor",{value:this.$wbwindow.FontFace}),e(this.$wbwindow.FontFace,"FontFace")}},y.prototype.initFixedRatio=function(t){try{this.$wbwindow.devicePixelRatio=t}catch(t){}if(Object.defineProperty)try{Object.defineProperty(this.$wbwindow,"devicePixelRatio",{value:t,writable:!1})}catch(t){}},y.prototype.initPaths=function(t){t.wombat_opts=t.wombat_opts||{},Object.assign(this.wb_info,t),this.wb_opts=t.wombat_opts,this.wb_replay_prefix=t.prefix,this.wb_is_proxy=t.proxy_magic||!this.wb_replay_prefix,this.wb_info.top_host=this.wb_info.top_host||"*",this.wb_curr_host=this.$wbwindow.location.protocol+"//"+this.$wbwindow.location.host,this.wb_info.wombat_opts=this.wb_info.wombat_opts||{},this.wb_orig_scheme=t.wombat_scheme+"://",this.wb_orig_origin=this.wb_orig_scheme+t.wombat_host,this.wb_abs_prefix=this.wb_replay_prefix,!t.is_live&&t.wombat_ts?this.wb_capture_date_part="/"+t.wombat_ts+"/":this.wb_capture_date_part="",this.initBadPrefixes(this.wb_replay_prefix),this.initCookiePreset()},y.prototype.initSeededRandom=function(t){this.$wbwindow.Math.seed=parseInt(t);var e=this;this.$wbwindow.Math.random=function(){return e.$wbwindow.Math.seed=(9301*e.$wbwindow.Math.seed+49297)%233280,e.$wbwindow.Math.seed/233280}},y.prototype.initHistoryOverrides=function(){this.overrideHistoryFunc("pushState"),this.overrideHistoryFunc("replaceState");var t=this;this.$wbwindow.addEventListener("popstate",(function(e){t.sendHistoryUpdate(t.$wbwindow.WB_wombat_location.href,t.$wbwindow.document.title)}))},y.prototype.initCookiePreset=function(){if(this.wb_info.presetCookie)for(var t=this.wb_info.presetCookie.split(";"),e=0;e<t.length;e++)this.$wbwindow.document.cookie=t[e].trim()+"; Path="+this.rewriteUrl("./",!0)},y.prototype.initHTTPOverrides=function(){var t=this;this.overridePropExtract(this.$wbwindow.XMLHttpRequest.prototype,"responseURL");var r,i,o=!!this.wb_info.convert_post_to_get;if(this.wb_info.isSW||o){var n=this.$wbwindow.XMLHttpRequest.prototype.open,s=this.$wbwindow.XMLHttpRequest.prototype.setRequestHeader,a=this.$wbwindow.XMLHttpRequest.prototype.send;this.utilFns.XHRopen=n,this.utilFns.XHRsend=a,this.$wbwindow.XMLHttpRequest.prototype.open=function(){this.__WB_xhr_open_arguments=arguments,this.__WB_xhr_headers=new Headers},this.$wbwindow.XMLHttpRequest.prototype.setAttributionReporting=function(){},this.$wbwindow.XMLHttpRequest.prototype.setRequestHeader=function(t,e){this.__WB_xhr_headers.set(t,e)},this.$wbwindow.XMLHttpRequest.prototype.send=async function(e){if(o&&("POST"===this.__WB_xhr_open_arguments[0]||"PUT"===this.__WB_xhr_open_arguments[0])){var r={url:this.__WB_xhr_open_arguments[1],method:this.__WB_xhr_open_arguments[0],headers:this.__WB_xhr_headers,postData:e};u(r)&&(this.__WB_xhr_open_arguments[1]=r.url,this.__WB_xhr_open_arguments[0]="GET",e=null)}if(this.__WB_xhr_open_arguments.length>2&&!this.__WB_xhr_open_arguments[2]&&-1===navigator.userAgent.indexOf("Firefox")&&(this.__WB_xhr_open_arguments[2]=!0,console.warn("wombat.js: Sync XHR not supported in SW-based replay in this browser, converted to async")),this._no_rewrite||(this.__WB_xhr_open_arguments[1]=t.rewriteUrl(this.__WB_xhr_open_arguments[1])),n.apply(this,this.__WB_xhr_open_arguments),!t.startsWith(this.__WB_xhr_open_arguments[1],"data:")){for(const[t,e]of this.__WB_xhr_headers.entries())s.call(this,t,e);s.call(this,"X-Pywb-Requested-With","XMLHttpRequest")}return a.call(this,e)}}else if(this.$wbwindow.XMLHttpRequest.prototype.open){var w=this.$wbwindow.XMLHttpRequest.prototype.open;this.utilFns.XHRopen=w,this.utilFns.XHRsend=this.$wbwindow.XMLHttpRequest.prototype.send,this.$wbwindow.XMLHttpRequest.prototype.open=function(e,r,i,o,n){var s=this._no_rewrite?r:t.rewriteUrl(r),a=!0;null==i||i||(a=!1),w.call(this,e,s,a,o,n),t.startsWith(s,"data:")||this.setRequestHeader("X-Pywb-Requested-With","XMLHttpRequest")}}if(this.$wbwindow.fetch){var h=this.$wbwindow.fetch;this.$wbwindow.fetch=function(e,r){var i;if(e instanceof Request){var o=t.rewriteUrl(e.url);e.__WB_no_unrewrite=!0,i=o===e.url?e:new Request(o,e),delete e.__WB_no_unrewrite}else e=t.rewriteUrl(e.toString()),i=new Request(e,r);return h.call(t.proxyToObj(this),i)}}if(this.$wbwindow.Request&&this.$wbwindow.Request.prototype){var p=this.$wbwindow.Request;this.$wbwindow.Request=(r=this.$wbwindow.Request,function e(i,o){t.domConstructorErrorChecker(this,"Request",arguments);var n=o||{},s=i,a=typeof i;switch(a){case"string":s=t.rewriteUrl(i);break;case"object":if(s=i,i.url){var w=t.rewriteUrl(i.url);w!==i.url&&(s=new r(w,i))}else i.href&&(s=t.rewriteUrl(i.toString(),!0))}let h=!1;if(n&&n.referrer){var p=t.rewriteUrl(n.referrer);p!==n.referrer&&(n instanceof e?(n.__WB_no_unrewrite=!0,h=!0):n.referrer=p)}var c=new r(s,n);return h&&delete n.__WB_no_unrewrite,c}),this.$wbwindow.Request.prototype=p.prototype,Object.defineProperty(this.$wbwindow.Request.prototype,"constructor",{value:this.$wbwindow.Request}),this.overridePropExtract(this.$wbwindow.Request.prototype,"url"),this.overridePropExtract(this.$wbwindow.Request.prototype,"referrer")}if(this.$wbwindow.Response&&this.$wbwindow.Response.prototype){var c=this.$wbwindow.Response.prototype.redirect;this.$wbwindow.Response.prototype.redirect=function(e,r){var i=t.rewriteUrl(e,!0,null,t.$wbwindow.document);return c.call(this,i,r)},this.overridePropExtract(this.$wbwindow.Response.prototype,"url")}if(this.$wbwindow.EventSource&&this.$wbwindow.EventSource.prototype){var l=this.$wbwindow.EventSource;this.$wbwindow.EventSource=(i=this.$wbwindow.EventSource,function(e,r){t.domConstructorErrorChecker(this,"EventSource",arguments);var o=e;return null!=e&&(o=t.rewriteUrl(e)),new i(o,r)}),this.$wbwindow.EventSource.prototype=l.prototype,Object.defineProperty(this.$wbwindow.EventSource.prototype,"constructor",{value:this.$wbwindow.EventSource}),e(this.$wbwindow.EventSource,"EventSource")}},y.prototype.initElementGetSetAttributeOverride=function(){if(!this.wb_opts.skip_setAttribute&&this.$wbwindow.Element&&this.$wbwindow.Element.prototype){var t=this,e=this.$wbwindow.Element.prototype;if(e.setAttribute){var r=e.setAttribute;e._orig_setAttribute=r,e.setAttribute=function(e,i){var o=i;if(e&&"string"==typeof o){var n=e.toLowerCase();if("LINK"===this.tagName&&"href"===n&&0===o.indexOf("data:text/css"))o=t.rewriteInlineStyle(i);else if("style"===n)o=t.rewriteStyle(i);else if("srcset"===n||"imagesrcset"===n&&"LINK"===this.tagName)o=t.rewriteSrcset(i,this);else{t.shouldRewriteAttr(this.tagName,n)&&(t.removeWBOSRC(this),this._no_rewrite||(o=t.rewriteUrl(i,!1,t.rwModForElement(this,n))))}}return r.call(this,e,o)}}if(e.getAttribute){var i=e.getAttribute;this.wb_getAttribute=i,e.getAttribute=function(e){var r=i.call(this,e);if(null===r)return r;var o=e;if(e&&(o=e.toLowerCase()),t.shouldRewriteAttr(this.tagName,o)){var n=t.retrieveWBOSRC(this);return n||t.extractOriginalURL(r)}return t.startsWith(o,"data-")&&t.startsWithOneOf(r,t.wb_prefixes)?t.extractOriginalURL(r):r}}}},y.prototype.initSvgImageOverrides=function(){if(this.$wbwindow.SVGImageElement){var t=this.$wbwindow.SVGImageElement.prototype,e=t.getAttribute,r=t.getAttributeNS,i=t.setAttribute,o=t.setAttributeNS,n=this;t.getAttribute=function(t){var r=e.call(this,t);return t.indexOf("xlink:href")>=0||"href"===t?n.extractOriginalURL(r):r},t.getAttributeNS=function(t,e){var i=r.call(this,t,e);return e.indexOf("xlink:href")>=0||"href"===e?n.extractOriginalURL(i):i},t.setAttribute=function(t,e){var r=e;return(t.indexOf("xlink:href")>=0||"href"===t)&&(r=n.rewriteUrl(e)),i.call(this,t,r)},t.setAttributeNS=function(t,e,r){var i=r;return(e.indexOf("xlink:href")>=0||"href"===e)&&(i=n.rewriteUrl(r)),o.call(this,t,e,i)}}},y.prototype.initCreateElementNSFix=function(){if(this.$wbwindow.document.createElementNS&&this.$wbwindow.Document.prototype.createElementNS){var t=this.$wbwindow.document.createElementNS,e=this,r=function(r,i){return t.call(e.proxyToObj(this),e.extractOriginalURL(r),i)};this.$wbwindow.Document.prototype.createElementNS=r,this.$wbwindow.document.createElementNS=r}},y.prototype.initQuerySelectorOverride=function(){if(this.$wbwindow.document.querySelector&&this.$wbwindow.Document.prototype.querySelector){var t=this,e=this.$wbwindow.document.querySelector,r=function(r){return e.call(t.proxyToObj(this),n(r))},i=this.$wbwindow.document.querySelectorAll,o=function(e){return i.call(t.proxyToObj(this),n(e))};this.$wbwindow.Document.prototype.querySelector=r,this.$wbwindow.document.querySelector=r,this.$wbwindow.Document.prototype.querySelectorAll=o,this.$wbwindow.document.querySelectorAll=o}function n(t){if("string"==typeof t)try{t=t.replace(/((?:^|\\s)\\b\\w+\\[(?:src|href|data-href))[\\^]?(=[\'"]?(?:https?[:])?\\/\\/)/,"$1*$2")}catch(t){}return t}},y.prototype.initInsertAdjacentElementHTMLOverrides=function(){var t=this.$wbwindow.Element;if(t&&t.prototype){var e=t.prototype,r=this.rewriteInsertAdjHTMLOrElemArgs;if(e.insertAdjacentHTML){var i=e.insertAdjacentHTML;e.insertAdjacentHTML=function(t,e){return r(this,i,t,e,!0)}}if(e.insertAdjacentElement){var o=e.insertAdjacentElement;e.insertAdjacentElement=function(t,e){return r(this,o,t,e,!1)}}}},y.prototype.initDomOverride=function(){var t=this.$wbwindow.Node;if(t&&t.prototype){var e=this.rewriteNodeFuncArgs;if(t.prototype.appendChild){var r=t.prototype.appendChild;t.prototype.appendChild=function(t,i){return e(this,r,t,i)}}if(t.prototype.insertBefore){var i=t.prototype.insertBefore;t.prototype.insertBefore=function(t,r){return e(this,i,t,r)}}if(t.prototype.replaceChild){var o=t.prototype.replaceChild;t.prototype.replaceChild=function(t,r){return e(this,o,t,r)}}this.overridePropToProxy(t.prototype,"ownerDocument"),this.overridePropToProxy(this.$wbwindow.HTMLHtmlElement.prototype,"parentNode"),this.overridePropToProxy(this.$wbwindow.Event.prototype,"target")}this.$wbwindow.Element&&this.$wbwindow.Element.prototype&&(this.overrideParentNodeAppendPrepend(this.$wbwindow.Element),this.overrideChildNodeInterface(this.$wbwindow.Element,!1)),this.$wbwindow.DocumentFragment&&this.$wbwindow.DocumentFragment.prototype&&this.overrideParentNodeAppendPrepend(this.$wbwindow.DocumentFragment)},y.prototype.initDocOverrides=function(t){if(Object.defineProperty){this.overrideReferrer(t),this.defGetterProp(t,"origin",(function(){return this.WB_wombat_location.origin})),this.defGetterProp(this.$wbwindow,"origin",(function(){return this.WB_wombat_location.origin}));var e=this;this.defProp(t,"domain",(function(t){var r=this.WB_wombat_location;r&&e.endsWith(r.hostname,t)&&(this.__wb_domain=t)}),(function(){return this.__wb_domain||this.WB_wombat_location.hostname}))}},y.prototype.initDocWriteOpenCloseOverride=function(){if(this.$wbwindow.DOMParser){var t=this.$wbwindow.Document.prototype,e=this.$wbwindow.document;this._writeBuff="";var r=this,i=e.write,o=function(){return d(this,i,_(arguments))};e.write=o,t.write=o;var n=e.writeln,s=function(){return d(this,n,_(arguments))};e.writeln=s,t.writeln=s;var a=e.open,w=function(){var t,e=r.proxyToObj(this);if(3===arguments.length){var i=r.rewriteUrl(arguments[0],!1,"mp_");t=a.call(e,i,arguments[1],arguments[2]),r.initNewWindowWombat(t,arguments[0])}else t=a.call(e),u()?r._writeBuff="":r.initNewWindowWombat(e.defaultView);return t};e.open=w,t.open=w;var h=e.close,p=function(){if(!r._writeBuff){var t=r.proxyToObj(this);return r.initNewWindowWombat(t.defaultView),h.__WB_orig_apply?h.__WB_orig_apply(t,arguments):h.apply(t,arguments)}if("loading"===this.readyState&&i.call(e,r.rewriteHtml(r._writeBuff,!0)),u()){r.blobUrlForIframe(r.$wbwindow.frameElement,r._writeBuff);const t=this;try{if(t.documentElement){new r.$wbwindow.MutationObserver(((e,i)=>{r.blobUrlForIframe(r.$wbwindow.frameElement,t.documentElement.outerHTML)})).observe(t.documentElement,{childList:!0,subtree:!0})}}catch(t){}}r._writeBuff=""};e.close=p,t.close=p;var c=this.getOrigGetter(t,"body"),l=this.getOrigSetter(t,"body");c&&l&&this.defProp(t,"body",(function(t){return t&&(t instanceof HTMLBodyElement||t instanceof HTMLFrameSetElement)&&r.rewriteElemComplete(t),l.call(r.proxyToObj(this),t)}),c)}function u(){return r.wb_info.isSW&&r.$wbwindow.frameElement}function _(t){return 0===t.length?"":1===t.length?t[0]:Array.prototype.join.call(t,"")}function d(t,e,i){r.$wbwindow;var o=r.proxyToObj(t);if("loading"===t.readyState&&i&&-1!==i.startsWith("\\x3c!--")&&-1===i.indexOf("--\\x3e"))return e.call(o,i);if(!(u()||"loading"===t.readyState&&r.wb_info.injectDocClose)){i=r.rewriteHtml(i,!0);o=r.proxyToObj(t);var n=e.call(o,i);return r.initNewWindowWombat(o.defaultView),n}r._writeBuff+=i}},y.prototype.initIframeWombat=function(t){var e;e=t._get_contentWindow?t._get_contentWindow.call(t):t.contentWindow;try{if(!e||e===this.$wbwindow||e._skip_wombat||e._wb_wombat)return}catch(t){return}var r=t.src;this.initNewWindowWombat(e,r)},y.prototype.initNewWindowWombat=function(t,e){var r=!1;if(t&&!t._wb_wombat){if(e&&""!==e&&!this.startsWithOneOf(e,["about:blank","javascript:"])||(r=!0),!r&&this.wb_info.isSW){var i=this.extractOriginalURL(e);("about:blank"===i||i.startsWith("srcdoc:")||i.startsWith("blob:"))&&(r=!0)}if(r){var o={};Object.assign(o,this.wb_info);var n=new y(t,o);t._wb_wombat=n.wombatInit()}else this.initProtoPmOrigin(t),this.initPostMessageOverride(t),this.initMessageEventOverride(t),this.initCheckThisFunc(t),this.initImportWrapperFunc(t)}},y.prototype.initTimeoutIntervalOverrides=function(){var t=this.rewriteSetTimeoutInterval;if(this.$wbwindow.setTimeout&&!this.$wbwindow.setTimeout.__$wbpatched$__){var e=this.$wbwindow.setTimeout;this.$wbwindow.setTimeout=function(){return t(this,e,arguments)},this.$wbwindow.setTimeout.__$wbpatched$__=!0}if(this.$wbwindow.setInterval&&!this.$wbwindow.setInterval.__$wbpatched$__){var r=this.$wbwindow.setInterval;this.$wbwindow.setInterval=function(){return t(this,r,arguments)},this.$wbwindow.setInterval.__$wbpatched$__=!0}},y.prototype.initWorkerOverrides=function(){var t,e,r=this;if(this.$wbwindow.Worker&&!this.$wbwindow.Worker._wb_worker_overridden){var i=this.$wbwindow.Worker;this.$wbwindow.Worker=(t=i,function(e,i){return r.domConstructorErrorChecker(this,"Worker",arguments),new t(r.rewriteWorker(e),i)}),this.$wbwindow.Worker.prototype=i.prototype,Object.defineProperty(this.$wbwindow.Worker.prototype,"constructor",{value:this.$wbwindow.Worker}),this.$wbwindow.Worker._wb_worker_overridden=!0}if(this.$wbwindow.SharedWorker&&!this.$wbwindow.SharedWorker.__wb_sharedWorker_overridden){var o=this.$wbwindow.SharedWorker;this.$wbwindow.SharedWorker=(e=o,function(t,i){return r.domConstructorErrorChecker(this,"SharedWorker",arguments),new e(r.rewriteWorker(t),i)}),this.$wbwindow.SharedWorker.prototype=o.prototype,Object.defineProperty(this.$wbwindow.SharedWorker.prototype,"constructor",{value:this.$wbwindow.SharedWorker}),this.$wbwindow.SharedWorker.__wb_sharedWorker_overridden=!0}if(this.$wbwindow.ServiceWorkerContainer&&this.$wbwindow.ServiceWorkerContainer.prototype&&this.$wbwindow.ServiceWorkerContainer.prototype.register){var n=this.$wbwindow.ServiceWorkerContainer.prototype.register;this.$wbwindow.ServiceWorkerContainer.prototype.register=function(t,e){var i=new r.URL(t,r.$wbwindow.document.baseURI).href,o=r.getPageUnderModifier();return e&&e.scope?e.scope=r.rewriteUrl(e.scope,!1,o):e={scope:r.rewriteUrl("/",!1,o)},n.call(this,r.rewriteUrl(i,!1,"sw_"),e)}}if(this.$wbwindow.Worklet&&this.$wbwindow.Worklet.prototype&&this.$wbwindow.Worklet.prototype.addModule&&!this.$wbwindow.Worklet.__wb_workerlet_overridden){var s=this.$wbwindow.Worklet.prototype.addModule;this.$wbwindow.Worklet.prototype.addModule=function(t,e){var i=r.rewriteUrl(t,!1,"js_");return s.call(this,i,e)},this.$wbwindow.Worklet.__wb_workerlet_overridden=!0}},y.prototype.initLocOverride=function(t,e,r){if(Object.defineProperty)for(var i=0;i<this.URL_PROPS.length;i++){var o=this.URL_PROPS[i];this.defProp(t,o,this.makeSetLocProp(o,e,r),this.makeGetLocProp(o,r),!0)}},y.prototype.initWombatLoc=function(t){if(!(!t||t.WB_wombat_location&&t.document.WB_wombat_location)){var e=new w(t.location,this),r=this;if(Object.defineProperty){this.defProp(t.Object.prototype,"WB_wombat_location",(function(e){var i=this._WB_wombat_location||this.defaultView&&this.defaultView._WB_wombat_location;i&&(i.href=e),t.location=r.rewriteUrl(e)}),(function(){return this._WB_wombat_location||this.defaultView&&this.defaultView._WB_wombat_location||this.location})),this.initProtoPmOrigin(t),t._WB_wombat_location=e}else t.WB_wombat_location=e,setTimeout(this.checkAllLocations,500),setInterval(this.checkAllLocations,500)}},y.prototype.initProtoPmOrigin=function(t){if(!t.Object.prototype.__WB_pmw){var e=function(t){return this.__WB_source=t,this};try{t.Object.defineProperty(t.Object.prototype,"__WB_pmw",{get:function(){return e},set:function(){},configurable:!0,enumerable:!1})}catch(t){}t.__WB_check_loc=function(t,e){if(t instanceof Location||t instanceof w){if(e)for(var r=0;r<e.length;r++)if(t===e[r])return{};return this.WB_wombat_location}return{}}}},y.prototype.initCheckThisFunc=function(t){try{t.Object.prototype[this.WB_CHECK_THIS_FUNC]||t.Object.defineProperty(t.Object.prototype,this.WB_CHECK_THIS_FUNC,{configutable:!1,enumerable:!1,value:function(t){return t&&t._WB_wombat_obj_proxy?t._WB_wombat_obj_proxy:t}})}catch(t){}},y.prototype.initImportWrapperFunc=function(t){var e=this;t.____wb_rewrite_import__=function(t,r){return t&&(r=new e.URL(r,t).href),import(e.rewriteUrl(r,!1,"esm_"))}},y.prototype.overrideGetOwnPropertyNames=function(t){var e=t.Object.getOwnPropertyNames,r=[this.WB_CHECK_THIS_FUNC,"WB_wombat_location","__WB_pmw","WB_wombat_top","WB_wombat_eval","WB_wombat_runEval"];try{t.Object.defineProperty(t.Object,"getOwnPropertyNames",{value:function(t){for(var i=e(t),o=0;o<r.length;o++){var n=i.indexOf(r[o]);n>=0&&i.splice(n,1)}return i}})}catch(t){console.log(t)}},y.prototype.initHashChange=function(){if(this.$wbwindow.__WB_top_frame){var t=this;this.$wbwindow.addEventListener("message",(function(e){if(e.data&&e.data.from_top){var r=e.data.message;r.wb_type&&"outer_hashchange"===r.wb_type&&t.$wbwindow.location.hash!=r.hash&&(t.$wbwindow.location.hash=r.hash)}})),this.$wbwindow.addEventListener("hashchange",(function(){var e={wb_type:"hashchange",hash:t.$wbwindow.location.hash};t.sendTopMessage(e)}))}},y.prototype.initPostMessageOverride=function(t){if(t.postMessage&&!t.__orig_postMessage){var e=t.postMessage,r=this;t.__orig_postMessage=e;var i=function(i,o,n,s){var a,w,h,p=r.proxyToObj(this);if(p||((p=t).__WB_source=t),p.__WB_source&&p.__WB_source.WB_wombat_location){var c=p.__WB_source;if(a=c.WB_wombat_location.origin,p.__WB_win_id||(p.__WB_win_id={},p.__WB_counter=0),!c.__WB_id){var l=p.__WB_counter;c.__WB_id=l+c.WB_wombat_location.href,p.__WB_counter+=1}p.__WB_win_id[c.__WB_id]=c,w=c.__WB_id,p.__WB_source=void 0}else a=window.WB_wombat_location.origin;"object"==typeof o?(h=o.targetOrigin,n=o.transfer):h=o;var u=h;u===p.location.origin&&(u=a);var _={from:a,to_origin:u,src_id:w,message:i,from_top:s};if("*"!==h){if("null"===p.location.origin||""===p.location.origin)return;h=p.location.origin}return e.call(p,_,h,n)};t.postMessage=i,t.Window.prototype.postMessage=i;var o=null,n=(o=t.EventTarget&&t.EventTarget.prototype?t.EventTarget.prototype:t).addEventListener;o.addEventListener=function(t,e,i){var o,s=r.proxyToObj(this);if("message"===t?o=r.message_listeners.add_or_get(e,(function(){return c(e,s,r)})):"storage"===t?r.storage_listeners.add_or_get(e,(function(){return p(e,s)})):"online"===t||"offline"===t||(o=e),o)return n.call(s,t,o,i)};var s=o.removeEventListener;o.removeEventListener=function(t,e,i){var o,n=r.proxyToObj(this);if("message"===t?o=r.message_listeners.remove(e):"storage"===t?r.storage_listeners.remove(e):o=e,o)return s.call(n,t,o,i)};var a=function(e,i){var o=r.getOrigSetter(t,e);r.defProp(t,e,(function(t){this["__orig_"+e]=t;var n=r.proxyToObj(this),s=t?i(t,n,r):t;return o.call(n,s)}),(function(){return this["__orig_"+e]}))};a("onmessage",c),a("onstorage",p)}},y.prototype.initMessageEventOverride=function(t){t.MessageEvent&&!t.MessageEvent.prototype.__extended&&(this.addEventOverride("target"),this.addEventOverride("srcElement"),this.addEventOverride("currentTarget"),this.addEventOverride("eventPhase"),this.addEventOverride("path"),this.overridePropToProxy(t.MessageEvent.prototype,"source"),t.MessageEvent.prototype.__extended=!0)},y.prototype.initUIEventsOverrides=function(){this.overrideAnUIEvent("UIEvent"),this.overrideAnUIEvent("MouseEvent"),this.overrideAnUIEvent("TouchEvent"),this.overrideAnUIEvent("FocusEvent"),this.overrideAnUIEvent("KeyboardEvent"),this.overrideAnUIEvent("WheelEvent"),this.overrideAnUIEvent("InputEvent"),this.overrideAnUIEvent("CompositionEvent")},y.prototype.initOpenOverride=function(){var t=this.$wbwindow.open;this.$wbwindow.Window.prototype.open&&(t=this.$wbwindow.Window.prototype.open);var e=this,r=function(r,i,o){i&&(i=e.rewriteAttrTarget(i));var n=e.rewriteUrl(r,!1),s=t.call(e.proxyToObj(this),n,i,o);return e.initNewWindowWombat(s,r),s};this.$wbwindow.open=r,this.$wbwindow.Window.prototype.open&&(this.$wbwindow.Window.prototype.open=r);for(var i=0;i<this.$wbwindow.frames.length;i++)try{this.$wbwindow.frames[i].open=r}catch(t){console.log(t)}},y.prototype.rewriteAttrTarget=function(t){return this.wb_info.target_frame&&("_blank"===t||"_parent"===t||"_top"===t||t&&this.$wbwindow===this.$wbwindow.__WB_replay_top)?this.wb_info.target_frame:t},y.prototype.initCookiesOverride=function(){var t=this.getOrigGetter(this.$wbwindow.document,"cookie"),e=this.getOrigSetter(this.$wbwindow.document,"cookie");t||(t=this.getOrigGetter(this.$wbwindow.Document.prototype,"cookie")),e||(e=this.getOrigSetter(this.$wbwindow.Document.prototype,"cookie"));var r=function(t,e){var r=new Date(e);return isNaN(r.getTime())?"Expires=Thu,| 01 Jan 1970 00:00:00 GMT":"Expires="+new Date(r.getTime()+Date.__WB_timediff).toUTCString().replace(",",",|")},i=this;this.defProp(this.$wbwindow.document,"cookie",(function(t){if(t){for(var o=t.replace(i.cookie_expires_regex,r).split(i.SetCookieRe),n=0;n<o.length;n++)o[n]=i.rewriteCookie(o[n]);return e.call(i.proxyToObj(this),o.join(","))}}),(function(){return t.call(i.proxyToObj(this))}))},y.prototype.initRegisterUnRegPHOverride=function(){var t=this,e=this.$wbwindow.navigator;if(e.registerProtocolHandler){var r=e.registerProtocolHandler;e.registerProtocolHandler=function(e,i,o){return r.call(this,e,t.rewriteUrl(i),o)}}if(e.unregisterProtocolHandler){var i=e.unregisterProtocolHandler;e.unregisterProtocolHandler=function(e,r){return i.call(this,e,t.rewriteUrl(r))}}},y.prototype.initMiscNavigatorOverrides=function(){this.$wbwindow.navigator.sendBeacon&&(this.$wbwindow.navigator.sendBeacon=function(){return!0}),Object.defineProperty(navigator,"onLine",{value:!0}),this.$wbwindow.navigator.mediaDevices&&(this.$wbwindow.navigator.mediaDevices.setCaptureHandleConfig=function(){}),this.$wbwindow.navigator.getInstalledRelatedApps&&(this.$wbwindow.navigator.getInstalledRelatedApps=function(){return Promise.resolve([])})},y.prototype.initPresentationRequestOverride=function(){if(this.$wbwindow.PresentationRequest&&this.$wbwindow.PresentationRequest.prototype){var t=this,e=this.$wbwindow.PresentationRequest;this.$wbwindow.PresentationRequest=(r=this.$wbwindow.PresentationRequest,function(e){t.domConstructorErrorChecker(this,"PresentationRequest",arguments);var i=e;if(null!=e)if(Array.isArray(i))for(var o=0;o<i.length;o++)i[o]=t.rewriteUrl(i[o],!0,"mp_");else i=t.rewriteUrl(e,!0,"mp_");return new r(i)}),this.$wbwindow.PresentationRequest.prototype=e.prototype,Object.defineProperty(this.$wbwindow.PresentationRequest.prototype,"constructor",{value:this.$wbwindow.PresentationRequest})}var r},y.prototype.initDisableNotificationsGeoLocation=function(){window.Notification&&(window.Notification.requestPermission=function(t){return t&&t("denied"),Promise.resolve("denied")});var t=function(t){t&&(t.getCurrentPosition&&(t.getCurrentPosition=function(t,e,r){e&&e({code:2,message:"not available"})}),t.watchPosition&&(t.watchPosition=function(t,e,r){e&&e({code:2,message:"not available"})}))};window.geolocation&&t(window.geolocation),window.navigator.geolocation&&t(window.navigator.geolocation)},y.prototype.initStorageOverride=function(){this.addEventOverride("storageArea",this.$wbwindow.StorageEvent.prototype),i.yes=!1;var t={};if(this.wb_info.storage)try{t=JSON.parse(atob(this.wb_info.storage))}catch(t){console.warn("Error parsing storage, storages not loaded")}a(this,"localStorage",t.local),a(this,"sessionStorage",t.session),this.$wbwindow.Storage=s,i.yes=!0},y.prototype.initIndexedDBOverride=function(){if(this.$wbwindow.IDBFactory){var t=this.$wbwindow.IDBFactory.prototype,e="wb-"+this.wb_orig_origin+"-",r=t.open;t.open=function(t,i){return r.call(this,e+t,i)};var i=t.deleteDatabase;t.delete=function(t){return i.call(this,e+t,options)};var o=t.databases;t.databases=function(){var t=this;return new Promise((function(r,i){o.call(t).then((function(t){for(var i=[],o=0;o<t.length;o++)0===t[o].name.indexOf(e)&&i.push({name:t[o].name.substring(e.length),version:t[o].version});r(i)})).catch((function(t){i(t)}))}))}}},y.prototype.initCachesOverride=function(){if(this.$wbwindow.Cache){var t=this.$wbwindow.Cache.prototype;t.match=function(){return Promise.resolve(void 0)},t.matchAll=function(){return Promise.resolve([])},t.add=function(){return Promise.resolve(void 0)},t.put=function(){return Promise.resolve(void 0)},t.delete=function(){return Promise.resolve(!1)},t.keys=function(){return Promise.resolve([])}}},y.prototype.initCacheStorageOverride=function(){if(this.$wbwindow.CacheStorage){this.$wbwindow.chrome&&(this.$wbwindow.chrome={});var t=this.$wbwindow.CacheStorage.prototype,e="wb-"+this.wb_orig_origin+"-",r=t.open;t.open=function(t){return r.call(this,e+t)};var i=t.has;t.has=function(t){return i.call(this,e+t)};var o=t.delete;t.delete=function(t){return o.call(this,e+t)};var n=t.keys;t.keys=function(){var t=this;return new Promise((function(r,i){n.call(t).then((function(t){for(var i=[],o=0;o<t.length;o++)0===t[o].indexOf(e)&&i.push(t[o].substring(e.length));r(i)})).catch((function(t){i(t)}))}))};t.match;t.match=function(t,e){var r=this;return this.keys().then((function(i){var o;return i.reduce((function(i,n){return i.then((function(){return o||r.open(n).then((function(r){return r.match(t,e)})).then((function(t){return o=t}))}))}),Promise.resolve())}))}}},y.prototype.initWindowObjProxy=function(t){if(t.Proxy){var e=this.getAllOwnProps(t),r={},i=this,o=new t.Proxy({},{get:function(o,n){switch(n){case"top":return i.$wbwindow.WB_wombat_top._WB_wombat_obj_proxy;case"parent":if(i.$wbwindow===i.$wbwindow.WB_wombat_top)return i.$wbwindow.WB_wombat_top._WB_wombat_obj_proxy;try{var s=i.$wbwindow.parent._WB_wombat_obj_proxy;if(s)return s}catch(t){}return i.$wbwindow.WB_wombat_top._WB_wombat_obj_proxy}return i.defaultProxyGet(t,n,e,r)},set:function(e,r,i){switch(r){case"location":return t.WB_wombat_location=i,!0;case"postMessage":case"document":return!0}try{if(!Reflect.set(e,r,i))return!1}catch(t){}return Reflect.set(t,r,i)},has:function(e,r){return r in t},ownKeys:function(e){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))},getOwnPropertyDescriptor:function(e,r){var i=Object.getOwnPropertyDescriptor(e,r);return i||(i=Object.getOwnPropertyDescriptor(t,r))&&(i.configurable=!0),i},getPrototypeOf:function(e){return Object.getPrototypeOf(t)},setPrototypeOf:function(t,e){return!1},isExtensible:function(e){return Object.isExtensible(t)},preventExtensions:function(e){return Object.preventExtensions(t),!0},deleteProperty:function(e,r){var i=Object.getOwnPropertyDescriptor(t,r);return void 0===i||!1!==i.configurable&&(delete e[r],delete t[r],!0)},defineProperty:function(e,r,i){var o=i||{};return o.hasOwnProperty("value")||o.hasOwnProperty("get")||o.hasOwnProperty("set")||(o.value=t[r]),Reflect.defineProperty(t,r,o),Reflect.defineProperty(e,r,o)}});return t._WB_wombat_obj_proxy=o,o}},y.prototype.initDocumentObjProxy=function(t){if(this.initDocOverrides(t),this.$wbwindow.Proxy){var e={},r=this.getAllOwnProps(t),i=this,o=new this.$wbwindow.Proxy(t,{get:function(o,n){return i.defaultProxyGet(t,n,r,e)},set:function(e,r,i){return"location"===r?(t.WB_wombat_location=i,!0):Reflect.set(e,r,i)}});return t._WB_wombat_obj_proxy=o,o}},y.prototype.initAutoFetchWorker=function(){if(this.wbUseAFWorker){var t=new h(this,{isTop:this.$wbwindow===this.$wbwindow.__WB_replay_top,workerURL:(this.wb_info.auto_fetch_worker_prefix||this.wb_info.static_prefix)+"autoFetchWorker.js?init="+encodeURIComponent(JSON.stringify({mod:this.wb_info.mod,prefix:this.wb_abs_prefix,rwRe:this.wb_unrewrite_rx.source}))});this.WBAutoFetchWorker=t,this.$wbwindow.$WBAutoFetchWorker$=t;var e=this;this.utilFns.wbSheetMediaQChecker=function(){e._removeEventListener(this,"load",e.utilFns.wbSheetMediaQChecker),null!=this.sheet&&e.WBAutoFetchWorker&&e.WBAutoFetchWorker.deferredSheetExtraction(this.sheet)}}},y.prototype.initTopFrameNotify=function(t){var e=this,r=function(r){if(e.$wbwindow.__WB_top_frame){if(e.$wbwindow.WB_wombat_location){var i=e.$wbwindow.WB_wombat_location.href;if("string"==typeof i&&"about:blank"!==i&&0!==i.indexOf("javascript:")&&("complete"===e.$wbwindow.document.readyState&&e.wbUseAFWorker&&e.WBAutoFetchWorker&&e.WBAutoFetchWorker.extractFromLocalDoc(),e.$wbwindow===e.$wbwindow.__WB_replay_top)){for(var o=[],n=e.$wbwindow.document.querySelectorAll("link[rel*=\'icon\']"),s=0;s<n.length;s++){var a=n[s];o.push({rel:a.rel,href:e.wb_getAttribute.call(a,"href")})}o.push({rel:"icon",href:e.rewriteUrl("/favicon.ico")});var w={icons:o,url:e.$wbwindow.WB_wombat_location.href,ts:e.wb_info.timestamp,request_ts:e.wb_info.request_ts,is_live:e.wb_info.is_live,title:e.$wbwindow.document?e.$wbwindow.document.title:"",readyState:e.$wbwindow.document.readyState,wb_type:"load"};e.sendTopMessage(w)}}}else{var h=e.$wbwindow.location.hash;e.$wbwindow.location.replace(t.top_url+h)}};"complete"===this.$wbwindow.document.readyState?r():this.$wbwindow.addEventListener?this.$wbwindow.document.addEventListener("readystatechange",r):this.$wbwindow.attachEvent&&this.$wbwindow.document.attachEvent("onreadystatechange",r)},y.prototype.initTopFrame=function(t){if(this.wb_is_proxy)return t.__WB_replay_top=t.top,t.__WB_top_frame=void 0,this.replayTopHost=r.location.host,void(this.replayTopProtocol=r.location.protocol);for(var e=function(t){try{return!!t&&(t.wbinfo?t.wbinfo.is_framed:null!=t._wb_wombat)}catch(t){return!1}},r=t;r.parent!=r&&e(r.parent);)r=r.parent;t.__WB_replay_top=r,this.replayTopHost=r.location.host,this.replayTopProtocol=r.location.protocol;var i=r.parent;if(i!=t&&this.wb_info.is_framed||(i=void 0),i?(t.__WB_top_frame=i,this.initFrameElementOverride(t)):t.__WB_top_frame=void 0,!this.wb_opts.embedded&&r==t&&this.wbUseAFWorker){var o=this;this.$wbwindow.addEventListener("message",(function(t){t.data&&"aaworker"===t.data.wb_type&&o.WBAutoFetchWorker&&o.WBAutoFetchWorker.postMessage(t.data.msg)}),!1)}},y.prototype.initFrameElementOverride=function(t){if(Object.defineProperty&&this.proxyToObj(t.__WB_replay_top)==this.proxyToObj(t))try{Object.defineProperty(t,"frameElement",{value:null,configurable:!1})}catch(t){}},y.prototype.initWombatTop=function(t){if(Object.defineProperty){this.defProp(t.Object.prototype,"WB_wombat_top",(function(t){this.top=t}),(function(){return this.__WB_replay_top?this.__WB_replay_top:(t=this,(void 0===window.constructor?t instanceof window.constructor:t.window==t)?this:this.top);var t}))}},y.prototype.initEvalOverride=function(){var t=this.rewriteEvalArg,e=function(){};this.wrappedEval=function(e){return function(r){return t(e,r)}};var r=this,i=function(e){var r=this;return r&&r.eval&&r.eval!==eval?{eval:function(){return r.eval.__WB_orig_apply(r,arguments)}}:{eval:function(r){return t(e,r)}}},o=function(e){var i=this;return i&&i.eval&&i.eval!==eval?{eval:function(){return i.eval.__WB_orig_apply(i,[].slice.call(arguments,2))}}:{eval:function(i,o,n){var s=i===r.proxyToObj(r.$wbwindow);try{s=s&&!o.callee.caller}catch(t){s=!1}return t(e,n,s)}}};this.defProp(this.$wbwindow.Object.prototype,"WB_wombat_runEval",e,(function(){return i})),this.defProp(this.$wbwindow.Object.prototype,"WB_wombat_runEval2",e,(function(){return o}))},y.prototype.wombatInit=function(){this._internalInit(),this.initCookiePreset(),this.initHistoryOverrides(),this.overrideFunctionApply(this.$wbwindow),this.overrideFunctionCall(this.$wbwindow),this.overrideFunctionBind(this.$wbwindow),this.initDocTitleOverride(),this.initHashChange(),this.wb_opts.skip_postmessage||(this.initPostMessageOverride(this.$wbwindow),this.initMessageEventOverride(this.$wbwindow)),this.initCheckThisFunc(this.$wbwindow),this.initImportWrapperFunc(this.$wbwindow),this.overrideGetOwnPropertyNames(this.$wbwindow),this.initUIEventsOverrides(),this.initDocWriteOpenCloseOverride(),this.initEvalOverride(),this.initHTTPOverrides(),this.initAudioOverride(),this.initFontFaceOverride(this.$wbwindow),this.initWorkerOverrides(),this.initTextNodeOverrides(),this.initCSSOMOverrides(),this.overrideHtmlAssign(this.$wbwindow.Element,"innerHTML",!0),this.overrideHtmlAssign(this.$wbwindow.Element,"outerHTML",!0),this.overrideHtmlAssignSrcDoc(this.$wbwindow.HTMLIFrameElement,"srcdoc",!0),this.overrideHtmlAssign(this.$wbwindow.HTMLStyleElement,"textContent"),this.overrideShadowDom(),this.overridePropExtract(this.$wbwindow.Document.prototype,"URL"),this.overridePropExtract(this.$wbwindow.Document.prototype,"documentURI"),this.overridePropExtract(this.$wbwindow.Node.prototype,"baseURI"),this.overrideAttrProps(),this.overrideDataSet(),this.initInsertAdjacentElementHTMLOverrides(),this.overrideIframeContentAccess("contentWindow"),this.overrideIframeContentAccess("contentDocument"),this.initIntersectionObsOverride(),this.overrideFuncArgProxyToObj(this.$wbwindow.MutationObserver,"observe"),this.overrideFuncArgProxyToObj(this.$wbwindow.Node,"compareDocumentPosition"),this.overrideFuncArgProxyToObj(this.$wbwindow.Node,"contains"),this.overrideFuncArgProxyToObj(this.$wbwindow.Document,"createTreeWalker"),this.overrideFuncArgProxyToObj(this.$wbwindow.Document,"evaluate",1),this.overrideFuncArgProxyToObj(this.$wbwindow.XSLTProcessor,"transformToFragment",1),this.overrideFuncThisProxyToObj(this.$wbwindow,"getComputedStyle",this.$wbwindow),this.overrideFuncThisProxyToObj(this.$wbwindow,"clearTimeout"),this.overrideFuncThisProxyToObj(this.$wbwindow,"clearInterval"),this.overrideFuncThisProxyToObj(this.$wbwindow.EventTarget.prototype,"dispatchEvent"),this.overrideDeProxyPropAssign(this.$wbwindow.TreeWalker.prototype,"currentNode"),this.initTimeoutIntervalOverrides(),this.initQuerySelectorOverride(),this.overrideSWAccess(this.$wbwindow),this.initElementGetSetAttributeOverride(),this.initSvgImageOverrides(),this.initAttrOverrides(),this.initCookiesOverride(),this.initCreateElementNSFix(),this.wb_opts.skip_dom||this.initDomOverride(),this.initRegisterUnRegPHOverride(),this.initPresentationRequestOverride(),this.initMiscNavigatorOverrides(),this.initSeededRandom(this.wb_info.wombat_sec),this.initCryptoRandom(),this.initFixedRatio(this.wb_info.pixel_ratio||1),this.initDateOverride(this.wb_info.wombat_sec),this.initBlobOverride(),this.initWSOverride(),this.initOpenOverride(),this.initDisableNotificationsGeoLocation(),this.initStorageOverride(),this.initCacheStorageOverride(),this.initCachesOverride(),this.initIndexedDBOverride(),this.initWindowObjProxy(this.$wbwindow),this.initDocumentObjProxy(this.$wbwindow.document);var t=this;return{extract_orig:this.extractOriginalURL,rewrite_url:this.rewriteUrl,watch_elem:this.watchElem,init_new_window_wombat:this.initNewWindowWombat,init_paths:this.initPaths,local_init:function(e){var r=t.$wbwindow._WB_wombat_obj_proxy[e];return"document"===e&&r&&!r._WB_wombat_obj_proxy&&t.initDocumentObjProxy(r)||r},showCSPViolations:function(e){t._addRemoveCSPViolationListener(e)}}};const v=y;window._WBWombat=v,window._WBWombatInit=function(t){if(this._wb_wombat)this._wb_wombat.init_paths(t);else{var e=new v(this,t);this._wb_wombat=e.wombatInit()}}})();'}),this.staticData.set(this.staticPrefix+"wombatWorkers.js",{type:"application/javascript",content:'(()=>{function e(t){if(!(this instanceof e))return new e(t);this.info=t,this.initImportScriptsRewrite(),this.initHTTPOverrides(),this.initClientApisOverride(),this.initCacheApisOverride()}e.prototype.noRewrite=function(e){return!e||0===e.indexOf("blob:")||0===e.indexOf("javascript:")||0===e.indexOf("data:")||0===e.indexOf(this.info.prefix)},e.prototype.isRelURL=function(e){return 0===e.indexOf("/")||!e.startsWith("http:")&&!e.startsWith("https:")},e.prototype.maybeResolveURL=function(e,t){if(!t)return e;try{return new URL(e,t).href}catch(e){}return e},e.prototype.ensureURL=function(e,t){if(!e)return e;var r;switch(typeof e){case"string":r=e;break;case"object":r=e.toString();break;default:return null}return this.noRewrite(r)?null:this.isRelURL(r)?this.maybeResolveURL(r,t):0===r.indexOf(self.location.origin)?this.maybeResolveURL(r.slice(self.location.origin.length),t):r},e.prototype.rewriteURL=function(e){var t=this.ensureURL(e,this.info.originalURL);return t?this.info.prefixMod?this.info.prefixMod+t:t:e},e.prototype.rewriteClientWindowURL=function(e,t){var r=this.ensureURL(e,t?t.url:this.info.originalURL);return r?this.info.prefix?this.info.prefix+"mp_/"+r:r:e},e.prototype.rewriteWSURL=function(e){if(!e)return e;var t=typeof e,r=e;if("object"===t)r=e.toString();else if("string"!==t)return e;if(!r)return r;var i="https://",o=0===this.info.prefix.indexOf(i);return this.info.prefix.replace(o?i:"http://",o?"wss://":"ws://")+"ws_/"+r},e.prototype.rewriteArgs=function(e){for(var t=new Array(e.length),r=0;r<t.length;r++)t[r]=this.rewriteURL(e[r]);return t},e.prototype.rewriteFetchApi=function(e){var t=e;switch(typeof e){case"string":t=this.rewriteURL(e);break;case"object":if(e.url){var r=this.rewriteURL(e.url);r!==e.url&&(t=new Request(r,e))}else e.href&&(t=e.href)}return t},e.prototype.rewriteCacheApi=function(e){var t=e;return"string"==typeof e&&(t=this.rewriteURL(e)),t},e.prototype.initImportScriptsRewrite=function(){if(self.importScripts){var e=this,t=self.importScripts;self.importScripts=function(){var r=e.rewriteArgs(arguments);return t.apply(this,r)}}},e.prototype.initHTTPOverrides=function(){var e,t,r,i=this;if(self.XMLHttpRequest&&self.XMLHttpRequest.prototype&&self.XMLHttpRequest.prototype.open){var o=self.XMLHttpRequest.prototype.open;self.XMLHttpRequest.prototype.open=function(e,t,r,n,s){var p=i.rewriteURL(t),l=!0;null==r||r||(l=!1),o.call(this,e,p,l,n,s),-1===p.indexOf("data:")&&this.setRequestHeader("X-Pywb-Requested-With","XMLHttpRequest")}}if(null!=self.fetch){var n=self.fetch;self.fetch=function(e,t){var r=i.rewriteFetchApi(e),o=t||{};return o.credentials="include",n.call(this,r,o)}}if(self.Request&&self.Request.prototype){var s=self.Request;self.Request=(e=self.Request,function(t,r){var o=r||{},n=i.rewriteFetchApi(t);return o.credentials="include",new e(n,o)}),self.Request.prototype=s.prototype}if(self.Response&&self.Response.prototype){var p=self.Response.prototype.redirect;self.Response.prototype.redirect=function(e,t){var r=i.rewriteUrl(e);return p.call(this,r,t)}}if(self.EventSource&&self.EventSource.prototype){var l=self.EventSource;self.EventSource=(t=self.EventSource,function(e,r){var o=e;return null!=e&&(o=i.rewriteUrl(e)),new t(o,r)}),self.EventSource.prototype=l.prototype,Object.defineProperty(self.EventSource.prototype,"constructor",{value:self.EventSource})}if(self.WebSocket&&self.WebSocket.prototype){var f=self.WebSocket;self.WebSocket=(r=self.WebSocket,function(e,t){var o=e;return null!=e&&(o=i.rewriteWSURL(e)),new r(o,t)}),self.WebSocket.prototype=f.prototype,Object.defineProperty(self.WebSocket.prototype,"constructor",{value:self.WebSocket})}},e.prototype.initClientApisOverride=function(){var e=this;if(self.Clients&&self.Clients.prototype&&self.Clients.prototype.openWindow){var t=self.Clients.prototype.openWindow;self.Clients.prototype.openWindow=function(r){var i=e.rewriteClientWindowURL(r);return t.call(this,i)}}if(self.WindowClient&&self.WindowClient.prototype&&self.WindowClient.prototype.navigate){var r=self.WindowClient.prototype.navigate;self.WindowClient.prototype.navigate=function(t){var i=e.rewriteClientWindowURL(t,this);return r.call(this,i)}}},e.prototype.initCacheApisOverride=function(){var e=this;if(self.CacheStorage&&self.CacheStorage.prototype&&self.CacheStorage.prototype.match){var t=self.CacheStorage.prototype.match;self.CacheStorage.prototype.match=function(r,i){var o=e.rewriteCacheApi(r);return t.call(this,o,i)}}if(self.Cache&&self.Cache.prototype){if(self.Cache.prototype.match){var r=self.Cache.prototype.match;self.Cache.prototype.match=function(t,i){var o=e.rewriteCacheApi(t);return r.call(this,o,i)}}if(self.Cache.prototype.matchAll){var i=self.Cache.prototype.matchAll;self.Cache.prototype.matchAll=function(t,r){var o=e.rewriteCacheApi(t);return i.call(this,o,r)}}if(self.Cache.prototype.add){var o=self.Cache.prototype.add;self.Cache.prototype.add=function(t,r){var i=e.rewriteCacheApi(t);return o.call(this,i,r)}}if(self.Cache.prototype.addAll){var n=self.Cache.prototype.addAll;self.Cache.prototype.addAll=function(t){var r=t;if(Array.isArray(t)){r=new Array(t.length);for(var i=0;i<t.length;i++)r[i]=e.rewriteCacheApi(t[i])}return n.call(this,r)}}if(self.Cache.prototype.put){var s=self.Cache.prototype.put;self.Cache.prototype.put=function(t,r){var i=e.rewriteCacheApi(t);return s.call(this,i,r)}}if(self.Cache.prototype.delete){var p=self.Cache.prototype.delete;self.Cache.prototype.delete=function(t,r){var i=e.rewriteCacheApi(t);return p.call(this,i,r)}}if(self.Cache.prototype.keys){var l=self.Cache.prototype.keys;self.Cache.prototype.keys=function(t,r){var i=e.rewriteCacheApi(t);return l.call(this,i,r)}}}},self.WBWombat=e})();'}),n.has("serveIndex")){const t={type:"text/html",content:this.getIndexHtml(n)};this.staticData.set(this.prefix,t),this.staticData.set(this.prefix+"index.html",t)}if(n.has("injectScripts")){const t=n.get("injectScripts").split(",");r.injectScripts=r.injectScripts?[...t,...r.injectScripts]:t}r.injectScripts&&(r.injectScripts=r.injectScripts.map((t=>this.staticPrefix+"proxy/"+t))),n.has("adblockUrl")&&(r.adblockUrl=n.get("adblockUrl")),this.collections=new i(o,n.get("root"),r),this.collections.loadAll(n.get("dbColl")),this.proxyOriginMode=!!n.get("proxyOriginMode"),this.api=new e(this.collections),this.apiPrefix=this.replayPrefix+"api/",this.allowRewrittenCache=!!n.get("allowCache"),this.stats=n.get("stats")?new db:null,self.addEventListener("install",(()=>{self.skipWaiting()})),self.addEventListener("activate",(t=>{t.waitUntil(self.clients.claim()),console.log("Activate!")})),self.addEventListener("fetch",(t=>{t.respondWith(this.handleFetch(t))})),self.addEventListener("message",(t=>{"reload_all"===t.data.msg_type&&t.waitUntil(this.collections.loadAll())}))}getIndexHtml(t){const e=t.get("indexScript")||"./ui.js",r=t.get("indexAppTag")||"replay-app-main";return`\n <!doctype html>\n <html>\n <head><script src="${e}"><\/script></head>\n <body>\n <${r}></${r}>\n </body></html>`}handleFetch(t){const e=t.request.url;if(this.proxyOriginMode)return this.getResponseFor(t.request,t);if(!e.startsWith(this.prefix))return"chrome-extension://invalid/"===e?_(t.request,"Invalid URL"):this.defaultFetch(t.request);if(this.collections.root&&e.slice(this.prefix.length).indexOf("/")<0)return this.defaultFetch(t.request);if(e.startsWith(this.staticPrefix+"proxy/"))return this.staticPathProxy(e,t.request);if(e.startsWith(this.replayPrefix)&&!e.startsWith(this.staticPrefix))return this.getResponseFor(t.request,t);const r=new URL(e);r.search="",r.hash="";const i=r.href;for(const t of this.staticData.keys())if(t===i){const{content:e,type:r}=this.staticData.get(t);return new Response(e,{headers:{"Content-Type":r}})}return("http:"==r.protocol||"https:"==r.protocol)&&r.pathname.indexOf("/",1)<0?this.handleOffline(t.request):this.defaultFetch(t.request)}async staticPathProxy(t,e){return t=t.slice((this.staticPrefix+"proxy/").length),t=new URL(t,self.location.href).href,e=new Request(t),this.defaultFetch(e)}async defaultFetch(t){const e={};return"only-if-cached"===t.cache&&"same-origin"!==t.mode&&(e.cache="default"),self.fetch(t,e)}async ensureCached(t){const e=await caches.open("wabac-offline");for(let r of t){r=new URL(r,self.location.href).href;let i=await e.match(r,{ignoreSearch:!0});if(!i)try{i=await this.defaultFetch(new Request(r)),await e.put(r,i)}catch(t){console.warn(`Failed to Auto Cache: ${r}`,t)}}}async handleOffline(t){let e=null;const r=await caches.open("wabac-offline");try{e=await this.defaultFetch(t)}catch(i){return e=await r.match(t,{ignoreSearch:!0}),e||(e=_(t,"Sorry, this url was not cached for offline use")),e}if(t.url.startsWith(this.prefix+"?"))return e;if(200===e.status){const i=e.clone();await r.put(t,i)}else console.warn(`Not Cacheing ${t.url} - Status ${e.status}`);return e}async getResponseFor(t,e){if(!this.proxyOriginMode&&t.url.startsWith(this.apiPrefix))return this.stats&&t.url.startsWith(this.apiPrefix+"stats.json")?await this.stats.getStats(e):await this.api.apiResponse(t.url.slice(this.apiPrefix.length),t,e);await this.collections.inited;const r=A(t),i=t.headers.get("range");try{if(this.allowRewrittenCache&&!i){const e=await self.caches.match(t);if(e&&!!e.headers.get(Pb)===r)return e}}catch(t){}let n=this.collections.root;n||(n=t.url.slice(this.replayPrefix.length).split("/",1)[0]);const s=await this.collections.getColl(n);if(!s||!this.proxyOriginMode&&!t.url.startsWith(s.prefix))return _(t);const o=this.proxyOriginMode?t.url:t.url.substring(s.prefix.length),a={isRoot:!!this.collections.root};this.proxyOriginMode&&(a.mod="id_",a.proxyOrigin=s.config.extraConfig.proxyOrigin,a.localOrigin=self.location.origin);const c=new Bb(o,t,a);if(!c.url)return _(t,`Replay URL ${o} not found`);const l=await s.handleRequest(c,e);if(l){if(this.stats&&this.stats.updateStats(l,l.status,t,e),this.allowRewrittenCache&&200===l.status)try{const e=await self.caches.open("wabac-"+s.name);r&&l.headers.set(Pb,"true");const i=l.clone();await e.put(t,i)}catch(t){console.warn(t)}return l}return i&&console.log("Not Found Range!: "+i),_(t)}},console.log("sw init")):self.postMessage&&(new ub(self),console.log("ww init"))})();
119
+ const cm="crypto.algorithm",lm="crypto.algorithmProvider";var hm;sy.registerSingleton(lm,class{getAlgorithms(){return sy.resolveAll(cm)}toAsnAlgorithm(t){for(const e of this.getAlgorithms()){const r=e.toAsnAlgorithm(t);if(r)return r}if(/[0-9.]+/.test(t.name)){const e=new rd({algorithm:t.name});if("parameters"in t){const r=t;e.parameters=r.parameters}return e}throw new Error("Cannot convert WebCrypto algorithm to ASN.1 algorithm")}toWebAlgorithm(t){for(const e of this.getAlgorithms()){const r=e.toWebAlgorithm(t);if(r)return r}return{name:t.algorithm,parameters:t.parameters}}});const um="1.3.36.3.3.2.8.1.1",pm=`${um}.1`,dm=`${um}.2`,fm=`${um}.3`,gm=`${um}.4`,ym=`${um}.5`,mm=`${um}.6`,wm=`${um}.7`,bm=`${um}.8`,Am=`${um}.9`,vm=`${um}.10`,_m=`${um}.11`,Em=`${um}.12`,Sm=`${um}.13`,Tm=`${um}.14`,xm="brainpoolP160r1",Cm="brainpoolP160t1",Im="brainpoolP192r1",Rm="brainpoolP192t1",km="brainpoolP224r1",Nm="brainpoolP224t1",Om="brainpoolP256r1",Bm="brainpoolP256t1",Pm="brainpoolP320r1",Dm="brainpoolP320t1",Lm="brainpoolP384r1",Um="brainpoolP384t1",Mm="brainpoolP512r1",Fm="brainpoolP512t1",Hm="ECDSA";let jm=hm=class{toAsnAlgorithm(t){if(t.name.toLowerCase()===Hm.toLowerCase())if("hash"in t)switch(("string"==typeof t.hash?t.hash:t.hash.name).toLowerCase()){case"sha-1":return Xf;case"sha-256":return Zf;case"sha-384":return $f;case"sha-512":return tg}else if("namedCurve"in t){let e="";switch(t.namedCurve){case"P-256":e=Qf;break;case"K-256":e=hm.SECP256K1;break;case"P-384":e=Kf;break;case"P-521":e=Yf;break;case xm:e=pm;break;case Cm:e=dm;break;case Im:e=fm;break;case Rm:e=gm;break;case km:e=ym;break;case Nm:e=mm;break;case Om:e=wm;break;case Bm:e=bm;break;case Pm:e=Am;break;case Dm:e=vm;break;case Lm:e=_m;break;case Um:e=Em;break;case Mm:e=Sm;break;case Fm:e=Tm}if(e)return new rd({algorithm:jf,parameters:Au.serialize(new eg({namedCurve:e}))})}return null}toWebAlgorithm(t){switch(t.algorithm){case Wf:return{name:Hm,hash:{name:"SHA-1"}};case Gf:return{name:Hm,hash:{name:"SHA-256"}};case zf:return{name:Hm,hash:{name:"SHA-384"}};case qf:return{name:Hm,hash:{name:"SHA-512"}};case jf:if(!t.parameters)throw new TypeError("Cannot get required parameters from EC algorithm");switch(Au.parse(t.parameters,eg).namedCurve){case Qf:return{name:Hm,namedCurve:"P-256"};case hm.SECP256K1:return{name:Hm,namedCurve:"K-256"};case Kf:return{name:Hm,namedCurve:"P-384"};case Yf:return{name:Hm,namedCurve:"P-521"};case pm:return{name:Hm,namedCurve:xm};case dm:return{name:Hm,namedCurve:Cm};case fm:return{name:Hm,namedCurve:Im};case gm:return{name:Hm,namedCurve:Rm};case ym:return{name:Hm,namedCurve:km};case mm:return{name:Hm,namedCurve:Nm};case wm:return{name:Hm,namedCurve:Om};case bm:return{name:Hm,namedCurve:Bm};case Am:return{name:Hm,namedCurve:Pm};case vm:return{name:Hm,namedCurve:Dm};case _m:return{name:Hm,namedCurve:Lm};case Em:return{name:Hm,namedCurve:Um};case Sm:return{name:Hm,namedCurve:Mm};case Tm:return{name:Hm,namedCurve:Fm}}}return null}};jm.SECP256K1="1.3.132.0.10",jm=hm=Lg([oy()],jm),sy.registerSingleton(cm,jm);const Wm=Symbol("name"),Vm=Symbol("value");class Gm{constructor(t,e={},r=""){this[Wm]=t,this[Vm]=r;for(const t in e)this[t]=e[t]}}Gm.NAME=Wm,Gm.VALUE=Vm;class zm{static toString(t){return this.items[t]||t}}zm.items={[wg]:"sha1",[bg]:"sha224",[Ag]:"sha256",[vg]:"sha384",[_g]:"sha512",[sg]:"rsaEncryption",[ug]:"sha1WithRSAEncryption",[pg]:"sha224WithRSAEncryption",[dg]:"sha256WithRSAEncryption",[fg]:"sha384WithRSAEncryption",[gg]:"sha512WithRSAEncryption",[jf]:"ecPublicKey",[Wf]:"ecdsaWithSHA1",[Vf]:"ecdsaWithSHA224",[Gf]:"ecdsaWithSHA256",[zf]:"ecdsaWithSHA384",[qf]:"ecdsaWithSHA512",[vp]:"TLS WWW server authentication",[_p]:"TLS WWW client authentication",[Ep]:"Code Signing",[Sp]:"E-mail Protection",[Tp]:"Time Stamping",[xp]:"OCSP Signing","1.2.840.113549.1.7.2":"Signed Data"};class qm{static serialize(t){return this.serializeObj(t).join("\n")}static pad(t=0){return"".padStart(2*t," ")}static serializeObj(t,e=0){const r=[];let i=this.pad(e++),n="";const s=t[Gm.VALUE];s&&(n=` ${s}`),r.push(`${i}${t[Gm.NAME]}:${n}`),i=this.pad(e);for(const n in t){if("symbol"==typeof n)continue;const s=t[n],o=n?`${n}: `:"";if("string"==typeof s||"number"==typeof s||"boolean"==typeof s)r.push(`${i}${o}${s}`);else if(s instanceof Date)r.push(`${i}${o}${s.toUTCString()}`);else if(Array.isArray(s))for(const t of s)t[Gm.NAME]=n,r.push(...this.serializeObj(t,e));else if(s instanceof Gm)s[Gm.NAME]=n,r.push(...this.serializeObj(s,e));else if(vc.vJ.isBufferSource(s))n?(r.push(`${i}${o}`),r.push(...this.serializeBufferSource(s,e+1))):r.push(...this.serializeBufferSource(s,e));else{if(!("toTextObject"in s))throw new TypeError("Cannot serialize data in text format. Unsupported type.");{const t=s.toTextObject();t[Gm.NAME]=n,r.push(...this.serializeObj(t,e))}}}return r}static serializeBufferSource(t,e=0){const r=this.pad(e),i=vc.vJ.toUint8Array(t),n=[];for(let t=0;t<i.length;){const e=[];for(let r=0;r<16&&t<i.length;r++){8===r&&e.push("");const n=i[t++].toString(16).padStart(2,"0");e.push(n)}n.push(`${r}${e.join(" ")}`)}return n}static serializeAlgorithm(t){return this.algorithmSerializer.toTextObject(t)}}qm.oidSerializer=zm,qm.algorithmSerializer=class{static toTextObject(t){const e=new Gm("Algorithm Identifier",{},zm.toString(t.algorithm));if(t.parameters)switch(t.algorithm){case jf:{const r=(new jm).toWebAlgorithm(t);r&&"namedCurve"in r?e["Named Curve"]=r.namedCurve:e.Parameters=t.parameters;break}default:e.Parameters=t.parameters}return e}};class Qm{constructor(...t){if(1===t.length){const e=t[0];this.rawData=Au.serialize(e),this.onInit(e)}else{const e=Au.parse(t[0],t[1]);this.rawData=vc.vJ.toArrayBuffer(t[0]),this.onInit(e)}}equal(t){return t instanceof Qm&&(0,vc.Xy)(t.rawData,this.rawData)}toString(t="text"){switch(t){case"asn":return Au.toString(this.rawData);case"text":return qm.serialize(this.toTextObject());case"hex":return vc.ep.ToHex(this.rawData);case"base64":return vc.ep.ToBase64(this.rawData);case"base64url":return vc.ep.ToBase64Url(this.rawData);default:throw TypeError("Argument 'format' is unsupported value")}}getTextName(){return this.constructor.NAME}toTextObject(){const t=this.toTextObjectEmpty();return t[""]=this.rawData,t}toTextObjectEmpty(t){return new Gm(this.getTextName(),{},t)}}Qm.NAME="ASN";class Km extends Qm{constructor(...t){let e;e=vc.vJ.isBufferSource(t[0])?vc.vJ.toArrayBuffer(t[0]):Au.serialize(new ad({extnID:t[0],critical:t[1],extnValue:new Mh(vc.vJ.toArrayBuffer(t[2]))})),super(e,ad)}onInit(t){this.type=t.extnID,this.critical=t.critical,this.value=t.extnValue.buffer}toTextObject(){const t=this.toTextObjectWithoutValue();return t[""]=this.value,t}toTextObjectWithoutValue(){const t=this.toTextObjectEmpty(this.critical?"critical":void 0);return t[Gm.NAME]===Km.NAME&&(t[Gm.NAME]=zm.toString(this.type)),t}}var Ym;class Jm{constructor(){this.items=new Map,this[Ym]="CryptoProvider","undefined"!=typeof self&&"undefined"!=typeof crypto&&this.set(Jm.DEFAULT,crypto)}static isCryptoKeyPair(t){return t&&t.privateKey&&t.publicKey}static isCryptoKey(t){return t&&t.usages&&t.type&&t.algorithm&&void 0!==t.extractable}clear(){this.items.clear()}delete(t){return this.items.delete(t)}forEach(t,e){return this.items.forEach(t,e)}has(t){return this.items.has(t)}get size(){return this.items.size}entries(){return this.items.entries()}keys(){return this.items.keys()}values(){return this.items.values()}[Symbol.iterator](){return this.items[Symbol.iterator]()}get(t=Jm.DEFAULT){const e=this.items.get(t.toLowerCase());if(!e)throw new Error(`Cannot get Crypto by name '${t}'`);return e}set(t,e){if("string"==typeof t){if(!e)throw new TypeError("Argument 'value' is required");this.items.set(t.toLowerCase(),e)}else this.items.set(Jm.DEFAULT,t);return this}}Ym=Symbol.toStringTag,Jm.DEFAULT="default";const Xm=new Jm,Zm=/^[0-2](?:\.[1-9][0-9]*)+$/;class $m{constructor(t={}){this.items={};for(const e in t)this.register(e,t[e])}get(t){return this.items[t]||null}findId(t){return e=t,new RegExp(Zm).test(e)?t:this.get(t);var e}register(t,e){this.items[t]=e,this.items[e]=t}}const tw=new $m;function ew(t,e){return`\\${vc.ep.ToHex(vc.ep.FromUtf8String(e)).toUpperCase()}`}tw.register("CN","2.5.4.3"),tw.register("L","2.5.4.7"),tw.register("ST","2.5.4.8"),tw.register("O","2.5.4.10"),tw.register("OU","2.5.4.11"),tw.register("C","2.5.4.6"),tw.register("DC","0.9.2342.19200300.100.1.25"),tw.register("E","1.2.840.113549.1.9.1"),tw.register("G","2.5.4.42"),tw.register("I","2.5.4.43"),tw.register("SN","2.5.4.4"),tw.register("T","2.5.4.12");class rw{constructor(t,e={}){this.extraNames=new $m,this.asn=new Ou;for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)){const r=e[t];this.extraNames.register(t,r)}"string"==typeof t?this.asn=this.fromString(t):t instanceof Ou?this.asn=t:vc.vJ.isBufferSource(t)?this.asn=Au.parse(t,Ou):this.asn=this.fromJSON(t)}static isASCII(t){for(let e=0;e<t.length;e++)if(t.charCodeAt(e)>255)return!1;return!0}getField(t){const e=this.extraNames.findId(t)||tw.findId(t),r=[];for(const t of this.asn)for(const i of t)i.type===e&&r.push(i.value.toString());return r}getName(t){return this.extraNames.get(t)||tw.get(t)}toString(){return this.asn.map((t=>t.map((t=>`${this.getName(t.type)||t.type}=${t.value.anyValue?`#${vc.ep.ToHex(t.value.anyValue)}`:function(t){return t.replace(/([,+"\\<>;])/g,"\\$1").replace(/^([ #])/,"\\$1").replace(/([ ]$)/,"\\$1").replace(/([\r\n\t])/,ew)}(t.value.toString())}`)).join("+"))).join(", ")}toJSON(){var t;const e=[];for(const r of this.asn){const i={};for(const e of r){const r=this.getName(e.type)||e.type;null!==(t=i[r])&&void 0!==t||(i[r]=[]),i[r].push(e.value.anyValue?`#${vc.ep.ToHex(e.value.anyValue)}`:e.value.toString())}e.push(i)}return e}fromString(t){const e=new Ou,r=/(\d\.[\d.]*\d|[A-Za-z]+)=((?:"")|(?:".*?[^\\]")|(?:[^,+].*?(?:[^\\][,+]))|(?:))([,+])?/g;let i=null,n=",";for(;i=r.exec(`${t},`);){let[,t,r]=i;const s=r[r.length-1];","!==s&&"+"!==s||(r=r.slice(0,r.length-1),i[3]=s);const o=i[3];if(/[\d.]+/.test(t)||(t=this.getName(t)||""),!t)throw new Error(`Cannot get OID for name type '${t}'`);const a=new Ru({type:t});if("#"===r.charAt(0))a.value.anyValue=vc.ep.FromHex(r.slice(1));else{const e=/"(.*?[^\\])?"/.exec(r);e&&(r=e[1]),r=r.replace(/\\0a/gi,"\n").replace(/\\0d/gi,"\r").replace(/\\0g/gi,"\t").replace(/\\(.)/g,"$1"),t===this.getName("E")||t===this.getName("DC")?a.value.ia5String=r:rw.isASCII(r)?a.value.printableString=r:a.value.utf8String=r}"+"===n?e[e.length-1].push(a):e.push(new ku([a])),n=o}return e}fromJSON(t){const e=new Ou;for(const r of t){const t=new ku;for(const e in r){let i=e;if(/[\d.]+/.test(e)||(i=this.getName(e)||""),!i)throw new Error(`Cannot get OID for name type '${e}'`);const n=r[e];for(const e of n){const r=new Ru({type:i});if("object"==typeof e)for(const t in e)switch(t){case"ia5String":r.value.ia5String=e[t];break;case"utf8String":r.value.utf8String=e[t];break;case"universalString":r.value.universalString=e[t];break;case"bmpString":r.value.bmpString=e[t];break;case"printableString":r.value.printableString=e[t]}else"#"===e[0]?r.value.anyValue=vc.ep.FromHex(e.slice(1)):i===this.getName("E")||i===this.getName("DC")?r.value.ia5String=e:r.value.printableString=e;t.push(r)}}e.push(t)}return e}toArrayBuffer(){return Au.serialize(this.asn)}async getThumbprint(...t){var e;let r,i="SHA-1";return t.length>=1&&!(null===(e=t[0])||void 0===e?void 0:e.subtle)?(i=t[0]||i,r=t[1]||Xm.get()):r=t[0]||Xm.get(),await r.subtle.digest(i,this.toArrayBuffer())}}const iw="Cannot initialize GeneralName from ASN.1 data.",nw=`${iw} Unsupported string format in use.`,sw=`${iw} Value doesn't match to GUID regular expression.`,ow=/^([0-9a-f]{8})-?([0-9a-f]{4})-?([0-9a-f]{4})-?([0-9a-f]{4})-?([0-9a-f]{12})$/i,aw="1.3.6.1.4.1.311.25.1",cw="1.3.6.1.4.1.311.20.2.3",lw="dns",hw="dn",uw="email",pw="ip",dw="url",fw="guid",gw="upn",yw="id";class mw extends Qm{constructor(...t){let e;if(2===t.length)switch(t[0]){case hw:{const r=new rw(t[1]).toArrayBuffer(),i=Au.parse(r,Ou);e=new Lu({directoryName:i});break}case lw:e=new Lu({dNSName:t[1]});break;case uw:e=new Lu({rfc822Name:t[1]});break;case fw:{const r=new RegExp(ow,"i").exec(t[1]);if(!r)throw new Error("Cannot parse GUID value. Value doesn't match to regular expression");const i=r.slice(1).map(((t,e)=>e<3?vc.ep.ToHex(new Uint8Array(vc.ep.FromHex(t)).reverse()):t)).join("");e=new Lu({otherName:new Pu({typeId:aw,value:Au.serialize(new Mh(vc.ep.FromHex(i)))})});break}case pw:e=new Lu({iPAddress:t[1]});break;case yw:e=new Lu({registeredID:t[1]});break;case gw:e=new Lu({otherName:new Pu({typeId:cw,value:Au.serialize(Yh.toASN(t[1]))})});break;case dw:e=new Lu({uniformResourceIdentifier:t[1]});break;default:throw new Error("Cannot create GeneralName. Unsupported type of the name")}else e=vc.vJ.isBufferSource(t[0])?Au.parse(t[0],Lu):t[0];super(e)}onInit(t){if(null!=t.dNSName)this.type=lw,this.value=t.dNSName;else if(null!=t.rfc822Name)this.type=uw,this.value=t.rfc822Name;else if(null!=t.iPAddress)this.type=pw,this.value=t.iPAddress;else if(null!=t.uniformResourceIdentifier)this.type=dw,this.value=t.uniformResourceIdentifier;else if(null!=t.registeredID)this.type=yw,this.value=t.registeredID;else if(null!=t.directoryName)this.type=hw,this.value=new rw(t.directoryName).toString();else{if(null==t.otherName)throw new Error(nw);if(t.otherName.typeId===aw){this.type=fw;const e=Au.parse(t.otherName.value,Mh),r=new RegExp(ow,"i").exec(vc.ep.ToHex(e));if(!r)throw new Error(sw);this.value=r.slice(1).map(((t,e)=>e<3?vc.ep.ToHex(new Uint8Array(vc.ep.FromHex(t)).reverse()):t)).join("-")}else{if(t.otherName.typeId!==cw)throw new Error(nw);this.type=gw,this.value=Au.parse(t.otherName.value,Cu).toString()}}}toJSON(){return{type:this.type,value:this.value}}toTextObject(){let t;switch(this.type){case hw:case lw:case fw:case pw:case yw:case gw:case dw:t=this.type.toUpperCase();break;case uw:t="Email";break;default:throw new Error("Unsupported GeneralName type")}let e=this.value;return this.type===yw&&(e=zm.toString(e)),new Gm(t,void 0,e)}}class ww extends Qm{constructor(t){let e;if(t instanceof Qu)e=t;else if(Array.isArray(t)){const r=[];for(const e of t)if(e instanceof Lu)r.push(e);else{const t=Au.parse(new mw(e.type,e.value).rawData,Lu);r.push(t)}e=new Qu(r)}else{if(!vc.vJ.isBufferSource(t))throw new Error("Cannot initialize GeneralNames. Incorrect incoming arguments");e=Au.parse(t,Qu)}super(e)}onInit(t){const e=[];for(const r of t){let t=null;try{t=new mw(r)}catch{continue}e.push(t)}this.items=e}toJSON(){return this.items.map((t=>t.toJSON()))}toTextObject(){const t=super.toTextObjectEmpty();for(const e of this.items){const r=e.toTextObject();let i=t[r[Gm.NAME]];Array.isArray(i)||(i=[],t[r[Gm.NAME]]=i),i.push(r)}return t}}ww.NAME="GeneralNames";const bw="-{5}BEGIN ([^\\n]+(?=-{5}))-{5}\\n(?:((?:[^:\\n]+: (?:[^\\n]+\\n(?: +[^\\n]+\\n)*))+))?\\n?((?:[a-zA-Z0-9=+/]+\\n)+)-{5}END \\1-{5}";class Aw{static isPem(t){return"string"==typeof t&&new RegExp(bw,"g").test(t)}static decodeWithHeaders(t){t=t.replace(/\r/g,"");const e=new RegExp(bw,"g"),r=[];let i=null;for(;i=e.exec(t);){const t=i[3].replace(new RegExp("[\\n]+","g"),""),e={type:i[1],headers:[],rawData:vc.ep.FromBase64(t)},n=i[2];if(n){const t=n.split(new RegExp("\\n","g"));let r=null;for(const i of t){const[t,n]=i.split(/:(.*)/);if(void 0===n){if(!r)throw new Error("Cannot parse PEM string. Incorrect header value");r.value+=t.trim()}else r&&e.headers.push(r),r={key:t,value:n.trim()}}r&&e.headers.push(r)}r.push(e)}return r}static decode(t){return this.decodeWithHeaders(t).map((t=>t.rawData))}static decodeFirst(t){const e=this.decode(t);if(!e.length)throw new RangeError("PEM string doesn't contain any objects");return e[0]}static encode(t,e){if(Array.isArray(t)){const r=new Array;return e?t.forEach((t=>{if(!vc.vJ.isBufferSource(t))throw new TypeError("Cannot encode array of BufferSource in PEM format. Not all items of the array are BufferSource");r.push(this.encodeStruct({type:e,rawData:vc.vJ.toArrayBuffer(t)}))})):t.forEach((t=>{if(!("type"in t))throw new TypeError("Cannot encode array of PemStruct in PEM format. Not all items of the array are PemStrut");r.push(this.encodeStruct(t))})),r.join("\n")}if(!e)throw new Error("Required argument 'tag' is missed");return this.encodeStruct({type:e,rawData:vc.vJ.toArrayBuffer(t)})}static encodeStruct(t){var e;const r=t.type.toLocaleUpperCase(),i=[];if(i.push(`-----BEGIN ${r}-----`),null===(e=t.headers)||void 0===e?void 0:e.length){for(const e of t.headers)i.push(`${e.key}: ${e.value}`);i.push("")}const n=vc.ep.ToBase64(t.rawData);let s,o=0;const a=Array();for(;o<n.length&&(n.length-o<64?s=n.substring(o):(s=n.substring(o,o+64),o+=64),0!==s.length)&&(a.push(s),!(s.length<64)););return i.push(...a),i.push(`-----END ${r}-----`),i.join("\n")}}Aw.CertificateTag="CERTIFICATE",Aw.CrlTag="CRL",Aw.CertificateRequestTag="CERTIFICATE REQUEST",Aw.PublicKeyTag="PUBLIC KEY",Aw.PrivateKeyTag="PRIVATE KEY";class vw extends Qm{static isAsnEncoded(t){return vc.vJ.isBufferSource(t)||"string"==typeof t}static toArrayBuffer(t){if("string"==typeof t){if(Aw.isPem(t))return Aw.decode(t)[0];if(vc.ep.isHex(t))return vc.ep.FromHex(t);if(vc.ep.isBase64(t))return vc.ep.FromBase64(t);if(vc.ep.isBase64Url(t))return vc.ep.FromBase64Url(t);throw new TypeError("Unsupported format of 'raw' argument. Must be one of DER, PEM, HEX, Base64, or Base4Url")}{const e=vc.ep.ToBinary(t);return Aw.isPem(e)?Aw.decode(e)[0]:vc.ep.isHex(e)?vc.ep.FromHex(e):vc.ep.isBase64(e)?vc.ep.FromBase64(e):vc.ep.isBase64Url(e)?vc.ep.FromBase64Url(e):vc.vJ.toArrayBuffer(t)}}constructor(...t){vw.isAsnEncoded(t[0])?super(vw.toArrayBuffer(t[0]),t[1]):super(t[0])}toString(t="pem"){return"pem"===t?Aw.encode(this.rawData,this.tag):super.toString(t)}}class _w extends vw{constructor(t){vw.isAsnEncoded(t)?super(t,id):super(t),this.tag=Aw.PublicKeyTag}async export(...t){let e,r=["verify"],i={hash:"SHA-256",...this.algorithm};return t.length>1?(i=t[0]||i,r=t[1]||r,e=t[2]||Xm.get()):e=t[0]||Xm.get(),e.subtle.importKey("spki",this.rawData,i,!0,r)}onInit(t){const e=sy.resolve(lm),r=this.algorithm=e.toWebAlgorithm(t.algorithm);switch(t.algorithm.algorithm){case sg:{const e=Au.parse(t.subjectPublicKey,Dg),i=vc.vJ.toUint8Array(e.modulus);r.publicExponent=vc.vJ.toUint8Array(e.publicExponent),r.modulusLength=(i[0]?i:i.slice(1)).byteLength<<3;break}}}async getThumbprint(...t){var e;let r,i="SHA-1";return t.length>=1&&!(null===(e=t[0])||void 0===e?void 0:e.subtle)?(i=t[0]||i,r=t[1]||Xm.get()):r=t[0]||Xm.get(),await r.subtle.digest(i,this.rawData)}async getKeyIdentifier(t){t||(t=Xm.get());const e=Au.parse(this.rawData,id);return await t.subtle.digest("SHA-1",e.subjectPublicKey)}toTextObject(){const t=this.toTextObjectEmpty(),e=Au.parse(this.rawData,id);return t.Algorithm=qm.serializeAlgorithm(e.algorithm),e.algorithm.algorithm===jf?t["EC Point"]=e.subjectPublicKey:t["Raw Data"]=e.subjectPublicKey,t}}class Ew{static register(t,e){this.items.set(t,e)}static create(t){const e=new Km(t),r=this.items.get(e.type);return r?new r(t):e}}Ew.items=new Map;const Sw="crypto.signatureFormatter";class Tw extends vw{constructor(t){vw.isAsnEncoded(t)?super(t,pd):super(t),this.tag=Aw.CertificateTag}onInit(t){const e=t.tbsCertificate;this.tbs=Au.serialize(e),this.serialNumber=vc.ep.ToHex(e.serialNumber),this.subjectName=new rw(e.subject),this.subject=new rw(e.subject).toString(),this.issuerName=new rw(e.issuer),this.issuer=this.issuerName.toString();const r=sy.resolve(lm);this.signatureAlgorithm=r.toWebAlgorithm(t.signatureAlgorithm),this.signature=t.signatureValue;const i=e.validity.notBefore.utcTime||e.validity.notBefore.generalTime;if(!i)throw new Error("Cannot get 'notBefore' value");this.notBefore=i;const n=e.validity.notAfter.utcTime||e.validity.notAfter.generalTime;if(!n)throw new Error("Cannot get 'notAfter' value");this.notAfter=n,this.extensions=[],e.extensions&&(this.extensions=e.extensions.map((t=>Ew.create(Au.serialize(t))))),this.publicKey=new _w(e.subjectPublicKeyInfo)}getExtension(t){for(const e of this.extensions)if("string"==typeof t){if(e.type===t)return e}else if(e instanceof t)return e;return null}getExtensions(t){return this.extensions.filter((e=>"string"==typeof t?e.type===t:e instanceof t))}async verify(t={},e=Xm.get()){let r,i;const n=t.publicKey;try{if(n)if("publicKey"in n)r={...n.publicKey.algorithm,...this.signatureAlgorithm},i=await n.publicKey.export(r,["verify"]);else if(n instanceof _w)r={...n.algorithm,...this.signatureAlgorithm},i=await n.export(r,["verify"]);else if(vc.vJ.isBufferSource(n)){const t=new _w(n);r={...t.algorithm,...this.signatureAlgorithm},i=await t.export(r,["verify"])}else r={...n.algorithm,...this.signatureAlgorithm},i=n;else r={...this.publicKey.algorithm,...this.signatureAlgorithm},i=await this.publicKey.export(r,["verify"],e)}catch(t){return!1}const s=sy.resolveAll(Sw).reverse();let o=null;for(const t of s)if(o=t.toWebSignature(r,this.signature),o)break;if(!o)throw Error("Cannot convert ASN.1 signature value to WebCrypto format");const a=await e.subtle.verify(this.signatureAlgorithm,i,o,this.tbs);if(t.signatureOnly)return a;{const e=(t.date||new Date).getTime();return a&&this.notBefore.getTime()<e&&e<this.notAfter.getTime()}}async getThumbprint(...t){let e,r="SHA-1";return t[0]&&(t[0].subtle?e=t[0]:(r=t[0]||r,e=t[1])),null!=e||(e=Xm.get()),await e.subtle.digest(r,this.rawData)}async isSelfSigned(t=Xm.get()){return this.subject===this.issuer&&await this.verify({signatureOnly:!0},t)}toTextObject(){const t=this.toTextObjectEmpty(),e=Au.parse(this.rawData,pd),r=e.tbsCertificate,i=new Gm("",{Version:`${ld[r.version]} (${r.version})`,"Serial Number":r.serialNumber,"Signature Algorithm":qm.serializeAlgorithm(r.signature),Issuer:this.issuer,Validity:new Gm("",{"Not Before":r.validity.notBefore.getTime(),"Not After":r.validity.notAfter.getTime()}),Subject:this.subject,"Subject Public Key Info":this.publicKey});if(r.issuerUniqueID&&(i["Issuer Unique ID"]=r.issuerUniqueID),r.subjectUniqueID&&(i["Subject Unique ID"]=r.subjectUniqueID),this.extensions.length){const t=new Gm("");for(const e of this.extensions){const r=e.toTextObject();t[r[Gm.NAME]]=r}i.Extensions=t}return t.Data=i,t.Signature=new Gm("",{Algorithm:qm.serializeAlgorithm(e.signatureAlgorithm),"":e.signatureValue}),t}}Tw.NAME="Certificate";class xw extends Km{constructor(...t){if(vc.vJ.isBufferSource(t[0]))super(t[0]);else if("string"==typeof t[0]){const e=new Vu({keyIdentifier:new Wu(vc.ep.FromHex(t[0]))});super(ju,t[1],Au.serialize(e))}else{const e=t[0],r=e.name instanceof ww?Au.parse(e.name.rawData,Qu):e.name,i=new Vu({authorityCertIssuer:r,authorityCertSerialNumber:vc.ep.FromHex(e.serialNumber)});super(ju,t[1],Au.serialize(i))}}static async create(t,e=!1,r=Xm.get()){if(t instanceof Tw||Jm.isCryptoKey(t)){const i=t instanceof Tw?await t.publicKey.export(r):t,n=await r.subtle.exportKey("spki",i),s=new _w(n),o=await s.getKeyIdentifier(r);return new xw(vc.ep.ToHex(o),e)}return new xw(t,e)}onInit(t){super.onInit(t);const e=Au.parse(t.extnValue,Vu);e.keyIdentifier&&(this.keyId=vc.ep.ToHex(e.keyIdentifier)),e.authorityCertIssuer&&e.authorityCertSerialNumber&&(this.certId={name:e.authorityCertIssuer,serialNumber:vc.ep.ToHex(e.authorityCertSerialNumber)})}toTextObject(){const t=this.toTextObjectWithoutValue(),e=Au.parse(this.value,Vu);return e.authorityCertIssuer&&(t["Authority Issuer"]=new ww(e.authorityCertIssuer).toTextObject()),e.authorityCertSerialNumber&&(t["Authority Serial Number"]=e.authorityCertSerialNumber),e.keyIdentifier&&(t[""]=e.keyIdentifier),t}}xw.NAME="Authority Key Identifier";class Cw extends Km{constructor(...t){if(vc.vJ.isBufferSource(t[0])){super(t[0]);const e=Au.parse(this.value,zu);this.ca=e.cA,this.pathLength=e.pathLenConstraint}else{const e=new zu({cA:t[0],pathLenConstraint:t[1]});super(Gu,t[2],Au.serialize(e)),this.ca=t[0],this.pathLength=t[1]}}toTextObject(){const t=this.toTextObjectWithoutValue();return this.ca&&(t.CA=this.ca),void 0!==this.pathLength&&(t["Path Length"]=this.pathLength),t}}var Iw,Rw;Cw.NAME="Basic Constraints",function(t){t.serverAuth="1.3.6.1.5.5.7.3.1",t.clientAuth="1.3.6.1.5.5.7.3.2",t.codeSigning="1.3.6.1.5.5.7.3.3",t.emailProtection="1.3.6.1.5.5.7.3.4",t.timeStamping="1.3.6.1.5.5.7.3.8",t.ocspSigning="1.3.6.1.5.5.7.3.9"}(Iw||(Iw={}));class kw extends Km{constructor(...t){if(vc.vJ.isBufferSource(t[0])){super(t[0]);const e=Au.parse(this.value,Ap);this.usages=e.map((t=>t))}else{const e=new Ap(t[0]);super(bp,t[1],Au.serialize(e)),this.usages=t[0]}}toTextObject(){const t=this.toTextObjectWithoutValue();return t[""]=this.usages.map((t=>zm.toString(t))).join(", "),t}}kw.NAME="Extended Key Usages",function(t){t[t.digitalSignature=1]="digitalSignature",t[t.nonRepudiation=2]="nonRepudiation",t[t.keyEncipherment=4]="keyEncipherment",t[t.dataEncipherment=8]="dataEncipherment",t[t.keyAgreement=16]="keyAgreement",t[t.keyCertSign=32]="keyCertSign",t[t.cRLSign=64]="cRLSign",t[t.encipherOnly=128]="encipherOnly",t[t.decipherOnly=256]="decipherOnly"}(Rw||(Rw={}));class Nw extends Km{constructor(...t){if(vc.vJ.isBufferSource(t[0])){super(t[0]);const e=Au.parse(this.value,Pp);this.usages=e.toNumber()}else{const e=new Pp(t[0]);super(Np,t[1],Au.serialize(e)),this.usages=t[0]}}toTextObject(){const t=this.toTextObjectWithoutValue(),e=Au.parse(this.value,Pp);return t[""]=e.toJSON().join(", "),t}}Nw.NAME="Key Usages";class Ow extends Km{constructor(...t){if(vc.vJ.isBufferSource(t[0])){super(t[0]);const e=Au.parse(this.value,Yp);this.keyId=vc.ep.ToHex(e)}else{const e="string"==typeof t[0]?vc.ep.FromHex(t[0]):t[0],r=new Yp(e);super(Kp,t[1],Au.serialize(r)),this.keyId=vc.ep.ToHex(e)}}static async create(t,e=!1,r=Xm.get()){let i;i=t instanceof _w?t.rawData:"publicKey"in t?t.publicKey.rawData:vc.vJ.isBufferSource(t)?t:await r.subtle.exportKey("spki",t);const n=new _w(i),s=await n.getKeyIdentifier(r);return new Ow(vc.ep.ToHex(s),e)}toTextObject(){const t=this.toTextObjectWithoutValue(),e=Au.parse(this.value,Yp);return t[""]=e,t}}Ow.NAME="Subject Key Identifier";class Bw extends Km{constructor(...t){vc.vJ.isBufferSource(t[0])?super(t[0]):super(Vp,t[1],new ww(t[0]||[]).rawData)}onInit(t){super.onInit(t);const e=Au.parse(t.extnValue,Gp);this.names=new ww(e)}toTextObject(){const t=this.toTextObjectWithoutValue(),e=this.names.toTextObject();for(const r in e)t[r]=e[r];return t}}Bw.NAME="Subject Alternative Name";class Pw extends Km{constructor(...t){var e;if(vc.vJ.isBufferSource(t[0])){super(t[0]);const e=Au.parse(this.value,np);this.policies=e.map((t=>t.policyIdentifier))}else{const r=t[0],i=null!==(e=t[1])&&void 0!==e&&e,n=new np(r.map((t=>new ip({policyIdentifier:t}))));super(Xu,i,Au.serialize(n)),this.policies=r}}toTextObject(){const t=this.toTextObjectWithoutValue();return t.Policy=this.policies.map((t=>new Gm("",{},zm.toString(t)))),t}}Pw.NAME="Certificate Policies",Ew.register(Xu,Pw);class Dw extends Qm{constructor(...t){let e;if(vc.vJ.isBufferSource(t[0]))e=vc.vJ.toArrayBuffer(t[0]);else{const r=t[0],i=Array.isArray(t[1])?t[1].map((t=>vc.vJ.toArrayBuffer(t))):[];e=Au.serialize(new zp({type:r,values:i}))}super(e,zp)}onInit(t){this.type=t.type,this.values=t.values}toTextObject(){const t=this.toTextObjectWithoutValue();return t.Value=this.values.map((t=>new Gm("",{"":t}))),t}toTextObjectWithoutValue(){const t=this.toTextObjectEmpty();return t[Gm.NAME]===Dw.NAME&&(t[Gm.NAME]=zm.toString(this.type)),t}}Dw.NAME="Attribute";class Lw extends Dw{constructor(...t){var e;if(vc.vJ.isBufferSource(t[0]))super(t[0]);else{const e=new Zy({printableString:t[0]});super(By,[Au.serialize(e)])}null!==(e=this.password)&&void 0!==e||(this.password="")}onInit(t){if(super.onInit(t),this.values[0]){const t=Au.parse(this.values[0],Zy);this.password=t.toString()}}toTextObject(){const t=this.toTextObjectWithoutValue();return t[Gm.VALUE]=this.password,t}}Lw.NAME="Challenge Password";class Uw extends Dw{constructor(...t){var e;if(vc.vJ.isBufferSource(t[0]))super(t[0]);else{const e=t[0],r=new cd;for(const t of e)r.push(Au.parse(t.rawData,ad));super(Py,[Au.serialize(r)])}null!==(e=this.items)&&void 0!==e||(this.items=[])}onInit(t){if(super.onInit(t),this.values[0]){const t=Au.parse(this.values[0],cd);this.items=t.map((t=>Ew.create(Au.serialize(t))))}}toTextObject(){const t=this.toTextObjectWithoutValue(),e=this.items.map((t=>t.toTextObject()));for(const r of e)t[r[Gm.NAME]]=r;return t}}Uw.NAME="Extensions";class Mw{static register(t,e){this.items.set(t,e)}static create(t){const e=new Dw(t),r=this.items.get(e.type);return r?new r(t):e}}Mw.items=new Map;let Fw=class{toAsnAlgorithm(t){if("rsassa-pkcs1-v1_5"===t.name.toLowerCase()){if(!t.hash)return new rd({algorithm:sg,parameters:null});switch(t.hash.name.toLowerCase()){case"sha-1":return new rd({algorithm:ug,parameters:null});case"sha-256":return new rd({algorithm:dg,parameters:null});case"sha-384":return new rd({algorithm:fg,parameters:null});case"sha-512":return new rd({algorithm:gg,parameters:null})}}return null}toWebAlgorithm(t){switch(t.algorithm){case sg:return{name:"RSASSA-PKCS1-v1_5"};case ug:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-1"}};case dg:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}};case fg:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-384"}};case gg:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-512"}}}return null}};Fw=Lg([oy()],Fw),sy.registerSingleton(cm,Fw);class Hw{addPadding(t,e){const r=vc.vJ.toUint8Array(e),i=new Uint8Array(t);return i.set(r,t-r.length),i}removePadding(t,e=!1){let r=vc.vJ.toUint8Array(t);for(let t=0;t<r.length;t++)if(r[t]){r=r.slice(t);break}if(e&&r[0]>127){const t=new Uint8Array(r.length+1);return t.set(r,1),t.buffer}return r.buffer}toAsnSignature(t,e){if("ECDSA"===t.name){const r=t.namedCurve,i=Hw.namedCurveSize.get(r)||Hw.defaultNamedCurveSize,n=new ig,s=vc.vJ.toUint8Array(e);return n.r=this.removePadding(s.slice(0,i),!0),n.s=this.removePadding(s.slice(i,i+i),!0),Au.serialize(n)}return null}toWebSignature(t,e){if("ECDSA"===t.name){const r=Au.parse(e,ig),i=t.namedCurve,n=Hw.namedCurveSize.get(i)||Hw.defaultNamedCurveSize,s=this.addPadding(n,this.removePadding(r.r)),o=this.addPadding(n,this.removePadding(r.s));return(0,vc.$e)(s,o)}return null}}Hw.namedCurveSize=new Map,Hw.defaultNamedCurveSize=32;const jw="1.3.101.110",Ww="1.3.101.111",Vw="1.3.101.112",Gw="1.3.101.113";let zw=class{toAsnAlgorithm(t){let e=null;switch(t.name.toLowerCase()){case"eddsa":switch(t.namedCurve.toLowerCase()){case"ed25519":e=Vw;break;case"ed448":e=Gw}break;case"ecdh-es":switch(t.namedCurve.toLowerCase()){case"x25519":e=jw;break;case"x448":e=Ww}}return e?new rd({algorithm:e}):null}toWebAlgorithm(t){switch(t.algorithm){case Vw:return{name:"EdDSA",namedCurve:"Ed25519"};case Gw:return{name:"EdDSA",namedCurve:"Ed448"};case jw:return{name:"ECDH-ES",namedCurve:"X25519"};case Ww:return{name:"ECDH-ES",namedCurve:"X448"}}return null}};zw=Lg([oy()],zw),sy.registerSingleton(cm,zw);var qw;(class extends vw{constructor(t){vw.isAsnEncoded(t)?super(t,am):super(t),this.tag=Aw.CertificateRequestTag}onInit(t){this.tbs=Au.serialize(t.certificationRequestInfo),this.publicKey=new _w(t.certificationRequestInfo.subjectPKInfo);const e=sy.resolve(lm);this.signatureAlgorithm=e.toWebAlgorithm(t.signatureAlgorithm),this.signature=t.signature,this.attributes=t.certificationRequestInfo.attributes.map((t=>Mw.create(Au.serialize(t))));const r=this.getAttribute(Py);this.extensions=[],r instanceof Uw&&(this.extensions=r.items),this.subjectName=new rw(t.certificationRequestInfo.subject),this.subject=this.subjectName.toString()}getAttribute(t){for(const e of this.attributes)if(e.type===t)return e;return null}getAttributes(t){return this.attributes.filter((e=>e.type===t))}getExtension(t){for(const e of this.extensions)if(e.type===t)return e;return null}getExtensions(t){return this.extensions.filter((e=>e.type===t))}async verify(t=Xm.get()){const e={...this.publicKey.algorithm,...this.signatureAlgorithm},r=await this.publicKey.export(e,["verify"],t),i=sy.resolveAll(Sw).reverse();let n=null;for(const t of i)if(n=t.toWebSignature(e,this.signature),n)break;if(!n)throw Error("Cannot convert WebCrypto signature value to ASN.1 format");return await t.subtle.verify(this.signatureAlgorithm,r,n,this.tbs)}toTextObject(){const t=this.toTextObjectEmpty(),e=Au.parse(this.rawData,am),r=e.certificationRequestInfo,i=new Gm("",{Version:`${ld[r.version]} (${r.version})`,Subject:this.subject,"Subject Public Key Info":this.publicKey});if(this.attributes.length){const t=new Gm("");for(const e of this.attributes){const r=e.toTextObject();t[r[Gm.NAME]]=r}i.Attributes=t}return t.Data=i,t.Signature=new Gm("",{Algorithm:qm.serializeAlgorithm(e.signatureAlgorithm),"":e.signature}),t}}).NAME="PKCS#10 Certificate Request",function(t){t[t.unspecified=0]="unspecified",t[t.keyCompromise=1]="keyCompromise",t[t.cACompromise=2]="cACompromise",t[t.affiliationChanged=3]="affiliationChanged",t[t.superseded=4]="superseded",t[t.cessationOfOperation=5]="cessationOfOperation",t[t.certificateHold=6]="certificateHold",t[t.removeFromCRL=8]="removeFromCRL",t[t.privilegeWithdrawn=9]="privilegeWithdrawn",t[t.aACompromise=10]="aACompromise"}(qw||(qw={})),Ew.register(Gu,Cw),Ew.register(bp,kw),Ew.register(Np,Nw),Ew.register(Kp,Ow),Ew.register(ju,xw),Ew.register(Vp,Bw),Mw.register(By,Lw),Mw.register(Py,Uw),sy.registerSingleton(Sw,class{toAsnSignature(t,e){return vc.vJ.toArrayBuffer(e)}toWebSignature(t,e){return vc.vJ.toArrayBuffer(e)}}),sy.registerSingleton(Sw,Hw),Hw.namedCurveSize.set("P-256",32),Hw.namedCurveSize.set("K-256",32),Hw.namedCurveSize.set("P-384",48),Hw.namedCurveSize.set("P-521",66);const Qw=/-{5}(BEGIN|END) .*-{5}/gm,Kw="pages/pages.jsonl",Yw="pages/extraPages.jsonl",Jw="datapackage.json",Xw="datapackage-digest.json",Zw="webarchive.yaml";class $w{store;file;isRoot;waczname;constructor(t,e,r=!0){this.file=e,this.waczname=e.waczname||"",this.store=t,this.isRoot=r}async loadFileFromWACZ(t,e){return this.store.loadFileFromWACZ?await this.store.loadFileFromWACZ(this.file,t,e):await this.file.loadFile(t,e)}async load(){let t,e=null;return this.file.containsFile(Xw)&&(e=await this.loadDigestData(Xw)),this.file.containsFile(Jw)?t=await this.loadPackage(Jw,e):this.file.containsFile(Zw)&&(t=await this.loadOldPackageYAML(Zw)),t||{}}async loadTextFileFromWACZ(t,e=""){const{reader:r,hasher:i}=await this.loadFileFromWACZ(t,{computeHash:!!e});if(!r)return"";const n=(new TextDecoder).decode(await r.readFully());return e&&i&&await this.store.addVerifyData(this.waczname,t,e,i.getHash()),n}async loadDigestData(t){try{const e=JSON.parse(await this.loadTextFileFromWACZ(t));let r;e.path===Jw&&e.hash&&(r=e.hash);const i=this.store,n=this.isRoot?"":this.waczname+":";if(!e.signedData||e.signedData.hash!==r)return void await i.addVerifyData(n,"signature","");await i.addVerifyData(n,"datapackageHash",r);const s=await async function({hash:t,signature:e,publicKey:r,domain:i,domainCert:n,created:s,software:o}){let a;const c=[],l=(0,Ac.toByteArray)(e);let h;if(n&&i&&!r){const t=n.split("\n\n"),e=(0,Ac.toByteArray)(t[0].replace(Qw,"").replace(/\s/gm,"")),r=u(await crypto.subtle.digest("SHA-256",e));c.push({id:"certFingerprint",expected:r,matched:null});const i=new Tw(e);h=await i.publicKey.export();const s=(0,Ac.fromByteArray)(new Uint8Array(i.publicKey.rawData));c.push({id:"publicKey",expected:s,matched:null}),i.subject&&i.subject.startsWith("CN=")&&(a=i.subject.substring(3))}else{const t={name:"ECDSA",namedCurve:"P-384"};c.push({id:"publicKey",expected:r,matched:null}),h=await crypto.subtle.importKey("spki",(0,Ac.toByteArray)(r),t,!0,["verify"])}const p=new TextEncoder,d=await crypto.subtle.verify({name:"ECDSA",hash:"SHA-256"},h,l,p.encode(t));return c.push({id:"signature",expected:!0,matched:d}),s&&c.push({id:"created",expected:s,matched:null}),o&&c.push({id:"software",expected:o,matched:null}),i&&c.push({id:"domain",expected:i,matched:a}),c}(e.signedData);return await i.addVerifyDataList(n,s),r}catch(t){console.warn(t)}}async loadPackage(t,e){const r=await this.loadTextFileFromWACZ(t,e),i=JSON.parse(r);switch(this.isRoot&&void 0!==i.config&&this.store.initConfig(i.config),i.profile){case"data-package":case"wacz-package":case void 0:case null:return await this.loadLeafWACZPackage(i);case"multi-wacz-package":return await this.loadMultiWACZPackage(i);default:throw new Error(`Unknown package profile: ${i.profile}`)}}async loadMultiWACZPackage(t){return this.file.markAsMultiWACZ(),await this.store.loadWACZFiles(t,this.file),t}async loadLeafWACZPackage(t){const e=t.metadata||{};let r=null;for(const e of t.resources)e.path===Kw?(r=e.hash,await this.store.addVerifyData(this.waczname,e.path,e.hash)):(e.path.endsWith(".idx")||e.path.endsWith(".cdx"))&&await this.store.addVerifyData(this.waczname,e.path,e.hash);return this.file.containsFile(Kw)&&(await this.loadPages(Kw,r)).hasText&&(this.store.textIndex=e.textIndex=Kw),this.file.containsFile(Yw)&&(this.store.textIndex=e.textIndex=Yw),e}async loadOldPackageYAML(t){const e=await this.loadTextFileFromWACZ(t),r=bc.load(e),i={desc:r.desc,title:r.title};r.textIndex&&(i.textIndex=r.textIndex,r.config||(r.config={}),r.config.textIndex=r.textIndex),this.isRoot&&void 0!==r.config&&this.store.initConfig(r.config),i.title||(i.title=this.store.config.sourceName);const n=r.pages||[];n?.length&&await this.store.addPages(n);const s=r.pageLists||[];return s?.length&&await this.store.addCuratedPageLists(s,"pages","show"),i}async loadPages(t=Kw,e=null){const{reader:r,hasher:i}=await this.loadFileFromWACZ(t,{unzip:!0,computeHash:!0});if(!r)return[];let n=null,s=[];for await(const t of r.iterLines()){const e=JSON.parse(t);this.waczname&&(e.wacz=this.waczname),n?(s.push(e),500===s.length&&(await this.store.addPages(s),s=[])):n=e}return s.length&&await this.store.addPages(s),i&&e&&await this.store.addVerifyData(this.waczname,t,e,i.getHash()),n}}class tb{loader;loadId=null;loadUrl;constructor(t,e,r=null){this.loader=t,this.loadId=r,this.loadUrl=e.loadUrl}async load(t){const e=this.loader;t.fullConfig&&e.arrayBuffer&&e.arrayBuffer.byteLength<=s&&(t.fullConfig.extra||(t.fullConfig.extra={}),t.fullConfig.extra.arrayBuffer=e.arrayBuffer);const r=this.loadUrl;return await t.addNewWACZ({name:"default",path:r,loader:e})}}class eb{loader;loadId=null;config;constructor(t,e,r=null){this.config=e,this.loadId=r,this.loader=t}async load(t,e=null,r=0){const i=new _o({loader:this.loader});await i.init();const n=i.zipreader,s=new $w(t,i),o=await s.load();let a=0;const c=(t,i,n)=>{n+=a,e&&r&&e(Math.round(100*n/r),null,n,r)};for(const e of i.iterContainedFiles()){const r=n.getCompressedSize(e);(e.endsWith(".warc.gz")||e.endsWith(".warc"))&&await this.loadWARC(t,n,e,c,r),a+=r}return o||{}}async loadWARC(t,e,r,i,n){const{reader:s}=await e.loadFile(r,{unzip:!0});if(!s)throw new Error("no WARC found");const o=new cs(s,null,r);return o.detectPages=!1,await o.load(t,i,n)}}class rb{response;constructor(t){this.response=t}async load(t){return await t.loadFromJSON(this.response)}}class ib{prefix;proxyPathOnly;isLive;archivePrefix;cloneResponse;allowBody;hostProxy;hostProxyOnly;messageOnProxyErrors;constructor(t,{cloneResponse:e=!1,allowBody:r=!1,hostProxyOnly:i=!1}={}){if(t=t||{},this.prefix=t.prefix||"",this.proxyPathOnly=t.proxyPathOnly||!1,this.isLive=void 0===t.isLive||t.isLive,this.archivePrefix=t.archivePrefix||"",this.cloneResponse=e,this.allowBody=r||this.isLive,this.messageOnProxyErrors=t.messageOnProxyErrors||!1,this.hostProxy=t.hostProxy,this.hostProxy instanceof Array){const t={};for(const e of this.hostProxy)t[e.host]=e;this.hostProxy=t}this.hostProxyOnly=i}async getAllPages(){return[]}getFetchUrl(t,e,r){let i;if(this.hostProxy){i=new URL(t);const e=this.hostProxy[i.host];if(e)return r.set("X-Proxy-Host",i.host),e.prefix+(e.pathOnly?i.pathname+i.search:t)}return this.hostProxyOnly?null:this.proxyPathOnly?(i||(i=new URL(t)),this.prefix+i.pathname+i.search):this.isLive||!e.timestamp?this.prefix+t:this.prefix+this.archivePrefix+e.timestamp+"id_/"+t}async getResource(t,e){const{headers:r,credentials:i,url:n}=t.prepareProxyRequest(e,!0),s=this.getFetchUrl(n,t,r);if(!s)return null;let o=null;const a="POST"===t.method||"PUT"===t.method||"DELETE"===t.method;a&&(this.allowBody?o=await t.getBody():this.sendProxyError("post-request-attempt",n,t.method));let c=await fetch(s,{method:t.method,body:o,headers:r,credentials:i,mode:"cors",redirect:"follow"}),l=!1;a&&c.status>=400?this.sendProxyError("post-request-failed",n,t.method,c.status):429===c.status&&this.sendProxyError("rate-limited",n,t.method,c.status),c.status>400&&404!==c.status&&["","document","iframe"].includes(t.destination)&&(c=function(t,e){return An(function(t,e){return`\n <!doctype html>\n <html>\n <head>\n <script>\n window.requestURL = "${t}";\n <\/script>\n </head>\n <body style="font-family: sans-serif">\n <h2>Live page could not be loaded</h2>\n <p>Sorry, this page was could not be loaded through the archiving proxy. Check the URL and try again.</p>\n <p><code id="url" style="word-break: break-all; font-size: larger">Status Code: ${e}</code></p>\n <p id="goback" style="display: none"><a href="#" onclick="window.history.back()">Go Back</a> to the previous page.</a></p>\n\n <script>\n let isTop = true;\n try {\n if (window.parent._WB_wombat_location) {\n isTop = false;\n }\n } catch (e) {\n\n }\n if (isTop) {\n document.querySelector("#goback").style.display = "";\n\n window.parent.postMessage({\n wb_type: "live-proxy-url-error",\n url: window.requestURL,\n status: ${e},\n }, "*");\n }\n <\/script>\n </body>\n </html>\n `}(t,e),"text/html",e)}(n,c.status),l=!0);let h=null;this.cloneResponse&&(h=c.clone());const u=ln.fromResponse({url:n,response:c,date:new Date,noRW:l,isLive:this.isLive,archivePrefix:this.archivePrefix});return h&&(u.clonedResponse=h),u}async sendProxyError(t,e,r,i){if(!this.messageOnProxyErrors)return;const n=await self.clients.matchAll({type:"window"});for(const s of n)if(new URL(s.url).searchParams.get("source")===this.prefix){s.postMessage({type:t,url:e,method:r,status:i});break}}}const nb=/^([\w-]+,)*[\w-]+(:\d+)?,?\)\//;class sb extends no{config;waczfiles;waczNameForHash;ziploadercache;updating;rootSourceType;sourceLoader;externalSource;textIndex;fuzzyUrlRules;constructor(t,e,r="wacz"){super(t.dbname,t.noCache),this.config=t,this.waczfiles={},this.waczNameForHash={},this.ziploadercache={},this.updating=null,this.rootSourceType=r,this.sourceLoader=e,this.externalSource=null,this.fuzzyUrlRules=[],this.textIndex=t.metadata?.textIndex||Yw,t.extraConfig&&this.initConfig(t.extraConfig)}initConfig(t){if(void 0!==t.decodeResponses&&(this.config.decode=!!t.decodeResponses),t.hostProxy&&(this.externalSource=new ib(t,{hostProxyOnly:!0})),t.fuzzy)for(const[e,r]of t.fuzzy){const t=new RegExp(e);this.fuzzyUrlRules.push({match:t,replace:r})}t.textIndex&&(this.textIndex=t.textIndex)}updateHeaders(t){this.sourceLoader&&(this.sourceLoader.headers=t)}_initDB(t,e,r,i){super._initDB(t,e,r,i),e||(t.createObjectStore("ziplines",{keyPath:["waczname","prefix"]}),t.createObjectStore("waczfiles",{keyPath:"waczname"}),t.createObjectStore("verification",{keyPath:"id"})),2===e&&this.convertV2WACZDB(t,i),3===e&&t.createObjectStore("verification",{keyPath:"id"})}async convertV2WACZDB(t,e){try{const r=await e.objectStore("ziplines").getAll(),i=await e.objectStore("zipEntries").getAll();t.deleteObjectStore("ziplines"),t.deleteObjectStore("zipEntries"),t.createObjectStore("ziplines",{keyPath:["waczname","prefix"]}),t.createObjectStore("waczfiles",{keyPath:"waczname"}),t.createObjectStore("verification",{keyPath:"id"});const n=this.config.loadUrl;for(const t of r)t.waczname=n,e.objectStore("ziplines").put(t);const s=r.length>0?2:1,o=await this.computeFileHash(n,""),a=new _o({waczname:n,hash:o,path:n,entries:i,indexType:s});e.objectStore("waczfiles").put(a.serialize()),await e.done}catch(t){console.warn(t)}}addWACZFile(t){return this.waczfiles[t.waczname]=new _o(t),this.waczNameForHash[t.hash]=t.waczname,this.waczfiles[t.waczname]}async init(){await super.init();const t=await this.db.getAll("waczfiles")||[];for(const e of t)this.addWACZFile({...e,parent:this});for(const[t,e]of Object.entries(this.waczfiles)){e.path=e.path||t;const r=e.path.lastIndexOf("#!/");if(r>0){const t=e.path.slice(0,r),i=this.waczfiles[t];e.parent=i}else"json"!==this.rootSourceType&&(e.loader=this.sourceLoader)}await this.checkUpdates()}async close(){super.close(),caches.delete("cache:"+this.name.slice(3))}async clearZipData(){const t=["waczfiles","ziplines"];for(const e of t)await this.db.clear(e)}async addVerifyData(t="",e,r,i=null,n=!1){let s=!1;t&&(e=t+e),i&&(s=r===i,n&&console.log(`verify ${e}: ${s}`)),await this.db.put("verification",{id:e,expected:r,matched:s})}async addVerifyDataList(t,e){const r=this.db.transaction("verification","readwrite");for(const i of e)t&&(i.id=t+i.id),r.store.put(i);try{await r.done}catch(t){console.warn(t)}}async getVerifyInfo(){const t=await this.db.getAll("verification");let e=0,r=0;const i={},n=["domain","created","certFingerprint","software","datapackageHash","publicKey"];for(const s of t)n.includes(s.id)?i[s.id]=s.expected:"signature"===s.id||!0===s.matched?e++:!1===s.matched&&r++;return i.numInvalid=r,i.numValid=e,i}async getVerifyExpected(t){return(await this.db.get("verification",t))?.expected}async clearAll(){await super.clearAll(),await this.clearZipData()}async loadRecordFromSource(t){const{start:e,length:r,path:i,wacz:n}=t.source,s={offset:e,length:r,unzip:!0,computeHash:!0},o=n,{reader:a,hasher:c}=await this.loadFileFromNamedWACZ(o,"archive/"+i,s),l=new ls(a);await this.waczfiles[o].save(this.db);const h=await l.load();return t[po]&&h?.respHeaders&&(h.respHeaders["x-wabac-preset-cookie"]=t[po]),{remote:h,hasher:c}}async loadIndex(t){if(!this.waczfiles[t])throw new Error("unknown waczfile: "+t);if(this.waczfiles[t].indexType)return{indexType:this.waczfiles[t].indexType,isNew:!1};let e=0;for(const r of this.waczfiles[t].iterContainedFiles())r.endsWith(".cdx")||r.endsWith(".cdxj")?(console.log(`Loading CDX for ${t}`),await this.loadCDX(r,t),e=1):r.endsWith(".idx")&&(console.log(`Loading IDX for ${t}`),await this.loadIDX(r,t),e=2);return this.waczfiles[t].indexType=e,await this.waczfiles[t].save(this.db,!0),{indexType:e,isNew:!0}}async loadCDX(t,e,r,i){const{reader:n,hasher:s}=await this.loadFileFromNamedWACZ(e,t,{computeHash:!0}),o=new go(n,null,e,{wacz:e}),a=await o.load(this,r,i);if(s){const r=await this.getVerifyExpected(t);r&&this.addVerifyData(e,t,r,s.getHash())}return a}async loadIDX(t,e,r,i){const{reader:n,hasher:s}=await this.loadFileFromNamedWACZ(e,t,{computeHash:!0}),o=[];let a="",c=!0,l=0;for await(const t of n.iterLines()){if(l+=t.length,l===t.length&&t.startsWith("!meta")){const e=t.indexOf(" {");if(e<0){console.warn("Invalid Meta Line: "+t);continue}const r=JSON.parse(t.slice(e));r.filename&&(a=r.filename),"cdxj-gzip-1.0"!==r.format&&console.log(`Unknown CDXJ format "${r.format}", archive may not parse correctly`);continue}let n;if(t.indexOf("\t")>0){const[r,i,s,o]=t.split("\t");n={waczname:e,prefix:r,filename:i,offset:Number(s),length:Number(o),loaded:!1},c=!1}else{const r=t.indexOf(" {");if(r<0){console.log("Invalid Index Line: "+t);continue}const i=t.slice(0,r);let{offset:s,length:o,filename:l,digest:h}=JSON.parse(t.slice(r));c=c&&!nb.test(i),l=l||a,n={waczname:e,prefix:i,filename:l,offset:s,length:o,digest:h,loaded:!1}}r&&i&&r(l/i,l,i),o.push(n)}if(s){const r=await this.getVerifyExpected(t);r&&this.addVerifyData(e,t,r,s.getHash())}const h=this.db.transaction("ziplines","readwrite");for(const t of o)h.store.put(t);try{await h.done}catch(t){console.log("Error loading ziplines index: ",t)}c&&c!==this.waczfiles[e].nonSurt&&(this.waczfiles[e].nonSurt=c,await this.waczfiles[e].save(this.db,!0))}async loadCDXFromIDX(t,e,r=0,i=!1){const n=this.waczfiles[t].nonSurt?e:tt(e),s=i?this.prefixUpperBound(n):n+" 9999",o=IDBKeyRange.upperBound([t,s],!0),a=this.db.transaction("ziplines","readonly"),c=[];for await(const e of a.store.iterate(o,"prev")){if(e.value.waczname!==t)break;if(c.unshift(e.value),!e.value.prefix.split(" ")[0].startsWith(n))break}await a.done;const l=[];c.length>3&&r&&c.sort(((t,e)=>{const i=t.prefix.split(" ")[1],n=e.prefix.split(" ")[1];if(!i||!n)return 0;const s=Math.abs(h(i).getTime()-r),o=Math.abs(h(n).getTime()-r);return s===o?0:s<o?-1:1}));let u=0;for(const e of c){if(e.loaded)continue;const r=t+":"+e.filename+":"+e.offset;let i=this.ziploadercache[r];if(i||(i=this.doCDXLoad(r,e,t),this.ziploadercache[r]=i),l.push(i),++u>3)break}return l.length&&await Promise.allSettled(l),await this.waczfiles[t].save(this.db),l.length>0}async doCDXLoad(t,e,r){try{const t="indexes/"+e.filename,i={offset:e.offset,length:e.length,unzip:!0,computeHash:!!e.digest},{reader:n,hasher:s}=await this.loadFileFromNamedWACZ(r,t,i),o=new go(n,null,"",{wacz:r});if(await o.load(this),s){const i=s.getHash(),n=`${t}:${e.offset}-${e.length}`;await this.addVerifyData(r,n,e.digest||"",i)}e.loaded=!0,await this.db.put("ziplines",e)}catch(t){await v(t,this.config)||console.warn(t)}finally{delete this.ziploadercache[t]}}async findPageAtUrl(t,e){const r=await this.db.getAllFromIndex("pages","url",t);let i=null,n=Number.MAX_SAFE_INTEGER;for(const t of r){const r=Math.abs(t.ts-e);if(r<1e3)return t;r<n&&(i=t,n=r)}return i}async lookupUrl(t,e,r={}){try{const{waczname:i}=r;let n;return i&&"local"!==i&&(n=await this.lookupUrlForWACZ(i,t,e,r)),!n||r.noRevisits&&"warc/revisit"===n.mime?(n=await super.lookupUrl(t,e,r),n):n}catch(t){return console.warn(t),null}}async lookupUrlForWACZ(t,e,r,i){const{indexType:n,isNew:s}=await this.loadIndex(t);switch(n){case 2:if(!await this.loadCDXFromIDX(t,e,r,!1))return null;break;case 1:if(!s)return null;break;default:return null}return await super.lookupUrl(e,r,i)}async resourcesByUrlAndMime(t,...e){let r=await super.resourcesByUrlAndMime(t,...e);if(r.length>0)return r;for(const i of Object.keys(this.waczfiles))if(i&&"local"!==i){const{indexType:n,isNew:s}=await this.loadIndex(i);switch(n){case 2:if(!await this.loadCDXFromIDX(i,t,0,!0))continue;break;case 1:if(!s)continue;break;default:continue}const o=await super.resourcesByUrlAndMime(t,...e);o&&o.length&&(r=r.concat(o))}return r}async loadFileFromWACZ(t,e,r){try{return await t.loadFile(e,r)}catch(i){if(await this.retryLoad(i))return await t.loadFile(e,r);throw i}}async loadFileFromNamedWACZ(t,e,r){const i=this.waczfiles[t];if(!i)throw new Error("No WACZ Found for: "+t);return await this.loadFileFromWACZ(i,e,r)}async computeFileHash(t,e){return e?e.indexOf(":")>0&&(e=e.split(":")[1]):e=await p(t,"sha-256",""),e}async addNewWACZ({name:t,hash:e,path:r,parent:i,loader:n=null}){const s=t||r||"";e=await this.computeFileHash(s,e);const o=this.addWACZFile({waczname:s,hash:e,path:r,parent:i,loader:n});await o.init(),await o.save(this.db,!0);const a=new $w(this,o,!i);return await a.load()}async loadWACZFiles(t,e=this){const r=[],i=async(t,e)=>{await this.waczfiles[t].init(e),await this.waczfiles[t].save(this.db,!0)},n=t.resources.map((t=>{const r=e.getLoadPath(t.path);return{name:e.getName(t.name),hash:t.hash,path:r}}));for(const{name:t,hash:s,path:o}of n)this.waczfiles[t]?this.waczfiles[t].path!==o&&r.push(i(t,o)):r.push(this.addNewWACZ({name:t,hash:s,path:o,parent:e}));r.length&&await Promise.allSettled(r)}async getTextIndex(){const t={"Content-Type":"application/ndjson"},e=Object.keys(this.waczfiles);if(!this.textIndex||!e.length)return new Response("",{headers:t});if(1===e.length){const r=e[0];let i;try{i=await this.loadFileFromNamedWACZ(r,this.textIndex,{unzip:!0})}catch(e){return new Response("",{headers:t})}const{reader:n}=i,s=this.waczfiles[r].getSizeOf(this.textIndex);return s>0&&(t["Content-Length"]=""+s),new Response(n.getReadableStream(),{headers:t})}{const r=[];for(const i of e)try{const{reader:t}=await this.loadFileFromNamedWACZ(i,this.textIndex,{unzip:!0});t&&r.push(t)}catch(t){continue}const i=new ReadableStream({async pull(t){for(const e of r)for await(const r of e)t.enqueue(r);t.close()}});return new Response(i,{headers:t})}}async getResource(t,e,r,{pageId:i,noRedirect:n}={}){if(await this.initing,this.externalSource){const r=await this.externalSource.getResource(t,e);if(r)return r}const s=i;let o=null,a=null;if(s){if(o=this.waczNameForHash[s],!o)return null;if(a=await super.getResource(t,e,r,{waczname:o}),a)return a}const c=new Map;for(const[i,o]of Object.entries(this.waczfiles))if("wacz"===o.fileType&&o.hash!==s&&(a=await super.getResource(t,e,r,{waczname:i,noFuzzyCheck:!0,loadFirst:!0}),a)){if(n)return a;c.set(a.date,{name:i,hash:o.hash})}if(c.size>0){const r=h(t.timestamp);let i,n,s=-1;for(const t of c.keys()){const e=Math.abs(t.getTime()-r.getTime());if(s<0||e<s){const{name:r,hash:a}=c.get(t);o=r,n=a,i=l(t.toISOString()),s=e}}return Response.redirect(`${e}:${n}/${i}mp_/${t.url}`)}if(this.fuzzyUrlRules.length)for(const{match:i,replace:n}of this.fuzzyUrlRules){const s=decodeURIComponent(t.url.replace(i,n));if(s&&s!==t.url){t.url=s;const i=await super.getResource(t,e,r);if(i)return i}}return null}async retryLoad(t){return"json"===this.rootSourceType&&(t instanceof x?(this.updating||(this.updating=this.checkUpdates()),await this.updating,this.updating=null,!0):await v(t,this.config))}async checkUpdates(){"json"===this.rootSourceType&&await this.loadFromJSON()}async loadFromJSON(t=null){if(!t){const e=await this.sourceLoader.doInitialFetch(!1,!1);t=e&&e.response}if(!t||206!==t.status&&200!==t.status)return console.warn("WACZ update failed from: "+this.config.loadUrl),{};const e=await t.json();return e.profile,await this.loadWACZFiles(e),e}getLoadPath(t){return new URL(t,this.config.loadUrl).href}getName(t){return t}async createLoader(t){return await Ks(t)}}class ob{sourceUrl;type;notFoundPageUrl;constructor(t){const e=t.extraConfig||{};this.sourceUrl=e.prefix,this.type=e.sourceType||"kiwix",this.notFoundPageUrl=e.notFoundPageUrl}async getAllPages(){return[]}async getResource(t,e){const{url:r,headers:i}=t.prepareProxyRequest(e);let n=i;if("kiwix"===this.type){let e=await this.resolveHeaders(r);if(!e)for(const t of es.getFuzzyCanonsWithArgs(r))if(t!==r&&(e=await this.resolveHeaders(t),e))break;if(!e){if(this.notFoundPageUrl&&"navigate"===t.mode){const t=await fetch(this.notFoundPageUrl);if(200===t.status){const e={"Content-Type":"text/html"},i=await t.text();return new Response(i.replace("$URL",r),{status:404,headers:e})}}return null}let{headers:i,encodedUrl:s,date:o,status:a,statusText:c,hasPayload:l}=e;if(n.has("Range")){const t=n.get("Range");t&&(n={Range:t})}let h=null,u=null;if(i||(i=new Headers),l&&(u=await fetch(this.sourceUrl+"A/"+s,{headers:n}),u.body&&(h=new ft(u.body.getReader(),null,!1)),206===u.status)){const t=u.headers.get("Content-Length"),e=u.headers.get("Content-Range");t&&e&&(a=206,c="Partial Content",i.set("Content-Length",t),i.set("Content-Range",e),i.set("Accept-Ranges","bytes"))}return h||(h=new Uint8Array([])),o||(o=new Date),new ln({payload:h,status:a,statusText:c,headers:i,url:r,date:o,noRW:!1,isLive:!1})}return null}async resolveHeaders(t){const e=t.slice(t.indexOf("//")+2);let r=encodeURI(e);r=encodeURIComponent(e);const i=await fetch(this.sourceUrl+"H/"+r);if(200!==i.status)return null;let n=null,s=null,o=200,a="OK",c=!1;try{const e=await It.parse(i.body);if(!e)return null;if("revisit"===e.warcType){const r=e.warcHeaders.headers.get("WARC-Refers-To-Target-URI");if(r&&r!==t)return await this.resolveHeaders(r)}s=new Date(e.warcDate),e.httpHeaders?(n=e.httpHeaders.headers,o=Number(e.httpHeaders.statusCode),a=e.httpHeaders.statusText||"",c="0"!==e.httpHeaders.headers.get("Content-Length")):"resource"===e.warcType&&(n=new Headers,n.set("Content-Type",e.warcContentType||""),n.set("Content-Length",e.warcContentLength+""),o=200,a="OK",c=e.warcContentLength>0),o||(o=200)}catch(e){console.warn(e),console.warn("Ignoring headers, error parsing headers response for: "+t)}return{encodedUrl:r,headers:n,date:s,status:o,statusText:a,hasPayload:c}}}const ab=hb([80,75,3,4]),cb=hb([31,139,8]),lb=hb([87,65,82,67]);function hb(t){return e=>{for(const[r,i]of t.entries())if(i!==e[r])return!1;return!0}}globalThis.self||(globalThis.self=globalThis);const ub={};self.interruptLoads=ub;class pb extends class{root=null;colldb=null;checkIpfs=!0;_init_db;_fileHandles=null;constructor(){this._init_db=this._initDB()}async _initDB(){this.colldb=await Ln("collDB",1,{upgrade:t=>{t.createObjectStore("colls",{keyPath:"name"}).createIndex("type","type")}})}async loadAll(t){if(await this._init_db,t)for(const e of t.split(",")){const t=e.split(":");if(2===t.length){const e={dbname:t[1],sourceName:t[1],decode:!1,sourceUrl:""},r={name:t[0],type:"archive",config:e};console.log("Adding Coll: "+JSON.stringify(r)),await this.colldb.put("colls",r)}}try{const t=(await this.listAll()).map((async t=>this._initColl(t)));await Promise.all(t)}catch(t){console.warn(t.toString())}return!0}async listAll(){return await this._init_db,await this.colldb.getAll("colls")}async loadColl(t){await this._init_db;const e=await this.colldb.get("colls",t);return e?await this._initColl(e):null}async reload(t){return this.loadColl(t)}async deleteColl(t){await this._init_db;const e=await this.colldb.get("colls",t);if(!e)return!1;if(e.config.dbname)try{await Un(e.config.dbname,{blocked(t,r){console.log(`Unable to delete ${e.config.dbname}, blocked: ${r}`)}})}catch(t){return console.warn(t),!1}return await this.colldb.delete("colls",t),!0}async updateAuth(t,e){await this._init_db;const r=await this.colldb.get("colls",t);return!!r&&(r.config.headers=e,await this.colldb.put("colls",r),!0)}async updateMetadata(t,e){await this._init_db;const r=await this.colldb.get("colls",t);return!!r&&(r.config.metadata={...r.config.metadata,...e},await this.colldb.put("colls",r),r.config.metadata)}async updateSize(t,e,r,i){await this._init_db;const n=await this.colldb.get("colls",t);if(!n)return!1;const s=n.config.metadata||{};return s.fullSize=(s.fullSize||0)+e,s.size=(s.size||0)+r,s.mtime=(new Date).getTime(),void 0!==i&&(n.config.decode=i),await this.colldb.put("colls",n),s}async initNewColl(t,e={},r="archive"){await this._init_db;const i=g(),n="local://"+i,s={name:i,type:r,config:{dbname:"db:"+i,ctime:(new Date).getTime(),decode:!1,metadata:t,sourceUrl:n,extraConfig:e}},o=await this._initColl(s);return await this.colldb.put("colls",s),o}async _initColl(t){const e=await this._initStore(t.type||"",t.config),r=t.name,i=t.config;return t.config.root&&!this.root&&(this.root=r||null),this._createCollection({name:r,store:e,config:i})}async _initStore(t,e){let r,i=null;switch(t){case"archive":i=new ns(e.dbname);break;case"remotesource":r=await Ks({url:e.loadUrl,headers:e.headers,size:e.size,extra:e.extra}),i=new oo(e.dbname,r,e.noCache);break;case"remoteprefix":i=new ao(e.dbname,e.remotePrefix,e.headers,e.noCache);break;case"wacz":case"remotezip":case"multiwacz":r=await Ks({url:e.loadUrl||e.sourceUrl,headers:e.headers,extra:e.extra}),i=new sb(e,r,"multiwacz"===t?"json":"wacz");break;case"remotewarcproxy":i=new ob(e);break;case"live":i=new ib(e.extraConfig)}return i?(i.initing&&await i.initing,i):(console.log("no store found: "+t),null)}_createCollection(t){return t}}{constructor(t){super(),this.registerListener(t)}async hasCollection(t){return await this._init_db,null!=await this.colldb.getKey("colls",t)}registerListener(t){t.addEventListener("message",(t=>{t.waitUntil?t.waitUntil(this._handleMessage(t)):this._handleMessage(t)}))}async _handleMessage(t){await this._init_db;const e=t.source||self;switch(t.data.msg_type){case"addColl":{const r=t.data.name,i=(t,i,n,s,o=null,a=null)=>{e.postMessage({msg_type:"collProgress",name:r,percent:t,error:i,currentSize:n,totalSize:s,fileHandle:o,extraMsg:a})};let n;try{if(n=await this.colldb.get("colls",r),n?t.data.skipExisting||(await this.deleteColl(r),n=await this.addCollection(t.data,i)):n=await this.addCollection(t.data,i),!n){if(t.data.name)try{await Un("db:"+t.data.name,{blocked(e,r){console.log(`Load failed and unable to delete ${t.data.name}: ${r}`)}})}catch(t){console.warn(t)}return}}catch(t){if(t instanceof T)return console.warn(t),void i(0,"permission_needed",null,null,t.info?.fileHandle);if("ConstraintError"!==t.name)return console.warn(t),void i(0,"An unexpected error occured: "+t.toString(),null,null);console.log("already being added, just continue..."),n=await this.colldb.get("colls",r)}e.postMessage({msg_type:"collAdded",name:r,sourceUrl:n?.config.sourceUrl});break}case"cancelLoad":{const e=t.data.name,r=new Promise((t=>ub[e]=t));await r,await this.deleteColl(e),delete ub[e];break}case"removeColl":{const r=t.data.name;await this.hasCollection(r)&&(await this.deleteColl(r),this.doListAll(e));break}case"listAll":this.doListAll(e);break;case"reload":this.reload(t.data.name)}}async doListAll(t){const e=[],r=await this.listAll();for(const t of r)e.push({name:t.name,prefix:t.name,pageList:[],sourceName:t.config.sourceName});t.postMessage({msg_type:"listAll",colls:e})}async addCollection(t,e){let r=t.name,i="";const n={root:t.root||!1};let o=null,a=null;const c=t.file;if(!c?.sourceUrl)return e(0,"Invalid Load Request"),!1;if(n.dbname="db:"+r,c.sourceUrl.startsWith("proxy:"))n.sourceUrl=c.sourceUrl.slice(6),n.extraConfig=t.extraConfig,n.extraConfig.prefix||(n.extraConfig.prefix=n.sourceUrl),n.topTemplateUrl=t.topTemplateUrl,n.metadata={},i=t.type||n.extraConfig.type||"remotewarcproxy",o=await this._initStore(i,n);else{let l=null,h=null;if(c.newFullImport&&(r=g(),c.loadUrl=c.loadUrl||c.sourceUrl,c.name=c.name||c.sourceUrl,c.sourceUrl="local://"+r),i="archive",c.newFullImport&&c.importCollId){const t=await this.colldb.get("colls",c.importCollId);if(!t||"archive"!==t.type)return e(0,"Invalid Existing Collection: "+c.importCollId),!1;n.dbname=t.config.dbname,a=t.config,a&&(a.decode=!0)}let u=c.loadUrl||c.sourceUrl;u.match(/[\w]+:\/\//)||(u=new URL(u,self.location.href).href),n.decode=!0,n.onDemand=!1,n.loadUrl=u,n.sourceUrl=c.sourceUrl;let p=c.name||c.sourceUrl;try{if(p.match(/https?:\/\//)){const t=new URL(p);p=t.pathname+t.hash}}catch(t){}if(n.sourceName=p.slice(p.lastIndexOf("/")+1),n.size="number"==typeof c.size?c.size:null,n.extra=c.extra,n.loadUrl.startsWith("file://")&&!c.blob&&!n.extra){if(!this._fileHandles||!this._fileHandles[n.sourceUrl])return e(0,"missing_local_file"),!1;n.extra={fileHandle:this._fileHandles[n.sourceUrl]}}n.extraConfig=t.extraConfig,n.headers=c.headers||n.extraConfig?.headers,n.noCache=c.noCache;let d=await Ks({url:u,headers:n.headers,size:c.size,extra:n.extra,blob:c.blob});if(c.loadEager){const{response:t}=await d.doInitialFetch(!1,!0),e={arrayBuffer:new Uint8Array(await t.arrayBuffer())};c.newFullImport=!0,d=await Ks({url:u,headers:n.headers,size:c.size,extra:e})}let f=function(t){const e=[".warc",".warc.gz",".cdx",".cdxj",".har",".json",".wacz",".zip"];for(const r of e)if(t.endsWith(r))return r}(n.sourceName);const{abort:y,response:m}=await d.doInitialFetch(".wacz"===f,!1);f||(f=await async function(t){const e=t.body.getReader();let r="";const{value:i,done:n}=await e.read();var s;return!n&&i.length>=4&&(s=i.slice(0,4),r=ab(s)?".wacz":lb(s)?".warc":cb(s)?".warc.gz":void 0,r||(r=function(t){try{const e=(new TextDecoder).decode(t).split("\n");if(e.length>1&&e.indexOf(" {")>=0)return".cdxj"}catch(t){return""}}(i))),n||e.cancel(),r}(await m.clone()));const w=m.body;if(n.onDemand=d.canLoadOnDemand&&!c.newFullImport,!d.isValid){const t=d.length&&d.length<=1e3?await m.text():"";return e(0,`Sorry, this URL could not be loaded.\nMake sure this is a valid URL and you have access to this file.\nStatus: ${m.status} ${m.statusText}\nError Details:\n${t}`),y&&y.abort(),!1}if(!d.length)return e(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."),y&&y.abort(),!1;const b=d.length;if(".wacz"===f)if(n.onDemand)l=new tb(d,n,r),h=new sb(n,d,"wacz"),i="wacz";else{if(!d.canLoadOnDemand||!c.newFullImport)return e(0,"Sorry, can't load this WACZ file due to lack of range request support on the server"),y&&y.abort(),!1;l=new eb(d,n,r),h=null,delete n.extra}else!w||".warc"!==f&&".warc.gz"!==f?!w||".cdx"!==f&&".cdxj"!==f?".har"===f?(l=new uo(await m.json()),n.decode=!1):".json"===f&&(h=new sb(n,d,"json"),l=new rb(m),i="multiwacz"):(n.remotePrefix=t.remotePrefix||u.slice(0,u.lastIndexOf("/")+1),l=new go(w,y,r),i="remoteprefix",h=new ao(n.dbname,n.remotePrefix,n.headers,n.noCache)):n.noCache||!(b<s)&&n.onDemand?(l=new fo(w,y,r),i="remotesource",h=new oo(n.dbname,d,n.noCache)):l=new cs(w,y,r);if(!l)return e(0,`The ${n.sourceName} is not a known archive format that could be loaded.`),y&&y.abort(),!1;h||(h=new ns(n.dbname)),await h.initing;try{n.metadata=await l.load(h,e,b)}catch(t){return t instanceof C||(e(0,`Unexpected Loading Error: ${t.toString()}`),console.warn(t)),!1}if(a)return await this.updateSize(c.importCollId,b,b,a.decode),{config:a,type:"",name:""};n.metadata.size||(n.metadata.size=b),n.metadata.title||(n.metadata.title=n.sourceName),o=h}n.ctime=(new Date).getTime(),this._fileHandles&&n.extra?.fileHandle&&delete this._fileHandles[n.sourceUrl];const l={name:r,type:i,config:n};return await this.colldb.add("colls",l),l.store=o,l}}let db;class fb{timeRanges={};updateStats(t,e,r,i){const n=i.clientId||i.resultingClientId;if(!n||!t)return;if(!r.url||r.url.indexOf("mp_/")<0)return;if("document"===r.destination&&e>300&&e<400)return;let s;void 0===this.timeRanges[n]?(s={count:0,children:new Set},this.timeRanges[n]=s,r.referrer.indexOf("mp_/")>0&&db.clients.matchAll({type:"window"}).then((t=>this.updateStatsParent(n,r.referrer,t)))):s=this.timeRanges[n];const o=t.getTime();(!s.min||o<s.min)&&(s.min=o),(!s.max||o>s.max)&&(s.max=o),s.count++}updateStatsParent(t,e,r){for(const i of r)if(i.url===e){this.timeRanges[i.id]||(this.timeRanges[i.id]={count:0,children:new Set}),this.timeRanges[i.id].children.add(t);break}}async getStats(t){const e=new URL(t.request.url);let r="";const i=new URLSearchParams(e.search).get("url"),n=await db.clients.matchAll({type:"window"}),s={};for(const t of n)t.url===i&&(r=t.id),s[t.id]=1;const o=this.timeRanges[r]||{},a={count:o.count||0,min:o.min,max:o.max},c=this.timeRanges[r]&&this.timeRanges[r].children;for(const t of c.values()){const e=this.timeRanges[t];e&&(e.min&&(!a.min||e.min<a.min)&&(a.min=e.min),e.max&&(!a.max||e.max>a.max)&&(a.max=e.max),a.count+=e.count)}for(const t of Object.keys(this.timeRanges))s[t]||delete this.timeRanges[t];return new Response(JSON.stringify(a),{headers:{"Content-Type":"application/json"}})}}var gb=function(){return gb=Object.assign||function(t){for(var e,r=1,i=arguments.length;r<i;r++)for(var n in e=arguments[r])Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t},gb.apply(this,arguments)},yb=function(t){return void 0===t&&(t={}),{arrayFormat:t.arrayFormat||"none",booleanFormat:t.booleanFormat||"none",nullFormat:t.nullFormat||"default"}},mb=function(t){return encodeURIComponent(t)},wb=function(t){return decodeURIComponent(t)},bb=function(t,e){var r=yb(e);return function(t){var e=t.indexOf("?");return-1===e?t:t.slice(e+1)}(t).split("&").reduce((function(t,e){var i=e.split("="),n=i[0],s=i[1],o=function(t){var e=t.indexOf("["),r=-1!==e;return{hasBrackets:r,name:r?t.slice(0,e):t}}(n),a=o.hasBrackets,c=o.name,l=t[c],h=function(t,e){if(void 0===t)return"empty-true"===e.booleanFormat||null;if("string"===e.booleanFormat){if("true"===t)return!0;if("false"===t)return!1}if("unicode"===e.booleanFormat){if("✓"===wb(t))return!0;if("✗"===wb(t))return!1}return"string"===e.nullFormat&&"null"===t?null:wb(t)}(s,r);return t[c]=void 0===l?a?[h]:h:(Array.isArray(l)?l:[l]).concat(h),t}),{})},Ab=/[^!$'()*+,;|:]/g,vb=function(t){return t.replace(Ab,(function(t){return encodeURIComponent(t)}))},_b={default:vb,uri:encodeURI,uriComponent:encodeURIComponent,none:function(t){return t},legacy:encodeURI},Eb={default:decodeURIComponent,uri:decodeURI,uriComponent:decodeURIComponent,none:function(t){return t},legacy:decodeURIComponent},Sb=function(t,e,r){var i=_b[e]||vb;return r?String(t).split("/").map(i).join("/"):i(String(t))},Tb=function(t){return"("+(t?t.replace(/(^<|>$)/g,""):"[a-zA-Z0-9-_.~%':|=+\\*@$]+")+")"},xb=[{name:"url-parameter",pattern:/^:([a-zA-Z0-9-_]*[a-zA-Z0-9]{1})(<(.+?)>)?/,regex:function(t){return new RegExp(Tb(t[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(t){return new RegExp(";"+t[1]+"="+Tb(t[2]))}},{name:"query-parameter",pattern:/^(?:\?|&)(?::)?([a-zA-Z0-9-_]*[a-zA-Z0-9]{1})/},{name:"delimiter",pattern:/^(\/|\?)/,regex:function(t){return new RegExp("\\"+t[0])}},{name:"sub-delimiter",pattern:/^(!|&|-|_|\.|;)/,regex:function(t){return new RegExp(t[0])}},{name:"fragment",pattern:/^([0-9a-zA-Z]+)/,regex:function(t){return new RegExp(t[0])}}],Cb=function t(e,r){if(void 0===r&&(r=[]),!xb.some((function(i){var n=e.match(i.pattern);return!!n&&(r.push({type:i.name,match:n[0],val:n.slice(1,2),otherVal:n.slice(2),regex:i.regex instanceof Function?i.regex(n):i.regex}),n[0].length<e.length&&(r=t(e.substr(n[0].length),r)),!0)})))throw new Error("Could not parse path '"+e+"'");return r},Ib=function(t){return null!=t},Rb={urlParamsEncoding:"default"},kb=function(){function t(t,e){if(!t)throw new Error("Missing path in Path constructor");this.path=t,this.options=gb(gb({},Rb),e),this.tokens=Cb(t),this.hasUrlParams=this.tokens.filter((function(t){return/^url-parameter/.test(t.type)})).length>0,this.hasSpatParam=this.tokens.filter((function(t){return/splat$/.test(t.type)})).length>0,this.hasMatrixParams=this.tokens.filter((function(t){return/matrix$/.test(t.type)})).length>0,this.hasQueryParams=this.tokens.filter((function(t){return/^query-parameter/.test(t.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(t){return void 0!==t.regex})).map((function(t){return t.regex.source})).join("")}return t.createPath=function(e,r){return new t(e,r)},t.prototype.isQueryParam=function(t){return-1!==this.queryParams.indexOf(t)},t.prototype.isSpatParam=function(t){return-1!==this.spatParams.indexOf(t)},t.prototype.test=function(t,e){var r=this,i=gb(gb({caseSensitive:!1,strictTrailingSlash:!1},this.options),e),n=function(t,e){return e||"\\/"===t?t:t.replace(/\\\/$/,"")+"(?:\\/)?"}(this.source,i.strictTrailingSlash),s=this.urlTest(t,n+(this.hasQueryParams?"(\\?.*$|$)":"$"),i.caseSensitive,i.urlParamsEncoding);if(!s||!this.hasQueryParams)return s;var o=bb(t,i.queryParams),a=Object.keys(o).filter((function(t){return!r.isQueryParam(t)}));return 0===a.length?(Object.keys(o).forEach((function(t){return s[t]=o[t]})),s):null},t.prototype.partialTest=function(t,e){var r=this,i=gb(gb({caseSensitive:!1,delimited:!0},this.options),e),n=function(t,e){return e?/(\/)$/.test(t)?t:t+"(\\/|\\?|\\.|;|$)":t}(this.source,i.delimited),s=this.urlTest(t,n,i.caseSensitive,i.urlParamsEncoding);if(!s)return s;if(!this.hasQueryParams)return s;var o=bb(t,i.queryParams);return Object.keys(o).filter((function(t){return r.isQueryParam(t)})).forEach((function(t){return function(t,e,r){void 0===r&&(r="");var i=t[e];return t[e]=void 0===i?r:Array.isArray(i)?i.concat(r):[i,r],t}(s,t,o[t])})),s},t.prototype.build=function(t,e){var r=this;void 0===t&&(t={});var i=gb(gb({ignoreConstraints:!1,ignoreSearch:!1,queryParams:{}},this.options),e),n=Object.keys(t).filter((function(t){return!r.isQueryParam(t)})).reduce((function(e,n){if(!Ib(t[n]))return e;var s=t[n],o=r.isSpatParam(n);return"boolean"==typeof s?e[n]=s:Array.isArray(s)?e[n]=s.map((function(t){return Sb(t,i.urlParamsEncoding,o)})):e[n]=Sb(s,i.urlParamsEncoding,o),e}),{});if(this.urlParams.some((function(e){return!Ib(t[e])}))){var s=this.urlParams.filter((function(e){return!Ib(t[e])}));throw new Error("Cannot build path: '"+this.path+"' requires missing parameters { "+s.join(", ")+" }")}if(!i.ignoreConstraints&&!this.tokens.filter((function(t){return/^url-parameter/.test(t.type)&&!/-splat$/.test(t.type)})).every((function(t){return new RegExp("^"+Tb(t.otherVal[0])+"$").test(n[t.val])})))throw new Error("Some parameters of '"+this.path+"' are of invalid format");var o=this.tokens.filter((function(t){return!1===/^query-parameter/.test(t.type)})).map((function(t){return"url-parameter-matrix"===t.type?";"+t.val+"="+n[t.val[0]]:/^url-parameter/.test(t.type)?n[t.val[0]]:t.match})).join("");if(i.ignoreSearch)return o;var a=this.queryParams.filter((function(e){return-1!==Object.keys(t).indexOf(e)})).reduce((function(e,r){return e[r]=t[r],e}),{}),c=function(t,e){var r=yb(e);return Object.keys(t).filter((function(e){return function(t){return void 0!==t}(t[e])})).map((function(e){return function(t,e,r){return null===e?function(t,e){return"hidden"===e.nullFormat?"":"string"===e.nullFormat?t+"=null":t}(t,r):"boolean"==typeof e?function(t,e,r){return"empty-true"===r.booleanFormat&&e?t:t+"="+("unicode"===r.booleanFormat?e?"✓":"✗":e.toString())}(t,e,r):Array.isArray(e)?function(t,e,r){var i=function(t){return"index"===t.arrayFormat?function(t,e){return t+"["+e+"]"}:"brackets"===t.arrayFormat?function(t){return t+"[]"}:function(t){return t}}(r);return e.map((function(e,r){return i(t,r)+"="+mb(e)})).join("&")}(t,e,r):t+"="+mb(e)}(e,t[e],r)})).filter(Boolean).join("&")}(a,i.queryParams);return c?o+"?"+c:o},t.prototype.getParams=function(t){var e=t instanceof RegExp?function(e){return t.test(e.type)}:function(e){return e.type===t};return this.tokens.filter(e).map((function(t){return t.val[0]}))},t.prototype.urlTest=function(t,e,r,i){var n=this,s=new RegExp("^"+e,r?"":"i"),o=t.match(s);return o?this.urlParams.length?o.slice(1,this.urlParams.length+1).reduce((function(t,e,r){return t[n.urlParams[r]]=(Eb[i]||decodeURIComponent)(e),t}),{}):{}:null},t}();class Nb{routes={};constructor(t){for(const[e,r]of Object.entries(t)){let t,i;r instanceof Array?(t=r[0],i=r[1]||"GET"):(t=r,i="GET"),this.routes[i]=this.routes[i]||{},this.routes[i][e]=new kb(t)}}match(t,e="GET"){for(const[r,i]of Object.entries(this.routes[e]||[])){const e=t.split("?",2),n=e[0],s=i.test(n);if(s)return s._route=r,s._query=new URLSearchParams(2===e.length?e[1]:""),s}return{_route:null}}}class Ob{router;collections;constructor(t){this.router=new Nb(this.routes),this.collections=t}get routes(){return{index:"coll-index",coll:"c/:coll",urls:"c/:coll/urls",urlsTs:"c/:coll/ts/",createColl:["c/create","POST"],deleteColl:["c/:coll","DELETE"],updateAuth:["c/:coll/updateAuth","POST"],updateMetadata:["c/:coll/metadata","POST"],curated:"c/:coll/curated/:list",pages:"c/:coll/pages",textIndex:"c/:coll/textIndex",deletePage:["c/:coll/page/:page","DELETE"]}}async apiResponse(t,e,r){const i=this.router.match(t,e.method),n=await this.handleApi(e,i,r);if(n instanceof Response)return n;const s=n.error?404:200;return this.makeResponse(n,s)}async handleApi(t,e,r){switch(e._route){case"index":return await this.listAll(e._query.get("filter"));case"createColl":{const e=await t.json();return E(await this.collections.initNewColl(e.metadata||{},e.extraConfig||{}))}case"coll":{const t=await this.collections.getColl(e.coll);if(!t)return{error:"collection_not_found"};const r=E(t);return"1"===e._query.get("all")?(t.store.db?(r.pages=await t.store.getAllPages(),r.lists=await t.store.db.getAll("pageLists"),r.curatedPages=await t.store.db.getAll("curatedPages")):(r.pages=[],r.lists=[],r.curatedPages=[]),r.verify=await t.store.getVerifyInfo()):t.store.db?(r.numLists=await t.store.db.count("pageLists"),r.numPages=await t.store.db.count("pages")):(r.numLists=0,r.numPages=0),t.config.metadata.ipfsPins&&(r.ipfsPins=t.config.metadata.ipfsPins),r}case"deleteColl":{const t="1"===e._query.get("reload");return await this.collections.deleteColl(e.coll,t)?await this.listAll():{error:"collection_not_found"}}case"updateAuth":{const r=await t.json();return{success:await this.collections.updateAuth(e.coll,r.headers)}}case"updateMetadata":{const r=await t.json();return{metadata:await this.collections.updateMetadata(e.coll,r)}}case"urls":{const t=await this.collections.getColl(e.coll);if(!t)return{error:"collection_not_found"};const r=e._query.get("url"),i=Number(e._query.get("count")||100),n=e._query.get("mime"),s="1"===e._query.get("prefix"),o=e._query.get("fromUrl"),a=e._query.get("fromTs"),c=e._query.get("fromMime"),l=Number(e._query.get("fromStatus")||0);if(!t.store.resourcesByMime)return{urls:[]};let h;return h=r?await t.store.resourcesByUrlAndMime(r,n,i,s,o,a):await t.store.resourcesByMime(n,i,c,o,l),h=h||[],{urls:h}}case"urlsTs":{const t=await this.collections.getColl(e.coll);if(!t)return{error:"collection_not_found"};const r=e._query.get("url");return{timestamps:await t.store.getTimestampsByURL(r)}}case"pages":{const t=await this.collections.getColl(e.coll);return t?{pages:await t.store.getAllPages()}:{error:"collection_not_found"}}case"textIndex":{const t=await this.collections.getColl(e.coll);return t?t.store.getTextIndex?await t.store.getTextIndex():{}:{error:"collection_not_found"}}case"curated":{const t=await this.collections.getColl(e.coll);if(!t)return{error:"collection_not_found"};const r=Number(e.list);return t.store.db?{curated:await t.store.db.getAllFromIndex("curatedPages","listPages",IDBKeyRange.bound([r],[r+1]))}:{curated:[]}}case"deletePage":{const t=await this.collections.getColl(e.coll);if(!t)return{error:"collection_not_found"};const{pageSize:r,dedupSize:i}=await t.store.deletePage(e.page);return this.collections.updateSize(e.coll,r,i),{pageSize:r,dedupSize:i}}default:return{error:"not_found"}}}async listAll(t){const e=await this.collections.listAll(),r=[];return e.forEach((e=>{"live"!==e.type&&"remoteproxy"!==e.type&&(t&&!e.type.startsWith(t)||r.push(E(e)))})),{colls:r}}makeResponse(t,e=200){return new Response(JSON.stringify(t),{status:e,headers:{"Content-Type":"application/json"}})}}const Bb=/^(?::([\w-]+)\/)?(\d*)([a-z]+_|[$][a-z0-9:.-]+)?(?:\/|\||%7C|%7c)(.+)/;class Pb{url="";timestamp="";mod="";pageId="";hash="";cookie="";isProxyOrigin=!1;request;method;mode;_postToGetConverted=!1;constructor(t,e,{isRoot:r=!1,mod:i="",ts:n="",proxyOrigin:s=null,localOrigin:o=null}={}){const a=Bb.exec(t);if(this.timestamp=n,this.mod=i,this.request=e,this.method=e.method,this.mode=e.mode,!a&&(t.startsWith("https:")||t.startsWith("http:")||t.startsWith("blob:")))this.url=t;else if(!a&&r)this.url="https://"+t;else{if(!a)return void(this.url="");this.pageId=a[1]||"",this.timestamp=a[2],this.mod=a[3],this.url=a[4]}if(s&&o){const t=new URL(this.url);t.origin===o&&(this.url=s+t.pathname+(t.search?t.search:"")),this.isProxyOrigin=!0}const c=this.url.indexOf("#");c>0&&(this.hash=this.url.slice(c),this.url=this.url.substring(0,c))}get headers(){return this.request.headers}get destination(){return this.request.destination}get referrer(){return this.request.referrer}async convertPostToGet(){if(this._postToGetConverted)return this.url;const t=this.request;if("POST"!==t.method&&"PUT"!==t.method)return this.url;const e={method:t.method,postData:await t.text(),headers:t.headers,url:this.url};return et(e)&&(this.url=e.url,this.method="GET",this.mode="navigate"===this.request.mode?"same-origin":this.request.mode,this._postToGetConverted=!0),this.url}prepareProxyRequest(t,e=!0){let r,i,n;if(e){r=new Headers(this.request.headers),i=this.request.referrer;const e=i.indexOf("/http",t.length-1);e>0&&(i=i.slice(e+1),r.set("X-Proxy-Referer",i)),n=this.request.credentials,this.cookie&&r.set("X-Proxy-Cookie",this.cookie)}else r=new Headers,n="omit";let s=this.url;if(s.startsWith("//")&&i)try{s=new URL(i).protocol+s}catch(t){s="https:"+s}return{referrer:i,headers:r,credentials:n,url:s}}async getBody(){const t=this.request.clone();return new Uint8Array(await t.arrayBuffer())}}const Db="x-wabac-is-ajax-req";class Lb extends pb{prefixes;colls;inited;root;defaultConfig;constructor(t,e=null,r={}){super(self),this.prefixes=t,this.colls={},this.inited=null,this.root=e,this.defaultConfig=r,this._fileHandles={}}_createCollection(t){return new _n(t,this.prefixes,this.defaultConfig)}async loadAll(t){return this.colls={},this.inited=super.loadAll(t),this.inited}async getColl(t){return this.colls[t]||(this.colls[t]=await this.loadColl(t)),this.colls[t]}async reload(t){delete this.colls[t],await this.getColl(t)}async addCollection(t,e){const r=await super.addCollection(t,e);return r&&r.name&&(this.colls[r.name]=this._createCollection(r)),r}async deleteColl(t,e=!1){return this.colls[t]&&(this.colls[t].store&&await this.colls[t].store.delete(),this._fileHandles&&e&&this.colls[t].config.extra?.fileHandle&&(this._fileHandles[this.colls[t].config.sourceUrl]=this.colls[t].config.extra.fileHandle)),!!await super.deleteColl(t)&&(delete this.colls[t],!0)}async initNewColl(t,e={},r="archive"){const i=await super.initNewColl(t,e,r);return i&&(this.colls[i.name]=i),i}async updateAuth(t,e){return this.colls[t]&&this.colls[t].store.updateHeaders&&this.colls[t].store.updateHeaders(e),await super.updateAuth(t,e)}async updateMetadata(t,e){const r=await super.updateMetadata(t,e);return this.colls[t]&&r&&(this.colls[t].config.metadata=r,this.colls[t].metadata=r),r}async updateSize(t,e,r,i){const n=await super.updateSize(t,e,r,i);return this.colls[t]&&n&&(this.colls[t].config.metadata=n,this.colls[t].metadata=n),void 0!==i&&this.colls[t]&&(this.colls[t].config.decode=i),n}}self.registration?(self.sw=new class{prefix;replayPrefix;staticPrefix;distPrefix;staticData;collections;proxyOriginMode;api;apiPrefix;allowRewrittenCache;stats;constructor({staticData:t=null,ApiClass:e=Ob,defaultConfig:r={},CollectionsClass:i=Lb}={}){this.prefix=self.registration?self.registration.scope:"",this.replayPrefix=this.prefix;const n=new URLSearchParams(self.location.search);let s="w";n.has("replayPrefix")&&(s=n.get("replayPrefix")),s&&(this.replayPrefix+=s+"/"),this.staticPrefix=this.prefix+"static/",this.distPrefix=this.prefix+"dist/";const o={static:this.staticPrefix,root:this.prefix,main:this.replayPrefix};if(this.staticData=t||new Map,this.staticData.set(this.staticPrefix+"wombat.js",{type:"application/javascript",content:'(()=>{"use strict";function t(){this._map=[]}function e(t,e){void 0!==self.Symbol&&void 0!==self.Symbol.toStringTag&&Object.defineProperty(t.prototype,self.Symbol.toStringTag,{value:e,enumerable:!1})}function r(t){for(var e,r,i=t.__proto__||t.constructor.prototype||t.prototype,o=Object.getOwnPropertyNames(i),n=o.length,s=0;s<n;s++)r=t[e=o[s]],"constructor"!==e&&"function"==typeof r&&(t[e]=r.bind(t))}t.prototype.set=function(t,e){this._map.push([t,e])},t.prototype.get=function(t){for(var e=0;e<this._map.length;e++)if(this._map[e][0]===t)return this._map[e][1];return null},t.prototype.find=function(t){for(var e=0;e<this._map.length;e++)if(this._map[e][0]===t)return e;return-1},t.prototype.add_or_get=function(t,e){var r=this.get(t);return r||(r=e(),this.set(t,r)),r},t.prototype.remove=function(t){var e=this.find(t);return e>=0?this._map.splice(e,1)[0][1]:null},t.prototype.map=function(t){for(var e=0;e<this._map.length;e++)this._map[e][1](t)};var i={yes:!1},o=Symbol("__wb__storage_WOMBAT"),n=Symbol("__wb__storage_TYPE");function s(t,e,r){if(i.yes)throw new TypeError("Illegal constructor");if(r&&r.length)for(var s=0;s<r.length;s++)this[r[s][0]]=r[s][1].toString();Object.defineProperty(this,o,{value:t,enumerable:!1}),Object.defineProperty(this,n,{value:e,enumerable:!1})}function a(t,e,r){var i=new s(t,e,r);return t.$wbwindow.Proxy&&(i=new t.$wbwindow.Proxy(i,{get:function(t,e){var r=t.__proto__;if("__proto__"===e)return r;if(r.hasOwnProperty(e)||r.__proto__&&r.__proto__.hasOwnProperty(e)){var i=t[e];return"function"==typeof i&&(i=i.bind(t)),i}return t.hasOwnProperty(e)?t.getItem(e):void 0},set:function(t,e,r){return t.__proto__.hasOwnProperty(e)?(t[e]=r,!0):(t.setItem(e,r),!0)}})),t.defGetterProp(t.$wbwindow,e,(function(){return i})),i}function w(t,e){for(var r in Object.defineProperties(this,{_orig_loc:{configurable:!0,enumerable:!1,value:t},wombat:{configurable:!0,enumerable:!1,value:e},orig_getter:{enumerable:!1,value:function(t){return this._orig_loc[t]}},orig_setter:{enumerable:!1,value:function(t,e){this._orig_loc[t]!=e&&(this._orig_loc[t]=e)}}}),e.initLocOverride(this,this.orig_setter,this.orig_getter),e.setLoc(this,t.href),t)this.hasOwnProperty(r)||"function"==typeof t[r]||(this[r]=t[r])}function h(t,e){if(!(this instanceof h))return new h(t,e);this.elemSelector="img[srcset], img[data-srcset], img[data-src], video[srcset], video[data-srcset], video[data-src], audio[srcset], audio[data-srcset], audio[data-src], picture > source[srcset], picture > source[data-srcset], picture > source[data-src], video > source[srcset], video > source[data-srcset], video > source[data-src], audio > source[srcset], audio > source[data-srcset], audio > source[data-src]",this.wombat=t,this.$wbwindow=t.$wbwindow,this.worker=null,r(this),this._initWorker(e)}function p(t,e){return function(r){if(window==e)return t(r)}}function c(t,e,r){var i;return i="function"==typeof t?t:"object"==typeof t?t.handleEvent.bind(t):function(){},function(t){var o;if(t.data&&t.data.from&&t.data.message){if("*"!==t.data.to_origin&&e.WB_wombat_location&&!r.startsWith(t.data.to_origin,e.WB_wombat_location.origin))return void console.warn("Skipping message event to "+t.data.to_origin+" doesn\'t start with origin "+e.WB_wombat_location.origin);var n=t.source;t.data.from_top?n=e.__WB_top_frame:t.data.src_id&&e.__WB_win_id&&e.__WB_win_id[t.data.src_id]&&(n=e.__WB_win_id[t.data.src_id]),(o=new MessageEvent("message",{bubbles:t.bubbles,cancelable:t.cancelable,data:t.data.message,origin:t.data.from,lastEventId:t.lastEventId,source:r.proxyToObj(n),ports:t.ports}))._target=t.target,o._srcElement=t.srcElement,o._currentTarget=t.currentTarget,o._eventPhase=t.eventPhase}else o=t;return i(o)}}function l(t){let e;e="string"==typeof t?t:t?.length?t.reduce(((t,e)=>t+=String.fromCharCode(e)),""):t?t.toString():"";try{return"__wb_post_data="+btoa(e)}catch{return"__wb_post_data="}}function u(t){let{method:e,headers:r,postData:i=""}=t;if("GET"===e)return!1;let o=(t=>{let e=t.get("content-type");if(e)return e;if(!(t instanceof Headers))for(let[e,r]of t.entries())if(e&&"content-type"===e.toLowerCase())return r;return""})(r);function n(t){return t instanceof Uint8Array&&(t=(new TextDecoder).decode(t)),t}let s="";switch(o.split(";")[0]){case"application/x-www-form-urlencoded":s=n(i);break;case"application/json":s=d(n(i));break;case"text/plain":try{s=d(n(i),!1)}catch{s=l(i)}break;case"multipart/form-data":if(!o)throw new Error("utils cannot call postToGetURL when missing content-type header");s=function(t,e){return function(t="",e){let r=new URLSearchParams;t instanceof Uint8Array&&(t=(new TextDecoder).decode(t));try{let i=e.split("boundary=")[1],o=t.split(new RegExp("-*"+i+"-*","mi"));for(let t of o){let e=t.trim().match(/name="([^"]+)"\\r\\n\\r\\n(.*)/im);e&&r.set(e[1],e[2])}}catch{}return r}(t,e).toString()}(n(i),o);break;default:s=l(i)}return null!=s&&(t.url=function(t,e,r){if(!r)return t;let i=t.indexOf("?")>0?"&":"?";return`${t}${i}__wb_method=${r}&${e}`}(t.url,decodeURI(s),t.method),t.method="GET",t.requestBody=s,!0)}function _(t,e=!0){if("string"==typeof t)try{t=JSON.parse(t)}catch{t={}}let r=new URLSearchParams,i={},o=(t,e="")=>{let n="";if("object"!=typeof t||t instanceof Array){if(t instanceof Array)for(let r=0;r<t.length;r++)o(t[r],e)}else try{for(let[e,r]of Object.entries(t))o(r,e)}catch{null===t&&(n="null")}["string","number","boolean"].includes(typeof t)&&(n=t.toString()),n&&r.set((t=>r.has(t)?(t in i||(i[t]=1),t+"."+ ++i[t]+"_"):t)(e),n)};try{o(t)}catch(t){if(!e)throw t}return r}function d(t="",e=!0){return _(t,e).toString()}s.prototype.getItem=function(t){return this.hasOwnProperty(t)?this[t]:null},s.prototype.setItem=function(t,e){var r=String(t),i=String(e),o=this.getItem(r);this[r]=e,this.fireEvent(r,o,i)},s.prototype._deleteItem=function(t){delete this[t]},s.prototype.removeItem=function(t){var e=this.getItem(t);this._deleteItem(t),this.fireEvent(t,e,null)},s.prototype.clear=function(){for(var t in this)delete this[t];this.fireEvent(null,null,null)},s.prototype.key=function(t){var e=function(t){try{switch(typeof t){case"number":case"bigint":return t}var e=Number(t);return isNaN(e)?null:e}catch(t){}return null}(t);if(null==e||e<0)return null;var r=Object.keys(this);return e<r.length?r[e]:null},s.prototype.fireEvent=function(t,e,r){var i=new StorageEvent("storage",{key:t,newValue:r,oldValue:e,url:this[o].$wbwindow.WB_wombat_location.href});Object.defineProperty(i,"storageArea",{value:this,writable:!1,configurable:!1}),i._storageArea=this,this[o].storage_listeners.map(i)},s.prototype.valueOf=function(){return this[o].$wbwindow[this[n]]},s.prototype.toString=function(){return"[object Storage]"},Object.defineProperty(s.prototype,"length",{enumerable:!1,get:function(){return Object.keys(this).length}}),e(s,"Storage"),w.prototype.replace=function(t){var e=this.wombat.rewriteUrl(t),r=this.wombat.extractOriginalURL(e);return r===this.href?r:this._orig_loc.replace(e)},w.prototype.assign=function(t){var e=this.wombat.rewriteUrl(t),r=this.wombat.extractOriginalURL(e);return r===this.href?r:this._orig_loc.assign(e)},w.prototype.reload=function(t){},w.prototype.toString=function(){return this.href},w.prototype.valueOf=function(){return this},e(w,"Location"),h.prototype._initWorker=function(t){var e=this.wombat;if(t.isTop)try{this.worker=new Worker(t.workerURL,{type:"classic",credentials:"include"})}catch(t){console.error("Failed to create auto fetch worker\\n",t)}else this.worker={postMessage:function(t){t.wb_type||(t={wb_type:"aaworker",msg:t}),e.$wbwindow.__WB_replay_top.__orig_postMessage(t,"*")},terminate:function(){}}},h.prototype.extractMediaRulesFromSheet=function(t){var e,r=[];try{e=t.cssRules||t.rules}catch(t){return r}for(var i=0;i<e.length;++i){var o=e[i];o.type===CSSRule.MEDIA_RULE&&r.push(o.cssText)}return r},h.prototype.deferredSheetExtraction=function(t){var e=this;Promise.resolve().then((function(){var r=e.extractMediaRulesFromSheet(t);r.length>0&&e.preserveMedia(r)}))},h.prototype.terminate=function(){this.worker.terminate()},h.prototype.justFetch=function(t){this.worker.postMessage({type:"fetch-all",values:t})},h.prototype.fetchAsPage=function(t,e,r){if(t){var i={"X-Wombat-History-Page":e};if(r){var o=encodeURIComponent(r.trim());r&&(i["X-Wombat-History-Title"]=o)}var n={url:t,options:{headers:i,cache:"no-store"}};this.justFetch([n])}},h.prototype.postMessage=function(t,e){if(e){var r=this;Promise.resolve().then((function(){r.worker.postMessage(t)}))}else this.worker.postMessage(t)},h.prototype.preserveSrcset=function(t,e){this.postMessage({type:"values",srcset:{value:t,mod:e,presplit:!0}},!0)},h.prototype.preserveDataSrcset=function(t){this.postMessage({type:"values",srcset:{value:t.dataset.srcset,mod:this.rwMod(t),presplit:!1}},!0)},h.prototype.preserveMedia=function(t){this.postMessage({type:"values",media:t},!0)},h.prototype.getSrcset=function(t){return this.wombat.wb_getAttribute?this.wombat.wb_getAttribute.call(t,"srcset"):t.getAttribute("srcset")},h.prototype.rwMod=function(t){switch(t.tagName){case"SOURCE":return t.parentElement&&"PICTURE"===t.parentElement.tagName?"im_":"oe_";case"IMG":return"im_"}return"oe_"},h.prototype.extractFromLocalDoc=function(){var t=this;Promise.resolve().then((function(){for(var e={type:"values",context:{docBaseURI:document.baseURI}},r=[],i=0,o=document.styleSheets;i<o.length;++i)r=r.concat(t.extractMediaRulesFromSheet(o[i]));var n,s,a,w=document.querySelectorAll(t.elemSelector),h={values:[],presplit:!1},p={values:[]};for(i=0;i<w.length;++i)s=(n=w[i]).src?n.src:null,a=t.rwMod(n),n.srcset&&h.values.push({srcset:t.getSrcset(n),mod:a,tagSrc:s}),n.dataset.srcset&&h.values.push({srcset:n.dataset.srcset,mod:a,tagSrc:s}),n.dataset.src&&p.values.push({src:n.dataset.src,mod:a}),"SOURCE"===n.tagName&&s&&p.values.push({src:s,mod:a});r.length&&(e.media=r),h.values.length&&(e.srcset=h),p.values.length&&(e.src=p),(e.media||e.srcset||e.src)&&t.postMessage(e)}))};var f=null,b=",,,";Map,Symbol.iterator;function y(e,i){if(!(this instanceof y))return new y(e,i);this.debug_rw=!1,this.$wbwindow=e,this.WBWindow=Window,this.URL=URL,this.origHost=e.location.host,this.origHostname=e.location.hostname,this.origProtocol=e.location.protocol,this.HTTP_PREFIX="http://",this.HTTPS_PREFIX="https://",this.REL_PREFIX="//",this.VALID_PREFIXES=[this.HTTP_PREFIX,this.HTTPS_PREFIX,this.REL_PREFIX],this.IGNORE_PREFIXES=["#","about:","data:","blob:","mailto:","javascript:","{","*"],"ignore_prefixes"in i&&(this.IGNORE_PREFIXES=this.IGNORE_PREFIXES.concat(i.ignore_prefixes)),this.WB_CHECK_THIS_FUNC="_____WB$wombat$check$this$function_____",this.WB_ASSIGN_FUNC="_____WB$wombat$assign$function_____",this.SKIP_OWN_FUNC_PROPS=["name","length","__WB_is_native_func__","arguments","caller","callee","prototype"],this.OVERRIDE_PROPS=["window","self","document","location","top","parent","frames","opener"],this.wb_setAttribute=e.Element.prototype.setAttribute,this.wb_getAttribute=e.Element.prototype.getAttribute,this.wb_funToString=Function.prototype.toString,this.WBAutoFetchWorker=null,this.wbUseAFWorker=i.enable_auto_fetch&&null!=e.Worker&&i.is_live,this.wb_rel_prefix="",this.wb_wombat_updating=!1,this.message_listeners=new t,this.storage_listeners=new t,this.linkAsTypes={script:"js_",worker:"js_",style:"cs_",image:"im_",document:"if_",fetch:"mp_",font:"oe_",audio:"oe_",video:"oe_",embed:"oe_",object:"oe_",track:"oe_","":"mp_",null:"mp_",undefined:"mp_"},this.linkTagMods={linkRelToAs:{import:this.linkAsTypes,preload:this.linkAsTypes},stylesheet:"cs_",null:"mp_",undefined:"mp_","":"mp_"},this.tagToMod={A:{href:"mp_"},AREA:{href:"mp_"},AUDIO:{src:"oe_",poster:"im_"},BASE:{href:"mp_"},EMBED:{src:"oe_"},FORM:{action:"mp_"},FRAME:{src:"fr_"},IFRAME:{src:"if_"},IMAGE:{href:"im_","xlink:href":"im_"},IMG:{src:"im_",srcset:"im_"},INPUT:{src:"oe_"},INS:{cite:"mp_"},META:{content:"mp_"},OBJECT:{data:"oe_",codebase:"oe_"},Q:{cite:"mp_"},SCRIPT:{src:"js_","xlink:href":"js_"},SOURCE:{src:"oe_",srcset:"oe_"},TRACK:{src:"oe_"},VIDEO:{src:"oe_",poster:"im_"},image:{href:"im_","xlink:href":"im_"}},this.URL_PROPS=["href","hash","pathname","host","hostname","protocol","origin","search","port"],this.wb_info=i,this.wb_opts=i.wombat_opts,this.wb_replay_prefix=i.prefix,this.wb_is_proxy=this.wb_info.proxy_magic||!this.wb_replay_prefix,this.wb_info.top_host=this.wb_info.top_host||"*",this.wb_curr_host=e.location.protocol+"//"+e.location.host,this.wb_info.wombat_opts=this.wb_info.wombat_opts||{},this.wb_orig_scheme=this.wb_info.wombat_scheme+"://",this.wb_orig_origin=this.wb_orig_scheme+this.wb_info.wombat_host,this.wb_abs_prefix=this.wb_replay_prefix,this.wb_capture_date_part="",!this.wb_info.is_live&&this.wb_info.wombat_ts&&(this.wb_capture_date_part="/"+this.wb_info.wombat_ts+"/"),this.BAD_PREFIXES=["http:"+this.wb_replay_prefix,"https:"+this.wb_replay_prefix,"http:/"+this.wb_replay_prefix,"https:/"+this.wb_replay_prefix],this.hostnamePortRe=/^[\\w-]+(\\.[\\w-_]+)+(:\\d+)(\\/|$)/,this.ipPortRe=/^\\d+\\.\\d+\\.\\d+\\.\\d+(:\\d+)?(\\/|$)/,this.workerBlobRe=/__WB_pmw\\(.*?\\)\\.(?=postMessage\\()/g,this.rmCheckThisInjectRe=/_____WB\\$wombat\\$check\\$this\\$function_____\\(.*?\\)/g,this.STYLE_REGEX=/(url\\s*\\(\\s*[\\\\"\']*)([^)\'"]+)([\\\\"\']*\\s*\\))/gi,this.IMPORT_REGEX=/(@import\\s*[\\\\"\']*)([^)\'";]+)([\\\\"\']*\\s*;?)/gi,this.IMPORT_JS_REGEX=/^(import\\s*\\([\'"]+)([^\'"]+)(["\'])/i,this.no_wombatRe=/WB_wombat_/g,this.srcsetRe=/\\s*(\\S*\\s+[\\d.]+[wx]),|(?:\\s*,(?:\\s+|(?=https?:)))/,this.cookie_path_regex=/\\bPath=\'?"?([^;\'"\\s]+)/i,this.cookie_domain_regex=/\\bDomain=([^;\'"\\s]+)/i,this.cookie_expires_regex=/\\bExpires=([^;\'"]+)/gi,this.SetCookieRe=/,(?![|])/,this.IP_RX=/^(\\d)+\\.(\\d)+\\.(\\d)+\\.(\\d)+$/,this.FullHTMLRegex=/^\\s*<(?:html|head|body|frameset|frame|!doctype html)/i,this.IsTagRegex=/^\\s*</,this.DotPostMessageRe=/(\\.postMessage\\s*\\()/,this.extractPageUnderModifierRE=/\\/(?:[0-9]{14})?([a-z]{2, 3}_)\\//,this.write_buff="";var o=(e.EventTarget||{}).prototype;this.utilFns={cspViolationListener:function(t){if(console.group("CSP Violation"),console.log("Replayed Page URL",window.WB_wombat_location.href),console.log("The documentURI",t.documentURI),console.log("The blocked URL",t.blockedURI),console.log("The directive violated",t.violatedDirective),console.log("Our policy",t.originalPolicy),t.sourceFile){var e="File: "+t.sourceFile;t.lineNumber&&t.columnNumber?e+=" @ "+t.lineNumber+":"+t.columnNumber:t.lineNumber&&(e+=" @ "+t.lineNumber),console.log(e)}console.groupEnd()},addEventListener:o.addEventListener,removeEventListener:o.removeEventListener,objToString:Object.prototype.toString,wbSheetMediaQChecker:null,XHRopen:null,XHRsend:null},this.showCSPViolations={yesNo:!1,added:!1},r(this)}y.prototype._internalInit=function(){this.initTopFrame(this.$wbwindow),this.initWombatLoc(this.$wbwindow),this.initWombatTop(this.$wbwindow);var t=this.$wbwindow.__WB_replay_top.location.origin,e=this.$wbwindow.__WB_replay_top.location.host,r=this.$wbwindow.__WB_replay_top.location.protocol;this.wb_replay_prefix&&0===this.wb_replay_prefix.indexOf(t)?this.wb_rel_prefix=this.wb_replay_prefix.substring(t.length):this.wb_rel_prefix=this.wb_replay_prefix,this.wb_prefixes=[this.wb_abs_prefix,this.wb_rel_prefix];var i="(("+r+")?//"+e+")?"+this.wb_rel_prefix+"[^/]+/";this.wb_unrewrite_rx=new RegExp(i,"g"),this.wb_info.is_framed&&"bn_"!==this.wb_info.mod&&this.initTopFrameNotify(this.wb_info),this.initAutoFetchWorker()},y.prototype._addRemoveCSPViolationListener=function(t){this.showCSPViolations.yesNo=t,this.showCSPViolations.yesNo&&!this.showCSPViolations.added?(this.showCSPViolations.added=!0,this._addEventListener(document,"securitypolicyviolation",this.utilFns.cspViolationListener)):(this.showCSPViolations.added=!1,this._removeEventListener(document,"securitypolicyviolation",this.utilFns.cspViolationListener))},y.prototype._addEventListener=function(t,e,r){if(this.utilFns.addEventListener)return this.utilFns.addEventListener.call(t,e,r);t.addEventListener(e,r)},y.prototype._removeEventListener=function(t,e,r){if(this.utilFns.removeEventListener)return this.utilFns.removeEventListener.call(t,e,r);t.removeEventListener(e,r)},y.prototype.getPageUnderModifier=function(){try{var t=this.extractPageUnderModifierRE.exec(location.pathname);if(t&&t[1])return t[1].trim()||"mp_"}catch(t){}return"mp_"},y.prototype.isNativeFunction=function(t){return!(!t||"function"!=typeof t)&&(-1!=this.wb_funToString.call(t).indexOf("[native code]")&&(void 0===t.__WB_is_native_func__||!!t.__WB_is_native_func__))},y.prototype.isString=function(t){return null!=t&&Object.getPrototypeOf(t)===String.prototype},y.prototype.blobUrlForIframe=function(t,e){var r=new Blob([e],{type:"text/html"}),i=this.URL.createObjectURL(r),o=this.URL;t.__wb_blobSrc=i,t.addEventListener("load",(function(){t.__wb_blobSrc&&(o.revokeObjectURL(t.__wb_blobSrc),t.__wb_blobSrc=null)}),{once:!0}),t.__wb_origSrc=t.src;var n=i.slice(i.lastIndexOf("/")+1)+"/"+this.wb_info.url;t.src=this.wb_info.prefix+this.wb_info.request_ts+"mp_/blob:"+n},y.prototype.isSavedSrcSrcset=function(t){switch(t.tagName){case"IMG":case"VIDEO":case"AUDIO":return!0;case"SOURCE":if(!t.parentElement)return!1;switch(t.parentElement.tagName){case"PICTURE":case"VIDEO":case"AUDIO":return!0;default:return!1}default:return!1}},y.prototype.isSavedDataSrcSrcset=function(t){return!(!t.dataset||null==t.dataset.srcset)&&this.isSavedSrcSrcset(t)},y.prototype.isHostUrl=function(t){if(0===t.indexOf("www."))return!0;var e=t.match(this.hostnamePortRe);return!!(e&&e[0].length<64)||!!(e=t.match(this.ipPortRe))&&e[0].length<64},y.prototype.isArgumentsObj=function(t){if(!t||"function"!=typeof t.toString)return!1;try{return"[object Arguments]"===this.utilFns.objToString.call(t)}catch(t){return!1}},y.prototype.deproxyArrayHandlingArgumentsObj=function(t){if(!t||t instanceof NodeList||!t.length)return t;for(var e=this.isArgumentsObj(t)?new Array(t.length):t,r=0;r<t.length;++r){const i=this.proxyToObj(t[r]);i!==e[r]&&(e[r]=i)}return e},y.prototype.startsWith=function(t,e){if(t)return 0===t.indexOf(e)?e:void 0},y.prototype.startsWithOneOf=function(t,e){if(t)for(var r=0;r<e.length;r++)if(0===t.indexOf(e[r]))return e[r]},y.prototype.endsWith=function(t,e){if(t)return-1!==t.indexOf(e,t.length-e.length)?e:void 0},y.prototype.shouldRewriteAttr=function(t,e){switch(e){case"href":case"src":case"xlink:href":return!0}return!(!t||!this.tagToMod[t]||void 0===this.tagToMod[t][e])||("VIDEO"===t&&"poster"===e||"META"===t&&"content"===e)},y.prototype.skipWrapScriptBasedOnType=function(t){return!!t&&(!(t.indexOf("javascript")>=0||t.indexOf("ecmascript")>=0)&&(t.indexOf("json")>=0||t.indexOf("text/")>=0))},y.prototype.skipWrapScriptTextBasedOnText=function(t,e){if(!t||t.indexOf(this.WB_ASSIGN_FUNC)>=0||0===t.indexOf("<"))return!0;let r=!1;for(const i of this.OVERRIDE_PROPS){t.indexOf(i)>=0&&(t.indexOf("var "+i)>=0&&e.push(i),r=!0)}return!r},y.prototype.nodeHasChildren=function(t){if(!t)return!1;if("function"==typeof t.hasChildNodes)return t.hasChildNodes();var e=t.children||t.childNodes;return!!e&&e.length>0},y.prototype.rwModForElement=function(t,e){if(t){var r="mp_";if("LINK"===t.tagName&&"href"===e){if(t.rel){var i=t.rel.trim().toLowerCase(),o=this.wb_getAttribute.call(t,"as");if(o&&null!=this.linkTagMods.linkRelToAs[i])r=this.linkTagMods.linkRelToAs[i][o.toLowerCase()];else null!=this.linkTagMods[i]&&(r=this.linkTagMods[i])}}else{if("SCRIPT"===t.tagName)return"module"===t.type?"esm_":"js_";var n=this.tagToMod[t.tagName];null!=n&&(r=n[e])}return r}},y.prototype.removeWBOSRC=function(t){"SCRIPT"!==t.tagName||t.__$removedWBOSRC$__||(t.hasAttribute("__wb_orig_src")&&t.removeAttribute("__wb_orig_src"),t.__$removedWBOSRC$__=!0)},y.prototype.retrieveWBOSRC=function(t){var e;if("SCRIPT"===t.tagName&&!t.__$removedWBOSRC$__)return null==(e=this.wb_getAttribute?this.wb_getAttribute.call(t,"__wb_orig_src"):t.getAttribute("__wb_orig_src"))&&(t.__$removedWBOSRC$__=!0),e},y.prototype.wrapScriptTextJsProxy=function(t,e=[]){let r="var _____WB$wombat$assign$function_____ = function(name) {return (self._wb_wombat && self._wb_wombat.local_init && self._wb_wombat.local_init(name)) || self[name]; };\\nif (!self.__WB_pmw) { self.__WB_pmw = function(obj) { this.__WB_source = obj; return this; } }\\n{\\n";for(const t of this.OVERRIDE_PROPS)e.includes(t)||(r+=`let ${t} = _____WB$wombat$assign$function_____("${t}");\\n`);return r+="{\\n",r+t.replace(this.DotPostMessageRe,".__WB_pmw(self.window)$1")+"\\n\\n}}"},y.prototype.watchElem=function(t,e){if(!this.$wbwindow.MutationObserver)return!1;new this.$wbwindow.MutationObserver((function(t,r){for(var i=0;i<t.length;i++){var o=t[i];if("childList"===o.type)for(var n=0;n<o.addedNodes.length;n++)e(o.addedNodes[n])}})).observe(t,{childList:!0,subtree:!0})},y.prototype.reconstructDocType=function(t){return null==t?"":"<!doctype "+t.name+(t.publicId?\' PUBLIC "\'+t.publicId+\'"\':"")+(!t.publicId&&t.systemId?" SYSTEM":"")+(t.systemId?\' "\'+t.systemId+\'"\':"")+">"},y.prototype.getFinalUrl=function(t,e,r){var i=t?this.wb_rel_prefix:this.wb_abs_prefix;return null==e&&(e=this.wb_info.mod),this.wb_info.is_live||(i+=this.wb_info.wombat_ts),"/"!==(i+=e)[i.length-1]&&(i+="/"),i+r},y.prototype.resolveRelUrl=function(t,e){var r=this;function i(t){return!(!t||!t.baseURI)&&(t.baseURI.startsWith(r.HTTPS_PREFIX)||t.baseURI.startsWith(r.HTTP_PREFIX))}var o=null;return o=i(e)?e.baseURI:i(this.$wbwindow.document)?this.$wbwindow.document.baseURI:this.$wbwindow.__WB_replay_top.document.baseURI,new this.URL(t,o).href},y.prototype.extractOriginalURL=function(t){if(!t)return"";if(this.wb_is_proxy)return t;var e,r=t.toString(),i=r;if(this.startsWithOneOf(i,this.IGNORE_PREFIXES))return i;if(i.startsWith(this.wb_info.static_prefix))return i;e=this.startsWith(i,this.wb_abs_prefix)?this.wb_abs_prefix.length:this.wb_rel_prefix&&this.startsWith(i,this.wb_rel_prefix)?this.wb_rel_prefix.length:this.wb_rel_prefix?1:0;var o=i.indexOf("/http",e);return o<0&&(o=i.indexOf("///",e)),o<0&&(o=i.indexOf("/blob:",e)),o<0&&(o=i.indexOf("/about:blank",e)),o>=0?i=i.substr(o+1):((o=i.indexOf(this.wb_replay_prefix))>=0&&(i=i.substr(o+this.wb_replay_prefix.length)),i.length>4&&"_"===i.charAt(2)&&"/"===i.charAt(3)&&(i=i.substr(4)),i===r||this.startsWithOneOf(i,this.VALID_PREFIXES)||this.startsWith(i,"blob:")||(i=this.wb_orig_scheme+i)),"/"===r.charAt(0)&&"/"!==r.charAt(1)&&this.startsWith(i,this.wb_orig_origin)&&(i=i.substr(this.wb_orig_origin.length)),this.startsWith(i,this.REL_PREFIX)?this.wb_info.wombat_scheme+":"+i:i},y.prototype.makeParser=function(t,e){var r=this.extractOriginalURL(t),i=e;return e||(i="about:blank"===this.$wbwindow.location.href&&this.$wbwindow.opener?this.$wbwindow.opener.document:this.$wbwindow.document),this._makeURLParser(r,i)},y.prototype._makeURLParser=function(t,e){try{return new this.URL(t,e.baseURI)}catch(t){}var r=e.createElement("a");return r._no_rewrite=!0,r.href=t,r},y.prototype.defProp=function(t,e,r,i,o){var n=Object.getOwnPropertyDescriptor(t,e);if(n&&!n.configurable)return!1;if(!i)return!1;var s={configurable:!0,enumerable:o||!1,get:i};r&&(s.set=r);try{return Object.defineProperty(t,e,s),!0}catch(t){return console.warn("Failed to redefine property %s",e,t.message),!1}},y.prototype.defGetterProp=function(t,e,r,i){var o=Object.getOwnPropertyDescriptor(t,e);if(o&&!o.configurable)return!1;if(!r)return!1;try{return Object.defineProperty(t,e,{configurable:!0,enumerable:i||!1,get:r}),!0}catch(t){return console.warn("Failed to redefine property %s",e,t.message),!1}},y.prototype.getOrigGetter=function(t,e){var r;if(t.__lookupGetter__&&(r=t.__lookupGetter__(e)),!r&&Object.getOwnPropertyDescriptor){var i=Object.getOwnPropertyDescriptor(t,e);i&&(r=i.get)}return r},y.prototype.getOrigSetter=function(t,e){var r;if(t.__lookupSetter__&&(r=t.__lookupSetter__(e)),!r&&Object.getOwnPropertyDescriptor){var i=Object.getOwnPropertyDescriptor(t,e);i&&(r=i.set)}return r},y.prototype.getAllOwnProps=function(t){for(var e=[],r=Object.getOwnPropertyNames(t),i=0;i<r.length;i++){var o=r[i];try{t[o]&&!t[o].prototype&&e.push(o)}catch(t){}}for(var n=Object.getPrototypeOf(t);n;){for(r=Object.getOwnPropertyNames(n),i=0;i<r.length;i++)e.push(r[i]);n=Object.getPrototypeOf(n)}return e},y.prototype.sendTopMessage=function(t,e,r){(r=r||this.$wbwindow).__WB_top_frame&&(e||r==r.__WB_replay_top)&&r.__WB_top_frame.postMessage(t,this.wb_info.top_host)},y.prototype.sendHistoryUpdate=function(t,e,r){this.sendTopMessage({url:t,ts:this.wb_info.timestamp,request_ts:this.wb_info.request_ts,is_live:this.wb_info.is_live,title:e,wb_type:"replace-url"},!1,r)},y.prototype.updateLocation=function(t,e,r){if(t&&t!==e){var i=this.extractOriginalURL(e),o=this.extractOriginalURL(t);if(i&&i!==o){var n=this.rewriteUrl(t);console.log(r.href+" -> "+n),r.href=n}}},y.prototype.checkLocationChange=function(t,e){var r=typeof t,i=e?this.$wbwindow.__WB_replay_top.location:this.$wbwindow.location;"string"===r?this.updateLocation(t,i.href,i):"object"===r&&this.updateLocation(t.href,t._orig_href,i)},y.prototype.checkAllLocations=function(){if(this.wb_wombat_updating)return!1;this.wb_wombat_updating=!0,this.checkLocationChange(this.$wbwindow.WB_wombat_location,!1),this.$wbwindow.WB_wombat_location!=this.$wbwindow.__WB_replay_top.WB_wombat_location&&this.checkLocationChange(this.$wbwindow.__WB_replay_top.WB_wombat_location,!0),this.wb_wombat_updating=!1},y.prototype.proxyToObj=function(t){if(t)try{var e=t.__WBProxyRealObj__;if(e)return e}catch(t){}return t},y.prototype.objToProxy=function(t){if(t)try{var e=t._WB_wombat_obj_proxy;if(e)return e}catch(t){}return t},y.prototype.defaultProxyGet=function(t,e,r,i){switch(e){case"__WBProxyRealObj__":return t;case"location":case"WB_wombat_location":return t.WB_wombat_location;case"_WB_wombat_obj_proxy":return t._WB_wombat_obj_proxy;case"__WB_pmw":case this.WB_ASSIGN_FUNC:case this.WB_CHECK_THIS_FUNC:return t[e];case"origin":return t.WB_wombat_location.origin;case"constructor":return t.constructor}var o=Reflect.get(t,e),n=typeof o;if("string"===n&&o){var s=parseInt(e);if(o&&!isNaN(s))try{return this.initNewWindowWombat(o),o._WB_wombat_obj_proxy}catch(t){}}else{if("function"===n&&-1!==r.indexOf(e)){switch(e){case"requestAnimationFrame":case"cancelAnimationFrame":if(!this.isNativeFunction(o))return o;break;case"eval":if(this.isNativeFunction(o))return this.wrappedEval(o)}var a=i[e];if(!a||a.original!==o){const r=o.bind(t);for(const t of Object.getOwnPropertyNames(o))if(!this.SKIP_OWN_FUNC_PROPS.includes(t))try{r[t]=o[t]}catch(t){}return i[e]={original:o,boundFn:r},r}return a.boundFn}if("object"===n&&o&&o._WB_wombat_obj_proxy)return o instanceof this.WBWindow&&this.initNewWindowWombat(o),o._WB_wombat_obj_proxy}return o},y.prototype.setLoc=function(t,e){var r=this.makeParser(e,t.ownerDocument);t._orig_href=e,t._parser=r;var i=r.href;t._hash=r.hash,t._href=i,t._host=r.host,t._hostname=r.hostname,r.origin?t._origin=r.host?r.origin:"null":t._origin=r.protocol+"//"+r.hostname+(r.port?":"+r.port:""),t._pathname=r.pathname,t._port=r.port,t._protocol=r.protocol,t._search=r.search,Object.defineProperty||(t.href=i,t.hash=r.hash,t.host=t._host,t.hostname=t._hostname,t.origin=t._origin,t.pathname=t._pathname,t.port=t._port,t.protocol=t._protocol,t.search=t._search)},y.prototype.makeGetLocProp=function(t,e){var r=this;return function(){if(this._no_rewrite)return e.call(this,t);var i=e.call(this,"href");return"href"===t?r.extractOriginalURL(i):"ancestorOrigins"===t?[]:(this._orig_href!==i&&r.setLoc(this,i),this["_"+t])}},y.prototype.makeSetLocProp=function(t,e,r){var i=this;return function(o){if(this._no_rewrite)return e.call(this,t,o);if(this["_"+t]!==o){this["_"+t]=o;var n=r.call(this),s=i.makeParser(n,this.ownerDocument),a=!1;if("href"===t&&"string"==typeof o)if(o&&s instanceof i.URL)try{o=new i.URL(o,s).href}catch(t){console.warn("Error resolving URL",t)}else o&&("."===o[0]||"#"===o[0]?o=i.resolveRelUrl(o,this.ownerDocument):"/"===o[0]&&(o.length>1&&"/"===o[1]?o=s.protocol+o:(a=!0,o=WB_wombat_location.origin+o)));try{s[t]=o}catch(e){console.log("Error setting "+t+" = "+o)}"hash"===t?(o=s[t],e.call(this,"hash",o)):(a=a||o===s.pathname,o=i.rewriteUrl(s.href,a),e.call(this,"href",o))}}},y.prototype.styleReplacer=function(t,e,r,i,o,n){return e+this.rewriteUrl(r)+i},y.prototype.domConstructorErrorChecker=function(t,e,r,i){var o,n="number"==typeof i?i:1;if(t instanceof this.WBWindow?o="Failed to construct \'"+e+"\': Please use the \'new\' operator, this DOM object constructor cannot be called as a function.":r&&r.length<n&&(o="Failed to construct \'"+e+"\': "+n+" argument required, but only 0 present."),o)throw new TypeError(o)},y.prototype.rewriteNodeFuncArgs=function(t,e,r,i){if(r)switch(r.nodeType){case Node.ELEMENT_NODE:this.rewriteElemComplete(r);break;case Node.TEXT_NODE:("STYLE"===t.tagName||r.parentNode&&"STYLE"===r.parentNode.tagName)&&(r.textContent=this.rewriteStyle(r.textContent));break;case Node.DOCUMENT_FRAGMENT_NODE:this.recurseRewriteElem(r)}var o=e.call(t,r,i);if(o&&"IFRAME"===o.tagName){const t=o.allow?`; ${o.allow}`:"";o.allow=`autoplay \'self\'; fullscreen \'self\'${t}`,this.initIframeWombat(o)}return o},y.prototype.rewriteWSURL=function(t){if(!t)return t;var e=typeof t,r=t;if("object"===e)r=t.toString();else if("string"!==e)return t;if(!r)return r;var i="ws://",o="wss://";if(this.wb_is_proxy)return this.wb_orig_scheme===this.HTTP_PREFIX&&this.startsWith(r,o)?i+r.substr(o.length):this.wb_orig_scheme===this.HTTPS_PREFIX&&this.startsWith(r,i)?o+r.substr(i.length):r;var n=0===this.wb_abs_prefix.indexOf(this.HTTPS_PREFIX),s=this.wb_abs_prefix.replace(n?this.HTTPS_PREFIX:this.HTTP_PREFIX,n?o:i);return s+=this.wb_info.wombat_ts+"ws_","/"!==r[r.length-1]&&(s+="/"),s+r.replace("WB_wombat_","")},y.prototype.rewriteUrl_=function(t,e,r,i){if(!t)return t;var o,n,s=typeof t;if("object"===s)o=t.toString();else{if("string"!==s)return t;o=t}if(!o)return o;if(this.wb_is_proxy)return this.wb_orig_scheme===this.HTTP_PREFIX&&this.startsWith(o,this.HTTPS_PREFIX)?this.HTTP_PREFIX+o.substr(this.HTTPS_PREFIX.length):this.wb_orig_scheme===this.HTTPS_PREFIX&&this.startsWith(o,this.HTTP_PREFIX)?this.HTTPS_PREFIX+o.substr(this.HTTP_PREFIX.length):o;if(o=o.replace("WB_wombat_",""),"if_"===r&&this.wb_info.isSW&&this.startsWith(o,"blob:"))return this.wb_info.prefix+this.wb_info.request_ts+"if_/"+o;if(this.startsWithOneOf(o.toLowerCase(),this.IGNORE_PREFIXES))return o;if(this.wb_opts.no_rewrite_prefixes&&this.startsWithOneOf(o,this.wb_opts.no_rewrite_prefixes))return o;if(n=0===o.indexOf("//")?this.origProtocol+o:o,this.startsWith(n,this.wb_abs_prefix)||this.startsWith(n,this.wb_rel_prefix))return o;if(this.origHost!==this.origHostname&&this.startsWith(o,this.origProtocol+"//"+this.origHostname+"/"))return o.replace("/"+this.origHostname+"/","/"+this.origHost+"/");if("/"===o.charAt(0)&&!this.startsWith(o,this.REL_PREFIX)){if(this.wb_capture_date_part&&o.indexOf(this.wb_capture_date_part)>=0)return o;if(0===o.indexOf(this.wb_rel_prefix)&&o.indexOf("http")>1){var a=o.indexOf(":/");return a>0&&"/"!==o[a+2]?o.substring(0,a+2)+"/"+o.substring(a+2):o}return this.getFinalUrl(!0,r,this.wb_orig_origin+o)}"."===o.charAt(0)&&(o=this.resolveRelUrl(o,i));var w=this.startsWithOneOf(o.toLowerCase(),this.VALID_PREFIXES);if(w){var h=this.replayTopHost,p=this.replayTopProtocol,c=w+h+"/";if(this.startsWith(o,c)){if(this.startsWith(o,this.wb_replay_prefix))return o;var l=p+"//",u=o.substring(c.length),_=!1;return u.indexOf(this.wb_rel_prefix)<0&&o.indexOf("/static/")<0&&(u=this.getFinalUrl(!0,r,WB_wombat_location.origin+"/"+u),_=!0),w!==l&&w!==this.REL_PREFIX&&(_=!0),_&&(o=e?"":l+h,u&&"/"!==u[0]&&(o+="/"),o+=u),o}return this.getFinalUrl(e,r,o)}return(w=this.startsWithOneOf(o,this.BAD_PREFIXES))?this.getFinalUrl(e,r,this.extractOriginalURL(o)):o},y.prototype.rewriteUrl=function(t,e,r,i){var o;return o=this.wb_info.rewrite_function?this.wb_info.rewrite_function(t,e,r,i):this.rewriteUrl_(t,e,r,i),this.debug_rw&&(t!==o?console.log("REWRITE: "+t+" -> "+o):console.log("NOT REWRITTEN "+t)),o},y.prototype.performAttributeRewrite=function(t,e,r,i,o){switch(e){case"innerHTML":case"outerHTML":return this.rewriteHtml(r);case"filter":return this.rewriteInlineStyle(r);case"style":return this.rewriteStyle(r);case"srcset":return this.rewriteSrcset(r,t)}if(o&&!this.startsWithOneOf(r,this.VALID_PREFIXES))return r;var n=this.rwModForElement(t,e);t&&this.wbUseAFWorker&&this.WBAutoFetchWorker&&this.isSavedDataSrcSrcset(t)&&this.WBAutoFetchWorker.preserveDataSrcset(t);var s=this.rewriteUrl(r,!1,n,i);return"esm_"===n&&s&&s.indexOf("esm_/")<0&&(s=s.replace(/(\\/[\\d]*)([\\w]+_)(?=\\/)/,"$1esm_")),s},y.prototype.rewriteAttr=function(t,e,r){var i=!1;if(!t||!t.getAttribute||t._no_rewrite||t["_"+e]||t.tagName&&t.tagName.indexOf("-")>0)return i;var o=this.wb_getAttribute.call(this.proxyToObj(t),e);if(!o||this.startsWith(o,"javascript:"))return i;var n=this.performAttributeRewrite(t,e,o,t.ownerDocument,r);return n!==o&&(this.removeWBOSRC(t),this.wb_setAttribute.call(t,e,n),i=!0),i},y.prototype.noExceptRewriteStyle=function(t){try{return this.rewriteStyle(t)}catch(e){return t}},y.prototype.rewriteStyle=function(t){if(!t)return t;var e=t;return"object"==typeof t&&(e=t.toString()),"string"==typeof e?e.replace(this.STYLE_REGEX,this.styleReplacer).replace(this.IMPORT_REGEX,this.styleReplacer).replace(this.no_wombatRe,""):e},y.prototype.rewriteSrcset=function(t,e){if(!t)return"";for(var r=t.split(this.srcsetRe),i=[],o=this.rwModForElement(e,"srcset"),n=0;n<r.length;n++){var s=r[n];if(s){var a=s.trim().split(" ");a[0]=this.rewriteUrl(a[0],!0,o),i.push(a.join(" "))}}return this.wbUseAFWorker&&this.WBAutoFetchWorker&&this.isSavedSrcSrcset(e)&&this.WBAutoFetchWorker.preserveSrcset(i,this.WBAutoFetchWorker.rwMod(e)),i.join(", ")},y.prototype.rewriteFrameSrc=function(t,e){var r,i=this.wb_getAttribute.call(t,e);if(this.startsWith(i,"javascript:")&&i.indexOf("WB_wombat_")>=0){var o="javascript:";r=o+"window.parent._wb_wombat.initNewWindowWombat(window);"+i.substr(o.length)}return r||(r=this.rewriteUrl(i,!1,this.rwModForElement(t,e))),r!==i&&(this.wb_setAttribute.call(t,e,r),!0)},y.prototype.rewriteScript=function(t){if(t.hasAttribute("src")||!t.textContent||!this.$wbwindow.Proxy)return this.rewriteAttr(t,"src");if(this.skipWrapScriptBasedOnType(t.type))return!1;var e=t.textContent.trim(),r=[];return!this.skipWrapScriptTextBasedOnText(e,r)&&(t.textContent=this.wrapScriptTextJsProxy(e,r),this.wb_info.injectDocClose&&t.textContent.trim().length&&(t.textContent+=";document.close();"),!0)},y.prototype.rewriteSVGElem=function(t){var e=this.rewriteAttr(t,"filter");return e=this.rewriteAttr(t,"style")||e,e=this.rewriteAttr(t,"xlink:href")||e,e=this.rewriteAttr(t,"href")||e,e=this.rewriteAttr(t,"src")||e},y.prototype.rewriteElem=function(t){var e=!1;if(!t)return e;if(t instanceof SVGElement)e=this.rewriteSVGElem(t);else switch(t.tagName){case"META":var r=this.wb_getAttribute.call(t,"http-equiv");r&&"content-security-policy"===r.toLowerCase()&&(this.wb_setAttribute.call(t,"http-equiv","_"+r),e=!0);break;case"STYLE":var i=this.rewriteStyle(t.textContent);t.textContent!==i&&(t.textContent=i,e=!0,this.wbUseAFWorker&&this.WBAutoFetchWorker&&null!=t.sheet&&this.WBAutoFetchWorker.deferredSheetExtraction(t.sheet));break;case"LINK":e=this.rewriteAttr(t,"href"),this.wbUseAFWorker&&"stylesheet"===t.rel&&this._addEventListener(t,"load",this.utilFns.wbSheetMediaQChecker);break;case"IMG":e=this.rewriteAttr(t,"src"),e=this.rewriteAttr(t,"srcset")||e,e=this.rewriteAttr(t,"style")||e,this.wbUseAFWorker&&this.WBAutoFetchWorker&&t.dataset.srcset&&this.WBAutoFetchWorker.preserveDataSrcset(t);break;case"OBJECT":var o;if(this.wb_info.isSW&&t.parentElement)if("application/pdf"===t.getAttribute("type")?o="IFRAME":"image/svg+xml"===t.getAttribute("type")&&(o="IMG"),o){for(var n=this.$wbwindow.document.createElement(o),s=0;s<t.attributes.length;s++){var a=t.attributes[s],w=a.name;"data"===w&&(w="src"),this.wb_setAttribute.call(n,w,a.value)}t.parentElement.replaceChild(n,t),e=!0;break}e=this.rewriteAttr(t,"data",!0),e=this.rewriteAttr(t,"style")||e;break;case"FORM":e=this.rewriteAttr(t,"poster"),e=this.rewriteAttr(t,"action")||e,e=this.rewriteAttr(t,"style")||e;break;case"IFRAME":if(e=this.rewriteFrameSrc(t,"src"),this.wb_info.isSW&&!e){var h=t.getAttribute("srcdoc");if(t.hasAttribute("srcdoc")&&t.removeAttribute("srcdoc"),h)this.blobUrlForIframe(t,h);else{var p=t.getAttribute("src");p&&"about:blank"!==p||(p||(t.__WB_blank=!0),t.src=this.wb_info.prefix+this.wb_info.request_ts+"mp_/about:blank")}}e=this.rewriteAttr(t,"style")||e;break;case"FRAME":e=this.rewriteFrameSrc(t,"src"),e=this.rewriteAttr(t,"style")||e;break;case"SCRIPT":e=this.rewriteScript(t);break;case"A":if(e=this.rewriteAttr(t,"href")||e,e=this.rewriteAttr(t,"style")||e,t.hasAttribute("target")){var c=this.rewriteAttrTarget(t.target);c!==t.target&&(t.target=c,e=!0)}break;default:e=this.rewriteAttr(t,"src"),e=this.rewriteAttr(t,"srcset")||e,e=this.rewriteAttr(t,"href")||e,e=this.rewriteAttr(t,"style")||e,e=this.rewriteAttr(t,"poster")||e,e=this.rewriteAttr(t,"background")||e}return t.hasAttribute&&t.removeAttribute&&(t.hasAttribute("crossorigin")&&(t.removeAttribute("crossorigin"),e=!0),t.hasAttribute("integrity")&&(t.removeAttribute("integrity"),e=!0)),e},y.prototype.recurseRewriteElem=function(t){if(!this.nodeHasChildren(t))return!1;for(var e=!1,r=[t.children||t.childNodes];r.length>0;)for(var i=r.shift(),o=0;o<i.length;o++){var n=i[o];n.nodeType===Node.ELEMENT_NODE&&(e=this.rewriteElem(n)||e,this.nodeHasChildren(n)&&r.push(n.children||n.childNodes))}return e},y.prototype.rewriteElemComplete=function(t){if(!t)return!1;var e=this.rewriteElem(t),r=this.recurseRewriteElem(t);return e||r},y.prototype.rewriteElementsInArguments=function(t){for(var e=new Array(t.length),r=0;r<t.length;r++){var i=t[r];i instanceof Node?(this.rewriteElemComplete(i),e[r]=i):e[r]="string"==typeof i?this.rewriteHtml(i):i}return e},y.prototype.rewriteHtml=function(t,e){if(!t)return t;var r=t;if("string"!=typeof t&&(r=t.toString()),this.write_buff&&(r=this.write_buff+r,this.write_buff=""),r.indexOf("<script")<=0&&r.indexOf("WB_wombat_")>=0&&(r=r.replace(/((id|class)=".*)WB_wombat_([^"]+)/,"$1$3")),!this.$wbwindow.HTMLTemplateElement||this.FullHTMLRegex.test(r))return this.rewriteHtmlFull(r,e);var i=(new DOMParser).parseFromString("<template>"+r+"</template>","text/html");if(!i||!this.nodeHasChildren(i.head)||!i.head.children[0].content)return r;var o=i.head.children[0];if(o._no_rewrite=!0,this.recurseRewriteElem(o.content)){var n=o.innerHTML;if(e){var s=o.content.children&&o.content.children[0];if(s){var a="</"+s.tagName.toLowerCase()+">";if(this.endsWith(n,a)&&!this.endsWith(r.toLowerCase(),a))n=n.substring(0,n.length-a.length);else if(n.trimEnd().endsWith(a)&&!r.trimEnd().endsWith(a)){var w=r.lastIndexOf(a);w>0&&(n+=r.slice(w+a.length))}}else if("<"!==r[0]||">"!==r[r.length-1])return void(this.write_buff+=r)}return n}return r},y.prototype.rewriteHtmlFull=function(t,e){var r=(new DOMParser).parseFromString(t,"text/html");if(!r)return t;for(var i=!1,o=0;o<r.all.length;o++)i=this.rewriteElem(r.all[o])||i;if(i){var n;if(t&&t.indexOf("<html")>=0)r.documentElement._no_rewrite=!0,n=this.reconstructDocType(r.doctype)+r.documentElement.outerHTML;else{r.head._no_rewrite=!0,r.body._no_rewrite=!0;var s=this.nodeHasChildren(r.head),a=this.nodeHasChildren(r.body);if(n=(s?r.head.outerHTML:"")+(a?r.body.outerHTML:""),e)if(r.all.length>3){var w="</"+r.all[3].tagName.toLowerCase()+">";this.endsWith(n,w)&&!this.endsWith(t.toLowerCase(),w)&&(n=n.substring(0,n.length-w.length))}else if("<"!==t[0]||">"!==t[t.length-1])return void(this.write_buff+=t);n=this.reconstructDocType(r.doctype)+n}return n}return t},y.prototype.rewriteInlineStyle=function(t){var e;try{e=decodeURIComponent(t)}catch(r){e=t}if(e!==t){var r=this.rewriteStyle(e).split(",",2);return r[0]+","+encodeURIComponent(r[1])}return this.rewriteStyle(t)},y.prototype.rewriteCookie=function(t){var e=this,r=t.replace(this.wb_abs_prefix,"").replace(this.wb_rel_prefix,"");return r=r.replace(this.cookie_domain_regex,(function(t,i){var o={domain:i,cookie:r,wb_type:"cookie"};return e.sendTopMessage(o,!0),e.$wbwindow.location.hostname.indexOf(".")>=0&&!e.IP_RX.test(e.$wbwindow.location.hostname)?"Domain=."+e.$wbwindow.location.hostname:""})).replace(this.cookie_path_regex,(function(t,r){var i=e.rewriteUrl(r);return 0===i.indexOf(e.wb_curr_host)&&(i=i.substring(e.wb_curr_host.length)),"Path="+i})),"https:"!==e.$wbwindow.location.protocol&&(r=r.replace("secure","")),r.replace(",|",",")},y.prototype.rewriteWorker=function(t){if(!t)return t;var e=0===(t=t.toString()).indexOf("blob:"),r=0===t.indexOf("javascript:");if(!e&&!r){if(!this.startsWithOneOf(t,this.VALID_PREFIXES)&&!this.startsWith(t,"/")&&!this.startsWithOneOf(t,this.BAD_PREFIXES)){var i=this.resolveRelUrl(t,this.$wbwindow.document);return this.rewriteUrl(i,!1,"wkr_",this.$wbwindow.document)}return this.rewriteUrl(t,!1,"wkr_",this.$wbwindow.document)}var o=r?t.replace("javascript:",""):null;if(e){var n=new XMLHttpRequest;this.utilFns.XHRopen.call(n,"GET",t,!1),this.utilFns.XHRsend.call(n),o=n.responseText.replace(this.workerBlobRe,"").replace(this.rmCheckThisInjectRe,"this")}if(this.wb_info.static_prefix||this.wb_info.ww_rw_script){var s=this.$wbwindow.document.baseURI;o="(function() { self.importScripts(\'"+(this.wb_info.ww_rw_script||this.wb_info.static_prefix+"wombatWorkers.js")+"\'); new WBWombat({\'prefix\': \'"+this.wb_abs_prefix+"\', \'prefixMod\': \'"+this.wb_abs_prefix+"wkrf_/\', \'originalURL\': "+JSON.stringify(s)+"}); })();"+o}var a=new Blob([o],{type:"application/javascript"});return this.URL.createObjectURL(a)},y.prototype.rewriteTextNodeFn=function(t,e,r){var i,o=this.proxyToObj(t);if(r.length>0&&o.parentElement&&"STYLE"===o.parentElement.tagName){i=new Array(r.length);var n=r.length-1;2===n?(i[0]=r[0],i[1]=r[1]):1===n&&(i[0]=r[0]),i[n]=this.rewriteStyle(r[n])}else i=r;return e.__WB_orig_apply?e.__WB_orig_apply(o,i):e.apply(o,i)},y.prototype.rewriteChildNodeFn=function(t,e,r){var i=this.proxyToObj(t);if(0===r.length)return e.call(i);var o=this.rewriteElementsInArguments(r);return e.__WB_orig_apply?e.__WB_orig_apply(i,o):e.apply(i,o)},y.prototype.rewriteInsertAdjHTMLOrElemArgs=function(t,e,r,i,o){var n=this.proxyToObj(t);return n._no_rewrite?e.call(n,r,i):o?e.call(n,r,this.rewriteHtml(i)):(this.rewriteElemComplete(i),e.call(n,r,i))},y.prototype.rewriteSetTimeoutInterval=function(t,e,r){var i=this.isString(r[0]),o=i?new Array(r.length):r;if(i){this.$wbwindow.Proxy?o[0]=this.wrapScriptTextJsProxy(r[0]):o[0]=r[0].replace(/\\blocation\\b/g,"WB_wombat_$&");for(var n=1;n<r.length;++n)o[n]=this.proxyToObj(r[n])}var s=this.proxyToObj(t);return e.__WB_orig_apply?e.__WB_orig_apply(s,o):e.apply(s,o)},y.prototype.rewriteHTMLAssign=function(t,e,r){var i=r,o=t.tagName;if(!(t._no_rewrite||t instanceof this.$wbwindow.HTMLTemplateElement))if("STYLE"===o)i=this.rewriteStyle(r);else if("SCRIPT"===o){r&&this.IsTagRegex.test(r)&&(i=this.rewriteHtml(r));var n=[];i===r&&(this.skipWrapScriptBasedOnType(t.type)||this.skipWrapScriptTextBasedOnText(r,n)||(i=this.wrapScriptTextJsProxy(i,n)))}else i=this.rewriteHtml(r);e.call(t,i),this.wbUseAFWorker&&this.WBAutoFetchWorker&&"STYLE"===o&&null!=t.sheet&&this.WBAutoFetchWorker.deferredSheetExtraction(t.sheet)},y.prototype.rewriteEvalArg=function(t,e,r){this.$wbwindow.TrustedScript&&e instanceof this.$wbwindow.TrustedScript&&(e=e.toString());var i=[];return t(this.isString(e)&&!this.skipWrapScriptTextBasedOnText(e,i)?this.wrapScriptTextJsProxy(e,i):this.otherEvalRewrite(e),r)},y.prototype.otherEvalRewrite=function(t){return"string"!=typeof t?t:t.replace(this.IMPORT_JS_REGEX,this.styleReplacer)},y.prototype.addEventOverride=function(t,e){var r=e;e||(r=this.$wbwindow.MessageEvent.prototype);var i=this.getOrigGetter(r,t);i&&this.defGetterProp(r,t,(function(){return null!=this["_"+t]?this["_"+t]:i.call(this)}))},y.prototype.isAttrObjRewrite=function(t){if(!t)return!1;var e=t.ownerElement&&t.ownerElement.tagName;return this.shouldRewriteAttr(e,t.nodeName)},y.prototype.newAttrObjGetSet=function(t,e){var r=this,i=this.getOrigGetter(t,e),o=this.getOrigSetter(t,e);this.defProp(t,e,(function(t){var e=r.proxyToObj(this),i=t;return r.isAttrObjRewrite(e)&&(i=r.performAttributeRewrite(e.ownerElement,e.name,t,e.ownerDocument,!1)),o.call(e,i)}),(function(){var t=r.proxyToObj(this),e=i.call(t);return r.isAttrObjRewrite(t)?r.extractOriginalURL(e):e}))},y.prototype.overrideAttrProps=function(){var t=this.$wbwindow.Attr.prototype;this.newAttrObjGetSet(t,"value"),this.newAttrObjGetSet(t,"nodeValue"),this.newAttrObjGetSet(t,"textContent")},y.prototype.overrideAttr=function(t,e,r){var i=this.getOrigGetter(t,e),o=this.getOrigSetter(t,e),n=this;this.defProp(t,e,(function(t){"js_"===r&&(this.__$removedWBOSRC$__||n.removeWBOSRC(this),"module"===this.type&&(r="esm_"));var i=n.rewriteUrl(t,!1,r);return o?o.call(this,i):n.wb_setAttribute?n.wb_setAttribute.call(this,e,i):void 0}),(function(){var t;return i?t=i.call(this):n.wb_getAttribute&&(t=n.wb_getAttribute.call(this,e)),t=n.extractOriginalURL(t),this.__WB_blank&&"about:blank"===t?"":t}))},y.prototype.overridePropExtract=function(t,e){var r=this.getOrigGetter(t,e),i=this;if(r){this.defGetterProp(t,e,(function(){var t=i.proxyToObj(this),e=r.call(t);return t.__WB_no_unrewrite?e:i.extractOriginalURL(e)}))}},y.prototype.overrideDeProxyPropAssign=function(t,e){var r=this.getOrigSetter(t,e),i=this.getOrigGetter(t,e),o=this;if(r){this.defProp(t,e,(function(t){return r.call(o.proxyToObj(this),o.proxyToObj(t))}),i)}},y.prototype.overrideReferrer=function(t){var e=this.getOrigGetter(t,"referrer"),r=this;if(e){this.defGetterProp(t,"referrer",(function(){var t=r.proxyToObj(this),i=this.defaultView;if(i===i.__WB_replay_top)return"";var o=e.call(t);return r.extractOriginalURL(o)}))}},y.prototype.overridePropToProxy=function(t,e){var r=this.getOrigGetter(t,e);if(r){var i=this;this.defGetterProp(t,e,(function(){return i.objToProxy(r.call(this))}))}},y.prototype.overrideHistoryFunc=function(t){if(this.$wbwindow.history){var e=this.$wbwindow.history[t];if(e){this.$wbwindow.history["_orig_"+t]=e,this.$wbwindow.history.___wb_ownWindow=this.$wbwindow;var r=this,i=function(t,i,o){var n=this.___wb_ownWindow||r.$wbwindow;o=r.extractOriginalURL(o);var s,a,w=n.WB_wombat_location;if(o){var h=r._makeURLParser(o,n.document);if(a=h.href,s=r.rewriteUrl(a),a!==w.origin&&"about:blank"!==w.href&&!r.startsWith(a,w.origin+"/"))throw new DOMException("Invalid history change: "+a)}else a=w.href;e.call(this,t,i,s);var p=n.document.title;r.WBAutoFetchWorker&&n.setTimeout((function(){i||n.document.title===p||(i=n.document.title),r.WBAutoFetchWorker.fetchAsPage(s,a,i)}),100),r.sendHistoryUpdate(a,i,n)};return this.$wbwindow.history[t]=i,this.$wbwindow.History&&this.$wbwindow.History.prototype&&(this.$wbwindow.History.prototype[t]=i),i}}},y.prototype.overrideStyleAttr=function(t,e,r){var i=this.getOrigGetter(t,e),o=this.getOrigSetter(t,e),n=this,s=i,a=function(t,e,r,i,o){return e+(r||"")+n.extractOriginalURL(i)+o},w=/(url\\()([\'"])?(.*?)(\\2\\))/;i||(s=function(){var t=this.getPropertyValue(r);return t&&t.startsWith("url(")&&(t=t.replace(w,a)),t}),(o&&i||r)&&this.defProp(t,e,(function(t){var e=n.rewriteStyle(t);return o?o.call(this,e):this.setProperty(r,e),e}),s)},y.prototype.overrideStyleSetProp=function(t){var e=t.setProperty,r=this;t.setProperty=function(t,i,o){var n=r.rewriteStyle(i);return e.call(this,t,n,o)}},y.prototype.overrideAnchorAreaElem=function(t){if(t&&t.prototype){for(var e={},r=t.prototype,i=function(t,r){var i=e["set_"+t];return i?i.call(this,r):""},o=function(t){var r=e["get_"+t];return r?r.call(this):""},n=0;n<this.URL_PROPS.length;n++){var s=this.URL_PROPS[n];e["get_"+s]=this.getOrigGetter(r,s),e["set_"+s]=this.getOrigSetter(r,s),Object.defineProperty&&this.defProp(r,s,this.makeSetLocProp(s,i,o),this.makeGetLocProp(s,o),!0)}r.toString=function(){return this.href}}},y.prototype.overrideHtmlAssign=function(t,e,r){if(this.$wbwindow.DOMParser&&t&&t.prototype){var i=t.prototype,o=this.getOrigGetter(i,e),n=this.getOrigSetter(i,e);if(n){var s=this.rewriteHTMLAssign,a=this.wb_unrewrite_rx;this.defProp(i,e,(function(t){return s(this,n,t)}),r?function(){var t=o.call(this);return this._no_rewrite?t:t.replace(a,"")}:o)}}},y.prototype.overrideHtmlAssignSrcDoc=function(t,e){var r=t.prototype,i=(this.getOrigGetter(r,e),this.getOrigSetter(r,e)),o=this;this.defProp(r,e,(function(t){return this.__wb_srcdoc=t,o.wb_info.isSW?(o.blobUrlForIframe(this,t),t):o.rewriteHTMLAssign(this,i,t)}),(function(){return this.__wb_srcdoc}))},y.prototype.overrideDataSet=function(){var t=this.$wbwindow.HTMLElement.prototype,e=this.getOrigGetter(t,"dataset"),r=this;this.defProp(t,"dataset",null,(function(){var t=e.call(this);return new Proxy(t,{get(t,e,i){var o=t[e];return"string"==typeof o&&r.startsWithOneOf(o,r.wb_prefixes)?r.extractOriginalURL(o):o}})}))},y.prototype.overrideStyleProxy=function(t){var e=this.$wbwindow.HTMLElement.prototype,r=this.getOrigSetter(e,"style"),i=this.getOrigGetter(e,"style"),o=this;this.defProp(e,"style",r,(function(){var e=i.call(this),r={};return new Proxy(e,{set:(e,r,i)=>(t.includes(r)&&(i=o.rewriteStyle(i)),e[r]=i,!0),get(t,i,n){var s=t[i];return"function"!=typeof s||"setProperty"!==i&&!o.isNativeFunction(s)?s:(r[i]||(r[i]=s.bind(e)),r[i])}})}))},y.prototype.overrideIframeContentAccess=function(t){if(this.$wbwindow.HTMLIFrameElement&&this.$wbwindow.HTMLIFrameElement.prototype){var e=this.$wbwindow.HTMLIFrameElement.prototype,r=this.getOrigGetter(e,t);if(r){var i=this.getOrigSetter(e,t),o=this;this.defProp(e,t,i,(function(){return o.initIframeWombat(this),o.objToProxy(r.call(this))})),e["_get_"+t]=r}}},y.prototype.overrideSWAccess=function(t){if(t.navigator.serviceWorker&&t.navigator.serviceWorker.controller){t._WB_wombat_sw=t.navigator.serviceWorker;var e={controller:null,ready:Promise.resolve({unregister:function(){}}),register:function(){return Promise.reject()},addEventListener:function(){},removeEventListener:function(){},onmessage:null,oncontrollerchange:null,getRegistrations:function(){return Promise.resolve([])},getRegistration:function(){return Promise.resolve(void 0)},startMessages:function(){}};this.defGetterProp(t.navigator,"serviceWorker",(function(){return e}))}},y.prototype.overrideFuncThisProxyToObj=function(t,e,r){if(t){var i=r;if(!r&&t.prototype&&t.prototype[e]?i=t.prototype:!r&&t[e]&&(i=t),i){var o=this,n=i[e];i[e]=function(){return n.apply(o.proxyToObj(this),arguments)}}}},y.prototype.overrideFuncArgProxyToObj=function(t,e,r){if(t&&t.prototype){var i=r||0,o=t.prototype[e];if(o){var n=this;t.prototype[e]=function(){for(var t=new Array(arguments.length),e=0;e<t.length;e++)t[e]=e===i?n.proxyToObj(arguments[e]):arguments[e];var r=n.proxyToObj(this);return o.__WB_orig_apply?o.__WB_orig_apply(r,t):o.apply(r,t)}}}},y.prototype.overrideFunctionApply=function(t){if(!t.Function.prototype.__WB_orig_apply){var e=t.Function.prototype.apply;t.Function.prototype.__WB_orig_apply=e;var r=this;t.Function.prototype.apply=function(t,e){return r.isNativeFunction(this)&&(t=r.proxyToObj(t),e=r.deproxyArrayHandlingArgumentsObj(e)),this.__WB_orig_apply(t,e)},this.wb_funToString.apply=e}},y.prototype.overrideFunctionCall=function(t){if(!t.Function.prototype.__WB_orig_call){var e=t.Function.prototype.call;t.Function.prototype.__WB_orig_call=e;var r=this;t.Function.prototype.call=function(t,...e){return r.isNativeFunction(this)&&(t=r.proxyToObj(t),e=r.deproxyArrayHandlingArgumentsObj(e)),this.__WB_orig_call(t,...e)},this.wb_funToString.call=e}},y.prototype.overrideFunctionBind=function(t){if(!t.Function.prototype.__WB_orig_bind){var e=t.Function.prototype.bind;t.Function.prototype.__WB_orig_bind=e;var r=this;t.Function.prototype.bind=function(t){var e=r.isNativeFunction(this),i=e?this.__WB_orig_bind.apply(this,arguments):this.__WB_orig_bind.__WB_orig_apply(this,arguments);return i.__WB_is_native_func__=e,i}}},y.prototype.overrideSrcsetAttr=function(t,e){var r="srcset",i=this.getOrigGetter(t,r),o=this.getOrigSetter(t,r),n=this;this.defProp(t,r,(function(t){var e=n.rewriteSrcset(t,this);return o?o.call(this,e):n.wb_setAttribute?n.wb_setAttribute.call(this,r,e):void 0}),(function(){var t;return i?t=i.call(this):n.wb_getAttribute&&(t=n.wb_getAttribute.call(this,r)),t=n.extractOriginalURL(t)}))},y.prototype.overrideHrefAttr=function(t,e){var r=this.getOrigGetter(t,"href"),i=this.getOrigSetter(t,"href"),o=this;this.defProp(t,"href",(function(t){var r;return r="cs_"===e&&0===t.indexOf("data:text/css")?o.rewriteInlineStyle(t):"LINK"===this.tagName?o.rewriteUrl(t,!1,o.rwModForElement(this,"href")):o.rewriteUrl(t,!1,e,this.ownerDocument),i?i.call(this,r):o.wb_setAttribute?o.wb_setAttribute.call(this,"href",r):void 0}),(function(){var t;return r?t=r.call(this):o.wb_getAttribute&&(t=o.wb_getAttribute.call(this,"href")),this._no_rewrite?t:o.extractOriginalURL(t)}))},y.prototype.overrideTextProtoGetSet=function(t,e){var r,i=this.getOrigGetter(t,e),o=this;if("data"===e){var n=this.getOrigSetter(t,e);r=function(t){var e=t;return!this._no_rewrite&&this.parentElement&&"STYLE"===this.parentElement.tagName&&(e=o.rewriteStyle(t)),n.call(this,e)}}this.defProp(t,e,r,(function(){var t=i.call(this);return!this._no_rewrite&&this.parentElement&&"STYLE"===this.parentElement.tagName?t.replace(o.wb_unrewrite_rx,""):t}))},y.prototype.overrideAnUIEvent=function(t){var e="__wb_"+t+"_overridden",r=this.$wbwindow[t];if(r&&r.prototype&&!r.prototype[e]){var i=this;this.overridePropToProxy(r.prototype,"view");var o,n="init"+t;if(r.prototype[n]){var s=r.prototype[n];r.prototype[n]=function(){var t=i.proxyToObj(this);if(0===arguments.length||arguments.length<3)return s.__WB_orig_apply?s.__WB_orig_apply(t,arguments):s.apply(t,arguments);for(var e=new Array(arguments.length),r=0;r<arguments.length;r++)e[r]=3===r?i.proxyToObj(arguments[r]):arguments[r];return s.__WB_orig_apply?s.__WB_orig_apply(t,e):s.apply(t,e)}}this.$wbwindow[t]=(o=r,function(e,r){return i.domConstructorErrorChecker(this,t,arguments),r&&(null!=r.view&&(r.view=i.proxyToObj(r.view)),null!=r.relatedTarget&&(r.relatedTarget=i.proxyToObj(r.relatedTarget)),null!=r.target&&(r.target=i.proxyToObj(r.target))),new o(e,r)}),this.$wbwindow[t].prototype=r.prototype,Object.defineProperty(this.$wbwindow[t].prototype,"constructor",{value:this.$wbwindow[t]}),this.$wbwindow[t].prototype[e]=!0}},y.prototype.rewriteParentNodeFn=function(t,e,r){var i=this._no_rewrite?r:this.rewriteElementsInArguments(r),o=this.proxyToObj(t);return e.__WB_orig_apply?e.__WB_orig_apply(o,i):e.apply(o,i)},y.prototype.overrideParentNodeAppendPrepend=function(t){var e=this.rewriteParentNodeFn;if(t.prototype.append){var r=t.prototype.append;t.prototype.append=function(){return e(this,r,arguments)}}if(t.prototype.prepend){var i=t.prototype.prepend;t.prototype.prepend=function(){return e(this,i,arguments)}}},y.prototype.overrideShadowDom=function(){this.$wbwindow.ShadowRoot&&this.$wbwindow.ShadowRoot.prototype&&(this.overrideHtmlAssign(this.$wbwindow.ShadowRoot,"innerHTML",!0),this.overrideParentNodeAppendPrepend(this.$wbwindow.ShadowRoot))},y.prototype.overrideChildNodeInterface=function(t,e){if(t&&t.prototype){var r=e?this.rewriteTextNodeFn:this.rewriteChildNodeFn;if(t.prototype.before){var i=t.prototype.before;t.prototype.before=function(){return r(this,i,arguments)}}if(t.prototype.after){var o=t.prototype.after;t.prototype.after=function(){return r(this,o,arguments)}}if(t.prototype.replaceWith){var n=t.prototype.replaceWith;t.prototype.replaceWith=function(){return r(this,n,arguments)}}}},y.prototype.initTextNodeOverrides=function(){var t=this.$wbwindow.Text;if(t&&t.prototype){var e=t.prototype,r=this.rewriteTextNodeFn;if(e.appendData){var i=e.appendData;e.appendData=function(){return r(this,i,arguments)}}if(e.insertData){var o=e.insertData;e.insertData=function(){return r(this,o,arguments)}}if(e.replaceData){var n=e.replaceData;e.replaceData=function(){return r(this,n,arguments)}}this.overrideChildNodeInterface(t,!0),this.overrideTextProtoGetSet(e,"data"),this.overrideTextProtoGetSet(e,"wholeText")}},y.prototype.initAttrOverrides=function(){this.overrideHrefAttr(this.$wbwindow.HTMLLinkElement.prototype,"cs_"),this.overrideHrefAttr(this.$wbwindow.CSSStyleSheet.prototype,"cs_"),this.overrideHrefAttr(this.$wbwindow.HTMLBaseElement.prototype,"mp_"),this.overrideSrcsetAttr(this.$wbwindow.HTMLImageElement.prototype,"im_"),this.overrideSrcsetAttr(this.$wbwindow.HTMLSourceElement.prototype,"oe_"),this.overrideAttr(this.$wbwindow.HTMLVideoElement.prototype,"poster","im_"),this.overrideAttr(this.$wbwindow.HTMLAudioElement.prototype,"poster","im_"),this.overrideAttr(this.$wbwindow.HTMLImageElement.prototype,"src","im_"),this.overrideAttr(this.$wbwindow.HTMLInputElement.prototype,"src","oe_"),this.overrideAttr(this.$wbwindow.HTMLEmbedElement.prototype,"src","oe_"),this.overrideAttr(this.$wbwindow.HTMLMediaElement.prototype,"src","oe_"),this.overrideAttr(this.$wbwindow.HTMLVideoElement.prototype,"src","oe_"),this.overrideAttr(this.$wbwindow.HTMLAudioElement.prototype,"src","oe_"),this.overrideAttr(this.$wbwindow.HTMLSourceElement.prototype,"src","oe_"),window.HTMLTrackElement&&window.HTMLTrackElement.prototype&&this.overrideAttr(this.$wbwindow.HTMLTrackElement.prototype,"src","oe_"),this.overrideAttr(this.$wbwindow.HTMLIFrameElement.prototype,"src","if_"),this.$wbwindow.HTMLFrameElement&&this.$wbwindow.HTMLFrameElement.prototype&&this.overrideAttr(this.$wbwindow.HTMLFrameElement.prototype,"src","fr_"),this.overrideAttr(this.$wbwindow.HTMLScriptElement.prototype,"src","js_"),this.overrideAttr(this.$wbwindow.HTMLObjectElement.prototype,"data","oe_"),this.overrideAttr(this.$wbwindow.HTMLObjectElement.prototype,"codebase","oe_"),this.overrideAttr(this.$wbwindow.HTMLMetaElement.prototype,"content","mp_"),this.overrideAttr(this.$wbwindow.HTMLFormElement.prototype,"action","mp_"),this.overrideAttr(this.$wbwindow.HTMLQuoteElement.prototype,"cite","mp_"),this.overrideAttr(this.$wbwindow.HTMLModElement.prototype,"cite","mp_"),this.overrideAnchorAreaElem(this.$wbwindow.HTMLAnchorElement),this.overrideAnchorAreaElem(this.$wbwindow.HTMLAreaElement);var t=this.$wbwindow.CSSStyleDeclaration.prototype,e={background:"background",backgroundImage:"background-image",cursor:"cursor",listStyle:"list-style",listStyleImage:"list-style-image",border:"border",borderImage:"border-image",borderImageSource:"border-image-source",maskImage:"mask-image"};for(var[r,i]of(this.overrideStyleProxy(Object.values(e)),this.$wbwindow.CSS2Properties&&(t=this.$wbwindow.CSS2Properties.prototype),this.overrideStyleAttr(t,"cssText"),Object.entries(e)))this.overrideStyleAttr(t,r,i);if(this.overrideStyleSetProp(t),this.$wbwindow.CSSStyleSheet&&this.$wbwindow.CSSStyleSheet.prototype){var o=this,n=this.$wbwindow.CSSStyleSheet.prototype.insertRule;this.$wbwindow.CSSStyleSheet.prototype.insertRule=function(t,e){return n.call(this,o.rewriteStyle(t),e)}}this.$wbwindow.CSSRule&&this.$wbwindow.CSSRule.prototype&&this.overrideStyleAttr(this.$wbwindow.CSSRule.prototype,"cssText")},y.prototype.initCSSOMOverrides=function(){var t,r=this;if(this.$wbwindow.CSSStyleValue){var i=function(t,e){var i=t[e];t[e]=function(t,e){if(null==e)return i.call(this,t,e);var o=r.noExceptRewriteStyle(e);return i.call(this,t,o)}};this.$wbwindow.CSSStyleValue.parse&&this.$wbwindow.CSSStyleValue.parse.toString().indexOf("[native code]")>0&&i(this.$wbwindow.CSSStyleValue,"parse"),this.$wbwindow.CSSStyleValue.parseAll&&this.$wbwindow.CSSStyleValue.parseAll.toString().indexOf("[native code]")>0&&i(this.$wbwindow.CSSStyleValue,"parseAll")}if(this.$wbwindow.CSSKeywordValue&&this.$wbwindow.CSSKeywordValue.prototype){var o=this.$wbwindow.CSSKeywordValue;this.$wbwindow.CSSKeywordValue=(t=this.$wbwindow.CSSKeywordValue,function(e){return r.domConstructorErrorChecker(this,"CSSKeywordValue",arguments),new t(r.rewriteStyle(e))}),this.$wbwindow.CSSKeywordValue.prototype=o.prototype,Object.defineProperty(this.$wbwindow.CSSKeywordValue.prototype,"constructor",{value:this.$wbwindow.CSSKeywordValue}),e(this.$wbwindow.CSSKeywordValue,"CSSKeywordValue")}if(this.$wbwindow.StylePropertyMap&&this.$wbwindow.StylePropertyMap.prototype){var n=this.$wbwindow.StylePropertyMap.prototype.set;this.$wbwindow.StylePropertyMap.prototype.set=function(){if(arguments.length<=1)return n.__WB_orig_apply?n.__WB_orig_apply(this,arguments):n.apply(this,arguments);var t=new Array(arguments.length);t[0]=arguments[0];for(var e=1;e<arguments.length;e++)t[e]=r.noExceptRewriteStyle(arguments[e]);return n.__WB_orig_apply?n.__WB_orig_apply(this,t):n.apply(this,t)};var s=this.$wbwindow.StylePropertyMap.prototype.append;this.$wbwindow.StylePropertyMap.prototype.append=function(){if(arguments.length<=1)return n.__WB_orig_apply?s.__WB_orig_apply(this,arguments):s.apply(this,arguments);var t=new Array(arguments.length);t[0]=arguments[0];for(var e=1;e<arguments.length;e++)t[e]=r.noExceptRewriteStyle(arguments[e]);return s.__WB_orig_apply?s.__WB_orig_apply(this,t):s.apply(this,t)}}},y.prototype.initAudioOverride=function(){if(this.$wbwindow.Audio){var t,r=this.$wbwindow.Audio,i=this;this.$wbwindow.Audio=(t=this.$wbwindow.Audio,function(e){return i.domConstructorErrorChecker(this,"Audio"),new t(i.rewriteUrl(e,!0,"oe_"))}),this.$wbwindow.Audio.prototype=r.prototype,Object.defineProperty(this.$wbwindow.Audio.prototype,"constructor",{value:this.$wbwindow.Audio}),e(this.$wbwindow.Audio,"HTMLAudioElement")}},y.prototype.initBadPrefixes=function(t){this.BAD_PREFIXES=["http:"+t,"https:"+t,"http:/"+t,"https:/"+t]},y.prototype.initCryptoRandom=function(){if(this.$wbwindow.crypto&&this.$wbwindow.Crypto){var t=this,e=function(e){for(var r=0;r<e.length;r++)e[r]=parseInt(4294967296*t.$wbwindow.Math.random());return e};this.$wbwindow.Crypto.prototype.getRandomValues=e,this.$wbwindow.crypto.getRandomValues=e}},y.prototype.initDateOverride=function(t){if(!this.$wbwindow.__wb_Date_now){var e,r=1e3*parseInt(t),i=this.$wbwindow.Date.now()-(r-0),o=this.$wbwindow.Date,n=this.$wbwindow.Date.UTC,s=this.$wbwindow.Date.parse,a=this.$wbwindow.Date.now;this.$wbwindow.__wb_Date_now=a,this.$wbwindow.Date=(e=this.$wbwindow.Date,function(t,r,o,n,s,w,h){return void 0===t?new e(a()-i):void 0===r?new e(t):void 0===o?new e(t,r):void 0===n?new e(t,r,o):void 0===s?new e(t,r,o,n):void 0===w?new e(t,r,o,n,s):void 0===h?new e(t,r,o,n,s,w):new e(t,r,o,n,s,w,h)}),this.$wbwindow.Date.prototype=o.prototype,this.$wbwindow.Date.now=function(){return a()-i},this.$wbwindow.Date.UTC=n,this.$wbwindow.Date.parse=s,this.$wbwindow.Date.__WB_timediff=i,this.$wbwindow.Date.prototype.getTimezoneOffset=function(){return 0};var w=this.$wbwindow.Date.prototype.toString;this.$wbwindow.Date.prototype.toString=function(){return w.call(this).split(" GMT")[0]+" GMT+0000 (Coordinated Universal Time)"};var h=this.$wbwindow.Date.prototype.toTimeString;this.$wbwindow.Date.prototype.toTimeString=function(){return h.call(this).split(" GMT")[0]+" GMT+0000 (Coordinated Universal Time)"},Object.defineProperty(this.$wbwindow.Date.prototype,"constructor",{value:this.$wbwindow.Date})}},y.prototype.initBlobOverride=function(){if(this.$wbwindow.Blob&&!this.wb_info.isSW){var t,e=this.$wbwindow.Blob,r=this;this.$wbwindow.Blob=(t=this.$wbwindow.Blob,function(e,i){return!i||"application/xhtml+xml"!==i.type&&"text/html"!==i.type||1===e.length&&"string"==typeof e[0]&&r.startsWith(e[0],"<!DOCTYPE html>")&&(e[0]=r.rewriteHtml(e[0]),i.type="text/html"),new t(e,i)}),this.$wbwindow.Blob.prototype=e.prototype}},y.prototype.initIntersectionObsOverride=function(){var t,e=this.$wbwindow.IntersectionObserver,r=this;this.$wbwindow.IntersectionObserver=(t=this.$wbwindow.IntersectionObserver,function(e,i){return i&&i.root&&(i.root=r.proxyToObj(i.root)),new t(e,i)}),this.$wbwindow.IntersectionObserver.prototype=e.prototype,Object.defineProperty(this.$wbwindow.IntersectionObserver.prototype,"constructor",{value:this.$wbwindow.IntersectionObserver})},y.prototype.initWSOverride=function(){this.$wbwindow.WebSocket&&this.$wbwindow.WebSocket.prototype&&(this.$wbwindow.WebSocket=function(t){function e(t,r){this.openCallbacks=[],this.addEventListener=function(t,r){"open"===t&&e.openCallbacks.push(r)},this.removeEventListener=function(){},this.close=function(){},this.send=function(t){console.log("ws send",t)},this.protocol=r&&r.length?r[0]:"",this.url=t,this.readyState=1;var i=this;setTimeout((function(){var t=new CustomEvent("open");i.onopen&&i.onopen(t),i.openCallbacks.forEach((e=>e(t)))}),500)}return e.CONNECTING=0,e.OPEN=1,e.CLOSING=2,e.CLOSED=3,e}(this.$wbwindow.WebSocket),Object.defineProperty(this.$wbwindow.WebSocket.prototype,"constructor",{value:this.$wbwindow.WebSocket}),e(this.$wbwindow.WebSocket,"WebSocket"))},y.prototype.initDocTitleOverride=function(){var t=this.getOrigGetter(this.$wbwindow.document,"title"),e=this.getOrigSetter(this.$wbwindow.document,"title"),r=this;this.defProp(this.$wbwindow.document,"title",(function(t){var i=e.call(this,t),o={wb_type:"title",title:t};return r.sendTopMessage(o),i}),t)},y.prototype.initFontFaceOverride=function(){if(this.$wbwindow.FontFace){var t,r=this,i=this.$wbwindow.FontFace;this.$wbwindow.FontFace=(t=this.$wbwindow.FontFace,function(e,i,o){r.domConstructorErrorChecker(this,"FontFace",arguments,2);var n=i;return null!=i&&(n="string"!=typeof i?r.rewriteInlineStyle(i.toString()):r.rewriteInlineStyle(i)),new t(e,n,o)}),this.$wbwindow.FontFace.prototype=i.prototype,Object.defineProperty(this.$wbwindow.FontFace.prototype,"constructor",{value:this.$wbwindow.FontFace}),e(this.$wbwindow.FontFace,"FontFace")}},y.prototype.initFixedRatio=function(t){try{this.$wbwindow.devicePixelRatio=t}catch(t){}if(Object.defineProperty)try{Object.defineProperty(this.$wbwindow,"devicePixelRatio",{value:t,writable:!1})}catch(t){}},y.prototype.initPaths=function(t){t.wombat_opts=t.wombat_opts||{},Object.assign(this.wb_info,t),this.wb_opts=t.wombat_opts,this.wb_replay_prefix=t.prefix,this.wb_is_proxy=t.proxy_magic||!this.wb_replay_prefix,this.wb_info.top_host=this.wb_info.top_host||"*",this.wb_curr_host=this.$wbwindow.location.protocol+"//"+this.$wbwindow.location.host,this.wb_info.wombat_opts=this.wb_info.wombat_opts||{},this.wb_orig_scheme=t.wombat_scheme+"://",this.wb_orig_origin=this.wb_orig_scheme+t.wombat_host,this.wb_abs_prefix=this.wb_replay_prefix,!t.is_live&&t.wombat_ts?this.wb_capture_date_part="/"+t.wombat_ts+"/":this.wb_capture_date_part="",this.initBadPrefixes(this.wb_replay_prefix),this.initCookiePreset()},y.prototype.initSeededRandom=function(t){this.$wbwindow.Math.seed=parseInt(t);var e=this;this.$wbwindow.Math.random=function(){return e.$wbwindow.Math.seed=(9301*e.$wbwindow.Math.seed+49297)%233280,e.$wbwindow.Math.seed/233280}},y.prototype.initHistoryOverrides=function(){this.overrideHistoryFunc("pushState"),this.overrideHistoryFunc("replaceState");var t=this;this.$wbwindow.addEventListener("popstate",(function(e){t.sendHistoryUpdate(t.$wbwindow.WB_wombat_location.href,t.$wbwindow.document.title)}))},y.prototype.initCookiePreset=function(){if(this.wb_info.presetCookie)for(var t=this.wb_info.presetCookie.split(";"),e=0;e<t.length;e++)this.$wbwindow.document.cookie=t[e].trim()+"; Path="+this.rewriteUrl("./",!0)},y.prototype.initHTTPOverrides=function(){var t=this;this.overridePropExtract(this.$wbwindow.XMLHttpRequest.prototype,"responseURL");var r,i,o=!!this.wb_info.convert_post_to_get;if(this.wb_info.isSW||o){var n=this.$wbwindow.XMLHttpRequest.prototype.open,s=this.$wbwindow.XMLHttpRequest.prototype.setRequestHeader,a=this.$wbwindow.XMLHttpRequest.prototype.send;this.utilFns.XHRopen=n,this.utilFns.XHRsend=a,this.$wbwindow.XMLHttpRequest.prototype.open=function(){this.__WB_xhr_open_arguments=arguments,this.__WB_xhr_headers=new Headers},this.$wbwindow.XMLHttpRequest.prototype.setAttributionReporting=function(){},this.$wbwindow.XMLHttpRequest.prototype.setRequestHeader=function(t,e){this.__WB_xhr_headers.set(t,e)},this.$wbwindow.XMLHttpRequest.prototype.send=async function(e){if(o&&("POST"===this.__WB_xhr_open_arguments[0]||"PUT"===this.__WB_xhr_open_arguments[0])){var r={url:this.__WB_xhr_open_arguments[1],method:this.__WB_xhr_open_arguments[0],headers:this.__WB_xhr_headers,postData:e};u(r)&&(this.__WB_xhr_open_arguments[1]=r.url,this.__WB_xhr_open_arguments[0]="GET",e=null)}if(this.__WB_xhr_open_arguments.length>2&&!this.__WB_xhr_open_arguments[2]&&-1===navigator.userAgent.indexOf("Firefox")&&(this.__WB_xhr_open_arguments[2]=!0,console.warn("wombat.js: Sync XHR not supported in SW-based replay in this browser, converted to async")),this._no_rewrite||(this.__WB_xhr_open_arguments[1]=t.rewriteUrl(this.__WB_xhr_open_arguments[1])),n.apply(this,this.__WB_xhr_open_arguments),!t.startsWith(this.__WB_xhr_open_arguments[1],"data:")){for(const[t,e]of this.__WB_xhr_headers.entries())s.call(this,t,e);s.call(this,"X-Pywb-Requested-With","XMLHttpRequest")}return a.call(this,e)}}else if(this.$wbwindow.XMLHttpRequest.prototype.open){var w=this.$wbwindow.XMLHttpRequest.prototype.open;this.utilFns.XHRopen=w,this.utilFns.XHRsend=this.$wbwindow.XMLHttpRequest.prototype.send,this.$wbwindow.XMLHttpRequest.prototype.open=function(e,r,i,o,n){var s=this._no_rewrite?r:t.rewriteUrl(r),a=!0;null==i||i||(a=!1),w.call(this,e,s,a,o,n),t.startsWith(s,"data:")||this.setRequestHeader("X-Pywb-Requested-With","XMLHttpRequest")}}if(this.$wbwindow.fetch){var h=this.$wbwindow.fetch;this.$wbwindow.fetch=function(e,r){var i;if(e instanceof Request){var o=t.rewriteUrl(e.url);e.__WB_no_unrewrite=!0,i=o===e.url?e:new Request(o,e),delete e.__WB_no_unrewrite}else e=t.rewriteUrl(e.toString()),i=new Request(e,r);return h.call(t.proxyToObj(this),i)}}if(this.$wbwindow.Request&&this.$wbwindow.Request.prototype){var p=this.$wbwindow.Request;this.$wbwindow.Request=(r=this.$wbwindow.Request,function e(i,o){t.domConstructorErrorChecker(this,"Request",arguments);var n=o||{},s=i,a=typeof i;switch(a){case"string":s=t.rewriteUrl(i);break;case"object":if(s=i,i.url){var w=t.rewriteUrl(i.url);w!==i.url&&(s=new r(w,i))}else i.href&&(s=t.rewriteUrl(i.toString(),!0))}let h=!1;if(n&&n.referrer){var p=t.rewriteUrl(n.referrer);p!==n.referrer&&(n instanceof e?(n.__WB_no_unrewrite=!0,h=!0):n.referrer=p)}var c=new r(s,n);return h&&delete n.__WB_no_unrewrite,c}),this.$wbwindow.Request.prototype=p.prototype,Object.defineProperty(this.$wbwindow.Request.prototype,"constructor",{value:this.$wbwindow.Request}),this.overridePropExtract(this.$wbwindow.Request.prototype,"url"),this.overridePropExtract(this.$wbwindow.Request.prototype,"referrer")}if(this.$wbwindow.Response&&this.$wbwindow.Response.prototype){var c=this.$wbwindow.Response.prototype.redirect;this.$wbwindow.Response.prototype.redirect=function(e,r){var i=t.rewriteUrl(e,!0,null,t.$wbwindow.document);return c.call(this,i,r)},this.overridePropExtract(this.$wbwindow.Response.prototype,"url")}if(this.$wbwindow.EventSource&&this.$wbwindow.EventSource.prototype){var l=this.$wbwindow.EventSource;this.$wbwindow.EventSource=(i=this.$wbwindow.EventSource,function(e,r){t.domConstructorErrorChecker(this,"EventSource",arguments);var o=e;return null!=e&&(o=t.rewriteUrl(e)),new i(o,r)}),this.$wbwindow.EventSource.prototype=l.prototype,Object.defineProperty(this.$wbwindow.EventSource.prototype,"constructor",{value:this.$wbwindow.EventSource}),e(this.$wbwindow.EventSource,"EventSource")}},y.prototype.initElementGetSetAttributeOverride=function(){if(!this.wb_opts.skip_setAttribute&&this.$wbwindow.Element&&this.$wbwindow.Element.prototype){var t=this,e=this.$wbwindow.Element.prototype;if(e.setAttribute){var r=e.setAttribute;e._orig_setAttribute=r,e.setAttribute=function(e,i){var o=i;if(e&&"string"==typeof o){var n=e.toLowerCase();if("LINK"===this.tagName&&"href"===n&&0===o.indexOf("data:text/css"))o=t.rewriteInlineStyle(i);else if("style"===n)o=t.rewriteStyle(i);else if("srcset"===n||"imagesrcset"===n&&"LINK"===this.tagName)o=t.rewriteSrcset(i,this);else{t.shouldRewriteAttr(this.tagName,n)&&(t.removeWBOSRC(this),this._no_rewrite||(o=t.rewriteUrl(i,!1,t.rwModForElement(this,n))))}}return r.call(this,e,o)}}if(e.getAttribute){var i=e.getAttribute;this.wb_getAttribute=i,e.getAttribute=function(e){var r=i.call(this,e);if(null===r)return r;var o=e;if(e&&(o=e.toLowerCase()),t.shouldRewriteAttr(this.tagName,o)){var n=t.retrieveWBOSRC(this);return n||t.extractOriginalURL(r)}return t.startsWith(o,"data-")&&t.startsWithOneOf(r,t.wb_prefixes)?t.extractOriginalURL(r):r}}}},y.prototype.initSvgImageOverrides=function(){if(this.$wbwindow.SVGImageElement){var t=this.$wbwindow.SVGImageElement.prototype,e=t.getAttribute,r=t.getAttributeNS,i=t.setAttribute,o=t.setAttributeNS,n=this;t.getAttribute=function(t){var r=e.call(this,t);return t.indexOf("xlink:href")>=0||"href"===t?n.extractOriginalURL(r):r},t.getAttributeNS=function(t,e){var i=r.call(this,t,e);return e.indexOf("xlink:href")>=0||"href"===e?n.extractOriginalURL(i):i},t.setAttribute=function(t,e){var r=e;return(t.indexOf("xlink:href")>=0||"href"===t)&&(r=n.rewriteUrl(e)),i.call(this,t,r)},t.setAttributeNS=function(t,e,r){var i=r;return(e.indexOf("xlink:href")>=0||"href"===e)&&(i=n.rewriteUrl(r)),o.call(this,t,e,i)}}},y.prototype.initCreateElementNSFix=function(){if(this.$wbwindow.document.createElementNS&&this.$wbwindow.Document.prototype.createElementNS){var t=this.$wbwindow.document.createElementNS,e=this,r=function(r,i){return t.call(e.proxyToObj(this),e.extractOriginalURL(r),i)};this.$wbwindow.Document.prototype.createElementNS=r,this.$wbwindow.document.createElementNS=r}},y.prototype.initQuerySelectorOverride=function(){if(this.$wbwindow.document.querySelector&&this.$wbwindow.Document.prototype.querySelector){var t=this,e=this.$wbwindow.document.querySelector,r=function(r){return e.call(t.proxyToObj(this),n(r))},i=this.$wbwindow.document.querySelectorAll,o=function(e){return i.call(t.proxyToObj(this),n(e))};this.$wbwindow.Document.prototype.querySelector=r,this.$wbwindow.document.querySelector=r,this.$wbwindow.Document.prototype.querySelectorAll=o,this.$wbwindow.document.querySelectorAll=o}function n(t){if("string"==typeof t)try{t=t.replace(/((?:^|\\s)\\b\\w+\\[(?:src|href|data-href))[\\^]?(=[\'"]?(?:https?[:])?\\/\\/)/,"$1*$2")}catch(t){}return t}},y.prototype.initInsertAdjacentElementHTMLOverrides=function(){var t=this.$wbwindow.Element;if(t&&t.prototype){var e=t.prototype,r=this.rewriteInsertAdjHTMLOrElemArgs;if(e.insertAdjacentHTML){var i=e.insertAdjacentHTML;e.insertAdjacentHTML=function(t,e){return r(this,i,t,e,!0)}}if(e.insertAdjacentElement){var o=e.insertAdjacentElement;e.insertAdjacentElement=function(t,e){return r(this,o,t,e,!1)}}}},y.prototype.initDomOverride=function(){var t=this.$wbwindow.Node;if(t&&t.prototype){var e=this.rewriteNodeFuncArgs;if(t.prototype.appendChild){var r=t.prototype.appendChild;t.prototype.appendChild=function(t,i){return e(this,r,t,i)}}if(t.prototype.insertBefore){var i=t.prototype.insertBefore;t.prototype.insertBefore=function(t,r){return e(this,i,t,r)}}if(t.prototype.replaceChild){var o=t.prototype.replaceChild;t.prototype.replaceChild=function(t,r){return e(this,o,t,r)}}this.overridePropToProxy(t.prototype,"ownerDocument"),this.overridePropToProxy(this.$wbwindow.HTMLHtmlElement.prototype,"parentNode"),this.overridePropToProxy(this.$wbwindow.Event.prototype,"target")}this.$wbwindow.Element&&this.$wbwindow.Element.prototype&&(this.overrideParentNodeAppendPrepend(this.$wbwindow.Element),this.overrideChildNodeInterface(this.$wbwindow.Element,!1)),this.$wbwindow.DocumentFragment&&this.$wbwindow.DocumentFragment.prototype&&this.overrideParentNodeAppendPrepend(this.$wbwindow.DocumentFragment)},y.prototype.initDocOverrides=function(t){if(Object.defineProperty){this.overrideReferrer(t),this.defGetterProp(t,"origin",(function(){return this.WB_wombat_location.origin})),this.defGetterProp(this.$wbwindow,"origin",(function(){return this.WB_wombat_location.origin}));var e=this;this.defProp(t,"domain",(function(t){var r=this.WB_wombat_location;r&&e.endsWith(r.hostname,t)&&(this.__wb_domain=t)}),(function(){return this.__wb_domain||this.WB_wombat_location.hostname}))}},y.prototype.initDocWriteOpenCloseOverride=function(){if(this.$wbwindow.DOMParser){var t=this.$wbwindow.Document.prototype,e=this.$wbwindow.document;this._writeBuff="";var r=this,i=e.write,o=function(){return d(this,i,_(arguments))};e.write=o,t.write=o;var n=e.writeln,s=function(){return d(this,n,_(arguments))};e.writeln=s,t.writeln=s;var a=e.open,w=function(){var t,e=r.proxyToObj(this);if(3===arguments.length){var i=r.rewriteUrl(arguments[0],!1,"mp_");t=a.call(e,i,arguments[1],arguments[2]),r.initNewWindowWombat(t,arguments[0])}else t=a.call(e),u()?r._writeBuff="":r.initNewWindowWombat(e.defaultView);return t};e.open=w,t.open=w;var h=e.close,p=function(){if(!r._writeBuff){var t=r.proxyToObj(this);return r.initNewWindowWombat(t.defaultView),h.__WB_orig_apply?h.__WB_orig_apply(t,arguments):h.apply(t,arguments)}if("loading"===this.readyState&&i.call(e,r.rewriteHtml(r._writeBuff,!0)),u()){r.blobUrlForIframe(r.$wbwindow.frameElement,r._writeBuff);const t=this;try{if(t.documentElement){new r.$wbwindow.MutationObserver(((e,i)=>{r.blobUrlForIframe(r.$wbwindow.frameElement,t.documentElement.outerHTML)})).observe(t.documentElement,{childList:!0,subtree:!0})}}catch(t){}}r._writeBuff=""};e.close=p,t.close=p;var c=this.getOrigGetter(t,"body"),l=this.getOrigSetter(t,"body");c&&l&&this.defProp(t,"body",(function(t){return t&&(t instanceof HTMLBodyElement||t instanceof HTMLFrameSetElement)&&r.rewriteElemComplete(t),l.call(r.proxyToObj(this),t)}),c)}function u(){return r.wb_info.isSW&&r.$wbwindow.frameElement}function _(t){return 0===t.length?"":1===t.length?t[0]:Array.prototype.join.call(t,"")}function d(t,e,i){r.$wbwindow;var o=r.proxyToObj(t);if("loading"===t.readyState&&i&&-1!==i.startsWith("\\x3c!--")&&-1===i.indexOf("--\\x3e"))return e.call(o,i);if(!(u()||"loading"===t.readyState&&r.wb_info.injectDocClose)){i=r.rewriteHtml(i,!0);o=r.proxyToObj(t);var n=e.call(o,i);return r.initNewWindowWombat(o.defaultView),n}r._writeBuff+=i}},y.prototype.initIframeWombat=function(t){var e;e=t._get_contentWindow?t._get_contentWindow.call(t):t.contentWindow;try{if(!e||e===this.$wbwindow||e._skip_wombat||e._wb_wombat)return}catch(t){return}var r=t.src;this.initNewWindowWombat(e,r)},y.prototype.initNewWindowWombat=function(t,e){var r=!1;if(t&&!t._wb_wombat){if(e&&""!==e&&!this.startsWithOneOf(e,["about:blank","javascript:"])||(r=!0),!r&&this.wb_info.isSW){var i=this.extractOriginalURL(e);("about:blank"===i||i.startsWith("srcdoc:")||i.startsWith("blob:"))&&(r=!0)}if(r){var o={};Object.assign(o,this.wb_info);var n=new y(t,o);t._wb_wombat=n.wombatInit()}else this.initProtoPmOrigin(t),this.initPostMessageOverride(t),this.initMessageEventOverride(t),this.initCheckThisFunc(t),this.initImportWrapperFunc(t)}},y.prototype.initTimeoutIntervalOverrides=function(){var t=this.rewriteSetTimeoutInterval;if(this.$wbwindow.setTimeout&&!this.$wbwindow.setTimeout.__$wbpatched$__){var e=this.$wbwindow.setTimeout;this.$wbwindow.setTimeout=function(){return t(this,e,arguments)},this.$wbwindow.setTimeout.__$wbpatched$__=!0}if(this.$wbwindow.setInterval&&!this.$wbwindow.setInterval.__$wbpatched$__){var r=this.$wbwindow.setInterval;this.$wbwindow.setInterval=function(){return t(this,r,arguments)},this.$wbwindow.setInterval.__$wbpatched$__=!0}},y.prototype.initWorkerOverrides=function(){var t,e,r=this;if(this.$wbwindow.Worker&&!this.$wbwindow.Worker._wb_worker_overridden){var i=this.$wbwindow.Worker;this.$wbwindow.Worker=(t=i,function(e,i){return r.domConstructorErrorChecker(this,"Worker",arguments),new t(r.rewriteWorker(e),i)}),this.$wbwindow.Worker.prototype=i.prototype,Object.defineProperty(this.$wbwindow.Worker.prototype,"constructor",{value:this.$wbwindow.Worker}),this.$wbwindow.Worker._wb_worker_overridden=!0}if(this.$wbwindow.SharedWorker&&!this.$wbwindow.SharedWorker.__wb_sharedWorker_overridden){var o=this.$wbwindow.SharedWorker;this.$wbwindow.SharedWorker=(e=o,function(t,i){return r.domConstructorErrorChecker(this,"SharedWorker",arguments),new e(r.rewriteWorker(t),i)}),this.$wbwindow.SharedWorker.prototype=o.prototype,Object.defineProperty(this.$wbwindow.SharedWorker.prototype,"constructor",{value:this.$wbwindow.SharedWorker}),this.$wbwindow.SharedWorker.__wb_sharedWorker_overridden=!0}if(this.$wbwindow.ServiceWorkerContainer&&this.$wbwindow.ServiceWorkerContainer.prototype&&this.$wbwindow.ServiceWorkerContainer.prototype.register){var n=this.$wbwindow.ServiceWorkerContainer.prototype.register;this.$wbwindow.ServiceWorkerContainer.prototype.register=function(t,e){var i=new r.URL(t,r.$wbwindow.document.baseURI).href,o=r.getPageUnderModifier();return e&&e.scope?e.scope=r.rewriteUrl(e.scope,!1,o):e={scope:r.rewriteUrl("/",!1,o)},n.call(this,r.rewriteUrl(i,!1,"sw_"),e)}}if(this.$wbwindow.Worklet&&this.$wbwindow.Worklet.prototype&&this.$wbwindow.Worklet.prototype.addModule&&!this.$wbwindow.Worklet.__wb_workerlet_overridden){var s=this.$wbwindow.Worklet.prototype.addModule;this.$wbwindow.Worklet.prototype.addModule=function(t,e){var i=r.rewriteUrl(t,!1,"js_");return s.call(this,i,e)},this.$wbwindow.Worklet.__wb_workerlet_overridden=!0}},y.prototype.initLocOverride=function(t,e,r){if(Object.defineProperty)for(var i=0;i<this.URL_PROPS.length;i++){var o=this.URL_PROPS[i];this.defProp(t,o,this.makeSetLocProp(o,e,r),this.makeGetLocProp(o,r),!0)}},y.prototype.initWombatLoc=function(t){if(!(!t||t.WB_wombat_location&&t.document.WB_wombat_location)){var e=new w(t.location,this),r=this;if(Object.defineProperty){this.defProp(t.Object.prototype,"WB_wombat_location",(function(e){var i=this._WB_wombat_location||this.defaultView&&this.defaultView._WB_wombat_location;i&&(i.href=e),t.location=r.rewriteUrl(e)}),(function(){return this._WB_wombat_location||this.defaultView&&this.defaultView._WB_wombat_location||this.location})),this.initProtoPmOrigin(t),t._WB_wombat_location=e}else t.WB_wombat_location=e,setTimeout(this.checkAllLocations,500),setInterval(this.checkAllLocations,500)}},y.prototype.initProtoPmOrigin=function(t){if(!t.Object.prototype.__WB_pmw){var e=function(t){return this.__WB_source=t,this};try{t.Object.defineProperty(t.Object.prototype,"__WB_pmw",{get:function(){return e},set:function(){},configurable:!0,enumerable:!1})}catch(t){}t.__WB_check_loc=function(t,e){if(t instanceof Location||t instanceof w){if(e)for(var r=0;r<e.length;r++)if(t===e[r])return{};return this.WB_wombat_location}return{}}}},y.prototype.initCheckThisFunc=function(t){try{t.Object.prototype[this.WB_CHECK_THIS_FUNC]||t.Object.defineProperty(t.Object.prototype,this.WB_CHECK_THIS_FUNC,{configutable:!1,enumerable:!1,value:function(t){return t&&t._WB_wombat_obj_proxy?t._WB_wombat_obj_proxy:t}})}catch(t){}},y.prototype.initImportWrapperFunc=function(t){var e=this;t.____wb_rewrite_import__=function(t,r){return t&&(r=new e.URL(r,t).href),import(e.rewriteUrl(r,!1,"esm_"))}},y.prototype.overrideGetOwnPropertyNames=function(t){var e=t.Object.getOwnPropertyNames,r=[this.WB_CHECK_THIS_FUNC,"WB_wombat_location","__WB_pmw","WB_wombat_top","WB_wombat_eval","WB_wombat_runEval"];try{t.Object.defineProperty(t.Object,"getOwnPropertyNames",{value:function(t){for(var i=e(t),o=0;o<r.length;o++){var n=i.indexOf(r[o]);n>=0&&i.splice(n,1)}return i}})}catch(t){console.log(t)}},y.prototype.initHashChange=function(){if(this.$wbwindow.__WB_top_frame){var t=this;this.$wbwindow.addEventListener("message",(function(e){if(e.data&&e.data.from_top){var r=e.data.message;r.wb_type&&"outer_hashchange"===r.wb_type&&t.$wbwindow.location.hash!=r.hash&&(t.$wbwindow.location.hash=r.hash)}})),this.$wbwindow.addEventListener("hashchange",(function(){var e={wb_type:"hashchange",hash:t.$wbwindow.location.hash};t.sendTopMessage(e)}))}},y.prototype.initPostMessageOverride=function(t){if(t.postMessage&&!t.__orig_postMessage){var e=t.postMessage,r=this;t.__orig_postMessage=e;var i=function(i,o,n,s){var a,w,h,p=r.proxyToObj(this);if(p||((p=t).__WB_source=t),p.__WB_source&&p.__WB_source.WB_wombat_location){var c=p.__WB_source;if(a=c.WB_wombat_location.origin,p.__WB_win_id||(p.__WB_win_id={},p.__WB_counter=0),!c.__WB_id){var l=p.__WB_counter;c.__WB_id=l+c.WB_wombat_location.href,p.__WB_counter+=1}p.__WB_win_id[c.__WB_id]=c,w=c.__WB_id,p.__WB_source=void 0}else a=window.WB_wombat_location.origin;"object"==typeof o?(h=o.targetOrigin,n=o.transfer):h=o;var u=h;u===p.location.origin&&(u=a);var _={from:a,to_origin:u,src_id:w,message:i,from_top:s};if("*"!==h){if("null"===p.location.origin||""===p.location.origin)return;h=p.location.origin}return e.call(p,_,h,n)};t.postMessage=i,t.Window.prototype.postMessage=i;var o=null,n=(o=t.EventTarget&&t.EventTarget.prototype?t.EventTarget.prototype:t).addEventListener;o.addEventListener=function(t,e,i){var o,s=r.proxyToObj(this);if("message"===t?o=r.message_listeners.add_or_get(e,(function(){return c(e,s,r)})):"storage"===t?r.storage_listeners.add_or_get(e,(function(){return p(e,s)})):"online"===t||"offline"===t||(o=e),o)return n.call(s,t,o,i)};var s=o.removeEventListener;o.removeEventListener=function(t,e,i){var o,n=r.proxyToObj(this);if("message"===t?o=r.message_listeners.remove(e):"storage"===t?r.storage_listeners.remove(e):o=e,o)return s.call(n,t,o,i)};var a=function(e,i){var o=r.getOrigSetter(t,e);r.defProp(t,e,(function(t){this["__orig_"+e]=t;var n=r.proxyToObj(this),s=t?i(t,n,r):t;return o.call(n,s)}),(function(){return this["__orig_"+e]}))};a("onmessage",c),a("onstorage",p)}},y.prototype.initMessageEventOverride=function(t){t.MessageEvent&&!t.MessageEvent.prototype.__extended&&(this.addEventOverride("target"),this.addEventOverride("srcElement"),this.addEventOverride("currentTarget"),this.addEventOverride("eventPhase"),this.addEventOverride("path"),this.overridePropToProxy(t.MessageEvent.prototype,"source"),t.MessageEvent.prototype.__extended=!0)},y.prototype.initUIEventsOverrides=function(){this.overrideAnUIEvent("UIEvent"),this.overrideAnUIEvent("MouseEvent"),this.overrideAnUIEvent("TouchEvent"),this.overrideAnUIEvent("FocusEvent"),this.overrideAnUIEvent("KeyboardEvent"),this.overrideAnUIEvent("WheelEvent"),this.overrideAnUIEvent("InputEvent"),this.overrideAnUIEvent("CompositionEvent")},y.prototype.initOpenOverride=function(){var t=this.$wbwindow.open;this.$wbwindow.Window.prototype.open&&(t=this.$wbwindow.Window.prototype.open);var e=this,r=function(r,i,o){i&&(i=e.rewriteAttrTarget(i));var n=e.rewriteUrl(r,!1),s=t.call(e.proxyToObj(this),n,i,o);return e.initNewWindowWombat(s,r),s};this.$wbwindow.open=r,this.$wbwindow.Window.prototype.open&&(this.$wbwindow.Window.prototype.open=r);for(var i=0;i<this.$wbwindow.frames.length;i++)try{this.$wbwindow.frames[i].open=r}catch(t){console.log(t)}},y.prototype.rewriteAttrTarget=function(t){return this.wb_info.target_frame&&("_blank"===t||"_parent"===t||"_top"===t||t&&this.$wbwindow===this.$wbwindow.__WB_replay_top)?this.wb_info.target_frame:t},y.prototype.initCookiesOverride=function(){var t=this.getOrigGetter(this.$wbwindow.document,"cookie"),e=this.getOrigSetter(this.$wbwindow.document,"cookie");t||(t=this.getOrigGetter(this.$wbwindow.Document.prototype,"cookie")),e||(e=this.getOrigSetter(this.$wbwindow.Document.prototype,"cookie"));var r=function(t,e){var r=new Date(e);return isNaN(r.getTime())?"Expires=Thu,| 01 Jan 1970 00:00:00 GMT":"Expires="+new Date(r.getTime()+Date.__WB_timediff).toUTCString().replace(",",",|")},i=this;this.defProp(this.$wbwindow.document,"cookie",(function(t){if(t){for(var o=t.replace(i.cookie_expires_regex,r).split(i.SetCookieRe),n=0;n<o.length;n++)o[n]=i.rewriteCookie(o[n]);return e.call(i.proxyToObj(this),o.join(","))}}),(function(){return t.call(i.proxyToObj(this))}))},y.prototype.initRegisterUnRegPHOverride=function(){var t=this,e=this.$wbwindow.navigator;if(e.registerProtocolHandler){var r=e.registerProtocolHandler;e.registerProtocolHandler=function(e,i,o){return r.call(this,e,t.rewriteUrl(i),o)}}if(e.unregisterProtocolHandler){var i=e.unregisterProtocolHandler;e.unregisterProtocolHandler=function(e,r){return i.call(this,e,t.rewriteUrl(r))}}},y.prototype.initMiscNavigatorOverrides=function(){this.$wbwindow.navigator.sendBeacon&&(this.$wbwindow.navigator.sendBeacon=function(){return!0}),Object.defineProperty(navigator,"onLine",{value:!0}),this.$wbwindow.navigator.mediaDevices&&(this.$wbwindow.navigator.mediaDevices.setCaptureHandleConfig=function(){}),this.$wbwindow.navigator.getInstalledRelatedApps&&(this.$wbwindow.navigator.getInstalledRelatedApps=function(){return Promise.resolve([])})},y.prototype.initPresentationRequestOverride=function(){if(this.$wbwindow.PresentationRequest&&this.$wbwindow.PresentationRequest.prototype){var t=this,e=this.$wbwindow.PresentationRequest;this.$wbwindow.PresentationRequest=(r=this.$wbwindow.PresentationRequest,function(e){t.domConstructorErrorChecker(this,"PresentationRequest",arguments);var i=e;if(null!=e)if(Array.isArray(i))for(var o=0;o<i.length;o++)i[o]=t.rewriteUrl(i[o],!0,"mp_");else i=t.rewriteUrl(e,!0,"mp_");return new r(i)}),this.$wbwindow.PresentationRequest.prototype=e.prototype,Object.defineProperty(this.$wbwindow.PresentationRequest.prototype,"constructor",{value:this.$wbwindow.PresentationRequest})}var r},y.prototype.initDisableNotificationsGeoLocation=function(){window.Notification&&(window.Notification.requestPermission=function(t){return t&&t("denied"),Promise.resolve("denied")});var t=function(t){t&&(t.getCurrentPosition&&(t.getCurrentPosition=function(t,e,r){e&&e({code:2,message:"not available"})}),t.watchPosition&&(t.watchPosition=function(t,e,r){e&&e({code:2,message:"not available"})}))};window.geolocation&&t(window.geolocation),window.navigator.geolocation&&t(window.navigator.geolocation)},y.prototype.initStorageOverride=function(){this.addEventOverride("storageArea",this.$wbwindow.StorageEvent.prototype),i.yes=!1;var t={};if(this.wb_info.storage)try{t=JSON.parse(this.wb_info.storage)}catch(t){console.warn("Error parsing storage, storages not loaded")}a(this,"localStorage",t.local),a(this,"sessionStorage",t.session),this.$wbwindow.Storage=s,i.yes=!0},y.prototype.initIndexedDBOverride=function(){if(this.$wbwindow.IDBFactory){var t=this.$wbwindow.IDBFactory.prototype,e="wb-"+this.wb_orig_origin+"-",r=t.open;t.open=function(t,i){return r.call(this,e+t,i)};var i=t.deleteDatabase;t.delete=function(t){return i.call(this,e+t,options)};var o=t.databases;t.databases=function(){var t=this;return new Promise((function(r,i){o.call(t).then((function(t){for(var i=[],o=0;o<t.length;o++)0===t[o].name.indexOf(e)&&i.push({name:t[o].name.substring(e.length),version:t[o].version});r(i)})).catch((function(t){i(t)}))}))}}},y.prototype.initCachesOverride=function(){if(this.$wbwindow.Cache){var t=this.$wbwindow.Cache.prototype;t.match=function(){return Promise.resolve(void 0)},t.matchAll=function(){return Promise.resolve([])},t.add=function(){return Promise.resolve(void 0)},t.put=function(){return Promise.resolve(void 0)},t.delete=function(){return Promise.resolve(!1)},t.keys=function(){return Promise.resolve([])}}},y.prototype.initCacheStorageOverride=function(){if(this.$wbwindow.CacheStorage){this.$wbwindow.chrome&&(this.$wbwindow.chrome={});var t=this.$wbwindow.CacheStorage.prototype,e="wb-"+this.wb_orig_origin+"-",r=t.open;t.open=function(t){return r.call(this,e+t)};var i=t.has;t.has=function(t){return i.call(this,e+t)};var o=t.delete;t.delete=function(t){return o.call(this,e+t)};var n=t.keys;t.keys=function(){var t=this;return new Promise((function(r,i){n.call(t).then((function(t){for(var i=[],o=0;o<t.length;o++)0===t[o].indexOf(e)&&i.push(t[o].substring(e.length));r(i)})).catch((function(t){i(t)}))}))};t.match;t.match=function(t,e){var r=this;return this.keys().then((function(i){var o;return i.reduce((function(i,n){return i.then((function(){return o||r.open(n).then((function(r){return r.match(t,e)})).then((function(t){return o=t}))}))}),Promise.resolve())}))}}},y.prototype.initWindowObjProxy=function(t){if(t.Proxy){var e=this.getAllOwnProps(t),r={},i=this,o=new t.Proxy({},{get:function(o,n){switch(n){case"top":return i.$wbwindow.WB_wombat_top._WB_wombat_obj_proxy;case"parent":if(i.$wbwindow===i.$wbwindow.WB_wombat_top)return i.$wbwindow.WB_wombat_top._WB_wombat_obj_proxy;try{var s=i.$wbwindow.parent._WB_wombat_obj_proxy;if(s)return s}catch(t){}return i.$wbwindow.WB_wombat_top._WB_wombat_obj_proxy}return i.defaultProxyGet(t,n,e,r)},set:function(e,r,i){switch(r){case"location":return t.WB_wombat_location=i,!0;case"postMessage":case"document":return!0}try{if(!Reflect.set(e,r,i))return!1}catch(t){}return Reflect.set(t,r,i)},has:function(e,r){return r in t},ownKeys:function(e){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))},getOwnPropertyDescriptor:function(e,r){var i=Object.getOwnPropertyDescriptor(e,r);return i||(i=Object.getOwnPropertyDescriptor(t,r))&&(i.configurable=!0),i},getPrototypeOf:function(e){return Object.getPrototypeOf(t)},setPrototypeOf:function(t,e){return!1},isExtensible:function(e){return Object.isExtensible(t)},preventExtensions:function(e){return Object.preventExtensions(t),!0},deleteProperty:function(e,r){var i=Object.getOwnPropertyDescriptor(t,r);return void 0===i||!1!==i.configurable&&(delete e[r],delete t[r],!0)},defineProperty:function(e,r,i){var o=i||{};return o.hasOwnProperty("value")||o.hasOwnProperty("get")||o.hasOwnProperty("set")||(o.value=t[r]),Reflect.defineProperty(t,r,o),Reflect.defineProperty(e,r,o)}});return t._WB_wombat_obj_proxy=o,o}},y.prototype.initDocumentObjProxy=function(t){if(this.initDocOverrides(t),this.$wbwindow.Proxy){var e={},r=this.getAllOwnProps(t),i=this,o=new this.$wbwindow.Proxy(t,{get:function(o,n){return i.defaultProxyGet(t,n,r,e)},set:function(e,r,i){return"location"===r?(t.WB_wombat_location=i,!0):Reflect.set(e,r,i)}});return t._WB_wombat_obj_proxy=o,o}},y.prototype.initAutoFetchWorker=function(){if(this.wbUseAFWorker){var t=new h(this,{isTop:this.$wbwindow===this.$wbwindow.__WB_replay_top,workerURL:(this.wb_info.auto_fetch_worker_prefix||this.wb_info.static_prefix)+"autoFetchWorker.js?init="+encodeURIComponent(JSON.stringify({mod:this.wb_info.mod,prefix:this.wb_abs_prefix,rwRe:this.wb_unrewrite_rx.source}))});this.WBAutoFetchWorker=t,this.$wbwindow.$WBAutoFetchWorker$=t;var e=this;this.utilFns.wbSheetMediaQChecker=function(){e._removeEventListener(this,"load",e.utilFns.wbSheetMediaQChecker),null!=this.sheet&&e.WBAutoFetchWorker&&e.WBAutoFetchWorker.deferredSheetExtraction(this.sheet)}}},y.prototype.initTopFrameNotify=function(t){var e=this,r=function(r){if(e.$wbwindow.__WB_top_frame){if(e.$wbwindow.WB_wombat_location){var i=e.$wbwindow.WB_wombat_location.href;if("string"==typeof i&&"about:blank"!==i&&0!==i.indexOf("javascript:")&&("complete"===e.$wbwindow.document.readyState&&e.wbUseAFWorker&&e.WBAutoFetchWorker&&e.WBAutoFetchWorker.extractFromLocalDoc(),e.$wbwindow===e.$wbwindow.__WB_replay_top)){for(var o=[],n=e.$wbwindow.document.querySelectorAll("link[rel*=\'icon\']"),s=0;s<n.length;s++){var a=n[s];o.push({rel:a.rel,href:e.wb_getAttribute.call(a,"href")})}o.push({rel:"icon",href:e.rewriteUrl("/favicon.ico")});var w={icons:o,url:e.$wbwindow.WB_wombat_location.href,ts:e.wb_info.timestamp,request_ts:e.wb_info.request_ts,is_live:e.wb_info.is_live,title:e.$wbwindow.document?e.$wbwindow.document.title:"",readyState:e.$wbwindow.document.readyState,wb_type:"load"};e.sendTopMessage(w)}}}else{var h=e.$wbwindow.location.hash;e.$wbwindow.location.replace(t.top_url+h)}};"complete"===this.$wbwindow.document.readyState?r():this.$wbwindow.addEventListener?this.$wbwindow.document.addEventListener("readystatechange",r):this.$wbwindow.attachEvent&&this.$wbwindow.document.attachEvent("onreadystatechange",r)},y.prototype.initTopFrame=function(t){if(this.wb_is_proxy)return t.__WB_replay_top=t.top,t.__WB_top_frame=void 0,this.replayTopHost=r.location.host,void(this.replayTopProtocol=r.location.protocol);for(var e=function(t){try{return!!t&&(t.wbinfo?t.wbinfo.is_framed:null!=t._wb_wombat)}catch(t){return!1}},r=t;r.parent!=r&&e(r.parent);)r=r.parent;t.__WB_replay_top=r,this.replayTopHost=r.location.host,this.replayTopProtocol=r.location.protocol;var i=r.parent;if(i!=t&&this.wb_info.is_framed||(i=void 0),i?(t.__WB_top_frame=i,this.initFrameElementOverride(t)):t.__WB_top_frame=void 0,!this.wb_opts.embedded&&r==t&&this.wbUseAFWorker){var o=this;this.$wbwindow.addEventListener("message",(function(t){t.data&&"aaworker"===t.data.wb_type&&o.WBAutoFetchWorker&&o.WBAutoFetchWorker.postMessage(t.data.msg)}),!1)}},y.prototype.initFrameElementOverride=function(t){if(Object.defineProperty&&this.proxyToObj(t.__WB_replay_top)==this.proxyToObj(t))try{Object.defineProperty(t,"frameElement",{value:null,configurable:!1})}catch(t){}},y.prototype.initWombatTop=function(t){if(Object.defineProperty){this.defProp(t.Object.prototype,"WB_wombat_top",(function(t){this.top=t}),(function(){return this.__WB_replay_top?this.__WB_replay_top:(t=this,(void 0===window.constructor?t instanceof window.constructor:t.window==t)?this:this.top);var t}))}},y.prototype.initEvalOverride=function(){var t=this.rewriteEvalArg,e=function(){};this.wrappedEval=function(e){return function(r){return t(e,r)}};var r=this,i=function(e){var r=this;return r&&r.eval&&r.eval!==eval?{eval:function(){return r.eval.__WB_orig_apply(r,arguments)}}:{eval:function(r){return t(e,r)}}},o=function(e){var i=this;return i&&i.eval&&i.eval!==eval?{eval:function(){return i.eval.__WB_orig_apply(i,[].slice.call(arguments,2))}}:{eval:function(i,o,n){var s=i===r.proxyToObj(r.$wbwindow);try{s=s&&!o.callee.caller}catch(t){s=!1}return t(e,n,s)}}};this.defProp(this.$wbwindow.Object.prototype,"WB_wombat_runEval",e,(function(){return i})),this.defProp(this.$wbwindow.Object.prototype,"WB_wombat_runEval2",e,(function(){return o}))},y.prototype.wombatInit=function(){this._internalInit(),this.initCookiePreset(),this.initHistoryOverrides(),this.overrideFunctionApply(this.$wbwindow),this.overrideFunctionCall(this.$wbwindow),this.overrideFunctionBind(this.$wbwindow),this.initDocTitleOverride(),this.initHashChange(),this.wb_opts.skip_postmessage||(this.initPostMessageOverride(this.$wbwindow),this.initMessageEventOverride(this.$wbwindow)),this.initCheckThisFunc(this.$wbwindow),this.initImportWrapperFunc(this.$wbwindow),this.overrideGetOwnPropertyNames(this.$wbwindow),this.initUIEventsOverrides(),this.initDocWriteOpenCloseOverride(),this.initEvalOverride(),this.initHTTPOverrides(),this.initAudioOverride(),this.initFontFaceOverride(this.$wbwindow),this.initWorkerOverrides(),this.initTextNodeOverrides(),this.initCSSOMOverrides(),this.overrideHtmlAssign(this.$wbwindow.Element,"innerHTML",!0),this.overrideHtmlAssign(this.$wbwindow.Element,"outerHTML",!0),this.overrideHtmlAssignSrcDoc(this.$wbwindow.HTMLIFrameElement,"srcdoc",!0),this.overrideHtmlAssign(this.$wbwindow.HTMLStyleElement,"textContent"),this.overrideShadowDom(),this.overridePropExtract(this.$wbwindow.Document.prototype,"URL"),this.overridePropExtract(this.$wbwindow.Document.prototype,"documentURI"),this.overridePropExtract(this.$wbwindow.Node.prototype,"baseURI"),this.overrideAttrProps(),this.overrideDataSet(),this.initInsertAdjacentElementHTMLOverrides(),this.overrideIframeContentAccess("contentWindow"),this.overrideIframeContentAccess("contentDocument"),this.initIntersectionObsOverride(),this.overrideFuncArgProxyToObj(this.$wbwindow.MutationObserver,"observe"),this.overrideFuncArgProxyToObj(this.$wbwindow.Node,"compareDocumentPosition"),this.overrideFuncArgProxyToObj(this.$wbwindow.Node,"contains"),this.overrideFuncArgProxyToObj(this.$wbwindow.Document,"createTreeWalker"),this.overrideFuncArgProxyToObj(this.$wbwindow.Document,"evaluate",1),this.overrideFuncArgProxyToObj(this.$wbwindow.XSLTProcessor,"transformToFragment",1),this.overrideFuncThisProxyToObj(this.$wbwindow,"getComputedStyle",this.$wbwindow),this.overrideFuncThisProxyToObj(this.$wbwindow,"clearTimeout"),this.overrideFuncThisProxyToObj(this.$wbwindow,"clearInterval"),this.overrideFuncThisProxyToObj(this.$wbwindow.EventTarget.prototype,"dispatchEvent"),this.overrideDeProxyPropAssign(this.$wbwindow.TreeWalker.prototype,"currentNode"),this.initTimeoutIntervalOverrides(),this.initQuerySelectorOverride(),this.overrideSWAccess(this.$wbwindow),this.initElementGetSetAttributeOverride(),this.initSvgImageOverrides(),this.initAttrOverrides(),this.initCookiesOverride(),this.initCreateElementNSFix(),this.wb_opts.skip_dom||this.initDomOverride(),this.initRegisterUnRegPHOverride(),this.initPresentationRequestOverride(),this.initMiscNavigatorOverrides(),this.initSeededRandom(this.wb_info.wombat_sec),this.initCryptoRandom(),this.initFixedRatio(this.wb_info.pixel_ratio||1),this.initDateOverride(this.wb_info.wombat_sec),this.initBlobOverride(),this.initWSOverride(),this.initOpenOverride(),this.initDisableNotificationsGeoLocation(),this.initStorageOverride(),this.initCacheStorageOverride(),this.initCachesOverride(),this.initIndexedDBOverride(),this.initWindowObjProxy(this.$wbwindow),this.initDocumentObjProxy(this.$wbwindow.document);var t=this;return{extract_orig:this.extractOriginalURL,rewrite_url:this.rewriteUrl,watch_elem:this.watchElem,init_new_window_wombat:this.initNewWindowWombat,init_paths:this.initPaths,local_init:function(e){var r=t.$wbwindow._WB_wombat_obj_proxy[e];return"document"===e&&r&&!r._WB_wombat_obj_proxy&&t.initDocumentObjProxy(r)||r},showCSPViolations:function(e){t._addRemoveCSPViolationListener(e)}}};const v=y;window._WBWombat=v,window._WBWombatInit=function(t){if(this._wb_wombat)this._wb_wombat.init_paths(t);else{var e=new v(this,t);this._wb_wombat=e.wombatInit()}}})();'}),this.staticData.set(this.staticPrefix+"wombatWorkers.js",{type:"application/javascript",content:'(()=>{function e(t){if(!(this instanceof e))return new e(t);this.info=t,this.initImportScriptsRewrite(),this.initHTTPOverrides(),this.initClientApisOverride(),this.initCacheApisOverride()}e.prototype.noRewrite=function(e){return!e||0===e.indexOf("blob:")||0===e.indexOf("javascript:")||0===e.indexOf("data:")||0===e.indexOf(this.info.prefix)},e.prototype.isRelURL=function(e){return 0===e.indexOf("/")||!e.startsWith("http:")&&!e.startsWith("https:")},e.prototype.maybeResolveURL=function(e,t){if(!t)return e;try{return new URL(e,t).href}catch(e){}return e},e.prototype.ensureURL=function(e,t){if(!e)return e;var r;switch(typeof e){case"string":r=e;break;case"object":r=e.toString();break;default:return null}return this.noRewrite(r)?null:this.isRelURL(r)?this.maybeResolveURL(r,t):0===r.indexOf(self.location.origin)?this.maybeResolveURL(r.slice(self.location.origin.length),t):r},e.prototype.rewriteURL=function(e){var t=this.ensureURL(e,this.info.originalURL);return t?this.info.prefixMod?this.info.prefixMod+t:t:e},e.prototype.rewriteClientWindowURL=function(e,t){var r=this.ensureURL(e,t?t.url:this.info.originalURL);return r?this.info.prefix?this.info.prefix+"mp_/"+r:r:e},e.prototype.rewriteWSURL=function(e){if(!e)return e;var t=typeof e,r=e;if("object"===t)r=e.toString();else if("string"!==t)return e;if(!r)return r;var i="https://",o=0===this.info.prefix.indexOf(i);return this.info.prefix.replace(o?i:"http://",o?"wss://":"ws://")+"ws_/"+r},e.prototype.rewriteArgs=function(e){for(var t=new Array(e.length),r=0;r<t.length;r++)t[r]=this.rewriteURL(e[r]);return t},e.prototype.rewriteFetchApi=function(e){var t=e;switch(typeof e){case"string":t=this.rewriteURL(e);break;case"object":if(e.url){var r=this.rewriteURL(e.url);r!==e.url&&(t=new Request(r,e))}else e.href&&(t=e.href)}return t},e.prototype.rewriteCacheApi=function(e){var t=e;return"string"==typeof e&&(t=this.rewriteURL(e)),t},e.prototype.initImportScriptsRewrite=function(){if(self.importScripts){var e=this,t=self.importScripts;self.importScripts=function(){var r=e.rewriteArgs(arguments);return t.apply(this,r)}}},e.prototype.initHTTPOverrides=function(){var e,t,r,i=this;if(self.XMLHttpRequest&&self.XMLHttpRequest.prototype&&self.XMLHttpRequest.prototype.open){var o=self.XMLHttpRequest.prototype.open;self.XMLHttpRequest.prototype.open=function(e,t,r,n,s){var p=i.rewriteURL(t),l=!0;null==r||r||(l=!1),o.call(this,e,p,l,n,s),-1===p.indexOf("data:")&&this.setRequestHeader("X-Pywb-Requested-With","XMLHttpRequest")}}if(null!=self.fetch){var n=self.fetch;self.fetch=function(e,t){var r=i.rewriteFetchApi(e),o=t||{};return o.credentials="include",n.call(this,r,o)}}if(self.Request&&self.Request.prototype){var s=self.Request;self.Request=(e=self.Request,function(t,r){var o=r||{},n=i.rewriteFetchApi(t);return o.credentials="include",new e(n,o)}),self.Request.prototype=s.prototype}if(self.Response&&self.Response.prototype){var p=self.Response.prototype.redirect;self.Response.prototype.redirect=function(e,t){var r=i.rewriteUrl(e);return p.call(this,r,t)}}if(self.EventSource&&self.EventSource.prototype){var l=self.EventSource;self.EventSource=(t=self.EventSource,function(e,r){var o=e;return null!=e&&(o=i.rewriteUrl(e)),new t(o,r)}),self.EventSource.prototype=l.prototype,Object.defineProperty(self.EventSource.prototype,"constructor",{value:self.EventSource})}if(self.WebSocket&&self.WebSocket.prototype){var f=self.WebSocket;self.WebSocket=(r=self.WebSocket,function(e,t){var o=e;return null!=e&&(o=i.rewriteWSURL(e)),new r(o,t)}),self.WebSocket.prototype=f.prototype,Object.defineProperty(self.WebSocket.prototype,"constructor",{value:self.WebSocket})}},e.prototype.initClientApisOverride=function(){var e=this;if(self.Clients&&self.Clients.prototype&&self.Clients.prototype.openWindow){var t=self.Clients.prototype.openWindow;self.Clients.prototype.openWindow=function(r){var i=e.rewriteClientWindowURL(r);return t.call(this,i)}}if(self.WindowClient&&self.WindowClient.prototype&&self.WindowClient.prototype.navigate){var r=self.WindowClient.prototype.navigate;self.WindowClient.prototype.navigate=function(t){var i=e.rewriteClientWindowURL(t,this);return r.call(this,i)}}},e.prototype.initCacheApisOverride=function(){var e=this;if(self.CacheStorage&&self.CacheStorage.prototype&&self.CacheStorage.prototype.match){var t=self.CacheStorage.prototype.match;self.CacheStorage.prototype.match=function(r,i){var o=e.rewriteCacheApi(r);return t.call(this,o,i)}}if(self.Cache&&self.Cache.prototype){if(self.Cache.prototype.match){var r=self.Cache.prototype.match;self.Cache.prototype.match=function(t,i){var o=e.rewriteCacheApi(t);return r.call(this,o,i)}}if(self.Cache.prototype.matchAll){var i=self.Cache.prototype.matchAll;self.Cache.prototype.matchAll=function(t,r){var o=e.rewriteCacheApi(t);return i.call(this,o,r)}}if(self.Cache.prototype.add){var o=self.Cache.prototype.add;self.Cache.prototype.add=function(t,r){var i=e.rewriteCacheApi(t);return o.call(this,i,r)}}if(self.Cache.prototype.addAll){var n=self.Cache.prototype.addAll;self.Cache.prototype.addAll=function(t){var r=t;if(Array.isArray(t)){r=new Array(t.length);for(var i=0;i<t.length;i++)r[i]=e.rewriteCacheApi(t[i])}return n.call(this,r)}}if(self.Cache.prototype.put){var s=self.Cache.prototype.put;self.Cache.prototype.put=function(t,r){var i=e.rewriteCacheApi(t);return s.call(this,i,r)}}if(self.Cache.prototype.delete){var p=self.Cache.prototype.delete;self.Cache.prototype.delete=function(t,r){var i=e.rewriteCacheApi(t);return p.call(this,i,r)}}if(self.Cache.prototype.keys){var l=self.Cache.prototype.keys;self.Cache.prototype.keys=function(t,r){var i=e.rewriteCacheApi(t);return l.call(this,i,r)}}}},self.WBWombat=e})();'}),n.has("serveIndex")){const t={type:"text/html",content:this.getIndexHtml(n)};this.staticData.set(this.prefix,t),this.staticData.set(this.prefix+"index.html",t)}if(n.has("injectScripts")){const t=n.get("injectScripts").split(",");r.injectScripts=r.injectScripts?[...t,...r.injectScripts]:t}r.injectScripts&&(r.injectScripts=r.injectScripts.map((t=>this.staticPrefix+"proxy/"+t))),n.has("adblockUrl")&&(r.adblockUrl=n.get("adblockUrl")),this.collections=new i(o,n.get("root"),r),this.collections.loadAll(n.get("dbColl")),this.proxyOriginMode=!!n.get("proxyOriginMode"),this.api=new e(this.collections),this.apiPrefix=this.replayPrefix+"api/",this.allowRewrittenCache=!!n.get("allowCache"),this.stats=n.get("stats")?new fb:null,self.addEventListener("install",(()=>{self.skipWaiting()})),self.addEventListener("activate",(t=>{t.waitUntil(self.clients.claim()),console.log("Activate!")})),self.addEventListener("fetch",(t=>{t.respondWith(this.handleFetch(t))})),self.addEventListener("message",(t=>{"reload_all"===t.data.msg_type&&t.waitUntil(this.collections.loadAll())}))}getIndexHtml(t){const e=t.get("indexScript")||"./ui.js",r=t.get("indexAppTag")||"replay-app-main";return`\n <!doctype html>\n <html>\n <head><script src="${e}"><\/script></head>\n <body>\n <${r}></${r}>\n </body></html>`}handleFetch(t){const e=t.request.url;if(this.proxyOriginMode)return this.getResponseFor(t.request,t);if(!e.startsWith(this.prefix))return"chrome-extension://invalid/"===e?_(t.request,"Invalid URL"):this.defaultFetch(t.request);if(this.collections.root&&e.slice(this.prefix.length).indexOf("/")<0)return this.defaultFetch(t.request);if(e.startsWith(this.staticPrefix+"proxy/"))return this.staticPathProxy(e,t.request);if(e.startsWith(this.replayPrefix)&&!e.startsWith(this.staticPrefix))return this.getResponseFor(t.request,t);const r=new URL(e);r.search="",r.hash="";const i=r.href;for(const t of this.staticData.keys())if(t===i){const{content:e,type:r}=this.staticData.get(t);return new Response(e,{headers:{"Content-Type":r}})}return("http:"==r.protocol||"https:"==r.protocol)&&r.pathname.indexOf("/",1)<0?this.handleOffline(t.request):this.defaultFetch(t.request)}async staticPathProxy(t,e){return t=t.slice((this.staticPrefix+"proxy/").length),t=new URL(t,self.location.href).href,e=new Request(t),this.defaultFetch(e)}async defaultFetch(t){const e={};return"only-if-cached"===t.cache&&"same-origin"!==t.mode&&(e.cache="default"),self.fetch(t,e)}async ensureCached(t){const e=await caches.open("wabac-offline");for(let r of t){r=new URL(r,self.location.href).href;let i=await e.match(r,{ignoreSearch:!0});if(!i)try{i=await this.defaultFetch(new Request(r)),await e.put(r,i)}catch(t){console.warn(`Failed to Auto Cache: ${r}`,t)}}}async handleOffline(t){let e=null;const r=await caches.open("wabac-offline");try{e=await this.defaultFetch(t)}catch(i){return e=await r.match(t,{ignoreSearch:!0}),e||(e=_(t,"Sorry, this url was not cached for offline use")),e}if(t.url.startsWith(this.prefix+"?"))return e;if(200===e.status){const i=e.clone();await r.put(t,i)}else console.warn(`Not Cacheing ${t.url} - Status ${e.status}`);return e}async getResponseFor(t,e){if(!this.proxyOriginMode&&t.url.startsWith(this.apiPrefix))return this.stats&&t.url.startsWith(this.apiPrefix+"stats.json")?await this.stats.getStats(e):await this.api.apiResponse(t.url.slice(this.apiPrefix.length),t,e);await this.collections.inited;const r=A(t),i=t.headers.get("range");try{if(this.allowRewrittenCache&&!i){const e=await self.caches.match(t);if(e&&!!e.headers.get(Db)===r)return e}}catch(t){}let n=this.collections.root;n||(n=t.url.slice(this.replayPrefix.length).split("/",1)[0]);const s=await this.collections.getColl(n);if(!s||!this.proxyOriginMode&&!t.url.startsWith(s.prefix))return _(t);const o=this.proxyOriginMode?t.url:t.url.substring(s.prefix.length),a={isRoot:!!this.collections.root};this.proxyOriginMode&&(a.mod="id_",a.proxyOrigin=s.config.extraConfig.proxyOrigin,a.localOrigin=self.location.origin);const c=new Pb(o,t,a);if(!c.url)return _(t,`Replay URL ${o} not found`);const l=await s.handleRequest(c,e);if(l){if(this.stats&&this.stats.updateStats(l,l.status,t,e),this.allowRewrittenCache&&200===l.status)try{const e=await self.caches.open("wabac-"+s.name);r&&l.headers.set(Db,"true");const i=l.clone();await e.put(t,i)}catch(t){console.warn(t)}return l}return i&&console.log("Not Found Range!: "+i),_(t)}},console.log("sw init")):self.postMessage&&(new pb(self),console.log("ww init"))})();