@semaphore-protocol/identity 3.6.0 → 3.8.0

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.
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @module @semaphore-protocol/identity
3
- * @version 3.6.0
3
+ * @version 3.8.0
4
4
  * @file A library to create Semaphore identities.
5
5
  * @copyright Ethereum Foundation 2022
6
6
  * @license MIT
@@ -8,959 +8,30 @@
8
8
  */
9
9
  import { BigNumber } from '@ethersproject/bignumber';
10
10
  import hash from 'js-sha512';
11
- import require$$1 from 'crypto';
12
11
  import { randomBytes } from '@ethersproject/random';
13
12
 
14
13
  var poseidon1$1 = {};
15
14
 
16
- var scalar = {};
17
-
18
- Object.defineProperty(scalar, "__esModule", {
19
- value: true
20
- });
21
- scalar.abs = abs;
22
- scalar.add = add;
23
- scalar.band = band;
24
- scalar.bitLength = bitLength;
25
- scalar.bits = bits;
26
- scalar.bor = bor;
27
- scalar.bxor = bxor;
28
- scalar.div = div;
29
- scalar.e = void 0;
30
- scalar.eq = eq;
31
- scalar.exp = exp$1;
32
- scalar.fromArray = fromArray;
33
- scalar.fromRprBE = fromRprBE;
34
- scalar.fromRprLE = fromRprLE;
35
- scalar.fromString = fromString;
36
- scalar.geq = geq;
37
- scalar.gt = gt;
38
- scalar.isNegative = isNegative;
39
- scalar.isOdd = isOdd;
40
- scalar.isZero = isZero;
41
- scalar.land = land;
42
- scalar.leq = leq;
43
- scalar.lnot = lnot;
44
- scalar.lor = lor;
45
- scalar.lt = lt;
46
- scalar.mod = mod;
47
- scalar.mul = mul;
48
- scalar.naf = naf;
49
- scalar.neg = neg;
50
- scalar.neq = neq;
51
- scalar.one = void 0;
52
- scalar.pow = pow;
53
- scalar.shiftLeft = shiftLeft;
54
- scalar.shiftRight = shiftRight;
55
- scalar.shr = scalar.shl = void 0;
56
- scalar.square = square;
57
- scalar.sub = sub;
58
- scalar.toArray = toArray;
59
- scalar.toLEBuff = toLEBuff;
60
- scalar.toNumber = toNumber;
61
- scalar.toRprBE = toRprBE;
62
- scalar.toRprLE = toRprLE;
63
- scalar.toString = toString;
64
- scalar.zero = void 0;
65
- const hexLen = [0, 1, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4];
66
- function fromString(s, radix) {
67
- if (!radix || radix == 10) {
68
- return BigInt(s);
69
- } else if (radix == 16) {
70
- if (s.slice(0, 2) == "0x") {
71
- return BigInt(s);
72
- } else {
73
- return BigInt("0x" + s);
74
- }
75
- }
76
- }
77
- const e = fromString;
78
- scalar.e = e;
79
- function fromArray(a, radix) {
80
- let acc = BigInt(0);
81
- radix = BigInt(radix);
82
- for (let i = 0; i < a.length; i++) {
83
- acc = acc * radix + BigInt(a[i]);
84
- }
85
- return acc;
86
- }
87
- function bitLength(a) {
88
- const aS = a.toString(16);
89
- return (aS.length - 1) * 4 + hexLen[parseInt(aS[0], 16)];
90
- }
91
- function isNegative(a) {
92
- return BigInt(a) < BigInt(0);
93
- }
94
- function isZero(a) {
95
- return !a;
96
- }
97
- function shiftLeft(a, n) {
98
- return BigInt(a) << BigInt(n);
99
- }
100
- function shiftRight(a, n) {
101
- return BigInt(a) >> BigInt(n);
102
- }
103
- const shl = shiftLeft;
104
- scalar.shl = shl;
105
- const shr = shiftRight;
106
- scalar.shr = shr;
107
- function isOdd(a) {
108
- return (BigInt(a) & BigInt(1)) == BigInt(1);
109
- }
110
- function naf(n) {
111
- let E = BigInt(n);
112
- const res = [];
113
- while (E) {
114
- if (E & BigInt(1)) {
115
- const z = 2 - Number(E % BigInt(4));
116
- res.push(z);
117
- E = E - BigInt(z);
118
- } else {
119
- res.push(0);
120
- }
121
- E = E >> BigInt(1);
122
- }
123
- return res;
124
- }
125
- function bits(n) {
126
- let E = BigInt(n);
127
- const res = [];
128
- while (E) {
129
- if (E & BigInt(1)) {
130
- res.push(1);
131
- } else {
132
- res.push(0);
133
- }
134
- E = E >> BigInt(1);
135
- }
136
- return res;
137
- }
138
- function toNumber(s) {
139
- if (s > BigInt(Number.MAX_SAFE_INTEGER)) {
140
- throw new Error("Number too big");
141
- }
142
- return Number(s);
143
- }
144
- function toArray(s, radix) {
145
- const res = [];
146
- let rem = BigInt(s);
147
- radix = BigInt(radix);
148
- while (rem) {
149
- res.unshift(Number(rem % radix));
150
- rem = rem / radix;
151
- }
152
- return res;
153
- }
154
- function add(a, b) {
155
- return BigInt(a) + BigInt(b);
156
- }
157
- function sub(a, b) {
158
- return BigInt(a) - BigInt(b);
159
- }
160
- function neg(a) {
161
- return -BigInt(a);
162
- }
163
- function mul(a, b) {
164
- return BigInt(a) * BigInt(b);
165
- }
166
- function square(a) {
167
- return BigInt(a) * BigInt(a);
168
- }
169
- function pow(a, b) {
170
- return BigInt(a) ** BigInt(b);
171
- }
172
- function exp$1(a, b) {
173
- return BigInt(a) ** BigInt(b);
174
- }
175
- function abs(a) {
176
- return BigInt(a) >= 0 ? BigInt(a) : -BigInt(a);
177
- }
178
- function div(a, b) {
179
- return BigInt(a) / BigInt(b);
180
- }
181
- function mod(a, b) {
182
- return BigInt(a) % BigInt(b);
183
- }
184
- function eq(a, b) {
185
- return BigInt(a) == BigInt(b);
186
- }
187
- function neq(a, b) {
188
- return BigInt(a) != BigInt(b);
189
- }
190
- function lt(a, b) {
191
- return BigInt(a) < BigInt(b);
192
- }
193
- function gt(a, b) {
194
- return BigInt(a) > BigInt(b);
195
- }
196
- function leq(a, b) {
197
- return BigInt(a) <= BigInt(b);
198
- }
199
- function geq(a, b) {
200
- return BigInt(a) >= BigInt(b);
201
- }
202
- function band(a, b) {
203
- return BigInt(a) & BigInt(b);
204
- }
205
- function bor(a, b) {
206
- return BigInt(a) | BigInt(b);
207
- }
208
- function bxor(a, b) {
209
- return BigInt(a) ^ BigInt(b);
210
- }
211
- function land(a, b) {
212
- return BigInt(a) && BigInt(b);
213
- }
214
- function lor(a, b) {
215
- return BigInt(a) || BigInt(b);
216
- }
217
- function lnot(a) {
218
- return !BigInt(a);
219
- }
220
- function toRprLE(buff, o, e, n8) {
221
- const s = "0000000" + e.toString(16);
222
- const v = new Uint32Array(buff.buffer, o, n8 / 4);
223
- const l = ((s.length - 7) * 4 - 1 >> 5) + 1;
224
- for (let i = 0; i < l; i++) v[i] = parseInt(s.substring(s.length - 8 * i - 8, s.length - 8 * i), 16);
225
- for (let i = l; i < v.length; i++) v[i] = 0;
226
- for (let i = v.length * 4; i < n8; i++) buff[i] = toNumber(band(shiftRight(e, i * 8), 0xFF));
227
- }
228
- function toRprBE(buff, o, e, n8) {
229
- const s = "0000000" + e.toString(16);
230
- const v = new DataView(buff.buffer, buff.byteOffset + o, n8);
231
- const l = ((s.length - 7) * 4 - 1 >> 5) + 1;
232
- for (let i = 0; i < l; i++) v.setUint32(n8 - i * 4 - 4, parseInt(s.substring(s.length - 8 * i - 8, s.length - 8 * i), 16), false);
233
- for (let i = 0; i < n8 / 4 - l; i++) v[i] = 0;
234
- }
235
- function fromRprLE(buff, o, n8) {
236
- n8 = n8 || buff.byteLength;
237
- o = o || 0;
238
- const v = new Uint32Array(buff.buffer, o, n8 / 4);
239
- const a = new Array(n8 / 4);
240
- v.forEach((ch, i) => a[a.length - i - 1] = ch.toString(16).padStart(8, "0"));
241
- return fromString(a.join(""), 16);
242
- }
243
- function fromRprBE(buff, o, n8) {
244
- n8 = n8 || buff.byteLength;
245
- o = o || 0;
246
- const v = new DataView(buff.buffer, buff.byteOffset + o, n8);
247
- const a = new Array(n8 / 4);
248
- for (let i = 0; i < n8 / 4; i++) {
249
- a[i] = v.getUint32(i * 4, false).toString(16).padStart(8, "0");
250
- }
251
- return fromString(a.join(""), 16);
252
- }
253
- function toString(a, radix) {
254
- return a.toString(radix);
255
- }
256
- function toLEBuff(a) {
257
- const buff = new Uint8Array(Math.floor((bitLength(a) - 1) / 8) + 1);
258
- toRprLE(buff, 0, a, buff.byteLength);
259
- return buff;
260
- }
261
- const zero = e(0);
262
- scalar.zero = zero;
263
- const one = e(1);
264
- scalar.one = one;
265
-
266
- var f1field = {};
267
-
268
- var futils$1 = {};
269
-
270
- Object.defineProperty(futils$1, "__esModule", {
271
- value: true
272
- });
273
- futils$1.exp = exp;
274
- futils$1.mulScalar = mulScalar;
275
- var Scalar$4 = _interopRequireWildcard$3(scalar);
276
- function _getRequireWildcardCache$3(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache$3 = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
277
- function _interopRequireWildcard$3(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache$3(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
278
- function mulScalar(F, base, e) {
279
- let res;
280
- if (Scalar$4.isZero(e)) return F.zero;
281
- const n = Scalar$4.naf(e);
282
- if (n[n.length - 1] == 1) {
283
- res = base;
284
- } else if (n[n.length - 1] == -1) {
285
- res = F.neg(base);
286
- } else {
287
- throw new Error("invlaud NAF");
288
- }
289
- for (let i = n.length - 2; i >= 0; i--) {
290
- res = F.double(res);
291
- if (n[i] == 1) {
292
- res = F.add(res, base);
293
- } else if (n[i] == -1) {
294
- res = F.sub(res, base);
295
- }
296
- }
297
- return res;
298
- }
299
- function exp(F, base, e) {
300
- if (Scalar$4.isZero(e)) return F.one;
301
- const n = Scalar$4.bits(e);
302
- if (n.length == 0) return F.one;
303
- let res = base;
304
- for (let i = n.length - 2; i >= 0; i--) {
305
- res = F.square(res);
306
- if (n[i]) {
307
- res = F.mul(res, base);
308
- }
309
- }
310
- return res;
311
- }
312
-
313
- var fsqrt = {};
314
-
315
- Object.defineProperty(fsqrt, "__esModule", {
316
- value: true
317
- });
318
- fsqrt.default = buildSqrt;
319
- var Scalar$3 = _interopRequireWildcard$2(scalar);
320
- function _getRequireWildcardCache$2(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache$2 = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
321
- function _interopRequireWildcard$2(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache$2(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
322
- function buildSqrt(F) {
323
- if (F.m % 2 == 1) {
324
- if (Scalar$3.eq(Scalar$3.mod(F.p, 4), 1)) {
325
- if (Scalar$3.eq(Scalar$3.mod(F.p, 8), 1)) {
326
- if (Scalar$3.eq(Scalar$3.mod(F.p, 16), 1)) {
327
- alg5_tonelliShanks(F);
328
- } else if (Scalar$3.eq(Scalar$3.mod(F.p, 16), 9)) {
329
- alg4_kong(F);
330
- } else {
331
- throw new Error("Field withot sqrt");
332
- }
333
- } else if (Scalar$3.eq(Scalar$3.mod(F.p, 8), 5)) {
334
- alg3_atkin(F);
335
- } else {
336
- throw new Error("Field withot sqrt");
337
- }
338
- } else if (Scalar$3.eq(Scalar$3.mod(F.p, 4), 3)) {
339
- alg2_shanks(F);
340
- }
341
- } else {
342
- const pm2mod4 = Scalar$3.mod(Scalar$3.pow(F.p, F.m / 2), 4);
343
- if (pm2mod4 == 1) {
344
- alg10_adj(F);
345
- } else if (pm2mod4 == 3) {
346
- alg9_adj(F);
347
- } else {
348
- alg8_complex(F);
349
- }
350
- }
351
- }
352
- function alg5_tonelliShanks(F) {
353
- F.sqrt_q = Scalar$3.pow(F.p, F.m);
354
- F.sqrt_s = 0;
355
- F.sqrt_t = Scalar$3.sub(F.sqrt_q, 1);
356
- while (!Scalar$3.isOdd(F.sqrt_t)) {
357
- F.sqrt_s = F.sqrt_s + 1;
358
- F.sqrt_t = Scalar$3.div(F.sqrt_t, 2);
359
- }
360
- let c0 = F.one;
361
- while (F.eq(c0, F.one)) {
362
- const c = F.random();
363
- F.sqrt_z = F.pow(c, F.sqrt_t);
364
- c0 = F.pow(F.sqrt_z, 2 ** (F.sqrt_s - 1));
365
- }
366
- F.sqrt_tm1d2 = Scalar$3.div(Scalar$3.sub(F.sqrt_t, 1), 2);
367
- F.sqrt = function (a) {
368
- const F = this;
369
- if (F.isZero(a)) return F.zero;
370
- let w = F.pow(a, F.sqrt_tm1d2);
371
- const a0 = F.pow(F.mul(F.square(w), a), 2 ** (F.sqrt_s - 1));
372
- if (F.eq(a0, F.negone)) return null;
373
- let v = F.sqrt_s;
374
- let x = F.mul(a, w);
375
- let b = F.mul(x, w);
376
- let z = F.sqrt_z;
377
- while (!F.eq(b, F.one)) {
378
- let b2k = F.square(b);
379
- let k = 1;
380
- while (!F.eq(b2k, F.one)) {
381
- b2k = F.square(b2k);
382
- k++;
383
- }
384
- w = z;
385
- for (let i = 0; i < v - k - 1; i++) {
386
- w = F.square(w);
387
- }
388
- z = F.square(w);
389
- b = F.mul(b, z);
390
- x = F.mul(x, w);
391
- v = k;
392
- }
393
- return F.geq(x, F.zero) ? x : F.neg(x);
394
- };
395
- }
396
- function alg4_kong(F) {
397
- F.sqrt = function () {
398
- throw new Error("Sqrt alg 4 not implemented");
399
- };
400
- }
401
- function alg3_atkin(F) {
402
- F.sqrt = function () {
403
- throw new Error("Sqrt alg 3 not implemented");
404
- };
405
- }
406
- function alg2_shanks(F) {
407
- F.sqrt_q = Scalar$3.pow(F.p, F.m);
408
- F.sqrt_e1 = Scalar$3.div(Scalar$3.sub(F.sqrt_q, 3), 4);
409
- F.sqrt = function (a) {
410
- if (this.isZero(a)) return this.zero;
411
- const a1 = this.pow(a, this.sqrt_e1);
412
- const a0 = this.mul(this.square(a1), a);
413
- if (this.eq(a0, this.negone)) return null;
414
- const x = this.mul(a1, a);
415
- return F.geq(x, F.zero) ? x : F.neg(x);
416
- };
417
- }
418
- function alg10_adj(F) {
419
- F.sqrt = function () {
420
- throw new Error("Sqrt alg 10 not implemented");
421
- };
422
- }
423
- function alg9_adj(F) {
424
- F.sqrt_q = Scalar$3.pow(F.p, F.m / 2);
425
- F.sqrt_e34 = Scalar$3.div(Scalar$3.sub(F.sqrt_q, 3), 4);
426
- F.sqrt_e12 = Scalar$3.div(Scalar$3.sub(F.sqrt_q, 1), 2);
427
- F.frobenius = function (n, x) {
428
- if (n % 2 == 1) {
429
- return F.conjugate(x);
430
- } else {
431
- return x;
432
- }
433
- };
434
- F.sqrt = function (a) {
435
- const F = this;
436
- const a1 = F.pow(a, F.sqrt_e34);
437
- const alfa = F.mul(F.square(a1), a);
438
- const a0 = F.mul(F.frobenius(1, alfa), alfa);
439
- if (F.eq(a0, F.negone)) return null;
440
- const x0 = F.mul(a1, a);
441
- let x;
442
- if (F.eq(alfa, F.negone)) {
443
- x = F.mul(x0, [F.F.zero, F.F.one]);
444
- } else {
445
- const b = F.pow(F.add(F.one, alfa), F.sqrt_e12);
446
- x = F.mul(b, x0);
447
- }
448
- return F.geq(x, F.zero) ? x : F.neg(x);
449
- };
450
- }
451
- function alg8_complex(F) {
452
- F.sqrt = function () {
453
- throw new Error("Sqrt alg 8 not implemented");
454
- };
455
- }
456
-
457
- var random = {};
458
-
459
- var chacha = {};
460
-
461
- Object.defineProperty(chacha, "__esModule", {
462
- value: true
463
- });
464
- chacha.default = void 0;
465
- var Scalar$2 = _interopRequireWildcard$1(scalar);
466
- function _getRequireWildcardCache$1(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache$1 = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
467
- function _interopRequireWildcard$1(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache$1(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
468
- function quarterRound(st, a, b, c, d) {
469
- st[a] = st[a] + st[b] >>> 0;
470
- st[d] = (st[d] ^ st[a]) >>> 0;
471
- st[d] = (st[d] << 16 | st[d] >>> 16 & 0xFFFF) >>> 0;
472
- st[c] = st[c] + st[d] >>> 0;
473
- st[b] = (st[b] ^ st[c]) >>> 0;
474
- st[b] = (st[b] << 12 | st[b] >>> 20 & 0xFFF) >>> 0;
475
- st[a] = st[a] + st[b] >>> 0;
476
- st[d] = (st[d] ^ st[a]) >>> 0;
477
- st[d] = (st[d] << 8 | st[d] >>> 24 & 0xFF) >>> 0;
478
- st[c] = st[c] + st[d] >>> 0;
479
- st[b] = (st[b] ^ st[c]) >>> 0;
480
- st[b] = (st[b] << 7 | st[b] >>> 25 & 0x7F) >>> 0;
481
- }
482
- function doubleRound(st) {
483
- quarterRound(st, 0, 4, 8, 12);
484
- quarterRound(st, 1, 5, 9, 13);
485
- quarterRound(st, 2, 6, 10, 14);
486
- quarterRound(st, 3, 7, 11, 15);
487
- quarterRound(st, 0, 5, 10, 15);
488
- quarterRound(st, 1, 6, 11, 12);
489
- quarterRound(st, 2, 7, 8, 13);
490
- quarterRound(st, 3, 4, 9, 14);
491
- }
492
- class ChaCha {
493
- constructor(seed) {
494
- seed = seed || [0, 0, 0, 0, 0, 0, 0, 0];
495
- this.state = [0x61707865, 0x3320646E, 0x79622D32, 0x6B206574, seed[0], seed[1], seed[2], seed[3], seed[4], seed[5], seed[6], seed[7], 0, 0, 0, 0];
496
- this.idx = 16;
497
- this.buff = new Array(16);
498
- }
499
- nextU32() {
500
- if (this.idx == 16) this.update();
501
- return this.buff[this.idx++];
502
- }
503
- nextU64() {
504
- return Scalar$2.add(Scalar$2.mul(this.nextU32(), 0x100000000), this.nextU32());
505
- }
506
- nextBool() {
507
- return (this.nextU32() & 1) == 1;
508
- }
509
- update() {
510
- for (let i = 0; i < 16; i++) this.buff[i] = this.state[i];
511
- for (let i = 0; i < 10; i++) doubleRound(this.buff);
512
- for (let i = 0; i < 16; i++) this.buff[i] = this.buff[i] + this.state[i] >>> 0;
513
- this.idx = 0;
514
- this.state[12] = this.state[12] + 1 >>> 0;
515
- if (this.state[12] != 0) return;
516
- this.state[13] = this.state[13] + 1 >>> 0;
517
- if (this.state[13] != 0) return;
518
- this.state[14] = this.state[14] + 1 >>> 0;
519
- if (this.state[14] != 0) return;
520
- this.state[15] = this.state[15] + 1 >>> 0;
521
- }
522
- }
523
- chacha.default = ChaCha;
524
-
525
- Object.defineProperty(random, "__esModule", {
526
- value: true
527
- });
528
- random.getRandomBytes = getRandomBytes;
529
- random.getRandomSeed = getRandomSeed;
530
- random.getThreadRng = getThreadRng;
531
- var _chacha = _interopRequireDefault$3(chacha);
532
- function _interopRequireDefault$3(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
533
- function getRandomBytes(n) {
534
- let array = new Uint8Array(n);
535
- if (typeof window !== 'undefined') {
536
- if (typeof window.crypto !== "undefined") {
537
- window.crypto.getRandomValues(array);
538
- } else {
539
- for (let i = 0; i < n; i++) {
540
- array[i] = Math.random() * 4294967296 >>> 0;
541
- }
542
- }
543
- } else {
544
- const crypto = require$$1;
545
- crypto.randomFillSync(array);
546
- }
547
- return array;
548
- }
549
- function getRandomSeed() {
550
- const arr = getRandomBytes(32);
551
- const arrV = new Uint32Array(arr.buffer);
552
- const seed = [];
553
- for (let i = 0; i < 8; i++) {
554
- seed.push(arrV[i]);
555
- }
556
- return seed;
557
- }
558
- let threadRng = null;
559
- function getThreadRng() {
560
- if (threadRng) return threadRng;
561
- threadRng = new _chacha.default(getRandomSeed());
562
- return threadRng;
563
- }
564
-
565
- var fft = {};
566
-
567
- Object.defineProperty(fft, "__esModule", {
568
- value: true
569
- });
570
- fft.default = void 0;
571
- class FFT {
572
- constructor(G, F, opMulGF) {
573
- this.F = F;
574
- this.G = G;
575
- this.opMulGF = opMulGF;
576
- let rem = F.sqrt_t || F.t;
577
- let s = F.sqrt_s || F.s;
578
- let nqr = F.one;
579
- while (F.eq(F.pow(nqr, F.half), F.one)) nqr = F.add(nqr, F.one);
580
- this.w = new Array(s + 1);
581
- this.wi = new Array(s + 1);
582
- this.w[s] = this.F.pow(nqr, rem);
583
- this.wi[s] = this.F.inv(this.w[s]);
584
- let n = s - 1;
585
- while (n >= 0) {
586
- this.w[n] = this.F.square(this.w[n + 1]);
587
- this.wi[n] = this.F.square(this.wi[n + 1]);
588
- n--;
589
- }
590
- this.roots = [];
591
- this._setRoots(Math.min(s, 15));
592
- }
593
- _setRoots(n) {
594
- for (let i = n; i >= 0 && !this.roots[i]; i--) {
595
- let r = this.F.one;
596
- const nroots = 1 << i;
597
- const rootsi = new Array(nroots);
598
- for (let j = 0; j < nroots; j++) {
599
- rootsi[j] = r;
600
- r = this.F.mul(r, this.w[i]);
601
- }
602
- this.roots[i] = rootsi;
603
- }
604
- }
605
- fft(p) {
606
- if (p.length <= 1) return p;
607
- const bits = log2(p.length - 1) + 1;
608
- this._setRoots(bits);
609
- const m = 1 << bits;
610
- if (p.length != m) {
611
- throw new Error("Size must be multiple of 2");
612
- }
613
- const res = __fft(this, p, bits, 0, 1);
614
- return res;
615
- }
616
- ifft(p) {
617
- if (p.length <= 1) return p;
618
- const bits = log2(p.length - 1) + 1;
619
- this._setRoots(bits);
620
- const m = 1 << bits;
621
- if (p.length != m) {
622
- throw new Error("Size must be multiple of 2");
623
- }
624
- const res = __fft(this, p, bits, 0, 1);
625
- const twoinvm = this.F.inv(this.F.mulScalar(this.F.one, m));
626
- const resn = new Array(m);
627
- for (let i = 0; i < m; i++) {
628
- resn[i] = this.opMulGF(res[(m - i) % m], twoinvm);
15
+ const F = BigInt('21888242871839275222246405745257275088548364400416034343698204186575808495617');
16
+ const N_ROUNDS_F = 8;
17
+ const N_ROUNDS_P = [56, 57, 56, 60, 60, 63, 64, 63, 60, 66, 60, 65, 70, 60, 64, 68];
18
+ const pow5 = v => {
19
+ let o = v * v;
20
+ return v * o * o % F;
21
+ };
22
+ function mix(state, M) {
23
+ const out = [];
24
+ for (let x = 0; x < state.length; x++) {
25
+ let o = 0n;
26
+ for (let y = 0; y < state.length; y++) {
27
+ o = o + M[x][y] * state[y];
629
28
  }
630
- return resn;
631
- }
632
- }
633
- fft.default = FFT;
634
- function log2(V) {
635
- return ((V & 0xFFFF0000) !== 0 ? (V &= 0xFFFF0000, 16) : 0) | ((V & 0xFF00FF00) !== 0 ? (V &= 0xFF00FF00, 8) : 0) | ((V & 0xF0F0F0F0) !== 0 ? (V &= 0xF0F0F0F0, 4) : 0) | ((V & 0xCCCCCCCC) !== 0 ? (V &= 0xCCCCCCCC, 2) : 0) | (V & 0xAAAAAAAA) !== 0;
636
- }
637
- function __fft(PF, pall, bits, offset, step) {
638
- const n = 1 << bits;
639
- if (n == 1) {
640
- return [pall[offset]];
641
- } else if (n == 2) {
642
- return [PF.G.add(pall[offset], pall[offset + step]), PF.G.sub(pall[offset], pall[offset + step])];
643
- }
644
- const ndiv2 = n >> 1;
645
- const p1 = __fft(PF, pall, bits - 1, offset, step * 2);
646
- const p2 = __fft(PF, pall, bits - 1, offset + step, step * 2);
647
- const out = new Array(n);
648
- for (let i = 0; i < ndiv2; i++) {
649
- out[i] = PF.G.add(p1[i], PF.opMulGF(p2[i], PF.roots[bits][i]));
650
- out[i + ndiv2] = PF.G.sub(p1[i], PF.opMulGF(p2[i], PF.roots[bits][i]));
29
+ out.push(o % F);
651
30
  }
652
31
  return out;
653
32
  }
654
-
655
- Object.defineProperty(f1field, "__esModule", {
656
- value: true
657
- });
658
- f1field.default = void 0;
659
- var Scalar$1 = _interopRequireWildcard(scalar);
660
- var futils = _interopRequireWildcard(futils$1);
661
- var _fsqrt = _interopRequireDefault$2(fsqrt);
662
- var _random = random;
663
- var _fft = _interopRequireDefault$2(fft);
664
- function _interopRequireDefault$2(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
665
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
666
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
667
- class ZqField$1 {
668
- constructor(p) {
669
- this.type = "F1";
670
- this.one = BigInt(1);
671
- this.zero = BigInt(0);
672
- this.p = BigInt(p);
673
- this.m = 1;
674
- this.negone = this.p - this.one;
675
- this.two = BigInt(2);
676
- this.half = this.p >> this.one;
677
- this.bitLength = Scalar$1.bitLength(this.p);
678
- this.mask = (this.one << BigInt(this.bitLength)) - this.one;
679
- this.n64 = Math.floor((this.bitLength - 1) / 64) + 1;
680
- this.n32 = this.n64 * 2;
681
- this.n8 = this.n64 * 8;
682
- this.R = this.e(this.one << BigInt(this.n64 * 64));
683
- this.Ri = this.inv(this.R);
684
- const e = this.negone >> this.one;
685
- this.nqr = this.two;
686
- let r = this.pow(this.nqr, e);
687
- while (!this.eq(r, this.negone)) {
688
- this.nqr = this.nqr + this.one;
689
- r = this.pow(this.nqr, e);
690
- }
691
- this.s = 0;
692
- this.t = this.negone;
693
- while ((this.t & this.one) == this.zero) {
694
- this.s = this.s + 1;
695
- this.t = this.t >> this.one;
696
- }
697
- this.nqr_to_t = this.pow(this.nqr, this.t);
698
- (0, _fsqrt.default)(this);
699
- this.FFT = new _fft.default(this, this, this.mul.bind(this));
700
- this.fft = this.FFT.fft.bind(this.FFT);
701
- this.ifft = this.FFT.ifft.bind(this.FFT);
702
- this.w = this.FFT.w;
703
- this.wi = this.FFT.wi;
704
- this.shift = this.square(this.nqr);
705
- this.k = this.exp(this.nqr, 2 ** this.s);
706
- }
707
- e(a, b) {
708
- let res;
709
- if (!b) {
710
- res = BigInt(a);
711
- } else if (b == 16) {
712
- res = BigInt("0x" + a);
713
- }
714
- if (res < 0) {
715
- let nres = -res;
716
- if (nres >= this.p) nres = nres % this.p;
717
- return this.p - nres;
718
- } else {
719
- return res >= this.p ? res % this.p : res;
720
- }
721
- }
722
- add(a, b) {
723
- const res = a + b;
724
- return res >= this.p ? res - this.p : res;
725
- }
726
- sub(a, b) {
727
- return a >= b ? a - b : this.p - b + a;
728
- }
729
- neg(a) {
730
- return a ? this.p - a : a;
731
- }
732
- mul(a, b) {
733
- return a * b % this.p;
734
- }
735
- mulScalar(base, s) {
736
- return base * this.e(s) % this.p;
737
- }
738
- square(a) {
739
- return a * a % this.p;
740
- }
741
- eq(a, b) {
742
- return a == b;
743
- }
744
- neq(a, b) {
745
- return a != b;
746
- }
747
- lt(a, b) {
748
- const aa = a > this.half ? a - this.p : a;
749
- const bb = b > this.half ? b - this.p : b;
750
- return aa < bb;
751
- }
752
- gt(a, b) {
753
- const aa = a > this.half ? a - this.p : a;
754
- const bb = b > this.half ? b - this.p : b;
755
- return aa > bb;
756
- }
757
- leq(a, b) {
758
- const aa = a > this.half ? a - this.p : a;
759
- const bb = b > this.half ? b - this.p : b;
760
- return aa <= bb;
761
- }
762
- geq(a, b) {
763
- const aa = a > this.half ? a - this.p : a;
764
- const bb = b > this.half ? b - this.p : b;
765
- return aa >= bb;
766
- }
767
- div(a, b) {
768
- return this.mul(a, this.inv(b));
769
- }
770
- idiv(a, b) {
771
- if (!b) throw new Error("Division by zero");
772
- return a / b;
773
- }
774
- inv(a) {
775
- if (!a) throw new Error("Division by zero");
776
- let t = this.zero;
777
- let r = this.p;
778
- let newt = this.one;
779
- let newr = a % this.p;
780
- while (newr) {
781
- let q = r / newr;
782
- [t, newt] = [newt, t - q * newt];
783
- [r, newr] = [newr, r - q * newr];
784
- }
785
- if (t < this.zero) t += this.p;
786
- return t;
787
- }
788
- mod(a, b) {
789
- return a % b;
790
- }
791
- pow(b, e) {
792
- return futils.exp(this, b, e);
793
- }
794
- exp(b, e) {
795
- return futils.exp(this, b, e);
796
- }
797
- band(a, b) {
798
- const res = a & b & this.mask;
799
- return res >= this.p ? res - this.p : res;
800
- }
801
- bor(a, b) {
802
- const res = (a | b) & this.mask;
803
- return res >= this.p ? res - this.p : res;
804
- }
805
- bxor(a, b) {
806
- const res = (a ^ b) & this.mask;
807
- return res >= this.p ? res - this.p : res;
808
- }
809
- bnot(a) {
810
- const res = a ^ this.mask;
811
- return res >= this.p ? res - this.p : res;
812
- }
813
- shl(a, b) {
814
- if (Number(b) < this.bitLength) {
815
- const res = a << b & this.mask;
816
- return res >= this.p ? res - this.p : res;
817
- } else {
818
- const nb = this.p - b;
819
- if (Number(nb) < this.bitLength) {
820
- return a >> nb;
821
- } else {
822
- return this.zero;
823
- }
824
- }
825
- }
826
- shr(a, b) {
827
- if (Number(b) < this.bitLength) {
828
- return a >> b;
829
- } else {
830
- const nb = this.p - b;
831
- if (Number(nb) < this.bitLength) {
832
- const res = a << nb & this.mask;
833
- return res >= this.p ? res - this.p : res;
834
- } else {
835
- return 0;
836
- }
837
- }
838
- }
839
- land(a, b) {
840
- return a && b ? this.one : this.zero;
841
- }
842
- lor(a, b) {
843
- return a || b ? this.one : this.zero;
844
- }
845
- lnot(a) {
846
- return a ? this.zero : this.one;
847
- }
848
- sqrt_old(n) {
849
- if (n == this.zero) return this.zero;
850
- const res = this.pow(n, this.negone >> this.one);
851
- if (res != this.one) return null;
852
- let m = this.s;
853
- let c = this.nqr_to_t;
854
- let t = this.pow(n, this.t);
855
- let r = this.pow(n, this.add(this.t, this.one) >> this.one);
856
- while (t != this.one) {
857
- let sq = this.square(t);
858
- let i = 1;
859
- while (sq != this.one) {
860
- i++;
861
- sq = this.square(sq);
862
- }
863
- let b = c;
864
- for (let j = 0; j < m - i - 1; j++) b = this.square(b);
865
- m = i;
866
- c = this.square(b);
867
- t = this.mul(t, c);
868
- r = this.mul(r, b);
869
- }
870
- if (r > this.p >> this.one) {
871
- r = this.neg(r);
872
- }
873
- return r;
874
- }
875
- normalize(a, b) {
876
- a = BigInt(a, b);
877
- if (a < 0) {
878
- let na = -a;
879
- if (na >= this.p) na = na % this.p;
880
- return this.p - na;
881
- } else {
882
- return a >= this.p ? a % this.p : a;
883
- }
884
- }
885
- random() {
886
- const nBytes = this.bitLength * 2 / 8;
887
- let res = this.zero;
888
- for (let i = 0; i < nBytes; i++) {
889
- res = (res << BigInt(8)) + BigInt((0, _random.getRandomBytes)(1)[0]);
890
- }
891
- return res % this.p;
892
- }
893
- toString(a, base) {
894
- base = base || 10;
895
- let vs;
896
- if (a > this.half && base == 10) {
897
- const v = this.p - a;
898
- vs = "-" + v.toString(base);
899
- } else {
900
- vs = a.toString(base);
901
- }
902
- return vs;
903
- }
904
- isZero(a) {
905
- return a == this.zero;
906
- }
907
- fromRng(rng) {
908
- let v;
909
- do {
910
- v = this.zero;
911
- for (let i = 0; i < this.n64; i++) {
912
- v += rng.nextU64() << BigInt(64 * i);
913
- }
914
- v &= this.mask;
915
- } while (v >= this.p);
916
- v = v * this.Ri % this.p;
917
- return v;
918
- }
919
- fft(a) {
920
- return this.FFT.fft(a);
921
- }
922
- ifft(a) {
923
- return this.FFT.ifft(a);
924
- }
925
- toRprLE(buff, o, e) {
926
- Scalar$1.toRprLE(buff, o, e, this.n64 * 8);
927
- }
928
- toRprBE(buff, o, e) {
929
- Scalar$1.toRprBE(buff, o, e, this.n64 * 8);
930
- }
931
- toRprBEM(buff, o, e) {
932
- return this.toRprBE(buff, o, this.mul(this.R, e));
933
- }
934
- toRprLEM(buff, o, e) {
935
- return this.toRprLE(buff, o, this.mul(this.R, e));
936
- }
937
- fromRprLE(buff, o) {
938
- return Scalar$1.fromRprLE(buff, o, this.n8);
939
- }
940
- fromRprBE(buff, o) {
941
- return Scalar$1.fromRprBE(buff, o, this.n8);
942
- }
943
- fromRprLEM(buff, o) {
944
- return this.mul(this.fromRprLE(buff, o), this.Ri);
945
- }
946
- fromRprBEM(buff, o) {
947
- return this.mul(this.fromRprBE(buff, o), this.Ri);
948
- }
949
- toObject(a) {
950
- return a;
951
- }
952
- }
953
- f1field.default = ZqField$1;
954
-
955
- const Scalar = scalar;
956
- const {
957
- default: ZqField
958
- } = f1field;
959
- const F = new ZqField(Scalar.fromString("21888242871839275222246405745257275088548364400416034343698204186575808495617"));
960
- const N_ROUNDS_F = 8;
961
- const N_ROUNDS_P = [56, 57, 56, 60, 60, 63, 64, 63, 60, 66, 60, 65, 70, 60, 64, 68];
962
- const pow5 = a => F.mul(a, F.square(F.square(a, a)));
963
- function poseidon(inputs, opt) {
33
+ function poseidon(_inputs, opt) {
34
+ const inputs = _inputs.map(i => BigInt(i));
964
35
  if (inputs.length <= 0) {
965
36
  throw new Error('poseidon-lite: Not enough inputs');
966
37
  }
@@ -977,19 +48,17 @@ function poseidon(inputs, opt) {
977
48
  if (M.length !== t) {
978
49
  throw new Error(`poseidon-lite: Incorrect M length, expected ${t} got ${M.length}`);
979
50
  }
980
- let state = [F.zero, ...inputs.map(a => F.e(a))];
981
- for (let r = 0; r < nRoundsF + nRoundsP; r++) {
982
- state = state.map((a, i) => F.add(a, C[r * t + i]));
983
- if (r < nRoundsF / 2 || r >= nRoundsF / 2 + nRoundsP) {
984
- state = state.map(a => pow5(a));
985
- } else {
986
- state[0] = pow5(state[0]);
51
+ let state = [0n, ...inputs];
52
+ for (let x = 0; x < nRoundsF + nRoundsP; x++) {
53
+ for (let y = 0; y < state.length; y++) {
54
+ state[y] = state[y] + C[x * t + y];
55
+ if (x < nRoundsF / 2 || x >= nRoundsF / 2 + nRoundsP) state[y] = pow5(state[y]);else if (y === 0) state[y] = pow5(state[y]);
987
56
  }
988
- state = state.map((_, i) => state.reduce((acc, a, j) => F.add(acc, F.mul(M[i][j], a)), F.zero));
57
+ state = mix(state, M);
989
58
  }
990
- return F.normalize(state[0]);
59
+ return state[0];
991
60
  }
992
- var slow = poseidon;
61
+ var poseidon_1 = poseidon;
993
62
 
994
63
  var unstringify = {};
995
64
 
@@ -998,27 +67,18 @@ Object.defineProperty(unstringify, "__esModule", {
998
67
  });
999
68
  unstringify.default = unstringifyBigInts;
1000
69
  function unstringifyBigInts(o) {
1001
- if (typeof o == "string" && /^[0-9]+$/.test(o)) {
1002
- return BigInt(o);
1003
- } else if (typeof o == "string" && /^0x[0-9a-fA-F]+$/.test(o)) {
1004
- return BigInt(o);
1005
- } else if (typeof o == 'string' && /^[a-zA-Z0-9+\/]+={0,2}$/.test(o)) {
1006
- const byteArray = Uint8Array.from(atob(o), c => c.charCodeAt(0));
1007
- const hex = [...byteArray].map(x => x.toString(16).padStart(2, '0')).join('');
1008
- return BigInt(`0x${hex}`);
1009
- } else if (Array.isArray(o)) {
70
+ if (Array.isArray(o)) {
1010
71
  return o.map(unstringifyBigInts);
1011
- } else if (typeof o == "object") {
1012
- if (o === null) return null;
72
+ } else if (typeof o == 'object') {
1013
73
  const res = {};
1014
- const keys = Object.keys(o);
1015
- keys.forEach(k => {
1016
- res[k] = unstringifyBigInts(o[k]);
1017
- });
74
+ for (const [key, val] of Object.entries(o)) {
75
+ res[key] = unstringifyBigInts(val);
76
+ }
1018
77
  return res;
1019
- } else {
1020
- return o;
1021
78
  }
79
+ const byteArray = Uint8Array.from(atob(o), c => c.charCodeAt(0));
80
+ const hex = [...byteArray].map(x => x.toString(16).padStart(2, '0')).join('');
81
+ return BigInt(`0x${hex}`);
1022
82
  }
1023
83
 
1024
84
  var _1 = {};
@@ -1028,8 +88,8 @@ Object.defineProperty(_1, "__esModule", {
1028
88
  });
1029
89
  _1.default = void 0;
1030
90
  var _default$1 = {
1031
- "C": ["CcRunsaOm9T+H6q6KUy6OKcaoXdTTN0bbH3A29Cr16c=", "DANWUwiW7sQql+2TfzE1z8UUKzrkBbg0PB2D/6YEy4E=", "Hiih2TVpitEULlEYK7VM9KAOpaq9Ymi9MX6pd8wVSjA=", "J68tgxqdJ0gICWXbMOKY5A5XV8PgCNuWTPnisSuRJR8=", "Hm8RzmD8j1E6ajz+Fq4XWkEpFGLyFM0Iear0NUW3TgM=", "Kmc4TTu9XkOFQYGctoHwvgRGLtFMNhPY9xkgYmjRQtM=", "C2b981YJOmEWCfjhL7/s8LmF44HwJRiJNkCPXVyfRdA=", "AS7j7B541HCDDGEJPCreNwsmyDzFzr7t2qaFLb2wniE=", "AlK6X2dgv739iPZ/gXXj/WzRxDGwmba7LRCOe0Rbsbk=", "F5R0zOyl/2dsa+w871QpY1Q5Gok1/3HW71rqrXypMvE=", "LCQmE3mlG/qSKP9KUD/U7Zwfl0omSWmzfholibvtK5E=", "HMHXtiaS5j6sLyiL0GlbQ8L2P1AB/A/FU+ZsBVGAGwU=", "JVBZMBqtqYuy7VX4UpeelgB4Tb8X+6zQXZ7/X9nJG1Y=", "KEN746wcsuR54fXA7M0ys66iQjSXCoGTsRwpzn5Z79k=", "KCFqRC8uH3EcpPprU3ZusRhUjaj7T3jUM4diw39fIEM=", "LB9HzRf6Wt8fOfTnBW3QP+7h784DCUWBEx8jdzI0gsk=", "B6utArel68SGMrzJNWzrfdna/KJ2Y4pjZGuFZqYhr8k=", "AjAmRgH/3yknWzP/qrUd/pQp+QiAppzRN9oMTRX5bDw=", "G8lzBU5R2QWg8WhlZJfKQKhkQUVX7iiecX5dZomaoKk=", "Lhwi+WRDUAggbDFX6GNB7dJJr/XC2EIfKmsiKI8KZ/w=", "EiTzjfZ8U3gSHB1fRhu8UJ6OoVmORsn3pwRSvCu6hrg=", "AuTmnYulnlGSgLS9ntAGj9e/6M2d/toZadKYkYbN4g4=", "Hx7Mw0qroBN/XfgfwE/z7k8Z7jZOZT8HbUfpc12YAY4=", "FnKtPXCaNTl0JmwwOamnMRQkRIAyzRgZ6suKTUKE9YI=", "KD4/3CxuQgxW9Er1GStK6c2mlh8oTSSZHS7WAt+Mj8c=", "HCo9EgxVDs/Q2wlXFw+gE2g3Ufj9/1nWYU+9af85S8w=", "IW+Eh3qsYXL3iXpzI0Vu/hQ6mkN3PqbylstrgXdlP70=", "LA0nK+zyp1dkun6OPijRK86qR+phylmkEaH1FVL5R4g=", "FuNCmYZcDihITuenTEVOnxcKVICr4FCPy0psPYlUb0M=", "F1zrpZnpb1s3WiMqb7nMcXcgR3ZYAikPSM2Tl1VIj8U=", "DHWURA3EjBb+rZ4XWLAoBmqkEL+8NU9U2MX/u0Sh7jI=", "GjwpvDnyG7XEZtt9frb9j3YOIAE8z5EskkeYgtkZ/Y0=", "DM/dkG80JuXAmG6gSbJTQAhV00kHT1pmlcjuq80i5o8=", "FPa8gdnxhvYr20dc5slBGGanqKP9Bls84OaZtn3Z55Y=", "CWK4J4n7PRKXAspwsvbFqswJmBDJxJXIiO3rc4a5cFI=", "GogK9wdNGLO/IMed4lEnvBMoSrAe8CV1r+8Mj2oxqG0=", "EMuhhBmmozLNXnfwIRwVSyCvKST8IP8/TDASu3rpMRs=", "BX5iqaj4mz69x2umOp6sqPontzGcrjQGdWooSfMC8Q0=", "KHyXHekdwKvUSt9ThLSYjLlhMDu/Zc/1r6BBO0QoDO4=", "Id8ziK8Wh7uzvKnaDMqQjx5WK8RtSrpOb395YOMGiR0=", "G+XIh9JbznA+JcyXTQk0zXid+PcLSY/YPv+LVg4WgrM=", "Jo2jb3blaPtoEXF1zqLNDdLLXUL9pazqSNWcJwag1cE=", "DherCR9urlDGCb6vVRDs7MXYu3QTXr0FvQZGDMJqXtY=", "BNcn5yj/oKZ67lNasHSkMJHvYtjPg9JwBA9cqh9ir0A=", "DdvXv5wpNBWBtUl2K8Ai7TNwKsEPG/2GKxVBfX45ym4=", "J5DrM1FiF1J2gWLoKYnGwjT1sNHTr5tYiinEnIeJZUs=", "HkV8YBpjtz5EcZUBk9ilcDlfPZq4sv0JhLdkIGFC+ek=", "Ia5kMB3KliVjjWqyu+cTX/qQ7NDEP/kfxMaG/EbgkbA=", "A3n2PIzjRo1NopMWb0lJKIVL6eNDLglVWFhTTu2NNQs=", "AC1WQgNZ0CZqdEoICAngVMoOSSGkZoasjJ9YoyTDUEk=", "EjFY5ZZbXZsdaLPNMuELvtqNYkWeIfQJD8LFr5Y1FaY=", "C+KfxAhHqUFmHRS79svgQg+7K29Sg21OYMgOtJytnsE=", "Gslpkd7CuwVXcWFCAVpFPDbbnYWcrV+aIzgC8k/fTBo=", "FZZEP3Y9vMJfSWT8YdI7Pl4SyfqX8YqSUcozVbywYn4=", "EuC802VL36drKGHU7Drq4PGFfZ8X5xWu1tBJ6uO6MhI=", "D8krTxu+qCuepz1K+a8qUM6rrH83FUsZBObHbHz5ZLo=", "H5wLFhBEZELW8uWSqAE/QLFPfHciI29PnH6WUjOHJ2I=", "Dr10JErnJnX4zeBhV6eC9AUNkU2ji0wFjRWfZD279NM=", "LLfw7Tnhbp9pqfr9SrlRwDsGcelzRu45eoOYOdzPxtE=", "Gp1uLs/wIsxWBUQ+5BurIM52HQUUzlJmkMcrynNS2b8=", "KhFUOWB/M1peqDw7xEqTMdDBMyapp7owh9oYLWSOxy8=", "I/m2UptdBA0VuPp67j40EOc4tWMFzUTylTXBFcWkwGA=", "BYcsFtsPcqIkmsa6SEu5w6POl8FtWLaLJg65OfDm6Kc=", "EwC97gi7eCTKIPuAEYB19AIZthUdVbXFK2JKfN7d9qc=", "Gbm2PS8QjhfmOBeGOo9sKI160pkW2YyxBy5Oe31Ss3Y=", "AVvuE1fjwBW1vaI3ZoUi9hPRyIcmtexCJKIBKEgbT38=", "KVNzbpS7a58blwek8WFeTv4eHOS6shjL6pLHhbEo/9E=", "CwaTU7oJFhiGL4BhgMA4X4UbmNNytF9UTOcmbtZgjfw=", "ME901GHMwTEV5OC8+5OBflWut+uTBrZOT1iKyX2B9Ck=", "FbvxRs6bygnooz9ed9/k9arSoWSkYXpMuO5UFc3pE/w=", "CrTf4MJ0LN5EkBAxSHlk7ZuPS4UEBcEMqf8jhZVyyMY=", "DjLbMgoETjGX9F92SaGWde9e7f6lRt6pJR3jn5Y5d5o=", "ChdWqh83jKSydjWni2iI5meXczqCd0iWoweO+lFtoBY=", "BExKM7EPaTRH/RcXf5Uu+JXmHTKPhe+pQlTWoqJdk+8=", "LtNhG3JbinC+ZVtTf2b3AP4IedeaSWiR03sHtUZsS4s=", "H5uk6Lq3zkLI7MPXIqouDq3965z900e12DOepxIIWKo=", "GyMwQwUujCiPfukHqE5RiqOOgqxFAgZtt0BW+GXF09o=", "JDHhzBZLuNB0Axq3K9VbTJAgU7/A8U2wyi+XsCCHWVQ=", "CC+TTJH1qsMwzWlToKfbRaE+MiCXWDMZp5Hyc5ZYAf0=", "K5oKIj51OLCjS+B0MVVCo8dyReKufL6Zmta7kwxImXw=", "DhzZHt0s+izOuFSDuIepvoFkFj51qKAOsLWJzHAhTn0=", "Lh6sDyv9/WPJUfYUd+NpiZl3TxmFTQD1iNMkYBzr4vk=", "DL+pXzf7dAYMdhWOdp1tFXNFeE2O/bM8I9dIEVtQC4M=", "CPBbO+kj7UTWWtSdimHppnbZkeOndRPZmAwjLfpKT4Q=", "InGeKgcLzQhSv44hmE0EQ+coSSXcB1ijJaLdUQwEfvY=", "BB9Zap7hyyvAYPf8w6GrTHvb8DYRmYLA9B9isvJoMMA=", "Iz/TXeG+UgqHYo6wb2sdTAIb4cLQ3EZKGfzdCYaxD4k=", "BSS0bRqoel5DJeCkI+vIENMeB4qhtHB+78tFPGHJwmc=", "LDT0JMgeVxbOR/ysiUuFgkInu5VLDzGZzESGI3xRUhE=", "C18qS2M4eBkgfv/CtVQfty3SAltUV8yX8zAQMn3kkV4=", "IiB4VggszFTFty/kOdLP1sF0NdL1evbOrvrEH+BcZZ8=", "JNV6i/XaY/5OJBWbf4lQtc37IQGUyvefJ4VASM4sgXE=", "Cvqxgf3V4Fg7Nx11vWk/mDdK1wl7sBqFc5Gbsjt5OW4=", "LbqbEI8gh3KZilLvrHy9VnbABXGUwWwL8WKQ1isRKO4=", "JjSbZu24sW9W+IHHiPU/g8u4PeC9WSslWv8T5rzkILM=", "Ja984OXhA1doXpX5Izl1OtgaVtKOzBk7I1KIo+bxN9s=", "JbTOe9IpQ5DAlNalXt1ouXDu16roiyv/H3wBh/41AR8=", "IsVD8Q9siew4flPxkIqI5d6c7yjr3zCxjLnVTB4CtjE=", "Ajb5PneJxHJPx5CKnxkeHkJekGqRnXo032aOdIgvh6k=", "KTULQBFmygEOfSfjfQXamWUr2uEU6wFlnLSXr5gMS1I=", "Du14fWWCDT9r0xu6tUf3WmXtt12ETruJ7hJgkWZSNj8=", "B8wRcPE7RvIDanU/Ugsykf3NDpm9lCl9GQb2VvTeb60=", "Irk5IzsdcgX0m89hOj0wsZCHhtf59dEMIFlDVonorOo=", "AUUXYqCquByKrR3IvDPocHQPCDpaqFQ4rdZQrOYK5aY=", "I1BrtdhyfURh+r8QJdRtH+MuqmHex9pX5wT+wIkvzok=", "LkhMROg4rqC6wGrj9xvdCSo3CVMeHv6pf4vWiQc1VSI=", "D0vH0H66/WQ3nnjFC9LkK69KWUVFztwlRUGNomg1tUw=", "H008j2WD6eX6dmN4Yvqu6FFYI4hyXfRg5iCZbVDY504=", "CTUU4McHEfgmYNB74OSpiPrgKrx7aB2RU+uby0j+c4k=", "GtqwyOKzutNGaZorXzvANkPug+zkcijySljgo0fhU9g=", "FnKxcmBX2Z3RRwnrtHRkGjeMG5S4ByusGiLb756A2tI=", "Hf1T1Fdq8uOPRPU/3KtGjMXY4vrgrMTuMNR7I5tHnBQ=", "DGiIoQt1sPOnCjYmOjfhf+bXfWQPb8PevH8gd1MgXGA=", "Gt25M6Zb53CSs0p+d9Ev6GEaYeAO5oSLhQkezKnR5Qg=", "ANdUDc0mioRcEK4Y0d6TPPY4/1Ql8K//eTVijimdF5E=", "FAwOQmh+nq0BsoJ6VmTKnCb+3eSs2Z2x0xaTnSC4LA4=", "Lww6EV1DF9GRuom40T0YBsIKD5sk+MXtwJHirlZWWYQ=", "DE7neP98FFUwBu0iDPnIEAigz/ZwsiuC2MU4odyVjGE=", "FwTydm1G+Cw2k/AEQMzDYJQk7SbArMZiJ8PXSF3nTGk=", "Ly0ZzD6l146noCwbUdJEq/B2nJ+FROQCObZv6QCcPPo=", "GuA4U7dfyrpQU/ES4qjo3N1+5suc/tnH1sdmqAb8Zik=", "CXGqv3lSQd9R0THQ+mGqXzVWkhstbwFOTkGobdrwVtU=", "FAjDFuYBThqR1M9rbg3nPtpiT4OA3xyHX1wp97/i9kY=", "Fmfz/i7b6FAkir5CtUMJO2yJ8fdz7yhTQWkfOYIu9b0=", "E798XQ0sQ3akiwoDVXzfkVuBcYQJ5cEzQkxpV2UA/jc=", "B2IKbfsLbOwwFq3z01M8JAJLlTR4VreXGbwLp0OmLCw=", "FXTH7wxDVF82qMoIvb3YsHXSlZ4vMitzFnXePhmCtNA=", "Jp5LW3oushr9VnlwpxfO7FvUGEVxwlT9wG4Dp/+DePA="],
1032
- "M": [["Bm9vhdb2ioXsEDRTUaI6Oq8H84r4yVKnvOynC9KvetU=", "K51LQRDJrpl3guFQmx0P2yCnwCu9i+pzBUYrn4Elseg="], ["DMV827CFB9Yr9npEk8wmL7bAnVVwE//x9XP0MSIfj/k=", "EnTmSaMu01WjGm7WlyThra3oV+hutcOhIbzRR5QyA8g="]]
91
+ C: ['CcRunsaOm9T+H6q6KUy6OKcaoXdTTN0bbH3A29Cr16c=', 'DANWUwiW7sQql+2TfzE1z8UUKzrkBbg0PB2D/6YEy4E=', 'Hiih2TVpitEULlEYK7VM9KAOpaq9Ymi9MX6pd8wVSjA=', 'J68tgxqdJ0gICWXbMOKY5A5XV8PgCNuWTPnisSuRJR8=', 'Hm8RzmD8j1E6ajz+Fq4XWkEpFGLyFM0Iear0NUW3TgM=', 'Kmc4TTu9XkOFQYGctoHwvgRGLtFMNhPY9xkgYmjRQtM=', 'C2b981YJOmEWCfjhL7/s8LmF44HwJRiJNkCPXVyfRdA=', 'AS7j7B541HCDDGEJPCreNwsmyDzFzr7t2qaFLb2wniE=', 'AlK6X2dgv739iPZ/gXXj/WzRxDGwmba7LRCOe0Rbsbk=', 'F5R0zOyl/2dsa+w871QpY1Q5Gok1/3HW71rqrXypMvE=', 'LCQmE3mlG/qSKP9KUD/U7Zwfl0omSWmzfholibvtK5E=', 'HMHXtiaS5j6sLyiL0GlbQ8L2P1AB/A/FU+ZsBVGAGwU=', 'JVBZMBqtqYuy7VX4UpeelgB4Tb8X+6zQXZ7/X9nJG1Y=', 'KEN746wcsuR54fXA7M0ys66iQjSXCoGTsRwpzn5Z79k=', 'KCFqRC8uH3EcpPprU3ZusRhUjaj7T3jUM4diw39fIEM=', 'LB9HzRf6Wt8fOfTnBW3QP+7h784DCUWBEx8jdzI0gsk=', 'B6utArel68SGMrzJNWzrfdna/KJ2Y4pjZGuFZqYhr8k=', 'AjAmRgH/3yknWzP/qrUd/pQp+QiAppzRN9oMTRX5bDw=', 'G8lzBU5R2QWg8WhlZJfKQKhkQUVX7iiecX5dZomaoKk=', 'Lhwi+WRDUAggbDFX6GNB7dJJr/XC2EIfKmsiKI8KZ/w=', 'EiTzjfZ8U3gSHB1fRhu8UJ6OoVmORsn3pwRSvCu6hrg=', 'AuTmnYulnlGSgLS9ntAGj9e/6M2d/toZadKYkYbN4g4=', 'Hx7Mw0qroBN/XfgfwE/z7k8Z7jZOZT8HbUfpc12YAY4=', 'FnKtPXCaNTl0JmwwOamnMRQkRIAyzRgZ6suKTUKE9YI=', 'KD4/3CxuQgxW9Er1GStK6c2mlh8oTSSZHS7WAt+Mj8c=', 'HCo9EgxVDs/Q2wlXFw+gE2g3Ufj9/1nWYU+9af85S8w=', 'IW+Eh3qsYXL3iXpzI0Vu/hQ6mkN3PqbylstrgXdlP70=', 'LA0nK+zyp1dkun6OPijRK86qR+phylmkEaH1FVL5R4g=', 'FuNCmYZcDihITuenTEVOnxcKVICr4FCPy0psPYlUb0M=', 'F1zrpZnpb1s3WiMqb7nMcXcgR3ZYAikPSM2Tl1VIj8U=', 'DHWURA3EjBb+rZ4XWLAoBmqkEL+8NU9U2MX/u0Sh7jI=', 'GjwpvDnyG7XEZtt9frb9j3YOIAE8z5EskkeYgtkZ/Y0=', 'DM/dkG80JuXAmG6gSbJTQAhV00kHT1pmlcjuq80i5o8=', 'FPa8gdnxhvYr20dc5slBGGanqKP9Bls84OaZtn3Z55Y=', 'CWK4J4n7PRKXAspwsvbFqswJmBDJxJXIiO3rc4a5cFI=', 'GogK9wdNGLO/IMed4lEnvBMoSrAe8CV1r+8Mj2oxqG0=', 'EMuhhBmmozLNXnfwIRwVSyCvKST8IP8/TDASu3rpMRs=', 'BX5iqaj4mz69x2umOp6sqPontzGcrjQGdWooSfMC8Q0=', 'KHyXHekdwKvUSt9ThLSYjLlhMDu/Zc/1r6BBO0QoDO4=', 'Id8ziK8Wh7uzvKnaDMqQjx5WK8RtSrpOb395YOMGiR0=', 'G+XIh9JbznA+JcyXTQk0zXid+PcLSY/YPv+LVg4WgrM=', 'Jo2jb3blaPtoEXF1zqLNDdLLXUL9pazqSNWcJwag1cE=', 'DherCR9urlDGCb6vVRDs7MXYu3QTXr0FvQZGDMJqXtY=', 'BNcn5yj/oKZ67lNasHSkMJHvYtjPg9JwBA9cqh9ir0A=', 'DdvXv5wpNBWBtUl2K8Ai7TNwKsEPG/2GKxVBfX45ym4=', 'J5DrM1FiF1J2gWLoKYnGwjT1sNHTr5tYiinEnIeJZUs=', 'HkV8YBpjtz5EcZUBk9ilcDlfPZq4sv0JhLdkIGFC+ek=', 'Ia5kMB3KliVjjWqyu+cTX/qQ7NDEP/kfxMaG/EbgkbA=', 'A3n2PIzjRo1NopMWb0lJKIVL6eNDLglVWFhTTu2NNQs=', 'AC1WQgNZ0CZqdEoICAngVMoOSSGkZoasjJ9YoyTDUEk=', 'EjFY5ZZbXZsdaLPNMuELvtqNYkWeIfQJD8LFr5Y1FaY=', 'C+KfxAhHqUFmHRS79svgQg+7K29Sg21OYMgOtJytnsE=', 'Gslpkd7CuwVXcWFCAVpFPDbbnYWcrV+aIzgC8k/fTBo=', 'FZZEP3Y9vMJfSWT8YdI7Pl4SyfqX8YqSUcozVbywYn4=', 'EuC802VL36drKGHU7Drq4PGFfZ8X5xWu1tBJ6uO6MhI=', 'D8krTxu+qCuepz1K+a8qUM6rrH83FUsZBObHbHz5ZLo=', 'H5wLFhBEZELW8uWSqAE/QLFPfHciI29PnH6WUjOHJ2I=', 'Dr10JErnJnX4zeBhV6eC9AUNkU2ji0wFjRWfZD279NM=', 'LLfw7Tnhbp9pqfr9SrlRwDsGcelzRu45eoOYOdzPxtE=', 'Gp1uLs/wIsxWBUQ+5BurIM52HQUUzlJmkMcrynNS2b8=', 'KhFUOWB/M1peqDw7xEqTMdDBMyapp7owh9oYLWSOxy8=', 'I/m2UptdBA0VuPp67j40EOc4tWMFzUTylTXBFcWkwGA=', 'BYcsFtsPcqIkmsa6SEu5w6POl8FtWLaLJg65OfDm6Kc=', 'EwC97gi7eCTKIPuAEYB19AIZthUdVbXFK2JKfN7d9qc=', 'Gbm2PS8QjhfmOBeGOo9sKI160pkW2YyxBy5Oe31Ss3Y=', 'AVvuE1fjwBW1vaI3ZoUi9hPRyIcmtexCJKIBKEgbT38=', 'KVNzbpS7a58blwek8WFeTv4eHOS6shjL6pLHhbEo/9E=', 'CwaTU7oJFhiGL4BhgMA4X4UbmNNytF9UTOcmbtZgjfw=', 'ME901GHMwTEV5OC8+5OBflWut+uTBrZOT1iKyX2B9Ck=', 'FbvxRs6bygnooz9ed9/k9arSoWSkYXpMuO5UFc3pE/w=', 'CrTf4MJ0LN5EkBAxSHlk7ZuPS4UEBcEMqf8jhZVyyMY=', 'DjLbMgoETjGX9F92SaGWde9e7f6lRt6pJR3jn5Y5d5o=', 'ChdWqh83jKSydjWni2iI5meXczqCd0iWoweO+lFtoBY=', 'BExKM7EPaTRH/RcXf5Uu+JXmHTKPhe+pQlTWoqJdk+8=', 'LtNhG3JbinC+ZVtTf2b3AP4IedeaSWiR03sHtUZsS4s=', 'H5uk6Lq3zkLI7MPXIqouDq3965z900e12DOepxIIWKo=', 'GyMwQwUujCiPfukHqE5RiqOOgqxFAgZtt0BW+GXF09o=', 'JDHhzBZLuNB0Axq3K9VbTJAgU7/A8U2wyi+XsCCHWVQ=', 'CC+TTJH1qsMwzWlToKfbRaE+MiCXWDMZp5Hyc5ZYAf0=', 'K5oKIj51OLCjS+B0MVVCo8dyReKufL6Zmta7kwxImXw=', 'DhzZHt0s+izOuFSDuIepvoFkFj51qKAOsLWJzHAhTn0=', 'Lh6sDyv9/WPJUfYUd+NpiZl3TxmFTQD1iNMkYBzr4vk=', 'DL+pXzf7dAYMdhWOdp1tFXNFeE2O/bM8I9dIEVtQC4M=', 'CPBbO+kj7UTWWtSdimHppnbZkeOndRPZmAwjLfpKT4Q=', 'InGeKgcLzQhSv44hmE0EQ+coSSXcB1ijJaLdUQwEfvY=', 'BB9Zap7hyyvAYPf8w6GrTHvb8DYRmYLA9B9isvJoMMA=', 'Iz/TXeG+UgqHYo6wb2sdTAIb4cLQ3EZKGfzdCYaxD4k=', 'BSS0bRqoel5DJeCkI+vIENMeB4qhtHB+78tFPGHJwmc=', 'LDT0JMgeVxbOR/ysiUuFgkInu5VLDzGZzESGI3xRUhE=', 'C18qS2M4eBkgfv/CtVQfty3SAltUV8yX8zAQMn3kkV4=', 'IiB4VggszFTFty/kOdLP1sF0NdL1evbOrvrEH+BcZZ8=', 'JNV6i/XaY/5OJBWbf4lQtc37IQGUyvefJ4VASM4sgXE=', 'Cvqxgf3V4Fg7Nx11vWk/mDdK1wl7sBqFc5Gbsjt5OW4=', 'LbqbEI8gh3KZilLvrHy9VnbABXGUwWwL8WKQ1isRKO4=', 'JjSbZu24sW9W+IHHiPU/g8u4PeC9WSslWv8T5rzkILM=', 'Ja984OXhA1doXpX5Izl1OtgaVtKOzBk7I1KIo+bxN9s=', 'JbTOe9IpQ5DAlNalXt1ouXDu16roiyv/H3wBh/41AR8=', 'IsVD8Q9siew4flPxkIqI5d6c7yjr3zCxjLnVTB4CtjE=', 'Ajb5PneJxHJPx5CKnxkeHkJekGqRnXo032aOdIgvh6k=', 'KTULQBFmygEOfSfjfQXamWUr2uEU6wFlnLSXr5gMS1I=', 'Du14fWWCDT9r0xu6tUf3WmXtt12ETruJ7hJgkWZSNj8=', 'B8wRcPE7RvIDanU/Ugsykf3NDpm9lCl9GQb2VvTeb60=', 'Irk5IzsdcgX0m89hOj0wsZCHhtf59dEMIFlDVonorOo=', 'AUUXYqCquByKrR3IvDPocHQPCDpaqFQ4rdZQrOYK5aY=', 'I1BrtdhyfURh+r8QJdRtH+MuqmHex9pX5wT+wIkvzok=', 'LkhMROg4rqC6wGrj9xvdCSo3CVMeHv6pf4vWiQc1VSI=', 'D0vH0H66/WQ3nnjFC9LkK69KWUVFztwlRUGNomg1tUw=', 'H008j2WD6eX6dmN4Yvqu6FFYI4hyXfRg5iCZbVDY504=', 'CTUU4McHEfgmYNB74OSpiPrgKrx7aB2RU+uby0j+c4k=', 'GtqwyOKzutNGaZorXzvANkPug+zkcijySljgo0fhU9g=', 'FnKxcmBX2Z3RRwnrtHRkGjeMG5S4ByusGiLb756A2tI=', 'Hf1T1Fdq8uOPRPU/3KtGjMXY4vrgrMTuMNR7I5tHnBQ=', 'DGiIoQt1sPOnCjYmOjfhf+bXfWQPb8PevH8gd1MgXGA=', 'Gt25M6Zb53CSs0p+d9Ev6GEaYeAO5oSLhQkezKnR5Qg=', 'ANdUDc0mioRcEK4Y0d6TPPY4/1Ql8K//eTVijimdF5E=', 'FAwOQmh+nq0BsoJ6VmTKnCb+3eSs2Z2x0xaTnSC4LA4=', 'Lww6EV1DF9GRuom40T0YBsIKD5sk+MXtwJHirlZWWYQ=', 'DE7neP98FFUwBu0iDPnIEAigz/ZwsiuC2MU4odyVjGE=', 'FwTydm1G+Cw2k/AEQMzDYJQk7SbArMZiJ8PXSF3nTGk=', 'Ly0ZzD6l146noCwbUdJEq/B2nJ+FROQCObZv6QCcPPo=', 'GuA4U7dfyrpQU/ES4qjo3N1+5suc/tnH1sdmqAb8Zik=', 'CXGqv3lSQd9R0THQ+mGqXzVWkhstbwFOTkGobdrwVtU=', 'FAjDFuYBThqR1M9rbg3nPtpiT4OA3xyHX1wp97/i9kY=', 'Fmfz/i7b6FAkir5CtUMJO2yJ8fdz7yhTQWkfOYIu9b0=', 'E798XQ0sQ3akiwoDVXzfkVuBcYQJ5cEzQkxpV2UA/jc=', 'B2IKbfsLbOwwFq3z01M8JAJLlTR4VreXGbwLp0OmLCw=', 'FXTH7wxDVF82qMoIvb3YsHXSlZ4vMitzFnXePhmCtNA=', 'Jp5LW3oushr9VnlwpxfO7FvUGEVxwlT9wG4Dp/+DePA='],
92
+ M: [['Bm9vhdb2ioXsEDRTUaI6Oq8H84r4yVKnvOynC9KvetU=', 'K51LQRDJrpl3guFQmx0P2yCnwCu9i+pzBUYrn4Elseg='], ['DMV827CFB9Yr9npEk8wmL7bAnVVwE//x9XP0MSIfj/k=', 'EnTmSaMu01WjGm7WlyThra3oV+hutcOhIbzRR5QyA8g=']]
1033
93
  };
1034
94
  _1.default = _default$1;
1035
95
 
@@ -1037,13 +97,13 @@ Object.defineProperty(poseidon1$1, "__esModule", {
1037
97
  value: true
1038
98
  });
1039
99
  var poseidon1_2 = poseidon1$1.poseidon1 = poseidon1;
1040
- var _slow$1 = _interopRequireDefault$1(slow);
100
+ var _poseidon$1 = _interopRequireDefault$1(poseidon_1);
1041
101
  var _unstringify$1 = _interopRequireDefault$1(unstringify);
1042
102
  var _$1 = _interopRequireDefault$1(_1);
1043
103
  function _interopRequireDefault$1(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
1044
104
  const c$1 = (0, _unstringify$1.default)(_$1.default);
1045
105
  function poseidon1(inputs) {
1046
- return (0, _slow$1.default)(inputs, c$1);
106
+ return (0, _poseidon$1.default)(inputs, c$1);
1047
107
  }
1048
108
 
1049
109
  var poseidon2$1 = {};
@@ -1055,8 +115,8 @@ Object.defineProperty(_2, "__esModule", {
1055
115
  });
1056
116
  _2.default = void 0;
1057
117
  var _default = {
1058
- "C": ["DumlkrqalRjQWYbWVvQMIRTEmTwRuymTjSHUcwTNjm4=", "APFEUjXyFIxZhlhxafwbzYh7CNTQCGjfVpb/9AlW6GQ=", "CN/zSH6KyZ4fKaBY0PqAuTDHKHMLerNs6HnziQ7Pc/U=", "Lye+aQ/a7kbDzij3UysTyFbDU0LIS9puIJZjEPrcAdA=", "KyrhrPaLe40kFr6/PU9iNLdj/gS4BD7ki4MnvryhbPI=", "AxnQYgcr737MperAb5fU1VlSwXWrawPq5ktEx9vxHPo=", "KIE9yuuuqoKKN234evSmO8i3vyetScYpjvezh78oUm0=", "JydnOyzLyQPxgb844cHUDSAzhlIAw1K8FQkord35y3g=", "I07EXKJ3J8LnSr0rKhSUzW771D40BYfWuPueMeZcxjI=", "FbUlNAMa4Y9/hiyyz3z3YKsQqBUKM3sczZn/boeX1Cg=", "Dcj61tnks19e2aPRhrec444Oio0bWLEy1wHU7s9o0fY=", "G82V/8IR+8pgD3BfrT+1Z+pOs3j2Lh/sl4BVGKR+TZw=", "EFILCrchyt/p7/gbAW/DTcdto2wleJN4F8uXjQad5Vk=", "H21IFJuOf32bJX2O1fu69CkySYB1/tCs6IqeuB9WJ/Y=", "HZZV9lIwkBTSngDvNaIIm//43ByBbw3JyjS9tUYMhwU=", "BN9aVv+VvK+wUfexzUOpm6cx/2fkcDIFj+PUGFaXzH0=", "BnLZlfj/9kAVGz0pDO2vFIaQoQqMhCSn9uwoK25L6Cg=", "CZlStBSIRFSyEgDX/6/dXwyancwG8nCOn8HYIJtcdbk=", "BSy6IlXf0Ax8SDFDuo1GlEjkNYaptM2Rg/0OhDprn6Y=", "C4ut7mkK246wvXRxK3mZr4LeVXByUa13Fgd8uTxGTdw=", "EZsVkPEzB69aHuZRAgwHx0nBXWBoOoBQuWPQqOSyvdE=", "AxULfNbV0XslKdNr4PZ7gyxKz8iE707lzhW+C/tKjQk=", "LMYYLF4UVG488ZUfFzkSNVN077g9gImKvmnLMXyepWU=", "AFAyVR5jeMRQz+EppASzdkIYyt7awU4rktLNcxEb8Pk=", "IzI34yibqjS7FH6XLry5UWRpw5n8wGn7iPnaLMKCdrU=", "Bcj09OvUpuPJgNMWdL++YyMDfyGzSuWk6AwtTCTWAoA=", "CnsdsTBC05a6BdgYoxnyUlK8817zru2R7h8JslkPxls=", "KnO3H5shDPWxQpZXLJ0y2/FW4rCG/0fcXfVCNlpATsA=", "GsmwQXq8yaGTUQfp/8kdw+wY8sTb5/Ipdqdgu1xQxGA=", "EsAzmuCDdII/q7B2cH70eSafPk1ssQQ0kBXuBG3JP8A=", "C3R1sQKhZa1/WxjbTh5wT1KQCqMlO6rGgkZoLlbpoo4=", "A3woSeGRyj7bHF5J9ui4kXyEPjeTZvLqMqs6qI1/hEg=", "BaaBH4VW8BTpJnRmHiF+m9UgbFyToH3BRf2xdqcWNG8=", "KaeV59mAKJRulHt11U6fBEB26Hp7KIO0e2de9fOL1m4=", "IEOaDISzIutFo4V6/Bj1gm6Mc4LIoVhcUHvhmZgf0i8=", "Lguo2U2ez0qU7CBQxzcf8btQ8neZqEttSipvKgmCyIc=", "FD/RFc4I+yfKOOt8zoIrRReCLNIQkEjS5tDdzKF9ccg=", "DGTL7LHHNLhXlo273PgTzfhhFlkyPby/yEMjYjvpyvE=", "AoowWEfGg/ZG/KklwWP/WudPNI1iwrZw8UJs75QD2lM=", "Lk71EP8Lb9pfqUCrTEOA8mpry2TYlCe4JNZ1W1254ww=", "AIHJW8QzhOZj15JwyVbOO4kltPbQM7B4uWOE9QV5QA4=", "LtXwyRy9l0kYfi+t5ofgXuJJGzScA5oLuoqfQCOguzg=", "MFCZkfiNo1BLvzdO1ari8DRIoix2I0yMmQ8B8zpzUgY=", "HD8g/VVAmlMiG3xNSaNWufChEZ+yBntBp1KQlEJOxq0=", "ELTn86td8AMElRRFm24Y7sRrsiE+jhMeFwiHtH3cuWw=", "KhmCl5w/9/Q93VQ9iRwqvd2A+ATAd9d1A5qjUC5Dre8=", "HHTuZPFeHbb+3b6tVtbVXbpDHrw5bJr5XK0PExW9XJE=", "B1M+yFC6f5jquTA8rOAbS55PLouCcIz6nC/kWgrhRqA=", "IVdrQ45QBEmhUeTurxexVChcaPQtQsGAihGr83ZMB1A=", "LxfAVZuP55YIrVyhk9YvELzoOEyBXwkGdD1pMINtSp4=", "LUd+OGLQdwinnoqulGFwvJd1pCATGEdK5mWwsbficw4=", "Fi9SQ5ZwZMOQ4JVXeYTyka+6ImbDj1q82Jvg9bJ0fqs=", "K0yyM+3pukgmTs0siuUNGteoWWqH8p+Kd3enAJI5MxE=", "LI+8st2Fc9wduvj0YihUd22y7s5thcTPQlTnw14DsHo=", "HW80dyXkgWry/0U/DNVrGZ4bYen2Aemt5eiNuHCUnak=", "IEsMOX9OvnHrwtiz31uRPfnmrAK2jTEyTNSa9cRWVSk=", "DEy53DxP2BdPEUmzxjw8L57LgnzX3CVTT/j7dbx5xQI=", "F0rWGhRIyJmiVBZHT0kwMB5cSUdSeeBjmmFt3EW8e1Q=", "GpYXe89NjYn3Wd9OwvPN4uqqKMF3zA+hOpgW1Jo40u8=", "Bm0EskMx1xzQ74BUvGDE/wUgLBJqIzwagkKs42C4owo=", "KkxPxuwLDPUhlXgoccbdOzgcxl9y4CrVJwN6Yqob2AQ=", "E6stE2zPN9RH6fLhSnztyV5yf4RG9tnX5Vr8ASGf1kk=", "ESFVL8omBhYZ0k2EPcgnacGwT87Cb1UZTC4+hprMapo=", "AO9lMyKxPWyIm8gXFcN9d6bNJn1ZXEqJCaVUbHyXz/E=", "DiVIPkWmZSCLJh2Lp0BR5kAMd21lJZXZhFrKNdijl9M=", "KfU23LnddoIkUmRlnhXYjjlaw9Td6S2MRkSNuXnuuok=", "KlbvnyxT/rrf2jNXXb29iFoSTieAu+oXDkVrqs4Ppb4=", "HINhx461z13s+3otF7XECfKuKZmkZ2Lo7kFiQKjLmvE=", "FRr/XziyCg/ARzCJqvAga4Po5op2RQe/09CrS+dDGcU=", "BMYYfkHtiB3BsjnIj3+dQ6n1L8jIts3R525HYVtR8QA=", "E7N72A9NJ/sQ2EMx9vttU0uBxh7RV3ZEnoAbfdycKWc=", "AaXFNic8LZ31eL+9MsF7eizjZkwqUgMskyHOscToqOQ=", "KrNWGDTKc4Na0F9desuVC0qaLGZrlybagyI5Blt8OwI=", "HU2OwpHnINsgD+bWhsDWE6yvavTpXTv2n37VFqWXtkY=", "BBKU0sxITSKPV4T+eRn9K7klNRJAoEtxFRTJyAtlrx0=", "FUrJjgFwjGEcT6cVmR8ASJj1eTnRJuOSBClx3ZDoH8Y=", "CzOdisyn1Pg+7dhAk671EFCzaEyI+LCwRSRWO8bqTaQ=", "CVXknmYQyUJUpPhM+6s0RZjw5x6v9Kfdge2VtQg5yC4=", "BnRqYVbrpUQmueIiBvFavKmm9B5vU1xvNSVAHqBlRiY=", "Dxj1oOzRQjxJbzggxUnCeDjleQ4r0KGWrJF8f/Mgd/s=", "BPbuyhdR9zCKxZ7/W+smHku1Y1g+3nvJKnOCI9b3bhM=", "K1aXM2TExPXBo+xNo83OA4gR6xFvs+RbwXaNJvwLN1g=", "Ejdp3UnVsFTc12uJgEsby44TkrOFcWpdg/62XUN/Ke8=", "IUe0JPxIyAqI7lK5EWmqzqmJ9kRkcRUJlCV7L7AcY+k=", "D9wfWFSLhXAabFUF6jMqKWR+bzStQkPC6lStiXzr5U0=", "Ejc6glH+oATfaKvPD3eG1Lzv8oxdu+DDlE9oXMCgsfI=", "IeT06l81+FutfqUv90LJ6KZCdWtq9EID3YofNcGpADU=", "FiQ5FtadLKPftHIiJNTEYrVzZkkvRekNioGTTxvDsUc=", "HvvkbdeleLT2b5rbyItDeKvCFWbhoEU8oTpBWcrASsI=", "B+pehTfPXdCIhgIOI6fzh9Ro1VJb5m+FO2csyWqIlpo=", "BajE+ZaLiqO3tHijD5pbY2UPGadefOEcqf4WwLdsALw=", "IPBXcSzCFlT7/lm9NF6NrD94GMcBuceILZ1Xtyoy6D8=", "BKEu3tqd/WiWcvjGf+4xY23NjojQHUkBm9kLM+sz22k=", "J+iNjBXzfc7kTx5UJaUd7L0TbOUJGmdn5J7JVEzNEBo=", "L+7Re4QoXtm4pcjF6VpB9m4JZhmncDIjF2xB7kM95NE=", "HtfMdu30XHxAQkFCD3Kc85TllCkRMSoNaXK4vVOv8rg=", "FXQumbm/oyMVf/jFhvVmDqxng0dhRM3K3yh0vkVGaxo=", "GqwoU4f2XoLIlfxoh930BXcQdFTG7AMXKE8DPyfQx4U=", "JYUcPIRdR5D53a29tgVzV4MuLnpJd19x7HWpZVTWfHc=", "FaWCFWXMLsLOeEV9sZft81O367osVSM3DdzMPZ8Uamc=", "JBHVekgTuZgO+n4xodtZZtz2TzYEQndQLxVIXyjHFyc=", "AC5vjWUgzUcT4zW4wLbS5kfpqY4S9M0lWIKLXvbLTJs=", "L/e8j0OAzemX2gC2FrD80a+PDpHi/h7XOYg0YJ4DFdI=", "ALmDG5SFJVle4CckRxvNGC6VIfa3u2jx6Tvk/rsNPL4=", "Ci9TdouOv2qGkTsOV8BOARykCGSKR0OofXetvwycNRI=", "ACSBVhQv0Dc6R5+R/yOelg9Zn/fpS+abfyopAwXhGY0=", "Fx1WILh7+xMoz4wCqz8MmjlxlqpqVCwjUOtRKisrzak=", "FwpPVVNvfclwCHx8ENb612DJUhct1U3ZnRBF5Ow0qAg=", "KaujP3mf5mwu8xNK6gQzbsw344wc0hG6SC7KF+Lb+uE=", "HpvBeaT911j90bsZRQiNR+cNEUoD9qDotbplA2nmSXM=", "HdJpeZtmD61Y9/SJLfsLWv6q2GmpxLRPnJ4cQ72vjwk=", "Is28i3ARetFAEYHQLhVFnnzNQm/oacfJXR3Syw8krzg=", "DvBC5FR3HFM6n1elXFA/zv0xUPUu2Up81bqTucfazv0=", "EWCeBq1sj+Lyh/MDYDfohRMY6LCKA1mgOzBP/KYugoQ=", "EWbZ5VRhbbqedT7qQnwXt/7NWMB23+QnCLCPW3g6qa8=", "LeUpiUMahZWTQTAmNUQT2xd/v0zSrAtW+FWoiDV+5GY=", "MAbrT/x6hYGabaSS86isHfUa7lsXuOiddL8Bz19x6a0=", "KvQfu2G6ioD9z2//nj9vQimT/o8KRjn5YjRMgiUUUIY=", "EZ5oTeR2FV/lprQajryF24cYqyeInoXngbIUus5IJ8M=", "GDW3huLokl4Yi+pZrjY1N7USSMI4KPBHz/eEuXs/2AA=", "KCAaNMWU36NNeUmWxkM6INFSusKnkFySbEDihasy7rY=", "CD79eifRdRCU6A/vr3iwAIZMgutXEYdySnYfiMIsxOc=", "C2+Io1dxmVJhWOYc7qJ76BHBbfd3TdhRngeVZPYf0Ts=", "Dsho5tFeUdlkT2bh1kcalFiVEcoA0p4QFDkObuQlT1s=", "KvM+P4ZncScawMmz7S4RQuzT50uTnNQNANk3q4TJhZE=", "C1ICEfkEtefQm12WHGrOdzRWjFR91oWLNkzl5HlR8Xg=", "Cy1yLQkZoarY21jxAGKpLqDFasQnDoIsyiKGIBiKHUA=", "H3kNTX+M8JTZgM6zfCRT6Ve1SpmRyji74AYdHtblYtQ=", "AXHrld+/fR6uqXzThfeAFQiFwWI1oqao2pLOsB5QQjM=", "DC0OO1/VdUkym/aIXaZrm3kLQN79LIZQdiMFOBsWiHM=", "EWL7KGicJxVOWoIotOcrN3y8r6WJ4oPDXTgDBUQHoY0=", "LxRZtl3uRBtkrThqkegxDygsWpKonhmSFiPvgklxG8A=", "Hm/zIWtojD2ZbXQ2fVzUwbxInUZ1TrcSwkP3DRtTz7s=", "AcqL5zgyuNBoFIfSfRV4AtdBpvNs3CoFdogfkyZHiHU=", "H3c1cG/+n8WG+XbVvfIj3GgChggLEM6gC5td4xX5ZQ4=", "JSK2D06jMHZAoMLc4EH7qSGsEKPV8JbvR0XKg4KF8Bk=", "I/C+4AGxAp1SVQdd3JV/gzQYytT1K2w/jOFsI1VyV1s=", "K8Gui43buB/KrC1EVV7VaF0UJjPp35BfZtlAEJMILVk=", "D5QGuCllZKNzBFB7jbo+0WI3EnOgex/JgBH81q1yIF8=", "I2Co6wzH3vpntymY3pBxThfnWxdKUu5KyxJsjNmV8Kg=", "FYcaXN3q2XaATIA8uu8lXrSBWl6W34sAbcu8J2f4iUg=", "GTpWdmmY7p4KhlLdLzsdoDYvT1T3I3lUT5V8ze77Qg8=", "KjlKQ5NPhpgvm+Vv9PqxcDsuY8itM0g05DCYBed3rg8=", "GFmVTP64aV8+i2NdyzRRkoks0RIjRDuntBZuiHbA0UI=", "BOEYF2MFDlgBNETby5nxkCsRvCXZC73KQI04GfT+0ys=", "D9slPe6Dhp1AwzXqZN6MW7EOuC2wi16LH15VUr/QXyM=", "BYy+ippQJ72qTvtiOt6tYnXwhobxwImEqdfFuum08cA=", "E4Ltzplx4YZJfq2xrrH1KyO0uDvvAjqw0VIotMzspZo=", "A0ZJkPBFxu4IGcpR/RGwvn9huOuZ8Ut34eZjRgHZ6LU=", "I/e/yHINwpb/8ztB+Y/4PG/KtGBdsutaqlvBN663Clg=", "ClmhWOPuwhF+bpTn8OnezxjD/9XhUxqSGWNhWLuvYvI=", "BuxUyAOBwFK1i/I7MS/9POLE66BlQgr49MI+0Adf0Hs=", "EYhy3IMuDrVHa1ZkjoZ+yLCTQPenvLG0li8P+e0fnQE=", "E9afoSfYNBZa1cfLp61Z7VLgsPDkLX/qleGQa1IJIbE=", "FpoXf2PqaBJwscaHenPSG94UOUL7cdxV/YpJ8Z8Qx3s=", "BO9RWRxurZfvQvKHrc5A2Tq+sDK5IvZv+36aWnRQVE0=", "JW4XWh3AeTkOzXynA/suOxnsYYBdTwPO1fRe5t0Paew=", "MBAtKGNqvV/l8q9BL/YAT3XMNg0yBd0toAKBPT4s7rI=", "EJmOQt/NO78cBxS8c+sb9ARDo/qZvvSjH9Mb4YL8x5I=", "GT7djp/PPXYl+n0ktZih2J8zYur01YLv7K12+HnjaGA=", "GBaK/TTy2RXQNozoC3szR9HHpWHOYRQl8mZNeqUfC10=", "KTg8AevTtqsMAXZW6+ZYtqMo7He8M2JuKeLpWzPqYRE=", "EGRtLyYD3jmh9K5ed3GmSnAttuhvt2q2AL9XP5AQxxE=", "C+teB9GycUX1dfE5WlW/Ey+QwltA2ns4ZNAkLcsRF/s=", "FtaFJSB4wTPcDT7K1itciDD5W7LlS1mr3/vwGNlvozY=", "Cmq9HYM5OPM8dBVOBAS0tApVW7vsId36/Wct1iBH8Bo=", "GmefXTbre1yOoSpMLe3I/rEt/+7EUDFycKbxmzTPGGA=", "CYD7IzvUVsI5dNUODr/eRyakI+raTo9v+8dZLj8bk9Y=", "FhtCIy5huEy/GBCvk6OPwM7OPVYoySggA+ustcMSxys=", "CtoQqQx/BSCVD31Hpg1eakk/CXh/FWTl0JID20feGgs=", "GnMNNyMQuoIyA0WimsQjjtPweoorThIbtQ3bmvQH9FE=", "LIEg8mjvBU+BcGTDad2n6pCDd/6rpcTf+9oQ71joxVY=", "HHyIJPdYdT+lfAB4nGhCF7kw6VMTvLc+bnuGSaSWj3A=", "LNntMfX4aRyOOeQHenT6oPQArYtJHrP3tHsn+j/Rz3c=", "I/9PnUaBNFfPYNkvV2GDmaXgIqwyHKVQhUriORiiLuo=", "CZRaXRR6T2bO7OZAXd3Z0K9aLFEDUpQH3/HqWPGAQm0=", "GI2cUoAl1MK2dmDGt3G5D3x9puqinT8mim3SI+xvxjA=", "MFDjeZZZa3+B9oMRQx2HNNun2SbTYzWV4MDY3fTw9H8=", "Fa8RaTloMKkWAMqBAsNcQmzq5UYeP5XYnYKVGNMK/Xg=", "HabQmIVDLqmgbZ83+HPZhdrpM+NRRmspBChNozINisw=", "J5bqkNJpryn1+KzzOSESTk5PrT2+ZYlF5UbuQR3aqcs=", "IC190doPa0sDJcizMHdC8B4VYS7I6TBKfLAxngHTLWA=", "CW1nkNBbt1kVapUromPWcqLX+ceI9Mgxop2s5MD4vl8=", "BU76H2Ww/OKDgIllJ12He0ONojzlsT4ZY3mMsUR9JaQ=", "GxYvg9kX6T7bMwjCmALeudiqaQETsuFIZMz24Y5BZfE=", "IeUkHhJWTdb9nxzdKg3jnu3+/BRmzFaOxc63RaBQbtw=", "HPtWYujPWskiaoDuF7Nqvstzq1+H4WGSe0NJ4Q5L3wg=", "DyEXfjAqdxu65tjR7LNztiyZrzRiIKwBKcU/Zm6yQQA=", "FnFSI3RgaZKv+w3X9xsSvsQjau3mKQVGvO9+H1FcIyA=", "D6PsW5SIJZwutM8kUBv62b4uyeQsXMjM1BnSppLK2HA=", "GTwOBOC9KYNXyyZsFQYIDtNu3OhcZIzAhejFexq1S7o=", "ECrfjvdHNaJ+kSgwbcvDyZ9vcpHNQGV4zhTqKtq6aPg=", "D+CveFjkmFnipU1vGtlFsTFqokv73SOuQKbQy3DD6rE=", "IW9nF7vH3tsIU2oiIIQ/Ti2l8dqp69796KXqc0R5jSI=", "HaVcyQDw0h9KPmlDkZGKGzwjsqx3PGs++I4uQigyUWE="],
1059
- "M": [["EJt/QRug5MmytwyvXDansZS+fBGtJDeL/ttoWSuoEYs=", "Fu1B4Tu5wMZq4RlCT928vJMU3J/b3upV1sZFQ9xJA+A=", "K5C7oA/KBYn2F+fcv+guDfcGq2QM6yR7eRqTt042c20="], ["KWnyfu0xpIC5w2x2Q3nbyizI/dFBXD3e1ilAvN4L13E=", "LiQZ+ewC7DlMmHHIMpY9wbiddDyMe5ZAKbIxFoex/iM=", "EBBx8AMjebaXMVh2aQ8FPRSNThCfX7BlyKrMVaD4m/o="], ["FDAh7GhqPzMNX55lRjgGXObNeeKMWzdTMmJE7mWhsac=", "F2zAKWla0CWCpw7/CKb9mdBX4S5Y59e2sWzfq8juKRE=", "GaP8ClZwK/QXun/uOAJZP6ZERwMHBD93cyec1x0l1eA="]]
118
+ C: ['DumlkrqalRjQWYbWVvQMIRTEmTwRuymTjSHUcwTNjm4=', 'APFEUjXyFIxZhlhxafwbzYh7CNTQCGjfVpb/9AlW6GQ=', 'CN/zSH6KyZ4fKaBY0PqAuTDHKHMLerNs6HnziQ7Pc/U=', 'Lye+aQ/a7kbDzij3UysTyFbDU0LIS9puIJZjEPrcAdA=', 'KyrhrPaLe40kFr6/PU9iNLdj/gS4BD7ki4MnvryhbPI=', 'AxnQYgcr737MperAb5fU1VlSwXWrawPq5ktEx9vxHPo=', 'KIE9yuuuqoKKN234evSmO8i3vyetScYpjvezh78oUm0=', 'JydnOyzLyQPxgb844cHUDSAzhlIAw1K8FQkord35y3g=', 'I07EXKJ3J8LnSr0rKhSUzW771D40BYfWuPueMeZcxjI=', 'FbUlNAMa4Y9/hiyyz3z3YKsQqBUKM3sczZn/boeX1Cg=', 'Dcj61tnks19e2aPRhrec444Oio0bWLEy1wHU7s9o0fY=', 'G82V/8IR+8pgD3BfrT+1Z+pOs3j2Lh/sl4BVGKR+TZw=', 'EFILCrchyt/p7/gbAW/DTcdto2wleJN4F8uXjQad5Vk=', 'H21IFJuOf32bJX2O1fu69CkySYB1/tCs6IqeuB9WJ/Y=', 'HZZV9lIwkBTSngDvNaIIm//43ByBbw3JyjS9tUYMhwU=', 'BN9aVv+VvK+wUfexzUOpm6cx/2fkcDIFj+PUGFaXzH0=', 'BnLZlfj/9kAVGz0pDO2vFIaQoQqMhCSn9uwoK25L6Cg=', 'CZlStBSIRFSyEgDX/6/dXwyancwG8nCOn8HYIJtcdbk=', 'BSy6IlXf0Ax8SDFDuo1GlEjkNYaptM2Rg/0OhDprn6Y=', 'C4ut7mkK246wvXRxK3mZr4LeVXByUa13Fgd8uTxGTdw=', 'EZsVkPEzB69aHuZRAgwHx0nBXWBoOoBQuWPQqOSyvdE=', 'AxULfNbV0XslKdNr4PZ7gyxKz8iE707lzhW+C/tKjQk=', 'LMYYLF4UVG488ZUfFzkSNVN077g9gImKvmnLMXyepWU=', 'AFAyVR5jeMRQz+EppASzdkIYyt7awU4rktLNcxEb8Pk=', 'IzI34yibqjS7FH6XLry5UWRpw5n8wGn7iPnaLMKCdrU=', 'Bcj09OvUpuPJgNMWdL++YyMDfyGzSuWk6AwtTCTWAoA=', 'CnsdsTBC05a6BdgYoxnyUlK8817zru2R7h8JslkPxls=', 'KnO3H5shDPWxQpZXLJ0y2/FW4rCG/0fcXfVCNlpATsA=', 'GsmwQXq8yaGTUQfp/8kdw+wY8sTb5/Ipdqdgu1xQxGA=', 'EsAzmuCDdII/q7B2cH70eSafPk1ssQQ0kBXuBG3JP8A=', 'C3R1sQKhZa1/WxjbTh5wT1KQCqMlO6rGgkZoLlbpoo4=', 'A3woSeGRyj7bHF5J9ui4kXyEPjeTZvLqMqs6qI1/hEg=', 'BaaBH4VW8BTpJnRmHiF+m9UgbFyToH3BRf2xdqcWNG8=', 'KaeV59mAKJRulHt11U6fBEB26Hp7KIO0e2de9fOL1m4=', 'IEOaDISzIutFo4V6/Bj1gm6Mc4LIoVhcUHvhmZgf0i8=', 'Lguo2U2ez0qU7CBQxzcf8btQ8neZqEttSipvKgmCyIc=', 'FD/RFc4I+yfKOOt8zoIrRReCLNIQkEjS5tDdzKF9ccg=', 'DGTL7LHHNLhXlo273PgTzfhhFlkyPby/yEMjYjvpyvE=', 'AoowWEfGg/ZG/KklwWP/WudPNI1iwrZw8UJs75QD2lM=', 'Lk71EP8Lb9pfqUCrTEOA8mpry2TYlCe4JNZ1W1254ww=', 'AIHJW8QzhOZj15JwyVbOO4kltPbQM7B4uWOE9QV5QA4=', 'LtXwyRy9l0kYfi+t5ofgXuJJGzScA5oLuoqfQCOguzg=', 'MFCZkfiNo1BLvzdO1ari8DRIoix2I0yMmQ8B8zpzUgY=', 'HD8g/VVAmlMiG3xNSaNWufChEZ+yBntBp1KQlEJOxq0=', 'ELTn86td8AMElRRFm24Y7sRrsiE+jhMeFwiHtH3cuWw=', 'KhmCl5w/9/Q93VQ9iRwqvd2A+ATAd9d1A5qjUC5Dre8=', 'HHTuZPFeHbb+3b6tVtbVXbpDHrw5bJr5XK0PExW9XJE=', 'B1M+yFC6f5jquTA8rOAbS55PLouCcIz6nC/kWgrhRqA=', 'IVdrQ45QBEmhUeTurxexVChcaPQtQsGAihGr83ZMB1A=', 'LxfAVZuP55YIrVyhk9YvELzoOEyBXwkGdD1pMINtSp4=', 'LUd+OGLQdwinnoqulGFwvJd1pCATGEdK5mWwsbficw4=', 'Fi9SQ5ZwZMOQ4JVXeYTyka+6ImbDj1q82Jvg9bJ0fqs=', 'K0yyM+3pukgmTs0siuUNGteoWWqH8p+Kd3enAJI5MxE=', 'LI+8st2Fc9wduvj0YihUd22y7s5thcTPQlTnw14DsHo=', 'HW80dyXkgWry/0U/DNVrGZ4bYen2Aemt5eiNuHCUnak=', 'IEsMOX9OvnHrwtiz31uRPfnmrAK2jTEyTNSa9cRWVSk=', 'DEy53DxP2BdPEUmzxjw8L57LgnzX3CVTT/j7dbx5xQI=', 'F0rWGhRIyJmiVBZHT0kwMB5cSUdSeeBjmmFt3EW8e1Q=', 'GpYXe89NjYn3Wd9OwvPN4uqqKMF3zA+hOpgW1Jo40u8=', 'Bm0EskMx1xzQ74BUvGDE/wUgLBJqIzwagkKs42C4owo=', 'KkxPxuwLDPUhlXgoccbdOzgcxl9y4CrVJwN6Yqob2AQ=', 'E6stE2zPN9RH6fLhSnztyV5yf4RG9tnX5Vr8ASGf1kk=', 'ESFVL8omBhYZ0k2EPcgnacGwT87Cb1UZTC4+hprMapo=', 'AO9lMyKxPWyIm8gXFcN9d6bNJn1ZXEqJCaVUbHyXz/E=', 'DiVIPkWmZSCLJh2Lp0BR5kAMd21lJZXZhFrKNdijl9M=', 'KfU23LnddoIkUmRlnhXYjjlaw9Td6S2MRkSNuXnuuok=', 'KlbvnyxT/rrf2jNXXb29iFoSTieAu+oXDkVrqs4Ppb4=', 'HINhx461z13s+3otF7XECfKuKZmkZ2Lo7kFiQKjLmvE=', 'FRr/XziyCg/ARzCJqvAga4Po5op2RQe/09CrS+dDGcU=', 'BMYYfkHtiB3BsjnIj3+dQ6n1L8jIts3R525HYVtR8QA=', 'E7N72A9NJ/sQ2EMx9vttU0uBxh7RV3ZEnoAbfdycKWc=', 'AaXFNic8LZ31eL+9MsF7eizjZkwqUgMskyHOscToqOQ=', 'KrNWGDTKc4Na0F9desuVC0qaLGZrlybagyI5Blt8OwI=', 'HU2OwpHnINsgD+bWhsDWE6yvavTpXTv2n37VFqWXtkY=', 'BBKU0sxITSKPV4T+eRn9K7klNRJAoEtxFRTJyAtlrx0=', 'FUrJjgFwjGEcT6cVmR8ASJj1eTnRJuOSBClx3ZDoH8Y=', 'CzOdisyn1Pg+7dhAk671EFCzaEyI+LCwRSRWO8bqTaQ=', 'CVXknmYQyUJUpPhM+6s0RZjw5x6v9Kfdge2VtQg5yC4=', 'BnRqYVbrpUQmueIiBvFavKmm9B5vU1xvNSVAHqBlRiY=', 'Dxj1oOzRQjxJbzggxUnCeDjleQ4r0KGWrJF8f/Mgd/s=', 'BPbuyhdR9zCKxZ7/W+smHku1Y1g+3nvJKnOCI9b3bhM=', 'K1aXM2TExPXBo+xNo83OA4gR6xFvs+RbwXaNJvwLN1g=', 'Ejdp3UnVsFTc12uJgEsby44TkrOFcWpdg/62XUN/Ke8=', 'IUe0JPxIyAqI7lK5EWmqzqmJ9kRkcRUJlCV7L7AcY+k=', 'D9wfWFSLhXAabFUF6jMqKWR+bzStQkPC6lStiXzr5U0=', 'Ejc6glH+oATfaKvPD3eG1Lzv8oxdu+DDlE9oXMCgsfI=', 'IeT06l81+FutfqUv90LJ6KZCdWtq9EID3YofNcGpADU=', 'FiQ5FtadLKPftHIiJNTEYrVzZkkvRekNioGTTxvDsUc=', 'HvvkbdeleLT2b5rbyItDeKvCFWbhoEU8oTpBWcrASsI=', 'B+pehTfPXdCIhgIOI6fzh9Ro1VJb5m+FO2csyWqIlpo=', 'BajE+ZaLiqO3tHijD5pbY2UPGadefOEcqf4WwLdsALw=', 'IPBXcSzCFlT7/lm9NF6NrD94GMcBuceILZ1Xtyoy6D8=', 'BKEu3tqd/WiWcvjGf+4xY23NjojQHUkBm9kLM+sz22k=', 'J+iNjBXzfc7kTx5UJaUd7L0TbOUJGmdn5J7JVEzNEBo=', 'L+7Re4QoXtm4pcjF6VpB9m4JZhmncDIjF2xB7kM95NE=', 'HtfMdu30XHxAQkFCD3Kc85TllCkRMSoNaXK4vVOv8rg=', 'FXQumbm/oyMVf/jFhvVmDqxng0dhRM3K3yh0vkVGaxo=', 'GqwoU4f2XoLIlfxoh930BXcQdFTG7AMXKE8DPyfQx4U=', 'JYUcPIRdR5D53a29tgVzV4MuLnpJd19x7HWpZVTWfHc=', 'FaWCFWXMLsLOeEV9sZft81O367osVSM3DdzMPZ8Uamc=', 'JBHVekgTuZgO+n4xodtZZtz2TzYEQndQLxVIXyjHFyc=', 'AC5vjWUgzUcT4zW4wLbS5kfpqY4S9M0lWIKLXvbLTJs=', 'L/e8j0OAzemX2gC2FrD80a+PDpHi/h7XOYg0YJ4DFdI=', 'ALmDG5SFJVle4CckRxvNGC6VIfa3u2jx6Tvk/rsNPL4=', 'Ci9TdouOv2qGkTsOV8BOARykCGSKR0OofXetvwycNRI=', 'ACSBVhQv0Dc6R5+R/yOelg9Zn/fpS+abfyopAwXhGY0=', 'Fx1WILh7+xMoz4wCqz8MmjlxlqpqVCwjUOtRKisrzak=', 'FwpPVVNvfclwCHx8ENb612DJUhct1U3ZnRBF5Ow0qAg=', 'KaujP3mf5mwu8xNK6gQzbsw344wc0hG6SC7KF+Lb+uE=', 'HpvBeaT911j90bsZRQiNR+cNEUoD9qDotbplA2nmSXM=', 'HdJpeZtmD61Y9/SJLfsLWv6q2GmpxLRPnJ4cQ72vjwk=', 'Is28i3ARetFAEYHQLhVFnnzNQm/oacfJXR3Syw8krzg=', 'DvBC5FR3HFM6n1elXFA/zv0xUPUu2Up81bqTucfazv0=', 'EWCeBq1sj+Lyh/MDYDfohRMY6LCKA1mgOzBP/KYugoQ=', 'EWbZ5VRhbbqedT7qQnwXt/7NWMB23+QnCLCPW3g6qa8=', 'LeUpiUMahZWTQTAmNUQT2xd/v0zSrAtW+FWoiDV+5GY=', 'MAbrT/x6hYGabaSS86isHfUa7lsXuOiddL8Bz19x6a0=', 'KvQfu2G6ioD9z2//nj9vQimT/o8KRjn5YjRMgiUUUIY=', 'EZ5oTeR2FV/lprQajryF24cYqyeInoXngbIUus5IJ8M=', 'GDW3huLokl4Yi+pZrjY1N7USSMI4KPBHz/eEuXs/2AA=', 'KCAaNMWU36NNeUmWxkM6INFSusKnkFySbEDihasy7rY=', 'CD79eifRdRCU6A/vr3iwAIZMgutXEYdySnYfiMIsxOc=', 'C2+Io1dxmVJhWOYc7qJ76BHBbfd3TdhRngeVZPYf0Ts=', 'Dsho5tFeUdlkT2bh1kcalFiVEcoA0p4QFDkObuQlT1s=', 'KvM+P4ZncScawMmz7S4RQuzT50uTnNQNANk3q4TJhZE=', 'C1ICEfkEtefQm12WHGrOdzRWjFR91oWLNkzl5HlR8Xg=', 'Cy1yLQkZoarY21jxAGKpLqDFasQnDoIsyiKGIBiKHUA=', 'H3kNTX+M8JTZgM6zfCRT6Ve1SpmRyji74AYdHtblYtQ=', 'AXHrld+/fR6uqXzThfeAFQiFwWI1oqao2pLOsB5QQjM=', 'DC0OO1/VdUkym/aIXaZrm3kLQN79LIZQdiMFOBsWiHM=', 'EWL7KGicJxVOWoIotOcrN3y8r6WJ4oPDXTgDBUQHoY0=', 'LxRZtl3uRBtkrThqkegxDygsWpKonhmSFiPvgklxG8A=', 'Hm/zIWtojD2ZbXQ2fVzUwbxInUZ1TrcSwkP3DRtTz7s=', 'AcqL5zgyuNBoFIfSfRV4AtdBpvNs3CoFdogfkyZHiHU=', 'H3c1cG/+n8WG+XbVvfIj3GgChggLEM6gC5td4xX5ZQ4=', 'JSK2D06jMHZAoMLc4EH7qSGsEKPV8JbvR0XKg4KF8Bk=', 'I/C+4AGxAp1SVQdd3JV/gzQYytT1K2w/jOFsI1VyV1s=', 'K8Gui43buB/KrC1EVV7VaF0UJjPp35BfZtlAEJMILVk=', 'D5QGuCllZKNzBFB7jbo+0WI3EnOgex/JgBH81q1yIF8=', 'I2Co6wzH3vpntymY3pBxThfnWxdKUu5KyxJsjNmV8Kg=', 'FYcaXN3q2XaATIA8uu8lXrSBWl6W34sAbcu8J2f4iUg=', 'GTpWdmmY7p4KhlLdLzsdoDYvT1T3I3lUT5V8ze77Qg8=', 'KjlKQ5NPhpgvm+Vv9PqxcDsuY8itM0g05DCYBed3rg8=', 'GFmVTP64aV8+i2NdyzRRkoks0RIjRDuntBZuiHbA0UI=', 'BOEYF2MFDlgBNETby5nxkCsRvCXZC73KQI04GfT+0ys=', 'D9slPe6Dhp1AwzXqZN6MW7EOuC2wi16LH15VUr/QXyM=', 'BYy+ippQJ72qTvtiOt6tYnXwhobxwImEqdfFuum08cA=', 'E4Ltzplx4YZJfq2xrrH1KyO0uDvvAjqw0VIotMzspZo=', 'A0ZJkPBFxu4IGcpR/RGwvn9huOuZ8Ut34eZjRgHZ6LU=', 'I/e/yHINwpb/8ztB+Y/4PG/KtGBdsutaqlvBN663Clg=', 'ClmhWOPuwhF+bpTn8OnezxjD/9XhUxqSGWNhWLuvYvI=', 'BuxUyAOBwFK1i/I7MS/9POLE66BlQgr49MI+0Adf0Hs=', 'EYhy3IMuDrVHa1ZkjoZ+yLCTQPenvLG0li8P+e0fnQE=', 'E9afoSfYNBZa1cfLp61Z7VLgsPDkLX/qleGQa1IJIbE=', 'FpoXf2PqaBJwscaHenPSG94UOUL7cdxV/YpJ8Z8Qx3s=', 'BO9RWRxurZfvQvKHrc5A2Tq+sDK5IvZv+36aWnRQVE0=', 'JW4XWh3AeTkOzXynA/suOxnsYYBdTwPO1fRe5t0Paew=', 'MBAtKGNqvV/l8q9BL/YAT3XMNg0yBd0toAKBPT4s7rI=', 'EJmOQt/NO78cBxS8c+sb9ARDo/qZvvSjH9Mb4YL8x5I=', 'GT7djp/PPXYl+n0ktZih2J8zYur01YLv7K12+HnjaGA=', 'GBaK/TTy2RXQNozoC3szR9HHpWHOYRQl8mZNeqUfC10=', 'KTg8AevTtqsMAXZW6+ZYtqMo7He8M2JuKeLpWzPqYRE=', 'EGRtLyYD3jmh9K5ed3GmSnAttuhvt2q2AL9XP5AQxxE=', 'C+teB9GycUX1dfE5WlW/Ey+QwltA2ns4ZNAkLcsRF/s=', 'FtaFJSB4wTPcDT7K1itciDD5W7LlS1mr3/vwGNlvozY=', 'Cmq9HYM5OPM8dBVOBAS0tApVW7vsId36/Wct1iBH8Bo=', 'GmefXTbre1yOoSpMLe3I/rEt/+7EUDFycKbxmzTPGGA=', 'CYD7IzvUVsI5dNUODr/eRyakI+raTo9v+8dZLj8bk9Y=', 'FhtCIy5huEy/GBCvk6OPwM7OPVYoySggA+ustcMSxys=', 'CtoQqQx/BSCVD31Hpg1eakk/CXh/FWTl0JID20feGgs=', 'GnMNNyMQuoIyA0WimsQjjtPweoorThIbtQ3bmvQH9FE=', 'LIEg8mjvBU+BcGTDad2n6pCDd/6rpcTf+9oQ71joxVY=', 'HHyIJPdYdT+lfAB4nGhCF7kw6VMTvLc+bnuGSaSWj3A=', 'LNntMfX4aRyOOeQHenT6oPQArYtJHrP3tHsn+j/Rz3c=', 'I/9PnUaBNFfPYNkvV2GDmaXgIqwyHKVQhUriORiiLuo=', 'CZRaXRR6T2bO7OZAXd3Z0K9aLFEDUpQH3/HqWPGAQm0=', 'GI2cUoAl1MK2dmDGt3G5D3x9puqinT8mim3SI+xvxjA=', 'MFDjeZZZa3+B9oMRQx2HNNun2SbTYzWV4MDY3fTw9H8=', 'Fa8RaTloMKkWAMqBAsNcQmzq5UYeP5XYnYKVGNMK/Xg=', 'HabQmIVDLqmgbZ83+HPZhdrpM+NRRmspBChNozINisw=', 'J5bqkNJpryn1+KzzOSESTk5PrT2+ZYlF5UbuQR3aqcs=', 'IC190doPa0sDJcizMHdC8B4VYS7I6TBKfLAxngHTLWA=', 'CW1nkNBbt1kVapUromPWcqLX+ceI9Mgxop2s5MD4vl8=', 'BU76H2Ww/OKDgIllJ12He0ONojzlsT4ZY3mMsUR9JaQ=', 'GxYvg9kX6T7bMwjCmALeudiqaQETsuFIZMz24Y5BZfE=', 'IeUkHhJWTdb9nxzdKg3jnu3+/BRmzFaOxc63RaBQbtw=', 'HPtWYujPWskiaoDuF7Nqvstzq1+H4WGSe0NJ4Q5L3wg=', 'DyEXfjAqdxu65tjR7LNztiyZrzRiIKwBKcU/Zm6yQQA=', 'FnFSI3RgaZKv+w3X9xsSvsQjau3mKQVGvO9+H1FcIyA=', 'D6PsW5SIJZwutM8kUBv62b4uyeQsXMjM1BnSppLK2HA=', 'GTwOBOC9KYNXyyZsFQYIDtNu3OhcZIzAhejFexq1S7o=', 'ECrfjvdHNaJ+kSgwbcvDyZ9vcpHNQGV4zhTqKtq6aPg=', 'D+CveFjkmFnipU1vGtlFsTFqokv73SOuQKbQy3DD6rE=', 'IW9nF7vH3tsIU2oiIIQ/Ti2l8dqp69796KXqc0R5jSI=', 'HaVcyQDw0h9KPmlDkZGKGzwjsqx3PGs++I4uQigyUWE='],
119
+ M: [['EJt/QRug5MmytwyvXDansZS+fBGtJDeL/ttoWSuoEYs=', 'Fu1B4Tu5wMZq4RlCT928vJMU3J/b3upV1sZFQ9xJA+A=', 'K5C7oA/KBYn2F+fcv+guDfcGq2QM6yR7eRqTt042c20='], ['KWnyfu0xpIC5w2x2Q3nbyizI/dFBXD3e1ilAvN4L13E=', 'LiQZ+ewC7DlMmHHIMpY9wbiddDyMe5ZAKbIxFoex/iM=', 'EBBx8AMjebaXMVh2aQ8FPRSNThCfX7BlyKrMVaD4m/o='], ['FDAh7GhqPzMNX55lRjgGXObNeeKMWzdTMmJE7mWhsac=', 'F2zAKWla0CWCpw7/CKb9mdBX4S5Y59e2sWzfq8juKRE=', 'GaP8ClZwK/QXun/uOAJZP6ZERwMHBD93cyec1x0l1eA=']]
1060
120
  };
1061
121
  _2.default = _default;
1062
122
 
@@ -1064,13 +124,13 @@ Object.defineProperty(poseidon2$1, "__esModule", {
1064
124
  value: true
1065
125
  });
1066
126
  var poseidon2_2 = poseidon2$1.poseidon2 = poseidon2;
1067
- var _slow = _interopRequireDefault(slow);
127
+ var _poseidon = _interopRequireDefault(poseidon_1);
1068
128
  var _unstringify = _interopRequireDefault(unstringify);
1069
129
  var _ = _interopRequireDefault(_2);
1070
130
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
1071
131
  const c = (0, _unstringify.default)(_.default);
1072
132
  function poseidon2(inputs) {
1073
- return (0, _slow.default)(inputs, c);
133
+ return (0, _poseidon.default)(inputs, c);
1074
134
  }
1075
135
 
1076
136
  function checkParameter(value, name, type) {