-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathexp_fast.h
364 lines (363 loc) · 21.4 KB
/
exp_fast.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
static const db_number tab_exp[179][2] = {
#ifdef WORDS_BIGENDIAN
{{{0x3fe69a59, 0xc8245a9b}}, {{0xbc7f8636, 0x08d2236c}}},
{{{0x3fe6b0ff, 0x72deb89d}}, {{0xbc6dabf5, 0x975c0c02}}},
{{{0x3fe6c7bb, 0xce9a6d93}}, {{0x3c6606ca, 0xac498e17}}},
{{{0x3fe6de8e, 0xf213d71e}}, {{0x3c68b72d, 0x176bde7b}}},
{{{0x3fe6f578, 0xf41e1a9e}}, {{0x3c8067f8, 0xbbf87f0c}}},
{{{0x3fe70c79, 0xeba33c07}}, {{0xbc858b71, 0x227465a1}}},
{{{0x3fe72391, 0xefa434c7}}, {{0x3c790909, 0x5858922d}}},
{{{0x3fe73ac1, 0x17390acd}}, {{0x3c8f8c1c, 0x6cf73277}}},
{{{0x3fe75207, 0x7990e79d}}, {{0xbc38d112, 0x9989f030}}},
{{{0x3fe76965, 0x2df22f7e}}, {{0x3c63445f, 0x7544e0ef}}},
{{{0x3fe780da, 0x4bba98c5}}, {{0xbc8f43e3, 0xbb9bba43}}},
{{{0x3fe79866, 0xea5f432d}}, {{0x3c71339c, 0xa100a0a9}}},
{{{0x3fe7b00b, 0x216ccf53}}, {{0xbc250309, 0xf8f3b151}}},
{{{0x3fe7c7c7, 0x0887763c}}, {{0xbc309aa6, 0x82553231}}},
{{{0x3fe7df9a, 0xb76b20fd}}, {{0x3c6a59e5, 0x24b9c90b}}},
{{{0x3fe7f786, 0x45eb8076}}, {{0x3c835721, 0x07f84e07}}},
{{{0x3fe80f89, 0xcbf42526}}, {{0x3c8097b1, 0x68151806}}},
{{{0x3fe827a5, 0x61889716}}, {{0xbc66b2ea, 0xb63020c1}}},
{{{0x3fe83fd9, 0x1ec46ddc}}, {{0x3c13e907, 0x06ede90c}}},
{{{0x3fe85825, 0x1bdb68b9}}, {{0xbc844395, 0xf562c66e}}},
{{{0x3fe87089, 0x711986c9}}, {{0x3c81125a, 0x87fec2bb}}},
{{{0x3fe88906, 0x36e31f54}}, {{0x3c7d9c29, 0xd8d982ed}}},
{{{0x3fe8a19b, 0x85b4fa2e}}, {{0xbc8b751b, 0x6bec2e05}}},
{{{0x3fe8ba49, 0x76246834}}, {{0xbc8aad78, 0x10320114}}},
{{{0x3fe8d310, 0x20df5be4}}, {{0x3c78afbf, 0xda6ddb12}}},
{{{0x3fe8ebef, 0x9eac820b}}, {{0xbc6797d4, 0x686c5393}}},
{{{0x3fe904e8, 0x086b5a88}}, {{0xbc8fe497, 0x437e6df7}}},
{{{0x3fe91df9, 0x7714512e}}, {{0xbc8ea1cb, 0x9d163339}}},
{{{0x3fe93724, 0x03b8d6bd}}, {{0xbc82216c, 0x35693486}}},
{{{0x3fe95067, 0xc78379f2}}, {{0x3c8f483a, 0x3e8cd60f}}},
{{{0x3fe969c4, 0xdbb800b4}}, {{0x3c8d2bfa, 0x6224bd94}}},
{{{0x3fe9833b, 0x59b38154}}, {{0x3c7dffd9, 0x20f493db}}},
{{{0x3fe99ccb, 0x5aec7bed}}, {{0xbc8dc4e3, 0xdc9b22dd}}},
{{{0x3fe9b674, 0xf8f2f3d8}}, {{0xbc851bfd, 0xbb129094}}},
{{{0x3fe9d038, 0x4d708940}}, {{0xbc8b1090, 0x9e75e4dd}}},
{{{0x3fe9ea15, 0x722892c7}}, {{0x3c8cd3e5, 0x225e2206}}},
{{{0x3fea040c, 0x80f8374f}}, {{0x3c66ef28, 0x2ed9db3e}}},
{{{0x3fea1e1d, 0x93d687d0}}, {{0x3c5e3a6b, 0xdaece8f9}}},
{{{0x3fea3848, 0xc4d49955}}, {{0xbc7e5572, 0x5ac8853a}}},
{{{0x3fea528e, 0x2e1d9f0a}}, {{0xbc8daf2a, 0xe0c2d3d4}}},
{{{0x3fea6ced, 0xe9f70468}}, {{0xbc72eff4, 0xc77638a1}}},
{{{0x3fea8768, 0x12c0877c}}, {{0xbc7fd362, 0x26fadd44}}},
{{{0x3feaa1fc, 0xc2f45344}}, {{0xbc8a0bc2, 0xfa5b95a0}}},
{{{0x3feabcac, 0x15271a2a}}, {{0x3c7d887c, 0xd0341ab0}}},
{{{0x3fead776, 0x2408309c}}, {{0xbc8204e1, 0x82340b91}}},
{{{0x3feaf25b, 0x0a61a7b5}}, {{0xbc8676a5, 0x2a1a618b}}},
{{{0x3feb0d5a, 0xe318680c}}, {{0x3c7d6252, 0xeab2fb84}}},
{{{0x3feb2875, 0xc92c4c99}}, {{0x3c79776b, 0x420ad283}}},
{{{0x3feb43ab, 0xd7b83db2}}, {{0xbc83b931, 0x99dc1248}}},
{{{0x3feb5efd, 0x29f24c26}}, {{0x3c73d5fd, 0x7d70a5ed}}},
{{{0x3feb7a69, 0xdb2bcc77}}, {{0x3c8b00ca, 0x889d0c09}}},
{{{0x3feb95f2, 0x06d17228}}, {{0x3c5a94ad, 0x2c8fa0bf}}},
{{{0x3febb195, 0xc86b6b29}}, {{0x3c547c5c, 0x3f1a5d93}}},
{{{0x3febcd55, 0x3b9d7b62}}, {{0x3c26ad4c, 0x353465b0}}},
{{{0x3febe930, 0x7c271855}}, {{0xbc513dad, 0xea1578b2}}},
{{{0x3fec0527, 0xa5e384de}}, {{0xbc78bba1, 0x70e59b65}}},
{{{0x3fec213a, 0xd4c9ed0e}}, {{0xbc8cec80, 0x4bc47afb}}},
{{{0x3fec3d6a, 0x24ed8222}}, {{0xbc8e1e0a, 0x76cb0685}}},
{{{0x3fec59b5, 0xb27d9697}}, {{0xbc88fd05, 0x41a540a6}}},
{{{0x3fec761d, 0x99c5ba58}}, {{0x3c8fe131, 0xf55e75f8}}},
{{{0x3fec92a1, 0xf72dd70d}}, {{0x3c84ee4c, 0x3e55aaea}}},
{{{0x3fecaf42, 0xe73a4c7e}}, {{0xbc8b5bee, 0xe8bcee31}}},
{{{0x3feccc00, 0x868c0d18}}, {{0x3c8c0e94, 0x3f1d0f61}}},
{{{0x3fece8da, 0xf1e0ba95}}, {{0xbc77fe9b, 0x02c25e9b}}},
{{{0x3fed05d2, 0x4612c2af}}, {{0xbc6793b3, 0x2fbdfc59}}},
{{{0x3fed22e6, 0xa0197c03}}, {{0xbc832ae7, 0xbdaf1116}}},
{{{0x3fed4018, 0x1d094303}}, {{0x3c81be59, 0x05f2ed30}}},
{{{0x3fed5d66, 0xda13970f}}, {{0x3c7a6cfe, 0x58cbd73b}}},
{{{0x3fed7ad2, 0xf48737a2}}, {{0x3c5704ee, 0x00efb659}}},
{{{0x3fed985c, 0x89d041a3}}, {{0x3c68798d, 0xe3138a56}}},
{{{0x3fedb603, 0xb7784cd2}}, {{0xbc8e1926, 0x990a55d6}}},
{{{0x3fedd3c8, 0x9b26894e}}, {{0xbc358932, 0x1a7ef10b}}},
{{{0x3fedf1ab, 0x529fdd42}}, {{0xbc7b70a2, 0x8277560e}}},
{{{0x3fee0fab, 0xfbc702a4}}, {{0xbc78d0e7, 0x00fcfb65}}},
{{{0x3fee2dca, 0xb49ca51b}}, {{0x3c80274c, 0x9176d034}}},
{{{0x3fee4c07, 0x9b3f8000}}, {{0x3c8473ef, 0x07d5dd3b}}},
{{{0x3fee6a62, 0xcdec7c7b}}, {{0xbc5faec3, 0x6c562739}}},
{{{0x3fee88dc, 0x6afecfc0}}, {{0xbc838e62, 0x149c16e2}}},
{{{0x3feea774, 0x90f0196b}}, {{0x3c58dfce, 0xa878850d}}},
{{{0x3feec62b, 0x5e5881fb}}, {{0xbc508bb6, 0x309bd394}}},
{{{0x3feee500, 0xf1eed967}}, {{0x3c6813a6, 0x6763990a}}},
{{{0x3fef03f5, 0x6a88b5d8}}, {{0xbc8bad3f, 0xd501a227}}},
{{{0x3fef2308, 0xe71a927b}}, {{0xbc882dca, 0x0c34c36a}}},
{{{0x3fef423b, 0x86b7ee79}}, {{0x3c63d27a, 0xc39ed253}}},
{{{0x3fef618d, 0x68936c0a}}, {{0xbc73db2a, 0xc62ccbbf}}},
{{{0x3fef80fe, 0xabfeefa5}}, {{0xbc8b60bb, 0xd08aac55}}},
{{{0x3fefa08f, 0x706bbf54}}, {{0xbc8d10fc, 0x51b2d2f4}}},
{{{0x3fefc03f, 0xd56aa225}}, {{0xbc4a00d0, 0x3b3359de}}},
{{{0x3fefe00f, 0xfaabffbc}}, {{0xbc7c7297, 0x0f73da82}}},
{{{0x3ff00000, 0x00000000}}, {{0x00000000, 0x00000000}}},
{{{0x3ff01008, 0x02ab5577}}, {{0x3c9f4a28, 0xa90b49ab}}},
{{{0x3ff02020, 0x15600446}}, {{0xbc93cf36, 0x71f50e32}}},
{{{0x3ff03048, 0x48362077}}, {{0xbc97dc9a, 0xfb978c46}}},
{{{0x3ff04080, 0xab55de39}}, {{0x3c77ab86, 0x4b3e9045}}},
{{{0x3ff050c9, 0x4ef7a207}}, {{0xbc81e92f, 0x0423c90e}}},
{{{0x3ff06122, 0x436410dd}}, {{0x3c74e565, 0x9d75e95b}}},
{{{0x3ff0718b, 0x98f42085}}, {{0xbc70424c, 0xd746e619}}},
{{{0x3ff08205, 0x601127ed}}, {{0xbc99c7d0, 0xbdf15160}}},
{{{0x3ff0928f, 0xa934ef91}}, {{0xbc9b3eec, 0x4247b148}}},
{{{0x3ff0a32a, 0x84e9c1f6}}, {{0xbc9fae8c, 0xf8c1a994}}},
{{{0x3ff0b3d6, 0x03ca7c32}}, {{0x3c9cc3eb, 0x711a7c85}}},
{{{0x3ff0c492, 0x36829e8c}}, {{0xbc8eb698, 0x0ce14da7}}},
{{{0x3ff0d55f, 0x2dce5d1f}}, {{0xbc9a6465, 0x24bd655c}}},
{{{0x3ff0e63c, 0xfa7ab09d}}, {{0x3c773241, 0x37d6c342}}},
{{{0x3ff0f72b, 0xad65671b}}, {{0x3c9a5dcb, 0x3128d0b4}}},
{{{0x3ff1082b, 0x577d34ed}}, {{0x3c9f56c6, 0x80678897}}},
{{{0x3ff1193c, 0x09c1c596}}, {{0xbc8de0e8, 0x6b9ea264}}},
{{{0x3ff12a5d, 0xd543ccc5}}, {{0xbc81280f, 0x19dace1c}}},
{{{0x3ff13b90, 0xcb25176a}}, {{0x3c9322e9, 0x5ae9d14b}}},
{{{0x3ff14cd4, 0xfc989cd6}}, {{0x3c91557a, 0x8671b89e}}},
{{{0x3ff15e2a, 0x7ae28fed}}, {{0xbc964131, 0x403a47bb}}},
{{{0x3ff16f91, 0x57587069}}, {{0x3c87923b, 0x72aa582d}}},
{{{0x3ff18109, 0xa3611c35}}, {{0xbc526e9d, 0xb916967c}}},
{{{0x3ff19293, 0x7074e0cd}}, {{0x3c9a24f4, 0x6336ea04}}},
{{{0x3ff1a42e, 0xd01d8cbc}}, {{0x3c987106, 0x09f2ed1f}}},
{{{0x3ff1b5db, 0xd3f68122}}, {{0x3c881f5c, 0x92a5200f}}},
{{{0x3ff1c79a, 0x8dacc351}}, {{0xbc80f140, 0xc1676e14}}},
{{{0x3ff1d96b, 0x0eff0e79}}, {{0x3c8e8ac7, 0xa4d3206c}}},
{{{0x3ff1eb4d, 0x69bde56a}}, {{0xbc97374b, 0xb76e0cc0}}},
{{{0x3ff1fd41, 0xafcba45e}}, {{0x3c9bb492, 0x42d10731}}},
{{{0x3ff20f47, 0xf31c92e4}}, {{0x3c993f00, 0x6fb23b17}}},
{{{0x3ff22160, 0x45b6f5cd}}, {{0xbc58c4a5, 0xdf1ec7e5}}},
{{{0x3ff2338a, 0xb9b32135}}, {{0xbc9a3764, 0xb102f120}}},
{{{0x3ff245c7, 0x613b8a9b}}, {{0xbc6bd4b1, 0xc37ea8a2}}},
{{{0x3ff25816, 0x4e8cdb0e}}, {{0xbc9f7b88, 0x0992ef5f}}},
{{{0x3ff26a77, 0x93f60164}}, {{0x3c85aeb9, 0x860044d0}}},
{{{0x3ff27ceb, 0x43d84490}}, {{0x3c87bd1a, 0x4052c124}}},
{{{0x3ff28f71, 0x70a755fd}}, {{0x3c9d67b3, 0x3fa73805}}},
{{{0x3ff2a20a, 0x2ce96406}}, {{0x3c8ed622, 0xd53a936a}}},
{{{0x3ff2b4b5, 0x8b372c79}}, {{0x3c9404dd, 0x9f031676}}},
{{{0x3ff2c773, 0x9e3c0f33}}, {{0xbc90b3dd, 0xb1de2605}}},
{{{0x3ff2da44, 0x78b620c7}}, {{0x3c8f5aa8, 0xec61fc2d}}},
{{{0x3ff2ed28, 0x2d763d42}}, {{0x3c937377, 0xd5394aac}}},
{{{0x3ff3001e, 0xcf601af7}}, {{0x3c27ab91, 0x2c69ffeb}}},
{{{0x3ff31328, 0x716a5d64}}, {{0xbc8e9def, 0xce0c517a}}},
{{{0x3ff32645, 0x269ea829}}, {{0xbc5b3564, 0xbc0ec9cd}}},
{{{0x3ff33975, 0x0219b213}}, {{0xbc95d7f9, 0xbb78b2af}}},
{{{0x3ff34cb8, 0x170b5835}}, {{0x3c86a706, 0x2465be33}}},
{{{0x3ff3600e, 0x78b6b11d}}, {{0x3c79d630, 0x3225e849}}},
{{{0x3ff37378, 0x3a722012}}, {{0x3c93d473, 0x96807206}}},
{{{0x3ff386f5, 0x6fa7686e}}, {{0x3c988f8c, 0xe1fc8d12}}},
{{{0x3ff39a86, 0x2bd3c106}}, {{0x3c97dd1a, 0x79cbd0fc}}},
{{{0x3ff3ae2a, 0x8287e7a8}}, {{0x3c527829, 0xfcf4b451}}},
{{{0x3ff3c1e2, 0x876834aa}}, {{0x3c9fe918, 0x047a62b0}}},
{{{0x3ff3d5ae, 0x4e2cae93}}, {{0xbc8baab1, 0xc86c80f0}}},
{{{0x3ff3e98d, 0xeaa11dcc}}, {{0xbc957221, 0x08fefcff}}},
{{{0x3ff3fd81, 0x70a52072}}, {{0xbc9d2e67, 0xe93cfee6}}},
{{{0x3ff41188, 0xf42c3e32}}, {{0x3c6e1761, 0x1afc42c5}}},
{{{0x3ff425a4, 0x893dfc40}}, {{0xbc986cf9, 0x19938e09}}},
{{{0x3ff439d4, 0x43f5f159}}, {{0xbc71c5b2, 0xe8735a43}}},
{{{0x3ff44e18, 0x3883d9e5}}, {{0xbc99c759, 0x9cfd8698}}},
{{{0x3ff46270, 0x7b2bac21}}, {{0xbc825fe1, 0x39c4cffd}}},
{{{0x3ff476dd, 0x2045ac68}}, {{0xbc9cb504, 0x2cae75f8}}},
{{{0x3ff48b5e, 0x3c3e8186}}, {{0x3c99d9ef, 0x0eda6eab}}},
{{{0x3ff49ff3, 0xe397492c}}, {{0xbc94f7e1, 0x687e6cc2}}},
{{{0x3ff4b49e, 0x2ae5ac67}}, {{0x3c91945d, 0xed6ed86d}}},
{{{0x3ff4c95d, 0x26d3f440}}, {{0x3c9d22e2, 0x2ca4967c}}},
{{{0x3ff4de30, 0xec211e60}}, {{0x3c73b522, 0x3eca1712}}},
{{{0x3ff4f319, 0x8fa0f1d0}}, {{0xbc98648d, 0x0a22ea14}}},
{{{0x3ff50817, 0x263c13cd}}, {{0xbc64582a, 0x5e2782ce}}},
{{{0x3ff51d29, 0xc4f01cb3}}, {{0x3c610162, 0x9284257f}}},
{{{0x3ff53251, 0x80cfacf7}}, {{0x3c9b28b6, 0x60a648da}}},
{{{0x3ff5478e, 0x6f02823d}}, {{0x3c41ae4c, 0x00008d9a}}},
{{{0x3ff55ce0, 0xa4c58c7c}}, {{0xbc93660f, 0x48a2d416}}},
{{{0x3ff57248, 0x376b033d}}, {{0x3c9855b8, 0x0324d3d3}}},
{{{0x3ff587c5, 0x3c5a7af0}}, {{0x3c83b0e9, 0x3c017937}}},
{{{0x3ff59d57, 0xc910fa4e}}, {{0xbc78a163, 0x5ac95630}}},
{{{0x3ff5b2ff, 0xf3210fd9}}, {{0x3c95c7b8, 0x14f80bac}}},
{{{0x3ff5c8bd, 0xd032e771}}, {{0xbc9c104d, 0x458cae96}}},
{{{0x3ff5de91, 0x76045ff5}}, {{0x3c8da899, 0x23298baa}}},
{{{0x3ff5f47a, 0xfa69210a}}, {{0x3c9d6444, 0x5dda0c01}}},
{{{0x3ff60a7a, 0x734ab0e8}}, {{0x3c9d5591, 0xf46f291b}}},
{{{0x3ff6208f, 0xf6a88a46}}, {{0x3c74a145, 0xb232f74c}}},
{{{0x3ff636bb, 0x9a983258}}, {{0x3c9349cc, 0x31f7248d}}},
{{{0x3ff64cfd, 0x75454ee8}}, {{0xbc902880, 0x6e05dd06}}},
{{{0x3ff66355, 0x9cf1bc7c}}, {{0x3c968782, 0xfbafe59e}}},
{{{0x3ff679c4, 0x27f5a49f}}, {{0x3c8c8270, 0xa46f644f}}},
{{{0x3ff69049, 0x2cbf9433}}, {{0xbc881283, 0x3f7d6e43}}},
{{{0x3ff6a6e4, 0xc1d491e1}}, {{0x3c9e5530, 0xbd8afebd}}}
#else
{{{0xc8245a9b, 0x3fe69a59}}, {{0x08d2236c, 0xbc7f8636}}},
{{{0x72deb89d, 0x3fe6b0ff}}, {{0x975c0c02, 0xbc6dabf5}}},
{{{0xce9a6d93, 0x3fe6c7bb}}, {{0xac498e17, 0x3c6606ca}}},
{{{0xf213d71e, 0x3fe6de8e}}, {{0x176bde7b, 0x3c68b72d}}},
{{{0xf41e1a9e, 0x3fe6f578}}, {{0xbbf87f0c, 0x3c8067f8}}},
{{{0xeba33c07, 0x3fe70c79}}, {{0x227465a1, 0xbc858b71}}},
{{{0xefa434c7, 0x3fe72391}}, {{0x5858922d, 0x3c790909}}},
{{{0x17390acd, 0x3fe73ac1}}, {{0x6cf73277, 0x3c8f8c1c}}},
{{{0x7990e79d, 0x3fe75207}}, {{0x9989f030, 0xbc38d112}}},
{{{0x2df22f7e, 0x3fe76965}}, {{0x7544e0ef, 0x3c63445f}}},
{{{0x4bba98c5, 0x3fe780da}}, {{0xbb9bba43, 0xbc8f43e3}}},
{{{0xea5f432d, 0x3fe79866}}, {{0xa100a0a9, 0x3c71339c}}},
{{{0x216ccf53, 0x3fe7b00b}}, {{0xf8f3b151, 0xbc250309}}},
{{{0x0887763c, 0x3fe7c7c7}}, {{0x82553231, 0xbc309aa6}}},
{{{0xb76b20fd, 0x3fe7df9a}}, {{0x24b9c90b, 0x3c6a59e5}}},
{{{0x45eb8076, 0x3fe7f786}}, {{0x07f84e07, 0x3c835721}}},
{{{0xcbf42526, 0x3fe80f89}}, {{0x68151806, 0x3c8097b1}}},
{{{0x61889716, 0x3fe827a5}}, {{0xb63020c1, 0xbc66b2ea}}},
{{{0x1ec46ddc, 0x3fe83fd9}}, {{0x06ede90c, 0x3c13e907}}},
{{{0x1bdb68b9, 0x3fe85825}}, {{0xf562c66e, 0xbc844395}}},
{{{0x711986c9, 0x3fe87089}}, {{0x87fec2bb, 0x3c81125a}}},
{{{0x36e31f54, 0x3fe88906}}, {{0xd8d982ed, 0x3c7d9c29}}},
{{{0x85b4fa2e, 0x3fe8a19b}}, {{0x6bec2e05, 0xbc8b751b}}},
{{{0x76246834, 0x3fe8ba49}}, {{0x10320114, 0xbc8aad78}}},
{{{0x20df5be4, 0x3fe8d310}}, {{0xda6ddb12, 0x3c78afbf}}},
{{{0x9eac820b, 0x3fe8ebef}}, {{0x686c5393, 0xbc6797d4}}},
{{{0x086b5a88, 0x3fe904e8}}, {{0x437e6df7, 0xbc8fe497}}},
{{{0x7714512e, 0x3fe91df9}}, {{0x9d163339, 0xbc8ea1cb}}},
{{{0x03b8d6bd, 0x3fe93724}}, {{0x35693486, 0xbc82216c}}},
{{{0xc78379f2, 0x3fe95067}}, {{0x3e8cd60f, 0x3c8f483a}}},
{{{0xdbb800b4, 0x3fe969c4}}, {{0x6224bd94, 0x3c8d2bfa}}},
{{{0x59b38154, 0x3fe9833b}}, {{0x20f493db, 0x3c7dffd9}}},
{{{0x5aec7bed, 0x3fe99ccb}}, {{0xdc9b22dd, 0xbc8dc4e3}}},
{{{0xf8f2f3d8, 0x3fe9b674}}, {{0xbb129094, 0xbc851bfd}}},
{{{0x4d708940, 0x3fe9d038}}, {{0x9e75e4dd, 0xbc8b1090}}},
{{{0x722892c7, 0x3fe9ea15}}, {{0x225e2206, 0x3c8cd3e5}}},
{{{0x80f8374f, 0x3fea040c}}, {{0x2ed9db3e, 0x3c66ef28}}},
{{{0x93d687d0, 0x3fea1e1d}}, {{0xdaece8f9, 0x3c5e3a6b}}},
{{{0xc4d49955, 0x3fea3848}}, {{0x5ac8853a, 0xbc7e5572}}},
{{{0x2e1d9f0a, 0x3fea528e}}, {{0xe0c2d3d4, 0xbc8daf2a}}},
{{{0xe9f70468, 0x3fea6ced}}, {{0xc77638a1, 0xbc72eff4}}},
{{{0x12c0877c, 0x3fea8768}}, {{0x26fadd44, 0xbc7fd362}}},
{{{0xc2f45344, 0x3feaa1fc}}, {{0xfa5b95a0, 0xbc8a0bc2}}},
{{{0x15271a2a, 0x3feabcac}}, {{0xd0341ab0, 0x3c7d887c}}},
{{{0x2408309c, 0x3fead776}}, {{0x82340b91, 0xbc8204e1}}},
{{{0x0a61a7b5, 0x3feaf25b}}, {{0x2a1a618b, 0xbc8676a5}}},
{{{0xe318680c, 0x3feb0d5a}}, {{0xeab2fb84, 0x3c7d6252}}},
{{{0xc92c4c99, 0x3feb2875}}, {{0x420ad283, 0x3c79776b}}},
{{{0xd7b83db2, 0x3feb43ab}}, {{0x99dc1248, 0xbc83b931}}},
{{{0x29f24c26, 0x3feb5efd}}, {{0x7d70a5ed, 0x3c73d5fd}}},
{{{0xdb2bcc77, 0x3feb7a69}}, {{0x889d0c09, 0x3c8b00ca}}},
{{{0x06d17228, 0x3feb95f2}}, {{0x2c8fa0bf, 0x3c5a94ad}}},
{{{0xc86b6b29, 0x3febb195}}, {{0x3f1a5d93, 0x3c547c5c}}},
{{{0x3b9d7b62, 0x3febcd55}}, {{0x353465b0, 0x3c26ad4c}}},
{{{0x7c271855, 0x3febe930}}, {{0xea1578b2, 0xbc513dad}}},
{{{0xa5e384de, 0x3fec0527}}, {{0x70e59b65, 0xbc78bba1}}},
{{{0xd4c9ed0e, 0x3fec213a}}, {{0x4bc47afb, 0xbc8cec80}}},
{{{0x24ed8222, 0x3fec3d6a}}, {{0x76cb0685, 0xbc8e1e0a}}},
{{{0xb27d9697, 0x3fec59b5}}, {{0x41a540a6, 0xbc88fd05}}},
{{{0x99c5ba58, 0x3fec761d}}, {{0xf55e75f8, 0x3c8fe131}}},
{{{0xf72dd70d, 0x3fec92a1}}, {{0x3e55aaea, 0x3c84ee4c}}},
{{{0xe73a4c7e, 0x3fecaf42}}, {{0xe8bcee31, 0xbc8b5bee}}},
{{{0x868c0d18, 0x3feccc00}}, {{0x3f1d0f61, 0x3c8c0e94}}},
{{{0xf1e0ba95, 0x3fece8da}}, {{0x02c25e9b, 0xbc77fe9b}}},
{{{0x4612c2af, 0x3fed05d2}}, {{0x2fbdfc59, 0xbc6793b3}}},
{{{0xa0197c03, 0x3fed22e6}}, {{0xbdaf1116, 0xbc832ae7}}},
{{{0x1d094303, 0x3fed4018}}, {{0x05f2ed30, 0x3c81be59}}},
{{{0xda13970f, 0x3fed5d66}}, {{0x58cbd73b, 0x3c7a6cfe}}},
{{{0xf48737a2, 0x3fed7ad2}}, {{0x00efb659, 0x3c5704ee}}},
{{{0x89d041a3, 0x3fed985c}}, {{0xe3138a56, 0x3c68798d}}},
{{{0xb7784cd2, 0x3fedb603}}, {{0x990a55d6, 0xbc8e1926}}},
{{{0x9b26894e, 0x3fedd3c8}}, {{0x1a7ef10b, 0xbc358932}}},
{{{0x529fdd42, 0x3fedf1ab}}, {{0x8277560e, 0xbc7b70a2}}},
{{{0xfbc702a4, 0x3fee0fab}}, {{0x00fcfb65, 0xbc78d0e7}}},
{{{0xb49ca51b, 0x3fee2dca}}, {{0x9176d034, 0x3c80274c}}},
{{{0x9b3f8000, 0x3fee4c07}}, {{0x07d5dd3b, 0x3c8473ef}}},
{{{0xcdec7c7b, 0x3fee6a62}}, {{0x6c562739, 0xbc5faec3}}},
{{{0x6afecfc0, 0x3fee88dc}}, {{0x149c16e2, 0xbc838e62}}},
{{{0x90f0196b, 0x3feea774}}, {{0xa878850d, 0x3c58dfce}}},
{{{0x5e5881fb, 0x3feec62b}}, {{0x309bd394, 0xbc508bb6}}},
{{{0xf1eed967, 0x3feee500}}, {{0x6763990a, 0x3c6813a6}}},
{{{0x6a88b5d8, 0x3fef03f5}}, {{0xd501a227, 0xbc8bad3f}}},
{{{0xe71a927b, 0x3fef2308}}, {{0x0c34c36a, 0xbc882dca}}},
{{{0x86b7ee79, 0x3fef423b}}, {{0xc39ed253, 0x3c63d27a}}},
{{{0x68936c0a, 0x3fef618d}}, {{0xc62ccbbf, 0xbc73db2a}}},
{{{0xabfeefa5, 0x3fef80fe}}, {{0xd08aac55, 0xbc8b60bb}}},
{{{0x706bbf54, 0x3fefa08f}}, {{0x51b2d2f4, 0xbc8d10fc}}},
{{{0xd56aa225, 0x3fefc03f}}, {{0x3b3359de, 0xbc4a00d0}}},
{{{0xfaabffbc, 0x3fefe00f}}, {{0x0f73da82, 0xbc7c7297}}},
{{{0x00000000, 0x3ff00000}}, {{0x00000000, 0x00000000}}},
{{{0x02ab5577, 0x3ff01008}}, {{0xa90b49ab, 0x3c9f4a28}}},
{{{0x15600446, 0x3ff02020}}, {{0x71f50e32, 0xbc93cf36}}},
{{{0x48362077, 0x3ff03048}}, {{0xfb978c46, 0xbc97dc9a}}},
{{{0xab55de39, 0x3ff04080}}, {{0x4b3e9045, 0x3c77ab86}}},
{{{0x4ef7a207, 0x3ff050c9}}, {{0x0423c90e, 0xbc81e92f}}},
{{{0x436410dd, 0x3ff06122}}, {{0x9d75e95b, 0x3c74e565}}},
{{{0x98f42085, 0x3ff0718b}}, {{0xd746e619, 0xbc70424c}}},
{{{0x601127ed, 0x3ff08205}}, {{0xbdf15160, 0xbc99c7d0}}},
{{{0xa934ef91, 0x3ff0928f}}, {{0x4247b148, 0xbc9b3eec}}},
{{{0x84e9c1f6, 0x3ff0a32a}}, {{0xf8c1a994, 0xbc9fae8c}}},
{{{0x03ca7c32, 0x3ff0b3d6}}, {{0x711a7c85, 0x3c9cc3eb}}},
{{{0x36829e8c, 0x3ff0c492}}, {{0x0ce14da7, 0xbc8eb698}}},
{{{0x2dce5d1f, 0x3ff0d55f}}, {{0x24bd655c, 0xbc9a6465}}},
{{{0xfa7ab09d, 0x3ff0e63c}}, {{0x37d6c342, 0x3c773241}}},
{{{0xad65671b, 0x3ff0f72b}}, {{0x3128d0b4, 0x3c9a5dcb}}},
{{{0x577d34ed, 0x3ff1082b}}, {{0x80678897, 0x3c9f56c6}}},
{{{0x09c1c596, 0x3ff1193c}}, {{0x6b9ea264, 0xbc8de0e8}}},
{{{0xd543ccc5, 0x3ff12a5d}}, {{0x19dace1c, 0xbc81280f}}},
{{{0xcb25176a, 0x3ff13b90}}, {{0x5ae9d14b, 0x3c9322e9}}},
{{{0xfc989cd6, 0x3ff14cd4}}, {{0x8671b89e, 0x3c91557a}}},
{{{0x7ae28fed, 0x3ff15e2a}}, {{0x403a47bb, 0xbc964131}}},
{{{0x57587069, 0x3ff16f91}}, {{0x72aa582d, 0x3c87923b}}},
{{{0xa3611c35, 0x3ff18109}}, {{0xb916967c, 0xbc526e9d}}},
{{{0x7074e0cd, 0x3ff19293}}, {{0x6336ea04, 0x3c9a24f4}}},
{{{0xd01d8cbc, 0x3ff1a42e}}, {{0x09f2ed1f, 0x3c987106}}},
{{{0xd3f68122, 0x3ff1b5db}}, {{0x92a5200f, 0x3c881f5c}}},
{{{0x8dacc351, 0x3ff1c79a}}, {{0xc1676e14, 0xbc80f140}}},
{{{0x0eff0e79, 0x3ff1d96b}}, {{0xa4d3206c, 0x3c8e8ac7}}},
{{{0x69bde56a, 0x3ff1eb4d}}, {{0xb76e0cc0, 0xbc97374b}}},
{{{0xafcba45e, 0x3ff1fd41}}, {{0x42d10731, 0x3c9bb492}}},
{{{0xf31c92e4, 0x3ff20f47}}, {{0x6fb23b17, 0x3c993f00}}},
{{{0x45b6f5cd, 0x3ff22160}}, {{0xdf1ec7e5, 0xbc58c4a5}}},
{{{0xb9b32135, 0x3ff2338a}}, {{0xb102f120, 0xbc9a3764}}},
{{{0x613b8a9b, 0x3ff245c7}}, {{0xc37ea8a2, 0xbc6bd4b1}}},
{{{0x4e8cdb0e, 0x3ff25816}}, {{0x0992ef5f, 0xbc9f7b88}}},
{{{0x93f60164, 0x3ff26a77}}, {{0x860044d0, 0x3c85aeb9}}},
{{{0x43d84490, 0x3ff27ceb}}, {{0x4052c124, 0x3c87bd1a}}},
{{{0x70a755fd, 0x3ff28f71}}, {{0x3fa73805, 0x3c9d67b3}}},
{{{0x2ce96406, 0x3ff2a20a}}, {{0xd53a936a, 0x3c8ed622}}},
{{{0x8b372c79, 0x3ff2b4b5}}, {{0x9f031676, 0x3c9404dd}}},
{{{0x9e3c0f33, 0x3ff2c773}}, {{0xb1de2605, 0xbc90b3dd}}},
{{{0x78b620c7, 0x3ff2da44}}, {{0xec61fc2d, 0x3c8f5aa8}}},
{{{0x2d763d42, 0x3ff2ed28}}, {{0xd5394aac, 0x3c937377}}},
{{{0xcf601af7, 0x3ff3001e}}, {{0x2c69ffeb, 0x3c27ab91}}},
{{{0x716a5d64, 0x3ff31328}}, {{0xce0c517a, 0xbc8e9def}}},
{{{0x269ea829, 0x3ff32645}}, {{0xbc0ec9cd, 0xbc5b3564}}},
{{{0x0219b213, 0x3ff33975}}, {{0xbb78b2af, 0xbc95d7f9}}},
{{{0x170b5835, 0x3ff34cb8}}, {{0x2465be33, 0x3c86a706}}},
{{{0x78b6b11d, 0x3ff3600e}}, {{0x3225e849, 0x3c79d630}}},
{{{0x3a722012, 0x3ff37378}}, {{0x96807206, 0x3c93d473}}},
{{{0x6fa7686e, 0x3ff386f5}}, {{0xe1fc8d12, 0x3c988f8c}}},
{{{0x2bd3c106, 0x3ff39a86}}, {{0x79cbd0fc, 0x3c97dd1a}}},
{{{0x8287e7a8, 0x3ff3ae2a}}, {{0xfcf4b451, 0x3c527829}}},
{{{0x876834aa, 0x3ff3c1e2}}, {{0x047a62b0, 0x3c9fe918}}},
{{{0x4e2cae93, 0x3ff3d5ae}}, {{0xc86c80f0, 0xbc8baab1}}},
{{{0xeaa11dcc, 0x3ff3e98d}}, {{0x08fefcff, 0xbc957221}}},
{{{0x70a52072, 0x3ff3fd81}}, {{0xe93cfee6, 0xbc9d2e67}}},
{{{0xf42c3e32, 0x3ff41188}}, {{0x1afc42c5, 0x3c6e1761}}},
{{{0x893dfc40, 0x3ff425a4}}, {{0x19938e09, 0xbc986cf9}}},
{{{0x43f5f159, 0x3ff439d4}}, {{0xe8735a43, 0xbc71c5b2}}},
{{{0x3883d9e5, 0x3ff44e18}}, {{0x9cfd8698, 0xbc99c759}}},
{{{0x7b2bac21, 0x3ff46270}}, {{0x39c4cffd, 0xbc825fe1}}},
{{{0x2045ac68, 0x3ff476dd}}, {{0x2cae75f8, 0xbc9cb504}}},
{{{0x3c3e8186, 0x3ff48b5e}}, {{0x0eda6eab, 0x3c99d9ef}}},
{{{0xe397492c, 0x3ff49ff3}}, {{0x687e6cc2, 0xbc94f7e1}}},
{{{0x2ae5ac67, 0x3ff4b49e}}, {{0xed6ed86d, 0x3c91945d}}},
{{{0x26d3f440, 0x3ff4c95d}}, {{0x2ca4967c, 0x3c9d22e2}}},
{{{0xec211e60, 0x3ff4de30}}, {{0x3eca1712, 0x3c73b522}}},
{{{0x8fa0f1d0, 0x3ff4f319}}, {{0x0a22ea14, 0xbc98648d}}},
{{{0x263c13cd, 0x3ff50817}}, {{0x5e2782ce, 0xbc64582a}}},
{{{0xc4f01cb3, 0x3ff51d29}}, {{0x9284257f, 0x3c610162}}},
{{{0x80cfacf7, 0x3ff53251}}, {{0x60a648da, 0x3c9b28b6}}},
{{{0x6f02823d, 0x3ff5478e}}, {{0x00008d9a, 0x3c41ae4c}}},
{{{0xa4c58c7c, 0x3ff55ce0}}, {{0x48a2d416, 0xbc93660f}}},
{{{0x376b033d, 0x3ff57248}}, {{0x0324d3d3, 0x3c9855b8}}},
{{{0x3c5a7af0, 0x3ff587c5}}, {{0x3c017937, 0x3c83b0e9}}},
{{{0xc910fa4e, 0x3ff59d57}}, {{0x5ac95630, 0xbc78a163}}},
{{{0xf3210fd9, 0x3ff5b2ff}}, {{0x14f80bac, 0x3c95c7b8}}},
{{{0xd032e771, 0x3ff5c8bd}}, {{0x458cae96, 0xbc9c104d}}},
{{{0x76045ff5, 0x3ff5de91}}, {{0x23298baa, 0x3c8da899}}},
{{{0xfa69210a, 0x3ff5f47a}}, {{0x5dda0c01, 0x3c9d6444}}},
{{{0x734ab0e8, 0x3ff60a7a}}, {{0xf46f291b, 0x3c9d5591}}},
{{{0xf6a88a46, 0x3ff6208f}}, {{0xb232f74c, 0x3c74a145}}},
{{{0x9a983258, 0x3ff636bb}}, {{0x31f7248d, 0x3c9349cc}}},
{{{0x75454ee8, 0x3ff64cfd}}, {{0x6e05dd06, 0xbc902880}}},
{{{0x9cf1bc7c, 0x3ff66355}}, {{0xfbafe59e, 0x3c968782}}},
{{{0x27f5a49f, 0x3ff679c4}}, {{0xa46f644f, 0x3c8c8270}}},
{{{0x2cbf9433, 0x3ff69049}}, {{0x3f7d6e43, 0xbc881283}}},
{{{0xc1d491e1, 0x3ff6a6e4}}, {{0xbd8afebd, 0x3c9e5530}}}
#endif
};