useblocks 1.1.72 → 1.1.84

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 (67) hide show
  1. package/CHANGELOG.md +461 -0
  2. package/README.md +55 -6
  3. package/iframe/css/sandbox-dark.css +1 -1
  4. package/iframe/css/sandbox-darktheme.css +3 -3
  5. package/iframe/css/sandbox-light.css +1 -1
  6. package/iframe/css/sandbox.css +2 -2
  7. package/iframe/js/amp.D1dkO3ub.js +1 -0
  8. package/iframe/js/iframe-eblock.js +1 -1
  9. package/iframe/js/iframe.js +1 -1
  10. package/iframe/js/rules.4N5s3OV-.js +1 -1
  11. package/package.json +30 -9
  12. package/static/core/{842c8d41.js → 16c7408a.js} +4 -4
  13. package/static/core/{dd94baa62.js → 278c19282.js} +1208 -1127
  14. package/static/core/27b7d154.js +1098 -0
  15. package/static/core/{585259872.js → 7877b5712.js} +41 -41
  16. package/static/core/{ffc83e02.js → 86acf537.js} +7 -7
  17. package/static/core/{e02024fb2.js → 95074b4e2.js} +58 -58
  18. package/static/core/{ce9be2ec2.js → 9a1229572.js} +2155 -2090
  19. package/static/core/{b7c107e3.js → ab3c035c.js} +15 -15
  20. package/static/core/{d082c64e2.js → b8fa83f82.js} +2490 -2229
  21. package/static/core/{bfab4558.js → bb8665a8.js} +3551 -3153
  22. package/static/core/{513594a8.js → c013e7cc.js} +72 -72
  23. package/static/core/{efbe495c.js → c871702e.js} +2403 -2548
  24. package/static/core/cf26b064.js +3280 -0
  25. package/static/core/{d645302e.js → d15a988b.js} +272 -248
  26. package/static/core/{24c3f399.js → d4962564.js} +3 -3
  27. package/static/core/dc948de7.js +2134 -0
  28. package/static/core/{5e082e16.js → e9b6fbb9.js} +48 -48
  29. package/static/core/{d19e8c6f.js → ec6e74e5.js} +22978 -19773
  30. package/static/umd-runtime/{n8zqoGYh.js → D80ABE1O.js} +7 -1
  31. package/static/umd-runtime/runtime.js +2 -2
  32. package/static/umd-runtime/ui-kit.js +1704 -1628
  33. package/ui-kit/index.js +1390 -1310
  34. package/{useblocks-core.8837a348.js → useblocks-core.2fa005e8.js} +6 -6
  35. package/useblocks-esm.js +4 -4
  36. package/{useblocks-po.8837a348.js → useblocks-po.2fa005e8.js} +1 -1
  37. package/useblocks.d.ts +55 -24
  38. package/useblocks.js +3 -3
  39. package/favicon-b.ico +0 -0
  40. package/favicon.ico +0 -0
  41. package/fonts/SegoeUI-Bold.woff2 +0 -0
  42. package/fonts/SegoeUI-Semibold.woff2 +0 -0
  43. package/fonts/SegoeUI.woff2 +0 -0
  44. package/iframe/js/amp.DllX-Im0.js +0 -1
  45. package/js/amplitude.min.js +0 -10859
  46. package/js/sourcebuster.min.js +0 -672
  47. package/manifest.json +0 -17
  48. package/npm-publish.manifest.json +0 -51
  49. package/static/core/241f0387.js +0 -3189
  50. package/static/core/45b5e246.js +0 -925
  51. package/static/core/9bcb736c.js +0 -2122
  52. package/static/media/image-editor/images/samples/large_sample.jpg +0 -0
  53. package/static/media/image-editor/images/samples/sample1.jpg +0 -0
  54. package/static/media/image-editor/images/samples/sample1_thumbnail.jpg +0 -0
  55. package/static/media/image-editor/images/samples/sample2.jpg +0 -0
  56. package/static/media/image-editor/images/samples/sample2_thumbnail.jpg +0 -0
  57. package/static/media/image-editor/images/samples/sample3.jpg +0 -0
  58. package/static/media/image-editor/images/samples/sample3_thumbnail.jpg +0 -0
  59. package/static/media/image-editor/images/samples/sample4.json +0 -871
  60. package/static/media/image-editor/images/samples/sample4_preview.jpg +0 -0
  61. package/test-font.otf +0 -0
  62. package/test-font.ttf +0 -0
  63. package/test-font.woff2 +0 -0
  64. package/tsconfig.json +0 -14
  65. package/two_step_headless_plugin.html +0 -558
  66. /package/iframe/{iframe-eblock.8837a348.html → iframe-eblock.2fa005e8.html} +0 -0
  67. /package/iframe/{iframe.8837a348.html → iframe.2fa005e8.html} +0 -0
@@ -0,0 +1,3280 @@
1
+ __useblocks__.define("static/core/cf26b064.js", [
2
+ "require",
3
+ "exports",
4
+ "module",
5
+ "static/core/df237243.js",
6
+ "static/core/bb8665a8.js",
7
+ "static/core/27b7d154.js",
8
+ "static/core/9a1229572.js",
9
+ "static/core/278c19282.js",
10
+ "static/core/b8fa83f82.js",
11
+ "react"
12
+ ], function(ze, le, Wn) {
13
+ const Ye = ze("./df237243.js"), he = ze("./bb8665a8.js"), _t = ze("./27b7d154.js"), lt = ze("./9a1229572.js"), qt = ze("./278c19282.js"), Ut = ze("./b8fa83f82.js");
14
+ let rt = ze("react");
15
+ var Xt = Ye.__commonJSMin(((g, I) => {
16
+ I.exports = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
17
+ })), Kt = Ye.__commonJSMin(((g, I) => {
18
+ var k = Xt();
19
+ function z() {}
20
+ function G() {}
21
+ G.resetWarningCache = z, I.exports = function() {
22
+ function W(J, $, Fe, ae, Be, Ie) {
23
+ if (Ie !== k) {
24
+ var te = new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");
25
+ throw te.name = "Invariant Violation", te;
26
+ }
27
+ }
28
+ W.isRequired = W;
29
+ function V() {
30
+ return W;
31
+ }
32
+ var Z = {
33
+ array: W,
34
+ bigint: W,
35
+ bool: W,
36
+ func: W,
37
+ number: W,
38
+ object: W,
39
+ string: W,
40
+ symbol: W,
41
+ any: W,
42
+ arrayOf: V,
43
+ element: W,
44
+ elementType: W,
45
+ instanceOf: V,
46
+ node: W,
47
+ objectOf: V,
48
+ oneOf: V,
49
+ oneOfType: V,
50
+ shape: V,
51
+ exact: V,
52
+ checkPropTypes: G,
53
+ resetWarningCache: z
54
+ };
55
+ return Z.PropTypes = Z, Z;
56
+ };
57
+ })), Vt = Ye.__commonJSMin(((g, I) => {
58
+ I.exports = Kt()();
59
+ }));
60
+ function Et({ limitsInPlugin: g, hostedAiActive: I }) {
61
+ return g && !I;
62
+ }
63
+ function Zt({ limitsInPlugin: g, hostedAiActive: I, counter: k, limit: z }) {
64
+ return Et({
65
+ limitsInPlugin: g,
66
+ hostedAiActive: I
67
+ }) ? z > 0 && k >= z : !1;
68
+ }
69
+ var Yt = /\s+\d+$/;
70
+ function Jt(g) {
71
+ return g.trim().replace(Yt, "").toLowerCase().replaceAll("+", "-plus").split(/\s+/).filter(Boolean).join("-");
72
+ }
73
+ function Ft(g, I, k) {
74
+ if (!g || !I || !k) return;
75
+ const z = g.filter((W) => Jt(W.title ?? "") === I).map((W) => W.limits?.[k]);
76
+ if (z.length === 0) return;
77
+ const G = z.findIndex((W) => String(W ?? "").trim() !== "0");
78
+ return G === -1 ? "0" : z[G];
79
+ }
80
+ function It(g, I) {
81
+ if (!g || !g.is_unlimited || I == null) return g;
82
+ const k = String(I).trim();
83
+ return k === "" || Number(k) !== 0 ? g : {
84
+ ...g,
85
+ is_unlimited: !1
86
+ };
87
+ }
88
+ var Mt = {
89
+ ai: "ai_limit",
90
+ email_generate: "email_generate_limit",
91
+ image_generate: "image_generate_limit",
92
+ preview: "preview_limit",
93
+ link_check: "link_check_limit",
94
+ image_check: "image_check_limit",
95
+ spam_check: "spam_check_limit"
96
+ };
97
+ function ut() {
98
+ return he.PLUGIN.isPlugin || !he.isPlanGatingAvailable();
99
+ }
100
+ function Pt(g) {
101
+ const { data: I } = he.useGetSubscriptionsQuery(void 0, { skip: ut() || g });
102
+ return I;
103
+ }
104
+ function St(g) {
105
+ if (g) return {
106
+ used: g.used ?? 0,
107
+ base_limit: g.base_limit ?? 0,
108
+ extra: g.extra ?? 0,
109
+ total_limit: g.total_limit ?? 0,
110
+ remaining: g.remaining ?? 0,
111
+ percent: g.percent ?? 0,
112
+ is_unlimited: g.is_unlimited ?? !1
113
+ };
114
+ }
115
+ function en() {
116
+ const g = he.useSelector(he.selectProject)?.id, { data: I, isSuccess: k } = _t.useGetProjectPlanQuery(g, { skip: ut() || !g }), z = Pt(!I?.slug);
117
+ return (0, rt.useMemo)(() => {
118
+ const G = I?.limits ?? {}, W = {};
119
+ return Object.entries(G).forEach(([V, Z]) => {
120
+ const J = V, $ = It(St(Z), Ft(z, I?.slug, Mt[J]));
121
+ $ && (W[J] = $);
122
+ }), {
123
+ limits: W,
124
+ isLoaded: !!k
125
+ };
126
+ }, [
127
+ z,
128
+ I,
129
+ k
130
+ ]);
131
+ }
132
+ function tn() {
133
+ const g = he.useSelector(he.selectProject)?.id, [I] = _t.useLazyGetProjectPlanQuery(), k = Pt(!1);
134
+ return (0, rt.useCallback)(async (z) => {
135
+ if (ut() || !g) return;
136
+ const G = await I(g, !1);
137
+ return It(St(G.data?.limits?.[z]), Ft(k, G.data?.slug, Mt[z]));
138
+ }, [
139
+ k,
140
+ I,
141
+ g
142
+ ]);
143
+ }
144
+ function dt(g, I) {
145
+ if (g) {
146
+ if (I === "preview") {
147
+ const k = g;
148
+ return k.preview ?? k.test_sends;
149
+ }
150
+ return g[I];
151
+ }
152
+ }
153
+ function ht(g, I) {
154
+ if (g?.flags) {
155
+ if (I === "preview") {
156
+ const k = g.flags;
157
+ return k.preview ?? k.test_sends;
158
+ }
159
+ return g.flags[I];
160
+ }
161
+ }
162
+ var nn = [
163
+ 10,
164
+ 30,
165
+ 300
166
+ ], xt = [
167
+ 10,
168
+ 50,
169
+ 150
170
+ ];
171
+ function gt(g, I) {
172
+ for (const k of I) if (k > g) return k;
173
+ return "infinity";
174
+ }
175
+ function rn(g) {
176
+ return g <= 10 ? "email_10_30" : g <= 30 ? "email_30_300" : "email_300_inf";
177
+ }
178
+ function Ct(g) {
179
+ return g <= 10 ? "ai_10_50" : g <= 50 ? "ai_30_150" : "ai_150_inf";
180
+ }
181
+ function mt(g, I) {
182
+ return I?.limit_exceeded ? !0 : g.is_unlimited || g.total_limit <= 0 ? !1 : g.remaining <= 0 || g.used >= g.total_limit;
183
+ }
184
+ var on = [
185
+ "optimization",
186
+ "image_generate",
187
+ "preview",
188
+ "link_check",
189
+ "image_check",
190
+ "spam_check"
191
+ ];
192
+ function Tt(g) {
193
+ return on.includes(g);
194
+ }
195
+ var an = {
196
+ optimization: "optimization_exceeded",
197
+ image_generate: "image_generate_exceeded",
198
+ preview: "preview_exceeded",
199
+ link_check: "link_check_exceeded",
200
+ image_check: "image_check_exceeded",
201
+ spam_check: "spam_check_exceeded"
202
+ };
203
+ function Ke(g, I, k) {
204
+ if (Tt(g)) return null;
205
+ const z = dt(I, g), G = ht(k, g);
206
+ if (!z || !mt(z, G)) return null;
207
+ const W = z.total_limit;
208
+ return {
209
+ kind: g,
210
+ presetId: an[g],
211
+ previousLimit: W,
212
+ nextLimit: "infinity"
213
+ };
214
+ }
215
+ function sn(g, I) {
216
+ if (!g) return null;
217
+ const k = dt(g, "ai"), z = ht(I, "ai");
218
+ if (k && mt(k, z)) {
219
+ const ae = k.total_limit;
220
+ return {
221
+ kind: "ai",
222
+ presetId: Ct(ae),
223
+ previousLimit: ae,
224
+ nextLimit: gt(ae, xt)
225
+ };
226
+ }
227
+ const G = dt(g, "email_generate"), W = ht(I, "email_generate");
228
+ if (G && mt(G, W)) {
229
+ const ae = G.total_limit;
230
+ return {
231
+ kind: "email_generate",
232
+ presetId: rn(ae),
233
+ previousLimit: ae,
234
+ nextLimit: gt(ae, nn)
235
+ };
236
+ }
237
+ const V = Ke("image_generate", g, I);
238
+ if (V) return V;
239
+ const Z = Ke("optimization", g, I);
240
+ if (Z) return Z;
241
+ const J = Ke("preview", g, I);
242
+ if (J) return J;
243
+ const $ = Ke("link_check", g, I);
244
+ if ($) return $;
245
+ return Ke("image_check", g, I) || Ke("spam_check", g, I);
246
+ }
247
+ function fn(g) {
248
+ return {
249
+ presetId: Ct(g),
250
+ previousLimit: g,
251
+ nextLimit: gt(g, xt)
252
+ };
253
+ }
254
+ function cn(g) {
255
+ const I = String(g ?? "").split(";")[0].trim();
256
+ if (!I) return "";
257
+ const k = I.toLowerCase(), z = k.indexOf("/");
258
+ if (z === -1) return k;
259
+ const G = k.slice(z + 1);
260
+ return G === "svg+xml" ? "svg" : G;
261
+ }
262
+ async function ln(g) {
263
+ if (typeof createImageBitmap == "function") try {
264
+ const I = await createImageBitmap(g);
265
+ try {
266
+ return {
267
+ width: I.width,
268
+ height: I.height
269
+ };
270
+ } finally {
271
+ I.close?.();
272
+ }
273
+ } catch {}
274
+ return new Promise((I, k) => {
275
+ const z = URL.createObjectURL(g), G = new Image();
276
+ G.onload = () => {
277
+ URL.revokeObjectURL(z);
278
+ const W = G.naturalWidth || G.width, V = G.naturalHeight || G.height;
279
+ W > 0 && V > 0 ? I({
280
+ width: W,
281
+ height: V
282
+ }) : k(new Error("Could not read image dimensions"));
283
+ }, G.onerror = () => {
284
+ URL.revokeObjectURL(z), k(new Error("Could not decode image"));
285
+ }, G.src = z;
286
+ });
287
+ }
288
+ function pt(g) {
289
+ return g.trim();
290
+ }
291
+ var un = 64 * 1024 * 1024, dn = 2e3;
292
+ function it(g) {
293
+ g.abandonTimer !== void 0 && (clearTimeout(g.abandonTimer), g.abandonTimer = void 0);
294
+ }
295
+ function Rt(g, I) {
296
+ return I ? new Promise((k, z) => {
297
+ if (I.aborted) {
298
+ z(new DOMException("Aborted", "AbortError"));
299
+ return;
300
+ }
301
+ const G = () => {
302
+ z(new DOMException("Aborted", "AbortError"));
303
+ };
304
+ I.addEventListener("abort", G, { once: !0 }), g.then((W) => {
305
+ I.removeEventListener("abort", G), k(W);
306
+ }, (W) => {
307
+ I.removeEventListener("abort", G), z(W);
308
+ });
309
+ }) : g;
310
+ }
311
+ function hn(g = {}) {
312
+ const I = g.maxCacheBytes ?? un, k = g.abandonDelayMs ?? dn, z = new Map(), G = new Map();
313
+ let W = 0;
314
+ function V(te) {
315
+ const Y = z.get(te);
316
+ Y && (W -= Y.size, z.delete(te));
317
+ }
318
+ function Z(te, Y) {
319
+ if (V(te), !(Y.size > I)) {
320
+ z.set(te, Y), W += Y.size;
321
+ for (const me of z.keys()) {
322
+ if (W <= I) break;
323
+ V(me);
324
+ }
325
+ }
326
+ }
327
+ function J(te) {
328
+ const Y = G.get(te);
329
+ Y && (it(Y), G.delete(te));
330
+ }
331
+ function $(te, Y) {
332
+ Y.waiters -= 1, !(Y.waiters > 0 || Y.abandonTimer !== void 0 || G.get(te) !== Y) && (Y.abandonTimer = setTimeout(() => {
333
+ Y.abandonTimer = void 0, !(G.get(te) !== Y || Y.waiters > 0) && (G.delete(te), Y.controller.abort());
334
+ }, k));
335
+ }
336
+ function Fe(te, Y, me) {
337
+ return Y.waiters += 1, it(Y), me.then(() => $(te, Y), () => $(te, Y)), me;
338
+ }
339
+ async function ae(te, Y, me) {
340
+ const pe = pt(te);
341
+ if (!pe) throw new Error("Empty image URL");
342
+ const Re = z.get(pe);
343
+ if (Re) {
344
+ if (Y?.aborted) throw new DOMException("Aborted", "AbortError");
345
+ return z.delete(pe), z.set(pe, Re), Re;
346
+ }
347
+ const ue = G.get(pe);
348
+ if (ue) return Fe(pe, ue, Rt(ue.promise, Y));
349
+ const Pe = new AbortController(), xe = {
350
+ promise: me(pe, Pe.signal).then((Ce) => (J(pe), Z(pe, Ce), Ce)).catch((Ce) => {
351
+ throw J(pe), Ce;
352
+ }),
353
+ controller: Pe,
354
+ waiters: 0,
355
+ abandonTimer: void 0
356
+ };
357
+ return G.set(pe, xe), Fe(pe, xe, Rt(xe.promise, Y));
358
+ }
359
+ function Be(te) {
360
+ const Y = pt(te);
361
+ if (!Y) return;
362
+ const me = G.get(Y);
363
+ me && (it(me), me.controller.abort(), G.delete(Y)), V(Y);
364
+ }
365
+ function Ie() {
366
+ for (const [, te] of G) it(te), te.controller.abort();
367
+ G.clear(), z.clear(), W = 0;
368
+ }
369
+ return {
370
+ resolve: ae,
371
+ abandonKey: Be,
372
+ invalidateAll: Ie
373
+ };
374
+ }
375
+ var gn = Ye.__commonJSMin(((g, I) => {
376
+ (function(k, z) {
377
+ typeof g == "object" && typeof I < "u" ? I.exports = z() : typeof define == "function" && define.amd ? define(z) : (k = typeof globalThis < "u" ? globalThis : k || self).imageCompression = z();
378
+ })(g, (function() {
379
+ "use strict";
380
+ function k(T, R) {
381
+ return R.forEach((function(H) {
382
+ H && typeof H != "string" && !Array.isArray(H) && Object.keys(H).forEach((function(d) {
383
+ if (d !== "default" && !(d in T)) {
384
+ var e = Object.getOwnPropertyDescriptor(H, d);
385
+ Object.defineProperty(T, d, e.get ? e : {
386
+ enumerable: !0,
387
+ get: function() {
388
+ return H[d];
389
+ }
390
+ });
391
+ }
392
+ }));
393
+ })), Object.freeze(T);
394
+ }
395
+ function z(T, R) {
396
+ return new Promise((function(H, d) {
397
+ let e;
398
+ return G(T).then((function(t) {
399
+ try {
400
+ return e = t, H(new Blob([
401
+ R.slice(0, 2),
402
+ e,
403
+ R.slice(2)
404
+ ], { type: "image/jpeg" }));
405
+ } catch (u) {
406
+ return d(u);
407
+ }
408
+ }), d);
409
+ }));
410
+ }
411
+ const G = (T) => new Promise(((R, H) => {
412
+ const d = new FileReader();
413
+ d.addEventListener("load", (({ target: { result: e } }) => {
414
+ const t = new DataView(e);
415
+ let u = 0;
416
+ if (t.getUint16(u) !== 65496) return H("not a valid JPEG");
417
+ for (u += 2;;) {
418
+ const a = t.getUint16(u);
419
+ if (a === 65498) break;
420
+ const p = t.getUint16(u + 2);
421
+ if (a === 65505 && t.getUint32(u + 4) === 1165519206) {
422
+ const _ = u + 10;
423
+ let r;
424
+ switch (t.getUint16(_)) {
425
+ case 18761:
426
+ r = !0;
427
+ break;
428
+ case 19789:
429
+ r = !1;
430
+ break;
431
+ default: return H("TIFF header contains invalid endian");
432
+ }
433
+ if (t.getUint16(_ + 2, r) !== 42) return H("TIFF header contains invalid version");
434
+ const i = t.getUint32(_ + 4, r), n = _ + i + 2 + 12 * t.getUint16(_ + i, r);
435
+ for (let s = _ + i + 2; s < n; s += 12) if (t.getUint16(s, r) == 274) {
436
+ if (t.getUint16(s + 2, r) !== 3) return H("Orientation data type is invalid");
437
+ if (t.getUint32(s + 4, r) !== 1) return H("Orientation data count is invalid");
438
+ t.setUint16(s + 8, 1, r);
439
+ break;
440
+ }
441
+ return R(e.slice(u, u + 2 + p));
442
+ }
443
+ u += 2 + p;
444
+ }
445
+ return R(new Blob());
446
+ })), d.readAsArrayBuffer(T);
447
+ }));
448
+ var W = {};
449
+ (function(T) {
450
+ var R, H, d = {};
451
+ T.exports = d, d.parse = function(e, t) {
452
+ for (var u = d.bin.readUshort, a = d.bin.readUint, p = 0, _ = {}, r = new Uint8Array(e), i = r.length - 4; a(r, i) != 101010256;) i--;
453
+ p = i, p += 4;
454
+ var n = u(r, p += 4);
455
+ u(r, p += 2);
456
+ var s = a(r, p += 2), h = a(r, p += 4);
457
+ p += 4, p = h;
458
+ for (var E = 0; E < n; E++) {
459
+ a(r, p), p += 4, p += 4, p += 4, a(r, p += 4), s = a(r, p += 4);
460
+ var S = a(r, p += 4), y = u(r, p += 4), D = u(r, p + 2), L = u(r, p + 4);
461
+ p += 6;
462
+ var P = a(r, p += 8);
463
+ p += 4, p += y + D + L, d._readLocal(r, P, _, s, S, t);
464
+ }
465
+ return _;
466
+ }, d._readLocal = function(e, t, u, a, p, _) {
467
+ var r = d.bin.readUshort, i = d.bin.readUint;
468
+ i(e, t), r(e, t += 4), r(e, t += 2);
469
+ var n = r(e, t += 2);
470
+ i(e, t += 2), i(e, t += 4), t += 4;
471
+ var s = r(e, t += 8), h = r(e, t += 2);
472
+ t += 2;
473
+ var E = d.bin.readUTF8(e, t, s);
474
+ if (t += s, t += h, _) u[E] = {
475
+ size: p,
476
+ csize: a
477
+ };
478
+ else {
479
+ var S = new Uint8Array(e.buffer, t);
480
+ if (n == 0) u[E] = new Uint8Array(S.buffer.slice(t, t + a));
481
+ else {
482
+ if (n != 8) throw "unknown compression method: " + n;
483
+ var y = new Uint8Array(p);
484
+ d.inflateRaw(S, y), u[E] = y;
485
+ }
486
+ }
487
+ }, d.inflateRaw = function(e, t) {
488
+ return d.F.inflate(e, t);
489
+ }, d.inflate = function(e, t) {
490
+ return e[0], e[1], d.inflateRaw(new Uint8Array(e.buffer, e.byteOffset + 2, e.length - 6), t);
491
+ }, d.deflate = function(e, t) {
492
+ t ??= { level: 6 };
493
+ var u = 0, a = new Uint8Array(50 + Math.floor(1.1 * e.length));
494
+ a[u] = 120, a[u + 1] = 156, u += 2, u = d.F.deflateRaw(e, a, u, t.level);
495
+ var p = d.adler(e, 0, e.length);
496
+ return a[u + 0] = p >>> 24 & 255, a[u + 1] = p >>> 16 & 255, a[u + 2] = p >>> 8 & 255, a[u + 3] = p >>> 0 & 255, new Uint8Array(a.buffer, 0, u + 4);
497
+ }, d.deflateRaw = function(e, t) {
498
+ t ??= { level: 6 };
499
+ var u = new Uint8Array(50 + Math.floor(1.1 * e.length)), a = d.F.deflateRaw(e, u, a, t.level);
500
+ return new Uint8Array(u.buffer, 0, a);
501
+ }, d.encode = function(e, t) {
502
+ t ??= !1;
503
+ var u = 0, a = d.bin.writeUint, p = d.bin.writeUshort, _ = {};
504
+ for (var r in e) {
505
+ var i = !d._noNeed(r) && !t, n = e[r], s = d.crc.crc(n, 0, n.length);
506
+ _[r] = {
507
+ cpr: i,
508
+ usize: n.length,
509
+ crc: s,
510
+ file: i ? d.deflateRaw(n) : n
511
+ };
512
+ }
513
+ for (var r in _) u += _[r].file.length + 30 + 46 + 2 * d.bin.sizeUTF8(r);
514
+ u += 22;
515
+ var h = new Uint8Array(u), E = 0, S = [];
516
+ for (var r in _) {
517
+ var y = _[r];
518
+ S.push(E), E = d._writeHeader(h, E, r, y, 0);
519
+ }
520
+ var D = 0, L = E;
521
+ for (var r in _) y = _[r], S.push(E), E = d._writeHeader(h, E, r, y, 1, S[D++]);
522
+ var P = E - L;
523
+ return a(h, E, 101010256), E += 4, p(h, E += 4, D), p(h, E += 2, D), a(h, E += 2, P), a(h, E += 4, L), E += 4, E += 2, h.buffer;
524
+ }, d._noNeed = function(e) {
525
+ var t = e.split(".").pop().toLowerCase();
526
+ return "png,jpg,jpeg,zip".indexOf(t) != -1;
527
+ }, d._writeHeader = function(e, t, u, a, p, _) {
528
+ var r = d.bin.writeUint, i = d.bin.writeUshort, n = a.file;
529
+ return r(e, t, p == 0 ? 67324752 : 33639248), t += 4, p == 1 && (t += 2), i(e, t, 20), i(e, t += 2, 0), i(e, t += 2, a.cpr ? 8 : 0), r(e, t += 2, 0), r(e, t += 4, a.crc), r(e, t += 4, n.length), r(e, t += 4, a.usize), i(e, t += 4, d.bin.sizeUTF8(u)), i(e, t += 2, 0), t += 2, p == 1 && (t += 2, t += 2, r(e, t += 6, _), t += 4), t += d.bin.writeUTF8(e, t, u), p == 0 && (e.set(n, t), t += n.length), t;
530
+ }, d.crc = {
531
+ table: (function() {
532
+ for (var e = new Uint32Array(256), t = 0; t < 256; t++) {
533
+ for (var u = t, a = 0; a < 8; a++) 1 & u ? u = 3988292384 ^ u >>> 1 : u >>>= 1;
534
+ e[t] = u;
535
+ }
536
+ return e;
537
+ })(),
538
+ update: function(e, t, u, a) {
539
+ for (var p = 0; p < a; p++) e = d.crc.table[255 & (e ^ t[u + p])] ^ e >>> 8;
540
+ return e;
541
+ },
542
+ crc: function(e, t, u) {
543
+ return 4294967295 ^ d.crc.update(4294967295, e, t, u);
544
+ }
545
+ }, d.adler = function(e, t, u) {
546
+ for (var a = 1, p = 0, _ = t, r = t + u; _ < r;) {
547
+ for (var i = Math.min(_ + 5552, r); _ < i;) p += a += e[_++];
548
+ a %= 65521, p %= 65521;
549
+ }
550
+ return p << 16 | a;
551
+ }, d.bin = {
552
+ readUshort: function(e, t) {
553
+ return e[t] | e[t + 1] << 8;
554
+ },
555
+ writeUshort: function(e, t, u) {
556
+ e[t] = 255 & u, e[t + 1] = u >> 8 & 255;
557
+ },
558
+ readUint: function(e, t) {
559
+ return 16777216 * e[t + 3] + (e[t + 2] << 16 | e[t + 1] << 8 | e[t]);
560
+ },
561
+ writeUint: function(e, t, u) {
562
+ e[t] = 255 & u, e[t + 1] = u >> 8 & 255, e[t + 2] = u >> 16 & 255, e[t + 3] = u >> 24 & 255;
563
+ },
564
+ readASCII: function(e, t, u) {
565
+ for (var a = "", p = 0; p < u; p++) a += String.fromCharCode(e[t + p]);
566
+ return a;
567
+ },
568
+ writeASCII: function(e, t, u) {
569
+ for (var a = 0; a < u.length; a++) e[t + a] = u.charCodeAt(a);
570
+ },
571
+ pad: function(e) {
572
+ return e.length < 2 ? "0" + e : e;
573
+ },
574
+ readUTF8: function(e, t, u) {
575
+ for (var a, p = "", _ = 0; _ < u; _++) p += "%" + d.bin.pad(e[t + _].toString(16));
576
+ try {
577
+ a = decodeURIComponent(p);
578
+ } catch {
579
+ return d.bin.readASCII(e, t, u);
580
+ }
581
+ return a;
582
+ },
583
+ writeUTF8: function(e, t, u) {
584
+ for (var a = u.length, p = 0, _ = 0; _ < a; _++) {
585
+ var r = u.charCodeAt(_);
586
+ if ((4294967168 & r) == 0) e[t + p] = r, p++;
587
+ else if ((4294965248 & r) == 0) e[t + p] = 192 | r >> 6, e[t + p + 1] = 128 | r >> 0 & 63, p += 2;
588
+ else if ((4294901760 & r) == 0) e[t + p] = 224 | r >> 12, e[t + p + 1] = 128 | r >> 6 & 63, e[t + p + 2] = 128 | r >> 0 & 63, p += 3;
589
+ else {
590
+ if ((4292870144 & r) != 0) throw "e";
591
+ e[t + p] = 240 | r >> 18, e[t + p + 1] = 128 | r >> 12 & 63, e[t + p + 2] = 128 | r >> 6 & 63, e[t + p + 3] = 128 | r >> 0 & 63, p += 4;
592
+ }
593
+ }
594
+ return p;
595
+ },
596
+ sizeUTF8: function(e) {
597
+ for (var t = e.length, u = 0, a = 0; a < t; a++) {
598
+ var p = e.charCodeAt(a);
599
+ if ((4294967168 & p) == 0) u++;
600
+ else if ((4294965248 & p) == 0) u += 2;
601
+ else if ((4294901760 & p) == 0) u += 3;
602
+ else {
603
+ if ((4292870144 & p) != 0) throw "e";
604
+ u += 4;
605
+ }
606
+ }
607
+ return u;
608
+ }
609
+ }, d.F = {}, d.F.deflateRaw = function(e, t, u, a) {
610
+ var p = [
611
+ [
612
+ 0,
613
+ 0,
614
+ 0,
615
+ 0,
616
+ 0
617
+ ],
618
+ [
619
+ 4,
620
+ 4,
621
+ 8,
622
+ 4,
623
+ 0
624
+ ],
625
+ [
626
+ 4,
627
+ 5,
628
+ 16,
629
+ 8,
630
+ 0
631
+ ],
632
+ [
633
+ 4,
634
+ 6,
635
+ 16,
636
+ 16,
637
+ 0
638
+ ],
639
+ [
640
+ 4,
641
+ 10,
642
+ 16,
643
+ 32,
644
+ 0
645
+ ],
646
+ [
647
+ 8,
648
+ 16,
649
+ 32,
650
+ 32,
651
+ 0
652
+ ],
653
+ [
654
+ 8,
655
+ 16,
656
+ 128,
657
+ 128,
658
+ 0
659
+ ],
660
+ [
661
+ 8,
662
+ 32,
663
+ 128,
664
+ 256,
665
+ 0
666
+ ],
667
+ [
668
+ 32,
669
+ 128,
670
+ 258,
671
+ 1024,
672
+ 1
673
+ ],
674
+ [
675
+ 32,
676
+ 258,
677
+ 258,
678
+ 4096,
679
+ 1
680
+ ]
681
+ ][a], _ = d.F.U, r = d.F._goodIndex;
682
+ d.F._hash;
683
+ var i = d.F._putsE, n = 0, s = u << 3, h = 0, E = e.length;
684
+ if (a == 0) {
685
+ for (; n < E;) i(t, s, n + (A = Math.min(65535, E - n)) == E ? 1 : 0), s = d.F._copyExact(e, n, A, t, s + 8), n += A;
686
+ return s >>> 3;
687
+ }
688
+ var S = _.lits, y = _.strt, D = _.prev, L = 0, P = 0, j = 0, m = 0, C = 0, c = 0;
689
+ for (E > 2 && (y[c = d.F._hash(e, 0)] = 0), n = 0; n < E; n++) {
690
+ if (C = c, n + 1 < E - 2) {
691
+ c = d.F._hash(e, n + 1);
692
+ var f = n + 1 & 32767;
693
+ D[f] = y[c], y[c] = f;
694
+ }
695
+ if (h <= n) {
696
+ (L > 14e3 || P > 26697) && E - n > 100 && (h < n && (S[L] = n - h, L += 2, h = n), s = d.F._writeBlock(n == E - 1 || h == E ? 1 : 0, S, L, m, e, j, n - j, t, s), L = P = m = 0, j = n);
697
+ var b = 0;
698
+ n < E - 2 && (b = d.F._bestMatch(e, n, D, C, Math.min(p[2], E - n), p[3]));
699
+ var A = b >>> 16, w = 65535 & b;
700
+ if (b != 0) {
701
+ w = 65535 & b;
702
+ var U = r(A = b >>> 16, _.of0);
703
+ _.lhst[257 + U]++;
704
+ var v = r(w, _.df0);
705
+ _.dhst[v]++, m += _.exb[U] + _.dxb[v], S[L] = A << 23 | n - h, S[L + 1] = w << 16 | U << 8 | v, L += 2, h = n + A;
706
+ } else _.lhst[e[n]]++;
707
+ P++;
708
+ }
709
+ }
710
+ for (j == n && e.length != 0 || (h < n && (S[L] = n - h, L += 2, h = n), s = d.F._writeBlock(1, S, L, m, e, j, n - j, t, s), L = 0, P = 0, L = P = m = 0, j = n); (7 & s) != 0;) s++;
711
+ return s >>> 3;
712
+ }, d.F._bestMatch = function(e, t, u, a, p, _) {
713
+ var r = 32767 & t, i = u[r], n = r - i + 32768 & 32767;
714
+ if (i == r || a != d.F._hash(e, t - n)) return 0;
715
+ for (var s = 0, h = 0, E = Math.min(32767, t); n <= E && --_ != 0 && i != r;) {
716
+ if (s == 0 || e[t + s] == e[t + s - n]) {
717
+ var S = d.F._howLong(e, t, n);
718
+ if (S > s) {
719
+ if (h = n, (s = S) >= p) break;
720
+ n + 2 < S && (S = n + 2);
721
+ for (var y = 0, D = 0; D < S - 2; D++) {
722
+ var L = t - n + D + 32768 & 32767, P = L - u[L] + 32768 & 32767;
723
+ P > y && (y = P, i = L);
724
+ }
725
+ }
726
+ }
727
+ n += (r = i) - (i = u[r]) + 32768 & 32767;
728
+ }
729
+ return s << 16 | h;
730
+ }, d.F._howLong = function(e, t, u) {
731
+ if (e[t] != e[t - u] || e[t + 1] != e[t + 1 - u] || e[t + 2] != e[t + 2 - u]) return 0;
732
+ var a = t, p = Math.min(e.length, t + 258);
733
+ for (t += 3; t < p && e[t] == e[t - u];) t++;
734
+ return t - a;
735
+ }, d.F._hash = function(e, t) {
736
+ return (e[t] << 8 | e[t + 1]) + (e[t + 2] << 4) & 65535;
737
+ }, d.saved = 0, d.F._writeBlock = function(e, t, u, a, p, _, r, i, n) {
738
+ var s, h, E, S, y, D, L, P, j, m = d.F.U, C = d.F._putsF, c = d.F._putsE;
739
+ m.lhst[256]++, h = (s = d.F.getTrees())[0], E = s[1], S = s[2], y = s[3], D = s[4], L = s[5], P = s[6], j = s[7];
740
+ var f = 32 + ((n + 3 & 7) == 0 ? 0 : 8 - (n + 3 & 7)) + (r << 3), b = a + d.F.contSize(m.fltree, m.lhst) + d.F.contSize(m.fdtree, m.dhst), A = a + d.F.contSize(m.ltree, m.lhst) + d.F.contSize(m.dtree, m.dhst);
741
+ A += 14 + 3 * L + d.F.contSize(m.itree, m.ihst) + (2 * m.ihst[16] + 3 * m.ihst[17] + 7 * m.ihst[18]);
742
+ for (var w = 0; w < 286; w++) m.lhst[w] = 0;
743
+ for (w = 0; w < 30; w++) m.dhst[w] = 0;
744
+ for (w = 0; w < 19; w++) m.ihst[w] = 0;
745
+ var U = f < b && f < A ? 0 : b < A ? 1 : 2;
746
+ if (C(i, n, e), C(i, n + 1, U), n += 3, U == 0) {
747
+ for (; (7 & n) != 0;) n++;
748
+ n = d.F._copyExact(p, _, r, i, n);
749
+ } else {
750
+ var v, M;
751
+ if (U == 1 && (v = m.fltree, M = m.fdtree), U == 2) {
752
+ d.F.makeCodes(m.ltree, h), d.F.revCodes(m.ltree, h), d.F.makeCodes(m.dtree, E), d.F.revCodes(m.dtree, E), d.F.makeCodes(m.itree, S), d.F.revCodes(m.itree, S), v = m.ltree, M = m.dtree, c(i, n, y - 257), c(i, n += 5, D - 1), c(i, n += 5, L - 4), n += 4;
753
+ for (var l = 0; l < L; l++) c(i, n + 3 * l, m.itree[1 + (m.ordr[l] << 1)]);
754
+ n += 3 * L, n = d.F._codeTiny(P, m.itree, i, n), n = d.F._codeTiny(j, m.itree, i, n);
755
+ }
756
+ for (var o = _, O = 0; O < u; O += 2) {
757
+ for (var F = t[O], B = F >>> 23, X = o + (8388607 & F); o < X;) n = d.F._writeLit(p[o++], v, i, n);
758
+ if (B != 0) {
759
+ var Q = t[O + 1], q = Q >> 16, N = Q >> 8 & 255, x = 255 & Q;
760
+ c(i, n = d.F._writeLit(257 + N, v, i, n), B - m.of0[N]), n += m.exb[N], C(i, n = d.F._writeLit(x, M, i, n), q - m.df0[x]), n += m.dxb[x], o += B;
761
+ }
762
+ }
763
+ n = d.F._writeLit(256, v, i, n);
764
+ }
765
+ return n;
766
+ }, d.F._copyExact = function(e, t, u, a, p) {
767
+ var _ = p >>> 3;
768
+ return a[_] = u, a[_ + 1] = u >>> 8, a[_ + 2] = 255 - a[_], a[_ + 3] = 255 - a[_ + 1], _ += 4, a.set(new Uint8Array(e.buffer, t, u), _), p + (u + 4 << 3);
769
+ }, d.F.getTrees = function() {
770
+ for (var e = d.F.U, t = d.F._hufTree(e.lhst, e.ltree, 15), u = d.F._hufTree(e.dhst, e.dtree, 15), a = [], p = d.F._lenCodes(e.ltree, a), _ = [], r = d.F._lenCodes(e.dtree, _), i = 0; i < a.length; i += 2) e.ihst[a[i]]++;
771
+ for (i = 0; i < _.length; i += 2) e.ihst[_[i]]++;
772
+ for (var n = d.F._hufTree(e.ihst, e.itree, 7), s = 19; s > 4 && e.itree[1 + (e.ordr[s - 1] << 1)] == 0;) s--;
773
+ return [
774
+ t,
775
+ u,
776
+ n,
777
+ p,
778
+ r,
779
+ s,
780
+ a,
781
+ _
782
+ ];
783
+ }, d.F.getSecond = function(e) {
784
+ for (var t = [], u = 0; u < e.length; u += 2) t.push(e[u + 1]);
785
+ return t;
786
+ }, d.F.nonZero = function(e) {
787
+ for (var t = "", u = 0; u < e.length; u += 2) e[u + 1] != 0 && (t += (u >> 1) + ",");
788
+ return t;
789
+ }, d.F.contSize = function(e, t) {
790
+ for (var u = 0, a = 0; a < t.length; a++) u += t[a] * e[1 + (a << 1)];
791
+ return u;
792
+ }, d.F._codeTiny = function(e, t, u, a) {
793
+ for (var p = 0; p < e.length; p += 2) {
794
+ var _ = e[p], r = e[p + 1];
795
+ a = d.F._writeLit(_, t, u, a);
796
+ var i = _ == 16 ? 2 : _ == 17 ? 3 : 7;
797
+ _ > 15 && (d.F._putsE(u, a, r, i), a += i);
798
+ }
799
+ return a;
800
+ }, d.F._lenCodes = function(e, t) {
801
+ for (var u = e.length; u != 2 && e[u - 1] == 0;) u -= 2;
802
+ for (var a = 0; a < u; a += 2) {
803
+ var p = e[a + 1], _ = a + 3 < u ? e[a + 3] : -1, r = a + 5 < u ? e[a + 5] : -1, i = a == 0 ? -1 : e[a - 1];
804
+ if (p == 0 && _ == p && r == p) {
805
+ for (var n = a + 5; n + 2 < u && e[n + 2] == p;) n += 2;
806
+ (s = Math.min(n + 1 - a >>> 1, 138)) < 11 ? t.push(17, s - 3) : t.push(18, s - 11), a += 2 * s - 2;
807
+ } else if (p == i && _ == p && r == p) {
808
+ for (n = a + 5; n + 2 < u && e[n + 2] == p;) n += 2;
809
+ var s = Math.min(n + 1 - a >>> 1, 6);
810
+ t.push(16, s - 3), a += 2 * s - 2;
811
+ } else t.push(p, 0);
812
+ }
813
+ return u >>> 1;
814
+ }, d.F._hufTree = function(e, t, u) {
815
+ var a = [], p = e.length, _ = t.length, r = 0;
816
+ for (r = 0; r < _; r += 2) t[r] = 0, t[r + 1] = 0;
817
+ for (r = 0; r < p; r++) e[r] != 0 && a.push({
818
+ lit: r,
819
+ f: e[r]
820
+ });
821
+ var i = a.length, n = a.slice(0);
822
+ if (i == 0) return 0;
823
+ if (i == 1) {
824
+ var s = a[0].lit;
825
+ return n = s == 0 ? 1 : 0, t[1 + (s << 1)] = 1, t[1 + (n << 1)] = 1, 1;
826
+ }
827
+ a.sort((function(P, j) {
828
+ return P.f - j.f;
829
+ }));
830
+ var h = a[0], E = a[1], S = 0, y = 1, D = 2;
831
+ for (a[0] = {
832
+ lit: -1,
833
+ f: h.f + E.f,
834
+ l: h,
835
+ r: E,
836
+ d: 0
837
+ }; y != i - 1;) h = S != y && (D == i || a[S].f < a[D].f) ? a[S++] : a[D++], E = S != y && (D == i || a[S].f < a[D].f) ? a[S++] : a[D++], a[y++] = {
838
+ lit: -1,
839
+ f: h.f + E.f,
840
+ l: h,
841
+ r: E
842
+ };
843
+ var L = d.F.setDepth(a[y - 1], 0);
844
+ for (L > u && (d.F.restrictDepth(n, u, L), L = u), r = 0; r < i; r++) t[1 + (n[r].lit << 1)] = n[r].d;
845
+ return L;
846
+ }, d.F.setDepth = function(e, t) {
847
+ return e.lit != -1 ? (e.d = t, t) : Math.max(d.F.setDepth(e.l, t + 1), d.F.setDepth(e.r, t + 1));
848
+ }, d.F.restrictDepth = function(e, t, u) {
849
+ var a = 0, p = 1 << u - t, _ = 0;
850
+ for (e.sort((function(i, n) {
851
+ return n.d == i.d ? i.f - n.f : n.d - i.d;
852
+ })), a = 0; a < e.length && e[a].d > t; a++) {
853
+ var r = e[a].d;
854
+ e[a].d = t, _ += p - (1 << u - r);
855
+ }
856
+ for (_ >>>= u - t; _ > 0;) (r = e[a].d) < t ? (e[a].d++, _ -= 1 << t - r - 1) : a++;
857
+ for (; a >= 0; a--) e[a].d == t && _ < 0 && (e[a].d--, _++);
858
+ }, d.F._goodIndex = function(e, t) {
859
+ var u = 0;
860
+ return t[16 | u] <= e && (u |= 16), t[8 | u] <= e && (u |= 8), t[4 | u] <= e && (u |= 4), t[2 | u] <= e && (u |= 2), t[1 | u] <= e && (u |= 1), u;
861
+ }, d.F._writeLit = function(e, t, u, a) {
862
+ return d.F._putsF(u, a, t[e << 1]), a + t[1 + (e << 1)];
863
+ }, d.F.inflate = function(e, t) {
864
+ var u = Uint8Array;
865
+ if (e[0] == 3 && e[1] == 0) return t || new u(0);
866
+ var a = d.F, p = a._bitsF, _ = a._bitsE, r = a._decodeTiny, i = a.makeCodes, n = a.codes2map, s = a._get17, h = a.U, E = t == null;
867
+ E && (t = new u(e.length >>> 2 << 3));
868
+ for (var S, y, D = 0, L = 0, P = 0, j = 0, m = 0, C = 0, c = 0, f = 0, b = 0; D == 0;) if (D = p(e, b, 1), L = p(e, b + 1, 2), b += 3, L != 0) {
869
+ if (E && (t = d.F._check(t, f + (1 << 17))), L == 1 && (S = h.flmap, y = h.fdmap, C = 511, c = 31), L == 2) {
870
+ P = _(e, b, 5) + 257, j = _(e, b + 5, 5) + 1, m = _(e, b + 10, 4) + 4, b += 14;
871
+ for (var A = 0; A < 38; A += 2) h.itree[A] = 0, h.itree[A + 1] = 0;
872
+ var w = 1;
873
+ for (A = 0; A < m; A++) {
874
+ var U = _(e, b + 3 * A, 3);
875
+ h.itree[1 + (h.ordr[A] << 1)] = U, U > w && (w = U);
876
+ }
877
+ b += 3 * m, i(h.itree, w), n(h.itree, w, h.imap), S = h.lmap, y = h.dmap, b = r(h.imap, (1 << w) - 1, P + j, e, b, h.ttree);
878
+ var v = a._copyOut(h.ttree, 0, P, h.ltree);
879
+ C = (1 << v) - 1;
880
+ var M = a._copyOut(h.ttree, P, j, h.dtree);
881
+ c = (1 << M) - 1, i(h.ltree, v), n(h.ltree, v, S), i(h.dtree, M), n(h.dtree, M, y);
882
+ }
883
+ for (;;) {
884
+ var l = S[s(e, b) & C];
885
+ b += 15 & l;
886
+ var o = l >>> 4;
887
+ if (!(o >>> 8)) t[f++] = o;
888
+ else {
889
+ if (o == 256) break;
890
+ var O = f + o - 254;
891
+ if (o > 264) {
892
+ var F = h.ldef[o - 257];
893
+ O = f + (F >>> 3) + _(e, b, 7 & F), b += 7 & F;
894
+ }
895
+ var B = y[s(e, b) & c];
896
+ b += 15 & B;
897
+ var X = B >>> 4, Q = h.ddef[X], q = (Q >>> 4) + p(e, b, 15 & Q);
898
+ for (b += 15 & Q, E && (t = d.F._check(t, f + (1 << 17))); f < O;) t[f] = t[f++ - q], t[f] = t[f++ - q], t[f] = t[f++ - q], t[f] = t[f++ - q];
899
+ f = O;
900
+ }
901
+ }
902
+ } else {
903
+ 7 & b && (b += 8 - (7 & b));
904
+ var N = 4 + (b >>> 3), x = e[N - 4] | e[N - 3] << 8;
905
+ E && (t = d.F._check(t, f + x)), t.set(new u(e.buffer, e.byteOffset + N, x), f), b = N + x << 3, f += x;
906
+ }
907
+ return t.length == f ? t : t.slice(0, f);
908
+ }, d.F._check = function(e, t) {
909
+ var u = e.length;
910
+ if (t <= u) return e;
911
+ var a = new Uint8Array(Math.max(u << 1, t));
912
+ return a.set(e, 0), a;
913
+ }, d.F._decodeTiny = function(e, t, u, a, p, _) {
914
+ for (var r = d.F._bitsE, i = d.F._get17, n = 0; n < u;) {
915
+ var s = e[i(a, p) & t];
916
+ p += 15 & s;
917
+ var h = s >>> 4;
918
+ if (h <= 15) _[n] = h, n++;
919
+ else {
920
+ var E = 0, S = 0;
921
+ h == 16 ? (S = 3 + r(a, p, 2), p += 2, E = _[n - 1]) : h == 17 ? (S = 3 + r(a, p, 3), p += 3) : h == 18 && (S = 11 + r(a, p, 7), p += 7);
922
+ for (var y = n + S; n < y;) _[n] = E, n++;
923
+ }
924
+ }
925
+ return p;
926
+ }, d.F._copyOut = function(e, t, u, a) {
927
+ for (var p = 0, _ = 0, r = a.length >>> 1; _ < u;) {
928
+ var i = e[_ + t];
929
+ a[_ << 1] = 0, a[1 + (_ << 1)] = i, i > p && (p = i), _++;
930
+ }
931
+ for (; _ < r;) a[_ << 1] = 0, a[1 + (_ << 1)] = 0, _++;
932
+ return p;
933
+ }, d.F.makeCodes = function(e, t) {
934
+ for (var u, a, p, _, r = d.F.U, i = e.length, n = r.bl_count, s = 0; s <= t; s++) n[s] = 0;
935
+ for (s = 1; s < i; s += 2) n[e[s]]++;
936
+ var h = r.next_code;
937
+ for (u = 0, n[0] = 0, a = 1; a <= t; a++) u = u + n[a - 1] << 1, h[a] = u;
938
+ for (p = 0; p < i; p += 2) (_ = e[p + 1]) != 0 && (e[p] = h[_], h[_]++);
939
+ }, d.F.codes2map = function(e, t, u) {
940
+ for (var a = e.length, p = d.F.U.rev15, _ = 0; _ < a; _ += 2) if (e[_ + 1] != 0) for (var r = _ >> 1, i = e[_ + 1], n = r << 4 | i, s = t - i, h = e[_] << s, E = h + (1 << s); h != E;) u[p[h] >>> 15 - t] = n, h++;
941
+ }, d.F.revCodes = function(e, t) {
942
+ for (var u = d.F.U.rev15, a = 15 - t, p = 0; p < e.length; p += 2) e[p] = u[e[p] << t - e[p + 1]] >>> a;
943
+ }, d.F._putsE = function(e, t, u) {
944
+ u <<= 7 & t;
945
+ var a = t >>> 3;
946
+ e[a] |= u, e[a + 1] |= u >>> 8;
947
+ }, d.F._putsF = function(e, t, u) {
948
+ u <<= 7 & t;
949
+ var a = t >>> 3;
950
+ e[a] |= u, e[a + 1] |= u >>> 8, e[a + 2] |= u >>> 16;
951
+ }, d.F._bitsE = function(e, t, u) {
952
+ return (e[t >>> 3] | e[1 + (t >>> 3)] << 8) >>> (7 & t) & (1 << u) - 1;
953
+ }, d.F._bitsF = function(e, t, u) {
954
+ return (e[t >>> 3] | e[1 + (t >>> 3)] << 8 | e[2 + (t >>> 3)] << 16) >>> (7 & t) & (1 << u) - 1;
955
+ }, d.F._get17 = function(e, t) {
956
+ return (e[t >>> 3] | e[1 + (t >>> 3)] << 8 | e[2 + (t >>> 3)] << 16) >>> (7 & t);
957
+ }, d.F._get25 = function(e, t) {
958
+ return (e[t >>> 3] | e[1 + (t >>> 3)] << 8 | e[2 + (t >>> 3)] << 16 | e[3 + (t >>> 3)] << 24) >>> (7 & t);
959
+ }, d.F.U = (R = Uint16Array, H = Uint32Array, {
960
+ next_code: new R(16),
961
+ bl_count: new R(16),
962
+ ordr: [
963
+ 16,
964
+ 17,
965
+ 18,
966
+ 0,
967
+ 8,
968
+ 7,
969
+ 9,
970
+ 6,
971
+ 10,
972
+ 5,
973
+ 11,
974
+ 4,
975
+ 12,
976
+ 3,
977
+ 13,
978
+ 2,
979
+ 14,
980
+ 1,
981
+ 15
982
+ ],
983
+ of0: [
984
+ 3,
985
+ 4,
986
+ 5,
987
+ 6,
988
+ 7,
989
+ 8,
990
+ 9,
991
+ 10,
992
+ 11,
993
+ 13,
994
+ 15,
995
+ 17,
996
+ 19,
997
+ 23,
998
+ 27,
999
+ 31,
1000
+ 35,
1001
+ 43,
1002
+ 51,
1003
+ 59,
1004
+ 67,
1005
+ 83,
1006
+ 99,
1007
+ 115,
1008
+ 131,
1009
+ 163,
1010
+ 195,
1011
+ 227,
1012
+ 258,
1013
+ 999,
1014
+ 999,
1015
+ 999
1016
+ ],
1017
+ exb: [
1018
+ 0,
1019
+ 0,
1020
+ 0,
1021
+ 0,
1022
+ 0,
1023
+ 0,
1024
+ 0,
1025
+ 0,
1026
+ 1,
1027
+ 1,
1028
+ 1,
1029
+ 1,
1030
+ 2,
1031
+ 2,
1032
+ 2,
1033
+ 2,
1034
+ 3,
1035
+ 3,
1036
+ 3,
1037
+ 3,
1038
+ 4,
1039
+ 4,
1040
+ 4,
1041
+ 4,
1042
+ 5,
1043
+ 5,
1044
+ 5,
1045
+ 5,
1046
+ 0,
1047
+ 0,
1048
+ 0,
1049
+ 0
1050
+ ],
1051
+ ldef: new R(32),
1052
+ df0: [
1053
+ 1,
1054
+ 2,
1055
+ 3,
1056
+ 4,
1057
+ 5,
1058
+ 7,
1059
+ 9,
1060
+ 13,
1061
+ 17,
1062
+ 25,
1063
+ 33,
1064
+ 49,
1065
+ 65,
1066
+ 97,
1067
+ 129,
1068
+ 193,
1069
+ 257,
1070
+ 385,
1071
+ 513,
1072
+ 769,
1073
+ 1025,
1074
+ 1537,
1075
+ 2049,
1076
+ 3073,
1077
+ 4097,
1078
+ 6145,
1079
+ 8193,
1080
+ 12289,
1081
+ 16385,
1082
+ 24577,
1083
+ 65535,
1084
+ 65535
1085
+ ],
1086
+ dxb: [
1087
+ 0,
1088
+ 0,
1089
+ 0,
1090
+ 0,
1091
+ 1,
1092
+ 1,
1093
+ 2,
1094
+ 2,
1095
+ 3,
1096
+ 3,
1097
+ 4,
1098
+ 4,
1099
+ 5,
1100
+ 5,
1101
+ 6,
1102
+ 6,
1103
+ 7,
1104
+ 7,
1105
+ 8,
1106
+ 8,
1107
+ 9,
1108
+ 9,
1109
+ 10,
1110
+ 10,
1111
+ 11,
1112
+ 11,
1113
+ 12,
1114
+ 12,
1115
+ 13,
1116
+ 13,
1117
+ 0,
1118
+ 0
1119
+ ],
1120
+ ddef: new H(32),
1121
+ flmap: new R(512),
1122
+ fltree: [],
1123
+ fdmap: new R(32),
1124
+ fdtree: [],
1125
+ lmap: new R(32768),
1126
+ ltree: [],
1127
+ ttree: [],
1128
+ dmap: new R(32768),
1129
+ dtree: [],
1130
+ imap: new R(512),
1131
+ itree: [],
1132
+ rev15: new R(32768),
1133
+ lhst: new H(286),
1134
+ dhst: new H(30),
1135
+ ihst: new H(19),
1136
+ lits: new H(15e3),
1137
+ strt: new R(65536),
1138
+ prev: new R(32768)
1139
+ }), (function() {
1140
+ for (var e = d.F.U, t = 0; t < 32768; t++) {
1141
+ var u = t;
1142
+ u = (4278255360 & (u = (4042322160 & (u = (3435973836 & (u = (2863311530 & u) >>> 1 | (1431655765 & u) << 1)) >>> 2 | (858993459 & u) << 2)) >>> 4 | (252645135 & u) << 4)) >>> 8 | (16711935 & u) << 8, e.rev15[t] = (u >>> 16 | u << 16) >>> 17;
1143
+ }
1144
+ function a(p, _, r) {
1145
+ for (; _-- != 0;) p.push(0, r);
1146
+ }
1147
+ for (t = 0; t < 32; t++) e.ldef[t] = e.of0[t] << 3 | e.exb[t], e.ddef[t] = e.df0[t] << 4 | e.dxb[t];
1148
+ a(e.fltree, 144, 8), a(e.fltree, 112, 9), a(e.fltree, 24, 7), a(e.fltree, 8, 8), d.F.makeCodes(e.fltree, 9), d.F.codes2map(e.fltree, 9, e.flmap), d.F.revCodes(e.fltree, 9), a(e.fdtree, 32, 5), d.F.makeCodes(e.fdtree, 5), d.F.codes2map(e.fdtree, 5, e.fdmap), d.F.revCodes(e.fdtree, 5), a(e.itree, 19, 0), a(e.ltree, 286, 0), a(e.dtree, 30, 0), a(e.ttree, 320, 0);
1149
+ })();
1150
+ })({
1151
+ get exports() {
1152
+ return W;
1153
+ },
1154
+ set exports(T) {
1155
+ W = T;
1156
+ }
1157
+ });
1158
+ var V = k({
1159
+ __proto__: null,
1160
+ default: W
1161
+ }, [W]);
1162
+ const Z = (function() {
1163
+ var T = {
1164
+ nextZero(r, i) {
1165
+ for (; r[i] != 0;) i++;
1166
+ return i;
1167
+ },
1168
+ readUshort: (r, i) => r[i] << 8 | r[i + 1],
1169
+ writeUshort(r, i, n) {
1170
+ r[i] = n >> 8 & 255, r[i + 1] = 255 & n;
1171
+ },
1172
+ readUint: (r, i) => 16777216 * r[i] + (r[i + 1] << 16 | r[i + 2] << 8 | r[i + 3]),
1173
+ writeUint(r, i, n) {
1174
+ r[i] = n >> 24 & 255, r[i + 1] = n >> 16 & 255, r[i + 2] = n >> 8 & 255, r[i + 3] = 255 & n;
1175
+ },
1176
+ readASCII(r, i, n) {
1177
+ let s = "";
1178
+ for (let h = 0; h < n; h++) s += String.fromCharCode(r[i + h]);
1179
+ return s;
1180
+ },
1181
+ writeASCII(r, i, n) {
1182
+ for (let s = 0; s < n.length; s++) r[i + s] = n.charCodeAt(s);
1183
+ },
1184
+ readBytes(r, i, n) {
1185
+ const s = [];
1186
+ for (let h = 0; h < n; h++) s.push(r[i + h]);
1187
+ return s;
1188
+ },
1189
+ pad: (r) => r.length < 2 ? `0${r}` : r,
1190
+ readUTF8(r, i, n) {
1191
+ let s, h = "";
1192
+ for (let E = 0; E < n; E++) h += `%${T.pad(r[i + E].toString(16))}`;
1193
+ try {
1194
+ s = decodeURIComponent(h);
1195
+ } catch {
1196
+ return T.readASCII(r, i, n);
1197
+ }
1198
+ return s;
1199
+ }
1200
+ };
1201
+ function R(r, i, n, s) {
1202
+ const h = i * n, E = t(s), S = Math.ceil(i * E / 8), y = new Uint8Array(4 * h), D = new Uint32Array(y.buffer), { ctype: L } = s, { depth: P } = s, j = T.readUshort;
1203
+ if (L == 6) {
1204
+ const F = h << 2;
1205
+ if (P == 8) for (var m = 0; m < F; m += 4) y[m] = r[m], y[m + 1] = r[m + 1], y[m + 2] = r[m + 2], y[m + 3] = r[m + 3];
1206
+ if (P == 16) for (m = 0; m < F; m++) y[m] = r[m << 1];
1207
+ } else if (L == 2) {
1208
+ const F = s.tabs.tRNS;
1209
+ if (F == null) {
1210
+ if (P == 8) for (m = 0; m < h; m++) {
1211
+ var C = 3 * m;
1212
+ D[m] = 255 << 24 | r[C + 2] << 16 | r[C + 1] << 8 | r[C];
1213
+ }
1214
+ if (P == 16) for (m = 0; m < h; m++) C = 6 * m, D[m] = 255 << 24 | r[C + 4] << 16 | r[C + 2] << 8 | r[C];
1215
+ } else {
1216
+ var c = F[0];
1217
+ const B = F[1], X = F[2];
1218
+ if (P == 8) for (m = 0; m < h; m++) {
1219
+ var f = m << 2;
1220
+ C = 3 * m, D[m] = 255 << 24 | r[C + 2] << 16 | r[C + 1] << 8 | r[C], r[C] == c && r[C + 1] == B && r[C + 2] == X && (y[f + 3] = 0);
1221
+ }
1222
+ if (P == 16) for (m = 0; m < h; m++) f = m << 2, C = 6 * m, D[m] = 255 << 24 | r[C + 4] << 16 | r[C + 2] << 8 | r[C], j(r, C) == c && j(r, C + 2) == B && j(r, C + 4) == X && (y[f + 3] = 0);
1223
+ }
1224
+ } else if (L == 3) {
1225
+ const F = s.tabs.PLTE, B = s.tabs.tRNS, X = B ? B.length : 0;
1226
+ if (P == 1) for (var b = 0; b < n; b++) {
1227
+ var A = b * S, w = b * i;
1228
+ for (m = 0; m < i; m++) {
1229
+ f = w + m << 2;
1230
+ var U = 3 * (v = r[A + (m >> 3)] >> 7 - ((7 & m) << 0) & 1);
1231
+ y[f] = F[U], y[f + 1] = F[U + 1], y[f + 2] = F[U + 2], y[f + 3] = v < X ? B[v] : 255;
1232
+ }
1233
+ }
1234
+ if (P == 2) for (b = 0; b < n; b++) for (A = b * S, w = b * i, m = 0; m < i; m++) f = w + m << 2, U = 3 * (v = r[A + (m >> 2)] >> 6 - ((3 & m) << 1) & 3), y[f] = F[U], y[f + 1] = F[U + 1], y[f + 2] = F[U + 2], y[f + 3] = v < X ? B[v] : 255;
1235
+ if (P == 4) for (b = 0; b < n; b++) for (A = b * S, w = b * i, m = 0; m < i; m++) f = w + m << 2, U = 3 * (v = r[A + (m >> 1)] >> 4 - ((1 & m) << 2) & 15), y[f] = F[U], y[f + 1] = F[U + 1], y[f + 2] = F[U + 2], y[f + 3] = v < X ? B[v] : 255;
1236
+ if (P == 8) for (m = 0; m < h; m++) {
1237
+ var v;
1238
+ f = m << 2, U = 3 * (v = r[m]), y[f] = F[U], y[f + 1] = F[U + 1], y[f + 2] = F[U + 2], y[f + 3] = v < X ? B[v] : 255;
1239
+ }
1240
+ } else if (L == 4) {
1241
+ if (P == 8) for (m = 0; m < h; m++) {
1242
+ f = m << 2;
1243
+ var M = r[l = m << 1];
1244
+ y[f] = M, y[f + 1] = M, y[f + 2] = M, y[f + 3] = r[l + 1];
1245
+ }
1246
+ if (P == 16) for (m = 0; m < h; m++) {
1247
+ var l;
1248
+ f = m << 2, M = r[l = m << 2], y[f] = M, y[f + 1] = M, y[f + 2] = M, y[f + 3] = r[l + 2];
1249
+ }
1250
+ } else if (L == 0) for (c = s.tabs.tRNS ? s.tabs.tRNS : -1, b = 0; b < n; b++) {
1251
+ const F = b * S, B = b * i;
1252
+ if (P == 1) for (var o = 0; o < i; o++) {
1253
+ var O = (M = 255 * (r[F + (o >>> 3)] >>> 7 - (7 & o) & 1)) == 255 * c ? 0 : 255;
1254
+ D[B + o] = O << 24 | M << 16 | M << 8 | M;
1255
+ }
1256
+ else if (P == 2) for (o = 0; o < i; o++) O = (M = 85 * (r[F + (o >>> 2)] >>> 6 - ((3 & o) << 1) & 3)) == 85 * c ? 0 : 255, D[B + o] = O << 24 | M << 16 | M << 8 | M;
1257
+ else if (P == 4) for (o = 0; o < i; o++) O = (M = 17 * (r[F + (o >>> 1)] >>> 4 - ((1 & o) << 2) & 15)) == 17 * c ? 0 : 255, D[B + o] = O << 24 | M << 16 | M << 8 | M;
1258
+ else if (P == 8) for (o = 0; o < i; o++) O = (M = r[F + o]) == c ? 0 : 255, D[B + o] = O << 24 | M << 16 | M << 8 | M;
1259
+ else if (P == 16) for (o = 0; o < i; o++) M = r[F + (o << 1)], O = j(r, F + (o << 1)) == c ? 0 : 255, D[B + o] = O << 24 | M << 16 | M << 8 | M;
1260
+ }
1261
+ return y;
1262
+ }
1263
+ function H(r, i, n, s) {
1264
+ const h = t(r), E = Math.ceil(n * h / 8), S = new Uint8Array((E + 1 + r.interlace) * s);
1265
+ return i = r.tabs.CgBI ? e(i, S) : d(i, S), r.interlace == 0 ? i = u(i, r, 0, n, s) : r.interlace == 1 && (i = (function(D, L) {
1266
+ const P = L.width, j = L.height, m = t(L), C = m >> 3, c = Math.ceil(P * m / 8), f = new Uint8Array(j * c);
1267
+ let b = 0;
1268
+ const A = [
1269
+ 0,
1270
+ 0,
1271
+ 4,
1272
+ 0,
1273
+ 2,
1274
+ 0,
1275
+ 1
1276
+ ], w = [
1277
+ 0,
1278
+ 4,
1279
+ 0,
1280
+ 2,
1281
+ 0,
1282
+ 1,
1283
+ 0
1284
+ ], U = [
1285
+ 8,
1286
+ 8,
1287
+ 8,
1288
+ 4,
1289
+ 4,
1290
+ 2,
1291
+ 2
1292
+ ], v = [
1293
+ 8,
1294
+ 8,
1295
+ 4,
1296
+ 4,
1297
+ 2,
1298
+ 2,
1299
+ 1
1300
+ ];
1301
+ let M = 0;
1302
+ for (; M < 7;) {
1303
+ const o = U[M], O = v[M];
1304
+ let F = 0, B = 0, X = A[M];
1305
+ for (; X < j;) X += o, B++;
1306
+ let Q = w[M];
1307
+ for (; Q < P;) Q += O, F++;
1308
+ const q = Math.ceil(F * m / 8);
1309
+ u(D, L, b, F, B);
1310
+ let N = 0, x = A[M];
1311
+ for (; x < j;) {
1312
+ let K = w[M], se = b + N * q << 3;
1313
+ for (; K < P;) {
1314
+ var l;
1315
+ if (m == 1 && (l = (l = D[se >> 3]) >> 7 - (7 & se) & 1, f[x * c + (K >> 3)] |= l << 7 - ((7 & K) << 0)), m == 2 && (l = (l = D[se >> 3]) >> 6 - (7 & se) & 3, f[x * c + (K >> 2)] |= l << 6 - ((3 & K) << 1)), m == 4 && (l = (l = D[se >> 3]) >> 4 - (7 & se) & 15, f[x * c + (K >> 1)] |= l << 4 - ((1 & K) << 2)), m >= 8) {
1316
+ const ne = x * c + K * C;
1317
+ for (let ee = 0; ee < C; ee++) f[ne + ee] = D[(se >> 3) + ee];
1318
+ }
1319
+ se += m, K += O;
1320
+ }
1321
+ N++, x += o;
1322
+ }
1323
+ F * B != 0 && (b += B * (1 + q)), M += 1;
1324
+ }
1325
+ return f;
1326
+ })(i, r)), i;
1327
+ }
1328
+ function d(r, i) {
1329
+ return e(new Uint8Array(r.buffer, 2, r.length - 6), i);
1330
+ }
1331
+ var e = (function() {
1332
+ const r = { H: {} };
1333
+ return r.H.N = function(i, n) {
1334
+ const s = Uint8Array;
1335
+ let h, E, S = 0, y = 0, D = 0, L = 0, P = 0, j = 0, m = 0, C = 0, c = 0;
1336
+ if (i[0] == 3 && i[1] == 0) return n || new s(0);
1337
+ const f = r.H, b = f.b, A = f.e, w = f.R, U = f.n, v = f.A, M = f.Z, l = f.m, o = n == null;
1338
+ for (o && (n = new s(i.length >>> 2 << 5)); S == 0;) if (S = b(i, c, 1), y = b(i, c + 1, 2), c += 3, y != 0) {
1339
+ if (o && (n = r.H.W(n, C + (1 << 17))), y == 1 && (h = l.J, E = l.h, j = 511, m = 31), y == 2) {
1340
+ D = A(i, c, 5) + 257, L = A(i, c + 5, 5) + 1, P = A(i, c + 10, 4) + 4, c += 14;
1341
+ let F = 1;
1342
+ for (var O = 0; O < 38; O += 2) l.Q[O] = 0, l.Q[O + 1] = 0;
1343
+ for (O = 0; O < P; O++) {
1344
+ const Q = A(i, c + 3 * O, 3);
1345
+ l.Q[1 + (l.X[O] << 1)] = Q, Q > F && (F = Q);
1346
+ }
1347
+ c += 3 * P, U(l.Q, F), v(l.Q, F, l.u), h = l.w, E = l.d, c = w(l.u, (1 << F) - 1, D + L, i, c, l.v);
1348
+ const B = f.V(l.v, 0, D, l.C);
1349
+ j = (1 << B) - 1;
1350
+ const X = f.V(l.v, D, L, l.D);
1351
+ m = (1 << X) - 1, U(l.C, B), v(l.C, B, h), U(l.D, X), v(l.D, X, E);
1352
+ }
1353
+ for (;;) {
1354
+ const F = h[M(i, c) & j];
1355
+ c += 15 & F;
1356
+ const B = F >>> 4;
1357
+ if (!(B >>> 8)) n[C++] = B;
1358
+ else {
1359
+ if (B == 256) break;
1360
+ {
1361
+ let X = C + B - 254;
1362
+ if (B > 264) {
1363
+ const K = l.q[B - 257];
1364
+ X = C + (K >>> 3) + A(i, c, 7 & K), c += 7 & K;
1365
+ }
1366
+ const Q = E[M(i, c) & m];
1367
+ c += 15 & Q;
1368
+ const q = Q >>> 4, N = l.c[q], x = (N >>> 4) + b(i, c, 15 & N);
1369
+ for (c += 15 & N; C < X;) n[C] = n[C++ - x], n[C] = n[C++ - x], n[C] = n[C++ - x], n[C] = n[C++ - x];
1370
+ C = X;
1371
+ }
1372
+ }
1373
+ }
1374
+ } else {
1375
+ 7 & c && (c += 8 - (7 & c));
1376
+ const F = 4 + (c >>> 3), B = i[F - 4] | i[F - 3] << 8;
1377
+ o && (n = r.H.W(n, C + B)), n.set(new s(i.buffer, i.byteOffset + F, B), C), c = F + B << 3, C += B;
1378
+ }
1379
+ return n.length == C ? n : n.slice(0, C);
1380
+ }, r.H.W = function(i, n) {
1381
+ const s = i.length;
1382
+ if (n <= s) return i;
1383
+ const h = new Uint8Array(s << 1);
1384
+ return h.set(i, 0), h;
1385
+ }, r.H.R = function(i, n, s, h, E, S) {
1386
+ const y = r.H.e, D = r.H.Z;
1387
+ let L = 0;
1388
+ for (; L < s;) {
1389
+ const P = i[D(h, E) & n];
1390
+ E += 15 & P;
1391
+ const j = P >>> 4;
1392
+ if (j <= 15) S[L] = j, L++;
1393
+ else {
1394
+ let m = 0, C = 0;
1395
+ j == 16 ? (C = 3 + y(h, E, 2), E += 2, m = S[L - 1]) : j == 17 ? (C = 3 + y(h, E, 3), E += 3) : j == 18 && (C = 11 + y(h, E, 7), E += 7);
1396
+ const c = L + C;
1397
+ for (; L < c;) S[L] = m, L++;
1398
+ }
1399
+ }
1400
+ return E;
1401
+ }, r.H.V = function(i, n, s, h) {
1402
+ let E = 0, S = 0;
1403
+ const y = h.length >>> 1;
1404
+ for (; S < s;) {
1405
+ const D = i[S + n];
1406
+ h[S << 1] = 0, h[1 + (S << 1)] = D, D > E && (E = D), S++;
1407
+ }
1408
+ for (; S < y;) h[S << 1] = 0, h[1 + (S << 1)] = 0, S++;
1409
+ return E;
1410
+ }, r.H.n = function(i, n) {
1411
+ const s = r.H.m, h = i.length;
1412
+ let E, S, y, D;
1413
+ const L = s.j;
1414
+ for (var P = 0; P <= n; P++) L[P] = 0;
1415
+ for (P = 1; P < h; P += 2) L[i[P]]++;
1416
+ const j = s.K;
1417
+ for (E = 0, L[0] = 0, S = 1; S <= n; S++) E = E + L[S - 1] << 1, j[S] = E;
1418
+ for (y = 0; y < h; y += 2) D = i[y + 1], D != 0 && (i[y] = j[D], j[D]++);
1419
+ }, r.H.A = function(i, n, s) {
1420
+ const h = i.length, E = r.H.m.r;
1421
+ for (let S = 0; S < h; S += 2) if (i[S + 1] != 0) {
1422
+ const y = S >> 1, D = i[S + 1], L = y << 4 | D, P = n - D;
1423
+ let j = i[S] << P;
1424
+ const m = j + (1 << P);
1425
+ for (; j != m;) s[E[j] >>> 15 - n] = L, j++;
1426
+ }
1427
+ }, r.H.l = function(i, n) {
1428
+ const s = r.H.m.r, h = 15 - n;
1429
+ for (let E = 0; E < i.length; E += 2) i[E] = s[i[E] << n - i[E + 1]] >>> h;
1430
+ }, r.H.M = function(i, n, s) {
1431
+ s <<= 7 & n;
1432
+ const h = n >>> 3;
1433
+ i[h] |= s, i[h + 1] |= s >>> 8;
1434
+ }, r.H.I = function(i, n, s) {
1435
+ s <<= 7 & n;
1436
+ const h = n >>> 3;
1437
+ i[h] |= s, i[h + 1] |= s >>> 8, i[h + 2] |= s >>> 16;
1438
+ }, r.H.e = function(i, n, s) {
1439
+ return (i[n >>> 3] | i[1 + (n >>> 3)] << 8) >>> (7 & n) & (1 << s) - 1;
1440
+ }, r.H.b = function(i, n, s) {
1441
+ return (i[n >>> 3] | i[1 + (n >>> 3)] << 8 | i[2 + (n >>> 3)] << 16) >>> (7 & n) & (1 << s) - 1;
1442
+ }, r.H.Z = function(i, n) {
1443
+ return (i[n >>> 3] | i[1 + (n >>> 3)] << 8 | i[2 + (n >>> 3)] << 16) >>> (7 & n);
1444
+ }, r.H.i = function(i, n) {
1445
+ return (i[n >>> 3] | i[1 + (n >>> 3)] << 8 | i[2 + (n >>> 3)] << 16 | i[3 + (n >>> 3)] << 24) >>> (7 & n);
1446
+ }, r.H.m = (function() {
1447
+ const i = Uint16Array, n = Uint32Array;
1448
+ return {
1449
+ K: new i(16),
1450
+ j: new i(16),
1451
+ X: [
1452
+ 16,
1453
+ 17,
1454
+ 18,
1455
+ 0,
1456
+ 8,
1457
+ 7,
1458
+ 9,
1459
+ 6,
1460
+ 10,
1461
+ 5,
1462
+ 11,
1463
+ 4,
1464
+ 12,
1465
+ 3,
1466
+ 13,
1467
+ 2,
1468
+ 14,
1469
+ 1,
1470
+ 15
1471
+ ],
1472
+ S: [
1473
+ 3,
1474
+ 4,
1475
+ 5,
1476
+ 6,
1477
+ 7,
1478
+ 8,
1479
+ 9,
1480
+ 10,
1481
+ 11,
1482
+ 13,
1483
+ 15,
1484
+ 17,
1485
+ 19,
1486
+ 23,
1487
+ 27,
1488
+ 31,
1489
+ 35,
1490
+ 43,
1491
+ 51,
1492
+ 59,
1493
+ 67,
1494
+ 83,
1495
+ 99,
1496
+ 115,
1497
+ 131,
1498
+ 163,
1499
+ 195,
1500
+ 227,
1501
+ 258,
1502
+ 999,
1503
+ 999,
1504
+ 999
1505
+ ],
1506
+ T: [
1507
+ 0,
1508
+ 0,
1509
+ 0,
1510
+ 0,
1511
+ 0,
1512
+ 0,
1513
+ 0,
1514
+ 0,
1515
+ 1,
1516
+ 1,
1517
+ 1,
1518
+ 1,
1519
+ 2,
1520
+ 2,
1521
+ 2,
1522
+ 2,
1523
+ 3,
1524
+ 3,
1525
+ 3,
1526
+ 3,
1527
+ 4,
1528
+ 4,
1529
+ 4,
1530
+ 4,
1531
+ 5,
1532
+ 5,
1533
+ 5,
1534
+ 5,
1535
+ 0,
1536
+ 0,
1537
+ 0,
1538
+ 0
1539
+ ],
1540
+ q: new i(32),
1541
+ p: [
1542
+ 1,
1543
+ 2,
1544
+ 3,
1545
+ 4,
1546
+ 5,
1547
+ 7,
1548
+ 9,
1549
+ 13,
1550
+ 17,
1551
+ 25,
1552
+ 33,
1553
+ 49,
1554
+ 65,
1555
+ 97,
1556
+ 129,
1557
+ 193,
1558
+ 257,
1559
+ 385,
1560
+ 513,
1561
+ 769,
1562
+ 1025,
1563
+ 1537,
1564
+ 2049,
1565
+ 3073,
1566
+ 4097,
1567
+ 6145,
1568
+ 8193,
1569
+ 12289,
1570
+ 16385,
1571
+ 24577,
1572
+ 65535,
1573
+ 65535
1574
+ ],
1575
+ z: [
1576
+ 0,
1577
+ 0,
1578
+ 0,
1579
+ 0,
1580
+ 1,
1581
+ 1,
1582
+ 2,
1583
+ 2,
1584
+ 3,
1585
+ 3,
1586
+ 4,
1587
+ 4,
1588
+ 5,
1589
+ 5,
1590
+ 6,
1591
+ 6,
1592
+ 7,
1593
+ 7,
1594
+ 8,
1595
+ 8,
1596
+ 9,
1597
+ 9,
1598
+ 10,
1599
+ 10,
1600
+ 11,
1601
+ 11,
1602
+ 12,
1603
+ 12,
1604
+ 13,
1605
+ 13,
1606
+ 0,
1607
+ 0
1608
+ ],
1609
+ c: new n(32),
1610
+ J: new i(512),
1611
+ _: [],
1612
+ h: new i(32),
1613
+ $: [],
1614
+ w: new i(32768),
1615
+ C: [],
1616
+ v: [],
1617
+ d: new i(32768),
1618
+ D: [],
1619
+ u: new i(512),
1620
+ Q: [],
1621
+ r: new i(32768),
1622
+ s: new n(286),
1623
+ Y: new n(30),
1624
+ a: new n(19),
1625
+ t: new n(15e3),
1626
+ k: new i(65536),
1627
+ g: new i(32768)
1628
+ };
1629
+ })(), (function() {
1630
+ const i = r.H.m;
1631
+ for (var n = 0; n < 32768; n++) {
1632
+ let h = n;
1633
+ h = (2863311530 & h) >>> 1 | (1431655765 & h) << 1, h = (3435973836 & h) >>> 2 | (858993459 & h) << 2, h = (4042322160 & h) >>> 4 | (252645135 & h) << 4, h = (4278255360 & h) >>> 8 | (16711935 & h) << 8, i.r[n] = (h >>> 16 | h << 16) >>> 17;
1634
+ }
1635
+ function s(h, E, S) {
1636
+ for (; E-- != 0;) h.push(0, S);
1637
+ }
1638
+ for (n = 0; n < 32; n++) i.q[n] = i.S[n] << 3 | i.T[n], i.c[n] = i.p[n] << 4 | i.z[n];
1639
+ s(i._, 144, 8), s(i._, 112, 9), s(i._, 24, 7), s(i._, 8, 8), r.H.n(i._, 9), r.H.A(i._, 9, i.J), r.H.l(i._, 9), s(i.$, 32, 5), r.H.n(i.$, 5), r.H.A(i.$, 5, i.h), r.H.l(i.$, 5), s(i.Q, 19, 0), s(i.C, 286, 0), s(i.D, 30, 0), s(i.v, 320, 0);
1640
+ })(), r.H.N;
1641
+ })();
1642
+ function t(r) {
1643
+ return [
1644
+ 1,
1645
+ null,
1646
+ 3,
1647
+ 1,
1648
+ 2,
1649
+ null,
1650
+ 4
1651
+ ][r.ctype] * r.depth;
1652
+ }
1653
+ function u(r, i, n, s, h) {
1654
+ let E = t(i);
1655
+ const S = Math.ceil(s * E / 8);
1656
+ let y, D;
1657
+ E = Math.ceil(E / 8);
1658
+ let L = r[n], P = 0;
1659
+ if (L > 1 && (r[n] = [
1660
+ 0,
1661
+ 0,
1662
+ 1
1663
+ ][L - 2]), L == 3) for (P = E; P < S; P++) r[P + 1] = r[P + 1] + (r[P + 1 - E] >>> 1) & 255;
1664
+ for (let j = 0; j < h; j++) if (y = n + j * S, D = y + j + 1, L = r[D - 1], P = 0, L == 0) for (; P < S; P++) r[y + P] = r[D + P];
1665
+ else if (L == 1) {
1666
+ for (; P < E; P++) r[y + P] = r[D + P];
1667
+ for (; P < S; P++) r[y + P] = r[D + P] + r[y + P - E];
1668
+ } else if (L == 2) for (; P < S; P++) r[y + P] = r[D + P] + r[y + P - S];
1669
+ else if (L == 3) {
1670
+ for (; P < E; P++) r[y + P] = r[D + P] + (r[y + P - S] >>> 1);
1671
+ for (; P < S; P++) r[y + P] = r[D + P] + (r[y + P - S] + r[y + P - E] >>> 1);
1672
+ } else {
1673
+ for (; P < E; P++) r[y + P] = r[D + P] + a(0, r[y + P - S], 0);
1674
+ for (; P < S; P++) r[y + P] = r[D + P] + a(r[y + P - E], r[y + P - S], r[y + P - E - S]);
1675
+ }
1676
+ return r;
1677
+ }
1678
+ function a(r, i, n) {
1679
+ const s = r + i - n, h = s - r, E = s - i, S = s - n;
1680
+ return h * h <= E * E && h * h <= S * S ? r : E * E <= S * S ? i : n;
1681
+ }
1682
+ function p(r, i, n) {
1683
+ n.width = T.readUint(r, i), i += 4, n.height = T.readUint(r, i), i += 4, n.depth = r[i], i++, n.ctype = r[i], i++, n.compress = r[i], i++, n.filter = r[i], i++, n.interlace = r[i], i++;
1684
+ }
1685
+ function _(r, i, n, s, h, E, S, y, D) {
1686
+ const L = Math.min(i, h), P = Math.min(n, E);
1687
+ let j = 0, m = 0;
1688
+ for (let M = 0; M < P; M++) for (let l = 0; l < L; l++) if (S >= 0 && y >= 0 ? (j = M * i + l << 2, m = (y + M) * h + S + l << 2) : (j = (-y + M) * i - S + l << 2, m = M * h + l << 2), D == 0) s[m] = r[j], s[m + 1] = r[j + 1], s[m + 2] = r[j + 2], s[m + 3] = r[j + 3];
1689
+ else if (D == 1) {
1690
+ var C = r[j + 3] * .00392156862745098, c = r[j] * C, f = r[j + 1] * C, b = r[j + 2] * C, A = s[m + 3] * (1 / 255), w = s[m] * A, U = s[m + 1] * A, v = s[m + 2] * A;
1691
+ const o = 1 - C, O = C + A * o, F = O == 0 ? 0 : 1 / O;
1692
+ s[m + 3] = 255 * O, s[m + 0] = (c + w * o) * F, s[m + 1] = (f + U * o) * F, s[m + 2] = (b + v * o) * F;
1693
+ } else if (D == 2) C = r[j + 3], c = r[j], f = r[j + 1], b = r[j + 2], A = s[m + 3], w = s[m], U = s[m + 1], v = s[m + 2], C == A && c == w && f == U && b == v ? (s[m] = 0, s[m + 1] = 0, s[m + 2] = 0, s[m + 3] = 0) : (s[m] = c, s[m + 1] = f, s[m + 2] = b, s[m + 3] = C);
1694
+ else if (D == 3) {
1695
+ if (C = r[j + 3], c = r[j], f = r[j + 1], b = r[j + 2], A = s[m + 3], w = s[m], U = s[m + 1], v = s[m + 2], C == A && c == w && f == U && b == v) continue;
1696
+ if (C < 220 && A > 20) return !1;
1697
+ }
1698
+ return !0;
1699
+ }
1700
+ return {
1701
+ decode: function(i) {
1702
+ const n = new Uint8Array(i);
1703
+ let s = 8;
1704
+ const h = T, E = h.readUshort, S = h.readUint, y = {
1705
+ tabs: {},
1706
+ frames: []
1707
+ }, D = new Uint8Array(n.length);
1708
+ let L, P = 0, j = 0;
1709
+ const m = [
1710
+ 137,
1711
+ 80,
1712
+ 78,
1713
+ 71,
1714
+ 13,
1715
+ 10,
1716
+ 26,
1717
+ 10
1718
+ ];
1719
+ for (var C = 0; C < 8; C++) if (n[C] != m[C]) throw "The input is not a PNG file!";
1720
+ for (; s < n.length;) {
1721
+ const M = h.readUint(n, s);
1722
+ s += 4;
1723
+ const l = h.readASCII(n, s, 4);
1724
+ if (s += 4, l == "IHDR") p(n, s, y);
1725
+ else if (l == "iCCP") {
1726
+ for (var c = s; n[c] != 0;) c++;
1727
+ h.readASCII(n, s, c - s), n[c + 1];
1728
+ const o = n.slice(c + 2, s + M);
1729
+ let O = null;
1730
+ try {
1731
+ O = d(o);
1732
+ } catch {
1733
+ O = e(o);
1734
+ }
1735
+ y.tabs[l] = O;
1736
+ } else if (l == "CgBI") y.tabs[l] = n.slice(s, s + 4);
1737
+ else if (l == "IDAT") {
1738
+ for (C = 0; C < M; C++) D[P + C] = n[s + C];
1739
+ P += M;
1740
+ } else if (l == "acTL") y.tabs[l] = {
1741
+ num_frames: S(n, s),
1742
+ num_plays: S(n, s + 4)
1743
+ }, L = new Uint8Array(n.length);
1744
+ else if (l == "fcTL") {
1745
+ j != 0 && ((v = y.frames[y.frames.length - 1]).data = H(y, L.slice(0, j), v.rect.width, v.rect.height), j = 0);
1746
+ const o = {
1747
+ x: S(n, s + 12),
1748
+ y: S(n, s + 16),
1749
+ width: S(n, s + 4),
1750
+ height: S(n, s + 8)
1751
+ };
1752
+ let O = E(n, s + 22);
1753
+ O = E(n, s + 20) / (O == 0 ? 100 : O);
1754
+ const F = {
1755
+ rect: o,
1756
+ delay: Math.round(1e3 * O),
1757
+ dispose: n[s + 24],
1758
+ blend: n[s + 25]
1759
+ };
1760
+ y.frames.push(F);
1761
+ } else if (l == "fdAT") {
1762
+ for (C = 0; C < M - 4; C++) L[j + C] = n[s + C + 4];
1763
+ j += M - 4;
1764
+ } else if (l == "pHYs") y.tabs[l] = [
1765
+ h.readUint(n, s),
1766
+ h.readUint(n, s + 4),
1767
+ n[s + 8]
1768
+ ];
1769
+ else if (l == "cHRM") for (y.tabs[l] = [], C = 0; C < 8; C++) y.tabs[l].push(h.readUint(n, s + 4 * C));
1770
+ else if (l == "tEXt" || l == "zTXt") {
1771
+ y.tabs[l] ?? (y.tabs[l] = {});
1772
+ var f = h.nextZero(n, s), b = h.readASCII(n, s, f - s), A = s + M - f - 1;
1773
+ if (l == "tEXt") U = h.readASCII(n, f + 1, A);
1774
+ else {
1775
+ var w = d(n.slice(f + 2, f + 2 + A));
1776
+ U = h.readUTF8(w, 0, w.length);
1777
+ }
1778
+ y.tabs[l][b] = U;
1779
+ } else if (l == "iTXt") {
1780
+ y.tabs[l] ?? (y.tabs[l] = {}), f = 0, c = s, f = h.nextZero(n, c), b = h.readASCII(n, c, f - c);
1781
+ const o = n[c = f + 1];
1782
+ var U;
1783
+ n[c + 1], c += 2, f = h.nextZero(n, c), h.readASCII(n, c, f - c), c = f + 1, f = h.nextZero(n, c), h.readUTF8(n, c, f - c), A = M - ((c = f + 1) - s), o == 0 ? U = h.readUTF8(n, c, A) : (w = d(n.slice(c, c + A)), U = h.readUTF8(w, 0, w.length)), y.tabs[l][b] = U;
1784
+ } else if (l == "PLTE") y.tabs[l] = h.readBytes(n, s, M);
1785
+ else if (l == "hIST") {
1786
+ const o = y.tabs.PLTE.length / 3;
1787
+ for (y.tabs[l] = [], C = 0; C < o; C++) y.tabs[l].push(E(n, s + 2 * C));
1788
+ } else if (l == "tRNS") y.ctype == 3 ? y.tabs[l] = h.readBytes(n, s, M) : y.ctype == 0 ? y.tabs[l] = E(n, s) : y.ctype == 2 && (y.tabs[l] = [
1789
+ E(n, s),
1790
+ E(n, s + 2),
1791
+ E(n, s + 4)
1792
+ ]);
1793
+ else if (l == "gAMA") y.tabs[l] = h.readUint(n, s) / 1e5;
1794
+ else if (l == "sRGB") y.tabs[l] = n[s];
1795
+ else if (l == "bKGD") y.ctype == 0 || y.ctype == 4 ? y.tabs[l] = [E(n, s)] : y.ctype == 2 || y.ctype == 6 ? y.tabs[l] = [
1796
+ E(n, s),
1797
+ E(n, s + 2),
1798
+ E(n, s + 4)
1799
+ ] : y.ctype == 3 && (y.tabs[l] = n[s]);
1800
+ else if (l == "IEND") break;
1801
+ s += M, h.readUint(n, s), s += 4;
1802
+ }
1803
+ var v;
1804
+ return j != 0 && ((v = y.frames[y.frames.length - 1]).data = H(y, L.slice(0, j), v.rect.width, v.rect.height)), y.data = H(y, D, y.width, y.height), delete y.compress, delete y.interlace, delete y.filter, y;
1805
+ },
1806
+ toRGBA8: function(i) {
1807
+ const n = i.width, s = i.height;
1808
+ if (i.tabs.acTL == null) return [R(i.data, n, s, i).buffer];
1809
+ const h = [];
1810
+ i.frames[0].data ?? (i.frames[0].data = i.data);
1811
+ const E = n * s * 4, S = new Uint8Array(E), y = new Uint8Array(E), D = new Uint8Array(E);
1812
+ for (let P = 0; P < i.frames.length; P++) {
1813
+ const j = i.frames[P], m = j.rect.x, C = j.rect.y, c = j.rect.width, f = j.rect.height, b = R(j.data, c, f, i);
1814
+ if (P != 0) for (var L = 0; L < E; L++) D[L] = S[L];
1815
+ if (j.blend == 0 ? _(b, c, f, S, n, s, m, C, 0) : j.blend == 1 && _(b, c, f, S, n, s, m, C, 1), h.push(S.buffer.slice(0)), j.dispose != 0) {
1816
+ if (j.dispose == 1) _(y, c, f, S, n, s, m, C, 0);
1817
+ else if (j.dispose == 2) for (L = 0; L < E; L++) S[L] = D[L];
1818
+ }
1819
+ }
1820
+ return h;
1821
+ },
1822
+ _paeth: a,
1823
+ _copyTile: _,
1824
+ _bin: T
1825
+ };
1826
+ })();
1827
+ (function() {
1828
+ const { _copyTile: T } = Z, { _bin: R } = Z, H = Z._paeth;
1829
+ var d = {
1830
+ table: (function() {
1831
+ const c = new Uint32Array(256);
1832
+ for (let f = 0; f < 256; f++) {
1833
+ let b = f;
1834
+ for (let A = 0; A < 8; A++) 1 & b ? b = 3988292384 ^ b >>> 1 : b >>>= 1;
1835
+ c[f] = b;
1836
+ }
1837
+ return c;
1838
+ })(),
1839
+ update(c, f, b, A) {
1840
+ for (let w = 0; w < A; w++) c = d.table[255 & (c ^ f[b + w])] ^ c >>> 8;
1841
+ return c;
1842
+ },
1843
+ crc: (c, f, b) => 4294967295 ^ d.update(4294967295, c, f, b)
1844
+ };
1845
+ function e(c, f, b, A) {
1846
+ f[b] += c[0] * A >> 4, f[b + 1] += c[1] * A >> 4, f[b + 2] += c[2] * A >> 4, f[b + 3] += c[3] * A >> 4;
1847
+ }
1848
+ function t(c) {
1849
+ return Math.max(0, Math.min(255, c));
1850
+ }
1851
+ function u(c, f) {
1852
+ const b = c[0] - f[0], A = c[1] - f[1], w = c[2] - f[2], U = c[3] - f[3];
1853
+ return b * b + A * A + w * w + U * U;
1854
+ }
1855
+ function a(c, f, b, A, w, U, v) {
1856
+ v ??= 1;
1857
+ const M = A.length, l = [];
1858
+ for (var o = 0; o < M; o++) {
1859
+ const x = A[o];
1860
+ l.push([
1861
+ x >>> 0 & 255,
1862
+ x >>> 8 & 255,
1863
+ x >>> 16 & 255,
1864
+ x >>> 24 & 255
1865
+ ]);
1866
+ }
1867
+ for (o = 0; o < M; o++) {
1868
+ let x = 4294967295;
1869
+ for (var O = 0, F = 0; F < M; F++) {
1870
+ var B = u(l[o], l[F]);
1871
+ F != o && B < x && (x = B, O = F);
1872
+ }
1873
+ }
1874
+ const X = new Uint32Array(w.buffer), Q = new Int16Array(f * b * 4), q = [
1875
+ 0,
1876
+ 8,
1877
+ 2,
1878
+ 10,
1879
+ 12,
1880
+ 4,
1881
+ 14,
1882
+ 6,
1883
+ 3,
1884
+ 11,
1885
+ 1,
1886
+ 9,
1887
+ 15,
1888
+ 7,
1889
+ 13,
1890
+ 5
1891
+ ];
1892
+ for (o = 0; o < q.length; o++) q[o] = 255 * ((q[o] + .5) / 16 - .5);
1893
+ for (let x = 0; x < b; x++) for (let K = 0; K < f; K++) {
1894
+ var N;
1895
+ o = 4 * (x * f + K), v != 2 ? N = [
1896
+ t(c[o] + Q[o]),
1897
+ t(c[o + 1] + Q[o + 1]),
1898
+ t(c[o + 2] + Q[o + 2]),
1899
+ t(c[o + 3] + Q[o + 3])
1900
+ ] : (B = q[4 * (3 & x) + (3 & K)], N = [
1901
+ t(c[o] + B),
1902
+ t(c[o + 1] + B),
1903
+ t(c[o + 2] + B),
1904
+ t(c[o + 3] + B)
1905
+ ]), O = 0;
1906
+ let se = 16777215;
1907
+ for (F = 0; F < M; F++) {
1908
+ const ie = u(N, l[F]);
1909
+ ie < se && (se = ie, O = F);
1910
+ }
1911
+ const ne = l[O], ee = [
1912
+ N[0] - ne[0],
1913
+ N[1] - ne[1],
1914
+ N[2] - ne[2],
1915
+ N[3] - ne[3]
1916
+ ];
1917
+ v == 1 && (K != f - 1 && e(ee, Q, o + 4, 7), x != b - 1 && (K != 0 && e(ee, Q, o + 4 * f - 4, 3), e(ee, Q, o + 4 * f, 5), K != f - 1 && e(ee, Q, o + 4 * f + 4, 1))), U[o >> 2] = O, X[o >> 2] = A[O];
1918
+ }
1919
+ }
1920
+ function p(c, f, b, A, w) {
1921
+ w ??= {};
1922
+ const { crc: U } = d, v = R.writeUint, M = R.writeUshort, l = R.writeASCII;
1923
+ let o = 8;
1924
+ const O = c.frames.length > 1;
1925
+ let F, B = !1, X = 33 + (O ? 20 : 0);
1926
+ if (w.sRGB != null && (X += 13), w.pHYs != null && (X += 21), w.iCCP != null && (F = pako.deflate(w.iCCP), X += 21 + F.length + 4), c.ctype == 3) {
1927
+ for (var Q = c.plte.length, q = 0; q < Q; q++) c.plte[q] >>> 24 != 255 && (B = !0);
1928
+ X += 8 + 3 * Q + 4 + (B ? 8 + 1 * Q + 4 : 0);
1929
+ }
1930
+ for (var N = 0; N < c.frames.length; N++) O && (X += 38), X += (ne = c.frames[N]).cimg.length + 12, N != 0 && (X += 4);
1931
+ X += 12;
1932
+ const x = new Uint8Array(X), K = [
1933
+ 137,
1934
+ 80,
1935
+ 78,
1936
+ 71,
1937
+ 13,
1938
+ 10,
1939
+ 26,
1940
+ 10
1941
+ ];
1942
+ for (q = 0; q < 8; q++) x[q] = K[q];
1943
+ if (v(x, o, 13), o += 4, l(x, o, "IHDR"), o += 4, v(x, o, f), o += 4, v(x, o, b), o += 4, x[o] = c.depth, o++, x[o] = c.ctype, o++, x[o] = 0, o++, x[o] = 0, o++, x[o] = 0, o++, v(x, o, U(x, o - 17, 17)), o += 4, w.sRGB != null && (v(x, o, 1), o += 4, l(x, o, "sRGB"), o += 4, x[o] = w.sRGB, o++, v(x, o, U(x, o - 5, 5)), o += 4), w.iCCP != null) {
1944
+ const ee = 13 + F.length;
1945
+ v(x, o, ee), o += 4, l(x, o, "iCCP"), o += 4, l(x, o, "ICC profile"), o += 11, o += 2, x.set(F, o), o += F.length, v(x, o, U(x, o - (ee + 4), ee + 4)), o += 4;
1946
+ }
1947
+ if (w.pHYs != null && (v(x, o, 9), o += 4, l(x, o, "pHYs"), o += 4, v(x, o, w.pHYs[0]), o += 4, v(x, o, w.pHYs[1]), o += 4, x[o] = w.pHYs[2], o++, v(x, o, U(x, o - 13, 13)), o += 4), O && (v(x, o, 8), o += 4, l(x, o, "acTL"), o += 4, v(x, o, c.frames.length), o += 4, v(x, o, w.loop != null ? w.loop : 0), o += 4, v(x, o, U(x, o - 12, 12)), o += 4), c.ctype == 3) {
1948
+ for (v(x, o, 3 * (Q = c.plte.length)), o += 4, l(x, o, "PLTE"), o += 4, q = 0; q < Q; q++) {
1949
+ const ee = 3 * q, ie = c.plte[q], de = 255 & ie, ge = ie >>> 8 & 255, Qe = ie >>> 16 & 255;
1950
+ x[o + ee + 0] = de, x[o + ee + 1] = ge, x[o + ee + 2] = Qe;
1951
+ }
1952
+ if (o += 3 * Q, v(x, o, U(x, o - 3 * Q - 4, 3 * Q + 4)), o += 4, B) {
1953
+ for (v(x, o, Q), o += 4, l(x, o, "tRNS"), o += 4, q = 0; q < Q; q++) x[o + q] = c.plte[q] >>> 24 & 255;
1954
+ o += Q, v(x, o, U(x, o - Q - 4, Q + 4)), o += 4;
1955
+ }
1956
+ }
1957
+ let se = 0;
1958
+ for (N = 0; N < c.frames.length; N++) {
1959
+ var ne = c.frames[N];
1960
+ O && (v(x, o, 26), o += 4, l(x, o, "fcTL"), o += 4, v(x, o, se++), o += 4, v(x, o, ne.rect.width), o += 4, v(x, o, ne.rect.height), o += 4, v(x, o, ne.rect.x), o += 4, v(x, o, ne.rect.y), o += 4, M(x, o, A[N]), o += 2, M(x, o, 1e3), o += 2, x[o] = ne.dispose, o++, x[o] = ne.blend, o++, v(x, o, U(x, o - 30, 30)), o += 4);
1961
+ const ee = ne.cimg;
1962
+ v(x, o, (Q = ee.length) + (N == 0 ? 0 : 4)), o += 4;
1963
+ const ie = o;
1964
+ l(x, o, N == 0 ? "IDAT" : "fdAT"), o += 4, N != 0 && (v(x, o, se++), o += 4), x.set(ee, o), o += Q, v(x, o, U(x, ie, o - ie)), o += 4;
1965
+ }
1966
+ return v(x, o, 0), o += 4, l(x, o, "IEND"), o += 4, v(x, o, U(x, o - 4, 4)), o += 4, x.buffer;
1967
+ }
1968
+ function _(c, f, b) {
1969
+ for (let A = 0; A < c.frames.length; A++) {
1970
+ const w = c.frames[A];
1971
+ w.rect.width;
1972
+ const U = w.rect.height, v = new Uint8Array(U * w.bpl + U);
1973
+ w.cimg = s(w.img, U, w.bpp, w.bpl, v, f, b);
1974
+ }
1975
+ }
1976
+ function r(c, f, b, A, w) {
1977
+ const U = w[0], v = w[1], M = w[2], l = w[3], o = w[4], O = w[5];
1978
+ let F = 6, B = 8, X = 255;
1979
+ for (var Q = 0; Q < c.length; Q++) {
1980
+ const _e = new Uint8Array(c[Q]);
1981
+ for (var q = _e.length, N = 0; N < q; N += 4) X &= _e[N + 3];
1982
+ }
1983
+ const x = X != 255, K = (function(re, fe, ve, be, Ue, ye) {
1984
+ const we = [];
1985
+ for (var oe = 0; oe < re.length; oe++) {
1986
+ const Ee = new Uint8Array(re[oe]), Te = new Uint32Array(Ee.buffer);
1987
+ var Me;
1988
+ let je = 0, De = 0, ke = fe, $e = ve, wt = be ? 1 : 0;
1989
+ if (oe != 0) {
1990
+ const Hn = ye || be || oe == 1 || we[oe - 2].dispose != 0 ? 1 : 2;
1991
+ let At = 0, Gt = 1e9;
1992
+ for (let tt = 0; tt < Hn; tt++) {
1993
+ var et = new Uint8Array(re[oe - 1 - tt]);
1994
+ const Nn = new Uint32Array(re[oe - 1 - tt]);
1995
+ let Ne = fe, We = ve, Ze = -1, nt = -1;
1996
+ for (let qe = 0; qe < ve; qe++) for (let Xe = 0; Xe < fe; Xe++) Te[He = qe * fe + Xe] != Nn[He] && (Xe < Ne && (Ne = Xe), Xe > Ze && (Ze = Xe), qe < We && (We = qe), qe > nt && (nt = qe));
1997
+ Ze == -1 && (Ne = We = Ze = nt = 0), Ue && ((1 & Ne) == 1 && Ne--, (1 & We) == 1 && We--);
1998
+ const $t = (Ze - Ne + 1) * (nt - We + 1);
1999
+ $t < Gt && (Gt = $t, At = tt, je = Ne, De = We, ke = Ze - Ne + 1, $e = nt - We + 1);
2000
+ }
2001
+ et = new Uint8Array(re[oe - 1 - At]), At == 1 && (we[oe - 1].dispose = 2), Me = new Uint8Array(ke * $e * 4), T(et, fe, ve, Me, ke, $e, -je, -De, 0), wt = T(Ee, fe, ve, Me, ke, $e, -je, -De, 3) ? 1 : 0, wt == 1 ? n(Ee, fe, ve, Me, {
2002
+ x: je,
2003
+ y: De,
2004
+ width: ke,
2005
+ height: $e
2006
+ }) : T(Ee, fe, ve, Me, ke, $e, -je, -De, 0);
2007
+ } else Me = Ee.slice(0);
2008
+ we.push({
2009
+ rect: {
2010
+ x: je,
2011
+ y: De,
2012
+ width: ke,
2013
+ height: $e
2014
+ },
2015
+ img: Me,
2016
+ blend: wt,
2017
+ dispose: 0
2018
+ });
2019
+ }
2020
+ if (be) for (oe = 0; oe < we.length; oe++) {
2021
+ if ((Ge = we[oe]).blend == 1) continue;
2022
+ const Ee = Ge.rect, Te = we[oe - 1].rect, je = Math.min(Ee.x, Te.x), De = Math.min(Ee.y, Te.y), ke = {
2023
+ x: je,
2024
+ y: De,
2025
+ width: Math.max(Ee.x + Ee.width, Te.x + Te.width) - je,
2026
+ height: Math.max(Ee.y + Ee.height, Te.y + Te.height) - De
2027
+ };
2028
+ we[oe - 1].dispose = 1, oe - 1 != 0 && i(re, fe, ve, we, oe - 1, ke, Ue), i(re, fe, ve, we, oe, ke, Ue);
2029
+ }
2030
+ let Se = 0;
2031
+ if (re.length != 1) for (var He = 0; He < we.length; He++) {
2032
+ var Ge;
2033
+ Se += (Ge = we[He]).rect.width * Ge.rect.height;
2034
+ }
2035
+ return we;
2036
+ })(c, f, b, U, v, M), se = {}, ne = [], ee = [];
2037
+ if (A != 0) {
2038
+ const _e = [];
2039
+ for (N = 0; N < K.length; N++) _e.push(K[N].img.buffer);
2040
+ const re = E((function(be) {
2041
+ let Ue = 0;
2042
+ for (var ye = 0; ye < be.length; ye++) Ue += be[ye].byteLength;
2043
+ const we = new Uint8Array(Ue);
2044
+ let oe = 0;
2045
+ for (ye = 0; ye < be.length; ye++) {
2046
+ const Me = new Uint8Array(be[ye]), et = Me.length;
2047
+ for (let Se = 0; Se < et; Se += 4) {
2048
+ let He = Me[Se], Ge = Me[Se + 1], Ee = Me[Se + 2];
2049
+ const Te = Me[Se + 3];
2050
+ Te == 0 && (He = Ge = Ee = 0), we[oe + Se] = He, we[oe + Se + 1] = Ge, we[oe + Se + 2] = Ee, we[oe + Se + 3] = Te;
2051
+ }
2052
+ oe += et;
2053
+ }
2054
+ return we.buffer;
2055
+ })(_e), A);
2056
+ for (N = 0; N < re.plte.length; N++) ne.push(re.plte[N].est.rgba);
2057
+ let fe = 0;
2058
+ for (N = 0; N < K.length; N++) {
2059
+ const ve = (de = K[N]).img.length;
2060
+ var ie = new Uint8Array(re.inds.buffer, fe >> 2, ve >> 2);
2061
+ ee.push(ie);
2062
+ const be = new Uint8Array(re.abuf, fe, ve);
2063
+ O && a(de.img, de.rect.width, de.rect.height, ne, be, ie), de.img.set(be), fe += ve;
2064
+ }
2065
+ } else for (Q = 0; Q < K.length; Q++) {
2066
+ var de = K[Q];
2067
+ const _e = new Uint32Array(de.img.buffer);
2068
+ var ge = de.rect.width;
2069
+ for (q = _e.length, ie = new Uint8Array(q), ee.push(ie), N = 0; N < q; N++) {
2070
+ const re = _e[N];
2071
+ if (N != 0 && re == _e[N - 1]) ie[N] = ie[N - 1];
2072
+ else if (N > ge && re == _e[N - ge]) ie[N] = ie[N - ge];
2073
+ else {
2074
+ let fe = se[re];
2075
+ if (fe == null && (se[re] = fe = ne.length, ne.push(re), ne.length >= 300)) break;
2076
+ ie[N] = fe;
2077
+ }
2078
+ }
2079
+ }
2080
+ const Qe = ne.length;
2081
+ for (Qe <= 256 && o == 0 && (B = Qe <= 2 ? 1 : Qe <= 4 ? 2 : Qe <= 16 ? 4 : 8, B = Math.max(B, l)), Q = 0; Q < K.length; Q++) {
2082
+ (de = K[Q]).rect.x, de.rect.y, ge = de.rect.width;
2083
+ const _e = de.rect.height;
2084
+ let re = de.img;
2085
+ new Uint32Array(re.buffer);
2086
+ let fe = 4 * ge, ve = 4;
2087
+ if (Qe <= 256 && o == 0) {
2088
+ fe = Math.ceil(B * ge / 8);
2089
+ var Oe = new Uint8Array(fe * _e);
2090
+ const be = ee[Q];
2091
+ for (let Ue = 0; Ue < _e; Ue++) {
2092
+ N = Ue * fe;
2093
+ const ye = Ue * ge;
2094
+ if (B == 8) for (var ce = 0; ce < ge; ce++) Oe[N + ce] = be[ye + ce];
2095
+ else if (B == 4) for (ce = 0; ce < ge; ce++) Oe[N + (ce >> 1)] |= be[ye + ce] << 4 - 4 * (1 & ce);
2096
+ else if (B == 2) for (ce = 0; ce < ge; ce++) Oe[N + (ce >> 2)] |= be[ye + ce] << 6 - 2 * (3 & ce);
2097
+ else if (B == 1) for (ce = 0; ce < ge; ce++) Oe[N + (ce >> 3)] |= be[ye + ce] << 7 - 1 * (7 & ce);
2098
+ }
2099
+ re = Oe, F = 3, ve = 1;
2100
+ } else if (x == 0 && K.length == 1) {
2101
+ Oe = new Uint8Array(ge * _e * 3);
2102
+ const be = ge * _e;
2103
+ for (N = 0; N < be; N++) {
2104
+ const Ue = 3 * N, ye = 4 * N;
2105
+ Oe[Ue] = re[ye], Oe[Ue + 1] = re[ye + 1], Oe[Ue + 2] = re[ye + 2];
2106
+ }
2107
+ re = Oe, F = 2, ve = 3, fe = 3 * ge;
2108
+ }
2109
+ de.img = re, de.bpl = fe, de.bpp = ve;
2110
+ }
2111
+ return {
2112
+ ctype: F,
2113
+ depth: B,
2114
+ plte: ne,
2115
+ frames: K
2116
+ };
2117
+ }
2118
+ function i(c, f, b, A, w, U, v) {
2119
+ const M = Uint8Array, l = Uint32Array, o = new M(c[w - 1]), O = new l(c[w - 1]), F = w + 1 < c.length ? new M(c[w + 1]) : null, B = new M(c[w]), X = new l(B.buffer);
2120
+ let Q = f, q = b, N = -1, x = -1;
2121
+ for (let se = 0; se < U.height; se++) for (let ne = 0; ne < U.width; ne++) {
2122
+ const ee = U.x + ne, ie = U.y + se, de = ie * f + ee, ge = X[de];
2123
+ ge == 0 || A[w - 1].dispose == 0 && O[de] == ge && (F == null || F[4 * de + 3] != 0) || (ee < Q && (Q = ee), ee > N && (N = ee), ie < q && (q = ie), ie > x && (x = ie));
2124
+ }
2125
+ N == -1 && (Q = q = N = x = 0), v && ((1 & Q) == 1 && Q--, (1 & q) == 1 && q--), U = {
2126
+ x: Q,
2127
+ y: q,
2128
+ width: N - Q + 1,
2129
+ height: x - q + 1
2130
+ };
2131
+ const K = A[w];
2132
+ K.rect = U, K.blend = 1, K.img = new Uint8Array(U.width * U.height * 4), A[w - 1].dispose == 0 ? (T(o, f, b, K.img, U.width, U.height, -U.x, -U.y, 0), n(B, f, b, K.img, U)) : T(B, f, b, K.img, U.width, U.height, -U.x, -U.y, 0);
2133
+ }
2134
+ function n(c, f, b, A, w) {
2135
+ T(c, f, b, A, w.width, w.height, -w.x, -w.y, 2);
2136
+ }
2137
+ function s(c, f, b, A, w, U, v) {
2138
+ const M = [];
2139
+ let l, o = [
2140
+ 0,
2141
+ 1,
2142
+ 2,
2143
+ 3,
2144
+ 4
2145
+ ];
2146
+ U != -1 ? o = [U] : (f * A > 5e5 || b == 1) && (o = [0]), v && (l = { level: 0 });
2147
+ const O = V;
2148
+ for (var F = 0; F < o.length; F++) {
2149
+ for (let Q = 0; Q < f; Q++) h(w, c, Q, A, b, o[F]);
2150
+ M.push(O.deflate(w, l));
2151
+ }
2152
+ let B, X = 1e9;
2153
+ for (F = 0; F < M.length; F++) M[F].length < X && (B = F, X = M[F].length);
2154
+ return M[B];
2155
+ }
2156
+ function h(c, f, b, A, w, U) {
2157
+ const v = b * A;
2158
+ let M = v + b;
2159
+ if (c[M] = U, M++, U == 0) if (A < 500) for (var l = 0; l < A; l++) c[M + l] = f[v + l];
2160
+ else c.set(new Uint8Array(f.buffer, v, A), M);
2161
+ else if (U == 1) {
2162
+ for (l = 0; l < w; l++) c[M + l] = f[v + l];
2163
+ for (l = w; l < A; l++) c[M + l] = f[v + l] - f[v + l - w] + 256 & 255;
2164
+ } else if (b == 0) {
2165
+ for (l = 0; l < w; l++) c[M + l] = f[v + l];
2166
+ if (U == 2) for (l = w; l < A; l++) c[M + l] = f[v + l];
2167
+ if (U == 3) for (l = w; l < A; l++) c[M + l] = f[v + l] - (f[v + l - w] >> 1) + 256 & 255;
2168
+ if (U == 4) for (l = w; l < A; l++) c[M + l] = f[v + l] - H(f[v + l - w], 0, 0) + 256 & 255;
2169
+ } else {
2170
+ if (U == 2) for (l = 0; l < A; l++) c[M + l] = f[v + l] + 256 - f[v + l - A] & 255;
2171
+ if (U == 3) {
2172
+ for (l = 0; l < w; l++) c[M + l] = f[v + l] + 256 - (f[v + l - A] >> 1) & 255;
2173
+ for (l = w; l < A; l++) c[M + l] = f[v + l] + 256 - (f[v + l - A] + f[v + l - w] >> 1) & 255;
2174
+ }
2175
+ if (U == 4) {
2176
+ for (l = 0; l < w; l++) c[M + l] = f[v + l] + 256 - H(0, f[v + l - A], 0) & 255;
2177
+ for (l = w; l < A; l++) c[M + l] = f[v + l] + 256 - H(f[v + l - w], f[v + l - A], f[v + l - w - A]) & 255;
2178
+ }
2179
+ }
2180
+ }
2181
+ function E(c, f) {
2182
+ const b = new Uint8Array(c), A = b.slice(0), w = new Uint32Array(A.buffer), U = S(A, f), v = U[0], M = U[1], l = b.length, o = new Uint8Array(l >> 2);
2183
+ let O;
2184
+ if (b.length < 2e7) for (var F = 0; F < l; F += 4) O = y(v, B = b[F] * (1 / 255), X = b[F + 1] * (1 / 255), Q = b[F + 2] * (1 / 255), q = b[F + 3] * (1 / 255)), o[F >> 2] = O.ind, w[F >> 2] = O.est.rgba;
2185
+ else for (F = 0; F < l; F += 4) {
2186
+ var B = b[F] * .00392156862745098, X = b[F + 1] * (1 / 255), Q = b[F + 2] * (1 / 255), q = b[F + 3] * (1 / 255);
2187
+ for (O = v; O.left;) O = D(O.est, B, X, Q, q) <= 0 ? O.left : O.right;
2188
+ o[F >> 2] = O.ind, w[F >> 2] = O.est.rgba;
2189
+ }
2190
+ return {
2191
+ abuf: A.buffer,
2192
+ inds: o,
2193
+ plte: M
2194
+ };
2195
+ }
2196
+ function S(c, f, b) {
2197
+ b ??= 1e-4;
2198
+ const A = new Uint32Array(c.buffer), w = {
2199
+ i0: 0,
2200
+ i1: c.length,
2201
+ bst: null,
2202
+ est: null,
2203
+ tdst: 0,
2204
+ left: null,
2205
+ right: null
2206
+ };
2207
+ w.bst = j(c, w.i0, w.i1), w.est = m(w.bst);
2208
+ const U = [w];
2209
+ for (; U.length < f;) {
2210
+ let M = 0, l = 0;
2211
+ for (var v = 0; v < U.length; v++) U[v].est.L > M && (M = U[v].est.L, l = v);
2212
+ if (M < b) break;
2213
+ const o = U[l], O = L(c, A, o.i0, o.i1, o.est.e, o.est.eMq255);
2214
+ if (o.i0 >= O || o.i1 <= O) {
2215
+ o.est.L = 0;
2216
+ continue;
2217
+ }
2218
+ const F = {
2219
+ i0: o.i0,
2220
+ i1: O,
2221
+ bst: null,
2222
+ est: null,
2223
+ tdst: 0,
2224
+ left: null,
2225
+ right: null
2226
+ };
2227
+ F.bst = j(c, F.i0, F.i1), F.est = m(F.bst);
2228
+ const B = {
2229
+ i0: O,
2230
+ i1: o.i1,
2231
+ bst: null,
2232
+ est: null,
2233
+ tdst: 0,
2234
+ left: null,
2235
+ right: null
2236
+ };
2237
+ for (B.bst = {
2238
+ R: [],
2239
+ m: [],
2240
+ N: o.bst.N - F.bst.N
2241
+ }, v = 0; v < 16; v++) B.bst.R[v] = o.bst.R[v] - F.bst.R[v];
2242
+ for (v = 0; v < 4; v++) B.bst.m[v] = o.bst.m[v] - F.bst.m[v];
2243
+ B.est = m(B.bst), o.left = F, o.right = B, U[l] = F, U.push(B);
2244
+ }
2245
+ for (U.sort(((M, l) => l.bst.N - M.bst.N)), v = 0; v < U.length; v++) U[v].ind = v;
2246
+ return [w, U];
2247
+ }
2248
+ function y(c, f, b, A, w) {
2249
+ if (c.left == null) return c.tdst = (function(F, B, X, Q, q) {
2250
+ const N = B - F[0], x = X - F[1], K = Q - F[2], se = q - F[3];
2251
+ return N * N + x * x + K * K + se * se;
2252
+ })(c.est.q, f, b, A, w), c;
2253
+ const U = D(c.est, f, b, A, w);
2254
+ let v = c.left, M = c.right;
2255
+ U > 0 && (v = c.right, M = c.left);
2256
+ const l = y(v, f, b, A, w);
2257
+ if (l.tdst <= U * U) return l;
2258
+ const o = y(M, f, b, A, w);
2259
+ return o.tdst < l.tdst ? o : l;
2260
+ }
2261
+ function D(c, f, b, A, w) {
2262
+ const { e: U } = c;
2263
+ return U[0] * f + U[1] * b + U[2] * A + U[3] * w - c.eMq;
2264
+ }
2265
+ function L(c, f, b, A, w, U) {
2266
+ for (A -= 4; b < A;) {
2267
+ for (; P(c, b, w) <= U;) b += 4;
2268
+ for (; P(c, A, w) > U;) A -= 4;
2269
+ if (b >= A) break;
2270
+ const v = f[b >> 2];
2271
+ f[b >> 2] = f[A >> 2], f[A >> 2] = v, b += 4, A -= 4;
2272
+ }
2273
+ for (; P(c, b, w) > U;) b -= 4;
2274
+ return b + 4;
2275
+ }
2276
+ function P(c, f, b) {
2277
+ return c[f] * b[0] + c[f + 1] * b[1] + c[f + 2] * b[2] + c[f + 3] * b[3];
2278
+ }
2279
+ function j(c, f, b) {
2280
+ const A = [
2281
+ 0,
2282
+ 0,
2283
+ 0,
2284
+ 0,
2285
+ 0,
2286
+ 0,
2287
+ 0,
2288
+ 0,
2289
+ 0,
2290
+ 0,
2291
+ 0,
2292
+ 0,
2293
+ 0,
2294
+ 0,
2295
+ 0,
2296
+ 0
2297
+ ], w = [
2298
+ 0,
2299
+ 0,
2300
+ 0,
2301
+ 0
2302
+ ], U = b - f >> 2;
2303
+ for (let v = f; v < b; v += 4) {
2304
+ const M = c[v] * .00392156862745098, l = c[v + 1] * (1 / 255), o = c[v + 2] * (1 / 255), O = c[v + 3] * (1 / 255);
2305
+ w[0] += M, w[1] += l, w[2] += o, w[3] += O, A[0] += M * M, A[1] += M * l, A[2] += M * o, A[3] += M * O, A[5] += l * l, A[6] += l * o, A[7] += l * O, A[10] += o * o, A[11] += o * O, A[15] += O * O;
2306
+ }
2307
+ return A[4] = A[1], A[8] = A[2], A[9] = A[6], A[12] = A[3], A[13] = A[7], A[14] = A[11], {
2308
+ R: A,
2309
+ m: w,
2310
+ N: U
2311
+ };
2312
+ }
2313
+ function m(c) {
2314
+ const { R: f } = c, { m: b } = c, { N: A } = c, w = b[0], U = b[1], v = b[2], M = b[3], l = A == 0 ? 0 : 1 / A, o = [
2315
+ f[0] - w * w * l,
2316
+ f[1] - w * U * l,
2317
+ f[2] - w * v * l,
2318
+ f[3] - w * M * l,
2319
+ f[4] - U * w * l,
2320
+ f[5] - U * U * l,
2321
+ f[6] - U * v * l,
2322
+ f[7] - U * M * l,
2323
+ f[8] - v * w * l,
2324
+ f[9] - v * U * l,
2325
+ f[10] - v * v * l,
2326
+ f[11] - v * M * l,
2327
+ f[12] - M * w * l,
2328
+ f[13] - M * U * l,
2329
+ f[14] - M * v * l,
2330
+ f[15] - M * M * l
2331
+ ], O = o, F = C;
2332
+ let B = [
2333
+ Math.random(),
2334
+ Math.random(),
2335
+ Math.random(),
2336
+ Math.random()
2337
+ ], X = 0, Q = 0;
2338
+ if (A != 0) for (let N = 0; N < 16 && (B = F.multVec(O, B), Q = Math.sqrt(F.dot(B, B)), B = F.sml(1 / Q, B), !(N != 0 && Math.abs(Q - X) < 1e-9)); N++) X = Q;
2339
+ const q = [
2340
+ w * l,
2341
+ U * l,
2342
+ v * l,
2343
+ M * l
2344
+ ];
2345
+ return {
2346
+ Cov: o,
2347
+ q,
2348
+ e: B,
2349
+ L: X,
2350
+ eMq255: F.dot(F.sml(255, q), B),
2351
+ eMq: F.dot(B, q),
2352
+ rgba: (Math.round(255 * q[3]) << 24 | Math.round(255 * q[2]) << 16 | Math.round(255 * q[1]) << 8 | Math.round(255 * q[0]) << 0) >>> 0
2353
+ };
2354
+ }
2355
+ var C = {
2356
+ multVec: (c, f) => [
2357
+ c[0] * f[0] + c[1] * f[1] + c[2] * f[2] + c[3] * f[3],
2358
+ c[4] * f[0] + c[5] * f[1] + c[6] * f[2] + c[7] * f[3],
2359
+ c[8] * f[0] + c[9] * f[1] + c[10] * f[2] + c[11] * f[3],
2360
+ c[12] * f[0] + c[13] * f[1] + c[14] * f[2] + c[15] * f[3]
2361
+ ],
2362
+ dot: (c, f) => c[0] * f[0] + c[1] * f[1] + c[2] * f[2] + c[3] * f[3],
2363
+ sml: (c, f) => [
2364
+ c * f[0],
2365
+ c * f[1],
2366
+ c * f[2],
2367
+ c * f[3]
2368
+ ]
2369
+ };
2370
+ Z.encode = function(f, b, A, w, U, v, M) {
2371
+ w ??= 0, M ??= !1;
2372
+ const l = r(f, b, A, w, [
2373
+ !1,
2374
+ !1,
2375
+ !1,
2376
+ 0,
2377
+ M,
2378
+ !1
2379
+ ]);
2380
+ return _(l, -1), p(l, b, A, U, v);
2381
+ }, Z.encodeLL = function(f, b, A, w, U, v, M, l) {
2382
+ const o = {
2383
+ ctype: 0 + (w == 1 ? 0 : 2) + (U == 0 ? 0 : 4),
2384
+ depth: v,
2385
+ frames: []
2386
+ }, O = (w + U) * v, F = O * b;
2387
+ for (let B = 0; B < f.length; B++) o.frames.push({
2388
+ rect: {
2389
+ x: 0,
2390
+ y: 0,
2391
+ width: b,
2392
+ height: A
2393
+ },
2394
+ img: new Uint8Array(f[B]),
2395
+ blend: 0,
2396
+ dispose: 1,
2397
+ bpp: Math.ceil(O / 8),
2398
+ bpl: Math.ceil(F / 8)
2399
+ });
2400
+ return _(o, 0, !0), p(o, b, A, M, l);
2401
+ }, Z.encode.compress = r, Z.encode.dither = a, Z.quantize = E, Z.quantize.getKDtree = S, Z.quantize.getNearest = y;
2402
+ })();
2403
+ const J = {
2404
+ toArrayBuffer(T, R) {
2405
+ const H = T.width, d = T.height, e = H << 2, t = T.getContext("2d").getImageData(0, 0, H, d), u = new Uint32Array(t.data.buffer), a = (32 * H + 31) / 32 << 2, p = a * d, _ = 122 + p, r = new ArrayBuffer(_), i = new DataView(r), n = 1 << 20;
2406
+ let s, h, E, S, y = n, D = 0, L = 0, P = 0;
2407
+ function j(c) {
2408
+ i.setUint16(L, c, !0), L += 2;
2409
+ }
2410
+ function m(c) {
2411
+ i.setUint32(L, c, !0), L += 4;
2412
+ }
2413
+ function C(c) {
2414
+ L += c;
2415
+ }
2416
+ j(19778), m(_), C(4), m(122), m(108), m(H), m(-d >>> 0), j(1), j(32), m(3), m(p), m(2835), m(2835), C(8), m(16711680), m(65280), m(255), m(4278190080), m(1466527264), (function c() {
2417
+ for (; D < d && y > 0;) {
2418
+ for (S = 122 + D * a, s = 0; s < e;) y--, h = u[P++], E = h >>> 24, i.setUint32(S + s, h << 8 | E), s += 4;
2419
+ D++;
2420
+ }
2421
+ P < u.length ? (y = n, setTimeout(c, J._dly)) : R(r);
2422
+ })();
2423
+ },
2424
+ toBlob(T, R) {
2425
+ this.toArrayBuffer(T, ((H) => {
2426
+ R(new Blob([H], { type: "image/bmp" }));
2427
+ }));
2428
+ },
2429
+ _dly: 9
2430
+ };
2431
+ var $ = {
2432
+ CHROME: "CHROME",
2433
+ FIREFOX: "FIREFOX",
2434
+ DESKTOP_SAFARI: "DESKTOP_SAFARI",
2435
+ IE: "IE",
2436
+ IOS: "IOS",
2437
+ ETC: "ETC"
2438
+ }, Fe = {
2439
+ [$.CHROME]: 16384,
2440
+ [$.FIREFOX]: 11180,
2441
+ [$.DESKTOP_SAFARI]: 16384,
2442
+ [$.IE]: 8192,
2443
+ [$.IOS]: 4096,
2444
+ [$.ETC]: 8192
2445
+ };
2446
+ const ae = typeof window < "u", Be = typeof WorkerGlobalScope < "u" && self instanceof WorkerGlobalScope, Ie = ae && window.cordova && window.cordova.require && window.cordova.require("cordova/modulemapper"), te = (ae || Be) && (Ie && Ie.getOriginalSymbol(window, "File") || typeof File < "u" && File), Y = (ae || Be) && (Ie && Ie.getOriginalSymbol(window, "FileReader") || typeof FileReader < "u" && FileReader);
2447
+ function me(T, R, H = Date.now()) {
2448
+ return new Promise(((d) => {
2449
+ const e = T.split(","), t = e[0].match(/:(.*?);/)[1], u = globalThis.atob(e[1]);
2450
+ let a = u.length;
2451
+ const p = new Uint8Array(a);
2452
+ for (; a--;) p[a] = u.charCodeAt(a);
2453
+ const _ = new Blob([p], { type: t });
2454
+ _.name = R, _.lastModified = H, d(_);
2455
+ }));
2456
+ }
2457
+ function pe(T) {
2458
+ return new Promise(((R, H) => {
2459
+ const d = new Y();
2460
+ d.onload = () => R(d.result), d.onerror = (e) => H(e), d.readAsDataURL(T);
2461
+ }));
2462
+ }
2463
+ function Re(T) {
2464
+ return new Promise(((R, H) => {
2465
+ const d = new Image();
2466
+ d.onload = () => R(d), d.onerror = (e) => H(e), d.src = T;
2467
+ }));
2468
+ }
2469
+ function ue() {
2470
+ if (ue.cachedResult !== void 0) return ue.cachedResult;
2471
+ let T = $.ETC;
2472
+ const { userAgent: R } = navigator;
2473
+ return /Chrom(e|ium)/i.test(R) ? T = $.CHROME : /iP(ad|od|hone)/i.test(R) && /WebKit/i.test(R) ? T = $.IOS : /Safari/i.test(R) ? T = $.DESKTOP_SAFARI : /Firefox/i.test(R) ? T = $.FIREFOX : (/MSIE/i.test(R) || document.documentMode) && (T = $.IE), ue.cachedResult = T, ue.cachedResult;
2474
+ }
2475
+ function Pe(T, R) {
2476
+ const H = Fe[ue()];
2477
+ let d = T, e = R, t = d * e;
2478
+ const u = d > e ? e / d : d / e;
2479
+ for (; t > H * H;) {
2480
+ const a = (H + d) / 2, p = (H + e) / 2;
2481
+ a < p ? (e = p, d = p * u) : (e = a * u, d = a), t = d * e;
2482
+ }
2483
+ return {
2484
+ width: d,
2485
+ height: e
2486
+ };
2487
+ }
2488
+ function xe(T, R) {
2489
+ let H, d;
2490
+ try {
2491
+ if (H = new OffscreenCanvas(T, R), d = H.getContext("2d"), d === null) throw new Error("getContext of OffscreenCanvas returns null");
2492
+ } catch {
2493
+ H = document.createElement("canvas"), d = H.getContext("2d");
2494
+ }
2495
+ return H.width = T, H.height = R, [H, d];
2496
+ }
2497
+ function Ce(T, R) {
2498
+ const { width: H, height: d } = Pe(T.width, T.height), [e, t] = xe(H, d);
2499
+ return R && /jpe?g/.test(R) && (t.fillStyle = "white", t.fillRect(0, 0, e.width, e.height)), t.drawImage(T, 0, 0, e.width, e.height), e;
2500
+ }
2501
+ function Je() {
2502
+ return Je.cachedResult !== void 0 || (Je.cachedResult = [
2503
+ "iPad Simulator",
2504
+ "iPhone Simulator",
2505
+ "iPod Simulator",
2506
+ "iPad",
2507
+ "iPhone",
2508
+ "iPod"
2509
+ ].includes(navigator.platform) || navigator.userAgent.includes("Mac") && typeof document < "u" && "ontouchend" in document), Je.cachedResult;
2510
+ }
2511
+ function ft(T, R = {}) {
2512
+ return new Promise((function(H, d) {
2513
+ let e, t;
2514
+ var u = function() {
2515
+ try {
2516
+ return t = Ce(e, R.fileType || T.type), H([e, t]);
2517
+ } catch (p) {
2518
+ return d(p);
2519
+ }
2520
+ }, a = function(p) {
2521
+ try {
2522
+ var _ = function(r) {
2523
+ try {
2524
+ throw r;
2525
+ } catch (i) {
2526
+ return d(i);
2527
+ }
2528
+ };
2529
+ try {
2530
+ let r;
2531
+ return pe(T).then((function(i) {
2532
+ try {
2533
+ return r = i, Re(r).then((function(n) {
2534
+ try {
2535
+ return e = n, (function() {
2536
+ try {
2537
+ return u();
2538
+ } catch (s) {
2539
+ return d(s);
2540
+ }
2541
+ })();
2542
+ } catch (s) {
2543
+ return _(s);
2544
+ }
2545
+ }), _);
2546
+ } catch (n) {
2547
+ return _(n);
2548
+ }
2549
+ }), _);
2550
+ } catch (r) {
2551
+ _(r);
2552
+ }
2553
+ } catch (r) {
2554
+ return d(r);
2555
+ }
2556
+ };
2557
+ try {
2558
+ if (Je() || [$.DESKTOP_SAFARI, $.MOBILE_SAFARI].includes(ue())) throw new Error("Skip createImageBitmap on IOS and Safari");
2559
+ return createImageBitmap(T).then((function(p) {
2560
+ try {
2561
+ return e = p, u();
2562
+ } catch {
2563
+ return a();
2564
+ }
2565
+ }), a);
2566
+ } catch {
2567
+ a();
2568
+ }
2569
+ }));
2570
+ }
2571
+ function ct(T, R, H, d, e = 1) {
2572
+ return new Promise((function(t, u) {
2573
+ let a;
2574
+ if (R === "image/png") {
2575
+ let _, r, i;
2576
+ return _ = T.getContext("2d"), {data: r} = _.getImageData(0, 0, T.width, T.height), i = Z.encode([r.buffer], T.width, T.height, 4096 * e), a = new Blob([i], { type: R }), a.name = H, a.lastModified = d, p.call(this);
2577
+ }
2578
+ {
2579
+ let _ = function() {
2580
+ return p.call(this);
2581
+ };
2582
+ if (R === "image/bmp") return new Promise(((r) => J.toBlob(T, r))).then(function(r) {
2583
+ try {
2584
+ return a = r, a.name = H, a.lastModified = d, _.call(this);
2585
+ } catch (i) {
2586
+ return u(i);
2587
+ }
2588
+ }.bind(this), u);
2589
+ {
2590
+ let r = function() {
2591
+ return _.call(this);
2592
+ };
2593
+ if (typeof OffscreenCanvas == "function" && T instanceof OffscreenCanvas) return T.convertToBlob({
2594
+ type: R,
2595
+ quality: e
2596
+ }).then(function(i) {
2597
+ try {
2598
+ return a = i, a.name = H, a.lastModified = d, r.call(this);
2599
+ } catch (n) {
2600
+ return u(n);
2601
+ }
2602
+ }.bind(this), u);
2603
+ {
2604
+ let i;
2605
+ return i = T.toDataURL(R, e), me(i, H, d).then(function(n) {
2606
+ try {
2607
+ return a = n, r.call(this);
2608
+ } catch (s) {
2609
+ return u(s);
2610
+ }
2611
+ }.bind(this), u);
2612
+ }
2613
+ }
2614
+ }
2615
+ function p() {
2616
+ return t(a);
2617
+ }
2618
+ }));
2619
+ }
2620
+ function Le(T) {
2621
+ T.width = 0, T.height = 0;
2622
+ }
2623
+ function Ve() {
2624
+ return new Promise((function(T, R) {
2625
+ let H, d, e, t;
2626
+ return Ve.cachedResult !== void 0 ? T(Ve.cachedResult) : me("data:image/jpeg;base64,/9j/4QAiRXhpZgAATU0AKgAAAAgAAQESAAMAAAABAAYAAAAAAAD/2wCEAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAf/AABEIAAEAAgMBEQACEQEDEQH/xABKAAEAAAAAAAAAAAAAAAAAAAALEAEAAAAAAAAAAAAAAAAAAAAAAQEAAAAAAAAAAAAAAAAAAAAAEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwA/8H//2Q==", "test.jpg", Date.now()).then((function(u) {
2627
+ try {
2628
+ return H = u, ft(H).then((function(a) {
2629
+ try {
2630
+ return d = a[1], ct(d, H.type, H.name, H.lastModified).then((function(p) {
2631
+ try {
2632
+ return e = p, Le(d), ft(e).then((function(_) {
2633
+ try {
2634
+ return t = _[0], Ve.cachedResult = t.width === 1 && t.height === 2, T(Ve.cachedResult);
2635
+ } catch (r) {
2636
+ return R(r);
2637
+ }
2638
+ }), R);
2639
+ } catch (_) {
2640
+ return R(_);
2641
+ }
2642
+ }), R);
2643
+ } catch (p) {
2644
+ return R(p);
2645
+ }
2646
+ }), R);
2647
+ } catch (a) {
2648
+ return R(a);
2649
+ }
2650
+ }), R);
2651
+ }));
2652
+ }
2653
+ function Nt(T) {
2654
+ return new Promise(((R, H) => {
2655
+ const d = new Y();
2656
+ d.onload = (e) => {
2657
+ const t = new DataView(e.target.result);
2658
+ if (t.getUint16(0, !1) != 65496) return R(-2);
2659
+ const u = t.byteLength;
2660
+ let a = 2;
2661
+ for (; a < u;) {
2662
+ if (t.getUint16(a + 2, !1) <= 8) return R(-1);
2663
+ const p = t.getUint16(a, !1);
2664
+ if (a += 2, p == 65505) {
2665
+ if (t.getUint32(a += 2, !1) != 1165519206) return R(-1);
2666
+ const _ = t.getUint16(a += 6, !1) == 18761;
2667
+ a += t.getUint32(a + 4, _);
2668
+ const r = t.getUint16(a, _);
2669
+ a += 2;
2670
+ for (let i = 0; i < r; i++) if (t.getUint16(a + 12 * i, _) == 274) return R(t.getUint16(a + 12 * i + 8, _));
2671
+ } else {
2672
+ if ((65280 & p) != 65280) break;
2673
+ a += t.getUint16(a, !1);
2674
+ }
2675
+ }
2676
+ return R(-1);
2677
+ }, d.onerror = (e) => H(e), d.readAsArrayBuffer(T);
2678
+ }));
2679
+ }
2680
+ function Wt(T, R) {
2681
+ const { width: H } = T, { height: d } = T, { maxWidthOrHeight: e } = R;
2682
+ let t, u = T;
2683
+ return isFinite(e) && (H > e || d > e) && ([u, t] = xe(H, d), H > d ? (u.width = e, u.height = d / H * e) : (u.width = H / d * e, u.height = e), t.drawImage(T, 0, 0, u.width, u.height), Le(T)), u;
2684
+ }
2685
+ function zt(T, R) {
2686
+ const { width: H } = T, { height: d } = T, [e, t] = xe(H, d);
2687
+ switch (R > 4 && R < 9 ? (e.width = d, e.height = H) : (e.width = H, e.height = d), R) {
2688
+ case 2:
2689
+ t.transform(-1, 0, 0, 1, H, 0);
2690
+ break;
2691
+ case 3:
2692
+ t.transform(-1, 0, 0, -1, H, d);
2693
+ break;
2694
+ case 4:
2695
+ t.transform(1, 0, 0, -1, 0, d);
2696
+ break;
2697
+ case 5:
2698
+ t.transform(0, 1, 1, 0, 0, 0);
2699
+ break;
2700
+ case 6:
2701
+ t.transform(0, 1, -1, 0, d, 0);
2702
+ break;
2703
+ case 7:
2704
+ t.transform(0, -1, -1, 0, d, H);
2705
+ break;
2706
+ case 8: t.transform(0, -1, 1, 0, 0, H);
2707
+ }
2708
+ return t.drawImage(T, 0, 0, H, d), Le(T), e;
2709
+ }
2710
+ function Qt(T, R, H = 0) {
2711
+ return new Promise((function(d, e) {
2712
+ let t, u, a, p, _, r, i, n, s, h, E, S, y, D, L, P, j, m, C, c;
2713
+ function f(A = 5) {
2714
+ if (R.signal && R.signal.aborted) throw R.signal.reason;
2715
+ t += A, R.onProgress(Math.min(t, 100));
2716
+ }
2717
+ function b(A) {
2718
+ if (R.signal && R.signal.aborted) throw R.signal.reason;
2719
+ t = Math.min(Math.max(A, t), 100), R.onProgress(t);
2720
+ }
2721
+ return t = H, u = R.maxIteration || 10, a = 1024 * R.maxSizeMB * 1024, f(), ft(T, R).then(function(A) {
2722
+ try {
2723
+ return [, p] = A, f(), _ = Wt(p, R), f(), new Promise((function(w, U) {
2724
+ var v;
2725
+ if (!(v = R.exifOrientation)) return Nt(T).then(function(l) {
2726
+ try {
2727
+ return v = l, M.call(this);
2728
+ } catch (o) {
2729
+ return U(o);
2730
+ }
2731
+ }.bind(this), U);
2732
+ function M() {
2733
+ return w(v);
2734
+ }
2735
+ return M.call(this);
2736
+ })).then(function(w) {
2737
+ try {
2738
+ return r = w, f(), Ve().then(function(U) {
2739
+ try {
2740
+ return i = U ? _ : zt(_, r), f(), n = R.initialQuality || 1, s = R.fileType || T.type, ct(i, s, T.name, T.lastModified, n).then(function(v) {
2741
+ try {
2742
+ {
2743
+ let l = function() {
2744
+ if (u-- && (L > a || L > y)) {
2745
+ let O, F;
2746
+ return O = c ? .95 * C.width : C.width, F = c ? .95 * C.height : C.height, [j, m] = xe(O, F), m.drawImage(C, 0, 0, O, F), n *= s === "image/png" ? .85 : .95, ct(j, s, T.name, T.lastModified, n).then((function(B) {
2747
+ try {
2748
+ return P = B, Le(C), C = j, L = P.size, b(Math.min(99, Math.floor((D - L) / (D - a) * 100))), l;
2749
+ } catch (X) {
2750
+ return e(X);
2751
+ }
2752
+ }), e);
2753
+ }
2754
+ return [1];
2755
+ }, o = function() {
2756
+ return Le(C), Le(j), Le(_), Le(i), Le(p), b(100), d(P);
2757
+ };
2758
+ if (h = v, f(), E = h.size > a, S = h.size > T.size, !E && !S) return b(100), d(h);
2759
+ var M;
2760
+ return y = T.size, D = h.size, L = D, C = i, c = !R.alwaysKeepResolution && E, (M = function(O) {
2761
+ for (; O;) {
2762
+ if (O.then) return void O.then(M, e);
2763
+ try {
2764
+ if (O.pop) {
2765
+ if (O.length) return O.pop() ? o.call(this) : O;
2766
+ O = l;
2767
+ } else O = O.call(this);
2768
+ } catch (F) {
2769
+ return e(F);
2770
+ }
2771
+ }
2772
+ }.bind(this))(l);
2773
+ }
2774
+ } catch (l) {
2775
+ return e(l);
2776
+ }
2777
+ }.bind(this), e);
2778
+ } catch (v) {
2779
+ return e(v);
2780
+ }
2781
+ }.bind(this), e);
2782
+ } catch (U) {
2783
+ return e(U);
2784
+ }
2785
+ }.bind(this), e);
2786
+ } catch (w) {
2787
+ return e(w);
2788
+ }
2789
+ }.bind(this), e);
2790
+ }));
2791
+ }
2792
+ const jn = `
2793
+ let scriptImported = false
2794
+ self.addEventListener('message', async (e) => {
2795
+ const { file, id, imageCompressionLibUrl, options } = e.data
2796
+ options.onProgress = (progress) => self.postMessage({ progress, id })
2797
+ try {
2798
+ if (!scriptImported) {
2799
+ // console.log('[worker] importScripts', imageCompressionLibUrl)
2800
+ self.importScripts(imageCompressionLibUrl)
2801
+ scriptImported = true
2802
+ }
2803
+ // console.log('[worker] self', self)
2804
+ const compressedFile = await imageCompression(file, options)
2805
+ self.postMessage({ file: compressedFile, id })
2806
+ } catch (e) {
2807
+ // console.error('[worker] error', e)
2808
+ self.postMessage({ error: e.message + '\\n' + e.stack, id })
2809
+ }
2810
+ })
2811
+ `;
2812
+ let yt;
2813
+ function Dn(T, R) {
2814
+ return new Promise(((H, d) => {
2815
+ yt || (yt = (function(u) {
2816
+ const a = [];
2817
+ return typeof u == "function" ? a.push(`(${u})()`) : a.push(u), URL.createObjectURL(new Blob(a));
2818
+ })(jn));
2819
+ const e = new Worker(yt);
2820
+ e.addEventListener("message", (function(u) {
2821
+ if (R.signal && R.signal.aborted) e.terminate();
2822
+ else if (u.data.progress === void 0) {
2823
+ if (u.data.error) return d(new Error(u.data.error)), void e.terminate();
2824
+ H(u.data.file), e.terminate();
2825
+ } else R.onProgress(u.data.progress);
2826
+ })), e.addEventListener("error", d), R.signal && R.signal.addEventListener("abort", (() => {
2827
+ d(R.signal.reason), e.terminate();
2828
+ })), e.postMessage({
2829
+ file: T,
2830
+ imageCompressionLibUrl: R.libURL,
2831
+ options: {
2832
+ ...R,
2833
+ onProgress: void 0,
2834
+ signal: void 0
2835
+ }
2836
+ });
2837
+ }));
2838
+ }
2839
+ function Ae(T, R) {
2840
+ return new Promise((function(H, d) {
2841
+ let e, t, u, a, p, _;
2842
+ if (e = { ...R }, u = 0, {onProgress: a} = e, e.maxSizeMB = e.maxSizeMB || Number.POSITIVE_INFINITY, p = typeof e.useWebWorker != "boolean" || e.useWebWorker, delete e.useWebWorker, e.onProgress = (s) => {
2843
+ u = s, typeof a == "function" && a(u);
2844
+ }, !(T instanceof Blob || T instanceof te)) return d(new Error("The file given is not an instance of Blob or File"));
2845
+ if (!/^image/.test(T.type)) return d(new Error("The file given is not an image"));
2846
+ if (_ = typeof WorkerGlobalScope < "u" && self instanceof WorkerGlobalScope, !p || typeof Worker != "function" || _) return Qt(T, e).then(function(s) {
2847
+ try {
2848
+ return t = s, n.call(this);
2849
+ } catch (h) {
2850
+ return d(h);
2851
+ }
2852
+ }.bind(this), d);
2853
+ var r = function() {
2854
+ try {
2855
+ return n.call(this);
2856
+ } catch (s) {
2857
+ return d(s);
2858
+ }
2859
+ }.bind(this), i = function(s) {
2860
+ try {
2861
+ return Qt(T, e).then((function(h) {
2862
+ try {
2863
+ return t = h, r();
2864
+ } catch (E) {
2865
+ return d(E);
2866
+ }
2867
+ }), d);
2868
+ } catch (h) {
2869
+ return d(h);
2870
+ }
2871
+ };
2872
+ try {
2873
+ return e.libURL = e.libURL || "https://cdn.jsdelivr.net/npm/browser-image-compression@2.0.2/dist/browser-image-compression.js", Dn(T, e).then((function(s) {
2874
+ try {
2875
+ return t = s, r();
2876
+ } catch {
2877
+ return i();
2878
+ }
2879
+ }), i);
2880
+ } catch {
2881
+ i();
2882
+ }
2883
+ function n() {
2884
+ try {
2885
+ t.name = T.name, t.lastModified = T.lastModified;
2886
+ } catch {}
2887
+ try {
2888
+ e.preserveExif && T.type === "image/jpeg" && (!e.fileType || e.fileType && e.fileType === T.type) && (t = z(T, t));
2889
+ } catch {}
2890
+ return H(t);
2891
+ }
2892
+ }));
2893
+ }
2894
+ return Ae.getDataUrlFromFile = pe, Ae.getFilefromDataUrl = me, Ae.loadImage = Re, Ae.drawImageInCanvas = Ce, Ae.drawFileInCanvas = ft, Ae.canvasToFile = ct, Ae.getExifOrientation = Nt, Ae.handleMaxWidthOrHeight = Wt, Ae.followExifOrientation = zt, Ae.cleanupCanvasMemory = Le, Ae.isAutoOrientationInBrowser = Ve, Ae.approximateBelowMaximumCanvasSizeOfBrowser = Pe, Ae.copyExifWithoutOrientation = z, Ae.getBrowserName = ue, Ae.version = "2.0.2", Ae;
2895
+ }));
2896
+ })), mn = Ye.__toESM(gn()), vt = (g) => {
2897
+ if (!g) return "image/png";
2898
+ const I = g.toLowerCase();
2899
+ return I.includes("jpeg") || I.includes("jpg") || I.includes("pjpeg") ? "image/jpeg" : I.includes("png") ? "image/png" : I.includes("gif") ? "image/gif" : I.includes("webp") ? "image/webp" : I.includes("svg") ? "image/svg+xml" : "image/png";
2900
+ }, Lt = (g) => {
2901
+ const I = vt(g).split("/")[1];
2902
+ return I === "svg+xml" ? "svg" : I || "png";
2903
+ };
2904
+ function ot(g) {
2905
+ switch (g.trim().split(".").pop()?.toLowerCase()) {
2906
+ case "svg": return "image/svg+xml";
2907
+ case "png": return "image/png";
2908
+ case "jpg":
2909
+ case "jpeg": return "image/jpeg";
2910
+ case "gif": return "image/gif";
2911
+ case "webp": return "image/webp";
2912
+ default: return;
2913
+ }
2914
+ }
2915
+ function Ot(g) {
2916
+ if (g.type?.startsWith?.("image/")) return !0;
2917
+ const I = (g.name ?? "").trim();
2918
+ if (ot(I)) return !0;
2919
+ const k = (g.type ?? "").toLowerCase();
2920
+ return k.includes("svg") ? !0 : k === "text/xml" || k === "application/xml" || k === "text/plain" ? I.toLowerCase().endsWith(".svg") : !1;
2921
+ }
2922
+ var at = {
2923
+ MAX_SIZE_MB: .48,
2924
+ MAX_WIDTH_OR_HEIGHT: 2e3,
2925
+ QUALITY: .8
2926
+ }, pn = ["gif", "svg"];
2927
+ function vn(g) {
2928
+ return !pn.includes(g);
2929
+ }
2930
+ function kt(g, I) {
2931
+ if (g?.compressMaxSize === 0 || g?.compressMaxWidthOrHeight === 0) return !1;
2932
+ const k = I?.trim() ?? "";
2933
+ return k.startsWith("image/") && k !== "image/gif";
2934
+ }
2935
+ function Bt(g) {
2936
+ return {
2937
+ maxSizeMB: g?.compressMaxSize ?? at.MAX_SIZE_MB,
2938
+ maxWidthOrHeight: g?.compressMaxWidthOrHeight ?? at.MAX_WIDTH_OR_HEIGHT
2939
+ };
2940
+ }
2941
+ function jt(g) {
2942
+ if (!g) return null;
2943
+ const I = g.trim();
2944
+ if (I.endsWith("%")) return null;
2945
+ const k = parseFloat(I.replace(/px$/i, ""));
2946
+ return Number.isFinite(k) && k > 0 ? k : null;
2947
+ }
2948
+ function bn(g) {
2949
+ const I = g.match(/<\s*svg\b[\s\S]*?>/i)?.[0] ?? "", k = I.match(/\bwidth\s*=\s*["']([^"']*)["']/i)?.[1], z = I.match(/\bheight\s*=\s*["']([^"']*)["']/i)?.[1], G = jt(k), W = jt(z);
2950
+ if (G != null && W != null) return {
2951
+ width: G,
2952
+ height: W
2953
+ };
2954
+ const V = g.match(/viewBox\s*=\s*["']([^"']+)["']/i)?.[1];
2955
+ if (V) {
2956
+ const Z = V.trim().split(/[\s,]+/);
2957
+ if (Z.length === 4) {
2958
+ const J = parseFloat(Z[2]), $ = parseFloat(Z[3]);
2959
+ if (Number.isFinite(J) && Number.isFinite($) && J > 0 && $ > 0) return {
2960
+ width: J,
2961
+ height: $
2962
+ };
2963
+ }
2964
+ }
2965
+ return G != null ? {
2966
+ width: G,
2967
+ height: G
2968
+ } : W != null ? {
2969
+ width: W,
2970
+ height: W
2971
+ } : {
2972
+ width: 300,
2973
+ height: 300
2974
+ };
2975
+ }
2976
+ function yn(g, I = 2, k = 4096) {
2977
+ const { width: z, height: G } = bn(g);
2978
+ let W = Math.max(1, Math.round(z * I)), V = Math.max(1, Math.round(G * I));
2979
+ const Z = Math.max(64, k), J = Math.max(W, V);
2980
+ if (J > Z) {
2981
+ const $ = Z / J;
2982
+ W = Math.max(1, Math.round(W * $)), V = Math.max(1, Math.round(V * $));
2983
+ }
2984
+ return {
2985
+ width: W,
2986
+ height: V
2987
+ };
2988
+ }
2989
+ function wn(g) {
2990
+ return new Promise((I, k) => {
2991
+ g.toBlob((z) => {
2992
+ z ? I(z) : k(new Error("canvas.toBlob returned null"));
2993
+ }, "image/png");
2994
+ });
2995
+ }
2996
+ async function An(g, I, k) {
2997
+ const z = new Blob([g], { type: "image/svg+xml;charset=utf-8" }), G = URL.createObjectURL(z);
2998
+ try {
2999
+ const W = new Image();
3000
+ await new Promise((Fe, ae) => {
3001
+ W.onload = () => Fe(), W.onerror = () => ae(new Error("Failed to load SVG image")), W.src = G;
3002
+ });
3003
+ const V = document.createElement("canvas"), Z = Math.max(1, Math.round(I)), J = Math.max(1, Math.round(k));
3004
+ V.width = Z, V.height = J;
3005
+ const $ = V.getContext("2d");
3006
+ if (!$) throw new Error("Canvas 2D context is not available");
3007
+ return $.clearRect(0, 0, Z, J), $.drawImage(W, 0, 0, Z, J), wn(V);
3008
+ } finally {
3009
+ URL.revokeObjectURL(G);
3010
+ }
3011
+ }
3012
+ var _n = 24e3;
3013
+ async function Un(g, I = _n) {
3014
+ const k = Math.min(I, Math.max(0, g.size));
3015
+ return g.slice(0, k).text();
3016
+ }
3017
+ function En(g) {
3018
+ const I = g.trimStart().replace(/^\uFEFF/, "");
3019
+ return I.startsWith("<") ? /<\s*svg[\s>/]/i.test(I) : !1;
3020
+ }
3021
+ async function Fn(g, I = {}) {
3022
+ const k = I.pixelScale ?? 2, z = I.maxLongEdge ?? 4096, G = await g.text(), { width: W, height: V } = yn(G, k, z), Z = await An(G, W, V), J = I.outputFileName ?? g.name, $ = /\.svg$/i.test(J) ? J.replace(/\.svg$/i, ".png") : `${J}.png`;
3023
+ return new File([Z], $, {
3024
+ type: "image/png",
3025
+ lastModified: g.lastModified
3026
+ });
3027
+ }
3028
+ function st(g, I, k, z) {
3029
+ return new File([g], I, {
3030
+ type: k,
3031
+ lastModified: z
3032
+ });
3033
+ }
3034
+ function bt(g, I) {
3035
+ return !I || I === g.name ? g : st(g, I, g.type, g.lastModified);
3036
+ }
3037
+ function In(g, I, k, z) {
3038
+ const G = z ?? I.name;
3039
+ return g instanceof File ? g.type !== k || g.lastModified !== I.lastModified || g.name !== G ? st(g, G, k, I.lastModified) : g : st(g, G, k, I.lastModified);
3040
+ }
3041
+ function Mn(g, I) {
3042
+ const k = I.startsWith(".") ? I.slice(1) : I, z = g.lastIndexOf(".");
3043
+ return z > 0 ? `${g.substring(0, z)}.${k}` : `${g}.${k}`;
3044
+ }
3045
+ function Pn(g) {
3046
+ return g === "image/webp" ? "image/jpeg" : g;
3047
+ }
3048
+ async function Dt(g, I = {}) {
3049
+ const { maxSizeMB: k = at.MAX_SIZE_MB, maxWidthOrHeight: z = at.MAX_WIDTH_OR_HEIGHT, mimeType: G, fileName: W, libURL: V, enableCompression: Z = !0, convertSvgToPng: J = !1 } = I;
3050
+ if (!g || !(g instanceof File)) return g;
3051
+ let $ = g, Fe = !1;
3052
+ if (J) {
3053
+ const ue = ($.type || "").toLowerCase(), Pe = /\.svg$/i.test($.name.trim()), xe = ue.includes("svg");
3054
+ let Ce = !1;
3055
+ if (!xe && !Pe) try {
3056
+ Ce = En(await Un($));
3057
+ } catch {
3058
+ Ce = !1;
3059
+ }
3060
+ if (xe || Pe || Ce) try {
3061
+ $ = await Fn($, {
3062
+ maxLongEdge: z,
3063
+ outputFileName: W ?? $.name
3064
+ }), Fe = !0;
3065
+ } catch {
3066
+ $ = g;
3067
+ }
3068
+ }
3069
+ const ae = vt(($.type && $.type.trim() !== "" ? $.type : ot($.name)) || (Fe ? "image/png" : G) || "image/jpeg"), Be = Fe ? $.name : W ?? $.name;
3070
+ if (!ae.startsWith("image/")) return bt($, Be);
3071
+ const Ie = Pn(ae), te = Lt(ae), Y = Lt(Ie), me = Ie !== ae ? Mn(Be, Y) : Be, pe = Z && vn(te);
3072
+ if (!pe && Ie === ae) return bt($, me);
3073
+ const Re = $.type === ae ? $ : st($, $.name, ae, $.lastModified);
3074
+ try {
3075
+ const ue = {
3076
+ libURL: V,
3077
+ useWebWorker: !0,
3078
+ fileType: Ie
3079
+ };
3080
+ pe ? (ue.maxSizeMB = k, ue.maxWidthOrHeight = z) : (ue.maxSizeMB = Math.max(Re.size / (1024 * 1024) + 1, 1), ue.initialQuality = 1, ue.alwaysKeepResolution = !0);
3081
+ const Pe = await (0, mn.default)(Re, ue);
3082
+ return In(Pe, Re, vt(Pe.type || Ie), me);
3083
+ } catch {
3084
+ try {
3085
+ return bt($, me);
3086
+ } catch {
3087
+ return $;
3088
+ }
3089
+ }
3090
+ }
3091
+ var Sn = "js/browser-image-compression.js";
3092
+ function Ht() {
3093
+ return qt.getBundledHostAssetUrl(Sn);
3094
+ }
3095
+ async function xn(g, I, k = Ht()) {
3096
+ if (!Ot(g)) return g;
3097
+ const { maxSizeMB: z, maxWidthOrHeight: G } = Bt(I), W = g.type?.trim() || ot(g.name) || g.type || "";
3098
+ return Dt(g, {
3099
+ maxSizeMB: z,
3100
+ maxWidthOrHeight: G,
3101
+ mimeType: W || void 0,
3102
+ fileName: g.name,
3103
+ libURL: k,
3104
+ enableCompression: kt(I, W),
3105
+ convertSvgToPng: !0
3106
+ });
3107
+ }
3108
+ async function Cn(g, I) {
3109
+ if (!g || typeof g.findFileByUrl != "function") return null;
3110
+ const k = await g.findFileByUrl(I);
3111
+ if (!k) return null;
3112
+ const z = typeof g.getFileById == "function" && k.id && await g.getFileById(k.id) || k, G = z.url || I, W = z.thumbnailUrl || z.thumbnail || G || (typeof g.getThumbnailUrl == "function" ? await g.getThumbnailUrl(z) : "") || "";
3113
+ return W ? {
3114
+ file: z,
3115
+ previewUrl: W
3116
+ } : null;
3117
+ }
3118
+ function Tn(g) {
3119
+ if (!(g instanceof Blob) || g.size === 0) throw new lt.G("Failed to download file from the URL.", "UploadUrlDownloadFailed");
3120
+ const I = g.type?.split(";")[0]?.trim() || "image/png";
3121
+ if (!I.startsWith("image/")) throw new lt.G("Content type at the URL is not allowed.", "UploadUrlContentTypeNotAllowed");
3122
+ return {
3123
+ blob: g,
3124
+ mimeType: I
3125
+ };
3126
+ }
3127
+ async function Rn(g, I) {
3128
+ const k = await fetch(g, I);
3129
+ if (!k.ok) throw new Error(`Server returned ${k.status}`);
3130
+ return k.blob();
3131
+ }
3132
+ async function Ln(g, I, k) {
3133
+ const z = k ? { signal: k } : void 0, { blob: G } = await lt.Bi(g, {
3134
+ handleFileProxy: async (W) => Ut.pickFileProxyBlobFromFireResults(await I.fireFileProxy(W)) ?? null,
3135
+ handleProxyUrl: async (W) => Ut.pickProxyUrlOverrideFromFireResults(await I.fireProxyUrl(W), W),
3136
+ fetchWithProxy: (W, V, Z) => he.fetchWithResourceProxy(W, {
3137
+ config: I.appConfig,
3138
+ standalone: I.isStandalone,
3139
+ intent: Z?.intent || "downloadBlob",
3140
+ validateBlob: async (J) => !J.type || J.type.startsWith("image/"),
3141
+ init: V
3142
+ })
3143
+ }, (W) => Rn(W, z), Tn, { fetchInit: z });
3144
+ return G;
3145
+ }
3146
+ function On() {
3147
+ const g = he.useAppConfig(), I = he.useIsStandalone(), k = he.useSelector(he.selectProject), { projectId: z } = he.useParams(), G = k?.id !== void 0 ? String(k.id) : z || "", W = he.useEventEmitter(he.events.FILE_PROXY_EVENT_ID), V = he.useEventEmitter(he.events.PROXY_URL_EVENT_ID);
3148
+ return (0, rt.useCallback)(async (Z, J) => Ln(Z, {
3149
+ appConfig: g,
3150
+ isStandalone: I,
3151
+ fireFileProxy: ($) => W.fire({
3152
+ url: $,
3153
+ project: G
3154
+ }),
3155
+ fireProxyUrl: ($) => V.fire({
3156
+ url: $,
3157
+ project: G
3158
+ })
3159
+ }, J), [
3160
+ g,
3161
+ G,
3162
+ I,
3163
+ W,
3164
+ V
3165
+ ]);
3166
+ }
3167
+ function kn(g) {
3168
+ return he.getContainer(g).getOrCreateInstance(he.IMAGE_BLOB_RESOLVER_ID, () => hn());
3169
+ }
3170
+ function Bn() {
3171
+ const g = he.useStore();
3172
+ return (0, rt.useMemo)(() => kn(g), [g]);
3173
+ }
3174
+ Object.defineProperty(le, "canonicalImageUrlKey", {
3175
+ enumerable: !0,
3176
+ get: function() {
3177
+ return pt;
3178
+ }
3179
+ }), Object.defineProperty(le, "getAiTariffUpgradeStep", {
3180
+ enumerable: !0,
3181
+ get: function() {
3182
+ return fn;
3183
+ }
3184
+ }), Object.defineProperty(le, "getBrowserImageCompressionLibUrl", {
3185
+ enumerable: !0,
3186
+ get: function() {
3187
+ return Ht;
3188
+ }
3189
+ }), Object.defineProperty(le, "getImageDimensionsFromBlob", {
3190
+ enumerable: !0,
3191
+ get: function() {
3192
+ return ln;
3193
+ }
3194
+ }), Object.defineProperty(le, "inferImageMimeFromFileName", {
3195
+ enumerable: !0,
3196
+ get: function() {
3197
+ return ot;
3198
+ }
3199
+ }), Object.defineProperty(le, "isAiLimitReached", {
3200
+ enumerable: !0,
3201
+ get: function() {
3202
+ return Zt;
3203
+ }
3204
+ }), Object.defineProperty(le, "isAllowedImageUploadFile", {
3205
+ enumerable: !0,
3206
+ get: function() {
3207
+ return Ot;
3208
+ }
3209
+ }), Object.defineProperty(le, "isDisabledExtraFeatureUpsellKind", {
3210
+ enumerable: !0,
3211
+ get: function() {
3212
+ return Tt;
3213
+ }
3214
+ }), Object.defineProperty(le, "normalizeImageFormatForDisplay", {
3215
+ enumerable: !0,
3216
+ get: function() {
3217
+ return cn;
3218
+ }
3219
+ }), Object.defineProperty(le, "prepareImageForEditorUpload", {
3220
+ enumerable: !0,
3221
+ get: function() {
3222
+ return xn;
3223
+ }
3224
+ }), Object.defineProperty(le, "prepareImageForUpload", {
3225
+ enumerable: !0,
3226
+ get: function() {
3227
+ return Dt;
3228
+ }
3229
+ }), Object.defineProperty(le, "require_prop_types", {
3230
+ enumerable: !0,
3231
+ get: function() {
3232
+ return Vt;
3233
+ }
3234
+ }), Object.defineProperty(le, "resolveAutoLimitUpgrade", {
3235
+ enumerable: !0,
3236
+ get: function() {
3237
+ return sn;
3238
+ }
3239
+ }), Object.defineProperty(le, "resolveDataProviderPreview", {
3240
+ enumerable: !0,
3241
+ get: function() {
3242
+ return Cn;
3243
+ }
3244
+ }), Object.defineProperty(le, "resolveImageCompressionLimits", {
3245
+ enumerable: !0,
3246
+ get: function() {
3247
+ return Bt;
3248
+ }
3249
+ }), Object.defineProperty(le, "shouldCountAiUsage", {
3250
+ enumerable: !0,
3251
+ get: function() {
3252
+ return Et;
3253
+ }
3254
+ }), Object.defineProperty(le, "shouldEnableImageCompression", {
3255
+ enumerable: !0,
3256
+ get: function() {
3257
+ return kt;
3258
+ }
3259
+ }), Object.defineProperty(le, "useImageBlobFetch", {
3260
+ enumerable: !0,
3261
+ get: function() {
3262
+ return On;
3263
+ }
3264
+ }), Object.defineProperty(le, "useImageBlobResolver", {
3265
+ enumerable: !0,
3266
+ get: function() {
3267
+ return Bn;
3268
+ }
3269
+ }), Object.defineProperty(le, "useProjectPlanLimitPreflight", {
3270
+ enumerable: !0,
3271
+ get: function() {
3272
+ return tn;
3273
+ }
3274
+ }), Object.defineProperty(le, "useProjectPlanLimits", {
3275
+ enumerable: !0,
3276
+ get: function() {
3277
+ return en;
3278
+ }
3279
+ });
3280
+ });