-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathencode_table.h
More file actions
523 lines (522 loc) · 28.7 KB
/
encode_table.h
File metadata and controls
523 lines (522 loc) · 28.7 KB
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
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
/*
AN EFFICIENT GOLAY CODEC FOR
MIL-STD-188-141A AND FED-STD-1045
ERIC E. JOHNSON
NMSU-ECE-91-001 FEBRUARY 1991
New Mexico State University
Dept. 3-O
Las Cruces, NM 88003-0001
*/
int enc[4096] = {
00000, 02707, 05615, 07112, 01336, 03431, 04523, 06224,
02674, 00173, 07061, 05766, 03542, 01245, 06357, 04450,
05570, 07277, 00365, 02462, 04646, 06141, 01053, 03754,
07304, 05403, 02511, 00216, 06032, 04735, 03627, 01120,
01467, 03360, 04272, 06575, 00751, 02056, 05144, 07643,
03213, 01514, 06406, 04301, 02125, 00622, 07730, 05037,
04117, 06610, 01702, 03005, 05221, 07526, 00434, 02333,
06763, 04064, 03176, 01671, 07455, 05352, 02240, 00547,
03155, 01652, 06740, 04047, 02263, 00564, 07476, 05371,
01721, 03026, 04134, 06633, 00417, 02310, 05202, 07505,
06425, 04322, 03230, 01537, 07713, 05014, 02106, 00601,
04251, 06556, 01444, 03343, 05167, 07660, 00772, 02075,
02532, 00235, 07327, 05420, 03604, 01103, 06011, 04716,
00346, 02441, 05553, 07254, 01070, 03777, 04665, 06162,
07042, 05745, 02657, 00150, 06374, 04473, 03561, 01266,
05636, 07131, 00023, 02724, 04500, 06207, 01315, 03412,
06331, 04436, 03524, 01223, 07007, 05700, 02612, 00115,
04545, 06242, 01350, 03457, 05673, 07174, 00066, 02761,
03641, 01146, 06054, 04753, 02577, 00270, 07362, 05465,
01035, 03732, 04620, 06127, 00303, 02404, 05516, 07211,
07756, 05051, 02143, 00644, 06460, 04367, 03275, 01572,
05122, 07625, 00737, 02030, 04214, 06513, 01401, 03306,
02226, 00521, 07433, 05334, 03110, 01617, 06705, 04002,
00452, 02355, 05247, 07540, 01764, 03063, 04171, 06676,
05264, 07563, 00471, 02376, 04152, 06655, 01747, 03040,
07410, 05317, 02205, 00502, 06726, 04021, 03133, 01634,
00714, 02013, 05101, 07606, 01422, 03325, 04237, 06530,
02160, 00667, 07775, 05072, 03256, 01551, 06443, 04344,
04603, 06104, 01016, 03711, 05535, 07232, 00320, 02427,
06077, 04770, 03662, 01165, 07341, 05446, 02554, 00253,
01373, 03474, 04566, 06261, 00045, 02742, 05650, 07157,
03507, 01200, 06312, 04415, 02631, 00136, 07024, 05723,
06166, 04661, 03773, 01074, 07250, 05557, 02445, 00342,
04712, 06015, 01107, 03600, 05424, 07323, 00231, 02536,
03416, 01311, 06203, 04504, 02720, 00027, 07135, 05632,
01262, 03565, 04477, 06370, 00154, 02653, 05741, 07046,
07501, 05206, 02314, 00413, 06637, 04130, 03022, 01725,
05375, 07472, 00560, 02267, 04043, 06744, 01656, 03151,
02071, 00776, 07664, 05163, 03347, 01440, 06552, 04255,
00605, 02102, 05010, 07717, 01533, 03234, 04326, 06421,
05033, 07734, 00626, 02121, 04305, 06402, 01510, 03217,
07647, 05140, 02052, 00755, 06571, 04276, 03364, 01463,
00543, 02244, 05356, 07451, 01675, 03172, 04060, 06767,
02337, 00430, 07522, 05225, 03001, 01706, 06614, 04113,
04454, 06353, 01241, 03546, 05762, 07065, 00177, 02670,
06220, 04527, 03435, 01332, 07116, 05611, 02703, 00004,
01124, 03623, 04731, 06036, 00212, 02515, 05407, 07300,
03750, 01057, 06145, 04642, 02466, 00361, 07273, 05574,
00257, 02550, 05442, 07345, 01161, 03666, 04774, 06073,
02423, 00324, 07236, 05531, 03715, 01012, 06100, 04607,
05727, 07020, 00132, 02635, 04411, 06316, 01204, 03503,
07153, 05654, 02746, 00041, 06265, 04562, 03470, 01377,
01630, 03137, 04025, 06722, 00506, 02201, 05313, 07414,
03044, 01743, 06651, 04156, 02372, 00475, 07567, 05260,
04340, 06447, 01555, 03252, 05076, 07771, 00663, 02164,
06534, 04233, 03321, 01426, 07602, 05105, 02017, 00710,
03302, 01405, 06517, 04210, 02034, 00733, 07621, 05126,
01576, 03271, 04363, 06464, 00640, 02147, 05055, 07752,
06672, 04175, 03067, 01760, 07544, 05243, 02351, 00456,
04006, 06701, 01613, 03114, 05330, 07437, 00525, 02222,
02765, 00062, 07170, 05677, 03453, 01354, 06246, 04541,
00111, 02616, 05704, 07003, 01227, 03520, 04432, 06335,
07215, 05512, 02400, 00307, 06123, 04624, 03736, 01031,
05461, 07366, 00274, 02573, 04757, 06050, 01142, 03645,
06453, 04354, 03246, 01541, 07765, 05062, 02170, 00677,
04227, 06520, 01432, 03335, 05111, 07616, 00704, 02003,
03123, 01624, 06736, 04031, 02215, 00512, 07400, 05307,
01757, 03050, 04142, 06645, 00461, 02366, 05274, 07573,
07034, 05733, 02621, 00126, 06302, 04405, 03517, 01210,
05640, 07147, 00055, 02752, 04576, 06271, 01363, 03464,
02544, 00243, 07351, 05456, 03672, 01175, 06067, 04760,
00330, 02437, 05525, 07222, 01006, 03701, 04613, 06114,
05506, 07201, 00313, 02414, 04630, 06137, 01025, 03722,
07372, 05475, 02567, 00260, 06044, 04743, 03651, 01156,
00076, 02771, 05663, 07164, 01340, 03447, 04555, 06252,
02602, 00105, 07017, 05710, 03534, 01233, 06321, 04426,
04161, 06666, 01774, 03073, 05257, 07550, 00442, 02345,
06715, 04012, 03100, 01607, 07423, 05324, 02236, 00531,
01411, 03316, 04204, 06503, 00727, 02020, 05132, 07635,
03265, 01562, 06470, 04377, 02153, 00654, 07746, 05041,
00762, 02065, 05177, 07670, 01454, 03353, 04241, 06546,
02116, 00611, 07703, 05004, 03220, 01527, 06435, 04332,
05212, 07515, 00407, 02300, 04124, 06623, 01731, 03036,
07466, 05361, 02273, 00574, 06750, 04057, 03145, 01642,
01305, 03402, 04510, 06217, 00033, 02734, 05626, 07121,
03571, 01276, 06364, 04463, 02647, 00140, 07052, 05755,
04675, 06172, 01060, 03767, 05543, 07244, 00356, 02451,
06001, 04706, 03614, 01113, 07337, 05430, 02522, 00225,
03637, 01130, 06022, 04725, 02501, 00206, 07314, 05413,
01043, 03744, 04656, 06151, 00375, 02472, 05560, 07267,
06347, 04440, 03552, 01255, 07071, 05776, 02664, 00163,
04533, 06234, 01326, 03421, 05605, 07102, 00010, 02717,
02250, 00557, 07445, 05342, 03166, 01661, 06773, 04074,
00424, 02323, 05231, 07536, 01712, 03015, 04107, 06600,
07720, 05027, 02135, 00632, 06416, 04311, 03203, 01504,
05154, 07653, 00741, 02046, 04262, 06565, 01477, 03370,
00535, 02232, 05320, 07427, 01603, 03104, 04016, 06711,
02341, 00446, 07554, 05253, 03077, 01770, 06662, 04165,
05045, 07742, 00650, 02157, 04373, 06474, 01566, 03261,
07631, 05136, 02024, 00723, 06507, 04200, 03312, 01415,
01152, 03655, 04747, 06040, 00264, 02563, 05471, 07376,
03726, 01021, 06133, 04634, 02410, 00317, 07205, 05502,
04422, 06325, 01237, 03530, 05714, 07013, 00101, 02606,
06256, 04551, 03443, 01344, 07160, 05667, 02775, 00072,
03460, 01367, 06275, 04572, 02756, 00051, 07143, 05644,
01214, 03513, 04401, 06306, 00122, 02625, 05737, 07030,
06110, 04617, 03705, 01002, 07226, 05521, 02433, 00334,
04764, 06063, 01171, 03676, 05452, 07355, 00247, 02540,
02007, 00700, 07612, 05115, 03331, 01436, 06524, 04223,
00673, 02174, 05066, 07761, 01545, 03242, 04350, 06457,
07577, 05270, 02362, 00465, 06641, 04146, 03054, 01753,
05303, 07404, 00516, 02211, 04035, 06732, 01620, 03127,
06604, 04103, 03011, 01716, 07532, 05235, 02327, 00420,
04070, 06777, 01665, 03162, 05346, 07441, 00553, 02254,
03374, 01473, 06561, 04266, 02042, 00745, 07657, 05150,
01500, 03207, 04315, 06412, 00636, 02131, 05023, 07724,
07263, 05564, 02476, 00371, 06155, 04652, 03740, 01047,
05417, 07310, 00202, 02505, 04721, 06026, 01134, 03633,
02713, 00014, 07106, 05601, 03425, 01322, 06230, 04537,
00167, 02660, 05772, 07075, 01251, 03556, 04444, 06343,
05751, 07056, 00144, 02643, 04467, 06360, 01272, 03575,
07125, 05622, 02730, 00037, 06213, 04514, 03406, 01301,
00221, 02526, 05434, 07333, 01117, 03610, 04702, 06005,
02455, 00352, 07240, 05547, 03763, 01064, 06176, 04671,
04336, 06431, 01523, 03224, 05000, 07707, 00615, 02112,
06542, 04245, 03357, 01450, 07674, 05173, 02061, 00766,
01646, 03141, 04053, 06754, 00570, 02277, 05365, 07462,
03032, 01735, 06627, 04120, 02304, 00403, 07511, 05216,
07622, 05125, 02037, 00730, 06514, 04213, 03301, 01406,
05056, 07751, 00643, 02144, 04360, 06467, 01575, 03272,
02352, 00455, 07547, 05240, 03064, 01763, 06671, 04176,
00526, 02221, 05333, 07434, 01610, 03117, 04005, 06702,
06245, 04542, 03450, 01357, 07173, 05674, 02766, 00061,
04431, 06336, 01224, 03523, 05707, 07000, 00112, 02615,
03735, 01032, 06120, 04627, 02403, 00304, 07216, 05511,
01141, 03646, 04754, 06053, 00277, 02570, 05462, 07365,
04777, 06070, 01162, 03665, 05441, 07346, 00254, 02553,
06103, 04604, 03716, 01011, 07235, 05532, 02420, 00327,
01207, 03500, 04412, 06315, 00131, 02636, 05724, 07023,
03473, 01374, 06266, 04561, 02745, 00042, 07150, 05657,
05310, 07417, 00505, 02202, 04026, 06721, 01633, 03134,
07564, 05263, 02371, 00476, 06652, 04155, 03047, 01740,
00660, 02167, 05075, 07772, 01556, 03251, 04343, 06444,
02014, 00713, 07601, 05106, 03322, 01425, 06537, 04230,
01513, 03214, 04306, 06401, 00625, 02122, 05030, 07737,
03367, 01460, 06572, 04275, 02051, 00756, 07644, 05143,
04063, 06764, 01676, 03171, 05355, 07452, 00540, 02247,
06617, 04110, 03002, 01705, 07521, 05226, 02334, 00433,
00174, 02673, 05761, 07066, 01242, 03545, 04457, 06350,
02700, 00007, 07115, 05612, 03436, 01331, 06223, 04524,
05404, 07303, 00211, 02516, 04732, 06035, 01127, 03620,
07270, 05577, 02465, 00362, 06146, 04641, 03753, 01054,
02446, 00341, 07253, 05554, 03770, 01077, 06165, 04662,
00232, 02535, 05427, 07320, 01104, 03603, 04711, 06016,
07136, 05631, 02723, 00024, 06200, 04507, 03415, 01312,
05742, 07045, 00157, 02650, 04474, 06373, 01261, 03566,
03021, 01726, 06634, 04133, 02317, 00410, 07502, 05205,
01655, 03152, 04040, 06747, 00563, 02264, 05376, 07471,
06551, 04256, 03344, 01443, 07667, 05160, 02072, 00775,
04325, 06422, 01530, 03237, 05013, 07714, 00606, 02101,
01744, 03043, 04151, 06656, 00472, 02375, 05267, 07560,
03130, 01637, 06725, 04022, 02206, 00501, 07413, 05314,
04234, 06533, 01421, 03326, 05102, 07605, 00717, 02010,
06440, 04347, 03255, 01552, 07776, 05071, 02163, 00664,
00323, 02424, 05536, 07231, 01015, 03712, 04600, 06107,
02557, 00250, 07342, 05445, 03661, 01166, 06074, 04773,
05653, 07154, 00046, 02741, 04565, 06262, 01370, 03477,
07027, 05720, 02632, 00135, 06311, 04416, 03504, 01203,
02611, 00116, 07004, 05703, 03527, 01220, 06332, 04435,
00065, 02762, 05670, 07177, 01353, 03454, 04546, 06241,
07361, 05466, 02574, 00273, 06057, 04750, 03642, 01145,
05515, 07212, 00300, 02407, 04623, 06124, 01036, 03731,
03276, 01571, 06463, 04364, 02140, 00647, 07755, 05052,
01402, 03305, 04217, 06510, 00734, 02033, 05121, 07626,
06706, 04001, 03113, 01614, 07430, 05337, 02225, 00522,
04172, 06675, 01767, 03060, 05244, 07543, 00451, 02356,
07475, 05372, 02260, 00567, 06743, 04044, 03156, 01651,
05201, 07506, 00414, 02313, 04137, 06630, 01722, 03025,
02105, 00602, 07710, 05017, 03233, 01534, 06426, 04321,
00771, 02076, 05164, 07663, 01447, 03340, 04252, 06555,
06012, 04715, 03607, 01100, 07324, 05423, 02531, 00236,
04666, 06161, 01073, 03774, 05550, 07257, 00345, 02442,
03562, 01265, 06377, 04470, 02654, 00153, 07041, 05746,
01316, 03411, 04503, 06204, 00020, 02727, 05635, 07132,
04520, 06227, 01335, 03432, 05616, 07111, 00003, 02704,
06354, 04453, 03541, 01246, 07062, 05765, 02677, 00170,
01050, 03757, 04645, 06142, 00366, 02461, 05573, 07274,
03624, 01123, 06031, 04736, 02512, 00215, 07307, 05400,
05147, 07640, 00752, 02055, 04271, 06576, 01464, 03363,
07733, 05034, 02126, 00621, 06405, 04302, 03210, 01517,
00437, 02330, 05222, 07525, 01701, 03006, 04114, 06613,
02243, 00544, 07456, 05351, 03175, 01672, 06760, 04067,
01271, 03576, 04464, 06363, 00147, 02640, 05752, 07055,
03405, 01302, 06210, 04517, 02733, 00034, 07126, 05621,
04701, 06006, 01114, 03613, 05437, 07330, 00222, 02525,
06175, 04672, 03760, 01067, 07243, 05544, 02456, 00351,
00616, 02111, 05003, 07704, 01520, 03227, 04335, 06432,
02062, 00765, 07677, 05170, 03354, 01453, 06541, 04246,
05366, 07461, 00573, 02274, 04050, 06757, 01645, 03142,
07512, 05215, 02307, 00400, 06624, 04123, 03031, 01736,
02324, 00423, 07531, 05236, 03012, 01715, 06607, 04100,
00550, 02257, 05345, 07442, 01666, 03161, 04073, 06774,
07654, 05153, 02041, 00746, 06562, 04265, 03377, 01470,
05020, 07727, 00635, 02132, 04316, 06411, 01503, 03204,
03743, 01044, 06156, 04651, 02475, 00372, 07260, 05567,
01137, 03630, 04722, 06025, 00201, 02506, 05414, 07313,
06233, 04534, 03426, 01321, 07105, 05602, 02710, 00017,
04447, 06340, 01252, 03555, 05771, 07076, 00164, 02663,
07140, 05647, 02755, 00052, 06276, 04571, 03463, 01364,
05734, 07033, 00121, 02626, 04402, 06305, 01217, 03510,
02430, 00337, 07225, 05522, 03706, 01001, 06113, 04614,
00244, 02543, 05451, 07356, 01172, 03675, 04767, 06060,
06527, 04220, 03332, 01435, 07611, 05116, 02004, 00703,
04353, 06454, 01546, 03241, 05065, 07762, 00670, 02177,
03057, 01750, 06642, 04145, 02361, 00466, 07574, 05273,
01623, 03124, 04036, 06731, 00515, 02212, 05300, 07407,
04015, 06712, 01600, 03107, 05323, 07424, 00536, 02231,
06661, 04166, 03074, 01773, 07557, 05250, 02342, 00445,
01565, 03262, 04370, 06477, 00653, 02154, 05046, 07741,
03311, 01416, 06504, 04203, 02027, 00720, 07632, 05135,
05472, 07375, 00267, 02560, 04744, 06043, 01151, 03656,
07206, 05501, 02413, 00314, 06130, 04637, 03725, 01022,
00102, 02605, 05717, 07010, 01234, 03533, 04421, 06326,
02776, 00071, 07163, 05664, 03440, 01347, 06255, 04552,
07317, 05410, 02502, 00205, 06021, 04726, 03634, 01133,
05563, 07264, 00376, 02471, 04655, 06152, 01040, 03747,
02667, 00160, 07072, 05775, 03551, 01256, 06344, 04443,
00013, 02714, 05606, 07101, 01325, 03422, 04530, 06237,
06770, 04077, 03165, 01662, 07446, 05341, 02253, 00554,
04104, 06603, 01711, 03016, 05232, 07535, 00427, 02320,
03200, 01507, 06415, 04312, 02136, 00631, 07723, 05024,
01474, 03373, 04261, 06566, 00742, 02045, 05157, 07650,
04242, 06545, 01457, 03350, 05174, 07673, 00761, 02066,
06436, 04331, 03223, 01524, 07700, 05007, 02115, 00612,
01732, 03035, 04127, 06620, 00404, 02303, 05211, 07516,
03146, 01641, 06753, 04054, 02270, 00577, 07465, 05362,
05625, 07122, 00030, 02737, 04513, 06214, 01306, 03401,
07051, 05756, 02644, 00143, 06367, 04460, 03572, 01275,
00355, 02452, 05540, 07247, 01063, 03764, 04676, 06171,
02521, 00226, 07334, 05433, 03617, 01110, 06002, 04705,
01026, 03721, 04633, 06134, 00310, 02417, 05505, 07202,
03652, 01155, 06047, 04740, 02564, 00263, 07371, 05476,
04556, 06251, 01343, 03444, 05660, 07167, 00075, 02772,
06322, 04425, 03537, 01230, 07014, 05713, 02601, 00106,
00441, 02346, 05254, 07553, 01777, 03070, 04162, 06665,
02235, 00532, 07420, 05327, 03103, 01604, 06716, 04011,
05131, 07636, 00724, 02023, 04207, 06500, 01412, 03315,
07745, 05042, 02150, 00657, 06473, 04374, 03266, 01561,
02173, 00674, 07766, 05061, 03245, 01542, 06450, 04357,
00707, 02000, 05112, 07615, 01431, 03336, 04224, 06523,
07403, 05304, 02216, 00511, 06735, 04032, 03120, 01627,
05277, 07570, 00462, 02365, 04141, 06646, 01754, 03053,
03514, 01213, 06301, 04406, 02622, 00125, 07037, 05730,
01360, 03467, 04575, 06272, 00056, 02751, 05643, 07144,
06064, 04763, 03671, 01176, 07352, 05455, 02547, 00240,
04610, 06117, 01005, 03702, 05526, 07221, 00333, 02434,
05343, 07444, 00556, 02251, 04075, 06772, 01660, 03167,
07537, 05230, 02322, 00425, 06601, 04106, 03014, 01713,
00633, 02134, 05026, 07721, 01505, 03202, 04310, 06417,
02047, 00740, 07652, 05155, 03371, 01476, 06564, 04263,
04724, 06023, 01131, 03636, 05412, 07315, 00207, 02500,
06150, 04657, 03745, 01042, 07266, 05561, 02473, 00374,
01254, 03553, 04441, 06346, 00162, 02665, 05777, 07070,
03420, 01327, 06235, 04532, 02716, 00011, 07103, 05604,
06216, 04511, 03403, 01304, 07120, 05627, 02735, 00032,
04462, 06365, 01277, 03570, 05754, 07053, 00141, 02646,
03766, 01061, 06173, 04674, 02450, 00357, 07245, 05542,
01112, 03615, 04707, 06000, 00224, 02523, 05431, 07336,
07671, 05176, 02064, 00763, 06547, 04240, 03352, 01455,
05005, 07702, 00610, 02117, 04333, 06434, 01526, 03221,
02301, 00406, 07514, 05213, 03037, 01730, 06622, 04125,
00575, 02272, 05360, 07467, 01643, 03144, 04056, 06751,
03072, 01775, 06667, 04160, 02344, 00443, 07551, 05256,
01606, 03101, 04013, 06714, 00530, 02237, 05325, 07422,
06502, 04205, 03317, 01410, 07634, 05133, 02021, 00726,
04376, 06471, 01563, 03264, 05040, 07747, 00655, 02152,
02415, 00312, 07200, 05507, 03723, 01024, 06136, 04631,
00261, 02566, 05474, 07373, 01157, 03650, 04742, 06045,
07165, 05662, 02770, 00077, 06253, 04554, 03446, 01341,
05711, 07016, 00104, 02603, 04427, 06320, 01232, 03535,
00127, 02620, 05732, 07035, 01211, 03516, 04404, 06303,
02753, 00054, 07146, 05641, 03465, 01362, 06270, 04577,
05457, 07350, 00242, 02545, 04761, 06066, 01174, 03673,
07223, 05524, 02436, 00331, 06115, 04612, 03700, 01007,
01540, 03247, 04355, 06452, 00676, 02171, 05063, 07764,
03334, 01433, 06521, 04226, 02002, 00705, 07617, 05110,
04030, 06737, 01625, 03122, 05306, 07401, 00513, 02214,
06644, 04143, 03051, 01756, 07572, 05275, 02367, 00460,
03225, 01522, 06430, 04337, 02113, 00614, 07706, 05001,
01451, 03356, 04244, 06543, 00767, 02060, 05172, 07675,
06755, 04052, 03140, 01647, 07463, 05364, 02276, 00571,
04121, 06626, 01734, 03033, 05217, 07510, 00402, 02305,
02642, 00145, 07057, 05750, 03574, 01273, 06361, 04466,
00036, 02731, 05623, 07124, 01300, 03407, 04515, 06212,
07332, 05435, 02527, 00220, 06004, 04703, 03611, 01116,
05546, 07241, 00353, 02454, 04670, 06177, 01065, 03762,
00370, 02477, 05565, 07262, 01046, 03741, 04653, 06154,
02504, 00203, 07311, 05416, 03632, 01135, 06027, 04720,
05600, 07107, 00015, 02712, 04536, 06231, 01323, 03424,
07074, 05773, 02661, 00166, 06342, 04445, 03557, 01250,
01717, 03010, 04102, 06605, 00421, 02326, 05234, 07533,
03163, 01664, 06776, 04071, 02255, 00552, 07440, 05347,
04267, 06560, 01472, 03375, 05151, 07656, 00744, 02043,
06413, 04314, 03206, 01501, 07725, 05022, 02130, 00637,
05114, 07613, 00701, 02006, 04222, 06525, 01437, 03330,
07760, 05067, 02175, 00672, 06456, 04351, 03243, 01544,
00464, 02363, 05271, 07576, 01752, 03055, 04147, 06640,
02210, 00517, 07405, 05302, 03126, 01621, 06733, 04034,
04573, 06274, 01366, 03461, 05645, 07142, 00050, 02757,
06307, 04400, 03512, 01215, 07031, 05736, 02624, 00123,
01003, 03704, 04616, 06111, 00335, 02432, 05520, 07227,
03677, 01170, 06062, 04765, 02541, 00246, 07354, 05453,
06041, 04746, 03654, 01153, 07377, 05470, 02562, 00265,
04635, 06132, 01020, 03727, 05503, 07204, 00316, 02411,
03531, 01236, 06324, 04423, 02607, 00100, 07012, 05715,
01345, 03442, 04550, 06257, 00073, 02774, 05666, 07161,
07426, 05321, 02233, 00534, 06710, 04017, 03105, 01602,
05252, 07555, 00447, 02340, 04164, 06663, 01771, 03076,
02156, 00651, 07743, 05044, 03260, 01567, 06475, 04372,
00722, 02025, 05137, 07630, 01414, 03313, 04201, 06506,
03710, 01017, 06105, 04602, 02426, 00321, 07233, 05534,
01164, 03663, 04771, 06076, 00252, 02555, 05447, 07340,
06260, 04567, 03475, 01372, 07156, 05651, 02743, 00044,
04414, 06313, 01201, 03506, 05722, 07025, 00137, 02630,
02377, 00470, 07562, 05265, 03041, 01746, 06654, 04153,
00503, 02204, 05316, 07411, 01635, 03132, 04020, 06727,
07607, 05100, 02012, 00715, 06531, 04236, 03324, 01423,
05073, 07774, 00666, 02161, 04345, 06442, 01550, 03257,
00645, 02142, 05050, 07757, 01573, 03274, 04366, 06461,
02031, 00736, 07624, 05123, 03307, 01400, 06512, 04215,
05335, 07432, 00520, 02227, 04003, 06704, 01616, 03111,
07541, 05246, 02354, 00453, 06677, 04170, 03062, 01765,
01222, 03525, 04437, 06330, 00114, 02613, 05701, 07006,
03456, 01351, 06243, 04544, 02760, 00067, 07175, 05672,
04752, 06055, 01147, 03640, 05464, 07363, 00271, 02576,
06126, 04621, 03733, 01034, 07210, 05517, 02405, 00302,
05421, 07326, 00234, 02533, 04717, 06010, 01102, 03605,
07255, 05552, 02440, 00347, 06163, 04664, 03776, 01071,
00151, 02656, 05744, 07043, 01267, 03560, 04472, 06375,
02725, 00022, 07130, 05637, 03413, 01314, 06206, 04501,
04046, 06741, 01653, 03154, 05370, 07477, 00565, 02262,
06632, 04135, 03027, 01720, 07504, 05203, 02311, 00416,
01536, 03231, 04323, 06424, 00600, 02107, 05015, 07712,
03342, 01445, 06557, 04250, 02074, 00773, 07661, 05166,
06574, 04273, 03361, 01466, 07642, 05145, 02057, 00750,
04300, 06407, 01515, 03212, 05036, 07731, 00623, 02124,
03004, 01703, 06611, 04116, 02332, 00435, 07527, 05220,
01670, 03177, 04065, 06762, 00546, 02241, 05353, 07454,
07113, 05614, 02706, 00001, 06225, 04522, 03430, 01337,
05767, 07060, 00172, 02675, 04451, 06356, 01244, 03543,
02463, 00364, 07276, 05571, 03755, 01052, 06140, 04647,
00217, 02510, 05402, 07305, 01121, 03626, 04734, 06033,
05676, 07171, 00063, 02764, 04540, 06247, 01355, 03452,
07002, 05705, 02617, 00110, 06334, 04433, 03521, 01226,
00306, 02401, 05513, 07214, 01030, 03737, 04625, 06122,
02572, 00275, 07367, 05460, 03644, 01143, 06051, 04756,
04211, 06516, 01404, 03303, 05127, 07620, 00732, 02035,
06465, 04362, 03270, 01577, 07753, 05054, 02146, 00641,
01761, 03066, 04174, 06673, 00457, 02350, 05242, 07545,
03115, 01612, 06700, 04007, 02223, 00524, 07436, 05331,
06723, 04024, 03136, 01631, 07415, 05312, 02200, 00507,
04157, 06650, 01742, 03045, 05261, 07566, 00474, 02373,
03253, 01554, 06446, 04341, 02165, 00662, 07770, 05077,
01427, 03320, 04232, 06535, 00711, 02016, 05104, 07603,
07344, 05443, 02551, 00256, 06072, 04775, 03667, 01160,
05530, 07237, 00325, 02422, 04606, 06101, 01013, 03714,
02634, 00133, 07021, 05726, 03502, 01205, 06317, 04410,
00040, 02747, 05655, 07152, 01376, 03471, 04563, 06264,
03547, 01240, 06352, 04455, 02671, 00176, 07064, 05763,
01333, 03434, 04526, 06221, 00005, 02702, 05610, 07117,
06037, 04730, 03622, 01125, 07301, 05406, 02514, 00213,
04643, 06144, 01056, 03751, 05575, 07272, 00360, 02467,
02120, 00627, 07735, 05032, 03216, 01511, 06403, 04304,
00754, 02053, 05141, 07646, 01462, 03365, 04277, 06570,
07450, 05357, 02245, 00542, 06766, 04061, 03173, 01674,
05224, 07523, 00431, 02336, 04112, 06615, 01707, 03000,
00412, 02315, 05207, 07500, 01724, 03023, 04131, 06636,
02266, 00561, 07473, 05374, 03150, 01657, 06745, 04042,
05162, 07665, 00777, 02070, 04254, 06553, 01441, 03346,
07716, 05011, 02103, 00604, 06420, 04327, 03235, 01532,
01075, 03772, 04660, 06167, 00343, 02444, 05556, 07251,
03601, 01106, 06014, 04713, 02537, 00230, 07322, 05425,
04505, 06202, 01310, 03417, 05633, 07134, 00026, 02721,
06371, 04476, 03564, 01263, 07047, 05740, 02652, 00155,
02561, 00266, 07374, 05473, 03657, 01150, 06042, 04745,
00315, 02412, 05500, 07207, 01023, 03724, 04636, 06131,
07011, 05716, 02604, 00103, 06327, 04420, 03532, 01235,
05665, 07162, 00070, 02777, 04553, 06254, 01346, 03441,
03106, 01601, 06713, 04014, 02230, 00537, 07425, 05322,
01772, 03075, 04167, 06660, 00444, 02343, 05251, 07556,
06476, 04371, 03263, 01564, 07740, 05047, 02155, 00652,
04202, 06505, 01417, 03310, 05134, 07633, 00721, 02026,
01434, 03333, 04221, 06526, 00702, 02005, 05117, 07610,
03240, 01547, 06455, 04352, 02176, 00671, 07763, 05064,
04144, 06643, 01751, 03056, 05272, 07575, 00467, 02360,
06730, 04037, 03125, 01622, 07406, 05301, 02213, 00514,
00053, 02754, 05646, 07141, 01365, 03462, 04570, 06277,
02627, 00120, 07032, 05735, 03511, 01216, 06304, 04403,
05523, 07224, 00336, 02431, 04615, 06112, 01000, 03707,
07357, 05450, 02542, 00245, 06061, 04766, 03674, 01173,
04650, 06157, 01045, 03742, 05566, 07261, 00373, 02474,
06024, 04723, 03631, 01136, 07312, 05415, 02507, 00200,
01320, 03427, 04535, 06232, 00016, 02711, 05603, 07104,
03554, 01253, 06341, 04446, 02662, 00165, 07077, 05770,
05237, 07530, 00422, 02325, 04101, 06606, 01714, 03013,
07443, 05344, 02256, 00551, 06775, 04072, 03160, 01667,
00747, 02040, 05152, 07655, 01471, 03376, 04264, 06563,
02133, 00634, 07726, 05021, 03205, 01502, 06410, 04317,
07705, 05002, 02110, 00617, 06433, 04334, 03226, 01521,
05171, 07676, 00764, 02063, 04247, 06540, 01452, 03355,
02275, 00572, 07460, 05367, 03143, 01644, 06756, 04051,
00401, 02306, 05214, 07513, 01737, 03030, 04122, 06625,
06362, 04465, 03577, 01270, 07054, 05753, 02641, 00146,
04516, 06211, 01303, 03404, 05620, 07127, 00035, 02732,
03612, 01115, 06007, 04700, 02524, 00223, 07331, 05436,
01066, 03761, 04673, 06174, 00350, 02457, 05545, 07242,
04407, 06300, 01212, 03515, 05731, 07036, 00124, 02623,
06273, 04574, 03466, 01361, 07145, 05642, 02750, 00057,
01177, 03670, 04762, 06065, 00241, 02546, 05454, 07353,
03703, 01004, 06116, 04611, 02435, 00332, 07220, 05527,
05060, 07767, 00675, 02172, 04356, 06451, 01543, 03244,
07614, 05113, 02001, 00706, 06522, 04225, 03337, 01430,
00510, 02217, 05305, 07402, 01626, 03121, 04033, 06734,
02364, 00463, 07571, 05276, 03052, 01755, 06647, 04140,
07552, 05255, 02347, 00440, 06664, 04163, 03071, 01776,
05326, 07421, 00533, 02234, 04010, 06717, 01605, 03102,
02022, 00725, 07637, 05130, 03314, 01413, 06501, 04206,
00656, 02151, 05043, 07744, 01560, 03267, 04375, 06472,
06135, 04632, 03720, 01027, 07203, 05504, 02416, 00311,
04741, 06046, 01154, 03653, 05477, 07370, 00262, 02565,
03445, 01342, 06250, 04557, 02773, 00074, 07166, 05661,
01231, 03536, 04424, 06323, 00107, 02600, 05712, 07015,
02736, 00031, 07123, 05624, 03400, 01307, 06215, 04512,
00142, 02645, 05757, 07050, 01274, 03573, 04461, 06366,
07246, 05541, 02453, 00354, 06170, 04677, 03765, 01062,
05432, 07335, 00227, 02520, 04704, 06003, 01111, 03616,
03351, 01456, 06544, 04243, 02067, 00760, 07672, 05175,
01525, 03222, 04330, 06437, 00613, 02114, 05006, 07701,
06621, 04126, 03034, 01733, 07517, 05210, 02302, 00405,
04055, 06752, 01640, 03147, 05363, 07464, 00576, 02271,
01663, 03164, 04076, 06771, 00555, 02252, 05340, 07447,
03017, 01710, 06602, 04105, 02321, 00426, 07534, 05233,
04313, 06414, 01506, 03201, 05025, 07722, 00630, 02137,
06567, 04260, 03372, 01475, 07651, 05156, 02044, 00743,
00204, 02503, 05411, 07316, 01132, 03635, 04727, 06020,
02470, 00377, 07265, 05562, 03746, 01041, 06153, 04654,
05774, 07073, 00161, 02666, 04442, 06345, 01257, 03550,
07100, 05607, 02715, 00012, 06236, 04531, 03423, 01324,
04132, 06635, 01727, 03020, 05204, 07503, 00411, 02316,
06746, 04041, 03153, 01654, 07470, 05377, 02265, 00562,
01442, 03345, 04257, 06550, 00774, 02073, 05161, 07666,
03236, 01531, 06423, 04324, 02100, 00607, 07715, 05012,
05555, 07252, 00340, 02447, 04663, 06164, 01076, 03771,
07321, 05426, 02534, 00233, 06017, 04710, 03602, 01105,
00025, 02722, 05630, 07137, 01313, 03414, 04506, 06201,
02651, 00156, 07044, 05743, 03567, 01260, 06372, 04475,
07067, 05760, 02672, 00175, 06351, 04456, 03544, 01243,
05613, 07114, 00006, 02701, 04525, 06222, 01330, 03437,
02517, 00210, 07302, 05405, 03621, 01126, 06034, 04733,
00363, 02464, 05576, 07271, 01055, 03752, 04640, 06147,
06400, 04307, 03215, 01512, 07736, 05031, 02123, 00624,
04274, 06573, 01461, 03366, 05142, 07645, 00757, 02050,
03170, 01677, 06765, 04062, 02246, 00541, 07453, 05354,
01704, 03003, 04111, 06616, 00432, 02335, 05227, 07520,
02203, 00504, 07416, 05311, 03135, 01632, 06720, 04027,
00477, 02370, 05262, 07565, 01741, 03046, 04154, 06653,
07773, 05074, 02166, 00661, 06445, 04342, 03250, 01557,
05107, 07600, 00712, 02015, 04231, 06536, 01424, 03323,
03664, 01163, 06071, 04776, 02552, 00255, 07347, 05440,
01010, 03717, 04605, 06102, 00326, 02421, 05533, 07234,
06314, 04413, 03501, 01206, 07022, 05725, 02637, 00130,
04560, 06267, 01375, 03472, 05656, 07151, 00043, 02744,
01356, 03451, 04543, 06244, 00060, 02767, 05675, 07172,
03522, 01225, 06337, 04430, 02614, 00113, 07001, 05706,
04626, 06121, 01033, 03734, 05510, 07217, 00305, 02402,
06052, 04755, 03647, 01140, 07364, 05463, 02571, 00276,
00731, 02036, 05124, 07623, 01407, 03300, 04212, 06515,
02145, 00642, 07750, 05057, 03273, 01574, 06466, 04361,
05241, 07546, 00454, 02353, 04177, 06670, 01762, 03065,
07435, 05332, 02220, 00527, 06703, 04004, 03116, 01611,
02054, 00753, 07641, 05146, 03362, 01465, 06577, 04270,
00620, 02127, 05035, 07732, 01516, 03211, 04303, 06404,
07524, 05223, 02331, 00436, 06612, 04115, 03007, 01700,
05350, 07457, 00545, 02242, 04066, 06761, 01673, 03174,
03433, 01334, 06226, 04521, 02705, 00002, 07110, 05617,
01247, 03540, 04452, 06355, 00171, 02676, 05764, 07063,
06143, 04644, 03756, 01051, 07275, 05572, 02460, 00367,
04737, 06030, 01122, 03625, 05401, 07306, 00214, 02513,
01101, 03606, 04714, 06013, 00237, 02530, 05422, 07325,
03775, 01072, 06160, 04667, 02443, 00344, 07256, 05551,
04471, 06376, 01264, 03563, 05747, 07040, 00152, 02655,
06205, 04502, 03410, 01317, 07133, 05634, 02726, 00021,
00566, 02261, 05373, 07474, 01650, 03157, 04045, 06742,
02312, 00415, 07507, 05200, 03024, 01723, 06631, 04136,
05016, 07711, 00603, 02104, 04320, 06427, 01535, 03232,
07662, 05165, 02077, 00770, 06554, 04253, 03341, 01446,
04365, 06462, 01570, 03277, 05053, 07754, 00646, 02141,
06511, 04216, 03304, 01403, 07627, 05120, 02032, 00735,
01615, 03112, 04000, 06707, 00523, 02224, 05336, 07431,
03061, 01766, 06674, 04173, 02357, 00450, 07542, 05245,
05702, 07005, 00117, 02610, 04434, 06333, 01221, 03526,
07176, 05671, 02763, 00064, 06240, 04547, 03455, 01352,
00272, 02575, 05467, 07360, 01144, 03643, 04751, 06056,
02406, 00301, 07213, 05514, 03730, 01037, 06125, 04622,
07230, 05537, 02425, 00322, 06106, 04601, 03713, 01014,
05444, 07343, 00251, 02556, 04772, 06075, 01167, 03660,
02740, 00047, 07155, 05652, 03476, 01371, 06263, 04564,
00134, 02633, 05721, 07026, 01202, 03505, 04417, 06310,
06657, 04150, 03042, 01745, 07561, 05266, 02374, 00473,
04023, 06724, 01636, 03131, 05315, 07412, 00500, 02207,
03327, 01420, 06532, 04235, 02011, 00716, 07604, 05103,
01553, 03254, 04346, 06441, 00665, 02162, 05070, 07777};