8bb168517da3af06d34e2a4702490360bdecbdd1
[openssl.git] / crypto / bn / bn_prime.h
1 /* Auto generated by bn_prime.pl */
2 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3  * All rights reserved.
4  *
5  * This package is an SSL implementation written
6  * by Eric Young (eay@cryptsoft.com).
7  * The implementation was written so as to conform with Netscapes SSL.
8  * 
9  * This library is free for commercial and non-commercial use as long as
10  * the following conditions are aheared to.  The following conditions
11  * apply to all code found in this distribution, be it the RC4, RSA,
12  * lhash, DES, etc., code; not just the SSL code.  The SSL documentation
13  * included with this distribution is covered by the same copyright terms
14  * except that the holder is Tim Hudson (tjh@cryptsoft.com).
15  * 
16  * Copyright remains Eric Young's, and as such any Copyright notices in
17  * the code are not to be removed.
18  * If this package is used in a product, Eric Young should be given attribution
19  * as the author of the parts of the library used.
20  * This can be in the form of a textual message at program startup or
21  * in documentation (online or textual) provided with the package.
22  * 
23  * Redistribution and use in source and binary forms, with or without
24  * modification, are permitted provided that the following conditions
25  * are met:
26  * 1. Redistributions of source code must retain the copyright
27  *    notice, this list of conditions and the following disclaimer.
28  * 2. Redistributions in binary form must reproduce the above copyright
29  *    notice, this list of conditions and the following disclaimer in the
30  *    documentation and/or other materials provided with the distribution.
31  * 3. All advertising materials mentioning features or use of this software
32  *    must display the following acknowledgement:
33  *    "This product includes cryptographic software written by
34  *     Eric Young (eay@cryptsoft.com)"
35  *    The word 'cryptographic' can be left out if the rouines from the library
36  *    being used are not cryptographic related :-).
37  * 4. If you include any Windows specific code (or a derivative thereof) from 
38  *    the apps directory (application code) you must include an acknowledgement:
39  *    "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
40  * 
41  * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
42  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
43  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
44  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
45  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
46  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
47  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
48  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
49  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
50  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
51  * SUCH DAMAGE.
52  * 
53  * The licence and distribution terms for any publically available version or
54  * derivative of this code cannot be changed.  i.e. this code cannot simply be
55  * copied and put under another distribution licence
56  * [including the GNU Public Licence.]
57  */
58
59 #ifndef EIGHT_BIT
60 #define NUMPRIMES 2048
61 #else
62 #define NUMPRIMES 54
63 #endif
64 static unsigned int primes[NUMPRIMES]=
65         {
66            2,   3,   5,   7,  11,  13,  17,  19,
67           23,  29,  31,  37,  41,  43,  47,  53,
68           59,  61,  67,  71,  73,  79,  83,  89,
69           97, 101, 103, 107, 109, 113, 127, 131,
70          137, 139, 149, 151, 157, 163, 167, 173,
71          179, 181, 191, 193, 197, 199, 211, 223,
72          227, 229, 233, 239, 241, 251,
73 #ifndef EIGHT_BIT
74          257, 263,
75          269, 271, 277, 281, 283, 293, 307, 311,
76          313, 317, 331, 337, 347, 349, 353, 359,
77          367, 373, 379, 383, 389, 397, 401, 409,
78          419, 421, 431, 433, 439, 443, 449, 457,
79          461, 463, 467, 479, 487, 491, 499, 503,
80          509, 521, 523, 541, 547, 557, 563, 569,
81          571, 577, 587, 593, 599, 601, 607, 613,
82          617, 619, 631, 641, 643, 647, 653, 659,
83          661, 673, 677, 683, 691, 701, 709, 719,
84          727, 733, 739, 743, 751, 757, 761, 769,
85          773, 787, 797, 809, 811, 821, 823, 827,
86          829, 839, 853, 857, 859, 863, 877, 881,
87          883, 887, 907, 911, 919, 929, 937, 941,
88          947, 953, 967, 971, 977, 983, 991, 997,
89         1009,1013,1019,1021,1031,1033,1039,1049,
90         1051,1061,1063,1069,1087,1091,1093,1097,
91         1103,1109,1117,1123,1129,1151,1153,1163,
92         1171,1181,1187,1193,1201,1213,1217,1223,
93         1229,1231,1237,1249,1259,1277,1279,1283,
94         1289,1291,1297,1301,1303,1307,1319,1321,
95         1327,1361,1367,1373,1381,1399,1409,1423,
96         1427,1429,1433,1439,1447,1451,1453,1459,
97         1471,1481,1483,1487,1489,1493,1499,1511,
98         1523,1531,1543,1549,1553,1559,1567,1571,
99         1579,1583,1597,1601,1607,1609,1613,1619,
100         1621,1627,1637,1657,1663,1667,1669,1693,
101         1697,1699,1709,1721,1723,1733,1741,1747,
102         1753,1759,1777,1783,1787,1789,1801,1811,
103         1823,1831,1847,1861,1867,1871,1873,1877,
104         1879,1889,1901,1907,1913,1931,1933,1949,
105         1951,1973,1979,1987,1993,1997,1999,2003,
106         2011,2017,2027,2029,2039,2053,2063,2069,
107         2081,2083,2087,2089,2099,2111,2113,2129,
108         2131,2137,2141,2143,2153,2161,2179,2203,
109         2207,2213,2221,2237,2239,2243,2251,2267,
110         2269,2273,2281,2287,2293,2297,2309,2311,
111         2333,2339,2341,2347,2351,2357,2371,2377,
112         2381,2383,2389,2393,2399,2411,2417,2423,
113         2437,2441,2447,2459,2467,2473,2477,2503,
114         2521,2531,2539,2543,2549,2551,2557,2579,
115         2591,2593,2609,2617,2621,2633,2647,2657,
116         2659,2663,2671,2677,2683,2687,2689,2693,
117         2699,2707,2711,2713,2719,2729,2731,2741,
118         2749,2753,2767,2777,2789,2791,2797,2801,
119         2803,2819,2833,2837,2843,2851,2857,2861,
120         2879,2887,2897,2903,2909,2917,2927,2939,
121         2953,2957,2963,2969,2971,2999,3001,3011,
122         3019,3023,3037,3041,3049,3061,3067,3079,
123         3083,3089,3109,3119,3121,3137,3163,3167,
124         3169,3181,3187,3191,3203,3209,3217,3221,
125         3229,3251,3253,3257,3259,3271,3299,3301,
126         3307,3313,3319,3323,3329,3331,3343,3347,
127         3359,3361,3371,3373,3389,3391,3407,3413,
128         3433,3449,3457,3461,3463,3467,3469,3491,
129         3499,3511,3517,3527,3529,3533,3539,3541,
130         3547,3557,3559,3571,3581,3583,3593,3607,
131         3613,3617,3623,3631,3637,3643,3659,3671,
132         3673,3677,3691,3697,3701,3709,3719,3727,
133         3733,3739,3761,3767,3769,3779,3793,3797,
134         3803,3821,3823,3833,3847,3851,3853,3863,
135         3877,3881,3889,3907,3911,3917,3919,3923,
136         3929,3931,3943,3947,3967,3989,4001,4003,
137         4007,4013,4019,4021,4027,4049,4051,4057,
138         4073,4079,4091,4093,4099,4111,4127,4129,
139         4133,4139,4153,4157,4159,4177,4201,4211,
140         4217,4219,4229,4231,4241,4243,4253,4259,
141         4261,4271,4273,4283,4289,4297,4327,4337,
142         4339,4349,4357,4363,4373,4391,4397,4409,
143         4421,4423,4441,4447,4451,4457,4463,4481,
144         4483,4493,4507,4513,4517,4519,4523,4547,
145         4549,4561,4567,4583,4591,4597,4603,4621,
146         4637,4639,4643,4649,4651,4657,4663,4673,
147         4679,4691,4703,4721,4723,4729,4733,4751,
148         4759,4783,4787,4789,4793,4799,4801,4813,
149         4817,4831,4861,4871,4877,4889,4903,4909,
150         4919,4931,4933,4937,4943,4951,4957,4967,
151         4969,4973,4987,4993,4999,5003,5009,5011,
152         5021,5023,5039,5051,5059,5077,5081,5087,
153         5099,5101,5107,5113,5119,5147,5153,5167,
154         5171,5179,5189,5197,5209,5227,5231,5233,
155         5237,5261,5273,5279,5281,5297,5303,5309,
156         5323,5333,5347,5351,5381,5387,5393,5399,
157         5407,5413,5417,5419,5431,5437,5441,5443,
158         5449,5471,5477,5479,5483,5501,5503,5507,
159         5519,5521,5527,5531,5557,5563,5569,5573,
160         5581,5591,5623,5639,5641,5647,5651,5653,
161         5657,5659,5669,5683,5689,5693,5701,5711,
162         5717,5737,5741,5743,5749,5779,5783,5791,
163         5801,5807,5813,5821,5827,5839,5843,5849,
164         5851,5857,5861,5867,5869,5879,5881,5897,
165         5903,5923,5927,5939,5953,5981,5987,6007,
166         6011,6029,6037,6043,6047,6053,6067,6073,
167         6079,6089,6091,6101,6113,6121,6131,6133,
168         6143,6151,6163,6173,6197,6199,6203,6211,
169         6217,6221,6229,6247,6257,6263,6269,6271,
170         6277,6287,6299,6301,6311,6317,6323,6329,
171         6337,6343,6353,6359,6361,6367,6373,6379,
172         6389,6397,6421,6427,6449,6451,6469,6473,
173         6481,6491,6521,6529,6547,6551,6553,6563,
174         6569,6571,6577,6581,6599,6607,6619,6637,
175         6653,6659,6661,6673,6679,6689,6691,6701,
176         6703,6709,6719,6733,6737,6761,6763,6779,
177         6781,6791,6793,6803,6823,6827,6829,6833,
178         6841,6857,6863,6869,6871,6883,6899,6907,
179         6911,6917,6947,6949,6959,6961,6967,6971,
180         6977,6983,6991,6997,7001,7013,7019,7027,
181         7039,7043,7057,7069,7079,7103,7109,7121,
182         7127,7129,7151,7159,7177,7187,7193,7207,
183         7211,7213,7219,7229,7237,7243,7247,7253,
184         7283,7297,7307,7309,7321,7331,7333,7349,
185         7351,7369,7393,7411,7417,7433,7451,7457,
186         7459,7477,7481,7487,7489,7499,7507,7517,
187         7523,7529,7537,7541,7547,7549,7559,7561,
188         7573,7577,7583,7589,7591,7603,7607,7621,
189         7639,7643,7649,7669,7673,7681,7687,7691,
190         7699,7703,7717,7723,7727,7741,7753,7757,
191         7759,7789,7793,7817,7823,7829,7841,7853,
192         7867,7873,7877,7879,7883,7901,7907,7919,
193         7927,7933,7937,7949,7951,7963,7993,8009,
194         8011,8017,8039,8053,8059,8069,8081,8087,
195         8089,8093,8101,8111,8117,8123,8147,8161,
196         8167,8171,8179,8191,8209,8219,8221,8231,
197         8233,8237,8243,8263,8269,8273,8287,8291,
198         8293,8297,8311,8317,8329,8353,8363,8369,
199         8377,8387,8389,8419,8423,8429,8431,8443,
200         8447,8461,8467,8501,8513,8521,8527,8537,
201         8539,8543,8563,8573,8581,8597,8599,8609,
202         8623,8627,8629,8641,8647,8663,8669,8677,
203         8681,8689,8693,8699,8707,8713,8719,8731,
204         8737,8741,8747,8753,8761,8779,8783,8803,
205         8807,8819,8821,8831,8837,8839,8849,8861,
206         8863,8867,8887,8893,8923,8929,8933,8941,
207         8951,8963,8969,8971,8999,9001,9007,9011,
208         9013,9029,9041,9043,9049,9059,9067,9091,
209         9103,9109,9127,9133,9137,9151,9157,9161,
210         9173,9181,9187,9199,9203,9209,9221,9227,
211         9239,9241,9257,9277,9281,9283,9293,9311,
212         9319,9323,9337,9341,9343,9349,9371,9377,
213         9391,9397,9403,9413,9419,9421,9431,9433,
214         9437,9439,9461,9463,9467,9473,9479,9491,
215         9497,9511,9521,9533,9539,9547,9551,9587,
216         9601,9613,9619,9623,9629,9631,9643,9649,
217         9661,9677,9679,9689,9697,9719,9721,9733,
218         9739,9743,9749,9767,9769,9781,9787,9791,
219         9803,9811,9817,9829,9833,9839,9851,9857,
220         9859,9871,9883,9887,9901,9907,9923,9929,
221         9931,9941,9949,9967,9973,10007,10009,10037,
222         10039,10061,10067,10069,10079,10091,10093,10099,
223         10103,10111,10133,10139,10141,10151,10159,10163,
224         10169,10177,10181,10193,10211,10223,10243,10247,
225         10253,10259,10267,10271,10273,10289,10301,10303,
226         10313,10321,10331,10333,10337,10343,10357,10369,
227         10391,10399,10427,10429,10433,10453,10457,10459,
228         10463,10477,10487,10499,10501,10513,10529,10531,
229         10559,10567,10589,10597,10601,10607,10613,10627,
230         10631,10639,10651,10657,10663,10667,10687,10691,
231         10709,10711,10723,10729,10733,10739,10753,10771,
232         10781,10789,10799,10831,10837,10847,10853,10859,
233         10861,10867,10883,10889,10891,10903,10909,10937,
234         10939,10949,10957,10973,10979,10987,10993,11003,
235         11027,11047,11057,11059,11069,11071,11083,11087,
236         11093,11113,11117,11119,11131,11149,11159,11161,
237         11171,11173,11177,11197,11213,11239,11243,11251,
238         11257,11261,11273,11279,11287,11299,11311,11317,
239         11321,11329,11351,11353,11369,11383,11393,11399,
240         11411,11423,11437,11443,11447,11467,11471,11483,
241         11489,11491,11497,11503,11519,11527,11549,11551,
242         11579,11587,11593,11597,11617,11621,11633,11657,
243         11677,11681,11689,11699,11701,11717,11719,11731,
244         11743,11777,11779,11783,11789,11801,11807,11813,
245         11821,11827,11831,11833,11839,11863,11867,11887,
246         11897,11903,11909,11923,11927,11933,11939,11941,
247         11953,11959,11969,11971,11981,11987,12007,12011,
248         12037,12041,12043,12049,12071,12073,12097,12101,
249         12107,12109,12113,12119,12143,12149,12157,12161,
250         12163,12197,12203,12211,12227,12239,12241,12251,
251         12253,12263,12269,12277,12281,12289,12301,12323,
252         12329,12343,12347,12373,12377,12379,12391,12401,
253         12409,12413,12421,12433,12437,12451,12457,12473,
254         12479,12487,12491,12497,12503,12511,12517,12527,
255         12539,12541,12547,12553,12569,12577,12583,12589,
256         12601,12611,12613,12619,12637,12641,12647,12653,
257         12659,12671,12689,12697,12703,12713,12721,12739,
258         12743,12757,12763,12781,12791,12799,12809,12821,
259         12823,12829,12841,12853,12889,12893,12899,12907,
260         12911,12917,12919,12923,12941,12953,12959,12967,
261         12973,12979,12983,13001,13003,13007,13009,13033,
262         13037,13043,13049,13063,13093,13099,13103,13109,
263         13121,13127,13147,13151,13159,13163,13171,13177,
264         13183,13187,13217,13219,13229,13241,13249,13259,
265         13267,13291,13297,13309,13313,13327,13331,13337,
266         13339,13367,13381,13397,13399,13411,13417,13421,
267         13441,13451,13457,13463,13469,13477,13487,13499,
268         13513,13523,13537,13553,13567,13577,13591,13597,
269         13613,13619,13627,13633,13649,13669,13679,13681,
270         13687,13691,13693,13697,13709,13711,13721,13723,
271         13729,13751,13757,13759,13763,13781,13789,13799,
272         13807,13829,13831,13841,13859,13873,13877,13879,
273         13883,13901,13903,13907,13913,13921,13931,13933,
274         13963,13967,13997,13999,14009,14011,14029,14033,
275         14051,14057,14071,14081,14083,14087,14107,14143,
276         14149,14153,14159,14173,14177,14197,14207,14221,
277         14243,14249,14251,14281,14293,14303,14321,14323,
278         14327,14341,14347,14369,14387,14389,14401,14407,
279         14411,14419,14423,14431,14437,14447,14449,14461,
280         14479,14489,14503,14519,14533,14537,14543,14549,
281         14551,14557,14561,14563,14591,14593,14621,14627,
282         14629,14633,14639,14653,14657,14669,14683,14699,
283         14713,14717,14723,14731,14737,14741,14747,14753,
284         14759,14767,14771,14779,14783,14797,14813,14821,
285         14827,14831,14843,14851,14867,14869,14879,14887,
286         14891,14897,14923,14929,14939,14947,14951,14957,
287         14969,14983,15013,15017,15031,15053,15061,15073,
288         15077,15083,15091,15101,15107,15121,15131,15137,
289         15139,15149,15161,15173,15187,15193,15199,15217,
290         15227,15233,15241,15259,15263,15269,15271,15277,
291         15287,15289,15299,15307,15313,15319,15329,15331,
292         15349,15359,15361,15373,15377,15383,15391,15401,
293         15413,15427,15439,15443,15451,15461,15467,15473,
294         15493,15497,15511,15527,15541,15551,15559,15569,
295         15581,15583,15601,15607,15619,15629,15641,15643,
296         15647,15649,15661,15667,15671,15679,15683,15727,
297         15731,15733,15737,15739,15749,15761,15767,15773,
298         15787,15791,15797,15803,15809,15817,15823,15859,
299         15877,15881,15887,15889,15901,15907,15913,15919,
300         15923,15937,15959,15971,15973,15991,16001,16007,
301         16033,16057,16061,16063,16067,16069,16073,16087,
302         16091,16097,16103,16111,16127,16139,16141,16183,
303         16187,16189,16193,16217,16223,16229,16231,16249,
304         16253,16267,16273,16301,16319,16333,16339,16349,
305         16361,16363,16369,16381,16411,16417,16421,16427,
306         16433,16447,16451,16453,16477,16481,16487,16493,
307         16519,16529,16547,16553,16561,16567,16573,16603,
308         16607,16619,16631,16633,16649,16651,16657,16661,
309         16673,16691,16693,16699,16703,16729,16741,16747,
310         16759,16763,16787,16811,16823,16829,16831,16843,
311         16871,16879,16883,16889,16901,16903,16921,16927,
312         16931,16937,16943,16963,16979,16981,16987,16993,
313         17011,17021,17027,17029,17033,17041,17047,17053,
314         17077,17093,17099,17107,17117,17123,17137,17159,
315         17167,17183,17189,17191,17203,17207,17209,17231,
316         17239,17257,17291,17293,17299,17317,17321,17327,
317         17333,17341,17351,17359,17377,17383,17387,17389,
318         17393,17401,17417,17419,17431,17443,17449,17467,
319         17471,17477,17483,17489,17491,17497,17509,17519,
320         17539,17551,17569,17573,17579,17581,17597,17599,
321         17609,17623,17627,17657,17659,17669,17681,17683,
322         17707,17713,17729,17737,17747,17749,17761,17783,
323         17789,17791,17807,17827,17837,17839,17851,17863,
324 #endif
325         };