summaryrefslogtreecommitdiff
path: root/Base/res/html/misc/mandelbrot-wasm.html
blob: c549fd7691c8d4b677a275e72700c755fa3a964b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
<html>
    <body>
        <span id="timer"></span>
        <canvas id="canvas" style="width: 240px; height: 160px"></canvas>
        <script>
            const height = 160;
            const width = 240;
            let colors = new Uint32Array([
                4284745472, 4284745472, 4284811264, 4284811264, 4284811264, 4284877057, 4284877057,
                4284877057, 4284942849, 4284942849, 4284942849, 4285008385, 4285008641, 4285008641,
                4285074177, 4285074434, 4285074434, 4285139970, 4285139970, 4285140226, 4285140226,
                4285205762, 4285206018, 4285206018, 4285271554, 4285271810, 4285271811, 4285337347,
                4285337347, 4285337603, 4285403139, 4285403139, 4285403395, 4285468931, 4285468931,
                4285469187, 4285469188, 4285534724, 4285534724, 4285534980, 4285600516, 4285600516,
                4285600772, 4285666308, 4285666308, 4285666308, 4285732101, 4285732101, 4285732101,
                4285797893, 4285797893, 4285797893, 4285863685, 4285863685, 4285863685, 4285863685,
                4285929478, 4285929478, 4285929478, 4285995270, 4285995270, 4285995270, 4286061062,
                4286061062, 4286061062, 4286126598, 4286126854, 4286126855, 4286192391, 4286192647,
                4286192647, 4286192647, 4286258183, 4286258439, 4286258439, 4286323975, 4286324231,
                4286324232, 4286389768, 4286390024, 4286390024, 4286455560, 4286455560, 4286455816,
                4286521352, 4286521352, 4286521608, 4286587145, 4286587145, 4286587145, 4286587401,
                4286652937, 4286652937, 4286653193, 4286718729, 4286718729, 4286718985, 4286784522,
                4286784522, 4286784522, 4286850314, 4286850314, 4286850314, 4286916106, 4286916106,
                4286916106, 4286916362, 4286981898, 4286981899, 4286981899, 4287047691, 4287047691,
                4287047691, 4287113483, 4287113483, 4287113483, 4287179019, 4287179275, 4287179276,
                4287244812, 4287245068, 4287245068, 4287310604, 4287310860, 4287310860, 4287310860,
                4287376396, 4287376652, 4287376653, 4287442189, 4287442445, 4287442445, 4287507981,
                4287508237, 4287508237, 4287573773, 4287573773, 4287574029, 4287639566, 4287639566,
                4287639822, 4287639822, 4287705358, 4287705358, 4287705614, 4287771150, 4287771150,
                4287771406, 4287836943, 4287836943, 4287837199, 4287902735, 4287902735, 4287902735,
                4287968527, 4287968527, 4287968527, 4288034319, 4288034319, 4288034320, 4288034576,
                4288100112, 4288100112, 4288100112, 4288165904, 4288165904, 4288165904, 4288231696,
                4288231696, 4288231697, 4288297233, 4288297489, 4288297489, 4288363025, 4288363281,
                4288363281, 4288363281, 4288429073, 4288429073, 4288429074, 4288494610, 4288494866,
                4288494866, 4288560402, 4288560658, 4288560658, 4288626194, 4288626450, 4288626450,
                4288691987, 4288691987, 4288692243, 4288757779, 4288757779, 4288758035, 4288758035,
                4288823571, 4288823571, 4288823827, 4288889363, 4288889364, 4288889620, 4288955156,
                4288955156, 4288955412, 4289020948, 4289020948, 4289020948, 4289086740, 4289086740,
                4289086741, 4289086997, 4289152533, 4289152533, 4289152533, 4289218325, 4289218325,
                4289218325, 4289284117, 4289284117, 4289284118, 4289349910, 4289349910, 4289349910,
                4289415446, 4289415702, 4289415702, 4289481238, 4289481494, 4289481494, 4289481495,
                4289547287, 4289547287, 4289547287, 4289612823, 4289613079, 4289613079, 4289678615,
                4289678871, 4289678871, 4289744407, 4289744408, 4289744664, 4289810200, 4289810200,
                4289810456, 4289810456, 4289875992, 4289876248, 4289876248, 4289941784, 4289941785,
                4289942041, 4290007577, 4290007577, 4290007833, 4290073369, 4290073369, 4290073625,
                4290139161, 4290139161, 4290139162, 4290204954, 4290204954, 4290204954, 4290205210,
                4290270746, 4290270746, 4290270746, 4290336538, 4290336538, 4290336539, 4290402331,
                4290402331, 4290402331, 4290468123, 4290468123, 4290468123, 4290533659, 4290533915,
                4290533915, 4290533915, 4290599708, 4290599708, 4290599708, 4290665500, 4290665500,
                4290665500, 4290731036, 4290731292, 4290731292, 4290796828, 4290797085, 4290797085,
                4290862621, 4290862621, 4290862877, 4290928413, 4290928413, 4290928669, 4290928669,
                4290994205, 4290994462, 4290994462, 4291059998, 4291059998, 4291060254, 4291125790,
                4291125790, 4291126046, 4291191582, 4291191582, 4291191839, 4291257375, 4291257375,
                4291257375, 4291257631, 4291323167, 4291323167, 4291323423, 4291388959, 4291388959,
                4291388959, 4291454752, 4291454752, 4291454752, 4291520544, 4291520544, 4291520544,
                4291520801, 4291520801, 4291520801, 4291520802, 4291586594, 4291586595, 4291586595,
                4291586851, 4291586852, 4291586852, 4291586853, 4291587109, 4291587109, 4291587110,
                4291652646, 4291652902, 4291652903, 4291652903, 4291653160, 4291653160, 4291653160,
                4291653161, 4291653417, 4291653418, 4291718954, 4291719210, 4291719211, 4291719211,
                4291719211, 4291719468, 4291719468, 4291719469, 4291719725, 4291719725, 4291719726,
                4291785262, 4291785519, 4291785519, 4291785519, 4291785776, 4291785776, 4291785776,
                4291785777, 4291786033, 4291786034, 4291851570, 4291851826, 4291851827, 4291851827,
                4291851828, 4291852084, 4291852084, 4291852085, 4291852341, 4291852341, 4291917878,
                4291917878, 4291918135, 4291918135, 4291918135, 4291918392, 4291918392, 4291918393,
                4291918393, 4291918649, 4291984186, 4291984186, 4291984442, 4291984443, 4291984443,
                4291984444, 4291984700, 4291984700, 4291984701, 4291984957, 4292050494, 4292050494,
                4292050494, 4292050751, 4292050751, 4292050751, 4292050752, 4292051008, 4292051009,
                4292051009, 4292051265, 4292116802, 4292116802, 4292116803, 4292117059, 4292117059,
                4292117060, 4292117316, 4292117317, 4292117317, 4292117317, 4292183110, 4292183110,
                4292183110, 4292183367, 4292183367, 4292183368, 4292183368, 4292183624, 4292183625,
                4292183625, 4292249418, 4292249418, 4292249418, 4292249419, 4292249675, 4292249675,
                4292249676, 4292249932, 4292249933, 4292249933, 4292315469, 4292315726, 4292315726,
                4292315727, 4292315983, 4292315983, 4292315984, 4292315984, 4292316240, 4292316241,
                4292316241, 4292382034, 4292382034, 4292382034, 4292382035, 4292382291, 4292382292,
                4292382292, 4292382548, 4292382549, 4292382549, 4292448085, 4292448342, 4292448342,
                4292448343, 4292448599, 4292448599, 4292448600, 4292448600, 4292448857, 4292448857,
                4292514393, 4292514394, 4292514650, 4292514650, 4292514651, 4292514907, 4292514908,
                4292514908, 4292514908, 4292515165, 4292580701, 4292580702, 4292580958, 4292580958,
                4292580959, 4292580959, 4292581215, 4292581216, 4292581216, 4292581473, 4292581473,
                4292647009, 4292647010, 4292647266, 4292647267, 4292647267, 4292647523, 4292647524,
                4292647524, 4292647524, 4292647781, 4292713317, 4292713318, 4292713574, 4292713574,
                4292713575, 4292713575, 4292713832, 4292713832, 4292713832, 4292714089, 4292779625,
                4292779625, 4292779626, 4292779882, 4292779883, 4292779883, 4292780139, 4292780140,
                4292780140, 4292780141, 4292845933, 4292845933, 4292845934, 4292846190, 4292846190,
                4292846191, 4292846191, 4292846448, 4292846448, 4292846448, 4292846705, 4292912241,
                4292912242, 4292912242, 4292912498, 4292912499, 4292912499, 4292912499, 4292912756,
                4292912756, 4292912757, 4292978549, 4292978549, 4292978550, 4292978550, 4292978807,
                4292978807, 4292978807, 4292979064, 4292979064, 4292979064, 4293044601, 4293044857,
                4293044858, 4293044858, 4293045114, 4293045115, 4293045115, 4293045116, 4293045372,
                4293045372, 4293110909, 4293111165, 4293111165, 4293111166, 4293111166, 4293111423,
                4293111423, 4293111423, 4293111680, 4293111680, 4293111681, 4293177217, 4293177473,
                4293177474, 4293177474, 4293177730, 4293177731, 4293177731, 4293177732, 4293177988,
                4293177988, 4293243525, 4293243781, 4293243782, 4293243782, 4293243782, 4293244039,
                4293244039, 4293244039, 4293244296, 4293244296, 4293309833, 4293309833, 4293310089,
                4293310090, 4293310090, 4293310347, 4293310347, 4293310347, 4293310348, 4293310604,
                4293376140, 4293376141, 4293376141, 4293376398, 4293376398, 4293376398, 4293376655,
                4293376655, 4293376656, 4293376656, 4293376912, 4293442449, 4293442449, 4293442706,
                4293442706, 4293442706, 4293442707, 4293442963, 4293442963, 4293442964, 4293443220,
                4293508757, 4293508757, 4293508757, 4293509014, 4293509014, 4293509015, 4293509271,
                4293509271, 4293509272, 4293509272, 4293575064, 4293575065, 4293575065, 4293575322,
                4293575322, 4293575322, 4293575323, 4293575579, 4293575580, 4293575580, 4293641372,
                4293641373, 4293641373, 4293641373, 4293641630, 4293641630, 4293641631, 4293641887,
                4293641887, 4293641888, 4293707424, 4293707681, 4293707681, 4293707681, 4293707938,
                4293707938, 4293707938, 4293707939, 4293708195, 4293708196, 4293708196, 4293773732,
                4293773989, 4293773989, 4293773990, 4293774246, 4293774246, 4293774247, 4293774247,
                4293774503, 4293774504, 4293840040, 4293840297, 4293840297, 4293840297, 4293840298,
                4293840554, 4293840555, 4293840555, 4293840811, 4293840812, 4293906348, 4293906348,
                4293906605, 4293906605, 4293906606, 4293906862, 4293906862, 4293906863, 4293906863,
                4293907120, 4293972656, 4293972656, 4293972913, 4293972913, 4293972913, 4293972914,
                4293973170, 4293973171, 4293973171, 4293973427, 4293973428, 4294038964, 4294038965,
                4294039221, 4294039221, 4294039222, 4294039478, 4294039478, 4294039479, 4294039479,
                4294039736, 4294105272, 4294105272, 4294105529, 4294105529, 4294105530, 4294105530,
                4294105786, 4294105787, 4294105787, 4294106043, 4294171580, 4294171580, 4294171581,
                4294171837, 4294171837, 4294171838, 4294171838, 4294172095, 4294172095, 4294172095,
                4294237888, 4294237888, 4294237888, 4294237889, 4294238145, 4294238146, 4294238146,
                4294238402, 4294238403, 4294238403, 4294238404, 4294304196, 4294304196, 4294304197,
                4294304453, 4294304453, 4294304454, 4294304454, 4294304711, 4294304711, 4294304711,
                4294370504, 4294370504, 4294370505, 4294370505, 4294370761, 4294370762, 4294370762,
                4294371018, 4294371019, 4294371019, 4294436556, 4294436812, 4294436812, 4294436813,
                4294437069, 4294437070, 4294437070, 4294437070, 4294437327, 4294437327, 4294502863,
                4294503120, 4294503120, 4294503121, 4294503121, 4294503377, 4294503378, 4294503378,
                4294503635, 4294503635, 4294503635, 4294569172, 4294569428, 4294569428, 4294569429,
                4294569685, 4294569686, 4294569686, 4294569686, 4294569943, 4294569943, 4294635480,
                4294635480, 4294635736, 4294635737, 4294635737, 4294635993, 4294635994, 4294635994,
                4294635995, 4294636251, 4294701787, 4294701788, 4294702044, 4294702045, 4294702045,
                4294702045, 4294702302, 4294702302, 4294702303, 4294702559, 4294768095, 4294768096,
                4294768096, 4294768352, 4294768353, 4294768353, 4294768610, 4294768610, 4294768610,
                4294768611, 4294768867, 4294834404, 4294834404, 4294834660, 4294834661, 4294834661,
                4294834661, 4294834918, 4294834918, 4294834919, 4294835175, 4294900711, 4294900712,
                4294900712, 4294900969, 4294900969, 4294900969, 4294901226, 4294901226, 4294901226,
                4294901227, 4294967019, 4294967020, 4294967020, 4294967276, 4294967277, 4294967277,
                4294901741, 4294901741, 4294835949, 4294835949, 4294770413, 4294704877, 4294704877,
                4294639085, 4294639085, 4294573549, 4294573549, 4294508013, 4294508014, 4294442222,
                4294376686, 4294376686, 4294311150, 4294311150, 4294245358, 4294245358, 4294179822,
                4294114286, 4294114286, 4294048494, 4294048494, 4293982958, 4293982958, 4293917422,
                4293917422, 4293851630, 4293786094, 4293786094, 4293720558, 4293720558, 4293654766,
                4293654766, 4293589230, 4293589231, 4293523695, 4293457903, 4293457903, 4293392367,
                4293392367, 4293326831, 4293326831, 4293261039, 4293261039, 4293195503, 4293129967,
                4293129967, 4293064175, 4293064175, 4292998639, 4292998639, 4292933103, 4292867311,
                4292867311, 4292801775, 4292801775, 4292736239, 4292736239, 4292670447, 4292670448,
                4292604912, 4292539376, 4292539376, 4292473584, 4292473584, 4292408048, 4292408048,
                4292342512, 4292342512, 4292276720, 4292211184, 4292211184, 4292145648, 4292145648,
                4292079856, 4292079856, 4292014320, 4291948784, 4291948784, 4291882992, 4291882992,
                4291817456, 4291817456, 4291751920, 4291751920, 4291686129, 4291620593, 4291620593,
                4291555057, 4291555057, 4291489265, 4291489265, 4291423729, 4291423729, 4291358193,
                4291292401, 4291292401, 4291226865, 4291226865, 4291161329, 4291161329, 4291095537,
                4291030001, 4291030001, 4290964465, 4290964465, 4290898673, 4290898673, 4290833137,
                4290833137, 4290767602, 4290701810, 4290701810, 4290636274, 4290636274, 4290570738,
                4290570738, 4290504946, 4290504946, 4290439410, 4290373874, 4290373874, 4290308082,
                4290308082, 4290242546, 4290242546, 4290177010, 4290177010, 4290111218, 4290045682,
                4290045682, 4289980146, 4289980146, 4289914354, 4289914354, 4289848819, 4289783283,
                4289783283, 4289717491, 4289717491, 4289651955, 4289651955, 4289586419, 4289586419,
                4289520627, 4289455091, 4289455091, 4289389555, 4289389555, 4289323763, 4289323763,
                4289258227, 4289258227, 4289192691, 4289126899, 4289126899, 4289061363, 4289061363,
                4288995827, 4288995827, 4288930035, 4288864500, 4288864500, 4288798964, 4288798964,
                4288733172, 4288733172, 4288667636, 4288667636, 4288602100, 4288536308, 4288536308,
                4288470772, 4288470772, 4288405236, 4288405236, 4288339444, 4288339444, 4288273908,
                4288208372, 4288208372, 4288142580, 4288142580, 4288077044, 4288077044, 4288011508,
                4287945717, 4287945717, 4287880181, 4287880181, 4287814645, 4287814645, 4287748853,
                4287748853, 4287683317, 4287617781, 4287617781, 4287551989, 4287551989, 4287486453,
                4287486453, 4287420917, 4287420917, 4287355125, 4287289589, 4287289589, 4287224053,
                4287224053, 4287158261, 4287158261, 4287092725, 4287027190, 4287027190, 4286961398,
                4286961398, 4286895862, 4286895862, 4286830326, 4286830326, 4286764534, 4286698998,
                4286698998, 4286633462, 4286633462, 4286567670, 4286567670, 4286502134, 4286502134,
                4286436598, 4286370806, 4286370806, 4286305270, 4286305270, 4286239734, 4286239734,
                4286173942, 4286173942, 4286108407, 4286042871, 4286042871, 4285977079, 4285977079,
                4285911543, 4285911543, 4285846007, 4285780215, 4285780215, 4285714679, 4285714679,
                4285649143, 4285649143, 4285583351, 4285583351, 4285517815, 4285452279, 4285452279,
                4285386487, 4285386487, 4285320951, 4285320951, 4285255415, 4285255415, 4285189624,
                4285124088, 4285124088, 4285058552, 4285058552, 4284992760, 4284992760, 4284927224,
                4284861688, 4284861688, 4284795896, 4284795896, 4284730360, 4284730360, 4284664824,
                4284664824, 4284599032, 4284533496, 4284533496, 4284467960, 4284467960, 4284402168,
                4284402168, 4284336632, 4284336632, 4284271097, 4284205305, 4284205305, 4284139769,
                4284139769, 4284074233, 4284074233, 4284008441, 4283942905, 4283942905, 4283877369,
                4283877369, 4283811577, 4283811577, 4283746041, 4283746041, 4283680505, 4283614713,
                4283614713, 4283549177, 4283549177, 4283483641, 4283483641, 4283417849, 4283417849,
                4283352313, 4283286778, 4283286778, 4283220986, 4283220986, 4283155450, 4283155450,
                4283089914, 4283024122, 4283024122, 4282958586, 4282958586, 4282893050, 4282893050,
                4282827258, 4282827258, 4282761722, 4282696186, 4282696186, 4282630394, 4282630394,
                4282564858, 4282564858, 4282499322, 4282499322, 4282433530, 4282367995, 4282367995,
                4282302459, 4282302459, 4282236667, 4282236667, 4282171131, 4282171131, 4282105595,
                4282039803, 4282039803, 4281974267, 4281974267, 4281908731, 4281908731, 4281842939,
                4281777403, 4281777403, 4281711867, 4281711867, 4281646075, 4281646075, 4281580539,
                4281580539, 4281515003, 4281449212, 4281449212, 4281383676, 4281383676, 4281318140,
                4281318140, 4281252348, 4281252348, 4281186812, 4281121276, 4281121276, 4281055484,
                4281055484, 4280989948, 4280989948, 4280924412, 4280858620, 4280858620, 4280793084,
                4280793084, 4280727548, 4280727548, 4280661756, 4280661756, 4280596220, 4280530684,
                4280530685, 4280464893, 4280464893, 4280399357, 4280399357, 4280333821, 4280333821,
                4280268029, 4280202493, 4280202493, 4280136957, 4280136957, 4280071165, 4280071165,
                4280005629, 4279940093, 4279940093, 4279874301, 4279874301, 4279808765, 4279808765,
                4279743229, 4279743229, 4279677437, 4279611901, 4279611902, 4279546366, 4279546366,
                4279480574, 4279480574, 4279415038, 4279415038, 4279349502, 4279283710, 4279283710,
                4279218174, 4279218174, 4279152638, 4279152638, 4279086846, 4279086846, 4279021310,
                4278955774, 4278955774, 4278889982, 4278889982, 4278824446, 4278824446, 4278758910,
                4278693118, 4278693119, 4278627583, 4278627583, 4278562047, 4278562047, 4278496255,
                4278496255, 4278430719, 4278365183, 4278365183, 4278299391, 4278299391, 4278233855,
                4278233855, 4278233598, 4278233597, 4278233597, 4278233340, 4278233340, 4278233083,
                4278233083, 4278233082, 4278232825, 4278232825, 4278232824, 4278232568, 4278232567,
                4278232311, 4278232310, 4278232309, 4278232053, 4278232052, 4278231796, 4278231795,
                4278231794, 4278231538, 4278231537, 4278231537, 4278231280, 4278231280, 4278231023,
                4278231022, 4278231022, 4278230765, 4278230765, 4278230764, 4278230508, 4278230507,
                4278230250, 4278230250, 4278230249, 4278229993, 4278229992, 4278229735, 4278229735,
                4278229734, 4278229478, 4278229477, 4278229477, 4278229220, 4278229219, 4278228963,
                4278228962, 4278228962, 4278228705, 4278228705, 4278228704, 4278228447, 4278228447,
                4278228190, 4278228190, 4278228189, 4278227932, 4278227932, 4278227675, 4278227675,
                4278227674, 4278227418, 4278227417, 4278227416, 4278227160, 4278227159, 4278226903,
                4278226902, 4278226901, 4278226645, 4278226644, 4278226644, 4278226387, 4278226387,
                4278226130, 4278226129, 4278226129, 4278225872, 4278225872, 4278225615, 4278225615,
                4278225614, 4278225357, 4278225357, 4278225356, 4278225100, 4278225099, 4278224842,
                4278224842, 4278224841, 4278224585, 4278224584, 4278224584, 4278224327, 4278224326,
                4278224070, 4278224069, 4278224069, 4278223812, 4278223812, 4278223555, 4278223554,
                4278223554, 4278223297, 4278223297, 4278223296, 4278223039, 4278223039, 4278222782,
                4278222782, 4278222781, 4278222525, 4278222524, 4278222267, 4278222267, 4278222266,
                4278222010, 4278222009, 4278222009, 4278221752, 4278221751, 4278221495, 4278221494,
                4278221494, 4278221237, 4278221236, 4278221236, 4278220979, 4278220979, 4278220722,
                4278220722, 4278220721, 4278220464, 4278220464, 4278220207, 4278220207, 4278220206,
                4278219950, 4278219949, 4278219948, 4278219692, 4278219691, 4278219435, 4278219434,
                4278219433, 4278219177, 4278219176, 4278219176, 4278218919, 4278218919, 4278218662,
                4278218661, 4278218661, 4278218404, 4278218404, 4278218147, 4278218147, 4278218146,
                4278217889, 4278217889, 4278217888, 4278217632, 4278217631, 4278217374, 4278217374,
                4278217373, 4278217117, 4278217116, 4278217116, 4278216859, 4278216858, 4278216602,
                4278216601, 4278216601, 4278216344, 4278216344, 4278216087, 4278216086, 4278216086,
                4278215829, 4278215829, 4278215828, 4278215571, 4278215571, 4278215314, 4278215314,
                4278215313, 4278215057, 4278215056, 4278214799, 4278214799, 4278214798, 4278214542,
                4278214541, 4278214541, 4278214284, 4278214283, 4278214027, 4278214026, 4278214026,
                4278213769, 4278213768, 4278213768, 4278213511, 4278213511, 4278213254, 4278213254,
                4278213253, 4278212996, 4278212996, 4278212739, 4278212739, 4278212738, 4278212482,
                4278212481, 4278212480, 4278212224, 4278212223, 4278211967, 4278211966, 4278211965,
                4278211709, 4278211708, 4278211708, 4278211451, 4278211451, 4278211194, 4278211193,
                4278211193, 4278210936, 4278210936, 4278210679, 4278210679, 4278210678, 4278210421,
                4278210421, 4278210420, 4278210164, 4278210163, 4278209906, 4278209906, 4278209905,
                4278209649, 4278209648, 4278209648, 4278209391, 4278209390, 4278209134, 4278209133,
                4278209133, 4278208876, 4278208876, 4278208619, 4278208618, 4278208618, 4278208361,
                4278208361, 4278208360, 4278208103, 4278208103, 4278207846, 4278207846, 4278207845,
                4278207589, 4278207588, 4278207331, 4278207331, 4278207330, 4278207074, 4278207073,
                4278207073, 4278206816, 4278206815, 4278206559, 4278206558, 4278206558, 4278206301,
                4278206300, 4278206300, 4278206043, 4278206043, 4278205786, 4278205786, 4278205785,
                4278205528, 4278205528, 4278205271, 4278205271, 4278205270, 4278205014, 4278205013,
                4278205012, 4278204756, 4278204755, 4278204499, 4278204498, 4278204497, 4278204241,
                4278204240, 4278204240, 4278203983, 4278203983, 4278203726, 4278203725, 4278203725,
                4278203468, 4278203468, 4278203211, 4278203211, 4278203210, 4278202953, 4278202953,
                4278202952, 4278202696, 4278202695, 4278202438, 4278202438, 4278202437, 4278202181,
                4278202180, 4278202180, 4278201923, 4278201922, 4278201666, 4278201665, 4278201665,
                4278201408, 4278201408, 4278201151, 4278201150, 4278201150, 4278200893, 4278200893,
                4278200892, 4278200635, 4278200635, 4278200378, 4278200378, 4278200377, 4278200121,
                4278200120, 4278199863, 4278199863, 4278199862, 4278199606, 4278199605, 4278199605,
                4278199348, 4278199347, 4278199091, 4278199090, 4278199090, 4278198833, 4278198832,
                4278198832, 4278198575, 4278198575, 4278198318, 4278198318, 4278198317, 4278198060,
                4278198060, 4278197803, 4278197803, 4278197802, 4278197546, 4278197545, 4278197544,
                4278197288, 4278197287, 4278197031, 4278197030, 4278197029, 4278196773, 4278196772,
                4278196772, 4278196515, 4278196515, 4278196258, 4278196257, 4278196257, 4278196000,
                4278196000, 4278195743, 4278195742, 4278195742, 4278195485, 4278195485, 4278195484,
                4278195228, 4278195227, 4278194970, 4278194970, 4278194969, 4278194713, 4278194712,
                4278194712, 4278194455, 4278194454, 4278194198, 4278194197, 4278194197, 4278193940,
                4278193939, 4278193683, 4278193682, 4278193682, 4278193425, 4278193425, 4278193424,
                4278193167, 4278193167, 4278192910, 4278192910, 4278192909, 4278192653, 4278192652,
                4278192651, 4278192395, 4278192394, 4278192138, 4278192137, 4278192136, 4278191880,
                4278191879, 4278191623, 4278191622, 4278191622, 4278191365, 4278191364, 4278191364,
                4278191107, 4278191107, 4278190850, 4278190850, 4278190849, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592, 4278190592,
                4278190592, 4278190592, 4278190592, 4278190592,
            ]);
            const canvas = document.getElementById("canvas");
            const ctx = canvas.getContext("2d");
            const imageData = ctx.createImageData(width, height);
            const rgba = new Uint32Array(imageData.data.buffer);
            const timer = document.getElementById("timer");
            new Promise((res, rej) => {
                res(
                    new Uint8Array([
                        0x00, 0x61, 0x73, 0x6d, 0x01, 0x00, 0x00, 0x00, 0x01, 0x11, 0x03, 0x60,
                        0x01, 0x7c, 0x01, 0x7c, 0x60, 0x03, 0x7f, 0x7f, 0x7f, 0x00, 0x60, 0x01,
                        0x7f, 0x01, 0x7f, 0x03, 0x05, 0x04, 0x00, 0x00, 0x01, 0x02, 0x05, 0x03,
                        0x01, 0x00, 0x00, 0x07, 0x1e, 0x03, 0x0a, 0x6d, 0x61, 0x6e, 0x64, 0x65,
                        0x6c, 0x62, 0x72, 0x6f, 0x74, 0x00, 0x02, 0x04, 0x72, 0x65, 0x61, 0x64,
                        0x00, 0x03, 0x06, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x02, 0x00, 0x0a,
                        0xc4, 0x09, 0x04, 0x83, 0x03, 0x03, 0x02, 0x7f, 0x01, 0x7e, 0x02, 0x7c,
                        0x41, 0x01, 0x20, 0x00, 0xbd, 0x22, 0x03, 0x42, 0x20, 0x88, 0xa7, 0x22,
                        0x01, 0x41, 0x1f, 0x76, 0x20, 0x01, 0x41, 0x80, 0x80, 0xc0, 0x00, 0x49,
                        0x1b, 0x04, 0x40, 0x20, 0x03, 0x42, 0x01, 0x86, 0x50, 0x04, 0x40, 0x44,
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xbf, 0x20, 0x00, 0x20, 0x00,
                        0xa2, 0xa3, 0x0f, 0x0b, 0x20, 0x01, 0x41, 0x1f, 0x76, 0x04, 0x40, 0x20,
                        0x00, 0x20, 0x00, 0xa1, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
                        0x00, 0xa3, 0x0f, 0x0b, 0x41, 0x4a, 0x21, 0x02, 0x20, 0x00, 0x44, 0x00,
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x43, 0xa2, 0xbd, 0x22, 0x03, 0x42,
                        0x20, 0x88, 0xa7, 0x21, 0x01, 0x05, 0x20, 0x01, 0x41, 0x80, 0x80, 0xc0,
                        0xff, 0x07, 0x4f, 0x04, 0x40, 0x20, 0x00, 0x0f, 0x05, 0x20, 0x03, 0x42,
                        0x20, 0x86, 0x50, 0x41, 0x00, 0x20, 0x01, 0x41, 0x80, 0x80, 0xc0, 0xff,
                        0x03, 0x46, 0x1b, 0x04, 0x40, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
                        0x00, 0x00, 0x0f, 0x0b, 0x0b, 0x0b, 0x20, 0x03, 0x42, 0xff, 0xff, 0xff,
                        0xff, 0x0f, 0x83, 0x20, 0x01, 0x41, 0xe2, 0xbe, 0x25, 0x6a, 0x22, 0x01,
                        0x41, 0xff, 0xff, 0x3f, 0x71, 0x41, 0x9e, 0xc1, 0x9a, 0xff, 0x03, 0x6a,
                        0xad, 0x42, 0x20, 0x86, 0x84, 0xbf, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00,
                        0x00, 0xf0, 0x3f, 0xa1, 0x22, 0x04, 0x20, 0x04, 0x44, 0x00, 0x00, 0x00,
                        0x00, 0x00, 0x00, 0x00, 0x40, 0xa0, 0xa3, 0x22, 0x05, 0x20, 0x05, 0xa2,
                        0x21, 0x00, 0x20, 0x05, 0x20, 0x04, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00,
                        0x00, 0xe0, 0x3f, 0xa2, 0x20, 0x04, 0xa2, 0x22, 0x05, 0x20, 0x00, 0x20,
                        0x00, 0x20, 0x00, 0xa2, 0x22, 0x00, 0x20, 0x00, 0x20, 0x00, 0x44, 0x44,
                        0x52, 0x3e, 0xdf, 0x12, 0xf1, 0xc2, 0x3f, 0xa2, 0x44, 0xde, 0x03, 0xcb,
                        0x96, 0x64, 0x46, 0xc7, 0x3f, 0xa0, 0xa2, 0x44, 0x59, 0x93, 0x22, 0x94,
                        0x24, 0x49, 0xd2, 0x3f, 0xa0, 0xa2, 0x44, 0x93, 0x55, 0x55, 0x55, 0x55,
                        0x55, 0xe5, 0x3f, 0xa0, 0xa2, 0x20, 0x00, 0x20, 0x00, 0x20, 0x00, 0x44,
                        0x9f, 0xc6, 0x78, 0xd0, 0x09, 0x9a, 0xc3, 0x3f, 0xa2, 0x44, 0xaf, 0x78,
                        0x8e, 0x1d, 0xc5, 0x71, 0xcc, 0x3f, 0xa0, 0xa2, 0x44, 0x04, 0xfa, 0x97,
                        0x99, 0x99, 0x99, 0xd9, 0x3f, 0xa0, 0xa2, 0xa0, 0xa0, 0xa2, 0x20, 0x02,
                        0x20, 0x01, 0x41, 0x14, 0x75, 0x41, 0xff, 0x07, 0x6b, 0x6a, 0xb7, 0x22,
                        0x00, 0x44, 0x76, 0x3c, 0x79, 0x35, 0xef, 0x39, 0xea, 0x3d, 0xa2, 0xa0,
                        0x20, 0x05, 0xa1, 0x20, 0x04, 0xa0, 0x20, 0x00, 0x44, 0x00, 0x00, 0xe0,
                        0xfe, 0x42, 0x2e, 0xe6, 0x3f, 0xa2, 0xa0, 0x0b, 0xb5, 0x03, 0x03, 0x02,
                        0x7f, 0x01, 0x7e, 0x07, 0x7c, 0x41, 0x01, 0x20, 0x00, 0xbd, 0x22, 0x03,
                        0x42, 0x20, 0x88, 0xa7, 0x22, 0x01, 0x41, 0x1f, 0x76, 0x20, 0x01, 0x41,
                        0x80, 0x80, 0xc0, 0x00, 0x49, 0x1b, 0x04, 0x40, 0x20, 0x03, 0x42, 0x01,
                        0x86, 0x50, 0x04, 0x40, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0,
                        0xbf, 0x20, 0x00, 0x20, 0x00, 0xa2, 0xa3, 0x0f, 0x0b, 0x20, 0x01, 0x41,
                        0x1f, 0x76, 0x04, 0x40, 0x20, 0x00, 0x20, 0x00, 0xa1, 0x44, 0x00, 0x00,
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa3, 0x0f, 0x0b, 0x41, 0x4a, 0x21,
                        0x02, 0x20, 0x00, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x43,
                        0xa2, 0xbd, 0x22, 0x03, 0x42, 0x20, 0x88, 0xa7, 0x21, 0x01, 0x05, 0x20,
                        0x01, 0x41, 0x80, 0x80, 0xc0, 0xff, 0x07, 0x4f, 0x04, 0x40, 0x20, 0x00,
                        0x0f, 0x05, 0x20, 0x03, 0x42, 0x20, 0x86, 0x50, 0x41, 0x00, 0x20, 0x01,
                        0x41, 0x80, 0x80, 0xc0, 0xff, 0x03, 0x46, 0x1b, 0x04, 0x40, 0x44, 0x00,
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0b, 0x0b, 0x0b, 0x20,
                        0x03, 0x42, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x83, 0x20, 0x01, 0x41, 0xe2,
                        0xbe, 0x25, 0x6a, 0x22, 0x01, 0x41, 0xff, 0xff, 0x3f, 0x71, 0x41, 0x9e,
                        0xc1, 0x9a, 0xff, 0x03, 0x6a, 0xad, 0x42, 0x20, 0x86, 0x84, 0xbf, 0x44,
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f, 0xa1, 0x22, 0x00, 0x20,
                        0x00, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xa0, 0xa3,
                        0x22, 0x05, 0x20, 0x05, 0xa2, 0x21, 0x04, 0x20, 0x02, 0x20, 0x01, 0x41,
                        0x14, 0x76, 0x41, 0xff, 0x07, 0x6b, 0x6a, 0xb7, 0x22, 0x09, 0x20, 0x00,
                        0x20, 0x00, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x3f, 0xa2,
                        0x20, 0x00, 0xa2, 0x22, 0x06, 0xa1, 0xbd, 0x42, 0x80, 0x80, 0x80, 0x80,
                        0x70, 0x83, 0xbf, 0x22, 0x07, 0x44, 0x00, 0x00, 0x20, 0x65, 0x47, 0x15,
                        0xf7, 0x3f, 0xa2, 0x22, 0x0a, 0xa0, 0x21, 0x08, 0x20, 0x00, 0x20, 0x07,
                        0xa1, 0x20, 0x06, 0xa1, 0x20, 0x05, 0x20, 0x06, 0x20, 0x04, 0x20, 0x04,
                        0x20, 0x04, 0xa2, 0x22, 0x00, 0x20, 0x00, 0x20, 0x00, 0x44, 0x44, 0x52,
                        0x3e, 0xdf, 0x12, 0xf1, 0xc2, 0x3f, 0xa2, 0x44, 0xde, 0x03, 0xcb, 0x96,
                        0x64, 0x46, 0xc7, 0x3f, 0xa0, 0xa2, 0x44, 0x59, 0x93, 0x22, 0x94, 0x24,
                        0x49, 0xd2, 0x3f, 0xa0, 0xa2, 0x44, 0x93, 0x55, 0x55, 0x55, 0x55, 0x55,
                        0xe5, 0x3f, 0xa0, 0xa2, 0x20, 0x00, 0x20, 0x00, 0x20, 0x00, 0x44, 0x9f,
                        0xc6, 0x78, 0xd0, 0x09, 0x9a, 0xc3, 0x3f, 0xa2, 0x44, 0xaf, 0x78, 0x8e,
                        0x1d, 0xc5, 0x71, 0xcc, 0x3f, 0xa0, 0xa2, 0x44, 0x04, 0xfa, 0x97, 0x99,
                        0x99, 0x99, 0xd9, 0x3f, 0xa0, 0xa2, 0xa0, 0xa0, 0xa2, 0xa0, 0x22, 0x00,
                        0x20, 0x07, 0xa0, 0x44, 0x00, 0xa2, 0xef, 0x2e, 0xfc, 0x05, 0xe7, 0x3d,
                        0xa2, 0x20, 0x00, 0x44, 0x00, 0x00, 0x20, 0x65, 0x47, 0x15, 0xf7, 0x3f,
                        0xa2, 0xa0, 0x20, 0x09, 0x20, 0x08, 0xa1, 0x20, 0x0a, 0xa0, 0xa0, 0x20,
                        0x08, 0xa0, 0x0b, 0xfd, 0x02, 0x02, 0x0a, 0x7c, 0x04, 0x7f, 0x20, 0x00,
                        0x20, 0x01, 0x6c, 0x41, 0x01, 0x74, 0x41, 0xff, 0xff, 0x03, 0x6e, 0x41,
                        0x01, 0x6a, 0x40, 0x00, 0x1a, 0x20, 0x01, 0xb8, 0x44, 0x00, 0x00, 0x00,
                        0x00, 0x00, 0x00, 0xe0, 0x3f, 0xa2, 0x21, 0x06, 0x20, 0x00, 0xb8, 0x44,
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x3f, 0xa2, 0x44, 0x00, 0x00,
                        0x00, 0x00, 0x00, 0x00, 0x24, 0x40, 0x20, 0x00, 0x41, 0x03, 0x6c, 0x22,
                        0x0d, 0x20, 0x01, 0x41, 0x02, 0x74, 0x22, 0x0e, 0x20, 0x0d, 0x20, 0x0e,
                        0x48, 0x1b, 0xb7, 0xa3, 0x22, 0x05, 0xa2, 0x21, 0x07, 0x44, 0x00, 0x00,
                        0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f, 0x20, 0x02, 0xb8, 0xa3, 0x21, 0x08,
                        0x41, 0x00, 0x21, 0x0d, 0x03, 0x40, 0x20, 0x01, 0x20, 0x0d, 0x4b, 0x04,
                        0x40, 0x20, 0x0d, 0xb8, 0x20, 0x06, 0xa1, 0x20, 0x05, 0xa2, 0x21, 0x09,
                        0x20, 0x00, 0x20, 0x0d, 0x6c, 0x41, 0x01, 0x74, 0x21, 0x10, 0x41, 0x00,
                        0x21, 0x0e, 0x03, 0x40, 0x20, 0x00, 0x20, 0x0e, 0x4b, 0x04, 0x40, 0x20,
                        0x0e, 0xb8, 0x20, 0x05, 0xa2, 0x20, 0x07, 0xa1, 0x21, 0x0a, 0x44, 0x00,
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x03, 0x44, 0x00, 0x00,
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x04, 0x41, 0x00, 0x21, 0x0f,
                        0x03, 0x40, 0x20, 0x03, 0x20, 0x03, 0xa2, 0x22, 0x0b, 0x20, 0x04, 0x20,
                        0x04, 0xa2, 0x22, 0x0c, 0xa0, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
                        0x10, 0x40, 0x65, 0x04, 0x40, 0x02, 0x40, 0x20, 0x03, 0x20, 0x03, 0xa0,
                        0x20, 0x04, 0xa2, 0x20, 0x09, 0xa0, 0x21, 0x04, 0x20, 0x0b, 0x20, 0x0c,
                        0xa1, 0x20, 0x0a, 0xa0, 0x21, 0x03, 0x20, 0x02, 0x20, 0x0f, 0x4d, 0x0d,
                        0x00, 0x20, 0x0f, 0x41, 0x01, 0x6a, 0x21, 0x0f, 0x0c, 0x02, 0x0b, 0x0b,
                        0x0b, 0x20, 0x10, 0x20, 0x0e, 0x41, 0x01, 0x74, 0x6a, 0x20, 0x03, 0x20,
                        0x03, 0xa2, 0x20, 0x04, 0x20, 0x04, 0xa2, 0xa0, 0x22, 0x03, 0x44, 0x00,
                        0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f, 0x64, 0x04, 0x7f, 0x20, 0x0f,
                        0x41, 0x01, 0x6a, 0xb8, 0x20, 0x03, 0x10, 0x00, 0x44, 0x00, 0x00, 0x00,
                        0x00, 0x00, 0x00, 0xe0, 0x3f, 0xa2, 0x10, 0x01, 0xa1, 0x20, 0x08, 0xa2,
                        0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa5, 0x44, 0x00,
                        0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x3f, 0xa4, 0x44, 0x00, 0x00, 0x00,
                        0x00, 0x00, 0xfc, 0x9f, 0x40, 0xa2, 0xab, 0x05, 0x41, 0xff, 0x0f, 0x0b,
                        0x3b, 0x01, 0x00, 0x20, 0x0e, 0x41, 0x01, 0x6a, 0x21, 0x0e, 0x0c, 0x01,
                        0x0b, 0x0b, 0x20, 0x0d, 0x41, 0x01, 0x6a, 0x21, 0x0d, 0x0c, 0x01, 0x0b,
                        0x0b, 0x0b, 0x07, 0x00, 0x20, 0x00, 0x2f, 0x01, 0x00, 0x0b, 0x00, 0x17,
                        0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x61, 0x70, 0x70, 0x69,
                        0x6e, 0x67, 0x55, 0x52, 0x4c, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65,
                    ])
                );
            })
                .then(bytes => WebAssembly.compile(bytes))
                .then(module => WebAssembly.instantiate(module))
                .then(instance => {
                    let start = performance.now();
                    instance.exports.mandelbrot(width, height, 40);
                    let end = performance.now();
                    return {
                        time: end - start,
                        exports: instance.exports,
                    };
                })
                .then(result => {
                    timer.innerText = `Render took ${result.time}ms`;
                    const buffer = new Uint16Array(result.exports.memory.buffer);
                    for (let y = 0; y < height; y++) {
                        const yx = y * width;
                        for (let x = 0; x < width; x++) {
                            rgba[yx + x] = colors[buffer[yx + x]];
                        }
                    }
                })
                .then(() => {
                    ctx.putImageData(imageData, 0, 0);
                })
                .catch(err => console.log(err.message));
        </script>
    </body>
</html>