﻿ /*******************************
```/******************************************************************************/
/*									      */
/*  COMPUTE THE MINIMUM ELEMENT IN A LOOP				      */
/*  04/15/10 (dkc)							      */
/*									      */
/*  This C program finds the minimum element in a loop.  c is set to 1 or -1. */
/*  Potential loops are in limbs in S of a least-residue tree.	n is the      */
/*  number of odd elements in the limb.  The periods for divisors (d) of n    */
/*  are;								      */
/*									      */
/*     d=5, p=13 (or 14)						      */
/*     d=7, p=10 (or 11)						      */
/*     d=12, p=51 (or 52)						      */
/*     d=17, p=18 (or 17) (large period, 17=2*5+7)			      */
/*     d=19, p=8 (or 9) 						      */
/*     d=22, p=8 (or 7) 						      */
/*     d=26, p=5 (or 4) 						      */
/*     d=27, p=5 (or 4) 						      */
/*     d=29, p=28 (or 27) (large period, 29=3*5+2*7)			      */
/*     d=31, p=8 (or 7) 						      */
/*     d=32, p=3 (or 4) 						      */
/*     d=33, p=3 (or 4) 						      */
/*     d=37, p=3 (or 2) 						      */
/*     d=39, p=5 (or 6) 						      */
/*     d=41, p=60 (or 61) (large period, 41=4*5+3*7)			      */
/*     d=43, p=6 (or 7) 						      */
/*     d=46, p=10 (or 11)						      */
/*     d=47, p=2 (or 3) (sometimes oscillates above or below zero)	      */
/*     d=53, p=? (large)  (large period, 53=5*5+4*7)			      */
/*     d=59, p=2 (or 3) (sometimes oscillates above or below zero)	      */
/*     d=61, p=3 (or 4) 						      */
/*     d=67, p=5 (or 6) 						      */
/*     d=69, p=3 (or 2) 						      */
/*     d=71, p=2 (or 3) (sometimes oscillates above or below zero)	      */
/*     d=73, p=3 (or 4) 						      */
/*     d=79, p=5 (or 4) 						      */
/*     d=81, p=3 (or 2) 						      */
/*     d=83, p=2 (or 3) (sometimes oscillates above or below zero)	      */
/*     d=88, p=2 (or 3) (sometimes oscillates above or below zero)	      */
/*     d=89, p=16 (or 17) (large period, 89=8*5+7*7)			      */
/*									      */
/*  Periods for divisors that are multiples of the above divisors are;	      */
/*									      */
/*     d=10, p=6 (or 7) 						      */
/*     d=14, p=5 (or 6) 						      */
/*     d=15, p=5 (or 4) 						      */
/*     d=20, p=3 (or 4) 						      */
/*     d=21, p=3 (or 4) 						      */
/*     d=24, p=26 (or 25)						      */
/*     d=25, p=3 (or 2) 						      */
/*     d=28, p=3 (or 2) 						      */
/*     d=30, p=3 (or 2) 						      */
/*     d=34, p=8 (or 9) 						      */
/*     d=35, p=2 (or 3) (sometimes oscillates above or below zero)	      */
/*     d=36, p=18 (or 17)						      */
/*     d=38, p=4 (or 5) 						      */
/*     d=40, p=3 (or 2) 						      */
/*     d=42, p=3 (or 2) 						      */
/*     d=44, p=4 (or 3) 						      */
/*     d=45, p=3 (or 4) 						      */
/*     d=48, p=13 (or 12)						      */
/*     d=49, p=3 (or 2) 						      */
/*     d=50, p=4 (or 5) 						      */
/*     d=51, p=5 (or 6) 						      */
/*     d=52, p=3 (or 2) 						      */
/*     d=54, p=3 (or 2) 						      */
/*     d=55, p=5 (or 6) 						      */
/*     d=56, p=4 (or 5) 						      */
/*     d=57, p=3 (or 2) 						      */
/*     d=58, p=13 (or 14)						      */
/*     d=60, p=11 (or 10)						      */
/*     d=62, p=4 (or 3) 						      */
/*     d=63, p=6 (or 7) 						      */
/*     d=64, p=3 (or 2) 						      */
/*     d=65, p=44 (or ?)  (large period, 65=6*5+5*7)			      */
/*     d=66, p=3 (or 2) 						      */
/*     d=68, p=4 (or 5) 						      */
/*     d=70, p=19 (or ?)						      */
/*     d=72, p=9 (or 8) 						      */
/*     d=74, p=3 (or 4) 						      */
/*     d=75, p=7 (or 8) 						      */
/*     d=76, p=2 (or 3) (sometimes oscillates above or below zero)	      */
/*     d=77, p=23 (or 24) (large period, 77=7*5+6*7)			      */
/*     d=78, p=3 (or 2) 						      */
/*     d=80, p=4 (or 5) 						      */
/*     d=81, p=3 (or 2) 						      */
/*     d=82, p=30 (or ?)						      */
/*     d=84, p=7 (or 8) 						      */
/*     d=85, p=3 (or 4) 						      */
/*     d=86, p=3 (or 4) 						      */
/*     d=87, p=9 (or 10)						      */
/*     d=88, p=2 (or 3) (sometimes oscillates above or below zero)	      */
/*     d=90, p=3 (or 2) 						      */
/*									      */
/*  Periods where d is not of the form 5x+7y are;			      */
/*									      */
/*     d=2, p=6 (or 5)							      */
/*     d=3, p=4 (or 5)							      */
/*     d=4, p=3 (or 2)							      */
/*     d=6, p=2 (or 3) (sometimes oscillates above or below zero)	      */
/*     d=8, p=3 (or 4)							      */
/*     d=9, p=4 (or 3)							      */
/*     d=11, p=3 (or 2) 						      */
/*     d=13, p=3 (or 2) 						      */
/*     d=16, p=3 (or 2) 						      */
/*     d=18, p=2 (or 3) (sometimes oscillates above or below zero)	      */
/*     d=23, p=3 (or 2) 						      */
/*									      */
/*  When the predominant period is greater than 2, the x values for a given   */
/*  d value have the general shape of a saw-tooth curve with spikes from      */
/*  either negative values to positive values or positive values to negative  */
/*  values.  The longest periods (and hence the biggest spikes) occur when d  */
/*  is of the form 5*k+7*(k-1), k=1, 2, 3, .... 			      */
/*									      */
/*  The x values for prime pairs are of interest.  Prime pairs (other than    */
/*  (3, 5)) can be classified into two types; in one type, the first prime    */
/*  of the pair is of the form 12*k+5 and in the other type, the first prime  */
/*  of the pair is of the form 12*k-1.	The truncated x values for n=17, 29,  */
/*  29, 41, 101, 137, 149, 197, 269, 281, 461, 521, 569, 617, 641, 809, 821,  */
/*  857, and 881 are 108, 281, 867, -433, -340, -325, -288, -263, -261, 481,  */
/*  770, 1263, 2740, 5699, -1196, -1121, -950, and -868 respectively.  The    */
/*  truncated x values for n=19, 31, 43, 103, 139, 151, 199, 271, 283, 463,   */
/*  523, 571, 619, 643, 811, 823, 859, and 883 are -58, -81, -98, -142, -156, */
/*  -159, -169, -179, -180, 989, 2809, -14586, -2340, -1705, -695, -673, -617,*/
/*  and -587 respectively.  The truncated x values for n=11, 59, 71, 107, 179,*/
/*  191, 227, 239, 311, 347, 419, 431, 599, 659, and 827 are -9, -40, -46,    */
/*  90, 213, 243, 369, 427, 1408, 6689, -1465, -1259, -529, -466, and 1215    */
/*  respectively.  The truncated x values for n=13, 61, 73, 109, 181, 193,    */
/*  229, 241, 313, 349, 421, 433, 601, 661, and 829 are 11, 66, 85, 158, 516, */
/*  655, 1825, 3482, -1165, -797, -543, -520, -371, 674, and 4353 respect-    */
/*  ively.								      */
/*									      */
/******************************************************************************/
#include <math.h>
void addn(unsigned int *a, unsigned int *b, unsigned int n);
void negn(unsigned int *a, unsigned int n);
void rshiftn(unsigned int *a, unsigned int *b, unsigned int shift, unsigned int n);
void lshiftn(unsigned int *a, unsigned int *b, unsigned int shift, unsigned int n);
unsigned int normn(unsigned int *a, unsigned int n);
unsigned int orn(unsigned int *a, unsigned int n);
void copyn(unsigned int *a, unsigned int *b, unsigned int n);
void setn(unsigned int *a, unsigned int b, unsigned int n);
void div128_64(unsigned int a0, unsigned int a1, unsigned int a2,
unsigned int a3, unsigned int *quotient, unsigned int d2,
unsigned int d3);
far unsigned int A[512],B[512],S[512],T[512],C[4];
far int shift[5166];		 // right-shift amounts
far int output[5166];		 // quotients
far int error[2];		 // overflow indicator and counter
far int d=1;			 // divisor of n (should be of the form 5x+7y)
far unsigned int ab[5166*2]={	 // a and b values
0, 1, 0, 2, 1, 2, 1, 3, 2, 3,
2, 4, 3, 4, 4, 4, 4, 5, 5, 5,
5, 6, 6, 6, 7, 6, 7, 7, 8, 7,
8, 8, 9, 8, 9, 9, 10, 9, 11, 9,
11, 10, 12, 10, 12, 11, 13, 11, 14, 11,
14, 12, 15, 12, 15, 13, 16, 13, 16, 14,
17, 14, 18, 14, 18, 15, 19, 15, 19, 16,
20, 16, 21, 16, 21, 17, 22, 17, 22, 18,
23, 18, 23, 19, 24, 19, 25, 19, 25, 20,
26, 20, 26, 21, 27, 21, 28, 21, 28, 22,
29, 22, 29, 23, 30, 23, 31, 23, 31, 24,
32, 24, 32, 25, 33, 25, 33, 26, 34, 26,
35, 26, 35, 27, 36, 27, 36, 28, 37, 28,
38, 28, 38, 29, 39, 29, 39, 30, 40, 30,
40, 31, 41, 31, 42, 31, 42, 32, 43, 32,
43, 33, 44, 33, 45, 33, 45, 34, 46, 34,
46, 35, 47, 35, 47, 36, 48, 36, 49, 36,
49, 37, 50, 37, 50, 38, 51, 38, 52, 38,
52, 39, 53, 39, 53, 40, 54, 40, 54, 41,
55, 41, 56, 41, 56, 42, 57, 42, 57, 43,
58, 43, 59, 43, 59, 44, 60, 44, 60, 45,
61, 45, 62, 45, 62, 46, 63, 46, 63, 47,
64, 47, 64, 48, 65, 48, 66, 48, 66, 49,
67, 49, 67, 50, 68, 50, 69, 50, 69, 51,
70, 51, 70, 52, 71, 52, 71, 53, 72, 53,
73, 53, 73, 54, 74, 54, 74, 55, 75, 55,
76, 55, 76, 56, 77, 56, 77, 57, 78, 57,
78, 58, 79, 58, 80, 58, 80, 59, 81, 59,
81, 60, 82, 60, 83, 60, 83, 61, 84, 61,
84, 62, 85, 62, 85, 63, 86, 63, 87, 63,
87, 64, 88, 64, 88, 65, 89, 65, 90, 65,
90, 66, 91, 66, 91, 67, 92, 67, 93, 67,
93, 68, 94, 68, 94, 69, 95, 69, 95, 70,
96, 70, 97, 70, 97, 71, 98, 71, 98, 72,
99, 72, 100, 72, 100, 73, 101, 73, 101, 74,
102, 74, 102, 75, 103, 75, 104, 75, 104, 76,
105, 76, 105, 77, 106, 77, 107, 77, 107, 78,
108, 78, 108, 79, 109, 79, 109, 80, 110, 80,
111, 80, 111, 81, 112, 81, 112, 82, 113, 82,
114, 82, 114, 83, 115, 83, 115, 84, 116, 84,
116, 85, 117, 85, 118, 85, 118, 86, 119, 86,
119, 87, 120, 87, 121, 87, 121, 88, 122, 88,
122, 89, 123, 89, 124, 89, 124, 90, 125, 90,
125, 91, 126, 91, 126, 92, 127, 92, 128, 92,
128, 93, 129, 93, 129, 94, 130, 94, 131, 94,
131, 95, 132, 95, 132, 96, 133, 96, 133, 97,
134, 97, 135, 97, 135, 98, 136, 98, 136, 99,
137, 99, 138, 99, 138, 100, 139, 100, 139, 101,
140, 101, 140, 102, 141, 102, 142, 102, 142, 103,
143, 103, 143, 104, 144, 104, 145, 104, 145, 105,
146, 105, 146, 106, 147, 106, 147, 107, 148, 107,
149, 107, 149, 108, 150, 108, 150, 109, 151, 109,
152, 109, 152, 110, 153, 110, 153, 111, 154, 111,
155, 111, 155, 112, 156, 112, 156, 113, 157, 113,
157, 114, 158, 114, 159, 114, 159, 115, 160, 115,
160, 116, 161, 116, 162, 116, 162, 117, 163, 117,
163, 118, 164, 118, 164, 119, 165, 119, 166, 119,
166, 120, 167, 120, 167, 121, 168, 121, 169, 121,
169, 122, 170, 122, 170, 123, 171, 123, 171, 124,
172, 124, 173, 124, 173, 125, 174, 125, 174, 126,
175, 126, 176, 126, 176, 127, 177, 127, 177, 128,
178, 128, 178, 129, 179, 129, 180, 129, 180, 130,
181, 130, 181, 131, 182, 131, 183, 131, 183, 132,
184, 132, 184, 133, 185, 133, 186, 133, 186, 134,
187, 134, 187, 135, 188, 135, 188, 136, 189, 136,
190, 136, 190, 137, 191, 137, 191, 138, 192, 138,
193, 138, 193, 139, 194, 139, 194, 140, 195, 140,
195, 141, 196, 141, 197, 141, 197, 142, 198, 142,
198, 143, 199, 143, 200, 143, 200, 144, 201, 144,
201, 145, 202, 145, 202, 146, 203, 146, 204, 146,
204, 147, 205, 147, 205, 148, 206, 148, 207, 148,
207, 149, 208, 149, 208, 150, 209, 150, 210, 150,
210, 151, 211, 151, 211, 152, 212, 152, 212, 153,
213, 153, 214, 153, 214, 154, 215, 154, 215, 155,
216, 155, 217, 155, 217, 156, 218, 156, 218, 157,
219, 157, 219, 158, 220, 158, 221, 158, 221, 159,
222, 159, 222, 160, 223, 160, 224, 160, 224, 161,
225, 161, 225, 162, 226, 162, 226, 163, 227, 163,
228, 163, 228, 164, 229, 164, 229, 165, 230, 165,
231, 165, 231, 166, 232, 166, 232, 167, 233, 167,
233, 168, 234, 168, 235, 168, 235, 169, 236, 169,
236, 170, 237, 170, 238, 170, 238, 171, 239, 171,
239, 172, 240, 172, 241, 172, 241, 173, 242, 173,
242, 174, 243, 174, 243, 175, 244, 175, 245, 175,
245, 176, 246, 176, 246, 177, 247, 177, 248, 177,
248, 178, 249, 178, 249, 179, 250, 179, 250, 180,
251, 180, 252, 180, 252, 181, 253, 181, 253, 182,
254, 182, 255, 182, 255, 183, 256, 183, 256, 184,
257, 184, 257, 185, 258, 185, 259, 185, 259, 186,
260, 186, 260, 187, 261, 187, 262, 187, 262, 188,
263, 188, 263, 189, 264, 189, 264, 190, 265, 190,
266, 190, 266, 191, 267, 191, 267, 192, 268, 192,
269, 192, 269, 193, 270, 193, 270, 194, 271, 194,
272, 194, 272, 195, 273, 195, 273, 196, 274, 196,
274, 197, 275, 197, 276, 197, 276, 198, 277, 198,
277, 199, 278, 199, 279, 199, 279, 200, 280, 200,
280, 201, 281, 201, 281, 202, 282, 202, 283, 202,
283, 203, 284, 203, 284, 204, 285, 204, 286, 204,
286, 205, 287, 205, 287, 206, 288, 206, 288, 207,
289, 207, 290, 207, 290, 208, 291, 208, 291, 209,
292, 209, 293, 209, 293, 210, 294, 210, 294, 211,
295, 211, 295, 212, 296, 212, 297, 212, 297, 213,
298, 213, 298, 214, 299, 214, 300, 214, 300, 215,
301, 215, 301, 216, 302, 216, 303, 216, 303, 217,
304, 217, 304, 218, 305, 218, 305, 219, 306, 219,
307, 219, 307, 220, 308, 220, 308, 221, 309, 221,
310, 221, 310, 222, 311, 222, 311, 223, 312, 223,
312, 224, 313, 224, 314, 224, 314, 225, 315, 225,
315, 226, 316, 226, 317, 226, 317, 227, 318, 227,
318, 228, 319, 228, 319, 229, 320, 229, 321, 229,
321, 230, 322, 230, 322, 231, 323, 231, 324, 231,
324, 232, 325, 232, 325, 233, 326, 233, 326, 234,
327, 234, 328, 234, 328, 235, 329, 235, 329, 236,
330, 236, 331, 236, 331, 237, 332, 237, 332, 238,
333, 238, 334, 238, 334, 239, 335, 239, 335, 240,
336, 240, 336, 241, 337, 241, 338, 241, 338, 242,
339, 242, 339, 243, 340, 243, 341, 243, 341, 244,
342, 244, 342, 245, 343, 245, 343, 246, 344, 246,
345, 246, 345, 247, 346, 247, 346, 248, 347, 248,
348, 248, 348, 249, 349, 249, 349, 250, 350, 250,
350, 251, 351, 251, 352, 251, 352, 252, 353, 252,
353, 253, 354, 253, 355, 253, 355, 254, 356, 254,
356, 255, 357, 255, 357, 256, 358, 256, 359, 256,
359, 257, 360, 257, 360, 258, 361, 258, 362, 258,
362, 259, 363, 259, 363, 260, 364, 260, 365, 260,
365, 261, 366, 261, 366, 262, 367, 262, 367, 263,
368, 263, 369, 263, 369, 264, 370, 264, 370, 265,
371, 265, 372, 265, 372, 266, 373, 266, 373, 267,
374, 267, 374, 268, 375, 268, 376, 268, 376, 269,
377, 269, 377, 270, 378, 270, 379, 270, 379, 271,
380, 271, 380, 272, 381, 272, 381, 273, 382, 273,
383, 273, 383, 274, 384, 274, 384, 275, 385, 275,
386, 275, 386, 276, 387, 276, 387, 277, 388, 277,
389, 277, 389, 278, 390, 278, 390, 279, 391, 279,
391, 280, 392, 280, 393, 280, 393, 281, 394, 281,
394, 282, 395, 282, 396, 282, 396, 283, 397, 283,
397, 284, 398, 284, 398, 285, 399, 285, 400, 285,
400, 286, 401, 286, 401, 287, 402, 287, 403, 287,
403, 288, 404, 288, 404, 289, 405, 289, 405, 290,
406, 290, 407, 290, 407, 291, 408, 291, 408, 292,
409, 292, 410, 292, 410, 293, 411, 293, 411, 294,
412, 294, 412, 295, 413, 295, 414, 295, 414, 296,
415, 296, 415, 297, 416, 297, 417, 297, 417, 298,
418, 298, 418, 299, 419, 299, 420, 299, 420, 300,
421, 300, 421, 301, 422, 301, 422, 302, 423, 302,
424, 302, 424, 303, 425, 303, 425, 304, 426, 304,
427, 304, 427, 305, 428, 305, 428, 306, 429, 306,
429, 307, 430, 307, 431, 307, 431, 308, 432, 308,
432, 309, 433, 309, 434, 309, 434, 310, 435, 310,
435, 311, 436, 311, 436, 312, 437, 312, 438, 312,
438, 313, 439, 313, 439, 314, 440, 314, 441, 314,
441, 315, 442, 315, 442, 316, 443, 316, 443, 317,
444, 317, 445, 317, 445, 318, 446, 318, 446, 319,
447, 319, 448, 319, 448, 320, 449, 320, 449, 321,
450, 321, 451, 321, 451, 322, 452, 322, 452, 323,
453, 323, 453, 324, 454, 324, 455, 324, 455, 325,
456, 325, 456, 326, 457, 326, 458, 326, 458, 327,
459, 327, 459, 328, 460, 328, 460, 329, 461, 329,
462, 329, 462, 330, 463, 330, 463, 331, 464, 331,
465, 331, 465, 332, 466, 332, 466, 333, 467, 333,
467, 334, 468, 334, 469, 334, 469, 335, 470, 335,
470, 336, 471, 336, 472, 336, 472, 337, 473, 337,
473, 338, 474, 338, 474, 339, 475, 339, 476, 339,
476, 340, 477, 340, 477, 341, 478, 341, 479, 341,
479, 342, 480, 342, 480, 343, 481, 343, 482, 343,
482, 344, 483, 344, 483, 345, 484, 345, 484, 346,
485, 346, 486, 346, 486, 347, 487, 347, 487, 348,
488, 348, 489, 348, 489, 349, 490, 349, 490, 350,
491, 350, 491, 351, 492, 351, 493, 351, 493, 352,
494, 352, 494, 353, 495, 353, 496, 353, 496, 354,
497, 354, 497, 355, 498, 355, 498, 356, 499, 356,
500, 356, 500, 357, 501, 357, 501, 358, 502, 358,
503, 358, 503, 359, 504, 359, 504, 360, 505, 360,
505, 361, 506, 361, 507, 361, 507, 362, 508, 362,
508, 363, 509, 363, 510, 363, 510, 364, 511, 364,
511, 365, 512, 365, 513, 365, 513, 366, 514, 366,
514, 367, 515, 367, 515, 368, 516, 368, 517, 368,
517, 369, 518, 369, 518, 370, 519, 370, 520, 370,
520, 371, 521, 371, 521, 372, 522, 372, 522, 373,
523, 373, 524, 373, 524, 374, 525, 374, 525, 375,
526, 375, 527, 375, 527, 376, 528, 376, 528, 377,
529, 377, 529, 378, 530, 378, 531, 378, 531, 379,
532, 379, 532, 380, 533, 380, 534, 380, 534, 381,
535, 381, 535, 382, 536, 382, 536, 383, 537, 383,
538, 383, 538, 384, 539, 384, 539, 385, 540, 385,
541, 385, 541, 386, 542, 386, 542, 387, 543, 387,
544, 387, 544, 388, 545, 388, 545, 389, 546, 389,
546, 390, 547, 390, 548, 390, 548, 391, 549, 391,
549, 392, 550, 392, 551, 392, 551, 393, 552, 393,
552, 394, 553, 394, 553, 395, 554, 395, 555, 395,
555, 396, 556, 396, 556, 397, 557, 397, 558, 397,
558, 398, 559, 398, 559, 399, 560, 399, 560, 400,
561, 400, 562, 400, 562, 401, 563, 401, 563, 402,
564, 402, 565, 402, 565, 403, 566, 403, 566, 404,
567, 404, 567, 405, 568, 405, 569, 405, 569, 406,
570, 406, 570, 407, 571, 407, 572, 407, 572, 408,
573, 408, 573, 409, 574, 409, 575, 409, 575, 410,
576, 410, 576, 411, 577, 411, 577, 412, 578, 412,
579, 412, 579, 413, 580, 413, 580, 414, 581, 414,
582, 414, 582, 415, 583, 415, 583, 416, 584, 416,
584, 417, 585, 417, 586, 417, 586, 418, 587, 418,
587, 419, 588, 419, 589, 419, 589, 420, 590, 420,
590, 421, 591, 421, 591, 422, 592, 422, 593, 422,
593, 423, 594, 423, 594, 424, 595, 424, 596, 424,
596, 425, 597, 425, 597, 426, 598, 426, 599, 426,
599, 427, 600, 427, 600, 428, 601, 428, 601, 429,
602, 429, 603, 429, 603, 430, 604, 430, 604, 431,
605, 431, 606, 431, 606, 432, 607, 432, 607, 433,
608, 433, 608, 434, 609, 434, 610, 434, 610, 435,
611, 435, 611, 436, 612, 436, 613, 436, 613, 437,
614, 437, 614, 438, 615, 438, 615, 439, 616, 439,
617, 439, 617, 440, 618, 440, 618, 441, 619, 441,
620, 441, 620, 442, 621, 442, 621, 443, 622, 443,
622, 444, 623, 444, 624, 444, 624, 445, 625, 445,
625, 446, 626, 446, 627, 446, 627, 447, 628, 447,
628, 448, 629, 448, 630, 448, 630, 449, 631, 449,
631, 450, 632, 450, 632, 451, 633, 451, 634, 451,
634, 452, 635, 452, 635, 453, 636, 453, 637, 453,
637, 454, 638, 454, 638, 455, 639, 455, 639, 456,
640, 456, 641, 456, 641, 457, 642, 457, 642, 458,
643, 458, 644, 458, 644, 459, 645, 459, 645, 460,
646, 460, 646, 461, 647, 461, 648, 461, 648, 462,
649, 462, 649, 463, 650, 463, 651, 463, 651, 464,
652, 464, 652, 465, 653, 465, 653, 466, 654, 466,
655, 466, 655, 467, 656, 467, 656, 468, 657, 468,
658, 468, 658, 469, 659, 469, 659, 470, 660, 470,
661, 470, 661, 471, 662, 471, 662, 472, 663, 472,
663, 473, 664, 473, 665, 473, 665, 474, 666, 474,
666, 475, 667, 475, 668, 475, 668, 476, 669, 476,
669, 477, 670, 477, 670, 478, 671, 478, 672, 478,
672, 479, 673, 479, 673, 480, 674, 480, 675, 480,
675, 481, 676, 481, 676, 482, 677, 482, 677, 483,
678, 483, 679, 483, 679, 484, 680, 484, 680, 485,
681, 485, 682, 485, 682, 486, 683, 486, 683, 487,
684, 487, 684, 488, 685, 488, 686, 488, 686, 489,
687, 489, 687, 490, 688, 490, 689, 490, 689, 491,
690, 491, 690, 492, 691, 492, 692, 492, 692, 493,
693, 493, 693, 494, 694, 494, 694, 495, 695, 495,
696, 495, 696, 496, 697, 496, 697, 497, 698, 497,
699, 497, 699, 498, 700, 498, 700, 499, 701, 499,
701, 500, 702, 500, 703, 500, 703, 501, 704, 501,
704, 502, 705, 502, 706, 502, 706, 503, 707, 503,
707, 504, 708, 504, 708, 505, 709, 505, 710, 505,
710, 506, 711, 506, 711, 507, 712, 507, 713, 507,
713, 508, 714, 508, 714, 509, 715, 509, 715, 510,
716, 510, 717, 510, 717, 511, 718, 511, 718, 512,
719, 512, 720, 512, 720, 513, 721, 513, 721, 514,
722, 514, 723, 514, 723, 515, 724, 515, 724, 516,
725, 516, 725, 517, 726, 517, 727, 517, 727, 518,
728, 518, 728, 519, 729, 519, 730, 519, 730, 520,
731, 520, 731, 521, 732, 521, 732, 522, 733, 522,
734, 522, 734, 523, 735, 523, 735, 524, 736, 524,
737, 524, 737, 525, 738, 525, 738, 526, 739, 526,
739, 527, 740, 527, 741, 527, 741, 528, 742, 528,
742, 529, 743, 529, 744, 529, 744, 530, 745, 530,
745, 531, 746, 531, 746, 532, 747, 532, 748, 532,
748, 533, 749, 533, 749, 534, 750, 534, 751, 534,
751, 535, 752, 535, 752, 536, 753, 536, 754, 536,
754, 537, 755, 537, 755, 538, 756, 538, 756, 539,
757, 539, 758, 539, 758, 540, 759, 540, 759, 541,
760, 541, 761, 541, 761, 542, 762, 542, 762, 543,
763, 543, 763, 544, 764, 544, 765, 544, 765, 545,
766, 545, 766, 546, 767, 546, 768, 546, 768, 547,
769, 547, 769, 548, 770, 548, 770, 549, 771, 549,
772, 549, 772, 550, 773, 550, 773, 551, 774, 551,
775, 551, 775, 552, 776, 552, 776, 553, 777, 553,
778, 553, 778, 554, 779, 554, 779, 555, 780, 555,
780, 556, 781, 556, 782, 556, 782, 557, 783, 557,
783, 558, 784, 558, 785, 558, 785, 559, 786, 559,
786, 560, 787, 560, 787, 561, 788, 561, 789, 561,
789, 562, 790, 562, 790, 563, 791, 563, 792, 563,
792, 564, 793, 564, 793, 565, 794, 565, 794, 566,
795, 566, 796, 566, 796, 567, 797, 567, 797, 568,
798, 568, 799, 568, 799, 569, 800, 569, 800, 570,
801, 570, 801, 571, 802, 571, 803, 571, 803, 572,
804, 572, 804, 573, 805, 573, 806, 573, 806, 574,
807, 574, 807, 575, 808, 575, 809, 575, 809, 576,
810, 576, 810, 577, 811, 577, 811, 578, 812, 578,
813, 578, 813, 579, 814, 579, 814, 580, 815, 580,
816, 580, 816, 581, 817, 581, 817, 582, 818, 582,
818, 583, 819, 583, 820, 583, 820, 584, 821, 584,
821, 585, 822, 585, 823, 585, 823, 586, 824, 586,
824, 587, 825, 587, 825, 588, 826, 588, 827, 588,
827, 589, 828, 589, 828, 590, 829, 590, 830, 590,
830, 591, 831, 591, 831, 592, 832, 592, 832, 593,
833, 593, 834, 593, 834, 594, 835, 594, 835, 595,
836, 595, 837, 595, 837, 596, 838, 596, 838, 597,
839, 597, 840, 597, 840, 598, 841, 598, 841, 599,
842, 599, 842, 600, 843, 600, 844, 600, 844, 601,
845, 601, 845, 602, 846, 602, 847, 602, 847, 603,
848, 603, 848, 604, 849, 604, 849, 605, 850, 605,
851, 605, 851, 606, 852, 606, 852, 607, 853, 607,
854, 607, 854, 608, 855, 608, 855, 609, 856, 609,
856, 610, 857, 610, 858, 610, 858, 611, 859, 611,
859, 612, 860, 612, 861, 612, 861, 613, 862, 613,
862, 614, 863, 614, 863, 615, 864, 615, 865, 615,
865, 616, 866, 616, 866, 617, 867, 617, 868, 617,
868, 618, 869, 618, 869, 619, 870, 619, 871, 619,
871, 620, 872, 620, 872, 621, 873, 621, 873, 622,
874, 622, 875, 622, 875, 623, 876, 623, 876, 624,
877, 624, 878, 624, 878, 625, 879, 625, 879, 626,
880, 626, 880, 627, 881, 627, 882, 627, 882, 628,
883, 628, 883, 629, 884, 629, 885, 629, 885, 630,
886, 630, 886, 631, 887, 631, 887, 632, 888, 632,
889, 632, 889, 633, 890, 633, 890, 634, 891, 634,
892, 634, 892, 635, 893, 635, 893, 636, 894, 636,
894, 637, 895, 637, 896, 637, 896, 638, 897, 638,
897, 639, 898, 639, 899, 639, 899, 640, 900, 640,
900, 641, 901, 641, 902, 641, 902, 642, 903, 642,
903, 643, 904, 643, 904, 644, 905, 644, 906, 644,
906, 645, 907, 645, 907, 646, 908, 646, 909, 646,
909, 647, 910, 647, 910, 648, 911, 648, 911, 649,
912, 649, 913, 649, 913, 650, 914, 650, 914, 651,
915, 651, 916, 651, 916, 652, 917, 652, 917, 653,
918, 653, 918, 654, 919, 654, 920, 654, 920, 655,
921, 655, 921, 656, 922, 656, 923, 656, 923, 657,
924, 657, 924, 658, 925, 658, 925, 659, 926, 659,
927, 659, 927, 660, 928, 660, 928, 661, 929, 661,
930, 661, 930, 662, 931, 662, 931, 663, 932, 663,
933, 663, 933, 664, 934, 664, 934, 665, 935, 665,
935, 666, 936, 666, 937, 666, 937, 667, 938, 667,
938, 668, 939, 668, 940, 668, 940, 669, 941, 669,
941, 670, 942, 670, 942, 671, 943, 671, 944, 671,
944, 672, 945, 672, 945, 673, 946, 673, 947, 673,
947, 674, 948, 674, 948, 675, 949, 675, 949, 676,
950, 676, 951, 676, 951, 677, 952, 677, 952, 678,
953, 678, 954, 678, 954, 679, 955, 679, 955, 680,
956, 680, 956, 681, 957, 681, 958, 681, 958, 682,
959, 682, 959, 683, 960, 683, 961, 683, 961, 684,
962, 684, 962, 685, 963, 685, 964, 685, 964, 686,
965, 686, 965, 687, 966, 687, 966, 688, 967, 688,
968, 688, 968, 689, 969, 689, 969, 690, 970, 690,
971, 690, 971, 691, 972, 691, 972, 692, 973, 692,
973, 693, 974, 693, 975, 693, 975, 694, 976, 694,
976, 695, 977, 695, 978, 695, 978, 696, 979, 696,
979, 697, 980, 697, 980, 698, 981, 698, 982, 698,
982, 699, 983, 699, 983, 700, 984, 700, 985, 700,
985, 701, 986, 701, 986, 702, 987, 702, 988, 702,
988, 703, 989, 703, 989, 704, 990, 704, 990, 705,
991, 705, 992, 705, 992, 706, 993, 706, 993, 707,
994, 707, 995, 707, 995, 708, 996, 708, 996, 709,
997, 709, 997, 710, 998, 710, 999, 710, 999, 711,
1000, 711, 1000, 712, 1001, 712, 1002, 712, 1002, 713,
1003, 713, 1003, 714, 1004, 714, 1004, 715, 1005, 715,
1006, 715, 1006, 716, 1007, 716, 1007, 717, 1008, 717,
1009, 717, 1009, 718, 1010, 718, 1010, 719, 1011, 719,
1011, 720, 1012, 720, 1013, 720, 1013, 721, 1014, 721,
1014, 722, 1015, 722, 1016, 722, 1016, 723, 1017, 723,
1017, 724, 1018, 724, 1019, 724, 1019, 725, 1020, 725,
1020, 726, 1021, 726, 1021, 727, 1022, 727, 1023, 727,
1023, 728, 1024, 728, 1024, 729, 1025, 729, 1026, 729,
1026, 730, 1027, 730, 1027, 731, 1028, 731, 1028, 732,
1029, 732, 1030, 732, 1030, 733, 1031, 733, 1031, 734,
1032, 734, 1033, 734, 1033, 735, 1034, 735, 1034, 736,
1035, 736, 1035, 737, 1036, 737, 1037, 737, 1037, 738,
1038, 738, 1038, 739, 1039, 739, 1040, 739, 1040, 740,
1041, 740, 1041, 741, 1042, 741, 1042, 742, 1043, 742,
1044, 742, 1044, 743, 1045, 743, 1045, 744, 1046, 744,
1047, 744, 1047, 745, 1048, 745, 1048, 746, 1049, 746,
1050, 746, 1050, 747, 1051, 747, 1051, 748, 1052, 748,
1052, 749, 1053, 749, 1054, 749, 1054, 750, 1055, 750,
1055, 751, 1056, 751, 1057, 751, 1057, 752, 1058, 752,
1058, 753, 1059, 753, 1059, 754, 1060, 754, 1061, 754,
1061, 755, 1062, 755, 1062, 756, 1063, 756, 1064, 756,
1064, 757, 1065, 757, 1065, 758, 1066, 758, 1066, 759,
1067, 759, 1068, 759, 1068, 760, 1069, 760, 1069, 761,
1070, 761, 1071, 761, 1071, 762, 1072, 762, 1072, 763,
1073, 763, 1073, 764, 1074, 764, 1075, 764, 1075, 765,
1076, 765, 1076, 766, 1077, 766, 1078, 766, 1078, 767,
1079, 767, 1079, 768, 1080, 768, 1081, 768, 1081, 769,
1082, 769, 1082, 770, 1083, 770, 1083, 771, 1084, 771,
1085, 771, 1085, 772, 1086, 772, 1086, 773, 1087, 773,
1088, 773, 1088, 774, 1089, 774, 1089, 775, 1090, 775,
1090, 776, 1091, 776, 1092, 776, 1092, 777, 1093, 777,
1093, 778, 1094, 778, 1095, 778, 1095, 779, 1096, 779,
1096, 780, 1097, 780, 1097, 781, 1098, 781, 1099, 781,
1099, 782, 1100, 782, 1100, 783, 1101, 783, 1102, 783,
1102, 784, 1103, 784, 1103, 785, 1104, 785, 1104, 786,
1105, 786, 1106, 786, 1106, 787, 1107, 787, 1107, 788,
1108, 788, 1109, 788, 1109, 789, 1110, 789, 1110, 790,
1111, 790, 1112, 790, 1112, 791, 1113, 791, 1113, 792,
1114, 792, 1114, 793, 1115, 793, 1116, 793, 1116, 794,
1117, 794, 1117, 795, 1118, 795, 1119, 795, 1119, 796,
1120, 796, 1120, 797, 1121, 797, 1121, 798, 1122, 798,
1123, 798, 1123, 799, 1124, 799, 1124, 800, 1125, 800,
1126, 800, 1126, 801, 1127, 801, 1127, 802, 1128, 802,
1128, 803, 1129, 803, 1130, 803, 1130, 804, 1131, 804,
1131, 805, 1132, 805, 1133, 805, 1133, 806, 1134, 806,
1134, 807, 1135, 807, 1135, 808, 1136, 808, 1137, 808,
1137, 809, 1138, 809, 1138, 810, 1139, 810, 1140, 810,
1140, 811, 1141, 811, 1141, 812, 1142, 812, 1143, 812,
1143, 813, 1144, 813, 1144, 814, 1145, 814, 1145, 815,
1146, 815, 1147, 815, 1147, 816, 1148, 816, 1148, 817,
1149, 817, 1150, 817, 1150, 818, 1151, 818, 1151, 819,
1152, 819, 1152, 820, 1153, 820, 1154, 820, 1154, 821,
1155, 821, 1155, 822, 1156, 822, 1157, 822, 1157, 823,
1158, 823, 1158, 824, 1159, 824, 1159, 825, 1160, 825,
1161, 825, 1161, 826, 1162, 826, 1162, 827, 1163, 827,
1164, 827, 1164, 828, 1165, 828, 1165, 829, 1166, 829,
1167, 829, 1167, 830, 1168, 830, 1168, 831, 1169, 831,
1169, 832, 1170, 832, 1171, 832, 1171, 833, 1172, 833,
1172, 834, 1173, 834, 1174, 834, 1174, 835, 1175, 835,
1175, 836, 1176, 836, 1176, 837, 1177, 837, 1178, 837,
1178, 838, 1179, 838, 1179, 839, 1180, 839, 1181, 839,
1181, 840, 1182, 840, 1182, 841, 1183, 841, 1183, 842,
1184, 842, 1185, 842, 1185, 843, 1186, 843, 1186, 844,
1187, 844, 1188, 844, 1188, 845, 1189, 845, 1189, 846,
1190, 846, 1190, 847, 1191, 847, 1192, 847, 1192, 848,
1193, 848, 1193, 849, 1194, 849, 1195, 849, 1195, 850,
1196, 850, 1196, 851, 1197, 851, 1198, 851, 1198, 852,
1199, 852, 1199, 853, 1200, 853, 1200, 854, 1201, 854,
1202, 854, 1202, 855, 1203, 855, 1203, 856, 1204, 856,
1205, 856, 1205, 857, 1206, 857, 1206, 858, 1207, 858,
1207, 859, 1208, 859, 1209, 859, 1209, 860, 1210, 860,
1210, 861, 1211, 861, 1212, 861, 1212, 862, 1213, 862,
1213, 863, 1214, 863, 1214, 864, 1215, 864, 1216, 864,
1216, 865, 1217, 865, 1217, 866, 1218, 866, 1219, 866,
1219, 867, 1220, 867, 1220, 868, 1221, 868, 1221, 869,
1222, 869, 1223, 869, 1223, 870, 1224, 870, 1224, 871,
1225, 871, 1226, 871, 1226, 872, 1227, 872, 1227, 873,
1228, 873, 1229, 873, 1229, 874, 1230, 874, 1230, 875,
1231, 875, 1231, 876, 1232, 876, 1233, 876, 1233, 877,
1234, 877, 1234, 878, 1235, 878, 1236, 878, 1236, 879,
1237, 879, 1237, 880, 1238, 880, 1238, 881, 1239, 881,
1240, 881, 1240, 882, 1241, 882, 1241, 883, 1242, 883,
1243, 883, 1243, 884, 1244, 884, 1244, 885, 1245, 885,
1245, 886, 1246, 886, 1247, 886, 1247, 887, 1248, 887,
1248, 888, 1249, 888, 1250, 888, 1250, 889, 1251, 889,
1251, 890, 1252, 890, 1252, 891, 1253, 891, 1254, 891,
1254, 892, 1255, 892, 1255, 893, 1256, 893, 1257, 893,
1257, 894, 1258, 894, 1258, 895, 1259, 895, 1260, 895,
1260, 896, 1261, 896, 1261, 897, 1262, 897, 1262, 898,
1263, 898, 1264, 898, 1264, 899, 1265, 899, 1265, 900,
1266, 900, 1267, 900, 1267, 901, 1268, 901, 1268, 902,
1269, 902, 1269, 903, 1270, 903, 1271, 903, 1271, 904,
1272, 904, 1272, 905, 1273, 905, 1274, 905, 1274, 906,
1275, 906, 1275, 907, 1276, 907, 1276, 908, 1277, 908,
1278, 908, 1278, 909, 1279, 909, 1279, 910, 1280, 910,
1281, 910, 1281, 911, 1282, 911, 1282, 912, 1283, 912,
1283, 913, 1284, 913, 1285, 913, 1285, 914, 1286, 914,
1286, 915, 1287, 915, 1288, 915, 1288, 916, 1289, 916,
1289, 917, 1290, 917, 1291, 917, 1291, 918, 1292, 918,
1292, 919, 1293, 919, 1293, 920, 1294, 920, 1295, 920,
1295, 921, 1296, 921, 1296, 922, 1297, 922, 1298, 922,
1298, 923, 1299, 923, 1299, 924, 1300, 924, 1300, 925,
1301, 925, 1302, 925, 1302, 926, 1303, 926, 1303, 927,
1304, 927, 1305, 927, 1305, 928, 1306, 928, 1306, 929,
1307, 929, 1307, 930, 1308, 930, 1309, 930, 1309, 931,
1310, 931, 1310, 932, 1311, 932, 1312, 932, 1312, 933,
1313, 933, 1313, 934, 1314, 934, 1314, 935, 1315, 935,
1316, 935, 1316, 936, 1317, 936, 1317, 937, 1318, 937,
1319, 937, 1319, 938, 1320, 938, 1320, 939, 1321, 939,
1322, 939, 1322, 940, 1323, 940, 1323, 941, 1324, 941,
1324, 942, 1325, 942, 1326, 942, 1326, 943, 1327, 943,
1327, 944, 1328, 944, 1329, 944, 1329, 945, 1330, 945,
1330, 946, 1331, 946, 1331, 947, 1332, 947, 1333, 947,
1333, 948, 1334, 948, 1334, 949, 1335, 949, 1336, 949,
1336, 950, 1337, 950, 1337, 951, 1338, 951, 1338, 952,
1339, 952, 1340, 952, 1340, 953, 1341, 953, 1341, 954,
1342, 954, 1343, 954, 1343, 955, 1344, 955, 1344, 956,
1345, 956, 1345, 957, 1346, 957, 1347, 957, 1347, 958,
1348, 958, 1348, 959, 1349, 959, 1350, 959, 1350, 960,
1351, 960, 1351, 961, 1352, 961, 1353, 961, 1353, 962,
1354, 962, 1354, 963, 1355, 963, 1355, 964, 1356, 964,
1357, 964, 1357, 965, 1358, 965, 1358, 966, 1359, 966,
1360, 966, 1360, 967, 1361, 967, 1361, 968, 1362, 968,
1362, 969, 1363, 969, 1364, 969, 1364, 970, 1365, 970,
1365, 971, 1366, 971, 1367, 971, 1367, 972, 1368, 972,
1368, 973, 1369, 973, 1369, 974, 1370, 974, 1371, 974,
1371, 975, 1372, 975, 1372, 976, 1373, 976, 1374, 976,
1374, 977, 1375, 977, 1375, 978, 1376, 978, 1377, 978,
1377, 979, 1378, 979, 1378, 980, 1379, 980, 1379, 981,
1380, 981, 1381, 981, 1381, 982, 1382, 982, 1382, 983,
1383, 983, 1384, 983, 1384, 984, 1385, 984, 1385, 985,
1386, 985, 1386, 986, 1387, 986, 1388, 986, 1388, 987,
1389, 987, 1389, 988, 1390, 988, 1391, 988, 1391, 989,
1392, 989, 1392, 990, 1393, 990, 1393, 991, 1394, 991,
1395, 991, 1395, 992, 1396, 992, 1396, 993, 1397, 993,
1398, 993, 1398, 994, 1399, 994, 1399, 995, 1400, 995,
1400, 996, 1401, 996, 1402, 996, 1402, 997, 1403, 997,
1403, 998, 1404, 998, 1405, 998, 1405, 999, 1406, 999,
1406, 1000, 1407, 1000, 1408, 1000, 1408, 1001, 1409, 1001,
1409, 1002, 1410, 1002, 1410, 1003, 1411, 1003, 1412, 1003,
1412, 1004, 1413, 1004, 1413, 1005, 1414, 1005, 1415, 1005,
1415, 1006, 1416, 1006, 1416, 1007, 1417, 1007, 1417, 1008,
1418, 1008, 1419, 1008, 1419, 1009, 1420, 1009, 1420, 1010,
1421, 1010, 1422, 1010, 1422, 1011, 1423, 1011, 1423, 1012,
1424, 1012, 1424, 1013, 1425, 1013, 1426, 1013, 1426, 1014,
1427, 1014, 1427, 1015, 1428, 1015, 1429, 1015, 1429, 1016,
1430, 1016, 1430, 1017, 1431, 1017, 1431, 1018, 1432, 1018,
1433, 1018, 1433, 1019, 1434, 1019, 1434, 1020, 1435, 1020,
1436, 1020, 1436, 1021, 1437, 1021, 1437, 1022, 1438, 1022,
1439, 1022, 1439, 1023, 1440, 1023, 1440, 1024, 1441, 1024,
1441, 1025, 1442, 1025, 1443, 1025, 1443, 1026, 1444, 1026,
1444, 1027, 1445, 1027, 1446, 1027, 1446, 1028, 1447, 1028,
1447, 1029, 1448, 1029, 1448, 1030, 1449, 1030, 1450, 1030,
1450, 1031, 1451, 1031, 1451, 1032, 1452, 1032, 1453, 1032,
1453, 1033, 1454, 1033, 1454, 1034, 1455, 1034, 1455, 1035,
1456, 1035, 1457, 1035, 1457, 1036, 1458, 1036, 1458, 1037,
1459, 1037, 1460, 1037, 1460, 1038, 1461, 1038, 1461, 1039,
1462, 1039, 1462, 1040, 1463, 1040, 1464, 1040, 1464, 1041,
1465, 1041, 1465, 1042, 1466, 1042, 1467, 1042, 1467, 1043,
1468, 1043, 1468, 1044, 1469, 1044, 1470, 1044, 1470, 1045,
1471, 1045, 1471, 1046, 1472, 1046, 1472, 1047, 1473, 1047,
1474, 1047, 1474, 1048, 1475, 1048, 1475, 1049, 1476, 1049,
1477, 1049, 1477, 1050, 1478, 1050, 1478, 1051, 1479, 1051,
1479, 1052, 1480, 1052, 1481, 1052, 1481, 1053, 1482, 1053,
1482, 1054, 1483, 1054, 1484, 1054, 1484, 1055, 1485, 1055,
1485, 1056, 1486, 1056, 1486, 1057, 1487, 1057, 1488, 1057,
1488, 1058, 1489, 1058, 1489, 1059, 1490, 1059, 1491, 1059,
1491, 1060, 1492, 1060, 1492, 1061, 1493, 1061, 1493, 1062,
1494, 1062, 1495, 1062, 1495, 1063, 1496, 1063, 1496, 1064,
1497, 1064, 1498, 1064, 1498, 1065, 1499, 1065, 1499, 1066,
1500, 1066, 1501, 1066, 1501, 1067, 1502, 1067, 1502, 1068,
1503, 1068, 1503, 1069, 1504, 1069, 1505, 1069, 1505, 1070,
1506, 1070, 1506, 1071, 1507, 1071, 1508, 1071, 1508, 1072,
1509, 1072, 1509, 1073, 1510, 1073, 1510, 1074, 1511, 1074,
1512, 1074, 1512, 1075, 1513, 1075, 1513, 1076, 1514, 1076,
1515, 1076, 1515, 1077, 1516, 1077, 1516, 1078, 1517, 1078,
1517, 1079, 1518, 1079, 1519, 1079, 1519, 1080, 1520, 1080,
1520, 1081, 1521, 1081, 1522, 1081, 1522, 1082, 1523, 1082,
1523, 1083, 1524, 1083, 1524, 1084, 1525, 1084, 1526, 1084,
1526, 1085, 1527, 1085, 1527, 1086, 1528, 1086, 1529, 1086,
1529, 1087, 1530, 1087, 1530, 1088, 1531, 1088, 1532, 1088,
1532, 1089, 1533, 1089, 1533, 1090, 1534, 1090, 1534, 1091,
1535, 1091, 1536, 1091, 1536, 1092, 1537, 1092, 1537, 1093,
1538, 1093, 1539, 1093, 1539, 1094, 1540, 1094, 1540, 1095,
1541, 1095, 1541, 1096, 1542, 1096, 1543, 1096, 1543, 1097,
1544, 1097, 1544, 1098, 1545, 1098, 1546, 1098, 1546, 1099,
1547, 1099, 1547, 1100, 1548, 1100, 1548, 1101, 1549, 1101,
1550, 1101, 1550, 1102, 1551, 1102, 1551, 1103, 1552, 1103,
1553, 1103, 1553, 1104, 1554, 1104, 1554, 1105, 1555, 1105,
1556, 1105, 1556, 1106, 1557, 1106, 1557, 1107, 1558, 1107,
1558, 1108, 1559, 1108, 1560, 1108, 1560, 1109, 1561, 1109,
1561, 1110, 1562, 1110, 1563, 1110, 1563, 1111, 1564, 1111,
1564, 1112, 1565, 1112, 1565, 1113, 1566, 1113, 1567, 1113,
1567, 1114, 1568, 1114, 1568, 1115, 1569, 1115, 1570, 1115,
1570, 1116, 1571, 1116, 1571, 1117, 1572, 1117, 1572, 1118,
1573, 1118, 1574, 1118, 1574, 1119, 1575, 1119, 1575, 1120,
1576, 1120, 1577, 1120, 1577, 1121, 1578, 1121, 1578, 1122,
1579, 1122, 1579, 1123, 1580, 1123, 1581, 1123, 1581, 1124,
1582, 1124, 1582, 1125, 1583, 1125, 1584, 1125, 1584, 1126,
1585, 1126, 1585, 1127, 1586, 1127, 1587, 1127, 1587, 1128,
1588, 1128, 1588, 1129, 1589, 1129, 1589, 1130, 1590, 1130,
1591, 1130, 1591, 1131, 1592, 1131, 1592, 1132, 1593, 1132,
1594, 1132, 1594, 1133, 1595, 1133, 1595, 1134, 1596, 1134,
1596, 1135, 1597, 1135, 1598, 1135, 1598, 1136, 1599, 1136,
1599, 1137, 1600, 1137, 1601, 1137, 1601, 1138, 1602, 1138,
1602, 1139, 1603, 1139, 1603, 1140, 1604, 1140, 1605, 1140,
1605, 1141, 1606, 1141, 1606, 1142, 1607, 1142, 1608, 1142,
1608, 1143, 1609, 1143, 1609, 1144, 1610, 1144, 1610, 1145,
1611, 1145, 1612, 1145, 1612, 1146, 1613, 1146, 1613, 1147,
1614, 1147, 1615, 1147, 1615, 1148, 1616, 1148, 1616, 1149,
1617, 1149, 1618, 1149, 1618, 1150, 1619, 1150, 1619, 1151,
1620, 1151, 1620, 1152, 1621, 1152, 1622, 1152, 1622, 1153,
1623, 1153, 1623, 1154, 1624, 1154, 1625, 1154, 1625, 1155,
1626, 1155, 1626, 1156, 1627, 1156, 1627, 1157, 1628, 1157,
1629, 1157, 1629, 1158, 1630, 1158, 1630, 1159, 1631, 1159,
1632, 1159, 1632, 1160, 1633, 1160, 1633, 1161, 1634, 1161,
1634, 1162, 1635, 1162, 1636, 1162, 1636, 1163, 1637, 1163,
1637, 1164, 1638, 1164, 1639, 1164, 1639, 1165, 1640, 1165,
1640, 1166, 1641, 1166, 1641, 1167, 1642, 1167, 1643, 1167,
1643, 1168, 1644, 1168, 1644, 1169, 1645, 1169, 1646, 1169,
1646, 1170, 1647, 1170, 1647, 1171, 1648, 1171, 1649, 1171,
1649, 1172, 1650, 1172, 1650, 1173, 1651, 1173, 1651, 1174,
1652, 1174, 1653, 1174, 1653, 1175, 1654, 1175, 1654, 1176,
1655, 1176, 1656, 1176, 1656, 1177, 1657, 1177, 1657, 1178,
1658, 1178, 1658, 1179, 1659, 1179, 1660, 1179, 1660, 1180,
1661, 1180, 1661, 1181, 1662, 1181, 1663, 1181, 1663, 1182,
1664, 1182, 1664, 1183, 1665, 1183, 1665, 1184, 1666, 1184,
1667, 1184, 1667, 1185, 1668, 1185, 1668, 1186, 1669, 1186,
1670, 1186, 1670, 1187, 1671, 1187, 1671, 1188, 1672, 1188,
1672, 1189, 1673, 1189, 1674, 1189, 1674, 1190, 1675, 1190,
1675, 1191, 1676, 1191, 1677, 1191, 1677, 1192, 1678, 1192,
1678, 1193, 1679, 1193, 1680, 1193, 1680, 1194, 1681, 1194,
1681, 1195, 1682, 1195, 1682, 1196, 1683, 1196, 1684, 1196,
1684, 1197, 1685, 1197, 1685, 1198, 1686, 1198, 1687, 1198,
1687, 1199, 1688, 1199, 1688, 1200, 1689, 1200, 1689, 1201,
1690, 1201, 1691, 1201, 1691, 1202, 1692, 1202, 1692, 1203,
1693, 1203, 1694, 1203, 1694, 1204, 1695, 1204, 1695, 1205,
1696, 1205, 1696, 1206, 1697, 1206, 1698, 1206, 1698, 1207,
1699, 1207, 1699, 1208, 1700, 1208, 1701, 1208, 1701, 1209,
1702, 1209, 1702, 1210, 1703, 1210, 1703, 1211, 1704, 1211,
1705, 1211, 1705, 1212, 1706, 1212, 1706, 1213, 1707, 1213,
1708, 1213, 1708, 1214, 1709, 1214, 1709, 1215, 1710, 1215,
1711, 1215, 1711, 1216, 1712, 1216, 1712, 1217, 1713, 1217,
1713, 1218, 1714, 1218, 1715, 1218, 1715, 1219, 1716, 1219,
1716, 1220, 1717, 1220, 1718, 1220, 1718, 1221, 1719, 1221,
1719, 1222, 1720, 1222, 1720, 1223, 1721, 1223, 1722, 1223,
1722, 1224, 1723, 1224, 1723, 1225, 1724, 1225, 1725, 1225,
1725, 1226, 1726, 1226, 1726, 1227, 1727, 1227, 1727, 1228,
1728, 1228, 1729, 1228, 1729, 1229, 1730, 1229, 1730, 1230,
1731, 1230, 1732, 1230, 1732, 1231, 1733, 1231, 1733, 1232,
1734, 1232, 1734, 1233, 1735, 1233, 1736, 1233, 1736, 1234,
1737, 1234, 1737, 1235, 1738, 1235, 1739, 1235, 1739, 1236,
1740, 1236, 1740, 1237, 1741, 1237, 1742, 1237, 1742, 1238,
1743, 1238, 1743, 1239, 1744, 1239, 1744, 1240, 1745, 1240,
1746, 1240, 1746, 1241, 1747, 1241, 1747, 1242, 1748, 1242,
1749, 1242, 1749, 1243, 1750, 1243, 1750, 1244, 1751, 1244,
1751, 1245, 1752, 1245, 1753, 1245, 1753, 1246, 1754, 1246,
1754, 1247, 1755, 1247, 1756, 1247, 1756, 1248, 1757, 1248,
1757, 1249, 1758, 1249, 1758, 1250, 1759, 1250, 1760, 1250,
1760, 1251, 1761, 1251, 1761, 1252, 1762, 1252, 1763, 1252,
1763, 1253, 1764, 1253, 1764, 1254, 1765, 1254, 1766, 1254,
1766, 1255, 1767, 1255, 1767, 1256, 1768, 1256, 1768, 1257,
1769, 1257, 1770, 1257, 1770, 1258, 1771, 1258, 1771, 1259,
1772, 1259, 1773, 1259, 1773, 1260, 1774, 1260, 1774, 1261,
1775, 1261, 1775, 1262, 1776, 1262, 1777, 1262, 1777, 1263,
1778, 1263, 1778, 1264, 1779, 1264, 1780, 1264, 1780, 1265,
1781, 1265, 1781, 1266, 1782, 1266, 1782, 1267, 1783, 1267,
1784, 1267, 1784, 1268, 1785, 1268, 1785, 1269, 1786, 1269,
1787, 1269, 1787, 1270, 1788, 1270, 1788, 1271, 1789, 1271,
1789, 1272, 1790, 1272, 1791, 1272, 1791, 1273, 1792, 1273,
1792, 1274, 1793, 1274, 1794, 1274, 1794, 1275, 1795, 1275,
1795, 1276, 1796, 1276, 1797, 1276, 1797, 1277, 1798, 1277,
1798, 1278, 1799, 1278, 1799, 1279, 1800, 1279, 1801, 1279,
1801, 1280, 1802, 1280, 1802, 1281, 1803, 1281, 1804, 1281,
1804, 1282, 1805, 1282, 1805, 1283, 1806, 1283, 1806, 1284,
1807, 1284, 1808, 1284, 1808, 1285, 1809, 1285, 1809, 1286,
1810, 1286, 1811, 1286, 1811, 1287, 1812, 1287, 1812, 1288,
1813, 1288, 1813, 1289, 1814, 1289, 1815, 1289, 1815, 1290,
1816, 1290, 1816, 1291, 1817, 1291, 1818, 1291, 1818, 1292,
1819, 1292, 1819, 1293, 1820, 1293, 1820, 1294, 1821, 1294,
1822, 1294, 1822, 1295, 1823, 1295, 1823, 1296, 1824, 1296,
1825, 1296, 1825, 1297, 1826, 1297, 1826, 1298, 1827, 1298,
1828, 1298, 1828, 1299, 1829, 1299, 1829, 1300, 1830, 1300,
1830, 1301, 1831, 1301, 1832, 1301, 1832, 1302, 1833, 1302,
1833, 1303, 1834, 1303, 1835, 1303, 1835, 1304, 1836, 1304,
1836, 1305, 1837, 1305, 1837, 1306, 1838, 1306, 1839, 1306,
1839, 1307, 1840, 1307, 1840, 1308, 1841, 1308, 1842, 1308,
1842, 1309, 1843, 1309, 1843, 1310, 1844, 1310, 1844, 1311,
1845, 1311, 1846, 1311, 1846, 1312, 1847, 1312, 1847, 1313,
1848, 1313, 1849, 1313, 1849, 1314, 1850, 1314, 1850, 1315,
1851, 1315, 1851, 1316, 1852, 1316, 1853, 1316, 1853, 1317,
1854, 1317, 1854, 1318, 1855, 1318, 1856, 1318, 1856, 1319,
1857, 1319, 1857, 1320, 1858, 1320, 1859, 1320, 1859, 1321,
1860, 1321, 1860, 1322, 1861, 1322, 1861, 1323, 1862, 1323,
1863, 1323, 1863, 1324, 1864, 1324, 1864, 1325, 1865, 1325,
1866, 1325, 1866, 1326, 1867, 1326, 1867, 1327, 1868, 1327,
1868, 1328, 1869, 1328, 1870, 1328, 1870, 1329, 1871, 1329,
1871, 1330, 1872, 1330, 1873, 1330, 1873, 1331, 1874, 1331,
1874, 1332, 1875, 1332, 1875, 1333, 1876, 1333, 1877, 1333,
1877, 1334, 1878, 1334, 1878, 1335, 1879, 1335, 1880, 1335,
1880, 1336, 1881, 1336, 1881, 1337, 1882, 1337, 1882, 1338,
1883, 1338, 1884, 1338, 1884, 1339, 1885, 1339, 1885, 1340,
1886, 1340, 1887, 1340, 1887, 1341, 1888, 1341, 1888, 1342,
1889, 1342, 1890, 1342, 1890, 1343, 1891, 1343, 1891, 1344,
1892, 1344, 1892, 1345, 1893, 1345, 1894, 1345, 1894, 1346,
1895, 1346, 1895, 1347, 1896, 1347, 1897, 1347, 1897, 1348,
1898, 1348, 1898, 1349, 1899, 1349, 1899, 1350, 1900, 1350,
1901, 1350, 1901, 1351, 1902, 1351, 1902, 1352, 1903, 1352,
1904, 1352, 1904, 1353, 1905, 1353, 1905, 1354, 1906, 1354,
1906, 1355, 1907, 1355, 1908, 1355, 1908, 1356, 1909, 1356,
1909, 1357, 1910, 1357, 1911, 1357, 1911, 1358, 1912, 1358,
1912, 1359, 1913, 1359, 1913, 1360, 1914, 1360, 1915, 1360,
1915, 1361, 1916, 1361, 1916, 1362, 1917, 1362, 1918, 1362,
1918, 1363, 1919, 1363, 1919, 1364, 1920, 1364, 1921, 1364,
1921, 1365, 1922, 1365, 1922, 1366, 1923, 1366, 1923, 1367,
1924, 1367, 1925, 1367, 1925, 1368, 1926, 1368, 1926, 1369,
1927, 1369, 1928, 1369, 1928, 1370, 1929, 1370, 1929, 1371,
1930, 1371, 1930, 1372, 1931, 1372, 1932, 1372, 1932, 1373,
1933, 1373, 1933, 1374, 1934, 1374, 1935, 1374, 1935, 1375,
1936, 1375, 1936, 1376, 1937, 1376, 1937, 1377, 1938, 1377,
1939, 1377, 1939, 1378, 1940, 1378, 1940, 1379, 1941, 1379,
1942, 1379, 1942, 1380, 1943, 1380, 1943, 1381, 1944, 1381,
1945, 1381, 1945, 1382, 1946, 1382, 1946, 1383, 1947, 1383,
1947, 1384, 1948, 1384, 1949, 1384, 1949, 1385, 1950, 1385,
1950, 1386, 1951, 1386, 1952, 1386, 1952, 1387, 1953, 1387,
1953, 1388, 1954, 1388, 1954, 1389, 1955, 1389, 1956, 1389,
1956, 1390, 1957, 1390, 1957, 1391, 1958, 1391, 1959, 1391,
1959, 1392, 1960, 1392, 1960, 1393, 1961, 1393, 1961, 1394,
1962, 1394, 1963, 1394, 1963, 1395, 1964, 1395, 1964, 1396,
1965, 1396, 1966, 1396, 1966, 1397, 1967, 1397, 1967, 1398,
1968, 1398, 1968, 1399, 1969, 1399, 1970, 1399, 1970, 1400,
1971, 1400, 1971, 1401, 1972, 1401, 1973, 1401, 1973, 1402,
1974, 1402, 1974, 1403, 1975, 1403, 1976, 1403, 1976, 1404,
1977, 1404, 1977, 1405, 1978, 1405, 1978, 1406, 1979, 1406,
1980, 1406, 1980, 1407, 1981, 1407, 1981, 1408, 1982, 1408,
1983, 1408, 1983, 1409, 1984, 1409, 1984, 1410, 1985, 1410,
1985, 1411, 1986, 1411, 1987, 1411, 1987, 1412, 1988, 1412,
1988, 1413, 1989, 1413, 1990, 1413, 1990, 1414, 1991, 1414,
1991, 1415, 1992, 1415, 1992, 1416, 1993, 1416, 1994, 1416,
1994, 1417, 1995, 1417, 1995, 1418, 1996, 1418, 1997, 1418,
1997, 1419, 1998, 1419, 1998, 1420, 1999, 1420, 1999, 1421,
2000, 1421, 2001, 1421, 2001, 1422, 2002, 1422, 2002, 1423,
2003, 1423, 2004, 1423, 2004, 1424, 2005, 1424, 2005, 1425,
2006, 1425, 2007, 1425, 2007, 1426, 2008, 1426, 2008, 1427,
2009, 1427, 2009, 1428, 2010, 1428, 2011, 1428, 2011, 1429,
2012, 1429, 2012, 1430, 2013, 1430, 2014, 1430, 2014, 1431,
2015, 1431, 2015, 1432, 2016, 1432, 2016, 1433, 2017, 1433,
2018, 1433, 2018, 1434, 2019, 1434, 2019, 1435, 2020, 1435,
2021, 1435, 2021, 1436, 2022, 1436, 2022, 1437, 2023, 1437,
2023, 1438, 2024, 1438, 2025, 1438, 2025, 1439, 2026, 1439,
2026, 1440, 2027, 1440, 2028, 1440, 2028, 1441, 2029, 1441,
2029, 1442, 2030, 1442, 2030, 1443, 2031, 1443, 2032, 1443,
2032, 1444, 2033, 1444, 2033, 1445, 2034, 1445, 2035, 1445,
2035, 1446, 2036, 1446, 2036, 1447, 2037, 1447, 2038, 1447,
2038, 1448, 2039, 1448, 2039, 1449, 2040, 1449, 2040, 1450,
2041, 1450, 2042, 1450, 2042, 1451, 2043, 1451, 2043, 1452,
2044, 1452, 2045, 1452, 2045, 1453, 2046, 1453, 2046, 1454,
2047, 1454, 2047, 1455, 2048, 1455, 2049, 1455, 2049, 1456,
2050, 1456, 2050, 1457, 2051, 1457, 2052, 1457, 2052, 1458,
2053, 1458, 2053, 1459, 2054, 1459, 2054, 1460, 2055, 1460,
2056, 1460, 2056, 1461, 2057, 1461, 2057, 1462, 2058, 1462,
2059, 1462, 2059, 1463, 2060, 1463, 2060, 1464, 2061, 1464,
2061, 1465, 2062, 1465, 2063, 1465, 2063, 1466, 2064, 1466,
2064, 1467, 2065, 1467, 2066, 1467, 2066, 1468, 2067, 1468,
2067, 1469, 2068, 1469, 2069, 1469, 2069, 1470, 2070, 1470,
2070, 1471, 2071, 1471, 2071, 1472, 2072, 1472, 2073, 1472,
2073, 1473, 2074, 1473, 2074, 1474, 2075, 1474, 2076, 1474,
2076, 1475, 2077, 1475, 2077, 1476, 2078, 1476, 2078, 1477,
2079, 1477, 2080, 1477, 2080, 1478, 2081, 1478, 2081, 1479,
2082, 1479, 2083, 1479, 2083, 1480, 2084, 1480, 2084, 1481,
2085, 1481, 2085, 1482, 2086, 1482, 2087, 1482, 2087, 1483,
2088, 1483, 2088, 1484, 2089, 1484, 2090, 1484, 2090, 1485,
2091, 1485, 2091, 1486, 2092, 1486, 2092, 1487, 2093, 1487,
2094, 1487, 2094, 1488, 2095, 1488, 2095, 1489, 2096, 1489,
2097, 1489, 2097, 1490, 2098, 1490, 2098, 1491, 2099, 1491,
2100, 1491, 2100, 1492, 2101, 1492, 2101, 1493, 2102, 1493,
2102, 1494, 2103, 1494, 2104, 1494, 2104, 1495, 2105, 1495,
2105, 1496, 2106, 1496, 2107, 1496, 2107, 1497, 2108, 1497,
2108, 1498, 2109, 1498, 2109, 1499, 2110, 1499, 2111, 1499,
2111, 1500, 2112, 1500, 2112, 1501, 2113, 1501, 2114, 1501,
2114, 1502, 2115, 1502, 2115, 1503, 2116, 1503, 2116, 1504,
2117, 1504, 2118, 1504, 2118, 1505, 2119, 1505, 2119, 1506,
2120, 1506, 2121, 1506, 2121, 1507, 2122, 1507, 2122, 1508,
2123, 1508, 2123, 1509, 2124, 1509, 2125, 1509, 2125, 1510,
2126, 1510, 2126, 1511, 2127, 1511, 2128, 1511, 2128, 1512,
2129, 1512, 2129, 1513, 2130, 1513, 2131, 1513, 2131, 1514,
2132, 1514, 2132, 1515, 2133, 1515, 2133, 1516, 2134, 1516,
2135, 1516, 2135, 1517, 2136, 1517, 2136, 1518, 2137, 1518,
2138, 1518, 2138, 1519, 2139, 1519, 2139, 1520, 2140, 1520,
2140, 1521, 2141, 1521, 2142, 1521, 2142, 1522, 2143, 1522,
2143, 1523, 2144, 1523, 2145, 1523, 2145, 1524, 2146, 1524,
2146, 1525, 2147, 1525, 2147, 1526, 2148, 1526, 2149, 1526,
2149, 1527, 2150, 1527, 2150, 1528, 2151, 1528, 2152, 1528,
2152, 1529, 2153, 1529, 2153, 1530, 2154, 1530, 2155, 1530,
2155, 1531, 2156, 1531, 2156, 1532, 2157, 1532, 2157, 1533,
2158, 1533, 2159, 1533, 2159, 1534, 2160, 1534, 2160, 1535,
2161, 1535, 2162, 1535, 2162, 1536, 2163, 1536, 2163, 1537,
2164, 1537, 2164, 1538, 2165, 1538, 2166, 1538, 2166, 1539,
2167, 1539, 2167, 1540, 2168, 1540, 2169, 1540, 2169, 1541,
2170, 1541, 2170, 1542, 2171, 1542, 2171, 1543, 2172, 1543,
2173, 1543, 2173, 1544, 2174, 1544, 2174, 1545, 2175, 1545,
2176, 1545, 2176, 1546, 2177, 1546, 2177, 1547, 2178, 1547,
2178, 1548, 2179, 1548, 2180, 1548, 2180, 1549, 2181, 1549,
2181, 1550, 2182, 1550, 2183, 1550, 2183, 1551, 2184, 1551,
2184, 1552, 2185, 1552, 2186, 1552, 2186, 1553, 2187, 1553,
2187, 1554, 2188, 1554, 2188, 1555, 2189, 1555, 2190, 1555,
2190, 1556, 2191, 1556, 2191, 1557, 2192, 1557, 2193, 1557,
2193, 1558, 2194, 1558, 2194, 1559, 2195, 1559, 2195, 1560,
2196, 1560, 2197, 1560, 2197, 1561, 2198, 1561, 2198, 1562,
2199, 1562, 2200, 1562, 2200, 1563, 2201, 1563, 2201, 1564,
2202, 1564, 2202, 1565, 2203, 1565, 2204, 1565, 2204, 1566,
2205, 1566, 2205, 1567, 2206, 1567, 2207, 1567, 2207, 1568,
2208, 1568, 2208, 1569, 2209, 1569, 2209, 1570, 2210, 1570,
2211, 1570, 2211, 1571, 2212, 1571, 2212, 1572, 2213, 1572,
2214, 1572, 2214, 1573, 2215, 1573, 2215, 1574, 2216, 1574,
2217, 1574, 2217, 1575, 2218, 1575, 2218, 1576, 2219, 1576,
2219, 1577, 2220, 1577, 2221, 1577, 2221, 1578, 2222, 1578,
2222, 1579, 2223, 1579, 2224, 1579, 2224, 1580, 2225, 1580,
2225, 1581, 2226, 1581, 2226, 1582, 2227, 1582, 2228, 1582,
2228, 1583, 2229, 1583, 2229, 1584, 2230, 1584, 2231, 1584,
2231, 1585, 2232, 1585, 2232, 1586, 2233, 1586, 2233, 1587,
2234, 1587, 2235, 1587, 2235, 1588, 2236, 1588, 2236, 1589,
2237, 1589, 2238, 1589, 2238, 1590, 2239, 1590, 2239, 1591,
2240, 1591, 2240, 1592, 2241, 1592, 2242, 1592, 2242, 1593,
2243, 1593, 2243, 1594, 2244, 1594, 2245, 1594, 2245, 1595,
2246, 1595, 2246, 1596, 2247, 1596, 2248, 1596, 2248, 1597,
2249, 1597, 2249, 1598, 2250, 1598, 2250, 1599, 2251, 1599,
2252, 1599, 2252, 1600, 2253, 1600, 2253, 1601, 2254, 1601,
2255, 1601, 2255, 1602, 2256, 1602, 2256, 1603, 2257, 1603,
2257, 1604, 2258, 1604, 2259, 1604, 2259, 1605, 2260, 1605,
2260, 1606, 2261, 1606, 2262, 1606, 2262, 1607, 2263, 1607,
2263, 1608, 2264, 1608, 2264, 1609, 2265, 1609, 2266, 1609,
2266, 1610, 2267, 1610, 2267, 1611, 2268, 1611, 2269, 1611,
2269, 1612, 2270, 1612, 2270, 1613, 2271, 1613, 2271, 1614,
2272, 1614, 2273, 1614, 2273, 1615, 2274, 1615, 2274, 1616,
2275, 1616, 2276, 1616, 2276, 1617, 2277, 1617, 2277, 1618,
2278, 1618, 2279, 1618, 2279, 1619, 2280, 1619, 2280, 1620,
2281, 1620, 2281, 1621, 2282, 1621, 2283, 1621, 2283, 1622,
2284, 1622, 2284, 1623, 2285, 1623, 2286, 1623, 2286, 1624,
2287, 1624, 2287, 1625, 2288, 1625, 2288, 1626, 2289, 1626,
2290, 1626, 2290, 1627, 2291, 1627, 2291, 1628, 2292, 1628,
2293, 1628, 2293, 1629, 2294, 1629, 2294, 1630, 2295, 1630,
2295, 1631, 2296, 1631, 2297, 1631, 2297, 1632, 2298, 1632,
2298, 1633, 2299, 1633, 2300, 1633, 2300, 1634, 2301, 1634,
2301, 1635, 2302, 1635, 2302, 1636, 2303, 1636, 2304, 1636,
2304, 1637, 2305, 1637, 2305, 1638, 2306, 1638, 2307, 1638,
2307, 1639, 2308, 1639, 2308, 1640, 2309, 1640, 2310, 1640,
2310, 1641, 2311, 1641, 2311, 1642, 2312, 1642, 2312, 1643,
2313, 1643, 2314, 1643, 2314, 1644, 2315, 1644, 2315, 1645,
2316, 1645, 2317, 1645, 2317, 1646, 2318, 1646, 2318, 1647,
2319, 1647, 2319, 1648, 2320, 1648, 2321, 1648, 2321, 1649,
2322, 1649, 2322, 1650, 2323, 1650, 2324, 1650, 2324, 1651,
2325, 1651, 2325, 1652, 2326, 1652, 2326, 1653, 2327, 1653,
2328, 1653, 2328, 1654, 2329, 1654, 2329, 1655, 2330, 1655,
2331, 1655, 2331, 1656, 2332, 1656, 2332, 1657, 2333, 1657,
2334, 1657, 2334, 1658, 2335, 1658, 2335, 1659, 2336, 1659,
2336, 1660, 2337, 1660, 2338, 1660, 2338, 1661, 2339, 1661,
2339, 1662, 2340, 1662, 2341, 1662, 2341, 1663, 2342, 1663,
2342, 1664, 2343, 1664, 2343, 1665, 2344, 1665, 2345, 1665,
2345, 1666, 2346, 1666, 2346, 1667, 2347, 1667, 2348, 1667,
2348, 1668, 2349, 1668, 2349, 1669, 2350, 1669, 2350, 1670,
2351, 1670, 2352, 1670, 2352, 1671, 2353, 1671, 2353, 1672,
2354, 1672, 2355, 1672, 2355, 1673, 2356, 1673, 2356, 1674,
2357, 1674, 2357, 1675, 2358, 1675, 2359, 1675, 2359, 1676,
2360, 1676, 2360, 1677, 2361, 1677, 2362, 1677, 2362, 1678,
2363, 1678, 2363, 1679, 2364, 1679, 2365, 1679, 2365, 1680,
2366, 1680, 2366, 1681, 2367, 1681, 2367, 1682, 2368, 1682,
2369, 1682, 2369, 1683, 2370, 1683, 2370, 1684, 2371, 1684,
2372, 1684, 2372, 1685, 2373, 1685, 2373, 1686, 2374, 1686,
2374, 1687, 2375, 1687, 2376, 1687, 2376, 1688, 2377, 1688,
2377, 1689, 2378, 1689, 2379, 1689, 2379, 1690, 2380, 1690,
2380, 1691, 2381, 1691, 2381, 1692, 2382, 1692, 2383, 1692,
2383, 1693, 2384, 1693, 2384, 1694, 2385, 1694, 2386, 1694,
2386, 1695, 2387, 1695, 2387, 1696, 2388, 1696, 2388, 1697,
2389, 1697, 2390, 1697, 2390, 1698, 2391, 1698, 2391, 1699,
2392, 1699, 2393, 1699, 2393, 1700, 2394, 1700, 2394, 1701,
2395, 1701, 2396, 1701, 2396, 1702, 2397, 1702, 2397, 1703,
2398, 1703, 2398, 1704, 2399, 1704, 2400, 1704, 2400, 1705,
2401, 1705, 2401, 1706, 2402, 1706, 2403, 1706, 2403, 1707,
2404, 1707, 2404, 1708, 2405, 1708, 2405, 1709, 2406, 1709,
2407, 1709, 2407, 1710, 2408, 1710, 2408, 1711, 2409, 1711,
2410, 1711, 2410, 1712, 2411, 1712, 2411, 1713, 2412, 1713,
2412, 1714, 2413, 1714, 2414, 1714, 2414, 1715, 2415, 1715,
2415, 1716, 2416, 1716, 2417, 1716, 2417, 1717, 2418, 1717,
2418, 1718, 2419, 1718, 2419, 1719, 2420, 1719, 2421, 1719,
2421, 1720, 2422, 1720, 2422, 1721, 2423, 1721, 2424, 1721,
2424, 1722, 2425, 1722, 2425, 1723, 2426, 1723, 2427, 1723,
2427, 1724, 2428, 1724, 2428, 1725, 2429, 1725, 2429, 1726,
2430, 1726, 2431, 1726, 2431, 1727, 2432, 1727, 2432, 1728,
2433, 1728, 2434, 1728, 2434, 1729, 2435, 1729, 2435, 1730,
2436, 1730, 2436, 1731, 2437, 1731, 2438, 1731, 2438, 1732,
2439, 1732, 2439, 1733, 2440, 1733, 2441, 1733, 2441, 1734,
2442, 1734, 2442, 1735, 2443, 1735, 2443, 1736, 2444, 1736,
2445, 1736, 2445, 1737, 2446, 1737, 2446, 1738, 2447, 1738,
2448, 1738, 2448, 1739, 2449, 1739, 2449, 1740, 2450, 1740,
2450, 1741, 2451, 1741, 2452, 1741, 2452, 1742, 2453, 1742,
2453, 1743, 2454, 1743, 2455, 1743, 2455, 1744, 2456, 1744,
2456, 1745, 2457, 1745, 2458, 1745, 2458, 1746, 2459, 1746,
2459, 1747, 2460, 1747, 2460, 1748, 2461, 1748, 2462, 1748,
2462, 1749, 2463, 1749, 2463, 1750, 2464, 1750, 2465, 1750,
2465, 1751, 2466, 1751, 2466, 1752, 2467, 1752, 2467, 1753,
2468, 1753, 2469, 1753, 2469, 1754, 2470, 1754, 2470, 1755,
2471, 1755, 2472, 1755, 2472, 1756, 2473, 1756, 2473, 1757,
2474, 1757, 2474, 1758, 2475, 1758, 2476, 1758, 2476, 1759,
2477, 1759, 2477, 1760, 2478, 1760, 2479, 1760, 2479, 1761,
2480, 1761, 2480, 1762, 2481, 1762, 2481, 1763, 2482, 1763,
2483, 1763, 2483, 1764, 2484, 1764, 2484, 1765, 2485, 1765,
2486, 1765, 2486, 1766, 2487, 1766, 2487, 1767, 2488, 1767,
2489, 1767, 2489, 1768, 2490, 1768, 2490, 1769, 2491, 1769,
2491, 1770, 2492, 1770, 2493, 1770, 2493, 1771, 2494, 1771,
2494, 1772, 2495, 1772, 2496, 1772, 2496, 1773, 2497, 1773,
2497, 1774, 2498, 1774, 2498, 1775, 2499, 1775, 2500, 1775,
2500, 1776, 2501, 1776, 2501, 1777, 2502, 1777, 2503, 1777,
2503, 1778, 2504, 1778, 2504, 1779, 2505, 1779, 2505, 1780,
2506, 1780, 2507, 1780, 2507, 1781, 2508, 1781, 2508, 1782,
2509, 1782, 2510, 1782, 2510, 1783, 2511, 1783, 2511, 1784,
2512, 1784, 2512, 1785, 2513, 1785, 2514, 1785, 2514, 1786,
2515, 1786, 2515, 1787, 2516, 1787, 2517, 1787, 2517, 1788,
2518, 1788, 2518, 1789, 2519, 1789, 2520, 1789, 2520, 1790,
2521, 1790, 2521, 1791, 2522, 1791, 2522, 1792, 2523, 1792,
2524, 1792, 2524, 1793, 2525, 1793, 2525, 1794, 2526, 1794,
2527, 1794, 2527, 1795, 2528, 1795, 2528, 1796, 2529, 1796,
2529, 1797, 2530, 1797, 2531, 1797, 2531, 1798, 2532, 1798,
2532, 1799, 2533, 1799, 2534, 1799, 2534, 1800, 2535, 1800,
2535, 1801, 2536, 1801, 2536, 1802, 2537, 1802, 2538, 1802,
2538, 1803, 2539, 1803, 2539, 1804, 2540, 1804, 2541, 1804,
2541, 1805, 2542, 1805, 2542, 1806, 2543, 1806, 2544, 1806,
2544, 1807, 2545, 1807, 2545, 1808, 2546, 1808, 2546, 1809,
2547, 1809, 2548, 1809, 2548, 1810, 2549, 1810, 2549, 1811,
2550, 1811, 2551, 1811, 2551, 1812, 2552, 1812, 2552, 1813,
2553, 1813, 2553, 1814, 2554, 1814, 2555, 1814, 2555, 1815,
2556, 1815, 2556, 1816, 2557, 1816, 2558, 1816, 2558, 1817,
2559, 1817, 2559, 1818, 2560, 1818, 2560, 1819, 2561, 1819,
2562, 1819, 2562, 1820, 2563, 1820, 2563, 1821, 2564, 1821,
2565, 1821, 2565, 1822, 2566, 1822, 2566, 1823, 2567, 1823,
2567, 1824, 2568, 1824, 2569, 1824, 2569, 1825, 2570, 1825,
2570, 1826, 2571, 1826, 2572, 1826, 2572, 1827, 2573, 1827,
2573, 1828, 2574, 1828, 2575, 1828, 2575, 1829, 2576, 1829,
2576, 1830, 2577, 1830, 2577, 1831, 2578, 1831, 2579, 1831,
2579, 1832, 2580, 1832, 2580, 1833, 2581, 1833, 2582, 1833,
2582, 1834, 2583, 1834, 2583, 1835, 2584, 1835, 2584, 1836,
2585, 1836, 2586, 1836, 2586, 1837, 2587, 1837, 2587, 1838,
2588, 1838, 2589, 1838, 2589, 1839, 2590, 1839, 2590, 1840,
2591, 1840, 2591, 1841, 2592, 1841, 2593, 1841, 2593, 1842,
2594, 1842, 2594, 1843, 2595, 1843, 2596, 1843, 2596, 1844,
2597, 1844, 2597, 1845, 2598, 1845, 2598, 1846, 2599, 1846,
2600, 1846, 2600, 1847, 2601, 1847, 2601, 1848, 2602, 1848,
2603, 1848, 2603, 1849, 2604, 1849, 2604, 1850, 2605, 1850,
2606, 1850, 2606, 1851, 2607, 1851, 2607, 1852, 2608, 1852,
2608, 1853, 2609, 1853, 2610, 1853, 2610, 1854, 2611, 1854,
2611, 1855, 2612, 1855, 2613, 1855, 2613, 1856, 2614, 1856,
2614, 1857, 2615, 1857, 2615, 1858, 2616, 1858, 2617, 1858,
2617, 1859, 2618, 1859, 2618, 1860, 2619, 1860, 2620, 1860,
2620, 1861, 2621, 1861, 2621, 1862, 2622, 1862, 2622, 1863,
2623, 1863, 2624, 1863, 2624, 1864, 2625, 1864, 2625, 1865,
2626, 1865, 2627, 1865, 2627, 1866, 2628, 1866, 2628, 1867,
2629, 1867, 2629, 1868, 2630, 1868, 2631, 1868, 2631, 1869,
2632, 1869, 2632, 1870, 2633, 1870, 2634, 1870, 2634, 1871,
2635, 1871, 2635, 1872, 2636, 1872, 2637, 1872, 2637, 1873,
2638, 1873, 2638, 1874, 2639, 1874, 2639, 1875, 2640, 1875,
2641, 1875, 2641, 1876, 2642, 1876, 2642, 1877, 2643, 1877,
2644, 1877, 2644, 1878, 2645, 1878, 2645, 1879, 2646, 1879,
2646, 1880, 2647, 1880, 2648, 1880, 2648, 1881, 2649, 1881,
2649, 1882, 2650, 1882, 2651, 1882, 2651, 1883, 2652, 1883,
2652, 1884, 2653, 1884, 2653, 1885, 2654, 1885, 2655, 1885,
2655, 1886, 2656, 1886, 2656, 1887, 2657, 1887, 2658, 1887,
2658, 1888, 2659, 1888, 2659, 1889, 2660, 1889, 2660, 1890,
2661, 1890, 2662, 1890, 2662, 1891, 2663, 1891, 2663, 1892,
2664, 1892, 2665, 1892, 2665, 1893, 2666, 1893, 2666, 1894,
2667, 1894, 2668, 1894, 2668, 1895, 2669, 1895, 2669, 1896,
2670, 1896, 2670, 1897, 2671, 1897, 2672, 1897, 2672, 1898,
2673, 1898, 2673, 1899, 2674, 1899, 2675, 1899, 2675, 1900,
2676, 1900, 2676, 1901, 2677, 1901, 2677, 1902, 2678, 1902,
2679, 1902, 2679, 1903, 2680, 1903, 2680, 1904, 2681, 1904,
2682, 1904, 2682, 1905, 2683, 1905, 2683, 1906, 2684, 1906,
2684, 1907, 2685, 1907, 2686, 1907, 2686, 1908, 2687, 1908,
2687, 1909, 2688, 1909, 2689, 1909, 2689, 1910, 2690, 1910,
2690, 1911, 2691, 1911, 2691, 1912, 2692, 1912, 2693, 1912,
2693, 1913, 2694, 1913, 2694, 1914, 2695, 1914, 2696, 1914,
2696, 1915, 2697, 1915, 2697, 1916, 2698, 1916, 2699, 1916,
2699, 1917, 2700, 1917, 2700, 1918, 2701, 1918, 2701, 1919,
2702, 1919, 2703, 1919, 2703, 1920, 2704, 1920, 2704, 1921,
2705, 1921, 2706, 1921, 2706, 1922, 2707, 1922, 2707, 1923,
2708, 1923, 2708, 1924, 2709, 1924, 2710, 1924, 2710, 1925,
2711, 1925, 2711, 1926, 2712, 1926, 2713, 1926, 2713, 1927,
2714, 1927, 2714, 1928, 2715, 1928, 2715, 1929, 2716, 1929,
2717, 1929, 2717, 1930, 2718, 1930, 2718, 1931, 2719, 1931,
2720, 1931, 2720, 1932, 2721, 1932, 2721, 1933, 2722, 1933,
2723, 1933, 2723, 1934, 2724, 1934, 2724, 1935, 2725, 1935,
2725, 1936, 2726, 1936, 2727, 1936, 2727, 1937, 2728, 1937,
2728, 1938, 2729, 1938, 2730, 1938, 2730, 1939, 2731, 1939,
2731, 1940, 2732, 1940, 2732, 1941, 2733, 1941, 2734, 1941,
2734, 1942, 2735, 1942, 2735, 1943, 2736, 1943, 2737, 1943,
2737, 1944, 2738, 1944, 2738, 1945, 2739, 1945, 2739, 1946,
2740, 1946, 2741, 1946, 2741, 1947, 2742, 1947, 2742, 1948,
2743, 1948, 2744, 1948, 2744, 1949, 2745, 1949, 2745, 1950,
2746, 1950, 2746, 1951, 2747, 1951, 2748, 1951, 2748, 1952,
2749, 1952, 2749, 1953, 2750, 1953, 2751, 1953, 2751, 1954,
2752, 1954, 2752, 1955, 2753, 1955, 2754, 1955, 2754, 1956,
2755, 1956, 2755, 1957, 2756, 1957, 2756, 1958, 2757, 1958,
2758, 1958, 2758, 1959, 2759, 1959, 2759, 1960, 2760, 1960,
2761, 1960, 2761, 1961, 2762, 1961, 2762, 1962, 2763, 1962,
2763, 1963, 2764, 1963, 2765, 1963, 2765, 1964, 2766, 1964,
2766, 1965, 2767, 1965, 2768, 1965, 2768, 1966, 2769, 1966,
2769, 1967, 2770, 1967, 2770, 1968, 2771, 1968, 2772, 1968,
2772, 1969, 2773, 1969, 2773, 1970, 2774, 1970, 2775, 1970,
2775, 1971, 2776, 1971, 2776, 1972, 2777, 1972, 2777, 1973,
2778, 1973, 2779, 1973, 2779, 1974, 2780, 1974, 2780, 1975,
2781, 1975, 2782, 1975, 2782, 1976, 2783, 1976, 2783, 1977,
2784, 1977, 2785, 1977, 2785, 1978, 2786, 1978, 2786, 1979,
2787, 1979, 2787, 1980, 2788, 1980, 2789, 1980, 2789, 1981,
2790, 1981, 2790, 1982, 2791, 1982, 2792, 1982, 2792, 1983,
2793, 1983, 2793, 1984, 2794, 1984, 2794, 1985, 2795, 1985,
2796, 1985, 2796, 1986, 2797, 1986, 2797, 1987, 2798, 1987,
2799, 1987, 2799, 1988, 2800, 1988, 2800, 1989, 2801, 1989,
2801, 1990, 2802, 1990, 2803, 1990, 2803, 1991, 2804, 1991,
2804, 1992, 2805, 1992, 2806, 1992, 2806, 1993, 2807, 1993,
2807, 1994, 2808, 1994, 2808, 1995, 2809, 1995, 2810, 1995,
2810, 1996, 2811, 1996, 2811, 1997, 2812, 1997, 2813, 1997,
2813, 1998, 2814, 1998, 2814, 1999, 2815, 1999, 2816, 1999,
2816, 2000, 2817, 2000, 2817, 2001, 2818, 2001, 2818, 2002,
2819, 2002, 2820, 2002, 2820, 2003, 2821, 2003, 2821, 2004,
2822, 2004, 2823, 2004, 2823, 2005, 2824, 2005, 2824, 2006,
2825, 2006, 2825, 2007, 2826, 2007, 2827, 2007, 2827, 2008,
2828, 2008, 2828, 2009, 2829, 2009, 2830, 2009, 2830, 2010,
2831, 2010, 2831, 2011, 2832, 2011, 2832, 2012, 2833, 2012,
2834, 2012, 2834, 2013, 2835, 2013, 2835, 2014, 2836, 2014,
2837, 2014, 2837, 2015, 2838, 2015, 2838, 2016, 2839, 2016,
2839, 2017, 2840, 2017, 2841, 2017, 2841, 2018, 2842, 2018,
2842, 2019, 2843, 2019, 2844, 2019, 2844, 2020, 2845, 2020,
2845, 2021, 2846, 2021, 2847, 2021, 2847, 2022, 2848, 2022,
2848, 2023, 2849, 2023, 2849, 2024, 2850, 2024, 2851, 2024,
2851, 2025, 2852, 2025, 2852, 2026, 2853, 2026, 2854, 2026,
2854, 2027, 2855, 2027, 2855, 2028, 2856, 2028, 2856, 2029,
2857, 2029, 2858, 2029, 2858, 2030, 2859, 2030, 2859, 2031,
2860, 2031, 2861, 2031, 2861, 2032, 2862, 2032, 2862, 2033,
2863, 2033, 2863, 2034, 2864, 2034, 2865, 2034, 2865, 2035,
2866, 2035, 2866, 2036, 2867, 2036, 2868, 2036, 2868, 2037,
2869, 2037, 2869, 2038, 2870, 2038, 2870, 2039, 2871, 2039,
2872, 2039, 2872, 2040, 2873, 2040, 2873, 2041, 2874, 2041,
2875, 2041, 2875, 2042, 2876, 2042, 2876, 2043, 2877, 2043,
2878, 2043, 2878, 2044, 2879, 2044, 2879, 2045, 2880, 2045,
2880, 2046, 2881, 2046, 2882, 2046, 2882, 2047, 2883, 2047,
2883, 2048, 2884, 2048, 2885, 2048, 2885, 2049, 2886, 2049,
2886, 2050, 2887, 2050, 2887, 2051, 2888, 2051, 2889, 2051,
2889, 2052, 2890, 2052, 2890, 2053, 2891, 2053, 2892, 2053,
2892, 2054, 2893, 2054, 2893, 2055, 2894, 2055, 2894, 2056,
2895, 2056, 2896, 2056, 2896, 2057, 2897, 2057, 2897, 2058,
2898, 2058, 2899, 2058, 2899, 2059, 2900, 2059, 2900, 2060,
2901, 2060, 2901, 2061, 2902, 2061, 2903, 2061, 2903, 2062,
2904, 2062, 2904, 2063, 2905, 2063, 2906, 2063, 2906, 2064,
2907, 2064, 2907, 2065, 2908, 2065, 2909, 2065, 2909, 2066,
2910, 2066, 2910, 2067, 2911, 2067, 2911, 2068, 2912, 2068,
2913, 2068, 2913, 2069, 2914, 2069, 2914, 2070, 2915, 2070,
2916, 2070, 2916, 2071, 2917, 2071, 2917, 2072, 2918, 2072,
2918, 2073, 2919, 2073, 2920, 2073, 2920, 2074, 2921, 2074,
2921, 2075, 2922, 2075, 2923, 2075, 2923, 2076, 2924, 2076,
2924, 2077, 2925, 2077, 2925, 2078, 2926, 2078, 2927, 2078,
2927, 2079, 2928, 2079, 2928, 2080, 2929, 2080, 2930, 2080,
2930, 2081, 2931, 2081, 2931, 2082, 2932, 2082, 2933, 2082,
2933, 2083, 2934, 2083, 2934, 2084, 2935, 2084, 2935, 2085,
2936, 2085, 2937, 2085, 2937, 2086, 2938, 2086, 2938, 2087,
2939, 2087, 2940, 2087, 2940, 2088, 2941, 2088, 2941, 2089,
2942, 2089, 2942, 2090, 2943, 2090, 2944, 2090, 2944, 2091,
2945, 2091, 2945, 2092, 2946, 2092, 2947, 2092, 2947, 2093,
2948, 2093, 2948, 2094, 2949, 2094, 2949, 2095, 2950, 2095,
2951, 2095, 2951, 2096, 2952, 2096, 2952, 2097, 2953, 2097,
2954, 2097, 2954, 2098, 2955, 2098, 2955, 2099, 2956, 2099,
2956, 2100, 2957, 2100, 2958, 2100, 2958, 2101, 2959, 2101,
2959, 2102, 2960, 2102, 2961, 2102, 2961, 2103, 2962, 2103,
2962, 2104, 2963, 2104, 2964, 2104, 2964, 2105, 2965, 2105,
2965, 2106, 2966, 2106, 2966, 2107, 2967, 2107, 2968, 2107,
2968, 2108, 2969, 2108, 2969, 2109, 2970, 2109, 2971, 2109,
2971, 2110, 2972, 2110, 2972, 2111, 2973, 2111, 2973, 2112,
2974, 2112, 2975, 2112, 2975, 2113, 2976, 2113, 2976, 2114,
2977, 2114, 2978, 2114, 2978, 2115, 2979, 2115, 2979, 2116,
2980, 2116, 2980, 2117, 2981, 2117, 2982, 2117, 2982, 2118,
2983, 2118, 2983, 2119, 2984, 2119, 2985, 2119, 2985, 2120,
2986, 2120, 2986, 2121, 2987, 2121, 2987, 2122, 2988, 2122,
2989, 2122, 2989, 2123, 2990, 2123, 2990, 2124, 2991, 2124,
2992, 2124, 2992, 2125, 2993, 2125, 2993, 2126, 2994, 2126,
2995, 2126, 2995, 2127, 2996, 2127, 2996, 2128, 2997, 2128,
2997, 2129, 2998, 2129, 2999, 2129, 2999, 2130, 3000, 2130,
3000, 2131, 3001, 2131, 3002, 2131, 3002, 2132, 3003, 2132,
3003, 2133, 3004, 2133, 3004, 2134, 3005, 2134, 3006, 2134,
3006, 2135, 3007, 2135, 3007, 2136, 3008, 2136, 3009, 2136,
3009, 2137, 3010, 2137, 3010, 2138, 3011, 2138, 3011, 2139,
3012, 2139, 3013, 2139, 3013, 2140, 3014, 2140, 3014, 2141,
3015, 2141, 3016, 2141, 3016, 2142, 3017, 2142, 3017, 2143,
3018, 2143, 3018, 2144, 3019, 2144, 3020, 2144, 3020, 2145,
3021, 2145};

int main () {
unsigned int m=128;			// number of words
int g,h,i,j,l,n,a,b;
unsigned int flag,flag1,o;
for (i=0; i<5166; i++) {
output[i]=0; 			// clear quotients
shift[i]=0;				// clear shift amounts
}
error[0]=0;				// overflow indicator
error[1]=0;				// counter
for (i=0; i<5166; i++) {
error[1]=i;				// set counter
l=2*ab[2*i]+ab[2*i+1]+1;		// length of loop
n=ab[2*i]+ab[2*i+1]; 		// number of odd elements in loop
if (n!=(n/d)*d)			// continue if not divisor of n
continue;
setn(S, 0, m);			// clear sum
for (j=1; j<=l; j++) {
a=j*n;
if (a==((a/l)*l)) 		// a=(j*n)/l
a=a/l;
else
a=(a/l)+1;
b=(j-1)*n;
if (b==((b/l)*l)) 		// b=((j-1)*n)/l
b=b/l;
else
b=(b/l)+1;
if ((a-b)>0x100000000) {		// check for overflow
error[0]=1;
goto zskip;
}
setn(A, a-b, m);
for (h=0; h<(n-a); h++) { 	// (a-b)*3**(n-a)
copyn(A, B, m);
addn(A, A, m);
addn(B, A, m);
}
lshiftn(A, B, j-1, m);		// (a-b)*2**(j-1)*3**(n-a)
addn(B, S, m);			// sum+=(a-b)*2**(j-1)*3**(n-a)
if ((S[0]&0xc0000000)!=0) {	// check for overflow
error[0]=2;
goto zskip;
}
}
setn(A, 1, m);
for (h=0; h<n; h++) {		// 3**n
copyn(A, B, m);
addn(A, A, m);
addn(B, A, m);
if ((A[0]&0xc0000000)!=0) {	// check for overflow
error[0]=3;
goto zskip;
}
}
if ((unsigned int)l>=(32*m)) {	// check for overflow
error[0]=4;
goto zskip;
}
setn(B, 1, m);
lshiftn(B, T, l, m); 		// 2**l
negn(A, m);
addn(T, A, m);			// 2**l-3**m
flag=0;
if ((A[0]&0x80000000)!=0) {		// negate 2**l-3**n if negative
negn(A, m);
flag=1;
}
flag1=0;
o=normn(A, m);			// count to normalize divisor
g=(int)(32*m)-(int)o-62;		// right shift amount
if (g>0) {
rshiftn(S, T, g, m);
rshiftn(A, B, g, m);		// denormalize divisor
flag1=g;				// save shift amount
}
else {
copyn(S, T, m);			// copy dividend
copyn(A, B, m);			// copy divisor
}
o=orn(T, m-4);			// check for overflow
if ((o|(T[m-4]&0xc0000000))!=0) {
error[0]=5;
goto zskip;
}
div128_64(T[m-4],T[m-3],T[m-2],T[m-1],C,B[m-2],B[m-1]);    // sum/(2**l-3**n)
if ((C[0]|C[1]|C[2])!=0) {		// check for overflow
error[0]=6;
goto zskip;
}
output[i]=C[3];			// save quotient
if (flag!=0) 			// set "sign" bit
output[i]|=0x80000000;
shift[i]=flag1;			// save shift amount
}
zskip:
return(0);
}
```