deploy: 0cf8430a87
|
After Width: | Height: | Size: 1.4 MiB |
|
After Width: | Height: | Size: 178 KiB |
@ -0,0 +1,74 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Flutter samples</title>
|
||||
<link href="styles.css" rel="stylesheet" media="screen">
|
||||
<link href="https://fonts.googleapis.com/css?family=Google+Sans|Google+Sans+Display|Roboto:300,400,500&display=swap" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<script src="packages/mdc_web/material-components-web.min.js"></script>
|
||||
<script src="https://kit.fontawesome.com/16cc04762e.js"></script>
|
||||
<script defer src="description.dart.js"></script>
|
||||
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-67589403-8"></script>
|
||||
<script>
|
||||
window.dataLayer = window.dataLayer || [];
|
||||
function gtag(){dataLayer.push(arguments);}
|
||||
gtag('js', new Date());
|
||||
gtag('config', 'UA-67589403-8');
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="navbar">
|
||||
<a class="leading" href="./">
|
||||
<img src="images/logos/logo_lockup_flutter_horizontal_wht_96.png" />
|
||||
<span class="title">Samples</span>
|
||||
</a>
|
||||
<div class="nav-items">
|
||||
<a href="https://flutter.dev/">Flutter Home</a>
|
||||
<a href="https://api.flutter.dev/">API Docs</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container">
|
||||
<div class="description-title-row">
|
||||
<h1>Next Gen UI demo</h1>
|
||||
<div class="type-label type-label-bordered">sample</div>
|
||||
</div>
|
||||
<p>By Flutter</p>
|
||||
<div class="toolbar">
|
||||
<div class="buttons">
|
||||
<button class="mdc-button mdc-button--outlined" onclick="window.location.href = 'web/next_gen_ui_demo';"><span class="mdc-button__ripple"></span> Launch App</button><button class="mdc-button mdc-button--outlined" onclick="window.location.href = 'https://github.com/flutter/samples/tree/main/next_gen_ui_demo';">
|
||||
<div class="mdc-button__ripple"></div>
|
||||
<i class="material-icons mdc-button__icon" aria-hidden="true">code</i>
|
||||
<span class="mdc-button__label">Source Code</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="tags-container">
|
||||
<div class="tags-label">
|
||||
<i class="material-icons">local_offer</i>
|
||||
<span>Tags</span>
|
||||
</div>
|
||||
<div class="tags">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="slider-container">
|
||||
<div class="slider-content">
|
||||
<div class="slider-single"><img class="slider-single-image" src="images/next_gen_ui_demo.png" alt="Next Gen UI demo screenshot" /></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="description">
|
||||
<p>A sample version of the Next Generation UI codelab for demoing at I/O Connect</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
<div class="footer">
|
||||
<span>© Flutter 2023</span>
|
||||
</div>
|
||||
|
||||
</html>
|
||||
@ -1 +1 @@
|
||||
9563d0eff0708de363c4381398f5e872
|
||||
d2d6162935309dce9654cc799c96b8ad
|
||||
@ -1 +1 @@
|
||||
9563d0eff0708de363c4381398f5e872
|
||||
d2d6162935309dce9654cc799c96b8ad
|
||||
@ -1 +1 @@
|
||||
95c3e2b9852183996d6553a754760307
|
||||
d984d57b1015afdbafb53ca23e44106e
|
||||
@ -1 +1 @@
|
||||
95c3e2b9852183996d6553a754760307
|
||||
d984d57b1015afdbafb53ca23e44106e
|
||||
@ -1 +1 @@
|
||||
95c3e2b9852183996d6553a754760307
|
||||
d984d57b1015afdbafb53ca23e44106e
|
||||
@ -0,0 +1 @@
|
||||
d2d6162935309dce9654cc799c96b8ad
|
||||
@ -0,0 +1 @@
|
||||
{"assets/fonts/Exo-Bold.ttf":["assets/fonts/Exo-Bold.ttf"],"assets/fonts/Exo-Medium.ttf":["assets/fonts/Exo-Medium.ttf"],"assets/fonts/OFL.txt":["assets/fonts/OFL.txt"],"assets/images/bg-base.jpg":["assets/images/bg-base.jpg"],"assets/images/bg-light-receive.png":["assets/images/bg-light-receive.png"],"assets/images/button-start-hover.png":["assets/images/button-start-hover.png"],"assets/images/button-start.png":["assets/images/button-start.png"],"assets/images/fg-base.png":["assets/images/fg-base.png"],"assets/images/fg-light-emit.png":["assets/images/fg-light-emit.png"],"assets/images/fg-light-receive.png":["assets/images/fg-light-receive.png"],"assets/images/mg-base.png":["assets/images/mg-base.png"],"assets/images/mg-light-emit.png":["assets/images/mg-light-emit.png"],"assets/images/mg-light-receive.png":["assets/images/mg-light-receive.png"],"assets/images/particle-wave.png":["assets/images/particle-wave.png"],"assets/images/select-left.png":["assets/images/select-left.png"],"assets/images/select-right.png":["assets/images/select-right.png"],"assets/shaders/orb_shader.frag":["assets/shaders/orb_shader.frag"],"assets/shaders/ui_glitch.frag":["assets/shaders/ui_glitch.frag"],"packages/cupertino_icons/assets/CupertinoIcons.ttf":["packages/cupertino_icons/assets/CupertinoIcons.ttf"]}
|
||||
@ -0,0 +1 @@
|
||||
[{"family":"MaterialIcons","fonts":[{"asset":"fonts/MaterialIcons-Regular.otf"}]},{"family":"Exo","fonts":[{"asset":"assets/fonts/Exo-Bold.ttf"},{"asset":"assets/fonts/Exo-Medium.ttf"}]},{"family":"packages/cupertino_icons/CupertinoIcons","fonts":[{"asset":"packages/cupertino_icons/assets/CupertinoIcons.ttf"}]}]
|
||||
@ -0,0 +1,93 @@
|
||||
Copyright 2017 The Exo Project Authors (https://github.com/NDISCOVER/Exo-1.0)
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is copied below, and is also available with a FAQ at:
|
||||
http://scripts.sil.org/OFL
|
||||
|
||||
|
||||
-----------------------------------------------------------
|
||||
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||
-----------------------------------------------------------
|
||||
|
||||
PREAMBLE
|
||||
The goals of the Open Font License (OFL) are to stimulate worldwide
|
||||
development of collaborative font projects, to support the font creation
|
||||
efforts of academic and linguistic communities, and to provide a free and
|
||||
open framework in which fonts may be shared and improved in partnership
|
||||
with others.
|
||||
|
||||
The OFL allows the licensed fonts to be used, studied, modified and
|
||||
redistributed freely as long as they are not sold by themselves. The
|
||||
fonts, including any derivative works, can be bundled, embedded,
|
||||
redistributed and/or sold with any software provided that any reserved
|
||||
names are not used by derivative works. The fonts and derivatives,
|
||||
however, cannot be released under any other type of license. The
|
||||
requirement for fonts to remain under this license does not apply
|
||||
to any document created using the fonts or their derivatives.
|
||||
|
||||
DEFINITIONS
|
||||
"Font Software" refers to the set of files released by the Copyright
|
||||
Holder(s) under this license and clearly marked as such. This may
|
||||
include source files, build scripts and documentation.
|
||||
|
||||
"Reserved Font Name" refers to any names specified as such after the
|
||||
copyright statement(s).
|
||||
|
||||
"Original Version" refers to the collection of Font Software components as
|
||||
distributed by the Copyright Holder(s).
|
||||
|
||||
"Modified Version" refers to any derivative made by adding to, deleting,
|
||||
or substituting -- in part or in whole -- any of the components of the
|
||||
Original Version, by changing formats or by porting the Font Software to a
|
||||
new environment.
|
||||
|
||||
"Author" refers to any designer, engineer, programmer, technical
|
||||
writer or other person who contributed to the Font Software.
|
||||
|
||||
PERMISSION & CONDITIONS
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
||||
redistribute, and sell modified and unmodified copies of the Font
|
||||
Software, subject to the following conditions:
|
||||
|
||||
1) Neither the Font Software nor any of its individual components,
|
||||
in Original or Modified Versions, may be sold by itself.
|
||||
|
||||
2) Original or Modified Versions of the Font Software may be bundled,
|
||||
redistributed and/or sold with any software, provided that each copy
|
||||
contains the above copyright notice and this license. These can be
|
||||
included either as stand-alone text files, human-readable headers or
|
||||
in the appropriate machine-readable metadata fields within text or
|
||||
binary files as long as those fields can be easily viewed by the user.
|
||||
|
||||
3) No Modified Version of the Font Software may use the Reserved Font
|
||||
Name(s) unless explicit written permission is granted by the corresponding
|
||||
Copyright Holder. This restriction only applies to the primary font name as
|
||||
presented to the users.
|
||||
|
||||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
||||
Software shall not be used to promote, endorse or advertise any
|
||||
Modified Version, except to acknowledge the contribution(s) of the
|
||||
Copyright Holder(s) and the Author(s) or with their explicit written
|
||||
permission.
|
||||
|
||||
5) The Font Software, modified or unmodified, in part or in whole,
|
||||
must be distributed entirely under this license, and must not be
|
||||
distributed under any other license. The requirement for fonts to
|
||||
remain under this license does not apply to any document created
|
||||
using the Font Software.
|
||||
|
||||
TERMINATION
|
||||
This license becomes null and void if any of the above conditions are
|
||||
not met.
|
||||
|
||||
DISCLAIMER
|
||||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
||||
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
||||
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
||||
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
||||
OTHER DEALINGS IN THE FONT SOFTWARE.
|
||||
|
After Width: | Height: | Size: 34 KiB |
|
After Width: | Height: | Size: 201 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 38 KiB |
|
After Width: | Height: | Size: 84 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 241 KiB |
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 62 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
@ -0,0 +1,34 @@
|
||||
{
|
||||
"sksl": "// This SkSL shader is autogenerated by spirv-cross.\n\nfloat4 flutter_FragCoord;\n\nuniform vec2 uResolution;\nuniform float uTime;\nuniform shader uTex;\nuniform half2 uTex_size;\n\nvec4 oColor;\n\nvec2 FLT_flutter_local_FlutterFragCoord()\n{\n return flutter_FragCoord.xy;\n}\n\nfloat FLT_flutter_local_cubicPulse(float c, float w, inout float x)\n{\n x = abs(x - c);\n if (x > w)\n {\n return 0.0;\n }\n x /= w;\n return 1.0 - ((x * x) * (3.0 - (2.0 * x)));\n}\n\nfloat FLT_flutter_local_twoSin(inout float x)\n{\n x = (6.4899997711181640625 * x) - 0.64999997615814208984375;\n float t = ((-0.699999988079071044921875) * sin(6.80000019073486328125 * x)) + (1.39999997615814208984375 * sin(2.900000095367431640625 * x));\n t = (t / 4.099999904632568359375) + 0.5;\n return t;\n}\n\nfloat FLT_flutter_local_hash_1d(float v)\n{\n float u = 50.0 * sin(v * 3000.0);\n return (2.0 * fract((2.0 * u) * u)) - 1.0;\n}\n\nvoid FLT_main()\n{\n vec2 uv = vec2(FLT_flutter_local_FlutterFragCoord()) / uResolution;\n float param = 0.5;\n float param_1 = 0.0500000007450580596923828125;\n float param_2 = fract(uTime / 4.0);\n float _127 = FLT_flutter_local_cubicPulse(param, param_1, param_2);\n float t_2 = _127;\n float param_3 = fract(uTime / 5.0);\n float _134 = FLT_flutter_local_twoSin(param_3);\n float t_1 = _134;\n float glitchScale = mix(0.0, 8.0, t_1 + t_2);\n float aberrationSize = mix(0.0, 5.0, t_1 + t_2);\n float param_4 = uv.y;\n float h = FLT_flutter_local_hash_1d(param_4);\n float hs = sign(h);\n h = max(h, 0.0);\n h *= h;\n h = floor(h + float(0.5)) * hs;\n uv += (vec2(h * glitchScale, 0.0) / uResolution);\n vec2 redOffset = vec2(aberrationSize, 0.0) / uResolution;\n vec2 greenOffset = vec2(0.0) / uResolution;\n vec2 blueOffset = vec2(-aberrationSize, 0.0) / uResolution;\n vec2 redUv = uv + redOffset;\n vec2 greenUv = uv + greenOffset;\n vec2 blueUv = uv + blueOffset;\n vec2 ra = uTex.eval(uTex_size * redUv).xw;\n vec2 ga = uTex.eval(uTex_size * greenUv).yw;\n vec2 ba = uTex.eval(uTex_size * blueUv).zw;\n ra.x /= ra.y;\n ga.x /= ga.y;\n ba.x /= ba.y;\n float alpha = max(ra.y, max(ga.y, ba.y));\n oColor = vec4(ra.x, ga.x, ba.x, 1.0) * alpha;\n}\n\nhalf4 main(float2 iFragCoord)\n{\n flutter_FragCoord = float4(iFragCoord, 0, 0);\n FLT_main();\n return oColor;\n}\n",
|
||||
"stage": 1,
|
||||
"target_platform": 2,
|
||||
"uniforms": [
|
||||
{
|
||||
"array_elements": 0,
|
||||
"bit_width": 32,
|
||||
"columns": 1,
|
||||
"location": 0,
|
||||
"name": "uResolution",
|
||||
"rows": 2,
|
||||
"type": 10
|
||||
},
|
||||
{
|
||||
"array_elements": 0,
|
||||
"bit_width": 32,
|
||||
"columns": 1,
|
||||
"location": 1,
|
||||
"name": "uTime",
|
||||
"rows": 1,
|
||||
"type": 10
|
||||
},
|
||||
{
|
||||
"array_elements": 0,
|
||||
"bit_width": 0,
|
||||
"columns": 1,
|
||||
"location": 2,
|
||||
"name": "uTex",
|
||||
"rows": 1,
|
||||
"type": 12
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -0,0 +1,224 @@
|
||||
|
||||
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 r;r||(r=typeof CanvasKitInit !== 'undefined' ? CanvasKitInit : {});var aa=Object.assign,ba,ca;r.ready=new Promise(function(a,b){ba=a;ca=b});
|
||||
(function(a){a.Rd=a.Rd||[];a.Rd.push(function(){a.MakeSWCanvasSurface=function(b){var c=b;if("CANVAS"!==c.tagName&&(c=document.getElementById(b),!c))throw"Canvas with id "+b+" was not found";if(b=a.MakeSurface(c.width,c.height))b.pe=c;return b};a.MakeCanvasSurface||(a.MakeCanvasSurface=a.MakeSWCanvasSurface);a.MakeSurface=function(b,c){var e={width:b,height:c,colorType:a.ColorType.RGBA_8888,alphaType:a.AlphaType.Unpremul,colorSpace:a.ColorSpace.SRGB},f=b*c*4,k=a._malloc(f);if(e=a.Surface._makeRasterDirect(e,
|
||||
k,4*b))e.pe=null,e.Ve=b,e.Se=c,e.Te=f,e.ze=k,e.getCanvas().clear(a.TRANSPARENT);return e};a.MakeRasterDirectSurface=function(b,c,e){return a.Surface._makeRasterDirect(b,c.byteOffset,e)};a.Surface.prototype.flush=function(b){a.Od(this.Nd);this._flush();if(this.pe){var c=new Uint8ClampedArray(a.HEAPU8.buffer,this.ze,this.Te);c=new ImageData(c,this.Ve,this.Se);b?this.pe.getContext("2d").putImageData(c,0,0,b[0],b[1],b[2]-b[0],b[3]-b[1]):this.pe.getContext("2d").putImageData(c,0,0)}};a.Surface.prototype.dispose=
|
||||
function(){this.ze&&a._free(this.ze);this.delete()};a.Od=a.Od||function(){};a.qe=a.qe||function(){return null}})})(r);
|
||||
(function(a){a.Rd=a.Rd||[];a.Rd.push(function(){function b(n,q,x){return n&&n.hasOwnProperty(q)?n[q]:x}function c(n){var q=ea(fa);fa[q]=n;return q}function e(n){return n.naturalHeight||n.videoHeight||n.displayHeight||n.height}function f(n){return n.naturalWidth||n.videoWidth||n.displayWidth||n.width}function k(n,q,x,y){n.bindTexture(n.TEXTURE_2D,q);y||x.alphaType!==a.AlphaType.Premul||n.pixelStorei(n.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);return q}function l(n,q,x){x||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 x={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)};x.majorVersion=q&&q.majorVersion?q.majorVersion:"undefined"!==typeof WebGL2RenderingContext?2:1;if(x.explicitSwapControl)throw"explicitSwapControl is not supported";n=ha(n,x);if(!n)return 0;ia(n);t.Zd.getExtension("WEBGL_debug_renderer_info");return n};a.deleteContext=function(n){t===ja[n]&&(t=null);"object"===typeof JSEvents&&
|
||||
JSEvents.Nf(ja[n].Zd.canvas);ja[n]&&ja[n].Zd.canvas&&(ja[n].Zd.canvas.Qe=void 0);ja[n]=null};a._setTextureCleanup({deleteTexture:function(n,q){var x=fa[q];x&&ja[n].Zd.deleteTexture(x);fa[q]=null}});a.MakeWebGLContext=function(n){if(!this.Od(n))return null;var q=this._MakeGrContext();if(!q)return null;q.Nd=n;var x=q.delete.bind(q);q["delete"]=function(){a.Od(this.Nd);x()}.bind(q);return t.Ce=q};a.MakeGrContext=a.MakeWebGLContext;a.GrDirectContext.prototype.getResourceCacheLimitBytes=function(){a.Od(this.Nd);
|
||||
this._getResourceCacheLimitBytes()};a.GrDirectContext.prototype.getResourceCacheUsageBytes=function(){a.Od(this.Nd);this._getResourceCacheUsageBytes()};a.GrDirectContext.prototype.releaseResourcesAndAbandonContext=function(){a.Od(this.Nd);this._releaseResourcesAndAbandonContext()};a.GrDirectContext.prototype.setResourceCacheLimitBytes=function(n){a.Od(this.Nd);this._setResourceCacheLimitBytes(n)};a.MakeOnScreenGLSurface=function(n,q,x,y,C,E){if(!this.Od(n.Nd))return null;q=void 0===C||void 0===E?
|
||||
this._MakeOnScreenGLSurface(n,q,x,y):this._MakeOnScreenGLSurface(n,q,x,y,C,E);if(!q)return null;q.Nd=n.Nd;return q};a.MakeRenderTarget=function(){var n=arguments[0];if(!this.Od(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,x){q=q||null;var y=n,C="undefined"!==
|
||||
typeof OffscreenCanvas&&y instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&y instanceof HTMLCanvasElement||C||(y=document.getElementById(n),y)))throw"Canvas with id "+n+" was not found";n=this.GetWebGLContext(y,x);if(!n||0>n)throw"failed to create webgl context: err "+n;n=this.MakeWebGLContext(n);q=this.MakeOnScreenGLSurface(n,y.width,y.height,q);return q?q:(q=y.cloneNode(!0),y.parentNode.replaceChild(q,y),q.classList.add("ck-replaced"),a.MakeSWCanvasSurface(q))};a.MakeCanvasSurface=
|
||||
a.MakeWebGLCanvasSurface;a.Surface.prototype.makeImageFromTexture=function(n,q){a.Od(this.Nd);n=c(n);if(q=this._makeImageFromTexture(this.Nd,n,q))q.je=n;return q};a.Surface.prototype.makeImageFromTextureSource=function(n,q,x){q||(q={height:e(n),width:f(n),colorType:a.ColorType.RGBA_8888,alphaType:x?a.AlphaType.Premul:a.AlphaType.Unpremul});q.colorSpace||(q.colorSpace=a.ColorSpace.SRGB);a.Od(this.Nd);var y=t.Zd;x=k(y,y.createTexture(),q,x);2===t.version?y.texImage2D(y.TEXTURE_2D,0,y.RGBA,q.width,q.height,
|
||||
0,y.RGBA,y.UNSIGNED_BYTE,n):y.texImage2D(y.TEXTURE_2D,0,y.RGBA,y.RGBA,y.UNSIGNED_BYTE,n);l(y,q);this._resetContext();return this.makeImageFromTexture(x,q)};a.Surface.prototype.updateTextureFromSource=function(n,q,x){if(n.je){a.Od(this.Nd);var y=n.getImageInfo(),C=t.Zd,E=k(C,fa[n.je],y,x);2===t.version?C.texImage2D(C.TEXTURE_2D,0,C.RGBA,f(q),e(q),0,C.RGBA,C.UNSIGNED_BYTE,q):C.texImage2D(C.TEXTURE_2D,0,C.RGBA,C.RGBA,C.UNSIGNED_BYTE,q);l(C,y,x);this._resetContext();fa[n.je]=null;n.je=c(E);y.colorSpace=
|
||||
n.getColorSpace();q=this._makeImageFromTexture(this.Nd,n.je,y);x=n.Md.Pd;C=n.Md.Ud;n.Md.Pd=q.Md.Pd;n.Md.Ud=q.Md.Ud;q.Md.Pd=x;q.Md.Ud=C;q.delete();y.colorSpace.delete()}};a.MakeLazyImageFromTextureSource=function(n,q,x){q||(q={height:e(n),width:f(n),colorType:a.ColorType.RGBA_8888,alphaType:x?a.AlphaType.Premul:a.AlphaType.Unpremul});q.colorSpace||(q.colorSpace=a.ColorSpace.SRGB);var y={makeTexture:function(){var C=t,E=C.Zd,v=k(E,E.createTexture(),q,x);2===C.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);l(E,q,x);return c(v)},freeSrc:function(){}};"VideoFrame"===n.constructor.name&&(y.freeSrc=function(){n.close()});return a.Image._makeFromGenerator(q,y)};a.Od=function(n){return n?ia(n):!1};a.qe=function(){return t&&t.Ce&&!t.Ce.isDeleted()?t.Ce:null}})})(r);
|
||||
(function(a){function b(g){return(f(255*g[3])<<24|f(255*g[0])<<16|f(255*g[1])<<8|f(255*g[2])<<0)>>>0}function c(g){if(g&&g._ck)return g;if(g instanceof Float32Array){for(var d=Math.floor(g.length/4),h=new Uint32Array(d),m=0;m<d;m++)h[m]=b(g.slice(4*m,4*(m+1)));return h}if(g instanceof Uint32Array)return g;if(g instanceof Array&&g[0]instanceof Float32Array)return g.map(b)}function e(g){if(void 0===g)return 1;var d=parseFloat(g);return g&&-1!==g.indexOf("%")?d/100:d}function f(g){return Math.round(Math.max(0,
|
||||
Math.min(g||0,255)))}function k(g,d){d&&d._ck||a._free(g)}function l(g,d,h){if(!g||!g.length)return M;if(g&&g._ck)return g.byteOffset;var m=a[d].BYTES_PER_ELEMENT;h||(h=a._malloc(g.length*m));a[d].set(g,h/m);return h}function n(g){var d={Wd:M,count:g.length,ke:a.ColorType.RGBA_F32};if(g instanceof Float32Array)d.Wd=l(g,"HEAPF32"),d.count=g.length/4;else if(g instanceof Uint32Array)d.Wd=l(g,"HEAPU32"),d.ke=a.ColorType.RGBA_8888;else if(g instanceof Array){if(g&&g.length){for(var h=a._malloc(16*g.length),
|
||||
m=0,u=h/4,w=0;w<g.length;w++)for(var z=0;4>z;z++)a.HEAPF32[u+m]=g[w][z],m++;g=h}else g=M;d.Wd=g}else throw"Invalid argument to copyFlexibleColorArray, Not a color array "+typeof g;return d}function q(g){if(!g)return M;var d=R.toTypedArray();if(g.length){if(6===g.length||9===g.length)return l(g,"HEAPF32",I),6===g.length&&a.HEAPF32.set(od,6+I/4),I;if(16===g.length)return d[0]=g[0],d[1]=g[1],d[2]=g[3],d[3]=g[4],d[4]=g[5],d[5]=g[7],d[6]=g[12],d[7]=g[13],d[8]=g[15],I;throw"invalid matrix size";}if(void 0===
|
||||
g.m11)throw"invalid matrix argument";d[0]=g.m11;d[1]=g.m21;d[2]=g.m41;d[3]=g.m12;d[4]=g.m22;d[5]=g.m42;d[6]=g.m14;d[7]=g.m24;d[8]=g.m44;return I}function x(g){if(!g)return M;var d=da.toTypedArray();if(g.length){if(16!==g.length&&6!==g.length&&9!==g.length)throw"invalid matrix size";if(16===g.length)return l(g,"HEAPF32",Z);d.fill(0);d[0]=g[0];d[1]=g[1];d[3]=g[2];d[4]=g[3];d[5]=g[4];d[7]=g[5];d[10]=1;d[12]=g[6];d[13]=g[7];d[15]=g[8];6===g.length&&(d[12]=0,d[13]=0,d[15]=1);return Z}if(void 0===g.m11)throw"invalid matrix argument";
|
||||
d[0]=g.m11;d[1]=g.m21;d[2]=g.m31;d[3]=g.m41;d[4]=g.m12;d[5]=g.m22;d[6]=g.m32;d[7]=g.m42;d[8]=g.m13;d[9]=g.m23;d[10]=g.m33;d[11]=g.m43;d[12]=g.m14;d[13]=g.m24;d[14]=g.m34;d[15]=g.m44;return Z}function y(g,d){return l(g,"HEAPF32",d||ua)}function C(g,d,h,m){var u=Ma.toTypedArray();u[0]=g;u[1]=d;u[2]=h;u[3]=m;return ua}function E(g){for(var d=new Float32Array(4),h=0;4>h;h++)d[h]=a.HEAPF32[g/4+h];return d}function v(g,d){return l(g,"HEAPF32",d||V)}function D(g,d){return l(g,"HEAPF32",d||Gb)}a.Color=function(g,
|
||||
d,h,m){void 0===m&&(m=1);return a.Color4f(f(g)/255,f(d)/255,f(h)/255,m)};a.ColorAsInt=function(g,d,h,m){void 0===m&&(m=255);return(f(m)<<24|f(g)<<16|f(d)<<8|f(h)<<0&268435455)>>>0};a.Color4f=function(g,d,h,m){void 0===m&&(m=1);return Float32Array.of(g,d,h,m)};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(g){return[Math.floor(255*g[0]),Math.floor(255*
|
||||
g[1]),Math.floor(255*g[2]),g[3]]};a.parseColorString=function(g,d){g=g.toLowerCase();if(g.startsWith("#")){d=255;switch(g.length){case 9:d=parseInt(g.slice(7,9),16);case 7:var h=parseInt(g.slice(1,3),16);var m=parseInt(g.slice(3,5),16);var u=parseInt(g.slice(5,7),16);break;case 5:d=17*parseInt(g.slice(4,5),16);case 4:h=17*parseInt(g.slice(1,2),16),m=17*parseInt(g.slice(2,3),16),u=17*parseInt(g.slice(3,4),16)}return a.Color(h,m,u,d/255)}return g.startsWith("rgba")?(g=g.slice(5,-1),g=g.split(","),a.Color(+g[0],
|
||||
+g[1],+g[2],e(g[3]))):g.startsWith("rgb")?(g=g.slice(4,-1),g=g.split(","),a.Color(+g[0],+g[1],+g[2],e(g[3]))):g.startsWith("gray(")||g.startsWith("hsl")||!d||(g=d[g],void 0===g)?a.BLACK:g};a.multiplyByAlpha=function(g,d){g=g.slice();g[3]=Math.max(0,Math.min(g[3]*d,1));return g};a.Malloc=function(g,d){var h=a._malloc(d*g.BYTES_PER_ELEMENT);return{_ck:!0,length:d,byteOffset:h,ce:null,subarray:function(m,u){m=this.toTypedArray().subarray(m,u);m._ck=!0;return m},toTypedArray:function(){if(this.ce&&this.ce.length)return this.ce;
|
||||
this.ce=new g(a.HEAPU8.buffer,h,d);this.ce._ck=!0;return this.ce}}};a.Free=function(g){a._free(g.byteOffset);g.byteOffset=M;g.toTypedArray=null;g.ce=null};var I=M,R,Z=M,da,ua=M,Ma,va,V=M,pc,Ba=M,qc,Hb=M,rc,Ib=M,Jb,gb=M,sc,Gb=M,tc,uc=M,od=Float32Array.of(0,0,1),M=0;a.onRuntimeInitialized=function(){function g(d,h,m,u,w,z,F){z||(z=4*u.width,u.colorType===a.ColorType.RGBA_F16?z*=2:u.colorType===a.ColorType.RGBA_F32&&(z*=4));var K=z*u.height;var H=w?w.byteOffset:a._malloc(K);if(F?!d._readPixels(u,H,z,
|
||||
h,m,F):!d._readPixels(u,H,z,h,m))return w||a._free(H),null;if(w)return w.toTypedArray();switch(u.colorType){case a.ColorType.RGBA_8888:case a.ColorType.RGBA_F16:d=(new Uint8Array(a.HEAPU8.buffer,H,K)).slice();break;case a.ColorType.RGBA_F32:d=(new Float32Array(a.HEAPU8.buffer,H,K)).slice();break;default:return null}a._free(H);return d}Ma=a.Malloc(Float32Array,4);ua=Ma.byteOffset;da=a.Malloc(Float32Array,16);Z=da.byteOffset;R=a.Malloc(Float32Array,9);I=R.byteOffset;sc=a.Malloc(Float32Array,12);Gb=
|
||||
sc.byteOffset;tc=a.Malloc(Float32Array,12);uc=tc.byteOffset;va=a.Malloc(Float32Array,4);V=va.byteOffset;pc=a.Malloc(Float32Array,4);Ba=pc.byteOffset;qc=a.Malloc(Float32Array,3);Hb=qc.byteOffset;rc=a.Malloc(Float32Array,3);Ib=rc.byteOffset;Jb=a.Malloc(Int32Array,4);gb=Jb.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(d){var h=l(d,"HEAPF32"),m=a.Path._MakeFromCmds(h,d.length);k(h,d);return m};a.Path.MakeFromVerbsPointsWeights=function(d,h,m){var u=l(d,"HEAPU8"),w=l(h,"HEAPF32"),z=l(m,"HEAPF32"),F=a.Path._MakeFromVerbsPointsWeights(u,d.length,w,h.length,z,m&&m.length||0);k(u,d);k(w,h);k(z,m);return F};a.Path.prototype.addArc=function(d,h,m){d=v(d);this._addArc(d,h,m);return this};a.Path.prototype.addCircle=function(d,h,m,u){this._addCircle(d,h,m,!!u);return this};a.Path.prototype.addOval=function(d,h,m){void 0===
|
||||
m&&(m=1);d=v(d);this._addOval(d,!!h,m);return this};a.Path.prototype.addPath=function(){var d=Array.prototype.slice.call(arguments),h=d[0],m=!1;"boolean"===typeof d[d.length-1]&&(m=d.pop());if(1===d.length)this._addPath(h,1,0,0,0,1,0,0,0,1,m);else if(2===d.length)d=d[1],this._addPath(h,d[0],d[1],d[2],d[3],d[4],d[5],d[6]||0,d[7]||0,d[8]||1,m);else if(7===d.length||10===d.length)this._addPath(h,d[1],d[2],d[3],d[4],d[5],d[6],d[7]||0,d[8]||0,d[9]||1,m);else return null;return this};a.Path.prototype.addPoly=
|
||||
function(d,h){var m=l(d,"HEAPF32");this._addPoly(m,d.length/2,h);k(m,d);return this};a.Path.prototype.addRect=function(d,h){d=v(d);this._addRect(d,!!h);return this};a.Path.prototype.addRRect=function(d,h){d=D(d);this._addRRect(d,!!h);return this};a.Path.prototype.addVerbsPointsWeights=function(d,h,m){var u=l(d,"HEAPU8"),w=l(h,"HEAPF32"),z=l(m,"HEAPF32");this._addVerbsPointsWeights(u,d.length,w,h.length,z,m&&m.length||0);k(u,d);k(w,h);k(z,m)};a.Path.prototype.arc=function(d,h,m,u,w,z){d=a.LTRBRect(d-
|
||||
m,h-m,d+m,h+m);w=(w-u)/Math.PI*180-360*!!z;z=new a.Path;z.addArc(d,u/Math.PI*180,w);this.addPath(z,!0);z.delete();return this};a.Path.prototype.arcToOval=function(d,h,m,u){d=v(d);this._arcToOval(d,h,m,u);return this};a.Path.prototype.arcToRotated=function(d,h,m,u,w,z,F){this._arcToRotated(d,h,m,!!u,!!w,z,F);return this};a.Path.prototype.arcToTangent=function(d,h,m,u,w){this._arcToTangent(d,h,m,u,w);return this};a.Path.prototype.close=function(){this._close();return this};a.Path.prototype.conicTo=
|
||||
function(d,h,m,u,w){this._conicTo(d,h,m,u,w);return this};a.Path.prototype.computeTightBounds=function(d){this._computeTightBounds(V);var h=va.toTypedArray();return d?(d.set(h),d):h.slice()};a.Path.prototype.cubicTo=function(d,h,m,u,w,z){this._cubicTo(d,h,m,u,w,z);return this};a.Path.prototype.dash=function(d,h,m){return this._dash(d,h,m)?this:null};a.Path.prototype.getBounds=function(d){this._getBounds(V);var h=va.toTypedArray();return d?(d.set(h),d):h.slice()};a.Path.prototype.lineTo=function(d,
|
||||
h){this._lineTo(d,h);return this};a.Path.prototype.moveTo=function(d,h){this._moveTo(d,h);return this};a.Path.prototype.offset=function(d,h){this._transform(1,0,d,0,1,h,0,0,1);return this};a.Path.prototype.quadTo=function(d,h,m,u){this._quadTo(d,h,m,u);return this};a.Path.prototype.rArcTo=function(d,h,m,u,w,z,F){this._rArcTo(d,h,m,u,w,z,F);return this};a.Path.prototype.rConicTo=function(d,h,m,u,w){this._rConicTo(d,h,m,u,w);return this};a.Path.prototype.rCubicTo=function(d,h,m,u,w,z){this._rCubicTo(d,
|
||||
h,m,u,w,z);return this};a.Path.prototype.rLineTo=function(d,h){this._rLineTo(d,h);return this};a.Path.prototype.rMoveTo=function(d,h){this._rMoveTo(d,h);return this};a.Path.prototype.rQuadTo=function(d,h,m,u){this._rQuadTo(d,h,m,u);return this};a.Path.prototype.stroke=function(d){d=d||{};d.width=d.width||1;d.miter_limit=d.miter_limit||4;d.cap=d.cap||a.StrokeCap.Butt;d.join=d.join||a.StrokeJoin.Miter;d.precision=d.precision||1;return this._stroke(d)?this:null};a.Path.prototype.transform=function(){if(1===
|
||||
arguments.length){var d=arguments[0];this._transform(d[0],d[1],d[2],d[3],d[4],d[5],d[6]||0,d[7]||0,d[8]||1)}else if(6===arguments.length||9===arguments.length)d=arguments,this._transform(d[0],d[1],d[2],d[3],d[4],d[5],d[6]||0,d[7]||0,d[8]||1);else throw"transform expected to take 1 or 9 arguments. Got "+arguments.length;return this};a.Path.prototype.trim=function(d,h,m){return this._trim(d,h,!!m)?this:null};a.Image.prototype.encodeToBytes=function(d,h){var m=a.qe();d=d||a.ImageFormat.PNG;h=h||100;
|
||||
return m?this._encodeToBytes(d,h,m):this._encodeToBytes(d,h)};a.Image.prototype.makeShaderCubic=function(d,h,m,u,w){w=q(w);return this._makeShaderCubic(d,h,m,u,w)};a.Image.prototype.makeShaderOptions=function(d,h,m,u,w){w=q(w);return this._makeShaderOptions(d,h,m,u,w)};a.Image.prototype.readPixels=function(d,h,m,u,w){var z=a.qe();return g(this,d,h,m,u,w,z)};a.Canvas.prototype.clear=function(d){a.Od(this.Nd);d=y(d);this._clear(d)};a.Canvas.prototype.clipRRect=function(d,h,m){a.Od(this.Nd);d=D(d);this._clipRRect(d,
|
||||
h,m)};a.Canvas.prototype.clipRect=function(d,h,m){a.Od(this.Nd);d=v(d);this._clipRect(d,h,m)};a.Canvas.prototype.concat=function(d){a.Od(this.Nd);d=x(d);this._concat(d)};a.Canvas.prototype.drawArc=function(d,h,m,u,w){a.Od(this.Nd);d=v(d);this._drawArc(d,h,m,u,w)};a.Canvas.prototype.drawAtlas=function(d,h,m,u,w,z,F){if(d&&u&&h&&m&&h.length===m.length){a.Od(this.Nd);w||(w=a.BlendMode.SrcOver);var K=l(h,"HEAPF32"),H=l(m,"HEAPF32"),S=m.length/4,p=l(c(z),"HEAPU32");if(F&&"B"in F&&"C"in F)this._drawAtlasCubic(d,
|
||||
H,K,p,S,w,F.B,F.C,u);else{let A=a.FilterMode.Linear,L=a.MipmapMode.None;F&&(A=F.filter,"mipmap"in F&&(L=F.mipmap));this._drawAtlasOptions(d,H,K,p,S,w,A,L,u)}k(K,h);k(H,m);k(p,z)}};a.Canvas.prototype.drawCircle=function(d,h,m,u){a.Od(this.Nd);this._drawCircle(d,h,m,u)};a.Canvas.prototype.drawColor=function(d,h){a.Od(this.Nd);d=y(d);void 0!==h?this._drawColor(d,h):this._drawColor(d)};a.Canvas.prototype.drawColorInt=function(d,h){a.Od(this.Nd);this._drawColorInt(d,h||a.BlendMode.SrcOver)};a.Canvas.prototype.drawColorComponents=
|
||||
function(d,h,m,u,w){a.Od(this.Nd);d=C(d,h,m,u);void 0!==w?this._drawColor(d,w):this._drawColor(d)};a.Canvas.prototype.drawDRRect=function(d,h,m){a.Od(this.Nd);d=D(d,Gb);h=D(h,uc);this._drawDRRect(d,h,m)};a.Canvas.prototype.drawImage=function(d,h,m,u){a.Od(this.Nd);this._drawImage(d,h,m,u||null)};a.Canvas.prototype.drawImageCubic=function(d,h,m,u,w,z){a.Od(this.Nd);this._drawImageCubic(d,h,m,u,w,z||null)};a.Canvas.prototype.drawImageOptions=function(d,h,m,u,w,z){a.Od(this.Nd);this._drawImageOptions(d,
|
||||
h,m,u,w,z||null)};a.Canvas.prototype.drawImageNine=function(d,h,m,u,w){a.Od(this.Nd);h=l(h,"HEAP32",gb);m=v(m);this._drawImageNine(d,h,m,u,w||null)};a.Canvas.prototype.drawImageRect=function(d,h,m,u,w){a.Od(this.Nd);v(h,V);v(m,Ba);this._drawImageRect(d,V,Ba,u,!!w)};a.Canvas.prototype.drawImageRectCubic=function(d,h,m,u,w,z){a.Od(this.Nd);v(h,V);v(m,Ba);this._drawImageRectCubic(d,V,Ba,u,w,z||null)};a.Canvas.prototype.drawImageRectOptions=function(d,h,m,u,w,z){a.Od(this.Nd);v(h,V);v(m,Ba);this._drawImageRectOptions(d,
|
||||
V,Ba,u,w,z||null)};a.Canvas.prototype.drawLine=function(d,h,m,u,w){a.Od(this.Nd);this._drawLine(d,h,m,u,w)};a.Canvas.prototype.drawOval=function(d,h){a.Od(this.Nd);d=v(d);this._drawOval(d,h)};a.Canvas.prototype.drawPaint=function(d){a.Od(this.Nd);this._drawPaint(d)};a.Canvas.prototype.drawParagraph=function(d,h,m){a.Od(this.Nd);this._drawParagraph(d,h,m)};a.Canvas.prototype.drawPatch=function(d,h,m,u,w){if(24>d.length)throw"Need 12 cubic points";if(h&&4>h.length)throw"Need 4 colors";if(m&&8>m.length)throw"Need 4 shader coordinates";
|
||||
a.Od(this.Nd);const z=l(d,"HEAPF32"),F=h?l(c(h),"HEAPU32"):M,K=m?l(m,"HEAPF32"):M;u||(u=a.BlendMode.Modulate);this._drawPatch(z,F,K,u,w);k(K,m);k(F,h);k(z,d)};a.Canvas.prototype.drawPath=function(d,h){a.Od(this.Nd);this._drawPath(d,h)};a.Canvas.prototype.drawPicture=function(d){a.Od(this.Nd);this._drawPicture(d)};a.Canvas.prototype.drawPoints=function(d,h,m){a.Od(this.Nd);var u=l(h,"HEAPF32");this._drawPoints(d,u,h.length/2,m);k(u,h)};a.Canvas.prototype.drawRRect=function(d,h){a.Od(this.Nd);d=D(d);
|
||||
this._drawRRect(d,h)};a.Canvas.prototype.drawRect=function(d,h){a.Od(this.Nd);d=v(d);this._drawRect(d,h)};a.Canvas.prototype.drawRect4f=function(d,h,m,u,w){a.Od(this.Nd);this._drawRect4f(d,h,m,u,w)};a.Canvas.prototype.drawShadow=function(d,h,m,u,w,z,F){a.Od(this.Nd);var K=l(w,"HEAPF32"),H=l(z,"HEAPF32");h=l(h,"HEAPF32",Hb);m=l(m,"HEAPF32",Ib);this._drawShadow(d,h,m,u,K,H,F);k(K,w);k(H,z)};a.getShadowLocalBounds=function(d,h,m,u,w,z,F){d=q(d);m=l(m,"HEAPF32",Hb);u=l(u,"HEAPF32",Ib);if(!this._getShadowLocalBounds(d,
|
||||
h,m,u,w,z,V))return null;h=va.toTypedArray();return F?(F.set(h),F):h.slice()};a.Canvas.prototype.drawTextBlob=function(d,h,m,u){a.Od(this.Nd);this._drawTextBlob(d,h,m,u)};a.Canvas.prototype.drawVertices=function(d,h,m){a.Od(this.Nd);this._drawVertices(d,h,m)};a.Canvas.prototype.getDeviceClipBounds=function(d){this._getDeviceClipBounds(gb);var h=Jb.toTypedArray();d?d.set(h):d=h.slice();return d};a.Canvas.prototype.getLocalToDevice=function(){this._getLocalToDevice(Z);for(var d=Z,h=Array(16),m=0;16>
|
||||
m;m++)h[m]=a.HEAPF32[d/4+m];return h};a.Canvas.prototype.getTotalMatrix=function(){this._getTotalMatrix(I);for(var d=Array(9),h=0;9>h;h++)d[h]=a.HEAPF32[I/4+h];return d};a.Canvas.prototype.makeSurface=function(d){d=this._makeSurface(d);d.Nd=this.Nd;return d};a.Canvas.prototype.readPixels=function(d,h,m,u,w){a.Od(this.Nd);return g(this,d,h,m,u,w)};a.Canvas.prototype.saveLayer=function(d,h,m,u){h=v(h);return this._saveLayer(d||null,h,m||null,u||0)};a.Canvas.prototype.writePixels=function(d,h,m,u,w,
|
||||
z,F,K){if(d.byteLength%(h*m))throw"pixels length must be a multiple of the srcWidth * srcHeight";a.Od(this.Nd);var H=d.byteLength/(h*m);z=z||a.AlphaType.Unpremul;F=F||a.ColorType.RGBA_8888;K=K||a.ColorSpace.SRGB;var S=H*h;H=l(d,"HEAPU8");h=this._writePixels({width:h,height:m,colorType:F,alphaType:z,colorSpace:K},H,S,u,w);k(H,d);return h};a.ColorFilter.MakeBlend=function(d,h,m){d=y(d);m=m||a.ColorSpace.SRGB;return a.ColorFilter._MakeBlend(d,h,m)};a.ColorFilter.MakeMatrix=function(d){if(!d||20!==d.length)throw"invalid color matrix";
|
||||
var h=l(d,"HEAPF32"),m=a.ColorFilter._makeMatrix(h);k(h,d);return m};a.ContourMeasure.prototype.getPosTan=function(d,h){this._getPosTan(d,V);d=va.toTypedArray();return h?(h.set(d),h):d.slice()};a.ImageFilter.MakeDropShadow=function(d,h,m,u,w,z){w=y(w,ua);return a.ImageFilter._MakeDropShadow(d,h,m,u,w,z)};a.ImageFilter.MakeDropShadowOnly=function(d,h,m,u,w,z){w=y(w,ua);return a.ImageFilter._MakeDropShadowOnly(d,h,m,u,w,z)};a.ImageFilter.MakeImage=function(d,h,m,u){m=v(m,V);u=v(u,Ba);if("B"in h&&"C"in
|
||||
h)return a.ImageFilter._MakeImageCubic(d,h.B,h.C,m,u);const w=h.filter;let z=a.MipmapMode.None;"mipmap"in h&&(z=h.mipmap);return a.ImageFilter._MakeImageOptions(d,w,z,m,u)};a.ImageFilter.MakeMatrixTransform=function(d,h,m){d=q(d);if("B"in h&&"C"in h)return a.ImageFilter._MakeMatrixTransformCubic(d,h.B,h.C,m);const u=h.filter;let w=a.MipmapMode.None;"mipmap"in h&&(w=h.mipmap);return a.ImageFilter._MakeMatrixTransformOptions(d,u,w,m)};a.Paint.prototype.getColor=function(){this._getColor(ua);return E(ua)};
|
||||
a.Paint.prototype.setColor=function(d,h){h=h||null;d=y(d);this._setColor(d,h)};a.Paint.prototype.setColorComponents=function(d,h,m,u,w){w=w||null;d=C(d,h,m,u);this._setColor(d,w)};a.Path.prototype.getPoint=function(d,h){this._getPoint(d,V);d=va.toTypedArray();return h?(h[0]=d[0],h[1]=d[1],h):d.slice(0,2)};a.Picture.prototype.makeShader=function(d,h,m,u,w){u=q(u);w=v(w);return this._makeShader(d,h,m,u,w)};a.PictureRecorder.prototype.beginRecording=function(d){d=v(d);return this._beginRecording(d)};
|
||||
a.Surface.prototype.getCanvas=function(){var d=this._getCanvas();d.Nd=this.Nd;return d};a.Surface.prototype.makeImageSnapshot=function(d){a.Od(this.Nd);d=l(d,"HEAP32",gb);return this._makeImageSnapshot(d)};a.Surface.prototype.makeSurface=function(d){a.Od(this.Nd);d=this._makeSurface(d);d.Nd=this.Nd;return d};a.Surface.prototype.Ue=function(d,h){this.ie||(this.ie=this.getCanvas());return requestAnimationFrame(function(){a.Od(this.Nd);d(this.ie);this.flush(h)}.bind(this))};a.Surface.prototype.requestAnimationFrame||
|
||||
(a.Surface.prototype.requestAnimationFrame=a.Surface.prototype.Ue);a.Surface.prototype.Re=function(d,h){this.ie||(this.ie=this.getCanvas());requestAnimationFrame(function(){a.Od(this.Nd);d(this.ie);this.flush(h);this.dispose()}.bind(this))};a.Surface.prototype.drawOnce||(a.Surface.prototype.drawOnce=a.Surface.prototype.Re);a.PathEffect.MakeDash=function(d,h){h||(h=0);if(!d.length||1===d.length%2)throw"Intervals array must have even length";var m=l(d,"HEAPF32");h=a.PathEffect._MakeDash(m,d.length,
|
||||
h);k(m,d);return h};a.PathEffect.MakeLine2D=function(d,h){h=q(h);return a.PathEffect._MakeLine2D(d,h)};a.PathEffect.MakePath2D=function(d,h){d=q(d);return a.PathEffect._MakePath2D(d,h)};a.Shader.MakeColor=function(d,h){h=h||null;d=y(d);return a.Shader._MakeColor(d,h)};a.Shader.Blend=a.Shader.MakeBlend;a.Shader.Color=a.Shader.MakeColor;a.Shader.MakeLinearGradient=function(d,h,m,u,w,z,F,K){K=K||null;var H=n(m),S=l(u,"HEAPF32");F=F||0;z=q(z);var p=va.toTypedArray();p.set(d);p.set(h,2);d=a.Shader._MakeLinearGradient(V,
|
||||
H.Wd,H.ke,S,H.count,w,F,z,K);k(H.Wd,m);u&&k(S,u);return d};a.Shader.MakeRadialGradient=function(d,h,m,u,w,z,F,K){K=K||null;var H=n(m),S=l(u,"HEAPF32");F=F||0;z=q(z);d=a.Shader._MakeRadialGradient(d[0],d[1],h,H.Wd,H.ke,S,H.count,w,F,z,K);k(H.Wd,m);u&&k(S,u);return d};a.Shader.MakeSweepGradient=function(d,h,m,u,w,z,F,K,H,S){S=S||null;var p=n(m),A=l(u,"HEAPF32");F=F||0;K=K||0;H=H||360;z=q(z);d=a.Shader._MakeSweepGradient(d,h,p.Wd,p.ke,A,p.count,w,K,H,F,z,S);k(p.Wd,m);u&&k(A,u);return d};a.Shader.MakeTwoPointConicalGradient=
|
||||
function(d,h,m,u,w,z,F,K,H,S){S=S||null;var p=n(w),A=l(z,"HEAPF32");H=H||0;K=q(K);var L=va.toTypedArray();L.set(d);L.set(m,2);d=a.Shader._MakeTwoPointConicalGradient(V,h,u,p.Wd,p.ke,A,p.count,F,H,K,S);k(p.Wd,w);z&&k(A,z);return d};a.Vertices.prototype.bounds=function(d){this._bounds(V);var h=va.toTypedArray();return d?(d.set(h),d):h.slice()};a.Rd&&a.Rd.forEach(function(d){d()})};a.computeTonalColors=function(g){var d=l(g.ambient,"HEAPF32"),h=l(g.spot,"HEAPF32");this._computeTonalColors(d,h);var m=
|
||||
{ambient:E(d),spot:E(h)};k(d,g.ambient);k(h,g.spot);return m};a.LTRBRect=function(g,d,h,m){return Float32Array.of(g,d,h,m)};a.XYWHRect=function(g,d,h,m){return Float32Array.of(g,d,g+h,d+m)};a.LTRBiRect=function(g,d,h,m){return Int32Array.of(g,d,h,m)};a.XYWHiRect=function(g,d,h,m){return Int32Array.of(g,d,g+h,d+m)};a.RRectXY=function(g,d,h){return Float32Array.of(g[0],g[1],g[2],g[3],d,h,d,h,d,h,d,h)};a.MakeAnimatedImageFromEncoded=function(g){g=new Uint8Array(g);var d=a._malloc(g.byteLength);a.HEAPU8.set(g,
|
||||
d);return(g=a._decodeAnimatedImage(d,g.byteLength))?g:null};a.MakeImageFromEncoded=function(g){g=new Uint8Array(g);var d=a._malloc(g.byteLength);a.HEAPU8.set(g,d);return(g=a._decodeImage(d,g.byteLength))?g:null};var Ra=null;a.MakeImageFromCanvasImageSource=function(g){var d=g.width,h=g.height;Ra||(Ra=document.createElement("canvas"));Ra.width=d;Ra.height=h;var m=Ra.getContext("2d",{Pf:!0});m.drawImage(g,0,0);g=m.getImageData(0,0,d,h);return a.MakeImage({width:d,height:h,alphaType:a.AlphaType.Unpremul,
|
||||
colorType:a.ColorType.RGBA_8888,colorSpace:a.ColorSpace.SRGB},g.data,4*d)};a.MakeImage=function(g,d,h){var m=a._malloc(d.length);a.HEAPU8.set(d,m);return a._MakeImage(g,m,d.length,h)};a.MakeVertices=function(g,d,h,m,u,w){var z=u&&u.length||0,F=0;h&&h.length&&(F|=1);m&&m.length&&(F|=2);void 0===w||w||(F|=4);g=new a._VerticesBuilder(g,d.length/2,z,F);l(d,"HEAPF32",g.positions());g.texCoords()&&l(h,"HEAPF32",g.texCoords());g.colors()&&l(c(m),"HEAPU32",g.colors());g.indices()&&l(u,"HEAPU16",g.indices());
|
||||
return g.detach()};(function(g){g.Rd=g.Rd||[];g.Rd.push(function(){function d(p){if(!p||!p.length)return[];for(var A=[],L=0;L<p.length;L+=5){var U=g.LTRBRect(p[L],p[L+1],p[L+2],p[L+3]),za=g.TextDirection.LTR;0===p[L+4]&&(za=g.TextDirection.RTL);A.push({rect:U,dir:za})}g._free(p.byteOffset);return A}function h(p){p=p||{};void 0===p.weight&&(p.weight=g.FontWeight.Normal);p.width=p.width||g.FontWidth.Normal;p.slant=p.slant||g.FontSlant.Upright;return p}function m(p){if(!p||!p.length)return M;for(var A=
|
||||
[],L=0;L<p.length;L++){var U=u(p[L]);A.push(U)}return l(A,"HEAPU32")}function u(p){if(F[p])return F[p];var A=ka(p)+1,L=g._malloc(A);la(p,B,L,A);return F[p]=L}function w(p){p._colorPtr=y(p.color);p._foregroundColorPtr=M;p._backgroundColorPtr=M;p._decorationColorPtr=M;p.foregroundColor&&(p._foregroundColorPtr=y(p.foregroundColor,K));p.backgroundColor&&(p._backgroundColorPtr=y(p.backgroundColor,H));p.decorationColor&&(p._decorationColorPtr=y(p.decorationColor,S));Array.isArray(p.fontFamilies)&&p.fontFamilies.length?
|
||||
(p._fontFamiliesPtr=m(p.fontFamilies),p._fontFamiliesLen=p.fontFamilies.length):(p._fontFamiliesPtr=M,p._fontFamiliesLen=0);if(p.locale){var A=p.locale;p._localePtr=u(A);p._localeLen=ka(A)+1}else p._localePtr=M,p._localeLen=0;if(Array.isArray(p.shadows)&&p.shadows.length){A=p.shadows;var L=A.map(function(pa){return pa.color||g.BLACK}),U=A.map(function(pa){return pa.blurRadius||0});p._shadowLen=A.length;for(var za=g._malloc(8*A.length),Kb=za/4,Lb=0;Lb<A.length;Lb++){var vc=A[Lb].offset||[0,0];g.HEAPF32[Kb]=
|
||||
vc[0];g.HEAPF32[Kb+1]=vc[1];Kb+=2}p._shadowColorsPtr=n(L).Wd;p._shadowOffsetsPtr=za;p._shadowBlurRadiiPtr=l(U,"HEAPF32")}else p._shadowLen=0,p._shadowColorsPtr=M,p._shadowOffsetsPtr=M,p._shadowBlurRadiiPtr=M;Array.isArray(p.fontFeatures)&&p.fontFeatures.length?(A=p.fontFeatures,L=A.map(function(pa){return pa.name}),U=A.map(function(pa){return pa.value}),p._fontFeatureLen=A.length,p._fontFeatureNamesPtr=m(L),p._fontFeatureValuesPtr=l(U,"HEAPU32")):(p._fontFeatureLen=0,p._fontFeatureNamesPtr=M,p._fontFeatureValuesPtr=
|
||||
M);Array.isArray(p.fontVariations)&&p.fontVariations.length?(A=p.fontVariations,L=A.map(function(pa){return pa.axis}),U=A.map(function(pa){return pa.value}),p._fontVariationLen=A.length,p._fontVariationAxesPtr=m(L),p._fontVariationValuesPtr=l(U,"HEAPF32")):(p._fontVariationLen=0,p._fontVariationAxesPtr=M,p._fontVariationValuesPtr=M)}function z(p){g._free(p._fontFamiliesPtr);g._free(p._shadowColorsPtr);g._free(p._shadowOffsetsPtr);g._free(p._shadowBlurRadiiPtr);g._free(p._fontFeatureNamesPtr);g._free(p._fontFeatureValuesPtr);
|
||||
g._free(p._fontVariationAxesPtr);g._free(p._fontVariationValuesPtr)}g.Paragraph.prototype.getRectsForRange=function(p,A,L,U){p=this._getRectsForRange(p,A,L,U);return d(p)};g.Paragraph.prototype.getRectsForPlaceholders=function(){var p=this._getRectsForPlaceholders();return d(p)};g.TypefaceFontProvider.prototype.registerFont=function(p,A){p=g.Typeface.MakeFreeTypeFaceFromData(p);if(!p)return null;A=u(A);this._registerFont(p,A)};g.ParagraphStyle=function(p){p.disableHinting=p.disableHinting||!1;if(p.ellipsis){var A=
|
||||
p.ellipsis;p._ellipsisPtr=u(A);p._ellipsisLen=ka(A)+1}else p._ellipsisPtr=M,p._ellipsisLen=0;null==p.heightMultiplier&&(p.heightMultiplier=-1);p.maxLines=p.maxLines||0;p.replaceTabCharacters=p.replaceTabCharacters||!1;A=(A=p.strutStyle)||{};A.strutEnabled=A.strutEnabled||!1;A.strutEnabled&&Array.isArray(A.fontFamilies)&&A.fontFamilies.length?(A._fontFamiliesPtr=m(A.fontFamilies),A._fontFamiliesLen=A.fontFamilies.length):(A._fontFamiliesPtr=M,A._fontFamiliesLen=0);A.fontStyle=h(A.fontStyle);null==
|
||||
A.fontSize&&(A.fontSize=-1);null==A.heightMultiplier&&(A.heightMultiplier=-1);A.halfLeading=A.halfLeading||!1;A.leading=A.leading||0;A.forceStrutHeight=A.forceStrutHeight||!1;p.strutStyle=A;p.textAlign=p.textAlign||g.TextAlign.Start;p.textDirection=p.textDirection||g.TextDirection.LTR;p.textHeightBehavior=p.textHeightBehavior||g.TextHeightBehavior.All;p.textStyle=g.TextStyle(p.textStyle);return p};g.TextStyle=function(p){p.color||(p.color=g.BLACK);p.decoration=p.decoration||0;p.decorationThickness=
|
||||
p.decorationThickness||0;p.decorationStyle=p.decorationStyle||g.DecorationStyle.Solid;p.textBaseline=p.textBaseline||g.TextBaseline.Alphabetic;null==p.fontSize&&(p.fontSize=-1);p.letterSpacing=p.letterSpacing||0;p.wordSpacing=p.wordSpacing||0;null==p.heightMultiplier&&(p.heightMultiplier=-1);p.halfLeading=p.halfLeading||!1;p.fontStyle=h(p.fontStyle);return p};var F={},K=g._malloc(16),H=g._malloc(16),S=g._malloc(16);g.ParagraphBuilder.Make=function(p,A){w(p.textStyle);A=g.ParagraphBuilder._Make(p,
|
||||
A);z(p.textStyle);return A};g.ParagraphBuilder.MakeFromFontProvider=function(p,A){w(p.textStyle);A=g.ParagraphBuilder._MakeFromFontProvider(p,A);z(p.textStyle);return A};g.ParagraphBuilder.MakeFromFontCollection=function(p,A){w(p.textStyle);A=g.ParagraphBuilder._MakeFromFontCollection(p,A);z(p.textStyle);return A};g.ParagraphBuilder.ShapeText=function(p,A,L){let U=0;for(const za of A)U+=za.length;if(U!==p.length)throw"Accumulated block lengths must equal text.length";return g.ParagraphBuilder._ShapeText(p,
|
||||
A,L)};g.ParagraphBuilder.prototype.pushStyle=function(p){w(p);this._pushStyle(p);z(p)};g.ParagraphBuilder.prototype.pushPaintStyle=function(p,A,L){w(p);this._pushPaintStyle(p,A,L);z(p)};g.ParagraphBuilder.prototype.addPlaceholder=function(p,A,L,U,za){L=L||g.PlaceholderAlignment.Baseline;U=U||g.TextBaseline.Alphabetic;this._addPlaceholder(p||0,A||0,L,U,za||0)};g.ParagraphBuilder.prototype.setWordsUtf8=function(p){var A=l(p,"HEAPU32");this._setWordsUtf8(A,p&&p.length||0);k(A,p)};g.ParagraphBuilder.prototype.setWordsUtf16=
|
||||
function(p){var A=l(p,"HEAPU32");this._setWordsUtf16(A,p&&p.length||0);k(A,p)};g.ParagraphBuilder.prototype.setGraphemeBreaksUtf8=function(p){var A=l(p,"HEAPU32");this._setGraphemeBreaksUtf8(A,p&&p.length||0);k(A,p)};g.ParagraphBuilder.prototype.setGraphemeBreaksUtf16=function(p){var A=l(p,"HEAPU32");this._setGraphemeBreaksUtf16(A,p&&p.length||0);k(A,p)};g.ParagraphBuilder.prototype.setLineBreaksUtf8=function(p){var A=l(p,"HEAPU32");this._setLineBreaksUtf8(A,p&&p.length||0);k(A,p)};g.ParagraphBuilder.prototype.setLineBreaksUtf16=
|
||||
function(p){var A=l(p,"HEAPU32");this._setLineBreaksUtf16(A,p&&p.length||0);k(A,p)}})})(r);a.Rd=a.Rd||[];a.Rd.push(function(){a.Path.prototype.op=function(g,d){return this._op(g,d)?this:null};a.Path.prototype.simplify=function(){return this._simplify()?this:null}});a.Rd=a.Rd||[];a.Rd.push(function(){a.Canvas.prototype.drawText=function(g,d,h,m,u){var w=ka(g),z=a._malloc(w+1);la(g,B,z,w+1);this._drawSimpleText(z,w,d,h,u,m);a._free(z)};a.Canvas.prototype.drawGlyphs=function(g,d,h,m,u,w){if(!(2*g.length<=
|
||||
d.length))throw"Not enough positions for the array of gyphs";a.Od(this.Nd);const z=l(g,"HEAPU16"),F=l(d,"HEAPF32");this._drawGlyphs(g.length,z,F,h,m,u,w);k(F,d);k(z,g)};a.Font.prototype.getGlyphBounds=function(g,d,h){var m=l(g,"HEAPU16"),u=a._malloc(16*g.length);this._getGlyphWidthBounds(m,g.length,M,u,d||null);d=new Float32Array(a.HEAPU8.buffer,u,4*g.length);k(m,g);if(h)return h.set(d),a._free(u),h;g=Float32Array.from(d);a._free(u);return g};a.Font.prototype.getGlyphIDs=function(g,d,h){d||(d=g.length);
|
||||
var m=ka(g)+1,u=a._malloc(m);la(g,B,u,m);g=a._malloc(2*d);d=this._getGlyphIDs(u,m-1,d,g);a._free(u);if(0>d)return a._free(g),null;u=new Uint16Array(a.HEAPU8.buffer,g,d);if(h)return h.set(u),a._free(g),h;h=Uint16Array.from(u);a._free(g);return h};a.Font.prototype.getGlyphIntercepts=function(g,d,h,m){var u=l(g,"HEAPU16"),w=l(d,"HEAPF32");return this._getGlyphIntercepts(u,g.length,!(g&&g._ck),w,d.length,!(d&&d._ck),h,m)};a.Font.prototype.getGlyphWidths=function(g,d,h){var m=l(g,"HEAPU16"),u=a._malloc(4*
|
||||
g.length);this._getGlyphWidthBounds(m,g.length,u,M,d||null);d=new Float32Array(a.HEAPU8.buffer,u,g.length);k(m,g);if(h)return h.set(d),a._free(u),h;g=Float32Array.from(d);a._free(u);return g};a.FontMgr.FromData=function(){if(!arguments.length)return null;var g=arguments;1===g.length&&Array.isArray(g[0])&&(g=arguments[0]);if(!g.length)return null;for(var d=[],h=[],m=0;m<g.length;m++){var u=new Uint8Array(g[m]),w=l(u,"HEAPU8");d.push(w);h.push(u.byteLength)}d=l(d,"HEAPU32");h=l(h,"HEAPU32");g=a.FontMgr._fromData(d,
|
||||
h,g.length);a._free(d);a._free(h);return g};a.Typeface.MakeFreeTypeFaceFromData=function(g){g=new Uint8Array(g);var d=l(g,"HEAPU8");return(g=a.Typeface._MakeFreeTypeFaceFromData(d,g.byteLength))?g:null};a.Typeface.prototype.getGlyphIDs=function(g,d,h){d||(d=g.length);var m=ka(g)+1,u=a._malloc(m);la(g,B,u,m);g=a._malloc(2*d);d=this._getGlyphIDs(u,m-1,d,g);a._free(u);if(0>d)return a._free(g),null;u=new Uint16Array(a.HEAPU8.buffer,g,d);if(h)return h.set(u),a._free(g),h;h=Uint16Array.from(u);a._free(g);
|
||||
return h};a.TextBlob.MakeOnPath=function(g,d,h,m){if(g&&g.length&&d&&d.countPoints()){if(1===d.countPoints())return this.MakeFromText(g,h);m||(m=0);var u=h.getGlyphIDs(g);u=h.getGlyphWidths(u);var w=[];d=new a.ContourMeasureIter(d,!1,1);for(var z=d.next(),F=new Float32Array(4),K=0;K<g.length&&z;K++){var H=u[K];m+=H/2;if(m>z.length()){z.delete();z=d.next();if(!z){g=g.substring(0,K);break}m=H/2}z.getPosTan(m,F);var S=F[2],p=F[3];w.push(S,p,F[0]-H/2*S,F[1]-H/2*p);m+=H/2}g=this.MakeFromRSXform(g,w,h);
|
||||
z&&z.delete();d.delete();return g}};a.TextBlob.MakeFromRSXform=function(g,d,h){var m=ka(g)+1,u=a._malloc(m);la(g,B,u,m);g=l(d,"HEAPF32");h=a.TextBlob._MakeFromRSXform(u,m-1,g,h);a._free(u);return h?h:null};a.TextBlob.MakeFromRSXformGlyphs=function(g,d,h){var m=l(g,"HEAPU16");d=l(d,"HEAPF32");h=a.TextBlob._MakeFromRSXformGlyphs(m,2*g.length,d,h);k(m,g);return h?h:null};a.TextBlob.MakeFromGlyphs=function(g,d){var h=l(g,"HEAPU16");d=a.TextBlob._MakeFromGlyphs(h,2*g.length,d);k(h,g);return d?d:null};
|
||||
a.TextBlob.MakeFromText=function(g,d){var h=ka(g)+1,m=a._malloc(h);la(g,B,m,h);g=a.TextBlob._MakeFromText(m,h-1,d);a._free(m);return g?g:null};a.MallocGlyphIDs=function(g){return a.Malloc(Uint16Array,g)}});a.Rd=a.Rd||[];a.Rd.push(function(){a.MakePicture=function(g){g=new Uint8Array(g);var d=a._malloc(g.byteLength);a.HEAPU8.set(g,d);return(g=a._MakePicture(d,g.byteLength))?g:null}});a.Rd=a.Rd||[];a.Rd.push(function(){a.RuntimeEffect.Make=function(g,d){return a.RuntimeEffect._Make(g,{onError:d||function(h){console.log("RuntimeEffect error",
|
||||
h)}})};a.RuntimeEffect.prototype.makeShader=function(g,d){var h=!g._ck,m=l(g,"HEAPF32");d=q(d);return this._makeShader(m,4*g.length,h,d)};a.RuntimeEffect.prototype.makeShaderWithChildren=function(g,d,h){var m=!g._ck,u=l(g,"HEAPF32");h=q(h);for(var w=[],z=0;z<d.length;z++)w.push(d[z].Md.Pd);d=l(w,"HEAPU32");return this._makeShaderWithChildren(u,4*g.length,m,d,w.length,h)}})})(r);
|
||||
var ma=aa({},r),na="./this.program",oa=(a,b)=>{throw b;},qa="object"===typeof window,ra="function"===typeof importScripts,sa="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node,ta="",wa,xa,ya,fs,Aa,Ca;
|
||||
if(sa)ta=ra?require("path").dirname(ta)+"/":__dirname+"/",Ca=()=>{Aa||(fs=require("fs"),Aa=require("path"))},wa=function(a,b){Ca();a=Aa.normalize(a);return fs.readFileSync(a,b?null:"utf8")},ya=a=>{a=wa(a,!0);a.buffer||(a=new Uint8Array(a));return a},xa=(a,b,c)=>{Ca();a=Aa.normalize(a);fs.readFile(a,function(e,f){e?c(e):b(f.buffer)})},1<process.argv.length&&(na=process.argv[1].replace(/\\/g,"/")),process.argv.slice(2),process.on("unhandledRejection",function(a){throw a;}),oa=(a,b)=>{if(noExitRuntime||
|
||||
0<Da)throw process.exitCode=a,b;b instanceof Ea||Fa("exiting due to exception: "+b);process.exit(a)},r.inspect=function(){return"[Emscripten Module object]"};else if(qa||ra)ra?ta=self.location.href:"undefined"!==typeof document&&document.currentScript&&(ta=document.currentScript.src),_scriptDir&&(ta=_scriptDir),0!==ta.indexOf("blob:")?ta=ta.substr(0,ta.replace(/[?#].*/,"").lastIndexOf("/")+1):ta="",wa=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},ra&&(ya=a=>{var b=
|
||||
new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),xa=(a,b,c)=>{var e=new XMLHttpRequest;e.open("GET",a,!0);e.responseType="arraybuffer";e.onload=()=>{200==e.status||0==e.status&&e.response?b(e.response):c()};e.onerror=c;e.send(null)};var Ga=r.print||console.log.bind(console),Fa=r.printErr||console.warn.bind(console);aa(r,ma);ma=null;r.thisProgram&&(na=r.thisProgram);r.quit&&(oa=r.quit);var Ha=0,Ia;r.wasmBinary&&(Ia=r.wasmBinary);
|
||||
var noExitRuntime=r.noExitRuntime||!0;"object"!==typeof WebAssembly&&Ja("no native wasm support detected");var Ka,La=!1,Na="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;
|
||||
function Oa(a,b,c){var e=b+c;for(c=b;a[c]&&!(c>=e);)++c;if(16<c-b&&a.subarray&&Na)return Na.decode(a.subarray(b,c));for(e="";b<c;){var f=a[b++];if(f&128){var k=a[b++]&63;if(192==(f&224))e+=String.fromCharCode((f&31)<<6|k);else{var l=a[b++]&63;f=224==(f&240)?(f&15)<<12|k<<6|l:(f&7)<<18|k<<12|l<<6|a[b++]&63;65536>f?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else e+=String.fromCharCode(f)}return e}function Pa(a,b){return a?Oa(B,a,b):""}
|
||||
function la(a,b,c,e){if(!(0<e))return 0;var f=c;e=c+e-1;for(var k=0;k<a.length;++k){var l=a.charCodeAt(k);if(55296<=l&&57343>=l){var n=a.charCodeAt(++k);l=65536+((l&1023)<<10)|n&1023}if(127>=l){if(c>=e)break;b[c++]=l}else{if(2047>=l){if(c+1>=e)break;b[c++]=192|l>>6}else{if(65535>=l){if(c+2>=e)break;b[c++]=224|l>>12}else{if(c+3>=e)break;b[c++]=240|l>>18;b[c++]=128|l>>12&63}b[c++]=128|l>>6&63}b[c++]=128|l&63}}b[c]=0;return c-f}
|
||||
function ka(a){for(var b=0,c=0;c<a.length;++c){var e=a.charCodeAt(c);55296<=e&&57343>=e&&(e=65536+((e&1023)<<10)|a.charCodeAt(++c)&1023);127>=e?++b:b=2047>=e?b+2:65535>=e?b+3:b+4}return b}var Qa="undefined"!==typeof TextDecoder?new TextDecoder("utf-16le"):void 0;function Sa(a,b){var c=a>>1;for(var e=c+b/2;!(c>=e)&&Ta[c];)++c;c<<=1;if(32<c-a&&Qa)return Qa.decode(B.subarray(a,c));c="";for(e=0;!(e>=b/2);++e){var f=Ua[a+2*e>>1];if(0==f)break;c+=String.fromCharCode(f)}return c}
|
||||
function Va(a,b,c){void 0===c&&(c=2147483647);if(2>c)return 0;c-=2;var e=b;c=c<2*a.length?c/2:a.length;for(var f=0;f<c;++f)Ua[b>>1]=a.charCodeAt(f),b+=2;Ua[b>>1]=0;return b-e}function Wa(a){return 2*a.length}function Xa(a,b){for(var c=0,e="";!(c>=b/4);){var f=G[a+4*c>>2];if(0==f)break;++c;65536<=f?(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023)):e+=String.fromCharCode(f)}return e}
|
||||
function Ya(a,b,c){void 0===c&&(c=2147483647);if(4>c)return 0;var e=b;c=e+c-4;for(var f=0;f<a.length;++f){var k=a.charCodeAt(f);if(55296<=k&&57343>=k){var l=a.charCodeAt(++f);k=65536+((k&1023)<<10)|l&1023}G[b>>2]=k;b+=4;if(b+4>c)break}G[b>>2]=0;return b-e}function Za(a){for(var b=0,c=0;c<a.length;++c){var e=a.charCodeAt(c);55296<=e&&57343>=e&&++c;b+=4}return b}var $a,ab,B,Ua,Ta,G,J,N,bb;
|
||||
function cb(){var a=Ka.buffer;$a=a;r.HEAP8=ab=new Int8Array(a);r.HEAP16=Ua=new Int16Array(a);r.HEAP32=G=new Int32Array(a);r.HEAPU8=B=new Uint8Array(a);r.HEAPU16=Ta=new Uint16Array(a);r.HEAPU32=J=new Uint32Array(a);r.HEAPF32=N=new Float32Array(a);r.HEAPF64=bb=new Float64Array(a)}var db,eb=[],fb=[],hb=[],Da=0;function ib(){var a=r.preRun.shift();eb.unshift(a)}var jb=0,kb=null,lb=null;r.preloadedImages={};r.preloadedAudios={};
|
||||
function Ja(a){if(r.onAbort)r.onAbort(a);a="Aborted("+a+")";Fa(a);La=!0;a=new WebAssembly.RuntimeError(a+". Build with -s ASSERTIONS=1 for more info.");ca(a);throw a;}function mb(){return nb.startsWith("data:application/octet-stream;base64,")}var nb;nb="canvaskit.wasm";if(!mb()){var ob=nb;nb=r.locateFile?r.locateFile(ob,ta):ta+ob}function pb(){var a=nb;try{if(a==nb&&Ia)return new Uint8Array(Ia);if(ya)return ya(a);throw"both async and sync fetching of the wasm failed";}catch(b){Ja(b)}}
|
||||
function qb(){if(!Ia&&(qa||ra)){if("function"===typeof fetch&&!nb.startsWith("file://"))return fetch(nb,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+nb+"'";return a.arrayBuffer()}).catch(function(){return pb()});if(xa)return new Promise(function(a,b){xa(nb,function(c){a(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return pb()})}
|
||||
function rb(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b(r);else{var c=b.Jf;"number"===typeof c?void 0===b.Ae?O(c)():O(c)(b.Ae):c(void 0===b.Ae?null:b.Ae)}}}function O(a){return db.get(a)}
|
||||
function sb(a){this.Pd=a-16;this.zf=function(b){G[this.Pd+4>>2]=b};this.wf=function(b){G[this.Pd+8>>2]=b};this.xf=function(){G[this.Pd>>2]=0};this.vf=function(){ab[this.Pd+12>>0]=0};this.yf=function(){ab[this.Pd+13>>0]=0};this.mf=function(b,c){this.zf(b);this.wf(c);this.xf();this.vf();this.yf()}}var tb=0,ub={},vb=[null,[],[]],wb={},xb={};function yb(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function zb(a){return this.fromWireType(J[a>>2])}var Ab={},Bb={},Cb={};
|
||||
function Db(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 Eb(a,b){a=Db(a);return function(){null;return b.apply(this,arguments)}}
|
||||
function Fb(a){var b=Error,c=Eb(a,function(e){this.name=a;this.message=e;e=Error(e).stack;void 0!==e&&(this.stack=this.toString()+"\n"+e.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(b.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return c}var Mb=void 0;function Nb(a){throw new Mb(a);}
|
||||
function Ob(a,b,c){function e(n){n=c(n);n.length!==a.length&&Nb("Mismatched type converter count");for(var q=0;q<a.length;++q)Pb(a[q],n[q])}a.forEach(function(n){Cb[n]=b});var f=Array(b.length),k=[],l=0;b.forEach(function(n,q){Bb.hasOwnProperty(n)?f[q]=Bb[n]:(k.push(n),Ab.hasOwnProperty(n)||(Ab[n]=[]),Ab[n].push(function(){f[q]=Bb[n];++l;l===k.length&&e(f)}))});0===k.length&&e(f)}
|
||||
function Qb(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 Rb=void 0;function P(a){for(var b="";B[a];)b+=Rb[B[a++]];return b}var Sb=void 0;function Q(a){throw new Sb(a);}
|
||||
function Pb(a,b,c={}){if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var e=b.name;a||Q('type "'+e+'" must have a positive integer typeid pointer');if(Bb.hasOwnProperty(a)){if(c.lf)return;Q("Cannot register type '"+e+"' twice")}Bb[a]=b;delete Cb[a];Ab.hasOwnProperty(a)&&(b=Ab[a],delete Ab[a],b.forEach(function(f){f()}))}function Tb(a){Q(a.Md.Sd.Qd.name+" instance already deleted")}var Ub=!1;function Vb(){}
|
||||
function Wb(a){--a.count.value;0===a.count.value&&(a.Ud?a.Yd.ae(a.Ud):a.Sd.Qd.ae(a.Pd))}function Xb(a){if("undefined"===typeof FinalizationGroup)return Xb=b=>b,a;Ub=new FinalizationGroup(function(b){for(var c=b.next();!c.done;c=b.next())c=c.value,c.Pd?Wb(c):console.warn("object already deleted: "+c.Pd)});Xb=b=>{Ub.register(b,b.Md,b.Md);return b};Vb=b=>{Ub.unregister(b.Md)};return Xb(a)}var Yb=void 0,Zb=[];function $b(){for(;Zb.length;){var a=Zb.pop();a.Md.fe=!1;a["delete"]()}}function ac(){}
|
||||
var bc={};function cc(a,b,c){if(void 0===a[b].Td){var e=a[b];a[b]=function(){a[b].Td.hasOwnProperty(arguments.length)||Q("Function '"+c+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+a[b].Td+")!");return a[b].Td[arguments.length].apply(this,arguments)};a[b].Td=[];a[b].Td[e.de]=e}}
|
||||
function dc(a,b,c){r.hasOwnProperty(a)?((void 0===c||void 0!==r[a].Td&&void 0!==r[a].Td[c])&&Q("Cannot register public name '"+a+"' twice"),cc(r,a,a),r.hasOwnProperty(c)&&Q("Cannot register multiple overloads of a function with the same number of arguments ("+c+")!"),r[a].Td[c]=b):(r[a]=b,void 0!==c&&(r[a].Lf=c))}function ec(a,b,c,e,f,k,l,n){this.name=a;this.constructor=b;this.ge=c;this.ae=e;this.$d=f;this.df=k;this.oe=l;this.af=n;this.tf=[]}
|
||||
function fc(a,b,c){for(;b!==c;)b.oe||Q("Expected null or instance of "+c.name+", got an instance of "+b.name),a=b.oe(a),b=b.$d;return a}function gc(a,b){if(null===b)return this.De&&Q("null is not a valid "+this.name),0;b.Md||Q('Cannot pass "'+hc(b)+'" as a '+this.name);b.Md.Pd||Q("Cannot pass deleted object as a pointer of type "+this.name);return fc(b.Md.Pd,b.Md.Sd.Qd,this.Qd)}
|
||||
function ic(a,b){if(null===b){this.De&&Q("null is not a valid "+this.name);if(this.se){var c=this.Ee();null!==a&&a.push(this.ae,c);return c}return 0}b.Md||Q('Cannot pass "'+hc(b)+'" as a '+this.name);b.Md.Pd||Q("Cannot pass deleted object as a pointer of type "+this.name);!this.re&&b.Md.Sd.re&&Q("Cannot convert argument of type "+(b.Md.Yd?b.Md.Yd.name:b.Md.Sd.name)+" to parameter type "+this.name);c=fc(b.Md.Pd,b.Md.Sd.Qd,this.Qd);if(this.se)switch(void 0===b.Md.Ud&&Q("Passing raw pointer to smart pointer is illegal"),
|
||||
this.Df){case 0:b.Md.Yd===this?c=b.Md.Ud:Q("Cannot convert argument of type "+(b.Md.Yd?b.Md.Yd.name:b.Md.Sd.name)+" to parameter type "+this.name);break;case 1:c=b.Md.Ud;break;case 2:if(b.Md.Yd===this)c=b.Md.Ud;else{var e=b.clone();c=this.uf(c,jc(function(){e["delete"]()}));null!==a&&a.push(this.ae,c)}break;default:Q("Unsupporting sharing policy")}return c}
|
||||
function kc(a,b){if(null===b)return this.De&&Q("null is not a valid "+this.name),0;b.Md||Q('Cannot pass "'+hc(b)+'" as a '+this.name);b.Md.Pd||Q("Cannot pass deleted object as a pointer of type "+this.name);b.Md.Sd.re&&Q("Cannot convert argument of type "+b.Md.Sd.name+" to parameter type "+this.name);return fc(b.Md.Pd,b.Md.Sd.Qd,this.Qd)}function lc(a,b,c){if(b===c)return a;if(void 0===c.$d)return null;a=lc(a,b,c.$d);return null===a?null:c.af(a)}var mc={};
|
||||
function nc(a,b){for(void 0===b&&Q("ptr should not be undefined");a.$d;)b=a.oe(b),a=a.$d;return mc[b]}function oc(a,b){b.Sd&&b.Pd||Nb("makeClassHandle requires ptr and ptrType");!!b.Yd!==!!b.Ud&&Nb("Both smartPtrType and smartPtr must be specified");b.count={value:1};return Xb(Object.create(a,{Md:{value:b}}))}
|
||||
function wc(a,b,c,e,f,k,l,n,q,x,y){this.name=a;this.Qd=b;this.De=c;this.re=e;this.se=f;this.sf=k;this.Df=l;this.Ne=n;this.Ee=q;this.uf=x;this.ae=y;f||void 0!==b.$d?this.toWireType=ic:(this.toWireType=e?gc:kc,this.Xd=null)}function xc(a,b,c){r.hasOwnProperty(a)||Nb("Replacing nonexistant public symbol");void 0!==r[a].Td&&void 0!==c?r[a].Td[c]=b:(r[a]=b,r[a].de=c)}
|
||||
function yc(a,b){var c=[];return function(){c.length=arguments.length;for(var e=0;e<arguments.length;e++)c[e]=arguments[e];a.includes("j")?(e=r["dynCall_"+a],e=c&&c.length?e.apply(null,[b].concat(c)):e.call(null,b)):e=O(b).apply(null,c);return e}}function T(a,b){a=P(a);var c=a.includes("j")?yc(a,b):O(b);"function"!==typeof c&&Q("unknown function pointer with signature "+a+": "+b);return c}var zc=void 0;function Ac(a){a=Bc(a);var b=P(a);Cc(a);return b}
|
||||
function Dc(a,b){function c(k){f[k]||Bb[k]||(Cb[k]?Cb[k].forEach(c):(e.push(k),f[k]=!0))}var e=[],f={};b.forEach(c);throw new zc(a+": "+e.map(Ac).join([", "]));}
|
||||
function Ec(a,b,c,e,f){var k=b.length;2>k&&Q("argTypes array size mismatch! Must at least get return value and 'this' types!");var l=null!==b[1]&&null!==c,n=!1;for(c=1;c<b.length;++c)if(null!==b[c]&&void 0===b[c].Xd){n=!0;break}var q="void"!==b[0].name,x=k-2,y=Array(x),C=[],E=[];return function(){arguments.length!==x&&Q("function "+a+" called with "+arguments.length+" arguments, expected "+x+" args!");E.length=0;C.length=l?2:1;C[0]=f;if(l){var v=b[1].toWireType(E,this);C[1]=v}for(var D=0;D<x;++D)y[D]=
|
||||
b[D+2].toWireType(E,arguments[D]),C.push(y[D]);D=e.apply(null,C);if(n)yb(E);else for(var I=l?1:2;I<b.length;I++){var R=1===I?v:y[I-2];null!==b[I].Xd&&b[I].Xd(R)}v=q?b[0].fromWireType(D):void 0;return v}}function Fc(a,b){for(var c=[],e=0;e<a;e++)c.push(G[(b>>2)+e]);return c}var Gc=[],Hc=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function Ic(a){4<a&&0===--Hc[a].Fe&&(Hc[a]=void 0,Gc.push(a))}function Jc(a){a||Q("Cannot use deleted val. handle = "+a);return Hc[a].value}
|
||||
function jc(a){switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=Gc.length?Gc.pop():Hc.length;Hc[b]={Fe:1,value:a};return b}}function Kc(a,b,c){switch(b){case 0:return function(e){return this.fromWireType((c?ab:B)[e])};case 1:return function(e){return this.fromWireType((c?Ua:Ta)[e>>1])};case 2:return function(e){return this.fromWireType((c?G:J)[e>>2])};default:throw new TypeError("Unknown integer type: "+a);}}
|
||||
function Lc(a,b){var c=Bb[a];void 0===c&&Q(b+" has unknown type "+Ac(a));return c}function hc(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}function Mc(a,b){switch(b){case 2:return function(c){return this.fromWireType(N[c>>2])};case 3:return function(c){return this.fromWireType(bb[c>>3])};default:throw new TypeError("Unknown float type: "+a);}}
|
||||
function Nc(a,b,c){switch(b){case 0:return c?function(e){return ab[e]}:function(e){return B[e]};case 1:return c?function(e){return Ua[e>>1]}:function(e){return Ta[e>>1]};case 2:return c?function(e){return G[e>>2]}:function(e){return J[e>>2]};default:throw new TypeError("Unknown integer type: "+a);}}var Oc={};function Pc(a){var b=Oc[a];return void 0===b?P(a):b}var Qc=[];
|
||||
function Rc(){function a(b){b.$$$embind_global$$$=b;var c="object"===typeof $$$embind_global$$$&&b.$$$embind_global$$$===b;c||delete b.$$$embind_global$$$;return c}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 Sc(a){var b=Qc.length;Qc.push(a);return b}function Tc(a,b){for(var c=Array(a),e=0;e<a;++e)c[e]=Lc(G[(b>>2)+e],"parameter "+e);return c}var Uc=[];function Vc(a){var b=Array(a+1);return function(c,e,f){b[0]=c;for(var k=0;k<a;++k){var l=Lc(G[(e>>2)+k],"parameter "+k);b[k+1]=l.readValueFromPointer(f);f+=l.argPackAdvance}c=new (c.bind.apply(c,b));return jc(c)}}var Wc={},Xc;Xc=sa?()=>{var a=process.hrtime();return 1E3*a[0]+a[1]/1E6}:()=>performance.now();
|
||||
function Yc(a){var b=a.getExtension("ANGLE_instanced_arrays");b&&(a.vertexAttribDivisor=function(c,e){b.vertexAttribDivisorANGLE(c,e)},a.drawArraysInstanced=function(c,e,f,k){b.drawArraysInstancedANGLE(c,e,f,k)},a.drawElementsInstanced=function(c,e,f,k,l){b.drawElementsInstancedANGLE(c,e,f,k,l)})}
|
||||
function Zc(a){var b=a.getExtension("OES_vertex_array_object");b&&(a.createVertexArray=function(){return b.createVertexArrayOES()},a.deleteVertexArray=function(c){b.deleteVertexArrayOES(c)},a.bindVertexArray=function(c){b.bindVertexArrayOES(c)},a.isVertexArray=function(c){return b.isVertexArrayOES(c)})}function $c(a){var b=a.getExtension("WEBGL_draw_buffers");b&&(a.drawBuffers=function(c,e){b.drawBuffersWEBGL(c,e)})}
|
||||
var ad=1,bd=[],cd=[],dd=[],ed=[],fa=[],fd=[],gd=[],ja=[],hd=[],jd=[],kd={},ld={},md=4;function W(a){nd||(nd=a)}function ea(a){for(var b=ad++,c=a.length;c<b;c++)a[c]=null;return b}function ha(a,b){a.Le||(a.Le=a.getContext,a.getContext=function(e,f){f=a.Le(e,f);return"webgl"==e==f instanceof WebGLRenderingContext?f:null});var c=1<b.majorVersion?a.getContext("webgl2",b):a.getContext("webgl",b);return c?pd(c,b):0}
|
||||
function pd(a,b){var c=ea(ja),e={kf:c,attributes:b,version:b.majorVersion,Zd:a};a.canvas&&(a.canvas.Qe=e);ja[c]=e;("undefined"===typeof b.bf||b.bf)&&qd(e);return c}function ia(a){t=ja[a];r.If=X=t&&t.Zd;return!(a&&!X)}
|
||||
function qd(a){a||(a=t);if(!a.nf){a.nf=!0;var b=a.Zd;Yc(b);Zc(b);$c(b);b.Ie=b.getExtension("WEBGL_draw_instanced_base_vertex_base_instance");b.Me=b.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance");2<=a.version&&(b.Je=b.getExtension("EXT_disjoint_timer_query_webgl2"));if(2>a.version||!b.Je)b.Je=b.getExtension("EXT_disjoint_timer_query");b.Kf=b.getExtension("WEBGL_multi_draw");(b.getSupportedExtensions()||[]).forEach(function(c){c.includes("lose_context")||c.includes("debug")||b.getExtension(c)})}}
|
||||
var t,nd,rd=[];function sd(a,b,c,e){for(var f=0;f<a;f++){var k=X[c](),l=k&&ea(e);k?(k.name=l,e[l]=k):W(1282);G[b+4*f>>2]=l}}
|
||||
function td(a,b,c){if(b){var e=void 0;switch(a){case 36346:e=1;break;case 36344:0!=c&&1!=c&&W(1280);return;case 34814:case 36345:e=0;break;case 34466:var f=X.getParameter(34467);e=f?f.length:0;break;case 33309:if(2>t.version){W(1282);return}e=2*(X.getSupportedExtensions()||[]).length;break;case 33307:case 33308:if(2>t.version){W(1280);return}e=33307==a?3:0}if(void 0===e)switch(f=X.getParameter(a),typeof f){case "number":e=f;break;case "boolean":e=f?1:0;break;case "string":W(1280);return;case "object":if(null===
|
||||
f)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:e=0;break;default:W(1280);return}else{if(f instanceof Float32Array||f instanceof Uint32Array||f instanceof Int32Array||f instanceof Array){for(a=0;a<f.length;++a)switch(c){case 0:G[b+4*a>>2]=f[a];break;case 2:N[b+4*a>>2]=f[a];break;case 4:ab[b+a>>0]=f[a]?1:0}return}try{e=f.name|0}catch(k){W(1280);
|
||||
Fa("GL_INVALID_ENUM in glGet"+c+"v: Unknown object returned from WebGL getParameter("+a+")! (error: "+k+")");return}}break;default:W(1280);Fa("GL_INVALID_ENUM in glGet"+c+"v: Native code calling glGet"+c+"v("+a+") and it returns "+f+" of type "+typeof f+"!");return}switch(c){case 1:c=e;J[b>>2]=c;J[b+4>>2]=(c-J[b>>2])/4294967296;break;case 0:G[b>>2]=e;break;case 2:N[b>>2]=e;break;case 4:ab[b>>0]=e?1:0}}else W(1281)}function ud(a){var b=ka(a)+1,c=vd(b);la(a,B,c,b);return c}
|
||||
function wd(a){return"]"==a.slice(-1)&&a.lastIndexOf("[")}function xd(a){a-=5120;return 0==a?ab:1==a?B:2==a?Ua:4==a?G:6==a?N:5==a||28922==a||28520==a||30779==a||30782==a?J:Ta}function yd(a,b,c,e,f){a=xd(a);var k=31-Math.clz32(a.BYTES_PER_ELEMENT),l=md;return a.subarray(f>>k,f+e*(c*({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[b-6402]||1)*(1<<k)+l-1&-l)>>k)}
|
||||
function Y(a){var b=X.Ye;if(b){var c=b.ne[a];"number"===typeof c&&(b.ne[a]=c=X.getUniformLocation(b,b.Oe[a]+(0<c?"["+c+"]":"")));return c}W(1282)}var zd=[],Ad=[],Bd={};
|
||||
function Cd(){if(!Dd){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",_:na||"./this.program"},b;for(b in Bd)void 0===Bd[b]?delete a[b]:a[b]=Bd[b];var c=[];for(b in a)c.push(b+"="+a[b]);Dd=c}return Dd}var Dd;function Ed(a){return 0===a%4&&(0!==a%100||0===a%400)}function Fd(a,b){for(var c=0,e=0;e<=b;c+=a[e++]);return c}
|
||||
var Gd=[31,29,31,30,31,30,31,31,30,31,30,31],Hd=[31,28,31,30,31,30,31,31,30,31,30,31];function Id(a,b){for(a=new Date(a.getTime());0<b;){var c=a.getMonth(),e=(Ed(a.getFullYear())?Gd:Hd)[c];if(b>e-a.getDate())b-=e-a.getDate()+1,a.setDate(1),11>c?a.setMonth(c+1):(a.setMonth(0),a.setFullYear(a.getFullYear()+1));else{a.setDate(a.getDate()+b);break}}return a}
|
||||
function Jd(a,b,c,e){function f(v,D,I){for(v="number"===typeof v?v.toString():v||"";v.length<D;)v=I[0]+v;return v}function k(v,D){return f(v,D,"0")}function l(v,D){function I(Z){return 0>Z?-1:0<Z?1:0}var R;0===(R=I(v.getFullYear()-D.getFullYear()))&&0===(R=I(v.getMonth()-D.getMonth()))&&(R=I(v.getDate()-D.getDate()));return R}function n(v){switch(v.getDay()){case 0:return new Date(v.getFullYear()-1,11,29);case 1:return v;case 2:return new Date(v.getFullYear(),0,3);case 3:return new Date(v.getFullYear(),
|
||||
0,2);case 4:return new Date(v.getFullYear(),0,1);case 5:return new Date(v.getFullYear()-1,11,31);case 6:return new Date(v.getFullYear()-1,11,30)}}function q(v){v=Id(new Date(v.Vd+1900,0,1),v.ye);var D=new Date(v.getFullYear()+1,0,4),I=n(new Date(v.getFullYear(),0,4));D=n(D);return 0>=l(I,v)?0>=l(D,v)?v.getFullYear()+1:v.getFullYear():v.getFullYear()-1}var x=G[e+40>>2];e={Gf:G[e>>2],Ff:G[e+4>>2],we:G[e+8>>2],me:G[e+12>>2],he:G[e+16>>2],Vd:G[e+20>>2],xe:G[e+24>>2],ye:G[e+28>>2],Of:G[e+32>>2],Ef:G[e+
|
||||
36>>2],Hf:x?Pa(x):""};c=Pa(c);x={"%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 y in x)c=c.replace(new RegExp(y,"g"),x[y]);var C="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),
|
||||
E="January February March April May June July August September October November December".split(" ");x={"%a":function(v){return C[v.xe].substring(0,3)},"%A":function(v){return C[v.xe]},"%b":function(v){return E[v.he].substring(0,3)},"%B":function(v){return E[v.he]},"%C":function(v){return k((v.Vd+1900)/100|0,2)},"%d":function(v){return k(v.me,2)},"%e":function(v){return f(v.me,2," ")},"%g":function(v){return q(v).toString().substring(2)},"%G":function(v){return q(v)},"%H":function(v){return k(v.we,
|
||||
2)},"%I":function(v){v=v.we;0==v?v=12:12<v&&(v-=12);return k(v,2)},"%j":function(v){return k(v.me+Fd(Ed(v.Vd+1900)?Gd:Hd,v.he-1),3)},"%m":function(v){return k(v.he+1,2)},"%M":function(v){return k(v.Ff,2)},"%n":function(){return"\n"},"%p":function(v){return 0<=v.we&&12>v.we?"AM":"PM"},"%S":function(v){return k(v.Gf,2)},"%t":function(){return"\t"},"%u":function(v){return v.xe||7},"%U":function(v){var D=new Date(v.Vd+1900,0,1),I=0===D.getDay()?D:Id(D,7-D.getDay());v=new Date(v.Vd+1900,v.he,v.me);return 0>
|
||||
l(I,v)?k(Math.ceil((31-I.getDate()+(Fd(Ed(v.getFullYear())?Gd:Hd,v.getMonth()-1)-31)+v.getDate())/7),2):0===l(I,D)?"01":"00"},"%V":function(v){var D=new Date(v.Vd+1901,0,4),I=n(new Date(v.Vd+1900,0,4));D=n(D);var R=Id(new Date(v.Vd+1900,0,1),v.ye);return 0>l(R,I)?"53":0>=l(D,R)?"01":k(Math.ceil((I.getFullYear()<v.Vd+1900?v.ye+32-I.getDate():v.ye+1-I.getDate())/7),2)},"%w":function(v){return v.xe},"%W":function(v){var D=new Date(v.Vd,0,1),I=1===D.getDay()?D:Id(D,0===D.getDay()?1:7-D.getDay()+1);v=
|
||||
new Date(v.Vd+1900,v.he,v.me);return 0>l(I,v)?k(Math.ceil((31-I.getDate()+(Fd(Ed(v.getFullYear())?Gd:Hd,v.getMonth()-1)-31)+v.getDate())/7),2):0===l(I,D)?"01":"00"},"%y":function(v){return(v.Vd+1900).toString().substring(2)},"%Y":function(v){return v.Vd+1900},"%z":function(v){v=v.Ef;var D=0<=v;v=Math.abs(v)/60;return(D?"+":"-")+String("0000"+(v/60*100+v%60)).slice(-4)},"%Z":function(v){return v.Hf},"%%":function(){return"%"}};for(y in x)c.includes(y)&&(c=c.replace(new RegExp(y,"g"),x[y](e)));y=Kd(c);
|
||||
if(y.length>b)return 0;ab.set(y,a);return y.length-1}Mb=r.InternalError=Fb("InternalError");for(var Ld=Array(256),Md=0;256>Md;++Md)Ld[Md]=String.fromCharCode(Md);Rb=Ld;Sb=r.BindingError=Fb("BindingError");ac.prototype.isAliasOf=function(a){if(!(this instanceof ac&&a instanceof ac))return!1;var b=this.Md.Sd.Qd,c=this.Md.Pd,e=a.Md.Sd.Qd;for(a=a.Md.Pd;b.$d;)c=b.oe(c),b=b.$d;for(;e.$d;)a=e.oe(a),e=e.$d;return b===e&&c===a};
|
||||
ac.prototype.clone=function(){this.Md.Pd||Tb(this);if(this.Md.le)return this.Md.count.value+=1,this;var a=Xb,b=Object,c=b.create,e=Object.getPrototypeOf(this),f=this.Md;a=a(c.call(b,e,{Md:{value:{count:f.count,fe:f.fe,le:f.le,Pd:f.Pd,Sd:f.Sd,Ud:f.Ud,Yd:f.Yd}}}));a.Md.count.value+=1;a.Md.fe=!1;return a};ac.prototype["delete"]=function(){this.Md.Pd||Tb(this);this.Md.fe&&!this.Md.le&&Q("Object already scheduled for deletion");Vb(this);Wb(this.Md);this.Md.le||(this.Md.Ud=void 0,this.Md.Pd=void 0)};
|
||||
ac.prototype.isDeleted=function(){return!this.Md.Pd};ac.prototype.deleteLater=function(){this.Md.Pd||Tb(this);this.Md.fe&&!this.Md.le&&Q("Object already scheduled for deletion");Zb.push(this);1===Zb.length&&Yb&&Yb($b);this.Md.fe=!0;return this};wc.prototype.ef=function(a){this.Ne&&(a=this.Ne(a));return a};wc.prototype.He=function(a){this.ae&&this.ae(a)};wc.prototype.argPackAdvance=8;wc.prototype.readValueFromPointer=zb;wc.prototype.deleteObject=function(a){if(null!==a)a["delete"]()};
|
||||
wc.prototype.fromWireType=function(a){function b(){return this.se?oc(this.Qd.ge,{Sd:this.sf,Pd:c,Yd:this,Ud:a}):oc(this.Qd.ge,{Sd:this,Pd:a})}var c=this.ef(a);if(!c)return this.He(a),null;var e=nc(this.Qd,c);if(void 0!==e){if(0===e.Md.count.value)return e.Md.Pd=c,e.Md.Ud=a,e.clone();e=e.clone();this.He(a);return e}e=this.Qd.df(c);e=bc[e];if(!e)return b.call(this);e=this.re?e.Xe:e.pointerType;var f=lc(c,this.Qd,e.Qd);return null===f?b.call(this):this.se?oc(e.Qd.ge,{Sd:e,Pd:f,Yd:this,Ud:a}):oc(e.Qd.ge,
|
||||
{Sd:e,Pd:f})};r.getInheritedInstanceCount=function(){return Object.keys(mc).length};r.getLiveInheritedInstances=function(){var a=[],b;for(b in mc)mc.hasOwnProperty(b)&&a.push(mc[b]);return a};r.flushPendingDeletes=$b;r.setDelayFunction=function(a){Yb=a;Zb.length&&Yb&&Yb($b)};zc=r.UnboundTypeError=Fb("UnboundTypeError");r.count_emval_handles=function(){for(var a=0,b=5;b<Hc.length;++b)void 0!==Hc[b]&&++a;return a};
|
||||
r.get_first_emval=function(){for(var a=5;a<Hc.length;++a)if(void 0!==Hc[a])return Hc[a];return null};for(var X,Nd=0;32>Nd;++Nd)rd.push(Array(Nd));var Od=new Float32Array(288);for(Nd=0;288>Nd;++Nd)zd[Nd]=Od.subarray(0,Nd+1);var Pd=new Int32Array(288);for(Nd=0;288>Nd;++Nd)Ad[Nd]=Pd.subarray(0,Nd+1);function Kd(a){var b=Array(ka(a)+1);la(a,b,0,b.length);return b}
|
||||
var ee={K:function(a){return vd(a+16)+16},J:function(a,b,c){(new sb(a)).mf(b,c);tb++;throw a;},X:function(){return 0},vb:function(){},tb:function(){},xb:function(){return 0},sb:function(){},pb:function(a,b,c,e,f,k){k<<=12;if(0!==(e&16)&&0!==a%65536)b=-28;else if(0!==(e&32)){a=65536*Math.ceil(b/65536);var l=Qd(65536,a);l?(B.fill(0,l,l+a),a=l):a=0;a?(ub[a]={rf:a,qf:b,We:!0,fd:f,Mf:c,flags:e,offset:k},b=a):b=-48}else b=-52;return b},ob:function(a,b){var c=ub[a];0!==b&&c?(b===c.qf&&(ub[a]=null,c.We&&
|
||||
Cc(c.rf)),a=0):a=-28;return a},Y:function(){},ub:function(){},C:function(a){var b=xb[a];delete xb[a];var c=b.Ee,e=b.ae,f=b.Ke,k=f.map(function(l){return l.jf}).concat(f.map(function(l){return l.Bf}));Ob([a],k,function(l){var n={};f.forEach(function(q,x){var y=l[x],C=q.gf,E=q.hf,v=l[x+f.length],D=q.Af,I=q.Cf;n[q.cf]={read:function(R){return y.fromWireType(C(E,R))},write:function(R,Z){var da=[];D(I,R,v.toWireType(da,Z));yb(da)}}});return[{name:b.name,fromWireType:function(q){var x={},y;for(y in n)x[y]=
|
||||
n[y].read(q);e(q);return x},toWireType:function(q,x){for(var y in n)if(!(y in x))throw new TypeError('Missing field: "'+y+'"');var C=c();for(y in n)n[y].write(C,x[y]);null!==q&&q.push(e,C);return C},argPackAdvance:8,readValueFromPointer:zb,Xd:e}]})},jb:function(){},zb:function(a,b,c,e,f){var k=Qb(c);b=P(b);Pb(a,{name:b,fromWireType:function(l){return!!l},toWireType:function(l,n){return n?e:f},argPackAdvance:8,readValueFromPointer:function(l){if(1===c)var n=ab;else if(2===c)n=Ua;else if(4===c)n=G;
|
||||
else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(n[l>>k])},Xd:null})},n:function(a,b,c,e,f,k,l,n,q,x,y,C,E){y=P(y);k=T(f,k);n&&(n=T(l,n));x&&(x=T(q,x));E=T(C,E);var v=Db(y);dc(v,function(){Dc("Cannot construct "+y+" due to unbound types",[e])});Ob([a,b,c],e?[e]:[],function(D){D=D[0];if(e){var I=D.Qd;var R=I.ge}else R=ac.prototype;D=Eb(v,function(){if(Object.getPrototypeOf(this)!==Z)throw new Sb("Use 'new' to construct "+y);if(void 0===da.be)throw new Sb(y+" has no accessible constructor");
|
||||
var Ma=da.be[arguments.length];if(void 0===Ma)throw new Sb("Tried to invoke ctor of "+y+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(da.be).toString()+") parameters instead!");return Ma.apply(this,arguments)});var Z=Object.create(R,{constructor:{value:D}});D.prototype=Z;var da=new ec(y,D,Z,E,I,k,n,x);I=new wc(y,da,!0,!1,!1);R=new wc(y+"*",da,!1,!1,!1);var ua=new wc(y+" const*",da,!1,!0,!1);bc[a]={pointerType:R,Xe:ua};xc(v,D);return[I,R,ua]})},g:function(a,b,
|
||||
c,e,f,k,l){var n=Fc(c,e);b=P(b);k=T(f,k);Ob([],[a],function(q){function x(){Dc("Cannot call "+y+" due to unbound types",n)}q=q[0];var y=q.name+"."+b;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);var C=q.Qd.constructor;void 0===C[b]?(x.de=c-1,C[b]=x):(cc(C,b,y),C[b].Td[c-1]=x);Ob([],n,function(E){E=[E[0],null].concat(E.slice(1));E=Ec(y,E,null,k,l);void 0===C[b].Td?(E.de=c-1,C[b]=E):C[b].Td[c-1]=E;return[]});return[]})},A:function(a,b,c,e,f,k){0<b||Ja(void 0);var l=Fc(b,c);f=T(e,f);Ob([],[a],function(n){n=
|
||||
n[0];var q="constructor "+n.name;void 0===n.Qd.be&&(n.Qd.be=[]);if(void 0!==n.Qd.be[b-1])throw new Sb("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.Qd.be[b-1]=()=>{Dc("Cannot construct "+n.name+" due to unbound types",l)};Ob([],l,function(x){x.splice(1,0,null);n.Qd.be[b-1]=Ec(q,x,null,f,k);return[]});return[]})},a:function(a,b,c,e,f,
|
||||
k,l,n){var q=Fc(c,e);b=P(b);k=T(f,k);Ob([],[a],function(x){function y(){Dc("Cannot call "+C+" due to unbound types",q)}x=x[0];var C=x.name+"."+b;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);n&&x.Qd.tf.push(b);var E=x.Qd.ge,v=E[b];void 0===v||void 0===v.Td&&v.className!==x.name&&v.de===c-2?(y.de=c-2,y.className=x.name,E[b]=y):(cc(E,b,C),E[b].Td[c-2]=y);Ob([],q,function(D){D=Ec(C,D,x,k,l);void 0===E[b].Td?(D.de=c-2,E[b]=D):E[b].Td[c-2]=D;return[]});return[]})},s:function(a,b,c){a=P(a);Ob([],[b],function(e){e=
|
||||
e[0];r[a]=e.fromWireType(c);return[]})},yb:function(a,b){b=P(b);Pb(a,{name:b,fromWireType:function(c){var e=Jc(c);Ic(c);return e},toWireType:function(c,e){return jc(e)},argPackAdvance:8,readValueFromPointer:zb,Xd:null})},l:function(a,b,c,e){function f(){}c=Qb(c);b=P(b);f.values={};Pb(a,{name:b,constructor:f,fromWireType:function(k){return this.constructor.values[k]},toWireType:function(k,l){return l.value},argPackAdvance:8,readValueFromPointer:Kc(b,c,e),Xd:null});dc(b,f)},d:function(a,b,c){var e=
|
||||
Lc(a,"enum");b=P(b);a=e.constructor;e=Object.create(e.constructor.prototype,{value:{value:c},constructor:{value:Eb(e.name+"_"+b,function(){})}});a.values[c]=e;a[b]=e},_:function(a,b,c){c=Qb(c);b=P(b);Pb(a,{name:b,fromWireType:function(e){return e},toWireType:function(e,f){return f},argPackAdvance:8,readValueFromPointer:Mc(b,c),Xd:null})},v:function(a,b,c,e,f,k){var l=Fc(b,c);a=P(a);f=T(e,f);dc(a,function(){Dc("Cannot call "+a+" due to unbound types",l)},b-1);Ob([],l,function(n){n=[n[0],null].concat(n.slice(1));
|
||||
xc(a,Ec(a,n,null,f,k),b-1);return[]})},E:function(a,b,c,e,f){b=P(b);-1===f&&(f=4294967295);f=Qb(c);var k=n=>n;if(0===e){var l=32-8*c;k=n=>n<<l>>>l}c=b.includes("unsigned")?function(n,q){return q>>>0}:function(n,q){return q};Pb(a,{name:b,fromWireType:k,toWireType:c,argPackAdvance:8,readValueFromPointer:Nc(b,f,0!==e),Xd:null})},u:function(a,b,c){function e(k){k>>=2;var l=J;return new f($a,l[k+1],l[k])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];
|
||||
c=P(c);Pb(a,{name:c,fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{lf:!0})},r:function(a,b,c,e,f,k,l,n,q,x,y,C){c=P(c);k=T(f,k);n=T(l,n);x=T(q,x);C=T(y,C);Ob([a],[b],function(E){E=E[0];return[new wc(c,E.Qd,!1,!1,!0,E,e,k,n,x,C)]})},Z:function(a,b){b=P(b);var c="std::string"===b;Pb(a,{name:b,fromWireType:function(e){var f=J[e>>2];if(c)for(var k=e+4,l=0;l<=f;++l){var n=e+4+l;if(l==f||0==B[n]){k=Pa(k,n-k);if(void 0===q)var q=k;else q+=String.fromCharCode(0),q+=k;k=n+1}}else{q=Array(f);for(l=
|
||||
0;l<f;++l)q[l]=String.fromCharCode(B[e+4+l]);q=q.join("")}Cc(e);return q},toWireType:function(e,f){f instanceof ArrayBuffer&&(f=new Uint8Array(f));var k="string"===typeof f;k||f instanceof Uint8Array||f instanceof Uint8ClampedArray||f instanceof Int8Array||Q("Cannot pass non-string to std::string");var l=(c&&k?()=>ka(f):()=>f.length)(),n=vd(4+l+1);J[n>>2]=l;if(c&&k)la(f,B,n+4,l+1);else if(k)for(k=0;k<l;++k){var q=f.charCodeAt(k);255<q&&(Cc(n),Q("String has UTF-16 code units that do not fit in 8 bits"));
|
||||
B[n+4+k]=q}else for(k=0;k<l;++k)B[n+4+k]=f[k];null!==e&&e.push(Cc,n);return n},argPackAdvance:8,readValueFromPointer:zb,Xd:function(e){Cc(e)}})},R:function(a,b,c){c=P(c);if(2===b){var e=Sa;var f=Va;var k=Wa;var l=()=>Ta;var n=1}else 4===b&&(e=Xa,f=Ya,k=Za,l=()=>J,n=2);Pb(a,{name:c,fromWireType:function(q){for(var x=J[q>>2],y=l(),C,E=q+4,v=0;v<=x;++v){var D=q+4+v*b;if(v==x||0==y[D>>n])E=e(E,D-E),void 0===C?C=E:(C+=String.fromCharCode(0),C+=E),E=D+b}Cc(q);return C},toWireType:function(q,x){"string"!==
|
||||
typeof x&&Q("Cannot pass non-string to C++ string type "+c);var y=k(x),C=vd(4+y+b);J[C>>2]=y>>n;f(x,C+4,y+b);null!==q&&q.push(Cc,C);return C},argPackAdvance:8,readValueFromPointer:zb,Xd:function(q){Cc(q)}})},D:function(a,b,c,e,f,k){xb[a]={name:P(b),Ee:T(c,e),ae:T(f,k),Ke:[]}},f:function(a,b,c,e,f,k,l,n,q,x){xb[a].Ke.push({cf:P(b),jf:c,gf:T(e,f),hf:k,Bf:l,Af:T(n,q),Cf:x})},Ab:function(a,b){b=P(b);Pb(a,{pf:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},mb:function(){throw"longjmp";
|
||||
},I:function(a,b,c){a=Jc(a);b=Lc(b,"emval::as");var e=[],f=jc(e);G[c>>2]=f;return b.toWireType(e,a)},L:function(a,b,c,e,f){a=Qc[a];b=Jc(b);c=Pc(c);var k=[];G[e>>2]=jc(k);return a(b,c,k,f)},B:function(a,b,c,e){a=Qc[a];b=Jc(b);c=Pc(c);a(b,c,null,e)},e:Ic,N:function(a){if(0===a)return jc(Rc());a=Pc(a);return jc(Rc()[a])},w:function(a,b){var c=Tc(a,b),e=c[0];b=e.name+"_$"+c.slice(1).map(function(l){return l.name}).join("_")+"$";var f=Uc[b];if(void 0!==f)return f;var k=Array(a-1);f=Sc((l,n,q,x)=>{for(var y=
|
||||
0,C=0;C<a-1;++C)k[C]=c[C+1].readValueFromPointer(x+y),y+=c[C+1].argPackAdvance;l=l[n].apply(l,k);for(C=0;C<a-1;++C)c[C+1].Ze&&c[C+1].Ze(k[C]);if(!e.pf)return e.toWireType(q,l)});return Uc[b]=f},H:function(a,b){a=Jc(a);b=Jc(b);return jc(a[b])},p:function(a){4<a&&(Hc[a].Fe+=1)},M:function(a,b,c,e){a=Jc(a);var f=Wc[b];f||(f=Vc(b),Wc[b]=f);return f(a,c,e)},P:function(){return jc([])},h:function(a){return jc(Pc(a))},G:function(){return jc({})},fb:function(a){a=Jc(a);return!a},F:function(a){var b=Jc(a);
|
||||
yb(b);Ic(a)},k:function(a,b,c){a=Jc(a);b=Jc(b);c=Jc(c);a[b]=c},i:function(a,b){a=Lc(a,"_emval_take_value");a=a.readValueFromPointer(b);return jc(a)},j:function(){Ja("")},lb:function(a,b){if(0===a)a=Date.now();else if(1===a||4===a)a=Xc();else return G[Rd()>>2]=28,-1;G[b>>2]=a/1E3|0;G[b+4>>2]=a%1E3*1E6|0;return 0},Tc:function(a){X.activeTexture(a)},Uc:function(a,b){X.attachShader(cd[a],fd[b])},Vc:function(a,b,c){X.bindAttribLocation(cd[a],b,Pa(c))},Wc:function(a,b){35051==a?X.Be=b:35052==a&&(X.ee=b);
|
||||
X.bindBuffer(a,bd[b])},da:function(a,b){X.bindFramebuffer(a,dd[b])},Xb:function(a,b){X.bindRenderbuffer(a,ed[b])},Hb:function(a,b){X.bindSampler(a,hd[b])},Xc:function(a,b){X.bindTexture(a,fa[b])},pc:function(a){X.bindVertexArray(gd[a])},sc:function(a){X.bindVertexArray(gd[a])},Yc:function(a,b,c,e){X.blendColor(a,b,c,e)},Zc:function(a){X.blendEquation(a)},_c:function(a,b){X.blendFunc(a,b)},Rb:function(a,b,c,e,f,k,l,n,q,x){X.blitFramebuffer(a,b,c,e,f,k,l,n,q,x)},$c:function(a,b,c,e){2<=t.version?c?
|
||||
X.bufferData(a,B,e,c,b):X.bufferData(a,b,e):X.bufferData(a,c?B.subarray(c,c+b):b,e)},ad:function(a,b,c,e){2<=t.version?X.bufferSubData(a,b,B,e,c):X.bufferSubData(a,b,B.subarray(e,e+c))},Yb:function(a){return X.checkFramebufferStatus(a)},U:function(a){X.clear(a)},ca:function(a,b,c,e){X.clearColor(a,b,c,e)},W:function(a){X.clearStencil(a)},db:function(a,b,c,e){return X.clientWaitSync(jd[a],b,(c>>>0)+4294967296*e)},bd:function(a,b,c,e){X.colorMask(!!a,!!b,!!c,!!e)},ea:function(a){X.compileShader(fd[a])},
|
||||
fa:function(a,b,c,e,f,k,l,n){2<=t.version?X.ee?X.compressedTexImage2D(a,b,c,e,f,k,l,n):X.compressedTexImage2D(a,b,c,e,f,k,B,n,l):X.compressedTexImage2D(a,b,c,e,f,k,n?B.subarray(n,n+l):null)},ga:function(a,b,c,e,f,k,l,n,q){2<=t.version?X.ee?X.compressedTexSubImage2D(a,b,c,e,f,k,l,n,q):X.compressedTexSubImage2D(a,b,c,e,f,k,l,B,q,n):X.compressedTexSubImage2D(a,b,c,e,f,k,l,q?B.subarray(q,q+n):null)},Pb:function(a,b,c,e,f){X.copyBufferSubData(a,b,c,e,f)},ha:function(a,b,c,e,f,k,l,n){X.copyTexSubImage2D(a,
|
||||
b,c,e,f,k,l,n)},ia:function(){var a=ea(cd),b=X.createProgram();b.name=a;b.ve=b.te=b.ue=0;b.Ge=1;cd[a]=b;return a},ja:function(a){var b=ea(fd);fd[b]=X.createShader(a);return b},ka:function(a){X.cullFace(a)},la:function(a,b){for(var c=0;c<a;c++){var e=G[b+4*c>>2],f=bd[e];f&&(X.deleteBuffer(f),f.name=0,bd[e]=null,e==X.Be&&(X.Be=0),e==X.ee&&(X.ee=0))}},Zb:function(a,b){for(var c=0;c<a;++c){var e=G[b+4*c>>2],f=dd[e];f&&(X.deleteFramebuffer(f),f.name=0,dd[e]=null)}},ma:function(a){if(a){var b=cd[a];b?(X.deleteProgram(b),
|
||||
b.name=0,cd[a]=null):W(1281)}},_b:function(a,b){for(var c=0;c<a;c++){var e=G[b+4*c>>2],f=ed[e];f&&(X.deleteRenderbuffer(f),f.name=0,ed[e]=null)}},Ib:function(a,b){for(var c=0;c<a;c++){var e=G[b+4*c>>2],f=hd[e];f&&(X.deleteSampler(f),f.name=0,hd[e]=null)}},na:function(a){if(a){var b=fd[a];b?(X.deleteShader(b),fd[a]=null):W(1281)}},Qb:function(a){if(a){var b=jd[a];b?(X.deleteSync(b),b.name=0,jd[a]=null):W(1281)}},oa:function(a,b){for(var c=0;c<a;c++){var e=G[b+4*c>>2],f=fa[e];f&&(X.deleteTexture(f),
|
||||
f.name=0,fa[e]=null)}},qc:function(a,b){for(var c=0;c<a;c++){var e=G[b+4*c>>2];X.deleteVertexArray(gd[e]);gd[e]=null}},tc:function(a,b){for(var c=0;c<a;c++){var e=G[b+4*c>>2];X.deleteVertexArray(gd[e]);gd[e]=null}},pa:function(a){X.depthMask(!!a)},qa:function(a){X.disable(a)},ra:function(a){X.disableVertexAttribArray(a)},sa:function(a,b,c){X.drawArrays(a,b,c)},nc:function(a,b,c,e){X.drawArraysInstanced(a,b,c,e)},lc:function(a,b,c,e,f){X.Ie.drawArraysInstancedBaseInstanceWEBGL(a,b,c,e,f)},jc:function(a,
|
||||
b){for(var c=rd[a],e=0;e<a;e++)c[e]=G[b+4*e>>2];X.drawBuffers(c)},ta:function(a,b,c,e){X.drawElements(a,b,c,e)},oc:function(a,b,c,e,f){X.drawElementsInstanced(a,b,c,e,f)},mc:function(a,b,c,e,f,k,l){X.Ie.drawElementsInstancedBaseVertexBaseInstanceWEBGL(a,b,c,e,f,k,l)},dc:function(a,b,c,e,f,k){X.drawElements(a,e,f,k)},ua:function(a){X.enable(a)},va:function(a){X.enableVertexAttribArray(a)},Nb:function(a,b){return(a=X.fenceSync(a,b))?(b=ea(jd),a.name=b,jd[b]=a,b):0},wa:function(){X.finish()},xa:function(){X.flush()},
|
||||
$b:function(a,b,c,e){X.framebufferRenderbuffer(a,b,c,ed[e])},ac:function(a,b,c,e,f){X.framebufferTexture2D(a,b,c,fa[e],f)},ya:function(a){X.frontFace(a)},za:function(a,b){sd(a,b,"createBuffer",bd)},bc:function(a,b){sd(a,b,"createFramebuffer",dd)},cc:function(a,b){sd(a,b,"createRenderbuffer",ed)},Jb:function(a,b){sd(a,b,"createSampler",hd)},Aa:function(a,b){sd(a,b,"createTexture",fa)},rc:function(a,b){sd(a,b,"createVertexArray",gd)},uc:function(a,b){sd(a,b,"createVertexArray",gd)},Tb:function(a){X.generateMipmap(a)},
|
||||
Ba:function(a,b,c){c?G[c>>2]=X.getBufferParameter(a,b):W(1281)},Ca:function(){var a=X.getError()||nd;nd=0;return a},Da:function(a,b){td(a,b,2)},Ub:function(a,b,c,e){a=X.getFramebufferAttachmentParameter(a,b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;G[e>>2]=a},O:function(a,b){td(a,b,0)},Ea:function(a,b,c,e){a=X.getProgramInfoLog(cd[a]);null===a&&(a="(unknown error)");b=0<b&&e?la(a,B,e,b):0;c&&(G[c>>2]=b)},Fa:function(a,b,c){if(c)if(a>=ad)W(1281);else if(a=cd[a],35716==
|
||||
b)a=X.getProgramInfoLog(a),null===a&&(a="(unknown error)"),G[c>>2]=a.length+1;else if(35719==b){if(!a.ve)for(b=0;b<X.getProgramParameter(a,35718);++b)a.ve=Math.max(a.ve,X.getActiveUniform(a,b).name.length+1);G[c>>2]=a.ve}else if(35722==b){if(!a.te)for(b=0;b<X.getProgramParameter(a,35721);++b)a.te=Math.max(a.te,X.getActiveAttrib(a,b).name.length+1);G[c>>2]=a.te}else if(35381==b){if(!a.ue)for(b=0;b<X.getProgramParameter(a,35382);++b)a.ue=Math.max(a.ue,X.getActiveUniformBlockName(a,b).length+1);G[c>>
|
||||
2]=a.ue}else G[c>>2]=X.getProgramParameter(a,b);else W(1281)},Vb:function(a,b,c){c?G[c>>2]=X.getRenderbufferParameter(a,b):W(1281)},Ga:function(a,b,c,e){a=X.getShaderInfoLog(fd[a]);null===a&&(a="(unknown error)");b=0<b&&e?la(a,B,e,b):0;c&&(G[c>>2]=b)},Eb:function(a,b,c,e){a=X.getShaderPrecisionFormat(a,b);G[c>>2]=a.rangeMin;G[c+4>>2]=a.rangeMax;G[e>>2]=a.precision},Ha:function(a,b,c){c?35716==b?(a=X.getShaderInfoLog(fd[a]),null===a&&(a="(unknown error)"),G[c>>2]=a?a.length+1:0):35720==b?(a=X.getShaderSource(fd[a]),
|
||||
G[c>>2]=a?a.length+1:0):G[c>>2]=X.getShaderParameter(fd[a],b):W(1281)},T:function(a){var b=kd[a];if(!b){switch(a){case 7939:b=X.getSupportedExtensions()||[];b=b.concat(b.map(function(e){return"GL_"+e}));b=ud(b.join(" "));break;case 7936:case 7937:case 37445:case 37446:(b=X.getParameter(a))||W(1280);b=b&&ud(b);break;case 7938:b=X.getParameter(7938);b=2<=t.version?"OpenGL ES 3.0 ("+b+")":"OpenGL ES 2.0 ("+b+")";b=ud(b);break;case 35724:b=X.getParameter(35724);var c=b.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/);
|
||||
null!==c&&(3==c[1].length&&(c[1]+="0"),b="OpenGL ES GLSL ES "+c[1]+" ("+b+")");b=ud(b);break;default:W(1280)}kd[a]=b}return b},cb:function(a,b){if(2>t.version)return W(1282),0;var c=ld[a];if(c)return 0>b||b>=c.length?(W(1281),0):c[b];switch(a){case 7939:return c=X.getSupportedExtensions()||[],c=c.concat(c.map(function(e){return"GL_"+e})),c=c.map(function(e){return ud(e)}),c=ld[a]=c,0>b||b>=c.length?(W(1281),0):c[b];default:return W(1280),0}},Ia:function(a,b){b=Pa(b);if(a=cd[a]){var c=a,e=c.ne,f=c.Pe,
|
||||
k;if(!e)for(c.ne=e={},c.Oe={},k=0;k<X.getProgramParameter(c,35718);++k){var l=X.getActiveUniform(c,k);var n=l.name;l=l.size;var q=wd(n);q=0<q?n.slice(0,q):n;var x=c.Ge;c.Ge+=l;f[q]=[l,x];for(n=0;n<l;++n)e[x]=n,c.Oe[x++]=q}c=a.ne;e=0;f=b;k=wd(b);0<k&&(e=parseInt(b.slice(k+1))>>>0,f=b.slice(0,k));if((f=a.Pe[f])&&e<f[0]&&(e+=f[1],c[e]=c[e]||X.getUniformLocation(a,b)))return e}else W(1281);return-1},Fb:function(a,b,c){for(var e=rd[b],f=0;f<b;f++)e[f]=G[c+4*f>>2];X.invalidateFramebuffer(a,e)},Gb:function(a,
|
||||
b,c,e,f,k,l){for(var n=rd[b],q=0;q<b;q++)n[q]=G[c+4*q>>2];X.invalidateSubFramebuffer(a,n,e,f,k,l)},Ob:function(a){return X.isSync(jd[a])},Ja:function(a){return(a=fa[a])?X.isTexture(a):0},Ka:function(a){X.lineWidth(a)},La:function(a){a=cd[a];X.linkProgram(a);a.ne=0;a.Pe={}},hc:function(a,b,c,e,f,k){X.Me.multiDrawArraysInstancedBaseInstanceWEBGL(a,G,b>>2,G,c>>2,G,e>>2,J,f>>2,k)},ic:function(a,b,c,e,f,k,l,n){X.Me.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(a,G,b>>2,c,G,e>>2,G,f>>2,G,k>>2,J,
|
||||
l>>2,n)},Ma:function(a,b){3317==a&&(md=b);X.pixelStorei(a,b)},kc:function(a){X.readBuffer(a)},Na:function(a,b,c,e,f,k,l){if(2<=t.version)if(X.Be)X.readPixels(a,b,c,e,f,k,l);else{var n=xd(k);X.readPixels(a,b,c,e,f,k,n,l>>31-Math.clz32(n.BYTES_PER_ELEMENT))}else(l=yd(k,f,c,e,l))?X.readPixels(a,b,c,e,f,k,l):W(1280)},Wb:function(a,b,c,e){X.renderbufferStorage(a,b,c,e)},Sb:function(a,b,c,e,f){X.renderbufferStorageMultisample(a,b,c,e,f)},Kb:function(a,b,c){X.samplerParameterf(hd[a],b,c)},Lb:function(a,
|
||||
b,c){X.samplerParameteri(hd[a],b,c)},Mb:function(a,b,c){X.samplerParameteri(hd[a],b,G[c>>2])},Oa:function(a,b,c,e){X.scissor(a,b,c,e)},Pa:function(a,b,c,e){for(var f="",k=0;k<b;++k){var l=e?G[e+4*k>>2]:-1;f+=Pa(G[c+4*k>>2],0>l?void 0:l)}X.shaderSource(fd[a],f)},Qa:function(a,b,c){X.stencilFunc(a,b,c)},Ra:function(a,b,c,e){X.stencilFuncSeparate(a,b,c,e)},Sa:function(a){X.stencilMask(a)},Ta:function(a,b){X.stencilMaskSeparate(a,b)},Ua:function(a,b,c){X.stencilOp(a,b,c)},Va:function(a,b,c,e){X.stencilOpSeparate(a,
|
||||
b,c,e)},Wa:function(a,b,c,e,f,k,l,n,q){if(2<=t.version)if(X.ee)X.texImage2D(a,b,c,e,f,k,l,n,q);else if(q){var x=xd(n);X.texImage2D(a,b,c,e,f,k,l,n,x,q>>31-Math.clz32(x.BYTES_PER_ELEMENT))}else X.texImage2D(a,b,c,e,f,k,l,n,null);else X.texImage2D(a,b,c,e,f,k,l,n,q?yd(n,l,e,f,q):null)},Xa:function(a,b,c){X.texParameterf(a,b,c)},Ya:function(a,b,c){X.texParameterf(a,b,N[c>>2])},Za:function(a,b,c){X.texParameteri(a,b,c)},_a:function(a,b,c){X.texParameteri(a,b,G[c>>2])},ec:function(a,b,c,e,f){X.texStorage2D(a,
|
||||
b,c,e,f)},$a:function(a,b,c,e,f,k,l,n,q){if(2<=t.version)if(X.ee)X.texSubImage2D(a,b,c,e,f,k,l,n,q);else if(q){var x=xd(n);X.texSubImage2D(a,b,c,e,f,k,l,n,x,q>>31-Math.clz32(x.BYTES_PER_ELEMENT))}else X.texSubImage2D(a,b,c,e,f,k,l,n,null);else x=null,q&&(x=yd(n,l,f,k,q)),X.texSubImage2D(a,b,c,e,f,k,l,n,x)},ab:function(a,b){X.uniform1f(Y(a),b)},bb:function(a,b,c){if(2<=t.version)X.uniform1fv(Y(a),N,c>>2,b);else{if(288>=b)for(var e=zd[b-1],f=0;f<b;++f)e[f]=N[c+4*f>>2];else e=N.subarray(c>>2,c+4*b>>
|
||||
2);X.uniform1fv(Y(a),e)}},Pc:function(a,b){X.uniform1i(Y(a),b)},Qc:function(a,b,c){if(2<=t.version)X.uniform1iv(Y(a),G,c>>2,b);else{if(288>=b)for(var e=Ad[b-1],f=0;f<b;++f)e[f]=G[c+4*f>>2];else e=G.subarray(c>>2,c+4*b>>2);X.uniform1iv(Y(a),e)}},Rc:function(a,b,c){X.uniform2f(Y(a),b,c)},Sc:function(a,b,c){if(2<=t.version)X.uniform2fv(Y(a),N,c>>2,2*b);else{if(144>=b)for(var e=zd[2*b-1],f=0;f<2*b;f+=2)e[f]=N[c+4*f>>2],e[f+1]=N[c+(4*f+4)>>2];else e=N.subarray(c>>2,c+8*b>>2);X.uniform2fv(Y(a),e)}},Oc:function(a,
|
||||
b,c){X.uniform2i(Y(a),b,c)},Nc:function(a,b,c){if(2<=t.version)X.uniform2iv(Y(a),G,c>>2,2*b);else{if(144>=b)for(var e=Ad[2*b-1],f=0;f<2*b;f+=2)e[f]=G[c+4*f>>2],e[f+1]=G[c+(4*f+4)>>2];else e=G.subarray(c>>2,c+8*b>>2);X.uniform2iv(Y(a),e)}},Mc:function(a,b,c,e){X.uniform3f(Y(a),b,c,e)},Lc:function(a,b,c){if(2<=t.version)X.uniform3fv(Y(a),N,c>>2,3*b);else{if(96>=b)for(var e=zd[3*b-1],f=0;f<3*b;f+=3)e[f]=N[c+4*f>>2],e[f+1]=N[c+(4*f+4)>>2],e[f+2]=N[c+(4*f+8)>>2];else e=N.subarray(c>>2,c+12*b>>2);X.uniform3fv(Y(a),
|
||||
e)}},Kc:function(a,b,c,e){X.uniform3i(Y(a),b,c,e)},Jc:function(a,b,c){if(2<=t.version)X.uniform3iv(Y(a),G,c>>2,3*b);else{if(96>=b)for(var e=Ad[3*b-1],f=0;f<3*b;f+=3)e[f]=G[c+4*f>>2],e[f+1]=G[c+(4*f+4)>>2],e[f+2]=G[c+(4*f+8)>>2];else e=G.subarray(c>>2,c+12*b>>2);X.uniform3iv(Y(a),e)}},Ic:function(a,b,c,e,f){X.uniform4f(Y(a),b,c,e,f)},Hc:function(a,b,c){if(2<=t.version)X.uniform4fv(Y(a),N,c>>2,4*b);else{if(72>=b){var e=zd[4*b-1],f=N;c>>=2;for(var k=0;k<4*b;k+=4){var l=c+k;e[k]=f[l];e[k+1]=f[l+1];e[k+
|
||||
2]=f[l+2];e[k+3]=f[l+3]}}else e=N.subarray(c>>2,c+16*b>>2);X.uniform4fv(Y(a),e)}},vc:function(a,b,c,e,f){X.uniform4i(Y(a),b,c,e,f)},wc:function(a,b,c){if(2<=t.version)X.uniform4iv(Y(a),G,c>>2,4*b);else{if(72>=b)for(var e=Ad[4*b-1],f=0;f<4*b;f+=4)e[f]=G[c+4*f>>2],e[f+1]=G[c+(4*f+4)>>2],e[f+2]=G[c+(4*f+8)>>2],e[f+3]=G[c+(4*f+12)>>2];else e=G.subarray(c>>2,c+16*b>>2);X.uniform4iv(Y(a),e)}},xc:function(a,b,c,e){if(2<=t.version)X.uniformMatrix2fv(Y(a),!!c,N,e>>2,4*b);else{if(72>=b)for(var f=zd[4*b-1],
|
||||
k=0;k<4*b;k+=4)f[k]=N[e+4*k>>2],f[k+1]=N[e+(4*k+4)>>2],f[k+2]=N[e+(4*k+8)>>2],f[k+3]=N[e+(4*k+12)>>2];else f=N.subarray(e>>2,e+16*b>>2);X.uniformMatrix2fv(Y(a),!!c,f)}},yc:function(a,b,c,e){if(2<=t.version)X.uniformMatrix3fv(Y(a),!!c,N,e>>2,9*b);else{if(32>=b)for(var f=zd[9*b-1],k=0;k<9*b;k+=9)f[k]=N[e+4*k>>2],f[k+1]=N[e+(4*k+4)>>2],f[k+2]=N[e+(4*k+8)>>2],f[k+3]=N[e+(4*k+12)>>2],f[k+4]=N[e+(4*k+16)>>2],f[k+5]=N[e+(4*k+20)>>2],f[k+6]=N[e+(4*k+24)>>2],f[k+7]=N[e+(4*k+28)>>2],f[k+8]=N[e+(4*k+32)>>2];
|
||||
else f=N.subarray(e>>2,e+36*b>>2);X.uniformMatrix3fv(Y(a),!!c,f)}},zc:function(a,b,c,e){if(2<=t.version)X.uniformMatrix4fv(Y(a),!!c,N,e>>2,16*b);else{if(18>=b){var f=zd[16*b-1],k=N;e>>=2;for(var l=0;l<16*b;l+=16){var n=e+l;f[l]=k[n];f[l+1]=k[n+1];f[l+2]=k[n+2];f[l+3]=k[n+3];f[l+4]=k[n+4];f[l+5]=k[n+5];f[l+6]=k[n+6];f[l+7]=k[n+7];f[l+8]=k[n+8];f[l+9]=k[n+9];f[l+10]=k[n+10];f[l+11]=k[n+11];f[l+12]=k[n+12];f[l+13]=k[n+13];f[l+14]=k[n+14];f[l+15]=k[n+15]}}else f=N.subarray(e>>2,e+64*b>>2);X.uniformMatrix4fv(Y(a),
|
||||
!!c,f)}},Ac:function(a){a=cd[a];X.useProgram(a);X.Ye=a},Bc:function(a,b){X.vertexAttrib1f(a,b)},Cc:function(a,b){X.vertexAttrib2f(a,N[b>>2],N[b+4>>2])},Dc:function(a,b){X.vertexAttrib3f(a,N[b>>2],N[b+4>>2],N[b+8>>2])},Ec:function(a,b){X.vertexAttrib4f(a,N[b>>2],N[b+4>>2],N[b+8>>2],N[b+12>>2])},fc:function(a,b){X.vertexAttribDivisor(a,b)},gc:function(a,b,c,e,f){X.vertexAttribIPointer(a,b,c,e,f)},Fc:function(a,b,c,e,f,k){X.vertexAttribPointer(a,b,c,!!e,f,k)},Gc:function(a,b,c,e){X.viewport(a,b,c,e)},
|
||||
eb:function(a,b,c,e){X.waitSync(jd[a],b,(c>>>0)+4294967296*e)},nb:function(a){var b=B.length;a>>>=0;if(2147483648<a)return!1;for(var c=1;4>=c;c*=2){var e=b*(1+.2/c);e=Math.min(e,a+100663296);e=Math.max(a,e);0<e%65536&&(e+=65536-e%65536);a:{try{Ka.grow(Math.min(2147483648,e)-$a.byteLength+65535>>>16);cb();var f=1;break a}catch(k){}f=void 0}if(f)return!0}return!1},gb:function(){return t?t.kf:0},qb:function(a,b){var c=0;Cd().forEach(function(e,f){var k=b+c;f=G[a+4*f>>2]=k;for(k=0;k<e.length;++k)ab[f++>>
|
||||
0]=e.charCodeAt(k);ab[f>>0]=0;c+=e.length+1});return 0},rb:function(a,b){var c=Cd();G[a>>2]=c.length;var e=0;c.forEach(function(f){e+=f.length+1});G[b>>2]=e;return 0},Bb:function(a){if(!(noExitRuntime||0<Da)){if(r.onExit)r.onExit(a);La=!0}oa(a,new Ea(a))},Q:function(){return 0},hb:function(a,b,c,e,f,k){a=wb.ff(a);b=wb.$e(a,b,c,e);G[k>>2]=b;return 0},wb:function(a,b,c,e){a=wb.ff(a);b=wb.$e(a,b,c);G[e>>2]=b;return 0},ib:function(){},V:function(a,b,c,e){for(var f=0,k=0;k<c;k++){var l=G[b>>2],n=G[b+4>>
|
||||
2];b+=8;for(var q=0;q<n;q++){var x=B[l+q],y=vb[a];0===x||10===x?((1===a?Ga:Fa)(Oa(y,0)),y.length=0):y.push(x)}f+=n}G[e>>2]=f;return 0},b:function(){return Ha},q:Sd,o:Td,m:Ud,S:Vd,aa:Wd,$:Xd,z:Yd,y:Zd,t:$d,x:ae,ba:be,Cb:ce,Db:de,c:function(a){Ha=a},kb:function(a,b,c,e){return Jd(a,b,c,e)}};
|
||||
(function(){function a(f){r.asm=f.exports;Ka=r.asm.cd;cb();db=r.asm.ed;fb.unshift(r.asm.dd);jb--;r.monitorRunDependencies&&r.monitorRunDependencies(jb);0==jb&&(null!==kb&&(clearInterval(kb),kb=null),lb&&(f=lb,lb=null,f()))}function b(f){a(f.instance)}function c(f){return qb().then(function(k){return WebAssembly.instantiate(k,e)}).then(function(k){return k}).then(f,function(k){Fa("failed to asynchronously prepare wasm: "+k);Ja(k)})}var e={a:ee};jb++;r.monitorRunDependencies&&r.monitorRunDependencies(jb);
|
||||
if(r.instantiateWasm)try{return r.instantiateWasm(e,a)}catch(f){return Fa("Module.instantiateWasm callback failed with error: "+f),!1}(function(){return Ia||"function"!==typeof WebAssembly.instantiateStreaming||mb()||nb.startsWith("file://")||"function"!==typeof fetch?c(b):fetch(nb,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,e).then(b,function(k){Fa("wasm streaming compile failed: "+k);Fa("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(ca);
|
||||
return{}})();r.___wasm_call_ctors=function(){return(r.___wasm_call_ctors=r.asm.dd).apply(null,arguments)};var Rd=r.___errno_location=function(){return(Rd=r.___errno_location=r.asm.fd).apply(null,arguments)},Cc=r._free=function(){return(Cc=r._free=r.asm.gd).apply(null,arguments)},vd=r._malloc=function(){return(vd=r._malloc=r.asm.hd).apply(null,arguments)},Bc=r.___getTypeName=function(){return(Bc=r.___getTypeName=r.asm.id).apply(null,arguments)};
|
||||
r.___embind_register_native_and_builtin_types=function(){return(r.___embind_register_native_and_builtin_types=r.asm.jd).apply(null,arguments)};var Qd=r._memalign=function(){return(Qd=r._memalign=r.asm.kd).apply(null,arguments)},fe=r._setThrew=function(){return(fe=r._setThrew=r.asm.ld).apply(null,arguments)},ge=r.stackSave=function(){return(ge=r.stackSave=r.asm.md).apply(null,arguments)},he=r.stackRestore=function(){return(he=r.stackRestore=r.asm.nd).apply(null,arguments)};
|
||||
r.dynCall_viji=function(){return(r.dynCall_viji=r.asm.od).apply(null,arguments)};r.dynCall_vijiii=function(){return(r.dynCall_vijiii=r.asm.pd).apply(null,arguments)};r.dynCall_viiiiij=function(){return(r.dynCall_viiiiij=r.asm.qd).apply(null,arguments)};r.dynCall_iiiji=function(){return(r.dynCall_iiiji=r.asm.rd).apply(null,arguments)};r.dynCall_jii=function(){return(r.dynCall_jii=r.asm.sd).apply(null,arguments)};r.dynCall_vij=function(){return(r.dynCall_vij=r.asm.td).apply(null,arguments)};
|
||||
r.dynCall_iiij=function(){return(r.dynCall_iiij=r.asm.ud).apply(null,arguments)};r.dynCall_iiiij=function(){return(r.dynCall_iiiij=r.asm.vd).apply(null,arguments)};r.dynCall_viij=function(){return(r.dynCall_viij=r.asm.wd).apply(null,arguments)};r.dynCall_viiij=function(){return(r.dynCall_viiij=r.asm.xd).apply(null,arguments)};r.dynCall_ji=function(){return(r.dynCall_ji=r.asm.yd).apply(null,arguments)};r.dynCall_iij=function(){return(r.dynCall_iij=r.asm.zd).apply(null,arguments)};
|
||||
r.dynCall_jiiii=function(){return(r.dynCall_jiiii=r.asm.Ad).apply(null,arguments)};r.dynCall_jiiiiii=function(){return(r.dynCall_jiiiiii=r.asm.Bd).apply(null,arguments)};r.dynCall_jiiiiji=function(){return(r.dynCall_jiiiiji=r.asm.Cd).apply(null,arguments)};r.dynCall_iijj=function(){return(r.dynCall_iijj=r.asm.Dd).apply(null,arguments)};r.dynCall_iiji=function(){return(r.dynCall_iiji=r.asm.Ed).apply(null,arguments)};r.dynCall_iijjiii=function(){return(r.dynCall_iijjiii=r.asm.Fd).apply(null,arguments)};
|
||||
r.dynCall_vijjjii=function(){return(r.dynCall_vijjjii=r.asm.Gd).apply(null,arguments)};r.dynCall_jiji=function(){return(r.dynCall_jiji=r.asm.Hd).apply(null,arguments)};r.dynCall_viijii=function(){return(r.dynCall_viijii=r.asm.Id).apply(null,arguments)};r.dynCall_iiiiij=function(){return(r.dynCall_iiiiij=r.asm.Jd).apply(null,arguments)};r.dynCall_iiiiijj=function(){return(r.dynCall_iiiiijj=r.asm.Kd).apply(null,arguments)};
|
||||
r.dynCall_iiiiiijj=function(){return(r.dynCall_iiiiiijj=r.asm.Ld).apply(null,arguments)};function ae(a,b,c,e,f){var k=ge();try{O(a)(b,c,e,f)}catch(l){he(k);if(l!==l+0&&"longjmp"!==l)throw l;fe(1,0)}}function Td(a,b,c){var e=ge();try{return O(a)(b,c)}catch(f){he(e);if(f!==f+0&&"longjmp"!==f)throw f;fe(1,0)}}function Zd(a,b,c){var e=ge();try{O(a)(b,c)}catch(f){he(e);if(f!==f+0&&"longjmp"!==f)throw f;fe(1,0)}}
|
||||
function Sd(a,b){var c=ge();try{return O(a)(b)}catch(e){he(c);if(e!==e+0&&"longjmp"!==e)throw e;fe(1,0)}}function Yd(a,b){var c=ge();try{O(a)(b)}catch(e){he(c);if(e!==e+0&&"longjmp"!==e)throw e;fe(1,0)}}function Ud(a,b,c,e){var f=ge();try{return O(a)(b,c,e)}catch(k){he(f);if(k!==k+0&&"longjmp"!==k)throw k;fe(1,0)}}function $d(a,b,c,e){var f=ge();try{O(a)(b,c,e)}catch(k){he(f);if(k!==k+0&&"longjmp"!==k)throw k;fe(1,0)}}
|
||||
function be(a,b,c,e,f,k){var l=ge();try{O(a)(b,c,e,f,k)}catch(n){he(l);if(n!==n+0&&"longjmp"!==n)throw n;fe(1,0)}}function Wd(a,b,c,e,f,k,l){var n=ge();try{return O(a)(b,c,e,f,k,l)}catch(q){he(n);if(q!==q+0&&"longjmp"!==q)throw q;fe(1,0)}}function Vd(a,b,c,e,f){var k=ge();try{return O(a)(b,c,e,f)}catch(l){he(k);if(l!==l+0&&"longjmp"!==l)throw l;fe(1,0)}}function de(a,b,c,e,f,k,l,n,q,x){var y=ge();try{O(a)(b,c,e,f,k,l,n,q,x)}catch(C){he(y);if(C!==C+0&&"longjmp"!==C)throw C;fe(1,0)}}
|
||||
function ce(a,b,c,e,f,k,l){var n=ge();try{O(a)(b,c,e,f,k,l)}catch(q){he(n);if(q!==q+0&&"longjmp"!==q)throw q;fe(1,0)}}function Xd(a,b,c,e,f,k,l,n,q,x){var y=ge();try{return O(a)(b,c,e,f,k,l,n,q,x)}catch(C){he(y);if(C!==C+0&&"longjmp"!==C)throw C;fe(1,0)}}var ie;function Ea(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}lb=function je(){ie||ke();ie||(lb=je)};
|
||||
function ke(){function a(){if(!ie&&(ie=!0,r.calledRun=!0,!La)){rb(fb);ba(r);if(r.onRuntimeInitialized)r.onRuntimeInitialized();if(r.postRun)for("function"==typeof r.postRun&&(r.postRun=[r.postRun]);r.postRun.length;){var b=r.postRun.shift();hb.unshift(b)}rb(hb)}}if(!(0<jb)){if(r.preRun)for("function"==typeof r.preRun&&(r.preRun=[r.preRun]);r.preRun.length;)ib();rb(eb);0<jb||(r.setStatus?(r.setStatus("Running..."),setTimeout(function(){setTimeout(function(){r.setStatus("")},1);a()},1)):a())}}
|
||||
r.run=ke;if(r.preInit)for("function"==typeof r.preInit&&(r.preInit=[r.preInit]);0<r.preInit.length;)r.preInit.pop()();ke();
|
||||
|
||||
|
||||
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;
|
||||
@ -0,0 +1,223 @@
|
||||
|
||||
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 r;r||(r=typeof CanvasKitInit !== 'undefined' ? CanvasKitInit : {});var aa=Object.assign,ba,ca;r.ready=new Promise(function(a,b){ba=a;ca=b});
|
||||
(function(a){a.Md=a.Md||[];a.Md.push(function(){a.MakeSWCanvasSurface=function(b){var c=b;if("CANVAS"!==c.tagName&&(c=document.getElementById(b),!c))throw"Canvas with id "+b+" was not found";if(b=a.MakeSurface(c.width,c.height))b.ke=c;return b};a.MakeCanvasSurface||(a.MakeCanvasSurface=a.MakeSWCanvasSurface);a.MakeSurface=function(b,c){var e={width:b,height:c,colorType:a.ColorType.RGBA_8888,alphaType:a.AlphaType.Unpremul,colorSpace:a.ColorSpace.SRGB},f=b*c*4,k=a._malloc(f);if(e=a.Surface._makeRasterDirect(e,
|
||||
k,4*b))e.ke=null,e.Qe=b,e.Ne=c,e.Oe=f,e.ue=k,e.getCanvas().clear(a.TRANSPARENT);return e};a.MakeRasterDirectSurface=function(b,c,e){return a.Surface._makeRasterDirect(b,c.byteOffset,e)};a.Surface.prototype.flush=function(b){a.Jd(this.Id);this._flush();if(this.ke){var c=new Uint8ClampedArray(a.HEAPU8.buffer,this.ue,this.Oe);c=new ImageData(c,this.Qe,this.Ne);b?this.ke.getContext("2d").putImageData(c,0,0,b[0],b[1],b[2]-b[0],b[3]-b[1]):this.ke.getContext("2d").putImageData(c,0,0)}};a.Surface.prototype.dispose=
|
||||
function(){this.ue&&a._free(this.ue);this.delete()};a.Jd=a.Jd||function(){};a.le=a.le||function(){return null}})})(r);
|
||||
(function(a){a.Md=a.Md||[];a.Md.push(function(){function b(n,q,x){return n&&n.hasOwnProperty(q)?n[q]:x}function c(n){var q=ea(fa);fa[q]=n;return q}function e(n){return n.naturalHeight||n.videoHeight||n.displayHeight||n.height}function f(n){return n.naturalWidth||n.videoWidth||n.displayWidth||n.width}function k(n,q,x,y){n.bindTexture(n.TEXTURE_2D,q);y||x.alphaType!==a.AlphaType.Premul||n.pixelStorei(n.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);return q}function l(n,q,x){x||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 x={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)};x.majorVersion=q&&q.majorVersion?q.majorVersion:"undefined"!==typeof WebGL2RenderingContext?2:1;if(x.explicitSwapControl)throw"explicitSwapControl is not supported";n=ha(n,x);if(!n)return 0;ia(n);u.Ud.getExtension("WEBGL_debug_renderer_info");return n};a.deleteContext=function(n){u===ja[n]&&(u=null);"object"===typeof JSEvents&&
|
||||
JSEvents.If(ja[n].Ud.canvas);ja[n]&&ja[n].Ud.canvas&&(ja[n].Ud.canvas.Le=void 0);ja[n]=null};a._setTextureCleanup({deleteTexture:function(n,q){var x=fa[q];x&&ja[n].Ud.deleteTexture(x);fa[q]=null}});a.MakeWebGLContext=function(n){if(!this.Jd(n))return null;var q=this._MakeGrContext();if(!q)return null;q.Id=n;var x=q.delete.bind(q);q["delete"]=function(){a.Jd(this.Id);x()}.bind(q);return u.xe=q};a.MakeGrContext=a.MakeWebGLContext;a.GrDirectContext.prototype.getResourceCacheLimitBytes=function(){a.Jd(this.Id);
|
||||
this._getResourceCacheLimitBytes()};a.GrDirectContext.prototype.getResourceCacheUsageBytes=function(){a.Jd(this.Id);this._getResourceCacheUsageBytes()};a.GrDirectContext.prototype.releaseResourcesAndAbandonContext=function(){a.Jd(this.Id);this._releaseResourcesAndAbandonContext()};a.GrDirectContext.prototype.setResourceCacheLimitBytes=function(n){a.Jd(this.Id);this._setResourceCacheLimitBytes(n)};a.MakeOnScreenGLSurface=function(n,q,x,y,C,E){if(!this.Jd(n.Id))return null;q=void 0===C||void 0===E?
|
||||
this._MakeOnScreenGLSurface(n,q,x,y):this._MakeOnScreenGLSurface(n,q,x,y,C,E);if(!q)return null;q.Id=n.Id;return q};a.MakeRenderTarget=function(){var n=arguments[0];if(!this.Jd(n.Id))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.Id=n.Id;return q};a.MakeWebGLCanvasSurface=function(n,q,x){q=q||null;var y=n,C="undefined"!==
|
||||
typeof OffscreenCanvas&&y instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&y instanceof HTMLCanvasElement||C||(y=document.getElementById(n),y)))throw"Canvas with id "+n+" was not found";n=this.GetWebGLContext(y,x);if(!n||0>n)throw"failed to create webgl context: err "+n;n=this.MakeWebGLContext(n);q=this.MakeOnScreenGLSurface(n,y.width,y.height,q);return q?q:(q=y.cloneNode(!0),y.parentNode.replaceChild(q,y),q.classList.add("ck-replaced"),a.MakeSWCanvasSurface(q))};a.MakeCanvasSurface=
|
||||
a.MakeWebGLCanvasSurface;a.Surface.prototype.makeImageFromTexture=function(n,q){a.Jd(this.Id);n=c(n);if(q=this._makeImageFromTexture(this.Id,n,q))q.ee=n;return q};a.Surface.prototype.makeImageFromTextureSource=function(n,q,x){q||(q={height:e(n),width:f(n),colorType:a.ColorType.RGBA_8888,alphaType:x?a.AlphaType.Premul:a.AlphaType.Unpremul});q.colorSpace||(q.colorSpace=a.ColorSpace.SRGB);a.Jd(this.Id);var y=u.Ud;x=k(y,y.createTexture(),q,x);2===u.version?y.texImage2D(y.TEXTURE_2D,0,y.RGBA,q.width,q.height,
|
||||
0,y.RGBA,y.UNSIGNED_BYTE,n):y.texImage2D(y.TEXTURE_2D,0,y.RGBA,y.RGBA,y.UNSIGNED_BYTE,n);l(y,q);this._resetContext();return this.makeImageFromTexture(x,q)};a.Surface.prototype.updateTextureFromSource=function(n,q,x){if(n.ee){a.Jd(this.Id);var y=n.getImageInfo(),C=u.Ud,E=k(C,fa[n.ee],y,x);2===u.version?C.texImage2D(C.TEXTURE_2D,0,C.RGBA,f(q),e(q),0,C.RGBA,C.UNSIGNED_BYTE,q):C.texImage2D(C.TEXTURE_2D,0,C.RGBA,C.RGBA,C.UNSIGNED_BYTE,q);l(C,y,x);this._resetContext();fa[n.ee]=null;n.ee=c(E);y.colorSpace=
|
||||
n.getColorSpace();q=this._makeImageFromTexture(this.Id,n.ee,y);x=n.Hd.Kd;C=n.Hd.Pd;n.Hd.Kd=q.Hd.Kd;n.Hd.Pd=q.Hd.Pd;q.Hd.Kd=x;q.Hd.Pd=C;q.delete();y.colorSpace.delete()}};a.MakeLazyImageFromTextureSource=function(n,q,x){q||(q={height:e(n),width:f(n),colorType:a.ColorType.RGBA_8888,alphaType:x?a.AlphaType.Premul:a.AlphaType.Unpremul});q.colorSpace||(q.colorSpace=a.ColorSpace.SRGB);var y={makeTexture:function(){var C=u,E=C.Ud,v=k(E,E.createTexture(),q,x);2===C.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);l(E,q,x);return c(v)},freeSrc:function(){}};"VideoFrame"===n.constructor.name&&(y.freeSrc=function(){n.close()});return a.Image._makeFromGenerator(q,y)};a.Jd=function(n){return n?ia(n):!1};a.le=function(){return u&&u.xe&&!u.xe.isDeleted()?u.xe:null}})})(r);
|
||||
(function(a){function b(g){return(f(255*g[3])<<24|f(255*g[0])<<16|f(255*g[1])<<8|f(255*g[2])<<0)>>>0}function c(g){if(g&&g._ck)return g;if(g instanceof Float32Array){for(var d=Math.floor(g.length/4),h=new Uint32Array(d),m=0;m<d;m++)h[m]=b(g.slice(4*m,4*(m+1)));return h}if(g instanceof Uint32Array)return g;if(g instanceof Array&&g[0]instanceof Float32Array)return g.map(b)}function e(g){if(void 0===g)return 1;var d=parseFloat(g);return g&&-1!==g.indexOf("%")?d/100:d}function f(g){return Math.round(Math.max(0,
|
||||
Math.min(g||0,255)))}function k(g,d){d&&d._ck||a._free(g)}function l(g,d,h){if(!g||!g.length)return M;if(g&&g._ck)return g.byteOffset;var m=a[d].BYTES_PER_ELEMENT;h||(h=a._malloc(g.length*m));a[d].set(g,h/m);return h}function n(g){var d={Rd:M,count:g.length,fe:a.ColorType.RGBA_F32};if(g instanceof Float32Array)d.Rd=l(g,"HEAPF32"),d.count=g.length/4;else if(g instanceof Uint32Array)d.Rd=l(g,"HEAPU32"),d.fe=a.ColorType.RGBA_8888;else if(g instanceof Array){if(g&&g.length){for(var h=a._malloc(16*g.length),
|
||||
m=0,t=h/4,w=0;w<g.length;w++)for(var z=0;4>z;z++)a.HEAPF32[t+m]=g[w][z],m++;g=h}else g=M;d.Rd=g}else throw"Invalid argument to copyFlexibleColorArray, Not a color array "+typeof g;return d}function q(g){if(!g)return M;var d=R.toTypedArray();if(g.length){if(6===g.length||9===g.length)return l(g,"HEAPF32",I),6===g.length&&a.HEAPF32.set(od,6+I/4),I;if(16===g.length)return d[0]=g[0],d[1]=g[1],d[2]=g[3],d[3]=g[4],d[4]=g[5],d[5]=g[7],d[6]=g[12],d[7]=g[13],d[8]=g[15],I;throw"invalid matrix size";}if(void 0===
|
||||
g.m11)throw"invalid matrix argument";d[0]=g.m11;d[1]=g.m21;d[2]=g.m41;d[3]=g.m12;d[4]=g.m22;d[5]=g.m42;d[6]=g.m14;d[7]=g.m24;d[8]=g.m44;return I}function x(g){if(!g)return M;var d=da.toTypedArray();if(g.length){if(16!==g.length&&6!==g.length&&9!==g.length)throw"invalid matrix size";if(16===g.length)return l(g,"HEAPF32",Z);d.fill(0);d[0]=g[0];d[1]=g[1];d[3]=g[2];d[4]=g[3];d[5]=g[4];d[7]=g[5];d[10]=1;d[12]=g[6];d[13]=g[7];d[15]=g[8];6===g.length&&(d[12]=0,d[13]=0,d[15]=1);return Z}if(void 0===g.m11)throw"invalid matrix argument";
|
||||
d[0]=g.m11;d[1]=g.m21;d[2]=g.m31;d[3]=g.m41;d[4]=g.m12;d[5]=g.m22;d[6]=g.m32;d[7]=g.m42;d[8]=g.m13;d[9]=g.m23;d[10]=g.m33;d[11]=g.m43;d[12]=g.m14;d[13]=g.m24;d[14]=g.m34;d[15]=g.m44;return Z}function y(g,d){return l(g,"HEAPF32",d||ua)}function C(g,d,h,m){var t=Ma.toTypedArray();t[0]=g;t[1]=d;t[2]=h;t[3]=m;return ua}function E(g){for(var d=new Float32Array(4),h=0;4>h;h++)d[h]=a.HEAPF32[g/4+h];return d}function v(g,d){return l(g,"HEAPF32",d||V)}function D(g,d){return l(g,"HEAPF32",d||Gb)}a.Color=function(g,
|
||||
d,h,m){void 0===m&&(m=1);return a.Color4f(f(g)/255,f(d)/255,f(h)/255,m)};a.ColorAsInt=function(g,d,h,m){void 0===m&&(m=255);return(f(m)<<24|f(g)<<16|f(d)<<8|f(h)<<0&268435455)>>>0};a.Color4f=function(g,d,h,m){void 0===m&&(m=1);return Float32Array.of(g,d,h,m)};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(g){return[Math.floor(255*g[0]),Math.floor(255*
|
||||
g[1]),Math.floor(255*g[2]),g[3]]};a.parseColorString=function(g,d){g=g.toLowerCase();if(g.startsWith("#")){d=255;switch(g.length){case 9:d=parseInt(g.slice(7,9),16);case 7:var h=parseInt(g.slice(1,3),16);var m=parseInt(g.slice(3,5),16);var t=parseInt(g.slice(5,7),16);break;case 5:d=17*parseInt(g.slice(4,5),16);case 4:h=17*parseInt(g.slice(1,2),16),m=17*parseInt(g.slice(2,3),16),t=17*parseInt(g.slice(3,4),16)}return a.Color(h,m,t,d/255)}return g.startsWith("rgba")?(g=g.slice(5,-1),g=g.split(","),a.Color(+g[0],
|
||||
+g[1],+g[2],e(g[3]))):g.startsWith("rgb")?(g=g.slice(4,-1),g=g.split(","),a.Color(+g[0],+g[1],+g[2],e(g[3]))):g.startsWith("gray(")||g.startsWith("hsl")||!d||(g=d[g],void 0===g)?a.BLACK:g};a.multiplyByAlpha=function(g,d){g=g.slice();g[3]=Math.max(0,Math.min(g[3]*d,1));return g};a.Malloc=function(g,d){var h=a._malloc(d*g.BYTES_PER_ELEMENT);return{_ck:!0,length:d,byteOffset:h,Yd:null,subarray:function(m,t){m=this.toTypedArray().subarray(m,t);m._ck=!0;return m},toTypedArray:function(){if(this.Yd&&this.Yd.length)return this.Yd;
|
||||
this.Yd=new g(a.HEAPU8.buffer,h,d);this.Yd._ck=!0;return this.Yd}}};a.Free=function(g){a._free(g.byteOffset);g.byteOffset=M;g.toTypedArray=null;g.Yd=null};var I=M,R,Z=M,da,ua=M,Ma,va,V=M,pc,Ba=M,qc,Hb=M,rc,Ib=M,Jb,gb=M,sc,Gb=M,tc,uc=M,od=Float32Array.of(0,0,1),M=0;a.onRuntimeInitialized=function(){function g(d,h,m,t,w,z,F){z||(z=4*t.width,t.colorType===a.ColorType.RGBA_F16?z*=2:t.colorType===a.ColorType.RGBA_F32&&(z*=4));var K=z*t.height;var H=w?w.byteOffset:a._malloc(K);if(F?!d._readPixels(t,H,z,
|
||||
h,m,F):!d._readPixels(t,H,z,h,m))return w||a._free(H),null;if(w)return w.toTypedArray();switch(t.colorType){case a.ColorType.RGBA_8888:case a.ColorType.RGBA_F16:d=(new Uint8Array(a.HEAPU8.buffer,H,K)).slice();break;case a.ColorType.RGBA_F32:d=(new Float32Array(a.HEAPU8.buffer,H,K)).slice();break;default:return null}a._free(H);return d}Ma=a.Malloc(Float32Array,4);ua=Ma.byteOffset;da=a.Malloc(Float32Array,16);Z=da.byteOffset;R=a.Malloc(Float32Array,9);I=R.byteOffset;sc=a.Malloc(Float32Array,12);Gb=
|
||||
sc.byteOffset;tc=a.Malloc(Float32Array,12);uc=tc.byteOffset;va=a.Malloc(Float32Array,4);V=va.byteOffset;pc=a.Malloc(Float32Array,4);Ba=pc.byteOffset;qc=a.Malloc(Float32Array,3);Hb=qc.byteOffset;rc=a.Malloc(Float32Array,3);Ib=rc.byteOffset;Jb=a.Malloc(Int32Array,4);gb=Jb.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(d){var h=l(d,"HEAPF32"),m=a.Path._MakeFromCmds(h,d.length);k(h,d);return m};a.Path.MakeFromVerbsPointsWeights=function(d,h,m){var t=l(d,"HEAPU8"),w=l(h,"HEAPF32"),z=l(m,"HEAPF32"),F=a.Path._MakeFromVerbsPointsWeights(t,d.length,w,h.length,z,m&&m.length||0);k(t,d);k(w,h);k(z,m);return F};a.Path.prototype.addArc=function(d,h,m){d=v(d);this._addArc(d,h,m);return this};a.Path.prototype.addCircle=function(d,h,m,t){this._addCircle(d,h,m,!!t);return this};a.Path.prototype.addOval=function(d,h,m){void 0===
|
||||
m&&(m=1);d=v(d);this._addOval(d,!!h,m);return this};a.Path.prototype.addPath=function(){var d=Array.prototype.slice.call(arguments),h=d[0],m=!1;"boolean"===typeof d[d.length-1]&&(m=d.pop());if(1===d.length)this._addPath(h,1,0,0,0,1,0,0,0,1,m);else if(2===d.length)d=d[1],this._addPath(h,d[0],d[1],d[2],d[3],d[4],d[5],d[6]||0,d[7]||0,d[8]||1,m);else if(7===d.length||10===d.length)this._addPath(h,d[1],d[2],d[3],d[4],d[5],d[6],d[7]||0,d[8]||0,d[9]||1,m);else return null;return this};a.Path.prototype.addPoly=
|
||||
function(d,h){var m=l(d,"HEAPF32");this._addPoly(m,d.length/2,h);k(m,d);return this};a.Path.prototype.addRect=function(d,h){d=v(d);this._addRect(d,!!h);return this};a.Path.prototype.addRRect=function(d,h){d=D(d);this._addRRect(d,!!h);return this};a.Path.prototype.addVerbsPointsWeights=function(d,h,m){var t=l(d,"HEAPU8"),w=l(h,"HEAPF32"),z=l(m,"HEAPF32");this._addVerbsPointsWeights(t,d.length,w,h.length,z,m&&m.length||0);k(t,d);k(w,h);k(z,m)};a.Path.prototype.arc=function(d,h,m,t,w,z){d=a.LTRBRect(d-
|
||||
m,h-m,d+m,h+m);w=(w-t)/Math.PI*180-360*!!z;z=new a.Path;z.addArc(d,t/Math.PI*180,w);this.addPath(z,!0);z.delete();return this};a.Path.prototype.arcToOval=function(d,h,m,t){d=v(d);this._arcToOval(d,h,m,t);return this};a.Path.prototype.arcToRotated=function(d,h,m,t,w,z,F){this._arcToRotated(d,h,m,!!t,!!w,z,F);return this};a.Path.prototype.arcToTangent=function(d,h,m,t,w){this._arcToTangent(d,h,m,t,w);return this};a.Path.prototype.close=function(){this._close();return this};a.Path.prototype.conicTo=
|
||||
function(d,h,m,t,w){this._conicTo(d,h,m,t,w);return this};a.Path.prototype.computeTightBounds=function(d){this._computeTightBounds(V);var h=va.toTypedArray();return d?(d.set(h),d):h.slice()};a.Path.prototype.cubicTo=function(d,h,m,t,w,z){this._cubicTo(d,h,m,t,w,z);return this};a.Path.prototype.dash=function(d,h,m){return this._dash(d,h,m)?this:null};a.Path.prototype.getBounds=function(d){this._getBounds(V);var h=va.toTypedArray();return d?(d.set(h),d):h.slice()};a.Path.prototype.lineTo=function(d,
|
||||
h){this._lineTo(d,h);return this};a.Path.prototype.moveTo=function(d,h){this._moveTo(d,h);return this};a.Path.prototype.offset=function(d,h){this._transform(1,0,d,0,1,h,0,0,1);return this};a.Path.prototype.quadTo=function(d,h,m,t){this._quadTo(d,h,m,t);return this};a.Path.prototype.rArcTo=function(d,h,m,t,w,z,F){this._rArcTo(d,h,m,t,w,z,F);return this};a.Path.prototype.rConicTo=function(d,h,m,t,w){this._rConicTo(d,h,m,t,w);return this};a.Path.prototype.rCubicTo=function(d,h,m,t,w,z){this._rCubicTo(d,
|
||||
h,m,t,w,z);return this};a.Path.prototype.rLineTo=function(d,h){this._rLineTo(d,h);return this};a.Path.prototype.rMoveTo=function(d,h){this._rMoveTo(d,h);return this};a.Path.prototype.rQuadTo=function(d,h,m,t){this._rQuadTo(d,h,m,t);return this};a.Path.prototype.stroke=function(d){d=d||{};d.width=d.width||1;d.miter_limit=d.miter_limit||4;d.cap=d.cap||a.StrokeCap.Butt;d.join=d.join||a.StrokeJoin.Miter;d.precision=d.precision||1;return this._stroke(d)?this:null};a.Path.prototype.transform=function(){if(1===
|
||||
arguments.length){var d=arguments[0];this._transform(d[0],d[1],d[2],d[3],d[4],d[5],d[6]||0,d[7]||0,d[8]||1)}else if(6===arguments.length||9===arguments.length)d=arguments,this._transform(d[0],d[1],d[2],d[3],d[4],d[5],d[6]||0,d[7]||0,d[8]||1);else throw"transform expected to take 1 or 9 arguments. Got "+arguments.length;return this};a.Path.prototype.trim=function(d,h,m){return this._trim(d,h,!!m)?this:null};a.Image.prototype.encodeToBytes=function(d,h){var m=a.le();d=d||a.ImageFormat.PNG;h=h||100;
|
||||
return m?this._encodeToBytes(d,h,m):this._encodeToBytes(d,h)};a.Image.prototype.makeShaderCubic=function(d,h,m,t,w){w=q(w);return this._makeShaderCubic(d,h,m,t,w)};a.Image.prototype.makeShaderOptions=function(d,h,m,t,w){w=q(w);return this._makeShaderOptions(d,h,m,t,w)};a.Image.prototype.readPixels=function(d,h,m,t,w){var z=a.le();return g(this,d,h,m,t,w,z)};a.Canvas.prototype.clear=function(d){a.Jd(this.Id);d=y(d);this._clear(d)};a.Canvas.prototype.clipRRect=function(d,h,m){a.Jd(this.Id);d=D(d);this._clipRRect(d,
|
||||
h,m)};a.Canvas.prototype.clipRect=function(d,h,m){a.Jd(this.Id);d=v(d);this._clipRect(d,h,m)};a.Canvas.prototype.concat=function(d){a.Jd(this.Id);d=x(d);this._concat(d)};a.Canvas.prototype.drawArc=function(d,h,m,t,w){a.Jd(this.Id);d=v(d);this._drawArc(d,h,m,t,w)};a.Canvas.prototype.drawAtlas=function(d,h,m,t,w,z,F){if(d&&t&&h&&m&&h.length===m.length){a.Jd(this.Id);w||(w=a.BlendMode.SrcOver);var K=l(h,"HEAPF32"),H=l(m,"HEAPF32"),S=m.length/4,p=l(c(z),"HEAPU32");if(F&&"B"in F&&"C"in F)this._drawAtlasCubic(d,
|
||||
H,K,p,S,w,F.B,F.C,t);else{let A=a.FilterMode.Linear,L=a.MipmapMode.None;F&&(A=F.filter,"mipmap"in F&&(L=F.mipmap));this._drawAtlasOptions(d,H,K,p,S,w,A,L,t)}k(K,h);k(H,m);k(p,z)}};a.Canvas.prototype.drawCircle=function(d,h,m,t){a.Jd(this.Id);this._drawCircle(d,h,m,t)};a.Canvas.prototype.drawColor=function(d,h){a.Jd(this.Id);d=y(d);void 0!==h?this._drawColor(d,h):this._drawColor(d)};a.Canvas.prototype.drawColorInt=function(d,h){a.Jd(this.Id);this._drawColorInt(d,h||a.BlendMode.SrcOver)};a.Canvas.prototype.drawColorComponents=
|
||||
function(d,h,m,t,w){a.Jd(this.Id);d=C(d,h,m,t);void 0!==w?this._drawColor(d,w):this._drawColor(d)};a.Canvas.prototype.drawDRRect=function(d,h,m){a.Jd(this.Id);d=D(d,Gb);h=D(h,uc);this._drawDRRect(d,h,m)};a.Canvas.prototype.drawImage=function(d,h,m,t){a.Jd(this.Id);this._drawImage(d,h,m,t||null)};a.Canvas.prototype.drawImageCubic=function(d,h,m,t,w,z){a.Jd(this.Id);this._drawImageCubic(d,h,m,t,w,z||null)};a.Canvas.prototype.drawImageOptions=function(d,h,m,t,w,z){a.Jd(this.Id);this._drawImageOptions(d,
|
||||
h,m,t,w,z||null)};a.Canvas.prototype.drawImageNine=function(d,h,m,t,w){a.Jd(this.Id);h=l(h,"HEAP32",gb);m=v(m);this._drawImageNine(d,h,m,t,w||null)};a.Canvas.prototype.drawImageRect=function(d,h,m,t,w){a.Jd(this.Id);v(h,V);v(m,Ba);this._drawImageRect(d,V,Ba,t,!!w)};a.Canvas.prototype.drawImageRectCubic=function(d,h,m,t,w,z){a.Jd(this.Id);v(h,V);v(m,Ba);this._drawImageRectCubic(d,V,Ba,t,w,z||null)};a.Canvas.prototype.drawImageRectOptions=function(d,h,m,t,w,z){a.Jd(this.Id);v(h,V);v(m,Ba);this._drawImageRectOptions(d,
|
||||
V,Ba,t,w,z||null)};a.Canvas.prototype.drawLine=function(d,h,m,t,w){a.Jd(this.Id);this._drawLine(d,h,m,t,w)};a.Canvas.prototype.drawOval=function(d,h){a.Jd(this.Id);d=v(d);this._drawOval(d,h)};a.Canvas.prototype.drawPaint=function(d){a.Jd(this.Id);this._drawPaint(d)};a.Canvas.prototype.drawParagraph=function(d,h,m){a.Jd(this.Id);this._drawParagraph(d,h,m)};a.Canvas.prototype.drawPatch=function(d,h,m,t,w){if(24>d.length)throw"Need 12 cubic points";if(h&&4>h.length)throw"Need 4 colors";if(m&&8>m.length)throw"Need 4 shader coordinates";
|
||||
a.Jd(this.Id);const z=l(d,"HEAPF32"),F=h?l(c(h),"HEAPU32"):M,K=m?l(m,"HEAPF32"):M;t||(t=a.BlendMode.Modulate);this._drawPatch(z,F,K,t,w);k(K,m);k(F,h);k(z,d)};a.Canvas.prototype.drawPath=function(d,h){a.Jd(this.Id);this._drawPath(d,h)};a.Canvas.prototype.drawPicture=function(d){a.Jd(this.Id);this._drawPicture(d)};a.Canvas.prototype.drawPoints=function(d,h,m){a.Jd(this.Id);var t=l(h,"HEAPF32");this._drawPoints(d,t,h.length/2,m);k(t,h)};a.Canvas.prototype.drawRRect=function(d,h){a.Jd(this.Id);d=D(d);
|
||||
this._drawRRect(d,h)};a.Canvas.prototype.drawRect=function(d,h){a.Jd(this.Id);d=v(d);this._drawRect(d,h)};a.Canvas.prototype.drawRect4f=function(d,h,m,t,w){a.Jd(this.Id);this._drawRect4f(d,h,m,t,w)};a.Canvas.prototype.drawShadow=function(d,h,m,t,w,z,F){a.Jd(this.Id);var K=l(w,"HEAPF32"),H=l(z,"HEAPF32");h=l(h,"HEAPF32",Hb);m=l(m,"HEAPF32",Ib);this._drawShadow(d,h,m,t,K,H,F);k(K,w);k(H,z)};a.getShadowLocalBounds=function(d,h,m,t,w,z,F){d=q(d);m=l(m,"HEAPF32",Hb);t=l(t,"HEAPF32",Ib);if(!this._getShadowLocalBounds(d,
|
||||
h,m,t,w,z,V))return null;h=va.toTypedArray();return F?(F.set(h),F):h.slice()};a.Canvas.prototype.drawTextBlob=function(d,h,m,t){a.Jd(this.Id);this._drawTextBlob(d,h,m,t)};a.Canvas.prototype.drawVertices=function(d,h,m){a.Jd(this.Id);this._drawVertices(d,h,m)};a.Canvas.prototype.getDeviceClipBounds=function(d){this._getDeviceClipBounds(gb);var h=Jb.toTypedArray();d?d.set(h):d=h.slice();return d};a.Canvas.prototype.getLocalToDevice=function(){this._getLocalToDevice(Z);for(var d=Z,h=Array(16),m=0;16>
|
||||
m;m++)h[m]=a.HEAPF32[d/4+m];return h};a.Canvas.prototype.getTotalMatrix=function(){this._getTotalMatrix(I);for(var d=Array(9),h=0;9>h;h++)d[h]=a.HEAPF32[I/4+h];return d};a.Canvas.prototype.makeSurface=function(d){d=this._makeSurface(d);d.Id=this.Id;return d};a.Canvas.prototype.readPixels=function(d,h,m,t,w){a.Jd(this.Id);return g(this,d,h,m,t,w)};a.Canvas.prototype.saveLayer=function(d,h,m,t){h=v(h);return this._saveLayer(d||null,h,m||null,t||0)};a.Canvas.prototype.writePixels=function(d,h,m,t,w,
|
||||
z,F,K){if(d.byteLength%(h*m))throw"pixels length must be a multiple of the srcWidth * srcHeight";a.Jd(this.Id);var H=d.byteLength/(h*m);z=z||a.AlphaType.Unpremul;F=F||a.ColorType.RGBA_8888;K=K||a.ColorSpace.SRGB;var S=H*h;H=l(d,"HEAPU8");h=this._writePixels({width:h,height:m,colorType:F,alphaType:z,colorSpace:K},H,S,t,w);k(H,d);return h};a.ColorFilter.MakeBlend=function(d,h,m){d=y(d);m=m||a.ColorSpace.SRGB;return a.ColorFilter._MakeBlend(d,h,m)};a.ColorFilter.MakeMatrix=function(d){if(!d||20!==d.length)throw"invalid color matrix";
|
||||
var h=l(d,"HEAPF32"),m=a.ColorFilter._makeMatrix(h);k(h,d);return m};a.ContourMeasure.prototype.getPosTan=function(d,h){this._getPosTan(d,V);d=va.toTypedArray();return h?(h.set(d),h):d.slice()};a.ImageFilter.MakeDropShadow=function(d,h,m,t,w,z){w=y(w,ua);return a.ImageFilter._MakeDropShadow(d,h,m,t,w,z)};a.ImageFilter.MakeDropShadowOnly=function(d,h,m,t,w,z){w=y(w,ua);return a.ImageFilter._MakeDropShadowOnly(d,h,m,t,w,z)};a.ImageFilter.MakeImage=function(d,h,m,t){m=v(m,V);t=v(t,Ba);if("B"in h&&"C"in
|
||||
h)return a.ImageFilter._MakeImageCubic(d,h.B,h.C,m,t);const w=h.filter;let z=a.MipmapMode.None;"mipmap"in h&&(z=h.mipmap);return a.ImageFilter._MakeImageOptions(d,w,z,m,t)};a.ImageFilter.MakeMatrixTransform=function(d,h,m){d=q(d);if("B"in h&&"C"in h)return a.ImageFilter._MakeMatrixTransformCubic(d,h.B,h.C,m);const t=h.filter;let w=a.MipmapMode.None;"mipmap"in h&&(w=h.mipmap);return a.ImageFilter._MakeMatrixTransformOptions(d,t,w,m)};a.Paint.prototype.getColor=function(){this._getColor(ua);return E(ua)};
|
||||
a.Paint.prototype.setColor=function(d,h){h=h||null;d=y(d);this._setColor(d,h)};a.Paint.prototype.setColorComponents=function(d,h,m,t,w){w=w||null;d=C(d,h,m,t);this._setColor(d,w)};a.Path.prototype.getPoint=function(d,h){this._getPoint(d,V);d=va.toTypedArray();return h?(h[0]=d[0],h[1]=d[1],h):d.slice(0,2)};a.Picture.prototype.makeShader=function(d,h,m,t,w){t=q(t);w=v(w);return this._makeShader(d,h,m,t,w)};a.PictureRecorder.prototype.beginRecording=function(d){d=v(d);return this._beginRecording(d)};
|
||||
a.Surface.prototype.getCanvas=function(){var d=this._getCanvas();d.Id=this.Id;return d};a.Surface.prototype.makeImageSnapshot=function(d){a.Jd(this.Id);d=l(d,"HEAP32",gb);return this._makeImageSnapshot(d)};a.Surface.prototype.makeSurface=function(d){a.Jd(this.Id);d=this._makeSurface(d);d.Id=this.Id;return d};a.Surface.prototype.Pe=function(d,h){this.de||(this.de=this.getCanvas());return requestAnimationFrame(function(){a.Jd(this.Id);d(this.de);this.flush(h)}.bind(this))};a.Surface.prototype.requestAnimationFrame||
|
||||
(a.Surface.prototype.requestAnimationFrame=a.Surface.prototype.Pe);a.Surface.prototype.Me=function(d,h){this.de||(this.de=this.getCanvas());requestAnimationFrame(function(){a.Jd(this.Id);d(this.de);this.flush(h);this.dispose()}.bind(this))};a.Surface.prototype.drawOnce||(a.Surface.prototype.drawOnce=a.Surface.prototype.Me);a.PathEffect.MakeDash=function(d,h){h||(h=0);if(!d.length||1===d.length%2)throw"Intervals array must have even length";var m=l(d,"HEAPF32");h=a.PathEffect._MakeDash(m,d.length,
|
||||
h);k(m,d);return h};a.PathEffect.MakeLine2D=function(d,h){h=q(h);return a.PathEffect._MakeLine2D(d,h)};a.PathEffect.MakePath2D=function(d,h){d=q(d);return a.PathEffect._MakePath2D(d,h)};a.Shader.MakeColor=function(d,h){h=h||null;d=y(d);return a.Shader._MakeColor(d,h)};a.Shader.Blend=a.Shader.MakeBlend;a.Shader.Color=a.Shader.MakeColor;a.Shader.MakeLinearGradient=function(d,h,m,t,w,z,F,K){K=K||null;var H=n(m),S=l(t,"HEAPF32");F=F||0;z=q(z);var p=va.toTypedArray();p.set(d);p.set(h,2);d=a.Shader._MakeLinearGradient(V,
|
||||
H.Rd,H.fe,S,H.count,w,F,z,K);k(H.Rd,m);t&&k(S,t);return d};a.Shader.MakeRadialGradient=function(d,h,m,t,w,z,F,K){K=K||null;var H=n(m),S=l(t,"HEAPF32");F=F||0;z=q(z);d=a.Shader._MakeRadialGradient(d[0],d[1],h,H.Rd,H.fe,S,H.count,w,F,z,K);k(H.Rd,m);t&&k(S,t);return d};a.Shader.MakeSweepGradient=function(d,h,m,t,w,z,F,K,H,S){S=S||null;var p=n(m),A=l(t,"HEAPF32");F=F||0;K=K||0;H=H||360;z=q(z);d=a.Shader._MakeSweepGradient(d,h,p.Rd,p.fe,A,p.count,w,K,H,F,z,S);k(p.Rd,m);t&&k(A,t);return d};a.Shader.MakeTwoPointConicalGradient=
|
||||
function(d,h,m,t,w,z,F,K,H,S){S=S||null;var p=n(w),A=l(z,"HEAPF32");H=H||0;K=q(K);var L=va.toTypedArray();L.set(d);L.set(m,2);d=a.Shader._MakeTwoPointConicalGradient(V,h,t,p.Rd,p.fe,A,p.count,F,H,K,S);k(p.Rd,w);z&&k(A,z);return d};a.Vertices.prototype.bounds=function(d){this._bounds(V);var h=va.toTypedArray();return d?(d.set(h),d):h.slice()};a.Md&&a.Md.forEach(function(d){d()})};a.computeTonalColors=function(g){var d=l(g.ambient,"HEAPF32"),h=l(g.spot,"HEAPF32");this._computeTonalColors(d,h);var m=
|
||||
{ambient:E(d),spot:E(h)};k(d,g.ambient);k(h,g.spot);return m};a.LTRBRect=function(g,d,h,m){return Float32Array.of(g,d,h,m)};a.XYWHRect=function(g,d,h,m){return Float32Array.of(g,d,g+h,d+m)};a.LTRBiRect=function(g,d,h,m){return Int32Array.of(g,d,h,m)};a.XYWHiRect=function(g,d,h,m){return Int32Array.of(g,d,g+h,d+m)};a.RRectXY=function(g,d,h){return Float32Array.of(g[0],g[1],g[2],g[3],d,h,d,h,d,h,d,h)};a.MakeAnimatedImageFromEncoded=function(g){g=new Uint8Array(g);var d=a._malloc(g.byteLength);a.HEAPU8.set(g,
|
||||
d);return(g=a._decodeAnimatedImage(d,g.byteLength))?g:null};a.MakeImageFromEncoded=function(g){g=new Uint8Array(g);var d=a._malloc(g.byteLength);a.HEAPU8.set(g,d);return(g=a._decodeImage(d,g.byteLength))?g:null};var Ra=null;a.MakeImageFromCanvasImageSource=function(g){var d=g.width,h=g.height;Ra||(Ra=document.createElement("canvas"));Ra.width=d;Ra.height=h;var m=Ra.getContext("2d",{Kf:!0});m.drawImage(g,0,0);g=m.getImageData(0,0,d,h);return a.MakeImage({width:d,height:h,alphaType:a.AlphaType.Unpremul,
|
||||
colorType:a.ColorType.RGBA_8888,colorSpace:a.ColorSpace.SRGB},g.data,4*d)};a.MakeImage=function(g,d,h){var m=a._malloc(d.length);a.HEAPU8.set(d,m);return a._MakeImage(g,m,d.length,h)};a.MakeVertices=function(g,d,h,m,t,w){var z=t&&t.length||0,F=0;h&&h.length&&(F|=1);m&&m.length&&(F|=2);void 0===w||w||(F|=4);g=new a._VerticesBuilder(g,d.length/2,z,F);l(d,"HEAPF32",g.positions());g.texCoords()&&l(h,"HEAPF32",g.texCoords());g.colors()&&l(c(m),"HEAPU32",g.colors());g.indices()&&l(t,"HEAPU16",g.indices());
|
||||
return g.detach()};(function(g){g.Md=g.Md||[];g.Md.push(function(){function d(p){if(!p||!p.length)return[];for(var A=[],L=0;L<p.length;L+=5){var U=g.LTRBRect(p[L],p[L+1],p[L+2],p[L+3]),za=g.TextDirection.LTR;0===p[L+4]&&(za=g.TextDirection.RTL);A.push({rect:U,dir:za})}g._free(p.byteOffset);return A}function h(p){p=p||{};void 0===p.weight&&(p.weight=g.FontWeight.Normal);p.width=p.width||g.FontWidth.Normal;p.slant=p.slant||g.FontSlant.Upright;return p}function m(p){if(!p||!p.length)return M;for(var A=
|
||||
[],L=0;L<p.length;L++){var U=t(p[L]);A.push(U)}return l(A,"HEAPU32")}function t(p){if(F[p])return F[p];var A=ka(p)+1,L=g._malloc(A);la(p,B,L,A);return F[p]=L}function w(p){p._colorPtr=y(p.color);p._foregroundColorPtr=M;p._backgroundColorPtr=M;p._decorationColorPtr=M;p.foregroundColor&&(p._foregroundColorPtr=y(p.foregroundColor,K));p.backgroundColor&&(p._backgroundColorPtr=y(p.backgroundColor,H));p.decorationColor&&(p._decorationColorPtr=y(p.decorationColor,S));Array.isArray(p.fontFamilies)&&p.fontFamilies.length?
|
||||
(p._fontFamiliesPtr=m(p.fontFamilies),p._fontFamiliesLen=p.fontFamilies.length):(p._fontFamiliesPtr=M,p._fontFamiliesLen=0);if(p.locale){var A=p.locale;p._localePtr=t(A);p._localeLen=ka(A)+1}else p._localePtr=M,p._localeLen=0;if(Array.isArray(p.shadows)&&p.shadows.length){A=p.shadows;var L=A.map(function(pa){return pa.color||g.BLACK}),U=A.map(function(pa){return pa.blurRadius||0});p._shadowLen=A.length;for(var za=g._malloc(8*A.length),Kb=za/4,Lb=0;Lb<A.length;Lb++){var vc=A[Lb].offset||[0,0];g.HEAPF32[Kb]=
|
||||
vc[0];g.HEAPF32[Kb+1]=vc[1];Kb+=2}p._shadowColorsPtr=n(L).Rd;p._shadowOffsetsPtr=za;p._shadowBlurRadiiPtr=l(U,"HEAPF32")}else p._shadowLen=0,p._shadowColorsPtr=M,p._shadowOffsetsPtr=M,p._shadowBlurRadiiPtr=M;Array.isArray(p.fontFeatures)&&p.fontFeatures.length?(A=p.fontFeatures,L=A.map(function(pa){return pa.name}),U=A.map(function(pa){return pa.value}),p._fontFeatureLen=A.length,p._fontFeatureNamesPtr=m(L),p._fontFeatureValuesPtr=l(U,"HEAPU32")):(p._fontFeatureLen=0,p._fontFeatureNamesPtr=M,p._fontFeatureValuesPtr=
|
||||
M);Array.isArray(p.fontVariations)&&p.fontVariations.length?(A=p.fontVariations,L=A.map(function(pa){return pa.axis}),U=A.map(function(pa){return pa.value}),p._fontVariationLen=A.length,p._fontVariationAxesPtr=m(L),p._fontVariationValuesPtr=l(U,"HEAPF32")):(p._fontVariationLen=0,p._fontVariationAxesPtr=M,p._fontVariationValuesPtr=M)}function z(p){g._free(p._fontFamiliesPtr);g._free(p._shadowColorsPtr);g._free(p._shadowOffsetsPtr);g._free(p._shadowBlurRadiiPtr);g._free(p._fontFeatureNamesPtr);g._free(p._fontFeatureValuesPtr);
|
||||
g._free(p._fontVariationAxesPtr);g._free(p._fontVariationValuesPtr)}g.Paragraph.prototype.getRectsForRange=function(p,A,L,U){p=this._getRectsForRange(p,A,L,U);return d(p)};g.Paragraph.prototype.getRectsForPlaceholders=function(){var p=this._getRectsForPlaceholders();return d(p)};g.TypefaceFontProvider.prototype.registerFont=function(p,A){p=g.Typeface.MakeFreeTypeFaceFromData(p);if(!p)return null;A=t(A);this._registerFont(p,A)};g.ParagraphStyle=function(p){p.disableHinting=p.disableHinting||!1;if(p.ellipsis){var A=
|
||||
p.ellipsis;p._ellipsisPtr=t(A);p._ellipsisLen=ka(A)+1}else p._ellipsisPtr=M,p._ellipsisLen=0;null==p.heightMultiplier&&(p.heightMultiplier=-1);p.maxLines=p.maxLines||0;p.replaceTabCharacters=p.replaceTabCharacters||!1;A=(A=p.strutStyle)||{};A.strutEnabled=A.strutEnabled||!1;A.strutEnabled&&Array.isArray(A.fontFamilies)&&A.fontFamilies.length?(A._fontFamiliesPtr=m(A.fontFamilies),A._fontFamiliesLen=A.fontFamilies.length):(A._fontFamiliesPtr=M,A._fontFamiliesLen=0);A.fontStyle=h(A.fontStyle);null==
|
||||
A.fontSize&&(A.fontSize=-1);null==A.heightMultiplier&&(A.heightMultiplier=-1);A.halfLeading=A.halfLeading||!1;A.leading=A.leading||0;A.forceStrutHeight=A.forceStrutHeight||!1;p.strutStyle=A;p.textAlign=p.textAlign||g.TextAlign.Start;p.textDirection=p.textDirection||g.TextDirection.LTR;p.textHeightBehavior=p.textHeightBehavior||g.TextHeightBehavior.All;p.textStyle=g.TextStyle(p.textStyle);return p};g.TextStyle=function(p){p.color||(p.color=g.BLACK);p.decoration=p.decoration||0;p.decorationThickness=
|
||||
p.decorationThickness||0;p.decorationStyle=p.decorationStyle||g.DecorationStyle.Solid;p.textBaseline=p.textBaseline||g.TextBaseline.Alphabetic;null==p.fontSize&&(p.fontSize=-1);p.letterSpacing=p.letterSpacing||0;p.wordSpacing=p.wordSpacing||0;null==p.heightMultiplier&&(p.heightMultiplier=-1);p.halfLeading=p.halfLeading||!1;p.fontStyle=h(p.fontStyle);return p};var F={},K=g._malloc(16),H=g._malloc(16),S=g._malloc(16);g.ParagraphBuilder.Make=function(p,A){w(p.textStyle);A=g.ParagraphBuilder._Make(p,
|
||||
A);z(p.textStyle);return A};g.ParagraphBuilder.MakeFromFontProvider=function(p,A){w(p.textStyle);A=g.ParagraphBuilder._MakeFromFontProvider(p,A);z(p.textStyle);return A};g.ParagraphBuilder.MakeFromFontCollection=function(p,A){w(p.textStyle);A=g.ParagraphBuilder._MakeFromFontCollection(p,A);z(p.textStyle);return A};g.ParagraphBuilder.ShapeText=function(p,A,L){let U=0;for(const za of A)U+=za.length;if(U!==p.length)throw"Accumulated block lengths must equal text.length";return g.ParagraphBuilder._ShapeText(p,
|
||||
A,L)};g.ParagraphBuilder.prototype.pushStyle=function(p){w(p);this._pushStyle(p);z(p)};g.ParagraphBuilder.prototype.pushPaintStyle=function(p,A,L){w(p);this._pushPaintStyle(p,A,L);z(p)};g.ParagraphBuilder.prototype.addPlaceholder=function(p,A,L,U,za){L=L||g.PlaceholderAlignment.Baseline;U=U||g.TextBaseline.Alphabetic;this._addPlaceholder(p||0,A||0,L,U,za||0)};g.ParagraphBuilder.prototype.setWordsUtf8=function(p){var A=l(p,"HEAPU32");this._setWordsUtf8(A,p&&p.length||0);k(A,p)};g.ParagraphBuilder.prototype.setWordsUtf16=
|
||||
function(p){var A=l(p,"HEAPU32");this._setWordsUtf16(A,p&&p.length||0);k(A,p)};g.ParagraphBuilder.prototype.setGraphemeBreaksUtf8=function(p){var A=l(p,"HEAPU32");this._setGraphemeBreaksUtf8(A,p&&p.length||0);k(A,p)};g.ParagraphBuilder.prototype.setGraphemeBreaksUtf16=function(p){var A=l(p,"HEAPU32");this._setGraphemeBreaksUtf16(A,p&&p.length||0);k(A,p)};g.ParagraphBuilder.prototype.setLineBreaksUtf8=function(p){var A=l(p,"HEAPU32");this._setLineBreaksUtf8(A,p&&p.length||0);k(A,p)};g.ParagraphBuilder.prototype.setLineBreaksUtf16=
|
||||
function(p){var A=l(p,"HEAPU32");this._setLineBreaksUtf16(A,p&&p.length||0);k(A,p)}})})(r);a.Md=a.Md||[];a.Md.push(function(){a.Path.prototype.op=function(g,d){return this._op(g,d)?this:null};a.Path.prototype.simplify=function(){return this._simplify()?this:null}});a.Md=a.Md||[];a.Md.push(function(){a.Canvas.prototype.drawText=function(g,d,h,m,t){var w=ka(g),z=a._malloc(w+1);la(g,B,z,w+1);this._drawSimpleText(z,w,d,h,t,m);a._free(z)};a.Canvas.prototype.drawGlyphs=function(g,d,h,m,t,w){if(!(2*g.length<=
|
||||
d.length))throw"Not enough positions for the array of gyphs";a.Jd(this.Id);const z=l(g,"HEAPU16"),F=l(d,"HEAPF32");this._drawGlyphs(g.length,z,F,h,m,t,w);k(F,d);k(z,g)};a.Font.prototype.getGlyphBounds=function(g,d,h){var m=l(g,"HEAPU16"),t=a._malloc(16*g.length);this._getGlyphWidthBounds(m,g.length,M,t,d||null);d=new Float32Array(a.HEAPU8.buffer,t,4*g.length);k(m,g);if(h)return h.set(d),a._free(t),h;g=Float32Array.from(d);a._free(t);return g};a.Font.prototype.getGlyphIDs=function(g,d,h){d||(d=g.length);
|
||||
var m=ka(g)+1,t=a._malloc(m);la(g,B,t,m);g=a._malloc(2*d);d=this._getGlyphIDs(t,m-1,d,g);a._free(t);if(0>d)return a._free(g),null;t=new Uint16Array(a.HEAPU8.buffer,g,d);if(h)return h.set(t),a._free(g),h;h=Uint16Array.from(t);a._free(g);return h};a.Font.prototype.getGlyphIntercepts=function(g,d,h,m){var t=l(g,"HEAPU16"),w=l(d,"HEAPF32");return this._getGlyphIntercepts(t,g.length,!(g&&g._ck),w,d.length,!(d&&d._ck),h,m)};a.Font.prototype.getGlyphWidths=function(g,d,h){var m=l(g,"HEAPU16"),t=a._malloc(4*
|
||||
g.length);this._getGlyphWidthBounds(m,g.length,t,M,d||null);d=new Float32Array(a.HEAPU8.buffer,t,g.length);k(m,g);if(h)return h.set(d),a._free(t),h;g=Float32Array.from(d);a._free(t);return g};a.FontMgr.FromData=function(){if(!arguments.length)return null;var g=arguments;1===g.length&&Array.isArray(g[0])&&(g=arguments[0]);if(!g.length)return null;for(var d=[],h=[],m=0;m<g.length;m++){var t=new Uint8Array(g[m]),w=l(t,"HEAPU8");d.push(w);h.push(t.byteLength)}d=l(d,"HEAPU32");h=l(h,"HEAPU32");g=a.FontMgr._fromData(d,
|
||||
h,g.length);a._free(d);a._free(h);return g};a.Typeface.MakeFreeTypeFaceFromData=function(g){g=new Uint8Array(g);var d=l(g,"HEAPU8");return(g=a.Typeface._MakeFreeTypeFaceFromData(d,g.byteLength))?g:null};a.Typeface.prototype.getGlyphIDs=function(g,d,h){d||(d=g.length);var m=ka(g)+1,t=a._malloc(m);la(g,B,t,m);g=a._malloc(2*d);d=this._getGlyphIDs(t,m-1,d,g);a._free(t);if(0>d)return a._free(g),null;t=new Uint16Array(a.HEAPU8.buffer,g,d);if(h)return h.set(t),a._free(g),h;h=Uint16Array.from(t);a._free(g);
|
||||
return h};a.TextBlob.MakeOnPath=function(g,d,h,m){if(g&&g.length&&d&&d.countPoints()){if(1===d.countPoints())return this.MakeFromText(g,h);m||(m=0);var t=h.getGlyphIDs(g);t=h.getGlyphWidths(t);var w=[];d=new a.ContourMeasureIter(d,!1,1);for(var z=d.next(),F=new Float32Array(4),K=0;K<g.length&&z;K++){var H=t[K];m+=H/2;if(m>z.length()){z.delete();z=d.next();if(!z){g=g.substring(0,K);break}m=H/2}z.getPosTan(m,F);var S=F[2],p=F[3];w.push(S,p,F[0]-H/2*S,F[1]-H/2*p);m+=H/2}g=this.MakeFromRSXform(g,w,h);
|
||||
z&&z.delete();d.delete();return g}};a.TextBlob.MakeFromRSXform=function(g,d,h){var m=ka(g)+1,t=a._malloc(m);la(g,B,t,m);g=l(d,"HEAPF32");h=a.TextBlob._MakeFromRSXform(t,m-1,g,h);a._free(t);return h?h:null};a.TextBlob.MakeFromRSXformGlyphs=function(g,d,h){var m=l(g,"HEAPU16");d=l(d,"HEAPF32");h=a.TextBlob._MakeFromRSXformGlyphs(m,2*g.length,d,h);k(m,g);return h?h:null};a.TextBlob.MakeFromGlyphs=function(g,d){var h=l(g,"HEAPU16");d=a.TextBlob._MakeFromGlyphs(h,2*g.length,d);k(h,g);return d?d:null};
|
||||
a.TextBlob.MakeFromText=function(g,d){var h=ka(g)+1,m=a._malloc(h);la(g,B,m,h);g=a.TextBlob._MakeFromText(m,h-1,d);a._free(m);return g?g:null};a.MallocGlyphIDs=function(g){return a.Malloc(Uint16Array,g)}});a.Md=a.Md||[];a.Md.push(function(){a.MakePicture=function(g){g=new Uint8Array(g);var d=a._malloc(g.byteLength);a.HEAPU8.set(g,d);return(g=a._MakePicture(d,g.byteLength))?g:null}});a.Md=a.Md||[];a.Md.push(function(){a.RuntimeEffect.Make=function(g,d){return a.RuntimeEffect._Make(g,{onError:d||function(h){console.log("RuntimeEffect error",
|
||||
h)}})};a.RuntimeEffect.prototype.makeShader=function(g,d){var h=!g._ck,m=l(g,"HEAPF32");d=q(d);return this._makeShader(m,4*g.length,h,d)};a.RuntimeEffect.prototype.makeShaderWithChildren=function(g,d,h){var m=!g._ck,t=l(g,"HEAPF32");h=q(h);for(var w=[],z=0;z<d.length;z++)w.push(d[z].Hd.Kd);d=l(w,"HEAPU32");return this._makeShaderWithChildren(t,4*g.length,m,d,w.length,h)}})})(r);
|
||||
var ma=aa({},r),na="./this.program",oa=(a,b)=>{throw b;},qa="object"===typeof window,ra="function"===typeof importScripts,sa="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node,ta="",wa,xa,ya,fs,Aa,Ca;
|
||||
if(sa)ta=ra?require("path").dirname(ta)+"/":__dirname+"/",Ca=()=>{Aa||(fs=require("fs"),Aa=require("path"))},wa=function(a,b){Ca();a=Aa.normalize(a);return fs.readFileSync(a,b?null:"utf8")},ya=a=>{a=wa(a,!0);a.buffer||(a=new Uint8Array(a));return a},xa=(a,b,c)=>{Ca();a=Aa.normalize(a);fs.readFile(a,function(e,f){e?c(e):b(f.buffer)})},1<process.argv.length&&(na=process.argv[1].replace(/\\/g,"/")),process.argv.slice(2),process.on("unhandledRejection",function(a){throw a;}),oa=(a,b)=>{if(noExitRuntime||
|
||||
0<Da)throw process.exitCode=a,b;b instanceof Ea||Fa("exiting due to exception: "+b);process.exit(a)},r.inspect=function(){return"[Emscripten Module object]"};else if(qa||ra)ra?ta=self.location.href:"undefined"!==typeof document&&document.currentScript&&(ta=document.currentScript.src),_scriptDir&&(ta=_scriptDir),0!==ta.indexOf("blob:")?ta=ta.substr(0,ta.replace(/[?#].*/,"").lastIndexOf("/")+1):ta="",wa=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},ra&&(ya=a=>{var b=
|
||||
new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),xa=(a,b,c)=>{var e=new XMLHttpRequest;e.open("GET",a,!0);e.responseType="arraybuffer";e.onload=()=>{200==e.status||0==e.status&&e.response?b(e.response):c()};e.onerror=c;e.send(null)};var Ga=r.print||console.log.bind(console),Fa=r.printErr||console.warn.bind(console);aa(r,ma);ma=null;r.thisProgram&&(na=r.thisProgram);r.quit&&(oa=r.quit);var Ha=0,Ia;r.wasmBinary&&(Ia=r.wasmBinary);
|
||||
var noExitRuntime=r.noExitRuntime||!0;"object"!==typeof WebAssembly&&Ja("no native wasm support detected");var Ka,La=!1,Na="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;
|
||||
function Oa(a,b,c){var e=b+c;for(c=b;a[c]&&!(c>=e);)++c;if(16<c-b&&a.subarray&&Na)return Na.decode(a.subarray(b,c));for(e="";b<c;){var f=a[b++];if(f&128){var k=a[b++]&63;if(192==(f&224))e+=String.fromCharCode((f&31)<<6|k);else{var l=a[b++]&63;f=224==(f&240)?(f&15)<<12|k<<6|l:(f&7)<<18|k<<12|l<<6|a[b++]&63;65536>f?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else e+=String.fromCharCode(f)}return e}function Pa(a,b){return a?Oa(B,a,b):""}
|
||||
function la(a,b,c,e){if(!(0<e))return 0;var f=c;e=c+e-1;for(var k=0;k<a.length;++k){var l=a.charCodeAt(k);if(55296<=l&&57343>=l){var n=a.charCodeAt(++k);l=65536+((l&1023)<<10)|n&1023}if(127>=l){if(c>=e)break;b[c++]=l}else{if(2047>=l){if(c+1>=e)break;b[c++]=192|l>>6}else{if(65535>=l){if(c+2>=e)break;b[c++]=224|l>>12}else{if(c+3>=e)break;b[c++]=240|l>>18;b[c++]=128|l>>12&63}b[c++]=128|l>>6&63}b[c++]=128|l&63}}b[c]=0;return c-f}
|
||||
function ka(a){for(var b=0,c=0;c<a.length;++c){var e=a.charCodeAt(c);55296<=e&&57343>=e&&(e=65536+((e&1023)<<10)|a.charCodeAt(++c)&1023);127>=e?++b:b=2047>=e?b+2:65535>=e?b+3:b+4}return b}var Qa="undefined"!==typeof TextDecoder?new TextDecoder("utf-16le"):void 0;function Sa(a,b){var c=a>>1;for(var e=c+b/2;!(c>=e)&&Ta[c];)++c;c<<=1;if(32<c-a&&Qa)return Qa.decode(B.subarray(a,c));c="";for(e=0;!(e>=b/2);++e){var f=Ua[a+2*e>>1];if(0==f)break;c+=String.fromCharCode(f)}return c}
|
||||
function Va(a,b,c){void 0===c&&(c=2147483647);if(2>c)return 0;c-=2;var e=b;c=c<2*a.length?c/2:a.length;for(var f=0;f<c;++f)Ua[b>>1]=a.charCodeAt(f),b+=2;Ua[b>>1]=0;return b-e}function Wa(a){return 2*a.length}function Xa(a,b){for(var c=0,e="";!(c>=b/4);){var f=G[a+4*c>>2];if(0==f)break;++c;65536<=f?(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023)):e+=String.fromCharCode(f)}return e}
|
||||
function Ya(a,b,c){void 0===c&&(c=2147483647);if(4>c)return 0;var e=b;c=e+c-4;for(var f=0;f<a.length;++f){var k=a.charCodeAt(f);if(55296<=k&&57343>=k){var l=a.charCodeAt(++f);k=65536+((k&1023)<<10)|l&1023}G[b>>2]=k;b+=4;if(b+4>c)break}G[b>>2]=0;return b-e}function Za(a){for(var b=0,c=0;c<a.length;++c){var e=a.charCodeAt(c);55296<=e&&57343>=e&&++c;b+=4}return b}var $a,ab,B,Ua,Ta,G,J,N,bb;
|
||||
function cb(){var a=Ka.buffer;$a=a;r.HEAP8=ab=new Int8Array(a);r.HEAP16=Ua=new Int16Array(a);r.HEAP32=G=new Int32Array(a);r.HEAPU8=B=new Uint8Array(a);r.HEAPU16=Ta=new Uint16Array(a);r.HEAPU32=J=new Uint32Array(a);r.HEAPF32=N=new Float32Array(a);r.HEAPF64=bb=new Float64Array(a)}var db,eb=[],fb=[],hb=[],Da=0;function ib(){var a=r.preRun.shift();eb.unshift(a)}var jb=0,kb=null,lb=null;r.preloadedImages={};r.preloadedAudios={};
|
||||
function Ja(a){if(r.onAbort)r.onAbort(a);a="Aborted("+a+")";Fa(a);La=!0;a=new WebAssembly.RuntimeError(a+". Build with -s ASSERTIONS=1 for more info.");ca(a);throw a;}function mb(){return nb.startsWith("data:application/octet-stream;base64,")}var nb;nb="canvaskit.wasm";if(!mb()){var ob=nb;nb=r.locateFile?r.locateFile(ob,ta):ta+ob}function pb(){var a=nb;try{if(a==nb&&Ia)return new Uint8Array(Ia);if(ya)return ya(a);throw"both async and sync fetching of the wasm failed";}catch(b){Ja(b)}}
|
||||
function qb(){if(!Ia&&(qa||ra)){if("function"===typeof fetch&&!nb.startsWith("file://"))return fetch(nb,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+nb+"'";return a.arrayBuffer()}).catch(function(){return pb()});if(xa)return new Promise(function(a,b){xa(nb,function(c){a(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return pb()})}
|
||||
function rb(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b(r);else{var c=b.Ef;"number"===typeof c?void 0===b.ve?O(c)():O(c)(b.ve):c(void 0===b.ve?null:b.ve)}}}function O(a){return db.get(a)}
|
||||
function sb(a){this.Kd=a-16;this.uf=function(b){G[this.Kd+4>>2]=b};this.rf=function(b){G[this.Kd+8>>2]=b};this.sf=function(){G[this.Kd>>2]=0};this.qf=function(){ab[this.Kd+12>>0]=0};this.tf=function(){ab[this.Kd+13>>0]=0};this.gf=function(b,c){this.uf(b);this.rf(c);this.sf();this.qf();this.tf()}}var tb=0,ub={},vb=[null,[],[]],wb={},xb={};function yb(a){for(;a.length;){var b=a.pop();a.pop()(b)}}function zb(a){return this.fromWireType(J[a>>2])}var Ab={},Bb={},Cb={};
|
||||
function Db(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 Eb(a,b){a=Db(a);return function(){null;return b.apply(this,arguments)}}
|
||||
function Fb(a){var b=Error,c=Eb(a,function(e){this.name=a;this.message=e;e=Error(e).stack;void 0!==e&&(this.stack=this.toString()+"\n"+e.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(b.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:this.name+": "+this.message};return c}var Mb=void 0;function Nb(a){throw new Mb(a);}
|
||||
function Ob(a,b,c){function e(n){n=c(n);n.length!==a.length&&Nb("Mismatched type converter count");for(var q=0;q<a.length;++q)Pb(a[q],n[q])}a.forEach(function(n){Cb[n]=b});var f=Array(b.length),k=[],l=0;b.forEach(function(n,q){Bb.hasOwnProperty(n)?f[q]=Bb[n]:(k.push(n),Ab.hasOwnProperty(n)||(Ab[n]=[]),Ab[n].push(function(){f[q]=Bb[n];++l;l===k.length&&e(f)}))});0===k.length&&e(f)}
|
||||
function Qb(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 Rb=void 0;function P(a){for(var b="";B[a];)b+=Rb[B[a++]];return b}var Sb=void 0;function Q(a){throw new Sb(a);}
|
||||
function Pb(a,b,c={}){if(!("argPackAdvance"in b))throw new TypeError("registerType registeredInstance requires argPackAdvance");var e=b.name;a||Q('type "'+e+'" must have a positive integer typeid pointer');if(Bb.hasOwnProperty(a)){if(c.ff)return;Q("Cannot register type '"+e+"' twice")}Bb[a]=b;delete Cb[a];Ab.hasOwnProperty(a)&&(b=Ab[a],delete Ab[a],b.forEach(function(f){f()}))}function Tb(a){Q(a.Hd.Nd.Ld.name+" instance already deleted")}var Ub=!1;function Vb(){}
|
||||
function Wb(a){--a.count.value;0===a.count.value&&(a.Pd?a.Td.Wd(a.Pd):a.Nd.Ld.Wd(a.Kd))}function Xb(a){if("undefined"===typeof FinalizationGroup)return Xb=b=>b,a;Ub=new FinalizationGroup(function(b){for(var c=b.next();!c.done;c=b.next())c=c.value,c.Kd?Wb(c):console.warn("object already deleted: "+c.Kd)});Xb=b=>{Ub.register(b,b.Hd,b.Hd);return b};Vb=b=>{Ub.unregister(b.Hd)};return Xb(a)}var Yb=void 0,Zb=[];function $b(){for(;Zb.length;){var a=Zb.pop();a.Hd.ae=!1;a["delete"]()}}function ac(){}
|
||||
var bc={};function cc(a,b,c){if(void 0===a[b].Od){var e=a[b];a[b]=function(){a[b].Od.hasOwnProperty(arguments.length)||Q("Function '"+c+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+a[b].Od+")!");return a[b].Od[arguments.length].apply(this,arguments)};a[b].Od=[];a[b].Od[e.Zd]=e}}
|
||||
function dc(a,b,c){r.hasOwnProperty(a)?((void 0===c||void 0!==r[a].Od&&void 0!==r[a].Od[c])&&Q("Cannot register public name '"+a+"' twice"),cc(r,a,a),r.hasOwnProperty(c)&&Q("Cannot register multiple overloads of a function with the same number of arguments ("+c+")!"),r[a].Od[c]=b):(r[a]=b,void 0!==c&&(r[a].Gf=c))}function ec(a,b,c,e,f,k,l,n){this.name=a;this.constructor=b;this.be=c;this.Wd=e;this.Vd=f;this.Ze=k;this.je=l;this.We=n;this.nf=[]}
|
||||
function fc(a,b,c){for(;b!==c;)b.je||Q("Expected null or instance of "+c.name+", got an instance of "+b.name),a=b.je(a),b=b.Vd;return a}function gc(a,b){if(null===b)return this.ye&&Q("null is not a valid "+this.name),0;b.Hd||Q('Cannot pass "'+hc(b)+'" as a '+this.name);b.Hd.Kd||Q("Cannot pass deleted object as a pointer of type "+this.name);return fc(b.Hd.Kd,b.Hd.Nd.Ld,this.Ld)}
|
||||
function ic(a,b){if(null===b){this.ye&&Q("null is not a valid "+this.name);if(this.ne){var c=this.ze();null!==a&&a.push(this.Wd,c);return c}return 0}b.Hd||Q('Cannot pass "'+hc(b)+'" as a '+this.name);b.Hd.Kd||Q("Cannot pass deleted object as a pointer of type "+this.name);!this.me&&b.Hd.Nd.me&&Q("Cannot convert argument of type "+(b.Hd.Td?b.Hd.Td.name:b.Hd.Nd.name)+" to parameter type "+this.name);c=fc(b.Hd.Kd,b.Hd.Nd.Ld,this.Ld);if(this.ne)switch(void 0===b.Hd.Pd&&Q("Passing raw pointer to smart pointer is illegal"),
|
||||
this.yf){case 0:b.Hd.Td===this?c=b.Hd.Pd:Q("Cannot convert argument of type "+(b.Hd.Td?b.Hd.Td.name:b.Hd.Nd.name)+" to parameter type "+this.name);break;case 1:c=b.Hd.Pd;break;case 2:if(b.Hd.Td===this)c=b.Hd.Pd;else{var e=b.clone();c=this.pf(c,jc(function(){e["delete"]()}));null!==a&&a.push(this.Wd,c)}break;default:Q("Unsupporting sharing policy")}return c}
|
||||
function kc(a,b){if(null===b)return this.ye&&Q("null is not a valid "+this.name),0;b.Hd||Q('Cannot pass "'+hc(b)+'" as a '+this.name);b.Hd.Kd||Q("Cannot pass deleted object as a pointer of type "+this.name);b.Hd.Nd.me&&Q("Cannot convert argument of type "+b.Hd.Nd.name+" to parameter type "+this.name);return fc(b.Hd.Kd,b.Hd.Nd.Ld,this.Ld)}function lc(a,b,c){if(b===c)return a;if(void 0===c.Vd)return null;a=lc(a,b,c.Vd);return null===a?null:c.We(a)}var mc={};
|
||||
function nc(a,b){for(void 0===b&&Q("ptr should not be undefined");a.Vd;)b=a.je(b),a=a.Vd;return mc[b]}function oc(a,b){b.Nd&&b.Kd||Nb("makeClassHandle requires ptr and ptrType");!!b.Td!==!!b.Pd&&Nb("Both smartPtrType and smartPtr must be specified");b.count={value:1};return Xb(Object.create(a,{Hd:{value:b}}))}
|
||||
function wc(a,b,c,e,f,k,l,n,q,x,y){this.name=a;this.Ld=b;this.ye=c;this.me=e;this.ne=f;this.mf=k;this.yf=l;this.Ie=n;this.ze=q;this.pf=x;this.Wd=y;f||void 0!==b.Vd?this.toWireType=ic:(this.toWireType=e?gc:kc,this.Sd=null)}function xc(a,b,c){r.hasOwnProperty(a)||Nb("Replacing nonexistant public symbol");void 0!==r[a].Od&&void 0!==c?r[a].Od[c]=b:(r[a]=b,r[a].Zd=c)}
|
||||
function yc(a,b){var c=[];return function(){c.length=arguments.length;for(var e=0;e<arguments.length;e++)c[e]=arguments[e];a.includes("j")?(e=r["dynCall_"+a],e=c&&c.length?e.apply(null,[b].concat(c)):e.call(null,b)):e=O(b).apply(null,c);return e}}function T(a,b){a=P(a);var c=a.includes("j")?yc(a,b):O(b);"function"!==typeof c&&Q("unknown function pointer with signature "+a+": "+b);return c}var zc=void 0;function Ac(a){a=Bc(a);var b=P(a);Cc(a);return b}
|
||||
function Dc(a,b){function c(k){f[k]||Bb[k]||(Cb[k]?Cb[k].forEach(c):(e.push(k),f[k]=!0))}var e=[],f={};b.forEach(c);throw new zc(a+": "+e.map(Ac).join([", "]));}
|
||||
function Ec(a,b,c,e,f){var k=b.length;2>k&&Q("argTypes array size mismatch! Must at least get return value and 'this' types!");var l=null!==b[1]&&null!==c,n=!1;for(c=1;c<b.length;++c)if(null!==b[c]&&void 0===b[c].Sd){n=!0;break}var q="void"!==b[0].name,x=k-2,y=Array(x),C=[],E=[];return function(){arguments.length!==x&&Q("function "+a+" called with "+arguments.length+" arguments, expected "+x+" args!");E.length=0;C.length=l?2:1;C[0]=f;if(l){var v=b[1].toWireType(E,this);C[1]=v}for(var D=0;D<x;++D)y[D]=
|
||||
b[D+2].toWireType(E,arguments[D]),C.push(y[D]);D=e.apply(null,C);if(n)yb(E);else for(var I=l?1:2;I<b.length;I++){var R=1===I?v:y[I-2];null!==b[I].Sd&&b[I].Sd(R)}v=q?b[0].fromWireType(D):void 0;return v}}function Fc(a,b){for(var c=[],e=0;e<a;e++)c.push(G[(b>>2)+e]);return c}var Gc=[],Hc=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function Ic(a){4<a&&0===--Hc[a].Ae&&(Hc[a]=void 0,Gc.push(a))}function Jc(a){a||Q("Cannot use deleted val. handle = "+a);return Hc[a].value}
|
||||
function jc(a){switch(a){case void 0:return 1;case null:return 2;case !0:return 3;case !1:return 4;default:var b=Gc.length?Gc.pop():Hc.length;Hc[b]={Ae:1,value:a};return b}}function Kc(a,b,c){switch(b){case 0:return function(e){return this.fromWireType((c?ab:B)[e])};case 1:return function(e){return this.fromWireType((c?Ua:Ta)[e>>1])};case 2:return function(e){return this.fromWireType((c?G:J)[e>>2])};default:throw new TypeError("Unknown integer type: "+a);}}
|
||||
function Lc(a,b){var c=Bb[a];void 0===c&&Q(b+" has unknown type "+Ac(a));return c}function hc(a){if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a}function Mc(a,b){switch(b){case 2:return function(c){return this.fromWireType(N[c>>2])};case 3:return function(c){return this.fromWireType(bb[c>>3])};default:throw new TypeError("Unknown float type: "+a);}}
|
||||
function Nc(a,b,c){switch(b){case 0:return c?function(e){return ab[e]}:function(e){return B[e]};case 1:return c?function(e){return Ua[e>>1]}:function(e){return Ta[e>>1]};case 2:return c?function(e){return G[e>>2]}:function(e){return J[e>>2]};default:throw new TypeError("Unknown integer type: "+a);}}var Oc={};function Pc(a){var b=Oc[a];return void 0===b?P(a):b}var Qc=[];
|
||||
function Rc(){function a(b){b.$$$embind_global$$$=b;var c="object"===typeof $$$embind_global$$$&&b.$$$embind_global$$$===b;c||delete b.$$$embind_global$$$;return c}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 Sc(a){var b=Qc.length;Qc.push(a);return b}function Tc(a,b){for(var c=Array(a),e=0;e<a;++e)c[e]=Lc(G[(b>>2)+e],"parameter "+e);return c}var Uc=[];function Vc(a){var b=Array(a+1);return function(c,e,f){b[0]=c;for(var k=0;k<a;++k){var l=Lc(G[(e>>2)+k],"parameter "+k);b[k+1]=l.readValueFromPointer(f);f+=l.argPackAdvance}c=new (c.bind.apply(c,b));return jc(c)}}var Wc={},Xc;Xc=sa?()=>{var a=process.hrtime();return 1E3*a[0]+a[1]/1E6}:()=>performance.now();
|
||||
function Yc(a){var b=a.getExtension("ANGLE_instanced_arrays");b&&(a.vertexAttribDivisor=function(c,e){b.vertexAttribDivisorANGLE(c,e)},a.drawArraysInstanced=function(c,e,f,k){b.drawArraysInstancedANGLE(c,e,f,k)},a.drawElementsInstanced=function(c,e,f,k,l){b.drawElementsInstancedANGLE(c,e,f,k,l)})}
|
||||
function Zc(a){var b=a.getExtension("OES_vertex_array_object");b&&(a.createVertexArray=function(){return b.createVertexArrayOES()},a.deleteVertexArray=function(c){b.deleteVertexArrayOES(c)},a.bindVertexArray=function(c){b.bindVertexArrayOES(c)},a.isVertexArray=function(c){return b.isVertexArrayOES(c)})}function $c(a){var b=a.getExtension("WEBGL_draw_buffers");b&&(a.drawBuffers=function(c,e){b.drawBuffersWEBGL(c,e)})}
|
||||
var ad=1,bd=[],cd=[],dd=[],ed=[],fa=[],fd=[],gd=[],ja=[],hd=[],jd=[],kd={},ld={},md=4;function W(a){nd||(nd=a)}function ea(a){for(var b=ad++,c=a.length;c<b;c++)a[c]=null;return b}function ha(a,b){a.Ge||(a.Ge=a.getContext,a.getContext=function(e,f){f=a.Ge(e,f);return"webgl"==e==f instanceof WebGLRenderingContext?f:null});var c=1<b.majorVersion?a.getContext("webgl2",b):a.getContext("webgl",b);return c?pd(c,b):0}
|
||||
function pd(a,b){var c=ea(ja),e={ef:c,attributes:b,version:b.majorVersion,Ud:a};a.canvas&&(a.canvas.Le=e);ja[c]=e;("undefined"===typeof b.Xe||b.Xe)&&qd(e);return c}function ia(a){u=ja[a];r.Df=X=u&&u.Ud;return!(a&&!X)}
|
||||
function qd(a){a||(a=u);if(!a.hf){a.hf=!0;var b=a.Ud;Yc(b);Zc(b);$c(b);b.De=b.getExtension("WEBGL_draw_instanced_base_vertex_base_instance");b.He=b.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance");2<=a.version&&(b.Ee=b.getExtension("EXT_disjoint_timer_query_webgl2"));if(2>a.version||!b.Ee)b.Ee=b.getExtension("EXT_disjoint_timer_query");b.Ff=b.getExtension("WEBGL_multi_draw");(b.getSupportedExtensions()||[]).forEach(function(c){c.includes("lose_context")||c.includes("debug")||b.getExtension(c)})}}
|
||||
var u,nd,rd=[];function sd(a,b,c,e){for(var f=0;f<a;f++){var k=X[c](),l=k&&ea(e);k?(k.name=l,e[l]=k):W(1282);G[b+4*f>>2]=l}}
|
||||
function td(a,b,c){if(b){var e=void 0;switch(a){case 36346:e=1;break;case 36344:0!=c&&1!=c&&W(1280);return;case 34814:case 36345:e=0;break;case 34466:var f=X.getParameter(34467);e=f?f.length:0;break;case 33309:if(2>u.version){W(1282);return}e=2*(X.getSupportedExtensions()||[]).length;break;case 33307:case 33308:if(2>u.version){W(1280);return}e=33307==a?3:0}if(void 0===e)switch(f=X.getParameter(a),typeof f){case "number":e=f;break;case "boolean":e=f?1:0;break;case "string":W(1280);return;case "object":if(null===
|
||||
f)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:e=0;break;default:W(1280);return}else{if(f instanceof Float32Array||f instanceof Uint32Array||f instanceof Int32Array||f instanceof Array){for(a=0;a<f.length;++a)switch(c){case 0:G[b+4*a>>2]=f[a];break;case 2:N[b+4*a>>2]=f[a];break;case 4:ab[b+a>>0]=f[a]?1:0}return}try{e=f.name|0}catch(k){W(1280);
|
||||
Fa("GL_INVALID_ENUM in glGet"+c+"v: Unknown object returned from WebGL getParameter("+a+")! (error: "+k+")");return}}break;default:W(1280);Fa("GL_INVALID_ENUM in glGet"+c+"v: Native code calling glGet"+c+"v("+a+") and it returns "+f+" of type "+typeof f+"!");return}switch(c){case 1:c=e;J[b>>2]=c;J[b+4>>2]=(c-J[b>>2])/4294967296;break;case 0:G[b>>2]=e;break;case 2:N[b>>2]=e;break;case 4:ab[b>>0]=e?1:0}}else W(1281)}function ud(a){var b=ka(a)+1,c=vd(b);la(a,B,c,b);return c}
|
||||
function wd(a){return"]"==a.slice(-1)&&a.lastIndexOf("[")}function xd(a){a-=5120;return 0==a?ab:1==a?B:2==a?Ua:4==a?G:6==a?N:5==a||28922==a||28520==a||30779==a||30782==a?J:Ta}function yd(a,b,c,e,f){a=xd(a);var k=31-Math.clz32(a.BYTES_PER_ELEMENT),l=md;return a.subarray(f>>k,f+e*(c*({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[b-6402]||1)*(1<<k)+l-1&-l)>>k)}
|
||||
function Y(a){var b=X.Te;if(b){var c=b.ie[a];"number"===typeof c&&(b.ie[a]=c=X.getUniformLocation(b,b.Je[a]+(0<c?"["+c+"]":"")));return c}W(1282)}var zd=[],Ad=[],Bd={};
|
||||
function Cd(){if(!Dd){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",_:na||"./this.program"},b;for(b in Bd)void 0===Bd[b]?delete a[b]:a[b]=Bd[b];var c=[];for(b in a)c.push(b+"="+a[b]);Dd=c}return Dd}var Dd;function Ed(a){return 0===a%4&&(0!==a%100||0===a%400)}function Fd(a,b){for(var c=0,e=0;e<=b;c+=a[e++]);return c}
|
||||
var Gd=[31,29,31,30,31,30,31,31,30,31,30,31],Hd=[31,28,31,30,31,30,31,31,30,31,30,31];function Id(a,b){for(a=new Date(a.getTime());0<b;){var c=a.getMonth(),e=(Ed(a.getFullYear())?Gd:Hd)[c];if(b>e-a.getDate())b-=e-a.getDate()+1,a.setDate(1),11>c?a.setMonth(c+1):(a.setMonth(0),a.setFullYear(a.getFullYear()+1));else{a.setDate(a.getDate()+b);break}}return a}
|
||||
function Jd(a,b,c,e){function f(v,D,I){for(v="number"===typeof v?v.toString():v||"";v.length<D;)v=I[0]+v;return v}function k(v,D){return f(v,D,"0")}function l(v,D){function I(Z){return 0>Z?-1:0<Z?1:0}var R;0===(R=I(v.getFullYear()-D.getFullYear()))&&0===(R=I(v.getMonth()-D.getMonth()))&&(R=I(v.getDate()-D.getDate()));return R}function n(v){switch(v.getDay()){case 0:return new Date(v.getFullYear()-1,11,29);case 1:return v;case 2:return new Date(v.getFullYear(),0,3);case 3:return new Date(v.getFullYear(),
|
||||
0,2);case 4:return new Date(v.getFullYear(),0,1);case 5:return new Date(v.getFullYear()-1,11,31);case 6:return new Date(v.getFullYear()-1,11,30)}}function q(v){v=Id(new Date(v.Qd+1900,0,1),v.te);var D=new Date(v.getFullYear()+1,0,4),I=n(new Date(v.getFullYear(),0,4));D=n(D);return 0>=l(I,v)?0>=l(D,v)?v.getFullYear()+1:v.getFullYear():v.getFullYear()-1}var x=G[e+40>>2];e={Bf:G[e>>2],Af:G[e+4>>2],re:G[e+8>>2],he:G[e+12>>2],ce:G[e+16>>2],Qd:G[e+20>>2],se:G[e+24>>2],te:G[e+28>>2],Jf:G[e+32>>2],zf:G[e+
|
||||
36>>2],Cf:x?Pa(x):""};c=Pa(c);x={"%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 y in x)c=c.replace(new RegExp(y,"g"),x[y]);var C="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),
|
||||
E="January February March April May June July August September October November December".split(" ");x={"%a":function(v){return C[v.se].substring(0,3)},"%A":function(v){return C[v.se]},"%b":function(v){return E[v.ce].substring(0,3)},"%B":function(v){return E[v.ce]},"%C":function(v){return k((v.Qd+1900)/100|0,2)},"%d":function(v){return k(v.he,2)},"%e":function(v){return f(v.he,2," ")},"%g":function(v){return q(v).toString().substring(2)},"%G":function(v){return q(v)},"%H":function(v){return k(v.re,
|
||||
2)},"%I":function(v){v=v.re;0==v?v=12:12<v&&(v-=12);return k(v,2)},"%j":function(v){return k(v.he+Fd(Ed(v.Qd+1900)?Gd:Hd,v.ce-1),3)},"%m":function(v){return k(v.ce+1,2)},"%M":function(v){return k(v.Af,2)},"%n":function(){return"\n"},"%p":function(v){return 0<=v.re&&12>v.re?"AM":"PM"},"%S":function(v){return k(v.Bf,2)},"%t":function(){return"\t"},"%u":function(v){return v.se||7},"%U":function(v){var D=new Date(v.Qd+1900,0,1),I=0===D.getDay()?D:Id(D,7-D.getDay());v=new Date(v.Qd+1900,v.ce,v.he);return 0>
|
||||
l(I,v)?k(Math.ceil((31-I.getDate()+(Fd(Ed(v.getFullYear())?Gd:Hd,v.getMonth()-1)-31)+v.getDate())/7),2):0===l(I,D)?"01":"00"},"%V":function(v){var D=new Date(v.Qd+1901,0,4),I=n(new Date(v.Qd+1900,0,4));D=n(D);var R=Id(new Date(v.Qd+1900,0,1),v.te);return 0>l(R,I)?"53":0>=l(D,R)?"01":k(Math.ceil((I.getFullYear()<v.Qd+1900?v.te+32-I.getDate():v.te+1-I.getDate())/7),2)},"%w":function(v){return v.se},"%W":function(v){var D=new Date(v.Qd,0,1),I=1===D.getDay()?D:Id(D,0===D.getDay()?1:7-D.getDay()+1);v=
|
||||
new Date(v.Qd+1900,v.ce,v.he);return 0>l(I,v)?k(Math.ceil((31-I.getDate()+(Fd(Ed(v.getFullYear())?Gd:Hd,v.getMonth()-1)-31)+v.getDate())/7),2):0===l(I,D)?"01":"00"},"%y":function(v){return(v.Qd+1900).toString().substring(2)},"%Y":function(v){return v.Qd+1900},"%z":function(v){v=v.zf;var D=0<=v;v=Math.abs(v)/60;return(D?"+":"-")+String("0000"+(v/60*100+v%60)).slice(-4)},"%Z":function(v){return v.Cf},"%%":function(){return"%"}};for(y in x)c.includes(y)&&(c=c.replace(new RegExp(y,"g"),x[y](e)));y=Kd(c);
|
||||
if(y.length>b)return 0;ab.set(y,a);return y.length-1}Mb=r.InternalError=Fb("InternalError");for(var Ld=Array(256),Md=0;256>Md;++Md)Ld[Md]=String.fromCharCode(Md);Rb=Ld;Sb=r.BindingError=Fb("BindingError");ac.prototype.isAliasOf=function(a){if(!(this instanceof ac&&a instanceof ac))return!1;var b=this.Hd.Nd.Ld,c=this.Hd.Kd,e=a.Hd.Nd.Ld;for(a=a.Hd.Kd;b.Vd;)c=b.je(c),b=b.Vd;for(;e.Vd;)a=e.je(a),e=e.Vd;return b===e&&c===a};
|
||||
ac.prototype.clone=function(){this.Hd.Kd||Tb(this);if(this.Hd.ge)return this.Hd.count.value+=1,this;var a=Xb,b=Object,c=b.create,e=Object.getPrototypeOf(this),f=this.Hd;a=a(c.call(b,e,{Hd:{value:{count:f.count,ae:f.ae,ge:f.ge,Kd:f.Kd,Nd:f.Nd,Pd:f.Pd,Td:f.Td}}}));a.Hd.count.value+=1;a.Hd.ae=!1;return a};ac.prototype["delete"]=function(){this.Hd.Kd||Tb(this);this.Hd.ae&&!this.Hd.ge&&Q("Object already scheduled for deletion");Vb(this);Wb(this.Hd);this.Hd.ge||(this.Hd.Pd=void 0,this.Hd.Kd=void 0)};
|
||||
ac.prototype.isDeleted=function(){return!this.Hd.Kd};ac.prototype.deleteLater=function(){this.Hd.Kd||Tb(this);this.Hd.ae&&!this.Hd.ge&&Q("Object already scheduled for deletion");Zb.push(this);1===Zb.length&&Yb&&Yb($b);this.Hd.ae=!0;return this};wc.prototype.$e=function(a){this.Ie&&(a=this.Ie(a));return a};wc.prototype.Ce=function(a){this.Wd&&this.Wd(a)};wc.prototype.argPackAdvance=8;wc.prototype.readValueFromPointer=zb;wc.prototype.deleteObject=function(a){if(null!==a)a["delete"]()};
|
||||
wc.prototype.fromWireType=function(a){function b(){return this.ne?oc(this.Ld.be,{Nd:this.mf,Kd:c,Td:this,Pd:a}):oc(this.Ld.be,{Nd:this,Kd:a})}var c=this.$e(a);if(!c)return this.Ce(a),null;var e=nc(this.Ld,c);if(void 0!==e){if(0===e.Hd.count.value)return e.Hd.Kd=c,e.Hd.Pd=a,e.clone();e=e.clone();this.Ce(a);return e}e=this.Ld.Ze(c);e=bc[e];if(!e)return b.call(this);e=this.me?e.Se:e.pointerType;var f=lc(c,this.Ld,e.Ld);return null===f?b.call(this):this.ne?oc(e.Ld.be,{Nd:e,Kd:f,Td:this,Pd:a}):oc(e.Ld.be,
|
||||
{Nd:e,Kd:f})};r.getInheritedInstanceCount=function(){return Object.keys(mc).length};r.getLiveInheritedInstances=function(){var a=[],b;for(b in mc)mc.hasOwnProperty(b)&&a.push(mc[b]);return a};r.flushPendingDeletes=$b;r.setDelayFunction=function(a){Yb=a;Zb.length&&Yb&&Yb($b)};zc=r.UnboundTypeError=Fb("UnboundTypeError");r.count_emval_handles=function(){for(var a=0,b=5;b<Hc.length;++b)void 0!==Hc[b]&&++a;return a};
|
||||
r.get_first_emval=function(){for(var a=5;a<Hc.length;++a)if(void 0!==Hc[a])return Hc[a];return null};for(var X,Nd=0;32>Nd;++Nd)rd.push(Array(Nd));var Od=new Float32Array(288);for(Nd=0;288>Nd;++Nd)zd[Nd]=Od.subarray(0,Nd+1);var Pd=new Int32Array(288);for(Nd=0;288>Nd;++Nd)Ad[Nd]=Pd.subarray(0,Nd+1);function Kd(a){var b=Array(ka(a)+1);la(a,b,0,b.length);return b}
|
||||
var ee={K:function(a){return vd(a+16)+16},J:function(a,b,c){(new sb(a)).gf(b,c);tb++;throw a;},W:function(){return 0},tb:function(){},rb:function(){},vb:function(){return 0},ob:function(a,b,c,e,f,k){k<<=12;if(0!==(e&16)&&0!==a%65536)b=-28;else if(0!==(e&32)){a=65536*Math.ceil(b/65536);var l=Qd(65536,a);l?(B.fill(0,l,l+a),a=l):a=0;a?(ub[a]={lf:a,kf:b,Re:!0,fd:f,Hf:c,flags:e,offset:k},b=a):b=-48}else b=-52;return b},nb:function(a,b){var c=ub[a];0!==b&&c?(b===c.kf&&(ub[a]=null,c.Re&&Cc(c.lf)),a=0):a=
|
||||
-28;return a},wb:function(){},sb:function(){},C:function(a){var b=xb[a];delete xb[a];var c=b.ze,e=b.Wd,f=b.Fe,k=f.map(function(l){return l.df}).concat(f.map(function(l){return l.wf}));Ob([a],k,function(l){var n={};f.forEach(function(q,x){var y=l[x],C=q.bf,E=q.cf,v=l[x+f.length],D=q.vf,I=q.xf;n[q.Ye]={read:function(R){return y.fromWireType(C(E,R))},write:function(R,Z){var da=[];D(I,R,v.toWireType(da,Z));yb(da)}}});return[{name:b.name,fromWireType:function(q){var x={},y;for(y in n)x[y]=n[y].read(q);
|
||||
e(q);return x},toWireType:function(q,x){for(var y in n)if(!(y in x))throw new TypeError('Missing field: "'+y+'"');var C=c();for(y in n)n[y].write(C,x[y]);null!==q&&q.push(e,C);return C},argPackAdvance:8,readValueFromPointer:zb,Sd:e}]})},ib:function(){},yb:function(a,b,c,e,f){var k=Qb(c);b=P(b);Pb(a,{name:b,fromWireType:function(l){return!!l},toWireType:function(l,n){return n?e:f},argPackAdvance:8,readValueFromPointer:function(l){if(1===c)var n=ab;else if(2===c)n=Ua;else if(4===c)n=G;else throw new TypeError("Unknown boolean type size: "+
|
||||
b);return this.fromWireType(n[l>>k])},Sd:null})},n:function(a,b,c,e,f,k,l,n,q,x,y,C,E){y=P(y);k=T(f,k);n&&(n=T(l,n));x&&(x=T(q,x));E=T(C,E);var v=Db(y);dc(v,function(){Dc("Cannot construct "+y+" due to unbound types",[e])});Ob([a,b,c],e?[e]:[],function(D){D=D[0];if(e){var I=D.Ld;var R=I.be}else R=ac.prototype;D=Eb(v,function(){if(Object.getPrototypeOf(this)!==Z)throw new Sb("Use 'new' to construct "+y);if(void 0===da.Xd)throw new Sb(y+" has no accessible constructor");var Ma=da.Xd[arguments.length];
|
||||
if(void 0===Ma)throw new Sb("Tried to invoke ctor of "+y+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(da.Xd).toString()+") parameters instead!");return Ma.apply(this,arguments)});var Z=Object.create(R,{constructor:{value:D}});D.prototype=Z;var da=new ec(y,D,Z,E,I,k,n,x);I=new wc(y,da,!0,!1,!1);R=new wc(y+"*",da,!1,!1,!1);var ua=new wc(y+" const*",da,!1,!0,!1);bc[a]={pointerType:R,Se:ua};xc(v,D);return[I,R,ua]})},g:function(a,b,c,e,f,k,l){var n=Fc(c,e);b=P(b);
|
||||
k=T(f,k);Ob([],[a],function(q){function x(){Dc("Cannot call "+y+" due to unbound types",n)}q=q[0];var y=q.name+"."+b;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);var C=q.Ld.constructor;void 0===C[b]?(x.Zd=c-1,C[b]=x):(cc(C,b,y),C[b].Od[c-1]=x);Ob([],n,function(E){E=[E[0],null].concat(E.slice(1));E=Ec(y,E,null,k,l);void 0===C[b].Od?(E.Zd=c-1,C[b]=E):C[b].Od[c-1]=E;return[]});return[]})},A:function(a,b,c,e,f,k){0<b||Ja(void 0);var l=Fc(b,c);f=T(e,f);Ob([],[a],function(n){n=n[0];var q="constructor "+
|
||||
n.name;void 0===n.Ld.Xd&&(n.Ld.Xd=[]);if(void 0!==n.Ld.Xd[b-1])throw new Sb("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.Ld.Xd[b-1]=()=>{Dc("Cannot construct "+n.name+" due to unbound types",l)};Ob([],l,function(x){x.splice(1,0,null);n.Ld.Xd[b-1]=Ec(q,x,null,f,k);return[]});return[]})},a:function(a,b,c,e,f,k,l,n){var q=Fc(c,e);b=P(b);
|
||||
k=T(f,k);Ob([],[a],function(x){function y(){Dc("Cannot call "+C+" due to unbound types",q)}x=x[0];var C=x.name+"."+b;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);n&&x.Ld.nf.push(b);var E=x.Ld.be,v=E[b];void 0===v||void 0===v.Od&&v.className!==x.name&&v.Zd===c-2?(y.Zd=c-2,y.className=x.name,E[b]=y):(cc(E,b,C),E[b].Od[c-2]=y);Ob([],q,function(D){D=Ec(C,D,x,k,l);void 0===E[b].Od?(D.Zd=c-2,E[b]=D):E[b].Od[c-2]=D;return[]});return[]})},s:function(a,b,c){a=P(a);Ob([],[b],function(e){e=e[0];r[a]=e.fromWireType(c);
|
||||
return[]})},xb:function(a,b){b=P(b);Pb(a,{name:b,fromWireType:function(c){var e=Jc(c);Ic(c);return e},toWireType:function(c,e){return jc(e)},argPackAdvance:8,readValueFromPointer:zb,Sd:null})},k:function(a,b,c,e){function f(){}c=Qb(c);b=P(b);f.values={};Pb(a,{name:b,constructor:f,fromWireType:function(k){return this.constructor.values[k]},toWireType:function(k,l){return l.value},argPackAdvance:8,readValueFromPointer:Kc(b,c,e),Sd:null});dc(b,f)},d:function(a,b,c){var e=Lc(a,"enum");b=P(b);a=e.constructor;
|
||||
e=Object.create(e.constructor.prototype,{value:{value:c},constructor:{value:Eb(e.name+"_"+b,function(){})}});a.values[c]=e;a[b]=e},Z:function(a,b,c){c=Qb(c);b=P(b);Pb(a,{name:b,fromWireType:function(e){return e},toWireType:function(e,f){return f},argPackAdvance:8,readValueFromPointer:Mc(b,c),Sd:null})},v:function(a,b,c,e,f,k){var l=Fc(b,c);a=P(a);f=T(e,f);dc(a,function(){Dc("Cannot call "+a+" due to unbound types",l)},b-1);Ob([],l,function(n){n=[n[0],null].concat(n.slice(1));xc(a,Ec(a,n,null,f,k),
|
||||
b-1);return[]})},E:function(a,b,c,e,f){b=P(b);-1===f&&(f=4294967295);f=Qb(c);var k=n=>n;if(0===e){var l=32-8*c;k=n=>n<<l>>>l}c=b.includes("unsigned")?function(n,q){return q>>>0}:function(n,q){return q};Pb(a,{name:b,fromWireType:k,toWireType:c,argPackAdvance:8,readValueFromPointer:Nc(b,f,0!==e),Sd:null})},u:function(a,b,c){function e(k){k>>=2;var l=J;return new f($a,l[k+1],l[k])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=P(c);Pb(a,{name:c,
|
||||
fromWireType:e,argPackAdvance:8,readValueFromPointer:e},{ff:!0})},r:function(a,b,c,e,f,k,l,n,q,x,y,C){c=P(c);k=T(f,k);n=T(l,n);x=T(q,x);C=T(y,C);Ob([a],[b],function(E){E=E[0];return[new wc(c,E.Ld,!1,!1,!0,E,e,k,n,x,C)]})},Y:function(a,b){b=P(b);var c="std::string"===b;Pb(a,{name:b,fromWireType:function(e){var f=J[e>>2];if(c)for(var k=e+4,l=0;l<=f;++l){var n=e+4+l;if(l==f||0==B[n]){k=Pa(k,n-k);if(void 0===q)var q=k;else q+=String.fromCharCode(0),q+=k;k=n+1}}else{q=Array(f);for(l=0;l<f;++l)q[l]=String.fromCharCode(B[e+
|
||||
4+l]);q=q.join("")}Cc(e);return q},toWireType:function(e,f){f instanceof ArrayBuffer&&(f=new Uint8Array(f));var k="string"===typeof f;k||f instanceof Uint8Array||f instanceof Uint8ClampedArray||f instanceof Int8Array||Q("Cannot pass non-string to std::string");var l=(c&&k?()=>ka(f):()=>f.length)(),n=vd(4+l+1);J[n>>2]=l;if(c&&k)la(f,B,n+4,l+1);else if(k)for(k=0;k<l;++k){var q=f.charCodeAt(k);255<q&&(Cc(n),Q("String has UTF-16 code units that do not fit in 8 bits"));B[n+4+k]=q}else for(k=0;k<l;++k)B[n+
|
||||
4+k]=f[k];null!==e&&e.push(Cc,n);return n},argPackAdvance:8,readValueFromPointer:zb,Sd:function(e){Cc(e)}})},Q:function(a,b,c){c=P(c);if(2===b){var e=Sa;var f=Va;var k=Wa;var l=()=>Ta;var n=1}else 4===b&&(e=Xa,f=Ya,k=Za,l=()=>J,n=2);Pb(a,{name:c,fromWireType:function(q){for(var x=J[q>>2],y=l(),C,E=q+4,v=0;v<=x;++v){var D=q+4+v*b;if(v==x||0==y[D>>n])E=e(E,D-E),void 0===C?C=E:(C+=String.fromCharCode(0),C+=E),E=D+b}Cc(q);return C},toWireType:function(q,x){"string"!==typeof x&&Q("Cannot pass non-string to C++ string type "+
|
||||
c);var y=k(x),C=vd(4+y+b);J[C>>2]=y>>n;f(x,C+4,y+b);null!==q&&q.push(Cc,C);return C},argPackAdvance:8,readValueFromPointer:zb,Sd:function(q){Cc(q)}})},D:function(a,b,c,e,f,k){xb[a]={name:P(b),ze:T(c,e),Wd:T(f,k),Fe:[]}},f:function(a,b,c,e,f,k,l,n,q,x){xb[a].Fe.push({Ye:P(b),df:c,bf:T(e,f),cf:k,wf:l,vf:T(n,q),xf:x})},zb:function(a,b){b=P(b);Pb(a,{jf:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},lb:function(){throw"longjmp";},I:function(a,b,c){a=Jc(a);b=Lc(b,"emval::as");
|
||||
var e=[],f=jc(e);G[c>>2]=f;return b.toWireType(e,a)},L:function(a,b,c,e,f){a=Qc[a];b=Jc(b);c=Pc(c);var k=[];G[e>>2]=jc(k);return a(b,c,k,f)},B:function(a,b,c,e){a=Qc[a];b=Jc(b);c=Pc(c);a(b,c,null,e)},e:Ic,N:function(a){if(0===a)return jc(Rc());a=Pc(a);return jc(Rc()[a])},w:function(a,b){var c=Tc(a,b),e=c[0];b=e.name+"_$"+c.slice(1).map(function(l){return l.name}).join("_")+"$";var f=Uc[b];if(void 0!==f)return f;var k=Array(a-1);f=Sc((l,n,q,x)=>{for(var y=0,C=0;C<a-1;++C)k[C]=c[C+1].readValueFromPointer(x+
|
||||
y),y+=c[C+1].argPackAdvance;l=l[n].apply(l,k);for(C=0;C<a-1;++C)c[C+1].Ue&&c[C+1].Ue(k[C]);if(!e.jf)return e.toWireType(q,l)});return Uc[b]=f},H:function(a,b){a=Jc(a);b=Jc(b);return jc(a[b])},p:function(a){4<a&&(Hc[a].Ae+=1)},M:function(a,b,c,e){a=Jc(a);var f=Wc[b];f||(f=Vc(b),Wc[b]=f);return f(a,c,e)},P:function(){return jc([])},h:function(a){return jc(Pc(a))},G:function(){return jc({})},eb:function(a){a=Jc(a);return!a},F:function(a){var b=Jc(a);yb(b);Ic(a)},j:function(a,b,c){a=Jc(a);b=Jc(b);c=Jc(c);
|
||||
a[b]=c},i:function(a,b){a=Lc(a,"_emval_take_value");a=a.readValueFromPointer(b);return jc(a)},m:function(){Ja("")},kb:function(a,b){if(0===a)a=Date.now();else if(1===a||4===a)a=Xc();else return G[Rd()>>2]=28,-1;G[b>>2]=a/1E3|0;G[b+4>>2]=a%1E3*1E6|0;return 0},Sc:function(a){X.activeTexture(a)},Tc:function(a,b){X.attachShader(cd[a],fd[b])},Uc:function(a,b,c){X.bindAttribLocation(cd[a],b,Pa(c))},Vc:function(a,b){35051==a?X.we=b:35052==a&&(X.$d=b);X.bindBuffer(a,bd[b])},ca:function(a,b){X.bindFramebuffer(a,
|
||||
dd[b])},Wb:function(a,b){X.bindRenderbuffer(a,ed[b])},Gb:function(a,b){X.bindSampler(a,hd[b])},Wc:function(a,b){X.bindTexture(a,fa[b])},oc:function(a){X.bindVertexArray(gd[a])},rc:function(a){X.bindVertexArray(gd[a])},Xc:function(a,b,c,e){X.blendColor(a,b,c,e)},Yc:function(a){X.blendEquation(a)},Zc:function(a,b){X.blendFunc(a,b)},Qb:function(a,b,c,e,f,k,l,n,q,x){X.blitFramebuffer(a,b,c,e,f,k,l,n,q,x)},_c:function(a,b,c,e){2<=u.version?c?X.bufferData(a,B,e,c,b):X.bufferData(a,b,e):X.bufferData(a,c?
|
||||
B.subarray(c,c+b):b,e)},$c:function(a,b,c,e){2<=u.version?X.bufferSubData(a,b,B,e,c):X.bufferSubData(a,b,B.subarray(e,e+c))},Xb:function(a){return X.checkFramebufferStatus(a)},T:function(a){X.clear(a)},ba:function(a,b,c,e){X.clearColor(a,b,c,e)},V:function(a){X.clearStencil(a)},cb:function(a,b,c,e){return X.clientWaitSync(jd[a],b,(c>>>0)+4294967296*e)},ad:function(a,b,c,e){X.colorMask(!!a,!!b,!!c,!!e)},da:function(a){X.compileShader(fd[a])},ea:function(a,b,c,e,f,k,l,n){2<=u.version?X.$d?X.compressedTexImage2D(a,
|
||||
b,c,e,f,k,l,n):X.compressedTexImage2D(a,b,c,e,f,k,B,n,l):X.compressedTexImage2D(a,b,c,e,f,k,n?B.subarray(n,n+l):null)},fa:function(a,b,c,e,f,k,l,n,q){2<=u.version?X.$d?X.compressedTexSubImage2D(a,b,c,e,f,k,l,n,q):X.compressedTexSubImage2D(a,b,c,e,f,k,l,B,q,n):X.compressedTexSubImage2D(a,b,c,e,f,k,l,q?B.subarray(q,q+n):null)},Ob:function(a,b,c,e,f){X.copyBufferSubData(a,b,c,e,f)},ga:function(a,b,c,e,f,k,l,n){X.copyTexSubImage2D(a,b,c,e,f,k,l,n)},ha:function(){var a=ea(cd),b=X.createProgram();b.name=
|
||||
a;b.qe=b.oe=b.pe=0;b.Be=1;cd[a]=b;return a},ia:function(a){var b=ea(fd);fd[b]=X.createShader(a);return b},ja:function(a){X.cullFace(a)},ka:function(a,b){for(var c=0;c<a;c++){var e=G[b+4*c>>2],f=bd[e];f&&(X.deleteBuffer(f),f.name=0,bd[e]=null,e==X.we&&(X.we=0),e==X.$d&&(X.$d=0))}},Yb:function(a,b){for(var c=0;c<a;++c){var e=G[b+4*c>>2],f=dd[e];f&&(X.deleteFramebuffer(f),f.name=0,dd[e]=null)}},la:function(a){if(a){var b=cd[a];b?(X.deleteProgram(b),b.name=0,cd[a]=null):W(1281)}},Zb:function(a,b){for(var c=
|
||||
0;c<a;c++){var e=G[b+4*c>>2],f=ed[e];f&&(X.deleteRenderbuffer(f),f.name=0,ed[e]=null)}},Hb:function(a,b){for(var c=0;c<a;c++){var e=G[b+4*c>>2],f=hd[e];f&&(X.deleteSampler(f),f.name=0,hd[e]=null)}},ma:function(a){if(a){var b=fd[a];b?(X.deleteShader(b),fd[a]=null):W(1281)}},Pb:function(a){if(a){var b=jd[a];b?(X.deleteSync(b),b.name=0,jd[a]=null):W(1281)}},na:function(a,b){for(var c=0;c<a;c++){var e=G[b+4*c>>2],f=fa[e];f&&(X.deleteTexture(f),f.name=0,fa[e]=null)}},pc:function(a,b){for(var c=0;c<a;c++){var e=
|
||||
G[b+4*c>>2];X.deleteVertexArray(gd[e]);gd[e]=null}},sc:function(a,b){for(var c=0;c<a;c++){var e=G[b+4*c>>2];X.deleteVertexArray(gd[e]);gd[e]=null}},oa:function(a){X.depthMask(!!a)},pa:function(a){X.disable(a)},qa:function(a){X.disableVertexAttribArray(a)},ra:function(a,b,c){X.drawArrays(a,b,c)},mc:function(a,b,c,e){X.drawArraysInstanced(a,b,c,e)},kc:function(a,b,c,e,f){X.De.drawArraysInstancedBaseInstanceWEBGL(a,b,c,e,f)},ic:function(a,b){for(var c=rd[a],e=0;e<a;e++)c[e]=G[b+4*e>>2];X.drawBuffers(c)},
|
||||
sa:function(a,b,c,e){X.drawElements(a,b,c,e)},nc:function(a,b,c,e,f){X.drawElementsInstanced(a,b,c,e,f)},lc:function(a,b,c,e,f,k,l){X.De.drawElementsInstancedBaseVertexBaseInstanceWEBGL(a,b,c,e,f,k,l)},cc:function(a,b,c,e,f,k){X.drawElements(a,e,f,k)},ta:function(a){X.enable(a)},ua:function(a){X.enableVertexAttribArray(a)},Mb:function(a,b){return(a=X.fenceSync(a,b))?(b=ea(jd),a.name=b,jd[b]=a,b):0},va:function(){X.finish()},wa:function(){X.flush()},_b:function(a,b,c,e){X.framebufferRenderbuffer(a,
|
||||
b,c,ed[e])},$b:function(a,b,c,e,f){X.framebufferTexture2D(a,b,c,fa[e],f)},xa:function(a){X.frontFace(a)},ya:function(a,b){sd(a,b,"createBuffer",bd)},ac:function(a,b){sd(a,b,"createFramebuffer",dd)},bc:function(a,b){sd(a,b,"createRenderbuffer",ed)},Ib:function(a,b){sd(a,b,"createSampler",hd)},za:function(a,b){sd(a,b,"createTexture",fa)},qc:function(a,b){sd(a,b,"createVertexArray",gd)},tc:function(a,b){sd(a,b,"createVertexArray",gd)},Sb:function(a){X.generateMipmap(a)},Aa:function(a,b,c){c?G[c>>2]=
|
||||
X.getBufferParameter(a,b):W(1281)},Ba:function(){var a=X.getError()||nd;nd=0;return a},Ca:function(a,b){td(a,b,2)},Tb:function(a,b,c,e){a=X.getFramebufferAttachmentParameter(a,b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;G[e>>2]=a},O:function(a,b){td(a,b,0)},Da:function(a,b,c,e){a=X.getProgramInfoLog(cd[a]);null===a&&(a="(unknown error)");b=0<b&&e?la(a,B,e,b):0;c&&(G[c>>2]=b)},Ea:function(a,b,c){if(c)if(a>=ad)W(1281);else if(a=cd[a],35716==b)a=X.getProgramInfoLog(a),
|
||||
null===a&&(a="(unknown error)"),G[c>>2]=a.length+1;else if(35719==b){if(!a.qe)for(b=0;b<X.getProgramParameter(a,35718);++b)a.qe=Math.max(a.qe,X.getActiveUniform(a,b).name.length+1);G[c>>2]=a.qe}else if(35722==b){if(!a.oe)for(b=0;b<X.getProgramParameter(a,35721);++b)a.oe=Math.max(a.oe,X.getActiveAttrib(a,b).name.length+1);G[c>>2]=a.oe}else if(35381==b){if(!a.pe)for(b=0;b<X.getProgramParameter(a,35382);++b)a.pe=Math.max(a.pe,X.getActiveUniformBlockName(a,b).length+1);G[c>>2]=a.pe}else G[c>>2]=X.getProgramParameter(a,
|
||||
b);else W(1281)},Ub:function(a,b,c){c?G[c>>2]=X.getRenderbufferParameter(a,b):W(1281)},Fa:function(a,b,c,e){a=X.getShaderInfoLog(fd[a]);null===a&&(a="(unknown error)");b=0<b&&e?la(a,B,e,b):0;c&&(G[c>>2]=b)},Db:function(a,b,c,e){a=X.getShaderPrecisionFormat(a,b);G[c>>2]=a.rangeMin;G[c+4>>2]=a.rangeMax;G[e>>2]=a.precision},Ga:function(a,b,c){c?35716==b?(a=X.getShaderInfoLog(fd[a]),null===a&&(a="(unknown error)"),G[c>>2]=a?a.length+1:0):35720==b?(a=X.getShaderSource(fd[a]),G[c>>2]=a?a.length+1:0):G[c>>
|
||||
2]=X.getShaderParameter(fd[a],b):W(1281)},S:function(a){var b=kd[a];if(!b){switch(a){case 7939:b=X.getSupportedExtensions()||[];b=b.concat(b.map(function(e){return"GL_"+e}));b=ud(b.join(" "));break;case 7936:case 7937:case 37445:case 37446:(b=X.getParameter(a))||W(1280);b=b&&ud(b);break;case 7938:b=X.getParameter(7938);b=2<=u.version?"OpenGL ES 3.0 ("+b+")":"OpenGL ES 2.0 ("+b+")";b=ud(b);break;case 35724:b=X.getParameter(35724);var c=b.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/);null!==
|
||||
c&&(3==c[1].length&&(c[1]+="0"),b="OpenGL ES GLSL ES "+c[1]+" ("+b+")");b=ud(b);break;default:W(1280)}kd[a]=b}return b},bb:function(a,b){if(2>u.version)return W(1282),0;var c=ld[a];if(c)return 0>b||b>=c.length?(W(1281),0):c[b];switch(a){case 7939:return c=X.getSupportedExtensions()||[],c=c.concat(c.map(function(e){return"GL_"+e})),c=c.map(function(e){return ud(e)}),c=ld[a]=c,0>b||b>=c.length?(W(1281),0):c[b];default:return W(1280),0}},Ha:function(a,b){b=Pa(b);if(a=cd[a]){var c=a,e=c.ie,f=c.Ke,k;if(!e)for(c.ie=
|
||||
e={},c.Je={},k=0;k<X.getProgramParameter(c,35718);++k){var l=X.getActiveUniform(c,k);var n=l.name;l=l.size;var q=wd(n);q=0<q?n.slice(0,q):n;var x=c.Be;c.Be+=l;f[q]=[l,x];for(n=0;n<l;++n)e[x]=n,c.Je[x++]=q}c=a.ie;e=0;f=b;k=wd(b);0<k&&(e=parseInt(b.slice(k+1))>>>0,f=b.slice(0,k));if((f=a.Ke[f])&&e<f[0]&&(e+=f[1],c[e]=c[e]||X.getUniformLocation(a,b)))return e}else W(1281);return-1},Eb:function(a,b,c){for(var e=rd[b],f=0;f<b;f++)e[f]=G[c+4*f>>2];X.invalidateFramebuffer(a,e)},Fb:function(a,b,c,e,f,k,l){for(var n=
|
||||
rd[b],q=0;q<b;q++)n[q]=G[c+4*q>>2];X.invalidateSubFramebuffer(a,n,e,f,k,l)},Nb:function(a){return X.isSync(jd[a])},Ia:function(a){return(a=fa[a])?X.isTexture(a):0},Ja:function(a){X.lineWidth(a)},Ka:function(a){a=cd[a];X.linkProgram(a);a.ie=0;a.Ke={}},gc:function(a,b,c,e,f,k){X.He.multiDrawArraysInstancedBaseInstanceWEBGL(a,G,b>>2,G,c>>2,G,e>>2,J,f>>2,k)},hc:function(a,b,c,e,f,k,l,n){X.He.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(a,G,b>>2,c,G,e>>2,G,f>>2,G,k>>2,J,l>>2,n)},La:function(a,
|
||||
b){3317==a&&(md=b);X.pixelStorei(a,b)},jc:function(a){X.readBuffer(a)},Ma:function(a,b,c,e,f,k,l){if(2<=u.version)if(X.we)X.readPixels(a,b,c,e,f,k,l);else{var n=xd(k);X.readPixels(a,b,c,e,f,k,n,l>>31-Math.clz32(n.BYTES_PER_ELEMENT))}else(l=yd(k,f,c,e,l))?X.readPixels(a,b,c,e,f,k,l):W(1280)},Vb:function(a,b,c,e){X.renderbufferStorage(a,b,c,e)},Rb:function(a,b,c,e,f){X.renderbufferStorageMultisample(a,b,c,e,f)},Jb:function(a,b,c){X.samplerParameterf(hd[a],b,c)},Kb:function(a,b,c){X.samplerParameteri(hd[a],
|
||||
b,c)},Lb:function(a,b,c){X.samplerParameteri(hd[a],b,G[c>>2])},Na:function(a,b,c,e){X.scissor(a,b,c,e)},Oa:function(a,b,c,e){for(var f="",k=0;k<b;++k){var l=e?G[e+4*k>>2]:-1;f+=Pa(G[c+4*k>>2],0>l?void 0:l)}X.shaderSource(fd[a],f)},Pa:function(a,b,c){X.stencilFunc(a,b,c)},Qa:function(a,b,c,e){X.stencilFuncSeparate(a,b,c,e)},Ra:function(a){X.stencilMask(a)},Sa:function(a,b){X.stencilMaskSeparate(a,b)},Ta:function(a,b,c){X.stencilOp(a,b,c)},Ua:function(a,b,c,e){X.stencilOpSeparate(a,b,c,e)},Va:function(a,
|
||||
b,c,e,f,k,l,n,q){if(2<=u.version)if(X.$d)X.texImage2D(a,b,c,e,f,k,l,n,q);else if(q){var x=xd(n);X.texImage2D(a,b,c,e,f,k,l,n,x,q>>31-Math.clz32(x.BYTES_PER_ELEMENT))}else X.texImage2D(a,b,c,e,f,k,l,n,null);else X.texImage2D(a,b,c,e,f,k,l,n,q?yd(n,l,e,f,q):null)},Wa:function(a,b,c){X.texParameterf(a,b,c)},Xa:function(a,b,c){X.texParameterf(a,b,N[c>>2])},Ya:function(a,b,c){X.texParameteri(a,b,c)},Za:function(a,b,c){X.texParameteri(a,b,G[c>>2])},dc:function(a,b,c,e,f){X.texStorage2D(a,b,c,e,f)},_a:function(a,
|
||||
b,c,e,f,k,l,n,q){if(2<=u.version)if(X.$d)X.texSubImage2D(a,b,c,e,f,k,l,n,q);else if(q){var x=xd(n);X.texSubImage2D(a,b,c,e,f,k,l,n,x,q>>31-Math.clz32(x.BYTES_PER_ELEMENT))}else X.texSubImage2D(a,b,c,e,f,k,l,n,null);else x=null,q&&(x=yd(n,l,f,k,q)),X.texSubImage2D(a,b,c,e,f,k,l,n,x)},$a:function(a,b){X.uniform1f(Y(a),b)},ab:function(a,b,c){if(2<=u.version)X.uniform1fv(Y(a),N,c>>2,b);else{if(288>=b)for(var e=zd[b-1],f=0;f<b;++f)e[f]=N[c+4*f>>2];else e=N.subarray(c>>2,c+4*b>>2);X.uniform1fv(Y(a),e)}},
|
||||
Oc:function(a,b){X.uniform1i(Y(a),b)},Pc:function(a,b,c){if(2<=u.version)X.uniform1iv(Y(a),G,c>>2,b);else{if(288>=b)for(var e=Ad[b-1],f=0;f<b;++f)e[f]=G[c+4*f>>2];else e=G.subarray(c>>2,c+4*b>>2);X.uniform1iv(Y(a),e)}},Qc:function(a,b,c){X.uniform2f(Y(a),b,c)},Rc:function(a,b,c){if(2<=u.version)X.uniform2fv(Y(a),N,c>>2,2*b);else{if(144>=b)for(var e=zd[2*b-1],f=0;f<2*b;f+=2)e[f]=N[c+4*f>>2],e[f+1]=N[c+(4*f+4)>>2];else e=N.subarray(c>>2,c+8*b>>2);X.uniform2fv(Y(a),e)}},Nc:function(a,b,c){X.uniform2i(Y(a),
|
||||
b,c)},Mc:function(a,b,c){if(2<=u.version)X.uniform2iv(Y(a),G,c>>2,2*b);else{if(144>=b)for(var e=Ad[2*b-1],f=0;f<2*b;f+=2)e[f]=G[c+4*f>>2],e[f+1]=G[c+(4*f+4)>>2];else e=G.subarray(c>>2,c+8*b>>2);X.uniform2iv(Y(a),e)}},Lc:function(a,b,c,e){X.uniform3f(Y(a),b,c,e)},Kc:function(a,b,c){if(2<=u.version)X.uniform3fv(Y(a),N,c>>2,3*b);else{if(96>=b)for(var e=zd[3*b-1],f=0;f<3*b;f+=3)e[f]=N[c+4*f>>2],e[f+1]=N[c+(4*f+4)>>2],e[f+2]=N[c+(4*f+8)>>2];else e=N.subarray(c>>2,c+12*b>>2);X.uniform3fv(Y(a),e)}},Jc:function(a,
|
||||
b,c,e){X.uniform3i(Y(a),b,c,e)},Ic:function(a,b,c){if(2<=u.version)X.uniform3iv(Y(a),G,c>>2,3*b);else{if(96>=b)for(var e=Ad[3*b-1],f=0;f<3*b;f+=3)e[f]=G[c+4*f>>2],e[f+1]=G[c+(4*f+4)>>2],e[f+2]=G[c+(4*f+8)>>2];else e=G.subarray(c>>2,c+12*b>>2);X.uniform3iv(Y(a),e)}},Hc:function(a,b,c,e,f){X.uniform4f(Y(a),b,c,e,f)},Gc:function(a,b,c){if(2<=u.version)X.uniform4fv(Y(a),N,c>>2,4*b);else{if(72>=b){var e=zd[4*b-1],f=N;c>>=2;for(var k=0;k<4*b;k+=4){var l=c+k;e[k]=f[l];e[k+1]=f[l+1];e[k+2]=f[l+2];e[k+3]=
|
||||
f[l+3]}}else e=N.subarray(c>>2,c+16*b>>2);X.uniform4fv(Y(a),e)}},uc:function(a,b,c,e,f){X.uniform4i(Y(a),b,c,e,f)},vc:function(a,b,c){if(2<=u.version)X.uniform4iv(Y(a),G,c>>2,4*b);else{if(72>=b)for(var e=Ad[4*b-1],f=0;f<4*b;f+=4)e[f]=G[c+4*f>>2],e[f+1]=G[c+(4*f+4)>>2],e[f+2]=G[c+(4*f+8)>>2],e[f+3]=G[c+(4*f+12)>>2];else e=G.subarray(c>>2,c+16*b>>2);X.uniform4iv(Y(a),e)}},wc:function(a,b,c,e){if(2<=u.version)X.uniformMatrix2fv(Y(a),!!c,N,e>>2,4*b);else{if(72>=b)for(var f=zd[4*b-1],k=0;k<4*b;k+=4)f[k]=
|
||||
N[e+4*k>>2],f[k+1]=N[e+(4*k+4)>>2],f[k+2]=N[e+(4*k+8)>>2],f[k+3]=N[e+(4*k+12)>>2];else f=N.subarray(e>>2,e+16*b>>2);X.uniformMatrix2fv(Y(a),!!c,f)}},xc:function(a,b,c,e){if(2<=u.version)X.uniformMatrix3fv(Y(a),!!c,N,e>>2,9*b);else{if(32>=b)for(var f=zd[9*b-1],k=0;k<9*b;k+=9)f[k]=N[e+4*k>>2],f[k+1]=N[e+(4*k+4)>>2],f[k+2]=N[e+(4*k+8)>>2],f[k+3]=N[e+(4*k+12)>>2],f[k+4]=N[e+(4*k+16)>>2],f[k+5]=N[e+(4*k+20)>>2],f[k+6]=N[e+(4*k+24)>>2],f[k+7]=N[e+(4*k+28)>>2],f[k+8]=N[e+(4*k+32)>>2];else f=N.subarray(e>>
|
||||
2,e+36*b>>2);X.uniformMatrix3fv(Y(a),!!c,f)}},yc:function(a,b,c,e){if(2<=u.version)X.uniformMatrix4fv(Y(a),!!c,N,e>>2,16*b);else{if(18>=b){var f=zd[16*b-1],k=N;e>>=2;for(var l=0;l<16*b;l+=16){var n=e+l;f[l]=k[n];f[l+1]=k[n+1];f[l+2]=k[n+2];f[l+3]=k[n+3];f[l+4]=k[n+4];f[l+5]=k[n+5];f[l+6]=k[n+6];f[l+7]=k[n+7];f[l+8]=k[n+8];f[l+9]=k[n+9];f[l+10]=k[n+10];f[l+11]=k[n+11];f[l+12]=k[n+12];f[l+13]=k[n+13];f[l+14]=k[n+14];f[l+15]=k[n+15]}}else f=N.subarray(e>>2,e+64*b>>2);X.uniformMatrix4fv(Y(a),!!c,f)}},
|
||||
zc:function(a){a=cd[a];X.useProgram(a);X.Te=a},Ac:function(a,b){X.vertexAttrib1f(a,b)},Bc:function(a,b){X.vertexAttrib2f(a,N[b>>2],N[b+4>>2])},Cc:function(a,b){X.vertexAttrib3f(a,N[b>>2],N[b+4>>2],N[b+8>>2])},Dc:function(a,b){X.vertexAttrib4f(a,N[b>>2],N[b+4>>2],N[b+8>>2],N[b+12>>2])},ec:function(a,b){X.vertexAttribDivisor(a,b)},fc:function(a,b,c,e,f){X.vertexAttribIPointer(a,b,c,e,f)},Ec:function(a,b,c,e,f,k){X.vertexAttribPointer(a,b,c,!!e,f,k)},Fc:function(a,b,c,e){X.viewport(a,b,c,e)},db:function(a,
|
||||
b,c,e){X.waitSync(jd[a],b,(c>>>0)+4294967296*e)},mb:function(a){var b=B.length;a>>>=0;if(2147483648<a)return!1;for(var c=1;4>=c;c*=2){var e=b*(1+.2/c);e=Math.min(e,a+100663296);e=Math.max(a,e);0<e%65536&&(e+=65536-e%65536);a:{try{Ka.grow(Math.min(2147483648,e)-$a.byteLength+65535>>>16);cb();var f=1;break a}catch(k){}f=void 0}if(f)return!0}return!1},fb:function(){return u?u.ef:0},pb:function(a,b){var c=0;Cd().forEach(function(e,f){var k=b+c;f=G[a+4*f>>2]=k;for(k=0;k<e.length;++k)ab[f++>>0]=e.charCodeAt(k);
|
||||
ab[f>>0]=0;c+=e.length+1});return 0},qb:function(a,b){var c=Cd();G[a>>2]=c.length;var e=0;c.forEach(function(f){e+=f.length+1});G[b>>2]=e;return 0},Ab:function(a){if(!(noExitRuntime||0<Da)){if(r.onExit)r.onExit(a);La=!0}oa(a,new Ea(a))},X:function(){return 0},gb:function(a,b,c,e,f,k){a=wb.af(a);b=wb.Ve(a,b,c,e);G[k>>2]=b;return 0},ub:function(a,b,c,e){a=wb.af(a);b=wb.Ve(a,b,c);G[e>>2]=b;return 0},hb:function(){},U:function(a,b,c,e){for(var f=0,k=0;k<c;k++){var l=G[b>>2],n=G[b+4>>2];b+=8;for(var q=
|
||||
0;q<n;q++){var x=B[l+q],y=vb[a];0===x||10===x?((1===a?Ga:Fa)(Oa(y,0)),y.length=0):y.push(x)}f+=n}G[e>>2]=f;return 0},b:function(){return Ha},q:Sd,o:Td,l:Ud,R:Vd,$:Wd,_:Xd,z:Yd,y:Zd,t:$d,x:ae,aa:be,Bb:ce,Cb:de,c:function(a){Ha=a},jb:function(a,b,c,e){return Jd(a,b,c,e)}};
|
||||
(function(){function a(f){r.asm=f.exports;Ka=r.asm.bd;cb();db=r.asm.dd;fb.unshift(r.asm.cd);jb--;r.monitorRunDependencies&&r.monitorRunDependencies(jb);0==jb&&(null!==kb&&(clearInterval(kb),kb=null),lb&&(f=lb,lb=null,f()))}function b(f){a(f.instance)}function c(f){return qb().then(function(k){return WebAssembly.instantiate(k,e)}).then(function(k){return k}).then(f,function(k){Fa("failed to asynchronously prepare wasm: "+k);Ja(k)})}var e={a:ee};jb++;r.monitorRunDependencies&&r.monitorRunDependencies(jb);
|
||||
if(r.instantiateWasm)try{return r.instantiateWasm(e,a)}catch(f){return Fa("Module.instantiateWasm callback failed with error: "+f),!1}(function(){return Ia||"function"!==typeof WebAssembly.instantiateStreaming||mb()||nb.startsWith("file://")||"function"!==typeof fetch?c(b):fetch(nb,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,e).then(b,function(k){Fa("wasm streaming compile failed: "+k);Fa("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(ca);
|
||||
return{}})();r.___wasm_call_ctors=function(){return(r.___wasm_call_ctors=r.asm.cd).apply(null,arguments)};var Rd=r.___errno_location=function(){return(Rd=r.___errno_location=r.asm.ed).apply(null,arguments)},Cc=r._free=function(){return(Cc=r._free=r.asm.fd).apply(null,arguments)},vd=r._malloc=function(){return(vd=r._malloc=r.asm.gd).apply(null,arguments)},Bc=r.___getTypeName=function(){return(Bc=r.___getTypeName=r.asm.hd).apply(null,arguments)};
|
||||
r.___embind_register_native_and_builtin_types=function(){return(r.___embind_register_native_and_builtin_types=r.asm.id).apply(null,arguments)};var Qd=r._memalign=function(){return(Qd=r._memalign=r.asm.jd).apply(null,arguments)},fe=r._setThrew=function(){return(fe=r._setThrew=r.asm.kd).apply(null,arguments)},ge=r.stackSave=function(){return(ge=r.stackSave=r.asm.ld).apply(null,arguments)},he=r.stackRestore=function(){return(he=r.stackRestore=r.asm.md).apply(null,arguments)};
|
||||
r.dynCall_viji=function(){return(r.dynCall_viji=r.asm.nd).apply(null,arguments)};r.dynCall_vijiii=function(){return(r.dynCall_vijiii=r.asm.od).apply(null,arguments)};r.dynCall_viiiiij=function(){return(r.dynCall_viiiiij=r.asm.pd).apply(null,arguments)};r.dynCall_jii=function(){return(r.dynCall_jii=r.asm.qd).apply(null,arguments)};r.dynCall_vij=function(){return(r.dynCall_vij=r.asm.rd).apply(null,arguments)};r.dynCall_iiij=function(){return(r.dynCall_iiij=r.asm.sd).apply(null,arguments)};
|
||||
r.dynCall_iiiij=function(){return(r.dynCall_iiiij=r.asm.td).apply(null,arguments)};r.dynCall_viij=function(){return(r.dynCall_viij=r.asm.ud).apply(null,arguments)};r.dynCall_viiij=function(){return(r.dynCall_viiij=r.asm.vd).apply(null,arguments)};r.dynCall_ji=function(){return(r.dynCall_ji=r.asm.wd).apply(null,arguments)};r.dynCall_iij=function(){return(r.dynCall_iij=r.asm.xd).apply(null,arguments)};r.dynCall_jiiii=function(){return(r.dynCall_jiiii=r.asm.yd).apply(null,arguments)};
|
||||
r.dynCall_jiiiiii=function(){return(r.dynCall_jiiiiii=r.asm.zd).apply(null,arguments)};r.dynCall_jiiiiji=function(){return(r.dynCall_jiiiiji=r.asm.Ad).apply(null,arguments)};r.dynCall_iijj=function(){return(r.dynCall_iijj=r.asm.Bd).apply(null,arguments)};r.dynCall_jiji=function(){return(r.dynCall_jiji=r.asm.Cd).apply(null,arguments)};r.dynCall_viijii=function(){return(r.dynCall_viijii=r.asm.Dd).apply(null,arguments)};r.dynCall_iiiiij=function(){return(r.dynCall_iiiiij=r.asm.Ed).apply(null,arguments)};
|
||||
r.dynCall_iiiiijj=function(){return(r.dynCall_iiiiijj=r.asm.Fd).apply(null,arguments)};r.dynCall_iiiiiijj=function(){return(r.dynCall_iiiiiijj=r.asm.Gd).apply(null,arguments)};function ae(a,b,c,e,f){var k=ge();try{O(a)(b,c,e,f)}catch(l){he(k);if(l!==l+0&&"longjmp"!==l)throw l;fe(1,0)}}function Td(a,b,c){var e=ge();try{return O(a)(b,c)}catch(f){he(e);if(f!==f+0&&"longjmp"!==f)throw f;fe(1,0)}}function Zd(a,b,c){var e=ge();try{O(a)(b,c)}catch(f){he(e);if(f!==f+0&&"longjmp"!==f)throw f;fe(1,0)}}
|
||||
function Sd(a,b){var c=ge();try{return O(a)(b)}catch(e){he(c);if(e!==e+0&&"longjmp"!==e)throw e;fe(1,0)}}function Yd(a,b){var c=ge();try{O(a)(b)}catch(e){he(c);if(e!==e+0&&"longjmp"!==e)throw e;fe(1,0)}}function Ud(a,b,c,e){var f=ge();try{return O(a)(b,c,e)}catch(k){he(f);if(k!==k+0&&"longjmp"!==k)throw k;fe(1,0)}}function $d(a,b,c,e){var f=ge();try{O(a)(b,c,e)}catch(k){he(f);if(k!==k+0&&"longjmp"!==k)throw k;fe(1,0)}}
|
||||
function be(a,b,c,e,f,k){var l=ge();try{O(a)(b,c,e,f,k)}catch(n){he(l);if(n!==n+0&&"longjmp"!==n)throw n;fe(1,0)}}function Wd(a,b,c,e,f,k,l){var n=ge();try{return O(a)(b,c,e,f,k,l)}catch(q){he(n);if(q!==q+0&&"longjmp"!==q)throw q;fe(1,0)}}function Vd(a,b,c,e,f){var k=ge();try{return O(a)(b,c,e,f)}catch(l){he(k);if(l!==l+0&&"longjmp"!==l)throw l;fe(1,0)}}function de(a,b,c,e,f,k,l,n,q,x){var y=ge();try{O(a)(b,c,e,f,k,l,n,q,x)}catch(C){he(y);if(C!==C+0&&"longjmp"!==C)throw C;fe(1,0)}}
|
||||
function ce(a,b,c,e,f,k,l){var n=ge();try{O(a)(b,c,e,f,k,l)}catch(q){he(n);if(q!==q+0&&"longjmp"!==q)throw q;fe(1,0)}}function Xd(a,b,c,e,f,k,l,n,q,x){var y=ge();try{return O(a)(b,c,e,f,k,l,n,q,x)}catch(C){he(y);if(C!==C+0&&"longjmp"!==C)throw C;fe(1,0)}}var ie;function Ea(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}lb=function je(){ie||ke();ie||(lb=je)};
|
||||
function ke(){function a(){if(!ie&&(ie=!0,r.calledRun=!0,!La)){rb(fb);ba(r);if(r.onRuntimeInitialized)r.onRuntimeInitialized();if(r.postRun)for("function"==typeof r.postRun&&(r.postRun=[r.postRun]);r.postRun.length;){var b=r.postRun.shift();hb.unshift(b)}rb(hb)}}if(!(0<jb)){if(r.preRun)for("function"==typeof r.preRun&&(r.preRun=[r.preRun]);r.preRun.length;)ib();rb(eb);0<jb||(r.setStatus?(r.setStatus("Running..."),setTimeout(function(){setTimeout(function(){r.setStatus("")},1);a()},1)):a())}}
|
||||
r.run=ke;if(r.preInit)for("function"==typeof r.preInit&&(r.preInit=[r.preInit]);0<r.preInit.length;)r.preInit.pop()();ke();
|
||||
|
||||
|
||||
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;
|
||||
@ -0,0 +1,153 @@
|
||||
|
||||
var skwasm = (() => {
|
||||
var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
|
||||
if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
|
||||
return (
|
||||
function(skwasm) {
|
||||
skwasm = skwasm || {};
|
||||
|
||||
|
||||
function e(){h.buffer!=l&&q(h.buffer);return aa}function r(){h.buffer!=l&&q(h.buffer);return ba}function u(){h.buffer!=l&&q(h.buffer);return ca}function ea(){h.buffer!=l&&q(h.buffer);return fa}function w(){h.buffer!=l&&q(h.buffer);return ha}function ia(){h.buffer!=l&&q(h.buffer);return ja}null;var y;y||(y=typeof skwasm !== 'undefined' ? skwasm : {});var ka=Object.assign,la,ma;y.ready=new Promise(function(a,b){la=a;ma=b});
|
||||
var na=ka({},y),oa="./this.program",pa=(a,b)=>{throw b;},qa="object"===typeof window,z="function"===typeof importScripts,A="object"===typeof process&&"object"===typeof process.versions&&"string"===typeof process.versions.node,B=y.ENVIRONMENT_IS_PTHREAD||!1,D="";function ra(a){return y.locateFile?y.locateFile(a,D):D+a}var sa,ta,ua,fs,va,wa;
|
||||
if(A){D=z?require("path").dirname(D)+"/":__dirname+"/";wa=()=>{va||(fs=require("fs"),va=require("path"))};sa=function(b,c){wa();b=va.normalize(b);return fs.readFileSync(b,c?null:"utf8")};ua=b=>{b=sa(b,!0);b.buffer||(b=new Uint8Array(b));return b};ta=(b,c,d)=>{wa();b=va.normalize(b);fs.readFile(b,function(f,g){f?d(f):c(g.buffer)})};1<process.argv.length&&(oa=process.argv[1].replace(/\\/g,"/"));process.argv.slice(2);process.on("uncaughtException",function(b){if(!(b instanceof xa))throw b;});process.on("unhandledRejection",
|
||||
function(b){throw b;});pa=(b,c)=>{if(ya())throw process.exitCode=b,c;c instanceof xa||E("exiting due to exception: "+c);process.exit(b)};y.inspect=function(){return"[Emscripten Module object]"};let a;try{a=require("worker_threads")}catch(b){throw console.error('The "worker_threads" module is not supported in this node.js build - perhaps a newer version is needed?'),b;}global.Worker=a.Worker}else if(qa||z)z?D=self.location.href:"undefined"!==typeof document&&document.currentScript&&(D=document.currentScript.src),
|
||||
_scriptDir&&(D=_scriptDir),0!==D.indexOf("blob:")?D=D.substr(0,D.replace(/[?#].*/,"").lastIndexOf("/")+1):D="",A||(sa=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.send(null);return b.responseText},z&&(ua=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),ta=(a,b,c)=>{var d=new XMLHttpRequest;d.open("GET",a,!0);d.responseType="arraybuffer";d.onload=()=>{200==d.status||0==d.status&&d.response?b(d.response):c()};d.onerror=
|
||||
c;d.send(null)});A&&"undefined"===typeof performance&&(global.performance=require("perf_hooks").performance);var za=console.log.bind(console),Aa=console.warn.bind(console);A&&(wa(),za=a=>fs.writeSync(1,a+"\n"),Aa=a=>fs.writeSync(2,a+"\n"));var Ba=y.print||za,E=y.printErr||Aa;ka(y,na);na=null;y.thisProgram&&(oa=y.thisProgram);y.quit&&(pa=y.quit);var Ca,Da=0,Ea;y.wasmBinary&&(Ea=y.wasmBinary);var noExitRuntime=y.noExitRuntime||!0;"object"!==typeof WebAssembly&&Fa("no native wasm support detected");
|
||||
var h,Ga,Ha=!1;function Ia(a){var b=new TextDecoder(a);this.decode=c=>{c.buffer instanceof SharedArrayBuffer&&(c=new Uint8Array(c));return b.decode.call(b,c)}}var Ja="undefined"!==typeof TextDecoder?new Ia("utf8"):void 0;
|
||||
function Ka(a,b,c){var d=b+c;for(c=b;a[c]&&!(c>=d);)++c;if(16<c-b&&a.subarray&&Ja)return Ja.decode(a.subarray(b,c));for(d="";b<c;){var f=a[b++];if(f&128){var g=a[b++]&63;if(192==(f&224))d+=String.fromCharCode((f&31)<<6|g);else{var k=a[b++]&63;f=224==(f&240)?(f&15)<<12|g<<6|k:(f&7)<<18|g<<12|k<<6|a[b++]&63;65536>f?d+=String.fromCharCode(f):(f-=65536,d+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else d+=String.fromCharCode(f)}return d}function F(a,b){return a?Ka(r(),a,b):""}
|
||||
function La(a,b,c,d){if(!(0<d))return 0;var f=c;d=c+d-1;for(var g=0;g<a.length;++g){var k=a.charCodeAt(g);if(55296<=k&&57343>=k){var n=a.charCodeAt(++g);k=65536+((k&1023)<<10)|n&1023}if(127>=k){if(c>=d)break;b[c++]=k}else{if(2047>=k){if(c+1>=d)break;b[c++]=192|k>>6}else{if(65535>=k){if(c+2>=d)break;b[c++]=224|k>>12}else{if(c+3>=d)break;b[c++]=240|k>>18;b[c++]=128|k>>12&63}b[c++]=128|k>>6&63}b[c++]=128|k&63}}b[c]=0;return c-f}function Ma(a,b,c){return La(a,r(),b,c)}
|
||||
function Na(a){for(var b=0,c=0;c<a.length;++c){var d=a.charCodeAt(c);55296<=d&&57343>=d&&(d=65536+((d&1023)<<10)|a.charCodeAt(++c)&1023);127>=d?++b:b=2047>=d?b+2:65535>=d?b+3:b+4}return b}"undefined"!==typeof TextDecoder&&new Ia("utf-16le");function Oa(a,b){e().set(a,b)}var l,aa,ba,Pa,Qa,ca,fa,ha,ja;B&&(l=y.buffer);
|
||||
function q(a){l=a;y.HEAP8=aa=new Int8Array(a);y.HEAP16=Pa=new Int16Array(a);y.HEAP32=ca=new Int32Array(a);y.HEAPU8=ba=new Uint8Array(a);y.HEAPU16=Qa=new Uint16Array(a);y.HEAPU32=fa=new Uint32Array(a);y.HEAPF32=ha=new Float32Array(a);y.HEAPF64=ja=new Float64Array(a)}var Ra=y.INITIAL_MEMORY||16777216;
|
||||
if(B)h=y.wasmMemory,l=y.buffer;else if(y.wasmMemory)h=y.wasmMemory;else if(h=new WebAssembly.Memory({initial:Ra/65536,maximum:32768,shared:!0}),!(h.buffer instanceof SharedArrayBuffer))throw E("requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag"),A&&console.log("(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and also use a recent version)"),
|
||||
Error("bad memory");h&&(l=h.buffer);Ra=l.byteLength;q(l);var Sa,Ta=[],Ua=[],Va=[],Wa=0;function ya(){return noExitRuntime||0<Wa}function Xa(){var a=y.preRun.shift();Ta.unshift(a)}var H=0,Ya=null,Za=null;y.preloadedImages={};y.preloadedAudios={};function Fa(a){if(B)postMessage({cmd:"onAbort",arg:a});else if(y.onAbort)y.onAbort(a);a="Aborted("+a+")";E(a);Ha=!0;a=new WebAssembly.RuntimeError(a+". Build with -s ASSERTIONS=1 for more info.");ma(a);throw a;}
|
||||
function $a(){return I.startsWith("data:application/octet-stream;base64,")}var I;I="skwasm.wasm";$a()||(I=ra(I));function ab(){var a=I;try{if(a==I&&Ea)return new Uint8Array(Ea);if(ua)return ua(a);throw"both async and sync fetching of the wasm failed";}catch(b){Fa(b)}}
|
||||
function bb(){if(!Ea&&(qa||z)){if("function"===typeof fetch&&!I.startsWith("file://"))return fetch(I,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+I+"'";return a.arrayBuffer()}).catch(function(){return ab()});if(ta)return new Promise(function(a,b){ta(I,function(c){a(new Uint8Array(c))},b)})}return Promise.resolve().then(function(){return ab()})}var cb={};
|
||||
function db(a){for(;0<a.length;){var b=a.shift();if("function"==typeof b)b(y);else{var c=b.Ma;"number"===typeof c?void 0===b.A?J(c)():J(c)(b.A):c(void 0===b.A?null:b.A)}}}function eb(a){var b=K();a=a();L(b);return a}function fb(a){var b=M.i[a];b&&(u()[a>>2]=0,M.ea(b.worker))}
|
||||
var M={j:[],D:[],U:[],sa:function(){for(var a=0;1>a;++a)M.W()},ta:function(){M.receiveObjectTransfer=M.wa;M.threadInit=M.ga;M.setExitStatus=M.ya},i:{},ya:function(){},fa:function(){for(var a in M.i){var b=M.i[a];b&&b.worker&&M.ea(b.worker)}for(a=0;a<M.j.length;++a)M.j[a].terminate();M.j=[]},ea:function(a){M.xa(function(){delete M.i[a.s.T];M.j.push(a);M.D.splice(M.D.indexOf(a),1);gb(a.s.T);a.s=void 0})},xa:function(a){u()[hb>>2]=0;try{a()}finally{u()[hb>>2]=1}},wa:function(a){if("undefined"!==typeof ib){for(var b in a.M)N[b]=
|
||||
a.M[b];!y.canvas&&a.o&&N[a.o]&&(y.canvas=N[a.o].l,y.canvas.id=a.o)}},ga:function(){for(var a in M.U)M.U[a]()},aa:function(a,b){a.onmessage=c=>{c=c.data;var d=c.cmd;a.s&&(M.la=a.s.T);if(c.targetThread&&c.targetThread!=jb()){var f=M.i[c.Ta];f?f.worker.postMessage(c,c.transferList):E('Internal error! Worker sent a message "'+d+'" to target pthread '+c.targetThread+", but that thread no longer exists!")}else if("processQueuedMainThreadWork"===d)kb();else if("spawnThread"===d)lb(c);else if("cleanupThread"===
|
||||
d)fb(c.thread);else if("killThread"===d)c=c.thread,u()[c>>2]=0,d=M.i[c],delete M.i[c],d.worker.terminate(),gb(c),M.D.splice(M.D.indexOf(d.worker),1),d.worker.s=void 0;else if("cancelThread"===d)M.i[c.thread].worker.postMessage({cmd:"cancel"});else if("loaded"===d)a.loaded=!0,b&&b(a),a.C&&(a.C(),delete a.C);else if("print"===d)Ba("Thread "+c.threadId+": "+c.text);else if("printErr"===d)E("Thread "+c.threadId+": "+c.text);else if("alert"===d)alert("Thread "+c.threadId+": "+c.text);else if("setimmediate"===
|
||||
c.target)a.postMessage(c);else if("onAbort"===d){if(y.onAbort)y.onAbort(c.arg)}else E("worker sent an unknown command "+d);M.la=void 0};a.onerror=c=>{E("worker sent an error! "+c.filename+":"+c.lineno+": "+c.message);throw c;};A&&(a.on("message",function(c){a.onmessage({data:c})}),a.on("error",function(c){a.onerror(c)}),a.on("detachedExit",function(){}));a.postMessage({cmd:"load",urlOrBlob:y.mainScriptUrlOrBlob||_scriptDir,wasmMemory:h,wasmModule:Ga})},W:function(){var a=ra("skwasm.worker.js");M.j.push(new Worker(a))},
|
||||
oa:function(){0==M.j.length&&(M.W(),M.aa(M.j[0]));return M.j.pop()}};y.establishStackSpace=function(){var a=jb(),b=u()[a+44>>2];a=u()[a+48>>2];mb(b,b-a);L(b)};function nb(a){if(B)return O(1,0,a);try{ob(a)}catch(b){b instanceof xa||"unwind"==b||pa(1,b)}}function J(a){return Sa.get(a)}y.invokeEntryPoint=function(a,b){return J(a)(b)};var pb;pb=A?()=>{var a=process.hrtime();return 1E3*a[0]+a[1]/1E6}:B?()=>performance.now()-y.__performance_now_clock_drift:()=>performance.now();
|
||||
function qb(a){this.B=a-16;this.Da=function(b){u()[this.B+4>>2]=b};this.Aa=function(b){u()[this.B+8>>2]=b};this.Ba=function(){u()[this.B>>2]=0};this.za=function(){var b=0;e()[this.B+12>>0]=b};this.Ca=function(){var b=0;e()[this.B+13>>0]=b};this.qa=function(b,c){this.Da(b);this.Aa(c);this.Ba();this.za();this.Ca()}}var rb=0;
|
||||
function lb(a){var b=M.oa();if(!b)return 6;M.D.push(b);var c=M.i[a.S]={worker:b,T:a.S};b.s=c;var d={cmd:"run",start_routine:a.Ea,arg:a.A,threadInfoStruct:a.S};d.o=a.o;d.M=a.M;b.C=()=>{d.time=performance.now();b.postMessage(d,a.Ja)};b.loaded&&(b.C(),delete b.C);return 0}var sb={},tb=[null,[],[]],ub={};function vb(a,b,c){return B?O(2,1,a,b,c):0}function wb(a,b){if(B)return O(3,1,a,b)}function xb(a,b,c){return B?O(4,1,a,b,c):0}
|
||||
function yb(a,b,c,d,f,g){if(B)b=O(5,1,a,b,c,d,f,g);else if(g<<=12,0!==(d&16)&&0!==a%65536)b=-28;else if(0!==(d&32)){var k=65536*Math.ceil(b/65536);(a=zb(65536,k))?r().fill(0,a,a+k):a=0;a?(sb[a]={va:a,ua:b,ja:!0,fd:f,Qa:c,flags:d,offset:g},b=a):b=-48}else b=-52;return b}function Ab(a,b){if(B)a=O(6,1,a,b);else{var c=sb[a];0!==b&&c?(b===c.ua&&(sb[a]=null,c.ja&&Bb(c.va)),a=0):a=-28}return a}function Cb(a,b,c){if(B)return O(7,1,a,b,c)}
|
||||
function Db(a){var b=a.getExtension("ANGLE_instanced_arrays");b&&(a.vertexAttribDivisor=function(c,d){b.vertexAttribDivisorANGLE(c,d)},a.drawArraysInstanced=function(c,d,f,g){b.drawArraysInstancedANGLE(c,d,f,g)},a.drawElementsInstanced=function(c,d,f,g,k){b.drawElementsInstancedANGLE(c,d,f,g,k)})}
|
||||
function Eb(a){var b=a.getExtension("OES_vertex_array_object");b&&(a.createVertexArray=function(){return b.createVertexArrayOES()},a.deleteVertexArray=function(c){b.deleteVertexArrayOES(c)},a.bindVertexArray=function(c){b.bindVertexArrayOES(c)},a.isVertexArray=function(c){return b.isVertexArrayOES(c)})}function Fb(a){var b=a.getExtension("WEBGL_draw_buffers");b&&(a.drawBuffers=function(c,d){b.drawBuffersWEBGL(c,d)})}
|
||||
var Gb=1,Hb=[],P=[],Ib=[],Jb=[],Kb=[],Q=[],R=[],Lb={},N={},Mb=[],Nb=[],Ob={},Pb={},Qb=4;function S(a){Rb||(Rb=a)}function Sb(a){for(var b=Gb++,c=a.length;c<b;c++)a[c]=null;return b}function Tb(a,b){a.$||(a.$=a.getContext,a.getContext=function(d,f){f=a.$(d,f);return"webgl"==d==f instanceof WebGLRenderingContext?f:null});var c=1<b.ba?a.getContext("webgl2",b):a.getContext("webgl",b);return c?Ub(c,b):0}
|
||||
function Ub(a,b){var c=Vb(8);u()[c+4>>2]=jb();var d={Na:c,attributes:b,version:b.ba,v:a};a.canvas&&(a.canvas.H=d);Lb[c]=d;("undefined"===typeof b.Z||b.Z)&&Wb(d);return c}
|
||||
function Wb(a){a||(a=T);if(!a.ra){a.ra=!0;var b=a.v;Db(b);Eb(b);Fb(b);b.X=b.getExtension("WEBGL_draw_instanced_base_vertex_base_instance");b.da=b.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance");2<=a.version&&(b.Y=b.getExtension("EXT_disjoint_timer_query_webgl2"));if(2>a.version||!b.Y)b.Y=b.getExtension("EXT_disjoint_timer_query");b.Pa=b.getExtension("WEBGL_multi_draw");(b.getSupportedExtensions()||[]).forEach(function(c){c.includes("lose_context")||c.includes("debug")||b.getExtension(c)})}}
|
||||
var ib={},Rb,T,Xb=[];function Yb(a,b,c,d){for(var f=0;f<a;f++){var g=U[c](),k=g&&Sb(d);g?(g.name=k,d[k]=g):S(1282);u()[b+4*f>>2]=k}}
|
||||
function Zb(a,b,c){if(b){var d=void 0;switch(a){case 36346:d=1;break;case 36344:0!=c&&1!=c&&S(1280);return;case 34814:case 36345:d=0;break;case 34466:var f=U.getParameter(34467);d=f?f.length:0;break;case 33309:if(2>T.version){S(1282);return}d=2*(U.getSupportedExtensions()||[]).length;break;case 33307:case 33308:if(2>T.version){S(1280);return}d=33307==a?3:0}if(void 0===d)switch(f=U.getParameter(a),typeof f){case "number":d=f;break;case "boolean":d=f?1:0;break;case "string":S(1280);return;case "object":if(null===
|
||||
f)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:d=0;break;default:S(1280);return}else{if(f instanceof Float32Array||f instanceof Uint32Array||f instanceof Int32Array||f instanceof Array){for(a=0;a<f.length;++a)switch(c){case 0:u()[b+4*a>>2]=f[a];break;case 2:w()[b+4*a>>2]=f[a];break;case 4:e()[b+a>>0]=f[a]?1:0}return}try{d=f.name|
|
||||
0}catch(g){S(1280);E("GL_INVALID_ENUM in glGet"+c+"v: Unknown object returned from WebGL getParameter("+a+")! (error: "+g+")");return}}break;default:S(1280);E("GL_INVALID_ENUM in glGet"+c+"v: Native code calling glGet"+c+"v("+a+") and it returns "+f+" of type "+typeof f+"!");return}switch(c){case 1:c=d;ea()[b>>2]=c;ea()[b+4>>2]=(c-ea()[b>>2])/4294967296;break;case 0:u()[b>>2]=d;break;case 2:w()[b>>2]=d;break;case 4:e()[b>>0]=d?1:0}}else S(1281)}
|
||||
function $b(a){var b=Na(a)+1,c=Vb(b);Ma(a,c,b);return c}function ac(a){return"]"==a.slice(-1)&&a.lastIndexOf("[")}function bc(a){a-=5120;0==a?a=e():1==a?a=r():2==a?(h.buffer!=l&&q(h.buffer),a=Pa):4==a?a=u():6==a?a=w():5==a||28922==a||28520==a||30779==a||30782==a?a=ea():(h.buffer!=l&&q(h.buffer),a=Qa);return a}
|
||||
function cc(a,b,c,d,f){a=bc(a);var g=31-Math.clz32(a.BYTES_PER_ELEMENT),k=Qb;return a.subarray(f>>g,f+d*(c*({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[b-6402]||1)*(1<<g)+k-1&-k)>>g)}function V(a){var b=U.ka;if(b){var c=b.G[a];"number"===typeof c&&(b.G[a]=c=U.getUniformLocation(b,b.ha[a]+(0<c?"["+c+"]":"")));return c}S(1282)}var W=[],dc=[];
|
||||
function O(a,b){var c=arguments.length-2,d=arguments;return eb(function(){for(var f=ec(8*c),g=f>>3,k=0;k<c;k++){var n=d[2+k];ia()[g+k]=n}return fc(a,c,f,b)})}var gc=[];function hc(a,b,c,d){eb(function(){var f=ec(12),g=0;b&&(g=$b(b));u()[f>>2]=g;u()[f+4>>2]=c;u()[f+8>>2]=d;ic(a,657457152,0,g,f)})}function jc(a){a=2<a?F(a):a;return N[a.substr(1)]||"canvas"==a&&Object.keys(N)[0]||"undefined"!==typeof document&&document.querySelector(a)}
|
||||
function kc(a,b,c){var d=jc(a);if(!d)return-4;d.g&&(u()[d.g>>2]=b,u()[d.g+4>>2]=c);if(d.l||!d.I)d.l&&(d=d.l),a=!1,d.H&&d.H.v&&(a=d.H.v.getParameter(2978),a=0===a[0]&&0===a[1]&&a[2]===d.width&&a[3]===d.height),d.width=b,d.height=c,a&&d.H.v.viewport(0,0,b,c);else return d.g?(d=u()[d.g+8>>2],a=a?F(a):"",hc(d,a,b,c),1):-4;return 0}function lc(a,b,c){return B?O(8,1,a,b,c):kc(a,b,c)}var mc=["default","low-power","high-performance"];
|
||||
function nc(a,b){b>>=2;var c=u()[b+6];b={alpha:!!u()[b],depth:!!u()[b+1],stencil:!!u()[b+2],antialias:!!u()[b+3],premultipliedAlpha:!!u()[b+4],preserveDrawingBuffer:!!u()[b+5],powerPreference:mc[c],failIfMajorPerformanceCaveat:!!u()[b+7],ba:u()[b+8],Oa:u()[b+9],Z:u()[b+10],na:u()[b+11],Ra:u()[b+12],Sa:u()[b+13]};a=jc(a);if(!a)return 0;a.l&&(a=a.l);if(b.na){if(!(a.transferControlToOffscreen||"undefined"!==typeof OffscreenCanvas&&a instanceof OffscreenCanvas))return 0;if(a.transferControlToOffscreen){if(!a.I)N[a.id]=
|
||||
{canvas:a.transferControlToOffscreen(),g:Vb(12),id:a.id},a.I=!0;else if(!N[a.id])return 0;a=N[a.id]}}return Tb(a,b)}var pc={};function qc(){if(!rc){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",_:oa||"./this.program"},b;for(b in pc)void 0===pc[b]?delete a[b]:a[b]=pc[b];var c=[];for(b in a)c.push(b+"="+a[b]);rc=c}return rc}var rc;
|
||||
function sc(a,b){if(B)return O(9,1,a,b);var c=0;qc().forEach(function(d,f){var g=b+c;f=u()[a+4*f>>2]=g;for(g=0;g<d.length;++g)e()[f++>>0]=d.charCodeAt(g);e()[f>>0]=0;c+=d.length+1});return 0}function tc(a,b){if(B)return O(10,1,a,b);var c=qc();u()[a>>2]=c.length;var d=0;c.forEach(function(f){d+=f.length+1});u()[b>>2]=d;return 0}function uc(a){return B?O(11,1,a):0}function vc(a,b,c,d,f,g){if(B)return O(12,1,a,b,c,d,f,g);a=ub.pa(a);b=ub.ma(a,b,c,d);u()[g>>2]=b;return 0}
|
||||
function wc(a,b,c,d){if(B)return O(13,1,a,b,c,d);a=ub.pa(a);b=ub.ma(a,b,c);u()[d>>2]=b;return 0}function xc(a,b,c,d,f){if(B)return O(14,1,a,b,c,d,f)}function yc(a,b,c,d){if(B)return O(15,1,a,b,c,d);for(var f=0,g=0;g<c;g++){var k=u()[b>>2],n=u()[b+4>>2];b+=8;for(var p=0;p<n;p++){var t=r()[k+p],v=tb[a];0===t||10===t?((1===a?Ba:E)(Ka(v,0)),v.length=0):v.push(t)}f+=n}u()[d>>2]=f;return 0}function zc(a){return 0===a%4&&(0!==a%100||0===a%400)}function Ac(a,b){for(var c=0,d=0;d<=b;c+=a[d++]);return c}
|
||||
var Bc=[31,29,31,30,31,30,31,31,30,31,30,31],Cc=[31,28,31,30,31,30,31,31,30,31,30,31];function Dc(a,b){for(a=new Date(a.getTime());0<b;){var c=a.getMonth(),d=(zc(a.getFullYear())?Bc:Cc)[c];if(b>d-a.getDate())b-=d-a.getDate()+1,a.setDate(1),11>c?a.setMonth(c+1):(a.setMonth(0),a.setFullYear(a.getFullYear()+1));else{a.setDate(a.getDate()+b);break}}return a}
|
||||
function Ec(a,b,c,d){function f(m,x,C){for(m="number"===typeof m?m.toString():m||"";m.length<x;)m=C[0]+m;return m}function g(m,x){return f(m,x,"0")}function k(m,x){function C(oc){return 0>oc?-1:0<oc?1:0}var da;0===(da=C(m.getFullYear()-x.getFullYear()))&&0===(da=C(m.getMonth()-x.getMonth()))&&(da=C(m.getDate()-x.getDate()));return da}function n(m){switch(m.getDay()){case 0:return new Date(m.getFullYear()-1,11,29);case 1:return m;case 2:return new Date(m.getFullYear(),0,3);case 3:return new Date(m.getFullYear(),
|
||||
0,2);case 4:return new Date(m.getFullYear(),0,1);case 5:return new Date(m.getFullYear()-1,11,31);case 6:return new Date(m.getFullYear()-1,11,30)}}function p(m){m=Dc(new Date(m.h+1900,0,1),m.P);var x=new Date(m.getFullYear()+1,0,4),C=n(new Date(m.getFullYear(),0,4));x=n(x);return 0>=k(C,m)?0>=k(x,m)?m.getFullYear()+1:m.getFullYear():m.getFullYear()-1}var t=u()[d+40>>2];d={Ha:u()[d>>2],Ga:u()[d+4>>2],N:u()[d+8>>2],F:u()[d+12>>2],u:u()[d+16>>2],h:u()[d+20>>2],O:u()[d+24>>2],P:u()[d+28>>2],Ua:u()[d+32>>
|
||||
2],Fa:u()[d+36>>2],Ia:t?F(t):""};c=F(c);t={"%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 v in t)c=c.replace(new RegExp(v,"g"),t[v]);var Y="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),
|
||||
G="January February March April May June July August September October November December".split(" ");t={"%a":function(m){return Y[m.O].substring(0,3)},"%A":function(m){return Y[m.O]},"%b":function(m){return G[m.u].substring(0,3)},"%B":function(m){return G[m.u]},"%C":function(m){return g((m.h+1900)/100|0,2)},"%d":function(m){return g(m.F,2)},"%e":function(m){return f(m.F,2," ")},"%g":function(m){return p(m).toString().substring(2)},"%G":function(m){return p(m)},"%H":function(m){return g(m.N,2)},"%I":function(m){m=
|
||||
m.N;0==m?m=12:12<m&&(m-=12);return g(m,2)},"%j":function(m){return g(m.F+Ac(zc(m.h+1900)?Bc:Cc,m.u-1),3)},"%m":function(m){return g(m.u+1,2)},"%M":function(m){return g(m.Ga,2)},"%n":function(){return"\n"},"%p":function(m){return 0<=m.N&&12>m.N?"AM":"PM"},"%S":function(m){return g(m.Ha,2)},"%t":function(){return"\t"},"%u":function(m){return m.O||7},"%U":function(m){var x=new Date(m.h+1900,0,1),C=0===x.getDay()?x:Dc(x,7-x.getDay());m=new Date(m.h+1900,m.u,m.F);return 0>k(C,m)?g(Math.ceil((31-C.getDate()+
|
||||
(Ac(zc(m.getFullYear())?Bc:Cc,m.getMonth()-1)-31)+m.getDate())/7),2):0===k(C,x)?"01":"00"},"%V":function(m){var x=new Date(m.h+1901,0,4),C=n(new Date(m.h+1900,0,4));x=n(x);var da=Dc(new Date(m.h+1900,0,1),m.P);return 0>k(da,C)?"53":0>=k(x,da)?"01":g(Math.ceil((C.getFullYear()<m.h+1900?m.P+32-C.getDate():m.P+1-C.getDate())/7),2)},"%w":function(m){return m.O},"%W":function(m){var x=new Date(m.h,0,1),C=1===x.getDay()?x:Dc(x,0===x.getDay()?1:7-x.getDay()+1);m=new Date(m.h+1900,m.u,m.F);return 0>k(C,m)?
|
||||
g(Math.ceil((31-C.getDate()+(Ac(zc(m.getFullYear())?Bc:Cc,m.getMonth()-1)-31)+m.getDate())/7),2):0===k(C,x)?"01":"00"},"%y":function(m){return(m.h+1900).toString().substring(2)},"%Y":function(m){return m.h+1900},"%z":function(m){m=m.Fa;var x=0<=m;m=Math.abs(m)/60;return(x?"+":"-")+String("0000"+(m/60*100+m%60)).slice(-4)},"%Z":function(m){return m.Ia},"%%":function(){return"%"}};for(v in t)c.includes(v)&&(c=c.replace(new RegExp(v,"g"),t[v](d)));v=Fc(c);if(v.length>b)return 0;Oa(v,a);return v.length-
|
||||
1}B||M.sa();for(var U,X=0;32>X;++X)Xb.push(Array(X));var Gc=new Float32Array(288);for(X=0;288>X;++X)W[X]=Gc.subarray(0,X+1);var Hc=new Int32Array(288);for(X=0;288>X;++X)dc[X]=Hc.subarray(0,X+1);var Ic=[null,nb,vb,wb,xb,yb,Ab,Cb,lc,sc,tc,uc,vc,wc,xc,yc];function Fc(a){var b=Array(Na(a)+1);La(a,b,0,b.length);return b}
|
||||
var bd={__cxa_allocate_exception:function(a){return Vb(a+16)+16},__cxa_throw:function(a,b,c){(new qb(a)).qa(b,c);rb++;throw a;},__emscripten_init_main_thread_js:function(a){Jc(a,!z,1,!qa);M.ga()},__emscripten_thread_cleanup:function(a){B?postMessage({cmd:"cleanupThread",thread:a}):fb(a)},__pthread_create_js:function(a,b,c,d){if("undefined"===typeof SharedArrayBuffer)return E("Current environment does not support SharedArrayBuffer, pthreads are not available!"),6;var f=[],g=0,k=b?u()[b+40>>2]:0;-1==
|
||||
k?k="#canvas":k&&(k=F(k).trim());k&&(k=k.split(","));var n={},p=y.canvas?y.canvas.id:"",t;for(t in k){var v=k[t].trim();try{if("#canvas"==v){if(!y.canvas){E('pthread_create: could not find canvas with ID "'+v+'" to transfer to thread!');g=28;break}v=y.canvas.id}if(N[v]){var Y=N[v];N[v]=null;y.canvas instanceof OffscreenCanvas&&v===y.canvas.id&&(y.canvas=null)}else if(!B){var G=y.canvas&&y.canvas.id===v?y.canvas:document.querySelector(v);if(!G){E('pthread_create: could not find canvas with ID "'+v+
|
||||
'" to transfer to thread!');g=28;break}if(G.I){E('pthread_create: cannot transfer canvas with ID "'+v+'" to thread, since the current thread does not have control over it!');g=63;break}if(G.transferControlToOffscreen)G.g||(G.g=Vb(12),u()[G.g>>2]=G.width,u()[G.g+4>>2]=G.height,u()[G.g+8>>2]=0),Y={l:G.transferControlToOffscreen(),g:G.g,id:G.id},G.I=!0;else return E('pthread_create: cannot transfer control of canvas "'+v+'" to pthread, because current browser does not support OffscreenCanvas!'),E("pthread_create: Build with -s OFFSCREEN_FRAMEBUFFER=1 to enable fallback proxying of GL commands from pthread to main thread."),
|
||||
52}Y&&(f.push(Y.l),n[Y.id]=Y)}catch(m){return E('pthread_create: failed to transfer control of canvas "'+v+'" to OffscreenCanvas! Error: '+m),28}}if(B&&(0===f.length||g))return Kc(687865856,a,b,c,d);if(g)return g;for(t in n)u()[n[t].g+8>>2]=a;a={Ea:c,S:a,A:d,o:p,M:n,Ja:f};return B?(a.Ka="spawnThread",postMessage(a,f),0):lb(a)},__syscall_fcntl64:vb,__syscall_fstat64:wb,__syscall_ioctl:xb,__syscall_mmap2:yb,__syscall_munmap:Ab,__syscall_open:Cb,_emscripten_default_pthread_stack_size:function(){return 2097152},
|
||||
_emscripten_futex_wait_non_blocking:function(a,b,c){var d=performance.now();c=d+c;for(Atomics.exchange(u(),Lc>>2,a);;){d=performance.now();if(d>c)return Atomics.exchange(u(),Lc>>2,0),-73;d=Atomics.exchange(u(),Lc>>2,0);if(0==d)break;kb();if(Atomics.load(u(),a>>2)!=b)return-6;Atomics.exchange(u(),Lc>>2,a)}return 0},_emscripten_notify_thread_queue:function(a,b){if(a==b)postMessage({cmd:"processQueuedMainThreadWork"});else if(B)postMessage({targetThread:a,cmd:"processThreadQueue"});else{a=(a=M.i[a])&&
|
||||
a.worker;if(!a)return;a.postMessage({cmd:"processThreadQueue"})}return 1},_emscripten_throw_longjmp:function(){throw"longjmp";},abort:function(){Fa("")},clock_gettime:function(a,b){if(0===a)a=Date.now();else if(1===a||4===a)a=pb();else return u()[Mc()>>2]=28,-1;u()[b>>2]=a/1E3|0;u()[b+4>>2]=a%1E3*1E6|0;return 0},emscripten_check_blocking_allowed:function(){A||z||(Ca||(Ca={}),Ca["Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread"]||
|
||||
(Ca["Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread"]=1,E("Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread")))},emscripten_get_now:pb,emscripten_glActiveTexture:function(a){U.activeTexture(a)},emscripten_glAttachShader:function(a,b){U.attachShader(P[a],Q[b])},emscripten_glBindAttribLocation:function(a,b,c){U.bindAttribLocation(P[a],
|
||||
b,F(c))},emscripten_glBindBuffer:function(a,b){35051==a?U.R=b:35052==a&&(U.m=b);U.bindBuffer(a,Hb[b])},emscripten_glBindFramebuffer:function(a,b){U.bindFramebuffer(a,Ib[b])},emscripten_glBindRenderbuffer:function(a,b){U.bindRenderbuffer(a,Jb[b])},emscripten_glBindSampler:function(a,b){U.bindSampler(a,Mb[b])},emscripten_glBindTexture:function(a,b){U.bindTexture(a,Kb[b])},emscripten_glBindVertexArray:function(a){U.bindVertexArray(R[a])},emscripten_glBindVertexArrayOES:function(a){U.bindVertexArray(R[a])},
|
||||
emscripten_glBlendColor:function(a,b,c,d){U.blendColor(a,b,c,d)},emscripten_glBlendEquation:function(a){U.blendEquation(a)},emscripten_glBlendFunc:function(a,b){U.blendFunc(a,b)},emscripten_glBlitFramebuffer:function(a,b,c,d,f,g,k,n,p,t){U.blitFramebuffer(a,b,c,d,f,g,k,n,p,t)},emscripten_glBufferData:function(a,b,c,d){2<=T.version?c?U.bufferData(a,r(),d,c,b):U.bufferData(a,b,d):U.bufferData(a,c?r().subarray(c,c+b):b,d)},emscripten_glBufferSubData:function(a,b,c,d){2<=T.version?U.bufferSubData(a,b,
|
||||
r(),d,c):U.bufferSubData(a,b,r().subarray(d,d+c))},emscripten_glCheckFramebufferStatus:function(a){return U.checkFramebufferStatus(a)},emscripten_glClear:function(a){U.clear(a)},emscripten_glClearColor:function(a,b,c,d){U.clearColor(a,b,c,d)},emscripten_glClearStencil:function(a){U.clearStencil(a)},emscripten_glClientWaitSync:function(a,b,c,d){return U.clientWaitSync(Nb[a],b,(c>>>0)+4294967296*d)},emscripten_glColorMask:function(a,b,c,d){U.colorMask(!!a,!!b,!!c,!!d)},emscripten_glCompileShader:function(a){U.compileShader(Q[a])},
|
||||
emscripten_glCompressedTexImage2D:function(a,b,c,d,f,g,k,n){2<=T.version?U.m?U.compressedTexImage2D(a,b,c,d,f,g,k,n):U.compressedTexImage2D(a,b,c,d,f,g,r(),n,k):U.compressedTexImage2D(a,b,c,d,f,g,n?r().subarray(n,n+k):null)},emscripten_glCompressedTexSubImage2D:function(a,b,c,d,f,g,k,n,p){2<=T.version?U.m?U.compressedTexSubImage2D(a,b,c,d,f,g,k,n,p):U.compressedTexSubImage2D(a,b,c,d,f,g,k,r(),p,n):U.compressedTexSubImage2D(a,b,c,d,f,g,k,p?r().subarray(p,p+n):null)},emscripten_glCopyBufferSubData:function(a,
|
||||
b,c,d,f){U.copyBufferSubData(a,b,c,d,f)},emscripten_glCopyTexSubImage2D:function(a,b,c,d,f,g,k,n){U.copyTexSubImage2D(a,b,c,d,f,g,k,n)},emscripten_glCreateProgram:function(){var a=Sb(P),b=U.createProgram();b.name=a;b.L=b.J=b.K=0;b.V=1;P[a]=b;return a},emscripten_glCreateShader:function(a){var b=Sb(Q);Q[b]=U.createShader(a);return b},emscripten_glCullFace:function(a){U.cullFace(a)},emscripten_glDeleteBuffers:function(a,b){for(var c=0;c<a;c++){var d=u()[b+4*c>>2],f=Hb[d];f&&(U.deleteBuffer(f),f.name=
|
||||
0,Hb[d]=null,d==U.R&&(U.R=0),d==U.m&&(U.m=0))}},emscripten_glDeleteFramebuffers:function(a,b){for(var c=0;c<a;++c){var d=u()[b+4*c>>2],f=Ib[d];f&&(U.deleteFramebuffer(f),f.name=0,Ib[d]=null)}},emscripten_glDeleteProgram:function(a){if(a){var b=P[a];b?(U.deleteProgram(b),b.name=0,P[a]=null):S(1281)}},emscripten_glDeleteRenderbuffers:function(a,b){for(var c=0;c<a;c++){var d=u()[b+4*c>>2],f=Jb[d];f&&(U.deleteRenderbuffer(f),f.name=0,Jb[d]=null)}},emscripten_glDeleteSamplers:function(a,b){for(var c=0;c<
|
||||
a;c++){var d=u()[b+4*c>>2],f=Mb[d];f&&(U.deleteSampler(f),f.name=0,Mb[d]=null)}},emscripten_glDeleteShader:function(a){if(a){var b=Q[a];b?(U.deleteShader(b),Q[a]=null):S(1281)}},emscripten_glDeleteSync:function(a){if(a){var b=Nb[a];b?(U.deleteSync(b),b.name=0,Nb[a]=null):S(1281)}},emscripten_glDeleteTextures:function(a,b){for(var c=0;c<a;c++){var d=u()[b+4*c>>2],f=Kb[d];f&&(U.deleteTexture(f),f.name=0,Kb[d]=null)}},emscripten_glDeleteVertexArrays:function(a,b){for(var c=0;c<a;c++){var d=u()[b+4*c>>
|
||||
2];U.deleteVertexArray(R[d]);R[d]=null}},emscripten_glDeleteVertexArraysOES:function(a,b){for(var c=0;c<a;c++){var d=u()[b+4*c>>2];U.deleteVertexArray(R[d]);R[d]=null}},emscripten_glDepthMask:function(a){U.depthMask(!!a)},emscripten_glDisable:function(a){U.disable(a)},emscripten_glDisableVertexAttribArray:function(a){U.disableVertexAttribArray(a)},emscripten_glDrawArrays:function(a,b,c){U.drawArrays(a,b,c)},emscripten_glDrawArraysInstanced:function(a,b,c,d){U.drawArraysInstanced(a,b,c,d)},emscripten_glDrawArraysInstancedBaseInstanceWEBGL:function(a,
|
||||
b,c,d,f){U.X.drawArraysInstancedBaseInstanceWEBGL(a,b,c,d,f)},emscripten_glDrawBuffers:function(a,b){for(var c=Xb[a],d=0;d<a;d++)c[d]=u()[b+4*d>>2];U.drawBuffers(c)},emscripten_glDrawElements:function(a,b,c,d){U.drawElements(a,b,c,d)},emscripten_glDrawElementsInstanced:function(a,b,c,d,f){U.drawElementsInstanced(a,b,c,d,f)},emscripten_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL:function(a,b,c,d,f,g,k){U.X.drawElementsInstancedBaseVertexBaseInstanceWEBGL(a,b,c,d,f,g,k)},emscripten_glDrawRangeElements:function(a,
|
||||
b,c,d,f,g){U.drawElements(a,d,f,g)},emscripten_glEnable:function(a){U.enable(a)},emscripten_glEnableVertexAttribArray:function(a){U.enableVertexAttribArray(a)},emscripten_glFenceSync:function(a,b){return(a=U.fenceSync(a,b))?(b=Sb(Nb),a.name=b,Nb[b]=a,b):0},emscripten_glFinish:function(){U.finish()},emscripten_glFlush:function(){U.flush()},emscripten_glFramebufferRenderbuffer:function(a,b,c,d){U.framebufferRenderbuffer(a,b,c,Jb[d])},emscripten_glFramebufferTexture2D:function(a,b,c,d,f){U.framebufferTexture2D(a,
|
||||
b,c,Kb[d],f)},emscripten_glFrontFace:function(a){U.frontFace(a)},emscripten_glGenBuffers:function(a,b){Yb(a,b,"createBuffer",Hb)},emscripten_glGenFramebuffers:function(a,b){Yb(a,b,"createFramebuffer",Ib)},emscripten_glGenRenderbuffers:function(a,b){Yb(a,b,"createRenderbuffer",Jb)},emscripten_glGenSamplers:function(a,b){Yb(a,b,"createSampler",Mb)},emscripten_glGenTextures:function(a,b){Yb(a,b,"createTexture",Kb)},emscripten_glGenVertexArrays:function(a,b){Yb(a,b,"createVertexArray",R)},emscripten_glGenVertexArraysOES:function(a,
|
||||
b){Yb(a,b,"createVertexArray",R)},emscripten_glGenerateMipmap:function(a){U.generateMipmap(a)},emscripten_glGetBufferParameteriv:function(a,b,c){c?u()[c>>2]=U.getBufferParameter(a,b):S(1281)},emscripten_glGetError:function(){var a=U.getError()||Rb;Rb=0;return a},emscripten_glGetFloatv:function(a,b){Zb(a,b,2)},emscripten_glGetFramebufferAttachmentParameteriv:function(a,b,c,d){a=U.getFramebufferAttachmentParameter(a,b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;u()[d>>
|
||||
2]=a},emscripten_glGetIntegerv:function(a,b){Zb(a,b,0)},emscripten_glGetProgramInfoLog:function(a,b,c,d){a=U.getProgramInfoLog(P[a]);null===a&&(a="(unknown error)");b=0<b&&d?Ma(a,d,b):0;c&&(u()[c>>2]=b)},emscripten_glGetProgramiv:function(a,b,c){if(c)if(a>=Gb)S(1281);else if(a=P[a],35716==b)a=U.getProgramInfoLog(a),null===a&&(a="(unknown error)"),u()[c>>2]=a.length+1;else if(35719==b){if(!a.L)for(b=0;b<U.getProgramParameter(a,35718);++b)a.L=Math.max(a.L,U.getActiveUniform(a,b).name.length+1);u()[c>>
|
||||
2]=a.L}else if(35722==b){if(!a.J)for(b=0;b<U.getProgramParameter(a,35721);++b)a.J=Math.max(a.J,U.getActiveAttrib(a,b).name.length+1);u()[c>>2]=a.J}else if(35381==b){if(!a.K)for(b=0;b<U.getProgramParameter(a,35382);++b)a.K=Math.max(a.K,U.getActiveUniformBlockName(a,b).length+1);u()[c>>2]=a.K}else u()[c>>2]=U.getProgramParameter(a,b);else S(1281)},emscripten_glGetRenderbufferParameteriv:function(a,b,c){c?u()[c>>2]=U.getRenderbufferParameter(a,b):S(1281)},emscripten_glGetShaderInfoLog:function(a,b,c,
|
||||
d){a=U.getShaderInfoLog(Q[a]);null===a&&(a="(unknown error)");b=0<b&&d?Ma(a,d,b):0;c&&(u()[c>>2]=b)},emscripten_glGetShaderPrecisionFormat:function(a,b,c,d){a=U.getShaderPrecisionFormat(a,b);u()[c>>2]=a.rangeMin;u()[c+4>>2]=a.rangeMax;u()[d>>2]=a.precision},emscripten_glGetShaderiv:function(a,b,c){c?35716==b?(a=U.getShaderInfoLog(Q[a]),null===a&&(a="(unknown error)"),a=a?a.length+1:0,u()[c>>2]=a):35720==b?(a=(a=U.getShaderSource(Q[a]))?a.length+1:0,u()[c>>2]=a):u()[c>>2]=U.getShaderParameter(Q[a],
|
||||
b):S(1281)},emscripten_glGetString:function(a){var b=Ob[a];if(!b){switch(a){case 7939:b=U.getSupportedExtensions()||[];b=b.concat(b.map(function(d){return"GL_"+d}));b=$b(b.join(" "));break;case 7936:case 7937:case 37445:case 37446:(b=U.getParameter(a))||S(1280);b=b&&$b(b);break;case 7938:b=U.getParameter(7938);b=2<=T.version?"OpenGL ES 3.0 ("+b+")":"OpenGL ES 2.0 ("+b+")";b=$b(b);break;case 35724:b=U.getParameter(35724);var c=b.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/);null!==c&&(3==c[1].length&&
|
||||
(c[1]+="0"),b="OpenGL ES GLSL ES "+c[1]+" ("+b+")");b=$b(b);break;default:S(1280)}Ob[a]=b}return b},emscripten_glGetStringi:function(a,b){if(2>T.version)return S(1282),0;var c=Pb[a];if(c)return 0>b||b>=c.length?(S(1281),0):c[b];switch(a){case 7939:return c=U.getSupportedExtensions()||[],c=c.concat(c.map(function(d){return"GL_"+d})),c=c.map(function(d){return $b(d)}),c=Pb[a]=c,0>b||b>=c.length?(S(1281),0):c[b];default:return S(1280),0}},emscripten_glGetUniformLocation:function(a,b){b=F(b);if(a=P[a]){var c=
|
||||
a,d=c.G,f=c.ia,g;if(!d)for(c.G=d={},c.ha={},g=0;g<U.getProgramParameter(c,35718);++g){var k=U.getActiveUniform(c,g);var n=k.name;k=k.size;var p=ac(n);p=0<p?n.slice(0,p):n;var t=c.V;c.V+=k;f[p]=[k,t];for(n=0;n<k;++n)d[t]=n,c.ha[t++]=p}c=a.G;d=0;f=b;g=ac(b);0<g&&(d=parseInt(b.slice(g+1))>>>0,f=b.slice(0,g));if((f=a.ia[f])&&d<f[0]&&(d+=f[1],c[d]=c[d]||U.getUniformLocation(a,b)))return d}else S(1281);return-1},emscripten_glInvalidateFramebuffer:function(a,b,c){for(var d=Xb[b],f=0;f<b;f++)d[f]=u()[c+4*
|
||||
f>>2];U.invalidateFramebuffer(a,d)},emscripten_glInvalidateSubFramebuffer:function(a,b,c,d,f,g,k){for(var n=Xb[b],p=0;p<b;p++)n[p]=u()[c+4*p>>2];U.invalidateSubFramebuffer(a,n,d,f,g,k)},emscripten_glIsSync:function(a){return U.isSync(Nb[a])},emscripten_glIsTexture:function(a){return(a=Kb[a])?U.isTexture(a):0},emscripten_glLineWidth:function(a){U.lineWidth(a)},emscripten_glLinkProgram:function(a){a=P[a];U.linkProgram(a);a.G=0;a.ia={}},emscripten_glMultiDrawArraysInstancedBaseInstanceWEBGL:function(a,
|
||||
b,c,d,f,g){U.da.multiDrawArraysInstancedBaseInstanceWEBGL(a,u(),b>>2,u(),c>>2,u(),d>>2,ea(),f>>2,g)},emscripten_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL:function(a,b,c,d,f,g,k,n){U.da.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(a,u(),b>>2,c,u(),d>>2,u(),f>>2,u(),g>>2,ea(),k>>2,n)},emscripten_glPixelStorei:function(a,b){3317==a&&(Qb=b);U.pixelStorei(a,b)},emscripten_glReadBuffer:function(a){U.readBuffer(a)},emscripten_glReadPixels:function(a,b,c,d,f,g,k){if(2<=T.version)if(U.R)U.readPixels(a,
|
||||
b,c,d,f,g,k);else{var n=bc(g);U.readPixels(a,b,c,d,f,g,n,k>>31-Math.clz32(n.BYTES_PER_ELEMENT))}else(k=cc(g,f,c,d,k))?U.readPixels(a,b,c,d,f,g,k):S(1280)},emscripten_glRenderbufferStorage:function(a,b,c,d){U.renderbufferStorage(a,b,c,d)},emscripten_glRenderbufferStorageMultisample:function(a,b,c,d,f){U.renderbufferStorageMultisample(a,b,c,d,f)},emscripten_glSamplerParameterf:function(a,b,c){U.samplerParameterf(Mb[a],b,c)},emscripten_glSamplerParameteri:function(a,b,c){U.samplerParameteri(Mb[a],b,
|
||||
c)},emscripten_glSamplerParameteriv:function(a,b,c){c=u()[c>>2];U.samplerParameteri(Mb[a],b,c)},emscripten_glScissor:function(a,b,c,d){U.scissor(a,b,c,d)},emscripten_glShaderSource:function(a,b,c,d){for(var f="",g=0;g<b;++g){var k=d?u()[d+4*g>>2]:-1;f+=F(u()[c+4*g>>2],0>k?void 0:k)}U.shaderSource(Q[a],f)},emscripten_glStencilFunc:function(a,b,c){U.stencilFunc(a,b,c)},emscripten_glStencilFuncSeparate:function(a,b,c,d){U.stencilFuncSeparate(a,b,c,d)},emscripten_glStencilMask:function(a){U.stencilMask(a)},
|
||||
emscripten_glStencilMaskSeparate:function(a,b){U.stencilMaskSeparate(a,b)},emscripten_glStencilOp:function(a,b,c){U.stencilOp(a,b,c)},emscripten_glStencilOpSeparate:function(a,b,c,d){U.stencilOpSeparate(a,b,c,d)},emscripten_glTexImage2D:function(a,b,c,d,f,g,k,n,p){if(2<=T.version)if(U.m)U.texImage2D(a,b,c,d,f,g,k,n,p);else if(p){var t=bc(n);U.texImage2D(a,b,c,d,f,g,k,n,t,p>>31-Math.clz32(t.BYTES_PER_ELEMENT))}else U.texImage2D(a,b,c,d,f,g,k,n,null);else U.texImage2D(a,b,c,d,f,g,k,n,p?cc(n,k,d,f,p):
|
||||
null)},emscripten_glTexParameterf:function(a,b,c){U.texParameterf(a,b,c)},emscripten_glTexParameterfv:function(a,b,c){c=w()[c>>2];U.texParameterf(a,b,c)},emscripten_glTexParameteri:function(a,b,c){U.texParameteri(a,b,c)},emscripten_glTexParameteriv:function(a,b,c){c=u()[c>>2];U.texParameteri(a,b,c)},emscripten_glTexStorage2D:function(a,b,c,d,f){U.texStorage2D(a,b,c,d,f)},emscripten_glTexSubImage2D:function(a,b,c,d,f,g,k,n,p){if(2<=T.version)if(U.m)U.texSubImage2D(a,b,c,d,f,g,k,n,p);else if(p){var t=
|
||||
bc(n);U.texSubImage2D(a,b,c,d,f,g,k,n,t,p>>31-Math.clz32(t.BYTES_PER_ELEMENT))}else U.texSubImage2D(a,b,c,d,f,g,k,n,null);else t=null,p&&(t=cc(n,k,f,g,p)),U.texSubImage2D(a,b,c,d,f,g,k,n,t)},emscripten_glUniform1f:function(a,b){U.uniform1f(V(a),b)},emscripten_glUniform1fv:function(a,b,c){if(2<=T.version)U.uniform1fv(V(a),w(),c>>2,b);else{if(288>=b)for(var d=W[b-1],f=0;f<b;++f)d[f]=w()[c+4*f>>2];else d=w().subarray(c>>2,c+4*b>>2);U.uniform1fv(V(a),d)}},emscripten_glUniform1i:function(a,b){U.uniform1i(V(a),
|
||||
b)},emscripten_glUniform1iv:function(a,b,c){if(2<=T.version)U.uniform1iv(V(a),u(),c>>2,b);else{if(288>=b)for(var d=dc[b-1],f=0;f<b;++f)d[f]=u()[c+4*f>>2];else d=u().subarray(c>>2,c+4*b>>2);U.uniform1iv(V(a),d)}},emscripten_glUniform2f:function(a,b,c){U.uniform2f(V(a),b,c)},emscripten_glUniform2fv:function(a,b,c){if(2<=T.version)U.uniform2fv(V(a),w(),c>>2,2*b);else{if(144>=b)for(var d=W[2*b-1],f=0;f<2*b;f+=2)d[f]=w()[c+4*f>>2],d[f+1]=w()[c+(4*f+4)>>2];else d=w().subarray(c>>2,c+8*b>>2);U.uniform2fv(V(a),
|
||||
d)}},emscripten_glUniform2i:function(a,b,c){U.uniform2i(V(a),b,c)},emscripten_glUniform2iv:function(a,b,c){if(2<=T.version)U.uniform2iv(V(a),u(),c>>2,2*b);else{if(144>=b)for(var d=dc[2*b-1],f=0;f<2*b;f+=2)d[f]=u()[c+4*f>>2],d[f+1]=u()[c+(4*f+4)>>2];else d=u().subarray(c>>2,c+8*b>>2);U.uniform2iv(V(a),d)}},emscripten_glUniform3f:function(a,b,c,d){U.uniform3f(V(a),b,c,d)},emscripten_glUniform3fv:function(a,b,c){if(2<=T.version)U.uniform3fv(V(a),w(),c>>2,3*b);else{if(96>=b)for(var d=W[3*b-1],f=0;f<3*
|
||||
b;f+=3)d[f]=w()[c+4*f>>2],d[f+1]=w()[c+(4*f+4)>>2],d[f+2]=w()[c+(4*f+8)>>2];else d=w().subarray(c>>2,c+12*b>>2);U.uniform3fv(V(a),d)}},emscripten_glUniform3i:function(a,b,c,d){U.uniform3i(V(a),b,c,d)},emscripten_glUniform3iv:function(a,b,c){if(2<=T.version)U.uniform3iv(V(a),u(),c>>2,3*b);else{if(96>=b)for(var d=dc[3*b-1],f=0;f<3*b;f+=3)d[f]=u()[c+4*f>>2],d[f+1]=u()[c+(4*f+4)>>2],d[f+2]=u()[c+(4*f+8)>>2];else d=u().subarray(c>>2,c+12*b>>2);U.uniform3iv(V(a),d)}},emscripten_glUniform4f:function(a,b,
|
||||
c,d,f){U.uniform4f(V(a),b,c,d,f)},emscripten_glUniform4fv:function(a,b,c){if(2<=T.version)U.uniform4fv(V(a),w(),c>>2,4*b);else{if(72>=b){var d=W[4*b-1],f=w();c>>=2;for(var g=0;g<4*b;g+=4){var k=c+g;d[g]=f[k];d[g+1]=f[k+1];d[g+2]=f[k+2];d[g+3]=f[k+3]}}else d=w().subarray(c>>2,c+16*b>>2);U.uniform4fv(V(a),d)}},emscripten_glUniform4i:function(a,b,c,d,f){U.uniform4i(V(a),b,c,d,f)},emscripten_glUniform4iv:function(a,b,c){if(2<=T.version)U.uniform4iv(V(a),u(),c>>2,4*b);else{if(72>=b)for(var d=dc[4*b-1],
|
||||
f=0;f<4*b;f+=4)d[f]=u()[c+4*f>>2],d[f+1]=u()[c+(4*f+4)>>2],d[f+2]=u()[c+(4*f+8)>>2],d[f+3]=u()[c+(4*f+12)>>2];else d=u().subarray(c>>2,c+16*b>>2);U.uniform4iv(V(a),d)}},emscripten_glUniformMatrix2fv:function(a,b,c,d){if(2<=T.version)U.uniformMatrix2fv(V(a),!!c,w(),d>>2,4*b);else{if(72>=b)for(var f=W[4*b-1],g=0;g<4*b;g+=4)f[g]=w()[d+4*g>>2],f[g+1]=w()[d+(4*g+4)>>2],f[g+2]=w()[d+(4*g+8)>>2],f[g+3]=w()[d+(4*g+12)>>2];else f=w().subarray(d>>2,d+16*b>>2);U.uniformMatrix2fv(V(a),!!c,f)}},emscripten_glUniformMatrix3fv:function(a,
|
||||
b,c,d){if(2<=T.version)U.uniformMatrix3fv(V(a),!!c,w(),d>>2,9*b);else{if(32>=b)for(var f=W[9*b-1],g=0;g<9*b;g+=9)f[g]=w()[d+4*g>>2],f[g+1]=w()[d+(4*g+4)>>2],f[g+2]=w()[d+(4*g+8)>>2],f[g+3]=w()[d+(4*g+12)>>2],f[g+4]=w()[d+(4*g+16)>>2],f[g+5]=w()[d+(4*g+20)>>2],f[g+6]=w()[d+(4*g+24)>>2],f[g+7]=w()[d+(4*g+28)>>2],f[g+8]=w()[d+(4*g+32)>>2];else f=w().subarray(d>>2,d+36*b>>2);U.uniformMatrix3fv(V(a),!!c,f)}},emscripten_glUniformMatrix4fv:function(a,b,c,d){if(2<=T.version)U.uniformMatrix4fv(V(a),!!c,w(),
|
||||
d>>2,16*b);else{if(18>=b){var f=W[16*b-1],g=w();d>>=2;for(var k=0;k<16*b;k+=16){var n=d+k;f[k]=g[n];f[k+1]=g[n+1];f[k+2]=g[n+2];f[k+3]=g[n+3];f[k+4]=g[n+4];f[k+5]=g[n+5];f[k+6]=g[n+6];f[k+7]=g[n+7];f[k+8]=g[n+8];f[k+9]=g[n+9];f[k+10]=g[n+10];f[k+11]=g[n+11];f[k+12]=g[n+12];f[k+13]=g[n+13];f[k+14]=g[n+14];f[k+15]=g[n+15]}}else f=w().subarray(d>>2,d+64*b>>2);U.uniformMatrix4fv(V(a),!!c,f)}},emscripten_glUseProgram:function(a){a=P[a];U.useProgram(a);U.ka=a},emscripten_glVertexAttrib1f:function(a,b){U.vertexAttrib1f(a,
|
||||
b)},emscripten_glVertexAttrib2fv:function(a,b){U.vertexAttrib2f(a,w()[b>>2],w()[b+4>>2])},emscripten_glVertexAttrib3fv:function(a,b){U.vertexAttrib3f(a,w()[b>>2],w()[b+4>>2],w()[b+8>>2])},emscripten_glVertexAttrib4fv:function(a,b){U.vertexAttrib4f(a,w()[b>>2],w()[b+4>>2],w()[b+8>>2],w()[b+12>>2])},emscripten_glVertexAttribDivisor:function(a,b){U.vertexAttribDivisor(a,b)},emscripten_glVertexAttribIPointer:function(a,b,c,d,f){U.vertexAttribIPointer(a,b,c,d,f)},emscripten_glVertexAttribPointer:function(a,
|
||||
b,c,d,f,g){U.vertexAttribPointer(a,b,c,!!d,f,g)},emscripten_glViewport:function(a,b,c,d){U.viewport(a,b,c,d)},emscripten_glWaitSync:function(a,b,c,d){U.waitSync(Nb[a],b,(c>>>0)+4294967296*d)},emscripten_receive_on_main_thread_js:function(a,b,c){gc.length=b;c>>=3;for(var d=0;d<b;d++)gc[d]=ia()[c+d];return(0>a?cb[-a-1]:Ic[a]).apply(null,gc)},emscripten_resize_heap:function(a){var b=r().length;a>>>=0;if(a<=b||2147483648<a)return!1;for(var c=1;4>=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,a+100663296);d=Math.max(a,
|
||||
d);0<d%65536&&(d+=65536-d%65536);a:{try{h.grow(Math.min(2147483648,d)-l.byteLength+65535>>>16);q(h.buffer);var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},emscripten_set_canvas_element_size:function(a,b,c){return jc(a)?kc(a,b,c):lc(a,b,c)},emscripten_unwind_to_js_event_loop:function(){throw"unwind";},emscripten_webgl_create_context:function(a,b){return nc(a,b)},emscripten_webgl_init_context_attributes:function(a){for(var b=a>>2,c=0;14>c;++c)u()[b+c]=0;u()[b]=u()[b+1]=u()[b+3]=u()[b+4]=
|
||||
u()[b+8]=u()[b+10]=1;z&&(u()[a+48>>2]=1)},emscripten_webgl_make_context_current:function(a){T=Lb[a];y.La=U=T&&T.v;return!a||U?0:-5},environ_get:sc,environ_sizes_get:tc,exit:function(a){ob(a)},fd_close:uc,fd_pread:vc,fd_read:wc,fd_seek:xc,fd_write:yc,getTempRet0:function(){return Da},invoke_ii:Nc,invoke_iii:Oc,invoke_iiii:Pc,invoke_iiiii:Qc,invoke_iiiiii:Rc,invoke_iiiiiii:Sc,invoke_v:Tc,invoke_vi:Uc,invoke_vii:Vc,invoke_viii:Wc,invoke_viiii:Xc,invoke_viiiii:Yc,invoke_viiiiii:Zc,invoke_viiiiiii:$c,
|
||||
invoke_viiiiiiii:ad,memory:h||y.wasmMemory,setTempRet0:function(a){Da=a},strftime_l:function(a,b,c,d){return Ec(a,b,c,d)}};
|
||||
(function(){function a(f,g){y.asm=f.exports;M.U.push(y.asm.emscripten_tls_init);Sa=y.asm.__indirect_function_table;Ua.unshift(y.asm.__wasm_call_ctors);Ga=g;if(!B){var k=M.j.length;M.j.forEach(function(n){M.aa(n,function(){if(!--k&&(H--,y.monitorRunDependencies&&y.monitorRunDependencies(H),0==H&&(null!==Ya&&(clearInterval(Ya),Ya=null),Za))){var p=Za;Za=null;p()}})})}}function b(f){a(f.instance,f.module)}function c(f){return bb().then(function(g){return WebAssembly.instantiate(g,d)}).then(function(g){return g}).then(f,
|
||||
function(g){E("failed to asynchronously prepare wasm: "+g);Fa(g)})}var d={env:bd,wasi_snapshot_preview1:bd};B||(H++,y.monitorRunDependencies&&y.monitorRunDependencies(H));if(y.instantiateWasm)try{return y.instantiateWasm(d,a)}catch(f){return E("Module.instantiateWasm callback failed with error: "+f),!1}(function(){return Ea||"function"!==typeof WebAssembly.instantiateStreaming||$a()||I.startsWith("file://")||"function"!==typeof fetch?c(b):fetch(I,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,
|
||||
d).then(b,function(g){E("wasm streaming compile failed: "+g);E("falling back to ArrayBuffer instantiation");return c(b)})})})().catch(ma);return{}})();y.___wasm_call_ctors=function(){return(y.___wasm_call_ctors=y.asm.__wasm_call_ctors).apply(null,arguments)};y._canvas_destroy=function(){return(y._canvas_destroy=y.asm.canvas_destroy).apply(null,arguments)};y._canvas_saveLayer=function(){return(y._canvas_saveLayer=y.asm.canvas_saveLayer).apply(null,arguments)};
|
||||
y._canvas_save=function(){return(y._canvas_save=y.asm.canvas_save).apply(null,arguments)};y._canvas_restore=function(){return(y._canvas_restore=y.asm.canvas_restore).apply(null,arguments)};y._canvas_restoreToCount=function(){return(y._canvas_restoreToCount=y.asm.canvas_restoreToCount).apply(null,arguments)};y._canvas_getSaveCount=function(){return(y._canvas_getSaveCount=y.asm.canvas_getSaveCount).apply(null,arguments)};
|
||||
y._canvas_translate=function(){return(y._canvas_translate=y.asm.canvas_translate).apply(null,arguments)};y._canvas_scale=function(){return(y._canvas_scale=y.asm.canvas_scale).apply(null,arguments)};y._canvas_rotate=function(){return(y._canvas_rotate=y.asm.canvas_rotate).apply(null,arguments)};y._canvas_skew=function(){return(y._canvas_skew=y.asm.canvas_skew).apply(null,arguments)};y._canvas_transform=function(){return(y._canvas_transform=y.asm.canvas_transform).apply(null,arguments)};
|
||||
y._canvas_clipRect=function(){return(y._canvas_clipRect=y.asm.canvas_clipRect).apply(null,arguments)};y._canvas_clipRRect=function(){return(y._canvas_clipRRect=y.asm.canvas_clipRRect).apply(null,arguments)};y._canvas_clipPath=function(){return(y._canvas_clipPath=y.asm.canvas_clipPath).apply(null,arguments)};y._canvas_drawColor=function(){return(y._canvas_drawColor=y.asm.canvas_drawColor).apply(null,arguments)};
|
||||
y._canvas_drawLine=function(){return(y._canvas_drawLine=y.asm.canvas_drawLine).apply(null,arguments)};y._canvas_drawPaint=function(){return(y._canvas_drawPaint=y.asm.canvas_drawPaint).apply(null,arguments)};y._canvas_drawRect=function(){return(y._canvas_drawRect=y.asm.canvas_drawRect).apply(null,arguments)};y._canvas_drawRRect=function(){return(y._canvas_drawRRect=y.asm.canvas_drawRRect).apply(null,arguments)};
|
||||
y._canvas_drawDRRect=function(){return(y._canvas_drawDRRect=y.asm.canvas_drawDRRect).apply(null,arguments)};y._canvas_drawOval=function(){return(y._canvas_drawOval=y.asm.canvas_drawOval).apply(null,arguments)};y._canvas_drawCircle=function(){return(y._canvas_drawCircle=y.asm.canvas_drawCircle).apply(null,arguments)};y._canvas_drawArc=function(){return(y._canvas_drawArc=y.asm.canvas_drawArc).apply(null,arguments)};
|
||||
y._canvas_drawPath=function(){return(y._canvas_drawPath=y.asm.canvas_drawPath).apply(null,arguments)};y._canvas_drawPicture=function(){return(y._canvas_drawPicture=y.asm.canvas_drawPicture).apply(null,arguments)};y._canvas_getTransform=function(){return(y._canvas_getTransform=y.asm.canvas_getTransform).apply(null,arguments)};y._canvas_getLocalClipBounds=function(){return(y._canvas_getLocalClipBounds=y.asm.canvas_getLocalClipBounds).apply(null,arguments)};
|
||||
y._canvas_getDeviceClipBounds=function(){return(y._canvas_getDeviceClipBounds=y.asm.canvas_getDeviceClipBounds).apply(null,arguments)};y._contourMeasureIter_create=function(){return(y._contourMeasureIter_create=y.asm.contourMeasureIter_create).apply(null,arguments)};y._contourMeasureIter_next=function(){return(y._contourMeasureIter_next=y.asm.contourMeasureIter_next).apply(null,arguments)};
|
||||
y._contourMeasure_dispose=function(){return(y._contourMeasure_dispose=y.asm.contourMeasure_dispose).apply(null,arguments)};y._contourMeasure_length=function(){return(y._contourMeasure_length=y.asm.contourMeasure_length).apply(null,arguments)};y._contourMeasure_isClosed=function(){return(y._contourMeasure_isClosed=y.asm.contourMeasure_isClosed).apply(null,arguments)};y._contourMeasure_getPosTan=function(){return(y._contourMeasure_getPosTan=y.asm.contourMeasure_getPosTan).apply(null,arguments)};
|
||||
y._contourMeasure_getSegment=function(){return(y._contourMeasure_getSegment=y.asm.contourMeasure_getSegment).apply(null,arguments)};y._paint_create=function(){return(y._paint_create=y.asm.paint_create).apply(null,arguments)};y._paint_destroy=function(){return(y._paint_destroy=y.asm.paint_destroy).apply(null,arguments)};y._paint_setBlendMode=function(){return(y._paint_setBlendMode=y.asm.paint_setBlendMode).apply(null,arguments)};
|
||||
y._paint_setStyle=function(){return(y._paint_setStyle=y.asm.paint_setStyle).apply(null,arguments)};y._paint_getStyle=function(){return(y._paint_getStyle=y.asm.paint_getStyle).apply(null,arguments)};y._paint_setStrokeWidth=function(){return(y._paint_setStrokeWidth=y.asm.paint_setStrokeWidth).apply(null,arguments)};y._paint_getStrokeWidth=function(){return(y._paint_getStrokeWidth=y.asm.paint_getStrokeWidth).apply(null,arguments)};
|
||||
y._paint_setStrokeCap=function(){return(y._paint_setStrokeCap=y.asm.paint_setStrokeCap).apply(null,arguments)};y._paint_getStrokeCap=function(){return(y._paint_getStrokeCap=y.asm.paint_getStrokeCap).apply(null,arguments)};y._paint_setStrokeJoin=function(){return(y._paint_setStrokeJoin=y.asm.paint_setStrokeJoin).apply(null,arguments)};y._paint_getStrokeJoin=function(){return(y._paint_getStrokeJoin=y.asm.paint_getStrokeJoin).apply(null,arguments)};
|
||||
y._paint_setAntiAlias=function(){return(y._paint_setAntiAlias=y.asm.paint_setAntiAlias).apply(null,arguments)};y._paint_getAntiAlias=function(){return(y._paint_getAntiAlias=y.asm.paint_getAntiAlias).apply(null,arguments)};y._paint_setColorInt=function(){return(y._paint_setColorInt=y.asm.paint_setColorInt).apply(null,arguments)};y._paint_getColorInt=function(){return(y._paint_getColorInt=y.asm.paint_getColorInt).apply(null,arguments)};
|
||||
y._paint_setMiterLimit=function(){return(y._paint_setMiterLimit=y.asm.paint_setMiterLimit).apply(null,arguments)};y._paint_getMiterLImit=function(){return(y._paint_getMiterLImit=y.asm.paint_getMiterLImit).apply(null,arguments)};y._path_create=function(){return(y._path_create=y.asm.path_create).apply(null,arguments)};y._path_destroy=function(){return(y._path_destroy=y.asm.path_destroy).apply(null,arguments)};y._path_copy=function(){return(y._path_copy=y.asm.path_copy).apply(null,arguments)};
|
||||
y._path_setFillType=function(){return(y._path_setFillType=y.asm.path_setFillType).apply(null,arguments)};y._path_getFillType=function(){return(y._path_getFillType=y.asm.path_getFillType).apply(null,arguments)};y._path_moveTo=function(){return(y._path_moveTo=y.asm.path_moveTo).apply(null,arguments)};y._path_relativeMoveTo=function(){return(y._path_relativeMoveTo=y.asm.path_relativeMoveTo).apply(null,arguments)};y._path_lineTo=function(){return(y._path_lineTo=y.asm.path_lineTo).apply(null,arguments)};
|
||||
y._path_relativeLineTo=function(){return(y._path_relativeLineTo=y.asm.path_relativeLineTo).apply(null,arguments)};y._path_quadraticBezierTo=function(){return(y._path_quadraticBezierTo=y.asm.path_quadraticBezierTo).apply(null,arguments)};y._path_relativeQuadraticBezierTo=function(){return(y._path_relativeQuadraticBezierTo=y.asm.path_relativeQuadraticBezierTo).apply(null,arguments)};y._path_cubicTo=function(){return(y._path_cubicTo=y.asm.path_cubicTo).apply(null,arguments)};
|
||||
y._path_relativeCubicTo=function(){return(y._path_relativeCubicTo=y.asm.path_relativeCubicTo).apply(null,arguments)};y._path_conicTo=function(){return(y._path_conicTo=y.asm.path_conicTo).apply(null,arguments)};y._path_relativeConicTo=function(){return(y._path_relativeConicTo=y.asm.path_relativeConicTo).apply(null,arguments)};y._path_arcToOval=function(){return(y._path_arcToOval=y.asm.path_arcToOval).apply(null,arguments)};
|
||||
y._path_arcToRotated=function(){return(y._path_arcToRotated=y.asm.path_arcToRotated).apply(null,arguments)};y._path_relativeArcToRotated=function(){return(y._path_relativeArcToRotated=y.asm.path_relativeArcToRotated).apply(null,arguments)};y._path_addRect=function(){return(y._path_addRect=y.asm.path_addRect).apply(null,arguments)};y._path_addOval=function(){return(y._path_addOval=y.asm.path_addOval).apply(null,arguments)};
|
||||
y._path_addArc=function(){return(y._path_addArc=y.asm.path_addArc).apply(null,arguments)};y._path_addPolygon=function(){return(y._path_addPolygon=y.asm.path_addPolygon).apply(null,arguments)};y._path_addRRect=function(){return(y._path_addRRect=y.asm.path_addRRect).apply(null,arguments)};y._path_addPath=function(){return(y._path_addPath=y.asm.path_addPath).apply(null,arguments)};y._path_close=function(){return(y._path_close=y.asm.path_close).apply(null,arguments)};
|
||||
y._path_reset=function(){return(y._path_reset=y.asm.path_reset).apply(null,arguments)};y._path_contains=function(){return(y._path_contains=y.asm.path_contains).apply(null,arguments)};y._path_transform=function(){return(y._path_transform=y.asm.path_transform).apply(null,arguments)};y._path_getBounds=function(){return(y._path_getBounds=y.asm.path_getBounds).apply(null,arguments)};y._path_combine=function(){return(y._path_combine=y.asm.path_combine).apply(null,arguments)};
|
||||
y._pictureRecorder_create=function(){return(y._pictureRecorder_create=y.asm.pictureRecorder_create).apply(null,arguments)};y._pictureRecorder_dispose=function(){return(y._pictureRecorder_dispose=y.asm.pictureRecorder_dispose).apply(null,arguments)};y._pictureRecorder_beginRecording=function(){return(y._pictureRecorder_beginRecording=y.asm.pictureRecorder_beginRecording).apply(null,arguments)};
|
||||
y._pictureRecorder_endRecording=function(){return(y._pictureRecorder_endRecording=y.asm.pictureRecorder_endRecording).apply(null,arguments)};y._picture_dispose=function(){return(y._picture_dispose=y.asm.picture_dispose).apply(null,arguments)};y._picture_approximateBytesUsed=function(){return(y._picture_approximateBytesUsed=y.asm.picture_approximateBytesUsed).apply(null,arguments)};
|
||||
y._surface_createFromCanvas=function(){return(y._surface_createFromCanvas=y.asm.surface_createFromCanvas).apply(null,arguments)};y._surface_destroy=function(){return(y._surface_destroy=y.asm.surface_destroy).apply(null,arguments)};y._surface_setCanvasSize=function(){return(y._surface_setCanvasSize=y.asm.surface_setCanvasSize).apply(null,arguments)};y._surface_renderPicture=function(){return(y._surface_renderPicture=y.asm.surface_renderPicture).apply(null,arguments)};
|
||||
var ic=y._emscripten_dispatch_to_thread_=function(){return(ic=y._emscripten_dispatch_to_thread_=y.asm.emscripten_dispatch_to_thread_).apply(null,arguments)},Mc=y.___errno_location=function(){return(Mc=y.___errno_location=y.asm.__errno_location).apply(null,arguments)},jb=y._pthread_self=function(){return(jb=y._pthread_self=y.asm.pthread_self).apply(null,arguments)},Bb=y._free=function(){return(Bb=y._free=y.asm.free).apply(null,arguments)},Vb=y._malloc=function(){return(Vb=y._malloc=y.asm.malloc).apply(null,
|
||||
arguments)};y._emscripten_tls_init=function(){return(y._emscripten_tls_init=y.asm.emscripten_tls_init).apply(null,arguments)};var kb=y._emscripten_main_thread_process_queued_calls=function(){return(kb=y._emscripten_main_thread_process_queued_calls=y.asm.emscripten_main_thread_process_queued_calls).apply(null,arguments)},Jc=y.__emscripten_thread_init=function(){return(Jc=y.__emscripten_thread_init=y.asm._emscripten_thread_init).apply(null,arguments)};
|
||||
y._emscripten_current_thread_process_queued_calls=function(){return(y._emscripten_current_thread_process_queued_calls=y.asm.emscripten_current_thread_process_queued_calls).apply(null,arguments)};
|
||||
var Kc=y._emscripten_sync_run_in_main_thread_4=function(){return(Kc=y._emscripten_sync_run_in_main_thread_4=y.asm.emscripten_sync_run_in_main_thread_4).apply(null,arguments)},fc=y._emscripten_run_in_main_runtime_thread_js=function(){return(fc=y._emscripten_run_in_main_runtime_thread_js=y.asm.emscripten_run_in_main_runtime_thread_js).apply(null,arguments)},gb=y.__emscripten_thread_free_data=function(){return(gb=y.__emscripten_thread_free_data=y.asm._emscripten_thread_free_data).apply(null,arguments)};
|
||||
y.__emscripten_thread_exit=function(){return(y.__emscripten_thread_exit=y.asm._emscripten_thread_exit).apply(null,arguments)};
|
||||
var zb=y._memalign=function(){return(zb=y._memalign=y.asm.memalign).apply(null,arguments)},Z=y._setThrew=function(){return(Z=y._setThrew=y.asm.setThrew).apply(null,arguments)},mb=y._emscripten_stack_set_limits=function(){return(mb=y._emscripten_stack_set_limits=y.asm.emscripten_stack_set_limits).apply(null,arguments)},K=y.stackSave=function(){return(K=y.stackSave=y.asm.stackSave).apply(null,arguments)},L=y.stackRestore=function(){return(L=y.stackRestore=y.asm.stackRestore).apply(null,arguments)},
|
||||
ec=y.stackAlloc=function(){return(ec=y.stackAlloc=y.asm.stackAlloc).apply(null,arguments)},Lc=y.__emscripten_main_thread_futex=246984,hb=y.__emscripten_allow_main_runtime_queued_calls=243904;function Vc(a,b,c){var d=K();try{J(a)(b,c)}catch(f){L(d);if(f!==f+0&&"longjmp"!==f)throw f;Z(1,0)}}function Oc(a,b,c){var d=K();try{return J(a)(b,c)}catch(f){L(d);if(f!==f+0&&"longjmp"!==f)throw f;Z(1,0)}}
|
||||
function ad(a,b,c,d,f,g,k,n,p){var t=K();try{J(a)(b,c,d,f,g,k,n,p)}catch(v){L(t);if(v!==v+0&&"longjmp"!==v)throw v;Z(1,0)}}function Tc(a){var b=K();try{J(a)()}catch(c){L(b);if(c!==c+0&&"longjmp"!==c)throw c;Z(1,0)}}function Nc(a,b){var c=K();try{return J(a)(b)}catch(d){L(c);if(d!==d+0&&"longjmp"!==d)throw d;Z(1,0)}}function Uc(a,b){var c=K();try{J(a)(b)}catch(d){L(c);if(d!==d+0&&"longjmp"!==d)throw d;Z(1,0)}}
|
||||
function Qc(a,b,c,d,f){var g=K();try{return J(a)(b,c,d,f)}catch(k){L(g);if(k!==k+0&&"longjmp"!==k)throw k;Z(1,0)}}function Pc(a,b,c,d){var f=K();try{return J(a)(b,c,d)}catch(g){L(f);if(g!==g+0&&"longjmp"!==g)throw g;Z(1,0)}}function Wc(a,b,c,d){var f=K();try{J(a)(b,c,d)}catch(g){L(f);if(g!==g+0&&"longjmp"!==g)throw g;Z(1,0)}}function Yc(a,b,c,d,f,g){var k=K();try{J(a)(b,c,d,f,g)}catch(n){L(k);if(n!==n+0&&"longjmp"!==n)throw n;Z(1,0)}}
|
||||
function Sc(a,b,c,d,f,g,k){var n=K();try{return J(a)(b,c,d,f,g,k)}catch(p){L(n);if(p!==p+0&&"longjmp"!==p)throw p;Z(1,0)}}function Rc(a,b,c,d,f,g){var k=K();try{return J(a)(b,c,d,f,g)}catch(n){L(k);if(n!==n+0&&"longjmp"!==n)throw n;Z(1,0)}}function Xc(a,b,c,d,f){var g=K();try{J(a)(b,c,d,f)}catch(k){L(g);if(k!==k+0&&"longjmp"!==k)throw k;Z(1,0)}}function Zc(a,b,c,d,f,g,k){var n=K();try{J(a)(b,c,d,f,g,k)}catch(p){L(n);if(p!==p+0&&"longjmp"!==p)throw p;Z(1,0)}}
|
||||
function $c(a,b,c,d,f,g,k,n){var p=K();try{J(a)(b,c,d,f,g,k,n)}catch(t){L(p);if(t!==t+0&&"longjmp"!==t)throw t;Z(1,0)}}y.keepRuntimeAlive=ya;y.PThread=M;y.PThread=M;y.wasmMemory=h;y.ExitStatus=xa;var cd;function xa(a){this.name="ExitStatus";this.message="Program terminated with exit("+a+")";this.status=a}Za=function dd(){cd||ed();cd||(Za=dd)};
|
||||
function ed(){function a(){if(!cd&&(cd=!0,y.calledRun=!0,!Ha)){B||db(Ua);la(y);if(y.onRuntimeInitialized)y.onRuntimeInitialized();if(!B){if(y.postRun)for("function"==typeof y.postRun&&(y.postRun=[y.postRun]);y.postRun.length;){var b=y.postRun.shift();Va.unshift(b)}db(Va)}}}if(!(0<H))if(B)la(y),B||db(Ua),postMessage({cmd:"loaded"});else{if(y.preRun)for("function"==typeof y.preRun&&(y.preRun=[y.preRun]);y.preRun.length;)Xa();db(Ta);0<H||(y.setStatus?(y.setStatus("Running..."),setTimeout(function(){setTimeout(function(){y.setStatus("")},
|
||||
1);a()},1)):a())}}y.run=ed;function ob(a){if(B)throw nb(a),"unwind";ya()||B||M.fa();if(!ya()){M.fa();if(y.onExit)y.onExit(a);Ha=!0}pa(a,new xa(a))}if(y.preInit)for("function"==typeof y.preInit&&(y.preInit=[y.preInit]);0<y.preInit.length;)y.preInit.pop()();B&&(noExitRuntime=!1,M.ta());ed();
|
||||
|
||||
|
||||
return skwasm.ready
|
||||
}
|
||||
);
|
||||
})();
|
||||
if (typeof exports === 'object' && typeof module === 'object')
|
||||
module.exports = skwasm;
|
||||
else if (typeof define === 'function' && define['amd'])
|
||||
define([], function() { return skwasm; });
|
||||
else if (typeof exports === 'object')
|
||||
exports["skwasm"] = skwasm;
|
||||
@ -0,0 +1 @@
|
||||
"use strict";var Module={};if(typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string"){var nodeWorkerThreads=require("worker_threads");var parentPort=nodeWorkerThreads.parentPort;parentPort.on("message",function(data){onmessage({data:data})});var nodeFS=require("fs");Object.assign(global,{self:global,require:require,Module:Module,location:{href:__filename},Worker:nodeWorkerThreads.Worker,importScripts:function(f){(0,eval)(nodeFS.readFileSync(f,"utf8"))},postMessage:function(msg){parentPort.postMessage(msg)},performance:global.performance||{now:function(){return Date.now()}}})}function threadPrintErr(){var text=Array.prototype.slice.call(arguments).join(" ");console.error(text)}function threadAlert(){var text=Array.prototype.slice.call(arguments).join(" ");postMessage({cmd:"alert",text:text,threadId:Module["_pthread_self"]()})}var err=threadPrintErr;self.alert=threadAlert;Module["instantiateWasm"]=((info,receiveInstance)=>{var instance=new WebAssembly.Instance(Module["wasmModule"],info);receiveInstance(instance);Module["wasmModule"]=null;return instance.exports});self.onmessage=(e=>{try{if(e.data.cmd==="load"){Module["wasmModule"]=e.data.wasmModule;Module["wasmMemory"]=e.data.wasmMemory;Module["buffer"]=Module["wasmMemory"].buffer;Module["ENVIRONMENT_IS_PTHREAD"]=true;if(typeof e.data.urlOrBlob==="string"){importScripts(e.data.urlOrBlob)}else{var objectUrl=URL.createObjectURL(e.data.urlOrBlob);importScripts(objectUrl);URL.revokeObjectURL(objectUrl)}skwasm(Module).then(function(instance){Module=instance})}else if(e.data.cmd==="run"){Module["__performance_now_clock_drift"]=performance.now()-e.data.time;Module["__emscripten_thread_init"](e.data.threadInfoStruct,/*isMainBrowserThread=*/0,/*isMainRuntimeThread=*/0,/*canBlock=*/1);Module["establishStackSpace"]();Module["PThread"].receiveObjectTransfer(e.data);Module["PThread"].threadInit();try{var result=Module["invokeEntryPoint"](e.data.start_routine,e.data.arg);if(Module["keepRuntimeAlive"]()){Module["PThread"].setExitStatus(result)}else{Module["__emscripten_thread_exit"](result)}}catch(ex){if(ex!="unwind"){if(ex instanceof Module["ExitStatus"]){if(Module["keepRuntimeAlive"]()){}else{Module["__emscripten_thread_exit"](ex.status)}}else{throw ex}}}}else if(e.data.cmd==="cancel"){if(Module["_pthread_self"]()){Module["__emscripten_thread_exit"](-1)}}else if(e.data.target==="setimmediate"){}else if(e.data.cmd==="processThreadQueue"){if(Module["_pthread_self"]()){Module["_emscripten_current_thread_process_queued_calls"]()}}else{err("worker.js received unknown command "+e.data.cmd);err(e.data)}}catch(ex){err("worker.js onmessage() captured an uncaught exception: "+ex);if(ex&&ex.stack)err(ex.stack);throw ex}});
|
||||
|
After Width: | Height: | Size: 917 B |
@ -0,0 +1,383 @@
|
||||
// Copyright 2014 The Flutter Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
if (!_flutter) {
|
||||
var _flutter = {};
|
||||
}
|
||||
_flutter.loader = null;
|
||||
|
||||
(function () {
|
||||
"use strict";
|
||||
|
||||
const baseUri = ensureTrailingSlash(getBaseURI());
|
||||
|
||||
function getBaseURI() {
|
||||
const base = document.querySelector("base");
|
||||
return (base && base.getAttribute("href")) || "";
|
||||
}
|
||||
|
||||
function ensureTrailingSlash(uri) {
|
||||
if (uri == "") {
|
||||
return uri;
|
||||
}
|
||||
return uri.endsWith("/") ? uri : `${uri}/`;
|
||||
}
|
||||
|
||||
/**
|
||||
* Wraps `promise` in a timeout of the given `duration` in ms.
|
||||
*
|
||||
* Resolves/rejects with whatever the original `promises` does, or rejects
|
||||
* if `promise` takes longer to complete than `duration`. In that case,
|
||||
* `debugName` is used to compose a legible error message.
|
||||
*
|
||||
* If `duration` is < 0, the original `promise` is returned unchanged.
|
||||
* @param {Promise} promise
|
||||
* @param {number} duration
|
||||
* @param {string} debugName
|
||||
* @returns {Promise} a wrapped promise.
|
||||
*/
|
||||
async function timeout(promise, duration, debugName) {
|
||||
if (duration < 0) {
|
||||
return promise;
|
||||
}
|
||||
let timeoutId;
|
||||
const _clock = new Promise((_, reject) => {
|
||||
timeoutId = setTimeout(() => {
|
||||
reject(
|
||||
new Error(
|
||||
`${debugName} took more than ${duration}ms to resolve. Moving on.`,
|
||||
{
|
||||
cause: timeout,
|
||||
}
|
||||
)
|
||||
);
|
||||
}, duration);
|
||||
});
|
||||
|
||||
return Promise.race([promise, _clock]).finally(() => {
|
||||
clearTimeout(timeoutId);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Handles the creation of a TrustedTypes `policy` that validates URLs based
|
||||
* on an (optional) incoming array of RegExes.
|
||||
*/
|
||||
class FlutterTrustedTypesPolicy {
|
||||
/**
|
||||
* Constructs the policy.
|
||||
* @param {[RegExp]} validPatterns the patterns to test URLs
|
||||
* @param {String} policyName the policy name (optional)
|
||||
*/
|
||||
constructor(validPatterns, policyName = "flutter-js") {
|
||||
const patterns = validPatterns || [
|
||||
/\.js$/,
|
||||
];
|
||||
if (window.trustedTypes) {
|
||||
this.policy = trustedTypes.createPolicy(policyName, {
|
||||
createScriptURL: function(url) {
|
||||
const parsed = new URL(url, window.location);
|
||||
const file = parsed.pathname.split("/").pop();
|
||||
const matches = patterns.some((pattern) => pattern.test(file));
|
||||
if (matches) {
|
||||
return parsed.toString();
|
||||
}
|
||||
console.error(
|
||||
"URL rejected by TrustedTypes policy",
|
||||
policyName, ":", url, "(download prevented)");
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Handles loading/reloading Flutter's service worker, if configured.
|
||||
*
|
||||
* @see: https://developers.google.com/web/fundamentals/primers/service-workers
|
||||
*/
|
||||
class FlutterServiceWorkerLoader {
|
||||
/**
|
||||
* Injects a TrustedTypesPolicy (or undefined if the feature is not supported).
|
||||
* @param {TrustedTypesPolicy | undefined} policy
|
||||
*/
|
||||
setTrustedTypesPolicy(policy) {
|
||||
this._ttPolicy = policy;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a Promise that resolves when the latest Flutter service worker,
|
||||
* configured by `settings` has been loaded and activated.
|
||||
*
|
||||
* Otherwise, the promise is rejected with an error message.
|
||||
* @param {*} settings Service worker settings
|
||||
* @returns {Promise} that resolves when the latest serviceWorker is ready.
|
||||
*/
|
||||
loadServiceWorker(settings) {
|
||||
if (settings == null) {
|
||||
// In the future, settings = null -> uninstall service worker?
|
||||
console.debug("Null serviceWorker configuration. Skipping.");
|
||||
return Promise.resolve();
|
||||
}
|
||||
if (!("serviceWorker" in navigator)) {
|
||||
let errorMessage = "Service Worker API unavailable.";
|
||||
if (!window.isSecureContext) {
|
||||
errorMessage += "\nThe current context is NOT secure."
|
||||
errorMessage += "\nRead more: https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts";
|
||||
}
|
||||
return Promise.reject(
|
||||
new Error(errorMessage)
|
||||
);
|
||||
}
|
||||
const {
|
||||
serviceWorkerVersion,
|
||||
serviceWorkerUrl = `${baseUri}flutter_service_worker.js?v=${serviceWorkerVersion}`,
|
||||
timeoutMillis = 4000,
|
||||
} = settings;
|
||||
|
||||
// Apply the TrustedTypes policy, if present.
|
||||
let url = serviceWorkerUrl;
|
||||
if (this._ttPolicy != null) {
|
||||
url = this._ttPolicy.createScriptURL(url);
|
||||
}
|
||||
|
||||
const serviceWorkerActivation = navigator.serviceWorker
|
||||
.register(url)
|
||||
.then(this._getNewServiceWorker)
|
||||
.then(this._waitForServiceWorkerActivation);
|
||||
|
||||
// Timeout race promise
|
||||
return timeout(
|
||||
serviceWorkerActivation,
|
||||
timeoutMillis,
|
||||
"prepareServiceWorker"
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the latest service worker for the given `serviceWorkerRegistrationPromise`.
|
||||
*
|
||||
* This might return the current service worker, if there's no new service worker
|
||||
* awaiting to be installed/updated.
|
||||
*
|
||||
* @param {Promise<ServiceWorkerRegistration>} serviceWorkerRegistrationPromise
|
||||
* @returns {Promise<ServiceWorker>}
|
||||
*/
|
||||
async _getNewServiceWorker(serviceWorkerRegistrationPromise) {
|
||||
const reg = await serviceWorkerRegistrationPromise;
|
||||
|
||||
if (!reg.active && (reg.installing || reg.waiting)) {
|
||||
// No active web worker and we have installed or are installing
|
||||
// one for the first time. Simply wait for it to activate.
|
||||
console.debug("Installing/Activating first service worker.");
|
||||
return reg.installing || reg.waiting;
|
||||
} else if (!reg.active.scriptURL.endsWith(serviceWorkerVersion)) {
|
||||
// When the app updates the serviceWorkerVersion changes, so we
|
||||
// need to ask the service worker to update.
|
||||
return reg.update().then((newReg) => {
|
||||
console.debug("Updating service worker.");
|
||||
return newReg.installing || newReg.waiting || newReg.active;
|
||||
});
|
||||
} else {
|
||||
console.debug("Loading from existing service worker.");
|
||||
return reg.active;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a Promise that resolves when the `latestServiceWorker` changes its
|
||||
* state to "activated".
|
||||
*
|
||||
* @param {Promise<ServiceWorker>} latestServiceWorkerPromise
|
||||
* @returns {Promise<void>}
|
||||
*/
|
||||
async _waitForServiceWorkerActivation(latestServiceWorkerPromise) {
|
||||
const serviceWorker = await latestServiceWorkerPromise;
|
||||
|
||||
if (!serviceWorker || serviceWorker.state == "activated") {
|
||||
if (!serviceWorker) {
|
||||
return Promise.reject(
|
||||
new Error("Cannot activate a null service worker!")
|
||||
);
|
||||
} else {
|
||||
console.debug("Service worker already active.");
|
||||
return Promise.resolve();
|
||||
}
|
||||
}
|
||||
return new Promise((resolve, _) => {
|
||||
serviceWorker.addEventListener("statechange", () => {
|
||||
if (serviceWorker.state == "activated") {
|
||||
console.debug("Activated new service worker.");
|
||||
resolve();
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Handles injecting the main Flutter web entrypoint (main.dart.js), and notifying
|
||||
* the user when Flutter is ready, through `didCreateEngineInitializer`.
|
||||
*
|
||||
* @see https://docs.flutter.dev/development/platform-integration/web/initialization
|
||||
*/
|
||||
class FlutterEntrypointLoader {
|
||||
/**
|
||||
* Creates a FlutterEntrypointLoader.
|
||||
*/
|
||||
constructor() {
|
||||
// Watchdog to prevent injecting the main entrypoint multiple times.
|
||||
this._scriptLoaded = false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Injects a TrustedTypesPolicy (or undefined if the feature is not supported).
|
||||
* @param {TrustedTypesPolicy | undefined} policy
|
||||
*/
|
||||
setTrustedTypesPolicy(policy) {
|
||||
this._ttPolicy = policy;
|
||||
}
|
||||
|
||||
/**
|
||||
* Loads flutter main entrypoint, specified by `entrypointUrl`, and calls a
|
||||
* user-specified `onEntrypointLoaded` callback with an EngineInitializer
|
||||
* object when it's done.
|
||||
*
|
||||
* @param {*} options
|
||||
* @returns {Promise | undefined} that will eventually resolve with an
|
||||
* EngineInitializer, or will be rejected with the error caused by the loader.
|
||||
* Returns undefined when an `onEntrypointLoaded` callback is supplied in `options`.
|
||||
*/
|
||||
async loadEntrypoint(options) {
|
||||
const { entrypointUrl = `${baseUri}main.dart.js`, onEntrypointLoaded } =
|
||||
options || {};
|
||||
|
||||
return this._loadEntrypoint(entrypointUrl, onEntrypointLoaded);
|
||||
}
|
||||
|
||||
/**
|
||||
* Resolves the promise created by loadEntrypoint, and calls the `onEntrypointLoaded`
|
||||
* function supplied by the user (if needed).
|
||||
*
|
||||
* Called by Flutter through `_flutter.loader.didCreateEngineInitializer` method,
|
||||
* which is bound to the correct instance of the FlutterEntrypointLoader by
|
||||
* the FlutterLoader object.
|
||||
*
|
||||
* @param {Function} engineInitializer @see https://github.com/flutter/engine/blob/main/lib/web_ui/lib/src/engine/js_interop/js_loader.dart#L42
|
||||
*/
|
||||
didCreateEngineInitializer(engineInitializer) {
|
||||
if (typeof this._didCreateEngineInitializerResolve === "function") {
|
||||
this._didCreateEngineInitializerResolve(engineInitializer);
|
||||
// Remove the resolver after the first time, so Flutter Web can hot restart.
|
||||
this._didCreateEngineInitializerResolve = null;
|
||||
// Make the engine revert to "auto" initialization on hot restart.
|
||||
delete _flutter.loader.didCreateEngineInitializer;
|
||||
}
|
||||
if (typeof this._onEntrypointLoaded === "function") {
|
||||
this._onEntrypointLoaded(engineInitializer);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Injects a script tag into the DOM, and configures this loader to be able to
|
||||
* handle the "entrypoint loaded" notifications received from Flutter web.
|
||||
*
|
||||
* @param {string} entrypointUrl the URL of the script that will initialize
|
||||
* Flutter.
|
||||
* @param {Function} onEntrypointLoaded a callback that will be called when
|
||||
* Flutter web notifies this object that the entrypoint is
|
||||
* loaded.
|
||||
* @returns {Promise | undefined} a Promise that resolves when the entrypoint
|
||||
* is loaded, or undefined if `onEntrypointLoaded`
|
||||
* is a function.
|
||||
*/
|
||||
_loadEntrypoint(entrypointUrl, onEntrypointLoaded) {
|
||||
const useCallback = typeof onEntrypointLoaded === "function";
|
||||
|
||||
if (!this._scriptLoaded) {
|
||||
this._scriptLoaded = true;
|
||||
const scriptTag = this._createScriptTag(entrypointUrl);
|
||||
if (useCallback) {
|
||||
// Just inject the script tag, and return nothing; Flutter will call
|
||||
// `didCreateEngineInitializer` when it's done.
|
||||
console.debug("Injecting <script> tag. Using callback.");
|
||||
this._onEntrypointLoaded = onEntrypointLoaded;
|
||||
document.body.append(scriptTag);
|
||||
} else {
|
||||
// Inject the script tag and return a promise that will get resolved
|
||||
// with the EngineInitializer object from Flutter when it calls
|
||||
// `didCreateEngineInitializer` later.
|
||||
return new Promise((resolve, reject) => {
|
||||
console.debug(
|
||||
"Injecting <script> tag. Using Promises. Use the callback approach instead!"
|
||||
);
|
||||
this._didCreateEngineInitializerResolve = resolve;
|
||||
scriptTag.addEventListener("error", reject);
|
||||
document.body.append(scriptTag);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a script tag for the given URL.
|
||||
* @param {string} url
|
||||
* @returns {HTMLScriptElement}
|
||||
*/
|
||||
_createScriptTag(url) {
|
||||
const scriptTag = document.createElement("script");
|
||||
scriptTag.type = "application/javascript";
|
||||
// Apply TrustedTypes validation, if available.
|
||||
let trustedUrl = url;
|
||||
if (this._ttPolicy != null) {
|
||||
trustedUrl = this._ttPolicy.createScriptURL(url);
|
||||
}
|
||||
scriptTag.src = trustedUrl;
|
||||
return scriptTag;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* The public interface of _flutter.loader. Exposes two methods:
|
||||
* * loadEntrypoint (which coordinates the default Flutter web loading procedure)
|
||||
* * didCreateEngineInitializer (which is called by Flutter to notify that its
|
||||
* Engine is ready to be initialized)
|
||||
*/
|
||||
class FlutterLoader {
|
||||
/**
|
||||
* Initializes the Flutter web app.
|
||||
* @param {*} options
|
||||
* @returns {Promise?} a (Deprecated) Promise that will eventually resolve
|
||||
* with an EngineInitializer, or will be rejected with
|
||||
* any error caused by the loader. Or Null, if the user
|
||||
* supplies an `onEntrypointLoaded` Function as an option.
|
||||
*/
|
||||
async loadEntrypoint(options) {
|
||||
const { serviceWorker, ...entrypoint } = options || {};
|
||||
|
||||
// A Trusted Types policy that is going to be used by the loader.
|
||||
const flutterTT = new FlutterTrustedTypesPolicy();
|
||||
|
||||
// The FlutterServiceWorkerLoader instance could be injected as a dependency
|
||||
// (and dynamically imported from a module if not present).
|
||||
const serviceWorkerLoader = new FlutterServiceWorkerLoader();
|
||||
serviceWorkerLoader.setTrustedTypesPolicy(flutterTT.policy);
|
||||
await serviceWorkerLoader.loadServiceWorker(serviceWorker).catch(e => {
|
||||
// Regardless of what happens with the injection of the SW, the show must go on
|
||||
console.warn("Exception while loading service worker:", e);
|
||||
});
|
||||
|
||||
// The FlutterEntrypointLoader instance could be injected as a dependency
|
||||
// (and dynamically imported from a module if not present).
|
||||
const entrypointLoader = new FlutterEntrypointLoader();
|
||||
entrypointLoader.setTrustedTypesPolicy(flutterTT.policy);
|
||||
// Install the `didCreateEngineInitializer` listener where Flutter web expects it to be.
|
||||
this.didCreateEngineInitializer =
|
||||
entrypointLoader.didCreateEngineInitializer.bind(entrypointLoader);
|
||||
return entrypointLoader.loadEntrypoint(entrypoint);
|
||||
}
|
||||
}
|
||||
|
||||
_flutter.loader = new FlutterLoader();
|
||||
})();
|
||||
@ -0,0 +1,217 @@
|
||||
'use strict';
|
||||
const MANIFEST = 'flutter-app-manifest';
|
||||
const TEMP = 'flutter-temp-cache';
|
||||
const CACHE_NAME = 'flutter-app-cache';
|
||||
|
||||
const RESOURCES = {"flutter.js": "6fef97aeca90b426343ba6c5c9dc5d4a",
|
||||
"canvaskit/canvaskit.js": "76f7d822f42397160c5dfc69cbc9b2de",
|
||||
"canvaskit/canvaskit.wasm": "f48eaf57cada79163ec6dec7929486ea",
|
||||
"canvaskit/skwasm.worker.js": "19659053a277272607529ef87acf9d8a",
|
||||
"canvaskit/skwasm.wasm": "6711032e17bf49924b2b001cef0d3ea3",
|
||||
"canvaskit/chromium/canvaskit.js": "8c8392ce4a4364cbb240aa09b5652e05",
|
||||
"canvaskit/chromium/canvaskit.wasm": "fc18c3010856029414b70cae1afc5cd9",
|
||||
"canvaskit/skwasm.js": "1df4d741f441fa1a4d10530ced463ef8",
|
||||
"assets/assets/shaders/ui_glitch.frag": "97b58db3bd4a0fd72623cc29af45f190",
|
||||
"assets/assets/shaders/orb_shader.frag": "7f53dc1f64cf4ef8e12c5171dcd7efc5",
|
||||
"assets/assets/fonts/Exo-Medium.ttf": "822a35349a144a97433b82d94df61d1a",
|
||||
"assets/assets/fonts/OFL.txt": "e542a680112942b035ac18d476288952",
|
||||
"assets/assets/fonts/Exo-Bold.ttf": "a939d1d0769c88bde068c8570e5f3f22",
|
||||
"assets/assets/images/bg-light-receive.png": "2f6ba99f8eea020027e10b9778b666ad",
|
||||
"assets/assets/images/bg-base.jpg": "3c258b33e7a71dee7ae8e3c4e83dd04f",
|
||||
"assets/assets/images/button-start-hover.png": "39d7ee03962ad766b66be34336343e75",
|
||||
"assets/assets/images/particle-wave.png": "d6b73c1346b8ffd48de351cfab3daaad",
|
||||
"assets/assets/images/fg-light-emit.png": "d398c8fab13becd0da8995be2a3c7799",
|
||||
"assets/assets/images/mg-light-emit.png": "076ed5490a67d7d300832d86778adfc0",
|
||||
"assets/assets/images/button-start.png": "748701e42abc14ebc65963234d9a7b6a",
|
||||
"assets/assets/images/select-left.png": "b3fbaf9a7b1b72c26880c5bdfde6e33c",
|
||||
"assets/assets/images/mg-light-receive.png": "6e0e1018b6cf20f4747f5c4ef3e6f58d",
|
||||
"assets/assets/images/mg-base.png": "deba0329701a59c12f8904235539de19",
|
||||
"assets/assets/images/fg-base.png": "9742f524c248f9795e59132bda584982",
|
||||
"assets/assets/images/fg-light-receive.png": "9981f29fa2d3814768cbf9695eb7b861",
|
||||
"assets/assets/images/select-right.png": "a6c979b3eae49cde6c7d5797dc357034",
|
||||
"assets/shaders/ink_sparkle.frag": "f8b80e740d33eb157090be4e995febdf",
|
||||
"assets/fonts/MaterialIcons-Regular.otf": "62ec8220af1fb03e1c20cfa38781e17e",
|
||||
"assets/NOTICES": "3b997f8ca0833bdb9abc30a695c53b04",
|
||||
"assets/packages/cupertino_icons/assets/CupertinoIcons.ttf": "57d849d738900cfd590e9adc7e208250",
|
||||
"assets/FontManifest.json": "06438dbc68e4dc4c7665d2e03e14e76d",
|
||||
"assets/AssetManifest.json": "183c6882211bd7760ebf1ff3cbfcd847",
|
||||
"assets/AssetManifest.smcbin": "a6451c61a133950f6070166a1e3948bf",
|
||||
"index.html": "6e98f718316a830b5f0abe0753a6dc74",
|
||||
"/": "6e98f718316a830b5f0abe0753a6dc74",
|
||||
"favicon.png": "5dcef449791fa27946b3d35ad8803796",
|
||||
"version.json": "408e32657aac2b0495551d3fc84cc2ff",
|
||||
"icons/Icon-maskable-192.png": "c457ef57daa1d16f64b27b786ec2ea3c",
|
||||
"icons/Icon-192.png": "ac9a721a12bbc803b44f645561ecb1e1",
|
||||
"icons/Icon-512.png": "96e752610906ba2a93c65f8abe1645f1",
|
||||
"icons/Icon-maskable-512.png": "301a7604d45b3e739efc881eb04896ea",
|
||||
"main.dart.js": "d0700a18f3ed4381918f8bf50e69b0ed",
|
||||
"manifest.json": "1d803aa0f8e0fa725372b9dc1a69c19c"};
|
||||
// The application shell files that are downloaded before a service worker can
|
||||
// start.
|
||||
const CORE = ["main.dart.js",
|
||||
"index.html",
|
||||
"assets/AssetManifest.json",
|
||||
"assets/FontManifest.json"];
|
||||
|
||||
// During install, the TEMP cache is populated with the application shell files.
|
||||
self.addEventListener("install", (event) => {
|
||||
self.skipWaiting();
|
||||
return event.waitUntil(
|
||||
caches.open(TEMP).then((cache) => {
|
||||
return cache.addAll(
|
||||
CORE.map((value) => new Request(value, {'cache': 'reload'})));
|
||||
})
|
||||
);
|
||||
});
|
||||
// During activate, the cache is populated with the temp files downloaded in
|
||||
// install. If this service worker is upgrading from one with a saved
|
||||
// MANIFEST, then use this to retain unchanged resource files.
|
||||
self.addEventListener("activate", function(event) {
|
||||
return event.waitUntil(async function() {
|
||||
try {
|
||||
var contentCache = await caches.open(CACHE_NAME);
|
||||
var tempCache = await caches.open(TEMP);
|
||||
var manifestCache = await caches.open(MANIFEST);
|
||||
var manifest = await manifestCache.match('manifest');
|
||||
// When there is no prior manifest, clear the entire cache.
|
||||
if (!manifest) {
|
||||
await caches.delete(CACHE_NAME);
|
||||
contentCache = await caches.open(CACHE_NAME);
|
||||
for (var request of await tempCache.keys()) {
|
||||
var response = await tempCache.match(request);
|
||||
await contentCache.put(request, response);
|
||||
}
|
||||
await caches.delete(TEMP);
|
||||
// Save the manifest to make future upgrades efficient.
|
||||
await manifestCache.put('manifest', new Response(JSON.stringify(RESOURCES)));
|
||||
// Claim client to enable caching on first launch
|
||||
self.clients.claim();
|
||||
return;
|
||||
}
|
||||
var oldManifest = await manifest.json();
|
||||
var origin = self.location.origin;
|
||||
for (var request of await contentCache.keys()) {
|
||||
var key = request.url.substring(origin.length + 1);
|
||||
if (key == "") {
|
||||
key = "/";
|
||||
}
|
||||
// If a resource from the old manifest is not in the new cache, or if
|
||||
// the MD5 sum has changed, delete it. Otherwise the resource is left
|
||||
// in the cache and can be reused by the new service worker.
|
||||
if (!RESOURCES[key] || RESOURCES[key] != oldManifest[key]) {
|
||||
await contentCache.delete(request);
|
||||
}
|
||||
}
|
||||
// Populate the cache with the app shell TEMP files, potentially overwriting
|
||||
// cache files preserved above.
|
||||
for (var request of await tempCache.keys()) {
|
||||
var response = await tempCache.match(request);
|
||||
await contentCache.put(request, response);
|
||||
}
|
||||
await caches.delete(TEMP);
|
||||
// Save the manifest to make future upgrades efficient.
|
||||
await manifestCache.put('manifest', new Response(JSON.stringify(RESOURCES)));
|
||||
// Claim client to enable caching on first launch
|
||||
self.clients.claim();
|
||||
return;
|
||||
} catch (err) {
|
||||
// On an unhandled exception the state of the cache cannot be guaranteed.
|
||||
console.error('Failed to upgrade service worker: ' + err);
|
||||
await caches.delete(CACHE_NAME);
|
||||
await caches.delete(TEMP);
|
||||
await caches.delete(MANIFEST);
|
||||
}
|
||||
}());
|
||||
});
|
||||
// The fetch handler redirects requests for RESOURCE files to the service
|
||||
// worker cache.
|
||||
self.addEventListener("fetch", (event) => {
|
||||
if (event.request.method !== 'GET') {
|
||||
return;
|
||||
}
|
||||
var origin = self.location.origin;
|
||||
var key = event.request.url.substring(origin.length + 1);
|
||||
// Redirect URLs to the index.html
|
||||
if (key.indexOf('?v=') != -1) {
|
||||
key = key.split('?v=')[0];
|
||||
}
|
||||
if (event.request.url == origin || event.request.url.startsWith(origin + '/#') || key == '') {
|
||||
key = '/';
|
||||
}
|
||||
// If the URL is not the RESOURCE list then return to signal that the
|
||||
// browser should take over.
|
||||
if (!RESOURCES[key]) {
|
||||
return;
|
||||
}
|
||||
// If the URL is the index.html, perform an online-first request.
|
||||
if (key == '/') {
|
||||
return onlineFirst(event);
|
||||
}
|
||||
event.respondWith(caches.open(CACHE_NAME)
|
||||
.then((cache) => {
|
||||
return cache.match(event.request).then((response) => {
|
||||
// Either respond with the cached resource, or perform a fetch and
|
||||
// lazily populate the cache only if the resource was successfully fetched.
|
||||
return response || fetch(event.request).then((response) => {
|
||||
if (response && Boolean(response.ok)) {
|
||||
cache.put(event.request, response.clone());
|
||||
}
|
||||
return response;
|
||||
});
|
||||
})
|
||||
})
|
||||
);
|
||||
});
|
||||
self.addEventListener('message', (event) => {
|
||||
// SkipWaiting can be used to immediately activate a waiting service worker.
|
||||
// This will also require a page refresh triggered by the main worker.
|
||||
if (event.data === 'skipWaiting') {
|
||||
self.skipWaiting();
|
||||
return;
|
||||
}
|
||||
if (event.data === 'downloadOffline') {
|
||||
downloadOffline();
|
||||
return;
|
||||
}
|
||||
});
|
||||
// Download offline will check the RESOURCES for all files not in the cache
|
||||
// and populate them.
|
||||
async function downloadOffline() {
|
||||
var resources = [];
|
||||
var contentCache = await caches.open(CACHE_NAME);
|
||||
var currentContent = {};
|
||||
for (var request of await contentCache.keys()) {
|
||||
var key = request.url.substring(origin.length + 1);
|
||||
if (key == "") {
|
||||
key = "/";
|
||||
}
|
||||
currentContent[key] = true;
|
||||
}
|
||||
for (var resourceKey of Object.keys(RESOURCES)) {
|
||||
if (!currentContent[resourceKey]) {
|
||||
resources.push(resourceKey);
|
||||
}
|
||||
}
|
||||
return contentCache.addAll(resources);
|
||||
}
|
||||
// Attempt to download the resource online before falling back to
|
||||
// the offline cache.
|
||||
function onlineFirst(event) {
|
||||
return event.respondWith(
|
||||
fetch(event.request).then((response) => {
|
||||
return caches.open(CACHE_NAME).then((cache) => {
|
||||
cache.put(event.request, response.clone());
|
||||
return response;
|
||||
});
|
||||
}).catch((error) => {
|
||||
return caches.open(CACHE_NAME).then((cache) => {
|
||||
return cache.match(event.request).then((response) => {
|
||||
if (response != null) {
|
||||
return response;
|
||||
}
|
||||
throw error;
|
||||
});
|
||||
});
|
||||
})
|
||||
);
|
||||
}
|
||||
|
After Width: | Height: | Size: 5.2 KiB |
|
After Width: | Height: | Size: 8.1 KiB |
|
After Width: | Height: | Size: 5.5 KiB |
|
After Width: | Height: | Size: 20 KiB |
@ -0,0 +1,61 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<!--
|
||||
If you are serving your web app in a path other than the root, change the
|
||||
href value below to reflect the base path you are serving from.
|
||||
|
||||
The path provided below has to start and end with a slash "/" in order for
|
||||
it to work correctly.
|
||||
|
||||
For more details:
|
||||
* https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base
|
||||
|
||||
This is a placeholder for base href that will be replaced by the value of
|
||||
the `--base-href` argument provided to `flutter build`.
|
||||
-->
|
||||
<base href="/samples/web/next_gen_ui_demo/">
|
||||
|
||||
<meta charset="UTF-8">
|
||||
<meta content="IE=Edge" http-equiv="X-UA-Compatible">
|
||||
<meta name="description" content="A new Flutter project.">
|
||||
|
||||
<!-- iOS meta tags & icons -->
|
||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||
<meta name="apple-mobile-web-app-status-bar-style" content="black">
|
||||
<meta name="apple-mobile-web-app-title" content="next_gen_ui_demo">
|
||||
<link rel="apple-touch-icon" href="icons/Icon-192.png">
|
||||
|
||||
<!-- Favicon -->
|
||||
<link rel="icon" type="image/png" href="favicon.png"/>
|
||||
|
||||
<title>next_gen_ui_demo</title>
|
||||
<link rel="manifest" href="manifest.json">
|
||||
|
||||
<script>
|
||||
// The value below is injected by flutter build, do not touch.
|
||||
var serviceWorkerVersion = "3027562144";
|
||||
</script>
|
||||
<!-- This script adds the flutter initialization JS code -->
|
||||
<script src="flutter.js" defer></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
window.addEventListener('load', function (ev) {
|
||||
// Download main.dart.js
|
||||
_flutter.loader.loadEntrypoint({
|
||||
serviceWorker: {
|
||||
serviceWorkerVersion: serviceWorkerVersion,
|
||||
},
|
||||
onEntrypointLoaded: function (engineInitializer) {
|
||||
engineInitializer.initializeEngine({
|
||||
renderer: 'canvaskit'
|
||||
}).then(function (appRunner) {
|
||||
appRunner.runApp();
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,35 @@
|
||||
{
|
||||
"name": "next_gen_ui_demo",
|
||||
"short_name": "next_gen_ui_demo",
|
||||
"start_url": ".",
|
||||
"display": "standalone",
|
||||
"background_color": "#0175C2",
|
||||
"theme_color": "#0175C2",
|
||||
"description": "A new Flutter project.",
|
||||
"orientation": "portrait-primary",
|
||||
"prefer_related_applications": false,
|
||||
"icons": [
|
||||
{
|
||||
"src": "icons/Icon-192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png"
|
||||
},
|
||||
{
|
||||
"src": "icons/Icon-512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png"
|
||||
},
|
||||
{
|
||||
"src": "icons/Icon-maskable-192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png",
|
||||
"purpose": "maskable"
|
||||
},
|
||||
{
|
||||
"src": "icons/Icon-maskable-512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png",
|
||||
"purpose": "maskable"
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -0,0 +1 @@
|
||||
{"app_name":"next_gen_ui_demo","version":"0.1.0","package_name":"next_gen_ui_demo"}
|
||||
@ -1 +1 @@
|
||||
95c3e2b9852183996d6553a754760307
|
||||
d984d57b1015afdbafb53ca23e44106e
|
||||
@ -1 +1 @@
|
||||
9563d0eff0708de363c4381398f5e872
|
||||
d2d6162935309dce9654cc799c96b8ad
|
||||
@ -1 +1 @@
|
||||
9563d0eff0708de363c4381398f5e872
|
||||
d2d6162935309dce9654cc799c96b8ad
|
||||
@ -1 +1 @@
|
||||
95c3e2b9852183996d6553a754760307
|
||||
d984d57b1015afdbafb53ca23e44106e
|
||||