**** Merged from MCS ****
[mono-project.git] / mcs / class / corlib / Test / Mono.Math / ArithmeticBigTest.cs
blobecb3280361fff9b5930fc19af475284f6acd283f
1 //
2 // MonoTests.Mono.Math.ArithmeticBig.cs
3 //
4 // Authors:
5 // Ben Maurer
6 //
7 // Copyright (c) 2003 Ben Maurer. All rights reserved
8 //
10 using System;
11 using Mono.Math;
12 using NUnit.Framework;
14 namespace MonoTests.Mono.Math.Arithmetic.Big {
16 public abstract class ArithmeticBig_Base : BigIntegerTestSet {
18 BigInteger A, B;
20 public ArithmeticBig_Base ()
22 A = new BigInteger (a);
23 B = new BigInteger (b);
26 public abstract uint[] a {
27 get;
30 public abstract uint[] b {
31 get;
34 public abstract uint[] ExpectedAplusB {
35 get;
38 public abstract uint[] ExpectedAminusB {
39 get;
42 public abstract uint[] ExpectedAtimesB {
43 get;
46 public abstract uint[] ExpectedAdivB {
47 get;
50 public abstract uint[] ExpectedAmodB {
51 get;
54 public abstract uint[] ExpectedASquared {
55 get;
58 public abstract uint[] ExpectedBSquared {
59 get;
62 #region Addition
64 [Test]
65 public void AplusB ()
67 BigInteger Expected = new BigInteger (ExpectedAplusB);
68 Expect (A + B, Expected);
71 [Test]
72 public void BplusA ()
74 BigInteger Expected = new BigInteger (ExpectedAplusB);
75 Expect (B + A, Expected);
78 #endregion
80 #region Subtraction
82 [Test]
83 public void AminusB ()
85 BigInteger Expected = new BigInteger (ExpectedAminusB);
86 Expect (A - B, Expected);
89 #endregion
91 #region Multiplication
93 [Test]
94 public void AtimesB ()
96 BigInteger Expected = new BigInteger (ExpectedAtimesB);
97 Expect (A * B, Expected);
100 [Test]
101 public void BtimesA ()
103 BigInteger Expected = new BigInteger (ExpectedAtimesB);
104 Expect (B * A, Expected);
107 [Test]
108 public void Asquared ()
110 BigInteger Expected = new BigInteger (ExpectedASquared);
111 Expect (A * A, Expected);
114 [Test]
115 public void Bsquared ()
117 BigInteger Expected = new BigInteger (ExpectedBSquared);
118 Expect (B * B, Expected);
121 #endregion
123 #region Division
125 [Test]
126 public void ABdivB ()
128 BigInteger AB = new BigInteger (ExpectedAtimesB);
129 Expect (AB / B, A);
132 [Test]
133 public void ABdivA ()
135 BigInteger AB = new BigInteger (ExpectedAtimesB);
136 Expect (AB / A, B);
139 [Test]
140 public void AdivB ()
142 BigInteger Expected = new BigInteger (ExpectedAdivB);
143 Expect (A / B, Expected);
145 #endregion
147 #region Mod
148 [Test]
149 public void AmodB ()
151 BigInteger Expected = new BigInteger (ExpectedAmodB);
152 Expect (A % B, Expected);
155 [Test]
156 public void BmodA ()
158 Expect (B % A, B);
161 [Test]
162 public void ABmodB ()
164 BigInteger AB = new BigInteger (ExpectedAtimesB);
165 Expect (AB % B, 0);
168 [Test]
169 public void ABmodA ()
171 BigInteger AB = new BigInteger (ExpectedAtimesB);
172 Expect (AB % A, 0);
175 #endregion
177 #region Compare
179 [Test]
180 public void AgtB ()
182 Assertion.Assert(A > B);
185 [Test]
186 public void ANotLtB ()
188 Assertion.Assert(!(A < B));
191 [Test]
192 public void BNotGtA ()
194 Assertion.Assert(!(B > A));
197 [Test]
198 public void AltB ()
200 Assertion.Assert(B < A);
203 [Test]
204 public void AeqA ()
206 Assertion.Assert(A == A);
208 [Test]
209 public void BeqB ()
211 Assertion.Assert(B == B);
214 [Test]
215 public void AneqB ()
217 Assertion.Assert(A != B);
220 [Test]
221 public void BneqA ()
223 Assertion.Assert(B != A);
226 #endregion
229 public class Random2048a1024b: ArithmeticBig_Base {
231 public override uint[] a {
232 get {
233 return new uint[] {
234 0xdbbda64c, 0x1a4e4dbd, 0x26847ccc, 0xc9897ecc, 0x215759b7, 0x37055866,
235 0x8eb4e2ed, 0xa6c9c7a9, 0x36a087c7, 0x2b1d0192, 0xba08ef99, 0x77f570a1,
236 0x0ab67993, 0xe4064de4, 0xaa860c0d, 0xdbace82b, 0x696df85a, 0x1d22f1ed,
237 0x80d60685, 0xc360f73e, 0x4b8ca13d, 0x1ee5ca6f, 0x42490a0c, 0x00b5e783,
238 0x1b803e1e, 0x3cffe9b9, 0xe17b071e, 0x6ce95cd5, 0x429fdb88, 0xe524a3c7,
239 0x051e452a, 0x834bbf27, 0xe25211f0, 0xc4171b01, 0x4ef237ab, 0xdc8f9efd,
240 0x46efffe7, 0xe162931d, 0x8576eb30, 0x9ac33969, 0x026d2252, 0x41758665,
241 0x9aa43456, 0xa8e4a6f8, 0xe9785649, 0x76c8b136, 0x38a40d78, 0xfa3bacdc,
242 0xcf446c35, 0x8c22cfee, 0x76a47fb3, 0x5cc25cde, 0xade755f5, 0xa31e6711,
243 0xe53ef4c8, 0xe6312f00, 0x215f3377, 0xe66d0dcd, 0xf0563395, 0x130d5918,
244 0x97e5c4bc, 0x3cfc3053, 0xcdbc19ad, 0x87e4011a
249 public override uint[] b {
250 get {
251 return new uint[] {
252 0x92d3b581, 0x2710dd85, 0x59864d28, 0x7952c636, 0x4dbf0478, 0x360ed50e,
253 0xd84ce175, 0xd321f743, 0x0b2434c7, 0xbe833d3a, 0xeec1b441, 0x08c98e67,
254 0xd611fc13, 0x0803415d, 0x415d0cfc, 0xdf006733, 0x54379f5c, 0x8fab3be7,
255 0x3aa840af, 0xb11453f2, 0x8bafb87b, 0x584bdcaf, 0x80a18f6e, 0x1c7bac68,
256 0xe1ac8b8c, 0x4ac52f82, 0x6b510c1d, 0x198fbb6a, 0x5f2ab9d4, 0x40f86f80,
257 0x4114f868, 0xf1c2448e
262 public override uint[] ExpectedAplusB {
263 get {
264 return new uint[] {
265 0xdbbda64c, 0x1a4e4dbd, 0x26847ccc, 0xc9897ecc, 0x215759b7, 0x37055866,
266 0x8eb4e2ed, 0xa6c9c7a9, 0x36a087c7, 0x2b1d0192, 0xba08ef99, 0x77f570a1,
267 0x0ab67993, 0xe4064de4, 0xaa860c0d, 0xdbace82b, 0x696df85a, 0x1d22f1ed,
268 0x80d60685, 0xc360f73e, 0x4b8ca13d, 0x1ee5ca6f, 0x42490a0c, 0x00b5e783,
269 0x1b803e1e, 0x3cffe9b9, 0xe17b071e, 0x6ce95cd5, 0x429fdb88, 0xe524a3c7,
270 0x051e452a, 0x834bbf28, 0x7525c771, 0xeb27f886, 0xa87884d4, 0x55e26533,
271 0x94af0460, 0x1771682c, 0x5dc3cca6, 0x6de530ac, 0x0d915719, 0xfff8c3a0,
272 0x8965e897, 0xb1ae3560, 0xbf8a525c, 0x7ecbf293, 0x7a011a75, 0xd93c1410,
273 0x237c0b92, 0x1bce0bd5, 0xb14cc063, 0x0dd6b0d1, 0x39970e70, 0xfb6a43c1,
274 0x65e08437, 0x02acdb69, 0x030bbf04, 0x31323d50, 0x5ba73fb2, 0x2c9d1482,
275 0xf7107e90, 0x7df49fd4, 0x0ed11216, 0x79a645a8
279 public override uint[] ExpectedAminusB {
280 get {
281 return new uint[] {
282 0xdbbda64c, 0x1a4e4dbd, 0x26847ccc, 0xc9897ecc, 0x215759b7, 0x37055866,
283 0x8eb4e2ed, 0xa6c9c7a9, 0x36a087c7, 0x2b1d0192, 0xba08ef99, 0x77f570a1,
284 0x0ab67993, 0xe4064de4, 0xaa860c0d, 0xdbace82b, 0x696df85a, 0x1d22f1ed,
285 0x80d60685, 0xc360f73e, 0x4b8ca13d, 0x1ee5ca6f, 0x42490a0c, 0x00b5e783,
286 0x1b803e1e, 0x3cffe9b9, 0xe17b071e, 0x6ce95cd5, 0x429fdb88, 0xe524a3c7,
287 0x051e452a, 0x834bbf27, 0x4f7e5c6f, 0x9d063d7b, 0xf56bea83, 0x633cd8c6,
288 0xf930fb6f, 0xab53be0e, 0xad2a09ba, 0xc7a14225, 0xf748ed8a, 0x82f2492a,
289 0xabe28015, 0xa01b1891, 0x13665a36, 0x6ec56fd8, 0xf747007c, 0x1b3b45a9,
290 0x7b0cccd8, 0xfc779407, 0x3bfc3f03, 0xabae08ec, 0x22379d7a, 0x4ad28a62,
291 0x649d655a, 0xc9b58297, 0x3fb2a7eb, 0x9ba7de4b, 0x85052777, 0xf97d9dae,
292 0x38bb0ae7, 0xfc03c0d3, 0x8ca72144, 0x9621bc8c
296 public override uint[] ExpectedAtimesB {
297 get {
298 return new uint[] {
299 0x7e07e1f3, 0x6a675027, 0xbcfd1837, 0xf6fb0771, 0xb9745456, 0x5617bb02,
300 0xc8e784fa, 0xcb769578, 0xb74c305f, 0x98833dec, 0x3c1160a9, 0x38e53c88,
301 0x0a6aaeda, 0x30dd3e16, 0x1c42b026, 0x94170e75, 0x3ad09fa6, 0x71fcd114,
302 0xe9bd23a6, 0x31254d38, 0xec9a6527, 0x3b035cbf, 0xb7513d4e, 0xb0cbbb90,
303 0x94af7307, 0x4acccec8, 0x973f936e, 0x5c5400e4, 0x022d2092, 0x84910b57,
304 0xdca61ea7, 0xde181481, 0xd8cde3cc, 0x033496d3, 0x1b0ddd43, 0x221d6f93,
305 0xd745729d, 0xc6da4bbe, 0x9372df96, 0xc3997aa8, 0xbe4738d5, 0x95f5b824,
306 0x8b077974, 0x91ff2acd, 0x3e3c8970, 0xb0cccc25, 0xdf4a41b5, 0x1aaa83cc,
307 0xab802b5b, 0x9346786a, 0xda7c9172, 0x11c0e5ef, 0x4febcd66, 0x45f31d90,
308 0xbaf46606, 0x21a4ebf4, 0x10d5662e, 0x1b5a9f0e, 0xb4563323, 0x85f627b8,
309 0x67baea50, 0x8c2db69a, 0x3177443d, 0xda1f8cce, 0xeaf7d034, 0x047b8892,
310 0xec507176, 0x594663f0, 0x9d95d110, 0x3813268f, 0x2cadcad2, 0x09515190,
311 0x6a5094ec, 0x6e516b15, 0x08ea1439, 0x90a19c00, 0x7a226467, 0xd1c7c67b,
312 0x883f53db, 0xc6e5d69e, 0x0cc1705a, 0x00d7e17d, 0x8649e8ae, 0x9db9953d,
313 0x2bb6f9d0, 0x3e1050c0, 0xdbb25609, 0xc70d5253, 0xf2a44b0b, 0x88da6d3a,
314 0xb04099bb, 0xbd744c14, 0x89f6d528, 0x92eded15, 0xad5098bc, 0x4077846c
319 public override uint[] ExpectedAdivB {
320 get {
321 return new uint[] {
322 0x1, 0x7f20f9d3, 0x70c59f6f, 0x09a99f2b, 0xc29c063c, 0xd314e8f3, 0xa24af40b,
323 0x3192b797, 0xbad33e25, 0x84cdd287, 0x0a9c0809, 0xed99dcd0, 0xde1ddca0,
324 0x7e456f97, 0x90795f58, 0x8ff42f88, 0x46c6ebda, 0x210b4381, 0x1584beab,
325 0xea01b7ef, 0x855b3e95, 0x575654df, 0x297bbafb, 0x77d1b139, 0x479506ae,
326 0x71dff636, 0xab09c773, 0xb28a10b0, 0xdf69dfa9, 0x6aba0e65, 0x8bae9086,
327 0xb54f14bd, 0xdc75f322
332 public override uint[] ExpectedAmodB {
333 get {
334 return new uint[] {
335 0x1152b33a, 0x34a63caa, 0x14bd4558, 0xd1b57542, 0xc32e9a1b, 0x6c78bbdc,
336 0x65292b48, 0x33307699, 0x9e49510f, 0x6465df13, 0x534d249a, 0x3b3ae2cd,
337 0x5274a150, 0xfeef03ba, 0xe1df6e14, 0xd5ed3135, 0x152dadd4, 0x25086007,
338 0xc94664c4, 0xf3183ada, 0x90e4eb88, 0xafbc13b4, 0xeb316da5, 0x8f822eba,
339 0x868727c9, 0x691d7fea, 0xc0ff07f7, 0x967ae15b, 0x4d667f6c, 0x8ca28f57,
340 0x51d458b8, 0xa81e1c3e
345 public override uint[] ExpectedASquared {
346 get {
347 return new uint[] {
348 0xbc9e0705, 0x2d67995d, 0x97350327, 0x3a6839ef, 0xb2c281b1, 0xc73306b1,
349 0xa4385776, 0x55919b94, 0x790356a6, 0xc3c8cf2f, 0xf42563d3, 0xd03ae4ab,
350 0x3adc5543, 0xdf1c3a93, 0xa89e1577, 0x6b58c8d7, 0x58ad7974, 0x21e33d28,
351 0x5bd00a59, 0x0bf9d5ce, 0xff7cf725, 0xe818fb34, 0xdd2f3d2f, 0x22d5cfc5,
352 0xd68bd585, 0x314fce82, 0x91a0c880, 0x29fc0c7b, 0x3b24edcc, 0x36e7657d,
353 0x7f4ec9f3, 0xb5090067, 0x2d85195f, 0xfd217a73, 0x0ed43997, 0xef24805b,
354 0xf8f01d79, 0x5015e762, 0xaa5dfa5b, 0x30714d09, 0xbd94a537, 0x8d53d6d4,
355 0x7e0ee0ed, 0xeb5e8afe, 0xefaff6a9, 0xfb9e8b68, 0xc9dac138, 0xcd107bcd,
356 0x29511770, 0xc72dc999, 0xcce3cf3e, 0x4aa1a315, 0xcd358309, 0x3eaa51ca,
357 0xce23c07b, 0x4bc7b741, 0xa072f3d1, 0xbc847af0, 0x128391b7, 0x43a1a1ab,
358 0x099c1a8f, 0x03b6fd1a, 0x35346a49, 0xfbf3f4b0, 0xc94e120f, 0xca2c3130,
359 0x8eddcea5, 0x92a27f50, 0xd0dabd5d, 0x72cbfbbb, 0xe244dc44, 0x71b36732,
360 0x512d949a, 0x9b07ff27, 0x9ae278b3, 0x5c67f5eb, 0x9bac1c9b, 0xba315d10,
361 0x9e9e2f78, 0xedd50319, 0xc72aba34, 0x4591a520, 0x47c8e2b8, 0xd2581e44,
362 0x915c8265, 0xa0f3298b, 0x16e3f98d, 0x1d3255eb, 0x67ad4451, 0xb8c6848d,
363 0x5e363aa9, 0xb6d6b34c, 0x0f3d3c57, 0x3186c476, 0x2e3303ef, 0xa1f0b7e2,
364 0xade9a761, 0x9c51030d, 0x1d6a8ab6, 0x1ee7c80e, 0x12d283ff, 0xec6621d7,
365 0x342101aa, 0x175c3957, 0x68de3812, 0x4ccd898d, 0x64e48788, 0xdf95cd4b,
366 0xb474ee50, 0x67c643dc, 0x70e61f88, 0x78870803, 0x1e08a43b, 0x2ad45c61,
367 0x5309867a, 0x7b300960, 0x7393fb7a, 0xf2cf6514, 0x3b92e17b, 0x35dcc866,
368 0x92925ee1, 0x43d5c8b5, 0x5dcd38a1, 0x4d108dfc, 0xd95c5c67, 0x9e8891ac,
369 0xbcb2d55f, 0x625136a4
374 public override uint[] ExpectedBSquared {
375 get {
376 return new uint[] {
377 0x54362a1c, 0x042584df, 0x8222b8fc, 0x8f310535, 0xffffaf04, 0x415816d0,
378 0x909d9ab0, 0x11f120a4, 0x81467638, 0xad441f5f, 0x31e3bb49, 0x8c9b4fa7,
379 0xca48b1b9, 0x438e460d, 0x8863c56a, 0xbd84cf0b, 0xdfc6627b, 0x12446a15,
380 0xb2770965, 0x923a5ce7, 0x24e67a2b, 0x277ad7f5, 0xe324d6e5, 0x15bfdb9a,
381 0x58f48720, 0x3006c299, 0xef162f92, 0xa7bf36ec, 0x98cc398a, 0x014cf447,
382 0xa9c069d2, 0xec9c5268, 0x99293259, 0x5e98903f, 0x21418228, 0x095b2128,
383 0xcdcc1254, 0x27aa19eb, 0x72794988, 0x35f28cc5, 0xe6402a7b, 0x0f630eb5,
384 0xed484279, 0x311df827, 0x81288145, 0xee5b4502, 0x1cdd44bc, 0xf68dacff,
385 0x2e389561, 0x9da07b0c, 0x0a19f8ec, 0xdfb82fe9, 0x1c05e30d, 0xc4ee5182,
386 0xb7aed093, 0xe3bb2e26, 0x1de63a71, 0x82f3f24c, 0x228a0746, 0x30e5e4fa,
387 0x2c936451, 0x190d9e98, 0x892a2bdf, 0x5593bec4
393 public class Random1024a1024b: ArithmeticBig_Base {
395 public override uint[] a {
396 get {
397 return new uint[] {
398 0xe8c8bd9b, 0x0f2d1975, 0x8eaf4c7f, 0xa513ca34, 0x0539c22d, 0xbc167aec,
399 0x92a2cf7d, 0xaf10cb82, 0xc27b9bdd, 0x93c1e4cd, 0x686bd61c, 0xe23f8486,
400 0x99245663, 0xfb924c03, 0x99801568, 0x6fccc5e1, 0x57d4d4ec, 0x93a8267f,
401 0x846ba741, 0x445b28b1, 0x5e898372, 0x670a590d, 0x2897594e, 0xcd480b48,
402 0xa6b8711c, 0xc5046cb6, 0xcc79b3b2, 0x445cd544, 0xefcfbe5d, 0x6b63c7f6,
403 0x51117990, 0x7c80efbe
408 public override uint[] b {
409 get {
410 return new uint[] {
411 0xbee17847, 0xe569d2e5, 0xac236b39, 0x0c489f84, 0xb6696bb6, 0x15f7fe55,
412 0xfb77131c, 0x873fffe9, 0xb257e171, 0x2c828f55, 0xfc928959, 0x47a85c04,
413 0xebf46c67, 0x5abb6902, 0x5be13139, 0x5a511864, 0xf57c0143, 0x13dcc6de,
414 0xcc136221, 0x15f4f853, 0x58f52105, 0x4548a1d8, 0x9c0800ea, 0x3dba87e8,
415 0x9cfa44f3, 0x59122da2, 0x17fe648c, 0x0a5e6c8d, 0x9706505e, 0x21d8d4ad,
416 0xe8d92591, 0xf5e91c22
421 public override uint[] ExpectedAplusB {
422 get {
423 return new uint[] {
424 0x1, 0xa7aa35e2, 0xf496ec5b, 0x3ad2b7b8, 0xb15c69b8, 0xbba32de3, 0xd20e7942,
425 0x8e19e29a, 0x3650cb6c, 0x74d37d4e, 0xc0447423, 0x64fe5f76, 0x29e7e08b,
426 0x8518c2cb, 0x564db505, 0xf56146a1, 0xca1dde46, 0x4d50d62f, 0xa784ed5e,
427 0x507f0962, 0x5a502104, 0xb77ea477, 0xac52fae5, 0xc49f5a39, 0x0b029331,
428 0x43b2b610, 0x1e169a58, 0xe478183e, 0x4ebb41d2, 0x86d60ebb, 0x8d3c9ca4,
429 0x39ea9f22, 0x726a0be0
434 public override uint[] ExpectedAminusB {
435 get {
436 return new uint[] {
437 0x29e74553, 0x29c3468f, 0xe28be146, 0x98cb2aaf, 0x4ed05677, 0xa61e7c96,
438 0x972bbc61, 0x27d0cb99, 0x1023ba6c, 0x673f5577, 0x6bd94cc3, 0x9a972881,
439 0xad2fe9fc, 0xa0d6e301, 0x3d9ee42f, 0x157bad7c, 0x6258d3a9, 0x7fcb5fa0,
440 0xb8584520, 0x2e66305e, 0x0594626d, 0x21c1b734, 0x8c8f5864, 0x8f8d8360,
441 0x09be2c29, 0x6bf23f14, 0xb47b4f26, 0x39fe68b7, 0x58c96dff, 0x498af348,
442 0x683853fe, 0x8697d39c
447 public override uint[] ExpectedAtimesB {
448 get {
449 return new uint[] {
450 0xad920287, 0x33b4e05d, 0xf6782118, 0xc4c63752, 0x068997db, 0xbfee40d7,
451 0x2d4f2993, 0x7eebbea1, 0x1457805b, 0xff8fff22, 0x91057d22, 0x591de9d5,
452 0x0891bc5a, 0xa972a76b, 0xf28a29dc, 0xc391c2a0, 0x54973886, 0x624b2e32,
453 0x7b606c23, 0x2d55978e, 0x5b88b68d, 0xbdddbad5, 0x8d86ac43, 0xef99c973,
454 0x4442b4fd, 0xd56672d2, 0xefbbb6ac, 0x9103ca5f, 0xca7bd8f9, 0x407c45fd,
455 0x6bb9557d, 0x7dfac4b7, 0x0054bc14, 0x218c222e, 0x3483ef14, 0x8e737763,
456 0x1b831e5d, 0x17d28c9f, 0x3a0b544e, 0x49aa11a2, 0x7a244f22, 0xa0397691,
457 0xa7df289f, 0x75c8db6e, 0x2b66ebd9, 0xe5f81ef6, 0x3d1482e4, 0x088605c4,
458 0xf93723e2, 0x414aca69, 0x4902937e, 0x645bc986, 0xd9a76e10, 0x21c21a0d,
459 0x349c40ba, 0xc63fe272, 0x2d3b29c6, 0xadd913bd, 0x1095cfb6, 0x980d74ed,
460 0x5c0c07c2, 0x05a67c9e, 0x2902ea37, 0xad469f3c
465 public override uint[] ExpectedAdivB {
466 get {
467 return new uint[] {
473 public override uint[] ExpectedAmodB {
474 get {
475 return new uint[] {
476 0x29e74553, 0x29c3468f, 0xe28be146, 0x98cb2aaf, 0x4ed05677, 0xa61e7c96,
477 0x972bbc61, 0x27d0cb99, 0x1023ba6c, 0x673f5577, 0x6bd94cc3, 0x9a972881,
478 0xad2fe9fc, 0xa0d6e301, 0x3d9ee42f, 0x157bad7c, 0x6258d3a9, 0x7fcb5fa0,
479 0xb8584520, 0x2e66305e, 0x0594626d, 0x21c1b734, 0x8c8f5864, 0x8f8d8360,
480 0x09be2c29, 0x6bf23f14, 0xb47b4f26, 0x39fe68b7, 0x58c96dff, 0x498af348,
481 0x683853fe, 0x8697d39c
486 public override uint[] ExpectedASquared {
487 get {
488 return new uint[] {
489 0xd3ac7511, 0xda37c6f0, 0xd3676686, 0x3e75ca2d, 0x2c34ab61, 0x220493b2,
490 0x9c0ccf97, 0x9e154a16, 0xd059f25d, 0x88c203f7, 0xb4e8b3b2, 0x1e087384,
491 0x14d55512, 0x44a30dcc, 0x17d7153a, 0xd7f52e45, 0x02274060, 0x76e0336d,
492 0xa8608fbd, 0xf42fca56, 0xe7b95e9d, 0x787c27aa, 0xafc11f13, 0x1b66a178,
493 0x97710f23, 0xa4bdcf90, 0xcf4cafd9, 0x288554ea, 0x294b0a79, 0xc8d02fd9,
494 0x48810d2d, 0x2ea649eb, 0x00fd8df6, 0x6c2c0e3b, 0x09e97167, 0xf78c7c9b,
495 0x8287c66b, 0xaf26b8c1, 0x1b0a7c69, 0x715a86c8, 0x416d1c3f, 0xa74de987,
496 0x119bc8c0, 0x1d5cf66a, 0xbd9e98d4, 0x5c1f72f0, 0x461f0311, 0x3fe6c57b,
497 0xbd827dfe, 0x464e17b0, 0x6746a287, 0xfedf1131, 0x2e4a9384, 0x68b74835,
498 0x7f1890bf, 0x3c8f861b, 0x2ef49f89, 0x9be1f04b, 0xc7d14cc9, 0x57c09b0e,
499 0x32e49f8c, 0xcb2e2d3c, 0x43787af0, 0xae845104
504 public override uint[] ExpectedBSquared {
505 get {
506 return new uint[] {
507 0x8e53751f, 0x5f6dd455, 0xe73df53f, 0x6cca88f3, 0xd7af11fa, 0x32003a1f,
508 0xf0140015, 0xbbaf870f, 0x202242ed, 0xf0515cc7, 0x2cd9d3cc, 0x55c27930,
509 0x58517126, 0x90ac5a65, 0xdf1c572f, 0xa734dfea, 0x1178b713, 0x1463153d,
510 0x04e3f702, 0x25194cf2, 0xf9dcb3db, 0xe213b47b, 0x4666029a, 0x51374275,
511 0xe9b85f80, 0x8d4aaa6e, 0x8ddd7735, 0xa6dda66c, 0x9594a530, 0x5a7f352c,
512 0x3b48c122, 0x50efb29a, 0xc79bd6b4, 0x2440b7ce, 0xe4715871, 0x690421da,
513 0xb3d24cd4, 0x20bc0fd3, 0x22200cd2, 0x0b06278e, 0x4ec52207, 0xace37b7a,
514 0xe512d8bf, 0x9320fae5, 0xe1221b0d, 0x29ee05b6, 0xda382119, 0xe0458dbb,
515 0xc79fc5ad, 0x073db465, 0x9ebc66f3, 0x3a00f27f, 0xb5f59316, 0xd84c2156,
516 0xd4797e82, 0xb280e61b, 0xff54c2ea, 0xce29dfb1, 0x3f304113, 0xf9926e5e,
517 0xed93ce71, 0xf5b54271, 0x320fb6a1, 0x4cfb7484
523 public class Random648a592b: ArithmeticBig_Base {
525 public override uint[] a {
526 get {
527 return new uint[] {
528 0x80, 0xe25d5da8, 0x21955bf0, 0x03a657c4, 0xfc958503, 0x439d9b34,
529 0x751c1ca6, 0xc0efa543, 0x6908a832, 0x5db264fa, 0xb089fca4, 0x629b76a5,
530 0xf156b58e, 0xc18706ad, 0x61bfc9b7, 0x5be1f7ce, 0xdee2ef8f, 0xb0f949d9,
531 0x5a118b6b, 0x5266ffdd, 0x090019ff
536 public override uint[] b {
537 get {
538 return new uint[] {
539 0xf433, 0xdad65473, 0x1679f349, 0x7c8fbada, 0x2fa98df4, 0x3a4f47c9,
540 0x39b128eb, 0xa7ff55ab, 0x8ea2596b, 0x283f32a8, 0xcb1e7271, 0x9b3b77ae,
541 0x371adf91, 0xbc6814b5, 0xd75016f2, 0x22624a3e, 0x2281cda3, 0xd80e824d,
542 0x8ab69459
547 public override uint[] ExpectedAplusB {
548 get {
549 return new uint[] {
550 0x80, 0xe25d5da8, 0x21965023, 0xde7cac38, 0x130f784c, 0xc02d560e,
551 0xa4c5aa9a, 0xfb3eed0c, 0xa2b9d11e, 0x05b1baa6, 0x3f2c560f, 0x8adaa94e,
552 0xbc752800, 0x5cc27e5b, 0x98daa949, 0x184a0c84, 0xb6330681, 0xd35b9417,
553 0x7c93590f, 0x2a75822a, 0x93b6ae58
557 public override uint[] ExpectedAminusB {
558 get {
559 return new uint[] {
560 0x80, 0xe25d5da8, 0x219467bc, 0x28d00351, 0xe61b91b9, 0xc70de05a,
561 0x45728eb2, 0x86a05d7a, 0x2f577f46, 0xb5b30f4f, 0x21e7a339, 0x3a5c43fd,
562 0x2638431d, 0x264b8eff, 0x2aa4ea25, 0x9f79e319, 0x0792d89d, 0x8e96ff9b,
563 0x378fbdc7, 0x7a587d8f, 0x7e4985a6
567 public override uint[] ExpectedAtimesB {
568 get {
569 return new uint[] {
570 0x7af1dc, 0x42892886, 0x270d1508, 0x35afbef2, 0xf32044cc, 0x7ec39e7c,
571 0xd5be5d85, 0xe3e4d670, 0x8f00e646, 0x610c85b9, 0xf49d42aa, 0xd58c679d,
572 0xc518cbd4, 0x810d256b, 0xcf4bf1e6, 0x3d950962, 0xa45fed9c, 0x9961651f,
573 0xf7ee8ff4, 0x69726f4e, 0x66c4e1bc, 0xd254aaa1, 0xc8fb80db, 0xb7186aa6,
574 0xd0a3485b, 0x1d56955c, 0x711f41b6, 0xd8235f7a, 0xf4bc1659, 0xbfd046f3,
575 0xa83904d6, 0x85d2437d, 0xa29ef4be, 0x54bf7242, 0x72e297e5, 0xc11d231c,
576 0xc9642775, 0x95e680d5, 0x215a75a7
581 public override uint[] ExpectedAdivB {
582 get {
583 return new uint[] {
584 0x871c53, 0x1f53c91f
588 public override uint[] ExpectedAmodB {
589 get {
590 return new uint[] {
591 0x5909, 0xfe7418f1, 0x18cafdb8, 0x78b332d4, 0x8734f3ec, 0x248f2ac6,
592 0xf31487c2, 0xd6b17b47, 0x4e035271, 0x7d8eddd3, 0xa1ec3476, 0xaa2ed8c9,
593 0x15fd7425, 0x6bd31fe4, 0x1abfee03, 0xee7a13d7, 0x64c250dc, 0xf50b6c8c,
594 0x028f4238
598 public override uint[] ExpectedASquared {
599 get {
600 return new uint[] {
601 0x40e3, 0x2586a38b, 0x9f13a3ae, 0xd6690553, 0xd60e7eb2, 0x3b040fd1,
602 0xe23ecfa7, 0x46ab3047, 0x16419030, 0xb81c68be, 0x033a0147, 0xf62d84a7,
603 0xbb0dc6a0, 0x9d817e08, 0x04604d2a, 0x87a4bc14, 0xdfd159bc, 0x2d00e161,
604 0x0d089cc2, 0x7b1f4599, 0xa3b67334, 0xa3ac3a3b, 0x26d08e66, 0xfe40ac1b,
605 0x0b51cd6d, 0xe0cdb969, 0x15053d95, 0x09105000, 0x13848bc3, 0x43ac0edf,
606 0x5de02efc, 0xff030324, 0x0153a0ad, 0x21348f68, 0x9e351771, 0xc4485dbf,
607 0xc7e7bcbd, 0xbf36d47e, 0xdfcff8ac, 0xd17be619, 0xf0a3cc01
611 public override uint[] ExpectedBSquared {
612 get {
613 return new uint[] {
614 0xe8f2e3a9, 0x7d72c3f8, 0xbae80572, 0xbfa765fe, 0xf1f2ae8f, 0x014d09f4,
615 0xbb00e418, 0x84108f06, 0xb17d9cab, 0x1e7fbb68, 0x96495444, 0x71e3b073,
616 0x11b725ec, 0xb2412093, 0x99e3013d, 0x6146b623, 0x50a06090, 0xefaa710b,
617 0x73a273bc, 0x10cb33ce, 0x0788144b, 0xc2db435c, 0x23446289, 0x313b9d18,
618 0x596e6c25, 0xab12758e, 0xc00bf8bd, 0x18800070, 0x29117981, 0xc413df55,
619 0xdb4d943f, 0x54331203, 0xa895d355, 0xf6d83621, 0x90ab9202, 0x9564fbb1,
620 0x388306f1
626 public class Carry10_1589a612b: ArithmeticBig_Base {
628 public override uint[] a {
629 get {
630 return new uint[] {
631 0x192483, 0xedfc2a5a, 0xaf6aa3ad, 0xb3c27ee0, 0x1dbb97c0, 0x5a89358e,
632 0x0bc99cc9, 0xee284efd, 0x17d9ca4e, 0x5cb4db86, 0x7f0ddc13, 0xc7711ad4,
633 0x06f375e9, 0x71ec7ca6, 0xbb2eb849, 0x6914bec9, 0x7196db80, 0x5e38d3a6,
634 0xb33d1976, 0x26e7681b, 0x5a189160, 0xa0c2a1c3, 0xdbe797bb, 0xbe2b21ad,
635 0x1014dd56, 0x5a438a13, 0xc48ca63c, 0x022002e1, 0x4a0989d1, 0xbd3f2d76,
636 0x38f7059a, 0xe428965c, 0x02a3f023, 0x2cf84c51, 0xee3c2278, 0x1406d5a1,
637 0xe2e48a81, 0x4f66b880, 0x25b58362, 0x0733403c, 0x9ae2115c, 0x6c9e6310,
638 0xf6e2b83b, 0x88b1229e, 0xf2e7acc6, 0x0e16ec9a, 0xf2cacba4, 0xf5466060,
639 0x8a80d714, 0x6a2e6004
644 public override uint[] b {
645 get {
646 return new uint[] {
647 0x10, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
648 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
649 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
650 0x00000000, 0x00000000
655 public override uint[] ExpectedAplusB {
656 get {
657 return new uint[] {
658 0x192483, 0xedfc2a5a, 0xaf6aa3ad, 0xb3c27ee0, 0x1dbb97c0, 0x5a89358e,
659 0x0bc99cc9, 0xee284efd, 0x17d9ca4e, 0x5cb4db86, 0x7f0ddc13, 0xc7711ad4,
660 0x06f375e9, 0x71ec7ca6, 0xbb2eb849, 0x6914bec9, 0x7196db80, 0x5e38d3a6,
661 0xb33d1976, 0x26e7681b, 0x5a189160, 0xa0c2a1c3, 0xdbe797bb, 0xbe2b21ad,
662 0x1014dd56, 0x5a438a13, 0xc48ca63c, 0x022002e1, 0x4a0989d1, 0xbd3f2d76,
663 0x38f705aa, 0xe428965c, 0x02a3f023, 0x2cf84c51, 0xee3c2278, 0x1406d5a1,
664 0xe2e48a81, 0x4f66b880, 0x25b58362, 0x0733403c, 0x9ae2115c, 0x6c9e6310,
665 0xf6e2b83b, 0x88b1229e, 0xf2e7acc6, 0x0e16ec9a, 0xf2cacba4, 0xf5466060,
666 0x8a80d714, 0x6a2e6004
671 public override uint[] ExpectedAminusB {
672 get {
673 return new uint[] {
674 0x192483, 0xedfc2a5a, 0xaf6aa3ad, 0xb3c27ee0, 0x1dbb97c0, 0x5a89358e,
675 0x0bc99cc9, 0xee284efd, 0x17d9ca4e, 0x5cb4db86, 0x7f0ddc13, 0xc7711ad4,
676 0x06f375e9, 0x71ec7ca6, 0xbb2eb849, 0x6914bec9, 0x7196db80, 0x5e38d3a6,
677 0xb33d1976, 0x26e7681b, 0x5a189160, 0xa0c2a1c3, 0xdbe797bb, 0xbe2b21ad,
678 0x1014dd56, 0x5a438a13, 0xc48ca63c, 0x022002e1, 0x4a0989d1, 0xbd3f2d76,
679 0x38f7058a, 0xe428965c, 0x02a3f023, 0x2cf84c51, 0xee3c2278, 0x1406d5a1,
680 0xe2e48a81, 0x4f66b880, 0x25b58362, 0x0733403c, 0x9ae2115c, 0x6c9e6310,
681 0xf6e2b83b, 0x88b1229e, 0xf2e7acc6, 0x0e16ec9a, 0xf2cacba4, 0xf5466060,
682 0x8a80d714, 0x6a2e6004
687 public override uint[] ExpectedAtimesB {
688 get {
689 return new uint[] {
690 0x192483e, 0xdfc2a5aa, 0xf6aa3adb, 0x3c27ee01, 0xdbb97c05, 0xa89358e0,
691 0xbc99cc9e, 0xe284efd1, 0x7d9ca4e5, 0xcb4db867, 0xf0ddc13c, 0x7711ad40,
692 0x6f375e97, 0x1ec7ca6b, 0xb2eb8496, 0x914bec97, 0x196db805, 0xe38d3a6b,
693 0x33d19762, 0x6e7681b5, 0xa189160a, 0x0c2a1c3d, 0xbe797bbb, 0xe2b21ad1,
694 0x014dd565, 0xa438a13c, 0x48ca63c0, 0x22002e14, 0xa0989d1b, 0xd3f2d763,
695 0x8f7059ae, 0x428965c0, 0x2a3f0232, 0xcf84c51e, 0xe3c22781, 0x406d5a1e,
696 0x2e48a814, 0xf66b8802, 0x5b583620, 0x733403c9, 0xae2115c6, 0xc9e6310f,
697 0x6e2b83b8, 0x8b1229ef, 0x2e7acc60, 0xe16ec9af, 0x2cacba4f, 0x54660608,
698 0xa80d7146, 0xa2e60040, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
699 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
700 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
701 0x00000000, 0x00000000, 0x00000000
706 public override uint[] ExpectedAdivB {
707 get {
708 return new uint[] {
709 0x19248, 0x3edfc2a5, 0xaaf6aa3a, 0xdb3c27ee, 0x01dbb97c, 0x05a89358,
710 0xe0bc99cc, 0x9ee284ef, 0xd17d9ca4, 0xe5cb4db8, 0x67f0ddc1, 0x3c7711ad,
711 0x406f375e, 0x971ec7ca, 0x6bb2eb84, 0x96914bec, 0x97196db8, 0x05e38d3a,
712 0x6b33d197, 0x626e7681, 0xb5a18916, 0x0a0c2a1c, 0x3dbe797b, 0xbbe2b21a,
713 0xd1014dd5, 0x65a438a1, 0x3c48ca63, 0xc022002e, 0x14a0989d, 0x1bd3f2d7,
714 0x638f7059
719 public override uint[] ExpectedAmodB {
720 get {
721 return new uint[] {
722 0xa, 0xe428965c, 0x02a3f023, 0x2cf84c51, 0xee3c2278, 0x1406d5a1, 0xe2e48a81,
723 0x4f66b880, 0x25b58362, 0x0733403c, 0x9ae2115c, 0x6c9e6310, 0xf6e2b83b,
724 0x88b1229e, 0xf2e7acc6, 0x0e16ec9a, 0xf2cacba4, 0xf5466060, 0x8a80d714,
725 0x6a2e6004
730 public override uint[] ExpectedASquared {
731 get {
732 return new uint[] {
733 0x278, 0x26f9da2c, 0x9eeffbc8, 0xcf702902, 0x1e35c385, 0x3b2b2610,
734 0xb02ab71a, 0x3165f09c, 0xdb4768c2, 0x84de913e, 0x37474521, 0x95ea5714,
735 0x722b78fd, 0x703600e4, 0x1e883c87, 0x286772c1, 0xa94e590f, 0xb93d67fd,
736 0xd0194699, 0x4ceb1741, 0x5e4f3d86, 0x30365af8, 0xb22b3d2a, 0x4ea8ffaf,
737 0xe046488c, 0x5e8b4c26, 0xfbc177e6, 0x9c00d7b1, 0x1c597e95, 0xe3c08605,
738 0xe652147c, 0x5ed54f4e, 0x643d3b19, 0xec7e7f4f, 0xc6e1ef37, 0x32ead8f3,
739 0xdcc21123, 0x6b61703f, 0x8e9f8ada, 0x83537069, 0xb7d3bf76, 0x245e39db,
740 0x25d07352, 0xf844cd2a, 0x46dd334c, 0xd71fc2f1, 0x0709a11f, 0x553907da,
741 0x748d17f2, 0x065a05de, 0x07363794, 0xc4790752, 0x6c30b993, 0x0e0d67ff,
742 0xefbd1f94, 0xa07463dd, 0x5ba54f91, 0xe7e21018, 0x4f37e81b, 0x89f6434f,
743 0x3cc714be, 0x95c8588c, 0x73b72300, 0x552f80dc, 0xfa6b1ec6, 0x383f4843,
744 0xcebe7df7, 0x09a867a1, 0xbe736fb7, 0x4570ab4e, 0xd024b70b, 0x95f97b71,
745 0x00db547e, 0x9b6430c8, 0xf3981995, 0xfa8bf51b, 0x49ff9a93, 0xa9d1ee7b,
746 0xd22e4ed7, 0xaccd79e9, 0x4ecbe913, 0x60d98c62, 0xb2963be9, 0xbd288c77,
747 0xb048ce48, 0x13af506a, 0xfab605c1, 0xd2c0b9c8, 0x2b47137e, 0xf0933545,
748 0x67fb359a, 0x4d6f8c23, 0x81086afc, 0x6456062a, 0x32e42a1f, 0xa2d6fc80,
749 0x2d47f9f0, 0x60927cde, 0xfc902889, 0xf5730010
754 public override uint[] ExpectedBSquared {
755 get {
756 return new uint[] {
757 0x100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
758 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
759 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
760 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
761 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
762 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
763 0x00000000, 0x00000000, 0x00000000
769 public class Carry10_2048a512b: ArithmeticBig_Base {
771 public override uint[] a {
772 get {
773 return new uint[] {
774 0x1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
775 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
776 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
777 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
778 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
779 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
780 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
781 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
782 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
783 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
784 0x00000000, 0x00000000, 0x00000000, 0x00000000
789 public override uint[] b {
790 get {
791 return new uint[] {
792 0xa4e3d73d, 0x75eac131, 0x302dc7c5, 0xa47bcd7e, 0x716087de, 0xc58e1aff,
793 0xb2a66ae9, 0x6c00067b, 0x5d8a1d8b, 0x0a424a97, 0xf02a5516, 0x5ce13f11,
794 0x9734eddc, 0xb26f0a2d, 0xdc2eea99, 0xac218b97
799 public override uint[] ExpectedAplusB {
800 get {
801 return new uint[] {
802 0x1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
803 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
804 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
805 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
806 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
807 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
808 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
809 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
810 0xa4e3d73d, 0x75eac131, 0x302dc7c5, 0xa47bcd7e, 0x716087de, 0xc58e1aff,
811 0xb2a66ae9, 0x6c00067b, 0x5d8a1d8b, 0x0a424a97, 0xf02a5516, 0x5ce13f11,
812 0x9734eddc, 0xb26f0a2d, 0xdc2eea99, 0xac218b97
817 public override uint[] ExpectedAminusB {
818 get {
819 return new uint[] {
820 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
821 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
822 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
823 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
824 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
825 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
826 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
827 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
828 0x5b1c28c2, 0x8a153ece, 0xcfd2383a, 0x5b843281, 0x8e9f7821, 0x3a71e500,
829 0x4d599516, 0x93fff984, 0xa275e274, 0xf5bdb568, 0x0fd5aae9, 0xa31ec0ee,
830 0x68cb1223, 0x4d90f5d2, 0x23d11566, 0x53de7469
835 public override uint[] ExpectedAtimesB {
836 get {
837 return new uint[] {
838 0xa4e3d73d, 0x75eac131, 0x302dc7c5, 0xa47bcd7e, 0x716087de, 0xc58e1aff,
839 0xb2a66ae9, 0x6c00067b, 0x5d8a1d8b, 0x0a424a97, 0xf02a5516, 0x5ce13f11,
840 0x9734eddc, 0xb26f0a2d, 0xdc2eea99, 0xac218b97, 0x00000000, 0x00000000,
841 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
842 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
843 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
844 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
845 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
846 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
847 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
848 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
849 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
850 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
851 0x00000000, 0x00000000
856 public override uint[] ExpectedAdivB {
857 get {
858 return new uint[] {
859 0x1, 0x8d73ed52, 0x63ccf8dd, 0xbdf7d56b, 0x5745e24e, 0x33c99f37, 0x50504831,
860 0xbbc7006e, 0xff3c56a3, 0xc6588019, 0x455441a7, 0x2e587257, 0x74865b5d,
861 0x72d47e06, 0xf0087241, 0xa83b2419, 0x6822bd94, 0x8414d0e8, 0xf829760f,
862 0x3f26b3f7, 0x2e593e61, 0xed63d275, 0x47733c04, 0x5cb283d8, 0xa390d3e9,
863 0xae81f5ef, 0xeeaee18c, 0xf4f7204c, 0xdafdfe69, 0xc5589266, 0xca6cf579,
864 0x51bf0855, 0x06c615c0, 0x98b8c458, 0xd35a666f, 0x5b703ba2, 0xecfc2df3,
865 0x125547e8, 0x548104fc, 0xd0d9417e, 0x763bdbc0, 0x5de3e15b, 0x531c9668,
866 0x2724724e, 0x425710f6, 0x484386f9, 0x416a7d95, 0x27ee2792, 0x5dc52c9e
871 public override uint[] ExpectedAmodB {
872 get {
873 return new uint[] {
874 0x9b7fd926, 0x0a7e23f3, 0x81fd3d29, 0x515de74b, 0xead6979c, 0x0a528677,
875 0xe3fed5f9, 0xea231c08, 0x7af3b842, 0x2552eb1d, 0xccfa1564, 0xd60e4d46,
876 0x0754ca39, 0x5aa50851, 0xa02788ed, 0xb91ae4ce
881 public override uint[] ExpectedASquared {
882 get {
883 return new uint[] {
884 0x1, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
885 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
886 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
887 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
888 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
889 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
890 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
891 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
892 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
893 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
894 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
895 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
896 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
897 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
898 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
899 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
900 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
901 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
902 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
903 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
904 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
905 0x00000000, 0x00000000
910 public override uint[] ExpectedBSquared {
911 get {
912 return new uint[] {
913 0x6a34b68e, 0x2b0c30ab, 0x5ba73560, 0x1460a1b5, 0x25249ae7, 0x657f4d83,
914 0xffc12095, 0x4effc129, 0xf17a97ee, 0x5e353b56, 0x7031fd7f, 0x362f9cc2,
915 0xc710f9b6, 0xf0cf83a1, 0xdcd3d217, 0x4a753e4c, 0x8302911c, 0x7c70914e,
916 0xaf2372d5, 0x8f133c24, 0x8ee893ea, 0x95c92a17, 0x0161ecf9, 0xc884260e,
917 0x87da5987, 0x64f242e6, 0xf5ff8d04, 0xc775e988, 0xc24a9407, 0x71b5adfc,
918 0x3949fe76, 0x310b5311
924 public class Carry10_612a612b: ArithmeticBig_Base {
926 public override uint[] a {
927 get {
928 return new uint[] {
929 0x10, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
930 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
931 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
932 0x00000000, 0x00000000
937 public override uint[] b {
938 get {
939 return new uint[] {
940 0x8, 0x73ca4b23, 0x1b754264, 0x22aaac98, 0x0abfe205, 0xf2fd1c98, 0x76a78fb8,
941 0x7398b632, 0x306eacc9, 0xee3a8700, 0xab1bd9e4, 0xf5f53e01, 0x0b6ebccf,
942 0x000e5f13, 0xdd29a13f, 0x49ed6d71, 0x497d8e79, 0x3f8d15b9, 0x3ab921b3,
943 0xd32f5a18
948 public override uint[] ExpectedAplusB {
949 get {
950 return new uint[] {
951 0x18, 0x73ca4b23, 0x1b754264, 0x22aaac98, 0x0abfe205, 0xf2fd1c98,
952 0x76a78fb8, 0x7398b632, 0x306eacc9, 0xee3a8700, 0xab1bd9e4, 0xf5f53e01,
953 0x0b6ebccf, 0x000e5f13, 0xdd29a13f, 0x49ed6d71, 0x497d8e79, 0x3f8d15b9,
954 0x3ab921b3, 0xd32f5a18
959 public override uint[] ExpectedAminusB {
960 get {
961 return new uint[] {
962 0x7, 0x8c35b4dc, 0xe48abd9b, 0xdd555367, 0xf5401dfa, 0x0d02e367, 0x89587047,
963 0x8c6749cd, 0xcf915336, 0x11c578ff, 0x54e4261b, 0x0a0ac1fe, 0xf4914330,
964 0xfff1a0ec, 0x22d65ec0, 0xb612928e, 0xb6827186, 0xc072ea46, 0xc546de4c,
965 0x2cd0a5e8
970 public override uint[] ExpectedAtimesB {
971 get {
972 return new uint[] {
973 0x87, 0x3ca4b231, 0xb7542642, 0x2aaac980, 0xabfe205f, 0x2fd1c987,
974 0x6a78fb87, 0x398b6323, 0x06eacc9e, 0xe3a8700a, 0xb1bd9e4f, 0x5f53e010,
975 0xb6ebccf0, 0x00e5f13d, 0xd29a13f4, 0x9ed6d714, 0x97d8e793, 0xf8d15b93,
976 0xab921b3d, 0x32f5a180, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
977 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
978 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
979 0x00000000, 0x00000000, 0x00000000
984 public override uint[] ExpectedAdivB {
985 get {
986 return new uint[] {
992 public override uint[] ExpectedAmodB {
993 get {
994 return new uint[] {
995 0x7, 0x8c35b4dc, 0xe48abd9b, 0xdd555367, 0xf5401dfa, 0x0d02e367, 0x89587047,
996 0x8c6749cd, 0xcf915336, 0x11c578ff, 0x54e4261b, 0x0a0ac1fe, 0xf4914330,
997 0xfff1a0ec, 0x22d65ec0, 0xb612928e, 0xb6827186, 0xc072ea46, 0xc546de4c,
998 0x2cd0a5e8
1003 public override uint[] ExpectedASquared {
1004 get {
1005 return new uint[] {
1006 0x100, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1007 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1008 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1009 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1010 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1011 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1012 0x00000000, 0x00000000, 0x00000000
1017 public override uint[] ExpectedBSquared {
1018 get {
1019 return new uint[] {
1020 0x47, 0x7104118d, 0xeb746bdc, 0x21bf9b52, 0x01733d95, 0x88b143b1,
1021 0x87f0fb41, 0x65df0c96, 0xc490f2a6, 0x12c8f6ea, 0x252973b1, 0xc0ea701c,
1022 0x71f6701c, 0x69eb7698, 0x2cde7627, 0x137fdad2, 0xc59510bb, 0x64483a25,
1023 0xa16d5cb5, 0xea6d7512, 0x84c280bf, 0xa3b9bf2a, 0x1e289f48, 0x20d752ac,
1024 0x8981bc2d, 0xbf6d17e3, 0xdb46db1e, 0x55564d03, 0xbdba86b5, 0x5f4efcf0,
1025 0x4adf8db1, 0xb32ea58d, 0x15b3d80c, 0xc1792429, 0xba324943, 0xc4c05ae5,
1026 0x43b0b0b6, 0x4e5944d5, 0xc484e240
1032 public class Carry10_924a592b: ArithmeticBig_Base {
1034 public override uint[] a {
1035 get {
1036 return new uint[] {
1037 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1038 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1039 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1040 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1041 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
1046 public override uint[] b {
1047 get {
1048 return new uint[] {
1049 0xeec8, 0xa90762a8, 0xdc8618f1, 0x4f8d783d, 0x0748ca77, 0x44fdeff4,
1050 0xb34f7ca0, 0x81b11736, 0x3ad01b51, 0xba49b2d5, 0x12d298be, 0x730bb558,
1051 0xb7abee99, 0xcb510110, 0x089d9c00, 0xbbade215, 0x7906beaa, 0xe96adc81,
1052 0xb888d515
1057 public override uint[] ExpectedAplusB {
1058 get {
1059 return new uint[] {
1060 0x10000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1061 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000eec8, 0xa90762a8,
1062 0xdc8618f1, 0x4f8d783d, 0x0748ca77, 0x44fdeff4, 0xb34f7ca0, 0x81b11736,
1063 0x3ad01b51, 0xba49b2d5, 0x12d298be, 0x730bb558, 0xb7abee99, 0xcb510110,
1064 0x089d9c00, 0xbbade215, 0x7906beaa, 0xe96adc81, 0xb888d515
1069 public override uint[] ExpectedAminusB {
1070 get {
1071 return new uint[] {
1072 0xfffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1073 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffff1137, 0x56f89d57,
1074 0x2379e70e, 0xb07287c2, 0xf8b73588, 0xbb02100b, 0x4cb0835f, 0x7e4ee8c9,
1075 0xc52fe4ae, 0x45b64d2a, 0xed2d6741, 0x8cf44aa7, 0x48541166, 0x34aefeef,
1076 0xf76263ff, 0x44521dea, 0x86f94155, 0x1695237e, 0x47772aeb
1081 public override uint[] ExpectedAtimesB {
1082 get {
1083 return new uint[] {
1084 0xeec, 0x8a90762a, 0x8dc8618f, 0x14f8d783, 0xd0748ca7, 0x744fdeff,
1085 0x4b34f7ca, 0x081b1173, 0x63ad01b5, 0x1ba49b2d, 0x512d298b, 0xe730bb55,
1086 0x8b7abee9, 0x9cb51011, 0x0089d9c0, 0x0bbade21, 0x57906bea, 0xae96adc8,
1087 0x1b888d51, 0x50000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1088 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1089 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1090 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1091 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
1096 public override uint[] ExpectedAdivB {
1097 get {
1098 return new uint[] {
1099 0x1127, 0x51b35432, 0xce7b7c2d, 0x97083ec4, 0x26a0fd6f, 0x49534242,
1100 0x190ffd84, 0x0a3cf05b, 0x3d4666fa, 0xa8a72cf5, 0x74b047c8
1105 public override uint[] ExpectedAmodB {
1106 get {
1107 return new uint[] {
1108 0x5a34, 0xc1bc59cf, 0x14981300, 0xa6aa3b5b, 0x2d60df09, 0x0d02e128,
1109 0x0340c427, 0xc6069082, 0x8ec3ccdf, 0xe93e223f, 0x5e346e10, 0xec7f1b4c,
1110 0x19777e61, 0x6d9d1012, 0x56c0dc81, 0x17f763a9, 0x526bc8e2, 0xb84858c0,
1111 0xdf90b498
1116 public override uint[] ExpectedASquared {
1117 get {
1118 return new uint[] {
1119 0x1000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1120 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1121 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1122 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1123 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1124 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1125 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1126 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1127 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1128 0x00000000, 0x00000000, 0x00000000, 0x00000000
1133 public override uint[] ExpectedBSquared {
1134 get {
1135 return new uint[] {
1136 0xdeb9b792, 0x4696e25b, 0x66527d74, 0x29e8ba21, 0x7aabbac1, 0xf92534aa,
1137 0xcbb6af91, 0x81c29141, 0xb3eefb25, 0x902b08c1, 0xe5e48df5, 0x539a9458,
1138 0x586e65a8, 0x61cf19a4, 0xb7087d2e, 0xa86df134, 0xf7c037e2, 0x358db628,
1139 0xb91e6f64, 0x1603d551, 0x8ccbb468, 0x9510d3b9, 0x0b3b4413, 0x3e4d261a,
1140 0x4bf7be1a, 0xf71c88ac, 0xbf509806, 0x0b25bb31, 0x022b093f, 0x47c200aa,
1141 0x73bcbbc5, 0x786bcfd7, 0x01e83960, 0xf7a5257d, 0x844747fb, 0x5c8bd29b,
1142 0x47abf3b9
1148 public class CarryFF_2048a512b: ArithmeticBig_Base {
1150 public override uint[] a {
1151 get {
1152 return new uint[] {
1153 0x1, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1154 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1155 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1156 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1157 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1158 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1159 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1160 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1161 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1162 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1163 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
1168 public override uint[] b {
1169 get {
1170 return new uint[] {
1171 0xd3d9d10e, 0xb2f0b0d3, 0x1f13609b, 0x39b039c5, 0x35de9114, 0x8f4e7bc6,
1172 0xf22166c4, 0x385ef08f, 0xcee7b659, 0xef7b9e0d, 0xa8db00d2, 0x2b078e0d,
1173 0x11591b10, 0xd6b0c621, 0x6ff27375, 0xf5e4aa7a
1178 public override uint[] ExpectedAplusB {
1179 get {
1180 return new uint[] {
1181 0x2, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1182 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1183 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1184 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1185 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1186 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1187 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1188 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1189 0xd3d9d10e, 0xb2f0b0d3, 0x1f13609b, 0x39b039c5, 0x35de9114, 0x8f4e7bc6,
1190 0xf22166c4, 0x385ef08f, 0xcee7b659, 0xef7b9e0d, 0xa8db00d2, 0x2b078e0d,
1191 0x11591b10, 0xd6b0c621, 0x6ff27375, 0xf5e4aa79
1196 public override uint[] ExpectedAminusB {
1197 get {
1198 return new uint[] {
1199 0x1, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1200 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1201 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1202 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1203 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1204 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1205 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1206 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1207 0x2c262ef1, 0x4d0f4f2c, 0xe0ec9f64, 0xc64fc63a, 0xca216eeb, 0x70b18439,
1208 0x0dde993b, 0xc7a10f70, 0x311849a6, 0x108461f2, 0x5724ff2d, 0xd4f871f2,
1209 0xeea6e4ef, 0x294f39de, 0x900d8c8a, 0x0a1b5585
1214 public override uint[] ExpectedAtimesB {
1215 get {
1216 return new uint[] {
1217 0x1, 0xa7b3a21d, 0x65e161a6, 0x3e26c136, 0x7360738a, 0x6bbd2229, 0x1e9cf78d,
1218 0xe442cd88, 0x70bde11f, 0x9dcf6cb3, 0xdef73c1b, 0x51b601a4, 0x560f1c1a,
1219 0x22b23621, 0xad618c42, 0xdfe4e6eb, 0xebc954f3, 0xffffffff, 0xffffffff,
1220 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1221 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1222 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1223 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1224 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1225 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1226 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1227 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0x2c262ef1, 0x4d0f4f2c,
1228 0xe0ec9f64, 0xc64fc63a, 0xca216eeb, 0x70b18439, 0x0dde993b, 0xc7a10f70,
1229 0x311849a6, 0x108461f2, 0x5724ff2d, 0xd4f871f2, 0xeea6e4ef, 0x294f39de,
1230 0x900d8c8a, 0x0a1b5586
1235 public override uint[] ExpectedAdivB {
1236 get {
1237 return new uint[] {
1238 0x2, 0x6ab30e86, 0xa5eab10c, 0xf0b110fb, 0x4bbdab3e, 0x7077f470, 0xd425b304,
1239 0xd27d54c9, 0xf9dad24b, 0xf3b6936d, 0x829f2349, 0x5a49aac1, 0x10c451c4,
1240 0x2e2ce79d, 0xbb2876b1, 0xfd6c2716, 0xa03d330e, 0x95e99dc8, 0x66bba462,
1241 0x9f896b2b, 0x75282af8, 0xb3d317ff, 0x978d1249, 0x34b9dd27, 0x47e9d339,
1242 0x52900cd0, 0xc916641c, 0xcdddd3b5, 0xf8cf823f, 0xd9a48128, 0x9104dab4,
1243 0x1113dc0d, 0x537298d1, 0x5295c52d, 0xf1583e39, 0x38697c80, 0xaed83a88,
1244 0x50b49c28, 0xd7639120, 0x7ce405c9, 0xd1ff44c7, 0xf3ec6b98, 0x660fe843,
1245 0xc1dead4a, 0x7ff025af, 0x6055a2e6, 0x9070248a, 0xd3d0e8bd, 0x510b3167
1250 public override uint[] ExpectedAmodB {
1251 get {
1252 return new uint[] {
1253 0x128ca249, 0x61b38561, 0x5865396f, 0xda82264b, 0xf7650aca, 0xc618f1d1,
1254 0x58a82223, 0x31f0e3d2, 0x5ca39e46, 0xb9e5e9d4, 0xc980b4bb, 0x6e6c387a,
1255 0xf220f6d7, 0x5e55e72c, 0x6f0aa0a3, 0x5f200ee9
1260 public override uint[] ExpectedASquared {
1261 get {
1262 return new uint[] {
1263 0x3, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1264 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1265 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1266 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1267 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1268 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1269 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1270 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1271 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1272 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1273 0xffffffff, 0xffffffff, 0xffffffff, 0xfffffffc, 0x00000000, 0x00000000,
1274 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1275 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1276 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1277 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1278 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1279 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1280 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1281 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1282 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1283 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1284 0x00000000, 0x00000001
1289 public override uint[] ExpectedBSquared {
1290 get {
1291 return new uint[] {
1292 0xaf50c7f2, 0x509d208c, 0xdb444820, 0x4f5080ac, 0xf68e26d4, 0x3266b318,
1293 0x795ae7c9, 0x909bb5f9, 0x595442ea, 0xa7c63be2, 0x0860a3cc, 0x18bfe855,
1294 0x1343dd40, 0x49fb6aca, 0x09698366, 0xa5a58482, 0x4ce53840, 0x85332cd5,
1295 0x24eb28fc, 0x4027d419, 0xb81f6430, 0xac6e4e0b, 0x6e67b5d7, 0xfbe3c71f,
1296 0xd0a4e850, 0xed7e4428, 0x87b66bb8, 0xf8d65494, 0xc6bbd534, 0x46bd0ce2,
1297 0x3b04ea11, 0x9ed64224
1303 public class CarryFF_2048a2048b: ArithmeticBig_Base {
1305 public override uint[] a {
1306 get {
1307 return new uint[] {
1308 0x1, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1309 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1310 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1311 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1312 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1313 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1314 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1315 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1316 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1317 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1318 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
1323 public override uint[] b {
1324 get {
1325 return new uint[] {
1326 0xb731d57c, 0x8e2f779e, 0x7d1fab2a, 0x364776a2, 0x2cc5c154, 0xa74a02e3,
1327 0x4743c390, 0xc08a2586, 0x5456059e, 0xd343063f, 0x091b1db7, 0x6d58e725,
1328 0xdb66c9ce, 0x6af4c80f, 0x274553cd, 0xde2fa475, 0xb0b1f796, 0x02c09afc,
1329 0xea7a64be, 0x2c95dc03, 0x989777c9, 0xea40893e, 0x9a9c1d65, 0xf096fa51,
1330 0xc4f33acf, 0x5350c4e7, 0x1815cc9b, 0x9821cb7b, 0x63122665, 0x09294d5f,
1331 0xb00c1de2, 0x87b5a827, 0xcb57546b, 0x49edabfb, 0x20e281e0, 0x00de2802,
1332 0xc2e1d451, 0xbdef52d1, 0xac71dc7a, 0x67f8a302, 0x73f2ddad, 0x7a216bd0,
1333 0xbd3016da, 0xdc80da93, 0x5b24f481, 0xb2f6e9e9, 0x58878f22, 0x808910a3,
1334 0xcb67c1e9, 0x6ff38125, 0xe244f915, 0xa5752720, 0xf1e4c7e3, 0x81c30d54,
1335 0x0a1e215a, 0xac58c2bf, 0xba5bf3cf, 0x5cad50d3, 0xaeb62831, 0xcda95ef5,
1336 0x787a1755, 0x484f87c0, 0xf284a112, 0xfba4cc92
1341 public override uint[] ExpectedAplusB {
1342 get {
1343 return new uint[] {
1344 0x2, 0xb731d57c, 0x8e2f779e, 0x7d1fab2a, 0x364776a2, 0x2cc5c154, 0xa74a02e3,
1345 0x4743c390, 0xc08a2586, 0x5456059e, 0xd343063f, 0x091b1db7, 0x6d58e725,
1346 0xdb66c9ce, 0x6af4c80f, 0x274553cd, 0xde2fa475, 0xb0b1f796, 0x02c09afc,
1347 0xea7a64be, 0x2c95dc03, 0x989777c9, 0xea40893e, 0x9a9c1d65, 0xf096fa51,
1348 0xc4f33acf, 0x5350c4e7, 0x1815cc9b, 0x9821cb7b, 0x63122665, 0x09294d5f,
1349 0xb00c1de2, 0x87b5a827, 0xcb57546b, 0x49edabfb, 0x20e281e0, 0x00de2802,
1350 0xc2e1d451, 0xbdef52d1, 0xac71dc7a, 0x67f8a302, 0x73f2ddad, 0x7a216bd0,
1351 0xbd3016da, 0xdc80da93, 0x5b24f481, 0xb2f6e9e9, 0x58878f22, 0x808910a3,
1352 0xcb67c1e9, 0x6ff38125, 0xe244f915, 0xa5752720, 0xf1e4c7e3, 0x81c30d54,
1353 0x0a1e215a, 0xac58c2bf, 0xba5bf3cf, 0x5cad50d3, 0xaeb62831, 0xcda95ef5,
1354 0x787a1755, 0x484f87c0, 0xf284a112, 0xfba4cc91
1359 public override uint[] ExpectedAminusB {
1360 get {
1361 return new uint[] {
1362 0x1, 0x48ce2a83, 0x71d08861, 0x82e054d5, 0xc9b8895d, 0xd33a3eab, 0x58b5fd1c,
1363 0xb8bc3c6f, 0x3f75da79, 0xaba9fa61, 0x2cbcf9c0, 0xf6e4e248, 0x92a718da,
1364 0x24993631, 0x950b37f0, 0xd8baac32, 0x21d05b8a, 0x4f4e0869, 0xfd3f6503,
1365 0x15859b41, 0xd36a23fc, 0x67688836, 0x15bf76c1, 0x6563e29a, 0x0f6905ae,
1366 0x3b0cc530, 0xacaf3b18, 0xe7ea3364, 0x67de3484, 0x9cedd99a, 0xf6d6b2a0,
1367 0x4ff3e21d, 0x784a57d8, 0x34a8ab94, 0xb6125404, 0xdf1d7e1f, 0xff21d7fd,
1368 0x3d1e2bae, 0x4210ad2e, 0x538e2385, 0x98075cfd, 0x8c0d2252, 0x85de942f,
1369 0x42cfe925, 0x237f256c, 0xa4db0b7e, 0x4d091616, 0xa77870dd, 0x7f76ef5c,
1370 0x34983e16, 0x900c7eda, 0x1dbb06ea, 0x5a8ad8df, 0x0e1b381c, 0x7e3cf2ab,
1371 0xf5e1dea5, 0x53a73d40, 0x45a40c30, 0xa352af2c, 0x5149d7ce, 0x3256a10a,
1372 0x8785e8aa, 0xb7b0783f, 0x0d7b5eed, 0x045b336d
1377 public override uint[] ExpectedAtimesB {
1378 get {
1379 return new uint[] {
1380 0x1, 0x6e63aaf9, 0x1c5eef3c, 0xfa3f5654, 0x6c8eed44, 0x598b82a9, 0x4e9405c6,
1381 0x8e878721, 0x81144b0c, 0xa8ac0b3d, 0xa6860c7e, 0x12363b6e, 0xdab1ce4b,
1382 0xb6cd939c, 0xd5e9901e, 0x4e8aa79b, 0xbc5f48eb, 0x6163ef2c, 0x058135f9,
1383 0xd4f4c97c, 0x592bb807, 0x312eef93, 0xd481127d, 0x35383acb, 0xe12df4a3,
1384 0x89e6759e, 0xa6a189ce, 0x302b9937, 0x304396f6, 0xc6244cca, 0x12529abf,
1385 0x60183bc5, 0x0f6b504f, 0x96aea8d6, 0x93db57f6, 0x41c503c0, 0x01bc5005,
1386 0x85c3a8a3, 0x7bdea5a3, 0x58e3b8f4, 0xcff14604, 0xe7e5bb5a, 0xf442d7a1,
1387 0x7a602db5, 0xb901b526, 0xb649e903, 0x65edd3d2, 0xb10f1e45, 0x01122147,
1388 0x96cf83d2, 0xdfe7024b, 0xc489f22b, 0x4aea4e41, 0xe3c98fc7, 0x03861aa8,
1389 0x143c42b5, 0x58b1857f, 0x74b7e79e, 0xb95aa1a7, 0x5d6c5063, 0x9b52bdea,
1390 0xf0f42eaa, 0x909f0f81, 0xe5094225, 0xf7499923, 0x48ce2a83, 0x71d08861,
1391 0x82e054d5, 0xc9b8895d, 0xd33a3eab, 0x58b5fd1c, 0xb8bc3c6f, 0x3f75da79,
1392 0xaba9fa61, 0x2cbcf9c0, 0xf6e4e248, 0x92a718da, 0x24993631, 0x950b37f0,
1393 0xd8baac32, 0x21d05b8a, 0x4f4e0869, 0xfd3f6503, 0x15859b41, 0xd36a23fc,
1394 0x67688836, 0x15bf76c1, 0x6563e29a, 0x0f6905ae, 0x3b0cc530, 0xacaf3b18,
1395 0xe7ea3364, 0x67de3484, 0x9cedd99a, 0xf6d6b2a0, 0x4ff3e21d, 0x784a57d8,
1396 0x34a8ab94, 0xb6125404, 0xdf1d7e1f, 0xff21d7fd, 0x3d1e2bae, 0x4210ad2e,
1397 0x538e2385, 0x98075cfd, 0x8c0d2252, 0x85de942f, 0x42cfe925, 0x237f256c,
1398 0xa4db0b7e, 0x4d091616, 0xa77870dd, 0x7f76ef5c, 0x34983e16, 0x900c7eda,
1399 0x1dbb06ea, 0x5a8ad8df, 0x0e1b381c, 0x7e3cf2ab, 0xf5e1dea5, 0x53a73d40,
1400 0x45a40c30, 0xa352af2c, 0x5149d7ce, 0x3256a10a, 0x8785e8aa, 0xb7b0783f,
1401 0x0d7b5eed, 0x045b336e
1406 public override uint[] ExpectedAdivB {
1407 get {
1408 return new uint[] {
1413 public override uint[] ExpectedAmodB {
1414 get {
1415 return new uint[] {
1416 0x919c5506, 0xe3a110c3, 0x05c0a9ab, 0x937112bb, 0xa6747d56, 0xb16bfa39,
1417 0x717878de, 0x7eebb4f3, 0x5753f4c2, 0x5979f381, 0xedc9c491, 0x254e31b4,
1418 0x49326c63, 0x2a166fe1, 0xb1755864, 0x43a0b714, 0x9e9c10d3, 0xfa7eca06,
1419 0x2b0b3683, 0xa6d447f8, 0xced1106c, 0x2b7eed82, 0xcac7c534, 0x1ed20b5c,
1420 0x76198a61, 0x595e7631, 0xcfd466c8, 0xcfbc6909, 0x39dbb335, 0xedad6540,
1421 0x9fe7c43a, 0xf094afb0, 0x69515729, 0x6c24a809, 0xbe3afc3f, 0xfe43affa,
1422 0x7a3c575c, 0x84215a5c, 0xa71c470b, 0x300eb9fb, 0x181a44a5, 0x0bbd285e,
1423 0x859fd24a, 0x46fe4ad9, 0x49b616fc, 0x9a122c2d, 0x4ef0e1ba, 0xfeeddeb8,
1424 0x69307c2d, 0x2018fdb4, 0x3b760dd4, 0xb515b1be, 0x1c367038, 0xfc79e557,
1425 0xebc3bd4a, 0xa74e7a80, 0x8b481861, 0x46a55e58, 0xa293af9c, 0x64ad4215,
1426 0x0f0bd155, 0x6f60f07e, 0x1af6bdda, 0x08b666db
1431 public override uint[] ExpectedASquared {
1432 get {
1433 return new uint[] {
1434 0x3, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1435 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1436 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1437 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1438 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1439 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1440 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1441 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1442 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1443 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1444 0xffffffff, 0xffffffff, 0xffffffff, 0xfffffffc, 0x00000000, 0x00000000,
1445 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1446 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1447 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1448 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1449 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1450 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1451 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1452 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1453 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1454 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1455 0x00000000, 0x00000001
1460 public override uint[] ExpectedBSquared {
1461 get {
1462 return new uint[] {
1463 0x831848eb, 0x7efecc65, 0x6b917c16, 0xc02ad024, 0x95d45734, 0x86436661,
1464 0xb659d06b, 0xed2d3d12, 0x8d22697f, 0x42aa156f, 0xa1072a98, 0x56d021ec,
1465 0x71659f68, 0x53afda42, 0xce0c8d36, 0x218e78c9, 0xdac9ff16, 0xd691c60c,
1466 0xf35dcca8, 0xedd6ce19, 0x61c6778e, 0x95b3dbd5, 0x7ac4b8e9, 0xf7219bea,
1467 0xb1ffc29b, 0x3f29f023, 0x9abc7824, 0x8854e481, 0x03ecd704, 0x6545fd15,
1468 0x1e789d7e, 0x64f0d0f2, 0xed7f5f3d, 0xd38a98d1, 0x9f143e4a, 0x74405b96,
1469 0xdd7299a0, 0xe6a03999, 0x962736af, 0x475c8990, 0x6b222718, 0xb2000344,
1470 0x198a8807, 0x59447387, 0x8198a9b0, 0x0e34d28b, 0x2acf7959, 0x4791c51a,
1471 0x545fb0b5, 0x2b95bebb, 0x52c4cfd6, 0x5fa6a819, 0xd87c20a5, 0xe9cd81b4,
1472 0xdc620add, 0x9f236459, 0x1c8058f6, 0xea57d9a4, 0xee9a5f32, 0xe2e6d0d9,
1473 0xd3bb1614, 0x5992c7d9, 0xe62d876e, 0x7d18ab9c, 0x31160464, 0x1d4b15ab,
1474 0xef2178d0, 0x5aebb512, 0x307345ca, 0x6be7e04b, 0xe554a3c3, 0xa271b8e8,
1475 0xb316ef66, 0x84e2cc4c, 0xd3a37fe4, 0x27867429, 0xe0297925, 0xf66c846c,
1476 0xc571306f, 0xa5983076, 0x9694454c, 0xb04f6438, 0x81288598, 0x40dfafca,
1477 0x4f645897, 0xed3a7565, 0x02c41610, 0x321d723d, 0xde46dea7, 0x6aa6de00,
1478 0x294e52eb, 0x49d22518, 0x4b119084, 0xbc07be46, 0xf520d1cc, 0xf8822758,
1479 0x240fd2ba, 0x1b2f9ad9, 0x39bbe880, 0xfe9df2c8, 0x2ee4c826, 0x1f92d91e,
1480 0xf5473b5a, 0x77351fd6, 0x73b2508a, 0xb2aef47d, 0x91945bfc, 0x7340f38d,
1481 0x0a295bda, 0xe59bb199, 0x83b1e7cb, 0x3bd75db1, 0x33c8e678, 0x4b9febfd,
1482 0x27b5953e, 0xe3b53c78, 0x623fc46d, 0x52407458, 0x7b99b946, 0x48ad38aa,
1483 0x25522881, 0xa14df5f5, 0x81bd8270, 0x68f2d9cd, 0x3930bedc, 0x0dc0cda4,
1484 0xa268fbc5, 0x0a890344
1490 public class CarryFF_569a489b: ArithmeticBig_Base {
1492 public override uint[] a {
1493 get {
1494 return new uint[] {
1495 0x3ffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1496 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1497 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
1502 public override uint[] b {
1503 get {
1504 return new uint[] {
1505 0x143, 0xb6570190, 0xc15616df, 0x770d129f, 0x12ad442c, 0x61dd4434,
1506 0x26741e85, 0xe754aaff, 0x05f32773, 0x662eee13, 0x033e9626, 0xf996291a,
1507 0x2d47a501, 0xe84fbb77, 0xbb164332, 0x9b5cc677
1512 public override uint[] ExpectedAplusB {
1513 get {
1514 return new uint[] {
1515 0x4000000, 0x00000000, 0x00000143, 0xb6570190, 0xc15616df, 0x770d129f,
1516 0x12ad442c, 0x61dd4434, 0x26741e85, 0xe754aaff, 0x05f32773, 0x662eee13,
1517 0x033e9626, 0xf996291a, 0x2d47a501, 0xe84fbb77, 0xbb164332, 0x9b5cc676
1521 public override uint[] ExpectedAminusB {
1522 get {
1523 return new uint[] {
1524 0x3ffffff, 0xffffffff, 0xfffffebc, 0x49a8fe6f, 0x3ea9e920, 0x88f2ed60,
1525 0xed52bbd3, 0x9e22bbcb, 0xd98be17a, 0x18ab5500, 0xfa0cd88c, 0x99d111ec,
1526 0xfcc169d9, 0x0669d6e5, 0xd2b85afe, 0x17b04488, 0x44e9bccd, 0x64a33988
1530 public override uint[] ExpectedAtimesB {
1531 get {
1532 return new uint[] {
1533 0x5, 0x0ed95c06, 0x4305585b, 0x7ddc344a, 0x7c4ab510, 0xb1877510, 0xd099d07a,
1534 0x179d52ab, 0xfc17cc9d, 0xcd98bbb8, 0x4c0cfa58, 0x9be658a4, 0x68b51e94,
1535 0x07a13eed, 0xdeec590c, 0xca6d7319, 0xdbffffff, 0xffffffff, 0xfffffebc,
1536 0x49a8fe6f, 0x3ea9e920, 0x88f2ed60, 0xed52bbd3, 0x9e22bbcb, 0xd98be17a,
1537 0x18ab5500, 0xfa0cd88c, 0x99d111ec, 0xfcc169d9, 0x0669d6e5, 0xd2b85afe,
1538 0x17b04488, 0x44e9bccd, 0x64a33989
1543 public override uint[] ExpectedAdivB {
1544 get {
1545 return new uint[] {
1546 0x329ce, 0x3ac64866, 0x804dd21c
1550 public override uint[] ExpectedAmodB {
1551 get {
1552 return new uint[] {
1553 0x135, 0x2915345d, 0x7d81de96, 0x2cd111cc, 0x708e7519, 0x8f9ab2e8,
1554 0x3290ee90, 0x5a4a3bdb, 0x9246ef64, 0xfba67306, 0x6978a7a4, 0xebb25821,
1555 0xaf52890c, 0x7cfeeccd, 0x4db77977, 0xb541acfb
1559 public override uint[] ExpectedASquared {
1560 get {
1561 return new uint[] {
1562 0xfffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1563 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1564 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1565 0xf8000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1566 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1567 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001
1571 public override uint[] ExpectedBSquared {
1572 get {
1573 return new uint[] {
1574 0x19955, 0xa16dc713, 0xc289fc4c, 0x7330e48a, 0x5272262f, 0xff810531,
1575 0x326eeb48, 0xcc5c9bcd, 0xa9ade1f6, 0xde046e24, 0x15c751fb, 0xffa8341c,
1576 0x78e84ab6, 0xfd3eddc3, 0x1b8de164, 0xc3afd26c, 0x679660ca, 0x0042fe9c,
1577 0xfe4e8f34, 0x618b171e, 0x4bd287d5, 0xf262890a, 0x2602a8e4, 0x2f493eec,
1578 0x06a6bd02, 0x969ecadc, 0xd1a0f0ed, 0xeafcee09, 0xb4f421d9, 0x94dd4a6f,
1579 0x59644b51
1585 public class CarryFF_569a489b2: ArithmeticBig_Base {
1587 public override uint[] a {
1588 get {
1589 return new uint[] {
1590 0x3ffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1591 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1592 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
1597 public override uint[] b {
1598 get {
1599 return new uint[] {
1600 0x1f9, 0x505733ec, 0x18619439, 0xf8faa678, 0x08f98e39, 0x74a6aa2a,
1601 0xff120277, 0xdcbc33c5, 0xd99a52c2, 0x0469e5ed, 0x565db652, 0x265e7f3a,
1602 0x287dcd49, 0x27bca834, 0x4a3d43bd, 0xea286963
1607 public override uint[] ExpectedAplusB {
1608 get {
1609 return new uint[] {
1610 0x4000000, 0x00000000, 0x000001f9, 0x505733ec, 0x18619439, 0xf8faa678,
1611 0x08f98e39, 0x74a6aa2a, 0xff120277, 0xdcbc33c5, 0xd99a52c2, 0x0469e5ed,
1612 0x565db652, 0x265e7f3a, 0x287dcd49, 0x27bca834, 0x4a3d43bd, 0xea286962
1616 public override uint[] ExpectedAminusB {
1617 get {
1618 return new uint[] {
1619 0x3ffffff, 0xffffffff, 0xfffffe06, 0xafa8cc13, 0xe79e6bc6, 0x07055987,
1620 0xf70671c6, 0x8b5955d5, 0x00edfd88, 0x2343cc3a, 0x2665ad3d, 0xfb961a12,
1621 0xa9a249ad, 0xd9a180c5, 0xd78232b6, 0xd84357cb, 0xb5c2bc42, 0x15d7969c
1626 public override uint[] ExpectedAtimesB {
1627 get {
1628 return new uint[] {
1629 0x7, 0xe5415ccf, 0xb0618650, 0xe7e3ea99, 0xe023e638, 0xe5d29aa8, 0xabfc4809,
1630 0xdf72f0cf, 0x1766694b, 0x0811a797, 0xb55976d9, 0x489979fc, 0xe8a1f735,
1631 0x249ef2a0, 0xd128f50e, 0xf7a8a1a5, 0x8bffffff, 0xffffffff, 0xfffffe06,
1632 0xafa8cc13, 0xe79e6bc6, 0x07055987, 0xf70671c6, 0x8b5955d5, 0x00edfd88,
1633 0x2343cc3a, 0x2665ad3d, 0xfb961a12, 0xa9a249ad, 0xd9a180c5, 0xd78232b6,
1634 0xd84357cb, 0xb5c2bc42, 0x15d7969d
1639 public override uint[] ExpectedAdivB {
1640 get {
1641 return new uint[] {
1642 0x206c6, 0x4ebbf625, 0x27bb6f89
1647 public override uint[] ExpectedAmodB {
1648 get {
1649 return new uint[] {
1650 0x182, 0x533228c6, 0x9dd3397e, 0x3b27eb8c, 0x3562366d, 0x6ba6b9d8,
1651 0x3484a126, 0x4e1d156a, 0x89ce0d65, 0xfb247cdc, 0x9386673f, 0x3e5a93ac,
1652 0x78008635, 0x46144618, 0x7803d5f4, 0x1a5cad04
1657 public override uint[] ExpectedASquared {
1658 get {
1659 return new uint[] {
1660 0xfffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1661 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1662 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1663 0xf8000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1664 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1665 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001
1670 public override uint[] ExpectedBSquared {
1671 get {
1672 return new uint[] {
1673 0x3e56e, 0x114177a0, 0x15384723, 0x1f337d0f, 0x08acb440, 0x132f0b3d,
1674 0x91db9725, 0xc0778882, 0xd13ce6b5, 0x27f1a641, 0x8984133e, 0xa72a0330,
1675 0xed9590e6, 0xa57b346f, 0x68b348ed, 0x8b78ef0f, 0x80196826, 0xc48d6c46,
1676 0x8432300c, 0x91430fc6, 0x6b082e12, 0x42603ed9, 0x6f0d01ac, 0xb21d3f2a,
1677 0x1abfc5e1, 0x8b09b4c4, 0x5b967354, 0x221f263c, 0x43f2a9dc, 0x32315538,
1678 0x16525c49