n8n-nodes-ffmpeg-wasm 1.2.6 → 1.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/node_modules/@ffmpeg/ffmpeg/.gitpod.Dockerfile +2 -0
  2. package/node_modules/@ffmpeg/ffmpeg/.gitpod.yml +7 -0
  3. package/node_modules/@ffmpeg/ffmpeg/.yarnrc.yml +4 -0
  4. package/node_modules/@ffmpeg/ffmpeg/CODE_OF_CONDUCT.md +76 -0
  5. package/node_modules/@ffmpeg/ffmpeg/CONTRIBUTING.md +1 -0
  6. package/node_modules/@ffmpeg/ffmpeg/LICENSE +21 -0
  7. package/node_modules/@ffmpeg/ffmpeg/README.md +202 -0
  8. package/node_modules/@ffmpeg/ffmpeg/_config.yml +1 -0
  9. package/node_modules/@ffmpeg/ffmpeg/dist/046d0074eee1d99a674a.js +1 -0
  10. package/node_modules/@ffmpeg/ffmpeg/dist/ffmpeg.min.js +2 -0
  11. package/node_modules/@ffmpeg/ffmpeg/dist/ffmpeg.min.js.map +1 -0
  12. package/node_modules/@ffmpeg/ffmpeg/package.json +73 -0
  13. package/node_modules/@ffmpeg/ffmpeg/scripts/server.js +25 -0
  14. package/node_modules/@ffmpeg/ffmpeg/scripts/test-helper.js +9 -0
  15. package/node_modules/@ffmpeg/ffmpeg/scripts/webpack.config.common.js +23 -0
  16. package/node_modules/@ffmpeg/ffmpeg/scripts/webpack.config.dev.js +27 -0
  17. package/node_modules/@ffmpeg/ffmpeg/scripts/webpack.config.prod.js +26 -0
  18. package/node_modules/@ffmpeg/ffmpeg/scripts/webpack.config.worker.dev.js +29 -0
  19. package/node_modules/@ffmpeg/ffmpeg/scripts/webpack.config.worker.prod.js +27 -0
  20. package/node_modules/@ffmpeg/ffmpeg/scripts/worker-server.js +25 -0
  21. package/node_modules/@ffmpeg/ffmpeg/src/browser/defaultOptions.js +10 -0
  22. package/node_modules/@ffmpeg/ffmpeg/src/browser/fetchFile.js +38 -0
  23. package/node_modules/@ffmpeg/ffmpeg/src/browser/getCreateFFmpegCore.js +114 -0
  24. package/node_modules/@ffmpeg/ffmpeg/src/browser/index.js +5 -0
  25. package/node_modules/@ffmpeg/ffmpeg/src/config.js +50 -0
  26. package/node_modules/@ffmpeg/ffmpeg/src/createFFmpeg.js +279 -0
  27. package/node_modules/@ffmpeg/ffmpeg/src/index.d.ts +120 -0
  28. package/node_modules/@ffmpeg/ffmpeg/src/index.js +36 -0
  29. package/node_modules/@ffmpeg/ffmpeg/src/node/defaultOptions.js +6 -0
  30. package/node_modules/@ffmpeg/ffmpeg/src/node/fetchFile.js +33 -0
  31. package/node_modules/@ffmpeg/ffmpeg/src/node/getCreateFFmpegCore.js +7 -0
  32. package/node_modules/@ffmpeg/ffmpeg/src/node/index.js +9 -0
  33. package/node_modules/@ffmpeg/ffmpeg/src/utils/errors.js +11 -0
  34. package/node_modules/@ffmpeg/ffmpeg/src/utils/log.js +24 -0
  35. package/node_modules/@ffmpeg/ffmpeg/src/utils/parseArgs.js +10 -0
  36. package/node_modules/is-url/.travis.yml +3 -0
  37. package/node_modules/is-url/History.md +25 -0
  38. package/node_modules/is-url/LICENSE-MIT +19 -0
  39. package/node_modules/is-url/Readme.md +19 -0
  40. package/node_modules/is-url/index.js +47 -0
  41. package/node_modules/is-url/package.json +13 -0
  42. package/node_modules/is-url/test/index.js +149 -0
  43. package/node_modules/node-fetch/LICENSE.md +22 -0
  44. package/node_modules/node-fetch/README.md +634 -0
  45. package/node_modules/node-fetch/browser.js +25 -0
  46. package/node_modules/node-fetch/lib/index.es.js +1777 -0
  47. package/node_modules/node-fetch/lib/index.js +1787 -0
  48. package/node_modules/node-fetch/lib/index.mjs +1775 -0
  49. package/node_modules/node-fetch/package.json +89 -0
  50. package/node_modules/regenerator-runtime/LICENSE +21 -0
  51. package/node_modules/regenerator-runtime/README.md +31 -0
  52. package/node_modules/regenerator-runtime/package.json +19 -0
  53. package/node_modules/regenerator-runtime/path.js +11 -0
  54. package/node_modules/regenerator-runtime/runtime.js +761 -0
  55. package/node_modules/resolve-url/.jshintrc +44 -0
  56. package/node_modules/resolve-url/LICENSE +21 -0
  57. package/node_modules/resolve-url/bower.json +15 -0
  58. package/node_modules/resolve-url/changelog.md +15 -0
  59. package/node_modules/resolve-url/component.json +15 -0
  60. package/node_modules/resolve-url/package.json +34 -0
  61. package/node_modules/resolve-url/readme.md +83 -0
  62. package/node_modules/resolve-url/resolve-url.js +47 -0
  63. package/node_modules/resolve-url/test/resolve-url.js +70 -0
  64. package/node_modules/tr46/.npmignore +4 -0
  65. package/node_modules/tr46/index.js +193 -0
  66. package/node_modules/tr46/lib/.gitkeep +0 -0
  67. package/node_modules/tr46/lib/mappingTable.json +1 -0
  68. package/node_modules/tr46/package.json +31 -0
  69. package/node_modules/webidl-conversions/LICENSE.md +12 -0
  70. package/node_modules/webidl-conversions/README.md +53 -0
  71. package/node_modules/webidl-conversions/lib/index.js +189 -0
  72. package/node_modules/webidl-conversions/package.json +23 -0
  73. package/node_modules/whatwg-url/LICENSE.txt +21 -0
  74. package/node_modules/whatwg-url/README.md +67 -0
  75. package/node_modules/whatwg-url/lib/URL-impl.js +200 -0
  76. package/node_modules/whatwg-url/lib/URL.js +196 -0
  77. package/node_modules/whatwg-url/lib/public-api.js +11 -0
  78. package/node_modules/whatwg-url/lib/url-state-machine.js +1297 -0
  79. package/node_modules/whatwg-url/lib/utils.js +20 -0
  80. package/node_modules/whatwg-url/package.json +32 -0
  81. package/package.json +6 -2
@@ -0,0 +1,2 @@
1
+ FROM gitpod/workspace-full
2
+ RUN sudo apt-get update && sudo apt-get install -y libgtk-3-0 libx11-xcb1 libnss3 libxss1 libasound2
@@ -0,0 +1,7 @@
1
+ image:
2
+ file: .gitpod.Dockerfile
3
+ tasks:
4
+ - init: >
5
+ wget https://github.com/jeromewu/docker-workspace/raw/master/vim.zip -O /tmp/vim.zip &> /dev/null &&
6
+ unzip /tmp/vim.zip -d /home/gitpod &> /dev/null &&
7
+ npm install
@@ -0,0 +1,4 @@
1
+ packageExtensions:
2
+ "@ffmpeg/ffmpeg@*":
3
+ peerDependencies:
4
+ "@ffmpeg/core": "*"
@@ -0,0 +1,76 @@
1
+ # Contributor Covenant Code of Conduct
2
+
3
+ ## Our Pledge
4
+
5
+ In the interest of fostering an open and welcoming environment, we as
6
+ contributors and maintainers pledge to making participation in our project and
7
+ our community a harassment-free experience for everyone, regardless of age, body
8
+ size, disability, ethnicity, sex characteristics, gender identity and expression,
9
+ level of experience, education, socio-economic status, nationality, personal
10
+ appearance, race, religion, or sexual identity and orientation.
11
+
12
+ ## Our Standards
13
+
14
+ Examples of behavior that contributes to creating a positive environment
15
+ include:
16
+
17
+ * Using welcoming and inclusive language
18
+ * Being respectful of differing viewpoints and experiences
19
+ * Gracefully accepting constructive criticism
20
+ * Focusing on what is best for the community
21
+ * Showing empathy towards other community members
22
+
23
+ Examples of unacceptable behavior by participants include:
24
+
25
+ * The use of sexualized language or imagery and unwelcome sexual attention or
26
+ advances
27
+ * Trolling, insulting/derogatory comments, and personal or political attacks
28
+ * Public or private harassment
29
+ * Publishing others' private information, such as a physical or electronic
30
+ address, without explicit permission
31
+ * Other conduct which could reasonably be considered inappropriate in a
32
+ professional setting
33
+
34
+ ## Our Responsibilities
35
+
36
+ Project maintainers are responsible for clarifying the standards of acceptable
37
+ behavior and are expected to take appropriate and fair corrective action in
38
+ response to any instances of unacceptable behavior.
39
+
40
+ Project maintainers have the right and responsibility to remove, edit, or
41
+ reject comments, commits, code, wiki edits, issues, and other contributions
42
+ that are not aligned to this Code of Conduct, or to ban temporarily or
43
+ permanently any contributor for other behaviors that they deem inappropriate,
44
+ threatening, offensive, or harmful.
45
+
46
+ ## Scope
47
+
48
+ This Code of Conduct applies both within project spaces and in public spaces
49
+ when an individual is representing the project or its community. Examples of
50
+ representing a project or community include using an official project e-mail
51
+ address, posting via an official social media account, or acting as an appointed
52
+ representative at an online or offline event. Representation of a project may be
53
+ further defined and clarified by project maintainers.
54
+
55
+ ## Enforcement
56
+
57
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
58
+ reported by contacting the project team at jeromewus@gmail.com. All
59
+ complaints will be reviewed and investigated and will result in a response that
60
+ is deemed necessary and appropriate to the circumstances. The project team is
61
+ obligated to maintain confidentiality with regard to the reporter of an incident.
62
+ Further details of specific enforcement policies may be posted separately.
63
+
64
+ Project maintainers who do not follow or enforce the Code of Conduct in good
65
+ faith may face temporary or permanent repercussions as determined by other
66
+ members of the project's leadership.
67
+
68
+ ## Attribution
69
+
70
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71
+ available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
72
+
73
+ [homepage]: https://www.contributor-covenant.org
74
+
75
+ For answers to common questions about this code of conduct, see
76
+ https://www.contributor-covenant.org/faq
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2019 Jerome Wu
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,202 @@
1
+ <p align="center">
2
+ <a href="#">
3
+ <img alt="ffmpeg.wasm" width="128px" height="128px" src="https://github.com/ffmpegwasm/ffmpeg.wasm/raw/master/docs/images/ffmpegwasm-icon.png">
4
+ </a>
5
+ </p>
6
+
7
+ # ffmpeg.wasm
8
+
9
+ [![stability-experimental](https://img.shields.io/badge/stability-experimental-orange.svg)](https://github.com/emersion/stability-badges#experimental)
10
+ [![Node Version](https://img.shields.io/node/v/@ffmpeg/ffmpeg.svg)](https://img.shields.io/node/v/@ffmpeg/ffmpeg.svg)
11
+ [![Actions Status](https://github.com/ffmpegwasm/ffmpeg.wasm/workflows/CI/badge.svg)](https://github.com/ffmpegwasm/ffmpeg.wasm/actions)
12
+ ![CodeQL](https://github.com/ffmpegwasm/ffmpeg.wasm/workflows/CodeQL/badge.svg)
13
+ ![npm (tag)](https://img.shields.io/npm/v/@ffmpeg/ffmpeg/latest)
14
+ [![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://github.com/ffmpegwasm/ffmpeg.wasm/graphs/commit-activity)
15
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
16
+ [![Code Style](https://badgen.net/badge/code%20style/airbnb/ff5a5f?icon=airbnb)](https://github.com/airbnb/javascript)
17
+ [![Downloads Total](https://img.shields.io/npm/dt/@ffmpeg/ffmpeg.svg)](https://www.npmjs.com/package/@ffmpeg/ffmpeg)
18
+ [![Downloads Month](https://img.shields.io/npm/dm/@ffmpeg/ffmpeg.svg)](https://www.npmjs.com/package/@ffmpeg/ffmpeg)
19
+
20
+ Join us on Discord!
21
+
22
+ [![Discord](https://dcbadge.vercel.app/api/server/NjGMaqqfm5)](https://discord.gg/NjGMaqqfm5)
23
+
24
+ ffmpeg.wasm is a pure Webassembly / Javascript port of FFmpeg. It enables video & audio record, convert and stream right inside browsers.
25
+
26
+ **AVI to MP4 Demo**
27
+ <p align="center">
28
+ <a href="#">
29
+ <img alt="transcode-demo" src="https://github.com/ffmpegwasm/ffmpeg.wasm/raw/master/docs/images/transcode.gif">
30
+ </a>
31
+ </p>
32
+
33
+ Try it: [https://ffmpegwasm.netlify.app](https://ffmpegwasm.netlify.app#demo)
34
+
35
+ Check next steps of ffmpeg.wasm [HERE](https://github.com/ffmpegwasm/ffmpeg.wasm/discussions/415)
36
+
37
+ ## Installation
38
+
39
+ **Node**
40
+
41
+ ```
42
+ $ npm install @ffmpeg/ffmpeg @ffmpeg/core
43
+ ```
44
+
45
+ > As we are using experimental features, you need to add flags to run in Node.js
46
+
47
+ ```
48
+ $ node --experimental-wasm-threads transcode.js
49
+ ```
50
+
51
+ **Browser**
52
+
53
+ Or, using a script tag in the browser (only works in some browsers, see list below):
54
+
55
+ > SharedArrayBuffer is only available to pages that are [cross-origin isolated](https://developer.chrome.com/blog/enabling-shared-array-buffer/#cross-origin-isolation). So you need to host [your own server](https://github.com/ffmpegwasm/ffmpegwasm.github.io/blob/main/server/server.js) with `Cross-Origin-Embedder-Policy: require-corp` and `Cross-Origin-Opener-Policy: same-origin` headers to use ffmpeg.wasm.
56
+
57
+ ```html
58
+ <script src="static/js/ffmpeg.min.js"></script>
59
+ <script>
60
+ const { createFFmpeg } = FFmpeg;
61
+ ...
62
+ </script>
63
+ ```
64
+
65
+ > Only browsers with SharedArrayBuffer support can use ffmpeg.wasm, you can check [HERE](https://caniuse.com/sharedarraybuffer) for the complete list.
66
+
67
+ ## Usage
68
+
69
+ ffmpeg.wasm provides simple to use APIs, to transcode a video you only need few lines of code:
70
+
71
+ ```javascript
72
+ import { writeFile } from 'fs/promises';
73
+ import { createFFmpeg, fetchFile } from '@ffmpeg/ffmpeg';
74
+
75
+ const ffmpeg = createFFmpeg({ log: true });
76
+
77
+ (async () => {
78
+ await ffmpeg.load();
79
+ ffmpeg.FS('writeFile', 'test.avi', await fetchFile('./test.avi'));
80
+ await ffmpeg.run('-i', 'test.avi', 'test.mp4');
81
+ await fs.promises.writeFile('./test.mp4', ffmpeg.FS('readFile', 'test.mp4'));
82
+ process.exit(0);
83
+ })();
84
+ ```
85
+
86
+ ### Use other version of ffmpeg.wasm-core / @ffmpeg/core
87
+
88
+ For each version of ffmpeg.wasm, there is a default version of @ffmpeg/core (you can find it in **devDependencies** section of [package.json](https://github.com/ffmpegwasm/ffmpeg.wasm/blob/master/package.json)), but sometimes you may need to use newer version of @ffmpeg/core to use the latest/experimental features.
89
+
90
+ **Node**
91
+
92
+ Just install the specific version you need:
93
+
94
+ ```bash
95
+ $ npm install @ffmpeg/core@latest
96
+ ```
97
+
98
+ Or use your own version with customized path
99
+
100
+ ```javascript
101
+ const ffmpeg = createFFmpeg({
102
+ corePath: '../../../src/ffmpeg-core.js',
103
+ });
104
+ ```
105
+
106
+ **Browser**
107
+
108
+ ```javascript
109
+ const ffmpeg = createFFmpeg({
110
+ corePath: 'static/js/ffmpeg-core.js',
111
+ });
112
+ ```
113
+
114
+ Keep in mind that for compatibility with webworkers and nodejs this will default to a local path, so it will attempt to look for `'static/js/ffmpeg.core.js'` locally, often resulting in a local resource error. If you wish to use a core version hosted on your own domain, you might reference it relatively like this:
115
+
116
+ ```javascript
117
+ const ffmpeg = createFFmpeg({
118
+ corePath: new URL('static/js/ffmpeg-core.js', document.location).href,
119
+ });
120
+ ```
121
+
122
+ For the list available versions and their changelog, please check: https://github.com/ffmpegwasm/ffmpeg.wasm-core/releases
123
+
124
+ ### Use single thread version
125
+
126
+ ```javascript
127
+ const ffmpeg = createFFmpeg({
128
+ mainName: 'main',
129
+ corePath: 'https://unpkg.com/@ffmpeg/core-st@0.11.1/dist/ffmpeg-core.js',
130
+ });
131
+ ```
132
+
133
+ ## Multi-threading
134
+
135
+ Multi-threading need to be configured per external libraries, only following libraries supports it now:
136
+
137
+ ### x264
138
+
139
+ Run it multi-threading mode by default, no need to pass any arguments.
140
+
141
+ ### libvpx / webm
142
+
143
+ Need to pass `-row-mt 1`, but can only use one thread to help, can speed up around 30%
144
+
145
+ ## Documentation
146
+
147
+ - [API](https://github.com/ffmpegwasm/ffmpeg.wasm/blob/master/docs/api.md)
148
+ - [Supported External Libraries](https://github.com/ffmpegwasm/ffmpeg.wasm-core#configuration)
149
+
150
+ ## FAQ
151
+
152
+ ### What is the license of ffmpeg.wasm?
153
+
154
+ There are two components inside ffmpeg.wasm:
155
+
156
+ - @ffmpeg/ffmpeg (https://github.com/ffmpegwasm/ffmpeg.wasm)
157
+ - @ffmpeg/core (https://github.com/ffmpegwasm/ffmpeg.wasm-core)
158
+
159
+ @ffmpeg/core contains WebAssembly code which is transpiled from original FFmpeg C code with minor modifications, but overall it still following the same licenses as FFmpeg and its external libraries (as each external libraries might have its own license).
160
+
161
+ @ffmpeg/ffmpeg contains kind of a wrapper to handle the complexity of loading core and calling low-level APIs. It is a small code base and under MIT license.
162
+
163
+ ### Can I use ffmpeg.wasm in Firefox?
164
+
165
+ Yes, but only for Firefox 79+ with proper header in both client and server, visit https://ffmpegwasm.netlify.app to try whether your Firefox works.
166
+
167
+ ![](https://user-images.githubusercontent.com/5723124/98955802-4cb20c80-253a-11eb-8f16-ce0298720a2a.png)
168
+
169
+ For more details: https://github.com/ffmpegwasm/ffmpeg.wasm/issues/106
170
+
171
+ ### What is the maximum size of input file?
172
+
173
+ 2 GB, which is a hard limit in WebAssembly. Might become 4 GB in the future.
174
+
175
+ ### How can I build my own ffmpeg.wasm?
176
+
177
+ In fact, it is ffmpeg.wasm-core most people would like to build.
178
+
179
+ To build on your own, you can check build.sh inside https://github.com/ffmpegwasm/ffmpeg.wasm-core repository.
180
+
181
+ Also you can check this series of posts to learn more fundamental concepts:
182
+
183
+ - https://jeromewu.github.io/build-ffmpeg-webassembly-version-part-1-preparation/
184
+ - https://jeromewu.github.io/build-ffmpeg-webassembly-version-part-2-compile-with-emscripten/
185
+ - https://jeromewu.github.io/build-ffmpeg-webassembly-version-part-3-v0.1/
186
+ - https://jeromewu.github.io/build-ffmpeg-webassembly-version-part-4-v0.2/
187
+
188
+ ### Why it doesn't work in my local environment?
189
+
190
+ When calling `ffmpeg.load()`, by default it looks for `http://localhost:3000/node_modules/@ffmpeg/core/dist/` to download essential files (ffmpeg-core.js, ffmpeg-core.wasm, ffmpeg-core.worker.js). It is necessary to make sure you have those files served there.
191
+
192
+ If you have those files serving in other location, you can rewrite the default behavior when calling `createFFmpeg()`:
193
+
194
+ ```javascript
195
+ const { createFFmpeg } = FFmpeg;
196
+ const ffmpeg = createFFmpeg({
197
+ corePath: "http://localhost:3000/public/ffmpeg-core.js",
198
+ // Use public address if you don't want to host your own.
199
+ // corePath: 'https://unpkg.com/@ffmpeg/core@0.10.0/dist/ffmpeg-core.js'
200
+ log: true,
201
+ });
202
+ ```
@@ -0,0 +1 @@
1
+ theme: jekyll-theme-cayman
@@ -0,0 +1 @@
1
+ var createFFmpegCore=function(){var e="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0;return"undefined"!=typeof __filename&&(e=e||__filename),function(t){var n,r,i;t=t||{},n||(n=void 0!==t?t:{}),n.ready=new Promise((function(e,t){r=e,i=t})),n.quit=function(e){throw n.onExit&&n.onExit(e),new Qr(e)},n.exit=$r,k=A=function(){};var a,f={};for(a in n)n.hasOwnProperty(a)&&(f[a]=n[a]);var o=[],u="./this.program";function c(e,t){throw t}var s=!1,l=!1,d=!1,h=!1;s="object"==typeof window,l="function"==typeof importScripts,d="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,h=!s&&!d&&!l;var p=n.ENVIRONMENT_IS_PTHREAD||!1;p&&(q=n.buffer);var m,g,w,y,v="";function b(e){return n.locateFile?n.locateFile(e,v):v+e}if(d){var _;v=l?require("path").dirname(v)+"/":__dirname+"/",m=function(e,t){return w||(w=require("fs")),y||(y=require("path")),e=y.normalize(e),w.readFileSync(e,t?null:"utf8")},g=function(e){return(e=m(e,!0)).buffer||(e=new Uint8Array(e)),O(e.buffer),e},1<process.argv.length&&(u=process.argv[1].replace(/\\/g,"/")),o=process.argv.slice(2),process.on("uncaughtException",(function(e){if(!(e instanceof Qr))throw e})),process.on("unhandledRejection",he),c=function(e){process.exit(e)},n.inspect=function(){return"[Emscripten Module object]"};try{_=require("worker_threads")}catch(e){throw console.error('The "worker_threads" module is not supported in this node.js build - perhaps a newer version is needed?'),e}global.Worker=_.Worker}else h?("undefined"!=typeof read&&(m=function(e){return read(e)}),g=function(e){return"function"==typeof readbuffer?new Uint8Array(readbuffer(e)):(O("object"==typeof(e=read(e,"binary"))),e)},"undefined"!=typeof scriptArgs?o=scriptArgs:void 0!==arguments&&(o=arguments),"function"==typeof quit&&(c=function(e){quit(e)}),"undefined"!=typeof print&&("undefined"==typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!=typeof printErr?printErr:print)):(s||l)&&(l?v=self.location.href:"undefined"!=typeof document&&document.currentScript&&(v=document.currentScript.src),e&&(v=e),v=0!==v.indexOf("blob:")?v.substr(0,v.lastIndexOf("/")+1):"",d?(m=function(e,t){return w||(w=require("fs")),y||(y=require("path")),e=y.normalize(e),w.readFileSync(e,t?null:"utf8")},g=function(e){return(e=m(e,!0)).buffer||(e=new Uint8Array(e)),O(e.buffer),e}):(m=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.send(null),t.responseText},l&&(g=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)})));d&&"undefined"==typeof performance&&(global.performance=require("perf_hooks").performance);var k=n.print||console.log.bind(console),A=n.printErr||console.warn.bind(console);for(a in f)f.hasOwnProperty(a)&&(n[a]=f[a]);f=null,n.arguments&&(o=n.arguments),n.thisProgram&&(u=n.thisProgram),n.quit&&(c=n.quit);var x,E,j,S=0;n.wasmBinary&&(E=n.wasmBinary),n.noExitRuntime&&(j=n.noExitRuntime),"object"!=typeof WebAssembly&&he("no native wasm support detected");var M,T,D=0,C=0,F=!1;function O(e,t){e||he("Assertion failed: "+t)}function I(e){var t=n["_"+e];return O(t,"Cannot call unknown function "+e+", make sure it is exported"),t}function P(e,t,n,r){var i={string:function(e){var t=0;if(null!=e&&0!==e){var n=1+(e.length<<2);B(e,t=yr(n),n)}return t},array:function(e){var t=yr(e.length);return H.set(e,t),t}},a=I(e),f=[];if(e=0,r)for(var o=0;o<r.length;o++){var u=i[n[o]];u?(0===e&&(e=gr()),f[o]=u(r[o])):f[o]=r[o]}return n=a.apply(null,f),n="string"===t?R(n):"boolean"===t?!!n:n,0!==e&&wr(e),n}function L(e,t,n){n=t+n;for(var r="";!(t>=n);){var i=e[t++];if(!i)break;if(128&i){var a=63&e[t++];if(192==(224&i))r+=String.fromCharCode((31&i)<<6|a);else{var f=63&e[t++];65536>(i=224==(240&i)?(15&i)<<12|a<<6|f:(7&i)<<18|a<<12|f<<6|63&e[t++])?r+=String.fromCharCode(i):(i-=65536,r+=String.fromCharCode(55296|i>>10,56320|1023&i))}}else r+=String.fromCharCode(i)}return r}function R(e,t){return e?L(Y,e,t):""}function N(e,t,n,r){if(!(0<r))return 0;var i=n;r=n+r-1;for(var a=0;a<e.length;++a){var f=e.charCodeAt(a);if(55296<=f&&57343>=f&&(f=65536+((1023&f)<<10)|1023&e.charCodeAt(++a)),127>=f){if(n>=r)break;t[n++]=f}else{if(2047>=f){if(n+1>=r)break;t[n++]=192|f>>6}else{if(65535>=f){if(n+2>=r)break;t[n++]=224|f>>12}else{if(n+3>=r)break;t[n++]=240|f>>18,t[n++]=128|f>>12&63}t[n++]=128|f>>6&63}t[n++]=128|63&f}}return t[n]=0,n-i}function B(e,t,n){return N(e,Y,t,n)}function U(e){for(var t=0,n=0;n<e.length;++n){var r=e.charCodeAt(n);55296<=r&&57343>=r&&(r=65536+((1023&r)<<10)|1023&e.charCodeAt(++n)),127>=r?++t:t=2047>=r?t+2:65535>=r?t+3:t+4}return t}function z(e){var t=U(e)+1,n=ir(t);return n&&N(e,H,n,t),n}function G(e){var t=U(e)+1,n=yr(t);return N(e,H,n,t),n}function W(e,t,n){for(var r=0;r<e.length;++r)H[t++>>0]=e.charCodeAt(r);n||(H[t>>0]=0)}var q,H,Y,X,V,Q,J,$,Z,K=n.INITIAL_MEMORY||1073741824;if(p)M=n.wasmMemory,q=n.buffer;else if(n.wasmMemory)M=n.wasmMemory;else if(!((M=new WebAssembly.Memory({initial:K/65536,maximum:K/65536,shared:!0})).buffer instanceof SharedArrayBuffer))throw A("requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag"),d&&console.log("(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and also use a recent version)"),Error("bad memory");M&&(q=M.buffer),K=q.byteLength;var ee=q;q=ee,n.HEAP8=H=new Int8Array(ee),n.HEAP16=X=new Int16Array(ee),n.HEAP32=Q=new Int32Array(ee),n.HEAPU8=Y=new Uint8Array(ee),n.HEAPU16=V=new Uint16Array(ee),n.HEAPU32=J=new Uint32Array(ee),n.HEAPF32=$=new Float32Array(ee),n.HEAPF64=Z=new Float64Array(ee);var te,ne=[],re=[],ie=[],ae=[],fe=[];function oe(){var e=n.preRun.shift();ne.unshift(e)}var ue=0,ce=null,se=null;function le(){O(!p,"addRunDependency cannot be used in a pthread worker"),ue++,n.monitorRunDependencies&&n.monitorRunDependencies(ue)}function de(){if(ue--,n.monitorRunDependencies&&n.monitorRunDependencies(ue),0==ue&&(null!==ce&&(clearInterval(ce),ce=null),se)){var e=se;se=null,e()}}function he(e){throw n.onAbort&&n.onAbort(e),p&&console.error("Pthread aborting at "+Error().stack),A(e),F=!0,e=new WebAssembly.RuntimeError("abort("+e+"). Build with -s ASSERTIONS=1 for more info."),i(e),e}function pe(e){var t=ge;return String.prototype.startsWith?t.startsWith(e):0===t.indexOf(e)}function me(){return pe("data:application/octet-stream;base64,")}n.preloadedImages={},n.preloadedAudios={};var ge="ffmpeg-core.wasm";function we(){try{if(E)return new Uint8Array(E);if(g)return g(ge);throw"both async and sync fetching of the wasm failed"}catch(e){he(e)}}function ye(){return E||!s&&!l||"function"!=typeof fetch||pe("file://")?Promise.resolve().then(we):fetch(ge,{credentials:"same-origin"}).then((function(e){if(!e.ok)throw"failed to load wasm binary file at '"+ge+"'";return e.arrayBuffer()})).catch((function(){return we()}))}me()||(ge=b(ge));var ve,be,_e={5449136:function(){throw"Canceled!"},5449356:function(e,t){setTimeout((function(){Ar(e,t)}),0)},5449458:function(){return 5242880}};function ke(e){for(;0<e.length;){var t=e.shift();if("function"==typeof t)t(n);else{var r=t.vh;"number"==typeof r?void 0===t.Tf?te.get(r)():te.get(r)(t.Tf):r(void 0===t.Tf?null:t.Tf)}}}function Ae(e){return e.replace(/\b_Z[\w\d_]+/g,(function(e){return e==e?e:e+" ["+e+"]"}))}n.dynCall=function(e,t,r){return-1!=e.indexOf("j")?r&&r.length?n["dynCall_"+e].apply(null,[t].concat(r)):n["dynCall_"+e].call(null,t):te.get(t).apply(null,r)};var xe=0,Ee=0,je=0;function Se(e,t,n){xe=0|e,je=0|t,Ee=0|n}function Me(e,t){if(0>=e||e>H.length||1&e||0>t)return-28;if(0==t)return 0;2147483647<=t&&(t=1/0);var n=Atomics.load(Q,Fe.Vf>>2),r=0;if(n==e&&Atomics.compareExchange(Q,Fe.Vf>>2,n,0)==n&&(r=1,0>=--t))return 1;if(0<=(e=Atomics.notify(Q,e>>2,t)))return e+r;throw"Atomics.notify returned an unexpected value "+e}function Te(e){if(p)throw"Internal Error! cancelThread() can only ever be called from main application thread!";if(!e)throw"Internal Error! Null pthread_ptr in cancelThread!";Fe.Ef[e].worker.postMessage({cmd:"cancel"})}function De(e){if(p)throw"Internal Error! cleanupThread() can only ever be called from main application thread!";if(!e)throw"Internal Error! Null pthread_ptr in cleanupThread!";Q[e+12>>2]=0,(e=Fe.Ef[e])&&Fe.Ag(e.worker)}n.registerPthreadPtr=Se,n._emscripten_futex_wake=Me;var Ce,Fe={Ph:1,nj:{Ih:0,Jh:0},Gf:[],Kf:[],lj:function(){},pi:function(){Fe.xf=ir(232);for(var e=0;58>e;++e)J[Fe.xf/4+e]=0;Q[Fe.xf+12>>2]=Fe.xf,e=Fe.xf+156,Q[e>>2]=e;var t=ir(512);for(e=0;128>e;++e)J[t/4+e]=0;Atomics.store(J,Fe.xf+104>>2,t),Atomics.store(J,Fe.xf+40>>2,Fe.xf),Atomics.store(J,Fe.xf+44>>2,42),Fe.Ch(),Se(Fe.xf,!l,1),kr(Fe.xf)},ri:function(){Fe.Ch(),r(n),Fe.receiveObjectTransfer=Fe.Ii,Fe.setThreadStatus=Fe.Li,Fe.threadCancel=Fe.Pi,Fe.threadExit=Fe.Qi},Ch:function(){Fe.Vf=Cr},Ef:{},Dg:[],Li:function(){},eh:function(){for(;0<Fe.Dg.length;)Fe.Dg.pop()();p&&D&&br()},Qi:function(e){var t=0|xe;t&&(Atomics.store(J,t+4>>2,e),Atomics.store(J,t+0>>2,1),Atomics.store(J,t+60>>2,1),Atomics.store(J,t+64>>2,0),Fe.eh(),Me(t+0,2147483647),Se(0,0,0),D=0,p&&postMessage({cmd:"exit"}))},Pi:function(){Fe.eh(),Atomics.store(J,D+4>>2,-1),Atomics.store(J,D+0>>2,1),Me(D+0,2147483647),D=C=0,Se(0,0,0),postMessage({cmd:"cancelDone"})},Oi:function(){for(var e in Fe.Ef){var t=Fe.Ef[e];t&&t.worker&&Fe.Ag(t.worker)}for(Fe.Ef={},e=0;e<Fe.Gf.length;++e){var n=Fe.Gf[e];n.terminate()}for(Fe.Gf=[],e=0;e<Fe.Kf.length;++e)t=(n=Fe.Kf[e]).yf,Fe.Pg(t),n.terminate();Fe.Kf=[]},Pg:function(e){if(e){if(e.threadInfoStruct){var t=Q[e.threadInfoStruct+104>>2];Q[e.threadInfoStruct+104>>2]=0,rr(t),rr(e.threadInfoStruct)}e.threadInfoStruct=0,e.Kg&&e.Rf&&rr(e.Rf),e.Rf=0,e.worker&&(e.worker.yf=null)}},Ag:function(e){delete Fe.Ef[e.yf.Lh],Fe.Gf.push(e),Fe.Kf.splice(Fe.Kf.indexOf(e),1),Fe.Pg(e.yf),e.yf=void 0},Ii:function(){},vi:function(t,r){t.onmessage=function(e){var n=e.data,i=n.cmd;if(t.yf&&(Fe.Mg=t.yf.threadInfoStruct),n.targetThread&&n.targetThread!=(0|xe)){var a=Fe.Ef[n.xj];a?a.worker.postMessage(e.data,n.transferList):console.error('Internal error! Worker sent a message "'+i+'" to target pthread '+n.targetThread+", but that thread no longer exists!")}else if("processQueuedMainThreadWork"===i)_r();else if("spawnThread"===i)Nn(e.data);else if("cleanupThread"===i)De(n.thread);else if("killThread"===i){if(e=n.thread,p)throw"Internal Error! killThread() can only ever be called from main application thread!";if(!e)throw"Internal Error! Null pthread_ptr in killThread!";Q[e+12>>2]=0,(e=Fe.Ef[e]).worker.terminate(),Fe.Pg(e),Fe.Kf.splice(Fe.Kf.indexOf(e.worker),1),e.worker.yf=void 0}else if("cancelThread"===i)Te(n.thread);else if("loaded"===i)t.loaded=!0,r&&r(t),t.og&&(t.og(),delete t.og);else if("print"===i)k("Thread "+n.threadId+": "+n.text);else if("printErr"===i)A("Thread "+n.threadId+": "+n.text);else if("alert"===i)alert("Thread "+n.threadId+": "+n.text);else if("exit"===i)t.yf&&Atomics.load(J,t.yf.Lh+68>>2)&&Fe.Ag(t);else if("exitProcess"===i){j=!1;try{$r(n.returnCode)}catch(e){if(e instanceof Qr)return;throw e}}else"cancelDone"===i?Fe.Ag(t):"objectTransfer"!==i&&("setimmediate"===e.data.target?t.postMessage(e.data):A("worker sent an unknown command "+i));Fe.Mg=void 0},t.onerror=function(e){A("pthread sent an error! "+e.filename+":"+e.lineno+": "+e.message)},d&&(t.on("message",(function(e){t.onmessage({data:e})})),t.on("error",(function(e){t.onerror(e)})),t.on("exit",(function(){}))),t.postMessage({cmd:"load",urlOrBlob:n.mainScriptUrlOrBlob||e,wasmMemory:M,wasmModule:T})},Vh:function(){var e=b("ffmpeg-core.worker.js");Fe.Gf.push(new Worker(e))},li:function(){return 0==Fe.Gf.length&&(Fe.Vh(),Fe.vi(Fe.Gf[0])),0<Fe.Gf.length?Fe.Gf.pop():null},Zi:function(e){for(e=performance.now()+e;performance.now()<e;);}};function Oe(e){return Q[ar()>>2]=e}function Ie(e,t){if(0===e)e=Date.now();else{if(1!==e&&4!==e)return Oe(28),-1;e=Ce()}return Q[t>>2]=e/1e3|0,Q[t+4>>2]=e%1e3*1e6|0,0}function Pe(e,t){if(p)return vn(1,1,e,t);ae.unshift({vh:e,Tf:t})}function Le(e,t){return e=new Date(1e3*Q[e>>2]),Q[t>>2]=e.getUTCSeconds(),Q[t+4>>2]=e.getUTCMinutes(),Q[t+8>>2]=e.getUTCHours(),Q[t+12>>2]=e.getUTCDate(),Q[t+16>>2]=e.getUTCMonth(),Q[t+20>>2]=e.getUTCFullYear()-1900,Q[t+24>>2]=e.getUTCDay(),Q[t+36>>2]=0,Q[t+32>>2]=0,Q[t+28>>2]=(e.getTime()-Date.UTC(e.getUTCFullYear(),0,1,0,0,0,0))/864e5|0,Le.ih||(Le.ih=z("GMT")),Q[t+40>>2]=Le.ih,t}function Re(){function e(e){return(e=e.toTimeString().match(/\(([A-Za-z ]+)\)$/))?e[1]:"GMT"}if(p)return vn(2,1);if(!Re.Yh){Re.Yh=!0;var t=(new Date).getFullYear(),n=new Date(t,0,1),r=new Date(t,6,1);t=n.getTimezoneOffset();var i=r.getTimezoneOffset(),a=Math.max(t,i);Q[mr()>>2]=60*a,Q[pr()>>2]=Number(t!=i),n=e(n),r=e(r),n=z(n),r=z(r),i<t?(Q[hr()>>2]=n,Q[hr()+4>>2]=r):(Q[hr()>>2]=r,Q[hr()+4>>2]=n)}}function Ne(e,t){Re(),e=new Date(1e3*Q[e>>2]),Q[t>>2]=e.getSeconds(),Q[t+4>>2]=e.getMinutes(),Q[t+8>>2]=e.getHours(),Q[t+12>>2]=e.getDate(),Q[t+16>>2]=e.getMonth(),Q[t+20>>2]=e.getFullYear()-1900,Q[t+24>>2]=e.getDay();var n=new Date(e.getFullYear(),0,1);Q[t+28>>2]=(e.getTime()-n.getTime())/864e5|0,Q[t+36>>2]=-60*e.getTimezoneOffset();var r=new Date(e.getFullYear(),6,1).getTimezoneOffset();return e=0|(r!=(n=n.getTimezoneOffset())&&e.getTimezoneOffset()==Math.min(n,r)),Q[t+32>>2]=e,e=Q[hr()+(e?4:0)>>2],Q[t+40>>2]=e,t}function Be(e,t){for(var n=0,r=e.length-1;0<=r;r--){var i=e[r];"."===i?e.splice(r,1):".."===i?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n;n--)e.unshift("..");return e}function Ue(e){var t="/"===e.charAt(0),n="/"===e.substr(-1);return(e=Be(e.split("/").filter((function(e){return!!e})),!t).join("/"))||t||(e="."),e&&n&&(e+="/"),(t?"/":"")+e}function ze(e){var t=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(e).slice(1);return e=t[0],t=t[1],e||t?(t&&(t=t.substr(0,t.length-1)),e+t):"."}function Ge(e){if("/"===e)return"/";var t=(e=(e=Ue(e)).replace(/\/$/,"")).lastIndexOf("/");return-1===t?e:e.substr(t+1)}function We(e,t){return Ue(e+"/"+t)}function qe(){if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues){var e=new Uint8Array(1);return function(){return crypto.getRandomValues(e),e[0]}}if(d)try{var t=require("crypto");return function(){return t.randomBytes(1)[0]}}catch(e){}return function(){he("randomDevice")}}function He(){for(var e="",t=!1,n=arguments.length-1;-1<=n&&!t;n--){if("string"!=typeof(t=0<=n?arguments[n]:Ke.cwd()))throw new TypeError("Arguments to path.resolve must be strings");if(!t)return"";e=t+"/"+e,t="/"===t.charAt(0)}return(t?"/":"")+(e=Be(e.split("/").filter((function(e){return!!e})),!t).join("/"))||"."}function Ye(e,t){function n(e){for(var t=0;t<e.length&&""===e[t];t++);for(var n=e.length-1;0<=n&&""===e[n];n--);return t>n?[]:e.slice(t,n-t+1)}e=He(e).substr(1),t=He(t).substr(1),e=n(e.split("/")),t=n(t.split("/"));for(var r=Math.min(e.length,t.length),i=r,a=0;a<r;a++)if(e[a]!==t[a]){i=a;break}for(r=[],a=i;a<e.length;a++)r.push("..");return(r=r.concat(t.slice(i))).join("/")}n.establishStackSpace=function(e){wr(e)},n.getNoExitRuntime=function(){return j},Ce=d?function(){var e=process.hrtime();return 1e3*e[0]+e[1]/1e6}:p?function(){return performance.now()-n.__performance_now_clock_drift}:"undefined"!=typeof dateNow?dateNow:function(){return performance.now()};var Xe=[];function Ve(e,t){Xe[e]={input:[],output:[],Yf:t},Ke.dh(e,Qe)}var Qe={open:function(e){var t=Xe[e.node.rdev];if(!t)throw new Ke.af(43);e.tty=t,e.seekable=!1},close:function(e){e.tty.Yf.flush(e.tty)},flush:function(e){e.tty.Yf.flush(e.tty)},read:function(e,t,n,r){if(!e.tty||!e.tty.Yf.xh)throw new Ke.af(60);for(var i=0,a=0;a<r;a++){try{var f=e.tty.Yf.xh(e.tty)}catch(e){throw new Ke.af(29)}if(void 0===f&&0===i)throw new Ke.af(6);if(null==f)break;i++,t[n+a]=f}return i&&(e.node.timestamp=Date.now()),i},write:function(e,t,n,r){if(!e.tty||!e.tty.Yf.Zg)throw new Ke.af(60);try{for(var i=0;i<r;i++)e.tty.Yf.Zg(e.tty,t[n+i])}catch(e){throw new Ke.af(29)}return r&&(e.node.timestamp=Date.now()),i}},Je={xh:function(e){if(!e.input.length){var t=null;if(d){var n=Buffer.Sf?Buffer.Sf(256):new Buffer(256),r=0;try{r=w.readSync(process.stdin.fd,n,0,256,null)}catch(e){if(-1==e.toString().indexOf("EOF"))throw e;r=0}t=0<r?n.slice(0,r).toString("utf-8"):null}else"undefined"!=typeof window&&"function"==typeof window.prompt?null!==(t=window.prompt("Input: "))&&(t+="\n"):"function"==typeof readline&&null!==(t=readline())&&(t+="\n");if(!t)return null;e.input=er(t,!0)}return e.input.shift()},Zg:function(e,t){null===t||10===t?(k(L(e.output,0)),e.output=[]):0!=t&&e.output.push(t)},flush:function(e){e.output&&0<e.output.length&&(k(L(e.output,0)),e.output=[])}},$e={Zg:function(e,t){null===t||10===t?(A(L(e.output,0)),e.output=[]):0!=t&&e.output.push(t)},flush:function(e){e.output&&0<e.output.length&&(A(L(e.output,0)),e.output=[])}},Ze={Df:null,jf:function(){return Ze.createNode(null,"/",16895,0)},createNode:function(e,t,n,r){if(Ke.si(n)||Ke.isFIFO(n))throw new Ke.af(63);return Ze.Df||(Ze.Df={dir:{node:{Af:Ze.cf.Af,nf:Ze.cf.nf,lookup:Ze.cf.lookup,Ff:Ze.cf.Ff,rename:Ze.cf.rename,unlink:Ze.cf.unlink,rmdir:Ze.cf.rmdir,readdir:Ze.cf.readdir,symlink:Ze.cf.symlink},stream:{tf:Ze.df.tf}},file:{node:{Af:Ze.cf.Af,nf:Ze.cf.nf},stream:{tf:Ze.df.tf,read:Ze.df.read,write:Ze.df.write,fg:Ze.df.fg,Wf:Ze.df.Wf,Xf:Ze.df.Xf}},link:{node:{Af:Ze.cf.Af,nf:Ze.cf.nf,readlink:Ze.cf.readlink},stream:{}},lh:{node:{Af:Ze.cf.Af,nf:Ze.cf.nf},stream:Ke.$h}}),n=Ke.createNode(e,t,n,r),Ke.kf(n.mode)?(n.cf=Ze.Df.dir.node,n.df=Ze.Df.dir.stream,n.bf={}):Ke.isFile(n.mode)?(n.cf=Ze.Df.file.node,n.df=Ze.Df.file.stream,n.gf=0,n.bf=null):Ke.Mf(n.mode)?(n.cf=Ze.Df.link.node,n.df=Ze.Df.link.stream):Ke.hg(n.mode)&&(n.cf=Ze.Df.lh.node,n.df=Ze.Df.lh.stream),n.timestamp=Date.now(),e&&(e.bf[t]=n),n},gj:function(e){if(e.bf&&e.bf.subarray){for(var t=[],n=0;n<e.gf;++n)t.push(e.bf[n]);return t}return e.bf},hj:function(e){return e.bf?e.bf.subarray?e.bf.subarray(0,e.gf):new Uint8Array(e.bf):new Uint8Array(0)},sh:function(e,t){var n=e.bf?e.bf.length:0;n>=t||(t=Math.max(t,n*(1048576>n?2:1.125)>>>0),0!=n&&(t=Math.max(t,256)),n=e.bf,e.bf=new Uint8Array(t),0<e.gf&&e.bf.set(n.subarray(0,e.gf),0))},Ji:function(e,t){if(e.gf!=t)if(0==t)e.bf=null,e.gf=0;else{if(!e.bf||e.bf.subarray){var n=e.bf;e.bf=new Uint8Array(t),n&&e.bf.set(n.subarray(0,Math.min(t,e.gf)))}else if(e.bf||(e.bf=[]),e.bf.length>t)e.bf.length=t;else for(;e.bf.length<t;)e.bf.push(0);e.gf=t}},cf:{Af:function(e){var t={};return t.dev=Ke.hg(e.mode)?e.id:1,t.ino=e.id,t.mode=e.mode,t.nlink=1,t.uid=0,t.gid=0,t.rdev=e.rdev,Ke.kf(e.mode)?t.size=4096:Ke.isFile(e.mode)?t.size=e.gf:Ke.Mf(e.mode)?t.size=e.link.length:t.size=0,t.atime=new Date(e.timestamp),t.mtime=new Date(e.timestamp),t.ctime=new Date(e.timestamp),t.Xh=4096,t.blocks=Math.ceil(t.size/t.Xh),t},nf:function(e,t){void 0!==t.mode&&(e.mode=t.mode),void 0!==t.timestamp&&(e.timestamp=t.timestamp),void 0!==t.size&&Ze.Ji(e,t.size)},lookup:function(){throw Ke.Qg[44]},Ff:function(e,t,n,r){return Ze.createNode(e,t,n,r)},rename:function(e,t,n){if(Ke.kf(e.mode)){try{var r=Ke.Bf(t,n)}catch(e){}if(r)for(var i in r.bf)throw new Ke.af(55)}delete e.parent.bf[e.name],e.name=n,t.bf[n]=e,e.parent=t},unlink:function(e,t){delete e.bf[t]},rmdir:function(e,t){var n,r=Ke.Bf(e,t);for(n in r.bf)throw new Ke.af(55);delete e.bf[t]},readdir:function(e){var t,n=[".",".."];for(t in e.bf)e.bf.hasOwnProperty(t)&&n.push(t);return n},symlink:function(e,t,n){return(e=Ze.createNode(e,t,41471,0)).link=n,e},readlink:function(e){if(!Ke.Mf(e.mode))throw new Ke.af(28);return e.link}},df:{read:function(e,t,n,r,i){var a=e.node.bf;if(i>=e.node.gf)return 0;if(8<(e=Math.min(e.node.gf-i,r))&&a.subarray)t.set(a.subarray(i,i+e),n);else for(r=0;r<e;r++)t[n+r]=a[i+r];return e},write:function(e,t,n,r,i,a){if(!r)return 0;if((e=e.node).timestamp=Date.now(),t.subarray&&(!e.bf||e.bf.subarray)){if(a)return e.bf=t.subarray(n,n+r),e.gf=r;if(0===e.gf&&0===i)return e.bf=t.slice(n,n+r),e.gf=r;if(i+r<=e.gf)return e.bf.set(t.subarray(n,n+r),i),r}if(Ze.sh(e,i+r),e.bf.subarray&&t.subarray)e.bf.set(t.subarray(n,n+r),i);else for(a=0;a<r;a++)e.bf[i+a]=t[n+a];return e.gf=Math.max(e.gf,i+r),r},tf:function(e,t,n){if(1===n?t+=e.position:2===n&&Ke.isFile(e.node.mode)&&(t+=e.node.gf),0>t)throw new Ke.af(28);return t},fg:function(e,t,n){Ze.sh(e.node,t+n),e.node.gf=Math.max(e.node.gf,t+n)},Wf:function(e,t,n,r,i,a){if(O(0===t),!Ke.isFile(e.node.mode))throw new Ke.af(43);if(e=e.node.bf,2&a||e.buffer!==q){for((0<r||r+n<e.length)&&(e=e.subarray?e.subarray(r,r+n):Array.prototype.slice.call(e,r,r+n)),r=!0,a=16384*Math.ceil(n/16384),t=ir(a);n<a;)H[t+n++]=0;if(!(n=t))throw new Ke.af(48);H.set(e,n)}else r=!1,n=e.byteOffset;return{Hi:n,Jg:r}},Xf:function(e,t,n,r,i){if(!Ke.isFile(e.node.mode))throw new Ke.af(43);return 2&i||Ze.df.write(e,t,0,r,n,!1),0}}},Ke={root:null,mg:[],ph:{},streams:[],Ai:1,Cf:null,oh:"/",Tg:!1,Bh:!0,mf:{},Mh:{Gh:{Rh:1,Sh:2}},af:null,Qg:{},ii:null,Cg:0,kj:function(e){if(!(e instanceof Ke.af)){e:{var t=Error();if(!t.stack){try{throw Error()}catch(e){t=e}if(!t.stack){t="(no stack trace available)";break e}}t=t.stack.toString()}throw n.extraStackTrace&&(t+="\n"+n.extraStackTrace()),e+" : "+Ae(t)}return Oe(e.ef)},ff:function(e,t){if(t=t||{},!(e=He(Ke.cwd(),e)))return{path:"",node:null};var n,r={Og:!0,ah:0};for(n in r)void 0===t[n]&&(t[n]=r[n]);if(8<t.ah)throw new Ke.af(32);e=Be(e.split("/").filter((function(e){return!!e})),!1);var i=Ke.root;for(r="/",n=0;n<e.length;n++){var a=n===e.length-1;if(a&&t.parent)break;if(i=Ke.Bf(i,e[n]),r=We(r,e[n]),Ke.Nf(i)&&(!a||a&&t.Og)&&(i=i.lg.root),!a||t.wf)for(a=0;Ke.Mf(i.mode);)if(i=Ke.readlink(r),r=He(ze(r),i),i=Ke.ff(r,{ah:t.ah}).node,40<a++)throw new Ke.af(32)}return{path:r,node:i}},If:function(e){for(var t;;){if(Ke.wg(e))return e=e.jf.Eh,t?"/"!==e[e.length-1]?e+"/"+t:e+t:e;t=t?e.name+"/"+t:e.name,e=e.parent}},Sg:function(e,t){for(var n=0,r=0;r<t.length;r++)n=(n<<5)-n+t.charCodeAt(r)|0;return(e+n>>>0)%Ke.Cf.length},zh:function(e){var t=Ke.Sg(e.parent.id,e.name);e.Pf=Ke.Cf[t],Ke.Cf[t]=e},Ah:function(e){var t=Ke.Sg(e.parent.id,e.name);if(Ke.Cf[t]===e)Ke.Cf[t]=e.Pf;else for(t=Ke.Cf[t];t;){if(t.Pf===e){t.Pf=e.Pf;break}t=t.Pf}},Bf:function(e,t){var n=Ke.yi(e);if(n)throw new Ke.af(n,e);for(n=Ke.Cf[Ke.Sg(e.id,t)];n;n=n.Pf){var r=n.name;if(n.parent.id===e.id&&r===t)return n}return Ke.lookup(e,t)},createNode:function(e,t,n,r){return e=new Ke.Oh(e,t,n,r),Ke.zh(e),e},Ng:function(e){Ke.Ah(e)},wg:function(e){return e===e.parent},Nf:function(e){return!!e.lg},isFile:function(e){return 32768==(61440&e)},kf:function(e){return 16384==(61440&e)},Mf:function(e){return 40960==(61440&e)},hg:function(e){return 8192==(61440&e)},si:function(e){return 24576==(61440&e)},isFIFO:function(e){return 4096==(61440&e)},isSocket:function(e){return 49152==(49152&e)},ji:{r:0,rs:1052672,"r+":2,w:577,wx:705,xw:705,"w+":578,"wx+":706,"xw+":706,a:1089,ax:1217,xa:1217,"a+":1090,"ax+":1218,"xa+":1218},Dh:function(e){var t=Ke.ji[e];if(void 0===t)throw Error("Unknown file open mode: "+e);return t},th:function(e){var t=["r","w","rw"][3&e];return 512&e&&(t+="w"),t},Jf:function(e,t){return Ke.Bh||(-1===t.indexOf("r")||292&e.mode)&&(-1===t.indexOf("w")||146&e.mode)&&(-1===t.indexOf("x")||73&e.mode)?0:2},yi:function(e){return Ke.Jf(e,"x")||(e.cf.lookup?0:2)},Yg:function(e,t){try{return Ke.Bf(e,t),20}catch(e){}return Ke.Jf(e,"wx")},xg:function(e,t,n){try{var r=Ke.Bf(e,t)}catch(e){return e.ef}if(e=Ke.Jf(e,"wx"))return e;if(n){if(!Ke.kf(r.mode))return 54;if(Ke.wg(r)||Ke.If(r)===Ke.cwd())return 10}else if(Ke.kf(r.mode))return 31;return 0},zi:function(e,t){return e?Ke.Mf(e.mode)?32:Ke.kf(e.mode)&&("r"!==Ke.th(t)||512&t)?31:Ke.Jf(e,Ke.th(t)):44},Qh:4096,Bi:function(e,t){for(t=t||Ke.Qh,e=e||0;e<=t;e++)if(!Ke.streams[e])return e;throw new Ke.af(33)},zf:function(e){return Ke.streams[e]},nh:function(e,t,n){Ke.Hg||(Ke.Hg=function(){},Ke.Hg.prototype={object:{get:function(){return this.node},set:function(e){this.node=e}}});var r,i=new Ke.Hg;for(r in e)i[r]=e[r];return e=i,t=Ke.Bi(t,n),e.fd=t,Ke.streams[t]=e},ai:function(e){Ke.streams[e]=null},$h:{open:function(e){e.df=Ke.ki(e.node.rdev).df,e.df.open&&e.df.open(e)},tf:function(){throw new Ke.af(70)}},Wg:function(e){return e>>8},oj:function(e){return 255&e},Of:function(e,t){return e<<8|t},dh:function(e,t){Ke.ph[e]={df:t}},ki:function(e){return Ke.ph[e]},wh:function(e){var t=[];for(e=[e];e.length;){var n=e.pop();t.push(n),e.push.apply(e,n.mg)}return t},Kh:function(e,t){function n(e){return Ke.Cg--,t(e)}function r(e){if(e){if(!r.gi)return r.gi=!0,n(e)}else++a>=i.length&&n(null)}"function"==typeof e&&(t=e,e=!1),Ke.Cg++,1<Ke.Cg&&A("warning: "+Ke.Cg+" FS.syncfs operations in flight at once, probably just doing extra work");var i=Ke.wh(Ke.root.jf),a=0;i.forEach((function(t){if(!t.type.Kh)return r(null);t.type.Kh(t,e,r)}))},jf:function(e,t,n){var r="/"===n,i=!n;if(r&&Ke.root)throw new Ke.af(10);if(!r&&!i){var a=Ke.ff(n,{Og:!1});if(n=a.path,a=a.node,Ke.Nf(a))throw new Ke.af(10);if(!Ke.kf(a.mode))throw new Ke.af(54)}return t={type:e,tj:t,Eh:n,mg:[]},(e=e.jf(t)).jf=t,t.root=e,r?Ke.root=e:a&&(a.lg=t,a.jf&&a.jf.mg.push(t)),e},zj:function(e){if(e=Ke.ff(e,{Og:!1}),!Ke.Nf(e.node))throw new Ke.af(28);var t=(e=e.node).lg,n=Ke.wh(t);Object.keys(Ke.Cf).forEach((function(e){for(e=Ke.Cf[e];e;){var t=e.Pf;-1!==n.indexOf(e.jf)&&Ke.Ng(e),e=t}})),e.lg=null,e.jf.mg.splice(e.jf.mg.indexOf(t),1)},lookup:function(e,t){return e.cf.lookup(e,t)},Ff:function(e,t,n){var r=Ke.ff(e,{parent:!0}).node;if(!(e=Ge(e))||"."===e||".."===e)throw new Ke.af(28);var i=Ke.Yg(r,e);if(i)throw new Ke.af(i);if(!r.cf.Ff)throw new Ke.af(63);return r.cf.Ff(r,e,t,n)},create:function(e,t){return Ke.Ff(e,4095&(void 0!==t?t:438)|32768,0)},mkdir:function(e,t){return Ke.Ff(e,1023&(void 0!==t?t:511)|16384,0)},qj:function(e,t){e=e.split("/");for(var n="",r=0;r<e.length;++r)if(e[r]){n+="/"+e[r];try{Ke.mkdir(n,t)}catch(e){if(20!=e.ef)throw e}}},yg:function(e,t,n){return void 0===n&&(n=t,t=438),Ke.Ff(e,8192|t,n)},symlink:function(e,t){if(!He(e))throw new Ke.af(44);var n=Ke.ff(t,{parent:!0}).node;if(!n)throw new Ke.af(44);t=Ge(t);var r=Ke.Yg(n,t);if(r)throw new Ke.af(r);if(!n.cf.symlink)throw new Ke.af(63);return n.cf.symlink(n,t,e)},rename:function(e,t){var n=ze(e),r=ze(t),i=Ge(e),a=Ge(t),f=Ke.ff(e,{parent:!0}),o=f.node;if(f=(f=Ke.ff(t,{parent:!0})).node,!o||!f)throw new Ke.af(44);if(o.jf!==f.jf)throw new Ke.af(75);var u=Ke.Bf(o,i);if("."!==(r=Ye(e,r)).charAt(0))throw new Ke.af(28);if("."!==(r=Ye(t,n)).charAt(0))throw new Ke.af(55);try{var c=Ke.Bf(f,a)}catch(e){}if(u!==c){if(n=Ke.kf(u.mode),i=Ke.xg(o,i,n))throw new Ke.af(i);if(i=c?Ke.xg(f,a,n):Ke.Yg(f,a))throw new Ke.af(i);if(!o.cf.rename)throw new Ke.af(63);if(Ke.Nf(u)||c&&Ke.Nf(c))throw new Ke.af(10);if(f!==o&&(i=Ke.Jf(o,"w")))throw new Ke.af(i);try{Ke.mf.willMovePath&&Ke.mf.willMovePath(e,t)}catch(n){A("FS.trackingDelegate['willMovePath']('"+e+"', '"+t+"') threw an exception: "+n.message)}Ke.Ah(u);try{o.cf.rename(u,f,a)}catch(e){throw e}finally{Ke.zh(u)}try{Ke.mf.onMovePath&&Ke.mf.onMovePath(e,t)}catch(n){A("FS.trackingDelegate['onMovePath']('"+e+"', '"+t+"') threw an exception: "+n.message)}}},rmdir:function(e){var t=Ke.ff(e,{parent:!0}).node,n=Ge(e),r=Ke.Bf(t,n),i=Ke.xg(t,n,!0);if(i)throw new Ke.af(i);if(!t.cf.rmdir)throw new Ke.af(63);if(Ke.Nf(r))throw new Ke.af(10);try{Ke.mf.willDeletePath&&Ke.mf.willDeletePath(e)}catch(t){A("FS.trackingDelegate['willDeletePath']('"+e+"') threw an exception: "+t.message)}t.cf.rmdir(t,n),Ke.Ng(r);try{Ke.mf.onDeletePath&&Ke.mf.onDeletePath(e)}catch(t){A("FS.trackingDelegate['onDeletePath']('"+e+"') threw an exception: "+t.message)}},readdir:function(e){if(!(e=Ke.ff(e,{wf:!0}).node).cf.readdir)throw new Ke.af(54);return e.cf.readdir(e)},unlink:function(e){var t=Ke.ff(e,{parent:!0}).node,n=Ge(e),r=Ke.Bf(t,n),i=Ke.xg(t,n,!1);if(i)throw new Ke.af(i);if(!t.cf.unlink)throw new Ke.af(63);if(Ke.Nf(r))throw new Ke.af(10);try{Ke.mf.willDeletePath&&Ke.mf.willDeletePath(e)}catch(t){A("FS.trackingDelegate['willDeletePath']('"+e+"') threw an exception: "+t.message)}t.cf.unlink(t,n),Ke.Ng(r);try{Ke.mf.onDeletePath&&Ke.mf.onDeletePath(e)}catch(t){A("FS.trackingDelegate['onDeletePath']('"+e+"') threw an exception: "+t.message)}},readlink:function(e){if(!(e=Ke.ff(e).node))throw new Ke.af(44);if(!e.cf.readlink)throw new Ke.af(28);return He(Ke.If(e.parent),e.cf.readlink(e))},stat:function(e,t){if(!(e=Ke.ff(e,{wf:!t}).node))throw new Ke.af(44);if(!e.cf.Af)throw new Ke.af(63);return e.cf.Af(e)},lstat:function(e){return Ke.stat(e,!0)},chmod:function(e,t,n){var r;if(!(r="string"==typeof e?Ke.ff(e,{wf:!n}).node:e).cf.nf)throw new Ke.af(63);r.cf.nf(r,{mode:4095&t|-4096&r.mode,timestamp:Date.now()})},lchmod:function(e,t){Ke.chmod(e,t,!0)},fchmod:function(e,t){if(!(e=Ke.zf(e)))throw new Ke.af(8);Ke.chmod(e.node,t)},chown:function(e,t,n,r){var i;if(!(i="string"==typeof e?Ke.ff(e,{wf:!r}).node:e).cf.nf)throw new Ke.af(63);i.cf.nf(i,{timestamp:Date.now()})},lchown:function(e,t,n){Ke.chown(e,t,n,!0)},fchown:function(e,t,n){if(!(e=Ke.zf(e)))throw new Ke.af(8);Ke.chown(e.node,t,n)},truncate:function(e,t){if(0>t)throw new Ke.af(28);var n;if(!(n="string"==typeof e?Ke.ff(e,{wf:!0}).node:e).cf.nf)throw new Ke.af(63);if(Ke.kf(n.mode))throw new Ke.af(31);if(!Ke.isFile(n.mode))throw new Ke.af(28);if(e=Ke.Jf(n,"w"))throw new Ke.af(e);n.cf.nf(n,{size:t,timestamp:Date.now()})},fj:function(e,t){if(!(e=Ke.zf(e)))throw new Ke.af(8);if(0==(2097155&e.flags))throw new Ke.af(28);Ke.truncate(e.node,t)},Aj:function(e,t,n){(e=Ke.ff(e,{wf:!0}).node).cf.nf(e,{timestamp:Math.max(t,n)})},open:function(e,t,r,i,a){if(""===e)throw new Ke.af(44);if(r=64&(t="string"==typeof t?Ke.Dh(t):t)?4095&(void 0===r?438:r)|32768:0,"object"==typeof e)var f=e;else{e=Ue(e);try{f=Ke.ff(e,{wf:!(131072&t)}).node}catch(e){}}var o=!1;if(64&t)if(f){if(128&t)throw new Ke.af(20)}else f=Ke.Ff(e,r,0),o=!0;if(!f)throw new Ke.af(44);if(Ke.hg(f.mode)&&(t&=-513),65536&t&&!Ke.kf(f.mode))throw new Ke.af(54);if(!o&&(r=Ke.zi(f,t)))throw new Ke.af(r);512&t&&Ke.truncate(f,0),t&=-131713,(i=Ke.nh({node:f,path:Ke.If(f),flags:t,seekable:!0,position:0,df:f.df,Wi:[],error:!1},i,a)).df.open&&i.df.open(i),!n.logReadFiles||1&t||(Ke.$g||(Ke.$g={}),e in Ke.$g||(Ke.$g[e]=1,A("FS.trackingDelegate error on read file: "+e)));try{Ke.mf.onOpenFile&&(a=0,1!=(2097155&t)&&(a|=Ke.Mh.Gh.Rh),0!=(2097155&t)&&(a|=Ke.Mh.Gh.Sh),Ke.mf.onOpenFile(e,a))}catch(t){A("FS.trackingDelegate['onOpenFile']('"+e+"', flags) threw an exception: "+t.message)}return i},close:function(e){if(Ke.ig(e))throw new Ke.af(8);e.Lf&&(e.Lf=null);try{e.df.close&&e.df.close(e)}catch(e){throw e}finally{Ke.ai(e.fd)}e.fd=null},ig:function(e){return null===e.fd},tf:function(e,t,n){if(Ke.ig(e))throw new Ke.af(8);if(!e.seekable||!e.df.tf)throw new Ke.af(70);if(0!=n&&1!=n&&2!=n)throw new Ke.af(28);return e.position=e.df.tf(e,t,n),e.Wi=[],e.position},read:function(e,t,n,r,i){if(0>r||0>i)throw new Ke.af(28);if(Ke.ig(e))throw new Ke.af(8);if(1==(2097155&e.flags))throw new Ke.af(8);if(Ke.kf(e.node.mode))throw new Ke.af(31);if(!e.df.read)throw new Ke.af(28);var a=void 0!==i;if(a){if(!e.seekable)throw new Ke.af(70)}else i=e.position;return t=e.df.read(e,t,n,r,i),a||(e.position+=t),t},write:function(e,t,n,r,i,a){if(0>r||0>i)throw new Ke.af(28);if(Ke.ig(e))throw new Ke.af(8);if(0==(2097155&e.flags))throw new Ke.af(8);if(Ke.kf(e.node.mode))throw new Ke.af(31);if(!e.df.write)throw new Ke.af(28);e.seekable&&1024&e.flags&&Ke.tf(e,0,2);var f=void 0!==i;if(f){if(!e.seekable)throw new Ke.af(70)}else i=e.position;t=e.df.write(e,t,n,r,i,a),f||(e.position+=t);try{e.path&&Ke.mf.onWriteToFile&&Ke.mf.onWriteToFile(e.path)}catch(t){A("FS.trackingDelegate['onWriteToFile']('"+e.path+"') threw an exception: "+t.message)}return t},fg:function(e,t,n){if(Ke.ig(e))throw new Ke.af(8);if(0>t||0>=n)throw new Ke.af(28);if(0==(2097155&e.flags))throw new Ke.af(8);if(!Ke.isFile(e.node.mode)&&!Ke.kf(e.node.mode))throw new Ke.af(43);if(!e.df.fg)throw new Ke.af(138);e.df.fg(e,t,n)},Wf:function(e,t,n,r,i,a){if(0!=(2&i)&&0==(2&a)&&2!=(2097155&e.flags))throw new Ke.af(2);if(1==(2097155&e.flags))throw new Ke.af(2);if(!e.df.Wf)throw new Ke.af(43);return e.df.Wf(e,t,n,r,i,a)},Xf:function(e,t,n,r,i){return e&&e.df.Xf?e.df.Xf(e,t,n,r,i):0},sj:function(){return 0},Uf:function(e,t,n){if(!e.df.Uf)throw new Ke.af(59);return e.df.Uf(e,t,n)},readFile:function(e,t){if((t=t||{}).flags=t.flags||"r",t.encoding=t.encoding||"binary","utf8"!==t.encoding&&"binary"!==t.encoding)throw Error('Invalid encoding type "'+t.encoding+'"');var n,r=Ke.open(e,t.flags);e=Ke.stat(e).size;var i=new Uint8Array(e);return Ke.read(r,i,0,e,0),"utf8"===t.encoding?n=L(i,0):"binary"===t.encoding&&(n=i),Ke.close(r),n},writeFile:function(e,t,n){if((n=n||{}).flags=n.flags||"w",e=Ke.open(e,n.flags,n.mode),"string"==typeof t){var r=new Uint8Array(U(t)+1);t=N(t,r,0,r.length),Ke.write(e,r,0,t,void 0,n.Zh)}else{if(!ArrayBuffer.isView(t))throw Error("Unsupported data type");Ke.write(e,t,0,t.byteLength,void 0,n.Zh)}Ke.close(e)},cwd:function(){return Ke.oh},chdir:function(e){if(null===(e=Ke.ff(e,{wf:!0})).node)throw new Ke.af(44);if(!Ke.kf(e.node.mode))throw new Ke.af(54);var t=Ke.Jf(e.node,"x");if(t)throw new Ke.af(t);Ke.oh=e.path},ci:function(){Ke.mkdir("/tmp"),Ke.mkdir("/home"),Ke.mkdir("/home/web_user")},bi:function(){Ke.mkdir("/dev"),Ke.dh(Ke.Of(1,3),{read:function(){return 0},write:function(e,t,n,r){return r}}),Ke.yg("/dev/null",Ke.Of(1,3)),Ve(Ke.Of(5,0),Je),Ve(Ke.Of(6,0),$e),Ke.yg("/dev/tty",Ke.Of(5,0)),Ke.yg("/dev/tty1",Ke.Of(6,0));var e=qe();Ke.Hf("/dev","random",e),Ke.Hf("/dev","urandom",e),Ke.mkdir("/dev/shm"),Ke.mkdir("/dev/shm/tmp")},ei:function(){Ke.mkdir("/proc"),Ke.mkdir("/proc/self"),Ke.mkdir("/proc/self/fd"),Ke.jf({jf:function(){var e=Ke.createNode("/proc/self","fd",16895,73);return e.cf={lookup:function(e,t){var n=Ke.zf(+t);if(!n)throw new Ke.af(8);return(e={parent:null,jf:{Eh:"fake"},cf:{readlink:function(){return n.path}}}).parent=e}},e}},{},"/proc/self/fd")},fi:function(){n.stdin?Ke.Hf("/dev","stdin",n.stdin):Ke.symlink("/dev/tty","/dev/stdin"),n.stdout?Ke.Hf("/dev","stdout",null,n.stdout):Ke.symlink("/dev/tty","/dev/stdout"),n.stderr?Ke.Hf("/dev","stderr",null,n.stderr):Ke.symlink("/dev/tty1","/dev/stderr"),Ke.open("/dev/stdin","r"),Ke.open("/dev/stdout","w"),Ke.open("/dev/stderr","w")},rh:function(){Ke.af||(Ke.af=function(e,t){this.node=t,this.Ki=function(e){this.ef=e},this.Ki(e),this.message="FS error"},Ke.af.prototype=Error(),Ke.af.prototype.constructor=Ke.af,[44].forEach((function(e){Ke.Qg[e]=new Ke.af(e),Ke.Qg[e].stack="<generic error, no stack>"})))},Ni:function(){Ke.rh(),Ke.Cf=Array(4096),Ke.jf(Ze,{},"/"),Ke.ci(),Ke.bi(),Ke.ei(),Ke.ii={MEMFS:Ze}},gg:function(e,t,r){Ke.gg.Tg=!0,Ke.rh(),n.stdin=e||n.stdin,n.stdout=t||n.stdout,n.stderr=r||n.stderr,Ke.fi()},quit:function(){Ke.gg.Tg=!1;var e=n._fflush;for(e&&e(0),e=0;e<Ke.streams.length;e++){var t=Ke.streams[e];t&&Ke.close(t)}},Rg:function(e,t){var n=0;return e&&(n|=365),t&&(n|=146),n},ej:function(e,t){return(e=Ke.Lg(e,t)).exists?e.object:(Oe(e.error),null)},Lg:function(e,t){try{var n=Ke.ff(e,{wf:!t});e=n.path}catch(e){}var r={wg:!1,exists:!1,error:0,name:null,path:null,object:null,Ci:!1,Ei:null,Di:null};try{n=Ke.ff(e,{parent:!0}),r.Ci=!0,r.Ei=n.path,r.Di=n.node,r.name=Ge(e),n=Ke.ff(e,{wf:!t}),r.exists=!0,r.path=n.path,r.object=n.node,r.name=n.node.name,r.wg="/"===n.path}catch(e){r.error=e.ef}return r},cj:function(e,t){for(e="string"==typeof e?e:Ke.If(e),t=t.split("/").reverse();t.length;){var n=t.pop();if(n){var r=We(e,n);try{Ke.mkdir(r)}catch(e){}e=r}}return r},di:function(e,t,n,r,i){return e=We("string"==typeof e?e:Ke.If(e),t),Ke.create(e,Ke.Rg(r,i))},mh:function(e,t,n,r,i,a){if(e=t?We("string"==typeof e?e:Ke.If(e),t):e,r=Ke.Rg(r,i),i=Ke.create(e,r),n){if("string"==typeof n){e=Array(n.length),t=0;for(var f=n.length;t<f;++t)e[t]=n.charCodeAt(t);n=e}Ke.chmod(i,146|r),e=Ke.open(i,"w"),Ke.write(e,n,0,n.length,0,a),Ke.close(e),Ke.chmod(i,r)}return i},Hf:function(e,t,n,r){e=We("string"==typeof e?e:Ke.If(e),t),t=Ke.Rg(!!n,!!r),Ke.Hf.Wg||(Ke.Hf.Wg=64);var i=Ke.Of(Ke.Hf.Wg++,0);return Ke.dh(i,{open:function(e){e.seekable=!1},close:function(){r&&r.buffer&&r.buffer.length&&r(10)},read:function(e,t,r,i){for(var a=0,f=0;f<i;f++){try{var o=n()}catch(e){throw new Ke.af(29)}if(void 0===o&&0===a)throw new Ke.af(6);if(null==o)break;a++,t[r+f]=o}return a&&(e.node.timestamp=Date.now()),a},write:function(e,t,n,i){for(var a=0;a<i;a++)try{r(t[n+a])}catch(e){throw new Ke.af(29)}return i&&(e.node.timestamp=Date.now()),a}}),Ke.yg(e,t,i)},uh:function(e){if(e.Ug||e.ti||e.link||e.bf)return!0;var t=!0;if("undefined"!=typeof XMLHttpRequest)throw Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");if(!m)throw Error("Cannot load without read() or XMLHttpRequest.");try{e.bf=er(m(e.url),!0),e.gf=e.bf.length}catch(e){t=!1}return t||Oe(29),t},bj:function(e,t,n,r,i){function a(){this.Vg=!1,this.Sf=[]}if(a.prototype.get=function(e){if(!(e>this.length-1||0>e)){var t=e%this.chunkSize;return this.yh(e/this.chunkSize|0)[t]}},a.prototype.Wh=function(e){this.yh=e},a.prototype.kh=function(){var e=new XMLHttpRequest;if(e.open("HEAD",n,!1),e.send(null),!(200<=e.status&&300>e.status||304===e.status))throw Error("Couldn't load "+n+". Status: "+e.status);var t,r=Number(e.getResponseHeader("Content-length")),i=(t=e.getResponseHeader("Accept-Ranges"))&&"bytes"===t;e=(t=e.getResponseHeader("Content-Encoding"))&&"gzip"===t;var a=1048576;i||(a=r);var f=this;f.Wh((function(e){var t=e*a,i=(e+1)*a-1;if(i=Math.min(i,r-1),void 0===f.Sf[e]){var o=f.Sf;if(t>i)throw Error("invalid range ("+t+", "+i+") or no bytes requested!");if(i>r-1)throw Error("only "+r+" bytes available! programmer error!");var u=new XMLHttpRequest;if(u.open("GET",n,!1),r!==a&&u.setRequestHeader("Range","bytes="+t+"-"+i),"undefined"!=typeof Uint8Array&&(u.responseType="arraybuffer"),u.overrideMimeType&&u.overrideMimeType("text/plain; charset=x-user-defined"),u.send(null),!(200<=u.status&&300>u.status||304===u.status))throw Error("Couldn't load "+n+". Status: "+u.status);t=void 0!==u.response?new Uint8Array(u.response||[]):er(u.responseText||"",!0),o[e]=t}if(void 0===f.Sf[e])throw Error("doXHR failed!");return f.Sf[e]})),!e&&r||(a=r=1,a=r=this.yh(0).length,k("LazyFiles on gzip forces download of the whole file when length is accessed")),this.Uh=r,this.Th=a,this.Vg=!0},"undefined"!=typeof XMLHttpRequest){if(!l)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var f=new a;Object.defineProperties(f,{length:{get:function(){return this.Vg||this.kh(),this.Uh}},chunkSize:{get:function(){return this.Vg||this.kh(),this.Th}}}),f={Ug:!1,bf:f}}else f={Ug:!1,url:n};var o=Ke.di(e,t,f,r,i);f.bf?o.bf=f.bf:f.url&&(o.bf=null,o.url=f.url),Object.defineProperties(o,{gf:{get:function(){return this.bf.length}}});var u={};return Object.keys(o.df).forEach((function(e){var t=o.df[e];u[e]=function(){if(!Ke.uh(o))throw new Ke.af(29);return t.apply(null,arguments)}})),u.read=function(e,t,n,r,i){if(!Ke.uh(o))throw new Ke.af(29);if(i>=(e=e.node.bf).length)return 0;if(r=Math.min(e.length-i,r),e.slice)for(var a=0;a<r;a++)t[n+a]=e[i+a];else for(a=0;a<r;a++)t[n+a]=e.get(i+a);return r},o.df=u,o},dj:function(e,t,r,i,a,f,o,u,c,s){function l(r){function l(n){s&&s(),u||Ke.mh(e,t,n,i,a,c),f&&f(),de()}var h=!1;n.preloadPlugins.forEach((function(e){!h&&e.canHandle(d)&&(e.handle(r,d,l,(function(){o&&o(),de()})),h=!0)})),h||l(r)}Vn.gg();var d=t?He(We(e,t)):e;le(),"string"==typeof r?Vn.Xi(r,(function(e){l(e)}),o):l(r)},indexedDB:function(){return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB},gh:function(){return"EM_FS_"+window.location.pathname},hh:20,eg:"FILE_DATA",wj:function(e,t,n){t=t||function(){},n=n||function(){};var r=Ke.indexedDB();try{var i=r.open(Ke.gh(),Ke.hh)}catch(e){return n(e)}i.onupgradeneeded=function(){k("creating db"),i.result.createObjectStore(Ke.eg)},i.onsuccess=function(){var r=i.result.transaction([Ke.eg],"readwrite"),a=r.objectStore(Ke.eg),f=0,o=0,u=e.length;e.forEach((function(e){(e=a.put(Ke.Lg(e).object.bf,e)).onsuccess=function(){++f+o==u&&(0==o?t():n())},e.onerror=function(){o++,f+o==u&&(0==o?t():n())}})),r.onerror=n},i.onerror=n},mj:function(e,t,n){t=t||function(){},n=n||function(){};var r=Ke.indexedDB();try{var i=r.open(Ke.gh(),Ke.hh)}catch(e){return n(e)}i.onupgradeneeded=n,i.onsuccess=function(){var r=i.result;try{var a=r.transaction([Ke.eg],"readonly")}catch(e){return void n(e)}var f=a.objectStore(Ke.eg),o=0,u=0,c=e.length;e.forEach((function(e){var r=f.get(e);r.onsuccess=function(){Ke.Lg(e).exists&&Ke.unlink(e),Ke.mh(ze(e),Ge(e),r.result,!0,!0,!0),++o+u==c&&(0==u?t():n())},r.onerror=function(){u++,o+u==c&&(0==u?t():n())}})),a.onerror=n},i.onerror=n}},et={};function tt(e,t,n){try{var r=e(t)}catch(e){if(e&&e.node&&Ue(t)!==Ue(Ke.If(e.node)))return-54;throw e}return Q[n>>2]=r.dev,Q[n+4>>2]=0,Q[n+8>>2]=r.ino,Q[n+12>>2]=r.mode,Q[n+16>>2]=r.nlink,Q[n+20>>2]=r.uid,Q[n+24>>2]=r.gid,Q[n+28>>2]=r.rdev,Q[n+32>>2]=0,be=[r.size>>>0,(ve=r.size,1<=+Math.abs(ve)?0<ve?(0|Math.min(+Math.floor(ve/4294967296),4294967295))>>>0:~~+Math.ceil((ve-+(~~ve>>>0))/4294967296)>>>0:0)],Q[n+40>>2]=be[0],Q[n+44>>2]=be[1],Q[n+48>>2]=4096,Q[n+52>>2]=r.blocks,Q[n+56>>2]=r.atime.getTime()/1e3|0,Q[n+60>>2]=0,Q[n+64>>2]=r.mtime.getTime()/1e3|0,Q[n+68>>2]=0,Q[n+72>>2]=r.ctime.getTime()/1e3|0,Q[n+76>>2]=0,be=[r.ino>>>0,(ve=r.ino,1<=+Math.abs(ve)?0<ve?(0|Math.min(+Math.floor(ve/4294967296),4294967295))>>>0:~~+Math.ceil((ve-+(~~ve>>>0))/4294967296)>>>0:0)],Q[n+80>>2]=be[0],Q[n+84>>2]=be[1],0}var nt=void 0;function rt(){return Q[(nt+=4)-4>>2]}function it(e){if(!(e=Ke.zf(e)))throw new Ke.af(8);return e}function at(e,t,n,r,i){if(p)return vn(3,1,e,t,n,r,i);try{i=0;for(var a=t?Q[t>>2]:0,f=t?Q[t+4>>2]:0,o=n?Q[n>>2]:0,u=n?Q[n+4>>2]:0,c=r?Q[r>>2]:0,s=r?Q[r+4>>2]:0,l=0,d=0,h=0,m=0,g=0,w=0,y=(t?Q[t>>2]:0)|(n?Q[n>>2]:0)|(r?Q[r>>2]:0),v=(t?Q[t+4>>2]:0)|(n?Q[n+4>>2]:0)|(r?Q[r+4>>2]:0),b=0;b<e;b++){var _=1<<b%32;if(32>b?y&_:v&_){var k=Ke.zf(b);if(!k)throw new Ke.af(8);var A=5;k.df.Zf&&(A=k.df.Zf(k)),1&A&&(32>b?a&_:f&_)&&(32>b?l|=_:d|=_,i++),4&A&&(32>b?o&_:u&_)&&(32>b?h|=_:m|=_,i++),2&A&&(32>b?c&_:s&_)&&(32>b?g|=_:w|=_,i++)}}return t&&(Q[t>>2]=l,Q[t+4>>2]=d),n&&(Q[n>>2]=h,Q[n+4>>2]=m),r&&(Q[r>>2]=g,Q[r+4>>2]=w),i}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function ft(e,t){if(p)return vn(4,1,e,t);try{var n;if(e=R(e),-8&t)var r=-28;else(n=Ke.ff(e,{wf:!0}).node)?(e="",4&t&&(e+="r"),2&t&&(e+="w"),1&t&&(e+="x"),r=e&&Ke.Jf(n,e)?-2:0):r=-44;return r}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function ot(e,t,n){if(p)return vn(5,1,e,t,n);nt=n;try{var r=it(e);switch(t){case 0:var i=rt();return 0>i?-28:Ke.open(r.path,r.flags,0,i).fd;case 1:case 2:case 13:case 14:return 0;case 3:return r.flags;case 4:return i=rt(),r.flags|=i,0;case 12:return i=rt(),X[i+0>>1]=2,0;case 16:case 8:default:return-28;case 9:return Oe(28),-1}}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function ut(e,t){if(p)return vn(6,1,e,t);try{var n=it(e);return tt(Ke.stat,n.path,t)}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function ct(e,t,n){if(p)return vn(7,1,e,t,n);try{var r=it(e);r.Lf||(r.Lf=Ke.readdir(r.path)),e=0;for(var i=Ke.tf(r,0,1),a=Math.floor(i/280);a<r.Lf.length&&e+280<=n;){var f=r.Lf[a];if("."===f[0])var o=1,u=4;else{var c=Ke.Bf(r.node,f);o=c.id,u=Ke.hg(c.mode)?2:Ke.kf(c.mode)?4:Ke.Mf(c.mode)?10:8}be=[o>>>0,(ve=o,1<=+Math.abs(ve)?0<ve?(0|Math.min(+Math.floor(ve/4294967296),4294967295))>>>0:~~+Math.ceil((ve-+(~~ve>>>0))/4294967296)>>>0:0)],Q[t+e>>2]=be[0],Q[t+e+4>>2]=be[1],be=[280*(a+1)>>>0,(ve=280*(a+1),1<=+Math.abs(ve)?0<ve?(0|Math.min(+Math.floor(ve/4294967296),4294967295))>>>0:~~+Math.ceil((ve-+(~~ve>>>0))/4294967296)>>>0:0)],Q[t+e+8>>2]=be[0],Q[t+e+12>>2]=be[1],X[t+e+16>>1]=280,H[t+e+18>>0]=u,B(f,t+e+19,256),e+=280,a+=1}return Ke.tf(r,280*a,0),e}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function st(e,t){if(p)return vn(8,1,e,t);try{return dr(t,0,136),Q[t>>2]=1,Q[t+4>>2]=2,Q[t+8>>2]=3,Q[t+12>>2]=4,0}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function lt(e,t,n){if(p)return vn(9,1,e,t,n);nt=n;try{var r=it(e);switch(t){case 21509:case 21505:case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:case 21523:case 21524:return r.tty?0:-59;case 21519:if(!r.tty)return-59;var i=rt();return Q[i>>2]=0;case 21520:return r.tty?-28:-59;case 21531:return i=rt(),Ke.Uf(r,t,i);default:he("bad ioctl syscall "+t)}}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function dt(e,t){if(p)return vn(10,1,e,t);try{return e=R(e),tt(Ke.lstat,e,t)}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function ht(e,t){if(p)return vn(11,1,e,t);try{return"/"===(e=Ue(e=R(e)))[e.length-1]&&(e=e.substr(0,e.length-1)),Ke.mkdir(e,t,0),0}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function pt(e,t,n,r,i,a){if(p)return vn(12,1,e,t,n,r,i,a);try{e:{a<<=12;var f=!1;if(0!=(16&r)&&0!=e%16384)var o=-28;else{if(0!=(32&r)){var u=fr(16384,t);if(!u){o=-48;break e}dr(u,0,t),f=!0}else{var c=Ke.zf(i);if(!c){o=-8;break e}var s=Ke.Wf(c,e,t,a,n,r);u=s.Hi,f=s.Jg}et[u]={xi:u,ui:t,Jg:f,fd:i,Gi:n,flags:r,offset:a},o=u}}return o}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function mt(e,t){if(p)return vn(13,1,e,t);try{if(-1==(0|e)||0===t)var n=-28;else{var r=et[e];if(r&&t===r.ui){var i=Ke.zf(r.fd);if(2&r.Gi){var a=r.flags,f=r.offset,o=Y.slice(e,e+t);Ke.Xf(i,o,f,t,a)}et[e]=null,r.Jg&&rr(r.xi)}n=0}return n}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function gt(e,t,n){if(p)return vn(14,1,e,t,n);nt=n;try{var r=R(e),i=rt();return Ke.open(r,t,i).fd}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function wt(e,t,n){if(p)return vn(15,1,e,t,n);try{for(var r=n=0;r<t;r++){var i=e+8*r,a=X[i+4>>1],f=32,o=Ke.zf(Q[i>>2]);o&&(f=5,o.df.Zf&&(f=o.df.Zf(o))),(f&=24|a)&&n++,X[i+6>>1]=f}return n}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function yt(e,t,n,r){if(p)return vn(16,1,e,t,n,r);try{return r&&(Q[r>>2]=-1,Q[r+4>>2]=-1,Q[r+8>>2]=-1,Q[r+12>>2]=-1),0}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function vt(e,t,n){if(p)return vn(17,1,e,t,n);try{var r=it(e);return Ke.read(r,H,t,n)}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function bt(e,t){if(p)return vn(18,1,e,t);try{return e=R(e),t=R(t),Ke.rename(e,t),0}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function _t(e){if(p)return vn(19,1,e);try{return e=R(e),Ke.rmdir(e),0}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}var kt={jf:function(){return n.websocket=n.websocket&&"object"==typeof n.websocket?n.websocket:{},n.websocket.Ig={},n.websocket.on=function(e,t){return"function"==typeof t&&(this.Ig[e]=t),this},n.websocket.emit=function(e,t){"function"==typeof this.Ig[e]&&this.Ig[e].call(this,t)},Ke.createNode(null,"/",16895,0)},createSocket:function(e,t,n){return t&=-526337,n&&O(1==t==(6==n)),e={family:e,type:t,protocol:n,lf:null,error:null,ng:{},pending:[],ag:[],pf:kt.qf},t=kt.zg(),(n=Ke.createNode(kt.root,t,49152,0)).bg=e,t=Ke.nh({path:t,node:n,flags:Ke.Dh("r+"),seekable:!1,df:kt.df}),e.stream=t,e},mi:function(e){return(e=Ke.zf(e))&&Ke.isSocket(e.node.mode)?e.node.bg:null},df:{Zf:function(e){return(e=e.node.bg).pf.Zf(e)},Uf:function(e,t,n){return(e=e.node.bg).pf.Uf(e,t,n)},read:function(e,t,n,r){return(r=(e=e.node.bg).pf.bh(e,r))?(t.set(r.buffer,n),r.buffer.length):0},write:function(e,t,n,r){return(e=e.node.bg).pf.fh(e,t,n,r)},close:function(e){(e=e.node.bg).pf.close(e)}},zg:function(){return kt.zg.current||(kt.zg.current=0),"socket["+kt.zg.current+++"]"},qf:{tg:function(e,t,r){if("object"==typeof t){var i=t;r=t=null}if(i)if(i._socket)t=i._socket.remoteAddress,r=i._socket.remotePort;else{if(!(r=/ws[s]?:\/\/([^:]+):(\d+)/.exec(i.url)))throw Error("WebSocket URL must be in the format ws(s)://address:port");t=r[1],r=parseInt(r[2],10)}else try{var a=n.websocket&&"object"==typeof n.websocket,f="ws:#".replace("#","//");if(a&&"string"==typeof n.websocket.url&&(f=n.websocket.url),"ws://"===f||"wss://"===f){var o=t.split("/");f=f+o[0]+":"+r+"/"+o.slice(1).join("/")}o="binary",a&&"string"==typeof n.websocket.subprotocol&&(o=n.websocket.subprotocol);var u=void 0;"null"!==o&&(o=o.replace(/^ +| +$/g,"").split(/ *, */),u=d?{protocol:o.toString()}:o),a&&null===n.websocket.subprotocol&&(u=void 0),(i=new(d?require("ws"):WebSocket)(f,u)).binaryType="arraybuffer"}catch(e){throw new Ke.af(23)}return t={hf:t,port:r,socket:i,ug:[]},kt.qf.jh(e,t),kt.qf.ni(e,t),2===e.type&&void 0!==e.Qf&&t.ug.push(new Uint8Array([255,255,255,255,112,111,114,116,(65280&e.Qf)>>8,255&e.Qf])),t},vg:function(e,t,n){return e.ng[t+":"+n]},jh:function(e,t){e.ng[t.hf+":"+t.port]=t},Hh:function(e,t){delete e.ng[t.hf+":"+t.port]},ni:function(e,t){function r(){n.websocket.emit("open",e.stream.fd);try{for(var r=t.ug.shift();r;)t.socket.send(r),r=t.ug.shift()}catch(e){t.socket.close()}}function i(r){if("string"==typeof r)r=(new TextEncoder).encode(r);else{if(O(void 0!==r.byteLength),0==r.byteLength)return;r=new Uint8Array(r)}var i=a;a=!1,i&&10===r.length&&255===r[0]&&255===r[1]&&255===r[2]&&255===r[3]&&112===r[4]&&111===r[5]&&114===r[6]&&116===r[7]?(r=r[8]<<8|r[9],kt.qf.Hh(e,t),t.port=r,kt.qf.jh(e,t)):(e.ag.push({hf:t.hf,port:t.port,data:r}),n.websocket.emit("message",e.stream.fd))}var a=!0;d?(t.socket.on("open",r),t.socket.on("message",(function(e,t){t.Yi&&i(new Uint8Array(e).buffer)})),t.socket.on("close",(function(){n.websocket.emit("close",e.stream.fd)})),t.socket.on("error",(function(){e.error=14,n.websocket.emit("error",[e.stream.fd,e.error,"ECONNREFUSED: Connection refused"])}))):(t.socket.onopen=r,t.socket.onclose=function(){n.websocket.emit("close",e.stream.fd)},t.socket.onmessage=function(e){i(e.data)},t.socket.onerror=function(){e.error=14,n.websocket.emit("error",[e.stream.fd,e.error,"ECONNREFUSED: Connection refused"])})},Zf:function(e){if(1===e.type&&e.lf)return e.pending.length?65:0;var t=0,n=1===e.type?kt.qf.vg(e,e.sf,e.vf):null;return(e.ag.length||!n||n&&n.socket.readyState===n.socket.CLOSING||n&&n.socket.readyState===n.socket.CLOSED)&&(t|=65),(!n||n&&n.socket.readyState===n.socket.OPEN)&&(t|=4),(n&&n.socket.readyState===n.socket.CLOSING||n&&n.socket.readyState===n.socket.CLOSED)&&(t|=16),t},Uf:function(e,t,n){return 21531===t?(t=0,e.ag.length&&(t=e.ag[0].data.length),Q[n>>2]=t,0):28},close:function(e){if(e.lf){try{e.lf.close()}catch(e){}e.lf=null}for(var t=Object.keys(e.ng),n=0;n<t.length;n++){var r=e.ng[t[n]];try{r.socket.close()}catch(e){}kt.qf.Hh(e,r)}return 0},bind:function(e,t,n){if(void 0!==e.Bg||void 0!==e.Qf)throw new Ke.af(28);if(e.Bg=t,e.Qf=n,2===e.type){e.lf&&(e.lf.close(),e.lf=null);try{e.pf.listen(e,0)}catch(e){if(!(e instanceof Ke.af))throw e;if(138!==e.ef)throw e}}},connect:function(e,t,n){if(e.lf)throw new Ke.af(138);if(void 0!==e.sf&&void 0!==e.vf){var r=kt.qf.vg(e,e.sf,e.vf);if(r){if(r.socket.readyState===r.socket.CONNECTING)throw new Ke.af(7);throw new Ke.af(30)}}throw t=kt.qf.tg(e,t,n),e.sf=t.hf,e.vf=t.port,new Ke.af(26)},listen:function(e){if(!d)throw new Ke.af(138);if(e.lf)throw new Ke.af(28);var t=require("ws").Server;e.lf=new t({host:e.Bg,port:e.Qf}),n.websocket.emit("listen",e.stream.fd),e.lf.on("connection",(function(t){if(1===e.type){var r=kt.createSocket(e.family,e.type,e.protocol);t=kt.qf.tg(r,t),r.sf=t.hf,r.vf=t.port,e.pending.push(r),n.websocket.emit("connection",r.stream.fd)}else kt.qf.tg(e,t),n.websocket.emit("connection",e.stream.fd)})),e.lf.on("closed",(function(){n.websocket.emit("close",e.stream.fd),e.lf=null})),e.lf.on("error",(function(){e.error=23,n.websocket.emit("error",[e.stream.fd,e.error,"EHOSTUNREACH: Host is unreachable"])}))},accept:function(e){if(!e.lf)throw new Ke.af(28);var t=e.pending.shift();return t.stream.flags=e.stream.flags,t},ij:function(e,t){if(t){if(void 0===e.sf||void 0===e.vf)throw new Ke.af(53);t=e.sf,e=e.vf}else t=e.Bg||0,e=e.Qf||0;return{hf:t,port:e}},fh:function(e,t,n,r,i,a){if(2===e.type){if(void 0!==i&&void 0!==a||(i=e.sf,a=e.vf),void 0===i||void 0===a)throw new Ke.af(17)}else i=e.sf,a=e.vf;var f,o=kt.qf.vg(e,i,a);if(1===e.type){if(!o||o.socket.readyState===o.socket.CLOSING||o.socket.readyState===o.socket.CLOSED)throw new Ke.af(53);if(o.socket.readyState===o.socket.CONNECTING)throw new Ke.af(6)}if(ArrayBuffer.isView(t)&&(n+=t.byteOffset,t=t.buffer),f=t instanceof SharedArrayBuffer?new Uint8Array(new Uint8Array(t.slice(n,n+r))).buffer:t.slice(n,n+r),2===e.type&&(!o||o.socket.readyState!==o.socket.OPEN))return o&&o.socket.readyState!==o.socket.CLOSING&&o.socket.readyState!==o.socket.CLOSED||(o=kt.qf.tg(e,i,a)),o.ug.push(f),r;try{return o.socket.send(f),r}catch(e){throw new Ke.af(28)}},bh:function(e,t){if(1===e.type&&e.lf)throw new Ke.af(53);var n=e.ag.shift();if(!n){if(1===e.type){if(e=kt.qf.vg(e,e.sf,e.vf)){if(e.socket.readyState===e.socket.CLOSING||e.socket.readyState===e.socket.CLOSED)return null;throw new Ke.af(6)}throw new Ke.af(53)}throw new Ke.af(6)}var r=n.data.byteLength||n.data.length,i=n.data.byteOffset||0,a=n.data.buffer||n.data;t=Math.min(t,r);var f={buffer:new Uint8Array(a,i,t),hf:n.hf,port:n.port};return 1===e.type&&t<r&&(n.data=new Uint8Array(a,i+t,r-t),e.ag.unshift(n)),f}}};function At(e){e=e.split(".");for(var t=0;4>t;t++){var n=Number(e[t]);if(isNaN(n))return null;e[t]=n}return(e[0]|e[1]<<8|e[2]<<16|e[3]<<24)>>>0}function xt(e){var t,n,r=[];if(!/^((?=.*::)(?!.*::.+::)(::)?([\dA-F]{1,4}:(:|\b)|){5}|([\dA-F]{1,4}:){6})((([\dA-F]{1,4}((?!\3)::|:\b|$))|(?!\2\3)){2}|(((2[0-4]|1\d|[1-9])?\d|25[0-5])\.?\b){4})$/i.test(e))return null;if("::"===e)return[0,0,0,0,0,0,0,0];for(0<(e=0===e.indexOf("::")?e.replace("::","Z:"):e.replace("::",":Z:")).indexOf(".")?((e=(e=e.replace(/[.]/g,":")).split(":"))[e.length-4]=parseInt(e[e.length-4])+256*parseInt(e[e.length-3]),e[e.length-3]=parseInt(e[e.length-2])+256*parseInt(e[e.length-1]),e=e.slice(0,e.length-2)):e=e.split(":"),t=n=0;t<e.length;t++)if("string"==typeof e[t])if("Z"===e[t]){for(n=0;n<8-e.length+1;n++)r[t+n]=0;--n}else r[t+n]=ur(parseInt(e[t],16));else r[t+n]=e[t];return[r[1]<<16|r[0],r[3]<<16|r[2],r[5]<<16|r[4],r[7]<<16|r[6]]}var Et=1,jt={},St={};function Mt(e){var t=At(e);return null!==t||null!==(t=xt(e))?e:(jt[e]?t=jt[e]:(O(65535>(t=Et++),"exceeded max address mappings of 65535"),St[t="172.29."+(255&t)+"."+(65280&t)]=e,jt[e]=t),t)}function Tt(e){return St[e]?St[e]:null}function Dt(e){return(255&e)+"."+(e>>8&255)+"."+(e>>16&255)+"."+(e>>24&255)}function Ct(e){var t,n="",r=0,i=0,a=0,f=0;e=[65535&e[0],e[0]>>16,65535&e[1],e[1]>>16,65535&e[2],e[2]>>16,65535&e[3],e[3]>>16];var o=!0;for(t=0;5>t;t++)if(0!==e[t]){o=!1;break}if(o){if(t=Dt(e[6]|e[7]<<16),-1===e[5])return"::ffff:"+t;if(0===e[5])return"0.0.0.0"===t&&(t=""),"0.0.0.1"===t&&(t="1"),"::"+t}for(t=0;8>t;t++)0===e[t]&&(1<t-i&&(f=0),i=t,f++),f>r&&(a=t-(r=f)+1);for(t=0;8>t;t++)1<r&&0===e[t]&&t>=a&&t<a+r?t===a&&(n+=":",0===a&&(n+=":")):(n+=Number(or(65535&e[t])).toString(16),n+=7>t?":":"");return n}function Ft(e,t){var n=X[e>>1],r=or(V[e+2>>1]);switch(n){case 2:if(16!==t)return{ef:28};e=Dt(e=Q[e+4>>2]);break;case 10:if(28!==t)return{ef:28};e=Ct(e=[Q[e+8>>2],Q[e+12>>2],Q[e+16>>2],Q[e+20>>2]]);break;default:return{ef:5}}return{family:n,hf:e,port:r}}function Ot(e,t,n,r){switch(t){case 2:n=At(n),X[e>>1]=t,Q[e+4>>2]=n,X[e+2>>1]=ur(r);break;case 10:n=xt(n),Q[e>>2]=t,Q[e+8>>2]=n[0],Q[e+12>>2]=n[1],Q[e+16>>2]=n[2],Q[e+20>>2]=n[3],X[e+2>>1]=ur(r),Q[e+4>>2]=0,Q[e+24>>2]=0;break;default:return{ef:5}}return{}}function It(e,t){if(p)return vn(20,1,e,t);try{nt=t,t=function(){var e=kt.mi(rt());if(!e)throw new Ke.af(8);return e};var n=function(e){var t=rt(),n=rt();if(e&&0===t)return null;if((e=Ft(t,n)).ef)throw new Ke.af(e.ef);return e.hf=Tt(e.hf)||e.hf,e};switch(e){case 1:var r=rt(),i=rt(),a=rt(),f=kt.createSocket(r,i,a);return f.stream.fd;case 2:f=t();var o=n();return f.pf.bind(f,o.hf,o.port),0;case 3:return f=t(),o=n(),f.pf.connect(f,o.hf,o.port),0;case 4:f=t();var u=rt();return f.pf.listen(f,u),0;case 5:f=t();var c=rt();rt();var s=f.pf.accept(f);return c&&Ot(c,s.family,Mt(s.sf),s.vf),s.stream.fd;case 6:return f=t(),c=rt(),rt(),Ot(c,f.family,Mt(f.Bg||"0.0.0.0"),f.Qf),0;case 7:return f=t(),c=rt(),rt(),f.sf?(Ot(c,f.family,Mt(f.sf),f.vf),0):-53;case 11:f=t();var l=rt(),d=rt();rt();var h=n(!0);return h?f.pf.fh(f,H,l,d,h.hf,h.port):Ke.write(f.stream,H,l,d);case 12:f=t();var m=rt(),g=rt();rt(),c=rt(),rt();var w=f.pf.bh(f,g);return w?(c&&Ot(c,f.family,Mt(w.hf),w.port),Y.set(w.buffer,m),w.buffer.byteLength):0;case 14:return-50;case 15:f=t();var y=rt(),v=rt(),b=rt(),_=rt();return 1===y&&4===v?(Q[b>>2]=f.error,Q[_>>2]=4,f.error=null,0):-50;case 16:f=t(),l=rt(),rt();var k=Q[l+8>>2],A=Q[l+12>>2],x=Q[l>>2],E=Q[l+4>>2];if(x){if((o=Ft(x,E)).ef)return-o.ef;var j=o.port;c=Tt(o.hf)||o.hf}for(var S=0,M=0;M<A;M++)S+=Q[k+(8*M+4)>>2];var T=new Uint8Array(S);for(M=d=0;M<A;M++){var D=Q[k+8*M>>2],C=Q[k+(8*M+4)>>2];for(m=0;m<C;m++)T[d++]=H[D+m>>0]}return f.pf.fh(f,T,0,S,c,j);case 17:for(f=t(),l=rt(),rt(),k=Q[l+8>>2],A=Q[l+12>>2],M=S=0;M<A;M++)S+=Q[k+(8*M+4)>>2];if(!(w=f.pf.bh(f,S)))return 0;(x=Q[l>>2])&&Ot(x,f.family,Mt(w.hf),w.port),f=0;var F=w.buffer.byteLength;for(M=0;0<F&&M<A;M++)D=Q[k+8*M>>2],(C=Q[k+(8*M+4)>>2])&&(d=Math.min(C,F),m=w.buffer.subarray(f,f+d),Y.set(m,D+f),f+=d,F-=d);return f;default:return-52}}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function Pt(e,t){if(p)return vn(21,1,e,t);try{return e=R(e),tt(Ke.stat,e,t)}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function Lt(e){if(p)return vn(22,1,e);try{return e=R(e),Ke.unlink(e),0}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}}function Rt(){return void 0===Rt.start&&(Rt.start=Date.now()),1e3*(Date.now()-Rt.start)|0}function Nt(){d||l||(x||(x={}),x["Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread"]||(x["Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread"]=1,A("Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread")))}function Bt(e,t,n){if(0>=e||e>H.length||1&e)return-28;if(s){if(Atomics.load(Q,e>>2)!=t)return-6;var r=performance.now();for(n=r+n,Atomics.exchange(Q,Fe.Vf>>2,e);;){if((r=performance.now())>n)return Atomics.exchange(Q,Fe.Vf>>2,0),-73;if(0==(r=Atomics.exchange(Q,Fe.Vf>>2,0)))break;if(_r(),Atomics.load(Q,e>>2)!=t)return-6;Atomics.exchange(Q,Fe.Vf>>2,e)}return 0}if("timed-out"===(e=Atomics.wait(Q,e>>2,t,n)))return-73;if("not-equal"===e)return-6;if("ok"===e)return 0;throw"Atomics.wait returned an unexpected value "+e}function Ut(e){var t=e.getExtension("ANGLE_instanced_arrays");t&&(e.vertexAttribDivisor=function(e,n){t.vertexAttribDivisorANGLE(e,n)},e.drawArraysInstanced=function(e,n,r,i){t.drawArraysInstancedANGLE(e,n,r,i)},e.drawElementsInstanced=function(e,n,r,i,a){t.drawElementsInstancedANGLE(e,n,r,i,a)})}function zt(e){var t=e.getExtension("OES_vertex_array_object");t&&(e.createVertexArray=function(){return t.createVertexArrayOES()},e.deleteVertexArray=function(e){t.deleteVertexArrayOES(e)},e.bindVertexArray=function(e){t.bindVertexArrayOES(e)},e.isVertexArray=function(e){return t.isVertexArrayOES(e)})}function Gt(e){var t=e.getExtension("WEBGL_draw_buffers");t&&(e.drawBuffers=function(e,n){t.drawBuffersWEBGL(e,n)})}var Wt=1,qt=[],Ht=[],Yt=[],Xt=[],Vt=[],Qt=[],Jt=[],$t=[],Zt=[],Kt={},en={},tn=4;function nn(e){fn||(fn=e)}function rn(e){for(var t=Wt++,n=e.length;n<t;n++)e[n]=null;return t}function an(e){if(e||(e=on),!e.oi){e.oi=!0;var t=e.qg;Ut(t),zt(t),Gt(t),t.uf=t.getExtension("EXT_disjoint_timer_query"),t.rj=t.getExtension("WEBGL_multi_draw");var n="OES_texture_float OES_texture_half_float OES_standard_derivatives OES_vertex_array_object WEBGL_compressed_texture_s3tc WEBGL_depth_texture OES_element_index_uint EXT_texture_filter_anisotropic EXT_frag_depth WEBGL_draw_buffers ANGLE_instanced_arrays OES_texture_float_linear OES_texture_half_float_linear EXT_blend_minmax EXT_shader_texture_lod EXT_texture_norm16 WEBGL_compressed_texture_pvrtc EXT_color_buffer_half_float WEBGL_color_buffer_float EXT_sRGB WEBGL_compressed_texture_etc1 EXT_disjoint_timer_query WEBGL_compressed_texture_etc WEBGL_compressed_texture_astc EXT_color_buffer_float WEBGL_compressed_texture_s3tc_srgb EXT_disjoint_timer_query_webgl2 WEBKIT_WEBGL_compressed_texture_pvrtc".split(" ");(t.getSupportedExtensions()||[]).forEach((function(e){-1!=n.indexOf(e)&&t.getExtension(e)}))}}var fn,on,un=[];function cn(e,t,n,r){for(var i=0;i<e;i++){var a=Qn[n](),f=a&&rn(r);a?(a.name=f,r[f]=a):nn(1282),Q[t+4*i>>2]=f}}function sn(e,t,n,r,i,a,f,o){t=Ht[t],(e=Qn[e](t,n))&&(r=o&&B(e.name,o,r),i&&(Q[i>>2]=r),a&&(Q[a>>2]=e.size),f&&(Q[f>>2]=e.type))}function ln(e,t){J[e>>2]=t,J[e+4>>2]=(t-J[e>>2])/4294967296}function dn(e,t,n){if(t){var r=void 0;switch(e){case 36346:r=1;break;case 36344:return void(0!=n&&1!=n&&nn(1280));case 36345:r=0;break;case 34466:var i=Qn.getParameter(34467);r=i?i.length:0}if(void 0===r)switch(i=Qn.getParameter(e),typeof i){case"number":r=i;break;case"boolean":r=i?1:0;break;case"string":return void nn(1280);case"object":if(null===i)switch(e){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 34068:r=0;break;default:return void nn(1280)}else{if(i instanceof Float32Array||i instanceof Uint32Array||i instanceof Int32Array||i instanceof Array){for(e=0;e<i.length;++e)switch(n){case 0:Q[t+4*e>>2]=i[e];break;case 2:$[t+4*e>>2]=i[e];break;case 4:H[t+e>>0]=i[e]?1:0}return}try{r=0|i.name}catch(t){return nn(1280),void A("GL_INVALID_ENUM in glGet"+n+"v: Unknown object returned from WebGL getParameter("+e+")! (error: "+t+")")}}break;default:return nn(1280),void A("GL_INVALID_ENUM in glGet"+n+"v: Native code calling glGet"+n+"v("+e+") and it returns "+i+" of type "+typeof i+"!")}switch(n){case 1:ln(t,r);break;case 0:Q[t>>2]=r;break;case 2:$[t>>2]=r;break;case 4:H[t>>0]=r?1:0}}else nn(1281)}function hn(e){var t=U(e)+1,n=ir(t);return B(e,n,t),n}function pn(e,t,n,r){if(n)if("number"==typeof(e=Qn.getUniform(Ht[e],Qt[t]))||"boolean"==typeof e)switch(r){case 0:Q[n>>2]=e;break;case 2:$[n>>2]=e}else for(t=0;t<e.length;t++)switch(r){case 0:Q[n+4*t>>2]=e[t];break;case 2:$[n+4*t>>2]=e[t]}else nn(1281)}function mn(e,t,n,r){if(n)if(e=Qn.getVertexAttrib(e,t),34975==t)Q[n>>2]=e&&e.name;else if("number"==typeof e||"boolean"==typeof e)switch(r){case 0:Q[n>>2]=e;break;case 2:$[n>>2]=e;break;case 5:Q[n>>2]=Math.fround(e)}else for(t=0;t<e.length;t++)switch(r){case 0:Q[n+4*t>>2]=e[t];break;case 2:$[n+4*t>>2]=e[t];break;case 5:Q[n+4*t>>2]=Math.fround(e[t])}else nn(1281)}function gn(e,t,n,r,i){e=1==(e-=5120)?Y:4==e?Q:6==e?$:5==e||28922==e?J:V;var a=31-Math.clz32(e.BYTES_PER_ELEMENT),f=tn;return e.subarray(i>>a,i+r*(n*({5:3,6:4,8:2,29502:3,29504:4}[t-6402]||1)*(1<<a)+f-1&-f)>>a)}var wn=[],yn=[];function vn(e,t){for(var n=arguments.length-2,r=gr(),i=yr(8*n),a=i>>3,f=0;f<n;f++)Z[a+f]=arguments[2+f];return n=Er(e,n,i,t),wr(r),n}var bn=[],_n=[],kn=[0,"undefined"!=typeof document?document:0,"undefined"!=typeof window?window:0];function An(e){return e=2<e?R(e):e,kn[e]||("undefined"!=typeof document?document.querySelector(e):void 0)}function xn(e,t,n){var r=An(e);if(!r)return-4;if(r.sg&&(Q[r.sg>>2]=t,Q[r.sg+4>>2]=n),!r.Fh&&r.aj){if(r.sg){e=e?R(e):"",r=Q[r.sg+8>>2];var i=gr(),a=yr(12),f=0;return e&&(f=hn(e)),Q[a>>2]=f,Q[a+4>>2]=t,Q[a+8>>2]=n,jr(0,r,657457152,0,f,a),wr(i),1}return-4}return r.Fh&&(r=r.Fh),e=!1,r.rg&&r.rg.qg&&(e=0===(e=r.rg.qg.getParameter(2978))[0]&&0===e[1]&&e[2]===r.width&&e[3]===r.height),r.width=t,r.height=n,e&&r.rg.qg.viewport(0,0,t,n),0}function En(e,t,n){return p?vn(23,1,e,t,n):xn(e,t,n)}var jn,Sn=["default","low-power","high-performance"],Mn={};function Tn(){if(!jn){var e,t={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",_:u||"./this.program"};for(e in Mn)t[e]=Mn[e];var n=[];for(e in t)n.push(e+"="+t[e]);jn=n}return jn}function Dn(e){if(p)return vn(24,1,e);try{var t=it(e);return Ke.close(t),0}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),e.ef}}function Cn(e,t){if(p)return vn(25,1,e,t);try{var n=it(e);return H[t>>0]=n.tty?2:Ke.kf(n.mode)?3:Ke.Mf(n.mode)?7:4,0}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),e.ef}}function Fn(e,t,n,r){if(p)return vn(26,1,e,t,n,r);try{e:{for(var i=it(e),a=e=0;a<n;a++){var f=Q[t+(8*a+4)>>2],o=Ke.read(i,H,Q[t+8*a>>2],f,void 0);if(0>o){var u=-1;break e}if(e+=o,o<f)break}u=e}return Q[r>>2]=u,0}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),e.ef}}function On(e,t,n,r,i){if(p)return vn(27,1,e,t,n,r,i);try{var a=it(e);return-9007199254740992>=(e=4294967296*n+(t>>>0))||9007199254740992<=e?-61:(Ke.tf(a,e,r),be=[a.position>>>0,(ve=a.position,1<=+Math.abs(ve)?0<ve?(0|Math.min(+Math.floor(ve/4294967296),4294967295))>>>0:~~+Math.ceil((ve-+(~~ve>>>0))/4294967296)>>>0:0)],Q[i>>2]=be[0],Q[i+4>>2]=be[1],a.Lf&&0===e&&0===r&&(a.Lf=null),0)}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),e.ef}}function In(e,t,n,r){if(p)return vn(28,1,e,t,n,r);try{e:{for(var i=it(e),a=e=0;a<n;a++){var f=Ke.write(i,H,Q[t+8*a>>2],Q[t+(8*a+4)>>2],void 0);if(0>f){var o=-1;break e}e+=f}o=e}return Q[r>>2]=o,0}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),e.ef}}var Pn={};function Ln(e){Ln.buffer||(Ln.buffer=ir(256),Pn[0]="Success",Pn[-1]="Invalid value for 'ai_flags' field",Pn[-2]="NAME or SERVICE is unknown",Pn[-3]="Temporary failure in name resolution",Pn[-4]="Non-recoverable failure in name res",Pn[-6]="'ai_family' not supported",Pn[-7]="'ai_socktype' not supported",Pn[-8]="SERVICE not supported for 'ai_socktype'",Pn[-10]="Memory allocation failure",Pn[-11]="System error returned in 'errno'",Pn[-12]="Argument buffer overflow");var t="Unknown error";return e in Pn&&(t=255<Pn[e].length?"Message too long":Pn[e]),W(t,Ln.buffer),Ln.buffer}function Rn(e,t,n,r){function i(e,t,n,r,i,a){var f=10===e?28:16;return i=10===e?Ct(i):Dt(i),O(!(i=Ot(f=ir(f),e,i,a)).ef),i=ir(32),Q[i+4>>2]=e,Q[i+8>>2]=t,Q[i+12>>2]=n,Q[i+24>>2]=r,Q[i+20>>2]=f,Q[i+16>>2]=10===e?28:16,Q[i+28>>2]=0,i}if(p)return vn(29,1,e,t,n,r);var a=0,f=0,o=0,u=0,c=0,s=0;if(n&&(o=Q[n>>2],u=Q[n+4>>2],c=Q[n+8>>2],s=Q[n+12>>2]),c&&!s&&(s=2===c?17:6),!c&&s&&(c=17===s?2:1),0===s&&(s=6),0===c&&(c=1),!e&&!t)return-2;if(-1088&o||0!==n&&2&Q[n>>2]&&!e)return-1;if(32&o)return-2;if(0!==c&&1!==c&&2!==c)return-7;if(0!==u&&2!==u&&10!==u)return-6;if(t&&(t=R(t),f=parseInt(t,10),isNaN(f)))return 1024&o?-2:-8;if(!e)return 0===u&&(u=2),0==(1&o)&&(a=2===u?lr(2130706433):[0,0,0,1]),e=i(u,c,s,null,a,f),Q[r>>2]=e,0;if(null!==(a=At(e=R(e))))if(0===u||2===u)u=2;else{if(!(10===u&&8&o))return-2;a=[0,0,lr(65535),a],u=10}else if(null!==(a=xt(e))){if(0!==u&&10!==u)return-2;u=10}return null!=a?(e=i(u,c,s,e,a,f),Q[r>>2]=e,0):4&o?-2:(a=At(e=Mt(e)),0===u?u=2:10===u&&(a=[0,0,lr(65535),a]),e=i(u,c,s,null,a,f),Q[r>>2]=e,0)}function Nn(e){if(p)throw"Internal Error! spawnThread() can only ever be called from main application thread!";var t=Fe.li();if(void 0!==t.yf)throw"Internal error!";if(!e.$f)throw"Internal error, no pthread ptr!";Fe.Kf.push(t);for(var n=ir(512),r=0;128>r;++r)Q[n+4*r>>2]=0;var i=e.Rf+e.cg,a=(r=Fe.Ef[e.$f]={worker:t,Rf:e.Rf,cg:e.cg,Kg:e.Kg,Lh:e.$f,threadInfoStruct:e.$f}).threadInfoStruct>>2;Atomics.store(J,a,0),Atomics.store(J,a+1,0),Atomics.store(J,a+2,0),Atomics.store(J,a+17,e.detached),Atomics.store(J,a+26,n),Atomics.store(J,a+12,0),Atomics.store(J,a+10,r.threadInfoStruct),Atomics.store(J,a+11,42),Atomics.store(J,a+27,e.cg),Atomics.store(J,a+21,e.cg),Atomics.store(J,a+20,i),Atomics.store(J,a+29,i),Atomics.store(J,a+30,e.detached),Atomics.store(J,a+32,e.Ih),Atomics.store(J,a+33,e.Jh),n=sr()+40,Atomics.store(J,a+44,n),t.yf=r;var f={cmd:"run",start_routine:e.Mi,arg:e.Tf,threadInfoStruct:e.$f,selfThreadId:e.$f,parentThreadId:e.Fi,stackBase:e.Rf,stackSize:e.cg};t.og=function(){f.time=performance.now(),t.postMessage(f,e.Vi)},t.loaded&&(t.og(),delete t.og)}function Bn(){return 0|xe}function Un(e,t){if(!e)return A("pthread_join attempted on a null thread pointer!"),71;if(p&&C==e)return A("PThread "+e+" is attempting to join to itself!"),16;if(!p&&Fe.xf==e)return A("Main thread "+e+" is attempting to join to itself!"),16;if(Q[e+12>>2]!==e)return A("pthread_join attempted on thread "+e+", which does not point to a valid thread, or does not exist anymore!"),71;if(Atomics.load(J,e+68>>2))return A("Attempted to join thread "+e+", which was already detached!"),28;for(Nt();;){var n=Atomics.load(J,e>>2);if(1==n)return n=Atomics.load(J,e+4>>2),t&&(Q[t>>2]=n),Atomics.store(J,e+68>>2,1),p?postMessage({cmd:"cleanupThread",thread:e}):De(e),0;if(p&&D&&!Atomics.load(J,D+60>>2)&&2==Atomics.load(J,D+0>>2))throw"Canceled!";p||_r(),Bt(e,n,p?100:1)}}function zn(e){return 0==e%4&&(0!=e%100||0==e%400)}function Gn(e,t){for(var n=0,r=0;r<=t;n+=e[r++]);return n}n._pthread_self=Bn;var Wn=[31,29,31,30,31,30,31,31,30,31,30,31],qn=[31,28,31,30,31,30,31,31,30,31,30,31];function Hn(e,t){for(e=new Date(e.getTime());0<t;){var n=e.getMonth(),r=(zn(e.getFullYear())?Wn:qn)[n];if(!(t>r-e.getDate())){e.setDate(e.getDate()+t);break}t-=r-e.getDate()+1,e.setDate(1),11>n?e.setMonth(n+1):(e.setMonth(0),e.setFullYear(e.getFullYear()+1))}return e}function Yn(e){if(p)return vn(30,1,e);switch(e){case 30:case 75:return 16384;case 85:return Y.length/16384;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:case 79:return 200809;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator&&navigator.hardwareConcurrency||1}return Oe(28),-1}function Xn(e,t,n,r){e||(e=this),this.parent=e,this.jf=e.jf,this.lg=null,this.id=Ke.Ai++,this.name=t,this.mode=n,this.cf={},this.df={},this.rdev=r}Object.defineProperties(Xn.prototype,{read:{get:function(){return 365==(365&this.mode)},set:function(e){e?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146==(146&this.mode)},set:function(e){e?this.mode|=146:this.mode&=-147}},ti:{get:function(){return Ke.kf(this.mode)}},Ug:{get:function(){return Ke.hg(this.mode)}}}),Ke.Oh=Xn,Ke.Ni();for(var Vn,Qn,Jn=0;32>Jn;++Jn)un.push(Array(Jn));var $n=new Float32Array(288);for(Jn=0;288>Jn;++Jn)wn[Jn]=$n.subarray(0,Jn+1);var Zn=new Int32Array(288);for(Jn=0;288>Jn;++Jn)yn[Jn]=Zn.subarray(0,Jn+1);var Kn=[null,Pe,Re,at,ft,ot,ut,ct,st,lt,dt,ht,pt,mt,gt,wt,yt,vt,bt,_t,It,Pt,Lt,En,Dn,Cn,Fn,On,In,Rn,Yn];function er(e,t){var n=Array(U(e)+1);return e=N(e,n,0,n.length),t&&(n.length=e),n}p||re.push({vh:function(){nr()}});var tr={c:function(e,t,n,r){he("Assertion failed: "+R(e)+", at: "+[t?R(t):"unknown filename",n,r?R(r):"unknown function"])},K:function(e,t){if(e=cr(e,t),!j)return postMessage({cmd:"exitProcess",returnCode:e}),e},W:function(e,t){return Ie(e,t)},aa:function(e,t){return Pe(e,t)},va:function(e,t){return Le(e,t)},ua:function(e,t){return Ne(e,t)},Ma:at,Ea:ft,u:ot,Na:ut,Ka:ct,Ha:st,V:lt,Oa:dt,Pa:ht,ya:pt,Aa:function(){return 0},za:mt,Da:function(){return-63},Y:gt,La:wt,Ja:yt,Ca:vt,wa:bt,Ga:_t,Ia:function(){return 0},t:It,X:Pt,Fa:function(e){try{if(!e)return-21;var t={__size__:390,sysname:0,nodename:65,release:130,version:195,machine:260,domainname:325};return W("Emscripten",e+t.sysname),W("emscripten",e+t.nodename),W("1.0",e+t.release),W("#1",e+t.version),W("x86-JS",e+t.machine),0}catch(e){return void 0!==Ke&&e instanceof Ke.af||he(e),-e.ef}},Ba:Lt,pa:function(e,t){if(e==t)postMessage({cmd:"processQueuedMainThreadWork"});else if(p)postMessage({targetThread:e,cmd:"processThreadQueue"});else{if(!(e=(e=Fe.Ef[e])&&e.worker))return;e.postMessage({cmd:"processThreadQueue"})}return 1},b:function(){he()},Qa:Rt,Ta:Ie,$:function(){he("To use dlopen, you need to use Emscripten's linking support, see https://github.com/emscripten-core/emscripten/wiki/Linking")},Ua:function(){he("To use dlopen, you need to use Emscripten's linking support, see https://github.com/emscripten-core/emscripten/wiki/Linking")},F:function(e,t,n){var r;for(_n.length=0,n>>=2;r=Y[t++];)(r=105>r)&&1&n&&n++,_n.push(r?Z[n++>>1]:Q[n]),++n;return _e[e].apply(null,_n)},qa:Nt,I:function(){},A:Bt,p:Me,z:Ce,Ed:function(e){Qn.activeTexture(e)},Dd:function(e,t){Qn.attachShader(Ht[e],Jt[t])},ea:function(e,t){Qn.uf.beginQueryEXT(e,Zt[t])},Cd:function(e,t,n){Qn.bindAttribLocation(Ht[e],t,R(n))},Bd:function(e,t){Qn.bindBuffer(e,qt[t])},Ad:function(e,t){Qn.bindFramebuffer(e,Yt[t])},zd:function(e,t){Qn.bindRenderbuffer(e,Xt[t])},yd:function(e,t){Qn.bindTexture(e,Vt[t])},Md:function(e){Qn.bindVertexArray($t[e])},xd:function(e,t,n,r){Qn.blendColor(e,t,n,r)},wd:function(e){Qn.blendEquation(e)},vd:function(e,t){Qn.blendEquationSeparate(e,t)},ud:function(e,t){Qn.blendFunc(e,t)},td:function(e,t,n,r){Qn.blendFuncSeparate(e,t,n,r)},sd:function(e,t,n,r){Qn.bufferData(e,n?Y.subarray(n,n+t):t,r)},rd:function(e,t,n,r){Qn.bufferSubData(e,t,Y.subarray(r,r+n))},qd:function(e){return Qn.checkFramebufferStatus(e)},pd:function(e){Qn.clear(e)},od:function(e,t,n,r){Qn.clearColor(e,t,n,r)},nd:function(e){Qn.clearDepth(e)},md:function(e){Qn.clearStencil(e)},ld:function(e,t,n,r){Qn.colorMask(!!e,!!t,!!n,!!r)},kd:function(e){Qn.compileShader(Jt[e])},jd:function(e,t,n,r,i,a,f,o){Qn.compressedTexImage2D(e,t,n,r,i,a,o?Y.subarray(o,o+f):null)},id:function(e,t,n,r,i,a,f,o,u){Qn.compressedTexSubImage2D(e,t,n,r,i,a,f,u?Y.subarray(u,u+o):null)},hd:function(e,t,n,r,i,a,f,o){Qn.copyTexImage2D(e,t,n,r,i,a,f,o)},gd:function(e,t,n,r,i,a,f,o){Qn.copyTexSubImage2D(e,t,n,r,i,a,f,o)},fd:function(){var e=rn(Ht),t=Qn.createProgram();return t.name=e,Ht[e]=t,e},ed:function(e){var t=rn(Jt);return Jt[t]=Qn.createShader(e),t},dd:function(e){Qn.cullFace(e)},cd:function(e,t){for(var n=0;n<e;n++){var r=Q[t+4*n>>2],i=qt[r];i&&(Qn.deleteBuffer(i),i.name=0,qt[r]=null)}},bd:function(e,t){for(var n=0;n<e;++n){var r=Q[t+4*n>>2],i=Yt[r];i&&(Qn.deleteFramebuffer(i),i.name=0,Yt[r]=null)}},ad:function(e){if(e){var t=Ht[e];t?(Qn.deleteProgram(t),t.name=0,Ht[e]=null,Kt[e]=null):nn(1281)}},ga:function(e,t){for(var n=0;n<e;n++){var r=Q[t+4*n>>2],i=Zt[r];i&&(Qn.uf.deleteQueryEXT(i),Zt[r]=null)}},$c:function(e,t){for(var n=0;n<e;n++){var r=Q[t+4*n>>2],i=Xt[r];i&&(Qn.deleteRenderbuffer(i),i.name=0,Xt[r]=null)}},_c:function(e){if(e){var t=Jt[e];t?(Qn.deleteShader(t),Jt[e]=null):nn(1281)}},Zc:function(e,t){for(var n=0;n<e;n++){var r=Q[t+4*n>>2],i=Vt[r];i&&(Qn.deleteTexture(i),i.name=0,Vt[r]=null)}},Ld:function(e,t){for(var n=0;n<e;n++){var r=Q[t+4*n>>2];Qn.deleteVertexArray($t[r]),$t[r]=null}},Yc:function(e){Qn.depthFunc(e)},Xc:function(e){Qn.depthMask(!!e)},Wc:function(e,t){Qn.depthRange(e,t)},Vc:function(e,t){Qn.detachShader(Ht[e],Jt[t])},Uc:function(e){Qn.disable(e)},Tc:function(e){Qn.disableVertexAttribArray(e)},Sc:function(e,t,n){Qn.drawArrays(e,t,n)},Hd:function(e,t,n,r){Qn.drawArraysInstanced(e,t,n,r)},Id:function(e,t){for(var n=un[e],r=0;r<e;r++)n[r]=Q[t+4*r>>2];Qn.drawBuffers(n)},Rc:function(e,t,n,r){Qn.drawElements(e,t,n,r)},Gd:function(e,t,n,r,i){Qn.drawElementsInstanced(e,t,n,r,i)},Qc:function(e){Qn.enable(e)},Pc:function(e){Qn.enableVertexAttribArray(e)},da:function(e){Qn.uf.endQueryEXT(e)},Oc:function(){Qn.finish()},Nc:function(){Qn.flush()},Mc:function(e,t,n,r){Qn.framebufferRenderbuffer(e,t,n,Xt[r])},Lc:function(e,t,n,r,i){Qn.framebufferTexture2D(e,t,n,Vt[r],i)},Kc:function(e){Qn.frontFace(e)},Jc:function(e,t){cn(e,t,"createBuffer",qt)},Hc:function(e,t){cn(e,t,"createFramebuffer",Yt)},ha:function(e,t){for(var n=0;n<e;n++){var r=Qn.uf.createQueryEXT();if(!r){for(nn(1282);n<e;)Q[t+4*n++>>2]=0;break}var i=rn(Zt);r.name=i,Zt[i]=r,Q[t+4*n>>2]=i}},Gc:function(e,t){cn(e,t,"createRenderbuffer",Xt)},Fc:function(e,t){cn(e,t,"createTexture",Vt)},Kd:function(e,t){cn(e,t,"createVertexArray",$t)},Ic:function(e){Qn.generateMipmap(e)},Ec:function(e,t,n,r,i,a,f){sn("getActiveAttrib",e,t,n,r,i,a,f)},Dc:function(e,t,n,r,i,a,f){sn("getActiveUniform",e,t,n,r,i,a,f)},Cc:function(e,t,n,r){var i=(e=Qn.getAttachedShaders(Ht[e])).length;for(i>t&&(i=t),Q[n>>2]=i,t=0;t<i;++t)Q[r+4*t>>2]=Jt.indexOf(e[t])},Bc:function(e,t){return Qn.getAttribLocation(Ht[e],R(t))},Ac:function(e,t){dn(e,t,4)},zc:function(e,t,n){n?Q[n>>2]=Qn.getBufferParameter(e,t):nn(1281)},yc:function(){var e=Qn.getError()||fn;return fn=0,e},xc:function(e,t){dn(e,t,2)},wc:function(e,t,n,r){((e=Qn.getFramebufferAttachmentParameter(e,t,n))instanceof WebGLRenderbuffer||e instanceof WebGLTexture)&&(e=0|e.name),Q[r>>2]=e},vc:function(e,t){dn(e,t,0)},tc:function(e,t,n,r){null===(e=Qn.getProgramInfoLog(Ht[e]))&&(e="(unknown error)"),t=0<t&&r?B(e,r,t):0,n&&(Q[n>>2]=t)},uc:function(e,t,n){if(n)if(e>=Wt)nn(1281);else{var r=Kt[e];if(r)if(35716==t)null===(e=Qn.getProgramInfoLog(Ht[e]))&&(e="(unknown error)"),Q[n>>2]=e.length+1;else if(35719==t)Q[n>>2]=r.Xg;else if(35722==t){if(-1==r.jg){e=Ht[e];var i=Qn.getProgramParameter(e,35721);for(t=r.jg=0;t<i;++t)r.jg=Math.max(r.jg,Qn.getActiveAttrib(e,t).name.length+1)}Q[n>>2]=r.jg}else if(35381==t){if(-1==r.kg)for(e=Ht[e],i=Qn.getProgramParameter(e,35382),t=r.kg=0;t<i;++t)r.kg=Math.max(r.kg,Qn.getActiveUniformBlockName(e,t).length+1);Q[n>>2]=r.kg}else Q[n>>2]=Qn.getProgramParameter(Ht[e],t);else nn(1282)}else nn(1281)},Od:function(e,t,n){n?ln(n,"boolean"==typeof(e=Qn.uf.getQueryObjectEXT(Zt[e],t))?e?1:0:e):nn(1281)},Qd:function(e,t,n){var r;n?(r="boolean"==typeof(e=Qn.uf.getQueryObjectEXT(Zt[e],t))?e?1:0:e,Q[n>>2]=r):nn(1281)},Nd:function(e,t,n){n?ln(n,"boolean"==typeof(e=Qn.uf.getQueryObjectEXT(Zt[e],t))?e?1:0:e):nn(1281)},Pd:function(e,t,n){var r;n?(r="boolean"==typeof(e=Qn.uf.getQueryObjectEXT(Zt[e],t))?e?1:0:e,Q[n>>2]=r):nn(1281)},Rd:function(e,t,n){n?Q[n>>2]=Qn.uf.getQueryEXT(e,t):nn(1281)},sc:function(e,t,n){n?Q[n>>2]=Qn.getRenderbufferParameter(e,t):nn(1281)},qc:function(e,t,n,r){null===(e=Qn.getShaderInfoLog(Jt[e]))&&(e="(unknown error)"),t=0<t&&r?B(e,r,t):0,n&&(Q[n>>2]=t)},pc:function(e,t,n,r){e=Qn.getShaderPrecisionFormat(e,t),Q[n>>2]=e.rangeMin,Q[n+4>>2]=e.rangeMax,Q[r>>2]=e.precision},oc:function(e,t,n,r){(e=Qn.getShaderSource(Jt[e]))&&(t=0<t&&r?B(e,r,t):0,n&&(Q[n>>2]=t))},rc:function(e,t,n){n?35716==t?(null===(e=Qn.getShaderInfoLog(Jt[e]))&&(e="(unknown error)"),Q[n>>2]=e?e.length+1:0):35720==t?(e=Qn.getShaderSource(Jt[e]),Q[n>>2]=e?e.length+1:0):Q[n>>2]=Qn.getShaderParameter(Jt[e],t):nn(1281)},nc:function(e){if(en[e])return en[e];switch(e){case 7939:var t=Qn.getSupportedExtensions()||[];t=hn((t=t.concat(t.map((function(e){return"GL_"+e})))).join(" "));break;case 7936:case 7937:case 37445:case 37446:(t=Qn.getParameter(e))||nn(1280),t=hn(t);break;case 7938:t=hn("OpenGL ES 2.0 ("+Qn.getParameter(7938)+")");break;case 35724:var n=(t=Qn.getParameter(35724)).match(/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/);null!==n&&(3==n[1].length&&(n[1]+="0"),t="OpenGL ES GLSL ES "+n[1]+" ("+t+")"),t=hn(t);break;default:return nn(1280),0}return en[e]=t},mc:function(e,t,n){n?$[n>>2]=Qn.getTexParameter(e,t):nn(1281)},lc:function(e,t,n){n?Q[n>>2]=Qn.getTexParameter(e,t):nn(1281)},ic:function(e,t){var n=0;if("]"==(t=R(t))[t.length-1]){var r=t.lastIndexOf("[");n="]"!=t[r+1]?parseInt(t.slice(r+1)):0,t=t.slice(0,r)}return(e=Kt[e]&&Kt[e].Nh[t])&&0<=n&&n<e[0]?e[1]+n:-1},kc:function(e,t,n){pn(e,t,n,2)},jc:function(e,t,n){pn(e,t,n,0)},fc:function(e,t,n){n?Q[n>>2]=Qn.getVertexAttribOffset(e,t):nn(1281)},hc:function(e,t,n){mn(e,t,n,2)},gc:function(e,t,n){mn(e,t,n,5)},ec:function(e,t){Qn.hint(e,t)},dc:function(e){return(e=qt[e])?Qn.isBuffer(e):0},cc:function(e){return Qn.isEnabled(e)},bc:function(e){return(e=Yt[e])?Qn.isFramebuffer(e):0},ac:function(e){return(e=Ht[e])?Qn.isProgram(e):0},fa:function(e){return(e=Zt[e])?Qn.uf.isQueryEXT(e):0},$b:function(e){return(e=Xt[e])?Qn.isRenderbuffer(e):0},_b:function(e){return(e=Jt[e])?Qn.isShader(e):0},Zb:function(e){return(e=Vt[e])?Qn.isTexture(e):0},Jd:function(e){return(e=$t[e])?Qn.isVertexArray(e):0},Yb:function(e){Qn.lineWidth(e)},Xb:function(e){Qn.linkProgram(Ht[e]);for(var t=Ht[e],n=(e=Kt[e]={Nh:{},Xg:0,jg:-1,kg:-1}).Nh,r=Qn.getProgramParameter(t,35718),i=0;i<r;++i){var a=Qn.getActiveUniform(t,i),f=a.name;e.Xg=Math.max(e.Xg,f.length+1),"]"==f.slice(-1)&&(f=f.slice(0,f.lastIndexOf("[")));var o=Qn.getUniformLocation(t,f);if(o){var u=rn(Qt);n[f]=[a.size,u],Qt[u]=o;for(var c=1;c<a.size;++c)o=Qn.getUniformLocation(t,f+"["+c+"]"),u=rn(Qt),Qt[u]=o}}},Wb:function(e,t){3317==e&&(tn=t),Qn.pixelStorei(e,t)},Vb:function(e,t){Qn.polygonOffset(e,t)},ca:function(e,t){Qn.uf.queryCounterEXT(Zt[e],t)},Ub:function(e,t,n,r,i,a,f){(f=gn(a,i,n,r,f))?Qn.readPixels(e,t,n,r,i,a,f):nn(1280)},Tb:function(){},Sb:function(e,t,n,r){Qn.renderbufferStorage(e,t,n,r)},Rb:function(e,t){Qn.sampleCoverage(e,!!t)},Qb:function(e,t,n,r){Qn.scissor(e,t,n,r)},Pb:function(){nn(1280)},Ob:function(e,t,n,r){for(var i="",a=0;a<t;++a){var f=r?Q[r+4*a>>2]:-1;i+=R(Q[n+4*a>>2],0>f?void 0:f)}Qn.shaderSource(Jt[e],i)},Nb:function(e,t,n){Qn.stencilFunc(e,t,n)},Mb:function(e,t,n,r){Qn.stencilFuncSeparate(e,t,n,r)},Lb:function(e){Qn.stencilMask(e)},Kb:function(e,t){Qn.stencilMaskSeparate(e,t)},Jb:function(e,t,n){Qn.stencilOp(e,t,n)},Ib:function(e,t,n,r){Qn.stencilOpSeparate(e,t,n,r)},Hb:function(e,t,n,r,i,a,f,o,u){Qn.texImage2D(e,t,n,r,i,a,f,o,u?gn(o,f,r,i,u):null)},Gb:function(e,t,n){Qn.texParameterf(e,t,n)},Fb:function(e,t,n){Qn.texParameterf(e,t,$[n>>2])},Eb:function(e,t,n){Qn.texParameteri(e,t,n)},Db:function(e,t,n){Qn.texParameteri(e,t,Q[n>>2])},Cb:function(e,t,n,r,i,a,f,o,u){var c=null;u&&(c=gn(o,f,i,a,u)),Qn.texSubImage2D(e,t,n,r,i,a,f,o,c)},Bb:function(e,t){Qn.uniform1f(Qt[e],t)},Ab:function(e,t,n){if(288>=t)for(var r=wn[t-1],i=0;i<t;++i)r[i]=$[n+4*i>>2];else r=$.subarray(n>>2,n+4*t>>2);Qn.uniform1fv(Qt[e],r)},zb:function(e,t){Qn.uniform1i(Qt[e],t)},yb:function(e,t,n){if(288>=t)for(var r=yn[t-1],i=0;i<t;++i)r[i]=Q[n+4*i>>2];else r=Q.subarray(n>>2,n+4*t>>2);Qn.uniform1iv(Qt[e],r)},xb:function(e,t,n){Qn.uniform2f(Qt[e],t,n)},wb:function(e,t,n){if(144>=t)for(var r=wn[2*t-1],i=0;i<2*t;i+=2)r[i]=$[n+4*i>>2],r[i+1]=$[n+(4*i+4)>>2];else r=$.subarray(n>>2,n+8*t>>2);Qn.uniform2fv(Qt[e],r)},vb:function(e,t,n){Qn.uniform2i(Qt[e],t,n)},ub:function(e,t,n){if(144>=t)for(var r=yn[2*t-1],i=0;i<2*t;i+=2)r[i]=Q[n+4*i>>2],r[i+1]=Q[n+(4*i+4)>>2];else r=Q.subarray(n>>2,n+8*t>>2);Qn.uniform2iv(Qt[e],r)},tb:function(e,t,n,r){Qn.uniform3f(Qt[e],t,n,r)},sb:function(e,t,n){if(96>=t)for(var r=wn[3*t-1],i=0;i<3*t;i+=3)r[i]=$[n+4*i>>2],r[i+1]=$[n+(4*i+4)>>2],r[i+2]=$[n+(4*i+8)>>2];else r=$.subarray(n>>2,n+12*t>>2);Qn.uniform3fv(Qt[e],r)},rb:function(e,t,n,r){Qn.uniform3i(Qt[e],t,n,r)},qb:function(e,t,n){if(96>=t)for(var r=yn[3*t-1],i=0;i<3*t;i+=3)r[i]=Q[n+4*i>>2],r[i+1]=Q[n+(4*i+4)>>2],r[i+2]=Q[n+(4*i+8)>>2];else r=Q.subarray(n>>2,n+12*t>>2);Qn.uniform3iv(Qt[e],r)},pb:function(e,t,n,r,i){Qn.uniform4f(Qt[e],t,n,r,i)},ob:function(e,t,n){if(72>=t){var r=wn[4*t-1];n>>=2;for(var i=0;i<4*t;i+=4){var a=n+i;r[i]=$[a],r[i+1]=$[a+1],r[i+2]=$[a+2],r[i+3]=$[a+3]}}else r=$.subarray(n>>2,n+16*t>>2);Qn.uniform4fv(Qt[e],r)},nb:function(e,t,n,r,i){Qn.uniform4i(Qt[e],t,n,r,i)},mb:function(e,t,n){if(72>=t)for(var r=yn[4*t-1],i=0;i<4*t;i+=4)r[i]=Q[n+4*i>>2],r[i+1]=Q[n+(4*i+4)>>2],r[i+2]=Q[n+(4*i+8)>>2],r[i+3]=Q[n+(4*i+12)>>2];else r=Q.subarray(n>>2,n+16*t>>2);Qn.uniform4iv(Qt[e],r)},lb:function(e,t,n,r){if(72>=t)for(var i=wn[4*t-1],a=0;a<4*t;a+=4)i[a]=$[r+4*a>>2],i[a+1]=$[r+(4*a+4)>>2],i[a+2]=$[r+(4*a+8)>>2],i[a+3]=$[r+(4*a+12)>>2];else i=$.subarray(r>>2,r+16*t>>2);Qn.uniformMatrix2fv(Qt[e],!!n,i)},kb:function(e,t,n,r){if(32>=t)for(var i=wn[9*t-1],a=0;a<9*t;a+=9)i[a]=$[r+4*a>>2],i[a+1]=$[r+(4*a+4)>>2],i[a+2]=$[r+(4*a+8)>>2],i[a+3]=$[r+(4*a+12)>>2],i[a+4]=$[r+(4*a+16)>>2],i[a+5]=$[r+(4*a+20)>>2],i[a+6]=$[r+(4*a+24)>>2],i[a+7]=$[r+(4*a+28)>>2],i[a+8]=$[r+(4*a+32)>>2];else i=$.subarray(r>>2,r+36*t>>2);Qn.uniformMatrix3fv(Qt[e],!!n,i)},jb:function(e,t,n,r){if(18>=t){var i=wn[16*t-1];r>>=2;for(var a=0;a<16*t;a+=16){var f=r+a;i[a]=$[f],i[a+1]=$[f+1],i[a+2]=$[f+2],i[a+3]=$[f+3],i[a+4]=$[f+4],i[a+5]=$[f+5],i[a+6]=$[f+6],i[a+7]=$[f+7],i[a+8]=$[f+8],i[a+9]=$[f+9],i[a+10]=$[f+10],i[a+11]=$[f+11],i[a+12]=$[f+12],i[a+13]=$[f+13],i[a+14]=$[f+14],i[a+15]=$[f+15]}}else i=$.subarray(r>>2,r+64*t>>2);Qn.uniformMatrix4fv(Qt[e],!!n,i)},ib:function(e){Qn.useProgram(Ht[e])},hb:function(e){Qn.validateProgram(Ht[e])},gb:function(e,t){Qn.vertexAttrib1f(e,t)},fb:function(e,t){Qn.vertexAttrib1f(e,$[t>>2])},eb:function(e,t,n){Qn.vertexAttrib2f(e,t,n)},db:function(e,t){Qn.vertexAttrib2f(e,$[t>>2],$[t+4>>2])},cb:function(e,t,n,r){Qn.vertexAttrib3f(e,t,n,r)},bb:function(e,t){Qn.vertexAttrib3f(e,$[t>>2],$[t+4>>2],$[t+8>>2])},ab:function(e,t,n,r,i){Qn.vertexAttrib4f(e,t,n,r,i)},$a:function(e,t){Qn.vertexAttrib4f(e,$[t>>2],$[t+4>>2],$[t+8>>2],$[t+12>>2])},Fd:function(e,t){Qn.vertexAttribDivisor(e,t)},_a:function(e,t,n,r,i,a){Qn.vertexAttribPointer(e,t,n,!!r,i,a)},Za:function(e,t,n,r){Qn.viewport(e,t,n,r)},ka:function(){return"undefined"!=typeof SharedArrayBuffer},G:function(){return 0|je},R:function(){return 0|Ee},f:function(e,t){throw vr(e,t||1),"longjmp"},ja:function(e,t,n){Y.copyWithin(e,t,t+n)},ma:function(e,t,n){bn.length=t,n>>=3;for(var r=0;r<t;r++)bn[r]=Z[n+r];return(0>e?_e[-e-1]:Kn[e]).apply(null,bn)},ra:function(){he("OOM")},na:function(e,t,n){return An(e)?xn(e,t,n):En(e,t,n)},Q:function(){},la:function(){},oa:function(e,t){var n={};if(t>>=2,n.alpha=!!Q[t],n.depth=!!Q[t+1],n.stencil=!!Q[t+2],n.antialias=!!Q[t+3],n.premultipliedAlpha=!!Q[t+4],n.preserveDrawingBuffer=!!Q[t+5],n.powerPreference=Sn[Q[t+6]],n.failIfMajorPerformanceCaveat=!!Q[t+7],n.wi=Q[t+8],n.pj=Q[t+9],n.qh=Q[t+10],n.hi=Q[t+11],n.uj=Q[t+12],n.vj=Q[t+13],!(e=An(e))||n.hi)n=0;else if(e=e.getContext("webgl",n)){t=ir(8),Q[t+4>>2]=0|xe;var r={jj:t,attributes:n,version:n.wi,qg:e};e.canvas&&(e.canvas.rg=r),(void 0===n.qh||n.qh)&&an(r),n=t}else n=0;return n},sa:function(e,t){var n=0;return Tn().forEach((function(r,i){var a=t+n;Q[e+4*i>>2]=a,W(r,a),n+=r.length+1})),0},ta:function(e,t){var n=Tn();Q[e>>2]=n.length;var r=0;return n.forEach((function(e){r+=e.length+1})),Q[t>>2]=r,0},D:function(e){$r(e)},H:Dn,U:Cn,xa:Fn,Va:On,M:In,B:Ln,d:function(){return 0|S},y:Rn,v:function(e,t,n,r,i,a,f){if((t=Ft(e,t)).ef)return-6;e=t.port;var o=t.hf;if(t=!1,n&&r){var u;if(1&f||!(u=Tt(o))){if(8&f)return-2}else o=u;(n=B(o,n,r))+1>=r&&(t=!0)}return i&&a&&(n=B(""+e,i,a))+1>=a&&(t=!0),t?-12:0},l:function(e){var t=Date.now();return Q[e>>2]=t/1e3|0,Q[e+4>>2]=t%1e3*1e3|0,0},r:Le,ia:function(){Fe.pi()},ba:Ur,j:Lr,h:Fr,C:Gr,P:Rr,_:Wr,O:Nr,Xa:Xr,Wa:Vr,k:Or,w:Pr,J:Br,g:Ir,N:zr,Sa:Hr,Z:qr,Ya:Yr,q:Ne,a:M||n.wasmMemory,T:function(e){Re();var t=new Date(Q[e+20>>2]+1900,Q[e+16>>2],Q[e+12>>2],Q[e+8>>2],Q[e+4>>2],Q[e>>2],0),n=Q[e+32>>2],r=t.getTimezoneOffset(),i=new Date(t.getFullYear(),0,1),a=new Date(t.getFullYear(),6,1).getTimezoneOffset(),f=i.getTimezoneOffset(),o=Math.min(f,a);return 0>n?Q[e+32>>2]=Number(a!=f&&o==r):0<n!=(o==r)&&(a=Math.max(f,a),t.setTime(t.getTime()+6e4*((0<n?o:a)-r))),Q[e+24>>2]=t.getDay(),Q[e+28>>2]=(t.getTime()-i.getTime())/864e5|0,t.getTime()/1e3|0},Ra:function(e){return e===Fe.Ph?(A("Main thread (id="+e+") cannot be canceled!"),71):e?Q[e+12>>2]!==e?(A("pthread_cancel attempted on thread "+e+", which does not point to a valid thread, or does not exist anymore!"),71):(Atomics.compareExchange(J,e>>2,0,2),p?postMessage({cmd:"cancelThread",thread:e}):Te(e),0):(A("pthread_cancel attempted on a null thread pointer!"),71)},S:function(e){var t=Fe.Dg.pop();e&&t()},L:function(e,t){Fe.Dg.push((function(){te.get(e)(t)}))},n:function(e,t,n,r){if("undefined"==typeof SharedArrayBuffer)return A("Current environment does not support SharedArrayBuffer, pthreads are not available!"),6;if(!e)return A("pthread_create called with a null thread pointer!"),28;var i=[];if(p&&0===i.length)return xr(687865856,e,t,n,r);var a=0,f=0,o=0,u=0;if(t){var c=Q[t>>2];if(c+=81920,a=Q[t+8>>2],f=0!==Q[t+12>>2],0===Q[t+16>>2]){var s=Q[t+20>>2],l=Q[t+24>>2];o=t+20,u=t+24;var d=Fe.Mg?Fe.Mg:0|xe;if(o||u)if(d)if(Q[d+12>>2]!==d)A("pthread_getschedparam attempted on thread "+d+", which does not point to a valid thread, or does not exist anymore!");else{var h=Atomics.load(J,d+128>>2);d=Atomics.load(J,d+132>>2),o&&(Q[o>>2]=h),u&&(Q[u>>2]=d)}else A("pthread_getschedparam called with a null thread pointer!");o=Q[t+20>>2],u=Q[t+24>>2],Q[t+20>>2]=s,Q[t+24>>2]=l}else o=Q[t+20>>2],u=Q[t+24>>2]}else c=2097152;for((t=0==a)?a=fr(16,c):O(0<(a-=c)),s=ir(232),l=0;58>l;++l)J[(s>>2)+l]=0;return Q[e>>2]=s,Q[s+12>>2]=s,Q[(e=s+156)>>2]=e,n={Rf:a,cg:c,Kg:t,Ih:o,Jh:u,detached:f,Mi:n,$f:s,Fi:0|xe,Tf:r,Vi:i},p?(n.$i="spawnThread",postMessage(n,i)):Nn(n),0},o:function(e,t){return Un(e,t)},i:Bn,e:function(e){S=0|e},E:function(){return 0},m:function(e,t,n,r){function i(e,t,n){for(e="number"==typeof e?e.toString():e||"";e.length<t;)e=n[0]+e;return e}function a(e,t){return i(e,t,"0")}function f(e,t){function n(e){return 0>e?-1:0<e?1:0}var r;return 0===(r=n(e.getFullYear()-t.getFullYear()))&&0===(r=n(e.getMonth()-t.getMonth()))&&(r=n(e.getDate()-t.getDate())),r}function o(e){switch(e.getDay()){case 0:return new Date(e.getFullYear()-1,11,29);case 1:return e;case 2:return new Date(e.getFullYear(),0,3);case 3:return new Date(e.getFullYear(),0,2);case 4:return new Date(e.getFullYear(),0,1);case 5:return new Date(e.getFullYear()-1,11,31);case 6:return new Date(e.getFullYear()-1,11,30)}}function u(e){e=Hn(new Date(e.rf+1900,0,1),e.Gg);var t=new Date(e.getFullYear()+1,0,4),n=o(new Date(e.getFullYear(),0,4));return t=o(t),0>=f(n,e)?0>=f(t,e)?e.getFullYear()+1:e.getFullYear():e.getFullYear()-1}var c=Q[r+40>>2];for(var s in r={Ti:Q[r>>2],Si:Q[r+4>>2],Eg:Q[r+8>>2],pg:Q[r+12>>2],dg:Q[r+16>>2],rf:Q[r+20>>2],Fg:Q[r+24>>2],Gg:Q[r+28>>2],yj:Q[r+32>>2],Ri:Q[r+36>>2],Ui:c?R(c):""},n=R(n),c={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"})n=n.replace(new RegExp(s,"g"),c[s]);var l="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),d="January February March April May June July August September October November December".split(" ");for(s in c={"%a":function(e){return l[e.Fg].substring(0,3)},"%A":function(e){return l[e.Fg]},"%b":function(e){return d[e.dg].substring(0,3)},"%B":function(e){return d[e.dg]},"%C":function(e){return a((e.rf+1900)/100|0,2)},"%d":function(e){return a(e.pg,2)},"%e":function(e){return i(e.pg,2," ")},"%g":function(e){return u(e).toString().substring(2)},"%G":function(e){return u(e)},"%H":function(e){return a(e.Eg,2)},"%I":function(e){return 0==(e=e.Eg)?e=12:12<e&&(e-=12),a(e,2)},"%j":function(e){return a(e.pg+Gn(zn(e.rf+1900)?Wn:qn,e.dg-1),3)},"%m":function(e){return a(e.dg+1,2)},"%M":function(e){return a(e.Si,2)},"%n":function(){return"\n"},"%p":function(e){return 0<=e.Eg&&12>e.Eg?"AM":"PM"},"%S":function(e){return a(e.Ti,2)},"%t":function(){return"\t"},"%u":function(e){return e.Fg||7},"%U":function(e){var t=new Date(e.rf+1900,0,1),n=0===t.getDay()?t:Hn(t,7-t.getDay());return 0>f(n,e=new Date(e.rf+1900,e.dg,e.pg))?a(Math.ceil((31-n.getDate()+(Gn(zn(e.getFullYear())?Wn:qn,e.getMonth()-1)-31)+e.getDate())/7),2):0===f(n,t)?"01":"00"},"%V":function(e){var t=new Date(e.rf+1901,0,4),n=o(new Date(e.rf+1900,0,4));t=o(t);var r=Hn(new Date(e.rf+1900,0,1),e.Gg);return 0>f(r,n)?"53":0>=f(t,r)?"01":a(Math.ceil((n.getFullYear()<e.rf+1900?e.Gg+32-n.getDate():e.Gg+1-n.getDate())/7),2)},"%w":function(e){return e.Fg},"%W":function(e){var t=new Date(e.rf,0,1),n=1===t.getDay()?t:Hn(t,0===t.getDay()?1:7-t.getDay()+1);return 0>f(n,e=new Date(e.rf+1900,e.dg,e.pg))?a(Math.ceil((31-n.getDate()+(Gn(zn(e.getFullYear())?Wn:qn,e.getMonth()-1)-31)+e.getDate())/7),2):0===f(n,t)?"01":"00"},"%y":function(e){return(e.rf+1900).toString().substring(2)},"%Y":function(e){return e.rf+1900},"%z":function(e){var t=0<=(e=e.Ri);return e=Math.abs(e)/60,(t?"+":"-")+String("0000"+(e/60*100+e%60)).slice(-4)},"%Z":function(e){return e.Ui},"%%":function(){return"%"}})0<=n.indexOf(s)&&(n=n.replace(new RegExp(s,"g"),c[s](r)));return(s=er(n,!1)).length>t?0:(H.set(s,e),s.length-1)},x:Yn,s:function(e){var t=Date.now()/1e3|0;return e&&(Q[e>>2]=t),t}};!function(){function e(e,t){n.asm=e.exports,te=n.asm.Sd,T=t,p||de()}function t(t){e(t.instance,t.module)}function r(e){return ye().then((function(e){return WebAssembly.instantiate(e,a)})).then(e,(function(e){A("failed to asynchronously prepare wasm: "+e),he(e)}))}var a={a:tr};if(p||le(),n.instantiateWasm)try{return n.instantiateWasm(a,e)}catch(e){return A("Module.instantiateWasm callback failed with error: "+e),!1}(E||"function"!=typeof WebAssembly.instantiateStreaming||me()||pe("file://")||"function"!=typeof fetch?r(t):fetch(ge,{credentials:"same-origin"}).then((function(e){return WebAssembly.instantiateStreaming(e,a).then(t,(function(e){return A("wasm streaming compile failed: "+e),A("falling back to ArrayBuffer instantiation"),r(t)}))}))).catch(i)}();var nr=n.___wasm_call_ctors=function(){return(nr=n.___wasm_call_ctors=n.asm.Td).apply(null,arguments)},rr=n._free=function(){return(rr=n._free=n.asm.Ud).apply(null,arguments)},ir=n._malloc=function(){return(ir=n._malloc=n.asm.Vd).apply(null,arguments)},ar=n.___errno_location=function(){return(ar=n.___errno_location=n.asm.Wd).apply(null,arguments)};n._fflush=function(){return(n._fflush=n.asm.Xd).apply(null,arguments)};var fr=n._memalign=function(){return(fr=n._memalign=n.asm.Yd).apply(null,arguments)},or=n._ntohs=function(){return(or=n._ntohs=n.asm.Zd).apply(null,arguments)},ur=n._htons=function(){return(ur=n._htons=n.asm._d).apply(null,arguments)},cr=n._main=function(){return(cr=n._main=n.asm.$d).apply(null,arguments)},sr=n._emscripten_get_global_libc=function(){return(sr=n._emscripten_get_global_libc=n.asm.ae).apply(null,arguments)};n.___em_js__initPthreadsJS=function(){return(n.___em_js__initPthreadsJS=n.asm.be).apply(null,arguments)};var lr=n._htonl=function(){return(lr=n._htonl=n.asm.ce).apply(null,arguments)},dr=n._memset=function(){return(dr=n._memset=n.asm.de).apply(null,arguments)},hr=n.__get_tzname=function(){return(hr=n.__get_tzname=n.asm.ee).apply(null,arguments)},pr=n.__get_daylight=function(){return(pr=n.__get_daylight=n.asm.fe).apply(null,arguments)},mr=n.__get_timezone=function(){return(mr=n.__get_timezone=n.asm.ge).apply(null,arguments)},gr=n.stackSave=function(){return(gr=n.stackSave=n.asm.he).apply(null,arguments)},wr=n.stackRestore=function(){return(wr=n.stackRestore=n.asm.ie).apply(null,arguments)},yr=n.stackAlloc=function(){return(yr=n.stackAlloc=n.asm.je).apply(null,arguments)},vr=n._setThrew=function(){return(vr=n._setThrew=n.asm.ke).apply(null,arguments)};n._emscripten_main_browser_thread_id=function(){return(n._emscripten_main_browser_thread_id=n.asm.le).apply(null,arguments)};var br=n.___pthread_tsd_run_dtors=function(){return(br=n.___pthread_tsd_run_dtors=n.asm.me).apply(null,arguments)},_r=n._emscripten_main_thread_process_queued_calls=function(){return(_r=n._emscripten_main_thread_process_queued_calls=n.asm.ne).apply(null,arguments)};n._emscripten_current_thread_process_queued_calls=function(){return(n._emscripten_current_thread_process_queued_calls=n.asm.oe).apply(null,arguments)};var kr=n._emscripten_register_main_browser_thread_id=function(){return(kr=n._emscripten_register_main_browser_thread_id=n.asm.pe).apply(null,arguments)},Ar=n._do_emscripten_dispatch_to_thread=function(){return(Ar=n._do_emscripten_dispatch_to_thread=n.asm.qe).apply(null,arguments)};n._emscripten_async_run_in_main_thread=function(){return(n._emscripten_async_run_in_main_thread=n.asm.re).apply(null,arguments)},n._emscripten_sync_run_in_main_thread=function(){return(n._emscripten_sync_run_in_main_thread=n.asm.se).apply(null,arguments)},n._emscripten_sync_run_in_main_thread_0=function(){return(n._emscripten_sync_run_in_main_thread_0=n.asm.te).apply(null,arguments)},n._emscripten_sync_run_in_main_thread_1=function(){return(n._emscripten_sync_run_in_main_thread_1=n.asm.ue).apply(null,arguments)},n._emscripten_sync_run_in_main_thread_2=function(){return(n._emscripten_sync_run_in_main_thread_2=n.asm.ve).apply(null,arguments)},n._emscripten_sync_run_in_main_thread_xprintf_varargs=function(){return(n._emscripten_sync_run_in_main_thread_xprintf_varargs=n.asm.we).apply(null,arguments)},n._emscripten_sync_run_in_main_thread_3=function(){return(n._emscripten_sync_run_in_main_thread_3=n.asm.xe).apply(null,arguments)};var xr=n._emscripten_sync_run_in_main_thread_4=function(){return(xr=n._emscripten_sync_run_in_main_thread_4=n.asm.ye).apply(null,arguments)};n._emscripten_sync_run_in_main_thread_5=function(){return(n._emscripten_sync_run_in_main_thread_5=n.asm.ze).apply(null,arguments)},n._emscripten_sync_run_in_main_thread_6=function(){return(n._emscripten_sync_run_in_main_thread_6=n.asm.Ae).apply(null,arguments)},n._emscripten_sync_run_in_main_thread_7=function(){return(n._emscripten_sync_run_in_main_thread_7=n.asm.Be).apply(null,arguments)};var Er=n._emscripten_run_in_main_runtime_thread_js=function(){return(Er=n._emscripten_run_in_main_runtime_thread_js=n.asm.Ce).apply(null,arguments)},jr=n.__emscripten_call_on_thread=function(){return(jr=n.__emscripten_call_on_thread=n.asm.De).apply(null,arguments)};n._proxy_main=function(){return(n._proxy_main=n.asm.Ee).apply(null,arguments)},n._emscripten_tls_init=function(){return(n._emscripten_tls_init=n.asm.Fe).apply(null,arguments)},n.dynCall_ijiii=function(){return(n.dynCall_ijiii=n.asm.Ge).apply(null,arguments)};var Sr=n.dynCall_vijjjid=function(){return(Sr=n.dynCall_vijjjid=n.asm.He).apply(null,arguments)},Mr=n.dynCall_iiiijj=function(){return(Mr=n.dynCall_iiiijj=n.asm.Ie).apply(null,arguments)};n.dynCall_iiijiii=function(){return(n.dynCall_iiijiii=n.asm.Je).apply(null,arguments)},n.dynCall_jiiii=function(){return(n.dynCall_jiiii=n.asm.Ke).apply(null,arguments)},n.dynCall_jii=function(){return(n.dynCall_jii=n.asm.Le).apply(null,arguments)};var Tr=n.dynCall_iij=function(){return(Tr=n.dynCall_iij=n.asm.Me).apply(null,arguments)};n.dynCall_viiijj=function(){return(n.dynCall_viiijj=n.asm.Ne).apply(null,arguments)},n.dynCall_jij=function(){return(n.dynCall_jij=n.asm.Oe).apply(null,arguments)},n.dynCall_jiji=function(){return(n.dynCall_jiji=n.asm.Pe).apply(null,arguments)},n.dynCall_iiiji=function(){return(n.dynCall_iiiji=n.asm.Qe).apply(null,arguments)},n.dynCall_iiiiij=function(){return(n.dynCall_iiiiij=n.asm.Re).apply(null,arguments)},n.dynCall_jiiij=function(){return(n.dynCall_jiiij=n.asm.Se).apply(null,arguments)},n.dynCall_iiijjji=function(){return(n.dynCall_iiijjji=n.asm.Te).apply(null,arguments)},n.dynCall_iiiiiij=function(){return(n.dynCall_iiiiiij=n.asm.Ue).apply(null,arguments)},n.dynCall_jiiji=function(){return(n.dynCall_jiiji=n.asm.Ve).apply(null,arguments)},n.dynCall_viiiiijji=function(){return(n.dynCall_viiiiijji=n.asm.We).apply(null,arguments)},n.dynCall_viiiji=function(){return(n.dynCall_viiiji=n.asm.Xe).apply(null,arguments)},n.dynCall_viiiiji=function(){return(n.dynCall_viiiiji=n.asm.Ye).apply(null,arguments)},n.dynCall_jiiiii=function(){return(n.dynCall_jiiiii=n.asm.Ze).apply(null,arguments)},n.dynCall_jiii=function(){return(n.dynCall_jiii=n.asm._e).apply(null,arguments)},n.dynCall_jiiiiii=function(){return(n.dynCall_jiiiiii=n.asm.$e).apply(null,arguments)},n._ff_h264_cabac_tables=2116006;var Dr,Cr=n._main_thread_futex=17189696;function Fr(e,t,n){var r=gr();try{return te.get(e)(t,n)}catch(e){if(wr(r),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function Or(e,t){var n=gr();try{te.get(e)(t)}catch(e){if(wr(n),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function Ir(e,t,n,r,i){var a=gr();try{te.get(e)(t,n,r,i)}catch(e){if(wr(a),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function Pr(e,t,n){var r=gr();try{te.get(e)(t,n)}catch(e){if(wr(r),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function Lr(e,t){var n=gr();try{return te.get(e)(t)}catch(e){if(wr(n),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function Rr(e,t,n,r,i){var a=gr();try{return te.get(e)(t,n,r,i)}catch(e){if(wr(a),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function Nr(e,t,n,r,i,a,f,o,u){var c=gr();try{return te.get(e)(t,n,r,i,a,f,o,u)}catch(e){if(wr(c),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function Br(e,t,n,r){var i=gr();try{te.get(e)(t,n,r)}catch(e){if(wr(i),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function Ur(e){var t=gr();try{return te.get(e)()}catch(e){if(wr(t),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function zr(e,t,n,r,i,a){var f=gr();try{te.get(e)(t,n,r,i,a)}catch(e){if(wr(f),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function Gr(e,t,n,r){var i=gr();try{return te.get(e)(t,n,r)}catch(e){if(wr(i),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function Wr(e,t,n,r,i,a){var f=gr();try{return te.get(e)(t,n,r,i,a)}catch(e){if(wr(f),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function qr(e,t,n,r,i,a,f,o,u){var c=gr();try{te.get(e)(t,n,r,i,a,f,o,u)}catch(e){if(wr(c),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function Hr(e,t,n,r,i,a,f){var o=gr();try{te.get(e)(t,n,r,i,a,f)}catch(e){if(wr(o),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function Yr(e,t,n,r,i,a,f,o,u,c){var s=gr();try{Sr(e,t,n,r,i,a,f,o,u,c)}catch(e){if(wr(s),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function Xr(e,t,n,r,i,a,f,o){var u=gr();try{return Mr(e,t,n,r,i,a,f,o)}catch(e){if(wr(u),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function Vr(e,t,n,r){var i=gr();try{return Tr(e,t,n,r)}catch(e){if(wr(i),e!==e+0&&"longjmp"!==e)throw e;vr(1,0)}}function Qr(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}function Jr(e){function t(){if(!Dr&&(Dr=!0,n.calledRun=!0,!F)){if(n.noFSInit||Ke.gg.Tg||Ke.gg(),kt.root=Ke.jf(kt,{},null),ke(re),p||(Ke.Bh=!1,ke(ie)),r(n),n.onRuntimeInitialized&&n.onRuntimeInitialized(),Zr){var t=e,i=(t=t||[]).length+1,a=yr(4*(i+1));Q[a>>2]=G(u);for(var f=1;f<i;f++)Q[(a>>2)+f]=G(t[f-1]);Q[(a>>2)+i]=0,n._proxy_main(i,a)}if(!p){if(n.postRun)for("function"==typeof n.postRun&&(n.postRun=[n.postRun]);n.postRun.length;)t=n.postRun.shift(),fe.unshift(t);ke(fe)}}}if(e=e||o,!(0<ue)){if(!p){if(n.preRun)for("function"==typeof n.preRun&&(n.preRun=[n.preRun]);n.preRun.length;)oe();ke(ne)}0<ue||(n.setStatus?(n.setStatus("Running..."),setTimeout((function(){setTimeout((function(){n.setStatus("")}),1),t()}),1)):t())}}function $r(e,t){t&&j&&0===e||(j||(Fe.Oi(),p||(ke(ae),Ke.quit(),Fe.eh()),n.onExit&&n.onExit(e),F=!0),c(e,new Qr(e)))}if(n.ccall=P,n.cwrap=function(e,t,n,r){var i=(n=n||[]).every((function(e){return"number"===e}));return"string"!==t&&i&&!r?I(e):function(){return P(e,t,n,arguments)}},n.setValue=function(e,t,n){switch("*"===(n=n||"i8").charAt(n.length-1)&&(n="i32"),n){case"i1":case"i8":H[e>>0]=t;break;case"i16":X[e>>1]=t;break;case"i32":Q[e>>2]=t;break;case"i64":be=[t>>>0,(ve=t,1<=+Math.abs(ve)?0<ve?(0|Math.min(+Math.floor(ve/4294967296),4294967295))>>>0:~~+Math.ceil((ve-+(~~ve>>>0))/4294967296)>>>0:0)],Q[e>>2]=be[0],Q[e+4>>2]=be[1];break;case"float":$[e>>2]=t;break;case"double":Z[e>>3]=t;break;default:he("invalid type for setValue: "+n)}},n.UTF8ToString=R,n.stringToUTF8=B,n.lengthBytesUTF8=U,n.writeAsciiToMemory=W,n.FS=Ke,n.PThread=Fe,n.PThread=Fe,n._pthread_self=Bn,n.wasmMemory=M,n.ExitStatus=Qr,se=function e(){Dr||Jr(),Dr||(se=e)},n.run=Jr,n.preInit)for("function"==typeof n.preInit&&(n.preInit=[n.preInit]);0<n.preInit.length;)n.preInit.pop()();var Zr=!1;return n.noInitialRun&&(Zr=!1),p?Fe.ri():Jr(),t.ready}}();"object"==typeof exports&&"object"==typeof module?module.exports=createFFmpegCore:"function"==typeof define&&define.amd?define([],(function(){return createFFmpegCore})):"object"==typeof exports&&(exports.createFFmpegCore=createFFmpegCore);