@pinkparrot/qsafe-sig 0.0.2 → 0.0.3

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.
@@ -0,0 +1,3102 @@
1
+ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
2
+ get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
3
+ }) : x)(function(x) {
4
+ if (typeof require !== "undefined") return require.apply(this, arguments);
5
+ throw Error('Dynamic require of "' + x + '" is not supported');
6
+ });
7
+
8
+ // node_modules/@noble/hashes/utils.js
9
+ function isBytes(a) {
10
+ return a instanceof Uint8Array || ArrayBuffer.isView(a) && a.constructor.name === "Uint8Array";
11
+ }
12
+ function anumber(n, title = "") {
13
+ if (!Number.isSafeInteger(n) || n < 0) {
14
+ const prefix = title && `"${title}" `;
15
+ throw new Error(`${prefix}expected integer >= 0, got ${n}`);
16
+ }
17
+ }
18
+ function abytes(value, length, title = "") {
19
+ const bytes = isBytes(value);
20
+ const len = value?.length;
21
+ const needsLen = length !== void 0;
22
+ if (!bytes || needsLen && len !== length) {
23
+ const prefix = title && `"${title}" `;
24
+ const ofLen = needsLen ? ` of length ${length}` : "";
25
+ const got = bytes ? `length=${len}` : `type=${typeof value}`;
26
+ throw new Error(prefix + "expected Uint8Array" + ofLen + ", got " + got);
27
+ }
28
+ return value;
29
+ }
30
+ function ahash(h) {
31
+ if (typeof h !== "function" || typeof h.create !== "function")
32
+ throw new Error("Hash must wrapped by utils.createHasher");
33
+ anumber(h.outputLen);
34
+ anumber(h.blockLen);
35
+ }
36
+ function aexists(instance, checkFinished = true) {
37
+ if (instance.destroyed)
38
+ throw new Error("Hash instance has been destroyed");
39
+ if (checkFinished && instance.finished)
40
+ throw new Error("Hash#digest() has already been called");
41
+ }
42
+ function aoutput(out, instance) {
43
+ abytes(out, void 0, "digestInto() output");
44
+ const min = instance.outputLen;
45
+ if (out.length < min) {
46
+ throw new Error('"digestInto() output" expected to be of length >=' + min);
47
+ }
48
+ }
49
+ function clean(...arrays) {
50
+ for (let i = 0; i < arrays.length; i++) {
51
+ arrays[i].fill(0);
52
+ }
53
+ }
54
+ function createView(arr) {
55
+ return new DataView(arr.buffer, arr.byteOffset, arr.byteLength);
56
+ }
57
+ function rotr(word, shift) {
58
+ return word << 32 - shift | word >>> shift;
59
+ }
60
+ var hasHexBuiltin = /* @__PURE__ */ (() => (
61
+ // @ts-ignore
62
+ typeof Uint8Array.from([]).toHex === "function" && typeof Uint8Array.fromHex === "function"
63
+ ))();
64
+ var hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, "0"));
65
+ function bytesToHex(bytes) {
66
+ abytes(bytes);
67
+ if (hasHexBuiltin)
68
+ return bytes.toHex();
69
+ let hex = "";
70
+ for (let i = 0; i < bytes.length; i++) {
71
+ hex += hexes[bytes[i]];
72
+ }
73
+ return hex;
74
+ }
75
+ var asciis = { _0: 48, _9: 57, A: 65, F: 70, a: 97, f: 102 };
76
+ function asciiToBase16(ch) {
77
+ if (ch >= asciis._0 && ch <= asciis._9)
78
+ return ch - asciis._0;
79
+ if (ch >= asciis.A && ch <= asciis.F)
80
+ return ch - (asciis.A - 10);
81
+ if (ch >= asciis.a && ch <= asciis.f)
82
+ return ch - (asciis.a - 10);
83
+ return;
84
+ }
85
+ function hexToBytes(hex) {
86
+ if (typeof hex !== "string")
87
+ throw new Error("hex string expected, got " + typeof hex);
88
+ if (hasHexBuiltin)
89
+ return Uint8Array.fromHex(hex);
90
+ const hl = hex.length;
91
+ const al = hl / 2;
92
+ if (hl % 2)
93
+ throw new Error("hex string expected, got unpadded hex of length " + hl);
94
+ const array = new Uint8Array(al);
95
+ for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {
96
+ const n1 = asciiToBase16(hex.charCodeAt(hi));
97
+ const n2 = asciiToBase16(hex.charCodeAt(hi + 1));
98
+ if (n1 === void 0 || n2 === void 0) {
99
+ const char = hex[hi] + hex[hi + 1];
100
+ throw new Error('hex string expected, got non-hex character "' + char + '" at index ' + hi);
101
+ }
102
+ array[ai] = n1 * 16 + n2;
103
+ }
104
+ return array;
105
+ }
106
+ function concatBytes(...arrays) {
107
+ let sum = 0;
108
+ for (let i = 0; i < arrays.length; i++) {
109
+ const a = arrays[i];
110
+ abytes(a);
111
+ sum += a.length;
112
+ }
113
+ const res = new Uint8Array(sum);
114
+ for (let i = 0, pad = 0; i < arrays.length; i++) {
115
+ const a = arrays[i];
116
+ res.set(a, pad);
117
+ pad += a.length;
118
+ }
119
+ return res;
120
+ }
121
+ function createHasher(hashCons, info = {}) {
122
+ const hashC = (msg, opts) => hashCons(opts).update(msg).digest();
123
+ const tmp = hashCons(void 0);
124
+ hashC.outputLen = tmp.outputLen;
125
+ hashC.blockLen = tmp.blockLen;
126
+ hashC.create = (opts) => hashCons(opts);
127
+ Object.assign(hashC, info);
128
+ return Object.freeze(hashC);
129
+ }
130
+ function randomBytes(bytesLength = 32) {
131
+ const cr = typeof globalThis === "object" ? globalThis.crypto : null;
132
+ if (typeof cr?.getRandomValues !== "function")
133
+ throw new Error("crypto.getRandomValues must be defined");
134
+ return cr.getRandomValues(new Uint8Array(bytesLength));
135
+ }
136
+ var oidNist = (suffix) => ({
137
+ oid: Uint8Array.from([6, 9, 96, 134, 72, 1, 101, 3, 4, 2, suffix])
138
+ });
139
+
140
+ // node_modules/@noble/hashes/hmac.js
141
+ var _HMAC = class {
142
+ oHash;
143
+ iHash;
144
+ blockLen;
145
+ outputLen;
146
+ finished = false;
147
+ destroyed = false;
148
+ constructor(hash, key) {
149
+ ahash(hash);
150
+ abytes(key, void 0, "key");
151
+ this.iHash = hash.create();
152
+ if (typeof this.iHash.update !== "function")
153
+ throw new Error("Expected instance of class which extends utils.Hash");
154
+ this.blockLen = this.iHash.blockLen;
155
+ this.outputLen = this.iHash.outputLen;
156
+ const blockLen = this.blockLen;
157
+ const pad = new Uint8Array(blockLen);
158
+ pad.set(key.length > blockLen ? hash.create().update(key).digest() : key);
159
+ for (let i = 0; i < pad.length; i++)
160
+ pad[i] ^= 54;
161
+ this.iHash.update(pad);
162
+ this.oHash = hash.create();
163
+ for (let i = 0; i < pad.length; i++)
164
+ pad[i] ^= 54 ^ 92;
165
+ this.oHash.update(pad);
166
+ clean(pad);
167
+ }
168
+ update(buf) {
169
+ aexists(this);
170
+ this.iHash.update(buf);
171
+ return this;
172
+ }
173
+ digestInto(out) {
174
+ aexists(this);
175
+ abytes(out, this.outputLen, "output");
176
+ this.finished = true;
177
+ this.iHash.digestInto(out);
178
+ this.oHash.update(out);
179
+ this.oHash.digestInto(out);
180
+ this.destroy();
181
+ }
182
+ digest() {
183
+ const out = new Uint8Array(this.oHash.outputLen);
184
+ this.digestInto(out);
185
+ return out;
186
+ }
187
+ _cloneInto(to) {
188
+ to ||= Object.create(Object.getPrototypeOf(this), {});
189
+ const { oHash, iHash, finished, destroyed, blockLen, outputLen } = this;
190
+ to = to;
191
+ to.finished = finished;
192
+ to.destroyed = destroyed;
193
+ to.blockLen = blockLen;
194
+ to.outputLen = outputLen;
195
+ to.oHash = oHash._cloneInto(to.oHash);
196
+ to.iHash = iHash._cloneInto(to.iHash);
197
+ return to;
198
+ }
199
+ clone() {
200
+ return this._cloneInto();
201
+ }
202
+ destroy() {
203
+ this.destroyed = true;
204
+ this.oHash.destroy();
205
+ this.iHash.destroy();
206
+ }
207
+ };
208
+ var hmac = (hash, key, message) => new _HMAC(hash, key).update(message).digest();
209
+ hmac.create = (hash, key) => new _HMAC(hash, key);
210
+
211
+ // node_modules/@noble/hashes/hkdf.js
212
+ function extract(hash, ikm, salt) {
213
+ ahash(hash);
214
+ if (salt === void 0)
215
+ salt = new Uint8Array(hash.outputLen);
216
+ return hmac(hash, salt, ikm);
217
+ }
218
+ var HKDF_COUNTER = /* @__PURE__ */ Uint8Array.of(0);
219
+ var EMPTY_BUFFER = /* @__PURE__ */ Uint8Array.of();
220
+ function expand(hash, prk, info, length = 32) {
221
+ ahash(hash);
222
+ anumber(length, "length");
223
+ const olen = hash.outputLen;
224
+ if (length > 255 * olen)
225
+ throw new Error("Length must be <= 255*HashLen");
226
+ const blocks = Math.ceil(length / olen);
227
+ if (info === void 0)
228
+ info = EMPTY_BUFFER;
229
+ else
230
+ abytes(info, void 0, "info");
231
+ const okm = new Uint8Array(blocks * olen);
232
+ const HMAC = hmac.create(hash, prk);
233
+ const HMACTmp = HMAC._cloneInto();
234
+ const T = new Uint8Array(HMAC.outputLen);
235
+ for (let counter = 0; counter < blocks; counter++) {
236
+ HKDF_COUNTER[0] = counter + 1;
237
+ HMACTmp.update(counter === 0 ? EMPTY_BUFFER : T).update(info).update(HKDF_COUNTER).digestInto(T);
238
+ okm.set(T, olen * counter);
239
+ HMAC._cloneInto(HMACTmp);
240
+ }
241
+ HMAC.destroy();
242
+ HMACTmp.destroy();
243
+ clean(T, HKDF_COUNTER);
244
+ return okm.slice(0, length);
245
+ }
246
+ var hkdf = (hash, ikm, salt, info, length) => expand(hash, extract(hash, ikm, salt), info, length);
247
+
248
+ // node_modules/@noble/hashes/_md.js
249
+ function Chi(a, b, c) {
250
+ return a & b ^ ~a & c;
251
+ }
252
+ function Maj(a, b, c) {
253
+ return a & b ^ a & c ^ b & c;
254
+ }
255
+ var HashMD = class {
256
+ blockLen;
257
+ outputLen;
258
+ padOffset;
259
+ isLE;
260
+ // For partial updates less than block size
261
+ buffer;
262
+ view;
263
+ finished = false;
264
+ length = 0;
265
+ pos = 0;
266
+ destroyed = false;
267
+ constructor(blockLen, outputLen, padOffset, isLE) {
268
+ this.blockLen = blockLen;
269
+ this.outputLen = outputLen;
270
+ this.padOffset = padOffset;
271
+ this.isLE = isLE;
272
+ this.buffer = new Uint8Array(blockLen);
273
+ this.view = createView(this.buffer);
274
+ }
275
+ update(data) {
276
+ aexists(this);
277
+ abytes(data);
278
+ const { view, buffer, blockLen } = this;
279
+ const len = data.length;
280
+ for (let pos = 0; pos < len; ) {
281
+ const take = Math.min(blockLen - this.pos, len - pos);
282
+ if (take === blockLen) {
283
+ const dataView = createView(data);
284
+ for (; blockLen <= len - pos; pos += blockLen)
285
+ this.process(dataView, pos);
286
+ continue;
287
+ }
288
+ buffer.set(data.subarray(pos, pos + take), this.pos);
289
+ this.pos += take;
290
+ pos += take;
291
+ if (this.pos === blockLen) {
292
+ this.process(view, 0);
293
+ this.pos = 0;
294
+ }
295
+ }
296
+ this.length += data.length;
297
+ this.roundClean();
298
+ return this;
299
+ }
300
+ digestInto(out) {
301
+ aexists(this);
302
+ aoutput(out, this);
303
+ this.finished = true;
304
+ const { buffer, view, blockLen, isLE } = this;
305
+ let { pos } = this;
306
+ buffer[pos++] = 128;
307
+ clean(this.buffer.subarray(pos));
308
+ if (this.padOffset > blockLen - pos) {
309
+ this.process(view, 0);
310
+ pos = 0;
311
+ }
312
+ for (let i = pos; i < blockLen; i++)
313
+ buffer[i] = 0;
314
+ view.setBigUint64(blockLen - 8, BigInt(this.length * 8), isLE);
315
+ this.process(view, 0);
316
+ const oview = createView(out);
317
+ const len = this.outputLen;
318
+ if (len % 4)
319
+ throw new Error("_sha2: outputLen must be aligned to 32bit");
320
+ const outLen = len / 4;
321
+ const state = this.get();
322
+ if (outLen > state.length)
323
+ throw new Error("_sha2: outputLen bigger than state");
324
+ for (let i = 0; i < outLen; i++)
325
+ oview.setUint32(4 * i, state[i], isLE);
326
+ }
327
+ digest() {
328
+ const { buffer, outputLen } = this;
329
+ this.digestInto(buffer);
330
+ const res = buffer.slice(0, outputLen);
331
+ this.destroy();
332
+ return res;
333
+ }
334
+ _cloneInto(to) {
335
+ to ||= new this.constructor();
336
+ to.set(...this.get());
337
+ const { blockLen, buffer, length, finished, destroyed, pos } = this;
338
+ to.destroyed = destroyed;
339
+ to.finished = finished;
340
+ to.length = length;
341
+ to.pos = pos;
342
+ if (length % blockLen)
343
+ to.buffer.set(buffer);
344
+ return to;
345
+ }
346
+ clone() {
347
+ return this._cloneInto();
348
+ }
349
+ };
350
+ var SHA256_IV = /* @__PURE__ */ Uint32Array.from([
351
+ 1779033703,
352
+ 3144134277,
353
+ 1013904242,
354
+ 2773480762,
355
+ 1359893119,
356
+ 2600822924,
357
+ 528734635,
358
+ 1541459225
359
+ ]);
360
+ var SHA512_IV = /* @__PURE__ */ Uint32Array.from([
361
+ 1779033703,
362
+ 4089235720,
363
+ 3144134277,
364
+ 2227873595,
365
+ 1013904242,
366
+ 4271175723,
367
+ 2773480762,
368
+ 1595750129,
369
+ 1359893119,
370
+ 2917565137,
371
+ 2600822924,
372
+ 725511199,
373
+ 528734635,
374
+ 4215389547,
375
+ 1541459225,
376
+ 327033209
377
+ ]);
378
+
379
+ // node_modules/@noble/hashes/_u64.js
380
+ var U32_MASK64 = /* @__PURE__ */ BigInt(2 ** 32 - 1);
381
+ var _32n = /* @__PURE__ */ BigInt(32);
382
+ function fromBig(n, le = false) {
383
+ if (le)
384
+ return { h: Number(n & U32_MASK64), l: Number(n >> _32n & U32_MASK64) };
385
+ return { h: Number(n >> _32n & U32_MASK64) | 0, l: Number(n & U32_MASK64) | 0 };
386
+ }
387
+ function split(lst, le = false) {
388
+ const len = lst.length;
389
+ let Ah = new Uint32Array(len);
390
+ let Al = new Uint32Array(len);
391
+ for (let i = 0; i < len; i++) {
392
+ const { h, l } = fromBig(lst[i], le);
393
+ [Ah[i], Al[i]] = [h, l];
394
+ }
395
+ return [Ah, Al];
396
+ }
397
+ var shrSH = (h, _l, s) => h >>> s;
398
+ var shrSL = (h, l, s) => h << 32 - s | l >>> s;
399
+ var rotrSH = (h, l, s) => h >>> s | l << 32 - s;
400
+ var rotrSL = (h, l, s) => h << 32 - s | l >>> s;
401
+ var rotrBH = (h, l, s) => h << 64 - s | l >>> s - 32;
402
+ var rotrBL = (h, l, s) => h >>> s - 32 | l << 64 - s;
403
+ function add(Ah, Al, Bh, Bl) {
404
+ const l = (Al >>> 0) + (Bl >>> 0);
405
+ return { h: Ah + Bh + (l / 2 ** 32 | 0) | 0, l: l | 0 };
406
+ }
407
+ var add3L = (Al, Bl, Cl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0);
408
+ var add3H = (low, Ah, Bh, Ch) => Ah + Bh + Ch + (low / 2 ** 32 | 0) | 0;
409
+ var add4L = (Al, Bl, Cl, Dl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0);
410
+ var add4H = (low, Ah, Bh, Ch, Dh) => Ah + Bh + Ch + Dh + (low / 2 ** 32 | 0) | 0;
411
+ var add5L = (Al, Bl, Cl, Dl, El) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0);
412
+ var add5H = (low, Ah, Bh, Ch, Dh, Eh) => Ah + Bh + Ch + Dh + Eh + (low / 2 ** 32 | 0) | 0;
413
+
414
+ // node_modules/@noble/hashes/sha2.js
415
+ var SHA256_K = /* @__PURE__ */ Uint32Array.from([
416
+ 1116352408,
417
+ 1899447441,
418
+ 3049323471,
419
+ 3921009573,
420
+ 961987163,
421
+ 1508970993,
422
+ 2453635748,
423
+ 2870763221,
424
+ 3624381080,
425
+ 310598401,
426
+ 607225278,
427
+ 1426881987,
428
+ 1925078388,
429
+ 2162078206,
430
+ 2614888103,
431
+ 3248222580,
432
+ 3835390401,
433
+ 4022224774,
434
+ 264347078,
435
+ 604807628,
436
+ 770255983,
437
+ 1249150122,
438
+ 1555081692,
439
+ 1996064986,
440
+ 2554220882,
441
+ 2821834349,
442
+ 2952996808,
443
+ 3210313671,
444
+ 3336571891,
445
+ 3584528711,
446
+ 113926993,
447
+ 338241895,
448
+ 666307205,
449
+ 773529912,
450
+ 1294757372,
451
+ 1396182291,
452
+ 1695183700,
453
+ 1986661051,
454
+ 2177026350,
455
+ 2456956037,
456
+ 2730485921,
457
+ 2820302411,
458
+ 3259730800,
459
+ 3345764771,
460
+ 3516065817,
461
+ 3600352804,
462
+ 4094571909,
463
+ 275423344,
464
+ 430227734,
465
+ 506948616,
466
+ 659060556,
467
+ 883997877,
468
+ 958139571,
469
+ 1322822218,
470
+ 1537002063,
471
+ 1747873779,
472
+ 1955562222,
473
+ 2024104815,
474
+ 2227730452,
475
+ 2361852424,
476
+ 2428436474,
477
+ 2756734187,
478
+ 3204031479,
479
+ 3329325298
480
+ ]);
481
+ var SHA256_W = /* @__PURE__ */ new Uint32Array(64);
482
+ var SHA2_32B = class extends HashMD {
483
+ constructor(outputLen) {
484
+ super(64, outputLen, 8, false);
485
+ }
486
+ get() {
487
+ const { A, B, C, D, E, F, G, H } = this;
488
+ return [A, B, C, D, E, F, G, H];
489
+ }
490
+ // prettier-ignore
491
+ set(A, B, C, D, E, F, G, H) {
492
+ this.A = A | 0;
493
+ this.B = B | 0;
494
+ this.C = C | 0;
495
+ this.D = D | 0;
496
+ this.E = E | 0;
497
+ this.F = F | 0;
498
+ this.G = G | 0;
499
+ this.H = H | 0;
500
+ }
501
+ process(view, offset) {
502
+ for (let i = 0; i < 16; i++, offset += 4)
503
+ SHA256_W[i] = view.getUint32(offset, false);
504
+ for (let i = 16; i < 64; i++) {
505
+ const W15 = SHA256_W[i - 15];
506
+ const W2 = SHA256_W[i - 2];
507
+ const s0 = rotr(W15, 7) ^ rotr(W15, 18) ^ W15 >>> 3;
508
+ const s1 = rotr(W2, 17) ^ rotr(W2, 19) ^ W2 >>> 10;
509
+ SHA256_W[i] = s1 + SHA256_W[i - 7] + s0 + SHA256_W[i - 16] | 0;
510
+ }
511
+ let { A, B, C, D, E, F, G, H } = this;
512
+ for (let i = 0; i < 64; i++) {
513
+ const sigma1 = rotr(E, 6) ^ rotr(E, 11) ^ rotr(E, 25);
514
+ const T1 = H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i] | 0;
515
+ const sigma0 = rotr(A, 2) ^ rotr(A, 13) ^ rotr(A, 22);
516
+ const T2 = sigma0 + Maj(A, B, C) | 0;
517
+ H = G;
518
+ G = F;
519
+ F = E;
520
+ E = D + T1 | 0;
521
+ D = C;
522
+ C = B;
523
+ B = A;
524
+ A = T1 + T2 | 0;
525
+ }
526
+ A = A + this.A | 0;
527
+ B = B + this.B | 0;
528
+ C = C + this.C | 0;
529
+ D = D + this.D | 0;
530
+ E = E + this.E | 0;
531
+ F = F + this.F | 0;
532
+ G = G + this.G | 0;
533
+ H = H + this.H | 0;
534
+ this.set(A, B, C, D, E, F, G, H);
535
+ }
536
+ roundClean() {
537
+ clean(SHA256_W);
538
+ }
539
+ destroy() {
540
+ this.set(0, 0, 0, 0, 0, 0, 0, 0);
541
+ clean(this.buffer);
542
+ }
543
+ };
544
+ var _SHA256 = class extends SHA2_32B {
545
+ // We cannot use array here since array allows indexing by variable
546
+ // which means optimizer/compiler cannot use registers.
547
+ A = SHA256_IV[0] | 0;
548
+ B = SHA256_IV[1] | 0;
549
+ C = SHA256_IV[2] | 0;
550
+ D = SHA256_IV[3] | 0;
551
+ E = SHA256_IV[4] | 0;
552
+ F = SHA256_IV[5] | 0;
553
+ G = SHA256_IV[6] | 0;
554
+ H = SHA256_IV[7] | 0;
555
+ constructor() {
556
+ super(32);
557
+ }
558
+ };
559
+ var K512 = /* @__PURE__ */ (() => split([
560
+ "0x428a2f98d728ae22",
561
+ "0x7137449123ef65cd",
562
+ "0xb5c0fbcfec4d3b2f",
563
+ "0xe9b5dba58189dbbc",
564
+ "0x3956c25bf348b538",
565
+ "0x59f111f1b605d019",
566
+ "0x923f82a4af194f9b",
567
+ "0xab1c5ed5da6d8118",
568
+ "0xd807aa98a3030242",
569
+ "0x12835b0145706fbe",
570
+ "0x243185be4ee4b28c",
571
+ "0x550c7dc3d5ffb4e2",
572
+ "0x72be5d74f27b896f",
573
+ "0x80deb1fe3b1696b1",
574
+ "0x9bdc06a725c71235",
575
+ "0xc19bf174cf692694",
576
+ "0xe49b69c19ef14ad2",
577
+ "0xefbe4786384f25e3",
578
+ "0x0fc19dc68b8cd5b5",
579
+ "0x240ca1cc77ac9c65",
580
+ "0x2de92c6f592b0275",
581
+ "0x4a7484aa6ea6e483",
582
+ "0x5cb0a9dcbd41fbd4",
583
+ "0x76f988da831153b5",
584
+ "0x983e5152ee66dfab",
585
+ "0xa831c66d2db43210",
586
+ "0xb00327c898fb213f",
587
+ "0xbf597fc7beef0ee4",
588
+ "0xc6e00bf33da88fc2",
589
+ "0xd5a79147930aa725",
590
+ "0x06ca6351e003826f",
591
+ "0x142929670a0e6e70",
592
+ "0x27b70a8546d22ffc",
593
+ "0x2e1b21385c26c926",
594
+ "0x4d2c6dfc5ac42aed",
595
+ "0x53380d139d95b3df",
596
+ "0x650a73548baf63de",
597
+ "0x766a0abb3c77b2a8",
598
+ "0x81c2c92e47edaee6",
599
+ "0x92722c851482353b",
600
+ "0xa2bfe8a14cf10364",
601
+ "0xa81a664bbc423001",
602
+ "0xc24b8b70d0f89791",
603
+ "0xc76c51a30654be30",
604
+ "0xd192e819d6ef5218",
605
+ "0xd69906245565a910",
606
+ "0xf40e35855771202a",
607
+ "0x106aa07032bbd1b8",
608
+ "0x19a4c116b8d2d0c8",
609
+ "0x1e376c085141ab53",
610
+ "0x2748774cdf8eeb99",
611
+ "0x34b0bcb5e19b48a8",
612
+ "0x391c0cb3c5c95a63",
613
+ "0x4ed8aa4ae3418acb",
614
+ "0x5b9cca4f7763e373",
615
+ "0x682e6ff3d6b2b8a3",
616
+ "0x748f82ee5defb2fc",
617
+ "0x78a5636f43172f60",
618
+ "0x84c87814a1f0ab72",
619
+ "0x8cc702081a6439ec",
620
+ "0x90befffa23631e28",
621
+ "0xa4506cebde82bde9",
622
+ "0xbef9a3f7b2c67915",
623
+ "0xc67178f2e372532b",
624
+ "0xca273eceea26619c",
625
+ "0xd186b8c721c0c207",
626
+ "0xeada7dd6cde0eb1e",
627
+ "0xf57d4f7fee6ed178",
628
+ "0x06f067aa72176fba",
629
+ "0x0a637dc5a2c898a6",
630
+ "0x113f9804bef90dae",
631
+ "0x1b710b35131c471b",
632
+ "0x28db77f523047d84",
633
+ "0x32caab7b40c72493",
634
+ "0x3c9ebe0a15c9bebc",
635
+ "0x431d67c49c100d4c",
636
+ "0x4cc5d4becb3e42b6",
637
+ "0x597f299cfc657e2a",
638
+ "0x5fcb6fab3ad6faec",
639
+ "0x6c44198c4a475817"
640
+ ].map((n) => BigInt(n))))();
641
+ var SHA512_Kh = /* @__PURE__ */ (() => K512[0])();
642
+ var SHA512_Kl = /* @__PURE__ */ (() => K512[1])();
643
+ var SHA512_W_H = /* @__PURE__ */ new Uint32Array(80);
644
+ var SHA512_W_L = /* @__PURE__ */ new Uint32Array(80);
645
+ var SHA2_64B = class extends HashMD {
646
+ constructor(outputLen) {
647
+ super(128, outputLen, 16, false);
648
+ }
649
+ // prettier-ignore
650
+ get() {
651
+ const { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;
652
+ return [Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl];
653
+ }
654
+ // prettier-ignore
655
+ set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl) {
656
+ this.Ah = Ah | 0;
657
+ this.Al = Al | 0;
658
+ this.Bh = Bh | 0;
659
+ this.Bl = Bl | 0;
660
+ this.Ch = Ch | 0;
661
+ this.Cl = Cl | 0;
662
+ this.Dh = Dh | 0;
663
+ this.Dl = Dl | 0;
664
+ this.Eh = Eh | 0;
665
+ this.El = El | 0;
666
+ this.Fh = Fh | 0;
667
+ this.Fl = Fl | 0;
668
+ this.Gh = Gh | 0;
669
+ this.Gl = Gl | 0;
670
+ this.Hh = Hh | 0;
671
+ this.Hl = Hl | 0;
672
+ }
673
+ process(view, offset) {
674
+ for (let i = 0; i < 16; i++, offset += 4) {
675
+ SHA512_W_H[i] = view.getUint32(offset);
676
+ SHA512_W_L[i] = view.getUint32(offset += 4);
677
+ }
678
+ for (let i = 16; i < 80; i++) {
679
+ const W15h = SHA512_W_H[i - 15] | 0;
680
+ const W15l = SHA512_W_L[i - 15] | 0;
681
+ const s0h = rotrSH(W15h, W15l, 1) ^ rotrSH(W15h, W15l, 8) ^ shrSH(W15h, W15l, 7);
682
+ const s0l = rotrSL(W15h, W15l, 1) ^ rotrSL(W15h, W15l, 8) ^ shrSL(W15h, W15l, 7);
683
+ const W2h = SHA512_W_H[i - 2] | 0;
684
+ const W2l = SHA512_W_L[i - 2] | 0;
685
+ const s1h = rotrSH(W2h, W2l, 19) ^ rotrBH(W2h, W2l, 61) ^ shrSH(W2h, W2l, 6);
686
+ const s1l = rotrSL(W2h, W2l, 19) ^ rotrBL(W2h, W2l, 61) ^ shrSL(W2h, W2l, 6);
687
+ const SUMl = add4L(s0l, s1l, SHA512_W_L[i - 7], SHA512_W_L[i - 16]);
688
+ const SUMh = add4H(SUMl, s0h, s1h, SHA512_W_H[i - 7], SHA512_W_H[i - 16]);
689
+ SHA512_W_H[i] = SUMh | 0;
690
+ SHA512_W_L[i] = SUMl | 0;
691
+ }
692
+ let { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;
693
+ for (let i = 0; i < 80; i++) {
694
+ const sigma1h = rotrSH(Eh, El, 14) ^ rotrSH(Eh, El, 18) ^ rotrBH(Eh, El, 41);
695
+ const sigma1l = rotrSL(Eh, El, 14) ^ rotrSL(Eh, El, 18) ^ rotrBL(Eh, El, 41);
696
+ const CHIh = Eh & Fh ^ ~Eh & Gh;
697
+ const CHIl = El & Fl ^ ~El & Gl;
698
+ const T1ll = add5L(Hl, sigma1l, CHIl, SHA512_Kl[i], SHA512_W_L[i]);
699
+ const T1h = add5H(T1ll, Hh, sigma1h, CHIh, SHA512_Kh[i], SHA512_W_H[i]);
700
+ const T1l = T1ll | 0;
701
+ const sigma0h = rotrSH(Ah, Al, 28) ^ rotrBH(Ah, Al, 34) ^ rotrBH(Ah, Al, 39);
702
+ const sigma0l = rotrSL(Ah, Al, 28) ^ rotrBL(Ah, Al, 34) ^ rotrBL(Ah, Al, 39);
703
+ const MAJh = Ah & Bh ^ Ah & Ch ^ Bh & Ch;
704
+ const MAJl = Al & Bl ^ Al & Cl ^ Bl & Cl;
705
+ Hh = Gh | 0;
706
+ Hl = Gl | 0;
707
+ Gh = Fh | 0;
708
+ Gl = Fl | 0;
709
+ Fh = Eh | 0;
710
+ Fl = El | 0;
711
+ ({ h: Eh, l: El } = add(Dh | 0, Dl | 0, T1h | 0, T1l | 0));
712
+ Dh = Ch | 0;
713
+ Dl = Cl | 0;
714
+ Ch = Bh | 0;
715
+ Cl = Bl | 0;
716
+ Bh = Ah | 0;
717
+ Bl = Al | 0;
718
+ const All = add3L(T1l, sigma0l, MAJl);
719
+ Ah = add3H(All, T1h, sigma0h, MAJh);
720
+ Al = All | 0;
721
+ }
722
+ ({ h: Ah, l: Al } = add(this.Ah | 0, this.Al | 0, Ah | 0, Al | 0));
723
+ ({ h: Bh, l: Bl } = add(this.Bh | 0, this.Bl | 0, Bh | 0, Bl | 0));
724
+ ({ h: Ch, l: Cl } = add(this.Ch | 0, this.Cl | 0, Ch | 0, Cl | 0));
725
+ ({ h: Dh, l: Dl } = add(this.Dh | 0, this.Dl | 0, Dh | 0, Dl | 0));
726
+ ({ h: Eh, l: El } = add(this.Eh | 0, this.El | 0, Eh | 0, El | 0));
727
+ ({ h: Fh, l: Fl } = add(this.Fh | 0, this.Fl | 0, Fh | 0, Fl | 0));
728
+ ({ h: Gh, l: Gl } = add(this.Gh | 0, this.Gl | 0, Gh | 0, Gl | 0));
729
+ ({ h: Hh, l: Hl } = add(this.Hh | 0, this.Hl | 0, Hh | 0, Hl | 0));
730
+ this.set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl);
731
+ }
732
+ roundClean() {
733
+ clean(SHA512_W_H, SHA512_W_L);
734
+ }
735
+ destroy() {
736
+ clean(this.buffer);
737
+ this.set(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
738
+ }
739
+ };
740
+ var _SHA512 = class extends SHA2_64B {
741
+ Ah = SHA512_IV[0] | 0;
742
+ Al = SHA512_IV[1] | 0;
743
+ Bh = SHA512_IV[2] | 0;
744
+ Bl = SHA512_IV[3] | 0;
745
+ Ch = SHA512_IV[4] | 0;
746
+ Cl = SHA512_IV[5] | 0;
747
+ Dh = SHA512_IV[6] | 0;
748
+ Dl = SHA512_IV[7] | 0;
749
+ Eh = SHA512_IV[8] | 0;
750
+ El = SHA512_IV[9] | 0;
751
+ Fh = SHA512_IV[10] | 0;
752
+ Fl = SHA512_IV[11] | 0;
753
+ Gh = SHA512_IV[12] | 0;
754
+ Gl = SHA512_IV[13] | 0;
755
+ Hh = SHA512_IV[14] | 0;
756
+ Hl = SHA512_IV[15] | 0;
757
+ constructor() {
758
+ super(64);
759
+ }
760
+ };
761
+ var sha256 = /* @__PURE__ */ createHasher(
762
+ () => new _SHA256(),
763
+ /* @__PURE__ */ oidNist(1)
764
+ );
765
+ var sha512 = /* @__PURE__ */ createHasher(
766
+ () => new _SHA512(),
767
+ /* @__PURE__ */ oidNist(3)
768
+ );
769
+
770
+ // binary-writer-reader.mjs
771
+ var BinaryWriter = class {
772
+ cursor = 0;
773
+ view;
774
+ constructor(size) {
775
+ this.view = new Uint8Array(size);
776
+ }
777
+ writeByte(b) {
778
+ this.view[this.cursor++] = b;
779
+ }
780
+ writeU16BE(v) {
781
+ this.view[this.cursor++] = v >> 8 & 255;
782
+ this.view[this.cursor++] = v & 255;
783
+ }
784
+ writeBytes(buf) {
785
+ this.view.set(buf, this.cursor);
786
+ this.cursor += buf.length;
787
+ }
788
+ getBytes() {
789
+ return this.view;
790
+ }
791
+ };
792
+ var BinaryReader = class {
793
+ cursor = 0;
794
+ view;
795
+ constructor(buf) {
796
+ this.view = new Uint8Array(buf);
797
+ }
798
+ readByte() {
799
+ return this.view[this.cursor++];
800
+ }
801
+ readU16BE() {
802
+ return this.view[this.cursor++] << 8 | this.view[this.cursor++];
803
+ }
804
+ read(n) {
805
+ const s = this.cursor;
806
+ this.cursor += n;
807
+ return this.view.slice(s, this.cursor);
808
+ }
809
+ };
810
+
811
+ // node_modules/@pinkparrot/qsafe-mayo-wasm/dist/mayo.browser.min.js
812
+ var __create = Object.create;
813
+ var __defProp = Object.defineProperty;
814
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
815
+ var __getOwnPropNames = Object.getOwnPropertyNames;
816
+ var __getProtoOf = Object.getPrototypeOf;
817
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
818
+ var __require2 = /* @__PURE__ */ ((x) => typeof __require !== "undefined" ? __require : typeof Proxy !== "undefined" ? new Proxy(x, {
819
+ get: (a, b) => (typeof __require !== "undefined" ? __require : a)[b]
820
+ }) : x)(function(x) {
821
+ if (typeof __require !== "undefined") return __require.apply(this, arguments);
822
+ throw Error('Dynamic require of "' + x + '" is not supported');
823
+ });
824
+ var __commonJS = (cb, mod2) => function __require22() {
825
+ return mod2 || (0, cb[__getOwnPropNames(cb)[0]])((mod2 = { exports: {} }).exports, mod2), mod2.exports;
826
+ };
827
+ var __copyProps = (to, from, except, desc) => {
828
+ if (from && typeof from === "object" || typeof from === "function") {
829
+ for (let key of __getOwnPropNames(from))
830
+ if (!__hasOwnProp.call(to, key) && key !== except)
831
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
832
+ }
833
+ return to;
834
+ };
835
+ var __toESM = (mod2, isNodeMode, target) => (target = mod2 != null ? __create(__getProtoOf(mod2)) : {}, __copyProps(
836
+ // If the importer is in node compatibility mode or this is not an ESM
837
+ // file that has been converted to a CommonJS file using a Babel-
838
+ // compatible transform (i.e. "__esModule" has not been set), then set
839
+ // "default" to the CommonJS "module.exports" for node compatibility.
840
+ isNodeMode || !mod2 || !mod2.__esModule ? __defProp(target, "default", { value: mod2, enumerable: true }) : target,
841
+ mod2
842
+ ));
843
+ var require_mayo1 = __commonJS({
844
+ "dist/mayo1.cjs"(exports, module) {
845
+ var Mayo1Module2 = (() => {
846
+ var _scriptName = globalThis.document?.currentScript?.src;
847
+ return async function(moduleArg = {}) {
848
+ var moduleRtn;
849
+ var Module = moduleArg;
850
+ var ENVIRONMENT_IS_WEB = !!globalThis.window;
851
+ var ENVIRONMENT_IS_WORKER = !!globalThis.WorkerGlobalScope;
852
+ var ENVIRONMENT_IS_NODE = globalThis.process?.versions?.node && globalThis.process?.type != "renderer";
853
+ var arguments_ = [];
854
+ var thisProgram = "./this.program";
855
+ var quit_ = (status, toThrow) => {
856
+ throw toThrow;
857
+ };
858
+ if (typeof __filename != "undefined") {
859
+ _scriptName = __filename;
860
+ } else if (ENVIRONMENT_IS_WORKER) {
861
+ _scriptName = self.location.href;
862
+ }
863
+ var scriptDirectory = "";
864
+ var readAsync, readBinary;
865
+ if (ENVIRONMENT_IS_NODE) {
866
+ var fs = __require2("node:fs");
867
+ scriptDirectory = __dirname + "/";
868
+ readBinary = (filename) => {
869
+ filename = isFileURI(filename) ? new URL(filename) : filename;
870
+ var ret = fs.readFileSync(filename);
871
+ return ret;
872
+ };
873
+ readAsync = async (filename, binary = true) => {
874
+ filename = isFileURI(filename) ? new URL(filename) : filename;
875
+ var ret = fs.readFileSync(filename, binary ? void 0 : "utf8");
876
+ return ret;
877
+ };
878
+ if (process.argv.length > 1) {
879
+ thisProgram = process.argv[1].replace(/\\/g, "/");
880
+ }
881
+ arguments_ = process.argv.slice(2);
882
+ quit_ = (status, toThrow) => {
883
+ process.exitCode = status;
884
+ throw toThrow;
885
+ };
886
+ } else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {
887
+ try {
888
+ scriptDirectory = new URL(".", _scriptName).href;
889
+ } catch {
890
+ }
891
+ {
892
+ if (ENVIRONMENT_IS_WORKER) {
893
+ readBinary = (url) => {
894
+ var xhr = new XMLHttpRequest();
895
+ xhr.open("GET", url, false);
896
+ xhr.responseType = "arraybuffer";
897
+ xhr.send(null);
898
+ return new Uint8Array(xhr.response);
899
+ };
900
+ }
901
+ readAsync = async (url) => {
902
+ if (isFileURI(url)) {
903
+ return new Promise((resolve, reject) => {
904
+ var xhr = new XMLHttpRequest();
905
+ xhr.open("GET", url, true);
906
+ xhr.responseType = "arraybuffer";
907
+ xhr.onload = () => {
908
+ if (xhr.status == 200 || xhr.status == 0 && xhr.response) {
909
+ resolve(xhr.response);
910
+ return;
911
+ }
912
+ reject(xhr.status);
913
+ };
914
+ xhr.onerror = reject;
915
+ xhr.send(null);
916
+ });
917
+ }
918
+ var response = await fetch(url, { credentials: "same-origin" });
919
+ if (response.ok) {
920
+ return response.arrayBuffer();
921
+ }
922
+ throw new Error(response.status + " : " + response.url);
923
+ };
924
+ }
925
+ } else {
926
+ }
927
+ var out = console.log.bind(console);
928
+ var err = console.error.bind(console);
929
+ var wasmBinary;
930
+ var ABORT = false;
931
+ var EXITSTATUS;
932
+ var isFileURI = (filename) => filename.startsWith("file://");
933
+ function binaryDecode(bin) {
934
+ for (var i = 0, l = bin.length, o = new Uint8Array(l), c; i < l; ++i) {
935
+ c = bin.charCodeAt(i);
936
+ o[i] = ~c >> 8 & c;
937
+ }
938
+ return o;
939
+ }
940
+ var readyPromiseResolve, readyPromiseReject;
941
+ var runtimeInitialized = false;
942
+ function updateMemoryViews() {
943
+ var b = wasmMemory.buffer;
944
+ HEAP8 = new Int8Array(b);
945
+ HEAP16 = new Int16Array(b);
946
+ Module["HEAPU8"] = HEAPU8 = new Uint8Array(b);
947
+ HEAPU16 = new Uint16Array(b);
948
+ HEAP32 = new Int32Array(b);
949
+ HEAPU32 = new Uint32Array(b);
950
+ HEAPF32 = new Float32Array(b);
951
+ HEAPF64 = new Float64Array(b);
952
+ HEAP64 = new BigInt64Array(b);
953
+ HEAPU64 = new BigUint64Array(b);
954
+ }
955
+ function preRun() {
956
+ if (Module["preRun"]) {
957
+ if (typeof Module["preRun"] == "function") Module["preRun"] = [Module["preRun"]];
958
+ while (Module["preRun"].length) {
959
+ addOnPreRun(Module["preRun"].shift());
960
+ }
961
+ }
962
+ callRuntimeCallbacks(onPreRuns);
963
+ }
964
+ function initRuntime() {
965
+ runtimeInitialized = true;
966
+ wasmExports["i"]();
967
+ }
968
+ function postRun() {
969
+ if (Module["postRun"]) {
970
+ if (typeof Module["postRun"] == "function") Module["postRun"] = [Module["postRun"]];
971
+ while (Module["postRun"].length) {
972
+ addOnPostRun(Module["postRun"].shift());
973
+ }
974
+ }
975
+ callRuntimeCallbacks(onPostRuns);
976
+ }
977
+ function abort(what) {
978
+ Module["onAbort"]?.(what);
979
+ what = "Aborted(" + what + ")";
980
+ err(what);
981
+ ABORT = true;
982
+ what += ". Build with -sASSERTIONS for more info.";
983
+ var e = new WebAssembly.RuntimeError(what);
984
+ readyPromiseReject?.(e);
985
+ throw e;
986
+ }
987
+ var wasmBinaryFile;
988
+ function findWasmBinary() {
989
+ return binaryDecode('\0asm\0\0\05\n`\x7F\x7F\x7F\x7F`\x7F\0`\x7F\x7F`\0\x7F`\0\0`\x7F\x7F\0`\x7F\x7F\x7F\0`\x7F|\x7F`\x7F\x7F\x7F\x7F\0`\x7F|\0+\x07aa\0ab\0ac\0ad\0ae\0\x07af\0ag\0\0\b\0 \0p\x80\x80 \x7FA\xC0\x92\x80\v\x079h\0i\0j\0k\0\bl\0m\0n\0o\0p\0\x1Bq\0r\0s\0t\0\vu\0 \0A\v\f\n\xC1\xF1\xE0 \x07\x7F{#\0A\xD0k"$\0@A\xC8\b"E\r\0 Ak-\0\0AqE\r\0 A\0A\xC8\v "@ A\x88O@@  \xFD\0\0 \xFD\0\0\0\xFDQ\xFD\v\0  \xFD\0 \xFD\0\0\xFDQ\xFD\v  \xFD\0 \xFD\0\0 \xFDQ\xFD\v  \xFD\00 \xFD\0\x000\xFDQ\xFD\v0  \xFD\0@ \xFD\0\0@\xFDQ\xFD\v@  \xFD\0P \xFD\0\0P\xFDQ\xFD\vP  \xFD\0` \xFD\0\0`\xFDQ\xFD\v`  \xFD\0p \xFD\0\0p\xFDQ\xFD\vp  )\x80 )\0\x80\x857\x80 \r A\x88j! A\x88k"A\x87K\r\0\v\v A\x88n!\b A\0A\x88\xFC\v\0@ E\r\0@ AI\r\0  kAI\r\0  \xFD\0\0\0\xFD\v\0@ A\xF0q"\x07AF\r\0  \xFD\0\0\xFD\v \x07A F\r\0  \xFD\0\0 \xFD\v \x07A0F\r\0  \xFD\0\x000\xFD\v0 \x07A\xC0\0F\r\0  \xFD\0\0@\xFD\v@ \x07A\xD0\0F\r\0  \xFD\0\0P\xFD\vP \x07A\xE0\0F\r\0  \xFD\0\0`\xFD\v` \x07A\xF0\0F\r\0  \xFD\0\0p\xFD\vp\v  \x07F\r\v \x07! Aq" @@  j  j-\0\0:\0\0 Aj! \nAj"\n G\r\0\v\v \x07 kA|K\r\0@  j  j-\0\0:\0\0  Aj"\x07j  \x07j-\0\0:\0\0  Aj"\x07j  \x07j-\0\0:\0\0  Aj"\x07j  \x07j-\0\0:\0\0 Aj" G\r\0\v\v  jA:\0\0  -\0\x87A\x80r:\0\x87  \xFD\0\0 \xFD\0\0\xFDQ\xFD\v\0  \xFD\0 \xFD\0\xFDQ\xFD\v  \xFD\0 \xFD\0 \xFDQ\xFD\v  \xFD\00 \xFD\00\xFDQ\xFD\v0  \xFD\0@ \xFD\0@\xFDQ\xFD\v@  \xFD\0P \xFD\0P\xFDQ\xFD\vP  \xFD\0` \xFD\0`\xFDQ\xFD\v`  \xFD\0p \xFD\0p\xFDQ\xFD\vp  )\x80 )\x80\x857\x80 A\x88O@ \0! \b!@ \r  )\x007\0\0  )\b7\0\b  )7\0  )7\0  ) 7\0  )(7\0(  )07\x000  )87\x008  )@7\0@  )H7\0H  )P7\0P  )X7\0X  )`7\0`  )h7\0h  )p7\0p  )x7\0x  )\x807\0\x80 A\x88j! Ak"\r\0\v\v@  \bA\x88l"F\r\0 \r \xFD\0\0!\v  \xFD\0\xFD\v  \v\xFD\v\0 \xFD\0 !\v  \xFD\00\xFD\v0  \v\xFD\v \xFD\0@!\v  \xFD\0P\xFD\vP  \v\xFD\v@ \xFD\0`!\v  \xFD\0p\xFD\vp  \v\xFD\v`  )\x807\x80  k"E\r\0 \0 j  \xFC\n\0\0\v \v A\xD0j$\0\vA\xEF\0\0\0\v\xC1\'\v\x7F#\0Ak"\n$\0@@@@@@@@@@ \0A\xF4M@A\xF4\f(\0"A \0A\vjA\xF8q \0A\vI\x1B"Av"\0v"Aq@@ A\x7FsAq \0j"At"A\x9C\rj"\0 (\xA4\r"(\b"F@A\xF4\f A~ wq6\0\f\v  \x006\f \0 6\b\v A\bj!\0  Ar6  j" (Ar6\f\v\v A\xFC\f(\0"\bM\r @@A \0t"A\0 kr  \0tqh"At"A\x9C\rj" (\xA4\r"\0(\b"F@A\xF4\f A~ wq"6\0\f\v  6\f  6\b\v \0 Ar6 \0 j"\x07  k"Ar6 \0 j 6\0 \b@ \bAxqA\x9C\rj!A\x88\r(\0!\x7F A \bAvt"qE@A\xF4\f  r6\0 \f\v (\b\v!  6\b  6\f  6\f  6\b\v \0A\bj!\0A\x88\r \x076\0A\xFC\f 6\0\f\v\vA\xF8\f(\0"\vE\r \vhAt(\xA4"(Axq k! !@@ ("\0E@ ("\0E\r\v \0(Axq k"   I"\x1B! \0  \x1B! \0!\f\v\v (!  (\f"\0G@ (\b" \x006\f \0 6\b\f\n\v ("\x7F Aj ("E\r Aj\v!@ !\x07 "\0Aj! \0("\r\0 \0Aj! \0("\r\0\v \x07A\x006\0\f \vA\x7F! \0A\xBF\x7FK\r\0 \0A\vj"Axq!A\xF8\f(\0"\x07E\r\0A!\bA\0 k! \0A\xF4\xFF\xFF\x07M@ A& A\bvg"\0kvAq \0AtkA>j!\b\v@@@ \bAt(\xA4"E@A\0!\0\f\vA\0!\0 A \bAvkA\0 \bAG\x1Bt!@@ (Axq k" O\r\0 ! "\r\0A\0! !\0\f\v \0 ("   AvAqj("F\x1B \0 \x1B!\0 At! \r\0\v\v \0 rE@A\0!A \bt"\0A\0 \0kr \x07q"\0E\r \0hAt(\xA4!\0\v \0E\r\v@ \0(Axq k" I!   \x1B! \0  \x1B! \0("\x7F  \0(\v"\0\r\0\v\v E\r\0 A\xFC\f(\0 kO\r\0 (!\b  (\f"\0G@ (\b" \x006\f \0 6\b\f\b\v ("\x7F Aj ("E\r Aj\v!@ ! "\0Aj! \0("\r\0 \0Aj! \0("\r\0\v A\x006\0\f\x07\v A\xFC\f(\0"M@A\x88\r(\0!\0@  k"AO@ \0 j" Ar6 \0 j 6\0 \0 Ar6\f\v \0 Ar6 \0 j" (Ar6A\0!A\0!\vA\xFC\f 6\0A\x88\r 6\0 \0A\bj!\0\f \v A\x80\r(\0"I@A\x80\r  k"6\0A\x8C\rA\x8C\r(\0"\0 j"6\0  Ar6 \0 Ar6 \0A\bj!\0\f \vA\0!\0 A/j"\x7FA\xCC(\0@A\xD4(\0\f\vA\xD8B\x7F7\0A\xD0B\x80\xA0\x80\x80\x80\x807\0A\xCC \nA\fjApqA\xD8\xAA\xD5\xAAs6\0A\xE0A\x006\0A\xB0A\x006\0A\x80 \v"j"A\0 k"\x07q" M\r\bA\xAC(\0"@A\xA4(\0"\b j" \bM\r  I\r \v@A\xB0-\0\0AqE@@@@@A\x8C\r(\0"@A\xB4!\0@ \0(\0"\b M@  \b \0(jI\r\v \0(\b"\0\r\0\v\vA\0 "A\x7FF\r !A\xD0(\0"\0Ak" q@  k  jA\0 \0kqj!\v  M\rA\xAC(\0"\0@A\xA4(\0" j"\x07 M\r \0 \x07I\r\v  "\0 G\r\f\v  k \x07q" " \0(\0 \0(jF\r !\0\v \0A\x7FF\r A0j M@ \0!\f\vA\xD4(\0"  kjA\0 kq" A\x7FF\r  j! \0!\f\v A\x7FG\r\vA\xB0A\xB0(\0Ar6\0\v  !A\0 !\0 A\x7FF\r \0A\x7FF\r \0 M\r \0 k" A(jM\r\vA\xA4A\xA4(\0 j"\x006\0A\xA8(\0 \0I@A\xA8 \x006\0\v@A\x8C\r(\0"@A\xB4!\0@  \0(\0" \0("jF\r \0(\b"\0\r\0\v\f\vA\x84\r(\0"\0A\0 \0 M\x1BE@A\x84\r 6\0\vA\0!\0A\xB8 6\0A\xB4 6\0A\x94\rA\x7F6\0A\x98\rA\xCC(\x006\0A\xC0A\x006\0@ \0At" A\x9C\rj"6\xA4\r  6\xA8\r \0Aj"\0A G\r\0\vA\x80\r A(k"\0Ax kA\x07q"k"6\0A\x8C\r  j"6\0  Ar6 \0 jA(6A\x90\rA\xDC(\x006\0\f\v  M\r  K\r \0(\fA\bq\r \0  j6A\x8C\r Ax kA\x07q"\0j"6\0A\x80\rA\x80\r(\0 j" \0k"\x006\0  \0Ar6  jA(6A\x90\rA\xDC(\x006\0\f\vA\0!\0\f\vA\0!\0\f\vA\x84\r(\0 K@A\x84\r 6\0\v  j!A\xB4!\0@@  \0(\0"G@ \0(\b"\0\r\f\v\v \0-\0\fA\bqE\r\vA\xB4!\0@@ \0(\0" M@   \0(j"I\r\v \0(\b!\0\f\v\vA\x80\r A(k"\0Ax kA\x07q"k"\x076\0A\x8C\r  j"6\0  \x07Ar6 \0 jA(6A\x90\rA\xDC(\x006\0  A\' kA\x07qjA/k"\0 \0 AjI\x1B"A\x1B6 A\xBC)\x007 A\xB4)\x007\bA\xBC A\bj6\0A\xB8 6\0A\xB4 6\0A\xC0A\x006\0 Aj!\0@ \0A\x076 \0A\bj \0Aj!\0 I\r\0\v  F\r\0  (A~q6   k"Ar6  6\0\x7F A\xFFM@ A\xF8qA\x9C\rj!\0\x7FA\xF4\f(\0"A Avt"qE@A\xF4\f  r6\0 \0\f\v \0(\b\v! \0 6\b  6\fA\f!A\b\f\vA!\0 A\xFF\xFF\xFF\x07M@ A& A\bvg"\0kvAq \0AtrA>s!\0\v  \x006 B\x007 \0AtA\xA4j!@@A\xF8\f(\0"A \0t"qE@A\xF8\f  r6\0  6\0\f\v A \0AvkA\0 \0AG\x1Bt!\0 (\0!@ "(Axq F\r \0Av! \0At!\0  Aqj"("\r\0\v  6\v  6A\b! "!\0A\f\f\v (\b"\0 6\f  6\b  \x006\bA\0!\0A!A\f\v j 6\0  j \x006\0\vA\x80\r(\0"\0 M\r\0A\x80\r \0 k"6\0A\x8C\rA\x8C\r(\0"\0 j"6\0  Ar6 \0 Ar6 \0A\bj!\0\f\vA\xF0\fA06\0A\0!\0\f\v \0 6\0 \0 \0( j6 Ax kA\x07qj"\b Ar6 Ax kA\x07qj"  \bj"k!\x07@A\x8C\r(\0 F@A\x8C\r 6\0A\x80\rA\x80\r(\0 \x07j"\x006\0  \0Ar6\f\vA\x88\r(\0 F@A\x88\r 6\0A\xFC\fA\xFC\f(\0 \x07j"\x006\0  \0Ar6 \0 j \x006\0\f\v ("\0AqAF@ \0Axq! (\f!@ \0A\xFFM@ (\b" F@A\xF4\fA\xF4\f(\0A~ \0Avwq6\0\f\v  6\f  6\b\f\v (!@  G@ (\b"\0 6\f  \x006\b\f\v@ ("\0\x7F Aj ("\0E\r Aj\v!@ ! \0"Aj! \0("\0\r\0 Aj! ("\0\r\0\v A\x006\0\f\vA\0!\v E\r\0@ ("\0At"(\xA4 F@ A\xA4j 6\0 \rA\xF8\fA\xF8\f(\0A~ \0wq6\0\f\v@  (F@  6\f\v  6\v E\r\v  6 ("\0@  \x006 \0 6\v ("\0E\r\0  \x006 \0 6\v \x07 j!\x07  j"(!\0\v  \0A~q6  \x07Ar6  \x07j \x076\0 \x07A\xFFM@ \x07A\xF8qA\x9C\rj!\0\x7FA\xF4\f(\0"A \x07Avt"qE@A\xF4\f  r6\0 \0\f\v \0(\b\v! \0 6\b  6\f  \x006\f  6\b\f\vA! \x07A\xFF\xFF\xFF\x07M@ \x07A& \x07A\bvg"\0kvAq \0AtrA>s!\v  6 B\x007 AtA\xA4j!\0@@A\xF8\f(\0"A t"qE@A\xF8\f  r6\0 \0 6\0\f\v \x07A AvkA\0 AG\x1Bt! \0(\0!@ "\0(Axq \x07F\r Av! At! \0 Aqj"("\r\0\v  6\v  \x006  6\f  6\b\f\v \0(\b" 6\f \0 6\b A\x006  \x006\f  6\b\v \bA\bj!\0\f\v@ \bE\r\0@ ("At"(\xA4 F@ A\xA4j \x006\0 \0\rA\xF8\f \x07A~ wq"\x076\0\f\v@  \b(F@ \b \x006\f\v \b \x006\v \0E\r\v \0 \b6 ("@ \0 6  \x006\v ("E\r\0 \0 6  \x006\v@ AM@   j"\0Ar6 \0 j"\0 \0(Ar6\f\v  Ar6  j" Ar6  j 6\0 A\xFFM@ A\xF8qA\x9C\rj!\0\x7FA\xF4\f(\0"A Avt"qE@A\xF4\f  r6\0 \0\f\v \0(\b\v! \0 6\b  6\f  \x006\f  6\b\f\vA!\0 A\xFF\xFF\xFF\x07M@ A& A\bvg"\0kvAq \0AtrA>s!\0\v  \x006 B\x007 \0AtA\xA4j!@@ \x07A \0t"qE@A\xF8\f  \x07r6\0  6\0  6\f\v A \0AvkA\0 \0AG\x1Bt!\0 (\0!@ "(Axq F\r \0Av! \0At!\0  Aqj"\x07("\r\0\v \x07 6  6\v  6\f  6\b\f\v (\b"\0 6\f  6\b A\x006  6\f  \x006\b\v A\bj!\0\f\v@ E\r\0@ ("At"(\xA4 F@ A\xA4j \x006\0 \0\rA\xF8\f \vA~ wq6\0\f\v@  (F@ \x006\f\v \x006\v \0E\r\v \0 6 ("@ \0 6  \x006\v ("E\r\0 \0 6  \x006\v@ AM@   j"\0Ar6 \0 j"\0 \0(Ar6\f\v  Ar6  j" Ar6  j 6\0 \b@ \bAxqA\x9C\rj!\0A\x88\r(\0!\x7FA \bAvt"\x07 qE@A\xF4\f  \x07r6\0 \0\f\v \0(\b\v! \0 6\b  6\f  \x006\f  6\b\vA\x88\r 6\0A\xFC\f 6\0\v A\bj!\0\v \nAj$\0 \0\vT\x7F~@A\xD4\v(\0"\xAD \0\xADB\x07|B\xF8\xFF\xFF\xFF\x83|"B\xFF\xFF\xFF\xFFX@ \xA7"\0?\0AtM\r \0\r\vA\xF0\fA06\0A\x7F\vA\xD4\v \x006\0 \v\xB4~ \0 \0)8"B\x86B\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83 \0)0"B\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83\x84"B\x86B\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 \0)("B\x86B\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83 \0) "B\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83\x84"\bB\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 \0)"\x07B\x86B\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83 \0)" B\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83\x84"\nB\x86B\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 \0)\b"\vB\x86B\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83 \0)\0"\fB\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83\x84"\rB\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"B\x88B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x847 \0 B\x86B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x847\0 \0 B\x88B\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83 B\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83\x84"B\x86B\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 B\x88B\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83 B\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83\x84"B\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 B\x88B\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83 \x07B\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83\x84"B\x86B\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 \fB\x88B\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83 \vB\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83\x84"B\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"\x07B\x88B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x847( \0 B\x86B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 \x07B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x847\b \0 B\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 \bB\x88B\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 \nB\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 \rB\x88B\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"B\x88B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x8470 \0 B\x86B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x847 \0 B\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 B\x88B\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 B\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 B\x88B\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"B\x88B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x8478 \0 B\x86B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x847\v\xDF\v\b\x7F@ \0E\r\0 \0A\bk" \0Ak(\0"Axq"\0j!@ Aq\r\0 AqE\r  (\0"k"A\x84\r(\0I\r \0 j!\0@@@A\x88\r(\0 G@ (\f! A\xFFM@  (\b"G\rA\xF4\fA\xF4\f(\0A~ Avwq6\0\f\v (!\x07  G@ (\b" 6\f  6\b\f\v ("\x7F Aj ("E\r Aj\v!@ ! "Aj! ("\r\0 Aj! ("\r\0\v A\x006\0\f\v ("AqAG\rA\xFC\f \x006\0  A~q6  \0Ar6  \x006\0\v  6\f  6\b\f\vA\0!\v \x07E\r\0@ ("At"(\xA4 F@ A\xA4j 6\0 \rA\xF8\fA\xF8\f(\0A~ wq6\0\f\v@  \x07(F@ \x07 6\f\v \x07 6\v E\r\v  \x076 ("@  6  6\v ("E\r\0  6  6\v  O\r\0 ("AqE\r\0@@@@ AqE@A\x8C\r(\0 F@A\x8C\r 6\0A\x80\rA\x80\r(\0 \0j"\x006\0  \0Ar6 A\x88\r(\0G\rA\xFC\fA\x006\0A\x88\rA\x006\0\vA\x88\r(\0"\x07 F@A\x88\r 6\0A\xFC\fA\xFC\f(\0 \0j"\x006\0  \0Ar6 \0 j \x006\0\v Axq \0j!\0 (\f! A\xFFM@ (\b" F@A\xF4\fA\xF4\f(\0A~ Avwq6\0\f\v  6\f  6\b\f\v (!\b  G@ (\b" 6\f  6\b\f\v ("\x7F Aj ("E\r Aj\v!@ ! "Aj! ("\r\0 Aj! ("\r\0\v A\x006\0\f\v  A~q6  \0Ar6 \0 j \x006\0\f\vA\0!\v \bE\r\0@ ("At"(\xA4 F@ A\xA4j 6\0 \rA\xF8\fA\xF8\f(\0A~ wq6\0\f\v@  \b(F@ \b 6\f\v \b 6\v E\r\v  \b6 ("@  6  6\v ("E\r\0  6  6\v  \0Ar6 \0 j \x006\0  \x07G\r\0A\xFC\f \x006\0\v \0A\xFFM@ \0A\xF8qA\x9C\rj!\x7FA\xF4\f(\0"A \0Avt"\0qE@A\xF4\f \0 r6\0 \f\v (\b\v!\0  6\b \0 6\f  6\f  \x006\b\vA! \0A\xFF\xFF\xFF\x07M@ \0A& \0A\bvg"kvAq AtrA>s!\v  6 B\x007 AtA\xA4j!\x7F@\x7FA\xF8\f(\0"A t"qE@A\xF8\f  r6\0  6\0A!A\b\f\v \0A AvkA\0 AG\x1Bt! (\0!@ "(Axq \0F\r Av! At!  Aqj"("\r\0\v  6A! !A\b\v!\0 "\f\v (\b" 6\f  6\bA!\0A\b!A\0\v!  j 6\0  6\f \0 j 6\0A\x94\rA\x94\r(\0Ak"\0A\x7F \0\x1B6\0\v\v\xC0\x1B~ \0 \0)\b"\x07 \0)8"\x85"\r \0)" \0) "\b\x85"\x85" \0)\x85" \0)0"\x85"  \x85"\n \0)\0"\x85" \x07  \0)( \x85"\x85"\x07\x85"  \x85"\x85"\x83\x85 \n\x83"\v\x85  \n\x85"   \b\x85"\f\x85"\x85" \x83  \f\x83"\x85"\x85"  \x85" \x07 \x83\x85  \r\x83"\x85 \r\x85 \x85"\x83"  \x83 \x85" \x07 \b\x85" \x83 \x85 \x85 \v\x85\x85"\v\x85     \x85"  \x07\x85"\x83\x85\x85 \x85\x85" \x85\x83"\b \x85 \x83" \x85" \x83   \b\x85"\b\x85" \x83"\x85    \x85"\x85  \v \x85"\x83 \v\x85"\x83 \x85" \x85"  \b\x85"\v\x85"\x83" \v \f\x83\x85"\f  \x07\x83"\x07\x85"\x85"\x1B  \x83"   \x85"\x83"  \v\x83\x85\x85"\x8578 \0 \f  \x83"\f  \x83\x85"   \n\x83\x85"\n  \r\x83"\r  \b\x83"\x85\x85"\x85\x85B\x7F\x857\0 \0 \n \x1B \x83\x85"\n\x85" 7 \0  \f\x85 \n\x857 \0   \x83\x85 \x85"   \x83\x85\x85"  \b \x83\x85\x857 \0  \r\x85 \x85B\x7F\x857\b \0   \x07\x85"  \x83\x85 \x85\x85B\x7F\x857( \0  \x85B\x7F\x8570\v\xD8\f.~\x7F \0)\xC0! \0)\xB8! \0)\xB0! \0)\xA8!\b \0)\xA0! \0)\x98! \0)\x90! \0)\x88! \0)\x80!\n \0)x! \0)p! \0)h! \0)`! \0)X! \0)P!\v \0)H! \0)@!\r \0)8! \0)0! \0)(!\x07 \0) !\x1B \0)!\f \0)! \0)\b! \0)\0!@  \x85 \x85 \r\x85 \f\x85"  \x85 \v\x85 \x07\x85 \x85"B\x89\x85" \x1B\x85B\x1B\x89"   \x85 \x85 \x85 \x85"B\x89\x85" \x85B\n\x89" \x85 \x85 \x85 \x1B\x85" \b \n\x85 \x85 \x85 \x85"!B\x89\x85" \x07\x85B$\x89"\x07B\x7F\x85\x83\x85""  \x85B\x89"\x1B   B\x89\x85"\x85B\x89"  ! B\x89\x85"\x85B\x89"B\x7F\x85\x83\x85"!\x85  \f\x85B\x89"\f  \v\x85B\x89"\v  \x85B\x89"B\x7F\x85\x83\x85"#\x85  \x85B>\x89"  \x85B\'\x89"  \r\x85B7\x89" B\x7F\x85\x83\x85"$\x85  \x85" /At"0)\x80\b  \x85B+\x89"  \x85B,\x89"B\x7F\x85\x83\x85\x85"%\x85"\rB\x89  \x85B\x89"   \x85B8\x89"B\x7F\x85\x83\x85"&  \x85B\x89"   \x85B\x89"B\x7F\x85\x83\x85"\'  \x85B)\x89"  \b \x85B\x89"\bB\x7F\x85\x83\x85" \x85B\b\x89" \x1B  \x85B\x89"B\x7F\x85\x83\x85"( \n \x85B-\x89"\n \f  \x85B=\x89"B\x7F\x85\x83\x85"\x85\x85\x85\x85")\x85" \b B\x7F\x85\x83\x85"\x85B\x89" \r  B\x7F\x85\x83 \x85"*  B\x7F\x85\x83 \x85"  \b B\x7F\x85\x83\x85"+  \nB\x7F\x85\x83 \v\x85",   B\x7F\x85\x83\x85"-\x85\x85\x85\x85"\bB\x89\x85"\r  \n \vB\x7F\x85\x83\x85"\n\x85B,\x89" % \x07 B\x7F\x85\x83 \x85"  \fB\x7F\x85\x83 \x85"  \x1BB\x7F\x85\x83 \x85"\v   B\x7F\x85\x83\x85". \x85\x85\x85\x85"  B\x7F\x85\x83 \x85" B\x7F\x85\x83 \x85"  B\x7F\x85\x83 \x07\x85" \n   B\x7F\x85\x83\x85"\x85\x85\x85\x85" B\x89\x85"\x85"B\x7F\x85\x83\x85!\x1B \r \x85B\x89" B\x89 \b\x85"\f \x85B7\x89"  )B\x89 \x85"\x85B>\x89" B\x7F\x85\x83\x85!  "\x85B)\x89"\b B\x7F\x85\x83\x85! \v \x85B\'\x89"  \bB\x7F\x85\x83\x85! \b B\x7F\x85\x83 \x85!\b  B\x7F\x85\x83 \x85!  \f\x85B8\x89"  #\x85B$\x89"  .\x85B\x1B\x89"B\x7F\x85\x83\x85!  -\x85B\x89"\n  B\x7F\x85\x83\x85!  \r\x85B\n\x89"  \nB\x7F\x85\x83\x85! \n B\x7F\x85\x83 \x85!\n   B\x7F\x85\x83\x85!  $\x85B\x89"  ,\x85B\x89"\v  \r\x85B\x89"B\x7F\x85\x83\x85!  \x85B\b\x89"  B\x7F\x85\x83\x85! \f (\x85B\x89"\x07  B\x7F\x85\x83\x85!  \x07B\x7F\x85\x83 \v\x85!  \x07 \vB\x7F\x85\x83\x85!\v  +\x85B=\x89"  \x85B\x89"\x07 \f \'\x85B\x89"B\x7F\x85\x83\x85! \r \x85B-\x89"  B\x7F\x85\x83\x85!\r  !\x85B\x89"  B\x7F\x85\x83\x85! \x07  B\x7F\x85\x83\x85!  \x07B\x7F\x85\x83 \x85!\x07 \f &\x85B\x89"  B\x7F\x85\x83\x85!\f  *\x85B+\x89"  B\x7F\x85\x83\x85!   B\x7F\x85\x83\x85! 0)\x88\b  B\x7F\x85\x83\x85 \x85! /AI /Aj!/\r\0\v \0 7\xC0 \0 7\xB8 \0 7\xB0 \0 \b7\xA8 \0 7\xA0 \0 7\x98 \0 7\x90 \0 7\x88 \0 \n7\x80 \0 7x \0 7p \0 7h \0 7` \0 7X \0 \v7P \0 7H \0 \r7@ \0 78 \0 70 \0 \x077( \0 \x1B7 \0 \f7 \0 7 \0 7\b \0 7\0\v\xB2\f \x7F~{#\0A\xE0k"$\0A\xC0\b"\x07@  \xFD\0\0\0\xFD\v\xF0 (\xFC!A!@ A\xF0j Atj" \x7F  B\x0078 \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v( \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v\b  Aw\xAD7\0 \n \f \n -\0\xC0 (\0s\v Ak(\0s"6\0A\0 Aj" AF"\x1B!  j! Aj"A,G\r\0\vA\0!A\0!@  A\xF0j Atj"5\f"\vB\x86 \v\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\vB\x86 \vB\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83 5"\vB\x86 \v\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\vB\b\x86 \v\x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x84"\v7\xD0  5\b"\fB\x86 \f\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\fB\x86 \fB\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83 5\0"\fB\x86 \f\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\fB\b\x86 \f\x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x84"\f7\xB0  \v7\xE8  \v7\xE0  \v7\xD8  \f7\xC8  \f7\xC0  \f7\xB8 A\xB0j\n  Atj \xFD\0\xB0"\r \xFD\0\xD0"\xFD\r\0\x07\x1B\xFD\f""""""""\xFDN \r \xFD\r\b \n\v\f\r\xFD\f""""""""\xFDN\xFDP \xFD\0\xC0"\r \xFD\0\xE0"\xFD\r\0\x07\xFD\fDDDDDDDDDDDDDDDD\xFDN\xFDP \r \xFD\r\b \n\v\f\r\x1B\xFD\f\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\x88\xFDN\xFDP\xFD\v\0 Aj! A(I Aj!\r\0\vA\0!@ \x07 Atj"  Atj\xFD\0\0"\rA\xFD\xCD\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5" \rA\xFD\xCD\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5"\xFD\r\b \n\v\f\r\x1B\xFD\v0  \r\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5" \rA\xFD\xCD\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5"\r\xFD\r\b \n\v\f\r\x1B\xFD\v   \xFD\r\0\x07\xFD\v   \r\xFD\r\0\x07\xFD\v\0 Aj"AG\r\0\v B\x80\x80\x80\x80\x80\x80\x80\x807\x98 B\x007\x90 B\x007\xA0 B\x007\xF0 \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v\xF8 B\x80\x80\x80\x80\x80\x80\x80\x807\xA8 B\x80\x80\x80\x80\x80\x80\x80\x807\x88A!A!A!A\0!A\xEF\xE8\b!\b@ \0" A\xF0j" \x07  Aj"A\xFF\x81\xFC\x07qA\bx AxA\xFF\x81\xFC\x07qr6\xAC  Aj"A\xFF\x81\xFC\x07qA\bx AxA\xFF\x81\xFC\x07qr6\x9C  Aj"A\xFF\x81\xFC\x07qA\bx AxA\xFF\x81\xFC\x07qr6\x8C  Aj"A\xFF\x81\xFC\x07qA\bx AxA\xFF\x81\xFC\x07qr6\xFC A@k!\0 \bA\x80J \bA@j!\b\r\0\v  \x07A\0!A\0! \0 kAO@  \xFD\0\0\xFD\v\0@  \xFD\0\xFD\v\0PA !\v@ \0 j  j-\0\0:\0\0 Aj! Aj"AG\r\0\v@ \0 j  j-\0\0:\0\0 \0 Aj"j  j-\0\0:\0\0 \0 Aj"j  j-\0\0:\0\0 \0 Aj"j  j-\0\0:\0\0 Aj"A/G\r\0\v \x07\v A\xE0j$\0\vA\xEF\0\0\0\v\xBB~{\x7F#\0A@j"$\0 58!\f 50!\r 5<! 54! 5(! 5 ! 5,!\b 5$! 5!\n 5!\v 5! 5! 5\b!\x07 5\0!  5\f"B\x86 \x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x86 B\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83 5"B\x86 \x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\b\x86 \x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x847  \x07 \x07B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x86 B\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83  B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\b\x86 \x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x847\0   B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x86 B\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83  B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\b\x86 \x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x847(  \n \nB\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x86 B\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83 \v \vB\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\b\x86 \x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x847\b  \b \bB\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x86 B\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83 B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\b\x86 \x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x8470   B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x86 B\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83  B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\b\x86 \x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x847   B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x86 B\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83  B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\b\x86 \x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x8478  \f \fB\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x86 B\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83 \r \rB\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\b\x86 \x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x847 \n  \xFD\0\0 \xFD\0\0\xFDQ\xFD\v\0  \xFD\0 \xFD\0\xFDQ\xFD\v  \xFD\0 \xFD\0 \xFDQ\xFD\v  \xFD\00 \xFD\00\xFDQ\xFD\v0A!@ \f  \xFD\00"A\xFD\xCD\xFD\f\0\0\xFF\0\0\0\0\0\0\xFF\0\0\0\0\xFDN \xFD\f\xFF\xFF\0\0\0\0\0\0\xFF\xFF\0\0\0\0\0\0\xFDN\xFDP A\f\xFD\xCB\xFD\f\0\0\0\xF0\0\0\0\0\0\0\0\xF0\0\0\0\0\xFDN\xFDP A\b\xFD\xCD\xFD\f\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\0\xFDN\xFDP A\b\xFD\xCB\xFD\f\0\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\xFDN\xFDP A\f\xFD\xCD\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFDN\xFDP A\xFD\xCB\xFD\f\0\0\0\0\0\0\xF0\xFF\0\0\0\0\0\0\xF0\xFF\xFDN\xFDP"\xFD"B0\x89" \x85"\x07  Atj")\0 \xFD\0\0"A\xFD\xCD\xFD\f\0\0\xFF\0\0\0\0\0\0\xFF\0\0\0\0\xFDN \xFD\f\xFF\xFF\0\0\0\0\0\0\xFF\xFF\0\0\0\0\0\0\xFDN\xFDP A\f\xFD\xCB\xFD\f\0\0\0\xF0\0\0\0\0\0\0\0\xF0\0\0\0\0\xFDN\xFDP A\b\xFD\xCD\xFD\f\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\0\xFDN\xFDP A\b\xFD\xCB\xFD\f\0\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\xFDN\xFDP A\f\xFD\xCD\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFDN\xFDP A\xFD\xCB\xFD\f\0\0\0\0\0\0\xF0\xFF\0\0\0\0\0\0\xF0\xFF\xFDN\xFDP"\xFD\0"B0\x89" \x85"B \x89\x85 \x85\x857\0   )\b \xFD"B0\x89" \x85"B \x89\x85 \x85 \x85\x85 \x857\b   ) \xFD\0"A\xFD\xCD\xFD\f\0\0\xFF\0\0\0\0\0\0\xFF\0\0\0\0\xFDN \xFD\f\xFF\xFF\0\0\0\0\0\0\xFF\xFF\0\0\0\0\0\0\xFDN\xFDP A\f\xFD\xCB\xFD\f\0\0\0\xF0\0\0\0\0\0\0\0\xF0\0\0\0\0\xFDN\xFDP A\b\xFD\xCD\xFD\f\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\0\xFDN\xFDP A\b\xFD\xCB\xFD\f\0\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\xFDN\xFDP A\f\xFD\xCD\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFDN\xFDP A\xFD\xCB\xFD\f\0\0\0\0\0\0\xF0\xFF\0\0\0\0\0\0\xF0\xFF\xFDN\xFDP"\xFD\0"B0\x89" \x85"B \x89\x85 \x85\x857   ) \xFD"B0\x89" \x85"B \x89\x85 \x85 \x85\x85 \x857   ) \xFD\0 "A\xFD\xCD\xFD\f\0\0\xFF\0\0\0\0\0\0\xFF\0\0\0\0\xFDN \xFD\f\xFF\xFF\0\0\0\0\0\0\xFF\xFF\0\0\0\0\0\0\xFDN\xFDP A\f\xFD\xCB\xFD\f\0\0\0\xF0\0\0\0\0\0\0\0\xF0\0\0\0\0\xFDN\xFDP A\b\xFD\xCD\xFD\f\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\0\xFDN\xFDP A\b\xFD\xCB\xFD\f\0\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\xFDN\xFDP A\f\xFD\xCD\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFDN\xFDP A\xFD\xCB\xFD\f\0\0\0\0\0\0\xF0\xFF\0\0\0\0\0\0\xF0\xFF\xFDN\xFDP"\xFD\0"B0\x89" \x85"B \x89\x85 \x85 \x85\x85 \x857   )( \xFD"B0\x89" \x85"B \x89\x85 \x85\x857(   )0 \xFD\0"B0\x89" \x85"B \x89\x85 \x85\x8570  )8 \x07B \x89\x85 \x85 \x8578 Aj"A\nG\r\0\v \f  \xFD\0\0"A\xFD\xCD\xFD\f\0\0\xFF\0\0\0\0\0\0\xFF\0\0\0\0\xFDN \xFD\f\xFF\xFF\0\0\0\0\0\0\xFF\xFF\0\0\0\0\0\0\xFDN\xFDP A\f\xFD\xCB\xFD\f\0\0\0\xF0\0\0\0\0\0\0\0\xF0\0\0\0\0\xFDN\xFDP A\b\xFD\xCD\xFD\f\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\0\xFDN\xFDP A\b\xFD\xCB\xFD\f\0\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\xFDN\xFDP A\f\xFD\xCD\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFDN\xFDP A\xFD\xCB\xFD\f\0\0\0\0\0\0\xF0\xFF\0\0\0\0\0\0\xF0\xFF\xFDN\xFDP \xFD\0\x80\xFDQ\xFD\v\0  \xFD\0"A\xFD\xCD\xFD\f\0\0\xFF\0\0\0\0\0\0\xFF\0\0\0\0\xFDN \xFD\f\xFF\xFF\0\0\0\0\0\0\xFF\xFF\0\0\0\0\0\0\xFDN\xFDP A\f\xFD\xCB\xFD\f\0\0\0\xF0\0\0\0\0\0\0\0\xF0\0\0\0\0\xFDN\xFDP A\b\xFD\xCD\xFD\f\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\0\xFDN\xFDP A\b\xFD\xCB\xFD\f\0\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\xFDN\xFDP A\f\xFD\xCD\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFDN\xFDP A\xFD\xCB\xFD\f\0\0\0\0\0\0\xF0\xFF\0\0\0\0\0\0\xF0\xFF\xFDN\xFDP \xFD\0\x90\xFDQ\xFD\v  \xFD\0 "A\xFD\xCD\xFD\f\0\0\xFF\0\0\0\0\0\0\xFF\0\0\0\0\xFDN \xFD\f\xFF\xFF\0\0\0\0\0\0\xFF\xFF\0\0\0\0\0\0\xFDN\xFDP A\f\xFD\xCB\xFD\f\0\0\0\xF0\0\0\0\0\0\0\0\xF0\0\0\0\0\xFDN\xFDP A\b\xFD\xCD\xFD\f\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\0\xFDN\xFDP A\b\xFD\xCB\xFD\f\0\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\xFDN\xFDP A\f\xFD\xCD\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFDN\xFDP A\xFD\xCB\xFD\f\0\0\0\0\0\0\xF0\xFF\0\0\0\0\0\0\xF0\xFF\xFDN\xFDP \xFD\0\xA0\xFDQ\xFD\v  \xFD\00"A\xFD\xCD\xFD\f\0\0\xFF\0\0\0\0\0\0\xFF\0\0\0\0\xFDN \xFD\f\xFF\xFF\0\0\0\0\0\0\xFF\xFF\0\0\0\0\0\0\xFDN\xFDP A\f\xFD\xCB\xFD\f\0\0\0\xF0\0\0\0\0\0\0\0\xF0\0\0\0\0\xFDN\xFDP A\b\xFD\xCD\xFD\f\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\0\xFDN\xFDP A\b\xFD\xCB\xFD\f\0\0\0\0\0\xFF\0\0\0\0\0\0\0\xFF\0\0\xFDN\xFDP A\f\xFD\xCD\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFDN\xFDP A\xFD\xCB\xFD\f\0\0\0\0\0\0\xF0\xFF\0\0\0\0\0\0\xF0\xFF\xFDN\xFDP \xFD\0\xB0\xFDQ\xFD\v0 \n )\0!\b ) ! )\b!\n )(!\v )! )0! )!\x07 \0 )8"B\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 B\x80\xFE\x83\x80\x80\xE0?\x83\x84"B\b\x88 B\x88\x84>\0< \0 \x07B\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 \x07B\x80\xFE\x83\x80\x80\xE0?\x83\x84"B\b\x88 B\x88\x84>\x008 \0 B\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 B\x80\xFE\x83\x80\x80\xE0?\x83\x84"B\b\x88 B\x88\x84>\0, \0 B\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 B\x80\xFE\x83\x80\x80\xE0?\x83\x84"B\b\x88 B\x88\x84>\0( \0 \vB\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 \vB\x80\xFE\x83\x80\x80\xE0?\x83\x84"B\b\x88 B\x88\x84>\0 \0 \nB\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 \nB\x80\xFE\x83\x80\x80\xE0?\x83\x84"B\b\x88 B\x88\x84>\0 \0 B\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 B\x80\xFE\x83\x80\x80\xE0?\x83\x84"B\b\x88 B\x88\x84>\0\f \0 \bB\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 \bB\x80\xFE\x83\x80\x80\xE0?\x83\x84"B\b\x88 B\x88\x84>\0\b \0 B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"B\b\x88 \x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x88 \x84>\x004 \0 \x07B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"B\b\x88 \x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x88 \x84>\x000 \0 B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"B\b\x88 \x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x88 \x84>\0$ \0 B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"B\b\x88 \x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x88 \x84>\0 \0 \vB\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"B\b\x88 \x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x88 \x84>\0 \0 \nB\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"B\b\x88 \x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x88 \x84>\0 \0 B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"B\b\x88 \x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x88 \x84>\0 \0 \bB\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"B\b\x88 \x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x88 \x84>\0\0 A@k$\0\v\xBD(~\f\x7F{ \0A\x90j"\f \f)\0 \0A\xC8j")\0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\0 \0 \0)\x98 \0)\xD0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\x98 \0 \0)\xA0 \0)\xD8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xA0 \0 \0)\xA8 \0)\xE0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xA8 \0 \0)\xB0 \0)\xE8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xB0 \0A\xE0j"\b \0A\xB8j"\xFD\0\0"A\xFD\xCB\xFD\f\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xFDN \b\xFD\0\0\xFDQ A\xFD\xCD\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5\xFDQ\xFD\v\0 \0 \0\xFD\0\xC8"A\xFD\xCB\xFD\f\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xFDN \0\xFD\0\xF0\xFDQ A\xFD\xCD\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5\xFDQ\xFD\v\xF0 \0 \0)\x80 \0)\xD8"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\x80 \0A\x98j"\x07 O \f \0A\xC0j"\vOr"@ \x07 \f\xFD\0\0"\xFD\f\xFDN\xFD\f \0\0\0\0\0\0\0 \0\0\0\0\0\0\0\xFD\xD5 \x07\xFD\0\0\xFDQ A\xFD\xCD\xFD\fwwwwwwwwwwwwwwww\xFDN\xFDQ\xFD\v\0 \0 \0\xFD\0\xA0"\xFD\f\xFDN\xFD\f \0\0\0\0\0\0\0 \0\0\0\0\0\0\0\xFD\xD5 \0\xFD\0\xA8\xFDQ A\xFD\xCD\xFD\fwwwwwwwwwwwwwwww\xFDN\xFDQ\xFD\v\xA8A!\v \x07 At"j" )\0  \fj)\0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\0 E@ Ar!@ \x07 At"j" )\0  \fj)\0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\0 \x07 A\bj"j" )\0  \fj)\0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\0 Aj"AG\r\0\v\vA\0! \x07 \bM \0A\xF0j" \0A\x88j"Or" @  \0\xFD\0\xE0"A\xFD\xCB\xFD\f\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xFDN \xFD\0\0\xFDQ A\xFD\xCD\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5\xFDQ\xFD\v\0 \0 \0\xFD\0\xF0"A\xFD\xCB\xFD\f\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xFDN \0\xFD\0\x80\xFDQ A\xFD\xCD\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5\xFDQ\xFD\v\x80A!\v  At"j"\n \n)\0  \bj)\0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\0 E@ Ar!@  At" j" )\0 \b j)\0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\0  A\bj" j" )\0 \b j)\0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\0 Aj"AG\r\0\v\v \0A\xB0j" )\0 \0)\x98"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\0 \0 \0)\xB8 \0)\xA0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xB8 \0 \0)\xC0 \0)\xA8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xC0 \0 \0)\xC8 \0)\xB0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xC8 \0 \0)\xD0 \0)\xB8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xD0A\0! \0A\xF8\0j"\b \x07O  \0A\xA0j"\x07Or"@ \b \0\xFD\0\xF0"A\xFD\xCB\xFD\f\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xFDN \b\xFD\0\0\xFDQ A\xFD\xCD\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5\xFDQ\xFD\v\0 \0 \0\xFD\0\x80"A\xFD\xCB\xFD\f\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xFDN \0\xFD\0\x88\xFDQ A\xFD\xCD\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5\xFDQ\xFD\v\x88A!\v \b At"\nj"\r \r)\0  \nj)\0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\0 E@ Ar!@ \b At"j"\n \n)\0  j)\0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\0 \b A\bj"j"\n \n)\0  j)\0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\0 Aj"AG\r\0\v\v \0A\xD8j" \0\xFD\0\xB0"\xFD\f\xFDN\xFD\f \0\0\0\0\0\0\0 \0\0\0\0\0\0\0\xFD\xD5 \xFD\0\0\xFDQ A\xFD\xCD\xFD\fwwwwwwwwwwwwwwww\xFDN\xFDQ\xFD\v\0 \0 \0\xFD\0\xC0"\xFD\f\xFDN\xFD\f \0\0\0\0\0\0\0 \0\0\0\0\0\0\0\xFD\xD5 \0\xFD\0\xE8\xFDQ A\xFD\xCD\xFD\fwwwwwwwwwwwwwwww\xFDN\xFDQ\xFD\v\xE8 \0 \0)\xF8 \0)\xD0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xF8 \0 \0)\xC0 \0)x"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\xC0 \0 \0)\xC8 \0)\x80"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\xC8 \0 \0)\xD0 \0)\x88"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\xD0 \0 \0)\xD8 \0)\x90"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\xD8 \0 \0)\xE0 \0)\x98"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\xE0A\0!  \0A\x80jO  Or"@ \0 \xFD\0\0"\xFD\f\xFDN\xFD\f \0\0\0\0\0\0\0 \0\0\0\0\0\0\0\xFD\xD5 \0\xFD\0\x88\xFDQ A\xFD\xCD\xFD\fwwwwwwwwwwwwwwww\xFDN\xFDQ\xFD\v\x88 \0 \0\xFD\0\xE8"\xFD\f\xFDN\xFD\f \0\0\0\0\0\0\0 \0\0\0\0\0\0\0\xFD\xD5 \0\xFD\0\x98\xFDQ A\xFD\xCD\xFD\fwwwwwwwwwwwwwwww\xFDN\xFDQ\xFD\v\x98A!\v  At"\nj"\r \r)\0  \nj)\0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\0 E@ Ar!@  At"j"\n \n)\0  j)\0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\0  A\bj"j"\n \n)\0  j)\0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\0 Aj"AG\r\0\v\vA\0! \x07 \0A\xE8j"O \v Or"@ \0 \0\xFD\0\xC0"A\xFD\xCB\xFD\f\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xFDN \0\xFD\0\xA0\xFDQ A\xFD\xCD\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5\xFDQ\xFD\v\xA0 \0 \0\xFD\0\xD0"A\xFD\xCB\xFD\f\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xFDN \0\xFD\0\xB0\xFDQ A\xFD\xCD\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5\xFDQ\xFD\v\xB0A!\v \x07 At"\nj"\r \r)\0 \n \vj)\0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\0 E@ Ar!@ \x07 At"j"\n \n)\0  \vj)\0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\0 \x07 A\bj"j"\n \n)\0  \vj)\0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\0 Aj"AG\r\0\v\vA\0!  O  \fOr"\v@ \0 \0\xFD\0\x88"\xFD\f\xFDN\xFD\f \0\0\0\0\0\0\0 \0\0\0\0\0\0\0\xFD\xD5 \0\xFD\0\xE8\xFDQ A\xFD\xCD\xFD\fwwwwwwwwwwwwwwww\xFDN\xFDQ\xFD\v\xE8 \0 \0\xFD\0\x98"\xFD\f\xFDN\xFD\f \0\0\0\0\0\0\0 \0\0\0\0\0\0\0\xFD\xD5 \0\xFD\0\xF8\xFDQ A\xFD\xCD\xFD\fwwwwwwwwwwwwwwww\xFDN\xFDQ\xFD\v\xF8A!\v  At" j" )\0  j)\0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\0 \vE@ Ar!@  At"\vj" )\0  \vj)\0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\0  \vA\bj"\vj" )\0  \vj)\0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\0 Aj"AG\r\0\v\vA\0! \0A\xD0\0j" O \x07 \bOr"\b@  \0\xFD\0\xA0"A\xFD\xCB\xFD\f\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xFDN \xFD\0\0\xFDQ A\xFD\xCD\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5\xFDQ\xFD\v\0 \0 \0\xFD\0\xB0"A\xFD\xCB\xFD\f\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xFDN \0\xFD\0`\xFDQ A\xFD\xCD\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5\xFDQ\xFD\v`A!\v  At"\vj" )\0 \x07 \vj)\0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\0 \bE@ Ar!@  At"\bj"\v \v)\0 \x07 \bj)\0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\0  \bA\bj"\bj"\v \v)\0 \x07 \bj)\0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\0 Aj"AG\r\0\v\vA\0! \f \0A(j"\fM  Or"@ \0 \0\xFD\0\xE8"\xFD\f\xFDN\xFD\f \0\0\0\0\0\0\0 \0\0\0\0\0\0\0\xFD\xD5 \0\xFD\0(\xFDQ A\xFD\xCD\xFD\fwwwwwwwwwwwwwwww\xFDN\xFDQ\xFD\v( \0 \0\xFD\0\xF8"\xFD\f\xFDN\xFD\f \0\0\0\0\0\0\0 \0\0\0\0\0\0\0\xFD\xD5 \0\xFD\08\xFDQ A\xFD\xCD\xFD\fwwwwwwwwwwwwwwww\xFDN\xFDQ\xFD\v8A!\v \f At"\x07j"\b \b)\0  \x07j)\0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\0 E@ Ar!@ \f At"j"\x07 \x07)\0  j)\0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\0 \f A\bj"j"\x07 \x07)\0  j)\0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\0 Aj"AG\r\0\v\v \0 \0\xFD\0P"A\xFD\xCB\xFD\f\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xFDN \0\xFD\0(\xFDQ A\xFD\xCD\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5\xFDQ\xFD\v( \0 \0\xFD\0`"A\xFD\xCB\xFD\f\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xEE\xFDN \0\xFD\08\xFDQ A\xFD\xCD\xFD\f\xFDN\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xD5\xFDQ\xFD\v8 \0 \0)H \0)p"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857H  \0)(7\0  \0)07\b  \0)87  \0)@7  \0)H7 \v\xB9 \x7F~{#\0A\xD0\0k!@ \0 A(lj"A j ) B\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\x837\0  )HB\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\x837H  )pB\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\x837p  )\x98B\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\x837\x98 Aj"A\xE4\0G\r\0\v A\0A\xC8\0\xFC\v\0A\n!@ " Ak"A\nl!\n !@  )"B\x86 )"\fB<\x88\x847  \fB\x86 )\b"\fB<\x88\x847  \fB\x86 )\0"\fB<\x88\x847\bA\x88-\0\0"\b!\x07  \fB\x86"\f7\0  -\0 \b \rB4\x88\xA7"sAqs:\0  \f\xA7  \x07sAt"\x07A\xF0\0q"\vAvr \x07A\bqr \vAvs  \bsAts:\0\0 \rB\x86 B<\x88\x84! \0  \njA(lj"\xFD\0\0!~  G@  \0 A\nl jA(lj"\x07\xFD\0\0 \xFD\0\0\xFDQ \xFDQ\xFD\v\0  \x07\xFD\0 \xFD\0\xFDQ \xFD\0\xFDQ\xFD\v \x07) ) \x85\f\v   \xFD\0\0\xFDQ\xFD\v\0  \xFD\0 \xFD\0\xFDQ\xFD\v ) \v \x85!\r Aj"A\nG\r\0\v AO\r\0\v  \r7 A\0!  A\xCE\0jI A\xCE\0j KqE@@  At"\0j"  A\xF0\xFF\xFF\xFF\x07qj\xFD\0\0"\xFD\f\xFDN \0 j"\0\xFD\0\0\0" \0\xFD\0\0"\xFD\r\0\b\n\f\xFDQ"  \xFD\r\x07 \v\r\x1B A\xFDm\xFDQ"\xFD\r\b \n\v\x1B\f\r\xFD\v\0   \xFD\r\0\x07\xFD\v\0\0 Aj"A G\r\0\vA\xC0\0!\v@  j  j-\0\0  Avj-\0\0"\0Aqs:\0\0  Ar"j  j-\0\0 \0Avs:\0\0 A\xCC\0I Aj!\r\0\v\v\xF2\x7F~@ E\r\0 \0 :\0\0 \0 j"Ak :\0\0 AI\r\0 \0 :\0 \0 :\0 Ak :\0\0 Ak :\0\0 A\x07I\r\0 \0 :\0 Ak :\0\0 A I\r\0 \0A\0 \0kAq"j" A\xFFqA\x81\x82\x84\bl"6\0   kA|q"j"Ak 6\0 A I\r\0  6\b  6 A\bk 6\0 A\fk 6\0 AI\r\0  6  6  6  6\f Ak 6\0 Ak 6\0 Ak 6\0 Ak 6\0  AqAr"k"A I\r\0 \xADB\x81\x80\x80\x80~!  j!@  7  7  7\b  7\0 A j! A k"AK\r\0\v\v \0\v\b\0A\xE4(\0\v]\x7FA\xE4(\0\x7FA\0A\xE8 \x006\0A\xE4 \0\b"\x006\0A\xECA\xC6\b6\0A\xF0A\b6\0A\xF4A\x8C\v\b"6\0 EA\xF0(\0E \0EA\xEC(\0Errr\v\v\r\0 \0A\x80j\0\v\0\0\ve\x7F \0D\0\0\0\0\0\0\0\0@A\xBC(\0A\x1BAA \0AF\x1B \0AF\x1B"\0AkvAq@A\xBCA\xBC(\0A \0Aktr6\0\f\v \0At(\xD0 "@ \0 \0\v\v\v\xB9\v\x7F{~#\0A\xF0\xDE\xC2k"$\0\x7FAA\xE4(\0"\x07E\r\0AA\xE8(\0 \0I\r\0A\xEC(\0!A\xF4(\0! A\xB0\x828jA\0A\x9C\xFC\v\0 A\xF0\0j"A\0A\x80\xF37\xFC\v\0   B\x007\xB0\xE7@ \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v\xA0\xE7@ \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v\x90\xE7@A\xF9!@  A\xF0\0j" Ak"\bA\'lj")\07\0\x8F\xE7@  \xFD\0\0\xFD\v\x80\xE7@  \xFD\0\0\0"\f\xFD\v\xF0\xE6@ \bA(l j" \f\xFD\v\0  )\x90\xE7@7  \xFD\0\x80\xE7@\xFD\v AIE@  Ak"A\'l j")\07\0\x8F\xE7@  \xFD\0\0\xFD\v\x80\xE7@  \xFD\0\0\0"\f\xFD\v\xF0\xE6@ A(l j" \f\xFD\v\0  )\x90\xE7@7  \xFD\0\x80\xE7@\xFD\v\f\v\v B\x007\xB0\xE7@ \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v\xA0\xE7@ \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v\x90\xE7@ Aj! A\xD8\x86 j!\bA$!@  A\'l j"A\'k")\07\0\x8F\xE7@  \xFD\0\0\xFD\v\x80\xE7@  \xFD\0\0\0"\f\xFD\v\xF0\xE6@ A(l \bj" A(k" \f\xFD\v\0  )\x90\xE7@7  \xFD\0\x80\xE7@\xFD\v  A\xCE\0k")\07\x80\xE7@  )\07\x88\xE7@  )\07\0\x8F\xE7@  \xFD\0\0\0"\f\xFD\v\xF0\xE6@ A\xD0\0k" \f\xFD\v\0  )\x90\xE7@7  \xFD\0\x80\xE7@\xFD\v AG Ak!\r\0\v A \x07 \0\x07  )\0\xBE70  \xFD\0\0\xAE\xFD\v A\xE0\x858jA\' A8\x07  -\0\x80\x868"\0Av:\0\x91\x858  \0Aq:\0\x90\x858  -\0\x81\x868"\0Av:\0\x93\x858  \0Aq:\0\x92\x858  -\0\x82\x868"\0Av:\0\x95\x858  \0Aq:\0\x94\x858  -\0\x83\x868"\0Av:\0\x97\x858  \0Aq:\0\x96\x858  -\0\x84\x868"\0Av:\0\x99\x858  \0Aq:\0\x98\x858  \xFD\0\xE0\x858"\f\xFD\f\xFDN"\r \fA\xFDm"\f\xFD\r\b \n\v\x1B\f\r\xFD\v\xE0\x848  \r \f\xFD\r\0\x07\xFD\v\xD0\x848  \xFD\0\xF0\x858"\f\xFD\f\xFDN"\r \fA\xFDm"\f\xFD\r\b \n\v\x1B\f\r\xFD\v\x80\x858  \r \f\xFD\r\0\x07\xFD\v\xF0\x848  -\0\x85\x868"\0Av:\0\x9B\x858  \0Aq:\0\x9A\x858  -\0\x86\x868"\0Av:\0\x9D\x858  \0Aq:\0\x9C\x858A\0!@ A\xF0\xF37j Atj"\0  j\xFD\0\0\0"\f\xFD\f\xFDN"\r \fA\xFDm"\f\xFD\r\b \n\v\x1B\f\r\xFD\v \0 \r \f\xFD\r\0\x07\xFD\v\0 Aj"A\xA0G\r\0\v  -\0\xA0"\0Av:\0\xB1\xFA7  \0Aq:\0\xB0\xFA7  -\0\xA1"\0Av:\0\xB3\xFA7  \0Aq:\0\xB2\xFA7  -\0\xA2"\0Av:\0\xB5\xFA7  \0Aq:\0\xB4\xFA7  -\0\xA3"\0Av:\0\xB7\xFA7  \0Aq:\0\xB6\xFA7  -\0\xA4"\0Av:\0\xB9\xFA7  \0Aq:\0\xB8\xFA7  -\0\xA5"\0Av:\0\xBB\xFA7  \0Aq:\0\xBA\xFA7  -\0\xA6"\0Av:\0\xBD\xFA7  \0Aq:\0\xBC\xFA7  -\0\xA7"\0Av:\0\xBF\xFA7  \0Aq:\0\xBE\xFA7  -\0\xA8"\0Av:\0\xC1\xFA7  \0Aq:\0\xC0\xFA7  -\0\xA9"\0Av:\0\xC3\xFA7  \0Aq:\0\xC2\xFA7  -\0\xAA"\0Av:\0\xC5\xFA7  \0Aq:\0\xC4\xFA7  -\0\xAB"\0Av:\0\xC7\xFA7  \0Aq:\0\xC6\xFA7  -\0\xAC"\0Av:\0\xC9\xFA7  \0Aq:\0\xC8\xFA7  -\0\xAD"\0Av:\0\xCB\xFA7  \0Aq:\0\xCA\xFA7A\0! A\xB0\x868jA\0A\x80\xD1\0\xFC\v\0 A\xB0\xD78jA\0A\xC0\x8F\b\xFC\v\0 A\xF0\xE6\xC0\0jA\0A\x80\xF8\x81\xFC\v\0 A\xBE\xF47j! A\xD8\xC3\x07j! A\0!@ A\nl!\x07 !@ A\xF0\0j A(lj"\0\xFD\0!\f \0\xFD\0\0!\r \0) ! A\xF0\xF37j j!\nA\0!@ A\xF0\xE6\xC0\0j \n A\xD6\0lj-\0\0  \x07jAtjA(lj"\0 \0\xFD\0\0 \r\xFDQ\xFD\v\0 \0 \0\xFD\0 \f\xFDQ\xFD\v \0 \0) \x857 Aj"A\nG\r\0\v Aj! Aj"A\xCE\0G\r\0\v At!\nA\0!@  j!\v  \njA(lj"\0\xFD\0!\f \0\xFD\0\0!\r \0) !A\0!@ A\xF0\xE6\xC0\0j \v A\xD6\0lj-\0\0  \x07jAtjA(lj"\0 \0\xFD\0\0 \r\xFDQ\xFD\v\0 \0 \0\xFD\0 \f\xFDQ\xFD\v \0 \0) \x857 Aj"A\nG\r\0\v Aj"A\bG\r\0\vA\xCE\0!\0 Aj"A\xCE\0G\r\0\vA\0!@ \0A\nl!\x07 \0!@ \b A(lj"\xFD\0!\f \xFD\0\0!\r ) ! A\xF0\xF37j j!A\0!@ A\xF0\xE6\xC0\0j  A\xD6\0lj-\0\0  \x07jAtjA(lj" \xFD\0\0 \r\xFDQ\xFD\v\0  \xFD\0 \f\xFDQ\xFD\v  ) \x857 Aj"A\nG\r\0\v Aj! Aj"A\xD6\0G\r\0\v \0Aj"\0A\xD6\0G\r\0\vA\0!@ A\xF0\xE6\xC0\0j"\0 A\x80lj A\xB0\xD78j A(lj Aj"A\xDCG\r\0\vA\0! \0A\0A\x80\x90\n\xFC\v\0@ A\nl!\b A\xF0\xF37j A\xD6\0lj!\x07A\0!@ A\nl!  \x07j-\0\0! A\0!@ A\xF0\xE6\xC0\0j  \bjAt jA(lj"\0 \0\xFD\0\0 A\xB0\xD78j  jA(lj"\xFD\0\0\xFDQ\xFD\v\0 \0 \0\xFD\0 \xFD\0\xFDQ\xFD\v \0 \0) ) \x857 Aj"A\nG\r\0\v Aj"A\xD6\0G\r\0\v Aj"A\nG\r\0\vA\0!@ A\xF0\xE6\xC0\0j"\0 A\x80lj A\xB0\x868j" A(lj Aj"A\xE4\0G\r\0\v \0A\0A\x8E\xFC\v\0  \0 A\xB0\x828j )\xB0\x828 )\xD0\x848\x85 A\xC0\x828j)\0 A\xE0\x848j)\0\x85\x84 A\xD0\x828j)\0 A\xF0\x848j)\0\x85 A\xE0\x828j)\0 A\x80\x858j)\0\x85\x84\x84 A\xEE\x828j)\0 A\x8E\x858j)\0\x85\x84 )\xB8\x828 )\xD8\x848\x85 A\xC8\x828j)\0 A\xE8\x848j)\0\x85\x84 A\xD8\x828j)\0 A\xF8\x848j)\0\x85 A\xE8\x828j)\0 A\x88\x858j)\0\x85\x84\x84 A\xF6\x828j)\0 A\x96\x858j)\0\x85\x84\x84B\0R\v A\xF0\xDE\xC2j$\0\v\xBD\x98\x7F-{~#\0"! A\xA0\xF6\xC1\0kA`q"$\0A\xE4(\0"E@ $\0A\vA\xE8(\0 \0I@ $\0A\vA\0!A\xEC(\0!A\xF0(\0!\n A\xA0\xB48jA\0A\xD0\xE6\xFC\v\0 A\x90\xA48jA\0A\xCD\xFC\v\0 A\xE0\xB2:jA\xC8 \nA\x07 A\xF0\xB2:j! A\x98\x918j!@  Atj"  j\xFD\0\0"\xFD\f\xFDN" A\xFDm"\xFD\r\b \n\v\x1B\f\r\xFD\v   \xFD\r\0\x07\xFD\v\0 Aj"A\xB0G\r\0\v  -\0\xA0\xB5:"Av:\0\xF9\x958  Aq:\0\xF8\x958  -\0\xA1\xB5:"Av:\0\xFB\x958  Aq:\0\xFA\x958  -\0\xA2\xB5:"Av:\0\xFD\x958  Aq:\0\xFC\x958  -\0\xA3\xB5:"Av:\0\xFF\x958  Aq:\0\xFE\x958  -\0\xA4\xB5:"Av:\0\x81\x968  Aq:\0\x80\x968  -\0\xA5\xB5:"Av:\0\x83\x968  Aq:\0\x82\x968  -\0\xA6\xB5:"Av:\0\x85\x968  Aq:\0\x84\x968  -\0\xA7\xB5:"Av:\0\x87\x968  Aq:\0\x86\x968 A\xA0\xF4\0j A\xE0\xB2:j B\x007` \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\vP \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v@A\xF9!@  A\xA0\xF4\0j"\b Ak"A\'lj")\07\0?  \xFD\0\0\xFD\v0  \xFD\0\0\0"\xFD\v A(l \bj" \xFD\v\0  )@7  \xFD\00\xFD\v AIE@  Ak"A\'l \bj")\07\0?  \xFD\0\0\xFD\v0  \xFD\0\0\0"\xFD\v A(l \bj" \xFD\v\0  )@7  \xFD\00\xFD\v\f\v\v A\x88\xB7\bj!A\0!A\0!\b@ At!\v !@  G@ At! A\xA0\xF4\0j \bA(lj! A\0!\x07@  \x07 \vj"A(lj!\r  \x07 j"\fj-\0\0!A\0!@ \r At"j" )\0 j)\0"FB\0A\x88-\0\0 s"Aq\x1B\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ FB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"F \xAD"GB>\x86B?\x87\x83\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ FB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"F GB=\x86B?\x87\x83\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ FB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 GB<\x86B?\x87\x83\x857\0 Aj"AG\r\0\v  \fA(lj!\r  j-\0\0!A\0!@ \r At"\fj" )\0 \fj)\0"FB\0A\x88-\0\0 s"\fAq\x1B\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ FB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"F \f\xAD"GB>\x86B?\x87\x83\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ FB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"F GB=\x86B?\x87\x83\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ FB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 GB<\x86B?\x87\x83\x857\0 Aj"AG\r\0\v \x07Aj"\x07A\bG\r\0\v\v \bAj!\b Aj"A\xCE\0G\r\0\v Aj"A\xCE\0G\r\0\v A\xE0\xB2:jA\0A\xE4A\xD8\v(\0\0\0 A\x80\xF3\0jA  \0\x07 A jA\0A\xE0\xF2\0\xFC\v\0 A\xA0\xF3\0j!\x7F@A\xB8-\0\0@ A\xA0)\x007 A\x90\xFD\0\0\xFD\v\0A\xB8A\0:\0\0\f\v A\0:\0\xE2\xB2: A\xF0\xD2;\0\xE0\xB2:  6 A6AA\xDC\v A\xE0\xB2:j Aj\r\v  \n)\07\xC8s  \n\xFD\0\0\0\xFD\v\xB8s A\xC0\xAF:jA A\x80\xF3\0j"\0A\xD0\0\x07  )\xD0\xAF:7  \xFD\0\xC0\xAF:\xFD\v\0 A\x90\xB2:jA\' \0A8\x07  -\0\xB0\xB2:"\0Av:\0\xC1\xB1:  \0Aq:\0\xC0\xB1:  -\0\xB1\xB2:"\0Av:\0\xC3\xB1:  \0Aq:\0\xC2\xB1:  -\0\xB2\xB2:"\0Av:\0\xC5\xB1:  \0Aq:\0\xC4\xB1:  -\0\xB3\xB2:"\0Av:\0\xC7\xB1:  \0Aq:\0\xC6\xB1:  -\0\xB4\xB2:"\0Av:\0\xC9\xB1:  \0Aq:\0\xC8\xB1:  \xFD\0\x90\xB2:"\xFD\f\xFDN" A\xFDm"\xFD\r\b \n\v\x1B\f\r\xFD\v\x90\xB1:   \xFD\r\0\x07\xFD\v\x80\xB1:  \xFD\0\xA0\xB2:"\xFD\f\xFDN" A\xFDm"\xFD\r\b \n\v\x1B\f\r\xFD\v\xB0\xB1:   \xFD\r\0\x07\xFD\v\xA0\xB1:  -\0\xB5\xB2:"\0Av:\0\xCB\xB1:  \0Aq:\0\xCA\xB1:  -\0\xB6\xB2:"\0Av:\0\xCD\xB1:  \0Aq:\0\xCC\xB1: A\xF0\xB48j"\n A\xBE\xB0:jI A\xF0\xAF:j A\xCE\xE58jIq! A\xE0\xB48j! A\xD0\xB48j! A\xC0\xB48j! A\xB0\xB48j!A\0!@  :\0\xD0s A\xA0\xA8:jA\xAE A\x80\xF3\0jA\xD1\0\x07A\0!@ A\xF0\x9A:j A\xCE\0lj"\0 A\xA0\xA8:j A\'lj"\xFD\0\0\0"\xFD\f\xFDN" A\xFDm"\xFD\r\b \n\v\x1B\f\r\xFD\v \0  \xFD\r\0\x07\xFD\v\0 \0 \xFD\0\0"\xFD\f\xFDN" A\xFDm"\xFD\r\b \n\v\x1B\f\r\xFD\v0 \0  \xFD\r\0\x07\xFD\v \0 -\0 "Av:\0A \0A@k Aq:\0\0 \0 -\0!"Av:\0C \0 Aq:\0B \0 -\0""Av:\0E \0 Aq:\0D \0 -\0#"Av:\0G \0 Aq:\0F \0 -\0$"Av:\0I \0 Aq:\0H \0 -\0%"Av:\0K \0 Aq:\0J \0 -\0&"Av:\0M \0 Aq:\0LA\0! Aj"A\nG\r\0\v@ At!\0 A\xF0\x9A:j A\xCE\0lj!\bA\0!@ At!  \bj-\0\0!A\0!\x07@  \x07 jA(lj!\v A j \0 \x07jA(lj!A\0!@  At"\rj"\f \f)\0 \v \rj)\0"FB\0A\x88-\0\0 s"\rAq\x1B\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ FB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"F \r\xAD"GB>\x86B?\x87\x83\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ FB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"F GB=\x86B?\x87\x83\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ FB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 GB<\x86B?\x87\x83\x857\0 Aj"AG\r\0\v \x07Aj"\x07A\bG\r\0\v Aj"A\xCE\0G\r\0\v Aj"A\nG\r\0\vA\0!\b A\xE0\xB2:jA\0A\xC0\xBE\x07\xFC\v\0A\0!\0@ \bA\nl! \b!@ A\xA0\xF4\0j \0A(lj! A\xF0\x9A:j j!A\0!\x07@ A\xE0\xB2:j  \x07jA(lj!\v  \x07A\xCE\0lj-\0\0!A\0!@ \v At"\rj"\f \f)\0 \rj)\0"FB\0A\x88-\0\0 s"\rAq\x1B\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ FB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"F \r\xAD"GB>\x86B?\x87\x83\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ FB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"F GB=\x86B?\x87\x83\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ FB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 GB<\x86B?\x87\x83\x857\0 Aj"AG\r\0\v \x07Aj"\x07A\nG\r\0\v \0Aj!\0 Aj"A\xCE\0G\r\0\vA\0! \bAj"\bA\xCE\0G\r\0\v@ A\nl!\0 A\xF0\x9A:j A\xCE\0lj!\bA\0!@ A\nl!  \bj-\0\0!A\0!\x07@ A\xA0\xB48j \0 \x07jA(lj!\v A\xE0\xB2:j \x07 jA(lj!A\0!@ \v At"\rj"\f \f)\0  \rj)\0"FB\0A\x88-\0\0 s"\rAq\x1B\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ FB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"F \r\xAD"GB>\x86B?\x87\x83\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ FB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"F GB=\x86B?\x87\x83\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ FB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 GB<\x86B?\x87\x83\x857\0 Aj"AG\r\0\v \x07Aj"\x07A\nG\r\0\v Aj"A\xCE\0G\r\0\v Aj"A\nG\r\0\v A\xA0\xB48j A\x80\xB1:j A\xF0\xAF:jA\0! A\xE0\xB2:jA\0A\x80\xEA\xFC\v\0A\0!\0@ A j \0A(lj"A j ) B\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\x837\0  )HB\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\x837H  )pB\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\x837p  )\x98B\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\x837\x98 \0Aj"\0A\xD0\0G\r\0\vA\0!A\0!\b@ A j \bA\xC0lj!\r A\xE0\xB2:j \bAtj!\fA\n!\0@ A\x80l!\x07A\0!A\xC0\0 k\xAD!G A j \0Ak"\0A\xC0lj! \xAD!F@ A\0L@@  A(lj"\xFD\0@! \xFD\0! \xFD\00! \f Atj \x07j" \xFD\0\0 \xFD\0\0" \xFD\0 "\x1B\xFD\r\0\x07\x1B F\xA7"\xFD\xCB\xFDQ\xFD\v\0 \xFD\0\x80  \xFD\r\b \n\v\f\r \xFD\xCB\xFDQ\xFD\v\x80 A\x80\nj"\v \v\xFD\0\0  \xFD\r\0\x07\x1B \xFD\xCB\xFDQ\xFD\v\0 A\x80j"\v \v\xFD\0\0  \xFD\r\b \n\v\f\r \xFD\xCB\xFDQ\xFD\v\0 A\x80j" \xFD\0\0 \x1B \xFD\r\0\x07\x1B \xFD\xCB\xFDQ\xFD\v\0 Aj"A\bG\r\0\f\v\0\vA\0! @  A(lj"\xFD\0@! \xFD\0! \xFD\00! \f Atj \x07j"A\x80j \xFD\0\x80 \xFD\0\0" \xFD\0 "\x1B\xFD\r\0\x07\x1B" G\xA7"\xFD\xCD\xFDQ\xFD\v\0  \xFD\0\0  F\xA7"\v\xFD\xCB\xFDQ\xFD\v\0  \xFD\0\x80  \xFD\r\b \n\v\f\r" \v\xFD\xCB\xFDQ\xFD\v\x80 A\x80\nj" \xFD\0\0  \xFD\xCD\xFDQ\xFD\v\0  \xFD\0\0  \xFD\r\0\x07\x1B" \v\xFD\xCB\xFDQ\xFD\v\0 A\x80j" \xFD\0\0  \xFD\xCD\xFDQ\xFD\v\0  \xFD\0\0  \xFD\r\b \n\v\f\r" \v\xFD\xCB\xFDQ\xFD\v\0 A\x80j" \xFD\0\0  \xFD\xCD\xFDQ\xFD\v\0  \xFD\0\0 \x1B \xFD\r\0\x07\x1B" \v\xFD\xCB\xFDQ\xFD\v\0 A\x80j" \xFD\0\0  \xFD\xCD\xFDQ\xFD\v\0 Aj" A\bG\r\0\v\v@ \0 \bF\r\0A\0! A\xE0\xB2:j \0Atj! A\0L@@ \r A(lj"\xFD\0@! \xFD\0! \xFD\00!  Atj \x07j" \xFD\0\0 \xFD\0\0" \xFD\0 "\x1B\xFD\r\0\x07\x1B F\xA7"\xFD\xCB\xFDQ\xFD\v\0 \xFD\0\x80  \xFD\r\b \n\v\f\r \xFD\xCB\xFDQ\xFD\v\x80 A\x80\nj"\v \v\xFD\0\0  \xFD\r\0\x07\x1B \xFD\xCB\xFDQ\xFD\v\0 A\x80j"\v \v\xFD\0\0  \xFD\r\b \n\v\f\r \xFD\xCB\xFDQ\xFD\v\0 A\x80j" \xFD\0\0 \x1B \xFD\r\0\x07\x1B \xFD\xCB\xFDQ\xFD\v\0 Aj"A\bG\r\0\f\v\0\vA\0! @ \r A(lj"\xFD\0@! \xFD\0! \xFD\00!  Atj \x07j"A\x80j \xFD\0\x80 \xFD\0\0" \xFD\0 "\x1B\xFD\r\0\x07\x1B" G\xA7"\xFD\xCD\xFDQ\xFD\v\0  \xFD\0\0  F\xA7"\v\xFD\xCB\xFDQ\xFD\v\0  \xFD\0\x80  \xFD\r\b \n\v\f\r" \v\xFD\xCB\xFDQ\xFD\v\x80 A\x80\nj" \xFD\0\0  \xFD\xCD\xFDQ\xFD\v\0  \xFD\0\0  \xFD\r\0\x07\x1B" \v\xFD\xCB\xFDQ\xFD\v\0 A\x80j" \xFD\0\0  \xFD\xCD\xFDQ\xFD\v\0  \xFD\0\0  \xFD\r\b \n\v\f\r" \v\xFD\xCB\xFDQ\xFD\v\0 A\x80j" \xFD\0\0  \xFD\xCD\xFDQ\xFD\v\0  \xFD\0\0 \x1B \xFD\r\0\x07\x1B" \v\xFD\xCB\xFDQ\xFD\v\0 A\x80j" \xFD\0\0  \xFD\xCD\xFDQ\xFD\v\0 Aj" A\bG\r\0\v\vA\0 Aj" A\xC0\0F"\x1B!  j! \0 \bK\r\0\v \bAj"\bA\nG\r\0\vA\0!\0@ A\xE0\xB2:j \0A\x07tj"  \xFD]@\xFDW\xC0"A\xFD\xCD"  \xFD]H\xFDW\xC8"\xFD\f\xFDR"A\b\xFD\xCD"\x1B  \xFD]P\xFDW\xD0"A\xFD\xCD""  \xFD]X\xFDW\xD8" \xFD\f\xFDR"!\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDR"\'A\xFD\xCD"(  \xFD]`\xFDW\xE0"#A\xFD\xCD"$  \xFD]h\xFDW\xE8"%\xFD\f\xFDR"A\b\xFD\xCD")  \xFD]p\xFDW\xF0"&A\xFD\xCD"*  \xFD]x\xFDW\xF8"+\xFD\f\xFDR",\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDR":\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDR"-\xFD\f\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\0\0\0\0\xFDN  \xFD]\0\xFDW\x80".A\xFD\xCD"/  \xFD]\b\xFDW\x88"0\xFD\f\xFDR"1A\b\xFD\xCD"2  \xFD]\xFDW\x90"3A\xFD\xCD"4  \xFD]\xFDW\x98"5\xFD\f\xFDR"6\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDR";A\xFD\xCD"<  \xFD] \xFDW\xA0"7A\xFD\xCD"8  \xFD](\xFDW\xA8"9\xFD\f\xFDR"=A\b\xFD\xCD">  \xFD]0\xFDW\xB0"?A\xFD\xCD"@  \xFD]8\xFDW\xB8"A\xFD\f\xFDR"B\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDR"C\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDR"DA \xFD\xCD\xFDQ"E -\xFDQ"-\xFD[\xF8  ! \x1B\xFDQ\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDNA\b\xFD\xCB \xFDQ"A\xFD\xCD"\x1B , )\xFDQ\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDNA\b\xFD\xCB \xFDQ"!\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDR"\xFD\f\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\0\0\0\0\xFDN 6 2\xFDQ\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDNA\b\xFD\xCB 1\xFDQ")A\xFD\xCD", B >\xFDQ\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDNA\b\xFD\xCB =\xFDQ"1\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDR"2A \xFD\xCD\xFDQ"6 \xFDQ"   \xFDQ\xFD\f\xFDNA\xFD\xCB\xFDQ"A\b\xFD\xCD"  " \xFDQ\xFD\f\xFDNA\xFD\xCB\xFDQ"\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDR"A\xFD\xCD"" # $ %\xFDQ\xFD\f\xFDNA\xFD\xCB\xFDQ" A\b\xFD\xCD"# & * +\xFDQ\xFD\f\xFDNA\xFD\xCB\xFDQ"$\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDR"%\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDR"&\xFD\f\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\0\0\0\0\xFDN . / 0\xFDQ\xFD\f\xFDNA\xFD\xCB\xFDQ"*A\b\xFD\xCD"+ 3 4 5\xFDQ\xFD\f\xFDNA\xFD\xCB\xFDQ".\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDR"/A\xFD\xCD"0 7 8 9\xFDQ\xFD\f\xFDNA\xFD\xCB\xFDQ"3A\b\xFD\xCD"4 ? @ A\xFDQ\xFD\f\xFDNA\xFD\xCB\xFDQ"5\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDR"7\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDR"8A \xFD\xCD\xFDQ"9 &\xFDQ"&\xFD\r\0\x07\xFD\vh   &\xFD\r\b \n\v\f\r\x1B\xFD\v\xE8  9A \xFD\xCB 8\xFDQ" EA \xFD\xCB D\xFDQ"&\xFD\r\b \n\v\f\r\x1B\xFD\v\xB0   &\xFD\r\0\x07\xFD\v0  ! \x1B\xFDQ\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDNA\xFD\xCB \xFDQ"\xFD\f\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\0\0\0\0\xFDN 1 ,\xFDQ\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDNA\xFD\xCB )\xFDQ"\x1BA \xFD\xCD\xFDQ"!A \xFD\xCB \x1B\xFDQ"\x1B\xFD[\x88  ! \xFDQ" % "\xFDQ\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDNA\xFD\xCB \xFDQ"\xFD\f\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\0\0\0\0\xFDN 7 0\xFDQ\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDNA\xFD\xCB /\xFDQ""A \xFD\xCD\xFDQ"! \xFDQ"\xFD\r\b \n\v\f\r\x1B\xFD\v\xC8   \xFD\r\0\x07\xFD\vH  : (\xFDQ\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDNA\xFD\xCB \'\xFDQ"\xFD\f\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\0\0\0\0\xFDN C <\xFDQ\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDNA\xFD\xCB ;\xFDQ"A \xFD\xCD\xFDQ"\' \xFDQ"  \xFDQ\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDNA\b\xFD\xCB \xFDQ"A\xFD\xCD" $ #\xFDQ\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDNA\b\xFD\xCB \xFDQ"\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDR" \xFD\f\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\0\0\0\0\xFDN . +\xFDQ\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDNA\b\xFD\xCB *\xFDQ"(A\xFD\xCD"# 5 4\xFDQ\xFD\f\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFF\0\xFDNA\b\xFD\xCB 3\xFDQ"$\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDR"%A \xFD\xCD\xFDQ" \xFDQ" \xFD\r\b \n\v\f\r\x1B\xFD\v\xD8   \xFD\r\0\x07\xFD\vX  !A \xFD\xCB "\xFDQ" \'A \xFD\xCB \xFDQ"\xFD\r\b \n\v\f\r\x1B\xFD\v\x90   \xFD\r\0\x07\xFD\v  A \xFD\xCB %\xFDQ" 6A \xFD\xCB 2\xFDQ"\xFD\r\b \n\v\f\r\x1B\xFD\v\xA0   \xFD\r\0\x07\xFD\v   \xFDQ\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDNA\xFD\xCB \xFDQ"\xFD\f\xFF\xFF\xFF\xFF\0\0\0\0\xFF\xFF\xFF\xFF\0\0\0\0\xFDN $ #\xFDQ\xFD\f\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFF\xFF\0\0\xFDNA\xFD\xCB (\xFDQ"A \xFD\xCD\xFDQ" \xFDQ"\xFD[\xC0  \xFD[@\0  A \xFD\xCB \xFDQ" \x1B\xFD\r\0\x07\xFD\v\0  - \xFD\r\0\x07\x1B\xFD\vx \0Aj"\0A,G\r\0\v  )\xD8\xDF:"F )\xD0\xDF:"GB\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83"H F\x85"F )\xC8\xDF:"J )\xC0\xDF:"IB\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83"O J\x85"JB\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"WB\b\x86 J\x85"J )\xB8\xDF:"P )\xB0\xDF:"LB\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83"K P\x85"P )\xA8\xDF:"M )\xA0\xDF:"QB\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83"R M\x85"MB\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"XB\b\x86 M\x85"MB\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83"ZB\x86 M\x85"MB\xFF\xFF\xFF\xFF\x83 )\x98\xDF:"S )\x90\xDF:"TB\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83"Y S\x85"S )\x88\xDF:"U )\x80\xDF:"NB\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83"[ U\x85"UB\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"_B\b\x86 U\x85"U )\xF8\xDE:"\\ )\xF0\xDE:"]B\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83"^ \\\x85"\\ )\xE8\xDE:"V )\xE0\xDE:"`B\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83"a V\x85"VB\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"bB\b\x86 V\x85"VB\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83"cB\x86 V\x85"VB \x88\x85"d M\x857\xA8\xDF:  G HB\x86\x85"G I OB\x86\x85"HB\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"IB\b\x86 H\x85"H L KB\x86\x85"O Q RB\x86\x85"LB\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"KB\b\x86 L\x85"LB\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83"MB\x86 L\x85"LB\xFF\xFF\xFF\xFF\x83 T YB\x86\x85"Q N [B\x86\x85"RB\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"TB\b\x86 R\x85"R ] ^B\x86\x85"Y ` aB\x86\x85"NB\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"[B\b\x86 N\x85"NB\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83"]B\x86 N\x85"NB \x88\x85"^ L\x857\xA0\xDF:  dB \x86 V\x857\xE8\xDE:  ^B \x86 N\x857\xE0\xDE:  G I\x85"G K O\x85"IB\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83"OB\x86 I\x85"IB\xFF\xFF\xFF\xFF\x83 Q T\x85"L Y [\x85"KB\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83"QB\x86 K\x85"KB \x88\x85"T I\x857\xB0\xDF:  TB \x86 K\x857\xF0\xDE:  F W\x85"F P X\x85"IB\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83"WB\x86 I\x85"IB\xFF\xFF\xFF\xFF\x83 S _\x85"P \\ b\x85"KB\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83"XB\x86 K\x85"KB \x88\x85"S I\x857\xB8\xDF:  SB \x86 K\x857\xF8\xDE:  H M\x85"HB\xFF\xFF\xFF\xFF\x83 R ]\x85"IB \x88\x85"K H\x857\xC0\xDF:  KB \x86 I\x857\x80\xDF:  J Z\x85"HB\xFF\xFF\xFF\xFF\x83 U c\x85"JB \x88\x85"I H\x857\xC8\xDF:  IB \x86 J\x857\x88\xDF:  G O\x85"GB\xFF\xFF\xFF\xFF\x83 L Q\x85"HB \x88\x85"J G\x857\xD0\xDF:  JB \x86 H\x857\x90\xDF:  F W\x85"FB\xFF\xFF\xFF\xFF\x83 P X\x85"GB \x88\x85"H F\x857\xD8\xDF:  HB \x86 G\x857\x98\xDF:A\0!A\x88-\0\0"At""\0A\x7FsAq"Av \0Aqr Avs\xAD!I At"\b"\0A0qA s"Av \0A\fqr Avs\xAD!O At""\0A\xF0\0qA\xC0\0s"Av \0A\bqr Avs\xAD!W "\0Aq \0Aq"\0Avr \0AvsAs\xAD!P \b"\0A\fq \0A0q"\0Avr \0AvsAs\xAD!L "\0A\bq \0A\xF0\0q"\0Avr \0AvsA\bs\xAD!K "\0Aq \0Aq"\0Avr \0AvsAs\xAD!M \b"\0A\fq \0A0q"\0Avr \0AvsAs\xAD!Q "\0A\bq \0A\xF0\0q"\0Avr \0AvsA\bs\xAD!R "\0Aq"Av \0Aqr Avs\xAD!X \b"\0A0q"Av \0A\fqr Avs\xAD!Z "\0A\xF0\0q"Av \0A\bqr Avs\xAD!SA\x881\0\0B\x83!T Aq"\0A\bs\xAD!Y \0As\xAD"N!U@ A\xE0\xB2:j Atj!\0A\xCE\0!@ \0 A\xCE\0k"AvA\x80lj AqAtj" )\0 \0 AvA\x80lj AqAtj)\0"FB\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83"G Y~\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83"H I~\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83"J O~\x85 FB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83"F W~\x857\0 \0 A\xCD\0k"AvA\x80lj AqAtj" F K~ )\0 J L~ H P~ G U~\x85\x85\x85\x857\0 \0 A\xCC\0k"AvA\x80lj AqAtj" )\0 F R~ J Q~ H M~ G N~\x85\x85\x85\x857\0 \0 A\xCB\0k"AvA\x80lj AqAtj" )\0 F S~ J Z~ H X~ G T~\x85\x85\x85\x857\0 Aj"A\x85G\r\0\v A\xC0\0IA\0!A\xCE\0! Aj!\r\0\v@ A\xE0\xB2:j A(lj!\bA\0!@ A\xA0\xB48j  jA\xD1\0lj"\0 \b Atj"-\0\0"\x07Av:\0 \0 \x07Aq:\0\0 \0 -\0"\x07Av:\0 \0 \x07Aq:\0 \0 -\0"\x07Av:\0 \0 \x07Aq:\0 \0 -\0"\x07Av:\0\x07 \0 \x07Aq:\0 \0 -\0"\x07Av:\0 \0 \x07Aq:\0\b \0 -\0"\x07Av:\0\v \0 \x07Aq:\0\n \0 -\0"\x07Av:\0\r \0 \x07Aq:\0\f \0 -\0\x07"Av:\0 \0 Aq:\0 Aj" G\r\0\v \bA\x80j!\x07A\0!@   jA\xD1\0lj"\0 \x07 Atj"-\0\0"Av:\0 \0 Aq:\0\0 \0 -\0"Av:\0 \0 Aq:\0 \0 -\0"Av:\0 \0 Aq:\0 \0 -\0"Av:\0\x07 \0 Aq:\0 \0 -\0"Av:\0 \0 Aq:\0\b \0 -\0"Av:\0\v \0 Aq:\0\n \0 -\0"Av:\0\r \0 Aq:\0\f \0 -\0\x07"Av:\0 \0 Aq:\0 Aj" G\r\0\v \bA\x80j!\x07A\0!@   jA\xD1\0lj"\0 \x07 Atj"-\0\0"Av:\0 \0 Aq:\0\0 \0 -\0"Av:\0 \0 Aq:\0 \0 -\0"Av:\0 \0 Aq:\0 \0 -\0"Av:\0\x07 \0 Aq:\0 \0 -\0"Av:\0 \0 Aq:\0\b \0 -\0"Av:\0\v \0 Aq:\0\n \0 -\0"Av:\0\r \0 Aq:\0\f \0 -\0\x07"Av:\0 \0 Aq:\0 Aj" G\r\0\v \bA\x80j!\x07A\0!@   jA\xD1\0lj"\0 \x07 Atj"-\0\0"Av:\0 \0 Aq:\0\0 \0 -\0"Av:\0 \0 Aq:\0 \0 -\0"Av:\0 \0 Aq:\0 \0 -\0"Av:\0\x07 \0 Aq:\0 \0 -\0"Av:\0 \0 Aq:\0\b \0 -\0"Av:\0\v \0 Aq:\0\n \0 -\0"Av:\0\r \0 Aq:\0\f \0 -\0\x07"Av:\0 \0 Aq:\0 Aj" G\r\0\v \bA\x80j!\bA\0!@   jA\xD1\0lj"\0 \b Atj"-\0\0"\x07Av:\0 \0 \x07Aq:\0\0 \0 -\0"\x07Av:\0 \0 \x07Aq:\0 \0 -\0"\x07Av:\0 \0 \x07Aq:\0 \0 -\0"\x07Av:\0\x07 \0 \x07Aq:\0 \0 -\0"\x07Av:\0 \0 \x07Aq:\0\b \0 -\0"\x07Av:\0\v \0 \x07Aq:\0\n \0 -\0"\x07Av:\0\r \0 \x07Aq:\0\f \0 -\0\x07"Av:\0 \0 Aq:\0 Aj" G\r\0\v Ak! A>I Aj!\r\0\v\xFD\f\f\0\0\0\r\0\0\0\0\0\0\0\0\0!\xFD\f\b\0\0\0 \0\0\0\n\0\0\0\v\0\0\0!\xFD\f\0\0\0\0\0\0\0\0\0\x07\0\0\0!\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0!A\0!@ \xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xB5\xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xAE"\x1B\xFD\x1B\0 jA\x9F\xB48jA\0:\0\0 \x1B\xFD\x1B jA\x9F\xB48jA\0:\0\0 \x1B\xFD\x1B jA\x9F\xB48jA\0:\0\0 \x1B\xFD\x1B jA\x9F\xB48jA\0:\0\0 \xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xB5\xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xAE"\x1B\xFD\x1B\0 jA\x9F\xB48jA\0:\0\0 \x1B\xFD\x1B jA\x9F\xB48jA\0:\0\0 \x1B\xFD\x1B jA\x9F\xB48jA\0:\0\0 \x1B\xFD\x1B jA\x9F\xB48jA\0:\0\0 \xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xB5\xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xAE"\x1B\xFD\x1B\0 jA\x9F\xB48jA\0:\0\0 \x1B\xFD\x1B jA\x9F\xB48jA\0:\0\0 \x1B\xFD\x1B jA\x9F\xB48jA\0:\0\0 \x1B\xFD\x1B jA\x9F\xB48jA\0:\0\0 \xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xB5\xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xAE"\x1B\xFD\x1B\0 jA\x9F\xB48jA\0:\0\0 \x1B\xFD\x1B jA\x9F\xB48jA\0:\0\0 \x1B\xFD\x1B jA\x9F\xB48jA\0:\0\0 \x1B\xFD\x1B jA\x9F\xB48jA\0:\0\0 \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xAE! \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xAE! \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xAE! \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xAE! Aj"A\xC0\0G\r\0\vA\0! A\0:\0\xCD\xE58 A\0:\0\xFC\xE48 A\0:\0\xAB\xE48 A\0:\0\xDA\xE38 A\0:\0\x89\xE38 A\0:\0\xB8\xE28 A\0:\0\xE7\xE18 A\0:\0\x96\xE18 A\0:\0\xC5\xE08 A\0:\0\xF4\xDF8 A\0:\0\xA3\xDF8 A\0:\0\xD2\xDE8 A\0:\0\x81\xDE8 A\0:\0\xB0\xDD8  \xFD\0\xA6\xAB:"\xFD\f\xFDN" A\xFDm"\xFD\r\b \n\v\x1B\f\r\xFD\v\xA0\xA48   \xFD\r\0\x07\xFD\v\x90\xA48  \xFD\0\xB6\xAB:"\xFD\f\xFDN" A\xFDm"\xFD\r\b \n\v\x1B\f\r\xFD\v\xC0\xA48   \xFD\r\0\x07\xFD\v\xB0\xA48  -\0\xC6\xAB:"\0Av:\0\xD1\xA48  \0Aq:\0\xD0\xA48  -\0\xC7\xAB:"\0Av:\0\xD3\xA48  \0Aq:\0\xD2\xA48  -\0\xC8\xAB:"\0Av:\0\xD5\xA48  \0Aq:\0\xD4\xA48  -\0\xC9\xAB:"\0Av:\0\xD7\xA48  \0Aq:\0\xD6\xA48  -\0\xCA\xAB:"\0Av:\0\xD9\xA48  \0Aq:\0\xD8\xA48  -\0\xCB\xAB:"\0Av:\0\xDB\xA48  \0Aq:\0\xDA\xA48  -\0\xCC\xAB:"\0Av:\0\xDD\xA48  \0Aq:\0\xDC\xA48  -\0\xCD\xAB:"\0Av:\0\xDF\xA48  \0Aq:\0\xDE\xA48  \xFD\0\x90\xA48\xFD\v\xE0\xA58  \xFD\0\xA0\xA48\xFD\v\xF0\xA58  \xFD\0\xB0\xA48\xFD\v\x80\xA68  \xFD\0\xC0\xA48\xFD\v\x90\xA68  \xFD\0\xD0\xA48\xFD\v\xA0\xA68\xFD\f\f\0\0\0\r\0\0\0\0\0\0\0\0\0!\xFD\f\b\0\0\0 \0\0\0\n\0\0\0\v\0\0\0!\xFD\f\0\0\0\0\0\0\0\0\0\x07\0\0\0!\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0!@ \n \xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xB5"\x1B\xFD\x1B\0jA\0:\0\0 \n \x1B\xFD\x1BjA\0:\0\0 \n \x1B\xFD\x1BjA\0:\0\0 \n \x1B\xFD\x1BjA\0:\0\0 \n \xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xB5"\x1B\xFD\x1B\0jA\0:\0\0 \n \x1B\xFD\x1BjA\0:\0\0 \n \x1B\xFD\x1BjA\0:\0\0 \n \x1B\xFD\x1BjA\0:\0\0 \n \xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xB5"\x1B\xFD\x1B\0jA\0:\0\0 \n \x1B\xFD\x1BjA\0:\0\0 \n \x1B\xFD\x1BjA\0:\0\0 \n \x1B\xFD\x1BjA\0:\0\0 \n \xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xB5"\x1B\xFD\x1B\0jA\0:\0\0 \n \x1B\xFD\x1BjA\0:\0\0 \n \x1B\xFD\x1BjA\0:\0\0 \n \x1B\xFD\x1BjA\0:\0\0 \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xAE! \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xAE! \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xAE! \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xAE! Aj"A\xC0\0G\r\0\vA\0!\b A\0:\0\xCD\xE58 A\0:\0\xFC\xE48 A\0:\0\xAB\xE48 A\0:\0\xDA\xE38 A\0:\0\x89\xE38 A\0:\0\xB8\xE28 A\0:\0\xE7\xE18 A\0:\0\x96\xE18 A\0:\0\xC5\xE08 A\0:\0\xF4\xDF8 A\0:\0\xA3\xDF8 A\0:\0\xD2\xDE8 A\0:\0\x81\xDE8 A\0:\0\xB0\xDD8 A\xB0\xF1\xC1\0j!\x07 A\xA0\xB48j!\0@ A\x90\xA48j! A\0!A\0!@  -\0\0"A\0 \0 j-\0\0A\x88-\0\0s"Aq\x1B  Aqls  Aqls  A\bqls"A\xF0qAvs Aqs AvAqs! Aj! A\xD0\0G Aj!\r\0\v \x07 :\0\0 \0A\xD1\0j!\0 \x07Aj!\x07 \bAj"\bA\xCE\0G\r\0\vA\0!\0@ @A\0!\f\v\xFD\f\f\0\0\0\r\0\0\0\0\0\0\0\0\0!\xFD\f\b\0\0\0 \0\0\0\n\0\0\0\v\0\0\0!\xFD\f\0\0\0\0\0\0\0\0\0\x07\0\0\0!\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0!\x1B@ \n \x1B\xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xB5"\xFD\x1B\0j A\xB0\xF1\xC1\0j \0j\xFD\0\0 A\xF0\xAF:j \0j\xFD\0\0\xFDQ"\xFDX\0\0\0 \n \xFD\x1Bj \xFDX\0\0 \n \xFD\x1Bj \xFDX\0\0 \n \xFD\x1Bj \xFDX\0\0 \n \xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xB5"\xFD\x1B\0j \xFDX\0\0 \n \xFD\x1Bj \xFDX\0\0 \n \xFD\x1Bj \xFDX\0\0 \n \xFD\x1Bj \xFDX\0\0\x07 \n \xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xB5"\xFD\x1B\0j \xFDX\0\0\b \n \xFD\x1Bj \xFDX\0\0 \n \xFD\x1Bj \xFDX\0\0\n \n \xFD\x1Bj \xFDX\0\0\v \n \xFD\fQ\0\0\0Q\0\0\0Q\0\0\0Q\0\0\0\xFD\xB5"\xFD\x1B\0j \xFDX\0\0\f \n \xFD\x1Bj \xFDX\0\0\r \n \xFD\x1Bj \xFDX\0\0 \n \xFD\x1Bj \xFDX\0\0 \x1B\xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xAE!\x1B \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xAE! \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xAE! \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\xFD\xAE!A\xC0\0! \0Aj"\0A\xC0\0G\r\0\v\v@ \n A\xD1\0lj A\xB0\xF1\xC1\0j" j-\0\0 A\xF0\xAF:j" j-\0\0s:\0\0 \n Ar"\0A\xD1\0lj \0 j-\0\0 \0 j-\0\0s:\0\0 Aj"A\xCE\0G\r\0\vA\0! A\xE0\xB2:jA\0A\xB0\xF3\0\xFC\v\0@ A\xE0\xB2:j A0lj! A\xA0\xB48j A\xD1\0lj!\0A\0!@  j \0 Atj"\b\xFD\0\0\0" \b\xFD\0\0"\xFD\r\x07 \v\r\x1BA\xFDk  \xFD\r\0\b\n\f\xFDP\xFD\v\0 Aj"A G\r\0\v  \0-\0@ \0-\0AAtr:\0  \0-\0B \0-\0CAtr:\0!  \0-\0D \0-\0EAtr:\0"  \0-\0F \0-\0GAtr:\0#  \0-\0H \0-\0IAtr:\0$  \0-\0J \0-\0KAtr:\0%  \0-\0L \0-\0MAtr:\0&  \0-\0N \0-\0OAtr:\0\'  \0-\0P:\0(A\0! Aj"A\xCE\0G\r\0\vA\0! @ \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v\xC0\xF5A \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v\xB0\xF5A \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v\xA0\xF5A \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v\xA0\xF4A \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v\xB0\xF4A \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v\xC0\xF4AB\x7F!FA\0!A  AL\x1BAk"\0A-  A-N\x1BA j"\bL@ AtA<q\xAD!G A\xA0\xF5\xC1\0j AvA\xF8\xFF\xFF\xFF\x07qj!\x07 \0!@  \xFD\0\xA0\xF5A A\xE0\xB2:j A0lj"\xFD\0\0A\x80)\0"NB\x7FB\0  J\x1B\x85 F\x83 NB\x7FB\0  sA\0L\x1B\x85\x84\xFD"\xFDN\xFDQ\xFD\v\xA0\xF5A  \xFD\0\xB0\xF5A \xFD\0 \xFDN\xFDQ\xFD\v\xB0\xF5A  \xFD\0\xC0\xF5A \xFD\0 \xFDN\xFDQ\xFD\v\xC0\xF5AA\x80)\0B\0B\x7F \x07)\0 G\x88\xA7Aq"\x1B\x85!F  \bI Aj!\r\0\v\v  \xFD\0\xA0\xF5A"\xFD\f\xFDN A\0A\x88-\0\0" s"Aq\x1B Aq ls Aq ls A\bq ls"Aq Avs AvAqs"A\0  s""Aq\x1B Aq ls Aq ls A\bq ls"Aq A\xF0qAvs AvAqs"A\0  s"\bAq\x1B \bAq ls \bAq ls \bA\bq ls"\bA\xFFq"\x07Av s \bs" \x07Avs"\bAq A\0 "Aq\x1B  Aqls  Aqls  A\bqls"Aq A\xF0qAvs AvAqs"l A\0 Aq\x1Bs \bAq ls \bA\bq ls"Aq A\xF0qAvs AvAqsA\x81\x84\x90\xC0\0l"A\xF0\xE1\xC3\x87\x07q"Av Avs s"A\xFFq\xAD\xFD"\xFD\xD5 \xFD\0\xA0\xF4A\xFDQ A\xFD\xCD\xFD\f\xFDN A\bvAq\xAD\xFD"\xFD\xD5\xFDQ A\xFD\xCD\xFD\f\xFDN AvAq\xAD\xFD"\xFD\xD5\xFDQ A\xFD\xCD\xFD\f\xFDN AvAq\xAD\xFD"\x1B\xFD\xD5\xFDQ\xFD\v\xA0\xF4A  \xFD\0\xB0\xF5A"\xFD\f\xFDN \xFD\xD5 \xFD\0\xB0\xF4A\xFDQ A\xFD\xCD\xFD\f\xFDN \xFD\xD5\xFDQ A\xFD\xCD\xFD\f\xFDN \xFD\xD5\xFDQ A\xFD\xCD\xFD\f\xFDN \x1B\xFD\xD5\xFDQ\xFD\v\xB0\xF4A  \xFD\0\xC0\xF5A"\xFD\f\xFDN \xFD\xD5 \xFD\0\xC0\xF4A\xFDQ A\xFD\xCD\xFD\f\xFDN \xFD\xD5\xFDQ A\xFD\xCD\xFD\f\xFDN \xFD\xD5\xFDQ A\xFD\xCD\xFD\f\xFDN \x1B\xFD\xD5\xFDQ\xFD\v\xC0\xF4AA\xCD\0  A\xCD\0N\x1B"\b \0N@ \xFD\0\xC0\xF4A! \xFD\0\xB0\xF4A! \xFD\0\xA0\xF4A!\x1B \0!@ A\xE0\xB2:j A0lj" \x1BA\x80)\0B\x7FB\0  sA\0J\x1B\x85 F\x84"GB\x7F\x85\xFD"\xFDN \xFD\0\0 G\xFD"\xFDN\xFD\xCE\xFD\v\0   \xFDN \xFD\0 \xFDN\xFD\xCE\xFD\v   \xFDN \xFD\0 \xFDN\xFD\xCE\xFD\v  \bI Aj!\r\0\v\v \xFD\0\xC0\xF4A"\xFD\f\xFDN!\x1B \xFD\0\xB0\xF4A"\xFD\f\xFDN! \xFD\0\xA0\xF4A"\xFD\f\xFDN!" A\xFD\xCD\xFD\f\xFDN! A\xFD\xCD\xFD\f\xFDN!! A\xFD\xCD\xFD\f\xFDN!\' A\xFD\xCD\xFD\f\xFDN!( A\xFD\xCD\xFD\f\xFDN!# A\xFD\xCD\xFD\f\xFDN!$ A\xFD\xCD\xFD\f\xFDN!% A\xFD\xCD\xFD\f\xFDN! A\xFD\xCD\xFD\f\xFDN!) AtA<q\xAD!G AvAt!\b@ A\xE0\xB2:j \0A0lj" "  \bj)\0 G\x88\xA7AqA\x81\x84\x90\xC0\0lA\0 \0 J\x1B"A\xF0\xE1\xC3\x87\x07q"\x07Av \x07Avs s"A\xFFq\xAD\xFD"\xFD\xD5 \xFD\0\0\xFDQ ) A\bvAq\xAD\xFD"\xFD\xD5\xFDQ  AvAq\xAD\xFD"\xFD\xD5\xFDQ % AvAq\xAD\xFD"\xFD\xD5\xFDQ\xFD\v\0   \xFD\xD5 \xFD\0\xFDQ $ \xFD\xD5\xFDQ # \xFD\xD5\xFDQ ( \xFD\xD5\xFDQ\xFD\v  \x1B \xFD\xD5 \xFD\0 \xFDQ \' \xFD\xD5\xFDQ ! \xFD\xD5\xFDQ \xFD\xD5\xFDQ\xFD\v \0A\xCD\0I \0Aj!\0\r\0\v F\xA7jAj! A\xD0\0F Aj!E\r\0\vA\0! @ A\xE0\xB2:j A0lj!\0A\0!@ A\xC0\xF2\xC1\0j" Atj" \0 j\xFD\0\0"\xFD\f\xFDN" A\xFDm"\xFD\r\b \n\v\x1B\f\r\xFD\v   \xFD\r\0\x07\xFD\v\0 Aj"A0G\r\0\v A\xA0\xB48j A\xD1\0lj A\xD1\0\xFC\n\0\0 Aj" A\xCE\0G\r\0\v A\0A\xDCA\xD8\v(\0\0\0 A\xA0\xF5\xC1\0jA\0A\xE8\0A\xD8\v(\0\0\0 A\xA0\xF4\xC1\0jA\0A\xE8\0A\xD8\v(\0\0\0 A\xE0\xB2:jA\0A\xB0\xF3\0A\xD8\v(\0\0\0@ \xFD\0\0\xBD\xE58 \xFD\0\0\xAD\xE58 \xFD\0\0\x9D\xE58 \xFD\0\0\x8D\xE58 \xFD\0\0\xFD\xE48\xFDP\xFDP\xFDP\xFDP"  \xFD\r\b \n\v\f\r\0\0\0\0\0\0\0\0\xFDP"  \xFD\r\x07\0\0\0\0\0\0\0\0\0\0\0\0\xFDP"  \xFD\r\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFDP"  \xFD\r\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFDP\xFD\0@A\xCE\0!@A\xD0\0 Ak"\0A A\xCF\0 knj" A\xD0\0N\x1B!\n A\xA0\xB48j A\xD1\0lj"Ak! A\xD1\0k!A\0!\x07 \0! AM@ -\0\0!A\0!@ A\xE0\xA58j \0j" -\0\0A\x88-\0\0A\x7FA\0 \0 j-\0\0\x1Bs" A\x7Fsq qs:\0\0 A\xFFq r! \0 \nI \0Aj!\0\r\0\v\f@ A\xE0\xA58j j"A\x88-\0\0A\x7FA\0  j-\0\0\x1Bs \x07A\x7Fsq"\v -\0\0q" -\0\0s:\0\0 A\bq\xAD!G Aq\xAD!H Aq\xAD!J Aq\xAD!IA\0!@ A\xA0\xB48j A\xD1\0lj"A\xD0\0j -\0P  j"\b1\0QB\b\x86 \b1\0\0\x84 \b1\0\xA2B\x86\x84 \b1\0\xF3B\x86\x84 \b1\0\xC4B \x86\x84 \b1\0\x95B(\x86\x84 \b1\0\xE6B0\x86\x85 \b1\0\xB7B8\x86\x85"F I~ F J~\x85 F H~\x85 F G~\x85"FB\x88 FB\x88B\x8E\x9C\xB8\xF0\xE0\xC1\x83\x87\x83\x85 F\x85"F\xA7"\bAqs:\0\0  -\0\xA1 \bA\bvAqs:\0\xA1  -\0\xF2 \bAvAqs:\0\xF2  -\0\xC3 \bAvAqs:\0\xC3  -\0\x94 FB \x88\xA7Aqs:\0\x94  -\0\xE5 FB(\x88\xA7Aqs:\0\xE5  -\0\xB6 FB0\x88\xA7Aqs:\0\xB6  -\0\x87 FB8\x88\xA7Aqs:\0\x87 A\bj" \0I\r\0\v \x07 \vA\xFFqr!\x07  \nI Aj!\r\0\v \0!\f\v\0\v\0\v A jA\0A\xE0\xF2\0\xFC\v\0 A\xA0\xB48jA\0A\xD0\xE6\xFC\v\0 Aj"A\x80G\r\v\vA\0!\b@ A\xE0\xA58j \bAtj"-\0\x07!\0 -\0!\n -\0! -\0!\x07 -\0! -\0!\v -\0! -\0\0! A\xC0\xF2\xC1\0j!A\0!\r !@  A\0A\x88-\0\0"\f -\0\0s"Aq\x1B Aq ls Aq ls A\bq ls"A\xF0qAv Aqs AvAqs A\0 -\0 \fs"Aq\x1B Aq ls Aq ls A\bq ls"A\xF0qAvs Aqs AvAqs \vA\0 -\0 \fs"Aq\x1B Aq \vls Aq \vls A\bq \vls"A\xF0qAvs Aqs AvAqs A\0 -\0 \fs"Aq\x1B Aq ls Aq ls A\bq ls"A\xF0qAvs Aqs AvAqs \x07A\0 -\0 \fs"Aq\x1B Aq \x07ls Aq \x07ls A\bq \x07ls"A\xF0qAvs Aqs AvAqs A\0 -\0 \fs"Aq\x1B Aq ls Aq ls A\bq ls"A\xF0qAvs Aqs AvAqs \nA\0 -\0 \fs"Aq\x1B Aq \nls Aq \nls A\bq \nls"A\xF0qAvs Aqs AvAqs \0A\0 \f -\0\x07s"Aq\x1B Aq \0ls Aq \0ls A\bq \0ls"A\xF0qAvs Aqs AvAqs:\0\0 A\bj! Aj! \rAj"\rA\xCE\0G\r\0\v A\xE0\xB2:j \bA\xD6\0lj"\0 \xFD\0\xC0\xF2A A\xF0\x9A:j \bA\xCE\0lj"\xFD\0\0\xFDQ\xFD\v\0 \0 \xFD\0\xD0\xF2A \xFD\0\xFDQ\xFD\v \0 \xFD\0\xE0\xF2A \xFD\0 \xFDQ\xFD\v \0 \xFD\0\xF0\xF2A \xFD\00\xFDQ\xFD\v0 \0 -\0\x80\xF3A -\0@s:\0@ \0 -\0\x81\xF3A -\0As:\0A \0 -\0\x82\xF3A -\0Bs:\0B \0 -\0\x83\xF3A -\0Cs:\0C \0 -\0\x84\xF3A -\0Ds:\0D \0 -\0\x85\xF3A -\0Es:\0E \0 -\0\x86\xF3A -\0Fs:\0F \0 -\0\x87\xF3A -\0Gs:\0G \0 -\0\x88\xF3A -\0Hs:\0H \0 -\0\x89\xF3A -\0Is:\0I \0 -\0\x8A\xF3A -\0Js:\0J \0 -\0\x8B\xF3A -\0Ks:\0K \0 -\0\x8C\xF3A -\0Ls:\0L \0 -\0\x8D\xF3A -\0Ms:\0M \0 )\x007N \bAj"\bA\nG\r\0\vA\0!@  j A\xE0\xB2:j Atj"\0\xFD\0\0" \0\xFD\0"\xFD\r\x07 \v\r\x1BA\xFDk  \xFD\r\0\b\n\f\xFDP\xFD\v\0\0 Aj"A\xA0G\r\0\v  -\0\xA0\xB9: -\0\xA1\xB9:Atr:\0\xA0  -\0\xA2\xB9: -\0\xA3\xB9:Atr:\0\xA1  -\0\xA4\xB9: -\0\xA5\xB9:Atr:\0\xA2  -\0\xA6\xB9: -\0\xA7\xB9:Atr:\0\xA3  -\0\xA8\xB9: -\0\xA9\xB9:Atr:\0\xA4  -\0\xAA\xB9: -\0\xAB\xB9:Atr:\0\xA5  -\0\xAC\xB9: -\0\xAD\xB9:Atr:\0\xA6  -\0\xAE\xB9: -\0\xAF\xB9:Atr:\0\xA7  -\0\xB0\xB9: -\0\xB1\xB9:Atr:\0\xA8  -\0\xB2\xB9: -\0\xB3\xB9:Atr:\0\xA9  -\0\xB4\xB9: -\0\xB5\xB9:Atr:\0\xAA  -\0\xB6\xB9: -\0\xB7\xB9:Atr:\0\xAB  -\0\xB8\xB9: -\0\xB9\xB9:Atr:\0\xAC  -\0\xBA\xB9: -\0\xBB\xB9:Atr:\0\xAD  )\xC0\xAF:7\0\xAE  \xFD\0\xC8\xAF:\xFD\v\0\xB6A\xF8A:\0\0A\0\v A\xA0\xA8:jA\0A\x9C\x07A\xD8\v(\0\0\0 A\xF0\x9A:jA\0A\xA8\rA\xD8\v(\0\0\0 A\xA0\xB48jA\0A\xD0\xE6A\xD8\v(\0\0\0 A\x90\xA48jA\0A\xCDA\xD8\v(\0\0\0 A\0A\xEEA\xD8\v(\0\0\0 A\xA0\xF4\0jA\0A\xE8\xAF7A\xD8\v(\0\0\0 A\xC0\xF2\xC1\0jA\0A\x8EA\xD8\v(\0\0\0 A\x80\xF3\0jA\0A\x91A\xD8\v(\0\0\0 A jA\0A\xE0\xF2\0A\xD8\v(\0\0\0 $\0\v\xA9\f\x7F~{#\0A\xC0\xAF9k"$\0A\xA0 \0)\07\0A\x90 \0\xFD\0\0\0\xFD\v\0A\xB8A:\0\0 A\x80\xE9\0jA\0A\xC8\xA2\xFC\v\0 \0\xFD\0\0\0!  \0)\07\0  \xFD\v\0\0A\xB8A\0:\0\0 A\xD0\xA89jA\xC8 A\x07 A\xE0\xA89j!\0 A\xB8\xCE j!\r@ A\x90\xD6\0j Atj" \0 j\xFD\0\0"\xFD\f\xFDN" A\xFDm"\xFD\r\b \n\v\x1B\f\r\xFD\v   \xFD\r\0\x07\xFD\v\0 Aj"A\xB0G\r\0\v  -\0\x90\xAB9"\0Av:\0\xF1Z  \0Aq:\0\xF0Z  -\0\x91\xAB9"\0Av:\0\xF3Z  \0Aq:\0\xF2Z  -\0\x92\xAB9"\0Av:\0\xF5Z  \0Aq:\0\xF4Z  -\0\x93\xAB9"\0Av:\0\xF7Z  \0Aq:\0\xF6Z  -\0\x94\xAB9"\0Av:\0\xF9Z  \0Aq:\0\xF8Z  -\0\x95\xAB9"\0Av:\0\xFBZ  \0Aq:\0\xFAZ  -\0\x96\xAB9"\0Av:\0\xFDZ  \0Aq:\0\xFCZ  -\0\x97\xAB9"\0Av:\0\xFFZ  \0Aq:\0\xFEZ A\xD0\x8Bj A\xD0\xA89j B\x007@ \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v0 \xFD\f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xFD\v A\xF9!@  A\xD0\x8Bj" Ak"A\'lj"\0)\07\0  \0\xFD\0\0\xFD\v  \0\xFD\0\0\0"\xFD\v\0 A(l j"\0 \xFD\v\0 \0 ) 7 \0 \xFD\0\xFD\v AIE@  Ak"A\'l j"\0)\07\0  \0\xFD\0\0\xFD\v  \0\xFD\0\0\0"\xFD\v\0 A(l j"\0 \xFD\v\0 \0 ) 7 \0 \xFD\0\xFD\v\f\v\vA\0!\0@ \0At!\b \0!@ A\x90\xD6\0j Atj! A\xD0\x8Bj A(lj!\nA\0!@ \r  \bjA(lj!\v  j-\0\0!\fA\0!@ \v At"\x07j" )\0 \x07 \nj)\0"B\0A\x88-\0\0 \fs"\x07Aq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \x07\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857\0 Aj"AG\r\0\v Aj"A\bG\r\0\v Aj! Aj"A\xCE\0G\r\0\v \0Aj"\0A\xCE\0G\r\0\vA\0!\0@ \0At! A\x90\xD6\0j \0j!\bA\0!@ \b At" j-\0\0!\nA\0!@ \r  jA(lj!\v A\x80\xE9\0j  jA(lj!\fA\0!@ \f At"\x07j" )\0 \x07 \vj)\0"B\0A\x88-\0\0 \ns"\x07Aq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \x07\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857\0 Aj"AG\r\0\v Aj"A\bG\r\0\v Aj"A\xCE\0G\r\0\v \0Aj"\0A\bG\r\0\v  \xFD\0\xD0\xA89\xFD\v\0\0 A\xE8\xFA\0j!\bA\0!\0  A\x80\xE9\0jk! A\0!@  A(l"j" \b \0A(ljO\x7FA A\x80\xE9\0j \0A\xE8lj  \0AXljA\xC0jO\v!\n \0At!\v \0A\x98}lj jAI!\f \0!@  A(lj! A\x80\xE9\0j  \vjA(lj!@ \fE@  \xFD\0\0\xFD\v\0  \xFD\0\xFD\v\f\v  )\x007\0  )\b7\b  )7  )7\v  ) 7 @ \0 F\r\0 A\x80\xE9\0j At \0jA(lj! \n@  \xFD\0\0 \xFD\0\0\xFDQ\xFD\v\0  \xFD\0 \xFD\0\xFDQ\xFD\v  ) ) \x857 \f\v  )\0 )\0\x857\0  )\b )\b\x857\b  ) )\x857  ) )\x857  ) ) \x857 \v Aj! Aj"A\bG\r\0\v \0Aj"\0A\bG\r\0\v Aj!\0A\0!@ \0 A\'lj"  A(lj")\07\0  \xFD\0\0\xFD\v\0  \xFD\0\0\0\xFD\v\0\0 \0 Ar"A\'lj"  A(lj")\07\0  \xFD\0\0\xFD\v\0  \xFD\0\0\0\xFD\v\0\0 Aj"A$G\r\0\v A\x90\xD6\0jA\0A\xEEA\xD8\v(\0\0\0 \rA\0A\x80\xC3A\xD8\v(\0\0\0 A\x80\xE9\0jA\0A\xC8\xA2A\xD8\v(\0\0\0 A\xC0\xAF9j$\0A\0\v\0A\xC6A\0A\xF8-\0\0\x1B\v\b\0A\xF4(\0\v\b\0A\xF0(\0\v\b\0A\xEC(\0\v\0\v\v\xBF\0A\x80\b\v\xCA\0\0\0\0\0\0\0\x82\x80\0\0\0\0\0\0\x8A\x80\0\0\0\0\0\x80\0\x80\0\x80\0\0\0\x80\x8B\x80\0\0\0\0\0\0\0\0\x80\0\0\0\0\x81\x80\0\x80\0\0\0\x80 \x80\0\0\0\0\0\x80\x8A\0\0\0\0\0\0\0\x88\0\0\0\0\0\0\0 \x80\0\x80\0\0\0\0\n\0\0\x80\0\0\0\0\x8B\x80\0\x80\0\0\0\0\x8B\0\0\0\0\0\0\x80\x89\x80\0\0\0\0\0\x80\x80\0\0\0\0\0\x80\x80\0\0\0\0\0\x80\x80\0\0\0\0\0\0\x80\n\x80\0\0\0\0\0\0\n\0\0\x80\0\0\0\x80\x81\x80\0\x80\0\0\0\x80\x80\x80\0\0\0\0\0\x80\0\0\x80\0\0\0\0\b\x80\0\x80\0\0\0\x80\b @\x80\x1B6\0A\xD4 \v9\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0A\xB0\n\v\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0A\xD4\v\v@ @\0');
990
+ }
991
+ function getBinarySync(file) {
992
+ return file;
993
+ }
994
+ async function getWasmBinary(binaryFile) {
995
+ return getBinarySync(binaryFile);
996
+ }
997
+ async function instantiateArrayBuffer(binaryFile, imports) {
998
+ try {
999
+ var binary = await getWasmBinary(binaryFile);
1000
+ var instance = await WebAssembly.instantiate(binary, imports);
1001
+ return instance;
1002
+ } catch (reason) {
1003
+ err(`failed to asynchronously prepare wasm: ${reason}`);
1004
+ abort(reason);
1005
+ }
1006
+ }
1007
+ async function instantiateAsync(binary, binaryFile, imports) {
1008
+ return instantiateArrayBuffer(binaryFile, imports);
1009
+ }
1010
+ function getWasmImports() {
1011
+ var imports = { a: wasmImports };
1012
+ return imports;
1013
+ }
1014
+ async function createWasm() {
1015
+ function receiveInstance(instance, module2) {
1016
+ wasmExports = instance.exports;
1017
+ assignWasmExports(wasmExports);
1018
+ updateMemoryViews();
1019
+ return wasmExports;
1020
+ }
1021
+ function receiveInstantiationResult(result2) {
1022
+ return receiveInstance(result2["instance"]);
1023
+ }
1024
+ var info = getWasmImports();
1025
+ if (Module["instantiateWasm"]) {
1026
+ return new Promise((resolve, reject) => {
1027
+ Module["instantiateWasm"](info, (inst, mod2) => {
1028
+ resolve(receiveInstance(inst, mod2));
1029
+ });
1030
+ });
1031
+ }
1032
+ wasmBinaryFile ??= findWasmBinary();
1033
+ var result = await instantiateAsync(wasmBinary, wasmBinaryFile, info);
1034
+ var exports2 = receiveInstantiationResult(result);
1035
+ return exports2;
1036
+ }
1037
+ class ExitStatus {
1038
+ name = "ExitStatus";
1039
+ constructor(status) {
1040
+ this.message = `Program terminated with exit(${status})`;
1041
+ this.status = status;
1042
+ }
1043
+ }
1044
+ var HEAP16;
1045
+ var HEAP32;
1046
+ var HEAP64;
1047
+ var HEAP8;
1048
+ var HEAPF32;
1049
+ var HEAPF64;
1050
+ var HEAPU16;
1051
+ var HEAPU32;
1052
+ var HEAPU64;
1053
+ var HEAPU8;
1054
+ var callRuntimeCallbacks = (callbacks) => {
1055
+ while (callbacks.length > 0) {
1056
+ callbacks.shift()(Module);
1057
+ }
1058
+ };
1059
+ var onPostRuns = [];
1060
+ var addOnPostRun = (cb) => onPostRuns.push(cb);
1061
+ var onPreRuns = [];
1062
+ var addOnPreRun = (cb) => onPreRuns.push(cb);
1063
+ var noExitRuntime = true;
1064
+ var __abort_js = () => abort("");
1065
+ var runtimeKeepaliveCounter = 0;
1066
+ var __emscripten_runtime_keepalive_clear = () => {
1067
+ noExitRuntime = false;
1068
+ runtimeKeepaliveCounter = 0;
1069
+ };
1070
+ var timers = {};
1071
+ var handleException = (e) => {
1072
+ if (e instanceof ExitStatus || e == "unwind") {
1073
+ return EXITSTATUS;
1074
+ }
1075
+ quit_(1, e);
1076
+ };
1077
+ var keepRuntimeAlive = () => noExitRuntime || runtimeKeepaliveCounter > 0;
1078
+ var _proc_exit = (code) => {
1079
+ EXITSTATUS = code;
1080
+ if (!keepRuntimeAlive()) {
1081
+ Module["onExit"]?.(code);
1082
+ ABORT = true;
1083
+ }
1084
+ quit_(code, new ExitStatus(code));
1085
+ };
1086
+ var exitJS = (status, implicit) => {
1087
+ EXITSTATUS = status;
1088
+ _proc_exit(status);
1089
+ };
1090
+ var _exit = exitJS;
1091
+ var maybeExit = () => {
1092
+ if (!keepRuntimeAlive()) {
1093
+ try {
1094
+ _exit(EXITSTATUS);
1095
+ } catch (e) {
1096
+ handleException(e);
1097
+ }
1098
+ }
1099
+ };
1100
+ var callUserCallback = (func) => {
1101
+ if (ABORT) {
1102
+ return;
1103
+ }
1104
+ try {
1105
+ return func();
1106
+ } catch (e) {
1107
+ handleException(e);
1108
+ } finally {
1109
+ maybeExit();
1110
+ }
1111
+ };
1112
+ var _emscripten_get_now = () => performance.now();
1113
+ var __setitimer_js = (which, timeout_ms) => {
1114
+ if (timers[which]) {
1115
+ clearTimeout(timers[which].id);
1116
+ delete timers[which];
1117
+ }
1118
+ if (!timeout_ms) return 0;
1119
+ var id = setTimeout(() => {
1120
+ delete timers[which];
1121
+ callUserCallback(() => __emscripten_timeout(which, _emscripten_get_now()));
1122
+ }, timeout_ms);
1123
+ timers[which] = { id, timeout_ms };
1124
+ return 0;
1125
+ };
1126
+ var readEmAsmArgsArray = [];
1127
+ var readEmAsmArgs = (sigPtr, buf) => {
1128
+ readEmAsmArgsArray.length = 0;
1129
+ var ch;
1130
+ while (ch = HEAPU8[sigPtr++]) {
1131
+ var wide = ch != 105;
1132
+ wide &= ch != 112;
1133
+ buf += wide && buf % 8 ? 4 : 0;
1134
+ readEmAsmArgsArray.push(ch == 112 ? HEAPU32[buf >> 2] : ch == 106 ? HEAP64[buf >> 3] : ch == 105 ? HEAP32[buf >> 2] : HEAPF64[buf >> 3]);
1135
+ buf += wide ? 8 : 4;
1136
+ }
1137
+ return readEmAsmArgsArray;
1138
+ };
1139
+ var runEmAsmFunction = (code, sigPtr, argbuf) => {
1140
+ var args = readEmAsmArgs(sigPtr, argbuf);
1141
+ return ASM_CONSTS[code](...args);
1142
+ };
1143
+ var _emscripten_asm_const_int = (code, sigPtr, argbuf) => runEmAsmFunction(code, sigPtr, argbuf);
1144
+ var abortOnCannotGrowMemory = (requestedSize) => {
1145
+ abort("OOM");
1146
+ };
1147
+ var _emscripten_resize_heap = (requestedSize) => {
1148
+ var oldSize = HEAPU8.length;
1149
+ requestedSize >>>= 0;
1150
+ abortOnCannotGrowMemory(requestedSize);
1151
+ };
1152
+ {
1153
+ if (Module["noExitRuntime"]) noExitRuntime = Module["noExitRuntime"];
1154
+ if (Module["print"]) out = Module["print"];
1155
+ if (Module["printErr"]) err = Module["printErr"];
1156
+ if (Module["wasmBinary"]) wasmBinary = Module["wasmBinary"];
1157
+ if (Module["arguments"]) arguments_ = Module["arguments"];
1158
+ if (Module["thisProgram"]) thisProgram = Module["thisProgram"];
1159
+ if (Module["preInit"]) {
1160
+ if (typeof Module["preInit"] == "function") Module["preInit"] = [Module["preInit"]];
1161
+ while (Module["preInit"].length > 0) {
1162
+ Module["preInit"].shift()();
1163
+ }
1164
+ }
1165
+ }
1166
+ var ASM_CONSTS = { 1500: ($0, $1) => {
1167
+ try {
1168
+ var arr = new Uint8Array($1);
1169
+ globalThis.crypto.getRandomValues(arr);
1170
+ Module.HEAPU8.set(arr, $0);
1171
+ return 0;
1172
+ } catch (e) {
1173
+ return -1;
1174
+ }
1175
+ } };
1176
+ var _mayo_init_buffers, _malloc, _get_msg_buf, _get_sig_buf, _get_sk_buf, _get_pk_buf, _get_sig_len, _keypair_from_seed, _sign, _verify, _free, __emscripten_timeout, memory, __indirect_function_table, wasmMemory;
1177
+ function assignWasmExports(wasmExports2) {
1178
+ _mayo_init_buffers = Module["_mayo_init_buffers"] = wasmExports2["j"];
1179
+ _malloc = Module["_malloc"] = wasmExports2["k"];
1180
+ _get_msg_buf = Module["_get_msg_buf"] = wasmExports2["l"];
1181
+ _get_sig_buf = Module["_get_sig_buf"] = wasmExports2["m"];
1182
+ _get_sk_buf = Module["_get_sk_buf"] = wasmExports2["n"];
1183
+ _get_pk_buf = Module["_get_pk_buf"] = wasmExports2["o"];
1184
+ _get_sig_len = Module["_get_sig_len"] = wasmExports2["p"];
1185
+ _keypair_from_seed = Module["_keypair_from_seed"] = wasmExports2["q"];
1186
+ _sign = Module["_sign"] = wasmExports2["r"];
1187
+ _verify = Module["_verify"] = wasmExports2["s"];
1188
+ _free = Module["_free"] = wasmExports2["t"];
1189
+ __emscripten_timeout = wasmExports2["u"];
1190
+ memory = wasmMemory = wasmExports2["h"];
1191
+ __indirect_function_table = wasmExports2["__indirect_function_table"];
1192
+ }
1193
+ var wasmImports = { d: __abort_js, c: __emscripten_runtime_keepalive_clear, e: __setitimer_js, g: _emscripten_asm_const_int, f: _emscripten_resize_heap, a: _exit, b: _proc_exit };
1194
+ function run() {
1195
+ preRun();
1196
+ function doRun() {
1197
+ Module["calledRun"] = true;
1198
+ if (ABORT) return;
1199
+ initRuntime();
1200
+ readyPromiseResolve?.(Module);
1201
+ Module["onRuntimeInitialized"]?.();
1202
+ postRun();
1203
+ }
1204
+ if (Module["setStatus"]) {
1205
+ Module["setStatus"]("Running...");
1206
+ setTimeout(() => {
1207
+ setTimeout(() => Module["setStatus"](""), 1);
1208
+ doRun();
1209
+ }, 1);
1210
+ } else {
1211
+ doRun();
1212
+ }
1213
+ }
1214
+ var wasmExports;
1215
+ wasmExports = await createWasm();
1216
+ run();
1217
+ if (runtimeInitialized) {
1218
+ moduleRtn = Module;
1219
+ } else {
1220
+ moduleRtn = new Promise((resolve, reject) => {
1221
+ readyPromiseResolve = resolve;
1222
+ readyPromiseReject = reject;
1223
+ });
1224
+ }
1225
+ ;
1226
+ return moduleRtn;
1227
+ };
1228
+ })();
1229
+ if (typeof exports === "object" && typeof module === "object") {
1230
+ module.exports = Mayo1Module2;
1231
+ module.exports.default = Mayo1Module2;
1232
+ } else if (typeof define === "function" && define["amd"]) define([], () => Mayo1Module2);
1233
+ }
1234
+ });
1235
+ var require_mayo2 = __commonJS({
1236
+ "dist/mayo2.cjs"(exports, module) {
1237
+ var Mayo2Module2 = (() => {
1238
+ var _scriptName = globalThis.document?.currentScript?.src;
1239
+ return async function(moduleArg = {}) {
1240
+ var moduleRtn;
1241
+ var Module = moduleArg;
1242
+ var ENVIRONMENT_IS_WEB = !!globalThis.window;
1243
+ var ENVIRONMENT_IS_WORKER = !!globalThis.WorkerGlobalScope;
1244
+ var ENVIRONMENT_IS_NODE = globalThis.process?.versions?.node && globalThis.process?.type != "renderer";
1245
+ var arguments_ = [];
1246
+ var thisProgram = "./this.program";
1247
+ var quit_ = (status, toThrow) => {
1248
+ throw toThrow;
1249
+ };
1250
+ if (typeof __filename != "undefined") {
1251
+ _scriptName = __filename;
1252
+ } else if (ENVIRONMENT_IS_WORKER) {
1253
+ _scriptName = self.location.href;
1254
+ }
1255
+ var scriptDirectory = "";
1256
+ var readAsync, readBinary;
1257
+ if (ENVIRONMENT_IS_NODE) {
1258
+ var fs = __require2("node:fs");
1259
+ scriptDirectory = __dirname + "/";
1260
+ readBinary = (filename) => {
1261
+ filename = isFileURI(filename) ? new URL(filename) : filename;
1262
+ var ret = fs.readFileSync(filename);
1263
+ return ret;
1264
+ };
1265
+ readAsync = async (filename, binary = true) => {
1266
+ filename = isFileURI(filename) ? new URL(filename) : filename;
1267
+ var ret = fs.readFileSync(filename, binary ? void 0 : "utf8");
1268
+ return ret;
1269
+ };
1270
+ if (process.argv.length > 1) {
1271
+ thisProgram = process.argv[1].replace(/\\/g, "/");
1272
+ }
1273
+ arguments_ = process.argv.slice(2);
1274
+ quit_ = (status, toThrow) => {
1275
+ process.exitCode = status;
1276
+ throw toThrow;
1277
+ };
1278
+ } else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {
1279
+ try {
1280
+ scriptDirectory = new URL(".", _scriptName).href;
1281
+ } catch {
1282
+ }
1283
+ {
1284
+ if (ENVIRONMENT_IS_WORKER) {
1285
+ readBinary = (url) => {
1286
+ var xhr = new XMLHttpRequest();
1287
+ xhr.open("GET", url, false);
1288
+ xhr.responseType = "arraybuffer";
1289
+ xhr.send(null);
1290
+ return new Uint8Array(xhr.response);
1291
+ };
1292
+ }
1293
+ readAsync = async (url) => {
1294
+ if (isFileURI(url)) {
1295
+ return new Promise((resolve, reject) => {
1296
+ var xhr = new XMLHttpRequest();
1297
+ xhr.open("GET", url, true);
1298
+ xhr.responseType = "arraybuffer";
1299
+ xhr.onload = () => {
1300
+ if (xhr.status == 200 || xhr.status == 0 && xhr.response) {
1301
+ resolve(xhr.response);
1302
+ return;
1303
+ }
1304
+ reject(xhr.status);
1305
+ };
1306
+ xhr.onerror = reject;
1307
+ xhr.send(null);
1308
+ });
1309
+ }
1310
+ var response = await fetch(url, { credentials: "same-origin" });
1311
+ if (response.ok) {
1312
+ return response.arrayBuffer();
1313
+ }
1314
+ throw new Error(response.status + " : " + response.url);
1315
+ };
1316
+ }
1317
+ } else {
1318
+ }
1319
+ var out = console.log.bind(console);
1320
+ var err = console.error.bind(console);
1321
+ var wasmBinary;
1322
+ var ABORT = false;
1323
+ var EXITSTATUS;
1324
+ var isFileURI = (filename) => filename.startsWith("file://");
1325
+ function binaryDecode(bin) {
1326
+ for (var i = 0, l = bin.length, o = new Uint8Array(l), c; i < l; ++i) {
1327
+ c = bin.charCodeAt(i);
1328
+ o[i] = ~c >> 8 & c;
1329
+ }
1330
+ return o;
1331
+ }
1332
+ var readyPromiseResolve, readyPromiseReject;
1333
+ var runtimeInitialized = false;
1334
+ function updateMemoryViews() {
1335
+ var b = wasmMemory.buffer;
1336
+ HEAP8 = new Int8Array(b);
1337
+ HEAP16 = new Int16Array(b);
1338
+ Module["HEAPU8"] = HEAPU8 = new Uint8Array(b);
1339
+ HEAPU16 = new Uint16Array(b);
1340
+ HEAP32 = new Int32Array(b);
1341
+ HEAPU32 = new Uint32Array(b);
1342
+ HEAPF32 = new Float32Array(b);
1343
+ HEAPF64 = new Float64Array(b);
1344
+ HEAP64 = new BigInt64Array(b);
1345
+ HEAPU64 = new BigUint64Array(b);
1346
+ }
1347
+ function preRun() {
1348
+ if (Module["preRun"]) {
1349
+ if (typeof Module["preRun"] == "function") Module["preRun"] = [Module["preRun"]];
1350
+ while (Module["preRun"].length) {
1351
+ addOnPreRun(Module["preRun"].shift());
1352
+ }
1353
+ }
1354
+ callRuntimeCallbacks(onPreRuns);
1355
+ }
1356
+ function initRuntime() {
1357
+ runtimeInitialized = true;
1358
+ wasmExports["i"]();
1359
+ }
1360
+ function postRun() {
1361
+ if (Module["postRun"]) {
1362
+ if (typeof Module["postRun"] == "function") Module["postRun"] = [Module["postRun"]];
1363
+ while (Module["postRun"].length) {
1364
+ addOnPostRun(Module["postRun"].shift());
1365
+ }
1366
+ }
1367
+ callRuntimeCallbacks(onPostRuns);
1368
+ }
1369
+ function abort(what) {
1370
+ Module["onAbort"]?.(what);
1371
+ what = "Aborted(" + what + ")";
1372
+ err(what);
1373
+ ABORT = true;
1374
+ what += ". Build with -sASSERTIONS for more info.";
1375
+ var e = new WebAssembly.RuntimeError(what);
1376
+ readyPromiseReject?.(e);
1377
+ throw e;
1378
+ }
1379
+ var wasmBinaryFile;
1380
+ function findWasmBinary() {
1381
+ return binaryDecode('\0asm\0\0\05\n`\x7F\x7F\x7F\x7F`\x7F\0`\x7F\x7F`\0\x7F`\0\0`\x7F\x7F\0`\x7F\x7F\x7F\0`\x7F|\x7F`\x7F\x7F\x7F\x7F\0`\x7F|\0+\x07aa\0ab\0ac\0ad\0ae\0\x07af\0ag\0\0\x1B\b\0 \0p\x80\x80 \x7FA\xC0\x92\x80\v\x079h\0i\0 j\0k\0 l\0m\0n\0o\0p\0q\0\x1Br\0s\0t\0\fu\0 \0A\v\f\n\xF8\xC6\xCF~ \0 \0)\xC0 \0)\xA0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xC0 \0 \0)\xC8 \0)\xA8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xC8 \0 \0)\xD0 \0)\xB0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xD0 \0 \0)\xD8 \0)\xB8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xD8 \0 \0)\x80 \0)\xE0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\x80 \0 \0)\x88 \0)\xE8"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\x88 \0 \0)\x90 \0)\xF0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\x90 \0 \0)\x98 \0)\xF8"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\x98 \0 \0)\xE0 \0)\xC0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xE0 \0 \0)\xE8 \0)\xC8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xE8 \0 \0)\xF0 \0)\xD0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xF0 \0 \0)\xF8 \0)\xD8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xF8 \0 \0)\xC0 \0)\x80"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\xC0 \0 \0)\xC8 \0)\x88"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\xC8 \0 \0)\xD0 \0)\x90"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\xD0 \0 \0)\xD8 \0)\x98"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\xD8 \0 \0)\xC0 \0)\xE0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xC0 \0 \0)\xC8 \0)\xE8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xC8 \0 \0)\xD0 \0)\xF0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xD0 \0 \0)\xD8 \0)\xF8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xD8 \0 \0)` \0)\xC0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857` \0 \0)h \0)\xC8"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857h \0 \0)p \0)\xD0"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857p \0 \0)x \0)\xD8"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857x \0 \0)\xE0 \0)\xC0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xE0 \0 \0)\xE8 \0)\xC8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xE8 \0 \0)\xF0 \0)\xD0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xF0 \0 \0)\xF8 \0)\xD8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xF8 \0 \0)\x80 \0)`"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\x80 \0 \0)\x88 \0)h"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\x88 \0 \0)\x90 \0)p"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\x90 \0 \0)\x98 \0)x"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\x98 \0 \0)\xA0 \0)\xE0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xA0 \0 \0)\xA8 \0)\xE8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xA8 \0 \0)\xB0 \0)\xF0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xB0 \0 \0)\xB8 \0)\xF8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xB8 \0 \0)\x80 \0)\x80"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\x80 \0 \0)\x88 \0)\x88"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\x88 \0 \0)\x90 \0)\x90"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\x90 \0 \0)\x98 \0)\x98"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857\x98 \0 \0)\xA0 \0)\xA0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xA0 \0 \0)\xA8 \0)\xA8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xA8 \0 \0)\xB0 \0)\xB0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xB0 \0 \0)\xB8 \0)\xB8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x857\xB8 \0 \0)@ \0)\x80"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857@ \0 \0)H \0)\x88"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857H \0 \0)P \0)\x90"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857P \0 \0)X \0)\x98"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857X \0 \0) \0)\xA0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x85"7 \0 \0)( \0)\xA8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x85"7( \0 \0)0 \0)\xB0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x85"70 \0 \0)8 \0)\xB8"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B ~\x85 B\x88B\xF7\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7\0\x83\x85"78 \0  \0)@"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x85"7 \0  \0)H"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x857( \0 \0)P"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83 \x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x8570 \0 \0)X"B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83 \x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~\x8578  7\0  \0)(7\b  \0)07  \0)87\v\x9D\n\x07\x7F#\0A\xD0k"$\0@A\xC8 "\x07E\r\0 \x07Ak-\0\0AqE\r\0 \x07A\0A\xC8\v \x07"@ A\x88O@@  )\0 )\0\0\x857\0  )\b )\0\b\x857\b  ) )\0\x857  ) )\0\x857  ) )\0 \x857  )( )\0(\x857(  )0 )\x000\x8570  )8 )\x008\x8578  )@ )\0@\x857@  )H )\0H\x857H  )P )\0P\x857P  )X )\0X\x857X  )` )\0`\x857`  )h )\0h\x857h  )p )\0p\x857p  )x )\0x\x857x  )\x80 )\0\x80\x857\x80  A\x88j! A\x88k"A\x87K\r\0\v\v A\x88n!\x07 A\0A\x88\xFC\v\0@ E\r\0 Aq!\n AO@ A\xFCq! @  j  j-\0\0:\0\0  Ar"\bj  \bj-\0\0:\0\0  Ar"\bj  \bj-\0\0:\0\0  Ar"\bj  \bj-\0\0:\0\0 Aj" G\r\0\v \nE\r\vA\0! @  j  j-\0\0:\0\0 Aj! Aj" \nG\r\0\v\v  jA:\0\0  -\0\x87A\x80r:\0\x87  )\0 )\0\x857\0  )\b )\b\x857\b  ) )\x857  ) )\x857  ) ) \x857  )( )(\x857(  )0 )0\x8570  )8 )8\x8578  )@ )@\x857@  )H )H\x857H  )P )P\x857P  )X )X\x857X  )` )`\x857`  )h )h\x857h  )p )p\x857p  )x )x\x857x  )\x80 )\x80\x857\x80 A\x88O@ \0! \x07!@   )\x007\0\0  )\b7\0\b  )7\0  )7\0  ) 7\0  )(7\0(  )07\x000  )87\x008  )@7\0@  )H7\0H  )P7\0P  )X7\0X  )`7\0`  )h7\0h  )p7\0p  )x7\0x  )\x807\0\x80 A\x88j! Ak"\r\0\v\v@  \x07A\x88l"F\r\0   )\x007\0  )\b7\b  )7  )7  ) 7  )(7(  )070  )878  )@7@  )H7H  )P7P  )X7X  )`7`  )h7h  )p7p  )x7x  )\x807\x80  k"E\r\0 \0 j  \xFC\n\0\0\v \f A\xD0j$\0\vA\xEF\0\0\0\v\xC1\'\v\x7F#\0Ak"\n$\0@@@@@@@@@@ \0A\xF4M@A\xF4\f(\0"A \0A\vjA\xF8q \0A\vI\x1B"Av"\0v"Aq@@ A\x7FsAq \0j"At"A\x9C\rj"\0 (\xA4\r"(\b"F@A\xF4\f A~ wq6\0\f\v  \x006\f \0 6\b\v A\bj!\0  Ar6  j" (Ar6\f\v\v A\xFC\f(\0"\bM\r @@A \0t"A\0 kr  \0tqh"At"A\x9C\rj" (\xA4\r"\0(\b"F@A\xF4\f A~ wq"6\0\f\v  6\f  6\b\v \0 Ar6 \0 j"\x07  k"Ar6 \0 j 6\0 \b@ \bAxqA\x9C\rj!A\x88\r(\0!\x7F A \bAvt"qE@A\xF4\f  r6\0 \f\v (\b\v!  6\b  6\f  6\f  6\b\v \0A\bj!\0A\x88\r \x076\0A\xFC\f 6\0\f\v\vA\xF8\f(\0"\vE\r \vhAt(\xA4"(Axq k! !@@ ("\0E@ ("\0E\r\v \0(Axq k"   I"\x1B! \0  \x1B! \0!\f\v\v (!  (\f"\0G@ (\b" \x006\f \0 6\b\f\n\v ("\x7F Aj ("E\r Aj\v!@ !\x07 "\0Aj! \0("\r\0 \0Aj! \0("\r\0\v \x07A\x006\0\f \vA\x7F! \0A\xBF\x7FK\r\0 \0A\vj"Axq!A\xF8\f(\0"\x07E\r\0A!\bA\0 k! \0A\xF4\xFF\xFF\x07M@ A& A\bvg"\0kvAq \0AtkA>j!\b\v@@@ \bAt(\xA4"E@A\0!\0\f\vA\0!\0 A \bAvkA\0 \bAG\x1Bt!@@ (Axq k" O\r\0 ! "\r\0A\0! !\0\f\v \0 ("   AvAqj("F\x1B \0 \x1B!\0 At! \r\0\v\v \0 rE@A\0!A \bt"\0A\0 \0kr \x07q"\0E\r \0hAt(\xA4!\0\v \0E\r\v@ \0(Axq k" I!   \x1B! \0  \x1B! \0("\x7F  \0(\v"\0\r\0\v\v E\r\0 A\xFC\f(\0 kO\r\0 (!\b  (\f"\0G@ (\b" \x006\f \0 6\b\f\b\v ("\x7F Aj ("E\r Aj\v!@ ! "\0Aj! \0("\r\0 \0Aj! \0("\r\0\v A\x006\0\f\x07\v A\xFC\f(\0"M@A\x88\r(\0!\0@  k"AO@ \0 j" Ar6 \0 j 6\0 \0 Ar6\f\v \0 Ar6 \0 j" (Ar6A\0!A\0!\vA\xFC\f 6\0A\x88\r 6\0 \0A\bj!\0\f \v A\x80\r(\0"I@A\x80\r  k"6\0A\x8C\rA\x8C\r(\0"\0 j"6\0  Ar6 \0 Ar6 \0A\bj!\0\f \vA\0!\0 A/j"\x7FA\xCC(\0@A\xD4(\0\f\vA\xD8B\x7F7\0A\xD0B\x80\xA0\x80\x80\x80\x807\0A\xCC \nA\fjApqA\xD8\xAA\xD5\xAAs6\0A\xE0A\x006\0A\xB0A\x006\0A\x80 \v"j"A\0 k"\x07q" M\r\bA\xAC(\0"@A\xA4(\0"\b j" \bM\r  I\r \v@A\xB0-\0\0AqE@@@@@A\x8C\r(\0"@A\xB4!\0@ \0(\0"\b M@  \b \0(jI\r\v \0(\b"\0\r\0\v\vA\0\n"A\x7FF\r !A\xD0(\0"\0Ak" q@  k  jA\0 \0kqj!\v  M\rA\xAC(\0"\0@A\xA4(\0" j"\x07 M\r \0 \x07I\r\v \n"\0 G\r\f\v  k \x07q"\n" \0(\0 \0(jF\r !\0\v \0A\x7FF\r A0j M@ \0!\f\vA\xD4(\0"  kjA\0 kq"\nA\x7FF\r  j! \0!\f\v A\x7FG\r\vA\xB0A\xB0(\0Ar6\0\v \n!A\0\n!\0 A\x7FF\r \0A\x7FF\r \0 M\r \0 k" A(jM\r\vA\xA4A\xA4(\0 j"\x006\0A\xA8(\0 \0I@A\xA8 \x006\0\v@A\x8C\r(\0"@A\xB4!\0@  \0(\0" \0("jF\r \0(\b"\0\r\0\v\f\vA\x84\r(\0"\0A\0 \0 M\x1BE@A\x84\r 6\0\vA\0!\0A\xB8 6\0A\xB4 6\0A\x94\rA\x7F6\0A\x98\rA\xCC(\x006\0A\xC0A\x006\0@ \0At" A\x9C\rj"6\xA4\r  6\xA8\r \0Aj"\0A G\r\0\vA\x80\r A(k"\0Ax kA\x07q"k"6\0A\x8C\r  j"6\0  Ar6 \0 jA(6A\x90\rA\xDC(\x006\0\f\v  M\r  K\r \0(\fA\bq\r \0  j6A\x8C\r Ax kA\x07q"\0j"6\0A\x80\rA\x80\r(\0 j" \0k"\x006\0  \0Ar6  jA(6A\x90\rA\xDC(\x006\0\f\vA\0!\0\f\vA\0!\0\f\vA\x84\r(\0 K@A\x84\r 6\0\v  j!A\xB4!\0@@  \0(\0"G@ \0(\b"\0\r\f\v\v \0-\0\fA\bqE\r\vA\xB4!\0@@ \0(\0" M@   \0(j"I\r\v \0(\b!\0\f\v\vA\x80\r A(k"\0Ax kA\x07q"k"\x076\0A\x8C\r  j"6\0  \x07Ar6 \0 jA(6A\x90\rA\xDC(\x006\0  A\' kA\x07qjA/k"\0 \0 AjI\x1B"A\x1B6 A\xBC)\x007 A\xB4)\x007\bA\xBC A\bj6\0A\xB8 6\0A\xB4 6\0A\xC0A\x006\0 Aj!\0@ \0A\x076 \0A\bj \0Aj!\0 I\r\0\v  F\r\0  (A~q6   k"Ar6  6\0\x7F A\xFFM@ A\xF8qA\x9C\rj!\0\x7FA\xF4\f(\0"A Avt"qE@A\xF4\f  r6\0 \0\f\v \0(\b\v! \0 6\b  6\fA\f!A\b\f\vA!\0 A\xFF\xFF\xFF\x07M@ A& A\bvg"\0kvAq \0AtrA>s!\0\v  \x006 B\x007 \0AtA\xA4j!@@A\xF8\f(\0"A \0t"qE@A\xF8\f  r6\0  6\0\f\v A \0AvkA\0 \0AG\x1Bt!\0 (\0!@ "(Axq F\r \0Av! \0At!\0  Aqj"("\r\0\v  6\v  6A\b! "!\0A\f\f\v (\b"\0 6\f  6\b  \x006\bA\0!\0A!A\f\v j 6\0  j \x006\0\vA\x80\r(\0"\0 M\r\0A\x80\r \0 k"6\0A\x8C\rA\x8C\r(\0"\0 j"6\0  Ar6 \0 Ar6 \0A\bj!\0\f\vA\xF0\fA06\0A\0!\0\f\v \0 6\0 \0 \0( j6 Ax kA\x07qj"\b Ar6 Ax kA\x07qj"  \bj"k!\x07@A\x8C\r(\0 F@A\x8C\r 6\0A\x80\rA\x80\r(\0 \x07j"\x006\0  \0Ar6\f\vA\x88\r(\0 F@A\x88\r 6\0A\xFC\fA\xFC\f(\0 \x07j"\x006\0  \0Ar6 \0 j \x006\0\f\v ("\0AqAF@ \0Axq! (\f!@ \0A\xFFM@ (\b" F@A\xF4\fA\xF4\f(\0A~ \0Avwq6\0\f\v  6\f  6\b\f\v (!@  G@ (\b"\0 6\f  \x006\b\f\v@ ("\0\x7F Aj ("\0E\r Aj\v!@ ! \0"Aj! \0("\0\r\0 Aj! ("\0\r\0\v A\x006\0\f\vA\0!\v E\r\0@ ("\0At"(\xA4 F@ A\xA4j 6\0 \rA\xF8\fA\xF8\f(\0A~ \0wq6\0\f\v@  (F@  6\f\v  6\v E\r\v  6 ("\0@  \x006 \0 6\v ("\0E\r\0  \x006 \0 6\v \x07 j!\x07  j"(!\0\v  \0A~q6  \x07Ar6  \x07j \x076\0 \x07A\xFFM@ \x07A\xF8qA\x9C\rj!\0\x7FA\xF4\f(\0"A \x07Avt"qE@A\xF4\f  r6\0 \0\f\v \0(\b\v! \0 6\b  6\f  \x006\f  6\b\f\vA! \x07A\xFF\xFF\xFF\x07M@ \x07A& \x07A\bvg"\0kvAq \0AtrA>s!\v  6 B\x007 AtA\xA4j!\0@@A\xF8\f(\0"A t"qE@A\xF8\f  r6\0 \0 6\0\f\v \x07A AvkA\0 AG\x1Bt! \0(\0!@ "\0(Axq \x07F\r Av! At! \0 Aqj"("\r\0\v  6\v  \x006  6\f  6\b\f\v \0(\b" 6\f \0 6\b A\x006  \x006\f  6\b\v \bA\bj!\0\f\v@ \bE\r\0@ ("At"(\xA4 F@ A\xA4j \x006\0 \0\rA\xF8\f \x07A~ wq"\x076\0\f\v@  \b(F@ \b \x006\f\v \b \x006\v \0E\r\v \0 \b6 ("@ \0 6  \x006\v ("E\r\0 \0 6  \x006\v@ AM@   j"\0Ar6 \0 j"\0 \0(Ar6\f\v  Ar6  j" Ar6  j 6\0 A\xFFM@ A\xF8qA\x9C\rj!\0\x7FA\xF4\f(\0"A Avt"qE@A\xF4\f  r6\0 \0\f\v \0(\b\v! \0 6\b  6\f  \x006\f  6\b\f\vA!\0 A\xFF\xFF\xFF\x07M@ A& A\bvg"\0kvAq \0AtrA>s!\0\v  \x006 B\x007 \0AtA\xA4j!@@ \x07A \0t"qE@A\xF8\f  \x07r6\0  6\0  6\f\v A \0AvkA\0 \0AG\x1Bt!\0 (\0!@ "(Axq F\r \0Av! \0At!\0  Aqj"\x07("\r\0\v \x07 6  6\v  6\f  6\b\f\v (\b"\0 6\f  6\b A\x006  6\f  \x006\b\v A\bj!\0\f\v@ E\r\0@ ("At"(\xA4 F@ A\xA4j \x006\0 \0\rA\xF8\f \vA~ wq6\0\f\v@  (F@ \x006\f\v \x006\v \0E\r\v \0 6 ("@ \0 6  \x006\v ("E\r\0 \0 6  \x006\v@ AM@   j"\0Ar6 \0 j"\0 \0(Ar6\f\v  Ar6  j" Ar6  j 6\0 \b@ \bAxqA\x9C\rj!\0A\x88\r(\0!\x7FA \bAvt"\x07 qE@A\xF4\f  \x07r6\0 \0\f\v \0(\b\v! \0 6\b  6\f  \x006\f  6\b\vA\x88\r 6\0A\xFC\f 6\0\v A\bj!\0\v \nAj$\0 \0\vT\x7F~@A\xD4\v(\0"\xAD \0\xADB\x07|B\xF8\xFF\xFF\xFF\x83|"B\xFF\xFF\xFF\xFFX@ \xA7"\0?\0AtM\r \0\r\vA\xF0\fA06\0A\x7F\vA\xD4\v \x006\0 \v\xB4~ \0 \0)8"B\x86B\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83 \0)0"B\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83\x84"B\x86B\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 \0)("B\x86B\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83 \0) "B\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83\x84"\bB\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 \0)"\x07B\x86B\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83 \0)" B\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83\x84"\nB\x86B\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 \0)\b"\vB\x86B\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83 \0)\0"\fB\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83\x84"\rB\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"B\x88B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x847 \0 B\x86B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x847\0 \0 B\x88B\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83 B\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83\x84"B\x86B\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 B\x88B\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83 B\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83\x84"B\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 B\x88B\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83 \x07B\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83\x84"B\x86B\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 \fB\x88B\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\0\x83 \vB\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA\x7F\x83\x84"B\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"\x07B\x88B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x847( \0 B\x86B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 \x07B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x847\b \0 B\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 \bB\x88B\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 \nB\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 \rB\x88B\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"B\x88B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x8470 \0 B\x86B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x847 \0 B\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 B\x88B\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 B\xCC\x99\xB3\xE6\xCC\x99\xB3\xE6L\x83 B\x88B\xB3\xE6\xCC\x99\xB3\xE6\xCC\x993\x83\x84"B\x88B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x8478 \0 B\x86B\xF0\xE1\xC3\x87\x8F\x9E\xBC\xF8p\x83 B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83\x847\v\xDF\v\b\x7F@ \0E\r\0 \0A\bk" \0Ak(\0"Axq"\0j!@ Aq\r\0 AqE\r  (\0"k"A\x84\r(\0I\r \0 j!\0@@@A\x88\r(\0 G@ (\f! A\xFFM@  (\b"G\rA\xF4\fA\xF4\f(\0A~ Avwq6\0\f\v (!\x07  G@ (\b" 6\f  6\b\f\v ("\x7F Aj ("E\r Aj\v!@ ! "Aj! ("\r\0 Aj! ("\r\0\v A\x006\0\f\v ("AqAG\rA\xFC\f \x006\0  A~q6  \0Ar6  \x006\0\v  6\f  6\b\f\vA\0!\v \x07E\r\0@ ("At"(\xA4 F@ A\xA4j 6\0 \rA\xF8\fA\xF8\f(\0A~ wq6\0\f\v@  \x07(F@ \x07 6\f\v \x07 6\v E\r\v  \x076 ("@  6  6\v ("E\r\0  6  6\v  O\r\0 ("AqE\r\0@@@@ AqE@A\x8C\r(\0 F@A\x8C\r 6\0A\x80\rA\x80\r(\0 \0j"\x006\0  \0Ar6 A\x88\r(\0G\rA\xFC\fA\x006\0A\x88\rA\x006\0\vA\x88\r(\0"\x07 F@A\x88\r 6\0A\xFC\fA\xFC\f(\0 \0j"\x006\0  \0Ar6 \0 j \x006\0\v Axq \0j!\0 (\f! A\xFFM@ (\b" F@A\xF4\fA\xF4\f(\0A~ Avwq6\0\f\v  6\f  6\b\f\v (!\b  G@ (\b" 6\f  6\b\f\v ("\x7F Aj ("E\r Aj\v!@ ! "Aj! ("\r\0 Aj! ("\r\0\v A\x006\0\f\v  A~q6  \0Ar6 \0 j \x006\0\f\vA\0!\v \bE\r\0@ ("At"(\xA4 F@ A\xA4j 6\0 \rA\xF8\fA\xF8\f(\0A~ wq6\0\f\v@  \b(F@ \b 6\f\v \b 6\v E\r\v  \b6 ("@  6  6\v ("E\r\0  6  6\v  \0Ar6 \0 j \x006\0  \x07G\r\0A\xFC\f \x006\0\v \0A\xFFM@ \0A\xF8qA\x9C\rj!\x7FA\xF4\f(\0"A \0Avt"\0qE@A\xF4\f \0 r6\0 \f\v (\b\v!\0  6\b \0 6\f  6\f  \x006\b\vA! \0A\xFF\xFF\xFF\x07M@ \0A& \0A\bvg"kvAq AtrA>s!\v  6 B\x007 AtA\xA4j!\x7F@\x7FA\xF8\f(\0"A t"qE@A\xF8\f  r6\0  6\0A!A\b\f\v \0A AvkA\0 AG\x1Bt! (\0!@ "(Axq \0F\r Av! At!  Aqj"("\r\0\v  6A! !A\b\v!\0 "\f\v (\b" 6\f  6\bA!\0A\b!A\0\v!  j 6\0  6\f \0 j 6\0A\x94\rA\x94\r(\0Ak"\0A\x7F \0\x1B6\0\v\v\xC0\x1B~ \0 \0)\b"\x07 \0)8"\x85"\r \0)" \0) "\b\x85"\x85" \0)\x85" \0)0"\x85"  \x85"\n \0)\0"\x85" \x07  \0)( \x85"\x85"\x07\x85"  \x85"\x85"\x83\x85 \n\x83"\v\x85  \n\x85"   \b\x85"\f\x85"\x85" \x83  \f\x83"\x85"\x85"  \x85" \x07 \x83\x85  \r\x83"\x85 \r\x85 \x85"\x83"  \x83 \x85" \x07 \b\x85" \x83 \x85 \x85 \v\x85\x85"\v\x85     \x85"  \x07\x85"\x83\x85\x85 \x85\x85" \x85\x83"\b \x85 \x83" \x85" \x83   \b\x85"\b\x85" \x83"\x85    \x85"\x85  \v \x85"\x83 \v\x85"\x83 \x85" \x85"  \b\x85"\v\x85"\x83" \v \f\x83\x85"\f  \x07\x83"\x07\x85"\x85"\x1B  \x83"   \x85"\x83"  \v\x83\x85\x85"\x8578 \0 \f  \x83"\f  \x83\x85"   \n\x83\x85"\n  \r\x83"\r  \b\x83"\x85\x85"\x85\x85B\x7F\x857\0 \0 \n \x1B \x83\x85"\n\x85" 7 \0  \f\x85 \n\x857 \0   \x83\x85 \x85"   \x83\x85\x85"  \b \x83\x85\x857 \0  \r\x85 \x85B\x7F\x857\b \0   \x07\x85"  \x83\x85 \x85\x85B\x7F\x857( \0  \x85B\x7F\x8570\v\xD8\f.~\x7F \0)\xC0! \0)\xB8! \0)\xB0! \0)\xA8!\b \0)\xA0! \0)\x98! \0)\x90! \0)\x88! \0)\x80!\n \0)x! \0)p! \0)h! \0)`! \0)X! \0)P!\v \0)H! \0)@!\r \0)8! \0)0! \0)(!\x07 \0) !\x1B \0)!\f \0)! \0)\b! \0)\0!@  \x85 \x85 \r\x85 \f\x85"  \x85 \v\x85 \x07\x85 \x85"B\x89\x85" \x1B\x85B\x1B\x89"   \x85 \x85 \x85 \x85"B\x89\x85" \x85B\n\x89" \x85 \x85 \x85 \x1B\x85" \b \n\x85 \x85 \x85 \x85"!B\x89\x85" \x07\x85B$\x89"\x07B\x7F\x85\x83\x85""  \x85B\x89"\x1B   B\x89\x85"\x85B\x89"  ! B\x89\x85"\x85B\x89"B\x7F\x85\x83\x85"!\x85  \f\x85B\x89"\f  \v\x85B\x89"\v  \x85B\x89"B\x7F\x85\x83\x85"#\x85  \x85B>\x89"  \x85B\'\x89"  \r\x85B7\x89" B\x7F\x85\x83\x85"$\x85  \x85" /At"0)\x80\b  \x85B+\x89"  \x85B,\x89"B\x7F\x85\x83\x85\x85"%\x85"\rB\x89  \x85B\x89"   \x85B8\x89"B\x7F\x85\x83\x85"&  \x85B\x89"   \x85B\x89"B\x7F\x85\x83\x85"\'  \x85B)\x89"  \b \x85B\x89"\bB\x7F\x85\x83\x85" \x85B\b\x89" \x1B  \x85B\x89"B\x7F\x85\x83\x85"( \n \x85B-\x89"\n \f  \x85B=\x89"B\x7F\x85\x83\x85"\x85\x85\x85\x85")\x85" \b B\x7F\x85\x83\x85"\x85B\x89" \r  B\x7F\x85\x83 \x85"*  B\x7F\x85\x83 \x85"  \b B\x7F\x85\x83\x85"+  \nB\x7F\x85\x83 \v\x85",   B\x7F\x85\x83\x85"-\x85\x85\x85\x85"\bB\x89\x85"\r  \n \vB\x7F\x85\x83\x85"\n\x85B,\x89" % \x07 B\x7F\x85\x83 \x85"  \fB\x7F\x85\x83 \x85"  \x1BB\x7F\x85\x83 \x85"\v   B\x7F\x85\x83\x85". \x85\x85\x85\x85"  B\x7F\x85\x83 \x85" B\x7F\x85\x83 \x85"  B\x7F\x85\x83 \x07\x85" \n   B\x7F\x85\x83\x85"\x85\x85\x85\x85" B\x89\x85"\x85"B\x7F\x85\x83\x85!\x1B \r \x85B\x89" B\x89 \b\x85"\f \x85B7\x89"  )B\x89 \x85"\x85B>\x89" B\x7F\x85\x83\x85!  "\x85B)\x89"\b B\x7F\x85\x83\x85! \v \x85B\'\x89"  \bB\x7F\x85\x83\x85! \b B\x7F\x85\x83 \x85!\b  B\x7F\x85\x83 \x85!  \f\x85B8\x89"  #\x85B$\x89"  .\x85B\x1B\x89"B\x7F\x85\x83\x85!  -\x85B\x89"\n  B\x7F\x85\x83\x85!  \r\x85B\n\x89"  \nB\x7F\x85\x83\x85! \n B\x7F\x85\x83 \x85!\n   B\x7F\x85\x83\x85!  $\x85B\x89"  ,\x85B\x89"\v  \r\x85B\x89"B\x7F\x85\x83\x85!  \x85B\b\x89"  B\x7F\x85\x83\x85! \f (\x85B\x89"\x07  B\x7F\x85\x83\x85!  \x07B\x7F\x85\x83 \v\x85!  \x07 \vB\x7F\x85\x83\x85!\v  +\x85B=\x89"  \x85B\x89"\x07 \f \'\x85B\x89"B\x7F\x85\x83\x85! \r \x85B-\x89"  B\x7F\x85\x83\x85!\r  !\x85B\x89"  B\x7F\x85\x83\x85! \x07  B\x7F\x85\x83\x85!  \x07B\x7F\x85\x83 \x85!\x07 \f &\x85B\x89"  B\x7F\x85\x83\x85!\f  *\x85B+\x89"  B\x7F\x85\x83\x85!   B\x7F\x85\x83\x85! 0)\x88\b  B\x7F\x85\x83\x85 \x85! /AI /Aj!/\r\0\v \0 7\xC0 \0 7\xB8 \0 7\xB0 \0 \b7\xA8 \0 7\xA0 \0 7\x98 \0 7\x90 \0 7\x88 \0 \n7\x80 \0 7x \0 7p \0 7h \0 7` \0 7X \0 \v7P \0 7H \0 \r7@ \0 78 \0 70 \0 \x077( \0 \x1B7 \0 \f7 \0 7 \0 7\b \0 7\0\v\xCC \b\x7F~#\0A\xE0k"$\0A\xC0 "\x07@  )\0\b7\xF8  )\0\x007\xF0 (\xFC!A!@ A\xF0j Atj" \x7F  B\x0078 B\x0070 B\x007( B\x007 B\x007 B\x007 B\x007\b  Aw\xAD7\0 \v \r \v -\0\xC0 (\0s\v Ak(\0s"6\0A\0 Aj" AF"\x1B!  j! Aj"A,G\r\0\vA\0!A\0!@  A\xF0j Atj"5\f"\nB\x86 \n\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\nB\x86 \nB\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83 5"\nB\x86 \n\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\nB\b\x86 \n\x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x84"\n7\xD0  5\b"\vB\x86 \v\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\vB\x86 \vB\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83 5\0"\vB\x86 \v\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\vB\b\x86 \v\x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x84"\v7\xB0  \n7\xE8  \n7\xE0  \n7\xD8  \v7\xC8  \v7\xC0  \v7\xB8 A\xB0j\v  Atj" )\xC8B\x88\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x7F\x83 )\xC0B\xC4\x88\x91\xA2\xC4\x88\x91\xA2\xC4\0\x83 )\xB8B\xA2\xC4\x88\x91\xA2\xC4\x88\x91"\x83 )\xB0B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83\x84\x84\x847\0  )\xE8B\x88\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x7F\x83 )\xE0B\xC4\x88\x91\xA2\xC4\x88\x91\xA2\xC4\0\x83 )\xD8B\xA2\xC4\x88\x91\xA2\xC4\x88\x91"\x83 )\xD0B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83\x84\x84\x847\b Aj! A(I Aj!\r\0\vA\0!A\0!@ \x07 Atj"  Atj)\0"\nB\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~7\0  \nB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~7  \nB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~7  \nB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~7\b Aj! AG Aj!\r\0\v B\x80\x80\x80\x80\x80\x80\x80\x807\x98 B\x007\x90 B\x007\xA0 B\x007\xF0 B\x007\xF8 B\x007\x80 B\x80\x80\x80\x80\x80\x80\x80\x807\xA8 B\x80\x80\x80\x80\x80\x80\x80\x807\x88A!A!A!A\0!A\x80\x98!@ \0 A\xF0j"\b \x07  Aj"A\xFF\x81\xFC\x07qA\bx AxA\xFF\x81\xFC\x07qr6\xAC  Aj"A\xFF\x81\xFC\x07qA\bx AxA\xFF\x81\xFC\x07qr6\x9C  Aj"A\xFF\x81\xFC\x07qA\bx AxA\xFF\x81\xFC\x07qr6\x8C  Aj"A\xFF\x81\xFC\x07qA\bx AxA\xFF\x81\xFC\x07qr6\xFC \0A@k!\0 A\x80J A@j!\r\0\v  \b \x07A\0!@ \0 j  j-\0\0:\0\0 \0 Ar"j  j-\0\0:\0\0 \0 Ar"j  j-\0\0:\0\0 \0 Ar"j  j-\0\0:\0\0 Aj"A\xC0\0G\r\0\v \x07\f A\xE0j$\0\vA\xEF\0\0\0\v\xC4~ \0 \0)\0"B\x88B\x80\x80\xFC\xFF\0\x83 B\xFF\xFF\x83\x84 B\f\x86B\x80\x80\x80\x80\x83\x84 B\b\x88B\x80\x80\x80\x80\xF0\x83\x84 B\b\x86B\x80\x80\x80\x80\x80\xE0?\x83\x84 B\f\x88B\x80\x80\x80\x80\x80\x80\xC0\x07\x83\x84 B\x86B\x80\x80\x80\x80\x80\x80\x80x\x83\x847\0 \0 \0)\b"B\x88B\x80\x80\xFC\xFF\0\x83 B\xFF\xFF\x83\x84 B\f\x86B\x80\x80\x80\x80\x83\x84 B\b\x88B\x80\x80\x80\x80\xF0\x83\x84 B\b\x86B\x80\x80\x80\x80\x80\xE0?\x83\x84 B\f\x88B\x80\x80\x80\x80\x80\x80\xC0\x07\x83\x84 B\x86B\x80\x80\x80\x80\x80\x80\x80x\x83\x847\b \0 \0)"B\x88B\x80\x80\xFC\xFF\0\x83 B\xFF\xFF\x83\x84 B\f\x86B\x80\x80\x80\x80\x83\x84 B\b\x88B\x80\x80\x80\x80\xF0\x83\x84 B\b\x86B\x80\x80\x80\x80\x80\xE0?\x83\x84 B\f\x88B\x80\x80\x80\x80\x80\x80\xC0\x07\x83\x84 B\x86B\x80\x80\x80\x80\x80\x80\x80x\x83\x847 \0 \0)"B\x88B\x80\x80\xFC\xFF\0\x83 B\xFF\xFF\x83\x84 B\f\x86B\x80\x80\x80\x80\x83\x84 B\b\x88B\x80\x80\x80\x80\xF0\x83\x84 B\b\x86B\x80\x80\x80\x80\x80\xE0?\x83\x84 B\f\x88B\x80\x80\x80\x80\x80\x80\xC0\x07\x83\x84 B\x86B\x80\x80\x80\x80\x80\x80\x80x\x83\x847 \0 \0) "B\x88B\x80\x80\xFC\xFF\0\x83 B\xFF\xFF\x83\x84 B\f\x86B\x80\x80\x80\x80\x83\x84 B\b\x88B\x80\x80\x80\x80\xF0\x83\x84 B\b\x86B\x80\x80\x80\x80\x80\xE0?\x83\x84 B\f\x88B\x80\x80\x80\x80\x80\x80\xC0\x07\x83\x84 B\x86B\x80\x80\x80\x80\x80\x80\x80x\x83\x847 \0 \0)("B\x88B\x80\x80\xFC\xFF\0\x83 B\xFF\xFF\x83\x84 B\f\x86B\x80\x80\x80\x80\x83\x84 B\b\x88B\x80\x80\x80\x80\xF0\x83\x84 B\b\x86B\x80\x80\x80\x80\x80\xE0?\x83\x84 B\f\x88B\x80\x80\x80\x80\x80\x80\xC0\x07\x83\x84 B\x86B\x80\x80\x80\x80\x80\x80\x80x\x83\x847( \0 \0)0"B\x88B\x80\x80\xFC\xFF\0\x83 B\xFF\xFF\x83\x84 B\f\x86B\x80\x80\x80\x80\x83\x84 B\b\x88B\x80\x80\x80\x80\xF0\x83\x84 B\b\x86B\x80\x80\x80\x80\x80\xE0?\x83\x84 B\f\x88B\x80\x80\x80\x80\x80\x80\xC0\x07\x83\x84 B\x86B\x80\x80\x80\x80\x80\x80\x80x\x83\x8470 \0 \0)8"B\x88B\x80\x80\xFC\xFF\0\x83 B\xFF\xFF\x83\x84 B\f\x86B\x80\x80\x80\x80\x83\x84 B\b\x88B\x80\x80\x80\x80\xF0\x83\x84 B\b\x86B\x80\x80\x80\x80\x80\xE0?\x83\x84 B\f\x88B\x80\x80\x80\x80\x80\x80\xC0\x07\x83\x84 B\x86B\x80\x80\x80\x80\x80\x80\x80x\x83\x8478\v\xED\x7F~#\0A@j"$\0 58! 50!\n 5<! 54! 5(!\x07 5 !\f 5,!\v 5$!\r 5!\b 5! 5! 5! 5\b! 5\0!  5\f"B\x86 \x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x86 B\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83 5"B\x86 \x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\b\x86 \x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x847   B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x86 B\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83  B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\b\x86 \x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x847\0   B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x86 B\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83  B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\b\x86 \x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x847(  \b \bB\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\bB\x86 \bB\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83  B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\bB\b\x86 \b\x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x847\b  \v \vB\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\vB\x86 \vB\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83 \r \rB\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\vB\b\x86 \v\x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x8470  \x07 \x07B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\x07B\x86 \x07B\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83 \f \fB\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\x07B\b\x86 \x07\x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x847  B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83" B\x86 B\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83  B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83" B\b\x86 \x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x8478   B\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x86 B\b\x86\x84B\x80\xFE\x83\xF8\x8F\xE0\xBF\x80\x7F\x83 \n \nB\x86\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\b\x86 \x84B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83\x847 \v  )\0 )\0\x857\0  )\b )\b\x857\b  ) )\x857  ) )\x857  ) ) \x857  )( )(\x857(  )0 )0\x8570  )8 )8\x8578A!@ \r   )8"B0\x89"\n \x85"  Atj")\0 )\0"B0\x89"\x07 \x85"B \x89\x85 \x07\x85\x857\0    )\b )\b"B0\x89"\x07 \x85"B \x89\x85\x85 \n\x85\x85 \x07\x857\b   ) )"B0\x89"\x07 \x85"B \x89\x85 \x07\x85\x857    ) )"B0\x89"\x07 \x85"B \x89\x85\x85 \n\x85\x85 \x07\x857    ) ) "B0\x89"\x07 \x85"B \x89\x85\x85 \n\x85\x85 \x07\x857   )( )("B0\x89" \x85"B \x89\x85 \x85\x857(   )0 )0"B0\x89" \x85"B \x89\x85 \x85\x8570  )8 B \x89\x85 \n\x85 \x8578 Aj"A\nG\r\0\v \r   )\0 )\x80\x857\0  )\b )\x88\x857\b  ) )\x90\x857  ) )\x98\x857  ) )\xA0\x857  )( )\xA8\x857(  )0 )\xB0\x8570  )8 )\xB8\x8578 \v )\0! ) !\n )\b! )(! )!\x07 )0!\f )!\v \0 )8"\rB\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 \rB\x80\xFE\x83\x80\x80\xE0?\x83\x84"\bB\b\x88 \bB\x88\x84>\0< \0 \vB\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 \vB\x80\xFE\x83\x80\x80\xE0?\x83\x84"\bB\b\x88 \bB\x88\x84>\x008 \0 \fB\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 \fB\x80\xFE\x83\x80\x80\xE0?\x83\x84"\bB\b\x88 \bB\x88\x84>\0, \0 \x07B\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 \x07B\x80\xFE\x83\x80\x80\xE0?\x83\x84"\bB\b\x88 \bB\x88\x84>\0( \0 B\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 B\x80\xFE\x83\x80\x80\xE0?\x83\x84"\bB\b\x88 \bB\x88\x84>\0 \0 B\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 B\x80\xFE\x83\x80\x80\xE0?\x83\x84"\bB\b\x88 \bB\x88\x84>\0 \0 \nB\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 \nB\x80\xFE\x83\x80\x80\xE0?\x83\x84"\bB\b\x88 \bB\x88\x84>\0\f \0 B\b\x88B\x80\x80\xFC\x87\x80\x80\xC0\xFF\0\x83 B\x80\xFE\x83\x80\x80\xE0?\x83\x84"\bB\b\x88 \bB\x88\x84>\0\b \0 \rB\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"\rB\b\x88 \r\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\rB\x88 \r\x84>\x004 \0 \vB\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"\vB\b\x88 \v\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\vB\x88 \v\x84>\x000 \0 \fB\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"\fB\b\x88 \f\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\fB\x88 \f\x84>\0$ \0 \x07B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"\x07B\b\x88 \x07\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\x07B\x88 \x07\x84>\0 \0 B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"B\b\x88 \x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x88 \x84>\0 \0 B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83" B\b\x88 \x84B\xFF\xFF\x83\x80\xF0\xFF?\x83" B\x88 \x84>\0 \0 \nB\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"\nB\b\x88 \n\x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"\nB\x88 \n\x84>\0 \0 B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"B\b\x88 \x84B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x88 \x84>\0\0 A@k$\0\v\x95 \x7F~#\0A\xD0\0k"A\0A\xC8\0\xFC\v\0 )\b! )!\f )!\rA!\x07@ \0 \x07" Ak"\x07Atj!\n \0 \x07A\x07tj!\v \x07!@A\x88-\0\0!  )\0"B\x86"7\0  \xA7  \rB<\x88\xA7"sAt"A\xF0\0q"\bAvr A\bqr \bAvs:\0\0 A\x88-\0\0 s"At"Aq"\b \xA7sAv Aqs \bAvs At" A\xF0\0q"Avr AvsAts:\0 B\x86 B<\x88\x84! \fB\x86 B<\x88\x84! \rB\x86 \fB<\x88\x84!\f \v Atj")\0!\r~  \x07F@  \r )\0\x857\0 ) \f\x85!\r ) \x85!\f )\b \x85\f\v  \n A\x07tj")\0 )\0\x85 \r\x857\0 ) )\x85 \f\x85!\r ) )\x85 \x85!\f )\b )\b\x85 \x85\v! Aj"AG\r\0\v AK\r\0\v  \f7  \r7  7\bA\0!@  j  j-\0\0  Avj-\0\0"\0Aqs:\0\0  Ar"\x07j  \x07j-\0\0 \0Avs:\0\0 A>I Aj!\r\0\v\v\xF2\x7F~@ E\r\0 \0 :\0\0 \0 j"Ak :\0\0 AI\r\0 \0 :\0 \0 :\0 Ak :\0\0 Ak :\0\0 A\x07I\r\0 \0 :\0 Ak :\0\0 A I\r\0 \0A\0 \0kAq"j" A\xFFqA\x81\x82\x84\bl"6\0   kA|q"j"Ak 6\0 A I\r\0  6\b  6 A\bk 6\0 A\fk 6\0 AI\r\0  6  6  6  6\f Ak 6\0 Ak 6\0 Ak 6\0 Ak 6\0  AqAr"k"A I\r\0 \xADB\x81\x80\x80\x80~!  j!@  7  7  7\b  7\0 A j! A k"AK\r\0\v\v \0\v\b\0A\xE4(\0\v]\x7FA\xE4(\0\x7FA\0A\xE8 \x006\0A\xE4 \0 "\x006\0A\xECA\xBA 6\0A\xF0A 6\0A\xF4A\xB0& "6\0 EA\xF0(\0E \0EA\xEC(\0Errr\v\v\r\0 \0A\x80j\0\v\0\0\ve\x7F \0D\0\0\0\0\0\0\0\0@A\xBC(\0A\x1BAA \0AF\x1B \0AF\x1B"\0AkvAq@A\xBCA\xBC(\0A \0Aktr6\0\f\v \0At(\xD0 "@ \0 \0\v\v\v\xEB\x7F~#\0A\xF0\xDE\xC2k"$\0\x7FAA\xE4(\0"\bE\r\0AA\xE8(\0 \0I\r\0A\xEC(\0!\x07A\xF4(\0! A\xB0\x828jA\0A\x9C\xFC\v\0 A\xF0\0j"A\0A\x80\xF37\xFC\v\0   Aj! A\xF0\x98j! A\x99!@ At"A k"j"  j")\07\0  )\07\0  )\0\b7\0\b  )\0\x007\0\0 A@j"j"  j")\07\0  )\07\0  )\0\b7\0\b  )\0\x007\0\0 Ak"At"j"  j")\07\0  )\07\0  )\0\b7\0\b  )\0\x007\0\0 AJ !\r\0\v A \b \0\b  \x07)\0\xB270  \x07)\0\xAA7(  \x07)\0\xA27 A\xE0\x858jA A8\b  -\0\xE0\x858"\0Av:\0\xD1\x848  \0Aq:\0\xD0\x848  -\0\xE1\x858"\0Av:\0\xD3\x848  \0Aq:\0\xD2\x848  -\0\xE2\x858"\0Av:\0\xD5\x848  \0Aq:\0\xD4\x848  -\0\xE3\x858"\0Av:\0\xD7\x848  \0Aq:\0\xD6\x848  -\0\xE4\x858"\0Av:\0\xD9\x848  \0Aq:\0\xD8\x848  -\0\xE5\x858"\0Av:\0\xDB\x848  \0Aq:\0\xDA\x848  -\0\xE6\x858"\0Av:\0\xDD\x848  \0Aq:\0\xDC\x848  -\0\xE7\x858"\0Av:\0\xDF\x848  \0Aq:\0\xDE\x848  -\0\xE8\x858"\0Av:\0\xE1\x848  \0Aq:\0\xE0\x848  -\0\xE9\x858"\0Av:\0\xE3\x848  \0Aq:\0\xE2\x848  -\0\xEA\x858"\0Av:\0\xE5\x848  \0Aq:\0\xE4\x848  -\0\xEB\x858"\0Av:\0\xE7\x848  \0Aq:\0\xE6\x848  -\0\xEC\x858"\0Av:\0\xE9\x848  \0Aq:\0\xE8\x848  -\0\xED\x858"\0Av:\0\xEB\x848  \0Aq:\0\xEA\x848  -\0\xEE\x858"\0Av:\0\xED\x848  \0Aq:\0\xEC\x848  -\0\xEF\x858"\0Av:\0\xEF\x848  \0Aq:\0\xEE\x848  -\0\xF0\x858"\0Av:\0\xF1\x848  \0Aq:\0\xF0\x848  -\0\xF1\x858"\0Aq:\0\xF2\x848  \0Av:\0\xF3\x848  -\0\xF2\x858"\0Av:\0\xF5\x848  \0Aq:\0\xF4\x848  -\0\xF3\x858"\0Av:\0\xF7\x848  \0Aq:\0\xF6\x848  -\0\xF4\x858"\0Av:\0\xF9\x848  \0Aq:\0\xF8\x848  -\0\xF5\x858"\0Av:\0\xFB\x848  \0Aq:\0\xFA\x848  -\0\xF6\x858"\0Av:\0\xFD\x848  \0Aq:\0\xFC\x848  -\0\xF7\x858"\0Av:\0\xFF\x848  \0Aq:\0\xFE\x848  -\0\xF8\x858"\0Av:\0\x81\x858  \0Aq:\0\x80\x858  -\0\xF9\x858"\0Av:\0\x83\x858  \0Aq:\0\x82\x858  -\0\xFA\x858"\0Av:\0\x85\x858  \0Aq:\0\x84\x858  -\0\xFB\x858"\0Av:\0\x87\x858  \0Aq:\0\x86\x858  -\0\xFC\x858"\0Av:\0\x89\x858  \0Aq:\0\x88\x858  -\0\xFD\x858"\0Av:\0\x8B\x858  \0Aq:\0\x8A\x858  -\0\xFE\x858"\0Av:\0\x8D\x858  \0Aq:\0\x8C\x858  -\0\xFF\x858"\0Av:\0\x8F\x858  \0Aq:\0\x8E\x858 A\xF0\xF37j!A\0!\0A\0!@   \x07j"-\0\0"Av:\0  Aq:\0\0  -\0"Av:\0  Aq:\0  -\0"Av:\0  Aq:\0  -\0"Av:\0\x07  Aq:\0 A\bj!A\xA0! Aj"A\xA0G\r\0\v@   \x07j-\0\0"Av:\0  Aq:\0\0 Aj! Aj! \0Aj"\0AG\r\0\vA\0! A\xB0\x868jA\0A\x80\xD1\0\xFC\v\0 A\xB0\xD78jA\0A\xC0\x8F\b\xFC\v\0 A\xF0\xE6\xC0\0jA\0A\x80\xF8\x81\xFC\v\0 A\xB0\xF47j!\n A\xF0\x88j!\rA\0!@ A\xF0\xE6\xC0\0j A\vtj"\x07A\x80\fj!\b \x07A\x80\bj!\v \x07A\x80j!\f !\0@ A\xF0\0j Atj")! )! )\b! \x07 A\xF0\xF37j \0j"-\0\0Atj" )\0" )\0\x857\0   )\b\x857\b   )\x857   )\x857 \f -\0QAtj"  )\0\x857\0   )\b\x857\b   )\x857   )\x857 \v -\0\xA2Atj"  )\0\x857\0   )\b\x857\b   )\x857   )\x857 \b -\0\xF3Atj"  )\0\x857\0   )\b\x857\b   )\x857   )\x857 Aj! \0Aj"\0A\xC0\0G\r\0\v Al!A\0!@ \r  jAtj")! )! )\b! \x07  \nj"-\0\0Atj"\0 )\0" \0)\0\x857\0 \0  \0)\b\x857\b \0  \0)\x857 \0  \0)\x857 \f -\0QAtj"\0  \0)\0\x857\0 \0  \0)\b\x857\b \0  \0)\x857 \0  \0)\x857 \v -\0\xA2Atj"\0  \0)\0\x857\0 \0  \0)\b\x857\b \0  \0)\x857 \0  \0)\x857 \b -\0\xF3Atj"\0  \0)\0\x857\0 \0  \0)\b\x857\b \0  \0)\x857 \0  \0)\x857 Aj"AG\r\0\vA\xC0\0! Aj"A\xC0\0G\r\0\vA\0!@ At"\x07A0r!\b \x07A r!\v \x07Ar!\f !\0@ Atj")! )! )\b! A\xF0\xE6\xC0\0j"\n \x07 A\xF0\xF37j \0j"-\0\0jAtj" )\0" )\0\x857\0   )\b\x857\b   )\x857   )\x857 \f -\0QjAt \nj"  )\0\x857\0   )\b\x857\b   )\x857   )\x857 \v -\0\xA2jAt \nj"  )\0\x857\0   )\b\x857\b   )\x857   )\x857 \b -\0\xF3jAt \nj"  )\b\x857\b   )\x857   )\x857   )\0\x857\0 Aj! \0Aj"\0A\xD1\0G\r\0\v Aj"A\xD1\0G\r\0\vA\0!@ A\xF0\xE6\xC0\0j" A tj A\xB0\xD78j Atj\x07 Aj"A\xC4G\r\0\vA\0!\0 A\0A\x80\x90\n\xFC\v\0@ \0At!\x07 A\xF0\xF37j \0A\xD1\0lj! A\0!@ A\xF0\xE6\xC0\0j" \x07  j-\0\0jAtj" )\0 A\xB0\xD78j A\x07tj")\0\x857\0  )\b )\b\x857\b  ) )\x857  ) )\x857  )\x80 ) \x857\x80  )\x88 )(\x857\x88  )\x90 )0\x857\x90  )\x98 )8\x857\x98 A\x80\bj" )\0 A@k)\0\x857\0 A\x88\bj" )\0 )H\x857\0 A\x90\bj" )\0 )P\x857\0 A\x98\bj" )\0 )X\x857\0 A\x80\fj" )\0 )`\x857\0 A\x88\fj" )\0 )h\x857\0 A\x90\fj" )\0 )p\x857\0 A\x98\fj" )\0 )x\x857\0 Aj"A\xD1\0G\r\0\v \0Aj"\0AG\r\0\v  A\xB0\x868j"\0\x07 A\xF0\xEA\xC0\0j A\xD0\x868j\x07 A\xF0\xEE\xC0\0j A\xF0\x868j\x07 A\xF0\xF2\xC0\0j A\x90\x878j\x07 A\xF0\xF6\xC0\0j A\xB0\x878j\x07 A\xF0\xFA\xC0\0j A\xD0\x878j\x07 A\xF0\xFE\xC0\0j A\xF0\x878j\x07 A\xF0\x82\xC1\0j A\x90\x888j\x07 A\xF0\x86\xC1\0j A\xB0\x888j\x07 A\xF0\x8A\xC1\0j A\xD0\x888j\x07 A\xF0\x8E\xC1\0j A\xF0\x888j\x07 A\xF0\x92\xC1\0j A\x90\x898j\x07 A\xF0\x96\xC1\0j A\xB0\x898j\x07 A\xF0\x9A\xC1\0j A\xD0\x898j\x07 A\xF0\x9E\xC1\0j A\xF0\x898j\x07 A\xF0\xA2\xC1\0j A\x90\x8A8j\x07 A\0A\x8E\xFC\v\0 \0  A\xB0\x828j )\xB0\x828 )\xD0\x848\x85 )\xB8\x828 )\xD8\x848\x85\x84 A\xC0\x828j)\0 A\xE0\x848j)\0\x85 A\xC8\x828j)\0 A\xE8\x848j)\0\x85\x84\x84 A\xD0\x828j)\0 A\xF0\x848j)\0\x85 A\xD8\x828j)\0 A\xF8\x848j)\0\x85\x84 A\xE0\x828j)\0 A\x80\x858j)\0\x85 A\xE8\x828j)\0 A\x88\x858j)\0\x85\x84\x84\x84B\0R\v A\xF0\xDE\xC2j$\0\v\x84\x7F\x7F~#\0"! A\xA0\xF6\xC1\0kA`q"$\0A\xE4(\0"\rE@ $\0A\vA\xE8(\0 \0I@ $\0A\vA\xEC(\0!A\xF0(\0!\b A\xA0\xB48jA\0A\xD0\xE6\xFC\v\0 A\x90\xA48jA\0A\xCD\xFC\v\0 A\xE0\xB2:jA\xB0 \bA\b A\xF0\xB2:j! A\x98\x918j"!@   j"-\0\0"Av:\0  Aq:\0\0  -\0"Av:\0  Aq:\0  -\0"Av:\0  Aq:\0  -\0"Av:\0\x07  Aq:\0 A\bj! Aj"A\xA0G\r\0\v A\xA0\xF4\0j A\xE0\xB2:j A\xA0\xFCj!A\0!@ Al! !@  G@ Al!\n A\xA0\xF4\0j Atj!A\0!@   j"\vAtj" )\0 )\0"B\0   \nj"j-\0\0"\x07A\x88-\0\0s"\fAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \f\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857\0  )\b )\b"B\0 \x07A\x88-\0\0s"\fAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \f\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857\b  ) )"B\0 \x07A\x88-\0\0s"\fAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \f\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857  ) )"B\0 \x07A\x88-\0\0s"Aq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857  Atj" )\0 )\0"B\0 \v j-\0\0"\x07A\x88-\0\0s"\vAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \v\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857\0  )\b )\b"B\0 \x07A\x88-\0\0s"\vAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \v\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857\b  ) )"B\0 \x07A\x88-\0\0s"\vAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \v\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857  ) )"B\0 \x07A\x88-\0\0s"Aq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857 Aj"AG\r\0\v\v Aj! Aj"A\xC0\0G\r\0\v Aj"A\xC0\0G\r\0\v A\xE0\xB2:jA\0A\xE4A\xD8\v(\0\0\0 A\x80\xF3\0jA \r \0\b A jA\0A\xE0\xF2\0\xFC\v\0 A\xA0\xF3\0j!\x7F@A\xB8-\0\0@ A\xA0)\x007 A\x98)\x007\b A\x90)\x007\0A\xB8A\0:\0\0\f\v A\0:\0\xE2\xB2: A\xF0\xD2;\0\xE0\xB2:  6 A6AA\xDC\v A\xE0\xB2:j Aj\r\v  \b)\07\xC8s  \b)\0\b7\0\xC0s  \b)\0\x007\xB8s A\xC0\xAF:jA A\x80\xF3\0j"\0A\xD0\0\b  )\xD0\xAF:7  )\xC8\xAF:7\b  )\xC0\xAF:7\0 A\x90\xB2:jA \0A8\b  -\0\x90\xB2:"\0Av:\0\x81\xB1:  \0Aq:\0\x80\xB1:  -\0\x91\xB2:"\0Av:\0\x83\xB1:  \0Aq:\0\x82\xB1:  -\0\x92\xB2:"\0Av:\0\x85\xB1:  \0Aq:\0\x84\xB1:  -\0\x93\xB2:"\0Av:\0\x87\xB1:  \0Aq:\0\x86\xB1:  -\0\x94\xB2:"\0Av:\0\x89\xB1:  \0Aq:\0\x88\xB1:  -\0\x95\xB2:"\0Av:\0\x8B\xB1:  \0Aq:\0\x8A\xB1:  -\0\x96\xB2:"\0Av:\0\x8D\xB1:  \0Aq:\0\x8C\xB1:  -\0\x97\xB2:"\0Av:\0\x8F\xB1:  \0Aq:\0\x8E\xB1:  -\0\x98\xB2:"\0Av:\0\x91\xB1:  \0Aq:\0\x90\xB1:  -\0\x99\xB2:"\0Av:\0\x93\xB1:  \0Aq:\0\x92\xB1:  -\0\x9A\xB2:"\0Av:\0\x95\xB1:  \0Aq:\0\x94\xB1:  -\0\x9B\xB2:"\0Av:\0\x97\xB1:  \0Aq:\0\x96\xB1:  -\0\x9C\xB2:"\0Av:\0\x99\xB1:  \0Aq:\0\x98\xB1:  -\0\x9D\xB2:"\0Av:\0\x9B\xB1:  \0Aq:\0\x9A\xB1:  -\0\x9E\xB2:"\0Av:\0\x9D\xB1:  \0Aq:\0\x9C\xB1:  -\0\x9F\xB2:"\0Av:\0\x9F\xB1:  \0Aq:\0\x9E\xB1:  -\0\xA0\xB2:"\0Av:\0\xA1\xB1:  \0Aq:\0\xA0\xB1:  -\0\xA1\xB2:"\0Aq:\0\xA2\xB1:  \0Av:\0\xA3\xB1:  -\0\xA2\xB2:"\0Av:\0\xA5\xB1:  \0Aq:\0\xA4\xB1:  -\0\xA3\xB2:"\0Av:\0\xA7\xB1:  \0Aq:\0\xA6\xB1:  -\0\xA4\xB2:"\0Av:\0\xA9\xB1:  \0Aq:\0\xA8\xB1:  -\0\xA5\xB2:"\0Av:\0\xAB\xB1:  \0Aq:\0\xAA\xB1:  -\0\xA6\xB2:"\0Av:\0\xAD\xB1:  \0Aq:\0\xAC\xB1:  -\0\xA7\xB2:"\0Av:\0\xAF\xB1:  \0Aq:\0\xAE\xB1:  -\0\xA8\xB2:"\0Av:\0\xB1\xB1:  \0Aq:\0\xB0\xB1:  -\0\xA9\xB2:"\0Av:\0\xB3\xB1:  \0Aq:\0\xB2\xB1:  -\0\xAA\xB2:"\0Av:\0\xB5\xB1:  \0Aq:\0\xB4\xB1:  -\0\xAB\xB2:"\0Av:\0\xB7\xB1:  \0Aq:\0\xB6\xB1:  -\0\xAC\xB2:"\0Av:\0\xB9\xB1:  \0Aq:\0\xB8\xB1:  -\0\xAD\xB2:"\0Av:\0\xBB\xB1:  \0Aq:\0\xBA\xB1:  -\0\xAE\xB2:"\0Av:\0\xBD\xB1:  \0Aq:\0\xBC\xB1:  -\0\xAF\xB2:"\0Av:\0\xBF\xB1:  \0Aq:\0\xBE\xB1: A\xD0\xA48j!\r A\x9B\xD68j! A\xE4\xB48j!\v A\xA0\xA9:j!A\0!@  :\0\xD0s A\xA0\xA8:jA\xA2 A\x80\xF3\0jA\xD1\0\bA\0!@ A\xF0\x9A:j Atj"\0 A\xA0\xA8:j Atj"-\0\0"Av:\0 \0 Aq:\0\0 \0 -\0"Av:\0 \0 Aq:\0 \0 -\0"Av:\0 \0 Aq:\0 \0 -\0"Av:\0\x07 \0 Aq:\0 \0 -\0"Av:\0 \0 Aq:\0\b \0 -\0"Av:\0\v \0 Aq:\0\n \0 -\0"Av:\0\r \0 Aq:\0\f \0 -\0\x07"Av:\0 \0 Aq:\0 \0 -\0\b"Av:\0 \0 Aq:\0 \0 -\0 "Av:\0 \0 Aq:\0 \0 -\0\n"Av:\0 \0 Aq:\0 \0 -\0\v"Av:\0 \0 Aq:\0 \0 -\0\f"Av:\0 \0 Aq:\0 \0 -\0\r"Av:\0\x1B \0 Aq:\0 \0 -\0"Av:\0 \0 Aq:\0 \0 -\0"Av:\0 \0 Aq:\0 \0 -\0"Av:\0! \0 Aq:\0 \0 -\0"Aq:\0" \0 Av:\0# \0 -\0"Av:\0% \0 Aq:\0$ \0 -\0"Av:\0\' \0 Aq:\0& \0 -\0"Av:\0) \0 Aq:\0( \0 -\0"Av:\0+ \0 Aq:\0* \0 -\0"Av:\0- \0 Aq:\0, \0 -\0"Av:\0/ \0 Aq:\0. \0 -\0"Av:\x001 \0 Aq:\x000 \0 -\0"Av:\x003 \0 Aq:\x002 \0 -\0"Av:\x005 \0 Aq:\x004 \0 -\0\x1B"Av:\x007 \0 Aq:\x006 \0 -\0"Av:\x009 \0 Aq:\x008 \0 -\0"Av:\0; \0 Aq:\0: \0 -\0"Av:\0= \0 Aq:\0< \0 -\0"Av:\0? \0 Aq:\0>A\0! Aj"AG\r\0\v@ Al!\b A\xF0\x9A:j Atj!A\0! @ Al!\x07  j-\0\0!A\0!@ A j  \bjAtj"\0 \0)\0   \x07jAtj")\0"B\0A\x88-\0\0 s"\nAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \n\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857\0 \0 \0)\b )\b"B\0A\x88-\0\0 s"\nAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \n\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857\b \0 \0) )"B\0A\x88-\0\0 s"\nAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \n\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857 \0 \0) )"B\0A\x88-\0\0 s"\0Aq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \0\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857 Aj"AG\r\0\v Aj" A\xC0\0G\r\0\v Aj"AG\r\0\vA\0!\b A\xE0\xB2:jA\0A\xC0\xBE\x07\xFC\v\0A\0! @ A\xE0\xB2:j \bA\x07tj! \b!\x07@ A\xA0\xF4\0j Atj"\0)"B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"\x1BB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ \x1BB\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85!) \0)"B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85!, \0)\b"%B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ %B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"#B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ #B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"!B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ !B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85!\' \0)\0" B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85""B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ "B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85"&B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ &B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85!( A\xF0\x9A:j \x07j!A\0!\0@  \0Atj" )\0 B\0  \0Atj-\0\0"A\x88-\0\0s"Aq\x1B\x85 \xAD"B>\x86B?\x87 "\x83\x85 B=\x86B?\x87 &\x83\x85 B<\x86B?\x87 (\x83\x857\0  )\b %B\0 A\x88-\0\0s"Aq\x1B\x85 \xAD"B>\x86B?\x87 #\x83\x85 B=\x86B?\x87 !\x83\x85 B<\x86B?\x87 \'\x83\x857\b  ) B\0 A\x88-\0\0s"Aq\x1B\x85 \xAD"B>\x86B?\x87 \x83\x85 B=\x86B?\x87 \x83\x85 B<\x86B?\x87 ,\x83\x857  ) B\0 A\x88-\0\0s"Aq\x1B\x85 \xAD"B>\x86B?\x87 \x83\x85 B=\x86B?\x87 \x1B\x83\x85 B<\x86B?\x87 )\x83\x857 \0Aj"\0AG\r\0\v Aj! \x07Aj"\x07A\xC0\0G\r\0\vA\0! \bAj"\bA\xC0\0G\r\0\v@ A\xA0\xB48j A\x07tj! A\xF0\x9A:j Atj!\bA\0! @ A\xE0\xB2:j A\x07tj!\x07 \b j-\0\0!A\0!@  At"j"\0 \0)\0  \x07j")\0"B\0A\x88-\0\0 s"\nAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \n\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857\0 \0 \0)\b )\b"B\0A\x88-\0\0 s"\nAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \n\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857\b \0 \0) )"B\0A\x88-\0\0 s"\nAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \n\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857 \0 \0) )"B\0A\x88-\0\0 s"\0Aq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \0\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857 Aj"AG\r\0\v Aj" A\xC0\0G\r\0\v Aj"AG\r\0\v A\xA0\xB48j A\x80\xB1:j A\xF0\xAF:jA\0!\b A\xE0\xB2:jA\0A\x80\xEA\xFC\v\0A\0! A\0!@ A j A\xA0lj! A\xE0\xB2:j A\x88lj!\fA!@ A\x80l!A\0! A j Ak"A\xA0lj!\n \b\xAD!@\x7F \bA\0J@A\xC0\0 \bk\xAD!@ \f Atj j"\0 \0)\0 \n Atj")\0"\x1B \x86\x857\0 \0 \0)\x80 \x1B \x88\x857\x80 \0 \0)\x80 )\b"\x1B \x86\x857\x80 \0A\x80\nj"\x07 \x07)\0 \x1B \x88\x857\0 \x07 \x07)\0 )"\x1B \x86\x857\0 \0A\x80j"\x07 \x07)\0 \x1B \x88\x857\0 \x07 \x07)\0 )"\x1B \x86\x857\0 \0A\x80j"\0 \0)\0 \x1B \x88\x857\0 Aj"AG\r\0\v  F\r A\xE0\xB2:j A\x88lj" \bA\0L\rA\0!\0@  \0Atj j" )\0  \0Atj"\x07)\0"\x1B \x86\x857\0  )\x80 \x1B \x88\x857\x80  )\x80 \x07)\b"\x1B \x86\x857\x80 A\x80\nj"\n \n)\0 \x1B \x88\x857\0 \n \n)\0 \x07)"\x1B \x86\x857\0 A\x80j"\n \n)\0 \x1B \x88\x857\0 \n \n)\0 \x07)"\x1B \x86\x857\0 A\x80j" )\0 \x1B \x88\x857\0 \0Aj"\0AG\r\0\v\f\v@ \f Atj j"\0 \0)\0 \n Atj")\0 \x86\x857\0 \0 \0)\x80 )\b \x86\x857\x80 \0A\x80\nj"\x07 \x07)\0 ) \x86\x857\0 \0A\x80j"\0 \0)\0 ) \x86\x857\0 Aj"AG\r\0\v  F\r A\xE0\xB2:j A\x88lj\v!A\0!\0@  \0Atj j" )\0  \0Atj"\x07)\0 \x86\x857\0  )\x80 \x07)\b \x86\x857\x80 A\x80\nj"\n \n)\0 \x07) \x86\x857\0 A\x80j" )\0 \x07) \x86\x857\0 \0Aj"\0AG\r\0\v\vA\0 \bAj"\0 \0A\xC0\0F"\0\x1B!\b \0 j!  I\r\0\v Aj"AG\r\0\vA\0!\0@ A\xE0\xB2:j \0Atj" )x" )p"B\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83"\x1B \x85" )h" )`"B\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83" \x85"B\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"%B\b\x86 \x85" )X"# )P"!B\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83" #\x85"# )H"" )@"&B\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83" "\x85""B\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83")B\b\x86 "\x85""B\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83",B\x86 "\x85""B\xFF\xFF\xFF\xFF\x83 )8"\' )0"(B\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83"- \'\x85"\' )("* ) "$B\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83". *\x85"*B\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"2B\b\x86 *\x85"* )"/ )"0B\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83"1 /\x85"/ )\b"+ )\0"3B\x88\x85B\x8F\x9E\xBC\xF8\xF0\xE1\xC3\x87\x83"4 +\x85"+B\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"5B\b\x86 +\x85"+B\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83"6B\x86 +\x85"+B \x88\x85"7 "\x857H   \x1BB\x86\x85"  B\x86\x85"\x1BB\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"B\b\x86 \x1B\x85"\x1B ! B\x86\x85" & B\x86\x85"!B\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83" B\b\x86 !\x85"!B\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83""B\x86 !\x85"!B\xFF\xFF\xFF\xFF\x83 ( -B\x86\x85"& $ .B\x86\x85"B\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83"(B\b\x86 \x85" 0 1B\x86\x85"- 3 4B\x86\x85"$B\b\x88\x85B\xFF\x81\xFC\x87\xF0\x9F\xC0\xFF\0\x83".B\b\x86 $\x85"$B\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83"0B\x86 $\x85"$B \x88\x85"1 !\x857@  7B \x86 +\x857\b  1B \x86 $\x857\0   \x85"  \x85"B\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83"B\x86 \x85"B\xFF\xFF\xFF\xFF\x83 & (\x85"! - .\x85" B\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83"&B\x86 \x85" B \x88\x85"( \x857P  (B \x86 \x857   %\x85" # )\x85"B\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83"%B\x86 \x85"B\xFF\xFF\xFF\xFF\x83 \' 2\x85"# / 5\x85" B\x88\x85B\xFF\xFF\x83\x80\xF0\xFF?\x83")B\x86 \x85" B \x88\x85"\' \x857X  \'B \x86 \x857  \x1B "\x85"\x1BB\xFF\xFF\xFF\xFF\x83  0\x85"B \x88\x85" \x1B\x857`  B \x86 \x857   ,\x85"\x1BB\xFF\xFF\xFF\xFF\x83 * 6\x85"B \x88\x85" \x1B\x857h  B \x86 \x857(   \x85"B\xFF\xFF\xFF\xFF\x83 ! &\x85"\x1BB \x88\x85" \x857p  B \x86 \x1B\x8570   %\x85"B\xFF\xFF\xFF\xFF\x83 # )\x85"B \x88\x85"\x1B \x857x  \x1BB \x86 \x8578 \0A\x80I \0Aj!\0\r\0\vA\0!A\x88-\0\0"At""\0A\x7FsAq"Av \0Aqr Avs\xAD! At""\0A0qA s"Av \0A\fqr Avs\xAD! At""\0A\xF0\0qA\xC0\0s"Av \0A\bqr Avs\xAD!% "\0Aq"Av \0Aqr Avs\xAD!# "\0A0q"Av \0A\fqr Avs\xAD!! "\0A\xF0\0q"Av \0A\bqr Avs\xAD! "\0Aq \0Aq"\0Avr \0AvsAs\xAD!" "\0A\fq \0A0q"\0Avr \0AvsA\bs\xAD!& "\0A\xF0\0qAs"Av \0A\bqr Avs\xAD! "\0A\x7FsAq"Av \0Aqr Avs\xAD!) "\0A0qA s"Av \0A\fqr Avs\xAD!, "\0A\xF0\0qA\xC0\0s"Av \0A\bqr Avs\xAD!\'A\x881\0\0B\x83!( Aq"\0A\bs\xAD"$!- \0As\xAD!*@ A\xE0\xB2:j Atj!\0A\xC0\0!@ AtA\xF8\0q" \0 A@jAvA\x80ljj" )\0 \0 AvA\x80lj j)\0"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83" -~\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83"\x1B ~\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83" ~\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83" %~\x857\0 \0 A?k"AvA\x80lj Atj"  ~ )\0  !~ \x1B #~  (~\x85\x85\x85\x857\0 \0 A>k"AvA\x80lj Atj" )\0  ~  &~ \x1B "~  *~\x85\x85\x85\x857\0 \0 A=k"AvA\x80lj Atj" )\0  \'~  ,~ \x1B )~  $~\x85\x85\x85\x857\0 Aj"A\xCA\0G\r\0\vA\xC0\0! A\xC0\0IA\0! Aj!\r\0\v@ A\xE0\xB2:j A(lj!A\0!@AA\xC4\0 k"\0 \0AN\x1BAv"\0A\bq!\n \0Aq!  Atj!\f A\xA0\xB48j j!A\0!\x07 A<K!@ \f \x07Atj!\b  \x07 jA\xC5\0lj!A\0!A\0!\0@ E@@   \bj"\0-\0\0"Av:\0  Aq:\0\0  \0-\0"Av:\0  Aq:\0  \0-\0"Av:\0  Aq:\0  \0-\0"\0Av:\0\x07  \0Aq:\0 A\bj! Aj" \nG\r\0\v !\0 E\r\vA\0!@  \0 \bj-\0\0"Av:\0  Aq:\0\0 \0Aj!\0 Aj! Aj"AG\r\0\v\v \x07Aj"\x07 G\r\0\v A4I Aj!\r\0\v Ak! A0I Aj! \r\0\vA\0!@ A\xA0\xB48j" A\xC5\0lj"\0A\0:\0\xCE \0A\0:\0\x89 \0A\0:\0D ArA\xC5\0l j"A\0:\0\xCE A\0:\0\x89 A\0:\0D AkA\0:\0\0 \0A\0:\0\xA7 A\bj"A\xC0\0G\r\0\v  -\0\xA0\xA9:"\0Av:\0\x91\xA48  \0Aq:\0\x90\xA48  -\0\xA1\xA9:"\0Av:\0\x93\xA48  \0Aq:\0\x92\xA48  -\0\xA2\xA9:"\0Av:\0\x95\xA48  \0Aq:\0\x94\xA48  -\0\xA3\xA9:"\0Av:\0\x97\xA48  \0Aq:\0\x96\xA48  -\0\xA4\xA9:"\0Av:\0\x99\xA48  \0Aq:\0\x98\xA48  -\0\xA5\xA9:"\0Av:\0\x9B\xA48  \0Aq:\0\x9A\xA48  -\0\xA6\xA9:"\0Av:\0\x9D\xA48  \0Aq:\0\x9C\xA48  -\0\xA7\xA9:"\0Av:\0\x9F\xA48  \0Aq:\0\x9E\xA48  -\0\xA8\xA9:"\0Av:\0\xA1\xA48  \0Aq:\0\xA0\xA48  -\0\xA9\xA9:"\0Av:\0\xA3\xA48  \0Aq:\0\xA2\xA48  -\0\xAA\xA9:"\0Av:\0\xA5\xA48  \0Aq:\0\xA4\xA48  -\0\xAB\xA9:"\0Av:\0\xA7\xA48  \0Aq:\0\xA6\xA48  -\0\xAC\xA9:"\0Av:\0\xA9\xA48  \0Aq:\0\xA8\xA48  -\0\xAD\xA9:"\0Av:\0\xAB\xA48  \0Aq:\0\xAA\xA48  -\0\xAE\xA9:"\0Av:\0\xAD\xA48  \0Aq:\0\xAC\xA48  -\0\xAF\xA9:"\0Av:\0\xAF\xA48  \0Aq:\0\xAE\xA48  -\0\xB0\xA9:"\0Av:\0\xB1\xA48  \0Aq:\0\xB0\xA48  -\0\xB1\xA9:"\0Aq:\0\xB2\xA48  \0Av:\0\xB3\xA48  -\0\xB2\xA9:"\0Av:\0\xB5\xA48  \0Aq:\0\xB4\xA48  -\0\xB3\xA9:"\0Av:\0\xB7\xA48  \0Aq:\0\xB6\xA48  -\0\xB4\xA9:"\0Av:\0\xB9\xA48  \0Aq:\0\xB8\xA48  -\0\xB5\xA9:"\0Av:\0\xBB\xA48  \0Aq:\0\xBA\xA48  -\0\xB6\xA9:"\0Av:\0\xBD\xA48  \0Aq:\0\xBC\xA48  -\0\xB7\xA9:"\0Av:\0\xBF\xA48  \0Aq:\0\xBE\xA48  -\0\xB8\xA9:"\0Av:\0\xC1\xA48  \0Aq:\0\xC0\xA48  -\0\xB9\xA9:"\0Av:\0\xC3\xA48  \0Aq:\0\xC2\xA48  -\0\xBA\xA9:"\0Av:\0\xC5\xA48  \0Aq:\0\xC4\xA48  -\0\xBB\xA9:"\0Av:\0\xC7\xA48  \0Aq:\0\xC6\xA48  -\0\xBC\xA9:"\0Av:\0\xC9\xA48  \0Aq:\0\xC8\xA48  -\0\xBD\xA9:"\0Av:\0\xCB\xA48  \0Aq:\0\xCA\xA48  -\0\xBE\xA9:"\0Av:\0\xCD\xA48  \0Aq:\0\xCC\xA48  -\0\xBF\xA9:"\0Av:\0\xCF\xA48  \0Aq:\0\xCE\xA48A\0!A ! \r!\0A\0!@ \0  j-\0\0"Av:\0 \0 Aq:\0\0 Aj! \0Aj!\0 Aj"AG\r\0\v@ A\xE0\xA58j" j A\x90\xA48j" j-\0\0:\0\0  Ar"\0j \0 j-\0\0:\0\0  Ar"\0j A\x90\xA48j \0j-\0\0:\0\0  Ar"\0j A\x90\xA48j \0j-\0\0:\0\0 Aj"A\xC4\0G\r\0\vA\0! A\0:\0\xDF\xD68 A\0:\0\x9A\xD68 A\0:\0\xD5\xD58 A\0:\0\x90\xD58 A\0:\0\xCB\xD48 A\0:\0\x86\xD48 A\0:\0\xC1\xD38 A\0:\0\xFC\xD28 A\0:\0\xB7\xD28 A\0:\0\xF2\xD18 A\0:\0\xAD\xD18 A\0:\0\xE8\xD08 A\0:\0\xA3\xD08 A\0:\0\xDE\xCF8 A\0:\0\x99\xCF8 A\0:\0\xD4\xCE8 A\0:\0\x8F\xCE8 A\0:\0\xCA\xCD8 A\0:\0\x85\xCD8 A\0:\0\xC0\xCC8 A\0:\0\xFB\xCB8 A\0:\0\xB6\xCB8 A\0:\0\xF1\xCA8 A\0:\0\xAC\xCA8 A\0:\0\xE7\xC98 A\0:\0\xA2\xC98 A\0:\0\xDD\xC88 A\0:\0\x98\xC88 A\0:\0\xD3\xC78 A\0:\0\x8E\xC78 A\0:\0\xC9\xC68 A\0:\0\x84\xC68 A\0:\0\xBF\xC58 A\0:\0\xFA\xC48 A\0:\0\xB5\xC48 A\0:\0\xF0\xC38 A\0:\0\xAB\xC38 A\0:\0\xE6\xC28 A\0:\0\xA1\xC28 A\0:\0\xDC\xC18 A\0:\0\x97\xC18 A\0:\0\xD2\xC08 A\0:\0\x8D\xC08 A\0:\0\xC8\xBF8 A\0:\0\x83\xBF8 A\0:\0\xBE\xBE8 A\0:\0\xF9\xBD8 A\0:\0\xB4\xBD8 A\0:\0\xEF\xBC8 A\0:\0\xAA\xBC8 A\0:\0\xE5\xBB8 A\0:\0\xA0\xBB8 A\0:\0\xDB\xBA8 A\0:\0\x96\xBA8 A\0:\0\xD1\xB98 A\0:\0\x8C\xB98 A\0:\0\xC7\xB88 A\0:\0\x82\xB88 A\0:\0\xBD\xB78 A\0:\0\xF8\xB68 A\0:\0\xB3\xB68 A\0:\0\xEE\xB58 A\0:\0\xA9\xB58 A\0:\0\xE4\xB48 A\xB0\xF1\xC1\0j!\x07 A\xA0\xB48j!@ A\x90\xA48j!A\0!A\0!@ -\0\0"\0A\0  j-\0\0A\x88-\0\0s"Aq\x1B \0 Aqls \0 Aqls \0 A\bqls"\0A\xF0qAv s \0Aqs \0AvAqs! Aj! A\xC4\0G Aj!\r\0\v \x07 :\0\0 A\xC5\0j! \x07Aj!\x07 Aj" A\xC0\0G\r\0\vA\0!@ \v A\xC5\0lj A\xB0\xF1\xC1\0j" j-\0\0 A\xF0\xAF:j" j-\0\0s:\0\0 \v Ar"\0A\xC5\0lj \0 j-\0\0 \0 j-\0\0s:\0\0 Aj"A\xC0\0G\r\0\vA\0! A\xE0\xB2:jA\0A\xB0\xF3\0\xFC\v\0@ A\xE0\xB2:j A(lj!\0 A\xA0\xB48j A\xC5\0lj!A\0!A\0!@ \0 Avj  j"\b-\0At \b-\0\0r:\0\0 \0 Ar"\bAvj  \bj"\b-\0At \b-\0\0r:\0\0 Aj! Aj"A"G\r\0\v \0 -\0D:\0"A\0!\b Aj"A\xC0\0G\r\0\vA\0!@ B\x007\xC0\xF5A B\x007\xB8\xF5A B\x007\xB0\xF5A B\x007\xA8\xF5A B\x007\xA0\xF5A B\x007\xA0\xF4A B\x007\xA8\xF4A B\x007\xB0\xF4A B\x007\xB8\xF4A B\x007\xC0\xF4AB\x7F!A\0!A \b \bAL\x1BAk"\0A \b \bAN\x1BA r"L@ \bAtA<q\xAD! A\xA0\xF5\xC1\0j \bAvA\xF8\xFF\xFF\xFF\x07qj!\x07 \0!@  )\xA0\xF5AA\x80)\0"$B\x7FB\0  J\x1B\x85 \x83 $B\x7FB\0  sA\0L\x1B\x85\x84" A\xE0\xB2:j A(lj")\0\x83\x857\xA0\xF5A  )\xA8\xF5A )\b \x83\x857\xA8\xF5A  )\xB0\xF5A ) \x83\x857\xB0\xF5A  )\xB8\xF5A ) \x83\x857\xB8\xF5A  )\xC0\xF5A ) \x83\x857\xC0\xF5AA\x80)\0B\0B\x7F \x07)\0 \x88\xA7Aq"\x1B\x85!  I Aj!\r\0\v\v  )\xA0\xF4A A\0A\x88-\0\0"\x07 s"Aq\x1B Aq ls Aq ls A\bq ls"Aq Avs AvAqs"A\0  \x07s""Aq\x1B Aq ls Aq ls A\bq ls"Aq A\xF0qAvs AvAqs"A\0  \x07s"Aq\x1B Aq ls Aq ls A\bq ls"A\xFFq"Av \x07s s"\x07 Avs"Aq A\0 "Aq\x1B  Aqls  Aqls  A\bqls"Aq A\xF0qAvs AvAqs"l A\0 \x07Aq\x1Bs Aq ls A\bq ls"Aq A\xF0qAvs AvAqsA\x81\x84\x90\xC0\0l"A\xF0\xE1\xC3\x87\x07q"Av Avs s"A\xFFq\xAD" )\xA0\xF5A"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83~\x85 A\bvAq\xAD"\x1B B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83~\x85 AvAq\xAD" B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83~\x85 AvAq\xAD" B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83~\x857\xA0\xF4A  )\xA8\xF4A )\xA8\xF5A"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83 ~\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83 \x1B~\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83 ~\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83 ~\x857\xA8\xF4A  )\xB0\xF4A )\xB0\xF5A"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83 ~\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83 \x1B~\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83 ~\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83 ~\x857\xB0\xF4A  )\xB8\xF4A )\xB8\xF5A"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83 ~\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83 \x1B~\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83 ~\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83 ~\x857\xB8\xF4A  )\xC0\xF4A  )\xC0\xF5A"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83~\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83 \x1B~\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83 ~\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83 ~\x857\xC0\xF4AA? \b \bA?N\x1B" \0N@ )\xC0\xF4A! )\xB8\xF4A! )\xB0\xF4A! )\xA8\xF4A!% )\xA0\xF4A!# \0!@ A\xE0\xB2:j A(lj" #A\x80)\0B\x7FB\0  sA\0J\x1B\x85 \x84"B\x7F\x85"\x1B\x83 )\0 \x83\x847\0  \x1B %\x83 )\b \x83\x847\b  \x1B \x83 ) \x83\x847  \x1B \x83 ) \x83\x847  \x1B \x83 ) \x83\x847  K Aj!\r\0\v\v )\xC0\xF4A"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!% )\xB8\xF4A"\x1BB\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!# )\xB0\xF4A"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!! )\xA8\xF4A"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83! )\xA0\xF4A"B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!" B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!& B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83! B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!) \x1BB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!, \x1BB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!\' \x1BB\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!( B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!- B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!* B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!$ B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!. B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!2 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!/ B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!0 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83!1 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83! \bAtA<q\xAD!+ \bAvAt!@ A\xE0\xB2:j \0A(lj" )\0 "  j)\0 +\x88\xA7AqA\x81\x84\x90\xC0\0lA\0 \0 J\x1B"A\xF0\xE1\xC3\x87\x07q"Av Avs s"A\xFFq\xAD"~\x85  A\bvAq\xAD"\x1B~\x85 1 AvAq\xAD"~\x85 0 AvAq\xAD"~\x857\0   .~  2~ \x1B /~ )\b  ~\x85\x85\x85\x857\b   -~  *~ \x1B $~ )  !~\x85\x85\x85\x857   ,~  \'~ \x1B (~ )  #~\x85\x85\x85\x857   &~  ~ \x1B )~ )  %~\x85\x85\x85\x857 \0A?I \0Aj!\0\r\0\v  \xA7jAj! \bA\xC4\0F \bAj!\bE\r\0\vA\0!@ A\xE0\xB2:j A(lj!\0A\0!@ A\xC0\xF2\xC1\0j" j" \0 Avj-\0\0"\bAv:\0  \bAq:\0\0  Ar"j"\b \0 Avj-\0\0"Av:\0 \b Aq:\0\0 Aj! A\xCE\0I\r\0\v A\xA0\xB48j A\xC5\0lj A\xC5\0\xFC\n\0\0 Aj"A\xC0\0G\r\0\vA\0! A\0A\xDCA\xD8\v(\0\0\0 A\xA0\xF5\xC1\0jA\0A\xE8\0A\xD8\v(\0\0\0 A\xA0\xF4\xC1\0jA\0A\xE8\0A\xD8\v(\0\0\0 A\xE0\xB2:jA\0A\xB0\xF3\0A\xD8\v(\0\0\0A\0!\0@@@ \0 j"-\0 -\0 -\0 -\0\0 rrrr! \0A\xC0\0F@ A\xFFqE\rA\xC0\0!@A\xC4\0 Ak"A A\xC1\0 knj"\0 \0A\xC4\0N\x1B!\b A\xA0\xB48j A\xC5\0lj"\0Ak! \0A\xC5\0k!\rA\0!\x07 ! AM@ -\0\0!\0A\0!@ A\xE0\xA58j j" -\0\0A\x88-\0\0A\x7FA\0  \rj-\0\0\x1Bs" A\x7Fsq \0qs:\0\0 A\xFFq r!  \bI Aj!\r\0\v\f@ A\xE0\xA58j j"A\x88-\0\0A\x7FA\0  \rj-\0\0\x1Bs \x07A\x7Fsq" -\0\0q"\0 -\0\0s:\0\0 \0A\bq\xAD! \0Aq\xAD!\x1B \0Aq\xAD! \0Aq\xAD!A\0!@ A\xA0\xB48j A\xC5\0lj"\0A\xC4\0j \0-\0D \0 j"1\0EB\b\x86 1\0\0\x84 1\0\x8AB\x86\x84 1\0\xCFB\x86\x84 1\0\x94B \x86\x84 1\0\xD9B(\x86\x84 1\0\x9EB0\x86\x85 1\0\xE3B8\x86\x85" ~  ~\x85  \x1B~\x85  ~\x85"B\x88 B\x88B\x8E\x9C\xB8\xF0\xE0\xC1\x83\x87\x83\x85 \x85"\xA7"Aqs:\0\0 \0 \0-\0\x89 A\bvAqs:\0\x89 \0 \0-\0\xCE AvAqs:\0\xCE \0 \0-\0\x93 AvAqs:\0\x93 \0 \0-\0\xD8 B \x88\xA7Aqs:\0\xD8 \0 \0-\0\x9D B(\x88\xA7Aqs:\0\x9D \0 \0-\0\xE2 B0\x88\xA7Aqs:\0\xE2 \0 \0-\0\xA7 B8\x88\xA7Aqs:\0\xA7 A\bj" I\r\0\v \x07 A\xFFqr!\x07  \bI Aj!\r\0\v !\f\v\0\v\0 -\0\x07 -\0 -\0 -\0rrr r! \0A\bj!\0\f\v\0\v\v A jA\0A\xE0\xF2\0\xFC\v\0 A\xA0\xB48jA\0A\xD0\xE6\xFC\v\0 Aj"A\x80G\r\v\vA\0!\b@ A\xE0\xA58j \bAlj!\0 A\xC0\xF2\xC1\0j!\x07A\0!\r !@A\0!A\0! \0!@  -\0\0"A\0  j-\0\0A\x88-\0\0s"Aq\x1B  Aqls  Aqls  A\bqls"A\xF0qAvs Aqs AvAqs! Aj! Aj"AG\r\0\v \x07 :\0\0 Aj! \x07Aj!\x07 \rAj"\rA\xC0\0G\r\0\v A\xE0\xB2:j \bA\xD1\0lj! A\xF0\x9A:j \bAtj!A\0!@  j A\xC0\xF2\xC1\0j" j-\0\0  j-\0\0s:\0\0  Ar"j  j-\0\0  j-\0\0s:\0\0 Aj"A\xC0\0G\r\0\v  \0-\0:\0P  \0)\0\b7\0H  \0)\0\x007\0@ \bAj"\bAG\r\0\v A\xE0\xB2:j!A\0!@  j"\0 -\0\0 -\0Atr:\0\0 \0 -\0 -\0Atr:\0 \0 -\0 -\0Atr:\0 \0 -\0 -\0\x07Atr:\0 A\bj!A\xA0!\0 Aj"A\xA0G\r\0\vA\0!@ \0 j -\0\0 -\0Atr:\0\0 Aj! \0Aj!\0 Aj"AG\r\0\v  )\xD0\xAF:7\0\xB2  )\xC8\xAF:7\0\xAA  )\xC0\xAF:7\0\xA2A\xF8A:\0\0A\0\v A\xA0\xA8:jA\0A\x9C\x07A\xD8\v(\0\0\0 A\xF0\x9A:jA\0A\xA8\rA\xD8\v(\0\0\0 A\xA0\xB48jA\0A\xD0\xE6A\xD8\v(\0\0\0 A\x90\xA48jA\0A\xCDA\xD8\v(\0\0\0 A\0A\xEEA\xD8\v(\0\0\0 A\xA0\xF4\0jA\0A\xE8\xAF7A\xD8\v(\0\0\0 A\xC0\xF2\xC1\0jA\0A\x8EA\xD8\v(\0\0\0 A\x80\xF3\0jA\0A\x91A\xD8\v(\0\0\0 A jA\0A\xE0\xF2\0A\xD8\v(\0\0\0 $\0\v\xAB~\n\x7F#\0A\xC0\xAF9k"\n$\0A\xA0 \0)\07\0A\x98 \0)\0\b7\0A\x90 \0)\0\x007\0A\xB8A:\0\0 \nA\x80\xE9\0jA\0A\xC8\xA2\xFC\v\0 \0)\0\0! \0)\0\b!  \0)\07\0  7\0\b  7\0\0A\xB8A\0:\0\0 \nA\xD0\xA89jA\xB0 A\b \nA\xE0\xA89j!\x07 \nA\xD0\x93j! \nA\x90\xD6\0j!\0@ \0 \x07 j"-\0\0"\bAv:\0 \0 \bAq:\0\0 \0 -\0"\bAv:\0 \0 \bAq:\0 \0 -\0"\bAv:\0 \0 \bAq:\0 \0 -\0"Av:\0\x07 \0 Aq:\0 \0A\bj!\0 Aj" A\xA0G\r\0\v \nA\xD0\x8Bj \nA\xD0\xA89jA\0!\0@ \0Al! \0!@ \nA\x90\xD6\0j Alj! \nA\xD0\x8Bj \fAtj!\bA\0! @  jAtj"\x07 \x07)\0 \b)\0"B\0 j-\0\0"\rA\x88-\0\0s"\vAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \v\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857\0 \x07 \x07)\b \b)\b"B\0 \rA\x88-\0\0s"\vAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \v\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857\b \x07 \x07) \b)"B\0 \rA\x88-\0\0s"\vAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \v\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857 \x07 \x07) \b)"B\0 \rA\x88-\0\0s"\x07Aq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \x07\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857 Aj" AG\r\0\v \fAj!\f Aj"A\xC0\0G\r\0\v \0Aj"\0A\xC0\0G\r\0\vA\0!\0@ \0Al!\r \nA\x90\xD6\0j \0j!A\0!@  Al"j-\0\0!\bA\0! @ \nA\x80\xE9\0j \rjAtj"\x07 \x07)\0  jAtj"\f)\0"B\0A\x88-\0\0 \bs"\vAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \v\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857\0 \x07 \x07)\b \f)\b"B\0A\x88-\0\0 \bs"\vAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \v\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857\b \x07 \x07) \f)"B\0A\x88-\0\0 \bs"\vAq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \v\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857 \x07 \x07) \f)"B\0A\x88-\0\0 \bs"\x07Aq\x1B\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" \x07\xAD"B>\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85" B=\x86B?\x87\x83\x85 B\x88B\x91\xA2\xC4\x88\x91\xA2\xC4\x88\x83B~ B\x86B\xEE\xDD\xBB\xF7\xEE\xDD\xBB\xF7n\x83\x85 B<\x86B?\x87\x83\x857 Aj" AG\r\0\v Aj"A\xC0\0G\r\0\v \0Aj"\0AG\r\0\v  \n)\xD8\xA897\0\b  \n)\xD0\xA897\0\0A\0!\0A\0!\x07@ \0Al!\f \0!@ \n \x07Atj" \nA\x80\xE9\0j"\v  \fjAtj"\b)\0"7\0 \b)\b"7\b \b)"7 \b)"7 \0 G@  Al \0jAt \vj"\b)\0\x857\0  \b)\b\x857\b  \b)\x857  \b)\x857\v \x07Aj!\x07 Aj"AG\r\0\v \0Aj"\0AG\r\0\v Aj!\x07A\0! @ \x07 At"\bj"\0 \b \nj")\07\0 \0 )\07\0 \0 )\0\b7\0\b \0 )\0\x007\0\0 \x07 \bA r"j"\0  \nj")\07\0 \0 )\07\0 \0 )\0\b7\0\b \0 )\0\x007\0\0 Aj" A\x98G\r\0\v  \n)\x98&7\0\xA8&  \n)\x90&7\0\xA0&  \n)\x88&7\0\x98&  \n)\x80&7\0\x90& \nA\x90\xD6\0jA\0A\xEEA\xD8\v(\0\0\0 A\0A\x80\x90A\xD8\v(\0\0\0 \nA\x80\xE9\0jA\0A\xC8\xA2A\xD8\v(\0\0\0 \nA\xC0\xAF9j$\0A\0\v\0A\xBAA\0A\xF8-\0\0\x1B\v\b\0A\xF4(\0\v\b\0A\xF0(\0\v\b\0A\xEC(\0\v\0\v\v\xBF\0A\x80\b\v\xCA\0\0\0\0\0\0\0\x82\x80\0\0\0\0\0\0\x8A\x80\0\0\0\0\0\x80\0\x80\0\x80\0\0\0\x80\x8B\x80\0\0\0\0\0\0\0\0\x80\0\0\0\0\x81\x80\0\x80\0\0\0\x80 \x80\0\0\0\0\0\x80\x8A\0\0\0\0\0\0\0\x88\0\0\0\0\0\0\0 \x80\0\x80\0\0\0\0\n\0\0\x80\0\0\0\0\x8B\x80\0\x80\0\0\0\0\x8B\0\0\0\0\0\0\x80\x89\x80\0\0\0\0\0\x80\x80\0\0\0\0\0\x80\x80\0\0\0\0\0\x80\x80\0\0\0\0\0\0\x80\n\x80\0\0\0\0\0\0\n\0\0\x80\0\0\0\x80\x81\x80\0\x80\0\0\0\x80\x80\x80\0\0\0\0\0\x80\0\0\x80\0\0\0\0\b\x80\0\x80\0\0\0\x80\b @\x80\x1B6\0A\xD4 \v9\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0A\xB0\n\v\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0A\xD4\v\v@ @\0');
1382
+ }
1383
+ function getBinarySync(file) {
1384
+ return file;
1385
+ }
1386
+ async function getWasmBinary(binaryFile) {
1387
+ return getBinarySync(binaryFile);
1388
+ }
1389
+ async function instantiateArrayBuffer(binaryFile, imports) {
1390
+ try {
1391
+ var binary = await getWasmBinary(binaryFile);
1392
+ var instance = await WebAssembly.instantiate(binary, imports);
1393
+ return instance;
1394
+ } catch (reason) {
1395
+ err(`failed to asynchronously prepare wasm: ${reason}`);
1396
+ abort(reason);
1397
+ }
1398
+ }
1399
+ async function instantiateAsync(binary, binaryFile, imports) {
1400
+ return instantiateArrayBuffer(binaryFile, imports);
1401
+ }
1402
+ function getWasmImports() {
1403
+ var imports = { a: wasmImports };
1404
+ return imports;
1405
+ }
1406
+ async function createWasm() {
1407
+ function receiveInstance(instance, module2) {
1408
+ wasmExports = instance.exports;
1409
+ assignWasmExports(wasmExports);
1410
+ updateMemoryViews();
1411
+ return wasmExports;
1412
+ }
1413
+ function receiveInstantiationResult(result2) {
1414
+ return receiveInstance(result2["instance"]);
1415
+ }
1416
+ var info = getWasmImports();
1417
+ if (Module["instantiateWasm"]) {
1418
+ return new Promise((resolve, reject) => {
1419
+ Module["instantiateWasm"](info, (inst, mod2) => {
1420
+ resolve(receiveInstance(inst, mod2));
1421
+ });
1422
+ });
1423
+ }
1424
+ wasmBinaryFile ??= findWasmBinary();
1425
+ var result = await instantiateAsync(wasmBinary, wasmBinaryFile, info);
1426
+ var exports2 = receiveInstantiationResult(result);
1427
+ return exports2;
1428
+ }
1429
+ class ExitStatus {
1430
+ name = "ExitStatus";
1431
+ constructor(status) {
1432
+ this.message = `Program terminated with exit(${status})`;
1433
+ this.status = status;
1434
+ }
1435
+ }
1436
+ var HEAP16;
1437
+ var HEAP32;
1438
+ var HEAP64;
1439
+ var HEAP8;
1440
+ var HEAPF32;
1441
+ var HEAPF64;
1442
+ var HEAPU16;
1443
+ var HEAPU32;
1444
+ var HEAPU64;
1445
+ var HEAPU8;
1446
+ var callRuntimeCallbacks = (callbacks) => {
1447
+ while (callbacks.length > 0) {
1448
+ callbacks.shift()(Module);
1449
+ }
1450
+ };
1451
+ var onPostRuns = [];
1452
+ var addOnPostRun = (cb) => onPostRuns.push(cb);
1453
+ var onPreRuns = [];
1454
+ var addOnPreRun = (cb) => onPreRuns.push(cb);
1455
+ var noExitRuntime = true;
1456
+ var __abort_js = () => abort("");
1457
+ var runtimeKeepaliveCounter = 0;
1458
+ var __emscripten_runtime_keepalive_clear = () => {
1459
+ noExitRuntime = false;
1460
+ runtimeKeepaliveCounter = 0;
1461
+ };
1462
+ var timers = {};
1463
+ var handleException = (e) => {
1464
+ if (e instanceof ExitStatus || e == "unwind") {
1465
+ return EXITSTATUS;
1466
+ }
1467
+ quit_(1, e);
1468
+ };
1469
+ var keepRuntimeAlive = () => noExitRuntime || runtimeKeepaliveCounter > 0;
1470
+ var _proc_exit = (code) => {
1471
+ EXITSTATUS = code;
1472
+ if (!keepRuntimeAlive()) {
1473
+ Module["onExit"]?.(code);
1474
+ ABORT = true;
1475
+ }
1476
+ quit_(code, new ExitStatus(code));
1477
+ };
1478
+ var exitJS = (status, implicit) => {
1479
+ EXITSTATUS = status;
1480
+ _proc_exit(status);
1481
+ };
1482
+ var _exit = exitJS;
1483
+ var maybeExit = () => {
1484
+ if (!keepRuntimeAlive()) {
1485
+ try {
1486
+ _exit(EXITSTATUS);
1487
+ } catch (e) {
1488
+ handleException(e);
1489
+ }
1490
+ }
1491
+ };
1492
+ var callUserCallback = (func) => {
1493
+ if (ABORT) {
1494
+ return;
1495
+ }
1496
+ try {
1497
+ return func();
1498
+ } catch (e) {
1499
+ handleException(e);
1500
+ } finally {
1501
+ maybeExit();
1502
+ }
1503
+ };
1504
+ var _emscripten_get_now = () => performance.now();
1505
+ var __setitimer_js = (which, timeout_ms) => {
1506
+ if (timers[which]) {
1507
+ clearTimeout(timers[which].id);
1508
+ delete timers[which];
1509
+ }
1510
+ if (!timeout_ms) return 0;
1511
+ var id = setTimeout(() => {
1512
+ delete timers[which];
1513
+ callUserCallback(() => __emscripten_timeout(which, _emscripten_get_now()));
1514
+ }, timeout_ms);
1515
+ timers[which] = { id, timeout_ms };
1516
+ return 0;
1517
+ };
1518
+ var readEmAsmArgsArray = [];
1519
+ var readEmAsmArgs = (sigPtr, buf) => {
1520
+ readEmAsmArgsArray.length = 0;
1521
+ var ch;
1522
+ while (ch = HEAPU8[sigPtr++]) {
1523
+ var wide = ch != 105;
1524
+ wide &= ch != 112;
1525
+ buf += wide && buf % 8 ? 4 : 0;
1526
+ readEmAsmArgsArray.push(ch == 112 ? HEAPU32[buf >> 2] : ch == 106 ? HEAP64[buf >> 3] : ch == 105 ? HEAP32[buf >> 2] : HEAPF64[buf >> 3]);
1527
+ buf += wide ? 8 : 4;
1528
+ }
1529
+ return readEmAsmArgsArray;
1530
+ };
1531
+ var runEmAsmFunction = (code, sigPtr, argbuf) => {
1532
+ var args = readEmAsmArgs(sigPtr, argbuf);
1533
+ return ASM_CONSTS[code](...args);
1534
+ };
1535
+ var _emscripten_asm_const_int = (code, sigPtr, argbuf) => runEmAsmFunction(code, sigPtr, argbuf);
1536
+ var abortOnCannotGrowMemory = (requestedSize) => {
1537
+ abort("OOM");
1538
+ };
1539
+ var _emscripten_resize_heap = (requestedSize) => {
1540
+ var oldSize = HEAPU8.length;
1541
+ requestedSize >>>= 0;
1542
+ abortOnCannotGrowMemory(requestedSize);
1543
+ };
1544
+ {
1545
+ if (Module["noExitRuntime"]) noExitRuntime = Module["noExitRuntime"];
1546
+ if (Module["print"]) out = Module["print"];
1547
+ if (Module["printErr"]) err = Module["printErr"];
1548
+ if (Module["wasmBinary"]) wasmBinary = Module["wasmBinary"];
1549
+ if (Module["arguments"]) arguments_ = Module["arguments"];
1550
+ if (Module["thisProgram"]) thisProgram = Module["thisProgram"];
1551
+ if (Module["preInit"]) {
1552
+ if (typeof Module["preInit"] == "function") Module["preInit"] = [Module["preInit"]];
1553
+ while (Module["preInit"].length > 0) {
1554
+ Module["preInit"].shift()();
1555
+ }
1556
+ }
1557
+ }
1558
+ var ASM_CONSTS = { 1500: ($0, $1) => {
1559
+ try {
1560
+ var arr = new Uint8Array($1);
1561
+ globalThis.crypto.getRandomValues(arr);
1562
+ Module.HEAPU8.set(arr, $0);
1563
+ return 0;
1564
+ } catch (e) {
1565
+ return -1;
1566
+ }
1567
+ } };
1568
+ var _mayo_init_buffers, _malloc, _get_msg_buf, _get_sig_buf, _get_sk_buf, _get_pk_buf, _get_sig_len, _keypair_from_seed, _sign, _verify, _free, __emscripten_timeout, memory, __indirect_function_table, wasmMemory;
1569
+ function assignWasmExports(wasmExports2) {
1570
+ _mayo_init_buffers = Module["_mayo_init_buffers"] = wasmExports2["j"];
1571
+ _malloc = Module["_malloc"] = wasmExports2["k"];
1572
+ _get_msg_buf = Module["_get_msg_buf"] = wasmExports2["l"];
1573
+ _get_sig_buf = Module["_get_sig_buf"] = wasmExports2["m"];
1574
+ _get_sk_buf = Module["_get_sk_buf"] = wasmExports2["n"];
1575
+ _get_pk_buf = Module["_get_pk_buf"] = wasmExports2["o"];
1576
+ _get_sig_len = Module["_get_sig_len"] = wasmExports2["p"];
1577
+ _keypair_from_seed = Module["_keypair_from_seed"] = wasmExports2["q"];
1578
+ _sign = Module["_sign"] = wasmExports2["r"];
1579
+ _verify = Module["_verify"] = wasmExports2["s"];
1580
+ _free = Module["_free"] = wasmExports2["t"];
1581
+ __emscripten_timeout = wasmExports2["u"];
1582
+ memory = wasmMemory = wasmExports2["h"];
1583
+ __indirect_function_table = wasmExports2["__indirect_function_table"];
1584
+ }
1585
+ var wasmImports = { d: __abort_js, c: __emscripten_runtime_keepalive_clear, e: __setitimer_js, g: _emscripten_asm_const_int, f: _emscripten_resize_heap, a: _exit, b: _proc_exit };
1586
+ function run() {
1587
+ preRun();
1588
+ function doRun() {
1589
+ Module["calledRun"] = true;
1590
+ if (ABORT) return;
1591
+ initRuntime();
1592
+ readyPromiseResolve?.(Module);
1593
+ Module["onRuntimeInitialized"]?.();
1594
+ postRun();
1595
+ }
1596
+ if (Module["setStatus"]) {
1597
+ Module["setStatus"]("Running...");
1598
+ setTimeout(() => {
1599
+ setTimeout(() => Module["setStatus"](""), 1);
1600
+ doRun();
1601
+ }, 1);
1602
+ } else {
1603
+ doRun();
1604
+ }
1605
+ }
1606
+ var wasmExports;
1607
+ wasmExports = await createWasm();
1608
+ run();
1609
+ if (runtimeInitialized) {
1610
+ moduleRtn = Module;
1611
+ } else {
1612
+ moduleRtn = new Promise((resolve, reject) => {
1613
+ readyPromiseResolve = resolve;
1614
+ readyPromiseReject = reject;
1615
+ });
1616
+ }
1617
+ ;
1618
+ return moduleRtn;
1619
+ };
1620
+ })();
1621
+ if (typeof exports === "object" && typeof module === "object") {
1622
+ module.exports = Mayo2Module2;
1623
+ module.exports.default = Mayo2Module2;
1624
+ } else if (typeof define === "function" && define["amd"]) define([], () => Mayo2Module2);
1625
+ }
1626
+ });
1627
+ var import_mayo1 = __toESM(require_mayo1(), 1);
1628
+ var import_mayo2 = __toESM(require_mayo2(), 1);
1629
+ var DEFAULT_MAX_MSG_SIZE = 200 * 1024;
1630
+ var SIZES = {
1631
+ mayo1: { secretKeySize: 24, publicKeySize: 1420, signatureSize: 454 },
1632
+ mayo2: { secretKeySize: 24, publicKeySize: 4912, signatureSize: 186 }
1633
+ };
1634
+ function alloc(m, size) {
1635
+ const ptr = m._malloc(size);
1636
+ if (ptr === 0) throw new Error(`malloc failed (${size} bytes)`);
1637
+ return ptr;
1638
+ }
1639
+ var MayoSigner = class _MayoSigner {
1640
+ #m = null;
1641
+ #secretKey = null;
1642
+ #secretKeySize;
1643
+ #publicKeySize;
1644
+ #signatureSize;
1645
+ #maxMsgSize = DEFAULT_MAX_MSG_SIZE;
1646
+ #msgPtr = 0;
1647
+ #sigPtr = 0;
1648
+ #skPtr = 0;
1649
+ #pkPtr = 0;
1650
+ /** @param {string} [variant] Default: 'mayo1' */
1651
+ constructor(variant = "mayo1") {
1652
+ if (variant !== "mayo1" && variant !== "mayo2") throw new Error(`Unsupported MAYO variant: ${variant}`);
1653
+ this.variant = variant;
1654
+ ({
1655
+ secretKeySize: this.#secretKeySize,
1656
+ publicKeySize: this.#publicKeySize,
1657
+ signatureSize: this.#signatureSize
1658
+ } = SIZES[variant]);
1659
+ }
1660
+ /** Factory — preferred way to instantiate.
1661
+ * @param {string} [variant] Default: 'mayo1' */
1662
+ static async create(variant = "mayo1") {
1663
+ const instance = new _MayoSigner(variant);
1664
+ await instance.init();
1665
+ return instance;
1666
+ }
1667
+ /** Loads the WASM module. Must be called before any crypto operation if not using create(). */
1668
+ async init(maxMsgSize = DEFAULT_MAX_MSG_SIZE) {
1669
+ if (this.#m) return;
1670
+ if (this.variant === "mayo1") this.#m = await (0, import_mayo1.default)();
1671
+ else if (this.variant === "mayo2") this.#m = await (0, import_mayo2.default)();
1672
+ else throw new Error(`Unsupported MAYO variant: ${this.variant}`);
1673
+ if (this.#m._mayo_init_buffers(maxMsgSize) !== 0) throw new Error("mayo_init_buffers failed");
1674
+ this.#maxMsgSize = maxMsgSize;
1675
+ this.#msgPtr = this.#m._get_msg_buf();
1676
+ this.#sigPtr = this.#m._get_sig_buf();
1677
+ this.#skPtr = this.#m._get_sk_buf();
1678
+ this.#pkPtr = this.#m._get_pk_buf();
1679
+ }
1680
+ /** Indicates whether the WASM module is loaded and ready for crypto operations. */
1681
+ get ready() {
1682
+ return this.#m !== null;
1683
+ }
1684
+ #assertReady() {
1685
+ if (!this.#m) throw new Error("MayoSigner not initialized \u2014 call await init() first");
1686
+ }
1687
+ /** Derives a keypair deterministically from a seed, and loads the secret key.
1688
+ * @param {Uint8Array} seed - Must be exactly 24 bytes
1689
+ * @param {boolean} storeSecretKey - Whether to store the secret key internally for subsequent sign() calls. Set to false if you only need to generate keypair.
1690
+ * @returns {Keypair|null} null if key generation failed */
1691
+ keypairFromSeed(seed, storeSecretKey = true) {
1692
+ this.#assertReady();
1693
+ if (!(seed instanceof Uint8Array) || seed.length !== this.#secretKeySize)
1694
+ throw new TypeError(`seed must be a Uint8Array of ${this.#secretKeySize} bytes`);
1695
+ const m = this.#m;
1696
+ const seedPtr = alloc(m, seed.length);
1697
+ const publicKeyPtr = alloc(m, this.#publicKeySize);
1698
+ const secretKeyPtr = alloc(m, this.#secretKeySize);
1699
+ m.HEAPU8.set(seed, seedPtr);
1700
+ const ret = m._keypair_from_seed(seedPtr, publicKeyPtr, secretKeyPtr);
1701
+ const keypair = ret === 0 ? {
1702
+ publicKey: m.HEAPU8.slice(publicKeyPtr, publicKeyPtr + this.#publicKeySize),
1703
+ secretKey: m.HEAPU8.slice(secretKeyPtr, secretKeyPtr + this.#secretKeySize)
1704
+ } : null;
1705
+ m._free(seedPtr);
1706
+ m._free(publicKeyPtr);
1707
+ m._free(secretKeyPtr);
1708
+ if (keypair && storeSecretKey) this.#secretKey = keypair.secretKey;
1709
+ return keypair;
1710
+ }
1711
+ /** Loads a secret key for subsequent sign() calls.
1712
+ * @param {Uint8Array} secretKey - Must be exactly 24 bytes */
1713
+ loadSecretKey(secretKey) {
1714
+ if (!(secretKey instanceof Uint8Array) || secretKey.length !== this.#secretKeySize)
1715
+ throw new TypeError(`secretKey must be a Uint8Array of ${this.#secretKeySize} bytes`);
1716
+ this.#secretKey = secretKey;
1717
+ }
1718
+ /** Signs a message using the loaded secret key.
1719
+ * @param {Uint8Array} msg @returns {Uint8Array|null} signature, or null if signing failed */
1720
+ sign(msg) {
1721
+ this.#assertReady();
1722
+ if (!this.#secretKey) throw new Error("No secret key loaded \u2014 call keypairFromSeed() or loadSecretKey() first");
1723
+ if (!(msg instanceof Uint8Array)) throw new TypeError("msg must be a Uint8Array");
1724
+ const m = this.#m;
1725
+ m.HEAPU8.set(msg, this.#msgPtr);
1726
+ m.HEAPU8.set(this.#secretKey, this.#skPtr);
1727
+ const ret = m._sign(msg.length);
1728
+ if (ret === 2) throw new Error(`Message too large for sign() \u2014 ${msg.length} bytes exceeds max ${this.#maxMsgSize} bytes`);
1729
+ if (ret !== 0) return null;
1730
+ return m.HEAPU8.slice(this.#sigPtr, this.#sigPtr + this.#signatureSize);
1731
+ }
1732
+ /** Verifies a signature against a message and public key.
1733
+ * @param {Uint8Array} msg @param {Uint8Array} signature @param {Uint8Array} publicKey */
1734
+ verify(msg, signature, publicKey) {
1735
+ this.#assertReady();
1736
+ if (!(msg instanceof Uint8Array)) throw new TypeError("msg must be a Uint8Array");
1737
+ if (!(signature instanceof Uint8Array) || signature.length !== this.#signatureSize)
1738
+ throw new TypeError(`signature must be a Uint8Array of ${this.#signatureSize} bytes`);
1739
+ if (!(publicKey instanceof Uint8Array) || publicKey.length !== this.#publicKeySize)
1740
+ throw new TypeError(`publicKey must be a Uint8Array of ${this.#publicKeySize} bytes`);
1741
+ const m = this.#m;
1742
+ m.HEAPU8.set(msg, this.#msgPtr);
1743
+ m.HEAPU8.set(signature, this.#sigPtr);
1744
+ m.HEAPU8.set(publicKey, this.#pkPtr);
1745
+ const ret = m._verify(msg.length);
1746
+ if (ret === 2) throw new Error(`Message too large for verify() \u2014 ${msg.length} bytes exceeds max ${this.#maxMsgSize} bytes`);
1747
+ return ret === 0;
1748
+ }
1749
+ };
1750
+
1751
+ // constants.mjs
1752
+ var PROTOCOL_VERSIONS = {
1753
+ "1": {
1754
+ variants: {
1755
+ /** @type {VariantDesc} */
1756
+ "mayo1": { sigSize: 454, pubKeySize: 1420, seedSize: 24 },
1757
+ /** @type {VariantDesc} */
1758
+ "mayo2": { sigSize: 186, pubKeySize: 4912, seedSize: 24 }
1759
+ },
1760
+ // If a future version needs a different wasm package, add a loader here.
1761
+ // For v1 both variants come from the same @pinkparrot/qsafe-mayo-wasm import.
1762
+ loader: (
1763
+ /** @param {string} variant */
1764
+ async (variant) => await MayoSigner.create(variant)
1765
+ )
1766
+ }
1767
+ };
1768
+ var CURRENT_VERSION = "1";
1769
+ var DEFAULT_VARIANT = "mayo1";
1770
+ var AVAILABLE_VERSIONS = Object.keys(PROTOCOL_VERSIONS);
1771
+ var HKDF_INFO_ED25519 = new TextEncoder().encode("qsafe-ed25519");
1772
+ var HKDF_INFO_MAYO = new TextEncoder().encode("qsafe-mayo");
1773
+ var ED25519_PRIV_SIZE = 32;
1774
+ var ED25519_PUB_SIZE = 32;
1775
+ var ED25519_SIG_SIZE = 64;
1776
+ var HEADER_SIZE = 3;
1777
+ var VARIANT_ID = { "mayo1": 1, "mayo2": 2 };
1778
+ var VARIANT_BY_ID = { 1: "mayo1", 2: "mayo2" };
1779
+
1780
+ // qsafeHelper.mjs
1781
+ var QsafeHelper = class {
1782
+ /** Derives ed25519 + mayo seeds from a master seed via HKDF-SHA256.
1783
+ * @param {Uint8Array} masterSeed @param {number} mayoSeedSize */
1784
+ static deriveSeeds(masterSeed, mayoSeedSize) {
1785
+ const edSeed = hkdf(sha256, masterSeed, void 0, HKDF_INFO_ED25519, ED25519_PRIV_SIZE);
1786
+ const mayoSeed = hkdf(sha256, masterSeed, void 0, HKDF_INFO_MAYO, mayoSeedSize);
1787
+ return { edSeed, mayoSeed };
1788
+ }
1789
+ /** Resolves version + variantId from a signature header. @param {Uint8Array} sig */
1790
+ static parseHeader(sig) {
1791
+ if (sig.length < HEADER_SIZE) return null;
1792
+ const reader = new BinaryReader(sig);
1793
+ const version = String(reader.readU16BE());
1794
+ const variantId = reader.readByte();
1795
+ const variant = VARIANT_BY_ID[variantId];
1796
+ const vProto = PROTOCOL_VERSIONS[version];
1797
+ if (!vProto || !variant || !vProto.variants[variant]) return null;
1798
+ return { version, variant, desc: vProto.variants[variant] };
1799
+ }
1800
+ };
1801
+
1802
+ // node_modules/@noble/curves/utils.js
1803
+ var _0n = /* @__PURE__ */ BigInt(0);
1804
+ var _1n = /* @__PURE__ */ BigInt(1);
1805
+ function abool(value, title = "") {
1806
+ if (typeof value !== "boolean") {
1807
+ const prefix = title && `"${title}" `;
1808
+ throw new Error(prefix + "expected boolean, got type=" + typeof value);
1809
+ }
1810
+ return value;
1811
+ }
1812
+ function abignumber(n) {
1813
+ if (typeof n === "bigint") {
1814
+ if (!isPosBig(n))
1815
+ throw new Error("positive bigint expected, got " + n);
1816
+ } else
1817
+ anumber(n);
1818
+ return n;
1819
+ }
1820
+ function hexToNumber(hex) {
1821
+ if (typeof hex !== "string")
1822
+ throw new Error("hex string expected, got " + typeof hex);
1823
+ return hex === "" ? _0n : BigInt("0x" + hex);
1824
+ }
1825
+ function bytesToNumberBE(bytes) {
1826
+ return hexToNumber(bytesToHex(bytes));
1827
+ }
1828
+ function bytesToNumberLE(bytes) {
1829
+ return hexToNumber(bytesToHex(copyBytes(abytes(bytes)).reverse()));
1830
+ }
1831
+ function numberToBytesBE(n, len) {
1832
+ anumber(len);
1833
+ n = abignumber(n);
1834
+ const res = hexToBytes(n.toString(16).padStart(len * 2, "0"));
1835
+ if (res.length !== len)
1836
+ throw new Error("number too large");
1837
+ return res;
1838
+ }
1839
+ function numberToBytesLE(n, len) {
1840
+ return numberToBytesBE(n, len).reverse();
1841
+ }
1842
+ function copyBytes(bytes) {
1843
+ return Uint8Array.from(bytes);
1844
+ }
1845
+ var isPosBig = (n) => typeof n === "bigint" && _0n <= n;
1846
+ function inRange(n, min, max) {
1847
+ return isPosBig(n) && isPosBig(min) && isPosBig(max) && min <= n && n < max;
1848
+ }
1849
+ function aInRange(title, n, min, max) {
1850
+ if (!inRange(n, min, max))
1851
+ throw new Error("expected valid " + title + ": " + min + " <= n < " + max + ", got " + n);
1852
+ }
1853
+ var bitMask = (n) => (_1n << BigInt(n)) - _1n;
1854
+ function validateObject(object, fields = {}, optFields = {}) {
1855
+ if (!object || typeof object !== "object")
1856
+ throw new Error("expected valid options object");
1857
+ function checkField(fieldName, expectedType, isOpt) {
1858
+ const val = object[fieldName];
1859
+ if (isOpt && val === void 0)
1860
+ return;
1861
+ const current = typeof val;
1862
+ if (current !== expectedType || val === null)
1863
+ throw new Error(`param "${fieldName}" is invalid: expected ${expectedType}, got ${current}`);
1864
+ }
1865
+ const iter = (f, isOpt) => Object.entries(f).forEach(([k, v]) => checkField(k, v, isOpt));
1866
+ iter(fields, false);
1867
+ iter(optFields, true);
1868
+ }
1869
+ function memoized(fn) {
1870
+ const map = /* @__PURE__ */ new WeakMap();
1871
+ return (arg, ...args) => {
1872
+ const val = map.get(arg);
1873
+ if (val !== void 0)
1874
+ return val;
1875
+ const computed = fn(arg, ...args);
1876
+ map.set(arg, computed);
1877
+ return computed;
1878
+ };
1879
+ }
1880
+
1881
+ // node_modules/@noble/curves/abstract/modular.js
1882
+ var _0n2 = /* @__PURE__ */ BigInt(0);
1883
+ var _1n2 = /* @__PURE__ */ BigInt(1);
1884
+ var _2n = /* @__PURE__ */ BigInt(2);
1885
+ var _3n = /* @__PURE__ */ BigInt(3);
1886
+ var _4n = /* @__PURE__ */ BigInt(4);
1887
+ var _5n = /* @__PURE__ */ BigInt(5);
1888
+ var _7n = /* @__PURE__ */ BigInt(7);
1889
+ var _8n = /* @__PURE__ */ BigInt(8);
1890
+ var _9n = /* @__PURE__ */ BigInt(9);
1891
+ var _16n = /* @__PURE__ */ BigInt(16);
1892
+ function mod(a, b) {
1893
+ const result = a % b;
1894
+ return result >= _0n2 ? result : b + result;
1895
+ }
1896
+ function pow2(x, power, modulo) {
1897
+ let res = x;
1898
+ while (power-- > _0n2) {
1899
+ res *= res;
1900
+ res %= modulo;
1901
+ }
1902
+ return res;
1903
+ }
1904
+ function invert(number, modulo) {
1905
+ if (number === _0n2)
1906
+ throw new Error("invert: expected non-zero number");
1907
+ if (modulo <= _0n2)
1908
+ throw new Error("invert: expected positive modulus, got " + modulo);
1909
+ let a = mod(number, modulo);
1910
+ let b = modulo;
1911
+ let x = _0n2, y = _1n2, u = _1n2, v = _0n2;
1912
+ while (a !== _0n2) {
1913
+ const q = b / a;
1914
+ const r = b % a;
1915
+ const m = x - u * q;
1916
+ const n = y - v * q;
1917
+ b = a, a = r, x = u, y = v, u = m, v = n;
1918
+ }
1919
+ const gcd = b;
1920
+ if (gcd !== _1n2)
1921
+ throw new Error("invert: does not exist");
1922
+ return mod(x, modulo);
1923
+ }
1924
+ function assertIsSquare(Fp, root, n) {
1925
+ if (!Fp.eql(Fp.sqr(root), n))
1926
+ throw new Error("Cannot find square root");
1927
+ }
1928
+ function sqrt3mod4(Fp, n) {
1929
+ const p1div4 = (Fp.ORDER + _1n2) / _4n;
1930
+ const root = Fp.pow(n, p1div4);
1931
+ assertIsSquare(Fp, root, n);
1932
+ return root;
1933
+ }
1934
+ function sqrt5mod8(Fp, n) {
1935
+ const p5div8 = (Fp.ORDER - _5n) / _8n;
1936
+ const n2 = Fp.mul(n, _2n);
1937
+ const v = Fp.pow(n2, p5div8);
1938
+ const nv = Fp.mul(n, v);
1939
+ const i = Fp.mul(Fp.mul(nv, _2n), v);
1940
+ const root = Fp.mul(nv, Fp.sub(i, Fp.ONE));
1941
+ assertIsSquare(Fp, root, n);
1942
+ return root;
1943
+ }
1944
+ function sqrt9mod16(P) {
1945
+ const Fp_ = Field(P);
1946
+ const tn = tonelliShanks(P);
1947
+ const c1 = tn(Fp_, Fp_.neg(Fp_.ONE));
1948
+ const c2 = tn(Fp_, c1);
1949
+ const c3 = tn(Fp_, Fp_.neg(c1));
1950
+ const c4 = (P + _7n) / _16n;
1951
+ return (Fp, n) => {
1952
+ let tv1 = Fp.pow(n, c4);
1953
+ let tv2 = Fp.mul(tv1, c1);
1954
+ const tv3 = Fp.mul(tv1, c2);
1955
+ const tv4 = Fp.mul(tv1, c3);
1956
+ const e1 = Fp.eql(Fp.sqr(tv2), n);
1957
+ const e2 = Fp.eql(Fp.sqr(tv3), n);
1958
+ tv1 = Fp.cmov(tv1, tv2, e1);
1959
+ tv2 = Fp.cmov(tv4, tv3, e2);
1960
+ const e3 = Fp.eql(Fp.sqr(tv2), n);
1961
+ const root = Fp.cmov(tv1, tv2, e3);
1962
+ assertIsSquare(Fp, root, n);
1963
+ return root;
1964
+ };
1965
+ }
1966
+ function tonelliShanks(P) {
1967
+ if (P < _3n)
1968
+ throw new Error("sqrt is not defined for small field");
1969
+ let Q = P - _1n2;
1970
+ let S = 0;
1971
+ while (Q % _2n === _0n2) {
1972
+ Q /= _2n;
1973
+ S++;
1974
+ }
1975
+ let Z = _2n;
1976
+ const _Fp = Field(P);
1977
+ while (FpLegendre(_Fp, Z) === 1) {
1978
+ if (Z++ > 1e3)
1979
+ throw new Error("Cannot find square root: probably non-prime P");
1980
+ }
1981
+ if (S === 1)
1982
+ return sqrt3mod4;
1983
+ let cc = _Fp.pow(Z, Q);
1984
+ const Q1div2 = (Q + _1n2) / _2n;
1985
+ return function tonelliSlow(Fp, n) {
1986
+ if (Fp.is0(n))
1987
+ return n;
1988
+ if (FpLegendre(Fp, n) !== 1)
1989
+ throw new Error("Cannot find square root");
1990
+ let M = S;
1991
+ let c = Fp.mul(Fp.ONE, cc);
1992
+ let t = Fp.pow(n, Q);
1993
+ let R = Fp.pow(n, Q1div2);
1994
+ while (!Fp.eql(t, Fp.ONE)) {
1995
+ if (Fp.is0(t))
1996
+ return Fp.ZERO;
1997
+ let i = 1;
1998
+ let t_tmp = Fp.sqr(t);
1999
+ while (!Fp.eql(t_tmp, Fp.ONE)) {
2000
+ i++;
2001
+ t_tmp = Fp.sqr(t_tmp);
2002
+ if (i === M)
2003
+ throw new Error("Cannot find square root");
2004
+ }
2005
+ const exponent = _1n2 << BigInt(M - i - 1);
2006
+ const b = Fp.pow(c, exponent);
2007
+ M = i;
2008
+ c = Fp.sqr(b);
2009
+ t = Fp.mul(t, c);
2010
+ R = Fp.mul(R, b);
2011
+ }
2012
+ return R;
2013
+ };
2014
+ }
2015
+ function FpSqrt(P) {
2016
+ if (P % _4n === _3n)
2017
+ return sqrt3mod4;
2018
+ if (P % _8n === _5n)
2019
+ return sqrt5mod8;
2020
+ if (P % _16n === _9n)
2021
+ return sqrt9mod16(P);
2022
+ return tonelliShanks(P);
2023
+ }
2024
+ var isNegativeLE = (num, modulo) => (mod(num, modulo) & _1n2) === _1n2;
2025
+ var FIELD_FIELDS = [
2026
+ "create",
2027
+ "isValid",
2028
+ "is0",
2029
+ "neg",
2030
+ "inv",
2031
+ "sqrt",
2032
+ "sqr",
2033
+ "eql",
2034
+ "add",
2035
+ "sub",
2036
+ "mul",
2037
+ "pow",
2038
+ "div",
2039
+ "addN",
2040
+ "subN",
2041
+ "mulN",
2042
+ "sqrN"
2043
+ ];
2044
+ function validateField(field) {
2045
+ const initial = {
2046
+ ORDER: "bigint",
2047
+ BYTES: "number",
2048
+ BITS: "number"
2049
+ };
2050
+ const opts = FIELD_FIELDS.reduce((map, val) => {
2051
+ map[val] = "function";
2052
+ return map;
2053
+ }, initial);
2054
+ validateObject(field, opts);
2055
+ return field;
2056
+ }
2057
+ function FpPow(Fp, num, power) {
2058
+ if (power < _0n2)
2059
+ throw new Error("invalid exponent, negatives unsupported");
2060
+ if (power === _0n2)
2061
+ return Fp.ONE;
2062
+ if (power === _1n2)
2063
+ return num;
2064
+ let p = Fp.ONE;
2065
+ let d = num;
2066
+ while (power > _0n2) {
2067
+ if (power & _1n2)
2068
+ p = Fp.mul(p, d);
2069
+ d = Fp.sqr(d);
2070
+ power >>= _1n2;
2071
+ }
2072
+ return p;
2073
+ }
2074
+ function FpInvertBatch(Fp, nums, passZero = false) {
2075
+ const inverted = new Array(nums.length).fill(passZero ? Fp.ZERO : void 0);
2076
+ const multipliedAcc = nums.reduce((acc, num, i) => {
2077
+ if (Fp.is0(num))
2078
+ return acc;
2079
+ inverted[i] = acc;
2080
+ return Fp.mul(acc, num);
2081
+ }, Fp.ONE);
2082
+ const invertedAcc = Fp.inv(multipliedAcc);
2083
+ nums.reduceRight((acc, num, i) => {
2084
+ if (Fp.is0(num))
2085
+ return acc;
2086
+ inverted[i] = Fp.mul(acc, inverted[i]);
2087
+ return Fp.mul(acc, num);
2088
+ }, invertedAcc);
2089
+ return inverted;
2090
+ }
2091
+ function FpLegendre(Fp, n) {
2092
+ const p1mod2 = (Fp.ORDER - _1n2) / _2n;
2093
+ const powered = Fp.pow(n, p1mod2);
2094
+ const yes = Fp.eql(powered, Fp.ONE);
2095
+ const zero = Fp.eql(powered, Fp.ZERO);
2096
+ const no = Fp.eql(powered, Fp.neg(Fp.ONE));
2097
+ if (!yes && !zero && !no)
2098
+ throw new Error("invalid Legendre symbol result");
2099
+ return yes ? 1 : zero ? 0 : -1;
2100
+ }
2101
+ function nLength(n, nBitLength) {
2102
+ if (nBitLength !== void 0)
2103
+ anumber(nBitLength);
2104
+ const _nBitLength = nBitLength !== void 0 ? nBitLength : n.toString(2).length;
2105
+ const nByteLength = Math.ceil(_nBitLength / 8);
2106
+ return { nBitLength: _nBitLength, nByteLength };
2107
+ }
2108
+ var _Field = class {
2109
+ ORDER;
2110
+ BITS;
2111
+ BYTES;
2112
+ isLE;
2113
+ ZERO = _0n2;
2114
+ ONE = _1n2;
2115
+ _lengths;
2116
+ _sqrt;
2117
+ // cached sqrt
2118
+ _mod;
2119
+ constructor(ORDER, opts = {}) {
2120
+ if (ORDER <= _0n2)
2121
+ throw new Error("invalid field: expected ORDER > 0, got " + ORDER);
2122
+ let _nbitLength = void 0;
2123
+ this.isLE = false;
2124
+ if (opts != null && typeof opts === "object") {
2125
+ if (typeof opts.BITS === "number")
2126
+ _nbitLength = opts.BITS;
2127
+ if (typeof opts.sqrt === "function")
2128
+ this.sqrt = opts.sqrt;
2129
+ if (typeof opts.isLE === "boolean")
2130
+ this.isLE = opts.isLE;
2131
+ if (opts.allowedLengths)
2132
+ this._lengths = opts.allowedLengths?.slice();
2133
+ if (typeof opts.modFromBytes === "boolean")
2134
+ this._mod = opts.modFromBytes;
2135
+ }
2136
+ const { nBitLength, nByteLength } = nLength(ORDER, _nbitLength);
2137
+ if (nByteLength > 2048)
2138
+ throw new Error("invalid field: expected ORDER of <= 2048 bytes");
2139
+ this.ORDER = ORDER;
2140
+ this.BITS = nBitLength;
2141
+ this.BYTES = nByteLength;
2142
+ this._sqrt = void 0;
2143
+ Object.preventExtensions(this);
2144
+ }
2145
+ create(num) {
2146
+ return mod(num, this.ORDER);
2147
+ }
2148
+ isValid(num) {
2149
+ if (typeof num !== "bigint")
2150
+ throw new Error("invalid field element: expected bigint, got " + typeof num);
2151
+ return _0n2 <= num && num < this.ORDER;
2152
+ }
2153
+ is0(num) {
2154
+ return num === _0n2;
2155
+ }
2156
+ // is valid and invertible
2157
+ isValidNot0(num) {
2158
+ return !this.is0(num) && this.isValid(num);
2159
+ }
2160
+ isOdd(num) {
2161
+ return (num & _1n2) === _1n2;
2162
+ }
2163
+ neg(num) {
2164
+ return mod(-num, this.ORDER);
2165
+ }
2166
+ eql(lhs, rhs) {
2167
+ return lhs === rhs;
2168
+ }
2169
+ sqr(num) {
2170
+ return mod(num * num, this.ORDER);
2171
+ }
2172
+ add(lhs, rhs) {
2173
+ return mod(lhs + rhs, this.ORDER);
2174
+ }
2175
+ sub(lhs, rhs) {
2176
+ return mod(lhs - rhs, this.ORDER);
2177
+ }
2178
+ mul(lhs, rhs) {
2179
+ return mod(lhs * rhs, this.ORDER);
2180
+ }
2181
+ pow(num, power) {
2182
+ return FpPow(this, num, power);
2183
+ }
2184
+ div(lhs, rhs) {
2185
+ return mod(lhs * invert(rhs, this.ORDER), this.ORDER);
2186
+ }
2187
+ // Same as above, but doesn't normalize
2188
+ sqrN(num) {
2189
+ return num * num;
2190
+ }
2191
+ addN(lhs, rhs) {
2192
+ return lhs + rhs;
2193
+ }
2194
+ subN(lhs, rhs) {
2195
+ return lhs - rhs;
2196
+ }
2197
+ mulN(lhs, rhs) {
2198
+ return lhs * rhs;
2199
+ }
2200
+ inv(num) {
2201
+ return invert(num, this.ORDER);
2202
+ }
2203
+ sqrt(num) {
2204
+ if (!this._sqrt)
2205
+ this._sqrt = FpSqrt(this.ORDER);
2206
+ return this._sqrt(this, num);
2207
+ }
2208
+ toBytes(num) {
2209
+ return this.isLE ? numberToBytesLE(num, this.BYTES) : numberToBytesBE(num, this.BYTES);
2210
+ }
2211
+ fromBytes(bytes, skipValidation = false) {
2212
+ abytes(bytes);
2213
+ const { _lengths: allowedLengths, BYTES, isLE, ORDER, _mod: modFromBytes } = this;
2214
+ if (allowedLengths) {
2215
+ if (!allowedLengths.includes(bytes.length) || bytes.length > BYTES) {
2216
+ throw new Error("Field.fromBytes: expected " + allowedLengths + " bytes, got " + bytes.length);
2217
+ }
2218
+ const padded = new Uint8Array(BYTES);
2219
+ padded.set(bytes, isLE ? 0 : padded.length - bytes.length);
2220
+ bytes = padded;
2221
+ }
2222
+ if (bytes.length !== BYTES)
2223
+ throw new Error("Field.fromBytes: expected " + BYTES + " bytes, got " + bytes.length);
2224
+ let scalar = isLE ? bytesToNumberLE(bytes) : bytesToNumberBE(bytes);
2225
+ if (modFromBytes)
2226
+ scalar = mod(scalar, ORDER);
2227
+ if (!skipValidation) {
2228
+ if (!this.isValid(scalar))
2229
+ throw new Error("invalid field element: outside of range 0..ORDER");
2230
+ }
2231
+ return scalar;
2232
+ }
2233
+ // TODO: we don't need it here, move out to separate fn
2234
+ invertBatch(lst) {
2235
+ return FpInvertBatch(this, lst);
2236
+ }
2237
+ // We can't move this out because Fp6, Fp12 implement it
2238
+ // and it's unclear what to return in there.
2239
+ cmov(a, b, condition) {
2240
+ return condition ? b : a;
2241
+ }
2242
+ };
2243
+ function Field(ORDER, opts = {}) {
2244
+ return new _Field(ORDER, opts);
2245
+ }
2246
+
2247
+ // node_modules/@noble/curves/abstract/curve.js
2248
+ var _0n3 = /* @__PURE__ */ BigInt(0);
2249
+ var _1n3 = /* @__PURE__ */ BigInt(1);
2250
+ function negateCt(condition, item) {
2251
+ const neg = item.negate();
2252
+ return condition ? neg : item;
2253
+ }
2254
+ function normalizeZ(c, points) {
2255
+ const invertedZs = FpInvertBatch(c.Fp, points.map((p) => p.Z));
2256
+ return points.map((p, i) => c.fromAffine(p.toAffine(invertedZs[i])));
2257
+ }
2258
+ function validateW(W, bits) {
2259
+ if (!Number.isSafeInteger(W) || W <= 0 || W > bits)
2260
+ throw new Error("invalid window size, expected [1.." + bits + "], got W=" + W);
2261
+ }
2262
+ function calcWOpts(W, scalarBits) {
2263
+ validateW(W, scalarBits);
2264
+ const windows = Math.ceil(scalarBits / W) + 1;
2265
+ const windowSize = 2 ** (W - 1);
2266
+ const maxNumber = 2 ** W;
2267
+ const mask = bitMask(W);
2268
+ const shiftBy = BigInt(W);
2269
+ return { windows, windowSize, mask, maxNumber, shiftBy };
2270
+ }
2271
+ function calcOffsets(n, window, wOpts) {
2272
+ const { windowSize, mask, maxNumber, shiftBy } = wOpts;
2273
+ let wbits = Number(n & mask);
2274
+ let nextN = n >> shiftBy;
2275
+ if (wbits > windowSize) {
2276
+ wbits -= maxNumber;
2277
+ nextN += _1n3;
2278
+ }
2279
+ const offsetStart = window * windowSize;
2280
+ const offset = offsetStart + Math.abs(wbits) - 1;
2281
+ const isZero = wbits === 0;
2282
+ const isNeg = wbits < 0;
2283
+ const isNegF = window % 2 !== 0;
2284
+ const offsetF = offsetStart;
2285
+ return { nextN, offset, isZero, isNeg, isNegF, offsetF };
2286
+ }
2287
+ var pointPrecomputes = /* @__PURE__ */ new WeakMap();
2288
+ var pointWindowSizes = /* @__PURE__ */ new WeakMap();
2289
+ function getW(P) {
2290
+ return pointWindowSizes.get(P) || 1;
2291
+ }
2292
+ function assert0(n) {
2293
+ if (n !== _0n3)
2294
+ throw new Error("invalid wNAF");
2295
+ }
2296
+ var wNAF = class {
2297
+ BASE;
2298
+ ZERO;
2299
+ Fn;
2300
+ bits;
2301
+ // Parametrized with a given Point class (not individual point)
2302
+ constructor(Point, bits) {
2303
+ this.BASE = Point.BASE;
2304
+ this.ZERO = Point.ZERO;
2305
+ this.Fn = Point.Fn;
2306
+ this.bits = bits;
2307
+ }
2308
+ // non-const time multiplication ladder
2309
+ _unsafeLadder(elm, n, p = this.ZERO) {
2310
+ let d = elm;
2311
+ while (n > _0n3) {
2312
+ if (n & _1n3)
2313
+ p = p.add(d);
2314
+ d = d.double();
2315
+ n >>= _1n3;
2316
+ }
2317
+ return p;
2318
+ }
2319
+ /**
2320
+ * Creates a wNAF precomputation window. Used for caching.
2321
+ * Default window size is set by `utils.precompute()` and is equal to 8.
2322
+ * Number of precomputed points depends on the curve size:
2323
+ * 2^(𝑊−1) * (Math.ceil(𝑛 / 𝑊) + 1), where:
2324
+ * - 𝑊 is the window size
2325
+ * - 𝑛 is the bitlength of the curve order.
2326
+ * For a 256-bit curve and window size 8, the number of precomputed points is 128 * 33 = 4224.
2327
+ * @param point Point instance
2328
+ * @param W window size
2329
+ * @returns precomputed point tables flattened to a single array
2330
+ */
2331
+ precomputeWindow(point, W) {
2332
+ const { windows, windowSize } = calcWOpts(W, this.bits);
2333
+ const points = [];
2334
+ let p = point;
2335
+ let base = p;
2336
+ for (let window = 0; window < windows; window++) {
2337
+ base = p;
2338
+ points.push(base);
2339
+ for (let i = 1; i < windowSize; i++) {
2340
+ base = base.add(p);
2341
+ points.push(base);
2342
+ }
2343
+ p = base.double();
2344
+ }
2345
+ return points;
2346
+ }
2347
+ /**
2348
+ * Implements ec multiplication using precomputed tables and w-ary non-adjacent form.
2349
+ * More compact implementation:
2350
+ * https://github.com/paulmillr/noble-secp256k1/blob/47cb1669b6e506ad66b35fe7d76132ae97465da2/index.ts#L502-L541
2351
+ * @returns real and fake (for const-time) points
2352
+ */
2353
+ wNAF(W, precomputes, n) {
2354
+ if (!this.Fn.isValid(n))
2355
+ throw new Error("invalid scalar");
2356
+ let p = this.ZERO;
2357
+ let f = this.BASE;
2358
+ const wo = calcWOpts(W, this.bits);
2359
+ for (let window = 0; window < wo.windows; window++) {
2360
+ const { nextN, offset, isZero, isNeg, isNegF, offsetF } = calcOffsets(n, window, wo);
2361
+ n = nextN;
2362
+ if (isZero) {
2363
+ f = f.add(negateCt(isNegF, precomputes[offsetF]));
2364
+ } else {
2365
+ p = p.add(negateCt(isNeg, precomputes[offset]));
2366
+ }
2367
+ }
2368
+ assert0(n);
2369
+ return { p, f };
2370
+ }
2371
+ /**
2372
+ * Implements ec unsafe (non const-time) multiplication using precomputed tables and w-ary non-adjacent form.
2373
+ * @param acc accumulator point to add result of multiplication
2374
+ * @returns point
2375
+ */
2376
+ wNAFUnsafe(W, precomputes, n, acc = this.ZERO) {
2377
+ const wo = calcWOpts(W, this.bits);
2378
+ for (let window = 0; window < wo.windows; window++) {
2379
+ if (n === _0n3)
2380
+ break;
2381
+ const { nextN, offset, isZero, isNeg } = calcOffsets(n, window, wo);
2382
+ n = nextN;
2383
+ if (isZero) {
2384
+ continue;
2385
+ } else {
2386
+ const item = precomputes[offset];
2387
+ acc = acc.add(isNeg ? item.negate() : item);
2388
+ }
2389
+ }
2390
+ assert0(n);
2391
+ return acc;
2392
+ }
2393
+ getPrecomputes(W, point, transform) {
2394
+ let comp = pointPrecomputes.get(point);
2395
+ if (!comp) {
2396
+ comp = this.precomputeWindow(point, W);
2397
+ if (W !== 1) {
2398
+ if (typeof transform === "function")
2399
+ comp = transform(comp);
2400
+ pointPrecomputes.set(point, comp);
2401
+ }
2402
+ }
2403
+ return comp;
2404
+ }
2405
+ cached(point, scalar, transform) {
2406
+ const W = getW(point);
2407
+ return this.wNAF(W, this.getPrecomputes(W, point, transform), scalar);
2408
+ }
2409
+ unsafe(point, scalar, transform, prev) {
2410
+ const W = getW(point);
2411
+ if (W === 1)
2412
+ return this._unsafeLadder(point, scalar, prev);
2413
+ return this.wNAFUnsafe(W, this.getPrecomputes(W, point, transform), scalar, prev);
2414
+ }
2415
+ // We calculate precomputes for elliptic curve point multiplication
2416
+ // using windowed method. This specifies window size and
2417
+ // stores precomputed values. Usually only base point would be precomputed.
2418
+ createCache(P, W) {
2419
+ validateW(W, this.bits);
2420
+ pointWindowSizes.set(P, W);
2421
+ pointPrecomputes.delete(P);
2422
+ }
2423
+ hasCache(elm) {
2424
+ return getW(elm) !== 1;
2425
+ }
2426
+ };
2427
+ function createField(order, field, isLE) {
2428
+ if (field) {
2429
+ if (field.ORDER !== order)
2430
+ throw new Error("Field.ORDER must match order: Fp == p, Fn == n");
2431
+ validateField(field);
2432
+ return field;
2433
+ } else {
2434
+ return Field(order, { isLE });
2435
+ }
2436
+ }
2437
+ function createCurveFields(type, CURVE, curveOpts = {}, FpFnLE) {
2438
+ if (FpFnLE === void 0)
2439
+ FpFnLE = type === "edwards";
2440
+ if (!CURVE || typeof CURVE !== "object")
2441
+ throw new Error(`expected valid ${type} CURVE object`);
2442
+ for (const p of ["p", "n", "h"]) {
2443
+ const val = CURVE[p];
2444
+ if (!(typeof val === "bigint" && val > _0n3))
2445
+ throw new Error(`CURVE.${p} must be positive bigint`);
2446
+ }
2447
+ const Fp = createField(CURVE.p, curveOpts.Fp, FpFnLE);
2448
+ const Fn = createField(CURVE.n, curveOpts.Fn, FpFnLE);
2449
+ const _b = type === "weierstrass" ? "b" : "d";
2450
+ const params = ["Gx", "Gy", "a", _b];
2451
+ for (const p of params) {
2452
+ if (!Fp.isValid(CURVE[p]))
2453
+ throw new Error(`CURVE.${p} must be valid field element of CURVE.Fp`);
2454
+ }
2455
+ CURVE = Object.freeze(Object.assign({}, CURVE));
2456
+ return { CURVE, Fp, Fn };
2457
+ }
2458
+ function createKeygen(randomSecretKey, getPublicKey) {
2459
+ return function keygen(seed) {
2460
+ const secretKey = randomSecretKey(seed);
2461
+ return { secretKey, publicKey: getPublicKey(secretKey) };
2462
+ };
2463
+ }
2464
+
2465
+ // node_modules/@noble/curves/abstract/edwards.js
2466
+ var _0n4 = BigInt(0);
2467
+ var _1n4 = BigInt(1);
2468
+ var _2n2 = BigInt(2);
2469
+ var _8n2 = BigInt(8);
2470
+ function isEdValidXY(Fp, CURVE, x, y) {
2471
+ const x2 = Fp.sqr(x);
2472
+ const y2 = Fp.sqr(y);
2473
+ const left = Fp.add(Fp.mul(CURVE.a, x2), y2);
2474
+ const right = Fp.add(Fp.ONE, Fp.mul(CURVE.d, Fp.mul(x2, y2)));
2475
+ return Fp.eql(left, right);
2476
+ }
2477
+ function edwards(params, extraOpts = {}) {
2478
+ const validated = createCurveFields("edwards", params, extraOpts, extraOpts.FpFnLE);
2479
+ const { Fp, Fn } = validated;
2480
+ let CURVE = validated.CURVE;
2481
+ const { h: cofactor } = CURVE;
2482
+ validateObject(extraOpts, {}, { uvRatio: "function" });
2483
+ const MASK = _2n2 << BigInt(Fn.BYTES * 8) - _1n4;
2484
+ const modP = (n) => Fp.create(n);
2485
+ const uvRatio2 = extraOpts.uvRatio || ((u, v) => {
2486
+ try {
2487
+ return { isValid: true, value: Fp.sqrt(Fp.div(u, v)) };
2488
+ } catch (e) {
2489
+ return { isValid: false, value: _0n4 };
2490
+ }
2491
+ });
2492
+ if (!isEdValidXY(Fp, CURVE, CURVE.Gx, CURVE.Gy))
2493
+ throw new Error("bad curve params: generator point");
2494
+ function acoord(title, n, banZero = false) {
2495
+ const min = banZero ? _1n4 : _0n4;
2496
+ aInRange("coordinate " + title, n, min, MASK);
2497
+ return n;
2498
+ }
2499
+ function aedpoint(other) {
2500
+ if (!(other instanceof Point))
2501
+ throw new Error("EdwardsPoint expected");
2502
+ }
2503
+ const toAffineMemo = memoized((p, iz) => {
2504
+ const { X, Y, Z } = p;
2505
+ const is0 = p.is0();
2506
+ if (iz == null)
2507
+ iz = is0 ? _8n2 : Fp.inv(Z);
2508
+ const x = modP(X * iz);
2509
+ const y = modP(Y * iz);
2510
+ const zz = Fp.mul(Z, iz);
2511
+ if (is0)
2512
+ return { x: _0n4, y: _1n4 };
2513
+ if (zz !== _1n4)
2514
+ throw new Error("invZ was invalid");
2515
+ return { x, y };
2516
+ });
2517
+ const assertValidMemo = memoized((p) => {
2518
+ const { a, d } = CURVE;
2519
+ if (p.is0())
2520
+ throw new Error("bad point: ZERO");
2521
+ const { X, Y, Z, T } = p;
2522
+ const X2 = modP(X * X);
2523
+ const Y2 = modP(Y * Y);
2524
+ const Z2 = modP(Z * Z);
2525
+ const Z4 = modP(Z2 * Z2);
2526
+ const aX2 = modP(X2 * a);
2527
+ const left = modP(Z2 * modP(aX2 + Y2));
2528
+ const right = modP(Z4 + modP(d * modP(X2 * Y2)));
2529
+ if (left !== right)
2530
+ throw new Error("bad point: equation left != right (1)");
2531
+ const XY = modP(X * Y);
2532
+ const ZT = modP(Z * T);
2533
+ if (XY !== ZT)
2534
+ throw new Error("bad point: equation left != right (2)");
2535
+ return true;
2536
+ });
2537
+ class Point {
2538
+ // base / generator point
2539
+ static BASE = new Point(CURVE.Gx, CURVE.Gy, _1n4, modP(CURVE.Gx * CURVE.Gy));
2540
+ // zero / infinity / identity point
2541
+ static ZERO = new Point(_0n4, _1n4, _1n4, _0n4);
2542
+ // 0, 1, 1, 0
2543
+ // math field
2544
+ static Fp = Fp;
2545
+ // scalar field
2546
+ static Fn = Fn;
2547
+ X;
2548
+ Y;
2549
+ Z;
2550
+ T;
2551
+ constructor(X, Y, Z, T) {
2552
+ this.X = acoord("x", X);
2553
+ this.Y = acoord("y", Y);
2554
+ this.Z = acoord("z", Z, true);
2555
+ this.T = acoord("t", T);
2556
+ Object.freeze(this);
2557
+ }
2558
+ static CURVE() {
2559
+ return CURVE;
2560
+ }
2561
+ static fromAffine(p) {
2562
+ if (p instanceof Point)
2563
+ throw new Error("extended point not allowed");
2564
+ const { x, y } = p || {};
2565
+ acoord("x", x);
2566
+ acoord("y", y);
2567
+ return new Point(x, y, _1n4, modP(x * y));
2568
+ }
2569
+ // Uses algo from RFC8032 5.1.3.
2570
+ static fromBytes(bytes, zip215 = false) {
2571
+ const len = Fp.BYTES;
2572
+ const { a, d } = CURVE;
2573
+ bytes = copyBytes(abytes(bytes, len, "point"));
2574
+ abool(zip215, "zip215");
2575
+ const normed = copyBytes(bytes);
2576
+ const lastByte = bytes[len - 1];
2577
+ normed[len - 1] = lastByte & ~128;
2578
+ const y = bytesToNumberLE(normed);
2579
+ const max = zip215 ? MASK : Fp.ORDER;
2580
+ aInRange("point.y", y, _0n4, max);
2581
+ const y2 = modP(y * y);
2582
+ const u = modP(y2 - _1n4);
2583
+ const v = modP(d * y2 - a);
2584
+ let { isValid, value: x } = uvRatio2(u, v);
2585
+ if (!isValid)
2586
+ throw new Error("bad point: invalid y coordinate");
2587
+ const isXOdd = (x & _1n4) === _1n4;
2588
+ const isLastByteOdd = (lastByte & 128) !== 0;
2589
+ if (!zip215 && x === _0n4 && isLastByteOdd)
2590
+ throw new Error("bad point: x=0 and x_0=1");
2591
+ if (isLastByteOdd !== isXOdd)
2592
+ x = modP(-x);
2593
+ return Point.fromAffine({ x, y });
2594
+ }
2595
+ static fromHex(hex, zip215 = false) {
2596
+ return Point.fromBytes(hexToBytes(hex), zip215);
2597
+ }
2598
+ get x() {
2599
+ return this.toAffine().x;
2600
+ }
2601
+ get y() {
2602
+ return this.toAffine().y;
2603
+ }
2604
+ precompute(windowSize = 8, isLazy = true) {
2605
+ wnaf.createCache(this, windowSize);
2606
+ if (!isLazy)
2607
+ this.multiply(_2n2);
2608
+ return this;
2609
+ }
2610
+ // Useful in fromAffine() - not for fromBytes(), which always created valid points.
2611
+ assertValidity() {
2612
+ assertValidMemo(this);
2613
+ }
2614
+ // Compare one point to another.
2615
+ equals(other) {
2616
+ aedpoint(other);
2617
+ const { X: X1, Y: Y1, Z: Z1 } = this;
2618
+ const { X: X2, Y: Y2, Z: Z2 } = other;
2619
+ const X1Z2 = modP(X1 * Z2);
2620
+ const X2Z1 = modP(X2 * Z1);
2621
+ const Y1Z2 = modP(Y1 * Z2);
2622
+ const Y2Z1 = modP(Y2 * Z1);
2623
+ return X1Z2 === X2Z1 && Y1Z2 === Y2Z1;
2624
+ }
2625
+ is0() {
2626
+ return this.equals(Point.ZERO);
2627
+ }
2628
+ negate() {
2629
+ return new Point(modP(-this.X), this.Y, this.Z, modP(-this.T));
2630
+ }
2631
+ // Fast algo for doubling Extended Point.
2632
+ // https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#doubling-dbl-2008-hwcd
2633
+ // Cost: 4M + 4S + 1*a + 6add + 1*2.
2634
+ double() {
2635
+ const { a } = CURVE;
2636
+ const { X: X1, Y: Y1, Z: Z1 } = this;
2637
+ const A = modP(X1 * X1);
2638
+ const B = modP(Y1 * Y1);
2639
+ const C = modP(_2n2 * modP(Z1 * Z1));
2640
+ const D = modP(a * A);
2641
+ const x1y1 = X1 + Y1;
2642
+ const E = modP(modP(x1y1 * x1y1) - A - B);
2643
+ const G = D + B;
2644
+ const F = G - C;
2645
+ const H = D - B;
2646
+ const X3 = modP(E * F);
2647
+ const Y3 = modP(G * H);
2648
+ const T3 = modP(E * H);
2649
+ const Z3 = modP(F * G);
2650
+ return new Point(X3, Y3, Z3, T3);
2651
+ }
2652
+ // Fast algo for adding 2 Extended Points.
2653
+ // https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#addition-add-2008-hwcd
2654
+ // Cost: 9M + 1*a + 1*d + 7add.
2655
+ add(other) {
2656
+ aedpoint(other);
2657
+ const { a, d } = CURVE;
2658
+ const { X: X1, Y: Y1, Z: Z1, T: T1 } = this;
2659
+ const { X: X2, Y: Y2, Z: Z2, T: T2 } = other;
2660
+ const A = modP(X1 * X2);
2661
+ const B = modP(Y1 * Y2);
2662
+ const C = modP(T1 * d * T2);
2663
+ const D = modP(Z1 * Z2);
2664
+ const E = modP((X1 + Y1) * (X2 + Y2) - A - B);
2665
+ const F = D - C;
2666
+ const G = D + C;
2667
+ const H = modP(B - a * A);
2668
+ const X3 = modP(E * F);
2669
+ const Y3 = modP(G * H);
2670
+ const T3 = modP(E * H);
2671
+ const Z3 = modP(F * G);
2672
+ return new Point(X3, Y3, Z3, T3);
2673
+ }
2674
+ subtract(other) {
2675
+ return this.add(other.negate());
2676
+ }
2677
+ // Constant-time multiplication.
2678
+ multiply(scalar) {
2679
+ if (!Fn.isValidNot0(scalar))
2680
+ throw new Error("invalid scalar: expected 1 <= sc < curve.n");
2681
+ const { p, f } = wnaf.cached(this, scalar, (p2) => normalizeZ(Point, p2));
2682
+ return normalizeZ(Point, [p, f])[0];
2683
+ }
2684
+ // Non-constant-time multiplication. Uses double-and-add algorithm.
2685
+ // It's faster, but should only be used when you don't care about
2686
+ // an exposed private key e.g. sig verification.
2687
+ // Does NOT allow scalars higher than CURVE.n.
2688
+ // Accepts optional accumulator to merge with multiply (important for sparse scalars)
2689
+ multiplyUnsafe(scalar, acc = Point.ZERO) {
2690
+ if (!Fn.isValid(scalar))
2691
+ throw new Error("invalid scalar: expected 0 <= sc < curve.n");
2692
+ if (scalar === _0n4)
2693
+ return Point.ZERO;
2694
+ if (this.is0() || scalar === _1n4)
2695
+ return this;
2696
+ return wnaf.unsafe(this, scalar, (p) => normalizeZ(Point, p), acc);
2697
+ }
2698
+ // Checks if point is of small order.
2699
+ // If you add something to small order point, you will have "dirty"
2700
+ // point with torsion component.
2701
+ // Multiplies point by cofactor and checks if the result is 0.
2702
+ isSmallOrder() {
2703
+ return this.multiplyUnsafe(cofactor).is0();
2704
+ }
2705
+ // Multiplies point by curve order and checks if the result is 0.
2706
+ // Returns `false` is the point is dirty.
2707
+ isTorsionFree() {
2708
+ return wnaf.unsafe(this, CURVE.n).is0();
2709
+ }
2710
+ // Converts Extended point to default (x, y) coordinates.
2711
+ // Can accept precomputed Z^-1 - for example, from invertBatch.
2712
+ toAffine(invertedZ) {
2713
+ return toAffineMemo(this, invertedZ);
2714
+ }
2715
+ clearCofactor() {
2716
+ if (cofactor === _1n4)
2717
+ return this;
2718
+ return this.multiplyUnsafe(cofactor);
2719
+ }
2720
+ toBytes() {
2721
+ const { x, y } = this.toAffine();
2722
+ const bytes = Fp.toBytes(y);
2723
+ bytes[bytes.length - 1] |= x & _1n4 ? 128 : 0;
2724
+ return bytes;
2725
+ }
2726
+ toHex() {
2727
+ return bytesToHex(this.toBytes());
2728
+ }
2729
+ toString() {
2730
+ return `<Point ${this.is0() ? "ZERO" : this.toHex()}>`;
2731
+ }
2732
+ }
2733
+ const wnaf = new wNAF(Point, Fn.BITS);
2734
+ Point.BASE.precompute(8);
2735
+ return Point;
2736
+ }
2737
+ function eddsa(Point, cHash, eddsaOpts = {}) {
2738
+ if (typeof cHash !== "function")
2739
+ throw new Error('"hash" function param is required');
2740
+ validateObject(eddsaOpts, {}, {
2741
+ adjustScalarBytes: "function",
2742
+ randomBytes: "function",
2743
+ domain: "function",
2744
+ prehash: "function",
2745
+ mapToCurve: "function"
2746
+ });
2747
+ const { prehash } = eddsaOpts;
2748
+ const { BASE, Fp, Fn } = Point;
2749
+ const randomBytes2 = eddsaOpts.randomBytes || randomBytes;
2750
+ const adjustScalarBytes2 = eddsaOpts.adjustScalarBytes || ((bytes) => bytes);
2751
+ const domain = eddsaOpts.domain || ((data, ctx, phflag) => {
2752
+ abool(phflag, "phflag");
2753
+ if (ctx.length || phflag)
2754
+ throw new Error("Contexts/pre-hash are not supported");
2755
+ return data;
2756
+ });
2757
+ function modN_LE(hash) {
2758
+ return Fn.create(bytesToNumberLE(hash));
2759
+ }
2760
+ function getPrivateScalar(key) {
2761
+ const len = lengths.secretKey;
2762
+ abytes(key, lengths.secretKey, "secretKey");
2763
+ const hashed = abytes(cHash(key), 2 * len, "hashedSecretKey");
2764
+ const head = adjustScalarBytes2(hashed.slice(0, len));
2765
+ const prefix = hashed.slice(len, 2 * len);
2766
+ const scalar = modN_LE(head);
2767
+ return { head, prefix, scalar };
2768
+ }
2769
+ function getExtendedPublicKey(secretKey) {
2770
+ const { head, prefix, scalar } = getPrivateScalar(secretKey);
2771
+ const point = BASE.multiply(scalar);
2772
+ const pointBytes = point.toBytes();
2773
+ return { head, prefix, scalar, point, pointBytes };
2774
+ }
2775
+ function getPublicKey(secretKey) {
2776
+ return getExtendedPublicKey(secretKey).pointBytes;
2777
+ }
2778
+ function hashDomainToScalar(context = Uint8Array.of(), ...msgs) {
2779
+ const msg = concatBytes(...msgs);
2780
+ return modN_LE(cHash(domain(msg, abytes(context, void 0, "context"), !!prehash)));
2781
+ }
2782
+ function sign(msg, secretKey, options = {}) {
2783
+ msg = abytes(msg, void 0, "message");
2784
+ if (prehash)
2785
+ msg = prehash(msg);
2786
+ const { prefix, scalar, pointBytes } = getExtendedPublicKey(secretKey);
2787
+ const r = hashDomainToScalar(options.context, prefix, msg);
2788
+ const R = BASE.multiply(r).toBytes();
2789
+ const k = hashDomainToScalar(options.context, R, pointBytes, msg);
2790
+ const s = Fn.create(r + k * scalar);
2791
+ if (!Fn.isValid(s))
2792
+ throw new Error("sign failed: invalid s");
2793
+ const rs = concatBytes(R, Fn.toBytes(s));
2794
+ return abytes(rs, lengths.signature, "result");
2795
+ }
2796
+ const verifyOpts = { zip215: true };
2797
+ function verify(sig, msg, publicKey, options = verifyOpts) {
2798
+ const { context, zip215 } = options;
2799
+ const len = lengths.signature;
2800
+ sig = abytes(sig, len, "signature");
2801
+ msg = abytes(msg, void 0, "message");
2802
+ publicKey = abytes(publicKey, lengths.publicKey, "publicKey");
2803
+ if (zip215 !== void 0)
2804
+ abool(zip215, "zip215");
2805
+ if (prehash)
2806
+ msg = prehash(msg);
2807
+ const mid = len / 2;
2808
+ const r = sig.subarray(0, mid);
2809
+ const s = bytesToNumberLE(sig.subarray(mid, len));
2810
+ let A, R, SB;
2811
+ try {
2812
+ A = Point.fromBytes(publicKey, zip215);
2813
+ R = Point.fromBytes(r, zip215);
2814
+ SB = BASE.multiplyUnsafe(s);
2815
+ } catch (error) {
2816
+ return false;
2817
+ }
2818
+ if (!zip215 && A.isSmallOrder())
2819
+ return false;
2820
+ const k = hashDomainToScalar(context, R.toBytes(), A.toBytes(), msg);
2821
+ const RkA = R.add(A.multiplyUnsafe(k));
2822
+ return RkA.subtract(SB).clearCofactor().is0();
2823
+ }
2824
+ const _size = Fp.BYTES;
2825
+ const lengths = {
2826
+ secretKey: _size,
2827
+ publicKey: _size,
2828
+ signature: 2 * _size,
2829
+ seed: _size
2830
+ };
2831
+ function randomSecretKey(seed = randomBytes2(lengths.seed)) {
2832
+ return abytes(seed, lengths.seed, "seed");
2833
+ }
2834
+ function isValidSecretKey(key) {
2835
+ return isBytes(key) && key.length === Fn.BYTES;
2836
+ }
2837
+ function isValidPublicKey(key, zip215) {
2838
+ try {
2839
+ return !!Point.fromBytes(key, zip215);
2840
+ } catch (error) {
2841
+ return false;
2842
+ }
2843
+ }
2844
+ const utils = {
2845
+ getExtendedPublicKey,
2846
+ randomSecretKey,
2847
+ isValidSecretKey,
2848
+ isValidPublicKey,
2849
+ /**
2850
+ * Converts ed public key to x public key. Uses formula:
2851
+ * - ed25519:
2852
+ * - `(u, v) = ((1+y)/(1-y), sqrt(-486664)*u/x)`
2853
+ * - `(x, y) = (sqrt(-486664)*u/v, (u-1)/(u+1))`
2854
+ * - ed448:
2855
+ * - `(u, v) = ((y-1)/(y+1), sqrt(156324)*u/x)`
2856
+ * - `(x, y) = (sqrt(156324)*u/v, (1+u)/(1-u))`
2857
+ */
2858
+ toMontgomery(publicKey) {
2859
+ const { y } = Point.fromBytes(publicKey);
2860
+ const size = lengths.publicKey;
2861
+ const is25519 = size === 32;
2862
+ if (!is25519 && size !== 57)
2863
+ throw new Error("only defined for 25519 and 448");
2864
+ const u = is25519 ? Fp.div(_1n4 + y, _1n4 - y) : Fp.div(y - _1n4, y + _1n4);
2865
+ return Fp.toBytes(u);
2866
+ },
2867
+ toMontgomerySecret(secretKey) {
2868
+ const size = lengths.secretKey;
2869
+ abytes(secretKey, size);
2870
+ const hashed = cHash(secretKey.subarray(0, size));
2871
+ return adjustScalarBytes2(hashed).subarray(0, size);
2872
+ }
2873
+ };
2874
+ return Object.freeze({
2875
+ keygen: createKeygen(randomSecretKey, getPublicKey),
2876
+ getPublicKey,
2877
+ sign,
2878
+ verify,
2879
+ utils,
2880
+ Point,
2881
+ lengths
2882
+ });
2883
+ }
2884
+
2885
+ // node_modules/@noble/curves/ed25519.js
2886
+ var _1n5 = BigInt(1);
2887
+ var _2n3 = BigInt(2);
2888
+ var _5n2 = BigInt(5);
2889
+ var _8n3 = BigInt(8);
2890
+ var ed25519_CURVE_p = BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed");
2891
+ var ed25519_CURVE = /* @__PURE__ */ (() => ({
2892
+ p: ed25519_CURVE_p,
2893
+ n: BigInt("0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed"),
2894
+ h: _8n3,
2895
+ a: BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec"),
2896
+ d: BigInt("0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3"),
2897
+ Gx: BigInt("0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a"),
2898
+ Gy: BigInt("0x6666666666666666666666666666666666666666666666666666666666666658")
2899
+ }))();
2900
+ function ed25519_pow_2_252_3(x) {
2901
+ const _10n = BigInt(10), _20n = BigInt(20), _40n = BigInt(40), _80n = BigInt(80);
2902
+ const P = ed25519_CURVE_p;
2903
+ const x2 = x * x % P;
2904
+ const b2 = x2 * x % P;
2905
+ const b4 = pow2(b2, _2n3, P) * b2 % P;
2906
+ const b5 = pow2(b4, _1n5, P) * x % P;
2907
+ const b10 = pow2(b5, _5n2, P) * b5 % P;
2908
+ const b20 = pow2(b10, _10n, P) * b10 % P;
2909
+ const b40 = pow2(b20, _20n, P) * b20 % P;
2910
+ const b80 = pow2(b40, _40n, P) * b40 % P;
2911
+ const b160 = pow2(b80, _80n, P) * b80 % P;
2912
+ const b240 = pow2(b160, _80n, P) * b80 % P;
2913
+ const b250 = pow2(b240, _10n, P) * b10 % P;
2914
+ const pow_p_5_8 = pow2(b250, _2n3, P) * x % P;
2915
+ return { pow_p_5_8, b2 };
2916
+ }
2917
+ function adjustScalarBytes(bytes) {
2918
+ bytes[0] &= 248;
2919
+ bytes[31] &= 127;
2920
+ bytes[31] |= 64;
2921
+ return bytes;
2922
+ }
2923
+ var ED25519_SQRT_M1 = /* @__PURE__ */ BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752");
2924
+ function uvRatio(u, v) {
2925
+ const P = ed25519_CURVE_p;
2926
+ const v3 = mod(v * v * v, P);
2927
+ const v7 = mod(v3 * v3 * v, P);
2928
+ const pow = ed25519_pow_2_252_3(u * v7).pow_p_5_8;
2929
+ let x = mod(u * v3 * pow, P);
2930
+ const vx2 = mod(v * x * x, P);
2931
+ const root1 = x;
2932
+ const root2 = mod(x * ED25519_SQRT_M1, P);
2933
+ const useRoot1 = vx2 === u;
2934
+ const useRoot2 = vx2 === mod(-u, P);
2935
+ const noRoot = vx2 === mod(-u * ED25519_SQRT_M1, P);
2936
+ if (useRoot1)
2937
+ x = root1;
2938
+ if (useRoot2 || noRoot)
2939
+ x = root2;
2940
+ if (isNegativeLE(x, P))
2941
+ x = mod(-x, P);
2942
+ return { isValid: useRoot1 || useRoot2, value: x };
2943
+ }
2944
+ var ed25519_Point = /* @__PURE__ */ edwards(ed25519_CURVE, { uvRatio });
2945
+ function ed(opts) {
2946
+ return eddsa(ed25519_Point, sha512, Object.assign({ adjustScalarBytes }, opts));
2947
+ }
2948
+ var ed25519 = /* @__PURE__ */ ed({});
2949
+
2950
+ // index.mjs
2951
+ var QsafeSigner = class _QsafeSigner {
2952
+ // Shared stateless instances for verify() — one per "version:variant", loaded once.
2953
+ // These never have keypairFromSeed() called on them, so they are safe to share.
2954
+ /** @type {Record<string, MayoSigner>} */
2955
+ static #sharedSigners = {};
2956
+ // Per-instance signer for sign() — each QsafeSigner has its own MayoSigner.
2957
+ // MayoSigner stores secretKey internally after keypairFromSeed(), so sharing
2958
+ // across instances would cause one loadMasterKey() to overwrite another's key.
2959
+ /** @type {MayoSigner|null} */
2960
+ #mayoSigner = null;
2961
+ /** @type {Uint8Array|null} */
2962
+ #edPriv = null;
2963
+ #version;
2964
+ #variant;
2965
+ /** @param {string} version @param {'mayo1' | 'mayo2'} variant */
2966
+ constructor(version, variant) {
2967
+ this.#version = version;
2968
+ this.#variant = variant;
2969
+ }
2970
+ /** Creates a signer ready for signing with a single version+variant.
2971
+ * Ideal for signing use-cases. Each instance gets its own MayoSigner.
2972
+ * @param {'mayo1' | 'mayo2'} [variant] - Default: 'mayo1'
2973
+ * @param {'1'} [version] - Protocol version. Default: CURRENT_VERSION */
2974
+ static async create(variant = DEFAULT_VARIANT, version = CURRENT_VERSION) {
2975
+ const proto = PROTOCOL_VERSIONS[version];
2976
+ if (!proto) throw new Error(`Unknown protocol version: ${version}`);
2977
+ if (!proto.variants[variant]) throw new Error(`Unknown variant '${variant}' for version ${version}`);
2978
+ const instance = new _QsafeSigner(version, variant);
2979
+ await instance.#ensureShared(version, variant);
2980
+ instance.#mayoSigner = await proto.loader(variant);
2981
+ return instance;
2982
+ }
2983
+ /** Creates a verifier with all variants of the given versions pre-loaded.
2984
+ * Ideal for validators needing backward-compatible verify().
2985
+ * Calling loadMasterKey() or sign() on a createFull() instance will throw.
2986
+ * @param {string[]} [versions] - Defaults to all known versions. Available: ['1'] */
2987
+ static async createFull(versions = AVAILABLE_VERSIONS) {
2988
+ const instance = new _QsafeSigner(CURRENT_VERSION, DEFAULT_VARIANT);
2989
+ for (const version of versions) {
2990
+ const proto = PROTOCOL_VERSIONS[version];
2991
+ if (!proto) throw new Error(`Unknown protocol version: ${version}`);
2992
+ for (const variant in proto.variants)
2993
+ await instance.#ensureShared(version, variant);
2994
+ }
2995
+ return instance;
2996
+ }
2997
+ /** Generates a cryptographically random master seed. @param {16|24|32} [size] - Seed size in bytes. Default: 32 */
2998
+ static generateMasterKey(size = 32) {
2999
+ if (size !== 16 && size !== 24 && size !== 32) throw new Error("Master key size must be 16, 24 or 32 bytes");
3000
+ const seed = new Uint8Array(size);
3001
+ crypto.getRandomValues(seed);
3002
+ return seed;
3003
+ }
3004
+ /** Checks that a signature buffer has a valid header and correct byte length.
3005
+ * - Zero crypto — safe to call as a fast pre-filter. @param {Uint8Array} signature */
3006
+ static checkFormat(signature) {
3007
+ const h = QsafeHelper.parseHeader(signature);
3008
+ if (h) return signature.length === HEADER_SIZE + ED25519_SIG_SIZE + h.desc.sigSize;
3009
+ else return false;
3010
+ }
3011
+ /** Verifies a hybrid signature. Lazy-loads the required WASM variant if not already cached.
3012
+ * - Works with any protocol version whose descriptors are registered above.
3013
+ * @param {Uint8Array} message
3014
+ * @param {Uint8Array} signature - from sign()
3015
+ * @param {Uint8Array} publicKey - from loadMasterKey() */
3016
+ async verify(message, signature, publicKey) {
3017
+ const h = QsafeHelper.parseHeader(signature);
3018
+ if (!h || !_QsafeSigner.checkFormat(signature)) return false;
3019
+ const sigReader = new BinaryReader(signature);
3020
+ sigReader.read(HEADER_SIZE);
3021
+ const edSig = sigReader.read(ED25519_SIG_SIZE);
3022
+ const mayoSig = sigReader.read(h.desc.sigSize);
3023
+ const pubReader = new BinaryReader(publicKey);
3024
+ const edPub = pubReader.read(ED25519_PUB_SIZE);
3025
+ const mayoPub = pubReader.read(h.desc.pubKeySize);
3026
+ if (!ed25519.verify(edSig, message, edPub)) return false;
3027
+ const signer = await this.#ensureShared(h.version, h.variant);
3028
+ return signer.verify(message, mayoSig, mayoPub);
3029
+ }
3030
+ /** Derives and loads a keypair from a master seed (16–32 bytes).
3031
+ * - After this call, sign() is ready to use.
3032
+ * - Requires a signer created with create(), not createFull().
3033
+ * @param {Uint8Array} masterSeed @returns {Keypair} The generated public + secret key pair */
3034
+ loadMasterKey(masterSeed) {
3035
+ const isValidSize = masterSeed instanceof Uint8Array && (masterSeed.length === 16 || masterSeed.length === 24 || masterSeed.length === 32);
3036
+ if (!isValidSize) throw new TypeError("masterSeed must be a Uint8Array of 16, 24 or 32 bytes");
3037
+ if (!this.#mayoSigner) throw new Error("No signing instance \u2014 use QsafeSigner.create(), not createFull()");
3038
+ const proto = PROTOCOL_VERSIONS[this.#version];
3039
+ const desc = proto.variants[this.#variant];
3040
+ const { edSeed, mayoSeed } = QsafeHelper.deriveSeeds(masterSeed, desc.seedSize);
3041
+ this.#edPriv = edSeed;
3042
+ const mayo = this.#mayoSigner.keypairFromSeed(mayoSeed);
3043
+ if (!mayo || !this.#mayoSigner.ready) throw new Error("MAYO keypair generation failed");
3044
+ const pub = new BinaryWriter(ED25519_PUB_SIZE + desc.pubKeySize);
3045
+ pub.writeBytes(ed25519.getPublicKey(edSeed));
3046
+ pub.writeBytes(mayo.publicKey);
3047
+ const sec = new BinaryWriter(1 + ED25519_PRIV_SIZE + desc.seedSize);
3048
+ sec.writeByte(VARIANT_ID[this.#variant]);
3049
+ sec.writeBytes(edSeed);
3050
+ sec.writeBytes(mayo.secretKey);
3051
+ return { publicKey: pub.getBytes(), secretKey: sec.getBytes() };
3052
+ }
3053
+ /** Signs a message. Requires a prior loadMasterKey() call.
3054
+ * - The same instance can sign many messages without re-loading the key.
3055
+ * @param {Uint8Array} message */
3056
+ sign(message) {
3057
+ if (!this.#edPriv) throw new Error("No key loaded \u2014 call loadMasterKey() first");
3058
+ if (!this.#mayoSigner) throw new Error("No signing instance \u2014 use QsafeSigner.create(), not createFull()");
3059
+ if (!this.#mayoSigner.ready) throw new Error("MAYO signer not ready \u2014 was create() called?");
3060
+ const proto = PROTOCOL_VERSIONS[this.#version];
3061
+ const desc = proto.variants[this.#variant];
3062
+ const edSig = ed25519.sign(message, this.#edPriv);
3063
+ const mayoSig = this.#mayoSigner.sign(message);
3064
+ if (!mayoSig) throw new Error("MAYO sign() returned null");
3065
+ const writer = new BinaryWriter(HEADER_SIZE + ED25519_SIG_SIZE + desc.sigSize);
3066
+ writer.writeU16BE(Number(this.#version));
3067
+ writer.writeByte(VARIANT_ID[this.#variant]);
3068
+ writer.writeBytes(edSig);
3069
+ writer.writeBytes(mayoSig);
3070
+ return writer.getBytes();
3071
+ }
3072
+ /** Loads and caches a shared MayoSigner for version+variant. Idempotent.
3073
+ * These instances are ONLY used for verify() — keypairFromSeed() is never called on them.
3074
+ * @param {string} version @param {'mayo1' | 'mayo2' | string} variant */
3075
+ async #ensureShared(version, variant) {
3076
+ const key = `${version}:${variant}`;
3077
+ if (_QsafeSigner.#sharedSigners[key]) return _QsafeSigner.#sharedSigners[key];
3078
+ const proto = PROTOCOL_VERSIONS[version];
3079
+ const signer = await proto.loader(variant);
3080
+ _QsafeSigner.#sharedSigners[key] = signer;
3081
+ return signer;
3082
+ }
3083
+ };
3084
+ export {
3085
+ AVAILABLE_VERSIONS,
3086
+ CURRENT_VERSION,
3087
+ PROTOCOL_VERSIONS,
3088
+ QsafeSigner,
3089
+ ed25519
3090
+ };
3091
+ /*! Bundled license information:
3092
+
3093
+ @noble/hashes/utils.js:
3094
+ (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
3095
+
3096
+ @noble/curves/utils.js:
3097
+ @noble/curves/abstract/modular.js:
3098
+ @noble/curves/abstract/curve.js:
3099
+ @noble/curves/abstract/edwards.js:
3100
+ @noble/curves/ed25519.js:
3101
+ (*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
3102
+ */