@semaphore-protocol/proof 4.0.0-beta.9 → 4.0.1

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.
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @module @semaphore-protocol/proof
3
- * @version 4.0.0-beta.9
3
+ * @version 4.0.1
4
4
  * @file A library to generate and verify Semaphore proofs.
5
5
  * @copyright Ethereum Foundation 2024
6
6
  * @license MIT
@@ -9,8 +9,8 @@
9
9
  import { packGroth16Proof, unpackGroth16Proof } from '@zk-kit/utils/proof-packing';
10
10
  export { packGroth16Proof, unpackGroth16Proof } from '@zk-kit/utils/proof-packing';
11
11
  import { MIN_DEPTH, MAX_DEPTH } from '@semaphore-protocol/utils/constants';
12
+ import { maybeGetSnarkArtifacts, Project } from '@zk-kit/artifacts';
12
13
  import { requireDefined, requireObject, requireTypes, requireNumber, requireString, requireArray } from '@zk-kit/utils/error-handlers';
13
- import { maybeGetSemaphoreSnarkArtifacts } from '@zk-kit/utils';
14
14
  import { groth16 } from 'snarkjs';
15
15
  import { keccak256 } from 'ethers/crypto';
16
16
  import { toBeHex, toBigInt as toBigInt$1 } from 'ethers/utils';
@@ -54,6 +54,7 @@ function toBigInt(value) {
54
54
  * If it is not defined, it will be inferred from the group or Merkle proof passed as the second parameter.
55
55
  * Finally, the artifacts themselves can be passed manually with file paths,
56
56
  * or they will be automatically fetched.
57
+ * Please keep in mind that groups with 1 member or 2 members cannot be considered anonymous.
57
58
  * @param identity The Semaphore identity.
58
59
  * @param groupOrMerkleProof The Semaphore group or its Merkle proof.
59
60
  * @param message The Semaphore message.
@@ -98,10 +99,13 @@ async function generateProof(identity, groupOrMerkleProof, message, scope, merkl
98
99
  }
99
100
  }
100
101
  else {
101
- merkleTreeDepth = merkleProofLength;
102
+ merkleTreeDepth = merkleProofLength !== 0 ? merkleProofLength : 1;
102
103
  }
103
104
  // If the Snark artifacts are not defined they will be automatically downloaded.
104
- snarkArtifacts ?? (snarkArtifacts = await maybeGetSemaphoreSnarkArtifacts(merkleTreeDepth));
105
+ snarkArtifacts ?? (snarkArtifacts = await maybeGetSnarkArtifacts(Project.SEMAPHORE, {
106
+ parameters: [merkleTreeDepth],
107
+ version: "4.0.0"
108
+ }));
105
109
  const { wasm, zkey } = snarkArtifacts;
106
110
  // The index must be converted to a list of indices, 1 for each tree level.
107
111
  // The missing siblings can be set to 0, as they won't be used in the circuit.
@@ -123,7 +127,7 @@ async function generateProof(identity, groupOrMerkleProof, message, scope, merkl
123
127
  }, wasm, zkey);
124
128
  return {
125
129
  merkleTreeDepth,
126
- merkleTreeRoot: publicSignals[0],
130
+ merkleTreeRoot: merkleProof.root.toString(),
127
131
  nullifier: publicSignals[1],
128
132
  message: message.toString(),
129
133
  scope: scope.toString(),
@@ -135,18 +139,18 @@ var protocol = "groth16";
135
139
  var curve = "bn128";
136
140
  var nPublic = 4;
137
141
  var vk_alpha_1 = [
138
- "20491192805390485299153009773594534940189261866228447918068658471970481763042",
139
- "9383485363053290200918347156157836566562967994039712273449902621266178545958",
142
+ "16428432848801857252194528405604668803277877773566238944394625302971855135431",
143
+ "16846502678714586896801519656441059708016666274385668027902869494772365009666",
140
144
  "1"
141
145
  ];
142
146
  var vk_beta_2 = [
143
147
  [
144
- "6375614351688725206403948262868962793625744043794305715222011528459656738731",
145
- "4252822878758300859123897981450591353533073413197771768651442665752259397132"
148
+ "16348171800823588416173124589066524623406261996681292662100840445103873053252",
149
+ "3182164110458002340215786955198810119980427837186618912744689678939861918171"
146
150
  ],
147
151
  [
148
- "10505242626370262277552901082094356697409835680220590971873171140371331206856",
149
- "21847035105528745403288232691147584728191162732299865338377159692350059136679"
152
+ "19687132236965066906216944365591810874384658708175106803089633851114028275753",
153
+ "4920802715848186258981584729175884379674325733638798907835771393452862684714"
150
154
  ],
151
155
  [
152
156
  "1",
@@ -170,12 +174,12 @@ var vk_gamma_2 = [
170
174
  var vk_delta_2 = [
171
175
  [
172
176
  [
173
- "16293410697967515504861065986355060225819302510590370360517024529684437085892",
174
- "563562783592406106461234396505774794044312891062077216951605541624542949349"
177
+ "15662648751553932653781975807624464121405704024803073886925976686616010387354",
178
+ "18358547564487905095688479908858987846616998213156437518686067355563592118237"
175
179
  ],
176
180
  [
177
- "10971164449179097832515056670594147898894418081309026322805549037082528587660",
178
- "718666295291146285397081607986058864287612968465033527894198098928522749430"
181
+ "12579159544968648693964563165973893448704730885005100826654630574108054705556",
182
+ "1545474538105908330267074270190095622354834966212647889547653097055078098224"
179
183
  ],
180
184
  [
181
185
  "1",
@@ -184,12 +188,12 @@ var vk_delta_2 = [
184
188
  ],
185
189
  [
186
190
  [
187
- "8087990171976409378525016197066789089596692733769545253942804888352233244331",
188
- "6925326031648378844726759441690273332175949886518827719224741736678266471462"
191
+ "13720528004476084359207196371475762368424714925503835663451917882430924467554",
192
+ "15357842752194390032830879177519514606613356943505010426726499926726016517582"
189
193
  ],
190
194
  [
191
- "15618724583521291135890928658458637081479213437530496494788106479523123480134",
192
- "10115242383701466910539784663900956956505212347433548599529944880163612117847"
195
+ "14571933744484927053512012311263939678215066456565339237074260778179419354637",
196
+ "2196656647584375999320189230399052835502476576494068012902156164580595749760"
193
197
  ],
194
198
  [
195
199
  "1",
@@ -198,12 +202,12 @@ var vk_delta_2 = [
198
202
  ],
199
203
  [
200
204
  [
201
- "7699563868952902688273782470023919811229667532027732585467624469008534197561",
202
- "7699900854308622607636895140107457213471038801393300399043779958706267744510"
205
+ "18282758355470198230938465615400409713402004038201360061031317503584711879237",
206
+ "1096090542237876305763822439899873238394525438826581012748557492836778110917"
203
207
  ],
204
208
  [
205
- "15390497513810955087868026868634948499789494261604405008298272598684585331879",
206
- "8605006500231713390564760089884965869867818332514275728271802101761117177706"
209
+ "2920496587818605789230962034477809982324000981266163502059117507002917895757",
210
+ "7973969975759518869552865162652900479072033124669141796195141770899882758383"
207
211
  ],
208
212
  [
209
213
  "1",
@@ -212,12 +216,12 @@ var vk_delta_2 = [
212
216
  ],
213
217
  [
214
218
  [
215
- "2561989864654045354260435368824127763249975523256535586391379695256700207392",
216
- "9243647856126339588200227750973237380809101852206502177952556679680468734813"
219
+ "17529478610649635357901422564682249462969460088983393810272144503916885638629",
220
+ "14033304028688398404089545751254979569049699915340551984412184456786819712695"
217
221
  ],
218
222
  [
219
- "18264861452415533737686303596832882667852638121244187636443702248458018416929",
220
- "1308059969166897152269078839315249187046718124106168932020710683189419160756"
223
+ "7242759178038747404494096998044224993169513816067824413031492987300456908934",
224
+ "968190632906420692452807865081290940343138767641492735661467959437198373032"
221
225
  ],
222
226
  [
223
227
  "1",
@@ -226,12 +230,12 @@ var vk_delta_2 = [
226
230
  ],
227
231
  [
228
232
  [
229
- "21307904757295729894500052152251151076177124351059746872940558537429181679313",
230
- "12554869896570109663558999106053541183136083706372178136870048170147558661370"
233
+ "12964751171177929169670182425240761498461607040020835118601467328036987558858",
234
+ "15740655435463241944594855735935231648684671883923953096410588018036769516770"
231
235
  ],
232
236
  [
233
- "11194665041440536766843756304212299788817698936187605770131686430625103172681",
234
- "13447792161027167738515744919555311619301071111923271126707713963292614473975"
237
+ "6954370193053655486251406740905618458518953022289151868757271522548301919472",
238
+ "21474571159868965455306627669334290549452576803823591301731326342326814568896"
235
239
  ],
236
240
  [
237
241
  "1",
@@ -240,12 +244,12 @@ var vk_delta_2 = [
240
244
  ],
241
245
  [
242
246
  [
243
- "11706947284665470438085734275890584651957983546291282232304205898476084974953",
244
- "6841243505372324564043525805425666596605335849634400049689614462868641599622"
247
+ "18702593988046837524790351483331632258278160532977261915119611324471253407466",
248
+ "16239592155161765109648123193105804251252701943901733499502441663333912783245"
245
249
  ],
246
250
  [
247
- "2674642993002069213220912300725195098434544703961492590713058622848310061455",
248
- "8134420958061302592465696766566203845441024351721660066575866529624350946525"
251
+ "19358066347678636498093783612000296194480758342913325289131948678991962529441",
252
+ "13746033878407070858115621843430829498309218839316343379025665907999784574154"
249
253
  ],
250
254
  [
251
255
  "1",
@@ -254,12 +258,12 @@ var vk_delta_2 = [
254
258
  ],
255
259
  [
256
260
  [
257
- "14347453588631116202352669855016330076170847581618919999243717038742915487177",
258
- "16222168105567777760688113388791710300819703656136395550799888633073848798053"
261
+ "4562585331778730670899179927104513856322577370213643119870201750008533040214",
262
+ "6482921272760726478838066628157548923897782117283646773208763176771446379138"
259
263
  ],
260
264
  [
261
- "5558376366205739247464101507558623934779699722049069497418188353860561540238",
262
- "1551977748690015855031859376084014992267998166583511614295554470740621685494"
265
+ "16654459784024455427280229763380300423080811024668332509526284511491790880990",
266
+ "9299549824594530154451155704400285409056448609359755927574262701418672785771"
263
267
  ],
264
268
  [
265
269
  "1",
@@ -268,12 +272,12 @@ var vk_delta_2 = [
268
272
  ],
269
273
  [
270
274
  [
271
- "13742810756711208866393269789950822956196651488331544225304557369739035583007",
272
- "8039261311473792027408130340265108867783988336829815266149766357424909552805"
275
+ "16198597482473356107060462797493408464959815651823410647378959304462364790023",
276
+ "4169753203433043290708949478342499350225971996935208104044673971132510531963"
273
277
  ],
274
278
  [
275
- "1426283383724925735279168010737048062664480092231550167387716017170422478271",
276
- "5732605965679620193714116075516176231919315490749768120227762344555213912038"
279
+ "15996002991058741836925286413107190453488985346498046642177496721490001022163",
280
+ "17831214733154720272879709021886998538183166751338990495293296921834561417050"
277
281
  ],
278
282
  [
279
283
  "1",
@@ -282,12 +286,12 @@ var vk_delta_2 = [
282
286
  ],
283
287
  [
284
288
  [
285
- "4869230832458710492613139050501069397194236257402947715710705773326736170245",
286
- "12816421563768297608770270654146762017343826741755988834647936785087288245221"
289
+ "8026613233416032931155189579997899527124867847165186585887532521124762242171",
290
+ "17920452210119585965813298538098997746450528307627971419517604274103840658730"
287
291
  ],
288
292
  [
289
- "11073344652802336528382437239976464979745376329678013840706100925574578891663",
290
- "18301439700961740613282752163964601039402055729651579152511810295028351855917"
293
+ "18354222295715868456732739635697044486544782691576216892030243636076554800619",
294
+ "12536429843060624487053183271774959575059067729019923970247266906616071589989"
291
295
  ],
292
296
  [
293
297
  "1",
@@ -296,12 +300,12 @@ var vk_delta_2 = [
296
300
  ],
297
301
  [
298
302
  [
299
- "11544253490899949675932185200523769178642714850738952025947643180461452257027",
300
- "10621957863293158040009666146187340406300006617270113507997717497098731431645"
303
+ "18343503004862189418033094393114515169584171574852422315350418500159030922263",
304
+ "21420692366857794685888663542888709905237738746850069466081467001353666342965"
301
305
  ],
302
306
  [
303
- "49583159539136224825737189586941489049516773623689603831917260806184061698",
304
- "19367886286197174023585178612664391272570357530876044259219178006444442279835"
307
+ "15200551988732901161699976788357951085426436066677048420098461828563894176150",
308
+ "16439186901063853414808045554962977634854311593865750348846556486836509716488"
305
309
  ],
306
310
  [
307
311
  "1",
@@ -310,12 +314,12 @@ var vk_delta_2 = [
310
314
  ],
311
315
  [
312
316
  [
313
- "20152340858374022568747410447956756883573367358669429548835673215400335225747",
314
- "6919690594446594824660388293695365136302375315018989420609208580270256193473"
317
+ "1531932691795154082010331247272128035283420450879984505970978649526303671013",
318
+ "8482807834840099486107357849095958421708288941420679407730439668240369271197"
315
319
  ],
316
320
  [
317
- "16509772385894559653132866836382733797078280267167499296517180188027714772070",
318
- "11674218038035204128186342498577020603218612593894174060137243207689886423596"
321
+ "2890563104449202149521252385842115871596603958515320789619311677428773944295",
322
+ "10326017741190716069982105202291613302347042236075737537452333444753171570010"
319
323
  ],
320
324
  [
321
325
  "1",
@@ -324,12 +328,292 @@ var vk_delta_2 = [
324
328
  ],
325
329
  [
326
330
  [
327
- "21672319732433045166991956534762990382763080837755725716637027617201056105221",
328
- "3246325158773052647788911340476235648870186305670446321333841273770228016262"
331
+ "8031021217500376290269114216814836477415391402921787637085737712949651005952",
332
+ "6379626794062388565530320965673584683811331210463512233691169393056454417810"
329
333
  ],
330
334
  [
331
- "5332470123606111842725808071294486759248878958039162159296029608796276205941",
332
- "1097625536358560225015844871776096852794298581720514105921271391131873344240"
335
+ "12412675319987657724460960278402203548317535126494687402198671892291826563464",
336
+ "15261959534341262089656432084966075417921918036565394975811438856221288978192"
337
+ ],
338
+ [
339
+ "1",
340
+ "0"
341
+ ]
342
+ ],
343
+ [
344
+ [
345
+ "11063658239692825381704700810385108349384459703800229121613802621026834850995",
346
+ "18405974527641184935569939050199806786119735189423462681352004154947586987761"
347
+ ],
348
+ [
349
+ "10581036997862130058603889786198200057133900928078268413900852134308841628552",
350
+ "20401912636755055463157317129314482008782101856095804626717136888886428939725"
351
+ ],
352
+ [
353
+ "1",
354
+ "0"
355
+ ]
356
+ ],
357
+ [
358
+ [
359
+ "5914749649291606384462747717764850940787906745751128721215181537027495043325",
360
+ "2844460676842285471844840162496739784337096369846435331204280645139535043731"
361
+ ],
362
+ [
363
+ "16679714051449621657256662882211432986285335589270632187081448168743144646010",
364
+ "16403998562201315274383761287898474039980386929670468025842124690312505385798"
365
+ ],
366
+ [
367
+ "1",
368
+ "0"
369
+ ]
370
+ ],
371
+ [
372
+ [
373
+ "6360514614281299182411878013125972206098844277909449064382248671632240409416",
374
+ "8019490235657930229602545685025618469913840887375206662306714562639338096359"
375
+ ],
376
+ [
377
+ "8421518624327767035539667378193845962377888010421324291966623261409058898245",
378
+ "18532505668867290379738328175003759079607042632729982459107375168365918757976"
379
+ ],
380
+ [
381
+ "1",
382
+ "0"
383
+ ]
384
+ ],
385
+ [
386
+ [
387
+ "11573288866341175121647407708978273297857024597782918874282176717371576773130",
388
+ "20759074837657564809501685143530456377562536015816086555379080667602653298306"
389
+ ],
390
+ [
391
+ "21884242265301052283286073107133504985083194336113478618838523331660374213570",
392
+ "19475107603336226504587469711392819869087288902355805230614724291289122375846"
393
+ ],
394
+ [
395
+ "1",
396
+ "0"
397
+ ]
398
+ ],
399
+ [
400
+ [
401
+ "7951387307333182634684754650901435973768779794218900331714625086350726274942",
402
+ "3066170574229466435407264700502616839626082070514501523679452764935485028736"
403
+ ],
404
+ [
405
+ "19848381031896652139349791682530465833719275685855743122849792015759588531339",
406
+ "13578824606544430966133042087468301830727811282121948825028360301706303669231"
407
+ ],
408
+ [
409
+ "1",
410
+ "0"
411
+ ]
412
+ ],
413
+ [
414
+ [
415
+ "16419308144058642981524756443290703631729426627385646905142158478345164404879",
416
+ "6573154341426354993599623914164155921131813615298607946435982334364383320793"
417
+ ],
418
+ [
419
+ "17945712678641984649495876620223190782305382105763957622870181201252059717682",
420
+ "942314767315789144256266064192022265579304275774793342260835421710673918285"
421
+ ],
422
+ [
423
+ "1",
424
+ "0"
425
+ ]
426
+ ],
427
+ [
428
+ [
429
+ "8228171988949250866347662896961764196608750080646539001443256474901139877051",
430
+ "9271002136483424788269278316391606491360153732024211579417926107994995432826"
431
+ ],
432
+ [
433
+ "3685474186777860155223706676482968796090983045736466861690878558020083034916",
434
+ "20240081759615964816136232877050251456333669788276947762731625798225823502998"
435
+ ],
436
+ [
437
+ "1",
438
+ "0"
439
+ ]
440
+ ],
441
+ [
442
+ [
443
+ "7338708370982730261395030177227912514214944721567888714384503728042214055309",
444
+ "275116175553159498718561489405169511232715998055900506709208190227728439831"
445
+ ],
446
+ [
447
+ "15163443940499746648640851269666923560658903809778640616581862089179343108182",
448
+ "2285508597732647746841213906783440647997136124356359059650028586535477309792"
449
+ ],
450
+ [
451
+ "1",
452
+ "0"
453
+ ]
454
+ ],
455
+ [
456
+ [
457
+ "3790897889674729687102011235738708037383393765058266352188381434189575086080",
458
+ "7481617454708320190331411214970150566519243590120906863698168124347483283307"
459
+ ],
460
+ [
461
+ "18961585057625546222763334757505522771740769338010572292783220912986926586854",
462
+ "17582850308142585333519054672998882111865339708436809129995518706804527076353"
463
+ ],
464
+ [
465
+ "1",
466
+ "0"
467
+ ]
468
+ ],
469
+ [
470
+ [
471
+ "13953490152873041611053779700802518995304489998104548903919774028525032867964",
472
+ "9679690373149117563754317307037586538394929348733117229177073999196519450461"
473
+ ],
474
+ [
475
+ "8400619522468195192079024924375785176686244213372269992523849676384018875300",
476
+ "8584860336778813488021026261425560177968889952950706471574873674510806966419"
477
+ ],
478
+ [
479
+ "1",
480
+ "0"
481
+ ]
482
+ ],
483
+ [
484
+ [
485
+ "19026513891744713045426845531420132126578554294461150386909840193098440147673",
486
+ "1895928299034844696630794694609519515092896092191683631304721647222032914779"
487
+ ],
488
+ [
489
+ "13362867147840304033834065229457670563442204439046527165143934160967798444725",
490
+ "4073281111734161932072345995811001896063226222777392994725894652964051683943"
491
+ ],
492
+ [
493
+ "1",
494
+ "0"
495
+ ]
496
+ ],
497
+ [
498
+ [
499
+ "9112140750806762434510825375931543886135367141484613422947675423683311130537",
500
+ "7211419275788152379372992549185439317698375419836488104253705518694042119228"
501
+ ],
502
+ [
503
+ "6961266423823329910790066424248133365666435921221127260870444632539329606224",
504
+ "12020406779776320543918475257645763209221278449775176154727249143619468329590"
505
+ ],
506
+ [
507
+ "1",
508
+ "0"
509
+ ]
510
+ ],
511
+ [
512
+ [
513
+ "6590008305704976915857671866558706505394630312395969823040635040879201337002",
514
+ "18803497674827878184210135371703804206276128582022416604041787392310845729622"
515
+ ],
516
+ [
517
+ "16299600292583383998706243035294548578562168326056377699804434906128380481545",
518
+ "2714759247406808259589803854440914533632699567907406761316959511568030744066"
519
+ ],
520
+ [
521
+ "1",
522
+ "0"
523
+ ]
524
+ ],
525
+ [
526
+ [
527
+ "8484194759795978556088297437107686617328133596604796277228418191688537911573",
528
+ "9325238625126515763679853550553375879158552597544709459784109512243397955590"
529
+ ],
530
+ [
531
+ "13482530129860761195447497269660263095272961608736579417124458190809007451755",
532
+ "7354463117736585470843139230227589188304331389476818932256765377140053168035"
533
+ ],
534
+ [
535
+ "1",
536
+ "0"
537
+ ]
538
+ ],
539
+ [
540
+ [
541
+ "21462572925415337738214437933606587540653694853107274549824898449394152530908",
542
+ "7333723286812204168407439917521565157977670700382476881790986792115201279410"
543
+ ],
544
+ [
545
+ "16253055713127198337468919465234896268161918860396508551871391729457324125212",
546
+ "6820993392268884858152757378169835647522978080101384568523885945756789014349"
547
+ ],
548
+ [
549
+ "1",
550
+ "0"
551
+ ]
552
+ ],
553
+ [
554
+ [
555
+ "17544563341965869668707473190805417639220912289969746146554006791986582724590",
556
+ "11102327427527201346056529148642207216130990405495165914761901542247835149412"
557
+ ],
558
+ [
559
+ "4999887962989142396481351641254451370620928952306237803174890583736074770292",
560
+ "4470848226757772603246285686584200798638888970547659211297578619392420918858"
561
+ ],
562
+ [
563
+ "1",
564
+ "0"
565
+ ]
566
+ ],
567
+ [
568
+ [
569
+ "19811002121850954821192061183148615163420706271800817927960207430256612524059",
570
+ "5314337765479745092537090978913989310916802510812096192767666377841447850226"
571
+ ],
572
+ [
573
+ "3428844080448214358238191483671878854080864964895729401025193865570307658787",
574
+ "18254735365473444026840717290492248863101576601864757410600437101587001057517"
575
+ ],
576
+ [
577
+ "1",
578
+ "0"
579
+ ]
580
+ ],
581
+ [
582
+ [
583
+ "11882651094700172542567008359015417490389070633573140242127755563781024148099",
584
+ "4310089243116651250383251477034324245457116277666484671624575402227833925755"
585
+ ],
586
+ [
587
+ "18874624159090765871635243875933482675871258293088886749847315202391523956097",
588
+ "9304328383406369649010049197573360507944684656613297568584394172735340111263"
589
+ ],
590
+ [
591
+ "1",
592
+ "0"
593
+ ]
594
+ ],
595
+ [
596
+ [
597
+ "20383112265143113621158547584533108172173014612497300318772355462448750327634",
598
+ "9476241965146735006848999585927664857836027675817848342111996150638876938940"
599
+ ],
600
+ [
601
+ "20733082136685384602293372077980283048183069753990343452404863587763569081917",
602
+ "10370498046215116715134085566322498900073301617448752966999679321197451973184"
603
+ ],
604
+ [
605
+ "1",
606
+ "0"
607
+ ]
608
+ ],
609
+ [
610
+ [
611
+ "10728358412340769313351519567620170787387770135423141966436844748162218854008",
612
+ "7929983584961755765377471515178883367433439212271736050025708429355823243624"
613
+ ],
614
+ [
615
+ "2424224908982307794171893487036131370038399449016750026546326391873466118335",
616
+ "4169855297038740915695363102363044976292665711211255871324667594694964037773"
333
617
  ],
334
618
  [
335
619
  "1",
@@ -340,355 +624,895 @@ var vk_delta_2 = [
340
624
  var vk_alphabeta_12 = [
341
625
  [
342
626
  [
343
- "2029413683389138792403550203267699914886160938906632433982220835551125967885",
344
- "21072700047562757817161031222997517981543347628379360635925549008442030252106"
627
+ "5275725312362878540782176211860327475781113689246818544623830805017503247034",
628
+ "700769043921060225711174322502145319612473365595920873303028146383045646735"
345
629
  ],
346
630
  [
347
- "5940354580057074848093997050200682056184807770593307860589430076672439820312",
348
- "12156638873931618554171829126792193045421052652279363021382169897324752428276"
631
+ "16577533945604560505206253312979863148043263406037367789711279754781525822966",
632
+ "9408338099405950952721388539539775335199747835458172188116297223654842340186"
349
633
  ],
350
634
  [
351
- "7898200236362823042373859371574133993780991612861777490112507062703164551277",
352
- "7074218545237549455313236346927434013100842096812539264420499035217050630853"
635
+ "12663399896275491035004982800573482669934131767886952660443268164480899034271",
636
+ "4432711152773877173921024337047412943791122852326272337530740732443732395954"
353
637
  ]
354
638
  ],
355
639
  [
356
640
  [
357
- "7077479683546002997211712695946002074877511277312570035766170199895071832130",
358
- "10093483419865920389913245021038182291233451549023025229112148274109565435465"
641
+ "13121778684901402722679281862736806628725205381360313795132945954337708567513",
642
+ "9534744673358550231812045647241180985734073058548683258847806241019905135720"
359
643
  ],
360
644
  [
361
- "4595479056700221319381530156280926371456704509942304414423590385166031118820",
362
- "19831328484489333784475432780421641293929726139240675179672856274388269393268"
645
+ "21329152369227346659770815132468371951064045353268189088026893413117512652875",
646
+ "17209195434408943681049655974234541356066884378594227002358272904159790622854"
363
647
  ],
364
648
  [
365
- "11934129596455521040620786944827826205713621633706285934057045369193958244500",
366
- "8037395052364110730298837004334506829870972346962140206007064471173334027475"
649
+ "5346467096835895366917814311591075634165750361894629082277248282132405045579",
650
+ "15508364027636868967189209273443690126627947943852338696115233789046842639684"
367
651
  ]
368
652
  ]
369
653
  ];
370
654
  var IC = [
371
655
  [
372
656
  [
373
- "16397970494781113622140409380710514277504568512202481522431528914560031562762",
374
- "15987991045804318696151558137607070651882190737142560406194591976742796145195",
657
+ "20602000776800724705104231353971008348678632605343811527051139864158800058742",
658
+ "14100125742256756091734688090621667470723401759459592787502475801413744195297",
659
+ "1"
660
+ ],
661
+ [
662
+ "5090583730862410755830979584235210054631184460526892606022709842010236308675",
663
+ "4935746665478263580470501879719907639988899436008466660042851826337922233613",
664
+ "1"
665
+ ],
666
+ [
667
+ "3603230519262933722323237889869128969156000998401789817930265262617368730462",
668
+ "11467103179184542033012124498958167915605281189440445972230559164572312725202",
669
+ "1"
670
+ ],
671
+ [
672
+ "20354120984011889701917116306955017859695028034788955847437411305304360829487",
673
+ "16952752114474306858880411587178692742589121096026762314329638709126787301483",
674
+ "1"
675
+ ],
676
+ [
677
+ "18678961143994743003180318723146092299060216598083112257165966782010215931454",
678
+ "5866474510945308764957529269555101130643879788634167019342763906927794156659",
679
+ "1"
680
+ ]
681
+ ],
682
+ [
683
+ [
684
+ "15947740979005208428427315036716544174249364023308166418156254508145278950889",
685
+ "13324328715790405384125386378518079709609297588403011236512446709595322048979",
686
+ "1"
687
+ ],
688
+ [
689
+ "18308129219862888344083447566760955160779532192553849267018614487088634836563",
690
+ "6372459765603725576424215986727450779217530423615747931788702584026023386877",
691
+ "1"
692
+ ],
693
+ [
694
+ "7093003777162632186231777482293120808844116758585672698445917711442486215336",
695
+ "15357576732947512625016950088762579987226580659874157718142226214458009204755",
696
+ "1"
697
+ ],
698
+ [
699
+ "13910597919064508360434043231000553781072135406219661606166769706745413894201",
700
+ "9475901949906914147982792916474633312982452326368523201024844634638043554494",
701
+ "1"
702
+ ],
703
+ [
704
+ "5845138751782936895477553974859998077996624699108246120208069774017428318479",
705
+ "3326095377373657419775174404381825686428913179751401123841216020519623741775",
706
+ "1"
707
+ ]
708
+ ],
709
+ [
710
+ [
711
+ "8027751638293718359199675565570157214590620386957299982399037269650333307021",
712
+ "19002113380575481191643777830101182489616906893723699470070419138254788369727",
713
+ "1"
714
+ ],
715
+ [
716
+ "13631613009301650992828160964785768170789209232530437462516754147352285424672",
717
+ "10537705110128905270703523362934130036880036854847578111990360444182641655212",
718
+ "1"
719
+ ],
720
+ [
721
+ "15557574650831364767567015658284909068256128766563081293491003990055297878366",
722
+ "4049724481871929240016595616316679773340938699307608349394228543495262553744",
723
+ "1"
724
+ ],
725
+ [
726
+ "9967066649437927083270210032320564587652082866881800887188539489167094397640",
727
+ "12463426560961961450861478284334163210886016242490079948590082000657390077088",
728
+ "1"
729
+ ],
730
+ [
731
+ "21318595425700216078579789307308348011199610228556265752904860757510620370622",
732
+ "7430155508771673067823897542900534022148544854722115377830369283854627952599",
733
+ "1"
734
+ ]
735
+ ],
736
+ [
737
+ [
738
+ "12017353327534072098763415761011052990865822334777878720246921848197559257711",
739
+ "4746680322053291743787031203095442352574780441873349801788355375401126089939",
740
+ "1"
741
+ ],
742
+ [
743
+ "6764632552006100580460767171096753901452726344615530017064702126145414585640",
744
+ "11581587935666673652762153205827599529022773836189155792609728856814288572033",
745
+ "1"
746
+ ],
747
+ [
748
+ "3123694825428833189943974730387937552931713004458396242443840668462184834558",
749
+ "3432192610292569155696646287493678963086402014898209278361624573082188247990",
750
+ "1"
751
+ ],
752
+ [
753
+ "12349833666000936285363634772178969342930188247085371717039135170012686159900",
754
+ "5587426338437935681688079936152042996259869611071713486439341129143155921959",
755
+ "1"
756
+ ],
757
+ [
758
+ "12022589354168680516901928073724404259700970836413687340697868887207353139344",
759
+ "2351613311284811919248989036726852289804810348516261915606564943623124473717",
760
+ "1"
761
+ ]
762
+ ],
763
+ [
764
+ [
765
+ "3115002343037487520580459802807906562630507097436525958861415456096559884443",
766
+ "11775142132959919266954507317832500578453517368862270948538792702813845219681",
767
+ "1"
768
+ ],
769
+ [
770
+ "5975456097652384580746132945351678665917860606511206167023154005883554813508",
771
+ "10958037207675554032315788914627312943186758288936582678633536154169678007202",
772
+ "1"
773
+ ],
774
+ [
775
+ "16345185674805541466042568997276776714209785989761944600635051035243995431568",
776
+ "3326264593228494909568322793066180033820330146744162800569972963329142251537",
777
+ "1"
778
+ ],
779
+ [
780
+ "20721047231464194965879320004420846916587593568519526251056516572985788552732",
781
+ "2552439778142862614309289213707433798337671284267429041900242151271508522517",
782
+ "1"
783
+ ],
784
+ [
785
+ "2849386127826497959217687777221941766595094589431869464564268817450132435018",
786
+ "12188539304210779665491473755999603070354632830707125660270270405780470402800",
787
+ "1"
788
+ ]
789
+ ],
790
+ [
791
+ [
792
+ "6024976123298004874848602709755399197808739071863728225378332097920450236516",
793
+ "11108084608972457539770160222798307153256767409158349747526974841008717682367",
794
+ "1"
795
+ ],
796
+ [
797
+ "3009127146923662343754766534488769100730310563110562565512507605403185571089",
798
+ "10560679284132950437595738585637379866590755950272794729013445350206405316661",
799
+ "1"
800
+ ],
801
+ [
802
+ "16015321530803994569819047219560485624444041236327101681073970215458831987478",
803
+ "18489840631710745699731219026737904723160484479846032199737023956049067434815",
804
+ "1"
805
+ ],
806
+ [
807
+ "609265187318362115240245160721406765003010398230819869810290394123140807290",
808
+ "2656965952206569220410287839949134856874352189248192147930831679380007159249",
809
+ "1"
810
+ ],
811
+ [
812
+ "13957423432693450118120092425077530751840166358932317773385901323790404449641",
813
+ "7610225795517710715985874151201119876406845575780133396869144717381641586640",
814
+ "1"
815
+ ]
816
+ ],
817
+ [
818
+ [
819
+ "18178936861568428015361893654874798233785855995042899944660014774323534883903",
820
+ "534506139369949013962728832141783820104682340925384016906020027968881380951",
821
+ "1"
822
+ ],
823
+ [
824
+ "13888044772855561714276444972404100722751042044045312252045340354941233320135",
825
+ "13061437363756343100054622876229104455920015737970195589611281743974716159827",
826
+ "1"
827
+ ],
828
+ [
829
+ "15297052669271818809266618537917704542138894789392864971735934945598379827363",
830
+ "3240592020743113440365790241401792477958041186219702004441781545015089517479",
831
+ "1"
832
+ ],
833
+ [
834
+ "12939402739160799630996576545137073878726141216092557580496570401396343874133",
835
+ "409838859583542828209958035048329036930557790097408442597169497017958367880",
836
+ "1"
837
+ ],
838
+ [
839
+ "4849352055719384218783567790347020036570406423962447054960403165168624679411",
840
+ "10140481868950825952506002812679553069445144019364683137830173127833535162812",
841
+ "1"
842
+ ]
843
+ ],
844
+ [
845
+ [
846
+ "12128929995926069335150064696726717100038806543084523729572253928762150006902",
847
+ "1527343541447603983494013575570118174442170324803005341835852970207664984106",
848
+ "1"
849
+ ],
850
+ [
851
+ "3864366504647042739453971869413719136218296278515580744588126485271535533745",
852
+ "16390744785373846505589339019032992526980013169808686005019244934399314954484",
853
+ "1"
854
+ ],
855
+ [
856
+ "1189371614834081242339044631966546656514169937037419744085755746584992776112",
857
+ "2490564128297998291899011962907372091056992851367564813460897014374926950158",
858
+ "1"
859
+ ],
860
+ [
861
+ "2632864541439030478006092584387470079076010621748787710053145987733131826177",
862
+ "10997016251008884590554668186933912000821350188750456144761529496433221911191",
863
+ "1"
864
+ ],
865
+ [
866
+ "3662989402605074726032541754492900291134797145446056852785520146936851543244",
867
+ "8371074929323402425468930212402691638137013802793901226648986870188378349904",
868
+ "1"
869
+ ]
870
+ ],
871
+ [
872
+ [
873
+ "11685593308965088606881675161829854229906033467171784802160080423031157953626",
874
+ "18989841286028554273231159314070667749621876499337485447347239057791285949659",
875
+ "1"
876
+ ],
877
+ [
878
+ "13501500842653069022700095920888317808542113497043735775280862312089436522286",
879
+ "16284422417487952110266526583186344607656490299306406671512902584454645262294",
880
+ "1"
881
+ ],
882
+ [
883
+ "14766820041476554952520399418749355774195705334216487399328042021346008099854",
884
+ "11502099463338241997177160748027482497157165595330950109059924501733819344412",
885
+ "1"
886
+ ],
887
+ [
888
+ "21097733162892834226328090737666232905549661288100963226189626007151883115218",
889
+ "3620141777236347892405766912767968106066233413607983266884777435591408542679",
890
+ "1"
891
+ ],
892
+ [
893
+ "4465316625088681267432956930147995293521314127558426510839100849580054135068",
894
+ "15951396696291486543574989938200386934444721629903447106494532971713975302198",
895
+ "1"
896
+ ]
897
+ ],
898
+ [
899
+ [
900
+ "15140772590596966074591171894694986645347795546765667852915300358255369432294",
901
+ "7383386342436648909729802223228006548918015494414484659175617833341830753463",
902
+ "1"
903
+ ],
904
+ [
905
+ "11436445698241305906567677067532324081573492145508451249291326304016376374466",
906
+ "17397405229027848655285535331264669055168427730382628461971653096729174692794",
907
+ "1"
908
+ ],
909
+ [
910
+ "8888190346365862431131132945799487885295183925892581338098808269532220115208",
911
+ "17373048493258440814074078107890527278667903472831731635546171123117085702144",
912
+ "1"
913
+ ],
914
+ [
915
+ "5394355195223713516914582580686192473163629785306318732489822694588538915692",
916
+ "20814957740385525027786677509245187599649792998372465800981035312224123940783",
917
+ "1"
918
+ ],
919
+ [
920
+ "11167741662268878371451552983943563550747492198375641214347145843414778750740",
921
+ "1505498991925224080559736158020686494389967648228591899080542175743913505975",
922
+ "1"
923
+ ]
924
+ ],
925
+ [
926
+ [
927
+ "5091938011714608365574587822261119297677309310900626302766934784886036216676",
928
+ "18792973255357094538588824962661759194320829424712347846315600994520652609459",
929
+ "1"
930
+ ],
931
+ [
932
+ "5819484726278895533547092474664732368175576227992878488267454637556311136768",
933
+ "14087278759052154922504944654932471722205352537489748711235261956958139094423",
934
+ "1"
935
+ ],
936
+ [
937
+ "6676755499836944199268283133886528716777488598645051771936175647684814488319",
938
+ "7841200200792172536039490995922340397104113825218911994623753022413575084536",
939
+ "1"
940
+ ],
941
+ [
942
+ "9685171750835271647846188024034904289604883281120913275229696726161494108338",
943
+ "13804722593058778047599265964893015518608567919815229008355552695901539135617",
944
+ "1"
945
+ ],
946
+ [
947
+ "133210224564739370698401112580329091433152068231765294734991529050629411851",
948
+ "6253365067148837443745536970484493754157158998156041417978340186561909915882",
949
+ "1"
950
+ ]
951
+ ],
952
+ [
953
+ [
954
+ "11594484527416994136900781664743660516883697944736099448760569480817952218099",
955
+ "5525949004768282420418522754788387377346850869414250693501350383184014395566",
956
+ "1"
957
+ ],
958
+ [
959
+ "13423677678153887686951876961584096043047689175638209759158420018856273430250",
960
+ "688554022717474500337948897714325469989973507431329797109415877246281679190",
961
+ "1"
962
+ ],
963
+ [
964
+ "5767985312159947447966233995178318554138266544591427341210101818005833690773",
965
+ "13782057493439290506357575012457041256926849070794382612465582256292384507590",
966
+ "1"
967
+ ],
968
+ [
969
+ "2009465632383454183075946487099156558696455704620200103263777377956167571948",
970
+ "10265570962161934109202420603055144010322859077969741656080416572925588897009",
971
+ "1"
972
+ ],
973
+ [
974
+ "13063467510206676485181697613068184940643350938488359709447602318070297992418",
975
+ "8824580488237789516855671915345935747743201560548603121129517348234754630838",
976
+ "1"
977
+ ]
978
+ ],
979
+ [
980
+ [
981
+ "15613862437263830065893280422700893831122147824370200118126675792748158214283",
982
+ "11637898091445829201992956909089879348463617460955895182594618572267100421779",
983
+ "1"
984
+ ],
985
+ [
986
+ "676470684249461112964281503193041675013396554434239929609436328672155420783",
987
+ "14862758280768060051884504554805186980208629806423451755599092137651959992706",
988
+ "1"
989
+ ],
990
+ [
991
+ "5623342967419780942118234966618900971275224510117264341831041912523393680166",
992
+ "12293742687505619727765346377361630310803471543338450439759434637239250426631",
993
+ "1"
994
+ ],
995
+ [
996
+ "17107107724389526013252251054585363312805578717860151655674796329456502453436",
997
+ "695490429984933474058785653390434166254929169748519672533632124843844650437",
998
+ "1"
999
+ ],
1000
+ [
1001
+ "7941603993861390710630117468483386570984050378175531457457840811645822985465",
1002
+ "19423663035279971057851778008344970269742436279020301703706239058210708410668",
1003
+ "1"
1004
+ ]
1005
+ ],
1006
+ [
1007
+ [
1008
+ "14178974435133537452754432783693851994073934244854394772136599698341675338748",
1009
+ "14490318493007296294817313593753116388501252549516359980240258503496717340194",
1010
+ "1"
1011
+ ],
1012
+ [
1013
+ "21219478166573360512901478467779541318881953172337799756939010190701884653821",
1014
+ "13653038712207413996195005796658436532811211815454701512198612316602372800026",
1015
+ "1"
1016
+ ],
1017
+ [
1018
+ "6606031466185873676955137126631780808678269492505994174970319773811652852017",
1019
+ "6998326006251734945119834407770954155028321677085545151592873301468610324946",
1020
+ "1"
1021
+ ],
1022
+ [
1023
+ "15717984973502827230694305820570642040862757036680118080574899662027439132392",
1024
+ "6129387663611887185666499162725019000386957238200546358846681873950634080364",
1025
+ "1"
1026
+ ],
1027
+ [
1028
+ "3229894653990057163047872622628926092609943988699832798310941005306795398260",
1029
+ "1577249093608064810495237122250056987651980088410811739655744853476971398741",
1030
+ "1"
1031
+ ]
1032
+ ],
1033
+ [
1034
+ [
1035
+ "21508024236353721936402111331734487542417525255582275314005272967405040862839",
1036
+ "18027689383014810715963711252886295463940938266456411644747464137365500951807",
1037
+ "1"
1038
+ ],
1039
+ [
1040
+ "14484077699638992615220759300878276902226958277985946809174186953862915299590",
1041
+ "4817080763362108602919187869554992685382108795016276838137423588157592666796",
1042
+ "1"
1043
+ ],
1044
+ [
1045
+ "10791657063117982548380087239678382293931165307389242284595466175088416832331",
1046
+ "17574587559710800088797913763598808892829608388483075257576879500511250128297",
1047
+ "1"
1048
+ ],
1049
+ [
1050
+ "20931338330271163055101602391315623325223860904427973201832184784566097488773",
1051
+ "1954574324880132355431783868495392698894997264747376529310223470792870288803",
1052
+ "1"
1053
+ ],
1054
+ [
1055
+ "2551137710278149502571112114560159376697849893483916552857521579500208583200",
1056
+ "3997814265160290573081282672183091638735659350920634229735367532175023689675",
1057
+ "1"
1058
+ ]
1059
+ ],
1060
+ [
1061
+ [
1062
+ "11844625750737259417493690805104254337758743574820507915512371579679338049474",
1063
+ "18479163117067129250021591308069049721232170743585134941796617403156042279597",
1064
+ "1"
1065
+ ],
1066
+ [
1067
+ "4434911559893931929914698652677389633068778061297646529129767359157675249407",
1068
+ "316682746098441691626372255125560321251096997722401729182940832349927288255",
1069
+ "1"
1070
+ ],
1071
+ [
1072
+ "19610390525670030492896894087745165507340241783776573708027658938288182681300",
1073
+ "5840208148535790468526125686220196099566194081164771919666034943299219873755",
1074
+ "1"
1075
+ ],
1076
+ [
1077
+ "3679027218793663842409677356801552901605408436635647286999251784339864591201",
1078
+ "9878321578558671609403512127325051261043472923444011356477587484000484178928",
1079
+ "1"
1080
+ ],
1081
+ [
1082
+ "16646455734597629493777237097088292344110223995728568379569260368267096014288",
1083
+ "14735311379463771264009437608444808852233202023120148855228542005281236140064",
1084
+ "1"
1085
+ ]
1086
+ ],
1087
+ [
1088
+ [
1089
+ "6922136549797750291447751953663854475218048098902194660515442295348938322083",
1090
+ "10287261443878564608994021014993200221021609196127927226041534661185500281120",
1091
+ "1"
1092
+ ],
1093
+ [
1094
+ "6329063805909277980282354325384845982783657973381777424581891744521604640994",
1095
+ "11017548748010510224711773916683171526878158646735796493859902304094594577338",
1096
+ "1"
1097
+ ],
1098
+ [
1099
+ "7338335804036221772945379382782674399589206056354184002757176151341198318122",
1100
+ "16538115574966264108203522400275571374556020887608210819563613080068710593180",
1101
+ "1"
1102
+ ],
1103
+ [
1104
+ "5138245976626127736555381649425906350640183768145541963359703291501245587848",
1105
+ "11347291457433539838423910567581114929056891897670787919546976342310334767900",
1106
+ "1"
1107
+ ],
1108
+ [
1109
+ "16731418617609356258989018213857655050257827940403117452476763890174877962606",
1110
+ "5300557287595854140445529914668848275536281916366261035684431572728600543772",
1111
+ "1"
1112
+ ]
1113
+ ],
1114
+ [
1115
+ [
1116
+ "6497446328454795535775520142893202697197882656922991300092165933292014766725",
1117
+ "4597431274747983679157649737399090093759447324935531801532881928263496852124",
1118
+ "1"
1119
+ ],
1120
+ [
1121
+ "20581664438782214735167492264807215952133504025063870863776714994387749970180",
1122
+ "5854805250432620287068939301087113989827350315462338534819773170350910225622",
1123
+ "1"
1124
+ ],
1125
+ [
1126
+ "13548539273975522227017059057161374261181128673406746320122994151943985128196",
1127
+ "7414800418339434590171697383031637744601564309993253226498272110927128779715",
1128
+ "1"
1129
+ ],
1130
+ [
1131
+ "1052987139013233499761917411027037646861657729931697227519754049539833189269",
1132
+ "657108667626796780066815408290681939596246857020023912757838581820942772606",
1133
+ "1"
1134
+ ],
1135
+ [
1136
+ "19088282520683145597098955555305422198780142332183007920340899996970202127885",
1137
+ "12616611543293706969401642310383814806112402432261338062963427055972449363741",
1138
+ "1"
1139
+ ]
1140
+ ],
1141
+ [
1142
+ [
1143
+ "305741399293956298249448376598537769086716682101868856634885453070917344627",
1144
+ "14942830908704142867090451021371809832404069532430585621173997534136021340349",
1145
+ "1"
1146
+ ],
1147
+ [
1148
+ "11873341523902185373029537495825388400298468809112431373607438726587086076801",
1149
+ "16566421774425889929886838459987430622148040878072136298073788804726016806526",
1150
+ "1"
1151
+ ],
1152
+ [
1153
+ "18314173705630320437871113612645566255775444265992974192826331109357704470403",
1154
+ "8597072000455186494551694692524831407069966911367008568012412188890924300508",
1155
+ "1"
1156
+ ],
1157
+ [
1158
+ "12713907619301764178052509321657058919935892208409394514649600000706175319189",
1159
+ "14893305145776480356274920935320977108910444566603040558476174175562031483300",
1160
+ "1"
1161
+ ],
1162
+ [
1163
+ "11027938853766719633497710751595847377263279173227878474215846011660771149283",
1164
+ "6927793728403485743741891409676155921703126599118383623637742555953569891357",
1165
+ "1"
1166
+ ]
1167
+ ],
1168
+ [
1169
+ [
1170
+ "37868753390676617287004841173348795594362354905038492583057282228528019603",
1171
+ "19475937072595290694509025801956972632863465524774747773770243946674956142538",
1172
+ "1"
1173
+ ],
1174
+ [
1175
+ "1818532521520079200500527816308109106767855745862413136331026404438772138114",
1176
+ "7893556755641665136576228990240239515272703124353568551151593029797349984766",
1177
+ "1"
1178
+ ],
1179
+ [
1180
+ "21843411659343488969197036446870567462789014279182131087406329675847260538394",
1181
+ "13883536936296384480685931731174096875043607202415233199362935327975006076376",
1182
+ "1"
1183
+ ],
1184
+ [
1185
+ "3061885619227488514362869971925298711535995206671454426027635264218303442708",
1186
+ "18477632669759047471715211461337808302603089797347923153039515976242018999984",
1187
+ "1"
1188
+ ],
1189
+ [
1190
+ "4953684980989921770137053964305439167945572062294709110871332076115076441738",
1191
+ "849590699713478394267684876803414882497887483062076673282369901261463387635",
1192
+ "1"
1193
+ ]
1194
+ ],
1195
+ [
1196
+ [
1197
+ "17761332237343741278668998123360108574589045018570742689473320560784505694171",
1198
+ "2985768806786881176362869973473950745997650698247163897069614623128281191971",
375
1199
  "1"
376
1200
  ],
377
1201
  [
378
- "19175554796060272870947844726785784415291967441071791144616572094703752022787",
379
- "14708716857471570462880683190724447733812118518043273649838616424043548023127",
1202
+ "14099532828736062687388547070054719462342298981811592749594569670955512096417",
1203
+ "11038429458121896617356666499000022639824993159854464409767840206807807728043",
380
1204
  "1"
381
1205
  ],
382
1206
  [
383
- "5109703116431086866657790821388182053265093586387384935734011036204399393630",
384
- "1612476077210311180626421664389270104678910550524363357381847966959374674423",
1207
+ "7092464867594165410092487979619486929166817679669939558999555261465867685619",
1208
+ "20690943609696626243672018055336898909740557628366317533030490341400911534771",
385
1209
  "1"
386
1210
  ],
387
1211
  [
388
- "16028984344157742576452936855797086856968817024956118691418341585143424903639",
389
- "6905323418829609143361434077039383502192920586565275784934386988372483556465",
1212
+ "11468803355345327303851639215186997122074583511720489615730106184659306943551",
1213
+ "9723340381470060111632263437706139036358918795037011403763820908081655273682",
390
1214
  "1"
391
1215
  ],
392
1216
  [
393
- "5037234187699234788733084505200789125332575456459095878140727750253994537245",
394
- "5152780378461098676484401284161685966625077837157208907964141131514955942959",
1217
+ "15929497108714526572140462634902391796285476840034863688822264979709196730555",
1218
+ "10556139316790113226399166507094772235069235781001645893008903131855134732783",
395
1219
  "1"
396
1220
  ]
397
1221
  ],
398
1222
  [
399
1223
  [
400
- "19573269191775350978579562905764743103417752180580176229566975904395505694207",
401
- "2381522187377974692257359562587606852360557473353020907100590706767276986457",
1224
+ "16018239095599670975582212156736908990475077583136160880304021421989907078233",
1225
+ "13442762142079759258078337448325782252795445513077684243558458356586404542166",
402
1226
  "1"
403
1227
  ],
404
1228
  [
405
- "3570865353993345507636525265023758855364727230473021611280650482974485897542",
406
- "3026650225811133060402545160946181194870257210933662802529138266788423022235",
1229
+ "8012524517439221218249889438165569497775551565363444399021079689755695756644",
1230
+ "18993442931337392722189844722480176040693468853419121807183123246184718322422",
407
1231
  "1"
408
1232
  ],
409
1233
  [
410
- "10948020004642082805202152014062303498984706484599503419636897666877701726029",
411
- "16425328653566008388486740080892552688012772956429074139489785673820307770702",
1234
+ "3920077716342530896195446297162279477088824676672184510151991496745985467962",
1235
+ "5663885918690734602622426696143772526257235018784490039324179199552252272203",
412
1236
  "1"
413
1237
  ],
414
1238
  [
415
- "20638502839000044414864636985783149953889799151008745227055624454042471377832",
416
- "977321369609271151576827768083353705509746900519279122286818202637470656742",
1239
+ "11007942216549411481832816505096362871539130535791764225892613523847180067807",
1240
+ "12333277086717649179464584335417603775633093807601488202185840108448843332123",
417
1241
  "1"
418
1242
  ],
419
1243
  [
420
- "18662986393280647182646025762677321210586855801774577114215804961111542726195",
421
- "9182414327249389553719378979750943052880001176853490206379257023646169811116",
1244
+ "18845646001611639216437777320622198530894193094859924604338859788769244491906",
1245
+ "4365664869724113934112630479809518948808449158812862195377335314227128146059",
422
1246
  "1"
423
1247
  ]
424
1248
  ],
425
1249
  [
426
1250
  [
427
- "1172653041469601107707030355715854571110526375194334139771259673595104816259",
428
- "139822645729727942447876327389754883087551266970976361358585992124005959663",
1251
+ "9724485076061228092177286932258189815958450833155679889060988975712535081230",
1252
+ "1627333086421877964064603957348348763696708139082607562629629725119997724989",
429
1253
  "1"
430
1254
  ],
431
1255
  [
432
- "807568760006422352594797418374693945705914727214443753238278163089338607471",
433
- "19362805143026565781098954744725161233661862485826387437200176803022106919133",
1256
+ "15641874381988682075545920458678901707167602315586561132909307694310257446023",
1257
+ "11034182059786563285109970430313289917032071817373248775707546493147901388113",
434
1258
  "1"
435
1259
  ],
436
1260
  [
437
- "9457043262004277983171082100772969689099515860060732671699192102623198243288",
438
- "19229090298682361289811638032020124933114889462217199961448135904896325661193",
1261
+ "19299574745226772810381056007321573284793444116746272581694295128392282602507",
1262
+ "6482638271546132546782310681506292669989505915370438641175376336582811537739",
439
1263
  "1"
440
1264
  ],
441
1265
  [
442
- "18883326163102164343877677909116984239805709949130729675634413304023108763212",
443
- "2795333364660917174391473381893559091159208514832297547909172862364581446206",
1266
+ "5515138970831679245126906315331906152285174207704247085730757090763031968272",
1267
+ "5476746571008230667726688443817396210804752373221945489797046634505665572661",
444
1268
  "1"
445
1269
  ],
446
1270
  [
447
- "18012979848063967305324818138773222084850070233834350625943804711450349870116",
448
- "11425098272720529401115253745902976848228234025625773037823969253767737500443",
1271
+ "7666694240010574980777401583687953099995588711474009270339615112182231942529",
1272
+ "5345423812126487230177352826531606752132805611025916574123407915411930666385",
449
1273
  "1"
450
1274
  ]
451
1275
  ],
452
1276
  [
453
1277
  [
454
- "5735580005765404165535708760854311053102182143614810924129912232734875728422",
455
- "12547270286864340931439010083179993915942911007015778927394042746771813715897",
1278
+ "3527954161191330198309290076708590175518992377857531220243324230315686986882",
1279
+ "4506493800007416260514839382433205292331764028735360433653631210611507932973",
456
1280
  "1"
457
1281
  ],
458
1282
  [
459
- "17861179987982979247789643870162154315308943006677455616368767345181299723498",
460
- "12520843301982976970226379882714814545061255956743392202788539428471921045815",
1283
+ "5530043493028748853396066194331787195114268917530734310055878976603589658986",
1284
+ "6225101949608434111198442012357272827532649788667254718474232856896193900534",
461
1285
  "1"
462
1286
  ],
463
1287
  [
464
- "709419095293140562723620898844593712074413125125086760533949250121053456086",
465
- "20254885558410038279405227446341995510955697359900050994091569463713580982280",
1288
+ "18857681750145313162493356993928966938826030906289025101399379263672964054354",
1289
+ "869004496821135911657110194622810910776043851317139916414752924319830673140",
466
1290
  "1"
467
1291
  ],
468
1292
  [
469
- "8876829807505794597615690202974184696287415186921508358861381955321520402876",
470
- "9692396410060123455009190221005078571838194435772371581970098240972280778466",
1293
+ "1563829187789877652048924285544523323087888587074484491222967490033068091506",
1294
+ "3746011388196035005128740753677692387874351474501361202463946309770129429478",
471
1295
  "1"
472
1296
  ],
473
1297
  [
474
- "11541729643712807778212647011796800767186857085220105751644556558522744760878",
475
- "7117533920695574619512162711113223946930183977424569115798612426749467545080",
1298
+ "8923361680602360491637539340186330583808472610027697444204036893010926051377",
1299
+ "17386658730777389148551542774423634880430074554050371095211396948875032586750",
476
1300
  "1"
477
1301
  ]
478
1302
  ],
479
1303
  [
480
1304
  [
481
- "7022760843802757109079393624924627417630030139055381384837279305453559861026",
482
- "14368180091281110030022253036601349874026580767275461373222397498585380849175",
1305
+ "18030052417377603682453955579175094175373404791176719861146533099419481910116",
1306
+ "8281176924556272137773300347187527516223668703826908452855802099328657344885",
483
1307
  "1"
484
1308
  ],
485
1309
  [
486
- "20362090815079102760789516334841889611927869342884580401494938701237909313479",
487
- "11683916255585393494577805363227207275174890005674166623110857790951330330248",
1310
+ "11849913964821118293258226409033507680960291656604016015128854810099746642358",
1311
+ "2718653438901851962181612429288634518502998150085578586248082443515454453331",
488
1312
  "1"
489
1313
  ],
490
1314
  [
491
- "21680925564107543632769644144771629045807478787600735681275069556336841549441",
492
- "1554686039880869088226596836931999292372497423378849142389700108361111176287",
1315
+ "17998120665039026798317726060462551095622279047136565816648549826384179735803",
1316
+ "5133986071087432716437635164720916024596119526725252628340805179596147643344",
493
1317
  "1"
494
1318
  ],
495
1319
  [
496
- "9553151402225656007352139561853210183786116738154807824913092141416366824324",
497
- "21774504332021003611111291017295441063483107704370481606906960187337904118400",
1320
+ "10436725621240227608920674037516192343160590540839553356331196590007025190330",
1321
+ "15618861474705274368161439159831328775613537777134266634959100526889759124590",
498
1322
  "1"
499
1323
  ],
500
1324
  [
501
- "3472743162059388238264946309663113383560193397376658519781344886918012396958",
502
- "21850707327192737842691835772722844106916466129654852946865863108319178245521",
1325
+ "2511040106219966488942941427805413210834998861588095124665874406004322450915",
1326
+ "9256734357641210393451356199893573129989430877284906007481196262323584132500",
503
1327
  "1"
504
1328
  ]
505
1329
  ],
506
1330
  [
507
1331
  [
508
- "14007544454490183581525584522132854274412440955138184221862170710084681738226",
509
- "9427297140302346741340407818949601657384670126565058224960470754064287232598",
1332
+ "14565877561081097978808851096191380459292726072163754601747539666057949167693",
1333
+ "2135718143241813932226161801358235289781058013695871838383051572102928884567",
510
1334
  "1"
511
1335
  ],
512
1336
  [
513
- "9424279417196769259939653963004219272435595656090601392111859177294419276463",
514
- "5159704841441138198509282351301933053602549958584575945916187562678590534936",
1337
+ "20522747851108608773003772892187458826390403588440155512773881116135635256410",
1338
+ "11218511591600821722003994140994121719832310771637604152054113941332818455369",
515
1339
  "1"
516
1340
  ],
517
1341
  [
518
- "5934282708091541939003757621608766449985810436411564642900129758520734711260",
519
- "6572936900512215029112509161886160866328777917297795430264727434969553346474",
1342
+ "16404237709834224719800904205708261378663612035126521203425485585484994986837",
1343
+ "3167586669955731698085513002461997957955073343333183557668566807567186590619",
520
1344
  "1"
521
1345
  ],
522
1346
  [
523
- "17332317297867087005634642159909283377570778576256008720318658354552654813365",
524
- "20469716791176463599463762213563135543375669917658488173798369718370224346075",
1347
+ "12910675356590890481798719900077391291951346627685199305549632303581651173802",
1348
+ "20462953503625657093808736208830478011818679863351201550868889073055617578896",
525
1349
  "1"
526
1350
  ],
527
1351
  [
528
- "11895216520141526042182770992519307655836464153974170586288146149131884093776",
529
- "2345310584279491449819095573562431881564998414485162753036518957549727207513",
1352
+ "18947108562530644410102590841857357185115081182319111952079371871969663671988",
1353
+ "6652719222291337824561052377450295064566587460338214284424446330320206208978",
530
1354
  "1"
531
1355
  ]
532
1356
  ],
533
1357
  [
534
1358
  [
535
- "15084362489402846752495176069529022447007294106313236924068931072406922960482",
536
- "17446301099629553693162731281967866078816607293341610477850995414321505446665",
1359
+ "10110377608880446364161064735161091842938826397512230713135002732708361876777",
1360
+ "6013899729219769410326935661934883558337463050053435907100782150692294649745",
537
1361
  "1"
538
1362
  ],
539
1363
  [
540
- "15416633712259927998995598381829216728913683600537032862643171407716059372732",
541
- "6910124994917236999728700744617337824847623550680442113266553962793201270115",
1364
+ "18208889227209298598015138525374980382541030144328510393048300775270787949840",
1365
+ "15191444075449840811990314906356975059662539527217455842253932605838538105879",
542
1366
  "1"
543
1367
  ],
544
1368
  [
545
- "3240338086312503075747637551773566329150860621223080774242357236897458479365",
546
- "9706162939164863315053907226494918827393300584078535638283184502242772542378",
1369
+ "19203188682890514423320800755662084436821947463936810212920115637567986869322",
1370
+ "3424855308164288636262956984024538145687254883958282264766019244372264927134",
547
1371
  "1"
548
1372
  ],
549
1373
  [
550
- "3821371825593696440611637099905775310839636477646533943959149234595561019388",
551
- "12220054708690507765048929995921680127285008492320123722886943219569231705313",
1374
+ "19586353501601321585672146098476085745700368665390426128801697725086439710122",
1375
+ "15010004828387861046033155948517332272437733117418549079342100218646019702080",
552
1376
  "1"
553
1377
  ],
554
1378
  [
555
- "16484014909498227505527128570845947338361237083477117662394990633734193572570",
556
- "15639273550026538537711009501005182488432976272250651065072907504931158455474",
1379
+ "13686339229559293872534012092085760944059315023471369613822812965287369238447",
1380
+ "3695584012986626869153168308549979767804807828687034680677188403817830418810",
557
1381
  "1"
558
1382
  ]
559
1383
  ],
560
1384
  [
561
1385
  [
562
- "7289543915982634578897897440956973302403422297539950338836810160596047457980",
563
- "15177295033774438197517772642364420015492974487860823338193520175227862903717",
1386
+ "18696621645163318552472841991871104820660024833640321869898695219244792544787",
1387
+ "16940838088709411711968888146075539661653566927745755478421474505108166140656",
564
1388
  "1"
565
1389
  ],
566
1390
  [
567
- "5412509155867259433944542755241941469706034032614068890113478300647952353475",
568
- "16755045912589178729548422106539306191579601567866216267685082373250783779841",
1391
+ "11530916114120676768574532193664705720045810431665651204245333670674998923676",
1392
+ "7355883923626920336916662475522243088902821161113628716197989160163721774248",
569
1393
  "1"
570
1394
  ],
571
1395
  [
572
- "844425885324371282218176954530597075058496766373014736097970493596574863875",
573
- "12323478340077628423886836431146436403221716179764806398442271274194718652143",
1396
+ "11855011297239142909723378707832446926509921514737098047687587969894126468497",
1397
+ "14942813403879667533705178220673159254886774089783887482228941707848831481300",
574
1398
  "1"
575
1399
  ],
576
1400
  [
577
- "19468406721151512215981453048984639951787280312568894384216547824763527840472",
578
- "6512636337641737270183934024333064400224464644359645491020358650071524340464",
1401
+ "12982663140753853847528768000921561826340636419307931766400467366396846035169",
1402
+ "7171806600323437636744282845777660095738436086868856062406225133619265520575",
579
1403
  "1"
580
1404
  ],
581
1405
  [
582
- "8198878215192784492258585011520207242810327647198332623948351347768018051267",
583
- "8014960150646978739731831763393714179490854831922196242908407049327430863238",
1406
+ "15982491779929281894294451486893882850583039973528579274058985191703359466543",
1407
+ "19910319651211685401050894240685395121165652955380089146603485967076493605680",
584
1408
  "1"
585
1409
  ]
586
1410
  ],
587
1411
  [
588
1412
  [
589
- "9107882721143487446664847981273782313316003453386555221878701631432129058401",
590
- "9441695541513726822451572070540177043748046411169636568582927338148104680158",
1413
+ "17688699129722255312471132988267997472426043097741089176095207368928695347323",
1414
+ "4698778325800416923484519718058460264124242609977080857699400967590134848728",
591
1415
  "1"
592
1416
  ],
593
1417
  [
594
- "8987068930426301924419900826390508311526176863992306858982473479912439758010",
595
- "1725109031239210601724581840155988791039497876559382612372874257775877974323",
1418
+ "11905991584861721837480962390330989450197421918781662074678555052926188909272",
1419
+ "11195321655863853696452219195252788379254952714823481930861848719672010792417",
596
1420
  "1"
597
1421
  ],
598
1422
  [
599
- "18516110346729610211387987894593386281257834088357741109524145966500785499183",
600
- "114078214476076549461901405178268623018026929846201249476869510133510589766",
1423
+ "7364573423043519994861038175593500896079924196888521130462378149111415036167",
1424
+ "8488161531239994007634631892382512438657593769374020273048837520623507271908",
601
1425
  "1"
602
1426
  ],
603
1427
  [
604
- "15915940069177053049090451855582611051242699463952201407239272373068542013292",
605
- "9373936080407194259749015269175580128112032582312467763484971165406599176646",
1428
+ "10948897450624334536526533930990935852623955696383743452358741253735922067160",
1429
+ "7654175296077985337834288232610181411799310934515705881481549241949669590123",
606
1430
  "1"
607
1431
  ],
608
1432
  [
609
- "4922802633190996456945600288106639549790810185209505074744770090776471062338",
610
- "8883001810279320778962047313612748029483858862205749774979015238684570049088",
1433
+ "2456818423512317060112219756429819064402183920202453945509918337536940292593",
1434
+ "10561627566351771351550703479997725668661012955063201536370060753602302262655",
611
1435
  "1"
612
1436
  ]
613
1437
  ],
614
1438
  [
615
1439
  [
616
- "14718035764669896417897962215694711502145567157050183561348015124983050763912",
617
- "16468329864686708461615593125586840110548434159129257976547738477143616225069",
1440
+ "21295163659036117126535933666532228255134275601226122998452204301238438701469",
1441
+ "12010652807420347304532358791037860496459429689113682253200903987591679627067",
618
1442
  "1"
619
1443
  ],
620
1444
  [
621
- "19316680422470456517825967239402234468963225932355881906076897312088976727808",
622
- "3793008941035953637072065313624049788550692955904011087840457148221740889857",
1445
+ "16035147304145989851106586435462674695447030608653337914734493255503105122271",
1446
+ "9396862051344040260236487045030117425080665841603826234795752404308634565281",
623
1447
  "1"
624
1448
  ],
625
1449
  [
626
- "8994123619474927749524041243795236789619386871069943230512200348341409025802",
627
- "2898455184193535874162795400065700362364113037155462125222703939894764399559",
1450
+ "9623434193020540057685957851610556657916120473978726845338192370747426064401",
1451
+ "20738972702824723087864078264786214906718601061526079118500228332898388551221",
628
1452
  "1"
629
1453
  ],
630
1454
  [
631
- "7006987736985681119096469806956612323700302986805047546691419062106874738669",
632
- "6578526693577992862738197741211972861837397562647850241473856881198749597774",
1455
+ "457108501000029082366810998923133233303603111079376685755578228260824733356",
1456
+ "13918719735797746251051948238671198059940858851588937008268023917020073366433",
633
1457
  "1"
634
1458
  ],
635
1459
  [
636
- "18253609658317686864081972526657430282945609846265497350129963610508303097865",
637
- "20602454323920106770928127673050173555696255204782817307960073152139829286712",
1460
+ "19519317439483352367895890468095276150233498159453735432212409926941855183358",
1461
+ "8400170000010792082337905010575114377571921640630709589910201278654198179035",
638
1462
  "1"
639
1463
  ]
640
1464
  ],
641
1465
  [
642
1466
  [
643
- "18387700354891683161007139598833533459740755646851082725263944626765753998128",
644
- "8496770255291121655312305725645117658510206297162207504909146686627154245846",
1467
+ "209896847902324756441033880218169809685412620378498856437573937154846479551",
1468
+ "19434208870058033389225349051527401299247475125763108527095891214558119617655",
645
1469
  "1"
646
1470
  ],
647
1471
  [
648
- "3295351580633631545204707236418977224205703294426182202748223245617942752953",
649
- "11318533876720817956139762907441156918032396007060817178042936071438547629319",
1472
+ "4154375339831547300427516624109559852426973786711444825735879648391004291098",
1473
+ "2168897082728012692838287354581700563166925732559863316849698306675591131396",
650
1474
  "1"
651
1475
  ],
652
1476
  [
653
- "9798692489110933308397734193670030418121117030189402149994776248649813971130",
654
- "7253879530870754821836349446054636336833607432103959373798000294248292966203",
1477
+ "3690054103601385333490512469861728231387681704127049683413276534001532261943",
1478
+ "3997073653940540957268729302105309759820513901669570962308110503858257659002",
655
1479
  "1"
656
1480
  ],
657
1481
  [
658
- "21808645514001764351825515375665639285586999794992628373968527911077248645185",
659
- "2859748802987042398453158245958377568437550705999358391809538153774651114865",
1482
+ "1493108383089723041516694658460301260449183718295935886883417227290045091286",
1483
+ "1479721274324005701970059663387618978577823761358404739977258141309872068056",
660
1484
  "1"
661
1485
  ],
662
1486
  [
663
- "4373537692781319117201803895634857716202697229097770645380222493663057011429",
664
- "21723556418902236605356947828522543021755681613733490227407492902239152334538",
1487
+ "20291086357406391640638647514048720424247838755446061571102712546958076851767",
1488
+ "6860718845648137601753080432837091439893783461195961430761483584544410630099",
665
1489
  "1"
666
1490
  ]
667
1491
  ],
668
1492
  [
669
1493
  [
670
- "4147129560663007063799754603731275683761368247704376766576071776957227165800",
671
- "7032402220603422034618210155106646820962552774510253688945919060625670415308",
1494
+ "1265438250797513961458031163301351393237543067943565114202366151377865506872",
1495
+ "11342865295714982458109220575532930834959120923837779800176462280225501198217",
672
1496
  "1"
673
1497
  ],
674
1498
  [
675
- "5241022678363371404039324538224070321660623527603509392150146296843642044363",
676
- "5281273397025328620822441453790518717375265972202147684745427714882287252791",
1499
+ "10415384677581396651184780193811022815145977389536746022901590915883889609878",
1500
+ "5311187015233522007413118391261106264838418369874755037462489089469638365756",
677
1501
  "1"
678
1502
  ],
679
1503
  [
680
- "8109626675067152219533782552336308649905522111608563670382254454484448073029",
681
- "4696661232179595878220108186097206302552300846640109174608389689072223809776",
1504
+ "7499079368996193403750547553190134606728655877653629403923945654291953825315",
1505
+ "1743769713774086589463238504150542785039161133276706463569974209707667651575",
682
1506
  "1"
683
1507
  ],
684
1508
  [
685
- "13974026846148052806722306435446895222317781098029808723550029071117080027133",
686
- "14451415757463182353662034231421738047130904367363697865823311429455557043904",
1509
+ "5792276842105452143354445764064878932177699791644537942211472215636738768211",
1510
+ "9443070058088199873709166495831389298947366881168483562080569357428781583046",
687
1511
  "1"
688
1512
  ],
689
1513
  [
690
- "9490728148230530026163178051838213576627639298618884515939110001242292217290",
691
- "227687333556127166330064214209948378192130717415165040791158610964406937909",
1514
+ "14451507664847323254023899990839043037382802537389529773382951366995420730648",
1515
+ "7633550475637360595097128986678209600092185294414596687526062925070686318486",
692
1516
  "1"
693
1517
  ]
694
1518
  ]