diff --git "a/assets/parquetWorker-hWEC7KGn.js" "b/assets/parquetWorker-hWEC7KGn.js" new file mode 100644--- /dev/null +++ "b/assets/parquetWorker-hWEC7KGn.js" @@ -0,0 +1,973 @@ +(function(){"use strict";const at=["BOOLEAN","INT32","INT64","INT96","FLOAT","DOUBLE","BYTE_ARRAY","FIXED_LEN_BYTE_ARRAY"],ee=["PLAIN",void 0,"PLAIN_DICTIONARY","RLE","BIT_PACKED","DELTA_BINARY_PACKED","DELTA_LENGTH_BYTE_ARRAY","DELTA_BYTE_ARRAY","RLE_DICTIONARY","BYTE_STREAM_SPLIT"],sn=["REQUIRED","OPTIONAL","REPEATED"],ln=["UTF8","MAP","MAP_KEY_VALUE","LIST","ENUM","DECIMAL","DATE","TIME_MILLIS","TIME_MICROS","TIMESTAMP_MILLIS","TIMESTAMP_MICROS","UINT_8","UINT_16","UINT_32","UINT_64","INT_8","INT_16","INT_32","INT_64","JSON","BSON","INTERVAL"],an=["UNCOMPRESSED","SNAPPY","GZIP","LZO","BROTLI","LZ4","ZSTD","LZ4_RAW"],ct=["DATA_PAGE","INDEX_PAGE","DICTIONARY_PAGE","DATA_PAGE_V2"],wt=864e5;function ut(e,t,n,r,i=!0){if(t&&r.endsWith("_DICTIONARY")){t=gt(t,n,i);let o=e;e instanceof Uint8Array&&!(t instanceof Uint8Array)&&(o=new t.constructor(e.length));for(let f=0;fJSON.parse(f.decode(A)))}if(r==="BSON")throw new Error("parquet bson not supported");if(r==="INTERVAL")throw new Error("parquet interval not supported");if(r==="UTF8"||n&&t.type==="BYTE_ARRAY"){const f=new TextDecoder,A=new Array(e.length);for(let l=0;l>64n)-2440588n),n=Number((e&0xffffffffffffffffn)/1000000n),r=t*wt+n;return new Date(r)}function ht(e){if(!e)return;const t=e[1]<<8|e[0],n=t>>15?-1:1,r=t>>10&31,i=t&1023;return r===0?n*Math.pow(2,-14)*(i/1024):r===31?i?NaN:n*(1/0):n*Math.pow(2,r-15)*(1+i/1024)}function It(e,t,n){const r=e[t],i=[];let o=1;if(r.num_children)for(;i.lengthf.element.name===i);if(!o)throw new Error(`parquet schema element not found: ${t}`);r.push(o),n=o}return r}function Bt(e){let t=0;for(const{element:n}of e)n.repetition_type==="REPEATED"&&t++;return t}function Qe(e){let t=0;for(const{element:n}of e.slice(1))n.repetition_type!=="REQUIRED"&&t++;return t}function wn(e){if(!e||e.element.converted_type!=="LIST"||e.children.length>1)return!1;const t=e.children[0];return!(t.children.length>1||t.element.repetition_type!=="REPEATED")}function un(e){if(!e||e.element.converted_type!=="MAP"||e.children.length>1)return!1;const t=e.children[0];if(t.children.length!==2||t.element.repetition_type!=="REPEATED")return!1;const n=t.children.find(i=>i.element.name==="key");if((n==null?void 0:n.element.repetition_type)==="REPEATED")return!1;const r=t.children.find(i=>i.element.name==="value");return(r==null?void 0:r.element.repetition_type)!=="REPEATED"}const H={STOP:0,TRUE:1,FALSE:2,BYTE:3,I16:4,I32:5,I64:6,DOUBLE:7,BINARY:8,LIST:9,SET:10,MAP:11,STRUCT:12,UUID:13};function yt(e){let t=0;const n={};for(;e.offset>>1^-(t&1)}function Ve(e){const t=gn(e);return t>>BigInt(1)^-(t&BigInt(1))}function vt(e){return e&15}function pt(e,t){const n=e.view.getUint8(e.offset++);if((n&15)===H.STOP)return[0,0,t];const r=n>>4;let i;if(r)i=t+r;else throw new Error("non-delta field id not supported");return[vt(n),i,i]}function hn(e){const t=e.view.getUint8(e.offset++),n=t>>4,r=vt(t);if(n===15){const i=te(e);return[r,i]}return[r,n]}async function Ge(e,t=1<<19){if(!e)throw new Error("parquet file is required");if(!(e.byteLength>=0))throw new Error("parquet file byteLength is required");const n=Math.max(0,e.byteLength-t),r=await e.slice(n,e.byteLength),i=new DataView(r);if(i.getUint32(r.byteLength-4,!0)!==827474256)throw new Error("parquet file invalid (footer != PAR1)");const o=i.getUint32(r.byteLength-8,!0);if(o>e.byteLength-8)throw new Error(`parquet metadata length ${o} exceeds available buffer ${e.byteLength-8}`);if(o+8>t){const f=e.byteLength-o-8,A=await e.slice(f,n),l=new ArrayBuffer(o+8),s=new Uint8Array(l);return s.set(new Uint8Array(A)),s.set(new Uint8Array(r),n-f),Ct(l)}else return Ct(r)}function Ct(e){var c;if(!e)throw new Error("parquet file is required");const t=new DataView(e);if(t.byteLength<8)throw new Error("parquet file is too short");if(t.getUint32(t.byteLength-4,!0)!==827474256)throw new Error("parquet file invalid (footer != PAR1)");const n=t.byteLength-8,r=t.getUint32(n,!0);if(r>t.byteLength-8)throw new Error(`parquet metadata length ${r} exceeds available buffer ${t.byteLength-8}`);const i=n-r,f=yt({view:t,offset:i}),A=new TextDecoder;function l(I){return I&&A.decode(I)}const s=f.field_1,a=f.field_2.map(I=>({type:at[I.field_1],type_length:I.field_2,repetition_type:sn[I.field_3],name:l(I.field_4),num_children:I.field_5,converted_type:ln[I.field_6],scale:I.field_7,precision:I.field_8,field_id:I.field_9,logical_type:In(I.field_10)})),g=a.filter(I=>I.type),u=f.field_3,h=f.field_4.map(I=>{var v;return{columns:I.field_1.map((B,Q)=>{var b,C;return{file_path:l(B.field_1),file_offset:B.field_2,meta_data:B.field_3&&{type:at[B.field_3.field_1],encodings:(b=B.field_3.field_2)==null?void 0:b.map(L=>ee[L]),path_in_schema:B.field_3.field_3.map(l),codec:an[B.field_3.field_4],num_values:B.field_3.field_5,total_uncompressed_size:B.field_3.field_6,total_compressed_size:B.field_3.field_7,key_value_metadata:B.field_3.field_8,data_page_offset:B.field_3.field_9,index_page_offset:B.field_3.field_10,dictionary_page_offset:B.field_3.field_11,statistics:En(B.field_3.field_12,g[Q]),encoding_stats:(C=B.field_3.field_13)==null?void 0:C.map(L=>({page_type:ct[L.field_1],encoding:ee[L.field_2],count:L.field_3})),bloom_filter_offset:B.field_3.field_14,bloom_filter_length:B.field_3.field_15,size_statistics:B.field_3.field_16&&{unencoded_byte_array_data_bytes:B.field_3.field_16.field_1,repetition_level_histogram:B.field_3.field_16.field_2,definition_level_histogram:B.field_3.field_16.field_3}},offset_index_offset:B.field_4,offset_index_length:B.field_5,column_index_offset:B.field_6,column_index_length:B.field_7,crypto_metadata:B.field_7,encrypted_column_metadata:B.field_8}}),total_byte_size:I.field_2,num_rows:I.field_3,sorting_columns:(v=I.field_4)==null?void 0:v.map(B=>({column_idx:B.field_1,descending:B.field_2,nulls_first:B.field_3})),file_offset:I.field_5,total_compressed_size:I.field_6,ordinal:I.field_7}}),E=(c=f.field_5)==null?void 0:c.map(I=>({key:l(I.field_1),value:l(I.field_2)})),d=l(f.field_6);return{version:s,schema:a,num_rows:u,row_groups:h,key_value_metadata:E,created_by:d,metadata_length:r}}function In(e){return e!=null&&e.field_1?{type:"STRING"}:e!=null&&e.field_2?{type:"MAP"}:e!=null&&e.field_3?{type:"LIST"}:e!=null&&e.field_4?{type:"ENUM"}:e!=null&&e.field_5?{type:"DECIMAL",scale:e.field_5.field_1,precision:e.field_5.field_2}:e!=null&&e.field_6?{type:"DATE"}:e!=null&&e.field_7?{type:"TIME",isAdjustedToUTC:e.field_7.field_1,unit:mt(e.field_7.field_2)}:e!=null&&e.field_8?{type:"TIMESTAMP",isAdjustedToUTC:e.field_8.field_1,unit:mt(e.field_8.field_2)}:e!=null&&e.field_10?{type:"INTEGER",bitWidth:e.field_10.field_1,isSigned:e.field_10.field_2}:e!=null&&e.field_11?{type:"NULL"}:e!=null&&e.field_12?{type:"JSON"}:e!=null&&e.field_13?{type:"BSON"}:e!=null&&e.field_14?{type:"UUID"}:e!=null&&e.field_15?{type:"FLOAT16"}:e}function mt(e){if(e.field_1)return"MILLIS";if(e.field_2)return"MICROS";if(e.field_3)return"NANOS";throw new Error("parquet time unit required")}function En(e,t){return e&&{max:Le(e.field_1,t),min:Le(e.field_2,t),null_count:e.field_3,distinct_count:e.field_4,max_value:Le(e.field_5,t),min_value:Le(e.field_6,t),is_max_value_exact:e.field_7,is_min_value_exact:e.field_8}}function Le(e,t){const{type:n,converted_type:r,logical_type:i}=t;if(e===void 0)return e;if(n==="BOOLEAN")return e[0]===1;if(n==="BYTE_ARRAY")return new TextDecoder().decode(e);const o=new DataView(e.buffer,e.byteOffset,e.byteLength);return n==="FLOAT"&&o.byteLength===4?o.getFloat32(0,!0):n==="DOUBLE"&&o.byteLength===8?o.getFloat64(0,!0):n==="INT32"&&r==="DATE"?new Date(o.getInt32(0,!0)*864e5):n==="INT64"&&r==="TIMESTAMP_MICROS"?new Date(Number(o.getBigInt64(0,!0)/1000n)):n==="INT64"&&r==="TIMESTAMP_MILLIS"?new Date(Number(o.getBigInt64(0,!0))):n==="INT64"&&(i==null?void 0:i.type)==="TIMESTAMP"?new Date(Number(o.getBigInt64(0,!0))):n==="INT32"&&o.byteLength===4?o.getInt32(0,!0):n==="INT64"&&o.byteLength===8?o.getBigInt64(0,!0):r==="DECIMAL"?dt(e)*Math.pow(10,-(t.scale||0)):(i==null?void 0:i.type)==="FLOAT16"?ht(e):e}function Qt(e,t,n,r,i,o){const f=(t==null?void 0:t.length)||n.length;let A=0;const l=[e];let s=e,a=0,g=0,u=0;if(n[0])for(;a>>1;Bn(e,f,t,r,i),i+=f}}}function Bn(e,t,n,r,i){const o=n+7>>3;let f=0;for(let A=0;A>1<<3;const f=(1<8?(s-=8,l-=8,A>>>=8):l-s>s&f),o--,s+=n);return i}function St(e,t,n,r){const i=vn(n,r),o=new Uint8Array(t*i);for(let f=0;f=n)throw new Error("invalid snappy length header");for(;i=n)throw new Error("missing eof marker");if(f&3){let l=0;switch(f&3){case 1:A=(f>>>2&7)+4,l=e[i]+(f>>>5<<8),i++;break;case 2:if(n<=i+1)throw new Error("snappy error end of input");A=(f>>>2)+1,l=e[i]+(e[i+1]<<8),i+=2;break;case 3:if(n<=i+3)throw new Error("snappy error end of input");A=(f>>>2)+1,l=e[i]+(e[i+1]<<8)+(e[i+2]<<16)+(e[i+3]<<24),i+=4;break}if(l===0||isNaN(l))throw new Error(`invalid offset ${l} pos ${i} inputLength ${n}`);if(l>o)throw new Error("cannot copy from before start of buffer");Rn(t,o,l,A),o+=A}else{let l=(f>>>2)+1;if(l>60){if(i+3>=n)throw new Error("snappy error literal pos + 3 >= inputLength");const s=l-60;l=e[i]+(e[i+1]<<8)+(e[i+2]<<16)+(e[i+3]<<24),l=(l&Fn[s])+1,i+=s}if(i+l>n)throw new Error("snappy error literal exceeds input length");xn(e,i,t,o,l),i+=l,o+=l}}if(o!==r)throw new Error("premature end of input")}function Yn(e,t,n,{type:r}){const i=new DataView(e.buffer,e.byteOffset,e.byteLength),o={view:i,offset:0};let f;const A=Wn(o,t,n),{definitionLevels:l,numNulls:s}=Pn(o,t,n),a=t.num_values-s;if(t.encoding==="PLAIN"){const{type_length:g}=n[n.length-1].element;f=Ze(o,r,a,g)}else if(t.encoding==="PLAIN_DICTIONARY"||t.encoding==="RLE_DICTIONARY"||t.encoding==="RLE"){const g=r==="BOOLEAN"?1:i.getUint8(o.offset++);g?(f=new Array(a),ne(o,g,i.byteLength-o.offset,f)):f=new Uint8Array(a)}else if(t.encoding==="BYTE_STREAM_SPLIT"){const{type_length:g}=n[n.length-1].element;f=St(o,a,r,g)}else throw new Error(`parquet unsupported encoding: ${t.encoding}`);return{definitionLevels:l,repetitionLevels:A,dataPage:f}}function Dn(e,t,n,r){const o={view:new DataView(e.buffer,e.byteOffset,e.byteLength),offset:0};return Ze(o,n.type,t.num_values,r)}function Wn(e,t,n){if(n.length>1){const r=Bt(n);if(r){const i=new Array(t.num_values);return ne(e,Ue(r),0,i),i}}return[]}function Pn(e,t,n){const r=Qe(n);if(!r)return{definitionLevels:[],numNulls:0};const i=new Array(t.num_values);ne(e,Ue(r),0,i);let o=t.num_values;for(const f of i)f===r&&o--;return o===0&&(i.length=0),{definitionLevels:i,numNulls:o}}function ze(e,t,n,r){let i;const o=r==null?void 0:r[n];if(n==="UNCOMPRESSED")i=e;else if(o)i=o(e,t);else if(n==="SNAPPY")i=new Uint8Array(t),Nn(e,i);else throw new Error(`parquet unsupported compression codec: ${n}`);if((i==null?void 0:i.length)!==t)throw new Error(`parquet decompressed page length ${i==null?void 0:i.length} does not match header ${t}`);return i}function xe(e,t,n){const r=n instanceof Int32Array,i=te(e),o=te(e);te(e);let f=Ve(e),A=0;n[A++]=r?Number(f):f;const l=i/o;for(;A>h&d;for(h+=u;h>=8;)h-=8n,e.offset++,h&&(c|=BigInt(e.view.getUint8(e.offset))<!!v);else if(s.encoding==="PLAIN_DICTIONARY"||s.encoding==="RLE_DICTIONARY"){const v=E.getUint8(d.offset++);c=new Array(I),ne(d,v,u-1,c)}else if(s.encoding==="DELTA_BINARY_PACKED")c=l==="INT32"?new Int32Array(I):new BigInt64Array(I),xe(d,I,c);else if(s.encoding==="DELTA_LENGTH_BYTE_ARRAY")c=new Array(I),Tn(d,I,c);else if(s.encoding==="DELTA_BYTE_ARRAY")c=new Array(I),kn(d,I,c);else if(s.encoding==="BYTE_STREAM_SPLIT"){const{type_length:v}=n[n.length-1].element;c=St(f,I,l,v)}else throw new Error(`parquet unsupported encoding: ${s.encoding}`);return{definitionLevels:g,repetitionLevels:a,dataPage:c}}function Mn(e,t,n){const r=Bt(n);if(!r)return[];const i=new Array(t.num_values);return ne(e,Ue(r),t.repetition_levels_byte_length,i),i}function Hn(e,t,n){const r=Qe(n);if(r){const i=new Array(t.num_values);return ne(e,Ue(r),t.definition_levels_byte_length,i),i}}function On(e){const t=yt(e),n=ct[t.field_1],r=t.field_2,i=t.field_3,o=t.field_4,f=t.field_5&&{num_values:t.field_5.field_1,encoding:ee[t.field_5.field_2],definition_level_encoding:ee[t.field_5.field_3],repetition_level_encoding:ee[t.field_5.field_4],statistics:t.field_5.field_5&&{max:t.field_5.field_5.field_1,min:t.field_5.field_5.field_2,null_count:t.field_5.field_5.field_3,distinct_count:t.field_5.field_5.field_4,max_value:t.field_5.field_5.field_5,min_value:t.field_5.field_5.field_6}},A=t.field_6,l=t.field_7&&{num_values:t.field_7.field_1,encoding:ee[t.field_7.field_2],is_sorted:t.field_7.field_3},s=t.field_8&&{num_values:t.field_8.field_1,num_nulls:t.field_8.field_2,num_rows:t.field_8.field_3,encoding:ee[t.field_8.field_4],definition_levels_byte_length:t.field_8.field_5,repetition_levels_byte_length:t.field_8.field_6,is_compressed:t.field_8.field_7===void 0?!0:t.field_8.field_7,statistics:t.field_8.field_8};return{type:n,uncompressed_page_size:r,compressed_page_size:i,crc:o,data_page_header:f,index_page_header:A,dictionary_page_header:l,data_page_header_v2:s}}function Ke(e,t){for(let r=0;r{if(!t.ok)throw new Error(`fetch head failed ${t.status}`);const n=t.headers.get("Content-Length");if(!n)throw new Error("missing content length");return parseInt(n)})}async function Gn(e,t){return t||(t=await Vn(e)),{byteLength:t,async slice(n,r){const i=new Headers,o=r===void 0?"":r-1;i.set("Range",`bytes=${n}-${o}`);const f=await fetch(e,{headers:i});if(!f.ok||!f.body)throw new Error(`fetch failed ${f.status}`);return f.arrayBuffer()}}}function Zn(e,t,n,r,{compressors:i,utf8:o}){const{element:f}=r[r.length-1];let A;const l=[];for(;l.lengthB.repetition_type);Qt(l,E,d,g,v,I)}else{for(let I=2;I[v]));Ke(l,g)}}else if(s.type==="DATA_PAGE_V2"){const u=s.data_page_header_v2;if(!u)throw new Error("parquet data page header v2 is undefined");const{definitionLevels:h,repetitionLevels:E,dataPage:d}=qn(a,s,r,n,i);if(g=ut(d,A,f,u.encoding,o),E.length||h!=null&&h.length){const c=Qe(r),I=r.map(({element:v})=>v.repetition_type);Qt(l,h,E,g,I,c)}else Ke(l,g)}else if(s.type==="DICTIONARY_PAGE"){const u=s.dictionary_page_header;if(!u)throw new Error("parquet dictionary page header is undefined");const h=ze(a,Number(s.uncompressed_page_size),n.codec,i);A=Dn(h,u,n,f.type_length)}else throw new Error(`parquet unsupported page type: ${s.type}`);e.offset+=s.compressed_page_size}if(l.lengtht&&(l.length=t),l}function Ut({dictionary_page_offset:e,data_page_offset:t,total_compressed_size:n}){let r=e;return(!r||t=i&&(r===void 0||ft.num_rows)&&(r=Number(t.num_rows));let[A,l]=[i.byteLength,0];if(t.columns.forEach(({meta_data:E})=>{if(!E)throw new Error("parquet column metadata is undefined");if(f&&!f.includes(E.path_in_schema[0]))return;const[d,c]=Ut(E).map(Number);A=Math.min(A,d),l=Math.max(l,c)}),A>=l&&(f!=null&&f.length))throw new Error(`parquet columns not found: ${f.join(", ")}`);let s;l-A<=1<<25&&(s=await i.slice(A,l));const a=[],{children:g}=Et(o.schema,[])[0],u=new Map(g.map(E=>[E.element.name,Ft(E)])),h=new Map;for(let E=0;E1<<30){console.warn(`parquet skipping huge column "${d.path_in_schema}" ${B.toLocaleString()} bytes`);continue}let Q,b=0;s?(Q=Promise.resolve(s),b=I-A):Q=Promise.resolve(i.slice(I,v)),a.push(Q.then(C=>{var N;const L=Et(o.schema,d.path_in_schema),P={view:new DataView(C),offset:b};let x=Zn(P,r,d,L,e);const F=d.path_in_schema.join(".");h.set(F,x),x=void 0;const Y=u.get(c);if(Y!=null&&Y.every(T=>h.has(T))&&(ge(h,L[1]),x=h.get(c),!x))throw new Error(`parquet column data not assembled: ${c}`);x&&((N=e.onChunk)==null||N.call(e,{columnName:c,columnData:x,rowStart:n,rowEnd:n+x.length}))}))}if(await Promise.all(a),e.onComplete){const E=new Array(r),d=g.map(v=>v.element.name).filter(v=>!f||f.includes(v)),c=f||d,I=c.map(v=>d.includes(v)?h.get(v):void 0);for(let v=0;v{var C;B[Q]=(C=I[b])==null?void 0:C[v]}),E[v]=B}else E[v]=I.map(B=>B==null?void 0:B[v]);return E}return[]}function Ft(e,t=[]){if(e.children.length)for(const n of e.children)Ft(n,t);else t.push(e.path.join("."));return t}async function Jn(e){const{file:t,rowStart:n,rowEnd:r,orderBy:i}=e;if(e.metadata||(e.metadata=await Ge(t)),typeof i=="string"){const o=await Je({...e,rowStart:void 0,rowEnd:void 0,columns:[i]}),f=Array.from(o,(s,a)=>a).sort((s,a)=>jn(o[s][i],o[a][i])).slice(n,r),A=await Xn({...e,rows:f});return f.map(s=>A[s])}else return await Je(e)}async function Xn(e){const{file:t,rows:n}=e;e.metadata||(e.metadata=await Ge(t));const{row_groups:r}=e.metadata,i=Array(r.length).fill(!1);let o=0;const f=r.map(a=>o+=Number(a.num_rows));for(const a of n){const g=f.findIndex(u=>at,1)}function Je(e){return new Promise((t,n)=>{zn({rowFormat:"object",...e,onComplete:t}).catch(n)})}var _n=ArrayBuffer,D=Uint8Array,Re=Uint16Array,$n=Int16Array,Ne=Int32Array,Xe=function(e,t,n){if(D.prototype.slice)return D.prototype.slice.call(e,t,n);(t==null||t<0)&&(t=0),(n==null||n>e.length)&&(n=e.length);var r=new D(n-t);return r.set(e.subarray(t,n)),r},de=function(e,t,n,r){if(D.prototype.fill)return D.prototype.fill.call(e,t,n,r);for((n==null||n<0)&&(n=0),(r==null||r>e.length)&&(r=e.length);ne.length)&&(r=e.length);n2046MB)","invalid block type","FSE accuracy too high","match distance too far back","unexpected EOF"],k=function(e,t,n){var r=new Error(t||tr[e]);if(r.code=e,Error.captureStackTrace&&Error.captureStackTrace(r,k),!n)throw r;return r},xt=function(e,t,n){for(var r=0,i=0;r>>0},rr=function(e,t){var n=e[0]|e[1]<<8|e[2]<<16;if(n==3126568&&e[3]==253){var r=e[4],i=r>>5&1,o=r>>2&1,f=r&3,A=r>>6;r&8&&k(0);var l=6-i,s=f==3?4:f,a=xt(e,l,s);l+=s;var g=A?1<>3);h=E+(E>>3)*(e[5]&7)}h>2145386496&&k(1);var d=new D((t==1?u||h:t?0:h)+12);return d[0]=1,d[4]=4,d[8]=8,{b:l+g,y:0,l:0,d:a,w:t&&t!=1?t:d.subarray(12),e:h,o:new Ne(d.buffer,0,3),u,c:o,m:Math.min(131072,h)}}else if((n>>4|e[3]<<20)==25481893)return nr(e,4)+8;k(0)},re=function(e){for(var t=0;1<n&&k(3);for(var o=1<0;){var v=re(f+1),B=r>>3,Q=(1<>(r&7)&Q,C=(1<C&&(b-=L)),u[++A]=--b,b==-1?(f+=b,c[--a]=A):f-=b,!b)do{var x=r>>3;l=(e[x]|e[x+1]<<8)>>(r&7)&3,r+=2,A+=l}while(l==3)}(A>255||f)&&k(0);for(var F=0,Y=(o>>1)+(o>>3)+3,N=o-1,T=0;T<=A;++T){var U=u[T];if(U<1){h[T]=-U;continue}for(s=0;s=a)}}for(F&&k(0),s=0;s>3,{b:i,s:c,n:I,t:E}]},ir=function(e,t){var n=0,r=-1,i=new D(292),o=e[t],f=i.subarray(0,256),A=i.subarray(256,268),l=new Re(i.buffer,268);if(o<128){var s=he(e,t+1,6),a=s[0],g=s[1];t+=o;var u=a<<3,h=e[t];h||k(0);for(var E=0,d=0,c=g.b,I=c,v=(++t<<3)-8+re(h);v-=c,!(v>3;if(E+=(e[B]|e[B+1]<<8)>>(v&7)&(1<>3,d+=(e[B]|e[B+1]<<8)>>(v&7)&(1<255&&k(0)}else{for(r=o-127;n>4,f[n+1]=Q&15}++t}var b=0;for(n=0;n11&&k(0),b+=C&&1<0;--n){var T=l[n];de(N,n,T,l[n-1]=T+A[n]*(1<A&&g>3,h=(e[u]|e[u+1]<<8|e[u+2]<<16)>>(a&7);l=(l<>2,f=o<<1,A=o+f;Ie(e.subarray(r,r+=e[0]|e[1]<<8),t.subarray(0,o),n),Ie(e.subarray(r,r+=e[2]|e[3]<<8),t.subarray(o,f),n),Ie(e.subarray(r,r+=e[4]|e[5]<<8),t.subarray(f,A),n),Ie(e.subarray(r),t.subarray(A),n)},cr=function(e,t,n){var r,i=t.b,o=e[i],f=o>>1&3;t.l=o&1;var A=o>>3|e[i+1]<<5|e[i+2]<<13,l=(i+=3)+A;if(f==1)return i>=e.length?void 0:(t.b=i+1,n?(de(n,e[i],t.y,t.y+=A),n):de(new D(A),e[i]));if(!(l>e.length)){if(f==0)return t.b=l,n?(n.set(e.subarray(i,l),t.y),t.y+=A,n):Xe(e,i,l);if(f==2){var s=e[i],a=s&3,g=s>>2&3,u=s>>4,h=0,E=0;a<2?g&1?u|=e[++i]<<4|(g&2&&e[++i]<<12):u=s>>3:(E=g,g<2?(u|=(e[++i]&63)<<4,h=e[i]>>6|e[++i]<<2):g==2?(u|=e[++i]<<4|(e[++i]&3)<<12,h=e[i]>>2|e[++i]<<6):(u|=e[++i]<<4|(e[++i]&63)<<12,h=e[i]>>6|e[++i]<<2|e[++i]<<10)),++i;var d=n?n.subarray(t.y,t.y+t.m):new D(t.m),c=d.length-u;if(a==0)d.set(e.subarray(i,i+=u),c);else if(a==1)de(d,e[i++],c);else{var I=t.h;if(a==2){var v=ir(e,i);h+=i-(i=v[0]),t.h=I=v[1]}else I||k(0);(E?ar:Ie)(e.subarray(i,i+=h),d.subarray(c),I)}var B=e[i++];if(B){B==255?B=(e[i++]|e[i++]<<8)+32512:B>127&&(B=B-128<<8|e[i++]);var Q=e[i++];Q&3&&k(0);for(var b=[fr,Ar,or],C=2;C>-1;--C){var L=Q>>(C<<1)+2&3;if(L==1){var P=new D([0,0,e[i++]]);b[C]={s:P.subarray(2,3),n:P.subarray(0,1),t:new Re(P.buffer,0,1),b:0}}else L==2?(r=he(e,i,9-(C&1)),i=r[0],b[C]=r[1]):L==3&&(t.t||k(0),b[C]=t.t[C])}var x=t.t=b,F=x[0],Y=x[1],N=x[2],T=e[l-1];T||k(0);var U=(l<<3)-8+re(T)-N.b,S=U>>3,M=0,fe=(e[S]|e[S+1]<<8)>>(U&7)&(1<>3;var le=(e[S]|e[S+1]<<8)>>(U&7)&(1<>3;var ae=(e[S]|e[S+1]<<8)>>(U&7)&(1<>3;var Ce=1<>>(U&7)&Ce-1);S=(U-=_e[ye])>>3;var j=lr[ye]+((e[S]|e[S+1]<<8|e[S+2]<<16)>>(U&7)&(1<<_e[ye])-1);S=(U-=je[ce])>>3;var m=sr[ce]+((e[S]|e[S+1]<<8|e[S+2]<<16)>>(U&7)&(1<>3,fe=N.t[fe]+((e[S]|e[S+1]<<8)>>(U&7)&(1<>3,ae=F.t[ae]+((e[S]|e[S+1]<<8)>>(U&7)&(1<>3,le=Y.t[le]+((e[S]|e[S+1]<<8)>>(U&7)&(1<3)t.o[2]=t.o[1],t.o[1]=t.o[0],t.o[0]=G-=3;else{var _=G-(m!=0);_?(G=_==3?t.o[0]-1:t.o[_],_>1&&(t.o[2]=t.o[1]),t.o[1]=t.o[0],t.o[0]=G):G=t.o[0]}for(var C=0;Cj&&($=j);for(var C=0;C<$;++C)d[M+C]=t.w[qe+C];M+=$,j-=$,Z=0}for(var C=0;C{const{memory:r,uncompress:i}=e.exports,o=68e3,f=o+t.byteLength,A=o+t.byteLength+n;if(r.buffer.byteLength0},O.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{const e=this.buf_ptr_,t=this.input_.read(this.buf_,e,ie);if(t<0)throw new Error("Unexpected end of input");if(t=8;)this.val_>>>=8,this.val_|=this.buf_[this.pos_&Nt]<<24,this.pos_++,this.bit_pos_=this.bit_pos_-8>>>0,this.bit_end_pos_=this.bit_end_pos_-8>>>0},O.prototype.readBits=function(e){32-this.bit_pos_>>this.bit_pos_&Er[e];return this.bit_pos_+=e,t};const Yt=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]),Ye=new Uint16Array([1024,1536,1280,1536,0,256,768,512]),Br=8,$e=8,yr=255,et=18,vr=new Uint8Array([1,2,3,4,0,5,17,6,16,7,8,9,10,11,12,13,14,15]);function R(e,t){this.bits=e,this.value=t}const Dt=16,Ae=15;function Wt(e,t){let n=1<>=1;return(e&n-1)+n}function Pt(e,t,n,r,i){do r-=n,e[t+r]=new R(i.bits,i.value);while(r>0)}function pr(e,t,n){let r=1<0;--f[c]){const v=new R(c&255,l[h++]&65535);Pt(e,t+u,I,a,v),u=Wt(u,c)}const E=g-1;let d=-1;for(let c=n+1,I=2;c<=Ae;++c,I<<=1)for(;f[c]>0;--f[c]){(u&E)!==d&&(t+=a,s=pr(f,c,n),a=1<>n),I,a,v),u=Wt(u,c)}return g}function De(e,t,n,r){const i=new Uint8Array(e);r.readMoreInput();const o=r.readBits(2);if(o===1){let A=e-1,l=0;const s=new Int32Array(4),a=r.readBits(2)+1;for(;A;)A>>=1,l++;for(let g=0;g0;g++){const u=vr[g];let h=0;r.fillBitWindow(),h+=r.val_>>>r.bit_pos_&15,r.bit_pos_+=a[h].bits;const E=a[h].value;A[u]=E,E!==0&&(l-=32>>E,s++)}if(!(s===1||l===0))throw new Error("[ReadHuffmanCode] invalid num_codes or space");Cr(A,e,i,r)}const f=Tt(t,n,$e,i,e);if(!f)throw new Error("brotli BuildHuffmanTable failed");return f}function se(e,t,n){n.fillBitWindow(),t+=n.val_>>>n.bit_pos_&yr;const r=e[t].bits-$e;return r>0&&(n.bit_pos_+=$e,t+=e[t].value,t+=n.val_>>>n.bit_pos_&(1<0;){let a=0;r.readMoreInput(),r.fillBitWindow(),a+=r.val_>>>r.bit_pos_&31,r.bit_pos_+=s[a].bits;const g=s[a].value&255;if(g>g);else{const u=g-14;let h=0;g===Dt&&(h=o),A!==h&&(f=0,A=h);const E=f;f>0&&(f-=2,f<<=u),f+=r.readBits(u)+3;const d=f-E;if(i+d>t)throw new Error("[ReadHuffmanCodeLengths] symbol + repeat_delta > num_symbols");for(let c=0;c>1|(e&21845)<<1;t=(t&52428)>>2|(t&13107)<<2,t=(t&61680)>>4|(t&3855)<<4,Kt[e]=((t&65280)>>8|(t&255)<<8)>>1}function Ee(e,t,n){const r=new Uint16Array(t);for(let f=0;f>f]=l}}return o}const Be=new Uint8Array(288);for(let e=0;e<144;e++)Be[e]=8;for(let e=144;e<256;e++)Be[e]=9;for(let e=256;e<280;e++)Be[e]=7;for(let e=280;e<288;e++)Be[e]=8;const Jt=new Uint8Array(32);for(let e=0;e<32;e++)Jt[e]=5;const Ur=Ee(Be,9),Fr=Ee(Jt,5);function tt(e){let t=e[0];for(let n=1;nt&&(t=e[n]);return t}function V(e,t,n){const r=t/8|0;return(e[r]|e[r+1]<<8)>>(t&7)&n}function nt(e,t){const n=t/8|0;return(e[n]|e[n+1]<<8|e[n+2]<<16)>>(t&7)}function xr(e){return(e+7)/8|0}function Rr(e,t){if(e[t++]!==31||e[t++]!==139||e[t++]!==8)throw new Error("invalid gzip data");const n=e[t++];t+=6,n&4&&(t+=(e[t+10]|e[t+11]<<8)+2);for(let r=(n>>3&1)+(n>>4&1);r>0;r-=+!e[t++]);return t+(n&2)}function rt(e,t,n=0,r=0){if(!(e.length-n))return;const i=Rr(e,n);if(i===e.length-8)return;if(i>e.length-8)throw new Error("unexpected EOF");let o=i*8,f=0,A=0,l=0,s,a;const g=e.length*8;do{if(!s){f=V(e,o,1);const d=V(e,o+1,3);if(o+=3,d)if(d===1)s=Ur,a=Fr,A=9,l=5;else if(d===2){const c=V(e,o,31)+257,I=V(e,o+10,15)+4,v=c+V(e,o+5,31)+1;o+=14;const B=new Uint8Array(v),Q=new Uint8Array(19);for(let F=0;F>4;if(N<16)B[F++]=N;else{let T=0,U=0;for(N===16?(U=3+V(e,o,3),o+=2,T=B[F-1]):N===17?(U=3+V(e,o,7),o+=3):N===18&&(U=11+V(e,o,127),o+=7);U--;)B[F++]=T}}const P=B.subarray(0,c),x=B.subarray(c);A=tt(P),l=tt(x),s=Ee(P,A),a=Ee(x,l)}else throw new Error("invalid block type");else{const c=xr(o)+4,I=e[c-4]|e[c-3]<<8,v=c+I;if(v>e.length)throw new Error("unexpected EOF");t.set(e.subarray(c,v),r),r+=I,o=v*8;continue}if(o>g)throw new Error("unexpected EOF")}const u=(1<>4;if(o+=d&15,o>g)throw new Error("unexpected EOF");if(!d)throw new Error("invalid length/literal");if(c<256)t[r++]=c;else if(c===256){E=o,s=void 0;break}else{let I=c-254;if(c>264){const C=c-257,L=Vt[C];I=V(e,o,(1<>4;if(!v)throw new Error("invalid distance");o+=v&15;let Q=Sr[B];if(B>3){const C=Gt[B];Q+=nt(e,o)&(1<g)throw new Error("unexpected EOF");const b=r+I;if(r'),new w("",p,` +`),new w("",Wr,""),new w("",p,"]"),new w("",p," for "),new w("",Or,""),new w("",Dr,""),new w("",p," a "),new w("",p," that "),new w(" ",W,""),new w("",p,". "),new w(".",p,""),new w(" ",p,", "),new w("",Vr,""),new w("",p," with "),new w("",p,"'"),new w("",p," from "),new w("",p," by "),new w("",Gr,""),new w("",Zr,""),new w(" the ",p,""),new w("",Pr,""),new w("",p,". The "),new w("",q,""),new w("",p," on "),new w("",p," as "),new w("",p," is "),new w("",qr,""),new w("",Xt,"ing "),new w("",p,` + `),new w("",p,":"),new w(" ",p,". "),new w("",p,"ed "),new w("",Kr,""),new w("",zr,""),new w("",kr,""),new w("",p,"("),new w("",W,", "),new w("",Mr,""),new w("",p," at "),new w("",p,"ly "),new w(" the ",p," of "),new w("",Tr,""),new w("",jt,""),new w(" ",W,", "),new w("",W,'"'),new w(".",p,"("),new w("",q," "),new w("",W,'">'),new w("",p,'="'),new w(" ",p,"."),new w(".com/",p,""),new w(" the ",p," of the "),new w("",W,"'"),new w("",p,". This "),new w("",p,","),new w(".",p," "),new w("",W,"("),new w("",W,"."),new w("",p," not "),new w(" ",p,'="'),new w("",p,"er "),new w(" ",q," "),new w("",p,"al "),new w(" ",q,""),new w("",p,"='"),new w("",q,'"'),new w("",W,". "),new w(" ",p,"("),new w("",p,"ful "),new w(" ",W,". "),new w("",p,"ive "),new w("",p,"less "),new w("",q,"'"),new w("",p,"est "),new w(" ",W,"."),new w("",q,'">'),new w(" ",p,"='"),new w("",W,","),new w("",p,"ize "),new w("",q,"."),new w(" ",p,""),new w(" ",p,","),new w("",W,'="'),new w("",q,'="'),new w("",p,"ous "),new w("",q,", "),new w("",W,"='"),new w(" ",W,","),new w(" ",q,'="'),new w(" ",q,", "),new w("",q,","),new w("",q,"("),new w("",q,". "),new w(" ",q,"."),new w("",q,"='"),new w(" ",q,". "),new w(" ",W,'="'),new w(" ",q,"='"),new w(" ",W,"='")],Jr=Pe.length;function _t(e,t){return e[t]<192?(e[t]>=97&&e[t]<=122&&(e[t]^=32),1):e[t]<224?(e[t+1]^=32,2):(e[t+2]^=5,3)}function Xr(e,t,n,r,i){const o=Yr(),{prefix:f}=Pe[i],{suffix:A}=Pe[i],l=Pe[i].transform;let s=lr&&(s=r);let g=0;for(;g0;){const E=_t(e,u);u+=E,r-=E}let h=0;for(;ht.buffer.length){const m=new Uint8Array(n+Q);m.set(t.buffer),t.buffer=m}if(r=Y.input_end,Y.is_metadata){for(di(u);Q>0;--Q)u.readMoreInput(),u.readBits(8);continue}if(Q===0)continue;if(Y.is_uncompressed){u.bit_pos_=u.bit_pos_+7&-8,ai(t,Q,n,c,d,u),n+=Q;continue}for(let m=0;m<3;m++)L[m]=nn(u)+1,L[m]>=2&&(De(L[m]+2,v,m*J,u),De($r,B,m*J,u),b[m]=Te(B,m*J,u),x[m]=1);u.readMoreInput();const N=u.readBits(2),T=ot+(u.readBits(4)<0;){let m;u.readMoreInput(),b[1]===0&&(ft(L[1],v,1,C,P,x,u),b[1]=Te(B,J,u),j=a[1].htrees[C[1]]),b[1]--;const _=se(a[1].codes,j,u);let Z=_>>6;Z>=2?(Z-=2,m=-1):m=0;const $=mr[Z]+(_>>3&7),qe=Qr[Z]+(_&7),fn=qt[$].offset+u.readBits(qt[$].nbits),z=Mt[qe].offset+u.readBits(Mt[qe].nbits);l=c[n-1&d],s=c[n-2&d];for(let K=0;K4?3:z-2)&255,we=ye[pe+K];if(m=se(a[2].codes,a[2].htrees[we],u),m>=T){m-=T;const ue=m&U;m>>=N;const He=(m>>1)+1,st=(2+(m&1)<o)if(z>=oi&&z<=tn){let K=ri[z];const we=me-o-1,ue=ii[z],He=(1<>ue;if(K+=st*z,An=I){t.write(c,E);for(let Oe=0;Oe0&&(f[A&3]=me,A++),z>Q)throw new Error("Invalid backward reference");for(let K=0;K0?17+t:(t=e.readBits(3),t>0?8+t:17)}function ft(e,t,n,r,i,o,f){const A=n*2,l=n,s=se(t,n*J,f);let a;s===0?a=i[A+(o[l]&1)]:s===1?a=i[A+(o[l]-1&1)]+1:a=s-2,a>=e&&(a-=e),r[n]=a,i[A+(o[l]&1)]=a,++o[l]}function oe(e,t){this.alphabet_size=e,this.num_htrees=t,this.codes=new Array(t+t*ni[e+31>>>5]),this.htrees=new Uint32Array(t)}oe.prototype.decode=function(e){let t=0;for(let n=0;n0;)o.readMoreInput(),r[A++]=o.readBits(8),A===f&&(e.write(r,f),A=0);return}if(o.bit_end_pos_<32)throw new Error("[CopyUncompressedBlockToOutput] br.bit_end_pos_ < 32");for(;o.bit_pos_<32;)r[A]=o.val_>>>o.bit_pos_,o.bit_pos_+=8,A++,t--;let s=o.bit_end_pos_-o.bit_pos_>>3;if(l+s>O.IBUF_MASK){const a=O.IBUF_MASK+1-l;for(let g=0;g=f){e.write(r,f),A-=f;for(let a=0;a=f;){if(s=f-A,o.input_.read(r,A,s)1&&o===0)throw new Error("Invalid size byte");t.meta_block_length|=o<4&&i===0)throw new Error("Invalid size nibble");t.meta_block_length|=i<=e)throw new Error("[DecodeContextMap] i >= context_map_size");i[A]=0,A++}}else i[A]=l-n,A++}return t.readBits(1)&&gi(i,e),{num_htrees:r,context_map:i}}function ui(e,t){const n=e[t];for(let r=t;r;r--)e[r]=e[r-1];e[0]=n}function gi(e,t){const n=new Uint8Array(256);for(let r=0;r<256;r++)n[r]=r;for(let r=0;r>4;if(f){let u=f+240;for(;u===255;)f+=u=e[i++];if(t.set(e.subarray(i,i+f),r),r+=f,i+=f,i>=e.length)return r-n}const A=e[i++]|e[i++]<<8;if(!A||A>r)throw new Error(`lz4 offset out of range ${A}`);let l=(o&15)+4,s=l+240;for(;s===255;)l+=s=e[i++];let a=r-A;const g=r+l;for(;r{const n=new Uint8Array(t);return rt(e,n),n},BROTLI:fi,ZSTD:e=>ur(e),LZ4:hi,LZ4_RAW:Ii};async function Bi(e){const t=JSON.stringify(e),n=on.get(t);if(n)return n;const r=Gn(e.url,e.byteLength);return on.set(t,r.then(yi)),r}const on=new Map;function yi(e){const t=new Map,n=e.byteLength;return{byteLength:n,slice(r,i){const o=vi(r,i,n),f=t.get(o);if(f)return f;const A=e.slice(r,i);return t.set(o,A),A}}}function vi(e,t,n){if(e<0){if(t!==void 0)throw new Error(`invalid suffix range [${e.toString()}, ${t.toString()}]`);return n===void 0?`${e.toString()},`:`${(n+e).toString()},${n.toString()}`}else if(t!==void 0){if(e>t)throw new Error(`invalid empty range [${e.toString()}, ${t.toString()}]`);return`${e.toString()},${t.toString()}`}else return n===void 0?`${e.toString()},`:`${e.toString()},${n.toString()}`}self.onmessage=async({data:e})=>{const{metadata:t,asyncBuffer:n,rowStart:r,rowEnd:i,orderBy:o}=e,f=await Bi(n);try{const A=await Jn({metadata:t,file:f,rowStart:r,rowEnd:i,orderBy:o,compressors:Ei});self.postMessage({result:A})}catch(A){self.postMessage({error:A})}}})();