blob: a680850f8ec962abddc9beca62fabd9b517af43e [file] [log] [blame]
Steven Valdez909b19f2016-11-21 15:35:44 -05001# Negation tests.
2#
3# The following tests satisfy A = -B (mod P).
4
5Test = Negate
6A = 0000000000000000000000000000000000000000000000000000000000000000
7B = 0000000000000000000000000000000000000000000000000000000000000000
8
9Test = Negate
10A = 0000000000000000000000000000000000000000000000000000000000000001
11B = ffffffff00000001000000000000000000000000fffffffffffffffffffffffe
12
13Test = Negate
14A = 0000000000000000000000000000000000000000000000000000000000000003
15B = ffffffff00000001000000000000000000000000fffffffffffffffffffffffc
16
17Test = Negate
18A = 0000000000000000000000000000000000000000000000000000000000000007
19B = ffffffff00000001000000000000000000000000fffffffffffffffffffffff8
20
21Test = Negate
22A = 000000000000000000000000000000000000000000000000000000000000000f
23B = ffffffff00000001000000000000000000000000fffffffffffffffffffffff0
24
25Test = Negate
26A = 000000000000000000000000000000000000000000000000000000000000001f
27B = ffffffff00000001000000000000000000000000ffffffffffffffffffffffe0
28
29Test = Negate
30A = 000000000000000000000000000000000000000000000000000000000000003f
31B = ffffffff00000001000000000000000000000000ffffffffffffffffffffffc0
32
33Test = Negate
34A = 000000000000000000000000000000000000000000000000000000000000007f
35B = ffffffff00000001000000000000000000000000ffffffffffffffffffffff80
36
37Test = Negate
38A = 00000000000000000000000000000000000000000000000000000000000000ff
39B = ffffffff00000001000000000000000000000000ffffffffffffffffffffff00
40
41Test = Negate
42A = 00000000000000000000000000000000000000000000000000000000000001ff
43B = ffffffff00000001000000000000000000000000fffffffffffffffffffffe00
44
45Test = Negate
46A = 00000000000000000000000000000000000000000000000000000000000003ff
47B = ffffffff00000001000000000000000000000000fffffffffffffffffffffc00
48
49Test = Negate
50A = 00000000000000000000000000000000000000000000000000000000000007ff
51B = ffffffff00000001000000000000000000000000fffffffffffffffffffff800
52
53Test = Negate
54A = 0000000000000000000000000000000000000000000000000000000000000fff
55B = ffffffff00000001000000000000000000000000fffffffffffffffffffff000
56
57Test = Negate
58A = 0000000000000000000000000000000000000000000000000000000000001fff
59B = ffffffff00000001000000000000000000000000ffffffffffffffffffffe000
60
61Test = Negate
62A = 0000000000000000000000000000000000000000000000000000000000003fff
63B = ffffffff00000001000000000000000000000000ffffffffffffffffffffc000
64
65Test = Negate
66A = 0000000000000000000000000000000000000000000000000000000000007fff
67B = ffffffff00000001000000000000000000000000ffffffffffffffffffff8000
68
69Test = Negate
70A = 000000000000000000000000000000000000000000000000000000000000ffff
71B = ffffffff00000001000000000000000000000000ffffffffffffffffffff0000
72
73Test = Negate
74A = 000000000000000000000000000000000000000000000000000000000001ffff
75B = ffffffff00000001000000000000000000000000fffffffffffffffffffe0000
76
77Test = Negate
78A = 000000000000000000000000000000000000000000000000000000000003ffff
79B = ffffffff00000001000000000000000000000000fffffffffffffffffffc0000
80
81Test = Negate
82A = 000000000000000000000000000000000000000000000000000000000007ffff
83B = ffffffff00000001000000000000000000000000fffffffffffffffffff80000
84
85Test = Negate
86A = 00000000000000000000000000000000000000000000000000000000000fffff
87B = ffffffff00000001000000000000000000000000fffffffffffffffffff00000
88
89Test = Negate
90A = 00000000000000000000000000000000000000000000000000000000001fffff
91B = ffffffff00000001000000000000000000000000ffffffffffffffffffe00000
92
93Test = Negate
94A = 00000000000000000000000000000000000000000000000000000000003fffff
95B = ffffffff00000001000000000000000000000000ffffffffffffffffffc00000
96
97Test = Negate
98A = 00000000000000000000000000000000000000000000000000000000007fffff
99B = ffffffff00000001000000000000000000000000ffffffffffffffffff800000
100
101Test = Negate
102A = 0000000000000000000000000000000000000000000000000000000000ffffff
103B = ffffffff00000001000000000000000000000000ffffffffffffffffff000000
104
105Test = Negate
106A = 0000000000000000000000000000000000000000000000000000000001ffffff
107B = ffffffff00000001000000000000000000000000fffffffffffffffffe000000
108
109Test = Negate
110A = 0000000000000000000000000000000000000000000000000000000003ffffff
111B = ffffffff00000001000000000000000000000000fffffffffffffffffc000000
112
113Test = Negate
114A = 0000000000000000000000000000000000000000000000000000000007ffffff
115B = ffffffff00000001000000000000000000000000fffffffffffffffff8000000
116
117Test = Negate
118A = 000000000000000000000000000000000000000000000000000000000fffffff
119B = ffffffff00000001000000000000000000000000fffffffffffffffff0000000
120
121Test = Negate
122A = 000000000000000000000000000000000000000000000000000000001fffffff
123B = ffffffff00000001000000000000000000000000ffffffffffffffffe0000000
124
125Test = Negate
126A = 000000000000000000000000000000000000000000000000000000003fffffff
127B = ffffffff00000001000000000000000000000000ffffffffffffffffc0000000
128
129Test = Negate
130A = 000000000000000000000000000000000000000000000000000000007fffffff
131B = ffffffff00000001000000000000000000000000ffffffffffffffff80000000
132
133Test = Negate
134A = 00000000000000000000000000000000000000000000000000000000ffffffff
135B = ffffffff00000001000000000000000000000000ffffffffffffffff00000000
136
137Test = Negate
138A = 00000000000000000000000000000000000000000000000000000001ffffffff
139B = ffffffff00000001000000000000000000000000fffffffffffffffe00000000
140
141Test = Negate
142A = 00000000000000000000000000000000000000000000000000000003ffffffff
143B = ffffffff00000001000000000000000000000000fffffffffffffffc00000000
144
145Test = Negate
146A = 00000000000000000000000000000000000000000000000000000007ffffffff
147B = ffffffff00000001000000000000000000000000fffffffffffffff800000000
148
149Test = Negate
150A = 0000000000000000000000000000000000000000000000000000000fffffffff
151B = ffffffff00000001000000000000000000000000fffffffffffffff000000000
152
153Test = Negate
154A = 0000000000000000000000000000000000000000000000000000001fffffffff
155B = ffffffff00000001000000000000000000000000ffffffffffffffe000000000
156
157Test = Negate
158A = 0000000000000000000000000000000000000000000000000000003fffffffff
159B = ffffffff00000001000000000000000000000000ffffffffffffffc000000000
160
161Test = Negate
162A = 0000000000000000000000000000000000000000000000000000007fffffffff
163B = ffffffff00000001000000000000000000000000ffffffffffffff8000000000
164
165Test = Negate
166A = 000000000000000000000000000000000000000000000000000000ffffffffff
167B = ffffffff00000001000000000000000000000000ffffffffffffff0000000000
168
169Test = Negate
170A = 000000000000000000000000000000000000000000000000000001ffffffffff
171B = ffffffff00000001000000000000000000000000fffffffffffffe0000000000
172
173Test = Negate
174A = 000000000000000000000000000000000000000000000000000003ffffffffff
175B = ffffffff00000001000000000000000000000000fffffffffffffc0000000000
176
177Test = Negate
178A = 000000000000000000000000000000000000000000000000000007ffffffffff
179B = ffffffff00000001000000000000000000000000fffffffffffff80000000000
180
181Test = Negate
182A = 00000000000000000000000000000000000000000000000000000fffffffffff
183B = ffffffff00000001000000000000000000000000fffffffffffff00000000000
184
185Test = Negate
186A = 00000000000000000000000000000000000000000000000000001fffffffffff
187B = ffffffff00000001000000000000000000000000ffffffffffffe00000000000
188
189Test = Negate
190A = 00000000000000000000000000000000000000000000000000003fffffffffff
191B = ffffffff00000001000000000000000000000000ffffffffffffc00000000000
192
193Test = Negate
194A = 00000000000000000000000000000000000000000000000000007fffffffffff
195B = ffffffff00000001000000000000000000000000ffffffffffff800000000000
196
197Test = Negate
198A = 0000000000000000000000000000000000000000000000000000ffffffffffff
199B = ffffffff00000001000000000000000000000000ffffffffffff000000000000
200
201Test = Negate
202A = 0000000000000000000000000000000000000000000000000001ffffffffffff
203B = ffffffff00000001000000000000000000000000fffffffffffe000000000000
204
205Test = Negate
206A = 0000000000000000000000000000000000000000000000000003ffffffffffff
207B = ffffffff00000001000000000000000000000000fffffffffffc000000000000
208
209Test = Negate
210A = 0000000000000000000000000000000000000000000000000007ffffffffffff
211B = ffffffff00000001000000000000000000000000fffffffffff8000000000000
212
213Test = Negate
214A = 000000000000000000000000000000000000000000000000000fffffffffffff
215B = ffffffff00000001000000000000000000000000fffffffffff0000000000000
216
217Test = Negate
218A = 000000000000000000000000000000000000000000000000001fffffffffffff
219B = ffffffff00000001000000000000000000000000ffffffffffe0000000000000
220
221Test = Negate
222A = 000000000000000000000000000000000000000000000000003fffffffffffff
223B = ffffffff00000001000000000000000000000000ffffffffffc0000000000000
224
225Test = Negate
226A = 000000000000000000000000000000000000000000000000007fffffffffffff
227B = ffffffff00000001000000000000000000000000ffffffffff80000000000000
228
229Test = Negate
230A = 00000000000000000000000000000000000000000000000000ffffffffffffff
231B = ffffffff00000001000000000000000000000000ffffffffff00000000000000
232
233Test = Negate
234A = 00000000000000000000000000000000000000000000000001ffffffffffffff
235B = ffffffff00000001000000000000000000000000fffffffffe00000000000000
236
237Test = Negate
238A = 00000000000000000000000000000000000000000000000003ffffffffffffff
239B = ffffffff00000001000000000000000000000000fffffffffc00000000000000
240
241Test = Negate
242A = 00000000000000000000000000000000000000000000000007ffffffffffffff
243B = ffffffff00000001000000000000000000000000fffffffff800000000000000
244
245Test = Negate
246A = 0000000000000000000000000000000000000000000000000fffffffffffffff
247B = ffffffff00000001000000000000000000000000fffffffff000000000000000
248
249Test = Negate
250A = 0000000000000000000000000000000000000000000000001fffffffffffffff
251B = ffffffff00000001000000000000000000000000ffffffffe000000000000000
252
253Test = Negate
254A = 0000000000000000000000000000000000000000000000003fffffffffffffff
255B = ffffffff00000001000000000000000000000000ffffffffc000000000000000
256
257Test = Negate
258A = 0000000000000000000000000000000000000000000000007fffffffffffffff
259B = ffffffff00000001000000000000000000000000ffffffff8000000000000000
260
261Test = Negate
262A = 000000000000000000000000000000000000000000000000ffffffffffffffff
263B = ffffffff00000001000000000000000000000000ffffffff0000000000000000
264
265Test = Negate
266A = 000000000000000000000000000000000000000000000001ffffffffffffffff
267B = ffffffff00000001000000000000000000000000fffffffe0000000000000000
268
269Test = Negate
270A = 000000000000000000000000000000000000000000000003ffffffffffffffff
271B = ffffffff00000001000000000000000000000000fffffffc0000000000000000
272
273Test = Negate
274A = 000000000000000000000000000000000000000000000007ffffffffffffffff
275B = ffffffff00000001000000000000000000000000fffffff80000000000000000
276
277Test = Negate
278A = 00000000000000000000000000000000000000000000000fffffffffffffffff
279B = ffffffff00000001000000000000000000000000fffffff00000000000000000
280
281Test = Negate
282A = 00000000000000000000000000000000000000000000001fffffffffffffffff
283B = ffffffff00000001000000000000000000000000ffffffe00000000000000000
284
285Test = Negate
286A = 00000000000000000000000000000000000000000000003fffffffffffffffff
287B = ffffffff00000001000000000000000000000000ffffffc00000000000000000
288
289Test = Negate
290A = 00000000000000000000000000000000000000000000007fffffffffffffffff
291B = ffffffff00000001000000000000000000000000ffffff800000000000000000
292
293Test = Negate
294A = 0000000000000000000000000000000000000000000000ffffffffffffffffff
295B = ffffffff00000001000000000000000000000000ffffff000000000000000000
296
297Test = Negate
298A = 0000000000000000000000000000000000000000000001ffffffffffffffffff
299B = ffffffff00000001000000000000000000000000fffffe000000000000000000
300
301Test = Negate
302A = 0000000000000000000000000000000000000000000003ffffffffffffffffff
303B = ffffffff00000001000000000000000000000000fffffc000000000000000000
304
305Test = Negate
306A = 0000000000000000000000000000000000000000000007ffffffffffffffffff
307B = ffffffff00000001000000000000000000000000fffff8000000000000000000
308
309Test = Negate
310A = 000000000000000000000000000000000000000000000fffffffffffffffffff
311B = ffffffff00000001000000000000000000000000fffff0000000000000000000
312
313Test = Negate
314A = 000000000000000000000000000000000000000000001fffffffffffffffffff
315B = ffffffff00000001000000000000000000000000ffffe0000000000000000000
316
317Test = Negate
318A = 000000000000000000000000000000000000000000003fffffffffffffffffff
319B = ffffffff00000001000000000000000000000000ffffc0000000000000000000
320
321Test = Negate
322A = 000000000000000000000000000000000000000000007fffffffffffffffffff
323B = ffffffff00000001000000000000000000000000ffff80000000000000000000
324
325Test = Negate
326A = 00000000000000000000000000000000000000000000ffffffffffffffffffff
327B = ffffffff00000001000000000000000000000000ffff00000000000000000000
328
329Test = Negate
330A = 00000000000000000000000000000000000000000001ffffffffffffffffffff
331B = ffffffff00000001000000000000000000000000fffe00000000000000000000
332
333Test = Negate
334A = 00000000000000000000000000000000000000000003ffffffffffffffffffff
335B = ffffffff00000001000000000000000000000000fffc00000000000000000000
336
337Test = Negate
338A = 00000000000000000000000000000000000000000007ffffffffffffffffffff
339B = ffffffff00000001000000000000000000000000fff800000000000000000000
340
341Test = Negate
342A = 0000000000000000000000000000000000000000000fffffffffffffffffffff
343B = ffffffff00000001000000000000000000000000fff000000000000000000000
344
345Test = Negate
346A = 0000000000000000000000000000000000000000001fffffffffffffffffffff
347B = ffffffff00000001000000000000000000000000ffe000000000000000000000
348
349Test = Negate
350A = 0000000000000000000000000000000000000000003fffffffffffffffffffff
351B = ffffffff00000001000000000000000000000000ffc000000000000000000000
352
353Test = Negate
354A = 0000000000000000000000000000000000000000007fffffffffffffffffffff
355B = ffffffff00000001000000000000000000000000ff8000000000000000000000
356
357Test = Negate
358A = 000000000000000000000000000000000000000000ffffffffffffffffffffff
359B = ffffffff00000001000000000000000000000000ff0000000000000000000000
360
361Test = Negate
362A = 000000000000000000000000000000000000000001ffffffffffffffffffffff
363B = ffffffff00000001000000000000000000000000fe0000000000000000000000
364
365Test = Negate
366A = 000000000000000000000000000000000000000003ffffffffffffffffffffff
367B = ffffffff00000001000000000000000000000000fc0000000000000000000000
368
369Test = Negate
370A = 000000000000000000000000000000000000000007ffffffffffffffffffffff
371B = ffffffff00000001000000000000000000000000f80000000000000000000000
372
373Test = Negate
374A = 00000000000000000000000000000000000000000fffffffffffffffffffffff
375B = ffffffff00000001000000000000000000000000f00000000000000000000000
376
377Test = Negate
378A = 00000000000000000000000000000000000000001fffffffffffffffffffffff
379B = ffffffff00000001000000000000000000000000e00000000000000000000000
380
381Test = Negate
382A = 00000000000000000000000000000000000000003fffffffffffffffffffffff
383B = ffffffff00000001000000000000000000000000c00000000000000000000000
384
385Test = Negate
386A = 00000000000000000000000000000000000000007fffffffffffffffffffffff
387B = ffffffff00000001000000000000000000000000800000000000000000000000
388
389Test = Negate
390A = 0000000000000000000000000000000000000000ffffffffffffffffffffffff
391B = ffffffff00000001000000000000000000000000000000000000000000000000
392
393Test = Negate
394A = 0000000000000000000000000000000000000001ffffffffffffffffffffffff
395B = ffffffff00000000ffffffffffffffffffffffff000000000000000000000000
396
397Test = Negate
398A = 0000000000000000000000000000000000000003ffffffffffffffffffffffff
399B = ffffffff00000000fffffffffffffffffffffffd000000000000000000000000
400
401Test = Negate
402A = 0000000000000000000000000000000000000007ffffffffffffffffffffffff
403B = ffffffff00000000fffffffffffffffffffffff9000000000000000000000000
404
405Test = Negate
406A = 000000000000000000000000000000000000000fffffffffffffffffffffffff
407B = ffffffff00000000fffffffffffffffffffffff1000000000000000000000000
408
409Test = Negate
410A = 000000000000000000000000000000000000001fffffffffffffffffffffffff
411B = ffffffff00000000ffffffffffffffffffffffe1000000000000000000000000
412
413Test = Negate
414A = 000000000000000000000000000000000000003fffffffffffffffffffffffff
415B = ffffffff00000000ffffffffffffffffffffffc1000000000000000000000000
416
417Test = Negate
418A = 000000000000000000000000000000000000007fffffffffffffffffffffffff
419B = ffffffff00000000ffffffffffffffffffffff81000000000000000000000000
420
421Test = Negate
422A = 00000000000000000000000000000000000000ffffffffffffffffffffffffff
423B = ffffffff00000000ffffffffffffffffffffff01000000000000000000000000
424
425Test = Negate
426A = 00000000000000000000000000000000000001ffffffffffffffffffffffffff
427B = ffffffff00000000fffffffffffffffffffffe01000000000000000000000000
428
429Test = Negate
430A = 00000000000000000000000000000000000003ffffffffffffffffffffffffff
431B = ffffffff00000000fffffffffffffffffffffc01000000000000000000000000
432
433Test = Negate
434A = 00000000000000000000000000000000000007ffffffffffffffffffffffffff
435B = ffffffff00000000fffffffffffffffffffff801000000000000000000000000
436
437Test = Negate
438A = 0000000000000000000000000000000000000fffffffffffffffffffffffffff
439B = ffffffff00000000fffffffffffffffffffff001000000000000000000000000
440
441Test = Negate
442A = 0000000000000000000000000000000000001fffffffffffffffffffffffffff
443B = ffffffff00000000ffffffffffffffffffffe001000000000000000000000000
444
445Test = Negate
446A = 0000000000000000000000000000000000003fffffffffffffffffffffffffff
447B = ffffffff00000000ffffffffffffffffffffc001000000000000000000000000
448
449Test = Negate
450A = 0000000000000000000000000000000000007fffffffffffffffffffffffffff
451B = ffffffff00000000ffffffffffffffffffff8001000000000000000000000000
452
453Test = Negate
454A = 000000000000000000000000000000000000ffffffffffffffffffffffffffff
455B = ffffffff00000000ffffffffffffffffffff0001000000000000000000000000
456
457Test = Negate
458A = 000000000000000000000000000000000001ffffffffffffffffffffffffffff
459B = ffffffff00000000fffffffffffffffffffe0001000000000000000000000000
460
461Test = Negate
462A = 000000000000000000000000000000000003ffffffffffffffffffffffffffff
463B = ffffffff00000000fffffffffffffffffffc0001000000000000000000000000
464
465Test = Negate
466A = 000000000000000000000000000000000007ffffffffffffffffffffffffffff
467B = ffffffff00000000fffffffffffffffffff80001000000000000000000000000
468
469Test = Negate
470A = 00000000000000000000000000000000000fffffffffffffffffffffffffffff
471B = ffffffff00000000fffffffffffffffffff00001000000000000000000000000
472
473Test = Negate
474A = 00000000000000000000000000000000001fffffffffffffffffffffffffffff
475B = ffffffff00000000ffffffffffffffffffe00001000000000000000000000000
476
477Test = Negate
478A = 00000000000000000000000000000000003fffffffffffffffffffffffffffff
479B = ffffffff00000000ffffffffffffffffffc00001000000000000000000000000
480
481Test = Negate
482A = 00000000000000000000000000000000007fffffffffffffffffffffffffffff
483B = ffffffff00000000ffffffffffffffffff800001000000000000000000000000
484
485Test = Negate
486A = 0000000000000000000000000000000000ffffffffffffffffffffffffffffff
487B = ffffffff00000000ffffffffffffffffff000001000000000000000000000000
488
489Test = Negate
490A = 0000000000000000000000000000000001ffffffffffffffffffffffffffffff
491B = ffffffff00000000fffffffffffffffffe000001000000000000000000000000
492
493Test = Negate
494A = 0000000000000000000000000000000003ffffffffffffffffffffffffffffff
495B = ffffffff00000000fffffffffffffffffc000001000000000000000000000000
496
497Test = Negate
498A = 0000000000000000000000000000000007ffffffffffffffffffffffffffffff
499B = ffffffff00000000fffffffffffffffff8000001000000000000000000000000
500
501Test = Negate
502A = 000000000000000000000000000000000fffffffffffffffffffffffffffffff
503B = ffffffff00000000fffffffffffffffff0000001000000000000000000000000
504
505Test = Negate
506A = 000000000000000000000000000000001fffffffffffffffffffffffffffffff
507B = ffffffff00000000ffffffffffffffffe0000001000000000000000000000000
508
509Test = Negate
510A = 000000000000000000000000000000003fffffffffffffffffffffffffffffff
511B = ffffffff00000000ffffffffffffffffc0000001000000000000000000000000
512
513Test = Negate
514A = 000000000000000000000000000000007fffffffffffffffffffffffffffffff
515B = ffffffff00000000ffffffffffffffff80000001000000000000000000000000
516
517Test = Negate
518A = 00000000000000000000000000000000ffffffffffffffffffffffffffffffff
519B = ffffffff00000000ffffffffffffffff00000001000000000000000000000000
520
521Test = Negate
522A = 00000000000000000000000000000001ffffffffffffffffffffffffffffffff
523B = ffffffff00000000fffffffffffffffe00000001000000000000000000000000
524
525Test = Negate
526A = 00000000000000000000000000000003ffffffffffffffffffffffffffffffff
527B = ffffffff00000000fffffffffffffffc00000001000000000000000000000000
528
529Test = Negate
530A = 00000000000000000000000000000007ffffffffffffffffffffffffffffffff
531B = ffffffff00000000fffffffffffffff800000001000000000000000000000000
532
533Test = Negate
534A = 0000000000000000000000000000000fffffffffffffffffffffffffffffffff
535B = ffffffff00000000fffffffffffffff000000001000000000000000000000000
536
537Test = Negate
538A = 0000000000000000000000000000001fffffffffffffffffffffffffffffffff
539B = ffffffff00000000ffffffffffffffe000000001000000000000000000000000
540
541Test = Negate
542A = 0000000000000000000000000000003fffffffffffffffffffffffffffffffff
543B = ffffffff00000000ffffffffffffffc000000001000000000000000000000000
544
545Test = Negate
546A = 0000000000000000000000000000007fffffffffffffffffffffffffffffffff
547B = ffffffff00000000ffffffffffffff8000000001000000000000000000000000
548
549Test = Negate
550A = 000000000000000000000000000000ffffffffffffffffffffffffffffffffff
551B = ffffffff00000000ffffffffffffff0000000001000000000000000000000000
552
553Test = Negate
554A = 000000000000000000000000000001ffffffffffffffffffffffffffffffffff
555B = ffffffff00000000fffffffffffffe0000000001000000000000000000000000
556
557Test = Negate
558A = 000000000000000000000000000003ffffffffffffffffffffffffffffffffff
559B = ffffffff00000000fffffffffffffc0000000001000000000000000000000000
560
561Test = Negate
562A = 000000000000000000000000000007ffffffffffffffffffffffffffffffffff
563B = ffffffff00000000fffffffffffff80000000001000000000000000000000000
564
565Test = Negate
566A = 00000000000000000000000000000fffffffffffffffffffffffffffffffffff
567B = ffffffff00000000fffffffffffff00000000001000000000000000000000000
568
569Test = Negate
570A = 00000000000000000000000000001fffffffffffffffffffffffffffffffffff
571B = ffffffff00000000ffffffffffffe00000000001000000000000000000000000
572
573Test = Negate
574A = 00000000000000000000000000003fffffffffffffffffffffffffffffffffff
575B = ffffffff00000000ffffffffffffc00000000001000000000000000000000000
576
577Test = Negate
578A = 00000000000000000000000000007fffffffffffffffffffffffffffffffffff
579B = ffffffff00000000ffffffffffff800000000001000000000000000000000000
580
581Test = Negate
582A = 0000000000000000000000000000ffffffffffffffffffffffffffffffffffff
583B = ffffffff00000000ffffffffffff000000000001000000000000000000000000
584
585Test = Negate
586A = 0000000000000000000000000001ffffffffffffffffffffffffffffffffffff
587B = ffffffff00000000fffffffffffe000000000001000000000000000000000000
588
589Test = Negate
590A = 0000000000000000000000000003ffffffffffffffffffffffffffffffffffff
591B = ffffffff00000000fffffffffffc000000000001000000000000000000000000
592
593Test = Negate
594A = 0000000000000000000000000007ffffffffffffffffffffffffffffffffffff
595B = ffffffff00000000fffffffffff8000000000001000000000000000000000000
596
597Test = Negate
598A = 000000000000000000000000000fffffffffffffffffffffffffffffffffffff
599B = ffffffff00000000fffffffffff0000000000001000000000000000000000000
600
601Test = Negate
602A = 000000000000000000000000001fffffffffffffffffffffffffffffffffffff
603B = ffffffff00000000ffffffffffe0000000000001000000000000000000000000
604
605Test = Negate
606A = 000000000000000000000000003fffffffffffffffffffffffffffffffffffff
607B = ffffffff00000000ffffffffffc0000000000001000000000000000000000000
608
609Test = Negate
610A = 000000000000000000000000007fffffffffffffffffffffffffffffffffffff
611B = ffffffff00000000ffffffffff80000000000001000000000000000000000000
612
613Test = Negate
614A = 00000000000000000000000000ffffffffffffffffffffffffffffffffffffff
615B = ffffffff00000000ffffffffff00000000000001000000000000000000000000
616
617Test = Negate
618A = 00000000000000000000000001ffffffffffffffffffffffffffffffffffffff
619B = ffffffff00000000fffffffffe00000000000001000000000000000000000000
620
621Test = Negate
622A = 00000000000000000000000003ffffffffffffffffffffffffffffffffffffff
623B = ffffffff00000000fffffffffc00000000000001000000000000000000000000
624
625Test = Negate
626A = 00000000000000000000000007ffffffffffffffffffffffffffffffffffffff
627B = ffffffff00000000fffffffff800000000000001000000000000000000000000
628
629Test = Negate
630A = 0000000000000000000000000fffffffffffffffffffffffffffffffffffffff
631B = ffffffff00000000fffffffff000000000000001000000000000000000000000
632
633Test = Negate
634A = 0000000000000000000000001fffffffffffffffffffffffffffffffffffffff
635B = ffffffff00000000ffffffffe000000000000001000000000000000000000000
636
637Test = Negate
638A = 0000000000000000000000003fffffffffffffffffffffffffffffffffffffff
639B = ffffffff00000000ffffffffc000000000000001000000000000000000000000
640
641Test = Negate
642A = 0000000000000000000000007fffffffffffffffffffffffffffffffffffffff
643B = ffffffff00000000ffffffff8000000000000001000000000000000000000000
644
645Test = Negate
646A = 000000000000000000000000ffffffffffffffffffffffffffffffffffffffff
647B = ffffffff00000000ffffffff0000000000000001000000000000000000000000
648
649Test = Negate
650A = 000000000000000000000001ffffffffffffffffffffffffffffffffffffffff
651B = ffffffff00000000fffffffe0000000000000001000000000000000000000000
652
653Test = Negate
654A = 000000000000000000000003ffffffffffffffffffffffffffffffffffffffff
655B = ffffffff00000000fffffffc0000000000000001000000000000000000000000
656
657Test = Negate
658A = 000000000000000000000007ffffffffffffffffffffffffffffffffffffffff
659B = ffffffff00000000fffffff80000000000000001000000000000000000000000
660
661Test = Negate
662A = 00000000000000000000000fffffffffffffffffffffffffffffffffffffffff
663B = ffffffff00000000fffffff00000000000000001000000000000000000000000
664
665Test = Negate
666A = 00000000000000000000001fffffffffffffffffffffffffffffffffffffffff
667B = ffffffff00000000ffffffe00000000000000001000000000000000000000000
668
669Test = Negate
670A = 00000000000000000000003fffffffffffffffffffffffffffffffffffffffff
671B = ffffffff00000000ffffffc00000000000000001000000000000000000000000
672
673Test = Negate
674A = 00000000000000000000007fffffffffffffffffffffffffffffffffffffffff
675B = ffffffff00000000ffffff800000000000000001000000000000000000000000
676
677Test = Negate
678A = 0000000000000000000000ffffffffffffffffffffffffffffffffffffffffff
679B = ffffffff00000000ffffff000000000000000001000000000000000000000000
680
681Test = Negate
682A = 0000000000000000000001ffffffffffffffffffffffffffffffffffffffffff
683B = ffffffff00000000fffffe000000000000000001000000000000000000000000
684
685Test = Negate
686A = 0000000000000000000003ffffffffffffffffffffffffffffffffffffffffff
687B = ffffffff00000000fffffc000000000000000001000000000000000000000000
688
689Test = Negate
690A = 0000000000000000000007ffffffffffffffffffffffffffffffffffffffffff
691B = ffffffff00000000fffff8000000000000000001000000000000000000000000
692
693Test = Negate
694A = 000000000000000000000fffffffffffffffffffffffffffffffffffffffffff
695B = ffffffff00000000fffff0000000000000000001000000000000000000000000
696
697Test = Negate
698A = 000000000000000000001fffffffffffffffffffffffffffffffffffffffffff
699B = ffffffff00000000ffffe0000000000000000001000000000000000000000000
700
701Test = Negate
702A = 000000000000000000003fffffffffffffffffffffffffffffffffffffffffff
703B = ffffffff00000000ffffc0000000000000000001000000000000000000000000
704
705Test = Negate
706A = 000000000000000000007fffffffffffffffffffffffffffffffffffffffffff
707B = ffffffff00000000ffff80000000000000000001000000000000000000000000
708
709Test = Negate
710A = 00000000000000000000ffffffffffffffffffffffffffffffffffffffffffff
711B = ffffffff00000000ffff00000000000000000001000000000000000000000000
712
713Test = Negate
714A = 00000000000000000001ffffffffffffffffffffffffffffffffffffffffffff
715B = ffffffff00000000fffe00000000000000000001000000000000000000000000
716
717Test = Negate
718A = 00000000000000000003ffffffffffffffffffffffffffffffffffffffffffff
719B = ffffffff00000000fffc00000000000000000001000000000000000000000000
720
721Test = Negate
722A = 00000000000000000007ffffffffffffffffffffffffffffffffffffffffffff
723B = ffffffff00000000fff800000000000000000001000000000000000000000000
724
725Test = Negate
726A = 0000000000000000000fffffffffffffffffffffffffffffffffffffffffffff
727B = ffffffff00000000fff000000000000000000001000000000000000000000000
728
729Test = Negate
730A = 0000000000000000001fffffffffffffffffffffffffffffffffffffffffffff
731B = ffffffff00000000ffe000000000000000000001000000000000000000000000
732
733Test = Negate
734A = 0000000000000000003fffffffffffffffffffffffffffffffffffffffffffff
735B = ffffffff00000000ffc000000000000000000001000000000000000000000000
736
737Test = Negate
738A = 0000000000000000007fffffffffffffffffffffffffffffffffffffffffffff
739B = ffffffff00000000ff8000000000000000000001000000000000000000000000
740
741Test = Negate
742A = 000000000000000000ffffffffffffffffffffffffffffffffffffffffffffff
743B = ffffffff00000000ff0000000000000000000001000000000000000000000000
744
745Test = Negate
746A = 000000000000000001ffffffffffffffffffffffffffffffffffffffffffffff
747B = ffffffff00000000fe0000000000000000000001000000000000000000000000
748
749Test = Negate
750A = 000000000000000003ffffffffffffffffffffffffffffffffffffffffffffff
751B = ffffffff00000000fc0000000000000000000001000000000000000000000000
752
753Test = Negate
754A = 000000000000000007ffffffffffffffffffffffffffffffffffffffffffffff
755B = ffffffff00000000f80000000000000000000001000000000000000000000000
756
757Test = Negate
758A = 00000000000000000fffffffffffffffffffffffffffffffffffffffffffffff
759B = ffffffff00000000f00000000000000000000001000000000000000000000000
760
761Test = Negate
762A = 00000000000000001fffffffffffffffffffffffffffffffffffffffffffffff
763B = ffffffff00000000e00000000000000000000001000000000000000000000000
764
765Test = Negate
766A = 00000000000000003fffffffffffffffffffffffffffffffffffffffffffffff
767B = ffffffff00000000c00000000000000000000001000000000000000000000000
768
769Test = Negate
770A = 00000000000000007fffffffffffffffffffffffffffffffffffffffffffffff
771B = ffffffff00000000800000000000000000000001000000000000000000000000
772
773Test = Negate
774A = 0000000000000000ffffffffffffffffffffffffffffffffffffffffffffffff
775B = ffffffff00000000000000000000000000000001000000000000000000000000
776
777Test = Negate
778A = 0000000000000001ffffffffffffffffffffffffffffffffffffffffffffffff
779B = fffffffeffffffff000000000000000000000001000000000000000000000000
780
781Test = Negate
782A = 0000000000000003ffffffffffffffffffffffffffffffffffffffffffffffff
783B = fffffffefffffffd000000000000000000000001000000000000000000000000
784
785Test = Negate
786A = 0000000000000007ffffffffffffffffffffffffffffffffffffffffffffffff
787B = fffffffefffffff9000000000000000000000001000000000000000000000000
788
789Test = Negate
790A = 000000000000000fffffffffffffffffffffffffffffffffffffffffffffffff
791B = fffffffefffffff1000000000000000000000001000000000000000000000000
792
793Test = Negate
794A = 000000000000001fffffffffffffffffffffffffffffffffffffffffffffffff
795B = fffffffeffffffe1000000000000000000000001000000000000000000000000
796
797Test = Negate
798A = 000000000000003fffffffffffffffffffffffffffffffffffffffffffffffff
799B = fffffffeffffffc1000000000000000000000001000000000000000000000000
800
801Test = Negate
802A = 000000000000007fffffffffffffffffffffffffffffffffffffffffffffffff
803B = fffffffeffffff81000000000000000000000001000000000000000000000000
804
805Test = Negate
806A = 00000000000000ffffffffffffffffffffffffffffffffffffffffffffffffff
807B = fffffffeffffff01000000000000000000000001000000000000000000000000
808
809Test = Negate
810A = 00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffff
811B = fffffffefffffe01000000000000000000000001000000000000000000000000
812
813Test = Negate
814A = 00000000000003ffffffffffffffffffffffffffffffffffffffffffffffffff
815B = fffffffefffffc01000000000000000000000001000000000000000000000000
816
817Test = Negate
818A = 00000000000007ffffffffffffffffffffffffffffffffffffffffffffffffff
819B = fffffffefffff801000000000000000000000001000000000000000000000000
820
821Test = Negate
822A = 0000000000000fffffffffffffffffffffffffffffffffffffffffffffffffff
823B = fffffffefffff001000000000000000000000001000000000000000000000000
824
825Test = Negate
826A = 0000000000001fffffffffffffffffffffffffffffffffffffffffffffffffff
827B = fffffffeffffe001000000000000000000000001000000000000000000000000
828
829Test = Negate
830A = 0000000000003fffffffffffffffffffffffffffffffffffffffffffffffffff
831B = fffffffeffffc001000000000000000000000001000000000000000000000000
832
833Test = Negate
834A = 0000000000007fffffffffffffffffffffffffffffffffffffffffffffffffff
835B = fffffffeffff8001000000000000000000000001000000000000000000000000
836
837Test = Negate
838A = 000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffff
839B = fffffffeffff0001000000000000000000000001000000000000000000000000
840
841Test = Negate
842A = 000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffff
843B = fffffffefffe0001000000000000000000000001000000000000000000000000
844
845Test = Negate
846A = 000000000003ffffffffffffffffffffffffffffffffffffffffffffffffffff
847B = fffffffefffc0001000000000000000000000001000000000000000000000000
848
849Test = Negate
850A = 000000000007ffffffffffffffffffffffffffffffffffffffffffffffffffff
851B = fffffffefff80001000000000000000000000001000000000000000000000000
852
853Test = Negate
854A = 00000000000fffffffffffffffffffffffffffffffffffffffffffffffffffff
855B = fffffffefff00001000000000000000000000001000000000000000000000000
856
857Test = Negate
858A = 00000000001fffffffffffffffffffffffffffffffffffffffffffffffffffff
859B = fffffffeffe00001000000000000000000000001000000000000000000000000
860
861Test = Negate
862A = 00000000003fffffffffffffffffffffffffffffffffffffffffffffffffffff
863B = fffffffeffc00001000000000000000000000001000000000000000000000000
864
865Test = Negate
866A = 00000000007fffffffffffffffffffffffffffffffffffffffffffffffffffff
867B = fffffffeff800001000000000000000000000001000000000000000000000000
868
869Test = Negate
870A = 0000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffff
871B = fffffffeff000001000000000000000000000001000000000000000000000000
872
873Test = Negate
874A = 0000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffff
875B = fffffffefe000001000000000000000000000001000000000000000000000000
876
877Test = Negate
878A = 0000000003ffffffffffffffffffffffffffffffffffffffffffffffffffffff
879B = fffffffefc000001000000000000000000000001000000000000000000000000
880
881Test = Negate
882A = 0000000007ffffffffffffffffffffffffffffffffffffffffffffffffffffff
883B = fffffffef8000001000000000000000000000001000000000000000000000000
884
885Test = Negate
886A = 000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffff
887B = fffffffef0000001000000000000000000000001000000000000000000000000
888
889Test = Negate
890A = 000000001fffffffffffffffffffffffffffffffffffffffffffffffffffffff
891B = fffffffee0000001000000000000000000000001000000000000000000000000
892
893Test = Negate
894A = 000000003fffffffffffffffffffffffffffffffffffffffffffffffffffffff
895B = fffffffec0000001000000000000000000000001000000000000000000000000
896
897Test = Negate
898A = 000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffff
899B = fffffffe80000001000000000000000000000001000000000000000000000000
900
901Test = Negate
902A = 00000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
903B = fffffffe00000001000000000000000000000001000000000000000000000000
904
905Test = Negate
906A = 00000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
907B = fffffffd00000001000000000000000000000001000000000000000000000000
908
909Test = Negate
910A = 00000003ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
911B = fffffffb00000001000000000000000000000001000000000000000000000000
912
913Test = Negate
914A = 00000007ffffffffffffffffffffffffffffffffffffffffffffffffffffffff
915B = fffffff700000001000000000000000000000001000000000000000000000000
916
917Test = Negate
918A = 0000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
919B = ffffffef00000001000000000000000000000001000000000000000000000000
920
921Test = Negate
922A = 0000001fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
923B = ffffffdf00000001000000000000000000000001000000000000000000000000
924
925Test = Negate
926A = 0000003fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
927B = ffffffbf00000001000000000000000000000001000000000000000000000000
928
929Test = Negate
930A = 0000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffff
931B = ffffff7f00000001000000000000000000000001000000000000000000000000
932
933Test = Negate
934A = 000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
935B = fffffeff00000001000000000000000000000001000000000000000000000000
936
937Test = Negate
938A = 000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
939B = fffffdff00000001000000000000000000000001000000000000000000000000
940
941Test = Negate
942A = 000003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
943B = fffffbff00000001000000000000000000000001000000000000000000000000
944
945Test = Negate
946A = 000007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
947B = fffff7ff00000001000000000000000000000001000000000000000000000000
948
949Test = Negate
950A = 00000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
951B = ffffefff00000001000000000000000000000001000000000000000000000000
952
953Test = Negate
954A = 00001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
955B = ffffdfff00000001000000000000000000000001000000000000000000000000
956
957Test = Negate
958A = 00003fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
959B = ffffbfff00000001000000000000000000000001000000000000000000000000
960
961Test = Negate
962A = 00007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
963B = ffff7fff00000001000000000000000000000001000000000000000000000000
964
965Test = Negate
966A = 0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
967B = fffeffff00000001000000000000000000000001000000000000000000000000
968
969Test = Negate
970A = 0001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
971B = fffdffff00000001000000000000000000000001000000000000000000000000
972
973Test = Negate
974A = 0003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
975B = fffbffff00000001000000000000000000000001000000000000000000000000
976
977Test = Negate
978A = 0007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
979B = fff7ffff00000001000000000000000000000001000000000000000000000000
980
981Test = Negate
982A = 000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
983B = ffefffff00000001000000000000000000000001000000000000000000000000
984
985Test = Negate
986A = 001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
987B = ffdfffff00000001000000000000000000000001000000000000000000000000
988
989Test = Negate
990A = 003fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
991B = ffbfffff00000001000000000000000000000001000000000000000000000000
992
993Test = Negate
994A = 007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
995B = ff7fffff00000001000000000000000000000001000000000000000000000000
996
997Test = Negate
998A = 00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
999B = feffffff00000001000000000000000000000001000000000000000000000000
1000
1001Test = Negate
1002A = 01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
1003B = fdffffff00000001000000000000000000000001000000000000000000000000
1004
1005Test = Negate
1006A = 03ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
1007B = fbffffff00000001000000000000000000000001000000000000000000000000
1008
1009Test = Negate
1010A = 07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
1011B = f7ffffff00000001000000000000000000000001000000000000000000000000
1012
1013Test = Negate
1014A = 0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
1015B = efffffff00000001000000000000000000000001000000000000000000000000
1016
1017Test = Negate
1018A = 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
1019B = dfffffff00000001000000000000000000000001000000000000000000000000
1020
1021Test = Negate
1022A = 3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
1023B = bfffffff00000001000000000000000000000001000000000000000000000000
1024
1025Test = Negate
1026A = 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
1027B = 7fffffff00000001000000000000000000000001000000000000000000000000
1028
1029
1030# Montgomery multiplication tests.
1031#
1032# The following tests satisfy A * B * 2^-256 = Result (mod P).
1033
1034Test = MulMont
1035A = e762f095431b732ce33c4f4a6f41068ff7f78e37aad940166667d193bfc58039
1036B = a43df383dd5df14d7c16737b781261473f9ffb76ee29562fbb5e5d390b882fb5
1037Result = cf637a47dc5fb82aed80ed4c66b682a94bf0b76a2878acf483aad86c0db7cc19
1038
1039Test = MulMont
1040A = 2e519e860cb3f8f32fc351861b022e9fc7bb073ca8767efb3d1027dd32a38bcb
1041B = 466d035e4238d6a30613dd227b0daeacd6a8634fa60f5150d42dd20601794be4
1042Result = 486e1abe0f79e107f8beca6e4653872f63a24dedb005def6aae75a2a51e73c76
1043
1044Test = MulMont
1045A = 1763859541b5e2edee019c66699d0e12e349e6ee586d618ac20c679d2fa8cadd
1046B = 56125872de888c5656dec17fbf9678d915ff9815da897df81f03fd9aa4f93654
1047Result = 71ce584135a0aba8222ca0021bcefac5811d19100627f96726cf195ff2ac4aad
1048
1049Test = MulMont
1050A = ea3be6295098e4995b93267dbd58f24fd9c18f7e89e9e5aeafdc34ca54e8ec4e
1051B = 2735658978d620a4f76bffe94d9cd7d683b3bfd533aa6bb2b94f52122e83f7fc
1052Result = 362f7ab3a12effe9bad069b84a7df5f108503c2457f83ddb05b57f19e6457989
1053
1054Test = MulMont
1055A = f607f087ec5015b533df8802771dc60ef1487d86ce405e5bb18f8f06ca483f13
1056B = 73ac532eb3f2356a96e668f167a1626a0f7b1fd2cd84ba6deeebd01af1d3897d
1057Result = ce7045e69da157e62fb42508880f5734531c36948c704aedec42afa75cb9c2eb
1058
1059Test = MulMont
1060A = 80ce8eb07601fd8e19ba08a9d21081b0324fd459f9c489ac7c871d406133c813
1061B = 7ad28cef45b137ecc5426a44b6bce6d4329f5bd2b5e55d46edd5fbb295678a1b
1062Result = 04068f8461d17b34c8d9c3eecf61dbaef9cd5a952bbcd9f84bb2044f2439da60
1063
1064Test = MulMont
1065A = 17429caf63689e143c8ca77df69a11cbc02c272daadd75a66f3fa5f88828367e
1066B = 5725bedc56a4b16e0f0ae55fa0beb1fdf3ff132ccb9803bab678d4ac7915d88c
1067Result = a1da0fa68947e906287ea164b213bc7e80649b2ac3f97f203549d3b270de05a1
1068
1069Test = MulMont
1070A = e7da43c0e0fa7adeb972901bef3160c848e9651bfc810968afdb0cd598830370
1071B = 08f03060cac1d3c15eea69623d5fb01da465b209e3e5e90fbb51053a1c5700eb
1072Result = cda4ffaf8b1c3ac0d44bae6ea5154de11e14931747a65396531302c0cb1ed537
1073
1074Test = MulMont
1075A = c7375c2b6666713cb33cfb741268fd3ccf703bcaa0b9b27f84a8cb970655da9c
1076B = b0796ee4bb88b9bad895d9c25c34f43a3941e9585bda8e86ff4fa0bbb391ac61
1077Result = fd1d557a9fb0031e462121bf7ca31804acfcfce822bb6ee6631b54c575380617
1078
1079Test = MulMont
1080A = 72a87b13eb4a2e248214aa591c586df65790f9f750a1641b47581a4ee09be7e9
1081B = 38e602844b9aaf737e8b1261110b86ba22806ccbbbfdc5305075429d7ce4f002
1082Result = cb2d63ee829de8801759f0229d4c07139bacd804f0c815d35004747c65bffdf2
1083
1084# Test cases where A == B to test squaring.
1085
1086Test = MulMont
1087A = 0000000000000000000000000000000000000000000000000000000000000000
1088B = 0000000000000000000000000000000000000000000000000000000000000000
1089Result = 0000000000000000000000000000000000000000000000000000000000000000
1090
1091Test = MulMont
1092A = 579e9ce1ad00639b8b64d49546ff4f9c30ad12eaebe9e2ed91e97d55c3c5d847
1093B = 579e9ce1ad00639b8b64d49546ff4f9c30ad12eaebe9e2ed91e97d55c3c5d847
1094Result = 10c5e60c2d480d5d53f50c24fb771fd2dec208db04624dfd05d2847ca173a9aa
1095
1096Test = MulMont
1097A = 501947209b121bcdedce8c895ee2ba310f2e561e97998eb8f3b99d1f924f36c1
1098B = 501947209b121bcdedce8c895ee2ba310f2e561e97998eb8f3b99d1f924f36c1
1099Result = 54d6d64566619b215910f1b9e467b22ef205ca3aaad37a00fcbd906357f9c179
1100
1101Test = MulMont
1102A = e84ab9202722498baa2c9158f40d47b1f03df4d13976b0aec916a937e99f3a89
1103B = e84ab9202722498baa2c9158f40d47b1f03df4d13976b0aec916a937e99f3a89
1104Result = 9af01fa6947a60679b6f87efe9b6fba97baf5d55a19d5e91dd5da1da10caeebf
1105
1106Test = MulMont
1107A = add67c61d8479570f45a59e9b04974f970b0c4c6c046056fea1bdf3f0e7d3152
1108B = add67c61d8479570f45a59e9b04974f970b0c4c6c046056fea1bdf3f0e7d3152
1109Result = c0c68b4327e3fe7e0522167a54b25aaa6f76085ce4f6550479c89f3f1c39dd18
1110
1111Test = MulMont
1112A = 434ef0db5640a3ea63125f815bc3cb3c92d06dbc3b5cb484e01b5247b3b4bfe5
1113B = 434ef0db5640a3ea63125f815bc3cb3c92d06dbc3b5cb484e01b5247b3b4bfe5
1114Result = b5105d16b858279247ed31362a90260978d64e0492e84bffa7a0e13ee1541544
1115
1116Test = MulMont
1117A = b1db42aa4b259d9c6104599aff622114f10c327d02c5640b74cf1742adff332d
1118B = b1db42aa4b259d9c6104599aff622114f10c327d02c5640b74cf1742adff332d
1119Result = 0c175e7f96fc62059864c561d99a8d90978c72757ba305cd8862ed6a5fadad59
1120
1121Test = MulMont
1122A = 7610271796be25416b652badd3119938974b20d4fc92244aea76d23b80d178f0
1123B = 7610271796be25416b652badd3119938974b20d4fc92244aea76d23b80d178f0
1124Result = 67d76e4a7c8355bb362481a76a63b365ad79767cc672b174130e833d41ca5709
1125
1126Test = MulMont
1127A = 3480d60b0ccafca89c86f22f78380cead81310241f27a815e6fd21c2060caed8
1128B = 3480d60b0ccafca89c86f22f78380cead81310241f27a815e6fd21c2060caed8
1129Result = 68bfb2652d3bf03d17b20b2c52c68e847b0006047ba4ea81d4b85af2e0a21f72
1130
1131Test = MulMont
1132A = 8ad6fa8bf3fe56ece1d0970636c1429ed5dfc2441c3194928a6348b69490b537
1133B = 8ad6fa8bf3fe56ece1d0970636c1429ed5dfc2441c3194928a6348b69490b537
1134Result = f5cdccf29e09928722137fb5a5ec035d7f39580838e19b892a7a972866330318
1135
1136Test = MulMont
1137A = 71c328ce472ae74b5028b21f9d1997e0f7dbcee979a8f9fdecfa5d37d359c835
1138B = 71c328ce472ae74b5028b21f9d1997e0f7dbcee979a8f9fdecfa5d37d359c835
1139Result = c3472fafd01fc3ed93a91ab65411cb852bd5839603a02ca6cdfbadcb9ac474a0
1140
1141
1142# Montgomery conversion tests.
1143#
1144# The following tests satisfy A * 2^-256 = Result (mod P).
1145
1146Test = FromMont
1147A = 0585a3dada9bb283fd8db4fc46c106d28f95b8cf159a405891196dbb9ce0b5cf
1148Result = d198d054d25a069c40cdeeb968a5562a67c3ef659297169e4be872f234897dc0
1149
1150Test = FromMont
1151A = 9ff49a4a3f810fd34ca6f37fb1b3c40e61bc0492227e91e41cbe06bd58ba65b8
1152Result = 326a061b2047d9ba4eddaba9b1fe253d5b2a24e268e3f8810767bef8cda07643
1153
1154Test = FromMont
1155A = 05a69f8f646494be65affbd44d0536ca098d6f3640e80b5e48764ab78928cf58
1156Result = 5a6f9c7025d4063480c400fe6f271cf3a3d2c43f9e1ceac21a88208c28329731
1157
1158Test = FromMont
1159A = 256481a9e52d692719330a6f1208d9eca4ddd919aee06e234cbbde77d245501b
1160Result = fe9fc86a2ff61a0c981d5e86c5472248e071e9639521c5be43947bfffc7d5858
1161
1162Test = FromMont
1163A = 2062ef333cadefc36ced52a2ea7e4215b1fca29283baa1e3be76e321f1b213f0
1164Result = 961ce39c3bf1d699b4b61ded8a5beae6eb6185d21f1df435b079b1f6a79dc738
1165
1166Test = FromMont
1167A = 97241c3651a8f9d2fc02730f15c3e09e48d2e645cfe927385cb81d3f454414fb
1168Result = 2114225803efe7b6c7fbb290cb946da4e78697aad5624c2d3fe9fb568460b93c
1169
1170Test = FromMont
1171A = 1aae0ad2c8ac988e11beda32ca7257f4d4de41f4b74452fa46f0a3bafb39262a
1172Result = 77c884131c34a2c3acce8a69dc5cf55987b7999c70586a9ef3c0dfb634900296
1173
1174Test = FromMont
1175A = 034de033e2d38cf8bec8a994414b64a2fce7c83c5d81efc3d21448225071e85d
1176Result = 984fecbde84f393133fb602777b4395c56449d2cbbd7d8ae428b2ee6f82a2956
1177
1178Test = FromMont
1179A = d2b296c2004b2761b6781311c924cbf5ff56dcc0900ed5cd24f5dd2e07f32633
1180Result = ddcff6e031b859a814ce8f37b71c10cd5fb642af54af72deabb95adcb99307b1
1181
1182Test = FromMont
1183A = 8f525e6af50a62fc176dec75bdf48f70ba8ab97323ba78c643ef07f6457ba070
1184Result = 8fa95d57aae2fff79045654501478f7a394b27b8b54113a25ac74662606f767c
1185
1186
1187# Point adding tests.
1188#
1189# The following tests satisfy Result = A + B, where Result is in affine
1190# coordinates and A and B are in Jacobian coordinates in the Montgomery domain.
1191
1192# ∞ + ∞ = ∞.
1193Test = PointAdd
1194A.X = 0000000000000000000000000000000000000000000000000000000000000000
1195A.Y = 0000000000000000000000000000000000000000000000000000000000000000
1196A.Z = 0000000000000000000000000000000000000000000000000000000000000000
1197B.X = 0000000000000000000000000000000000000000000000000000000000000000
1198B.Y = 0000000000000000000000000000000000000000000000000000000000000000
1199B.Z = 0000000000000000000000000000000000000000000000000000000000000000
1200Result.X = 0000000000000000000000000000000000000000000000000000000000000000
1201Result.Y = 0000000000000000000000000000000000000000000000000000000000000000
1202
1203# ∞ + ∞ = ∞, with an alternate representation of ∞.
1204Test = PointAdd
1205A.X = 2b11cb945c8cf152ffa4c9c2b1c965b019b35d0b7626919ef0ae6cb9d232f8af
1206A.Y = 6d333da42e30f7011245b6281015ded14e0f100968e758a1b6c3c083afc14ea0
1207A.Z = 0000000000000000000000000000000000000000000000000000000000000000
1208B.X = 2b11cb945c8cf152ffa4c9c2b1c965b019b35d0b7626919ef0ae6cb9d232f8af
1209B.Y = 6d333da42e30f7011245b6281015ded14e0f100968e758a1b6c3c083afc14ea0
1210B.Z = 0000000000000000000000000000000000000000000000000000000000000000
1211Result.X = 0000000000000000000000000000000000000000000000000000000000000000
1212Result.Y = 0000000000000000000000000000000000000000000000000000000000000000
1213
1214# g + ∞ = g.
1215Test = PointAdd
1216A.X = 18905f76a53755c679fb732b7762251075ba95fc5fedb60179e730d418a9143c
1217A.Y = 8571ff1825885d85d2e88688dd21f3258b4ab8e4ba19e45cddf25357ce95560a
1218A.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1219B.X = 0000000000000000000000000000000000000000000000000000000000000000
1220B.Y = 0000000000000000000000000000000000000000000000000000000000000000
1221B.Z = 0000000000000000000000000000000000000000000000000000000000000000
1222Result.X = 18905f76a53755c679fb732b7762251075ba95fc5fedb60179e730d418a9143c
1223Result.Y = 8571ff1825885d85d2e88688dd21f3258b4ab8e4ba19e45cddf25357ce95560a
1224
1225# g + ∞ = g, with an alternate representation of ∞.
1226Test = PointAdd
1227A.X = 18905f76a53755c679fb732b7762251075ba95fc5fedb60179e730d418a9143c
1228A.Y = 8571ff1825885d85d2e88688dd21f3258b4ab8e4ba19e45cddf25357ce95560a
1229A.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1230B.X = 2b11cb945c8cf152ffa4c9c2b1c965b019b35d0b7626919ef0ae6cb9d232f8af
1231B.Y = 6d333da42e30f7011245b6281015ded14e0f100968e758a1b6c3c083afc14ea0
1232B.Z = 0000000000000000000000000000000000000000000000000000000000000000
1233Result.X = 18905f76a53755c679fb732b7762251075ba95fc5fedb60179e730d418a9143c
1234Result.Y = 8571ff1825885d85d2e88688dd21f3258b4ab8e4ba19e45cddf25357ce95560a
1235
1236# g + -g = ∞.
1237Test = PointAdd
1238A.X = 18905f76a53755c679fb732b7762251075ba95fc5fedb60179e730d418a9143c
1239A.Y = 8571ff1825885d85d2e88688dd21f3258b4ab8e4ba19e45cddf25357ce95560a
1240A.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1241B.X = 18905f76a53755c679fb732b7762251075ba95fc5fedb60179e730d418a9143c
1242B.Y = 7a8e00e6da77a27b2d17797722de0cda74b5471c45e61ba3220daca8316aa9f5
1243B.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1244Result.X = 0000000000000000000000000000000000000000000000000000000000000000
1245Result.Y = 0000000000000000000000000000000000000000000000000000000000000000
1246
1247Test = PointAdd
1248A.X = bcba3eebf2b0af1174a4b874b155b4dc74bd5fb57c70214561aaabb105635580
1249A.Y = 1dc33ce74f651305dd89263c1d314edd2773ef6dd043742a6f47f29542b9eb07
1250A.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1251B.X = f9e0b98b1a87b6c49c4cc5fc47efd157e5f12cf5543d71cfa38187a3793d6791
1252B.Y = 3b2de94df438554381037c9f9d2c21991c6975d83c0acd42ef1a8419a040436f
1253B.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1254Result.X = 6bd7b4e06d7862f749901a398417e941618c11c48dffcce719e4026220b77477
1255Result.Y = 1e2ffd71e8c206acc19032d26a53ea275fefea51a2c90e4dd3c8b7c6acc51ab6
1256
1257Test = PointAdd
1258A.X = d71c6da129f6e867bf525563e1d8bdbd2f90a9bac7de867a6ea2317a5d6cb507
1259A.Y = 125e0cc1ba0c93caa19edb419a764f88d955289c4c6e77d02d90e4e31d47c9a2
1260A.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1261B.X = 334c2200ec08896808ab12a76820ff674fcdccff6d85afa2e586b31fc944de33
1262B.Y = b5ee8cfa25896d4075588c60926a2582a099c7a5acbcfec78fba457c4886301c
1263B.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1264Result.X = 93e9d4e6f7736f80da1b00d221024ccfd17f2927d6b505a5bcefe0801fe6f0a9
1265Result.Y = 4824eeb2d5da27d57e1d50c2dae000acdcddcbaf534d8b7e7d97854ed3dc939e
1266
1267Test = PointAdd
1268A.X = 0daba41be2b418e7d160a363e6cbdcbff5d433f96b0d5be3812c0a7adfab8ed4
1269A.Y = 3ae4dd97c4d2987a63df16c5fb8c494164e14b93eeebd5585d74bd26e2201499
1270A.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1271B.X = 87135fb06383ec8b282fdc028eb38fd447ac1ecc76922e37f0cc454febb11aee
1272B.Y = 98ab966087531eb3eea1e5e36189271a02f7ee8e381f9c78d6f346a301f96f81
1273B.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1274Result.X = 2e096c2fabf06a5b838c7e07fda436d068dd1c4e3ff4f5704f89ab9df6b4be5b
1275Result.Y = 59ca6304321ae1e41bfa30f52e7ef27fceeade8507f20837654383d70e8a41df
1276
1277Test = PointAdd
1278A.X = 356db98c21c2169899b9b296edcacb7d531524f2572913b75edb7b73196f5682
1279A.Y = 47a26c52b1b2f229109e8aca7f5b4af768baf053a15ff8f58051c7e4e1b7f818
1280A.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1281B.X = 56956f6d3bbbd4aece299f29bb4c537355f312f391c207c6ec6efe646362b288
1282B.Y = a69fc73c0636c9928764cc9d6e1482577b6ca06f277c098f571108356a858cab
1283B.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1284Result.X = ca0ddd995a77173a1438473bf82734cb3a09fafe7050bda9bd592a1cf078fa38
1285Result.Y = 379da87952d36c5396b934a2ce8b003ee8fc4155b3b488f2f550734e2a82ce7d
1286
1287Test = PointAdd
1288A.X = 13764cccab4addf5cf4ef5fb4af60a93e08fa3a0a72653abf013e3427abbf82c
1289A.Y = c3dc524745368a0dc4948f897402f4b5a280acbf74f5ea9180d038a483d4090a
1290A.Z = 2903a04d6615ec23cd63ba46287be2e7a8eeee030bed49e7a94769386a46f209
1291B.X = a5c5921f9a8c569f661693bfae1b167937987c2fe951956ef0e34c426965c648
1292B.Y = f8a299605e690a78e583371e59cf2b848d475afc35bb1448981c53ad8c0a6581
1293B.Z = 9c3fde73f1899a76eb40f055fce02ab9c1b1ce7d43b54c54f93ffe56830e3f83
1294Result.X = 4073318e85bc2d7637fd0129fa8eb86b6ca20334542795f3bb1de54b90a16b69
1295Result.Y = 9a1b1e7435d98287b244d2337f8bf0e9c87b40677bf1ea2a9dedbd07c5241ee0
1296
1297Test = PointAdd
1298A.X = f72706b81fca2b1530238bdc2c0c454b5116ee54fdf156bc62bffea73f0645af
1299A.Y = c6e66d9ae8fc5e164e6a985f866aae41f3c4e4281a0eea9173e4e77cb29e4bc7
1300A.Z = 6a84f9c37634b8aefdae477e9efec66f20d2f6159575f40c7b21a1e0732e8c49
1301B.X = bcf21b020cb8fb4b2ef7f639240d221dd96fc08d7fa575c2e7037fc84d8f03b2
1302B.Y = abc500f82f06f0d69a920c8d80eef9dd2310cd09e0d89d80fc7397aa4e361dd1
1303B.Z = 5031c46be15f9d4fa9a347be998c07f9cc7f754999fe0f9c3c8b38e0d85dda9f
1304Result.X = 401b010df4dd21ed96f7c8babb401db74b3b6ee7f55c498803203855b5911de9
1305Result.Y = 05e585cca569bc22855f7df32b20a4a45315a1ca5d98d2b94792eb748ec8744b
1306
1307Test = PointAdd
1308A.X = 7b44b52e9fb1bc58c81a2adc9bfedcc42bba3cb34ec666e51cba8050d48fdb37
1309A.Y = 2b7e629fef7b4e175f5eb30c421e60f26fefdf5f9fed743cad4a8e638c18696a
1310A.Z = 68f31acd92bed56a4556e954b0c51f9f8f3b797bc853d1b2b01b228657bd317f
1311B.X = 3d293c36fd065d1f054eb218932d60feb00d1bd4bee0236cb9788d9723df9571
1312B.Y = c8b893b8e9ff935f2e060227334e32ba144f4046b1bd4961f4479ad3fef1c7d2
1313B.Z = 9c072deacfe5c025c763efebb4feab79e954c47d3e86ef4abfbd1901f50d8495
1314Result.X = 245582d32415c77a2e3abbf844cf1a40c31466c1418cd279747e5394744509be
1315Result.Y = 5c2f80f947d2df7fb1f829d05c6175f6fce7cd2d7f79fd7aa865f930e910e9fd
1316
1317Test = PointAdd
1318A.X = 75ab91b8a46a5a1abf827cb209373b28cbb8f83a06adf6a9b10ac76e22493ecc
1319A.Y = abd989a78d1bcee7e63920d7e637f9763901da408a9d8c731e4e65a6fc52e1a1
1320A.Z = 188a24145243ca066c35870e5a8835532ad512fbdcf5f5ae4033b262fa9aa6b8
1321B.X = 5d6e885ec19069b2aa51a2723c98da1f03e8dbc344fe1de0bdb42910ba8bfe96
1322B.Y = a1f86e66eacc38db7e47154a324a16031705b4803addf074037d3320b50dbef8
1323B.Z = 5cff900a783687049a7d497b1f8cd837c479a61f3fef4b7ced180ea82770bc75
1324Result.X = a4029333b9b9db434eea002bd6d4e0d9f3e5317c685511a30ecae351fc60d164
1325Result.Y = 8e9302c77bc6f560c9bec473ef1ffb76b357c0d4794192696bda8e99651798ee
1326
1327Test = PointAdd
1328A.X = 8d1867f890abaa26b634d5d5cdeb0f4abc7ebd16d807479f837fcece592dc0eb
1329A.Y = fc68c801999c12070eddeb3169219c491f9e8fe29cdc4e3cb698ee8471934076
1330A.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1331B.X = 8d1867f890abaa26b634d5d5cdeb0f4abc7ebd16d807479f837fcece592dc0eb
1332B.Y = fc68c801999c12070eddeb3169219c491f9e8fe29cdc4e3cb698ee8471934076
1333B.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1334Result.X = 8da53dc540c1450c73082ad3b799d0d18a69a747fcd81f847e9e60484dcf579a
1335Result.Y = c20c398e99e0513a452b5e9b6331863d1ac3eee6fcf73021f505a0b62daf6f80
1336
1337Test = PointAdd
1338A.X = 328b983f6490312e37e8eeb2121cd622cf85dbcf78af93df74fbca961ce3bfa2
1339A.Y = 1c8a0aea2f2e540770644f48c41810bf7f9e1a782b2f6397712b17c88109fbce
1340A.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1341B.X = 328b983f6490312e37e8eeb2121cd622cf85dbcf78af93df74fbca961ce3bfa2
1342B.Y = 1c8a0aea2f2e540770644f48c41810bf7f9e1a782b2f6397712b17c88109fbce
1343B.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1344Result.X = b6f3c548944862dfdea2314ca6d6a88780b08da41becf58384af80544aca4966
1345Result.Y = 95afecb4ad3195485a2aad3cd14008c9a7c1e0c02656c3c2b7cd5f2e7f3a4474
1346
1347Test = PointAdd
1348A.X = 3ae6b24cadd6a14612d24a1c094a35c6be56db8f53a6d526e0ede03923918443
1349A.Y = de8a23105c5f5c88b77dbde74e30a56f8865d78a5ce9060cff9f2927dbd196b6
1350A.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1351B.X = 3ae6b24cadd6a14612d24a1c094a35c6be56db8f53a6d526e0ede03923918443
1352B.Y = de8a23105c5f5c88b77dbde74e30a56f8865d78a5ce9060cff9f2927dbd196b6
1353B.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1354Result.X = 6f125b512c3c736f39781fcd89adb653e515b4ce1e1204505f08d0a8480052ef
1355Result.Y = e1acfccf1b9950067adf0f06e0d9703a8b1ac1bbdbb35b08df28cd56c24ae5a0
1356
1357Test = PointAdd
1358A.X = f317c6c02d9a6ff0799b3b4a22f83c95324831baad336ecd0c631ea04a5e11c8
1359A.Y = b624e8057d411031f41b30cd02f56c24e89262e885007b7a1ed1861feb7ffcda
1360A.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1361B.X = f317c6c02d9a6ff0799b3b4a22f83c95324831baad336ecd0c631ea04a5e11c8
1362B.Y = b624e8057d411031f41b30cd02f56c24e89262e885007b7a1ed1861feb7ffcda
1363B.Z = 00000000fffffffeffffffffffffffffffffffff000000000000000000000001
1364Result.X = e805208c74602e54482d113f16fcf6e4600436f8af49705cdd05ecfb0e6d45fd
1365Result.Y = baded898bfead1b4eb3ab3bbd0129837efc85823dabe82718a975bd603f96d9e
1366
1367Test = PointAdd
1368A.X = 3a6802aeaebc67046a1e75152822fa8bab04c11ae2b816f42c073daee3f13274
1369A.Y = d6522c882d18e32bc5ea1fa59efbce8ce2369f2154dcc00e6fb17500f50f8ebf
1370A.Z = bea747d5bb1c6ee865249d7a22378f3c760916e163497f4b6ef4da8adcb5dfab
1371B.X = 3a6802aeaebc67046a1e75152822fa8bab04c11ae2b816f42c073daee3f13274
1372B.Y = d6522c882d18e32bc5ea1fa59efbce8ce2369f2154dcc00e6fb17500f50f8ebf
1373B.Z = bea747d5bb1c6ee865249d7a22378f3c760916e163497f4b6ef4da8adcb5dfab
1374Result.X = 5a2891dca746889d413d8dc1a69b715954baf692689fc32d9aa10b7431a5c149
1375Result.Y = 91db7288536b4f6d78e5a787ecbb5094f6834515038cb070a7fa4870af8045f0
1376
1377Test = PointAdd
1378A.X = c76ddbcb15bc63f82807804536a0d25fd7a639c71adf953ad6cc8f68d915f485
1379A.Y = e3a4f830809f5e91b68699c05fa9faa7c3d1f9d1b1c982c282508fa18d695537
1380A.Z = eb372f19c7b9466a116363ad9114a89ad287523da318d915f59ed5e558bd824e
1381B.X = c76ddbcb15bc63f82807804536a0d25fd7a639c71adf953ad6cc8f68d915f485
1382B.Y = e3a4f830809f5e91b68699c05fa9faa7c3d1f9d1b1c982c282508fa18d695537
1383B.Z = eb372f19c7b9466a116363ad9114a89ad287523da318d915f59ed5e558bd824e
1384Result.X = c5485a3509f55c7cc33d098fb0bfe1b198a9f26ce0ebc29bec5baa29ef6f74a2
1385Result.Y = 60e949a551aa94afc9a3efe411a3c63ecb851ef1738ed24c88f86cf85ec01020
1386
1387Test = PointAdd
1388A.X = ca72936509631f09d2a3ac14fb786daabb15520ef01de4298c7fd71653e89194
1389A.Y = 02aeb6b6f04cd8125887baa18e6e79ba2b0acfa9a2443e9eea36ca7715eb8eb3
1390A.Z = 8b4ef1a52fa42c711445e0463003f2ed38ace6583bf08198e9a0b938b4589479
1391B.X = ca72936509631f09d2a3ac14fb786daabb15520ef01de4298c7fd71653e89194
1392B.Y = 02aeb6b6f04cd8125887baa18e6e79ba2b0acfa9a2443e9eea36ca7715eb8eb3
1393B.Z = 8b4ef1a52fa42c711445e0463003f2ed38ace6583bf08198e9a0b938b4589479
1394Result.X = 8d3b35c5661faafa83510ab9b3f1642bb121e7686ed4ae61323ddee2c7247f93
1395Result.Y = 1a22ef5df156ca80235fe3cd1ca3152e21a3e17b2a34dd93b2003e3274a8a2fb
1396
1397Test = PointAdd
1398A.X = db7b023fbe056819027fa09c5a2a0d777a53fb78c00bf4f31f46b63a7494bbfe
1399A.Y = 59affcbf4628d572ee56b95087d30e765bb518b123e879b25df9960dab706a32
1400A.Z = 1f7c7226d78e51478c683bbb6afe01abc2225dbfc773d0806d30ff5f827b76c8
1401B.X = db7b023fbe056819027fa09c5a2a0d777a53fb78c00bf4f31f46b63a7494bbfe
1402B.Y = 59affcbf4628d572ee56b95087d30e765bb518b123e879b25df9960dab706a32
1403B.Z = 1f7c7226d78e51478c683bbb6afe01abc2225dbfc773d0806d30ff5f827b76c8
1404Result.X = fba400ae656ec3103c5c5f531d2a0f7368031e01a48a91f1a4f3138d294b13be
1405Result.Y = 160e358ad1f059eb62722df01a7440048a1db21ecaea8698efa9677db6e9ff97