nv-buf-serde 0.0.12 → 1.0.0

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/DIST/dist.js CHANGED
@@ -1,4 +1,4 @@
1
- var v8serde=(()=>{var y=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var T=y((Fa,ct)=>{var Rs=e=>e===void 0,Os=e=>e===null,$=e=>e==null,Ts=e=>e===!0,Us=e=>e===!1,lt=e=>e===!0||e===!1,js=e=>$(e)||lt(e),vs=e=>$(e)?null:e,Ds=e=>$(e)?void 0:e;ct.exports={_u:void 0,_n:null,_t:!0,_f:!1,is_untf:js,is_unnu:$,is_un:Rs,is_nu:Os,is_bl:lt,is_tru:Ts,is_fls:Us,unize:Ds,nuize:vs}});var dt=y((Wa,ft)=>{var{_u:qa,_n:Ca,_t:ut,_f:Ja}=T();ft.exports={treat_array_buffer_views_as_host_objects_:ut,suppress_deserialization_errors_:ut}});var yt=y((Pa,gt)=>{gt.exports={kTheHole:"the hole element will be replaced by undefined",kSparseArray:`
1
+ var v8serde=(()=>{var g=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var T=g((Fa,ct)=>{var Os=e=>e===void 0,Rs=e=>e===null,$=e=>e==null,Ts=e=>e===!0,Us=e=>e===!1,lt=e=>e===!0||e===!1,js=e=>$(e)||lt(e),vs=e=>$(e)?null:e,Ds=e=>$(e)?void 0:e;ct.exports={_u:void 0,_n:null,_t:!0,_f:!1,is_untf:js,is_unnu:$,is_un:Os,is_nu:Rs,is_bl:lt,is_tru:Ts,is_fls:Us,unize:Ds,nuize:vs}});var dt=g((Wa,ft)=>{var{_u:qa,_n:Ca,_t:ut,_f:Ja}=T();ft.exports={treat_array_buffer_views_as_host_objects_:ut,suppress_deserialization_errors_:ut}});var gt=g((Pa,yt)=>{yt.exports={kTheHole:"the hole element will be replaced by undefined",kSparseArray:`
2
2
  NOT support. only dense/packed_smi/packed_double.
3
3
  hard to explain this, refer to ./TEST/hole-tst.js
4
4
  this script will make sparse-array
@@ -21,10 +21,10 @@ var v8serde=(()=>{var y=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);
21
21
  `,JSMap:"extra attributes set On Map will be dropped, for compatible to current v8-impl",JSSet:"extra attributes set On Set will be dropped, for compatible to current v8-impl",RegExp:"extra attributes set On RegExp will be dropped, for compatible to current v8-impl",Date:"extra attributes set On Date will be dropped, for compatible to current v8-impl",PrimitiveWrapper:`
22
22
  extra attributes set On PrimitiveWrapper will be dropped, for compatible to current v8-impl;
23
23
  not support <new BigInt>, in c++ layer ,it can be done, in js-layer ,impossible
24
- `,"Error'message":"Error'message treated as string","Error'stack":"Error'stack treated as string",kVerifyObjectCount:"no verify",throwDetachedArrayBufferError:"dont know how to get this state in js-layer",kArrayBufferTransfer:"hard to do this in js-layer",kSharedObject:"hard to do this in js-layer",kWasmModuleTransfer:"hard to do this in js-layer",kWasmMemoryTransfer:"hard to do this in js-layer",ITERATOR:"dont know how to get the iter cursor in js-layer, treated as a {}",ATOMICS:"dont know how to do this, treated as a {}",FPG:"function | lambda | promise| generator| all treated as a {}",Proxy:"hard to do this in browser, so treated as the-target-be-proxied"}});var Z=y((Ha,ht)=>{var{_u:Ls,_n:Va,_t:we,_f:za}=T(),Ns={kVersion:255,kPadding:0,kVerifyObjectCount:63,kTheHole:45,kUndefined:95,kNull:48,kTrue:84,kFalse:70,kInt32:73,kUint32:85,kDouble:78,kBigInt:90,kUtf8String:83,kOneByteString:34,kTwoByteString:99,kObjectReference:94,kBeginJSObject:111,kEndJSObject:123,kBeginSparseJSArray:97,kEndSparseJSArray:64,kBeginDenseJSArray:65,kEndDenseJSArray:36,kDate:68,kTrueObject:121,kFalseObject:120,kNumberObject:110,kBigIntObject:122,kStringObject:115,kRegExp:82,kBeginJSMap:59,kEndJSMap:58,kBeginJSSet:39,kEndJSSet:44,kArrayBuffer:66,kResizableArrayBuffer:126,kArrayBufferTransfer:116,kArrayBufferView:86,kSharedArrayBuffer:117,kSharedObject:112,kWasmModuleTransfer:119,kHostObject:92,kWasmMemoryTransfer:109,kError:114,kLegacyReservedMessagePort:77,kLegacyReservedBlob:98,kLegacyReservedBlobIndex:105,kLegacyReservedFile:102,kLegacyReservedFileIndex:101,kLegacyReservedDOMFileSystem:100,kLegacyReservedFileList:108,kLegacyReservedFileListIndex:76,kLegacyReservedImageData:35,kLegacyReservedImageBitmap:103,kLegacyReservedImageBitmapTransfer:71,kLegacyReservedOffscreenCanvas:72,kLegacyReservedCryptoKey:75,kLegacyReservedRTCCertificate:107},bt={kInt8Array:98,kUint8Array:66,kUint8ClampedArray:67,kInt16Array:119,kUint16Array:87,kInt32Array:100,kUint32Array:68,kFloat32Array:102,kFloat64Array:70,kBigInt64Array:113,kBigUint64Array:81,kDataView:63};Object.defineProperty(bt,"UNUSED_",{get:function(){return we}});var Se=Symbol("#kNodeFastBuffer"),Ms={kInt8Array:0,kUint8Array:1,kUint8ClampedArray:2,kInt16Array:3,kUint16Array:4,kInt32Array:5,kUint32Array:6,kFloat32Array:7,kFloat64Array:8,kDataView:9,kNodeFastBuffer:10,kBigInt64Array:11,kBigUint64Array:12},me=class extends Uint8Array{[Se]=we},Fs=e=>e[Se]===we,qs=e=>Object.prototype.toString.call(e),Cs=e=>{let t=qs(e);return t==="[object Int8Array]"?0:t==="[object Uint8Array]"?1:t==="[object Uint8ClampedArray]"?2:t==="[object Int16Array]"?3:t==="[object Uint16Array]"?4:t==="[object Int32Array]"?5:t==="[object Uint32Array]"?6:t==="[object Float32Array]"?7:t==="[object Float64Array]"?8:t==="[object DataView]"?9:t==="[object BigInt64Array]"?11:t==="[object BigUint64Array]"?12:-1},Js=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,DataView,me,BigInt64Array,BigUint64Array],Ws={kEvalErrorPrototype:69,kRangeErrorPrototype:82,kReferenceErrorPrototype:70,kSyntaxErrorPrototype:83,kTypeErrorPrototype:84,kUriErrorPrototype:85,kMessage:109,kCause:99,kStack:115,kEnd:46},Ps="#___kCantBeSered___",Vs=(e,t)=>({id:e,kCantBeSered:t}),zs="#___kUnknown___",Hs=()=>({kUnknown:Ls}),xs="v8ser";ht.exports={CODEC_NAME:xs,kNodeFastBufferSym:Se,IsNodeFastBuffer:Fs,SerializationTag:Ns,V8_ArrayBufferViewTag:bt,ArrayBufferViewTag:Ms,ArrayBufferViewIndexToCtor:Js,arrayBufferViewTypeToIndex:Cs,ErrorTag:Ws,kCantBeSered:Ps,CreatFakeCantBeSered:Vs,kUnknown:zs,CreatUnknown:Hs}});var M=y((xa,St)=>{var Gs=Object,L={un:"undefined",bl:"boolean",str:"string",num:"number",obj:"object",sym:"symbol",bi:"bigint",func_like:"function"},N=(e,t)=>typeof e===t,Ks=(e,t)=>e instanceof t,Xs=e=>N(e,L.str),Ys=e=>N(e,L.sym),$s=e=>Symbol.keyFor(e)!==void 0,Zs=e=>Symbol.keyFor(e)===void 0,Qs=e=>N(e,L.bi),kt=e=>N(e,L.num),pt=e=>Gs.is(e,NaN),At=e=>e===1/0,mt=e=>e===-1/0,wt=e=>pt(e)||At(e)||mt(e),eo=e=>!wt(e)&&kt(e),to=e=>1/e===1/0,ro=e=>1/e===-1/0,no=e=>N(e,L.func_like);St.exports={TNAMED:L,typof:N,is_str:Xs,is_num:kt,is_sym:Ys,is_glb_sym:$s,is_non_glb_sym:Zs,is_bi:Qs,istof:Ks,is_abnormal_num:wt,is_nan:pt,is_pos_infi:At,is_neg_infi:mt,is_normal_num:eo,is_pos_zero:to,is_neg_zero:ro,is_func_like:no}});var Q=y((Ga,Lt)=>{var Et=-(2n**31n),Bt=2n**31n-1n,It=e=>e>=-2147483648&&e<=2147483647,so=e=>e>=Et&&e<=Bt,Ee=e=>BigInt(e),Be=e=>Number(e),Rt=-(2**30),Ot=2**30-1,oo=-(2n**30n),io=2n**30n-1n,Tt=e=>e>=Rt&&e<=Ot,Ut=e=>e<<1^e>>31,Ie=e=>e<<1n^e>>63n,jt=e=>Be(Ie(Ee(e))),vt=e=>e>>1^-(e&1),Re=e=>e>>1n^-(e&1n),Dt=e=>Be(Re(Ee(e))),ao=e=>typeof e=="bigint"?Ie(e):Tt(e)?Ut(e):jt(e),lo=e=>typeof e=="bigint"?Re(e):It(e)?vt(e):Dt(e);Lt.exports={MIN_SMI:-2147483648,MAX_SMI:2147483647,MIN_SMI_BI:Et,MAX_SMI_BI:Bt,is_smi:It,is_smi_bi:so,_bi:Ee,_num:Be,_encd_smi:Ut,_encd_bi:Ie,_encd_between_smi_bi:jt,_decd_smi:vt,_decd_bi:Re,_decd_between_smi_bi:Dt,MIN_SMI_CAN_BE_ENCDED:Rt,MAX_SMI_CAN_BE_ENCDED:Ot,MIN_SMI_BI_CAN_BE_ENCDED:oo,MAX_SMI_BI_CAN_BE_ENCDED:io,is_smi_can_be_encded:Tt,encd:ao,decd:lo}});var Oe=y((Ka,Nt)=>{var _o=String,co=e=>_o.fromCodePoint(e);Nt.exports={cd2ch:co}});var C=y((Xa,Ct)=>{var Mt=e=>(e>>8&252)===216,Ft=e=>(e>>8&252)===220,uo=e=>!Mt(e)&&!Ft(e),qt=(e,t)=>((e&1023)<<10)+(t&1023)+65536,fo=(e,t)=>t===1?e[0]:qt(e[0],e[1]);Ct.exports={is_high_surrogate:Mt,is_low_surrogate:Ft,is_not_surrogate:uo,surrogate_to_code:qt,b16arr_to_code:fo}});var zt=y((Ya,Vt)=>{var J=C(),go=0,Jt=2,Wt=5,Pt=["INIT","N","H","L","R","ERROR"],W={in_error_must_reset:"in_error_must_reset",fst_b16_invalid:"fst b16 cant be <0b1111_11xx_xxxx_xxxx>",low_invalid:"low must be <0b1111_11xx_xxxx_xxxx>"},yo=e=>{e[0]=3,e[1]=e[1]&240;for(let t=2;t<5;t++)e[t]=0},Te=(e,t,r)=>{if(e.is_auto_recover_enabled()){e.reset();return}else throw e[1]=(e[1]&240)+Wt,e[2]=t,new Error(r)},U=class extends Uint16Array{constructor(t=!0){super(5),this[0]=3,this[1]=t?16:0,this[2]=0}get cursor_(){return this[0]}get state_code_(){return this[1]&15}get state_name_(){return Pt[this.state_code_]}is_init(){return this.state_code_===go}is_high(){return this.state_code_===Jt}is_err(){return this.state_code_===Wt}is_auto_recover_enabled(){return(this[1]&240)===1}enable_auto_recover(){this[1]=this[1]|16}disable_auto_recover(){this[1]=this[1]&15}get lefted_(){return Array.from(this).slice(3,this[0])}get err_b16_(){return this[2]}input(t){let r=t.charCodeAt(0);if(this.is_init())if(J.is_high_surrogate(r)){this[3]=r,this[1]=(this[1]&240)+Jt,this[0]++;return}else return J.is_low_surrogate(r)?Te(this,r,W.fst_b16_invalid):(this.reset(),r);else{if(this.is_high())return J.is_high_surrogate(r)?Te(this,r,W.low_invalid):J.is_low_surrogate(r)?(r=J.surrogate_to_code(this[3],r),this.reset(),r):Te(this,r,W.low_invalid);if(this.is_err())return new Error(W.in_error_must_reset)}}reset(){yo(this)}dict(){return{cursor:this[0],state:this.state_name_,data:this.lefted_,err_b16:this.err_b16_}}get[Symbol.toStringTag](){return JSON.stringify(this.dict())}};U.ALGN_OFFSET=3;U.ALGN_SIZE=5;var bo=new U(!0),ho=new U(!1);Vt.exports={STATES:Pt,ERRORS:W,Mach:U,auto_recover_mach:bo,mach:ho}});var xt=y(($a,Ht)=>{Ht.exports={def:C(),mach:zt()}});var Yt=y((Za,Xt)=>{var{is_high_surrogate:Ue}=C(),Gt=(e,t)=>{let r=e.length,s=0,n=0,o=-1;for(;!(n>=r);)o=e[n].charCodeAt(0),Ue(o)?(++n,++n):(o===t&&++s,++n);return s},Kt=(e,t,r)=>{let s=e.length,n=0,o=0,a=-1;for(;!(o>=s);)a=e[o].charCodeAt(0),Ue(a)&&(a===t&&(a=e[o+1].charCodeAt(0),a===r&&++n),++o),++o;return n},ko=e=>{let t=e.charCodeAt(0);return Ue(t)?[t,e.charCodeAt(1)]:[t,-1]},po=(e,t)=>{let[r,s]=_is_u16u16_char(t);return s!=-1?Kt(e,r,s):Gt(e,r)};Xt.exports={_char_freq_if_u16:Gt,_char_freq_if_u16u16:Kt,_parse_char:ko,char_freq:po}});var Zt=y((el,$t)=>{var{cd2ch:Qa}=Oe(),{is_high_surrogate:Ao}=C(),ee=(e,t,r)=>{let s=e[r].charCodeAt(0);return Ao(s)?[e.codePointAt(r),r,r+2]:[s,r,r+1]},je=(e,t)=>t===0?[-1,-1,0]:ee(e,t,0),mo=(e,t=(cd,ci,offset))=>{let r=e.length,s=0,[n,o,a]=je(e,r);for(t(n,s,o),++s,o=a;o<r;)[n,o,a]=ee(e,r,o),t(n,s,o),++s,o=a},wo=e=>{let t=e.length,r=Array.from({length:t}).map(h=>[-1,-1]),s=Array.from({length:t}).map(h=>-1),n=Array.from({length:t}).map(h=>-1),o=Array.from({length:t}).map(h=>-1),a=0,[_,l,u]=je(e,t);for(r[a][0]=0,r[a][1]=0,n[a]=_,s[a]=l,o[a]=u-l,++a,l=u;l<t;){[_,l,u]=ee(e,t,l);let h=r[a-1],m=n[h[0]];_===m?(r[a][0]=h[0]+1,r[a][1]=o[h[0]]):(r[a][0]=0,r[a][1]=0),n[a]=_,s[a]=l,o[a]=o[a-1]+(u-l),++a,l=u}return{mx:r,cd:n,of:s,sz:o}},So=(e,t,r,s,n)=>r+n-e.mx[s-t-1][1];$t.exports={_fst:je,_next:ee,_while:mo,max_cmmn_psfix:wo,mvto:So}});var ve=y((tl,er)=>{var Qt=e=>{e=e-65536;let t=e&1023|56320;return[e>>10|55296,t]},Eo=e=>{if(e<65536){let t=e&255,r=e>>8;return[t,r]}else{let[t,r]=Qt(e),s=t&255,n=t>>8,o=r&255,a=r>>8;return[s,n,o,a]}};er.exports={MAX_CODE:1114111,_split_to_hilo:Qt,split:Eo}});var rr=y((rl,tr)=>{var Bo=ve(),De=class{u8a;ei=0;cnt=0;constructor(t){this.u8a=new Uint8Array(t)}get view_(){return this.u8a.subarray(0,this.ei)}input(t){let r=Bo.split(t);switch(++this.cnt,r.length){case 2:{this.u8a[this.ei]=r[0],++this.ei;break}case 4:{this.u8a[this.ei]=r[0],++this.ei,this.u8a[this.ei]=r[1],++this.ei,this.u8a[this.ei]=r[2],++this.ei,this.u8a[this.ei]=r[3],++this.ei;break}}return r}reset(){this.ei=0,this.cnt=0}};tr.exports={Mach:De}});var sr=y((nl,nr)=>{nr.exports={def:ve(),mach:rr()}});var te=y((sl,or)=>{var Io=Oe(),Ro=xt(),Oo=Yt(),To=Zt(),Uo=sr();or.exports={cmmd:Io,decd:Ro,encd:Uo,freq:Oo,handle:To}});var se=y((_l,_r)=>{var jo=Object.is,{istof:ol,is_num:vo}=M(),{_u:il,_n:al,_t:ne,_f:re}=T(),Do=Q(),ll=te(),Lo=e=>{let t=0;do t++,e>>=7;while(e);return t},ir=e=>{for(let t=0;t<e.length;++t)if(!(e[t].charCodeAt(0)<256))return re;return ne},No=e=>!ir(e),Mo=(e,t)=>{let s=new DataView(e.buffer).getFloat64(t,ne);return jo(s,NaN)},Fo={PACKED_SMI_ELEMENTS:0,HOLEY_SMI_ELEMENTS:1,PACKED_DOUBLE_ELEMENTS:2,HOLEY_DOUBLE_ELEMENTS:3,PACKED_ELEMENTS:4,HOLEY_ELEMENTS:5},ar=e=>{let t=0;return e.forEach(r=>{++t}),t},qo=e=>ar(e)!==e.length,lr=e=>Number.isInteger(e)&&!Object.is(e,-0)&&Do.is_smi(e),Co=e=>{let t=ne,r=ne,s=0;for(;s<e.length;){if(!(t&&lr(e[s])))if(vo(e[s]))t=re;else{t=re,r=re;break}++s}return{is_packed_smi:t,is_packed_double:r}},Jo=new TextDecoder,Wo=(e,t,r,s)=>{let n=new Uint8Array(e.buffer,t,r);return s?s(n):Jo.decode(n)},Po=new TextDecoder("latin1"),Vo=(e,t,r)=>Po.decode(e.subarray(t,t+r)),zo=new TextDecoder("utf-16"),Ho=(e,t,r)=>zo.decode(e.subarray(t,t+r));_r.exports={BytesNeededForVarint:Lo,IsOneByte:ir,IsTwoByte:No,IsNaNAt:Mo,IsSmi:lr,kFastElementsKindSequence:Fo,GetArrayForEachLength:ar,IsArrayHasHole:qo,GetArrayPackedInfo:Co,Utf8U8aToStr:Wo,Latin1U8aToStr:Vo,JstrU8aToStr:Ho}});var Ne=y((cl,ur)=>{var cr=2**53-1,Le=class extends Array{constructor(){super(),this[0]=0}get id(){return this[0]}next(){let t=this[0],r=this[0]+1;return r-1===cr&&(r=0),this[0]=r,t}},xo=()=>new Le;ur.exports={MAX_NID:cr,creat_nid:xo}});var ie=y((fl,gr)=>{var Go=Array,{_u:dr,_n:ul,_t:Ko,_f:Xo}=T(),{creat_nid:Yo}=Ne(),oe=class extends WeakMap{#e=Yo();FindOrInsert(t){let r=this.get(t);if(r===dr){let s=this.#e.next();return this.set(t,s),[Xo,s]}else return[Ko,r]}},$o=()=>new oe,Me=class{idmap=new oe},Zo=()=>new Me,Fe=class extends Go{HasObjectWithID(t){return this[t]!==dr}GetObjectWithID(t){return this[t]}AddObjectWithID(t){this.push(t)}get nid_(){return this.length}},fr=()=>new Fe;gr.exports={creat_widmap:$o,creat_wctx:Zo,creat_ridmap:fr,creat_rctx:fr}});var dn=y((dl,fn)=>{var ae=Boolean,yr=Number,br=String,hr=BigInt,kr=Date,pr=RegExp,Ar=ArrayBuffer;globalThis.SharedArrayBuffer||(window.SharedArrayBuffer=ArrayBuffer,globalThis.SharedArrayBuffer=ArrayBuffer);var mr=globalThis.SharedArrayBuffer,wr=DataView,Sr=Array,Er=Set,Br=Map,Ir=Uint8Array,Rr=Uint8ClampedArray,Or=Int8Array,Tr=Uint16Array,Ur=Int16Array,jr=Uint32Array,vr=Int32Array,Dr=BigUint64Array,Lr=BigInt64Array,Nr=Float32Array,Mr=Float64Array,Fr=WeakSet,qr=WeakMap,Cr=WeakRef,Jr=Error,Wr=EvalError,Pr=RangeError,Vr=ReferenceError,zr=TypeError,Hr=URIError,xr=AggregateError,{istof:g}=M(),Qo=e=>g(e,kr),ei=e=>g(e,pr),ti=e=>g(e,Ar),ri=e=>g(e,mr),ni=e=>g(e,wr),Gr=e=>g(e,Ir),Kr=e=>g(e,Rr),Xr=e=>g(e,Or),Yr=e=>g(e,Tr),$r=e=>g(e,Ur),Zr=e=>g(e,jr),Qr=e=>g(e,vr),en=e=>g(e,Dr),tn=e=>g(e,Lr),rn=e=>g(e,Nr),nn=e=>g(e,Mr),si=e=>Gr(e)||Kr(e)||Xr(e)||Yr(e)||$r(e)||Zr(e)||Qr(e)||en(e)||tn(e)||rn(e)||nn(e),oi=Sr.isArray,ii=e=>g(e,Er),ai=e=>g(e,Br),sn=e=>g(e,Fr),on=e=>g(e,qr),an=e=>g(e,Cr),li=e=>sn(e)||on(e)||an(e),ln=e=>g(e,ae),_i=e=>g(e,ae)&&e.valueOf(),ui=e=>g(e,ae)&&!e.valueOf(),_n=e=>g(e,yr),cn=e=>g(e,br),un=e=>g(e,hr),fi=e=>ln(e)||_n(e)||cn(e)||un(e),di=e=>g(e,Jr),gi=e=>g(e,Wr),yi=e=>g(e,Pr),bi=e=>g(e,Vr),hi=e=>g(e,zr),ki=e=>g(e,Hr),pi=e=>g(e,xr);fn.exports={_DT:kr,_RGX:pr,_BL:ae,_N:yr,_S:br,_BI:hr,_AB:Ar,_SAB:mr,_DV:wr,_U8A:Ir,_U8CA:Rr,_I8A:Or,_U16A:Tr,_I16A:Ur,_U32A:jr,_I32A:vr,_U64A:Dr,_I64A:Lr,_F32A:Nr,_F64A:Mr,_A:Sr,_ST:Er,_MP:Br,_WKST:Fr,_WKMP:qr,_WKREF:Cr,_ERR:Jr,_AGG_ERRS:xr,_EVL_ERR:Wr,_RNG_ERR:Pr,_REF_ERR:Vr,_TYP_ERR:zr,_URI_ERR:Hr,is_dt:Qo,is_rgx:ei,is_ab:ti,is_dv:ni,is_sab:ri,is_abvw:si,is_u8a:Gr,is_u8ca:Kr,is_i8a:Xr,is_u16a:Yr,is_i16a:$r,is_u32a:Zr,is_i32a:Qr,is_u64a:en,is_i64a:tn,is_f32a:rn,is_f64a:nn,is_ary:oi,is_st:ii,is_mp:ai,is_weak:li,is_wkst:sn,is_wkmp:on,is_wkref:an,is_prim_wrap:fi,is_blo:ln,is_truo:_i,is_flso:ui,is_numo:_n,is_stro:cn,is_bio:un,is_err:di,is_eval_err:gi,is_rng_err:yi,is_ref_err:bi,is_typ_err:hi,is_uri_err:ki,is_agg_errs:pi}});var En=y((bl,Sn)=>{var Ai=Symbol,P=Ai.toStringTag,{_u:qe,_n:gl,_t:yl,_f:mi}=T(),{is_func_like:Ce}=M(),le=(e,t)=>Object.getOwnPropertyDescriptor(e,t),bn=e=>le(e,"arguments"),Je=e=>bn(e)===qe,hn=e=>le(e,"prototype"),We=e=>hn(e)===qe,wi=e=>e[P]==="Promise",kn=e=>e[P]==="Generator",pn=e=>e[P]==="AsyncGenerator",Si=e=>kn(e)||pn(e),w=e=>e.constructor.name==="AsyncFunction",j=e=>Ce(e)&&We(e),Ei=e=>!w(e)&&j(e),Bi=e=>w(e)&&j(e),Pe=e=>Ce(e)&&le(e,"arguments")!==qe,An=e=>Pe(e)&&!w(e),mn=e=>Pe(e)&&w(e),_e=e=>e.constructor.name==="AsyncGeneratorFunction",ce=e=>e.constructor.name==="GeneratorFunction",z=e=>ce(e)||_e(e),gn=e=>An(e)&&!z(e),yn=e=>mn(e)&&!z(e),Ii=e=>e.toString().includes("[native code]"),Ri=e=>Ce(e)&&!z(e)&&!w(e)&&Je(e),Oi=e=>e[P]?e[P].includes("Iterator"):mi,V=e=>e.toString().split(`
24
+ `,"Error'message":"Error'message treated as string","Error'stack":"Error'stack treated as string",kVerifyObjectCount:"no verify",throwDetachedArrayBufferError:"dont know how to get this state in js-layer",kArrayBufferTransfer:"hard to do this in js-layer",kSharedObject:"hard to do this in js-layer",kWasmModuleTransfer:"hard to do this in js-layer",kWasmMemoryTransfer:"hard to do this in js-layer",ITERATOR:"dont know how to get the iter cursor in js-layer, treated as a {}",ATOMICS:"dont know how to do this, treated as a {}",FPG:"function | lambda | promise| generator| all treated as a {}",Proxy:"hard to do this in browser, so treated as the-target-be-proxied"}});var Z=g((Ha,ht)=>{var{_u:Ls,_n:Va,_t:we,_f:za}=T(),Ns={kVersion:255,kPadding:0,kVerifyObjectCount:63,kTheHole:45,kUndefined:95,kNull:48,kTrue:84,kFalse:70,kInt32:73,kUint32:85,kDouble:78,kBigInt:90,kUtf8String:83,kOneByteString:34,kTwoByteString:99,kObjectReference:94,kBeginJSObject:111,kEndJSObject:123,kBeginSparseJSArray:97,kEndSparseJSArray:64,kBeginDenseJSArray:65,kEndDenseJSArray:36,kDate:68,kTrueObject:121,kFalseObject:120,kNumberObject:110,kBigIntObject:122,kStringObject:115,kRegExp:82,kBeginJSMap:59,kEndJSMap:58,kBeginJSSet:39,kEndJSSet:44,kArrayBuffer:66,kResizableArrayBuffer:126,kArrayBufferTransfer:116,kArrayBufferView:86,kSharedArrayBuffer:117,kSharedObject:112,kWasmModuleTransfer:119,kHostObject:92,kWasmMemoryTransfer:109,kError:114,kLegacyReservedMessagePort:77,kLegacyReservedBlob:98,kLegacyReservedBlobIndex:105,kLegacyReservedFile:102,kLegacyReservedFileIndex:101,kLegacyReservedDOMFileSystem:100,kLegacyReservedFileList:108,kLegacyReservedFileListIndex:76,kLegacyReservedImageData:35,kLegacyReservedImageBitmap:103,kLegacyReservedImageBitmapTransfer:71,kLegacyReservedOffscreenCanvas:72,kLegacyReservedCryptoKey:75,kLegacyReservedRTCCertificate:107},bt={kInt8Array:98,kUint8Array:66,kUint8ClampedArray:67,kInt16Array:119,kUint16Array:87,kInt32Array:100,kUint32Array:68,kFloat32Array:102,kFloat64Array:70,kBigInt64Array:113,kBigUint64Array:81,kDataView:63};Object.defineProperty(bt,"UNUSED_",{get:function(){return we}});var Se=Symbol("#kNodeFastBuffer"),Ms={kInt8Array:0,kUint8Array:1,kUint8ClampedArray:2,kInt16Array:3,kUint16Array:4,kInt32Array:5,kUint32Array:6,kFloat32Array:7,kFloat64Array:8,kDataView:9,kNodeFastBuffer:10,kBigInt64Array:11,kBigUint64Array:12},me=class extends Uint8Array{[Se]=we},Fs=e=>e[Se]===we,qs=e=>Object.prototype.toString.call(e),Cs=e=>{let t=qs(e);return t==="[object Int8Array]"?0:t==="[object Uint8Array]"?1:t==="[object Uint8ClampedArray]"?2:t==="[object Int16Array]"?3:t==="[object Uint16Array]"?4:t==="[object Int32Array]"?5:t==="[object Uint32Array]"?6:t==="[object Float32Array]"?7:t==="[object Float64Array]"?8:t==="[object DataView]"?9:t==="[object BigInt64Array]"?11:t==="[object BigUint64Array]"?12:-1},Js=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,DataView,me,BigInt64Array,BigUint64Array],Ws={kEvalErrorPrototype:69,kRangeErrorPrototype:82,kReferenceErrorPrototype:70,kSyntaxErrorPrototype:83,kTypeErrorPrototype:84,kUriErrorPrototype:85,kMessage:109,kCause:99,kStack:115,kEnd:46},Ps="#___kCantBeSered___",Vs=(e,t)=>({id:e,kCantBeSered:t}),zs="#___kUnknown___",Hs=()=>({kUnknown:Ls}),xs="v8ser";ht.exports={CODEC_NAME:xs,kNodeFastBufferSym:Se,IsNodeFastBuffer:Fs,SerializationTag:Ns,V8_ArrayBufferViewTag:bt,ArrayBufferViewTag:Ms,ArrayBufferViewIndexToCtor:Js,arrayBufferViewTypeToIndex:Cs,ErrorTag:Ws,kCantBeSered:Ps,CreatFakeCantBeSered:Vs,kUnknown:zs,CreatUnknown:Hs}});var M=g((xa,St)=>{var Gs=Object,L={un:"undefined",bl:"boolean",str:"string",num:"number",obj:"object",sym:"symbol",bi:"bigint",func_like:"function"},N=(e,t)=>typeof e===t,Ks=(e,t)=>e instanceof t,Xs=e=>N(e,L.str),Ys=e=>N(e,L.sym),$s=e=>Symbol.keyFor(e)!==void 0,Zs=e=>Symbol.keyFor(e)===void 0,Qs=e=>N(e,L.bi),kt=e=>N(e,L.num),pt=e=>Gs.is(e,NaN),At=e=>e===1/0,mt=e=>e===-1/0,wt=e=>pt(e)||At(e)||mt(e),eo=e=>!wt(e)&&kt(e),to=e=>1/e===1/0,ro=e=>1/e===-1/0,no=e=>N(e,L.func_like);St.exports={TNAMED:L,typof:N,is_str:Xs,is_num:kt,is_sym:Ys,is_glb_sym:$s,is_non_glb_sym:Zs,is_bi:Qs,istof:Ks,is_abnormal_num:wt,is_nan:pt,is_pos_infi:At,is_neg_infi:mt,is_normal_num:eo,is_pos_zero:to,is_neg_zero:ro,is_func_like:no}});var Q=g((Ga,Lt)=>{var Et=-(2n**31n),Bt=2n**31n-1n,It=e=>e>=-2147483648&&e<=2147483647,so=e=>e>=Et&&e<=Bt,Ee=e=>BigInt(e),Be=e=>Number(e),Ot=-(2**30),Rt=2**30-1,oo=-(2n**30n),io=2n**30n-1n,Tt=e=>e>=Ot&&e<=Rt,Ut=e=>e<<1^e>>31,Ie=e=>e<<1n^e>>63n,jt=e=>Be(Ie(Ee(e))),vt=e=>e>>1^-(e&1),Oe=e=>e>>1n^-(e&1n),Dt=e=>Be(Oe(Ee(e))),ao=e=>typeof e=="bigint"?Ie(e):Tt(e)?Ut(e):jt(e),lo=e=>typeof e=="bigint"?Oe(e):It(e)?vt(e):Dt(e);Lt.exports={MIN_SMI:-2147483648,MAX_SMI:2147483647,MIN_SMI_BI:Et,MAX_SMI_BI:Bt,is_smi:It,is_smi_bi:so,_bi:Ee,_num:Be,_encd_smi:Ut,_encd_bi:Ie,_encd_between_smi_bi:jt,_decd_smi:vt,_decd_bi:Oe,_decd_between_smi_bi:Dt,MIN_SMI_CAN_BE_ENCDED:Ot,MAX_SMI_CAN_BE_ENCDED:Rt,MIN_SMI_BI_CAN_BE_ENCDED:oo,MAX_SMI_BI_CAN_BE_ENCDED:io,is_smi_can_be_encded:Tt,encd:ao,decd:lo}});var Re=g((Ka,Nt)=>{var _o=String,co=e=>_o.fromCodePoint(e);Nt.exports={cd2ch:co}});var C=g((Xa,Ct)=>{var Mt=e=>(e>>8&252)===216,Ft=e=>(e>>8&252)===220,uo=e=>!Mt(e)&&!Ft(e),qt=(e,t)=>((e&1023)<<10)+(t&1023)+65536,fo=(e,t)=>t===1?e[0]:qt(e[0],e[1]);Ct.exports={is_high_surrogate:Mt,is_low_surrogate:Ft,is_not_surrogate:uo,surrogate_to_code:qt,b16arr_to_code:fo}});var zt=g((Ya,Vt)=>{var J=C(),yo=0,Jt=2,Wt=5,Pt=["INIT","N","H","L","R","ERROR"],W={in_error_must_reset:"in_error_must_reset",fst_b16_invalid:"fst b16 cant be <0b1111_11xx_xxxx_xxxx>",low_invalid:"low must be <0b1111_11xx_xxxx_xxxx>"},go=e=>{e[0]=3,e[1]=e[1]&240;for(let t=2;t<5;t++)e[t]=0},Te=(e,t,r)=>{if(e.is_auto_recover_enabled()){e.reset();return}else throw e[1]=(e[1]&240)+Wt,e[2]=t,new Error(r)},U=class extends Uint16Array{constructor(t=!0){super(5),this[0]=3,this[1]=t?16:0,this[2]=0}get cursor_(){return this[0]}get state_code_(){return this[1]&15}get state_name_(){return Pt[this.state_code_]}is_init(){return this.state_code_===yo}is_high(){return this.state_code_===Jt}is_err(){return this.state_code_===Wt}is_auto_recover_enabled(){return(this[1]&240)===1}enable_auto_recover(){this[1]=this[1]|16}disable_auto_recover(){this[1]=this[1]&15}get lefted_(){return Array.from(this).slice(3,this[0])}get err_b16_(){return this[2]}input(t){let r=t.charCodeAt(0);if(this.is_init())if(J.is_high_surrogate(r)){this[3]=r,this[1]=(this[1]&240)+Jt,this[0]++;return}else return J.is_low_surrogate(r)?Te(this,r,W.fst_b16_invalid):(this.reset(),r);else{if(this.is_high())return J.is_high_surrogate(r)?Te(this,r,W.low_invalid):J.is_low_surrogate(r)?(r=J.surrogate_to_code(this[3],r),this.reset(),r):Te(this,r,W.low_invalid);if(this.is_err())return new Error(W.in_error_must_reset)}}reset(){go(this)}dict(){return{cursor:this[0],state:this.state_name_,data:this.lefted_,err_b16:this.err_b16_}}get[Symbol.toStringTag](){return JSON.stringify(this.dict())}};U.ALGN_OFFSET=3;U.ALGN_SIZE=5;var bo=new U(!0),ho=new U(!1);Vt.exports={STATES:Pt,ERRORS:W,Mach:U,auto_recover_mach:bo,mach:ho}});var xt=g(($a,Ht)=>{Ht.exports={def:C(),mach:zt()}});var Yt=g((Za,Xt)=>{var{is_high_surrogate:Ue}=C(),Gt=(e,t)=>{let r=e.length,s=0,n=0,o=-1;for(;!(n>=r);)o=e[n].charCodeAt(0),Ue(o)?(++n,++n):(o===t&&++s,++n);return s},Kt=(e,t,r)=>{let s=e.length,n=0,o=0,a=-1;for(;!(o>=s);)a=e[o].charCodeAt(0),Ue(a)&&(a===t&&(a=e[o+1].charCodeAt(0),a===r&&++n),++o),++o;return n},ko=e=>{let t=e.charCodeAt(0);return Ue(t)?[t,e.charCodeAt(1)]:[t,-1]},po=(e,t)=>{let[r,s]=_is_u16u16_char(t);return s!=-1?Kt(e,r,s):Gt(e,r)};Xt.exports={_char_freq_if_u16:Gt,_char_freq_if_u16u16:Kt,_parse_char:ko,char_freq:po}});var Zt=g((el,$t)=>{var{cd2ch:Qa}=Re(),{is_high_surrogate:Ao}=C(),ee=(e,t,r)=>{let s=e[r].charCodeAt(0);return Ao(s)?[e.codePointAt(r),r,r+2]:[s,r,r+1]},je=(e,t)=>t===0?[-1,-1,0]:ee(e,t,0),mo=(e,t=(cd,ci,offset))=>{let r=e.length,s=0,[n,o,a]=je(e,r);for(t(n,s,o),++s,o=a;o<r;)[n,o,a]=ee(e,r,o),t(n,s,o),++s,o=a},wo=e=>{let t=e.length,r=Array.from({length:t}).map(h=>[-1,-1]),s=Array.from({length:t}).map(h=>-1),n=Array.from({length:t}).map(h=>-1),o=Array.from({length:t}).map(h=>-1),a=0,[_,l,u]=je(e,t);for(r[a][0]=0,r[a][1]=0,n[a]=_,s[a]=l,o[a]=u-l,++a,l=u;l<t;){[_,l,u]=ee(e,t,l);let h=r[a-1],m=n[h[0]];_===m?(r[a][0]=h[0]+1,r[a][1]=o[h[0]]):(r[a][0]=0,r[a][1]=0),n[a]=_,s[a]=l,o[a]=o[a-1]+(u-l),++a,l=u}return{mx:r,cd:n,of:s,sz:o}},So=(e,t,r,s,n)=>r+n-e.mx[s-t-1][1];$t.exports={_fst:je,_next:ee,_while:mo,max_cmmn_psfix:wo,mvto:So}});var ve=g((tl,er)=>{var Qt=e=>{e=e-65536;let t=e&1023|56320;return[e>>10|55296,t]},Eo=e=>{if(e<65536){let t=e&255,r=e>>8;return[t,r]}else{let[t,r]=Qt(e),s=t&255,n=t>>8,o=r&255,a=r>>8;return[s,n,o,a]}};er.exports={MAX_CODE:1114111,_split_to_hilo:Qt,split:Eo}});var rr=g((rl,tr)=>{var Bo=ve(),De=class{u8a;ei=0;cnt=0;constructor(t){this.u8a=new Uint8Array(t)}get view_(){return this.u8a.subarray(0,this.ei)}input(t){let r=Bo.split(t);switch(++this.cnt,r.length){case 2:{this.u8a[this.ei]=r[0],++this.ei;break}case 4:{this.u8a[this.ei]=r[0],++this.ei,this.u8a[this.ei]=r[1],++this.ei,this.u8a[this.ei]=r[2],++this.ei,this.u8a[this.ei]=r[3],++this.ei;break}}return r}reset(){this.ei=0,this.cnt=0}};tr.exports={Mach:De}});var sr=g((nl,nr)=>{nr.exports={def:ve(),mach:rr()}});var te=g((sl,or)=>{var Io=Re(),Oo=xt(),Ro=Yt(),To=Zt(),Uo=sr();or.exports={cmmd:Io,decd:Oo,encd:Uo,freq:Ro,handle:To}});var se=g((_l,_r)=>{var jo=Object.is,{istof:ol,is_num:vo}=M(),{_u:il,_n:al,_t:ne,_f:re}=T(),Do=Q(),ll=te(),Lo=e=>{let t=0;do t++,e>>=7;while(e);return t},ir=e=>{for(let t=0;t<e.length;++t)if(!(e[t].charCodeAt(0)<256))return re;return ne},No=e=>!ir(e),Mo=(e,t)=>{let s=new DataView(e.buffer).getFloat64(t,ne);return jo(s,NaN)},Fo={PACKED_SMI_ELEMENTS:0,HOLEY_SMI_ELEMENTS:1,PACKED_DOUBLE_ELEMENTS:2,HOLEY_DOUBLE_ELEMENTS:3,PACKED_ELEMENTS:4,HOLEY_ELEMENTS:5},ar=e=>{let t=0;return e.forEach(r=>{++t}),t},qo=e=>ar(e)!==e.length,lr=e=>Number.isInteger(e)&&!Object.is(e,-0)&&Do.is_smi(e),Co=e=>{let t=ne,r=ne,s=0;for(;s<e.length;){if(!(t&&lr(e[s])))if(vo(e[s]))t=re;else{t=re,r=re;break}++s}return{is_packed_smi:t,is_packed_double:r}},Jo=new TextDecoder,Wo=(e,t,r,s)=>{let n=new Uint8Array(e.buffer,t,r);return s?s(n):Jo.decode(n)},Po=new TextDecoder("latin1"),Vo=(e,t,r)=>Po.decode(e.subarray(t,t+r)),zo=new TextDecoder("utf-16"),Ho=(e,t,r)=>zo.decode(e.subarray(t,t+r));_r.exports={BytesNeededForVarint:Lo,IsOneByte:ir,IsTwoByte:No,IsNaNAt:Mo,IsSmi:lr,kFastElementsKindSequence:Fo,GetArrayForEachLength:ar,IsArrayHasHole:qo,GetArrayPackedInfo:Co,Utf8U8aToStr:Wo,Latin1U8aToStr:Vo,JstrU8aToStr:Ho}});var Ne=g((cl,ur)=>{var cr=2**53-1,Le=class extends Array{constructor(){super(),this[0]=0}get id(){return this[0]}next(){let t=this[0],r=this[0]+1;return r-1===cr&&(r=0),this[0]=r,t}},xo=()=>new Le;ur.exports={MAX_NID:cr,creat_nid:xo}});var ie=g((fl,yr)=>{var Go=Array,{_u:dr,_n:ul,_t:Ko,_f:Xo}=T(),{creat_nid:Yo}=Ne(),oe=class extends WeakMap{#e=Yo();FindOrInsert(t){let r=this.get(t);if(r===dr){let s=this.#e.next();return this.set(t,s),[Xo,s]}else return[Ko,r]}},$o=()=>new oe,Me=class{idmap=new oe},Zo=()=>new Me,Fe=class extends Go{HasObjectWithID(t){return this[t]!==dr}GetObjectWithID(t){return this[t]}AddObjectWithID(t){this.push(t)}get nid_(){return this.length}},fr=()=>new Fe;yr.exports={creat_widmap:$o,creat_wctx:Zo,creat_ridmap:fr,creat_rctx:fr}});var dn=g((dl,fn)=>{var ae=Boolean,gr=Number,br=String,hr=BigInt,kr=Date,pr=RegExp,Ar=ArrayBuffer;globalThis.SharedArrayBuffer||(window.SharedArrayBuffer=ArrayBuffer,globalThis.SharedArrayBuffer=ArrayBuffer);var mr=globalThis.SharedArrayBuffer,wr=DataView,Sr=Array,Er=Set,Br=Map,Ir=Uint8Array,Or=Uint8ClampedArray,Rr=Int8Array,Tr=Uint16Array,Ur=Int16Array,jr=Uint32Array,vr=Int32Array,Dr=BigUint64Array,Lr=BigInt64Array,Nr=Float32Array,Mr=Float64Array,Fr=WeakSet,qr=WeakMap,Cr=WeakRef,Jr=Error,Wr=EvalError,Pr=RangeError,Vr=ReferenceError,zr=TypeError,Hr=URIError,xr=AggregateError,{istof:y}=M(),Qo=e=>y(e,kr),ei=e=>y(e,pr),ti=e=>y(e,Ar),ri=e=>y(e,mr),ni=e=>y(e,wr),Gr=e=>y(e,Ir),Kr=e=>y(e,Or),Xr=e=>y(e,Rr),Yr=e=>y(e,Tr),$r=e=>y(e,Ur),Zr=e=>y(e,jr),Qr=e=>y(e,vr),en=e=>y(e,Dr),tn=e=>y(e,Lr),rn=e=>y(e,Nr),nn=e=>y(e,Mr),si=e=>Gr(e)||Kr(e)||Xr(e)||Yr(e)||$r(e)||Zr(e)||Qr(e)||en(e)||tn(e)||rn(e)||nn(e),oi=Sr.isArray,ii=e=>y(e,Er),ai=e=>y(e,Br),sn=e=>y(e,Fr),on=e=>y(e,qr),an=e=>y(e,Cr),li=e=>sn(e)||on(e)||an(e),ln=e=>y(e,ae),_i=e=>y(e,ae)&&e.valueOf(),ui=e=>y(e,ae)&&!e.valueOf(),_n=e=>y(e,gr),cn=e=>y(e,br),un=e=>y(e,hr),fi=e=>ln(e)||_n(e)||cn(e)||un(e),di=e=>y(e,Jr),yi=e=>y(e,Wr),gi=e=>y(e,Pr),bi=e=>y(e,Vr),hi=e=>y(e,zr),ki=e=>y(e,Hr),pi=e=>y(e,xr);fn.exports={_DT:kr,_RGX:pr,_BL:ae,_N:gr,_S:br,_BI:hr,_AB:Ar,_SAB:mr,_DV:wr,_U8A:Ir,_U8CA:Or,_I8A:Rr,_U16A:Tr,_I16A:Ur,_U32A:jr,_I32A:vr,_U64A:Dr,_I64A:Lr,_F32A:Nr,_F64A:Mr,_A:Sr,_ST:Er,_MP:Br,_WKST:Fr,_WKMP:qr,_WKREF:Cr,_ERR:Jr,_AGG_ERRS:xr,_EVL_ERR:Wr,_RNG_ERR:Pr,_REF_ERR:Vr,_TYP_ERR:zr,_URI_ERR:Hr,is_dt:Qo,is_rgx:ei,is_ab:ti,is_dv:ni,is_sab:ri,is_abvw:si,is_u8a:Gr,is_u8ca:Kr,is_i8a:Xr,is_u16a:Yr,is_i16a:$r,is_u32a:Zr,is_i32a:Qr,is_u64a:en,is_i64a:tn,is_f32a:rn,is_f64a:nn,is_ary:oi,is_st:ii,is_mp:ai,is_weak:li,is_wkst:sn,is_wkmp:on,is_wkref:an,is_prim_wrap:fi,is_blo:ln,is_truo:_i,is_flso:ui,is_numo:_n,is_stro:cn,is_bio:un,is_err:di,is_eval_err:yi,is_rng_err:gi,is_ref_err:bi,is_typ_err:hi,is_uri_err:ki,is_agg_errs:pi}});var En=g((bl,Sn)=>{var Ai=Symbol,P=Ai.toStringTag,{_u:qe,_n:yl,_t:gl,_f:mi}=T(),{is_func_like:Ce}=M(),le=(e,t)=>Object.getOwnPropertyDescriptor(e,t),bn=e=>le(e,"arguments"),Je=e=>bn(e)===qe,hn=e=>le(e,"prototype"),We=e=>hn(e)===qe,wi=e=>e[P]==="Promise",kn=e=>e[P]==="Generator",pn=e=>e[P]==="AsyncGenerator",Si=e=>kn(e)||pn(e),w=e=>e.constructor.name==="AsyncFunction",j=e=>Ce(e)&&We(e),Ei=e=>!w(e)&&j(e),Bi=e=>w(e)&&j(e),Pe=e=>Ce(e)&&le(e,"arguments")!==qe,An=e=>Pe(e)&&!w(e),mn=e=>Pe(e)&&w(e),_e=e=>e.constructor.name==="AsyncGeneratorFunction",ce=e=>e.constructor.name==="GeneratorFunction",z=e=>ce(e)||_e(e),yn=e=>An(e)&&!z(e),gn=e=>mn(e)&&!z(e),Ii=e=>e.toString().includes("[native code]"),Oi=e=>Ce(e)&&!z(e)&&!w(e)&&Je(e),Ri=e=>e[P]?e[P].includes("Iterator"):mi,V=e=>e.toString().split(`
25
25
  `)[0].includes("=>"),wn=e=>j(e)&&!V(e),ue=e=>j(e)&&V(e),Ti=e=>ue(e)&&!w(e),Ui=e=>wn(e)&&!w(e),ji=e=>ue(e)&&w(e),vi=e=>ue(e)&&w(e),F=e=>e.toString().split(`
26
26
  `)[0].includes("function"),Di=e=>z(e)&&!F(e),Li=e=>_e(e)&&!F(e),Ni=e=>ce(e)&&!F(e),Mi=e=>j(e)&&e.toString().split(`
27
27
  `)[0].includes("get "),Fi=e=>j(e)&&e.toString().split(`
28
28
  `)[0].includes("set "),qi=e=>{if(_e(e))return F(e)?"sgen":"mthd_sgen";if(ce(e))return F(e)?"agen":"mthd_agen";if(We(e)){if(w(e))return V(e)?"almbd":"amthd";if(V(e))return"slmbd";var t=e.toString().split(`
29
- `)[0];return t.includes("get ")?"getter":t.includes("set ")?"setter":"smthd"}else return Je(e)?"cls":w(e)?"afunc":"sfunc"};Sn.exports={get_prop_desc:le,get_arguments_desc:bn,hasno_arguments:Je,get_prot_desc:hn,hasno_prot_desc:We,is_prms:wi,is_sg:kn,is_ag:pn,is_g:Si,_is_acallable:w,is_lmbd_or_mthd:j,is_slmbd_or_smthd:Ei,is_almbd_or_amthd:Bi,is_func:Pe,is_sfunc_or_sgen:An,is_afunc_or_agen:mn,is_sfunc:gn,is_afunc:yn,is_sgen:_e,is_agen:ce,is_gen:z,is_sfunc:gn,is_afunc:yn,is_cls:Ri,is_iter:Oi,is_native_code:Ii,slow_is_lmbd:ue,slow_is_mthd:wn,slow_is_slmbd:Ti,slow_is_smthd:Ui,slow_is_almdb:ji,slow_is_amthd:vi,slow_is_mthd_gen:Di,slow_is_mthd_sgen:Li,slow_is_mthd_agen:Ni,slow_is_getter:Mi,slow_is_setter:Fi,_incld_arrow_lit:V,_incld_function_lit:F,func_like_tname:qi}});var Ve=y((hl,Rn)=>{var Bn=["g","i","m","y","u","s","l","d","v"],In={g:1,i:2,m:4,y:8,u:16,s:32,l:64,d:128,v:256},Ci=e=>{let t=0;for(let r=0;r<e.length;++r){let s=e[r];In[s]&&(t=t+In[s])}return t},Ji=e=>{let t="";for(let r=0;r<Bn.length;++r){let s=Bn[r];e&1<<r&&(t=t+s)}return t};Rn.exports={s2n:Ci,n2s:Ji}});var Tn=y((kl,On)=>{var ge=2n**64n-1n,fe=e=>{let t=0;for(;e;)e=e>>64n,++t;return t},de=e=>8*fe(e),ze=e=>{let t=0;e>=0n||(t=1,e=-e);let r=de(e);return[t,r,e]},Wi=e=>{let[t,r,s]=ze(e);return t|r<<1},Pi=e=>{let t=e&1,r=e>>1;return{sign:t,data_blen:r}},Vi=function*(e){for(;e;)yield e&ge,e=e>>64n},zi=e=>e>=0n?fe(e):fe(-e),Hi=e=>e>=0n?de(e):de(-e),xi=function*(e){for(e=e>=0?e:-e;e;)yield e&ge,e=e>>64n},Gi=(e,t,r=0,s)=>{let[n,o,a]=ze(e),_=n|o,l=r,u=s(_);for(let p=0;p<u.length;++p)t[r+p]=u[p];r=r+u.length;let h=r,m=new DataView(t.buffer);for(;a;)m.setBigUint64(a&ge,r,_t),r=r+8,a=a>>64n;return{sign:n,data:t,head_offset:l,body_offset:h,curr_offset:r}};On.exports={MASK:ge,count_if_pos:fe,data_byte_length_if_pos:de,count:zi,data_byte_length:Hi,_get_head:ze,get_encd_head:Wi,decd_encd_head:Pi,gen_body_if_pos:Vi,gen_body:xi,use_with_get_var_int:Gi}});var $n=y((Sl,Yn)=>{var{_u:x,_n:vn,_t:Dn,_f:xe,is_untf:Ki}=T(),E=M(),A=dn(),{is_prms:Xi,is_g:Yi,is_iter:$i}=En(),Ln=Q(),Zi=te(),Qi=Ve(),Un=Tn(),G=se(),{SerializationTag:f,ErrorTag:S,ArrayBufferViewTag:pl,IsNodeFastBuffer:Al,kNodeFastBufferSym:ml,ArrayBufferViewIndexToCtor:wl,CreatFakeCantBeSered:jn,arrayBufferViewTypeToIndex:ea}=Z(),ta=ie(),Nn=(e,t=15,r)=>{e.push(f.kVersion),e.push(t)},d=(e,t,r)=>{e.push(t)},b=(e,t,r)=>{if(Ln.is_smi_can_be_encded(t)){let s;do s=t&127|128,e.push(Number(s)),t=t>>7;while(t);return e[e.length-1]=e[e.length-1]&127,e}else{t=BigInt(t);let s;do s=t&0x7Fn|0x80n,e.push(Number(s)),t=t>>7n;while(t);return e[e.length-1]=e[e.length-1]&127,e}},Mn=(e,t,r,s=Ln.encd)=>(t=s(t),b(e,t),e),K=(e,t,r,s)=>{s=s??new Float64Array(1),s[0]=t;let n=new Uint8Array(s.buffer);for(let o=0;o<8;++o)e.push(n[o]);return e},Fn=(e,t,r)=>{b(e,t.length);for(let s=0;s<t.length;++s)e.push(t.charCodeAt(s));return e},qn=(e,t,r,s)=>{s=s??new Zi.encd.mach.Mach,b(e,t.length*2);for(let n=0;n<t.length;++n){let o=t.charCodeAt(n),[a,_]=s.input(o);e.push(a),e.push(_)}return e},ye=(e,t,r)=>{for(let s=0;s<t.length;++s)e.push(t[s]);return e},Cn=(e,t,r)=>{let s=f.kUndefined;switch(t){case x:s=f.kUndefined;break;case xe:s=f.kFalse;break;case Dn:s=f.kTrue;break;case vn:s=f.kNull;break}return d(e,s),e},be=(e,t,r)=>(d(e,f.kInt32,r),Mn(e,t,r),e),Ge=(e,t,r)=>(d(e,f.kDouble,r),K(e,t,r),e),v=(e,t,r)=>{if(t|0,G.IsOneByte(t))d(e,f.kOneByteString,r),Fn(e,t,r);else{let s=t.length*2,n=G.BytesNeededForVarint(s);e.length+1+n&1&&d(e,f.kPadding,r),d(e,f.kTwoByteString,r),qn(e,t,r)}return e},Jn=(e,t,r)=>(d(e,f.kDate,r),K(e,t.getTime(),r),e),Wn=(e,t,r)=>{d(e,f.kRegExp,r),v(e,t.source,r);let s=Qi.s2n(t.flags);return b(e,s,r),e},Ke=(e,t,r)=>{let[s,n,o]=Un._get_head(t),a=s|n<<1;b(e,a,r);let _=new BigUint64Array(1),l=new Uint8Array(_.buffer);for(;o;)_[0]=o&Un.MASK,e.push(l[0],l[1],l[2],l[3],l[4],l[5],l[6],l[7]),o=o>>64n;return e},Xe=(e,t,r)=>(d(e,f.kBigInt,r),Ke(e,t,r),e),ra=(e,t,r)=>(e.push(t),e),He=(e,t,r)=>(b(e,t,r),e),Pn=(e,t,r)=>A.is_truo(t)?(d(e,f.kTrueObject,r),e):A.is_flso(t)?(d(e,f.kFalseObject,r),e):A.is_numo(t)?(d(e,f.kNumberObject,r),K(e,Number(t),r),e):A.is_stro(t)?(d(e,f.kStringObject,r),v(e,String(t),r),e):A.is_bio(t)?(d(e,f.kBigIntObject,r),Ke(e,BigInt(t),r),e):x,Vn=(e,t,r)=>{switch(d(e,f.kError,r),t.name){case"EvalError":{b(e,S.kEvalErrorPrototype,r);break}case"RangeError":{b(e,S.kRangeErrorPrototype,r);break}case"ReferenceError":{b(e,S.kReferenceErrorPrototype,r);break}case"SyntaxError":{b(e,S.kSyntaxErrorPrototype,r);break}case"TypeError":{b(e,S.kTypeErrorPrototype,r);break}case"URIError":{b(e,S.kUriErrorPrototype,r);break}default:}let n=String(t.message);b(e,S.kMessage,r),v(e,n,r);let o=t.cause;o&&(b(e,S.kCause,r),B(e,o,r));let a=String(t.stack);return b(e,S.kStack,r),v(e,a,r),b(e,S.kEnd,r),e},B=(e,t,r)=>{if(E.is_num(t)&&G.IsSmi(t))be(e,t,r);else if(t===x)d(e,f.kUndefined,r);else if(t===vn)d(e,f.kNull,r);else if(t===Dn)d(e,f.kTrue,r);else if(t===xe)d(e,f.kFalse,r);else if(E.is_num(t))Ge(e,t,r);else if(E.is_bi(t))Xe(e,t,r);else if(E.is_str(t))v(e,t,r);else{Ye(e,t,r);}return e},zn=(e,t,r)=>{d(e,f.kBeginJSSet,r);let s=0;for(let n of t)B(e,n,r),++s;return d(e,f.kEndJSSet,r),b(e,s,r),e},Hn=(e,t,r)=>{d(e,f.kBeginJSMap,r);let s=t.size*2;for(let[n,o]of t)B(e,n,r),B(e,o,r);return d(e,f.kEndJSMap,r),b(e,s,r),e},xn=(e,t,r)=>{let s=ea(t);if(s>-1){d(e,f.kHostObject,r),He(e,s,r),He(e,t.byteLength,r);let n=new Uint8Array(t.buffer,t.byteOffset,t.byteLength);return ye(e,n,r),e}},Gn=(e,t,r)=>xn(e,t,r),Kn=(e,t,r)=>{let s=xe;A.is_sab(t)?s=!!t.growable:s=t.resizable;let n=s?t.maxByteLength:t.byteLength,o=t.byteLength;return s?(d(e,f.kResizableArrayBuffer,r),b(e,o,r),b(e,n,r),ye(e,new Uint8Array(t),r)):(d(e,f.kArrayBuffer,r),b(e,o,r),ye(e,new Uint8Array(t),r)),e},H=(e,t,r)=>{d(e,f.kBeginJSObject,r);let s=0;for(let n in t)B(e,n,r),B(e,t[n],r),s++;return d(e,f.kEndJSObject,r),b(e,s,r),e},Xn=(e,t,r)=>{let s=t.length,{is_packed_smi:n,is_packed_double:o}=G.GetArrayPackedInfo(t);if(n){d(e,f.kBeginDenseJSArray,r),b(e,s,r);for(let l=0;l<t.length;++l)be(e,t[l],r)}else if(o){if(d(e,f.kBeginDenseJSArray,r),b(e,s,r),s!==0)for(let l=0;l<t.length;++l)d(e,f.kDouble,r),K(e,t[l],r)}else{d(e,f.kBeginDenseJSArray,r),b(e,s,r);for(let l=0;l<t.length;++l)B(e,t[l],r)}let a=Object.keys(t),_=0;for(let l=t.length;l<a.length;++l){let u=a[l];B(e,u,r),B(e,t[u],r),_++}return d(e,f.kEndDenseJSArray,r),b(e,_,r),b(e,s,r),e},Ye=(e,t,r)=>{if(Ki(t))Cn(e,t,r);else if(G.IsSmi(t))be(e,t,r);else if(E.is_num(t))Ge(e,t,r);else if(E.is_str(t))v(e,t,r);else if(E.is_bi(t))Xe(e,t,r);else if(E.is_sym(t)){let s=jn("Symbol",t.description);H(e,s,r)}else{let[s,n]=r.idmap.FindOrInsert(t);if(s)d(e,f.kObjectReference,r),b(e,n,r);else if(A.is_ary(t))Xn(e,t,r);else if(A.is_st(t))zn(e,t,r);else if(A.is_mp(t))Hn(e,t,r);else if(A.is_dt(t))Jn(e,t,r);else if(A.is_rgx(t))Wn(e,t,r);else if(A.is_ab(t)||A.is_sab(t))Kn(e,t,r);else if(t.buffer&&A.is_ab(t.buffer))Gn(e,t,r)!==x||H(e,t,r);else if(E.istof(t,Error))Vn(e,t,r);else if(Pn(e,t,r)===x)if(E.is_func_like(t)||Xi(t)||Yi(t)||$i(t)){let a=jn(n,String(t));H(e,a,r)}else H(e,t,r)}return e},na=(e,t=15)=>{let r=[],s=ta.creat_wctx();return Nn(r,t),Ye(r,e,s),new Uint8Array(r).buffer};Yn.exports={WriteHeader:Nn,WriteTag:d,WriteVarint:b,WriteZigZag:Mn,WriteDouble:K,WriteOneByteString:Fn,WriteTwoByteString:qn,WriteRawBytes:ye,WriteOddball:Cn,WriteSmi:be,WriteHeapNumber:Ge,WriteString:v,WriteJSDate:Jn,WriteJSRegExp:Wn,WriteBigIntContents:Ke,WriteBigInt:Xe,WriteByte:ra,WriteUint32:He,WriteJSPrimitiveWrapper:Pn,WriteJSError:Vn,WriteObject:B,WriteJSSet:zn,WriteJSMap:Hn,WriteHostObject:xn,WriteJSArrayBufferView:Gn,WriteJSArrayBuffer:Kn,WriteJSObject:H,WriteJSArray:Xn,WriteJSReceiver:Ye,encd:na}});var ts=y((El,es)=>{var{istof:sa}=M(),$e=Error,Zn=e=>new $e(e),Qn=e=>{throw Zn(e)},oa=e=>sa(e,$e),ia=e=>Qn("unreachable");es.exports={_ERR:$e,creat_err:Zn,thrw_str:Qn,is_err:oa,unreachable:ia}});var ns=y((Bl,he)=>{var aa=(e,t=e.constructor)=>{for(var r=e.byteOffset,s=r+e.byteLength,n=new t(e.buffer),o=n.subarray(r/t.BYTES_PER_ELEMENT,s/t.BYTES_PER_ELEMENT),a="[",_=0;_<o.length-1;++_)typeof o[_]=="bigint"?a+=o[_]+"n,":a+=o[_]+",";return o.length===0||(typeof o[o.length-1]=="bigint"?a+=o[o.length-1]+"n":a+=o[o.length-1]),a+="]",a},rs=e=>{var t=new Uint8Array(e),r=JSON.stringify(Array.from(t)),s;return e.resizable?s=`new ArrayBuffer(${e.byteLength},{maxByteLength:${e.maxByteLength}})`:s=`new ArrayBuffer(${e.byteLength})`,`(()=>{ var ab = ${s};(new Uint8Array(ab)).set(${r});return(ab);})()`};he.exports=(e,t="",r)=>{var s=t;return r!==void 0&&(s+=`var ${t} = `),s+=rs(e),s};he.exports.ab=rs;Object.defineProperty(he.exports,"_creat_desc",{value:aa,enumerable:!1})});var ls=y((Il,as)=>{var la=(e,t)=>{if(typeof e=="number")return t!==void 0?new ArrayBuffer(e,{maxByteLength:t}):new ArrayBuffer(e);if(e instanceof ArrayBuffer){var r;e.resizable?r=new ArrayBuffer(e.byteLength,{maxByteLength:e.maxByteLength}):r=new ArrayBuffer(e.byteLength);var s=new Uint8Array(e);return new Uint8Array(r).set(s),r}else if(e.buffer&&e.buffer instanceof ArrayBuffer){var n=e.byteOffset,o=n+e.byteLength;if(t!==void 0)return e.buffer.slice(n,o);var r=new ArrayBuffer(o-n,{maxByteLength:t}),s=new Uint8Array(e.buffer).subarray(n,o);return new Uint8Array(r).set(s),r}else{var a=e.length,r;e.resizable?r=new ArrayBuffer(a,{maxByteLength:e.maxByteLength}):r=new ArrayBuffer(a);for(var _=new Uint8Array(r),l=0;l<a;++l)_[l]=e[l];return r}},_a=ns().ab,ke=(e,t,r,s,n)=>{let o=new Uint8Array(e,t,r);return new Uint8Array(s).set(o,n),s},ss=(e,t,r,s,n)=>(r=r??0,s=s??e.byteLength,n=n??0,ke(e,r,s,t,n)),ca=(e,t,r,s=0)=>ss(e,t,0,r,s),ua=(e,t,r=0)=>ke(e,0,e.byteLength,t,r),fa=(e,t)=>ke(e,0,e.byteLength,t,0),os=(e,...t)=>{let r=t.length,s=new Uint8Array(e.length+r);for(let n=0;n<r;++n)s[e.length+n]=t[n];return s.set(e),e},is=(e,...t)=>{let r=t.length,s=new Uint8Array(e.length+r);for(let n=0;n<r;++n)s[n]=t[n];return s.set(e,r),e},da=(e,...t)=>os(new Uint8Array(e),...t).buffer,ga=(e,...t)=>is(new Uint8Array(e),...t).buffer;as.exports={creat:la,to_str:_a,_cp:ke,cp:ss,cp_from_src_start:ca,cp_all_if_dst_is_enough:ua,cp_all_if_same_blen:fa,dupe_u8a_and_push:os,dupe_u8a_and_unshift:is,dupe_and_push:da,dupe_and_unshift:ga}});var ws=y((Ol,ms)=>{var{_u:X,_n:ya,_t:R,_f:D}=T(),{thrw_str:ba}=ts(),ha=ls(),ka=Q(),Rl=te(),pa=Ve(),et=se(),{SerializationTag:c,ErrorTag:I,ArrayBufferViewIndexToCtor:Aa,CreatUnknown:ma}=Z(),{creat_rctx:wa}=ie(),_s={must_be_str:"must_be_str"},Sa=(e,t,r)=>{let s=t,n=0,o=0,a=D;do{let _=e[t];if(a=_&128,o<32)n|=(_&127)<<o,o=o+7;else break;++t}while(a);return[n,t-s,t]},Ea=(e,t,r)=>{let s=t,n=0n,o=0n,a=D;do{let _=BigInt(e[t]);if(a=_&0x80n,o<32n)n|=(_&0x7Fn)<<o,o=o+7n;else break;++t}while(a);return[Number(n),t-s,t]},k=Ea,cs=(e,t,r)=>{let s=t;++t;let n=e[t];return++t,[n,t-s,t]},q=(e,t,r)=>{let s=t,n;do n=e[t],++t;while(n===c.kPadding);return[n,t-s,t]},us=(e,t,r,s=ka.decd)=>{let n=t,o=k(e,t,r),a=o[0];return t=o[2],[s(a),t-n,t]},pe=(e,t,r)=>{let n=new DataView(e.buffer,e.byteOffset,e.byteLength).getFloat64(t,R);return t=t+8,[n,8,t]},tt=(e,t,r,s)=>{let n=t,o=new Uint8Array(e.buffer,e.byteOffset+t,r);return t=t+r,[o,r,t]},Ba=(e,t,r)=>(++t,[e[i],1,t]),Ze=(e,t,r)=>k(e,t,r),fs=2n**64n,rt=(e,t,r)=>{let s=t,n=k(e,t,r),o=n[0],a=o&1,_=o>>1;t=n[2],n=tt(e,t,_,r);let l=n[0],u=new DataView(l.buffer,l.byteOffset,l.byteLength),h=0n,m=1n,p=_/8;for(let Ae=0;Ae<p;++Ae){let Is=u.getBigUint64(8*Ae,R);h=h+Is*m,m=m*fs}return a===1&&(h=-h),t=n[2],[h,t-s,t]},nt=(e,t,r)=>{let s=t,n=k(e,t,r),o=n[0];t=n[2];let a=et.Latin1U8aToStr(e,t,o);return t+=o,[a,t-s,t]},st=(e,t,r)=>{let s=t,n=k(e,t,r),o=n[0];t=n[2];let a=et.JstrU8aToStr(e,t,o);return t+=o,[a,t-s,t]},ot=(e,t,r)=>{let s=t,n=k(e,t,r),o=n[0];t=n[2];let a=et.Utf8U8aToStr(e,t,o);return t+=o,[a,t-s,t]},ds=(e,t,r)=>{let s=t,n=pe(e,t,r),o=n[0],a=new Date(o);return t=n[2],r.AddObjectWithID(a),[a,t-s,t]},Ia=(e,t,r,s)=>{let n=t,o;switch(r){case c.kTrueObject:{o=new Boolean(R);break}case c.kFalseObject:{o=new Boolean(D);break}case c.kNumberObject:{let a=pe(e,t,s),_=a[0];t=a[2],o=new Number(_);break}case c.kStringObject:{let a=Y(e,t,s),_=a[0];t=a[2],o=new String(_);break}case c.kBigIntObject:{let a=rt(e,t,s),_=a[0];t=a[2],o=CreatFakeCantBeSered("BigInt",_);break}default:}return s.AddObjectWithID(o),[o,t-n,t]},gs=(e,t,r)=>{let s=t,n=X,o=X,a=X,_=D,l=Error;for(;!_;){let h=k(e,t,r),m=h[0];switch(t=h[2],m){case I.kEvalErrorPrototype:{l=EvalError;break}case I.kRangeErrorPrototype:{l=RangeError;break}case I.kReferenceErrorPrototype:{l=ReferenceError;break}case I.kSyntaxErrorPrototype:{l=SyntaxError;break}case I.kTypeErrorPrototype:{l=TypeError;break}case I.kUriErrorPrototype:{l=URIError;break}case I.kMessage:{let p=Y(e,t,r);n=p[0],t=p[2];break}case I.kCause:{let p=O(e,t,r);a=p[0],t=p[2];break}case I.kStack:{let p=Y(e,t,r);o=p[0],t=p[2];break}case I.kEnd:{_=R;break}default:}}let u;return a?u=new l(n,{cause:a}):u=new l(n),u.stack=o,r.AddObjectWithID(u),[u,t-s,t]},Y=(e,t,r)=>{let s=t,n=q(e,t,r),o=n[0];switch(t=n[2],o){case c.kOneByteString:return n=nt(e,t,r),t=n[2],[n[0],t-s,t];case c.kTwoByteString:return n=st(e,t,r),t=n[2],[n[0],t-s,t];case c.kUtf8String:return n=ot(e,t,r),t=n[2],[n[0],t-s,t];default:ba(_s.must_be_str)}},ys=(e,t,r)=>{let s=t,n=Y(e,t,r),o=n[0];t=n[2],n=k(e,t,r);let a=n[0];a=pa.n2s(a),t=n[2];let _=new RegExp(o,a);return r.AddObjectWithID(_),[_,t-s,t]},bs=(e,t,r)=>{let s=t,n=new Set;r.AddObjectWithID(n);let o=0;for(;R;){let _=t,l=q(e,t,r),u=l[0];if(t=l[2],u===c.kEndJSSet)break;t=_,l=O(e,t,r),n.add(l[0]),t=l[2],o++}let a=k(e,t,r);return t=a[2],[n,t-s,t,a[0]]},hs=(e,t,r)=>{let s=t,n=new Map;r.AddObjectWithID(n);let o=0;for(;R;){let _=t,l=q(e,t,r);if(t=l[2],l[0]===c.kEndJSMap)break;{t=_,l=O(e,t,r);let h=l[0];t=l[2],l=O(e,t,r);let m=l[0];t=l[2],n.set(h,m),o=o+2}}let a=k(e,t,r);return t=a[2],[n,t-s,t,a[0]]},it=(e,t,r)=>{let s=t,n=Ze(e,t,r),o=n[0],a=Aa[o],_=a.BYTES_PER_ELEMENT;t=n[2],n=Ze(e,t,r);let l=n[0];t=n[2];let u=t;n=tt(e,t,l,r);let h;return t%_===0?h=new a(n[0].buffer,t,l):h=new a(n[0].buffer.slice(t,t+l)),t=n[2],r.AddObjectWithID(h),[h,t-s,t]},Ra=it,Qe=(e,t,r,s)=>{let n=t,o=k(e,t,s),a=o[0];t=o[2];let _=a,l;if(r){let u=k(e,t,s);_=u[0],l=new ArrayBuffer(a,{maxByteLength:_}),t=u[2],ha._cp(e.buffer,t,a,l,0),t=t+a}else l=e.buffer.slice(t,t+a),t=t+a;return s.AddObjectWithID(l),[l,t-n,t]},at=(e,t,r,s,n,o)=>{let a=t,_=0;for(;R;){let l=t,u=q(e,t,o),h=u[0];if(t=u[2],h!==s){t=l,u=O(e,t,o);let m=u[0];t=u[2],u=O(e,t,o);let p=u[0];t=u[2],r[m]=p,++_}else return[_,t-a,t]}},ks=(e,t,r)=>{let s=t,n={};r.AddObjectWithID(n);let o=at(e,t,n,c.kEndJSObject,D,r),a=o[0];return t=o[2],o=k(e,t,r),t=o[2],[n,t-s,t]},ps=(e,t,r,s)=>{let n=t,o=k(e,t,s),a=o[0];t=o[2];let _=[];s.AddObjectWithID(_);for(let u=0;u<a;++u)o=O(e,t,s),_.push(o[0]),t=o[2];let l=r===c.kBeginDenseJSArray?c.kEndDenseJSArray:c.kEndSparseJSArray;return o=at(e,t,_,l,R,s),t=o[2],o=k(e,t,s),t=o[2],o=k(e,t,s),t=o[2],[_,t-n,t]},As=(e,t,r)=>{let s=t,n=q(e,t,r),o=n[0];switch(t=n[2],o){case c.kTheHole:return[X,t-s,t];case c.kUndefined:return[X,t-s,t];case c.kNull:return[ya,t-s,t];case c.kTrue:return[R,t-s,t];case c.kFalse:return[D,t-s,t];case c.kInt32:return n=us(e,t,r),t=n[2],[n[0],t-s,t];case c.kUint32:return n=k(e,t,r),t=n[2],[n[0],t-s,t];case c.kDouble:return n=pe(e,t,r),t=n[2],[n[0],t-s,t];case c.kBigInt:return n=rt(e,t,r),t=n[2],[n[0],t-s,t];case c.kOneByteString:return n=nt(e,t,r),t=n[2],[n[0],t-s,t];case c.kTwoByteString:return n=st(e,t,r),t=n[2],[n[0],t-s,t];case c.kUtf8String:return n=ot(e,t,r),t=n[2],[n[0],t-s,t];case c.kBeginJSObject:return n=ks(e,t,r),t=n[2],[n[0],t-s,t];case c.kBeginDenseJSArray:case c.kBeginSparseJSArray:return n=ps(e,t,o,r),t=n[2],[n[0],t-s,t];case c.kDate:return n=ds(e,t,r),t=n[2],[n[0],t-s,t];case c.kBeginJSMap:return n=hs(e,t,r),t=n[2],[n[0],t-s,t];case c.kBeginJSSet:return n=bs(e,t,r),t=n[2],[n[0],t-s,t];case c.kObjectReference:{n=k(e,t,r);let a=n[0];return t=n[2],[r.GetObjectWithID(a),t-s,t]}case c.kRegExp:return n=ys(e,t,r),t=n[2],[n[0],t-s,t];case c.kSharedArrayBuffer:case c.kArrayBuffer:return n=Qe(e,t,D,r),t=n[2],[n[0],t-s,t];case c.kResizableArrayBuffer:return n=Qe(e,t,R,r),t=n[2],[n[0],t-s,t];case c.kError:return n=gs(e,t,r),t=n[2],[n[0],t-s,t];case c.kArrayBufferView:case c.kHostObject:return n=it(e,t,r),t=n[2],[n[0],t-s,t];case c.kTrueObject:case c.kFalseObject:case c.kNumberObject:case c.kBigIntObject:case c.kStringObject:return n=Ia(e,t,o,r),t=n[2],[n[0],t-s,t];default:return console.log("why unknown",o,t,e),[ma(),t-s,t]}},O=(e,t,r)=>As(e,t,r),Oa=e=>{let t=e.buffer!==void 0?e:new Uint8Array(e),r=wa(),s=0,n=cs(t,s,r);return s=n[2],n=O(t,s,r),n[0]};ms.exports={ERRD:_s,ReadVarintLoopIfLshiftWork:Sa,ReadVarint:k,ReadHeader:cs,ReadTag:q,ReadZigZag:us,ReadDouble:pe,ReadRawBytes:tt,ReadByte:Ba,ReadUint32:Ze,ReadBigInt:rt,BI_MUL:fs,ReadOneByteString:nt,ReadTwoByteString:st,ReadUtf8String:ot,ReadJSDate:ds,ReadString:Y,ReadJSRegExp:ys,ReadJSError:gs,ReadJSSet:bs,ReadJSMap:hs,ReadHostObject:it,ReadJSArrayBufferView:Ra,ReadJSArrayBuffer:Qe,ReadJSObjectProperties:at,ReadObjectInternal:As,ReadObject:O,ReadJSObject:ks,ReadJSArray:ps,decd:Oa}});var Na=y((Tl,Bs)=>{var Ta=dt(),Ua=yt(),ja=Z(),va=se(),Da=Ne(),La=ie(),Ss=$n(),Es=ws();Bs.exports={fixed_cfg:Ta,restrict:Ua,const:ja,misc:va,zero_nid:Da,ctx:La,w:Ss,r:Es,ser:Ss.encd,der:Es.decd}});return Na();})();
29
+ `)[0];return t.includes("get ")?"getter":t.includes("set ")?"setter":"smthd"}else return Je(e)?"cls":w(e)?"afunc":"sfunc"};Sn.exports={get_prop_desc:le,get_arguments_desc:bn,hasno_arguments:Je,get_prot_desc:hn,hasno_prot_desc:We,is_prms:wi,is_sg:kn,is_ag:pn,is_g:Si,_is_acallable:w,is_lmbd_or_mthd:j,is_slmbd_or_smthd:Ei,is_almbd_or_amthd:Bi,is_func:Pe,is_sfunc_or_sgen:An,is_afunc_or_agen:mn,is_sfunc:yn,is_afunc:gn,is_sgen:_e,is_agen:ce,is_gen:z,is_sfunc:yn,is_afunc:gn,is_cls:Oi,is_iter:Ri,is_native_code:Ii,slow_is_lmbd:ue,slow_is_mthd:wn,slow_is_slmbd:Ti,slow_is_smthd:Ui,slow_is_almdb:ji,slow_is_amthd:vi,slow_is_mthd_gen:Di,slow_is_mthd_sgen:Li,slow_is_mthd_agen:Ni,slow_is_getter:Mi,slow_is_setter:Fi,_incld_arrow_lit:V,_incld_function_lit:F,func_like_tname:qi}});var Ve=g((hl,On)=>{var Bn=["g","i","m","y","u","s","l","d","v"],In={g:1,i:2,m:4,y:8,u:16,s:32,l:64,d:128,v:256},Ci=e=>{let t=0;for(let r=0;r<e.length;++r){let s=e[r];In[s]&&(t=t+In[s])}return t},Ji=e=>{let t="";for(let r=0;r<Bn.length;++r){let s=Bn[r];e&1<<r&&(t=t+s)}return t};On.exports={s2n:Ci,n2s:Ji}});var Tn=g((kl,Rn)=>{var ye=2n**64n-1n,fe=e=>{let t=0;for(;e;)e=e>>64n,++t;return t},de=e=>8*fe(e),ze=e=>{let t=0;e>=0n||(t=1,e=-e);let r=de(e);return[t,r,e]},Wi=e=>{let[t,r,s]=ze(e);return t|r<<1},Pi=e=>{let t=e&1,r=e>>1;return{sign:t,data_blen:r}},Vi=function*(e){for(;e;)yield e&ye,e=e>>64n},zi=e=>e>=0n?fe(e):fe(-e),Hi=e=>e>=0n?de(e):de(-e),xi=function*(e){for(e=e>=0?e:-e;e;)yield e&ye,e=e>>64n},Gi=(e,t,r=0,s)=>{let[n,o,a]=ze(e),_=n|o,l=r,u=s(_);for(let p=0;p<u.length;++p)t[r+p]=u[p];r=r+u.length;let h=r,m=new DataView(t.buffer);for(;a;)m.setBigUint64(a&ye,r,_t),r=r+8,a=a>>64n;return{sign:n,data:t,head_offset:l,body_offset:h,curr_offset:r}};Rn.exports={MASK:ye,count_if_pos:fe,data_byte_length_if_pos:de,count:zi,data_byte_length:Hi,_get_head:ze,get_encd_head:Wi,decd_encd_head:Pi,gen_body_if_pos:Vi,gen_body:xi,use_with_get_var_int:Gi}});var $n=g((Sl,Yn)=>{var{_u:x,_n:vn,_t:Dn,_f:xe,is_untf:Ki}=T(),E=M(),A=dn(),{is_prms:Xi,is_g:Yi,is_iter:$i}=En(),Ln=Q(),Zi=te(),Qi=Ve(),Un=Tn(),G=se(),{SerializationTag:f,ErrorTag:S,ArrayBufferViewTag:pl,IsNodeFastBuffer:Al,kNodeFastBufferSym:ml,ArrayBufferViewIndexToCtor:wl,CreatFakeCantBeSered:jn,arrayBufferViewTypeToIndex:ea}=Z(),ta=ie(),Nn=(e,t=15,r)=>{e.push(f.kVersion),e.push(t)},d=(e,t,r)=>{e.push(t)},b=(e,t,r)=>{if(Ln.is_smi_can_be_encded(t)){let s;do s=t&127|128,e.push(Number(s)),t=t>>7;while(t);return e[e.length-1]=e[e.length-1]&127,e}else{t=BigInt(t);let s;do s=t&0x7Fn|0x80n,e.push(Number(s)),t=t>>7n;while(t);return e[e.length-1]=e[e.length-1]&127,e}},Mn=(e,t,r,s=Ln.encd)=>(t=s(t),b(e,t),e),K=(e,t,r,s)=>{s=s??new Float64Array(1),s[0]=t;let n=new Uint8Array(s.buffer);for(let o=0;o<8;++o)e.push(n[o]);return e},Fn=(e,t,r)=>{b(e,t.length);for(let s=0;s<t.length;++s)e.push(t.charCodeAt(s));return e},qn=(e,t,r,s)=>{s=s??new Zi.encd.mach.Mach,b(e,t.length*2);for(let n=0;n<t.length;++n){let o=t.charCodeAt(n),[a,_]=s.input(o);e.push(a),e.push(_)}return e},ge=(e,t,r)=>{for(let s=0;s<t.length;++s)e.push(t[s]);return e},Cn=(e,t,r)=>{let s=f.kUndefined;switch(t){case x:s=f.kUndefined;break;case xe:s=f.kFalse;break;case Dn:s=f.kTrue;break;case vn:s=f.kNull;break}return d(e,s),e},be=(e,t,r)=>(d(e,f.kInt32,r),Mn(e,t,r),e),Ge=(e,t,r)=>(d(e,f.kDouble,r),K(e,t,r),e),v=(e,t,r)=>{if(t|0,G.IsOneByte(t))d(e,f.kOneByteString,r),Fn(e,t,r);else{let s=t.length*2,n=G.BytesNeededForVarint(s);e.length+1+n&1&&d(e,f.kPadding,r),d(e,f.kTwoByteString,r),qn(e,t,r)}return e},Jn=(e,t,r)=>(d(e,f.kDate,r),K(e,t.getTime(),r),e),Wn=(e,t,r)=>{d(e,f.kRegExp,r),v(e,t.source,r);let s=Qi.s2n(t.flags);return b(e,s,r),e},Ke=(e,t,r)=>{let[s,n,o]=Un._get_head(t),a=s|n<<1;b(e,a,r);let _=new BigUint64Array(1),l=new Uint8Array(_.buffer);for(;o;)_[0]=o&Un.MASK,e.push(l[0],l[1],l[2],l[3],l[4],l[5],l[6],l[7]),o=o>>64n;return e},Xe=(e,t,r)=>(d(e,f.kBigInt,r),Ke(e,t,r),e),ra=(e,t,r)=>(e.push(t),e),He=(e,t,r)=>(b(e,t,r),e),Pn=(e,t,r)=>A.is_truo(t)?(d(e,f.kTrueObject,r),e):A.is_flso(t)?(d(e,f.kFalseObject,r),e):A.is_numo(t)?(d(e,f.kNumberObject,r),K(e,Number(t),r),e):A.is_stro(t)?(d(e,f.kStringObject,r),v(e,String(t),r),e):A.is_bio(t)?(d(e,f.kBigIntObject,r),Ke(e,BigInt(t),r),e):x,Vn=(e,t,r)=>{switch(d(e,f.kError,r),t.name){case"EvalError":{b(e,S.kEvalErrorPrototype,r);break}case"RangeError":{b(e,S.kRangeErrorPrototype,r);break}case"ReferenceError":{b(e,S.kReferenceErrorPrototype,r);break}case"SyntaxError":{b(e,S.kSyntaxErrorPrototype,r);break}case"TypeError":{b(e,S.kTypeErrorPrototype,r);break}case"URIError":{b(e,S.kUriErrorPrototype,r);break}default:}let n=String(t.message);b(e,S.kMessage,r),v(e,n,r);let o=t.cause;o&&(b(e,S.kCause,r),B(e,o,r));let a=String(t.stack);return b(e,S.kStack,r),v(e,a,r),b(e,S.kEnd,r),e},B=(e,t,r)=>{if(E.is_num(t)&&G.IsSmi(t))be(e,t,r);else if(t===x)d(e,f.kUndefined,r);else if(t===vn)d(e,f.kNull,r);else if(t===Dn)d(e,f.kTrue,r);else if(t===xe)d(e,f.kFalse,r);else if(E.is_num(t))Ge(e,t,r);else if(E.is_bi(t))Xe(e,t,r);else if(E.is_str(t))v(e,t,r);else{Ye(e,t,r);}return e},zn=(e,t,r)=>{d(e,f.kBeginJSSet,r);let s=0;for(let n of t)B(e,n,r),++s;return d(e,f.kEndJSSet,r),b(e,s,r),e},Hn=(e,t,r)=>{d(e,f.kBeginJSMap,r);let s=t.size*2;for(let[n,o]of t)B(e,n,r),B(e,o,r);return d(e,f.kEndJSMap,r),b(e,s,r),e},xn=(e,t,r)=>{let s=ea(t);if(s>-1){d(e,f.kHostObject,r),He(e,s,r),He(e,t.byteLength,r);let n=new Uint8Array(t.buffer,t.byteOffset,t.byteLength);return ge(e,n,r),e}},Gn=(e,t,r)=>xn(e,t,r),Kn=(e,t,r)=>{let s=xe;A.is_sab(t)?s=!!t.growable:s=t.resizable;let n=s?t.maxByteLength:t.byteLength,o=t.byteLength;return s?(d(e,f.kResizableArrayBuffer,r),b(e,o,r),b(e,n,r),ge(e,new Uint8Array(t),r)):(d(e,f.kArrayBuffer,r),b(e,o,r),ge(e,new Uint8Array(t),r)),e},H=(e,t,r)=>{d(e,f.kBeginJSObject,r);let s=0;for(let n in t)B(e,n,r),B(e,t[n],r),s++;return d(e,f.kEndJSObject,r),b(e,s,r),e},Xn=(e,t,r)=>{let s=t.length,{is_packed_smi:n,is_packed_double:o}=G.GetArrayPackedInfo(t);if(n){d(e,f.kBeginDenseJSArray,r),b(e,s,r);for(let l=0;l<t.length;++l)be(e,t[l],r)}else if(o){if(d(e,f.kBeginDenseJSArray,r),b(e,s,r),s!==0)for(let l=0;l<t.length;++l)d(e,f.kDouble,r),K(e,t[l],r)}else{d(e,f.kBeginDenseJSArray,r),b(e,s,r);for(let l=0;l<t.length;++l)B(e,t[l],r)}let a=Object.keys(t),_=0;for(let l=t.length;l<a.length;++l){let u=a[l];B(e,u,r),B(e,t[u],r),_++}return d(e,f.kEndDenseJSArray,r),b(e,_,r),b(e,s,r),e},Ye=(e,t,r)=>{if(Ki(t))Cn(e,t,r);else if(G.IsSmi(t))be(e,t,r);else if(E.is_num(t))Ge(e,t,r);else if(E.is_str(t))v(e,t,r);else if(E.is_bi(t))Xe(e,t,r);else if(E.is_sym(t)){let s=jn("Symbol",t.description);H(e,s,r)}else{let[s,n]=r.idmap.FindOrInsert(t);if(s)d(e,f.kObjectReference,r),b(e,n,r);else if(A.is_ary(t))Xn(e,t,r);else if(A.is_st(t))zn(e,t,r);else if(A.is_mp(t))Hn(e,t,r);else if(A.is_dt(t))Jn(e,t,r);else if(A.is_rgx(t))Wn(e,t,r);else if(A.is_ab(t)||A.is_sab(t))Kn(e,t,r);else if(t.buffer&&A.is_ab(t.buffer))Gn(e,t,r)!==x||H(e,t,r);else if(E.istof(t,Error))Vn(e,t,r);else if(Pn(e,t,r)===x)if(E.is_func_like(t)||Xi(t)||Yi(t)||$i(t)){let a=jn(n,String(t));H(e,a,r)}else H(e,t,r)}return e},na=(e,t=15)=>{let r=[],s=ta.creat_wctx();return Nn(r,t),Ye(r,e,s),new Uint8Array(r).buffer};Yn.exports={WriteHeader:Nn,WriteTag:d,WriteVarint:b,WriteZigZag:Mn,WriteDouble:K,WriteOneByteString:Fn,WriteTwoByteString:qn,WriteRawBytes:ge,WriteOddball:Cn,WriteSmi:be,WriteHeapNumber:Ge,WriteString:v,WriteJSDate:Jn,WriteJSRegExp:Wn,WriteBigIntContents:Ke,WriteBigInt:Xe,WriteByte:ra,WriteUint32:He,WriteJSPrimitiveWrapper:Pn,WriteJSError:Vn,WriteObject:B,WriteJSSet:zn,WriteJSMap:Hn,WriteHostObject:xn,WriteJSArrayBufferView:Gn,WriteJSArrayBuffer:Kn,WriteJSObject:H,WriteJSArray:Xn,WriteJSReceiver:Ye,encd:na}});var ts=g((El,es)=>{var{istof:sa}=M(),$e=Error,Zn=e=>new $e(e),Qn=e=>{throw Zn(e)},oa=e=>sa(e,$e),ia=e=>Qn("unreachable");es.exports={_ERR:$e,creat_err:Zn,thrw_str:Qn,is_err:oa,unreachable:ia}});var ns=g((Bl,he)=>{var aa=(e,t=e.constructor)=>{for(var r=e.byteOffset,s=r+e.byteLength,n=new t(e.buffer),o=n.subarray(r/t.BYTES_PER_ELEMENT,s/t.BYTES_PER_ELEMENT),a="[",_=0;_<o.length-1;++_)typeof o[_]=="bigint"?a+=o[_]+"n,":a+=o[_]+",";return o.length===0||(typeof o[o.length-1]=="bigint"?a+=o[o.length-1]+"n":a+=o[o.length-1]),a+="]",a},rs=e=>{var t=new Uint8Array(e),r=JSON.stringify(Array.from(t)),s;return e.resizable?s=`new ArrayBuffer(${e.byteLength},{maxByteLength:${e.maxByteLength}})`:s=`new ArrayBuffer(${e.byteLength})`,`(()=>{ var ab = ${s};(new Uint8Array(ab)).set(${r});return(ab);})()`};he.exports=(e,t="",r)=>{var s=t;return r!==void 0&&(s+=`var ${t} = `),s+=rs(e),s};he.exports.ab=rs;Object.defineProperty(he.exports,"_creat_desc",{value:aa,enumerable:!1})});var ls=g((Il,as)=>{var la=(e,t)=>{if(typeof e=="number")return t!==void 0?new ArrayBuffer(e,{maxByteLength:t}):new ArrayBuffer(e);if(e instanceof ArrayBuffer){var r;e.resizable?r=new ArrayBuffer(e.byteLength,{maxByteLength:e.maxByteLength}):r=new ArrayBuffer(e.byteLength);var s=new Uint8Array(e);return new Uint8Array(r).set(s),r}else if(e.buffer&&e.buffer instanceof ArrayBuffer){var n=e.byteOffset,o=n+e.byteLength;if(t!==void 0)return e.buffer.slice(n,o);var r=new ArrayBuffer(o-n,{maxByteLength:t}),s=new Uint8Array(e.buffer).subarray(n,o);return new Uint8Array(r).set(s),r}else{var a=e.length,r;e.resizable?r=new ArrayBuffer(a,{maxByteLength:e.maxByteLength}):r=new ArrayBuffer(a);for(var _=new Uint8Array(r),l=0;l<a;++l)_[l]=e[l];return r}},_a=ns().ab,ke=(e,t,r,s,n)=>{let o=new Uint8Array(e,t,r);return new Uint8Array(s).set(o,n),s},ss=(e,t,r,s,n)=>(r=r??0,s=s??e.byteLength,n=n??0,ke(e,r,s,t,n)),ca=(e,t,r,s=0)=>ss(e,t,0,r,s),ua=(e,t,r=0)=>ke(e,0,e.byteLength,t,r),fa=(e,t)=>ke(e,0,e.byteLength,t,0),os=(e,...t)=>{let r=t.length,s=new Uint8Array(e.length+r);for(let n=0;n<r;++n)s[e.length+n]=t[n];return s.set(e),e},is=(e,...t)=>{let r=t.length,s=new Uint8Array(e.length+r);for(let n=0;n<r;++n)s[n]=t[n];return s.set(e,r),e},da=(e,...t)=>os(new Uint8Array(e),...t).buffer,ya=(e,...t)=>is(new Uint8Array(e),...t).buffer;as.exports={creat:la,to_str:_a,_cp:ke,cp:ss,cp_from_src_start:ca,cp_all_if_dst_is_enough:ua,cp_all_if_same_blen:fa,dupe_u8a_and_push:os,dupe_u8a_and_unshift:is,dupe_and_push:da,dupe_and_unshift:ya}});var ws=g((Rl,ms)=>{var{_u:X,_n:ga,_t:O,_f:D}=T(),{thrw_str:ba}=ts(),ha=ls(),ka=Q(),Ol=te(),pa=Ve(),et=se(),{SerializationTag:c,ErrorTag:I,ArrayBufferViewIndexToCtor:Aa,CreatUnknown:ma}=Z(),{creat_rctx:wa}=ie(),_s={must_be_str:"must_be_str"},Sa=(e,t,r)=>{let s=t,n=0,o=0,a=D;do{let _=e[t];if(a=_&128,o<32)n|=(_&127)<<o,o=o+7;else break;++t}while(a);return[n,t-s,t]},Ea=(e,t,r)=>{let s=t,n=0n,o=0n,a=D;do{let _=BigInt(e[t]);if(a=_&0x80n,o<32n)n|=(_&0x7Fn)<<o,o=o+7n;else break;++t}while(a);return[Number(n),t-s,t]},k=Ea,cs=(e,t,r)=>{let s=t;++t;let n=e[t];return++t,[n,t-s,t]},q=(e,t,r)=>{let s=t,n;do n=e[t],++t;while(n===c.kPadding);return[n,t-s,t]},us=(e,t,r,s=ka.decd)=>{let n=t,o=k(e,t,r),a=o[0];return t=o[2],[s(a),t-n,t]},pe=(e,t,r)=>{let n=new DataView(e.buffer,e.byteOffset,e.byteLength).getFloat64(t,O);return t=t+8,[n,8,t]},tt=(e,t,r,s)=>{let n=t,o=new Uint8Array(e.buffer,e.byteOffset+t,r);return t=t+r,[o,r,t]},Ba=(e,t,r)=>(++t,[e[i],1,t]),Ze=(e,t,r)=>k(e,t,r),fs=2n**64n,rt=(e,t,r)=>{let s=t,n=k(e,t,r),o=n[0],a=o&1,_=o>>1;t=n[2],n=tt(e,t,_,r);let l=n[0],u=new DataView(l.buffer,l.byteOffset,l.byteLength),h=0n,m=1n,p=_/8;for(let Ae=0;Ae<p;++Ae){let Is=u.getBigUint64(8*Ae,O);h=h+Is*m,m=m*fs}return a===1&&(h=-h),t=n[2],[h,t-s,t]},nt=(e,t,r)=>{let s=t,n=k(e,t,r),o=n[0];t=n[2];let a=et.Latin1U8aToStr(e,t,o);return t+=o,[a,t-s,t]},st=(e,t,r)=>{let s=t,n=k(e,t,r),o=n[0];t=n[2];let a=et.JstrU8aToStr(e,t,o);return t+=o,[a,t-s,t]},ot=(e,t,r)=>{let s=t,n=k(e,t,r),o=n[0];t=n[2];let a=et.Utf8U8aToStr(e,t,o);return t+=o,[a,t-s,t]},ds=(e,t,r)=>{let s=t,n=pe(e,t,r),o=n[0],a=new Date(o);return t=n[2],r.AddObjectWithID(a),[a,t-s,t]},Ia=(e,t,r,s)=>{let n=t,o;switch(r){case c.kTrueObject:{o=new Boolean(O);break}case c.kFalseObject:{o=new Boolean(D);break}case c.kNumberObject:{let a=pe(e,t,s),_=a[0];t=a[2],o=new Number(_);break}case c.kStringObject:{let a=Y(e,t,s),_=a[0];t=a[2],o=new String(_);break}case c.kBigIntObject:{let a=rt(e,t,s),_=a[0];t=a[2],o=CreatFakeCantBeSered("BigInt",_);break}default:}return s.AddObjectWithID(o),[o,t-n,t]},ys=(e,t,r)=>{let s=t,n=X,o=X,a=X,_=D,l=Error;for(;!_;){let h=k(e,t,r),m=h[0];switch(t=h[2],m){case I.kEvalErrorPrototype:{l=EvalError;break}case I.kRangeErrorPrototype:{l=RangeError;break}case I.kReferenceErrorPrototype:{l=ReferenceError;break}case I.kSyntaxErrorPrototype:{l=SyntaxError;break}case I.kTypeErrorPrototype:{l=TypeError;break}case I.kUriErrorPrototype:{l=URIError;break}case I.kMessage:{let p=Y(e,t,r);n=p[0],t=p[2];break}case I.kCause:{let p=R(e,t,r);a=p[0],t=p[2];break}case I.kStack:{let p=Y(e,t,r);o=p[0],t=p[2];break}case I.kEnd:{_=O;break}default:}}let u;return a?u=new l(n,{cause:a}):u=new l(n),u.stack=o,r.AddObjectWithID(u),[u,t-s,t]},Y=(e,t,r)=>{let s=t,n=q(e,t,r),o=n[0];switch(t=n[2],o){case c.kOneByteString:return n=nt(e,t,r),t=n[2],[n[0],t-s,t];case c.kTwoByteString:return n=st(e,t,r),t=n[2],[n[0],t-s,t];case c.kUtf8String:return n=ot(e,t,r),t=n[2],[n[0],t-s,t];default:ba(_s.must_be_str)}},gs=(e,t,r)=>{let s=t,n=Y(e,t,r),o=n[0];t=n[2],n=k(e,t,r);let a=n[0];a=pa.n2s(a),t=n[2];let _=new RegExp(o,a);return r.AddObjectWithID(_),[_,t-s,t]},bs=(e,t,r)=>{let s=t,n=new Set;r.AddObjectWithID(n);let o=0;for(;O;){let _=t,l=q(e,t,r),u=l[0];if(t=l[2],u===c.kEndJSSet)break;t=_,l=R(e,t,r),n.add(l[0]),t=l[2],o++}let a=k(e,t,r);return t=a[2],[n,t-s,t,a[0]]},hs=(e,t,r)=>{let s=t,n=new Map;r.AddObjectWithID(n);let o=0;for(;O;){let _=t,l=q(e,t,r);if(t=l[2],l[0]===c.kEndJSMap)break;{t=_,l=R(e,t,r);let h=l[0];t=l[2],l=R(e,t,r);let m=l[0];t=l[2],n.set(h,m),o=o+2}}let a=k(e,t,r);return t=a[2],[n,t-s,t,a[0]]},it=(e,t,r)=>{let s=t,n=Ze(e,t,r),o=n[0],a=Aa[o],_=a.BYTES_PER_ELEMENT;t=n[2],n=Ze(e,t,r);let l=n[0];t=n[2];let u=t;n=tt(e,t,l,r);let h;return(e.byteOffset+t)%_===0?h=new a(n[0].buffer,e.byteOffset+t,l/_):h=new a(n[0].buffer.slice(t,t+l)),t=n[2],r.AddObjectWithID(h),[h,t-s,t]},Oa=it,Qe=(e,t,r,s)=>{let n=t,o=k(e,t,s),a=o[0];t=o[2];let _=a,l;if(r){let u=k(e,t,s);_=u[0],l=new ArrayBuffer(a,{maxByteLength:_}),t=u[2],ha._cp(e.buffer,e.byteOffset+t,a,l,0),t=t+a}else l=e.buffer.slice(e.byteOffset+t,e.byteOffset+t+a),t=t+a;return s.AddObjectWithID(l),[l,t-n,t]},at=(e,t,r,s,n,o)=>{let a=t,_=0;for(;O;){let l=t,u=q(e,t,o),h=u[0];if(t=u[2],h!==s){t=l,u=R(e,t,o);let m=u[0];t=u[2],u=R(e,t,o);let p=u[0];t=u[2],r[m]=p,++_}else return[_,t-a,t]}},ks=(e,t,r)=>{let s=t,n={};r.AddObjectWithID(n);let o=at(e,t,n,c.kEndJSObject,D,r),a=o[0];return t=o[2],o=k(e,t,r),t=o[2],[n,t-s,t]},ps=(e,t,r,s)=>{let n=t,o=k(e,t,s),a=o[0];t=o[2];let _=[];s.AddObjectWithID(_);for(let u=0;u<a;++u)o=R(e,t,s),_.push(o[0]),t=o[2];let l=r===c.kBeginDenseJSArray?c.kEndDenseJSArray:c.kEndSparseJSArray;return o=at(e,t,_,l,O,s),t=o[2],o=k(e,t,s),t=o[2],o=k(e,t,s),t=o[2],[_,t-n,t]},As=(e,t,r)=>{let s=t,n=q(e,t,r),o=n[0];switch(t=n[2],o){case c.kTheHole:return[X,t-s,t];case c.kUndefined:return[X,t-s,t];case c.kNull:return[ga,t-s,t];case c.kTrue:return[O,t-s,t];case c.kFalse:return[D,t-s,t];case c.kInt32:return n=us(e,t,r),t=n[2],[n[0],t-s,t];case c.kUint32:return n=k(e,t,r),t=n[2],[n[0],t-s,t];case c.kDouble:return n=pe(e,t,r),t=n[2],[n[0],t-s,t];case c.kBigInt:return n=rt(e,t,r),t=n[2],[n[0],t-s,t];case c.kOneByteString:return n=nt(e,t,r),t=n[2],[n[0],t-s,t];case c.kTwoByteString:return n=st(e,t,r),t=n[2],[n[0],t-s,t];case c.kUtf8String:return n=ot(e,t,r),t=n[2],[n[0],t-s,t];case c.kBeginJSObject:return n=ks(e,t,r),t=n[2],[n[0],t-s,t];case c.kBeginDenseJSArray:case c.kBeginSparseJSArray:return n=ps(e,t,o,r),t=n[2],[n[0],t-s,t];case c.kDate:return n=ds(e,t,r),t=n[2],[n[0],t-s,t];case c.kBeginJSMap:return n=hs(e,t,r),t=n[2],[n[0],t-s,t];case c.kBeginJSSet:return n=bs(e,t,r),t=n[2],[n[0],t-s,t];case c.kObjectReference:{n=k(e,t,r);let a=n[0];return t=n[2],[r.GetObjectWithID(a),t-s,t]}case c.kRegExp:return n=gs(e,t,r),t=n[2],[n[0],t-s,t];case c.kSharedArrayBuffer:case c.kArrayBuffer:return n=Qe(e,t,D,r),t=n[2],[n[0],t-s,t];case c.kResizableArrayBuffer:return n=Qe(e,t,O,r),t=n[2],[n[0],t-s,t];case c.kError:return n=ys(e,t,r),t=n[2],[n[0],t-s,t];case c.kArrayBufferView:case c.kHostObject:return n=it(e,t,r),t=n[2],[n[0],t-s,t];case c.kTrueObject:case c.kFalseObject:case c.kNumberObject:case c.kBigIntObject:case c.kStringObject:return n=Ia(e,t,o,r),t=n[2],[n[0],t-s,t];default:return console.log("why unknown",o,t,e),[ma(),t-s,t]}},R=(e,t,r)=>As(e,t,r),Ra=e=>{let t=e.buffer!==void 0?e:new Uint8Array(e),r=wa(),s=0,n=cs(t,s,r);return s=n[2],n=R(t,s,r),n[0]};ms.exports={ERRD:_s,ReadVarintLoopIfLshiftWork:Sa,ReadVarint:k,ReadHeader:cs,ReadTag:q,ReadZigZag:us,ReadDouble:pe,ReadRawBytes:tt,ReadByte:Ba,ReadUint32:Ze,ReadBigInt:rt,BI_MUL:fs,ReadOneByteString:nt,ReadTwoByteString:st,ReadUtf8String:ot,ReadJSDate:ds,ReadString:Y,ReadJSRegExp:gs,ReadJSError:ys,ReadJSSet:bs,ReadJSMap:hs,ReadHostObject:it,ReadJSArrayBufferView:Oa,ReadJSArrayBuffer:Qe,ReadJSObjectProperties:at,ReadObjectInternal:As,ReadObject:R,ReadJSObject:ks,ReadJSArray:ps,decd:Ra}});var Na=g((Tl,Bs)=>{var Ta=dt(),Ua=gt(),ja=Z(),va=se(),Da=Ne(),La=ie(),Ss=$n(),Es=ws();Bs.exports={fixed_cfg:Ta,restrict:Ua,const:ja,misc:va,zero_nid:Da,ctx:La,w:Ss,r:Es,ser:Ss.encd,der:Es.decd}});return Na();})();
30
30
  //!id_map_.Find
@@ -44,5 +44,5 @@ console.log("OK")
44
44
 
45
45
  var ff0 = ()=>bufs.forEach(buf=>f0(buf));
46
46
  var ff1 = ()=>abs.forEach(ab=>f1(ab));
47
- console.log(sync(1000000,ff0));
48
- console.log(sync(1000000,ff1));
47
+ console.log(sync(100000,ff0));
48
+ console.log(sync(100000,ff1));
package/package.json CHANGED
@@ -9,7 +9,7 @@
9
9
  "nv-number-zigzag": "^1.0.1",
10
10
  "nv-regexp-flags": "^1.0.1"
11
11
  },
12
- "version": "0.0.12",
12
+ "version": "1.0.0",
13
13
  "name": "nv-buf-serde",
14
14
  "description": "nv-buf-serde ======================= - rewrite v8/src/objects/value-serializer.cc to JS - to let you use nodejs'v8.serialize AND nodejs'v8.deserialize in browser, - similiar to structuredClone AND MessageChannel-transfer, but can be used to send/recv data to server-side",
15
15
  "main": "index.js",
package/r.js CHANGED
@@ -9,96 +9,96 @@ const {SerializationTag,ErrorTag,ArrayBufferViewIndexToCtor,CreatUnknown} = requ
9
9
  const { creat_rctx } = require("./ctx");
10
10
 
11
11
  const ERRD = {
12
- must_be_str:"must_be_str"
12
+ must_be_str:"must_be_str"
13
13
  }
14
14
 
15
15
 
16
16
  const ReadVarintLoopIfLshiftWork = (u8a,si,ctx) => {
17
- let old_si = si;
18
- let v = 0;
19
- let shift = 0;
20
- let has_another_byte = _f;
21
- do {
22
- let byte = u8a[si];
23
- has_another_byte = byte & 0x80;
24
- if(shift < 32) {
25
- v |= (byte & 0x7F) << shift;
26
- shift = shift +7;
27
- } else {
28
- break;
29
- }
30
- ++si;
31
- } while(has_another_byte);
32
- return([v,si-old_si,si])
17
+ let old_si = si;
18
+ let v = 0;
19
+ let shift = 0;
20
+ let has_another_byte = _f;
21
+ do {
22
+ let byte = u8a[si];
23
+ has_another_byte = byte & 0x80;
24
+ if(shift < 32) {
25
+ v |= (byte & 0x7F) << shift;
26
+ shift = shift +7;
27
+ } else {
28
+ break;
29
+ }
30
+ ++si;
31
+ } while(has_another_byte);
32
+ return([v,si-old_si,si])
33
33
  }
34
34
 
35
35
  const ReadVarintLoop = (u8a,si,ctx) => {
36
- let old_si = si;
37
- let v = 0n;
38
- let shift = 0n;
39
- let has_another_byte = _f;
40
- do {
41
- let byte = BigInt(u8a[si]);
42
- has_another_byte = byte & 0x80n;
43
- if(shift < 32n) {
44
- v |= (byte & 0x7Fn) << shift;
45
- shift = shift +7n;
46
- } else {
47
- break;
48
- }
49
- ++si;
50
- } while(has_another_byte);
51
- return([Number(v),si-old_si,si])
36
+ let old_si = si;
37
+ let v = 0n;
38
+ let shift = 0n;
39
+ let has_another_byte = _f;
40
+ do {
41
+ let byte = BigInt(u8a[si]);
42
+ has_another_byte = byte & 0x80n;
43
+ if(shift < 32n) {
44
+ v |= (byte & 0x7Fn) << shift;
45
+ shift = shift +7n;
46
+ } else {
47
+ break;
48
+ }
49
+ ++si;
50
+ } while(has_another_byte);
51
+ return([Number(v),si-old_si,si])
52
52
  }
53
53
 
54
54
  const ReadVarint = ReadVarintLoop; // in js-layer no need unroll
55
55
 
56
56
  const ReadHeader = (u8a,si,ctx) => {
57
- let old_si = si;
58
- ++si; // tag
59
- let kLatestVersion = u8a[si];
60
- ++si;
61
- return([kLatestVersion,si-old_si,si])
57
+ let old_si = si;
58
+ ++si; // tag
59
+ let kLatestVersion = u8a[si];
60
+ ++si;
61
+ return([kLatestVersion,si-old_si,si])
62
62
  }
63
63
 
64
64
  const ReadTag = (u8a,si,ctx) => {
65
- let old_si = si;
66
- let tag;
67
- do {
68
- tag = u8a[si];
69
- ++si;
70
- } while(tag === SerializationTag.kPadding);
71
- return([tag,si-old_si,si])
65
+ let old_si = si;
66
+ let tag;
67
+ do {
68
+ tag = u8a[si];
69
+ ++si;
70
+ } while(tag === SerializationTag.kPadding);
71
+ return([tag,si-old_si,si])
72
72
  }
73
73
 
74
74
  const ReadZigZag = (u8a,si,ctx,decode=_zigzag.decd) => {
75
- let old_si = si;
76
- let a3 = ReadVarint(u8a,si,ctx);
77
- let unsigned = a3[0];
78
- si = a3[2];
79
- let v = decode(unsigned);
80
- return([v,si-old_si,si])
75
+ let old_si = si;
76
+ let a3 = ReadVarint(u8a,si,ctx);
77
+ let unsigned = a3[0];
78
+ si = a3[2];
79
+ let v = decode(unsigned);
80
+ return([v,si-old_si,si])
81
81
  }
82
82
 
83
83
 
84
84
  const ReadDouble = (u8a,si,ctx) => {
85
- let dv = new DataView(u8a.buffer,u8a.byteOffset,u8a.byteLength);
86
- let v = dv.getFloat64(si,_t);
87
- si = si+8;
88
- return([v,8,si])
85
+ let dv = new DataView(u8a.buffer,u8a.byteOffset,u8a.byteLength);
86
+ let v = dv.getFloat64(si,_t);
87
+ si = si+8;
88
+ return([v,8,si])
89
89
  }
90
90
 
91
91
  const ReadRawBytes = (u8a,si,sz,ctx) => {
92
- let old_si = si;
93
- let nu8a = new Uint8Array(u8a.buffer, u8a.byteOffset+si,sz);
94
- si = si + sz;
95
- return([nu8a,sz,si])
92
+ let old_si = si;
93
+ let nu8a = new Uint8Array(u8a.buffer, u8a.byteOffset+si,sz);
94
+ si = si + sz;
95
+ return([nu8a,sz,si])
96
96
  }
97
97
 
98
98
 
99
99
  const ReadByte = (u8a,si,ctx) => {
100
- ++si;
101
- return([u8a[i],1,si])
100
+ ++si;
101
+ return([u8a[i],1,si])
102
102
  }
103
103
 
104
104
  const ReadUint32 = (u8a,si,ctx) => ReadVarint(u8a,si,ctx);
@@ -131,473 +131,467 @@ const ReadBigInt = (u8a,si,ctx) => {
131
131
 
132
132
 
133
133
  const ReadOneByteString = (u8a,si,ctx) => {
134
- let old_si = si;
135
- let a3 = ReadVarint(u8a,si,ctx);
136
- let blen = a3[0];
137
- si = a3[2];
138
- let s = _misc.Latin1U8aToStr(u8a,si,blen);
139
- si += blen;
140
- return([s,si-old_si,si])
134
+ let old_si = si;
135
+ let a3 = ReadVarint(u8a,si,ctx);
136
+ let blen = a3[0];
137
+ si = a3[2];
138
+ let s = _misc.Latin1U8aToStr(u8a,si,blen);
139
+ si += blen;
140
+ return([s,si-old_si,si])
141
141
  }
142
142
 
143
143
  const ReadTwoByteString = (u8a,si,ctx) => {
144
- let old_si = si;
145
- let a3 = ReadVarint(u8a,si,ctx);
146
- let blen = a3[0];
147
- si = a3[2];
148
- let s = _misc.JstrU8aToStr(u8a,si,blen);
149
- si += blen;
150
- return([s,si-old_si,si])
144
+ let old_si = si;
145
+ let a3 = ReadVarint(u8a,si,ctx);
146
+ let blen = a3[0];
147
+ si = a3[2];
148
+ let s = _misc.JstrU8aToStr(u8a,si,blen);
149
+ si += blen;
150
+ return([s,si-old_si,si])
151
151
  }
152
152
 
153
153
  const ReadUtf8String = (u8a,si,ctx) => {
154
- let old_si = si;
155
- let a3 = ReadVarint(u8a,si,ctx);
156
- let blen = a3[0];
157
- si = a3[2];
158
- let s = _misc.Utf8U8aToStr(u8a,si,blen);
159
- si += blen;
160
- return([s,si-old_si,si])
154
+ let old_si = si;
155
+ let a3 = ReadVarint(u8a,si,ctx);
156
+ let blen = a3[0];
157
+ si = a3[2];
158
+ let s = _misc.Utf8U8aToStr(u8a,si,blen);
159
+ si += blen;
160
+ return([s,si-old_si,si])
161
161
  }
162
162
 
163
163
 
164
164
 
165
165
  const ReadJSDate = (u8a,si,ctx) => {
166
- let old_si = si;
167
- let a3 = ReadDouble(u8a,si,ctx);
168
- let v = a3[0];
169
- let dt = new Date(v);
170
- si = a3[2];
171
- ctx.AddObjectWithID(dt);
172
- return([dt,si-old_si,si])
166
+ let old_si = si;
167
+ let a3 = ReadDouble(u8a,si,ctx);
168
+ let v = a3[0];
169
+ let dt = new Date(v);
170
+ si = a3[2];
171
+ ctx.AddObjectWithID(dt);
172
+ return([dt,si-old_si,si])
173
173
  }
174
174
 
175
175
 
176
176
  const ReadJSPrimitiveWrapper = (u8a,si,tag,ctx) => {
177
- let old_si = si;
178
- let v;
179
- switch (tag) {
180
- case SerializationTag.kTrueObject: {v = new Boolean(_t);break;}
181
- case SerializationTag.kFalseObject: {v = new Boolean(_f);break;}
182
- case SerializationTag.kNumberObject: {
183
- let a3 = ReadDouble(u8a,si,ctx);
184
- let num = a3[0];
185
- si = a3[2];
186
- v = new Number(num);
187
- break;
188
- }
189
- case SerializationTag.kStringObject: {
190
- let a3 = ReadString(u8a,si,ctx);
191
- let s = a3[0];
192
- si = a3[2];
193
- v = new String(s);
194
- break;
195
- }
196
- case SerializationTag.kBigIntObject: {
197
- let a3 = ReadBigInt(u8a,si,ctx);
198
- let bi = a3[0];
199
- si = a3[2];
200
- // this is impossible in js-layer
201
- //v = new BigInt(bi);
202
- v = CreatFakeCantBeSered("BigInt",bi);
203
- break;
204
- }
205
- default: {}
206
- }
207
- ctx.AddObjectWithID(v);
208
- return([v,si-old_si,si])
177
+ let old_si = si;
178
+ let v;
179
+ switch (tag) {
180
+ case SerializationTag.kTrueObject: {v = new Boolean(_t);break;}
181
+ case SerializationTag.kFalseObject: {v = new Boolean(_f);break;}
182
+ case SerializationTag.kNumberObject: {
183
+ let a3 = ReadDouble(u8a,si,ctx);
184
+ let num = a3[0];
185
+ si = a3[2];
186
+ v = new Number(num);
187
+ break;
188
+ }
189
+ case SerializationTag.kStringObject: {
190
+ let a3 = ReadString(u8a,si,ctx);
191
+ let s = a3[0];
192
+ si = a3[2];
193
+ v = new String(s);
194
+ break;
195
+ }
196
+ case SerializationTag.kBigIntObject: {
197
+ let a3 = ReadBigInt(u8a,si,ctx);
198
+ let bi = a3[0];
199
+ si = a3[2];
200
+ // this is impossible in js-layer
201
+ //v = new BigInt(bi);
202
+ v = CreatFakeCantBeSered("BigInt",bi);
203
+ break;
204
+ }
205
+ default: {}
206
+ }
207
+ ctx.AddObjectWithID(v);
208
+ return([v,si-old_si,si])
209
209
  }
210
210
 
211
211
 
212
212
  const ReadJSError = (u8a,si,ctx) => {
213
- let old_si = si;
214
- let message = _u;
215
- let stack = _u;
216
- let cause = _u;
217
- let done = _f;
218
- let ctor = Error;
219
- ////
220
- while (!done) {
221
- let a3 = ReadVarint(u8a,si,ctx);
222
- let tag = a3[0];
223
- si = a3[2];
224
- switch (tag) {
225
- case ErrorTag.kEvalErrorPrototype: {ctor=EvalError; break;}
226
- case ErrorTag.kRangeErrorPrototype: {ctor=RangeError; break;}
227
- case ErrorTag.kReferenceErrorPrototype: {ctor=ReferenceError; break;}
228
- case ErrorTag.kSyntaxErrorPrototype: {ctor=SyntaxError; break;}
229
- case ErrorTag.kTypeErrorPrototype: {ctor=TypeError; break;}
230
- case ErrorTag.kUriErrorPrototype: {ctor=URIError; break;}
231
- case ErrorTag.kMessage: {
232
- let a3 = ReadString(u8a,si,ctx);
233
- message = a3[0];
234
- si = a3[2];
235
- break;
236
- }
237
- case ErrorTag.kCause: {
238
- let a3 = ReadObject(u8a,si,ctx);
239
- cause = a3[0];
240
- si = a3[2];
241
- break;
242
- }
243
- case ErrorTag.kStack: {
244
- let a3 = ReadString(u8a,si,ctx);
245
- stack = a3[0];
246
- si = a3[2];
247
- break;
248
- }
249
- case ErrorTag.kEnd: {
250
- done = _t;
251
- break;
252
- }
253
- default:{}
254
- }
255
- }
256
-
257
- let err;
258
- if(cause) {
259
- err = new ctor(message,{cause})
260
- } else {
261
- err = new ctor(message)
262
- }
263
- err.stack = stack;
264
- ctx.AddObjectWithID(err);
265
- return([err,si-old_si,si])
213
+ let old_si = si;
214
+ let message = _u;
215
+ let stack = _u;
216
+ let cause = _u;
217
+ let done = _f;
218
+ let ctor = Error;
219
+ ////
220
+ while (!done) {
221
+ let a3 = ReadVarint(u8a,si,ctx);
222
+ let tag = a3[0];
223
+ si = a3[2];
224
+ switch (tag) {
225
+ case ErrorTag.kEvalErrorPrototype: {ctor=EvalError; break;}
226
+ case ErrorTag.kRangeErrorPrototype: {ctor=RangeError; break;}
227
+ case ErrorTag.kReferenceErrorPrototype: {ctor=ReferenceError; break;}
228
+ case ErrorTag.kSyntaxErrorPrototype: {ctor=SyntaxError; break;}
229
+ case ErrorTag.kTypeErrorPrototype: {ctor=TypeError; break;}
230
+ case ErrorTag.kUriErrorPrototype: {ctor=URIError; break;}
231
+ case ErrorTag.kMessage: {
232
+ let a3 = ReadString(u8a,si,ctx);
233
+ message = a3[0];
234
+ si = a3[2];
235
+ break;
236
+ }
237
+ case ErrorTag.kCause: {
238
+ let a3 = ReadObject(u8a,si,ctx);
239
+ cause = a3[0];
240
+ si = a3[2];
241
+ break;
242
+ }
243
+ case ErrorTag.kStack: {
244
+ let a3 = ReadString(u8a,si,ctx);
245
+ stack = a3[0];
246
+ si = a3[2];
247
+ break;
248
+ }
249
+ case ErrorTag.kEnd: {
250
+ done = _t;
251
+ break;
252
+ }
253
+ default:{}
254
+ }
255
+ }
256
+
257
+ let err;
258
+ if(cause) {
259
+ err = new ctor(message,{cause})
260
+ } else {
261
+ err = new ctor(message)
262
+ }
263
+ err.stack = stack;
264
+ ctx.AddObjectWithID(err);
265
+ return([err,si-old_si,si])
266
266
  }
267
267
 
268
268
  const ReadString = (u8a,si,ctx) => {
269
- let old_si = si;
270
- let a3 = ReadTag(u8a,si,ctx);
271
- let tag = a3[0];
272
- si = a3[2];
273
- switch(tag) {
274
- case SerializationTag.kOneByteString: {
275
- a3 = ReadOneByteString(u8a,si,ctx);
276
- si = a3[2];
277
- return([a3[0],si-old_si,si]);
278
- }
279
- case SerializationTag.kTwoByteString: {
280
- a3 = ReadTwoByteString(u8a,si,ctx);
281
- si = a3[2];
282
- return([a3[0],si-old_si,si]);
283
- }
284
- case SerializationTag.kUtf8String: {
285
- a3 = ReadUtf8String(u8a,si,ctx);
286
- si = a3[2];
287
- return([a3[0],si-old_si,si]);
288
- }
289
- default: {
290
- thrw_str(ERRD.must_be_str)
291
- }
292
- }
269
+ let old_si = si;
270
+ let a3 = ReadTag(u8a,si,ctx);
271
+ let tag = a3[0];
272
+ si = a3[2];
273
+ switch(tag) {
274
+ case SerializationTag.kOneByteString: {
275
+ a3 = ReadOneByteString(u8a,si,ctx);
276
+ si = a3[2];
277
+ return([a3[0],si-old_si,si]);
278
+ }
279
+ case SerializationTag.kTwoByteString: {
280
+ a3 = ReadTwoByteString(u8a,si,ctx);
281
+ si = a3[2];
282
+ return([a3[0],si-old_si,si]);
283
+ }
284
+ case SerializationTag.kUtf8String: {
285
+ a3 = ReadUtf8String(u8a,si,ctx);
286
+ si = a3[2];
287
+ return([a3[0],si-old_si,si]);
288
+ }
289
+ default: {
290
+ thrw_str(ERRD.must_be_str)
291
+ }
292
+ }
293
293
  }
294
294
 
295
295
 
296
296
  const ReadJSRegExp = (u8a,si,ctx) => {
297
- let old_si = si;
298
- let a3 = ReadString(u8a,si,ctx);
299
- let ptrn = a3[0];
300
- si = a3[2];
301
- a3 = ReadVarint(u8a,si,ctx);
302
- let flags = a3[0];
303
- flags = _rgx_flag.n2s(flags);
304
- si = a3[2];
305
- let rgx = new RegExp(ptrn,flags);
306
- ctx.AddObjectWithID(rgx);
307
- return([rgx,si-old_si,si])
297
+ let old_si = si;
298
+ let a3 = ReadString(u8a,si,ctx);
299
+ let ptrn = a3[0];
300
+ si = a3[2];
301
+ a3 = ReadVarint(u8a,si,ctx);
302
+ let flags = a3[0];
303
+ flags = _rgx_flag.n2s(flags);
304
+ si = a3[2];
305
+ let rgx = new RegExp(ptrn,flags);
306
+ ctx.AddObjectWithID(rgx);
307
+ return([rgx,si-old_si,si])
308
308
  }
309
309
 
310
310
  const ReadJSSet = (u8a,si,ctx)=> {
311
- let old_si = si;
312
- let st = new Set();
313
- ctx.AddObjectWithID(st);
314
- let sz = 0;
315
- while (_t) {
316
- let rtrn_si = si;
317
- let a3 = ReadTag(u8a,si,ctx);
318
- let tag = a3[0];
319
- si = a3[2];
320
- if (tag === SerializationTag.kEndJSSet) {
321
- break;
322
- } else {
323
- si = rtrn_si;
324
- a3 = ReadObject(u8a,si,ctx);
325
- st.add(a3[0]);
326
- si = a3[2];
327
- }
328
- sz++;
329
- }
330
- let a3 = ReadVarint(u8a,si,ctx); // in js-layer no-need to check
331
- si = a3[2];
332
- return([st,si-old_si,si,a3[0]/*just for check*/])
311
+ let old_si = si;
312
+ let st = new Set();
313
+ ctx.AddObjectWithID(st);
314
+ let sz = 0;
315
+ while (_t) {
316
+ let rtrn_si = si;
317
+ let a3 = ReadTag(u8a,si,ctx);
318
+ let tag = a3[0];
319
+ si = a3[2];
320
+ if (tag === SerializationTag.kEndJSSet) {
321
+ break;
322
+ } else {
323
+ si = rtrn_si;
324
+ a3 = ReadObject(u8a,si,ctx);
325
+ st.add(a3[0]);
326
+ si = a3[2];
327
+ }
328
+ sz++;
329
+ }
330
+ let a3 = ReadVarint(u8a,si,ctx); // in js-layer no-need to check
331
+ si = a3[2];
332
+ return([st,si-old_si,si,a3[0]/*just for check*/])
333
333
  }
334
334
 
335
335
  const ReadJSMap = (u8a,si,ctx) => {
336
- let old_si = si;
337
- let mp = new Map();
338
- ctx.AddObjectWithID(mp);
339
- let sz = 0;
340
- while (_t) {
341
- let rtrn_si = si;
342
- let a3 = ReadTag(u8a,si,ctx);
343
- si = a3[2];
344
- let tag = a3[0];
345
- if (tag === SerializationTag.kEndJSMap) {
346
- break;
347
- } else {
348
- si = rtrn_si;
349
- a3 = ReadObject(u8a,si,ctx);
350
- let mpk = a3[0];
351
- si = a3[2];
352
- a3 = ReadObject(u8a,si,ctx);
353
- let mpv = a3[0];
354
- si = a3[2];
355
- mp.set(mpk,mpv);
356
- sz = sz+2;
357
- }
358
- }
359
- let a3 = ReadVarint(u8a,si,ctx);
360
- si = a3[2];
361
- return([mp,si-old_si,si,a3[0]/*just for check*/])
336
+ let old_si = si;
337
+ let mp = new Map();
338
+ ctx.AddObjectWithID(mp);
339
+ let sz = 0;
340
+ while (_t) {
341
+ let rtrn_si = si;
342
+ let a3 = ReadTag(u8a,si,ctx);
343
+ si = a3[2];
344
+ let tag = a3[0];
345
+ if (tag === SerializationTag.kEndJSMap) {
346
+ break;
347
+ } else {
348
+ si = rtrn_si;
349
+ a3 = ReadObject(u8a,si,ctx);
350
+ let mpk = a3[0];
351
+ si = a3[2];
352
+ a3 = ReadObject(u8a,si,ctx);
353
+ let mpv = a3[0];
354
+ si = a3[2];
355
+ mp.set(mpk,mpv);
356
+ sz = sz+2;
357
+ }
358
+ }
359
+ let a3 = ReadVarint(u8a,si,ctx);
360
+ si = a3[2];
361
+ return([mp,si-old_si,si,a3[0]/*just for check*/])
362
362
  }
363
363
 
364
364
  const ReadHostObject = (u8a,si,ctx) => {
365
- let old_si = si;
366
- let a3 = ReadUint32(u8a,si,ctx);
367
- let typeIndex = a3[0];
368
- let ctor = ArrayBufferViewIndexToCtor[typeIndex];
369
- let BYTES_PER_ELEMENT = ctor.BYTES_PER_ELEMENT ;
370
-
371
- si = a3[2];
372
- a3 = ReadUint32(u8a,si,ctx);
373
-
374
-
375
- let byteLength = a3[0];
376
- si = a3[2];
377
- let offset = si;
378
- a3 = ReadRawBytes(u8a,si,byteLength,ctx);
379
-
380
-
381
- let buf;
382
- if(si%BYTES_PER_ELEMENT === 0) {
383
- buf = new ctor(a3[0].buffer,si,byteLength);
384
- } else {
385
- //need copy
386
- buf = new ctor(a3[0].buffer.slice(si,si+byteLength));
387
- }
388
- si = a3[2];
389
- ctx.AddObjectWithID(buf);
390
- return([buf,si-old_si,si])
365
+ let old_si = si;
366
+ let a3 = ReadUint32(u8a,si,ctx);
367
+ let typeIndex = a3[0];
368
+ let ctor = ArrayBufferViewIndexToCtor[typeIndex];
369
+ let BYTES_PER_ELEMENT = ctor.BYTES_PER_ELEMENT ;
370
+ si = a3[2];
371
+ a3 = ReadUint32(u8a,si,ctx);
372
+ let byteLength = a3[0];
373
+ si = a3[2];
374
+ let offset = si;
375
+ a3 = ReadRawBytes(u8a,si,byteLength,ctx);
376
+ let buf;
377
+ if((u8a.byteOffset+si)%BYTES_PER_ELEMENT === 0) {
378
+ buf = new ctor(a3[0].buffer, u8a.byteOffset+si, byteLength/BYTES_PER_ELEMENT);
379
+ } else {
380
+ //need copy
381
+ buf = new ctor(a3[0].buffer.slice(si,si+byteLength));
382
+ }
383
+ si = a3[2];
384
+ ctx.AddObjectWithID(buf);
385
+ return([buf,si-old_si,si])
391
386
  }
392
-
393
387
  const ReadJSArrayBufferView = ReadHostObject; //compatible to nodejs
394
388
 
395
389
 
396
390
  const ReadJSArrayBuffer = (u8a,si,is_resizable,ctx) => {
397
- let old_si = si;
398
- let a3 = ReadVarint(u8a,si,ctx);
399
- let byte_length = a3[0];
400
- si = a3[2];
401
- let max_byte_length = byte_length;
402
- let ab;
403
- if(is_resizable) {
404
- let a3 = ReadVarint(u8a,si,ctx);
405
- max_byte_length = a3[0];
406
- ab = new ArrayBuffer(byte_length,{maxByteLength:max_byte_length});
407
- si = a3[2];
408
- _ab._cp(u8a.buffer,si,byte_length,ab,0);
409
- si = si + byte_length;
410
- } else {
411
- let total_ab = u8a.buffer;
412
- ab = total_ab.slice(si,si+byte_length);
413
- si = si + byte_length;
414
- }
415
- ctx.AddObjectWithID(ab);
416
- return([ab,si-old_si,si])
391
+ let old_si = si;
392
+ let a3 = ReadVarint(u8a,si,ctx);
393
+ let byte_length = a3[0];
394
+ si = a3[2];
395
+ let max_byte_length = byte_length;
396
+ let ab;
397
+ if(is_resizable) {
398
+ let a3 = ReadVarint(u8a,si,ctx);
399
+ max_byte_length = a3[0];
400
+ ab = new ArrayBuffer(byte_length,{maxByteLength:max_byte_length});
401
+ si = a3[2];
402
+ _ab._cp(u8a.buffer,u8a.byteOffset+si,byte_length,ab,0);
403
+ si = si + byte_length;
404
+ } else {
405
+ let total_ab = u8a.buffer;
406
+ ab = total_ab.slice(u8a.byteOffset+si,u8a.byteOffset+si+byte_length);
407
+ si = si + byte_length;
408
+ }
409
+ ctx.AddObjectWithID(ab);
410
+ return([ab,si-old_si,si])
417
411
  }
418
412
 
419
413
  const ReadJSObjectProperties = (u8a,si,o,end_tag,is_ary,ctx) => {
420
- let old_si = si;
421
- let num_properties = 0;
422
- while(_t) {
423
- let rtrn_si = si;
424
- let a3 = ReadTag(u8a,si,ctx);
425
- let tag = a3[0];
426
- si = a3[2];
427
- if(tag !== end_tag) {
428
- si = rtrn_si;
429
- a3 = ReadObject(u8a,si,ctx);
430
- let key = a3[0];
431
- si = a3[2];
432
- a3 = ReadObject(u8a,si,ctx);
433
- let val = a3[0];
434
- si = a3[2];
435
- o[key] = val;
436
- ++num_properties;
437
- } else {
438
- return([num_properties,si-old_si,si])
439
- }
440
- }
414
+ let old_si = si;
415
+ let num_properties = 0;
416
+ while(_t) {
417
+ let rtrn_si = si;
418
+ let a3 = ReadTag(u8a,si,ctx);
419
+ let tag = a3[0];
420
+ si = a3[2];
421
+ if(tag !== end_tag) {
422
+ si = rtrn_si;
423
+ a3 = ReadObject(u8a,si,ctx);
424
+ let key = a3[0];
425
+ si = a3[2];
426
+ a3 = ReadObject(u8a,si,ctx);
427
+ let val = a3[0];
428
+ si = a3[2];
429
+ o[key] = val;
430
+ ++num_properties;
431
+ } else {
432
+ return([num_properties,si-old_si,si])
433
+ }
434
+ }
441
435
  }
442
436
 
443
437
  const ReadJSObject = (u8a,si,ctx) => {
444
- let old_si = si;
445
- let o = {};
446
- ctx.AddObjectWithID(o);
447
- let a3 = ReadJSObjectProperties(u8a,si,o,SerializationTag.kEndJSObject,_f,ctx);
448
- let num_properties = a3[0];
449
- si = a3[2];
450
- a3 = ReadVarint(u8a,si,ctx); // expected_num_properties
451
- si = a3[2];
452
- return([o,si-old_si,si]) // we dont verify expected_num_properties
438
+ let old_si = si;
439
+ let o = {};
440
+ ctx.AddObjectWithID(o);
441
+ let a3 = ReadJSObjectProperties(u8a,si,o,SerializationTag.kEndJSObject,_f,ctx);
442
+ let num_properties = a3[0];
443
+ si = a3[2];
444
+ a3 = ReadVarint(u8a,si,ctx); // expected_num_properties
445
+ si = a3[2];
446
+ return([o,si-old_si,si]) // we dont verify expected_num_properties
453
447
  }
454
448
 
455
449
  const ReadJSArray = (u8a,si,begin_tag,ctx) => {
456
- let old_si = si;
457
- let a3 = ReadVarint(u8a,si,ctx);
458
- let length = a3[0];
459
- si = a3[2];
460
- let a = [];
461
- ctx.AddObjectWithID(a);
462
- for(let i=0;i<length;++i) {
463
- a3 = ReadObject(u8a,si,ctx);
464
- a.push(a3[0]);
465
- si = a3[2];
466
- }
467
- /////
468
- let end_tag = (begin_tag === SerializationTag.kBeginDenseJSArray)?SerializationTag.kEndDenseJSArray:SerializationTag.kEndSparseJSArray;
469
- a3 = ReadJSObjectProperties(u8a,si,a, end_tag, _t,ctx);
470
- si = a3[2];
471
- a3 = ReadVarint(u8a,si,ctx); // we dont check expected_num_properties
472
- si = a3[2];
473
- a3 = ReadVarint(u8a,si,ctx); // we dont check expected_length
474
- si = a3[2];
475
- return([a,si-old_si,si])
450
+ let old_si = si;
451
+ let a3 = ReadVarint(u8a,si,ctx);
452
+ let length = a3[0];
453
+ si = a3[2];
454
+ let a = [];
455
+ ctx.AddObjectWithID(a);
456
+ for(let i=0;i<length;++i) {
457
+ a3 = ReadObject(u8a,si,ctx);
458
+ a.push(a3[0]);
459
+ si = a3[2];
460
+ }
461
+ /////
462
+ let end_tag = (begin_tag === SerializationTag.kBeginDenseJSArray)?SerializationTag.kEndDenseJSArray:SerializationTag.kEndSparseJSArray;
463
+ a3 = ReadJSObjectProperties(u8a,si,a, end_tag, _t,ctx);
464
+ si = a3[2];
465
+ a3 = ReadVarint(u8a,si,ctx); // we dont check expected_num_properties
466
+ si = a3[2];
467
+ a3 = ReadVarint(u8a,si,ctx); // we dont check expected_length
468
+ si = a3[2];
469
+ return([a,si-old_si,si])
476
470
  }
477
471
 
478
472
 
479
473
  const ReadObjectInternal = (u8a,si,ctx) => {
480
- let old_si = si;
481
- let a3 = ReadTag(u8a,si,ctx);
482
- let tag = a3[0];
483
- si = a3[2];
484
- switch (tag) {
485
- case SerializationTag.kTheHole: {return([_u,si-old_si,si]);}
486
- case SerializationTag.kUndefined: {return([_u,si-old_si,si]);}
487
- case SerializationTag.kNull: {return([_n,si-old_si,si]);}
488
- case SerializationTag.kTrue: {return([_t,si-old_si,si]);}
489
- case SerializationTag.kFalse: {return([_f,si-old_si,si]);}
490
- case SerializationTag.kInt32: {
491
- a3 = ReadZigZag(u8a,si,ctx);
492
- si = a3[2];
493
- return([a3[0],si-old_si,si]);
494
- }
495
- case SerializationTag.kUint32: {
496
- a3 = ReadVarint(u8a,si,ctx);
497
- si = a3[2];
498
- return([a3[0],si-old_si,si]);
499
- }
500
- case SerializationTag.kDouble: {
501
- a3 = ReadDouble(u8a,si,ctx);
502
- si = a3[2];
503
- return([a3[0],si-old_si,si]);
504
- }
505
- case SerializationTag.kBigInt: {
506
- a3 = ReadBigInt(u8a,si,ctx);
507
- si = a3[2];
508
- return([a3[0],si-old_si,si]);
509
- }
510
- case SerializationTag.kOneByteString: {
511
- a3 = ReadOneByteString(u8a,si,ctx);
512
- si = a3[2];
513
- return([a3[0],si-old_si,si]);
514
- }
515
- case SerializationTag.kTwoByteString: {
516
- a3 = ReadTwoByteString(u8a,si,ctx);
517
- si = a3[2];
518
- return([a3[0],si-old_si,si]);
519
- }
520
- case SerializationTag.kUtf8String: {
521
- a3 = ReadUtf8String(u8a,si,ctx);
522
- si = a3[2];
523
- return([a3[0],si-old_si,si]);
524
- }
525
- case SerializationTag.kBeginJSObject: {
526
- a3 = ReadJSObject(u8a,si,ctx);
527
- si = a3[2];
528
- return([a3[0],si-old_si,si]);
529
- }
530
- case SerializationTag.kBeginDenseJSArray :
531
- case SerializationTag.kBeginSparseJSArray: { // treat sparse same as dense
532
- a3 = ReadJSArray(u8a,si,tag,ctx);
533
- si = a3[2];
534
- return([a3[0],si-old_si,si]);
535
- }
536
- case SerializationTag.kDate: {
537
- a3 = ReadJSDate(u8a,si,ctx);
538
- si = a3[2];
539
- return([a3[0],si-old_si,si]);
540
- }
541
- case SerializationTag.kBeginJSMap: {
542
- a3 = ReadJSMap(u8a,si,ctx);
543
- si = a3[2];
544
- return([a3[0],si-old_si,si]);
545
- }
546
- case SerializationTag.kBeginJSSet: {
547
- a3 = ReadJSSet(u8a,si,ctx);
548
- si = a3[2];
549
- return([a3[0],si-old_si,si]);
550
- }
551
- case SerializationTag.kObjectReference: {
552
- a3 = ReadVarint(u8a,si,ctx);
553
- let id = a3[0];
554
- si = a3[2];
555
- let v = ctx.GetObjectWithID(id);
556
- return([v,si-old_si,si]);
557
- }
558
- case SerializationTag.kRegExp: {
559
- a3 = ReadJSRegExp(u8a,si,ctx);
560
- si = a3[2];
561
- return([a3[0],si-old_si,si]);
562
- }
563
- case SerializationTag.kSharedArrayBuffer: //treat sab as normal ab
564
- case SerializationTag.kArrayBuffer: {
565
- let is_resizable = _f;
566
- a3 = ReadJSArrayBuffer(u8a,si,is_resizable,ctx);
567
- si = a3[2];
568
- return([a3[0],si-old_si,si]);
569
- }
570
- case SerializationTag.kResizableArrayBuffer: {
571
- let is_resizable = _t;
572
- a3 = ReadJSArrayBuffer(u8a,si,is_resizable,ctx);
573
- si = a3[2];
574
- return([a3[0],si-old_si,si]);
575
- }
576
- case SerializationTag.kError: {
577
- a3 = ReadJSError(u8a,si,ctx);
578
- si = a3[2];
579
- return([a3[0],si-old_si,si]);
580
- }
581
- case SerializationTag.kArrayBufferView: //corresponding to nodejs
582
- case SerializationTag.kHostObject: {
583
- a3 = ReadHostObject(u8a,si,ctx);
584
- si = a3[2];
585
- return([a3[0],si-old_si,si]);
586
- }
587
- case SerializationTag.kTrueObject:
588
- case SerializationTag.kFalseObject:
589
- case SerializationTag.kNumberObject:
590
- case SerializationTag.kBigIntObject:
591
- case SerializationTag.kStringObject: {
592
- a3 = ReadJSPrimitiveWrapper(u8a,si,tag,ctx);
593
- si = a3[2];
594
- return([a3[0],si-old_si,si]);
595
- }
596
- default: {
597
- console.log("why unknown",tag,si,u8a);
598
- return([CreatUnknown(),si-old_si,si])
599
- }
600
- }
474
+ let old_si = si;
475
+ let a3 = ReadTag(u8a,si,ctx);
476
+ let tag = a3[0];
477
+ si = a3[2];
478
+ switch (tag) {
479
+ case SerializationTag.kTheHole: {return([_u,si-old_si,si]);}
480
+ case SerializationTag.kUndefined: {return([_u,si-old_si,si]);}
481
+ case SerializationTag.kNull: {return([_n,si-old_si,si]);}
482
+ case SerializationTag.kTrue: {return([_t,si-old_si,si]);}
483
+ case SerializationTag.kFalse: {return([_f,si-old_si,si]);}
484
+ case SerializationTag.kInt32: {
485
+ a3 = ReadZigZag(u8a,si,ctx);
486
+ si = a3[2];
487
+ return([a3[0],si-old_si,si]);
488
+ }
489
+ case SerializationTag.kUint32: {
490
+ a3 = ReadVarint(u8a,si,ctx);
491
+ si = a3[2];
492
+ return([a3[0],si-old_si,si]);
493
+ }
494
+ case SerializationTag.kDouble: {
495
+ a3 = ReadDouble(u8a,si,ctx);
496
+ si = a3[2];
497
+ return([a3[0],si-old_si,si]);
498
+ }
499
+ case SerializationTag.kBigInt: {
500
+ a3 = ReadBigInt(u8a,si,ctx);
501
+ si = a3[2];
502
+ return([a3[0],si-old_si,si]);
503
+ }
504
+ case SerializationTag.kOneByteString: {
505
+ a3 = ReadOneByteString(u8a,si,ctx);
506
+ si = a3[2];
507
+ return([a3[0],si-old_si,si]);
508
+ }
509
+ case SerializationTag.kTwoByteString: {
510
+ a3 = ReadTwoByteString(u8a,si,ctx);
511
+ si = a3[2];
512
+ return([a3[0],si-old_si,si]);
513
+ }
514
+ case SerializationTag.kUtf8String: {
515
+ a3 = ReadUtf8String(u8a,si,ctx);
516
+ si = a3[2];
517
+ return([a3[0],si-old_si,si]);
518
+ }
519
+ case SerializationTag.kBeginJSObject: {
520
+ a3 = ReadJSObject(u8a,si,ctx);
521
+ si = a3[2];
522
+ return([a3[0],si-old_si,si]);
523
+ }
524
+ case SerializationTag.kBeginDenseJSArray :
525
+ case SerializationTag.kBeginSparseJSArray: { // treat sparse same as dense
526
+ a3 = ReadJSArray(u8a,si,tag,ctx);
527
+ si = a3[2];
528
+ return([a3[0],si-old_si,si]);
529
+ }
530
+ case SerializationTag.kDate: {
531
+ a3 = ReadJSDate(u8a,si,ctx);
532
+ si = a3[2];
533
+ return([a3[0],si-old_si,si]);
534
+ }
535
+ case SerializationTag.kBeginJSMap: {
536
+ a3 = ReadJSMap(u8a,si,ctx);
537
+ si = a3[2];
538
+ return([a3[0],si-old_si,si]);
539
+ }
540
+ case SerializationTag.kBeginJSSet: {
541
+ a3 = ReadJSSet(u8a,si,ctx);
542
+ si = a3[2];
543
+ return([a3[0],si-old_si,si]);
544
+ }
545
+ case SerializationTag.kObjectReference: {
546
+ a3 = ReadVarint(u8a,si,ctx);
547
+ let id = a3[0];
548
+ si = a3[2];
549
+ let v = ctx.GetObjectWithID(id);
550
+ return([v,si-old_si,si]);
551
+ }
552
+ case SerializationTag.kRegExp: {
553
+ a3 = ReadJSRegExp(u8a,si,ctx);
554
+ si = a3[2];
555
+ return([a3[0],si-old_si,si]);
556
+ }
557
+ case SerializationTag.kSharedArrayBuffer: //treat sab as normal ab
558
+ case SerializationTag.kArrayBuffer: {
559
+ let is_resizable = _f;
560
+ a3 = ReadJSArrayBuffer(u8a,si,is_resizable,ctx);
561
+ si = a3[2];
562
+ return([a3[0],si-old_si,si]);
563
+ }
564
+ case SerializationTag.kResizableArrayBuffer: {
565
+ let is_resizable = _t;
566
+ a3 = ReadJSArrayBuffer(u8a,si,is_resizable,ctx);
567
+ si = a3[2];
568
+ return([a3[0],si-old_si,si]);
569
+ }
570
+ case SerializationTag.kError: {
571
+ a3 = ReadJSError(u8a,si,ctx);
572
+ si = a3[2];
573
+ return([a3[0],si-old_si,si]);
574
+ }
575
+ case SerializationTag.kArrayBufferView: //corresponding to nodejs
576
+ case SerializationTag.kHostObject: {
577
+ a3 = ReadHostObject(u8a,si,ctx);
578
+ si = a3[2];
579
+ return([a3[0],si-old_si,si]);
580
+ }
581
+ case SerializationTag.kTrueObject:
582
+ case SerializationTag.kFalseObject:
583
+ case SerializationTag.kNumberObject:
584
+ case SerializationTag.kBigIntObject:
585
+ case SerializationTag.kStringObject: {
586
+ a3 = ReadJSPrimitiveWrapper(u8a,si,tag,ctx);
587
+ si = a3[2];
588
+ return([a3[0],si-old_si,si]);
589
+ }
590
+ default: {
591
+ console.log("why unknown",tag,si,u8a);
592
+ return([CreatUnknown(),si-old_si,si])
593
+ }
594
+ }
601
595
  }
602
596
 
603
597
 
@@ -606,46 +600,46 @@ const ReadObject = (u8a,si,ctx) => ReadObjectInternal(u8a,si,ctx); //same as R
606
600
 
607
601
 
608
602
  const decd = (o) => { //o: arraybuffer OR uint8array
609
- let u8a = (o.buffer!== undefined)? o : new Uint8Array(o);
610
- let ctx = creat_rctx();
611
- let si = 0;
612
- let a3 = ReadHeader(u8a,si,ctx);
613
- si = a3[2];
614
- a3 = ReadObject(u8a,si,ctx);
615
- return(a3[0])
603
+ let u8a = (o.buffer!== undefined)? o : new Uint8Array(o);
604
+ let ctx = creat_rctx();
605
+ let si = 0;
606
+ let a3 = ReadHeader(u8a,si,ctx);
607
+ si = a3[2];
608
+ a3 = ReadObject(u8a,si,ctx);
609
+ return(a3[0])
616
610
  }
617
611
 
618
612
 
619
613
  module.exports = {
620
- ERRD,
621
- ////
622
- ReadVarintLoopIfLshiftWork,
623
- ReadVarint,
624
- ReadHeader,
625
- ReadTag,
626
- ReadZigZag,
627
- ReadDouble,
628
- ReadRawBytes,
629
- ReadByte,
630
- ReadUint32,
631
- ReadBigInt,BI_MUL,
632
- ReadOneByteString,
633
- ReadTwoByteString,
634
- ReadUtf8String,
635
- ReadJSDate,
636
- ReadString,
637
- ReadJSRegExp,
638
- ReadJSError,
639
- ReadJSSet,
640
- ReadJSMap,
641
- ReadHostObject,
642
- ReadJSArrayBufferView,
643
- ReadJSArrayBuffer,
644
- ReadJSObjectProperties,
645
- ReadObjectInternal,
646
- ReadObject,
647
- ReadJSObject,
648
- ReadJSArray,
649
- ////
650
- decd
614
+ ERRD,
615
+ ////
616
+ ReadVarintLoopIfLshiftWork,
617
+ ReadVarint,
618
+ ReadHeader,
619
+ ReadTag,
620
+ ReadZigZag,
621
+ ReadDouble,
622
+ ReadRawBytes,
623
+ ReadByte,
624
+ ReadUint32,
625
+ ReadBigInt,BI_MUL,
626
+ ReadOneByteString,
627
+ ReadTwoByteString,
628
+ ReadUtf8String,
629
+ ReadJSDate,
630
+ ReadString,
631
+ ReadJSRegExp,
632
+ ReadJSError,
633
+ ReadJSSet,
634
+ ReadJSMap,
635
+ ReadHostObject,
636
+ ReadJSArrayBufferView,
637
+ ReadJSArrayBuffer,
638
+ ReadJSObjectProperties,
639
+ ReadObjectInternal,
640
+ ReadObject,
641
+ ReadJSObject,
642
+ ReadJSArray,
643
+ ////
644
+ decd
651
645
  }