@rive-app/canvas-advanced 2.4.4 → 2.6.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.
@@ -5,100 +5,111 @@ var Rive = (() => {
5
5
  return (
6
6
  function(moduleArg = {}) {
7
7
 
8
- var m=moduleArg,aa,ba;m.ready=new Promise((b,a)=>{aa=b;ba=a});
9
- function ca(){function b(h){const g=d;c=a=0;d=new Map;g.forEach(l=>{try{l(h)}catch(k){console.error(k)}});this.Sa();e&&e.pb()}let a=0,c=0,d=new Map,e=null,f=null;this.requestAnimationFrame=function(h){a||(a=requestAnimationFrame(b.bind(this)));const g=++c;d.set(g,h);return g};this.cancelAnimationFrame=function(h){d.delete(h);a&&0==d.size&&(cancelAnimationFrame(a),a=0)};this.nb=function(h){f&&(document.body.remove(f),f=null);h||(f=document.createElement("div"),f.style.backgroundColor="black",f.style.position=
10
- "fixed",f.style.right=0,f.style.top=0,f.style.color="white",f.style.padding="4px",f.innerHTML="RIVE FPS",h=function(g){f.innerHTML="RIVE FPS "+g.toFixed(1)},document.body.appendChild(f));e=new function(){let g=0,l=0;this.pb=function(){var k=performance.now();l?(++g,k-=l,1E3<k&&(h(1E3*g/k),g=l=0)):(l=k,g=0)}}};this.kb=function(){f&&(document.body.remove(f),f=null);e=null};this.Sa=function(){}}
11
- function da(b){console.assert(!0);const a=new Map;let c=-Infinity;this.push=function(d){d=d+((1<<b)-1)>>b;a.has(d)&&clearTimeout(a.get(d));a.set(d,setTimeout(function(){a.delete(d);0==a.length?c=-Infinity:d==c&&(c=Math.max(...a.keys()),console.assert(c<d))},1E3));c=Math.max(d,c);return c<<b}}
12
- const fa="createConicGradient createImageData createLinearGradient createPattern createRadialGradient getContextAttributes getImageData getLineDash getTransform isContextLost isPointInPath isPointInStroke measureText".split(" "),ha=new function(){function b(){if(!a){var t=document.createElement("canvas"),v={alpha:1,depth:0,stencil:0,antialias:0,premultipliedAlpha:1,preserveDrawingBuffer:0,preferLowPowerToHighPerformance:0,failIfMajorPerformanceCaveat:0,enableExtensionsByDefault:1,explicitSwapControl:1,
13
- renderViaOffscreenBackBuffer:1};let q=t.getContext("webgl2",v);if(q)c=2;else if(q=t.getContext("webgl",v))c=1;else return console.log("No WebGL support. Image mesh will not be drawn."),!1;d=Math.min(q.getParameter(q.MAX_RENDERBUFFER_SIZE),q.getParameter(q.MAX_TEXTURE_SIZE));function G(I,w,z){w=q.createShader(w);q.shaderSource(w,z);q.compileShader(w);z=q.getShaderInfoLog(w);if(0<z.length)throw z;q.attachShader(I,w)}t=q.createProgram();G(t,q.VERTEX_SHADER,"attribute vec2 vertex;\n attribute vec2 uv;\n uniform vec4 mat;\n uniform vec2 translate;\n varying vec2 st;\n void main() {\n st = uv;\n gl_Position = vec4(mat2(mat) * vertex + translate, 0, 1);\n }");
14
- G(t,q.FRAGMENT_SHADER,"precision highp float;\n uniform sampler2D image;\n varying vec2 st;\n void main() {\n gl_FragColor = texture2D(image, st);\n }");q.bindAttribLocation(t,0,"vertex");q.bindAttribLocation(t,1,"uv");q.linkProgram(t);v=q.getProgramInfoLog(t);if(0<v.trim().length)throw v;e=q.getUniformLocation(t,"mat");f=q.getUniformLocation(t,"translate");q.useProgram(t);q.bindBuffer(q.ARRAY_BUFFER,q.createBuffer());
15
- q.enableVertexAttribArray(0);q.enableVertexAttribArray(1);q.bindBuffer(q.ELEMENT_ARRAY_BUFFER,q.createBuffer());q.uniform1i(q.getUniformLocation(t,"image"),0);q.pixelStorei(q.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);a=q}return!0}let a=null,c=0,d=0,e=null,f=null,h=0,g=0;this.yb=function(){b();return d};this.ib=function(t){if(!b())return null;const v=a.createTexture();a.bindTexture(a.TEXTURE_2D,v);a.texImage2D(a.TEXTURE_2D,0,a.RGBA,a.RGBA,a.UNSIGNED_BYTE,t);a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_S,a.CLAMP_TO_EDGE);
16
- a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_T,a.CLAMP_TO_EDGE);a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MAG_FILTER,a.LINEAR);2==c?(a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MIN_FILTER,a.LINEAR_MIPMAP_LINEAR),a.generateMipmap(a.TEXTURE_2D)):a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MIN_FILTER,a.LINEAR);return v};const l=new da(8),k=new da(8),p=new da(10),r=new da(10);this.mb=function(t,v,q,G,I){if(b()){var w=l.push(t),z=k.push(v);if(a.canvas.width!=w||a.canvas.height!=z)a.canvas.width=w,a.canvas.height=z;
17
- a.viewport(0,z-v,t,v);a.disable(a.SCISSOR_TEST);a.clearColor(0,0,0,0);a.clear(a.COLOR_BUFFER_BIT);a.enable(a.SCISSOR_TEST);q.sort((B,ea)=>ea.Wa-B.Wa);w=p.push(G);h!=w&&(a.bufferData(a.ARRAY_BUFFER,8*w,a.DYNAMIC_DRAW),h=w);w=0;for(var J of q)a.bufferSubData(a.ARRAY_BUFFER,w,J.Fa),w+=4*J.Fa.length;console.assert(w==4*G);for(var P of q)a.bufferSubData(a.ARRAY_BUFFER,w,P.Za),w+=4*P.Za.length;console.assert(w==8*G);w=r.push(I);g!=w&&(a.bufferData(a.ELEMENT_ARRAY_BUFFER,2*w,a.DYNAMIC_DRAW),g=w);J=0;for(var Y of q)a.bufferSubData(a.ELEMENT_ARRAY_BUFFER,
18
- J,Y.indices),J+=2*Y.indices.length;console.assert(J==2*I);Y=0;P=!0;w=J=0;for(const B of q){B.image.Ba!=Y&&(a.bindTexture(a.TEXTURE_2D,B.image.fb||null),Y=B.image.Ba);B.Bb?(a.scissor(B.Ka,z-B.La-B.Ra,B.Ib,B.Ra),P=!0):P&&(a.scissor(0,z-v,t,v),P=!1);q=2/t;const ea=-2/v;a.uniform4f(e,B.qa[0]*q*B.xa,B.qa[1]*ea*B.ya,B.qa[2]*q*B.xa,B.qa[3]*ea*B.ya);a.uniform2f(f,B.qa[4]*q*B.xa+q*(B.Ka-B.zb*B.xa)-1,B.qa[5]*ea*B.ya+ea*(B.La-B.Ab*B.ya)+1);a.vertexAttribPointer(0,2,a.FLOAT,!1,0,w);a.vertexAttribPointer(1,2,
19
- a.FLOAT,!1,0,w+4*G);a.drawElements(a.TRIANGLES,B.indices.length,a.UNSIGNED_SHORT,J);w+=4*B.Fa.length;J+=2*B.indices.length}console.assert(w==4*G);console.assert(J==2*I)}};this.canvas=function(){return b()&&a.canvas}};
20
- m.onRuntimeInitialized=function(){function b(n){switch(n){case k.srcOver:return"source-over";case k.screen:return"screen";case k.overlay:return"overlay";case k.darken:return"darken";case k.lighten:return"lighten";case k.colorDodge:return"color-dodge";case k.colorBurn:return"color-burn";case k.hardLight:return"hard-light";case k.softLight:return"soft-light";case k.difference:return"difference";case k.exclusion:return"exclusion";case k.multiply:return"multiply";case k.hue:return"hue";case k.saturation:return"saturation";
21
- case k.color:return"color";case k.luminosity:return"luminosity"}}function a(n){return"rgba("+((16711680&n)>>>16)+","+((65280&n)>>>8)+","+((255&n)>>>0)+","+((4278190080&n)>>>24)/255+")"}function c(){0<J.length&&(ha.mb(z.drawWidth(),z.drawHeight(),J,P,Y),J=[],Y=P=0,z.reset(512,512));for(const n of w){for(const u of n.fa)u();n.fa=[]}w.clear()}var d=m.RenderPaintStyle;const e=m.RenderPath,f=m.RenderPaint,h=m.Renderer,g=m.StrokeCap,l=m.StrokeJoin,k=m.BlendMode,p=d.fill,r=d.stroke,t=m.FillRule.evenOdd;
22
- let v=1;var q=m.RenderImage.extend("CanvasRenderImage",{__construct:function(){this.__parent.__construct.call(this);this.Ba=v;v=v+1&2147483647||1},decode:function(n){let u=Xa;u.total++;var C=this,A=new Image;A.src=URL.createObjectURL(new Blob([n],{type:"image/png"}));A.onload=function(){C.cb=A;C.fb=ha.ib(A);C.size(A.width,A.height);u.loaded++;if(u.loaded===u.total){const y=u.ready;y&&(y(),u.ready=null)}}}}),G=e.extend("CanvasRenderPath",{__construct:function(){this.__parent.__construct.call(this);
23
- this.ka=new Path2D},rewind:function(){this.ka=new Path2D},addPath:function(n,u,C,A,y,F,D){var E=this.ka,R=E.addPath;n=n.ka;const K=new DOMMatrix;K.a=u;K.b=C;K.c=A;K.d=y;K.e=F;K.f=D;R.call(E,n,K)},fillRule:function(n){this.Ia=n},moveTo:function(n,u){this.ka.moveTo(n,u)},lineTo:function(n,u){this.ka.lineTo(n,u)},cubicTo:function(n,u,C,A,y,F){this.ka.bezierCurveTo(n,u,C,A,y,F)},close:function(){this.ka.closePath()}}),I=f.extend("CanvasRenderPaint",{color:function(n){this.Ja=a(n)},thickness:function(n){this.gb=
24
- n},join:function(n){switch(n){case l.miter:this.Aa="miter";break;case l.round:this.Aa="round";break;case l.bevel:this.Aa="bevel"}},cap:function(n){switch(n){case g.butt:this.za="butt";break;case g.round:this.za="round";break;case g.square:this.za="square"}},style:function(n){this.eb=n},blendMode:function(n){this.bb=b(n)},clearGradient:function(){this.sa=null},linearGradient:function(n,u,C,A){this.sa={Xa:n,Ya:u,Na:C,Oa:A,Ea:[]}},radialGradient:function(n,u,C,A){this.sa={Xa:n,Ya:u,Na:C,Oa:A,Ea:[],wb:!0}},
25
- addStop:function(n,u){this.sa.Ea.push({color:n,stop:u})},completeGradient:function(){},draw:function(n,u,C){let A=this.eb;var y=this.Ja,F=this.sa;n.globalCompositeOperation=this.bb;if(null!=F){y=F.Xa;var D=F.Ya;const R=F.Na;var E=F.Oa;const K=F.Ea;F.wb?(F=R-y,E-=D,y=n.createRadialGradient(y,D,0,y,D,Math.sqrt(F*F+E*E))):y=n.createLinearGradient(y,D,R,E);for(let U=0,M=K.length;U<M;U++)D=K[U],y.addColorStop(D.stop,a(D.color));this.Ja=y;this.sa=null}switch(A){case r:n.strokeStyle=y;n.lineWidth=this.gb;
26
- n.lineCap=this.za;n.lineJoin=this.Aa;n.stroke(u);break;case p:n.fillStyle=y,n.fill(u,C)}}});const w=new Set;let z=null,J=[],P=0,Y=0;var B=m.CanvasRenderer=h.extend("Renderer",{__construct:function(n){this.__parent.__construct.call(this);this.ja=[1,0,0,1,0,0];this.da=n.getContext("2d");this.Ha=n;this.fa=[]},save:function(){this.ja.push(...this.ja.slice(this.ja.length-6));this.fa.push(this.da.save.bind(this.da))},restore:function(){const n=this.ja.length-6;if(6>n)throw"restore() called without matching save().";
27
- this.ja.splice(n);this.fa.push(this.da.restore.bind(this.da))},transform:function(n,u,C,A,y,F){const D=this.ja,E=D.length-6;D.splice(E,6,D[E]*n+D[E+2]*u,D[E+1]*n+D[E+3]*u,D[E]*C+D[E+2]*A,D[E+1]*C+D[E+3]*A,D[E]*y+D[E+2]*F+D[E+4],D[E+1]*y+D[E+3]*F+D[E+5]);this.fa.push(this.da.transform.bind(this.da,n,u,C,A,y,F))},rotate:function(n){const u=Math.sin(n);n=Math.cos(n);this.transform(n,u,-u,n,0,0)},_drawPath:function(n,u){this.fa.push(u.draw.bind(u,this.da,n.ka,n.Ia===t?"evenodd":"nonzero"))},_drawRiveImage:function(n,
28
- u,C){var A=n.cb;if(A){var y=this.da,F=b(u);this.fa.push(function(){y.globalCompositeOperation=F;y.globalAlpha=C;y.drawImage(A,0,0);y.globalAlpha=1})}},_getMatrix:function(n){const u=this.ja,C=u.length-6;for(let A=0;6>A;++A)n[A]=u[C+A]},_drawImageMesh:function(n,u,C,A,y,F,D,E,R,K){var U=this.da.canvas.width,M=this.da.canvas.height;const pb=R-D,qb=K-E;D=Math.max(D,0);E=Math.max(E,0);R=Math.min(R,U);K=Math.min(K,M);const ua=R-D,va=K-E;console.assert(ua<=Math.min(pb,U));console.assert(va<=Math.min(qb,
29
- M));if(!(0>=ua||0>=va)){R=ua<pb||va<qb;U=K=1;var ia=Math.ceil(ua*K),ja=Math.ceil(va*U);M=ha.yb();ia>M&&(K*=M/ia,ia=M);ja>M&&(U*=M/ja,ja=M);z||(z=new m.DynamicRectanizer(M),z.reset(512,512));M=z.addRect(ia,ja);0>M&&(c(),w.add(this),M=z.addRect(ia,ja),console.assert(0<=M));var rb=M&65535,sb=M>>16;J.push({qa:this.ja.slice(this.ja.length-6),image:n,Ka:rb,La:sb,zb:D,Ab:E,Ib:ia,Ra:ja,xa:K,ya:U,Fa:new Float32Array(A),Za:new Float32Array(y),indices:new Uint16Array(F),Bb:R,Wa:n.Ba<<1|(R?1:0)});P+=A.length;
30
- Y+=F.length;var na=this.da,dc=b(u);this.fa.push(function(){na.save();na.resetTransform();na.globalCompositeOperation=dc;na.globalAlpha=C;na.drawImage(ha.canvas(),rb,sb,ia,ja,D,E,ua,va);na.restore()})}},_clipPath:function(n){this.fa.push(this.da.clip.bind(this.da,n.ka,n.Ia===t?"evenodd":"nonzero"))},clear:function(){w.add(this);this.fa.push(this.da.clearRect.bind(this.da,0,0,this.Ha.width,this.Ha.height))},flush:function(){},translate:function(n,u){this.transform(1,0,0,1,n,u)}});m.makeRenderer=function(n){const u=
31
- new B(n),C=u.da;return new Proxy(u,{get(A,y){if("function"===typeof A[y])return function(...F){return A[y].apply(A,F)};if("function"===typeof C[y]){if(-1<fa.indexOf(y))throw Error("RiveException: Method call to '"+y+"()' is not allowed, as the renderer cannot immediately pass through the return values of any canvas 2d context methods.");return function(...F){u.fa.push(C[y].bind(C,...F))}}return A[y]},set(A,y,F){if(y in C)return C[y]=F,!0}})};m.renderFactory={makeRenderPaint:function(){return new I},
32
- makeRenderPath:function(){return new G},makeRenderImage:function(){return new q}};let ea=m.load,Xa=null;m.load=function(n){return new Promise(function(u){let C=null;Xa={total:0,loaded:0,ready:function(){u(C)}};C=ea(n);0==Xa.total&&u(C)})};d=new ca;m.requestAnimationFrame=d.requestAnimationFrame.bind(d);m.cancelAnimationFrame=d.cancelAnimationFrame.bind(d);m.enableFPSCounter=d.nb.bind(d);m.disableFPSCounter=d.kb;d.Sa=c;m.cleanup=function(){z&&z.delete()}};
33
- var ka=Object.assign({},m),la="./this.program",ma="object"==typeof window,oa="function"==typeof importScripts,x="",pa,qa;
34
- if(ma||oa)oa?x=self.location.href:"undefined"!=typeof document&&document.currentScript&&(x=document.currentScript.src),_scriptDir&&(x=_scriptDir),0!==x.indexOf("blob:")?x=x.substr(0,x.replace(/[?#].*/,"").lastIndexOf("/")+1):x="",oa&&(qa=b=>{var a=new XMLHttpRequest;a.open("GET",b,!1);a.responseType="arraybuffer";a.send(null);return new Uint8Array(a.response)}),pa=(b,a,c)=>{var d=new XMLHttpRequest;d.open("GET",b,!0);d.responseType="arraybuffer";d.onload=()=>{200==d.status||0==d.status&&d.response?
35
- a(d.response):c()};d.onerror=c;d.send(null)};var ra=m.print||console.log.bind(console),sa=m.printErr||console.error.bind(console);Object.assign(m,ka);ka=null;m.thisProgram&&(la=m.thisProgram);var ta;m.wasmBinary&&(ta=m.wasmBinary);var noExitRuntime=m.noExitRuntime||!0;"object"!=typeof WebAssembly&&wa("no native wasm support detected");var xa,H,ya=!1,za,L,Aa,Ba,Ca,N,Da,Ea;
36
- function Fa(){var b=xa.buffer;m.HEAP8=za=new Int8Array(b);m.HEAP16=Aa=new Int16Array(b);m.HEAP32=Ca=new Int32Array(b);m.HEAPU8=L=new Uint8Array(b);m.HEAPU16=Ba=new Uint16Array(b);m.HEAPU32=N=new Uint32Array(b);m.HEAPF32=Da=new Float32Array(b);m.HEAPF64=Ea=new Float64Array(b)}var Ga,Ha=[],Ia=[],Ja=[];function Ka(){var b=m.preRun.shift();Ha.unshift(b)}var La=0,Ma=null,Na=null;
37
- function wa(b){if(m.onAbort)m.onAbort(b);b="Aborted("+b+")";sa(b);ya=!0;b=new WebAssembly.RuntimeError(b+". Build with -sASSERTIONS for more info.");ba(b);throw b;}function Oa(b){return b.startsWith("data:application/octet-stream;base64,")}var Pa;Pa="canvas_advanced.wasm";if(!Oa(Pa)){var Qa=Pa;Pa=m.locateFile?m.locateFile(Qa,x):x+Qa}function Ra(b){if(b==Pa&&ta)return new Uint8Array(ta);if(qa)return qa(b);throw"both async and sync fetching of the wasm failed";}
38
- function Sa(b){if(!ta&&(ma||oa)){if("function"==typeof fetch&&!b.startsWith("file://"))return fetch(b,{credentials:"same-origin"}).then(a=>{if(!a.ok)throw"failed to load wasm binary file at '"+b+"'";return a.arrayBuffer()}).catch(()=>Ra(b));if(pa)return new Promise((a,c)=>{pa(b,d=>a(new Uint8Array(d)),c)})}return Promise.resolve().then(()=>Ra(b))}function Ta(b,a,c){return Sa(b).then(d=>WebAssembly.instantiate(d,a)).then(d=>d).then(c,d=>{sa("failed to asynchronously prepare wasm: "+d);wa(d)})}
39
- function Ua(b,a){var c=Pa;return ta||"function"!=typeof WebAssembly.instantiateStreaming||Oa(c)||c.startsWith("file://")||"function"!=typeof fetch?Ta(c,b,a):fetch(c,{credentials:"same-origin"}).then(d=>WebAssembly.instantiateStreaming(d,b).then(a,function(e){sa("wasm streaming compile failed: "+e);sa("falling back to ArrayBuffer instantiation");return Ta(c,b,a)}))}var Va=b=>{for(;0<b.length;)b.shift()(m)};
40
- function Wa(b){if(void 0===b)return"_unknown";b=b.replace(/[^a-zA-Z0-9_]/g,"$");var a=b.charCodeAt(0);return 48<=a&&57>=a?`_${b}`:b}function Ya(b,a){b=Wa(b);return{[b]:function(){return a.apply(this,arguments)}}[b]}function Za(){this.la=[void 0];this.Qa=[]}var O=new Za,$a=void 0;function Q(b){throw new $a(b);}
41
- var S=b=>{b||Q("Cannot use deleted val. handle = "+b);return O.get(b).value},T=b=>{switch(b){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:return O.ab({Va:1,value:b})}};
42
- function ab(b){var a=Error,c=Ya(b,function(d){this.name=b;this.message=d;d=Error(d).stack;void 0!==d&&(this.stack=this.toString()+"\n"+d.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(a.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`};return c}var bb=void 0,cb=void 0;function V(b){for(var a="";L[b];)a+=cb[L[b++]];return a}var db=[];
43
- function eb(){for(;db.length;){var b=db.pop();b.Y.pa=!1;b["delete"]()}}var fb=void 0,gb={};function hb(b,a){for(void 0===a&&Q("ptr should not be undefined");b.ba;)a=b.ta(a),b=b.ba;return a}var ib={};function jb(b){b=kb(b);var a=V(b);lb(b);return a}function mb(b,a){var c=ib[b];void 0===c&&Q(a+" has unknown type "+jb(b));return c}function nb(){}var ob=!1;function tb(b){--b.count.value;0===b.count.value&&(b.ea?b.ha.ma(b.ea):b.aa.Z.ma(b.$))}
44
- function ub(b,a,c){if(a===c)return b;if(void 0===c.ba)return null;b=ub(b,a,c.ba);return null===b?null:c.lb(b)}var vb={};function wb(b,a){a=hb(b,a);return gb[a]}var xb=void 0;function yb(b){throw new xb(b);}function zb(b,a){a.aa&&a.$||yb("makeClassHandle requires ptr and ptrType");!!a.ha!==!!a.ea&&yb("Both smartPtrType and smartPtr must be specified");a.count={value:1};return Ab(Object.create(b,{Y:{value:a}}))}
45
- function Ab(b){if("undefined"===typeof FinalizationRegistry)return Ab=a=>a,b;ob=new FinalizationRegistry(a=>{tb(a.Y)});Ab=a=>{var c=a.Y;c.ea&&ob.register(a,{Y:c},a);return a};nb=a=>{ob.unregister(a)};return Ab(b)}var Bb={};function Cb(b){for(;b.length;){var a=b.pop();b.pop()(a)}}function Db(b){return this.fromWireType(Ca[b>>2])}var Eb={},Fb={};
46
- function W(b,a,c){function d(g){g=c(g);g.length!==b.length&&yb("Mismatched type converter count");for(var l=0;l<b.length;++l)X(b[l],g[l])}b.forEach(function(g){Fb[g]=a});var e=Array(a.length),f=[],h=0;a.forEach((g,l)=>{ib.hasOwnProperty(g)?e[l]=ib[g]:(f.push(g),Eb.hasOwnProperty(g)||(Eb[g]=[]),Eb[g].push(()=>{e[l]=ib[g];++h;h===f.length&&d(e)}))});0===f.length&&d(e)}
47
- function Gb(b){switch(b){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError(`Unknown type size: ${b}`);}}function Hb(b,a,c={}){var d=a.name;b||Q(`type "${d}" must have a positive integer typeid pointer`);if(ib.hasOwnProperty(b)){if(c.vb)return;Q(`Cannot register type '${d}' twice`)}ib[b]=a;delete Fb[b];Eb.hasOwnProperty(b)&&(a=Eb[b],delete Eb[b],a.forEach(e=>e()))}
48
- function X(b,a,c={}){if(!("argPackAdvance"in a))throw new TypeError("registerType registeredInstance requires argPackAdvance");Hb(b,a,c)}function Ib(b){Q(b.Y.aa.Z.name+" instance already deleted")}function Jb(){}
49
- function Kb(b,a,c){if(void 0===b[a].ca){var d=b[a];b[a]=function(){b[a].ca.hasOwnProperty(arguments.length)||Q(`Function '${c}' called with an invalid number of arguments (${arguments.length}) - expects one of (${b[a].ca})!`);return b[a].ca[arguments.length].apply(this,arguments)};b[a].ca=[];b[a].ca[d.oa]=d}}
50
- function Lb(b,a,c){m.hasOwnProperty(b)?((void 0===c||void 0!==m[b].ca&&void 0!==m[b].ca[c])&&Q(`Cannot register public name '${b}' twice`),Kb(m,b,b),m.hasOwnProperty(c)&&Q(`Cannot register multiple overloads of a function with the same number of arguments (${c})!`),m[b].ca[c]=a):(m[b]=a,void 0!==c&&(m[b].Jb=c))}function Mb(b,a,c,d,e,f,h,g){this.name=b;this.constructor=a;this.ia=c;this.ma=d;this.ba=e;this.qb=f;this.ta=h;this.lb=g;this.Ta=[]}
51
- function Nb(b,a,c){for(;a!==c;)a.ta||Q(`Expected null or instance of ${c.name}, got an instance of ${a.name}`),b=a.ta(b),a=a.ba;return b}function Ob(b,a){if(null===a)return this.Ca&&Q(`null is not a valid ${this.name}`),0;a.Y||Q(`Cannot pass "${Pb(a)}" as a ${this.name}`);a.Y.$||Q(`Cannot pass deleted object as a pointer of type ${this.name}`);return Nb(a.Y.$,a.Y.aa.Z,this.Z)}
52
- function Qb(b,a){if(null===a){this.Ca&&Q(`null is not a valid ${this.name}`);if(this.wa){var c=this.Da();null!==b&&b.push(this.ma,c);return c}return 0}a.Y||Q(`Cannot pass "${Pb(a)}" as a ${this.name}`);a.Y.$||Q(`Cannot pass deleted object as a pointer of type ${this.name}`);!this.va&&a.Y.aa.va&&Q(`Cannot convert argument of type ${a.Y.ha?a.Y.ha.name:a.Y.aa.name} to parameter type ${this.name}`);c=Nb(a.Y.$,a.Y.aa.Z,this.Z);if(this.wa)switch(void 0===a.Y.ea&&Q("Passing raw pointer to smart pointer is illegal"),
53
- this.Hb){case 0:a.Y.ha===this?c=a.Y.ea:Q(`Cannot convert argument of type ${a.Y.ha?a.Y.ha.name:a.Y.aa.name} to parameter type ${this.name}`);break;case 1:c=a.Y.ea;break;case 2:if(a.Y.ha===this)c=a.Y.ea;else{var d=a.clone();c=this.Db(c,T(function(){d["delete"]()}));null!==b&&b.push(this.ma,c)}break;default:Q("Unsupporting sharing policy")}return c}
54
- function Rb(b,a){if(null===a)return this.Ca&&Q(`null is not a valid ${this.name}`),0;a.Y||Q(`Cannot pass "${Pb(a)}" as a ${this.name}`);a.Y.$||Q(`Cannot pass deleted object as a pointer of type ${this.name}`);a.Y.aa.va&&Q(`Cannot convert argument of type ${a.Y.aa.name} to parameter type ${this.name}`);return Nb(a.Y.$,a.Y.aa.Z,this.Z)}
55
- function Sb(b,a,c,d){this.name=b;this.Z=a;this.Ca=c;this.va=d;this.wa=!1;this.ma=this.Db=this.Da=this.Ua=this.Hb=this.Cb=void 0;void 0!==a.ba?this.toWireType=Qb:(this.toWireType=d?Ob:Rb,this.ga=null)}function Tb(b,a,c){m.hasOwnProperty(b)||yb("Replacing nonexistant public symbol");void 0!==m[b].ca&&void 0!==c?m[b].ca[c]=a:(m[b]=a,m[b].oa=c)}
56
- var Ub=(b,a)=>{var c=[];return function(){c.length=0;Object.assign(c,arguments);if(b.includes("j")){var d=m["dynCall_"+b];d=c&&c.length?d.apply(null,[a].concat(c)):d.call(null,a)}else d=Ga.get(a).apply(null,c);return d}};function Z(b,a){b=V(b);var c=b.includes("j")?Ub(b,a):Ga.get(a);"function"!=typeof c&&Q(`unknown function pointer with signature ${b}: ${a}`);return c}var Vb=void 0;
57
- function Wb(b,a){function c(f){e[f]||ib[f]||(Fb[f]?Fb[f].forEach(c):(d.push(f),e[f]=!0))}var d=[],e={};a.forEach(c);throw new Vb(`${b}: `+d.map(jb).join([", "]));}
58
- function Xb(b,a,c,d,e){var f=a.length;2>f&&Q("argTypes array size mismatch! Must at least get return value and 'this' types!");var h=null!==a[1]&&null!==c,g=!1;for(c=1;c<a.length;++c)if(null!==a[c]&&void 0===a[c].ga){g=!0;break}var l="void"!==a[0].name,k=f-2,p=Array(k),r=[],t=[];return function(){arguments.length!==k&&Q(`function ${b} called with ${arguments.length} arguments, expected ${k} args!`);t.length=0;r.length=h?2:1;r[0]=e;if(h){var v=a[1].toWireType(t,this);r[1]=v}for(var q=0;q<k;++q)p[q]=
59
- a[q+2].toWireType(t,arguments[q]),r.push(p[q]);q=d.apply(null,r);if(g)Cb(t);else for(var G=h?1:2;G<a.length;G++){var I=1===G?v:p[G-2];null!==a[G].ga&&a[G].ga(I)}v=l?a[0].fromWireType(q):void 0;return v}}function Yb(b,a){for(var c=[],d=0;d<b;d++)c.push(N[a+4*d>>2]);return c}
60
- function Zb(b,a,c){b instanceof Object||Q(`${c} with invalid "this": ${b}`);b instanceof a.Z.constructor||Q(`${c} incompatible with "this" of type ${b.constructor.name}`);b.Y.$||Q(`cannot call emscripten binding method ${c} on deleted object`);return Nb(b.Y.$,b.Y.aa.Z,a.Z)}function $b(b){b>=O.Ga&&0===--O.get(b).Va&&O.$a(b)}
61
- function ac(b,a,c){switch(a){case 0:return function(d){return this.fromWireType((c?za:L)[d])};case 1:return function(d){return this.fromWireType((c?Aa:Ba)[d>>1])};case 2:return function(d){return this.fromWireType((c?Ca:N)[d>>2])};default:throw new TypeError("Unknown integer type: "+b);}}function Pb(b){if(null===b)return"null";var a=typeof b;return"object"===a||"array"===a||"function"===a?b.toString():""+b}
62
- function bc(b,a){switch(a){case 2:return function(c){return this.fromWireType(Da[c>>2])};case 3:return function(c){return this.fromWireType(Ea[c>>3])};default:throw new TypeError("Unknown float type: "+b);}}
63
- function cc(b,a,c){switch(a){case 0:return c?function(d){return za[d]}:function(d){return L[d]};case 1:return c?function(d){return Aa[d>>1]}:function(d){return Ba[d>>1]};case 2:return c?function(d){return Ca[d>>2]}:function(d){return N[d>>2]};default:throw new TypeError("Unknown integer type: "+b);}}
64
- var ec="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0,fc=(b,a,c)=>{var d=a+c;for(c=a;b[c]&&!(c>=d);)++c;if(16<c-a&&b.buffer&&ec)return ec.decode(b.subarray(a,c));for(d="";a<c;){var e=b[a++];if(e&128){var f=b[a++]&63;if(192==(e&224))d+=String.fromCharCode((e&31)<<6|f);else{var h=b[a++]&63;e=224==(e&240)?(e&15)<<12|f<<6|h:(e&7)<<18|f<<12|h<<6|b[a++]&63;65536>e?d+=String.fromCharCode(e):(e-=65536,d+=String.fromCharCode(55296|e>>10,56320|e&1023))}}else d+=String.fromCharCode(e)}return d},
65
- gc="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,hc=(b,a)=>{var c=b>>1;for(var d=c+a/2;!(c>=d)&&Ba[c];)++c;c<<=1;if(32<c-b&&gc)return gc.decode(L.subarray(b,c));c="";for(d=0;!(d>=a/2);++d){var e=Aa[b+2*d>>1];if(0==e)break;c+=String.fromCharCode(e)}return c},ic=(b,a,c)=>{void 0===c&&(c=2147483647);if(2>c)return 0;c-=2;var d=a;c=c<2*b.length?c/2:b.length;for(var e=0;e<c;++e)Aa[a>>1]=b.charCodeAt(e),a+=2;Aa[a>>1]=0;return a-d},jc=b=>2*b.length,kc=(b,a)=>{for(var c=0,d="";!(c>=a/
66
- 4);){var e=Ca[b+4*c>>2];if(0==e)break;++c;65536<=e?(e-=65536,d+=String.fromCharCode(55296|e>>10,56320|e&1023)):d+=String.fromCharCode(e)}return d},lc=(b,a,c)=>{void 0===c&&(c=2147483647);if(4>c)return 0;var d=a;c=d+c-4;for(var e=0;e<b.length;++e){var f=b.charCodeAt(e);if(55296<=f&&57343>=f){var h=b.charCodeAt(++e);f=65536+((f&1023)<<10)|h&1023}Ca[a>>2]=f;a+=4;if(a+4>c)break}Ca[a>>2]=0;return a-d},mc=b=>{for(var a=0,c=0;c<b.length;++c){var d=b.charCodeAt(c);55296<=d&&57343>=d&&++c;a+=4}return a},nc=
67
- {};function oc(b){var a=nc[b];return void 0===a?V(b):a}var pc=[];function qc(b){var a=pc.length;pc.push(b);return a}function rc(b,a){for(var c=Array(b),d=0;d<b;++d)c[d]=mb(N[a+4*d>>2],"parameter "+d);return c}
68
- var sc=[],tc={},vc=()=>{if(!uc){var b={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:la||"./this.program"},a;for(a in tc)void 0===tc[a]?delete b[a]:b[a]=tc[a];var c=[];for(a in b)c.push(`${a}=${b[a]}`);uc=c}return uc},uc,wc=[null,[],[]];
69
- Object.assign(Za.prototype,{get(b){return this.la[b]},has(b){return void 0!==this.la[b]},ab(b){var a=this.Qa.pop()||this.la.length;this.la[a]=b;return a},$a(b){this.la[b]=void 0;this.Qa.push(b)}});$a=m.BindingError=class extends Error{constructor(b){super(b);this.name="BindingError"}};O.la.push({value:void 0},{value:null},{value:!0},{value:!1});O.Ga=O.la.length;m.count_emval_handles=function(){for(var b=0,a=O.Ga;a<O.la.length;++a)void 0!==O.la[a]&&++b;return b};bb=m.PureVirtualError=ab("PureVirtualError");
70
- for(var xc=Array(256),yc=0;256>yc;++yc)xc[yc]=String.fromCharCode(yc);cb=xc;m.getInheritedInstanceCount=function(){return Object.keys(gb).length};m.getLiveInheritedInstances=function(){var b=[],a;for(a in gb)gb.hasOwnProperty(a)&&b.push(gb[a]);return b};m.flushPendingDeletes=eb;m.setDelayFunction=function(b){fb=b;db.length&&fb&&fb(eb)};xb=m.InternalError=class extends Error{constructor(b){super(b);this.name="InternalError"}};
71
- Jb.prototype.isAliasOf=function(b){if(!(this instanceof Jb&&b instanceof Jb))return!1;var a=this.Y.aa.Z,c=this.Y.$,d=b.Y.aa.Z;for(b=b.Y.$;a.ba;)c=a.ta(c),a=a.ba;for(;d.ba;)b=d.ta(b),d=d.ba;return a===d&&c===b};Jb.prototype.clone=function(){this.Y.$||Ib(this);if(this.Y.ra)return this.Y.count.value+=1,this;var b=Ab,a=Object,c=a.create,d=Object.getPrototypeOf(this),e=this.Y;b=b(c.call(a,d,{Y:{value:{count:e.count,pa:e.pa,ra:e.ra,$:e.$,aa:e.aa,ea:e.ea,ha:e.ha}}}));b.Y.count.value+=1;b.Y.pa=!1;return b};
72
- Jb.prototype["delete"]=function(){this.Y.$||Ib(this);this.Y.pa&&!this.Y.ra&&Q("Object already scheduled for deletion");nb(this);tb(this.Y);this.Y.ra||(this.Y.ea=void 0,this.Y.$=void 0)};Jb.prototype.isDeleted=function(){return!this.Y.$};Jb.prototype.deleteLater=function(){this.Y.$||Ib(this);this.Y.pa&&!this.Y.ra&&Q("Object already scheduled for deletion");db.push(this);1===db.length&&fb&&fb(eb);this.Y.pa=!0;return this};Sb.prototype.rb=function(b){this.Ua&&(b=this.Ua(b));return b};
73
- Sb.prototype.Ma=function(b){this.ma&&this.ma(b)};Sb.prototype.argPackAdvance=8;Sb.prototype.readValueFromPointer=Db;Sb.prototype.deleteObject=function(b){if(null!==b)b["delete"]()};
74
- Sb.prototype.fromWireType=function(b){function a(){return this.wa?zb(this.Z.ia,{aa:this.Cb,$:c,ha:this,ea:b}):zb(this.Z.ia,{aa:this,$:b})}var c=this.rb(b);if(!c)return this.Ma(b),null;var d=wb(this.Z,c);if(void 0!==d){if(0===d.Y.count.value)return d.Y.$=c,d.Y.ea=b,d.clone();d=d.clone();this.Ma(b);return d}d=this.Z.qb(c);d=vb[d];if(!d)return a.call(this);d=this.va?d.hb:d.pointerType;var e=ub(c,this.Z,d.Z);return null===e?a.call(this):this.wa?zb(d.Z.ia,{aa:d,$:e,ha:this,ea:b}):zb(d.Z.ia,{aa:d,$:e})};
75
- Vb=m.UnboundTypeError=ab("UnboundTypeError");
76
- var Ac={L:function(b,a,c){b=V(b);a=mb(a,"wrapper");c=S(c);var d=[].slice,e=a.Z,f=e.ia,h=e.ba.ia,g=e.ba.constructor;b=Ya(b,function(){e.ba.Ta.forEach(function(k){if(this[k]===h[k])throw new bb(`Pure virtual function ${k} must be implemented in JavaScript`);}.bind(this));Object.defineProperty(this,"__parent",{value:f});this.__construct.apply(this,d.call(arguments))});f.__construct=function(){this===f&&Q("Pass correct 'this' to __construct");var k=g.implement.apply(void 0,[this].concat(d.call(arguments)));
77
- nb(k);var p=k.Y;k.notifyOnDestruction();p.ra=!0;Object.defineProperties(this,{Y:{value:p}});Ab(this);k=p.$;k=hb(e,k);gb.hasOwnProperty(k)?Q(`Tried to register registered instance: ${k}`):gb[k]=this};f.__destruct=function(){this===f&&Q("Pass correct 'this' to __destruct");nb(this);var k=this.Y.$;k=hb(e,k);gb.hasOwnProperty(k)?delete gb[k]:Q(`Tried to unregister unregistered instance: ${k}`)};b.prototype=Object.create(f);for(var l in c)b.prototype[l]=c[l];return T(b)},N:function(b){var a=Bb[b];delete Bb[b];
78
- var c=a.Da,d=a.ma,e=a.Pa,f=e.map(h=>h.ub).concat(e.map(h=>h.Fb));W([b],f,h=>{var g={};e.forEach((l,k)=>{var p=h[k],r=l.sb,t=l.tb,v=h[k+e.length],q=l.Eb,G=l.Gb;g[l.ob]={read:I=>p.fromWireType(r(t,I)),write:(I,w)=>{var z=[];q(G,I,v.toWireType(z,w));Cb(z)}}});return[{name:a.name,fromWireType:function(l){var k={},p;for(p in g)k[p]=g[p].read(l);d(l);return k},toWireType:function(l,k){for(var p in g)if(!(p in k))throw new TypeError(`Missing field: "${p}"`);var r=c();for(p in g)g[p].write(r,k[p]);null!==
79
- l&&l.push(d,r);return r},argPackAdvance:8,readValueFromPointer:Db,ga:d}]})},C:function(){},J:function(b,a,c,d,e){var f=Gb(c);a=V(a);X(b,{name:a,fromWireType:function(h){return!!h},toWireType:function(h,g){return g?d:e},argPackAdvance:8,readValueFromPointer:function(h){if(1===c)var g=za;else if(2===c)g=Aa;else if(4===c)g=Ca;else throw new TypeError("Unknown boolean type size: "+a);return this.fromWireType(g[h>>f])},ga:null})},f:function(b,a,c,d,e,f,h,g,l,k,p,r,t){p=V(p);f=Z(e,f);g&&(g=Z(h,g));k&&(k=
80
- Z(l,k));t=Z(r,t);var v=Wa(p);Lb(v,function(){Wb(`Cannot construct ${p} due to unbound types`,[d])});W([b,a,c],d?[d]:[],function(q){q=q[0];if(d){var G=q.Z;var I=G.ia}else I=Jb.prototype;q=Ya(v,function(){if(Object.getPrototypeOf(this)!==w)throw new $a("Use 'new' to construct "+p);if(void 0===z.na)throw new $a(p+" has no accessible constructor");var P=z.na[arguments.length];if(void 0===P)throw new $a(`Tried to invoke ctor of ${p} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(z.na).toString()}) parameters instead!`);
81
- return P.apply(this,arguments)});var w=Object.create(I,{constructor:{value:q}});q.prototype=w;var z=new Mb(p,q,w,t,G,f,g,k);z.ba&&(void 0===z.ba.ua&&(z.ba.ua=[]),z.ba.ua.push(z));G=new Sb(p,z,!0,!1);I=new Sb(p+"*",z,!1,!1);var J=new Sb(p+" const*",z,!1,!0);vb[b]={pointerType:I,hb:J};Tb(v,q);return[G,I,J]})},l:function(b,a,c,d,e,f,h){var g=Yb(c,d);a=V(a);f=Z(e,f);W([],[b],function(l){function k(){Wb(`Cannot call ${p} due to unbound types`,g)}l=l[0];var p=`${l.name}.${a}`;a.startsWith("@@")&&(a=Symbol[a.substring(2)]);
82
- var r=l.Z.constructor;void 0===r[a]?(k.oa=c-1,r[a]=k):(Kb(r,a,p),r[a].ca[c-1]=k);W([],g,function(t){t=Xb(p,[t[0],null].concat(t.slice(1)),null,f,h);void 0===r[a].ca?(t.oa=c-1,r[a]=t):r[a].ca[c-1]=t;if(l.Z.ua)for(const v of l.Z.ua)v.constructor.hasOwnProperty(a)||(v.constructor[a]=t);return[]});return[]})},w:function(b,a,c,d,e,f,h,g){a=V(a);f=Z(e,f);W([],[b],function(l){l=l[0];var k=`${l.name}.${a}`,p={get(){Wb(`Cannot access ${k} due to unbound types`,[c])},enumerable:!0,configurable:!0};p.set=g?
83
- ()=>{Wb(`Cannot access ${k} due to unbound types`,[c])}:()=>{Q(`${k} is a read-only property`)};Object.defineProperty(l.Z.constructor,a,p);W([],[c],function(r){r=r[0];var t={get(){return r.fromWireType(f(d))},enumerable:!0};g&&(g=Z(h,g),t.set=v=>{var q=[];g(d,r.toWireType(q,v));Cb(q)});Object.defineProperty(l.Z.constructor,a,t);return[]});return[]})},r:function(b,a,c,d,e,f){var h=Yb(a,c);e=Z(d,e);W([],[b],function(g){g=g[0];var l=`constructor ${g.name}`;void 0===g.Z.na&&(g.Z.na=[]);if(void 0!==g.Z.na[a-
84
- 1])throw new $a(`Cannot register multiple constructors with identical number of parameters (${a-1}) for class '${g.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);g.Z.na[a-1]=()=>{Wb(`Cannot construct ${g.name} due to unbound types`,h)};W([],h,function(k){k.splice(1,0,null);g.Z.na[a-1]=Xb(l,k,null,e,f);return[]});return[]})},b:function(b,a,c,d,e,f,h,g){var l=Yb(c,d);a=V(a);f=Z(e,f);W([],[b],function(k){function p(){Wb(`Cannot call ${r} due to unbound types`,
85
- l)}k=k[0];var r=`${k.name}.${a}`;a.startsWith("@@")&&(a=Symbol[a.substring(2)]);g&&k.Z.Ta.push(a);var t=k.Z.ia,v=t[a];void 0===v||void 0===v.ca&&v.className!==k.name&&v.oa===c-2?(p.oa=c-2,p.className=k.name,t[a]=p):(Kb(t,a,r),t[a].ca[c-2]=p);W([],l,function(q){q=Xb(r,q,k,f,h);void 0===t[a].ca?(q.oa=c-2,t[a]=q):t[a].ca[c-2]=q;return[]});return[]})},e:function(b,a,c,d,e,f,h,g,l,k){a=V(a);e=Z(d,e);W([],[b],function(p){p=p[0];var r=`${p.name}.${a}`,t={get(){Wb(`Cannot access ${r} due to unbound types`,
86
- [c,h])},enumerable:!0,configurable:!0};t.set=l?()=>{Wb(`Cannot access ${r} due to unbound types`,[c,h])}:()=>{Q(r+" is a read-only property")};Object.defineProperty(p.Z.ia,a,t);W([],l?[c,h]:[c],function(v){var q=v[0],G={get(){var w=Zb(this,p,r+" getter");return q.fromWireType(e(f,w))},enumerable:!0};if(l){l=Z(g,l);var I=v[1];G.set=function(w){var z=Zb(this,p,r+" setter"),J=[];l(k,z,I.toWireType(J,w));Cb(J)}}Object.defineProperty(p.Z.ia,a,G);return[]});return[]})},I:function(b,a){a=V(a);X(b,{name:a,
87
- fromWireType:function(c){var d=S(c);$b(c);return d},toWireType:function(c,d){return T(d)},argPackAdvance:8,readValueFromPointer:Db,ga:null})},o:function(b,a,c,d){function e(){}c=Gb(c);a=V(a);e.values={};X(b,{name:a,constructor:e,fromWireType:function(f){return this.constructor.values[f]},toWireType:function(f,h){return h.value},argPackAdvance:8,readValueFromPointer:ac(a,c,d),ga:null});Lb(a,e)},c:function(b,a,c){var d=mb(b,"enum");a=V(a);b=d.constructor;d=Object.create(d.constructor.prototype,{value:{value:c},
88
- constructor:{value:Ya(`${d.name}_${a}`,function(){})}});b.values[c]=d;b[a]=d},y:function(b,a,c){c=Gb(c);a=V(a);X(b,{name:a,fromWireType:function(d){return d},toWireType:function(d,e){return e},argPackAdvance:8,readValueFromPointer:bc(a,c),ga:null})},t:function(b,a,c,d,e,f){var h=Yb(a,c);b=V(b);e=Z(d,e);Lb(b,function(){Wb(`Cannot call ${b} due to unbound types`,h)},a-1);W([],h,function(g){Tb(b,Xb(b,[g[0],null].concat(g.slice(1)),null,e,f),a-1);return[]})},k:function(b,a,c,d,e){a=V(a);-1===e&&(e=4294967295);
89
- e=Gb(c);var f=g=>g;if(0===d){var h=32-8*c;f=g=>g<<h>>>h}c=a.includes("unsigned")?function(g,l){return l>>>0}:function(g,l){return l};X(b,{name:a,fromWireType:f,toWireType:c,argPackAdvance:8,readValueFromPointer:cc(a,e,0!==d),ga:null})},g:function(b,a,c){function d(f){f>>=2;var h=N;return new e(h.buffer,h[f+1],h[f])}var e=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][a];c=V(c);X(b,{name:c,fromWireType:d,argPackAdvance:8,readValueFromPointer:d},{vb:!0})},
90
- z:function(b,a){a=V(a);var c="std::string"===a;X(b,{name:a,fromWireType:function(d){var e=N[d>>2],f=d+4;if(c)for(var h=f,g=0;g<=e;++g){var l=f+g;if(g==e||0==L[l]){h=h?fc(L,h,l-h):"";if(void 0===k)var k=h;else k+=String.fromCharCode(0),k+=h;h=l+1}}else{k=Array(e);for(g=0;g<e;++g)k[g]=String.fromCharCode(L[f+g]);k=k.join("")}lb(d);return k},toWireType:function(d,e){e instanceof ArrayBuffer&&(e=new Uint8Array(e));var f,h="string"==typeof e;h||e instanceof Uint8Array||e instanceof Uint8ClampedArray||
91
- e instanceof Int8Array||Q("Cannot pass non-string to std::string");var g;if(c&&h)for(f=g=0;f<e.length;++f){var l=e.charCodeAt(f);127>=l?g++:2047>=l?g+=2:55296<=l&&57343>=l?(g+=4,++f):g+=3}else g=e.length;f=g;g=zc(4+f+1);l=g+4;N[g>>2]=f;if(c&&h){if(h=l,l=f+1,f=L,0<l){l=h+l-1;for(var k=0;k<e.length;++k){var p=e.charCodeAt(k);if(55296<=p&&57343>=p){var r=e.charCodeAt(++k);p=65536+((p&1023)<<10)|r&1023}if(127>=p){if(h>=l)break;f[h++]=p}else{if(2047>=p){if(h+1>=l)break;f[h++]=192|p>>6}else{if(65535>=p){if(h+
92
- 2>=l)break;f[h++]=224|p>>12}else{if(h+3>=l)break;f[h++]=240|p>>18;f[h++]=128|p>>12&63}f[h++]=128|p>>6&63}f[h++]=128|p&63}}f[h]=0}}else if(h)for(h=0;h<f;++h)k=e.charCodeAt(h),255<k&&(lb(l),Q("String has UTF-16 code units that do not fit in 8 bits")),L[l+h]=k;else for(h=0;h<f;++h)L[l+h]=e[h];null!==d&&d.push(lb,g);return g},argPackAdvance:8,readValueFromPointer:Db,ga:function(d){lb(d)}})},v:function(b,a,c){c=V(c);if(2===a){var d=hc;var e=ic;var f=jc;var h=()=>Ba;var g=1}else 4===a&&(d=kc,e=lc,f=mc,
93
- h=()=>N,g=2);X(b,{name:c,fromWireType:function(l){for(var k=N[l>>2],p=h(),r,t=l+4,v=0;v<=k;++v){var q=l+4+v*a;if(v==k||0==p[q>>g])t=d(t,q-t),void 0===r?r=t:(r+=String.fromCharCode(0),r+=t),t=q+a}lb(l);return r},toWireType:function(l,k){"string"!=typeof k&&Q(`Cannot pass non-string to C++ string type ${c}`);var p=f(k),r=zc(4+p+a);N[r>>2]=p>>g;e(k,r+4,p+a);null!==l&&l.push(lb,r);return r},argPackAdvance:8,readValueFromPointer:Db,ga:function(l){lb(l)}})},P:function(b,a,c,d,e,f){Bb[b]={name:V(a),Da:Z(c,
94
- d),ma:Z(e,f),Pa:[]}},O:function(b,a,c,d,e,f,h,g,l,k){Bb[b].Pa.push({ob:V(a),ub:c,sb:Z(d,e),tb:f,Fb:h,Eb:Z(g,l),Gb:k})},K:function(b,a){a=V(a);X(b,{xb:!0,name:a,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},u:function(b,a,c){b=S(b);a=mb(a,"emval::as");var d=[],e=T(d);N[c>>2]=e;return a.toWireType(d,b)},A:function(b,a,c,d,e){b=pc[b];a=S(a);c=oc(c);var f=[];N[d>>2]=T(f);return b(a,c,f,e)},i:function(b,a,c,d){b=pc[b];a=S(a);c=oc(c);b(a,c,null,d)},d:$b,h:function(b,a){var c=rc(b,
95
- a),d=c[0];a=d.name+"_$"+c.slice(1).map(function(h){return h.name}).join("_")+"$";var e=sc[a];if(void 0!==e)return e;var f=Array(b-1);e=qc((h,g,l,k)=>{for(var p=0,r=0;r<b-1;++r)f[r]=c[r+1].readValueFromPointer(k+p),p+=c[r+1].argPackAdvance;h=h[g].apply(h,f);for(r=0;r<b-1;++r)c[r+1].jb&&c[r+1].jb(f[r]);if(!d.xb)return d.toWireType(l,h)});return sc[a]=e},s:function(b){b=oc(b);return T(m[b])},M:function(b,a){b=S(b);a=S(a);return T(b[a])},n:function(b){4<b&&(O.get(b).Va+=1)},m:function(b){return T(oc(b))},
96
- x:function(){return T({})},p:function(b){var a=S(b);Cb(a);$b(b)},j:function(b,a,c){b=S(b);a=S(a);c=S(c);b[a]=c},q:function(b,a){b=mb(b,"_emval_take_value");b=b.readValueFromPointer(a);return T(b)},a:()=>{wa("")},D:b=>{var a=L.length;b>>>=0;if(2147483648<b)return!1;for(var c=1;4>=c;c*=2){var d=a*(1+.2/c);d=Math.min(d,b+100663296);var e=Math;d=Math.max(b,d);a:{e=e.min.call(e,2147483648,d+(65536-d%65536)%65536)-xa.buffer.byteLength+65535>>>16;try{xa.grow(e);Fa();var f=1;break a}catch(h){}f=void 0}if(f)return!0}return!1},
97
- E:(b,a)=>{var c=0;vc().forEach(function(d,e){var f=a+c;e=N[b+4*e>>2]=f;for(f=0;f<d.length;++f)za[e++>>0]=d.charCodeAt(f);za[e>>0]=0;c+=d.length+1});return 0},F:(b,a)=>{var c=vc();N[b>>2]=c.length;var d=0;c.forEach(function(e){d+=e.length+1});N[a>>2]=d;return 0},G:()=>52,B:function(){return 70},H:(b,a,c,d)=>{for(var e=0,f=0;f<c;f++){var h=N[a>>2],g=N[a+4>>2];a+=8;for(var l=0;l<g;l++){var k=L[h+l],p=wc[b];0===k||10===k?((1===b?ra:sa)(fc(p,0)),p.length=0):p.push(k)}e+=g}N[d>>2]=e;return 0}};
98
- (function(){function b(c){H=c=c.exports;xa=H.Q;Fa();Ga=H.W;Ia.unshift(H.R);La--;m.monitorRunDependencies&&m.monitorRunDependencies(La);if(0==La&&(null!==Ma&&(clearInterval(Ma),Ma=null),Na)){var d=Na;Na=null;d()}return c}var a={a:Ac};La++;m.monitorRunDependencies&&m.monitorRunDependencies(La);if(m.instantiateWasm)try{return m.instantiateWasm(a,b)}catch(c){sa("Module.instantiateWasm callback failed with error: "+c),ba(c)}Ua(a,function(c){b(c.instance)}).catch(ba);return{}})();
99
- var lb=b=>(lb=H.S)(b),zc=b=>(zc=H.T)(b),kb=b=>(kb=H.U)(b);m.__embind_initialize_bindings=()=>(m.__embind_initialize_bindings=H.V)();m.dynCall_jiji=(b,a,c,d,e)=>(m.dynCall_jiji=H.X)(b,a,c,d,e);var Bc;Na=function Cc(){Bc||Dc();Bc||(Na=Cc)};
100
- function Dc(){function b(){if(!Bc&&(Bc=!0,m.calledRun=!0,!ya)){Va(Ia);aa(m);if(m.onRuntimeInitialized)m.onRuntimeInitialized();if(m.postRun)for("function"==typeof m.postRun&&(m.postRun=[m.postRun]);m.postRun.length;){var a=m.postRun.shift();Ja.unshift(a)}Va(Ja)}}if(!(0<La)){if(m.preRun)for("function"==typeof m.preRun&&(m.preRun=[m.preRun]);m.preRun.length;)Ka();Va(Ha);0<La||(m.setStatus?(m.setStatus("Running..."),setTimeout(function(){setTimeout(function(){m.setStatus("")},1);b()},1)):b())}}
101
- if(m.preInit)for("function"==typeof m.preInit&&(m.preInit=[m.preInit]);0<m.preInit.length;)m.preInit.pop()();Dc();
8
+ var h=moduleArg,ba,ca;h.ready=new Promise((b,a)=>{ba=b;ca=a});
9
+ function da(){function b(m){const l=d;c=a=0;d=new Map;l.forEach(p=>{try{p(m)}catch(k){console.error(k)}});this.fb();e&&e.Db()}let a=0,c=0,d=new Map,e=null,f=null;this.requestAnimationFrame=function(m){a||(a=requestAnimationFrame(b.bind(this)));const l=++c;d.set(l,m);return l};this.cancelAnimationFrame=function(m){d.delete(m);a&&0==d.size&&(cancelAnimationFrame(a),a=0)};this.Bb=function(m){f&&(document.body.remove(f),f=null);m||(f=document.createElement("div"),f.style.backgroundColor="black",f.style.position=
10
+ "fixed",f.style.right=0,f.style.top=0,f.style.color="white",f.style.padding="4px",f.innerHTML="RIVE FPS",m=function(l){f.innerHTML="RIVE FPS "+l.toFixed(1)},document.body.appendChild(f));e=new function(){let l=0,p=0;this.Db=function(){var k=performance.now();p?(++l,k-=p,1E3<k&&(m(1E3*l/k),l=p=0)):(p=k,l=0)}}};this.yb=function(){f&&(document.body.remove(f),f=null);e=null};this.fb=function(){}}
11
+ function ea(b){console.assert(!0);const a=new Map;let c=-Infinity;this.push=function(d){d=d+((1<<b)-1)>>b;a.has(d)&&clearTimeout(a.get(d));a.set(d,setTimeout(function(){a.delete(d);0==a.length?c=-Infinity:d==c&&(c=Math.max(...a.keys()),console.assert(c<d))},1E3));c=Math.max(d,c);return c<<b}}
12
+ const ha="createConicGradient createImageData createLinearGradient createPattern createRadialGradient getContextAttributes getImageData getLineDash getTransform isContextLost isPointInPath isPointInStroke measureText".split(" "),ka=new function(){function b(){if(!a){var t=document.createElement("canvas"),g={alpha:1,depth:0,stencil:0,antialias:0,premultipliedAlpha:1,preserveDrawingBuffer:0,preferLowPowerToHighPerformance:0,failIfMajorPerformanceCaveat:0,enableExtensionsByDefault:1,explicitSwapControl:1,
13
+ renderViaOffscreenBackBuffer:1};let n=t.getContext("webgl2",g);if(n)c=2;else if(n=t.getContext("webgl",g))c=1;else return console.log("No WebGL support. Image mesh will not be drawn."),!1;d=Math.min(n.getParameter(n.MAX_RENDERBUFFER_SIZE),n.getParameter(n.MAX_TEXTURE_SIZE));function w(H,x,A){x=n.createShader(x);n.shaderSource(x,A);n.compileShader(x);A=n.getShaderInfoLog(x);if(0<A.length)throw A;n.attachShader(H,x)}t=n.createProgram();w(t,n.VERTEX_SHADER,"attribute vec2 vertex;\n attribute vec2 uv;\n uniform vec4 mat;\n uniform vec2 translate;\n varying vec2 st;\n void main() {\n st = uv;\n gl_Position = vec4(mat2(mat) * vertex + translate, 0, 1);\n }");
14
+ w(t,n.FRAGMENT_SHADER,"precision highp float;\n uniform sampler2D image;\n varying vec2 st;\n void main() {\n gl_FragColor = texture2D(image, st);\n }");n.bindAttribLocation(t,0,"vertex");n.bindAttribLocation(t,1,"uv");n.linkProgram(t);g=n.getProgramInfoLog(t);if(0<g.trim().length)throw g;e=n.getUniformLocation(t,"mat");f=n.getUniformLocation(t,"translate");n.useProgram(t);n.bindBuffer(n.ARRAY_BUFFER,n.createBuffer());
15
+ n.enableVertexAttribArray(0);n.enableVertexAttribArray(1);n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,n.createBuffer());n.uniform1i(n.getUniformLocation(t,"image"),0);n.pixelStorei(n.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);a=n}return!0}let a=null,c=0,d=0,e=null,f=null,m=0,l=0;this.Mb=function(){b();return d};this.vb=function(t){if(!b())return null;const g=a.createTexture();a.bindTexture(a.TEXTURE_2D,g);a.texImage2D(a.TEXTURE_2D,0,a.RGBA,a.RGBA,a.UNSIGNED_BYTE,t);a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_S,a.CLAMP_TO_EDGE);
16
+ a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_T,a.CLAMP_TO_EDGE);a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MAG_FILTER,a.LINEAR);2==c?(a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MIN_FILTER,a.LINEAR_MIPMAP_LINEAR),a.generateMipmap(a.TEXTURE_2D)):a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MIN_FILTER,a.LINEAR);return g};const p=new ea(8),k=new ea(8),r=new ea(10),u=new ea(10);this.Ab=function(t,g,n,w,H){if(b()){var x=p.push(t),A=k.push(g);if(a.canvas.width!=x||a.canvas.height!=A)a.canvas.width=x,a.canvas.height=A;
17
+ a.viewport(0,A-g,t,g);a.disable(a.SCISSOR_TEST);a.clearColor(0,0,0,0);a.clear(a.COLOR_BUFFER_BIT);a.enable(a.SCISSOR_TEST);n.sort((B,fa)=>fa.jb-B.jb);x=r.push(w);m!=x&&(a.bufferData(a.ARRAY_BUFFER,8*x,a.DYNAMIC_DRAW),m=x);x=0;for(var J of n)a.bufferSubData(a.ARRAY_BUFFER,x,J.Ra),x+=4*J.Ra.length;console.assert(x==4*w);for(var Q of n)a.bufferSubData(a.ARRAY_BUFFER,x,Q.mb),x+=4*Q.mb.length;console.assert(x==8*w);x=u.push(H);l!=x&&(a.bufferData(a.ELEMENT_ARRAY_BUFFER,2*x,a.DYNAMIC_DRAW),l=x);J=0;for(var aa of n)a.bufferSubData(a.ELEMENT_ARRAY_BUFFER,
18
+ J,aa.indices),J+=2*aa.indices.length;console.assert(J==2*H);aa=0;Q=!0;x=J=0;for(const B of n){B.image.Ma!=aa&&(a.bindTexture(a.TEXTURE_2D,B.image.rb||null),aa=B.image.Ma);B.Pb?(a.scissor(B.Va,A-B.Wa-B.cb,B.$b,B.cb),Q=!0):Q&&(a.scissor(0,A-g,t,g),Q=!1);n=2/t;const fa=-2/g;a.uniform4f(e,B.xa[0]*n*B.Ga,B.xa[1]*fa*B.Ha,B.xa[2]*n*B.Ga,B.xa[3]*fa*B.Ha);a.uniform2f(f,B.xa[4]*n*B.Ga+n*(B.Va-B.Nb*B.Ga)-1,B.xa[5]*fa*B.Ha+fa*(B.Wa-B.Ob*B.Ha)+1);a.vertexAttribPointer(0,2,a.FLOAT,!1,0,x);a.vertexAttribPointer(1,
19
+ 2,a.FLOAT,!1,0,x+4*w);a.drawElements(a.TRIANGLES,B.indices.length,a.UNSIGNED_SHORT,J);x+=4*B.Ra.length;J+=2*B.indices.length}console.assert(x==4*w);console.assert(J==2*H)}};this.canvas=function(){return b()&&a.canvas}},la=h.onRuntimeInitialized;
20
+ h.onRuntimeInitialized=function(){function b(q){switch(q){case k.srcOver:return"source-over";case k.screen:return"screen";case k.overlay:return"overlay";case k.darken:return"darken";case k.lighten:return"lighten";case k.colorDodge:return"color-dodge";case k.colorBurn:return"color-burn";case k.hardLight:return"hard-light";case k.softLight:return"soft-light";case k.difference:return"difference";case k.exclusion:return"exclusion";case k.multiply:return"multiply";case k.hue:return"hue";case k.saturation:return"saturation";
21
+ case k.color:return"color";case k.luminosity:return"luminosity"}}function a(q){return"rgba("+((16711680&q)>>>16)+","+((65280&q)>>>8)+","+((255&q)>>>0)+","+((4278190080&q)>>>24)/255+")"}function c(){0<J.length&&(ka.Ab(A.drawWidth(),A.drawHeight(),J,Q,aa),J=[],aa=Q=0,A.reset(512,512));for(const q of x){for(const v of q.ja)v();q.ja=[]}x.clear()}la&&la();var d=h.RenderPaintStyle;const e=h.RenderPath,f=h.RenderPaint,m=h.Renderer,l=h.StrokeCap,p=h.StrokeJoin,k=h.BlendMode,r=d.fill,u=d.stroke,t=h.FillRule.evenOdd;
22
+ let g=1;var n=h.RenderImage.extend("CanvasRenderImage",{__construct:function({Aa:q,Fa:v}={}){this.__parent.__construct.call(this);this.Ma=g;g=g+1&2147483647||1;this.Aa=q;this.Fa=v},decode:function(q){var v=this;v.Fa&&v.Fa(v);var C=new Image;C.src=URL.createObjectURL(new Blob([q],{type:"image/png"}));C.onload=function(){v.ob=C;v.rb=ka.vb(C);v.size(C.width,C.height);v.Aa&&v.Aa(v)}}}),w=e.extend("CanvasRenderPath",{__construct:function(){this.__parent.__construct.call(this);this.pa=new Path2D},rewind:function(){this.pa=
23
+ new Path2D},addPath:function(q,v,C,D,z,E,F){var G=this.pa,T=G.addPath;q=q.pa;const K=new DOMMatrix;K.a=v;K.b=C;K.c=D;K.d=z;K.e=E;K.f=F;T.call(G,q,K)},fillRule:function(q){this.Ta=q},moveTo:function(q,v){this.pa.moveTo(q,v)},lineTo:function(q,v){this.pa.lineTo(q,v)},cubicTo:function(q,v,C,D,z,E){this.pa.bezierCurveTo(q,v,C,D,z,E)},close:function(){this.pa.closePath()}}),H=f.extend("CanvasRenderPaint",{color:function(q){this.Ua=a(q)},thickness:function(q){this.sb=q},join:function(q){switch(q){case p.miter:this.La=
24
+ "miter";break;case p.round:this.La="round";break;case p.bevel:this.La="bevel"}},cap:function(q){switch(q){case l.butt:this.Ka="butt";break;case l.round:this.Ka="round";break;case l.square:this.Ka="square"}},style:function(q){this.qb=q},blendMode:function(q){this.nb=b(q)},clearGradient:function(){this.za=null},linearGradient:function(q,v,C,D){this.za={kb:q,lb:v,Za:C,$a:D,Pa:[]}},radialGradient:function(q,v,C,D){this.za={kb:q,lb:v,Za:C,$a:D,Pa:[],Kb:!0}},addStop:function(q,v){this.za.Pa.push({color:q,
25
+ stop:v})},completeGradient:function(){},draw:function(q,v,C){let D=this.qb;var z=this.Ua,E=this.za;q.globalCompositeOperation=this.nb;if(null!=E){z=E.kb;var F=E.lb;const T=E.Za;var G=E.$a;const K=E.Pa;E.Kb?(E=T-z,G-=F,z=q.createRadialGradient(z,F,0,z,F,Math.sqrt(E*E+G*G))):z=q.createLinearGradient(z,F,T,G);for(let W=0,N=K.length;W<N;W++)F=K[W],z.addColorStop(F.stop,a(F.color));this.Ua=z;this.za=null}switch(D){case u:q.strokeStyle=z;q.lineWidth=this.sb;q.lineCap=this.Ka;q.lineJoin=this.La;q.stroke(v);
26
+ break;case r:q.fillStyle=z,q.fill(v,C)}}});const x=new Set;let A=null,J=[],Q=0,aa=0;var B=h.CanvasRenderer=m.extend("Renderer",{__construct:function(q){this.__parent.__construct.call(this);this.oa=[1,0,0,1,0,0];this.ha=q.getContext("2d");this.Sa=q;this.ja=[]},save:function(){this.oa.push(...this.oa.slice(this.oa.length-6));this.ja.push(this.ha.save.bind(this.ha))},restore:function(){const q=this.oa.length-6;if(6>q)throw"restore() called without matching save().";this.oa.splice(q);this.ja.push(this.ha.restore.bind(this.ha))},
27
+ transform:function(q,v,C,D,z,E){const F=this.oa,G=F.length-6;F.splice(G,6,F[G]*q+F[G+2]*v,F[G+1]*q+F[G+3]*v,F[G]*C+F[G+2]*D,F[G+1]*C+F[G+3]*D,F[G]*z+F[G+2]*E+F[G+4],F[G+1]*z+F[G+3]*E+F[G+5]);this.ja.push(this.ha.transform.bind(this.ha,q,v,C,D,z,E))},rotate:function(q){const v=Math.sin(q);q=Math.cos(q);this.transform(q,v,-v,q,0,0)},_drawPath:function(q,v){this.ja.push(v.draw.bind(v,this.ha,q.pa,q.Ta===t?"evenodd":"nonzero"))},_drawRiveImage:function(q,v,C){var D=q.ob;if(D){var z=this.ha,E=b(v);this.ja.push(function(){z.globalCompositeOperation=
28
+ E;z.globalAlpha=C;z.drawImage(D,0,0);z.globalAlpha=1})}},_getMatrix:function(q){const v=this.oa,C=v.length-6;for(let D=0;6>D;++D)q[D]=v[C+D]},_drawImageMesh:function(q,v,C,D,z,E,F,G,T,K){var W=this.ha.canvas.width,N=this.ha.canvas.height;const sb=T-F,tb=K-G;F=Math.max(F,0);G=Math.max(G,0);T=Math.min(T,W);K=Math.min(K,N);const ua=T-F,va=K-G;console.assert(ua<=Math.min(sb,W));console.assert(va<=Math.min(tb,N));if(!(0>=ua||0>=va)){T=ua<sb||va<tb;W=K=1;var ia=Math.ceil(ua*K),ja=Math.ceil(va*W);N=ka.Mb();
29
+ ia>N&&(K*=N/ia,ia=N);ja>N&&(W*=N/ja,ja=N);A||(A=new h.DynamicRectanizer(N),A.reset(512,512));N=A.addRect(ia,ja);0>N&&(c(),x.add(this),N=A.addRect(ia,ja),console.assert(0<=N));var ub=N&65535,vb=N>>16;J.push({xa:this.oa.slice(this.oa.length-6),image:q,Va:ub,Wa:vb,Nb:F,Ob:G,$b:ia,cb:ja,Ga:K,Ha:W,Ra:new Float32Array(D),mb:new Float32Array(z),indices:new Uint16Array(E),Pb:T,jb:q.Ma<<1|(T?1:0)});Q+=D.length;aa+=E.length;var oa=this.ha,kc=b(v);this.ja.push(function(){oa.save();oa.resetTransform();oa.globalCompositeOperation=
30
+ kc;oa.globalAlpha=C;oa.drawImage(ka.canvas(),ub,vb,ia,ja,F,G,ua,va);oa.restore()})}},_clipPath:function(q){this.ja.push(this.ha.clip.bind(this.ha,q.pa,q.Ta===t?"evenodd":"nonzero"))},clear:function(){x.add(this);this.ja.push(this.ha.clearRect.bind(this.ha,0,0,this.Sa.width,this.Sa.height))},flush:function(){},translate:function(q,v){this.transform(1,0,0,1,q,v)}});h.makeRenderer=function(q){const v=new B(q),C=v.ha;return new Proxy(v,{get(D,z){if("function"===typeof D[z])return function(...E){return D[z].apply(D,
31
+ E)};if("function"===typeof C[z]){if(-1<ha.indexOf(z))throw Error("RiveException: Method call to '"+z+"()' is not allowed, as the renderer cannot immediately pass through the return values of any canvas 2d context methods.");return function(...E){v.ja.push(C[z].bind(C,...E))}}return D[z]},set(D,z,E){if(z in C)return C[z]=E,!0}})};h.decodeImage=function(q,v){(new n({Aa:v})).decode(q)};h.renderFactory={makeRenderPaint:function(){return new H},makeRenderPath:function(){return new w},makeRenderImage:function(){let q=
32
+ Za;return new n({Fa:()=>{q.total++},Aa:()=>{q.loaded++;if(q.loaded===q.total){const v=q.ready;v&&(v(),q.ready=null)}}})}};let fa=h.load,Za=null;h.load=function(q,v,C=!0){const D=new h.FallbackFileAssetLoader;void 0!==v&&D.addLoader(v);C&&(v=new h.CDNFileAssetLoader,D.addLoader(v));return new Promise(function(z){let E=null;Za={total:0,loaded:0,ready:function(){z(E)}};E=fa(q,D);0==Za.total&&z(E)})};d=new da;h.requestAnimationFrame=d.requestAnimationFrame.bind(d);h.cancelAnimationFrame=d.cancelAnimationFrame.bind(d);
33
+ h.enableFPSCounter=d.Bb.bind(d);h.disableFPSCounter=d.yb;d.fb=c;h.cleanup=function(){A&&A.delete()}};const ma=h.onRuntimeInitialized;
34
+ h.onRuntimeInitialized=function(){ma&&ma();let b=h.decodeFont;h.decodeFont=function(c,d){c=b(c);d(c)};const a=h.FileAssetLoader;h.ptrToAsset=c=>{let d=h.ptrToFileAsset(c);return d.isImage?h.ptrToImageAsset(c):d.isFont?h.ptrToFontAsset(c):d};h.CustomFileAssetLoader=a.extend("CustomFileAssetLoader",{__construct:function({loadContents:c}){this.__parent.__construct.call(this);this.pb=c},loadContents:function(c,d){c=h.ptrToAsset(c);return this.pb(c,d)}});h.CDNFileAssetLoader=a.extend("CDNFileAssetLoader",
35
+ {__construct:function(){this.__parent.__construct.call(this)},loadContents:function(c){let d=h.ptrToAsset(c);c=d.cdnUuid;if(""===c)return!1;(function(e,f){var m=new XMLHttpRequest;m.responseType="arraybuffer";m.onreadystatechange=function(){4==m.readyState&&200==m.status&&f(m)};m.open("GET",e,!0);m.send(null)})(d.cdnBaseUrl+"/"+c,e=>{d.decode(new Uint8Array(e.response))});return!0}});h.FallbackFileAssetLoader=a.extend("FallbackFileAssetLoader",{__construct:function(){this.__parent.__construct.call(this);
36
+ this.eb=[]},addLoader:function(c){this.eb.push(c)},loadContents:function(c,d){for(let e of this.eb)if(e.loadContents(c,d))return!0;return!1}})};var na=Object.assign({},h),pa="./this.program",qa="object"==typeof window,ra="function"==typeof importScripts,y="",sa,ta;
37
+ if(qa||ra)ra?y=self.location.href:"undefined"!=typeof document&&document.currentScript&&(y=document.currentScript.src),_scriptDir&&(y=_scriptDir),0!==y.indexOf("blob:")?y=y.substr(0,y.replace(/[?#].*/,"").lastIndexOf("/")+1):y="",ra&&(ta=b=>{var a=new XMLHttpRequest;a.open("GET",b,!1);a.responseType="arraybuffer";a.send(null);return new Uint8Array(a.response)}),sa=(b,a,c)=>{var d=new XMLHttpRequest;d.open("GET",b,!0);d.responseType="arraybuffer";d.onload=()=>{200==d.status||0==d.status&&d.response?
38
+ a(d.response):c()};d.onerror=c;d.send(null)};var wa=h.print||console.log.bind(console),xa=h.printErr||console.error.bind(console);Object.assign(h,na);na=null;h.thisProgram&&(pa=h.thisProgram);var ya;h.wasmBinary&&(ya=h.wasmBinary);var noExitRuntime=h.noExitRuntime||!0;"object"!=typeof WebAssembly&&za("no native wasm support detected");var Aa,I,Ba=!1,Ca,L,Da,Ea,M,O,Fa,Ga;
39
+ function Ha(){var b=Aa.buffer;h.HEAP8=Ca=new Int8Array(b);h.HEAP16=Da=new Int16Array(b);h.HEAP32=M=new Int32Array(b);h.HEAPU8=L=new Uint8Array(b);h.HEAPU16=Ea=new Uint16Array(b);h.HEAPU32=O=new Uint32Array(b);h.HEAPF32=Fa=new Float32Array(b);h.HEAPF64=Ga=new Float64Array(b)}var Ia,Ja=[],Ka=[],La=[];function Ma(){var b=h.preRun.shift();Ja.unshift(b)}var Na=0,Oa=null,Pa=null;
40
+ function za(b){if(h.onAbort)h.onAbort(b);b="Aborted("+b+")";xa(b);Ba=!0;b=new WebAssembly.RuntimeError(b+". Build with -sASSERTIONS for more info.");ca(b);throw b;}function Qa(b){return b.startsWith("data:application/octet-stream;base64,")}var Ra;Ra="canvas_advanced.wasm";if(!Qa(Ra)){var Sa=Ra;Ra=h.locateFile?h.locateFile(Sa,y):y+Sa}function Ta(b){if(b==Ra&&ya)return new Uint8Array(ya);if(ta)return ta(b);throw"both async and sync fetching of the wasm failed";}
41
+ function Ua(b){if(!ya&&(qa||ra)){if("function"==typeof fetch&&!b.startsWith("file://"))return fetch(b,{credentials:"same-origin"}).then(a=>{if(!a.ok)throw"failed to load wasm binary file at '"+b+"'";return a.arrayBuffer()}).catch(()=>Ta(b));if(sa)return new Promise((a,c)=>{sa(b,d=>a(new Uint8Array(d)),c)})}return Promise.resolve().then(()=>Ta(b))}function Va(b,a,c){return Ua(b).then(d=>WebAssembly.instantiate(d,a)).then(d=>d).then(c,d=>{xa("failed to asynchronously prepare wasm: "+d);za(d)})}
42
+ function Wa(b,a){var c=Ra;return ya||"function"!=typeof WebAssembly.instantiateStreaming||Qa(c)||c.startsWith("file://")||"function"!=typeof fetch?Va(c,b,a):fetch(c,{credentials:"same-origin"}).then(d=>WebAssembly.instantiateStreaming(d,b).then(a,function(e){xa("wasm streaming compile failed: "+e);xa("falling back to ArrayBuffer instantiation");return Va(c,b,a)}))}var Xa=b=>{for(;0<b.length;)b.shift()(h)};
43
+ function Ya(b){if(void 0===b)return"_unknown";b=b.replace(/[^a-zA-Z0-9_]/g,"$");var a=b.charCodeAt(0);return 48<=a&&57>=a?`_${b}`:b}function $a(b,a){b=Ya(b);return{[b]:function(){return a.apply(this,arguments)}}[b]}function ab(){this.qa=[void 0];this.bb=[]}var P=new ab,bb=void 0;function R(b){throw new bb(b);}
44
+ var S=b=>{b||R("Cannot use deleted val. handle = "+b);return P.get(b).value},U=b=>{switch(b){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:return P.tb({ib:1,value:b})}};
45
+ function cb(b){var a=Error,c=$a(b,function(d){this.name=b;this.message=d;d=Error(d).stack;void 0!==d&&(this.stack=this.toString()+"\n"+d.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(a.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`};return c}var db=void 0,eb=void 0;function V(b){for(var a="";L[b];)a+=eb[L[b++]];return a}var fb=[];
46
+ function gb(){for(;fb.length;){var b=fb.pop();b.ba.wa=!1;b["delete"]()}}var hb=void 0,ib={};function jb(b,a){for(void 0===a&&R("ptr should not be undefined");b.fa;)a=b.Ba(a),b=b.fa;return a}var kb={};function lb(b){b=mb(b);var a=V(b);nb(b);return a}function ob(b,a){var c=kb[b];void 0===c&&R(a+" has unknown type "+lb(b));return c}function pb(){}var qb=!1;function rb(b){--b.count.value;0===b.count.value&&(b.ia?b.la.ra(b.ia):b.ea.ca.ra(b.da))}
47
+ function wb(b,a,c){if(a===c)return b;if(void 0===c.fa)return null;b=wb(b,a,c.fa);return null===b?null:c.zb(b)}var xb={};function yb(b,a){a=jb(b,a);return ib[a]}var zb=void 0;function Ab(b){throw new zb(b);}function Bb(b,a){a.ea&&a.da||Ab("makeClassHandle requires ptr and ptrType");!!a.la!==!!a.ia&&Ab("Both smartPtrType and smartPtr must be specified");a.count={value:1};return Cb(Object.create(b,{ba:{value:a}}))}
48
+ function Cb(b){if("undefined"===typeof FinalizationRegistry)return Cb=a=>a,b;qb=new FinalizationRegistry(a=>{rb(a.ba)});Cb=a=>{var c=a.ba;c.ia&&qb.register(a,{ba:c},a);return a};pb=a=>{qb.unregister(a)};return Cb(b)}var Db={};function Eb(b){for(;b.length;){var a=b.pop();b.pop()(a)}}function Fb(b){return this.fromWireType(M[b>>2])}var Gb={},Hb={};
49
+ function X(b,a,c){function d(l){l=c(l);l.length!==b.length&&Ab("Mismatched type converter count");for(var p=0;p<b.length;++p)Y(b[p],l[p])}b.forEach(function(l){Hb[l]=a});var e=Array(a.length),f=[],m=0;a.forEach((l,p)=>{kb.hasOwnProperty(l)?e[p]=kb[l]:(f.push(l),Gb.hasOwnProperty(l)||(Gb[l]=[]),Gb[l].push(()=>{e[p]=kb[l];++m;m===f.length&&d(e)}))});0===f.length&&d(e)}
50
+ function Ib(b){switch(b){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError(`Unknown type size: ${b}`);}}function Jb(b,a,c={}){var d=a.name;b||R(`type "${d}" must have a positive integer typeid pointer`);if(kb.hasOwnProperty(b)){if(c.Jb)return;R(`Cannot register type '${d}' twice`)}kb[b]=a;delete Hb[b];Gb.hasOwnProperty(b)&&(a=Gb[b],delete Gb[b],a.forEach(e=>e()))}
51
+ function Y(b,a,c={}){if(!("argPackAdvance"in a))throw new TypeError("registerType registeredInstance requires argPackAdvance");Jb(b,a,c)}function Kb(b){R(b.ba.ea.ca.name+" instance already deleted")}function Lb(){}
52
+ function Mb(b,a,c){if(void 0===b[a].ga){var d=b[a];b[a]=function(){b[a].ga.hasOwnProperty(arguments.length)||R(`Function '${c}' called with an invalid number of arguments (${arguments.length}) - expects one of (${b[a].ga})!`);return b[a].ga[arguments.length].apply(this,arguments)};b[a].ga=[];b[a].ga[d.va]=d}}
53
+ function Nb(b,a,c){h.hasOwnProperty(b)?((void 0===c||void 0!==h[b].ga&&void 0!==h[b].ga[c])&&R(`Cannot register public name '${b}' twice`),Mb(h,b,b),h.hasOwnProperty(c)&&R(`Cannot register multiple overloads of a function with the same number of arguments (${c})!`),h[b].ga[c]=a):(h[b]=a,void 0!==c&&(h[b].ac=c))}function Ob(b,a,c,d,e,f,m,l){this.name=b;this.constructor=a;this.ma=c;this.ra=d;this.fa=e;this.Eb=f;this.Ba=m;this.zb=l;this.gb=[]}
54
+ function Pb(b,a,c){for(;a!==c;)a.Ba||R(`Expected null or instance of ${c.name}, got an instance of ${a.name}`),b=a.Ba(b),a=a.fa;return b}function Qb(b,a){if(null===a)return this.Na&&R(`null is not a valid ${this.name}`),0;a.ba||R(`Cannot pass "${Rb(a)}" as a ${this.name}`);a.ba.da||R(`Cannot pass deleted object as a pointer of type ${this.name}`);return Pb(a.ba.da,a.ba.ea.ca,this.ca)}
55
+ function Sb(b,a){if(null===a){this.Na&&R(`null is not a valid ${this.name}`);if(this.Ea){var c=this.Oa();null!==b&&b.push(this.ra,c);return c}return 0}a.ba||R(`Cannot pass "${Rb(a)}" as a ${this.name}`);a.ba.da||R(`Cannot pass deleted object as a pointer of type ${this.name}`);!this.Da&&a.ba.ea.Da&&R(`Cannot convert argument of type ${a.ba.la?a.ba.la.name:a.ba.ea.name} to parameter type ${this.name}`);c=Pb(a.ba.da,a.ba.ea.ca,this.ca);if(this.Ea)switch(void 0===a.ba.ia&&R("Passing raw pointer to smart pointer is illegal"),
56
+ this.Vb){case 0:a.ba.la===this?c=a.ba.ia:R(`Cannot convert argument of type ${a.ba.la?a.ba.la.name:a.ba.ea.name} to parameter type ${this.name}`);break;case 1:c=a.ba.ia;break;case 2:if(a.ba.la===this)c=a.ba.ia;else{var d=a.clone();c=this.Rb(c,U(function(){d["delete"]()}));null!==b&&b.push(this.ra,c)}break;default:R("Unsupporting sharing policy")}return c}
57
+ function Tb(b,a){if(null===a)return this.Na&&R(`null is not a valid ${this.name}`),0;a.ba||R(`Cannot pass "${Rb(a)}" as a ${this.name}`);a.ba.da||R(`Cannot pass deleted object as a pointer of type ${this.name}`);a.ba.ea.Da&&R(`Cannot convert argument of type ${a.ba.ea.name} to parameter type ${this.name}`);return Pb(a.ba.da,a.ba.ea.ca,this.ca)}
58
+ function Ub(b,a,c,d){this.name=b;this.ca=a;this.Na=c;this.Da=d;this.Ea=!1;this.ra=this.Rb=this.Oa=this.hb=this.Vb=this.Qb=void 0;void 0!==a.fa?this.toWireType=Sb:(this.toWireType=d?Qb:Tb,this.ka=null)}function Vb(b,a,c){h.hasOwnProperty(b)||Ab("Replacing nonexistant public symbol");void 0!==h[b].ga&&void 0!==c?h[b].ga[c]=a:(h[b]=a,h[b].va=c)}
59
+ var Wb=(b,a)=>{var c=[];return function(){c.length=0;Object.assign(c,arguments);if(b.includes("j")){var d=h["dynCall_"+b];d=c&&c.length?d.apply(null,[a].concat(c)):d.call(null,a)}else d=Ia.get(a).apply(null,c);return d}};function Z(b,a){b=V(b);var c=b.includes("j")?Wb(b,a):Ia.get(a);"function"!=typeof c&&R(`unknown function pointer with signature ${b}: ${a}`);return c}var Xb=void 0;
60
+ function Yb(b,a){function c(f){e[f]||kb[f]||(Hb[f]?Hb[f].forEach(c):(d.push(f),e[f]=!0))}var d=[],e={};a.forEach(c);throw new Xb(`${b}: `+d.map(lb).join([", "]));}
61
+ function Zb(b,a,c,d,e){var f=a.length;2>f&&R("argTypes array size mismatch! Must at least get return value and 'this' types!");var m=null!==a[1]&&null!==c,l=!1;for(c=1;c<a.length;++c)if(null!==a[c]&&void 0===a[c].ka){l=!0;break}var p="void"!==a[0].name,k=f-2,r=Array(k),u=[],t=[];return function(){arguments.length!==k&&R(`function ${b} called with ${arguments.length} arguments, expected ${k} args!`);t.length=0;u.length=m?2:1;u[0]=e;if(m){var g=a[1].toWireType(t,this);u[1]=g}for(var n=0;n<k;++n)r[n]=
62
+ a[n+2].toWireType(t,arguments[n]),u.push(r[n]);n=d.apply(null,u);if(l)Eb(t);else for(var w=m?1:2;w<a.length;w++){var H=1===w?g:r[w-2];null!==a[w].ka&&a[w].ka(H)}g=p?a[0].fromWireType(n):void 0;return g}}function $b(b,a){for(var c=[],d=0;d<b;d++)c.push(O[a+4*d>>2]);return c}
63
+ function ac(b,a,c){b instanceof Object||R(`${c} with invalid "this": ${b}`);b instanceof a.ca.constructor||R(`${c} incompatible with "this" of type ${b.constructor.name}`);b.ba.da||R(`cannot call emscripten binding method ${c} on deleted object`);return Pb(b.ba.da,b.ba.ea.ca,a.ca)}function bc(b){b>=P.Xa&&0===--P.get(b).ib&&P.wb(b)}
64
+ function cc(b,a,c){switch(a){case 0:return function(d){return this.fromWireType((c?Ca:L)[d])};case 1:return function(d){return this.fromWireType((c?Da:Ea)[d>>1])};case 2:return function(d){return this.fromWireType((c?M:O)[d>>2])};default:throw new TypeError("Unknown integer type: "+b);}}function Rb(b){if(null===b)return"null";var a=typeof b;return"object"===a||"array"===a||"function"===a?b.toString():""+b}
65
+ function dc(b,a){switch(a){case 2:return function(c){return this.fromWireType(Fa[c>>2])};case 3:return function(c){return this.fromWireType(Ga[c>>3])};default:throw new TypeError("Unknown float type: "+b);}}
66
+ function ec(b,a,c){switch(a){case 0:return c?function(d){return Ca[d]}:function(d){return L[d]};case 1:return c?function(d){return Da[d>>1]}:function(d){return Ea[d>>1]};case 2:return c?function(d){return M[d>>2]}:function(d){return O[d>>2]};default:throw new TypeError("Unknown integer type: "+b);}}
67
+ var fc=(b,a,c,d)=>{if(0<d){d=c+d-1;for(var e=0;e<b.length;++e){var f=b.charCodeAt(e);if(55296<=f&&57343>=f){var m=b.charCodeAt(++e);f=65536+((f&1023)<<10)|m&1023}if(127>=f){if(c>=d)break;a[c++]=f}else{if(2047>=f){if(c+1>=d)break;a[c++]=192|f>>6}else{if(65535>=f){if(c+2>=d)break;a[c++]=224|f>>12}else{if(c+3>=d)break;a[c++]=240|f>>18;a[c++]=128|f>>12&63}a[c++]=128|f>>6&63}a[c++]=128|f&63}}a[c]=0}},gc=b=>{for(var a=0,c=0;c<b.length;++c){var d=b.charCodeAt(c);127>=d?a++:2047>=d?a+=2:55296<=d&&57343>=
68
+ d?(a+=4,++c):a+=3}return a},hc="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0,ic=(b,a,c)=>{var d=a+c;for(c=a;b[c]&&!(c>=d);)++c;if(16<c-a&&b.buffer&&hc)return hc.decode(b.subarray(a,c));for(d="";a<c;){var e=b[a++];if(e&128){var f=b[a++]&63;if(192==(e&224))d+=String.fromCharCode((e&31)<<6|f);else{var m=b[a++]&63;e=224==(e&240)?(e&15)<<12|f<<6|m:(e&7)<<18|f<<12|m<<6|b[a++]&63;65536>e?d+=String.fromCharCode(e):(e-=65536,d+=String.fromCharCode(55296|e>>10,56320|e&1023))}}else d+=String.fromCharCode(e)}return d},
69
+ jc="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,lc=(b,a)=>{var c=b>>1;for(var d=c+a/2;!(c>=d)&&Ea[c];)++c;c<<=1;if(32<c-b&&jc)return jc.decode(L.subarray(b,c));c="";for(d=0;!(d>=a/2);++d){var e=Da[b+2*d>>1];if(0==e)break;c+=String.fromCharCode(e)}return c},mc=(b,a,c)=>{void 0===c&&(c=2147483647);if(2>c)return 0;c-=2;var d=a;c=c<2*b.length?c/2:b.length;for(var e=0;e<c;++e)Da[a>>1]=b.charCodeAt(e),a+=2;Da[a>>1]=0;return a-d},nc=b=>2*b.length,oc=(b,a)=>{for(var c=0,d="";!(c>=a/
70
+ 4);){var e=M[b+4*c>>2];if(0==e)break;++c;65536<=e?(e-=65536,d+=String.fromCharCode(55296|e>>10,56320|e&1023)):d+=String.fromCharCode(e)}return d},pc=(b,a,c)=>{void 0===c&&(c=2147483647);if(4>c)return 0;var d=a;c=d+c-4;for(var e=0;e<b.length;++e){var f=b.charCodeAt(e);if(55296<=f&&57343>=f){var m=b.charCodeAt(++e);f=65536+((f&1023)<<10)|m&1023}M[a>>2]=f;a+=4;if(a+4>c)break}M[a>>2]=0;return a-d},qc=b=>{for(var a=0,c=0;c<b.length;++c){var d=b.charCodeAt(c);55296<=d&&57343>=d&&++c;a+=4}return a},rc={};
71
+ function sc(b){var a=rc[b];return void 0===a?V(b):a}var tc=[];function uc(b){var a=tc.length;tc.push(b);return a}function vc(b,a){for(var c=Array(b),d=0;d<b;++d)c[d]=ob(O[a+4*d>>2],"parameter "+d);return c}
72
+ var wc=[],xc={},zc=()=>{if(!yc){var b={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:pa||"./this.program"},a;for(a in xc)void 0===xc[a]?delete b[a]:b[a]=xc[a];var c=[];for(a in b)c.push(`${a}=${b[a]}`);yc=c}return yc},yc,Ac=[null,[],[]],Bc=b=>0===b%4&&(0!==b%100||0===b%400),Cc=[31,29,31,30,31,30,31,31,30,31,30,31],Dc=[31,28,31,30,31,30,31,31,30,31,30,31];
73
+ function Ec(b){var a=Array(gc(b)+1);fc(b,a,0,a.length);return a}
74
+ var Fc=(b,a,c,d)=>{function e(g,n,w){for(g="number"==typeof g?g.toString():g||"";g.length<n;)g=w[0]+g;return g}function f(g,n){return e(g,n,"0")}function m(g,n){function w(x){return 0>x?-1:0<x?1:0}var H;0===(H=w(g.getFullYear()-n.getFullYear()))&&0===(H=w(g.getMonth()-n.getMonth()))&&(H=w(g.getDate()-n.getDate()));return H}function l(g){switch(g.getDay()){case 0:return new Date(g.getFullYear()-1,11,29);case 1:return g;case 2:return new Date(g.getFullYear(),0,3);case 3:return new Date(g.getFullYear(),
75
+ 0,2);case 4:return new Date(g.getFullYear(),0,1);case 5:return new Date(g.getFullYear()-1,11,31);case 6:return new Date(g.getFullYear()-1,11,30)}}function p(g){var n=g.ta;for(g=new Date((new Date(g.ua+1900,0,1)).getTime());0<n;){var w=g.getMonth(),H=(Bc(g.getFullYear())?Cc:Dc)[w];if(n>H-g.getDate())n-=H-g.getDate()+1,g.setDate(1),11>w?g.setMonth(w+1):(g.setMonth(0),g.setFullYear(g.getFullYear()+1));else{g.setDate(g.getDate()+n);break}}w=new Date(g.getFullYear()+1,0,4);n=l(new Date(g.getFullYear(),
76
+ 0,4));w=l(w);return 0>=m(n,g)?0>=m(w,g)?g.getFullYear()+1:g.getFullYear():g.getFullYear()-1}var k=M[d+40>>2];d={Yb:M[d>>2],Xb:M[d+4>>2],Ia:M[d+8>>2],Qa:M[d+12>>2],Ja:M[d+16>>2],ua:M[d+20>>2],na:M[d+24>>2],ta:M[d+28>>2],bc:M[d+32>>2],Wb:M[d+36>>2],Zb:k?k?ic(L,k):"":""};c=c?ic(L,c):"";k={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y",
77
+ "%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var r in k)c=c.replace(new RegExp(r,"g"),k[r]);var u="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),t="January February March April May June July August September October November December".split(" ");k={"%a":g=>u[g.na].substring(0,3),"%A":g=>u[g.na],"%b":g=>t[g.Ja].substring(0,3),"%B":g=>t[g.Ja],"%C":g=>f((g.ua+1900)/
78
+ 100|0,2),"%d":g=>f(g.Qa,2),"%e":g=>e(g.Qa,2," "),"%g":g=>p(g).toString().substring(2),"%G":g=>p(g),"%H":g=>f(g.Ia,2),"%I":g=>{g=g.Ia;0==g?g=12:12<g&&(g-=12);return f(g,2)},"%j":g=>{for(var n=0,w=0;w<=g.Ja-1;n+=(Bc(g.ua+1900)?Cc:Dc)[w++]);return f(g.Qa+n,3)},"%m":g=>f(g.Ja+1,2),"%M":g=>f(g.Xb,2),"%n":()=>"\n","%p":g=>0<=g.Ia&&12>g.Ia?"AM":"PM","%S":g=>f(g.Yb,2),"%t":()=>"\t","%u":g=>g.na||7,"%U":g=>f(Math.floor((g.ta+7-g.na)/7),2),"%V":g=>{var n=Math.floor((g.ta+7-(g.na+6)%7)/7);2>=(g.na+371-g.ta-
79
+ 2)%7&&n++;if(n)53==n&&(w=(g.na+371-g.ta)%7,4==w||3==w&&Bc(g.ua)||(n=1));else{n=52;var w=(g.na+7-g.ta-1)%7;(4==w||5==w&&Bc(g.ua%400-1))&&n++}return f(n,2)},"%w":g=>g.na,"%W":g=>f(Math.floor((g.ta+7-(g.na+6)%7)/7),2),"%y":g=>(g.ua+1900).toString().substring(2),"%Y":g=>g.ua+1900,"%z":g=>{g=g.Wb;var n=0<=g;g=Math.abs(g)/60;return(n?"+":"-")+String("0000"+(g/60*100+g%60)).slice(-4)},"%Z":g=>g.Zb,"%%":()=>"%"};c=c.replace(/%%/g,"\x00\x00");for(r in k)c.includes(r)&&(c=c.replace(new RegExp(r,"g"),k[r](d)));
80
+ c=c.replace(/\0\0/g,"%");r=Ec(c);if(r.length>a)return 0;Ca.set(r,b);return r.length-1};Object.assign(ab.prototype,{get(b){return this.qa[b]},has(b){return void 0!==this.qa[b]},tb(b){var a=this.bb.pop()||this.qa.length;this.qa[a]=b;return a},wb(b){this.qa[b]=void 0;this.bb.push(b)}});bb=h.BindingError=class extends Error{constructor(b){super(b);this.name="BindingError"}};P.qa.push({value:void 0},{value:null},{value:!0},{value:!1});P.Xa=P.qa.length;
81
+ h.count_emval_handles=function(){for(var b=0,a=P.Xa;a<P.qa.length;++a)void 0!==P.qa[a]&&++b;return b};db=h.PureVirtualError=cb("PureVirtualError");for(var Gc=Array(256),Hc=0;256>Hc;++Hc)Gc[Hc]=String.fromCharCode(Hc);eb=Gc;h.getInheritedInstanceCount=function(){return Object.keys(ib).length};h.getLiveInheritedInstances=function(){var b=[],a;for(a in ib)ib.hasOwnProperty(a)&&b.push(ib[a]);return b};h.flushPendingDeletes=gb;h.setDelayFunction=function(b){hb=b;fb.length&&hb&&hb(gb)};
82
+ zb=h.InternalError=class extends Error{constructor(b){super(b);this.name="InternalError"}};Lb.prototype.isAliasOf=function(b){if(!(this instanceof Lb&&b instanceof Lb))return!1;var a=this.ba.ea.ca,c=this.ba.da,d=b.ba.ea.ca;for(b=b.ba.da;a.fa;)c=a.Ba(c),a=a.fa;for(;d.fa;)b=d.Ba(b),d=d.fa;return a===d&&c===b};
83
+ Lb.prototype.clone=function(){this.ba.da||Kb(this);if(this.ba.ya)return this.ba.count.value+=1,this;var b=Cb,a=Object,c=a.create,d=Object.getPrototypeOf(this),e=this.ba;b=b(c.call(a,d,{ba:{value:{count:e.count,wa:e.wa,ya:e.ya,da:e.da,ea:e.ea,ia:e.ia,la:e.la}}}));b.ba.count.value+=1;b.ba.wa=!1;return b};Lb.prototype["delete"]=function(){this.ba.da||Kb(this);this.ba.wa&&!this.ba.ya&&R("Object already scheduled for deletion");pb(this);rb(this.ba);this.ba.ya||(this.ba.ia=void 0,this.ba.da=void 0)};
84
+ Lb.prototype.isDeleted=function(){return!this.ba.da};Lb.prototype.deleteLater=function(){this.ba.da||Kb(this);this.ba.wa&&!this.ba.ya&&R("Object already scheduled for deletion");fb.push(this);1===fb.length&&hb&&hb(gb);this.ba.wa=!0;return this};Ub.prototype.Fb=function(b){this.hb&&(b=this.hb(b));return b};Ub.prototype.Ya=function(b){this.ra&&this.ra(b)};Ub.prototype.argPackAdvance=8;Ub.prototype.readValueFromPointer=Fb;Ub.prototype.deleteObject=function(b){if(null!==b)b["delete"]()};
85
+ Ub.prototype.fromWireType=function(b){function a(){return this.Ea?Bb(this.ca.ma,{ea:this.Qb,da:c,la:this,ia:b}):Bb(this.ca.ma,{ea:this,da:b})}var c=this.Fb(b);if(!c)return this.Ya(b),null;var d=yb(this.ca,c);if(void 0!==d){if(0===d.ba.count.value)return d.ba.da=c,d.ba.ia=b,d.clone();d=d.clone();this.Ya(b);return d}d=this.ca.Eb(c);d=xb[d];if(!d)return a.call(this);d=this.Da?d.ub:d.pointerType;var e=wb(c,this.ca,d.ca);return null===e?a.call(this):this.Ea?Bb(d.ca.ma,{ea:d,da:e,la:this,ia:b}):Bb(d.ca.ma,
86
+ {ea:d,da:e})};Xb=h.UnboundTypeError=cb("UnboundTypeError");
87
+ var Jc={N:function(b,a,c){b=V(b);a=ob(a,"wrapper");c=S(c);var d=[].slice,e=a.ca,f=e.ma,m=e.fa.ma,l=e.fa.constructor;b=$a(b,function(){e.fa.gb.forEach(function(k){if(this[k]===m[k])throw new db(`Pure virtual function ${k} must be implemented in JavaScript`);}.bind(this));Object.defineProperty(this,"__parent",{value:f});this.__construct.apply(this,d.call(arguments))});f.__construct=function(){this===f&&R("Pass correct 'this' to __construct");var k=l.implement.apply(void 0,[this].concat(d.call(arguments)));
88
+ pb(k);var r=k.ba;k.notifyOnDestruction();r.ya=!0;Object.defineProperties(this,{ba:{value:r}});Cb(this);k=r.da;k=jb(e,k);ib.hasOwnProperty(k)?R(`Tried to register registered instance: ${k}`):ib[k]=this};f.__destruct=function(){this===f&&R("Pass correct 'this' to __destruct");pb(this);var k=this.ba.da;k=jb(e,k);ib.hasOwnProperty(k)?delete ib[k]:R(`Tried to unregister unregistered instance: ${k}`)};b.prototype=Object.create(f);for(var p in c)b.prototype[p]=c[p];return U(b)},O:function(b){var a=Db[b];
89
+ delete Db[b];var c=a.Oa,d=a.ra,e=a.ab,f=e.map(m=>m.Ib).concat(e.map(m=>m.Tb));X([b],f,m=>{var l={};e.forEach((p,k)=>{var r=m[k],u=p.Gb,t=p.Hb,g=m[k+e.length],n=p.Sb,w=p.Ub;l[p.Cb]={read:H=>r.fromWireType(u(t,H)),write:(H,x)=>{var A=[];n(w,H,g.toWireType(A,x));Eb(A)}}});return[{name:a.name,fromWireType:function(p){var k={},r;for(r in l)k[r]=l[r].read(p);d(p);return k},toWireType:function(p,k){for(var r in l)if(!(r in k))throw new TypeError(`Missing field: "${r}"`);var u=c();for(r in l)l[r].write(u,
90
+ k[r]);null!==p&&p.push(d,u);return u},argPackAdvance:8,readValueFromPointer:Fb,ka:d}]})},C:function(){},K:function(b,a,c,d,e){var f=Ib(c);a=V(a);Y(b,{name:a,fromWireType:function(m){return!!m},toWireType:function(m,l){return l?d:e},argPackAdvance:8,readValueFromPointer:function(m){if(1===c)var l=Ca;else if(2===c)l=Da;else if(4===c)l=M;else throw new TypeError("Unknown boolean type size: "+a);return this.fromWireType(l[m>>f])},ka:null})},f:function(b,a,c,d,e,f,m,l,p,k,r,u,t){r=V(r);f=Z(e,f);l&&(l=
91
+ Z(m,l));k&&(k=Z(p,k));t=Z(u,t);var g=Ya(r);Nb(g,function(){Yb(`Cannot construct ${r} due to unbound types`,[d])});X([b,a,c],d?[d]:[],function(n){n=n[0];if(d){var w=n.ca;var H=w.ma}else H=Lb.prototype;n=$a(g,function(){if(Object.getPrototypeOf(this)!==x)throw new bb("Use 'new' to construct "+r);if(void 0===A.sa)throw new bb(r+" has no accessible constructor");var Q=A.sa[arguments.length];if(void 0===Q)throw new bb(`Tried to invoke ctor of ${r} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(A.sa).toString()}) parameters instead!`);
92
+ return Q.apply(this,arguments)});var x=Object.create(H,{constructor:{value:n}});n.prototype=x;var A=new Ob(r,n,x,t,w,f,l,k);A.fa&&(void 0===A.fa.Ca&&(A.fa.Ca=[]),A.fa.Ca.push(A));w=new Ub(r,A,!0,!1);H=new Ub(r+"*",A,!1,!1);var J=new Ub(r+" const*",A,!1,!0);xb[b]={pointerType:H,ub:J};Vb(g,n);return[w,H,J]})},j:function(b,a,c,d,e,f,m){var l=$b(c,d);a=V(a);f=Z(e,f);X([],[b],function(p){function k(){Yb(`Cannot call ${r} due to unbound types`,l)}p=p[0];var r=`${p.name}.${a}`;a.startsWith("@@")&&(a=Symbol[a.substring(2)]);
93
+ var u=p.ca.constructor;void 0===u[a]?(k.va=c-1,u[a]=k):(Mb(u,a,r),u[a].ga[c-1]=k);X([],l,function(t){t=Zb(r,[t[0],null].concat(t.slice(1)),null,f,m);void 0===u[a].ga?(t.va=c-1,u[a]=t):u[a].ga[c-1]=t;if(p.ca.Ca)for(const g of p.ca.Ca)g.constructor.hasOwnProperty(a)||(g.constructor[a]=t);return[]});return[]})},x:function(b,a,c,d,e,f,m,l){a=V(a);f=Z(e,f);X([],[b],function(p){p=p[0];var k=`${p.name}.${a}`,r={get(){Yb(`Cannot access ${k} due to unbound types`,[c])},enumerable:!0,configurable:!0};r.set=
94
+ l?()=>{Yb(`Cannot access ${k} due to unbound types`,[c])}:()=>{R(`${k} is a read-only property`)};Object.defineProperty(p.ca.constructor,a,r);X([],[c],function(u){u=u[0];var t={get(){return u.fromWireType(f(d))},enumerable:!0};l&&(l=Z(m,l),t.set=g=>{var n=[];l(d,u.toWireType(n,g));Eb(n)});Object.defineProperty(p.ca.constructor,a,t);return[]});return[]})},s:function(b,a,c,d,e,f){var m=$b(a,c);e=Z(d,e);X([],[b],function(l){l=l[0];var p=`constructor ${l.name}`;void 0===l.ca.sa&&(l.ca.sa=[]);if(void 0!==
95
+ l.ca.sa[a-1])throw new bb(`Cannot register multiple constructors with identical number of parameters (${a-1}) for class '${l.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);l.ca.sa[a-1]=()=>{Yb(`Cannot construct ${l.name} due to unbound types`,m)};X([],m,function(k){k.splice(1,0,null);l.ca.sa[a-1]=Zb(p,k,null,e,f);return[]});return[]})},a:function(b,a,c,d,e,f,m,l){var p=$b(c,d);a=V(a);f=Z(e,f);X([],[b],function(k){function r(){Yb(`Cannot call ${u} due to unbound types`,
96
+ p)}k=k[0];var u=`${k.name}.${a}`;a.startsWith("@@")&&(a=Symbol[a.substring(2)]);l&&k.ca.gb.push(a);var t=k.ca.ma,g=t[a];void 0===g||void 0===g.ga&&g.className!==k.name&&g.va===c-2?(r.va=c-2,r.className=k.name,t[a]=r):(Mb(t,a,u),t[a].ga[c-2]=r);X([],p,function(n){n=Zb(u,n,k,f,m);void 0===t[a].ga?(n.va=c-2,t[a]=n):t[a].ga[c-2]=n;return[]});return[]})},e:function(b,a,c,d,e,f,m,l,p,k){a=V(a);e=Z(d,e);X([],[b],function(r){r=r[0];var u=`${r.name}.${a}`,t={get(){Yb(`Cannot access ${u} due to unbound types`,
97
+ [c,m])},enumerable:!0,configurable:!0};t.set=p?()=>{Yb(`Cannot access ${u} due to unbound types`,[c,m])}:()=>{R(u+" is a read-only property")};Object.defineProperty(r.ca.ma,a,t);X([],p?[c,m]:[c],function(g){var n=g[0],w={get(){var x=ac(this,r,u+" getter");return n.fromWireType(e(f,x))},enumerable:!0};if(p){p=Z(l,p);var H=g[1];w.set=function(x){var A=ac(this,r,u+" setter"),J=[];p(k,A,H.toWireType(J,x));Eb(J)}}Object.defineProperty(r.ca.ma,a,w);return[]});return[]})},J:function(b,a){a=V(a);Y(b,{name:a,
98
+ fromWireType:function(c){var d=S(c);bc(c);return d},toWireType:function(c,d){return U(d)},argPackAdvance:8,readValueFromPointer:Fb,ka:null})},p:function(b,a,c,d){function e(){}c=Ib(c);a=V(a);e.values={};Y(b,{name:a,constructor:e,fromWireType:function(f){return this.constructor.values[f]},toWireType:function(f,m){return m.value},argPackAdvance:8,readValueFromPointer:cc(a,c,d),ka:null});Nb(a,e)},d:function(b,a,c){var d=ob(b,"enum");a=V(a);b=d.constructor;d=Object.create(d.constructor.prototype,{value:{value:c},
99
+ constructor:{value:$a(`${d.name}_${a}`,function(){})}});b.values[c]=d;b[a]=d},y:function(b,a,c){c=Ib(c);a=V(a);Y(b,{name:a,fromWireType:function(d){return d},toWireType:function(d,e){return e},argPackAdvance:8,readValueFromPointer:dc(a,c),ka:null})},m:function(b,a,c,d,e,f){var m=$b(a,c);b=V(b);e=Z(d,e);Nb(b,function(){Yb(`Cannot call ${b} due to unbound types`,m)},a-1);X([],m,function(l){Vb(b,Zb(b,[l[0],null].concat(l.slice(1)),null,e,f),a-1);return[]})},l:function(b,a,c,d,e){a=V(a);-1===e&&(e=4294967295);
100
+ e=Ib(c);var f=l=>l;if(0===d){var m=32-8*c;f=l=>l<<m>>>m}c=a.includes("unsigned")?function(l,p){return p>>>0}:function(l,p){return p};Y(b,{name:a,fromWireType:f,toWireType:c,argPackAdvance:8,readValueFromPointer:ec(a,e,0!==d),ka:null})},g:function(b,a,c){function d(f){f>>=2;var m=O;return new e(m.buffer,m[f+1],m[f])}var e=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][a];c=V(c);Y(b,{name:c,fromWireType:d,argPackAdvance:8,readValueFromPointer:d},{Jb:!0})},
101
+ z:function(b,a){a=V(a);var c="std::string"===a;Y(b,{name:a,fromWireType:function(d){var e=O[d>>2],f=d+4;if(c)for(var m=f,l=0;l<=e;++l){var p=f+l;if(l==e||0==L[p]){m=m?ic(L,m,p-m):"";if(void 0===k)var k=m;else k+=String.fromCharCode(0),k+=m;m=p+1}}else{k=Array(e);for(l=0;l<e;++l)k[l]=String.fromCharCode(L[f+l]);k=k.join("")}nb(d);return k},toWireType:function(d,e){e instanceof ArrayBuffer&&(e=new Uint8Array(e));var f="string"==typeof e;f||e instanceof Uint8Array||e instanceof Uint8ClampedArray||e instanceof
102
+ Int8Array||R("Cannot pass non-string to std::string");var m=c&&f?gc(e):e.length;var l=Ic(4+m+1),p=l+4;O[l>>2]=m;if(c&&f)fc(e,L,p,m+1);else if(f)for(f=0;f<m;++f){var k=e.charCodeAt(f);255<k&&(nb(p),R("String has UTF-16 code units that do not fit in 8 bits"));L[p+f]=k}else for(f=0;f<m;++f)L[p+f]=e[f];null!==d&&d.push(nb,l);return l},argPackAdvance:8,readValueFromPointer:Fb,ka:function(d){nb(d)}})},u:function(b,a,c){c=V(c);if(2===a){var d=lc;var e=mc;var f=nc;var m=()=>Ea;var l=1}else 4===a&&(d=oc,e=
103
+ pc,f=qc,m=()=>O,l=2);Y(b,{name:c,fromWireType:function(p){for(var k=O[p>>2],r=m(),u,t=p+4,g=0;g<=k;++g){var n=p+4+g*a;if(g==k||0==r[n>>l])t=d(t,n-t),void 0===u?u=t:(u+=String.fromCharCode(0),u+=t),t=n+a}nb(p);return u},toWireType:function(p,k){"string"!=typeof k&&R(`Cannot pass non-string to C++ string type ${c}`);var r=f(k),u=Ic(4+r+a);O[u>>2]=r>>l;e(k,u+4,r+a);null!==p&&p.push(nb,u);return u},argPackAdvance:8,readValueFromPointer:Fb,ka:function(p){nb(p)}})},Q:function(b,a,c,d,e,f){Db[b]={name:V(a),
104
+ Oa:Z(c,d),ra:Z(e,f),ab:[]}},P:function(b,a,c,d,e,f,m,l,p,k){Db[b].ab.push({Cb:V(a),Ib:c,Gb:Z(d,e),Hb:f,Tb:m,Sb:Z(l,p),Ub:k})},L:function(b,a){a=V(a);Y(b,{Lb:!0,name:a,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},v:function(b,a,c){b=S(b);a=ob(a,"emval::as");var d=[],e=U(d);O[c>>2]=e;return a.toWireType(d,b)},w:function(b,a,c,d,e){b=tc[b];a=S(a);c=sc(c);var f=[];O[d>>2]=U(f);return b(a,c,f,e)},i:function(b,a,c,d){b=tc[b];a=S(a);c=sc(c);b(a,c,null,d)},c:bc,h:function(b,a){var c=
105
+ vc(b,a),d=c[0];a=d.name+"_$"+c.slice(1).map(function(m){return m.name}).join("_")+"$";var e=wc[a];if(void 0!==e)return e;var f=Array(b-1);e=uc((m,l,p,k)=>{for(var r=0,u=0;u<b-1;++u)f[u]=c[u+1].readValueFromPointer(k+r),r+=c[u+1].argPackAdvance;m=m[l].apply(m,f);for(u=0;u<b-1;++u)c[u+1].xb&&c[u+1].xb(f[u]);if(!d.Lb)return d.toWireType(p,m)});return wc[a]=e},t:function(b){b=sc(b);return U(h[b])},M:function(b,a){b=S(b);a=S(a);return U(b[a])},n:function(b){4<b&&(P.get(b).ib+=1)},o:function(b){return U(sc(b))},
106
+ A:function(){return U({})},q:function(b){var a=S(b);Eb(a);bc(b)},k:function(b,a,c){b=S(b);a=S(a);c=S(c);b[a]=c},r:function(b,a){b=ob(b,"_emval_take_value");b=b.readValueFromPointer(a);return U(b)},b:()=>{za("")},E:b=>{var a=L.length;b>>>=0;if(2147483648<b)return!1;for(var c=1;4>=c;c*=2){var d=a*(1+.2/c);d=Math.min(d,b+100663296);var e=Math;d=Math.max(b,d);a:{e=e.min.call(e,2147483648,d+(65536-d%65536)%65536)-Aa.buffer.byteLength+65535>>>16;try{Aa.grow(e);Ha();var f=1;break a}catch(m){}f=void 0}if(f)return!0}return!1},
107
+ F:(b,a)=>{var c=0;zc().forEach(function(d,e){var f=a+c;e=O[b+4*e>>2]=f;for(f=0;f<d.length;++f)Ca[e++>>0]=d.charCodeAt(f);Ca[e>>0]=0;c+=d.length+1});return 0},G:(b,a)=>{var c=zc();O[b>>2]=c.length;var d=0;c.forEach(function(e){d+=e.length+1});O[a>>2]=d;return 0},H:()=>52,B:function(){return 70},I:(b,a,c,d)=>{for(var e=0,f=0;f<c;f++){var m=O[a>>2],l=O[a+4>>2];a+=8;for(var p=0;p<l;p++){var k=L[m+p],r=Ac[b];0===k||10===k?((1===b?wa:xa)(ic(r,0)),r.length=0):r.push(k)}e+=l}O[d>>2]=e;return 0},D:(b,a,c,
108
+ d)=>Fc(b,a,c,d)};(function(){function b(c){I=c=c.exports;Aa=I.R;Ha();Ia=I.X;Ka.unshift(I.S);Na--;h.monitorRunDependencies&&h.monitorRunDependencies(Na);if(0==Na&&(null!==Oa&&(clearInterval(Oa),Oa=null),Pa)){var d=Pa;Pa=null;d()}return c}var a={a:Jc};Na++;h.monitorRunDependencies&&h.monitorRunDependencies(Na);if(h.instantiateWasm)try{return h.instantiateWasm(a,b)}catch(c){xa("Module.instantiateWasm callback failed with error: "+c),ca(c)}Wa(a,function(c){b(c.instance)}).catch(ca);return{}})();
109
+ var nb=b=>(nb=I.T)(b),Ic=b=>(Ic=I.U)(b),mb=b=>(mb=I.V)(b);h.__embind_initialize_bindings=()=>(h.__embind_initialize_bindings=I.W)();h.dynCall_jiji=(b,a,c,d,e)=>(h.dynCall_jiji=I.Y)(b,a,c,d,e);h.dynCall_viijii=(b,a,c,d,e,f,m)=>(h.dynCall_viijii=I.Z)(b,a,c,d,e,f,m);h.dynCall_iiiiij=(b,a,c,d,e,f,m)=>(h.dynCall_iiiiij=I._)(b,a,c,d,e,f,m);h.dynCall_iiiiijj=(b,a,c,d,e,f,m,l,p)=>(h.dynCall_iiiiijj=I.$)(b,a,c,d,e,f,m,l,p);
110
+ h.dynCall_iiiiiijj=(b,a,c,d,e,f,m,l,p,k)=>(h.dynCall_iiiiiijj=I.aa)(b,a,c,d,e,f,m,l,p,k);var Kc;Pa=function Lc(){Kc||Mc();Kc||(Pa=Lc)};
111
+ function Mc(){function b(){if(!Kc&&(Kc=!0,h.calledRun=!0,!Ba)){Xa(Ka);ba(h);if(h.onRuntimeInitialized)h.onRuntimeInitialized();if(h.postRun)for("function"==typeof h.postRun&&(h.postRun=[h.postRun]);h.postRun.length;){var a=h.postRun.shift();La.unshift(a)}Xa(La)}}if(!(0<Na)){if(h.preRun)for("function"==typeof h.preRun&&(h.preRun=[h.preRun]);h.preRun.length;)Ma();Xa(Ja);0<Na||(h.setStatus?(h.setStatus("Running..."),setTimeout(function(){setTimeout(function(){h.setStatus("")},1);b()},1)):b())}}
112
+ if(h.preInit)for("function"==typeof h.preInit&&(h.preInit=[h.preInit]);0<h.preInit.length;)h.preInit.pop()();Mc();
102
113
 
103
114
 
104
115
  return moduleArg.ready
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rive-app/canvas-advanced",
3
- "version": "2.4.4",
3
+ "version": "2.6.0",
4
4
  "description": "Rive's lightweight low-level canvas based web api.",
5
5
  "main": "canvas_advanced.mjs",
6
6
  "homepage": "https://rive.app",
package/rive.wasm CHANGED
Binary file
@@ -16,6 +16,7 @@ export interface RiveCanvas {
16
16
  CanvasRenderer: typeof CanvasRenderer;
17
17
  LinearAnimationInstance: typeof LinearAnimationInstance;
18
18
  StateMachineInstance: typeof StateMachineInstance;
19
+ CustomFileAssetLoader: typeof CustomFileAssetLoader;
19
20
  Mat2D: typeof Mat2D;
20
21
  Vec2D: typeof Vec2D;
21
22
  AABB: AABB;
@@ -28,14 +29,22 @@ export interface RiveCanvas {
28
29
  RenderPaintStyle: typeof RenderPaintStyle;
29
30
  StrokeCap: typeof StrokeCap;
30
31
  StrokeJoin: typeof StrokeJoin;
32
+ decodeImage: Function;
33
+ decodeFont: Function;
31
34
 
32
35
  /**
33
36
  * Loads a Rive file for the runtime and returns a Rive-specific File class
34
37
  *
35
38
  * @param buffer - Array buffer of a Rive file
39
+ * @param assetLoader - FileAssetLoader used to optionally customize loading of font and image assets
40
+ * @param enableRiveAssetCDN - boolean flag to allow loading assets from the Rive CDN, enabled by default.
36
41
  * @returns A Promise for a Rive File class
37
42
  */
38
- load(buffer: Uint8Array): Promise<File>;
43
+ load(
44
+ buffer: Uint8Array,
45
+ assetLoader?: FileAssetLoader,
46
+ enableRiveAssetCDN?: boolean,
47
+ ): Promise<File>;
39
48
 
40
49
  /**
41
50
  * Creates the renderer to draw the Rive on the provided canvas element
@@ -49,7 +58,7 @@ export interface RiveCanvas {
49
58
  */
50
59
  makeRenderer(
51
60
  canvas: HTMLCanvasElement | OffscreenCanvas,
52
- useOffscreenRenderer?: boolean
61
+ useOffscreenRenderer?: boolean,
53
62
  ): WrappedRenderer;
54
63
 
55
64
  /**
@@ -65,7 +74,7 @@ export interface RiveCanvas {
65
74
  fit: Fit,
66
75
  alignment: Alignment,
67
76
  frame: AABB,
68
- content: AABB
77
+ content: AABB,
69
78
  ): Mat2D;
70
79
  mapXY(matrix: Mat2D, canvasPoints: Vec2D): Vec2D;
71
80
  /**
@@ -158,7 +167,7 @@ export declare class RenderPathWrapper {
158
167
  ix: number,
159
168
  iy: number,
160
169
  x: number,
161
- y: number
170
+ y: number,
162
171
  ): void;
163
172
  close(): void;
164
173
  }
@@ -201,34 +210,36 @@ export declare class RenderPaint extends RenderPaintWrapper {}
201
210
  /////////////////////
202
211
  export declare class CanvasRenderer extends Renderer {
203
212
  constructor(
204
- ctx: CanvasRenderingContext2D | OffscreenCanvasRenderingContext2D
213
+ ctx: CanvasRenderingContext2D | OffscreenCanvasRenderingContext2D,
205
214
  );
206
215
  }
207
216
 
208
- type OmittedCanvasRenderingContext2DMethods = "createConicGradient" |
209
- "createImageData" |
210
- "createLinearGradient" |
211
- "createPattern" |
212
- "createRadialGradient" |
213
- "getContextAttributes" |
214
- "getImageData" |
215
- "getLineDash" |
216
- "getTransform" |
217
- "isContextLost" |
218
- "isPointInPath" |
219
- "isPointInStroke" |
220
- "measureText";
217
+ type OmittedCanvasRenderingContext2DMethods =
218
+ | "createConicGradient"
219
+ | "createImageData"
220
+ | "createLinearGradient"
221
+ | "createPattern"
222
+ | "createRadialGradient"
223
+ | "getContextAttributes"
224
+ | "getImageData"
225
+ | "getLineDash"
226
+ | "getTransform"
227
+ | "isContextLost"
228
+ | "isPointInPath"
229
+ | "isPointInStroke"
230
+ | "measureText";
221
231
 
222
232
  /**
223
233
  * Proxy class that handles calls to a CanvasRenderer instance and handles Rive-related rendering calls such
224
234
  * as `save`, `restore`, `transform`, and more, effectively overriding and/or wrapping Canvas2D context
225
235
  * APIs for Rive-specific purposes. Other calls not intentionally overridden are passed through to the
226
236
  * Canvas2D context directly.
227
- *
237
+ *
228
238
  * Note: Currently, any calls to the Canvas2D context that you expect to return a value (i.e. `isPointInStroke()`)
229
239
  * will return undefined
230
240
  */
231
- export type CanvasRendererProxy = CanvasRenderer & Omit<CanvasRenderingContext2D, OmittedCanvasRenderingContext2DMethods>;
241
+ export type CanvasRendererProxy = CanvasRenderer &
242
+ Omit<CanvasRenderingContext2D, OmittedCanvasRenderingContext2DMethods>;
232
243
 
233
244
  /**
234
245
  * Renderer type for `makeRenderer()` that returns Renderer (webgl) or a CanvasRendererProxy (canvas2d)
@@ -238,7 +249,7 @@ export type WrappedRenderer = Renderer | CanvasRendererProxy;
238
249
  export declare class CanvasRenderPaint extends RenderPaint {
239
250
  draw(
240
251
  ctx: CanvasRenderingContext2D | OffscreenCanvasRenderingContext2D,
241
- path: RenderPath
252
+ path: RenderPath,
242
253
  ): void;
243
254
  }
244
255
 
@@ -498,6 +509,10 @@ export declare class LinearAnimationInstance {
498
509
  }
499
510
 
500
511
  export declare class TextValueRun {
512
+ /**
513
+ * Getter for the name of the Text Run
514
+ */
515
+ get name(): string;
501
516
  /**
502
517
  * Getter for text value of the Text Run
503
518
  */
@@ -840,3 +855,19 @@ export declare class Vec2D {
840
855
  */
841
856
  delete(): void;
842
857
  }
858
+
859
+ export declare class FileAsset {
860
+ name: string;
861
+ fileExtension: string;
862
+ isImage: boolean;
863
+ isFont: boolean;
864
+ cdnUuid: boolean;
865
+ }
866
+
867
+ export declare class FileAssetLoader {
868
+ }
869
+
870
+ export declare class CustomFileAssetLoader extends FileAssetLoader {
871
+ constructor({loadContents}: {loadContents:Function});
872
+ loadContents(asset: FileAsset, bytes:any): boolean;
873
+ }