@loro-dev/flock 4.3.0 → 4.4.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/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +48 -0
- package/dist/index.d.ts +48 -0
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +173 -6
package/dist/index.cjs
CHANGED
|
@@ -7,5 +7,5 @@ const e={$tag:0},t={$tag:1},n={$tag:2};function r(e,t){this._0=e,this._1=t}r.pro
|
|
|
7
7
|
`;case 6:return`
|
|
8
8
|
`;case 7:return`
|
|
9
9
|
`;case 8:return`
|
|
10
|
-
`;default:return`\n${Tl(` `,n)}`}}}function wm(e,t,n,r){let i=Ns(0),a=[],o=0,s=e;for(;;){let e=s;if(e===void 0){if(a.length===0)break;{let e=a[a.length-1|0];if(e.$tag===0){let t=e,r=t._0,c=t._1;if(c<r.length){let e=Gs(r,c);t._1=c+1|0,c>0&&(D(i,44),A(i,Cm(o,n))),s=e;continue}else{o=o-1|0,kf(a),A(i,Cm(o,n)),D(i,93),s=void 0;continue}}else{let c=e,l=c._0,u=c._1,d=el(l);if(d===void 0){o=o-1|0,kf(a),A(i,Cm(o,n)),D(i,125),s=void 0;continue}else{let e=d,a=e._0,l=e._1,f=l;if(r!==void 0){let e=r(a,l);if(e===void 0){s=void 0;continue}else f=e}u||(D(i,44),A(i,Cm(o,n))),D(i,34),A(i,Sm(a,t)),D(i,34),D(i,58),n>0&&D(i,32),c._1=!1,s=f;continue}}}}else{let r=e;switch(r.$tag){case 6:{let e=r._0;e.size===0?A(i,`{}`):(o=o+1|0,D(i,123),A(i,Cm(o,n)),Il(a,new Mr($u(e),!0)));break}case 5:{let e=r._0;e.length===0?A(i,`[]`):(o=o+1|0,D(i,91),A(i,Cm(o,n)),Il(a,new jr(e,0)));break}case 4:{let e=r._0;D(i,34),A(i,Sm(e,t)),D(i,34);break}case 3:{let e=r,t=e._0,n=e._1;n===void 0?sc(i,t):A(i,n);break}case 1:A(i,`true`);break;case 2:A(i,`false`);break;default:A(i,`null`)}s=void 0;continue}}return i.val}function Tm(e){if(e.$tag===3){let t=e._0;return new sr(t)}else return or}function Em(e,t){return Nr(e,t)}function Dm(e,t){return Pr(e,t)}function Om(e){return Lr(e)}function km(e,t){return Rr(e,t)}function Am(e,t){return zr(e,t)}function jm(e,t){return Br(e,t)}function Mm(e,t){return Vr(e,t)}function Nm(e,t){return t<0&&gs(`negative shift count`,`@moonbitlang/core/bigint:bigint_js.mbt:269:5-269:34`),Hr(e,t)}function Pm(e){let t=Ur(Nm(e,32)),n=Ur(e);return Vd(Ud(tp(t),32),tp(n))}function Fm(){return Gr()}function Im(e){return Kr(e)}function Lm(e,t){return Im(e)===`number`?new Jr(e):new qr(new rn({_0:t,_1:e,_2:`Double`}))}function Rm(e,t){return Im(e)===`string`?new Xr(e):new Yr(new rn({_0:t,_1:e,_2:`String`}))}function zm(e,t){let n=e;if(n.$tag===0){let e=n._0._0,r=e._1,i=e._2;return new $r(new rn({_0:t,_1:r,_2:i}))}else{let e=n._0;return new ei(e)}}function Bm(e,t){if(Qr(e)){let t=e,n;_L:{let e=Array(t.length),r=t.length,i=0;for(;;){let a=i;if(a<r){let r=t[a],o=zm(new ei(r),`@Yoorkin/jmop:value.mbt:156:18-156:50`),s;if(o.$tag===1)s=o._0;else{n=o._0;break _L}e[a]=s,i=a+1|0;continue}else break}return new Sn(e)}return new xn(n)}else return new xn(new rn({_0:t,_1:e,_2:`Array`}))}function Vm(){return ti()}function Hm(e,t){return ni(e)?new ri(new Zt(t)):new ii(e)}function Um(e,t){return Zr(e)?new ai(new Xt(t)):new oi(e)}function Wm(e,t){let n=Hm(e,t),r;if(n.$tag===1)r=n._0;else return n;return Um(r,t)}function $(e,t){return Wm(e,t)}function Gm(e,t,n){if(e===`InvalidNestedPromise`){let e=$(t,`@Yoorkin/jmop:init.mbt:63:43-63:66`),n;if(e.$tag===1)n=e._0;else return e;return new ci(new Yt(n))}else return new ui(new Jt(t))}function Km(){return{h:fu({buf:Ao,start:0,end:8}),x:un(64,0),nx:0,len:b,name:`sha256`}}function qm(e){return e<10?e+48|0:(e-10|0)+97|0}function Jm(e,t,n){let r=t+3|0,i=n&255;C(e,r),e[r]=i&255;let a=t+2|0,o=n>>>8&255;C(e,a),e[a]=o&255;let s=t+1|0,c=n>>>16&255;C(e,s),e[s]=c&255;let l=n>>>24&255;C(e,t),e[t]=l&255}function Ym(e,t,n){Jm(e,t+4|0,ef(K(n,Ln))),Jm(e,t,ef(K(J(n,32),Ln)))}function Xm(e){let t=Rt(64,0),n=e.x,r=0;for(;;){let e=r;if(e<16){let i=Math.imul(e,4)|0;C(n,i);let a=n[i]<<24,o=i+1|0;C(n,o);let s=a|n[o]<<16,c=i+2|0;C(n,c);let l=s|n[c]<<8,u=i+3|0;C(n,u);let d=n[u];C(t,e),t[e]=l|d,r=e+1|0;continue}else break}let i=16;for(;;){let e=i;if(e<64){let n=e-2|0;C(t,n);let r=t[n],a=(r<<-17|r>>>49|0)^(r<<-19|r>>>51|0)^(r>>>10|0),o=e-15|0;C(t,o);let s=t[o],c=(s<<-7|s>>>39|0)^(s<<-18|s>>>50|0)^(s>>>3|0),l=e-7|0;C(t,l);let u=(((a>>>0)+(t[l]>>>0)|0)>>>0)+(c>>>0)|0,d=e-16|0;C(t,d),C(t,e),t[e]=(u>>>0)+(t[d]>>>0)|0,i=e+1|0;continue}else break}let a=e.h;C(a,0);let o=a[0],s=e.h;C(s,1);let c=s[1],l=e.h;C(l,2);let u=l[2],d=e.h;C(d,3);let f=d[3],p=e.h;C(p,4);let m=p[4],h=e.h;C(h,5);let g=h[5],_=e.h;C(_,6);let v=_[6],y=e.h;C(y,7);let ee=y[7],te=0;for(;;){let e=te;if(e<64){let n=ee,r=m,i=r<<-6|r>>>38|0,a=m,s=i^(a<<-11|a>>>43|0),l=m,d=(((((n>>>0)+((s^(l<<-25|l>>>57|0))>>>0)|0)>>>0)+((m&g^~m&v)>>>0)|0)>>>0)+(Qs(ko,e)>>>0)|0;C(t,e);let p=(d>>>0)+(t[e]>>>0)|0,h=o,_=h<<-2|h>>>34|0,y=o,ne=_^(y<<-13|y>>>45|0),re=o,ie=((ne^(re<<-22|re>>>54|0))>>>0)+((o&c^o&u^c&u)>>>0)|0;ee=v,v=g,g=m,m=(f>>>0)+(p>>>0)|0,f=u,u=c,c=o,o=(p>>>0)+(ie>>>0)|0,te=e+1|0;continue}else break}let ne=e.h;C(ne,0),C(ne,0),ne[0]=(ne[0]>>>0)+(o>>>0)|0;let re=e.h;C(re,1),C(re,1),re[1]=(re[1]>>>0)+(c>>>0)|0;let ie=e.h;C(ie,2),C(ie,2),ie[2]=(ie[2]>>>0)+(u>>>0)|0;let ae=e.h;C(ae,3),C(ae,3),ae[3]=(ae[3]>>>0)+(f>>>0)|0;let oe=e.h;C(oe,4),C(oe,4),oe[4]=(oe[4]>>>0)+(m>>>0)|0;let se=e.h;C(se,5),C(se,5),se[5]=(se[5]>>>0)+(g>>>0)|0;let ce=e.h;C(ce,6),C(ce,6),ce[6]=(ce[6]>>>0)+(v>>>0)|0;let le=e.h;C(le,7),C(le,7),le[7]=(le[7]>>>0)+(ee>>>0)|0}function Zm(e,t){e.len=H(e.len,s);let n=e.x,r=e.nx;if(C(n,r),n[r]=t,e.nx=e.nx+1|0,e.nx===64){Xm(e),e.nx=0;return}else return}function Qm(e){let t=un(72,0);C(t,0),t[0]=128;let n=xc($d(e.len,fi),pi)?V(U(pi,$d(e.len,fi))):V(U(H(fi,pi),$d(e.len,fi)));Ym(t,n,q(e.len,3));let r=0;for(;;){let i=r;if(i<(n+8|0)){C(t,i),Zm(e,t[i]),r=i+1|0;continue}else break}e.nx!==0&&S();let i=un(32,0),a=e.h;C(a,0),Jm(i,0,a[0]);let o=e.h;C(o,1),Jm(i,4,o[1]);let s=e.h;C(s,2),Jm(i,8,s[2]);let c=e.h;C(c,3),Jm(i,12,c[3]);let l=e.h;C(l,4),Jm(i,16,l[4]);let u=e.h;C(u,5),Jm(i,20,u[5]);let d=e.h;C(d,6),Jm(i,24,d[6]);let f=e.h;return C(f,7),Jm(i,28,f[7]),i}function $m(e){let t=Qm(e),n=rp(64),r=t.length,i=0;for(;;){let e=i;if(e<r){let r=t[e];ap(n,qm(r>>4&15)),ap(n,qm(r&15)),i=e+1|0;continue}else break}return Jc(op(n),0,void 0)}function eh(e){let t=[],n=e;for(;;){let e=vd(K(n,mi));if(n=J(n,7),Bs(n,b)&&(e=(e|128)&255),I(t,e),G(n,b))break}return bf({buf:t,start:0,end:t.length})}function th(e){let t=[],n=e,r=!0;for(;r;){let e=Yd(Bd(n,mi));n=Hd(n,7);let i;if(i=Wd(n,b)?(e&64)==0:!1,i)r=!1;else{let t;t=Wd(n,ft)?(e&64)!=0:!1,t?r=!1:e=(e|128)&255}I(t,e)}return bf({buf:t,start:0,end:t.length})}function nh(e){switch(e){case 0:return`40`;case 1:return`41`;case 2:return`42`;case 3:return`43`;case 4:return`44`;case 5:return`45`;case 6:return`46`;case 7:return`47`;default:return`49`}}function rh(e){switch(e){case 0:return`30`;case 1:return`31`;case 2:return`32`;case 3:return`33`;case 4:return`34`;case 5:return`35`;case 6:return`36`;case 7:return`37`;default:return`39`}}function ih(e){let t=[],n=e.color;n===void 0||Ul(t,rh(n));let r=e.bg_color;r===void 0||Ul(t,nh(r));let i=e.formats,a=i.length,o=0;for(;;){let e=o;if(e<a){switch(i[e]){case 0:Ul(t,`1`);break;case 1:Ul(t,`4`);break;case 2:Ul(t,`5`);break;case 3:Ul(t,`7`);break;case 4:Ul(t,`8`);break;case 5:Ul(t,`9`);break;default:Ul(t,`3`)}o=e+1|0;continue}else break}return t.length>0?`[${Lf(t,{str:`;`,start:0,end:1})}m${e.str}[0m`:e.str}function ah(e){return{str:e,bg_color:void 0,color:void 0,formats:[]}}function oh(e){return{str:e.str,bg_color:e.bg_color,color:1,formats:e.formats}}function sh(e){return{str:e.str,bg_color:e.bg_color,color:3,formats:e.formats}}function ch(e){return{str:e.str,bg_color:e.bg_color,color:4,formats:e.formats}}function lh(e){let t=e.str,n=e.bg_color,r=e.color,i=[];return Wl(i,0),Ff(i,uu(e.formats)),{str:t,bg_color:n,color:r,formats:i}}function uh(e,t){let n=`${ih(oh(lh(ah(`Panic: `))))}${ih(sh(ah(e)))} at ${ih(ch(ah(N(t))))}`;ff(n),gs(n,`@zxch3n/expect:expect.mbt:698:3-698:13`)}function dh(e,t){return yf(e,t)}function fh(e,t){if(e.bytes.length!==t.bytes.length)return!1;let n=0;for(;;){let r=n;if(r<e.bytes.length){let i=e.bytes;C(i,r);let a=i[r],o=t.bytes;if(C(o,r),a!==o[r])return!1;n=r+1|0;continue}else break}return!0}function ph(e){let t=Al(0),n=0;for(;n<e.length;){let r=n;C(e,r);let i=e.charCodeAt(r);if(i>=55296&&i<=56319&&(n+1|0)<e.length){let r=n+1|0;C(e,r);let a=e.charCodeAt(r);if(a>=56320&&a<=57343){let e=(65536+(i-55296<<10)|0)+(a-56320|0)|0;I(t,(240|e>>18)&255),I(t,(128|e>>12&63)&255),I(t,(128|e>>6&63)&255),I(t,(128|e&63)&255),n=n+1|0}else I(t,(224|i>>12)&255),I(t,(128|i>>6&63)&255),I(t,(128|i&63)&255)}else i<128?I(t,i&255):i<2048?(I(t,(192|i>>6)&255),I(t,(128|i&63)&255)):(I(t,(224|i>>12)&255),I(t,(128|i>>6&63)&255),I(t,(128|i&63)&255));n=n+1|0}return bf({buf:t,start:0,end:t.length})}function mh(e){return{bytes:ph(e)}}function hh(e){let t=0;for(;t<(e.end-e.start|0);){let n=Y(e,t);if(!(n&128))t=t+1|0;else if((n&224)==192){if((t+1|0)>=(e.end-e.start|0)||(Y(e,t+1|0)&192)!=128)return!1;t=t+2|0}else if((n&240)==224){if((t+2|0)>=(e.end-e.start|0))return!1;let n=Y(e,t+1|0),r=Y(e,t+2|0),i;if(i=(n&192)==128?(r&192)!=128:!0,i)return!1;t=t+3|0}else if((n&248)==240){if((t+3|0)>=(e.end-e.start|0))return!1;let n=Y(e,t+1|0),r=Y(e,t+2|0),i=Y(e,t+3|0),a;if((n&192)!=128)a=!0;else{let e;e=(r&192)==128?(i&192)!=128:!0,a=e}if(a)return!1;t=t+4|0}else return!1}return!0}function gh(e){if(hh(pf(e,0,void 0)))return{bytes:xf(hf(e))}}function _h(e){let t=0,n=``;for(;t<e.length;){let r=t;C(e,r);let i=e[r],a;if(!(i&128))a=i;else if((i&224)==192){if((t+1|0)>=e.length)return;let n=t+1|0;C(e,n);let r=e[n];if((r&192)!=128)return;t=t+1|0,a=(i&31)<<6|r&63}else if((i&240)==224){if((t+2|0)>=e.length)return;let n=t+1|0;C(e,n);let r=e[n],o=t+2|0;C(e,o);let s=e[o],c;if(c=(r&192)==128?(s&192)!=128:!0,c)return;t=t+2|0,a=(i&15)<<12|(r&63)<<6|s&63}else if((i&248)==240){if((t+3|0)>=e.length)return;let n=t+1|0;C(e,n);let r=e[n],o=t+2|0;C(e,o);let s=e[o],c=t+3|0;C(e,c);let l=e[c],u;if((r&192)!=128)u=!0;else{let e;e=(s&192)==128?(l&192)!=128:!0,u=e}if(u)return;t=t+3|0,a=(i&7)<<18|(r&63)<<12|(s&63)<<6|l&63}else return;n=`${n}${Jl(a)}`,t=t+1|0}return n}function vh(e){let t=_h(e.bytes);return t===void 0?S():t}function yh(e,t){let n=e.end-e.start|0,r=t.end-t.start|0,i=n<r?n:r,a=0;for(;;){let n=a;if(n<i){let r=zt(Y(e,n),Y(t,n));if(r!==0)return r;a=n+1|0;continue}else break}return zt(n,r)}function bh(e,t){let n=e.bytes,r=X(n,0,n.length),i=t.bytes;return yh(r,X(i,0,i.length))}function xh(e,t){let n=e,r=X(n,0,n.length),i=t;return yh(r,X(i,0,i.length))}function Sh(e){return Zd(e)}function Ch(e){return Xd(e)}function wh(e){let t=Al(0);return I(t,vd(K(J(e,56),hi))),I(t,vd(K(J(e,48),hi))),I(t,vd(K(J(e,40),hi))),I(t,vd(K(J(e,32),hi))),I(t,vd(K(J(e,24),hi))),I(t,vd(K(J(e,16),hi))),I(t,vd(K(J(e,8),hi))),I(t,vd(K(e,hi))),bf({buf:t,start:0,end:t.length})}function Th(e){e.length!==8&&uh(`Invalid byte array length`,`@zxch3n/flock/memcomparable:utils.mbt:28:5-28:54`);let t=b,n=t;C(e,0),t=nf(n,q(_f(e[0]),56));let r=t;C(e,1),t=nf(r,q(_f(e[1]),48));let i=t;C(e,2),t=nf(i,q(_f(e[2]),40));let a=t;C(e,3),t=nf(a,q(_f(e[3]),32));let o=t;C(e,4),t=nf(o,q(_f(e[4]),24));let s=t;C(e,5),t=nf(s,q(_f(e[5]),16));let c=t;C(e,6),t=nf(c,q(_f(e[6]),8));let l=t;return C(e,7),t=nf(l,_f(e[7])),t}function Eh(){return{parts:jl(0)}}function Dh(e,t){Ll(e.parts,t)}function Oh(e,t){let n=e.end-e.start|0,r=t.end-t.start|0,i=n<r?n:r,a=0;for(;;){let n=a;if(n<i){let r=zt(Y(e,n),Y(t,n));if(r!==0)return r;a=n+1|0;continue}else break}return zt(n,r)}function kh(e){return e===e?e:e<0?-Uo:Uo}function Ah(e,t){Z(t,1);let n=mf(e);for(;;){let e=rl(n);if(e===-1)break;{let n=e;Z(t,n),n===0&&Z(t,255);continue}}Z(t,0)}function jh(e,t){Z(t,2);let n=e.bytes,r=n.length,i=0;for(;;){let e=i;if(e<r){let r=n[e];Z(t,r),r===0&&Z(t,255),i=e+1|0;continue}else break}Z(t,0)}function Mh(e,t){Z(t,33);let n=kh(e),r=wh(n<0?rf(Sh(n),ft):rf(Sh(n),ir)),i=r.length,a=0;for(;;){let e=a;if(e<i){let n=r[e];Z(t,n),a=e+1|0;continue}else return}}function Nh(e){let t=[],n=e;for(;Cc(n,0n);)I(t,Wr(Mm(n,256n))&255),n=jm(n,256n);let r=Nf(t);return bf({buf:r,start:0,end:r.length})}function Ph(e,t){if(Dm(e,0n)){Z(t,20);return}let n=Cc(e,0n),r=Nh(n?e:Om(e)),i=r.length;if(n===!1){i<=8?Z(t,(20-(i&255)|0)&255):(Z(t,11),i>255&&gs(`n is too large`,`@zxch3n/flock/memcomparable:bigint.mbt:33:11-33:34`),Z(t,(i&255^255)&255));let e=rp(0),n=0;for(;;){let t=n;if(t<r.length){C(r,t);let i=r[t];Z(e,(i^255)&255),n=t+1|0;continue}else break}ip(t,op(e));return}else{i<=8?Z(t,(20+(i&255)|0)&255):(Z(t,29),i>255&&gs(`n is too large`,`@zxch3n/flock/memcomparable:bigint.mbt:49:11-49:34`),Z(t,i&255)),ip(t,r);return}}function Fh(e,t){switch(e.$tag){case 0:{let n=e._0;Ah(X(n,0,n.length),t);return}case 1:{let n=e._0;jh(n,t);return}case 2:{let n=e._0;Ph(n,t);return}case 3:{let n=e._0;Mh(n,t);return}case 4:Z(t,38);return;default:Z(t,39);return}}function Ih(e){let t=rp(0),n=e.parts,r=n.length,i=0;for(;;){let e=i;if(e<r){let r=n[e];Fh(r,t),i=e+1|0;continue}else break}return op(t)}function Lh(e,t){let n=rp(0),r=t;for(;r<(e.end-e.start|0);){let t=Y(e,r);if(r=r+1|0,t===0){let t;if(t=r<(e.end-e.start|0)?Y(e,r)===255:!1,t){Z(n,0),r=r+1|0;continue}else{let e=op(n);return new _i({_0:X(e,0,e.length),_1:r})}}Z(n,t)}return new gi(Kt)}function Rh(e){let t=Ir(b),n=Ir(s),r=(e.end-e.start|0)-1|0;for(;;){let i=r;if(i>=0){let a=Ir(j(Y(e,i)));t=km(t,Am(n,a)),n=Am(n,Ir(vi)),r=i-1|0;continue}else break}return t}function zh(e,t){let n;if(n=20<=t?t<=28:!1,n){let n=(t-20|0)&255;if((e.end-e.start|0)<n)return new yi(Kt);let r=pf(e,0,n);return new bi({_0:pf(e,n,void 0),_1:Rh(r)})}else{let n;if(n=12<=t?t<20:!1,n){let n=(20-t|0)&255;if((e.end-e.start|0)<n)return new yi(Kt);let r=pf(e,0,n),i=pf(e,n,void 0),a=rp(0),o=0;for(;;){let e=o;if(e<(r.end-r.start|0)){Z(a,(Y(r,e)^255)&255),o=e+1|0;continue}else break}let s=op(a);return new bi({_0:i,_1:Om(Rh(X(s,0,s.length)))})}else if(t===11){if((e.end-e.start|0)<1)return new yi(Kt);let t=(Y(e,0)^255)&255;if((e.end-e.start|0)<(t+1|0))return new yi(Kt);let n=pf(e,1,t+1|0),r=pf(e,t+1|0,void 0),i=rp(0),a=0;for(;;){let e=a;if(e<(n.end-n.start|0)){Z(i,(Y(n,e)^255)&255),a=e+1|0;continue}else break}let o=op(i);return new bi({_0:r,_1:Om(Rh(X(o,0,o.length)))})}else if(t===29){if((e.end-e.start|0)<1)return new yi(Kt);let t=Y(e,0);if((e.end-e.start|0)<(t+1|0))return new yi(Kt);let n=pf(e,1,t+1|0);return new bi({_0:pf(e,t+1|0,void 0),_1:Rh(n)})}else return new yi(new Gt(t))}}function Bh(e,t){if((t+8|0)>(e.end-e.start|0))return new xi(Kt);let n=Al(0),r=0;for(;;){let i=r;if(i<8){I(n,Y(e,t+i|0)),r=i+1|0;continue}else break}let i=Th(bf({buf:n,start:0,end:n.length}));return new Si({_0:G(K(i,ir),b)?Ch(rf(i,ft)):Ch(rf(i,ir)),_1:t+8|0})}function Vh(e){let t=Eh(),n=0;for(;n<(e.end-e.start|0);){let r=Y(e,n);if(n=n+1|0,r===2){let r=Lh(e,n),i;if(r.$tag===1)i=r._0;else return r;let a=i._0,o=i._1,s=gh(a);if(s===void 0)return new ki(qt);Dh(t,new wi(s)),n=o}else if(r===1){let r=Lh(e,n),i;if(r.$tag===1)i=r._0;else return r;let a=i._0,o=i._1;Dh(t,new Ci(xf(hf(a)))),n=o}else if(r>=11&&r<=29){let i=zh(pf(e,n,void 0),r),a;if(i.$tag===1)a=i._0;else return i;let o=a._0,s=a._1;Dh(t,new Ti(s)),n=(e.end-e.start|0)-(o.end-o.start|0)|0}else if(r===33){let r=Bh(e,n),i;if(r.$tag===1)i=r._0;else return r;let a=i._0,o=i._1;Dh(t,new Ei(a)),n=o}else if(r===38)Dh(t,Di);else if(r===39)Dh(t,Oi);else return new ki(new Gt(r))}return new Ai(t)}function Hh(e){switch(e.$tag){case 3:{let t=e._0;return uf(t)+0===t?new Ti(Fr(uf(t))):new Ei(t)}case 4:{let t=e._0;return new wi(mh(t))}case 1:return Oi;case 2:return Di;default:return}}function Uh(e){switch(e.$tag){case 3:{let t=e._0;return new r(t,void 0)}case 2:{let t=e._0;return new r(Jd(Pm(t)),void 0)}case 1:{let t=e._0;return new i(vh(t))}case 5:return t;case 4:return n;default:return}}function Wh(e){let t=Eh(),n=e.length,r=0;for(;;){let i=r;if(i<n){let n=e[i],a=Hh(n);if(a===void 0)return;let o=t.parts,s;s=a===void 0?S():a,Ll(o,s),r=i+1|0;continue}else break}return Ih(t)}function Gh(e){let t;_L:{_L$2:{let n=Vh(X(e,0,e.length));if(n.$tag===1)t=n._0;else{n._0;break _L$2}break _L}t=Ss(`Failed to decode key`,`@zxch3n/flock/memcomparable:codec.mbt:416:48-416:77`)}let n=El(0),r=t.parts,i=r.length,a=0;for(;;){let e=a;if(e<i){let t=r[e],i=Uh(t),o;o=i===void 0?S():i,Nl(n,o),a=e+1|0;continue}else break}return n}function Kh(e,t){let n=t;for(;;){let t=n;if(t===void 0)return;{let r=t;Kh(e,r.left),e(r.key,r.value),n=r.right;continue}}}function qh(e,t){Kh(t,e.root)}function Jh(e){let t=kl(e.size);return qh(e,(e,n)=>{zl(t,{_0:e,_1:n})}),t}function Yh(){return{root:void 0,size:0}}function Xh(){return{root:void 0,size:0}}function Zh(e,t){if(t===void 0)return!0;{let n=t;return e===void 0?!1:e.height>=n.height}}function Qh(e,t){if(t===void 0)return!0;{let n=t;return e===void 0?!1:e.height>=n.height}}function $h(e){let t=e.left,n;n=t===void 0?0:t.height;let r=e.right,i;i=r===void 0?0:r.height,e.height=1+(n>i?n:i)|0}function eg(e){let t=e.left,n;n=t===void 0?0:t.height;let r=e.right,i;i=r===void 0?0:r.height,e.height=1+(n>i?n:i)|0}function tg(e){let t=e.right,n;return n=t===void 0?S():t,e.right=n.left,n.left=e,$h(e),$h(n),n}function ng(e){let t=e.right,n;return n=t===void 0?S():t,e.right=n.left,n.left=e,eg(e),eg(n),n}function rg(e){let t=e.left,n;return n=t===void 0?S():t,e.left=n.right,n.right=e,$h(e),$h(n),n}function ig(e){let t=e.left,n;return n=t===void 0?S():t,e.left=n.right,n.right=e,eg(e),eg(n),n}function ag(e){let t=e.left,n;return n=t===void 0?S():t,e.left=tg(n),rg(e)}function og(e){let t=e.left,n;return n=t===void 0?S():t,e.left=ng(n),ig(e)}function sg(e){let t=e.right,n;return n=t===void 0?S():t,e.right=rg(n),tg(e)}function cg(e){let t=e.right,n;return n=t===void 0?S():t,e.right=ig(n),ng(e)}function lg(e){let t=e.left,n=e.right,r;r=t===void 0?0:t.height;let i;i=n===void 0?0:n.height;let a;if(r>(i+1|0)){let n;n=t===void 0?S():t;let r=n.left,i=n.right;a=Zh(r,i)?rg(e):ag(e)}else if(i>(r+1|0)){let t;t=n===void 0?S():n;let r=t.left,i=t.right;a=Zh(i,r)?tg(e):sg(e)}else a=e;return $h(a),a}function ug(e){let t=e.left,n=e.right,r;r=t===void 0?0:t.height;let i;i=n===void 0?0:n.height;let a;if(r>(i+1|0)){let n;n=t===void 0?S():t;let r=n.left,i=n.right;a=Qh(r,i)?ig(e):og(e)}else if(i>(r+1|0)){let t;t=n===void 0?S():n;let r=t.left,i=t.right;a=Qh(i,r)?ng(e):cg(e)}else a=e;return eg(a),a}function dg(e,t){return{key:e,value:t,left:void 0,right:void 0,height:1}}function fg(e,t){return{key:e,value:t,left:void 0,right:void 0,height:1}}function pg(e,t,n){if(e===void 0)return{_0:dg(t,n),_1:!0};{let r=e;if(fh(t,r.key))return r.value=n,{_0:r,_1:!1};{let e=r.left,i=r.right;if(_c(t,r.key)){let i=pg(e,t,n),a=i._0,o=i._1;return r.left=a,{_0:lg(r),_1:o}}else{let e=pg(i,t,n),a=e._0,o=e._1;return r.right=a,{_0:lg(r),_1:o}}}}}function mg(e,t,n){if(e===void 0)return{_0:fg(t,n),_1:!0};{let r=e;if(dh(t,r.key))return r.value=n,{_0:r,_1:!1};{let e=r.left,i=r.right;if(vc(t,r.key)){let i=mg(e,t,n),a=i._0,o=i._1;return r.left=a,{_0:ug(r),_1:o}}else{let e=mg(i,t,n),a=e._0,o=e._1;return r.right=a,{_0:ug(r),_1:o}}}}}function hg(e,t,n){let r=pg(e.root,t,n),i=r._0,a=r._1;if(Rs(e.root,i)&&(e.root=i),a){e.size=e.size+1|0;return}else return}function gg(e,t,n){let r=mg(e.root,t,n),i=r._0,a=r._1;if(zs(e.root,i)&&(e.root=i),a){e.size=e.size+1|0;return}else return}function _g(e,t){let n=e.root;for(;;){let e=n;if(e===void 0)return;{let r=e,i=xh(t,r.key);if(i===0)return r.value;if(i>0){n=r.right;continue}else{n=r.left;continue}}}}function vg(e,t){let n=e.root;for(;;){let e=n;if(e===void 0)return Li;{let r=e,i=bh(t,r.key);if(i===0)return new Ri(r.value);if(i>0){n=r.right;continue}else{n=r.left;continue}}}}function yg(e,t){let n=e.root;for(;;){let r=n;if(r===void 0)return{_0:void 0,_1:n=>{gg(e,t,n)}};{let e=r,i=xh(t,e.key);if(i===0)return{_0:e.value,_1:t=>{e.value=t}};if(i>0){n=e.right;continue}else{n=e.left;continue}}}}function bg(e,t){let n=e.root;for(;;){let e=n;if(e===void 0)return S();{let r=e,i=bh(t,r.key);if(i===0)return r.value;if(i>0){n=r.right;continue}else{n=r.left;continue}}}}function xg(e,t){return vg(e,t).$tag===1}function Sg(e,t){let n=t;for(;;){let t=n;if(t===void 0)return 1;{let r=t,i=r.left,a=r.right,o=r.key,s=r.value;if(Sg(e,i)===0||e(o,s)===0)return 0;n=a;continue}}}function Cg(e){return t=>Sg(t,e.root)}function wg(e,t){let n=t;for(;;){let t=n;if(t===void 0)return 1;{let r=t,i=r.left,a=r.right,o=r.key,s=r.value;if(wg(e,i)===0||e(o,s)===0)return 0;n=a;continue}}}function Tg(e){return t=>wg(t,e.root)}function Eg(e,t){let n=e._4,r=e._3,i=e._2,a=e._1,o=e._0,s=t;for(;;){let t=s;if(t===void 0)return 1;{let c=t,l=c.left,u=c.right,d=c.key,f=c.value,p;switch(r.$tag){case 2:p=o;break;case 0:{let e=r._0,t=xh(d,e);p={_0:t>0,_1:t>=0};break}default:{let e=r._0,t=xh(d,e);p={_0:t>0,_1:t>0}}}let m=p._0,h=p._1,g;switch(a.$tag){case 2:g=i;break;case 0:{let e=a._0,t=xh(d,e);g={_0:t<0,_1:t<=0};break}default:{let e=a._0,t=xh(d,e);g={_0:t<0,_1:t<0}}}let _=g._0,v=g._1;_L:if(m){if(Eg(e,l)===0)return 0;break _L}else break _L;_L$2:if(h)if(v){if(n(d,f)===0)return 0;break _L$2}else break _L$2;else break _L$2;if(_){s=u;continue}else return 1}}}function Dg(e,t,n){return r=>Eg({_0:Fo,_1:n,_2:Io,_3:t,_4:r},e.root)}function Og(e,t){return fh(e.key,t.key)}function kg(e,t){return dh(e.key,t.key)}function Ag(e){let t=mh(e);if(!(t.bytes.length>=128))return t}function jg(e,t){return{physical_time:e,logical_counter:t}}function Mg(){return{seq:0,subscribers:Du(8)}}function Ng(e,t){let n=e.seq;return Wu(e.subscribers,e.seq,t),e.seq=e.seq+1|0,()=>{Zu(e.subscribers,n)}}function Pg(e,t){let n=e.subscribers.head;for(;;){let e=n;if(e===void 0)return;{let r=e;r.key;let i=r.value,a=r.next;i(t),n=a;continue}}}function Fg(e){return e.subscribers.size===0}function Ig(e){let t=``,n=0;for(;;){let r=n;if(r<e.length){C(e,r);let i=e[r],a=wf(i,4)&15,o=i&15,s=Jl(a<10?a+48|0:(a-10|0)+97|0),c=Jl(o<10?o+48|0:(o-10|0)+97|0);t=`${t}${s}`,t=`${t}${c}`,n=r+1|0;continue}else break}return t}function Lg(e){if((e.end-e.start|0)%2|0){ff(`Invalid hex length: ${Bc(e.end-e.start|0)}`);return}let t=[],n=0;for(;;){let r=n;if(r<(e.end-e.start|0)){let i=Kc(e,r),a=Kc(e,r+1|0),o=0;if(i>=48&&i<=57)o=o+(Math.imul(i-48|0,16)|0)|0;else if(i>=97&&i<=102)o=o+(Math.imul((i-97|0)+10|0,16)|0)|0;else if(i>=65&&i<=70)o=o+(Math.imul((i-65|0)+10|0,16)|0)|0;else{ff(`Invalid hex character: ${Bc(i)}`);return}if(a>=48&&a<=57)o=o+(a-48|0)|0;else if(a>=97&&a<=102)o=o+((a-97|0)+10|0)|0;else if(a>=65&&a<=70)o=o+((a-65|0)+10|0)|0;else{ff(`Invalid hex character: ${Bc(a)}`);return}I(t,o&255),n=r+2|0;continue}else break}return bf({buf:t,start:0,end:t.length})}function Rg(e){if(e.bytes.length>=128){gs(`peer id must be less than 128 bytes`,`@zxch3n/flock/flock:flock.mbt:27:5-27:49`);return}else return}function zg(e){return vh(e)}function Bg(e,t){let n=e.hlc,r=t.hlc;return n.physical_time===r.physical_time&&n.logical_counter===r.logical_counter?fh(e.peer,t.peer):!1}function Vg(e,t){let n=e.hlc,r=t.hlc,i=n.physical_time<r.physical_time?-1:n.physical_time>r.physical_time?1:zt(n.logical_counter,r.logical_counter);return i===0?bh(e.peer,t.peer):i}function Hg(e){return`${Vc(e.physical_time)},${Bc(e.logical_counter)}`}function Ug(e){return`${Hg(e.hlc)},${zg(e.peer)}`}function Wg(e){let t=Ql(Yl(e,{str:`,`,start:0,end:1}));if(t.length<3)return;let n=$c(Ys(t,2)),r=3;for(;;){let e=r;if(e<t.length){n=`${n},${$c(Ys(t,e))}`,r=e+1|0;continue}else break}let i=Ag(n),a;if(i===void 0)return;a=i;let o=Ys(t,0),s=Ys(t,1),c;_L:{_L$2:{let e=$c(o),t=xm({str:e,start:0,end:e.length},1024),n;if(t.$tag===1)n=t._0;else{t._0;break _L$2}c=vu(Tm(n));break _L}c=S()}let l=c,u;_L$2:{_L$3:{let e=$c(s),t=xm({str:e,start:0,end:e.length},1024),n;if(t.$tag===1)n=t._0;else{t._0;break _L$3}u=uf(vu(Tm(n)));break _L$2}u=S()}return{hlc:{physical_time:l,logical_counter:u},peer:a}}function Gg(e){return{bytes:e}}function Kg(e){let t=$m(e.digest),n=Lg({str:t,start:0,end:t.length});if(n===void 0)return Os(`unexpected digest hex parse failure`,`@zxch3n/flock/flock:digest.mbt:114:13-114:57`);{let e=n,t=un(32,0),r=0;for(;;){let n=r;if(n<32){C(e,n),C(t,n),t[n]=e[n],r=n+1|0;continue}else break}return Gg(t)}}function qg(){return{digest:Km()}}function Jg(e,t){let n=0;for(;;){let r=n;if(r<(t.end-t.start|0)){Zm(e.digest,Y(t,r)),n=r+1|0;continue}else return}}function Yg(e,t){let n=eh(t);Jg(e,X(n,0,n.length))}function Xg(e,t){Yg(e,fc(t.end-t.start|0)),Jg(e,t)}function Zg(e,t){let n=e.length,r=t.length,i=n<r?n:r,a=0;for(;;){let n=a;if(n<i){C(e,n);let r=e.charCodeAt(n);C(t,n);let i=t.charCodeAt(n);if(bc(r,i))return-1;if(Tc(r,i))return 1;a=n+1|0;continue}else break}return n<r?-1:n>r?1:0}function Qg(e){let t=0;for(;;){let n=t;if(n<e.length){let r=n,i=n+1|0;for(;;){let t=i;if(t<e.length){Zg(Zs(e,t)._0,Zs(e,r)._0)<0&&(r=t),i=t+1|0;continue}else break}if(r!==n){let t=Zs(e,n);Cf(e,n,Zs(e,r)),Cf(e,r,t)}t=n+1|0;continue}else return}}function $g(e,t){let n=t?1:0;Zm(e.digest,n&255)}function e_(e,t){let n=eh(t);Jg(e,X(n,0,n.length))}function t_(e,t){e_(e,Zd(t))}function n_(e,t){let n=th(t);Jg(e,X(n,0,n.length))}function r_(e,t){let n=mh(t).bytes;Xg(e,X(n,0,n.length))}function i_(e,t){Zm(e.digest,t)}function a_(e,t){switch(t.$tag){case 0:i_(e,32);return;case 1:i_(e,33),$g(e,!0);return;case 2:i_(e,33),$g(e,!1);return;case 3:{let n=t._0;i_(e,34),t_(e,n);return}case 4:{let n=t._0;i_(e,35),r_(e,n);return}case 5:{let n=t._0;i_(e,36),Yg(e,fc(n.length));let r=0;for(;;){let t=r;if(t<n.length){a_(e,Gs(n,t)),r=t+1|0;continue}else return}}default:{let n=t._0;i_(e,37);let r=Ml(0),i=n.head;for(;;){let e=i;if(e===void 0)break;{let t=e,n=t.key,a=t.value,o=t.next;Hl(r,{_0:n,_1:a}),i=o;continue}}Qg(r),Yg(e,fc(r.length));let a=0;for(;;){let t=a;if(t<r.length){let n=Zs(r,t),i=n._0,o=n._1;r_(e,i),a_(e,o),a=t+1|0;continue}else return}}}}function o_(e,t){i_(e,16);let n=t.data;if(n===void 0)$g(e,!1);else{let t=n;$g(e,!0),a_(e,t)}i_(e,18);let r=t.metadata;if(r===void 0)$g(e,!1);else{let t=r;$g(e,!0);let n=Ml(0),i=t.head;for(;;){let e=i;if(e===void 0)break;{let t=e,r=t.key,a=t.value,o=t.next;Hl(n,{_0:r,_1:a}),i=o;continue}}Qg(n),Yg(e,fc(n.length));let a=0;for(;;){let t=a;if(t<n.length){let r=Zs(n,t),i=r._0,o=r._1;r_(e,i),a_(e,o),a=t+1|0;continue}else break}}i_(e,17),t_(e,t.clock.hlc.physical_time),n_(e,j(t.clock.hlc.logical_counter));let i=t.clock.peer.bytes;Xg(e,X(i,0,i.length))}function s_(){return{bytes:un(32,0)}}function c_(e,t){if(t.data===void 0)return s_();let n=qg(),r=e;return Xg(n,X(r,0,r.length)),o_(n,t),Kg(n)}function l_(e){return c_(e.key,e.value)}function u_(e,t){return{key:e,value:t,overridden:!1}}function d_(e,t){if(dh(e.key,t.key)){let n;if(mu(e.value.data,t.value.data)){let r;if(hu(e.value.metadata,t.value.metadata)){let n;if(fh(e.value.clock.peer,t.value.clock.peer)){let r=e.value.clock.hlc,i=t.value.clock.hlc;n=r.physical_time===i.physical_time&&r.logical_counter===i.logical_counter}else n=!1;r=n}else r=!1;n=r}else n=!1;return n}else return!1}function f_(e,t,n){let r=e.digest;if(r!==void 0){let e=r.pending;if(t===void 0||Bl(e,t),n===void 0)return;Bl(e,n);return}}function p_(e,t,n){let r=t.key,i=t.value.clock.peer,a=yg(e.kv,r),o=a._0,s=a._1,c;if(o===void 0)c=!0;else{let e=o;c=Sc(t.value.clock,e.value.clock)||n&&mu(t.value.data,e.value.data)}if(!c)return!1;let l;if(o!==void 0){let e=o;l=l_(e),e.overridden=!0}let u=xu(t.value.data,e=>l_(t));s(t),xg(e.updates,i)||hg(e.updates,i,[]);let d=bg(e.updates,i),f=!1,p=If(d);if(p!==void 0&&Sc(p.value.clock,t.value.clock)){f=!0;let e=d.length-2|0;for(;;){let n=e;if(n>=0){if(gc(Hs(d,n).value.clock,t.value.clock)){Af(d,n+1|0,t);break}e=n-1|0;continue}else{Af(d,0,t);break}}}return f||Rl(d,t),f_(e,l,u),!0}function m_(e){let t=L(8),n=e.head;for(;;){let e=n;if(e===void 0)break;{let r=e,i=r.key,a=r.value,o=r.next;R(t,i,a),n=o;continue}}return t}function h_(e){let t=e.metadata,n;return n=t===void 0?void 0:m_(t),{data:e.data,metadata:n,clock:e.clock}}function g_(e){let t=L(8),n=e.data;n===void 0||R(t,`d`,n),R(t,`c`,new i(Ug(e.clock)));let r=e.metadata;return r===void 0||R(t,`m`,B(m_(r))),B(t)}function __(e){if(e.$tag===6){let t=e._0,n;_L:{_L$2:{let e=Ku(t,`c`);if(e===void 0)break _L$2;{let t=e;if(t.$tag===4){let e=t._0,r=Wg({str:e,start:0,end:e.length});if(r===void 0)return;n=r}else break _L$2}break _L}return}let r=Ku(t,`d`),i=Ku(t,`m`),a;if(i===void 0)a=void 0;else{let e=i;switch(e.$tag){case 6:{let t=e._0;a=m_(t);break}case 0:a=void 0;break;default:return}}return{data:r,metadata:a,clock:n}}else return}function v_(e){let t=e.metadata,n;return n=t===void 0?L(8):m_(t),{data:e.data,metadata:n,clock:e.clock}}function y_(e){let t=Ag(e),n;n=t===void 0?ms(`peer id must be less than 128 bytes`,`@zxch3n/flock/flock:flock.mbt:384:13-384:57`):t,Rg(n);let r=Eu(8),i=Yh(),a=Xh(),o=Mg();return{peer_id:n,max_hlc:zo,vv:r,kv:i,updates:a,subscribers:o,digest:void 0,txn_events:zi}}function b_(e,t){let n=Ag(t),r;r=n===void 0?ms(`peer id must be less than 128 bytes`,`@zxch3n/flock/flock:flock.mbt:403:13-403:57`):n,Rg(r),e.peer_id=r}function x_(e,t){let n=Jh(e.kv),r=Jh(t.kv);if(n.length!==r.length)return!1;let i=0;for(;;){let e=i;if(e<n.length){let t=Ks(n,e),a=t._0,o=t._1,s=Ks(r,e),c=s._0,l=s._1;if(Fs(a,c)||!d_(o,l))return!1;i=e+1|0;continue}else break}return!0}function S_(e){}function C_(e,t,n,r,i,a,o){let s=Wh(t);if(s===void 0)return new Vi(new Ut(z(t)));{let t=s;if(o){let i=_g(e.kv,t);if(i===void 0){if(n===void 0&&r===void 0)return new Hi(void 0)}else{let e=i;if(mu(e.value.data,n)&&hu(e.value.metadata,r))return new Hi(void 0)}}let c=yu(i,()=>pd(Fm()));c>e.max_hlc.physical_time?e.max_hlc={physical_time:c,logical_counter:0}:e.max_hlc={physical_time:e.max_hlc.physical_time,logical_counter:e.max_hlc.logical_counter+1|0};let l={hlc:e.max_hlc,peer:e.peer_id},u;u=r===void 0?void 0:m_(r);let d=u_(t,{data:n,metadata:u,clock:l}),f;if(a===void 0)f=h_(d.value);else{let e=a(d);f=h_(e===void 0?d.value:e.value)}let p=u_(t,{data:f.data,metadata:f.metadata,clock:l});if(!p_(e,p,!0))return new Hi(void 0);let m=p.value.clock.hlc;e.max_hlc=m,Uu(e.vv,zg(e.peer_id),m);let h=e.txn_events;if(h.$tag===1){let e=h._0;return new Hi(Fl(e,{_0:Gh(p.key),_1:h_(p.value)}))}else if(Fg(e.subscribers))return new Hi(void 0);else{let t=Gh(p.key),n=h_(p.value);return new Hi(Pg(e.subscribers,{by:jt,events:[{_0:t,_1:n}]}))}}}function w_(e,t,n,r,i,a,o){let s;s=r.$tag===1?r._0:void 0;let c;c=i===void 0?or:i;let l;return l=a.$tag===1?a._0:void 0,C_(e,t,n,s,c,l,o===-1?!0:o)}function T_(e,t,n,r,i,a){return C_(e,t,n,r,i,a,!0)}function E_(e,t,n,r,i,a){let o;o=r.$tag===1?r._0:void 0;let s;s=i===void 0?or:i;let c;return c=a.$tag===1?a._0:void 0,T_(e,t,n,o,s,c)}function D_(e,t,n,r){return E_(e,t,n,Ui,r,Gi)}function O_(e,t,n){return w_(e,t,void 0,Ui,n,Gi,!0)}function k_(e){if(e.txn_events.$tag===0){e.txn_events=new Bi([]);return}else{gs(`Nested transactions are not supported`,`@zxch3n/flock/flock:flock.mbt:601:5-601:51`);return}}function A_(e){let t=e.txn_events;if(t.$tag===1){let n=t._0;if(e.txn_events=zi,n.length>0&&!Fg(e.subscribers)){Pg(e.subscribers,{by:jt,events:n});return}else return}else{gs(`No active transaction to commit`,`@zxch3n/flock/flock:flock.mbt:611:5-611:45`);return}}function j_(e){if(e.txn_events.$tag===1){e.txn_events=zi;return}else{gs(`No active transaction to rollback`,`@zxch3n/flock/flock:flock.mbt:625:5-625:47`);return}}function M_(e){return e.txn_events.$tag===1}function N_(e,t){let n=Wh(t);if(n!==void 0){let t=n;return Cu(_g(e.kv,t),e=>e.value.data)}}function P_(e,t){let n=Wh(t);if(n!==void 0){let t=n;return bu(_g(e.kv,t),e=>v_(e.value))}}function F_(){return e=>1}function I_(e){if(!(e.end-e.start|0))return;let t=Al(e.end-e.start|0),n=0;for(;;){let r=n;if(r<(e.end-e.start|0)){I(t,Y(e,r)),n=r+1|0;continue}else break}let r=t.length-1|0;for(;;){let e=r;if(e>=0){let n=Js(t,e);if(n<255){Sf(t,e,(n+1|0)&255);let r=Al(e+1|0),i=0;for(;;){let n=i;if(n<=e){I(r,Js(t,n)),i=n+1|0;continue}else break}return bf({buf:r,start:0,end:r.length})}r=e-1|0;continue}else break}}function L_(e,t,n){let r=e._1,i=e._0,a=r.val;if(a===void 0){r.val=t,i.val=n;return}else{let e=a,o=Oh(X(t,0,t.length),X(e,0,e.length));if(o>0){r.val=t,i.val=n;return}else if(o===0){i.val=i.val&&n;return}else return}}function R_(e,t,n){let r=e._1,i=e._0,a=r.val;if(a===void 0){r.val=t,i.val=n;return}else{let e=a,o=Oh(X(t,0,t.length),X(e,0,e.length));if(o<0){r.val=t,i.val=n;return}else if(o===0){i.val=i.val&&n;return}else return}}function z_(e,t,n,r){let i={val:El(0)},a={val:!1},o,s;if(r.$tag===1){let e=r._0;i.val=jf(e),a.val=!0;let t=Wh(e);if(t===void 0)return F_();{let e=t;s=I_(X(e,0,e.length)),o=e}}let c;switch(t.$tag){case 0:{let e=t._0,n=Wh(e);if(n===void 0)return F_();c=new qi(n);break}case 1:{let e=t._0,n=Wh(e);if(n===void 0)return F_();c=new Ji(n);break}default:c=Yi}let l;switch(n.$tag){case 0:{let e=n._0,t=Wh(e);if(t===void 0)return F_();l=new qi(t);break}case 1:{let e=n._0,t=Wh(e);if(t===void 0)return F_();l=new Ji(t);break}default:l=Yi}let u={val:void 0},d={val:!0},f={_0:d,_1:u},p=o;switch(p===void 0||L_(f,p,!0),c.$tag){case 0:{let e=c._0;L_(f,e,!0);break}case 1:{let e=c._0;L_(f,e,!1);break}}let m=u.val,h;if(m===void 0)h=Ii;else{let e=m;h=d.val?new Pi(e):new Fi(e)}let g={val:void 0},_={val:!0},v={_0:_,_1:g},y=s;switch(y===void 0||R_(v,y,!1),l.$tag){case 0:{let e=l._0;R_(v,e,!0);break}case 1:{let e=l._0;R_(v,e,!1);break}}let ee=g.val,te;if(ee===void 0)te=Ii;else{let e=ee;te=_.val?new Pi(e):new Fi(e)}let ne=Dg(e.kv,h,te);return e=>_d(ne,(t,n)=>{let r=Gh(t);if(a.val){if(i.val.length>r.length)return 1;let e=!0,t=0;for(;;){let n=t;if(n<i.val.length){if(Ls(Gs(i.val,n),Gs(r,n))){e=!1;break}t=n+1|0;continue}else break}if(!e)return 1}return e(r,n)===0?0:1})}function B_(e,t,n,r){let i;i=t===void 0?Ni:t;let a;return a=n===void 0?Ni:n,z_(e,i,a,r)}function V_(e,t){return Ng(e.subscribers,t)}function H_(e){return zg(e.peer_id)}function U_(e){let t=Eu(8);return Cg(e.updates)((e,n)=>{let r=n.length-1|0;for(;;){let i=r;if(i>=0){let a=Hs(n,i);if(!a.overridden){Uu(t,zg(e),a.value.clock.hlc);break}r=i-1|0;continue}else break}return 1}),t}function W_(e){return od(e.vv)}function G_(e,t,n,r){let i=vg(r.updates,t);if(i.$tag===1){let t=i._0,a=0;for(;;){let i=a;if(i<t.length){_L:{let a=Hs(t,i);if(a.overridden)break _L;_L$2:{_L$3:{let t=_g(r.kv,a.key);if(t===void 0)break _L$3;if(Bg(t.value.clock,a.value.clock)){if(n.$tag===1){let e=n._0;if(a.value.data===void 0&&a.value.clock.hlc.physical_time<e)break _L}let t=Gh(a.key),r=a.value;R(e,wm(z(t),!1,0,void 0),g_(r))}else break _L$3;break _L$2}break _L}break _L}a=i+1|0;continue}else return}}else return}function K_(e,t,n,r,i){let a=vg(i.updates,t);if(a.$tag===1){let t=a._0,i=Pf(t,e=>{let t=e.value.clock.hlc;return t.physical_time<n.physical_time?-1:t.physical_time>n.physical_time?1:zt(t.logical_counter,n.logical_counter)}),o;o=i.$tag===1?i._0+1|0:i._0;let s=o;for(;;){let n=s;if(n<t.length){_L:{let i=Hs(t,n);if(i.overridden)break _L;if(r.$tag===1){let e=r._0;if(i.value.data===void 0&&i.value.clock.hlc.physical_time<e)break _L}let a=Gh(i.key),o=i.value;R(e,wm(z(a),!1,0,void 0),g_(o));break _L}s=n+1|0;continue}else return}}else return}function q_(e,t,n,i){let a=L(8),s;if(i===void 0)s=void 0;else{let e=Ag(i);s=e===void 0?void 0:e}R(a,`version`,new r(0,void 0));let c=L(8);if(s===void 0)_L:{_L$2:{if(t===void 0)break _L$2;{let r=t;if(r.size!==0){let t=Xi;rd(e.vv)((t,i)=>{let a=Gu(r,t),o;if(o=a===void 0?Ro:a,kc(o,i))return 1;let s=Ag(t),l;return s===void 0?1:(l=s,K_(c,l,o,n,e),1)});let i=t;switch(i.$tag){case 0:break;case 1:i._0;break;case 2:return i._0;case 3:S();break;default:S()}}else break _L$2}break _L}Tg(e.kv)((e,t)=>{let n=Gh(e),r=t.value;return R(c,wm(z(n),!1,0,void 0),g_(r)),1})}else{let r=s;_L:{_L$2:{if(t===void 0)break _L$2;{let i=t;if(i.size!==0){let t=zg(r),a=Gu(i,t),o;o=a===void 0?Ro:a;_L$3:_L$4:{let i=Gu(e.vv,t);if(i===void 0)break _L$4;if(hc(o,i))K_(c,r,o,n,e);else break _L$4;break _L$3}}else break _L$2}break _L}G_(c,r,n,e)}}return R(a,`entries`,new o(c)),new o(a)}function J_(e,t,n,r){let i;i=n===void 0?or:n;let a;return a=r.$tag===1?r._0:void 0,q_(e,t,i,a)}function Y_(e,t,n){let r=e.txn_events;if(r.$tag===1){let n=r._0;return e.txn_events=zi,n.length>0&&!Fg(e.subscribers)&&Pg(e.subscribers,{by:jt,events:n}),new ta(new Ht(t,`import called during transaction - transaction was auto-committed`))}if(t.$tag===6){let r=t._0,i;_L:{_L$2:{let e=Ku(r,`version`);if(e===void 0)return new ta(new Ht(t,`The imported json does not contain a version field`));{let t=e;if(t.$tag===3){if(t._0!==0){i=t;break _L$2}}else{i=t;break _L$2}}break _L}return new ta(new Ht(t,`The imported json uses an unsupported version ${zc(i)}`))}let a={val:zi};Fg(e.subscribers)||(a.val=new Bi(Dl(0)));let o=Ol(0),s={val:0},c;_L$2:{_L$3:{let e=Ku(r,`entries`);if(e===void 0)break _L$3;{let t=e;if(t.$tag===6)c=t._0;else break _L$3}break _L$2}return new ta(new Ht(t,`entries is not an object`))}let l={val:ra};id(c)((r,i)=>{let c;_L$3:{let l=__(i),u;if(l===void 0){c=new Ht(t,`value is not a raw value`);break _L$3}else u=l;let d;_L$4:{_L$5:{let e=xm({str:r,start:0,end:r.length},1024);if(e.$tag===1)d=e._0;else{e._0;break _L$5}break _L$4}d=S()}if(d.$tag===5){let r=d._0,i=El(0),l=0;for(;;){let e=l;if(e<r.length){Nl(i,Gs(r,e)),l=e+1|0;continue}else break}let f=Wh(i);if(f===void 0){c=new Ht(t,`key is not a valid key`);break _L$3}else{let t=u_(f,u),r;if(n===void 0)r=t;else{let e=n(t);if(e.$tag===0)r=t;else{let t=e._0;return Pl(o,{key:jf(i),reason:t}),1}}s.val=s.val+1|0;let c=r.value.clock.peer,l=r.value.clock.hlc,d=p_(e,r,!1);hc(e.max_hlc,l)&&(e.max_hlc=l);let p=zg(c),m=Gu(e.vv,p);if(m===void 0)Uu(e.vv,p,l);else{let t=m;(t.physical_time<l.physical_time?-1:t.physical_time>l.physical_time?1:zt(t.logical_counter,l.logical_counter))<0&&Uu(e.vv,p,l)}if(d){let e=a.val;if(e.$tag===1){let t=e._0;Fl(t,{_0:Gh(r.key),_1:h_(r.value)})}}}}else{c=new Ht(t,`key is not an array json`);break _L$3}return 1}return l.val=new oa(c),0});let u=l.val;switch(u.$tag){case 0:break;case 1:u._0;break;case 2:return new na(u._0);case 3:return new ta(u._0);default:S()}let d=a.val;if(d.$tag===1){let t=d._0;t.length>0&&Pg(e.subscribers,{by:Vo,events:t})}return new na({accepted:s.val,skipped:o})}else return new ta(new Ht(t,`not an object`))}function X_(e,t,n){let r;return r=n.$tag===1?n._0:void 0,Y_(e,t,r)}function Z_(e,t){_L:{_L$2:{let n=X_(e,J_(t,U_(e),void 0,ca),ua);if(n.$tag===1)n._0;else{n._0;break _L$2}break _L}S()}}function Q_(e,t){let n=y_(t),r=X_(n,e,ua);if(r.$tag===1)r._0;else return r;return new pa(n)}function $_(e){return J_(e,void 0,void 0,ca)}function ev(e,n,r,i){let a={val:ma};B_(e,void 0,void 0,new ba(n))((n,r)=>{let o;_L:{let a=r.value.data;if(mu(a,t)){let t=O_(e,n,i);if(t.$tag===1)t._0;else{o=t._0;break _L}}return 1}return a.val=new _a(o),0});let o=a.val;switch(o.$tag){case 0:break;case 1:o._0;break;case 2:return new Hi(o._0);case 3:return new Vi(o._0);default:S()}let s=jf(n);_L:{_L$2:{switch(r.$tag){case 5:break _L$2;case 0:break _L$2;case 6:break _L$2}break _L}return new Vi(new Wt(r))}return Nl(s,r),w_(e,s,t,Ui,i,Gi,-1)}function tv(e,n){let r=[],i=xa;B_(e,void 0,void 0,new ba(n))((e,i)=>{let a;if(e.length!==(n.length+1|0))a=!0;else{let e=i.value.data;a=Is(e,t)}return a||Nl(r,Gs(e,n.length)),1});let a=i;switch(a.$tag){case 0:break;case 1:a._0;break;case 2:return a._0;case 3:S();break;default:S()}return r}function nv(e){return y_(e)}function rv(e){return Ea(e)}function iv(e){let t=rv(e);_L:{let e=xm({str:t,start:0,end:t.length},1024);if(e.$tag===1)return e._0;e._0;break _L}return S()}function av(e){return Da(e)}function ov(e){return av(wm(e,!1,0,void 0))}function sv(e){switch(e.$tag){case 6:{let t=e._0,n=L(8),r=t.head;for(;;){let e=r;if(e===void 0)break;{let t=e,i=t.key,a=t.value,o=t.next;R(n,i,a),r=o;continue}}return n}case 0:return;default:return vs(`metadata must be an object or null`,`@zxch3n/flock/flock:ffi-js.mbt:43:10-43:53`)}}function cv(e,t){_L:{let n=$(t,`@zxch3n/flock/flock:ffi-js.mbt:50:15-50:33`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}let i=Bm(r,`@zxch3n/flock/flock:ffi-js.mbt:51:40-51:54`),a;if(i.$tag===1)a=i._0;else{i._0;break _L}let o=Array(a.length),s=a.length,c=0;for(;;){let e=c;if(e<s){let t=a[e];o[e]=iv(t),c=e+1|0;continue}else break}let l=N_(e,o);return l===void 0?Vm():ov(l)}return S()}function lv(e){let t=L(8);return R(t,`physicalTime`,hd(e.hlc.physical_time)),R(t,`logicalCounter`,cd(e.hlc.logical_counter)),R(t,`peerId`,new i(zg(e.peer))),B(t)}function uv(e){let t=L(8),n=e.head;for(;;){let e=n;if(e===void 0)break;{let r=e,i=r.key,a=r.value,o=r.next;R(t,i,a),n=o;continue}}return B(t)}function dv(e,t){_L:{let n=$(t,`@zxch3n/flock/flock:ffi-js.mbt:67:15-67:33`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}let i=Bm(r,`@zxch3n/flock/flock:ffi-js.mbt:68:40-68:54`),a;if(i.$tag===1)a=i._0;else{i._0;break _L}let o=Array(a.length),s=a.length,c=0;for(;;){let e=c;if(e<s){let t=a[e];o[e]=iv(t),c=e+1|0;continue}else break}let l=P_(e,o);if(l===void 0)return Vm();{let e=l,t=L(8),n=e.data;return n===void 0||R(t,`data`,n),R(t,`metadata`,uv(e.metadata)),R(t,`clock`,lv(e.clock)),ov(B(t))}}return S()}function fv(e){return Oa(e)}function pv(e){return ka(e)}function mv(e){if(e.$tag===6){let t=e._0,n=Eu(8);return id(t)((e,t)=>{Ag(e)===void 0&&gs(`invalid peer id in version vector`,`@zxch3n/flock/flock:ffi-js.mbt:215:15-215:57`);_L:{_L$2:{if(t.$tag===5){let r=t._0;if(r.length>=2)Uu(n,e,jg(vu(Tm(Gs(r,0))),uf(vu(Tm(Gs(r,1))))));else break _L$2}else break _L$2;break _L}gs(`version vector entry must be [physical_time, logical_counter]`,`@zxch3n/flock/flock:ffi-js.mbt:218:7-218:77`)}return 1}),n}else return _s(`version vector must be an object`,`@zxch3n/flock/flock:ffi-js.mbt:209:5-209:46`)}function hv(e,t,n,r){_L:{let i;if(pv(t)||fv(t))i=void 0;else{let e=$(t,`@zxch3n/flock/flock:ffi-js.mbt:100:32-100:51`),n;if(e.$tag===1)n=e._0;else{e._0;break _L}i=mv(iv(n))}let a;if(pv(n)||fv(n))a=or;else{let e=$(n,`@zxch3n/flock/flock:ffi-js.mbt:107:12-107:50`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}let r=Lm(t,`@zxch3n/flock/flock:ffi-js.mbt:107:12-107:62`),i;if(r.$tag===1)i=r._0;else{r._0;break _L}a=new sr(i)}let o;if(pv(r)||fv(r))o=void 0;else{let e=$(r,`@zxch3n/flock/flock:ffi-js.mbt:112:12-112:34`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}let n=Rm(t,`@zxch3n/flock/flock:ffi-js.mbt:112:12-112:46`);if(n.$tag===1)o=n._0;else{n._0;break _L}}let s;return s=i===void 0?q_(e,void 0,a,o):q_(e,i,a,o),ov(s)}return S()}function gv(e,t){_L:if(pv(t)||fv(t))return hs(`json is null or undefined`,`@zxch3n/flock/flock:ffi-js.mbt:135:7-135:41`);else{let n=$(t,`@zxch3n/flock/flock:ffi-js.mbt:137:32-137:51`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}let a=iv(r),o;_L$2:{_L$3:{let t=X_(e,a,ua);if(t.$tag===1)o=t._0;else{t._0;break _L$3}break _L$2}o=S()}let s=El(0),c=0;for(;;){let e=c;if(e<o.skipped.length){let t=Us(o.skipped,e),n=L(8);R(n,`key`,z(t.key));let r=t.reason;R(n,`reason`,new i(r)),Nl(s,B(n)),c=e+1|0;continue}else break}let l=L(8);return R(l,`accepted`,cd(o.accepted)),R(l,`skipped`,z(s)),ov(B(l))}return S()}function _v(e,t){_L:if(pv(t)||fv(t))return hs(`json is null or undefined`,`@zxch3n/flock/flock:ffi-js.mbt:161:7-161:41`);else{let n=$(t,`@zxch3n/flock/flock:ffi-js.mbt:163:13-163:36`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}let a=Rm(r,`@zxch3n/flock/flock:ffi-js.mbt:163:13-163:48`),o;if(a.$tag===1)o=a._0;else{a._0;break _L}let s;_L$2:{_L$3:{let e=xm({str:o,start:0,end:o.length},1024);if(e.$tag===1)s=e._0;else{e._0;break _L$3}break _L$2}s=S()}let c;_L$3:{_L$4:{let t=X_(e,s,ua);if(t.$tag===1)c=t._0;else{t._0;break _L$4}break _L$3}c=S()}let l=El(0),u=0;for(;;){let e=u;if(e<c.skipped.length){let t=Us(c.skipped,e),n=L(8);R(n,`key`,z(t.key));let r=t.reason;R(n,`reason`,new i(r)),Nl(l,B(n)),u=e+1|0;continue}else break}let d=L(8);return R(d,`accepted`,cd(c.accepted)),R(d,`skipped`,z(l)),ov(B(d))}return S()}function vv(e){let t=L(8);return rd(e)((e,n)=>(R(t,e,z([hd(n.physical_time),cd(n.logical_counter)])),1)),B(t)}function yv(e){return ov(vv(U_(e)))}function bv(e){return ov(vv(W_(e)))}function xv(e){return Ag(e)===void 0?ys(`invalid peer id`,`@zxch3n/flock/flock:ffi-js.mbt:236:13-236:37`):e}function Sv(e){if(e.$tag===6){let t=e._0,n;_L:{_L$2:{let e=Ku(t,`kind`);if(e===void 0)break _L$2;{let t=e;if(t.$tag===4)n=t._0;else break _L$2}break _L}n=ys(`bound.kind must be a string`,`@zxch3n/flock/flock:ffi-js.mbt:246:14-246:50`)}let r;_L$2:{_L$3:{let e=Ku(t,`key`);if(e===void 0)break _L$3;{let t=e;if(t.$tag===5){let e=t._0;r=jf(e)}else break _L$3}break _L$2}r=bs(`bound.key must be an array`,`@zxch3n/flock/flock:ffi-js.mbt:250:14-250:49`)}return n===`inclusive`?new ji(r):n===`exclusive`?new Mi(r):n===`unbounded`?Ni:xs(`unexpected bound.kind`,`@zxch3n/flock/flock:ffi-js.mbt:259:9-259:39`)}else return xs(`bound must be an object`,`@zxch3n/flock/flock:ffi-js.mbt:262:10-262:42`)}function Cv(e,t){return x_(e,t)}function wv(e){}function Tv(e,t,n,r){_L:{let i=$(t,`@zxch3n/flock/flock:ffi-js.mbt:284:21-284:39`),a;if(i.$tag===1)a=i._0;else{i._0;break _L}let o=Bm(a,`@zxch3n/flock/flock:ffi-js.mbt:285:40-285:60`),s;if(o.$tag===1)s=o._0;else{o._0;break _L}let c=Array(s.length),l=s.length,u=0;for(;;){let e=u;if(e<l){let t=s[e];c[e]=iv(t),u=e+1|0;continue}else break}let d=c,f;_L$2:{_L$3:{let e=xm({str:n,start:0,end:n.length},1024);if(e.$tag===1)f=e._0;else{e._0;break _L$3}break _L$2}f=S()}let p;if(pv(r)||fv(r))p=or;else{let e=$(r,`@zxch3n/flock/flock:ffi-js.mbt:291:12-291:30`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}let n=Lm(t,`@zxch3n/flock/flock:ffi-js.mbt:291:12-291:42`),i;if(n.$tag===1)i=n._0;else{n._0;break _L}p=new sr(i)}let m=D_(e,d,f,p);if(m.$tag===1){m._0;return}else{m._0;break _L}}S()}function Ev(e,t,n,r,i){_L:{let a=$(t,`@zxch3n/flock/flock:ffi-js.mbt:306:21-306:39`),o;if(a.$tag===1)o=a._0;else{a._0;break _L}let s=Bm(o,`@zxch3n/flock/flock:ffi-js.mbt:307:40-307:60`),c;if(s.$tag===1)c=s._0;else{s._0;break _L}let l=Array(c.length),u=c.length,d=0;for(;;){let e=d;if(e<u){let t=c[e];l[e]=iv(t),d=e+1|0;continue}else break}let f=l,p;_L$2:{_L$3:{let e=xm({str:n,start:0,end:n.length},1024);if(e.$tag===1)p=e._0;else{e._0;break _L$3}break _L$2}p=S()}let m;if(pv(r)||fv(r))m=void 0;else{let e=$(r,`@zxch3n/flock/flock:ffi-js.mbt:313:41-313:64`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}m=sv(iv(t))}let h;if(pv(i)||fv(i))h=or;else{let e=$(i,`@zxch3n/flock/flock:ffi-js.mbt:319:12-319:30`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}let n=Lm(t,`@zxch3n/flock/flock:ffi-js.mbt:319:12-319:42`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}h=new sr(r)}if(m===void 0){let t=E_(e,f,p,Ui,h,Gi);if(t.$tag===1){t._0;return}else{t._0;break _L}}else{let t=E_(e,f,p,new Wi(m),h,Gi);if(t.$tag===1){t._0;return}else{t._0;break _L}}}S()}function Dv(e,t,n){_L:{let r=$(t,`@zxch3n/flock/flock:ffi-js.mbt:341:21-341:39`),i;if(r.$tag===1)i=r._0;else{r._0;break _L}let a=Bm(i,`@zxch3n/flock/flock:ffi-js.mbt:342:40-342:60`),o;if(a.$tag===1)o=a._0;else{a._0;break _L}let s=Array(o.length),c=o.length,l=0;for(;;){let e=l;if(e<c){let t=o[e];s[e]=iv(t),l=e+1|0;continue}else break}let u=s,d;if(pv(n)||fv(n))d=or;else{let e=$(n,`@zxch3n/flock/flock:ffi-js.mbt:347:12-347:30`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}let r=Lm(t,`@zxch3n/flock/flock:ffi-js.mbt:347:12-347:42`),i;if(r.$tag===1)i=r._0;else{r._0;break _L}d=new sr(i)}let f=O_(e,u,d);if(f.$tag===1){f._0;return}else{f._0;break _L}}S()}function Ov(e){return e.max_hlc.physical_time}function kv(e){return H_(e)}function Av(e){return ov($_(e))}function jv(e){return{bytes:lf(e.bytes)}}function Mv(e,t){let n=lf(e.bytes),r=t.bytes,i=0;for(;;){let e=i;if(e<32){C(n,e);let t=n[e];C(r,e);let a=r[e];C(n,e),n[e]=(t^a)&255,i=e+1|0;continue}else break}return{bytes:n}}function Nv(e){let t={val:s_()},n=Aa;Tg(e.kv)((e,n)=>(n.value.data===void 0||(t.val=Mv(t.val,l_(n))),1));let r=n;switch(r.$tag){case 0:break;case 1:r._0;break;case 2:return r._0;case 3:S();break;default:S()}let i=jv(t.val);return e.digest={sum:t.val,pending:[]},i}function Pv(e){let t=e.digest;if(t!==void 0){let n=t,r=n.sum,i=n.pending;if(i.length===0)return jv(r);if(i.length>=e.kv.size)return Nv(e);let a=jv(r),o=0;for(;;){let e=o;if(e<i.length){a=Mv(a,qs(i,e)),o=e+1|0;continue}else break}return e.digest={sum:a,pending:[]},jv(a)}return Nv(e)}function Fv(e){let t=e.bytes;return Ig(xf(e=>{let n=t.length,r=0;for(;;){let i=r;if(i<n)if(e(t[i])===1){r=i+1|0;continue}else return 0;else return 1}}))}function Iv(e){return Fv(Pv(e))}function Lv(e){return Iv(e)}function Rv(e,t,n,r){_L:{let i=$(t,`@zxch3n/flock/flock:ffi-js.mbt:381:21-381:39`),a;if(i.$tag===1)a=i._0;else{i._0;break _L}let o=Bm(a,`@zxch3n/flock/flock:ffi-js.mbt:382:40-382:60`),s;if(o.$tag===1)s=o._0;else{o._0;break _L}let c=Array(s.length),l=s.length,u=0;for(;;){let e=u;if(e<l){let t=s[e];c[e]=iv(t),u=e+1|0;continue}else break}let d=c,f;_L$2:{_L$3:{let e=xm({str:n,start:0,end:n.length},1024);if(e.$tag===1)f=e._0;else{e._0;break _L$3}break _L$2}f=S()}let p;if(pv(r)||fv(r))p=or;else{let e=$(r,`@zxch3n/flock/flock:ffi-js.mbt:388:12-388:30`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}let n=Lm(t,`@zxch3n/flock/flock:ffi-js.mbt:388:12-388:42`),i;if(n.$tag===1)i=n._0;else{n._0;break _L}p=new sr(i)}let m=ev(e,d,f,p);if(m.$tag===1){m._0;return}else{m._0;break _L}}S()}function zv(e,t){_L:{let n=$(t,`@zxch3n/flock/flock:ffi-js.mbt:397:21-397:39`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}let i=Bm(r,`@zxch3n/flock/flock:ffi-js.mbt:398:40-398:60`),a;if(i.$tag===1)a=i._0;else{i._0;break _L}let o=Array(a.length),s=a.length,c=0;for(;;){let e=c;if(e<s){let t=a[e];o[e]=iv(t),c=e+1|0;continue}else break}return ov(z(tv(e,o)))}return S()}function Bv(e,t){_L:{let n=$(e,`@zxch3n/flock/flock:ffi-js.mbt:408:22-408:41`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}let i=iv(r),a=$(t,`@zxch3n/flock/flock:ffi-js.mbt:410:22-410:44`),o;if(a.$tag===1)o=a._0;else{a._0;break _L}let s=Rm(o,`@zxch3n/flock/flock:ffi-js.mbt:411:16-411:38`),c;if(s.$tag===1)c=s._0;else{s._0;break _L}let l=Q_(i,xv(c));if(l.$tag===1)return l._0;l._0;break _L}return S()}function Vv(e,t,n,r){_L:{let i;if(pv(t)||fv(t))i=Ni;else{let e=$(t,`@zxch3n/flock/flock:ffi-js.mbt:427:25-427:45`),n;if(e.$tag===1)n=e._0;else{e._0;break _L}i=Sv(iv(n))}let a;if(pv(n)||fv(n))a=Ni;else{let e=$(n,`@zxch3n/flock/flock:ffi-js.mbt:433:23-433:41`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}a=Sv(iv(t))}let o;if(pv(r)||fv(r))o=ya;else{let e=$(r,`@zxch3n/flock/flock:ffi-js.mbt:439:26-439:47`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}let n=Bm(t,`@zxch3n/flock/flock:ffi-js.mbt:440:45-440:68`),i;if(n.$tag===1)i=n._0;else{n._0;break _L}let a=Array(i.length),s=i.length,c=0;for(;;){let e=c;if(e<s){let t=i[e];a[e]=iv(t),c=e+1|0;continue}else break}o=new ba(a)}let s=El(0),c;if(o.$tag===1){let t=o._0;c=z_(e,i,a,new ba(t))}else c=z_(e,i,a,ya);return gd(c,(e,t)=>{let n=L(8);R(n,`key`,z(e)),R(n,`raw`,g_(t.value));let r=t.value.data;return r===void 0||R(n,`value`,r),Nl(s,B(n)),1}),ov(z(s))}return S()}function Hv(e){let t=L(8),n=e.data;n===void 0||R(t,`data`,n);let r=e.metadata;return r===void 0||R(t,`metadata`,uv(r)),B(t)}function Uv(e,t){_L:{let n=$(t,`@zxch3n/flock/flock:ffi-js.mbt:498:26-498:49`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}return Ia(V_(e,e=>{let t=El(0),n=0;for(;;){let r=n;if(r<e.events.length){let i=Ws(e.events,r),a=i._0,o=i._1,s=L(8);R(s,`key`,z(a));let c=o.data;c===void 0||R(s,`value`,c);let l=o.metadata;l===void 0||R(s,`metadata`,uv(l)),R(s,`payload`,Hv(o)),Nl(t,B(s)),n=r+1|0;continue}else break}let a=L(8);R(a,`events`,z(t));let o=e.by,s;if(o.$tag===0)s=new i(`local`);else{let e=o._0;s=new i(e)}R(a,`source`,s),Fa(r,ov(B(a)))}))}return S()}function Wv(e){k_(e)}function Gv(e){A_(e)}function Kv(e){j_(e)}function qv(e){return M_(e)}function Jv(e){return sy(e)}function Yv(e){return py(e)}const Xv=new TextEncoder,Zv=new TextDecoder;function Qv(e){return Xv.encode(e).length}function $v(e){return typeof e==`string`&&Qv(e)<128}function ey(){let e=new Uint8Array(32);if(typeof crypto<`u`&&typeof crypto.getRandomValues==`function`)crypto.getRandomValues(e);else for(let t=0;t<32;t+=1)e[t]=Math.floor(Math.random()*256);return Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``)}function ty(e){if(e===void 0)return ey();if(!$v(e))throw TypeError(`peerId must be a UTF-8 string under 128 bytes.`);return e}function ny(e,t){if(e===t)return 0;let n=Math.min(e.length,t.length);for(let r=0;r<n;r+=1){let n=e[r]-t[r];if(n!==0)return n}return e.length-t.length}function ry(e){if(!e||typeof e!=`object`)return[];let t=[];for(let[n,r]of Object.entries(e)){if(!r||!$v(n))continue;let{physicalTime:e,logicalCounter:i}=r;if(typeof e!=`number`||!Number.isFinite(e)||typeof i!=`number`||!Number.isFinite(i))continue;let a=Xv.encode(n);t.push({peer:n,peerBytes:a,timestamp:Math.trunc(e),counter:Math.max(0,Math.trunc(i))})}return t.sort((e,t)=>{if(e.timestamp!==t.timestamp)return e.timestamp-t.timestamp;let n=ny(e.peerBytes,t.peerBytes);return n===0?e.counter-t.counter:n}),t}function iy(e,t){if(!Number.isFinite(e)||e<0)throw TypeError(`leb128 values must be finite and non-negative`);let n=Math.trunc(e);if(n===0){t.push(0);return}for(;n>0;){let e=n%128;n=Math.floor(n/128),t.push(n>0?e|128:e)}}function ay(e,t){iy(e.length,t);for(let n=0;n<e.length;n+=1)t.push(e[n])}const oy=new Uint8Array([86,69,86,69]);function sy(e){let t=ry(e),n=Array.from(oy);if(t.length===0)return Uint8Array.from(n);let r=0;for(let e=0;e<t.length;e+=1){let i=t[e];if(i.timestamp<0)throw TypeError(`timestamp must be non-negative`);if(e===0)iy(i.timestamp,n),r=i.timestamp;else{let e=i.timestamp-r;if(e<0)throw TypeError(`version vector timestamps must be non-decreasing`);iy(e,n),r=i.timestamp}iy(i.counter,n),ay(i.peerBytes,n)}return Uint8Array.from(n)}function cy(e,t){let n=0,r=1,i=0;for(;t+i<e.length;){let a=e[t+i];if(i+=1,n+=(a&127)*r,!(a&128))break;r*=128}return[n,i]}function ly(e,t){let[n,r]=cy(e,t),i=t+r,a=i+n;if(a>e.length)throw TypeError(`varString length exceeds buffer`);let o=e.subarray(i,a);return[Zv.decode(o),r+n]}function uy(e){return e.length>=4&&e[0]===oy[0]&&e[1]===oy[1]&&e[2]===oy[2]&&e[3]===oy[3]}function dy(e){let t=0,[n,r]=cy(e,t);t+=r;let[i,a]=cy(e,t);t+=a;let o={};for(let r=0;r<n;r+=1){let[n,r]=ly(e,t);if(t+=r,!$v(n))throw TypeError(`invalid peer id in encoded version vector`);let[a,s]=cy(e,t);t+=s;let[c,l]=cy(e,t);t+=l,o[n]={physicalTime:i+a,logicalCounter:c}}return o}function fy(e){let t=4,n={};if(t===e.length)return n;let[r,i]=cy(e,t);t+=i;let[a,o]=cy(e,t);t+=o;let[s,c]=ly(e,t);if(t+=c,!$v(s))throw TypeError(`invalid peer id in encoded version vector`);n[s]={physicalTime:r,logicalCounter:a};let l=r;for(;t<e.length;){let[r,i]=cy(e,t);t+=i;let[a,o]=cy(e,t);t+=o;let[s,c]=ly(e,t);if(t+=c,!$v(s))throw TypeError(`invalid peer id in encoded version vector`);let u=l+r;if(u<l)throw TypeError(`version vector timestamps must be non-decreasing`);n[s]={physicalTime:u,logicalCounter:a},l=u}return n}function py(e){return uy(e)?fy(e):dy(e)}function my(e){if(!e)return;let t={};for(let n of ry(e))t[n.peer]=[n.timestamp,n.counter];return t}function hy(e){if(e!==void 0&&!(typeof e!=`number`||!Number.isFinite(e)))return e}function gy(e){if(typeof e!=`object`||!e)return{};let t={};for(let[n,r]of Object.entries(e)){if(!Array.isArray(r)||r.length<2||!$v(n))continue;let[e,i]=r;typeof e!=`number`||!Number.isFinite(e)||typeof i!=`number`||!Number.isFinite(i)||(t[n]={physicalTime:e,logicalCounter:Math.trunc(i)})}return t}function _y(e){if(e)return e.kind===`unbounded`?{kind:`unbounded`}:{kind:e.kind,key:e.key.slice()}}function vy(e){if(!e||typeof e!=`object`)return;let t=e,n=ky(t.clock);if(!n)return;let r={metadata:Dy(t.metadata),clock:n};return`data`in t&&(r.data=wy(t.data)),r}function yy(e){if(!e||typeof e!=`object`)return{source:`local`,events:[]};let t=e;return{source:typeof t.source==`string`?t.source:`local`,events:(Array.isArray(t.events)?t.events:[]).filter(e=>!!e).map(e=>by(e))}}function by(e){let t=Array.isArray(e.key)?e.key:[],n=xy(e);return{key:t,value:n.data,metadata:Ey(n.metadata),payload:n}}function xy(e){let t={};`value`in e&&(t.data=wy(e.value));let n=Ey(e.metadata);return n!==void 0&&(t.metadata=n),Py(t,Sy(e.payload))}function Sy(e){if(!e||typeof e!=`object`)return;let t={};`data`in e&&(t.data=wy(e.data));let n=Ey(e.metadata);return n!==void 0&&(t.metadata=n),t}const Cy=globalThis.structuredClone;function wy(e){return e===void 0?e:Cy?Cy(e):JSON.parse(JSON.stringify(e))}function Ty(e){try{let t=JSON.parse(e);return Array.isArray(t)?t:[]}catch{return[]}}function Ey(e){if(!(!e||typeof e!=`object`||Array.isArray(e)))return wy(e)}function Dy(e){return Ey(e)??{}}function Oy(e){let t=typeof e.c==`string`?e.c:``,n=t.indexOf(`,`),r=n===-1?-1:t.indexOf(`,`,n+1);if(n===-1||r===-1)return{physicalTime:0,logicalCounter:0,peerId:``};let i=Number(t.slice(0,n)),a=Number(t.slice(n+1,r)),o=t.slice(r+1),s=$v(o)?o:``;return{physicalTime:Number.isFinite(i)?i:0,logicalCounter:Number.isFinite(a)?Math.trunc(a):0,peerId:s}}function ky(e){if(!e||typeof e!=`object`)return;let{physicalTime:t,logicalCounter:n,peerId:r}=e;if(!(typeof t!=`number`||!Number.isFinite(t))&&!(typeof n!=`number`||!Number.isFinite(n))&&$v(r))return{physicalTime:t,logicalCounter:Math.trunc(n),peerId:r}}function Ay(e){let t={};e.d!==void 0&&(t.data=wy(e.d));let n=Ey(e.m);return n!==void 0&&(t.metadata=n),t}function jy(e,t){let n={data:wy(e)},r=Ey(t);return r!==void 0&&(n.metadata=r),n}function My(e,t){if(!(!t||typeof t!=`object`)){if(`data`in t){let n=t.data;e.data=n===void 0?void 0:wy(n)}`metadata`in t&&(e.metadata=Ey(t.metadata))}}function Ny(e){let t={};return My(t,e),t}function Py(e,t){let n=Ny(e);return My(n,t),n}function Fy(e,t){let n={c:e};t.data!==void 0&&(n.d=wy(t.data));let r=Ey(t.metadata);return r!==void 0&&(n.m=r),n}function Iy(e){return Fy(e.c,Ay(e))}function Ly(e,t){return{key:Ty(e),clock:Oy(t),raw:Iy(t)}}function Ry(e){return!e||typeof e!=`object`?{accept:!0}:`accept`in e?e.accept?{accept:!0}:{accept:!1,reason:e.reason??`rejected`}:{accept:!0}}function zy(e){if(!e||typeof e!=`object`)return{accepted:0,skipped:[]};let t=e;return{accepted:typeof t.accepted==`number`?t.accepted:0,skipped:(Array.isArray(t.skipped)?t.skipped:[]).map(e=>({key:e&&Array.isArray(e.key)?e.key:[],reason:e&&typeof e.reason==`string`?e.reason:`unknown`}))}}function By(e){let t={version:e.version,entries:{}};for(let[n,r]of Object.entries(e.entries))t.entries[n]=Iy(r);return t}function Vy(e){return typeof e==`object`&&!!e&&(Object.prototype.hasOwnProperty.call(e,`hooks`)||Object.prototype.hasOwnProperty.call(e,`from`)||Object.prototype.hasOwnProperty.call(e,`pruneTombstonesBefore`)||Object.prototype.hasOwnProperty.call(e,`peerId`))}function Hy(e){return typeof e==`object`&&!!e&&Object.prototype.hasOwnProperty.call(e,`bundle`)}var Uy=class e{inner;constructor(e){this.inner=nv(ty(e))}static fromInner(t){let n=new e;return n.inner=t,n}static fromJson(t,n){let r=Bv(t,ty(n));return e.fromInner(r)}static checkConsistency(e,t){return!!Cv(e.inner,t.inner)}checkInvariants(){this.inner}setPeerId(e){b_(this.inner,ty(e))}putWithMetaInternal(e,t,n,r){let i=Ey(n);Ev(this.inner,e,JSON.stringify(t),i,r)}async putWithMetaWithHooks(e,t,n){let r=jy(t,n.metadata),i=n.hooks?.transform;if(!i){this.putWithMetaInternal(e,t,n.metadata,n.now);return}let a=Ny(r),o=Py(r,await i({key:e.slice(),now:n.now},a)??a),s=o.data;if(s===void 0)throw TypeError(`putWithMeta requires a data value`);this.putWithMetaInternal(e,s,o.metadata,n.now)}put(e,t,n){Tv(this.inner,e,JSON.stringify(t),n)}putWithMeta(e,t,n){let r=n??{};if(r.hooks?.transform)return this.putWithMetaWithHooks(e,t,r);this.putWithMetaInternal(e,t,r.metadata,r.now)}set(e,t,n){this.put(e,t,n)}delete(e,t){Dv(this.inner,e,t)}get(e){return cv(this.inner,e)}getEntry(e){return vy(dv(this.inner,e))}merge(e){Z_(this.inner,e.inner)}version(){return gy(yv(this.inner))}inclusiveVersion(){return gy(bv(this.inner))}exportJsonInternal(e,t,n){let r=hy(t),i=n!==void 0&&$v(n)?n:void 0;return hv(this.inner,my(e),r,i)}async exportJsonWithHooks(e){let t=this.exportJsonInternal(e.from,e.pruneTombstonesBefore,e.peerId),n=e.hooks?.transform;if(!n)return t;let r={version:t.version,entries:{}};for(let[e,i]of Object.entries(t.entries)){let t=Ly(e,i),a=Ay(i),o=Ny(a),s=Py(a,await n(t,o)??o);r.entries[e]=Fy(i.c,s)}return r}exportJson(e,t){return e===void 0?this.exportJsonInternal(void 0,t):Vy(e)?this.exportJsonWithHooks(e):this.exportJsonInternal(e,t)}importJsonInternal(e){return zy(gv(this.inner,e))}async importJsonWithHooks(e){let t=e.hooks?.preprocess,n=t?By(e.bundle):e.bundle,r=[];if(t)for(let e of Object.keys(n.entries)){let i=n.entries[e];if(!i)continue;let a=Ly(e,i),o=Ay(i),s=Ry(await t(a,Ny(o)));if(!s.accept){r.push({key:a.key,reason:s.reason}),delete n.entries[e];continue}n.entries[e]=Fy(i.c,o)}let i=this.importJsonInternal(n);return{accepted:i.accepted,skipped:r.concat(i.skipped)}}importJson(e){return Hy(e)?this.importJsonWithHooks(e):this.importJsonInternal(e)}importJsonStr(e){return zy(_v(this.inner,e))}getMaxPhysicalTime(){return Number(Ov(this.inner))}peerId(){let e=kv(this.inner);if(typeof e!=`string`)throw TypeError(`peerId ffi returned unexpected value`);if(!$v(e))throw TypeError(`peerId ffi returned an invalid string`);return e}digest(){let e=Lv(this.inner);if(typeof e!=`string`)throw TypeError(`digest ffi returned unexpected value`);return e}kvToJson(){return Av(this.inner)}putMvr(e,t,n){Rv(this.inner,e,JSON.stringify(t),n)}getMvr(e){let t=zv(this.inner,e);return Array.isArray(t)?t:[]}scan(e={}){let t=_y(e.start),n=_y(e.end),r=e.prefix?e.prefix.slice():void 0,i=Vv(this.inner,t,n,r);return Array.isArray(i)?i.filter(e=>!!e).map(e=>({key:Array.isArray(e.key)?e.key:[],raw:e.raw,value:e.value})):[]}subscribe(e){let t=Uv(this.inner,t=>{e(yy(t))});if(typeof t!=`function`)throw TypeError(`subscribe ffi did not return a function`);return t}txn(e){Wv(this.inner);try{let t=e();return Gv(this.inner),t}catch(e){throw qv(this.inner)&&Kv(this.inner),e}}isInTxn(){return!!qv(this.inner)}};exports.Flock=Uy,exports.decodeVersionVector=Yv,exports.encodeVersionVector=Jv;
|
|
10
|
+
`;default:return`\n${Tl(` `,n)}`}}}function wm(e,t,n,r){let i=Ns(0),a=[],o=0,s=e;for(;;){let e=s;if(e===void 0){if(a.length===0)break;{let e=a[a.length-1|0];if(e.$tag===0){let t=e,r=t._0,c=t._1;if(c<r.length){let e=Gs(r,c);t._1=c+1|0,c>0&&(D(i,44),A(i,Cm(o,n))),s=e;continue}else{o=o-1|0,kf(a),A(i,Cm(o,n)),D(i,93),s=void 0;continue}}else{let c=e,l=c._0,u=c._1,d=el(l);if(d===void 0){o=o-1|0,kf(a),A(i,Cm(o,n)),D(i,125),s=void 0;continue}else{let e=d,a=e._0,l=e._1,f=l;if(r!==void 0){let e=r(a,l);if(e===void 0){s=void 0;continue}else f=e}u||(D(i,44),A(i,Cm(o,n))),D(i,34),A(i,Sm(a,t)),D(i,34),D(i,58),n>0&&D(i,32),c._1=!1,s=f;continue}}}}else{let r=e;switch(r.$tag){case 6:{let e=r._0;e.size===0?A(i,`{}`):(o=o+1|0,D(i,123),A(i,Cm(o,n)),Il(a,new Mr($u(e),!0)));break}case 5:{let e=r._0;e.length===0?A(i,`[]`):(o=o+1|0,D(i,91),A(i,Cm(o,n)),Il(a,new jr(e,0)));break}case 4:{let e=r._0;D(i,34),A(i,Sm(e,t)),D(i,34);break}case 3:{let e=r,t=e._0,n=e._1;n===void 0?sc(i,t):A(i,n);break}case 1:A(i,`true`);break;case 2:A(i,`false`);break;default:A(i,`null`)}s=void 0;continue}}return i.val}function Tm(e){if(e.$tag===3){let t=e._0;return new sr(t)}else return or}function Em(e,t){return Nr(e,t)}function Dm(e,t){return Pr(e,t)}function Om(e){return Lr(e)}function km(e,t){return Rr(e,t)}function Am(e,t){return zr(e,t)}function jm(e,t){return Br(e,t)}function Mm(e,t){return Vr(e,t)}function Nm(e,t){return t<0&&gs(`negative shift count`,`@moonbitlang/core/bigint:bigint_js.mbt:269:5-269:34`),Hr(e,t)}function Pm(e){let t=Ur(Nm(e,32)),n=Ur(e);return Vd(Ud(tp(t),32),tp(n))}function Fm(){return Gr()}function Im(e){return Kr(e)}function Lm(e,t){return Im(e)===`number`?new Jr(e):new qr(new rn({_0:t,_1:e,_2:`Double`}))}function Rm(e,t){return Im(e)===`string`?new Xr(e):new Yr(new rn({_0:t,_1:e,_2:`String`}))}function zm(e,t){let n=e;if(n.$tag===0){let e=n._0._0,r=e._1,i=e._2;return new $r(new rn({_0:t,_1:r,_2:i}))}else{let e=n._0;return new ei(e)}}function Bm(e,t){if(Qr(e)){let t=e,n;_L:{let e=Array(t.length),r=t.length,i=0;for(;;){let a=i;if(a<r){let r=t[a],o=zm(new ei(r),`@Yoorkin/jmop:value.mbt:156:18-156:50`),s;if(o.$tag===1)s=o._0;else{n=o._0;break _L}e[a]=s,i=a+1|0;continue}else break}return new Sn(e)}return new xn(n)}else return new xn(new rn({_0:t,_1:e,_2:`Array`}))}function Vm(){return ti()}function Hm(e,t){return ni(e)?new ri(new Zt(t)):new ii(e)}function Um(e,t){return Zr(e)?new ai(new Xt(t)):new oi(e)}function Wm(e,t){let n=Hm(e,t),r;if(n.$tag===1)r=n._0;else return n;return Um(r,t)}function $(e,t){return Wm(e,t)}function Gm(e,t,n){if(e===`InvalidNestedPromise`){let e=$(t,`@Yoorkin/jmop:init.mbt:63:43-63:66`),n;if(e.$tag===1)n=e._0;else return e;return new ci(new Yt(n))}else return new ui(new Jt(t))}function Km(){return{h:fu({buf:Ao,start:0,end:8}),x:un(64,0),nx:0,len:b,name:`sha256`}}function qm(e){return e<10?e+48|0:(e-10|0)+97|0}function Jm(e,t,n){let r=t+3|0,i=n&255;C(e,r),e[r]=i&255;let a=t+2|0,o=n>>>8&255;C(e,a),e[a]=o&255;let s=t+1|0,c=n>>>16&255;C(e,s),e[s]=c&255;let l=n>>>24&255;C(e,t),e[t]=l&255}function Ym(e,t,n){Jm(e,t+4|0,ef(K(n,Ln))),Jm(e,t,ef(K(J(n,32),Ln)))}function Xm(e){let t=Rt(64,0),n=e.x,r=0;for(;;){let e=r;if(e<16){let i=Math.imul(e,4)|0;C(n,i);let a=n[i]<<24,o=i+1|0;C(n,o);let s=a|n[o]<<16,c=i+2|0;C(n,c);let l=s|n[c]<<8,u=i+3|0;C(n,u);let d=n[u];C(t,e),t[e]=l|d,r=e+1|0;continue}else break}let i=16;for(;;){let e=i;if(e<64){let n=e-2|0;C(t,n);let r=t[n],a=(r<<-17|r>>>49|0)^(r<<-19|r>>>51|0)^(r>>>10|0),o=e-15|0;C(t,o);let s=t[o],c=(s<<-7|s>>>39|0)^(s<<-18|s>>>50|0)^(s>>>3|0),l=e-7|0;C(t,l);let u=(((a>>>0)+(t[l]>>>0)|0)>>>0)+(c>>>0)|0,d=e-16|0;C(t,d),C(t,e),t[e]=(u>>>0)+(t[d]>>>0)|0,i=e+1|0;continue}else break}let a=e.h;C(a,0);let o=a[0],s=e.h;C(s,1);let c=s[1],l=e.h;C(l,2);let u=l[2],d=e.h;C(d,3);let f=d[3],p=e.h;C(p,4);let m=p[4],h=e.h;C(h,5);let g=h[5],_=e.h;C(_,6);let v=_[6],y=e.h;C(y,7);let ee=y[7],te=0;for(;;){let e=te;if(e<64){let n=ee,r=m,i=r<<-6|r>>>38|0,a=m,s=i^(a<<-11|a>>>43|0),l=m,d=(((((n>>>0)+((s^(l<<-25|l>>>57|0))>>>0)|0)>>>0)+((m&g^~m&v)>>>0)|0)>>>0)+(Qs(ko,e)>>>0)|0;C(t,e);let p=(d>>>0)+(t[e]>>>0)|0,h=o,_=h<<-2|h>>>34|0,y=o,ne=_^(y<<-13|y>>>45|0),re=o,ie=((ne^(re<<-22|re>>>54|0))>>>0)+((o&c^o&u^c&u)>>>0)|0;ee=v,v=g,g=m,m=(f>>>0)+(p>>>0)|0,f=u,u=c,c=o,o=(p>>>0)+(ie>>>0)|0,te=e+1|0;continue}else break}let ne=e.h;C(ne,0),C(ne,0),ne[0]=(ne[0]>>>0)+(o>>>0)|0;let re=e.h;C(re,1),C(re,1),re[1]=(re[1]>>>0)+(c>>>0)|0;let ie=e.h;C(ie,2),C(ie,2),ie[2]=(ie[2]>>>0)+(u>>>0)|0;let ae=e.h;C(ae,3),C(ae,3),ae[3]=(ae[3]>>>0)+(f>>>0)|0;let oe=e.h;C(oe,4),C(oe,4),oe[4]=(oe[4]>>>0)+(m>>>0)|0;let se=e.h;C(se,5),C(se,5),se[5]=(se[5]>>>0)+(g>>>0)|0;let ce=e.h;C(ce,6),C(ce,6),ce[6]=(ce[6]>>>0)+(v>>>0)|0;let le=e.h;C(le,7),C(le,7),le[7]=(le[7]>>>0)+(ee>>>0)|0}function Zm(e,t){e.len=H(e.len,s);let n=e.x,r=e.nx;if(C(n,r),n[r]=t,e.nx=e.nx+1|0,e.nx===64){Xm(e),e.nx=0;return}else return}function Qm(e){let t=un(72,0);C(t,0),t[0]=128;let n=xc($d(e.len,fi),pi)?V(U(pi,$d(e.len,fi))):V(U(H(fi,pi),$d(e.len,fi)));Ym(t,n,q(e.len,3));let r=0;for(;;){let i=r;if(i<(n+8|0)){C(t,i),Zm(e,t[i]),r=i+1|0;continue}else break}e.nx!==0&&S();let i=un(32,0),a=e.h;C(a,0),Jm(i,0,a[0]);let o=e.h;C(o,1),Jm(i,4,o[1]);let s=e.h;C(s,2),Jm(i,8,s[2]);let c=e.h;C(c,3),Jm(i,12,c[3]);let l=e.h;C(l,4),Jm(i,16,l[4]);let u=e.h;C(u,5),Jm(i,20,u[5]);let d=e.h;C(d,6),Jm(i,24,d[6]);let f=e.h;return C(f,7),Jm(i,28,f[7]),i}function $m(e){let t=Qm(e),n=rp(64),r=t.length,i=0;for(;;){let e=i;if(e<r){let r=t[e];ap(n,qm(r>>4&15)),ap(n,qm(r&15)),i=e+1|0;continue}else break}return Jc(op(n),0,void 0)}function eh(e){let t=[],n=e;for(;;){let e=vd(K(n,mi));if(n=J(n,7),Bs(n,b)&&(e=(e|128)&255),I(t,e),G(n,b))break}return bf({buf:t,start:0,end:t.length})}function th(e){let t=[],n=e,r=!0;for(;r;){let e=Yd(Bd(n,mi));n=Hd(n,7);let i;if(i=Wd(n,b)?(e&64)==0:!1,i)r=!1;else{let t;t=Wd(n,ft)?(e&64)!=0:!1,t?r=!1:e=(e|128)&255}I(t,e)}return bf({buf:t,start:0,end:t.length})}function nh(e){switch(e){case 0:return`40`;case 1:return`41`;case 2:return`42`;case 3:return`43`;case 4:return`44`;case 5:return`45`;case 6:return`46`;case 7:return`47`;default:return`49`}}function rh(e){switch(e){case 0:return`30`;case 1:return`31`;case 2:return`32`;case 3:return`33`;case 4:return`34`;case 5:return`35`;case 6:return`36`;case 7:return`37`;default:return`39`}}function ih(e){let t=[],n=e.color;n===void 0||Ul(t,rh(n));let r=e.bg_color;r===void 0||Ul(t,nh(r));let i=e.formats,a=i.length,o=0;for(;;){let e=o;if(e<a){switch(i[e]){case 0:Ul(t,`1`);break;case 1:Ul(t,`4`);break;case 2:Ul(t,`5`);break;case 3:Ul(t,`7`);break;case 4:Ul(t,`8`);break;case 5:Ul(t,`9`);break;default:Ul(t,`3`)}o=e+1|0;continue}else break}return t.length>0?`[${Lf(t,{str:`;`,start:0,end:1})}m${e.str}[0m`:e.str}function ah(e){return{str:e,bg_color:void 0,color:void 0,formats:[]}}function oh(e){return{str:e.str,bg_color:e.bg_color,color:1,formats:e.formats}}function sh(e){return{str:e.str,bg_color:e.bg_color,color:3,formats:e.formats}}function ch(e){return{str:e.str,bg_color:e.bg_color,color:4,formats:e.formats}}function lh(e){let t=e.str,n=e.bg_color,r=e.color,i=[];return Wl(i,0),Ff(i,uu(e.formats)),{str:t,bg_color:n,color:r,formats:i}}function uh(e,t){let n=`${ih(oh(lh(ah(`Panic: `))))}${ih(sh(ah(e)))} at ${ih(ch(ah(N(t))))}`;ff(n),gs(n,`@zxch3n/expect:expect.mbt:698:3-698:13`)}function dh(e,t){return yf(e,t)}function fh(e,t){if(e.bytes.length!==t.bytes.length)return!1;let n=0;for(;;){let r=n;if(r<e.bytes.length){let i=e.bytes;C(i,r);let a=i[r],o=t.bytes;if(C(o,r),a!==o[r])return!1;n=r+1|0;continue}else break}return!0}function ph(e){let t=Al(0),n=0;for(;n<e.length;){let r=n;C(e,r);let i=e.charCodeAt(r);if(i>=55296&&i<=56319&&(n+1|0)<e.length){let r=n+1|0;C(e,r);let a=e.charCodeAt(r);if(a>=56320&&a<=57343){let e=(65536+(i-55296<<10)|0)+(a-56320|0)|0;I(t,(240|e>>18)&255),I(t,(128|e>>12&63)&255),I(t,(128|e>>6&63)&255),I(t,(128|e&63)&255),n=n+1|0}else I(t,(224|i>>12)&255),I(t,(128|i>>6&63)&255),I(t,(128|i&63)&255)}else i<128?I(t,i&255):i<2048?(I(t,(192|i>>6)&255),I(t,(128|i&63)&255)):(I(t,(224|i>>12)&255),I(t,(128|i>>6&63)&255),I(t,(128|i&63)&255));n=n+1|0}return bf({buf:t,start:0,end:t.length})}function mh(e){return{bytes:ph(e)}}function hh(e){let t=0;for(;t<(e.end-e.start|0);){let n=Y(e,t);if(!(n&128))t=t+1|0;else if((n&224)==192){if((t+1|0)>=(e.end-e.start|0)||(Y(e,t+1|0)&192)!=128)return!1;t=t+2|0}else if((n&240)==224){if((t+2|0)>=(e.end-e.start|0))return!1;let n=Y(e,t+1|0),r=Y(e,t+2|0),i;if(i=(n&192)==128?(r&192)!=128:!0,i)return!1;t=t+3|0}else if((n&248)==240){if((t+3|0)>=(e.end-e.start|0))return!1;let n=Y(e,t+1|0),r=Y(e,t+2|0),i=Y(e,t+3|0),a;if((n&192)!=128)a=!0;else{let e;e=(r&192)==128?(i&192)!=128:!0,a=e}if(a)return!1;t=t+4|0}else return!1}return!0}function gh(e){if(hh(pf(e,0,void 0)))return{bytes:xf(hf(e))}}function _h(e){let t=0,n=``;for(;t<e.length;){let r=t;C(e,r);let i=e[r],a;if(!(i&128))a=i;else if((i&224)==192){if((t+1|0)>=e.length)return;let n=t+1|0;C(e,n);let r=e[n];if((r&192)!=128)return;t=t+1|0,a=(i&31)<<6|r&63}else if((i&240)==224){if((t+2|0)>=e.length)return;let n=t+1|0;C(e,n);let r=e[n],o=t+2|0;C(e,o);let s=e[o],c;if(c=(r&192)==128?(s&192)!=128:!0,c)return;t=t+2|0,a=(i&15)<<12|(r&63)<<6|s&63}else if((i&248)==240){if((t+3|0)>=e.length)return;let n=t+1|0;C(e,n);let r=e[n],o=t+2|0;C(e,o);let s=e[o],c=t+3|0;C(e,c);let l=e[c],u;if((r&192)!=128)u=!0;else{let e;e=(s&192)==128?(l&192)!=128:!0,u=e}if(u)return;t=t+3|0,a=(i&7)<<18|(r&63)<<12|(s&63)<<6|l&63}else return;n=`${n}${Jl(a)}`,t=t+1|0}return n}function vh(e){let t=_h(e.bytes);return t===void 0?S():t}function yh(e,t){let n=e.end-e.start|0,r=t.end-t.start|0,i=n<r?n:r,a=0;for(;;){let n=a;if(n<i){let r=zt(Y(e,n),Y(t,n));if(r!==0)return r;a=n+1|0;continue}else break}return zt(n,r)}function bh(e,t){let n=e.bytes,r=X(n,0,n.length),i=t.bytes;return yh(r,X(i,0,i.length))}function xh(e,t){let n=e,r=X(n,0,n.length),i=t;return yh(r,X(i,0,i.length))}function Sh(e){return Zd(e)}function Ch(e){return Xd(e)}function wh(e){let t=Al(0);return I(t,vd(K(J(e,56),hi))),I(t,vd(K(J(e,48),hi))),I(t,vd(K(J(e,40),hi))),I(t,vd(K(J(e,32),hi))),I(t,vd(K(J(e,24),hi))),I(t,vd(K(J(e,16),hi))),I(t,vd(K(J(e,8),hi))),I(t,vd(K(e,hi))),bf({buf:t,start:0,end:t.length})}function Th(e){e.length!==8&&uh(`Invalid byte array length`,`@zxch3n/flock/memcomparable:utils.mbt:28:5-28:54`);let t=b,n=t;C(e,0),t=nf(n,q(_f(e[0]),56));let r=t;C(e,1),t=nf(r,q(_f(e[1]),48));let i=t;C(e,2),t=nf(i,q(_f(e[2]),40));let a=t;C(e,3),t=nf(a,q(_f(e[3]),32));let o=t;C(e,4),t=nf(o,q(_f(e[4]),24));let s=t;C(e,5),t=nf(s,q(_f(e[5]),16));let c=t;C(e,6),t=nf(c,q(_f(e[6]),8));let l=t;return C(e,7),t=nf(l,_f(e[7])),t}function Eh(){return{parts:jl(0)}}function Dh(e,t){Ll(e.parts,t)}function Oh(e,t){let n=e.end-e.start|0,r=t.end-t.start|0,i=n<r?n:r,a=0;for(;;){let n=a;if(n<i){let r=zt(Y(e,n),Y(t,n));if(r!==0)return r;a=n+1|0;continue}else break}return zt(n,r)}function kh(e){return e===e?e:e<0?-Uo:Uo}function Ah(e,t){Z(t,1);let n=mf(e);for(;;){let e=rl(n);if(e===-1)break;{let n=e;Z(t,n),n===0&&Z(t,255);continue}}Z(t,0)}function jh(e,t){Z(t,2);let n=e.bytes,r=n.length,i=0;for(;;){let e=i;if(e<r){let r=n[e];Z(t,r),r===0&&Z(t,255),i=e+1|0;continue}else break}Z(t,0)}function Mh(e,t){Z(t,33);let n=kh(e),r=wh(n<0?rf(Sh(n),ft):rf(Sh(n),ir)),i=r.length,a=0;for(;;){let e=a;if(e<i){let n=r[e];Z(t,n),a=e+1|0;continue}else return}}function Nh(e){let t=[],n=e;for(;Cc(n,0n);)I(t,Wr(Mm(n,256n))&255),n=jm(n,256n);let r=Nf(t);return bf({buf:r,start:0,end:r.length})}function Ph(e,t){if(Dm(e,0n)){Z(t,20);return}let n=Cc(e,0n),r=Nh(n?e:Om(e)),i=r.length;if(n===!1){i<=8?Z(t,(20-(i&255)|0)&255):(Z(t,11),i>255&&gs(`n is too large`,`@zxch3n/flock/memcomparable:bigint.mbt:33:11-33:34`),Z(t,(i&255^255)&255));let e=rp(0),n=0;for(;;){let t=n;if(t<r.length){C(r,t);let i=r[t];Z(e,(i^255)&255),n=t+1|0;continue}else break}ip(t,op(e));return}else{i<=8?Z(t,(20+(i&255)|0)&255):(Z(t,29),i>255&&gs(`n is too large`,`@zxch3n/flock/memcomparable:bigint.mbt:49:11-49:34`),Z(t,i&255)),ip(t,r);return}}function Fh(e,t){switch(e.$tag){case 0:{let n=e._0;Ah(X(n,0,n.length),t);return}case 1:{let n=e._0;jh(n,t);return}case 2:{let n=e._0;Ph(n,t);return}case 3:{let n=e._0;Mh(n,t);return}case 4:Z(t,38);return;default:Z(t,39);return}}function Ih(e){let t=rp(0),n=e.parts,r=n.length,i=0;for(;;){let e=i;if(e<r){let r=n[e];Fh(r,t),i=e+1|0;continue}else break}return op(t)}function Lh(e,t){let n=rp(0),r=t;for(;r<(e.end-e.start|0);){let t=Y(e,r);if(r=r+1|0,t===0){let t;if(t=r<(e.end-e.start|0)?Y(e,r)===255:!1,t){Z(n,0),r=r+1|0;continue}else{let e=op(n);return new _i({_0:X(e,0,e.length),_1:r})}}Z(n,t)}return new gi(Kt)}function Rh(e){let t=Ir(b),n=Ir(s),r=(e.end-e.start|0)-1|0;for(;;){let i=r;if(i>=0){let a=Ir(j(Y(e,i)));t=km(t,Am(n,a)),n=Am(n,Ir(vi)),r=i-1|0;continue}else break}return t}function zh(e,t){let n;if(n=20<=t?t<=28:!1,n){let n=(t-20|0)&255;if((e.end-e.start|0)<n)return new yi(Kt);let r=pf(e,0,n);return new bi({_0:pf(e,n,void 0),_1:Rh(r)})}else{let n;if(n=12<=t?t<20:!1,n){let n=(20-t|0)&255;if((e.end-e.start|0)<n)return new yi(Kt);let r=pf(e,0,n),i=pf(e,n,void 0),a=rp(0),o=0;for(;;){let e=o;if(e<(r.end-r.start|0)){Z(a,(Y(r,e)^255)&255),o=e+1|0;continue}else break}let s=op(a);return new bi({_0:i,_1:Om(Rh(X(s,0,s.length)))})}else if(t===11){if((e.end-e.start|0)<1)return new yi(Kt);let t=(Y(e,0)^255)&255;if((e.end-e.start|0)<(t+1|0))return new yi(Kt);let n=pf(e,1,t+1|0),r=pf(e,t+1|0,void 0),i=rp(0),a=0;for(;;){let e=a;if(e<(n.end-n.start|0)){Z(i,(Y(n,e)^255)&255),a=e+1|0;continue}else break}let o=op(i);return new bi({_0:r,_1:Om(Rh(X(o,0,o.length)))})}else if(t===29){if((e.end-e.start|0)<1)return new yi(Kt);let t=Y(e,0);if((e.end-e.start|0)<(t+1|0))return new yi(Kt);let n=pf(e,1,t+1|0);return new bi({_0:pf(e,t+1|0,void 0),_1:Rh(n)})}else return new yi(new Gt(t))}}function Bh(e,t){if((t+8|0)>(e.end-e.start|0))return new xi(Kt);let n=Al(0),r=0;for(;;){let i=r;if(i<8){I(n,Y(e,t+i|0)),r=i+1|0;continue}else break}let i=Th(bf({buf:n,start:0,end:n.length}));return new Si({_0:G(K(i,ir),b)?Ch(rf(i,ft)):Ch(rf(i,ir)),_1:t+8|0})}function Vh(e){let t=Eh(),n=0;for(;n<(e.end-e.start|0);){let r=Y(e,n);if(n=n+1|0,r===2){let r=Lh(e,n),i;if(r.$tag===1)i=r._0;else return r;let a=i._0,o=i._1,s=gh(a);if(s===void 0)return new ki(qt);Dh(t,new wi(s)),n=o}else if(r===1){let r=Lh(e,n),i;if(r.$tag===1)i=r._0;else return r;let a=i._0,o=i._1;Dh(t,new Ci(xf(hf(a)))),n=o}else if(r>=11&&r<=29){let i=zh(pf(e,n,void 0),r),a;if(i.$tag===1)a=i._0;else return i;let o=a._0,s=a._1;Dh(t,new Ti(s)),n=(e.end-e.start|0)-(o.end-o.start|0)|0}else if(r===33){let r=Bh(e,n),i;if(r.$tag===1)i=r._0;else return r;let a=i._0,o=i._1;Dh(t,new Ei(a)),n=o}else if(r===38)Dh(t,Di);else if(r===39)Dh(t,Oi);else return new ki(new Gt(r))}return new Ai(t)}function Hh(e){switch(e.$tag){case 3:{let t=e._0;return uf(t)+0===t?new Ti(Fr(uf(t))):new Ei(t)}case 4:{let t=e._0;return new wi(mh(t))}case 1:return Oi;case 2:return Di;default:return}}function Uh(e){switch(e.$tag){case 3:{let t=e._0;return new r(t,void 0)}case 2:{let t=e._0;return new r(Jd(Pm(t)),void 0)}case 1:{let t=e._0;return new i(vh(t))}case 5:return t;case 4:return n;default:return}}function Wh(e){let t=Eh(),n=e.length,r=0;for(;;){let i=r;if(i<n){let n=e[i],a=Hh(n);if(a===void 0)return;let o=t.parts,s;s=a===void 0?S():a,Ll(o,s),r=i+1|0;continue}else break}return Ih(t)}function Gh(e){let t;_L:{_L$2:{let n=Vh(X(e,0,e.length));if(n.$tag===1)t=n._0;else{n._0;break _L$2}break _L}t=Ss(`Failed to decode key`,`@zxch3n/flock/memcomparable:codec.mbt:416:48-416:77`)}let n=El(0),r=t.parts,i=r.length,a=0;for(;;){let e=a;if(e<i){let t=r[e],i=Uh(t),o;o=i===void 0?S():i,Nl(n,o),a=e+1|0;continue}else break}return n}function Kh(e,t){let n=t;for(;;){let t=n;if(t===void 0)return;{let r=t;Kh(e,r.left),e(r.key,r.value),n=r.right;continue}}}function qh(e,t){Kh(t,e.root)}function Jh(e){let t=kl(e.size);return qh(e,(e,n)=>{zl(t,{_0:e,_1:n})}),t}function Yh(){return{root:void 0,size:0}}function Xh(){return{root:void 0,size:0}}function Zh(e,t){if(t===void 0)return!0;{let n=t;return e===void 0?!1:e.height>=n.height}}function Qh(e,t){if(t===void 0)return!0;{let n=t;return e===void 0?!1:e.height>=n.height}}function $h(e){let t=e.left,n;n=t===void 0?0:t.height;let r=e.right,i;i=r===void 0?0:r.height,e.height=1+(n>i?n:i)|0}function eg(e){let t=e.left,n;n=t===void 0?0:t.height;let r=e.right,i;i=r===void 0?0:r.height,e.height=1+(n>i?n:i)|0}function tg(e){let t=e.right,n;return n=t===void 0?S():t,e.right=n.left,n.left=e,$h(e),$h(n),n}function ng(e){let t=e.right,n;return n=t===void 0?S():t,e.right=n.left,n.left=e,eg(e),eg(n),n}function rg(e){let t=e.left,n;return n=t===void 0?S():t,e.left=n.right,n.right=e,$h(e),$h(n),n}function ig(e){let t=e.left,n;return n=t===void 0?S():t,e.left=n.right,n.right=e,eg(e),eg(n),n}function ag(e){let t=e.left,n;return n=t===void 0?S():t,e.left=tg(n),rg(e)}function og(e){let t=e.left,n;return n=t===void 0?S():t,e.left=ng(n),ig(e)}function sg(e){let t=e.right,n;return n=t===void 0?S():t,e.right=rg(n),tg(e)}function cg(e){let t=e.right,n;return n=t===void 0?S():t,e.right=ig(n),ng(e)}function lg(e){let t=e.left,n=e.right,r;r=t===void 0?0:t.height;let i;i=n===void 0?0:n.height;let a;if(r>(i+1|0)){let n;n=t===void 0?S():t;let r=n.left,i=n.right;a=Zh(r,i)?rg(e):ag(e)}else if(i>(r+1|0)){let t;t=n===void 0?S():n;let r=t.left,i=t.right;a=Zh(i,r)?tg(e):sg(e)}else a=e;return $h(a),a}function ug(e){let t=e.left,n=e.right,r;r=t===void 0?0:t.height;let i;i=n===void 0?0:n.height;let a;if(r>(i+1|0)){let n;n=t===void 0?S():t;let r=n.left,i=n.right;a=Qh(r,i)?ig(e):og(e)}else if(i>(r+1|0)){let t;t=n===void 0?S():n;let r=t.left,i=t.right;a=Qh(i,r)?ng(e):cg(e)}else a=e;return eg(a),a}function dg(e,t){return{key:e,value:t,left:void 0,right:void 0,height:1}}function fg(e,t){return{key:e,value:t,left:void 0,right:void 0,height:1}}function pg(e,t,n){if(e===void 0)return{_0:dg(t,n),_1:!0};{let r=e;if(fh(t,r.key))return r.value=n,{_0:r,_1:!1};{let e=r.left,i=r.right;if(_c(t,r.key)){let i=pg(e,t,n),a=i._0,o=i._1;return r.left=a,{_0:lg(r),_1:o}}else{let e=pg(i,t,n),a=e._0,o=e._1;return r.right=a,{_0:lg(r),_1:o}}}}}function mg(e,t,n){if(e===void 0)return{_0:fg(t,n),_1:!0};{let r=e;if(dh(t,r.key))return r.value=n,{_0:r,_1:!1};{let e=r.left,i=r.right;if(vc(t,r.key)){let i=mg(e,t,n),a=i._0,o=i._1;return r.left=a,{_0:ug(r),_1:o}}else{let e=mg(i,t,n),a=e._0,o=e._1;return r.right=a,{_0:ug(r),_1:o}}}}}function hg(e,t,n){let r=pg(e.root,t,n),i=r._0,a=r._1;if(Rs(e.root,i)&&(e.root=i),a){e.size=e.size+1|0;return}else return}function gg(e,t,n){let r=mg(e.root,t,n),i=r._0,a=r._1;if(zs(e.root,i)&&(e.root=i),a){e.size=e.size+1|0;return}else return}function _g(e,t){let n=e.root;for(;;){let e=n;if(e===void 0)return;{let r=e,i=xh(t,r.key);if(i===0)return r.value;if(i>0){n=r.right;continue}else{n=r.left;continue}}}}function vg(e,t){let n=e.root;for(;;){let e=n;if(e===void 0)return Li;{let r=e,i=bh(t,r.key);if(i===0)return new Ri(r.value);if(i>0){n=r.right;continue}else{n=r.left;continue}}}}function yg(e,t){let n=e.root;for(;;){let r=n;if(r===void 0)return{_0:void 0,_1:n=>{gg(e,t,n)}};{let e=r,i=xh(t,e.key);if(i===0)return{_0:e.value,_1:t=>{e.value=t}};if(i>0){n=e.right;continue}else{n=e.left;continue}}}}function bg(e,t){let n=e.root;for(;;){let e=n;if(e===void 0)return S();{let r=e,i=bh(t,r.key);if(i===0)return r.value;if(i>0){n=r.right;continue}else{n=r.left;continue}}}}function xg(e,t){return vg(e,t).$tag===1}function Sg(e,t){let n=t;for(;;){let t=n;if(t===void 0)return 1;{let r=t,i=r.left,a=r.right,o=r.key,s=r.value;if(Sg(e,i)===0||e(o,s)===0)return 0;n=a;continue}}}function Cg(e){return t=>Sg(t,e.root)}function wg(e,t){let n=t;for(;;){let t=n;if(t===void 0)return 1;{let r=t,i=r.left,a=r.right,o=r.key,s=r.value;if(wg(e,i)===0||e(o,s)===0)return 0;n=a;continue}}}function Tg(e){return t=>wg(t,e.root)}function Eg(e,t){let n=e._4,r=e._3,i=e._2,a=e._1,o=e._0,s=t;for(;;){let t=s;if(t===void 0)return 1;{let c=t,l=c.left,u=c.right,d=c.key,f=c.value,p;switch(r.$tag){case 2:p=o;break;case 0:{let e=r._0,t=xh(d,e);p={_0:t>0,_1:t>=0};break}default:{let e=r._0,t=xh(d,e);p={_0:t>0,_1:t>0}}}let m=p._0,h=p._1,g;switch(a.$tag){case 2:g=i;break;case 0:{let e=a._0,t=xh(d,e);g={_0:t<0,_1:t<=0};break}default:{let e=a._0,t=xh(d,e);g={_0:t<0,_1:t<0}}}let _=g._0,v=g._1;_L:if(m){if(Eg(e,l)===0)return 0;break _L}else break _L;_L$2:if(h)if(v){if(n(d,f)===0)return 0;break _L$2}else break _L$2;else break _L$2;if(_){s=u;continue}else return 1}}}function Dg(e,t,n){return r=>Eg({_0:Fo,_1:n,_2:Io,_3:t,_4:r},e.root)}function Og(e,t){return fh(e.key,t.key)}function kg(e,t){return dh(e.key,t.key)}function Ag(e){let t=mh(e);if(!(t.bytes.length>=128))return t}function jg(e,t){return{physical_time:e,logical_counter:t}}function Mg(){return{seq:0,subscribers:Du(8)}}function Ng(e,t){let n=e.seq;return Wu(e.subscribers,e.seq,t),e.seq=e.seq+1|0,()=>{Zu(e.subscribers,n)}}function Pg(e,t){let n=e.subscribers.head;for(;;){let e=n;if(e===void 0)return;{let r=e;r.key;let i=r.value,a=r.next;i(t),n=a;continue}}}function Fg(e){return e.subscribers.size===0}function Ig(e){let t=``,n=0;for(;;){let r=n;if(r<e.length){C(e,r);let i=e[r],a=wf(i,4)&15,o=i&15,s=Jl(a<10?a+48|0:(a-10|0)+97|0),c=Jl(o<10?o+48|0:(o-10|0)+97|0);t=`${t}${s}`,t=`${t}${c}`,n=r+1|0;continue}else break}return t}function Lg(e){if((e.end-e.start|0)%2|0){ff(`Invalid hex length: ${Bc(e.end-e.start|0)}`);return}let t=[],n=0;for(;;){let r=n;if(r<(e.end-e.start|0)){let i=Kc(e,r),a=Kc(e,r+1|0),o=0;if(i>=48&&i<=57)o=o+(Math.imul(i-48|0,16)|0)|0;else if(i>=97&&i<=102)o=o+(Math.imul((i-97|0)+10|0,16)|0)|0;else if(i>=65&&i<=70)o=o+(Math.imul((i-65|0)+10|0,16)|0)|0;else{ff(`Invalid hex character: ${Bc(i)}`);return}if(a>=48&&a<=57)o=o+(a-48|0)|0;else if(a>=97&&a<=102)o=o+((a-97|0)+10|0)|0;else if(a>=65&&a<=70)o=o+((a-65|0)+10|0)|0;else{ff(`Invalid hex character: ${Bc(a)}`);return}I(t,o&255),n=r+2|0;continue}else break}return bf({buf:t,start:0,end:t.length})}function Rg(e){if(e.bytes.length>=128){gs(`peer id must be less than 128 bytes`,`@zxch3n/flock/flock:flock.mbt:27:5-27:49`);return}else return}function zg(e){return vh(e)}function Bg(e,t){let n=e.hlc,r=t.hlc;return n.physical_time===r.physical_time&&n.logical_counter===r.logical_counter?fh(e.peer,t.peer):!1}function Vg(e,t){let n=e.hlc,r=t.hlc,i=n.physical_time<r.physical_time?-1:n.physical_time>r.physical_time?1:zt(n.logical_counter,r.logical_counter);return i===0?bh(e.peer,t.peer):i}function Hg(e){return`${Vc(e.physical_time)},${Bc(e.logical_counter)}`}function Ug(e){return`${Hg(e.hlc)},${zg(e.peer)}`}function Wg(e){let t=Ql(Yl(e,{str:`,`,start:0,end:1}));if(t.length<3)return;let n=$c(Ys(t,2)),r=3;for(;;){let e=r;if(e<t.length){n=`${n},${$c(Ys(t,e))}`,r=e+1|0;continue}else break}let i=Ag(n),a;if(i===void 0)return;a=i;let o=Ys(t,0),s=Ys(t,1),c;_L:{_L$2:{let e=$c(o),t=xm({str:e,start:0,end:e.length},1024),n;if(t.$tag===1)n=t._0;else{t._0;break _L$2}c=vu(Tm(n));break _L}c=S()}let l=c,u;_L$2:{_L$3:{let e=$c(s),t=xm({str:e,start:0,end:e.length},1024),n;if(t.$tag===1)n=t._0;else{t._0;break _L$3}u=uf(vu(Tm(n)));break _L$2}u=S()}return{hlc:{physical_time:l,logical_counter:u},peer:a}}function Gg(e){return{bytes:e}}function Kg(e){let t=$m(e.digest),n=Lg({str:t,start:0,end:t.length});if(n===void 0)return Os(`unexpected digest hex parse failure`,`@zxch3n/flock/flock:digest.mbt:114:13-114:57`);{let e=n,t=un(32,0),r=0;for(;;){let n=r;if(n<32){C(e,n),C(t,n),t[n]=e[n],r=n+1|0;continue}else break}return Gg(t)}}function qg(){return{digest:Km()}}function Jg(e,t){let n=0;for(;;){let r=n;if(r<(t.end-t.start|0)){Zm(e.digest,Y(t,r)),n=r+1|0;continue}else return}}function Yg(e,t){let n=eh(t);Jg(e,X(n,0,n.length))}function Xg(e,t){Yg(e,fc(t.end-t.start|0)),Jg(e,t)}function Zg(e,t){let n=e.length,r=t.length,i=n<r?n:r,a=0;for(;;){let n=a;if(n<i){C(e,n);let r=e.charCodeAt(n);C(t,n);let i=t.charCodeAt(n);if(bc(r,i))return-1;if(Tc(r,i))return 1;a=n+1|0;continue}else break}return n<r?-1:n>r?1:0}function Qg(e){let t=0;for(;;){let n=t;if(n<e.length){let r=n,i=n+1|0;for(;;){let t=i;if(t<e.length){Zg(Zs(e,t)._0,Zs(e,r)._0)<0&&(r=t),i=t+1|0;continue}else break}if(r!==n){let t=Zs(e,n);Cf(e,n,Zs(e,r)),Cf(e,r,t)}t=n+1|0;continue}else return}}function $g(e,t){let n=t?1:0;Zm(e.digest,n&255)}function e_(e,t){let n=eh(t);Jg(e,X(n,0,n.length))}function t_(e,t){e_(e,Zd(t))}function n_(e,t){let n=th(t);Jg(e,X(n,0,n.length))}function r_(e,t){let n=mh(t).bytes;Xg(e,X(n,0,n.length))}function i_(e,t){Zm(e.digest,t)}function a_(e,t){switch(t.$tag){case 0:i_(e,32);return;case 1:i_(e,33),$g(e,!0);return;case 2:i_(e,33),$g(e,!1);return;case 3:{let n=t._0;i_(e,34),t_(e,n);return}case 4:{let n=t._0;i_(e,35),r_(e,n);return}case 5:{let n=t._0;i_(e,36),Yg(e,fc(n.length));let r=0;for(;;){let t=r;if(t<n.length){a_(e,Gs(n,t)),r=t+1|0;continue}else return}}default:{let n=t._0;i_(e,37);let r=Ml(0),i=n.head;for(;;){let e=i;if(e===void 0)break;{let t=e,n=t.key,a=t.value,o=t.next;Hl(r,{_0:n,_1:a}),i=o;continue}}Qg(r),Yg(e,fc(r.length));let a=0;for(;;){let t=a;if(t<r.length){let n=Zs(r,t),i=n._0,o=n._1;r_(e,i),a_(e,o),a=t+1|0;continue}else return}}}}function o_(e,t){i_(e,16);let n=t.data;if(n===void 0)$g(e,!1);else{let t=n;$g(e,!0),a_(e,t)}i_(e,18);let r=t.metadata;if(r===void 0)$g(e,!1);else{let t=r;$g(e,!0);let n=Ml(0),i=t.head;for(;;){let e=i;if(e===void 0)break;{let t=e,r=t.key,a=t.value,o=t.next;Hl(n,{_0:r,_1:a}),i=o;continue}}Qg(n),Yg(e,fc(n.length));let a=0;for(;;){let t=a;if(t<n.length){let r=Zs(n,t),i=r._0,o=r._1;r_(e,i),a_(e,o),a=t+1|0;continue}else break}}i_(e,17),t_(e,t.clock.hlc.physical_time),n_(e,j(t.clock.hlc.logical_counter));let i=t.clock.peer.bytes;Xg(e,X(i,0,i.length))}function s_(){return{bytes:un(32,0)}}function c_(e,t){if(t.data===void 0)return s_();let n=qg(),r=e;return Xg(n,X(r,0,r.length)),o_(n,t),Kg(n)}function l_(e){return c_(e.key,e.value)}function u_(e,t){return{key:e,value:t,overridden:!1}}function d_(e,t){if(dh(e.key,t.key)){let n;if(mu(e.value.data,t.value.data)){let r;if(hu(e.value.metadata,t.value.metadata)){let n;if(fh(e.value.clock.peer,t.value.clock.peer)){let r=e.value.clock.hlc,i=t.value.clock.hlc;n=r.physical_time===i.physical_time&&r.logical_counter===i.logical_counter}else n=!1;r=n}else r=!1;n=r}else n=!1;return n}else return!1}function f_(e,t,n){let r=e.digest;if(r!==void 0){let e=r.pending;if(t===void 0||Bl(e,t),n===void 0)return;Bl(e,n);return}}function p_(e,t,n){let r=t.key,i=t.value.clock.peer,a=yg(e.kv,r),o=a._0,s=a._1,c;if(o===void 0)c=!0;else{let e=o;c=Sc(t.value.clock,e.value.clock)||n&&mu(t.value.data,e.value.data)}if(!c)return!1;let l;if(o!==void 0){let e=o;l=l_(e),e.overridden=!0}let u=xu(t.value.data,e=>l_(t));s(t),xg(e.updates,i)||hg(e.updates,i,[]);let d=bg(e.updates,i),f=!1,p=If(d);if(p!==void 0&&Sc(p.value.clock,t.value.clock)){f=!0;let e=d.length-2|0;for(;;){let n=e;if(n>=0){if(gc(Hs(d,n).value.clock,t.value.clock)){Af(d,n+1|0,t);break}e=n-1|0;continue}else{Af(d,0,t);break}}}return f||Rl(d,t),f_(e,l,u),!0}function m_(e){let t=L(8),n=e.head;for(;;){let e=n;if(e===void 0)break;{let r=e,i=r.key,a=r.value,o=r.next;R(t,i,a),n=o;continue}}return t}function h_(e){let t=e.metadata,n;return n=t===void 0?void 0:m_(t),{data:e.data,metadata:n,clock:e.clock}}function g_(e){let t=L(8),n=e.data;n===void 0||R(t,`d`,n),R(t,`c`,new i(Ug(e.clock)));let r=e.metadata;return r===void 0||R(t,`m`,B(m_(r))),B(t)}function __(e){if(e.$tag===6){let t=e._0,n;_L:{_L$2:{let e=Ku(t,`c`);if(e===void 0)break _L$2;{let t=e;if(t.$tag===4){let e=t._0,r=Wg({str:e,start:0,end:e.length});if(r===void 0)return;n=r}else break _L$2}break _L}return}let r=Ku(t,`d`),i=Ku(t,`m`),a;if(i===void 0)a=void 0;else{let e=i;switch(e.$tag){case 6:{let t=e._0;a=m_(t);break}case 0:a=void 0;break;default:return}}return{data:r,metadata:a,clock:n}}else return}function v_(e){let t=e.metadata,n;return n=t===void 0?L(8):m_(t),{data:e.data,metadata:n,clock:e.clock}}function y_(e){let t=Ag(e),n;n=t===void 0?ms(`peer id must be less than 128 bytes`,`@zxch3n/flock/flock:flock.mbt:384:13-384:57`):t,Rg(n);let r=Eu(8),i=Yh(),a=Xh(),o=Mg();return{peer_id:n,max_hlc:zo,vv:r,kv:i,updates:a,subscribers:o,digest:void 0,txn_events:zi}}function b_(e,t){let n=Ag(t),r;r=n===void 0?ms(`peer id must be less than 128 bytes`,`@zxch3n/flock/flock:flock.mbt:403:13-403:57`):n,Rg(r),e.peer_id=r}function x_(e,t){let n=Jh(e.kv),r=Jh(t.kv);if(n.length!==r.length)return!1;let i=0;for(;;){let e=i;if(e<n.length){let t=Ks(n,e),a=t._0,o=t._1,s=Ks(r,e),c=s._0,l=s._1;if(Fs(a,c)||!d_(o,l))return!1;i=e+1|0;continue}else break}return!0}function S_(e){}function C_(e,t,n,r,i,a,o){let s=Wh(t);if(s===void 0)return new Vi(new Ut(z(t)));{let t=s;if(o){let i=_g(e.kv,t);if(i===void 0){if(n===void 0&&r===void 0)return new Hi(void 0)}else{let e=i;if(mu(e.value.data,n)&&hu(e.value.metadata,r))return new Hi(void 0)}}let c=yu(i,()=>pd(Fm()));c>e.max_hlc.physical_time?e.max_hlc={physical_time:c,logical_counter:0}:e.max_hlc={physical_time:e.max_hlc.physical_time,logical_counter:e.max_hlc.logical_counter+1|0};let l={hlc:e.max_hlc,peer:e.peer_id},u;u=r===void 0?void 0:m_(r);let d=u_(t,{data:n,metadata:u,clock:l}),f;if(a===void 0)f=h_(d.value);else{let e=a(d);f=h_(e===void 0?d.value:e.value)}let p=u_(t,{data:f.data,metadata:f.metadata,clock:l});if(!p_(e,p,!0))return new Hi(void 0);let m=p.value.clock.hlc;e.max_hlc=m,Uu(e.vv,zg(e.peer_id),m);let h=e.txn_events;if(h.$tag===1){let e=h._0;return new Hi(Fl(e,{_0:Gh(p.key),_1:h_(p.value)}))}else if(Fg(e.subscribers))return new Hi(void 0);else{let t=Gh(p.key),n=h_(p.value);return new Hi(Pg(e.subscribers,{by:jt,events:[{_0:t,_1:n}]}))}}}function w_(e,t,n,r,i,a,o){let s;s=r.$tag===1?r._0:void 0;let c;c=i===void 0?or:i;let l;return l=a.$tag===1?a._0:void 0,C_(e,t,n,s,c,l,o===-1?!0:o)}function T_(e,t,n,r,i,a){return C_(e,t,n,r,i,a,!0)}function E_(e,t,n,r,i,a){let o;o=r.$tag===1?r._0:void 0;let s;s=i===void 0?or:i;let c;return c=a.$tag===1?a._0:void 0,T_(e,t,n,o,s,c)}function D_(e,t,n,r){return E_(e,t,n,Ui,r,Gi)}function O_(e,t,n){return w_(e,t,void 0,Ui,n,Gi,!0)}function k_(e){if(e.txn_events.$tag===0){e.txn_events=new Bi([]);return}else{gs(`Nested transactions are not supported`,`@zxch3n/flock/flock:flock.mbt:601:5-601:51`);return}}function A_(e){let t=e.txn_events;if(t.$tag===1){let n=t._0;if(e.txn_events=zi,n.length>0&&!Fg(e.subscribers)){Pg(e.subscribers,{by:jt,events:n});return}else return}else{gs(`No active transaction to commit`,`@zxch3n/flock/flock:flock.mbt:611:5-611:45`);return}}function j_(e){if(e.txn_events.$tag===1){e.txn_events=zi;return}else{gs(`No active transaction to rollback`,`@zxch3n/flock/flock:flock.mbt:625:5-625:47`);return}}function M_(e){return e.txn_events.$tag===1}function N_(e,t){let n=Wh(t);if(n!==void 0){let t=n;return Cu(_g(e.kv,t),e=>e.value.data)}}function P_(e,t){let n=Wh(t);if(n!==void 0){let t=n;return bu(_g(e.kv,t),e=>v_(e.value))}}function F_(){return e=>1}function I_(e){if(!(e.end-e.start|0))return;let t=Al(e.end-e.start|0),n=0;for(;;){let r=n;if(r<(e.end-e.start|0)){I(t,Y(e,r)),n=r+1|0;continue}else break}let r=t.length-1|0;for(;;){let e=r;if(e>=0){let n=Js(t,e);if(n<255){Sf(t,e,(n+1|0)&255);let r=Al(e+1|0),i=0;for(;;){let n=i;if(n<=e){I(r,Js(t,n)),i=n+1|0;continue}else break}return bf({buf:r,start:0,end:r.length})}r=e-1|0;continue}else break}}function L_(e,t,n){let r=e._1,i=e._0,a=r.val;if(a===void 0){r.val=t,i.val=n;return}else{let e=a,o=Oh(X(t,0,t.length),X(e,0,e.length));if(o>0){r.val=t,i.val=n;return}else if(o===0){i.val=i.val&&n;return}else return}}function R_(e,t,n){let r=e._1,i=e._0,a=r.val;if(a===void 0){r.val=t,i.val=n;return}else{let e=a,o=Oh(X(t,0,t.length),X(e,0,e.length));if(o<0){r.val=t,i.val=n;return}else if(o===0){i.val=i.val&&n;return}else return}}function z_(e,t,n,r){let i={val:El(0)},a={val:!1},o,s;if(r.$tag===1){let e=r._0;i.val=jf(e),a.val=!0;let t=Wh(e);if(t===void 0)return F_();{let e=t;s=I_(X(e,0,e.length)),o=e}}let c;switch(t.$tag){case 0:{let e=t._0,n=Wh(e);if(n===void 0)return F_();c=new qi(n);break}case 1:{let e=t._0,n=Wh(e);if(n===void 0)return F_();c=new Ji(n);break}default:c=Yi}let l;switch(n.$tag){case 0:{let e=n._0,t=Wh(e);if(t===void 0)return F_();l=new qi(t);break}case 1:{let e=n._0,t=Wh(e);if(t===void 0)return F_();l=new Ji(t);break}default:l=Yi}let u={val:void 0},d={val:!0},f={_0:d,_1:u},p=o;switch(p===void 0||L_(f,p,!0),c.$tag){case 0:{let e=c._0;L_(f,e,!0);break}case 1:{let e=c._0;L_(f,e,!1);break}}let m=u.val,h;if(m===void 0)h=Ii;else{let e=m;h=d.val?new Pi(e):new Fi(e)}let g={val:void 0},_={val:!0},v={_0:_,_1:g},y=s;switch(y===void 0||R_(v,y,!1),l.$tag){case 0:{let e=l._0;R_(v,e,!0);break}case 1:{let e=l._0;R_(v,e,!1);break}}let ee=g.val,te;if(ee===void 0)te=Ii;else{let e=ee;te=_.val?new Pi(e):new Fi(e)}let ne=Dg(e.kv,h,te);return e=>_d(ne,(t,n)=>{let r=Gh(t);if(a.val){if(i.val.length>r.length)return 1;let e=!0,t=0;for(;;){let n=t;if(n<i.val.length){if(Ls(Gs(i.val,n),Gs(r,n))){e=!1;break}t=n+1|0;continue}else break}if(!e)return 1}return e(r,n)===0?0:1})}function B_(e,t,n,r){let i;i=t===void 0?Ni:t;let a;return a=n===void 0?Ni:n,z_(e,i,a,r)}function V_(e,t){return Ng(e.subscribers,t)}function H_(e){return zg(e.peer_id)}function U_(e){let t=Eu(8);return Cg(e.updates)((e,n)=>{let r=n.length-1|0;for(;;){let i=r;if(i>=0){let a=Hs(n,i);if(!a.overridden){Uu(t,zg(e),a.value.clock.hlc);break}r=i-1|0;continue}else break}return 1}),t}function W_(e){return od(e.vv)}function G_(e,t,n,r){let i=vg(r.updates,t);if(i.$tag===1){let t=i._0,a=0;for(;;){let i=a;if(i<t.length){_L:{let a=Hs(t,i);if(a.overridden)break _L;_L$2:{_L$3:{let t=_g(r.kv,a.key);if(t===void 0)break _L$3;if(Bg(t.value.clock,a.value.clock)){if(n.$tag===1){let e=n._0;if(a.value.data===void 0&&a.value.clock.hlc.physical_time<e)break _L}let t=Gh(a.key),r=a.value;R(e,wm(z(t),!1,0,void 0),g_(r))}else break _L$3;break _L$2}break _L}break _L}a=i+1|0;continue}else return}}else return}function K_(e,t,n,r,i){let a=vg(i.updates,t);if(a.$tag===1){let t=a._0,i=Pf(t,e=>{let t=e.value.clock.hlc;return t.physical_time<n.physical_time?-1:t.physical_time>n.physical_time?1:zt(t.logical_counter,n.logical_counter)}),o;o=i.$tag===1?i._0+1|0:i._0;let s=o;for(;;){let n=s;if(n<t.length){_L:{let i=Hs(t,n);if(i.overridden)break _L;if(r.$tag===1){let e=r._0;if(i.value.data===void 0&&i.value.clock.hlc.physical_time<e)break _L}let a=Gh(i.key),o=i.value;R(e,wm(z(a),!1,0,void 0),g_(o));break _L}s=n+1|0;continue}else return}}else return}function q_(e,t,n,i){let a=L(8),s;if(i===void 0)s=void 0;else{let e=Ag(i);s=e===void 0?void 0:e}R(a,`version`,new r(0,void 0));let c=L(8);if(s===void 0)_L:{_L$2:{if(t===void 0)break _L$2;{let r=t;if(r.size!==0){let t=Xi;rd(e.vv)((t,i)=>{let a=Gu(r,t),o;if(o=a===void 0?Ro:a,kc(o,i))return 1;let s=Ag(t),l;return s===void 0?1:(l=s,K_(c,l,o,n,e),1)});let i=t;switch(i.$tag){case 0:break;case 1:i._0;break;case 2:return i._0;case 3:S();break;default:S()}}else break _L$2}break _L}Tg(e.kv)((e,t)=>{let n=Gh(e),r=t.value;return R(c,wm(z(n),!1,0,void 0),g_(r)),1})}else{let r=s;_L:{_L$2:{if(t===void 0)break _L$2;{let i=t;if(i.size!==0){let t=zg(r),a=Gu(i,t),o;o=a===void 0?Ro:a;_L$3:_L$4:{let i=Gu(e.vv,t);if(i===void 0)break _L$4;if(hc(o,i))K_(c,r,o,n,e);else break _L$4;break _L$3}}else break _L$2}break _L}G_(c,r,n,e)}}return R(a,`entries`,new o(c)),new o(a)}function J_(e,t,n,r){let i;i=n===void 0?or:n;let a;return a=r.$tag===1?r._0:void 0,q_(e,t,i,a)}function Y_(e,t,n){let r=e.txn_events;if(r.$tag===1){let n=r._0;return e.txn_events=zi,n.length>0&&!Fg(e.subscribers)&&Pg(e.subscribers,{by:jt,events:n}),new ta(new Ht(t,`import called during transaction - transaction was auto-committed`))}if(t.$tag===6){let r=t._0,i;_L:{_L$2:{let e=Ku(r,`version`);if(e===void 0)return new ta(new Ht(t,`The imported json does not contain a version field`));{let t=e;if(t.$tag===3){if(t._0!==0){i=t;break _L$2}}else{i=t;break _L$2}}break _L}return new ta(new Ht(t,`The imported json uses an unsupported version ${zc(i)}`))}let a={val:zi};Fg(e.subscribers)||(a.val=new Bi(Dl(0)));let o=Ol(0),s={val:0},c;_L$2:{_L$3:{let e=Ku(r,`entries`);if(e===void 0)break _L$3;{let t=e;if(t.$tag===6)c=t._0;else break _L$3}break _L$2}return new ta(new Ht(t,`entries is not an object`))}let l={val:ra};id(c)((r,i)=>{let c;_L$3:{let l=__(i),u;if(l===void 0){c=new Ht(t,`value is not a raw value`);break _L$3}else u=l;let d;_L$4:{_L$5:{let e=xm({str:r,start:0,end:r.length},1024);if(e.$tag===1)d=e._0;else{e._0;break _L$5}break _L$4}d=S()}if(d.$tag===5){let r=d._0,i=El(0),l=0;for(;;){let e=l;if(e<r.length){Nl(i,Gs(r,e)),l=e+1|0;continue}else break}let f=Wh(i);if(f===void 0){c=new Ht(t,`key is not a valid key`);break _L$3}else{let t=u_(f,u),r;if(n===void 0)r=t;else{let e=n(t);if(e.$tag===0)r=t;else{let t=e._0;return Pl(o,{key:jf(i),reason:t}),1}}s.val=s.val+1|0;let c=r.value.clock.peer,l=r.value.clock.hlc,d=p_(e,r,!1);hc(e.max_hlc,l)&&(e.max_hlc=l);let p=zg(c),m=Gu(e.vv,p);if(m===void 0)Uu(e.vv,p,l);else{let t=m;(t.physical_time<l.physical_time?-1:t.physical_time>l.physical_time?1:zt(t.logical_counter,l.logical_counter))<0&&Uu(e.vv,p,l)}if(d){let e=a.val;if(e.$tag===1){let t=e._0;Fl(t,{_0:Gh(r.key),_1:h_(r.value)})}}}}else{c=new Ht(t,`key is not an array json`);break _L$3}return 1}return l.val=new oa(c),0});let u=l.val;switch(u.$tag){case 0:break;case 1:u._0;break;case 2:return new na(u._0);case 3:return new ta(u._0);default:S()}let d=a.val;if(d.$tag===1){let t=d._0;t.length>0&&Pg(e.subscribers,{by:Vo,events:t})}return new na({accepted:s.val,skipped:o})}else return new ta(new Ht(t,`not an object`))}function X_(e,t,n){let r;return r=n.$tag===1?n._0:void 0,Y_(e,t,r)}function Z_(e,t){_L:{_L$2:{let n=X_(e,J_(t,U_(e),void 0,ca),ua);if(n.$tag===1)n._0;else{n._0;break _L$2}break _L}S()}}function Q_(e,t){let n=y_(t),r=X_(n,e,ua);if(r.$tag===1)r._0;else return r;return new pa(n)}function $_(e){return J_(e,void 0,void 0,ca)}function ev(e,n,r,i){let a={val:ma};B_(e,void 0,void 0,new ba(n))((n,r)=>{let o;_L:{let a=r.value.data;if(mu(a,t)){let t=O_(e,n,i);if(t.$tag===1)t._0;else{o=t._0;break _L}}return 1}return a.val=new _a(o),0});let o=a.val;switch(o.$tag){case 0:break;case 1:o._0;break;case 2:return new Hi(o._0);case 3:return new Vi(o._0);default:S()}let s=jf(n);_L:{_L$2:{switch(r.$tag){case 5:break _L$2;case 0:break _L$2;case 6:break _L$2}break _L}return new Vi(new Wt(r))}return Nl(s,r),w_(e,s,t,Ui,i,Gi,-1)}function tv(e,n){let r=[],i=xa;B_(e,void 0,void 0,new ba(n))((e,i)=>{let a;if(e.length!==(n.length+1|0))a=!0;else{let e=i.value.data;a=Is(e,t)}return a||Nl(r,Gs(e,n.length)),1});let a=i;switch(a.$tag){case 0:break;case 1:a._0;break;case 2:return a._0;case 3:S();break;default:S()}return r}function nv(e){return y_(e)}function rv(e){return Ea(e)}function iv(e){let t=rv(e);_L:{let e=xm({str:t,start:0,end:t.length},1024);if(e.$tag===1)return e._0;e._0;break _L}return S()}function av(e){return Da(e)}function ov(e){return av(wm(e,!1,0,void 0))}function sv(e){switch(e.$tag){case 6:{let t=e._0,n=L(8),r=t.head;for(;;){let e=r;if(e===void 0)break;{let t=e,i=t.key,a=t.value,o=t.next;R(n,i,a),r=o;continue}}return n}case 0:return;default:return vs(`metadata must be an object or null`,`@zxch3n/flock/flock:ffi-js.mbt:43:10-43:53`)}}function cv(e,t){_L:{let n=$(t,`@zxch3n/flock/flock:ffi-js.mbt:50:15-50:33`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}let i=Bm(r,`@zxch3n/flock/flock:ffi-js.mbt:51:40-51:54`),a;if(i.$tag===1)a=i._0;else{i._0;break _L}let o=Array(a.length),s=a.length,c=0;for(;;){let e=c;if(e<s){let t=a[e];o[e]=iv(t),c=e+1|0;continue}else break}let l=N_(e,o);return l===void 0?Vm():ov(l)}return S()}function lv(e){let t=L(8);return R(t,`physicalTime`,hd(e.hlc.physical_time)),R(t,`logicalCounter`,cd(e.hlc.logical_counter)),R(t,`peerId`,new i(zg(e.peer))),B(t)}function uv(e){let t=L(8),n=e.head;for(;;){let e=n;if(e===void 0)break;{let r=e,i=r.key,a=r.value,o=r.next;R(t,i,a),n=o;continue}}return B(t)}function dv(e,t){_L:{let n=$(t,`@zxch3n/flock/flock:ffi-js.mbt:67:15-67:33`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}let i=Bm(r,`@zxch3n/flock/flock:ffi-js.mbt:68:40-68:54`),a;if(i.$tag===1)a=i._0;else{i._0;break _L}let o=Array(a.length),s=a.length,c=0;for(;;){let e=c;if(e<s){let t=a[e];o[e]=iv(t),c=e+1|0;continue}else break}let l=P_(e,o);if(l===void 0)return Vm();{let e=l,t=L(8),n=e.data;return n===void 0||R(t,`data`,n),R(t,`metadata`,uv(e.metadata)),R(t,`clock`,lv(e.clock)),ov(B(t))}}return S()}function fv(e){return Oa(e)}function pv(e){return ka(e)}function mv(e){if(e.$tag===6){let t=e._0,n=Eu(8);return id(t)((e,t)=>{Ag(e)===void 0&&gs(`invalid peer id in version vector`,`@zxch3n/flock/flock:ffi-js.mbt:215:15-215:57`);_L:{_L$2:{if(t.$tag===5){let r=t._0;if(r.length>=2)Uu(n,e,jg(vu(Tm(Gs(r,0))),uf(vu(Tm(Gs(r,1))))));else break _L$2}else break _L$2;break _L}gs(`version vector entry must be [physical_time, logical_counter]`,`@zxch3n/flock/flock:ffi-js.mbt:218:7-218:77`)}return 1}),n}else return _s(`version vector must be an object`,`@zxch3n/flock/flock:ffi-js.mbt:209:5-209:46`)}function hv(e,t,n,r){_L:{let i;if(pv(t)||fv(t))i=void 0;else{let e=$(t,`@zxch3n/flock/flock:ffi-js.mbt:100:32-100:51`),n;if(e.$tag===1)n=e._0;else{e._0;break _L}i=mv(iv(n))}let a;if(pv(n)||fv(n))a=or;else{let e=$(n,`@zxch3n/flock/flock:ffi-js.mbt:107:12-107:50`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}let r=Lm(t,`@zxch3n/flock/flock:ffi-js.mbt:107:12-107:62`),i;if(r.$tag===1)i=r._0;else{r._0;break _L}a=new sr(i)}let o;if(pv(r)||fv(r))o=void 0;else{let e=$(r,`@zxch3n/flock/flock:ffi-js.mbt:112:12-112:34`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}let n=Rm(t,`@zxch3n/flock/flock:ffi-js.mbt:112:12-112:46`);if(n.$tag===1)o=n._0;else{n._0;break _L}}let s;return s=i===void 0?q_(e,void 0,a,o):q_(e,i,a,o),ov(s)}return S()}function gv(e,t){_L:if(pv(t)||fv(t))return hs(`json is null or undefined`,`@zxch3n/flock/flock:ffi-js.mbt:135:7-135:41`);else{let n=$(t,`@zxch3n/flock/flock:ffi-js.mbt:137:32-137:51`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}let a=iv(r),o;_L$2:{_L$3:{let t=X_(e,a,ua);if(t.$tag===1)o=t._0;else{t._0;break _L$3}break _L$2}o=S()}let s=El(0),c=0;for(;;){let e=c;if(e<o.skipped.length){let t=Us(o.skipped,e),n=L(8);R(n,`key`,z(t.key));let r=t.reason;R(n,`reason`,new i(r)),Nl(s,B(n)),c=e+1|0;continue}else break}let l=L(8);return R(l,`accepted`,cd(o.accepted)),R(l,`skipped`,z(s)),ov(B(l))}return S()}function _v(e,t){_L:if(pv(t)||fv(t))return hs(`json is null or undefined`,`@zxch3n/flock/flock:ffi-js.mbt:161:7-161:41`);else{let n=$(t,`@zxch3n/flock/flock:ffi-js.mbt:163:13-163:36`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}let a=Rm(r,`@zxch3n/flock/flock:ffi-js.mbt:163:13-163:48`),o;if(a.$tag===1)o=a._0;else{a._0;break _L}let s;_L$2:{_L$3:{let e=xm({str:o,start:0,end:o.length},1024);if(e.$tag===1)s=e._0;else{e._0;break _L$3}break _L$2}s=S()}let c;_L$3:{_L$4:{let t=X_(e,s,ua);if(t.$tag===1)c=t._0;else{t._0;break _L$4}break _L$3}c=S()}let l=El(0),u=0;for(;;){let e=u;if(e<c.skipped.length){let t=Us(c.skipped,e),n=L(8);R(n,`key`,z(t.key));let r=t.reason;R(n,`reason`,new i(r)),Nl(l,B(n)),u=e+1|0;continue}else break}let d=L(8);return R(d,`accepted`,cd(c.accepted)),R(d,`skipped`,z(l)),ov(B(d))}return S()}function vv(e){let t=L(8);return rd(e)((e,n)=>(R(t,e,z([hd(n.physical_time),cd(n.logical_counter)])),1)),B(t)}function yv(e){return ov(vv(U_(e)))}function bv(e){return ov(vv(W_(e)))}function xv(e){return Ag(e)===void 0?ys(`invalid peer id`,`@zxch3n/flock/flock:ffi-js.mbt:236:13-236:37`):e}function Sv(e){if(e.$tag===6){let t=e._0,n;_L:{_L$2:{let e=Ku(t,`kind`);if(e===void 0)break _L$2;{let t=e;if(t.$tag===4)n=t._0;else break _L$2}break _L}n=ys(`bound.kind must be a string`,`@zxch3n/flock/flock:ffi-js.mbt:246:14-246:50`)}let r;_L$2:{_L$3:{let e=Ku(t,`key`);if(e===void 0)break _L$3;{let t=e;if(t.$tag===5){let e=t._0;r=jf(e)}else break _L$3}break _L$2}r=bs(`bound.key must be an array`,`@zxch3n/flock/flock:ffi-js.mbt:250:14-250:49`)}return n===`inclusive`?new ji(r):n===`exclusive`?new Mi(r):n===`unbounded`?Ni:xs(`unexpected bound.kind`,`@zxch3n/flock/flock:ffi-js.mbt:259:9-259:39`)}else return xs(`bound must be an object`,`@zxch3n/flock/flock:ffi-js.mbt:262:10-262:42`)}function Cv(e,t){return x_(e,t)}function wv(e){}function Tv(e,t,n,r){_L:{let i=$(t,`@zxch3n/flock/flock:ffi-js.mbt:284:21-284:39`),a;if(i.$tag===1)a=i._0;else{i._0;break _L}let o=Bm(a,`@zxch3n/flock/flock:ffi-js.mbt:285:40-285:60`),s;if(o.$tag===1)s=o._0;else{o._0;break _L}let c=Array(s.length),l=s.length,u=0;for(;;){let e=u;if(e<l){let t=s[e];c[e]=iv(t),u=e+1|0;continue}else break}let d=c,f;_L$2:{_L$3:{let e=xm({str:n,start:0,end:n.length},1024);if(e.$tag===1)f=e._0;else{e._0;break _L$3}break _L$2}f=S()}let p;if(pv(r)||fv(r))p=or;else{let e=$(r,`@zxch3n/flock/flock:ffi-js.mbt:291:12-291:30`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}let n=Lm(t,`@zxch3n/flock/flock:ffi-js.mbt:291:12-291:42`),i;if(n.$tag===1)i=n._0;else{n._0;break _L}p=new sr(i)}let m=D_(e,d,f,p);if(m.$tag===1){m._0;return}else{m._0;break _L}}S()}function Ev(e,t,n,r,i){_L:{let a=$(t,`@zxch3n/flock/flock:ffi-js.mbt:306:21-306:39`),o;if(a.$tag===1)o=a._0;else{a._0;break _L}let s=Bm(o,`@zxch3n/flock/flock:ffi-js.mbt:307:40-307:60`),c;if(s.$tag===1)c=s._0;else{s._0;break _L}let l=Array(c.length),u=c.length,d=0;for(;;){let e=d;if(e<u){let t=c[e];l[e]=iv(t),d=e+1|0;continue}else break}let f=l,p;_L$2:{_L$3:{let e=xm({str:n,start:0,end:n.length},1024);if(e.$tag===1)p=e._0;else{e._0;break _L$3}break _L$2}p=S()}let m;if(pv(r)||fv(r))m=void 0;else{let e=$(r,`@zxch3n/flock/flock:ffi-js.mbt:313:41-313:64`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}m=sv(iv(t))}let h;if(pv(i)||fv(i))h=or;else{let e=$(i,`@zxch3n/flock/flock:ffi-js.mbt:319:12-319:30`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}let n=Lm(t,`@zxch3n/flock/flock:ffi-js.mbt:319:12-319:42`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}h=new sr(r)}if(m===void 0){let t=E_(e,f,p,Ui,h,Gi);if(t.$tag===1){t._0;return}else{t._0;break _L}}else{let t=E_(e,f,p,new Wi(m),h,Gi);if(t.$tag===1){t._0;return}else{t._0;break _L}}}S()}function Dv(e,t,n){_L:{let r=$(t,`@zxch3n/flock/flock:ffi-js.mbt:341:21-341:39`),i;if(r.$tag===1)i=r._0;else{r._0;break _L}let a=Bm(i,`@zxch3n/flock/flock:ffi-js.mbt:342:40-342:60`),o;if(a.$tag===1)o=a._0;else{a._0;break _L}let s=Array(o.length),c=o.length,l=0;for(;;){let e=l;if(e<c){let t=o[e];s[e]=iv(t),l=e+1|0;continue}else break}let u=s,d;if(pv(n)||fv(n))d=or;else{let e=$(n,`@zxch3n/flock/flock:ffi-js.mbt:347:12-347:30`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}let r=Lm(t,`@zxch3n/flock/flock:ffi-js.mbt:347:12-347:42`),i;if(r.$tag===1)i=r._0;else{r._0;break _L}d=new sr(i)}let f=O_(e,u,d);if(f.$tag===1){f._0;return}else{f._0;break _L}}S()}function Ov(e){return e.max_hlc.physical_time}function kv(e){return H_(e)}function Av(e){return ov($_(e))}function jv(e){return{bytes:lf(e.bytes)}}function Mv(e,t){let n=lf(e.bytes),r=t.bytes,i=0;for(;;){let e=i;if(e<32){C(n,e);let t=n[e];C(r,e);let a=r[e];C(n,e),n[e]=(t^a)&255,i=e+1|0;continue}else break}return{bytes:n}}function Nv(e){let t={val:s_()},n=Aa;Tg(e.kv)((e,n)=>(n.value.data===void 0||(t.val=Mv(t.val,l_(n))),1));let r=n;switch(r.$tag){case 0:break;case 1:r._0;break;case 2:return r._0;case 3:S();break;default:S()}let i=jv(t.val);return e.digest={sum:t.val,pending:[]},i}function Pv(e){let t=e.digest;if(t!==void 0){let n=t,r=n.sum,i=n.pending;if(i.length===0)return jv(r);if(i.length>=e.kv.size)return Nv(e);let a=jv(r),o=0;for(;;){let e=o;if(e<i.length){a=Mv(a,qs(i,e)),o=e+1|0;continue}else break}return e.digest={sum:a,pending:[]},jv(a)}return Nv(e)}function Fv(e){let t=e.bytes;return Ig(xf(e=>{let n=t.length,r=0;for(;;){let i=r;if(i<n)if(e(t[i])===1){r=i+1|0;continue}else return 0;else return 1}}))}function Iv(e){return Fv(Pv(e))}function Lv(e){return Iv(e)}function Rv(e,t,n,r){_L:{let i=$(t,`@zxch3n/flock/flock:ffi-js.mbt:381:21-381:39`),a;if(i.$tag===1)a=i._0;else{i._0;break _L}let o=Bm(a,`@zxch3n/flock/flock:ffi-js.mbt:382:40-382:60`),s;if(o.$tag===1)s=o._0;else{o._0;break _L}let c=Array(s.length),l=s.length,u=0;for(;;){let e=u;if(e<l){let t=s[e];c[e]=iv(t),u=e+1|0;continue}else break}let d=c,f;_L$2:{_L$3:{let e=xm({str:n,start:0,end:n.length},1024);if(e.$tag===1)f=e._0;else{e._0;break _L$3}break _L$2}f=S()}let p;if(pv(r)||fv(r))p=or;else{let e=$(r,`@zxch3n/flock/flock:ffi-js.mbt:388:12-388:30`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}let n=Lm(t,`@zxch3n/flock/flock:ffi-js.mbt:388:12-388:42`),i;if(n.$tag===1)i=n._0;else{n._0;break _L}p=new sr(i)}let m=ev(e,d,f,p);if(m.$tag===1){m._0;return}else{m._0;break _L}}S()}function zv(e,t){_L:{let n=$(t,`@zxch3n/flock/flock:ffi-js.mbt:397:21-397:39`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}let i=Bm(r,`@zxch3n/flock/flock:ffi-js.mbt:398:40-398:60`),a;if(i.$tag===1)a=i._0;else{i._0;break _L}let o=Array(a.length),s=a.length,c=0;for(;;){let e=c;if(e<s){let t=a[e];o[e]=iv(t),c=e+1|0;continue}else break}return ov(z(tv(e,o)))}return S()}function Bv(e,t){_L:{let n=$(e,`@zxch3n/flock/flock:ffi-js.mbt:408:22-408:41`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}let i=iv(r),a=$(t,`@zxch3n/flock/flock:ffi-js.mbt:410:22-410:44`),o;if(a.$tag===1)o=a._0;else{a._0;break _L}let s=Rm(o,`@zxch3n/flock/flock:ffi-js.mbt:411:16-411:38`),c;if(s.$tag===1)c=s._0;else{s._0;break _L}let l=Q_(i,xv(c));if(l.$tag===1)return l._0;l._0;break _L}return S()}function Vv(e,t,n,r){_L:{let i;if(pv(t)||fv(t))i=Ni;else{let e=$(t,`@zxch3n/flock/flock:ffi-js.mbt:427:25-427:45`),n;if(e.$tag===1)n=e._0;else{e._0;break _L}i=Sv(iv(n))}let a;if(pv(n)||fv(n))a=Ni;else{let e=$(n,`@zxch3n/flock/flock:ffi-js.mbt:433:23-433:41`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}a=Sv(iv(t))}let o;if(pv(r)||fv(r))o=ya;else{let e=$(r,`@zxch3n/flock/flock:ffi-js.mbt:439:26-439:47`),t;if(e.$tag===1)t=e._0;else{e._0;break _L}let n=Bm(t,`@zxch3n/flock/flock:ffi-js.mbt:440:45-440:68`),i;if(n.$tag===1)i=n._0;else{n._0;break _L}let a=Array(i.length),s=i.length,c=0;for(;;){let e=c;if(e<s){let t=i[e];a[e]=iv(t),c=e+1|0;continue}else break}o=new ba(a)}let s=El(0),c;if(o.$tag===1){let t=o._0;c=z_(e,i,a,new ba(t))}else c=z_(e,i,a,ya);return gd(c,(e,t)=>{let n=L(8);R(n,`key`,z(e)),R(n,`raw`,g_(t.value));let r=t.value.data;return r===void 0||R(n,`value`,r),Nl(s,B(n)),1}),ov(z(s))}return S()}function Hv(e){let t=L(8),n=e.data;n===void 0||R(t,`data`,n);let r=e.metadata;return r===void 0||R(t,`metadata`,uv(r)),B(t)}function Uv(e,t){_L:{let n=$(t,`@zxch3n/flock/flock:ffi-js.mbt:498:26-498:49`),r;if(n.$tag===1)r=n._0;else{n._0;break _L}return Ia(V_(e,e=>{let t=El(0),n=0;for(;;){let r=n;if(r<e.events.length){let i=Ws(e.events,r),a=i._0,o=i._1,s=L(8);R(s,`key`,z(a));let c=o.data;c===void 0||R(s,`value`,c);let l=o.metadata;l===void 0||R(s,`metadata`,uv(l)),R(s,`payload`,Hv(o)),Nl(t,B(s)),n=r+1|0;continue}else break}let a=L(8);R(a,`events`,z(t));let o=e.by,s;if(o.$tag===0)s=new i(`local`);else{let e=o._0;s=new i(e)}R(a,`source`,s),Fa(r,ov(B(a)))}))}return S()}function Wv(e){k_(e)}function Gv(e){A_(e)}function Kv(e){j_(e)}function qv(e){return M_(e)}function Jv(e){return sy(e)}function Yv(e){return py(e)}const Xv=new TextEncoder,Zv=new TextDecoder;function Qv(e){return Xv.encode(e).length}function $v(e){return typeof e==`string`&&Qv(e)<128}function ey(){let e=new Uint8Array(32);if(typeof crypto<`u`&&typeof crypto.getRandomValues==`function`)crypto.getRandomValues(e);else for(let t=0;t<32;t+=1)e[t]=Math.floor(Math.random()*256);return Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``)}function ty(e){if(e===void 0)return ey();if(!$v(e))throw TypeError(`peerId must be a UTF-8 string under 128 bytes.`);return e}function ny(e,t){if(e===t)return 0;let n=Math.min(e.length,t.length);for(let r=0;r<n;r+=1){let n=e[r]-t[r];if(n!==0)return n}return e.length-t.length}function ry(e){if(!e||typeof e!=`object`)return[];let t=[];for(let[n,r]of Object.entries(e)){if(!r||!$v(n))continue;let{physicalTime:e,logicalCounter:i}=r;if(typeof e!=`number`||!Number.isFinite(e)||typeof i!=`number`||!Number.isFinite(i))continue;let a=Xv.encode(n);t.push({peer:n,peerBytes:a,timestamp:Math.trunc(e),counter:Math.max(0,Math.trunc(i))})}return t.sort((e,t)=>{if(e.timestamp!==t.timestamp)return e.timestamp-t.timestamp;let n=ny(e.peerBytes,t.peerBytes);return n===0?e.counter-t.counter:n}),t}function iy(e,t){if(!Number.isFinite(e)||e<0)throw TypeError(`leb128 values must be finite and non-negative`);let n=Math.trunc(e);if(n===0){t.push(0);return}for(;n>0;){let e=n%128;n=Math.floor(n/128),t.push(n>0?e|128:e)}}function ay(e,t){iy(e.length,t);for(let n=0;n<e.length;n+=1)t.push(e[n])}const oy=new Uint8Array([86,69,86,69]);function sy(e){let t=ry(e),n=Array.from(oy);if(t.length===0)return Uint8Array.from(n);let r=0;for(let e=0;e<t.length;e+=1){let i=t[e];if(i.timestamp<0)throw TypeError(`timestamp must be non-negative`);if(e===0)iy(i.timestamp,n),r=i.timestamp;else{let e=i.timestamp-r;if(e<0)throw TypeError(`version vector timestamps must be non-decreasing`);iy(e,n),r=i.timestamp}iy(i.counter,n),ay(i.peerBytes,n)}return Uint8Array.from(n)}function cy(e,t){let n=0,r=1,i=0;for(;t+i<e.length;){let a=e[t+i];if(i+=1,n+=(a&127)*r,!(a&128))break;r*=128}return[n,i]}function ly(e,t){let[n,r]=cy(e,t),i=t+r,a=i+n;if(a>e.length)throw TypeError(`varString length exceeds buffer`);let o=e.subarray(i,a);return[Zv.decode(o),r+n]}function uy(e){return e.length>=4&&e[0]===oy[0]&&e[1]===oy[1]&&e[2]===oy[2]&&e[3]===oy[3]}function dy(e){let t=0,[n,r]=cy(e,t);t+=r;let[i,a]=cy(e,t);t+=a;let o={};for(let r=0;r<n;r+=1){let[n,r]=ly(e,t);if(t+=r,!$v(n))throw TypeError(`invalid peer id in encoded version vector`);let[a,s]=cy(e,t);t+=s;let[c,l]=cy(e,t);t+=l,o[n]={physicalTime:i+a,logicalCounter:c}}return o}function fy(e){let t=4,n={};if(t===e.length)return n;let[r,i]=cy(e,t);t+=i;let[a,o]=cy(e,t);t+=o;let[s,c]=ly(e,t);if(t+=c,!$v(s))throw TypeError(`invalid peer id in encoded version vector`);n[s]={physicalTime:r,logicalCounter:a};let l=r;for(;t<e.length;){let[r,i]=cy(e,t);t+=i;let[a,o]=cy(e,t);t+=o;let[s,c]=ly(e,t);if(t+=c,!$v(s))throw TypeError(`invalid peer id in encoded version vector`);let u=l+r;if(u<l)throw TypeError(`version vector timestamps must be non-decreasing`);n[s]={physicalTime:u,logicalCounter:a},l=u}return n}function py(e){return uy(e)?fy(e):dy(e)}function my(e){if(!e)return;let t={};for(let n of ry(e))t[n.peer]=[n.timestamp,n.counter];return t}function hy(e){if(e!==void 0&&!(typeof e!=`number`||!Number.isFinite(e)))return e}function gy(e){if(typeof e!=`object`||!e)return{};let t={};for(let[n,r]of Object.entries(e)){if(!Array.isArray(r)||r.length<2||!$v(n))continue;let[e,i]=r;typeof e!=`number`||!Number.isFinite(e)||typeof i!=`number`||!Number.isFinite(i)||(t[n]={physicalTime:e,logicalCounter:Math.trunc(i)})}return t}function _y(e){if(e)return e.kind===`unbounded`?{kind:`unbounded`}:{kind:e.kind,key:e.key.slice()}}function vy(e){if(!e||typeof e!=`object`)return;let t=e,n=ky(t.clock);if(!n)return;let r={metadata:Dy(t.metadata),clock:n};return`data`in t&&(r.data=wy(t.data)),r}function yy(e){if(!e||typeof e!=`object`)return{source:`local`,events:[]};let t=e;return{source:typeof t.source==`string`?t.source:`local`,events:(Array.isArray(t.events)?t.events:[]).filter(e=>!!e).map(e=>by(e))}}function by(e){let t=Array.isArray(e.key)?e.key:[],n=xy(e);return{key:t,value:n.data,metadata:Ey(n.metadata),payload:n}}function xy(e){let t={};`value`in e&&(t.data=wy(e.value));let n=Ey(e.metadata);return n!==void 0&&(t.metadata=n),Py(t,Sy(e.payload))}function Sy(e){if(!e||typeof e!=`object`)return;let t={};`data`in e&&(t.data=wy(e.data));let n=Ey(e.metadata);return n!==void 0&&(t.metadata=n),t}const Cy=globalThis.structuredClone;function wy(e){return e===void 0?e:Cy?Cy(e):JSON.parse(JSON.stringify(e))}function Ty(e){try{let t=JSON.parse(e);return Array.isArray(t)?t:[]}catch{return[]}}function Ey(e){if(!(!e||typeof e!=`object`||Array.isArray(e)))return wy(e)}function Dy(e){return Ey(e)??{}}function Oy(e){let t=typeof e.c==`string`?e.c:``,n=t.indexOf(`,`),r=n===-1?-1:t.indexOf(`,`,n+1);if(n===-1||r===-1)return{physicalTime:0,logicalCounter:0,peerId:``};let i=Number(t.slice(0,n)),a=Number(t.slice(n+1,r)),o=t.slice(r+1),s=$v(o)?o:``;return{physicalTime:Number.isFinite(i)?i:0,logicalCounter:Number.isFinite(a)?Math.trunc(a):0,peerId:s}}function ky(e){if(!e||typeof e!=`object`)return;let{physicalTime:t,logicalCounter:n,peerId:r}=e;if(!(typeof t!=`number`||!Number.isFinite(t))&&!(typeof n!=`number`||!Number.isFinite(n))&&$v(r))return{physicalTime:t,logicalCounter:Math.trunc(n),peerId:r}}function Ay(e){let t={};e.d!==void 0&&(t.data=wy(e.d));let n=Ey(e.m);return n!==void 0&&(t.metadata=n),t}function jy(e,t){let n={data:wy(e)},r=Ey(t);return r!==void 0&&(n.metadata=r),n}function My(e,t){if(!(!t||typeof t!=`object`)){if(`data`in t){let n=t.data;e.data=n===void 0?void 0:wy(n)}`metadata`in t&&(e.metadata=Ey(t.metadata))}}function Ny(e){let t={};return My(t,e),t}function Py(e,t){let n=Ny(e);return My(n,t),n}function Fy(e,t){let n={c:e};t.data!==void 0&&(n.d=wy(t.data));let r=Ey(t.metadata);return r!==void 0&&(n.m=r),n}function Iy(e){return Fy(e.c,Ay(e))}function Ly(e,t){return{key:Ty(e),clock:Oy(t),raw:Iy(t)}}function Ry(e){return!e||typeof e!=`object`?{accept:!0}:`accept`in e?e.accept?{accept:!0}:{accept:!1,reason:e.reason??`rejected`}:{accept:!0}}function zy(e){if(!e||typeof e!=`object`)return{accepted:0,skipped:[]};let t=e;return{accepted:typeof t.accepted==`number`?t.accepted:0,skipped:(Array.isArray(t.skipped)?t.skipped:[]).map(e=>({key:e&&Array.isArray(e.key)?e.key:[],reason:e&&typeof e.reason==`string`?e.reason:`unknown`}))}}function By(e){let t={version:e.version,entries:{}};for(let[n,r]of Object.entries(e.entries))t.entries[n]=Iy(r);return t}function Vy(e){return typeof e==`object`&&!!e&&(Object.prototype.hasOwnProperty.call(e,`hooks`)||Object.prototype.hasOwnProperty.call(e,`from`)||Object.prototype.hasOwnProperty.call(e,`pruneTombstonesBefore`)||Object.prototype.hasOwnProperty.call(e,`peerId`))}function Hy(e){return typeof e==`object`&&!!e&&Object.prototype.hasOwnProperty.call(e,`bundle`)}var Uy=class e{inner;listeners=new Set;nativeUnsubscribe;debounceState;constructor(e){this.inner=nv(ty(e))}static fromInner(t){let n=new e;return n.inner=t,n}static fromJson(t,n){let r=Bv(t,ty(n));return e.fromInner(r)}static checkConsistency(e,t){return!!Cv(e.inner,t.inner)}checkInvariants(){this.inner}setPeerId(e){b_(this.inner,ty(e))}putWithMetaInternal(e,t,n,r){let i=Ey(n);Ev(this.inner,e,JSON.stringify(t),i,r)}async putWithMetaWithHooks(e,t,n){let r=jy(t,n.metadata),i=n.hooks?.transform;if(!i){this.putWithMetaInternal(e,t,n.metadata,n.now);return}let a=Ny(r),o=Py(r,await i({key:e.slice(),now:n.now},a)??a),s=o.data;if(s===void 0)throw TypeError(`putWithMeta requires a data value`);this.putWithMetaInternal(e,s,o.metadata,n.now)}put(e,t,n){Tv(this.inner,e,JSON.stringify(t),n)}putWithMeta(e,t,n){let r=n??{};if(r.hooks?.transform)return this.putWithMetaWithHooks(e,t,r);this.putWithMetaInternal(e,t,r.metadata,r.now)}set(e,t,n){this.put(e,t,n)}delete(e,t){Dv(this.inner,e,t)}get(e){return cv(this.inner,e)}getEntry(e){return vy(dv(this.inner,e))}merge(e){Z_(this.inner,e.inner)}version(){return gy(yv(this.inner))}inclusiveVersion(){return gy(bv(this.inner))}exportJsonInternal(e,t,n){let r=hy(t),i=n!==void 0&&$v(n)?n:void 0;return hv(this.inner,my(e),r,i)}async exportJsonWithHooks(e){let t=this.exportJsonInternal(e.from,e.pruneTombstonesBefore,e.peerId),n=e.hooks?.transform;if(!n)return t;let r={version:t.version,entries:{}};for(let[e,i]of Object.entries(t.entries)){let t=Ly(e,i),a=Ay(i),o=Ny(a),s=Py(a,await n(t,o)??o);r.entries[e]=Fy(i.c,s)}return r}exportJson(e,t){return e===void 0?this.exportJsonInternal(void 0,t):Vy(e)?this.exportJsonWithHooks(e):this.exportJsonInternal(e,t)}importJsonInternal(e){return zy(gv(this.inner,e))}async importJsonWithHooks(e){let t=e.hooks?.preprocess,n=t?By(e.bundle):e.bundle,r=[];if(t)for(let e of Object.keys(n.entries)){let i=n.entries[e];if(!i)continue;let a=Ly(e,i),o=Ay(i),s=Ry(await t(a,Ny(o)));if(!s.accept){r.push({key:a.key,reason:s.reason}),delete n.entries[e];continue}n.entries[e]=Fy(i.c,o)}let i=this.importJsonInternal(n);return{accepted:i.accepted,skipped:r.concat(i.skipped)}}importJson(e){return Hy(e)?this.importJsonWithHooks(e):this.importJsonInternal(e)}importJsonStr(e){return zy(_v(this.inner,e))}getMaxPhysicalTime(){return Number(Ov(this.inner))}peerId(){let e=kv(this.inner);if(typeof e!=`string`)throw TypeError(`peerId ffi returned unexpected value`);if(!$v(e))throw TypeError(`peerId ffi returned an invalid string`);return e}digest(){let e=Lv(this.inner);if(typeof e!=`string`)throw TypeError(`digest ffi returned unexpected value`);return e}kvToJson(){return Av(this.inner)}putMvr(e,t,n){Rv(this.inner,e,JSON.stringify(t),n)}getMvr(e){let t=zv(this.inner,e);return Array.isArray(t)?t:[]}scan(e={}){let t=_y(e.start),n=_y(e.end),r=e.prefix?e.prefix.slice():void 0,i=Vv(this.inner,t,n,r);return Array.isArray(i)?i.filter(e=>!!e).map(e=>({key:Array.isArray(e.key)?e.key:[],raw:e.raw,value:e.value})):[]}ensureNativeSubscription(){this.nativeUnsubscribe===void 0&&(this.nativeUnsubscribe=Uv(this.inner,e=>{let t=yy(e);this.handleBatch(t)}))}handleBatch(e){if(this.debounceState!==void 0){let t=this.debounceState.pendingEvents.length===0;this.debounceState.pendingEvents.push(...e.events),this.resetDebounceTimer(t)}else this.emitBatch(e)}emitBatch(e){for(let t of this.listeners)t(e)}resetDebounceTimer(e){this.debounceState!==void 0&&(this.debounceState.timerId!==void 0&&clearTimeout(this.debounceState.timerId),this.debounceState.timerId=setTimeout(()=>{this.commit()},this.debounceState.timeout),this.debounceState.maxTimerId===void 0&&e&&(this.debounceState.maxTimerId=setTimeout(()=>{this.commit()},this.debounceState.maxDebounceTime)))}subscribe(e){return this.listeners.add(e),this.ensureNativeSubscription(),()=>{this.listeners.delete(e),this.listeners.size===0&&this.nativeUnsubscribe!==void 0&&(this.nativeUnsubscribe(),this.nativeUnsubscribe=void 0)}}autoDebounceCommit(e,t){if(this.isInTxn())throw Error(`Cannot enable autoDebounceCommit while transaction is active`);if(this.debounceState!==void 0)throw Error(`autoDebounceCommit is already active`);this.debounceState={timeout:e,maxDebounceTime:t?.maxDebounceTime??1e4,timerId:void 0,maxTimerId:void 0,pendingEvents:[]}}disableAutoDebounceCommit(){if(this.debounceState===void 0)return;let{timerId:e,maxTimerId:t,pendingEvents:n}=this.debounceState;e!==void 0&&clearTimeout(e),t!==void 0&&clearTimeout(t),this.debounceState=void 0,n.length>0&&this.emitBatch({source:`local`,events:n})}commit(){if(this.debounceState===void 0)return;let{timerId:e,maxTimerId:t,pendingEvents:n}=this.debounceState;e!==void 0&&(clearTimeout(e),this.debounceState.timerId=void 0),t!==void 0&&(clearTimeout(t),this.debounceState.maxTimerId=void 0),n.length>0&&(this.emitBatch({source:`local`,events:n}),this.debounceState.pendingEvents=[])}isAutoDebounceActive(){return this.debounceState!==void 0}txn(e){Wv(this.inner);try{let t=e();return Gv(this.inner),t}catch(e){throw qv(this.inner)&&Kv(this.inner),e}}isInTxn(){return!!qv(this.inner)}};exports.Flock=Uy,exports.decodeVersionVector=Yv,exports.encodeVersionVector=Jv;
|
|
11
11
|
//# sourceMappingURL=index.cjs.map
|