zkhash/poseidon/
poseidon_instance_babybear.rs

1use super::poseidon_params::PoseidonParams;
2use crate::fields::babybear::FpBabyBear;
3use crate::fields::utils::from_hex;
4
5use lazy_static::lazy_static;
6use std::sync::Arc;
7
8type Scalar = FpBabyBear;
9
10lazy_static! {
11    pub static ref MDS16: Vec<Vec<Scalar>> = vec![
12    vec![from_hex("0x6ed88b54"),
13    from_hex("0x365c29f9"),
14    from_hex("0x029047ae"),
15    from_hex("0x0340f575"),
16    from_hex("0x68418255"),
17    from_hex("0x315e4e40"),
18    from_hex("0x51596faa"),
19    from_hex("0x71183465"),
20    from_hex("0x2d036fca"),
21    from_hex("0x09e4fa24"),
22    from_hex("0x38e00966"),
23    from_hex("0x13e81974"),
24    from_hex("0x60f6dafc"),
25    from_hex("0x3c664116"),
26    from_hex("0x2e2b9d4b"),
27    from_hex("0x6c5f6689"),
28    ],
29    vec![from_hex("0x4a1d7fc9"),
30    from_hex("0x6506dfb7"),
31    from_hex("0x2f49702b"),
32    from_hex("0x3ebaafe9"),
33    from_hex("0x718fc5d2"),
34    from_hex("0x14dcbeed"),
35    from_hex("0x27a38245"),
36    from_hex("0x528238e5"),
37    from_hex("0x10663404"),
38    from_hex("0x2a504978"),
39    from_hex("0x0b027c2e"),
40    from_hex("0x4bdd7226"),
41    from_hex("0x001ebc59"),
42    from_hex("0x52555194"),
43    from_hex("0x148df9b7"),
44    from_hex("0x013587d5"),
45    ],
46    vec![from_hex("0x03a74096"),
47    from_hex("0x5b791ccd"),
48    from_hex("0x2e3a2688"),
49    from_hex("0x26b936dc"),
50    from_hex("0x0a0df4c3"),
51    from_hex("0x4a1e89d8"),
52    from_hex("0x07a37b58"),
53    from_hex("0x3ff10121"),
54    from_hex("0x4912f3d0"),
55    from_hex("0x0e5cbd22"),
56    from_hex("0x0086832d"),
57    from_hex("0x5bc8209b"),
58    from_hex("0x0ecaa423"),
59    from_hex("0x0c8b360e"),
60    from_hex("0x542abb63"),
61    from_hex("0x198e5ede"),
62    ],
63    vec![from_hex("0x2ba24027"),
64    from_hex("0x5c61cbe2"),
65    from_hex("0x15dabd0c"),
66    from_hex("0x58763be5"),
67    from_hex("0x70a28315"),
68    from_hex("0x41a8f9fb"),
69    from_hex("0x3786bc6d"),
70    from_hex("0x19ca59f8"),
71    from_hex("0x42185a03"),
72    from_hex("0x48223bcf"),
73    from_hex("0x190d6883"),
74    from_hex("0x086269de"),
75    from_hex("0x3630ddef"),
76    from_hex("0x2c0dbdd3"),
77    from_hex("0x2c07ad23"),
78    from_hex("0x29561d75"),
79    ],
80    vec![from_hex("0x2db3561a"),
81    from_hex("0x349aabc3"),
82    from_hex("0x0aeb611d"),
83    from_hex("0x32c2bd61"),
84    from_hex("0x38527028"),
85    from_hex("0x1483f37b"),
86    from_hex("0x3b28e234"),
87    from_hex("0x5a2762d4"),
88    from_hex("0x47c2d9d7"),
89    from_hex("0x372c5808"),
90    from_hex("0x54d14bd6"),
91    from_hex("0x49690d33"),
92    from_hex("0x0e015d17"),
93    from_hex("0x6aabc1ec"),
94    from_hex("0x3070eff3"),
95    from_hex("0x20b26c05"),
96    ],
97    vec![from_hex("0x2e19ba8d"),
98    from_hex("0x0d23450a"),
99    from_hex("0x2e5d9599"),
100    from_hex("0x57521a71"),
101    from_hex("0x0fe30b31"),
102    from_hex("0x2d125f10"),
103    from_hex("0x0bcd2b75"),
104    from_hex("0x1c5c0995"),
105    from_hex("0x13538cc1"),
106    from_hex("0x3e89bab1"),
107    from_hex("0x0ecd2c52"),
108    from_hex("0x4a242476"),
109    from_hex("0x3bd8f726"),
110    from_hex("0x6f61a168"),
111    from_hex("0x4be24d17"),
112    from_hex("0x3612cac7"),
113    ],
114    vec![from_hex("0x2d922f25"),
115    from_hex("0x6edf0857"),
116    from_hex("0x33af4716"),
117    from_hex("0x724e5171"),
118    from_hex("0x2a7361d2"),
119    from_hex("0x123ecf2e"),
120    from_hex("0x2275c912"),
121    from_hex("0x21f75377"),
122    from_hex("0x0b4a2d3c"),
123    from_hex("0x61940261"),
124    from_hex("0x335fa739"),
125    from_hex("0x3e18aca4"),
126    from_hex("0x1255c968"),
127    from_hex("0x0627c139"),
128    from_hex("0x0c870799"),
129    from_hex("0x1a271c86"),
130    ],
131    vec![from_hex("0x3722cccf"),
132    from_hex("0x3e2ac9f8"),
133    from_hex("0x3c6899ac"),
134    from_hex("0x6ced5ba0"),
135    from_hex("0x767999cd"),
136    from_hex("0x12fdf314"),
137    from_hex("0x284d52da"),
138    from_hex("0x010fa38b"),
139    from_hex("0x14e29a97"),
140    from_hex("0x58b4180e"),
141    from_hex("0x19b6c4ac"),
142    from_hex("0x722e27d3"),
143    from_hex("0x39a050e6"),
144    from_hex("0x4d05c08a"),
145    from_hex("0x3dbffefa"),
146    from_hex("0x61f01023"),
147    ],
148    vec![from_hex("0x4237a659"),
149    from_hex("0x4947e8c3"),
150    from_hex("0x069342f5"),
151    from_hex("0x15171937"),
152    from_hex("0x554eef00"),
153    from_hex("0x2ff329af"),
154    from_hex("0x0a5129f2"),
155    from_hex("0x634b85d7"),
156    from_hex("0x2a8adb36"),
157    from_hex("0x0c41318c"),
158    from_hex("0x5ac8ad85"),
159    from_hex("0x75823102"),
160    from_hex("0x49a8c8f4"),
161    from_hex("0x37b4dc23"),
162    from_hex("0x48383ddd"),
163    from_hex("0x2917cc4a"),
164    ],
165    vec![from_hex("0x64ded285"),
166    from_hex("0x2cf24480"),
167    from_hex("0x48a51fa3"),
168    from_hex("0x3f6d1fa6"),
169    from_hex("0x67fb2b58"),
170    from_hex("0x4ee85b14"),
171    from_hex("0x0185c875"),
172    from_hex("0x5c7a942d"),
173    from_hex("0x700e51a2"),
174    from_hex("0x15aff07d"),
175    from_hex("0x303754a2"),
176    from_hex("0x18a3e923"),
177    from_hex("0x28f104b7"),
178    from_hex("0x4d81102d"),
179    from_hex("0x26eee317"),
180    from_hex("0x2624abc9"),
181    ],
182    vec![from_hex("0x1cabd063"),
183    from_hex("0x2100450e"),
184    from_hex("0x1f3be9dd"),
185    from_hex("0x2a76b379"),
186    from_hex("0x3f18d12a"),
187    from_hex("0x0bb69105"),
188    from_hex("0x04d8a7ac"),
189    from_hex("0x1faded71"),
190    from_hex("0x0b2d86dd"),
191    from_hex("0x5b4fd3ea"),
192    from_hex("0x0d7f56e4"),
193    from_hex("0x4c934264"),
194    from_hex("0x00578cbc"),
195    from_hex("0x4ac335a4"),
196    from_hex("0x6de618f4"),
197    from_hex("0x12430d70"),
198    ],
199    vec![from_hex("0x69a43964"),
200    from_hex("0x27be8c04"),
201    from_hex("0x05bbbf28"),
202    from_hex("0x6a6fd5f2"),
203    from_hex("0x029ff4a2"),
204    from_hex("0x7480e7d2"),
205    from_hex("0x6ebd8697"),
206    from_hex("0x505ac2f2"),
207    from_hex("0x42198491"),
208    from_hex("0x3e22dde8"),
209    from_hex("0x19b3ffc9"),
210    from_hex("0x1c029b85"),
211    from_hex("0x3c83bd24"),
212    from_hex("0x5d48ee0c"),
213    from_hex("0x51db5088"),
214    from_hex("0x6a044125"),
215    ],
216    vec![from_hex("0x033e3e9f"),
217    from_hex("0x320cdce6"),
218    from_hex("0x42ceb3a3"),
219    from_hex("0x2c39ef78"),
220    from_hex("0x129f22c0"),
221    from_hex("0x038ce048"),
222    from_hex("0x200c7aa6"),
223    from_hex("0x37297a16"),
224    from_hex("0x6957af38"),
225    from_hex("0x3efaaf35"),
226    from_hex("0x47086768"),
227    from_hex("0x65017cbd"),
228    from_hex("0x3e52dd44"),
229    from_hex("0x632cdfec"),
230    from_hex("0x1e21dc74"),
231    from_hex("0x02b68bcf"),
232    ],
233    vec![from_hex("0x2526f6b9"),
234    from_hex("0x18cdaeca"),
235    from_hex("0x1a64dd5e"),
236    from_hex("0x0ed814ac"),
237    from_hex("0x32a9eb40"),
238    from_hex("0x2f276e0d"),
239    from_hex("0x30c6664b"),
240    from_hex("0x0ecfbdf7"),
241    from_hex("0x6e70acbc"),
242    from_hex("0x1df04c92"),
243    from_hex("0x44090fa0"),
244    from_hex("0x69e69133"),
245    from_hex("0x1bca435a"),
246    from_hex("0x0cb43110"),
247    from_hex("0x19f651ca"),
248    from_hex("0x3ea3be87"),
249    ],
250    vec![from_hex("0x032bf42c"),
251    from_hex("0x72b82f03"),
252    from_hex("0x2b56b081"),
253    from_hex("0x377703d9"),
254    from_hex("0x49cadd18"),
255    from_hex("0x3f7a6788"),
256    from_hex("0x1be5dac5"),
257    from_hex("0x1c81f75b"),
258    from_hex("0x6983b960"),
259    from_hex("0x067493e8"),
260    from_hex("0x4a4c05c9"),
261    from_hex("0x04dbd1a7"),
262    from_hex("0x2d30836d"),
263    from_hex("0x67454db1"),
264    from_hex("0x70de7fb4"),
265    from_hex("0x331eb4b8"),
266    ],
267    vec![from_hex("0x574bceed"),
268    from_hex("0x3c1e600e"),
269    from_hex("0x3a1b91b1"),
270    from_hex("0x69369cf9"),
271    from_hex("0x5e68d7ff"),
272    from_hex("0x2ddcd8d4"),
273    from_hex("0x5aff0a6d"),
274    from_hex("0x7068c4fc"),
275    from_hex("0x0fcb3bfd"),
276    from_hex("0x133838c7"),
277    from_hex("0x0bac1e88"),
278    from_hex("0x13ee81b1"),
279    from_hex("0x2eecf375"),
280    from_hex("0x1450e2a1"),
281    from_hex("0x474d780d"),
282    from_hex("0x3a9c651c"),
283    ],
284    ];
285
286    pub static ref RC16: Vec<Vec<Scalar>> = vec![
287    vec![from_hex("0x22d14fc7"),
288    from_hex("0x47743d29"),
289    from_hex("0x677f35c3"),
290    from_hex("0x3ae46df5"),
291    from_hex("0x24f86039"),
292    from_hex("0x4eb76fe3"),
293    from_hex("0x463c658a"),
294    from_hex("0x06ee674e"),
295    from_hex("0x21e71f9b"),
296    from_hex("0x50cd5cec"),
297    from_hex("0x5959fa83"),
298    from_hex("0x10a5b894"),
299    from_hex("0x0cf4d6db"),
300    from_hex("0x32b95009"),
301    from_hex("0x40299d0f"),
302    from_hex("0x31762364"),
303    ],
304    vec![from_hex("0x77a932b9"),
305    from_hex("0x4d5f9435"),
306    from_hex("0x585e5f8d"),
307    from_hex("0x68852880"),
308    from_hex("0x186d0ef0"),
309    from_hex("0x0bc8e16b"),
310    from_hex("0x33efc152"),
311    from_hex("0x4818fbb4"),
312    from_hex("0x60b89701"),
313    from_hex("0x217f693a"),
314    from_hex("0x242e7dd9"),
315    from_hex("0x2c602bd2"),
316    from_hex("0x3da5d2a9"),
317    from_hex("0x44d38735"),
318    from_hex("0x00b8f704"),
319    from_hex("0x6d897b7f"),
320    ],
321    vec![from_hex("0x26d51110"),
322    from_hex("0x4b9eaa24"),
323    from_hex("0x59f60b8a"),
324    from_hex("0x481b4e03"),
325    from_hex("0x4898afc8"),
326    from_hex("0x21a0b0cc"),
327    from_hex("0x2b03c2df"),
328    from_hex("0x0fea4ba0"),
329    from_hex("0x4bf2e3e8"),
330    from_hex("0x2073fdff"),
331    from_hex("0x3285abb7"),
332    from_hex("0x3ac0d1e9"),
333    from_hex("0x13d65258"),
334    from_hex("0x16b7a570"),
335    from_hex("0x45bcb00f"),
336    from_hex("0x5ba25311"),
337    ],
338    vec![from_hex("0x0f78e922"),
339    from_hex("0x294613f3"),
340    from_hex("0x1c377a1d"),
341    from_hex("0x2c19a8f6"),
342    from_hex("0x46e75290"),
343    from_hex("0x34bdbe27"),
344    from_hex("0x103e09a6"),
345    from_hex("0x32f00a1c"),
346    from_hex("0x193d8310"),
347    from_hex("0x48f5804b"),
348    from_hex("0x6866d66a"),
349    from_hex("0x05e6320a"),
350    from_hex("0x6250e5ba"),
351    from_hex("0x0f64c9de"),
352    from_hex("0x27f3a9c3"),
353    from_hex("0x367b028e"),
354    ],
355    vec![from_hex("0x3062eba8"),
356    from_hex("0x66794e00"),
357    from_hex("0x3a8857de"),
358    from_hex("0x311769e5"),
359    from_hex("0x269b55e6"),
360    from_hex("0x5962fc4d"),
361    from_hex("0x26e2a5a0"),
362    from_hex("0x1f6aec92"),
363    from_hex("0x66ff3568"),
364    from_hex("0x011c60cd"),
365    from_hex("0x2347af5a"),
366    from_hex("0x57bb56a4"),
367    from_hex("0x64de8246"),
368    from_hex("0x70f587ad"),
369    from_hex("0x4a91fd65"),
370    from_hex("0x3279477b"),
371    ],
372    vec![from_hex("0x6ded73c5"),
373    from_hex("0x75418e3f"),
374    from_hex("0x002a0229"),
375    from_hex("0x21fbe33c"),
376    from_hex("0x206b9591"),
377    from_hex("0x4133e248"),
378    from_hex("0x3e0d0cc5"),
379    from_hex("0x1e2351fd"),
380    from_hex("0x078e4519"),
381    from_hex("0x30a9d69e"),
382    from_hex("0x7689ab87"),
383    from_hex("0x0ae7a298"),
384    from_hex("0x029923cb"),
385    from_hex("0x024a2b1b"),
386    from_hex("0x1d60dbdf"),
387    from_hex("0x3d8af2b3"),
388    ],
389    vec![from_hex("0x36174f16"),
390    from_hex("0x397bf853"),
391    from_hex("0x478f1171"),
392    from_hex("0x202b95f5"),
393    from_hex("0x22a49e9a"),
394    from_hex("0x593a115d"),
395    from_hex("0x65f5a466"),
396    from_hex("0x56fdefeb"),
397    from_hex("0x0aa188c1"),
398    from_hex("0x5982426b"),
399    from_hex("0x71f6cb38"),
400    from_hex("0x594a711d"),
401    from_hex("0x2033eea8"),
402    from_hex("0x0c20b93b"),
403    from_hex("0x4873d752"),
404    from_hex("0x413cdb68"),
405    ],
406    vec![from_hex("0x1020fb7b"),
407    from_hex("0x55642c83"),
408    from_hex("0x4c3ca55e"),
409    from_hex("0x5cc9d020"),
410    from_hex("0x01bf4025"),
411    from_hex("0x5d53256f"),
412    from_hex("0x12110fe3"),
413    from_hex("0x5f325b00"),
414    from_hex("0x05ed0223"),
415    from_hex("0x6f73787e"),
416    from_hex("0x4250e6af"),
417    from_hex("0x05a1f50f"),
418    from_hex("0x5cedfe10"),
419    from_hex("0x5da8026b"),
420    from_hex("0x086fe6ee"),
421    from_hex("0x29e60bc0"),
422    ],
423    vec![from_hex("0x1c725c10"),
424    from_hex("0x1c3f0e56"),
425    from_hex("0x3bd7fb18"),
426    from_hex("0x24d8e7d6"),
427    from_hex("0x502b1331"),
428    from_hex("0x1570f4c6"),
429    from_hex("0x7060c4b4"),
430    from_hex("0x2822b9fe"),
431    from_hex("0x379b4036"),
432    from_hex("0x3c9ab0d8"),
433    from_hex("0x35bd29cf"),
434    from_hex("0x3353ba79"),
435    from_hex("0x72bc5629"),
436    from_hex("0x2e553ca6"),
437    from_hex("0x23131dd6"),
438    from_hex("0x46e96cd6"),
439    ],
440    vec![from_hex("0x4d65f5dc"),
441    from_hex("0x3fe8d06f"),
442    from_hex("0x6a4c8483"),
443    from_hex("0x6a9d46ea"),
444    from_hex("0x51b39333"),
445    from_hex("0x773dd4bb"),
446    from_hex("0x75472220"),
447    from_hex("0x03536ac5"),
448    from_hex("0x3fc93d6f"),
449    from_hex("0x1bd92d69"),
450    from_hex("0x6620b70f"),
451    from_hex("0x26e72902"),
452    from_hex("0x25eebb36"),
453    from_hex("0x66edfccc"),
454    from_hex("0x37779413"),
455    from_hex("0x60e28ba3"),
456    ],
457    vec![from_hex("0x741d0b77"),
458    from_hex("0x60f2d017"),
459    from_hex("0x23a25699"),
460    from_hex("0x2f063482"),
461    from_hex("0x1c768088"),
462    from_hex("0x11733e6b"),
463    from_hex("0x65d84305"),
464    from_hex("0x11c4ca51"),
465    from_hex("0x0fd5b6d7"),
466    from_hex("0x6469045d"),
467    from_hex("0x40257c38"),
468    from_hex("0x4c1d66ac"),
469    from_hex("0x3a86fb76"),
470    from_hex("0x6545288f"),
471    from_hex("0x00947328"),
472    from_hex("0x40d6abcb"),
473    ],
474    vec![from_hex("0x6f5d7715"),
475    from_hex("0x09801dd4"),
476    from_hex("0x389b74f8"),
477    from_hex("0x23461c1a"),
478    from_hex("0x1ae8ae39"),
479    from_hex("0x111cc3cb"),
480    from_hex("0x5b08fb1f"),
481    from_hex("0x5d2826af"),
482    from_hex("0x59c2918b"),
483    from_hex("0x392ece30"),
484    from_hex("0x56cb9b3b"),
485    from_hex("0x66bc00b1"),
486    from_hex("0x33d307df"),
487    from_hex("0x69624a18"),
488    from_hex("0x66eb09dc"),
489    from_hex("0x6597fd4c"),
490    ],
491    vec![from_hex("0x612fbfbd"),
492    from_hex("0x32c37391"),
493    from_hex("0x6b8bde71"),
494    from_hex("0x77384d19"),
495    from_hex("0x6580ce59"),
496    from_hex("0x169b7580"),
497    from_hex("0x6616ad73"),
498    from_hex("0x3c1887de"),
499    from_hex("0x75e3f2e5"),
500    from_hex("0x3ef08074"),
501    from_hex("0x59f70462"),
502    from_hex("0x27012115"),
503    from_hex("0x2ecc37d6"),
504    from_hex("0x52b25aa4"),
505    from_hex("0x0e71eb68"),
506    from_hex("0x6a5b543d"),
507    ],
508    vec![from_hex("0x2f47db02"),
509    from_hex("0x6b426d43"),
510    from_hex("0x22e2a257"),
511    from_hex("0x05689f5d"),
512    from_hex("0x53000206"),
513    from_hex("0x62174579"),
514    from_hex("0x41ee708e"),
515    from_hex("0x4c69f70e"),
516    from_hex("0x3a403a2c"),
517    from_hex("0x74a944ff"),
518    from_hex("0x0c5369ae"),
519    from_hex("0x08360919"),
520    from_hex("0x20502e46"),
521    from_hex("0x3aaba434"),
522    from_hex("0x6a3f85ff"),
523    from_hex("0x04a9a527"),
524    ],
525    vec![from_hex("0x3b985df9"),
526    from_hex("0x5ed46d10"),
527    from_hex("0x4b48f8aa"),
528    from_hex("0x3365ee9c"),
529    from_hex("0x688d45f5"),
530    from_hex("0x52f52e90"),
531    from_hex("0x48bfad48"),
532    from_hex("0x0f5474cb"),
533    from_hex("0x03b31034"),
534    from_hex("0x23c4e6fb"),
535    from_hex("0x37835e64"),
536    from_hex("0x24e8a57b"),
537    from_hex("0x700e9dd8"),
538    from_hex("0x44a95941"),
539    from_hex("0x3a495982"),
540    from_hex("0x3dd606f4"),
541    ],
542    vec![from_hex("0x6b990415"),
543    from_hex("0x5f419361"),
544    from_hex("0x18992a1f"),
545    from_hex("0x50d0225b"),
546    from_hex("0x16959009"),
547    from_hex("0x75c0bf50"),
548    from_hex("0x0b95ce3d"),
549    from_hex("0x10deaf8f"),
550    from_hex("0x36ca8803"),
551    from_hex("0x52d760ce"),
552    from_hex("0x49a1d323"),
553    from_hex("0x1cee5d28"),
554    from_hex("0x517d182a"),
555    from_hex("0x445e59d5"),
556    from_hex("0x0f9dd8a7"),
557    from_hex("0x5e137128"),
558    ],
559    vec![from_hex("0x70c68bd4"),
560    from_hex("0x4e452a12"),
561    from_hex("0x42c2636b"),
562    from_hex("0x5b5fa86c"),
563    from_hex("0x317568b1"),
564    from_hex("0x03e62c70"),
565    from_hex("0x1bb59265"),
566    from_hex("0x1baf7be7"),
567    from_hex("0x6376d40e"),
568    from_hex("0x548d4eca"),
569    from_hex("0x75e7d9f1"),
570    from_hex("0x4f9f6c94"),
571    from_hex("0x412cbbc5"),
572    from_hex("0x580e0d79"),
573    from_hex("0x21bb6865"),
574    from_hex("0x3f50966b"),
575    ],
576    vec![from_hex("0x3522ced6"),
577    from_hex("0x2a1988c9"),
578    from_hex("0x63cc080d"),
579    from_hex("0x2b1f3d4c"),
580    from_hex("0x4506613e"),
581    from_hex("0x60102247"),
582    from_hex("0x33a8ed0c"),
583    from_hex("0x4918947e"),
584    from_hex("0x4528a692"),
585    from_hex("0x1092a39e"),
586    from_hex("0x3b1f852a"),
587    from_hex("0x2691e16d"),
588    from_hex("0x36b79fd6"),
589    from_hex("0x108673bf"),
590    from_hex("0x66addb91"),
591    from_hex("0x0f453f41"),
592    ],
593    vec![from_hex("0x48b36260"),
594    from_hex("0x6f748480"),
595    from_hex("0x429817b2"),
596    from_hex("0x23073ebf"),
597    from_hex("0x4dbba065"),
598    from_hex("0x4cdb2356"),
599    from_hex("0x72c494a2"),
600    from_hex("0x4733a44d"),
601    from_hex("0x76a19165"),
602    from_hex("0x6c7872c8"),
603    from_hex("0x4bc245e1"),
604    from_hex("0x6d1efcfa"),
605    from_hex("0x29be57e1"),
606    from_hex("0x5eef5121"),
607    from_hex("0x0fda3d38"),
608    from_hex("0x2873e796"),
609    ],
610    vec![from_hex("0x10e8340b"),
611    from_hex("0x1bd00ac6"),
612    from_hex("0x4b8db5b7"),
613    from_hex("0x61fe659f"),
614    from_hex("0x247777c9"),
615    from_hex("0x0468bdea"),
616    from_hex("0x0e9f932b"),
617    from_hex("0x4d35799d"),
618    from_hex("0x0449265f"),
619    from_hex("0x45e3b326"),
620    from_hex("0x220818ed"),
621    from_hex("0x686090e1"),
622    from_hex("0x69361c44"),
623    from_hex("0x0ab186f2"),
624    from_hex("0x348a8c1a"),
625    from_hex("0x77a8cb46"),
626    ],
627    vec![from_hex("0x776673b7"),
628    from_hex("0x3764f92a"),
629    from_hex("0x4b49f079"),
630    from_hex("0x068c7915"),
631    from_hex("0x6ae894f1"),
632    from_hex("0x3ca29798"),
633    from_hex("0x27f0ccd0"),
634    from_hex("0x51bb1b3b"),
635    from_hex("0x1f45baaa"),
636    from_hex("0x22a18c6a"),
637    from_hex("0x5172d793"),
638    from_hex("0x46560975"),
639    from_hex("0x12ac2c28"),
640    from_hex("0x4ec30409"),
641    from_hex("0x0f41009b"),
642    from_hex("0x71ea9382"),
643    ],
644    ];
645
646    pub static ref MDS24: Vec<Vec<Scalar>> = vec![
647    vec![from_hex("0x19191a7d"),
648    from_hex("0x6cbe083c"),
649    from_hex("0x0b589971"),
650    from_hex("0x3be4046a"),
651    from_hex("0x2c837497"),
652    from_hex("0x61c4fa1e"),
653    from_hex("0x3d45f6db"),
654    from_hex("0x679624bc"),
655    from_hex("0x5f59f3da"),
656    from_hex("0x62cda2fe"),
657    from_hex("0x567b01b2"),
658    from_hex("0x389daccb"),
659    from_hex("0x5522ba84"),
660    from_hex("0x71e3475e"),
661    from_hex("0x5f147d86"),
662    from_hex("0x1d7e0433"),
663    from_hex("0x4450fc40"),
664    from_hex("0x6a1d0eee"),
665    from_hex("0x258885f3"),
666    from_hex("0x0ec7eb27"),
667    from_hex("0x584ae718"),
668    from_hex("0x3e4a6f51"),
669    from_hex("0x0671c21b"),
670    from_hex("0x418f03e4"),
671    ],
672    vec![from_hex("0x61a34efe"),
673    from_hex("0x593f2d08"),
674    from_hex("0x5a5599f9"),
675    from_hex("0x246030d1"),
676    from_hex("0x1210627a"),
677    from_hex("0x2e5a37f0"),
678    from_hex("0x23c9e547"),
679    from_hex("0x02071da9"),
680    from_hex("0x49852008"),
681    from_hex("0x6e9fae9f"),
682    from_hex("0x26d98222"),
683    from_hex("0x13538a35"),
684    from_hex("0x61216f13"),
685    from_hex("0x3552bef4"),
686    from_hex("0x0bbe8d33"),
687    from_hex("0x0bf02cff"),
688    from_hex("0x0991e1c3"),
689    from_hex("0x73dccd52"),
690    from_hex("0x4f5a8c64"),
691    from_hex("0x2a9f0e56"),
692    from_hex("0x60786ad6"),
693    from_hex("0x5ce8c0fe"),
694    from_hex("0x3a9d048a"),
695    from_hex("0x3e1e5cd2"),
696    ],
697    vec![from_hex("0x1866d4b4"),
698    from_hex("0x2e2f9a97"),
699    from_hex("0x127340e3"),
700    from_hex("0x6faf4fa8"),
701    from_hex("0x75575b7f"),
702    from_hex("0x447bb0f8"),
703    from_hex("0x069efa67"),
704    from_hex("0x610a18ac"),
705    from_hex("0x0edf2bd3"),
706    from_hex("0x559135f8"),
707    from_hex("0x5b912991"),
708    from_hex("0x43f2c76f"),
709    from_hex("0x73cd6b24"),
710    from_hex("0x13c3df30"),
711    from_hex("0x10a57d3d"),
712    from_hex("0x01603b41"),
713    from_hex("0x6e04d184"),
714    from_hex("0x40cdb676"),
715    from_hex("0x0134bac6"),
716    from_hex("0x0b88cf23"),
717    from_hex("0x31e557c7"),
718    from_hex("0x5a7cba48"),
719    from_hex("0x58fbabe3"),
720    from_hex("0x1b03e09e"),
721    ],
722    vec![from_hex("0x4dc75c69"),
723    from_hex("0x63f7f41b"),
724    from_hex("0x27c89e9e"),
725    from_hex("0x09c1b7ad"),
726    from_hex("0x004a124f"),
727    from_hex("0x691a8125"),
728    from_hex("0x6924edbd"),
729    from_hex("0x29cdb1aa"),
730    from_hex("0x56bf4b5c"),
731    from_hex("0x2703c2c7"),
732    from_hex("0x19107ae4"),
733    from_hex("0x30c37517"),
734    from_hex("0x253c03bd"),
735    from_hex("0x623725c0"),
736    from_hex("0x37054961"),
737    from_hex("0x48ae028b"),
738    from_hex("0x52d40d06"),
739    from_hex("0x3e7d0eb6"),
740    from_hex("0x1d40d7dd"),
741    from_hex("0x29f924ee"),
742    from_hex("0x37083357"),
743    from_hex("0x59c995bc"),
744    from_hex("0x501e3fe0"),
745    from_hex("0x19024c7d"),
746    ],
747    vec![from_hex("0x04377f31"),
748    from_hex("0x0a4a0017"),
749    from_hex("0x1f17ba47"),
750    from_hex("0x54276fdf"),
751    from_hex("0x1ad767cd"),
752    from_hex("0x4c397b7d"),
753    from_hex("0x45dad135"),
754    from_hex("0x1166cd59"),
755    from_hex("0x10032dd4"),
756    from_hex("0x26250b6c"),
757    from_hex("0x52802c2e"),
758    from_hex("0x53f6862f"),
759    from_hex("0x73fe56cf"),
760    from_hex("0x1f33e178"),
761    from_hex("0x02c41117"),
762    from_hex("0x2ccc0227"),
763    from_hex("0x44f9db11"),
764    from_hex("0x439fa653"),
765    from_hex("0x08c1efb8"),
766    from_hex("0x0dee8126"),
767    from_hex("0x157974cf"),
768    from_hex("0x3ed232d6"),
769    from_hex("0x2f2ad7ef"),
770    from_hex("0x2b3a4348"),
771    ],
772    vec![from_hex("0x24802d4b"),
773    from_hex("0x0e3bf555"),
774    from_hex("0x094764ce"),
775    from_hex("0x1e5558cd"),
776    from_hex("0x300bd275"),
777    from_hex("0x41c2f5b5"),
778    from_hex("0x5fd9db22"),
779    from_hex("0x5681e3e6"),
780    from_hex("0x5e17625b"),
781    from_hex("0x2990a7d2"),
782    from_hex("0x146901e4"),
783    from_hex("0x09b26110"),
784    from_hex("0x451759ad"),
785    from_hex("0x4eb06038"),
786    from_hex("0x61c9ed3c"),
787    from_hex("0x074e4cb7"),
788    from_hex("0x51b17024"),
789    from_hex("0x507e4bb3"),
790    from_hex("0x487cdc37"),
791    from_hex("0x629c4f2c"),
792    from_hex("0x28f8531b"),
793    from_hex("0x271f4983"),
794    from_hex("0x038a6d28"),
795    from_hex("0x2c0aacd8"),
796    ],
797    vec![from_hex("0x15545583"),
798    from_hex("0x101a363d"),
799    from_hex("0x15126e8a"),
800    from_hex("0x4e1ed8a5"),
801    from_hex("0x53d4f4d1"),
802    from_hex("0x3d07b7b3"),
803    from_hex("0x073ea0d9"),
804    from_hex("0x60998306"),
805    from_hex("0x00ffb607"),
806    from_hex("0x3e71b599"),
807    from_hex("0x730ea91f"),
808    from_hex("0x5fe87f4b"),
809    from_hex("0x49510355"),
810    from_hex("0x2ce9fd2a"),
811    from_hex("0x0b9451b8"),
812    from_hex("0x319c006d"),
813    from_hex("0x669ab96c"),
814    from_hex("0x71ee9e09"),
815    from_hex("0x5dc07b5e"),
816    from_hex("0x4611ee0d"),
817    from_hex("0x5022239a"),
818    from_hex("0x5a3ca2a3"),
819    from_hex("0x3f6830ca"),
820    from_hex("0x4928eae1"),
821    ],
822    vec![from_hex("0x284e8831"),
823    from_hex("0x1cdef1a6"),
824    from_hex("0x3797153a"),
825    from_hex("0x42f4735d"),
826    from_hex("0x38cce46e"),
827    from_hex("0x1ef113c2"),
828    from_hex("0x5af0700d"),
829    from_hex("0x69ef808a"),
830    from_hex("0x3b9a08a3"),
831    from_hex("0x6aae8b15"),
832    from_hex("0x1bca8baf"),
833    from_hex("0x43fe3d1a"),
834    from_hex("0x3f08abbc"),
835    from_hex("0x13f6e4fa"),
836    from_hex("0x72948221"),
837    from_hex("0x53bd5821"),
838    from_hex("0x76f6675e"),
839    from_hex("0x3b26093c"),
840    from_hex("0x6e4ead9f"),
841    from_hex("0x11cd8332"),
842    from_hex("0x7035588c"),
843    from_hex("0x2575bb3d"),
844    from_hex("0x51f93a72"),
845    from_hex("0x22dad1b9"),
846    ],
847    vec![from_hex("0x1120f193"),
848    from_hex("0x06ff8b82"),
849    from_hex("0x54b835cf"),
850    from_hex("0x3dc53b9e"),
851    from_hex("0x4d181e81"),
852    from_hex("0x7218c243"),
853    from_hex("0x11231c2b"),
854    from_hex("0x062fdc55"),
855    from_hex("0x2e2ae16d"),
856    from_hex("0x16d13882"),
857    from_hex("0x46f856e3"),
858    from_hex("0x3827488e"),
859    from_hex("0x7737cf0a"),
860    from_hex("0x620a9582"),
861    from_hex("0x38a1cae9"),
862    from_hex("0x150b8797"),
863    from_hex("0x506bd8aa"),
864    from_hex("0x47d6929c"),
865    from_hex("0x3f9205fd"),
866    from_hex("0x164ecbbf"),
867    from_hex("0x23d5093c"),
868    from_hex("0x0e9fde93"),
869    from_hex("0x562a2e48"),
870    from_hex("0x713a8433"),
871    ],
872    vec![from_hex("0x5bab57ce"),
873    from_hex("0x005075f9"),
874    from_hex("0x3c9d0507"),
875    from_hex("0x2d25f9cd"),
876    from_hex("0x4cdf7499"),
877    from_hex("0x694cac91"),
878    from_hex("0x65c21198"),
879    from_hex("0x329c7d0b"),
880    from_hex("0x021d84c3"),
881    from_hex("0x6a61dfb1"),
882    from_hex("0x4ab97480"),
883    from_hex("0x19f2d1bd"),
884    from_hex("0x35381b5b"),
885    from_hex("0x0da575ff"),
886    from_hex("0x08afd461"),
887    from_hex("0x0fade176"),
888    from_hex("0x5b815cc2"),
889    from_hex("0x644290b2"),
890    from_hex("0x4ef463e7"),
891    from_hex("0x6ea5993e"),
892    from_hex("0x61b7b10b"),
893    from_hex("0x7081130d"),
894    from_hex("0x3d683910"),
895    from_hex("0x6860542b"),
896    ],
897    vec![from_hex("0x1d7214bd"),
898    from_hex("0x367bf2b0"),
899    from_hex("0x48b48241"),
900    from_hex("0x1017b7be"),
901    from_hex("0x059453ab"),
902    from_hex("0x277337ec"),
903    from_hex("0x56277c87"),
904    from_hex("0x677bb976"),
905    from_hex("0x24190c2f"),
906    from_hex("0x2c717e0b"),
907    from_hex("0x59e2a73d"),
908    from_hex("0x4bf46e75"),
909    from_hex("0x270ebff5"),
910    from_hex("0x2e9a07a6"),
911    from_hex("0x47b4f2cc"),
912    from_hex("0x54d12ed3"),
913    from_hex("0x2bb16505"),
914    from_hex("0x745c060a"),
915    from_hex("0x3e0a397e"),
916    from_hex("0x2c5d842a"),
917    from_hex("0x03034fd5"),
918    from_hex("0x38cef2b1"),
919    from_hex("0x31927212"),
920    from_hex("0x423c33ef"),
921    ],
922    vec![from_hex("0x4e7dfc7a"),
923    from_hex("0x037378f9"),
924    from_hex("0x1881ed25"),
925    from_hex("0x6af37772"),
926    from_hex("0x18ce1693"),
927    from_hex("0x4626f02f"),
928    from_hex("0x70732dcd"),
929    from_hex("0x0942f572"),
930    from_hex("0x65df735e"),
931    from_hex("0x5ad72db4"),
932    from_hex("0x699fe9cc"),
933    from_hex("0x35ab9cd7"),
934    from_hex("0x758a62eb"),
935    from_hex("0x0ae5ff35"),
936    from_hex("0x342e0c42"),
937    from_hex("0x1d3f9a7e"),
938    from_hex("0x2feedf99"),
939    from_hex("0x55e3734c"),
940    from_hex("0x56d75a3b"),
941    from_hex("0x040dfb91"),
942    from_hex("0x0361ad6c"),
943    from_hex("0x5a6aeb5d"),
944    from_hex("0x0de01972"),
945    from_hex("0x33328e03"),
946    ],
947    vec![from_hex("0x13501f54"),
948    from_hex("0x204885fb"),
949    from_hex("0x43c85d92"),
950    from_hex("0x4a97c740"),
951    from_hex("0x424beb1b"),
952    from_hex("0x2012116a"),
953    from_hex("0x49694aa2"),
954    from_hex("0x247703cc"),
955    from_hex("0x4ba4bc45"),
956    from_hex("0x132cdb95"),
957    from_hex("0x3cafc24a"),
958    from_hex("0x241870e3"),
959    from_hex("0x1e582d31"),
960    from_hex("0x27ba0403"),
961    from_hex("0x1aa8fff0"),
962    from_hex("0x6eedc92c"),
963    from_hex("0x35d4decf"),
964    from_hex("0x2e722b3f"),
965    from_hex("0x36358015"),
966    from_hex("0x062d8da5"),
967    from_hex("0x4a0ff259"),
968    from_hex("0x41c55848"),
969    from_hex("0x67e4ea95"),
970    from_hex("0x40f69a47"),
971    ],
972    vec![from_hex("0x0bba6386"),
973    from_hex("0x6f7efbff"),
974    from_hex("0x3d8fed85"),
975    from_hex("0x264b3587"),
976    from_hex("0x2c1d569b"),
977    from_hex("0x04b218e8"),
978    from_hex("0x3a939d97"),
979    from_hex("0x6b3a6c39"),
980    from_hex("0x29c25fb7"),
981    from_hex("0x6ffd0c02"),
982    from_hex("0x5e38ab0e"),
983    from_hex("0x0e3e636a"),
984    from_hex("0x324551bd"),
985    from_hex("0x19ac1d52"),
986    from_hex("0x6389c4b1"),
987    from_hex("0x15c77366"),
988    from_hex("0x3b746f85"),
989    from_hex("0x5e1eea00"),
990    from_hex("0x732b79a2"),
991    from_hex("0x73e81e4c"),
992    from_hex("0x2172727c"),
993    from_hex("0x58e8098c"),
994    from_hex("0x46c6e6c2"),
995    from_hex("0x07e9d643"),
996    ],
997    vec![from_hex("0x5eca9a37"),
998    from_hex("0x304d75f1"),
999    from_hex("0x2294c0bd"),
1000    from_hex("0x3d7ab743"),
1001    from_hex("0x2636b5d5"),
1002    from_hex("0x0f890758"),
1003    from_hex("0x0afa5a3d"),
1004    from_hex("0x41e4665b"),
1005    from_hex("0x0b4c63fc"),
1006    from_hex("0x1112be28"),
1007    from_hex("0x0e9162b1"),
1008    from_hex("0x6a00fcaa"),
1009    from_hex("0x6cac103b"),
1010    from_hex("0x153d5d75"),
1011    from_hex("0x05ac5be5"),
1012    from_hex("0x06519cce"),
1013    from_hex("0x66941f1c"),
1014    from_hex("0x1abeed57"),
1015    from_hex("0x05f3b38b"),
1016    from_hex("0x2dbe8560"),
1017    from_hex("0x28c7ffb3"),
1018    from_hex("0x06eed76a"),
1019    from_hex("0x5404eed2"),
1020    from_hex("0x28464e68"),
1021    ],
1022    vec![from_hex("0x6937aa7d"),
1023    from_hex("0x20cd555a"),
1024    from_hex("0x41d20da1"),
1025    from_hex("0x163d4a11"),
1026    from_hex("0x4da2443d"),
1027    from_hex("0x08c6343c"),
1028    from_hex("0x5ec6eb45"),
1029    from_hex("0x5e1b7c27"),
1030    from_hex("0x29c7fd8e"),
1031    from_hex("0x268f1b7f"),
1032    from_hex("0x014ab25d"),
1033    from_hex("0x1892edb1"),
1034    from_hex("0x413222ca"),
1035    from_hex("0x548a31a0"),
1036    from_hex("0x765d9087"),
1037    from_hex("0x64de0f9a"),
1038    from_hex("0x3d0e6471"),
1039    from_hex("0x7513a7ae"),
1040    from_hex("0x3112d543"),
1041    from_hex("0x2375ab22"),
1042    from_hex("0x270250d0"),
1043    from_hex("0x025b8b09"),
1044    from_hex("0x574ca016"),
1045    from_hex("0x02e4bb01"),
1046    ],
1047    vec![from_hex("0x41786ccf"),
1048    from_hex("0x41f0df6c"),
1049    from_hex("0x43107975"),
1050    from_hex("0x11ca0a05"),
1051    from_hex("0x4b3d6afe"),
1052    from_hex("0x5ad09060"),
1053    from_hex("0x3da8de0a"),
1054    from_hex("0x1573ad5b"),
1055    from_hex("0x32384d13"),
1056    from_hex("0x2e2cc2a4"),
1057    from_hex("0x257be6c0"),
1058    from_hex("0x246dd39b"),
1059    from_hex("0x1d43bce2"),
1060    from_hex("0x399670ed"),
1061    from_hex("0x1c703658"),
1062    from_hex("0x042b4e65"),
1063    from_hex("0x2fcd523a"),
1064    from_hex("0x58d576a5"),
1065    from_hex("0x3f70e99e"),
1066    from_hex("0x2c08c7e5"),
1067    from_hex("0x048463f2"),
1068    from_hex("0x30c41673"),
1069    from_hex("0x327e05f6"),
1070    from_hex("0x13476bbf"),
1071    ],
1072    vec![from_hex("0x14971335"),
1073    from_hex("0x2a9db91a"),
1074    from_hex("0x48ceae5d"),
1075    from_hex("0x0eab20e2"),
1076    from_hex("0x627c3e30"),
1077    from_hex("0x55697057"),
1078    from_hex("0x0ab66b04"),
1079    from_hex("0x51da9659"),
1080    from_hex("0x4e7e6fba"),
1081    from_hex("0x5c911a08"),
1082    from_hex("0x093289b9"),
1083    from_hex("0x5a95b9d6"),
1084    from_hex("0x47a94672"),
1085    from_hex("0x2b251d75"),
1086    from_hex("0x334521f0"),
1087    from_hex("0x32c685fb"),
1088    from_hex("0x3431a4c5"),
1089    from_hex("0x3a5c7f94"),
1090    from_hex("0x319109af"),
1091    from_hex("0x4c921429"),
1092    from_hex("0x5dd16726"),
1093    from_hex("0x60ea6e89"),
1094    from_hex("0x47dc57e2"),
1095    from_hex("0x2705784a"),
1096    ],
1097    vec![from_hex("0x2eadb949"),
1098    from_hex("0x6152ba98"),
1099    from_hex("0x17e543ad"),
1100    from_hex("0x1e65633a"),
1101    from_hex("0x162f1877"),
1102    from_hex("0x4b07c2b4"),
1103    from_hex("0x5fc3caef"),
1104    from_hex("0x45357bef"),
1105    from_hex("0x65694da5"),
1106    from_hex("0x4f35206b"),
1107    from_hex("0x099d6860"),
1108    from_hex("0x02ce0797"),
1109    from_hex("0x7032c8f9"),
1110    from_hex("0x21eb00e8"),
1111    from_hex("0x5cb8810d"),
1112    from_hex("0x1ae59be7"),
1113    from_hex("0x48df9450"),
1114    from_hex("0x620314f3"),
1115    from_hex("0x37539abb"),
1116    from_hex("0x477b9153"),
1117    from_hex("0x72d3c7be"),
1118    from_hex("0x6ca27c72"),
1119    from_hex("0x767a7651"),
1120    from_hex("0x191a449a"),
1121    ],
1122    vec![from_hex("0x64e2a38c"),
1123    from_hex("0x280cc6af"),
1124    from_hex("0x28bf710a"),
1125    from_hex("0x76bfe2c0"),
1126    from_hex("0x40ed3108"),
1127    from_hex("0x3beabed2"),
1128    from_hex("0x18cfa693"),
1129    from_hex("0x3672bd08"),
1130    from_hex("0x3d0b66fb"),
1131    from_hex("0x59af6345"),
1132    from_hex("0x76d6cf74"),
1133    from_hex("0x0b4f4043"),
1134    from_hex("0x082538a9"),
1135    from_hex("0x5680b41f"),
1136    from_hex("0x73d88c5a"),
1137    from_hex("0x1a038c65"),
1138    from_hex("0x25b16b46"),
1139    from_hex("0x40266a1f"),
1140    from_hex("0x401fa170"),
1141    from_hex("0x2c44ad35"),
1142    from_hex("0x3c6e516d"),
1143    from_hex("0x2d5ca9b3"),
1144    from_hex("0x485ebe47"),
1145    from_hex("0x3cbad540"),
1146    ],
1147    vec![from_hex("0x1a317281"),
1148    from_hex("0x03e74eb2"),
1149    from_hex("0x1569d934"),
1150    from_hex("0x0494659c"),
1151    from_hex("0x034f41c3"),
1152    from_hex("0x00b2f8a2"),
1153    from_hex("0x5d7e821b"),
1154    from_hex("0x2bb1d834"),
1155    from_hex("0x06b36470"),
1156    from_hex("0x2a42f149"),
1157    from_hex("0x73e9fe13"),
1158    from_hex("0x0d401689"),
1159    from_hex("0x2f0b0fdc"),
1160    from_hex("0x6cb6443c"),
1161    from_hex("0x670e3987"),
1162    from_hex("0x410c9579"),
1163    from_hex("0x4b8fa592"),
1164    from_hex("0x67d14ddc"),
1165    from_hex("0x58c63aae"),
1166    from_hex("0x33f6ac7b"),
1167    from_hex("0x62496614"),
1168    from_hex("0x5913b1ec"),
1169    from_hex("0x338ed582"),
1170    from_hex("0x4d4f4f02"),
1171    ],
1172    vec![from_hex("0x19dfa11b"),
1173    from_hex("0x005524e2"),
1174    from_hex("0x5f7574d0"),
1175    from_hex("0x5c5b3588"),
1176    from_hex("0x0ee563ab"),
1177    from_hex("0x05930821"),
1178    from_hex("0x4c4c668e"),
1179    from_hex("0x5a02d1c5"),
1180    from_hex("0x33e4965c"),
1181    from_hex("0x5b79d5c0"),
1182    from_hex("0x730ca318"),
1183    from_hex("0x2ce70f7b"),
1184    from_hex("0x65611461"),
1185    from_hex("0x6af41f50"),
1186    from_hex("0x3a851c9d"),
1187    from_hex("0x38225964"),
1188    from_hex("0x45f49cd7"),
1189    from_hex("0x0516405e"),
1190    from_hex("0x63d9dbad"),
1191    from_hex("0x4fbce612"),
1192    from_hex("0x1f30cbb0"),
1193    from_hex("0x47320ea7"),
1194    from_hex("0x5c5a1db7"),
1195    from_hex("0x344524d6"),
1196    ],
1197    vec![from_hex("0x305f18aa"),
1198    from_hex("0x4fefce1d"),
1199    from_hex("0x2dd60db5"),
1200    from_hex("0x37e7edb0"),
1201    from_hex("0x33590038"),
1202    from_hex("0x5ba76f30"),
1203    from_hex("0x370a8395"),
1204    from_hex("0x29114d66"),
1205    from_hex("0x0ca70423"),
1206    from_hex("0x64591365"),
1207    from_hex("0x384f8781"),
1208    from_hex("0x300190ae"),
1209    from_hex("0x32abb521"),
1210    from_hex("0x399cb85f"),
1211    from_hex("0x5bb899ef"),
1212    from_hex("0x68e000f3"),
1213    from_hex("0x1ab3e268"),
1214    from_hex("0x5cf5235f"),
1215    from_hex("0x2b567559"),
1216    from_hex("0x02e26480"),
1217    from_hex("0x5df459ca"),
1218    from_hex("0x2f379c3e"),
1219    from_hex("0x5db69b04"),
1220    from_hex("0x565b8f83"),
1221    ],
1222    vec![from_hex("0x137f7ff7"),
1223    from_hex("0x2dd419c1"),
1224    from_hex("0x4c4af6e7"),
1225    from_hex("0x49e58f6c"),
1226    from_hex("0x16263dba"),
1227    from_hex("0x694a7845"),
1228    from_hex("0x01840406"),
1229    from_hex("0x1f89c640"),
1230    from_hex("0x1cd737aa"),
1231    from_hex("0x58881e16"),
1232    from_hex("0x462928d6"),
1233    from_hex("0x2490dea3"),
1234    from_hex("0x0bf92538"),
1235    from_hex("0x37607a3d"),
1236    from_hex("0x60321d26"),
1237    from_hex("0x34118d9e"),
1238    from_hex("0x1b9743bb"),
1239    from_hex("0x018b4aad"),
1240    from_hex("0x362d15da"),
1241    from_hex("0x4cbb87c1"),
1242    from_hex("0x384ae3c2"),
1243    from_hex("0x48ce88f7"),
1244    from_hex("0x27a25e4f"),
1245    from_hex("0x47ef48c5"),
1246    ],
1247    ];
1248    
1249    pub static ref RC24: Vec<Vec<Scalar>> = vec![
1250    vec![from_hex("0x75c89df8"),
1251    from_hex("0x0af90431"),
1252    from_hex("0x39e877bf"),
1253    from_hex("0x18a5a8cd"),
1254    from_hex("0x588e9a95"),
1255    from_hex("0x16760b26"),
1256    from_hex("0x026ff4a4"),
1257    from_hex("0x2326df32"),
1258    from_hex("0x5a0b7c6f"),
1259    from_hex("0x37d3973d"),
1260    from_hex("0x1e5bc883"),
1261    from_hex("0x59d3664a"),
1262    from_hex("0x677f8a14"),
1263    from_hex("0x64a3389e"),
1264    from_hex("0x0d81d503"),
1265    from_hex("0x77f51a78"),
1266    from_hex("0x1fc66dca"),
1267    from_hex("0x13a094e3"),
1268    from_hex("0x5d410ff1"),
1269    from_hex("0x2383e213"),
1270    from_hex("0x4f1144c3"),
1271    from_hex("0x1ee540c8"),
1272    from_hex("0x097edb05"),
1273    from_hex("0x2c17a521"),
1274    ],
1275    vec![from_hex("0x66927671"),
1276    from_hex("0x76626203"),
1277    from_hex("0x1de486e8"),
1278    from_hex("0x440c19f5"),
1279    from_hex("0x20bbb67a"),
1280    from_hex("0x2d4f79b0"),
1281    from_hex("0x55b64ceb"),
1282    from_hex("0x6712fbb4"),
1283    from_hex("0x24a3ec8a"),
1284    from_hex("0x3b6062d5"),
1285    from_hex("0x265abe23"),
1286    from_hex("0x3b6fb81b"),
1287    from_hex("0x43ddb4af"),
1288    from_hex("0x49a5c4a8"),
1289    from_hex("0x64581fc3"),
1290    from_hex("0x77b795f1"),
1291    from_hex("0x1e918db8"),
1292    from_hex("0x550e2c6a"),
1293    from_hex("0x6b3571c8"),
1294    from_hex("0x3609bf61"),
1295    from_hex("0x46ae6e8f"),
1296    from_hex("0x41fe0f80"),
1297    from_hex("0x20420c1a"),
1298    from_hex("0x0e95ad8a"),
1299    ],
1300    vec![from_hex("0x1b48deb1"),
1301    from_hex("0x122ac59f"),
1302    from_hex("0x0252c4a7"),
1303    from_hex("0x2696a2c4"),
1304    from_hex("0x01b232cf"),
1305    from_hex("0x5c26d56b"),
1306    from_hex("0x405535be"),
1307    from_hex("0x20cc2fe6"),
1308    from_hex("0x1c16804d"),
1309    from_hex("0x5fa5a4b8"),
1310    from_hex("0x579729ad"),
1311    from_hex("0x63e11b88"),
1312    from_hex("0x5601d544"),
1313    from_hex("0x3eeeaa1a"),
1314    from_hex("0x4dfd202b"),
1315    from_hex("0x4fa5da37"),
1316    from_hex("0x2118e7fc"),
1317    from_hex("0x3eb830dd"),
1318    from_hex("0x169ee87b"),
1319    from_hex("0x2bd97286"),
1320    from_hex("0x22865c3e"),
1321    from_hex("0x6aaa6429"),
1322    from_hex("0x29e0f68d"),
1323    from_hex("0x6aca023a"),
1324    ],
1325    vec![from_hex("0x4d02be5e"),
1326    from_hex("0x4f170e62"),
1327    from_hex("0x5cc04ba7"),
1328    from_hex("0x20655f92"),
1329    from_hex("0x6a216eea"),
1330    from_hex("0x7685bdbd"),
1331    from_hex("0x332f989c"),
1332    from_hex("0x57a66733"),
1333    from_hex("0x0719b431"),
1334    from_hex("0x2f19a5c2"),
1335    from_hex("0x5191f27f"),
1336    from_hex("0x0e38bd91"),
1337    from_hex("0x1c5abcda"),
1338    from_hex("0x1da9f1bf"),
1339    from_hex("0x42b01881"),
1340    from_hex("0x5bf52e0f"),
1341    from_hex("0x4dc17cb8"),
1342    from_hex("0x1d4688d6"),
1343    from_hex("0x18e0160d"),
1344    from_hex("0x54841116"),
1345    from_hex("0x6b381bc9"),
1346    from_hex("0x5c4a838c"),
1347    from_hex("0x0e3dc983"),
1348    from_hex("0x71c18d85"),
1349    ],
1350    vec![from_hex("0x71902c5e"),
1351    from_hex("0x1654566c"),
1352    from_hex("0x38b6f3a0"),
1353    from_hex("0x35a19789"),
1354    from_hex("0x2adf05e2"),
1355    from_hex("0x07d01f0d"),
1356    from_hex("0x02677f73"),
1357    from_hex("0x385f532a"),
1358    from_hex("0x3e2fb2ac"),
1359    from_hex("0x4e88c53b"),
1360    from_hex("0x1e370587"),
1361    from_hex("0x4e64e63c"),
1362    from_hex("0x5942f756"),
1363    from_hex("0x16944480"),
1364    from_hex("0x711cc845"),
1365    from_hex("0x76a93011"),
1366    from_hex("0x6c978579"),
1367    from_hex("0x68f3467f"),
1368    from_hex("0x47df3684"),
1369    from_hex("0x09001f22"),
1370    from_hex("0x3c1d9746"),
1371    from_hex("0x70796779"),
1372    from_hex("0x3b0bcbc9"),
1373    from_hex("0x64665dab"),
1374    ],
1375    vec![from_hex("0x55eb1733"),
1376    from_hex("0x3a240c5c"),
1377    from_hex("0x5a4445ac"),
1378    from_hex("0x3623eb7e"),
1379    from_hex("0x6c1a9a42"),
1380    from_hex("0x0a024e58"),
1381    from_hex("0x44097942"),
1382    from_hex("0x240878ef"),
1383    from_hex("0x3f507e57"),
1384    from_hex("0x68b9393f"),
1385    from_hex("0x43163825"),
1386    from_hex("0x6d71852f"),
1387    from_hex("0x5937ffff"),
1388    from_hex("0x564b7092"),
1389    from_hex("0x60d0dcb4"),
1390    from_hex("0x414e0bf2"),
1391    from_hex("0x754a4cd6"),
1392    from_hex("0x4edd0db2"),
1393    from_hex("0x341f2761"),
1394    from_hex("0x6da77d03"),
1395    from_hex("0x6f157bce"),
1396    from_hex("0x436d5397"),
1397    from_hex("0x5501d7ab"),
1398    from_hex("0x310b522f"),
1399    ],
1400    vec![from_hex("0x0ab56164"),
1401    from_hex("0x150e3635"),
1402    from_hex("0x0a7e3bc1"),
1403    from_hex("0x05fac2a2"),
1404    from_hex("0x68f51ab3"),
1405    from_hex("0x1f03a3cf"),
1406    from_hex("0x398e133a"),
1407    from_hex("0x0f5d1399"),
1408    from_hex("0x5f29a526"),
1409    from_hex("0x6cea6946"),
1410    from_hex("0x1dca5af8"),
1411    from_hex("0x5c06e542"),
1412    from_hex("0x1665a8f2"),
1413    from_hex("0x4b950256"),
1414    from_hex("0x6ad5b666"),
1415    from_hex("0x68e13aff"),
1416    from_hex("0x3c118567"),
1417    from_hex("0x70ef24e6"),
1418    from_hex("0x08fe6bb2"),
1419    from_hex("0x77610aee"),
1420    from_hex("0x140b4090"),
1421    from_hex("0x12a59e03"),
1422    from_hex("0x43376c38"),
1423    from_hex("0x5cc0ffc8"),
1424    ],
1425    vec![from_hex("0x1b05d461"),
1426    from_hex("0x50cd7eb1"),
1427    from_hex("0x320b07e2"),
1428    from_hex("0x24cfbcfc"),
1429    from_hex("0x12bb2eec"),
1430    from_hex("0x33169cde"),
1431    from_hex("0x5f7ea3ec"),
1432    from_hex("0x3f690e4c"),
1433    from_hex("0x2f47b8cd"),
1434    from_hex("0x32d5e526"),
1435    from_hex("0x3493e551"),
1436    from_hex("0x07eac5d0"),
1437    from_hex("0x111bfa27"),
1438    from_hex("0x2f667258"),
1439    from_hex("0x4c1c06d2"),
1440    from_hex("0x6cd4b86c"),
1441    from_hex("0x30702542"),
1442    from_hex("0x53d64e17"),
1443    from_hex("0x7143e320"),
1444    from_hex("0x47e038ee"),
1445    from_hex("0x6871b994"),
1446    from_hex("0x4113c042"),
1447    from_hex("0x240af147"),
1448    from_hex("0x5cde3214"),
1449    ],
1450    vec![from_hex("0x600fd4c2"),
1451    from_hex("0x17a79c40"),
1452    from_hex("0x43600bcc"),
1453    from_hex("0x158238e7"),
1454    from_hex("0x23082895"),
1455    from_hex("0x53b32037"),
1456    from_hex("0x583dd7e9"),
1457    from_hex("0x1c2966ec"),
1458    from_hex("0x4f1c4aa2"),
1459    from_hex("0x5e004513"),
1460    from_hex("0x3b80fd92"),
1461    from_hex("0x4cfed7fe"),
1462    from_hex("0x62679264"),
1463    from_hex("0x59abcafe"),
1464    from_hex("0x4ddde884"),
1465    from_hex("0x45535ec3"),
1466    from_hex("0x6a446628"),
1467    from_hex("0x238b231e"),
1468    from_hex("0x307d9f5a"),
1469    from_hex("0x1128d0a2"),
1470    from_hex("0x6ff378d4"),
1471    from_hex("0x2cd023e3"),
1472    from_hex("0x2f1d7c11"),
1473    from_hex("0x4c10f8f9"),
1474    ],
1475    vec![from_hex("0x6bd45d5c"),
1476    from_hex("0x74c89ea9"),
1477    from_hex("0x33cb1c8b"),
1478    from_hex("0x2c94a9ce"),
1479    from_hex("0x3816b43d"),
1480    from_hex("0x0e65a71e"),
1481    from_hex("0x5e38c082"),
1482    from_hex("0x6427f754"),
1483    from_hex("0x3bcce6ef"),
1484    from_hex("0x6ea9c00e"),
1485    from_hex("0x510a8434"),
1486    from_hex("0x30063591"),
1487    from_hex("0x06620981"),
1488    from_hex("0x4beaf035"),
1489    from_hex("0x4be4a698"),
1490    from_hex("0x5ca330ec"),
1491    from_hex("0x33d54bf7"),
1492    from_hex("0x316d226b"),
1493    from_hex("0x3fe68690"),
1494    from_hex("0x54e0d88e"),
1495    from_hex("0x197cc4e9"),
1496    from_hex("0x23c98f88"),
1497    from_hex("0x299beb0c"),
1498    from_hex("0x1c598f09"),
1499    ],
1500    vec![from_hex("0x772a2f2d"),
1501    from_hex("0x28f39a58"),
1502    from_hex("0x15c6d916"),
1503    from_hex("0x5482d960"),
1504    from_hex("0x1bcfe651"),
1505    from_hex("0x17da1dbc"),
1506    from_hex("0x4ae31a82"),
1507    from_hex("0x3d1fb87a"),
1508    from_hex("0x10e59612"),
1509    from_hex("0x59fff611"),
1510    from_hex("0x7151fd1f"),
1511    from_hex("0x04308067"),
1512    from_hex("0x538af856"),
1513    from_hex("0x31ec4b46"),
1514    from_hex("0x5ca7e0e1"),
1515    from_hex("0x014f24bc"),
1516    from_hex("0x34801c56"),
1517    from_hex("0x400f2575"),
1518    from_hex("0x42c0be20"),
1519    from_hex("0x3fef7fd5"),
1520    from_hex("0x40e16c35"),
1521    from_hex("0x39a29264"),
1522    from_hex("0x5139e92e"),
1523    from_hex("0x6243e0e4"),
1524    ],
1525    vec![from_hex("0x356f27cc"),
1526    from_hex("0x022c022e"),
1527    from_hex("0x47511780"),
1528    from_hex("0x28cc6078"),
1529    from_hex("0x358b8d3d"),
1530    from_hex("0x45f840fa"),
1531    from_hex("0x615d96d5"),
1532    from_hex("0x4e68d893"),
1533    from_hex("0x761e8520"),
1534    from_hex("0x3ae0bc8d"),
1535    from_hex("0x4d793ea9"),
1536    from_hex("0x461c98dd"),
1537    from_hex("0x0e6ae09e"),
1538    from_hex("0x2473818a"),
1539    from_hex("0x027d0ea1"),
1540    from_hex("0x1e37b4fc"),
1541    from_hex("0x5a9b918e"),
1542    from_hex("0x1af57d91"),
1543    from_hex("0x16b2e255"),
1544    from_hex("0x3e968bb0"),
1545    from_hex("0x025fff84"),
1546    from_hex("0x4a0ae3b6"),
1547    from_hex("0x196ea9cc"),
1548    from_hex("0x492f54d7"),
1549    ],
1550    vec![from_hex("0x21dd4a08"),
1551    from_hex("0x63d6a965"),
1552    from_hex("0x0d8d0c0c"),
1553    from_hex("0x4f797854"),
1554    from_hex("0x1ddd249b"),
1555    from_hex("0x48ea3e56"),
1556    from_hex("0x2028b394"),
1557    from_hex("0x59ba09f9"),
1558    from_hex("0x73e9f78e"),
1559    from_hex("0x14d3b6cb"),
1560    from_hex("0x095b67e2"),
1561    from_hex("0x5b97fccb"),
1562    from_hex("0x4ae9fd70"),
1563    from_hex("0x1c3d8daf"),
1564    from_hex("0x592bb255"),
1565    from_hex("0x459d8bb0"),
1566    from_hex("0x53284952"),
1567    from_hex("0x62d219ff"),
1568    from_hex("0x085b04e1"),
1569    from_hex("0x292a4f83"),
1570    from_hex("0x33ab42f3"),
1571    from_hex("0x3b4848d7"),
1572    from_hex("0x35b3b4e3"),
1573    from_hex("0x2b104210"),
1574    ],
1575    vec![from_hex("0x36bc80a0"),
1576    from_hex("0x23bc9027"),
1577    from_hex("0x5d3a8ec7"),
1578    from_hex("0x0b24aed6"),
1579    from_hex("0x0ede5278"),
1580    from_hex("0x5e5305a8"),
1581    from_hex("0x39ac900a"),
1582    from_hex("0x05dc1627"),
1583    from_hex("0x4294fabf"),
1584    from_hex("0x6de5d842"),
1585    from_hex("0x2a826d22"),
1586    from_hex("0x1f30553c"),
1587    from_hex("0x340b8c1b"),
1588    from_hex("0x05b2b5d4"),
1589    from_hex("0x752b7fd1"),
1590    from_hex("0x1ee6d240"),
1591    from_hex("0x63125d49"),
1592    from_hex("0x09fe5b3e"),
1593    from_hex("0x05f70546"),
1594    from_hex("0x13eb2cbd"),
1595    from_hex("0x0d833c10"),
1596    from_hex("0x5a629eec"),
1597    from_hex("0x5a7fd158"),
1598    from_hex("0x0eb52380"),
1599    ],
1600    vec![from_hex("0x560ad5c4"),
1601    from_hex("0x29645160"),
1602    from_hex("0x1170c734"),
1603    from_hex("0x1822aac9"),
1604    from_hex("0x217db6d3"),
1605    from_hex("0x2e21c8d3"),
1606    from_hex("0x606c5e6a"),
1607    from_hex("0x75faa8f5"),
1608    from_hex("0x3094fa7e"),
1609    from_hex("0x21b00a43"),
1610    from_hex("0x4bb30480"),
1611    from_hex("0x498991be"),
1612    from_hex("0x28b20b19"),
1613    from_hex("0x5c3d4d5f"),
1614    from_hex("0x0b992d6a"),
1615    from_hex("0x2607ef95"),
1616    from_hex("0x24188fae"),
1617    from_hex("0x3bf8a077"),
1618    from_hex("0x33f06cbf"),
1619    from_hex("0x2cd92b31"),
1620    from_hex("0x057d5b1b"),
1621    from_hex("0x344f5403"),
1622    from_hex("0x74b78582"),
1623    from_hex("0x1f3d6a54"),
1624    ],
1625    vec![from_hex("0x5f1e1ae8"),
1626    from_hex("0x6136a9a2"),
1627    from_hex("0x470c5e78"),
1628    from_hex("0x02ad2fca"),
1629    from_hex("0x4cd3a6bb"),
1630    from_hex("0x05b4f5c1"),
1631    from_hex("0x20436bea"),
1632    from_hex("0x1bed9ec7"),
1633    from_hex("0x1f29cc65"),
1634    from_hex("0x1417eaa3"),
1635    from_hex("0x0ba88347"),
1636    from_hex("0x0a65070c"),
1637    from_hex("0x03217e79"),
1638    from_hex("0x3e5f5253"),
1639    from_hex("0x60bb876e"),
1640    from_hex("0x320e4cec"),
1641    from_hex("0x53b2c52e"),
1642    from_hex("0x3e1d6eff"),
1643    from_hex("0x687a3e07"),
1644    from_hex("0x112d32bc"),
1645    from_hex("0x5af9296f"),
1646    from_hex("0x2cded641"),
1647    from_hex("0x6ecc492b"),
1648    from_hex("0x45bd2f2c"),
1649    ],
1650    vec![from_hex("0x5068b70b"),
1651    from_hex("0x2563dc0f"),
1652    from_hex("0x47e5ec52"),
1653    from_hex("0x6e316d9b"),
1654    from_hex("0x770839b4"),
1655    from_hex("0x4fecdeaa"),
1656    from_hex("0x20e2248a"),
1657    from_hex("0x257fa6ed"),
1658    from_hex("0x21abc9d3"),
1659    from_hex("0x4aaae270"),
1660    from_hex("0x17e21621"),
1661    from_hex("0x70d18ab2"),
1662    from_hex("0x4a23443e"),
1663    from_hex("0x169492c3"),
1664    from_hex("0x627575d6"),
1665    from_hex("0x4bcf6471"),
1666    from_hex("0x070d29e0"),
1667    from_hex("0x75fbfe05"),
1668    from_hex("0x08e3b575"),
1669    from_hex("0x582caf96"),
1670    from_hex("0x0ad360ea"),
1671    from_hex("0x53e6e93d"),
1672    from_hex("0x5ce70e60"),
1673    from_hex("0x68b4d9c8"),
1674    ],
1675    vec![from_hex("0x665572ef"),
1676    from_hex("0x02d7409a"),
1677    from_hex("0x645cdaf7"),
1678    from_hex("0x1a6ffc30"),
1679    from_hex("0x1cdb2768"),
1680    from_hex("0x681b647b"),
1681    from_hex("0x2744d691"),
1682    from_hex("0x51749894"),
1683    from_hex("0x1fa88ff1"),
1684    from_hex("0x3b11764e"),
1685    from_hex("0x71fec668"),
1686    from_hex("0x12ad4534"),
1687    from_hex("0x51ce85bf"),
1688    from_hex("0x2fa22845"),
1689    from_hex("0x4279a18a"),
1690    from_hex("0x6436c1c4"),
1691    from_hex("0x00ac710b"),
1692    from_hex("0x64aa70d4"),
1693    from_hex("0x6cb3f64d"),
1694    from_hex("0x73215a9e"),
1695    from_hex("0x1e0d8c6a"),
1696    from_hex("0x43cba3a4"),
1697    from_hex("0x207f2305"),
1698    from_hex("0x3b06e336"),
1699    ],
1700    vec![from_hex("0x3e1b5bb9"),
1701    from_hex("0x02392281"),
1702    from_hex("0x18b48bd7"),
1703    from_hex("0x0ed07feb"),
1704    from_hex("0x50fd2ce1"),
1705    from_hex("0x27016dbd"),
1706    from_hex("0x57328674"),
1707    from_hex("0x474cb312"),
1708    from_hex("0x77168659"),
1709    from_hex("0x6adbaa3a"),
1710    from_hex("0x6910fad6"),
1711    from_hex("0x1443e8c4"),
1712    from_hex("0x263c7e3e"),
1713    from_hex("0x034b3bcb"),
1714    from_hex("0x1bdfbbff"),
1715    from_hex("0x0d60038e"),
1716    from_hex("0x57283b50"),
1717    from_hex("0x06989f09"),
1718    from_hex("0x53e02e93"),
1719    from_hex("0x0f36babc"),
1720    from_hex("0x1d11c437"),
1721    from_hex("0x34c59005"),
1722    from_hex("0x0e84eb31"),
1723    from_hex("0x76503e52"),
1724    ],
1725    vec![from_hex("0x5172219b"),
1726    from_hex("0x187801e0"),
1727    from_hex("0x484aead8"),
1728    from_hex("0x27658b1c"),
1729    from_hex("0x29264a97"),
1730    from_hex("0x3dce14e1"),
1731    from_hex("0x35996177"),
1732    from_hex("0x5d5371b7"),
1733    from_hex("0x6ec08900"),
1734    from_hex("0x5d816715"),
1735    from_hex("0x20cfbffa"),
1736    from_hex("0x613f7c59"),
1737    from_hex("0x0569fcff"),
1738    from_hex("0x0761a9cb"),
1739    from_hex("0x2cfbcf11"),
1740    from_hex("0x085eea02"),
1741    from_hex("0x4860f9f0"),
1742    from_hex("0x4d205005"),
1743    from_hex("0x57f328bd"),
1744    from_hex("0x1a650f78"),
1745    from_hex("0x46ce7839"),
1746    from_hex("0x770a894b"),
1747    from_hex("0x1c0e9cb6"),
1748    from_hex("0x6e0ca41a"),
1749    ],
1750    vec![from_hex("0x0552da59"),
1751    from_hex("0x594dec6b"),
1752    from_hex("0x2aab23ed"),
1753    from_hex("0x60c6eb54"),
1754    from_hex("0x033206e3"),
1755    from_hex("0x0c7a8237"),
1756    from_hex("0x56a98019"),
1757    from_hex("0x5479f680"),
1758    from_hex("0x0c51522a"),
1759    from_hex("0x35d2c421"),
1760    from_hex("0x69a6d90b"),
1761    from_hex("0x5e7946e4"),
1762    from_hex("0x6b48ddca"),
1763    from_hex("0x728e2313"),
1764    from_hex("0x14dad2af"),
1765    from_hex("0x3947f321"),
1766    from_hex("0x67bd011f"),
1767    from_hex("0x60c4f777"),
1768    from_hex("0x472591d6"),
1769    from_hex("0x32731626"),
1770    from_hex("0x70a23d5b"),
1771    from_hex("0x151b6c47"),
1772    from_hex("0x6a67fb25"),
1773    from_hex("0x2fe0c49e"),
1774    ],
1775    vec![from_hex("0x54f4561b"),
1776    from_hex("0x15704ee4"),
1777    from_hex("0x16f90bb9"),
1778    from_hex("0x3be1690c"),
1779    from_hex("0x76c1febb"),
1780    from_hex("0x50a35164"),
1781    from_hex("0x509717e0"),
1782    from_hex("0x0355f8d3"),
1783    from_hex("0x668309fd"),
1784    from_hex("0x54efe9b0"),
1785    from_hex("0x49578bc5"),
1786    from_hex("0x02fa220b"),
1787    from_hex("0x2699c296"),
1788    from_hex("0x5b07ec6a"),
1789    from_hex("0x3df439cb"),
1790    from_hex("0x6fa4b39c"),
1791    from_hex("0x09e690d7"),
1792    from_hex("0x0bbce5c4"),
1793    from_hex("0x6a106fd9"),
1794    from_hex("0x1c13ac7f"),
1795    from_hex("0x1347d8fe"),
1796    from_hex("0x4f5e5b3e"),
1797    from_hex("0x6b5802b7"),
1798    from_hex("0x62d98682"),
1799    ],
1800    vec![from_hex("0x5a98822d"),
1801    from_hex("0x5f84702e"),
1802    from_hex("0x3126f240"),
1803    from_hex("0x5a1aff1a"),
1804    from_hex("0x77b04e66"),
1805    from_hex("0x48c685c3"),
1806    from_hex("0x355f8209"),
1807    from_hex("0x2e739ce1"),
1808    from_hex("0x1adf9544"),
1809    from_hex("0x1b327099"),
1810    from_hex("0x0ce1a5a0"),
1811    from_hex("0x1129ee7e"),
1812    from_hex("0x5b334254"),
1813    from_hex("0x4d1d8f66"),
1814    from_hex("0x23c29e16"),
1815    from_hex("0x63ac7ba7"),
1816    from_hex("0x513cb4e4"),
1817    from_hex("0x52edd435"),
1818    from_hex("0x4580818e"),
1819    from_hex("0x55516239"),
1820    from_hex("0x628cf778"),
1821    from_hex("0x5eebf087"),
1822    from_hex("0x15def2ec"),
1823    from_hex("0x581ee8ce"),
1824    ],
1825    vec![from_hex("0x6b4345c5"),
1826    from_hex("0x62ab4957"),
1827    from_hex("0x4af89e0f"),
1828    from_hex("0x4424f30c"),
1829    from_hex("0x23ad1768"),
1830    from_hex("0x665a9fd6"),
1831    from_hex("0x1c0b5ae1"),
1832    from_hex("0x65abddb8"),
1833    from_hex("0x7039a4b0"),
1834    from_hex("0x21c65f02"),
1835    from_hex("0x539f7cdc"),
1836    from_hex("0x05ad0446"),
1837    from_hex("0x4aae4ae6"),
1838    from_hex("0x258bc9e4"),
1839    from_hex("0x12e4cd47"),
1840    from_hex("0x5a8e8499"),
1841    from_hex("0x21ccbdef"),
1842    from_hex("0x1aee7336"),
1843    from_hex("0x622564eb"),
1844    from_hex("0x5e6d5bbc"),
1845    from_hex("0x48c2117a"),
1846    from_hex("0x418c1333"),
1847    from_hex("0x6afb386a"),
1848    from_hex("0x0c5b7812"),
1849    ],
1850    vec![from_hex("0x565753d9"),
1851    from_hex("0x59a7ea4f"),
1852    from_hex("0x37dd5860"),
1853    from_hex("0x5bf14251"),
1854    from_hex("0x56398160"),
1855    from_hex("0x20cbf536"),
1856    from_hex("0x1e49ee8c"),
1857    from_hex("0x30e66c4d"),
1858    from_hex("0x32357c88"),
1859    from_hex("0x595c244d"),
1860    from_hex("0x7464a56d"),
1861    from_hex("0x3a31384e"),
1862    from_hex("0x3d3273be"),
1863    from_hex("0x14d339cb"),
1864    from_hex("0x5044a65c"),
1865    from_hex("0x1cd80ac0"),
1866    from_hex("0x2d6ae173"),
1867    from_hex("0x5bfd70f8"),
1868    from_hex("0x05a66375"),
1869    from_hex("0x29500b8c"),
1870    from_hex("0x08d07343"),
1871    from_hex("0x45bec74b"),
1872    from_hex("0x045faaef"),
1873    from_hex("0x6e763fd3"),
1874    ],
1875    vec![from_hex("0x51aa9c1a"),
1876    from_hex("0x6acf4d51"),
1877    from_hex("0x35b040a0"),
1878    from_hex("0x73bf91ea"),
1879    from_hex("0x3177f4ab"),
1880    from_hex("0x579e48cc"),
1881    from_hex("0x241608ab"),
1882    from_hex("0x333e6a9e"),
1883    from_hex("0x0d495ddb"),
1884    from_hex("0x6987b141"),
1885    from_hex("0x18feffde"),
1886    from_hex("0x2c91e2c2"),
1887    from_hex("0x5dd6bff0"),
1888    from_hex("0x5ce61d67"),
1889    from_hex("0x779eb8b2"),
1890    from_hex("0x54826cbb"),
1891    from_hex("0x3001ecb4"),
1892    from_hex("0x154bcd9a"),
1893    from_hex("0x3be72d2e"),
1894    from_hex("0x5455873b"),
1895    from_hex("0x09ab84d6"),
1896    from_hex("0x438c6a8b"),
1897    from_hex("0x45ffda0e"),
1898    from_hex("0x1ce4c9c7"),
1899    ],
1900    vec![from_hex("0x35c8f2f0"),
1901    from_hex("0x1dc40835"),
1902    from_hex("0x756cc6f6"),
1903    from_hex("0x0e146d08"),
1904    from_hex("0x0ad9b699"),
1905    from_hex("0x0541f6fa"),
1906    from_hex("0x77b884d0"),
1907    from_hex("0x17db8c98"),
1908    from_hex("0x59c7d04e"),
1909    from_hex("0x3e0eba95"),
1910    from_hex("0x2a28a66e"),
1911    from_hex("0x60566879"),
1912    from_hex("0x1ae1e397"),
1913    from_hex("0x331e0750"),
1914    from_hex("0x38d0f91e"),
1915    from_hex("0x52fcf20d"),
1916    from_hex("0x4508cf06"),
1917    from_hex("0x4826d030"),
1918    from_hex("0x321f7db2"),
1919    from_hex("0x022452ff"),
1920    from_hex("0x375adcb4"),
1921    from_hex("0x69b19019"),
1922    from_hex("0x47442ecd"),
1923    from_hex("0x0222de3d"),
1924    ],
1925    vec![from_hex("0x3b30e99a"),
1926    from_hex("0x5b4c7207"),
1927    from_hex("0x71d04e99"),
1928    from_hex("0x1f02c78e"),
1929    from_hex("0x73fc0cdc"),
1930    from_hex("0x4bb751f9"),
1931    from_hex("0x2474d1bc"),
1932    from_hex("0x637b9b71"),
1933    from_hex("0x4766ad4f"),
1934    from_hex("0x33060411"),
1935    from_hex("0x2168b8b4"),
1936    from_hex("0x4f15816e"),
1937    from_hex("0x6ddacf2b"),
1938    from_hex("0x0057c6ad"),
1939    from_hex("0x5bfb91a9"),
1940    from_hex("0x6027e02f"),
1941    from_hex("0x5d967a56"),
1942    from_hex("0x139d4629"),
1943    from_hex("0x41f6cc04"),
1944    from_hex("0x240c7304"),
1945    from_hex("0x131eba30"),
1946    from_hex("0x0cd4affb"),
1947    from_hex("0x72b01bef"),
1948    from_hex("0x4ef7a632"),
1949    ],
1950    vec![from_hex("0x09478952"),
1951    from_hex("0x6814a0f0"),
1952    from_hex("0x72a61a71"),
1953    from_hex("0x39bd9d86"),
1954    from_hex("0x3ed1fbfc"),
1955    from_hex("0x653afc45"),
1956    from_hex("0x4c4ddb5d"),
1957    from_hex("0x656b8199"),
1958    from_hex("0x686caf27"),
1959    from_hex("0x5caf0289"),
1960    from_hex("0x20e047b0"),
1961    from_hex("0x736702e2"),
1962    from_hex("0x1b46d6ed"),
1963    from_hex("0x64cd8fdd"),
1964    from_hex("0x475354f5"),
1965    from_hex("0x59f199b8"),
1966    from_hex("0x32d5d81d"),
1967    from_hex("0x2732f5f5"),
1968    from_hex("0x09538182"),
1969    from_hex("0x1c3ac6b0"),
1970    from_hex("0x1f754ae0"),
1971    from_hex("0x442a0cb1"),
1972    from_hex("0x74ccefcd"),
1973    from_hex("0x43013839"),
1974    ],
1975    ];
1976
1977    pub static ref POSEIDON_BABYBEAR_16_PARAMS: Arc<PoseidonParams<Scalar>> = Arc::new(PoseidonParams::new(16, 7, 8, 13, &MDS16, &RC16));
1978    
1979    pub static ref POSEIDON_BABYBEAR_24_PARAMS: Arc<PoseidonParams<Scalar>> = Arc::new(PoseidonParams::new(24, 7, 8, 21, &MDS24, &RC24));
1980
1981    }