feat: dukung status PKL/Magang (pkl) dari e-jurnal — validasi sync + pkl; rekap mingguan/bulanan kolom P; export Excel kolom P; warna selaras e-jurnal (S=amber, P=violet)

This commit is contained in:
Novy San87
2026-08-22 20:10:34 +07:00
parent f7adecc22c
commit 25da284ca2
53 changed files with 201478 additions and 251 deletions
@@ -69,7 +69,7 @@ class AttendanceSyncController extends Controller
'attendances.*.source_student_id' => 'required|integer',
'attendances.*.date' => 'required|date',
'attendances.*.lesson_hour' => 'required|integer|min:1|max:10',
'attendances.*.status' => 'required|in:hadir,sakit,izin,alpha',
'attendances.*.status' => 'required|in:hadir,sakit,izin,alpha,pkl',
'attendances.*.notes' => 'nullable|string|max:255',
]);
@@ -110,6 +110,7 @@ class AttendanceSyncController extends Controller
'sick' => 'sakit',
'permission' => 'izin',
'absent' => 'alpha',
'pkl' => 'pkl', // PKL/Magang industri (e-jurnal)
];
$localStatus = $statusMap[$item['status']] ?? $item['status'];
+38 -21
View File
@@ -414,6 +414,7 @@ class AttendanceController extends Controller
$alpha = round($alphaCount / 10, 1);
$sakit = $studentAtt->where('status', 'sakit')->count() > 0 ? 1 : 0;
$izin = $studentAtt->where('status', 'izin')->count() > 0 ? 1 : 0;
$pkl = $studentAtt->where('status', 'pkl')->count() > 0 ? 1 : 0;
$terlambat = $studentAtt->where('status', 'terlambat')->count() > 0 ? 1 : 0;
$total = $studentAtt->count();
@@ -423,6 +424,7 @@ class AttendanceController extends Controller
'alpha' => $alpha,
'sakit' => $sakit,
'izin' => $izin,
'pkl' => $pkl,
'terlambat' => $terlambat,
'total' => $studentAtt->count(),
];
@@ -433,7 +435,7 @@ class AttendanceController extends Controller
// Hitung total per siswa selama seminggu
$totals = [];
foreach ($students as $student) {
$totals[$student->id] = ['hadir' => 0, 'sakit' => 0, 'izin' => 0, 'alpha' => 0, 'terlambat' => 0];
$totals[$student->id] = ['hadir' => 0, 'sakit' => 0, 'izin' => 0, 'alpha' => 0, 'pkl' => 0, 'terlambat' => 0];
}
foreach ($recap as $row) {
foreach ($row['students'] as $sid => $s) {
@@ -441,6 +443,7 @@ class AttendanceController extends Controller
$totals[$sid]['sakit'] += $s['sakit'];
$totals[$sid]['izin'] += $s['izin'];
$totals[$sid]['alpha'] += $s['alpha'];
$totals[$sid]['pkl'] += $s['pkl'];
$totals[$sid]['terlambat'] += $s['terlambat'];
}
}
@@ -503,7 +506,7 @@ class AttendanceController extends Controller
$row = ['label' => $week['label'], 'start' => $week['start'], 'end' => $week['end'], 'students' => []];
foreach ($students as $student) {
$hCount = 0; $sCount = 0; $iCount = 0; $aCount = 0; $tCount = 0; $totalDaysForStudent = 0;
$hCount = 0; $sCount = 0; $iCount = 0; $aCount = 0; $pCount = 0; $tCount = 0; $totalDaysForStudent = 0;
foreach ($datesInWeek as $dateStr) {
$dayAtt = $weekByDay->get($dateStr, collect())->where('student_id', $student->id);
@@ -513,12 +516,14 @@ class AttendanceController extends Controller
$hasHadir = $dayAtt->where('status', 'hadir')->isNotEmpty();
$hasSakit = $dayAtt->where('status', 'sakit')->isNotEmpty();
$hasIzin = $dayAtt->where('status', 'izin')->isNotEmpty();
$hasPkl = $dayAtt->where('status', 'pkl')->isNotEmpty();
$hasAlpha = $dayAtt->where('status', 'alpha')->isNotEmpty();
$hasTerlambat = $dayAtt->where('status', 'terlambat')->isNotEmpty();
if ($hasHadir) $hCount++;
if ($hasSakit) $sCount++;
if ($hasIzin) $iCount++;
if ($hasPkl) $pCount++;
if ($hasTerlambat) $tCount++;
// Alpha proporsional: jumlah jam alpha / 10 (max jam sekolah per hari)
@@ -532,6 +537,7 @@ class AttendanceController extends Controller
'alpha' => $aCount,
'sakit' => $sCount,
'izin' => $iCount,
'pkl' => $pCount,
'terlambat' => $tCount,
'total' => $totalDaysForStudent,
];
@@ -542,7 +548,7 @@ class AttendanceController extends Controller
// Hitung total per siswa selama sebulan
$totals = [];
foreach ($students as $student) {
$totals[$student->id] = ['hadir' => 0, 'sakit' => 0, 'izin' => 0, 'alpha' => 0, 'terlambat' => 0];
$totals[$student->id] = ['hadir' => 0, 'sakit' => 0, 'izin' => 0, 'alpha' => 0, 'pkl' => 0, 'terlambat' => 0];
}
foreach ($recap as $row) {
foreach ($row['students'] as $sid => $s) {
@@ -550,6 +556,7 @@ class AttendanceController extends Controller
$totals[$sid]['sakit'] += $s['sakit'];
$totals[$sid]['izin'] += $s['izin'];
$totals[$sid]['alpha'] += $s['alpha'];
$totals[$sid]['pkl'] += $s['pkl'];
$totals[$sid]['terlambat'] += $s['terlambat'];
}
}
@@ -616,7 +623,7 @@ class AttendanceController extends Controller
$title .= ' (' . \Carbon\Carbon::parse($data['start'])->format('d/m/Y') . ' - ' . \Carbon\Carbon::parse($data['end'])->format('d/m/Y') . ')';
$sheet->setCellValue('A1', $title);
$totalCols = 1 + $data['recap']->count() * 4 + 4; // +4 untuk kolom TOTAL
$totalCols = 1 + $data['recap']->count() * 5 + 5; // +5 untuk kolom TOTAL
$sheet->mergeCells('A1:' . $this->getColLetter($totalCols - 1) . '1');
$sheet->getStyle('A1')->getFont()->setBold(true)->setSize(14);
@@ -627,15 +634,15 @@ class AttendanceController extends Controller
foreach ($data['recap'] as $row) {
$cell = $this->getColLetter($col) . '2';
$sheet->setCellValue($cell, $row['label'] . ' ' . \Carbon\Carbon::parse($row['date'])->format('d/m'));
$endCell = $this->getColLetter($col + 3) . '2';
$endCell = $this->getColLetter($col + 4) . '2';
$sheet->mergeCells($cell . ':' . $endCell);
$sheet->getStyle($cell)->getFont()->setBold(true);
$col += 4;
$col += 5;
}
// Kolom TOTAL
$totalCell = $this->getColLetter($col) . '2';
$sheet->setCellValue($totalCell, 'TOTAL');
$sheet->mergeCells($totalCell . ':' . $this->getColLetter($col + 3) . '2');
$sheet->mergeCells($totalCell . ':' . $this->getColLetter($col + 4) . '2');
$sheet->getStyle($totalCell)->getFont()->setBold(true);
// Header row 3: H, S, I, A per day + TOTAL
@@ -646,16 +653,19 @@ class AttendanceController extends Controller
$sheet->setCellValue($this->getColLetter($col + 1) . '3', 'S');
$sheet->setCellValue($this->getColLetter($col + 2) . '3', 'I');
$sheet->setCellValue($this->getColLetter($col + 3) . '3', 'A');
foreach (range(0, 3) as $i) {
$sheet->setCellValue($this->getColLetter($col + 4) . '3', 'P');
$sheet->setCellValue($this->getColLetter($col + 4) . '3', 'P');
foreach (range(0, 4) as $i) {
$sheet->getStyle($this->getColLetter($col + $i) . '3')->getFont()->setBold(true);
}
$col += 4;
$col += 5;
}
// Sub-header TOTAL
$sheet->setCellValue($this->getColLetter($col) . '3', 'H');
$sheet->setCellValue($this->getColLetter($col + 1) . '3', 'S');
$sheet->setCellValue($this->getColLetter($col + 2) . '3', 'I');
$sheet->setCellValue($this->getColLetter($col + 3) . '3', 'A');
$sheet->setCellValue($this->getColLetter($col + 4) . '3', 'P');
foreach (range(0, 3) as $i) {
$sheet->getStyle($this->getColLetter($col + $i) . '3')->getFont()->setBold(true);
}
@@ -672,19 +682,21 @@ class AttendanceController extends Controller
$sheet->setCellValue($this->getColLetter($col + 1) . $rowIdx, $s['sakit']);
$sheet->setCellValue($this->getColLetter($col + 2) . $rowIdx, $s['izin']);
$sheet->setCellValue($this->getColLetter($col + 3) . $rowIdx, $s['alpha']);
$sheet->setCellValue($this->getColLetter($col + 4) . $rowIdx, $s['pkl']);
} else {
foreach (range(0, 3) as $i) {
foreach (range(0, 4) as $i) {
$sheet->setCellValue($this->getColLetter($col + $i) . $rowIdx, '-');
}
}
$col += 4;
$col += 5;
}
// TOTAL per siswa
$t = $data['totals'][$student->id] ?? ['hadir' => 0, 'sakit' => 0, 'izin' => 0, 'alpha' => 0];
$t = $data['totals'][$student->id] ?? ['hadir' => 0, 'sakit' => 0, 'izin' => 0, 'alpha' => 0, 'pkl' => 0];
$sheet->setCellValue($this->getColLetter($col) . $rowIdx, $t['hadir']);
$sheet->setCellValue($this->getColLetter($col + 1) . $rowIdx, $t['sakit']);
$sheet->setCellValue($this->getColLetter($col + 2) . $rowIdx, $t['izin']);
$sheet->setCellValue($this->getColLetter($col + 3) . $rowIdx, $t['alpha']);
$sheet->setCellValue($this->getColLetter($col + 4) . $rowIdx, $t['pkl']);
$rowIdx++;
}
@@ -728,7 +740,7 @@ class AttendanceController extends Controller
$title .= ' (' . \Carbon\Carbon::create()->month($data['month'])->format('F') . ' ' . $data['year'] . ')';
$sheet->setCellValue('A1', $title);
$totalCols = 1 + $data['recap']->count() * 4 + 4; // +4 untuk kolom TOTAL
$totalCols = 1 + $data['recap']->count() * 5 + 5; // +5 untuk kolom TOTAL
$sheet->mergeCells('A1:' . $this->getColLetter($totalCols - 1) . '1');
$sheet->getStyle('A1')->getFont()->setBold(true)->setSize(14);
@@ -739,15 +751,15 @@ class AttendanceController extends Controller
foreach ($data['recap'] as $row) {
$cell = $this->getColLetter($col) . '2';
$sheet->setCellValue($cell, $row['label'] . ' ' . \Carbon\Carbon::parse($row['start'])->format('d/m') . '-' . \Carbon\Carbon::parse($row['end'])->format('d/m'));
$endCell = $this->getColLetter($col + 3) . '2';
$endCell = $this->getColLetter($col + 4) . '2';
$sheet->mergeCells($cell . ':' . $endCell);
$sheet->getStyle($cell)->getFont()->setBold(true);
$col += 4;
$col += 5;
}
// Kolom TOTAL
$totalCell = $this->getColLetter($col) . '2';
$sheet->setCellValue($totalCell, 'TOTAL');
$sheet->mergeCells($totalCell . ':' . $this->getColLetter($col + 3) . '2');
$sheet->mergeCells($totalCell . ':' . $this->getColLetter($col + 4) . '2');
$sheet->getStyle($totalCell)->getFont()->setBold(true);
// Header row 3: H, S, I, A per week + TOTAL
@@ -758,16 +770,19 @@ class AttendanceController extends Controller
$sheet->setCellValue($this->getColLetter($col + 1) . '3', 'S');
$sheet->setCellValue($this->getColLetter($col + 2) . '3', 'I');
$sheet->setCellValue($this->getColLetter($col + 3) . '3', 'A');
foreach (range(0, 3) as $i) {
$sheet->setCellValue($this->getColLetter($col + 4) . '3', 'P');
$sheet->setCellValue($this->getColLetter($col + 4) . '3', 'P');
foreach (range(0, 4) as $i) {
$sheet->getStyle($this->getColLetter($col + $i) . '3')->getFont()->setBold(true);
}
$col += 4;
$col += 5;
}
// Sub-header TOTAL
$sheet->setCellValue($this->getColLetter($col) . '3', 'H');
$sheet->setCellValue($this->getColLetter($col + 1) . '3', 'S');
$sheet->setCellValue($this->getColLetter($col + 2) . '3', 'I');
$sheet->setCellValue($this->getColLetter($col + 3) . '3', 'A');
$sheet->setCellValue($this->getColLetter($col + 4) . '3', 'P');
foreach (range(0, 3) as $i) {
$sheet->getStyle($this->getColLetter($col + $i) . '3')->getFont()->setBold(true);
}
@@ -784,19 +799,21 @@ class AttendanceController extends Controller
$sheet->setCellValue($this->getColLetter($col + 1) . $rowIdx, $s['sakit']);
$sheet->setCellValue($this->getColLetter($col + 2) . $rowIdx, $s['izin']);
$sheet->setCellValue($this->getColLetter($col + 3) . $rowIdx, $s['alpha']);
$sheet->setCellValue($this->getColLetter($col + 4) . $rowIdx, $s['pkl']);
} else {
foreach (range(0, 3) as $i) {
foreach (range(0, 4) as $i) {
$sheet->setCellValue($this->getColLetter($col + $i) . $rowIdx, '-');
}
}
$col += 4;
$col += 5;
}
// TOTAL per siswa
$t = $data['totals'][$student->id] ?? ['hadir' => 0, 'sakit' => 0, 'izin' => 0, 'alpha' => 0];
$t = $data['totals'][$student->id] ?? ['hadir' => 0, 'sakit' => 0, 'izin' => 0, 'alpha' => 0, 'pkl' => 0];
$sheet->setCellValue($this->getColLetter($col) . $rowIdx, $t['hadir']);
$sheet->setCellValue($this->getColLetter($col + 1) . $rowIdx, $t['sakit']);
$sheet->setCellValue($this->getColLetter($col + 2) . $rowIdx, $t['izin']);
$sheet->setCellValue($this->getColLetter($col + 3) . $rowIdx, $t['alpha']);
$sheet->setCellValue($this->getColLetter($col + 4) . $rowIdx, $t['pkl']);
$rowIdx++;
}
+1
View File
@@ -0,0 +1 @@
94cd788eeb1582d160dbcc8e8bb28ab5
@@ -0,0 +1 @@
␍2packages/cupertino_icons/assets/CupertinoIcons.ttf ␍asset2packages/cupertino_icons/assets/CupertinoIcons.ttf
@@ -0,0 +1 @@
"DQEHMnBhY2thZ2VzL2N1cGVydGlub19pY29ucy9hc3NldHMvQ3VwZXJ0aW5vSWNvbnMudHRmDAENAQcFYXNzZXQHMnBhY2thZ2VzL2N1cGVydGlub19pY29ucy9hc3NldHMvQ3VwZXJ0aW5vSWNvbnMudHRm"
@@ -0,0 +1 @@
[{"family":"MaterialIcons","fonts":[{"asset":"fonts/MaterialIcons-Regular.otf"}]},{"family":"packages/cupertino_icons/CupertinoIcons","fonts":[{"asset":"packages/cupertino_icons/assets/CupertinoIcons.ttf"}]}]
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,193 @@
var CanvasKitInit = (() => {
var _scriptName = import.meta.url;
return (
function(moduleArg = {}) {
var moduleRtn;
var r=moduleArg,ca,da,ea=new Promise((a,b)=>{ca=a;da=b}),fa="object"==typeof window,ia="function"==typeof importScripts;
(function(a){a.ce=a.ce||[];a.ce.push(function(){a.MakeSWCanvasSurface=function(b){var c=b,e="undefined"!==typeof OffscreenCanvas&&c instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&c instanceof HTMLCanvasElement||e||(c=document.getElementById(b),c)))throw"Canvas with id "+b+" was not found";if(b=a.MakeSurface(c.width,c.height))b.Ae=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.Ae=null,e.$e=b,e.Xe=c,e.Ye=f,e.He=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.$d(this.Zd);this._flush();if(this.Ae){var c=new Uint8ClampedArray(a.HEAPU8.buffer,this.He,this.Ye);c=new ImageData(c,this.$e,this.Xe);b?this.Ae.getContext("2d").putImageData(c,
0,0,b[0],b[1],b[2]-b[0],b[3]-b[1]):this.Ae.getContext("2d").putImageData(c,0,0)}};a.Surface.prototype.dispose=function(){this.He&&a._free(this.He);this.delete()};a.$d=a.$d||function(){};a.Be=a.Be||function(){return null}})})(r);
(function(a){a.ce=a.ce||[];a.ce.push(function(){function b(l,p,v){return l&&l.hasOwnProperty(p)?l[p]:v}function c(l){var p=ja(ka);ka[p]=l;return p}function e(l){return l.naturalHeight||l.videoHeight||l.displayHeight||l.height}function f(l){return l.naturalWidth||l.videoWidth||l.displayWidth||l.width}function k(l,p,v,w){l.bindTexture(l.TEXTURE_2D,p);w||v.alphaType!==a.AlphaType.Premul||l.pixelStorei(l.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);return p}function n(l,p,v){v||p.alphaType!==a.AlphaType.Premul||
l.pixelStorei(l.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);l.bindTexture(l.TEXTURE_2D,null)}a.GetWebGLContext=function(l,p){if(!l)throw"null canvas passed into makeWebGLContext";var v={alpha:b(p,"alpha",1),depth:b(p,"depth",1),stencil:b(p,"stencil",8),antialias:b(p,"antialias",0),premultipliedAlpha:b(p,"premultipliedAlpha",1),preserveDrawingBuffer:b(p,"preserveDrawingBuffer",0),preferLowPowerToHighPerformance:b(p,"preferLowPowerToHighPerformance",0),failIfMajorPerformanceCaveat:b(p,"failIfMajorPerformanceCaveat",
0),enableExtensionsByDefault:b(p,"enableExtensionsByDefault",1),explicitSwapControl:b(p,"explicitSwapControl",0),renderViaOffscreenBackBuffer:b(p,"renderViaOffscreenBackBuffer",0)};v.majorVersion=p&&p.majorVersion?p.majorVersion:"undefined"!==typeof WebGL2RenderingContext?2:1;if(v.explicitSwapControl)throw"explicitSwapControl is not supported";l=na(l,v);if(!l)return 0;oa(l);z.le.getExtension("WEBGL_debug_renderer_info");return l};a.deleteContext=function(l){z===pa[l]&&(z=null);"object"==typeof JSEvents&&
JSEvents.Af(pa[l].le.canvas);pa[l]&&pa[l].le.canvas&&(pa[l].le.canvas.Ve=void 0);pa[l]=null};a._setTextureCleanup({deleteTexture:function(l,p){var v=ka[p];v&&pa[l].le.deleteTexture(v);ka[p]=null}});a.MakeWebGLContext=function(l){if(!this.$d(l))return null;var p=this._MakeGrContext();if(!p)return null;p.Zd=l;var v=p.delete.bind(p);p["delete"]=function(){a.$d(this.Zd);v()}.bind(p);return z.Je=p};a.MakeGrContext=a.MakeWebGLContext;a.GrDirectContext.prototype.getResourceCacheLimitBytes=function(){a.$d(this.Zd);
this._getResourceCacheLimitBytes()};a.GrDirectContext.prototype.getResourceCacheUsageBytes=function(){a.$d(this.Zd);this._getResourceCacheUsageBytes()};a.GrDirectContext.prototype.releaseResourcesAndAbandonContext=function(){a.$d(this.Zd);this._releaseResourcesAndAbandonContext()};a.GrDirectContext.prototype.setResourceCacheLimitBytes=function(l){a.$d(this.Zd);this._setResourceCacheLimitBytes(l)};a.MakeOnScreenGLSurface=function(l,p,v,w,A,D){if(!this.$d(l.Zd))return null;p=void 0===A||void 0===D?
this._MakeOnScreenGLSurface(l,p,v,w):this._MakeOnScreenGLSurface(l,p,v,w,A,D);if(!p)return null;p.Zd=l.Zd;return p};a.MakeRenderTarget=function(){var l=arguments[0];if(!this.$d(l.Zd))return null;if(3===arguments.length){var p=this._MakeRenderTargetWH(l,arguments[1],arguments[2]);if(!p)return null}else if(2===arguments.length){if(p=this._MakeRenderTargetII(l,arguments[1]),!p)return null}else return null;p.Zd=l.Zd;return p};a.MakeWebGLCanvasSurface=function(l,p,v){p=p||null;var w=l,A="undefined"!==
typeof OffscreenCanvas&&w instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&w instanceof HTMLCanvasElement||A||(w=document.getElementById(l),w)))throw"Canvas with id "+l+" was not found";l=this.GetWebGLContext(w,v);if(!l||0>l)throw"failed to create webgl context: err "+l;l=this.MakeWebGLContext(l);p=this.MakeOnScreenGLSurface(l,w.width,w.height,p);return p?p:(p=w.cloneNode(!0),w.parentNode.replaceChild(p,w),p.classList.add("ck-replaced"),a.MakeSWCanvasSurface(p))};a.MakeCanvasSurface=
a.MakeWebGLCanvasSurface;a.Surface.prototype.makeImageFromTexture=function(l,p){a.$d(this.Zd);l=c(l);if(p=this._makeImageFromTexture(this.Zd,l,p))p.ue=l;return p};a.Surface.prototype.makeImageFromTextureSource=function(l,p,v){p||={height:e(l),width:f(l),colorType:a.ColorType.RGBA_8888,alphaType:v?a.AlphaType.Premul:a.AlphaType.Unpremul};p.colorSpace||(p.colorSpace=a.ColorSpace.SRGB);a.$d(this.Zd);var w=z.le;v=k(w,w.createTexture(),p,v);2===z.version?w.texImage2D(w.TEXTURE_2D,0,w.RGBA,p.width,p.height,
0,w.RGBA,w.UNSIGNED_BYTE,l):w.texImage2D(w.TEXTURE_2D,0,w.RGBA,w.RGBA,w.UNSIGNED_BYTE,l);n(w,p);this._resetContext();return this.makeImageFromTexture(v,p)};a.Surface.prototype.updateTextureFromSource=function(l,p,v){if(l.ue){a.$d(this.Zd);var w=l.getImageInfo(),A=z.le,D=k(A,ka[l.ue],w,v);2===z.version?A.texImage2D(A.TEXTURE_2D,0,A.RGBA,f(p),e(p),0,A.RGBA,A.UNSIGNED_BYTE,p):A.texImage2D(A.TEXTURE_2D,0,A.RGBA,A.RGBA,A.UNSIGNED_BYTE,p);n(A,w,v);this._resetContext();ka[l.ue]=null;l.ue=c(D);w.colorSpace=
l.getColorSpace();p=this._makeImageFromTexture(this.Zd,l.ue,w);v=l.Yd.ae;A=l.Yd.ee;l.Yd.ae=p.Yd.ae;l.Yd.ee=p.Yd.ee;p.Yd.ae=v;p.Yd.ee=A;p.delete();w.colorSpace.delete()}};a.MakeLazyImageFromTextureSource=function(l,p,v){p||={height:e(l),width:f(l),colorType:a.ColorType.RGBA_8888,alphaType:v?a.AlphaType.Premul:a.AlphaType.Unpremul};p.colorSpace||(p.colorSpace=a.ColorSpace.SRGB);var w={makeTexture:function(){var A=z,D=A.le,I=k(D,D.createTexture(),p,v);2===A.version?D.texImage2D(D.TEXTURE_2D,0,D.RGBA,
p.width,p.height,0,D.RGBA,D.UNSIGNED_BYTE,l):D.texImage2D(D.TEXTURE_2D,0,D.RGBA,D.RGBA,D.UNSIGNED_BYTE,l);n(D,p,v);return c(I)},freeSrc:function(){}};"VideoFrame"===l.constructor.name&&(w.freeSrc=function(){l.close()});return a.Image._makeFromGenerator(p,w)};a.$d=function(l){return l?oa(l):!1};a.Be=function(){return z&&z.Je&&!z.Je.isDeleted()?z.Je: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 n(g,d,h){if(!g||!g.length)return 0;if(g&&g._ck)return g.byteOffset;var m=a[d].BYTES_PER_ELEMENT;h||=a._malloc(g.length*m);a[d].set(g,h/m);return h}function l(g){var d={he:0,count:g.length,colorType:a.ColorType.RGBA_F32};if(g instanceof Float32Array)d.he=n(g,"HEAPF32"),d.count=g.length/4;else if(g instanceof Uint32Array)d.he=n(g,"HEAPU32"),d.colorType=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,u=0;u<g.length;u++)for(var y=0;4>y;y++)a.HEAPF32[t+m]=g[u][y],m++;g=h}else g=0;d.he=g}else throw"Invalid argument to copyFlexibleColorArray, Not a color array "+typeof g;return d}function p(g){if(!g)return 0;var d=aa.toTypedArray();if(g.length){if(6===g.length||9===g.length)return n(g,"HEAPF32",P),6===g.length&&a.HEAPF32.set(Vc,6+P/4),P;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],P;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 P}function v(g){if(!g)return 0;var d=X.toTypedArray();if(g.length){if(16!==g.length&&6!==g.length&&9!==g.length)throw"invalid matrix size";if(16===g.length)return n(g,"HEAPF32",la);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 la}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 la}function w(g,d){return n(g,"HEAPF32",d||ha)}function A(g,d,h,m){var t=Ea.toTypedArray();t[0]=g;t[1]=d;t[2]=h;t[3]=m;return ha}function D(g){for(var d=new Float32Array(4),h=0;4>h;h++)d[h]=a.HEAPF32[g/4+h];return d}function I(g,d){return n(g,"HEAPF32",d||U)}function Q(g,d){return n(g,
"HEAPF32",d||tb)}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,qe:null,subarray:function(m,t){m=this.toTypedArray().subarray(m,t);m._ck=!0;return m},toTypedArray:function(){if(this.qe&&
this.qe.length)return this.qe;this.qe=new g(a.HEAPU8.buffer,h,d);this.qe._ck=!0;return this.qe}}};a.Free=function(g){a._free(g.byteOffset);g.byteOffset=0;g.toTypedArray=null;g.qe=null};var P=0,aa,la=0,X,ha=0,Ea,ba,U=0,Ub,Aa=0,Vb,ub=0,Wb,vb=0,$a,Ma=0,Xb,tb=0,Yb,Zb=0,Vc=Float32Array.of(0,0,1);a.onRuntimeInitialized=function(){function g(d,h,m,t,u,y,C){y||(y=4*t.width,t.colorType===a.ColorType.RGBA_F16?y*=2:t.colorType===a.ColorType.RGBA_F32&&(y*=4));var G=y*t.height;var F=u?u.byteOffset:a._malloc(G);
if(C?!d._readPixels(t,F,y,h,m,C):!d._readPixels(t,F,y,h,m))return u||a._free(F),null;if(u)return u.toTypedArray();switch(t.colorType){case a.ColorType.RGBA_8888:case a.ColorType.RGBA_F16:d=(new Uint8Array(a.HEAPU8.buffer,F,G)).slice();break;case a.ColorType.RGBA_F32:d=(new Float32Array(a.HEAPU8.buffer,F,G)).slice();break;default:return null}a._free(F);return d}Ea=a.Malloc(Float32Array,4);ha=Ea.byteOffset;X=a.Malloc(Float32Array,16);la=X.byteOffset;aa=a.Malloc(Float32Array,9);P=aa.byteOffset;Xb=a.Malloc(Float32Array,
12);tb=Xb.byteOffset;Yb=a.Malloc(Float32Array,12);Zb=Yb.byteOffset;ba=a.Malloc(Float32Array,4);U=ba.byteOffset;Ub=a.Malloc(Float32Array,4);Aa=Ub.byteOffset;Vb=a.Malloc(Float32Array,3);ub=Vb.byteOffset;Wb=a.Malloc(Float32Array,3);vb=Wb.byteOffset;$a=a.Malloc(Int32Array,4);Ma=$a.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=n(d,"HEAPF32"),m=a.Path._MakeFromCmds(h,d.length);k(h,d);return m};a.Path.MakeFromVerbsPointsWeights=function(d,h,m){var t=n(d,"HEAPU8"),u=n(h,"HEAPF32"),y=n(m,"HEAPF32"),C=a.Path._MakeFromVerbsPointsWeights(t,d.length,u,h.length/2,y,m&&m.length||0);k(t,d);k(u,h);k(y,m);return C};a.PathBuilder.prototype.addArc=function(d,h,m){d=I(d);this._addArc(d,h,m);return this};a.PathBuilder.prototype.addCircle=function(d,h,m,t){this._addCircle(d,h,m,!!t);return this};a.PathBuilder.prototype.addOval=
function(d,h,m){void 0===m&&(m=1);d=I(d);this._addOval(d,!!h,m);return this};a.PathBuilder.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.PathBuilder.prototype.addPolygon=function(d,h){var m=n(d,"HEAPF32");this._addPolygon(m,d.length/2,h);k(m,d);return this};a.PathBuilder.prototype.addRect=function(d,h){d=I(d);this._addRect(d,!!h);return this};a.PathBuilder.prototype.addRRect=function(d,h){d=Q(d);this._addRRect(d,!!h);return this};a.PathBuilder.prototype.addVerbsPointsWeights=function(d,h,m){var t=n(d,"HEAPU8"),u=n(h,"HEAPF32"),y=n(m,"HEAPF32");this._addVerbsPointsWeights(t,d.length,u,h.length/2,y,m&&m.length||0);k(t,
d);k(u,h);k(y,m);return this};a.PathBuilder.prototype.arc=function(d,h,m,t,u,y){d=a.LTRBRect(d-m,h-m,d+m,h+m);u=(u-t)/Math.PI*180-360*!!y;t=(new a.PathBuilder).addArc(d,t/Math.PI*180,u).detachAndDelete();this.addPath(t,!0);t.delete();return this};a.PathBuilder.prototype.arcToOval=function(d,h,m,t){d=I(d);this._arcToOval(d,h,m,t);return this};a.PathBuilder.prototype.arcToRotated=function(d,h,m,t,u,y,C){this._arcToRotated(d,h,m,!!t,!!u,y,C);return this};a.PathBuilder.prototype.arcToTangent=function(d,
h,m,t,u){this._arcToTangent(d,h,m,t,u);return this};a.PathBuilder.prototype.close=function(){this._close();return this};a.PathBuilder.prototype.conicTo=function(d,h,m,t,u){this._conicTo(d,h,m,t,u);return this};a.Path.prototype.computeTightBounds=function(d){this._computeTightBounds(U);var h=ba.toTypedArray();return d?(d.set(h),d):h.slice()};a.PathBuilder.prototype.cubicTo=function(d,h,m,t,u,y){this._cubicTo(d,h,m,t,u,y);return this};a.PathBuilder.prototype.detachAndDelete=function(){var d=this.detach();
this.delete();return d};a.Path.prototype.getBounds=function(d){this._getBounds(U);var h=ba.toTypedArray();return d?(d.set(h),d):h.slice()};a.PathBuilder.prototype.getBounds=function(d){this._getBounds(U);var h=ba.toTypedArray();return d?(d.set(h),d):h.slice()};a.PathBuilder.prototype.lineTo=function(d,h){this._lineTo(d,h);return this};a.PathBuilder.prototype.moveTo=function(d,h){this._moveTo(d,h);return this};a.PathBuilder.prototype.offset=function(d,h){this._transform(1,0,d,0,1,h,0,0,1);return this};
a.PathBuilder.prototype.quadTo=function(d,h,m,t){this._quadTo(d,h,m,t);return this};a.PathBuilder.prototype.rArcTo=function(d,h,m,t,u,y,C){this._rArcTo(d,h,m,t,u,y,C);return this};a.PathBuilder.prototype.rConicTo=function(d,h,m,t,u){this._rConicTo(d,h,m,t,u);return this};a.PathBuilder.prototype.rCubicTo=function(d,h,m,t,u,y){this._rCubicTo(d,h,m,t,u,y);return this};a.PathBuilder.prototype.rLineTo=function(d,h){this._rLineTo(d,h);return this};a.PathBuilder.prototype.rMoveTo=function(d,h){this._rMoveTo(d,
h);return this};a.PathBuilder.prototype.rQuadTo=function(d,h,m,t){this._rQuadTo(d,h,m,t);return this};a.Path.prototype.makeStroked=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._makeStroked(d)};a.PathBuilder.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.makeTrimmed=function(d,h,m){return this._makeTrimmed(d,h,!!m)};a.Image.prototype.encodeToBytes=function(d,h){var m=a.Be();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,u){u=p(u);return this._makeShaderCubic(d,
h,m,t,u)};a.Image.prototype.makeShaderOptions=function(d,h,m,t,u){u=p(u);return this._makeShaderOptions(d,h,m,t,u)};a.Image.prototype.readPixels=function(d,h,m,t,u){var y=a.Be();return g(this,d,h,m,t,u,y)};a.Canvas.prototype.clear=function(d){a.$d(this.Zd);d=w(d);this._clear(d)};a.Canvas.prototype.clipRRect=function(d,h,m){a.$d(this.Zd);d=Q(d);this._clipRRect(d,h,m)};a.Canvas.prototype.clipRect=function(d,h,m){a.$d(this.Zd);d=I(d);this._clipRect(d,h,m)};a.Canvas.prototype.concat=function(d){a.$d(this.Zd);
d=v(d);this._concat(d)};a.Canvas.prototype.drawArc=function(d,h,m,t,u){a.$d(this.Zd);d=I(d);this._drawArc(d,h,m,t,u)};a.Canvas.prototype.drawAtlas=function(d,h,m,t,u,y,C){if(d&&t&&h&&m&&h.length===m.length){a.$d(this.Zd);u||(u=a.BlendMode.SrcOver);var G=n(h,"HEAPF32"),F=n(m,"HEAPF32"),S=m.length/4,T=n(c(y),"HEAPU32");if(C&&"B"in C&&"C"in C)this._drawAtlasCubic(d,F,G,T,S,u,C.B,C.C,t);else{let q=a.FilterMode.Linear,x=a.MipmapMode.None;C&&(q=C.filter,"mipmap"in C&&(x=C.mipmap));this._drawAtlasOptions(d,
F,G,T,S,u,q,x,t)}k(G,h);k(F,m);k(T,y)}};a.Canvas.prototype.drawCircle=function(d,h,m,t){a.$d(this.Zd);this._drawCircle(d,h,m,t)};a.Canvas.prototype.drawColor=function(d,h){a.$d(this.Zd);d=w(d);void 0!==h?this._drawColor(d,h):this._drawColor(d)};a.Canvas.prototype.drawColorInt=function(d,h){a.$d(this.Zd);this._drawColorInt(d,h||a.BlendMode.SrcOver)};a.Canvas.prototype.drawColorComponents=function(d,h,m,t,u){a.$d(this.Zd);d=A(d,h,m,t);void 0!==u?this._drawColor(d,u):this._drawColor(d)};a.Canvas.prototype.drawDRRect=
function(d,h,m){a.$d(this.Zd);d=Q(d,tb);h=Q(h,Zb);this._drawDRRect(d,h,m)};a.Canvas.prototype.drawImage=function(d,h,m,t){a.$d(this.Zd);this._drawImage(d,h,m,t||null)};a.Canvas.prototype.drawImageCubic=function(d,h,m,t,u,y){a.$d(this.Zd);this._drawImageCubic(d,h,m,t,u,y||null)};a.Canvas.prototype.drawImageOptions=function(d,h,m,t,u,y){a.$d(this.Zd);this._drawImageOptions(d,h,m,t,u,y||null)};a.Canvas.prototype.drawImageNine=function(d,h,m,t,u){a.$d(this.Zd);h=n(h,"HEAP32",Ma);m=I(m);this._drawImageNine(d,
h,m,t,u||null)};a.Canvas.prototype.drawImageRect=function(d,h,m,t,u){a.$d(this.Zd);I(h,U);I(m,Aa);this._drawImageRect(d,U,Aa,t,!!u)};a.Canvas.prototype.drawImageRectCubic=function(d,h,m,t,u,y){a.$d(this.Zd);I(h,U);I(m,Aa);this._drawImageRectCubic(d,U,Aa,t,u,y||null)};a.Canvas.prototype.drawImageRectOptions=function(d,h,m,t,u,y){a.$d(this.Zd);I(h,U);I(m,Aa);this._drawImageRectOptions(d,U,Aa,t,u,y||null)};a.Canvas.prototype.drawLine=function(d,h,m,t,u){a.$d(this.Zd);this._drawLine(d,h,m,t,u)};a.Canvas.prototype.drawOval=
function(d,h){a.$d(this.Zd);d=I(d);this._drawOval(d,h)};a.Canvas.prototype.drawPaint=function(d){a.$d(this.Zd);this._drawPaint(d)};a.Canvas.prototype.drawParagraph=function(d,h,m){a.$d(this.Zd);this._drawParagraph(d,h,m)};a.Canvas.prototype.drawPatch=function(d,h,m,t,u){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.$d(this.Zd);const y=n(d,"HEAPF32"),C=h?n(c(h),"HEAPU32"):0,G=m?n(m,"HEAPF32"):0;t||(t=a.BlendMode.Modulate);
this._drawPatch(y,C,G,t,u);k(G,m);k(C,h);k(y,d)};a.Canvas.prototype.drawPath=function(d,h){a.$d(this.Zd);this._drawPath(d,h)};a.Canvas.prototype.drawPicture=function(d){a.$d(this.Zd);this._drawPicture(d)};a.Canvas.prototype.drawPoints=function(d,h,m){a.$d(this.Zd);var t=n(h,"HEAPF32");this._drawPoints(d,t,h.length/2,m);k(t,h)};a.Canvas.prototype.drawRRect=function(d,h){a.$d(this.Zd);d=Q(d);this._drawRRect(d,h)};a.Canvas.prototype.drawRect=function(d,h){a.$d(this.Zd);d=I(d);this._drawRect(d,h)};a.Canvas.prototype.drawRect4f=
function(d,h,m,t,u){a.$d(this.Zd);this._drawRect4f(d,h,m,t,u)};a.Canvas.prototype.drawShadow=function(d,h,m,t,u,y,C){a.$d(this.Zd);var G=n(u,"HEAPF32"),F=n(y,"HEAPF32");h=n(h,"HEAPF32",ub);m=n(m,"HEAPF32",vb);this._drawShadow(d,h,m,t,G,F,C);k(G,u);k(F,y)};a.getShadowLocalBounds=function(d,h,m,t,u,y,C){d=p(d);m=n(m,"HEAPF32",ub);t=n(t,"HEAPF32",vb);if(!this._getShadowLocalBounds(d,h,m,t,u,y,U))return null;h=ba.toTypedArray();return C?(C.set(h),C):h.slice()};a.Canvas.prototype.drawTextBlob=function(d,
h,m,t){a.$d(this.Zd);this._drawTextBlob(d,h,m,t)};a.Canvas.prototype.drawVertices=function(d,h,m){a.$d(this.Zd);this._drawVertices(d,h,m)};a.Canvas.prototype.getDeviceClipBounds=function(d){this._getDeviceClipBounds(Ma);var h=$a.toTypedArray();d?d.set(h):d=h.slice();return d};a.Canvas.prototype.quickReject=function(d){d=I(d);return this._quickReject(d)};a.Canvas.prototype.getLocalToDevice=function(){this._getLocalToDevice(la);for(var d=la,h=Array(16),m=0;16>m;m++)h[m]=a.HEAPF32[d/4+m];return h};a.Canvas.prototype.getTotalMatrix=
function(){this._getTotalMatrix(P);for(var d=Array(9),h=0;9>h;h++)d[h]=a.HEAPF32[P/4+h];return d};a.Canvas.prototype.makeSurface=function(d){d=this._makeSurface(d);d.Zd=this.Zd;return d};a.Canvas.prototype.readPixels=function(d,h,m,t,u){a.$d(this.Zd);return g(this,d,h,m,t,u)};a.Canvas.prototype.saveLayer=function(d,h,m,t,u){h=I(h);return this._saveLayer(d||null,h,m||null,t||0,u||a.TileMode.Clamp)};a.Canvas.prototype.writePixels=function(d,h,m,t,u,y,C,G){if(d.byteLength%(h*m))throw"pixels length must be a multiple of the srcWidth * srcHeight";
a.$d(this.Zd);var F=d.byteLength/(h*m);y=y||a.AlphaType.Unpremul;C=C||a.ColorType.RGBA_8888;G=G||a.ColorSpace.SRGB;var S=F*h;F=n(d,"HEAPU8");h=this._writePixels({width:h,height:m,colorType:C,alphaType:y,colorSpace:G},F,S,t,u);k(F,d);return h};a.ColorFilter.MakeBlend=function(d,h,m){d=w(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=n(d,"HEAPF32"),m=a.ColorFilter._makeMatrix(h);k(h,d);return m};
a.ContourMeasure.prototype.getPosTan=function(d,h){this._getPosTan(d,U);d=ba.toTypedArray();return h?(h.set(d),h):d.slice()};a.ImageFilter.prototype.getOutputBounds=function(d,h,m){d=I(d,U);h=p(h);this._getOutputBounds(d,h,Ma);h=$a.toTypedArray();return m?(m.set(h),m):h.slice()};a.ImageFilter.MakeDropShadow=function(d,h,m,t,u,y){u=w(u,ha);return a.ImageFilter._MakeDropShadow(d,h,m,t,u,y)};a.ImageFilter.MakeDropShadowOnly=function(d,h,m,t,u,y){u=w(u,ha);return a.ImageFilter._MakeDropShadowOnly(d,h,
m,t,u,y)};a.ImageFilter.MakeImage=function(d,h,m,t){m=I(m,U);t=I(t,Aa);if("B"in h&&"C"in h)return a.ImageFilter._MakeImageCubic(d,h.B,h.C,m,t);const u=h.filter;let y=a.MipmapMode.None;"mipmap"in h&&(y=h.mipmap);return a.ImageFilter._MakeImageOptions(d,u,y,m,t)};a.ImageFilter.MakeMatrixTransform=function(d,h,m){d=p(d);if("B"in h&&"C"in h)return a.ImageFilter._MakeMatrixTransformCubic(d,h.B,h.C,m);const t=h.filter;let u=a.MipmapMode.None;"mipmap"in h&&(u=h.mipmap);return a.ImageFilter._MakeMatrixTransformOptions(d,
t,u,m)};a.Paint.prototype.getColor=function(){this._getColor(ha);return D(ha)};a.Paint.prototype.setColor=function(d,h){h=h||null;d=w(d);this._setColor(d,h)};a.Paint.prototype.setColorComponents=function(d,h,m,t,u){u=u||null;d=A(d,h,m,t);this._setColor(d,u)};a.Path.prototype.getPoint=function(d,h){this._getPoint(d,U);d=ba.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,u){t=p(t);u=I(u);return this._makeShader(d,h,m,t,u)};a.Picture.prototype.cullRect=
function(d){this._cullRect(U);var h=ba.toTypedArray();return d?(d.set(h),d):h.slice()};a.PictureRecorder.prototype.beginRecording=function(d,h){d=I(d);return this._beginRecording(d,!!h)};a.Surface.prototype.getCanvas=function(){var d=this._getCanvas();d.Zd=this.Zd;return d};a.Surface.prototype.makeImageSnapshot=function(d){a.$d(this.Zd);d=n(d,"HEAP32",Ma);return this._makeImageSnapshot(d)};a.Surface.prototype.makeSurface=function(d){a.$d(this.Zd);d=this._makeSurface(d);d.Zd=this.Zd;return d};a.Surface.prototype.Ze=
function(d,h){this.te||(this.te=this.getCanvas());return requestAnimationFrame(function(){a.$d(this.Zd);d(this.te);this.flush(h)}.bind(this))};a.Surface.prototype.requestAnimationFrame||(a.Surface.prototype.requestAnimationFrame=a.Surface.prototype.Ze);a.Surface.prototype.We=function(d,h){this.te||(this.te=this.getCanvas());requestAnimationFrame(function(){a.$d(this.Zd);d(this.te);this.flush(h);this.dispose()}.bind(this))};a.Surface.prototype.drawOnce||(a.Surface.prototype.drawOnce=a.Surface.prototype.We);
a.PathEffect.MakeDash=function(d,h){h||=0;if(!d.length||1===d.length%2)throw"Intervals array must have even length";var m=n(d,"HEAPF32");h=a.PathEffect._MakeDash(m,d.length,h);k(m,d);return h};a.PathEffect.MakeLine2D=function(d,h){h=p(h);return a.PathEffect._MakeLine2D(d,h)};a.PathEffect.MakePath2D=function(d,h){d=p(d);return a.PathEffect._MakePath2D(d,h)};a.Shader.MakeColor=function(d,h){h=h||null;d=w(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,u,y,C,G){G=G||null;var F=l(m),S=n(t,"HEAPF32");C=C||0;y=p(y);var T=ba.toTypedArray();T.set(d);T.set(h,2);d=a.Shader._MakeLinearGradient(U,F.he,F.colorType,S,F.count,u,C,y,G);k(F.he,m);t&&k(S,t);return d};a.Shader.MakeRadialGradient=function(d,h,m,t,u,y,C,G){G=G||null;var F=l(m),S=n(t,"HEAPF32");C=C||0;y=p(y);d=a.Shader._MakeRadialGradient(d[0],d[1],h,F.he,F.colorType,S,F.count,u,C,y,G);k(F.he,m);t&&k(S,t);return d};a.Shader.MakeSweepGradient=function(d,
h,m,t,u,y,C,G,F,S){S=S||null;var T=l(m),q=n(t,"HEAPF32");C=C||0;G=G||0;F=F||360;y=p(y);d=a.Shader._MakeSweepGradient(d,h,T.he,T.colorType,q,T.count,u,G,F,C,y,S);k(T.he,m);t&&k(q,t);return d};a.Shader.MakeTwoPointConicalGradient=function(d,h,m,t,u,y,C,G,F,S){S=S||null;var T=l(u),q=n(y,"HEAPF32");F=F||0;G=p(G);var x=ba.toTypedArray();x.set(d);x.set(m,2);d=a.Shader._MakeTwoPointConicalGradient(U,h,t,T.he,T.colorType,q,T.count,C,F,G,S);k(T.he,u);y&&k(q,y);return d};a.Vertices.prototype.bounds=function(d){this._bounds(U);
var h=ba.toTypedArray();return d?(d.set(h),d):h.slice()};a.ce&&a.ce.forEach(function(d){d()})};a.computeTonalColors=function(g){var d=n(g.ambient,"HEAPF32"),h=n(g.spot,"HEAPF32");this._computeTonalColors(d,h);var m={ambient:D(d),spot:D(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 ab=null;a.MakeImageFromCanvasImageSource=function(g){var d=g.width,h=g.height;
ab||=document.createElement("canvas");ab.width=d;ab.height=h;var m=ab.getContext("2d",{willReadFrequently:!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,u){var y=t&&t.length||0,C=0;h&&h.length&&(C|=1);m&&m.length&&
(C|=2);void 0===u||u||(C|=4);g=new a._VerticesBuilder(g,d.length/2,y,C);n(d,"HEAPF32",g.positions());g.texCoords()&&n(h,"HEAPF32",g.texCoords());g.colors()&&n(c(m),"HEAPU32",g.colors());g.indices()&&n(t,"HEAPU16",g.indices());return g.detach()};(function(g){g.ce=g.ce||[];g.ce.push(function(){function d(q){q&&(q.dir=0===q.dir?g.TextDirection.RTL:g.TextDirection.LTR);return q}function h(q){if(!q||!q.length)return[];for(var x=[],M=0;M<q.length;M+=5){var W=g.LTRBRect(q[M],q[M+1],q[M+2],q[M+3]),wa=g.TextDirection.LTR;
0===q[M+4]&&(wa=g.TextDirection.RTL);x.push({rect:W,dir:wa})}g._free(q.byteOffset);return x}function m(q){q=q||{};void 0===q.weight&&(q.weight=g.FontWeight.Normal);q.width=q.width||g.FontWidth.Normal;q.slant=q.slant||g.FontSlant.Upright;return q}function t(q){if(!q||!q.length)return 0;for(var x=[],M=0;M<q.length;M++){var W=u(q[M]);x.push(W)}return n(x,"HEAPU32")}function u(q){if(G[q])return G[q];var x=qa(q)+1,M=g._malloc(x);ra(q,M,x);return G[q]=M}function y(q){q._colorPtr=w(q.color);q._foregroundColorPtr=
0;q._backgroundColorPtr=0;q._decorationColorPtr=0;q.foregroundColor&&(q._foregroundColorPtr=w(q.foregroundColor,F));q.backgroundColor&&(q._backgroundColorPtr=w(q.backgroundColor,S));q.decorationColor&&(q._decorationColorPtr=w(q.decorationColor,T));Array.isArray(q.fontFamilies)&&q.fontFamilies.length?(q._fontFamiliesPtr=t(q.fontFamilies),q._fontFamiliesLen=q.fontFamilies.length):(q._fontFamiliesPtr=0,q._fontFamiliesLen=0);if(q.locale){var x=q.locale;q._localePtr=u(x);q._localeLen=qa(x)}else q._localePtr=
0,q._localeLen=0;if(Array.isArray(q.shadows)&&q.shadows.length){x=q.shadows;var M=x.map(function(ma){return ma.color||g.BLACK}),W=x.map(function(ma){return ma.blurRadius||0});q._shadowLen=x.length;for(var wa=g._malloc(8*x.length),wb=wa/4,xb=0;xb<x.length;xb++){var $b=x[xb].offset||[0,0];g.HEAPF32[wb]=$b[0];g.HEAPF32[wb+1]=$b[1];wb+=2}q._shadowColorsPtr=l(M).he;q._shadowOffsetsPtr=wa;q._shadowBlurRadiiPtr=n(W,"HEAPF32")}else q._shadowLen=0,q._shadowColorsPtr=0,q._shadowOffsetsPtr=0,q._shadowBlurRadiiPtr=
0;Array.isArray(q.fontFeatures)&&q.fontFeatures.length?(x=q.fontFeatures,M=x.map(function(ma){return ma.name}),W=x.map(function(ma){return ma.value}),q._fontFeatureLen=x.length,q._fontFeatureNamesPtr=t(M),q._fontFeatureValuesPtr=n(W,"HEAPU32")):(q._fontFeatureLen=0,q._fontFeatureNamesPtr=0,q._fontFeatureValuesPtr=0);Array.isArray(q.fontVariations)&&q.fontVariations.length?(x=q.fontVariations,M=x.map(function(ma){return ma.axis}),W=x.map(function(ma){return ma.value}),q._fontVariationLen=x.length,
q._fontVariationAxesPtr=t(M),q._fontVariationValuesPtr=n(W,"HEAPF32")):(q._fontVariationLen=0,q._fontVariationAxesPtr=0,q._fontVariationValuesPtr=0)}function C(q){g._free(q._fontFamiliesPtr);g._free(q._shadowColorsPtr);g._free(q._shadowOffsetsPtr);g._free(q._shadowBlurRadiiPtr);g._free(q._fontFeatureNamesPtr);g._free(q._fontFeatureValuesPtr);g._free(q._fontVariationAxesPtr);g._free(q._fontVariationValuesPtr)}g.Paragraph.prototype.getRectsForRange=function(q,x,M,W){q=this._getRectsForRange(q,x,M,W);
return h(q)};g.Paragraph.prototype.getRectsForPlaceholders=function(){var q=this._getRectsForPlaceholders();return h(q)};g.Paragraph.prototype.getGlyphInfoAt=function(q){return d(this._getGlyphInfoAt(q))};g.Paragraph.prototype.getClosestGlyphInfoAtCoordinate=function(q,x){return d(this._getClosestGlyphInfoAtCoordinate(q,x))};g.TypefaceFontProvider.prototype.registerFont=function(q,x){q=g.Typeface.MakeTypefaceFromData(q);if(!q)return null;x=u(x);this._registerFont(q,x);q.delete()};g.ParagraphStyle=
function(q){q.disableHinting=q.disableHinting||!1;if(q.ellipsis){var x=q.ellipsis;q._ellipsisPtr=u(x);q._ellipsisLen=qa(x)}else q._ellipsisPtr=0,q._ellipsisLen=0;null==q.heightMultiplier&&(q.heightMultiplier=-1);q.maxLines=q.maxLines||0;q.replaceTabCharacters=q.replaceTabCharacters||!1;x=(x=q.strutStyle)||{};x.strutEnabled=x.strutEnabled||!1;x.strutEnabled&&Array.isArray(x.fontFamilies)&&x.fontFamilies.length?(x._fontFamiliesPtr=t(x.fontFamilies),x._fontFamiliesLen=x.fontFamilies.length):(x._fontFamiliesPtr=
0,x._fontFamiliesLen=0);x.fontStyle=m(x.fontStyle);null==x.fontSize&&(x.fontSize=-1);null==x.heightMultiplier&&(x.heightMultiplier=-1);x.halfLeading=x.halfLeading||!1;x.leading=x.leading||0;x.forceStrutHeight=x.forceStrutHeight||!1;q.strutStyle=x;q.textAlign=q.textAlign||g.TextAlign.Start;q.textDirection=q.textDirection||g.TextDirection.LTR;q.textHeightBehavior=q.textHeightBehavior||g.TextHeightBehavior.All;q.textStyle=g.TextStyle(q.textStyle);q.applyRoundingHack=!1!==q.applyRoundingHack;return q};
g.TextStyle=function(q){q.color||(q.color=g.BLACK);q.decoration=q.decoration||0;q.decorationThickness=q.decorationThickness||0;q.decorationStyle=q.decorationStyle||g.DecorationStyle.Solid;q.textBaseline=q.textBaseline||g.TextBaseline.Alphabetic;null==q.fontSize&&(q.fontSize=-1);q.letterSpacing=q.letterSpacing||0;q.wordSpacing=q.wordSpacing||0;null==q.heightMultiplier&&(q.heightMultiplier=-1);q.halfLeading=q.halfLeading||!1;q.fontStyle=m(q.fontStyle);return q};var G={},F=g._malloc(16),S=g._malloc(16),
T=g._malloc(16);g.ParagraphBuilder.Make=function(q,x){y(q.textStyle);x=g.ParagraphBuilder._Make(q,x);C(q.textStyle);return x};g.ParagraphBuilder.MakeFromFontProvider=function(q,x){y(q.textStyle);x=g.ParagraphBuilder._MakeFromFontProvider(q,x);C(q.textStyle);return x};g.ParagraphBuilder.MakeFromFontCollection=function(q,x){y(q.textStyle);x=g.ParagraphBuilder._MakeFromFontCollection(q,x);C(q.textStyle);return x};g.ParagraphBuilder.ShapeText=function(q,x,M){let W=0;for(const wa of x)W+=wa.length;if(W!==
q.length)throw"Accumulated block lengths must equal text.length";return g.ParagraphBuilder._ShapeText(q,x,M)};g.ParagraphBuilder.prototype.pushStyle=function(q){y(q);this._pushStyle(q);C(q)};g.ParagraphBuilder.prototype.pushPaintStyle=function(q,x,M){y(q);this._pushPaintStyle(q,x,M);C(q)};g.ParagraphBuilder.prototype.addPlaceholder=function(q,x,M,W,wa){M=M||g.PlaceholderAlignment.Baseline;W=W||g.TextBaseline.Alphabetic;this._addPlaceholder(q||0,x||0,M,W,wa||0)};g.ParagraphBuilder.prototype.setWordsUtf8=
function(q){var x=n(q,"HEAPU32");this._setWordsUtf8(x,q&&q.length||0);k(x,q)};g.ParagraphBuilder.prototype.setWordsUtf16=function(q){var x=n(q,"HEAPU32");this._setWordsUtf16(x,q&&q.length||0);k(x,q)};g.ParagraphBuilder.prototype.setGraphemeBreaksUtf8=function(q){var x=n(q,"HEAPU32");this._setGraphemeBreaksUtf8(x,q&&q.length||0);k(x,q)};g.ParagraphBuilder.prototype.setGraphemeBreaksUtf16=function(q){var x=n(q,"HEAPU32");this._setGraphemeBreaksUtf16(x,q&&q.length||0);k(x,q)};g.ParagraphBuilder.prototype.setLineBreaksUtf8=
function(q){var x=n(q,"HEAPU32");this._setLineBreaksUtf8(x,q&&q.length||0);k(x,q)};g.ParagraphBuilder.prototype.setLineBreaksUtf16=function(q){var x=n(q,"HEAPU32");this._setLineBreaksUtf16(x,q&&q.length||0);k(x,q)}})})(r);a.ce=a.ce||[];a.ce.push(function(){});a.ce=a.ce||[];a.ce.push(function(){a.Canvas.prototype.drawText=function(g,d,h,m,t){var u=qa(g),y=a._malloc(u+1);ra(g,y,u+1);this._drawSimpleText(y,u,d,h,t,m);a._free(y)};a.Canvas.prototype.drawGlyphs=function(g,d,h,m,t,u){if(!(2*g.length<=d.length))throw"Not enough positions for the array of gyphs";
a.$d(this.Zd);const y=n(g,"HEAPU16"),C=n(d,"HEAPF32");this._drawGlyphs(g.length,y,C,h,m,t,u);k(C,d);k(y,g)};a.Font.prototype.getGlyphBounds=function(g,d,h){var m=n(g,"HEAPU16"),t=a._malloc(16*g.length);this._getGlyphWidthBounds(m,g.length,0,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=qa(g)+1,t=a._malloc(m);ra(g,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=n(g,"HEAPU16"),u=n(d,"HEAPF32");return this._getGlyphIntercepts(t,g.length,!(g&&g._ck),u,d.length,!(d&&d._ck),h,m)};a.Font.prototype.getGlyphWidths=function(g,d,h){var m=n(g,"HEAPU16"),t=a._malloc(4*g.length);this._getGlyphWidthBounds(m,g.length,t,0,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]),u=n(t,"HEAPU8");d.push(u);h.push(t.byteLength)}d=n(d,"HEAPU32");h=n(h,"HEAPU32");g=a.FontMgr._fromData(d,h,g.length);a._free(d);a._free(h);return g};
a.Typeface.MakeTypefaceFromData=function(g){g=new Uint8Array(g);var d=n(g,"HEAPU8");return(g=a.Typeface._MakeTypefaceFromData(d,g.byteLength))?g:null};a.Typeface.MakeFreeTypeFaceFromData=a.Typeface.MakeTypefaceFromData;a.Typeface.prototype.getGlyphIDs=function(g,d,h){d||(d=g.length);var m=qa(g)+1,t=a._malloc(m);ra(g,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||=0;var t=h.getGlyphIDs(g);t=h.getGlyphWidths(t);var u=[];d=new a.ContourMeasureIter(d,!1,1);for(var y=d.next(),C=new Float32Array(4),G=0;G<g.length&&y;G++){var F=t[G];m+=F/2;if(m>y.length()){y.delete();y=d.next();if(!y){g=g.substring(0,G);break}m=F/2}y.getPosTan(m,C);var S=C[2],T=C[3];u.push(S,T,C[0]-F/2*S,C[1]-F/2*T);m+=F/2}g=this.MakeFromRSXform(g,
u,h);y&&y.delete();d.delete();return g}};a.TextBlob.MakeFromRSXform=function(g,d,h){var m=qa(g)+1,t=a._malloc(m);ra(g,t,m);g=n(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=n(g,"HEAPU16");d=n(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=n(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=qa(g)+1,m=a._malloc(h);ra(g,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.ce=a.ce||[];a.ce.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.ce=a.ce||[];a.ce.push(function(){a.RuntimeEffect.Make=function(g,d){return a.RuntimeEffect._Make(g,{onError:d||function(h){console.log("RuntimeEffect error",
h)}})};a.RuntimeEffect.MakeForBlender=function(g,d){return a.RuntimeEffect._MakeForBlender(g,{onError:d||function(h){console.log("RuntimeEffect error",h)}})};a.RuntimeEffect.prototype.makeShader=function(g,d){var h=!g._ck,m=n(g,"HEAPF32");d=p(d);return this._makeShader(m,4*g.length,h,d)};a.RuntimeEffect.prototype.makeShaderWithChildren=function(g,d,h){var m=!g._ck,t=n(g,"HEAPF32");h=p(h);for(var u=[],y=0;y<d.length;y++)u.push(d[y].Yd.ae);d=n(u,"HEAPU32");return this._makeShaderWithChildren(t,4*g.length,
m,d,u.length,h)};a.RuntimeEffect.prototype.makeBlender=function(g){var d=!g._ck,h=n(g,"HEAPF32");return this._makeBlender(h,4*g.length,d)}})})(r);var sa=Object.assign({},r),ta="",ua,va;
if(fa||ia)ia?ta=self.location.href:"undefined"!=typeof document&&document.currentScript&&(ta=document.currentScript.src),_scriptName&&(ta=_scriptName),ta.startsWith("blob:")?ta="":ta=ta.substr(0,ta.replace(/[?#].*/,"").lastIndexOf("/")+1),ia&&(va=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),ua=a=>fetch(a,{credentials:"same-origin"}).then(b=>b.ok?b.arrayBuffer():Promise.reject(Error(b.status+" : "+b.url)));
var xa=console.log.bind(console),ya=console.error.bind(console);Object.assign(r,sa);sa=null;var za,Ba=!1,Ca,B,Da,Fa,E,H,J,Ga;function Ha(){var a=za.buffer;r.HEAP8=Ca=new Int8Array(a);r.HEAP16=Da=new Int16Array(a);r.HEAPU8=B=new Uint8Array(a);r.HEAPU16=Fa=new Uint16Array(a);r.HEAP32=E=new Int32Array(a);r.HEAPU32=H=new Uint32Array(a);r.HEAPF32=J=new Float32Array(a);r.HEAPF64=Ga=new Float64Array(a)}var Ia=[],Ja=[],Ka=[],La=0,Na=null,Oa=null;
function Pa(a){a="Aborted("+a+")";ya(a);Ba=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");da(a);throw a;}var Qa=a=>a.startsWith("data:application/octet-stream;base64,"),Ra;function Sa(a){return ua(a).then(b=>new Uint8Array(b),()=>{if(va)var b=va(a);else throw"both async and sync fetching of the wasm failed";return b})}function Ta(a,b,c){return Sa(a).then(e=>WebAssembly.instantiate(e,b)).then(c,e=>{ya(`failed to asynchronously prepare wasm: ${e}`);Pa(e)})}
function Ua(a,b){var c=Ra;return"function"!=typeof WebAssembly.instantiateStreaming||Qa(c)||"function"!=typeof fetch?Ta(c,a,b):fetch(c,{credentials:"same-origin"}).then(e=>WebAssembly.instantiateStreaming(e,a).then(b,function(f){ya(`wasm streaming compile failed: ${f}`);ya("falling back to ArrayBuffer instantiation");return Ta(c,a,b)}))}function Va(a){this.name="ExitStatus";this.message=`Program terminated with exit(${a})`;this.status=a}var Wa=a=>{a.forEach(b=>b(r))},Xa=r.noExitRuntime||!0;
class Ya{constructor(a){this.ae=a-24}}
var Za=0,bb=0,cb="undefined"!=typeof TextDecoder?new TextDecoder:void 0,db=(a,b=0,c=NaN)=>{var e=b+c;for(c=b;a[c]&&!(c>=e);)++c;if(16<c-b&&a.buffer&&cb)return cb.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 n=a[b++]&63;f=224==(f&240)?(f&15)<<12|k<<6|n:(f&7)<<18|k<<12|n<<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},
eb={},fb=a=>{for(;a.length;){var b=a.pop();a.pop()(b)}};function gb(a){return this.fromWireType(H[a>>2])}
var hb={},ib={},jb={},kb,mb=(a,b,c)=>{function e(l){l=c(l);if(l.length!==a.length)throw new kb("Mismatched type converter count");for(var p=0;p<a.length;++p)lb(a[p],l[p])}a.forEach(l=>jb[l]=b);var f=Array(b.length),k=[],n=0;b.forEach((l,p)=>{ib.hasOwnProperty(l)?f[p]=ib[l]:(k.push(l),hb.hasOwnProperty(l)||(hb[l]=[]),hb[l].push(()=>{f[p]=ib[l];++n;n===k.length&&e(f)}))});0===k.length&&e(f)},nb,K=a=>{for(var b="";B[a];)b+=nb[B[a++]];return b},L;
function ob(a,b,c={}){var e=b.name;if(!a)throw new L(`type "${e}" must have a positive integer typeid pointer`);if(ib.hasOwnProperty(a)){if(c.lf)return;throw new L(`Cannot register type '${e}' twice`);}ib[a]=b;delete jb[a];hb.hasOwnProperty(a)&&(b=hb[a],delete hb[a],b.forEach(f=>f()))}function lb(a,b,c={}){return ob(a,b,c)}
var pb=a=>{throw new L(a.Yd.de.be.name+" instance already deleted");},qb=!1,rb=()=>{},sb=(a,b,c)=>{if(b===c)return a;if(void 0===c.ge)return null;a=sb(a,b,c.ge);return null===a?null:c.cf(a)},yb={},zb={},Ab=(a,b)=>{if(void 0===b)throw new L("ptr should not be undefined");for(;a.ge;)b=a.ye(b),a=a.ge;return zb[b]},Cb=(a,b)=>{if(!b.de||!b.ae)throw new kb("makeClassHandle requires ptr and ptrType");if(!!b.ie!==!!b.ee)throw new kb("Both smartPtrType and smartPtr must be specified");b.count={value:1};return Bb(Object.create(a,
{Yd:{value:b,writable:!0}}))},Bb=a=>{if("undefined"===typeof FinalizationRegistry)return Bb=b=>b,a;qb=new FinalizationRegistry(b=>{b=b.Yd;--b.count.value;0===b.count.value&&(b.ee?b.ie.ne(b.ee):b.de.be.ne(b.ae))});Bb=b=>{var c=b.Yd;c.ee&&qb.register(b,{Yd:c},b);return b};rb=b=>{qb.unregister(b)};return Bb(a)},Db=[];function Eb(){}
var Fb=(a,b)=>Object.defineProperty(b,"name",{value:a}),Gb=(a,b,c)=>{if(void 0===a[b].fe){var e=a[b];a[b]=function(...f){if(!a[b].fe.hasOwnProperty(f.length))throw new L(`Function '${c}' called with an invalid number of arguments (${f.length}) - expects one of (${a[b].fe})!`);return a[b].fe[f.length].apply(this,f)};a[b].fe=[];a[b].fe[e.oe]=e}},Hb=(a,b,c)=>{if(r.hasOwnProperty(a)){if(void 0===c||void 0!==r[a].fe&&void 0!==r[a].fe[c])throw new L(`Cannot register public name '${a}' twice`);Gb(r,a,a);
if(r[a].fe.hasOwnProperty(c))throw new L(`Cannot register multiple overloads of a function with the same number of arguments (${c})!`);r[a].fe[c]=b}else r[a]=b,r[a].oe=c},Ib=a=>{a=a.replace(/[^a-zA-Z0-9_]/g,"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?`_${a}`:a};function Jb(a,b,c,e,f,k,n,l){this.name=a;this.constructor=b;this.se=c;this.ne=e;this.ge=f;this.ff=k;this.ye=n;this.cf=l;this.pf=[]}
var Kb=(a,b,c)=>{for(;b!==c;){if(!b.ye)throw new L(`Expected null or instance of ${c.name}, got an instance of ${b.name}`);a=b.ye(a);b=b.ge}return a};function Lb(a,b){if(null===b){if(this.Ke)throw new L(`null is not a valid ${this.name}`);return 0}if(!b.Yd)throw new L(`Cannot pass "${Mb(b)}" as a ${this.name}`);if(!b.Yd.ae)throw new L(`Cannot pass deleted object as a pointer of type ${this.name}`);return Kb(b.Yd.ae,b.Yd.de.be,this.be)}
function Nb(a,b){if(null===b){if(this.Ke)throw new L(`null is not a valid ${this.name}`);if(this.De){var c=this.Le();null!==a&&a.push(this.ne,c);return c}return 0}if(!b||!b.Yd)throw new L(`Cannot pass "${Mb(b)}" as a ${this.name}`);if(!b.Yd.ae)throw new L(`Cannot pass deleted object as a pointer of type ${this.name}`);if(!this.Ce&&b.Yd.de.Ce)throw new L(`Cannot convert argument of type ${b.Yd.ie?b.Yd.ie.name:b.Yd.de.name} to parameter type ${this.name}`);c=Kb(b.Yd.ae,b.Yd.de.be,this.be);if(this.De){if(void 0===
b.Yd.ee)throw new L("Passing raw pointer to smart pointer is illegal");switch(this.uf){case 0:if(b.Yd.ie===this)c=b.Yd.ee;else throw new L(`Cannot convert argument of type ${b.Yd.ie?b.Yd.ie.name:b.Yd.de.name} to parameter type ${this.name}`);break;case 1:c=b.Yd.ee;break;case 2:if(b.Yd.ie===this)c=b.Yd.ee;else{var e=b.clone();c=this.qf(c,Ob(()=>e["delete"]()));null!==a&&a.push(this.ne,c)}break;default:throw new L("Unsupporting sharing policy");}}return c}
function Pb(a,b){if(null===b){if(this.Ke)throw new L(`null is not a valid ${this.name}`);return 0}if(!b.Yd)throw new L(`Cannot pass "${Mb(b)}" as a ${this.name}`);if(!b.Yd.ae)throw new L(`Cannot pass deleted object as a pointer of type ${this.name}`);if(b.Yd.de.Ce)throw new L(`Cannot convert argument of type ${b.Yd.de.name} to parameter type ${this.name}`);return Kb(b.Yd.ae,b.Yd.de.be,this.be)}
function Qb(a,b,c,e,f,k,n,l,p,v,w){this.name=a;this.be=b;this.Ke=c;this.Ce=e;this.De=f;this.nf=k;this.uf=n;this.Se=l;this.Le=p;this.qf=v;this.ne=w;f||void 0!==b.ge?this.toWireType=Nb:(this.toWireType=e?Lb:Pb,this.ke=null)}
var Rb=(a,b,c)=>{if(!r.hasOwnProperty(a))throw new kb("Replacing nonexistent public symbol");void 0!==r[a].fe&&void 0!==c?r[a].fe[c]=b:(r[a]=b,r[a].oe=c)},N,Sb=(a,b,c=[])=>{a.includes("j")?(a=a.replace(/p/g,"i"),b=(0,r["dynCall_"+a])(b,...c)):b=N.get(b)(...c);return b},Tb=(a,b)=>(...c)=>Sb(a,b,c),O=(a,b)=>{a=K(a);var c=a.includes("j")?Tb(a,b):N.get(b);if("function"!=typeof c)throw new L(`unknown function pointer with signature ${a}: ${b}`);return c},ac,dc=a=>{a=bc(a);var b=K(a);cc(a);return b},ec=
(a,b)=>{function c(k){f[k]||ib[k]||(jb[k]?jb[k].forEach(c):(e.push(k),f[k]=!0))}var e=[],f={};b.forEach(c);throw new ac(`${a}: `+e.map(dc).join([", "]));};function fc(a){for(var b=1;b<a.length;++b)if(null!==a[b]&&void 0===a[b].ke)return!0;return!1}
function gc(a,b,c,e,f){var k=b.length;if(2>k)throw new L("argTypes array size mismatch! Must at least get return value and 'this' types!");var n=null!==b[1]&&null!==c,l=fc(b),p="void"!==b[0].name,v=k-2,w=Array(v),A=[],D=[];return Fb(a,function(...I){D.length=0;A.length=n?2:1;A[0]=f;if(n){var Q=b[1].toWireType(D,this);A[1]=Q}for(var P=0;P<v;++P)w[P]=b[P+2].toWireType(D,I[P]),A.push(w[P]);I=e(...A);if(l)fb(D);else for(P=n?1:2;P<b.length;P++){var aa=1===P?Q:w[P-2];null!==b[P].ke&&b[P].ke(aa)}Q=p?b[0].fromWireType(I):
void 0;return Q})}
var hc=(a,b)=>{for(var c=[],e=0;e<a;e++)c.push(H[b+4*e>>2]);return c},ic=a=>{a=a.trim();const b=a.indexOf("(");return-1!==b?a.substr(0,b):a},jc=[],kc=[],lc=a=>{9<a&&0===--kc[a+1]&&(kc[a]=void 0,jc.push(a))},mc=a=>{if(!a)throw new L("Cannot use deleted val. handle = "+a);return kc[a]},Ob=a=>{switch(a){case void 0:return 2;case null:return 4;case !0:return 6;case !1:return 8;default:const b=jc.pop()||kc.length;kc[b]=a;kc[b+1]=1;return b}},nc={name:"emscripten::val",fromWireType:a=>{var b=mc(a);lc(a);
return b},toWireType:(a,b)=>Ob(b),je:8,readValueFromPointer:gb,ke:null},oc=(a,b,c)=>{switch(b){case 1:return c?function(e){return this.fromWireType(Ca[e])}:function(e){return this.fromWireType(B[e])};case 2:return c?function(e){return this.fromWireType(Da[e>>1])}:function(e){return this.fromWireType(Fa[e>>1])};case 4:return c?function(e){return this.fromWireType(E[e>>2])}:function(e){return this.fromWireType(H[e>>2])};default:throw new TypeError(`invalid integer width (${b}): ${a}`);}},pc=(a,b)=>
{var c=ib[a];if(void 0===c)throw a=`${b} has unknown type ${dc(a)}`,new L(a);return c},Mb=a=>{if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a},qc=(a,b)=>{switch(b){case 4:return function(c){return this.fromWireType(J[c>>2])};case 8:return function(c){return this.fromWireType(Ga[c>>3])};default:throw new TypeError(`invalid float width (${b}): ${a}`);}},rc=(a,b,c)=>{switch(b){case 1:return c?e=>Ca[e]:e=>B[e];case 2:return c?e=>Da[e>>1]:e=>Fa[e>>
1];case 4:return c?e=>E[e>>2]:e=>H[e>>2];default:throw new TypeError(`invalid integer width (${b}): ${a}`);}},ra=(a,b,c)=>{var e=B;if(!(0<c))return 0;var f=b;c=b+c-1;for(var k=0;k<a.length;++k){var n=a.charCodeAt(k);if(55296<=n&&57343>=n){var l=a.charCodeAt(++k);n=65536+((n&1023)<<10)|l&1023}if(127>=n){if(b>=c)break;e[b++]=n}else{if(2047>=n){if(b+1>=c)break;e[b++]=192|n>>6}else{if(65535>=n){if(b+2>=c)break;e[b++]=224|n>>12}else{if(b+3>=c)break;e[b++]=240|n>>18;e[b++]=128|n>>12&63}e[b++]=128|n>>6&
63}e[b++]=128|n&63}}e[b]=0;return b-f},qa=a=>{for(var b=0,c=0;c<a.length;++c){var e=a.charCodeAt(c);127>=e?b++:2047>=e?b+=2:55296<=e&&57343>=e?(b+=4,++c):b+=3}return b},sc="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,tc=(a,b)=>{var c=a>>1;for(var e=c+b/2;!(c>=e)&&Fa[c];)++c;c<<=1;if(32<c-a&&sc)return sc.decode(B.subarray(a,c));c="";for(e=0;!(e>=b/2);++e){var f=Da[a+2*e>>1];if(0==f)break;c+=String.fromCharCode(f)}return c},uc=(a,b,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)Da[b>>1]=a.charCodeAt(f),b+=2;Da[b>>1]=0;return b-e},vc=a=>2*a.length,wc=(a,b)=>{for(var c=0,e="";!(c>=b/4);){var f=E[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},xc=(a,b,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 n=a.charCodeAt(++f);k=65536+((k&1023)<<10)|n&1023}E[b>>2]=k;b+=
4;if(b+4>c)break}E[b>>2]=0;return b-e},yc=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},zc=(a,b,c)=>{var e=[];a=a.toWireType(e,c);e.length&&(H[b>>2]=Ob(e));return a},Ac=[],Bc={},Cc=a=>{var b=Bc[a];return void 0===b?K(a):b},Dc=()=>{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.");},Ec=a=>{var b=Ac.length;Ac.push(a);return b},Fc=(a,b)=>{for(var c=Array(a),e=0;e<a;++e)c[e]=pc(H[b+4*e>>2],"parameter "+e);return c},Gc=Reflect.construct,R,Hc=a=>{var b=a.getExtension("ANGLE_instanced_arrays");b&&(a.vertexAttribDivisor=(c,e)=>b.vertexAttribDivisorANGLE(c,
e),a.drawArraysInstanced=(c,e,f,k)=>b.drawArraysInstancedANGLE(c,e,f,k),a.drawElementsInstanced=(c,e,f,k,n)=>b.drawElementsInstancedANGLE(c,e,f,k,n))},Ic=a=>{var b=a.getExtension("OES_vertex_array_object");b&&(a.createVertexArray=()=>b.createVertexArrayOES(),a.deleteVertexArray=c=>b.deleteVertexArrayOES(c),a.bindVertexArray=c=>b.bindVertexArrayOES(c),a.isVertexArray=c=>b.isVertexArrayOES(c))},Jc=a=>{var b=a.getExtension("WEBGL_draw_buffers");b&&(a.drawBuffers=(c,e)=>b.drawBuffersWEBGL(c,e))},Kc=a=>
{var b="ANGLE_instanced_arrays EXT_blend_minmax EXT_disjoint_timer_query EXT_frag_depth EXT_shader_texture_lod EXT_sRGB OES_element_index_uint OES_fbo_render_mipmap OES_standard_derivatives OES_texture_float OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_depth_texture WEBGL_draw_buffers EXT_color_buffer_float EXT_conservative_depth EXT_disjoint_timer_query_webgl2 EXT_texture_norm16 NV_shader_noperspective_interpolation WEBGL_clip_cull_distance EXT_clip_control EXT_color_buffer_half_float EXT_depth_clamp EXT_float_blend EXT_polygon_offset_clamp EXT_texture_compression_bptc EXT_texture_compression_rgtc EXT_texture_filter_anisotropic KHR_parallel_shader_compile OES_texture_float_linear WEBGL_blend_func_extended WEBGL_compressed_texture_astc WEBGL_compressed_texture_etc WEBGL_compressed_texture_etc1 WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context WEBGL_multi_draw WEBGL_polygon_mode".split(" ");
return(a.getSupportedExtensions()||[]).filter(c=>b.includes(c))},Lc=1,Mc=[],Nc=[],Oc=[],Pc=[],ka=[],Qc=[],Rc=[],pa=[],Sc=[],Tc=[],Uc=[],Wc={},Xc={},Yc=4,Zc=0,ja=a=>{for(var b=Lc++,c=a.length;c<b;c++)a[c]=null;return b},$c=(a,b,c,e)=>{for(var f=0;f<a;f++){var k=R[c](),n=k&&ja(e);k?(k.name=n,e[n]=k):V||=1282;E[b+4*f>>2]=n}},na=(a,b)=>{a.Ne||(a.Ne=a.getContext,a.getContext=function(e,f){f=a.Ne(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?ad(c,b):0},ad=(a,b)=>{var c=ja(pa),e={handle:c,attributes:b,version:b.majorVersion,le:a};a.canvas&&(a.canvas.Ve=e);pa[c]=e;("undefined"==typeof b.df||b.df)&&bd(e);return c},oa=a=>{z=pa[a];r.vf=R=z?.le;return!(a&&!R)},bd=a=>{a||=z;if(!a.mf){a.mf=!0;var b=a.le;b.zf=b.getExtension("WEBGL_multi_draw");b.xf=b.getExtension("EXT_polygon_offset_clamp");b.wf=b.getExtension("EXT_clip_control");b.Bf=b.getExtension("WEBGL_polygon_mode");Hc(b);Ic(b);Jc(b);b.Pe=b.getExtension("WEBGL_draw_instanced_base_vertex_base_instance");
b.Re=b.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance");2<=a.version&&(b.me=b.getExtension("EXT_disjoint_timer_query_webgl2"));if(2>a.version||!b.me)b.me=b.getExtension("EXT_disjoint_timer_query");Kc(b).forEach(c=>{c.includes("lose_context")||c.includes("debug")||b.getExtension(c)})}},z,V,cd=(a,b)=>{R.bindFramebuffer(a,Oc[b])},dd=a=>{R.bindVertexArray(Rc[a])},ed=a=>R.clear(a),fd=(a,b,c,e)=>R.clearColor(a,b,c,e),gd=a=>R.clearStencil(a),hd=(a,b)=>{for(var c=0;c<a;c++){var e=E[b+
4*c>>2];R.deleteVertexArray(Rc[e]);Rc[e]=null}},jd=[],kd=(a,b)=>{$c(a,b,"createVertexArray",Rc)};function ld(){var a=Kc(R);return a=a.concat(a.map(b=>"GL_"+b))}
var md=(a,b,c)=>{if(b){var e=void 0;switch(a){case 36346:e=1;break;case 36344:0!=c&&1!=c&&(V||=1280);return;case 34814:case 36345:e=0;break;case 34466:var f=R.getParameter(34467);e=f?f.length:0;break;case 33309:if(2>z.version){V||=1282;return}e=ld().length;break;case 33307:case 33308:if(2>z.version){V||=1280;return}e=33307==a?3:0}if(void 0===e)switch(f=R.getParameter(a),typeof f){case "number":e=f;break;case "boolean":e=f?1:0;break;case "string":V||=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:V||=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:E[b+4*a>>2]=f[a];break;case 2:J[b+4*a>>2]=f[a];break;case 4:Ca[b+a]=f[a]?1:0}return}try{e=f.name|0}catch(k){V||=1280;ya(`GL_INVALID_ENUM in glGet${c}v: Unknown object returned from WebGL getParameter(${a})! (error: ${k})`);return}}break;default:V||=1280;ya(`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;H[b>>2]=c;H[b+4>>2]=(c-H[b>>2])/4294967296;break;case 0:E[b>>2]=e;break;case 2:J[b>>2]=e;break;case 4:Ca[b]=e?1:0}}else V||=1281},nd=(a,b)=>md(a,b,0),od=(a,b,c)=>{if(c){a=Sc[a];b=2>z.version?R.me.getQueryObjectEXT(a,b):R.getQueryParameter(a,b);var e;"boolean"==typeof b?e=b?1:0:e=b;H[c>>2]=e;H[c+4>>2]=(e-H[c>>2])/4294967296}else V||=1281},qd=a=>{var b=qa(a)+1,c=pd(b);c&&ra(a,c,b);return c},rd=a=>{var b=Wc[a];if(!b){switch(a){case 7939:b=qd(ld().join(" "));break;case 7936:case 7937:case 37445:case 37446:(b=
R.getParameter(a))||(V||=1280);b=b?qd(b):0;break;case 7938:b=R.getParameter(7938);var c=`OpenGL ES 2.0 (${b})`;2<=z.version&&(c=`OpenGL ES 3.0 (${b})`);b=qd(c);break;case 35724:b=R.getParameter(35724);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=qd(b);break;default:V||=1280}Wc[a]=b}return b},sd=(a,b)=>{if(2>z.version)return V||=1282,0;var c=Xc[a];if(c)return 0>b||b>=c.length?(V||=1281,0):c[b];switch(a){case 7939:return c=
ld().map(qd),c=Xc[a]=c,0>b||b>=c.length?(V||=1281,0):c[b];default:return V||=1280,0}},td=a=>"]"==a.slice(-1)&&a.lastIndexOf("["),ud=a=>{a-=5120;return 0==a?Ca:1==a?B:2==a?Da:4==a?E:6==a?J:5==a||28922==a||28520==a||30779==a||30782==a?H:Fa},vd=(a,b,c,e,f)=>{a=ud(a);b=e*((Zc||c)*({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[b-6402]||1)*a.BYTES_PER_ELEMENT+Yc-1&-Yc);return a.subarray(f>>>31-Math.clz32(a.BYTES_PER_ELEMENT),f+b>>>31-Math.clz32(a.BYTES_PER_ELEMENT))},Y=a=>{var b=R.bf;if(b){var c=
b.xe[a];"number"==typeof c&&(b.xe[a]=c=R.getUniformLocation(b,b.Te[a]+(0<c?`[${c}]`:"")));return c}V||=1282},wd=[],xd=[],yd={},Ad=()=>{if(!zd){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",_:"./this.program"},b;for(b in yd)void 0===yd[b]?delete a[b]:a[b]=yd[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);zd=c}return zd},zd,Bd=[null,[],[]];
kb=r.InternalError=class extends Error{constructor(a){super(a);this.name="InternalError"}};for(var Cd=Array(256),Dd=0;256>Dd;++Dd)Cd[Dd]=String.fromCharCode(Dd);nb=Cd;L=r.BindingError=class extends Error{constructor(a){super(a);this.name="BindingError"}};
Object.assign(Eb.prototype,{isAliasOf:function(a){if(!(this instanceof Eb&&a instanceof Eb))return!1;var b=this.Yd.de.be,c=this.Yd.ae;a.Yd=a.Yd;var e=a.Yd.de.be;for(a=a.Yd.ae;b.ge;)c=b.ye(c),b=b.ge;for(;e.ge;)a=e.ye(a),e=e.ge;return b===e&&c===a},clone:function(){this.Yd.ae||pb(this);if(this.Yd.we)return this.Yd.count.value+=1,this;var a=Bb,b=Object,c=b.create,e=Object.getPrototypeOf(this),f=this.Yd;a=a(c.call(b,e,{Yd:{value:{count:f.count,ve:f.ve,we:f.we,ae:f.ae,de:f.de,ee:f.ee,ie:f.ie}}}));a.Yd.count.value+=
1;a.Yd.ve=!1;return a},["delete"](){this.Yd.ae||pb(this);if(this.Yd.ve&&!this.Yd.we)throw new L("Object already scheduled for deletion");rb(this);var a=this.Yd;--a.count.value;0===a.count.value&&(a.ee?a.ie.ne(a.ee):a.de.be.ne(a.ae));this.Yd.we||(this.Yd.ee=void 0,this.Yd.ae=void 0)},isDeleted:function(){return!this.Yd.ae},deleteLater:function(){this.Yd.ae||pb(this);if(this.Yd.ve&&!this.Yd.we)throw new L("Object already scheduled for deletion");Db.push(this);this.Yd.ve=!0;return this}});
Object.assign(Qb.prototype,{gf(a){this.Se&&(a=this.Se(a));return a},Oe(a){this.ne?.(a)},je:8,readValueFromPointer:gb,fromWireType:function(a){function b(){return this.De?Cb(this.be.se,{de:this.nf,ae:c,ie:this,ee:a}):Cb(this.be.se,{de:this,ae:a})}var c=this.gf(a);if(!c)return this.Oe(a),null;var e=Ab(this.be,c);if(void 0!==e){if(0===e.Yd.count.value)return e.Yd.ae=c,e.Yd.ee=a,e.clone();e=e.clone();this.Oe(a);return e}e=this.be.ff(c);e=yb[e];if(!e)return b.call(this);e=this.Ce?e.af:e.pointerType;var f=
sb(c,this.be,e.be);return null===f?b.call(this):this.De?Cb(e.be.se,{de:e,ae:f,ie:this,ee:a}):Cb(e.be.se,{de:e,ae:f})}});ac=r.UnboundTypeError=((a,b)=>{var c=Fb(b,function(e){this.name=b;this.message=e;e=Error(e).stack;void 0!==e&&(this.stack=this.toString()+"\n"+e.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(a.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`};return c})(Error,"UnboundTypeError");
kc.push(0,1,void 0,1,null,1,!0,1,!1,1);r.count_emval_handles=()=>kc.length/2-5-jc.length;for(var Ed=0;32>Ed;++Ed)jd.push(Array(Ed));var Fd=new Float32Array(288);for(Ed=0;288>=Ed;++Ed)wd[Ed]=Fd.subarray(0,Ed);var Gd=new Int32Array(288);for(Ed=0;288>=Ed;++Ed)xd[Ed]=Gd.subarray(0,Ed);
var Vd={F:(a,b,c)=>{var e=new Ya(a);H[e.ae+16>>2]=0;H[e.ae+4>>2]=b;H[e.ae+8>>2]=c;Za=a;bb++;throw Za;},V:function(){return 0},vd:()=>{},ud:function(){return 0},td:()=>{},sd:()=>{},U:function(){},rd:()=>{},nd:()=>{Pa("")},B:a=>{var b=eb[a];delete eb[a];var c=b.Le,e=b.ne,f=b.Qe,k=f.map(n=>n.kf).concat(f.map(n=>n.sf));mb([a],k,n=>{var l={};f.forEach((p,v)=>{var w=n[v],A=p.hf,D=p.jf,I=n[v+f.length],Q=p.rf,P=p.tf;l[p.ef]={read:aa=>w.fromWireType(A(D,aa)),write:(aa,la)=>{var X=[];Q(P,aa,I.toWireType(X,
la));fb(X)}}});return[{name:b.name,fromWireType:p=>{var v={},w;for(w in l)v[w]=l[w].read(p);e(p);return v},toWireType:(p,v)=>{for(var w in l)if(!(w in v))throw new TypeError(`Missing field: "${w}"`);var A=c();for(w in l)l[w].write(A,v[w]);null!==p&&p.push(e,A);return A},je:8,readValueFromPointer:gb,ke:e}]})},Y:()=>{},md:(a,b,c,e)=>{b=K(b);lb(a,{name:b,fromWireType:function(f){return!!f},toWireType:function(f,k){return k?c:e},je:8,readValueFromPointer:function(f){return this.fromWireType(B[f])},ke:null})},
j:(a,b,c,e,f,k,n,l,p,v,w,A,D)=>{w=K(w);k=O(f,k);l&&=O(n,l);v&&=O(p,v);D=O(A,D);var I=Ib(w);Hb(I,function(){ec(`Cannot construct ${w} due to unbound types`,[e])});mb([a,b,c],e?[e]:[],Q=>{Q=Q[0];if(e){var P=Q.be;var aa=P.se}else aa=Eb.prototype;Q=Fb(w,function(...Ea){if(Object.getPrototypeOf(this)!==la)throw new L("Use 'new' to construct "+w);if(void 0===X.pe)throw new L(w+" has no accessible constructor");var ba=X.pe[Ea.length];if(void 0===ba)throw new L(`Tried to invoke ctor of ${w} with invalid number of parameters (${Ea.length}) - expected (${Object.keys(X.pe).toString()}) parameters instead!`);
return ba.apply(this,Ea)});var la=Object.create(aa,{constructor:{value:Q}});Q.prototype=la;var X=new Jb(w,Q,la,D,P,k,l,v);if(X.ge){var ha;(ha=X.ge).ze??(ha.ze=[]);X.ge.ze.push(X)}P=new Qb(w,X,!0,!1,!1);ha=new Qb(w+"*",X,!1,!1,!1);aa=new Qb(w+" const*",X,!1,!0,!1);yb[a]={pointerType:ha,af:aa};Rb(I,Q);return[P,ha,aa]})},e:(a,b,c,e,f,k,n)=>{var l=hc(c,e);b=K(b);b=ic(b);k=O(f,k);mb([],[a],p=>{function v(){ec(`Cannot call ${w} due to unbound types`,l)}p=p[0];var w=`${p.name}.${b}`;b.startsWith("@@")&&
(b=Symbol[b.substring(2)]);var A=p.be.constructor;void 0===A[b]?(v.oe=c-1,A[b]=v):(Gb(A,b,w),A[b].fe[c-1]=v);mb([],l,D=>{D=[D[0],null].concat(D.slice(1));D=gc(w,D,null,k,n);void 0===A[b].fe?(D.oe=c-1,A[b]=D):A[b].fe[c-1]=D;if(p.be.ze)for(const I of p.be.ze)I.constructor.hasOwnProperty(b)||(I.constructor[b]=D);return[]});return[]})},x:(a,b,c,e,f,k)=>{var n=hc(b,c);f=O(e,f);mb([],[a],l=>{l=l[0];var p=`constructor ${l.name}`;void 0===l.be.pe&&(l.be.pe=[]);if(void 0!==l.be.pe[b-1])throw new L(`Cannot register multiple constructors with identical number of parameters (${b-
1}) for class '${l.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);l.be.pe[b-1]=()=>{ec(`Cannot construct ${l.name} due to unbound types`,n)};mb([],n,v=>{v.splice(1,0,null);l.be.pe[b-1]=gc(p,v,null,f,k);return[]});return[]})},a:(a,b,c,e,f,k,n,l)=>{var p=hc(c,e);b=K(b);b=ic(b);k=O(f,k);mb([],[a],v=>{function w(){ec(`Cannot call ${A} due to unbound types`,p)}v=v[0];var A=`${v.name}.${b}`;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);l&&v.be.pf.push(b);
var D=v.be.se,I=D[b];void 0===I||void 0===I.fe&&I.className!==v.name&&I.oe===c-2?(w.oe=c-2,w.className=v.name,D[b]=w):(Gb(D,b,A),D[b].fe[c-2]=w);mb([],p,Q=>{Q=gc(A,Q,v,k,n);void 0===D[b].fe?(Q.oe=c-2,D[b]=Q):D[b].fe[c-2]=Q;return[]});return[]})},q:(a,b,c)=>{a=K(a);mb([],[b],e=>{e=e[0];r[a]=e.fromWireType(c);return[]})},ld:a=>lb(a,nc),i:(a,b,c,e)=>{function f(){}b=K(b);f.values={};lb(a,{name:b,constructor:f,fromWireType:function(k){return this.constructor.values[k]},toWireType:(k,n)=>n.value,je:8,
readValueFromPointer:oc(b,c,e),ke:null});Hb(b,f)},b:(a,b,c)=>{var e=pc(a,"enum");b=K(b);a=e.constructor;e=Object.create(e.constructor.prototype,{value:{value:c},constructor:{value:Fb(`${e.name}_${b}`,function(){})}});a.values[c]=e;a[b]=e},S:(a,b,c)=>{b=K(b);lb(a,{name:b,fromWireType:e=>e,toWireType:(e,f)=>f,je:8,readValueFromPointer:qc(b,c),ke:null})},w:(a,b,c,e,f,k)=>{var n=hc(b,c);a=K(a);a=ic(a);f=O(e,f);Hb(a,function(){ec(`Cannot call ${a} due to unbound types`,n)},b-1);mb([],n,l=>{l=[l[0],null].concat(l.slice(1));
Rb(a,gc(a,l,null,f,k),b-1);return[]})},C:(a,b,c,e,f)=>{b=K(b);-1===f&&(f=4294967295);f=l=>l;if(0===e){var k=32-8*c;f=l=>l<<k>>>k}var n=b.includes("unsigned")?function(l,p){return p>>>0}:function(l,p){return p};lb(a,{name:b,fromWireType:f,toWireType:n,je:8,readValueFromPointer:rc(b,c,0!==e),ke:null})},p:(a,b,c)=>{function e(k){return new f(Ca.buffer,H[k+4>>2],H[k>>2])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=K(c);lb(a,{name:c,fromWireType:e,
je:8,readValueFromPointer:e},{lf:!0})},o:(a,b,c,e,f,k,n,l,p,v,w,A)=>{c=K(c);k=O(f,k);l=O(n,l);v=O(p,v);A=O(w,A);mb([a],[b],D=>{D=D[0];return[new Qb(c,D.be,!1,!1,!0,D,e,k,l,v,A)]})},R:(a,b)=>{b=K(b);var c="std::string"===b;lb(a,{name:b,fromWireType:function(e){var f=H[e>>2],k=e+4;if(c)for(var n=k,l=0;l<=f;++l){var p=k+l;if(l==f||0==B[p]){n=n?db(B,n,p-n):"";if(void 0===v)var v=n;else v+=String.fromCharCode(0),v+=n;n=p+1}}else{v=Array(f);for(l=0;l<f;++l)v[l]=String.fromCharCode(B[k+l]);v=v.join("")}cc(e);
return v},toWireType:function(e,f){f instanceof ArrayBuffer&&(f=new Uint8Array(f));var k="string"==typeof f;if(!(k||f instanceof Uint8Array||f instanceof Uint8ClampedArray||f instanceof Int8Array))throw new L("Cannot pass non-string to std::string");var n=c&&k?qa(f):f.length;var l=pd(4+n+1),p=l+4;H[l>>2]=n;if(c&&k)ra(f,p,n+1);else if(k)for(k=0;k<n;++k){var v=f.charCodeAt(k);if(255<v)throw cc(p),new L("String has UTF-16 code units that do not fit in 8 bits");B[p+k]=v}else for(k=0;k<n;++k)B[p+k]=f[k];
null!==e&&e.push(cc,l);return l},je:8,readValueFromPointer:gb,ke(e){cc(e)}})},M:(a,b,c)=>{c=K(c);if(2===b){var e=tc;var f=uc;var k=vc;var n=l=>Fa[l>>1]}else 4===b&&(e=wc,f=xc,k=yc,n=l=>H[l>>2]);lb(a,{name:c,fromWireType:l=>{for(var p=H[l>>2],v,w=l+4,A=0;A<=p;++A){var D=l+4+A*b;if(A==p||0==n(D))w=e(w,D-w),void 0===v?v=w:(v+=String.fromCharCode(0),v+=w),w=D+b}cc(l);return v},toWireType:(l,p)=>{if("string"!=typeof p)throw new L(`Cannot pass non-string to C++ string type ${c}`);var v=k(p),w=pd(4+v+b);
H[w>>2]=v/b;f(p,w+4,v+b);null!==l&&l.push(cc,w);return w},je:8,readValueFromPointer:gb,ke(l){cc(l)}})},A:(a,b,c,e,f,k)=>{eb[a]={name:K(b),Le:O(c,e),ne:O(f,k),Qe:[]}},d:(a,b,c,e,f,k,n,l,p,v)=>{eb[a].Qe.push({ef:K(b),kf:c,hf:O(e,f),jf:k,sf:n,rf:O(l,p),tf:v})},kd:(a,b)=>{b=K(b);lb(a,{yf:!0,name:b,je:0,fromWireType:()=>{},toWireType:()=>{}})},jd:()=>1,id:()=>{throw Infinity;},E:(a,b,c)=>{a=mc(a);b=pc(b,"emval::as");return zc(b,c,a)},L:(a,b,c,e)=>{a=Ac[a];b=mc(b);return a(null,b,c,e)},s:(a,b,c,e,f)=>{a=
Ac[a];b=mc(b);c=Cc(c);return a(b,b[c],e,f)},c:lc,K:a=>{if(0===a)return Ob(Dc());a=Cc(a);return Ob(Dc()[a])},n:(a,b,c)=>{var e=Fc(a,b),f=e.shift();a--;var k=Array(a);b=`methodCaller<(${e.map(n=>n.name).join(", ")}) => ${f.name}>`;return Ec(Fb(b,(n,l,p,v)=>{for(var w=0,A=0;A<a;++A)k[A]=e[A].readValueFromPointer(v+w),w+=e[A].je;n=1===c?Gc(l,k):l.apply(n,k);return zc(f,p,n)}))},z:(a,b)=>{a=mc(a);b=mc(b);return Ob(a[b])},H:a=>{9<a&&(kc[a+1]+=1)},G:()=>Ob([]),f:a=>Ob(Cc(a)),D:()=>Ob({}),hd:a=>{a=mc(a);
return!a},k:a=>{var b=mc(a);fb(b);lc(a)},h:(a,b,c)=>{a=mc(a);b=mc(b);c=mc(c);a[b]=c},g:(a,b)=>{a=pc(a,"_emval_take_value");a=a.readValueFromPointer(b);return Ob(a)},X:function(){return-52},W:function(){},gd:(a,b,c,e)=>{var f=(new Date).getFullYear(),k=(new Date(f,0,1)).getTimezoneOffset();f=(new Date(f,6,1)).getTimezoneOffset();H[a>>2]=60*Math.max(k,f);E[b>>2]=Number(k!=f);b=n=>{var l=Math.abs(n);return`UTC${0<=n?"-":"+"}${String(Math.floor(l/60)).padStart(2,"0")}${String(l%60).padStart(2,"0")}`};
a=b(k);b=b(f);f<k?(ra(a,c,17),ra(b,e,17)):(ra(a,e,17),ra(b,c,17))},fd:()=>performance.now(),ed:a=>R.activeTexture(a),dd:(a,b)=>{R.attachShader(Nc[a],Qc[b])},cd:(a,b)=>{R.beginQuery(a,Sc[b])},bd:(a,b)=>{R.me.beginQueryEXT(a,Sc[b])},ad:(a,b,c)=>{R.bindAttribLocation(Nc[a],b,c?db(B,c):"")},$c:(a,b)=>{35051==a?R.Ie=b:35052==a&&(R.re=b);R.bindBuffer(a,Mc[b])},_c:cd,Zc:(a,b)=>{R.bindRenderbuffer(a,Pc[b])},Yc:(a,b)=>{R.bindSampler(a,Tc[b])},Xc:(a,b)=>{R.bindTexture(a,ka[b])},Wc:dd,Vc:dd,Uc:(a,b,c,e)=>R.blendColor(a,
b,c,e),Tc:a=>R.blendEquation(a),Sc:(a,b)=>R.blendFunc(a,b),Rc:(a,b,c,e,f,k,n,l,p,v)=>R.blitFramebuffer(a,b,c,e,f,k,n,l,p,v),Qc:(a,b,c,e)=>{2<=z.version?c&&b?R.bufferData(a,B,e,c,b):R.bufferData(a,b,e):R.bufferData(a,c?B.subarray(c,c+b):b,e)},Pc:(a,b,c,e)=>{2<=z.version?c&&R.bufferSubData(a,b,B,e,c):R.bufferSubData(a,b,B.subarray(e,e+c))},Oc:a=>R.checkFramebufferStatus(a),Nc:ed,Mc:fd,Lc:gd,Kc:(a,b,c,e)=>R.clientWaitSync(Uc[a],b,(c>>>0)+4294967296*e),Jc:(a,b,c,e)=>{R.colorMask(!!a,!!b,!!c,!!e)},Ic:a=>
{R.compileShader(Qc[a])},Hc:(a,b,c,e,f,k,n,l)=>{2<=z.version?R.re||!n?R.compressedTexImage2D(a,b,c,e,f,k,n,l):R.compressedTexImage2D(a,b,c,e,f,k,B,l,n):R.compressedTexImage2D(a,b,c,e,f,k,B.subarray(l,l+n))},Gc:(a,b,c,e,f,k,n,l,p)=>{2<=z.version?R.re||!l?R.compressedTexSubImage2D(a,b,c,e,f,k,n,l,p):R.compressedTexSubImage2D(a,b,c,e,f,k,n,B,p,l):R.compressedTexSubImage2D(a,b,c,e,f,k,n,B.subarray(p,p+l))},Fc:(a,b,c,e,f)=>R.copyBufferSubData(a,b,c,e,f),Ec:(a,b,c,e,f,k,n,l)=>R.copyTexSubImage2D(a,b,c,
e,f,k,n,l),Dc:()=>{var a=ja(Nc),b=R.createProgram();b.name=a;b.Ge=b.Ee=b.Fe=0;b.Me=1;Nc[a]=b;return a},Cc:a=>{var b=ja(Qc);Qc[b]=R.createShader(a);return b},Bc:a=>R.cullFace(a),Ac:(a,b)=>{for(var c=0;c<a;c++){var e=E[b+4*c>>2],f=Mc[e];f&&(R.deleteBuffer(f),f.name=0,Mc[e]=null,e==R.Ie&&(R.Ie=0),e==R.re&&(R.re=0))}},zc:(a,b)=>{for(var c=0;c<a;++c){var e=E[b+4*c>>2],f=Oc[e];f&&(R.deleteFramebuffer(f),f.name=0,Oc[e]=null)}},yc:a=>{if(a){var b=Nc[a];b?(R.deleteProgram(b),b.name=0,Nc[a]=null):V||=1281}},
xc:(a,b)=>{for(var c=0;c<a;c++){var e=E[b+4*c>>2],f=Sc[e];f&&(R.deleteQuery(f),Sc[e]=null)}},wc:(a,b)=>{for(var c=0;c<a;c++){var e=E[b+4*c>>2],f=Sc[e];f&&(R.me.deleteQueryEXT(f),Sc[e]=null)}},vc:(a,b)=>{for(var c=0;c<a;c++){var e=E[b+4*c>>2],f=Pc[e];f&&(R.deleteRenderbuffer(f),f.name=0,Pc[e]=null)}},uc:(a,b)=>{for(var c=0;c<a;c++){var e=E[b+4*c>>2],f=Tc[e];f&&(R.deleteSampler(f),f.name=0,Tc[e]=null)}},tc:a=>{if(a){var b=Qc[a];b?(R.deleteShader(b),Qc[a]=null):V||=1281}},sc:a=>{if(a){var b=Uc[a];b?
(R.deleteSync(b),b.name=0,Uc[a]=null):V||=1281}},rc:(a,b)=>{for(var c=0;c<a;c++){var e=E[b+4*c>>2],f=ka[e];f&&(R.deleteTexture(f),f.name=0,ka[e]=null)}},qc:hd,pc:hd,oc:a=>{R.depthMask(!!a)},nc:a=>R.disable(a),mc:a=>{R.disableVertexAttribArray(a)},lc:(a,b,c)=>{R.drawArrays(a,b,c)},kc:(a,b,c,e)=>{R.drawArraysInstanced(a,b,c,e)},jc:(a,b,c,e,f)=>{R.Pe.drawArraysInstancedBaseInstanceWEBGL(a,b,c,e,f)},ic:(a,b)=>{for(var c=jd[a],e=0;e<a;e++)c[e]=E[b+4*e>>2];R.drawBuffers(c)},hc:(a,b,c,e)=>{R.drawElements(a,
b,c,e)},gc:(a,b,c,e,f)=>{R.drawElementsInstanced(a,b,c,e,f)},fc:(a,b,c,e,f,k,n)=>{R.Pe.drawElementsInstancedBaseVertexBaseInstanceWEBGL(a,b,c,e,f,k,n)},ec:(a,b,c,e,f,k)=>{R.drawElements(a,e,f,k)},dc:a=>R.enable(a),cc:a=>{R.enableVertexAttribArray(a)},bc:a=>R.endQuery(a),ac:a=>{R.me.endQueryEXT(a)},$b:(a,b)=>(a=R.fenceSync(a,b))?(b=ja(Uc),a.name=b,Uc[b]=a,b):0,_b:()=>R.finish(),Zb:()=>R.flush(),Yb:(a,b,c,e)=>{R.framebufferRenderbuffer(a,b,c,Pc[e])},Xb:(a,b,c,e,f)=>{R.framebufferTexture2D(a,b,c,ka[e],
f)},Wb:a=>R.frontFace(a),Vb:(a,b)=>{$c(a,b,"createBuffer",Mc)},Ub:(a,b)=>{$c(a,b,"createFramebuffer",Oc)},Tb:(a,b)=>{$c(a,b,"createQuery",Sc)},Sb:(a,b)=>{for(var c=0;c<a;c++){var e=R.me.createQueryEXT();if(!e){for(V||=1282;c<a;)E[b+4*c++>>2]=0;break}var f=ja(Sc);e.name=f;Sc[f]=e;E[b+4*c>>2]=f}},Rb:(a,b)=>{$c(a,b,"createRenderbuffer",Pc)},Qb:(a,b)=>{$c(a,b,"createSampler",Tc)},Pb:(a,b)=>{$c(a,b,"createTexture",ka)},Ob:kd,Nb:kd,Mb:a=>R.generateMipmap(a),Lb:(a,b,c)=>{c?E[c>>2]=R.getBufferParameter(a,
b):V||=1281},Kb:()=>{var a=R.getError()||V;V=0;return a},Jb:(a,b)=>md(a,b,2),Ib:(a,b,c,e)=>{a=R.getFramebufferAttachmentParameter(a,b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;E[e>>2]=a},Hb:nd,Gb:(a,b,c,e)=>{a=R.getProgramInfoLog(Nc[a]);null===a&&(a="(unknown error)");b=0<b&&e?ra(a,e,b):0;c&&(E[c>>2]=b)},Fb:(a,b,c)=>{if(c)if(a>=Lc)V||=1281;else if(a=Nc[a],35716==b)a=R.getProgramInfoLog(a),null===a&&(a="(unknown error)"),E[c>>2]=a.length+1;else if(35719==b){if(!a.Ge){var e=
R.getProgramParameter(a,35718);for(b=0;b<e;++b)a.Ge=Math.max(a.Ge,R.getActiveUniform(a,b).name.length+1)}E[c>>2]=a.Ge}else if(35722==b){if(!a.Ee)for(e=R.getProgramParameter(a,35721),b=0;b<e;++b)a.Ee=Math.max(a.Ee,R.getActiveAttrib(a,b).name.length+1);E[c>>2]=a.Ee}else if(35381==b){if(!a.Fe)for(e=R.getProgramParameter(a,35382),b=0;b<e;++b)a.Fe=Math.max(a.Fe,R.getActiveUniformBlockName(a,b).length+1);E[c>>2]=a.Fe}else E[c>>2]=R.getProgramParameter(a,b);else V||=1281},Eb:od,Db:od,Cb:(a,b,c)=>{if(c){a=
R.getQueryParameter(Sc[a],b);var e;"boolean"==typeof a?e=a?1:0:e=a;E[c>>2]=e}else V||=1281},Bb:(a,b,c)=>{if(c){a=R.me.getQueryObjectEXT(Sc[a],b);var e;"boolean"==typeof a?e=a?1:0:e=a;E[c>>2]=e}else V||=1281},Ab:(a,b,c)=>{c?E[c>>2]=R.getQuery(a,b):V||=1281},zb:(a,b,c)=>{c?E[c>>2]=R.me.getQueryEXT(a,b):V||=1281},yb:(a,b,c)=>{c?E[c>>2]=R.getRenderbufferParameter(a,b):V||=1281},xb:(a,b,c,e)=>{a=R.getShaderInfoLog(Qc[a]);null===a&&(a="(unknown error)");b=0<b&&e?ra(a,e,b):0;c&&(E[c>>2]=b)},wb:(a,b,c,e)=>
{a=R.getShaderPrecisionFormat(a,b);E[c>>2]=a.rangeMin;E[c+4>>2]=a.rangeMax;E[e>>2]=a.precision},vb:(a,b,c)=>{c?35716==b?(a=R.getShaderInfoLog(Qc[a]),null===a&&(a="(unknown error)"),E[c>>2]=a?a.length+1:0):35720==b?(a=R.getShaderSource(Qc[a]),E[c>>2]=a?a.length+1:0):E[c>>2]=R.getShaderParameter(Qc[a],b):V||=1281},ub:rd,tb:sd,sb:(a,b)=>{b=b?db(B,b):"";if(a=Nc[a]){var c=a,e=c.xe,f=c.Ue,k;if(!e){c.xe=e={};c.Te={};var n=R.getProgramParameter(c,35718);for(k=0;k<n;++k){var l=R.getActiveUniform(c,k);var p=
l.name;l=l.size;var v=td(p);v=0<v?p.slice(0,v):p;var w=c.Me;c.Me+=l;f[v]=[l,w];for(p=0;p<l;++p)e[w]=p,c.Te[w++]=v}}c=a.xe;e=0;f=b;k=td(b);0<k&&(e=parseInt(b.slice(k+1))>>>0,f=b.slice(0,k));if((f=a.Ue[f])&&e<f[0]&&(e+=f[1],c[e]=c[e]||R.getUniformLocation(a,b)))return e}else V||=1281;return-1},rb:(a,b,c)=>{for(var e=jd[b],f=0;f<b;f++)e[f]=E[c+4*f>>2];R.invalidateFramebuffer(a,e)},qb:(a,b,c,e,f,k,n)=>{for(var l=jd[b],p=0;p<b;p++)l[p]=E[c+4*p>>2];R.invalidateSubFramebuffer(a,l,e,f,k,n)},pb:a=>R.isSync(Uc[a]),
ob:a=>(a=ka[a])?R.isTexture(a):0,nb:a=>R.lineWidth(a),mb:a=>{a=Nc[a];R.linkProgram(a);a.xe=0;a.Ue={}},lb:(a,b,c,e,f,k)=>{R.Re.multiDrawArraysInstancedBaseInstanceWEBGL(a,E,b>>2,E,c>>2,E,e>>2,H,f>>2,k)},kb:(a,b,c,e,f,k,n,l)=>{R.Re.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(a,E,b>>2,c,E,e>>2,E,f>>2,E,k>>2,H,n>>2,l)},jb:(a,b)=>{3317==a?Yc=b:3314==a&&(Zc=b);R.pixelStorei(a,b)},ib:(a,b)=>{R.me.queryCounterEXT(Sc[a],b)},hb:a=>R.readBuffer(a),gb:(a,b,c,e,f,k,n)=>{if(2<=z.version)if(R.Ie)R.readPixels(a,
b,c,e,f,k,n);else{var l=ud(k);n>>>=31-Math.clz32(l.BYTES_PER_ELEMENT);R.readPixels(a,b,c,e,f,k,l,n)}else(l=vd(k,f,c,e,n))?R.readPixels(a,b,c,e,f,k,l):V||=1280},fb:(a,b,c,e)=>R.renderbufferStorage(a,b,c,e),eb:(a,b,c,e,f)=>R.renderbufferStorageMultisample(a,b,c,e,f),db:(a,b,c)=>{R.samplerParameterf(Tc[a],b,c)},cb:(a,b,c)=>{R.samplerParameteri(Tc[a],b,c)},bb:(a,b,c)=>{R.samplerParameteri(Tc[a],b,E[c>>2])},ab:(a,b,c,e)=>R.scissor(a,b,c,e),$a:(a,b,c,e)=>{for(var f="",k=0;k<b;++k){var n=(n=H[c+4*k>>2])?
db(B,n,e?H[e+4*k>>2]:void 0):"";f+=n}R.shaderSource(Qc[a],f)},_a:(a,b,c)=>R.stencilFunc(a,b,c),Za:(a,b,c,e)=>R.stencilFuncSeparate(a,b,c,e),Ya:a=>R.stencilMask(a),Xa:(a,b)=>R.stencilMaskSeparate(a,b),Wa:(a,b,c)=>R.stencilOp(a,b,c),Va:(a,b,c,e)=>R.stencilOpSeparate(a,b,c,e),Ua:(a,b,c,e,f,k,n,l,p)=>{if(2<=z.version){if(R.re){R.texImage2D(a,b,c,e,f,k,n,l,p);return}if(p){var v=ud(l);p>>>=31-Math.clz32(v.BYTES_PER_ELEMENT);R.texImage2D(a,b,c,e,f,k,n,l,v,p);return}}v=p?vd(l,n,e,f,p):null;R.texImage2D(a,
b,c,e,f,k,n,l,v)},Ta:(a,b,c)=>R.texParameterf(a,b,c),Sa:(a,b,c)=>{R.texParameterf(a,b,J[c>>2])},Ra:(a,b,c)=>R.texParameteri(a,b,c),Qa:(a,b,c)=>{R.texParameteri(a,b,E[c>>2])},Pa:(a,b,c,e,f)=>R.texStorage2D(a,b,c,e,f),Oa:(a,b,c,e,f,k,n,l,p)=>{if(2<=z.version){if(R.re){R.texSubImage2D(a,b,c,e,f,k,n,l,p);return}if(p){var v=ud(l);R.texSubImage2D(a,b,c,e,f,k,n,l,v,p>>>31-Math.clz32(v.BYTES_PER_ELEMENT));return}}p=p?vd(l,n,f,k,p):null;R.texSubImage2D(a,b,c,e,f,k,n,l,p)},Na:(a,b)=>{R.uniform1f(Y(a),b)},Ma:(a,
b,c)=>{if(2<=z.version)b&&R.uniform1fv(Y(a),J,c>>2,b);else{if(288>=b)for(var e=wd[b],f=0;f<b;++f)e[f]=J[c+4*f>>2];else e=J.subarray(c>>2,c+4*b>>2);R.uniform1fv(Y(a),e)}},La:(a,b)=>{R.uniform1i(Y(a),b)},Ka:(a,b,c)=>{if(2<=z.version)b&&R.uniform1iv(Y(a),E,c>>2,b);else{if(288>=b)for(var e=xd[b],f=0;f<b;++f)e[f]=E[c+4*f>>2];else e=E.subarray(c>>2,c+4*b>>2);R.uniform1iv(Y(a),e)}},Ja:(a,b,c)=>{R.uniform2f(Y(a),b,c)},Ia:(a,b,c)=>{if(2<=z.version)b&&R.uniform2fv(Y(a),J,c>>2,2*b);else{if(144>=b){b*=2;for(var e=
wd[b],f=0;f<b;f+=2)e[f]=J[c+4*f>>2],e[f+1]=J[c+(4*f+4)>>2]}else e=J.subarray(c>>2,c+8*b>>2);R.uniform2fv(Y(a),e)}},Ha:(a,b,c)=>{R.uniform2i(Y(a),b,c)},Ga:(a,b,c)=>{if(2<=z.version)b&&R.uniform2iv(Y(a),E,c>>2,2*b);else{if(144>=b){b*=2;for(var e=xd[b],f=0;f<b;f+=2)e[f]=E[c+4*f>>2],e[f+1]=E[c+(4*f+4)>>2]}else e=E.subarray(c>>2,c+8*b>>2);R.uniform2iv(Y(a),e)}},Fa:(a,b,c,e)=>{R.uniform3f(Y(a),b,c,e)},Ea:(a,b,c)=>{if(2<=z.version)b&&R.uniform3fv(Y(a),J,c>>2,3*b);else{if(96>=b){b*=3;for(var e=wd[b],f=0;f<
b;f+=3)e[f]=J[c+4*f>>2],e[f+1]=J[c+(4*f+4)>>2],e[f+2]=J[c+(4*f+8)>>2]}else e=J.subarray(c>>2,c+12*b>>2);R.uniform3fv(Y(a),e)}},Da:(a,b,c,e)=>{R.uniform3i(Y(a),b,c,e)},Ca:(a,b,c)=>{if(2<=z.version)b&&R.uniform3iv(Y(a),E,c>>2,3*b);else{if(96>=b){b*=3;for(var e=xd[b],f=0;f<b;f+=3)e[f]=E[c+4*f>>2],e[f+1]=E[c+(4*f+4)>>2],e[f+2]=E[c+(4*f+8)>>2]}else e=E.subarray(c>>2,c+12*b>>2);R.uniform3iv(Y(a),e)}},Ba:(a,b,c,e,f)=>{R.uniform4f(Y(a),b,c,e,f)},Aa:(a,b,c)=>{if(2<=z.version)b&&R.uniform4fv(Y(a),J,c>>2,4*
b);else{if(72>=b){var e=wd[4*b],f=J;c>>=2;b*=4;for(var k=0;k<b;k+=4){var n=c+k;e[k]=f[n];e[k+1]=f[n+1];e[k+2]=f[n+2];e[k+3]=f[n+3]}}else e=J.subarray(c>>2,c+16*b>>2);R.uniform4fv(Y(a),e)}},za:(a,b,c,e,f)=>{R.uniform4i(Y(a),b,c,e,f)},ya:(a,b,c)=>{if(2<=z.version)b&&R.uniform4iv(Y(a),E,c>>2,4*b);else{if(72>=b){b*=4;for(var e=xd[b],f=0;f<b;f+=4)e[f]=E[c+4*f>>2],e[f+1]=E[c+(4*f+4)>>2],e[f+2]=E[c+(4*f+8)>>2],e[f+3]=E[c+(4*f+12)>>2]}else e=E.subarray(c>>2,c+16*b>>2);R.uniform4iv(Y(a),e)}},xa:(a,b,c,e)=>
{if(2<=z.version)b&&R.uniformMatrix2fv(Y(a),!!c,J,e>>2,4*b);else{if(72>=b){b*=4;for(var f=wd[b],k=0;k<b;k+=4)f[k]=J[e+4*k>>2],f[k+1]=J[e+(4*k+4)>>2],f[k+2]=J[e+(4*k+8)>>2],f[k+3]=J[e+(4*k+12)>>2]}else f=J.subarray(e>>2,e+16*b>>2);R.uniformMatrix2fv(Y(a),!!c,f)}},wa:(a,b,c,e)=>{if(2<=z.version)b&&R.uniformMatrix3fv(Y(a),!!c,J,e>>2,9*b);else{if(32>=b){b*=9;for(var f=wd[b],k=0;k<b;k+=9)f[k]=J[e+4*k>>2],f[k+1]=J[e+(4*k+4)>>2],f[k+2]=J[e+(4*k+8)>>2],f[k+3]=J[e+(4*k+12)>>2],f[k+4]=J[e+(4*k+16)>>2],f[k+
5]=J[e+(4*k+20)>>2],f[k+6]=J[e+(4*k+24)>>2],f[k+7]=J[e+(4*k+28)>>2],f[k+8]=J[e+(4*k+32)>>2]}else f=J.subarray(e>>2,e+36*b>>2);R.uniformMatrix3fv(Y(a),!!c,f)}},va:(a,b,c,e)=>{if(2<=z.version)b&&R.uniformMatrix4fv(Y(a),!!c,J,e>>2,16*b);else{if(18>=b){var f=wd[16*b],k=J;e>>=2;b*=16;for(var n=0;n<b;n+=16){var l=e+n;f[n]=k[l];f[n+1]=k[l+1];f[n+2]=k[l+2];f[n+3]=k[l+3];f[n+4]=k[l+4];f[n+5]=k[l+5];f[n+6]=k[l+6];f[n+7]=k[l+7];f[n+8]=k[l+8];f[n+9]=k[l+9];f[n+10]=k[l+10];f[n+11]=k[l+11];f[n+12]=k[l+12];f[n+
13]=k[l+13];f[n+14]=k[l+14];f[n+15]=k[l+15]}}else f=J.subarray(e>>2,e+64*b>>2);R.uniformMatrix4fv(Y(a),!!c,f)}},ua:a=>{a=Nc[a];R.useProgram(a);R.bf=a},ta:(a,b)=>R.vertexAttrib1f(a,b),sa:(a,b)=>{R.vertexAttrib2f(a,J[b>>2],J[b+4>>2])},ra:(a,b)=>{R.vertexAttrib3f(a,J[b>>2],J[b+4>>2],J[b+8>>2])},qa:(a,b)=>{R.vertexAttrib4f(a,J[b>>2],J[b+4>>2],J[b+8>>2],J[b+12>>2])},pa:(a,b)=>{R.vertexAttribDivisor(a,b)},oa:(a,b,c,e,f)=>{R.vertexAttribIPointer(a,b,c,e,f)},na:(a,b,c,e,f,k)=>{R.vertexAttribPointer(a,b,c,
!!e,f,k)},ma:(a,b,c,e)=>R.viewport(a,b,c,e),la:(a,b,c,e)=>{R.waitSync(Uc[a],b,(c>>>0)+4294967296*e)},ka:a=>{var b=B.length;a>>>=0;if(2147483648<a)return!1;for(var c=1;4>=c;c*=2){var e=b*(1+1/c);e=Math.min(e,a+100663296);a:{e=(Math.min(2147483648,65536*Math.ceil(Math.max(a,e)/65536))-za.buffer.byteLength+65535)/65536|0;try{za.grow(e);Ha();var f=1;break a}catch(k){}f=void 0}if(f)return!0}return!1},ja:()=>z?z.handle:0,qd:(a,b)=>{var c=0;Ad().forEach((e,f)=>{var k=b+c;f=H[a+4*f>>2]=k;for(k=0;k<e.length;++k)Ca[f++]=
e.charCodeAt(k);Ca[f]=0;c+=e.length+1});return 0},pd:(a,b)=>{var c=Ad();H[a>>2]=c.length;var e=0;c.forEach(f=>e+=f.length+1);H[b>>2]=e;return 0},ia:a=>{Xa||(Ba=!0);throw new Va(a);},N:()=>52,_:function(){return 52},od:()=>52,Z:function(){return 70},T:(a,b,c,e)=>{for(var f=0,k=0;k<c;k++){var n=H[b>>2],l=H[b+4>>2];b+=8;for(var p=0;p<l;p++){var v=B[n+p],w=Bd[a];0===v||10===v?((1===a?xa:ya)(db(w)),w.length=0):w.push(v)}f+=l}H[e>>2]=f;return 0},ha:cd,ga:ed,fa:fd,ea:gd,J:nd,Q:rd,da:sd,m:Hd,y:Id,l:Jd,I:Kd,
ca:Ld,P:Md,O:Nd,t:Od,v:Pd,u:Qd,r:Rd,ba:Sd,aa:Td,$:Ud},Z=function(){function a(c){Z=c.exports;za=Z.wd;Ha();N=Z.zd;Ja.unshift(Z.xd);La--;0==La&&(null!==Na&&(clearInterval(Na),Na=null),Oa&&(c=Oa,Oa=null,c()));return Z}var b={a:Vd};La++;if(r.instantiateWasm)try{return r.instantiateWasm(b,a)}catch(c){ya(`Module.instantiateWasm callback failed with error: ${c}`),da(c)}Ra??=r.locateFile?Qa("canvaskit.wasm")?"canvaskit.wasm":ta+"canvaskit.wasm":(new URL("canvaskit.wasm",import.meta.url)).href;
Ua(b,function(c){a(c.instance)}).catch(da);return{}}(),bc=a=>(bc=Z.yd)(a),pd=r._malloc=a=>(pd=r._malloc=Z.Ad)(a),cc=r._free=a=>(cc=r._free=Z.Bd)(a),Wd=(a,b)=>(Wd=Z.Cd)(a,b),Xd=a=>(Xd=Z.Dd)(a),Yd=()=>(Yd=Z.Ed)();r.dynCall_viji=(a,b,c,e,f)=>(r.dynCall_viji=Z.Fd)(a,b,c,e,f);r.dynCall_vijiii=(a,b,c,e,f,k,n)=>(r.dynCall_vijiii=Z.Gd)(a,b,c,e,f,k,n);r.dynCall_viiiiij=(a,b,c,e,f,k,n,l)=>(r.dynCall_viiiiij=Z.Hd)(a,b,c,e,f,k,n,l);r.dynCall_vij=(a,b,c,e)=>(r.dynCall_vij=Z.Id)(a,b,c,e);
r.dynCall_iiiji=(a,b,c,e,f,k)=>(r.dynCall_iiiji=Z.Jd)(a,b,c,e,f,k);r.dynCall_jii=(a,b,c)=>(r.dynCall_jii=Z.Kd)(a,b,c);r.dynCall_jiiiiii=(a,b,c,e,f,k,n)=>(r.dynCall_jiiiiii=Z.Ld)(a,b,c,e,f,k,n);r.dynCall_jiiiiji=(a,b,c,e,f,k,n,l)=>(r.dynCall_jiiiiji=Z.Md)(a,b,c,e,f,k,n,l);r.dynCall_ji=(a,b)=>(r.dynCall_ji=Z.Nd)(a,b);r.dynCall_iijj=(a,b,c,e,f,k)=>(r.dynCall_iijj=Z.Od)(a,b,c,e,f,k);r.dynCall_iiji=(a,b,c,e,f)=>(r.dynCall_iiji=Z.Pd)(a,b,c,e,f);
r.dynCall_iijjiii=(a,b,c,e,f,k,n,l,p)=>(r.dynCall_iijjiii=Z.Qd)(a,b,c,e,f,k,n,l,p);r.dynCall_iij=(a,b,c,e)=>(r.dynCall_iij=Z.Rd)(a,b,c,e);r.dynCall_vijjjii=(a,b,c,e,f,k,n,l,p,v)=>(r.dynCall_vijjjii=Z.Sd)(a,b,c,e,f,k,n,l,p,v);r.dynCall_jiji=(a,b,c,e,f)=>(r.dynCall_jiji=Z.Td)(a,b,c,e,f);r.dynCall_viijii=(a,b,c,e,f,k,n)=>(r.dynCall_viijii=Z.Ud)(a,b,c,e,f,k,n);r.dynCall_iiiiij=(a,b,c,e,f,k,n)=>(r.dynCall_iiiiij=Z.Vd)(a,b,c,e,f,k,n);
r.dynCall_iiiiijj=(a,b,c,e,f,k,n,l,p)=>(r.dynCall_iiiiijj=Z.Wd)(a,b,c,e,f,k,n,l,p);r.dynCall_iiiiiijj=(a,b,c,e,f,k,n,l,p,v)=>(r.dynCall_iiiiiijj=Z.Xd)(a,b,c,e,f,k,n,l,p,v);function Rd(a,b,c,e,f){var k=Yd();try{N.get(a)(b,c,e,f)}catch(n){Xd(k);if(n!==n+0)throw n;Wd(1,0)}}function Id(a,b,c){var e=Yd();try{return N.get(a)(b,c)}catch(f){Xd(e);if(f!==f+0)throw f;Wd(1,0)}}function Pd(a,b,c){var e=Yd();try{N.get(a)(b,c)}catch(f){Xd(e);if(f!==f+0)throw f;Wd(1,0)}}
function Hd(a,b){var c=Yd();try{return N.get(a)(b)}catch(e){Xd(c);if(e!==e+0)throw e;Wd(1,0)}}function Od(a,b){var c=Yd();try{N.get(a)(b)}catch(e){Xd(c);if(e!==e+0)throw e;Wd(1,0)}}function Jd(a,b,c,e){var f=Yd();try{return N.get(a)(b,c,e)}catch(k){Xd(f);if(k!==k+0)throw k;Wd(1,0)}}function Ud(a,b,c,e,f,k,n,l,p,v){var w=Yd();try{N.get(a)(b,c,e,f,k,n,l,p,v)}catch(A){Xd(w);if(A!==A+0)throw A;Wd(1,0)}}function Qd(a,b,c,e){var f=Yd();try{N.get(a)(b,c,e)}catch(k){Xd(f);if(k!==k+0)throw k;Wd(1,0)}}
function Td(a,b,c,e,f,k,n){var l=Yd();try{N.get(a)(b,c,e,f,k,n)}catch(p){Xd(l);if(p!==p+0)throw p;Wd(1,0)}}function Md(a,b,c,e,f,k,n,l){var p=Yd();try{return N.get(a)(b,c,e,f,k,n,l)}catch(v){Xd(p);if(v!==v+0)throw v;Wd(1,0)}}function Sd(a,b,c,e,f,k){var n=Yd();try{N.get(a)(b,c,e,f,k)}catch(l){Xd(n);if(l!==l+0)throw l;Wd(1,0)}}function Kd(a,b,c,e,f){var k=Yd();try{return N.get(a)(b,c,e,f)}catch(n){Xd(k);if(n!==n+0)throw n;Wd(1,0)}}
function Nd(a,b,c,e,f,k,n,l,p,v){var w=Yd();try{return N.get(a)(b,c,e,f,k,n,l,p,v)}catch(A){Xd(w);if(A!==A+0)throw A;Wd(1,0)}}function Ld(a,b,c,e,f,k,n){var l=Yd();try{return N.get(a)(b,c,e,f,k,n)}catch(p){Xd(l);if(p!==p+0)throw p;Wd(1,0)}}var Zd,$d;Oa=function ae(){Zd||be();Zd||(Oa=ae)};function be(){if(!(0<La)){if(!$d&&($d=1,Wa(Ia),0<La))return;Zd||(Zd=1,r.calledRun=1,Ba||(Wa(Ja),ca(r),r.onRuntimeInitialized?.(),Wa(Ka)))}}be();moduleRtn=ea;
return moduleRtn;
}
);
})();
export default CanvasKitInit;
File diff suppressed because one or more lines are too long
Binary file not shown.
@@ -0,0 +1,193 @@
var CanvasKitInit = (() => {
var _scriptName = import.meta.url;
return (
function(moduleArg = {}) {
var moduleRtn;
var r=moduleArg,ca,da,ea=new Promise((a,b)=>{ca=a;da=b}),fa="object"==typeof window,ia="function"==typeof importScripts;
(function(a){a.Xd=a.Xd||[];a.Xd.push(function(){a.MakeSWCanvasSurface=function(b){var c=b,e="undefined"!==typeof OffscreenCanvas&&c instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&c instanceof HTMLCanvasElement||e||(c=document.getElementById(b),c)))throw"Canvas with id "+b+" was not found";if(b=a.MakeSurface(c.width,c.height))b.ue=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.ue=null,e.Ue=b,e.Re=c,e.Se=f,e.Be=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.Ud(this.Td);this._flush();if(this.ue){var c=new Uint8ClampedArray(a.HEAPU8.buffer,this.Be,this.Se);c=new ImageData(c,this.Ue,this.Re);b?this.ue.getContext("2d").putImageData(c,
0,0,b[0],b[1],b[2]-b[0],b[3]-b[1]):this.ue.getContext("2d").putImageData(c,0,0)}};a.Surface.prototype.dispose=function(){this.Be&&a._free(this.Be);this.delete()};a.Ud=a.Ud||function(){};a.ve=a.ve||function(){return null}})})(r);
(function(a){a.Xd=a.Xd||[];a.Xd.push(function(){function b(l,q,v){return l&&l.hasOwnProperty(q)?l[q]:v}function c(l){var q=ja(ka);ka[q]=l;return q}function e(l){return l.naturalHeight||l.videoHeight||l.displayHeight||l.height}function f(l){return l.naturalWidth||l.videoWidth||l.displayWidth||l.width}function k(l,q,v,w){l.bindTexture(l.TEXTURE_2D,q);w||v.alphaType!==a.AlphaType.Premul||l.pixelStorei(l.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);return q}function n(l,q,v){v||q.alphaType!==a.AlphaType.Premul||
l.pixelStorei(l.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);l.bindTexture(l.TEXTURE_2D,null)}a.GetWebGLContext=function(l,q){if(!l)throw"null canvas passed into makeWebGLContext";var v={alpha:b(q,"alpha",1),depth:b(q,"depth",1),stencil:b(q,"stencil",8),antialias:b(q,"antialias",0),premultipliedAlpha:b(q,"premultipliedAlpha",1),preserveDrawingBuffer:b(q,"preserveDrawingBuffer",0),preferLowPowerToHighPerformance:b(q,"preferLowPowerToHighPerformance",0),failIfMajorPerformanceCaveat:b(q,"failIfMajorPerformanceCaveat",
0),enableExtensionsByDefault:b(q,"enableExtensionsByDefault",1),explicitSwapControl:b(q,"explicitSwapControl",0),renderViaOffscreenBackBuffer:b(q,"renderViaOffscreenBackBuffer",0)};v.majorVersion=q&&q.majorVersion?q.majorVersion:"undefined"!==typeof WebGL2RenderingContext?2:1;if(v.explicitSwapControl)throw"explicitSwapControl is not supported";l=na(l,v);if(!l)return 0;oa(l);z.fe.getExtension("WEBGL_debug_renderer_info");return l};a.deleteContext=function(l){z===pa[l]&&(z=null);"object"==typeof JSEvents&&
JSEvents.uf(pa[l].fe.canvas);pa[l]&&pa[l].fe.canvas&&(pa[l].fe.canvas.Pe=void 0);pa[l]=null};a._setTextureCleanup({deleteTexture:function(l,q){var v=ka[q];v&&pa[l].fe.deleteTexture(v);ka[q]=null}});a.MakeWebGLContext=function(l){if(!this.Ud(l))return null;var q=this._MakeGrContext();if(!q)return null;q.Td=l;var v=q.delete.bind(q);q["delete"]=function(){a.Ud(this.Td);v()}.bind(q);return z.De=q};a.MakeGrContext=a.MakeWebGLContext;a.GrDirectContext.prototype.getResourceCacheLimitBytes=function(){a.Ud(this.Td);
this._getResourceCacheLimitBytes()};a.GrDirectContext.prototype.getResourceCacheUsageBytes=function(){a.Ud(this.Td);this._getResourceCacheUsageBytes()};a.GrDirectContext.prototype.releaseResourcesAndAbandonContext=function(){a.Ud(this.Td);this._releaseResourcesAndAbandonContext()};a.GrDirectContext.prototype.setResourceCacheLimitBytes=function(l){a.Ud(this.Td);this._setResourceCacheLimitBytes(l)};a.MakeOnScreenGLSurface=function(l,q,v,w,A,D){if(!this.Ud(l.Td))return null;q=void 0===A||void 0===D?
this._MakeOnScreenGLSurface(l,q,v,w):this._MakeOnScreenGLSurface(l,q,v,w,A,D);if(!q)return null;q.Td=l.Td;return q};a.MakeRenderTarget=function(){var l=arguments[0];if(!this.Ud(l.Td))return null;if(3===arguments.length){var q=this._MakeRenderTargetWH(l,arguments[1],arguments[2]);if(!q)return null}else if(2===arguments.length){if(q=this._MakeRenderTargetII(l,arguments[1]),!q)return null}else return null;q.Td=l.Td;return q};a.MakeWebGLCanvasSurface=function(l,q,v){q=q||null;var w=l,A="undefined"!==
typeof OffscreenCanvas&&w instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&w instanceof HTMLCanvasElement||A||(w=document.getElementById(l),w)))throw"Canvas with id "+l+" was not found";l=this.GetWebGLContext(w,v);if(!l||0>l)throw"failed to create webgl context: err "+l;l=this.MakeWebGLContext(l);q=this.MakeOnScreenGLSurface(l,w.width,w.height,q);return q?q:(q=w.cloneNode(!0),w.parentNode.replaceChild(q,w),q.classList.add("ck-replaced"),a.MakeSWCanvasSurface(q))};a.MakeCanvasSurface=
a.MakeWebGLCanvasSurface;a.Surface.prototype.makeImageFromTexture=function(l,q){a.Ud(this.Td);l=c(l);if(q=this._makeImageFromTexture(this.Td,l,q))q.oe=l;return q};a.Surface.prototype.makeImageFromTextureSource=function(l,q,v){q||={height:e(l),width:f(l),colorType:a.ColorType.RGBA_8888,alphaType:v?a.AlphaType.Premul:a.AlphaType.Unpremul};q.colorSpace||(q.colorSpace=a.ColorSpace.SRGB);a.Ud(this.Td);var w=z.fe;v=k(w,w.createTexture(),q,v);2===z.version?w.texImage2D(w.TEXTURE_2D,0,w.RGBA,q.width,q.height,
0,w.RGBA,w.UNSIGNED_BYTE,l):w.texImage2D(w.TEXTURE_2D,0,w.RGBA,w.RGBA,w.UNSIGNED_BYTE,l);n(w,q);this._resetContext();return this.makeImageFromTexture(v,q)};a.Surface.prototype.updateTextureFromSource=function(l,q,v){if(l.oe){a.Ud(this.Td);var w=l.getImageInfo(),A=z.fe,D=k(A,ka[l.oe],w,v);2===z.version?A.texImage2D(A.TEXTURE_2D,0,A.RGBA,f(q),e(q),0,A.RGBA,A.UNSIGNED_BYTE,q):A.texImage2D(A.TEXTURE_2D,0,A.RGBA,A.RGBA,A.UNSIGNED_BYTE,q);n(A,w,v);this._resetContext();ka[l.oe]=null;l.oe=c(D);w.colorSpace=
l.getColorSpace();q=this._makeImageFromTexture(this.Td,l.oe,w);v=l.Sd.Vd;A=l.Sd.Zd;l.Sd.Vd=q.Sd.Vd;l.Sd.Zd=q.Sd.Zd;q.Sd.Vd=v;q.Sd.Zd=A;q.delete();w.colorSpace.delete()}};a.MakeLazyImageFromTextureSource=function(l,q,v){q||={height:e(l),width:f(l),colorType:a.ColorType.RGBA_8888,alphaType:v?a.AlphaType.Premul:a.AlphaType.Unpremul};q.colorSpace||(q.colorSpace=a.ColorSpace.SRGB);var w={makeTexture:function(){var A=z,D=A.fe,I=k(D,D.createTexture(),q,v);2===A.version?D.texImage2D(D.TEXTURE_2D,0,D.RGBA,
q.width,q.height,0,D.RGBA,D.UNSIGNED_BYTE,l):D.texImage2D(D.TEXTURE_2D,0,D.RGBA,D.RGBA,D.UNSIGNED_BYTE,l);n(D,q,v);return c(I)},freeSrc:function(){}};"VideoFrame"===l.constructor.name&&(w.freeSrc=function(){l.close()});return a.Image._makeFromGenerator(q,w)};a.Ud=function(l){return l?oa(l):!1};a.ve=function(){return z&&z.De&&!z.De.isDeleted()?z.De: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 n(g,d,h){if(!g||!g.length)return 0;if(g&&g._ck)return g.byteOffset;var m=a[d].BYTES_PER_ELEMENT;h||=a._malloc(g.length*m);a[d].set(g,h/m);return h}function l(g){var d={be:0,count:g.length,colorType:a.ColorType.RGBA_F32};if(g instanceof Float32Array)d.be=n(g,"HEAPF32"),d.count=g.length/4;else if(g instanceof Uint32Array)d.be=n(g,"HEAPU32"),d.colorType=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,u=0;u<g.length;u++)for(var y=0;4>y;y++)a.HEAPF32[t+m]=g[u][y],m++;g=h}else g=0;d.be=g}else throw"Invalid argument to copyFlexibleColorArray, Not a color array "+typeof g;return d}function q(g){if(!g)return 0;var d=aa.toTypedArray();if(g.length){if(6===g.length||9===g.length)return n(g,"HEAPF32",O),6===g.length&&a.HEAPF32.set(Vc,6+O/4),O;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],O;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 O}function v(g){if(!g)return 0;var d=X.toTypedArray();if(g.length){if(16!==g.length&&6!==g.length&&9!==g.length)throw"invalid matrix size";if(16===g.length)return n(g,"HEAPF32",la);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 la}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 la}function w(g,d){return n(g,"HEAPF32",d||ha)}function A(g,d,h,m){var t=Ea.toTypedArray();t[0]=g;t[1]=d;t[2]=h;t[3]=m;return ha}function D(g){for(var d=new Float32Array(4),h=0;4>h;h++)d[h]=a.HEAPF32[g/4+h];return d}function I(g,d){return n(g,"HEAPF32",d||U)}function P(g,d){return n(g,
"HEAPF32",d||tb)}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,ke:null,subarray:function(m,t){m=this.toTypedArray().subarray(m,t);m._ck=!0;return m},toTypedArray:function(){if(this.ke&&
this.ke.length)return this.ke;this.ke=new g(a.HEAPU8.buffer,h,d);this.ke._ck=!0;return this.ke}}};a.Free=function(g){a._free(g.byteOffset);g.byteOffset=0;g.toTypedArray=null;g.ke=null};var O=0,aa,la=0,X,ha=0,Ea,ba,U=0,Ub,Aa=0,Vb,ub=0,Wb,vb=0,$a,Ma=0,Xb,tb=0,Yb,Zb=0,Vc=Float32Array.of(0,0,1);a.onRuntimeInitialized=function(){function g(d,h,m,t,u,y,C){y||(y=4*t.width,t.colorType===a.ColorType.RGBA_F16?y*=2:t.colorType===a.ColorType.RGBA_F32&&(y*=4));var G=y*t.height;var F=u?u.byteOffset:a._malloc(G);
if(C?!d._readPixels(t,F,y,h,m,C):!d._readPixels(t,F,y,h,m))return u||a._free(F),null;if(u)return u.toTypedArray();switch(t.colorType){case a.ColorType.RGBA_8888:case a.ColorType.RGBA_F16:d=(new Uint8Array(a.HEAPU8.buffer,F,G)).slice();break;case a.ColorType.RGBA_F32:d=(new Float32Array(a.HEAPU8.buffer,F,G)).slice();break;default:return null}a._free(F);return d}Ea=a.Malloc(Float32Array,4);ha=Ea.byteOffset;X=a.Malloc(Float32Array,16);la=X.byteOffset;aa=a.Malloc(Float32Array,9);O=aa.byteOffset;Xb=a.Malloc(Float32Array,
12);tb=Xb.byteOffset;Yb=a.Malloc(Float32Array,12);Zb=Yb.byteOffset;ba=a.Malloc(Float32Array,4);U=ba.byteOffset;Ub=a.Malloc(Float32Array,4);Aa=Ub.byteOffset;Vb=a.Malloc(Float32Array,3);ub=Vb.byteOffset;Wb=a.Malloc(Float32Array,3);vb=Wb.byteOffset;$a=a.Malloc(Int32Array,4);Ma=$a.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=n(d,"HEAPF32"),m=a.Path._MakeFromCmds(h,d.length);k(h,d);return m};a.Path.MakeFromVerbsPointsWeights=function(d,h,m){var t=n(d,"HEAPU8"),u=n(h,"HEAPF32"),y=n(m,"HEAPF32"),C=a.Path._MakeFromVerbsPointsWeights(t,d.length,u,h.length/2,y,m&&m.length||0);k(t,d);k(u,h);k(y,m);return C};a.PathBuilder.prototype.addArc=function(d,h,m){d=I(d);this._addArc(d,h,m);return this};a.PathBuilder.prototype.addCircle=function(d,h,m,t){this._addCircle(d,h,m,!!t);return this};a.PathBuilder.prototype.addOval=
function(d,h,m){void 0===m&&(m=1);d=I(d);this._addOval(d,!!h,m);return this};a.PathBuilder.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.PathBuilder.prototype.addPolygon=function(d,h){var m=n(d,"HEAPF32");this._addPolygon(m,d.length/2,h);k(m,d);return this};a.PathBuilder.prototype.addRect=function(d,h){d=I(d);this._addRect(d,!!h);return this};a.PathBuilder.prototype.addRRect=function(d,h){d=P(d);this._addRRect(d,!!h);return this};a.PathBuilder.prototype.addVerbsPointsWeights=function(d,h,m){var t=n(d,"HEAPU8"),u=n(h,"HEAPF32"),y=n(m,"HEAPF32");this._addVerbsPointsWeights(t,d.length,u,h.length/2,y,m&&m.length||0);k(t,
d);k(u,h);k(y,m);return this};a.PathBuilder.prototype.arc=function(d,h,m,t,u,y){d=a.LTRBRect(d-m,h-m,d+m,h+m);u=(u-t)/Math.PI*180-360*!!y;t=(new a.PathBuilder).addArc(d,t/Math.PI*180,u).detachAndDelete();this.addPath(t,!0);t.delete();return this};a.PathBuilder.prototype.arcToOval=function(d,h,m,t){d=I(d);this._arcToOval(d,h,m,t);return this};a.PathBuilder.prototype.arcToRotated=function(d,h,m,t,u,y,C){this._arcToRotated(d,h,m,!!t,!!u,y,C);return this};a.PathBuilder.prototype.arcToTangent=function(d,
h,m,t,u){this._arcToTangent(d,h,m,t,u);return this};a.PathBuilder.prototype.close=function(){this._close();return this};a.PathBuilder.prototype.conicTo=function(d,h,m,t,u){this._conicTo(d,h,m,t,u);return this};a.Path.prototype.computeTightBounds=function(d){this._computeTightBounds(U);var h=ba.toTypedArray();return d?(d.set(h),d):h.slice()};a.PathBuilder.prototype.cubicTo=function(d,h,m,t,u,y){this._cubicTo(d,h,m,t,u,y);return this};a.PathBuilder.prototype.detachAndDelete=function(){var d=this.detach();
this.delete();return d};a.Path.prototype.getBounds=function(d){this._getBounds(U);var h=ba.toTypedArray();return d?(d.set(h),d):h.slice()};a.PathBuilder.prototype.getBounds=function(d){this._getBounds(U);var h=ba.toTypedArray();return d?(d.set(h),d):h.slice()};a.PathBuilder.prototype.lineTo=function(d,h){this._lineTo(d,h);return this};a.PathBuilder.prototype.moveTo=function(d,h){this._moveTo(d,h);return this};a.PathBuilder.prototype.offset=function(d,h){this._transform(1,0,d,0,1,h,0,0,1);return this};
a.PathBuilder.prototype.quadTo=function(d,h,m,t){this._quadTo(d,h,m,t);return this};a.PathBuilder.prototype.rArcTo=function(d,h,m,t,u,y,C){this._rArcTo(d,h,m,t,u,y,C);return this};a.PathBuilder.prototype.rConicTo=function(d,h,m,t,u){this._rConicTo(d,h,m,t,u);return this};a.PathBuilder.prototype.rCubicTo=function(d,h,m,t,u,y){this._rCubicTo(d,h,m,t,u,y);return this};a.PathBuilder.prototype.rLineTo=function(d,h){this._rLineTo(d,h);return this};a.PathBuilder.prototype.rMoveTo=function(d,h){this._rMoveTo(d,
h);return this};a.PathBuilder.prototype.rQuadTo=function(d,h,m,t){this._rQuadTo(d,h,m,t);return this};a.Path.prototype.makeStroked=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._makeStroked(d)};a.PathBuilder.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.makeTrimmed=function(d,h,m){return this._makeTrimmed(d,h,!!m)};a.Image.prototype.encodeToBytes=function(d,h){var m=a.ve();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,u){u=q(u);return this._makeShaderCubic(d,
h,m,t,u)};a.Image.prototype.makeShaderOptions=function(d,h,m,t,u){u=q(u);return this._makeShaderOptions(d,h,m,t,u)};a.Image.prototype.readPixels=function(d,h,m,t,u){var y=a.ve();return g(this,d,h,m,t,u,y)};a.Canvas.prototype.clear=function(d){a.Ud(this.Td);d=w(d);this._clear(d)};a.Canvas.prototype.clipRRect=function(d,h,m){a.Ud(this.Td);d=P(d);this._clipRRect(d,h,m)};a.Canvas.prototype.clipRect=function(d,h,m){a.Ud(this.Td);d=I(d);this._clipRect(d,h,m)};a.Canvas.prototype.concat=function(d){a.Ud(this.Td);
d=v(d);this._concat(d)};a.Canvas.prototype.drawArc=function(d,h,m,t,u){a.Ud(this.Td);d=I(d);this._drawArc(d,h,m,t,u)};a.Canvas.prototype.drawAtlas=function(d,h,m,t,u,y,C){if(d&&t&&h&&m&&h.length===m.length){a.Ud(this.Td);u||(u=a.BlendMode.SrcOver);var G=n(h,"HEAPF32"),F=n(m,"HEAPF32"),S=m.length/4,T=n(c(y),"HEAPU32");if(C&&"B"in C&&"C"in C)this._drawAtlasCubic(d,F,G,T,S,u,C.B,C.C,t);else{let p=a.FilterMode.Linear,x=a.MipmapMode.None;C&&(p=C.filter,"mipmap"in C&&(x=C.mipmap));this._drawAtlasOptions(d,
F,G,T,S,u,p,x,t)}k(G,h);k(F,m);k(T,y)}};a.Canvas.prototype.drawCircle=function(d,h,m,t){a.Ud(this.Td);this._drawCircle(d,h,m,t)};a.Canvas.prototype.drawColor=function(d,h){a.Ud(this.Td);d=w(d);void 0!==h?this._drawColor(d,h):this._drawColor(d)};a.Canvas.prototype.drawColorInt=function(d,h){a.Ud(this.Td);this._drawColorInt(d,h||a.BlendMode.SrcOver)};a.Canvas.prototype.drawColorComponents=function(d,h,m,t,u){a.Ud(this.Td);d=A(d,h,m,t);void 0!==u?this._drawColor(d,u):this._drawColor(d)};a.Canvas.prototype.drawDRRect=
function(d,h,m){a.Ud(this.Td);d=P(d,tb);h=P(h,Zb);this._drawDRRect(d,h,m)};a.Canvas.prototype.drawImage=function(d,h,m,t){a.Ud(this.Td);this._drawImage(d,h,m,t||null)};a.Canvas.prototype.drawImageCubic=function(d,h,m,t,u,y){a.Ud(this.Td);this._drawImageCubic(d,h,m,t,u,y||null)};a.Canvas.prototype.drawImageOptions=function(d,h,m,t,u,y){a.Ud(this.Td);this._drawImageOptions(d,h,m,t,u,y||null)};a.Canvas.prototype.drawImageNine=function(d,h,m,t,u){a.Ud(this.Td);h=n(h,"HEAP32",Ma);m=I(m);this._drawImageNine(d,
h,m,t,u||null)};a.Canvas.prototype.drawImageRect=function(d,h,m,t,u){a.Ud(this.Td);I(h,U);I(m,Aa);this._drawImageRect(d,U,Aa,t,!!u)};a.Canvas.prototype.drawImageRectCubic=function(d,h,m,t,u,y){a.Ud(this.Td);I(h,U);I(m,Aa);this._drawImageRectCubic(d,U,Aa,t,u,y||null)};a.Canvas.prototype.drawImageRectOptions=function(d,h,m,t,u,y){a.Ud(this.Td);I(h,U);I(m,Aa);this._drawImageRectOptions(d,U,Aa,t,u,y||null)};a.Canvas.prototype.drawLine=function(d,h,m,t,u){a.Ud(this.Td);this._drawLine(d,h,m,t,u)};a.Canvas.prototype.drawOval=
function(d,h){a.Ud(this.Td);d=I(d);this._drawOval(d,h)};a.Canvas.prototype.drawPaint=function(d){a.Ud(this.Td);this._drawPaint(d)};a.Canvas.prototype.drawParagraph=function(d,h,m){a.Ud(this.Td);this._drawParagraph(d,h,m)};a.Canvas.prototype.drawPatch=function(d,h,m,t,u){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.Ud(this.Td);const y=n(d,"HEAPF32"),C=h?n(c(h),"HEAPU32"):0,G=m?n(m,"HEAPF32"):0;t||(t=a.BlendMode.Modulate);
this._drawPatch(y,C,G,t,u);k(G,m);k(C,h);k(y,d)};a.Canvas.prototype.drawPath=function(d,h){a.Ud(this.Td);this._drawPath(d,h)};a.Canvas.prototype.drawPicture=function(d){a.Ud(this.Td);this._drawPicture(d)};a.Canvas.prototype.drawPoints=function(d,h,m){a.Ud(this.Td);var t=n(h,"HEAPF32");this._drawPoints(d,t,h.length/2,m);k(t,h)};a.Canvas.prototype.drawRRect=function(d,h){a.Ud(this.Td);d=P(d);this._drawRRect(d,h)};a.Canvas.prototype.drawRect=function(d,h){a.Ud(this.Td);d=I(d);this._drawRect(d,h)};a.Canvas.prototype.drawRect4f=
function(d,h,m,t,u){a.Ud(this.Td);this._drawRect4f(d,h,m,t,u)};a.Canvas.prototype.drawShadow=function(d,h,m,t,u,y,C){a.Ud(this.Td);var G=n(u,"HEAPF32"),F=n(y,"HEAPF32");h=n(h,"HEAPF32",ub);m=n(m,"HEAPF32",vb);this._drawShadow(d,h,m,t,G,F,C);k(G,u);k(F,y)};a.getShadowLocalBounds=function(d,h,m,t,u,y,C){d=q(d);m=n(m,"HEAPF32",ub);t=n(t,"HEAPF32",vb);if(!this._getShadowLocalBounds(d,h,m,t,u,y,U))return null;h=ba.toTypedArray();return C?(C.set(h),C):h.slice()};a.Canvas.prototype.drawTextBlob=function(d,
h,m,t){a.Ud(this.Td);this._drawTextBlob(d,h,m,t)};a.Canvas.prototype.drawVertices=function(d,h,m){a.Ud(this.Td);this._drawVertices(d,h,m)};a.Canvas.prototype.getDeviceClipBounds=function(d){this._getDeviceClipBounds(Ma);var h=$a.toTypedArray();d?d.set(h):d=h.slice();return d};a.Canvas.prototype.quickReject=function(d){d=I(d);return this._quickReject(d)};a.Canvas.prototype.getLocalToDevice=function(){this._getLocalToDevice(la);for(var d=la,h=Array(16),m=0;16>m;m++)h[m]=a.HEAPF32[d/4+m];return h};a.Canvas.prototype.getTotalMatrix=
function(){this._getTotalMatrix(O);for(var d=Array(9),h=0;9>h;h++)d[h]=a.HEAPF32[O/4+h];return d};a.Canvas.prototype.makeSurface=function(d){d=this._makeSurface(d);d.Td=this.Td;return d};a.Canvas.prototype.readPixels=function(d,h,m,t,u){a.Ud(this.Td);return g(this,d,h,m,t,u)};a.Canvas.prototype.saveLayer=function(d,h,m,t,u){h=I(h);return this._saveLayer(d||null,h,m||null,t||0,u||a.TileMode.Clamp)};a.Canvas.prototype.writePixels=function(d,h,m,t,u,y,C,G){if(d.byteLength%(h*m))throw"pixels length must be a multiple of the srcWidth * srcHeight";
a.Ud(this.Td);var F=d.byteLength/(h*m);y=y||a.AlphaType.Unpremul;C=C||a.ColorType.RGBA_8888;G=G||a.ColorSpace.SRGB;var S=F*h;F=n(d,"HEAPU8");h=this._writePixels({width:h,height:m,colorType:C,alphaType:y,colorSpace:G},F,S,t,u);k(F,d);return h};a.ColorFilter.MakeBlend=function(d,h,m){d=w(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=n(d,"HEAPF32"),m=a.ColorFilter._makeMatrix(h);k(h,d);return m};
a.ContourMeasure.prototype.getPosTan=function(d,h){this._getPosTan(d,U);d=ba.toTypedArray();return h?(h.set(d),h):d.slice()};a.ImageFilter.prototype.getOutputBounds=function(d,h,m){d=I(d,U);h=q(h);this._getOutputBounds(d,h,Ma);h=$a.toTypedArray();return m?(m.set(h),m):h.slice()};a.ImageFilter.MakeDropShadow=function(d,h,m,t,u,y){u=w(u,ha);return a.ImageFilter._MakeDropShadow(d,h,m,t,u,y)};a.ImageFilter.MakeDropShadowOnly=function(d,h,m,t,u,y){u=w(u,ha);return a.ImageFilter._MakeDropShadowOnly(d,h,
m,t,u,y)};a.ImageFilter.MakeImage=function(d,h,m,t){m=I(m,U);t=I(t,Aa);if("B"in h&&"C"in h)return a.ImageFilter._MakeImageCubic(d,h.B,h.C,m,t);const u=h.filter;let y=a.MipmapMode.None;"mipmap"in h&&(y=h.mipmap);return a.ImageFilter._MakeImageOptions(d,u,y,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 u=a.MipmapMode.None;"mipmap"in h&&(u=h.mipmap);return a.ImageFilter._MakeMatrixTransformOptions(d,
t,u,m)};a.Paint.prototype.getColor=function(){this._getColor(ha);return D(ha)};a.Paint.prototype.setColor=function(d,h){h=h||null;d=w(d);this._setColor(d,h)};a.Paint.prototype.setColorComponents=function(d,h,m,t,u){u=u||null;d=A(d,h,m,t);this._setColor(d,u)};a.Path.prototype.getPoint=function(d,h){this._getPoint(d,U);d=ba.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,u){t=q(t);u=I(u);return this._makeShader(d,h,m,t,u)};a.Picture.prototype.cullRect=
function(d){this._cullRect(U);var h=ba.toTypedArray();return d?(d.set(h),d):h.slice()};a.PictureRecorder.prototype.beginRecording=function(d,h){d=I(d);return this._beginRecording(d,!!h)};a.Surface.prototype.getCanvas=function(){var d=this._getCanvas();d.Td=this.Td;return d};a.Surface.prototype.makeImageSnapshot=function(d){a.Ud(this.Td);d=n(d,"HEAP32",Ma);return this._makeImageSnapshot(d)};a.Surface.prototype.makeSurface=function(d){a.Ud(this.Td);d=this._makeSurface(d);d.Td=this.Td;return d};a.Surface.prototype.Te=
function(d,h){this.ne||(this.ne=this.getCanvas());return requestAnimationFrame(function(){a.Ud(this.Td);d(this.ne);this.flush(h)}.bind(this))};a.Surface.prototype.requestAnimationFrame||(a.Surface.prototype.requestAnimationFrame=a.Surface.prototype.Te);a.Surface.prototype.Qe=function(d,h){this.ne||(this.ne=this.getCanvas());requestAnimationFrame(function(){a.Ud(this.Td);d(this.ne);this.flush(h);this.dispose()}.bind(this))};a.Surface.prototype.drawOnce||(a.Surface.prototype.drawOnce=a.Surface.prototype.Qe);
a.PathEffect.MakeDash=function(d,h){h||=0;if(!d.length||1===d.length%2)throw"Intervals array must have even length";var m=n(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=w(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,u,y,C,G){G=G||null;var F=l(m),S=n(t,"HEAPF32");C=C||0;y=q(y);var T=ba.toTypedArray();T.set(d);T.set(h,2);d=a.Shader._MakeLinearGradient(U,F.be,F.colorType,S,F.count,u,C,y,G);k(F.be,m);t&&k(S,t);return d};a.Shader.MakeRadialGradient=function(d,h,m,t,u,y,C,G){G=G||null;var F=l(m),S=n(t,"HEAPF32");C=C||0;y=q(y);d=a.Shader._MakeRadialGradient(d[0],d[1],h,F.be,F.colorType,S,F.count,u,C,y,G);k(F.be,m);t&&k(S,t);return d};a.Shader.MakeSweepGradient=function(d,
h,m,t,u,y,C,G,F,S){S=S||null;var T=l(m),p=n(t,"HEAPF32");C=C||0;G=G||0;F=F||360;y=q(y);d=a.Shader._MakeSweepGradient(d,h,T.be,T.colorType,p,T.count,u,G,F,C,y,S);k(T.be,m);t&&k(p,t);return d};a.Shader.MakeTwoPointConicalGradient=function(d,h,m,t,u,y,C,G,F,S){S=S||null;var T=l(u),p=n(y,"HEAPF32");F=F||0;G=q(G);var x=ba.toTypedArray();x.set(d);x.set(m,2);d=a.Shader._MakeTwoPointConicalGradient(U,h,t,T.be,T.colorType,p,T.count,C,F,G,S);k(T.be,u);y&&k(p,y);return d};a.Vertices.prototype.bounds=function(d){this._bounds(U);
var h=ba.toTypedArray();return d?(d.set(h),d):h.slice()};a.Xd&&a.Xd.forEach(function(d){d()})};a.computeTonalColors=function(g){var d=n(g.ambient,"HEAPF32"),h=n(g.spot,"HEAPF32");this._computeTonalColors(d,h);var m={ambient:D(d),spot:D(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 ab=null;a.MakeImageFromCanvasImageSource=function(g){var d=g.width,h=g.height;
ab||=document.createElement("canvas");ab.width=d;ab.height=h;var m=ab.getContext("2d",{willReadFrequently:!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,u){var y=t&&t.length||0,C=0;h&&h.length&&(C|=1);m&&m.length&&
(C|=2);void 0===u||u||(C|=4);g=new a._VerticesBuilder(g,d.length/2,y,C);n(d,"HEAPF32",g.positions());g.texCoords()&&n(h,"HEAPF32",g.texCoords());g.colors()&&n(c(m),"HEAPU32",g.colors());g.indices()&&n(t,"HEAPU16",g.indices());return g.detach()};(function(g){g.Xd=g.Xd||[];g.Xd.push(function(){function d(p){p&&(p.dir=0===p.dir?g.TextDirection.RTL:g.TextDirection.LTR);return p}function h(p){if(!p||!p.length)return[];for(var x=[],M=0;M<p.length;M+=5){var W=g.LTRBRect(p[M],p[M+1],p[M+2],p[M+3]),wa=g.TextDirection.LTR;
0===p[M+4]&&(wa=g.TextDirection.RTL);x.push({rect:W,dir:wa})}g._free(p.byteOffset);return x}function m(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 t(p){if(!p||!p.length)return 0;for(var x=[],M=0;M<p.length;M++){var W=u(p[M]);x.push(W)}return n(x,"HEAPU32")}function u(p){if(G[p])return G[p];var x=qa(p)+1,M=g._malloc(x);ra(p,M,x);return G[p]=M}function y(p){p._colorPtr=w(p.color);p._foregroundColorPtr=
0;p._backgroundColorPtr=0;p._decorationColorPtr=0;p.foregroundColor&&(p._foregroundColorPtr=w(p.foregroundColor,F));p.backgroundColor&&(p._backgroundColorPtr=w(p.backgroundColor,S));p.decorationColor&&(p._decorationColorPtr=w(p.decorationColor,T));Array.isArray(p.fontFamilies)&&p.fontFamilies.length?(p._fontFamiliesPtr=t(p.fontFamilies),p._fontFamiliesLen=p.fontFamilies.length):(p._fontFamiliesPtr=0,p._fontFamiliesLen=0);if(p.locale){var x=p.locale;p._localePtr=u(x);p._localeLen=qa(x)}else p._localePtr=
0,p._localeLen=0;if(Array.isArray(p.shadows)&&p.shadows.length){x=p.shadows;var M=x.map(function(ma){return ma.color||g.BLACK}),W=x.map(function(ma){return ma.blurRadius||0});p._shadowLen=x.length;for(var wa=g._malloc(8*x.length),wb=wa/4,xb=0;xb<x.length;xb++){var $b=x[xb].offset||[0,0];g.HEAPF32[wb]=$b[0];g.HEAPF32[wb+1]=$b[1];wb+=2}p._shadowColorsPtr=l(M).be;p._shadowOffsetsPtr=wa;p._shadowBlurRadiiPtr=n(W,"HEAPF32")}else p._shadowLen=0,p._shadowColorsPtr=0,p._shadowOffsetsPtr=0,p._shadowBlurRadiiPtr=
0;Array.isArray(p.fontFeatures)&&p.fontFeatures.length?(x=p.fontFeatures,M=x.map(function(ma){return ma.name}),W=x.map(function(ma){return ma.value}),p._fontFeatureLen=x.length,p._fontFeatureNamesPtr=t(M),p._fontFeatureValuesPtr=n(W,"HEAPU32")):(p._fontFeatureLen=0,p._fontFeatureNamesPtr=0,p._fontFeatureValuesPtr=0);Array.isArray(p.fontVariations)&&p.fontVariations.length?(x=p.fontVariations,M=x.map(function(ma){return ma.axis}),W=x.map(function(ma){return ma.value}),p._fontVariationLen=x.length,
p._fontVariationAxesPtr=t(M),p._fontVariationValuesPtr=n(W,"HEAPF32")):(p._fontVariationLen=0,p._fontVariationAxesPtr=0,p._fontVariationValuesPtr=0)}function C(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,x,M,W){p=this._getRectsForRange(p,x,M,W);
return h(p)};g.Paragraph.prototype.getRectsForPlaceholders=function(){var p=this._getRectsForPlaceholders();return h(p)};g.Paragraph.prototype.getGlyphInfoAt=function(p){return d(this._getGlyphInfoAt(p))};g.Paragraph.prototype.getClosestGlyphInfoAtCoordinate=function(p,x){return d(this._getClosestGlyphInfoAtCoordinate(p,x))};g.TypefaceFontProvider.prototype.registerFont=function(p,x){p=g.Typeface.MakeTypefaceFromData(p);if(!p)return null;x=u(x);this._registerFont(p,x);p.delete()};g.ParagraphStyle=
function(p){p.disableHinting=p.disableHinting||!1;if(p.ellipsis){var x=p.ellipsis;p._ellipsisPtr=u(x);p._ellipsisLen=qa(x)}else p._ellipsisPtr=0,p._ellipsisLen=0;null==p.heightMultiplier&&(p.heightMultiplier=-1);p.maxLines=p.maxLines||0;p.replaceTabCharacters=p.replaceTabCharacters||!1;x=(x=p.strutStyle)||{};x.strutEnabled=x.strutEnabled||!1;x.strutEnabled&&Array.isArray(x.fontFamilies)&&x.fontFamilies.length?(x._fontFamiliesPtr=t(x.fontFamilies),x._fontFamiliesLen=x.fontFamilies.length):(x._fontFamiliesPtr=
0,x._fontFamiliesLen=0);x.fontStyle=m(x.fontStyle);null==x.fontSize&&(x.fontSize=-1);null==x.heightMultiplier&&(x.heightMultiplier=-1);x.halfLeading=x.halfLeading||!1;x.leading=x.leading||0;x.forceStrutHeight=x.forceStrutHeight||!1;p.strutStyle=x;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);p.applyRoundingHack=!1!==p.applyRoundingHack;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=m(p.fontStyle);return p};var G={},F=g._malloc(16),S=g._malloc(16),
T=g._malloc(16);g.ParagraphBuilder.Make=function(p,x){y(p.textStyle);x=g.ParagraphBuilder._Make(p,x);C(p.textStyle);return x};g.ParagraphBuilder.MakeFromFontProvider=function(p,x){y(p.textStyle);x=g.ParagraphBuilder._MakeFromFontProvider(p,x);C(p.textStyle);return x};g.ParagraphBuilder.MakeFromFontCollection=function(p,x){y(p.textStyle);x=g.ParagraphBuilder._MakeFromFontCollection(p,x);C(p.textStyle);return x};g.ParagraphBuilder.ShapeText=function(p,x,M){let W=0;for(const wa of x)W+=wa.length;if(W!==
p.length)throw"Accumulated block lengths must equal text.length";return g.ParagraphBuilder._ShapeText(p,x,M)};g.ParagraphBuilder.prototype.pushStyle=function(p){y(p);this._pushStyle(p);C(p)};g.ParagraphBuilder.prototype.pushPaintStyle=function(p,x,M){y(p);this._pushPaintStyle(p,x,M);C(p)};g.ParagraphBuilder.prototype.addPlaceholder=function(p,x,M,W,wa){M=M||g.PlaceholderAlignment.Baseline;W=W||g.TextBaseline.Alphabetic;this._addPlaceholder(p||0,x||0,M,W,wa||0)};g.ParagraphBuilder.prototype.setWordsUtf8=
function(p){var x=n(p,"HEAPU32");this._setWordsUtf8(x,p&&p.length||0);k(x,p)};g.ParagraphBuilder.prototype.setWordsUtf16=function(p){var x=n(p,"HEAPU32");this._setWordsUtf16(x,p&&p.length||0);k(x,p)};g.ParagraphBuilder.prototype.setGraphemeBreaksUtf8=function(p){var x=n(p,"HEAPU32");this._setGraphemeBreaksUtf8(x,p&&p.length||0);k(x,p)};g.ParagraphBuilder.prototype.setGraphemeBreaksUtf16=function(p){var x=n(p,"HEAPU32");this._setGraphemeBreaksUtf16(x,p&&p.length||0);k(x,p)};g.ParagraphBuilder.prototype.setLineBreaksUtf8=
function(p){var x=n(p,"HEAPU32");this._setLineBreaksUtf8(x,p&&p.length||0);k(x,p)};g.ParagraphBuilder.prototype.setLineBreaksUtf16=function(p){var x=n(p,"HEAPU32");this._setLineBreaksUtf16(x,p&&p.length||0);k(x,p)}})})(r);a.Xd=a.Xd||[];a.Xd.push(function(){});a.Xd=a.Xd||[];a.Xd.push(function(){a.Canvas.prototype.drawText=function(g,d,h,m,t){var u=qa(g),y=a._malloc(u+1);ra(g,y,u+1);this._drawSimpleText(y,u,d,h,t,m);a._free(y)};a.Canvas.prototype.drawGlyphs=function(g,d,h,m,t,u){if(!(2*g.length<=d.length))throw"Not enough positions for the array of gyphs";
a.Ud(this.Td);const y=n(g,"HEAPU16"),C=n(d,"HEAPF32");this._drawGlyphs(g.length,y,C,h,m,t,u);k(C,d);k(y,g)};a.Font.prototype.getGlyphBounds=function(g,d,h){var m=n(g,"HEAPU16"),t=a._malloc(16*g.length);this._getGlyphWidthBounds(m,g.length,0,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=qa(g)+1,t=a._malloc(m);ra(g,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=n(g,"HEAPU16"),u=n(d,"HEAPF32");return this._getGlyphIntercepts(t,g.length,!(g&&g._ck),u,d.length,!(d&&d._ck),h,m)};a.Font.prototype.getGlyphWidths=function(g,d,h){var m=n(g,"HEAPU16"),t=a._malloc(4*g.length);this._getGlyphWidthBounds(m,g.length,t,0,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]),u=n(t,"HEAPU8");d.push(u);h.push(t.byteLength)}d=n(d,"HEAPU32");h=n(h,"HEAPU32");g=a.FontMgr._fromData(d,h,g.length);a._free(d);a._free(h);return g};
a.Typeface.MakeTypefaceFromData=function(g){g=new Uint8Array(g);var d=n(g,"HEAPU8");return(g=a.Typeface._MakeTypefaceFromData(d,g.byteLength))?g:null};a.Typeface.MakeFreeTypeFaceFromData=a.Typeface.MakeTypefaceFromData;a.Typeface.prototype.getGlyphIDs=function(g,d,h){d||(d=g.length);var m=qa(g)+1,t=a._malloc(m);ra(g,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||=0;var t=h.getGlyphIDs(g);t=h.getGlyphWidths(t);var u=[];d=new a.ContourMeasureIter(d,!1,1);for(var y=d.next(),C=new Float32Array(4),G=0;G<g.length&&y;G++){var F=t[G];m+=F/2;if(m>y.length()){y.delete();y=d.next();if(!y){g=g.substring(0,G);break}m=F/2}y.getPosTan(m,C);var S=C[2],T=C[3];u.push(S,T,C[0]-F/2*S,C[1]-F/2*T);m+=F/2}g=this.MakeFromRSXform(g,
u,h);y&&y.delete();d.delete();return g}};a.TextBlob.MakeFromRSXform=function(g,d,h){var m=qa(g)+1,t=a._malloc(m);ra(g,t,m);g=n(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=n(g,"HEAPU16");d=n(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=n(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=qa(g)+1,m=a._malloc(h);ra(g,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.Xd=a.Xd||[];a.Xd.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.Xd=a.Xd||[];a.Xd.push(function(){a.RuntimeEffect.Make=function(g,d){return a.RuntimeEffect._Make(g,{onError:d||function(h){console.log("RuntimeEffect error",
h)}})};a.RuntimeEffect.MakeForBlender=function(g,d){return a.RuntimeEffect._MakeForBlender(g,{onError:d||function(h){console.log("RuntimeEffect error",h)}})};a.RuntimeEffect.prototype.makeShader=function(g,d){var h=!g._ck,m=n(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=n(g,"HEAPF32");h=q(h);for(var u=[],y=0;y<d.length;y++)u.push(d[y].Sd.Vd);d=n(u,"HEAPU32");return this._makeShaderWithChildren(t,4*g.length,
m,d,u.length,h)};a.RuntimeEffect.prototype.makeBlender=function(g){var d=!g._ck,h=n(g,"HEAPF32");return this._makeBlender(h,4*g.length,d)}})})(r);var sa=Object.assign({},r),ta="",ua,va;
if(fa||ia)ia?ta=self.location.href:"undefined"!=typeof document&&document.currentScript&&(ta=document.currentScript.src),_scriptName&&(ta=_scriptName),ta.startsWith("blob:")?ta="":ta=ta.substr(0,ta.replace(/[?#].*/,"").lastIndexOf("/")+1),ia&&(va=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),ua=a=>fetch(a,{credentials:"same-origin"}).then(b=>b.ok?b.arrayBuffer():Promise.reject(Error(b.status+" : "+b.url)));
var xa=console.log.bind(console),ya=console.error.bind(console);Object.assign(r,sa);sa=null;var za,Ba=!1,Ca,B,Da,Fa,E,H,J,Ga;function Ha(){var a=za.buffer;r.HEAP8=Ca=new Int8Array(a);r.HEAP16=Da=new Int16Array(a);r.HEAPU8=B=new Uint8Array(a);r.HEAPU16=Fa=new Uint16Array(a);r.HEAP32=E=new Int32Array(a);r.HEAPU32=H=new Uint32Array(a);r.HEAPF32=J=new Float32Array(a);r.HEAPF64=Ga=new Float64Array(a)}var Ia=[],Ja=[],Ka=[],La=0,Na=null,Oa=null;
function Pa(a){a="Aborted("+a+")";ya(a);Ba=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");da(a);throw a;}var Qa=a=>a.startsWith("data:application/octet-stream;base64,"),Ra;function Sa(a){return ua(a).then(b=>new Uint8Array(b),()=>{if(va)var b=va(a);else throw"both async and sync fetching of the wasm failed";return b})}function Ta(a,b,c){return Sa(a).then(e=>WebAssembly.instantiate(e,b)).then(c,e=>{ya(`failed to asynchronously prepare wasm: ${e}`);Pa(e)})}
function Ua(a,b){var c=Ra;return"function"!=typeof WebAssembly.instantiateStreaming||Qa(c)||"function"!=typeof fetch?Ta(c,a,b):fetch(c,{credentials:"same-origin"}).then(e=>WebAssembly.instantiateStreaming(e,a).then(b,function(f){ya(`wasm streaming compile failed: ${f}`);ya("falling back to ArrayBuffer instantiation");return Ta(c,a,b)}))}function Va(a){this.name="ExitStatus";this.message=`Program terminated with exit(${a})`;this.status=a}var Wa=a=>{a.forEach(b=>b(r))},Xa=r.noExitRuntime||!0;
class Ya{constructor(a){this.Vd=a-24}}
var Za=0,bb=0,cb="undefined"!=typeof TextDecoder?new TextDecoder:void 0,db=(a,b=0,c=NaN)=>{var e=b+c;for(c=b;a[c]&&!(c>=e);)++c;if(16<c-b&&a.buffer&&cb)return cb.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 n=a[b++]&63;f=224==(f&240)?(f&15)<<12|k<<6|n:(f&7)<<18|k<<12|n<<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},
eb={},fb=a=>{for(;a.length;){var b=a.pop();a.pop()(b)}};function gb(a){return this.fromWireType(H[a>>2])}
var hb={},ib={},jb={},kb,mb=(a,b,c)=>{function e(l){l=c(l);if(l.length!==a.length)throw new kb("Mismatched type converter count");for(var q=0;q<a.length;++q)lb(a[q],l[q])}a.forEach(l=>jb[l]=b);var f=Array(b.length),k=[],n=0;b.forEach((l,q)=>{ib.hasOwnProperty(l)?f[q]=ib[l]:(k.push(l),hb.hasOwnProperty(l)||(hb[l]=[]),hb[l].push(()=>{f[q]=ib[l];++n;n===k.length&&e(f)}))});0===k.length&&e(f)},nb,K=a=>{for(var b="";B[a];)b+=nb[B[a++]];return b},L;
function ob(a,b,c={}){var e=b.name;if(!a)throw new L(`type "${e}" must have a positive integer typeid pointer`);if(ib.hasOwnProperty(a)){if(c.ef)return;throw new L(`Cannot register type '${e}' twice`);}ib[a]=b;delete jb[a];hb.hasOwnProperty(a)&&(b=hb[a],delete hb[a],b.forEach(f=>f()))}function lb(a,b,c={}){return ob(a,b,c)}
var pb=a=>{throw new L(a.Sd.Yd.Wd.name+" instance already deleted");},qb=!1,rb=()=>{},sb=(a,b,c)=>{if(b===c)return a;if(void 0===c.ae)return null;a=sb(a,b,c.ae);return null===a?null:c.Xe(a)},yb={},zb={},Ab=(a,b)=>{if(void 0===b)throw new L("ptr should not be undefined");for(;a.ae;)b=a.se(b),a=a.ae;return zb[b]},Cb=(a,b)=>{if(!b.Yd||!b.Vd)throw new kb("makeClassHandle requires ptr and ptrType");if(!!b.ce!==!!b.Zd)throw new kb("Both smartPtrType and smartPtr must be specified");b.count={value:1};return Bb(Object.create(a,
{Sd:{value:b,writable:!0}}))},Bb=a=>{if("undefined"===typeof FinalizationRegistry)return Bb=b=>b,a;qb=new FinalizationRegistry(b=>{b=b.Sd;--b.count.value;0===b.count.value&&(b.Zd?b.ce.he(b.Zd):b.Yd.Wd.he(b.Vd))});Bb=b=>{var c=b.Sd;c.Zd&&qb.register(b,{Sd:c},b);return b};rb=b=>{qb.unregister(b)};return Bb(a)},Db=[];function Eb(){}
var Fb=(a,b)=>Object.defineProperty(b,"name",{value:a}),Gb=(a,b,c)=>{if(void 0===a[b].$d){var e=a[b];a[b]=function(...f){if(!a[b].$d.hasOwnProperty(f.length))throw new L(`Function '${c}' called with an invalid number of arguments (${f.length}) - expects one of (${a[b].$d})!`);return a[b].$d[f.length].apply(this,f)};a[b].$d=[];a[b].$d[e.ie]=e}},Hb=(a,b,c)=>{if(r.hasOwnProperty(a)){if(void 0===c||void 0!==r[a].$d&&void 0!==r[a].$d[c])throw new L(`Cannot register public name '${a}' twice`);Gb(r,a,a);
if(r[a].$d.hasOwnProperty(c))throw new L(`Cannot register multiple overloads of a function with the same number of arguments (${c})!`);r[a].$d[c]=b}else r[a]=b,r[a].ie=c},Ib=a=>{a=a.replace(/[^a-zA-Z0-9_]/g,"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?`_${a}`:a};function Jb(a,b,c,e,f,k,n,l){this.name=a;this.constructor=b;this.me=c;this.he=e;this.ae=f;this.$e=k;this.se=n;this.Xe=l;this.hf=[]}
var Kb=(a,b,c)=>{for(;b!==c;){if(!b.se)throw new L(`Expected null or instance of ${c.name}, got an instance of ${b.name}`);a=b.se(a);b=b.ae}return a};function Lb(a,b){if(null===b){if(this.Ee)throw new L(`null is not a valid ${this.name}`);return 0}if(!b.Sd)throw new L(`Cannot pass "${Mb(b)}" as a ${this.name}`);if(!b.Sd.Vd)throw new L(`Cannot pass deleted object as a pointer of type ${this.name}`);return Kb(b.Sd.Vd,b.Sd.Yd.Wd,this.Wd)}
function Nb(a,b){if(null===b){if(this.Ee)throw new L(`null is not a valid ${this.name}`);if(this.xe){var c=this.Fe();null!==a&&a.push(this.he,c);return c}return 0}if(!b||!b.Sd)throw new L(`Cannot pass "${Mb(b)}" as a ${this.name}`);if(!b.Sd.Vd)throw new L(`Cannot pass deleted object as a pointer of type ${this.name}`);if(!this.we&&b.Sd.Yd.we)throw new L(`Cannot convert argument of type ${b.Sd.ce?b.Sd.ce.name:b.Sd.Yd.name} to parameter type ${this.name}`);c=Kb(b.Sd.Vd,b.Sd.Yd.Wd,this.Wd);if(this.xe){if(void 0===
b.Sd.Zd)throw new L("Passing raw pointer to smart pointer is illegal");switch(this.nf){case 0:if(b.Sd.ce===this)c=b.Sd.Zd;else throw new L(`Cannot convert argument of type ${b.Sd.ce?b.Sd.ce.name:b.Sd.Yd.name} to parameter type ${this.name}`);break;case 1:c=b.Sd.Zd;break;case 2:if(b.Sd.ce===this)c=b.Sd.Zd;else{var e=b.clone();c=this.jf(c,Ob(()=>e["delete"]()));null!==a&&a.push(this.he,c)}break;default:throw new L("Unsupporting sharing policy");}}return c}
function Pb(a,b){if(null===b){if(this.Ee)throw new L(`null is not a valid ${this.name}`);return 0}if(!b.Sd)throw new L(`Cannot pass "${Mb(b)}" as a ${this.name}`);if(!b.Sd.Vd)throw new L(`Cannot pass deleted object as a pointer of type ${this.name}`);if(b.Sd.Yd.we)throw new L(`Cannot convert argument of type ${b.Sd.Yd.name} to parameter type ${this.name}`);return Kb(b.Sd.Vd,b.Sd.Yd.Wd,this.Wd)}
function Qb(a,b,c,e,f,k,n,l,q,v,w){this.name=a;this.Wd=b;this.Ee=c;this.we=e;this.xe=f;this.gf=k;this.nf=n;this.Me=l;this.Fe=q;this.jf=v;this.he=w;f||void 0!==b.ae?this.toWireType=Nb:(this.toWireType=e?Lb:Pb,this.ee=null)}
var Rb=(a,b,c)=>{if(!r.hasOwnProperty(a))throw new kb("Replacing nonexistent public symbol");void 0!==r[a].$d&&void 0!==c?r[a].$d[c]=b:(r[a]=b,r[a].ie=c)},N,Sb=(a,b,c=[])=>{a.includes("j")?(a=a.replace(/p/g,"i"),b=(0,r["dynCall_"+a])(b,...c)):b=N.get(b)(...c);return b},Tb=(a,b)=>(...c)=>Sb(a,b,c),Q=(a,b)=>{a=K(a);var c=a.includes("j")?Tb(a,b):N.get(b);if("function"!=typeof c)throw new L(`unknown function pointer with signature ${a}: ${b}`);return c},ac,dc=a=>{a=bc(a);var b=K(a);cc(a);return b},ec=
(a,b)=>{function c(k){f[k]||ib[k]||(jb[k]?jb[k].forEach(c):(e.push(k),f[k]=!0))}var e=[],f={};b.forEach(c);throw new ac(`${a}: `+e.map(dc).join([", "]));};function fc(a){for(var b=1;b<a.length;++b)if(null!==a[b]&&void 0===a[b].ee)return!0;return!1}
function gc(a,b,c,e,f){var k=b.length;if(2>k)throw new L("argTypes array size mismatch! Must at least get return value and 'this' types!");var n=null!==b[1]&&null!==c,l=fc(b),q="void"!==b[0].name,v=k-2,w=Array(v),A=[],D=[];return Fb(a,function(...I){D.length=0;A.length=n?2:1;A[0]=f;if(n){var P=b[1].toWireType(D,this);A[1]=P}for(var O=0;O<v;++O)w[O]=b[O+2].toWireType(D,I[O]),A.push(w[O]);I=e(...A);if(l)fb(D);else for(O=n?1:2;O<b.length;O++){var aa=1===O?P:w[O-2];null!==b[O].ee&&b[O].ee(aa)}P=q?b[0].fromWireType(I):
void 0;return P})}
var hc=(a,b)=>{for(var c=[],e=0;e<a;e++)c.push(H[b+4*e>>2]);return c},ic=a=>{a=a.trim();const b=a.indexOf("(");return-1!==b?a.substr(0,b):a},jc=[],kc=[],lc=a=>{9<a&&0===--kc[a+1]&&(kc[a]=void 0,jc.push(a))},mc=a=>{if(!a)throw new L("Cannot use deleted val. handle = "+a);return kc[a]},Ob=a=>{switch(a){case void 0:return 2;case null:return 4;case !0:return 6;case !1:return 8;default:const b=jc.pop()||kc.length;kc[b]=a;kc[b+1]=1;return b}},nc={name:"emscripten::val",fromWireType:a=>{var b=mc(a);lc(a);
return b},toWireType:(a,b)=>Ob(b),de:8,readValueFromPointer:gb,ee:null},oc=(a,b,c)=>{switch(b){case 1:return c?function(e){return this.fromWireType(Ca[e])}:function(e){return this.fromWireType(B[e])};case 2:return c?function(e){return this.fromWireType(Da[e>>1])}:function(e){return this.fromWireType(Fa[e>>1])};case 4:return c?function(e){return this.fromWireType(E[e>>2])}:function(e){return this.fromWireType(H[e>>2])};default:throw new TypeError(`invalid integer width (${b}): ${a}`);}},pc=(a,b)=>
{var c=ib[a];if(void 0===c)throw a=`${b} has unknown type ${dc(a)}`,new L(a);return c},Mb=a=>{if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a},qc=(a,b)=>{switch(b){case 4:return function(c){return this.fromWireType(J[c>>2])};case 8:return function(c){return this.fromWireType(Ga[c>>3])};default:throw new TypeError(`invalid float width (${b}): ${a}`);}},rc=(a,b,c)=>{switch(b){case 1:return c?e=>Ca[e]:e=>B[e];case 2:return c?e=>Da[e>>1]:e=>Fa[e>>
1];case 4:return c?e=>E[e>>2]:e=>H[e>>2];default:throw new TypeError(`invalid integer width (${b}): ${a}`);}},ra=(a,b,c)=>{var e=B;if(!(0<c))return 0;var f=b;c=b+c-1;for(var k=0;k<a.length;++k){var n=a.charCodeAt(k);if(55296<=n&&57343>=n){var l=a.charCodeAt(++k);n=65536+((n&1023)<<10)|l&1023}if(127>=n){if(b>=c)break;e[b++]=n}else{if(2047>=n){if(b+1>=c)break;e[b++]=192|n>>6}else{if(65535>=n){if(b+2>=c)break;e[b++]=224|n>>12}else{if(b+3>=c)break;e[b++]=240|n>>18;e[b++]=128|n>>12&63}e[b++]=128|n>>6&
63}e[b++]=128|n&63}}e[b]=0;return b-f},qa=a=>{for(var b=0,c=0;c<a.length;++c){var e=a.charCodeAt(c);127>=e?b++:2047>=e?b+=2:55296<=e&&57343>=e?(b+=4,++c):b+=3}return b},sc="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,tc=(a,b)=>{var c=a>>1;for(var e=c+b/2;!(c>=e)&&Fa[c];)++c;c<<=1;if(32<c-a&&sc)return sc.decode(B.subarray(a,c));c="";for(e=0;!(e>=b/2);++e){var f=Da[a+2*e>>1];if(0==f)break;c+=String.fromCharCode(f)}return c},uc=(a,b,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)Da[b>>1]=a.charCodeAt(f),b+=2;Da[b>>1]=0;return b-e},vc=a=>2*a.length,wc=(a,b)=>{for(var c=0,e="";!(c>=b/4);){var f=E[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},xc=(a,b,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 n=a.charCodeAt(++f);k=65536+((k&1023)<<10)|n&1023}E[b>>2]=k;b+=
4;if(b+4>c)break}E[b>>2]=0;return b-e},yc=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},zc=(a,b,c)=>{var e=[];a=a.toWireType(e,c);e.length&&(H[b>>2]=Ob(e));return a},Ac=[],Bc={},Cc=a=>{var b=Bc[a];return void 0===b?K(a):b},Dc=()=>{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.");},Ec=a=>{var b=Ac.length;Ac.push(a);return b},Fc=(a,b)=>{for(var c=Array(a),e=0;e<a;++e)c[e]=pc(H[b+4*e>>2],"parameter "+e);return c},Gc=Reflect.construct,R,Hc=a=>{var b=a.getExtension("ANGLE_instanced_arrays");b&&(a.vertexAttribDivisor=(c,e)=>b.vertexAttribDivisorANGLE(c,
e),a.drawArraysInstanced=(c,e,f,k)=>b.drawArraysInstancedANGLE(c,e,f,k),a.drawElementsInstanced=(c,e,f,k,n)=>b.drawElementsInstancedANGLE(c,e,f,k,n))},Ic=a=>{var b=a.getExtension("OES_vertex_array_object");b&&(a.createVertexArray=()=>b.createVertexArrayOES(),a.deleteVertexArray=c=>b.deleteVertexArrayOES(c),a.bindVertexArray=c=>b.bindVertexArrayOES(c),a.isVertexArray=c=>b.isVertexArrayOES(c))},Jc=a=>{var b=a.getExtension("WEBGL_draw_buffers");b&&(a.drawBuffers=(c,e)=>b.drawBuffersWEBGL(c,e))},Kc=a=>
{var b="ANGLE_instanced_arrays EXT_blend_minmax EXT_disjoint_timer_query EXT_frag_depth EXT_shader_texture_lod EXT_sRGB OES_element_index_uint OES_fbo_render_mipmap OES_standard_derivatives OES_texture_float OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_depth_texture WEBGL_draw_buffers EXT_color_buffer_float EXT_conservative_depth EXT_disjoint_timer_query_webgl2 EXT_texture_norm16 NV_shader_noperspective_interpolation WEBGL_clip_cull_distance EXT_clip_control EXT_color_buffer_half_float EXT_depth_clamp EXT_float_blend EXT_polygon_offset_clamp EXT_texture_compression_bptc EXT_texture_compression_rgtc EXT_texture_filter_anisotropic KHR_parallel_shader_compile OES_texture_float_linear WEBGL_blend_func_extended WEBGL_compressed_texture_astc WEBGL_compressed_texture_etc WEBGL_compressed_texture_etc1 WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context WEBGL_multi_draw WEBGL_polygon_mode".split(" ");
return(a.getSupportedExtensions()||[]).filter(c=>b.includes(c))},Lc=1,Mc=[],Nc=[],Oc=[],Pc=[],ka=[],Qc=[],Rc=[],pa=[],Sc=[],Tc=[],Uc=[],Wc={},Xc={},Yc=4,Zc=0,ja=a=>{for(var b=Lc++,c=a.length;c<b;c++)a[c]=null;return b},$c=(a,b,c,e)=>{for(var f=0;f<a;f++){var k=R[c](),n=k&&ja(e);k?(k.name=n,e[n]=k):V||=1282;E[b+4*f>>2]=n}},na=(a,b)=>{a.He||(a.He=a.getContext,a.getContext=function(e,f){f=a.He(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?ad(c,b):0},ad=(a,b)=>{var c=ja(pa),e={handle:c,attributes:b,version:b.majorVersion,fe:a};a.canvas&&(a.canvas.Pe=e);pa[c]=e;("undefined"==typeof b.Ye||b.Ye)&&bd(e);return c},oa=a=>{z=pa[a];r.pf=R=z?.fe;return!(a&&!R)},bd=a=>{a||=z;if(!a.ff){a.ff=!0;var b=a.fe;b.tf=b.getExtension("WEBGL_multi_draw");b.rf=b.getExtension("EXT_polygon_offset_clamp");b.qf=b.getExtension("EXT_clip_control");b.vf=b.getExtension("WEBGL_polygon_mode");Hc(b);Ic(b);Jc(b);b.Je=b.getExtension("WEBGL_draw_instanced_base_vertex_base_instance");
b.Le=b.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance");2<=a.version&&(b.ge=b.getExtension("EXT_disjoint_timer_query_webgl2"));if(2>a.version||!b.ge)b.ge=b.getExtension("EXT_disjoint_timer_query");Kc(b).forEach(c=>{c.includes("lose_context")||c.includes("debug")||b.getExtension(c)})}},z,V,cd=(a,b)=>{R.bindFramebuffer(a,Oc[b])},dd=a=>{R.bindVertexArray(Rc[a])},ed=a=>R.clear(a),fd=(a,b,c,e)=>R.clearColor(a,b,c,e),gd=a=>R.clearStencil(a),hd=(a,b)=>{for(var c=0;c<a;c++){var e=E[b+
4*c>>2];R.deleteVertexArray(Rc[e]);Rc[e]=null}},jd=[],kd=(a,b)=>{$c(a,b,"createVertexArray",Rc)};function ld(){var a=Kc(R);return a=a.concat(a.map(b=>"GL_"+b))}
var md=(a,b,c)=>{if(b){var e=void 0;switch(a){case 36346:e=1;break;case 36344:0!=c&&1!=c&&(V||=1280);return;case 34814:case 36345:e=0;break;case 34466:var f=R.getParameter(34467);e=f?f.length:0;break;case 33309:if(2>z.version){V||=1282;return}e=ld().length;break;case 33307:case 33308:if(2>z.version){V||=1280;return}e=33307==a?3:0}if(void 0===e)switch(f=R.getParameter(a),typeof f){case "number":e=f;break;case "boolean":e=f?1:0;break;case "string":V||=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:V||=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:E[b+4*a>>2]=f[a];break;case 2:J[b+4*a>>2]=f[a];break;case 4:Ca[b+a]=f[a]?1:0}return}try{e=f.name|0}catch(k){V||=1280;ya(`GL_INVALID_ENUM in glGet${c}v: Unknown object returned from WebGL getParameter(${a})! (error: ${k})`);return}}break;default:V||=1280;ya(`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;H[b>>2]=c;H[b+4>>2]=(c-H[b>>2])/4294967296;break;case 0:E[b>>2]=e;break;case 2:J[b>>2]=e;break;case 4:Ca[b]=e?1:0}}else V||=1281},nd=(a,b)=>md(a,b,0),od=(a,b,c)=>{if(c){a=Sc[a];b=2>z.version?R.ge.getQueryObjectEXT(a,b):R.getQueryParameter(a,b);var e;"boolean"==typeof b?e=b?1:0:e=b;H[c>>2]=e;H[c+4>>2]=(e-H[c>>2])/4294967296}else V||=1281},qd=a=>{var b=qa(a)+1,c=pd(b);c&&ra(a,c,b);return c},rd=a=>{var b=Wc[a];if(!b){switch(a){case 7939:b=qd(ld().join(" "));break;case 7936:case 7937:case 37445:case 37446:(b=
R.getParameter(a))||(V||=1280);b=b?qd(b):0;break;case 7938:b=R.getParameter(7938);var c=`OpenGL ES 2.0 (${b})`;2<=z.version&&(c=`OpenGL ES 3.0 (${b})`);b=qd(c);break;case 35724:b=R.getParameter(35724);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=qd(b);break;default:V||=1280}Wc[a]=b}return b},sd=(a,b)=>{if(2>z.version)return V||=1282,0;var c=Xc[a];if(c)return 0>b||b>=c.length?(V||=1281,0):c[b];switch(a){case 7939:return c=
ld().map(qd),c=Xc[a]=c,0>b||b>=c.length?(V||=1281,0):c[b];default:return V||=1280,0}},td=a=>"]"==a.slice(-1)&&a.lastIndexOf("["),ud=a=>{a-=5120;return 0==a?Ca:1==a?B:2==a?Da:4==a?E:6==a?J:5==a||28922==a||28520==a||30779==a||30782==a?H:Fa},vd=(a,b,c,e,f)=>{a=ud(a);b=e*((Zc||c)*({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[b-6402]||1)*a.BYTES_PER_ELEMENT+Yc-1&-Yc);return a.subarray(f>>>31-Math.clz32(a.BYTES_PER_ELEMENT),f+b>>>31-Math.clz32(a.BYTES_PER_ELEMENT))},Y=a=>{var b=R.We;if(b){var c=
b.re[a];"number"==typeof c&&(b.re[a]=c=R.getUniformLocation(b,b.Ne[a]+(0<c?`[${c}]`:"")));return c}V||=1282},wd=[],xd=[],yd={},Ad=()=>{if(!zd){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",_:"./this.program"},b;for(b in yd)void 0===yd[b]?delete a[b]:a[b]=yd[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);zd=c}return zd},zd,Bd=[null,[],[]];
kb=r.InternalError=class extends Error{constructor(a){super(a);this.name="InternalError"}};for(var Cd=Array(256),Dd=0;256>Dd;++Dd)Cd[Dd]=String.fromCharCode(Dd);nb=Cd;L=r.BindingError=class extends Error{constructor(a){super(a);this.name="BindingError"}};
Object.assign(Eb.prototype,{isAliasOf:function(a){if(!(this instanceof Eb&&a instanceof Eb))return!1;var b=this.Sd.Yd.Wd,c=this.Sd.Vd;a.Sd=a.Sd;var e=a.Sd.Yd.Wd;for(a=a.Sd.Vd;b.ae;)c=b.se(c),b=b.ae;for(;e.ae;)a=e.se(a),e=e.ae;return b===e&&c===a},clone:function(){this.Sd.Vd||pb(this);if(this.Sd.qe)return this.Sd.count.value+=1,this;var a=Bb,b=Object,c=b.create,e=Object.getPrototypeOf(this),f=this.Sd;a=a(c.call(b,e,{Sd:{value:{count:f.count,pe:f.pe,qe:f.qe,Vd:f.Vd,Yd:f.Yd,Zd:f.Zd,ce:f.ce}}}));a.Sd.count.value+=
1;a.Sd.pe=!1;return a},["delete"](){this.Sd.Vd||pb(this);if(this.Sd.pe&&!this.Sd.qe)throw new L("Object already scheduled for deletion");rb(this);var a=this.Sd;--a.count.value;0===a.count.value&&(a.Zd?a.ce.he(a.Zd):a.Yd.Wd.he(a.Vd));this.Sd.qe||(this.Sd.Zd=void 0,this.Sd.Vd=void 0)},isDeleted:function(){return!this.Sd.Vd},deleteLater:function(){this.Sd.Vd||pb(this);if(this.Sd.pe&&!this.Sd.qe)throw new L("Object already scheduled for deletion");Db.push(this);this.Sd.pe=!0;return this}});
Object.assign(Qb.prototype,{af(a){this.Me&&(a=this.Me(a));return a},Ie(a){this.he?.(a)},de:8,readValueFromPointer:gb,fromWireType:function(a){function b(){return this.xe?Cb(this.Wd.me,{Yd:this.gf,Vd:c,ce:this,Zd:a}):Cb(this.Wd.me,{Yd:this,Vd:a})}var c=this.af(a);if(!c)return this.Ie(a),null;var e=Ab(this.Wd,c);if(void 0!==e){if(0===e.Sd.count.value)return e.Sd.Vd=c,e.Sd.Zd=a,e.clone();e=e.clone();this.Ie(a);return e}e=this.Wd.$e(c);e=yb[e];if(!e)return b.call(this);e=this.we?e.Ve:e.pointerType;var f=
sb(c,this.Wd,e.Wd);return null===f?b.call(this):this.xe?Cb(e.Wd.me,{Yd:e,Vd:f,ce:this,Zd:a}):Cb(e.Wd.me,{Yd:e,Vd:f})}});ac=r.UnboundTypeError=((a,b)=>{var c=Fb(b,function(e){this.name=b;this.message=e;e=Error(e).stack;void 0!==e&&(this.stack=this.toString()+"\n"+e.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(a.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`};return c})(Error,"UnboundTypeError");
kc.push(0,1,void 0,1,null,1,!0,1,!1,1);r.count_emval_handles=()=>kc.length/2-5-jc.length;for(var Ed=0;32>Ed;++Ed)jd.push(Array(Ed));var Fd=new Float32Array(288);for(Ed=0;288>=Ed;++Ed)wd[Ed]=Fd.subarray(0,Ed);var Gd=new Int32Array(288);for(Ed=0;288>=Ed;++Ed)xd[Ed]=Gd.subarray(0,Ed);
var Vd={F:(a,b,c)=>{var e=new Ya(a);H[e.Vd+16>>2]=0;H[e.Vd+4>>2]=b;H[e.Vd+8>>2]=c;Za=a;bb++;throw Za;},U:function(){return 0},ud:()=>{},td:function(){return 0},sd:()=>{},rd:function(){},qd:()=>{},md:()=>{Pa("")},B:a=>{var b=eb[a];delete eb[a];var c=b.Fe,e=b.he,f=b.Ke,k=f.map(n=>n.df).concat(f.map(n=>n.lf));mb([a],k,n=>{var l={};f.forEach((q,v)=>{var w=n[v],A=q.bf,D=q.cf,I=n[v+f.length],P=q.kf,O=q.mf;l[q.Ze]={read:aa=>w.fromWireType(A(D,aa)),write:(aa,la)=>{var X=[];P(O,aa,I.toWireType(X,la));fb(X)}}});
return[{name:b.name,fromWireType:q=>{var v={},w;for(w in l)v[w]=l[w].read(q);e(q);return v},toWireType:(q,v)=>{for(var w in l)if(!(w in v))throw new TypeError(`Missing field: "${w}"`);var A=c();for(w in l)l[w].write(A,v[w]);null!==q&&q.push(e,A);return A},de:8,readValueFromPointer:gb,ee:e}]})},X:()=>{},ld:(a,b,c,e)=>{b=K(b);lb(a,{name:b,fromWireType:function(f){return!!f},toWireType:function(f,k){return k?c:e},de:8,readValueFromPointer:function(f){return this.fromWireType(B[f])},ee:null})},j:(a,b,
c,e,f,k,n,l,q,v,w,A,D)=>{w=K(w);k=Q(f,k);l&&=Q(n,l);v&&=Q(q,v);D=Q(A,D);var I=Ib(w);Hb(I,function(){ec(`Cannot construct ${w} due to unbound types`,[e])});mb([a,b,c],e?[e]:[],P=>{P=P[0];if(e){var O=P.Wd;var aa=O.me}else aa=Eb.prototype;P=Fb(w,function(...Ea){if(Object.getPrototypeOf(this)!==la)throw new L("Use 'new' to construct "+w);if(void 0===X.je)throw new L(w+" has no accessible constructor");var ba=X.je[Ea.length];if(void 0===ba)throw new L(`Tried to invoke ctor of ${w} with invalid number of parameters (${Ea.length}) - expected (${Object.keys(X.je).toString()}) parameters instead!`);
return ba.apply(this,Ea)});var la=Object.create(aa,{constructor:{value:P}});P.prototype=la;var X=new Jb(w,P,la,D,O,k,l,v);if(X.ae){var ha;(ha=X.ae).te??(ha.te=[]);X.ae.te.push(X)}O=new Qb(w,X,!0,!1,!1);ha=new Qb(w+"*",X,!1,!1,!1);aa=new Qb(w+" const*",X,!1,!0,!1);yb[a]={pointerType:ha,Ve:aa};Rb(I,P);return[O,ha,aa]})},e:(a,b,c,e,f,k,n)=>{var l=hc(c,e);b=K(b);b=ic(b);k=Q(f,k);mb([],[a],q=>{function v(){ec(`Cannot call ${w} due to unbound types`,l)}q=q[0];var w=`${q.name}.${b}`;b.startsWith("@@")&&
(b=Symbol[b.substring(2)]);var A=q.Wd.constructor;void 0===A[b]?(v.ie=c-1,A[b]=v):(Gb(A,b,w),A[b].$d[c-1]=v);mb([],l,D=>{D=[D[0],null].concat(D.slice(1));D=gc(w,D,null,k,n);void 0===A[b].$d?(D.ie=c-1,A[b]=D):A[b].$d[c-1]=D;if(q.Wd.te)for(const I of q.Wd.te)I.constructor.hasOwnProperty(b)||(I.constructor[b]=D);return[]});return[]})},x:(a,b,c,e,f,k)=>{var n=hc(b,c);f=Q(e,f);mb([],[a],l=>{l=l[0];var q=`constructor ${l.name}`;void 0===l.Wd.je&&(l.Wd.je=[]);if(void 0!==l.Wd.je[b-1])throw new L(`Cannot register multiple constructors with identical number of parameters (${b-
1}) for class '${l.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);l.Wd.je[b-1]=()=>{ec(`Cannot construct ${l.name} due to unbound types`,n)};mb([],n,v=>{v.splice(1,0,null);l.Wd.je[b-1]=gc(q,v,null,f,k);return[]});return[]})},a:(a,b,c,e,f,k,n,l)=>{var q=hc(c,e);b=K(b);b=ic(b);k=Q(f,k);mb([],[a],v=>{function w(){ec(`Cannot call ${A} due to unbound types`,q)}v=v[0];var A=`${v.name}.${b}`;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);l&&v.Wd.hf.push(b);
var D=v.Wd.me,I=D[b];void 0===I||void 0===I.$d&&I.className!==v.name&&I.ie===c-2?(w.ie=c-2,w.className=v.name,D[b]=w):(Gb(D,b,A),D[b].$d[c-2]=w);mb([],q,P=>{P=gc(A,P,v,k,n);void 0===D[b].$d?(P.ie=c-2,D[b]=P):D[b].$d[c-2]=P;return[]});return[]})},q:(a,b,c)=>{a=K(a);mb([],[b],e=>{e=e[0];r[a]=e.fromWireType(c);return[]})},kd:a=>lb(a,nc),i:(a,b,c,e)=>{function f(){}b=K(b);f.values={};lb(a,{name:b,constructor:f,fromWireType:function(k){return this.constructor.values[k]},toWireType:(k,n)=>n.value,de:8,
readValueFromPointer:oc(b,c,e),ee:null});Hb(b,f)},b:(a,b,c)=>{var e=pc(a,"enum");b=K(b);a=e.constructor;e=Object.create(e.constructor.prototype,{value:{value:c},constructor:{value:Fb(`${e.name}_${b}`,function(){})}});a.values[c]=e;a[b]=e},R:(a,b,c)=>{b=K(b);lb(a,{name:b,fromWireType:e=>e,toWireType:(e,f)=>f,de:8,readValueFromPointer:qc(b,c),ee:null})},w:(a,b,c,e,f,k)=>{var n=hc(b,c);a=K(a);a=ic(a);f=Q(e,f);Hb(a,function(){ec(`Cannot call ${a} due to unbound types`,n)},b-1);mb([],n,l=>{l=[l[0],null].concat(l.slice(1));
Rb(a,gc(a,l,null,f,k),b-1);return[]})},C:(a,b,c,e,f)=>{b=K(b);-1===f&&(f=4294967295);f=l=>l;if(0===e){var k=32-8*c;f=l=>l<<k>>>k}var n=b.includes("unsigned")?function(l,q){return q>>>0}:function(l,q){return q};lb(a,{name:b,fromWireType:f,toWireType:n,de:8,readValueFromPointer:rc(b,c,0!==e),ee:null})},p:(a,b,c)=>{function e(k){return new f(Ca.buffer,H[k+4>>2],H[k>>2])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=K(c);lb(a,{name:c,fromWireType:e,
de:8,readValueFromPointer:e},{ef:!0})},o:(a,b,c,e,f,k,n,l,q,v,w,A)=>{c=K(c);k=Q(f,k);l=Q(n,l);v=Q(q,v);A=Q(w,A);mb([a],[b],D=>{D=D[0];return[new Qb(c,D.Wd,!1,!1,!0,D,e,k,l,v,A)]})},Q:(a,b)=>{b=K(b);var c="std::string"===b;lb(a,{name:b,fromWireType:function(e){var f=H[e>>2],k=e+4;if(c)for(var n=k,l=0;l<=f;++l){var q=k+l;if(l==f||0==B[q]){n=n?db(B,n,q-n):"";if(void 0===v)var v=n;else v+=String.fromCharCode(0),v+=n;n=q+1}}else{v=Array(f);for(l=0;l<f;++l)v[l]=String.fromCharCode(B[k+l]);v=v.join("")}cc(e);
return v},toWireType:function(e,f){f instanceof ArrayBuffer&&(f=new Uint8Array(f));var k="string"==typeof f;if(!(k||f instanceof Uint8Array||f instanceof Uint8ClampedArray||f instanceof Int8Array))throw new L("Cannot pass non-string to std::string");var n=c&&k?qa(f):f.length;var l=pd(4+n+1),q=l+4;H[l>>2]=n;if(c&&k)ra(f,q,n+1);else if(k)for(k=0;k<n;++k){var v=f.charCodeAt(k);if(255<v)throw cc(q),new L("String has UTF-16 code units that do not fit in 8 bits");B[q+k]=v}else for(k=0;k<n;++k)B[q+k]=f[k];
null!==e&&e.push(cc,l);return l},de:8,readValueFromPointer:gb,ee(e){cc(e)}})},M:(a,b,c)=>{c=K(c);if(2===b){var e=tc;var f=uc;var k=vc;var n=l=>Fa[l>>1]}else 4===b&&(e=wc,f=xc,k=yc,n=l=>H[l>>2]);lb(a,{name:c,fromWireType:l=>{for(var q=H[l>>2],v,w=l+4,A=0;A<=q;++A){var D=l+4+A*b;if(A==q||0==n(D))w=e(w,D-w),void 0===v?v=w:(v+=String.fromCharCode(0),v+=w),w=D+b}cc(l);return v},toWireType:(l,q)=>{if("string"!=typeof q)throw new L(`Cannot pass non-string to C++ string type ${c}`);var v=k(q),w=pd(4+v+b);
H[w>>2]=v/b;f(q,w+4,v+b);null!==l&&l.push(cc,w);return w},de:8,readValueFromPointer:gb,ee(l){cc(l)}})},A:(a,b,c,e,f,k)=>{eb[a]={name:K(b),Fe:Q(c,e),he:Q(f,k),Ke:[]}},d:(a,b,c,e,f,k,n,l,q,v)=>{eb[a].Ke.push({Ze:K(b),df:c,bf:Q(e,f),cf:k,lf:n,kf:Q(l,q),mf:v})},jd:(a,b)=>{b=K(b);lb(a,{sf:!0,name:b,de:0,fromWireType:()=>{},toWireType:()=>{}})},id:()=>1,hd:()=>{throw Infinity;},E:(a,b,c)=>{a=mc(a);b=pc(b,"emval::as");return zc(b,c,a)},L:(a,b,c,e)=>{a=Ac[a];b=mc(b);return a(null,b,c,e)},s:(a,b,c,e,f)=>{a=
Ac[a];b=mc(b);c=Cc(c);return a(b,b[c],e,f)},c:lc,K:a=>{if(0===a)return Ob(Dc());a=Cc(a);return Ob(Dc()[a])},n:(a,b,c)=>{var e=Fc(a,b),f=e.shift();a--;var k=Array(a);b=`methodCaller<(${e.map(n=>n.name).join(", ")}) => ${f.name}>`;return Ec(Fb(b,(n,l,q,v)=>{for(var w=0,A=0;A<a;++A)k[A]=e[A].readValueFromPointer(v+w),w+=e[A].de;n=1===c?Gc(l,k):l.apply(n,k);return zc(f,q,n)}))},z:(a,b)=>{a=mc(a);b=mc(b);return Ob(a[b])},H:a=>{9<a&&(kc[a+1]+=1)},G:()=>Ob([]),f:a=>Ob(Cc(a)),D:()=>Ob({}),gd:a=>{a=mc(a);
return!a},k:a=>{var b=mc(a);fb(b);lc(a)},h:(a,b,c)=>{a=mc(a);b=mc(b);c=mc(c);a[b]=c},g:(a,b)=>{a=pc(a,"_emval_take_value");a=a.readValueFromPointer(b);return Ob(a)},W:function(){return-52},V:function(){},fd:(a,b,c,e)=>{var f=(new Date).getFullYear(),k=(new Date(f,0,1)).getTimezoneOffset();f=(new Date(f,6,1)).getTimezoneOffset();H[a>>2]=60*Math.max(k,f);E[b>>2]=Number(k!=f);b=n=>{var l=Math.abs(n);return`UTC${0<=n?"-":"+"}${String(Math.floor(l/60)).padStart(2,"0")}${String(l%60).padStart(2,"0")}`};
a=b(k);b=b(f);f<k?(ra(a,c,17),ra(b,e,17)):(ra(a,e,17),ra(b,c,17))},ed:()=>performance.now(),dd:a=>R.activeTexture(a),cd:(a,b)=>{R.attachShader(Nc[a],Qc[b])},bd:(a,b)=>{R.beginQuery(a,Sc[b])},ad:(a,b)=>{R.ge.beginQueryEXT(a,Sc[b])},$c:(a,b,c)=>{R.bindAttribLocation(Nc[a],b,c?db(B,c):"")},_c:(a,b)=>{35051==a?R.Ce=b:35052==a&&(R.le=b);R.bindBuffer(a,Mc[b])},Zc:cd,Yc:(a,b)=>{R.bindRenderbuffer(a,Pc[b])},Xc:(a,b)=>{R.bindSampler(a,Tc[b])},Wc:(a,b)=>{R.bindTexture(a,ka[b])},Vc:dd,Uc:dd,Tc:(a,b,c,e)=>R.blendColor(a,
b,c,e),Sc:a=>R.blendEquation(a),Rc:(a,b)=>R.blendFunc(a,b),Qc:(a,b,c,e,f,k,n,l,q,v)=>R.blitFramebuffer(a,b,c,e,f,k,n,l,q,v),Pc:(a,b,c,e)=>{2<=z.version?c&&b?R.bufferData(a,B,e,c,b):R.bufferData(a,b,e):R.bufferData(a,c?B.subarray(c,c+b):b,e)},Oc:(a,b,c,e)=>{2<=z.version?c&&R.bufferSubData(a,b,B,e,c):R.bufferSubData(a,b,B.subarray(e,e+c))},Nc:a=>R.checkFramebufferStatus(a),Mc:ed,Lc:fd,Kc:gd,Jc:(a,b,c,e)=>R.clientWaitSync(Uc[a],b,(c>>>0)+4294967296*e),Ic:(a,b,c,e)=>{R.colorMask(!!a,!!b,!!c,!!e)},Hc:a=>
{R.compileShader(Qc[a])},Gc:(a,b,c,e,f,k,n,l)=>{2<=z.version?R.le||!n?R.compressedTexImage2D(a,b,c,e,f,k,n,l):R.compressedTexImage2D(a,b,c,e,f,k,B,l,n):R.compressedTexImage2D(a,b,c,e,f,k,B.subarray(l,l+n))},Fc:(a,b,c,e,f,k,n,l,q)=>{2<=z.version?R.le||!l?R.compressedTexSubImage2D(a,b,c,e,f,k,n,l,q):R.compressedTexSubImage2D(a,b,c,e,f,k,n,B,q,l):R.compressedTexSubImage2D(a,b,c,e,f,k,n,B.subarray(q,q+l))},Ec:(a,b,c,e,f)=>R.copyBufferSubData(a,b,c,e,f),Dc:(a,b,c,e,f,k,n,l)=>R.copyTexSubImage2D(a,b,c,
e,f,k,n,l),Cc:()=>{var a=ja(Nc),b=R.createProgram();b.name=a;b.Ae=b.ye=b.ze=0;b.Ge=1;Nc[a]=b;return a},Bc:a=>{var b=ja(Qc);Qc[b]=R.createShader(a);return b},Ac:a=>R.cullFace(a),zc:(a,b)=>{for(var c=0;c<a;c++){var e=E[b+4*c>>2],f=Mc[e];f&&(R.deleteBuffer(f),f.name=0,Mc[e]=null,e==R.Ce&&(R.Ce=0),e==R.le&&(R.le=0))}},yc:(a,b)=>{for(var c=0;c<a;++c){var e=E[b+4*c>>2],f=Oc[e];f&&(R.deleteFramebuffer(f),f.name=0,Oc[e]=null)}},xc:a=>{if(a){var b=Nc[a];b?(R.deleteProgram(b),b.name=0,Nc[a]=null):V||=1281}},
wc:(a,b)=>{for(var c=0;c<a;c++){var e=E[b+4*c>>2],f=Sc[e];f&&(R.deleteQuery(f),Sc[e]=null)}},vc:(a,b)=>{for(var c=0;c<a;c++){var e=E[b+4*c>>2],f=Sc[e];f&&(R.ge.deleteQueryEXT(f),Sc[e]=null)}},uc:(a,b)=>{for(var c=0;c<a;c++){var e=E[b+4*c>>2],f=Pc[e];f&&(R.deleteRenderbuffer(f),f.name=0,Pc[e]=null)}},tc:(a,b)=>{for(var c=0;c<a;c++){var e=E[b+4*c>>2],f=Tc[e];f&&(R.deleteSampler(f),f.name=0,Tc[e]=null)}},sc:a=>{if(a){var b=Qc[a];b?(R.deleteShader(b),Qc[a]=null):V||=1281}},rc:a=>{if(a){var b=Uc[a];b?
(R.deleteSync(b),b.name=0,Uc[a]=null):V||=1281}},qc:(a,b)=>{for(var c=0;c<a;c++){var e=E[b+4*c>>2],f=ka[e];f&&(R.deleteTexture(f),f.name=0,ka[e]=null)}},pc:hd,oc:hd,nc:a=>{R.depthMask(!!a)},mc:a=>R.disable(a),lc:a=>{R.disableVertexAttribArray(a)},kc:(a,b,c)=>{R.drawArrays(a,b,c)},jc:(a,b,c,e)=>{R.drawArraysInstanced(a,b,c,e)},ic:(a,b,c,e,f)=>{R.Je.drawArraysInstancedBaseInstanceWEBGL(a,b,c,e,f)},hc:(a,b)=>{for(var c=jd[a],e=0;e<a;e++)c[e]=E[b+4*e>>2];R.drawBuffers(c)},gc:(a,b,c,e)=>{R.drawElements(a,
b,c,e)},fc:(a,b,c,e,f)=>{R.drawElementsInstanced(a,b,c,e,f)},ec:(a,b,c,e,f,k,n)=>{R.Je.drawElementsInstancedBaseVertexBaseInstanceWEBGL(a,b,c,e,f,k,n)},dc:(a,b,c,e,f,k)=>{R.drawElements(a,e,f,k)},cc:a=>R.enable(a),bc:a=>{R.enableVertexAttribArray(a)},ac:a=>R.endQuery(a),$b:a=>{R.ge.endQueryEXT(a)},_b:(a,b)=>(a=R.fenceSync(a,b))?(b=ja(Uc),a.name=b,Uc[b]=a,b):0,Zb:()=>R.finish(),Yb:()=>R.flush(),Xb:(a,b,c,e)=>{R.framebufferRenderbuffer(a,b,c,Pc[e])},Wb:(a,b,c,e,f)=>{R.framebufferTexture2D(a,b,c,ka[e],
f)},Vb:a=>R.frontFace(a),Ub:(a,b)=>{$c(a,b,"createBuffer",Mc)},Tb:(a,b)=>{$c(a,b,"createFramebuffer",Oc)},Sb:(a,b)=>{$c(a,b,"createQuery",Sc)},Rb:(a,b)=>{for(var c=0;c<a;c++){var e=R.ge.createQueryEXT();if(!e){for(V||=1282;c<a;)E[b+4*c++>>2]=0;break}var f=ja(Sc);e.name=f;Sc[f]=e;E[b+4*c>>2]=f}},Qb:(a,b)=>{$c(a,b,"createRenderbuffer",Pc)},Pb:(a,b)=>{$c(a,b,"createSampler",Tc)},Ob:(a,b)=>{$c(a,b,"createTexture",ka)},Nb:kd,Mb:kd,Lb:a=>R.generateMipmap(a),Kb:(a,b,c)=>{c?E[c>>2]=R.getBufferParameter(a,
b):V||=1281},Jb:()=>{var a=R.getError()||V;V=0;return a},Ib:(a,b)=>md(a,b,2),Hb:(a,b,c,e)=>{a=R.getFramebufferAttachmentParameter(a,b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;E[e>>2]=a},Gb:nd,Fb:(a,b,c,e)=>{a=R.getProgramInfoLog(Nc[a]);null===a&&(a="(unknown error)");b=0<b&&e?ra(a,e,b):0;c&&(E[c>>2]=b)},Eb:(a,b,c)=>{if(c)if(a>=Lc)V||=1281;else if(a=Nc[a],35716==b)a=R.getProgramInfoLog(a),null===a&&(a="(unknown error)"),E[c>>2]=a.length+1;else if(35719==b){if(!a.Ae){var e=
R.getProgramParameter(a,35718);for(b=0;b<e;++b)a.Ae=Math.max(a.Ae,R.getActiveUniform(a,b).name.length+1)}E[c>>2]=a.Ae}else if(35722==b){if(!a.ye)for(e=R.getProgramParameter(a,35721),b=0;b<e;++b)a.ye=Math.max(a.ye,R.getActiveAttrib(a,b).name.length+1);E[c>>2]=a.ye}else if(35381==b){if(!a.ze)for(e=R.getProgramParameter(a,35382),b=0;b<e;++b)a.ze=Math.max(a.ze,R.getActiveUniformBlockName(a,b).length+1);E[c>>2]=a.ze}else E[c>>2]=R.getProgramParameter(a,b);else V||=1281},Db:od,Cb:od,Bb:(a,b,c)=>{if(c){a=
R.getQueryParameter(Sc[a],b);var e;"boolean"==typeof a?e=a?1:0:e=a;E[c>>2]=e}else V||=1281},Ab:(a,b,c)=>{if(c){a=R.ge.getQueryObjectEXT(Sc[a],b);var e;"boolean"==typeof a?e=a?1:0:e=a;E[c>>2]=e}else V||=1281},zb:(a,b,c)=>{c?E[c>>2]=R.getQuery(a,b):V||=1281},yb:(a,b,c)=>{c?E[c>>2]=R.ge.getQueryEXT(a,b):V||=1281},xb:(a,b,c)=>{c?E[c>>2]=R.getRenderbufferParameter(a,b):V||=1281},wb:(a,b,c,e)=>{a=R.getShaderInfoLog(Qc[a]);null===a&&(a="(unknown error)");b=0<b&&e?ra(a,e,b):0;c&&(E[c>>2]=b)},vb:(a,b,c,e)=>
{a=R.getShaderPrecisionFormat(a,b);E[c>>2]=a.rangeMin;E[c+4>>2]=a.rangeMax;E[e>>2]=a.precision},ub:(a,b,c)=>{c?35716==b?(a=R.getShaderInfoLog(Qc[a]),null===a&&(a="(unknown error)"),E[c>>2]=a?a.length+1:0):35720==b?(a=R.getShaderSource(Qc[a]),E[c>>2]=a?a.length+1:0):E[c>>2]=R.getShaderParameter(Qc[a],b):V||=1281},tb:rd,sb:sd,rb:(a,b)=>{b=b?db(B,b):"";if(a=Nc[a]){var c=a,e=c.re,f=c.Oe,k;if(!e){c.re=e={};c.Ne={};var n=R.getProgramParameter(c,35718);for(k=0;k<n;++k){var l=R.getActiveUniform(c,k);var q=
l.name;l=l.size;var v=td(q);v=0<v?q.slice(0,v):q;var w=c.Ge;c.Ge+=l;f[v]=[l,w];for(q=0;q<l;++q)e[w]=q,c.Ne[w++]=v}}c=a.re;e=0;f=b;k=td(b);0<k&&(e=parseInt(b.slice(k+1))>>>0,f=b.slice(0,k));if((f=a.Oe[f])&&e<f[0]&&(e+=f[1],c[e]=c[e]||R.getUniformLocation(a,b)))return e}else V||=1281;return-1},qb:(a,b,c)=>{for(var e=jd[b],f=0;f<b;f++)e[f]=E[c+4*f>>2];R.invalidateFramebuffer(a,e)},pb:(a,b,c,e,f,k,n)=>{for(var l=jd[b],q=0;q<b;q++)l[q]=E[c+4*q>>2];R.invalidateSubFramebuffer(a,l,e,f,k,n)},ob:a=>R.isSync(Uc[a]),
nb:a=>(a=ka[a])?R.isTexture(a):0,mb:a=>R.lineWidth(a),lb:a=>{a=Nc[a];R.linkProgram(a);a.re=0;a.Oe={}},kb:(a,b,c,e,f,k)=>{R.Le.multiDrawArraysInstancedBaseInstanceWEBGL(a,E,b>>2,E,c>>2,E,e>>2,H,f>>2,k)},jb:(a,b,c,e,f,k,n,l)=>{R.Le.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(a,E,b>>2,c,E,e>>2,E,f>>2,E,k>>2,H,n>>2,l)},ib:(a,b)=>{3317==a?Yc=b:3314==a&&(Zc=b);R.pixelStorei(a,b)},hb:(a,b)=>{R.ge.queryCounterEXT(Sc[a],b)},gb:a=>R.readBuffer(a),fb:(a,b,c,e,f,k,n)=>{if(2<=z.version)if(R.Ce)R.readPixels(a,
b,c,e,f,k,n);else{var l=ud(k);n>>>=31-Math.clz32(l.BYTES_PER_ELEMENT);R.readPixels(a,b,c,e,f,k,l,n)}else(l=vd(k,f,c,e,n))?R.readPixels(a,b,c,e,f,k,l):V||=1280},eb:(a,b,c,e)=>R.renderbufferStorage(a,b,c,e),db:(a,b,c,e,f)=>R.renderbufferStorageMultisample(a,b,c,e,f),cb:(a,b,c)=>{R.samplerParameterf(Tc[a],b,c)},bb:(a,b,c)=>{R.samplerParameteri(Tc[a],b,c)},ab:(a,b,c)=>{R.samplerParameteri(Tc[a],b,E[c>>2])},$a:(a,b,c,e)=>R.scissor(a,b,c,e),_a:(a,b,c,e)=>{for(var f="",k=0;k<b;++k){var n=(n=H[c+4*k>>2])?
db(B,n,e?H[e+4*k>>2]:void 0):"";f+=n}R.shaderSource(Qc[a],f)},Za:(a,b,c)=>R.stencilFunc(a,b,c),Ya:(a,b,c,e)=>R.stencilFuncSeparate(a,b,c,e),Xa:a=>R.stencilMask(a),Wa:(a,b)=>R.stencilMaskSeparate(a,b),Va:(a,b,c)=>R.stencilOp(a,b,c),Ua:(a,b,c,e)=>R.stencilOpSeparate(a,b,c,e),Ta:(a,b,c,e,f,k,n,l,q)=>{if(2<=z.version){if(R.le){R.texImage2D(a,b,c,e,f,k,n,l,q);return}if(q){var v=ud(l);q>>>=31-Math.clz32(v.BYTES_PER_ELEMENT);R.texImage2D(a,b,c,e,f,k,n,l,v,q);return}}v=q?vd(l,n,e,f,q):null;R.texImage2D(a,
b,c,e,f,k,n,l,v)},Sa:(a,b,c)=>R.texParameterf(a,b,c),Ra:(a,b,c)=>{R.texParameterf(a,b,J[c>>2])},Qa:(a,b,c)=>R.texParameteri(a,b,c),Pa:(a,b,c)=>{R.texParameteri(a,b,E[c>>2])},Oa:(a,b,c,e,f)=>R.texStorage2D(a,b,c,e,f),Na:(a,b,c,e,f,k,n,l,q)=>{if(2<=z.version){if(R.le){R.texSubImage2D(a,b,c,e,f,k,n,l,q);return}if(q){var v=ud(l);R.texSubImage2D(a,b,c,e,f,k,n,l,v,q>>>31-Math.clz32(v.BYTES_PER_ELEMENT));return}}q=q?vd(l,n,f,k,q):null;R.texSubImage2D(a,b,c,e,f,k,n,l,q)},Ma:(a,b)=>{R.uniform1f(Y(a),b)},La:(a,
b,c)=>{if(2<=z.version)b&&R.uniform1fv(Y(a),J,c>>2,b);else{if(288>=b)for(var e=wd[b],f=0;f<b;++f)e[f]=J[c+4*f>>2];else e=J.subarray(c>>2,c+4*b>>2);R.uniform1fv(Y(a),e)}},Ka:(a,b)=>{R.uniform1i(Y(a),b)},Ja:(a,b,c)=>{if(2<=z.version)b&&R.uniform1iv(Y(a),E,c>>2,b);else{if(288>=b)for(var e=xd[b],f=0;f<b;++f)e[f]=E[c+4*f>>2];else e=E.subarray(c>>2,c+4*b>>2);R.uniform1iv(Y(a),e)}},Ia:(a,b,c)=>{R.uniform2f(Y(a),b,c)},Ha:(a,b,c)=>{if(2<=z.version)b&&R.uniform2fv(Y(a),J,c>>2,2*b);else{if(144>=b){b*=2;for(var e=
wd[b],f=0;f<b;f+=2)e[f]=J[c+4*f>>2],e[f+1]=J[c+(4*f+4)>>2]}else e=J.subarray(c>>2,c+8*b>>2);R.uniform2fv(Y(a),e)}},Ga:(a,b,c)=>{R.uniform2i(Y(a),b,c)},Fa:(a,b,c)=>{if(2<=z.version)b&&R.uniform2iv(Y(a),E,c>>2,2*b);else{if(144>=b){b*=2;for(var e=xd[b],f=0;f<b;f+=2)e[f]=E[c+4*f>>2],e[f+1]=E[c+(4*f+4)>>2]}else e=E.subarray(c>>2,c+8*b>>2);R.uniform2iv(Y(a),e)}},Ea:(a,b,c,e)=>{R.uniform3f(Y(a),b,c,e)},Da:(a,b,c)=>{if(2<=z.version)b&&R.uniform3fv(Y(a),J,c>>2,3*b);else{if(96>=b){b*=3;for(var e=wd[b],f=0;f<
b;f+=3)e[f]=J[c+4*f>>2],e[f+1]=J[c+(4*f+4)>>2],e[f+2]=J[c+(4*f+8)>>2]}else e=J.subarray(c>>2,c+12*b>>2);R.uniform3fv(Y(a),e)}},Ca:(a,b,c,e)=>{R.uniform3i(Y(a),b,c,e)},Ba:(a,b,c)=>{if(2<=z.version)b&&R.uniform3iv(Y(a),E,c>>2,3*b);else{if(96>=b){b*=3;for(var e=xd[b],f=0;f<b;f+=3)e[f]=E[c+4*f>>2],e[f+1]=E[c+(4*f+4)>>2],e[f+2]=E[c+(4*f+8)>>2]}else e=E.subarray(c>>2,c+12*b>>2);R.uniform3iv(Y(a),e)}},Aa:(a,b,c,e,f)=>{R.uniform4f(Y(a),b,c,e,f)},za:(a,b,c)=>{if(2<=z.version)b&&R.uniform4fv(Y(a),J,c>>2,4*
b);else{if(72>=b){var e=wd[4*b],f=J;c>>=2;b*=4;for(var k=0;k<b;k+=4){var n=c+k;e[k]=f[n];e[k+1]=f[n+1];e[k+2]=f[n+2];e[k+3]=f[n+3]}}else e=J.subarray(c>>2,c+16*b>>2);R.uniform4fv(Y(a),e)}},ya:(a,b,c,e,f)=>{R.uniform4i(Y(a),b,c,e,f)},xa:(a,b,c)=>{if(2<=z.version)b&&R.uniform4iv(Y(a),E,c>>2,4*b);else{if(72>=b){b*=4;for(var e=xd[b],f=0;f<b;f+=4)e[f]=E[c+4*f>>2],e[f+1]=E[c+(4*f+4)>>2],e[f+2]=E[c+(4*f+8)>>2],e[f+3]=E[c+(4*f+12)>>2]}else e=E.subarray(c>>2,c+16*b>>2);R.uniform4iv(Y(a),e)}},wa:(a,b,c,e)=>
{if(2<=z.version)b&&R.uniformMatrix2fv(Y(a),!!c,J,e>>2,4*b);else{if(72>=b){b*=4;for(var f=wd[b],k=0;k<b;k+=4)f[k]=J[e+4*k>>2],f[k+1]=J[e+(4*k+4)>>2],f[k+2]=J[e+(4*k+8)>>2],f[k+3]=J[e+(4*k+12)>>2]}else f=J.subarray(e>>2,e+16*b>>2);R.uniformMatrix2fv(Y(a),!!c,f)}},va:(a,b,c,e)=>{if(2<=z.version)b&&R.uniformMatrix3fv(Y(a),!!c,J,e>>2,9*b);else{if(32>=b){b*=9;for(var f=wd[b],k=0;k<b;k+=9)f[k]=J[e+4*k>>2],f[k+1]=J[e+(4*k+4)>>2],f[k+2]=J[e+(4*k+8)>>2],f[k+3]=J[e+(4*k+12)>>2],f[k+4]=J[e+(4*k+16)>>2],f[k+
5]=J[e+(4*k+20)>>2],f[k+6]=J[e+(4*k+24)>>2],f[k+7]=J[e+(4*k+28)>>2],f[k+8]=J[e+(4*k+32)>>2]}else f=J.subarray(e>>2,e+36*b>>2);R.uniformMatrix3fv(Y(a),!!c,f)}},ua:(a,b,c,e)=>{if(2<=z.version)b&&R.uniformMatrix4fv(Y(a),!!c,J,e>>2,16*b);else{if(18>=b){var f=wd[16*b],k=J;e>>=2;b*=16;for(var n=0;n<b;n+=16){var l=e+n;f[n]=k[l];f[n+1]=k[l+1];f[n+2]=k[l+2];f[n+3]=k[l+3];f[n+4]=k[l+4];f[n+5]=k[l+5];f[n+6]=k[l+6];f[n+7]=k[l+7];f[n+8]=k[l+8];f[n+9]=k[l+9];f[n+10]=k[l+10];f[n+11]=k[l+11];f[n+12]=k[l+12];f[n+
13]=k[l+13];f[n+14]=k[l+14];f[n+15]=k[l+15]}}else f=J.subarray(e>>2,e+64*b>>2);R.uniformMatrix4fv(Y(a),!!c,f)}},ta:a=>{a=Nc[a];R.useProgram(a);R.We=a},sa:(a,b)=>R.vertexAttrib1f(a,b),ra:(a,b)=>{R.vertexAttrib2f(a,J[b>>2],J[b+4>>2])},qa:(a,b)=>{R.vertexAttrib3f(a,J[b>>2],J[b+4>>2],J[b+8>>2])},pa:(a,b)=>{R.vertexAttrib4f(a,J[b>>2],J[b+4>>2],J[b+8>>2],J[b+12>>2])},oa:(a,b)=>{R.vertexAttribDivisor(a,b)},na:(a,b,c,e,f)=>{R.vertexAttribIPointer(a,b,c,e,f)},ma:(a,b,c,e,f,k)=>{R.vertexAttribPointer(a,b,c,
!!e,f,k)},la:(a,b,c,e)=>R.viewport(a,b,c,e),ka:(a,b,c,e)=>{R.waitSync(Uc[a],b,(c>>>0)+4294967296*e)},ja:a=>{var b=B.length;a>>>=0;if(2147483648<a)return!1;for(var c=1;4>=c;c*=2){var e=b*(1+1/c);e=Math.min(e,a+100663296);a:{e=(Math.min(2147483648,65536*Math.ceil(Math.max(a,e)/65536))-za.buffer.byteLength+65535)/65536|0;try{za.grow(e);Ha();var f=1;break a}catch(k){}f=void 0}if(f)return!0}return!1},ia:()=>z?z.handle:0,pd:(a,b)=>{var c=0;Ad().forEach((e,f)=>{var k=b+c;f=H[a+4*f>>2]=k;for(k=0;k<e.length;++k)Ca[f++]=
e.charCodeAt(k);Ca[f]=0;c+=e.length+1});return 0},od:(a,b)=>{var c=Ad();H[a>>2]=c.length;var e=0;c.forEach(f=>e+=f.length+1);H[b>>2]=e;return 0},ha:a=>{Xa||(Ba=!0);throw new Va(a);},T:()=>52,Z:function(){return 52},nd:()=>52,Y:function(){return 70},S:(a,b,c,e)=>{for(var f=0,k=0;k<c;k++){var n=H[b>>2],l=H[b+4>>2];b+=8;for(var q=0;q<l;q++){var v=B[n+q],w=Bd[a];0===v||10===v?((1===a?xa:ya)(db(w)),w.length=0):w.push(v)}f+=l}H[e>>2]=f;return 0},ga:cd,fa:ed,ea:fd,da:gd,J:nd,P:rd,ca:sd,m:Hd,y:Id,l:Jd,I:Kd,
ba:Ld,O:Md,N:Nd,t:Od,v:Pd,u:Qd,r:Rd,aa:Sd,$:Td,_:Ud},Z=function(){function a(c){Z=c.exports;za=Z.vd;Ha();N=Z.yd;Ja.unshift(Z.wd);La--;0==La&&(null!==Na&&(clearInterval(Na),Na=null),Oa&&(c=Oa,Oa=null,c()));return Z}var b={a:Vd};La++;if(r.instantiateWasm)try{return r.instantiateWasm(b,a)}catch(c){ya(`Module.instantiateWasm callback failed with error: ${c}`),da(c)}Ra??=r.locateFile?Qa("canvaskit.wasm")?"canvaskit.wasm":ta+"canvaskit.wasm":(new URL("canvaskit.wasm",import.meta.url)).href;Ua(b,
function(c){a(c.instance)}).catch(da);return{}}(),bc=a=>(bc=Z.xd)(a),pd=r._malloc=a=>(pd=r._malloc=Z.zd)(a),cc=r._free=a=>(cc=r._free=Z.Ad)(a),Wd=(a,b)=>(Wd=Z.Bd)(a,b),Xd=a=>(Xd=Z.Cd)(a),Yd=()=>(Yd=Z.Dd)();r.dynCall_viji=(a,b,c,e,f)=>(r.dynCall_viji=Z.Ed)(a,b,c,e,f);r.dynCall_vijiii=(a,b,c,e,f,k,n)=>(r.dynCall_vijiii=Z.Fd)(a,b,c,e,f,k,n);r.dynCall_viiiiij=(a,b,c,e,f,k,n,l)=>(r.dynCall_viiiiij=Z.Gd)(a,b,c,e,f,k,n,l);r.dynCall_vij=(a,b,c,e)=>(r.dynCall_vij=Z.Hd)(a,b,c,e);
r.dynCall_jii=(a,b,c)=>(r.dynCall_jii=Z.Id)(a,b,c);r.dynCall_jiiiiii=(a,b,c,e,f,k,n)=>(r.dynCall_jiiiiii=Z.Jd)(a,b,c,e,f,k,n);r.dynCall_jiiiiji=(a,b,c,e,f,k,n,l)=>(r.dynCall_jiiiiji=Z.Kd)(a,b,c,e,f,k,n,l);r.dynCall_ji=(a,b)=>(r.dynCall_ji=Z.Ld)(a,b);r.dynCall_iijj=(a,b,c,e,f,k)=>(r.dynCall_iijj=Z.Md)(a,b,c,e,f,k);r.dynCall_jiji=(a,b,c,e,f)=>(r.dynCall_jiji=Z.Nd)(a,b,c,e,f);r.dynCall_viijii=(a,b,c,e,f,k,n)=>(r.dynCall_viijii=Z.Od)(a,b,c,e,f,k,n);
r.dynCall_iiiiij=(a,b,c,e,f,k,n)=>(r.dynCall_iiiiij=Z.Pd)(a,b,c,e,f,k,n);r.dynCall_iiiiijj=(a,b,c,e,f,k,n,l,q)=>(r.dynCall_iiiiijj=Z.Qd)(a,b,c,e,f,k,n,l,q);r.dynCall_iiiiiijj=(a,b,c,e,f,k,n,l,q,v)=>(r.dynCall_iiiiiijj=Z.Rd)(a,b,c,e,f,k,n,l,q,v);function Rd(a,b,c,e,f){var k=Yd();try{N.get(a)(b,c,e,f)}catch(n){Xd(k);if(n!==n+0)throw n;Wd(1,0)}}function Id(a,b,c){var e=Yd();try{return N.get(a)(b,c)}catch(f){Xd(e);if(f!==f+0)throw f;Wd(1,0)}}
function Pd(a,b,c){var e=Yd();try{N.get(a)(b,c)}catch(f){Xd(e);if(f!==f+0)throw f;Wd(1,0)}}function Hd(a,b){var c=Yd();try{return N.get(a)(b)}catch(e){Xd(c);if(e!==e+0)throw e;Wd(1,0)}}function Od(a,b){var c=Yd();try{N.get(a)(b)}catch(e){Xd(c);if(e!==e+0)throw e;Wd(1,0)}}function Jd(a,b,c,e){var f=Yd();try{return N.get(a)(b,c,e)}catch(k){Xd(f);if(k!==k+0)throw k;Wd(1,0)}}function Ud(a,b,c,e,f,k,n,l,q,v){var w=Yd();try{N.get(a)(b,c,e,f,k,n,l,q,v)}catch(A){Xd(w);if(A!==A+0)throw A;Wd(1,0)}}
function Qd(a,b,c,e){var f=Yd();try{N.get(a)(b,c,e)}catch(k){Xd(f);if(k!==k+0)throw k;Wd(1,0)}}function Td(a,b,c,e,f,k,n){var l=Yd();try{N.get(a)(b,c,e,f,k,n)}catch(q){Xd(l);if(q!==q+0)throw q;Wd(1,0)}}function Md(a,b,c,e,f,k,n,l){var q=Yd();try{return N.get(a)(b,c,e,f,k,n,l)}catch(v){Xd(q);if(v!==v+0)throw v;Wd(1,0)}}function Sd(a,b,c,e,f,k){var n=Yd();try{N.get(a)(b,c,e,f,k)}catch(l){Xd(n);if(l!==l+0)throw l;Wd(1,0)}}
function Kd(a,b,c,e,f){var k=Yd();try{return N.get(a)(b,c,e,f)}catch(n){Xd(k);if(n!==n+0)throw n;Wd(1,0)}}function Nd(a,b,c,e,f,k,n,l,q,v){var w=Yd();try{return N.get(a)(b,c,e,f,k,n,l,q,v)}catch(A){Xd(w);if(A!==A+0)throw A;Wd(1,0)}}function Ld(a,b,c,e,f,k,n){var l=Yd();try{return N.get(a)(b,c,e,f,k,n)}catch(q){Xd(l);if(q!==q+0)throw q;Wd(1,0)}}var Zd,$d;Oa=function ae(){Zd||be();Zd||(Oa=ae)};
function be(){if(!(0<La)){if(!$d&&($d=1,Wa(Ia),0<La))return;Zd||(Zd=1,r.calledRun=1,Ba||(Wa(Ja),ca(r),r.onRuntimeInitialized?.(),Wa(Ka)))}}be();moduleRtn=ea;
return moduleRtn;
}
);
})();
export default CanvasKitInit;
File diff suppressed because one or more lines are too long
@@ -0,0 +1,171 @@
var CanvasKitInit = (() => {
var _scriptName = import.meta.url;
return (
function(moduleArg = {}) {
var moduleRtn;
var q=moduleArg,aa,ba,ca=new Promise((a,b)=>{aa=a;ba=b}),da="object"==typeof window,ea="function"==typeof importScripts;
(function(a){a.Jd=a.Jd||[];a.Jd.push(function(){a.MakeSWCanvasSurface=function(b){var c=b,d="undefined"!==typeof OffscreenCanvas&&c instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&c instanceof HTMLCanvasElement||d||(c=document.getElementById(b),c)))throw"Canvas with id "+b+" was not found";if(b=a.MakeSurface(c.width,c.height))b.ge=c;return b};a.MakeCanvasSurface||(a.MakeCanvasSurface=a.MakeSWCanvasSurface);a.MakeSurface=function(b,c){var d={width:b,height:c,colorType:a.ColorType.RGBA_8888,
alphaType:a.AlphaType.Unpremul,colorSpace:a.ColorSpace.SRGB},f=b*c*4,h=a._malloc(f);if(d=a.Surface._makeRasterDirect(d,h,4*b))d.ge=null,d.Ge=b,d.De=c,d.Ee=f,d.ne=h,d.getCanvas().clear(a.TRANSPARENT);return d};a.MakeRasterDirectSurface=function(b,c,d){return a.Surface._makeRasterDirect(b,c.byteOffset,d)};a.Surface.prototype.flush=function(b){a.Gd(this.Fd);this._flush();if(this.ge){var c=new Uint8ClampedArray(a.HEAPU8.buffer,this.ne,this.Ee);c=new ImageData(c,this.Ge,this.De);b?this.ge.getContext("2d").putImageData(c,
0,0,b[0],b[1],b[2]-b[0],b[3]-b[1]):this.ge.getContext("2d").putImageData(c,0,0)}};a.Surface.prototype.dispose=function(){this.ne&&a._free(this.ne);this.delete()};a.Gd=a.Gd||function(){};a.he=a.he||function(){return null}})})(q);
(function(a){a.Jd=a.Jd||[];a.Jd.push(function(){function b(k,p,t){return k&&k.hasOwnProperty(p)?k[p]:t}function c(k){var p=ha(ia);ia[p]=k;return p}function d(k){return k.naturalHeight||k.videoHeight||k.displayHeight||k.height}function f(k){return k.naturalWidth||k.videoWidth||k.displayWidth||k.width}function h(k,p,t,v){k.bindTexture(k.TEXTURE_2D,p);v||t.alphaType!==a.AlphaType.Premul||k.pixelStorei(k.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);return p}function n(k,p,t){t||p.alphaType!==a.AlphaType.Premul||
k.pixelStorei(k.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);k.bindTexture(k.TEXTURE_2D,null)}a.GetWebGLContext=function(k,p){if(!k)throw"null canvas passed into makeWebGLContext";var t={alpha:b(p,"alpha",1),depth:b(p,"depth",1),stencil:b(p,"stencil",8),antialias:b(p,"antialias",0),premultipliedAlpha:b(p,"premultipliedAlpha",1),preserveDrawingBuffer:b(p,"preserveDrawingBuffer",0),preferLowPowerToHighPerformance:b(p,"preferLowPowerToHighPerformance",0),failIfMajorPerformanceCaveat:b(p,"failIfMajorPerformanceCaveat",
0),enableExtensionsByDefault:b(p,"enableExtensionsByDefault",1),explicitSwapControl:b(p,"explicitSwapControl",0),renderViaOffscreenBackBuffer:b(p,"renderViaOffscreenBackBuffer",0)};t.majorVersion=p&&p.majorVersion?p.majorVersion:"undefined"!==typeof WebGL2RenderingContext?2:1;if(t.explicitSwapControl)throw"explicitSwapControl is not supported";k=ja(k,t);if(!k)return 0;ka(k);x.Sd.getExtension("WEBGL_debug_renderer_info");return k};a.deleteContext=function(k){x===la[k]&&(x=null);"object"==typeof JSEvents&&
JSEvents.ef(la[k].Sd.canvas);la[k]&&la[k].Sd.canvas&&(la[k].Sd.canvas.Be=void 0);la[k]=null};a._setTextureCleanup({deleteTexture:function(k,p){var t=ia[p];t&&la[k].Sd.deleteTexture(t);ia[p]=null}});a.MakeWebGLContext=function(k){if(!this.Gd(k))return null;var p=this._MakeGrContext();if(!p)return null;p.Fd=k;var t=p.delete.bind(p);p["delete"]=function(){a.Gd(this.Fd);t()}.bind(p);return x.pe=p};a.MakeGrContext=a.MakeWebGLContext;a.GrDirectContext.prototype.getResourceCacheLimitBytes=function(){a.Gd(this.Fd);
this._getResourceCacheLimitBytes()};a.GrDirectContext.prototype.getResourceCacheUsageBytes=function(){a.Gd(this.Fd);this._getResourceCacheUsageBytes()};a.GrDirectContext.prototype.releaseResourcesAndAbandonContext=function(){a.Gd(this.Fd);this._releaseResourcesAndAbandonContext()};a.GrDirectContext.prototype.setResourceCacheLimitBytes=function(k){a.Gd(this.Fd);this._setResourceCacheLimitBytes(k)};a.MakeOnScreenGLSurface=function(k,p,t,v,z,A){if(!this.Gd(k.Fd))return null;p=void 0===z||void 0===A?
this._MakeOnScreenGLSurface(k,p,t,v):this._MakeOnScreenGLSurface(k,p,t,v,z,A);if(!p)return null;p.Fd=k.Fd;return p};a.MakeRenderTarget=function(){var k=arguments[0];if(!this.Gd(k.Fd))return null;if(3===arguments.length){var p=this._MakeRenderTargetWH(k,arguments[1],arguments[2]);if(!p)return null}else if(2===arguments.length){if(p=this._MakeRenderTargetII(k,arguments[1]),!p)return null}else return null;p.Fd=k.Fd;return p};a.MakeWebGLCanvasSurface=function(k,p,t){p=p||null;var v=k,z="undefined"!==
typeof OffscreenCanvas&&v instanceof OffscreenCanvas;if(!("undefined"!==typeof HTMLCanvasElement&&v instanceof HTMLCanvasElement||z||(v=document.getElementById(k),v)))throw"Canvas with id "+k+" was not found";k=this.GetWebGLContext(v,t);if(!k||0>k)throw"failed to create webgl context: err "+k;k=this.MakeWebGLContext(k);p=this.MakeOnScreenGLSurface(k,v.width,v.height,p);return p?p:(p=v.cloneNode(!0),v.parentNode.replaceChild(p,v),p.classList.add("ck-replaced"),a.MakeSWCanvasSurface(p))};a.MakeCanvasSurface=
a.MakeWebGLCanvasSurface;a.Surface.prototype.makeImageFromTexture=function(k,p){a.Gd(this.Fd);k=c(k);if(p=this._makeImageFromTexture(this.Fd,k,p))p.ae=k;return p};a.Surface.prototype.makeImageFromTextureSource=function(k,p,t){p||={height:d(k),width:f(k),colorType:a.ColorType.RGBA_8888,alphaType:t?a.AlphaType.Premul:a.AlphaType.Unpremul};p.colorSpace||(p.colorSpace=a.ColorSpace.SRGB);a.Gd(this.Fd);var v=x.Sd;t=h(v,v.createTexture(),p,t);2===x.version?v.texImage2D(v.TEXTURE_2D,0,v.RGBA,p.width,p.height,
0,v.RGBA,v.UNSIGNED_BYTE,k):v.texImage2D(v.TEXTURE_2D,0,v.RGBA,v.RGBA,v.UNSIGNED_BYTE,k);n(v,p);this._resetContext();return this.makeImageFromTexture(t,p)};a.Surface.prototype.updateTextureFromSource=function(k,p,t){if(k.ae){a.Gd(this.Fd);var v=k.getImageInfo(),z=x.Sd,A=h(z,ia[k.ae],v,t);2===x.version?z.texImage2D(z.TEXTURE_2D,0,z.RGBA,f(p),d(p),0,z.RGBA,z.UNSIGNED_BYTE,p):z.texImage2D(z.TEXTURE_2D,0,z.RGBA,z.RGBA,z.UNSIGNED_BYTE,p);n(z,v,t);this._resetContext();ia[k.ae]=null;k.ae=c(A);v.colorSpace=
k.getColorSpace();p=this._makeImageFromTexture(this.Fd,k.ae,v);t=k.Ed.Hd;z=k.Ed.Ld;k.Ed.Hd=p.Ed.Hd;k.Ed.Ld=p.Ed.Ld;p.Ed.Hd=t;p.Ed.Ld=z;p.delete();v.colorSpace.delete()}};a.MakeLazyImageFromTextureSource=function(k,p,t){p||={height:d(k),width:f(k),colorType:a.ColorType.RGBA_8888,alphaType:t?a.AlphaType.Premul:a.AlphaType.Unpremul};p.colorSpace||(p.colorSpace=a.ColorSpace.SRGB);var v={makeTexture:function(){var z=x,A=z.Sd,E=h(A,A.createTexture(),p,t);2===z.version?A.texImage2D(A.TEXTURE_2D,0,A.RGBA,
p.width,p.height,0,A.RGBA,A.UNSIGNED_BYTE,k):A.texImage2D(A.TEXTURE_2D,0,A.RGBA,A.RGBA,A.UNSIGNED_BYTE,k);n(A,p,t);return c(E)},freeSrc:function(){}};"VideoFrame"===k.constructor.name&&(v.freeSrc=function(){k.close()});return a.Image._makeFromGenerator(p,v)};a.Gd=function(k){return k?ka(k):!1};a.he=function(){return x&&x.pe&&!x.pe.isDeleted()?x.pe:null}})})(q);
(function(a){function b(l){return(f(255*l[3])<<24|f(255*l[0])<<16|f(255*l[1])<<8|f(255*l[2])<<0)>>>0}function c(l){if(l&&l._ck)return l;if(l instanceof Float32Array){for(var e=Math.floor(l.length/4),g=new Uint32Array(e),m=0;m<e;m++)g[m]=b(l.slice(4*m,4*(m+1)));return g}if(l instanceof Uint32Array)return l;if(l instanceof Array&&l[0]instanceof Float32Array)return l.map(b)}function d(l){if(void 0===l)return 1;var e=parseFloat(l);return l&&-1!==l.indexOf("%")?e/100:e}function f(l){return Math.round(Math.max(0,
Math.min(l||0,255)))}function h(l,e){e&&e._ck||a._free(l)}function n(l,e,g){if(!l||!l.length)return 0;if(l&&l._ck)return l.byteOffset;var m=a[e].BYTES_PER_ELEMENT;g||=a._malloc(l.length*m);a[e].set(l,g/m);return g}function k(l){var e={Qd:0,count:l.length,colorType:a.ColorType.RGBA_F32};if(l instanceof Float32Array)e.Qd=n(l,"HEAPF32"),e.count=l.length/4;else if(l instanceof Uint32Array)e.Qd=n(l,"HEAPU32"),e.colorType=a.ColorType.RGBA_8888;else if(l instanceof Array){if(l&&l.length){for(var g=a._malloc(16*
l.length),m=0,r=g/4,u=0;u<l.length;u++)for(var w=0;4>w;w++)a.HEAPF32[r+m]=l[u][w],m++;l=g}else l=0;e.Qd=l}else throw"Invalid argument to copyFlexibleColorArray, Not a color array "+typeof l;return e}function p(l){if(!l)return 0;var e=V.toTypedArray();if(l.length){if(6===l.length||9===l.length)return n(l,"HEAPF32",L),6===l.length&&a.HEAPF32.set(Oc,6+L/4),L;if(16===l.length)return e[0]=l[0],e[1]=l[1],e[2]=l[3],e[3]=l[4],e[4]=l[5],e[5]=l[7],e[6]=l[12],e[7]=l[13],e[8]=l[15],L;throw"invalid matrix size";
}if(void 0===l.m11)throw"invalid matrix argument";e[0]=l.m11;e[1]=l.m21;e[2]=l.m41;e[3]=l.m12;e[4]=l.m22;e[5]=l.m42;e[6]=l.m14;e[7]=l.m24;e[8]=l.m44;return L}function t(l){if(!l)return 0;var e=S.toTypedArray();if(l.length){if(16!==l.length&&6!==l.length&&9!==l.length)throw"invalid matrix size";if(16===l.length)return n(l,"HEAPF32",fa);e.fill(0);e[0]=l[0];e[1]=l[1];e[3]=l[2];e[4]=l[3];e[5]=l[4];e[7]=l[5];e[10]=1;e[12]=l[6];e[13]=l[7];e[15]=l[8];6===l.length&&(e[12]=0,e[13]=0,e[15]=1);return fa}if(void 0===
l.m11)throw"invalid matrix argument";e[0]=l.m11;e[1]=l.m21;e[2]=l.m31;e[3]=l.m41;e[4]=l.m12;e[5]=l.m22;e[6]=l.m32;e[7]=l.m42;e[8]=l.m13;e[9]=l.m23;e[10]=l.m33;e[11]=l.m43;e[12]=l.m14;e[13]=l.m24;e[14]=l.m34;e[15]=l.m44;return fa}function v(l,e){return n(l,"HEAPF32",e||Y)}function z(l,e,g,m){var r=ya.toTypedArray();r[0]=l;r[1]=e;r[2]=g;r[3]=m;return Y}function A(l){for(var e=new Float32Array(4),g=0;4>g;g++)e[g]=a.HEAPF32[l/4+g];return e}function E(l,e){return n(l,"HEAPF32",e||P)}function M(l,e){return n(l,
"HEAPF32",e||ob)}a.Color=function(l,e,g,m){void 0===m&&(m=1);return a.Color4f(f(l)/255,f(e)/255,f(g)/255,m)};a.ColorAsInt=function(l,e,g,m){void 0===m&&(m=255);return(f(m)<<24|f(l)<<16|f(e)<<8|f(g)<<0&268435455)>>>0};a.Color4f=function(l,e,g,m){void 0===m&&(m=1);return Float32Array.of(l,e,g,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(l){return[Math.floor(255*
l[0]),Math.floor(255*l[1]),Math.floor(255*l[2]),l[3]]};a.parseColorString=function(l,e){l=l.toLowerCase();if(l.startsWith("#")){e=255;switch(l.length){case 9:e=parseInt(l.slice(7,9),16);case 7:var g=parseInt(l.slice(1,3),16);var m=parseInt(l.slice(3,5),16);var r=parseInt(l.slice(5,7),16);break;case 5:e=17*parseInt(l.slice(4,5),16);case 4:g=17*parseInt(l.slice(1,2),16),m=17*parseInt(l.slice(2,3),16),r=17*parseInt(l.slice(3,4),16)}return a.Color(g,m,r,e/255)}return l.startsWith("rgba")?(l=l.slice(5,
-1),l=l.split(","),a.Color(+l[0],+l[1],+l[2],d(l[3]))):l.startsWith("rgb")?(l=l.slice(4,-1),l=l.split(","),a.Color(+l[0],+l[1],+l[2],d(l[3]))):l.startsWith("gray(")||l.startsWith("hsl")||!e||(l=e[l],void 0===l)?a.BLACK:l};a.multiplyByAlpha=function(l,e){l=l.slice();l[3]=Math.max(0,Math.min(l[3]*e,1));return l};a.Malloc=function(l,e){var g=a._malloc(e*l.BYTES_PER_ELEMENT);return{_ck:!0,length:e,byteOffset:g,Xd:null,subarray:function(m,r){m=this.toTypedArray().subarray(m,r);m._ck=!0;return m},toTypedArray:function(){if(this.Xd&&
this.Xd.length)return this.Xd;this.Xd=new l(a.HEAPU8.buffer,g,e);this.Xd._ck=!0;return this.Xd}}};a.Free=function(l){a._free(l.byteOffset);l.byteOffset=0;l.toTypedArray=null;l.Xd=null};var L=0,V,fa=0,S,Y=0,ya,W,P=0,Nb,ra=0,Ob,pb=0,Pb,qb=0,Va,Ga=0,Qb,ob=0,Rb,Sb=0,Oc=Float32Array.of(0,0,1);a.onRuntimeInitialized=function(){function l(e,g,m,r,u,w,B){w||(w=4*r.width,r.colorType===a.ColorType.RGBA_F16?w*=2:r.colorType===a.ColorType.RGBA_F32&&(w*=4));var J=w*r.height;var F=u?u.byteOffset:a._malloc(J);if(B?
!e._readPixels(r,F,w,g,m,B):!e._readPixels(r,F,w,g,m))return u||a._free(F),null;if(u)return u.toTypedArray();switch(r.colorType){case a.ColorType.RGBA_8888:case a.ColorType.RGBA_F16:e=(new Uint8Array(a.HEAPU8.buffer,F,J)).slice();break;case a.ColorType.RGBA_F32:e=(new Float32Array(a.HEAPU8.buffer,F,J)).slice();break;default:return null}a._free(F);return e}ya=a.Malloc(Float32Array,4);Y=ya.byteOffset;S=a.Malloc(Float32Array,16);fa=S.byteOffset;V=a.Malloc(Float32Array,9);L=V.byteOffset;Qb=a.Malloc(Float32Array,
12);ob=Qb.byteOffset;Rb=a.Malloc(Float32Array,12);Sb=Rb.byteOffset;W=a.Malloc(Float32Array,4);P=W.byteOffset;Nb=a.Malloc(Float32Array,4);ra=Nb.byteOffset;Ob=a.Malloc(Float32Array,3);pb=Ob.byteOffset;Pb=a.Malloc(Float32Array,3);qb=Pb.byteOffset;Va=a.Malloc(Int32Array,4);Ga=Va.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(e){var g=n(e,"HEAPF32"),m=a.Path._MakeFromCmds(g,e.length);h(g,e);return m};a.Path.MakeFromVerbsPointsWeights=function(e,g,m){var r=n(e,"HEAPU8"),u=n(g,"HEAPF32"),w=n(m,"HEAPF32"),B=a.Path._MakeFromVerbsPointsWeights(r,e.length,u,g.length/2,w,m&&m.length||0);h(r,e);h(u,g);h(w,m);return B};a.PathBuilder.prototype.addArc=function(e,g,m){e=E(e);this._addArc(e,g,m);return this};a.PathBuilder.prototype.addCircle=function(e,g,m,r){this._addCircle(e,g,m,!!r);return this};a.PathBuilder.prototype.addOval=
function(e,g,m){void 0===m&&(m=1);e=E(e);this._addOval(e,!!g,m);return this};a.PathBuilder.prototype.addPath=function(){var e=Array.prototype.slice.call(arguments),g=e[0],m=!1;"boolean"===typeof e[e.length-1]&&(m=e.pop());if(1===e.length)this._addPath(g,1,0,0,0,1,0,0,0,1,m);else if(2===e.length)e=e[1],this._addPath(g,e[0],e[1],e[2],e[3],e[4],e[5],e[6]||0,e[7]||0,e[8]||1,m);else if(7===e.length||10===e.length)this._addPath(g,e[1],e[2],e[3],e[4],e[5],e[6],e[7]||0,e[8]||0,e[9]||1,m);else return null;
return this};a.PathBuilder.prototype.addPolygon=function(e,g){var m=n(e,"HEAPF32");this._addPolygon(m,e.length/2,g);h(m,e);return this};a.PathBuilder.prototype.addRect=function(e,g){e=E(e);this._addRect(e,!!g);return this};a.PathBuilder.prototype.addRRect=function(e,g){e=M(e);this._addRRect(e,!!g);return this};a.PathBuilder.prototype.addVerbsPointsWeights=function(e,g,m){var r=n(e,"HEAPU8"),u=n(g,"HEAPF32"),w=n(m,"HEAPF32");this._addVerbsPointsWeights(r,e.length,u,g.length/2,w,m&&m.length||0);h(r,
e);h(u,g);h(w,m);return this};a.PathBuilder.prototype.arc=function(e,g,m,r,u,w){e=a.LTRBRect(e-m,g-m,e+m,g+m);u=(u-r)/Math.PI*180-360*!!w;r=(new a.PathBuilder).addArc(e,r/Math.PI*180,u).detachAndDelete();this.addPath(r,!0);r.delete();return this};a.PathBuilder.prototype.arcToOval=function(e,g,m,r){e=E(e);this._arcToOval(e,g,m,r);return this};a.PathBuilder.prototype.arcToRotated=function(e,g,m,r,u,w,B){this._arcToRotated(e,g,m,!!r,!!u,w,B);return this};a.PathBuilder.prototype.arcToTangent=function(e,
g,m,r,u){this._arcToTangent(e,g,m,r,u);return this};a.PathBuilder.prototype.close=function(){this._close();return this};a.PathBuilder.prototype.conicTo=function(e,g,m,r,u){this._conicTo(e,g,m,r,u);return this};a.Path.prototype.computeTightBounds=function(e){this._computeTightBounds(P);var g=W.toTypedArray();return e?(e.set(g),e):g.slice()};a.PathBuilder.prototype.cubicTo=function(e,g,m,r,u,w){this._cubicTo(e,g,m,r,u,w);return this};a.PathBuilder.prototype.detachAndDelete=function(){var e=this.detach();
this.delete();return e};a.Path.prototype.getBounds=function(e){this._getBounds(P);var g=W.toTypedArray();return e?(e.set(g),e):g.slice()};a.PathBuilder.prototype.getBounds=function(e){this._getBounds(P);var g=W.toTypedArray();return e?(e.set(g),e):g.slice()};a.PathBuilder.prototype.lineTo=function(e,g){this._lineTo(e,g);return this};a.PathBuilder.prototype.moveTo=function(e,g){this._moveTo(e,g);return this};a.PathBuilder.prototype.offset=function(e,g){this._transform(1,0,e,0,1,g,0,0,1);return this};
a.PathBuilder.prototype.quadTo=function(e,g,m,r){this._quadTo(e,g,m,r);return this};a.PathBuilder.prototype.rArcTo=function(e,g,m,r,u,w,B){this._rArcTo(e,g,m,r,u,w,B);return this};a.PathBuilder.prototype.rConicTo=function(e,g,m,r,u){this._rConicTo(e,g,m,r,u);return this};a.PathBuilder.prototype.rCubicTo=function(e,g,m,r,u,w){this._rCubicTo(e,g,m,r,u,w);return this};a.PathBuilder.prototype.rLineTo=function(e,g){this._rLineTo(e,g);return this};a.PathBuilder.prototype.rMoveTo=function(e,g){this._rMoveTo(e,
g);return this};a.PathBuilder.prototype.rQuadTo=function(e,g,m,r){this._rQuadTo(e,g,m,r);return this};a.Path.prototype.makeStroked=function(e){e=e||{};e.width=e.width||1;e.miter_limit=e.miter_limit||4;e.cap=e.cap||a.StrokeCap.Butt;e.join=e.join||a.StrokeJoin.Miter;e.precision=e.precision||1;return this._makeStroked(e)};a.PathBuilder.prototype.transform=function(){if(1===arguments.length){var e=arguments[0];this._transform(e[0],e[1],e[2],e[3],e[4],e[5],e[6]||0,e[7]||0,e[8]||1)}else if(6===arguments.length||
9===arguments.length)e=arguments,this._transform(e[0],e[1],e[2],e[3],e[4],e[5],e[6]||0,e[7]||0,e[8]||1);else throw"transform expected to take 1 or 9 arguments. Got "+arguments.length;return this};a.Path.prototype.makeTrimmed=function(e,g,m){return this._makeTrimmed(e,g,!!m)};a.Image.prototype.encodeToBytes=function(e,g){var m=a.he();e=e||a.ImageFormat.PNG;g=g||100;return m?this._encodeToBytes(e,g,m):this._encodeToBytes(e,g)};a.Image.prototype.makeShaderCubic=function(e,g,m,r,u){u=p(u);return this._makeShaderCubic(e,
g,m,r,u)};a.Image.prototype.makeShaderOptions=function(e,g,m,r,u){u=p(u);return this._makeShaderOptions(e,g,m,r,u)};a.Image.prototype.readPixels=function(e,g,m,r,u){var w=a.he();return l(this,e,g,m,r,u,w)};a.Canvas.prototype.clear=function(e){a.Gd(this.Fd);e=v(e);this._clear(e)};a.Canvas.prototype.clipRRect=function(e,g,m){a.Gd(this.Fd);e=M(e);this._clipRRect(e,g,m)};a.Canvas.prototype.clipRect=function(e,g,m){a.Gd(this.Fd);e=E(e);this._clipRect(e,g,m)};a.Canvas.prototype.concat=function(e){a.Gd(this.Fd);
e=t(e);this._concat(e)};a.Canvas.prototype.drawArc=function(e,g,m,r,u){a.Gd(this.Fd);e=E(e);this._drawArc(e,g,m,r,u)};a.Canvas.prototype.drawAtlas=function(e,g,m,r,u,w,B){if(e&&r&&g&&m&&g.length===m.length){a.Gd(this.Fd);u||(u=a.BlendMode.SrcOver);var J=n(g,"HEAPF32"),F=n(m,"HEAPF32"),R=m.length/4,T=n(c(w),"HEAPU32");if(B&&"B"in B&&"C"in B)this._drawAtlasCubic(e,F,J,T,R,u,B.B,B.C,r);else{let sa=a.FilterMode.Linear,Ha=a.MipmapMode.None;B&&(sa=B.filter,"mipmap"in B&&(Ha=B.mipmap));this._drawAtlasOptions(e,
F,J,T,R,u,sa,Ha,r)}h(J,g);h(F,m);h(T,w)}};a.Canvas.prototype.drawCircle=function(e,g,m,r){a.Gd(this.Fd);this._drawCircle(e,g,m,r)};a.Canvas.prototype.drawColor=function(e,g){a.Gd(this.Fd);e=v(e);void 0!==g?this._drawColor(e,g):this._drawColor(e)};a.Canvas.prototype.drawColorInt=function(e,g){a.Gd(this.Fd);this._drawColorInt(e,g||a.BlendMode.SrcOver)};a.Canvas.prototype.drawColorComponents=function(e,g,m,r,u){a.Gd(this.Fd);e=z(e,g,m,r);void 0!==u?this._drawColor(e,u):this._drawColor(e)};a.Canvas.prototype.drawDRRect=
function(e,g,m){a.Gd(this.Fd);e=M(e,ob);g=M(g,Sb);this._drawDRRect(e,g,m)};a.Canvas.prototype.drawImage=function(e,g,m,r){a.Gd(this.Fd);this._drawImage(e,g,m,r||null)};a.Canvas.prototype.drawImageCubic=function(e,g,m,r,u,w){a.Gd(this.Fd);this._drawImageCubic(e,g,m,r,u,w||null)};a.Canvas.prototype.drawImageOptions=function(e,g,m,r,u,w){a.Gd(this.Fd);this._drawImageOptions(e,g,m,r,u,w||null)};a.Canvas.prototype.drawImageNine=function(e,g,m,r,u){a.Gd(this.Fd);g=n(g,"HEAP32",Ga);m=E(m);this._drawImageNine(e,
g,m,r,u||null)};a.Canvas.prototype.drawImageRect=function(e,g,m,r,u){a.Gd(this.Fd);E(g,P);E(m,ra);this._drawImageRect(e,P,ra,r,!!u)};a.Canvas.prototype.drawImageRectCubic=function(e,g,m,r,u,w){a.Gd(this.Fd);E(g,P);E(m,ra);this._drawImageRectCubic(e,P,ra,r,u,w||null)};a.Canvas.prototype.drawImageRectOptions=function(e,g,m,r,u,w){a.Gd(this.Fd);E(g,P);E(m,ra);this._drawImageRectOptions(e,P,ra,r,u,w||null)};a.Canvas.prototype.drawLine=function(e,g,m,r,u){a.Gd(this.Fd);this._drawLine(e,g,m,r,u)};a.Canvas.prototype.drawOval=
function(e,g){a.Gd(this.Fd);e=E(e);this._drawOval(e,g)};a.Canvas.prototype.drawPaint=function(e){a.Gd(this.Fd);this._drawPaint(e)};a.Canvas.prototype.drawParagraph=function(e,g,m){a.Gd(this.Fd);this._drawParagraph(e,g,m)};a.Canvas.prototype.drawPatch=function(e,g,m,r,u){if(24>e.length)throw"Need 12 cubic points";if(g&&4>g.length)throw"Need 4 colors";if(m&&8>m.length)throw"Need 4 shader coordinates";a.Gd(this.Fd);const w=n(e,"HEAPF32"),B=g?n(c(g),"HEAPU32"):0,J=m?n(m,"HEAPF32"):0;r||(r=a.BlendMode.Modulate);
this._drawPatch(w,B,J,r,u);h(J,m);h(B,g);h(w,e)};a.Canvas.prototype.drawPath=function(e,g){a.Gd(this.Fd);this._drawPath(e,g)};a.Canvas.prototype.drawPicture=function(e){a.Gd(this.Fd);this._drawPicture(e)};a.Canvas.prototype.drawPoints=function(e,g,m){a.Gd(this.Fd);var r=n(g,"HEAPF32");this._drawPoints(e,r,g.length/2,m);h(r,g)};a.Canvas.prototype.drawRRect=function(e,g){a.Gd(this.Fd);e=M(e);this._drawRRect(e,g)};a.Canvas.prototype.drawRect=function(e,g){a.Gd(this.Fd);e=E(e);this._drawRect(e,g)};a.Canvas.prototype.drawRect4f=
function(e,g,m,r,u){a.Gd(this.Fd);this._drawRect4f(e,g,m,r,u)};a.Canvas.prototype.drawShadow=function(e,g,m,r,u,w,B){a.Gd(this.Fd);var J=n(u,"HEAPF32"),F=n(w,"HEAPF32");g=n(g,"HEAPF32",pb);m=n(m,"HEAPF32",qb);this._drawShadow(e,g,m,r,J,F,B);h(J,u);h(F,w)};a.getShadowLocalBounds=function(e,g,m,r,u,w,B){e=p(e);m=n(m,"HEAPF32",pb);r=n(r,"HEAPF32",qb);if(!this._getShadowLocalBounds(e,g,m,r,u,w,P))return null;g=W.toTypedArray();return B?(B.set(g),B):g.slice()};a.Canvas.prototype.drawTextBlob=function(e,
g,m,r){a.Gd(this.Fd);this._drawTextBlob(e,g,m,r)};a.Canvas.prototype.drawVertices=function(e,g,m){a.Gd(this.Fd);this._drawVertices(e,g,m)};a.Canvas.prototype.getDeviceClipBounds=function(e){this._getDeviceClipBounds(Ga);var g=Va.toTypedArray();e?e.set(g):e=g.slice();return e};a.Canvas.prototype.quickReject=function(e){e=E(e);return this._quickReject(e)};a.Canvas.prototype.getLocalToDevice=function(){this._getLocalToDevice(fa);for(var e=fa,g=Array(16),m=0;16>m;m++)g[m]=a.HEAPF32[e/4+m];return g};a.Canvas.prototype.getTotalMatrix=
function(){this._getTotalMatrix(L);for(var e=Array(9),g=0;9>g;g++)e[g]=a.HEAPF32[L/4+g];return e};a.Canvas.prototype.makeSurface=function(e){e=this._makeSurface(e);e.Fd=this.Fd;return e};a.Canvas.prototype.readPixels=function(e,g,m,r,u){a.Gd(this.Fd);return l(this,e,g,m,r,u)};a.Canvas.prototype.saveLayer=function(e,g,m,r,u){g=E(g);return this._saveLayer(e||null,g,m||null,r||0,u||a.TileMode.Clamp)};a.Canvas.prototype.writePixels=function(e,g,m,r,u,w,B,J){if(e.byteLength%(g*m))throw"pixels length must be a multiple of the srcWidth * srcHeight";
a.Gd(this.Fd);var F=e.byteLength/(g*m);w=w||a.AlphaType.Unpremul;B=B||a.ColorType.RGBA_8888;J=J||a.ColorSpace.SRGB;var R=F*g;F=n(e,"HEAPU8");g=this._writePixels({width:g,height:m,colorType:B,alphaType:w,colorSpace:J},F,R,r,u);h(F,e);return g};a.ColorFilter.MakeBlend=function(e,g,m){e=v(e);m=m||a.ColorSpace.SRGB;return a.ColorFilter._MakeBlend(e,g,m)};a.ColorFilter.MakeMatrix=function(e){if(!e||20!==e.length)throw"invalid color matrix";var g=n(e,"HEAPF32"),m=a.ColorFilter._makeMatrix(g);h(g,e);return m};
a.ContourMeasure.prototype.getPosTan=function(e,g){this._getPosTan(e,P);e=W.toTypedArray();return g?(g.set(e),g):e.slice()};a.ImageFilter.prototype.getOutputBounds=function(e,g,m){e=E(e,P);g=p(g);this._getOutputBounds(e,g,Ga);g=Va.toTypedArray();return m?(m.set(g),m):g.slice()};a.ImageFilter.MakeDropShadow=function(e,g,m,r,u,w){u=v(u,Y);return a.ImageFilter._MakeDropShadow(e,g,m,r,u,w)};a.ImageFilter.MakeDropShadowOnly=function(e,g,m,r,u,w){u=v(u,Y);return a.ImageFilter._MakeDropShadowOnly(e,g,m,
r,u,w)};a.ImageFilter.MakeImage=function(e,g,m,r){m=E(m,P);r=E(r,ra);if("B"in g&&"C"in g)return a.ImageFilter._MakeImageCubic(e,g.B,g.C,m,r);const u=g.filter;let w=a.MipmapMode.None;"mipmap"in g&&(w=g.mipmap);return a.ImageFilter._MakeImageOptions(e,u,w,m,r)};a.ImageFilter.MakeMatrixTransform=function(e,g,m){e=p(e);if("B"in g&&"C"in g)return a.ImageFilter._MakeMatrixTransformCubic(e,g.B,g.C,m);const r=g.filter;let u=a.MipmapMode.None;"mipmap"in g&&(u=g.mipmap);return a.ImageFilter._MakeMatrixTransformOptions(e,
r,u,m)};a.Paint.prototype.getColor=function(){this._getColor(Y);return A(Y)};a.Paint.prototype.setColor=function(e,g){g=g||null;e=v(e);this._setColor(e,g)};a.Paint.prototype.setColorComponents=function(e,g,m,r,u){u=u||null;e=z(e,g,m,r);this._setColor(e,u)};a.Path.prototype.getPoint=function(e,g){this._getPoint(e,P);e=W.toTypedArray();return g?(g[0]=e[0],g[1]=e[1],g):e.slice(0,2)};a.Picture.prototype.makeShader=function(e,g,m,r,u){r=p(r);u=E(u);return this._makeShader(e,g,m,r,u)};a.Picture.prototype.cullRect=
function(e){this._cullRect(P);var g=W.toTypedArray();return e?(e.set(g),e):g.slice()};a.PictureRecorder.prototype.beginRecording=function(e,g){e=E(e);return this._beginRecording(e,!!g)};a.Surface.prototype.getCanvas=function(){var e=this._getCanvas();e.Fd=this.Fd;return e};a.Surface.prototype.makeImageSnapshot=function(e){a.Gd(this.Fd);e=n(e,"HEAP32",Ga);return this._makeImageSnapshot(e)};a.Surface.prototype.makeSurface=function(e){a.Gd(this.Fd);e=this._makeSurface(e);e.Fd=this.Fd;return e};a.Surface.prototype.Fe=
function(e,g){this.$d||(this.$d=this.getCanvas());return requestAnimationFrame(function(){a.Gd(this.Fd);e(this.$d);this.flush(g)}.bind(this))};a.Surface.prototype.requestAnimationFrame||(a.Surface.prototype.requestAnimationFrame=a.Surface.prototype.Fe);a.Surface.prototype.Ce=function(e,g){this.$d||(this.$d=this.getCanvas());requestAnimationFrame(function(){a.Gd(this.Fd);e(this.$d);this.flush(g);this.dispose()}.bind(this))};a.Surface.prototype.drawOnce||(a.Surface.prototype.drawOnce=a.Surface.prototype.Ce);
a.PathEffect.MakeDash=function(e,g){g||=0;if(!e.length||1===e.length%2)throw"Intervals array must have even length";var m=n(e,"HEAPF32");g=a.PathEffect._MakeDash(m,e.length,g);h(m,e);return g};a.PathEffect.MakeLine2D=function(e,g){g=p(g);return a.PathEffect._MakeLine2D(e,g)};a.PathEffect.MakePath2D=function(e,g){e=p(e);return a.PathEffect._MakePath2D(e,g)};a.Shader.MakeColor=function(e,g){g=g||null;e=v(e);return a.Shader._MakeColor(e,g)};a.Shader.Blend=a.Shader.MakeBlend;a.Shader.Color=a.Shader.MakeColor;
a.Shader.MakeLinearGradient=function(e,g,m,r,u,w,B,J){J=J||null;var F=k(m),R=n(r,"HEAPF32");B=B||0;w=p(w);var T=W.toTypedArray();T.set(e);T.set(g,2);e=a.Shader._MakeLinearGradient(P,F.Qd,F.colorType,R,F.count,u,B,w,J);h(F.Qd,m);r&&h(R,r);return e};a.Shader.MakeRadialGradient=function(e,g,m,r,u,w,B,J){J=J||null;var F=k(m),R=n(r,"HEAPF32");B=B||0;w=p(w);e=a.Shader._MakeRadialGradient(e[0],e[1],g,F.Qd,F.colorType,R,F.count,u,B,w,J);h(F.Qd,m);r&&h(R,r);return e};a.Shader.MakeSweepGradient=function(e,
g,m,r,u,w,B,J,F,R){R=R||null;var T=k(m),sa=n(r,"HEAPF32");B=B||0;J=J||0;F=F||360;w=p(w);e=a.Shader._MakeSweepGradient(e,g,T.Qd,T.colorType,sa,T.count,u,J,F,B,w,R);h(T.Qd,m);r&&h(sa,r);return e};a.Shader.MakeTwoPointConicalGradient=function(e,g,m,r,u,w,B,J,F,R){R=R||null;var T=k(u),sa=n(w,"HEAPF32");F=F||0;J=p(J);var Ha=W.toTypedArray();Ha.set(e);Ha.set(m,2);e=a.Shader._MakeTwoPointConicalGradient(P,g,r,T.Qd,T.colorType,sa,T.count,B,F,J,R);h(T.Qd,u);w&&h(sa,w);return e};a.Vertices.prototype.bounds=
function(e){this._bounds(P);var g=W.toTypedArray();return e?(e.set(g),e):g.slice()};a.Jd&&a.Jd.forEach(function(e){e()})};a.computeTonalColors=function(l){var e=n(l.ambient,"HEAPF32"),g=n(l.spot,"HEAPF32");this._computeTonalColors(e,g);var m={ambient:A(e),spot:A(g)};h(e,l.ambient);h(g,l.spot);return m};a.LTRBRect=function(l,e,g,m){return Float32Array.of(l,e,g,m)};a.XYWHRect=function(l,e,g,m){return Float32Array.of(l,e,l+g,e+m)};a.LTRBiRect=function(l,e,g,m){return Int32Array.of(l,e,g,m)};a.XYWHiRect=
function(l,e,g,m){return Int32Array.of(l,e,l+g,e+m)};a.RRectXY=function(l,e,g){return Float32Array.of(l[0],l[1],l[2],l[3],e,g,e,g,e,g,e,g)};a.MakeAnimatedImageFromEncoded=function(l){l=new Uint8Array(l);var e=a._malloc(l.byteLength);a.HEAPU8.set(l,e);return(l=a._decodeAnimatedImage(e,l.byteLength))?l:null};a.MakeImageFromEncoded=function(l){l=new Uint8Array(l);var e=a._malloc(l.byteLength);a.HEAPU8.set(l,e);return(l=a._decodeImage(e,l.byteLength))?l:null};var Wa=null;a.MakeImageFromCanvasImageSource=
function(l){var e=l.width,g=l.height;Wa||=document.createElement("canvas");Wa.width=e;Wa.height=g;var m=Wa.getContext("2d",{willReadFrequently:!0});m.drawImage(l,0,0);l=m.getImageData(0,0,e,g);return a.MakeImage({width:e,height:g,alphaType:a.AlphaType.Unpremul,colorType:a.ColorType.RGBA_8888,colorSpace:a.ColorSpace.SRGB},l.data,4*e)};a.MakeImage=function(l,e,g){var m=a._malloc(e.length);a.HEAPU8.set(e,m);return a._MakeImage(l,m,e.length,g)};a.MakeVertices=function(l,e,g,m,r,u){var w=r&&r.length||
0,B=0;g&&g.length&&(B|=1);m&&m.length&&(B|=2);void 0===u||u||(B|=4);l=new a._VerticesBuilder(l,e.length/2,w,B);n(e,"HEAPF32",l.positions());l.texCoords()&&n(g,"HEAPF32",l.texCoords());l.colors()&&n(c(m),"HEAPU32",l.colors());l.indices()&&n(r,"HEAPU16",l.indices());return l.detach()};(function(l){l.Jd=l.Jd||[];l.Jd.push(function(){l.Bidi.getBidiRegions=function(e,g){if((e=l.Bidi._getBidiRegions(e,g===l.TextDirection.LTR?1:0))&&e.length){g=[];for(let m=0;m<e.length;m+=3)g.push({start:e[m],end:e[m+1],
level:e[m+2]});e=g}else e=[];return e};l.Bidi.reorderVisual=function(e){var g=n(e,"HEAPU8"),m=l.Bidi._reorderVisual(g,e&&e.length||0);h(g,e);if(m&&m.length){e=[];for(g=0;g<m.length;g+=1)e.push({index:m[g]});m=e}else m=[];return m};l.CodeUnits.compute=function(e){if((e=l.CodeUnits._compute(e))&&e.length){var g=[];for(let m=0;m<e.length;m+=1)g.push({flags:e[m]});e=g}else e=[];return e};l.TextDirection||(l.TextDirection={LTR:{value:1},RTL:{value:0}})})})(q);a.Jd=a.Jd||[];a.Jd.push(function(){});a.Jd=
a.Jd||[];a.Jd.push(function(){a.MakePicture=function(l){l=new Uint8Array(l);var e=a._malloc(l.byteLength);a.HEAPU8.set(l,e);return(l=a._MakePicture(e,l.byteLength))?l:null}});a.Jd=a.Jd||[];a.Jd.push(function(){a.RuntimeEffect.Make=function(l,e){return a.RuntimeEffect._Make(l,{onError:e||function(g){console.log("RuntimeEffect error",g)}})};a.RuntimeEffect.MakeForBlender=function(l,e){return a.RuntimeEffect._MakeForBlender(l,{onError:e||function(g){console.log("RuntimeEffect error",g)}})};a.RuntimeEffect.prototype.makeShader=
function(l,e){var g=!l._ck,m=n(l,"HEAPF32");e=p(e);return this._makeShader(m,4*l.length,g,e)};a.RuntimeEffect.prototype.makeShaderWithChildren=function(l,e,g){var m=!l._ck,r=n(l,"HEAPF32");g=p(g);for(var u=[],w=0;w<e.length;w++)u.push(e[w].Ed.Hd);e=n(u,"HEAPU32");return this._makeShaderWithChildren(r,4*l.length,m,e,u.length,g)};a.RuntimeEffect.prototype.makeBlender=function(l){var e=!l._ck,g=n(l,"HEAPF32");return this._makeBlender(g,4*l.length,e)}})})(q);var ma=Object.assign({},q),na="",oa,pa;
if(da||ea)ea?na=self.location.href:"undefined"!=typeof document&&document.currentScript&&(na=document.currentScript.src),_scriptName&&(na=_scriptName),na.startsWith("blob:")?na="":na=na.substr(0,na.replace(/[?#].*/,"").lastIndexOf("/")+1),ea&&(pa=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),oa=a=>fetch(a,{credentials:"same-origin"}).then(b=>b.ok?b.arrayBuffer():Promise.reject(Error(b.status+" : "+b.url)));
var qa=console.log.bind(console),ta=console.error.bind(console);Object.assign(q,ma);ma=null;var ua,va=!1,wa,y,xa,za,C,D,G,Aa;function Ba(){var a=ua.buffer;q.HEAP8=wa=new Int8Array(a);q.HEAP16=xa=new Int16Array(a);q.HEAPU8=y=new Uint8Array(a);q.HEAPU16=za=new Uint16Array(a);q.HEAP32=C=new Int32Array(a);q.HEAPU32=D=new Uint32Array(a);q.HEAPF32=G=new Float32Array(a);q.HEAPF64=Aa=new Float64Array(a)}var Ca=[],Da=[],Ea=[],Fa=0,Ia=null,Ja=null;
function Ka(a){a="Aborted("+a+")";ta(a);va=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");ba(a);throw a;}var La=a=>a.startsWith("data:application/octet-stream;base64,"),Ma;function Na(a){return oa(a).then(b=>new Uint8Array(b),()=>{if(pa)var b=pa(a);else throw"both async and sync fetching of the wasm failed";return b})}function Oa(a,b,c){return Na(a).then(d=>WebAssembly.instantiate(d,b)).then(c,d=>{ta(`failed to asynchronously prepare wasm: ${d}`);Ka(d)})}
function Pa(a,b){var c=Ma;return"function"!=typeof WebAssembly.instantiateStreaming||La(c)||"function"!=typeof fetch?Oa(c,a,b):fetch(c,{credentials:"same-origin"}).then(d=>WebAssembly.instantiateStreaming(d,a).then(b,function(f){ta(`wasm streaming compile failed: ${f}`);ta("falling back to ArrayBuffer instantiation");return Oa(c,a,b)}))}function Qa(a){this.name="ExitStatus";this.message=`Program terminated with exit(${a})`;this.status=a}var Ra=a=>{a.forEach(b=>b(q))},Sa=q.noExitRuntime||!0;
class Ta{constructor(a){this.Hd=a-24}}var Ua=0,Xa=0,Ya={},Za=a=>{for(;a.length;){var b=a.pop();a.pop()(b)}};function $a(a){return this.fromWireType(D[a>>2])}
var ab={},bb={},cb={},db,fb=(a,b,c)=>{function d(k){k=c(k);if(k.length!==a.length)throw new db("Mismatched type converter count");for(var p=0;p<a.length;++p)eb(a[p],k[p])}a.forEach(k=>cb[k]=b);var f=Array(b.length),h=[],n=0;b.forEach((k,p)=>{bb.hasOwnProperty(k)?f[p]=bb[k]:(h.push(k),ab.hasOwnProperty(k)||(ab[k]=[]),ab[k].push(()=>{f[p]=bb[k];++n;n===h.length&&d(f)}))});0===h.length&&d(f)},gb,H=a=>{for(var b="";y[a];)b+=gb[y[a++]];return b},I;
function hb(a,b,c={}){var d=b.name;if(!a)throw new I(`type "${d}" must have a positive integer typeid pointer`);if(bb.hasOwnProperty(a)){if(c.Re)return;throw new I(`Cannot register type '${d}' twice`);}bb[a]=b;delete cb[a];ab.hasOwnProperty(a)&&(b=ab[a],delete ab[a],b.forEach(f=>f()))}function eb(a,b,c={}){return hb(a,b,c)}
var ib=a=>{throw new I(a.Ed.Kd.Id.name+" instance already deleted");},jb=!1,kb=()=>{},lb=(a,b,c)=>{if(b===c)return a;if(void 0===c.Nd)return null;a=lb(a,b,c.Nd);return null===a?null:c.Je(a)},mb={},nb={},rb=(a,b)=>{if(void 0===b)throw new I("ptr should not be undefined");for(;a.Nd;)b=a.ee(b),a=a.Nd;return nb[b]},tb=(a,b)=>{if(!b.Kd||!b.Hd)throw new db("makeClassHandle requires ptr and ptrType");if(!!b.Od!==!!b.Ld)throw new db("Both smartPtrType and smartPtr must be specified");b.count={value:1};return sb(Object.create(a,
{Ed:{value:b,writable:!0}}))},sb=a=>{if("undefined"===typeof FinalizationRegistry)return sb=b=>b,a;jb=new FinalizationRegistry(b=>{b=b.Ed;--b.count.value;0===b.count.value&&(b.Ld?b.Od.Ud(b.Ld):b.Kd.Id.Ud(b.Hd))});sb=b=>{var c=b.Ed;c.Ld&&jb.register(b,{Ed:c},b);return b};kb=b=>{jb.unregister(b)};return sb(a)},ub=[];function vb(){}
var wb=(a,b)=>Object.defineProperty(b,"name",{value:a}),xb=(a,b,c)=>{if(void 0===a[b].Md){var d=a[b];a[b]=function(...f){if(!a[b].Md.hasOwnProperty(f.length))throw new I(`Function '${c}' called with an invalid number of arguments (${f.length}) - expects one of (${a[b].Md})!`);return a[b].Md[f.length].apply(this,f)};a[b].Md=[];a[b].Md[d.Vd]=d}},yb=(a,b,c)=>{if(q.hasOwnProperty(a)){if(void 0===c||void 0!==q[a].Md&&void 0!==q[a].Md[c])throw new I(`Cannot register public name '${a}' twice`);xb(q,a,a);
if(q[a].Md.hasOwnProperty(c))throw new I(`Cannot register multiple overloads of a function with the same number of arguments (${c})!`);q[a].Md[c]=b}else q[a]=b,q[a].Vd=c},zb=a=>{a=a.replace(/[^a-zA-Z0-9_]/g,"$");var b=a.charCodeAt(0);return 48<=b&&57>=b?`_${a}`:a};function Ab(a,b,c,d,f,h,n,k){this.name=a;this.constructor=b;this.Zd=c;this.Ud=d;this.Nd=f;this.Me=h;this.ee=n;this.Je=k;this.Ue=[]}
var Bb=(a,b,c)=>{for(;b!==c;){if(!b.ee)throw new I(`Expected null or instance of ${c.name}, got an instance of ${b.name}`);a=b.ee(a);b=b.Nd}return a};function Cb(a,b){if(null===b){if(this.qe)throw new I(`null is not a valid ${this.name}`);return 0}if(!b.Ed)throw new I(`Cannot pass "${Db(b)}" as a ${this.name}`);if(!b.Ed.Hd)throw new I(`Cannot pass deleted object as a pointer of type ${this.name}`);return Bb(b.Ed.Hd,b.Ed.Kd.Id,this.Id)}
function Eb(a,b){if(null===b){if(this.qe)throw new I(`null is not a valid ${this.name}`);if(this.je){var c=this.re();null!==a&&a.push(this.Ud,c);return c}return 0}if(!b||!b.Ed)throw new I(`Cannot pass "${Db(b)}" as a ${this.name}`);if(!b.Ed.Hd)throw new I(`Cannot pass deleted object as a pointer of type ${this.name}`);if(!this.ie&&b.Ed.Kd.ie)throw new I(`Cannot convert argument of type ${b.Ed.Od?b.Ed.Od.name:b.Ed.Kd.name} to parameter type ${this.name}`);c=Bb(b.Ed.Hd,b.Ed.Kd.Id,this.Id);if(this.je){if(void 0===
b.Ed.Ld)throw new I("Passing raw pointer to smart pointer is illegal");switch(this.Ze){case 0:if(b.Ed.Od===this)c=b.Ed.Ld;else throw new I(`Cannot convert argument of type ${b.Ed.Od?b.Ed.Od.name:b.Ed.Kd.name} to parameter type ${this.name}`);break;case 1:c=b.Ed.Ld;break;case 2:if(b.Ed.Od===this)c=b.Ed.Ld;else{var d=b.clone();c=this.Ve(c,Fb(()=>d["delete"]()));null!==a&&a.push(this.Ud,c)}break;default:throw new I("Unsupporting sharing policy");}}return c}
function Gb(a,b){if(null===b){if(this.qe)throw new I(`null is not a valid ${this.name}`);return 0}if(!b.Ed)throw new I(`Cannot pass "${Db(b)}" as a ${this.name}`);if(!b.Ed.Hd)throw new I(`Cannot pass deleted object as a pointer of type ${this.name}`);if(b.Ed.Kd.ie)throw new I(`Cannot convert argument of type ${b.Ed.Kd.name} to parameter type ${this.name}`);return Bb(b.Ed.Hd,b.Ed.Kd.Id,this.Id)}
function Hb(a,b,c,d,f,h,n,k,p,t,v){this.name=a;this.Id=b;this.qe=c;this.ie=d;this.je=f;this.Te=h;this.Ze=n;this.ye=k;this.re=p;this.Ve=t;this.Ud=v;f||void 0!==b.Nd?this.toWireType=Eb:(this.toWireType=d?Cb:Gb,this.Rd=null)}
var Ib=(a,b,c)=>{if(!q.hasOwnProperty(a))throw new db("Replacing nonexistent public symbol");void 0!==q[a].Md&&void 0!==c?q[a].Md[c]=b:(q[a]=b,q[a].Vd=c)},K,Jb=(a,b,c=[])=>{a.includes("j")?(a=a.replace(/p/g,"i"),b=(0,q["dynCall_"+a])(b,...c)):b=K.get(b)(...c);return b},Kb=(a,b)=>(...c)=>Jb(a,b,c),N=(a,b)=>{a=H(a);var c=a.includes("j")?Kb(a,b):K.get(b);if("function"!=typeof c)throw new I(`unknown function pointer with signature ${a}: ${b}`);return c},Lb,Ub=a=>{a=Mb(a);var b=H(a);Tb(a);return b},Vb=
(a,b)=>{function c(h){f[h]||bb[h]||(cb[h]?cb[h].forEach(c):(d.push(h),f[h]=!0))}var d=[],f={};b.forEach(c);throw new Lb(`${a}: `+d.map(Ub).join([", "]));};function Wb(a){for(var b=1;b<a.length;++b)if(null!==a[b]&&void 0===a[b].Rd)return!0;return!1}
function Xb(a,b,c,d,f){var h=b.length;if(2>h)throw new I("argTypes array size mismatch! Must at least get return value and 'this' types!");var n=null!==b[1]&&null!==c,k=Wb(b),p="void"!==b[0].name,t=h-2,v=Array(t),z=[],A=[];return wb(a,function(...E){A.length=0;z.length=n?2:1;z[0]=f;if(n){var M=b[1].toWireType(A,this);z[1]=M}for(var L=0;L<t;++L)v[L]=b[L+2].toWireType(A,E[L]),z.push(v[L]);E=d(...z);if(k)Za(A);else for(L=n?1:2;L<b.length;L++){var V=1===L?M:v[L-2];null!==b[L].Rd&&b[L].Rd(V)}M=p?b[0].fromWireType(E):
void 0;return M})}
var Yb=(a,b)=>{for(var c=[],d=0;d<a;d++)c.push(D[b+4*d>>2]);return c},Zb=a=>{a=a.trim();const b=a.indexOf("(");return-1!==b?a.substr(0,b):a},$b=[],ac=[],bc=a=>{9<a&&0===--ac[a+1]&&(ac[a]=void 0,$b.push(a))},cc=a=>{if(!a)throw new I("Cannot use deleted val. handle = "+a);return ac[a]},Fb=a=>{switch(a){case void 0:return 2;case null:return 4;case !0:return 6;case !1:return 8;default:const b=$b.pop()||ac.length;ac[b]=a;ac[b+1]=1;return b}},dc={name:"emscripten::val",fromWireType:a=>{var b=cc(a);bc(a);
return b},toWireType:(a,b)=>Fb(b),Pd:8,readValueFromPointer:$a,Rd:null},ec=(a,b,c)=>{switch(b){case 1:return c?function(d){return this.fromWireType(wa[d])}:function(d){return this.fromWireType(y[d])};case 2:return c?function(d){return this.fromWireType(xa[d>>1])}:function(d){return this.fromWireType(za[d>>1])};case 4:return c?function(d){return this.fromWireType(C[d>>2])}:function(d){return this.fromWireType(D[d>>2])};default:throw new TypeError(`invalid integer width (${b}): ${a}`);}},fc=(a,b)=>
{var c=bb[a];if(void 0===c)throw a=`${b} has unknown type ${Ub(a)}`,new I(a);return c},Db=a=>{if(null===a)return"null";var b=typeof a;return"object"===b||"array"===b||"function"===b?a.toString():""+a},gc=(a,b)=>{switch(b){case 4:return function(c){return this.fromWireType(G[c>>2])};case 8:return function(c){return this.fromWireType(Aa[c>>3])};default:throw new TypeError(`invalid float width (${b}): ${a}`);}},hc=(a,b,c)=>{switch(b){case 1:return c?d=>wa[d]:d=>y[d];case 2:return c?d=>xa[d>>1]:d=>za[d>>
1];case 4:return c?d=>C[d>>2]:d=>D[d>>2];default:throw new TypeError(`invalid integer width (${b}): ${a}`);}},ic=(a,b,c)=>{var d=y;if(!(0<c))return 0;var f=b;c=b+c-1;for(var h=0;h<a.length;++h){var n=a.charCodeAt(h);if(55296<=n&&57343>=n){var k=a.charCodeAt(++h);n=65536+((n&1023)<<10)|k&1023}if(127>=n){if(b>=c)break;d[b++]=n}else{if(2047>=n){if(b+1>=c)break;d[b++]=192|n>>6}else{if(65535>=n){if(b+2>=c)break;d[b++]=224|n>>12}else{if(b+3>=c)break;d[b++]=240|n>>18;d[b++]=128|n>>12&63}d[b++]=128|n>>6&
63}d[b++]=128|n&63}}d[b]=0;return b-f},jc=a=>{for(var b=0,c=0;c<a.length;++c){var d=a.charCodeAt(c);127>=d?b++:2047>=d?b+=2:55296<=d&&57343>=d?(b+=4,++c):b+=3}return b},kc="undefined"!=typeof TextDecoder?new TextDecoder:void 0,lc=(a,b=0,c=NaN)=>{var d=b+c;for(c=b;a[c]&&!(c>=d);)++c;if(16<c-b&&a.buffer&&kc)return kc.decode(a.subarray(b,c));for(d="";b<c;){var f=a[b++];if(f&128){var h=a[b++]&63;if(192==(f&224))d+=String.fromCharCode((f&31)<<6|h);else{var n=a[b++]&63;f=224==(f&240)?(f&15)<<12|h<<6|n:
(f&7)<<18|h<<12|n<<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},mc="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,nc=(a,b)=>{var c=a>>1;for(var d=c+b/2;!(c>=d)&&za[c];)++c;c<<=1;if(32<c-a&&mc)return mc.decode(y.subarray(a,c));c="";for(d=0;!(d>=b/2);++d){var f=xa[a+2*d>>1];if(0==f)break;c+=String.fromCharCode(f)}return c},oc=(a,b,c)=>{c??=2147483647;if(2>c)return 0;c-=2;var d=
b;c=c<2*a.length?c/2:a.length;for(var f=0;f<c;++f)xa[b>>1]=a.charCodeAt(f),b+=2;xa[b>>1]=0;return b-d},pc=a=>2*a.length,qc=(a,b)=>{for(var c=0,d="";!(c>=b/4);){var f=C[a+4*c>>2];if(0==f)break;++c;65536<=f?(f-=65536,d+=String.fromCharCode(55296|f>>10,56320|f&1023)):d+=String.fromCharCode(f)}return d},rc=(a,b,c)=>{c??=2147483647;if(4>c)return 0;var d=b;c=d+c-4;for(var f=0;f<a.length;++f){var h=a.charCodeAt(f);if(55296<=h&&57343>=h){var n=a.charCodeAt(++f);h=65536+((h&1023)<<10)|n&1023}C[b>>2]=h;b+=
4;if(b+4>c)break}C[b>>2]=0;return b-d},sc=a=>{for(var b=0,c=0;c<a.length;++c){var d=a.charCodeAt(c);55296<=d&&57343>=d&&++c;b+=4}return b},tc=(a,b,c)=>{var d=[];a=a.toWireType(d,c);d.length&&(D[b>>2]=Fb(d));return a},uc=[],vc={},wc=a=>{var b=vc[a];return void 0===b?H(a):b},xc=()=>{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.");},yc=a=>{var b=uc.length;uc.push(a);return b},zc=(a,b)=>{for(var c=Array(a),d=0;d<a;++d)c[d]=fc(D[b+4*d>>2],"parameter "+d);return c},Ac=Reflect.construct,O,Bc=a=>{var b=a.getExtension("ANGLE_instanced_arrays");b&&(a.vertexAttribDivisor=(c,d)=>b.vertexAttribDivisorANGLE(c,
d),a.drawArraysInstanced=(c,d,f,h)=>b.drawArraysInstancedANGLE(c,d,f,h),a.drawElementsInstanced=(c,d,f,h,n)=>b.drawElementsInstancedANGLE(c,d,f,h,n))},Cc=a=>{var b=a.getExtension("OES_vertex_array_object");b&&(a.createVertexArray=()=>b.createVertexArrayOES(),a.deleteVertexArray=c=>b.deleteVertexArrayOES(c),a.bindVertexArray=c=>b.bindVertexArrayOES(c),a.isVertexArray=c=>b.isVertexArrayOES(c))},Dc=a=>{var b=a.getExtension("WEBGL_draw_buffers");b&&(a.drawBuffers=(c,d)=>b.drawBuffersWEBGL(c,d))},Ec=a=>
{var b="ANGLE_instanced_arrays EXT_blend_minmax EXT_disjoint_timer_query EXT_frag_depth EXT_shader_texture_lod EXT_sRGB OES_element_index_uint OES_fbo_render_mipmap OES_standard_derivatives OES_texture_float OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_depth_texture WEBGL_draw_buffers EXT_color_buffer_float EXT_conservative_depth EXT_disjoint_timer_query_webgl2 EXT_texture_norm16 NV_shader_noperspective_interpolation WEBGL_clip_cull_distance EXT_clip_control EXT_color_buffer_half_float EXT_depth_clamp EXT_float_blend EXT_polygon_offset_clamp EXT_texture_compression_bptc EXT_texture_compression_rgtc EXT_texture_filter_anisotropic KHR_parallel_shader_compile OES_texture_float_linear WEBGL_blend_func_extended WEBGL_compressed_texture_astc WEBGL_compressed_texture_etc WEBGL_compressed_texture_etc1 WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context WEBGL_multi_draw WEBGL_polygon_mode".split(" ");
return(a.getSupportedExtensions()||[]).filter(c=>b.includes(c))},Fc=1,Gc=[],Hc=[],Ic=[],Jc=[],ia=[],Kc=[],Lc=[],la=[],Q=[],Mc=[],Nc=[],Pc={},Qc={},Rc=4,Sc=0,ha=a=>{for(var b=Fc++,c=a.length;c<b;c++)a[c]=null;return b},Tc=(a,b,c,d)=>{for(var f=0;f<a;f++){var h=O[c](),n=h&&ha(d);h?(h.name=n,d[n]=h):U||=1282;C[b+4*f>>2]=n}},ja=(a,b)=>{a.te||(a.te=a.getContext,a.getContext=function(d,f){f=a.te(d,f);return"webgl"==d==f instanceof WebGLRenderingContext?f:null});var c=1<b.majorVersion?a.getContext("webgl2",
b):a.getContext("webgl",b);return c?Uc(c,b):0},Uc=(a,b)=>{var c=ha(la),d={handle:c,attributes:b,version:b.majorVersion,Sd:a};a.canvas&&(a.canvas.Be=d);la[c]=d;("undefined"==typeof b.Ke||b.Ke)&&Vc(d);return c},ka=a=>{x=la[a];q.$e=O=x?.Sd;return!(a&&!O)},Vc=a=>{a||=x;if(!a.Se){a.Se=!0;var b=a.Sd;b.df=b.getExtension("WEBGL_multi_draw");b.bf=b.getExtension("EXT_polygon_offset_clamp");b.af=b.getExtension("EXT_clip_control");b.ff=b.getExtension("WEBGL_polygon_mode");Bc(b);Cc(b);Dc(b);b.ve=b.getExtension("WEBGL_draw_instanced_base_vertex_base_instance");
b.xe=b.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance");2<=a.version&&(b.Td=b.getExtension("EXT_disjoint_timer_query_webgl2"));if(2>a.version||!b.Td)b.Td=b.getExtension("EXT_disjoint_timer_query");Ec(b).forEach(c=>{c.includes("lose_context")||c.includes("debug")||b.getExtension(c)})}},x,U,Wc=(a,b)=>{O.bindFramebuffer(a,Ic[b])},Xc=a=>{O.bindVertexArray(Lc[a])},Yc=a=>O.clear(a),Zc=(a,b,c,d)=>O.clearColor(a,b,c,d),$c=a=>O.clearStencil(a),ad=(a,b)=>{for(var c=0;c<a;c++){var d=C[b+
4*c>>2];O.deleteVertexArray(Lc[d]);Lc[d]=null}},bd=[],cd=(a,b)=>{Tc(a,b,"createVertexArray",Lc)};function dd(){var a=Ec(O);return a=a.concat(a.map(b=>"GL_"+b))}
var ed=(a,b,c)=>{if(b){var d=void 0;switch(a){case 36346:d=1;break;case 36344:0!=c&&1!=c&&(U||=1280);return;case 34814:case 36345:d=0;break;case 34466:var f=O.getParameter(34467);d=f?f.length:0;break;case 33309:if(2>x.version){U||=1282;return}d=dd().length;break;case 33307:case 33308:if(2>x.version){U||=1280;return}d=33307==a?3:0}if(void 0===d)switch(f=O.getParameter(a),typeof f){case "number":d=f;break;case "boolean":d=f?1:0;break;case "string":U||=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:U||=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:C[b+4*a>>2]=f[a];break;case 2:G[b+4*a>>2]=f[a];break;case 4:wa[b+a]=f[a]?1:0}return}try{d=f.name|0}catch(h){U||=1280;ta(`GL_INVALID_ENUM in glGet${c}v: Unknown object returned from WebGL getParameter(${a})! (error: ${h})`);return}}break;default:U||=1280;ta(`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;D[b>>2]=c;D[b+4>>2]=(c-D[b>>2])/4294967296;break;case 0:C[b>>2]=d;break;case 2:G[b>>2]=d;break;case 4:wa[b]=d?1:0}}else U||=1281},fd=(a,b)=>ed(a,b,0),gd=(a,b,c)=>{if(c){a=Q[a];b=2>x.version?O.Td.getQueryObjectEXT(a,b):O.getQueryParameter(a,b);var d;"boolean"==typeof b?d=b?1:0:d=b;D[c>>2]=d;D[c+4>>2]=(d-D[c>>2])/4294967296}else U||=1281},jd=a=>{var b=jc(a)+1,c=hd(b);c&&ic(a,c,b);return c},kd=a=>{var b=Pc[a];if(!b){switch(a){case 7939:b=jd(dd().join(" "));break;case 7936:case 7937:case 37445:case 37446:(b=
O.getParameter(a))||(U||=1280);b=b?jd(b):0;break;case 7938:b=O.getParameter(7938);var c=`OpenGL ES 2.0 (${b})`;2<=x.version&&(c=`OpenGL ES 3.0 (${b})`);b=jd(c);break;case 35724:b=O.getParameter(35724);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=jd(b);break;default:U||=1280}Pc[a]=b}return b},ld=(a,b)=>{if(2>x.version)return U||=1282,0;var c=Qc[a];if(c)return 0>b||b>=c.length?(U||=1281,0):c[b];switch(a){case 7939:return c=
dd().map(jd),c=Qc[a]=c,0>b||b>=c.length?(U||=1281,0):c[b];default:return U||=1280,0}},md=a=>"]"==a.slice(-1)&&a.lastIndexOf("["),nd=a=>{a-=5120;return 0==a?wa:1==a?y:2==a?xa:4==a?C:6==a?G:5==a||28922==a||28520==a||30779==a||30782==a?D:za},od=(a,b,c,d,f)=>{a=nd(a);b=d*((Sc||c)*({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[b-6402]||1)*a.BYTES_PER_ELEMENT+Rc-1&-Rc);return a.subarray(f>>>31-Math.clz32(a.BYTES_PER_ELEMENT),f+b>>>31-Math.clz32(a.BYTES_PER_ELEMENT))},X=a=>{var b=O.Ie;if(b){var c=
b.de[a];"number"==typeof c&&(b.de[a]=c=O.getUniformLocation(b,b.ze[a]+(0<c?`[${c}]`:"")));return c}U||=1282},pd=[],qd=[],rd={},td=()=>{if(!sd){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",_:"./this.program"},b;for(b in rd)void 0===rd[b]?delete a[b]:a[b]=rd[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);sd=c}return sd},sd,ud=[null,[],[]];
db=q.InternalError=class extends Error{constructor(a){super(a);this.name="InternalError"}};for(var vd=Array(256),wd=0;256>wd;++wd)vd[wd]=String.fromCharCode(wd);gb=vd;I=q.BindingError=class extends Error{constructor(a){super(a);this.name="BindingError"}};
Object.assign(vb.prototype,{isAliasOf:function(a){if(!(this instanceof vb&&a instanceof vb))return!1;var b=this.Ed.Kd.Id,c=this.Ed.Hd;a.Ed=a.Ed;var d=a.Ed.Kd.Id;for(a=a.Ed.Hd;b.Nd;)c=b.ee(c),b=b.Nd;for(;d.Nd;)a=d.ee(a),d=d.Nd;return b===d&&c===a},clone:function(){this.Ed.Hd||ib(this);if(this.Ed.ce)return this.Ed.count.value+=1,this;var a=sb,b=Object,c=b.create,d=Object.getPrototypeOf(this),f=this.Ed;a=a(c.call(b,d,{Ed:{value:{count:f.count,be:f.be,ce:f.ce,Hd:f.Hd,Kd:f.Kd,Ld:f.Ld,Od:f.Od}}}));a.Ed.count.value+=
1;a.Ed.be=!1;return a},["delete"](){this.Ed.Hd||ib(this);if(this.Ed.be&&!this.Ed.ce)throw new I("Object already scheduled for deletion");kb(this);var a=this.Ed;--a.count.value;0===a.count.value&&(a.Ld?a.Od.Ud(a.Ld):a.Kd.Id.Ud(a.Hd));this.Ed.ce||(this.Ed.Ld=void 0,this.Ed.Hd=void 0)},isDeleted:function(){return!this.Ed.Hd},deleteLater:function(){this.Ed.Hd||ib(this);if(this.Ed.be&&!this.Ed.ce)throw new I("Object already scheduled for deletion");ub.push(this);this.Ed.be=!0;return this}});
Object.assign(Hb.prototype,{Ne(a){this.ye&&(a=this.ye(a));return a},ue(a){this.Ud?.(a)},Pd:8,readValueFromPointer:$a,fromWireType:function(a){function b(){return this.je?tb(this.Id.Zd,{Kd:this.Te,Hd:c,Od:this,Ld:a}):tb(this.Id.Zd,{Kd:this,Hd:a})}var c=this.Ne(a);if(!c)return this.ue(a),null;var d=rb(this.Id,c);if(void 0!==d){if(0===d.Ed.count.value)return d.Ed.Hd=c,d.Ed.Ld=a,d.clone();d=d.clone();this.ue(a);return d}d=this.Id.Me(c);d=mb[d];if(!d)return b.call(this);d=this.ie?d.He:d.pointerType;var f=
lb(c,this.Id,d.Id);return null===f?b.call(this):this.je?tb(d.Id.Zd,{Kd:d,Hd:f,Od:this,Ld:a}):tb(d.Id.Zd,{Kd:d,Hd:f})}});Lb=q.UnboundTypeError=((a,b)=>{var c=wb(b,function(d){this.name=b;this.message=d;d=Error(d).stack;void 0!==d&&(this.stack=this.toString()+"\n"+d.replace(/^Error(:[^\n]*)?\n/,""))});c.prototype=Object.create(a.prototype);c.prototype.constructor=c;c.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`};return c})(Error,"UnboundTypeError");
ac.push(0,1,void 0,1,null,1,!0,1,!1,1);q.count_emval_handles=()=>ac.length/2-5-$b.length;for(var xd=0;32>xd;++xd)bd.push(Array(xd));var yd=new Float32Array(288);for(xd=0;288>=xd;++xd)pd[xd]=yd.subarray(0,xd);var zd=new Int32Array(288);for(xd=0;288>=xd;++xd)qd[xd]=zd.subarray(0,xd);
var Md={z:(a,b,c)=>{var d=new Ta(a);D[d.Hd+16>>2]=0;D[d.Hd+4>>2]=b;D[d.Hd+8>>2]=c;Ua=a;Xa++;throw Ua;},dd:()=>{Ka("")},C:a=>{var b=Ya[a];delete Ya[a];var c=b.re,d=b.Ud,f=b.we,h=f.map(n=>n.Qe).concat(f.map(n=>n.Xe));fb([a],h,n=>{var k={};f.forEach((p,t)=>{var v=n[t],z=p.Oe,A=p.Pe,E=n[t+f.length],M=p.We,L=p.Ye;k[p.Le]={read:V=>v.fromWireType(z(A,V)),write:(V,fa)=>{var S=[];M(L,V,E.toWireType(S,fa));Za(S)}}});return[{name:b.name,fromWireType:p=>{var t={},v;for(v in k)t[v]=k[v].read(p);d(p);return t},
toWireType:(p,t)=>{for(var v in k)if(!(v in t))throw new TypeError(`Missing field: "${v}"`);var z=c();for(v in k)k[v].write(z,t[v]);null!==p&&p.push(d,z);return z},Pd:8,readValueFromPointer:$a,Rd:d}]})},N:()=>{},cd:(a,b,c,d)=>{b=H(b);eb(a,{name:b,fromWireType:function(f){return!!f},toWireType:function(f,h){return h?c:d},Pd:8,readValueFromPointer:function(f){return this.fromWireType(y[f])},Rd:null})},d:(a,b,c,d,f,h,n,k,p,t,v,z,A)=>{v=H(v);h=N(f,h);k&&=N(n,k);t&&=N(p,t);A=N(z,A);var E=zb(v);yb(E,function(){Vb(`Cannot construct ${v} due to unbound types`,
[d])});fb([a,b,c],d?[d]:[],M=>{M=M[0];if(d){var L=M.Id;var V=L.Zd}else V=vb.prototype;M=wb(v,function(...ya){if(Object.getPrototypeOf(this)!==fa)throw new I("Use 'new' to construct "+v);if(void 0===S.Wd)throw new I(v+" has no accessible constructor");var W=S.Wd[ya.length];if(void 0===W)throw new I(`Tried to invoke ctor of ${v} with invalid number of parameters (${ya.length}) - expected (${Object.keys(S.Wd).toString()}) parameters instead!`);return W.apply(this,ya)});var fa=Object.create(V,{constructor:{value:M}});
M.prototype=fa;var S=new Ab(v,M,fa,A,L,h,k,t);if(S.Nd){var Y;(Y=S.Nd).fe??(Y.fe=[]);S.Nd.fe.push(S)}L=new Hb(v,S,!0,!1,!1);Y=new Hb(v+"*",S,!1,!1,!1);V=new Hb(v+" const*",S,!1,!0,!1);mb[a]={pointerType:Y,He:V};Ib(E,M);return[L,Y,V]})},c:(a,b,c,d,f,h,n)=>{var k=Yb(c,d);b=H(b);b=Zb(b);h=N(f,h);fb([],[a],p=>{function t(){Vb(`Cannot call ${v} due to unbound types`,k)}p=p[0];var v=`${p.name}.${b}`;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);var z=p.Id.constructor;void 0===z[b]?(t.Vd=c-1,z[b]=t):(xb(z,
b,v),z[b].Md[c-1]=t);fb([],k,A=>{A=[A[0],null].concat(A.slice(1));A=Xb(v,A,null,h,n);void 0===z[b].Md?(A.Vd=c-1,z[b]=A):z[b].Md[c-1]=A;if(p.Id.fe)for(const E of p.Id.fe)E.constructor.hasOwnProperty(b)||(E.constructor[b]=A);return[]});return[]})},x:(a,b,c,d,f,h)=>{var n=Yb(b,c);f=N(d,f);fb([],[a],k=>{k=k[0];var p=`constructor ${k.name}`;void 0===k.Id.Wd&&(k.Id.Wd=[]);if(void 0!==k.Id.Wd[b-1])throw new I(`Cannot register multiple constructors with identical number of parameters (${b-1}) for class '${k.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);
k.Id.Wd[b-1]=()=>{Vb(`Cannot construct ${k.name} due to unbound types`,n)};fb([],n,t=>{t.splice(1,0,null);k.Id.Wd[b-1]=Xb(p,t,null,f,h);return[]});return[]})},a:(a,b,c,d,f,h,n,k)=>{var p=Yb(c,d);b=H(b);b=Zb(b);h=N(f,h);fb([],[a],t=>{function v(){Vb(`Cannot call ${z} due to unbound types`,p)}t=t[0];var z=`${t.name}.${b}`;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);k&&t.Id.Ue.push(b);var A=t.Id.Zd,E=A[b];void 0===E||void 0===E.Md&&E.className!==t.name&&E.Vd===c-2?(v.Vd=c-2,v.className=t.name,A[b]=
v):(xb(A,b,z),A[b].Md[c-2]=v);fb([],p,M=>{M=Xb(z,M,t,h,n);void 0===A[b].Md?(M.Vd=c-2,A[b]=M):A[b].Md[c-2]=M;return[]});return[]})},q:(a,b,c)=>{a=H(a);fb([],[b],d=>{d=d[0];q[a]=d.fromWireType(c);return[]})},bd:a=>eb(a,dc),h:(a,b,c,d)=>{function f(){}b=H(b);f.values={};eb(a,{name:b,constructor:f,fromWireType:function(h){return this.constructor.values[h]},toWireType:(h,n)=>n.value,Pd:8,readValueFromPointer:ec(b,c,d),Rd:null});yb(b,f)},b:(a,b,c)=>{var d=fc(a,"enum");b=H(b);a=d.constructor;d=Object.create(d.constructor.prototype,
{value:{value:c},constructor:{value:wb(`${d.name}_${b}`,function(){})}});a.values[c]=d;a[b]=d},L:(a,b,c)=>{b=H(b);eb(a,{name:b,fromWireType:d=>d,toWireType:(d,f)=>f,Pd:8,readValueFromPointer:gc(b,c),Rd:null})},o:(a,b,c,d,f,h)=>{var n=Yb(b,c);a=H(a);a=Zb(a);f=N(d,f);yb(a,function(){Vb(`Cannot call ${a} due to unbound types`,n)},b-1);fb([],n,k=>{k=[k[0],null].concat(k.slice(1));Ib(a,Xb(a,k,null,f,h),b-1);return[]})},w:(a,b,c,d,f)=>{b=H(b);-1===f&&(f=4294967295);f=k=>k;if(0===d){var h=32-8*c;f=k=>k<<
h>>>h}var n=b.includes("unsigned")?function(k,p){return p>>>0}:function(k,p){return p};eb(a,{name:b,fromWireType:f,toWireType:n,Pd:8,readValueFromPointer:hc(b,c,0!==d),Rd:null})},i:(a,b,c)=>{function d(h){return new f(wa.buffer,D[h+4>>2],D[h>>2])}var f=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][b];c=H(c);eb(a,{name:c,fromWireType:d,Pd:8,readValueFromPointer:d},{Re:!0})},m:(a,b,c,d,f,h,n,k,p,t,v,z)=>{c=H(c);h=N(f,h);k=N(n,k);t=N(p,t);z=N(v,z);fb([a],
[b],A=>{A=A[0];return[new Hb(c,A.Id,!1,!1,!0,A,d,h,k,t,z)]})},K:(a,b)=>{b=H(b);var c="std::string"===b;eb(a,{name:b,fromWireType:function(d){var f=D[d>>2],h=d+4;if(c)for(var n=h,k=0;k<=f;++k){var p=h+k;if(k==f||0==y[p]){n=n?lc(y,n,p-n):"";if(void 0===t)var t=n;else t+=String.fromCharCode(0),t+=n;n=p+1}}else{t=Array(f);for(k=0;k<f;++k)t[k]=String.fromCharCode(y[h+k]);t=t.join("")}Tb(d);return t},toWireType:function(d,f){f instanceof ArrayBuffer&&(f=new Uint8Array(f));var h="string"==typeof f;if(!(h||
f instanceof Uint8Array||f instanceof Uint8ClampedArray||f instanceof Int8Array))throw new I("Cannot pass non-string to std::string");var n=c&&h?jc(f):f.length;var k=hd(4+n+1),p=k+4;D[k>>2]=n;if(c&&h)ic(f,p,n+1);else if(h)for(h=0;h<n;++h){var t=f.charCodeAt(h);if(255<t)throw Tb(p),new I("String has UTF-16 code units that do not fit in 8 bits");y[p+h]=t}else for(h=0;h<n;++h)y[p+h]=f[h];null!==d&&d.push(Tb,k);return k},Pd:8,readValueFromPointer:$a,Rd(d){Tb(d)}})},G:(a,b,c)=>{c=H(c);if(2===b){var d=
nc;var f=oc;var h=pc;var n=k=>za[k>>1]}else 4===b&&(d=qc,f=rc,h=sc,n=k=>D[k>>2]);eb(a,{name:c,fromWireType:k=>{for(var p=D[k>>2],t,v=k+4,z=0;z<=p;++z){var A=k+4+z*b;if(z==p||0==n(A))v=d(v,A-v),void 0===t?t=v:(t+=String.fromCharCode(0),t+=v),v=A+b}Tb(k);return t},toWireType:(k,p)=>{if("string"!=typeof p)throw new I(`Cannot pass non-string to C++ string type ${c}`);var t=h(p),v=hd(4+t+b);D[v>>2]=t/b;f(p,v+4,t+b);null!==k&&k.push(Tb,v);return v},Pd:8,readValueFromPointer:$a,Rd(k){Tb(k)}})},B:(a,b,c,
d,f,h)=>{Ya[a]={name:H(b),re:N(c,d),Ud:N(f,h),we:[]}},l:(a,b,c,d,f,h,n,k,p,t)=>{Ya[a].we.push({Le:H(b),Qe:c,Oe:N(d,f),Pe:h,Xe:n,We:N(k,p),Ye:t})},ad:(a,b)=>{b=H(b);eb(a,{cf:!0,name:b,Pd:0,fromWireType:()=>{},toWireType:()=>{}})},$c:()=>1,_c:()=>{throw Infinity;},Zc:(a,b,c)=>{a=cc(a);b=fc(b,"emval::as");return tc(b,c,a)},Yc:(a,b,c,d)=>{a=uc[a];b=cc(b);return a(null,b,c,d)},r:(a,b,c,d,f)=>{a=uc[a];b=cc(b);c=wc(c);return a(b,b[c],d,f)},g:bc,Xc:a=>{if(0===a)return Fb(xc());a=wc(a);return Fb(xc()[a])},
p:(a,b,c)=>{var d=zc(a,b),f=d.shift();a--;var h=Array(a);b=`methodCaller<(${d.map(n=>n.name).join(", ")}) => ${f.name}>`;return yc(wb(b,(n,k,p,t)=>{for(var v=0,z=0;z<a;++z)h[z]=d[z].readValueFromPointer(t+v),v+=d[z].Pd;n=1===c?Ac(k,h):k.apply(n,h);return tc(f,p,n)}))},F:a=>{9<a&&(ac[a+1]+=1)},E:()=>Fb([]),y:a=>Fb(wc(a)),Wc:()=>Fb({}),n:a=>{var b=cc(a);Za(b);bc(a)},A:(a,b,c)=>{a=cc(a);b=cc(b);c=cc(c);a[b]=c},k:(a,b)=>{a=fc(a,"_emval_take_value");a=a.readValueFromPointer(b);return Fb(a)},Vc:(a,b,c,
d)=>{var f=(new Date).getFullYear(),h=(new Date(f,0,1)).getTimezoneOffset();f=(new Date(f,6,1)).getTimezoneOffset();D[a>>2]=60*Math.max(h,f);C[b>>2]=Number(h!=f);b=n=>{var k=Math.abs(n);return`UTC${0<=n?"-":"+"}${String(Math.floor(k/60)).padStart(2,"0")}${String(k%60).padStart(2,"0")}`};a=b(h);b=b(f);f<h?(ic(a,c,17),ic(b,d,17)):(ic(a,d,17),ic(b,c,17))},Uc:()=>performance.now(),Tc:a=>O.activeTexture(a),Sc:(a,b)=>{O.attachShader(Hc[a],Kc[b])},Rc:(a,b)=>{O.beginQuery(a,Q[b])},Qc:(a,b)=>{O.Td.beginQueryEXT(a,
Q[b])},Pc:(a,b,c)=>{O.bindAttribLocation(Hc[a],b,c?lc(y,c):"")},Oc:(a,b)=>{35051==a?O.oe=b:35052==a&&(O.Yd=b);O.bindBuffer(a,Gc[b])},Nc:Wc,Mc:(a,b)=>{O.bindRenderbuffer(a,Jc[b])},Lc:(a,b)=>{O.bindSampler(a,Mc[b])},Kc:(a,b)=>{O.bindTexture(a,ia[b])},Jc:Xc,Ic:Xc,Hc:(a,b,c,d)=>O.blendColor(a,b,c,d),Gc:a=>O.blendEquation(a),Fc:(a,b)=>O.blendFunc(a,b),Ec:(a,b,c,d,f,h,n,k,p,t)=>O.blitFramebuffer(a,b,c,d,f,h,n,k,p,t),Dc:(a,b,c,d)=>{2<=x.version?c&&b?O.bufferData(a,y,d,c,b):O.bufferData(a,b,d):O.bufferData(a,
c?y.subarray(c,c+b):b,d)},Cc:(a,b,c,d)=>{2<=x.version?c&&O.bufferSubData(a,b,y,d,c):O.bufferSubData(a,b,y.subarray(d,d+c))},Bc:a=>O.checkFramebufferStatus(a),Ac:Yc,zc:Zc,yc:$c,xc:(a,b,c,d)=>O.clientWaitSync(Nc[a],b,(c>>>0)+4294967296*d),wc:(a,b,c,d)=>{O.colorMask(!!a,!!b,!!c,!!d)},vc:a=>{O.compileShader(Kc[a])},uc:(a,b,c,d,f,h,n,k)=>{2<=x.version?O.Yd||!n?O.compressedTexImage2D(a,b,c,d,f,h,n,k):O.compressedTexImage2D(a,b,c,d,f,h,y,k,n):O.compressedTexImage2D(a,b,c,d,f,h,y.subarray(k,k+n))},tc:(a,
b,c,d,f,h,n,k,p)=>{2<=x.version?O.Yd||!k?O.compressedTexSubImage2D(a,b,c,d,f,h,n,k,p):O.compressedTexSubImage2D(a,b,c,d,f,h,n,y,p,k):O.compressedTexSubImage2D(a,b,c,d,f,h,n,y.subarray(p,p+k))},sc:(a,b,c,d,f)=>O.copyBufferSubData(a,b,c,d,f),rc:(a,b,c,d,f,h,n,k)=>O.copyTexSubImage2D(a,b,c,d,f,h,n,k),qc:()=>{var a=ha(Hc),b=O.createProgram();b.name=a;b.me=b.ke=b.le=0;b.se=1;Hc[a]=b;return a},pc:a=>{var b=ha(Kc);Kc[b]=O.createShader(a);return b},oc:a=>O.cullFace(a),nc:(a,b)=>{for(var c=0;c<a;c++){var d=
C[b+4*c>>2],f=Gc[d];f&&(O.deleteBuffer(f),f.name=0,Gc[d]=null,d==O.oe&&(O.oe=0),d==O.Yd&&(O.Yd=0))}},mc:(a,b)=>{for(var c=0;c<a;++c){var d=C[b+4*c>>2],f=Ic[d];f&&(O.deleteFramebuffer(f),f.name=0,Ic[d]=null)}},lc:a=>{if(a){var b=Hc[a];b?(O.deleteProgram(b),b.name=0,Hc[a]=null):U||=1281}},kc:(a,b)=>{for(var c=0;c<a;c++){var d=C[b+4*c>>2],f=Q[d];f&&(O.deleteQuery(f),Q[d]=null)}},jc:(a,b)=>{for(var c=0;c<a;c++){var d=C[b+4*c>>2],f=Q[d];f&&(O.Td.deleteQueryEXT(f),Q[d]=null)}},ic:(a,b)=>{for(var c=0;c<
a;c++){var d=C[b+4*c>>2],f=Jc[d];f&&(O.deleteRenderbuffer(f),f.name=0,Jc[d]=null)}},hc:(a,b)=>{for(var c=0;c<a;c++){var d=C[b+4*c>>2],f=Mc[d];f&&(O.deleteSampler(f),f.name=0,Mc[d]=null)}},gc:a=>{if(a){var b=Kc[a];b?(O.deleteShader(b),Kc[a]=null):U||=1281}},fc:a=>{if(a){var b=Nc[a];b?(O.deleteSync(b),b.name=0,Nc[a]=null):U||=1281}},ec:(a,b)=>{for(var c=0;c<a;c++){var d=C[b+4*c>>2],f=ia[d];f&&(O.deleteTexture(f),f.name=0,ia[d]=null)}},dc:ad,cc:ad,bc:a=>{O.depthMask(!!a)},ac:a=>O.disable(a),$b:a=>{O.disableVertexAttribArray(a)},
_b:(a,b,c)=>{O.drawArrays(a,b,c)},Zb:(a,b,c,d)=>{O.drawArraysInstanced(a,b,c,d)},Yb:(a,b,c,d,f)=>{O.ve.drawArraysInstancedBaseInstanceWEBGL(a,b,c,d,f)},Xb:(a,b)=>{for(var c=bd[a],d=0;d<a;d++)c[d]=C[b+4*d>>2];O.drawBuffers(c)},Wb:(a,b,c,d)=>{O.drawElements(a,b,c,d)},Vb:(a,b,c,d,f)=>{O.drawElementsInstanced(a,b,c,d,f)},Ub:(a,b,c,d,f,h,n)=>{O.ve.drawElementsInstancedBaseVertexBaseInstanceWEBGL(a,b,c,d,f,h,n)},Tb:(a,b,c,d,f,h)=>{O.drawElements(a,d,f,h)},Sb:a=>O.enable(a),Rb:a=>{O.enableVertexAttribArray(a)},
Qb:a=>O.endQuery(a),Pb:a=>{O.Td.endQueryEXT(a)},Ob:(a,b)=>(a=O.fenceSync(a,b))?(b=ha(Nc),a.name=b,Nc[b]=a,b):0,Nb:()=>O.finish(),Mb:()=>O.flush(),Lb:(a,b,c,d)=>{O.framebufferRenderbuffer(a,b,c,Jc[d])},Kb:(a,b,c,d,f)=>{O.framebufferTexture2D(a,b,c,ia[d],f)},Jb:a=>O.frontFace(a),Ib:(a,b)=>{Tc(a,b,"createBuffer",Gc)},Hb:(a,b)=>{Tc(a,b,"createFramebuffer",Ic)},Gb:(a,b)=>{Tc(a,b,"createQuery",Q)},Fb:(a,b)=>{for(var c=0;c<a;c++){var d=O.Td.createQueryEXT();if(!d){for(U||=1282;c<a;)C[b+4*c++>>2]=0;break}var f=
ha(Q);d.name=f;Q[f]=d;C[b+4*c>>2]=f}},Eb:(a,b)=>{Tc(a,b,"createRenderbuffer",Jc)},Db:(a,b)=>{Tc(a,b,"createSampler",Mc)},Cb:(a,b)=>{Tc(a,b,"createTexture",ia)},Bb:cd,Ab:cd,zb:a=>O.generateMipmap(a),yb:(a,b,c)=>{c?C[c>>2]=O.getBufferParameter(a,b):U||=1281},xb:()=>{var a=O.getError()||U;U=0;return a},wb:(a,b)=>ed(a,b,2),vb:(a,b,c,d)=>{a=O.getFramebufferAttachmentParameter(a,b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;C[d>>2]=a},ub:fd,tb:(a,b,c,d)=>{a=O.getProgramInfoLog(Hc[a]);
null===a&&(a="(unknown error)");b=0<b&&d?ic(a,d,b):0;c&&(C[c>>2]=b)},sb:(a,b,c)=>{if(c)if(a>=Fc)U||=1281;else if(a=Hc[a],35716==b)a=O.getProgramInfoLog(a),null===a&&(a="(unknown error)"),C[c>>2]=a.length+1;else if(35719==b){if(!a.me){var d=O.getProgramParameter(a,35718);for(b=0;b<d;++b)a.me=Math.max(a.me,O.getActiveUniform(a,b).name.length+1)}C[c>>2]=a.me}else if(35722==b){if(!a.ke)for(d=O.getProgramParameter(a,35721),b=0;b<d;++b)a.ke=Math.max(a.ke,O.getActiveAttrib(a,b).name.length+1);C[c>>2]=a.ke}else if(35381==
b){if(!a.le)for(d=O.getProgramParameter(a,35382),b=0;b<d;++b)a.le=Math.max(a.le,O.getActiveUniformBlockName(a,b).length+1);C[c>>2]=a.le}else C[c>>2]=O.getProgramParameter(a,b);else U||=1281},rb:gd,qb:gd,pb:(a,b,c)=>{if(c){a=O.getQueryParameter(Q[a],b);var d;"boolean"==typeof a?d=a?1:0:d=a;C[c>>2]=d}else U||=1281},ob:(a,b,c)=>{if(c){a=O.Td.getQueryObjectEXT(Q[a],b);var d;"boolean"==typeof a?d=a?1:0:d=a;C[c>>2]=d}else U||=1281},nb:(a,b,c)=>{c?C[c>>2]=O.getQuery(a,b):U||=1281},mb:(a,b,c)=>{c?C[c>>2]=
O.Td.getQueryEXT(a,b):U||=1281},lb:(a,b,c)=>{c?C[c>>2]=O.getRenderbufferParameter(a,b):U||=1281},kb:(a,b,c,d)=>{a=O.getShaderInfoLog(Kc[a]);null===a&&(a="(unknown error)");b=0<b&&d?ic(a,d,b):0;c&&(C[c>>2]=b)},jb:(a,b,c,d)=>{a=O.getShaderPrecisionFormat(a,b);C[c>>2]=a.rangeMin;C[c+4>>2]=a.rangeMax;C[d>>2]=a.precision},ib:(a,b,c)=>{c?35716==b?(a=O.getShaderInfoLog(Kc[a]),null===a&&(a="(unknown error)"),C[c>>2]=a?a.length+1:0):35720==b?(a=O.getShaderSource(Kc[a]),C[c>>2]=a?a.length+1:0):C[c>>2]=O.getShaderParameter(Kc[a],
b):U||=1281},hb:kd,gb:ld,fb:(a,b)=>{b=b?lc(y,b):"";if(a=Hc[a]){var c=a,d=c.de,f=c.Ae,h;if(!d){c.de=d={};c.ze={};var n=O.getProgramParameter(c,35718);for(h=0;h<n;++h){var k=O.getActiveUniform(c,h);var p=k.name;k=k.size;var t=md(p);t=0<t?p.slice(0,t):p;var v=c.se;c.se+=k;f[t]=[k,v];for(p=0;p<k;++p)d[v]=p,c.ze[v++]=t}}c=a.de;d=0;f=b;h=md(b);0<h&&(d=parseInt(b.slice(h+1))>>>0,f=b.slice(0,h));if((f=a.Ae[f])&&d<f[0]&&(d+=f[1],c[d]=c[d]||O.getUniformLocation(a,b)))return d}else U||=1281;return-1},eb:(a,
b,c)=>{for(var d=bd[b],f=0;f<b;f++)d[f]=C[c+4*f>>2];O.invalidateFramebuffer(a,d)},db:(a,b,c,d,f,h,n)=>{for(var k=bd[b],p=0;p<b;p++)k[p]=C[c+4*p>>2];O.invalidateSubFramebuffer(a,k,d,f,h,n)},cb:a=>O.isSync(Nc[a]),bb:a=>(a=ia[a])?O.isTexture(a):0,ab:a=>O.lineWidth(a),$a:a=>{a=Hc[a];O.linkProgram(a);a.de=0;a.Ae={}},_a:(a,b,c,d,f,h)=>{O.xe.multiDrawArraysInstancedBaseInstanceWEBGL(a,C,b>>2,C,c>>2,C,d>>2,D,f>>2,h)},Za:(a,b,c,d,f,h,n,k)=>{O.xe.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(a,C,b>>
2,c,C,d>>2,C,f>>2,C,h>>2,D,n>>2,k)},Ya:(a,b)=>{3317==a?Rc=b:3314==a&&(Sc=b);O.pixelStorei(a,b)},Xa:(a,b)=>{O.Td.queryCounterEXT(Q[a],b)},Wa:a=>O.readBuffer(a),Va:(a,b,c,d,f,h,n)=>{if(2<=x.version)if(O.oe)O.readPixels(a,b,c,d,f,h,n);else{var k=nd(h);n>>>=31-Math.clz32(k.BYTES_PER_ELEMENT);O.readPixels(a,b,c,d,f,h,k,n)}else(k=od(h,f,c,d,n))?O.readPixels(a,b,c,d,f,h,k):U||=1280},Ua:(a,b,c,d)=>O.renderbufferStorage(a,b,c,d),Ta:(a,b,c,d,f)=>O.renderbufferStorageMultisample(a,b,c,d,f),Sa:(a,b,c)=>{O.samplerParameterf(Mc[a],
b,c)},Ra:(a,b,c)=>{O.samplerParameteri(Mc[a],b,c)},Qa:(a,b,c)=>{O.samplerParameteri(Mc[a],b,C[c>>2])},Pa:(a,b,c,d)=>O.scissor(a,b,c,d),Oa:(a,b,c,d)=>{for(var f="",h=0;h<b;++h){var n=(n=D[c+4*h>>2])?lc(y,n,d?D[d+4*h>>2]:void 0):"";f+=n}O.shaderSource(Kc[a],f)},Na:(a,b,c)=>O.stencilFunc(a,b,c),Ma:(a,b,c,d)=>O.stencilFuncSeparate(a,b,c,d),La:a=>O.stencilMask(a),Ka:(a,b)=>O.stencilMaskSeparate(a,b),Ja:(a,b,c)=>O.stencilOp(a,b,c),Ia:(a,b,c,d)=>O.stencilOpSeparate(a,b,c,d),Ha:(a,b,c,d,f,h,n,k,p)=>{if(2<=
x.version){if(O.Yd){O.texImage2D(a,b,c,d,f,h,n,k,p);return}if(p){var t=nd(k);p>>>=31-Math.clz32(t.BYTES_PER_ELEMENT);O.texImage2D(a,b,c,d,f,h,n,k,t,p);return}}t=p?od(k,n,d,f,p):null;O.texImage2D(a,b,c,d,f,h,n,k,t)},Ga:(a,b,c)=>O.texParameterf(a,b,c),Fa:(a,b,c)=>{O.texParameterf(a,b,G[c>>2])},Ea:(a,b,c)=>O.texParameteri(a,b,c),Da:(a,b,c)=>{O.texParameteri(a,b,C[c>>2])},Ca:(a,b,c,d,f)=>O.texStorage2D(a,b,c,d,f),Ba:(a,b,c,d,f,h,n,k,p)=>{if(2<=x.version){if(O.Yd){O.texSubImage2D(a,b,c,d,f,h,n,k,p);return}if(p){var t=
nd(k);O.texSubImage2D(a,b,c,d,f,h,n,k,t,p>>>31-Math.clz32(t.BYTES_PER_ELEMENT));return}}p=p?od(k,n,f,h,p):null;O.texSubImage2D(a,b,c,d,f,h,n,k,p)},Aa:(a,b)=>{O.uniform1f(X(a),b)},za:(a,b,c)=>{if(2<=x.version)b&&O.uniform1fv(X(a),G,c>>2,b);else{if(288>=b)for(var d=pd[b],f=0;f<b;++f)d[f]=G[c+4*f>>2];else d=G.subarray(c>>2,c+4*b>>2);O.uniform1fv(X(a),d)}},ya:(a,b)=>{O.uniform1i(X(a),b)},xa:(a,b,c)=>{if(2<=x.version)b&&O.uniform1iv(X(a),C,c>>2,b);else{if(288>=b)for(var d=qd[b],f=0;f<b;++f)d[f]=C[c+4*
f>>2];else d=C.subarray(c>>2,c+4*b>>2);O.uniform1iv(X(a),d)}},wa:(a,b,c)=>{O.uniform2f(X(a),b,c)},va:(a,b,c)=>{if(2<=x.version)b&&O.uniform2fv(X(a),G,c>>2,2*b);else{if(144>=b){b*=2;for(var d=pd[b],f=0;f<b;f+=2)d[f]=G[c+4*f>>2],d[f+1]=G[c+(4*f+4)>>2]}else d=G.subarray(c>>2,c+8*b>>2);O.uniform2fv(X(a),d)}},ua:(a,b,c)=>{O.uniform2i(X(a),b,c)},ta:(a,b,c)=>{if(2<=x.version)b&&O.uniform2iv(X(a),C,c>>2,2*b);else{if(144>=b){b*=2;for(var d=qd[b],f=0;f<b;f+=2)d[f]=C[c+4*f>>2],d[f+1]=C[c+(4*f+4)>>2]}else d=
C.subarray(c>>2,c+8*b>>2);O.uniform2iv(X(a),d)}},sa:(a,b,c,d)=>{O.uniform3f(X(a),b,c,d)},ra:(a,b,c)=>{if(2<=x.version)b&&O.uniform3fv(X(a),G,c>>2,3*b);else{if(96>=b){b*=3;for(var d=pd[b],f=0;f<b;f+=3)d[f]=G[c+4*f>>2],d[f+1]=G[c+(4*f+4)>>2],d[f+2]=G[c+(4*f+8)>>2]}else d=G.subarray(c>>2,c+12*b>>2);O.uniform3fv(X(a),d)}},qa:(a,b,c,d)=>{O.uniform3i(X(a),b,c,d)},pa:(a,b,c)=>{if(2<=x.version)b&&O.uniform3iv(X(a),C,c>>2,3*b);else{if(96>=b){b*=3;for(var d=qd[b],f=0;f<b;f+=3)d[f]=C[c+4*f>>2],d[f+1]=C[c+(4*
f+4)>>2],d[f+2]=C[c+(4*f+8)>>2]}else d=C.subarray(c>>2,c+12*b>>2);O.uniform3iv(X(a),d)}},oa:(a,b,c,d,f)=>{O.uniform4f(X(a),b,c,d,f)},na:(a,b,c)=>{if(2<=x.version)b&&O.uniform4fv(X(a),G,c>>2,4*b);else{if(72>=b){var d=pd[4*b],f=G;c>>=2;b*=4;for(var h=0;h<b;h+=4){var n=c+h;d[h]=f[n];d[h+1]=f[n+1];d[h+2]=f[n+2];d[h+3]=f[n+3]}}else d=G.subarray(c>>2,c+16*b>>2);O.uniform4fv(X(a),d)}},ma:(a,b,c,d,f)=>{O.uniform4i(X(a),b,c,d,f)},la:(a,b,c)=>{if(2<=x.version)b&&O.uniform4iv(X(a),C,c>>2,4*b);else{if(72>=b){b*=
4;for(var d=qd[b],f=0;f<b;f+=4)d[f]=C[c+4*f>>2],d[f+1]=C[c+(4*f+4)>>2],d[f+2]=C[c+(4*f+8)>>2],d[f+3]=C[c+(4*f+12)>>2]}else d=C.subarray(c>>2,c+16*b>>2);O.uniform4iv(X(a),d)}},ka:(a,b,c,d)=>{if(2<=x.version)b&&O.uniformMatrix2fv(X(a),!!c,G,d>>2,4*b);else{if(72>=b){b*=4;for(var f=pd[b],h=0;h<b;h+=4)f[h]=G[d+4*h>>2],f[h+1]=G[d+(4*h+4)>>2],f[h+2]=G[d+(4*h+8)>>2],f[h+3]=G[d+(4*h+12)>>2]}else f=G.subarray(d>>2,d+16*b>>2);O.uniformMatrix2fv(X(a),!!c,f)}},ja:(a,b,c,d)=>{if(2<=x.version)b&&O.uniformMatrix3fv(X(a),
!!c,G,d>>2,9*b);else{if(32>=b){b*=9;for(var f=pd[b],h=0;h<b;h+=9)f[h]=G[d+4*h>>2],f[h+1]=G[d+(4*h+4)>>2],f[h+2]=G[d+(4*h+8)>>2],f[h+3]=G[d+(4*h+12)>>2],f[h+4]=G[d+(4*h+16)>>2],f[h+5]=G[d+(4*h+20)>>2],f[h+6]=G[d+(4*h+24)>>2],f[h+7]=G[d+(4*h+28)>>2],f[h+8]=G[d+(4*h+32)>>2]}else f=G.subarray(d>>2,d+36*b>>2);O.uniformMatrix3fv(X(a),!!c,f)}},ia:(a,b,c,d)=>{if(2<=x.version)b&&O.uniformMatrix4fv(X(a),!!c,G,d>>2,16*b);else{if(18>=b){var f=pd[16*b],h=G;d>>=2;b*=16;for(var n=0;n<b;n+=16){var k=d+n;f[n]=h[k];
f[n+1]=h[k+1];f[n+2]=h[k+2];f[n+3]=h[k+3];f[n+4]=h[k+4];f[n+5]=h[k+5];f[n+6]=h[k+6];f[n+7]=h[k+7];f[n+8]=h[k+8];f[n+9]=h[k+9];f[n+10]=h[k+10];f[n+11]=h[k+11];f[n+12]=h[k+12];f[n+13]=h[k+13];f[n+14]=h[k+14];f[n+15]=h[k+15]}}else f=G.subarray(d>>2,d+64*b>>2);O.uniformMatrix4fv(X(a),!!c,f)}},ha:a=>{a=Hc[a];O.useProgram(a);O.Ie=a},ga:(a,b)=>O.vertexAttrib1f(a,b),fa:(a,b)=>{O.vertexAttrib2f(a,G[b>>2],G[b+4>>2])},ea:(a,b)=>{O.vertexAttrib3f(a,G[b>>2],G[b+4>>2],G[b+8>>2])},da:(a,b)=>{O.vertexAttrib4f(a,
G[b>>2],G[b+4>>2],G[b+8>>2],G[b+12>>2])},ca:(a,b)=>{O.vertexAttribDivisor(a,b)},ba:(a,b,c,d,f)=>{O.vertexAttribIPointer(a,b,c,d,f)},aa:(a,b,c,d,f,h)=>{O.vertexAttribPointer(a,b,c,!!d,f,h)},$:(a,b,c,d)=>O.viewport(a,b,c,d),_:(a,b,c,d)=>{O.waitSync(Nc[a],b,(c>>>0)+4294967296*d)},Z:a=>{var b=y.length;a>>>=0;if(2147483648<a)return!1;for(var c=1;4>=c;c*=2){var d=b*(1+1/c);d=Math.min(d,a+100663296);a:{d=(Math.min(2147483648,65536*Math.ceil(Math.max(a,d)/65536))-ua.buffer.byteLength+65535)/65536|0;try{ua.grow(d);
Ba();var f=1;break a}catch(h){}f=void 0}if(f)return!0}return!1},Y:()=>x?x.handle:0,gd:(a,b)=>{var c=0;td().forEach((d,f)=>{var h=b+c;f=D[a+4*f>>2]=h;for(h=0;h<d.length;++h)wa[f++]=d.charCodeAt(h);wa[f]=0;c+=d.length+1});return 0},fd:(a,b)=>{var c=td();D[a>>2]=c.length;var d=0;c.forEach(f=>d+=f.length+1);D[b>>2]=d;return 0},X:a=>{Sa||(va=!0);throw new Qa(a);},ed:()=>52,O:function(){return 70},M:(a,b,c,d)=>{for(var f=0,h=0;h<c;h++){var n=D[b>>2],k=D[b+4>>2];b+=8;for(var p=0;p<k;p++){var t=y[n+p],v=
ud[a];0===t||10===t?((1===a?qa:ta)(lc(v)),v.length=0):v.push(t)}f+=k}D[d>>2]=f;return 0},W:Wc,V:Yc,U:Zc,T:$c,D:fd,J:kd,S:ld,f:Ad,v:Bd,e:Cd,I:Dd,H:Ed,t:Fd,u:Gd,s:Hd,j:Id,R:Jd,Q:Kd,P:Ld},Z=function(){function a(c){Z=c.exports;ua=Z.hd;Ba();K=Z.kd;Da.unshift(Z.id);Fa--;0==Fa&&(null!==Ia&&(clearInterval(Ia),Ia=null),Ja&&(c=Ja,Ja=null,c()));return Z}var b={a:Md};Fa++;if(q.instantiateWasm)try{return q.instantiateWasm(b,a)}catch(c){ta(`Module.instantiateWasm callback failed with error: ${c}`),ba(c)}Ma??=
q.locateFile?La("canvaskit.wasm")?"canvaskit.wasm":na+"canvaskit.wasm":(new URL("canvaskit.wasm",import.meta.url)).href;Pa(b,function(c){a(c.instance)}).catch(ba);return{}}(),Mb=a=>(Mb=Z.jd)(a),hd=q._malloc=a=>(hd=q._malloc=Z.ld)(a),Tb=q._free=a=>(Tb=q._free=Z.md)(a),Nd=(a,b)=>(Nd=Z.nd)(a,b),Od=a=>(Od=Z.od)(a),Pd=()=>(Pd=Z.pd)();q.dynCall_viji=(a,b,c,d,f)=>(q.dynCall_viji=Z.qd)(a,b,c,d,f);q.dynCall_vijiii=(a,b,c,d,f,h,n)=>(q.dynCall_vijiii=Z.rd)(a,b,c,d,f,h,n);
q.dynCall_viiiiij=(a,b,c,d,f,h,n,k)=>(q.dynCall_viiiiij=Z.sd)(a,b,c,d,f,h,n,k);q.dynCall_vij=(a,b,c,d)=>(q.dynCall_vij=Z.td)(a,b,c,d);q.dynCall_jii=(a,b,c)=>(q.dynCall_jii=Z.ud)(a,b,c);q.dynCall_jiiiiii=(a,b,c,d,f,h,n)=>(q.dynCall_jiiiiii=Z.vd)(a,b,c,d,f,h,n);q.dynCall_jiiiiji=(a,b,c,d,f,h,n,k)=>(q.dynCall_jiiiiji=Z.wd)(a,b,c,d,f,h,n,k);q.dynCall_ji=(a,b)=>(q.dynCall_ji=Z.xd)(a,b);q.dynCall_iijj=(a,b,c,d,f,h)=>(q.dynCall_iijj=Z.yd)(a,b,c,d,f,h);
q.dynCall_jiji=(a,b,c,d,f)=>(q.dynCall_jiji=Z.zd)(a,b,c,d,f);q.dynCall_viijii=(a,b,c,d,f,h,n)=>(q.dynCall_viijii=Z.Ad)(a,b,c,d,f,h,n);q.dynCall_iiiiij=(a,b,c,d,f,h,n)=>(q.dynCall_iiiiij=Z.Bd)(a,b,c,d,f,h,n);q.dynCall_iiiiijj=(a,b,c,d,f,h,n,k,p)=>(q.dynCall_iiiiijj=Z.Cd)(a,b,c,d,f,h,n,k,p);q.dynCall_iiiiiijj=(a,b,c,d,f,h,n,k,p,t)=>(q.dynCall_iiiiiijj=Z.Dd)(a,b,c,d,f,h,n,k,p,t);function Cd(a,b,c,d){var f=Pd();try{return K.get(a)(b,c,d)}catch(h){Od(f);if(h!==h+0)throw h;Nd(1,0)}}
function Ad(a,b){var c=Pd();try{return K.get(a)(b)}catch(d){Od(c);if(d!==d+0)throw d;Nd(1,0)}}function Ld(a,b,c,d,f,h,n,k,p,t){var v=Pd();try{K.get(a)(b,c,d,f,h,n,k,p,t)}catch(z){Od(v);if(z!==z+0)throw z;Nd(1,0)}}function Hd(a,b,c,d){var f=Pd();try{K.get(a)(b,c,d)}catch(h){Od(f);if(h!==h+0)throw h;Nd(1,0)}}function Gd(a,b,c){var d=Pd();try{K.get(a)(b,c)}catch(f){Od(d);if(f!==f+0)throw f;Nd(1,0)}}function Fd(a,b){var c=Pd();try{K.get(a)(b)}catch(d){Od(c);if(d!==d+0)throw d;Nd(1,0)}}
function Id(a,b,c,d,f){var h=Pd();try{K.get(a)(b,c,d,f)}catch(n){Od(h);if(n!==n+0)throw n;Nd(1,0)}}function Bd(a,b,c){var d=Pd();try{return K.get(a)(b,c)}catch(f){Od(d);if(f!==f+0)throw f;Nd(1,0)}}function Kd(a,b,c,d,f,h,n){var k=Pd();try{K.get(a)(b,c,d,f,h,n)}catch(p){Od(k);if(p!==p+0)throw p;Nd(1,0)}}function Ed(a,b,c,d,f,h,n,k){var p=Pd();try{return K.get(a)(b,c,d,f,h,n,k)}catch(t){Od(p);if(t!==t+0)throw t;Nd(1,0)}}
function Jd(a,b,c,d,f,h){var n=Pd();try{K.get(a)(b,c,d,f,h)}catch(k){Od(n);if(k!==k+0)throw k;Nd(1,0)}}function Dd(a,b,c,d,f){var h=Pd();try{return K.get(a)(b,c,d,f)}catch(n){Od(h);if(n!==n+0)throw n;Nd(1,0)}}var Qd,Rd;Ja=function Sd(){Qd||Td();Qd||(Ja=Sd)};function Td(){if(!(0<Fa)){if(!Rd&&(Rd=1,Ra(Ca),0<Fa))return;Qd||(Qd=1,q.calledRun=1,va||(Ra(Da),aa(q),q.onRuntimeInitialized?.(),Ra(Ea)))}}Td();moduleRtn=ca;
return moduleRtn;
}
);
})();
export default CanvasKitInit;
File diff suppressed because it is too large Load Diff
+146
View File
@@ -0,0 +1,146 @@
var skwasm = (() => {
var _scriptName = typeof document != 'undefined' ? document.currentScript?.src : undefined;
return (
function(moduleArg = {}) {
var moduleRtn;
function d(){g.buffer!=k.buffer&&n();return k}function q(){g.buffer!=k.buffer&&n();return aa}function r(){g.buffer!=k.buffer&&n();return ba}function t(){g.buffer!=k.buffer&&n();return ca}function u(){g.buffer!=k.buffer&&n();return da}var w=moduleArg,ea,fa,ha=new Promise((a,b)=>{ea=a;fa=b}),ia="object"==typeof window,ja="function"==typeof importScripts,ka=w.$ww,la=Object.assign({},w),x="";function ma(a){return w.locateFile?w.locateFile(a,x):x+a}var na,oa;
if(ia||ja)ja?x=self.location.href:"undefined"!=typeof document&&document.currentScript&&(x=document.currentScript.src),_scriptName&&(x=_scriptName),x.startsWith("blob:")?x="":x=x.substr(0,x.replace(/[?#].*/,"").lastIndexOf("/")+1),ja&&(oa=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),na=a=>fetch(a,{credentials:"same-origin"}).then(b=>b.ok?b.arrayBuffer():Promise.reject(Error(b.status+" : "+b.url)));
var pa=console.log.bind(console),y=console.error.bind(console);Object.assign(w,la);la=null;var g,qa,ra=!1,sa,k,aa,ta,ua,ba,ca,da;function n(){var a=g.buffer;k=new Int8Array(a);ta=new Int16Array(a);aa=new Uint8Array(a);ua=new Uint16Array(a);ba=new Int32Array(a);ca=new Uint32Array(a);da=new Float32Array(a);new Float64Array(a)}w.wasmMemory?g=w.wasmMemory:g=new WebAssembly.Memory({initial:256,maximum:32768,shared:!0});n();var va=[],wa=[],xa=[];
function ya(){ka?(za=1,Aa(w.sb,w.sz),removeEventListener("message",Ba),Ca=Ca.forEach(Da),addEventListener("message",Da)):Ea(wa)}var z=0,Fa=null,A=null;function Ga(a){a="Aborted("+a+")";y(a);ra=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");fa(a);throw a;}var Ha=a=>a.startsWith("data:application/octet-stream;base64,"),Ia;
function Ja(a){return na(a).then(b=>new Uint8Array(b),()=>{if(oa)var b=oa(a);else throw"both async and sync fetching of the wasm failed";return b})}function Ka(a,b,c){return Ja(a).then(e=>WebAssembly.instantiate(e,b)).then(c,e=>{y(`failed to asynchronously prepare wasm: ${e}`);Ga(e)})}
function La(a,b){var c=Ia;return"function"!=typeof WebAssembly.instantiateStreaming||Ha(c)||"function"!=typeof fetch?Ka(c,a,b):fetch(c,{credentials:"same-origin"}).then(e=>WebAssembly.instantiateStreaming(e,a).then(b,function(f){y(`wasm streaming compile failed: ${f}`);y("falling back to ArrayBuffer instantiation");return Ka(c,a,b)}))}function Ma(a){this.name="ExitStatus";this.message=`Program terminated with exit(${a})`;this.status=a}
var Ca=[],Na=a=>{if(!(a instanceof Ma||"unwind"==a))throw a;},Oa=0,Pa=a=>{sa=a;za||0<Oa||(ra=!0);throw new Ma(a);},Qa=a=>{if(!ra)try{if(a(),!(za||0<Oa))try{sa=a=sa,Pa(a)}catch(b){Na(b)}}catch(b){Na(b)}},B,Da=a=>{let b=a.data,c=b._wsc;c&&Qa(()=>B.get(c)(...b.x))},Ba=a=>{Ca.push(a)},Ea=a=>{a.forEach(b=>b(w))},za=w.noExitRuntime||!0;class Ra{constructor(a){this.u=a-24}}
var Sa=0,Ta=0,Ua="undefined"!=typeof TextDecoder?new TextDecoder:void 0,Va=(a,b=0,c=NaN)=>{var e=b+c;for(c=b;a[c]&&!(c>=e);)++c;if(16<c-b&&a.buffer&&Ua)return Ua.decode(a.slice(b,c));for(e="";b<c;){var f=a[b++];if(f&128){var h=a[b++]&63;if(192==(f&224))e+=String.fromCharCode((f&31)<<6|h);else{var l=a[b++]&63;f=224==(f&240)?(f&15)<<12|h<<6|l:(f&7)<<18|h<<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},
Wa=(a,b)=>a?Va(q(),a,b):"",C={},Xa=1,Ya={},D=(a,b,c)=>{var e=q();if(0<c){var f=b;c=b+c-1;for(var h=0;h<a.length;++h){var l=a.charCodeAt(h);if(55296<=l&&57343>=l){var m=a.charCodeAt(++h);l=65536+((l&1023)<<10)|m&1023}if(127>=l){if(b>=c)break;e[b++]=l}else{if(2047>=l){if(b+1>=c)break;e[b++]=192|l>>6}else{if(65535>=l){if(b+2>=c)break;e[b++]=224|l>>12}else{if(b+3>=c)break;e[b++]=240|l>>18;e[b++]=128|l>>12&63}e[b++]=128|l>>6&63}e[b++]=128|l&63}}e[b]=0;a=b-f}else a=0;return a},E,Za=a=>{var b=a.getExtension("ANGLE_instanced_arrays");
b&&(a.vertexAttribDivisor=(c,e)=>b.vertexAttribDivisorANGLE(c,e),a.drawArraysInstanced=(c,e,f,h)=>b.drawArraysInstancedANGLE(c,e,f,h),a.drawElementsInstanced=(c,e,f,h,l)=>b.drawElementsInstancedANGLE(c,e,f,h,l))},$a=a=>{var b=a.getExtension("OES_vertex_array_object");b&&(a.createVertexArray=()=>b.createVertexArrayOES(),a.deleteVertexArray=c=>b.deleteVertexArrayOES(c),a.bindVertexArray=c=>b.bindVertexArrayOES(c),a.isVertexArray=c=>b.isVertexArrayOES(c))},ab=a=>{var b=a.getExtension("WEBGL_draw_buffers");
b&&(a.drawBuffers=(c,e)=>b.drawBuffersWEBGL(c,e))},bb=a=>{a.H=a.getExtension("WEBGL_draw_instanced_base_vertex_base_instance")},cb=a=>{a.K=a.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance")},db=a=>{var b="ANGLE_instanced_arrays EXT_blend_minmax EXT_disjoint_timer_query EXT_frag_depth EXT_shader_texture_lod EXT_sRGB OES_element_index_uint OES_fbo_render_mipmap OES_standard_derivatives OES_texture_float OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_depth_texture WEBGL_draw_buffers EXT_color_buffer_float EXT_conservative_depth EXT_disjoint_timer_query_webgl2 EXT_texture_norm16 NV_shader_noperspective_interpolation WEBGL_clip_cull_distance EXT_clip_control EXT_color_buffer_half_float EXT_depth_clamp EXT_float_blend EXT_polygon_offset_clamp EXT_texture_compression_bptc EXT_texture_compression_rgtc EXT_texture_filter_anisotropic KHR_parallel_shader_compile OES_texture_float_linear WEBGL_blend_func_extended WEBGL_compressed_texture_astc WEBGL_compressed_texture_etc WEBGL_compressed_texture_etc1 WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context WEBGL_multi_draw WEBGL_polygon_mode".split(" ");
return(a.getSupportedExtensions()||[]).filter(c=>b.includes(c))},eb=1,fb=[],F=[],gb=[],hb=[],G=[],H=[],ib=[],I=[],J=[],K=[],L=[],jb={},kb={},lb=4,mb=0,M=a=>{for(var b=eb++,c=a.length;c<b;c++)a[c]=null;return b},O=(a,b,c,e)=>{for(var f=0;f<a;f++){var h=E[c](),l=h&&M(e);h?(h.name=l,e[l]=h):N||=1282;r()[b+4*f>>2]=l}},ob=(a,b)=>{a.u||(a.u=a.getContext,a.getContext=function(e,f){f=a.u(e,f);return"webgl"==e==f instanceof WebGLRenderingContext?f:null});var c=1<b.J?a.getContext("webgl2",b):a.getContext("webgl",
b);return c?nb(c,b):0},nb=(a,b)=>{var c=M(I),e={handle:c,attributes:b,version:b.J,o:a};a.canvas&&(a.canvas.N=e);I[c]=e;("undefined"==typeof b.I||b.I)&&pb(e);return c},pb=a=>{a||=P;if(!a.T){a.T=!0;var b=a.o;b.U=b.getExtension("WEBGL_multi_draw");b.R=b.getExtension("EXT_polygon_offset_clamp");b.P=b.getExtension("EXT_clip_control");b.Z=b.getExtension("WEBGL_polygon_mode");Za(b);$a(b);ab(b);bb(b);cb(b);2<=a.version&&(b.m=b.getExtension("EXT_disjoint_timer_query_webgl2"));if(2>a.version||!b.m)b.m=b.getExtension("EXT_disjoint_timer_query");
db(b).forEach(c=>{c.includes("lose_context")||c.includes("debug")||b.getExtension(c)})}},N,P,qb=a=>{E.bindVertexArray(ib[a])},rb=(a,b)=>{for(var c=0;c<a;c++){var e=r()[b+4*c>>2],f=G[e];f&&(E.deleteTexture(f),f.name=0,G[e]=null)}},sb=(a,b)=>{for(var c=0;c<a;c++){var e=r()[b+4*c>>2];E.deleteVertexArray(ib[e]);ib[e]=null}},tb=[],ub=(a,b)=>{O(a,b,"createVertexArray",ib)},vb=(a,b)=>{t()[a>>2]=b;var c=t()[a>>2];t()[a+4>>2]=(b-c)/4294967296};
function wb(){var a=db(E);return a=a.concat(a.map(b=>"GL_"+b))}
var xb=(a,b,c)=>{if(b){var e=void 0;switch(a){case 36346:e=1;break;case 36344:0!=c&&1!=c&&(N||=1280);return;case 34814:case 36345:e=0;break;case 34466:var f=E.getParameter(34467);e=f?f.length:0;break;case 33309:if(2>P.version){N||=1282;return}e=wb().length;break;case 33307:case 33308:if(2>P.version){N||=1280;return}e=33307==a?3:0}if(void 0===e)switch(f=E.getParameter(a),typeof f){case "number":e=f;break;case "boolean":e=f?1:0;break;case "string":N||=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:N||=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:r()[b+4*a>>2]=f[a];break;case 2:u()[b+4*a>>2]=f[a];break;case 4:d()[b+a]=f[a]?1:0}return}try{e=f.name|0}catch(h){N||=1280;y(`GL_INVALID_ENUM in glGet${c}v: Unknown object returned from WebGL getParameter(${a})! (error: ${h})`);return}}break;default:N||=1280;y(`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:vb(b,e);break;case 0:r()[b>>2]=e;break;case 2:u()[b>>2]=e;break;case 4:d()[b]=e?1:0}}else N||=1281},yb=(a,b)=>xb(a,b,0),zb=(a,b,c)=>{if(c){a=J[a];b=2>P.version?E.m.getQueryObjectEXT(a,b):E.getQueryParameter(a,b);var e;"boolean"==typeof b?e=b?1:0:e=b;vb(c,e)}else N||=1281},Bb=a=>{for(var b=0,c=0;c<a.length;++c){var e=a.charCodeAt(c);127>=e?b++:2047>=e?b+=2:55296<=e&&57343>=e?(b+=4,++c):b+=3}b+=1;(c=Ab(b))&&D(a,c,b);return c},Cb=a=>{var b=jb[a];if(!b){switch(a){case 7939:b=Bb(wb().join(" "));
break;case 7936:case 7937:case 37445:case 37446:(b=E.getParameter(a))||(N||=1280);b=b?Bb(b):0;break;case 7938:b=E.getParameter(7938);var c=`OpenGL ES 2.0 (${b})`;2<=P.version&&(c=`OpenGL ES 3.0 (${b})`);b=Bb(c);break;case 35724:b=E.getParameter(35724);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=Bb(b);break;default:N||=1280}jb[a]=b}return b},Db=(a,b)=>{if(2>P.version)return N||=1282,0;var c=kb[a];if(c)return 0>
b||b>=c.length?(N||=1281,0):c[b];switch(a){case 7939:return c=wb().map(Bb),c=kb[a]=c,0>b||b>=c.length?(N||=1281,0):c[b];default:return N||=1280,0}},Eb=a=>"]"==a.slice(-1)&&a.lastIndexOf("["),Fb=a=>{a-=5120;0==a?a=d():1==a?a=q():2==a?(g.buffer!=k.buffer&&n(),a=ta):4==a?a=r():6==a?a=u():5==a||28922==a||28520==a||30779==a||30782==a?a=t():(g.buffer!=k.buffer&&n(),a=ua);return a},Gb=(a,b,c,e,f)=>{a=Fb(a);b=e*((mb||c)*({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[b-6402]||1)*a.BYTES_PER_ELEMENT+
lb-1&-lb);return a.subarray(f>>>31-Math.clz32(a.BYTES_PER_ELEMENT),f+b>>>31-Math.clz32(a.BYTES_PER_ELEMENT))},Q=a=>{var b=E.O;if(b){var c=b.v[a];"number"==typeof c&&(b.v[a]=c=E.getUniformLocation(b,b.L[a]+(0<c?`[${c}]`:"")));return c}N||=1282},R=[],Hb=[],Ib={},Kb=()=>{if(!Jb){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",_:"./this.program"},b;for(b in Ib)void 0===
Ib[b]?delete a[b]:a[b]=Ib[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);Jb=c}return Jb},Jb,Lb=[null,[],[]];function Mb(){}function Nb(){}function Ob(){}function Pb(){}function Qb(){}function Rb(){}function Sb(){}function Tb(){}function Ub(){}function Vb(){}function Wb(){}function Xb(){}function Yb(){}function Zb(){}function $b(){}function ac(){}function bc(){}function cc(){}function dc(){}function ec(){}function fc(){}function gc(){}function hc(){}function S(){}function ic(){}function jc(){}
var T,kc=[],mc=a=>lc(a);w.stackAlloc=mc;ka&&(C[0]=this,addEventListener("message",Ba));for(var V=0;32>V;++V)tb.push(Array(V));var nc=new Float32Array(288);for(V=0;288>=V;++V)R[V]=nc.subarray(0,V);var oc=new Int32Array(288);for(V=0;288>=V;++V)Hb[V]=oc.subarray(0,V);
(function(){if(w.skwasmSingleThreaded){ac=function(){return!0};let e;Nb=function(f,h){e=h};Ob=function(){return performance.now()};S=function(f){queueMicrotask(()=>e(f))}}else{ac=function(){return!1};let e=0;Nb=function(f,h){function l({data:m}){const p=m.l;p&&("syncTimeOrigin"==p?e=performance.timeOrigin-m.timeOrigin:h(m))}f?(C[f].addEventListener("message",l),C[f].postMessage({l:"syncTimeOrigin",timeOrigin:performance.timeOrigin})):addEventListener("message",l)};Ob=function(){return performance.now()+
e};S=function(f,h,l){l?C[l].postMessage(f,{transfer:h}):postMessage(f,{transfer:h})}}const a=new Map,b=new Map,c=new Map;Pb=function(e){Nb(e,function(f){var h=f.l;if(h)switch(h){case "transferCanvas":pc(f.g,f.canvas,f.h);break;case "onInitialized":qc(f.g,f.h);break;case "resizeSurface":rc(f.g,f.width,f.height,f.h);break;case "onResizeComplete":sc(f.g,f.h);break;case "triggerContextLoss":tc(f.g,f.h);break;case "onContextLossTriggered":uc(f.g,f.h);break;case "reportContextLost":vc(f.g,f.h);break;case "renderPictures":wc(f.g,
f.W,f.V,f.h,Ob());break;case "onRenderComplete":xc(f.g,f.h,{imageBitmaps:f.S,rasterStartMilliseconds:f.Y,rasterEndMilliseconds:f.X});break;case "setAssociatedObject":c.set(f.F,f.object);break;case "disposeAssociatedObject":f=f.F;h=c.get(f);h.close&&h.close();c.delete(f);break;case "disposeSurface":yc(f.g);break;case "rasterizeImage":zc(f.g,f.image,f.format,f.h);break;case "onRasterizeComplete":Ac(f.g,f.data,f.h);break;default:console.warn(`unrecognized skwasm message: ${h}`)}})};ic=function(e,f,h){S({l:"setAssociatedObject",
F:f,object:h},[h],e)};Zb=function(e){return c.get(e)};Yb=function(e,f){S({l:"disposeAssociatedObject",F:f},[],e)};Sb=function(e,f){S({l:"disposeSurface",g:f},[],e)};Wb=function(e,f,h,l){S({l:"transferCanvas",g:f,canvas:h,h:l},[h],e)};ec=function(e,f,h){S({l:"onInitialized",g:e,$:f,h},[])};Vb=function(e,f,h,l,m){S({l:"resizeSurface",g:f,width:h,height:l,h:m},[],e)};fc=function(e,f){S({l:"onResizeComplete",g:e,h:f},[])};gc=function(e,f,h){e=b.get(e);e.width=f;e.height=h};Ub=function(e,f,h,l,m){S({l:"renderPictures",
g:f,W:h,V:l,h:m},[],e)};hc=async function(e,f,h,l){f||=[];S({l:"onRenderComplete",g:e,h:l,S:f,Y:h,X:Ob()},[...f])};Mb=function(e,f){f||=[];e=b.get(e);f.push(e.transferToImageBitmap());return f};Tb=function(e,f,h,l,m){S({l:"rasterizeImage",g:f,image:h,format:l,h:m},[],e)};bc=function(e,f,h){S({l:"onRasterizeComplete",g:e,data:f,h})};Xb=function(e,f,h){S({l:"triggerContextLoss",g:f,h},[],e)};cc=function(e,f){S({l:"onContextLossTriggered",g:e,h:f},[])};dc=function(e,f){S({l:"reportContextLost",g:e,h:f},
[])};jc=function(){P.o.getExtension("WEBGL_lose_context").loseContext()};$b=function(e,f,h){f=ob(e,{J:2,alpha:!0,depth:!0,stencil:!0,antialias:f,premultipliedAlpha:!0,preserveDrawingBuffer:!1,powerPreference:"default",failIfMajorPerformanceCaveat:!1,I:!0});b.set(f,e);var l=function(m){m.preventDefault();Bc(h);e.removeEventListener("webglcontextlost",l)};e.addEventListener("webglcontextlost",l);a.set(f,l);return f};Rb=function(e){const f=b.get(e),h=a.get(e);f&&h&&f.removeEventListener("webglcontextlost",
h);P===I[e]&&(P=null);"object"==typeof JSEvents&&JSEvents.ba(I[e].o.canvas);I[e]&&I[e].o.canvas&&(I[e].o.canvas.N=void 0);I[e]=null;b.delete(e);a.delete(e)};Qb=function(e,f,h){const l=P.o,m=l.createTexture();l.bindTexture(l.TEXTURE_2D,m);l.pixelStorei(l.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);l.texImage2D(l.TEXTURE_2D,0,l.RGBA,f,h,0,l.RGBA,l.UNSIGNED_BYTE,e);l.pixelStorei(l.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);l.bindTexture(l.TEXTURE_2D,null);e=M(G);G[e]=m;return e}})();
var Lc={__cxa_throw:(a,b,c)=>{var e=new Ra(a);t()[e.u+16>>2]=0;t()[e.u+4>>2]=b;t()[e.u+8>>2]=c;Sa=a;Ta++;throw Sa;},__syscall_fcntl64:function(){return 0},__syscall_fstat64:()=>{},__syscall_ioctl:function(){return 0},__syscall_openat:function(){},_abort_js:()=>{Ga("")},_emscripten_create_wasm_worker:(a,b)=>{let c=C[Xa]=new Worker(ma("skwasm.ww.js"));c.postMessage({$ww:Xa,wasm:qa,js:w.mainScriptUrlOrBlob||_scriptName,wasmMemory:g,sb:a,sz:b});c.onmessage=Da;return Xa++},_emscripten_get_now_is_monotonic:()=>
1,_emscripten_runtime_keepalive_clear:()=>{za=!1;Oa=0},_emscripten_throw_longjmp:()=>{throw Infinity;},_mmap_js:function(){return-52},_munmap_js:function(){},_setitimer_js:(a,b)=>{Ya[a]&&(clearTimeout(Ya[a].id),delete Ya[a]);if(!b)return 0;var c=setTimeout(()=>{delete Ya[a];Qa(()=>Cc(a,performance.now()))},b);Ya[a]={id:c,ca:b};return 0},_tzset_js:(a,b,c,e)=>{var f=(new Date).getFullYear(),h=(new Date(f,0,1)).getTimezoneOffset();f=(new Date(f,6,1)).getTimezoneOffset();var l=Math.max(h,f);t()[a>>2]=
60*l;r()[b>>2]=Number(h!=f);b=m=>{var p=Math.abs(m);return`UTC${0<=m?"-":"+"}${String(Math.floor(p/60)).padStart(2,"0")}${String(p%60).padStart(2,"0")}`};a=b(h);b=b(f);f<h?(D(a,c,17),D(b,e,17)):(D(a,e,17),D(b,c,17))},emscripten_console_warn:a=>{console.warn(Wa(a))},emscripten_get_now:()=>performance.now(),emscripten_glActiveTexture:a=>E.activeTexture(a),emscripten_glAttachShader:(a,b)=>{E.attachShader(F[a],H[b])},emscripten_glBeginQuery:(a,b)=>{E.beginQuery(a,J[b])},emscripten_glBeginQueryEXT:(a,
b)=>{E.m.beginQueryEXT(a,J[b])},emscripten_glBindAttribLocation:(a,b,c)=>{E.bindAttribLocation(F[a],b,Wa(c))},emscripten_glBindBuffer:(a,b)=>{35051==a?E.D=b:35052==a&&(E.s=b);E.bindBuffer(a,fb[b])},emscripten_glBindFramebuffer:(a,b)=>{E.bindFramebuffer(a,gb[b])},emscripten_glBindRenderbuffer:(a,b)=>{E.bindRenderbuffer(a,hb[b])},emscripten_glBindSampler:(a,b)=>{E.bindSampler(a,K[b])},emscripten_glBindTexture:(a,b)=>{E.bindTexture(a,G[b])},emscripten_glBindVertexArray:qb,emscripten_glBindVertexArrayOES:qb,
emscripten_glBlendColor:(a,b,c,e)=>E.blendColor(a,b,c,e),emscripten_glBlendEquation:a=>E.blendEquation(a),emscripten_glBlendFunc:(a,b)=>E.blendFunc(a,b),emscripten_glBlitFramebuffer:(a,b,c,e,f,h,l,m,p,v)=>E.blitFramebuffer(a,b,c,e,f,h,l,m,p,v),emscripten_glBufferData:(a,b,c,e)=>{2<=P.version?c&&b?E.bufferData(a,q(),e,c,b):E.bufferData(a,b,e):E.bufferData(a,c?q().subarray(c,c+b):b,e)},emscripten_glBufferSubData:(a,b,c,e)=>{2<=P.version?c&&E.bufferSubData(a,b,q(),e,c):E.bufferSubData(a,b,q().subarray(e,
e+c))},emscripten_glCheckFramebufferStatus:a=>E.checkFramebufferStatus(a),emscripten_glClear:a=>E.clear(a),emscripten_glClearColor:(a,b,c,e)=>E.clearColor(a,b,c,e),emscripten_glClearStencil:a=>E.clearStencil(a),emscripten_glClientWaitSync:(a,b,c,e)=>E.clientWaitSync(L[a],b,(c>>>0)+4294967296*e),emscripten_glColorMask:(a,b,c,e)=>{E.colorMask(!!a,!!b,!!c,!!e)},emscripten_glCompileShader:a=>{E.compileShader(H[a])},emscripten_glCompressedTexImage2D:(a,b,c,e,f,h,l,m)=>{2<=P.version?E.s||!l?E.compressedTexImage2D(a,
b,c,e,f,h,l,m):E.compressedTexImage2D(a,b,c,e,f,h,q(),m,l):E.compressedTexImage2D(a,b,c,e,f,h,q().subarray(m,m+l))},emscripten_glCompressedTexSubImage2D:(a,b,c,e,f,h,l,m,p)=>{2<=P.version?E.s||!m?E.compressedTexSubImage2D(a,b,c,e,f,h,l,m,p):E.compressedTexSubImage2D(a,b,c,e,f,h,l,q(),p,m):E.compressedTexSubImage2D(a,b,c,e,f,h,l,q().subarray(p,p+m))},emscripten_glCopyBufferSubData:(a,b,c,e,f)=>E.copyBufferSubData(a,b,c,e,f),emscripten_glCopyTexSubImage2D:(a,b,c,e,f,h,l,m)=>E.copyTexSubImage2D(a,b,
c,e,f,h,l,m),emscripten_glCreateProgram:()=>{var a=M(F),b=E.createProgram();b.name=a;b.C=b.A=b.B=0;b.G=1;F[a]=b;return a},emscripten_glCreateShader:a=>{var b=M(H);H[b]=E.createShader(a);return b},emscripten_glCullFace:a=>E.cullFace(a),emscripten_glDeleteBuffers:(a,b)=>{for(var c=0;c<a;c++){var e=r()[b+4*c>>2],f=fb[e];f&&(E.deleteBuffer(f),f.name=0,fb[e]=null,e==E.D&&(E.D=0),e==E.s&&(E.s=0))}},emscripten_glDeleteFramebuffers:(a,b)=>{for(var c=0;c<a;++c){var e=r()[b+4*c>>2],f=gb[e];f&&(E.deleteFramebuffer(f),
f.name=0,gb[e]=null)}},emscripten_glDeleteProgram:a=>{if(a){var b=F[a];b?(E.deleteProgram(b),b.name=0,F[a]=null):N||=1281}},emscripten_glDeleteQueries:(a,b)=>{for(var c=0;c<a;c++){var e=r()[b+4*c>>2],f=J[e];f&&(E.deleteQuery(f),J[e]=null)}},emscripten_glDeleteQueriesEXT:(a,b)=>{for(var c=0;c<a;c++){var e=r()[b+4*c>>2],f=J[e];f&&(E.m.deleteQueryEXT(f),J[e]=null)}},emscripten_glDeleteRenderbuffers:(a,b)=>{for(var c=0;c<a;c++){var e=r()[b+4*c>>2],f=hb[e];f&&(E.deleteRenderbuffer(f),f.name=0,hb[e]=null)}},
emscripten_glDeleteSamplers:(a,b)=>{for(var c=0;c<a;c++){var e=r()[b+4*c>>2],f=K[e];f&&(E.deleteSampler(f),f.name=0,K[e]=null)}},emscripten_glDeleteShader:a=>{if(a){var b=H[a];b?(E.deleteShader(b),H[a]=null):N||=1281}},emscripten_glDeleteSync:a=>{if(a){var b=L[a];b?(E.deleteSync(b),b.name=0,L[a]=null):N||=1281}},emscripten_glDeleteTextures:rb,emscripten_glDeleteVertexArrays:sb,emscripten_glDeleteVertexArraysOES:sb,emscripten_glDepthMask:a=>{E.depthMask(!!a)},emscripten_glDisable:a=>E.disable(a),emscripten_glDisableVertexAttribArray:a=>
{E.disableVertexAttribArray(a)},emscripten_glDrawArrays:(a,b,c)=>{E.drawArrays(a,b,c)},emscripten_glDrawArraysInstanced:(a,b,c,e)=>{E.drawArraysInstanced(a,b,c,e)},emscripten_glDrawArraysInstancedBaseInstanceWEBGL:(a,b,c,e,f)=>{E.H.drawArraysInstancedBaseInstanceWEBGL(a,b,c,e,f)},emscripten_glDrawBuffers:(a,b)=>{for(var c=tb[a],e=0;e<a;e++)c[e]=r()[b+4*e>>2];E.drawBuffers(c)},emscripten_glDrawElements:(a,b,c,e)=>{E.drawElements(a,b,c,e)},emscripten_glDrawElementsInstanced:(a,b,c,e,f)=>{E.drawElementsInstanced(a,
b,c,e,f)},emscripten_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL:(a,b,c,e,f,h,l)=>{E.H.drawElementsInstancedBaseVertexBaseInstanceWEBGL(a,b,c,e,f,h,l)},emscripten_glDrawRangeElements:(a,b,c,e,f,h)=>{E.drawElements(a,e,f,h)},emscripten_glEnable:a=>E.enable(a),emscripten_glEnableVertexAttribArray:a=>{E.enableVertexAttribArray(a)},emscripten_glEndQuery:a=>E.endQuery(a),emscripten_glEndQueryEXT:a=>{E.m.endQueryEXT(a)},emscripten_glFenceSync:(a,b)=>(a=E.fenceSync(a,b))?(b=M(L),a.name=b,L[b]=a,b):
0,emscripten_glFinish:()=>E.finish(),emscripten_glFlush:()=>E.flush(),emscripten_glFramebufferRenderbuffer:(a,b,c,e)=>{E.framebufferRenderbuffer(a,b,c,hb[e])},emscripten_glFramebufferTexture2D:(a,b,c,e,f)=>{E.framebufferTexture2D(a,b,c,G[e],f)},emscripten_glFrontFace:a=>E.frontFace(a),emscripten_glGenBuffers:(a,b)=>{O(a,b,"createBuffer",fb)},emscripten_glGenFramebuffers:(a,b)=>{O(a,b,"createFramebuffer",gb)},emscripten_glGenQueries:(a,b)=>{O(a,b,"createQuery",J)},emscripten_glGenQueriesEXT:(a,b)=>
{for(var c=0;c<a;c++){var e=E.m.createQueryEXT();if(!e){for(N||=1282;c<a;)r()[b+4*c++>>2]=0;break}var f=M(J);e.name=f;J[f]=e;r()[b+4*c>>2]=f}},emscripten_glGenRenderbuffers:(a,b)=>{O(a,b,"createRenderbuffer",hb)},emscripten_glGenSamplers:(a,b)=>{O(a,b,"createSampler",K)},emscripten_glGenTextures:(a,b)=>{O(a,b,"createTexture",G)},emscripten_glGenVertexArrays:ub,emscripten_glGenVertexArraysOES:ub,emscripten_glGenerateMipmap:a=>E.generateMipmap(a),emscripten_glGetBufferParameteriv:(a,b,c)=>{c?r()[c>>
2]=E.getBufferParameter(a,b):N||=1281},emscripten_glGetError:()=>{var a=E.getError()||N;N=0;return a},emscripten_glGetFloatv:(a,b)=>xb(a,b,2),emscripten_glGetFramebufferAttachmentParameteriv:(a,b,c,e)=>{a=E.getFramebufferAttachmentParameter(a,b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;r()[e>>2]=a},emscripten_glGetIntegerv:yb,emscripten_glGetProgramInfoLog:(a,b,c,e)=>{a=E.getProgramInfoLog(F[a]);null===a&&(a="(unknown error)");b=0<b&&e?D(a,e,b):0;c&&(r()[c>>2]=b)},
emscripten_glGetProgramiv:(a,b,c)=>{if(c)if(a>=eb)N||=1281;else if(a=F[a],35716==b)a=E.getProgramInfoLog(a),null===a&&(a="(unknown error)"),r()[c>>2]=a.length+1;else if(35719==b){if(!a.C){var e=E.getProgramParameter(a,35718);for(b=0;b<e;++b)a.C=Math.max(a.C,E.getActiveUniform(a,b).name.length+1)}r()[c>>2]=a.C}else if(35722==b){if(!a.A)for(e=E.getProgramParameter(a,35721),b=0;b<e;++b)a.A=Math.max(a.A,E.getActiveAttrib(a,b).name.length+1);r()[c>>2]=a.A}else if(35381==b){if(!a.B)for(e=E.getProgramParameter(a,
35382),b=0;b<e;++b)a.B=Math.max(a.B,E.getActiveUniformBlockName(a,b).length+1);r()[c>>2]=a.B}else r()[c>>2]=E.getProgramParameter(a,b);else N||=1281},emscripten_glGetQueryObjecti64vEXT:zb,emscripten_glGetQueryObjectui64vEXT:zb,emscripten_glGetQueryObjectuiv:(a,b,c)=>{if(c){a=E.getQueryParameter(J[a],b);var e;"boolean"==typeof a?e=a?1:0:e=a;r()[c>>2]=e}else N||=1281},emscripten_glGetQueryObjectuivEXT:(a,b,c)=>{if(c){a=E.m.getQueryObjectEXT(J[a],b);var e;"boolean"==typeof a?e=a?1:0:e=a;r()[c>>2]=e}else N||=
1281},emscripten_glGetQueryiv:(a,b,c)=>{c?r()[c>>2]=E.getQuery(a,b):N||=1281},emscripten_glGetQueryivEXT:(a,b,c)=>{c?r()[c>>2]=E.m.getQueryEXT(a,b):N||=1281},emscripten_glGetRenderbufferParameteriv:(a,b,c)=>{c?r()[c>>2]=E.getRenderbufferParameter(a,b):N||=1281},emscripten_glGetShaderInfoLog:(a,b,c,e)=>{a=E.getShaderInfoLog(H[a]);null===a&&(a="(unknown error)");b=0<b&&e?D(a,e,b):0;c&&(r()[c>>2]=b)},emscripten_glGetShaderPrecisionFormat:(a,b,c,e)=>{a=E.getShaderPrecisionFormat(a,b);r()[c>>2]=a.rangeMin;
r()[c+4>>2]=a.rangeMax;r()[e>>2]=a.precision},emscripten_glGetShaderiv:(a,b,c)=>{c?35716==b?(a=E.getShaderInfoLog(H[a]),null===a&&(a="(unknown error)"),a=a?a.length+1:0,r()[c>>2]=a):35720==b?(a=(a=E.getShaderSource(H[a]))?a.length+1:0,r()[c>>2]=a):r()[c>>2]=E.getShaderParameter(H[a],b):N||=1281},emscripten_glGetString:Cb,emscripten_glGetStringi:Db,emscripten_glGetUniformLocation:(a,b)=>{b=Wa(b);if(a=F[a]){var c=a,e=c.v,f=c.M,h;if(!e){c.v=e={};c.L={};var l=E.getProgramParameter(c,35718);for(h=0;h<
l;++h){var m=E.getActiveUniform(c,h);var p=m.name;m=m.size;var v=Eb(p);v=0<v?p.slice(0,v):p;var U=c.G;c.G+=m;f[v]=[m,U];for(p=0;p<m;++p)e[U]=p,c.L[U++]=v}}c=a.v;e=0;f=b;h=Eb(b);0<h&&(e=parseInt(b.slice(h+1))>>>0,f=b.slice(0,h));if((f=a.M[f])&&e<f[0]&&(e+=f[1],c[e]=c[e]||E.getUniformLocation(a,b)))return e}else N||=1281;return-1},emscripten_glInvalidateFramebuffer:(a,b,c)=>{for(var e=tb[b],f=0;f<b;f++)e[f]=r()[c+4*f>>2];E.invalidateFramebuffer(a,e)},emscripten_glInvalidateSubFramebuffer:(a,b,c,e,f,
h,l)=>{for(var m=tb[b],p=0;p<b;p++)m[p]=r()[c+4*p>>2];E.invalidateSubFramebuffer(a,m,e,f,h,l)},emscripten_glIsSync:a=>E.isSync(L[a]),emscripten_glIsTexture:a=>(a=G[a])?E.isTexture(a):0,emscripten_glLineWidth:a=>E.lineWidth(a),emscripten_glLinkProgram:a=>{a=F[a];E.linkProgram(a);a.v=0;a.M={}},emscripten_glMultiDrawArraysInstancedBaseInstanceWEBGL:(a,b,c,e,f,h)=>{E.K.multiDrawArraysInstancedBaseInstanceWEBGL(a,r(),b>>2,r(),c>>2,r(),e>>2,t(),f>>2,h)},emscripten_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL:(a,
b,c,e,f,h,l,m)=>{E.K.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(a,r(),b>>2,c,r(),e>>2,r(),f>>2,r(),h>>2,t(),l>>2,m)},emscripten_glPixelStorei:(a,b)=>{3317==a?lb=b:3314==a&&(mb=b);E.pixelStorei(a,b)},emscripten_glQueryCounterEXT:(a,b)=>{E.m.queryCounterEXT(J[a],b)},emscripten_glReadBuffer:a=>E.readBuffer(a),emscripten_glReadPixels:(a,b,c,e,f,h,l)=>{if(2<=P.version)if(E.D)E.readPixels(a,b,c,e,f,h,l);else{var m=Fb(h);l>>>=31-Math.clz32(m.BYTES_PER_ELEMENT);E.readPixels(a,b,c,e,f,h,m,l)}else(m=
Gb(h,f,c,e,l))?E.readPixels(a,b,c,e,f,h,m):N||=1280},emscripten_glRenderbufferStorage:(a,b,c,e)=>E.renderbufferStorage(a,b,c,e),emscripten_glRenderbufferStorageMultisample:(a,b,c,e,f)=>E.renderbufferStorageMultisample(a,b,c,e,f),emscripten_glSamplerParameterf:(a,b,c)=>{E.samplerParameterf(K[a],b,c)},emscripten_glSamplerParameteri:(a,b,c)=>{E.samplerParameteri(K[a],b,c)},emscripten_glSamplerParameteriv:(a,b,c)=>{c=r()[c>>2];E.samplerParameteri(K[a],b,c)},emscripten_glScissor:(a,b,c,e)=>E.scissor(a,
b,c,e),emscripten_glShaderSource:(a,b,c,e)=>{for(var f="",h=0;h<b;++h){var l=e?t()[e+4*h>>2]:void 0;f+=Wa(t()[c+4*h>>2],l)}E.shaderSource(H[a],f)},emscripten_glStencilFunc:(a,b,c)=>E.stencilFunc(a,b,c),emscripten_glStencilFuncSeparate:(a,b,c,e)=>E.stencilFuncSeparate(a,b,c,e),emscripten_glStencilMask:a=>E.stencilMask(a),emscripten_glStencilMaskSeparate:(a,b)=>E.stencilMaskSeparate(a,b),emscripten_glStencilOp:(a,b,c)=>E.stencilOp(a,b,c),emscripten_glStencilOpSeparate:(a,b,c,e)=>E.stencilOpSeparate(a,
b,c,e),emscripten_glTexImage2D:(a,b,c,e,f,h,l,m,p)=>{if(2<=P.version){if(E.s){E.texImage2D(a,b,c,e,f,h,l,m,p);return}if(p){var v=Fb(m);p>>>=31-Math.clz32(v.BYTES_PER_ELEMENT);E.texImage2D(a,b,c,e,f,h,l,m,v,p);return}}v=p?Gb(m,l,e,f,p):null;E.texImage2D(a,b,c,e,f,h,l,m,v)},emscripten_glTexParameterf:(a,b,c)=>E.texParameterf(a,b,c),emscripten_glTexParameterfv:(a,b,c)=>{c=u()[c>>2];E.texParameterf(a,b,c)},emscripten_glTexParameteri:(a,b,c)=>E.texParameteri(a,b,c),emscripten_glTexParameteriv:(a,b,c)=>
{c=r()[c>>2];E.texParameteri(a,b,c)},emscripten_glTexStorage2D:(a,b,c,e,f)=>E.texStorage2D(a,b,c,e,f),emscripten_glTexSubImage2D:(a,b,c,e,f,h,l,m,p)=>{if(2<=P.version){if(E.s){E.texSubImage2D(a,b,c,e,f,h,l,m,p);return}if(p){var v=Fb(m);E.texSubImage2D(a,b,c,e,f,h,l,m,v,p>>>31-Math.clz32(v.BYTES_PER_ELEMENT));return}}p=p?Gb(m,l,f,h,p):null;E.texSubImage2D(a,b,c,e,f,h,l,m,p)},emscripten_glUniform1f:(a,b)=>{E.uniform1f(Q(a),b)},emscripten_glUniform1fv:(a,b,c)=>{if(2<=P.version)b&&E.uniform1fv(Q(a),u(),
c>>2,b);else{if(288>=b)for(var e=R[b],f=0;f<b;++f)e[f]=u()[c+4*f>>2];else e=u().subarray(c>>2,c+4*b>>2);E.uniform1fv(Q(a),e)}},emscripten_glUniform1i:(a,b)=>{E.uniform1i(Q(a),b)},emscripten_glUniform1iv:(a,b,c)=>{if(2<=P.version)b&&E.uniform1iv(Q(a),r(),c>>2,b);else{if(288>=b)for(var e=Hb[b],f=0;f<b;++f)e[f]=r()[c+4*f>>2];else e=r().subarray(c>>2,c+4*b>>2);E.uniform1iv(Q(a),e)}},emscripten_glUniform2f:(a,b,c)=>{E.uniform2f(Q(a),b,c)},emscripten_glUniform2fv:(a,b,c)=>{if(2<=P.version)b&&E.uniform2fv(Q(a),
u(),c>>2,2*b);else{if(144>=b){b*=2;for(var e=R[b],f=0;f<b;f+=2)e[f]=u()[c+4*f>>2],e[f+1]=u()[c+(4*f+4)>>2]}else e=u().subarray(c>>2,c+8*b>>2);E.uniform2fv(Q(a),e)}},emscripten_glUniform2i:(a,b,c)=>{E.uniform2i(Q(a),b,c)},emscripten_glUniform2iv:(a,b,c)=>{if(2<=P.version)b&&E.uniform2iv(Q(a),r(),c>>2,2*b);else{if(144>=b){b*=2;for(var e=Hb[b],f=0;f<b;f+=2)e[f]=r()[c+4*f>>2],e[f+1]=r()[c+(4*f+4)>>2]}else e=r().subarray(c>>2,c+8*b>>2);E.uniform2iv(Q(a),e)}},emscripten_glUniform3f:(a,b,c,e)=>{E.uniform3f(Q(a),
b,c,e)},emscripten_glUniform3fv:(a,b,c)=>{if(2<=P.version)b&&E.uniform3fv(Q(a),u(),c>>2,3*b);else{if(96>=b){b*=3;for(var e=R[b],f=0;f<b;f+=3)e[f]=u()[c+4*f>>2],e[f+1]=u()[c+(4*f+4)>>2],e[f+2]=u()[c+(4*f+8)>>2]}else e=u().subarray(c>>2,c+12*b>>2);E.uniform3fv(Q(a),e)}},emscripten_glUniform3i:(a,b,c,e)=>{E.uniform3i(Q(a),b,c,e)},emscripten_glUniform3iv:(a,b,c)=>{if(2<=P.version)b&&E.uniform3iv(Q(a),r(),c>>2,3*b);else{if(96>=b){b*=3;for(var e=Hb[b],f=0;f<b;f+=3)e[f]=r()[c+4*f>>2],e[f+1]=r()[c+(4*f+4)>>
2],e[f+2]=r()[c+(4*f+8)>>2]}else e=r().subarray(c>>2,c+12*b>>2);E.uniform3iv(Q(a),e)}},emscripten_glUniform4f:(a,b,c,e,f)=>{E.uniform4f(Q(a),b,c,e,f)},emscripten_glUniform4fv:(a,b,c)=>{if(2<=P.version)b&&E.uniform4fv(Q(a),u(),c>>2,4*b);else{if(72>=b){var e=R[4*b],f=u();c>>=2;b*=4;for(var h=0;h<b;h+=4){var l=c+h;e[h]=f[l];e[h+1]=f[l+1];e[h+2]=f[l+2];e[h+3]=f[l+3]}}else e=u().subarray(c>>2,c+16*b>>2);E.uniform4fv(Q(a),e)}},emscripten_glUniform4i:(a,b,c,e,f)=>{E.uniform4i(Q(a),b,c,e,f)},emscripten_glUniform4iv:(a,
b,c)=>{if(2<=P.version)b&&E.uniform4iv(Q(a),r(),c>>2,4*b);else{if(72>=b){b*=4;for(var e=Hb[b],f=0;f<b;f+=4)e[f]=r()[c+4*f>>2],e[f+1]=r()[c+(4*f+4)>>2],e[f+2]=r()[c+(4*f+8)>>2],e[f+3]=r()[c+(4*f+12)>>2]}else e=r().subarray(c>>2,c+16*b>>2);E.uniform4iv(Q(a),e)}},emscripten_glUniformMatrix2fv:(a,b,c,e)=>{if(2<=P.version)b&&E.uniformMatrix2fv(Q(a),!!c,u(),e>>2,4*b);else{if(72>=b){b*=4;for(var f=R[b],h=0;h<b;h+=4)f[h]=u()[e+4*h>>2],f[h+1]=u()[e+(4*h+4)>>2],f[h+2]=u()[e+(4*h+8)>>2],f[h+3]=u()[e+(4*h+12)>>
2]}else f=u().subarray(e>>2,e+16*b>>2);E.uniformMatrix2fv(Q(a),!!c,f)}},emscripten_glUniformMatrix3fv:(a,b,c,e)=>{if(2<=P.version)b&&E.uniformMatrix3fv(Q(a),!!c,u(),e>>2,9*b);else{if(32>=b){b*=9;for(var f=R[b],h=0;h<b;h+=9)f[h]=u()[e+4*h>>2],f[h+1]=u()[e+(4*h+4)>>2],f[h+2]=u()[e+(4*h+8)>>2],f[h+3]=u()[e+(4*h+12)>>2],f[h+4]=u()[e+(4*h+16)>>2],f[h+5]=u()[e+(4*h+20)>>2],f[h+6]=u()[e+(4*h+24)>>2],f[h+7]=u()[e+(4*h+28)>>2],f[h+8]=u()[e+(4*h+32)>>2]}else f=u().subarray(e>>2,e+36*b>>2);E.uniformMatrix3fv(Q(a),
!!c,f)}},emscripten_glUniformMatrix4fv:(a,b,c,e)=>{if(2<=P.version)b&&E.uniformMatrix4fv(Q(a),!!c,u(),e>>2,16*b);else{if(18>=b){var f=R[16*b],h=u();e>>=2;b*=16;for(var l=0;l<b;l+=16){var m=e+l;f[l]=h[m];f[l+1]=h[m+1];f[l+2]=h[m+2];f[l+3]=h[m+3];f[l+4]=h[m+4];f[l+5]=h[m+5];f[l+6]=h[m+6];f[l+7]=h[m+7];f[l+8]=h[m+8];f[l+9]=h[m+9];f[l+10]=h[m+10];f[l+11]=h[m+11];f[l+12]=h[m+12];f[l+13]=h[m+13];f[l+14]=h[m+14];f[l+15]=h[m+15]}}else f=u().subarray(e>>2,e+64*b>>2);E.uniformMatrix4fv(Q(a),!!c,f)}},emscripten_glUseProgram:a=>
{a=F[a];E.useProgram(a);E.O=a},emscripten_glVertexAttrib1f:(a,b)=>E.vertexAttrib1f(a,b),emscripten_glVertexAttrib2fv:(a,b)=>{E.vertexAttrib2f(a,u()[b>>2],u()[b+4>>2])},emscripten_glVertexAttrib3fv:(a,b)=>{E.vertexAttrib3f(a,u()[b>>2],u()[b+4>>2],u()[b+8>>2])},emscripten_glVertexAttrib4fv:(a,b)=>{E.vertexAttrib4f(a,u()[b>>2],u()[b+4>>2],u()[b+8>>2],u()[b+12>>2])},emscripten_glVertexAttribDivisor:(a,b)=>{E.vertexAttribDivisor(a,b)},emscripten_glVertexAttribIPointer:(a,b,c,e,f)=>{E.vertexAttribIPointer(a,
b,c,e,f)},emscripten_glVertexAttribPointer:(a,b,c,e,f,h)=>{E.vertexAttribPointer(a,b,c,!!e,f,h)},emscripten_glViewport:(a,b,c,e)=>E.viewport(a,b,c,e),emscripten_glWaitSync:(a,b,c,e)=>{E.waitSync(L[a],b,(c>>>0)+4294967296*e)},emscripten_resize_heap:a=>{var b=q().length;a>>>=0;if(a<=b||2147483648<a)return!1;for(var c=1;4>=c;c*=2){var e=b*(1+.2/c);e=Math.min(e,a+100663296);a:{e=(Math.min(2147483648,65536*Math.ceil(Math.max(a,e)/65536))-g.buffer.byteLength+65535)/65536|0;try{g.grow(e);n();var f=1;break a}catch(h){}f=
void 0}if(f)return!0}return!1},emscripten_wasm_worker_post_function_v:(a,b)=>{C[a].postMessage({_wsc:b,x:[]})},emscripten_webgl_enable_extension:function(a,b){a=I[a];b=Wa(b);b.startsWith("GL_")&&(b=b.substr(3));"ANGLE_instanced_arrays"==b&&Za(E);"OES_vertex_array_object"==b&&$a(E);"WEBGL_draw_buffers"==b&&ab(E);"WEBGL_draw_instanced_base_vertex_base_instance"==b&&bb(E);"WEBGL_multi_draw_instanced_base_vertex_base_instance"==b&&cb(E);"WEBGL_multi_draw"==b&&(E.U=E.getExtension("WEBGL_multi_draw"));
"EXT_polygon_offset_clamp"==b&&(E.R=E.getExtension("EXT_polygon_offset_clamp"));"EXT_clip_control"==b&&(E.P=E.getExtension("EXT_clip_control"));"WEBGL_polygon_mode"==b&&(E.Z=E.getExtension("WEBGL_polygon_mode"));return!!a.o.getExtension(b)},emscripten_webgl_get_current_context:()=>P?P.handle:0,emscripten_webgl_make_context_current:a=>{P=I[a];w.aa=E=P?.o;return!a||E?0:-5},environ_get:(a,b)=>{var c=0;Kb().forEach((e,f)=>{var h=b+c;f=t()[a+4*f>>2]=h;for(h=0;h<e.length;++h)d()[f++]=e.charCodeAt(h);d()[f]=
0;c+=e.length+1});return 0},environ_sizes_get:(a,b)=>{var c=Kb();t()[a>>2]=c.length;var e=0;c.forEach(f=>e+=f.length+1);t()[b>>2]=e;return 0},fd_close:()=>52,fd_pread:function(){return 52},fd_read:()=>52,fd_seek:function(){return 70},fd_write:(a,b,c,e)=>{for(var f=0,h=0;h<c;h++){var l=t()[b>>2],m=t()[b+4>>2];b+=8;for(var p=0;p<m;p++){var v=q()[l+p],U=Lb[a];0===v||10===v?((1===a?pa:y)(Va(U)),U.length=0):U.push(v)}f+=m}t()[e>>2]=f;return 0},glDeleteTextures:rb,glGetIntegerv:yb,glGetString:Cb,glGetStringi:Db,
invoke_ii:Dc,invoke_iii:Ec,invoke_iiiii:Fc,invoke_iiiiiii:Gc,invoke_vi:Hc,invoke_vii:Ic,invoke_viii:Jc,invoke_viiiiiii:Kc,memory:g,proc_exit:Pa,skwasm_captureImageBitmap:Mb,skwasm_connectThread:Pb,skwasm_createGlTextureFromTextureSource:Qb,skwasm_destroyContext:Rb,skwasm_dispatchDisposeSurface:Sb,skwasm_dispatchRasterizeImage:Tb,skwasm_dispatchRenderPictures:Ub,skwasm_dispatchResizeSurface:Vb,skwasm_dispatchTransferCanvas:Wb,skwasm_dispatchTriggerContextLoss:Xb,skwasm_disposeAssociatedObjectOnThread:Yb,
skwasm_getAssociatedObject:Zb,skwasm_getGlContextForCanvas:$b,skwasm_isSingleThreaded:ac,skwasm_postRasterizeResult:bc,skwasm_reportContextLossTriggered:cc,skwasm_reportContextLost:dc,skwasm_reportInitialized:ec,skwasm_reportResizeComplete:fc,skwasm_resizeCanvas:gc,skwasm_resolveAndPostImages:hc,skwasm_setAssociatedObjectOnThread:ic,skwasm_triggerContextLossOnCanvas:jc},W=function(){function a(c,e){W=c.exports;w.wasmExports=W;B=W.__indirect_function_table;wa.unshift(W.__wasm_call_ctors);qa=e;z--;
0==z&&(null!==Fa&&(clearInterval(Fa),Fa=null),A&&(c=A,A=null,c()));return W}var b={env:Lc,wasi_snapshot_preview1:Lc};z++;if(w.instantiateWasm)try{return w.instantiateWasm(b,a)}catch(c){y(`Module.instantiateWasm callback failed with error: ${c}`),fa(c)}Ia??=Ha("skwasm.wasm")?"skwasm.wasm":ma("skwasm.wasm");La(b,function(c){a(c.instance,c.module)}).catch(fa);return{}}();w._canvas_saveLayer=(a,b,c,e)=>(w._canvas_saveLayer=W.canvas_saveLayer)(a,b,c,e);w._canvas_save=a=>(w._canvas_save=W.canvas_save)(a);
w._canvas_restore=a=>(w._canvas_restore=W.canvas_restore)(a);w._canvas_restoreToCount=(a,b)=>(w._canvas_restoreToCount=W.canvas_restoreToCount)(a,b);w._canvas_getSaveCount=a=>(w._canvas_getSaveCount=W.canvas_getSaveCount)(a);w._canvas_translate=(a,b,c)=>(w._canvas_translate=W.canvas_translate)(a,b,c);w._canvas_scale=(a,b,c)=>(w._canvas_scale=W.canvas_scale)(a,b,c);w._canvas_rotate=(a,b)=>(w._canvas_rotate=W.canvas_rotate)(a,b);w._canvas_skew=(a,b,c)=>(w._canvas_skew=W.canvas_skew)(a,b,c);
w._canvas_transform=(a,b)=>(w._canvas_transform=W.canvas_transform)(a,b);w._canvas_clear=(a,b)=>(w._canvas_clear=W.canvas_clear)(a,b);w._canvas_clipRect=(a,b,c,e)=>(w._canvas_clipRect=W.canvas_clipRect)(a,b,c,e);w._canvas_clipRRect=(a,b,c)=>(w._canvas_clipRRect=W.canvas_clipRRect)(a,b,c);w._canvas_clipPath=(a,b,c)=>(w._canvas_clipPath=W.canvas_clipPath)(a,b,c);w._canvas_drawColor=(a,b,c)=>(w._canvas_drawColor=W.canvas_drawColor)(a,b,c);
w._canvas_drawLine=(a,b,c,e,f,h)=>(w._canvas_drawLine=W.canvas_drawLine)(a,b,c,e,f,h);w._canvas_drawPaint=(a,b)=>(w._canvas_drawPaint=W.canvas_drawPaint)(a,b);w._canvas_drawRect=(a,b,c)=>(w._canvas_drawRect=W.canvas_drawRect)(a,b,c);w._canvas_drawRRect=(a,b,c)=>(w._canvas_drawRRect=W.canvas_drawRRect)(a,b,c);w._canvas_drawDRRect=(a,b,c,e)=>(w._canvas_drawDRRect=W.canvas_drawDRRect)(a,b,c,e);w._canvas_drawOval=(a,b,c)=>(w._canvas_drawOval=W.canvas_drawOval)(a,b,c);
w._canvas_drawCircle=(a,b,c,e,f)=>(w._canvas_drawCircle=W.canvas_drawCircle)(a,b,c,e,f);w._canvas_drawArc=(a,b,c,e,f,h)=>(w._canvas_drawArc=W.canvas_drawArc)(a,b,c,e,f,h);w._canvas_drawPath=(a,b,c)=>(w._canvas_drawPath=W.canvas_drawPath)(a,b,c);w._canvas_drawShadow=(a,b,c,e,f,h)=>(w._canvas_drawShadow=W.canvas_drawShadow)(a,b,c,e,f,h);w._canvas_drawParagraph=(a,b,c,e)=>(w._canvas_drawParagraph=W.canvas_drawParagraph)(a,b,c,e);
w._canvas_drawPicture=(a,b)=>(w._canvas_drawPicture=W.canvas_drawPicture)(a,b);w._canvas_drawImage=(a,b,c,e,f,h)=>(w._canvas_drawImage=W.canvas_drawImage)(a,b,c,e,f,h);w._canvas_drawImageRect=(a,b,c,e,f,h)=>(w._canvas_drawImageRect=W.canvas_drawImageRect)(a,b,c,e,f,h);w._canvas_drawImageNine=(a,b,c,e,f,h)=>(w._canvas_drawImageNine=W.canvas_drawImageNine)(a,b,c,e,f,h);w._canvas_drawVertices=(a,b,c,e)=>(w._canvas_drawVertices=W.canvas_drawVertices)(a,b,c,e);
w._canvas_drawPoints=(a,b,c,e,f)=>(w._canvas_drawPoints=W.canvas_drawPoints)(a,b,c,e,f);w._canvas_drawAtlas=(a,b,c,e,f,h,l,m,p)=>(w._canvas_drawAtlas=W.canvas_drawAtlas)(a,b,c,e,f,h,l,m,p);w._canvas_getTransform=(a,b)=>(w._canvas_getTransform=W.canvas_getTransform)(a,b);w._canvas_getLocalClipBounds=(a,b)=>(w._canvas_getLocalClipBounds=W.canvas_getLocalClipBounds)(a,b);w._canvas_getDeviceClipBounds=(a,b)=>(w._canvas_getDeviceClipBounds=W.canvas_getDeviceClipBounds)(a,b);
w._canvas_quickReject=(a,b)=>(w._canvas_quickReject=W.canvas_quickReject)(a,b);w._contourMeasureIter_create=(a,b,c)=>(w._contourMeasureIter_create=W.contourMeasureIter_create)(a,b,c);w._contourMeasureIter_next=a=>(w._contourMeasureIter_next=W.contourMeasureIter_next)(a);w._contourMeasureIter_dispose=a=>(w._contourMeasureIter_dispose=W.contourMeasureIter_dispose)(a);w._contourMeasure_dispose=a=>(w._contourMeasure_dispose=W.contourMeasure_dispose)(a);
w._contourMeasure_length=a=>(w._contourMeasure_length=W.contourMeasure_length)(a);w._contourMeasure_isClosed=a=>(w._contourMeasure_isClosed=W.contourMeasure_isClosed)(a);w._contourMeasure_getPosTan=(a,b,c,e)=>(w._contourMeasure_getPosTan=W.contourMeasure_getPosTan)(a,b,c,e);w._contourMeasure_getSegment=(a,b,c,e)=>(w._contourMeasure_getSegment=W.contourMeasure_getSegment)(a,b,c,e);w._skData_create=a=>(w._skData_create=W.skData_create)(a);w._skData_getPointer=a=>(w._skData_getPointer=W.skData_getPointer)(a);
w._skData_getConstPointer=a=>(w._skData_getConstPointer=W.skData_getConstPointer)(a);w._skData_getSize=a=>(w._skData_getSize=W.skData_getSize)(a);w._skData_dispose=a=>(w._skData_dispose=W.skData_dispose)(a);w._imageFilter_createBlur=(a,b,c)=>(w._imageFilter_createBlur=W.imageFilter_createBlur)(a,b,c);w._imageFilter_createDilate=(a,b)=>(w._imageFilter_createDilate=W.imageFilter_createDilate)(a,b);w._imageFilter_createErode=(a,b)=>(w._imageFilter_createErode=W.imageFilter_createErode)(a,b);
w._imageFilter_createMatrix=(a,b)=>(w._imageFilter_createMatrix=W.imageFilter_createMatrix)(a,b);w._imageFilter_createFromColorFilter=a=>(w._imageFilter_createFromColorFilter=W.imageFilter_createFromColorFilter)(a);w._imageFilter_compose=(a,b)=>(w._imageFilter_compose=W.imageFilter_compose)(a,b);w._imageFilter_dispose=a=>(w._imageFilter_dispose=W.imageFilter_dispose)(a);w._imageFilter_getFilterBounds=(a,b)=>(w._imageFilter_getFilterBounds=W.imageFilter_getFilterBounds)(a,b);
w._colorFilter_createMode=(a,b)=>(w._colorFilter_createMode=W.colorFilter_createMode)(a,b);w._colorFilter_createMatrix=a=>(w._colorFilter_createMatrix=W.colorFilter_createMatrix)(a);w._colorFilter_createSRGBToLinearGamma=()=>(w._colorFilter_createSRGBToLinearGamma=W.colorFilter_createSRGBToLinearGamma)();w._colorFilter_createLinearToSRGBGamma=()=>(w._colorFilter_createLinearToSRGBGamma=W.colorFilter_createLinearToSRGBGamma)();w._colorFilter_dispose=a=>(w._colorFilter_dispose=W.colorFilter_dispose)(a);
w._maskFilter_createBlur=(a,b)=>(w._maskFilter_createBlur=W.maskFilter_createBlur)(a,b);w._maskFilter_dispose=a=>(w._maskFilter_dispose=W.maskFilter_dispose)(a);w._fontCollection_create=()=>(w._fontCollection_create=W.fontCollection_create)();w._fontCollection_dispose=a=>(w._fontCollection_dispose=W.fontCollection_dispose)(a);w._typeface_create=a=>(w._typeface_create=W.typeface_create)(a);w._typeface_dispose=a=>(w._typeface_dispose=W.typeface_dispose)(a);
w._typefaces_filterCoveredCodePoints=(a,b,c,e)=>(w._typefaces_filterCoveredCodePoints=W.typefaces_filterCoveredCodePoints)(a,b,c,e);w._fontCollection_registerTypeface=(a,b,c)=>(w._fontCollection_registerTypeface=W.fontCollection_registerTypeface)(a,b,c);w._fontCollection_clearCaches=a=>(w._fontCollection_clearCaches=W.fontCollection_clearCaches)(a);w._image_createFromPicture=(a,b,c)=>(w._image_createFromPicture=W.image_createFromPicture)(a,b,c);
w._image_createFromPixels=(a,b,c,e,f)=>(w._image_createFromPixels=W.image_createFromPixels)(a,b,c,e,f);w._image_createFromTextureSource=(a,b,c,e)=>(w._image_createFromTextureSource=W.image_createFromTextureSource)(a,b,c,e);w._image_ref=a=>(w._image_ref=W.image_ref)(a);w._image_dispose=a=>(w._image_dispose=W.image_dispose)(a);w._image_getWidth=a=>(w._image_getWidth=W.image_getWidth)(a);w._image_getHeight=a=>(w._image_getHeight=W.image_getHeight)(a);
w._skwasm_getLiveObjectCounts=a=>(w._skwasm_getLiveObjectCounts=W.skwasm_getLiveObjectCounts)(a);w._paint_create=(a,b,c,e,f,h,l,m,p)=>(w._paint_create=W.paint_create)(a,b,c,e,f,h,l,m,p);w._paint_dispose=a=>(w._paint_dispose=W.paint_dispose)(a);w._paint_setShader=(a,b)=>(w._paint_setShader=W.paint_setShader)(a,b);w._paint_setImageFilter=(a,b)=>(w._paint_setImageFilter=W.paint_setImageFilter)(a,b);w._paint_setColorFilter=(a,b)=>(w._paint_setColorFilter=W.paint_setColorFilter)(a,b);
w._paint_setMaskFilter=(a,b)=>(w._paint_setMaskFilter=W.paint_setMaskFilter)(a,b);w._path_create=()=>(w._path_create=W.path_create)();w._path_dispose=a=>(w._path_dispose=W.path_dispose)(a);w._path_copy=a=>(w._path_copy=W.path_copy)(a);w._path_setFillType=(a,b)=>(w._path_setFillType=W.path_setFillType)(a,b);w._path_getFillType=a=>(w._path_getFillType=W.path_getFillType)(a);w._path_moveTo=(a,b,c)=>(w._path_moveTo=W.path_moveTo)(a,b,c);
w._path_relativeMoveTo=(a,b,c)=>(w._path_relativeMoveTo=W.path_relativeMoveTo)(a,b,c);w._path_lineTo=(a,b,c)=>(w._path_lineTo=W.path_lineTo)(a,b,c);w._path_relativeLineTo=(a,b,c)=>(w._path_relativeLineTo=W.path_relativeLineTo)(a,b,c);w._path_quadraticBezierTo=(a,b,c,e,f)=>(w._path_quadraticBezierTo=W.path_quadraticBezierTo)(a,b,c,e,f);w._path_relativeQuadraticBezierTo=(a,b,c,e,f)=>(w._path_relativeQuadraticBezierTo=W.path_relativeQuadraticBezierTo)(a,b,c,e,f);
w._path_cubicTo=(a,b,c,e,f,h,l)=>(w._path_cubicTo=W.path_cubicTo)(a,b,c,e,f,h,l);w._path_relativeCubicTo=(a,b,c,e,f,h,l)=>(w._path_relativeCubicTo=W.path_relativeCubicTo)(a,b,c,e,f,h,l);w._path_conicTo=(a,b,c,e,f,h)=>(w._path_conicTo=W.path_conicTo)(a,b,c,e,f,h);w._path_relativeConicTo=(a,b,c,e,f,h)=>(w._path_relativeConicTo=W.path_relativeConicTo)(a,b,c,e,f,h);w._path_arcToOval=(a,b,c,e,f)=>(w._path_arcToOval=W.path_arcToOval)(a,b,c,e,f);
w._path_arcToRotated=(a,b,c,e,f,h,l,m)=>(w._path_arcToRotated=W.path_arcToRotated)(a,b,c,e,f,h,l,m);w._path_relativeArcToRotated=(a,b,c,e,f,h,l,m)=>(w._path_relativeArcToRotated=W.path_relativeArcToRotated)(a,b,c,e,f,h,l,m);w._path_addRect=(a,b)=>(w._path_addRect=W.path_addRect)(a,b);w._path_addOval=(a,b)=>(w._path_addOval=W.path_addOval)(a,b);w._path_addArc=(a,b,c,e)=>(w._path_addArc=W.path_addArc)(a,b,c,e);w._path_addPolygon=(a,b,c,e)=>(w._path_addPolygon=W.path_addPolygon)(a,b,c,e);
w._path_addRRect=(a,b)=>(w._path_addRRect=W.path_addRRect)(a,b);w._path_addPath=(a,b,c,e)=>(w._path_addPath=W.path_addPath)(a,b,c,e);w._path_close=a=>(w._path_close=W.path_close)(a);w._path_reset=a=>(w._path_reset=W.path_reset)(a);w._path_contains=(a,b,c)=>(w._path_contains=W.path_contains)(a,b,c);w._path_transform=(a,b)=>(w._path_transform=W.path_transform)(a,b);w._path_getBounds=(a,b)=>(w._path_getBounds=W.path_getBounds)(a,b);w._path_combine=(a,b,c)=>(w._path_combine=W.path_combine)(a,b,c);
w._path_getSvgString=a=>(w._path_getSvgString=W.path_getSvgString)(a);w._pictureRecorder_create=()=>(w._pictureRecorder_create=W.pictureRecorder_create)();w._pictureRecorder_dispose=a=>(w._pictureRecorder_dispose=W.pictureRecorder_dispose)(a);w._pictureRecorder_beginRecording=(a,b)=>(w._pictureRecorder_beginRecording=W.pictureRecorder_beginRecording)(a,b);w._pictureRecorder_endRecording=a=>(w._pictureRecorder_endRecording=W.pictureRecorder_endRecording)(a);
w._picture_getCullRect=(a,b)=>(w._picture_getCullRect=W.picture_getCullRect)(a,b);w._picture_ref=a=>(w._picture_ref=W.picture_ref)(a);w._picture_dispose=a=>(w._picture_dispose=W.picture_dispose)(a);w._picture_approximateBytesUsed=a=>(w._picture_approximateBytesUsed=W.picture_approximateBytesUsed)(a);w._shader_createLinearGradient=(a,b,c,e,f,h)=>(w._shader_createLinearGradient=W.shader_createLinearGradient)(a,b,c,e,f,h);
w._shader_createRadialGradient=(a,b,c,e,f,h,l,m)=>(w._shader_createRadialGradient=W.shader_createRadialGradient)(a,b,c,e,f,h,l,m);w._shader_createConicalGradient=(a,b,c,e,f,h,l,m)=>(w._shader_createConicalGradient=W.shader_createConicalGradient)(a,b,c,e,f,h,l,m);w._shader_createSweepGradient=(a,b,c,e,f,h,l,m,p)=>(w._shader_createSweepGradient=W.shader_createSweepGradient)(a,b,c,e,f,h,l,m,p);w._shader_dispose=a=>(w._shader_dispose=W.shader_dispose)(a);
w._runtimeEffect_create=a=>(w._runtimeEffect_create=W.runtimeEffect_create)(a);w._runtimeEffect_dispose=a=>(w._runtimeEffect_dispose=W.runtimeEffect_dispose)(a);w._runtimeEffect_getUniformSize=a=>(w._runtimeEffect_getUniformSize=W.runtimeEffect_getUniformSize)(a);w._shader_createRuntimeEffectShader=(a,b,c,e)=>(w._shader_createRuntimeEffectShader=W.shader_createRuntimeEffectShader)(a,b,c,e);w._shader_createFromImage=(a,b,c,e,f)=>(w._shader_createFromImage=W.shader_createFromImage)(a,b,c,e,f);
w._uniformData_create=a=>(w._uniformData_create=W.uniformData_create)(a);w._uniformData_dispose=a=>(w._uniformData_dispose=W.uniformData_dispose)(a);w._uniformData_getPointer=a=>(w._uniformData_getPointer=W.uniformData_getPointer)(a);w._skString_allocate=a=>(w._skString_allocate=W.skString_allocate)(a);w._skString_getData=a=>(w._skString_getData=W.skString_getData)(a);w._skString_getLength=a=>(w._skString_getLength=W.skString_getLength)(a);w._skString_free=a=>(w._skString_free=W.skString_free)(a);
w._skString16_allocate=a=>(w._skString16_allocate=W.skString16_allocate)(a);w._skString16_getData=a=>(w._skString16_getData=W.skString16_getData)(a);w._skString16_free=a=>(w._skString16_free=W.skString16_free)(a);w._skwasm_isWimp=()=>(w._skwasm_isWimp=W.skwasm_isWimp)();w._surface_create=()=>(w._surface_create=W.surface_create)();w._surface_setCanvas=(a,b)=>(w._surface_setCanvas=W.surface_setCanvas)(a,b);
var pc=w._surface_receiveCanvasOnWorker=(a,b,c)=>(pc=w._surface_receiveCanvasOnWorker=W.surface_receiveCanvasOnWorker)(a,b,c),qc=w._surface_onInitialized=(a,b)=>(qc=w._surface_onInitialized=W.surface_onInitialized)(a,b);w._surface_setSize=(a,b,c)=>(w._surface_setSize=W.surface_setSize)(a,b,c);
var rc=w._surface_resizeOnWorker=(a,b,c,e)=>(rc=w._surface_resizeOnWorker=W.surface_resizeOnWorker)(a,b,c,e),sc=w._surface_onResizeComplete=(a,b)=>(sc=w._surface_onResizeComplete=W.surface_onResizeComplete)(a,b);w._surface_getThreadId=a=>(w._surface_getThreadId=W.surface_getThreadId)(a);w._surface_getGlContext=a=>(w._surface_getGlContext=W.surface_getGlContext)(a);w._surface_triggerContextLoss=a=>(w._surface_triggerContextLoss=W.surface_triggerContextLoss)(a);
var tc=w._surface_triggerContextLossOnWorker=(a,b)=>(tc=w._surface_triggerContextLossOnWorker=W.surface_triggerContextLossOnWorker)(a,b),uc=w._surface_onContextLossTriggered=(a,b)=>(uc=w._surface_onContextLossTriggered=W.surface_onContextLossTriggered)(a,b),vc=w._surface_reportContextLost=(a,b)=>(vc=w._surface_reportContextLost=W.surface_reportContextLost)(a,b);w._surface_setCallbackHandler=(a,b)=>(w._surface_setCallbackHandler=W.surface_setCallbackHandler)(a,b);
w._surface_destroy=a=>(w._surface_destroy=W.surface_destroy)(a);var yc=w._surface_dispose=a=>(yc=w._surface_dispose=W.surface_dispose)(a);w._surface_setResourceCacheLimitBytes=(a,b)=>(w._surface_setResourceCacheLimitBytes=W.surface_setResourceCacheLimitBytes)(a,b);w._surface_renderPictures=(a,b,c)=>(w._surface_renderPictures=W.surface_renderPictures)(a,b,c);var wc=w._surface_renderPicturesOnWorker=(a,b,c,e,f)=>(wc=w._surface_renderPicturesOnWorker=W.surface_renderPicturesOnWorker)(a,b,c,e,f);
w._surface_rasterizeImage=(a,b,c)=>(w._surface_rasterizeImage=W.surface_rasterizeImage)(a,b,c);
var zc=w._surface_rasterizeImageOnWorker=(a,b,c,e)=>(zc=w._surface_rasterizeImageOnWorker=W.surface_rasterizeImageOnWorker)(a,b,c,e),xc=w._surface_onRenderComplete=(a,b,c)=>(xc=w._surface_onRenderComplete=W.surface_onRenderComplete)(a,b,c),Ac=w._surface_onRasterizeComplete=(a,b,c)=>(Ac=w._surface_onRasterizeComplete=W.surface_onRasterizeComplete)(a,b,c),Bc=w._surface_onContextLost=a=>(Bc=w._surface_onContextLost=W.surface_onContextLost)(a);
w._skwasm_isMultiThreaded=()=>(w._skwasm_isMultiThreaded=W.skwasm_isMultiThreaded)();w._lineMetrics_create=(a,b,c,e,f,h,l,m,p)=>(w._lineMetrics_create=W.lineMetrics_create)(a,b,c,e,f,h,l,m,p);w._lineMetrics_dispose=a=>(w._lineMetrics_dispose=W.lineMetrics_dispose)(a);w._lineMetrics_getHardBreak=a=>(w._lineMetrics_getHardBreak=W.lineMetrics_getHardBreak)(a);w._lineMetrics_getAscent=a=>(w._lineMetrics_getAscent=W.lineMetrics_getAscent)(a);w._lineMetrics_getDescent=a=>(w._lineMetrics_getDescent=W.lineMetrics_getDescent)(a);
w._lineMetrics_getUnscaledAscent=a=>(w._lineMetrics_getUnscaledAscent=W.lineMetrics_getUnscaledAscent)(a);w._lineMetrics_getHeight=a=>(w._lineMetrics_getHeight=W.lineMetrics_getHeight)(a);w._lineMetrics_getWidth=a=>(w._lineMetrics_getWidth=W.lineMetrics_getWidth)(a);w._lineMetrics_getLeft=a=>(w._lineMetrics_getLeft=W.lineMetrics_getLeft)(a);w._lineMetrics_getBaseline=a=>(w._lineMetrics_getBaseline=W.lineMetrics_getBaseline)(a);w._lineMetrics_getLineNumber=a=>(w._lineMetrics_getLineNumber=W.lineMetrics_getLineNumber)(a);
w._lineMetrics_getStartIndex=a=>(w._lineMetrics_getStartIndex=W.lineMetrics_getStartIndex)(a);w._lineMetrics_getEndIndex=a=>(w._lineMetrics_getEndIndex=W.lineMetrics_getEndIndex)(a);w._paragraph_dispose=a=>(w._paragraph_dispose=W.paragraph_dispose)(a);w._paragraph_getWidth=a=>(w._paragraph_getWidth=W.paragraph_getWidth)(a);w._paragraph_getHeight=a=>(w._paragraph_getHeight=W.paragraph_getHeight)(a);w._paragraph_getLongestLine=a=>(w._paragraph_getLongestLine=W.paragraph_getLongestLine)(a);
w._paragraph_getMinIntrinsicWidth=a=>(w._paragraph_getMinIntrinsicWidth=W.paragraph_getMinIntrinsicWidth)(a);w._paragraph_getMaxIntrinsicWidth=a=>(w._paragraph_getMaxIntrinsicWidth=W.paragraph_getMaxIntrinsicWidth)(a);w._paragraph_getAlphabeticBaseline=a=>(w._paragraph_getAlphabeticBaseline=W.paragraph_getAlphabeticBaseline)(a);w._paragraph_getIdeographicBaseline=a=>(w._paragraph_getIdeographicBaseline=W.paragraph_getIdeographicBaseline)(a);
w._paragraph_getDidExceedMaxLines=a=>(w._paragraph_getDidExceedMaxLines=W.paragraph_getDidExceedMaxLines)(a);w._paragraph_layout=(a,b)=>(w._paragraph_layout=W.paragraph_layout)(a,b);w._paragraph_getPositionForOffset=(a,b,c,e)=>(w._paragraph_getPositionForOffset=W.paragraph_getPositionForOffset)(a,b,c,e);w._paragraph_getClosestGlyphInfoAtCoordinate=(a,b,c,e,f,h)=>(w._paragraph_getClosestGlyphInfoAtCoordinate=W.paragraph_getClosestGlyphInfoAtCoordinate)(a,b,c,e,f,h);
w._paragraph_getGlyphInfoAt=(a,b,c,e,f)=>(w._paragraph_getGlyphInfoAt=W.paragraph_getGlyphInfoAt)(a,b,c,e,f);w._paragraph_getWordBoundary=(a,b,c)=>(w._paragraph_getWordBoundary=W.paragraph_getWordBoundary)(a,b,c);w._paragraph_getLineCount=a=>(w._paragraph_getLineCount=W.paragraph_getLineCount)(a);w._paragraph_getLineNumberAt=(a,b)=>(w._paragraph_getLineNumberAt=W.paragraph_getLineNumberAt)(a,b);
w._paragraph_getLineMetricsAtIndex=(a,b)=>(w._paragraph_getLineMetricsAtIndex=W.paragraph_getLineMetricsAtIndex)(a,b);w._textBoxList_dispose=a=>(w._textBoxList_dispose=W.textBoxList_dispose)(a);w._textBoxList_getLength=a=>(w._textBoxList_getLength=W.textBoxList_getLength)(a);w._textBoxList_getBoxAtIndex=(a,b,c)=>(w._textBoxList_getBoxAtIndex=W.textBoxList_getBoxAtIndex)(a,b,c);w._paragraph_getBoxesForRange=(a,b,c,e,f)=>(w._paragraph_getBoxesForRange=W.paragraph_getBoxesForRange)(a,b,c,e,f);
w._paragraph_getBoxesForPlaceholders=a=>(w._paragraph_getBoxesForPlaceholders=W.paragraph_getBoxesForPlaceholders)(a);w._paragraph_getUnresolvedCodePoints=(a,b,c)=>(w._paragraph_getUnresolvedCodePoints=W.paragraph_getUnresolvedCodePoints)(a,b,c);w._paragraphBuilder_dispose=a=>(w._paragraphBuilder_dispose=W.paragraphBuilder_dispose)(a);w._paragraphBuilder_addPlaceholder=(a,b,c,e,f,h)=>(w._paragraphBuilder_addPlaceholder=W.paragraphBuilder_addPlaceholder)(a,b,c,e,f,h);
w._paragraphBuilder_addText=(a,b)=>(w._paragraphBuilder_addText=W.paragraphBuilder_addText)(a,b);w._paragraphBuilder_getUtf8Text=(a,b)=>(w._paragraphBuilder_getUtf8Text=W.paragraphBuilder_getUtf8Text)(a,b);w._paragraphBuilder_pushStyle=(a,b)=>(w._paragraphBuilder_pushStyle=W.paragraphBuilder_pushStyle)(a,b);w._paragraphBuilder_pop=a=>(w._paragraphBuilder_pop=W.paragraphBuilder_pop)(a);w._unicodePositionBuffer_create=a=>(w._unicodePositionBuffer_create=W.unicodePositionBuffer_create)(a);
w._unicodePositionBuffer_getDataPointer=a=>(w._unicodePositionBuffer_getDataPointer=W.unicodePositionBuffer_getDataPointer)(a);w._unicodePositionBuffer_free=a=>(w._unicodePositionBuffer_free=W.unicodePositionBuffer_free)(a);w._lineBreakBuffer_create=a=>(w._lineBreakBuffer_create=W.lineBreakBuffer_create)(a);w._lineBreakBuffer_getDataPointer=a=>(w._lineBreakBuffer_getDataPointer=W.lineBreakBuffer_getDataPointer)(a);w._lineBreakBuffer_free=a=>(w._lineBreakBuffer_free=W.lineBreakBuffer_free)(a);
w._paragraphStyle_create=()=>(w._paragraphStyle_create=W.paragraphStyle_create)();w._paragraphStyle_dispose=a=>(w._paragraphStyle_dispose=W.paragraphStyle_dispose)(a);w._paragraphStyle_setTextAlign=(a,b)=>(w._paragraphStyle_setTextAlign=W.paragraphStyle_setTextAlign)(a,b);w._paragraphStyle_setTextDirection=(a,b)=>(w._paragraphStyle_setTextDirection=W.paragraphStyle_setTextDirection)(a,b);w._paragraphStyle_setMaxLines=(a,b)=>(w._paragraphStyle_setMaxLines=W.paragraphStyle_setMaxLines)(a,b);
w._paragraphStyle_setHeight=(a,b)=>(w._paragraphStyle_setHeight=W.paragraphStyle_setHeight)(a,b);w._paragraphStyle_setTextHeightBehavior=(a,b,c)=>(w._paragraphStyle_setTextHeightBehavior=W.paragraphStyle_setTextHeightBehavior)(a,b,c);w._paragraphStyle_setEllipsis=(a,b)=>(w._paragraphStyle_setEllipsis=W.paragraphStyle_setEllipsis)(a,b);w._paragraphStyle_setStrutStyle=(a,b)=>(w._paragraphStyle_setStrutStyle=W.paragraphStyle_setStrutStyle)(a,b);
w._paragraphStyle_setTextStyle=(a,b)=>(w._paragraphStyle_setTextStyle=W.paragraphStyle_setTextStyle)(a,b);w._paragraphStyle_setApplyRoundingHack=(a,b)=>(w._paragraphStyle_setApplyRoundingHack=W.paragraphStyle_setApplyRoundingHack)(a,b);w._strutStyle_create=()=>(w._strutStyle_create=W.strutStyle_create)();w._strutStyle_dispose=a=>(w._strutStyle_dispose=W.strutStyle_dispose)(a);w._strutStyle_setFontFamilies=(a,b,c)=>(w._strutStyle_setFontFamilies=W.strutStyle_setFontFamilies)(a,b,c);
w._strutStyle_setFontSize=(a,b)=>(w._strutStyle_setFontSize=W.strutStyle_setFontSize)(a,b);w._strutStyle_setHeight=(a,b)=>(w._strutStyle_setHeight=W.strutStyle_setHeight)(a,b);w._strutStyle_setHalfLeading=(a,b)=>(w._strutStyle_setHalfLeading=W.strutStyle_setHalfLeading)(a,b);w._strutStyle_setLeading=(a,b)=>(w._strutStyle_setLeading=W.strutStyle_setLeading)(a,b);w._strutStyle_setFontStyle=(a,b,c)=>(w._strutStyle_setFontStyle=W.strutStyle_setFontStyle)(a,b,c);
w._strutStyle_setForceStrutHeight=(a,b)=>(w._strutStyle_setForceStrutHeight=W.strutStyle_setForceStrutHeight)(a,b);w._textStyle_create=()=>(w._textStyle_create=W.textStyle_create)();w._textStyle_copy=a=>(w._textStyle_copy=W.textStyle_copy)(a);w._textStyle_dispose=a=>(w._textStyle_dispose=W.textStyle_dispose)(a);w._textStyle_setColor=(a,b)=>(w._textStyle_setColor=W.textStyle_setColor)(a,b);w._textStyle_setDecoration=(a,b)=>(w._textStyle_setDecoration=W.textStyle_setDecoration)(a,b);
w._textStyle_setDecorationColor=(a,b)=>(w._textStyle_setDecorationColor=W.textStyle_setDecorationColor)(a,b);w._textStyle_setDecorationStyle=(a,b)=>(w._textStyle_setDecorationStyle=W.textStyle_setDecorationStyle)(a,b);w._textStyle_setDecorationThickness=(a,b)=>(w._textStyle_setDecorationThickness=W.textStyle_setDecorationThickness)(a,b);w._textStyle_setFontStyle=(a,b,c)=>(w._textStyle_setFontStyle=W.textStyle_setFontStyle)(a,b,c);
w._textStyle_setTextBaseline=(a,b)=>(w._textStyle_setTextBaseline=W.textStyle_setTextBaseline)(a,b);w._textStyle_clearFontFamilies=a=>(w._textStyle_clearFontFamilies=W.textStyle_clearFontFamilies)(a);w._textStyle_addFontFamilies=(a,b,c)=>(w._textStyle_addFontFamilies=W.textStyle_addFontFamilies)(a,b,c);w._textStyle_setFontSize=(a,b)=>(w._textStyle_setFontSize=W.textStyle_setFontSize)(a,b);w._textStyle_setLetterSpacing=(a,b)=>(w._textStyle_setLetterSpacing=W.textStyle_setLetterSpacing)(a,b);
w._textStyle_setWordSpacing=(a,b)=>(w._textStyle_setWordSpacing=W.textStyle_setWordSpacing)(a,b);w._textStyle_setHeight=(a,b)=>(w._textStyle_setHeight=W.textStyle_setHeight)(a,b);w._textStyle_setHalfLeading=(a,b)=>(w._textStyle_setHalfLeading=W.textStyle_setHalfLeading)(a,b);w._textStyle_setLocale=(a,b)=>(w._textStyle_setLocale=W.textStyle_setLocale)(a,b);w._textStyle_setBackground=(a,b)=>(w._textStyle_setBackground=W.textStyle_setBackground)(a,b);
w._textStyle_setForeground=(a,b)=>(w._textStyle_setForeground=W.textStyle_setForeground)(a,b);w._textStyle_addShadow=(a,b,c,e,f)=>(w._textStyle_addShadow=W.textStyle_addShadow)(a,b,c,e,f);w._textStyle_addFontFeature=(a,b,c)=>(w._textStyle_addFontFeature=W.textStyle_addFontFeature)(a,b,c);w._textStyle_setFontVariations=(a,b,c,e)=>(w._textStyle_setFontVariations=W.textStyle_setFontVariations)(a,b,c,e);w._vertices_create=(a,b,c,e,f,h,l)=>(w._vertices_create=W.vertices_create)(a,b,c,e,f,h,l);
w._vertices_dispose=a=>(w._vertices_dispose=W.vertices_dispose)(a);w._animatedImage_create=(a,b,c)=>(w._animatedImage_create=W.animatedImage_create)(a,b,c);w._animatedImage_dispose=a=>(w._animatedImage_dispose=W.animatedImage_dispose)(a);w._animatedImage_getFrameCount=a=>(w._animatedImage_getFrameCount=W.animatedImage_getFrameCount)(a);w._animatedImage_getRepetitionCount=a=>(w._animatedImage_getRepetitionCount=W.animatedImage_getRepetitionCount)(a);
w._animatedImage_getCurrentFrameDurationMilliseconds=a=>(w._animatedImage_getCurrentFrameDurationMilliseconds=W.animatedImage_getCurrentFrameDurationMilliseconds)(a);w._animatedImage_decodeNextFrame=a=>(w._animatedImage_decodeNextFrame=W.animatedImage_decodeNextFrame)(a);w._animatedImage_getCurrentFrame=a=>(w._animatedImage_getCurrentFrame=W.animatedImage_getCurrentFrame)(a);w._skwasm_isHeavy=()=>(w._skwasm_isHeavy=W.skwasm_isHeavy)();
w._paragraphBuilder_create=(a,b)=>(w._paragraphBuilder_create=W.paragraphBuilder_create)(a,b);w._paragraphBuilder_build=a=>(w._paragraphBuilder_build=W.paragraphBuilder_build)(a);w._paragraphBuilder_setGraphemeBreaksUtf16=(a,b)=>(w._paragraphBuilder_setGraphemeBreaksUtf16=W.paragraphBuilder_setGraphemeBreaksUtf16)(a,b);w._paragraphBuilder_setWordBreaksUtf16=(a,b)=>(w._paragraphBuilder_setWordBreaksUtf16=W.paragraphBuilder_setWordBreaksUtf16)(a,b);
w._paragraphBuilder_setLineBreaksUtf16=(a,b)=>(w._paragraphBuilder_setLineBreaksUtf16=W.paragraphBuilder_setLineBreaksUtf16)(a,b);var Ab=a=>(Ab=W.malloc)(a),Cc=(a,b)=>(Cc=W._emscripten_timeout)(a,b),X=(a,b)=>(X=W.setThrew)(a,b),Y=a=>(Y=W._emscripten_stack_restore)(a),lc=a=>(lc=W._emscripten_stack_alloc)(a),Z=()=>(Z=W.emscripten_stack_get_current)(),Aa=(a,b)=>(Aa=W._emscripten_wasm_worker_initialize)(a,b);
function Ec(a,b,c){var e=Z();try{return B.get(a)(b,c)}catch(f){Y(e);if(f!==f+0)throw f;X(1,0)}}function Ic(a,b,c){var e=Z();try{B.get(a)(b,c)}catch(f){Y(e);if(f!==f+0)throw f;X(1,0)}}function Dc(a,b){var c=Z();try{return B.get(a)(b)}catch(e){Y(c);if(e!==e+0)throw e;X(1,0)}}function Jc(a,b,c,e){var f=Z();try{B.get(a)(b,c,e)}catch(h){Y(f);if(h!==h+0)throw h;X(1,0)}}function Fc(a,b,c,e,f){var h=Z();try{return B.get(a)(b,c,e,f)}catch(l){Y(h);if(l!==l+0)throw l;X(1,0)}}
function Kc(a,b,c,e,f,h,l,m){var p=Z();try{B.get(a)(b,c,e,f,h,l,m)}catch(v){Y(p);if(v!==v+0)throw v;X(1,0)}}function Hc(a,b){var c=Z();try{B.get(a)(b)}catch(e){Y(c);if(e!==e+0)throw e;X(1,0)}}function Gc(a,b,c,e,f,h,l){var m=Z();try{return B.get(a)(b,c,e,f,h,l)}catch(p){Y(m);if(p!==p+0)throw p;X(1,0)}}w.wasmMemory=g;w.wasmExports=W;w.stackAlloc=mc;
w.addFunction=(a,b)=>{if(!T){T=new WeakMap;var c=B.length;if(T)for(var e=0;e<0+c;e++){var f=B.get(e);f&&T.set(f,e)}}if(c=T.get(a)||0)return c;if(kc.length)c=kc.pop();else{try{B.grow(1)}catch(m){if(!(m instanceof RangeError))throw m;throw"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH.";}c=B.length-1}try{B.set(c,a)}catch(m){if(!(m instanceof TypeError))throw m;if("function"==typeof WebAssembly.Function){e=WebAssembly.Function;f={i:"i32",j:"i64",f:"f32",d:"f64",e:"externref",p:"i32"};for(var h={parameters:[],
results:"v"==b[0]?[]:[f[b[0]]]},l=1;l<b.length;++l)h.parameters.push(f[b[l]]);b=new e(h,a)}else{e=[1];f=b.slice(0,1);b=b.slice(1);h={i:127,p:127,j:126,f:125,d:124,e:111};e.push(96);l=b.length;128>l?e.push(l):e.push(l%128|128,l>>7);for(l=0;l<b.length;++l)e.push(h[b[l]]);"v"==f?e.push(0):e.push(1,h[f]);b=[0,97,115,109,1,0,0,0,1];f=e.length;128>f?b.push(f):b.push(f%128|128,f>>7);b.push(...e);b.push(2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0);b=new WebAssembly.Module(new Uint8Array(b));b=(new WebAssembly.Instance(b,
{e:{f:a}})).exports.f}B.set(c,b)}T.set(a,c);return c};var Mc,Nc;A=function Oc(){Mc||Pc();Mc||(A=Oc)};function Pc(){if(!(0<z))if(ka)ea(w),ya();else{if(!Nc&&(Nc=1,Ea(va),0<z))return;Mc||(Mc=1,w.calledRun=1,ra||(ya(),ea(w),Ea(xa)))}}Pc();moduleRtn=ha;
return moduleRtn;
}
);
})();
export default skwasm;
File diff suppressed because one or more lines are too long
Binary file not shown.
@@ -0,0 +1,146 @@
var skwasm_heavy = (() => {
var _scriptName = typeof document != 'undefined' ? document.currentScript?.src : undefined;
return (
function(moduleArg = {}) {
var moduleRtn;
function d(){g.buffer!=k.buffer&&n();return k}function q(){g.buffer!=k.buffer&&n();return aa}function r(){g.buffer!=k.buffer&&n();return ba}function t(){g.buffer!=k.buffer&&n();return ca}function u(){g.buffer!=k.buffer&&n();return da}var w=moduleArg,ea,fa,ha=new Promise((a,b)=>{ea=a;fa=b}),ia="object"==typeof window,ja="function"==typeof importScripts,ka=w.$ww,la=Object.assign({},w),x="";function ma(a){return w.locateFile?w.locateFile(a,x):x+a}var na,oa;
if(ia||ja)ja?x=self.location.href:"undefined"!=typeof document&&document.currentScript&&(x=document.currentScript.src),_scriptName&&(x=_scriptName),x.startsWith("blob:")?x="":x=x.substr(0,x.replace(/[?#].*/,"").lastIndexOf("/")+1),ja&&(oa=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),na=a=>fetch(a,{credentials:"same-origin"}).then(b=>b.ok?b.arrayBuffer():Promise.reject(Error(b.status+" : "+b.url)));
var pa=console.log.bind(console),y=console.error.bind(console);Object.assign(w,la);la=null;var g,qa,ra=!1,sa,k,aa,ta,ua,ba,ca,da;function n(){var a=g.buffer;k=new Int8Array(a);ta=new Int16Array(a);aa=new Uint8Array(a);ua=new Uint16Array(a);ba=new Int32Array(a);ca=new Uint32Array(a);da=new Float32Array(a);new Float64Array(a)}w.wasmMemory?g=w.wasmMemory:g=new WebAssembly.Memory({initial:256,maximum:32768,shared:!0});n();var va=[],wa=[],xa=[];
function ya(){ka?(za=1,Aa(w.sb,w.sz),removeEventListener("message",Ba),Ca=Ca.forEach(Da),addEventListener("message",Da)):Ea(wa)}var z=0,Fa=null,A=null;function Ga(a){a="Aborted("+a+")";y(a);ra=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");fa(a);throw a;}var Ha=a=>a.startsWith("data:application/octet-stream;base64,"),Ia;
function Ja(a){return na(a).then(b=>new Uint8Array(b),()=>{if(oa)var b=oa(a);else throw"both async and sync fetching of the wasm failed";return b})}function Ka(a,b,c){return Ja(a).then(e=>WebAssembly.instantiate(e,b)).then(c,e=>{y(`failed to asynchronously prepare wasm: ${e}`);Ga(e)})}
function La(a,b){var c=Ia;return"function"!=typeof WebAssembly.instantiateStreaming||Ha(c)||"function"!=typeof fetch?Ka(c,a,b):fetch(c,{credentials:"same-origin"}).then(e=>WebAssembly.instantiateStreaming(e,a).then(b,function(f){y(`wasm streaming compile failed: ${f}`);y("falling back to ArrayBuffer instantiation");return Ka(c,a,b)}))}function Ma(a){this.name="ExitStatus";this.message=`Program terminated with exit(${a})`;this.status=a}
var Ca=[],Na=a=>{if(!(a instanceof Ma||"unwind"==a))throw a;},Oa=0,Pa=a=>{sa=a;za||0<Oa||(ra=!0);throw new Ma(a);},Qa=a=>{if(!ra)try{if(a(),!(za||0<Oa))try{sa=a=sa,Pa(a)}catch(b){Na(b)}}catch(b){Na(b)}},B,Da=a=>{let b=a.data,c=b._wsc;c&&Qa(()=>B.get(c)(...b.x))},Ba=a=>{Ca.push(a)},Ea=a=>{a.forEach(b=>b(w))},za=w.noExitRuntime||!0;class Ra{constructor(a){this.u=a-24}}
var Sa=0,Ta=0,Ua="undefined"!=typeof TextDecoder?new TextDecoder:void 0,Va=(a,b=0,c=NaN)=>{var e=b+c;for(c=b;a[c]&&!(c>=e);)++c;if(16<c-b&&a.buffer&&Ua)return Ua.decode(a.slice(b,c));for(e="";b<c;){var f=a[b++];if(f&128){var h=a[b++]&63;if(192==(f&224))e+=String.fromCharCode((f&31)<<6|h);else{var l=a[b++]&63;f=224==(f&240)?(f&15)<<12|h<<6|l:(f&7)<<18|h<<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},
Wa=(a,b)=>a?Va(q(),a,b):"",C={},Xa=1,Ya={},D=(a,b,c)=>{var e=q();if(0<c){var f=b;c=b+c-1;for(var h=0;h<a.length;++h){var l=a.charCodeAt(h);if(55296<=l&&57343>=l){var m=a.charCodeAt(++h);l=65536+((l&1023)<<10)|m&1023}if(127>=l){if(b>=c)break;e[b++]=l}else{if(2047>=l){if(b+1>=c)break;e[b++]=192|l>>6}else{if(65535>=l){if(b+2>=c)break;e[b++]=224|l>>12}else{if(b+3>=c)break;e[b++]=240|l>>18;e[b++]=128|l>>12&63}e[b++]=128|l>>6&63}e[b++]=128|l&63}}e[b]=0;a=b-f}else a=0;return a},E,Za=a=>{var b=a.getExtension("ANGLE_instanced_arrays");
b&&(a.vertexAttribDivisor=(c,e)=>b.vertexAttribDivisorANGLE(c,e),a.drawArraysInstanced=(c,e,f,h)=>b.drawArraysInstancedANGLE(c,e,f,h),a.drawElementsInstanced=(c,e,f,h,l)=>b.drawElementsInstancedANGLE(c,e,f,h,l))},$a=a=>{var b=a.getExtension("OES_vertex_array_object");b&&(a.createVertexArray=()=>b.createVertexArrayOES(),a.deleteVertexArray=c=>b.deleteVertexArrayOES(c),a.bindVertexArray=c=>b.bindVertexArrayOES(c),a.isVertexArray=c=>b.isVertexArrayOES(c))},ab=a=>{var b=a.getExtension("WEBGL_draw_buffers");
b&&(a.drawBuffers=(c,e)=>b.drawBuffersWEBGL(c,e))},bb=a=>{a.H=a.getExtension("WEBGL_draw_instanced_base_vertex_base_instance")},cb=a=>{a.K=a.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance")},db=a=>{var b="ANGLE_instanced_arrays EXT_blend_minmax EXT_disjoint_timer_query EXT_frag_depth EXT_shader_texture_lod EXT_sRGB OES_element_index_uint OES_fbo_render_mipmap OES_standard_derivatives OES_texture_float OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_depth_texture WEBGL_draw_buffers EXT_color_buffer_float EXT_conservative_depth EXT_disjoint_timer_query_webgl2 EXT_texture_norm16 NV_shader_noperspective_interpolation WEBGL_clip_cull_distance EXT_clip_control EXT_color_buffer_half_float EXT_depth_clamp EXT_float_blend EXT_polygon_offset_clamp EXT_texture_compression_bptc EXT_texture_compression_rgtc EXT_texture_filter_anisotropic KHR_parallel_shader_compile OES_texture_float_linear WEBGL_blend_func_extended WEBGL_compressed_texture_astc WEBGL_compressed_texture_etc WEBGL_compressed_texture_etc1 WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context WEBGL_multi_draw WEBGL_polygon_mode".split(" ");
return(a.getSupportedExtensions()||[]).filter(c=>b.includes(c))},eb=1,fb=[],F=[],gb=[],hb=[],G=[],H=[],ib=[],I=[],J=[],K=[],L=[],jb={},kb={},lb=4,mb=0,M=a=>{for(var b=eb++,c=a.length;c<b;c++)a[c]=null;return b},O=(a,b,c,e)=>{for(var f=0;f<a;f++){var h=E[c](),l=h&&M(e);h?(h.name=l,e[l]=h):N||=1282;r()[b+4*f>>2]=l}},ob=(a,b)=>{a.u||(a.u=a.getContext,a.getContext=function(e,f){f=a.u(e,f);return"webgl"==e==f instanceof WebGLRenderingContext?f:null});var c=1<b.J?a.getContext("webgl2",b):a.getContext("webgl",
b);return c?nb(c,b):0},nb=(a,b)=>{var c=M(I),e={handle:c,attributes:b,version:b.J,o:a};a.canvas&&(a.canvas.N=e);I[c]=e;("undefined"==typeof b.I||b.I)&&pb(e);return c},pb=a=>{a||=P;if(!a.T){a.T=!0;var b=a.o;b.U=b.getExtension("WEBGL_multi_draw");b.R=b.getExtension("EXT_polygon_offset_clamp");b.P=b.getExtension("EXT_clip_control");b.Z=b.getExtension("WEBGL_polygon_mode");Za(b);$a(b);ab(b);bb(b);cb(b);2<=a.version&&(b.m=b.getExtension("EXT_disjoint_timer_query_webgl2"));if(2>a.version||!b.m)b.m=b.getExtension("EXT_disjoint_timer_query");
db(b).forEach(c=>{c.includes("lose_context")||c.includes("debug")||b.getExtension(c)})}},N,P,qb=a=>{E.bindVertexArray(ib[a])},rb=(a,b)=>{for(var c=0;c<a;c++){var e=r()[b+4*c>>2],f=G[e];f&&(E.deleteTexture(f),f.name=0,G[e]=null)}},sb=(a,b)=>{for(var c=0;c<a;c++){var e=r()[b+4*c>>2];E.deleteVertexArray(ib[e]);ib[e]=null}},tb=[],ub=(a,b)=>{O(a,b,"createVertexArray",ib)},vb=(a,b)=>{t()[a>>2]=b;var c=t()[a>>2];t()[a+4>>2]=(b-c)/4294967296};
function wb(){var a=db(E);return a=a.concat(a.map(b=>"GL_"+b))}
var xb=(a,b,c)=>{if(b){var e=void 0;switch(a){case 36346:e=1;break;case 36344:0!=c&&1!=c&&(N||=1280);return;case 34814:case 36345:e=0;break;case 34466:var f=E.getParameter(34467);e=f?f.length:0;break;case 33309:if(2>P.version){N||=1282;return}e=wb().length;break;case 33307:case 33308:if(2>P.version){N||=1280;return}e=33307==a?3:0}if(void 0===e)switch(f=E.getParameter(a),typeof f){case "number":e=f;break;case "boolean":e=f?1:0;break;case "string":N||=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:N||=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:r()[b+4*a>>2]=f[a];break;case 2:u()[b+4*a>>2]=f[a];break;case 4:d()[b+a]=f[a]?1:0}return}try{e=f.name|0}catch(h){N||=1280;y(`GL_INVALID_ENUM in glGet${c}v: Unknown object returned from WebGL getParameter(${a})! (error: ${h})`);return}}break;default:N||=1280;y(`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:vb(b,e);break;case 0:r()[b>>2]=e;break;case 2:u()[b>>2]=e;break;case 4:d()[b]=e?1:0}}else N||=1281},yb=(a,b)=>xb(a,b,0),zb=(a,b,c)=>{if(c){a=J[a];b=2>P.version?E.m.getQueryObjectEXT(a,b):E.getQueryParameter(a,b);var e;"boolean"==typeof b?e=b?1:0:e=b;vb(c,e)}else N||=1281},Bb=a=>{for(var b=0,c=0;c<a.length;++c){var e=a.charCodeAt(c);127>=e?b++:2047>=e?b+=2:55296<=e&&57343>=e?(b+=4,++c):b+=3}b+=1;(c=Ab(b))&&D(a,c,b);return c},Cb=a=>{var b=jb[a];if(!b){switch(a){case 7939:b=Bb(wb().join(" "));
break;case 7936:case 7937:case 37445:case 37446:(b=E.getParameter(a))||(N||=1280);b=b?Bb(b):0;break;case 7938:b=E.getParameter(7938);var c=`OpenGL ES 2.0 (${b})`;2<=P.version&&(c=`OpenGL ES 3.0 (${b})`);b=Bb(c);break;case 35724:b=E.getParameter(35724);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=Bb(b);break;default:N||=1280}jb[a]=b}return b},Db=(a,b)=>{if(2>P.version)return N||=1282,0;var c=kb[a];if(c)return 0>
b||b>=c.length?(N||=1281,0):c[b];switch(a){case 7939:return c=wb().map(Bb),c=kb[a]=c,0>b||b>=c.length?(N||=1281,0):c[b];default:return N||=1280,0}},Eb=a=>"]"==a.slice(-1)&&a.lastIndexOf("["),Fb=a=>{a-=5120;0==a?a=d():1==a?a=q():2==a?(g.buffer!=k.buffer&&n(),a=ta):4==a?a=r():6==a?a=u():5==a||28922==a||28520==a||30779==a||30782==a?a=t():(g.buffer!=k.buffer&&n(),a=ua);return a},Gb=(a,b,c,e,f)=>{a=Fb(a);b=e*((mb||c)*({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[b-6402]||1)*a.BYTES_PER_ELEMENT+
lb-1&-lb);return a.subarray(f>>>31-Math.clz32(a.BYTES_PER_ELEMENT),f+b>>>31-Math.clz32(a.BYTES_PER_ELEMENT))},Q=a=>{var b=E.O;if(b){var c=b.v[a];"number"==typeof c&&(b.v[a]=c=E.getUniformLocation(b,b.L[a]+(0<c?`[${c}]`:"")));return c}N||=1282},R=[],Hb=[],Ib={},Kb=()=>{if(!Jb){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",_:"./this.program"},b;for(b in Ib)void 0===
Ib[b]?delete a[b]:a[b]=Ib[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);Jb=c}return Jb},Jb,Lb=[null,[],[]];function Mb(){}function Nb(){}function Ob(){}function Pb(){}function Qb(){}function Rb(){}function Sb(){}function Tb(){}function Ub(){}function Vb(){}function Wb(){}function Xb(){}function Yb(){}function Zb(){}function $b(){}function ac(){}function bc(){}function cc(){}function dc(){}function ec(){}function fc(){}function gc(){}function hc(){}function S(){}function ic(){}function jc(){}
var T,kc=[],mc=a=>lc(a);w.stackAlloc=mc;ka&&(C[0]=this,addEventListener("message",Ba));for(var V=0;32>V;++V)tb.push(Array(V));var nc=new Float32Array(288);for(V=0;288>=V;++V)R[V]=nc.subarray(0,V);var oc=new Int32Array(288);for(V=0;288>=V;++V)Hb[V]=oc.subarray(0,V);
(function(){if(w.skwasmSingleThreaded){ac=function(){return!0};let e;Nb=function(f,h){e=h};Ob=function(){return performance.now()};S=function(f){queueMicrotask(()=>e(f))}}else{ac=function(){return!1};let e=0;Nb=function(f,h){function l({data:m}){const p=m.l;p&&("syncTimeOrigin"==p?e=performance.timeOrigin-m.timeOrigin:h(m))}f?(C[f].addEventListener("message",l),C[f].postMessage({l:"syncTimeOrigin",timeOrigin:performance.timeOrigin})):addEventListener("message",l)};Ob=function(){return performance.now()+
e};S=function(f,h,l){l?C[l].postMessage(f,{transfer:h}):postMessage(f,{transfer:h})}}const a=new Map,b=new Map,c=new Map;Pb=function(e){Nb(e,function(f){var h=f.l;if(h)switch(h){case "transferCanvas":pc(f.g,f.canvas,f.h);break;case "onInitialized":qc(f.g,f.h);break;case "resizeSurface":rc(f.g,f.width,f.height,f.h);break;case "onResizeComplete":sc(f.g,f.h);break;case "triggerContextLoss":tc(f.g,f.h);break;case "onContextLossTriggered":uc(f.g,f.h);break;case "reportContextLost":vc(f.g,f.h);break;case "renderPictures":wc(f.g,
f.W,f.V,f.h,Ob());break;case "onRenderComplete":xc(f.g,f.h,{imageBitmaps:f.S,rasterStartMilliseconds:f.Y,rasterEndMilliseconds:f.X});break;case "setAssociatedObject":c.set(f.F,f.object);break;case "disposeAssociatedObject":f=f.F;h=c.get(f);h.close&&h.close();c.delete(f);break;case "disposeSurface":yc(f.g);break;case "rasterizeImage":zc(f.g,f.image,f.format,f.h);break;case "onRasterizeComplete":Ac(f.g,f.data,f.h);break;default:console.warn(`unrecognized skwasm message: ${h}`)}})};ic=function(e,f,h){S({l:"setAssociatedObject",
F:f,object:h},[h],e)};Zb=function(e){return c.get(e)};Yb=function(e,f){S({l:"disposeAssociatedObject",F:f},[],e)};Sb=function(e,f){S({l:"disposeSurface",g:f},[],e)};Wb=function(e,f,h,l){S({l:"transferCanvas",g:f,canvas:h,h:l},[h],e)};ec=function(e,f,h){S({l:"onInitialized",g:e,$:f,h},[])};Vb=function(e,f,h,l,m){S({l:"resizeSurface",g:f,width:h,height:l,h:m},[],e)};fc=function(e,f){S({l:"onResizeComplete",g:e,h:f},[])};gc=function(e,f,h){e=b.get(e);e.width=f;e.height=h};Ub=function(e,f,h,l,m){S({l:"renderPictures",
g:f,W:h,V:l,h:m},[],e)};hc=async function(e,f,h,l){f||=[];S({l:"onRenderComplete",g:e,h:l,S:f,Y:h,X:Ob()},[...f])};Mb=function(e,f){f||=[];e=b.get(e);f.push(e.transferToImageBitmap());return f};Tb=function(e,f,h,l,m){S({l:"rasterizeImage",g:f,image:h,format:l,h:m},[],e)};bc=function(e,f,h){S({l:"onRasterizeComplete",g:e,data:f,h})};Xb=function(e,f,h){S({l:"triggerContextLoss",g:f,h},[],e)};cc=function(e,f){S({l:"onContextLossTriggered",g:e,h:f},[])};dc=function(e,f){S({l:"reportContextLost",g:e,h:f},
[])};jc=function(){P.o.getExtension("WEBGL_lose_context").loseContext()};$b=function(e,f,h){f=ob(e,{J:2,alpha:!0,depth:!0,stencil:!0,antialias:f,premultipliedAlpha:!0,preserveDrawingBuffer:!1,powerPreference:"default",failIfMajorPerformanceCaveat:!1,I:!0});b.set(f,e);var l=function(m){m.preventDefault();Bc(h);e.removeEventListener("webglcontextlost",l)};e.addEventListener("webglcontextlost",l);a.set(f,l);return f};Rb=function(e){const f=b.get(e),h=a.get(e);f&&h&&f.removeEventListener("webglcontextlost",
h);P===I[e]&&(P=null);"object"==typeof JSEvents&&JSEvents.ba(I[e].o.canvas);I[e]&&I[e].o.canvas&&(I[e].o.canvas.N=void 0);I[e]=null;b.delete(e);a.delete(e)};Qb=function(e,f,h){const l=P.o,m=l.createTexture();l.bindTexture(l.TEXTURE_2D,m);l.pixelStorei(l.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);l.texImage2D(l.TEXTURE_2D,0,l.RGBA,f,h,0,l.RGBA,l.UNSIGNED_BYTE,e);l.pixelStorei(l.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);l.bindTexture(l.TEXTURE_2D,null);e=M(G);G[e]=m;return e}})();
var Lc={__cxa_throw:(a,b,c)=>{var e=new Ra(a);t()[e.u+16>>2]=0;t()[e.u+4>>2]=b;t()[e.u+8>>2]=c;Sa=a;Ta++;throw Sa;},__syscall_fcntl64:function(){return 0},__syscall_fstat64:()=>{},__syscall_ioctl:function(){return 0},__syscall_lstat64:()=>{},__syscall_newfstatat:()=>{},__syscall_openat:function(){},__syscall_stat64:()=>{},_abort_js:()=>{Ga("")},_emscripten_create_wasm_worker:(a,b)=>{let c=C[Xa]=new Worker(ma("skwasm_heavy.ww.js"));c.postMessage({$ww:Xa,wasm:qa,js:w.mainScriptUrlOrBlob||_scriptName,
wasmMemory:g,sb:a,sz:b});c.onmessage=Da;return Xa++},_emscripten_get_now_is_monotonic:()=>1,_emscripten_runtime_keepalive_clear:()=>{za=!1;Oa=0},_emscripten_throw_longjmp:()=>{throw Infinity;},_mmap_js:function(){return-52},_munmap_js:function(){},_setitimer_js:(a,b)=>{Ya[a]&&(clearTimeout(Ya[a].id),delete Ya[a]);if(!b)return 0;var c=setTimeout(()=>{delete Ya[a];Qa(()=>Cc(a,performance.now()))},b);Ya[a]={id:c,ca:b};return 0},_tzset_js:(a,b,c,e)=>{var f=(new Date).getFullYear(),h=(new Date(f,0,1)).getTimezoneOffset();
f=(new Date(f,6,1)).getTimezoneOffset();var l=Math.max(h,f);t()[a>>2]=60*l;r()[b>>2]=Number(h!=f);b=m=>{var p=Math.abs(m);return`UTC${0<=m?"-":"+"}${String(Math.floor(p/60)).padStart(2,"0")}${String(p%60).padStart(2,"0")}`};a=b(h);b=b(f);f<h?(D(a,c,17),D(b,e,17)):(D(a,e,17),D(b,c,17))},emscripten_console_warn:a=>{console.warn(Wa(a))},emscripten_get_now:()=>performance.now(),emscripten_glActiveTexture:a=>E.activeTexture(a),emscripten_glAttachShader:(a,b)=>{E.attachShader(F[a],H[b])},emscripten_glBeginQuery:(a,
b)=>{E.beginQuery(a,J[b])},emscripten_glBeginQueryEXT:(a,b)=>{E.m.beginQueryEXT(a,J[b])},emscripten_glBindAttribLocation:(a,b,c)=>{E.bindAttribLocation(F[a],b,Wa(c))},emscripten_glBindBuffer:(a,b)=>{35051==a?E.D=b:35052==a&&(E.s=b);E.bindBuffer(a,fb[b])},emscripten_glBindFramebuffer:(a,b)=>{E.bindFramebuffer(a,gb[b])},emscripten_glBindRenderbuffer:(a,b)=>{E.bindRenderbuffer(a,hb[b])},emscripten_glBindSampler:(a,b)=>{E.bindSampler(a,K[b])},emscripten_glBindTexture:(a,b)=>{E.bindTexture(a,G[b])},emscripten_glBindVertexArray:qb,
emscripten_glBindVertexArrayOES:qb,emscripten_glBlendColor:(a,b,c,e)=>E.blendColor(a,b,c,e),emscripten_glBlendEquation:a=>E.blendEquation(a),emscripten_glBlendFunc:(a,b)=>E.blendFunc(a,b),emscripten_glBlitFramebuffer:(a,b,c,e,f,h,l,m,p,v)=>E.blitFramebuffer(a,b,c,e,f,h,l,m,p,v),emscripten_glBufferData:(a,b,c,e)=>{2<=P.version?c&&b?E.bufferData(a,q(),e,c,b):E.bufferData(a,b,e):E.bufferData(a,c?q().subarray(c,c+b):b,e)},emscripten_glBufferSubData:(a,b,c,e)=>{2<=P.version?c&&E.bufferSubData(a,b,q(),
e,c):E.bufferSubData(a,b,q().subarray(e,e+c))},emscripten_glCheckFramebufferStatus:a=>E.checkFramebufferStatus(a),emscripten_glClear:a=>E.clear(a),emscripten_glClearColor:(a,b,c,e)=>E.clearColor(a,b,c,e),emscripten_glClearStencil:a=>E.clearStencil(a),emscripten_glClientWaitSync:(a,b,c,e)=>E.clientWaitSync(L[a],b,(c>>>0)+4294967296*e),emscripten_glColorMask:(a,b,c,e)=>{E.colorMask(!!a,!!b,!!c,!!e)},emscripten_glCompileShader:a=>{E.compileShader(H[a])},emscripten_glCompressedTexImage2D:(a,b,c,e,f,h,
l,m)=>{2<=P.version?E.s||!l?E.compressedTexImage2D(a,b,c,e,f,h,l,m):E.compressedTexImage2D(a,b,c,e,f,h,q(),m,l):E.compressedTexImage2D(a,b,c,e,f,h,q().subarray(m,m+l))},emscripten_glCompressedTexSubImage2D:(a,b,c,e,f,h,l,m,p)=>{2<=P.version?E.s||!m?E.compressedTexSubImage2D(a,b,c,e,f,h,l,m,p):E.compressedTexSubImage2D(a,b,c,e,f,h,l,q(),p,m):E.compressedTexSubImage2D(a,b,c,e,f,h,l,q().subarray(p,p+m))},emscripten_glCopyBufferSubData:(a,b,c,e,f)=>E.copyBufferSubData(a,b,c,e,f),emscripten_glCopyTexSubImage2D:(a,
b,c,e,f,h,l,m)=>E.copyTexSubImage2D(a,b,c,e,f,h,l,m),emscripten_glCreateProgram:()=>{var a=M(F),b=E.createProgram();b.name=a;b.C=b.A=b.B=0;b.G=1;F[a]=b;return a},emscripten_glCreateShader:a=>{var b=M(H);H[b]=E.createShader(a);return b},emscripten_glCullFace:a=>E.cullFace(a),emscripten_glDeleteBuffers:(a,b)=>{for(var c=0;c<a;c++){var e=r()[b+4*c>>2],f=fb[e];f&&(E.deleteBuffer(f),f.name=0,fb[e]=null,e==E.D&&(E.D=0),e==E.s&&(E.s=0))}},emscripten_glDeleteFramebuffers:(a,b)=>{for(var c=0;c<a;++c){var e=
r()[b+4*c>>2],f=gb[e];f&&(E.deleteFramebuffer(f),f.name=0,gb[e]=null)}},emscripten_glDeleteProgram:a=>{if(a){var b=F[a];b?(E.deleteProgram(b),b.name=0,F[a]=null):N||=1281}},emscripten_glDeleteQueries:(a,b)=>{for(var c=0;c<a;c++){var e=r()[b+4*c>>2],f=J[e];f&&(E.deleteQuery(f),J[e]=null)}},emscripten_glDeleteQueriesEXT:(a,b)=>{for(var c=0;c<a;c++){var e=r()[b+4*c>>2],f=J[e];f&&(E.m.deleteQueryEXT(f),J[e]=null)}},emscripten_glDeleteRenderbuffers:(a,b)=>{for(var c=0;c<a;c++){var e=r()[b+4*c>>2],f=hb[e];
f&&(E.deleteRenderbuffer(f),f.name=0,hb[e]=null)}},emscripten_glDeleteSamplers:(a,b)=>{for(var c=0;c<a;c++){var e=r()[b+4*c>>2],f=K[e];f&&(E.deleteSampler(f),f.name=0,K[e]=null)}},emscripten_glDeleteShader:a=>{if(a){var b=H[a];b?(E.deleteShader(b),H[a]=null):N||=1281}},emscripten_glDeleteSync:a=>{if(a){var b=L[a];b?(E.deleteSync(b),b.name=0,L[a]=null):N||=1281}},emscripten_glDeleteTextures:rb,emscripten_glDeleteVertexArrays:sb,emscripten_glDeleteVertexArraysOES:sb,emscripten_glDepthMask:a=>{E.depthMask(!!a)},
emscripten_glDisable:a=>E.disable(a),emscripten_glDisableVertexAttribArray:a=>{E.disableVertexAttribArray(a)},emscripten_glDrawArrays:(a,b,c)=>{E.drawArrays(a,b,c)},emscripten_glDrawArraysInstanced:(a,b,c,e)=>{E.drawArraysInstanced(a,b,c,e)},emscripten_glDrawArraysInstancedBaseInstanceWEBGL:(a,b,c,e,f)=>{E.H.drawArraysInstancedBaseInstanceWEBGL(a,b,c,e,f)},emscripten_glDrawBuffers:(a,b)=>{for(var c=tb[a],e=0;e<a;e++)c[e]=r()[b+4*e>>2];E.drawBuffers(c)},emscripten_glDrawElements:(a,b,c,e)=>{E.drawElements(a,
b,c,e)},emscripten_glDrawElementsInstanced:(a,b,c,e,f)=>{E.drawElementsInstanced(a,b,c,e,f)},emscripten_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL:(a,b,c,e,f,h,l)=>{E.H.drawElementsInstancedBaseVertexBaseInstanceWEBGL(a,b,c,e,f,h,l)},emscripten_glDrawRangeElements:(a,b,c,e,f,h)=>{E.drawElements(a,e,f,h)},emscripten_glEnable:a=>E.enable(a),emscripten_glEnableVertexAttribArray:a=>{E.enableVertexAttribArray(a)},emscripten_glEndQuery:a=>E.endQuery(a),emscripten_glEndQueryEXT:a=>{E.m.endQueryEXT(a)},
emscripten_glFenceSync:(a,b)=>(a=E.fenceSync(a,b))?(b=M(L),a.name=b,L[b]=a,b):0,emscripten_glFinish:()=>E.finish(),emscripten_glFlush:()=>E.flush(),emscripten_glFramebufferRenderbuffer:(a,b,c,e)=>{E.framebufferRenderbuffer(a,b,c,hb[e])},emscripten_glFramebufferTexture2D:(a,b,c,e,f)=>{E.framebufferTexture2D(a,b,c,G[e],f)},emscripten_glFrontFace:a=>E.frontFace(a),emscripten_glGenBuffers:(a,b)=>{O(a,b,"createBuffer",fb)},emscripten_glGenFramebuffers:(a,b)=>{O(a,b,"createFramebuffer",gb)},emscripten_glGenQueries:(a,
b)=>{O(a,b,"createQuery",J)},emscripten_glGenQueriesEXT:(a,b)=>{for(var c=0;c<a;c++){var e=E.m.createQueryEXT();if(!e){for(N||=1282;c<a;)r()[b+4*c++>>2]=0;break}var f=M(J);e.name=f;J[f]=e;r()[b+4*c>>2]=f}},emscripten_glGenRenderbuffers:(a,b)=>{O(a,b,"createRenderbuffer",hb)},emscripten_glGenSamplers:(a,b)=>{O(a,b,"createSampler",K)},emscripten_glGenTextures:(a,b)=>{O(a,b,"createTexture",G)},emscripten_glGenVertexArrays:ub,emscripten_glGenVertexArraysOES:ub,emscripten_glGenerateMipmap:a=>E.generateMipmap(a),
emscripten_glGetBufferParameteriv:(a,b,c)=>{c?r()[c>>2]=E.getBufferParameter(a,b):N||=1281},emscripten_glGetError:()=>{var a=E.getError()||N;N=0;return a},emscripten_glGetFloatv:(a,b)=>xb(a,b,2),emscripten_glGetFramebufferAttachmentParameteriv:(a,b,c,e)=>{a=E.getFramebufferAttachmentParameter(a,b,c);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;r()[e>>2]=a},emscripten_glGetIntegerv:yb,emscripten_glGetProgramInfoLog:(a,b,c,e)=>{a=E.getProgramInfoLog(F[a]);null===a&&(a="(unknown error)");
b=0<b&&e?D(a,e,b):0;c&&(r()[c>>2]=b)},emscripten_glGetProgramiv:(a,b,c)=>{if(c)if(a>=eb)N||=1281;else if(a=F[a],35716==b)a=E.getProgramInfoLog(a),null===a&&(a="(unknown error)"),r()[c>>2]=a.length+1;else if(35719==b){if(!a.C){var e=E.getProgramParameter(a,35718);for(b=0;b<e;++b)a.C=Math.max(a.C,E.getActiveUniform(a,b).name.length+1)}r()[c>>2]=a.C}else if(35722==b){if(!a.A)for(e=E.getProgramParameter(a,35721),b=0;b<e;++b)a.A=Math.max(a.A,E.getActiveAttrib(a,b).name.length+1);r()[c>>2]=a.A}else if(35381==
b){if(!a.B)for(e=E.getProgramParameter(a,35382),b=0;b<e;++b)a.B=Math.max(a.B,E.getActiveUniformBlockName(a,b).length+1);r()[c>>2]=a.B}else r()[c>>2]=E.getProgramParameter(a,b);else N||=1281},emscripten_glGetQueryObjecti64vEXT:zb,emscripten_glGetQueryObjectui64vEXT:zb,emscripten_glGetQueryObjectuiv:(a,b,c)=>{if(c){a=E.getQueryParameter(J[a],b);var e;"boolean"==typeof a?e=a?1:0:e=a;r()[c>>2]=e}else N||=1281},emscripten_glGetQueryObjectuivEXT:(a,b,c)=>{if(c){a=E.m.getQueryObjectEXT(J[a],b);var e;"boolean"==
typeof a?e=a?1:0:e=a;r()[c>>2]=e}else N||=1281},emscripten_glGetQueryiv:(a,b,c)=>{c?r()[c>>2]=E.getQuery(a,b):N||=1281},emscripten_glGetQueryivEXT:(a,b,c)=>{c?r()[c>>2]=E.m.getQueryEXT(a,b):N||=1281},emscripten_glGetRenderbufferParameteriv:(a,b,c)=>{c?r()[c>>2]=E.getRenderbufferParameter(a,b):N||=1281},emscripten_glGetShaderInfoLog:(a,b,c,e)=>{a=E.getShaderInfoLog(H[a]);null===a&&(a="(unknown error)");b=0<b&&e?D(a,e,b):0;c&&(r()[c>>2]=b)},emscripten_glGetShaderPrecisionFormat:(a,b,c,e)=>{a=E.getShaderPrecisionFormat(a,
b);r()[c>>2]=a.rangeMin;r()[c+4>>2]=a.rangeMax;r()[e>>2]=a.precision},emscripten_glGetShaderiv:(a,b,c)=>{c?35716==b?(a=E.getShaderInfoLog(H[a]),null===a&&(a="(unknown error)"),a=a?a.length+1:0,r()[c>>2]=a):35720==b?(a=(a=E.getShaderSource(H[a]))?a.length+1:0,r()[c>>2]=a):r()[c>>2]=E.getShaderParameter(H[a],b):N||=1281},emscripten_glGetString:Cb,emscripten_glGetStringi:Db,emscripten_glGetUniformLocation:(a,b)=>{b=Wa(b);if(a=F[a]){var c=a,e=c.v,f=c.M,h;if(!e){c.v=e={};c.L={};var l=E.getProgramParameter(c,
35718);for(h=0;h<l;++h){var m=E.getActiveUniform(c,h);var p=m.name;m=m.size;var v=Eb(p);v=0<v?p.slice(0,v):p;var U=c.G;c.G+=m;f[v]=[m,U];for(p=0;p<m;++p)e[U]=p,c.L[U++]=v}}c=a.v;e=0;f=b;h=Eb(b);0<h&&(e=parseInt(b.slice(h+1))>>>0,f=b.slice(0,h));if((f=a.M[f])&&e<f[0]&&(e+=f[1],c[e]=c[e]||E.getUniformLocation(a,b)))return e}else N||=1281;return-1},emscripten_glInvalidateFramebuffer:(a,b,c)=>{for(var e=tb[b],f=0;f<b;f++)e[f]=r()[c+4*f>>2];E.invalidateFramebuffer(a,e)},emscripten_glInvalidateSubFramebuffer:(a,
b,c,e,f,h,l)=>{for(var m=tb[b],p=0;p<b;p++)m[p]=r()[c+4*p>>2];E.invalidateSubFramebuffer(a,m,e,f,h,l)},emscripten_glIsSync:a=>E.isSync(L[a]),emscripten_glIsTexture:a=>(a=G[a])?E.isTexture(a):0,emscripten_glLineWidth:a=>E.lineWidth(a),emscripten_glLinkProgram:a=>{a=F[a];E.linkProgram(a);a.v=0;a.M={}},emscripten_glMultiDrawArraysInstancedBaseInstanceWEBGL:(a,b,c,e,f,h)=>{E.K.multiDrawArraysInstancedBaseInstanceWEBGL(a,r(),b>>2,r(),c>>2,r(),e>>2,t(),f>>2,h)},emscripten_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL:(a,
b,c,e,f,h,l,m)=>{E.K.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(a,r(),b>>2,c,r(),e>>2,r(),f>>2,r(),h>>2,t(),l>>2,m)},emscripten_glPixelStorei:(a,b)=>{3317==a?lb=b:3314==a&&(mb=b);E.pixelStorei(a,b)},emscripten_glQueryCounterEXT:(a,b)=>{E.m.queryCounterEXT(J[a],b)},emscripten_glReadBuffer:a=>E.readBuffer(a),emscripten_glReadPixels:(a,b,c,e,f,h,l)=>{if(2<=P.version)if(E.D)E.readPixels(a,b,c,e,f,h,l);else{var m=Fb(h);l>>>=31-Math.clz32(m.BYTES_PER_ELEMENT);E.readPixels(a,b,c,e,f,h,m,l)}else(m=
Gb(h,f,c,e,l))?E.readPixels(a,b,c,e,f,h,m):N||=1280},emscripten_glRenderbufferStorage:(a,b,c,e)=>E.renderbufferStorage(a,b,c,e),emscripten_glRenderbufferStorageMultisample:(a,b,c,e,f)=>E.renderbufferStorageMultisample(a,b,c,e,f),emscripten_glSamplerParameterf:(a,b,c)=>{E.samplerParameterf(K[a],b,c)},emscripten_glSamplerParameteri:(a,b,c)=>{E.samplerParameteri(K[a],b,c)},emscripten_glSamplerParameteriv:(a,b,c)=>{c=r()[c>>2];E.samplerParameteri(K[a],b,c)},emscripten_glScissor:(a,b,c,e)=>E.scissor(a,
b,c,e),emscripten_glShaderSource:(a,b,c,e)=>{for(var f="",h=0;h<b;++h){var l=e?t()[e+4*h>>2]:void 0;f+=Wa(t()[c+4*h>>2],l)}E.shaderSource(H[a],f)},emscripten_glStencilFunc:(a,b,c)=>E.stencilFunc(a,b,c),emscripten_glStencilFuncSeparate:(a,b,c,e)=>E.stencilFuncSeparate(a,b,c,e),emscripten_glStencilMask:a=>E.stencilMask(a),emscripten_glStencilMaskSeparate:(a,b)=>E.stencilMaskSeparate(a,b),emscripten_glStencilOp:(a,b,c)=>E.stencilOp(a,b,c),emscripten_glStencilOpSeparate:(a,b,c,e)=>E.stencilOpSeparate(a,
b,c,e),emscripten_glTexImage2D:(a,b,c,e,f,h,l,m,p)=>{if(2<=P.version){if(E.s){E.texImage2D(a,b,c,e,f,h,l,m,p);return}if(p){var v=Fb(m);p>>>=31-Math.clz32(v.BYTES_PER_ELEMENT);E.texImage2D(a,b,c,e,f,h,l,m,v,p);return}}v=p?Gb(m,l,e,f,p):null;E.texImage2D(a,b,c,e,f,h,l,m,v)},emscripten_glTexParameterf:(a,b,c)=>E.texParameterf(a,b,c),emscripten_glTexParameterfv:(a,b,c)=>{c=u()[c>>2];E.texParameterf(a,b,c)},emscripten_glTexParameteri:(a,b,c)=>E.texParameteri(a,b,c),emscripten_glTexParameteriv:(a,b,c)=>
{c=r()[c>>2];E.texParameteri(a,b,c)},emscripten_glTexStorage2D:(a,b,c,e,f)=>E.texStorage2D(a,b,c,e,f),emscripten_glTexSubImage2D:(a,b,c,e,f,h,l,m,p)=>{if(2<=P.version){if(E.s){E.texSubImage2D(a,b,c,e,f,h,l,m,p);return}if(p){var v=Fb(m);E.texSubImage2D(a,b,c,e,f,h,l,m,v,p>>>31-Math.clz32(v.BYTES_PER_ELEMENT));return}}p=p?Gb(m,l,f,h,p):null;E.texSubImage2D(a,b,c,e,f,h,l,m,p)},emscripten_glUniform1f:(a,b)=>{E.uniform1f(Q(a),b)},emscripten_glUniform1fv:(a,b,c)=>{if(2<=P.version)b&&E.uniform1fv(Q(a),u(),
c>>2,b);else{if(288>=b)for(var e=R[b],f=0;f<b;++f)e[f]=u()[c+4*f>>2];else e=u().subarray(c>>2,c+4*b>>2);E.uniform1fv(Q(a),e)}},emscripten_glUniform1i:(a,b)=>{E.uniform1i(Q(a),b)},emscripten_glUniform1iv:(a,b,c)=>{if(2<=P.version)b&&E.uniform1iv(Q(a),r(),c>>2,b);else{if(288>=b)for(var e=Hb[b],f=0;f<b;++f)e[f]=r()[c+4*f>>2];else e=r().subarray(c>>2,c+4*b>>2);E.uniform1iv(Q(a),e)}},emscripten_glUniform2f:(a,b,c)=>{E.uniform2f(Q(a),b,c)},emscripten_glUniform2fv:(a,b,c)=>{if(2<=P.version)b&&E.uniform2fv(Q(a),
u(),c>>2,2*b);else{if(144>=b){b*=2;for(var e=R[b],f=0;f<b;f+=2)e[f]=u()[c+4*f>>2],e[f+1]=u()[c+(4*f+4)>>2]}else e=u().subarray(c>>2,c+8*b>>2);E.uniform2fv(Q(a),e)}},emscripten_glUniform2i:(a,b,c)=>{E.uniform2i(Q(a),b,c)},emscripten_glUniform2iv:(a,b,c)=>{if(2<=P.version)b&&E.uniform2iv(Q(a),r(),c>>2,2*b);else{if(144>=b){b*=2;for(var e=Hb[b],f=0;f<b;f+=2)e[f]=r()[c+4*f>>2],e[f+1]=r()[c+(4*f+4)>>2]}else e=r().subarray(c>>2,c+8*b>>2);E.uniform2iv(Q(a),e)}},emscripten_glUniform3f:(a,b,c,e)=>{E.uniform3f(Q(a),
b,c,e)},emscripten_glUniform3fv:(a,b,c)=>{if(2<=P.version)b&&E.uniform3fv(Q(a),u(),c>>2,3*b);else{if(96>=b){b*=3;for(var e=R[b],f=0;f<b;f+=3)e[f]=u()[c+4*f>>2],e[f+1]=u()[c+(4*f+4)>>2],e[f+2]=u()[c+(4*f+8)>>2]}else e=u().subarray(c>>2,c+12*b>>2);E.uniform3fv(Q(a),e)}},emscripten_glUniform3i:(a,b,c,e)=>{E.uniform3i(Q(a),b,c,e)},emscripten_glUniform3iv:(a,b,c)=>{if(2<=P.version)b&&E.uniform3iv(Q(a),r(),c>>2,3*b);else{if(96>=b){b*=3;for(var e=Hb[b],f=0;f<b;f+=3)e[f]=r()[c+4*f>>2],e[f+1]=r()[c+(4*f+4)>>
2],e[f+2]=r()[c+(4*f+8)>>2]}else e=r().subarray(c>>2,c+12*b>>2);E.uniform3iv(Q(a),e)}},emscripten_glUniform4f:(a,b,c,e,f)=>{E.uniform4f(Q(a),b,c,e,f)},emscripten_glUniform4fv:(a,b,c)=>{if(2<=P.version)b&&E.uniform4fv(Q(a),u(),c>>2,4*b);else{if(72>=b){var e=R[4*b],f=u();c>>=2;b*=4;for(var h=0;h<b;h+=4){var l=c+h;e[h]=f[l];e[h+1]=f[l+1];e[h+2]=f[l+2];e[h+3]=f[l+3]}}else e=u().subarray(c>>2,c+16*b>>2);E.uniform4fv(Q(a),e)}},emscripten_glUniform4i:(a,b,c,e,f)=>{E.uniform4i(Q(a),b,c,e,f)},emscripten_glUniform4iv:(a,
b,c)=>{if(2<=P.version)b&&E.uniform4iv(Q(a),r(),c>>2,4*b);else{if(72>=b){b*=4;for(var e=Hb[b],f=0;f<b;f+=4)e[f]=r()[c+4*f>>2],e[f+1]=r()[c+(4*f+4)>>2],e[f+2]=r()[c+(4*f+8)>>2],e[f+3]=r()[c+(4*f+12)>>2]}else e=r().subarray(c>>2,c+16*b>>2);E.uniform4iv(Q(a),e)}},emscripten_glUniformMatrix2fv:(a,b,c,e)=>{if(2<=P.version)b&&E.uniformMatrix2fv(Q(a),!!c,u(),e>>2,4*b);else{if(72>=b){b*=4;for(var f=R[b],h=0;h<b;h+=4)f[h]=u()[e+4*h>>2],f[h+1]=u()[e+(4*h+4)>>2],f[h+2]=u()[e+(4*h+8)>>2],f[h+3]=u()[e+(4*h+12)>>
2]}else f=u().subarray(e>>2,e+16*b>>2);E.uniformMatrix2fv(Q(a),!!c,f)}},emscripten_glUniformMatrix3fv:(a,b,c,e)=>{if(2<=P.version)b&&E.uniformMatrix3fv(Q(a),!!c,u(),e>>2,9*b);else{if(32>=b){b*=9;for(var f=R[b],h=0;h<b;h+=9)f[h]=u()[e+4*h>>2],f[h+1]=u()[e+(4*h+4)>>2],f[h+2]=u()[e+(4*h+8)>>2],f[h+3]=u()[e+(4*h+12)>>2],f[h+4]=u()[e+(4*h+16)>>2],f[h+5]=u()[e+(4*h+20)>>2],f[h+6]=u()[e+(4*h+24)>>2],f[h+7]=u()[e+(4*h+28)>>2],f[h+8]=u()[e+(4*h+32)>>2]}else f=u().subarray(e>>2,e+36*b>>2);E.uniformMatrix3fv(Q(a),
!!c,f)}},emscripten_glUniformMatrix4fv:(a,b,c,e)=>{if(2<=P.version)b&&E.uniformMatrix4fv(Q(a),!!c,u(),e>>2,16*b);else{if(18>=b){var f=R[16*b],h=u();e>>=2;b*=16;for(var l=0;l<b;l+=16){var m=e+l;f[l]=h[m];f[l+1]=h[m+1];f[l+2]=h[m+2];f[l+3]=h[m+3];f[l+4]=h[m+4];f[l+5]=h[m+5];f[l+6]=h[m+6];f[l+7]=h[m+7];f[l+8]=h[m+8];f[l+9]=h[m+9];f[l+10]=h[m+10];f[l+11]=h[m+11];f[l+12]=h[m+12];f[l+13]=h[m+13];f[l+14]=h[m+14];f[l+15]=h[m+15]}}else f=u().subarray(e>>2,e+64*b>>2);E.uniformMatrix4fv(Q(a),!!c,f)}},emscripten_glUseProgram:a=>
{a=F[a];E.useProgram(a);E.O=a},emscripten_glVertexAttrib1f:(a,b)=>E.vertexAttrib1f(a,b),emscripten_glVertexAttrib2fv:(a,b)=>{E.vertexAttrib2f(a,u()[b>>2],u()[b+4>>2])},emscripten_glVertexAttrib3fv:(a,b)=>{E.vertexAttrib3f(a,u()[b>>2],u()[b+4>>2],u()[b+8>>2])},emscripten_glVertexAttrib4fv:(a,b)=>{E.vertexAttrib4f(a,u()[b>>2],u()[b+4>>2],u()[b+8>>2],u()[b+12>>2])},emscripten_glVertexAttribDivisor:(a,b)=>{E.vertexAttribDivisor(a,b)},emscripten_glVertexAttribIPointer:(a,b,c,e,f)=>{E.vertexAttribIPointer(a,
b,c,e,f)},emscripten_glVertexAttribPointer:(a,b,c,e,f,h)=>{E.vertexAttribPointer(a,b,c,!!e,f,h)},emscripten_glViewport:(a,b,c,e)=>E.viewport(a,b,c,e),emscripten_glWaitSync:(a,b,c,e)=>{E.waitSync(L[a],b,(c>>>0)+4294967296*e)},emscripten_resize_heap:a=>{var b=q().length;a>>>=0;if(a<=b||2147483648<a)return!1;for(var c=1;4>=c;c*=2){var e=b*(1+.2/c);e=Math.min(e,a+100663296);a:{e=(Math.min(2147483648,65536*Math.ceil(Math.max(a,e)/65536))-g.buffer.byteLength+65535)/65536|0;try{g.grow(e);n();var f=1;break a}catch(h){}f=
void 0}if(f)return!0}return!1},emscripten_wasm_worker_post_function_v:(a,b)=>{C[a].postMessage({_wsc:b,x:[]})},emscripten_webgl_enable_extension:function(a,b){a=I[a];b=Wa(b);b.startsWith("GL_")&&(b=b.substr(3));"ANGLE_instanced_arrays"==b&&Za(E);"OES_vertex_array_object"==b&&$a(E);"WEBGL_draw_buffers"==b&&ab(E);"WEBGL_draw_instanced_base_vertex_base_instance"==b&&bb(E);"WEBGL_multi_draw_instanced_base_vertex_base_instance"==b&&cb(E);"WEBGL_multi_draw"==b&&(E.U=E.getExtension("WEBGL_multi_draw"));
"EXT_polygon_offset_clamp"==b&&(E.R=E.getExtension("EXT_polygon_offset_clamp"));"EXT_clip_control"==b&&(E.P=E.getExtension("EXT_clip_control"));"WEBGL_polygon_mode"==b&&(E.Z=E.getExtension("WEBGL_polygon_mode"));return!!a.o.getExtension(b)},emscripten_webgl_get_current_context:()=>P?P.handle:0,emscripten_webgl_make_context_current:a=>{P=I[a];w.aa=E=P?.o;return!a||E?0:-5},environ_get:(a,b)=>{var c=0;Kb().forEach((e,f)=>{var h=b+c;f=t()[a+4*f>>2]=h;for(h=0;h<e.length;++h)d()[f++]=e.charCodeAt(h);d()[f]=
0;c+=e.length+1});return 0},environ_sizes_get:(a,b)=>{var c=Kb();t()[a>>2]=c.length;var e=0;c.forEach(f=>e+=f.length+1);t()[b>>2]=e;return 0},fd_close:()=>52,fd_pread:function(){return 52},fd_read:()=>52,fd_seek:function(){return 70},fd_write:(a,b,c,e)=>{for(var f=0,h=0;h<c;h++){var l=t()[b>>2],m=t()[b+4>>2];b+=8;for(var p=0;p<m;p++){var v=q()[l+p],U=Lb[a];0===v||10===v?((1===a?pa:y)(Va(U)),U.length=0):U.push(v)}f+=m}t()[e>>2]=f;return 0},glDeleteTextures:rb,glGetIntegerv:yb,glGetString:Cb,glGetStringi:Db,
invoke_ii:Dc,invoke_iii:Ec,invoke_iiiii:Fc,invoke_iiiiiii:Gc,invoke_vi:Hc,invoke_vii:Ic,invoke_viii:Jc,invoke_viiiiiii:Kc,memory:g,proc_exit:Pa,skwasm_captureImageBitmap:Mb,skwasm_connectThread:Pb,skwasm_createGlTextureFromTextureSource:Qb,skwasm_destroyContext:Rb,skwasm_dispatchDisposeSurface:Sb,skwasm_dispatchRasterizeImage:Tb,skwasm_dispatchRenderPictures:Ub,skwasm_dispatchResizeSurface:Vb,skwasm_dispatchTransferCanvas:Wb,skwasm_dispatchTriggerContextLoss:Xb,skwasm_disposeAssociatedObjectOnThread:Yb,
skwasm_getAssociatedObject:Zb,skwasm_getGlContextForCanvas:$b,skwasm_isSingleThreaded:ac,skwasm_postRasterizeResult:bc,skwasm_reportContextLossTriggered:cc,skwasm_reportContextLost:dc,skwasm_reportInitialized:ec,skwasm_reportResizeComplete:fc,skwasm_resizeCanvas:gc,skwasm_resolveAndPostImages:hc,skwasm_setAssociatedObjectOnThread:ic,skwasm_triggerContextLossOnCanvas:jc},W=function(){function a(c,e){W=c.exports;w.wasmExports=W;B=W.__indirect_function_table;wa.unshift(W.__wasm_call_ctors);qa=e;z--;
0==z&&(null!==Fa&&(clearInterval(Fa),Fa=null),A&&(c=A,A=null,c()));return W}var b={env:Lc,wasi_snapshot_preview1:Lc};z++;if(w.instantiateWasm)try{return w.instantiateWasm(b,a)}catch(c){y(`Module.instantiateWasm callback failed with error: ${c}`),fa(c)}Ia??=Ha("skwasm_heavy.wasm")?"skwasm_heavy.wasm":ma("skwasm_heavy.wasm");La(b,function(c){a(c.instance,c.module)}).catch(fa);return{}}();w._canvas_saveLayer=(a,b,c,e)=>(w._canvas_saveLayer=W.canvas_saveLayer)(a,b,c,e);
w._canvas_save=a=>(w._canvas_save=W.canvas_save)(a);w._canvas_restore=a=>(w._canvas_restore=W.canvas_restore)(a);w._canvas_restoreToCount=(a,b)=>(w._canvas_restoreToCount=W.canvas_restoreToCount)(a,b);w._canvas_getSaveCount=a=>(w._canvas_getSaveCount=W.canvas_getSaveCount)(a);w._canvas_translate=(a,b,c)=>(w._canvas_translate=W.canvas_translate)(a,b,c);w._canvas_scale=(a,b,c)=>(w._canvas_scale=W.canvas_scale)(a,b,c);w._canvas_rotate=(a,b)=>(w._canvas_rotate=W.canvas_rotate)(a,b);
w._canvas_skew=(a,b,c)=>(w._canvas_skew=W.canvas_skew)(a,b,c);w._canvas_transform=(a,b)=>(w._canvas_transform=W.canvas_transform)(a,b);w._canvas_clear=(a,b)=>(w._canvas_clear=W.canvas_clear)(a,b);w._canvas_clipRect=(a,b,c,e)=>(w._canvas_clipRect=W.canvas_clipRect)(a,b,c,e);w._canvas_clipRRect=(a,b,c)=>(w._canvas_clipRRect=W.canvas_clipRRect)(a,b,c);w._canvas_clipPath=(a,b,c)=>(w._canvas_clipPath=W.canvas_clipPath)(a,b,c);w._canvas_drawColor=(a,b,c)=>(w._canvas_drawColor=W.canvas_drawColor)(a,b,c);
w._canvas_drawLine=(a,b,c,e,f,h)=>(w._canvas_drawLine=W.canvas_drawLine)(a,b,c,e,f,h);w._canvas_drawPaint=(a,b)=>(w._canvas_drawPaint=W.canvas_drawPaint)(a,b);w._canvas_drawRect=(a,b,c)=>(w._canvas_drawRect=W.canvas_drawRect)(a,b,c);w._canvas_drawRRect=(a,b,c)=>(w._canvas_drawRRect=W.canvas_drawRRect)(a,b,c);w._canvas_drawDRRect=(a,b,c,e)=>(w._canvas_drawDRRect=W.canvas_drawDRRect)(a,b,c,e);w._canvas_drawOval=(a,b,c)=>(w._canvas_drawOval=W.canvas_drawOval)(a,b,c);
w._canvas_drawCircle=(a,b,c,e,f)=>(w._canvas_drawCircle=W.canvas_drawCircle)(a,b,c,e,f);w._canvas_drawArc=(a,b,c,e,f,h)=>(w._canvas_drawArc=W.canvas_drawArc)(a,b,c,e,f,h);w._canvas_drawPath=(a,b,c)=>(w._canvas_drawPath=W.canvas_drawPath)(a,b,c);w._canvas_drawShadow=(a,b,c,e,f,h)=>(w._canvas_drawShadow=W.canvas_drawShadow)(a,b,c,e,f,h);w._canvas_drawParagraph=(a,b,c,e)=>(w._canvas_drawParagraph=W.canvas_drawParagraph)(a,b,c,e);
w._canvas_drawPicture=(a,b)=>(w._canvas_drawPicture=W.canvas_drawPicture)(a,b);w._canvas_drawImage=(a,b,c,e,f,h)=>(w._canvas_drawImage=W.canvas_drawImage)(a,b,c,e,f,h);w._canvas_drawImageRect=(a,b,c,e,f,h)=>(w._canvas_drawImageRect=W.canvas_drawImageRect)(a,b,c,e,f,h);w._canvas_drawImageNine=(a,b,c,e,f,h)=>(w._canvas_drawImageNine=W.canvas_drawImageNine)(a,b,c,e,f,h);w._canvas_drawVertices=(a,b,c,e)=>(w._canvas_drawVertices=W.canvas_drawVertices)(a,b,c,e);
w._canvas_drawPoints=(a,b,c,e,f)=>(w._canvas_drawPoints=W.canvas_drawPoints)(a,b,c,e,f);w._canvas_drawAtlas=(a,b,c,e,f,h,l,m,p)=>(w._canvas_drawAtlas=W.canvas_drawAtlas)(a,b,c,e,f,h,l,m,p);w._canvas_getTransform=(a,b)=>(w._canvas_getTransform=W.canvas_getTransform)(a,b);w._canvas_getLocalClipBounds=(a,b)=>(w._canvas_getLocalClipBounds=W.canvas_getLocalClipBounds)(a,b);w._canvas_getDeviceClipBounds=(a,b)=>(w._canvas_getDeviceClipBounds=W.canvas_getDeviceClipBounds)(a,b);
w._canvas_quickReject=(a,b)=>(w._canvas_quickReject=W.canvas_quickReject)(a,b);w._contourMeasureIter_create=(a,b,c)=>(w._contourMeasureIter_create=W.contourMeasureIter_create)(a,b,c);w._contourMeasureIter_next=a=>(w._contourMeasureIter_next=W.contourMeasureIter_next)(a);w._contourMeasureIter_dispose=a=>(w._contourMeasureIter_dispose=W.contourMeasureIter_dispose)(a);w._contourMeasure_dispose=a=>(w._contourMeasure_dispose=W.contourMeasure_dispose)(a);
w._contourMeasure_length=a=>(w._contourMeasure_length=W.contourMeasure_length)(a);w._contourMeasure_isClosed=a=>(w._contourMeasure_isClosed=W.contourMeasure_isClosed)(a);w._contourMeasure_getPosTan=(a,b,c,e)=>(w._contourMeasure_getPosTan=W.contourMeasure_getPosTan)(a,b,c,e);w._contourMeasure_getSegment=(a,b,c,e)=>(w._contourMeasure_getSegment=W.contourMeasure_getSegment)(a,b,c,e);w._skData_create=a=>(w._skData_create=W.skData_create)(a);w._skData_getPointer=a=>(w._skData_getPointer=W.skData_getPointer)(a);
w._skData_getConstPointer=a=>(w._skData_getConstPointer=W.skData_getConstPointer)(a);w._skData_getSize=a=>(w._skData_getSize=W.skData_getSize)(a);w._skData_dispose=a=>(w._skData_dispose=W.skData_dispose)(a);w._imageFilter_createBlur=(a,b,c)=>(w._imageFilter_createBlur=W.imageFilter_createBlur)(a,b,c);w._imageFilter_createDilate=(a,b)=>(w._imageFilter_createDilate=W.imageFilter_createDilate)(a,b);w._imageFilter_createErode=(a,b)=>(w._imageFilter_createErode=W.imageFilter_createErode)(a,b);
w._imageFilter_createMatrix=(a,b)=>(w._imageFilter_createMatrix=W.imageFilter_createMatrix)(a,b);w._imageFilter_createFromColorFilter=a=>(w._imageFilter_createFromColorFilter=W.imageFilter_createFromColorFilter)(a);w._imageFilter_compose=(a,b)=>(w._imageFilter_compose=W.imageFilter_compose)(a,b);w._imageFilter_dispose=a=>(w._imageFilter_dispose=W.imageFilter_dispose)(a);w._imageFilter_getFilterBounds=(a,b)=>(w._imageFilter_getFilterBounds=W.imageFilter_getFilterBounds)(a,b);
w._colorFilter_createMode=(a,b)=>(w._colorFilter_createMode=W.colorFilter_createMode)(a,b);w._colorFilter_createMatrix=a=>(w._colorFilter_createMatrix=W.colorFilter_createMatrix)(a);w._colorFilter_createSRGBToLinearGamma=()=>(w._colorFilter_createSRGBToLinearGamma=W.colorFilter_createSRGBToLinearGamma)();w._colorFilter_createLinearToSRGBGamma=()=>(w._colorFilter_createLinearToSRGBGamma=W.colorFilter_createLinearToSRGBGamma)();w._colorFilter_dispose=a=>(w._colorFilter_dispose=W.colorFilter_dispose)(a);
w._maskFilter_createBlur=(a,b)=>(w._maskFilter_createBlur=W.maskFilter_createBlur)(a,b);w._maskFilter_dispose=a=>(w._maskFilter_dispose=W.maskFilter_dispose)(a);w._fontCollection_create=()=>(w._fontCollection_create=W.fontCollection_create)();w._fontCollection_dispose=a=>(w._fontCollection_dispose=W.fontCollection_dispose)(a);w._typeface_create=a=>(w._typeface_create=W.typeface_create)(a);w._typeface_dispose=a=>(w._typeface_dispose=W.typeface_dispose)(a);
w._typefaces_filterCoveredCodePoints=(a,b,c,e)=>(w._typefaces_filterCoveredCodePoints=W.typefaces_filterCoveredCodePoints)(a,b,c,e);w._fontCollection_registerTypeface=(a,b,c)=>(w._fontCollection_registerTypeface=W.fontCollection_registerTypeface)(a,b,c);w._fontCollection_clearCaches=a=>(w._fontCollection_clearCaches=W.fontCollection_clearCaches)(a);w._image_createFromPicture=(a,b,c)=>(w._image_createFromPicture=W.image_createFromPicture)(a,b,c);
w._image_createFromPixels=(a,b,c,e,f)=>(w._image_createFromPixels=W.image_createFromPixels)(a,b,c,e,f);w._image_createFromTextureSource=(a,b,c,e)=>(w._image_createFromTextureSource=W.image_createFromTextureSource)(a,b,c,e);w._image_ref=a=>(w._image_ref=W.image_ref)(a);w._image_dispose=a=>(w._image_dispose=W.image_dispose)(a);w._image_getWidth=a=>(w._image_getWidth=W.image_getWidth)(a);w._image_getHeight=a=>(w._image_getHeight=W.image_getHeight)(a);
w._skwasm_getLiveObjectCounts=a=>(w._skwasm_getLiveObjectCounts=W.skwasm_getLiveObjectCounts)(a);w._paint_create=(a,b,c,e,f,h,l,m,p)=>(w._paint_create=W.paint_create)(a,b,c,e,f,h,l,m,p);w._paint_dispose=a=>(w._paint_dispose=W.paint_dispose)(a);w._paint_setShader=(a,b)=>(w._paint_setShader=W.paint_setShader)(a,b);w._paint_setImageFilter=(a,b)=>(w._paint_setImageFilter=W.paint_setImageFilter)(a,b);w._paint_setColorFilter=(a,b)=>(w._paint_setColorFilter=W.paint_setColorFilter)(a,b);
w._paint_setMaskFilter=(a,b)=>(w._paint_setMaskFilter=W.paint_setMaskFilter)(a,b);w._path_create=()=>(w._path_create=W.path_create)();w._path_dispose=a=>(w._path_dispose=W.path_dispose)(a);w._path_copy=a=>(w._path_copy=W.path_copy)(a);w._path_setFillType=(a,b)=>(w._path_setFillType=W.path_setFillType)(a,b);w._path_getFillType=a=>(w._path_getFillType=W.path_getFillType)(a);w._path_moveTo=(a,b,c)=>(w._path_moveTo=W.path_moveTo)(a,b,c);
w._path_relativeMoveTo=(a,b,c)=>(w._path_relativeMoveTo=W.path_relativeMoveTo)(a,b,c);w._path_lineTo=(a,b,c)=>(w._path_lineTo=W.path_lineTo)(a,b,c);w._path_relativeLineTo=(a,b,c)=>(w._path_relativeLineTo=W.path_relativeLineTo)(a,b,c);w._path_quadraticBezierTo=(a,b,c,e,f)=>(w._path_quadraticBezierTo=W.path_quadraticBezierTo)(a,b,c,e,f);w._path_relativeQuadraticBezierTo=(a,b,c,e,f)=>(w._path_relativeQuadraticBezierTo=W.path_relativeQuadraticBezierTo)(a,b,c,e,f);
w._path_cubicTo=(a,b,c,e,f,h,l)=>(w._path_cubicTo=W.path_cubicTo)(a,b,c,e,f,h,l);w._path_relativeCubicTo=(a,b,c,e,f,h,l)=>(w._path_relativeCubicTo=W.path_relativeCubicTo)(a,b,c,e,f,h,l);w._path_conicTo=(a,b,c,e,f,h)=>(w._path_conicTo=W.path_conicTo)(a,b,c,e,f,h);w._path_relativeConicTo=(a,b,c,e,f,h)=>(w._path_relativeConicTo=W.path_relativeConicTo)(a,b,c,e,f,h);w._path_arcToOval=(a,b,c,e,f)=>(w._path_arcToOval=W.path_arcToOval)(a,b,c,e,f);
w._path_arcToRotated=(a,b,c,e,f,h,l,m)=>(w._path_arcToRotated=W.path_arcToRotated)(a,b,c,e,f,h,l,m);w._path_relativeArcToRotated=(a,b,c,e,f,h,l,m)=>(w._path_relativeArcToRotated=W.path_relativeArcToRotated)(a,b,c,e,f,h,l,m);w._path_addRect=(a,b)=>(w._path_addRect=W.path_addRect)(a,b);w._path_addOval=(a,b)=>(w._path_addOval=W.path_addOval)(a,b);w._path_addArc=(a,b,c,e)=>(w._path_addArc=W.path_addArc)(a,b,c,e);w._path_addPolygon=(a,b,c,e)=>(w._path_addPolygon=W.path_addPolygon)(a,b,c,e);
w._path_addRRect=(a,b)=>(w._path_addRRect=W.path_addRRect)(a,b);w._path_addPath=(a,b,c,e)=>(w._path_addPath=W.path_addPath)(a,b,c,e);w._path_close=a=>(w._path_close=W.path_close)(a);w._path_reset=a=>(w._path_reset=W.path_reset)(a);w._path_contains=(a,b,c)=>(w._path_contains=W.path_contains)(a,b,c);w._path_transform=(a,b)=>(w._path_transform=W.path_transform)(a,b);w._path_getBounds=(a,b)=>(w._path_getBounds=W.path_getBounds)(a,b);w._path_combine=(a,b,c)=>(w._path_combine=W.path_combine)(a,b,c);
w._path_getSvgString=a=>(w._path_getSvgString=W.path_getSvgString)(a);w._pictureRecorder_create=()=>(w._pictureRecorder_create=W.pictureRecorder_create)();w._pictureRecorder_dispose=a=>(w._pictureRecorder_dispose=W.pictureRecorder_dispose)(a);w._pictureRecorder_beginRecording=(a,b)=>(w._pictureRecorder_beginRecording=W.pictureRecorder_beginRecording)(a,b);w._pictureRecorder_endRecording=a=>(w._pictureRecorder_endRecording=W.pictureRecorder_endRecording)(a);
w._picture_getCullRect=(a,b)=>(w._picture_getCullRect=W.picture_getCullRect)(a,b);w._picture_ref=a=>(w._picture_ref=W.picture_ref)(a);w._picture_dispose=a=>(w._picture_dispose=W.picture_dispose)(a);w._picture_approximateBytesUsed=a=>(w._picture_approximateBytesUsed=W.picture_approximateBytesUsed)(a);w._shader_createLinearGradient=(a,b,c,e,f,h)=>(w._shader_createLinearGradient=W.shader_createLinearGradient)(a,b,c,e,f,h);
w._shader_createRadialGradient=(a,b,c,e,f,h,l,m)=>(w._shader_createRadialGradient=W.shader_createRadialGradient)(a,b,c,e,f,h,l,m);w._shader_createConicalGradient=(a,b,c,e,f,h,l,m)=>(w._shader_createConicalGradient=W.shader_createConicalGradient)(a,b,c,e,f,h,l,m);w._shader_createSweepGradient=(a,b,c,e,f,h,l,m,p)=>(w._shader_createSweepGradient=W.shader_createSweepGradient)(a,b,c,e,f,h,l,m,p);w._shader_dispose=a=>(w._shader_dispose=W.shader_dispose)(a);
w._runtimeEffect_create=a=>(w._runtimeEffect_create=W.runtimeEffect_create)(a);w._runtimeEffect_dispose=a=>(w._runtimeEffect_dispose=W.runtimeEffect_dispose)(a);w._runtimeEffect_getUniformSize=a=>(w._runtimeEffect_getUniformSize=W.runtimeEffect_getUniformSize)(a);w._shader_createRuntimeEffectShader=(a,b,c,e)=>(w._shader_createRuntimeEffectShader=W.shader_createRuntimeEffectShader)(a,b,c,e);w._shader_createFromImage=(a,b,c,e,f)=>(w._shader_createFromImage=W.shader_createFromImage)(a,b,c,e,f);
w._uniformData_create=a=>(w._uniformData_create=W.uniformData_create)(a);w._uniformData_dispose=a=>(w._uniformData_dispose=W.uniformData_dispose)(a);w._uniformData_getPointer=a=>(w._uniformData_getPointer=W.uniformData_getPointer)(a);w._skString_allocate=a=>(w._skString_allocate=W.skString_allocate)(a);w._skString_getData=a=>(w._skString_getData=W.skString_getData)(a);w._skString_getLength=a=>(w._skString_getLength=W.skString_getLength)(a);w._skString_free=a=>(w._skString_free=W.skString_free)(a);
w._skString16_allocate=a=>(w._skString16_allocate=W.skString16_allocate)(a);w._skString16_getData=a=>(w._skString16_getData=W.skString16_getData)(a);w._skString16_free=a=>(w._skString16_free=W.skString16_free)(a);w._skwasm_isWimp=()=>(w._skwasm_isWimp=W.skwasm_isWimp)();w._surface_create=()=>(w._surface_create=W.surface_create)();w._surface_setCanvas=(a,b)=>(w._surface_setCanvas=W.surface_setCanvas)(a,b);
var pc=w._surface_receiveCanvasOnWorker=(a,b,c)=>(pc=w._surface_receiveCanvasOnWorker=W.surface_receiveCanvasOnWorker)(a,b,c),qc=w._surface_onInitialized=(a,b)=>(qc=w._surface_onInitialized=W.surface_onInitialized)(a,b);w._surface_setSize=(a,b,c)=>(w._surface_setSize=W.surface_setSize)(a,b,c);
var rc=w._surface_resizeOnWorker=(a,b,c,e)=>(rc=w._surface_resizeOnWorker=W.surface_resizeOnWorker)(a,b,c,e),sc=w._surface_onResizeComplete=(a,b)=>(sc=w._surface_onResizeComplete=W.surface_onResizeComplete)(a,b);w._surface_getThreadId=a=>(w._surface_getThreadId=W.surface_getThreadId)(a);w._surface_getGlContext=a=>(w._surface_getGlContext=W.surface_getGlContext)(a);w._surface_triggerContextLoss=a=>(w._surface_triggerContextLoss=W.surface_triggerContextLoss)(a);
var tc=w._surface_triggerContextLossOnWorker=(a,b)=>(tc=w._surface_triggerContextLossOnWorker=W.surface_triggerContextLossOnWorker)(a,b),uc=w._surface_onContextLossTriggered=(a,b)=>(uc=w._surface_onContextLossTriggered=W.surface_onContextLossTriggered)(a,b),vc=w._surface_reportContextLost=(a,b)=>(vc=w._surface_reportContextLost=W.surface_reportContextLost)(a,b);w._surface_setCallbackHandler=(a,b)=>(w._surface_setCallbackHandler=W.surface_setCallbackHandler)(a,b);
w._surface_destroy=a=>(w._surface_destroy=W.surface_destroy)(a);var yc=w._surface_dispose=a=>(yc=w._surface_dispose=W.surface_dispose)(a);w._surface_setResourceCacheLimitBytes=(a,b)=>(w._surface_setResourceCacheLimitBytes=W.surface_setResourceCacheLimitBytes)(a,b);w._surface_renderPictures=(a,b,c)=>(w._surface_renderPictures=W.surface_renderPictures)(a,b,c);var wc=w._surface_renderPicturesOnWorker=(a,b,c,e,f)=>(wc=w._surface_renderPicturesOnWorker=W.surface_renderPicturesOnWorker)(a,b,c,e,f);
w._surface_rasterizeImage=(a,b,c)=>(w._surface_rasterizeImage=W.surface_rasterizeImage)(a,b,c);
var zc=w._surface_rasterizeImageOnWorker=(a,b,c,e)=>(zc=w._surface_rasterizeImageOnWorker=W.surface_rasterizeImageOnWorker)(a,b,c,e),xc=w._surface_onRenderComplete=(a,b,c)=>(xc=w._surface_onRenderComplete=W.surface_onRenderComplete)(a,b,c),Ac=w._surface_onRasterizeComplete=(a,b,c)=>(Ac=w._surface_onRasterizeComplete=W.surface_onRasterizeComplete)(a,b,c),Bc=w._surface_onContextLost=a=>(Bc=w._surface_onContextLost=W.surface_onContextLost)(a);
w._skwasm_isMultiThreaded=()=>(w._skwasm_isMultiThreaded=W.skwasm_isMultiThreaded)();w._lineMetrics_create=(a,b,c,e,f,h,l,m,p)=>(w._lineMetrics_create=W.lineMetrics_create)(a,b,c,e,f,h,l,m,p);w._lineMetrics_dispose=a=>(w._lineMetrics_dispose=W.lineMetrics_dispose)(a);w._lineMetrics_getHardBreak=a=>(w._lineMetrics_getHardBreak=W.lineMetrics_getHardBreak)(a);w._lineMetrics_getAscent=a=>(w._lineMetrics_getAscent=W.lineMetrics_getAscent)(a);w._lineMetrics_getDescent=a=>(w._lineMetrics_getDescent=W.lineMetrics_getDescent)(a);
w._lineMetrics_getUnscaledAscent=a=>(w._lineMetrics_getUnscaledAscent=W.lineMetrics_getUnscaledAscent)(a);w._lineMetrics_getHeight=a=>(w._lineMetrics_getHeight=W.lineMetrics_getHeight)(a);w._lineMetrics_getWidth=a=>(w._lineMetrics_getWidth=W.lineMetrics_getWidth)(a);w._lineMetrics_getLeft=a=>(w._lineMetrics_getLeft=W.lineMetrics_getLeft)(a);w._lineMetrics_getBaseline=a=>(w._lineMetrics_getBaseline=W.lineMetrics_getBaseline)(a);w._lineMetrics_getLineNumber=a=>(w._lineMetrics_getLineNumber=W.lineMetrics_getLineNumber)(a);
w._lineMetrics_getStartIndex=a=>(w._lineMetrics_getStartIndex=W.lineMetrics_getStartIndex)(a);w._lineMetrics_getEndIndex=a=>(w._lineMetrics_getEndIndex=W.lineMetrics_getEndIndex)(a);w._paragraph_dispose=a=>(w._paragraph_dispose=W.paragraph_dispose)(a);w._paragraph_getWidth=a=>(w._paragraph_getWidth=W.paragraph_getWidth)(a);w._paragraph_getHeight=a=>(w._paragraph_getHeight=W.paragraph_getHeight)(a);w._paragraph_getLongestLine=a=>(w._paragraph_getLongestLine=W.paragraph_getLongestLine)(a);
w._paragraph_getMinIntrinsicWidth=a=>(w._paragraph_getMinIntrinsicWidth=W.paragraph_getMinIntrinsicWidth)(a);w._paragraph_getMaxIntrinsicWidth=a=>(w._paragraph_getMaxIntrinsicWidth=W.paragraph_getMaxIntrinsicWidth)(a);w._paragraph_getAlphabeticBaseline=a=>(w._paragraph_getAlphabeticBaseline=W.paragraph_getAlphabeticBaseline)(a);w._paragraph_getIdeographicBaseline=a=>(w._paragraph_getIdeographicBaseline=W.paragraph_getIdeographicBaseline)(a);
w._paragraph_getDidExceedMaxLines=a=>(w._paragraph_getDidExceedMaxLines=W.paragraph_getDidExceedMaxLines)(a);w._paragraph_layout=(a,b)=>(w._paragraph_layout=W.paragraph_layout)(a,b);w._paragraph_getPositionForOffset=(a,b,c,e)=>(w._paragraph_getPositionForOffset=W.paragraph_getPositionForOffset)(a,b,c,e);w._paragraph_getClosestGlyphInfoAtCoordinate=(a,b,c,e,f,h)=>(w._paragraph_getClosestGlyphInfoAtCoordinate=W.paragraph_getClosestGlyphInfoAtCoordinate)(a,b,c,e,f,h);
w._paragraph_getGlyphInfoAt=(a,b,c,e,f)=>(w._paragraph_getGlyphInfoAt=W.paragraph_getGlyphInfoAt)(a,b,c,e,f);w._paragraph_getWordBoundary=(a,b,c)=>(w._paragraph_getWordBoundary=W.paragraph_getWordBoundary)(a,b,c);w._paragraph_getLineCount=a=>(w._paragraph_getLineCount=W.paragraph_getLineCount)(a);w._paragraph_getLineNumberAt=(a,b)=>(w._paragraph_getLineNumberAt=W.paragraph_getLineNumberAt)(a,b);
w._paragraph_getLineMetricsAtIndex=(a,b)=>(w._paragraph_getLineMetricsAtIndex=W.paragraph_getLineMetricsAtIndex)(a,b);w._textBoxList_dispose=a=>(w._textBoxList_dispose=W.textBoxList_dispose)(a);w._textBoxList_getLength=a=>(w._textBoxList_getLength=W.textBoxList_getLength)(a);w._textBoxList_getBoxAtIndex=(a,b,c)=>(w._textBoxList_getBoxAtIndex=W.textBoxList_getBoxAtIndex)(a,b,c);w._paragraph_getBoxesForRange=(a,b,c,e,f)=>(w._paragraph_getBoxesForRange=W.paragraph_getBoxesForRange)(a,b,c,e,f);
w._paragraph_getBoxesForPlaceholders=a=>(w._paragraph_getBoxesForPlaceholders=W.paragraph_getBoxesForPlaceholders)(a);w._paragraph_getUnresolvedCodePoints=(a,b,c)=>(w._paragraph_getUnresolvedCodePoints=W.paragraph_getUnresolvedCodePoints)(a,b,c);w._paragraphBuilder_dispose=a=>(w._paragraphBuilder_dispose=W.paragraphBuilder_dispose)(a);w._paragraphBuilder_addPlaceholder=(a,b,c,e,f,h)=>(w._paragraphBuilder_addPlaceholder=W.paragraphBuilder_addPlaceholder)(a,b,c,e,f,h);
w._paragraphBuilder_addText=(a,b)=>(w._paragraphBuilder_addText=W.paragraphBuilder_addText)(a,b);w._paragraphBuilder_getUtf8Text=(a,b)=>(w._paragraphBuilder_getUtf8Text=W.paragraphBuilder_getUtf8Text)(a,b);w._paragraphBuilder_pushStyle=(a,b)=>(w._paragraphBuilder_pushStyle=W.paragraphBuilder_pushStyle)(a,b);w._paragraphBuilder_pop=a=>(w._paragraphBuilder_pop=W.paragraphBuilder_pop)(a);w._unicodePositionBuffer_create=a=>(w._unicodePositionBuffer_create=W.unicodePositionBuffer_create)(a);
w._unicodePositionBuffer_getDataPointer=a=>(w._unicodePositionBuffer_getDataPointer=W.unicodePositionBuffer_getDataPointer)(a);w._unicodePositionBuffer_free=a=>(w._unicodePositionBuffer_free=W.unicodePositionBuffer_free)(a);w._lineBreakBuffer_create=a=>(w._lineBreakBuffer_create=W.lineBreakBuffer_create)(a);w._lineBreakBuffer_getDataPointer=a=>(w._lineBreakBuffer_getDataPointer=W.lineBreakBuffer_getDataPointer)(a);w._lineBreakBuffer_free=a=>(w._lineBreakBuffer_free=W.lineBreakBuffer_free)(a);
w._paragraphStyle_create=()=>(w._paragraphStyle_create=W.paragraphStyle_create)();w._paragraphStyle_dispose=a=>(w._paragraphStyle_dispose=W.paragraphStyle_dispose)(a);w._paragraphStyle_setTextAlign=(a,b)=>(w._paragraphStyle_setTextAlign=W.paragraphStyle_setTextAlign)(a,b);w._paragraphStyle_setTextDirection=(a,b)=>(w._paragraphStyle_setTextDirection=W.paragraphStyle_setTextDirection)(a,b);w._paragraphStyle_setMaxLines=(a,b)=>(w._paragraphStyle_setMaxLines=W.paragraphStyle_setMaxLines)(a,b);
w._paragraphStyle_setHeight=(a,b)=>(w._paragraphStyle_setHeight=W.paragraphStyle_setHeight)(a,b);w._paragraphStyle_setTextHeightBehavior=(a,b,c)=>(w._paragraphStyle_setTextHeightBehavior=W.paragraphStyle_setTextHeightBehavior)(a,b,c);w._paragraphStyle_setEllipsis=(a,b)=>(w._paragraphStyle_setEllipsis=W.paragraphStyle_setEllipsis)(a,b);w._paragraphStyle_setStrutStyle=(a,b)=>(w._paragraphStyle_setStrutStyle=W.paragraphStyle_setStrutStyle)(a,b);
w._paragraphStyle_setTextStyle=(a,b)=>(w._paragraphStyle_setTextStyle=W.paragraphStyle_setTextStyle)(a,b);w._paragraphStyle_setApplyRoundingHack=(a,b)=>(w._paragraphStyle_setApplyRoundingHack=W.paragraphStyle_setApplyRoundingHack)(a,b);w._strutStyle_create=()=>(w._strutStyle_create=W.strutStyle_create)();w._strutStyle_dispose=a=>(w._strutStyle_dispose=W.strutStyle_dispose)(a);w._strutStyle_setFontFamilies=(a,b,c)=>(w._strutStyle_setFontFamilies=W.strutStyle_setFontFamilies)(a,b,c);
w._strutStyle_setFontSize=(a,b)=>(w._strutStyle_setFontSize=W.strutStyle_setFontSize)(a,b);w._strutStyle_setHeight=(a,b)=>(w._strutStyle_setHeight=W.strutStyle_setHeight)(a,b);w._strutStyle_setHalfLeading=(a,b)=>(w._strutStyle_setHalfLeading=W.strutStyle_setHalfLeading)(a,b);w._strutStyle_setLeading=(a,b)=>(w._strutStyle_setLeading=W.strutStyle_setLeading)(a,b);w._strutStyle_setFontStyle=(a,b,c)=>(w._strutStyle_setFontStyle=W.strutStyle_setFontStyle)(a,b,c);
w._strutStyle_setForceStrutHeight=(a,b)=>(w._strutStyle_setForceStrutHeight=W.strutStyle_setForceStrutHeight)(a,b);w._textStyle_create=()=>(w._textStyle_create=W.textStyle_create)();w._textStyle_copy=a=>(w._textStyle_copy=W.textStyle_copy)(a);w._textStyle_dispose=a=>(w._textStyle_dispose=W.textStyle_dispose)(a);w._textStyle_setColor=(a,b)=>(w._textStyle_setColor=W.textStyle_setColor)(a,b);w._textStyle_setDecoration=(a,b)=>(w._textStyle_setDecoration=W.textStyle_setDecoration)(a,b);
w._textStyle_setDecorationColor=(a,b)=>(w._textStyle_setDecorationColor=W.textStyle_setDecorationColor)(a,b);w._textStyle_setDecorationStyle=(a,b)=>(w._textStyle_setDecorationStyle=W.textStyle_setDecorationStyle)(a,b);w._textStyle_setDecorationThickness=(a,b)=>(w._textStyle_setDecorationThickness=W.textStyle_setDecorationThickness)(a,b);w._textStyle_setFontStyle=(a,b,c)=>(w._textStyle_setFontStyle=W.textStyle_setFontStyle)(a,b,c);
w._textStyle_setTextBaseline=(a,b)=>(w._textStyle_setTextBaseline=W.textStyle_setTextBaseline)(a,b);w._textStyle_clearFontFamilies=a=>(w._textStyle_clearFontFamilies=W.textStyle_clearFontFamilies)(a);w._textStyle_addFontFamilies=(a,b,c)=>(w._textStyle_addFontFamilies=W.textStyle_addFontFamilies)(a,b,c);w._textStyle_setFontSize=(a,b)=>(w._textStyle_setFontSize=W.textStyle_setFontSize)(a,b);w._textStyle_setLetterSpacing=(a,b)=>(w._textStyle_setLetterSpacing=W.textStyle_setLetterSpacing)(a,b);
w._textStyle_setWordSpacing=(a,b)=>(w._textStyle_setWordSpacing=W.textStyle_setWordSpacing)(a,b);w._textStyle_setHeight=(a,b)=>(w._textStyle_setHeight=W.textStyle_setHeight)(a,b);w._textStyle_setHalfLeading=(a,b)=>(w._textStyle_setHalfLeading=W.textStyle_setHalfLeading)(a,b);w._textStyle_setLocale=(a,b)=>(w._textStyle_setLocale=W.textStyle_setLocale)(a,b);w._textStyle_setBackground=(a,b)=>(w._textStyle_setBackground=W.textStyle_setBackground)(a,b);
w._textStyle_setForeground=(a,b)=>(w._textStyle_setForeground=W.textStyle_setForeground)(a,b);w._textStyle_addShadow=(a,b,c,e,f)=>(w._textStyle_addShadow=W.textStyle_addShadow)(a,b,c,e,f);w._textStyle_addFontFeature=(a,b,c)=>(w._textStyle_addFontFeature=W.textStyle_addFontFeature)(a,b,c);w._textStyle_setFontVariations=(a,b,c,e)=>(w._textStyle_setFontVariations=W.textStyle_setFontVariations)(a,b,c,e);w._vertices_create=(a,b,c,e,f,h,l)=>(w._vertices_create=W.vertices_create)(a,b,c,e,f,h,l);
w._vertices_dispose=a=>(w._vertices_dispose=W.vertices_dispose)(a);w._animatedImage_create=(a,b,c)=>(w._animatedImage_create=W.animatedImage_create)(a,b,c);w._animatedImage_dispose=a=>(w._animatedImage_dispose=W.animatedImage_dispose)(a);w._animatedImage_getFrameCount=a=>(w._animatedImage_getFrameCount=W.animatedImage_getFrameCount)(a);w._animatedImage_getRepetitionCount=a=>(w._animatedImage_getRepetitionCount=W.animatedImage_getRepetitionCount)(a);
w._animatedImage_getCurrentFrameDurationMilliseconds=a=>(w._animatedImage_getCurrentFrameDurationMilliseconds=W.animatedImage_getCurrentFrameDurationMilliseconds)(a);w._animatedImage_decodeNextFrame=a=>(w._animatedImage_decodeNextFrame=W.animatedImage_decodeNextFrame)(a);w._animatedImage_getCurrentFrame=a=>(w._animatedImage_getCurrentFrame=W.animatedImage_getCurrentFrame)(a);w._skwasm_isHeavy=()=>(w._skwasm_isHeavy=W.skwasm_isHeavy)();
w._paragraphBuilder_create=(a,b)=>(w._paragraphBuilder_create=W.paragraphBuilder_create)(a,b);w._paragraphBuilder_build=a=>(w._paragraphBuilder_build=W.paragraphBuilder_build)(a);w._paragraphBuilder_setGraphemeBreaksUtf16=(a,b)=>(w._paragraphBuilder_setGraphemeBreaksUtf16=W.paragraphBuilder_setGraphemeBreaksUtf16)(a,b);w._paragraphBuilder_setWordBreaksUtf16=(a,b)=>(w._paragraphBuilder_setWordBreaksUtf16=W.paragraphBuilder_setWordBreaksUtf16)(a,b);
w._paragraphBuilder_setLineBreaksUtf16=(a,b)=>(w._paragraphBuilder_setLineBreaksUtf16=W.paragraphBuilder_setLineBreaksUtf16)(a,b);var Ab=a=>(Ab=W.malloc)(a),Cc=(a,b)=>(Cc=W._emscripten_timeout)(a,b),X=(a,b)=>(X=W.setThrew)(a,b),Y=a=>(Y=W._emscripten_stack_restore)(a),lc=a=>(lc=W._emscripten_stack_alloc)(a),Z=()=>(Z=W.emscripten_stack_get_current)(),Aa=(a,b)=>(Aa=W._emscripten_wasm_worker_initialize)(a,b);
function Ec(a,b,c){var e=Z();try{return B.get(a)(b,c)}catch(f){Y(e);if(f!==f+0)throw f;X(1,0)}}function Ic(a,b,c){var e=Z();try{B.get(a)(b,c)}catch(f){Y(e);if(f!==f+0)throw f;X(1,0)}}function Dc(a,b){var c=Z();try{return B.get(a)(b)}catch(e){Y(c);if(e!==e+0)throw e;X(1,0)}}function Jc(a,b,c,e){var f=Z();try{B.get(a)(b,c,e)}catch(h){Y(f);if(h!==h+0)throw h;X(1,0)}}function Fc(a,b,c,e,f){var h=Z();try{return B.get(a)(b,c,e,f)}catch(l){Y(h);if(l!==l+0)throw l;X(1,0)}}
function Kc(a,b,c,e,f,h,l,m){var p=Z();try{B.get(a)(b,c,e,f,h,l,m)}catch(v){Y(p);if(v!==v+0)throw v;X(1,0)}}function Hc(a,b){var c=Z();try{B.get(a)(b)}catch(e){Y(c);if(e!==e+0)throw e;X(1,0)}}function Gc(a,b,c,e,f,h,l){var m=Z();try{return B.get(a)(b,c,e,f,h,l)}catch(p){Y(m);if(p!==p+0)throw p;X(1,0)}}w.wasmMemory=g;w.wasmExports=W;w.stackAlloc=mc;
w.addFunction=(a,b)=>{if(!T){T=new WeakMap;var c=B.length;if(T)for(var e=0;e<0+c;e++){var f=B.get(e);f&&T.set(f,e)}}if(c=T.get(a)||0)return c;if(kc.length)c=kc.pop();else{try{B.grow(1)}catch(m){if(!(m instanceof RangeError))throw m;throw"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH.";}c=B.length-1}try{B.set(c,a)}catch(m){if(!(m instanceof TypeError))throw m;if("function"==typeof WebAssembly.Function){e=WebAssembly.Function;f={i:"i32",j:"i64",f:"f32",d:"f64",e:"externref",p:"i32"};for(var h={parameters:[],
results:"v"==b[0]?[]:[f[b[0]]]},l=1;l<b.length;++l)h.parameters.push(f[b[l]]);b=new e(h,a)}else{e=[1];f=b.slice(0,1);b=b.slice(1);h={i:127,p:127,j:126,f:125,d:124,e:111};e.push(96);l=b.length;128>l?e.push(l):e.push(l%128|128,l>>7);for(l=0;l<b.length;++l)e.push(h[b[l]]);"v"==f?e.push(0):e.push(1,h[f]);b=[0,97,115,109,1,0,0,0,1];f=e.length;128>f?b.push(f):b.push(f%128|128,f>>7);b.push(...e);b.push(2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0);b=new WebAssembly.Module(new Uint8Array(b));b=(new WebAssembly.Instance(b,
{e:{f:a}})).exports.f}B.set(c,b)}T.set(a,c);return c};var Mc,Nc;A=function Oc(){Mc||Pc();Mc||(A=Oc)};function Pc(){if(!(0<z))if(ka)ea(w),ya();else{if(!Nc&&(Nc=1,Ea(va),0<z))return;Mc||(Mc=1,w.calledRun=1,ra||(ya(),ea(w),Ea(xa)))}}Pc();moduleRtn=ha;
return moduleRtn;
}
);
})();
export default skwasm_heavy;
File diff suppressed because one or more lines are too long
Binary file not shown.
+135
View File
@@ -0,0 +1,135 @@
var wimp = (() => {
var _scriptName = typeof document != 'undefined' ? document.currentScript?.src : undefined;
return (
function(moduleArg = {}) {
var moduleRtn;
function c(){g.buffer!=k.buffer&&p();return k}function q(){g.buffer!=k.buffer&&p();return aa}function r(){g.buffer!=k.buffer&&p();return ba}function t(){g.buffer!=k.buffer&&p();return ca}function v(){g.buffer!=k.buffer&&p();return da}var w=moduleArg,ea,fa,ha=new Promise((a,b)=>{ea=a;fa=b}),ia="object"==typeof window,ja="function"==typeof importScripts,ka=w.$ww,la=Object.assign({},w),x="";function ma(a){return w.locateFile?w.locateFile(a,x):x+a}var na,oa;
if(ia||ja)ja?x=self.location.href:"undefined"!=typeof document&&document.currentScript&&(x=document.currentScript.src),_scriptName&&(x=_scriptName),x.startsWith("blob:")?x="":x=x.substr(0,x.replace(/[?#].*/,"").lastIndexOf("/")+1),ja&&(oa=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),na=a=>fetch(a,{credentials:"same-origin"}).then(b=>b.ok?b.arrayBuffer():Promise.reject(Error(b.status+" : "+b.url)));
var pa=console.log.bind(console),y=console.error.bind(console);Object.assign(w,la);la=null;var g,qa,ra=!1,sa,k,aa,ta,ua,ba,ca,da;function p(){var a=g.buffer;k=new Int8Array(a);ta=new Int16Array(a);aa=new Uint8Array(a);ua=new Uint16Array(a);ba=new Int32Array(a);ca=new Uint32Array(a);da=new Float32Array(a);new Float64Array(a)}w.wasmMemory?g=w.wasmMemory:g=new WebAssembly.Memory({initial:256,maximum:32768,shared:!0});p();var va=[],wa=[],xa=[];
function ya(){ka?(za=1,Aa(w.sb,w.sz),removeEventListener("message",Ba),Ca=Ca.forEach(Da),addEventListener("message",Da)):Ea(wa)}var z=0,Fa=null,Ga=null;function Ha(a){a="Aborted("+a+")";y(a);ra=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");fa(a);throw a;}var Ia=a=>a.startsWith("data:application/octet-stream;base64,"),Ja;
function Ka(a){return na(a).then(b=>new Uint8Array(b),()=>{if(oa)var b=oa(a);else throw"both async and sync fetching of the wasm failed";return b})}function La(a,b,d){return Ka(a).then(e=>WebAssembly.instantiate(e,b)).then(d,e=>{y(`failed to asynchronously prepare wasm: ${e}`);Ha(e)})}
function Ma(a,b){var d=Ja;return"function"!=typeof WebAssembly.instantiateStreaming||Ia(d)||"function"!=typeof fetch?La(d,a,b):fetch(d,{credentials:"same-origin"}).then(e=>WebAssembly.instantiateStreaming(e,a).then(b,function(f){y(`wasm streaming compile failed: ${f}`);y("falling back to ArrayBuffer instantiation");return La(d,a,b)}))}function Na(a){this.name="ExitStatus";this.message=`Program terminated with exit(${a})`;this.status=a}
var Ca=[],Oa=a=>{if(!(a instanceof Na||"unwind"==a))throw a;},Pa=0,Qa=a=>{sa=a;za||0<Pa||(ra=!0);throw new Na(a);},Ra=a=>{if(!ra)try{if(a(),!(za||0<Pa))try{sa=a=sa,Qa(a)}catch(b){Oa(b)}}catch(b){Oa(b)}},A,Da=a=>{let b=a.data,d=b._wsc;d&&Ra(()=>A.get(d)(...b.x))},Ba=a=>{Ca.push(a)},Ea=a=>{a.forEach(b=>b(w))},za=w.noExitRuntime||!0;class Sa{constructor(a){this.s=a-24}}
var Ta=0,Ua=0,Va="undefined"!=typeof TextDecoder?new TextDecoder:void 0,Wa=(a,b=0,d=NaN)=>{var e=b+d;for(d=b;a[d]&&!(d>=e);)++d;if(16<d-b&&a.buffer&&Va)return Va.decode(a.slice(b,d));for(e="";b<d;){var f=a[b++];if(f&128){var h=a[b++]&63;if(192==(f&224))e+=String.fromCharCode((f&31)<<6|h);else{var l=a[b++]&63;f=224==(f&240)?(f&15)<<12|h<<6|l:(f&7)<<18|h<<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},
B=(a,b)=>a?Wa(q(),a,b):"",C={},Xa=1,Ya={},D=(a,b,d)=>{var e=q();if(0<d){var f=b;d=b+d-1;for(var h=0;h<a.length;++h){var l=a.charCodeAt(h);if(55296<=l&&57343>=l){var m=a.charCodeAt(++h);l=65536+((l&1023)<<10)|m&1023}if(127>=l){if(b>=d)break;e[b++]=l}else{if(2047>=l){if(b+1>=d)break;e[b++]=192|l>>6}else{if(65535>=l){if(b+2>=d)break;e[b++]=224|l>>12}else{if(b+3>=d)break;e[b++]=240|l>>18;e[b++]=128|l>>12&63}e[b++]=128|l>>6&63}e[b++]=128|l&63}}e[b]=0;a=b-f}else a=0;return a},E,Za=a=>{var b=a.getExtension("ANGLE_instanced_arrays");
b&&(a.vertexAttribDivisor=(d,e)=>b.vertexAttribDivisorANGLE(d,e),a.drawArraysInstanced=(d,e,f,h)=>b.drawArraysInstancedANGLE(d,e,f,h),a.drawElementsInstanced=(d,e,f,h,l)=>b.drawElementsInstancedANGLE(d,e,f,h,l))},$a=a=>{var b=a.getExtension("OES_vertex_array_object");b&&(a.createVertexArray=()=>b.createVertexArrayOES(),a.deleteVertexArray=d=>b.deleteVertexArrayOES(d),a.bindVertexArray=d=>b.bindVertexArrayOES(d),a.isVertexArray=d=>b.isVertexArrayOES(d))},ab=a=>{var b=a.getExtension("WEBGL_draw_buffers");
b&&(a.drawBuffers=(d,e)=>b.drawBuffersWEBGL(d,e))},bb=a=>{a.ba=a.getExtension("WEBGL_draw_instanced_base_vertex_base_instance")},cb=a=>{a.ca=a.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance")},db=a=>{var b="ANGLE_instanced_arrays EXT_blend_minmax EXT_disjoint_timer_query EXT_frag_depth EXT_shader_texture_lod EXT_sRGB OES_element_index_uint OES_fbo_render_mipmap OES_standard_derivatives OES_texture_float OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_depth_texture WEBGL_draw_buffers EXT_color_buffer_float EXT_conservative_depth EXT_disjoint_timer_query_webgl2 EXT_texture_norm16 NV_shader_noperspective_interpolation WEBGL_clip_cull_distance EXT_clip_control EXT_color_buffer_half_float EXT_depth_clamp EXT_float_blend EXT_polygon_offset_clamp EXT_texture_compression_bptc EXT_texture_compression_rgtc EXT_texture_filter_anisotropic KHR_parallel_shader_compile OES_texture_float_linear WEBGL_blend_func_extended WEBGL_compressed_texture_astc WEBGL_compressed_texture_etc WEBGL_compressed_texture_etc1 WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context WEBGL_multi_draw WEBGL_polygon_mode".split(" ");
return(a.getSupportedExtensions()||[]).filter(d=>b.includes(d))},eb=1,F=[],G=[],fb=[],H=[],I=[],J=[],gb=[],K=[],L=[],hb=[],ib={},jb={},kb=4,lb=0,M=a=>{for(var b=eb++,d=a.length;d<b;d++)a[d]=null;return b},mb=(a,b,d,e)=>{for(var f=0;f<a;f++){var h=E[d](),l=h&&M(e);h?(h.name=l,e[l]=h):N||=1282;r()[b+4*f>>2]=l}},ob=(a,b)=>{a.s||(a.s=a.getContext,a.getContext=function(e,f){f=a.s(e,f);return"webgl"==e==f instanceof WebGLRenderingContext?f:null});var d=1<b.J?a.getContext("webgl2",b):a.getContext("webgl",
b);return d?nb(d,b):0},nb=(a,b)=>{var d=M(K),e={handle:d,attributes:b,version:b.J,m:a};a.canvas&&(a.canvas.M=e);K[d]=e;("undefined"==typeof b.H||b.H)&&pb(e);return d},pb=a=>{a||=O;if(!a.S){a.S=!0;var b=a.m;b.U=b.getExtension("WEBGL_multi_draw");b.P=b.getExtension("EXT_polygon_offset_clamp");b.O=b.getExtension("EXT_clip_control");b.Z=b.getExtension("WEBGL_polygon_mode");Za(b);$a(b);ab(b);bb(b);cb(b);2<=a.version&&(b.o=b.getExtension("EXT_disjoint_timer_query_webgl2"));if(2>a.version||!b.o)b.o=b.getExtension("EXT_disjoint_timer_query");
db(b).forEach(d=>{d.includes("lose_context")||d.includes("debug")||b.getExtension(d)})}},N,O,qb=(a,b)=>{E.bindFramebuffer(a,fb[b])},rb=a=>E.clear(a),sb=(a,b,d,e)=>E.clearColor(a,b,d,e),tb=a=>E.clearStencil(a),ub=(a,b)=>{t()[a>>2]=b;var d=t()[a>>2];t()[a+4>>2]=(b-d)/4294967296};function vb(){var a=db(E);return a=a.concat(a.map(b=>"GL_"+b))}
var wb=(a,b,d)=>{if(b){var e=void 0;switch(a){case 36346:e=1;break;case 36344:0!=d&&1!=d&&(N||=1280);return;case 34814:case 36345:e=0;break;case 34466:var f=E.getParameter(34467);e=f?f.length:0;break;case 33309:if(2>O.version){N||=1282;return}e=vb().length;break;case 33307:case 33308:if(2>O.version){N||=1280;return}e=33307==a?3:0}if(void 0===e)switch(f=E.getParameter(a),typeof f){case "number":e=f;break;case "boolean":e=f?1:0;break;case "string":N||=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:N||=1280;return}else{if(f instanceof Float32Array||f instanceof Uint32Array||f instanceof Int32Array||f instanceof Array){for(a=0;a<f.length;++a)switch(d){case 0:r()[b+4*a>>2]=f[a];break;case 2:v()[b+4*a>>2]=f[a];break;case 4:c()[b+a]=f[a]?1:0}return}try{e=f.name|0}catch(h){N||=1280;y(`GL_INVALID_ENUM in glGet${d}v: Unknown object returned from WebGL getParameter(${a})! (error: ${h})`);return}}break;default:N||=1280;y(`GL_INVALID_ENUM in glGet${d}v: Native code calling glGet${d}v(${a}) and it returns ${f} of type ${typeof f}!`);
return}switch(d){case 1:ub(b,e);break;case 0:r()[b>>2]=e;break;case 2:v()[b>>2]=e;break;case 4:c()[b]=e?1:0}}else N||=1281},xb=(a,b)=>wb(a,b,0),yb=a=>{a-=5120;0==a?a=c():1==a?a=q():2==a?(g.buffer!=k.buffer&&p(),a=ta):4==a?a=r():6==a?a=v():5==a||28922==a||28520==a||30779==a||30782==a?a=t():(g.buffer!=k.buffer&&p(),a=ua);return a},zb=(a,b,d,e,f)=>{a=yb(a);b=e*((lb||d)*({5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4}[b-6402]||1)*a.BYTES_PER_ELEMENT+kb-1&-kb);return a.subarray(f>>>31-Math.clz32(a.BYTES_PER_ELEMENT),
f+b>>>31-Math.clz32(a.BYTES_PER_ELEMENT))},Ab=(a,b,d,e,f,h,l)=>{if(2<=O.version)if(E.D)E.readPixels(a,b,d,e,f,h,l);else{var m=yb(h);l>>>=31-Math.clz32(m.BYTES_PER_ELEMENT);E.readPixels(a,b,d,e,f,h,m,l)}else(m=zb(h,f,d,e,l))?E.readPixels(a,b,d,e,f,h,m):N||=1280},Bb=()=>{Ha("Cannot use convertFrameToPC (needed by __builtin_return_address) without -sUSE_OFFSET_CONVERTER");return 0},P={},Cb=a=>{a.forEach(b=>{var d=Bb();d&&(P[d]=b)})},Db={},Fb=()=>{if(!Eb){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",_:"./this.program"},b;for(b in Db)void 0===Db[b]?delete a[b]:a[b]=Db[b];var d=[];for(b in a)d.push(`${b}=${a[b]}`);Eb=d}return Eb},Eb,Gb=[null,[],[]],Ib=a=>{for(var b=0,d=0;d<a.length;++d){var e=a.charCodeAt(d);127>=e?b++:2047>=e?b+=2:55296<=e&&57343>=e?(b+=4,++d):b+=3}b+=1;(d=Hb(b))&&D(a,d,b);return d},Jb=a=>"]"==a.slice(-1)&&a.lastIndexOf("["),Kb=[],Q=a=>{var b=
E.N;if(b){var d=b.u[a];"number"==typeof d&&(b.u[a]=d=E.getUniformLocation(b,b.K[a]+(0<d?`[${d}]`:"")));return d}N||=1282},R=[];function Lb(){}function Mb(){}function Nb(){}function Ob(){}function Pb(){}function Qb(){}function Rb(){}function Sb(){}function Tb(){}function Ub(){}function Vb(){}function Wb(){}function Xb(){}function Yb(){}function Zb(){}function $b(){}function ac(){}function bc(){}function cc(){}function dc(){}function ec(){}function fc(){}function gc(){}function T(){}
function hc(){}function ic(){}var U,jc=[],lc=a=>kc(a);w.stackAlloc=lc;ka&&(C[0]=this,addEventListener("message",Ba));for(var V=0;32>V;++V)Kb.push(Array(V));var mc=new Float32Array(288);for(V=0;288>=V;++V)R[V]=mc.subarray(0,V);
(function(){if(w.skwasmSingleThreaded){$b=function(){return!0};let e;Mb=function(f,h){e=h};Nb=function(){return performance.now()};T=function(f){queueMicrotask(()=>e(f))}}else{$b=function(){return!1};let e=0;Mb=function(f,h){function l({data:m}){const n=m.l;n&&("syncTimeOrigin"==n?e=performance.timeOrigin-m.timeOrigin:h(m))}f?(C[f].addEventListener("message",l),C[f].postMessage({l:"syncTimeOrigin",timeOrigin:performance.timeOrigin})):addEventListener("message",l)};Nb=function(){return performance.now()+
e};T=function(f,h,l){l?C[l].postMessage(f,{transfer:h}):postMessage(f,{transfer:h})}}const a=new Map,b=new Map,d=new Map;Ob=function(e){Mb(e,function(f){var h=f.l;if(h)switch(h){case "transferCanvas":nc(f.g,f.canvas,f.h);break;case "onInitialized":oc(f.g,f.h);break;case "resizeSurface":pc(f.g,f.width,f.height,f.h);break;case "onResizeComplete":qc(f.g,f.h);break;case "triggerContextLoss":rc(f.g,f.h);break;case "onContextLossTriggered":sc(f.g,f.h);break;case "reportContextLost":tc(f.g,f.h);break;case "renderPictures":uc(f.g,
f.W,f.V,f.h,Nb());break;case "onRenderComplete":vc(f.g,f.h,{imageBitmaps:f.R,rasterStartMilliseconds:f.Y,rasterEndMilliseconds:f.X});break;case "setAssociatedObject":d.set(f.F,f.object);break;case "disposeAssociatedObject":f=f.F;h=d.get(f);h.close&&h.close();d.delete(f);break;case "disposeSurface":wc(f.g);break;case "rasterizeImage":xc(f.g,f.image,f.format,f.h);break;case "onRasterizeComplete":yc(f.g,f.data,f.h);break;default:console.warn(`unrecognized skwasm message: ${h}`)}})};hc=function(e,f,h){T({l:"setAssociatedObject",
F:f,object:h},[h],e)};Yb=function(e){return d.get(e)};Xb=function(e,f){T({l:"disposeAssociatedObject",F:f},[],e)};Rb=function(e,f){T({l:"disposeSurface",g:f},[],e)};Vb=function(e,f,h,l){T({l:"transferCanvas",g:f,canvas:h,h:l},[h],e)};dc=function(e,f,h){T({l:"onInitialized",g:e,$:f,h},[])};Ub=function(e,f,h,l,m){T({l:"resizeSurface",g:f,width:h,height:l,h:m},[],e)};ec=function(e,f){T({l:"onResizeComplete",g:e,h:f},[])};fc=function(e,f,h){e=b.get(e);e.width=f;e.height=h};Tb=function(e,f,h,l,m){T({l:"renderPictures",
g:f,W:h,V:l,h:m},[],e)};gc=async function(e,f,h,l){f||=[];T({l:"onRenderComplete",g:e,h:l,R:f,Y:h,X:Nb()},[...f])};Lb=function(e,f){f||=[];e=b.get(e);f.push(e.transferToImageBitmap());return f};Sb=function(e,f,h,l,m){T({l:"rasterizeImage",g:f,image:h,format:l,h:m},[],e)};ac=function(e,f,h){T({l:"onRasterizeComplete",g:e,data:f,h})};Wb=function(e,f,h){T({l:"triggerContextLoss",g:f,h},[],e)};bc=function(e,f){T({l:"onContextLossTriggered",g:e,h:f},[])};cc=function(e,f){T({l:"reportContextLost",g:e,h:f},
[])};ic=function(){O.m.getExtension("WEBGL_lose_context").loseContext()};Zb=function(e,f,h){f=ob(e,{J:2,alpha:!0,depth:!0,stencil:!0,antialias:f,premultipliedAlpha:!0,preserveDrawingBuffer:!1,powerPreference:"default",failIfMajorPerformanceCaveat:!1,H:!0});b.set(f,e);var l=function(m){m.preventDefault();zc(h);e.removeEventListener("webglcontextlost",l)};e.addEventListener("webglcontextlost",l);a.set(f,l);return f};Qb=function(e){const f=b.get(e),h=a.get(e);f&&h&&f.removeEventListener("webglcontextlost",
h);O===K[e]&&(O=null);"object"==typeof JSEvents&&JSEvents.da(K[e].m.canvas);K[e]&&K[e].m.canvas&&(K[e].m.canvas.M=void 0);K[e]=null;b.delete(e);a.delete(e)};Pb=function(e,f,h){const l=O.m,m=l.createTexture();l.bindTexture(l.TEXTURE_2D,m);l.pixelStorei(l.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);l.texImage2D(l.TEXTURE_2D,0,l.RGBA,f,h,0,l.RGBA,l.UNSIGNED_BYTE,e);l.pixelStorei(l.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);l.bindTexture(l.TEXTURE_2D,null);e=M(I);I[e]=m;return e}})();
var Jc={__cxa_throw:(a,b,d)=>{var e=new Sa(a);t()[e.s+16>>2]=0;t()[e.s+4>>2]=b;t()[e.s+8>>2]=d;Ta=a;Ua++;throw Ta;},__syscall_fcntl64:function(){return 0},__syscall_fstat64:()=>{},__syscall_ioctl:function(){return 0},__syscall_openat:function(){},_abort_js:()=>{Ha("")},_emscripten_create_wasm_worker:(a,b)=>{let d=C[Xa]=new Worker(ma("wimp.ww.js"));d.postMessage({$ww:Xa,wasm:qa,js:w.mainScriptUrlOrBlob||_scriptName,wasmMemory:g,sb:a,sz:b});d.onmessage=Da;return Xa++},_emscripten_get_now_is_monotonic:()=>
1,_emscripten_runtime_keepalive_clear:()=>{za=!1;Pa=0},_emscripten_throw_longjmp:()=>{throw Infinity;},_mmap_js:function(){return-52},_munmap_js:function(){},_setitimer_js:(a,b)=>{Ya[a]&&(clearTimeout(Ya[a].id),delete Ya[a]);if(!b)return 0;var d=setTimeout(()=>{delete Ya[a];Ra(()=>Ac(a,performance.now()))},b);Ya[a]={id:d,ea:b};return 0},_tzset_js:(a,b,d,e)=>{var f=(new Date).getFullYear(),h=(new Date(f,0,1)).getTimezoneOffset();f=(new Date(f,6,1)).getTimezoneOffset();var l=Math.max(h,f);t()[a>>2]=
60*l;r()[b>>2]=Number(h!=f);b=m=>{var n=Math.abs(m);return`UTC${0<=m?"-":"+"}${String(Math.floor(n/60)).padStart(2,"0")}${String(n%60).padStart(2,"0")}`};a=b(h);b=b(f);f<h?(D(a,d,17),D(b,e,17)):(D(a,e,17),D(b,d,17))},emscripten_console_warn:a=>{console.warn(B(a))},emscripten_date_now:()=>Date.now(),emscripten_errn:(a,b)=>y(B(a,b)),emscripten_get_now:()=>performance.now(),emscripten_glBindFramebuffer:qb,emscripten_glClear:rb,emscripten_glClearColor:sb,emscripten_glClearStencil:tb,emscripten_glGetIntegerv:xb,
emscripten_glReadPixels:Ab,emscripten_resize_heap:a=>{var b=q().length;a>>>=0;if(a<=b||2147483648<a)return!1;for(var d=1;4>=d;d*=2){var e=b*(1+.2/d);e=Math.min(e,a+100663296);a:{e=(Math.min(2147483648,65536*Math.ceil(Math.max(a,e)/65536))-g.buffer.byteLength+65535)/65536|0;try{g.grow(e);p();var f=1;break a}catch(h){}f=void 0}if(f)return!0}return!1},emscripten_stack_snapshot:function(){var a=Error().stack.toString().split("\n");"Error"==a[0]&&a.shift();Cb(a);P.I=Bb();P.T=a;return P.I},emscripten_stack_unwind_buffer:(a,
b,d)=>{if(P.I==a)var e=P.T;else e=Error().stack.toString().split("\n"),"Error"==e[0]&&e.shift(),Cb(e);for(var f=3;e[f]&&Bb()!=a;)++f;for(a=0;a<d&&e[a+f];++a)r()[b+4*a>>2]=Bb();return a},emscripten_wasm_worker_post_function_v:(a,b)=>{C[a].postMessage({_wsc:b,x:[]})},emscripten_webgl_enable_extension:function(a,b){a=K[a];b=B(b);b.startsWith("GL_")&&(b=b.substr(3));"ANGLE_instanced_arrays"==b&&Za(E);"OES_vertex_array_object"==b&&$a(E);"WEBGL_draw_buffers"==b&&ab(E);"WEBGL_draw_instanced_base_vertex_base_instance"==
b&&bb(E);"WEBGL_multi_draw_instanced_base_vertex_base_instance"==b&&cb(E);"WEBGL_multi_draw"==b&&(E.U=E.getExtension("WEBGL_multi_draw"));"EXT_polygon_offset_clamp"==b&&(E.P=E.getExtension("EXT_polygon_offset_clamp"));"EXT_clip_control"==b&&(E.O=E.getExtension("EXT_clip_control"));"WEBGL_polygon_mode"==b&&(E.Z=E.getExtension("WEBGL_polygon_mode"));return!!a.m.getExtension(b)},emscripten_webgl_make_context_current:a=>{O=K[a];w.aa=E=O?.m;return!a||E?0:-5},environ_get:(a,b)=>{var d=0;Fb().forEach((e,
f)=>{var h=b+d;f=t()[a+4*f>>2]=h;for(h=0;h<e.length;++h)c()[f++]=e.charCodeAt(h);c()[f]=0;d+=e.length+1});return 0},environ_sizes_get:(a,b)=>{var d=Fb();t()[a>>2]=d.length;var e=0;d.forEach(f=>e+=f.length+1);t()[b>>2]=e;return 0},fd_close:()=>52,fd_pread:function(){return 52},fd_read:()=>52,fd_seek:function(){return 70},fd_write:(a,b,d,e)=>{for(var f=0,h=0;h<d;h++){var l=t()[b>>2],m=t()[b+4>>2];b+=8;for(var n=0;n<m;n++){var u=q()[l+n],S=Gb[a];0===u||10===u?((1===a?pa:y)(Wa(S)),S.length=0):S.push(u)}f+=
m}t()[e>>2]=f;return 0},glActiveTexture:a=>E.activeTexture(a),glAttachShader:(a,b)=>{E.attachShader(G[a],J[b])},glBeginQueryEXT:(a,b)=>{E.o.beginQueryEXT(a,L[b])},glBindAttribLocation:(a,b,d)=>{E.bindAttribLocation(G[a],b,B(d))},glBindBuffer:(a,b)=>{35051==a?E.D=b:35052==a&&(E.v=b);E.bindBuffer(a,F[b])},glBindBufferRange:(a,b,d,e,f)=>{E.bindBufferRange(a,b,F[d],e,f)},glBindFramebuffer:qb,glBindRenderbuffer:(a,b)=>{E.bindRenderbuffer(a,H[b])},glBindTexture:(a,b)=>{E.bindTexture(a,I[b])},glBindVertexArray:a=>
{E.bindVertexArray(gb[a])},glBlendEquationSeparate:(a,b)=>E.blendEquationSeparate(a,b),glBlendFuncSeparate:(a,b,d,e)=>E.blendFuncSeparate(a,b,d,e),glBlitFramebuffer:(a,b,d,e,f,h,l,m,n,u)=>E.blitFramebuffer(a,b,d,e,f,h,l,m,n,u),glBufferData:(a,b,d,e)=>{2<=O.version?d&&b?E.bufferData(a,q(),e,d,b):E.bufferData(a,b,e):E.bufferData(a,d?q().subarray(d,d+b):b,e)},glBufferSubData:(a,b,d,e)=>{2<=O.version?d&&E.bufferSubData(a,b,q(),e,d):E.bufferSubData(a,b,q().subarray(e,e+d))},glCheckFramebufferStatus:a=>
E.checkFramebufferStatus(a),glClear:rb,glClearColor:sb,glClearDepthf:a=>E.clearDepth(a),glClearStencil:tb,glColorMask:(a,b,d,e)=>{E.colorMask(!!a,!!b,!!d,!!e)},glCompileShader:a=>{E.compileShader(J[a])},glCreateProgram:()=>{var a=M(G),b=E.createProgram();b.name=a;b.C=b.A=b.B=0;b.G=1;G[a]=b;return a},glCreateShader:a=>{var b=M(J);J[b]=E.createShader(a);return b},glCullFace:a=>E.cullFace(a),glDeleteBuffers:(a,b)=>{for(var d=0;d<a;d++){var e=r()[b+4*d>>2],f=F[e];f&&(E.deleteBuffer(f),f.name=0,F[e]=null,
e==E.D&&(E.D=0),e==E.v&&(E.v=0))}},glDeleteFramebuffers:(a,b)=>{for(var d=0;d<a;++d){var e=r()[b+4*d>>2],f=fb[e];f&&(E.deleteFramebuffer(f),f.name=0,fb[e]=null)}},glDeleteProgram:a=>{if(a){var b=G[a];b?(E.deleteProgram(b),b.name=0,G[a]=null):N||=1281}},glDeleteQueriesEXT:(a,b)=>{for(var d=0;d<a;d++){var e=r()[b+4*d>>2],f=L[e];f&&(E.o.deleteQueryEXT(f),L[e]=null)}},glDeleteRenderbuffers:(a,b)=>{for(var d=0;d<a;d++){var e=r()[b+4*d>>2],f=H[e];f&&(E.deleteRenderbuffer(f),f.name=0,H[e]=null)}},glDeleteShader:a=>
{if(a){var b=J[a];b?(E.deleteShader(b),J[a]=null):N||=1281}},glDeleteSync:a=>{if(a){var b=hb[a];b?(E.deleteSync(b),b.name=0,hb[a]=null):N||=1281}},glDeleteTextures:(a,b)=>{for(var d=0;d<a;d++){var e=r()[b+4*d>>2],f=I[e];f&&(E.deleteTexture(f),f.name=0,I[e]=null)}},glDeleteVertexArrays:(a,b)=>{for(var d=0;d<a;d++){var e=r()[b+4*d>>2];E.deleteVertexArray(gb[e]);gb[e]=null}},glDepthFunc:a=>E.depthFunc(a),glDepthMask:a=>{E.depthMask(!!a)},glDepthRangef:(a,b)=>E.depthRange(a,b),glDetachShader:(a,b)=>{E.detachShader(G[a],
J[b])},glDisable:a=>E.disable(a),glDisableVertexAttribArray:a=>{E.disableVertexAttribArray(a)},glDrawArrays:(a,b,d)=>{E.drawArrays(a,b,d)},glDrawElements:(a,b,d,e)=>{E.drawElements(a,b,d,e)},glEnable:a=>E.enable(a),glEnableVertexAttribArray:a=>{E.enableVertexAttribArray(a)},glEndQueryEXT:a=>{E.o.endQueryEXT(a)},glFenceSync:(a,b)=>(a=E.fenceSync(a,b))?(b=M(hb),a.name=b,hb[b]=a,b):0,glFinish:()=>E.finish(),glFlush:()=>E.flush(),glFramebufferRenderbuffer:(a,b,d,e)=>{E.framebufferRenderbuffer(a,b,d,H[e])},
glFramebufferTexture2D:(a,b,d,e,f)=>{E.framebufferTexture2D(a,b,d,I[e],f)},glFrontFace:a=>E.frontFace(a),glGenBuffers:(a,b)=>{mb(a,b,"createBuffer",F)},glGenFramebuffers:(a,b)=>{mb(a,b,"createFramebuffer",fb)},glGenQueriesEXT:(a,b)=>{for(var d=0;d<a;d++){var e=E.o.createQueryEXT();if(!e){for(N||=1282;d<a;)r()[b+4*d++>>2]=0;break}var f=M(L);e.name=f;L[f]=e;r()[b+4*d>>2]=f}},glGenRenderbuffers:(a,b)=>{mb(a,b,"createRenderbuffer",H)},glGenTextures:(a,b)=>{mb(a,b,"createTexture",I)},glGenVertexArrays:(a,
b)=>{mb(a,b,"createVertexArray",gb)},glGenerateMipmap:a=>E.generateMipmap(a),glGetActiveUniform:(a,b,d,e,f,h,l)=>{a=G[a];if(b=E.getActiveUniform(a,b))d=l&&D(b.name,l,d),e&&(r()[e>>2]=d),f&&(r()[f>>2]=b.size),h&&(r()[h>>2]=b.type)},glGetActiveUniformBlockName:(a,b,d,e,f)=>{a=G[a];if(a=E.getActiveUniformBlockName(a,b))f&&0<d?(d=D(a,f,d),e&&(r()[e>>2]=d)):e&&(r()[e>>2]=0)},glGetActiveUniformBlockiv:(a,b,d,e)=>{if(e)if(a=G[a],35393==d)d=E.getActiveUniformBlockName(a,b),r()[e>>2]=d.length+1;else{if(a=
E.getActiveUniformBlockParameter(a,b,d),null!==a)if(35395==d)for(d=0;d<a.length;d++)r()[e+4*d>>2]=a[d];else r()[e>>2]=a}else N||=1281},glGetBooleanv:(a,b)=>wb(a,b,4),glGetError:()=>{var a=E.getError()||N;N=0;return a},glGetFloatv:(a,b)=>wb(a,b,2),glGetFramebufferAttachmentParameteriv:(a,b,d,e)=>{a=E.getFramebufferAttachmentParameter(a,b,d);if(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)a=a.name|0;r()[e>>2]=a},glGetIntegerv:xb,glGetProgramInfoLog:(a,b,d,e)=>{a=E.getProgramInfoLog(G[a]);
null===a&&(a="(unknown error)");b=0<b&&e?D(a,e,b):0;d&&(r()[d>>2]=b)},glGetProgramiv:(a,b,d)=>{if(d)if(a>=eb)N||=1281;else if(a=G[a],35716==b)a=E.getProgramInfoLog(a),null===a&&(a="(unknown error)"),r()[d>>2]=a.length+1;else if(35719==b){if(!a.C){var e=E.getProgramParameter(a,35718);for(b=0;b<e;++b)a.C=Math.max(a.C,E.getActiveUniform(a,b).name.length+1)}r()[d>>2]=a.C}else if(35722==b){if(!a.A)for(e=E.getProgramParameter(a,35721),b=0;b<e;++b)a.A=Math.max(a.A,E.getActiveAttrib(a,b).name.length+1);r()[d>>
2]=a.A}else if(35381==b){if(!a.B)for(e=E.getProgramParameter(a,35382),b=0;b<e;++b)a.B=Math.max(a.B,E.getActiveUniformBlockName(a,b).length+1);r()[d>>2]=a.B}else r()[d>>2]=E.getProgramParameter(a,b);else N||=1281},glGetQueryObjectui64vEXT:(a,b,d)=>{if(d){a=L[a];b=2>O.version?E.o.getQueryObjectEXT(a,b):E.getQueryParameter(a,b);var e;"boolean"==typeof b?e=b?1:0:e=b;ub(d,e)}else N||=1281},glGetQueryObjectuivEXT:(a,b,d)=>{if(d){a=E.o.getQueryObjectEXT(L[a],b);var e;"boolean"==typeof a?e=a?1:0:e=a;r()[d>>
2]=e}else N||=1281},glGetShaderInfoLog:(a,b,d,e)=>{a=E.getShaderInfoLog(J[a]);null===a&&(a="(unknown error)");b=0<b&&e?D(a,e,b):0;d&&(r()[d>>2]=b)},glGetShaderSource:(a,b,d,e)=>{if(a=E.getShaderSource(J[a]))b=0<b&&e?D(a,e,b):0,d&&(r()[d>>2]=b)},glGetShaderiv:(a,b,d)=>{d?35716==b?(a=E.getShaderInfoLog(J[a]),null===a&&(a="(unknown error)"),a=a?a.length+1:0,r()[d>>2]=a):35720==b?(a=(a=E.getShaderSource(J[a]))?a.length+1:0,r()[d>>2]=a):r()[d>>2]=E.getShaderParameter(J[a],b):N||=1281},glGetString:a=>{var b=
ib[a];if(!b){switch(a){case 7939:b=Ib(vb().join(" "));break;case 7936:case 7937:case 37445:case 37446:(b=E.getParameter(a))||(N||=1280);b=b?Ib(b):0;break;case 7938:b=E.getParameter(7938);var d=`OpenGL ES 2.0 (${b})`;2<=O.version&&(d=`OpenGL ES 3.0 (${b})`);b=Ib(d);break;case 35724:b=E.getParameter(35724);d=b.match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/);null!==d&&(3==d[1].length&&(d[1]+="0"),b=`OpenGL ES GLSL ES ${d[1]} (${b})`);b=Ib(b);break;default:N||=1280}ib[a]=b}return b},glGetStringi:(a,
b)=>{if(2>O.version)return N||=1282,0;var d=jb[a];if(d)return 0>b||b>=d.length?(N||=1281,0):d[b];switch(a){case 7939:return d=vb().map(Ib),d=jb[a]=d,0>b||b>=d.length?(N||=1281,0):d[b];default:return N||=1280,0}},glGetUniformBlockIndex:(a,b)=>E.getUniformBlockIndex(G[a],B(b)),glGetUniformLocation:(a,b)=>{b=B(b);if(a=G[a]){var d=a,e=d.u,f=d.L,h;if(!e){d.u=e={};d.K={};var l=E.getProgramParameter(d,35718);for(h=0;h<l;++h){var m=E.getActiveUniform(d,h);var n=m.name;m=m.size;var u=Jb(n);u=0<u?n.slice(0,
u):n;var S=d.G;d.G+=m;f[u]=[m,S];for(n=0;n<m;++n)e[S]=n,d.K[S++]=u}}d=a.u;e=0;f=b;h=Jb(b);0<h&&(e=parseInt(b.slice(h+1))>>>0,f=b.slice(0,h));if((f=a.L[f])&&e<f[0]&&(e+=f[1],d[e]=d[e]||E.getUniformLocation(a,b)))return e}else N||=1281;return-1},glInvalidateFramebuffer:(a,b,d)=>{for(var e=Kb[b],f=0;f<b;f++)e[f]=r()[d+4*f>>2];E.invalidateFramebuffer(a,e)},glIsBuffer:a=>(a=F[a])?E.isBuffer(a):0,glIsFramebuffer:a=>(a=fb[a])?E.isFramebuffer(a):0,glIsProgram:a=>(a=G[a])?E.isProgram(a):0,glIsRenderbuffer:a=>
(a=H[a])?E.isRenderbuffer(a):0,glIsShader:a=>(a=J[a])?E.isShader(a):0,glIsTexture:a=>(a=I[a])?E.isTexture(a):0,glLinkProgram:a=>{a=G[a];E.linkProgram(a);a.u=0;a.L={}},glPixelStorei:(a,b)=>{3317==a?kb=b:3314==a&&(lb=b);E.pixelStorei(a,b)},glReadPixels:Ab,glRenderbufferStorage:(a,b,d,e)=>E.renderbufferStorage(a,b,d,e),glRenderbufferStorageMultisample:(a,b,d,e,f)=>E.renderbufferStorageMultisample(a,b,d,e,f),glScissor:(a,b,d,e)=>E.scissor(a,b,d,e),glShaderBinary:()=>{N||=1280},glShaderSource:(a,b,d,e)=>
{for(var f="",h=0;h<b;++h){var l=e?t()[e+4*h>>2]:void 0;f+=B(t()[d+4*h>>2],l)}E.shaderSource(J[a],f)},glStencilFuncSeparate:(a,b,d,e)=>E.stencilFuncSeparate(a,b,d,e),glStencilMaskSeparate:(a,b)=>E.stencilMaskSeparate(a,b),glStencilOpSeparate:(a,b,d,e)=>E.stencilOpSeparate(a,b,d,e),glTexImage2D:(a,b,d,e,f,h,l,m,n)=>{if(2<=O.version){if(E.v){E.texImage2D(a,b,d,e,f,h,l,m,n);return}if(n){var u=yb(m);n>>>=31-Math.clz32(u.BYTES_PER_ELEMENT);E.texImage2D(a,b,d,e,f,h,l,m,u,n);return}}u=n?zb(m,l,e,f,n):null;
E.texImage2D(a,b,d,e,f,h,l,m,u)},glTexParameterfv:(a,b,d)=>{d=v()[d>>2];E.texParameterf(a,b,d)},glTexParameteri:(a,b,d)=>E.texParameteri(a,b,d),glTexSubImage2D:(a,b,d,e,f,h,l,m,n)=>{if(2<=O.version){if(E.v){E.texSubImage2D(a,b,d,e,f,h,l,m,n);return}if(n){var u=yb(m);E.texSubImage2D(a,b,d,e,f,h,l,m,u,n>>>31-Math.clz32(u.BYTES_PER_ELEMENT));return}}n=n?zb(m,l,f,h,n):null;E.texSubImage2D(a,b,d,e,f,h,l,m,n)},glUniform1fv:(a,b,d)=>{if(2<=O.version)b&&E.uniform1fv(Q(a),v(),d>>2,b);else{if(288>=b)for(var e=
R[b],f=0;f<b;++f)e[f]=v()[d+4*f>>2];else e=v().subarray(d>>2,d+4*b>>2);E.uniform1fv(Q(a),e)}},glUniform1i:(a,b)=>{E.uniform1i(Q(a),b)},glUniform2fv:(a,b,d)=>{if(2<=O.version)b&&E.uniform2fv(Q(a),v(),d>>2,2*b);else{if(144>=b){b*=2;for(var e=R[b],f=0;f<b;f+=2)e[f]=v()[d+4*f>>2],e[f+1]=v()[d+(4*f+4)>>2]}else e=v().subarray(d>>2,d+8*b>>2);E.uniform2fv(Q(a),e)}},glUniform3fv:(a,b,d)=>{if(2<=O.version)b&&E.uniform3fv(Q(a),v(),d>>2,3*b);else{if(96>=b){b*=3;for(var e=R[b],f=0;f<b;f+=3)e[f]=v()[d+4*f>>2],
e[f+1]=v()[d+(4*f+4)>>2],e[f+2]=v()[d+(4*f+8)>>2]}else e=v().subarray(d>>2,d+12*b>>2);E.uniform3fv(Q(a),e)}},glUniform4fv:(a,b,d)=>{if(2<=O.version)b&&E.uniform4fv(Q(a),v(),d>>2,4*b);else{if(72>=b){var e=R[4*b],f=v();d>>=2;b*=4;for(var h=0;h<b;h+=4){var l=d+h;e[h]=f[l];e[h+1]=f[l+1];e[h+2]=f[l+2];e[h+3]=f[l+3]}}else e=v().subarray(d>>2,d+16*b>>2);E.uniform4fv(Q(a),e)}},glUniformBlockBinding:(a,b,d)=>{a=G[a];E.uniformBlockBinding(a,b,d)},glUniformMatrix2fv:(a,b,d,e)=>{if(2<=O.version)b&&E.uniformMatrix2fv(Q(a),
!!d,v(),e>>2,4*b);else{if(72>=b){b*=4;for(var f=R[b],h=0;h<b;h+=4)f[h]=v()[e+4*h>>2],f[h+1]=v()[e+(4*h+4)>>2],f[h+2]=v()[e+(4*h+8)>>2],f[h+3]=v()[e+(4*h+12)>>2]}else f=v().subarray(e>>2,e+16*b>>2);E.uniformMatrix2fv(Q(a),!!d,f)}},glUniformMatrix3fv:(a,b,d,e)=>{if(2<=O.version)b&&E.uniformMatrix3fv(Q(a),!!d,v(),e>>2,9*b);else{if(32>=b){b*=9;for(var f=R[b],h=0;h<b;h+=9)f[h]=v()[e+4*h>>2],f[h+1]=v()[e+(4*h+4)>>2],f[h+2]=v()[e+(4*h+8)>>2],f[h+3]=v()[e+(4*h+12)>>2],f[h+4]=v()[e+(4*h+16)>>2],f[h+5]=v()[e+
(4*h+20)>>2],f[h+6]=v()[e+(4*h+24)>>2],f[h+7]=v()[e+(4*h+28)>>2],f[h+8]=v()[e+(4*h+32)>>2]}else f=v().subarray(e>>2,e+36*b>>2);E.uniformMatrix3fv(Q(a),!!d,f)}},glUniformMatrix4fv:(a,b,d,e)=>{if(2<=O.version)b&&E.uniformMatrix4fv(Q(a),!!d,v(),e>>2,16*b);else{if(18>=b){var f=R[16*b],h=v();e>>=2;b*=16;for(var l=0;l<b;l+=16){var m=e+l;f[l]=h[m];f[l+1]=h[m+1];f[l+2]=h[m+2];f[l+3]=h[m+3];f[l+4]=h[m+4];f[l+5]=h[m+5];f[l+6]=h[m+6];f[l+7]=h[m+7];f[l+8]=h[m+8];f[l+9]=h[m+9];f[l+10]=h[m+10];f[l+11]=h[m+11];
f[l+12]=h[m+12];f[l+13]=h[m+13];f[l+14]=h[m+14];f[l+15]=h[m+15]}}else f=v().subarray(e>>2,e+64*b>>2);E.uniformMatrix4fv(Q(a),!!d,f)}},glUseProgram:a=>{a=G[a];E.useProgram(a);E.N=a},glVertexAttribPointer:(a,b,d,e,f,h)=>{E.vertexAttribPointer(a,b,d,!!e,f,h)},glViewport:(a,b,d,e)=>E.viewport(a,b,d,e),glWaitSync:(a,b,d,e)=>{E.waitSync(hb[a],b,(d>>>0)+4294967296*e)},invoke_ii:Bc,invoke_iii:Cc,invoke_iiiii:Dc,invoke_iiiiiii:Ec,invoke_vi:Fc,invoke_vii:Gc,invoke_viii:Hc,invoke_viiiiiii:Ic,memory:g,proc_exit:Qa,
skwasm_captureImageBitmap:Lb,skwasm_connectThread:Ob,skwasm_createGlTextureFromTextureSource:Pb,skwasm_destroyContext:Qb,skwasm_dispatchDisposeSurface:Rb,skwasm_dispatchRasterizeImage:Sb,skwasm_dispatchRenderPictures:Tb,skwasm_dispatchResizeSurface:Ub,skwasm_dispatchTransferCanvas:Vb,skwasm_dispatchTriggerContextLoss:Wb,skwasm_disposeAssociatedObjectOnThread:Xb,skwasm_getAssociatedObject:Yb,skwasm_getGlContextForCanvas:Zb,skwasm_isSingleThreaded:$b,skwasm_postRasterizeResult:ac,skwasm_reportContextLossTriggered:bc,
skwasm_reportContextLost:cc,skwasm_reportInitialized:dc,skwasm_reportResizeComplete:ec,skwasm_resizeCanvas:fc,skwasm_resolveAndPostImages:gc,skwasm_setAssociatedObjectOnThread:hc,skwasm_triggerContextLossOnCanvas:ic},W=function(){function a(d,e){W=d.exports;w.wasmExports=W;A=W.__indirect_function_table;wa.unshift(W.__wasm_call_ctors);qa=e;z--;0==z&&(null!==Fa&&(clearInterval(Fa),Fa=null),Ga&&(d=Ga,Ga=null,d()));return W}var b={env:Jc,wasi_snapshot_preview1:Jc};z++;if(w.instantiateWasm)try{return w.instantiateWasm(b,
a)}catch(d){y(`Module.instantiateWasm callback failed with error: ${d}`),fa(d)}Ja??=Ia("wimp.wasm")?"wimp.wasm":ma("wimp.wasm");Ma(b,function(d){a(d.instance,d.module)}).catch(fa);return{}}();w._canvas_saveLayer=(a,b,d,e)=>(w._canvas_saveLayer=W.canvas_saveLayer)(a,b,d,e);w._canvas_save=a=>(w._canvas_save=W.canvas_save)(a);w._canvas_restore=a=>(w._canvas_restore=W.canvas_restore)(a);w._canvas_restoreToCount=(a,b)=>(w._canvas_restoreToCount=W.canvas_restoreToCount)(a,b);
w._canvas_getSaveCount=a=>(w._canvas_getSaveCount=W.canvas_getSaveCount)(a);w._canvas_translate=(a,b,d)=>(w._canvas_translate=W.canvas_translate)(a,b,d);w._canvas_scale=(a,b,d)=>(w._canvas_scale=W.canvas_scale)(a,b,d);w._canvas_rotate=(a,b)=>(w._canvas_rotate=W.canvas_rotate)(a,b);w._canvas_skew=(a,b,d)=>(w._canvas_skew=W.canvas_skew)(a,b,d);w._canvas_transform=(a,b)=>(w._canvas_transform=W.canvas_transform)(a,b);w._canvas_clear=(a,b)=>(w._canvas_clear=W.canvas_clear)(a,b);
w._canvas_clipRect=(a,b,d,e)=>(w._canvas_clipRect=W.canvas_clipRect)(a,b,d,e);w._canvas_clipRRect=(a,b,d)=>(w._canvas_clipRRect=W.canvas_clipRRect)(a,b,d);w._canvas_clipPath=(a,b,d)=>(w._canvas_clipPath=W.canvas_clipPath)(a,b,d);w._canvas_drawColor=(a,b,d)=>(w._canvas_drawColor=W.canvas_drawColor)(a,b,d);w._canvas_drawLine=(a,b,d,e,f,h)=>(w._canvas_drawLine=W.canvas_drawLine)(a,b,d,e,f,h);w._canvas_drawPaint=(a,b)=>(w._canvas_drawPaint=W.canvas_drawPaint)(a,b);
w._canvas_drawRect=(a,b,d)=>(w._canvas_drawRect=W.canvas_drawRect)(a,b,d);w._canvas_drawRRect=(a,b,d)=>(w._canvas_drawRRect=W.canvas_drawRRect)(a,b,d);w._canvas_drawDRRect=(a,b,d,e)=>(w._canvas_drawDRRect=W.canvas_drawDRRect)(a,b,d,e);w._canvas_drawOval=(a,b,d)=>(w._canvas_drawOval=W.canvas_drawOval)(a,b,d);w._canvas_drawCircle=(a,b,d,e,f)=>(w._canvas_drawCircle=W.canvas_drawCircle)(a,b,d,e,f);w._canvas_drawArc=(a,b,d,e,f,h)=>(w._canvas_drawArc=W.canvas_drawArc)(a,b,d,e,f,h);
w._canvas_drawPath=(a,b,d)=>(w._canvas_drawPath=W.canvas_drawPath)(a,b,d);w._canvas_drawShadow=(a,b,d,e,f,h)=>(w._canvas_drawShadow=W.canvas_drawShadow)(a,b,d,e,f,h);w._canvas_drawParagraph=(a,b,d,e)=>(w._canvas_drawParagraph=W.canvas_drawParagraph)(a,b,d,e);w._canvas_drawPicture=(a,b)=>(w._canvas_drawPicture=W.canvas_drawPicture)(a,b);w._canvas_drawImage=(a,b,d,e,f,h)=>(w._canvas_drawImage=W.canvas_drawImage)(a,b,d,e,f,h);
w._canvas_drawImageRect=(a,b,d,e,f,h)=>(w._canvas_drawImageRect=W.canvas_drawImageRect)(a,b,d,e,f,h);w._canvas_drawImageNine=(a,b,d,e,f,h)=>(w._canvas_drawImageNine=W.canvas_drawImageNine)(a,b,d,e,f,h);w._canvas_drawVertices=(a,b,d,e)=>(w._canvas_drawVertices=W.canvas_drawVertices)(a,b,d,e);w._canvas_drawPoints=(a,b,d,e,f)=>(w._canvas_drawPoints=W.canvas_drawPoints)(a,b,d,e,f);w._canvas_drawAtlas=(a,b,d,e,f,h,l,m,n)=>(w._canvas_drawAtlas=W.canvas_drawAtlas)(a,b,d,e,f,h,l,m,n);
w._canvas_getTransform=(a,b)=>(w._canvas_getTransform=W.canvas_getTransform)(a,b);w._canvas_getLocalClipBounds=(a,b)=>(w._canvas_getLocalClipBounds=W.canvas_getLocalClipBounds)(a,b);w._canvas_getDeviceClipBounds=(a,b)=>(w._canvas_getDeviceClipBounds=W.canvas_getDeviceClipBounds)(a,b);w._canvas_quickReject=(a,b)=>(w._canvas_quickReject=W.canvas_quickReject)(a,b);w._contourMeasureIter_create=(a,b,d)=>(w._contourMeasureIter_create=W.contourMeasureIter_create)(a,b,d);
w._contourMeasureIter_next=a=>(w._contourMeasureIter_next=W.contourMeasureIter_next)(a);w._contourMeasureIter_dispose=a=>(w._contourMeasureIter_dispose=W.contourMeasureIter_dispose)(a);w._contourMeasure_dispose=a=>(w._contourMeasure_dispose=W.contourMeasure_dispose)(a);w._contourMeasure_length=a=>(w._contourMeasure_length=W.contourMeasure_length)(a);w._contourMeasure_isClosed=a=>(w._contourMeasure_isClosed=W.contourMeasure_isClosed)(a);
w._contourMeasure_getPosTan=(a,b,d,e)=>(w._contourMeasure_getPosTan=W.contourMeasure_getPosTan)(a,b,d,e);w._contourMeasure_getSegment=(a,b,d,e)=>(w._contourMeasure_getSegment=W.contourMeasure_getSegment)(a,b,d,e);w._skData_create=a=>(w._skData_create=W.skData_create)(a);w._skData_getPointer=a=>(w._skData_getPointer=W.skData_getPointer)(a);w._skData_getConstPointer=a=>(w._skData_getConstPointer=W.skData_getConstPointer)(a);w._skData_getSize=a=>(w._skData_getSize=W.skData_getSize)(a);
w._skData_dispose=a=>(w._skData_dispose=W.skData_dispose)(a);w._imageFilter_createBlur=(a,b,d)=>(w._imageFilter_createBlur=W.imageFilter_createBlur)(a,b,d);w._imageFilter_createDilate=(a,b)=>(w._imageFilter_createDilate=W.imageFilter_createDilate)(a,b);w._imageFilter_createErode=(a,b)=>(w._imageFilter_createErode=W.imageFilter_createErode)(a,b);w._imageFilter_createMatrix=(a,b)=>(w._imageFilter_createMatrix=W.imageFilter_createMatrix)(a,b);
w._imageFilter_createFromColorFilter=a=>(w._imageFilter_createFromColorFilter=W.imageFilter_createFromColorFilter)(a);w._imageFilter_compose=(a,b)=>(w._imageFilter_compose=W.imageFilter_compose)(a,b);w._imageFilter_dispose=a=>(w._imageFilter_dispose=W.imageFilter_dispose)(a);w._imageFilter_getFilterBounds=(a,b)=>(w._imageFilter_getFilterBounds=W.imageFilter_getFilterBounds)(a,b);w._colorFilter_createMode=(a,b)=>(w._colorFilter_createMode=W.colorFilter_createMode)(a,b);
w._colorFilter_createMatrix=a=>(w._colorFilter_createMatrix=W.colorFilter_createMatrix)(a);w._colorFilter_createSRGBToLinearGamma=()=>(w._colorFilter_createSRGBToLinearGamma=W.colorFilter_createSRGBToLinearGamma)();w._colorFilter_createLinearToSRGBGamma=()=>(w._colorFilter_createLinearToSRGBGamma=W.colorFilter_createLinearToSRGBGamma)();w._colorFilter_dispose=a=>(w._colorFilter_dispose=W.colorFilter_dispose)(a);w._maskFilter_createBlur=(a,b)=>(w._maskFilter_createBlur=W.maskFilter_createBlur)(a,b);
w._maskFilter_dispose=a=>(w._maskFilter_dispose=W.maskFilter_dispose)(a);w._fontCollection_create=()=>(w._fontCollection_create=W.fontCollection_create)();w._fontCollection_dispose=a=>(w._fontCollection_dispose=W.fontCollection_dispose)(a);w._typeface_create=a=>(w._typeface_create=W.typeface_create)(a);w._typeface_dispose=a=>(w._typeface_dispose=W.typeface_dispose)(a);w._typefaces_filterCoveredCodePoints=(a,b,d,e)=>(w._typefaces_filterCoveredCodePoints=W.typefaces_filterCoveredCodePoints)(a,b,d,e);
w._fontCollection_registerTypeface=(a,b,d)=>(w._fontCollection_registerTypeface=W.fontCollection_registerTypeface)(a,b,d);w._fontCollection_clearCaches=a=>(w._fontCollection_clearCaches=W.fontCollection_clearCaches)(a);w._image_createFromPicture=(a,b,d)=>(w._image_createFromPicture=W.image_createFromPicture)(a,b,d);w._image_createFromPixels=(a,b,d,e,f)=>(w._image_createFromPixels=W.image_createFromPixels)(a,b,d,e,f);
w._image_createFromTextureSource=(a,b,d,e)=>(w._image_createFromTextureSource=W.image_createFromTextureSource)(a,b,d,e);w._image_ref=a=>(w._image_ref=W.image_ref)(a);w._image_dispose=a=>(w._image_dispose=W.image_dispose)(a);w._image_getWidth=a=>(w._image_getWidth=W.image_getWidth)(a);w._image_getHeight=a=>(w._image_getHeight=W.image_getHeight)(a);w._skwasm_getLiveObjectCounts=a=>(w._skwasm_getLiveObjectCounts=W.skwasm_getLiveObjectCounts)(a);
w._paint_create=(a,b,d,e,f,h,l,m,n)=>(w._paint_create=W.paint_create)(a,b,d,e,f,h,l,m,n);w._paint_dispose=a=>(w._paint_dispose=W.paint_dispose)(a);w._paint_setShader=(a,b)=>(w._paint_setShader=W.paint_setShader)(a,b);w._paint_setImageFilter=(a,b)=>(w._paint_setImageFilter=W.paint_setImageFilter)(a,b);w._paint_setColorFilter=(a,b)=>(w._paint_setColorFilter=W.paint_setColorFilter)(a,b);w._paint_setMaskFilter=(a,b)=>(w._paint_setMaskFilter=W.paint_setMaskFilter)(a,b);
w._path_create=()=>(w._path_create=W.path_create)();w._path_dispose=a=>(w._path_dispose=W.path_dispose)(a);w._path_copy=a=>(w._path_copy=W.path_copy)(a);w._path_setFillType=(a,b)=>(w._path_setFillType=W.path_setFillType)(a,b);w._path_getFillType=a=>(w._path_getFillType=W.path_getFillType)(a);w._path_moveTo=(a,b,d)=>(w._path_moveTo=W.path_moveTo)(a,b,d);w._path_relativeMoveTo=(a,b,d)=>(w._path_relativeMoveTo=W.path_relativeMoveTo)(a,b,d);w._path_lineTo=(a,b,d)=>(w._path_lineTo=W.path_lineTo)(a,b,d);
w._path_relativeLineTo=(a,b,d)=>(w._path_relativeLineTo=W.path_relativeLineTo)(a,b,d);w._path_quadraticBezierTo=(a,b,d,e,f)=>(w._path_quadraticBezierTo=W.path_quadraticBezierTo)(a,b,d,e,f);w._path_relativeQuadraticBezierTo=(a,b,d,e,f)=>(w._path_relativeQuadraticBezierTo=W.path_relativeQuadraticBezierTo)(a,b,d,e,f);w._path_cubicTo=(a,b,d,e,f,h,l)=>(w._path_cubicTo=W.path_cubicTo)(a,b,d,e,f,h,l);w._path_relativeCubicTo=(a,b,d,e,f,h,l)=>(w._path_relativeCubicTo=W.path_relativeCubicTo)(a,b,d,e,f,h,l);
w._path_conicTo=(a,b,d,e,f,h)=>(w._path_conicTo=W.path_conicTo)(a,b,d,e,f,h);w._path_relativeConicTo=(a,b,d,e,f,h)=>(w._path_relativeConicTo=W.path_relativeConicTo)(a,b,d,e,f,h);w._path_arcToOval=(a,b,d,e,f)=>(w._path_arcToOval=W.path_arcToOval)(a,b,d,e,f);w._path_arcToRotated=(a,b,d,e,f,h,l,m)=>(w._path_arcToRotated=W.path_arcToRotated)(a,b,d,e,f,h,l,m);w._path_relativeArcToRotated=(a,b,d,e,f,h,l,m)=>(w._path_relativeArcToRotated=W.path_relativeArcToRotated)(a,b,d,e,f,h,l,m);
w._path_addRect=(a,b)=>(w._path_addRect=W.path_addRect)(a,b);w._path_addOval=(a,b)=>(w._path_addOval=W.path_addOval)(a,b);w._path_addArc=(a,b,d,e)=>(w._path_addArc=W.path_addArc)(a,b,d,e);w._path_addPolygon=(a,b,d,e)=>(w._path_addPolygon=W.path_addPolygon)(a,b,d,e);w._path_addRRect=(a,b)=>(w._path_addRRect=W.path_addRRect)(a,b);w._path_addPath=(a,b,d,e)=>(w._path_addPath=W.path_addPath)(a,b,d,e);w._path_close=a=>(w._path_close=W.path_close)(a);w._path_reset=a=>(w._path_reset=W.path_reset)(a);
w._path_contains=(a,b,d)=>(w._path_contains=W.path_contains)(a,b,d);w._path_transform=(a,b)=>(w._path_transform=W.path_transform)(a,b);w._path_getBounds=(a,b)=>(w._path_getBounds=W.path_getBounds)(a,b);w._path_combine=(a,b,d)=>(w._path_combine=W.path_combine)(a,b,d);w._path_getSvgString=a=>(w._path_getSvgString=W.path_getSvgString)(a);w._pictureRecorder_create=()=>(w._pictureRecorder_create=W.pictureRecorder_create)();w._pictureRecorder_dispose=a=>(w._pictureRecorder_dispose=W.pictureRecorder_dispose)(a);
w._pictureRecorder_beginRecording=(a,b)=>(w._pictureRecorder_beginRecording=W.pictureRecorder_beginRecording)(a,b);w._pictureRecorder_endRecording=a=>(w._pictureRecorder_endRecording=W.pictureRecorder_endRecording)(a);w._picture_getCullRect=(a,b)=>(w._picture_getCullRect=W.picture_getCullRect)(a,b);w._picture_ref=a=>(w._picture_ref=W.picture_ref)(a);w._picture_dispose=a=>(w._picture_dispose=W.picture_dispose)(a);w._picture_approximateBytesUsed=a=>(w._picture_approximateBytesUsed=W.picture_approximateBytesUsed)(a);
w._shader_createLinearGradient=(a,b,d,e,f,h)=>(w._shader_createLinearGradient=W.shader_createLinearGradient)(a,b,d,e,f,h);w._shader_createRadialGradient=(a,b,d,e,f,h,l,m)=>(w._shader_createRadialGradient=W.shader_createRadialGradient)(a,b,d,e,f,h,l,m);w._shader_createConicalGradient=(a,b,d,e,f,h,l,m)=>(w._shader_createConicalGradient=W.shader_createConicalGradient)(a,b,d,e,f,h,l,m);
w._shader_createSweepGradient=(a,b,d,e,f,h,l,m,n)=>(w._shader_createSweepGradient=W.shader_createSweepGradient)(a,b,d,e,f,h,l,m,n);w._shader_dispose=a=>(w._shader_dispose=W.shader_dispose)(a);w._runtimeEffect_create=a=>(w._runtimeEffect_create=W.runtimeEffect_create)(a);w._runtimeEffect_dispose=a=>(w._runtimeEffect_dispose=W.runtimeEffect_dispose)(a);w._runtimeEffect_getUniformSize=a=>(w._runtimeEffect_getUniformSize=W.runtimeEffect_getUniformSize)(a);
w._shader_createRuntimeEffectShader=(a,b,d,e)=>(w._shader_createRuntimeEffectShader=W.shader_createRuntimeEffectShader)(a,b,d,e);w._shader_createFromImage=(a,b,d,e,f)=>(w._shader_createFromImage=W.shader_createFromImage)(a,b,d,e,f);w._uniformData_create=a=>(w._uniformData_create=W.uniformData_create)(a);w._uniformData_dispose=a=>(w._uniformData_dispose=W.uniformData_dispose)(a);w._uniformData_getPointer=a=>(w._uniformData_getPointer=W.uniformData_getPointer)(a);
w._skString_allocate=a=>(w._skString_allocate=W.skString_allocate)(a);w._skString_getData=a=>(w._skString_getData=W.skString_getData)(a);w._skString_getLength=a=>(w._skString_getLength=W.skString_getLength)(a);w._skString_free=a=>(w._skString_free=W.skString_free)(a);w._skString16_allocate=a=>(w._skString16_allocate=W.skString16_allocate)(a);w._skString16_getData=a=>(w._skString16_getData=W.skString16_getData)(a);w._skString16_free=a=>(w._skString16_free=W.skString16_free)(a);
w._skwasm_isWimp=()=>(w._skwasm_isWimp=W.skwasm_isWimp)();w._surface_create=()=>(w._surface_create=W.surface_create)();w._surface_setCanvas=(a,b)=>(w._surface_setCanvas=W.surface_setCanvas)(a,b);var nc=w._surface_receiveCanvasOnWorker=(a,b,d)=>(nc=w._surface_receiveCanvasOnWorker=W.surface_receiveCanvasOnWorker)(a,b,d),oc=w._surface_onInitialized=(a,b)=>(oc=w._surface_onInitialized=W.surface_onInitialized)(a,b);w._surface_setSize=(a,b,d)=>(w._surface_setSize=W.surface_setSize)(a,b,d);
var pc=w._surface_resizeOnWorker=(a,b,d,e)=>(pc=w._surface_resizeOnWorker=W.surface_resizeOnWorker)(a,b,d,e),qc=w._surface_onResizeComplete=(a,b)=>(qc=w._surface_onResizeComplete=W.surface_onResizeComplete)(a,b);w._surface_getThreadId=a=>(w._surface_getThreadId=W.surface_getThreadId)(a);w._surface_getGlContext=a=>(w._surface_getGlContext=W.surface_getGlContext)(a);w._surface_triggerContextLoss=a=>(w._surface_triggerContextLoss=W.surface_triggerContextLoss)(a);
var rc=w._surface_triggerContextLossOnWorker=(a,b)=>(rc=w._surface_triggerContextLossOnWorker=W.surface_triggerContextLossOnWorker)(a,b),sc=w._surface_onContextLossTriggered=(a,b)=>(sc=w._surface_onContextLossTriggered=W.surface_onContextLossTriggered)(a,b),tc=w._surface_reportContextLost=(a,b)=>(tc=w._surface_reportContextLost=W.surface_reportContextLost)(a,b);w._surface_setCallbackHandler=(a,b)=>(w._surface_setCallbackHandler=W.surface_setCallbackHandler)(a,b);
w._surface_destroy=a=>(w._surface_destroy=W.surface_destroy)(a);var wc=w._surface_dispose=a=>(wc=w._surface_dispose=W.surface_dispose)(a);w._surface_setResourceCacheLimitBytes=(a,b)=>(w._surface_setResourceCacheLimitBytes=W.surface_setResourceCacheLimitBytes)(a,b);w._surface_renderPictures=(a,b,d)=>(w._surface_renderPictures=W.surface_renderPictures)(a,b,d);var uc=w._surface_renderPicturesOnWorker=(a,b,d,e,f)=>(uc=w._surface_renderPicturesOnWorker=W.surface_renderPicturesOnWorker)(a,b,d,e,f);
w._surface_rasterizeImage=(a,b,d)=>(w._surface_rasterizeImage=W.surface_rasterizeImage)(a,b,d);
var xc=w._surface_rasterizeImageOnWorker=(a,b,d,e)=>(xc=w._surface_rasterizeImageOnWorker=W.surface_rasterizeImageOnWorker)(a,b,d,e),vc=w._surface_onRenderComplete=(a,b,d)=>(vc=w._surface_onRenderComplete=W.surface_onRenderComplete)(a,b,d),yc=w._surface_onRasterizeComplete=(a,b,d)=>(yc=w._surface_onRasterizeComplete=W.surface_onRasterizeComplete)(a,b,d),zc=w._surface_onContextLost=a=>(zc=w._surface_onContextLost=W.surface_onContextLost)(a);
w._skwasm_isMultiThreaded=()=>(w._skwasm_isMultiThreaded=W.skwasm_isMultiThreaded)();w._lineMetrics_create=(a,b,d,e,f,h,l,m,n)=>(w._lineMetrics_create=W.lineMetrics_create)(a,b,d,e,f,h,l,m,n);w._lineMetrics_dispose=a=>(w._lineMetrics_dispose=W.lineMetrics_dispose)(a);w._lineMetrics_getHardBreak=a=>(w._lineMetrics_getHardBreak=W.lineMetrics_getHardBreak)(a);w._lineMetrics_getAscent=a=>(w._lineMetrics_getAscent=W.lineMetrics_getAscent)(a);w._lineMetrics_getDescent=a=>(w._lineMetrics_getDescent=W.lineMetrics_getDescent)(a);
w._lineMetrics_getUnscaledAscent=a=>(w._lineMetrics_getUnscaledAscent=W.lineMetrics_getUnscaledAscent)(a);w._lineMetrics_getHeight=a=>(w._lineMetrics_getHeight=W.lineMetrics_getHeight)(a);w._lineMetrics_getWidth=a=>(w._lineMetrics_getWidth=W.lineMetrics_getWidth)(a);w._lineMetrics_getLeft=a=>(w._lineMetrics_getLeft=W.lineMetrics_getLeft)(a);w._lineMetrics_getBaseline=a=>(w._lineMetrics_getBaseline=W.lineMetrics_getBaseline)(a);w._lineMetrics_getLineNumber=a=>(w._lineMetrics_getLineNumber=W.lineMetrics_getLineNumber)(a);
w._lineMetrics_getStartIndex=a=>(w._lineMetrics_getStartIndex=W.lineMetrics_getStartIndex)(a);w._lineMetrics_getEndIndex=a=>(w._lineMetrics_getEndIndex=W.lineMetrics_getEndIndex)(a);w._paragraph_dispose=a=>(w._paragraph_dispose=W.paragraph_dispose)(a);w._paragraph_getWidth=a=>(w._paragraph_getWidth=W.paragraph_getWidth)(a);w._paragraph_getHeight=a=>(w._paragraph_getHeight=W.paragraph_getHeight)(a);w._paragraph_getLongestLine=a=>(w._paragraph_getLongestLine=W.paragraph_getLongestLine)(a);
w._paragraph_getMinIntrinsicWidth=a=>(w._paragraph_getMinIntrinsicWidth=W.paragraph_getMinIntrinsicWidth)(a);w._paragraph_getMaxIntrinsicWidth=a=>(w._paragraph_getMaxIntrinsicWidth=W.paragraph_getMaxIntrinsicWidth)(a);w._paragraph_getAlphabeticBaseline=a=>(w._paragraph_getAlphabeticBaseline=W.paragraph_getAlphabeticBaseline)(a);w._paragraph_getIdeographicBaseline=a=>(w._paragraph_getIdeographicBaseline=W.paragraph_getIdeographicBaseline)(a);
w._paragraph_getDidExceedMaxLines=a=>(w._paragraph_getDidExceedMaxLines=W.paragraph_getDidExceedMaxLines)(a);w._paragraph_layout=(a,b)=>(w._paragraph_layout=W.paragraph_layout)(a,b);w._paragraph_getPositionForOffset=(a,b,d,e)=>(w._paragraph_getPositionForOffset=W.paragraph_getPositionForOffset)(a,b,d,e);w._paragraph_getClosestGlyphInfoAtCoordinate=(a,b,d,e,f,h)=>(w._paragraph_getClosestGlyphInfoAtCoordinate=W.paragraph_getClosestGlyphInfoAtCoordinate)(a,b,d,e,f,h);
w._paragraph_getGlyphInfoAt=(a,b,d,e,f)=>(w._paragraph_getGlyphInfoAt=W.paragraph_getGlyphInfoAt)(a,b,d,e,f);w._paragraph_getWordBoundary=(a,b,d)=>(w._paragraph_getWordBoundary=W.paragraph_getWordBoundary)(a,b,d);w._paragraph_getLineCount=a=>(w._paragraph_getLineCount=W.paragraph_getLineCount)(a);w._paragraph_getLineNumberAt=(a,b)=>(w._paragraph_getLineNumberAt=W.paragraph_getLineNumberAt)(a,b);
w._paragraph_getLineMetricsAtIndex=(a,b)=>(w._paragraph_getLineMetricsAtIndex=W.paragraph_getLineMetricsAtIndex)(a,b);w._textBoxList_dispose=a=>(w._textBoxList_dispose=W.textBoxList_dispose)(a);w._textBoxList_getLength=a=>(w._textBoxList_getLength=W.textBoxList_getLength)(a);w._textBoxList_getBoxAtIndex=(a,b,d)=>(w._textBoxList_getBoxAtIndex=W.textBoxList_getBoxAtIndex)(a,b,d);w._paragraph_getBoxesForRange=(a,b,d,e,f)=>(w._paragraph_getBoxesForRange=W.paragraph_getBoxesForRange)(a,b,d,e,f);
w._paragraph_getBoxesForPlaceholders=a=>(w._paragraph_getBoxesForPlaceholders=W.paragraph_getBoxesForPlaceholders)(a);w._paragraph_getUnresolvedCodePoints=(a,b,d)=>(w._paragraph_getUnresolvedCodePoints=W.paragraph_getUnresolvedCodePoints)(a,b,d);w._paragraphBuilder_dispose=a=>(w._paragraphBuilder_dispose=W.paragraphBuilder_dispose)(a);w._paragraphBuilder_addPlaceholder=(a,b,d,e,f,h)=>(w._paragraphBuilder_addPlaceholder=W.paragraphBuilder_addPlaceholder)(a,b,d,e,f,h);
w._paragraphBuilder_addText=(a,b)=>(w._paragraphBuilder_addText=W.paragraphBuilder_addText)(a,b);w._paragraphBuilder_getUtf8Text=(a,b)=>(w._paragraphBuilder_getUtf8Text=W.paragraphBuilder_getUtf8Text)(a,b);w._paragraphBuilder_pushStyle=(a,b)=>(w._paragraphBuilder_pushStyle=W.paragraphBuilder_pushStyle)(a,b);w._paragraphBuilder_pop=a=>(w._paragraphBuilder_pop=W.paragraphBuilder_pop)(a);w._unicodePositionBuffer_create=a=>(w._unicodePositionBuffer_create=W.unicodePositionBuffer_create)(a);
w._unicodePositionBuffer_getDataPointer=a=>(w._unicodePositionBuffer_getDataPointer=W.unicodePositionBuffer_getDataPointer)(a);w._unicodePositionBuffer_free=a=>(w._unicodePositionBuffer_free=W.unicodePositionBuffer_free)(a);w._lineBreakBuffer_create=a=>(w._lineBreakBuffer_create=W.lineBreakBuffer_create)(a);w._lineBreakBuffer_getDataPointer=a=>(w._lineBreakBuffer_getDataPointer=W.lineBreakBuffer_getDataPointer)(a);w._lineBreakBuffer_free=a=>(w._lineBreakBuffer_free=W.lineBreakBuffer_free)(a);
w._paragraphStyle_create=()=>(w._paragraphStyle_create=W.paragraphStyle_create)();w._paragraphStyle_dispose=a=>(w._paragraphStyle_dispose=W.paragraphStyle_dispose)(a);w._paragraphStyle_setTextAlign=(a,b)=>(w._paragraphStyle_setTextAlign=W.paragraphStyle_setTextAlign)(a,b);w._paragraphStyle_setTextDirection=(a,b)=>(w._paragraphStyle_setTextDirection=W.paragraphStyle_setTextDirection)(a,b);w._paragraphStyle_setMaxLines=(a,b)=>(w._paragraphStyle_setMaxLines=W.paragraphStyle_setMaxLines)(a,b);
w._paragraphStyle_setHeight=(a,b)=>(w._paragraphStyle_setHeight=W.paragraphStyle_setHeight)(a,b);w._paragraphStyle_setTextHeightBehavior=(a,b,d)=>(w._paragraphStyle_setTextHeightBehavior=W.paragraphStyle_setTextHeightBehavior)(a,b,d);w._paragraphStyle_setEllipsis=(a,b)=>(w._paragraphStyle_setEllipsis=W.paragraphStyle_setEllipsis)(a,b);w._paragraphStyle_setStrutStyle=(a,b)=>(w._paragraphStyle_setStrutStyle=W.paragraphStyle_setStrutStyle)(a,b);
w._paragraphStyle_setTextStyle=(a,b)=>(w._paragraphStyle_setTextStyle=W.paragraphStyle_setTextStyle)(a,b);w._paragraphStyle_setApplyRoundingHack=(a,b)=>(w._paragraphStyle_setApplyRoundingHack=W.paragraphStyle_setApplyRoundingHack)(a,b);w._strutStyle_create=()=>(w._strutStyle_create=W.strutStyle_create)();w._strutStyle_dispose=a=>(w._strutStyle_dispose=W.strutStyle_dispose)(a);w._strutStyle_setFontFamilies=(a,b,d)=>(w._strutStyle_setFontFamilies=W.strutStyle_setFontFamilies)(a,b,d);
w._strutStyle_setFontSize=(a,b)=>(w._strutStyle_setFontSize=W.strutStyle_setFontSize)(a,b);w._strutStyle_setHeight=(a,b)=>(w._strutStyle_setHeight=W.strutStyle_setHeight)(a,b);w._strutStyle_setHalfLeading=(a,b)=>(w._strutStyle_setHalfLeading=W.strutStyle_setHalfLeading)(a,b);w._strutStyle_setLeading=(a,b)=>(w._strutStyle_setLeading=W.strutStyle_setLeading)(a,b);w._strutStyle_setFontStyle=(a,b,d)=>(w._strutStyle_setFontStyle=W.strutStyle_setFontStyle)(a,b,d);
w._strutStyle_setForceStrutHeight=(a,b)=>(w._strutStyle_setForceStrutHeight=W.strutStyle_setForceStrutHeight)(a,b);w._textStyle_create=()=>(w._textStyle_create=W.textStyle_create)();w._textStyle_copy=a=>(w._textStyle_copy=W.textStyle_copy)(a);w._textStyle_dispose=a=>(w._textStyle_dispose=W.textStyle_dispose)(a);w._textStyle_setColor=(a,b)=>(w._textStyle_setColor=W.textStyle_setColor)(a,b);w._textStyle_setDecoration=(a,b)=>(w._textStyle_setDecoration=W.textStyle_setDecoration)(a,b);
w._textStyle_setDecorationColor=(a,b)=>(w._textStyle_setDecorationColor=W.textStyle_setDecorationColor)(a,b);w._textStyle_setDecorationStyle=(a,b)=>(w._textStyle_setDecorationStyle=W.textStyle_setDecorationStyle)(a,b);w._textStyle_setDecorationThickness=(a,b)=>(w._textStyle_setDecorationThickness=W.textStyle_setDecorationThickness)(a,b);w._textStyle_setFontStyle=(a,b,d)=>(w._textStyle_setFontStyle=W.textStyle_setFontStyle)(a,b,d);
w._textStyle_setTextBaseline=(a,b)=>(w._textStyle_setTextBaseline=W.textStyle_setTextBaseline)(a,b);w._textStyle_clearFontFamilies=a=>(w._textStyle_clearFontFamilies=W.textStyle_clearFontFamilies)(a);w._textStyle_addFontFamilies=(a,b,d)=>(w._textStyle_addFontFamilies=W.textStyle_addFontFamilies)(a,b,d);w._textStyle_setFontSize=(a,b)=>(w._textStyle_setFontSize=W.textStyle_setFontSize)(a,b);w._textStyle_setLetterSpacing=(a,b)=>(w._textStyle_setLetterSpacing=W.textStyle_setLetterSpacing)(a,b);
w._textStyle_setWordSpacing=(a,b)=>(w._textStyle_setWordSpacing=W.textStyle_setWordSpacing)(a,b);w._textStyle_setHeight=(a,b)=>(w._textStyle_setHeight=W.textStyle_setHeight)(a,b);w._textStyle_setHalfLeading=(a,b)=>(w._textStyle_setHalfLeading=W.textStyle_setHalfLeading)(a,b);w._textStyle_setLocale=(a,b)=>(w._textStyle_setLocale=W.textStyle_setLocale)(a,b);w._textStyle_setBackground=(a,b)=>(w._textStyle_setBackground=W.textStyle_setBackground)(a,b);
w._textStyle_setForeground=(a,b)=>(w._textStyle_setForeground=W.textStyle_setForeground)(a,b);w._textStyle_addShadow=(a,b,d,e,f)=>(w._textStyle_addShadow=W.textStyle_addShadow)(a,b,d,e,f);w._textStyle_addFontFeature=(a,b,d)=>(w._textStyle_addFontFeature=W.textStyle_addFontFeature)(a,b,d);w._textStyle_setFontVariations=(a,b,d,e)=>(w._textStyle_setFontVariations=W.textStyle_setFontVariations)(a,b,d,e);w._vertices_create=(a,b,d,e,f,h,l)=>(w._vertices_create=W.vertices_create)(a,b,d,e,f,h,l);
w._vertices_dispose=a=>(w._vertices_dispose=W.vertices_dispose)(a);w._animatedImage_create=(a,b,d)=>(w._animatedImage_create=W.animatedImage_create)(a,b,d);w._animatedImage_dispose=a=>(w._animatedImage_dispose=W.animatedImage_dispose)(a);w._animatedImage_getFrameCount=a=>(w._animatedImage_getFrameCount=W.animatedImage_getFrameCount)(a);w._animatedImage_getRepetitionCount=a=>(w._animatedImage_getRepetitionCount=W.animatedImage_getRepetitionCount)(a);
w._animatedImage_getCurrentFrameDurationMilliseconds=a=>(w._animatedImage_getCurrentFrameDurationMilliseconds=W.animatedImage_getCurrentFrameDurationMilliseconds)(a);w._animatedImage_decodeNextFrame=a=>(w._animatedImage_decodeNextFrame=W.animatedImage_decodeNextFrame)(a);w._animatedImage_getCurrentFrame=a=>(w._animatedImage_getCurrentFrame=W.animatedImage_getCurrentFrame)(a);w._skwasm_isHeavy=()=>(w._skwasm_isHeavy=W.skwasm_isHeavy)();
w._paragraphBuilder_create=(a,b)=>(w._paragraphBuilder_create=W.paragraphBuilder_create)(a,b);w._paragraphBuilder_build=a=>(w._paragraphBuilder_build=W.paragraphBuilder_build)(a);w._paragraphBuilder_setGraphemeBreaksUtf16=(a,b)=>(w._paragraphBuilder_setGraphemeBreaksUtf16=W.paragraphBuilder_setGraphemeBreaksUtf16)(a,b);w._paragraphBuilder_setWordBreaksUtf16=(a,b)=>(w._paragraphBuilder_setWordBreaksUtf16=W.paragraphBuilder_setWordBreaksUtf16)(a,b);
w._paragraphBuilder_setLineBreaksUtf16=(a,b)=>(w._paragraphBuilder_setLineBreaksUtf16=W.paragraphBuilder_setLineBreaksUtf16)(a,b);w._dummyAPICalls=()=>(w._dummyAPICalls=W.dummyAPICalls)();var Hb=a=>(Hb=W.malloc)(a),Ac=(a,b)=>(Ac=W._emscripten_timeout)(a,b),X=(a,b)=>(X=W.setThrew)(a,b),Y=a=>(Y=W._emscripten_stack_restore)(a),kc=a=>(kc=W._emscripten_stack_alloc)(a),Z=()=>(Z=W.emscripten_stack_get_current)(),Aa=(a,b)=>(Aa=W._emscripten_wasm_worker_initialize)(a,b);
function Cc(a,b,d){var e=Z();try{return A.get(a)(b,d)}catch(f){Y(e);if(f!==f+0)throw f;X(1,0)}}function Gc(a,b,d){var e=Z();try{A.get(a)(b,d)}catch(f){Y(e);if(f!==f+0)throw f;X(1,0)}}function Bc(a,b){var d=Z();try{return A.get(a)(b)}catch(e){Y(d);if(e!==e+0)throw e;X(1,0)}}function Hc(a,b,d,e){var f=Z();try{A.get(a)(b,d,e)}catch(h){Y(f);if(h!==h+0)throw h;X(1,0)}}function Dc(a,b,d,e,f){var h=Z();try{return A.get(a)(b,d,e,f)}catch(l){Y(h);if(l!==l+0)throw l;X(1,0)}}
function Ic(a,b,d,e,f,h,l,m){var n=Z();try{A.get(a)(b,d,e,f,h,l,m)}catch(u){Y(n);if(u!==u+0)throw u;X(1,0)}}function Fc(a,b){var d=Z();try{A.get(a)(b)}catch(e){Y(d);if(e!==e+0)throw e;X(1,0)}}function Ec(a,b,d,e,f,h,l){var m=Z();try{return A.get(a)(b,d,e,f,h,l)}catch(n){Y(m);if(n!==n+0)throw n;X(1,0)}}w.wasmMemory=g;w.wasmExports=W;w.stackAlloc=lc;
w.addFunction=(a,b)=>{if(!U){U=new WeakMap;var d=A.length;if(U)for(var e=0;e<0+d;e++){var f=A.get(e);f&&U.set(f,e)}}if(d=U.get(a)||0)return d;if(jc.length)d=jc.pop();else{try{A.grow(1)}catch(m){if(!(m instanceof RangeError))throw m;throw"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH.";}d=A.length-1}try{A.set(d,a)}catch(m){if(!(m instanceof TypeError))throw m;if("function"==typeof WebAssembly.Function){e=WebAssembly.Function;f={i:"i32",j:"i64",f:"f32",d:"f64",e:"externref",p:"i32"};for(var h={parameters:[],
results:"v"==b[0]?[]:[f[b[0]]]},l=1;l<b.length;++l)h.parameters.push(f[b[l]]);b=new e(h,a)}else{e=[1];f=b.slice(0,1);b=b.slice(1);h={i:127,p:127,j:126,f:125,d:124,e:111};e.push(96);l=b.length;128>l?e.push(l):e.push(l%128|128,l>>7);for(l=0;l<b.length;++l)e.push(h[b[l]]);"v"==f?e.push(0):e.push(1,h[f]);b=[0,97,115,109,1,0,0,0,1];f=e.length;128>f?b.push(f):b.push(f%128|128,f>>7);b.push(...e);b.push(2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0);b=new WebAssembly.Module(new Uint8Array(b));b=(new WebAssembly.Instance(b,
{e:{f:a}})).exports.f}A.set(d,b)}U.set(a,d);return d};var Kc,Lc;Ga=function Mc(){Kc||Nc();Kc||(Ga=Mc)};function Nc(){if(!(0<z))if(ka)ea(w),ya();else{if(!Lc&&(Lc=1,Ea(va),0<z))return;Kc||(Kc=1,w.calledRun=1,ra||(ya(),ea(w),Ea(xa)))}}Nc();moduleRtn=ha;
return moduleRtn;
}
);
})();
export default wimp;
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 917 B

+31
View File
@@ -0,0 +1,31 @@
(()=>{var _={blink:!0,gecko:!1,webkit:!1,unknown:!1},K=()=>navigator.vendor==="Google Inc."||navigator.userAgent.includes("Edg/")?"blink":navigator.vendor==="Apple Computer, Inc."?"webkit":navigator.vendor===""&&navigator.userAgent.includes("Firefox")?"gecko":"unknown",C=K(),R=()=>typeof ImageDecoder>"u"?!1:C==="blink",B=()=>typeof Intl.v8BreakIterator<"u"&&typeof Intl.Segmenter<"u",z=()=>{let i=[0,97,115,109,1,0,0,0,1,5,1,95,1,120,0];return WebAssembly.validate(new Uint8Array(i))},M=()=>{let i=document.createElement("canvas");return i.width=1,i.height=1,i.getContext("webgl2")!=null?2:i.getContext("webgl")!=null?1:-1},D=()=>window.chrome&&chrome.runtime&&chrome.runtime.id,w={browserEngine:C,hasImageCodecs:R(),hasChromiumBreakIterators:B(),supportsWasmGC:z(),crossOriginIsolated:window.crossOriginIsolated,webGLVersion:M(),isChromeExtension:D()};function c(...i){return new URL(I(...i),document.baseURI).toString()}function I(...i){return i.filter(e=>!!e).map((e,n)=>n===0?S(e):F(S(e))).filter(e=>e.length).join("/")}function F(i){let e=0;for(;e<i.length&&i.charAt(e)==="/";)e++;return i.substring(e)}function S(i){let e=i.length;for(;e>0&&i.charAt(e-1)==="/";)e--;return i.substring(0,e)}function E(i,e){return i.canvasKitBaseUrl?i.canvasKitBaseUrl:e.engineRevision&&!e.useLocalCanvasKit?I("https://www.gstatic.com/flutter-canvaskit",e.engineRevision):"canvaskit"}var v=class{constructor(){this._scriptLoaded=!1}setTrustedTypesPolicy(e){this._ttPolicy=e}async loadEntrypoint(e){let{entrypointUrl:n=c("main.dart.js"),onEntrypointLoaded:t,nonce:r}=e||{};return this._loadJSEntrypoint(n,t,r)}async load(e,n,t,r,a){a??=l=>{l.initializeEngine(t).then(u=>u.runApp())};let{entrypointBaseUrl:s}=t,{entryPointBaseUrl:o}=t;if(!s&&o&&(console.warn("[deprecated] `entryPointBaseUrl` is deprecated and will be removed in a future release. Use `entrypointBaseUrl` instead."),s=o),e.compileTarget==="dart2wasm")return this._loadWasmEntrypoint(e,n,s,a);{let l=e.mainJsPath??"main.dart.js",u=c(s,l);return this._loadJSEntrypoint(u,a,r)}}didCreateEngineInitializer(e){typeof this._didCreateEngineInitializerResolve=="function"&&(this._didCreateEngineInitializerResolve(e),this._didCreateEngineInitializerResolve=null,delete _flutter.loader.didCreateEngineInitializer),typeof this._onEntrypointLoaded=="function"&&this._onEntrypointLoaded(e)}_loadJSEntrypoint(e,n,t){let r=typeof n=="function";if(!this._scriptLoaded){this._scriptLoaded=!0;let a=this._createScriptTag(e,t);if(r)console.debug("Injecting <script> tag. Using callback."),this._onEntrypointLoaded=n,document.head.append(a);else return new Promise((s,o)=>{console.debug("Injecting <script> tag. Using Promises. Use the callback approach instead!"),this._didCreateEngineInitializerResolve=s,a.addEventListener("error",o),document.head.append(a)})}}async _loadWasmEntrypoint(e,n,t,r){if(!this._scriptLoaded){this._scriptLoaded=!0,this._onEntrypointLoaded=r;let{mainWasmPath:a,jsSupportRuntimePath:s}=e,o=c(t,a),l=c(t,s);this._ttPolicy!=null&&(l=this._ttPolicy.createScriptURL(l));let d=(await import(l)).compileStreaming(fetch(o)),p;e.renderer==="skwasm"?p=(async()=>{let h=await n.skwasm;return window._flutter_skwasmInstance=h,{skwasm:h.wasmExports,skwasmWrapper:h,ffi:{memory:h.wasmMemory}}})():p=Promise.resolve({}),await(await(await d).instantiate(await p,{loadDynamicModule:async(h,j)=>{let A=fetch(c(t,h)),L=c(t,j);this._ttPolicy!=null&&(L=this._ttPolicy.createScriptURL(L));let x=import(L);return[await A,await x]}})).invokeMain()}}_createScriptTag(e,n){let t=document.createElement("script");t.type="application/javascript",n&&(t.nonce=n);let r=e;return this._ttPolicy!=null&&(r=this._ttPolicy.createScriptURL(e)),t.src=r,t}};async function T(i,e,n){if(e<0)return i;let t,r=new Promise((a,s)=>{t=setTimeout(()=>{s(new Error(`${n} took more than ${e}ms to resolve. Moving on.`,{cause:T}))},e)});return Promise.race([i,r]).finally(()=>{clearTimeout(t)})}var g=class{setTrustedTypesPolicy(e){this._ttPolicy=e}loadServiceWorker(e){if(!e||!("serviceWorker"in navigator))return Promise.resolve();let n=()=>{console.warn(`Loading the service worker using Flutter bootstrap is deprecated and will stop working in a future release.
For more details, see: https://github.com/flutter/flutter/issues/156910`)},t=()=>{let{serviceWorkerVersion:r,serviceWorkerUrl:a=c(`flutter_service_worker.js?v=${r}`),timeoutMillis:s=4e3}=e,o=a;this._ttPolicy!=null&&(o=this._ttPolicy.createScriptURL(o));let l=navigator.serviceWorker.register(o).then(u=>this._getNewServiceWorker(u,r)).then(this._waitForServiceWorkerActivation);return T(l,s,"prepareServiceWorker")};return e.serviceWorkerUrl!=null?(n(),t()):navigator.serviceWorker.getRegistration().then(r=>r?t():Promise.resolve())}async _getNewServiceWorker(e,n){if(!e.active&&(e.installing||e.waiting))return console.debug("Installing/Activating first service worker."),e.installing||e.waiting;if(e.active.scriptURL.endsWith(n))return console.debug("Loading from existing service worker."),e.active;{let t=await e.update();return console.debug("Updating service worker."),t.installing||t.waiting||t.active}}async _waitForServiceWorkerActivation(e){if(!e||e.state==="activated")if(e){console.debug("Service worker already active.");return}else throw new Error("Cannot activate a null service worker!");return new Promise((n,t)=>{e.addEventListener("statechange",()=>{e.state==="activated"&&(console.debug("Activated new service worker."),n())})})}};var y=class{constructor(e,n="flutter-js"){let t=e||[/\.js$/,/\.mjs$/];window.trustedTypes&&(this.policy=trustedTypes.createPolicy(n,{createScriptURL:function(r){if(r.startsWith("blob:"))return r;let a=new URL(r,window.location),s=a.pathname.split("/").pop();if(t.some(l=>l.test(s)))return a.toString();console.error("URL rejected by TrustedTypes policy",n,":",r,"(download prevented)")}}))}};var k=i=>{let e=WebAssembly.compileStreaming(fetch(i));return(n,t)=>((async()=>{let r=await e,a=await WebAssembly.instantiate(r,n);t(a,r)})(),{})};var U=(i,e,n,t)=>(window.flutterCanvasKitLoaded=(async()=>{if(window.flutterCanvasKit)return window.flutterCanvasKit;let r=n.hasChromiumBreakIterators&&n.hasImageCodecs;if(!r&&e.canvasKitVariant=="chromium")throw"Chromium CanvasKit variant specifically requested, but unsupported in this browser";let a=r&&e.canvasKitVariant!=="full",s=t;e.canvasKitVariant=="experimentalWebParagraph"?s=c(s,"experimental_webparagraph"):a&&(s=c(s,"chromium"));let o=c(s,"canvaskit.js");i.flutterTT.policy&&(o=i.flutterTT.policy.createScriptURL(o));let l=k(c(s,"canvaskit.wasm")),u=await import(o);return window.flutterCanvasKit=await u.default({instantiateWasm:l}),window.flutterCanvasKit})(),window.flutterCanvasKitLoaded);var W=async(i,e,n,t)=>{let a=!n.hasImageCodecs||!n.hasChromiumBreakIterators?"skwasm_heavy":e.enableWimp?"wimp":"skwasm",s=c(t,`${a}.js`),o=s;i.flutterTT.policy&&(o=i.flutterTT.policy.createScriptURL(o));let l=k(c(t,`${a}.wasm`));return await(await import(o)).default({skwasmSingleThreaded:e.enableWimp||!n.crossOriginIsolated||n.isChromeExtension||e.forceSingleThreadedSkwasm,instantiateWasm:l,locateFile:(d,p)=>d.endsWith(".ww.js")?URL.createObjectURL(new Blob([`
"use strict";
let eventListener;
eventListener = (message) => {
const pendingMessages = [];
const data = message.data;
data["instantiateWasm"] = (info,receiveInstance) => {
const instance = new WebAssembly.Instance(data["wasm"], info);
return receiveInstance(instance, data["wasm"])
};
import(data.js).then(async (skwasm) => {
await skwasm.default(data);
removeEventListener("message", eventListener);
for (const message of pendingMessages) {
dispatchEvent(message);
}
});
removeEventListener("message", eventListener);
eventListener = (message) => {
pendingMessages.push(message);
};
addEventListener("message", eventListener);
};
addEventListener("message", eventListener);
`],{type:"application/javascript"})):c(t,d),mainScriptUrlOrBlob:s})};var P=w.supportsWasmGC,G=P&&w.webGLVersion>0,b=class{async loadEntrypoint(e){let{serviceWorker:n,...t}=e||{},r=new y,a=new g;a.setTrustedTypesPolicy(r.policy),await a.loadServiceWorker(n).catch(o=>{console.warn("Exception while loading service worker:",o)});let s=new v;return s.setTrustedTypesPolicy(r.policy),this.didCreateEngineInitializer=s.didCreateEngineInitializer.bind(s),s.loadEntrypoint(t)}async load({serviceWorkerSettings:e,onEntrypointLoaded:n,nonce:t,config:r}={}){r??={};let a=_flutter.buildConfig;if(!a)throw"FlutterLoader.load requires _flutter.buildConfig to be set";let s=r.wasmAllowList?.[w.browserEngine]??_[w.browserEngine],o=m=>{switch(m){case"skwasm":return G&&s;default:return!0}},l=m=>m.compileTarget==="dart2wasm"&&!P||r.renderer&&r.renderer!=m.renderer?!1:o(m.renderer),u=a.builds.find(l);if(!u)throw"FlutterLoader could not find a build compatible with configuration and environment.";let d={};d.flutterTT=new y,e&&(d.serviceWorkerLoader=new g,d.serviceWorkerLoader.setTrustedTypesPolicy(d.flutterTT.policy),await d.serviceWorkerLoader.loadServiceWorker(e).catch(m=>{console.warn("Exception while loading service worker:",m)}));let p=E(r,a);u.renderer==="canvaskit"?d.canvasKit=U(d,r,w,p):u.renderer==="skwasm"&&(d.skwasm=W(d,r,w,p));let f=new v;return f.setTrustedTypesPolicy(d.flutterTT.policy),this.didCreateEngineInitializer=f.didCreateEngineInitializer.bind(f),f.load(u,d,r,t,n)}};window._flutter||(window._flutter={});window._flutter.loader||(window._flutter.loader=new b);})();
//# sourceMappingURL=flutter.js.map
@@ -0,0 +1,42 @@
(()=>{var _={blink:!0,gecko:!1,webkit:!1,unknown:!1},K=()=>navigator.vendor==="Google Inc."||navigator.userAgent.includes("Edg/")?"blink":navigator.vendor==="Apple Computer, Inc."?"webkit":navigator.vendor===""&&navigator.userAgent.includes("Firefox")?"gecko":"unknown",C=K(),R=()=>typeof ImageDecoder>"u"?!1:C==="blink",B=()=>typeof Intl.v8BreakIterator<"u"&&typeof Intl.Segmenter<"u",z=()=>{let i=[0,97,115,109,1,0,0,0,1,5,1,95,1,120,0];return WebAssembly.validate(new Uint8Array(i))},M=()=>{let i=document.createElement("canvas");return i.width=1,i.height=1,i.getContext("webgl2")!=null?2:i.getContext("webgl")!=null?1:-1},D=()=>window.chrome&&chrome.runtime&&chrome.runtime.id,w={browserEngine:C,hasImageCodecs:R(),hasChromiumBreakIterators:B(),supportsWasmGC:z(),crossOriginIsolated:window.crossOriginIsolated,webGLVersion:M(),isChromeExtension:D()};function c(...i){return new URL(I(...i),document.baseURI).toString()}function I(...i){return i.filter(e=>!!e).map((e,n)=>n===0?S(e):F(S(e))).filter(e=>e.length).join("/")}function F(i){let e=0;for(;e<i.length&&i.charAt(e)==="/";)e++;return i.substring(e)}function S(i){let e=i.length;for(;e>0&&i.charAt(e-1)==="/";)e--;return i.substring(0,e)}function E(i,e){return i.canvasKitBaseUrl?i.canvasKitBaseUrl:e.engineRevision&&!e.useLocalCanvasKit?I("https://www.gstatic.com/flutter-canvaskit",e.engineRevision):"canvaskit"}var v=class{constructor(){this._scriptLoaded=!1}setTrustedTypesPolicy(e){this._ttPolicy=e}async loadEntrypoint(e){let{entrypointUrl:n=c("main.dart.js"),onEntrypointLoaded:t,nonce:r}=e||{};return this._loadJSEntrypoint(n,t,r)}async load(e,n,t,r,a){a??=l=>{l.initializeEngine(t).then(u=>u.runApp())};let{entrypointBaseUrl:s}=t,{entryPointBaseUrl:o}=t;if(!s&&o&&(console.warn("[deprecated] `entryPointBaseUrl` is deprecated and will be removed in a future release. Use `entrypointBaseUrl` instead."),s=o),e.compileTarget==="dart2wasm")return this._loadWasmEntrypoint(e,n,s,a);{let l=e.mainJsPath??"main.dart.js",u=c(s,l);return this._loadJSEntrypoint(u,a,r)}}didCreateEngineInitializer(e){typeof this._didCreateEngineInitializerResolve=="function"&&(this._didCreateEngineInitializerResolve(e),this._didCreateEngineInitializerResolve=null,delete _flutter.loader.didCreateEngineInitializer),typeof this._onEntrypointLoaded=="function"&&this._onEntrypointLoaded(e)}_loadJSEntrypoint(e,n,t){let r=typeof n=="function";if(!this._scriptLoaded){this._scriptLoaded=!0;let a=this._createScriptTag(e,t);if(r)console.debug("Injecting <script> tag. Using callback."),this._onEntrypointLoaded=n,document.head.append(a);else return new Promise((s,o)=>{console.debug("Injecting <script> tag. Using Promises. Use the callback approach instead!"),this._didCreateEngineInitializerResolve=s,a.addEventListener("error",o),document.head.append(a)})}}async _loadWasmEntrypoint(e,n,t,r){if(!this._scriptLoaded){this._scriptLoaded=!0,this._onEntrypointLoaded=r;let{mainWasmPath:a,jsSupportRuntimePath:s}=e,o=c(t,a),l=c(t,s);this._ttPolicy!=null&&(l=this._ttPolicy.createScriptURL(l));let d=(await import(l)).compileStreaming(fetch(o)),p;e.renderer==="skwasm"?p=(async()=>{let h=await n.skwasm;return window._flutter_skwasmInstance=h,{skwasm:h.wasmExports,skwasmWrapper:h,ffi:{memory:h.wasmMemory}}})():p=Promise.resolve({}),await(await(await d).instantiate(await p,{loadDynamicModule:async(h,j)=>{let A=fetch(c(t,h)),L=c(t,j);this._ttPolicy!=null&&(L=this._ttPolicy.createScriptURL(L));let x=import(L);return[await A,await x]}})).invokeMain()}}_createScriptTag(e,n){let t=document.createElement("script");t.type="application/javascript",n&&(t.nonce=n);let r=e;return this._ttPolicy!=null&&(r=this._ttPolicy.createScriptURL(e)),t.src=r,t}};async function T(i,e,n){if(e<0)return i;let t,r=new Promise((a,s)=>{t=setTimeout(()=>{s(new Error(`${n} took more than ${e}ms to resolve. Moving on.`,{cause:T}))},e)});return Promise.race([i,r]).finally(()=>{clearTimeout(t)})}var g=class{setTrustedTypesPolicy(e){this._ttPolicy=e}loadServiceWorker(e){if(!e||!("serviceWorker"in navigator))return Promise.resolve();let n=()=>{console.warn(`Loading the service worker using Flutter bootstrap is deprecated and will stop working in a future release.
For more details, see: https://github.com/flutter/flutter/issues/156910`)},t=()=>{let{serviceWorkerVersion:r,serviceWorkerUrl:a=c(`flutter_service_worker.js?v=${r}`),timeoutMillis:s=4e3}=e,o=a;this._ttPolicy!=null&&(o=this._ttPolicy.createScriptURL(o));let l=navigator.serviceWorker.register(o).then(u=>this._getNewServiceWorker(u,r)).then(this._waitForServiceWorkerActivation);return T(l,s,"prepareServiceWorker")};return e.serviceWorkerUrl!=null?(n(),t()):navigator.serviceWorker.getRegistration().then(r=>r?t():Promise.resolve())}async _getNewServiceWorker(e,n){if(!e.active&&(e.installing||e.waiting))return console.debug("Installing/Activating first service worker."),e.installing||e.waiting;if(e.active.scriptURL.endsWith(n))return console.debug("Loading from existing service worker."),e.active;{let t=await e.update();return console.debug("Updating service worker."),t.installing||t.waiting||t.active}}async _waitForServiceWorkerActivation(e){if(!e||e.state==="activated")if(e){console.debug("Service worker already active.");return}else throw new Error("Cannot activate a null service worker!");return new Promise((n,t)=>{e.addEventListener("statechange",()=>{e.state==="activated"&&(console.debug("Activated new service worker."),n())})})}};var y=class{constructor(e,n="flutter-js"){let t=e||[/\.js$/,/\.mjs$/];window.trustedTypes&&(this.policy=trustedTypes.createPolicy(n,{createScriptURL:function(r){if(r.startsWith("blob:"))return r;let a=new URL(r,window.location),s=a.pathname.split("/").pop();if(t.some(l=>l.test(s)))return a.toString();console.error("URL rejected by TrustedTypes policy",n,":",r,"(download prevented)")}}))}};var k=i=>{let e=WebAssembly.compileStreaming(fetch(i));return(n,t)=>((async()=>{let r=await e,a=await WebAssembly.instantiate(r,n);t(a,r)})(),{})};var U=(i,e,n,t)=>(window.flutterCanvasKitLoaded=(async()=>{if(window.flutterCanvasKit)return window.flutterCanvasKit;let r=n.hasChromiumBreakIterators&&n.hasImageCodecs;if(!r&&e.canvasKitVariant=="chromium")throw"Chromium CanvasKit variant specifically requested, but unsupported in this browser";let a=r&&e.canvasKitVariant!=="full",s=t;e.canvasKitVariant=="experimentalWebParagraph"?s=c(s,"experimental_webparagraph"):a&&(s=c(s,"chromium"));let o=c(s,"canvaskit.js");i.flutterTT.policy&&(o=i.flutterTT.policy.createScriptURL(o));let l=k(c(s,"canvaskit.wasm")),u=await import(o);return window.flutterCanvasKit=await u.default({instantiateWasm:l}),window.flutterCanvasKit})(),window.flutterCanvasKitLoaded);var W=async(i,e,n,t)=>{let a=!n.hasImageCodecs||!n.hasChromiumBreakIterators?"skwasm_heavy":e.enableWimp?"wimp":"skwasm",s=c(t,`${a}.js`),o=s;i.flutterTT.policy&&(o=i.flutterTT.policy.createScriptURL(o));let l=k(c(t,`${a}.wasm`));return await(await import(o)).default({skwasmSingleThreaded:e.enableWimp||!n.crossOriginIsolated||n.isChromeExtension||e.forceSingleThreadedSkwasm,instantiateWasm:l,locateFile:(d,p)=>d.endsWith(".ww.js")?URL.createObjectURL(new Blob([`
"use strict";
let eventListener;
eventListener = (message) => {
const pendingMessages = [];
const data = message.data;
data["instantiateWasm"] = (info,receiveInstance) => {
const instance = new WebAssembly.Instance(data["wasm"], info);
return receiveInstance(instance, data["wasm"])
};
import(data.js).then(async (skwasm) => {
await skwasm.default(data);
removeEventListener("message", eventListener);
for (const message of pendingMessages) {
dispatchEvent(message);
}
});
removeEventListener("message", eventListener);
eventListener = (message) => {
pendingMessages.push(message);
};
addEventListener("message", eventListener);
};
addEventListener("message", eventListener);
`],{type:"application/javascript"})):c(t,d),mainScriptUrlOrBlob:s})};var P=w.supportsWasmGC,G=P&&w.webGLVersion>0,b=class{async loadEntrypoint(e){let{serviceWorker:n,...t}=e||{},r=new y,a=new g;a.setTrustedTypesPolicy(r.policy),await a.loadServiceWorker(n).catch(o=>{console.warn("Exception while loading service worker:",o)});let s=new v;return s.setTrustedTypesPolicy(r.policy),this.didCreateEngineInitializer=s.didCreateEngineInitializer.bind(s),s.loadEntrypoint(t)}async load({serviceWorkerSettings:e,onEntrypointLoaded:n,nonce:t,config:r}={}){r??={};let a=_flutter.buildConfig;if(!a)throw"FlutterLoader.load requires _flutter.buildConfig to be set";let s=r.wasmAllowList?.[w.browserEngine]??_[w.browserEngine],o=m=>{switch(m){case"skwasm":return G&&s;default:return!0}},l=m=>m.compileTarget==="dart2wasm"&&!P||r.renderer&&r.renderer!=m.renderer?!1:o(m.renderer),u=a.builds.find(l);if(!u)throw"FlutterLoader could not find a build compatible with configuration and environment.";let d={};d.flutterTT=new y,e&&(d.serviceWorkerLoader=new g,d.serviceWorkerLoader.setTrustedTypesPolicy(d.flutterTT.policy),await d.serviceWorkerLoader.loadServiceWorker(e).catch(m=>{console.warn("Exception while loading service worker:",m)}));let p=E(r,a);u.renderer==="canvaskit"?d.canvasKit=U(d,r,w,p):u.renderer==="skwasm"&&(d.skwasm=W(d,r,w,p));let f=new v;return f.setTrustedTypesPolicy(d.flutterTT.policy),this.didCreateEngineInitializer=f.didCreateEngineInitializer.bind(f),f.load(u,d,r,t,n)}};window._flutter||(window._flutter={});window._flutter.loader||(window._flutter.loader=new b);})();
//# sourceMappingURL=flutter.js.map
if (!window._flutter) {
window._flutter = {};
}
_flutter.buildConfig = {"engineRevision":"0cd610717bde95fd88343c64f81c11ba4e5c0010","builds":[{"compileTarget":"dart2js","renderer":"canvaskit","mainJsPath":"main.dart.js"},{}]};
_flutter.loader.load({
serviceWorkerSettings: {
serviceWorkerVersion: "227362031" /* Flutter's service worker is deprecated and will be removed in a future Flutter release. */
}
});
Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

+60
View File
@@ -0,0 +1,60 @@
<!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="/aplikasi-ejurnal/">
<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="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="e_jurnal_mobile">
<link rel="apple-touch-icon" href="icons/Icon-192.png">
<!-- Favicon -->
<link rel="icon" type="image/png" href="favicon.png"/>
<title>E-Jurnal — Mobile Guru</title>
<link rel="manifest" href="manifest.json">
<!-- Matikan service worker & cache: preview statis selalu fresh,
hindari cache campuran build lama (penyebab token hilang/401). -->
<script>
if ('serviceWorker' in navigator) {
navigator.serviceWorker.getRegistrations().then(function (rs) {
rs.forEach(function (r) { r.unregister(); });
});
if (window.caches) {
caches.keys().then(function (ks) {
ks.forEach(function (k) { caches.delete(k); });
});
}
}
</script>
</head>
<body>
<!--
You can customize the "flutter_bootstrap.js" script.
This is useful to provide a custom configuration to the Flutter loader
or to give the user feedback during the initialization process.
For more details:
* https://docs.flutter.dev/platform-integration/web/initialization
-->
<script src="flutter_bootstrap.js" async></script>
</body>
</html>
File diff suppressed because one or more lines are too long
+35
View File
@@ -0,0 +1,35 @@
{
"name": "e_jurnal_mobile",
"short_name": "e_jurnal_mobile",
"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"
}
]
}
+1
View File
@@ -0,0 +1 @@
{"app_name":"e_jurnal_mobile","version":"1.0.0","build_number":"1","package_name":"e_jurnal_mobile"}
Binary file not shown.

After

Width:  |  Height:  |  Size: 407 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 415 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 493 KiB

+11
View File
@@ -0,0 +1,11 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 400 400">
<rect width="400" height="400" rx="44" fill="#F4F8FF"/>
<circle cx="200" cy="165" r="78" fill="#DBEAFE"/>
<circle cx="200" cy="135" r="14" fill="#2563EB"/>
<path d="M200 170 v70" stroke="#2563EB" stroke-width="16" stroke-linecap="round"/>
<circle cx="200" cy="272" r="14" fill="#2563EB"/>
<path d="M120 330 q80 -55 160 0" stroke="#0D9488" stroke-width="14" stroke-linecap="round" fill="none"/>
<circle cx="130" cy="120" r="10" fill="#F59E0B" opacity="0.85"/>
<circle cx="285" cy="105" r="8" fill="#F59E0B" opacity="0.6"/>
<circle cx="300" cy="300" r="9" fill="#0D9488" opacity="0.5"/>
</svg>

After

Width:  |  Height:  |  Size: 673 B

+35 -20
View File
@@ -144,8 +144,9 @@
$color = match($status) {
'hadir' => 'text-emerald-600 bg-emerald-50',
'alpha' => 'text-red-600 bg-red-50',
'sakit' => 'text-purple-600 bg-purple-50',
'sakit' => 'text-amber-600 bg-amber-50',
'izin' => 'text-blue-600 bg-blue-50',
'pkl' => 'text-violet-600 bg-violet-50',
'terlambat' => 'text-yellow-600 bg-yellow-50',
default => 'text-gray-300',
};
@@ -154,6 +155,7 @@
'alpha' => 'A',
'sakit' => 'S',
'izin' => 'I',
'pkl' => 'P',
'terlambat' => 'T',
default => '-',
};
@@ -172,7 +174,8 @@
<div class="px-5 py-3 border-t border-gray-100 bg-gray-50/50 text-xs text-gray-400 text-center flex items-center justify-center gap-4">
<span><span class="inline-block w-7 h-7 rounded-lg bg-emerald-50 text-emerald-600 text-center text-xs font-bold">H</span> Hadir</span>
<span><span class="inline-block w-7 h-7 rounded-lg bg-red-50 text-red-600 text-center text-xs font-bold">A</span> Alpha</span>
<span><span class="inline-block w-7 h-7 rounded-lg bg-purple-50 text-purple-600 text-center text-xs font-bold">S</span> Sakit</span>
<span><span class="inline-block w-7 h-7 rounded-lg bg-amber-50 text-amber-600 text-center text-xs font-bold">S</span> Sakit</span>
<span><span class="inline-block w-7 h-7 rounded-lg bg-violet-50 text-violet-600 text-center text-xs font-bold">P</span> PKL</span>
<span><span class="inline-block w-7 h-7 rounded-lg bg-blue-50 text-blue-600 text-center text-xs font-bold">I</span> Izin</span>
<span><span class="inline-block w-7 h-7 rounded-lg bg-yellow-50 text-yellow-600 text-center text-xs font-bold">T</span> Terlambat</span>
</div>
@@ -226,7 +229,7 @@
<span class="text-[10px] text-gray-400 font-normal">{{ \Carbon\Carbon::parse($row['date'])->format('d/m') }}</span>
</th>
@endforeach
<th colspan="4" class="px-3 py-2 text-center text-xs font-semibold text-gray-800 uppercase tracking-wider border-b border-slate-200 border-l-2 border-gray-400 bg-gray-100/80">
<th colspan="5" class="px-3 py-2 text-center text-xs font-semibold text-gray-800 uppercase tracking-wider border-b border-slate-200 border-l-2 border-gray-400 bg-gray-100/80">
TOTAL<br>
<span class="text-[10px] text-gray-500 font-normal">Hari</span>
</th>
@@ -237,14 +240,16 @@
$sep = !$loop->last ? 'border-r-2 border-gray-300' : '';
@endphp
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-emerald-600 uppercase tracking-wider">H</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-purple-600 uppercase tracking-wider">S</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-amber-600 uppercase tracking-wider">S</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-blue-600 uppercase tracking-wider">I</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-red-600 uppercase tracking-wider {{ $sep }}">A</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-red-600 uppercase tracking-wider">A</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-violet-600 uppercase tracking-wider {{ $sep }}">P</th>
@endforeach
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-emerald-700 uppercase tracking-wider bg-gray-100/80 border-l-2 border-gray-400">H</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-purple-700 uppercase tracking-wider bg-gray-100/80">S</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-amber-700 uppercase tracking-wider bg-gray-100/80">S</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-blue-700 uppercase tracking-wider bg-gray-100/80">I</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-red-700 uppercase tracking-wider bg-gray-100/80">A</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-violet-700 uppercase tracking-wider bg-gray-100/80">P</th>
</tr>
</thead>
<tbody class="divide-y divide-gray-50">
@@ -260,24 +265,27 @@
@endphp
@if($s)
<td class="px-2 py-2.5 text-center text-xs font-bold text-emerald-600">{{ $s['hadir'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold text-purple-600">{{ $s['sakit'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold text-amber-600">{{ $s['sakit'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold text-blue-600">{{ $s['izin'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold {{ $s['alpha'] > 0 ? 'text-red-600' : 'text-gray-400' }} {{ $sep }}">{{ $s['alpha'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold {{ $s['alpha'] > 0 ? 'text-red-600' : 'text-gray-400' }}">{{ $s['alpha'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold {{ $s['pkl'] > 0 ? 'text-violet-600' : 'text-gray-400' }} {{ $sep }}">{{ $s['pkl'] }}</td>
@else
<td class="px-2 py-2.5 text-center text-xs text-gray-300">—</td>
<td class="px-2 py-2.5 text-center text-xs text-gray-300">—</td>
<td class="px-2 py-2.5 text-center text-xs text-gray-300">—</td>
<td class="px-2 py-2.5 text-center text-xs text-gray-300">—</td>
<td class="px-2 py-2.5 text-center text-xs text-gray-300 {{ $sep }}">—</td>
@endif
@endforeach
{{-- TOTAL --}}
@php
$t = $totals[$student->id] ?? ['hadir' => 0, 'sakit' => 0, 'izin' => 0, 'alpha' => 0];
$t = $totals[$student->id] ?? ['hadir' => 0, 'sakit' => 0, 'izin' => 0, 'alpha' => 0, 'pkl' => 0];
@endphp
<td class="px-2 py-2.5 text-center text-xs font-bold text-emerald-700 bg-gray-50 border-l-2 border-gray-300">{{ $t['hadir'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold text-purple-700 bg-gray-50">{{ $t['sakit'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold text-amber-700 bg-gray-50">{{ $t['sakit'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold text-blue-700 bg-gray-50">{{ $t['izin'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold {{ $t['alpha'] > 0 ? 'text-red-700' : 'text-gray-400' }} bg-gray-50">{{ $t['alpha'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold {{ $t['pkl'] > 0 ? 'text-violet-700' : 'text-gray-400' }} bg-gray-50">{{ $t['pkl'] }}</td>
</tr>
@endforeach
</tbody>
@@ -285,7 +293,8 @@
</div>
<div class="px-5 py-3 border-t border-gray-100 bg-gray-50/50 text-xs text-gray-400 text-center flex items-center justify-center gap-4">
<span class="text-emerald-600 font-bold">H</span> Hadir
<span class="text-purple-600 font-bold">S</span> Sakit
<span class="text-amber-600 font-bold">S</span> Sakit
<span class="text-violet-600 font-bold">P</span> PKL
<span class="text-blue-600 font-bold">I</span> Izin
<span class="text-red-600 font-bold">A</span> Alpha
</div>
@@ -339,7 +348,7 @@
<span class="text-[10px] text-gray-400 font-normal">{{ \Carbon\Carbon::parse($row['start'])->format('d/m') }}-{{ \Carbon\Carbon::parse($row['end'])->format('d/m') }}</span>
</th>
@endforeach
<th colspan="4" class="px-3 py-2 text-center text-xs font-semibold text-gray-800 uppercase tracking-wider border-b border-slate-200 border-l-2 border-gray-400 bg-gray-100/80">
<th colspan="5" class="px-3 py-2 text-center text-xs font-semibold text-gray-800 uppercase tracking-wider border-b border-slate-200 border-l-2 border-gray-400 bg-gray-100/80">
TOTAL<br>
<span class="text-[10px] text-gray-500 font-normal">Hari</span>
</th>
@@ -350,14 +359,16 @@
$sep = !$loop->last ? 'border-r-2 border-gray-300' : '';
@endphp
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-emerald-600 uppercase tracking-wider">H</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-purple-600 uppercase tracking-wider">S</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-amber-600 uppercase tracking-wider">S</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-blue-600 uppercase tracking-wider">I</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-red-600 uppercase tracking-wider {{ $sep }}">A</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-red-600 uppercase tracking-wider">A</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-violet-600 uppercase tracking-wider {{ $sep }}">P</th>
@endforeach
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-emerald-700 uppercase tracking-wider bg-gray-100/80 border-l-2 border-gray-400">H</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-purple-700 uppercase tracking-wider bg-gray-100/80">S</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-amber-700 uppercase tracking-wider bg-gray-100/80">S</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-blue-700 uppercase tracking-wider bg-gray-100/80">I</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-red-700 uppercase tracking-wider bg-gray-100/80">A</th>
<th class="px-2 py-1.5 text-center text-[10px] font-bold text-violet-700 uppercase tracking-wider bg-gray-100/80">P</th>
</tr>
</thead>
<tbody class="divide-y divide-gray-50">
@@ -373,24 +384,27 @@
@endphp
@if($s)
<td class="px-2 py-2.5 text-center text-xs font-bold text-emerald-600">{{ $s['hadir'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold text-purple-600">{{ $s['sakit'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold text-amber-600">{{ $s['sakit'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold text-blue-600">{{ $s['izin'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold {{ $s['alpha'] > 0 ? 'text-red-600' : 'text-gray-400' }} {{ $sep }}">{{ $s['alpha'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold {{ $s['alpha'] > 0 ? 'text-red-600' : 'text-gray-400' }}">{{ $s['alpha'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold {{ $s['pkl'] > 0 ? 'text-violet-600' : 'text-gray-400' }} {{ $sep }}">{{ $s['pkl'] }}</td>
@else
<td class="px-2 py-2.5 text-center text-xs text-gray-300">—</td>
<td class="px-2 py-2.5 text-center text-xs text-gray-300">—</td>
<td class="px-2 py-2.5 text-center text-xs text-gray-300">—</td>
<td class="px-2 py-2.5 text-center text-xs text-gray-300">—</td>
<td class="px-2 py-2.5 text-center text-xs text-gray-300 {{ $sep }}">—</td>
@endif
@endforeach
{{-- TOTAL --}}
@php
$t = $totals[$student->id] ?? ['hadir' => 0, 'sakit' => 0, 'izin' => 0, 'alpha' => 0];
$t = $totals[$student->id] ?? ['hadir' => 0, 'sakit' => 0, 'izin' => 0, 'alpha' => 0, 'pkl' => 0];
@endphp
<td class="px-2 py-2.5 text-center text-xs font-bold text-emerald-700 bg-gray-50 border-l-2 border-gray-300">{{ $t['hadir'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold text-purple-700 bg-gray-50">{{ $t['sakit'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold text-amber-700 bg-gray-50">{{ $t['sakit'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold text-blue-700 bg-gray-50">{{ $t['izin'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold {{ $t['alpha'] > 0 ? 'text-red-700' : 'text-gray-400' }} bg-gray-50">{{ $t['alpha'] }}</td>
<td class="px-2 py-2.5 text-center text-xs font-bold {{ $t['pkl'] > 0 ? 'text-violet-700' : 'text-gray-400' }} bg-gray-50">{{ $t['pkl'] }}</td>
</tr>
@endforeach
</tbody>
@@ -398,7 +412,8 @@
</div>
<div class="px-5 py-3 border-t border-gray-100 bg-gray-50/50 text-xs text-gray-400 text-center flex items-center justify-center gap-4">
<span class="text-emerald-600 font-bold">H</span> Hadir
<span class="text-purple-600 font-bold">S</span> Sakit
<span class="text-amber-600 font-bold">S</span> Sakit
<span class="text-violet-600 font-bold">P</span> PKL
<span class="text-blue-600 font-bold">I</span> Izin
<span class="text-red-600 font-bold">A</span> Alpha
</div>
+3 -7
View File
@@ -1,10 +1,6 @@
@include('errors._error', [
@include('errors.layout', [
'code' => '403',
'title' => 'Akses Ditolak',
'message' => 'Anda tidak memiliki izin untuk mengakses halaman ini. Jika menurut Anda ini keliru, silakan hubungi administrator.',
'icon' => 'fa-lock',
'iconFrom' => '#ef4444', 'iconTo' => '#dc2626', 'iconShadow' => 'rgba(239, 68, 68, 0.35)',
'codeFrom' => '#f87171', 'codeTo' => '#dc2626',
'ctaFrom' => '#ef4444', 'ctaTo' => '#dc2626', 'ctaShadow' => 'rgba(239, 68, 68, 0.35)',
'showContact' => true,
'message' => 'Kamu tidak memiliki izin untuk membuka halaman ini. Jika menurutmu ini sebuah kesalahan, silakan hubungi administrator.',
'image' => 'error-403.png',
])
+3 -6
View File
@@ -1,9 +1,6 @@
@include('errors._error', [
@include('errors.layout', [
'code' => '404',
'title' => 'Halaman Tidak Ditemukan',
'message' => 'Halaman yang Anda cari mungkin telah dipindah, dihapus, atau alamatnya salah. Coba periksa kembali atau kembali ke beranda.',
'icon' => 'fa-map',
'iconFrom' => '#f59e0b', 'iconTo' => '#f97316', 'iconShadow' => 'rgba(245, 158, 11, 0.35)',
'codeFrom' => '#fbbf24', 'codeTo' => '#f97316',
'ctaFrom' => '#f59e0b', 'ctaTo' => '#f97316', 'ctaShadow' => 'rgba(249, 115, 22, 0.35)',
'message' => 'Halaman yang kamu cari sepertinya telah dipindahkan, dihapus, atau alamatnya salah. Coba periksa kembali alamatnya ya.',
'image' => 'error-404.png',
])
+3 -6
View File
@@ -1,9 +1,6 @@
@include('errors._error', [
@include('errors.layout', [
'code' => '419',
'title' => 'Sesi Berakhir',
'message' => 'Sesi Anda telah berakhir atau tidak valid. Silakan muat ulang halaman dan coba lagi.',
'icon' => 'fa-hourglass-half',
'iconFrom' => '#f59e0b', 'iconTo' => '#d97706', 'iconShadow' => 'rgba(245, 158, 11, 0.35)',
'codeFrom' => '#fbbf24', 'codeTo' => '#d97706',
'ctaFrom' => '#f59e0b', 'ctaTo' => '#d97706', 'ctaShadow' => 'rgba(245, 158, 11, 0.35)',
'message' => 'Sesi login kamu sudah kedaluwarsa. Muat ulang halaman ini lalu masuk kembali untuk melanjutkan aktivitas.',
'image' => 'error-419.png',
])
+6
View File
@@ -0,0 +1,6 @@
@include('errors.layout', [
'code' => '429',
'title' => 'Terlalu Banyak Permintaan',
'message' => 'Kamu mengirim terlalu banyak permintaan dalam waktu singkat. Tunggu beberapa saat, lalu coba lagi.',
'image' => 'error-429.png',
])
+4 -8
View File
@@ -1,10 +1,6 @@
@include('errors._error', [
@include('errors.layout', [
'code' => '500',
'title' => 'Terjadi Kesalahan',
'message' => 'Maaf, terjadi kendala pada server kami. Silakan muat ulang halaman atau coba lagi beberapa saat. Jika terus berlanjut, hubungi administrator.',
'icon' => 'fa-triangle-exclamation',
'iconFrom' => '#8b5cf6', 'iconTo' => '#7c3aed', 'iconShadow' => 'rgba(139, 92, 246, 0.35)',
'codeFrom' => '#a78bfa', 'codeTo' => '#7c3aed',
'ctaFrom' => '#8b5cf6', 'ctaTo' => '#7c3aed', 'ctaShadow' => 'rgba(139, 92, 246, 0.35)',
'showContact' => true,
'title' => 'Terjadi Kesalahan Server',
'message' => 'Ups, terjadi kendala di server kami. Tim kami sudah mendapat laporan dan akan segera memperbaikinya. Coba lagi dalam beberapa saat.',
'image' => 'error-500.png',
])
+4 -8
View File
@@ -1,10 +1,6 @@
@include('errors._error', [
@include('errors.layout', [
'code' => '503',
'title' => 'Sedang Pemeliharaan',
'message' => 'Sistem sedang dalam pemeliharaan. Silakan kembali beberapa saat lagi. Terima kasih atas kesabaran Anda.',
'icon' => 'fa-screwdriver-wrench',
'iconFrom' => '#0ea5e9', 'iconTo' => '#0284c7', 'iconShadow' => 'rgba(14, 165, 233, 0.35)',
'codeFrom' => '#38bdf8', 'codeTo' => '#0284c7',
'ctaFrom' => '#0ea5e9', 'ctaTo' => '#0284c7', 'ctaShadow' => 'rgba(14, 165, 233, 0.35)',
'showBack' => false,
'title' => 'Sedang Dalam Perbaikan',
'message' => 'Sistem sedang dalam perawatan sebentar. Tenang, data ketertiban dan poin kamu tetap aman. Silakan kembali beberapa saat lagi.',
'image' => 'error-503.png',
])
-174
View File
@@ -1,174 +0,0 @@
{{-- Template halaman error premium v2 (standalone, CSS murni — tanpa CDN) --}}
@php
$appName = \App\Models\Setting::getValue('app_name', 'Aplikasi Ketertiban');
$schoolName = \App\Models\Setting::getValue('school_name', 'SMKN 1 Wonorejo');
@endphp
<!DOCTYPE html>
<html lang="id">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="csrf-token" content="{{ csrf_token() }}">
<title>{{ $code }} - {{ $title }} | {{ $appName }}</title>
<link rel="stylesheet" href="/vendor/font-awesome/css/all.min.css">
<link rel="icon" href="/favicon.ico">
<style>
* { margin: 0; padding: 0; box-sizing: border-box; }
html, body { height: 100%; }
body {
min-height: 100vh; display: flex; align-items: center; justify-content: center;
padding: 20px; position: relative; overflow: hidden;
font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
background:
radial-gradient(1200px 600px at 80% -10%, {{ $ctaFrom }}22, transparent 60%),
radial-gradient(900px 500px at -10% 110%, {{ $ctaTo }}1f, transparent 60%),
linear-gradient(135deg, #f8fafc 0%, #eef4ff 50%, #f4f8ff 100%);
}
{{-- Pola grid halus --}}
.bg-grid {
position: absolute; inset: 0; pointer-events: none; opacity: .5;
background-image:
linear-gradient(rgba(100,116,139,.06) 1px, transparent 1px),
linear-gradient(90deg, rgba(100,116,139,.06) 1px, transparent 1px);
background-size: 44px 44px;
mask-image: radial-gradient(ellipse at center, #000 30%, transparent 75%);
-webkit-mask-image: radial-gradient(ellipse at center, #000 30%, transparent 75%);
}
{{-- Orb mengambang --}}
.orb { position: absolute; border-radius: 9999px; filter: blur(70px); pointer-events: none; animation: drift 14s ease-in-out infinite; }
.orb-1 { width: 420px; height: 420px; top: -120px; right: -100px; background: {{ $ctaFrom }}38; }
.orb-2 { width: 480px; height: 480px; bottom: -160px; left: -120px; background: {{ $ctaTo }}33; animation-delay: -5s; }
.orb-3 { width: 220px; height: 220px; top: 40%; left: 55%; background: {{ $codeFrom }}26; animation-delay: -9s; }
@keyframes drift {
0%, 100% { transform: translate(0, 0) scale(1); }
50% { transform: translate(30px, -30px) scale(1.08); }
}
{{-- Titik dekoratif --}}
.dots {
position: absolute; inset: 0; pointer-events: none; opacity: .35;
background-image: radial-gradient(rgba(148,163,184,.35) 1.2px, transparent 1.2px);
background-size: 26px 26px;
mask-image: radial-gradient(ellipse at 50% 40%, #000 10%, transparent 70%);
-webkit-mask-image: radial-gradient(ellipse at 50% 40%, #000 10%, transparent 70%);
}
{{-- Kartu glass + border gradien berputar --}}
.card {
position: relative; z-index: 10; width: 100%; max-width: 500px;
background: rgba(255,255,255,.72); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px);
border-radius: 30px; padding: 44px 36px; text-align: center;
box-shadow: 0 30px 70px -20px rgba(15,23,42,.25), 0 0 0 1px rgba(255,255,255,.6) inset;
animation: fadeUp .55s cubic-bezier(.22,.9,.3,1.2) both;
}
.card::before {
content: ""; position: absolute; inset: -2px; border-radius: 32px; z-index: -1;
background: conic-gradient(from var(--angle, 0deg),
transparent 0%, {{ $ctaTo }} 12%, transparent 26%,
transparent 50%, {{ $ctaFrom }} 62%, transparent 78%);
animation: spin 7s linear infinite;
}
@property --angle { syntax: '<angle>'; initial-value: 0deg; inherits: false; }
@keyframes spin { to { --angle: 360deg; } }
@keyframes fadeUp { from { opacity: 0; transform: translateY(22px) scale(.98); } to { opacity: 1; transform: none; } }
.icon-box {
width: 92px; height: 92px; margin: 0 auto 26px; position: relative;
border-radius: 26px; display: flex; align-items: center; justify-content: center;
background: linear-gradient(135deg, {{ $iconFrom }}, {{ $iconTo }});
box-shadow: 0 16px 34px {{ $iconShadow }}, 0 0 0 6px rgba(255,255,255,.7);
animation: floaty 3.2s ease-in-out infinite;
}
.icon-box::after {
content: ""; position: absolute; inset: -14px; border-radius: 34px;
background: linear-gradient(135deg, {{ $iconFrom }}33, transparent 60%);
filter: blur(8px); z-index: -1;
}
.icon-box i { font-size: 34px; color: #fff; filter: drop-shadow(0 3px 6px rgba(0,0,0,.18)); }
@keyframes floaty { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
{{-- Angka besar berlapis --}}
.code-wrap { position: relative; margin-bottom: 14px; }
.code {
position: relative; z-index: 2; font-size: 108px; font-weight: 900; letter-spacing: -4px; line-height: 1;
background: linear-gradient(135deg, {{ $codeFrom }}, {{ $codeTo }});
-webkit-background-clip: text; background-clip: text; color: transparent;
filter: drop-shadow(0 10px 24px {{ $iconShadow }});
}
.code-ghost {
position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);
font-size: 190px; font-weight: 900; letter-spacing: -6px; line-height: 1;
color: transparent; -webkit-text-stroke: 1.5px {{ $codeFrom }}1f;
pointer-events: none; user-select: none;
}
h1 { font-size: 21px; font-weight: 800; color: #0f172a; margin-bottom: 10px; }
.msg { font-size: 14px; color: #64748b; line-height: 1.7; margin-bottom: 34px; }
.actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
.btn {
display: inline-flex; align-items: center; justify-content: center; gap: 8px;
padding: 13px 22px; font-size: 14px; font-weight: 700; border-radius: 16px;
text-decoration: none; border: 2px solid transparent; cursor: pointer;
transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;
animation: fadeUp .55s cubic-bezier(.22,.9,.3,1.2) both;
}
.btn:hover { transform: translateY(-2px); }
.btn:active { transform: translateY(0) scale(.98); }
.btn-ghost { background: rgba(255,255,255,.9); color: #334155; border-color: #e2e8f0; animation-delay: .08s; }
.btn-ghost:hover { background: #fff; border-color: #cbd5e1; }
.btn-primary {
background: linear-gradient(135deg, {{ $ctaFrom }}, {{ $ctaTo }}); color: #fff;
box-shadow: 0 12px 28px {{ $ctaShadow }};
}
.btn-primary:hover { filter: brightness(1.06); box-shadow: 0 16px 34px {{ $ctaShadow }}; }
.btn-contact { background: #eff6ff; color: #2563eb; border-color: #dbeafe; animation-delay: .16s; }
.btn-contact:hover { background: #dbeafe; }
.footer { text-align: center; margin-top: 26px; font-size: 12px; color: #94a3b8; animation: fadeUp .55s both .22s; }
.footer i { margin-right: 5px; color: #cbd5e1; }
@media (max-width: 480px) {
.card { padding: 34px 22px; }
.code { font-size: 84px; letter-spacing: -3px; }
.code-ghost { font-size: 140px; }
.actions { flex-direction: column; }
.btn { width: 100%; }
}
</style>
</head>
<body>
<div class="bg-grid"></div>
<div class="orb orb-1"></div>
<div class="orb orb-2"></div>
<div class="orb orb-3"></div>
<div class="dots"></div>
<div class="card">
<div class="icon-box"><i class="fa-solid {{ $icon }}"></i></div>
<div class="code-wrap">
<div class="code-ghost">{{ $code }}</div>
<div class="code">{{ $code }}</div>
</div>
<h1>{{ $title }}</h1>
<p class="msg">{{ $message }}</p>
<div class="actions">
@if($showBack ?? true)
<button onclick="history.length > 1 ? history.back() : window.location.href='{{ url('/') }}'" class="btn btn-ghost">
<i class="fa-solid fa-arrow-left" style="font-size:12px"></i> Kembali
</button>
@endif
<a href="{{ url('/') }}" class="btn btn-primary">
<i class="fa-solid fa-house" style="font-size:12px"></i> Ke Beranda
</a>
@if($showContact ?? false)
<a href="mailto:admin@smkn1-wonorejo.sch.id" class="btn btn-contact">
<i class="fa-solid fa-headset" style="font-size:12px"></i> Hubungi Admin
</a>
@endif
</div>
</div>
<p class="footer"><i class="fa-solid fa-shield-halved"></i>{{ $appName }} • {{ $schoolName }}</p>
</body>
</html>
+130
View File
@@ -0,0 +1,130 @@
@php
$appName = \App\Models\Setting::getValue('app_name', config('app.name', 'Aplikasi Ketertiban'));
$schoolName = \App\Models\Setting::getValue('school_name', 'SMKN 1 Wonorejo');
@endphp
<!DOCTYPE html>
<html lang="id">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="robots" content="noindex">
<meta name="theme-color" content="#2563eb">
<title>{{ $code }} — {{ $appName }}</title>
<style>
* { margin:0; padding:0; box-sizing:border-box; }
html, body { height:100%; }
body {
font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
background:#ffffff; color:#1e293b;
display:flex; align-items:center; justify-content:center;
min-height:100vh; padding:32px 20px; position:relative; overflow-x:hidden;
}
/* dekorasi background biru sangat muda */
body::before, body::after {
content:''; position:fixed; border-radius:50%; z-index:0; pointer-events:none;
}
body::before {
width:460px; height:460px; background:rgba(219,234,254,.55);
top:-140px; right:-120px; filter:blur(20px);
}
body::after {
width:400px; height:400px; background:rgba(204,251,241,.5);
bottom:-130px; left:-100px; filter:blur(20px);
}
.page { width:100%; max-width:1040px; position:relative; z-index:1; }
.card {
display:grid; grid-template-columns:45fr 55fr; gap:40px; align-items:center;
background:#fff; border-radius:28px; padding:56px 52px;
box-shadow:0 30px 70px -20px rgba(30,58,138,.18);
border:1px solid #eef2f7;
}
/* ===== Kolom kiri: teks ===== */
.text-side { text-align:left; }
.code {
font-size:116px; font-weight:900; line-height:1; letter-spacing:1px;
color:#1e3a8a; font-variant-numeric:tabular-nums;
}
h1 { font-size:27px; font-weight:800; color:#0f172a; margin-top:6px; }
.divider {
width:56px; height:5px; border-radius:99px; background:#2563eb; margin:18px 0 16px;
}
p.desc { font-size:15.5px; line-height:1.75; color:#334155; max-width:400px; }
.actions { margin-top:30px; display:flex; flex-direction:column; align-items:flex-start; gap:16px; }
.btn-primary {
display:inline-flex; align-items:center; gap:10px; padding:14px 28px; border-radius:12px;
background:#2563eb; color:#fff; font-size:14.5px; font-weight:700; text-decoration:none;
box-shadow:0 10px 24px -8px rgba(37,99,235,.55); transition:.2s; border:0; cursor:pointer; font-family:inherit;
}
.btn-primary:hover { transform:translateY(-2px); box-shadow:0 14px 28px -8px rgba(37,99,235,.6); }
.btn-link {
display:inline-flex; align-items:center; gap:8px; padding:6px 2px;
background:none; border:0; color:#1d4ed8; font-size:14px; font-weight:700; cursor:pointer;
text-decoration:none; font-family:inherit; transition:.2s;
}
.btn-link:hover { opacity:.75; }
/* ===== Kolom kanan: ilustrasi ===== */
.art-side { display:flex; justify-content:center; align-items:center; }
.art {
width:100%; max-width:460px; height:auto; object-fit:contain; display:block;
}
/* ===== Info box footer ===== */
.infobox {
margin-top:22px; display:flex; align-items:center; gap:14px;
background:#fff; border:1px solid #e2e8f0; border-radius:16px;
padding:15px 22px; box-shadow:0 10px 30px -18px rgba(30,58,138,.25);
}
.ico-info {
flex:0 0 auto; width:28px; height:28px; border-radius:50%;
background:#dbeafe; color:#2563eb; font-weight:800; font-size:15px;
display:flex; align-items:center; justify-content:center;
}
.info-text { flex:1; font-size:13.5px; color:#334155; line-height:1.6; }
.ico-lock { flex:0 0 auto; color:#93c5fd; display:flex; }
/* ===== Responsif ===== */
@media (max-width:820px){
body { padding:24px 16px; }
.card { grid-template-columns:1fr; gap:18px; padding:30px 24px 26px; border-radius:22px; text-align:center; }
.text-side { text-align:center; display:flex; flex-direction:column; align-items:center; }
.actions { align-items:center; margin-top:24px; }
.divider { margin-left:auto; margin-right:auto; }
.code { font-size:84px; }
h1 { font-size:22px; }
p.desc { max-width:100%; }
.art { max-width:280px; }
.infobox { padding:13px 16px; }
}
</style>
</head>
<body>
<div class="page">
<div class="card">
<div class="text-side">
<div class="code">{{ $code }}</div>
<h1>{{ $title }}</h1>
<div class="divider"></div>
<p class="desc">{{ $message }}</p>
<div class="actions">
<a class="btn-primary" href="{{ url('/') }}">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 10.5 12 3l9 7.5"/><path d="M5 9.5V21h14V9.5"/></svg>
Kembali ke Beranda
</a>
<button class="btn-link" type="button" onclick="history.length > 1 ? history.back() : location.href='/'">
<svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><path d="M19 12H5"/><path d="m12 19-7-7 7-7"/></svg>
Kembali
</button>
</div>
</div>
<div class="art-side">
<img class="art" src="{{ asset('errors/' . $image) }}" alt="{{ $title }}" onerror="this.onerror=null;this.src='{{ asset('errors/placeholder.svg') }}'">
</div>
</div>
<div class="infobox">
<span class="ico-info">i</span>
<span class="info-text">Butuh bantuan? Hubungi administrator {{ $schoolName }} untuk informasi lebih lanjut.</span>
<span class="ico-lock">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="11" width="16" height="10" rx="2"/><path d="M8 11V7a4 4 0 0 1 8 0v4"/></svg>
</span>
</div>
</div>
</body>
</html>