
var CanvasKitInit = (() => {
  var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
  if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
  return (
function(CanvasKitInit) {
  CanvasKitInit = CanvasKitInit || {};


null;var w;w||(w=typeof CanvasKitInit !== 'undefined' ? CanvasKitInit : {});var da,ea;w.ready=new Promise(function(a,b){da=a;ea=b});
(function(a){a.Vd=a.Vd||[];a.Vd.push(function(){a.MakeSWCanvasSurface=function(b){var e=b;if("CANVAS"!==e.tagName&&(e=document.getElementById(b),!e))throw"Canvas with id "+b+" was not found";if(b=a.MakeSurface(e.width,e.height))b.Od=e;return b};a.MakeCanvasSurface||(a.MakeCanvasSurface=a.MakeSWCanvasSurface);a.MakeSurface=function(b,e){var f={width:b,height:e,colorType:a.ColorType.RGBA_8888,alphaType:a.AlphaType.Unpremul,colorSpace:a.ColorSpace.SRGB},h=b*e*4,m=a._malloc(h);if(f=a.Surface._makeRasterDirect(f,
m,4*b))f.Od=null,f.Ff=b,f.Bf=e,f.Df=h,f.bf=m,f.getCanvas().clear(a.TRANSPARENT);return f};a.MakeRasterDirectSurface=function(b,e,f){return a.Surface._makeRasterDirect(b,e.byteOffset,f)};a.Surface.prototype.flush=function(b){a.Pd(this.Nd);this._flush();if(this.Od){var e=new Uint8ClampedArray(a.HEAPU8.buffer,this.bf,this.Df);e=new ImageData(e,this.Ff,this.Bf);b?this.Od.getContext("2d").putImageData(e,0,0,b[0],b[1],b[2]-b[0],b[3]-b[1]):this.Od.getContext("2d").putImageData(e,0,0)}};a.Surface.prototype.dispose=
function(){this.bf&&a._free(this.bf);this.delete()};a.Pd=a.Pd||function(){};a.Te=a.Te||function(){return null}})})(w);
(function(a){a.Vd=a.Vd||[];a.Vd.push(function(){function b(n,q,v){return n&&n.hasOwnProperty(q)?n[q]:v}function e(n){var q=ia(ka);ka[q]=n;return q}function f(n){return n.naturalHeight||n.videoHeight||n.displayHeight||n.height}function h(n){return n.naturalWidth||n.videoWidth||n.displayWidth||n.width}function m(n,q,v,E){n.bindTexture(n.TEXTURE_2D,q);E||v.alphaType!==a.AlphaType.Premul||n.pixelStorei(n.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);return q}function u(n,q,v){v||q.alphaType!==a.AlphaType.Premul||
n.pixelStorei(n.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);n.bindTexture(n.TEXTURE_2D,null)}a.GetWebGLContext=function(n,q){if(!n)throw"null canvas passed into makeWebGLContext";var v={alpha:b(q,"alpha",1),depth:b(q,"depth",1),stencil:b(q,"stencil",8),antialias:b(q,"antialias",0),premultipliedAlpha:b(q,"premultipliedAlpha",1),preserveDrawingBuffer:b(q,"preserveDrawingBuffer",0),preferLowPowerToHighPerformance:b(q,"preferLowPowerToHighPerformance",0),failIfMajorPerformanceCaveat:b(q,"failIfMajorPerformanceCaveat",
0),enableExtensionsByDefault:b(q,"enableExtensionsByDefault",1),explicitSwapControl:b(q,"explicitSwapControl",0),renderViaOffscreenBackBuffer:b(q,"renderViaOffscreenBackBuffer",0)};v.majorVersion=q&&q.majorVersion?q.majorVersion:"undefined"!==typeof WebGL2RenderingContext?2:1;if(v.explicitSwapControl)throw"explicitSwapControl is not supported";n=la(n,v);if(!n)return 0;ma(n);x.he.getExtension("WEBGL_debug_renderer_info");return n};a.deleteContext=function(n){x===na[n]&&(x=null);"object"==typeof JSEvents&&
JSEvents.vg(na[n].he.canvas);na[n]&&na[n].he.canvas&&(na[n].he.canvas.zf=void 0);na[n]=null};a._setTextureCleanup({deleteTexture:function(n,q){var v=ka[q];v&&na[n].he.deleteTexture(v);ka[q]=null}});a.MakeWebGLContext=function(n){if(!this.Pd(n))return null;var q=this._MakeGrContext();if(!q)return null;q.Nd=n;var v=q.delete.bind(q);q["delete"]=function(){a.Pd(this.Nd);v()}.bind(q);return x.ff=q};a.MakeGrContext=a.MakeWebGLContext;a.GrDirectContext.prototype.getResourceCacheLimitBytes=function(){a.Pd(this.Nd);
this._getResourceCacheLimitBytes()};a.GrDirectContext.prototype.getResourceCacheUsageBytes=function(){a.Pd(this.Nd);this._getResourceCacheUsageBytes()};a.GrDirectContext.prototype.releaseResourcesAndAbandonContext=function(){a.Pd(this.Nd);this._releaseResourcesAndAbandonContext()};a.GrDirectContext.prototype.setResourceCacheLimitBytes=function(n){a.Pd(this.Nd);this._setResourceCacheLimitBytes(n)};a.MakeOnScreenGLSurface=function(n,q,v,E,G,L){if(!this.Pd(n.Nd))return null;q=void 0===G||void 0===L?
this._MakeOnScreenGLSurface(n,q,v,E):this._MakeOnScreenGLSurface(n,q,v,E,G,L);if(!q)return null;q.Nd=n.Nd;return q};a.MakeRenderTarget=function(){var n=arguments[0];if(!this.Pd(n.Nd))return null;if(3===arguments.length){var q=this._MakeRenderTargetWH(n,arguments[1],arguments[2]);if(!q)return null}else if(2===arguments.length){if(q=this._MakeRenderTargetII(n,arguments[1]),!q)return null}else return null;q.Nd=n.Nd;return q};a.MakeWebGLCanvasSurface=function(n,q,v){q=q||null;var E=n,G="undefined"!==
typeof OffscreenCanvas&&E instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&E instanceof HTMLCanvasElement||G||(E=document.getElementById(n),E)))throw"Canvas with id "+n+" was not found";n=this.GetWebGLContext(E,v);if(!n||0>n)throw"failed to create webgl context: err "+n;n=this.MakeWebGLContext(n);q=this.MakeOnScreenGLSurface(n,E.width,E.height,q);return q?q:(q=E.cloneNode(!0),E.parentNode.replaceChild(q,E),q.classList.add("ck-replaced"),a.MakeSWCanvasSurface(q))};a.MakeCanvasSurface=
a.MakeWebGLCanvasSurface;a.Surface.prototype.makeImageFromTexture=function(n,q){a.Pd(this.Nd);n=e(n);if(q=this._makeImageFromTexture(this.Nd,n,q))q.Me=n;return q};a.Surface.prototype.makeImageFromTextureSource=function(n,q,v){q||(q={height:f(n),width:h(n),colorType:a.ColorType.RGBA_8888,alphaType:v?a.AlphaType.Premul:a.AlphaType.Unpremul});q.colorSpace||(q.colorSpace=a.ColorSpace.SRGB);a.Pd(this.Nd);var E=x.he;v=m(E,E.createTexture(),q,v);2===x.version?E.texImage2D(E.TEXTURE_2D,0,E.RGBA,q.width,q.height,
0,E.RGBA,E.UNSIGNED_BYTE,n):E.texImage2D(E.TEXTURE_2D,0,E.RGBA,E.RGBA,E.UNSIGNED_BYTE,n);u(E,q);this._resetContext();return this.makeImageFromTexture(v,q)};a.Surface.prototype.updateTextureFromSource=function(n,q,v){if(n.Me){a.Pd(this.Nd);var E=n.getImageInfo(),G=x.he,L=m(G,ka[n.Me],E,v);2===x.version?G.texImage2D(G.TEXTURE_2D,0,G.RGBA,h(q),f(q),0,G.RGBA,G.UNSIGNED_BYTE,q):G.texImage2D(G.TEXTURE_2D,0,G.RGBA,G.RGBA,G.UNSIGNED_BYTE,q);u(G,E,v);this._resetContext();ka[n.Me]=null;n.Me=e(L);E.colorSpace=
n.getColorSpace();q=this._makeImageFromTexture(this.Nd,n.Me,E);v=n.Md.Ud;G=n.Md.ae;n.Md.Ud=q.Md.Ud;n.Md.ae=q.Md.ae;q.Md.Ud=v;q.Md.ae=G;q.delete();E.colorSpace.delete()}};a.MakeLazyImageFromTextureSource=function(n,q,v){q||(q={height:f(n),width:h(n),colorType:a.ColorType.RGBA_8888,alphaType:v?a.AlphaType.Premul:a.AlphaType.Unpremul});q.colorSpace||(q.colorSpace=a.ColorSpace.SRGB);var E={makeTexture:function(){var G=x,L=G.he,z=m(L,L.createTexture(),q,v);2===G.version?L.texImage2D(L.TEXTURE_2D,0,L.RGBA,
q.width,q.height,0,L.RGBA,L.UNSIGNED_BYTE,n):L.texImage2D(L.TEXTURE_2D,0,L.RGBA,L.RGBA,L.UNSIGNED_BYTE,n);u(L,q,v);return e(z)},freeSrc:function(){}};"VideoFrame"===n.constructor.name&&(E.freeSrc=function(){n.close()});return a.Image._makeFromGenerator(q,E)};a.Pd=function(n){return n?ma(n):!1};a.Te=function(){return x&&x.ff&&!x.ff.isDeleted()?x.ff:null}})})(w);
(function(a){function b(d,c,g,l,t){for(var y=0;y<d.length;y++)c[y*g+(y*t+l+g)%g]=d[y];return c}function e(d){for(var c=d*d,g=Array(c);c--;)g[c]=0===c%(d+1)?1:0;return g}function f(d){return d?d.constructor===Float32Array&&4===d.length:!1}function h(d){return(n(255*d[3])<<24|n(255*d[0])<<16|n(255*d[1])<<8|n(255*d[2])<<0)>>>0}function m(d){if(d&&d._ck)return d;if(d instanceof Float32Array){for(var c=Math.floor(d.length/4),g=new Uint32Array(c),l=0;l<c;l++)g[l]=h(d.slice(4*l,4*(l+1)));return g}if(d instanceof
Uint32Array)return d;if(d instanceof Array&&d[0]instanceof Float32Array)return d.map(h)}function u(d){if(void 0===d)return 1;var c=parseFloat(d);return d&&-1!==d.indexOf("%")?c/100:c}function n(d){return Math.round(Math.max(0,Math.min(d||0,255)))}function q(d,c){c&&c._ck||a._free(d)}function v(d,c,g){if(!d||!d.length)return V;if(d&&d._ck)return d.byteOffset;var l=a[c].BYTES_PER_ELEMENT;g||(g=a._malloc(d.length*l));a[c].set(d,g/l);return g}function E(d){var c={de:V,count:d.length,colorType:a.ColorType.RGBA_F32};
if(d instanceof Float32Array)c.de=v(d,"HEAPF32"),c.count=d.length/4;else if(d instanceof Uint32Array)c.de=v(d,"HEAPU32"),c.colorType=a.ColorType.RGBA_8888;else if(d instanceof Array){if(d&&d.length){for(var g=a._malloc(16*d.length),l=0,t=g/4,y=0;y<d.length;y++)for(var B=0;4>B;B++)a.HEAPF32[t+l]=d[y][B],l++;d=g}else d=V;c.de=d}else throw"Invalid argument to copyFlexibleColorArray, Not a color array "+typeof d;return c}function G(d){if(!d)return V;var c=Ub.toTypedArray();if(d.length){if(6===d.length||
9===d.length)return v(d,"HEAPF32",Ma),6===d.length&&a.HEAPF32.set(yd,6+Ma/4),Ma;if(16===d.length)return c[0]=d[0],c[1]=d[1],c[2]=d[3],c[3]=d[4],c[4]=d[5],c[5]=d[7],c[6]=d[12],c[7]=d[13],c[8]=d[15],Ma;throw"invalid matrix size";}if(void 0===d.m11)throw"invalid matrix argument";c[0]=d.m11;c[1]=d.m21;c[2]=d.m41;c[3]=d.m12;c[4]=d.m22;c[5]=d.m42;c[6]=d.m14;c[7]=d.m24;c[8]=d.m44;return Ma}function L(d){if(!d)return V;var c=Vb.toTypedArray();if(d.length){if(16!==d.length&&6!==d.length&&9!==d.length)throw"invalid matrix size";
if(16===d.length)return v(d,"HEAPF32",ab);c.fill(0);c[0]=d[0];c[1]=d[1];c[3]=d[2];c[4]=d[3];c[5]=d[4];c[7]=d[5];c[10]=1;c[12]=d[6];c[13]=d[7];c[15]=d[8];6===d.length&&(c[12]=0,c[13]=0,c[15]=1);return ab}if(void 0===d.m11)throw"invalid matrix argument";c[0]=d.m11;c[1]=d.m21;c[2]=d.m31;c[3]=d.m41;c[4]=d.m12;c[5]=d.m22;c[6]=d.m32;c[7]=d.m42;c[8]=d.m13;c[9]=d.m23;c[10]=d.m33;c[11]=d.m43;c[12]=d.m14;c[13]=d.m24;c[14]=d.m34;c[15]=d.m44;return ab}function z(d,c){return v(d,"HEAPF32",c||Ua)}function N(d,
c,g,l){var t=Wb.toTypedArray();t[0]=d;t[1]=c;t[2]=g;t[3]=l;return Ua}function U(d){for(var c=new Float32Array(4),g=0;4>g;g++)c[g]=a.HEAPF32[d/4+g];return c}function S(d,c){return v(d,"HEAPF32",c||fa)}function pa(d,c){return v(d,"HEAPF32",c||Xb)}function ua(){for(var d=0,c=0;c<arguments.length-1;c+=2)d+=arguments[c]*arguments[c+1];return d}function gb(d,c,g){for(var l=Array(d.length),t=0;t<g;t++)for(var y=0;y<g;y++){for(var B=0,J=0;J<g;J++)B+=d[g*t+J]*c[g*J+y];l[t*g+y]=B}return l}function hb(d,c){for(var g=
gb(c[0],c[1],d),l=2;l<c.length;)g=gb(g,c[l],d),l++;return g}a.Color=function(d,c,g,l){void 0===l&&(l=1);return a.Color4f(n(d)/255,n(c)/255,n(g)/255,l)};a.ColorAsInt=function(d,c,g,l){void 0===l&&(l=255);return(n(l)<<24|n(d)<<16|n(c)<<8|n(g)<<0&268435455)>>>0};a.Color4f=function(d,c,g,l){void 0===l&&(l=1);return Float32Array.of(d,c,g,l)};Object.defineProperty(a,"TRANSPARENT",{get:function(){return a.Color4f(0,0,0,0)}});Object.defineProperty(a,"BLACK",{get:function(){return a.Color4f(0,0,0,1)}});Object.defineProperty(a,
"WHITE",{get:function(){return a.Color4f(1,1,1,1)}});Object.defineProperty(a,"RED",{get:function(){return a.Color4f(1,0,0,1)}});Object.defineProperty(a,"GREEN",{get:function(){return a.Color4f(0,1,0,1)}});Object.defineProperty(a,"BLUE",{get:function(){return a.Color4f(0,0,1,1)}});Object.defineProperty(a,"YELLOW",{get:function(){return a.Color4f(1,1,0,1)}});Object.defineProperty(a,"CYAN",{get:function(){return a.Color4f(0,1,1,1)}});Object.defineProperty(a,"MAGENTA",{get:function(){return a.Color4f(1,
0,1,1)}});a.getColorComponents=function(d){return[Math.floor(255*d[0]),Math.floor(255*d[1]),Math.floor(255*d[2]),d[3]]};a.parseColorString=function(d,c){d=d.toLowerCase();if(d.startsWith("#")){c=255;switch(d.length){case 9:c=parseInt(d.slice(7,9),16);case 7:var g=parseInt(d.slice(1,3),16);var l=parseInt(d.slice(3,5),16);var t=parseInt(d.slice(5,7),16);break;case 5:c=17*parseInt(d.slice(4,5),16);case 4:g=17*parseInt(d.slice(1,2),16),l=17*parseInt(d.slice(2,3),16),t=17*parseInt(d.slice(3,4),16)}return a.Color(g,
l,t,c/255)}return d.startsWith("rgba")?(d=d.slice(5,-1),d=d.split(","),a.Color(+d[0],+d[1],+d[2],u(d[3]))):d.startsWith("rgb")?(d=d.slice(4,-1),d=d.split(","),a.Color(+d[0],+d[1],+d[2],u(d[3]))):d.startsWith("gray(")||d.startsWith("hsl")||!c||(d=c[d],void 0===d)?a.BLACK:d};a.multiplyByAlpha=function(d,c){d=d.slice();d[3]=Math.max(0,Math.min(d[3]*c,1));return d};a.Malloc=function(d,c){var g=a._malloc(c*d.BYTES_PER_ELEMENT);return{_ck:!0,length:c,byteOffset:g,se:null,subarray:function(l,t){l=this.toTypedArray().subarray(l,
t);l._ck=!0;return l},toTypedArray:function(){if(this.se&&this.se.length)return this.se;this.se=new d(a.HEAPU8.buffer,g,c);this.se._ck=!0;return this.se}}};a.Free=function(d){a._free(d.byteOffset);d.byteOffset=V;d.toTypedArray=null;d.se=null};var Ma=V,Ub,ab=V,Vb,Ua=V,Wb,qa,fa=V,Cc,Pa=V,Dc,Yb=V,Ec,Zb=V,$b,xb=V,Fc,Xb=V,Gc,Hc=V,yd=Float32Array.of(0,0,1),V=0;a.onRuntimeInitialized=function(){function d(c,g,l,t,y,B,J){B||(B=4*t.width,t.colorType===a.ColorType.RGBA_F16?B*=2:t.colorType===a.ColorType.RGBA_F32&&
(B*=4));var P=B*t.height;var O=y?y.byteOffset:a._malloc(P);if(J?!c._readPixels(t,O,B,g,l,J):!c._readPixels(t,O,B,g,l))return y||a._free(O),null;if(y)return y.toTypedArray();switch(t.colorType){case a.ColorType.RGBA_8888:case a.ColorType.RGBA_F16:c=(new Uint8Array(a.HEAPU8.buffer,O,P)).slice();break;case a.ColorType.RGBA_F32:c=(new Float32Array(a.HEAPU8.buffer,O,P)).slice();break;default:return null}a._free(O);return c}Wb=a.Malloc(Float32Array,4);Ua=Wb.byteOffset;Vb=a.Malloc(Float32Array,16);ab=Vb.byteOffset;
Ub=a.Malloc(Float32Array,9);Ma=Ub.byteOffset;Fc=a.Malloc(Float32Array,12);Xb=Fc.byteOffset;Gc=a.Malloc(Float32Array,12);Hc=Gc.byteOffset;qa=a.Malloc(Float32Array,4);fa=qa.byteOffset;Cc=a.Malloc(Float32Array,4);Pa=Cc.byteOffset;Dc=a.Malloc(Float32Array,3);Yb=Dc.byteOffset;Ec=a.Malloc(Float32Array,3);Zb=Ec.byteOffset;$b=a.Malloc(Int32Array,4);xb=$b.byteOffset;a.ColorSpace.SRGB=a.ColorSpace._MakeSRGB();a.ColorSpace.DISPLAY_P3=a.ColorSpace._MakeDisplayP3();a.ColorSpace.ADOBE_RGB=a.ColorSpace._MakeAdobeRGB();
a.GlyphRunFlags={IsWhiteSpace:a._GlyphRunFlags_isWhiteSpace};a.Path.MakeFromCmds=function(c){var g=v(c,"HEAPF32"),l=a.Path._MakeFromCmds(g,c.length);q(g,c);return l};a.Path.MakeFromVerbsPointsWeights=function(c,g,l){var t=v(c,"HEAPU8"),y=v(g,"HEAPF32"),B=v(l,"HEAPF32"),J=a.Path._MakeFromVerbsPointsWeights(t,c.length,y,g.length,B,l&&l.length||0);q(t,c);q(y,g);q(B,l);return J};a.Path.prototype.addArc=function(c,g,l){c=S(c);this._addArc(c,g,l);return this};a.Path.prototype.addCircle=function(c,g,l,t){this._addCircle(c,
g,l,!!t);return this};a.Path.prototype.addOval=function(c,g,l){void 0===l&&(l=1);c=S(c);this._addOval(c,!!g,l);return this};a.Path.prototype.addPath=function(){var c=Array.prototype.slice.call(arguments),g=c[0],l=!1;"boolean"===typeof c[c.length-1]&&(l=c.pop());if(1===c.length)this._addPath(g,1,0,0,0,1,0,0,0,1,l);else if(2===c.length)c=c[1],this._addPath(g,c[0],c[1],c[2],c[3],c[4],c[5],c[6]||0,c[7]||0,c[8]||1,l);else if(7===c.length||10===c.length)this._addPath(g,c[1],c[2],c[3],c[4],c[5],c[6],c[7]||
0,c[8]||0,c[9]||1,l);else return null;return this};a.Path.prototype.addPoly=function(c,g){var l=v(c,"HEAPF32");this._addPoly(l,c.length/2,g);q(l,c);return this};a.Path.prototype.addRect=function(c,g){c=S(c);this._addRect(c,!!g);return this};a.Path.prototype.addRRect=function(c,g){c=pa(c);this._addRRect(c,!!g);return this};a.Path.prototype.addVerbsPointsWeights=function(c,g,l){var t=v(c,"HEAPU8"),y=v(g,"HEAPF32"),B=v(l,"HEAPF32");this._addVerbsPointsWeights(t,c.length,y,g.length,B,l&&l.length||0);
q(t,c);q(y,g);q(B,l)};a.Path.prototype.arc=function(c,g,l,t,y,B){c=a.LTRBRect(c-l,g-l,c+l,g+l);y=(y-t)/Math.PI*180-360*!!B;B=new a.Path;B.addArc(c,t/Math.PI*180,y);this.addPath(B,!0);B.delete();return this};a.Path.prototype.arcToOval=function(c,g,l,t){c=S(c);this._arcToOval(c,g,l,t);return this};a.Path.prototype.arcToRotated=function(c,g,l,t,y,B,J){this._arcToRotated(c,g,l,!!t,!!y,B,J);return this};a.Path.prototype.arcToTangent=function(c,g,l,t,y){this._arcToTangent(c,g,l,t,y);return this};a.Path.prototype.close=
function(){this._close();return this};a.Path.prototype.conicTo=function(c,g,l,t,y){this._conicTo(c,g,l,t,y);return this};a.Path.prototype.computeTightBounds=function(c){this._computeTightBounds(fa);var g=qa.toTypedArray();return c?(c.set(g),c):g.slice()};a.Path.prototype.cubicTo=function(c,g,l,t,y,B){this._cubicTo(c,g,l,t,y,B);return this};a.Path.prototype.dash=function(c,g,l){return this._dash(c,g,l)?this:null};a.Path.prototype.getBounds=function(c){this._getBounds(fa);var g=qa.toTypedArray();return c?
(c.set(g),c):g.slice()};a.Path.prototype.lineTo=function(c,g){this._lineTo(c,g);return this};a.Path.prototype.moveTo=function(c,g){this._moveTo(c,g);return this};a.Path.prototype.offset=function(c,g){this._transform(1,0,c,0,1,g,0,0,1);return this};a.Path.prototype.quadTo=function(c,g,l,t){this._quadTo(c,g,l,t);return this};a.Path.prototype.rArcTo=function(c,g,l,t,y,B,J){this._rArcTo(c,g,l,t,y,B,J);return this};a.Path.prototype.rConicTo=function(c,g,l,t,y){this._rConicTo(c,g,l,t,y);return this};a.Path.prototype.rCubicTo=
function(c,g,l,t,y,B){this._rCubicTo(c,g,l,t,y,B);return this};a.Path.prototype.rLineTo=function(c,g){this._rLineTo(c,g);return this};a.Path.prototype.rMoveTo=function(c,g){this._rMoveTo(c,g);return this};a.Path.prototype.rQuadTo=function(c,g,l,t){this._rQuadTo(c,g,l,t);return this};a.Path.prototype.stroke=function(c){c=c||{};c.width=c.width||1;c.miter_limit=c.miter_limit||4;c.cap=c.cap||a.StrokeCap.Butt;c.join=c.join||a.StrokeJoin.Miter;c.precision=c.precision||1;return this._stroke(c)?this:null};
a.Path.prototype.transform=function(){if(1===arguments.length){var c=arguments[0];this._transform(c[0],c[1],c[2],c[3],c[4],c[5],c[6]||0,c[7]||0,c[8]||1)}else if(6===arguments.length||9===arguments.length)c=arguments,this._transform(c[0],c[1],c[2],c[3],c[4],c[5],c[6]||0,c[7]||0,c[8]||1);else throw"transform expected to take 1 or 9 arguments. Got "+arguments.length;return this};a.Path.prototype.trim=function(c,g,l){return this._trim(c,g,!!l)?this:null};a.Image.prototype.encodeToBytes=function(c,g){var l=
a.Te();c=c||a.ImageFormat.PNG;g=g||100;return l?this._encodeToBytes(c,g,l):this._encodeToBytes(c,g)};a.Image.prototype.makeShaderCubic=function(c,g,l,t,y){y=G(y);return this._makeShaderCubic(c,g,l,t,y)};a.Image.prototype.makeShaderOptions=function(c,g,l,t,y){y=G(y);return this._makeShaderOptions(c,g,l,t,y)};a.Image.prototype.readPixels=function(c,g,l,t,y){var B=a.Te();return d(this,c,g,l,t,y,B)};a.Canvas.prototype.clear=function(c){a.Pd(this.Nd);c=z(c);this._clear(c)};a.Canvas.prototype.clipRRect=
function(c,g,l){a.Pd(this.Nd);c=pa(c);this._clipRRect(c,g,l)};a.Canvas.prototype.clipRect=function(c,g,l){a.Pd(this.Nd);c=S(c);this._clipRect(c,g,l)};a.Canvas.prototype.concat=function(c){a.Pd(this.Nd);c=L(c);this._concat(c)};a.Canvas.prototype.drawArc=function(c,g,l,t,y){a.Pd(this.Nd);c=S(c);this._drawArc(c,g,l,t,y)};a.Canvas.prototype.drawAtlas=function(c,g,l,t,y,B,J){if(c&&t&&g&&l&&g.length===l.length){a.Pd(this.Nd);y||(y=a.BlendMode.SrcOver);var P=v(g,"HEAPF32"),O=v(l,"HEAPF32"),W=l.length/4,
r=v(m(B),"HEAPU32");if(J&&"B"in J&&"C"in J)this._drawAtlasCubic(c,O,P,r,W,y,J.B,J.C,t);else{let D=a.FilterMode.Linear,R=a.MipmapMode.None;J&&(D=J.filter,"mipmap"in J&&(R=J.mipmap));this._drawAtlasOptions(c,O,P,r,W,y,D,R,t)}q(P,g);q(O,l);q(r,B)}};a.Canvas.prototype.drawCircle=function(c,g,l,t){a.Pd(this.Nd);this._drawCircle(c,g,l,t)};a.Canvas.prototype.drawColor=function(c,g){a.Pd(this.Nd);c=z(c);void 0!==g?this._drawColor(c,g):this._drawColor(c)};a.Canvas.prototype.drawColorInt=function(c,g){a.Pd(this.Nd);
this._drawColorInt(c,g||a.BlendMode.SrcOver)};a.Canvas.prototype.drawColorComponents=function(c,g,l,t,y){a.Pd(this.Nd);c=N(c,g,l,t);void 0!==y?this._drawColor(c,y):this._drawColor(c)};a.Canvas.prototype.drawDRRect=function(c,g,l){a.Pd(this.Nd);c=pa(c,Xb);g=pa(g,Hc);this._drawDRRect(c,g,l)};a.Canvas.prototype.drawImage=function(c,g,l,t){a.Pd(this.Nd);this._drawImage(c,g,l,t||null)};a.Canvas.prototype.drawImageCubic=function(c,g,l,t,y,B){a.Pd(this.Nd);this._drawImageCubic(c,g,l,t,y,B||null)};a.Canvas.prototype.drawImageOptions=
function(c,g,l,t,y,B){a.Pd(this.Nd);this._drawImageOptions(c,g,l,t,y,B||null)};a.Canvas.prototype.drawImageNine=function(c,g,l,t,y){a.Pd(this.Nd);g=v(g,"HEAP32",xb);l=S(l);this._drawImageNine(c,g,l,t,y||null)};a.Canvas.prototype.drawImageRect=function(c,g,l,t,y){a.Pd(this.Nd);S(g,fa);S(l,Pa);this._drawImageRect(c,fa,Pa,t,!!y)};a.Canvas.prototype.drawImageRectCubic=function(c,g,l,t,y,B){a.Pd(this.Nd);S(g,fa);S(l,Pa);this._drawImageRectCubic(c,fa,Pa,t,y,B||null)};a.Canvas.prototype.drawImageRectOptions=
function(c,g,l,t,y,B){a.Pd(this.Nd);S(g,fa);S(l,Pa);this._drawImageRectOptions(c,fa,Pa,t,y,B||null)};a.Canvas.prototype.drawLine=function(c,g,l,t,y){a.Pd(this.Nd);this._drawLine(c,g,l,t,y)};a.Canvas.prototype.drawOval=function(c,g){a.Pd(this.Nd);c=S(c);this._drawOval(c,g)};a.Canvas.prototype.drawPaint=function(c){a.Pd(this.Nd);this._drawPaint(c)};a.Canvas.prototype.drawParagraph=function(c,g,l){a.Pd(this.Nd);this._drawParagraph(c,g,l)};a.Canvas.prototype.drawPatch=function(c,g,l,t,y){if(24>c.length)throw"Need 12 cubic points";
if(g&&4>g.length)throw"Need 4 colors";if(l&&8>l.length)throw"Need 4 shader coordinates";a.Pd(this.Nd);const B=v(c,"HEAPF32"),J=g?v(m(g),"HEAPU32"):V,P=l?v(l,"HEAPF32"):V;t||(t=a.BlendMode.Modulate);this._drawPatch(B,J,P,t,y);q(P,l);q(J,g);q(B,c)};a.Canvas.prototype.drawPath=function(c,g){a.Pd(this.Nd);this._drawPath(c,g)};a.Canvas.prototype.drawPicture=function(c){a.Pd(this.Nd);this._drawPicture(c)};a.Canvas.prototype.drawPoints=function(c,g,l){a.Pd(this.Nd);var t=v(g,"HEAPF32");this._drawPoints(c,
t,g.length/2,l);q(t,g)};a.Canvas.prototype.drawRRect=function(c,g){a.Pd(this.Nd);c=pa(c);this._drawRRect(c,g)};a.Canvas.prototype.drawRect=function(c,g){a.Pd(this.Nd);c=S(c);this._drawRect(c,g)};a.Canvas.prototype.drawRect4f=function(c,g,l,t,y){a.Pd(this.Nd);this._drawRect4f(c,g,l,t,y)};a.Canvas.prototype.drawShadow=function(c,g,l,t,y,B,J){a.Pd(this.Nd);var P=v(y,"HEAPF32"),O=v(B,"HEAPF32");g=v(g,"HEAPF32",Yb);l=v(l,"HEAPF32",Zb);this._drawShadow(c,g,l,t,P,O,J);q(P,y);q(O,B)};a.getShadowLocalBounds=
function(c,g,l,t,y,B,J){c=G(c);l=v(l,"HEAPF32",Yb);t=v(t,"HEAPF32",Zb);if(!this._getShadowLocalBounds(c,g,l,t,y,B,fa))return null;g=qa.toTypedArray();return J?(J.set(g),J):g.slice()};a.Canvas.prototype.drawTextBlob=function(c,g,l,t){a.Pd(this.Nd);this._drawTextBlob(c,g,l,t)};a.Canvas.prototype.drawVertices=function(c,g,l){a.Pd(this.Nd);this._drawVertices(c,g,l)};a.Canvas.prototype.getDeviceClipBounds=function(c){this._getDeviceClipBounds(xb);var g=$b.toTypedArray();c?c.set(g):c=g.slice();return c};
a.Canvas.prototype.getLocalToDevice=function(){this._getLocalToDevice(ab);for(var c=ab,g=Array(16),l=0;16>l;l++)g[l]=a.HEAPF32[c/4+l];return g};a.Canvas.prototype.getTotalMatrix=function(){this._getTotalMatrix(Ma);for(var c=Array(9),g=0;9>g;g++)c[g]=a.HEAPF32[Ma/4+g];return c};a.Canvas.prototype.makeSurface=function(c){c=this._makeSurface(c);c.Nd=this.Nd;return c};a.Canvas.prototype.readPixels=function(c,g,l,t,y){a.Pd(this.Nd);return d(this,c,g,l,t,y)};a.Canvas.prototype.saveLayer=function(c,g,l,
t){g=S(g);return this._saveLayer(c||null,g,l||null,t||0)};a.Canvas.prototype.writePixels=function(c,g,l,t,y,B,J,P){if(c.byteLength%(g*l))throw"pixels length must be a multiple of the srcWidth * srcHeight";a.Pd(this.Nd);var O=c.byteLength/(g*l);B=B||a.AlphaType.Unpremul;J=J||a.ColorType.RGBA_8888;P=P||a.ColorSpace.SRGB;var W=O*g;O=v(c,"HEAPU8");g=this._writePixels({width:g,height:l,colorType:J,alphaType:B,colorSpace:P},O,W,t,y);q(O,c);return g};a.ColorFilter.MakeBlend=function(c,g,l){c=z(c);l=l||a.ColorSpace.SRGB;
return a.ColorFilter._MakeBlend(c,g,l)};a.ColorFilter.MakeMatrix=function(c){if(!c||20!==c.length)throw"invalid color matrix";var g=v(c,"HEAPF32"),l=a.ColorFilter._makeMatrix(g);q(g,c);return l};a.ContourMeasure.prototype.getPosTan=function(c,g){this._getPosTan(c,fa);c=qa.toTypedArray();return g?(g.set(c),g):c.slice()};a.ImageFilter.MakeDropShadow=function(c,g,l,t,y,B){y=z(y,Ua);return a.ImageFilter._MakeDropShadow(c,g,l,t,y,B)};a.ImageFilter.MakeDropShadowOnly=function(c,g,l,t,y,B){y=z(y,Ua);return a.ImageFilter._MakeDropShadowOnly(c,
g,l,t,y,B)};a.ImageFilter.MakeImage=function(c,g,l,t){l=S(l,fa);t=S(t,Pa);if("B"in g&&"C"in g)return a.ImageFilter._MakeImageCubic(c,g.B,g.C,l,t);const y=g.filter;let B=a.MipmapMode.None;"mipmap"in g&&(B=g.mipmap);return a.ImageFilter._MakeImageOptions(c,y,B,l,t)};a.ImageFilter.MakeMatrixTransform=function(c,g,l){c=G(c);if("B"in g&&"C"in g)return a.ImageFilter._MakeMatrixTransformCubic(c,g.B,g.C,l);const t=g.filter;let y=a.MipmapMode.None;"mipmap"in g&&(y=g.mipmap);return a.ImageFilter._MakeMatrixTransformOptions(c,
t,y,l)};a.Paint.prototype.getColor=function(){this._getColor(Ua);return U(Ua)};a.Paint.prototype.setColor=function(c,g){g=g||null;c=z(c);this._setColor(c,g)};a.Paint.prototype.setColorComponents=function(c,g,l,t,y){y=y||null;c=N(c,g,l,t);this._setColor(c,y)};a.Path.prototype.getPoint=function(c,g){this._getPoint(c,fa);c=qa.toTypedArray();return g?(g[0]=c[0],g[1]=c[1],g):c.slice(0,2)};a.Picture.prototype.makeShader=function(c,g,l,t,y){t=G(t);y=S(y);return this._makeShader(c,g,l,t,y)};a.PictureRecorder.prototype.beginRecording=
function(c){c=S(c);return this._beginRecording(c)};a.Surface.prototype.getCanvas=function(){var c=this._getCanvas();c.Nd=this.Nd;return c};a.Surface.prototype.makeImageSnapshot=function(c){a.Pd(this.Nd);c=v(c,"HEAP32",xb);return this._makeImageSnapshot(c)};a.Surface.prototype.makeSurface=function(c){a.Pd(this.Nd);c=this._makeSurface(c);c.Nd=this.Nd;return c};a.Surface.prototype.Ef=function(c,g){this.Ie||(this.Ie=this.getCanvas());return requestAnimationFrame(function(){a.Pd(this.Nd);c(this.Ie);this.flush(g)}.bind(this))};
a.Surface.prototype.requestAnimationFrame||(a.Surface.prototype.requestAnimationFrame=a.Surface.prototype.Ef);a.Surface.prototype.Af=function(c,g){this.Ie||(this.Ie=this.getCanvas());requestAnimationFrame(function(){a.Pd(this.Nd);c(this.Ie);this.flush(g);this.dispose()}.bind(this))};a.Surface.prototype.drawOnce||(a.Surface.prototype.drawOnce=a.Surface.prototype.Af);a.PathEffect.MakeDash=function(c,g){g||(g=0);if(!c.length||1===c.length%2)throw"Intervals array must have even length";var l=v(c,"HEAPF32");
g=a.PathEffect._MakeDash(l,c.length,g);q(l,c);return g};a.PathEffect.MakeLine2D=function(c,g){g=G(g);return a.PathEffect._MakeLine2D(c,g)};a.PathEffect.MakePath2D=function(c,g){c=G(c);return a.PathEffect._MakePath2D(c,g)};a.Shader.MakeColor=function(c,g){g=g||null;c=z(c);return a.Shader._MakeColor(c,g)};a.Shader.Blend=a.Shader.MakeBlend;a.Shader.Color=a.Shader.MakeColor;a.Shader.MakeLinearGradient=function(c,g,l,t,y,B,J,P){P=P||null;var O=E(l),W=v(t,"HEAPF32");J=J||0;B=G(B);var r=qa.toTypedArray();
r.set(c);r.set(g,2);c=a.Shader._MakeLinearGradient(fa,O.de,O.colorType,W,O.count,y,J,B,P);q(O.de,l);t&&q(W,t);return c};a.Shader.MakeRadialGradient=function(c,g,l,t,y,B,J,P){P=P||null;var O=E(l),W=v(t,"HEAPF32");J=J||0;B=G(B);c=a.Shader._MakeRadialGradient(c[0],c[1],g,O.de,O.colorType,W,O.count,y,J,B,P);q(O.de,l);t&&q(W,t);return c};a.Shader.MakeSweepGradient=function(c,g,l,t,y,B,J,P,O,W){W=W||null;var r=E(l),D=v(t,"HEAPF32");J=J||0;P=P||0;O=O||360;B=G(B);c=a.Shader._MakeSweepGradient(c,g,r.de,r.colorType,
D,r.count,y,P,O,J,B,W);q(r.de,l);t&&q(D,t);return c};a.Shader.MakeTwoPointConicalGradient=function(c,g,l,t,y,B,J,P,O,W){W=W||null;var r=E(y),D=v(B,"HEAPF32");O=O||0;P=G(P);var R=qa.toTypedArray();R.set(c);R.set(l,2);c=a.Shader._MakeTwoPointConicalGradient(fa,g,t,r.de,r.colorType,D,r.count,J,O,P,W);q(r.de,y);B&&q(D,B);return c};a.Vertices.prototype.bounds=function(c){this._bounds(fa);var g=qa.toTypedArray();return c?(c.set(g),c):g.slice()};a.Vd&&a.Vd.forEach(function(c){c()})};a.computeTonalColors=
function(d){var c=v(d.ambient,"HEAPF32"),g=v(d.spot,"HEAPF32");this._computeTonalColors(c,g);var l={ambient:U(c),spot:U(g)};q(c,d.ambient);q(g,d.spot);return l};a.LTRBRect=function(d,c,g,l){return Float32Array.of(d,c,g,l)};a.XYWHRect=function(d,c,g,l){return Float32Array.of(d,c,d+g,c+l)};a.LTRBiRect=function(d,c,g,l){return Int32Array.of(d,c,g,l)};a.XYWHiRect=function(d,c,g,l){return Int32Array.of(d,c,d+g,c+l)};a.RRectXY=function(d,c,g){return Float32Array.of(d[0],d[1],d[2],d[3],c,g,c,g,c,g,c,g)};
a.MakeAnimatedImageFromEncoded=function(d){d=new Uint8Array(d);var c=a._malloc(d.byteLength);a.HEAPU8.set(d,c);return(d=a._decodeAnimatedImage(c,d.byteLength))?d:null};a.MakeImageFromEncoded=function(d){d=new Uint8Array(d);var c=a._malloc(d.byteLength);a.HEAPU8.set(d,c);return(d=a._decodeImage(c,d.byteLength))?d:null};var ib=null;a.MakeImageFromCanvasImageSource=function(d){var c=d.width,g=d.height;ib||(ib=document.createElement("canvas"));ib.width=c;ib.height=g;var l=ib.getContext("2d",{xg:!0});
l.drawImage(d,0,0);d=l.getImageData(0,0,c,g);return a.MakeImage({width:c,height:g,alphaType:a.AlphaType.Unpremul,colorType:a.ColorType.RGBA_8888,colorSpace:a.ColorSpace.SRGB},d.data,4*c)};a.MakeImage=function(d,c,g){var l=a._malloc(c.length);a.HEAPU8.set(c,l);return a._MakeImage(d,l,c.length,g)};a.MakeVertices=function(d,c,g,l,t,y){var B=t&&t.length||0,J=0;g&&g.length&&(J|=1);l&&l.length&&(J|=2);void 0===y||y||(J|=4);d=new a._VerticesBuilder(d,c.length/2,B,J);v(c,"HEAPF32",d.positions());d.texCoords()&&
v(g,"HEAPF32",d.texCoords());d.colors()&&v(m(l),"HEAPU32",d.colors());d.indices()&&v(t,"HEAPU16",d.indices());return d.detach()};a.Matrix={};a.Matrix.identity=function(){return e(3)};a.Matrix.invert=function(d){var c=d[0]*d[4]*d[8]+d[1]*d[5]*d[6]+d[2]*d[3]*d[7]-d[2]*d[4]*d[6]-d[1]*d[3]*d[8]-d[0]*d[5]*d[7];return c?[(d[4]*d[8]-d[5]*d[7])/c,(d[2]*d[7]-d[1]*d[8])/c,(d[1]*d[5]-d[2]*d[4])/c,(d[5]*d[6]-d[3]*d[8])/c,(d[0]*d[8]-d[2]*d[6])/c,(d[2]*d[3]-d[0]*d[5])/c,(d[3]*d[7]-d[4]*d[6])/c,(d[1]*d[6]-d[0]*
d[7])/c,(d[0]*d[4]-d[1]*d[3])/c]:null};a.Matrix.mapPoints=function(d,c){for(var g=0;g<c.length;g+=2){var l=c[g],t=c[g+1],y=d[6]*l+d[7]*t+d[8],B=d[3]*l+d[4]*t+d[5];c[g]=(d[0]*l+d[1]*t+d[2])/y;c[g+1]=B/y}return c};a.Matrix.multiply=function(){return hb(3,arguments)};a.Matrix.rotated=function(d,c,g){c=c||0;g=g||0;var l=Math.sin(d);d=Math.cos(d);return[d,-l,ua(l,g,1-d,c),l,d,ua(-l,c,1-d,g),0,0,1]};a.Matrix.scaled=function(d,c,g,l){g=g||0;l=l||0;var t=b([d,c],e(3),3,0,1);return b([g-d*g,l-c*l],t,3,2,0)};
a.Matrix.skewed=function(d,c,g,l){g=g||0;l=l||0;var t=b([d,c],e(3),3,1,-1);return b([-d*g,-c*l],t,3,2,0)};a.Matrix.translated=function(d,c){return b(arguments,e(3),3,2,0)};a.Vector={};a.Vector.dot=function(d,c){return d.map(function(g,l){return g*c[l]}).reduce(function(g,l){return g+l})};a.Vector.lengthSquared=function(d){return a.Vector.dot(d,d)};a.Vector.length=function(d){return Math.sqrt(a.Vector.lengthSquared(d))};a.Vector.mulScalar=function(d,c){return d.map(function(g){return g*c})};a.Vector.add=
function(d,c){return d.map(function(g,l){return g+c[l]})};a.Vector.sub=function(d,c){return d.map(function(g,l){return g-c[l]})};a.Vector.dist=function(d,c){return a.Vector.length(a.Vector.sub(d,c))};a.Vector.normalize=function(d){return a.Vector.mulScalar(d,1/a.Vector.length(d))};a.Vector.cross=function(d,c){return[d[1]*c[2]-d[2]*c[1],d[2]*c[0]-d[0]*c[2],d[0]*c[1]-d[1]*c[0]]};a.M44={};a.M44.identity=function(){return e(4)};a.M44.translated=function(d){return b(d,e(4),4,3,0)};a.M44.scaled=function(d){return b(d,
e(4),4,0,1)};a.M44.rotated=function(d,c){return a.M44.rotatedUnitSinCos(a.Vector.normalize(d),Math.sin(c),Math.cos(c))};a.M44.rotatedUnitSinCos=function(d,c,g){var l=d[0],t=d[1];d=d[2];var y=1-g;return[y*l*l+g,y*l*t-c*d,y*l*d+c*t,0,y*l*t+c*d,y*t*t+g,y*t*d-c*l,0,y*l*d-c*t,y*t*d+c*l,y*d*d+g,0,0,0,0,1]};a.M44.lookat=function(d,c,g){c=a.Vector.normalize(a.Vector.sub(c,d));g=a.Vector.normalize(g);g=a.Vector.normalize(a.Vector.cross(c,g));var l=a.M44.identity();b(g,l,4,0,0);b(a.Vector.cross(g,c),l,4,1,
0);b(a.Vector.mulScalar(c,-1),l,4,2,0);b(d,l,4,3,0);d=a.M44.invert(l);return null===d?a.M44.identity():d};a.M44.perspective=function(d,c,g){var l=1/(c-d);g/=2;g=Math.cos(g)/Math.sin(g);return[g,0,0,0,0,g,0,0,0,0,(c+d)*l,2*c*d*l,0,0,-1,1]};a.M44.rc=function(d,c,g){return d[4*c+g]};a.M44.multiply=function(){return hb(4,arguments)};a.M44.invert=function(d){var c=d[0],g=d[4],l=d[8],t=d[12],y=d[1],B=d[5],J=d[9],P=d[13],O=d[2],W=d[6],r=d[10],D=d[14],R=d[3],aa=d[7],ja=d[11];d=d[15];var ra=c*B-g*y,va=c*J-
l*y,Da=c*P-t*y,ha=g*J-l*B,I=g*P-t*B,k=l*P-t*J,p=O*aa-W*R,A=O*ja-r*R,C=O*d-D*R,F=W*ja-r*aa,H=W*d-D*aa,M=r*d-D*ja,ba=ra*M-va*H+Da*F+ha*C-I*A+k*p,ca=1/ba;if(0===ba||Infinity===ca)return null;ra*=ca;va*=ca;Da*=ca;ha*=ca;I*=ca;k*=ca;p*=ca;A*=ca;C*=ca;F*=ca;H*=ca;M*=ca;c=[B*M-J*H+P*F,J*C-y*M-P*A,y*H-B*C+P*p,B*A-y*F-J*p,l*H-g*M-t*F,c*M-l*C+t*A,g*C-c*H-t*p,c*F-g*A+l*p,aa*k-ja*I+d*ha,ja*Da-R*k-d*va,R*I-aa*Da+d*ra,aa*va-R*ha-ja*ra,r*I-W*k-D*ha,O*k-r*Da+D*va,W*Da-O*I-D*ra,O*ha-W*va+r*ra];return c.every(function(Ia){return!isNaN(Ia)&&
Infinity!==Ia&&-Infinity!==Ia})?c:null};a.M44.transpose=function(d){return[d[0],d[4],d[8],d[12],d[1],d[5],d[9],d[13],d[2],d[6],d[10],d[14],d[3],d[7],d[11],d[15]]};a.M44.mustInvert=function(d){d=a.M44.invert(d);if(null===d)throw"Matrix not invertible";return d};a.M44.setupCamera=function(d,c,g){var l=a.M44.lookat(g.eye,g.coa,g.up);g=a.M44.perspective(g.near,g.far,g.angle);c=[(d[2]-d[0])/2,(d[3]-d[1])/2,c];d=a.M44.multiply(a.M44.translated([(d[0]+d[2])/2,(d[1]+d[3])/2,0]),a.M44.scaled(c));return a.M44.multiply(d,
g,l,a.M44.mustInvert(d))};a.ColorMatrix={};a.ColorMatrix.identity=function(){var d=new Float32Array(20);d[0]=1;d[6]=1;d[12]=1;d[18]=1;return d};a.ColorMatrix.scaled=function(d,c,g,l){var t=new Float32Array(20);t[0]=d;t[6]=c;t[12]=g;t[18]=l;return t};var zd=[[6,7,11,12],[0,10,2,12],[0,1,5,6]];a.ColorMatrix.rotated=function(d,c,g){var l=a.ColorMatrix.identity();d=zd[d];l[d[0]]=g;l[d[1]]=c;l[d[2]]=-c;l[d[3]]=g;return l};a.ColorMatrix.postTranslate=function(d,c,g,l,t){d[4]+=c;d[9]+=g;d[14]+=l;d[19]+=
t;return d};a.ColorMatrix.concat=function(d,c){for(var g=new Float32Array(20),l=0,t=0;20>t;t+=5){for(var y=0;4>y;y++)g[l++]=d[t]*c[y]+d[t+1]*c[y+5]+d[t+2]*c[y+10]+d[t+3]*c[y+15];g[l++]=d[t]*c[4]+d[t+1]*c[9]+d[t+2]*c[14]+d[t+3]*c[19]+d[t+4]}return g};(function(d){d.Vd=d.Vd||[];d.Vd.push(function(){function c(r){if(!r||!r.length)return[];for(var D=[],R=0;R<r.length;R+=5){var aa=d.LTRBRect(r[R],r[R+1],r[R+2],r[R+3]),ja=d.TextDirection.LTR;0===r[R+4]&&(ja=d.TextDirection.RTL);D.push({rect:aa,dir:ja})}d._free(r.byteOffset);
return D}function g(r){r=r||{};void 0===r.weight&&(r.weight=d.FontWeight.Normal);r.width=r.width||d.FontWidth.Normal;r.slant=r.slant||d.FontSlant.Upright;return r}function l(r){if(!r||!r.length)return V;for(var D=[],R=0;R<r.length;R++){var aa=t(r[R]);D.push(aa)}return v(D,"HEAPU32")}function t(r){if(J[r])return J[r];var D=oa(r)+1,R=d._malloc(D);sa(r,K,R,D);return J[r]=R}function y(r){r._colorPtr=z(r.color);r._foregroundColorPtr=V;r._backgroundColorPtr=V;r._decorationColorPtr=V;r.foregroundColor&&
(r._foregroundColorPtr=z(r.foregroundColor,P));r.backgroundColor&&(r._backgroundColorPtr=z(r.backgroundColor,O));r.decorationColor&&(r._decorationColorPtr=z(r.decorationColor,W));Array.isArray(r.fontFamilies)&&r.fontFamilies.length?(r._fontFamiliesPtr=l(r.fontFamilies),r._fontFamiliesLen=r.fontFamilies.length):(r._fontFamiliesPtr=V,r._fontFamiliesLen=0);if(r.locale){var D=r.locale;r._localePtr=t(D);r._localeLen=oa(D)+1}else r._localePtr=V,r._localeLen=0;if(Array.isArray(r.shadows)&&r.shadows.length){D=
r.shadows;var R=D.map(function(ha){return ha.color||d.BLACK}),aa=D.map(function(ha){return ha.blurRadius||0});r._shadowLen=D.length;for(var ja=d._malloc(8*D.length),ra=ja/4,va=0;va<D.length;va++){var Da=D[va].offset||[0,0];d.HEAPF32[ra]=Da[0];d.HEAPF32[ra+1]=Da[1];ra+=2}r._shadowColorsPtr=E(R).de;r._shadowOffsetsPtr=ja;r._shadowBlurRadiiPtr=v(aa,"HEAPF32")}else r._shadowLen=0,r._shadowColorsPtr=V,r._shadowOffsetsPtr=V,r._shadowBlurRadiiPtr=V;Array.isArray(r.fontFeatures)&&r.fontFeatures.length?(D=
r.fontFeatures,R=D.map(function(ha){return ha.name}),aa=D.map(function(ha){return ha.value}),r._fontFeatureLen=D.length,r._fontFeatureNamesPtr=l(R),r._fontFeatureValuesPtr=v(aa,"HEAPU32")):(r._fontFeatureLen=0,r._fontFeatureNamesPtr=V,r._fontFeatureValuesPtr=V);Array.isArray(r.fontVariations)&&r.fontVariations.length?(D=r.fontVariations,R=D.map(function(ha){return ha.axis}),aa=D.map(function(ha){return ha.value}),r._fontVariationLen=D.length,r._fontVariationAxesPtr=l(R),r._fontVariationValuesPtr=
v(aa,"HEAPF32")):(r._fontVariationLen=0,r._fontVariationAxesPtr=V,r._fontVariationValuesPtr=V)}function B(r){d._free(r._fontFamiliesPtr);d._free(r._shadowColorsPtr);d._free(r._shadowOffsetsPtr);d._free(r._shadowBlurRadiiPtr);d._free(r._fontFeatureNamesPtr);d._free(r._fontFeatureValuesPtr);d._free(r._fontVariationAxesPtr);d._free(r._fontVariationValuesPtr)}d.Paragraph.prototype.getRectsForRange=function(r,D,R,aa){r=this._getRectsForRange(r,D,R,aa);return c(r)};d.Paragraph.prototype.getRectsForPlaceholders=
function(){var r=this._getRectsForPlaceholders();return c(r)};d.TypefaceFontProvider.prototype.registerFont=function(r,D){r=d.Typeface.MakeFreeTypeFaceFromData(r);if(!r)return null;D=t(D);this._registerFont(r,D)};d.ParagraphStyle=function(r){r.disableHinting=r.disableHinting||!1;if(r.ellipsis){var D=r.ellipsis;r._ellipsisPtr=t(D);r._ellipsisLen=oa(D)+1}else r._ellipsisPtr=V,r._ellipsisLen=0;null==r.heightMultiplier&&(r.heightMultiplier=-1);r.maxLines=r.maxLines||0;r.replaceTabCharacters=r.replaceTabCharacters||
!1;D=(D=r.strutStyle)||{};D.strutEnabled=D.strutEnabled||!1;D.strutEnabled&&Array.isArray(D.fontFamilies)&&D.fontFamilies.length?(D._fontFamiliesPtr=l(D.fontFamilies),D._fontFamiliesLen=D.fontFamilies.length):(D._fontFamiliesPtr=V,D._fontFamiliesLen=0);D.fontStyle=g(D.fontStyle);null==D.fontSize&&(D.fontSize=-1);null==D.heightMultiplier&&(D.heightMultiplier=-1);D.halfLeading=D.halfLeading||!1;D.leading=D.leading||0;D.forceStrutHeight=D.forceStrutHeight||!1;r.strutStyle=D;r.textAlign=r.textAlign||
d.TextAlign.Start;r.textDirection=r.textDirection||d.TextDirection.LTR;r.textHeightBehavior=r.textHeightBehavior||d.TextHeightBehavior.All;r.textStyle=d.TextStyle(r.textStyle);return r};d.TextStyle=function(r){r.color||(r.color=d.BLACK);r.decoration=r.decoration||0;r.decorationThickness=r.decorationThickness||0;r.decorationStyle=r.decorationStyle||d.DecorationStyle.Solid;r.textBaseline=r.textBaseline||d.TextBaseline.Alphabetic;null==r.fontSize&&(r.fontSize=-1);r.letterSpacing=r.letterSpacing||0;r.wordSpacing=
r.wordSpacing||0;null==r.heightMultiplier&&(r.heightMultiplier=-1);r.halfLeading=r.halfLeading||!1;r.fontStyle=g(r.fontStyle);return r};var J={},P=d._malloc(16),O=d._malloc(16),W=d._malloc(16);d.ParagraphBuilder.Make=function(r,D){y(r.textStyle);D=d.ParagraphBuilder._Make(r,D);B(r.textStyle);return D};d.ParagraphBuilder.MakeFromFontProvider=function(r,D){y(r.textStyle);D=d.ParagraphBuilder._MakeFromFontProvider(r,D);B(r.textStyle);return D};d.ParagraphBuilder.MakeFromFontCollection=function(r,D){y(r.textStyle);
D=d.ParagraphBuilder._MakeFromFontCollection(r,D);B(r.textStyle);return D};d.ParagraphBuilder.ShapeText=function(r,D,R){let aa=0;for(const ja of D)aa+=ja.length;if(aa!==r.length)throw"Accumulated block lengths must equal text.length";return d.ParagraphBuilder._ShapeText(r,D,R)};d.ParagraphBuilder.prototype.pushStyle=function(r){y(r);this._pushStyle(r);B(r)};d.ParagraphBuilder.prototype.pushPaintStyle=function(r,D,R){y(r);this._pushPaintStyle(r,D,R);B(r)};d.ParagraphBuilder.prototype.addPlaceholder=
function(r,D,R,aa,ja){R=R||d.PlaceholderAlignment.Baseline;aa=aa||d.TextBaseline.Alphabetic;this._addPlaceholder(r||0,D||0,R,aa,ja||0)};d.ParagraphBuilder.prototype.setWordsUtf8=function(r){var D=v(r,"HEAPU32");this._setWordsUtf8(D,r&&r.length||0);q(D,r)};d.ParagraphBuilder.prototype.setWordsUtf16=function(r){var D=v(r,"HEAPU32");this._setWordsUtf16(D,r&&r.length||0);q(D,r)};d.ParagraphBuilder.prototype.setGraphemeBreaksUtf8=function(r){var D=v(r,"HEAPU32");this._setGraphemeBreaksUtf8(D,r&&r.length||
0);q(D,r)};d.ParagraphBuilder.prototype.setGraphemeBreaksUtf16=function(r){var D=v(r,"HEAPU32");this._setGraphemeBreaksUtf16(D,r&&r.length||0);q(D,r)};d.ParagraphBuilder.prototype.setLineBreaksUtf8=function(r){var D=v(r,"HEAPU32");this._setLineBreaksUtf8(D,r&&r.length||0);q(D,r)};d.ParagraphBuilder.prototype.setLineBreaksUtf16=function(r){var D=v(r,"HEAPU32");this._setLineBreaksUtf16(D,r&&r.length||0);q(D,r)}})})(w);a.MakeManagedAnimation=function(d,c,g,l,t){if(!a._MakeManagedAnimation)throw"Not compiled with MakeManagedAnimation";
g||(g="");if(!c)return a._MakeManagedAnimation(d,0,V,V,V,g,l,t);for(var y=[],B=[],J=[],P=Object.keys(c||{}),O=0;O<P.length;O++){var W=P[O],r=new Uint8Array(c[W]),D=a._malloc(r.byteLength);a.HEAPU8.set(r,D);B.push(D);J.push(r.byteLength);r=oa(W)+1;D=a._malloc(r);sa(W,K,D,r);y.push(D)}c=v(y,"HEAPU32");B=v(B,"HEAPU32");J=v(J,"HEAPU32");d=a._MakeManagedAnimation(d,P.length,c,B,J,g,l,t);a._free(c);a._free(B);a._free(J);return d};(function(d){d.Vd=d.Vd||[];d.Vd.push(function(){d.Animation.prototype.render=
function(c,g){S(g,fa);this._render(c,fa)};d.Animation.prototype.size=function(c){this._size(fa);var g=qa.toTypedArray();return c?(c[0]=g[0],c[1]=g[1],c):g.slice(0,2)};d.ManagedAnimation&&(d.ManagedAnimation.prototype.render=function(c,g){S(g,fa);this._render(c,fa)},d.ManagedAnimation.prototype.seek=function(c,g){this._seek(c,fa);c=qa.toTypedArray();return g?(g.set(c),g):c.slice()},d.ManagedAnimation.prototype.seekFrame=function(c,g){this._seekFrame(c,fa);c=qa.toTypedArray();return g?(g.set(c),g):
c.slice()},d.ManagedAnimation.prototype.setColor=function(c,g){g=z(g);return this._setColor(c,g)},d.ManagedAnimation.prototype.setTransform=function(c,g,l,t,y,B,J){g=v([g[0],g[1],l[0],l[1],t[0],t[1],y,B,J],"HEAPF32",Ma);return this._setTransform(c,g)},d.ManagedAnimation.prototype.size=function(c){this._size(fa);var g=qa.toTypedArray();return c?(c[0]=g[0],c[1]=g[1],c):g.slice(0,2)})})})(w);a.Vd=a.Vd||[];a.Vd.push(function(){a.Path.prototype.op=function(d,c){return this._op(d,c)?this:null};a.Path.prototype.simplify=
function(){return this._simplify()?this:null}});a.Vd=a.Vd||[];a.Vd.push(function(){a.Canvas.prototype.drawText=function(d,c,g,l,t){var y=oa(d),B=a._malloc(y+1);sa(d,K,B,y+1);this._drawSimpleText(B,y,c,g,t,l);a._free(B)};a.Canvas.prototype.drawGlyphs=function(d,c,g,l,t,y){if(!(2*d.length<=c.length))throw"Not enough positions for the array of gyphs";a.Pd(this.Nd);const B=v(d,"HEAPU16"),J=v(c,"HEAPF32");this._drawGlyphs(d.length,B,J,g,l,t,y);q(J,c);q(B,d)};a.Font.prototype.getGlyphBounds=function(d,
c,g){var l=v(d,"HEAPU16"),t=a._malloc(16*d.length);this._getGlyphWidthBounds(l,d.length,V,t,c||null);c=new Float32Array(a.HEAPU8.buffer,t,4*d.length);q(l,d);if(g)return g.set(c),a._free(t),g;d=Float32Array.from(c);a._free(t);return d};a.Font.prototype.getGlyphIDs=function(d,c,g){c||(c=d.length);var l=oa(d)+1,t=a._malloc(l);sa(d,K,t,l);d=a._malloc(2*c);c=this._getGlyphIDs(t,l-1,c,d);a._free(t);if(0>c)return a._free(d),null;t=new Uint16Array(a.HEAPU8.buffer,d,c);if(g)return g.set(t),a._free(d),g;g=
Uint16Array.from(t);a._free(d);return g};a.Font.prototype.getGlyphIntercepts=function(d,c,g,l){var t=v(d,"HEAPU16"),y=v(c,"HEAPF32");return this._getGlyphIntercepts(t,d.length,!(d&&d._ck),y,c.length,!(c&&c._ck),g,l)};a.Font.prototype.getGlyphWidths=function(d,c,g){var l=v(d,"HEAPU16"),t=a._malloc(4*d.length);this._getGlyphWidthBounds(l,d.length,t,V,c||null);c=new Float32Array(a.HEAPU8.buffer,t,d.length);q(l,d);if(g)return g.set(c),a._free(t),g;d=Float32Array.from(c);a._free(t);return d};a.FontMgr.FromData=
function(){if(!arguments.length)return null;var d=arguments;1===d.length&&Array.isArray(d[0])&&(d=arguments[0]);if(!d.length)return null;for(var c=[],g=[],l=0;l<d.length;l++){var t=new Uint8Array(d[l]),y=v(t,"HEAPU8");c.push(y);g.push(t.byteLength)}c=v(c,"HEAPU32");g=v(g,"HEAPU32");d=a.FontMgr._fromData(c,g,d.length);a._free(c);a._free(g);return d};a.Typeface.MakeFreeTypeFaceFromData=function(d){d=new Uint8Array(d);var c=v(d,"HEAPU8");return(d=a.Typeface._MakeFreeTypeFaceFromData(c,d.byteLength))?
d:null};a.Typeface.prototype.getGlyphIDs=function(d,c,g){c||(c=d.length);var l=oa(d)+1,t=a._malloc(l);sa(d,K,t,l);d=a._malloc(2*c);c=this._getGlyphIDs(t,l-1,c,d);a._free(t);if(0>c)return a._free(d),null;t=new Uint16Array(a.HEAPU8.buffer,d,c);if(g)return g.set(t),a._free(d),g;g=Uint16Array.from(t);a._free(d);return g};a.TextBlob.MakeOnPath=function(d,c,g,l){if(d&&d.length&&c&&c.countPoints()){if(1===c.countPoints())return this.MakeFromText(d,g);l||(l=0);var t=g.getGlyphIDs(d);t=g.getGlyphWidths(t);
var y=[];c=new a.ContourMeasureIter(c,!1,1);for(var B=c.next(),J=new Float32Array(4),P=0;P<d.length&&B;P++){var O=t[P];l+=O/2;if(l>B.length()){B.delete();B=c.next();if(!B){d=d.substring(0,P);break}l=O/2}B.getPosTan(l,J);var W=J[2],r=J[3];y.push(W,r,J[0]-O/2*W,J[1]-O/2*r);l+=O/2}d=this.MakeFromRSXform(d,y,g);B&&B.delete();c.delete();return d}};a.TextBlob.MakeFromRSXform=function(d,c,g){var l=oa(d)+1,t=a._malloc(l);sa(d,K,t,l);d=v(c,"HEAPF32");g=a.TextBlob._MakeFromRSXform(t,l-1,d,g);a._free(t);return g?
g:null};a.TextBlob.MakeFromRSXformGlyphs=function(d,c,g){var l=v(d,"HEAPU16");c=v(c,"HEAPF32");g=a.TextBlob._MakeFromRSXformGlyphs(l,2*d.length,c,g);q(l,d);return g?g:null};a.TextBlob.MakeFromGlyphs=function(d,c){var g=v(d,"HEAPU16");c=a.TextBlob._MakeFromGlyphs(g,2*d.length,c);q(g,d);return c?c:null};a.TextBlob.MakeFromText=function(d,c){var g=oa(d)+1,l=a._malloc(g);sa(d,K,l,g);d=a.TextBlob._MakeFromText(l,g-1,c);a._free(l);return d?d:null};a.MallocGlyphIDs=function(d){return a.Malloc(Uint16Array,
d)}});a.Vd=a.Vd||[];a.Vd.push(function(){a.MakePicture=function(d){d=new Uint8Array(d);var c=a._malloc(d.byteLength);a.HEAPU8.set(d,c);return(d=a._MakePicture(c,d.byteLength))?d:null}});a.Vd=a.Vd||[];a.Vd.push(function(){a.RuntimeEffect.Make=function(d,c){return a.RuntimeEffect._Make(d,{onError:c||function(g){console.log("RuntimeEffect error",g)}})};a.RuntimeEffect.prototype.makeShader=function(d,c){var g=!d._ck,l=v(d,"HEAPF32");c=G(c);return this._makeShader(l,4*d.length,g,c)};a.RuntimeEffect.prototype.makeShaderWithChildren=
function(d,c,g){var l=!d._ck,t=v(d,"HEAPF32");g=G(g);for(var y=[],B=0;B<c.length;B++)y.push(c[B].Md.Ud);c=v(y,"HEAPU32");return this._makeShaderWithChildren(t,4*d.length,l,c,y.length,g)}});(function(){function d(I){for(var k=0;k<I.length;k++)if(void 0!==I[k]&&!Number.isFinite(I[k]))return!1;return!0}function c(I){var k=a.getColorComponents(I);I=k[0];var p=k[1],A=k[2];k=k[3];if(1===k)return I=I.toString(16).toLowerCase(),p=p.toString(16).toLowerCase(),A=A.toString(16).toLowerCase(),I=1===I.length?
"0"+I:I,p=1===p.length?"0"+p:p,A=1===A.length?"0"+A:A,"#"+I+p+A;k=0===k||1===k?k:k.toFixed(8);return"rgba("+I+", "+p+", "+A+", "+k+")"}function g(I){return a.parseColorString(I,va)}function l(I){I=Da.exec(I);if(!I)return null;var k=parseFloat(I[4]),p=16;switch(I[5]){case "em":case "rem":p=16*k;break;case "pt":p=4*k/3;break;case "px":p=k;break;case "pc":p=16*k;break;case "in":p=96*k;break;case "cm":p=96*k/2.54;break;case "mm":p=96/25.4*k;break;case "q":p=96/25.4/4*k;break;case "%":p=16/75*k}return{style:I[1],
variant:I[2],weight:I[3],sizePx:p,family:I[6].trim()}}function t(I){this.Od=I;this.Rd=new a.Paint;this.Rd.setAntiAlias(!0);this.Rd.setStrokeMiter(10);this.Rd.setStrokeCap(a.StrokeCap.Butt);this.Rd.setStrokeJoin(a.StrokeJoin.Miter);this.Re="10px monospace";this.oe=new a.Font(null,10);this.oe.setSubpixel(!0);this.ce=this.ie=a.BLACK;this.xe=0;this.Ke=a.TRANSPARENT;this.ze=this.ye=0;this.Le=this.le=1;this.Je=0;this.we=[];this.Qd=a.BlendMode.SrcOver;this.Rd.setStrokeWidth(this.Le);this.Rd.setBlendMode(this.Qd);
this.Td=new a.Path;this.Wd=a.Matrix.identity();this.nf=[];this.De=[];this.ne=function(){this.Td.delete();this.Rd.delete();this.oe.delete();this.De.forEach(function(k){k.ne()})};Object.defineProperty(this,"currentTransform",{enumerable:!0,get:function(){return{a:this.Wd[0],c:this.Wd[1],e:this.Wd[2],b:this.Wd[3],d:this.Wd[4],f:this.Wd[5]}},set:function(k){k.a&&this.setTransform(k.a,k.b,k.c,k.d,k.e,k.f)}});Object.defineProperty(this,"fillStyle",{enumerable:!0,get:function(){return f(this.ce)?c(this.ce):
this.ce},set:function(k){"string"===typeof k?this.ce=g(k):k.ve&&(this.ce=k)}});Object.defineProperty(this,"font",{enumerable:!0,get:function(){return this.Re},set:function(k){var p=l(k),A=p.family;p.typeface=ha[A]?ha[A][(p.style||"normal")+"|"+(p.variant||"normal")+"|"+(p.weight||"normal")]||ha[A]["*"]:null;p&&(this.oe.setSize(p.sizePx),this.oe.setTypeface(p.typeface),this.Re=k)}});Object.defineProperty(this,"globalAlpha",{enumerable:!0,get:function(){return this.le},set:function(k){!isFinite(k)||
0>k||1<k||(this.le=k)}});Object.defineProperty(this,"globalCompositeOperation",{enumerable:!0,get:function(){switch(this.Qd){case a.BlendMode.SrcOver:return"source-over";case a.BlendMode.DstOver:return"destination-over";case a.BlendMode.Src:return"copy";case a.BlendMode.Dst:return"destination";case a.BlendMode.Clear:return"clear";case a.BlendMode.SrcIn:return"source-in";case a.BlendMode.DstIn:return"destination-in";case a.BlendMode.SrcOut:return"source-out";case a.BlendMode.DstOut:return"destination-out";
case a.BlendMode.SrcATop:return"source-atop";case a.BlendMode.DstATop:return"destination-atop";case a.BlendMode.Xor:return"xor";case a.BlendMode.Plus:return"lighter";case a.BlendMode.Multiply:return"multiply";case a.BlendMode.Screen:return"screen";case a.BlendMode.Overlay:return"overlay";case a.BlendMode.Darken:return"darken";case a.BlendMode.Lighten:return"lighten";case a.BlendMode.ColorDodge:return"color-dodge";case a.BlendMode.ColorBurn:return"color-burn";case a.BlendMode.HardLight:return"hard-light";
case a.BlendMode.SoftLight:return"soft-light";case a.BlendMode.Difference:return"difference";case a.BlendMode.Exclusion:return"exclusion";case a.BlendMode.Hue:return"hue";case a.BlendMode.Saturation:return"saturation";case a.BlendMode.Color:return"color";case a.BlendMode.Luminosity:return"luminosity"}},set:function(k){switch(k){case "source-over":this.Qd=a.BlendMode.SrcOver;break;case "destination-over":this.Qd=a.BlendMode.DstOver;break;case "copy":this.Qd=a.BlendMode.Src;break;case "destination":this.Qd=
a.BlendMode.Dst;break;case "clear":this.Qd=a.BlendMode.Clear;break;case "source-in":this.Qd=a.BlendMode.SrcIn;break;case "destination-in":this.Qd=a.BlendMode.DstIn;break;case "source-out":this.Qd=a.BlendMode.SrcOut;break;case "destination-out":this.Qd=a.BlendMode.DstOut;break;case "source-atop":this.Qd=a.BlendMode.SrcATop;break;case "destination-atop":this.Qd=a.BlendMode.DstATop;break;case "xor":this.Qd=a.BlendMode.Xor;break;case "lighter":this.Qd=a.BlendMode.Plus;break;case "plus-lighter":this.Qd=
a.BlendMode.Plus;break;case "plus-darker":throw"plus-darker is not supported";case "multiply":this.Qd=a.BlendMode.Multiply;break;case "screen":this.Qd=a.BlendMode.Screen;break;case "overlay":this.Qd=a.BlendMode.Overlay;break;case "darken":this.Qd=a.BlendMode.Darken;break;case "lighten":this.Qd=a.BlendMode.Lighten;break;case "color-dodge":this.Qd=a.BlendMode.ColorDodge;break;case "color-burn":this.Qd=a.BlendMode.ColorBurn;break;case "hard-light":this.Qd=a.BlendMode.HardLight;break;case "soft-light":this.Qd=
a.BlendMode.SoftLight;break;case "difference":this.Qd=a.BlendMode.Difference;break;case "exclusion":this.Qd=a.BlendMode.Exclusion;break;case "hue":this.Qd=a.BlendMode.Hue;break;case "saturation":this.Qd=a.BlendMode.Saturation;break;case "color":this.Qd=a.BlendMode.Color;break;case "luminosity":this.Qd=a.BlendMode.Luminosity;break;default:return}this.Rd.setBlendMode(this.Qd)}});Object.defineProperty(this,"imageSmoothingEnabled",{enumerable:!0,get:function(){return!0},set:function(){}});Object.defineProperty(this,
"imageSmoothingQuality",{enumerable:!0,get:function(){return"high"},set:function(){}});Object.defineProperty(this,"lineCap",{enumerable:!0,get:function(){switch(this.Rd.getStrokeCap()){case a.StrokeCap.Butt:return"butt";case a.StrokeCap.Round:return"round";case a.StrokeCap.Square:return"square"}},set:function(k){switch(k){case "butt":this.Rd.setStrokeCap(a.StrokeCap.Butt);break;case "round":this.Rd.setStrokeCap(a.StrokeCap.Round);break;case "square":this.Rd.setStrokeCap(a.StrokeCap.Square)}}});Object.defineProperty(this,
"lineDashOffset",{enumerable:!0,get:function(){return this.Je},set:function(k){isFinite(k)&&(this.Je=k)}});Object.defineProperty(this,"lineJoin",{enumerable:!0,get:function(){switch(this.Rd.getStrokeJoin()){case a.StrokeJoin.Miter:return"miter";case a.StrokeJoin.Round:return"round";case a.StrokeJoin.Bevel:return"bevel"}},set:function(k){switch(k){case "miter":this.Rd.setStrokeJoin(a.StrokeJoin.Miter);break;case "round":this.Rd.setStrokeJoin(a.StrokeJoin.Round);break;case "bevel":this.Rd.setStrokeJoin(a.StrokeJoin.Bevel)}}});
Object.defineProperty(this,"lineWidth",{enumerable:!0,get:function(){return this.Rd.getStrokeWidth()},set:function(k){0>=k||!k||(this.Le=k,this.Rd.setStrokeWidth(k))}});Object.defineProperty(this,"miterLimit",{enumerable:!0,get:function(){return this.Rd.getStrokeMiter()},set:function(k){0>=k||!k||this.Rd.setStrokeMiter(k)}});Object.defineProperty(this,"shadowBlur",{enumerable:!0,get:function(){return this.xe},set:function(k){0>k||!isFinite(k)||(this.xe=k)}});Object.defineProperty(this,"shadowColor",
{enumerable:!0,get:function(){return c(this.Ke)},set:function(k){this.Ke=g(k)}});Object.defineProperty(this,"shadowOffsetX",{enumerable:!0,get:function(){return this.ye},set:function(k){isFinite(k)&&(this.ye=k)}});Object.defineProperty(this,"shadowOffsetY",{enumerable:!0,get:function(){return this.ze},set:function(k){isFinite(k)&&(this.ze=k)}});Object.defineProperty(this,"strokeStyle",{enumerable:!0,get:function(){return c(this.ie)},set:function(k){"string"===typeof k?this.ie=g(k):k.ve&&(this.ie=
k)}});this.arc=function(k,p,A,C,F,H){D(this.Td,k,p,A,A,0,C,F,H)};this.arcTo=function(k,p,A,C,F){O(this.Td,k,p,A,C,F)};this.beginPath=function(){this.Td.delete();this.Td=new a.Path};this.bezierCurveTo=function(k,p,A,C,F,H){var M=this.Td;d([k,p,A,C,F,H])&&(M.isEmpty()&&M.moveTo(k,p),M.cubicTo(k,p,A,C,F,H))};this.clearRect=function(k,p,A,C){this.Rd.setStyle(a.PaintStyle.Fill);this.Rd.setBlendMode(a.BlendMode.Clear);this.Od.drawRect(a.XYWHRect(k,p,A,C),this.Rd);this.Rd.setBlendMode(this.Qd)};this.clip=
function(k,p){"string"===typeof k?(p=k,k=this.Td):k&&k.af&&(k=k.Xd);k||(k=this.Td);k=k.copy();p&&"evenodd"===p.toLowerCase()?k.setFillType(a.FillType.EvenOdd):k.setFillType(a.FillType.Winding);this.Od.clipPath(k,a.ClipOp.Intersect,!0);k.delete()};this.closePath=function(){W(this.Td)};this.createImageData=function(){if(1===arguments.length){var k=arguments[0];return new J(new Uint8ClampedArray(4*k.width*k.height),k.width,k.height)}if(2===arguments.length){k=arguments[0];var p=arguments[1];return new J(new Uint8ClampedArray(4*
k*p),k,p)}throw"createImageData expects 1 or 2 arguments, got "+arguments.length;};this.createLinearGradient=function(k,p,A,C){if(d(arguments)){var F=new P(k,p,A,C);this.De.push(F);return F}};this.createPattern=function(k,p){k=new ja(k,p);this.De.push(k);return k};this.createRadialGradient=function(k,p,A,C,F,H){if(d(arguments)){var M=new ra(k,p,A,C,F,H);this.De.push(M);return M}};this.drawImage=function(k){k instanceof B&&(k=k.uf());var p=this.Qe();if(3===arguments.length||5===arguments.length)var A=
a.XYWHRect(arguments[1],arguments[2],arguments[3]||k.width(),arguments[4]||k.height()),C=a.XYWHRect(0,0,k.width(),k.height());else if(9===arguments.length)A=a.XYWHRect(arguments[5],arguments[6],arguments[7],arguments[8]),C=a.XYWHRect(arguments[1],arguments[2],arguments[3],arguments[4]);else throw"invalid number of args for drawImage, need 3, 5, or 9; got "+arguments.length;this.Od.drawImageRect(k,C,A,p,!1);p.dispose()};this.ellipse=function(k,p,A,C,F,H,M,ba){D(this.Td,k,p,A,C,F,H,M,ba)};this.Qe=function(){var k=
this.Rd.copy();k.setStyle(a.PaintStyle.Fill);if(f(this.ce)){var p=a.multiplyByAlpha(this.ce,this.le);k.setColor(p)}else p=this.ce.ve(this.Wd),k.setColor(a.Color(0,0,0,this.le)),k.setShader(p);k.dispose=function(){this.delete()};return k};this.fill=function(k,p){"string"===typeof k?(p=k,k=this.Td):k&&k.af&&(k=k.Xd);if("evenodd"===p)this.Td.setFillType(a.FillType.EvenOdd);else{if("nonzero"!==p&&p)throw"invalid fill rule";this.Td.setFillType(a.FillType.Winding)}k||(k=this.Td);p=this.Qe();var A=this.Ae(p);
A&&(this.Od.save(),this.te(),this.Od.drawPath(k,A),this.Od.restore(),A.dispose());this.Od.drawPath(k,p);p.dispose()};this.fillRect=function(k,p,A,C){var F=this.Qe(),H=this.Ae(F);H&&(this.Od.save(),this.te(),this.Od.drawRect(a.XYWHRect(k,p,A,C),H),this.Od.restore(),H.dispose());this.Od.drawRect(a.XYWHRect(k,p,A,C),F);F.dispose()};this.fillText=function(k,p,A){var C=this.Qe();k=a.TextBlob.MakeFromText(k,this.oe);var F=this.Ae(C);F&&(this.Od.save(),this.te(),this.Od.drawTextBlob(k,p,A,F),this.Od.restore(),
F.dispose());this.Od.drawTextBlob(k,p,A,C);k.delete();C.dispose()};this.getImageData=function(k,p,A,C){return(k=this.Od.readPixels(k,p,{width:A,height:C,colorType:a.ColorType.RGBA_8888,alphaType:a.AlphaType.Unpremul,colorSpace:a.ColorSpace.SRGB}))?new J(new Uint8ClampedArray(k.buffer),A,C):null};this.getLineDash=function(){return this.we.slice()};this.pf=function(k){var p=a.Matrix.invert(this.Wd);a.Matrix.mapPoints(p,k);return k};this.isPointInPath=function(k,p,A){var C=arguments;if(3===C.length)var F=
this.Td;else if(4===C.length)F=C[0],k=C[1],p=C[2],A=C[3];else throw"invalid arg count, need 3 or 4, got "+C.length;if(!isFinite(k)||!isFinite(p))return!1;A=A||"nonzero";if("nonzero"!==A&&"evenodd"!==A)return!1;C=this.pf([k,p]);k=C[0];p=C[1];F.setFillType("nonzero"===A?a.FillType.Winding:a.FillType.EvenOdd);return F.contains(k,p)};this.isPointInStroke=function(k,p){var A=arguments;if(2===A.length)var C=this.Td;else if(3===A.length)C=A[0],k=A[1],p=A[2];else throw"invalid arg count, need 2 or 3, got "+
A.length;if(!isFinite(k)||!isFinite(p))return!1;A=this.pf([k,p]);k=A[0];p=A[1];C=C.copy();C.setFillType(a.FillType.Winding);C.stroke({width:this.lineWidth,miter_limit:this.miterLimit,cap:this.Rd.getStrokeCap(),join:this.Rd.getStrokeJoin(),precision:.3});A=C.contains(k,p);C.delete();return A};this.lineTo=function(k,p){R(this.Td,k,p)};this.measureText=function(k){k=this.oe.getGlyphIDs(k);k=this.oe.getGlyphWidths(k);let p=0;for(const A of k)p+=A;return{width:p}};this.moveTo=function(k,p){var A=this.Td;
d([k,p])&&A.moveTo(k,p)};this.putImageData=function(k,p,A,C,F,H,M){if(d([p,A,C,F,H,M]))if(void 0===C)this.Od.writePixels(k.data,k.width,k.height,p,A);else if(C=C||0,F=F||0,H=H||k.width,M=M||k.height,0>H&&(C+=H,H=Math.abs(H)),0>M&&(F+=M,M=Math.abs(M)),0>C&&(H+=C,C=0),0>F&&(M+=F,F=0),!(0>=H||0>=M)){k=a.MakeImage({width:k.width,height:k.height,alphaType:a.AlphaType.Unpremul,colorType:a.ColorType.RGBA_8888,colorSpace:a.ColorSpace.SRGB},k.data,4*k.width);var ba=a.XYWHRect(C,F,H,M);p=a.XYWHRect(p+C,A+F,
H,M);A=a.Matrix.invert(this.Wd);this.Od.save();this.Od.concat(A);this.Od.drawImageRect(k,ba,p,null,!1);this.Od.restore();k.delete()}};this.quadraticCurveTo=function(k,p,A,C){var F=this.Td;d([k,p,A,C])&&(F.isEmpty()&&F.moveTo(k,p),F.quadTo(k,p,A,C))};this.rect=function(k,p,A,C){var F=this.Td;k=a.XYWHRect(k,p,A,C);d(k)&&F.addRect(k)};this.resetTransform=function(){this.Td.transform(this.Wd);var k=a.Matrix.invert(this.Wd);this.Od.concat(k);this.Wd=this.Od.getTotalMatrix()};this.restore=function(){var k=
this.nf.pop();if(k){var p=a.Matrix.multiply(this.Wd,a.Matrix.invert(k.Hf));this.Td.transform(p);this.Rd.delete();this.Rd=k.ag;this.we=k.Zf;this.Le=k.ng;this.ie=k.mg;this.ce=k.fs;this.ye=k.kg;this.ze=k.lg;this.xe=k.eg;this.Ke=k.jg;this.le=k.Of;this.Qd=k.Pf;this.Je=k.$f;this.Re=k.Nf;this.Od.restore();this.Wd=this.Od.getTotalMatrix()}};this.rotate=function(k){if(isFinite(k)){var p=a.Matrix.rotated(-k);this.Td.transform(p);this.Od.rotate(k/Math.PI*180,0,0);this.Wd=this.Od.getTotalMatrix()}};this.save=
function(){if(this.ce.ue){var k=this.ce.ue();this.De.push(k)}else k=this.ce;if(this.ie.ue){var p=this.ie.ue();this.De.push(p)}else p=this.ie;this.nf.push({Hf:this.Wd.slice(),Zf:this.we.slice(),ng:this.Le,mg:p,fs:k,kg:this.ye,lg:this.ze,eg:this.xe,jg:this.Ke,Of:this.le,$f:this.Je,Pf:this.Qd,ag:this.Rd.copy(),Nf:this.Re});this.Od.save()};this.scale=function(k,p){if(d(arguments)){var A=a.Matrix.scaled(1/k,1/p);this.Td.transform(A);this.Od.scale(k,p);this.Wd=this.Od.getTotalMatrix()}};this.setLineDash=
function(k){for(var p=0;p<k.length;p++)if(!isFinite(k[p])||0>k[p])return;1===k.length%2&&Array.prototype.push.apply(k,k);this.we=k};this.setTransform=function(k,p,A,C,F,H){d(arguments)&&(this.resetTransform(),this.transform(k,p,A,C,F,H))};this.te=function(){var k=a.Matrix.invert(this.Wd);this.Od.concat(k);this.Od.concat(a.Matrix.translated(this.ye,this.ze));this.Od.concat(this.Wd)};this.Ae=function(k){var p=a.multiplyByAlpha(this.Ke,this.le);if(!a.getColorComponents(p)[3]||!(this.xe||this.ze||this.ye))return null;
k=k.copy();k.setColor(p);var A=a.MaskFilter.MakeBlur(a.BlurStyle.Normal,this.xe/2,!1);k.setMaskFilter(A);k.dispose=function(){A.delete();this.delete()};return k};this.cf=function(){var k=this.Rd.copy();k.setStyle(a.PaintStyle.Stroke);if(f(this.ie)){var p=a.multiplyByAlpha(this.ie,this.le);k.setColor(p)}else p=this.ie.ve(this.Wd),k.setColor(a.Color(0,0,0,this.le)),k.setShader(p);k.setStrokeWidth(this.Le);if(this.we.length){var A=a.PathEffect.MakeDash(this.we,this.Je);k.setPathEffect(A)}k.dispose=function(){A&&
A.delete();this.delete()};return k};this.stroke=function(k){k=k?k.Xd:this.Td;var p=this.cf(),A=this.Ae(p);A&&(this.Od.save(),this.te(),this.Od.drawPath(k,A),this.Od.restore(),A.dispose());this.Od.drawPath(k,p);p.dispose()};this.strokeRect=function(k,p,A,C){var F=this.cf(),H=this.Ae(F);H&&(this.Od.save(),this.te(),this.Od.drawRect(a.XYWHRect(k,p,A,C),H),this.Od.restore(),H.dispose());this.Od.drawRect(a.XYWHRect(k,p,A,C),F);F.dispose()};this.strokeText=function(k,p,A){var C=this.cf();k=a.TextBlob.MakeFromText(k,
this.oe);var F=this.Ae(C);F&&(this.Od.save(),this.te(),this.Od.drawTextBlob(k,p,A,F),this.Od.restore(),F.dispose());this.Od.drawTextBlob(k,p,A,C);k.delete();C.dispose()};this.translate=function(k,p){if(d(arguments)){var A=a.Matrix.translated(-k,-p);this.Td.transform(A);this.Od.translate(k,p);this.Wd=this.Od.getTotalMatrix()}};this.transform=function(k,p,A,C,F,H){k=[k,A,F,p,C,H,0,0,1];p=a.Matrix.invert(k);this.Td.transform(p);this.Od.concat(k);this.Wd=this.Od.getTotalMatrix()};this.addHitRegion=function(){};
this.clearHitRegions=function(){};this.drawFocusIfNeeded=function(){};this.removeHitRegion=function(){};this.scrollPathIntoView=function(){};Object.defineProperty(this,"canvas",{value:null,writable:!1})}function y(I){this.df=I;this.Nd=new t(I.getCanvas());this.Se=[];this.decodeImage=function(k){k=a.MakeImageFromEncoded(k);if(!k)throw"Invalid input";this.Se.push(k);return new B(k)};this.loadFont=function(k,p){k=a.Typeface.MakeFreeTypeFaceFromData(k);if(!k)return null;this.Se.push(k);var A=(p.style||
"normal")+"|"+(p.variant||"normal")+"|"+(p.weight||"normal");p=p.family;ha[p]||(ha[p]={"*":k});ha[p][A]=k};this.makePath2D=function(k){k=new aa(k);this.Se.push(k.Xd);return k};this.getContext=function(k){return"2d"===k?this.Nd:null};this.toDataURL=function(k,p){this.df.flush();var A=this.df.makeImageSnapshot();if(A){k=k||"image/png";var C=a.ImageFormat.PNG;"image/jpeg"===k&&(C=a.ImageFormat.JPEG);if(p=A.encodeToBytes(C,p||.92)){A.delete();k="data:"+k+";base64,";if("undefined"!==typeof Buffer)p=Buffer.from(p).toString("base64");
else{A=0;C=p.length;for(var F="",H;A<C;)H=p.slice(A,Math.min(A+32768,C)),F+=String.fromCharCode.apply(null,H),A+=32768;p=btoa(F)}return k+p}}};this.dispose=function(){this.Nd.ne();this.Se.forEach(function(k){k.delete()});this.df.dispose()}}function B(I){this.width=I.width();this.height=I.height();this.naturalWidth=this.width;this.naturalHeight=this.height;this.uf=function(){return I}}function J(I,k,p){if(!k||0===p)throw"invalid dimensions, width and height must be non-zero";if(I.length%4)throw"arr must be a multiple of 4";
p=p||I.length/(4*k);Object.defineProperty(this,"data",{value:I,writable:!1});Object.defineProperty(this,"height",{value:p,writable:!1});Object.defineProperty(this,"width",{value:k,writable:!1})}function P(I,k,p,A){this.Zd=null;this.ee=[];this.be=[];this.addColorStop=function(C,F){if(0>C||1<C||!isFinite(C))throw"offset must be between 0 and 1 inclusively";F=g(F);var H=this.be.indexOf(C);if(-1!==H)this.ee[H]=F;else{for(H=0;H<this.be.length&&!(this.be[H]>C);H++);this.be.splice(H,0,C);this.ee.splice(H,
0,F)}};this.ue=function(){var C=new P(I,k,p,A);C.ee=this.ee.slice();C.be=this.be.slice();return C};this.ne=function(){this.Zd&&(this.Zd.delete(),this.Zd=null)};this.ve=function(C){var F=[I,k,p,A];a.Matrix.mapPoints(C,F);C=F[0];var H=F[1],M=F[2];F=F[3];this.ne();return this.Zd=a.Shader.MakeLinearGradient([C,H],[M,F],this.ee,this.be,a.TileMode.Clamp)}}function O(I,k,p,A,C,F){if(d([k,p,A,C,F])){if(0>F)throw"radii cannot be negative";I.isEmpty()&&I.moveTo(k,p);I.arcToTangent(k,p,A,C,F)}}function W(I){if(!I.isEmpty()){var k=
I.getBounds();(k[3]-k[1]||k[2]-k[0])&&I.close()}}function r(I,k,p,A,C,F,H){H=(H-F)/Math.PI*180;F=F/Math.PI*180;k=a.LTRBRect(k-A,p-C,k+A,p+C);1E-5>Math.abs(Math.abs(H)-360)?(p=H/2,I.arcToOval(k,F,p,!1),I.arcToOval(k,F+p,p,!1)):I.arcToOval(k,F,H,!1)}function D(I,k,p,A,C,F,H,M,ba){if(d([k,p,A,C,F,H,M])){if(0>A||0>C)throw"radii cannot be negative";var ca=2*Math.PI,Ia=H%ca;0>Ia&&(Ia+=ca);var bb=Ia-H;H=Ia;M+=bb;!ba&&M-H>=ca?M=H+ca:ba&&H-M>=ca?M=H-ca:!ba&&H>M?M=H+(ca-(H-M)%ca):ba&&H<M&&(M=H-(ca-(M-H)%ca));
F?(ba=a.Matrix.rotated(F,k,p),F=a.Matrix.rotated(-F,k,p),I.transform(F),r(I,k,p,A,C,H,M),I.transform(ba)):r(I,k,p,A,C,H,M)}}function R(I,k,p){d([k,p])&&(I.isEmpty()&&I.moveTo(k,p),I.lineTo(k,p))}function aa(I){this.Xd=null;this.Xd="string"===typeof I?a.Path.MakeFromSVGString(I):I&&I.af?I.Xd.copy():new a.Path;this.af=function(){return this.Xd};this.addPath=function(k,p){p||(p={a:1,c:0,e:0,b:0,d:1,f:0});this.Xd.addPath(k.Xd,[p.a,p.c,p.e,p.b,p.d,p.f])};this.arc=function(k,p,A,C,F,H){D(this.Xd,k,p,A,
A,0,C,F,H)};this.arcTo=function(k,p,A,C,F){O(this.Xd,k,p,A,C,F)};this.bezierCurveTo=function(k,p,A,C,F,H){var M=this.Xd;d([k,p,A,C,F,H])&&(M.isEmpty()&&M.moveTo(k,p),M.cubicTo(k,p,A,C,F,H))};this.closePath=function(){W(this.Xd)};this.ellipse=function(k,p,A,C,F,H,M,ba){D(this.Xd,k,p,A,C,F,H,M,ba)};this.lineTo=function(k,p){R(this.Xd,k,p)};this.moveTo=function(k,p){var A=this.Xd;d([k,p])&&A.moveTo(k,p)};this.quadraticCurveTo=function(k,p,A,C){var F=this.Xd;d([k,p,A,C])&&(F.isEmpty()&&F.moveTo(k,p),
F.quadTo(k,p,A,C))};this.rect=function(k,p,A,C){var F=this.Xd;k=a.XYWHRect(k,p,A,C);d(k)&&F.addRect(k)}}function ja(I,k){this.Zd=null;I instanceof B&&(I=I.uf());this.Cf=I;this._transform=a.Matrix.identity();""===k&&(k="repeat");switch(k){case "repeat-x":this.Be=a.TileMode.Repeat;this.Ce=a.TileMode.Decal;break;case "repeat-y":this.Be=a.TileMode.Decal;this.Ce=a.TileMode.Repeat;break;case "repeat":this.Ce=this.Be=a.TileMode.Repeat;break;case "no-repeat":this.Ce=this.Be=a.TileMode.Decal;break;default:throw"invalid repetition mode "+
k;}this.setTransform=function(p){p=[p.a,p.c,p.e,p.b,p.d,p.f,0,0,1];d(p)&&(this._transform=p)};this.ue=function(){var p=new ja;p.Be=this.Be;p.Ce=this.Ce;return p};this.ne=function(){this.Zd&&(this.Zd.delete(),this.Zd=null)};this.ve=function(){this.ne();return this.Zd=this.Cf.makeShaderCubic(this.Be,this.Ce,1/3,1/3,this._transform)}}function ra(I,k,p,A,C,F){this.Zd=null;this.ee=[];this.be=[];this.addColorStop=function(H,M){if(0>H||1<H||!isFinite(H))throw"offset must be between 0 and 1 inclusively";
M=g(M);var ba=this.be.indexOf(H);if(-1!==ba)this.ee[ba]=M;else{for(ba=0;ba<this.be.length&&!(this.be[ba]>H);ba++);this.be.splice(ba,0,H);this.ee.splice(ba,0,M)}};this.ue=function(){var H=new ra(I,k,p,A,C,F);H.ee=this.ee.slice();H.be=this.be.slice();return H};this.ne=function(){this.Zd&&(this.Zd.delete(),this.Zd=null)};this.ve=function(H){var M=[I,k,A,C];a.Matrix.mapPoints(H,M);var ba=M[0],ca=M[1],Ia=M[2];M=M[3];var bb=(Math.abs(H[0])+Math.abs(H[4]))/2;H=p*bb;bb*=F;this.ne();return this.Zd=a.Shader.MakeTwoPointConicalGradient([ba,
ca],H,[Ia,M],bb,this.ee,this.be,a.TileMode.Clamp)}}a._testing={};var va={aliceblue:Float32Array.of(.941,.973,1,1),antiquewhite:Float32Array.of(.98,.922,.843,1),aqua:Float32Array.of(0,1,1,1),aquamarine:Float32Array.of(.498,1,.831,1),azure:Float32Array.of(.941,1,1,1),beige:Float32Array.of(.961,.961,.863,1),bisque:Float32Array.of(1,.894,.769,1),black:Float32Array.of(0,0,0,1),blanchedalmond:Float32Array.of(1,.922,.804,1),blue:Float32Array.of(0,0,1,1),blueviolet:Float32Array.of(.541,.169,.886,1),brown:Float32Array.of(.647,
.165,.165,1),burlywood:Float32Array.of(.871,.722,.529,1),cadetblue:Float32Array.of(.373,.62,.627,1),chartreuse:Float32Array.of(.498,1,0,1),chocolate:Float32Array.of(.824,.412,.118,1),coral:Float32Array.of(1,.498,.314,1),cornflowerblue:Float32Array.of(.392,.584,.929,1),cornsilk:Float32Array.of(1,.973,.863,1),crimson:Float32Array.of(.863,.078,.235,1),cyan:Float32Array.of(0,1,1,1),darkblue:Float32Array.of(0,0,.545,1),darkcyan:Float32Array.of(0,.545,.545,1),darkgoldenrod:Float32Array.of(.722,.525,.043,
1),darkgray:Float32Array.of(.663,.663,.663,1),darkgreen:Float32Array.of(0,.392,0,1),darkgrey:Float32Array.of(.663,.663,.663,1),darkkhaki:Float32Array.of(.741,.718,.42,1),darkmagenta:Float32Array.of(.545,0,.545,1),darkolivegreen:Float32Array.of(.333,.42,.184,1),darkorange:Float32Array.of(1,.549,0,1),darkorchid:Float32Array.of(.6,.196,.8,1),darkred:Float32Array.of(.545,0,0,1),darksalmon:Float32Array.of(.914,.588,.478,1),darkseagreen:Float32Array.of(.561,.737,.561,1),darkslateblue:Float32Array.of(.282,
.239,.545,1),darkslategray:Float32Array.of(.184,.31,.31,1),darkslategrey:Float32Array.of(.184,.31,.31,1),darkturquoise:Float32Array.of(0,.808,.82,1),darkviolet:Float32Array.of(.58,0,.827,1),deeppink:Float32Array.of(1,.078,.576,1),deepskyblue:Float32Array.of(0,.749,1,1),dimgray:Float32Array.of(.412,.412,.412,1),dimgrey:Float32Array.of(.412,.412,.412,1),dodgerblue:Float32Array.of(.118,.565,1,1),firebrick:Float32Array.of(.698,.133,.133,1),floralwhite:Float32Array.of(1,.98,.941,1),forestgreen:Float32Array.of(.133,
.545,.133,1),fuchsia:Float32Array.of(1,0,1,1),gainsboro:Float32Array.of(.863,.863,.863,1),ghostwhite:Float32Array.of(.973,.973,1,1),gold:Float32Array.of(1,.843,0,1),goldenrod:Float32Array.of(.855,.647,.125,1),gray:Float32Array.of(.502,.502,.502,1),green:Float32Array.of(0,.502,0,1),greenyellow:Float32Array.of(.678,1,.184,1),grey:Float32Array.of(.502,.502,.502,1),honeydew:Float32Array.of(.941,1,.941,1),hotpink:Float32Array.of(1,.412,.706,1),indianred:Float32Array.of(.804,.361,.361,1),indigo:Float32Array.of(.294,
0,.51,1),ivory:Float32Array.of(1,1,.941,1),khaki:Float32Array.of(.941,.902,.549,1),lavender:Float32Array.of(.902,.902,.98,1),lavenderblush:Float32Array.of(1,.941,.961,1),lawngreen:Float32Array.of(.486,.988,0,1),lemonchiffon:Float32Array.of(1,.98,.804,1),lightblue:Float32Array.of(.678,.847,.902,1),lightcoral:Float32Array.of(.941,.502,.502,1),lightcyan:Float32Array.of(.878,1,1,1),lightgoldenrodyellow:Float32Array.of(.98,.98,.824,1),lightgray:Float32Array.of(.827,.827,.827,1),lightgreen:Float32Array.of(.565,
.933,.565,1),lightgrey:Float32Array.of(.827,.827,.827,1),lightpink:Float32Array.of(1,.714,.757,1),lightsalmon:Float32Array.of(1,.627,.478,1),lightseagreen:Float32Array.of(.125,.698,.667,1),lightskyblue:Float32Array.of(.529,.808,.98,1),lightslategray:Float32Array.of(.467,.533,.6,1),lightslategrey:Float32Array.of(.467,.533,.6,1),lightsteelblue:Float32Array.of(.69,.769,.871,1),lightyellow:Float32Array.of(1,1,.878,1),lime:Float32Array.of(0,1,0,1),limegreen:Float32Array.of(.196,.804,.196,1),linen:Float32Array.of(.98,
.941,.902,1),magenta:Float32Array.of(1,0,1,1),maroon:Float32Array.of(.502,0,0,1),mediumaquamarine:Float32Array.of(.4,.804,.667,1),mediumblue:Float32Array.of(0,0,.804,1),mediumorchid:Float32Array.of(.729,.333,.827,1),mediumpurple:Float32Array.of(.576,.439,.859,1),mediumseagreen:Float32Array.of(.235,.702,.443,1),mediumslateblue:Float32Array.of(.482,.408,.933,1),mediumspringgreen:Float32Array.of(0,.98,.604,1),mediumturquoise:Float32Array.of(.282,.82,.8,1),mediumvioletred:Float32Array.of(.78,.082,.522,
1),midnightblue:Float32Array.of(.098,.098,.439,1),mintcream:Float32Array.of(.961,1,.98,1),mistyrose:Float32Array.of(1,.894,.882,1),moccasin:Float32Array.of(1,.894,.71,1),navajowhite:Float32Array.of(1,.871,.678,1),navy:Float32Array.of(0,0,.502,1),oldlace:Float32Array.of(.992,.961,.902,1),olive:Float32Array.of(.502,.502,0,1),olivedrab:Float32Array.of(.42,.557,.137,1),orange:Float32Array.of(1,.647,0,1),orangered:Float32Array.of(1,.271,0,1),orchid:Float32Array.of(.855,.439,.839,1),palegoldenrod:Float32Array.of(.933,
.91,.667,1),palegreen:Float32Array.of(.596,.984,.596,1),paleturquoise:Float32Array.of(.686,.933,.933,1),palevioletred:Float32Array.of(.859,.439,.576,1),papayawhip:Float32Array.of(1,.937,.835,1),peachpuff:Float32Array.of(1,.855,.725,1),peru:Float32Array.of(.804,.522,.247,1),pink:Float32Array.of(1,.753,.796,1),plum:Float32Array.of(.867,.627,.867,1),powderblue:Float32Array.of(.69,.878,.902,1),purple:Float32Array.of(.502,0,.502,1),rebeccapurple:Float32Array.of(.4,.2,.6,1),red:Float32Array.of(1,0,0,1),
rosybrown:Float32Array.of(.737,.561,.561,1),royalblue:Float32Array.of(.255,.412,.882,1),saddlebrown:Float32Array.of(.545,.271,.075,1),salmon:Float32Array.of(.98,.502,.447,1),sandybrown:Float32Array.of(.957,.643,.376,1),seagreen:Float32Array.of(.18,.545,.341,1),seashell:Float32Array.of(1,.961,.933,1),sienna:Float32Array.of(.627,.322,.176,1),silver:Float32Array.of(.753,.753,.753,1),skyblue:Float32Array.of(.529,.808,.922,1),slateblue:Float32Array.of(.416,.353,.804,1),slategray:Float32Array.of(.439,.502,
.565,1),slategrey:Float32Array.of(.439,.502,.565,1),snow:Float32Array.of(1,.98,.98,1),springgreen:Float32Array.of(0,1,.498,1),steelblue:Float32Array.of(.275,.51,.706,1),tan:Float32Array.of(.824,.706,.549,1),teal:Float32Array.of(0,.502,.502,1),thistle:Float32Array.of(.847,.749,.847,1),tomato:Float32Array.of(1,.388,.278,1),transparent:Float32Array.of(0,0,0,0),turquoise:Float32Array.of(.251,.878,.816,1),violet:Float32Array.of(.933,.51,.933,1),wheat:Float32Array.of(.961,.871,.702,1),white:Float32Array.of(1,
1,1,1),whitesmoke:Float32Array.of(.961,.961,.961,1),yellow:Float32Array.of(1,1,0,1),yellowgreen:Float32Array.of(.604,.804,.196,1)};a._testing.parseColor=g;a._testing.colorToString=c;var Da=RegExp("(italic|oblique|normal|)\\s*(small-caps|normal|)\\s*(bold|bolder|lighter|[1-9]00|normal|)\\s*([\\d\\.]+)(px|pt|pc|in|cm|mm|%|em|ex|ch|rem|q)(.+)"),ha={"Noto Mono":{"*":null},monospace:{"*":null}};a._testing.parseFontString=l;a.MakeCanvas=function(I,k){return(I=a.MakeSurface(I,k))?new y(I):null};a.ImageData=
function(){if(2===arguments.length){var I=arguments[0],k=arguments[1];return new J(new Uint8ClampedArray(4*I*k),I,k)}if(3===arguments.length){var p=arguments[0];if(p.prototype.constructor!==Uint8ClampedArray)throw"bytes must be given as a Uint8ClampedArray";I=arguments[1];k=arguments[2];if(p%4)throw"bytes must be given in a multiple of 4";if(p%I)throw"bytes must divide evenly by width";if(k&&k!==p/(4*I))throw"invalid height given";return new J(p,I,p/(4*I))}throw"invalid number of arguments - takes 2 or 3, saw "+
arguments.length;}})()})(w);var ta=Object.assign({},w),wa="./this.program",xa=(a,b)=>{throw b;},ya="object"==typeof window,za="function"==typeof importScripts,Aa="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,Ba="",Ca,Ea,Fa,fs,Ga,Ha;
if(Aa)Ba=za?require("path").dirname(Ba)+"/":__dirname+"/",Ha=()=>{Ga||(fs=require("fs"),Ga=require("path"))},Ca=function(a,b){Ha();a=Ga.normalize(a);return fs.readFileSync(a,b?void 0:"utf8")},Fa=a=>{a=Ca(a,!0);a.buffer||(a=new Uint8Array(a));return a},Ea=(a,b,e)=>{Ha();a=Ga.normalize(a);fs.readFile(a,function(f,h){f?e(f):b(h.buffer)})},1<process.argv.length&&(wa=process.argv[1].replace(/\\/g,"/")),process.argv.slice(2),process.on("unhandledRejection",function(a){throw a;}),xa=(a,b)=>{if(noExitRuntime)throw process.exitCode=
a,b;b instanceof Ja||Ka("exiting due to exception: "+b);process.exit(a)},w.inspect=function(){return"[Emscripten Module object]"};else if(ya||za)za?Ba=self.location.href:"undefined"!=typeof document&&document.currentScript&&(Ba=document.currentScript.src),_scriptDir&&(Ba=_scriptDir),0!==Ba.indexOf("blob:")?Ba=Ba.substr(0,Ba.replace(/[?#].*/,"").lastIndexOf("/")+1):Ba="",Ca=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},za&&(Fa=a=>{var b=new XMLHttpRequest;b.open("GET",
a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),Ea=(a,b,e)=>{var f=new XMLHttpRequest;f.open("GET",a,!0);f.responseType="arraybuffer";f.onload=()=>{200==f.status||0==f.status&&f.response?b(f.response):e()};f.onerror=e;f.send(null)};var La=w.print||console.log.bind(console),Ka=w.printErr||console.warn.bind(console);Object.assign(w,ta);ta=null;w.thisProgram&&(wa=w.thisProgram);w.quit&&(xa=w.quit);var Na=0,Oa;w.wasmBinary&&(Oa=w.wasmBinary);
var noExitRuntime=w.noExitRuntime||!0;"object"!=typeof WebAssembly&&Qa("no native wasm support detected");var Ra,Sa=!1,Ta="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;
function Va(a,b,e){var f=b+e;for(e=b;a[e]&&!(e>=f);)++e;if(16<e-b&&a.buffer&&Ta)return Ta.decode(a.subarray(b,e));for(f="";b<e;){var h=a[b++];if(h&128){var m=a[b++]&63;if(192==(h&224))f+=String.fromCharCode((h&31)<<6|m);else{var u=a[b++]&63;h=224==(h&240)?(h&15)<<12|m<<6|u:(h&7)<<18|m<<12|u<<6|a[b++]&63;65536>h?f+=String.fromCharCode(h):(h-=65536,f+=String.fromCharCode(55296|h>>10,56320|h&1023))}}else f+=String.fromCharCode(h)}return f}function Wa(a,b){return a?Va(K,a,b):""}
function sa(a,b,e,f){if(!(0<f))return 0;var h=e;f=e+f-1;for(var m=0;m<a.length;++m){var u=a.charCodeAt(m);if(55296<=u&&57343>=u){var n=a.charCodeAt(++m);u=65536+((u&1023)<<10)|n&1023}if(127>=u){if(e>=f)break;b[e++]=u}else{if(2047>=u){if(e+1>=f)break;b[e++]=192|u>>6}else{if(65535>=u){if(e+2>=f)break;b[e++]=224|u>>12}else{if(e+3>=f)break;b[e++]=240|u>>18;b[e++]=128|u>>12&63}b[e++]=128|u>>6&63}b[e++]=128|u&63}}b[e]=0;return e-h}
function oa(a){for(var b=0,e=0;e<a.length;++e){var f=a.charCodeAt(e);55296<=f&&57343>=f&&(f=65536+((f&1023)<<10)|a.charCodeAt(++e)&1023);127>=f?++b:b=2047>=f?b+2:65535>=f?b+3:b+4}return b}var Xa="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0;function Ya(a,b){var e=a>>1;for(var f=e+b/2;!(e>=f)&&Za[e];)++e;e<<=1;if(32<e-a&&Xa)return Xa.decode(K.subarray(a,e));e="";for(f=0;!(f>=b/2);++f){var h=$a[a+2*f>>1];if(0==h)break;e+=String.fromCharCode(h)}return e}
function cb(a,b,e){void 0===e&&(e=2147483647);if(2>e)return 0;e-=2;var f=b;e=e<2*a.length?e/2:a.length;for(var h=0;h<e;++h)$a[b>>1]=a.charCodeAt(h),b+=2;$a[b>>1]=0;return b-f}function db(a){return 2*a.length}function eb(a,b){for(var e=0,f="";!(e>=b/4);){var h=Q[a+4*e>>2];if(0==h)break;++e;65536<=h?(h-=65536,f+=String.fromCharCode(55296|h>>10,56320|h&1023)):f+=String.fromCharCode(h)}return f}
function fb(a,b,e){void 0===e&&(e=2147483647);if(4>e)return 0;var f=b;e=f+e-4;for(var h=0;h<a.length;++h){var m=a.charCodeAt(h);if(55296<=m&&57343>=m){var u=a.charCodeAt(++h);m=65536+((m&1023)<<10)|u&1023}Q[b>>2]=m;b+=4;if(b+4>e)break}Q[b>>2]=0;return b-f}function jb(a){for(var b=0,e=0;e<a.length;++e){var f=a.charCodeAt(e);55296<=f&&57343>=f&&++e;b+=4}return b}var kb,lb,K,$a,Za,Q,mb,T,nb;
function ob(){var a=Ra.buffer;kb=a;w.HEAP8=lb=new Int8Array(a);w.HEAP16=$a=new Int16Array(a);w.HEAP32=Q=new Int32Array(a);w.HEAPU8=K=new Uint8Array(a);w.HEAPU16=Za=new Uint16Array(a);w.HEAPU32=mb=new Uint32Array(a);w.HEAPF32=T=new Float32Array(a);w.HEAPF64=nb=new Float64Array(a)}var pb,qb=[],rb=[],sb=[];function tb(){var a=w.preRun.shift();qb.unshift(a)}var ub=0,vb=null,wb=null;
function Qa(a){if(w.onAbort)w.onAbort(a);a="Aborted("+a+")";Ka(a);Sa=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");ea(a);throw a;}function yb(){return zb.startsWith("data:application/octet-stream;base64,")}var zb;zb="canvaskit.wasm";if(!yb()){var Ab=zb;zb=w.locateFile?w.locateFile(Ab,Ba):Ba+Ab}function Bb(){var a=zb;try{if(a==zb&&Oa)return new Uint8Array(Oa);if(Fa)return Fa(a);throw"both async and sync fetching of the wasm failed";}catch(b){Qa(b)}}
function Cb(){if(!Oa&&(ya||za)){if("function"==typeof fetch&&!zb.startsWith("file://"))return fetch(zb,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+zb+"'";return a.arrayBuffer()}).catch(function(){return Bb()});if(Ea)return new Promise(function(a,b){Ea(zb,function(e){a(new Uint8Array(e))},b)})}return Promise.resolve().then(function(){return Bb()})}function Db(a){for(;0<a.length;)a.shift()(w)}function Eb(a){return pb.get(a)}var Fb={};
function Gb(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function Hb(a){return this.fromWireType(Q[a>>2])}var Ib={},Jb={},Kb={};function Lb(a){if(void 0===a)return"_unknown";a=a.replace(/[^a-zA-Z0-9_]/g,"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?"_"+a:a}function Mb(a,b){a=Lb(a);return function(){null;return b.apply(this,arguments)}}
function Nb(a){var b=Error,e=Mb(a,function(f){this.name=a;this.message=f;f=Error(f).stack;void 0!==f&&(this.stack=this.toString()+"\n"+f.replace(/^Error(:[^\n]*)?\n/,""))});e.prototype=Object.create(b.prototype);e.prototype.constructor=e;e.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return e}var Ob=void 0;function Pb(a){throw new Ob(a);}
function Qb(a,b,e){function f(n){n=e(n);n.length!==a.length&&Pb("Mismatched type converter count");for(var q=0;q<a.length;++q)Rb(a[q],n[q])}a.forEach(function(n){Kb[n]=b});var h=Array(b.length),m=[],u=0;b.forEach((n,q)=>{Jb.hasOwnProperty(n)?h[q]=Jb[n]:(m.push(n),Ib.hasOwnProperty(n)||(Ib[n]=[]),Ib[n].push(()=>{h[q]=Jb[n];++u;u===m.length&&f(h)}))});0===m.length&&f(h)}
function Sb(a){switch(a){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+a);}}var Tb=void 0;function ac(a){for(var b="";K[a];)b+=Tb[K[a++]];return b}var bc=void 0;function X(a){throw new bc(a);}
function Rb(a,b,e={}){if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var f=b.name;a||X('type "'+f+'" must have a positive integer typeid pointer');if(Jb.hasOwnProperty(a)){if(e.Wf)return;X("Cannot register type '"+f+"' twice")}Jb[a]=b;delete Kb[a];Ib.hasOwnProperty(a)&&(b=Ib[a],delete Ib[a],b.forEach(h=>h()))}function cc(a){X(a.Md.Yd.Sd.name+" instance already deleted")}var dc=!1;function ec(){}
function fc(a){--a.count.value;0===a.count.value&&(a.ae?a.ge.me(a.ae):a.Yd.Sd.me(a.Ud))}function gc(a,b,e){if(b===e)return a;if(void 0===e.je)return null;a=gc(a,b,e.je);return null===a?null:e.Kf(a)}var hc={},ic=[];function jc(){for(;ic.length;){var a=ic.pop();a.Md.Ge=!1;a["delete"]()}}var kc=void 0,lc={};function mc(a,b){for(void 0===b&&X("ptr should not be undefined");a.je;)b=a.Pe(b),a=a.je;return lc[b]}
function nc(a,b){b.Yd&&b.Ud||Pb("makeClassHandle requires ptr and ptrType");!!b.ge!==!!b.ae&&Pb("Both smartPtrType and smartPtr must be specified");b.count={value:1};return oc(Object.create(a,{Md:{value:b}}))}function oc(a){if("undefined"===typeof FinalizationRegistry)return oc=b=>b,a;dc=new FinalizationRegistry(b=>{fc(b.Md)});oc=b=>{var e=b.Md;e.ae&&dc.register(b,{Md:e},b);return b};ec=b=>{dc.unregister(b)};return oc(a)}function pc(){}
function qc(a,b,e){if(void 0===a[b].$d){var f=a[b];a[b]=function(){a[b].$d.hasOwnProperty(arguments.length)||X("Function '"+e+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+a[b].$d+")!");return a[b].$d[arguments.length].apply(this,arguments)};a[b].$d=[];a[b].$d[f.Ee]=f}}
function rc(a,b,e){w.hasOwnProperty(a)?((void 0===e||void 0!==w[a].$d&&void 0!==w[a].$d[e])&&X("Cannot register public name '"+a+"' twice"),qc(w,a,a),w.hasOwnProperty(e)&&X("Cannot register multiple overloads of a function with the same number of arguments ("+e+")!"),w[a].$d[e]=b):(w[a]=b,void 0!==e&&(w[a].ug=e))}function sc(a,b,e,f,h,m,u,n){this.name=a;this.constructor=b;this.He=e;this.me=f;this.je=h;this.Qf=m;this.Pe=u;this.Kf=n;this.cg=[]}
function tc(a,b,e){for(;b!==e;)b.Pe||X("Expected null or instance of "+e.name+", got an instance of "+b.name),a=b.Pe(a),b=b.je;return a}function uc(a,b){if(null===b)return this.gf&&X("null is not a valid "+this.name),0;b.Md||X('Cannot pass "'+vc(b)+'" as a '+this.name);b.Md.Ud||X("Cannot pass deleted object as a pointer of type "+this.name);return tc(b.Md.Ud,b.Md.Yd.Sd,this.Sd)}
function wc(a,b){if(null===b){this.gf&&X("null is not a valid "+this.name);if(this.Ve){var e=this.hf();null!==a&&a.push(this.me,e);return e}return 0}b.Md||X('Cannot pass "'+vc(b)+'" as a '+this.name);b.Md.Ud||X("Cannot pass deleted object as a pointer of type "+this.name);!this.Ue&&b.Md.Yd.Ue&&X("Cannot convert argument of type "+(b.Md.ge?b.Md.ge.name:b.Md.Yd.name)+" to parameter type "+this.name);e=tc(b.Md.Ud,b.Md.Yd.Sd,this.Sd);if(this.Ve)switch(void 0===b.Md.ae&&X("Passing raw pointer to smart pointer is illegal"),
this.ig){case 0:b.Md.ge===this?e=b.Md.ae:X("Cannot convert argument of type "+(b.Md.ge?b.Md.ge.name:b.Md.Yd.name)+" to parameter type "+this.name);break;case 1:e=b.Md.ae;break;case 2:if(b.Md.ge===this)e=b.Md.ae;else{var f=b.clone();e=this.dg(e,xc(function(){f["delete"]()}));null!==a&&a.push(this.me,e)}break;default:X("Unsupporting sharing policy")}return e}
function yc(a,b){if(null===b)return this.gf&&X("null is not a valid "+this.name),0;b.Md||X('Cannot pass "'+vc(b)+'" as a '+this.name);b.Md.Ud||X("Cannot pass deleted object as a pointer of type "+this.name);b.Md.Yd.Ue&&X("Cannot convert argument of type "+b.Md.Yd.name+" to parameter type "+this.name);return tc(b.Md.Ud,b.Md.Yd.Sd,this.Sd)}
function zc(a,b,e,f,h,m,u,n,q,v,E){this.name=a;this.Sd=b;this.gf=e;this.Ue=f;this.Ve=h;this.bg=m;this.ig=u;this.wf=n;this.hf=q;this.dg=v;this.me=E;h||void 0!==b.je?this.toWireType=wc:(this.toWireType=f?uc:yc,this.fe=null)}function Ac(a,b,e){w.hasOwnProperty(a)||Pb("Replacing nonexistant public symbol");void 0!==w[a].$d&&void 0!==e?w[a].$d[e]=b:(w[a]=b,w[a].Ee=e)}
function Bc(a,b){var e=[];return function(){e.length=0;Object.assign(e,arguments);if(a.includes("j")){var f=w["dynCall_"+a];f=e&&e.length?f.apply(null,[b].concat(e)):f.call(null,b)}else f=Eb(b).apply(null,e);return f}}function Ic(a,b){a=ac(a);var e=a.includes("j")?Bc(a,b):Eb(b);"function"!=typeof e&&X("unknown function pointer with signature "+a+": "+b);return e}var Jc=void 0;function Kc(a){a=Lc(a);var b=ac(a);Mc(a);return b}
function Nc(a,b){function e(m){h[m]||Jb[m]||(Kb[m]?Kb[m].forEach(e):(f.push(m),h[m]=!0))}var f=[],h={};b.forEach(e);throw new Jc(a+": "+f.map(Kc).join([", "]));}
function Oc(a,b,e,f,h){var m=b.length;2>m&&X("argTypes array size mismatch! Must at least get return value and 'this' types!");var u=null!==b[1]&&null!==e,n=!1;for(e=1;e<b.length;++e)if(null!==b[e]&&void 0===b[e].fe){n=!0;break}var q="void"!==b[0].name,v=m-2,E=Array(v),G=[],L=[];return function(){arguments.length!==v&&X("function "+a+" called with "+arguments.length+" arguments, expected "+v+" args!");L.length=0;G.length=u?2:1;G[0]=h;if(u){var z=b[1].toWireType(L,this);G[1]=z}for(var N=0;N<v;++N)E[N]=
b[N+2].toWireType(L,arguments[N]),G.push(E[N]);N=f.apply(null,G);if(n)Gb(L);else for(var U=u?1:2;U<b.length;U++){var S=1===U?z:E[U-2];null!==b[U].fe&&b[U].fe(S)}z=q?b[0].fromWireType(N):void 0;return z}}function Pc(a,b){for(var e=[],f=0;f<a;f++)e.push(mb[b+4*f>>2]);return e}var Qc=[],Rc=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function Sc(a){4<a&&0===--Rc[a].jf&&(Rc[a]=void 0,Qc.push(a))}
var Tc=a=>{a||X("Cannot use deleted val. handle = "+a);return Rc[a].value},xc=a=>{switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=Qc.length?Qc.pop():Rc.length;Rc[b]={jf:1,value:a};return b}};
function Uc(a,b,e){switch(b){case 0:return function(f){return this.fromWireType((e?lb:K)[f])};case 1:return function(f){return this.fromWireType((e?$a:Za)[f>>1])};case 2:return function(f){return this.fromWireType((e?Q:mb)[f>>2])};default:throw new TypeError("Unknown integer type: "+a);}}function Vc(a,b){var e=Jb[a];void 0===e&&X(b+" has unknown type "+Kc(a));return e}function vc(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}
function Wc(a,b){switch(b){case 2:return function(e){return this.fromWireType(T[e>>2])};case 3:return function(e){return this.fromWireType(nb[e>>3])};default:throw new TypeError("Unknown float type: "+a);}}
function Xc(a,b,e){switch(b){case 0:return e?function(f){return lb[f]}:function(f){return K[f]};case 1:return e?function(f){return $a[f>>1]}:function(f){return Za[f>>1]};case 2:return e?function(f){return Q[f>>2]}:function(f){return mb[f>>2]};default:throw new TypeError("Unknown integer type: "+a);}}var Yc={};function Zc(a){var b=Yc[a];return void 0===b?ac(a):b}var $c=[];
function ad(){function a(b){b.$$$embind_global$$$=b;var e="object"==typeof $$$embind_global$$$&&b.$$$embind_global$$$==b;e||delete b.$$$embind_global$$$;return e}if("object"==typeof globalThis)return globalThis;if("object"==typeof $$$embind_global$$$)return $$$embind_global$$$;"object"==typeof global&&a(global)?$$$embind_global$$$=global:"object"==typeof self&&a(self)&&($$$embind_global$$$=self);if("object"==typeof $$$embind_global$$$)return $$$embind_global$$$;throw Error("unable to get global object.");
}function bd(a){var b=$c.length;$c.push(a);return b}function cd(a,b){for(var e=Array(a),f=0;f<a;++f)e[f]=Vc(mb[b+4*f>>2],"parameter "+f);return e}var dd=[];function ed(a){var b=Array(a+1);return function(e,f,h){b[0]=e;for(var m=0;m<a;++m){var u=Vc(mb[f+4*m>>2],"parameter "+m);b[m+1]=u.readValueFromPointer(h);h+=u.argPackAdvance}e=new (e.bind.apply(e,b));return xc(e)}}var fd={},gd;gd=Aa?()=>{var a=process.hrtime();return 1E3*a[0]+a[1]/1E6}:()=>performance.now();
function hd(a){var b=a.getExtension("ANGLE_instanced_arrays");b&&(a.vertexAttribDivisor=function(e,f){b.vertexAttribDivisorANGLE(e,f)},a.drawArraysInstanced=function(e,f,h,m){b.drawArraysInstancedANGLE(e,f,h,m)},a.drawElementsInstanced=function(e,f,h,m,u){b.drawElementsInstancedANGLE(e,f,h,m,u)})}
function jd(a){var b=a.getExtension("OES_vertex_array_object");b&&(a.createVertexArray=function(){return b.createVertexArrayOES()},a.deleteVertexArray=function(e){b.deleteVertexArrayOES(e)},a.bindVertexArray=function(e){b.bindVertexArrayOES(e)},a.isVertexArray=function(e){return b.isVertexArrayOES(e)})}function kd(a){var b=a.getExtension("WEBGL_draw_buffers");b&&(a.drawBuffers=function(e,f){b.drawBuffersWEBGL(e,f)})}
var ld=1,md=[],nd=[],od=[],pd=[],ka=[],qd=[],rd=[],na=[],sd=[],td=[],ud={},vd={},wd=4;function xd(a){Ad||(Ad=a)}function ia(a){for(var b=ld++,e=a.length;e<b;e++)a[e]=null;return b}function la(a,b){a.mf||(a.mf=a.getContext,a.getContext=function(f,h){h=a.mf(f,h);return"webgl"==f==h instanceof WebGLRenderingContext?h:null});var e=1<b.majorVersion?a.getContext("webgl2",b):a.getContext("webgl",b);return e?Bd(e,b):0}
function Bd(a,b){var e=ia(na),f={Vf:e,attributes:b,version:b.majorVersion,he:a};a.canvas&&(a.canvas.zf=f);na[e]=f;("undefined"==typeof b.Lf||b.Lf)&&Cd(f);return e}function ma(a){x=na[a];w.sg=Y=x&&x.he;return!(a&&!Y)}
function Cd(a){a||(a=x);if(!a.Xf){a.Xf=!0;var b=a.he;hd(b);jd(b);kd(b);b.rf=b.getExtension("WEBGL_draw_instanced_base_vertex_base_instance");b.vf=b.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance");2<=a.version&&(b.sf=b.getExtension("EXT_disjoint_timer_query_webgl2"));if(2>a.version||!b.sf)b.sf=b.getExtension("EXT_disjoint_timer_query");b.tg=b.getExtension("WEBGL_multi_draw");(b.getSupportedExtensions()||[]).forEach(function(e){e.includes("lose_context")||e.includes("debug")||b.getExtension(e)})}}
var x,Ad,Dd=[];function Ed(a,b,e,f){for(var h=0;h<a;h++){var m=Y[e](),u=m&&ia(f);m?(m.name=u,f[u]=m):xd(1282);Q[b+4*h>>2]=u}}
function Fd(a,b,e){if(b){var f=void 0;switch(a){case 36346:f=1;break;case 36344:0!=e&&1!=e&&xd(1280);return;case 34814:case 36345:f=0;break;case 34466:var h=Y.getParameter(34467);f=h?h.length:0;break;case 33309:if(2>x.version){xd(1282);return}f=2*(Y.getSupportedExtensions()||[]).length;break;case 33307:case 33308:if(2>x.version){xd(1280);return}f=33307==a?3:0}if(void 0===f)switch(h=Y.getParameter(a),typeof h){case "number":f=h;break;case "boolean":f=h?1:0;break;case "string":xd(1280);return;case "object":if(null===
h)switch(a){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:f=0;break;default:xd(1280);return}else{if(h instanceof Float32Array||h instanceof Uint32Array||h instanceof Int32Array||h instanceof Array){for(a=0;a<h.length;++a)switch(e){case 0:Q[b+4*a>>2]=h[a];break;case 2:T[b+4*a>>2]=h[a];break;case 4:lb[b+a>>0]=h[a]?1:0}return}try{f=h.name|
0}catch(m){xd(1280);Ka("GL_INVALID_ENUM in glGet"+e+"v: Unknown object returned from WebGL getParameter("+a+")! (error: "+m+")");return}}break;default:xd(1280);Ka("GL_INVALID_ENUM in glGet"+e+"v: Native code calling glGet"+e+"v("+a+") and it returns "+h+" of type "+typeof h+"!");return}switch(e){case 1:e=f;mb[b>>2]=e;mb[b+4>>2]=(e-mb[b>>2])/4294967296;break;case 0:Q[b>>2]=f;break;case 2:T[b>>2]=f;break;case 4:lb[b>>0]=f?1:0}}else xd(1281)}
function Gd(a){var b=oa(a)+1,e=Hd(b);sa(a,K,e,b);return e}function Id(a){return"]"==a.slice(-1)&&a.lastIndexOf("[")}function Jd(a){a-=5120;return 0==a?lb:1==a?K:2==a?$a:4==a?Q:6==a?T:5==a||28922==a||28520==a||30779==a||30782==a?mb:Za}function Kd(a,b,e,f,h){a=Jd(a);var m=31-Math.clz32(a.BYTES_PER_ELEMENT),u=wd;return a.subarray(h>>m,h+f*(e*({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[b-6402]||1)*(1<<m)+u-1&-u)>>m)}
function Z(a){var b=Y.If;if(b){var e=b.Oe[a];"number"==typeof e&&(b.Oe[a]=e=Y.getUniformLocation(b,b.xf[a]+(0<e?"["+e+"]":"")));return e}xd(1282)}var Ld=[],Md=[],Nd={};
function Od(){if(!Pd){var a={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",_:wa||"./this.program"},b;for(b in Nd)void 0===Nd[b]?delete a[b]:a[b]=Nd[b];var e=[];for(b in a)e.push(b+"="+a[b]);Pd=e}return Pd}var Pd,Qd=[null,[],[]];function Rd(a){return 0===a%4&&(0!==a%100||0===a%400)}
var Sd=[31,29,31,30,31,30,31,31,30,31,30,31],Td=[31,28,31,30,31,30,31,31,30,31,30,31];
function Ud(a,b,e,f){function h(z,N,U){for(z="number"==typeof z?z.toString():z||"";z.length<N;)z=U[0]+z;return z}function m(z,N){return h(z,N,"0")}function u(z,N){function U(pa){return 0>pa?-1:0<pa?1:0}var S;0===(S=U(z.getFullYear()-N.getFullYear()))&&0===(S=U(z.getMonth()-N.getMonth()))&&(S=U(z.getDate()-N.getDate()));return S}function n(z){switch(z.getDay()){case 0:return new Date(z.getFullYear()-1,11,29);case 1:return z;case 2:return new Date(z.getFullYear(),0,3);case 3:return new Date(z.getFullYear(),
0,2);case 4:return new Date(z.getFullYear(),0,1);case 5:return new Date(z.getFullYear()-1,11,31);case 6:return new Date(z.getFullYear()-1,11,30)}}function q(z){var N=z.qe;for(z=new Date((new Date(z.re+1900,0,1)).getTime());0<N;){var U=z.getMonth(),S=(Rd(z.getFullYear())?Sd:Td)[U];if(N>S-z.getDate())N-=S-z.getDate()+1,z.setDate(1),11>U?z.setMonth(U+1):(z.setMonth(0),z.setFullYear(z.getFullYear()+1));else{z.setDate(z.getDate()+N);break}}U=new Date(z.getFullYear()+1,0,4);N=n(new Date(z.getFullYear(),
0,4));U=n(U);return 0>=u(N,z)?0>=u(U,z)?z.getFullYear()+1:z.getFullYear():z.getFullYear()-1}var v=Q[f+40>>2];f={qg:Q[f>>2],pg:Q[f+4>>2],Ze:Q[f+8>>2],kf:Q[f+12>>2],$e:Q[f+16>>2],re:Q[f+20>>2],ke:Q[f+24>>2],qe:Q[f+28>>2],wg:Q[f+32>>2],og:Q[f+36>>2],rg:v?Wa(v):""};e=Wa(e);v={"%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","%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 E in v)e=e.replace(new RegExp(E,"g"),v[E]);var G="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),L="January February March April May June July August September October November December".split(" ");v={"%a":function(z){return G[z.ke].substring(0,3)},"%A":function(z){return G[z.ke]},"%b":function(z){return L[z.$e].substring(0,3)},
"%B":function(z){return L[z.$e]},"%C":function(z){return m((z.re+1900)/100|0,2)},"%d":function(z){return m(z.kf,2)},"%e":function(z){return h(z.kf,2," ")},"%g":function(z){return q(z).toString().substring(2)},"%G":function(z){return q(z)},"%H":function(z){return m(z.Ze,2)},"%I":function(z){z=z.Ze;0==z?z=12:12<z&&(z-=12);return m(z,2)},"%j":function(z){for(var N=0,U=0;U<=z.$e-1;N+=(Rd(z.re+1900)?Sd:Td)[U++]);return m(z.kf+N,3)},"%m":function(z){return m(z.$e+1,2)},"%M":function(z){return m(z.pg,2)},
"%n":function(){return"\n"},"%p":function(z){return 0<=z.Ze&&12>z.Ze?"AM":"PM"},"%S":function(z){return m(z.qg,2)},"%t":function(){return"\t"},"%u":function(z){return z.ke||7},"%U":function(z){return m(Math.floor((z.qe+7-z.ke)/7),2)},"%V":function(z){var N=Math.floor((z.qe+7-(z.ke+6)%7)/7);2>=(z.ke+371-z.qe-2)%7&&N++;if(N)53==N&&(U=(z.ke+371-z.qe)%7,4==U||3==U&&Rd(z.re)||(N=1));else{N=52;var U=(z.ke+7-z.qe-1)%7;(4==U||5==U&&Rd(z.re%400-1))&&N++}return m(N,2)},"%w":function(z){return z.ke},"%W":function(z){return m(Math.floor((z.qe+
7-(z.ke+6)%7)/7),2)},"%y":function(z){return(z.re+1900).toString().substring(2)},"%Y":function(z){return z.re+1900},"%z":function(z){z=z.og;var N=0<=z;z=Math.abs(z)/60;return(N?"+":"-")+String("0000"+(z/60*100+z%60)).slice(-4)},"%Z":function(z){return z.rg},"%%":function(){return"%"}};e=e.replace(/%%/g,"\x00\x00");for(E in v)e.includes(E)&&(e=e.replace(new RegExp(E,"g"),v[E](f)));e=e.replace(/\0\0/g,"%");E=Vd(e);if(E.length>b)return 0;lb.set(E,a);return E.length-1}Ob=w.InternalError=Nb("InternalError");
for(var Wd=Array(256),Xd=0;256>Xd;++Xd)Wd[Xd]=String.fromCharCode(Xd);Tb=Wd;bc=w.BindingError=Nb("BindingError");pc.prototype.isAliasOf=function(a){if(!(this instanceof pc&&a instanceof pc))return!1;var b=this.Md.Yd.Sd,e=this.Md.Ud,f=a.Md.Yd.Sd;for(a=a.Md.Ud;b.je;)e=b.Pe(e),b=b.je;for(;f.je;)a=f.Pe(a),f=f.je;return b===f&&e===a};
pc.prototype.clone=function(){this.Md.Ud||cc(this);if(this.Md.Ne)return this.Md.count.value+=1,this;var a=oc,b=Object,e=b.create,f=Object.getPrototypeOf(this),h=this.Md;a=a(e.call(b,f,{Md:{value:{count:h.count,Ge:h.Ge,Ne:h.Ne,Ud:h.Ud,Yd:h.Yd,ae:h.ae,ge:h.ge}}}));a.Md.count.value+=1;a.Md.Ge=!1;return a};pc.prototype["delete"]=function(){this.Md.Ud||cc(this);this.Md.Ge&&!this.Md.Ne&&X("Object already scheduled for deletion");ec(this);fc(this.Md);this.Md.Ne||(this.Md.ae=void 0,this.Md.Ud=void 0)};
pc.prototype.isDeleted=function(){return!this.Md.Ud};pc.prototype.deleteLater=function(){this.Md.Ud||cc(this);this.Md.Ge&&!this.Md.Ne&&X("Object already scheduled for deletion");ic.push(this);1===ic.length&&kc&&kc(jc);this.Md.Ge=!0;return this};w.getInheritedInstanceCount=function(){return Object.keys(lc).length};w.getLiveInheritedInstances=function(){var a=[],b;for(b in lc)lc.hasOwnProperty(b)&&a.push(lc[b]);return a};w.flushPendingDeletes=jc;w.setDelayFunction=function(a){kc=a;ic.length&&kc&&kc(jc)};
zc.prototype.Rf=function(a){this.wf&&(a=this.wf(a));return a};zc.prototype.qf=function(a){this.me&&this.me(a)};zc.prototype.argPackAdvance=8;zc.prototype.readValueFromPointer=Hb;zc.prototype.deleteObject=function(a){if(null!==a)a["delete"]()};
zc.prototype.fromWireType=function(a){function b(){return this.Ve?nc(this.Sd.He,{Yd:this.bg,Ud:e,ge:this,ae:a}):nc(this.Sd.He,{Yd:this,Ud:a})}var e=this.Rf(a);if(!e)return this.qf(a),null;var f=mc(this.Sd,e);if(void 0!==f){if(0===f.Md.count.value)return f.Md.Ud=e,f.Md.ae=a,f.clone();f=f.clone();this.qf(a);return f}f=this.Sd.Qf(e);f=hc[f];if(!f)return b.call(this);f=this.Ue?f.Gf:f.pointerType;var h=gc(e,this.Sd,f.Sd);return null===h?b.call(this):this.Ve?nc(f.Sd.He,{Yd:f,Ud:h,ge:this,ae:a}):nc(f.Sd.He,
{Yd:f,Ud:h})};Jc=w.UnboundTypeError=Nb("UnboundTypeError");w.count_emval_handles=function(){for(var a=0,b=5;b<Rc.length;++b)void 0!==Rc[b]&&++a;return a};w.get_first_emval=function(){for(var a=5;a<Rc.length;++a)if(void 0!==Rc[a])return Rc[a];return null};for(var Y,Yd=0;32>Yd;++Yd)Dd.push(Array(Yd));var Zd=new Float32Array(288);for(Yd=0;288>Yd;++Yd)Ld[Yd]=Zd.subarray(0,Yd+1);var $d=new Int32Array(288);for(Yd=0;288>Yd;++Yd)Md[Yd]=$d.subarray(0,Yd+1);
function Vd(a){var b=Array(oa(a)+1);sa(a,b,0,b.length);return b}
var pe={V:function(){return 0},Bb:function(){},Db:function(){return 0},yb:function(){},zb:function(){},W:function(){},Ab:function(){},E:function(a){var b=Fb[a];delete Fb[a];var e=b.hf,f=b.me,h=b.tf,m=h.map(u=>u.Uf).concat(h.map(u=>u.gg));Qb([a],m,u=>{var n={};h.forEach((q,v)=>{var E=u[v],G=q.Sf,L=q.Tf,z=u[v+h.length],N=q.fg,U=q.hg;n[q.Mf]={read:S=>E.fromWireType(G(L,S)),write:(S,pa)=>{var ua=[];N(U,S,z.toWireType(ua,pa));Gb(ua)}}});return[{name:b.name,fromWireType:function(q){var v={},E;for(E in n)v[E]=
n[E].read(q);f(q);return v},toWireType:function(q,v){for(var E in n)if(!(E in v))throw new TypeError('Missing field:  "'+E+'"');var G=e();for(E in n)n[E].write(G,v[E]);null!==q&&q.push(f,G);return G},argPackAdvance:8,readValueFromPointer:Hb,fe:f}]})},qb:function(){},Hb:function(a,b,e,f,h){var m=Sb(e);b=ac(b);Rb(a,{name:b,fromWireType:function(u){return!!u},toWireType:function(u,n){return n?f:h},argPackAdvance:8,readValueFromPointer:function(u){if(1===e)var n=lb;else if(2===e)n=$a;else if(4===e)n=
Q;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(n[u>>m])},fe:null})},r:function(a,b,e,f,h,m,u,n,q,v,E,G,L){E=ac(E);m=Ic(h,m);n&&(n=Ic(u,n));v&&(v=Ic(q,v));L=Ic(G,L);var z=Lb(E);rc(z,function(){Nc("Cannot construct "+E+" due to unbound types",[f])});Qb([a,b,e],f?[f]:[],function(N){N=N[0];if(f){var U=N.Sd;var S=U.He}else S=pc.prototype;N=Mb(z,function(){if(Object.getPrototypeOf(this)!==pa)throw new bc("Use 'new' to construct "+E);if(void 0===ua.pe)throw new bc(E+
" has no accessible constructor");var hb=ua.pe[arguments.length];if(void 0===hb)throw new bc("Tried to invoke ctor of "+E+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(ua.pe).toString()+") parameters instead!");return hb.apply(this,arguments)});var pa=Object.create(S,{constructor:{value:N}});N.prototype=pa;var ua=new sc(E,N,pa,L,U,m,n,v);U=new zc(E,ua,!0,!1,!1);S=new zc(E+"*",ua,!1,!1,!1);var gb=new zc(E+" const*",ua,!1,!0,!1);hc[a]={pointerType:S,Gf:gb};Ac(z,
N);return[U,S,gb]})},i:function(a,b,e,f,h,m,u){var n=Pc(e,f);b=ac(b);m=Ic(h,m);Qb([],[a],function(q){function v(){Nc("Cannot call "+E+" due to unbound types",n)}q=q[0];var E=q.name+"."+b;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);var G=q.Sd.constructor;void 0===G[b]?(v.Ee=e-1,G[b]=v):(qc(G,b,E),G[b].$d[e-1]=v);Qb([],n,function(L){L=[L[0],null].concat(L.slice(1));L=Oc(E,L,null,m,u);void 0===G[b].$d?(L.Ee=e-1,G[b]=L):G[b].$d[e-1]=L;return[]});return[]})},D:function(a,b,e,f,h,m){0<b||Qa();var u=
Pc(b,e);h=Ic(f,h);Qb([],[a],function(n){n=n[0];var q="constructor "+n.name;void 0===n.Sd.pe&&(n.Sd.pe=[]);if(void 0!==n.Sd.pe[b-1])throw new bc("Cannot register multiple constructors with identical number of parameters ("+(b-1)+") for class '"+n.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");n.Sd.pe[b-1]=()=>{Nc("Cannot construct "+n.name+" due to unbound types",u)};Qb([],u,function(v){v.splice(1,0,null);n.Sd.pe[b-1]=Oc(q,v,null,h,m);return[]});
return[]})},c:function(a,b,e,f,h,m,u,n){var q=Pc(e,f);b=ac(b);m=Ic(h,m);Qb([],[a],function(v){function E(){Nc("Cannot call "+G+" due to unbound types",q)}v=v[0];var G=v.name+"."+b;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);n&&v.Sd.cg.push(b);var L=v.Sd.He,z=L[b];void 0===z||void 0===z.$d&&z.className!==v.name&&z.Ee===e-2?(E.Ee=e-2,E.className=v.name,L[b]=E):(qc(L,b,G),L[b].$d[e-2]=E);Qb([],q,function(N){N=Oc(G,N,v,m,u);void 0===L[b].$d?(N.Ee=e-2,L[b]=N):L[b].$d[e-2]=N;return[]});return[]})},w:function(a,
b,e){a=ac(a);Qb([],[b],function(f){f=f[0];w[a]=f.fromWireType(e);return[]})},Gb:function(a,b){b=ac(b);Rb(a,{name:b,fromWireType:function(e){var f=Tc(e);Sc(e);return f},toWireType:function(e,f){return xc(f)},argPackAdvance:8,readValueFromPointer:Hb,fe:null})},p:function(a,b,e,f){function h(){}e=Sb(e);b=ac(b);h.values={};Rb(a,{name:b,constructor:h,fromWireType:function(m){return this.constructor.values[m]},toWireType:function(m,u){return u.value},argPackAdvance:8,readValueFromPointer:Uc(b,e,f),fe:null});
rc(b,h)},f:function(a,b,e){var f=Vc(a,"enum");b=ac(b);a=f.constructor;f=Object.create(f.constructor.prototype,{value:{value:e},constructor:{value:Mb(f.name+"_"+b,function(){})}});a.values[e]=f;a[b]=f},Z:function(a,b,e){e=Sb(e);b=ac(b);Rb(a,{name:b,fromWireType:function(f){return f},toWireType:function(f,h){return h},argPackAdvance:8,readValueFromPointer:Wc(b,e),fe:null})},A:function(a,b,e,f,h,m){var u=Pc(b,e);a=ac(a);h=Ic(f,h);rc(a,function(){Nc("Cannot call "+a+" due to unbound types",u)},b-1);Qb([],
u,function(n){n=[n[0],null].concat(n.slice(1));Ac(a,Oc(a,n,null,h,m),b-1);return[]})},J:function(a,b,e,f,h){b=ac(b);-1===h&&(h=4294967295);h=Sb(e);var m=n=>n;if(0===f){var u=32-8*e;m=n=>n<<u>>>u}e=b.includes("unsigned")?function(n,q){return q>>>0}:function(n,q){return q};Rb(a,{name:b,fromWireType:m,toWireType:e,argPackAdvance:8,readValueFromPointer:Xc(b,h,0!==f),fe:null})},y:function(a,b,e){function f(m){m>>=2;var u=mb;return new h(kb,u[m+1],u[m])}var h=[Int8Array,Uint8Array,Int16Array,Uint16Array,
Int32Array,Uint32Array,Float32Array,Float64Array][b];e=ac(e);Rb(a,{name:e,fromWireType:f,argPackAdvance:8,readValueFromPointer:f},{Wf:!0})},u:function(a,b,e,f,h,m,u,n,q,v,E,G){e=ac(e);m=Ic(h,m);n=Ic(u,n);v=Ic(q,v);G=Ic(E,G);Qb([a],[b],function(L){L=L[0];return[new zc(e,L.Sd,!1,!1,!0,L,f,m,n,v,G)]})},Y:function(a,b){b=ac(b);var e="std::string"===b;Rb(a,{name:b,fromWireType:function(f){var h=mb[f>>2],m=f+4;if(e)for(var u=m,n=0;n<=h;++n){var q=m+n;if(n==h||0==K[q]){u=Wa(u,q-u);if(void 0===v)var v=u;
else v+=String.fromCharCode(0),v+=u;u=q+1}}else{v=Array(h);for(n=0;n<h;++n)v[n]=String.fromCharCode(K[m+n]);v=v.join("")}Mc(f);return v},toWireType:function(f,h){h instanceof ArrayBuffer&&(h=new Uint8Array(h));var m="string"==typeof h;m||h instanceof Uint8Array||h instanceof Uint8ClampedArray||h instanceof Int8Array||X("Cannot pass non-string to std::string");var u=e&&m?oa(h):h.length;var n=Hd(4+u+1),q=n+4;mb[n>>2]=u;if(e&&m)sa(h,K,q,u+1);else if(m)for(m=0;m<u;++m){var v=h.charCodeAt(m);255<v&&(Mc(q),
X("String has UTF-16 code units that do not fit in 8 bits"));K[q+m]=v}else for(m=0;m<u;++m)K[q+m]=h[m];null!==f&&f.push(Mc,n);return n},argPackAdvance:8,readValueFromPointer:Hb,fe:function(f){Mc(f)}})},Q:function(a,b,e){e=ac(e);if(2===b){var f=Ya;var h=cb;var m=db;var u=()=>Za;var n=1}else 4===b&&(f=eb,h=fb,m=jb,u=()=>mb,n=2);Rb(a,{name:e,fromWireType:function(q){for(var v=mb[q>>2],E=u(),G,L=q+4,z=0;z<=v;++z){var N=q+4+z*b;if(z==v||0==E[N>>n])L=f(L,N-L),void 0===G?G=L:(G+=String.fromCharCode(0),G+=
L),L=N+b}Mc(q);return G},toWireType:function(q,v){"string"!=typeof v&&X("Cannot pass non-string to C++ string type "+e);var E=m(v),G=Hd(4+E+b);mb[G>>2]=E>>n;h(v,G+4,E+b);null!==q&&q.push(Mc,G);return G},argPackAdvance:8,readValueFromPointer:Hb,fe:function(q){Mc(q)}})},F:function(a,b,e,f,h,m){Fb[a]={name:ac(b),hf:Ic(e,f),me:Ic(h,m),tf:[]}},h:function(a,b,e,f,h,m,u,n,q,v){Fb[a].tf.push({Mf:ac(b),Uf:e,Sf:Ic(f,h),Tf:m,gg:u,fg:Ic(n,q),hg:v})},Ib:function(a,b){b=ac(b);Rb(a,{Yf:!0,name:b,argPackAdvance:0,
fromWireType:function(){},toWireType:function(){}})},Fb:function(){return!0},sb:function(){throw Infinity;},H:function(a,b,e){a=Tc(a);b=Vc(b,"emval::as");var f=[],h=xc(f);mb[e>>2]=h;return b.toWireType(f,a)},M:function(a,b,e,f,h){a=$c[a];b=Tc(b);e=Zc(e);var m=[];mb[f>>2]=xc(m);return a(b,e,m,h)},x:function(a,b,e,f){a=$c[a];b=Tc(b);e=Zc(e);a(b,e,null,f)},e:Sc,L:function(a){if(0===a)return xc(ad());a=Zc(a);return xc(ad()[a])},t:function(a,b){var e=cd(a,b),f=e[0];b=f.name+"_$"+e.slice(1).map(function(u){return u.name}).join("_")+
"$";var h=dd[b];if(void 0!==h)return h;var m=Array(a-1);h=bd((u,n,q,v)=>{for(var E=0,G=0;G<a-1;++G)m[G]=e[G+1].readValueFromPointer(v+E),E+=e[G+1].argPackAdvance;u=u[n].apply(u,m);for(G=0;G<a-1;++G)e[G+1].Jf&&e[G+1].Jf(m[G]);if(!f.Yf)return f.toWireType(q,u)});return dd[b]=h},K:function(a,b){a=Tc(a);b=Tc(b);return xc(a[b])},q:function(a){4<a&&(Rc[a].jf+=1)},N:function(a,b,e,f){a=Tc(a);var h=fd[b];h||(h=ed(b),fd[b]=h);return h(a,e,f)},I:function(){return xc([])},g:function(a){return xc(Zc(a))},B:function(){return xc({})},
mb:function(a){a=Tc(a);return!a},C:function(a){var b=Tc(a);Gb(b);Sc(a)},k:function(a,b,e){a=Tc(a);b=Tc(b);e=Tc(e);a[b]=e},j:function(a,b){a=Vc(a,"_emval_take_value");a=a.readValueFromPointer(b);return xc(a)},ub:function(){return-52},vb:function(){},a:function(){Qa("")},Eb:gd,bd:function(a){Y.activeTexture(a)},cd:function(a,b){Y.attachShader(nd[a],qd[b])},ca:function(a,b,e){Y.bindAttribLocation(nd[a],b,Wa(e))},da:function(a,b){35051==a?Y.ef=b:35052==a&&(Y.Fe=b);Y.bindBuffer(a,md[b])},ba:function(a,
b){Y.bindFramebuffer(a,od[b])},fc:function(a,b){Y.bindRenderbuffer(a,pd[b])},Rb:function(a,b){Y.bindSampler(a,sd[b])},ea:function(a,b){Y.bindTexture(a,ka[b])},Cc:function(a){Y.bindVertexArray(rd[a])},xc:function(a){Y.bindVertexArray(rd[a])},fa:function(a,b,e,f){Y.blendColor(a,b,e,f)},ga:function(a){Y.blendEquation(a)},ha:function(a,b){Y.blendFunc(a,b)},$b:function(a,b,e,f,h,m,u,n,q,v){Y.blitFramebuffer(a,b,e,f,h,m,u,n,q,v)},ia:function(a,b,e,f){2<=x.version?e&&b?Y.bufferData(a,K,f,e,b):Y.bufferData(a,
b,f):Y.bufferData(a,e?K.subarray(e,e+b):b,f)},ja:function(a,b,e,f){2<=x.version?e&&Y.bufferSubData(a,b,K,f,e):Y.bufferSubData(a,b,K.subarray(f,f+e))},gc:function(a){return Y.checkFramebufferStatus(a)},T:function(a){Y.clear(a)},aa:function(a,b,e,f){Y.clearColor(a,b,e,f)},X:function(a){Y.clearStencil(a)},kb:function(a,b,e,f){return Y.clientWaitSync(td[a],b,(e>>>0)+4294967296*f)},ka:function(a,b,e,f){Y.colorMask(!!a,!!b,!!e,!!f)},la:function(a){Y.compileShader(qd[a])},ma:function(a,b,e,f,h,m,u,n){2<=
x.version?Y.Fe||!u?Y.compressedTexImage2D(a,b,e,f,h,m,u,n):Y.compressedTexImage2D(a,b,e,f,h,m,K,n,u):Y.compressedTexImage2D(a,b,e,f,h,m,n?K.subarray(n,n+u):null)},na:function(a,b,e,f,h,m,u,n,q){2<=x.version?Y.Fe||!n?Y.compressedTexSubImage2D(a,b,e,f,h,m,u,n,q):Y.compressedTexSubImage2D(a,b,e,f,h,m,u,K,q,n):Y.compressedTexSubImage2D(a,b,e,f,h,m,u,q?K.subarray(q,q+n):null)},Zb:function(a,b,e,f,h){Y.copyBufferSubData(a,b,e,f,h)},oa:function(a,b,e,f,h,m,u,n){Y.copyTexSubImage2D(a,b,e,f,h,m,u,n)},pa:function(){var a=
ia(nd),b=Y.createProgram();b.name=a;b.Ye=b.We=b.Xe=0;b.lf=1;nd[a]=b;return a},qa:function(a){var b=ia(qd);qd[b]=Y.createShader(a);return b},ra:function(a){Y.cullFace(a)},sa:function(a,b){for(var e=0;e<a;e++){var f=Q[b+4*e>>2],h=md[f];h&&(Y.deleteBuffer(h),h.name=0,md[f]=null,f==Y.ef&&(Y.ef=0),f==Y.Fe&&(Y.Fe=0))}},hc:function(a,b){for(var e=0;e<a;++e){var f=Q[b+4*e>>2],h=od[f];h&&(Y.deleteFramebuffer(h),h.name=0,od[f]=null)}},ta:function(a){if(a){var b=nd[a];b?(Y.deleteProgram(b),b.name=0,nd[a]=null):
xd(1281)}},ic:function(a,b){for(var e=0;e<a;e++){var f=Q[b+4*e>>2],h=pd[f];h&&(Y.deleteRenderbuffer(h),h.name=0,pd[f]=null)}},Sb:function(a,b){for(var e=0;e<a;e++){var f=Q[b+4*e>>2],h=sd[f];h&&(Y.deleteSampler(h),h.name=0,sd[f]=null)}},ua:function(a){if(a){var b=qd[a];b?(Y.deleteShader(b),qd[a]=null):xd(1281)}},_b:function(a){if(a){var b=td[a];b?(Y.deleteSync(b),b.name=0,td[a]=null):xd(1281)}},va:function(a,b){for(var e=0;e<a;e++){var f=Q[b+4*e>>2],h=ka[f];h&&(Y.deleteTexture(h),h.name=0,ka[f]=null)}},
Dc:function(a,b){for(var e=0;e<a;e++){var f=Q[b+4*e>>2];Y.deleteVertexArray(rd[f]);rd[f]=null}},yc:function(a,b){for(var e=0;e<a;e++){var f=Q[b+4*e>>2];Y.deleteVertexArray(rd[f]);rd[f]=null}},wa:function(a){Y.depthMask(!!a)},xa:function(a){Y.disable(a)},ya:function(a){Y.disableVertexAttribArray(a)},za:function(a,b,e){Y.drawArrays(a,b,e)},Ac:function(a,b,e,f){Y.drawArraysInstanced(a,b,e,f)},vc:function(a,b,e,f,h){Y.rf.drawArraysInstancedBaseInstanceWEBGL(a,b,e,f,h)},tc:function(a,b){for(var e=Dd[a],
f=0;f<a;f++)e[f]=Q[b+4*f>>2];Y.drawBuffers(e)},Aa:function(a,b,e,f){Y.drawElements(a,b,e,f)},Bc:function(a,b,e,f,h){Y.drawElementsInstanced(a,b,e,f,h)},wc:function(a,b,e,f,h,m,u){Y.rf.drawElementsInstancedBaseVertexBaseInstanceWEBGL(a,b,e,f,h,m,u)},nc:function(a,b,e,f,h,m){Y.drawElements(a,f,h,m)},Ba:function(a){Y.enable(a)},Ca:function(a){Y.enableVertexAttribArray(a)},Xb:function(a,b){return(a=Y.fenceSync(a,b))?(b=ia(td),a.name=b,td[b]=a,b):0},Da:function(){Y.finish()},Ea:function(){Y.flush()},jc:function(a,
b,e,f){Y.framebufferRenderbuffer(a,b,e,pd[f])},kc:function(a,b,e,f,h){Y.framebufferTexture2D(a,b,e,ka[f],h)},Fa:function(a){Y.frontFace(a)},Ga:function(a,b){Ed(a,b,"createBuffer",md)},lc:function(a,b){Ed(a,b,"createFramebuffer",od)},mc:function(a,b){Ed(a,b,"createRenderbuffer",pd)},Tb:function(a,b){Ed(a,b,"createSampler",sd)},Ha:function(a,b){Ed(a,b,"createTexture",ka)},Ec:function(a,b){Ed(a,b,"createVertexArray",rd)},zc:function(a,b){Ed(a,b,"createVertexArray",rd)},bc:function(a){Y.generateMipmap(a)},
Ia:function(a,b,e){e?Q[e>>2]=Y.getBufferParameter(a,b):xd(1281)},Ja:function(){var a=Y.getError()||Ad;Ad=0;return a},Ka:function(a,b){Fd(a,b,2)},cc:function(a,b,e,f){a=Y.getFramebufferAttachmentParameter(a,b,e);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;Q[f>>2]=a},O:function(a,b){Fd(a,b,0)},La:function(a,b,e,f){a=Y.getProgramInfoLog(nd[a]);null===a&&(a="(unknown error)");b=0<b&&f?sa(a,K,f,b):0;e&&(Q[e>>2]=b)},Ma:function(a,b,e){if(e)if(a>=ld)xd(1281);else if(a=nd[a],35716==
b)a=Y.getProgramInfoLog(a),null===a&&(a="(unknown error)"),Q[e>>2]=a.length+1;else if(35719==b){if(!a.Ye)for(b=0;b<Y.getProgramParameter(a,35718);++b)a.Ye=Math.max(a.Ye,Y.getActiveUniform(a,b).name.length+1);Q[e>>2]=a.Ye}else if(35722==b){if(!a.We)for(b=0;b<Y.getProgramParameter(a,35721);++b)a.We=Math.max(a.We,Y.getActiveAttrib(a,b).name.length+1);Q[e>>2]=a.We}else if(35381==b){if(!a.Xe)for(b=0;b<Y.getProgramParameter(a,35382);++b)a.Xe=Math.max(a.Xe,Y.getActiveUniformBlockName(a,b).length+1);Q[e>>
2]=a.Xe}else Q[e>>2]=Y.getProgramParameter(a,b);else xd(1281)},dc:function(a,b,e){e?Q[e>>2]=Y.getRenderbufferParameter(a,b):xd(1281)},Na:function(a,b,e,f){a=Y.getShaderInfoLog(qd[a]);null===a&&(a="(unknown error)");b=0<b&&f?sa(a,K,f,b):0;e&&(Q[e>>2]=b)},Ob:function(a,b,e,f){a=Y.getShaderPrecisionFormat(a,b);Q[e>>2]=a.rangeMin;Q[e+4>>2]=a.rangeMax;Q[f>>2]=a.precision},Oa:function(a,b,e){e?35716==b?(a=Y.getShaderInfoLog(qd[a]),null===a&&(a="(unknown error)"),Q[e>>2]=a?a.length+1:0):35720==b?(a=Y.getShaderSource(qd[a]),
Q[e>>2]=a?a.length+1:0):Q[e>>2]=Y.getShaderParameter(qd[a],b):xd(1281)},S:function(a){var b=ud[a];if(!b){switch(a){case 7939:b=Y.getSupportedExtensions()||[];b=b.concat(b.map(function(f){return"GL_"+f}));b=Gd(b.join(" "));break;case 7936:case 7937:case 37445:case 37446:(b=Y.getParameter(a))||xd(1280);b=b&&Gd(b);break;case 7938:b=Y.getParameter(7938);b=2<=x.version?"OpenGL ES 3.0 ("+b+")":"OpenGL ES 2.0 ("+b+")";b=Gd(b);break;case 35724:b=Y.getParameter(35724);var e=b.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/);
null!==e&&(3==e[1].length&&(e[1]+="0"),b="OpenGL ES GLSL ES "+e[1]+" ("+b+")");b=Gd(b);break;default:xd(1280)}ud[a]=b}return b},jb:function(a,b){if(2>x.version)return xd(1282),0;var e=vd[a];if(e)return 0>b||b>=e.length?(xd(1281),0):e[b];switch(a){case 7939:return e=Y.getSupportedExtensions()||[],e=e.concat(e.map(function(f){return"GL_"+f})),e=e.map(function(f){return Gd(f)}),e=vd[a]=e,0>b||b>=e.length?(xd(1281),0):e[b];default:return xd(1280),0}},Pa:function(a,b){b=Wa(b);if(a=nd[a]){var e=a,f=e.Oe,
h=e.yf,m;if(!f)for(e.Oe=f={},e.xf={},m=0;m<Y.getProgramParameter(e,35718);++m){var u=Y.getActiveUniform(e,m);var n=u.name;u=u.size;var q=Id(n);q=0<q?n.slice(0,q):n;var v=e.lf;e.lf+=u;h[q]=[u,v];for(n=0;n<u;++n)f[v]=n,e.xf[v++]=q}e=a.Oe;f=0;h=b;m=Id(b);0<m&&(f=parseInt(b.slice(m+1))>>>0,h=b.slice(0,m));if((h=a.yf[h])&&f<h[0]&&(f+=h[1],e[f]=e[f]||Y.getUniformLocation(a,b)))return f}else xd(1281);return-1},Pb:function(a,b,e){for(var f=Dd[b],h=0;h<b;h++)f[h]=Q[e+4*h>>2];Y.invalidateFramebuffer(a,f)},
Qb:function(a,b,e,f,h,m,u){for(var n=Dd[b],q=0;q<b;q++)n[q]=Q[e+4*q>>2];Y.invalidateSubFramebuffer(a,n,f,h,m,u)},Yb:function(a){return Y.isSync(td[a])},Qa:function(a){return(a=ka[a])?Y.isTexture(a):0},Ra:function(a){Y.lineWidth(a)},Sa:function(a){a=nd[a];Y.linkProgram(a);a.Oe=0;a.yf={}},rc:function(a,b,e,f,h,m){Y.vf.multiDrawArraysInstancedBaseInstanceWEBGL(a,Q,b>>2,Q,e>>2,Q,f>>2,mb,h>>2,m)},sc:function(a,b,e,f,h,m,u,n){Y.vf.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(a,Q,b>>2,e,Q,f>>2,
Q,h>>2,Q,m>>2,mb,u>>2,n)},Ta:function(a,b){3317==a&&(wd=b);Y.pixelStorei(a,b)},uc:function(a){Y.readBuffer(a)},Ua:function(a,b,e,f,h,m,u){if(2<=x.version)if(Y.ef)Y.readPixels(a,b,e,f,h,m,u);else{var n=Jd(m);Y.readPixels(a,b,e,f,h,m,n,u>>31-Math.clz32(n.BYTES_PER_ELEMENT))}else(u=Kd(m,h,e,f,u))?Y.readPixels(a,b,e,f,h,m,u):xd(1280)},ec:function(a,b,e,f){Y.renderbufferStorage(a,b,e,f)},ac:function(a,b,e,f,h){Y.renderbufferStorageMultisample(a,b,e,f,h)},Ub:function(a,b,e){Y.samplerParameterf(sd[a],b,
e)},Vb:function(a,b,e){Y.samplerParameteri(sd[a],b,e)},Wb:function(a,b,e){Y.samplerParameteri(sd[a],b,Q[e>>2])},Va:function(a,b,e,f){Y.scissor(a,b,e,f)},Wa:function(a,b,e,f){for(var h="",m=0;m<b;++m){var u=f?Q[f+4*m>>2]:-1;h+=Wa(Q[e+4*m>>2],0>u?void 0:u)}Y.shaderSource(qd[a],h)},Xa:function(a,b,e){Y.stencilFunc(a,b,e)},Ya:function(a,b,e,f){Y.stencilFuncSeparate(a,b,e,f)},Za:function(a){Y.stencilMask(a)},_a:function(a,b){Y.stencilMaskSeparate(a,b)},$a:function(a,b,e){Y.stencilOp(a,b,e)},ab:function(a,
b,e,f){Y.stencilOpSeparate(a,b,e,f)},bb:function(a,b,e,f,h,m,u,n,q){if(2<=x.version)if(Y.Fe)Y.texImage2D(a,b,e,f,h,m,u,n,q);else if(q){var v=Jd(n);Y.texImage2D(a,b,e,f,h,m,u,n,v,q>>31-Math.clz32(v.BYTES_PER_ELEMENT))}else Y.texImage2D(a,b,e,f,h,m,u,n,null);else Y.texImage2D(a,b,e,f,h,m,u,n,q?Kd(n,u,f,h,q):null)},cb:function(a,b,e){Y.texParameterf(a,b,e)},db:function(a,b,e){Y.texParameterf(a,b,T[e>>2])},eb:function(a,b,e){Y.texParameteri(a,b,e)},fb:function(a,b,e){Y.texParameteri(a,b,Q[e>>2])},oc:function(a,
b,e,f,h){Y.texStorage2D(a,b,e,f,h)},gb:function(a,b,e,f,h,m,u,n,q){if(2<=x.version)if(Y.Fe)Y.texSubImage2D(a,b,e,f,h,m,u,n,q);else if(q){var v=Jd(n);Y.texSubImage2D(a,b,e,f,h,m,u,n,v,q>>31-Math.clz32(v.BYTES_PER_ELEMENT))}else Y.texSubImage2D(a,b,e,f,h,m,u,n,null);else v=null,q&&(v=Kd(n,u,h,m,q)),Y.texSubImage2D(a,b,e,f,h,m,u,n,v)},hb:function(a,b){Y.uniform1f(Z(a),b)},ib:function(a,b,e){if(2<=x.version)b&&Y.uniform1fv(Z(a),T,e>>2,b);else{if(288>=b)for(var f=Ld[b-1],h=0;h<b;++h)f[h]=T[e+4*h>>2];else f=
T.subarray(e>>2,e+4*b>>2);Y.uniform1fv(Z(a),f)}},Zc:function(a,b){Y.uniform1i(Z(a),b)},_c:function(a,b,e){if(2<=x.version)b&&Y.uniform1iv(Z(a),Q,e>>2,b);else{if(288>=b)for(var f=Md[b-1],h=0;h<b;++h)f[h]=Q[e+4*h>>2];else f=Q.subarray(e>>2,e+4*b>>2);Y.uniform1iv(Z(a),f)}},$c:function(a,b,e){Y.uniform2f(Z(a),b,e)},ad:function(a,b,e){if(2<=x.version)b&&Y.uniform2fv(Z(a),T,e>>2,2*b);else{if(144>=b)for(var f=Ld[2*b-1],h=0;h<2*b;h+=2)f[h]=T[e+4*h>>2],f[h+1]=T[e+(4*h+4)>>2];else f=T.subarray(e>>2,e+8*b>>
2);Y.uniform2fv(Z(a),f)}},Yc:function(a,b,e){Y.uniform2i(Z(a),b,e)},Xc:function(a,b,e){if(2<=x.version)b&&Y.uniform2iv(Z(a),Q,e>>2,2*b);else{if(144>=b)for(var f=Md[2*b-1],h=0;h<2*b;h+=2)f[h]=Q[e+4*h>>2],f[h+1]=Q[e+(4*h+4)>>2];else f=Q.subarray(e>>2,e+8*b>>2);Y.uniform2iv(Z(a),f)}},Wc:function(a,b,e,f){Y.uniform3f(Z(a),b,e,f)},Vc:function(a,b,e){if(2<=x.version)b&&Y.uniform3fv(Z(a),T,e>>2,3*b);else{if(96>=b)for(var f=Ld[3*b-1],h=0;h<3*b;h+=3)f[h]=T[e+4*h>>2],f[h+1]=T[e+(4*h+4)>>2],f[h+2]=T[e+(4*h+
8)>>2];else f=T.subarray(e>>2,e+12*b>>2);Y.uniform3fv(Z(a),f)}},Uc:function(a,b,e,f){Y.uniform3i(Z(a),b,e,f)},Tc:function(a,b,e){if(2<=x.version)b&&Y.uniform3iv(Z(a),Q,e>>2,3*b);else{if(96>=b)for(var f=Md[3*b-1],h=0;h<3*b;h+=3)f[h]=Q[e+4*h>>2],f[h+1]=Q[e+(4*h+4)>>2],f[h+2]=Q[e+(4*h+8)>>2];else f=Q.subarray(e>>2,e+12*b>>2);Y.uniform3iv(Z(a),f)}},Sc:function(a,b,e,f,h){Y.uniform4f(Z(a),b,e,f,h)},Rc:function(a,b,e){if(2<=x.version)b&&Y.uniform4fv(Z(a),T,e>>2,4*b);else{if(72>=b){var f=Ld[4*b-1],h=T;e>>=
2;for(var m=0;m<4*b;m+=4){var u=e+m;f[m]=h[u];f[m+1]=h[u+1];f[m+2]=h[u+2];f[m+3]=h[u+3]}}else f=T.subarray(e>>2,e+16*b>>2);Y.uniform4fv(Z(a),f)}},Fc:function(a,b,e,f,h){Y.uniform4i(Z(a),b,e,f,h)},Gc:function(a,b,e){if(2<=x.version)b&&Y.uniform4iv(Z(a),Q,e>>2,4*b);else{if(72>=b)for(var f=Md[4*b-1],h=0;h<4*b;h+=4)f[h]=Q[e+4*h>>2],f[h+1]=Q[e+(4*h+4)>>2],f[h+2]=Q[e+(4*h+8)>>2],f[h+3]=Q[e+(4*h+12)>>2];else f=Q.subarray(e>>2,e+16*b>>2);Y.uniform4iv(Z(a),f)}},Hc:function(a,b,e,f){if(2<=x.version)b&&Y.uniformMatrix2fv(Z(a),
!!e,T,f>>2,4*b);else{if(72>=b)for(var h=Ld[4*b-1],m=0;m<4*b;m+=4)h[m]=T[f+4*m>>2],h[m+1]=T[f+(4*m+4)>>2],h[m+2]=T[f+(4*m+8)>>2],h[m+3]=T[f+(4*m+12)>>2];else h=T.subarray(f>>2,f+16*b>>2);Y.uniformMatrix2fv(Z(a),!!e,h)}},Ic:function(a,b,e,f){if(2<=x.version)b&&Y.uniformMatrix3fv(Z(a),!!e,T,f>>2,9*b);else{if(32>=b)for(var h=Ld[9*b-1],m=0;m<9*b;m+=9)h[m]=T[f+4*m>>2],h[m+1]=T[f+(4*m+4)>>2],h[m+2]=T[f+(4*m+8)>>2],h[m+3]=T[f+(4*m+12)>>2],h[m+4]=T[f+(4*m+16)>>2],h[m+5]=T[f+(4*m+20)>>2],h[m+6]=T[f+(4*m+24)>>
2],h[m+7]=T[f+(4*m+28)>>2],h[m+8]=T[f+(4*m+32)>>2];else h=T.subarray(f>>2,f+36*b>>2);Y.uniformMatrix3fv(Z(a),!!e,h)}},Jc:function(a,b,e,f){if(2<=x.version)b&&Y.uniformMatrix4fv(Z(a),!!e,T,f>>2,16*b);else{if(18>=b){var h=Ld[16*b-1],m=T;f>>=2;for(var u=0;u<16*b;u+=16){var n=f+u;h[u]=m[n];h[u+1]=m[n+1];h[u+2]=m[n+2];h[u+3]=m[n+3];h[u+4]=m[n+4];h[u+5]=m[n+5];h[u+6]=m[n+6];h[u+7]=m[n+7];h[u+8]=m[n+8];h[u+9]=m[n+9];h[u+10]=m[n+10];h[u+11]=m[n+11];h[u+12]=m[n+12];h[u+13]=m[n+13];h[u+14]=m[n+14];h[u+15]=
m[n+15]}}else h=T.subarray(f>>2,f+64*b>>2);Y.uniformMatrix4fv(Z(a),!!e,h)}},Kc:function(a){a=nd[a];Y.useProgram(a);Y.If=a},Lc:function(a,b){Y.vertexAttrib1f(a,b)},Mc:function(a,b){Y.vertexAttrib2f(a,T[b>>2],T[b+4>>2])},Nc:function(a,b){Y.vertexAttrib3f(a,T[b>>2],T[b+4>>2],T[b+8>>2])},Oc:function(a,b){Y.vertexAttrib4f(a,T[b>>2],T[b+4>>2],T[b+8>>2],T[b+12>>2])},pc:function(a,b){Y.vertexAttribDivisor(a,b)},qc:function(a,b,e,f,h){Y.vertexAttribIPointer(a,b,e,f,h)},Pc:function(a,b,e,f,h,m){Y.vertexAttribPointer(a,
b,e,!!f,h,m)},Qc:function(a,b,e,f){Y.viewport(a,b,e,f)},lb:function(a,b,e,f){Y.waitSync(td[a],b,(e>>>0)+4294967296*f)},tb:function(a){var b=K.length;a>>>=0;if(2147483648<a)return!1;for(var e=1;4>=e;e*=2){var f=b*(1+.2/e);f=Math.min(f,a+100663296);var h=Math;f=Math.max(a,f);h=h.min.call(h,2147483648,f+(65536-f%65536)%65536);a:{try{Ra.grow(h-kb.byteLength+65535>>>16);ob();var m=1;break a}catch(u){}m=void 0}if(m)return!0}return!1},nb:function(){return x?x.Vf:0},wb:function(a,b){var e=0;Od().forEach(function(f,
h){var m=b+e;h=mb[a+4*h>>2]=m;for(m=0;m<f.length;++m)lb[h++>>0]=f.charCodeAt(m);lb[h>>0]=0;e+=f.length+1});return 0},xb:function(a,b){var e=Od();mb[a>>2]=e.length;var f=0;e.forEach(function(h){f+=h.length+1});mb[b>>2]=f;return 0},Jb:function(a){if(!noExitRuntime){if(w.onExit)w.onExit(a);Sa=!0}xa(a,new Ja(a))},P:function(){return 52},ob:function(){return 52},Cb:function(){return 52},pb:function(){return 70},U:function(a,b,e,f){for(var h=0,m=0;m<e;m++){var u=mb[b>>2],n=mb[b+4>>2];b+=8;for(var q=0;q<
n;q++){var v=K[u+q],E=Qd[a];0===v||10===v?((1===a?La:Ka)(Va(E,0)),E.length=0):E.push(v)}h+=n}mb[f>>2]=h;return 0},b:function(){return Na},l:ae,n:be,m:ce,G:de,Lb:ee,$:fe,_:ge,R:he,o:ie,z:je,v:ke,s:le,Kb:me,Mb:ne,Nb:oe,d:function(a){Na=a},rb:function(a,b,e,f){return Ud(a,b,e,f)}};
(function(){function a(h){w.asm=h.exports;Ra=w.asm.dd;ob();pb=w.asm.gd;rb.unshift(w.asm.ed);ub--;w.monitorRunDependencies&&w.monitorRunDependencies(ub);0==ub&&(null!==vb&&(clearInterval(vb),vb=null),wb&&(h=wb,wb=null,h()))}function b(h){a(h.instance)}function e(h){return Cb().then(function(m){return WebAssembly.instantiate(m,f)}).then(function(m){return m}).then(h,function(m){Ka("failed to asynchronously prepare wasm: "+m);Qa(m)})}var f={a:pe};ub++;w.monitorRunDependencies&&w.monitorRunDependencies(ub);
if(w.instantiateWasm)try{return w.instantiateWasm(f,a)}catch(h){return Ka("Module.instantiateWasm callback failed with error: "+h),!1}(function(){return Oa||"function"!=typeof WebAssembly.instantiateStreaming||yb()||zb.startsWith("file://")||Aa||"function"!=typeof fetch?e(b):fetch(zb,{credentials:"same-origin"}).then(function(h){return WebAssembly.instantiateStreaming(h,f).then(b,function(m){Ka("wasm streaming compile failed: "+m);Ka("falling back to ArrayBuffer instantiation");return e(b)})})})().catch(ea);
return{}})();w.___wasm_call_ctors=function(){return(w.___wasm_call_ctors=w.asm.ed).apply(null,arguments)};var Hd=w._malloc=function(){return(Hd=w._malloc=w.asm.fd).apply(null,arguments)},Mc=w._free=function(){return(Mc=w._free=w.asm.hd).apply(null,arguments)},Lc=w.___getTypeName=function(){return(Lc=w.___getTypeName=w.asm.id).apply(null,arguments)};w.___embind_register_native_and_builtin_types=function(){return(w.___embind_register_native_and_builtin_types=w.asm.jd).apply(null,arguments)};
var qe=w._setThrew=function(){return(qe=w._setThrew=w.asm.kd).apply(null,arguments)},re=w.stackSave=function(){return(re=w.stackSave=w.asm.ld).apply(null,arguments)},se=w.stackRestore=function(){return(se=w.stackRestore=w.asm.md).apply(null,arguments)};w.dynCall_viji=function(){return(w.dynCall_viji=w.asm.nd).apply(null,arguments)};w.dynCall_vijiii=function(){return(w.dynCall_vijiii=w.asm.od).apply(null,arguments)};w.dynCall_viiiiij=function(){return(w.dynCall_viiiiij=w.asm.pd).apply(null,arguments)};
w.dynCall_jiiiijiiiii=function(){return(w.dynCall_jiiiijiiiii=w.asm.qd).apply(null,arguments)};w.dynCall_viiij=function(){return(w.dynCall_viiij=w.asm.rd).apply(null,arguments)};w.dynCall_jii=function(){return(w.dynCall_jii=w.asm.sd).apply(null,arguments)};w.dynCall_vij=function(){return(w.dynCall_vij=w.asm.td).apply(null,arguments)};w.dynCall_iiij=function(){return(w.dynCall_iiij=w.asm.ud).apply(null,arguments)};w.dynCall_iiiij=function(){return(w.dynCall_iiiij=w.asm.vd).apply(null,arguments)};
w.dynCall_viij=function(){return(w.dynCall_viij=w.asm.wd).apply(null,arguments)};w.dynCall_ji=function(){return(w.dynCall_ji=w.asm.xd).apply(null,arguments)};w.dynCall_iij=function(){return(w.dynCall_iij=w.asm.yd).apply(null,arguments)};w.dynCall_jiiiii=function(){return(w.dynCall_jiiiii=w.asm.zd).apply(null,arguments)};w.dynCall_jiiiiii=function(){return(w.dynCall_jiiiiii=w.asm.Ad).apply(null,arguments)};w.dynCall_jiiiiji=function(){return(w.dynCall_jiiiiji=w.asm.Bd).apply(null,arguments)};
w.dynCall_iijj=function(){return(w.dynCall_iijj=w.asm.Cd).apply(null,arguments)};w.dynCall_iiiji=function(){return(w.dynCall_iiiji=w.asm.Dd).apply(null,arguments)};w.dynCall_iiji=function(){return(w.dynCall_iiji=w.asm.Ed).apply(null,arguments)};w.dynCall_iijjiii=function(){return(w.dynCall_iijjiii=w.asm.Fd).apply(null,arguments)};w.dynCall_vijjjii=function(){return(w.dynCall_vijjjii=w.asm.Gd).apply(null,arguments)};w.dynCall_jiji=function(){return(w.dynCall_jiji=w.asm.Hd).apply(null,arguments)};
w.dynCall_viijii=function(){return(w.dynCall_viijii=w.asm.Id).apply(null,arguments)};w.dynCall_iiiiij=function(){return(w.dynCall_iiiiij=w.asm.Jd).apply(null,arguments)};w.dynCall_iiiiijj=function(){return(w.dynCall_iiiiijj=w.asm.Kd).apply(null,arguments)};w.dynCall_iiiiiijj=function(){return(w.dynCall_iiiiiijj=w.asm.Ld).apply(null,arguments)};function be(a,b,e){var f=re();try{return Eb(a)(b,e)}catch(h){se(f);if(h!==h+0)throw h;qe(1,0)}}
function le(a,b,e,f,h){var m=re();try{Eb(a)(b,e,f,h)}catch(u){se(m);if(u!==u+0)throw u;qe(1,0)}}function de(a,b,e,f,h){var m=re();try{return Eb(a)(b,e,f,h)}catch(u){se(m);if(u!==u+0)throw u;qe(1,0)}}function ce(a,b,e,f){var h=re();try{return Eb(a)(b,e,f)}catch(m){se(h);if(m!==m+0)throw m;qe(1,0)}}function ae(a,b){var e=re();try{return Eb(a)(b)}catch(f){se(e);if(f!==f+0)throw f;qe(1,0)}}function ie(a,b){var e=re();try{Eb(a)(b)}catch(f){se(e);if(f!==f+0)throw f;qe(1,0)}}
function ke(a,b,e,f){var h=re();try{Eb(a)(b,e,f)}catch(m){se(h);if(m!==m+0)throw m;qe(1,0)}}function je(a,b,e){var f=re();try{Eb(a)(b,e)}catch(h){se(f);if(h!==h+0)throw h;qe(1,0)}}function oe(a,b,e,f,h,m,u,n,q,v){var E=re();try{Eb(a)(b,e,f,h,m,u,n,q,v)}catch(G){se(E);if(G!==G+0)throw G;qe(1,0)}}function he(a){var b=re();try{Eb(a)()}catch(e){se(b);if(e!==e+0)throw e;qe(1,0)}}function ne(a,b,e,f,h,m,u){var n=re();try{Eb(a)(b,e,f,h,m,u)}catch(q){se(n);if(q!==q+0)throw q;qe(1,0)}}
function ee(a,b,e,f,h,m){var u=re();try{return Eb(a)(b,e,f,h,m)}catch(n){se(u);if(n!==n+0)throw n;qe(1,0)}}function fe(a,b,e,f,h,m,u){var n=re();try{return Eb(a)(b,e,f,h,m,u)}catch(q){se(n);if(q!==q+0)throw q;qe(1,0)}}function me(a,b,e,f,h,m){var u=re();try{Eb(a)(b,e,f,h,m)}catch(n){se(u);if(n!==n+0)throw n;qe(1,0)}}function ge(a,b,e,f,h,m,u,n,q,v){var E=re();try{return Eb(a)(b,e,f,h,m,u,n,q,v)}catch(G){se(E);if(G!==G+0)throw G;qe(1,0)}}var te;
function Ja(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}wb=function ue(){te||ve();te||(wb=ue)};
function ve(){function a(){if(!te&&(te=!0,w.calledRun=!0,!Sa)){Db(rb);da(w);if(w.onRuntimeInitialized)w.onRuntimeInitialized();if(w.postRun)for("function"==typeof w.postRun&&(w.postRun=[w.postRun]);w.postRun.length;){var b=w.postRun.shift();sb.unshift(b)}Db(sb)}}if(!(0<ub)){if(w.preRun)for("function"==typeof w.preRun&&(w.preRun=[w.preRun]);w.preRun.length;)tb();Db(qb);0<ub||(w.setStatus?(w.setStatus("Running..."),setTimeout(function(){setTimeout(function(){w.setStatus("")},1);a()},1)):a())}}
w.run=ve;if(w.preInit)for("function"==typeof w.preInit&&(w.preInit=[w.preInit]);0<w.preInit.length;)w.preInit.pop()();ve();


  return CanvasKitInit.ready
}
);
})();
if (typeof exports === 'object' && typeof module === 'object')
  module.exports = CanvasKitInit;
else if (typeof define === 'function' && define['amd'])
  define([], function() { return CanvasKitInit; });
else if (typeof exports === 'object')
  exports["CanvasKitInit"] = CanvasKitInit;
